about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--nixpkgs/.github/CODEOWNERS6
-rw-r--r--nixpkgs/.github/labeler.yml4
-rw-r--r--nixpkgs/.github/workflows/backport.yml6
-rw-r--r--nixpkgs/.github/workflows/direct-push.yml2
-rw-r--r--nixpkgs/.github/workflows/labels.yml5
-rw-r--r--nixpkgs/.github/workflows/pending-set.yml5
-rw-r--r--nixpkgs/.github/workflows/periodic-merge-24h.yml2
-rw-r--r--nixpkgs/.github/workflows/periodic-merge-6h.yml2
-rw-r--r--nixpkgs/.github/workflows/update-terraform-providers.yml2
-rw-r--r--nixpkgs/doc/builders/fetchers.chapter.md4
-rw-r--r--nixpkgs/doc/contributing/coding-conventions.chapter.md5
-rw-r--r--nixpkgs/doc/contributing/reviewing-contributions.chapter.md6
-rw-r--r--nixpkgs/doc/languages-frameworks/javascript.section.md26
-rw-r--r--nixpkgs/doc/languages-frameworks/ocaml.section.md10
-rw-r--r--nixpkgs/doc/languages-frameworks/texlive.section.md2
-rw-r--r--nixpkgs/doc/languages-frameworks/vim.section.md7
-rw-r--r--nixpkgs/lib/attrsets.nix115
-rw-r--r--nixpkgs/lib/default.nix17
-rw-r--r--nixpkgs/lib/licenses.nix10
-rw-r--r--nixpkgs/lib/lists.nix17
-rw-r--r--nixpkgs/lib/modules.nix126
-rw-r--r--nixpkgs/lib/options.nix4
-rw-r--r--nixpkgs/lib/systems/default.nix3
-rw-r--r--nixpkgs/lib/systems/doubles.nix8
-rw-r--r--nixpkgs/lib/systems/examples.nix20
-rw-r--r--nixpkgs/lib/systems/inspect.nix6
-rw-r--r--nixpkgs/lib/systems/parse.nix7
-rw-r--r--nixpkgs/lib/systems/platforms.nix47
-rw-r--r--nixpkgs/lib/tests/misc.nix152
-rwxr-xr-xnixpkgs/lib/tests/modules.sh13
-rw-r--r--nixpkgs/lib/tests/modules/declare-bare-submodule-deep-option-duplicate.nix10
-rw-r--r--nixpkgs/lib/tests/modules/declare-bare-submodule-deep-option.nix10
-rw-r--r--nixpkgs/lib/tests/modules/declare-bare-submodule-nested-option.nix19
-rw-r--r--nixpkgs/lib/tests/modules/declare-bare-submodule.nix18
-rw-r--r--nixpkgs/lib/tests/modules/declare-set.nix12
-rw-r--r--nixpkgs/lib/tests/modules/define-bare-submodule-values.nix4
-rw-r--r--nixpkgs/lib/tests/modules/define-shorthandOnlyDefinesConfig-true.nix1
-rw-r--r--nixpkgs/lib/tests/systems.nix4
-rw-r--r--nixpkgs/lib/trivial.nix59
-rw-r--r--nixpkgs/lib/types.nix30
-rw-r--r--nixpkgs/maintainers/maintainer-list.nix106
-rw-r--r--nixpkgs/maintainers/scripts/luarocks-packages.csv2
-rwxr-xr-xnixpkgs/maintainers/scripts/remove-old-aliases.py21
-rw-r--r--nixpkgs/nixos/doc/manual/development/option-declarations.section.md7
-rw-r--r--nixpkgs/nixos/doc/manual/development/writing-nixos-tests.section.md13
-rw-r--r--nixpkgs/nixos/doc/manual/from_md/development/option-declarations.section.xml8
-rw-r--r--nixpkgs/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml28
-rw-r--r--nixpkgs/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml330
-rw-r--r--nixpkgs/nixos/doc/manual/man-nixos-rebuild.xml18
-rw-r--r--nixpkgs/nixos/doc/manual/release-notes/rl-2205.section.md88
-rw-r--r--nixpkgs/nixos/lib/make-options-doc/mergeJSON.py9
-rw-r--r--nixpkgs/nixos/lib/systemd-lib.nix212
-rw-r--r--nixpkgs/nixos/lib/test-driver/test_driver/driver.py1
-rw-r--r--nixpkgs/nixos/lib/test-driver/test_driver/machine.py30
-rw-r--r--nixpkgs/nixos/lib/testing-python.nix30
-rw-r--r--nixpkgs/nixos/modules/config/resolvconf.nix6
-rw-r--r--nixpkgs/nixos/modules/hardware/video/nvidia.nix20
-rw-r--r--nixpkgs/nixos/modules/installer/cd-dvd/iso-image.nix55
-rw-r--r--nixpkgs/nixos/modules/installer/tools/nixos-enter.sh22
-rw-r--r--nixpkgs/nixos/modules/installer/tools/nixos-generate-config.pl9
-rw-r--r--nixpkgs/nixos/modules/installer/tools/tools.nix2
-rw-r--r--nixpkgs/nixos/modules/misc/locate.nix6
-rw-r--r--nixpkgs/nixos/modules/misc/version.nix6
-rw-r--r--nixpkgs/nixos/modules/module-list.nix13
-rw-r--r--nixpkgs/nixos/modules/programs/_1password-gui.nix69
-rw-r--r--nixpkgs/nixos/modules/programs/nix-ld.nix12
-rw-r--r--nixpkgs/nixos/modules/programs/nncp.nix101
-rw-r--r--nixpkgs/nixos/modules/services/cluster/corosync/default.nix112
-rw-r--r--nixpkgs/nixos/modules/services/cluster/hadoop/conf.nix22
-rw-r--r--nixpkgs/nixos/modules/services/cluster/hadoop/default.nix97
-rw-r--r--nixpkgs/nixos/modules/services/cluster/hadoop/hdfs.nix295
-rw-r--r--nixpkgs/nixos/modules/services/cluster/hadoop/yarn.nix98
-rw-r--r--nixpkgs/nixos/modules/services/cluster/pacemaker/default.nix52
-rw-r--r--nixpkgs/nixos/modules/services/continuous-integration/buildbot/master.nix4
-rw-r--r--nixpkgs/nixos/modules/services/desktops/pipewire/pipewire-media-session.nix5
-rw-r--r--nixpkgs/nixos/modules/services/desktops/pipewire/pipewire.nix19
-rw-r--r--nixpkgs/nixos/modules/services/desktops/pipewire/wireplumber.nix12
-rw-r--r--nixpkgs/nixos/modules/services/games/factorio.nix9
-rw-r--r--nixpkgs/nixos/modules/services/games/minecraft-server.nix2
-rw-r--r--nixpkgs/nixos/modules/services/hardware/joycond.nix8
-rw-r--r--nixpkgs/nixos/modules/services/logging/graylog.nix2
-rw-r--r--nixpkgs/nixos/modules/services/matrix/matrix-synapse.xml6
-rw-r--r--nixpkgs/nixos/modules/services/misc/autorandr.nix310
-rw-r--r--nixpkgs/nixos/modules/services/misc/dendrite.nix13
-rw-r--r--nixpkgs/nixos/modules/services/misc/moonraker.nix40
-rw-r--r--nixpkgs/nixos/modules/services/misc/nix-daemon.nix8
-rw-r--r--nixpkgs/nixos/modules/services/misc/nix-gc.nix10
-rw-r--r--nixpkgs/nixos/modules/services/misc/nix-optimise.nix10
-rw-r--r--nixpkgs/nixos/modules/services/misc/paperless-ng.nix2
-rw-r--r--nixpkgs/nixos/modules/services/monitoring/grafana.nix5
-rw-r--r--nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/varnish.nix5
-rw-r--r--nixpkgs/nixos/modules/services/network-filesystems/ipfs.nix24
-rw-r--r--nixpkgs/nixos/modules/services/network-filesystems/samba.nix1
-rw-r--r--nixpkgs/nixos/modules/services/networking/dhcpd.nix8
-rw-r--r--nixpkgs/nixos/modules/services/networking/https-dns-proxy.nix128
-rw-r--r--nixpkgs/nixos/modules/services/networking/iwd.nix21
-rw-r--r--nixpkgs/nixos/modules/services/networking/nsd.nix20
-rw-r--r--nixpkgs/nixos/modules/services/networking/pleroma.nix8
-rw-r--r--nixpkgs/nixos/modules/services/networking/powerdns.nix4
-rw-r--r--nixpkgs/nixos/modules/services/networking/squid.nix17
-rw-r--r--nixpkgs/nixos/modules/services/networking/unbound.nix1
-rw-r--r--nixpkgs/nixos/modules/services/networking/vsftpd.nix1
-rw-r--r--nixpkgs/nixos/modules/services/networking/wg-quick.nix9
-rw-r--r--nixpkgs/nixos/modules/services/security/oauth2_proxy.nix10
-rw-r--r--nixpkgs/nixos/modules/services/security/sslmate-agent.nix32
-rw-r--r--nixpkgs/nixos/modules/services/security/tor.nix5
-rw-r--r--nixpkgs/nixos/modules/services/system/earlyoom.nix98
-rw-r--r--nixpkgs/nixos/modules/services/video/unifi-video.nix168
-rw-r--r--nixpkgs/nixos/modules/services/web-apps/keycloak.nix20
-rw-r--r--nixpkgs/nixos/modules/services/web-apps/nextcloud.nix11
-rw-r--r--nixpkgs/nixos/modules/services/x11/desktop-managers/gnome.nix69
-rw-r--r--nixpkgs/nixos/modules/services/x11/desktop-managers/pantheon.nix3
-rw-r--r--nixpkgs/nixos/modules/services/x11/desktop-managers/plasma5.nix4
-rw-r--r--nixpkgs/nixos/modules/services/x11/display-managers/default.nix1
-rw-r--r--nixpkgs/nixos/modules/services/x11/display-managers/gdm.nix2
-rwxr-xr-xnixpkgs/nixos/modules/system/activation/switch-to-configuration.pl632
-rw-r--r--nixpkgs/nixos/modules/system/boot/kernel.nix2
-rw-r--r--nixpkgs/nixos/modules/system/boot/modprobe.nix20
-rw-r--r--nixpkgs/nixos/modules/system/boot/stage-1.nix5
-rw-r--r--nixpkgs/nixos/modules/system/boot/stage-2.nix30
-rw-r--r--nixpkgs/nixos/modules/system/boot/systemd.nix667
-rw-r--r--nixpkgs/nixos/modules/system/boot/systemd/coredump.nix57
-rw-r--r--nixpkgs/nixos/modules/system/boot/systemd/journald.nix131
-rw-r--r--nixpkgs/nixos/modules/system/boot/systemd/logind.nix114
-rw-r--r--nixpkgs/nixos/modules/system/boot/systemd/nspawn.nix (renamed from nixpkgs/nixos/modules/system/boot/systemd-nspawn.nix)0
-rw-r--r--nixpkgs/nixos/modules/system/boot/systemd/tmpfiles.nix106
-rw-r--r--nixpkgs/nixos/modules/system/boot/systemd/user.nix158
-rw-r--r--nixpkgs/nixos/modules/tasks/auto-upgrade.nix83
-rw-r--r--nixpkgs/nixos/modules/tasks/filesystems.nix29
-rw-r--r--nixpkgs/nixos/modules/tasks/network-interfaces-scripted.nix2
-rw-r--r--nixpkgs/nixos/modules/tasks/network-interfaces-systemd.nix2
-rw-r--r--nixpkgs/nixos/modules/tasks/network-interfaces.nix28
-rw-r--r--nixpkgs/nixos/modules/virtualisation/qemu-vm.nix2
-rw-r--r--nixpkgs/nixos/modules/virtualisation/waydroid.nix6
-rw-r--r--nixpkgs/nixos/tests/all-tests.nix17
-rw-r--r--nixpkgs/nixos/tests/avahi.nix2
-rw-r--r--nixpkgs/nixos/tests/boot.nix1
-rw-r--r--nixpkgs/nixos/tests/caddy.nix6
-rw-r--r--nixpkgs/nixos/tests/ceph-multi-node.nix2
-rw-r--r--nixpkgs/nixos/tests/chromium.nix38
-rw-r--r--nixpkgs/nixos/tests/cri-o.nix2
-rw-r--r--nixpkgs/nixos/tests/earlyoom.nix16
-rw-r--r--nixpkgs/nixos/tests/gitolite-fcgiwrap.nix2
-rw-r--r--nixpkgs/nixos/tests/gnome-xorg.nix1
-rw-r--r--nixpkgs/nixos/tests/gnome.nix1
-rw-r--r--nixpkgs/nixos/tests/hadoop/default.nix7
-rw-r--r--nixpkgs/nixos/tests/hadoop/hadoop.nix273
-rw-r--r--nixpkgs/nixos/tests/hadoop/hdfs.nix61
-rw-r--r--nixpkgs/nixos/tests/hadoop/yarn.nix34
-rw-r--r--nixpkgs/nixos/tests/installed-tests/gjs.nix6
-rw-r--r--nixpkgs/nixos/tests/installer.nix2
-rw-r--r--nixpkgs/nixos/tests/ipfs.nix5
-rw-r--r--nixpkgs/nixos/tests/jitsi-meet.nix4
-rw-r--r--nixpkgs/nixos/tests/keepassxc.nix50
-rw-r--r--nixpkgs/nixos/tests/keycloak.nix22
-rw-r--r--nixpkgs/nixos/tests/misc.nix6
-rw-r--r--nixpkgs/nixos/tests/moonraker.nix45
-rw-r--r--nixpkgs/nixos/tests/networking.nix45
-rw-r--r--nixpkgs/nixos/tests/nextcloud/default.nix2
-rw-r--r--nixpkgs/nixos/tests/nix-ld.nix20
-rw-r--r--nixpkgs/nixos/tests/pacemaker.nix110
-rw-r--r--nixpkgs/nixos/tests/pleroma.nix20
-rw-r--r--nixpkgs/nixos/tests/powerdns.nix1
-rw-r--r--nixpkgs/nixos/tests/rstudio-server.nix6
-rw-r--r--nixpkgs/nixos/tests/sfxr-qt.nix32
-rw-r--r--nixpkgs/nixos/tests/step-ca.nix4
-rw-r--r--nixpkgs/nixos/tests/switch-test.nix30
-rw-r--r--nixpkgs/nixos/tests/systemd-misc.nix (renamed from nixpkgs/nixos/tests/systemd-unit-path.nix)17
-rw-r--r--nixpkgs/nixos/tests/terminal-emulators.nix207
-rw-r--r--nixpkgs/nixos/tests/tor.nix25
-rw-r--r--nixpkgs/nixos/tests/web-apps/mastodon.nix170
-rw-r--r--nixpkgs/nixos/tests/web-apps/peertube.nix3
-rw-r--r--nixpkgs/nixos/tests/wine.nix13
-rw-r--r--nixpkgs/nixos/tests/without-nix.nix21
-rw-r--r--nixpkgs/pkgs/applications/accessibility/squeekboard/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/audio/airwave/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/audio/aj-snapshot/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/audio/ams/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/audio/bitwig-studio/bitwig-studio2.nix2
-rw-r--r--nixpkgs/pkgs/applications/audio/cardinal/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/audio/cider/default.nix30
-rw-r--r--nixpkgs/pkgs/applications/audio/cmt/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/audio/cmusfm/default.nix26
-rw-r--r--nixpkgs/pkgs/applications/audio/deadbeef/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/audio/eteroj.lv2/default.nix23
-rw-r--r--nixpkgs/pkgs/applications/audio/friture/default.nix15
-rw-r--r--nixpkgs/pkgs/applications/audio/furnace/default.nix29
-rw-r--r--nixpkgs/pkgs/applications/audio/gnome-podcasts/default.nix11
-rw-r--r--nixpkgs/pkgs/applications/audio/jamin/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/audio/lv2lint/default.nix22
-rw-r--r--nixpkgs/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/audio/mid2key/default.nix11
-rw-r--r--nixpkgs/pkgs/applications/audio/midas/generic.nix9
-rw-r--r--nixpkgs/pkgs/applications/audio/mopidy/youtube.nix11
-rw-r--r--nixpkgs/pkgs/applications/audio/mopidy/ytmusic.nix13
-rw-r--r--nixpkgs/pkgs/applications/audio/musescore/darwin.nix1
-rw-r--r--nixpkgs/pkgs/applications/audio/musescore/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/audio/ocenaudio/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/audio/open-music-kontrollers/eteroj.nix10
-rw-r--r--nixpkgs/pkgs/applications/audio/open-music-kontrollers/generic.nix37
-rw-r--r--nixpkgs/pkgs/applications/audio/open-music-kontrollers/jit.nix12
-rw-r--r--nixpkgs/pkgs/applications/audio/open-music-kontrollers/mephisto.nix17
-rw-r--r--nixpkgs/pkgs/applications/audio/open-music-kontrollers/midi_matrix.nix10
-rw-r--r--nixpkgs/pkgs/applications/audio/open-music-kontrollers/moony.nix13
-rw-r--r--nixpkgs/pkgs/applications/audio/open-music-kontrollers/orbit.nix12
-rw-r--r--nixpkgs/pkgs/applications/audio/open-music-kontrollers/patchmatrix.nix13
-rw-r--r--nixpkgs/pkgs/applications/audio/open-music-kontrollers/router.nix11
-rw-r--r--nixpkgs/pkgs/applications/audio/open-music-kontrollers/sherlock.nix12
-rw-r--r--nixpkgs/pkgs/applications/audio/open-music-kontrollers/synthpod.nix13
-rw-r--r--nixpkgs/pkgs/applications/audio/open-music-kontrollers/vm.nix10
-rw-r--r--nixpkgs/pkgs/applications/audio/patchage/default.nix44
-rw-r--r--nixpkgs/pkgs/applications/audio/patchmatrix/default.nix45
-rw-r--r--nixpkgs/pkgs/applications/audio/plexamp/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/audio/pt2-clone/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/audio/pyradio/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/audio/qmidiarp/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/audio/qmmp/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/audio/rhythmbox/default.nix10
-rw-r--r--nixpkgs/pkgs/applications/audio/sfxr-qt/default.nix19
-rw-r--r--nixpkgs/pkgs/applications/audio/sfxr-qt/test-export-square-wave/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/audio/sfxr-qt/test-export-square-wave/input.sfxj29
-rw-r--r--nixpkgs/pkgs/applications/audio/sisco.lv2/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/audio/snd/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/audio/sonic-pi/default.nix98
-rw-r--r--nixpkgs/pkgs/applications/audio/sound-juicer/default.nix10
-rw-r--r--nixpkgs/pkgs/applications/audio/soundkonverter/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/audio/spotify/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/audio/strawberry/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/audio/sunvox/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/audio/synaesthesia/default.nix33
-rw-r--r--nixpkgs/pkgs/applications/audio/tonelib-gfx/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/audio/tonelib-metal/default.nix60
-rw-r--r--nixpkgs/pkgs/applications/audio/vocal/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/backup/pika-backup/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/blockchains/alfis/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/blockchains/bitcoin-unlimited/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/blockchains/chia/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/blockchains/dogecoin/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/blockchains/litecoin/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/blockchains/namecoin/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/blockchains/polkadot/default.nix45
-rw-r--r--nixpkgs/pkgs/applications/blockchains/trezor-suite/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix11
-rw-r--r--nixpkgs/pkgs/applications/editors/apostrophe/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/editors/bless/default.nix18
-rw-r--r--nixpkgs/pkgs/applications/editors/bluej/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/editors/cudatext/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/editors/cudatext/deps.json24
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix230
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix3
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacs2nix.nix7
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacspeak/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix1
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix66
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-packages.nix3
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/plz/default.nix16
-rw-r--r--nixpkgs/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json4240
-rw-r--r--nixpkgs/pkgs/applications/editors/ghostwriter/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/editors/gnome-builder/default.nix21
-rw-r--r--nixpkgs/pkgs/applications/editors/hexdino/default.nix12
-rw-r--r--nixpkgs/pkgs/applications/editors/jetbrains/darwin.nix5
-rw-r--r--nixpkgs/pkgs/applications/editors/jetbrains/default.nix64
-rw-r--r--nixpkgs/pkgs/applications/editors/jetbrains/linux.nix25
-rw-r--r--nixpkgs/pkgs/applications/editors/jupyter-kernels/octave/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/editors/lapce/default.nix83
-rw-r--r--nixpkgs/pkgs/applications/editors/lapce/fix-version.patch31
-rw-r--r--nixpkgs/pkgs/applications/editors/micro/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/editors/micro/test-with-expect.nix30
-rw-r--r--nixpkgs/pkgs/applications/editors/neovim/neovim-remote.nix5
-rw-r--r--nixpkgs/pkgs/applications/editors/pinegrow/default.nix15
-rw-r--r--nixpkgs/pkgs/applications/editors/qxmledit/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/editors/vim/configurable.nix41
-rw-r--r--nixpkgs/pkgs/applications/editors/vim/plugins/generated.nix1038
-rw-r--r--nixpkgs/pkgs/applications/editors/vim/plugins/overrides.nix12
-rw-r--r--nixpkgs/pkgs/applications/editors/vim/plugins/vim-plugin-names7
-rw-r--r--nixpkgs/pkgs/applications/editors/vim/plugins/vim-utils.nix128
-rw-r--r--nixpkgs/pkgs/applications/editors/vscode/extensions/default.nix52
-rw-r--r--nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/build-deps/package.json27
-rw-r--r--nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/default.nix4
-rwxr-xr-xnixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/update.sh49
-rw-r--r--nixpkgs/pkgs/applications/editors/vscode/generic.nix5
-rw-r--r--nixpkgs/pkgs/applications/emulators/collapseos-cvm/default.nix30
-rw-r--r--nixpkgs/pkgs/applications/emulators/fceux/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/emulators/flycast/default.nix52
-rw-r--r--nixpkgs/pkgs/applications/emulators/goldberg-emu/default.nix52
-rw-r--r--nixpkgs/pkgs/applications/emulators/goldberg-emu/dont-install-unsupported.patch34
-rw-r--r--nixpkgs/pkgs/applications/emulators/reicast/default.nix52
-rw-r--r--nixpkgs/pkgs/applications/emulators/rpcs3/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/emulators/ryujinx/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/emulators/ryujinx/deps.nix19
-rw-r--r--nixpkgs/pkgs/applications/emulators/vice/default.nix120
-rw-r--r--nixpkgs/pkgs/applications/emulators/wine/base.nix8
-rw-r--r--nixpkgs/pkgs/applications/emulators/wine/packages.nix6
-rw-r--r--nixpkgs/pkgs/applications/emulators/wine/sources.nix6
-rw-r--r--nixpkgs/pkgs/applications/emulators/wine/vkd3d.nix8
-rw-r--r--nixpkgs/pkgs/applications/emulators/yuzu/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/gis/grass/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/gis/qgis/unwrapped-ltr.nix4
-rw-r--r--nixpkgs/pkgs/applications/gis/qgis/unwrapped.nix4
-rw-r--r--nixpkgs/pkgs/applications/graphics/drawio/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/graphics/gimp/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/graphics/gimp/wrapper.nix2
-rw-r--r--nixpkgs/pkgs/applications/graphics/glimpse/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/graphics/glimpse/wrapper.nix2
-rw-r--r--nixpkgs/pkgs/applications/graphics/gnome-photos/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/graphics/gpicview/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/graphics/gthumb/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/graphics/hydrus/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/graphics/inkscape/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/graphics/inkscape/extensions.nix4
-rw-r--r--nixpkgs/pkgs/applications/graphics/menyoki/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/graphics/mtpaint/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/graphics/nomacs/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/graphics/pixinsight/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/graphics/sane/backends/brscan5/default.nix46
-rw-r--r--nixpkgs/pkgs/applications/graphics/unigine-heaven/default.nix107
-rw-r--r--nixpkgs/pkgs/applications/graphics/unigine-superposition/default.nix146
-rw-r--r--nixpkgs/pkgs/applications/graphics/xfig/default.nix15
-rw-r--r--nixpkgs/pkgs/applications/graphics/xournal/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/kde/kitinerary.nix11
-rw-r--r--nixpkgs/pkgs/applications/kde/konsole.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/1password-gui/default.nix21
-rw-r--r--nixpkgs/pkgs/applications/misc/1password/default.nix70
-rw-r--r--nixpkgs/pkgs/applications/misc/ArchiSteamFarm/deps-aarch64-linux.nix37
-rw-r--r--nixpkgs/pkgs/applications/misc/ArchiSteamFarm/deps-x86_64-linux.nix37
-rw-r--r--nixpkgs/pkgs/applications/misc/ablog/default.nix36
-rw-r--r--nixpkgs/pkgs/applications/misc/abook/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/misc/almanah/default.nix14
-rw-r--r--nixpkgs/pkgs/applications/misc/anytype/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/appeditor/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/misc/avrdudess/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/misc/blender/default.nix31
-rw-r--r--nixpkgs/pkgs/applications/misc/bottles/default.nix19
-rwxr-xr-xnixpkgs/pkgs/applications/misc/bottles/update.py65
-rw-r--r--nixpkgs/pkgs/applications/misc/dasel/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/dbeaver/default.nix21
-rw-r--r--nixpkgs/pkgs/applications/misc/electron-cash/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/misc/electrum/default.nix39
-rw-r--r--nixpkgs/pkgs/applications/misc/eos-installer/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/faircamp/default.nix56
-rw-r--r--nixpkgs/pkgs/applications/misc/faircamp/test-wav.nix14
-rw-r--r--nixpkgs/pkgs/applications/misc/font-manager/default.nix14
-rw-r--r--nixpkgs/pkgs/applications/misc/freeplane/default.nix35
-rw-r--r--nixpkgs/pkgs/applications/misc/gallery-dl/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/gnome-solanum/default.nix70
-rw-r--r--nixpkgs/pkgs/applications/misc/gosmore/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/misc/joshuto/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/misc/keepassx/community.nix3
-rw-r--r--nixpkgs/pkgs/applications/misc/koreader/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/kratos/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/misc/lighthouse/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/logseq/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/lutris/fhsenv.nix2
-rw-r--r--nixpkgs/pkgs/applications/misc/mob/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/moonlight-qt/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/misc/mop/default.nix16
-rw-r--r--nixpkgs/pkgs/applications/misc/mucommander/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/misc/mupdf/0001-Use-command-v-in-favor-of-which.patch25
-rw-r--r--nixpkgs/pkgs/applications/misc/mupdf/0002-Add-Darwin-deps.patch57
-rw-r--r--nixpkgs/pkgs/applications/misc/mupdf/1.17.nix1
-rw-r--r--nixpkgs/pkgs/applications/misc/mupdf/default.nix61
-rw-r--r--nixpkgs/pkgs/applications/misc/nix-tour/default.nix54
-rw-r--r--nixpkgs/pkgs/applications/misc/nut/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/misc/obsidian/default.nix22
-rw-r--r--nixpkgs/pkgs/applications/misc/octoprint/default.nix43
-rw-r--r--nixpkgs/pkgs/applications/misc/orca/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/organicmaps/default.nix91
-rw-r--r--nixpkgs/pkgs/applications/misc/pdfdiff/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/misc/pdfpc/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/misc/phoc/default.nix13
-rw-r--r--nixpkgs/pkgs/applications/misc/prusa-slicer/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/prusa-slicer/super-slicer.nix2
-rw-r--r--nixpkgs/pkgs/applications/misc/qmetro/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/misc/regextester/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/misc/sigi/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/misc/sleepyhead/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/misc/slic3r/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/misc/slmenu/default.nix31
-rw-r--r--nixpkgs/pkgs/applications/misc/spicetify-cli/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/misc/stog/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/misc/stork/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/misc/taskwarrior-tui/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/misc/tootle/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/misc/tpmmanager/default.nix11
-rw-r--r--nixpkgs/pkgs/applications/misc/tuhi/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/misc/urlview/default.nix10
-rw-r--r--nixpkgs/pkgs/applications/misc/xmr-stak/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/misc/zettlr/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/misc/zscroll/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/brave/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/chromium/common.nix14
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/chromium/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json42
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix786
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox-bin/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix786
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix786
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox/common.nix452
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox/librewolf/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox/librewolf/src.json10
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox/packages.nix5
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/firefox/wrapper.nix31
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/opera/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/palemoon/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/vieb/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/vieb/package.json29
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/vieb/yarn.lock2757
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/vieb/yarn.nix2876
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/vivaldi/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix6
-rwxr-xr-xnixpkgs/pkgs/applications/networking/browsers/vivaldi/update.sh6
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/webbrowser/default.nix109
-rw-r--r--nixpkgs/pkgs/applications/networking/browsers/yandex-browser/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cawbird/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cisco-packet-tracer/8.nix5
-rw-r--r--nixpkgs/pkgs/applications/networking/cloudflared/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/argo/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/argocd-autopilot/default.nix55
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/argocd/default.nix44
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/cmctl/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/driftctl/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/flink/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/fn-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/hadoop/default.nix65
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/helm/chart-testing/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/helmfile/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/kn/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/kontemplate/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/kops/default.nix14
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/krelay/default.nix31
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/kube-capacity/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/kubecolor/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/kubent/default.nix29
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/ocm/default.nix32
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/pluto/default.nix27
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/popeye/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/qbec/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/rancher/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/sonobuoy/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/spark/default.nix56
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json311
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/tfswitch/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/tgswitch/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/tilt/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/velero/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/cluster/werf/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/flexget/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/gmailctl/default.nix12
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/alfaview/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/chatty/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/cinny/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix49
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/package.json21
-rwxr-xr-xnixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh2
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json2
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/element/pin.json6
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/ferdi/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/fractal/default.nix13
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/gotktrix/default.nix42
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/matrixcli/default.nix10
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/neochat/default.nix10
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/nheko/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix18
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix14
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/pond/default.nix14
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/psi-plus/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/schildichat/schildichat-desktop.nix7
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix7
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/session-desktop-appimage/default.nix44
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/sky/default.nix66
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix232
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/kotato-10.12-sdk.patch415
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/shortcuts-binary-path.patch38
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt-10.12-sdk.patch55
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix118
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/tensor/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/networking/ipfs/default.nix24
-rw-r--r--nixpkgs/pkgs/applications/networking/irc/communi/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/networking/irc/ircdog/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/networking/irc/quassel/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/networking/juju/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/lieer/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/networking/linssid/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/alot/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix15
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/himalaya/default.nix12
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/mutt/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/notmuch/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/networking/mailreaders/thunderbird/packages.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/misc/zammad/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/misc/zammad/gemset.nix2412
-rw-r--r--nixpkgs/pkgs/applications/networking/misc/zammad/package.json26
-rw-r--r--nixpkgs/pkgs/applications/networking/misc/zammad/source.json10
-rw-r--r--nixpkgs/pkgs/applications/networking/misc/zammad/update.nix2
-rwxr-xr-xnixpkgs/pkgs/applications/networking/misc/zammad/update.sh4
-rw-r--r--nixpkgs/pkgs/applications/networking/misc/zammad/yarn.lock2944
-rw-r--r--nixpkgs/pkgs/applications/networking/misc/zammad/yarn.nix2592
-rw-r--r--nixpkgs/pkgs/applications/networking/n8n/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/networking/n8n/node-packages.nix278
-rw-r--r--nixpkgs/pkgs/applications/networking/nextcloud-client/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/p2p/fragments/default.nix95
-rw-r--r--nixpkgs/pkgs/applications/networking/p2p/fragments/dependency-resolution.patch25
-rw-r--r--nixpkgs/pkgs/applications/networking/p2p/frostwire/default.nix12
-rw-r--r--nixpkgs/pkgs/applications/networking/p2p/twister/default.nix10
-rw-r--r--nixpkgs/pkgs/applications/networking/protonvpn-gui/default.nix43
-rw-r--r--nixpkgs/pkgs/applications/networking/remote/remmina/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/remote/vmware-horizon-client/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/networking/sync/desync/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/networking/sync/rclone/default.nix15
-rw-r--r--nixpkgs/pkgs/applications/networking/sync/unison/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/networking/termius/default.nix16
-rw-r--r--nixpkgs/pkgs/applications/office/autokey/remove-requires-dbus-python.patch11
-rw-r--r--nixpkgs/pkgs/applications/office/bookworm/default.nix74
-rw-r--r--nixpkgs/pkgs/applications/office/elementary-planner/default.nix15
-rw-r--r--nixpkgs/pkgs/applications/office/jameica/default.nix12
-rw-r--r--nixpkgs/pkgs/applications/office/libreoffice/default.nix11
-rw-r--r--nixpkgs/pkgs/applications/office/micropad/default.nix101
-rw-r--r--nixpkgs/pkgs/applications/office/micropad/package.json87
-rw-r--r--nixpkgs/pkgs/applications/office/micropad/yarn.lock2006
-rw-r--r--nixpkgs/pkgs/applications/office/micropad/yarn.nix2341
-rw-r--r--nixpkgs/pkgs/applications/office/mmex/default.nix55
-rw-r--r--nixpkgs/pkgs/applications/office/scribus/unstable.nix30
-rw-r--r--nixpkgs/pkgs/applications/office/spice-up/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/office/zotero/default.nix86
-rw-r--r--nixpkgs/pkgs/applications/radio/freedv/default.nix12
-rw-r--r--nixpkgs/pkgs/applications/radio/gnuradio/wrapper.nix7
-rw-r--r--nixpkgs/pkgs/applications/radio/pothos/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/radio/rtl-ais/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/radio/sdrplay/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/radio/soapysdrplay/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/radio/soundmodem/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/radio/srsran/default.nix49
-rw-r--r--nixpkgs/pkgs/applications/science/astronomy/gnuastro/default.nix36
-rw-r--r--nixpkgs/pkgs/applications/science/astronomy/kstars/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/astronomy/phd2/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/astronomy/siril/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/astronomy/stellarium/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/science/biology/flywheel-cli/default.nix49
-rw-r--r--nixpkgs/pkgs/applications/science/biology/ncbi-tools/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/science/chemistry/jmol/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/chemistry/marvin/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/computer-architecture/qtrvsim/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/caneda/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/gaw/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix42
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/magic-vlsi/0002-fix-format-security.patch19
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/magic-vlsi/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/ngspice/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/xcircuit/default.nix12
-rw-r--r--nixpkgs/pkgs/applications/science/logic/coq/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/logic/isabelle/components/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/science/logic/isabelle/components/isabelle-linter.nix22
-rw-r--r--nixpkgs/pkgs/applications/science/logic/isabelle/components/mkBuild.nix36
-rw-r--r--nixpkgs/pkgs/applications/science/logic/isabelle/default.nix30
-rw-r--r--nixpkgs/pkgs/applications/science/logic/klee/default.nix81
-rw-r--r--nixpkgs/pkgs/applications/science/logic/klee/klee-uclibc.nix98
-rw-r--r--nixpkgs/pkgs/applications/science/logic/lean/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/science/logic/naproche/default.nix38
-rw-r--r--nixpkgs/pkgs/applications/science/logic/opensmt/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/logic/why3/with-provers.nix2
-rw-r--r--nixpkgs/pkgs/applications/science/logic/z3/4.4.0.nix2
-rw-r--r--nixpkgs/pkgs/applications/science/math/R/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/math/cemu/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/math/cntk/default.nix11
-rw-r--r--nixpkgs/pkgs/applications/science/math/fricas/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/science/math/nasc/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/science/math/qalculate-gtk/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/math/sage/README.md4
-rw-r--r--nixpkgs/pkgs/applications/science/math/scilab-bin/default.nix37
-rw-r--r--nixpkgs/pkgs/applications/science/misc/fityk/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/science/misc/golly/beta.nix50
-rw-r--r--nixpkgs/pkgs/applications/science/misc/simgrid/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/science/robotics/inav-configurator/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/system/monitor/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/alacritty/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/contour/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/cool-retro-term/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/ctx/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/darktile/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/eterm/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/germinal/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/gnome-console/default.nix69
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/guake/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/hyper/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/kermit-terminal/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/kgx/default.nix76
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/kitty/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/lxterminal/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/mlterm/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/mrxvt/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/roxterm/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-font-size/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode/wrapper.nix6
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/sakura/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/st/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/stupidterm/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/terminator/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/termite/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/termonad/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/tilda/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/tilix/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/wayst/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/wezterm/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/xterm/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/version-management/bcompare/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/version-management/fnc/default.nix40
-rw-r--r--nixpkgs/pkgs/applications/version-management/gerrit/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/bfg-repo-cleaner/default.nix82
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/common.nix3
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/pink.nix1
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/darcs-to-git/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/gh/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/default.nix14
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git-branchless/default.nix10
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git-secret/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/git-team/default.nix31
-rw-r--r--nixpkgs/pkgs/applications/version-management/git-and-tools/hut/default.nix43
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitea/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitkraken/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/data.json16
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile22
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock92
-rw-r--r--nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix202
-rw-r--r--nixpkgs/pkgs/applications/version-management/gogs/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/version-management/got/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/version-management/meld/default.nix11
-rw-r--r--nixpkgs/pkgs/applications/video/ani-cli/default.nix44
-rw-r--r--nixpkgs/pkgs/applications/video/byzanz/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/video/corrscope/default.nix16
-rw-r--r--nixpkgs/pkgs/applications/video/filebot/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/video/freetube/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/video/gpu-screen-recorder/default.nix50
-rw-r--r--nixpkgs/pkgs/applications/video/gpu-screen-recorder/fix-nvfbc-check.patch38
-rw-r--r--nixpkgs/pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix46
-rw-r--r--nixpkgs/pkgs/applications/video/lbry/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/video/mkvtoolnix/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/video/mpv/scripts/vr-reversal.nix35
-rw-r--r--nixpkgs/pkgs/applications/video/natron/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/video/p2pvc/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/video/pitivi/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/video/qmplay2/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/video/smplayer/default.nix8
-rw-r--r--nixpkgs/pkgs/applications/video/yuview/default.nix45
-rw-r--r--nixpkgs/pkgs/applications/video/yuview/disable_version_check.patch15
-rw-r--r--nixpkgs/pkgs/applications/virtualization/OVMF/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/virtualization/containerd/1.4.nix51
-rw-r--r--nixpkgs/pkgs/applications/virtualization/containerd/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/cri-o/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/crosvm/Cargo.lock1491
-rw-r--r--nixpkgs/pkgs/applications/virtualization/crosvm/default.nix50
-rwxr-xr-xnixpkgs/pkgs/applications/virtualization/crosvm/update.py33
-rw-r--r--nixpkgs/pkgs/applications/virtualization/crosvm/upstream-info.json31
-rw-r--r--nixpkgs/pkgs/applications/virtualization/crun/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/distrobox/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/docker-slim/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/docker/buildx.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/docker/compose.nix6
-rw-r--r--nixpkgs/pkgs/applications/virtualization/docker/default.nix34
-rw-r--r--nixpkgs/pkgs/applications/virtualization/docker/gc.nix6
-rw-r--r--nixpkgs/pkgs/applications/virtualization/docker/proxy.nix6
-rw-r--r--nixpkgs/pkgs/applications/virtualization/gvisor/containerd-shim.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/gvisor/default.nix2
-rw-r--r--nixpkgs/pkgs/applications/virtualization/lima/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/virtualization/podman-tui/default.nix14
-rw-r--r--nixpkgs/pkgs/applications/virtualization/qemu/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/virtualization/qemu/utils.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/runc/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/singularity/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/virtualization/spike/default.nix7
-rw-r--r--nixpkgs/pkgs/applications/virtualization/virt-viewer/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix1
-rw-r--r--nixpkgs/pkgs/applications/window-managers/btops/default.nix10
-rw-r--r--nixpkgs/pkgs/applications/window-managers/clfswm/default.nix5
-rw-r--r--nixpkgs/pkgs/applications/window-managers/i3/status-rust.nix6
-rw-r--r--nixpkgs/pkgs/applications/window-managers/i3/wsr.nix6
-rw-r--r--nixpkgs/pkgs/applications/window-managers/phosh/default.nix9
-rw-r--r--nixpkgs/pkgs/applications/window-managers/qtile/default.nix26
-rw-r--r--nixpkgs/pkgs/applications/window-managers/taffybar/default.nix3
-rw-r--r--nixpkgs/pkgs/applications/window-managers/xmonad/wrapper.nix3
-rw-r--r--nixpkgs/pkgs/build-support/build-fhs-userenv-bubblewrap/env.nix22
-rw-r--r--nixpkgs/pkgs/build-support/build-fhs-userenv/env.nix22
-rw-r--r--nixpkgs/pkgs/build-support/fetchipfs/default.nix2
-rw-r--r--nixpkgs/pkgs/build-support/fetchpatch/default.nix45
-rw-r--r--nixpkgs/pkgs/build-support/fetchpatch/tests.nix16
-rw-r--r--nixpkgs/pkgs/build-support/fetchurl/default.nix2
-rw-r--r--nixpkgs/pkgs/build-support/make-darwin-bundle/write-darwin-bundle.nix8
-rw-r--r--nixpkgs/pkgs/build-support/nix-gitignore/default.nix6
-rw-r--r--nixpkgs/pkgs/build-support/ocaml/dune.nix9
-rw-r--r--nixpkgs/pkgs/build-support/rust/import-cargo-lock.nix7
-rw-r--r--nixpkgs/pkgs/build-support/setup-hooks/desktop-to-darwin-bundle.sh48
-rw-r--r--nixpkgs/pkgs/data/documentation/gnome-user-docs/default.nix4
-rw-r--r--nixpkgs/pkgs/data/documentation/man-pages/default.nix1
-rw-r--r--nixpkgs/pkgs/data/documentation/std-man-pages/default.nix7
-rw-r--r--nixpkgs/pkgs/data/fonts/borg-sans-mono/default.nix26
-rw-r--r--nixpkgs/pkgs/data/fonts/dancing-script/default.nix27
-rw-r--r--nixpkgs/pkgs/data/fonts/lxgw-wenkai/default.nix4
-rw-r--r--nixpkgs/pkgs/data/fonts/mplus-outline-fonts/default.nix58
-rw-r--r--nixpkgs/pkgs/data/fonts/rictydiminished-with-firacode/default.nix9
-rw-r--r--nixpkgs/pkgs/data/fonts/sarasa-gothic/default.nix4
-rw-r--r--nixpkgs/pkgs/data/fonts/twitter-color-emoji/default.nix4
-rwxr-xr-xnixpkgs/pkgs/data/fonts/vazir-fonts/default.nix4
-rw-r--r--nixpkgs/pkgs/data/icons/faba-icon-theme/default.nix5
-rw-r--r--nixpkgs/pkgs/data/icons/flat-remix-icon-theme/default.nix11
-rw-r--r--nixpkgs/pkgs/data/icons/humanity-icon-theme/default.nix8
-rw-r--r--nixpkgs/pkgs/data/icons/kora-icon-theme/default.nix4
-rw-r--r--nixpkgs/pkgs/data/icons/tango-icon-theme/default.nix5
-rw-r--r--nixpkgs/pkgs/data/icons/whitesur-icon-theme/default.nix4
-rw-r--r--nixpkgs/pkgs/data/misc/brise/default.nix3
-rw-r--r--nixpkgs/pkgs/data/misc/miscfiles/default.nix5
-rw-r--r--nixpkgs/pkgs/data/misc/mobile-broadband-provider-info/default.nix4
-rw-r--r--nixpkgs/pkgs/data/misc/shared-desktop-ontologies/default.nix5
-rw-r--r--nixpkgs/pkgs/data/misc/v2ray-domain-list-community/default.nix4
-rw-r--r--nixpkgs/pkgs/data/misc/v2ray-geoip/default.nix6
-rw-r--r--nixpkgs/pkgs/data/soundfonts/generaluser/default.nix25
-rw-r--r--nixpkgs/pkgs/data/themes/arc/default.nix27
-rw-r--r--nixpkgs/pkgs/data/themes/dracula-theme/default.nix2
-rw-r--r--nixpkgs/pkgs/data/themes/flat-remix-gtk/default.nix4
-rw-r--r--nixpkgs/pkgs/data/themes/graphite-gtk-theme/default.nix11
-rw-r--r--nixpkgs/pkgs/data/themes/greybird/default.nix19
-rw-r--r--nixpkgs/pkgs/data/themes/kwin-decorations/kde-rounded-corners/default.nix6
-rw-r--r--nixpkgs/pkgs/data/themes/yaru/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/arcan/arcan/clone-sources.nix2
-rw-r--r--nixpkgs/pkgs/desktops/arcan/durden/default.nix10
-rw-r--r--nixpkgs/pkgs/desktops/arcan/pipeworld/default.nix10
-rw-r--r--nixpkgs/pkgs/desktops/arcan/prio/default.nix6
-rw-r--r--nixpkgs/pkgs/desktops/arcan/xarcan/default.nix16
-rw-r--r--nixpkgs/pkgs/desktops/enlightenment/terminology/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/file-roller/default.nix20
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/ghex/default.nix44
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-boxes/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-calendar/default.nix56
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-calendar/gtk_image_reset_crash.patch17
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-characters/default.nix38
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-clocks/default.nix23
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-connections/default.nix10
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-maps/default.nix19
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-music/default.nix21
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-notes/default.nix13
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix15
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix12
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/gnome-weather/default.nix16
-rw-r--r--nixpkgs/pkgs/desktops/gnome/apps/polari/default.nix71
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/baobab/default.nix26
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/eog/default.nix41
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/epiphany/default.nix22
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/evince/default.nix36
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/default.nix96
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gdm/default.nix6
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix31
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix27
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-calculator/default.nix24
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-contacts/default.nix39
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/default.nix54
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-dictionary/default.nix63
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix44
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix6
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-keyring/default.nix5
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix40
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-session/ctl.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-session/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix21
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix15
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch10
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix14
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix12
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-terminal/default.nix7
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-tour/default.nix17
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gnome-user-share/default.nix5
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/gucharmap/default.nix8
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/mutter/default.nix6
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/nautilus/default.nix21
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/simple-scan/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/totem/default.nix14
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/yelp-xsl/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/core/yelp/default.nix6
-rw-r--r--nixpkgs/pkgs/desktops/gnome/default.nix5
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/collisions.json11
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/default.nix3
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/extensionOverrides.nix28
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/extensionOverridesPatches/freon_at_UshakovVasilii_Github.yahoo.com.patch (renamed from nixpkgs/pkgs/desktops/gnome/extensions/freon/fix_paths.patch)30
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/extensionRenames.nix3
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/extensions.json276
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/freon/default.nix61
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/gsconnect/default.nix8
-rw-r--r--nixpkgs/pkgs/desktops/gnome/extensions/manuallyPackaged.nix1
-rwxr-xr-xnixpkgs/pkgs/desktops/gnome/extensions/update-extensions.py1
-rw-r--r--nixpkgs/pkgs/desktops/gnome/games/aisleriot/default.nix13
-rw-r--r--nixpkgs/pkgs/desktops/gnome/games/gnome-chess/default.nix7
-rw-r--r--nixpkgs/pkgs/desktops/gnome/games/gnome-mahjongg/default.nix44
-rw-r--r--nixpkgs/pkgs/desktops/gnome/games/gnome-sudoku/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/games/gnome-tetravex/default.nix53
-rw-r--r--nixpkgs/pkgs/desktops/gnome/games/hitori/default.nix13
-rw-r--r--nixpkgs/pkgs/desktops/gnome/games/tali/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/misc/gitg/default.nix10
-rw-r--r--nixpkgs/pkgs/desktops/gnome/misc/gnome-applets/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/misc/gnome-flashback/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/misc/gnome-panel/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix7
-rw-r--r--nixpkgs/pkgs/desktops/gnome/misc/gpaste/default.nix13
-rw-r--r--nixpkgs/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch20
-rw-r--r--nixpkgs/pkgs/desktops/gnome/misc/metacity/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/default.nix9
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/obconf-qt/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/qterminal/default.nix3
-rw-r--r--nixpkgs/pkgs/desktops/mate/mate-backgrounds/default.nix11
-rw-r--r--nixpkgs/pkgs/desktops/mate/mate-terminal/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/appcenter/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-camera/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-code/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-files/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-music/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-photos/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-tasks/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/elementary-videos/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/sideload/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/apps/switchboard/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/default.nix16
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix6
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/desktop/elementary-shortcut-overlay/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/desktop/gala/default.nix2
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix3
-rw-r--r--nixpkgs/pkgs/desktops/pantheon/desktop/wingpanel/default.nix6
-rw-r--r--nixpkgs/pkgs/desktops/plasma-5/3rdparty/addons/bismuth/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/plasma-5/default.nix3
-rw-r--r--nixpkgs/pkgs/desktops/plasma-5/fetch.sh2
-rw-r--r--nixpkgs/pkgs/desktops/plasma-5/plasma-mobile/default.nix (renamed from nixpkgs/pkgs/desktops/plasma-5/plasma-phone-components/default.nix)6
-rw-r--r--nixpkgs/pkgs/desktops/plasma-5/plasma-systemmonitor.nix6
-rw-r--r--nixpkgs/pkgs/desktops/plasma-5/plasma-workspace/0001-startkde.patch4
-rw-r--r--nixpkgs/pkgs/desktops/plasma-5/srcs.nix436
-rw-r--r--nixpkgs/pkgs/desktops/xfce/applications/orage/default.nix75
-rw-r--r--nixpkgs/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix4
-rw-r--r--nixpkgs/pkgs/desktops/xfce/default.nix5
-rw-r--r--nixpkgs/pkgs/development/chez-modules/chez-mit/default.nix15
-rw-r--r--nixpkgs/pkgs/development/chez-modules/chez-scmutils/default.nix15
-rw-r--r--nixpkgs/pkgs/development/chez-modules/chez-srfi/default.nix9
-rw-r--r--nixpkgs/pkgs/development/compilers/4th/001-install-manual-fixup.diff12
-rw-r--r--nixpkgs/pkgs/development/compilers/4th/default.nix17
-rw-r--r--nixpkgs/pkgs/development/compilers/aldor/default.nix9
-rw-r--r--nixpkgs/pkgs/development/compilers/ciao/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/crystal/build-package.nix22
-rw-r--r--nixpkgs/pkgs/development/compilers/crystal/default.nix10
-rw-r--r--nixpkgs/pkgs/development/compilers/cudatoolkit/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/dotnet/build-dotnet.nix28
-rw-r--r--nixpkgs/pkgs/development/compilers/dotnet/default.nix186
-rwxr-xr-xnixpkgs/pkgs/development/compilers/dotnet/print-hashes.sh161
-rw-r--r--nixpkgs/pkgs/development/compilers/emscripten/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/10/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/11/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/4.8/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/4.9/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/6/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/7/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/8/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/gcc/9/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/ghcjs/ghcjs-base.nix9
-rw-r--r--nixpkgs/pkgs/development/compilers/go/1.16.nix3
-rw-r--r--nixpkgs/pkgs/development/compilers/go/1.17.nix3
-rw-r--r--nixpkgs/pkgs/development/compilers/go/1.18.nix3
-rw-r--r--nixpkgs/pkgs/development/compilers/hip/default.nix13
-rw-r--r--nixpkgs/pkgs/development/compilers/inklecate/deps-darwin.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/inklecate/deps-linux.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/ligo/default.nix57
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/10/lld/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/11/lld/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/13/lld/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/14/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/14/lld/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/14/openmp/default.nix19
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/14/openmp/fix-find-tool.patch54
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/14/openmp/gnu-install-dirs.patch52
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/14/openmp/run-lit-directly.patch12
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/5/lld/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/6/lld/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/7/lld/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/8/lld/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/9/lld/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/git/lld/default.nix2
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/68d5235cb58f988c71b403334cd9482d663841ab.patch78
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/compiler-rt-codesign.patch33
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/default.nix9
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/llvm/rocm/llvm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/compilers/nim/default.nix8
-rw-r--r--nixpkgs/pkgs/development/compilers/ocaml/4.14.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/open-watcom/v2.nix6
-rw-r--r--nixpkgs/pkgs/development/compilers/opendylan/default.nix9
-rw-r--r--nixpkgs/pkgs/development/compilers/openjdk/8.nix81
-rw-r--r--nixpkgs/pkgs/development/compilers/qbe/default.nix6
-rwxr-xr-xnixpkgs/pkgs/development/compilers/rust/print-hashes.sh1
-rw-r--r--nixpkgs/pkgs/development/compilers/solc/default.nix13
-rw-r--r--nixpkgs/pkgs/development/compilers/souffle/default.nix35
-rw-r--r--nixpkgs/pkgs/development/compilers/squeak/default.nix208
-rw-r--r--nixpkgs/pkgs/development/compilers/squeak/squeak-configure-version.patch94
-rw-r--r--nixpkgs/pkgs/development/compilers/squeak/squeak-plugins-discovery.patch34
-rw-r--r--nixpkgs/pkgs/development/compilers/squeak/squeak-squeaksh-nixpkgs.patch40
-rw-r--r--nixpkgs/pkgs/development/compilers/vala/default.nix16
-rw-r--r--nixpkgs/pkgs/development/coq-modules/VST/default.nix1
-rw-r--r--nixpkgs/pkgs/development/coq-modules/compcert/default.nix5
-rw-r--r--nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix6
-rw-r--r--nixpkgs/pkgs/development/embedded/bossa/default.nix13
-rw-r--r--nixpkgs/pkgs/development/guile-modules/guile-ssh/default.nix4
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-common.nix11
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml2
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix1
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix4
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/hoogle.nix7
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/make-package-set.nix16
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/non-hackage-packages.nix2
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/package-list.nix8
-rw-r--r--nixpkgs/pkgs/development/interpreters/alda/default.nix6
-rw-r--r--nixpkgs/pkgs/development/interpreters/ceptre/default.nix10
-rw-r--r--nixpkgs/pkgs/development/interpreters/clojure/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/guile/3.0.nix2
-rw-r--r--nixpkgs/pkgs/development/interpreters/janet/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/jimtcl/default.nix29
-rw-r--r--nixpkgs/pkgs/development/interpreters/php/8.0.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/php/8.1.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/picoc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/interpreters/pixie/default.nix9
-rw-r--r--nixpkgs/pkgs/development/interpreters/python/default.nix28
-rw-r--r--nixpkgs/pkgs/development/interpreters/scsh/default.nix9
-rw-r--r--nixpkgs/pkgs/development/interpreters/spidermonkey/78.nix3
-rw-r--r--nixpkgs/pkgs/development/interpreters/spidermonkey/91.nix3
-rw-r--r--nixpkgs/pkgs/development/java-modules/maven-fod.nix56
-rw-r--r--nixpkgs/pkgs/development/libraries/CGAL/4.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/LAStools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/SDL2_sound/default.nix48
-rw-r--r--nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix56
-rw-r--r--nixpkgs/pkgs/development/libraries/audio/lv2/default.nix36
-rw-r--r--nixpkgs/pkgs/development/libraries/bctoolbox/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/belcard/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/belr/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/boost/generic.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/capnproto/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/capnproto/musl-no-fibers.patch244
-rw-r--r--nixpkgs/pkgs/development/libraries/cglm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/clearsilver/default.nix44
-rw-r--r--nixpkgs/pkgs/development/libraries/cosmopolitan/default.nix64
-rw-r--r--nixpkgs/pkgs/development/libraries/cosmopolitan/ioctl.patch12
-rw-r--r--nixpkgs/pkgs/development/libraries/crcpp/default.nix16
-rw-r--r--nixpkgs/pkgs/development/libraries/draco/default.nix23
-rw-r--r--nixpkgs/pkgs/development/libraries/exiv2/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/ffmpeg-sixel/default.nix37
-rw-r--r--nixpkgs/pkgs/development/libraries/ffmpeg/3.4.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/ffmpeg/generic.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/flatpak/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/folks/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gcr/default.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/gdal/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gdcm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gdk-pixbuf/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/gjs/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/glib-networking/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/glib-testing/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/glib/default.nix14
-rw-r--r--nixpkgs/pkgs/development/libraries/glib/link-with-coreservices.patch11
-rw-r--r--nixpkgs/pkgs/development/libraries/gnome-desktop/bubblewrap-paths.patch (renamed from nixpkgs/pkgs/desktops/gnome/core/gnome-desktop/bubblewrap-paths.patch)0
-rw-r--r--nixpkgs/pkgs/development/libraries/gnome-desktop/default.nix (renamed from nixpkgs/pkgs/desktops/gnome/core/gnome-desktop/default.nix)7
-rw-r--r--nixpkgs/pkgs/development/libraries/gnome-online-accounts/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch22
-rw-r--r--nixpkgs/pkgs/development/libraries/gobject-introspection/default.nix16
-rw-r--r--nixpkgs/pkgs/development/libraries/gsettings-desktop-schemas/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gtk/3.x.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/gtk/4.x.nix17
-rw-r--r--nixpkgs/pkgs/development/libraries/gtkmm/4.x.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gtksourceview/4.x.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gtksourceview/5.x.nix17
-rw-r--r--nixpkgs/pkgs/development/libraries/gvfs/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/harfbuzz/default.nix11
-rw-r--r--nixpkgs/pkgs/development/libraries/igraph/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/intel-gmmlib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/java/hydra-ant-logger/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/java/jffi/default.nix47
-rw-r--r--nixpkgs/pkgs/development/libraries/jsonrpc-glib/default.nix41
-rw-r--r--nixpkgs/pkgs/development/libraries/kde-frameworks/kauth/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libadwaita/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/libarchive-qt/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/libarchive/default.nix7
-rw-r--r--nixpkgs/pkgs/development/libraries/libass/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libbluray/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libcec/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libcec/platform.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libctl/default.nix31
-rw-r--r--nixpkgs/pkgs/development/libraries/libdazzle/default.nix45
-rw-r--r--nixpkgs/pkgs/development/libraries/libgbinder/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libgcrypt/1.5.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libgcrypt/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libgnome-games-support/2.0.nix59
-rw-r--r--nixpkgs/pkgs/development/libraries/libgnome-games-support/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libgpg-error/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/libgphoto2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libgsf/default.nix59
-rw-r--r--nixpkgs/pkgs/development/libraries/libgweather/default.nix33
-rw-r--r--nixpkgs/pkgs/development/libraries/libgweather/fix-pkgconfig.patch14
-rw-r--r--nixpkgs/pkgs/development/libraries/libhandy/0.x.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libhandy/default.nix20
-rw-r--r--nixpkgs/pkgs/development/libraries/libical/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libidn/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libidn2/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/liblastfm/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libnatpmp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libnbd/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/liboauth/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libotr/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libpeas/default.nix50
-rw-r--r--nixpkgs/pkgs/development/libraries/libportal/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libpwquality/default.nix57
-rw-r--r--nixpkgs/pkgs/development/libraries/libpwquality/python-binding-prefix.patch13
-rw-r--r--nixpkgs/pkgs/development/libraries/libqalculate/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libqb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libressl/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/librest/1.0.nix74
-rw-r--r--nixpkgs/pkgs/development/libraries/librest/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/librsvg/default.nix17
-rw-r--r--nixpkgs/pkgs/development/libraries/librtprocess/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libsecret/default.nix79
-rw-r--r--nixpkgs/pkgs/development/libraries/libsolv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libsoup/3.x.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libthreadar/default.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/libtiff/default.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/libtoxcore/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libudev-zero/default.nix16
-rw-r--r--nixpkgs/pkgs/development/libraries/libusb-compat/0.1.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libusb1/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/libvirt/0001-qemu-segmentation-fault-in-virtqemud-executing-qemuD.patch48
-rw-r--r--nixpkgs/pkgs/development/libraries/libvirt/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/lime/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/lpcnetfreedv/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/malcontent/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/matio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/mysocketw/default.nix27
-rw-r--r--nixpkgs/pkgs/development/libraries/opendht/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/pango/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/pcg-c/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/pipewire/wireplumber.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/poppler/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/prometheus-cpp/default.nix12
-rw-r--r--nixpkgs/pkgs/development/libraries/protolock/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/qscintilla/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/qwt/6_1.nix (renamed from nixpkgs/pkgs/development/libraries/qwt/6.nix)3
-rw-r--r--nixpkgs/pkgs/development/libraries/qwt/default.nix21
-rw-r--r--nixpkgs/pkgs/development/libraries/robin-map/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/rocm-comgr/default.nix13
-rw-r--r--nixpkgs/pkgs/development/libraries/science/astronomy/cfitsio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/cudnn/default.nix119
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/cudnn/generic.nix44
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/suitesparse/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/sdbus-cpp/default.nix50
-rw-r--r--nixpkgs/pkgs/development/libraries/taglib/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/template-glib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/tinygltf/default.nix32
-rw-r--r--nixpkgs/pkgs/development/libraries/tracker-miners/default.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/tracker-miners/fix-paths.patch13
-rw-r--r--nixpkgs/pkgs/development/libraries/tracker/default.nix24
-rw-r--r--nixpkgs/pkgs/development/libraries/tracker/fix-paths.patch13
-rw-r--r--nixpkgs/pkgs/development/libraries/ucx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/vte/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/wxwidgets/wxGTK31.nix41
-rw-r--r--nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/yder/default.nix4
-rw-r--r--nixpkgs/pkgs/development/lisp-modules/lisp-packages.nix9
-rw-r--r--nixpkgs/pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix9
-rw-r--r--nixpkgs/pkgs/development/misc/yelp-tools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/mobile/genymotion/default.nix3
-rw-r--r--nixpkgs/pkgs/development/node-packages/default.nix14
-rwxr-xr-xnixpkgs/pkgs/development/node-packages/generate.sh2
-rw-r--r--nixpkgs/pkgs/development/node-packages/node-packages.nix9977
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/asn1-combinators/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/batteries/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/bigarray-compat/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/biniou/1.0.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/bisect_ppx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/bolt/default.nix69
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/bos/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ca-certs/default.nix11
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/comparelib/default.nix25
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/conduit/default.nix3
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/csv/1.5.nix8
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/directories/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/dune-action-plugin/default.nix8
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/dune-glob/default.nix8
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/dune-private-libs/default.nix10
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/dune-site/default.nix8
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/duration/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/dyn/default.nix16
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/elina/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/enumerate/default.nix31
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/eqaf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/facile/default.nix7
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/fiat-p256/default.nix33
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/gapi-ocaml/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/gmetadom/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/hack_parallel/default.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ipaddr/cstruct.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ipaddr/default.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ipaddr/sexp.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/iter/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix7
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/jingoo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/lwt-watcher/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/macaddr/cstruct.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/macaddr/default.nix10
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/macaddr/sexp.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/magic-mime/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/magick/default.nix34
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/markup/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mccs/default.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mimic/default.nix14
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mirage-flow/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mirage-fs/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mirage-logs/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mirage-profile/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mirage-time/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mlgmpidl/default.nix5
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/nonstd/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix3
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ocplib-endian/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/odn/default.nix37
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/odoc-parser/default.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/opium_kernel/default.nix3
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ordering/default.nix13
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/owl-base/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/pcap-format/default.nix3
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/pipebang/default.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/piqi-ocaml/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ppx_cstubs/default.nix8
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ppx_deriving_protobuf/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/printbox/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/psmt2-frontend/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/routes/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/sawja/default.nix7
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/shared-memory-ring/default.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/stdune/default.nix16
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/tcpip/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ulex/default.nix1
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/uutf/default.nix14
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/wasm/default.nix2
-rw-r--r--nixpkgs/pkgs/development/php-packages/composer/default.nix4
-rw-r--r--nixpkgs/pkgs/development/php-packages/memcached/default.nix17
-rw-r--r--nixpkgs/pkgs/development/php-packages/mongodb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/php-packages/php-cs-fixer/default.nix4
-rw-r--r--nixpkgs/pkgs/development/php-packages/phpstan/default.nix4
-rw-r--r--nixpkgs/pkgs/development/php-packages/swoole/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/Fabric/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/adb-enhanced/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/add-trailing-comma/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/affine/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ailment/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioairzone/default.nix40
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiobotocore/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiogithubapi/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiohue/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioridwell/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiowebostv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/androidtv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/angr/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/angrop/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible-doctor/default.nix69
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible-later/default.nix83
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible-runner/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible/base.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible/core.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/anyconfig/default.nix48
-rw-r--r--nixpkgs/pkgs/development/python-modules/archinfo/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/argon2_cffi/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/arpeggio/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/arviz/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aspy-refactor-imports/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/asyncmy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/asyncsleepiq/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/asyncssh/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/asyncstdlib/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/auth0-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aws-lambda-builders/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/awscrt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-containerregistry/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-core/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-keyvault-administration/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-keyvault-certificates/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-keyvault-keys/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-applicationinsights/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-monitor/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-resource/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-signalr/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-multiapi-storage/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/beancount_docverif/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/beartype/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bidict/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bids-validator/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/blinkpy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/blis/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/boltztrap2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/boto/bug-953970_python3.8-compat.patch53
-rw-r--r--nixpkgs/pkgs/development/python-modules/boto/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/broadlink/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/brotli/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/brotlicffi/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/bumps/default.nix33
-rw-r--r--nixpkgs/pkgs/development/python-modules/capstone/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/catalogue/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/certifi/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/check-manifest/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/chess/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/claripy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cle/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/click/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/cloudscraper/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/cloudsmith-api/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/coqui-trainer/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/cvxopt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/datasette/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/debugpy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/desktop-notifier/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/diff-cover/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/discogs-client/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dnspython/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/docplex/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/docx2txt/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/dulwich/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dunamai/default.nix52
-rw-r--r--nixpkgs/pkgs/development/python-modules/editorconfig/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/elastic-apm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/elementpath/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/elkm1-lib/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/env-canada/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/etuples/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/evdev/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/fakeredis/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/faraday-plugins/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/fastcore/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/flake8-blind-except/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/flake8-bugbear/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/flask/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/flatdict/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/forecast-solar/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gaphas/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gcovr/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/glean-parser/default.nix40
-rw-r--r--nixpkgs/pkgs/development/python-modules/glean-sdk/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-auth-oauthlib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-auth/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-cloud-bigquery/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-cloud-bigtable/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-cloud-container/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-cloud-core/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-cloud-redis/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-cloud-speech/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-cloud-storage/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-cloud-vision/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/googleapis-common-protos/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/gphoto2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/graphql-subscription-manager/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/gruut-ipa/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/gruut/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/h2/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/habanero/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/hacking/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/hahomematic/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/httplib2/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/identify/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/iminuit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/influxdb-client/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/intellifire4py/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/internetarchive/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/invocations/default.nix43
-rw-r--r--nixpkgs/pkgs/development/python-modules/invoke/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/ipykernel/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/itemadapter/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/jax/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/jaxlib/bin.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/jaxlib/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/jdatetime/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jsbeautifier/default.nix40
-rw-r--r--nixpkgs/pkgs/development/python-modules/jupyterlab-lsp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jxmlease/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/keyrings-google-artifactregistry-auth/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/keystoneauth1/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/kubernetes/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/libcst/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/limnoria/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/luxtronik/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/manimpango/default.nix52
-rw-r--r--nixpkgs/pkgs/development/python-modules/mcstatus/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/mdformat/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/meilisearch/default.nix39
-rw-r--r--nixpkgs/pkgs/development/python-modules/meshtastic/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/metar/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/minidb/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/minikerberos/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/mitmproxy/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/mkdocs-material/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/mkdocs-material/mkdocs-material-extensions.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/mlflow/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/motionblinds/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/msgpack/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/mutag/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/myfitnesspal/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nassl/default.nix91
-rw-r--r--nixpkgs/pkgs/development/python-modules/nbxmpp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ndspy/default.nix40
-rw-r--r--nixpkgs/pkgs/development/python-modules/neo4j-driver/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nested-lookup/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/nilearn/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/nocasedict/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nocaselist/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/notifymuch/default.nix52
-rw-r--r--nixpkgs/pkgs/development/python-modules/notmuch2/default.nix (renamed from nixpkgs/pkgs/applications/networking/mailreaders/alot/notmuch.nix)6
-rw-r--r--nixpkgs/pkgs/development/python-modules/obfsproxy/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/ocrmypdf/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/openai/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/openapi-core/default.nix55
-rw-r--r--nixpkgs/pkgs/development/python-modules/opensfm/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/openstackdocstheme/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ormar/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/osc-lib/default.nix15
-rwxr-xr-xnixpkgs/pkgs/development/python-modules/osmnx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/panel/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/paramiko/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/parver/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/passlib/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/pathable/default.nix45
-rw-r--r--nixpkgs/pkgs/development/python-modules/pdfminer_six/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/pdfx/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/pex/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/pint-pandas/default.nix48
-rw-r--r--nixpkgs/pkgs/development/python-modules/plexapi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/portend/black-19.10b0.patch13
-rw-r--r--nixpkgs/pkgs/development/python-modules/portend/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/preprocess-cancellation/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/protonvpn-nm-lib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/proxmoxer/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/publicsuffix2/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/pubnub/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pulsectl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/py-synologydsm-api/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyaussiebb/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pybullet/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pycep-parser/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyclip/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/pycrypto/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pycurl/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyeclib/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygame/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyglet/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygmt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyinfra/default.nix60
-rw-r--r--nixpkgs/pkgs/development/python-modules/pykrakenapi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymarshal/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymavlink/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyoverkiz/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pypandoc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyrect/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyrogram/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-core/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-ethtool/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-ipdb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-ipset/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-ndb/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-nftables/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-nslink/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2-protocols/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyroute2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysaml2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysigma-backend-splunk/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysigma-pipeline-crowdstrike/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysigma-pipeline-sysmon/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysigma/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyskyqhub/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytesseract/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-console-scripts/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-json-report/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-box/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-cinderclient/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-crfsuite/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-http-client/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-kasa/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-novaclient/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytorch/bin.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytorch/binary-hashes.nix65
-rwxr-xr-xnixpkgs/pkgs/development/python-modules/pytorch/prefetch.sh17
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyudev/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyvesync/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyvex/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pywlroots/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyxbe/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyzbar/default.nix40
-rw-r--r--nixpkgs/pkgs/development/python-modules/qcengine/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/qiling/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/qtpy/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/readme_renderer/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/releases/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/renault-api/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/reorder-python-imports/default.nix43
-rw-r--r--nixpkgs/pkgs/development/python-modules/requests-aws4auth/default.nix50
-rw-r--r--nixpkgs/pkgs/development/python-modules/robotframework/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/rokuecp/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/ropper/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/s3-credentials/default.nix49
-rw-r--r--nixpkgs/pkgs/development/python-modules/sabyenc3/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/samplerate/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/samsungtvws/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sasmodels/default.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/scancode-toolkit/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-fmm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-hep-testdata/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/scmrepo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/scrapy/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/sense-energy/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sip/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/sip/fix-manylinux-version.patch19
-rw-r--r--nixpkgs/pkgs/development/python-modules/slixmpp/default.nix39
-rw-r--r--nixpkgs/pkgs/development/python-modules/soco/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sslyze/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/stripe/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/stups-pierone/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/subarulink/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/svg2tikz/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/swift/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/tempora/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/tensorflow-tensorboard/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/thinc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/timetagger/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/tls-parser/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/torchaudio/bin.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/torchaudio/binary-hashes.nix60
-rwxr-xr-xnixpkgs/pkgs/development/python-modules/torchaudio/prefetch.sh17
-rw-r--r--nixpkgs/pkgs/development/python-modules/torchvision/bin.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/torchvision/binary-hashes.nix60
-rwxr-xr-xnixpkgs/pkgs/development/python-modules/torchvision/prefetch.sh17
-rw-r--r--nixpkgs/pkgs/development/python-modules/towncrier/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/trimesh/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/twentemilieu/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/twisted/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/txtorcon/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/typed-settings/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-dateutil/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-freezegun/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-paramiko/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-protobuf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-pytz/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-requests/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-setuptools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-tabulate/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/unicorn/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/unicrypto/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/urwid/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/vertica-python/default.nix45
-rw-r--r--nixpkgs/pkgs/development/python-modules/vt-py/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/wrf-python/default.nix32
-rw-r--r--nixpkgs/pkgs/development/python-modules/xhtml2pdf/default.nix49
-rw-r--r--nixpkgs/pkgs/development/python-modules/xmlschema/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/yalexs/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/yamale/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/youtube-search-python/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/zipstream-ng/default.nix38
-rwxr-xr-xnixpkgs/pkgs/development/python-modules/zstandard/default.nix22
-rw-r--r--nixpkgs/pkgs/development/quickemu/default.nix5
-rw-r--r--nixpkgs/pkgs/development/quickemu/efi_vars_ensure_writable.patch13
-rw-r--r--nixpkgs/pkgs/development/quickemu/input_overrides.patch19
-rw-r--r--nixpkgs/pkgs/development/r-modules/bioc-experiment-packages.nix2
-rw-r--r--nixpkgs/pkgs/development/r-modules/bioc-packages.nix152
-rw-r--r--nixpkgs/pkgs/development/r-modules/cran-packages.nix2620
-rw-r--r--nixpkgs/pkgs/development/r-modules/default.nix8
-rw-r--r--nixpkgs/pkgs/development/r-modules/patches/RNifti.patch33
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/bundler/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/abuild/default.nix40
-rw-r--r--nixpkgs/pkgs/development/tools/air/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/allure/default.nix39
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/checkov/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/cppcheck/default.nix18
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/flow/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/rizin/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/tfsec/default.nix27
-rw-r--r--nixpkgs/pkgs/development/tools/bazel-gazelle/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/buf/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/fac/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/meson/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch176
-rw-r--r--nixpkgs/pkgs/development/tools/build-managers/mill/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/cambalache/default.nix96
-rw-r--r--nixpkgs/pkgs/development/tools/cask/default.nix16
-rw-r--r--nixpkgs/pkgs/development/tools/cfn-nag/Gemfile2
-rw-r--r--nixpkgs/pkgs/development/tools/cfn-nag/Gemfile.lock51
-rw-r--r--nixpkgs/pkgs/development/tools/cfn-nag/default.nix19
-rw-r--r--nixpkgs/pkgs/development/tools/cfn-nag/gemset.nix189
-rw-r--r--nixpkgs/pkgs/development/tools/circup/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/cloud-nuke/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/cocoapods/Gemfile (renamed from nixpkgs/pkgs/development/mobile/cocoapods/Gemfile)0
-rw-r--r--nixpkgs/pkgs/development/tools/cocoapods/Gemfile-beta (renamed from nixpkgs/pkgs/development/mobile/cocoapods/Gemfile-beta)0
-rw-r--r--nixpkgs/pkgs/development/tools/cocoapods/Gemfile-beta.lock (renamed from nixpkgs/pkgs/development/mobile/cocoapods/Gemfile-beta.lock)0
-rw-r--r--nixpkgs/pkgs/development/tools/cocoapods/Gemfile.lock (renamed from nixpkgs/pkgs/development/mobile/cocoapods/Gemfile.lock)0
-rw-r--r--nixpkgs/pkgs/development/tools/cocoapods/default.nix (renamed from nixpkgs/pkgs/development/mobile/cocoapods/default.nix)1
-rw-r--r--nixpkgs/pkgs/development/tools/cocoapods/gemset-beta.nix (renamed from nixpkgs/pkgs/development/mobile/cocoapods/gemset-beta.nix)0
-rw-r--r--nixpkgs/pkgs/development/tools/cocoapods/gemset.nix (renamed from nixpkgs/pkgs/development/mobile/cocoapods/gemset.nix)0
-rwxr-xr-xnixpkgs/pkgs/development/tools/cocoapods/update (renamed from nixpkgs/pkgs/development/mobile/cocoapods/update)0
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/drone/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/github-runner/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/github-runner/deps.nix60
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix7
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/fix-shell-path.patch28
-rw-r--r--nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/remove-bash-test.patch80
-rw-r--r--nixpkgs/pkgs/development/tools/database/prisma-engines/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/database/sqlcheck/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/database/sqlfluff/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/doctl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/documentation/gi-docgen/default.nix14
-rw-r--r--nixpkgs/pkgs/development/tools/earthly/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/efm-langserver/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/electron/default.nix64
-rw-r--r--nixpkgs/pkgs/development/tools/evans/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/fq/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/frugal/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/glade/default.nix20
-rw-r--r--nixpkgs/pkgs/development/tools/go-repo-root/default.nix14
-rw-r--r--nixpkgs/pkgs/development/tools/gofumpt/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/golangci-lint/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/gomodifytags/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/google-java-format/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/gopls/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/gore/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/gosec/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/gotags/default.nix14
-rw-r--r--nixpkgs/pkgs/development/tools/gotools/default.nix18
-rw-r--r--nixpkgs/pkgs/development/tools/haskell/dconf2nix/dconf2nix.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/jbang/default.nix5
-rw-r--r--nixpkgs/pkgs/development/tools/jd/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/jp/default.nix16
-rw-r--r--nixpkgs/pkgs/development/tools/jql/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/just/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/k6/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/kaf/default.nix25
-rw-r--r--nixpkgs/pkgs/development/tools/kcli/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/ko/default.nix9
-rw-r--r--nixpkgs/pkgs/development/tools/ktlint/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/kube-linter/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/kustomize/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/lazygit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/license_finder/Gemfile2
-rw-r--r--nixpkgs/pkgs/development/tools/license_finder/Gemfile.lock26
-rw-r--r--nixpkgs/pkgs/development/tools/license_finder/default.nix19
-rw-r--r--nixpkgs/pkgs/development/tools/license_finder/gemset.nix74
-rw-r--r--nixpkgs/pkgs/development/tools/literate-programming/Literate/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/misc/act/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/blackfire/php-probe.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/cgdb/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/misc/d-feet/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/misc/gdb/default.nix8
-rw-r--r--nixpkgs/pkgs/development/tools/misc/gef/default.nix77
-rw-r--r--nixpkgs/pkgs/development/tools/misc/grcov/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/lit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/nrfutil/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/misc/strace/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/terraformer/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/unused/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/misc/ycmd/default.nix10
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/cppo/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/ocamlbuild/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/ocamlscript/Makefile.patch75
-rw-r--r--nixpkgs/pkgs/development/tools/ocaml/ocamlscript/default.nix26
-rw-r--r--nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix11
-rw-r--r--nixpkgs/pkgs/development/tools/omnisharp-roslyn/deps.nix244
-rw-r--r--nixpkgs/pkgs/development/tools/operator-sdk/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/oras/default.nix40
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/hammer/default.nix9
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix1
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-clojure.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cuda.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dockerfile.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dot.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-elixir.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-erlang.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fennel.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fish.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-haskell.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-hcl.json11
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-java.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-markdown.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-perl.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-prisma.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-vim.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-zig.json8
-rw-r--r--nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/patatt/default.nix28
-rw-r--r--nixpkgs/pkgs/development/tools/pipenv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/profiling/sysprof/capture.nix1
-rw-r--r--nixpkgs/pkgs/development/tools/profiling/sysprof/default.nix9
-rw-r--r--nixpkgs/pkgs/development/tools/profiling/systemtap/default.nix1
-rw-r--r--nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/default.nix15
-rw-r--r--nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/deps.nix333
-rw-r--r--nixpkgs/pkgs/development/tools/protoc-gen-go/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/pscale/default.nix13
-rw-r--r--nixpkgs/pkgs/development/tools/pulumictl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/rover/default.nix56
-rw-r--r--nixpkgs/pkgs/development/tools/rover/librusty_v8.nix17
-rw-r--r--nixpkgs/pkgs/development/tools/rover/schema/etag.id1
-rw-r--r--nixpkgs/pkgs/development/tools/rover/schema/schema.graphql172
-rwxr-xr-xnixpkgs/pkgs/development/tools/rover/update.sh96
-rw-r--r--nixpkgs/pkgs/development/tools/rslint/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rtags/default.nix11
-rw-r--r--nixpkgs/pkgs/development/tools/rust/bootimage/default.nix26
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-crev/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-nextest/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-spellcheck/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cargo-supply-chain/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/rust/cbindgen/default.nix2
-rw-r--r--nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix6
-rwxr-xr-xnixpkgs/pkgs/development/tools/rust/rust-analyzer/update.sh1
-rw-r--r--nixpkgs/pkgs/development/tools/sentry-cli/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/skaffold/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/skopeo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/sslmate-agent/default.nix40
-rw-r--r--nixpkgs/pkgs/development/tools/stylua/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/symfony-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/toml2json/default.nix20
-rw-r--r--nixpkgs/pkgs/development/tools/udis86/default.nix24
-rw-r--r--nixpkgs/pkgs/development/tools/vagrant/gemset_libvirt.nix64
-rw-r--r--nixpkgs/pkgs/development/tools/wails/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/wp-cli/default.nix3
-rw-r--r--nixpkgs/pkgs/development/tools/wrangler/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/ws/default.nix13
-rw-r--r--nixpkgs/pkgs/development/tools/yarn/default.nix4
-rw-r--r--nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix12
-rw-r--r--nixpkgs/pkgs/development/tools/yq-go/default.nix6
-rw-r--r--nixpkgs/pkgs/development/tools/zld/default.nix24
-rw-r--r--nixpkgs/pkgs/development/web/cypress/default.nix4
-rw-r--r--nixpkgs/pkgs/development/web/flyctl/default.nix6
-rw-r--r--nixpkgs/pkgs/development/web/grails/default.nix4
-rw-r--r--nixpkgs/pkgs/development/web/insomnia/default.nix7
-rw-r--r--nixpkgs/pkgs/development/web/kore/default.nix4
-rw-r--r--nixpkgs/pkgs/development/web/nodejs/setup-hook.sh2
-rw-r--r--nixpkgs/pkgs/development/web/nodejs/v12.nix4
-rw-r--r--nixpkgs/pkgs/development/web/nodejs/v14.nix4
-rw-r--r--nixpkgs/pkgs/development/web/nodejs/v16.nix4
-rw-r--r--nixpkgs/pkgs/development/web/nodejs/v17.nix12
-rw-r--r--nixpkgs/pkgs/development/web/shopify-cli/Gemfile2
-rw-r--r--nixpkgs/pkgs/development/web/shopify-cli/Gemfile.lock39
-rw-r--r--nixpkgs/pkgs/development/web/shopify-cli/default.nix34
-rw-r--r--nixpkgs/pkgs/development/web/shopify-cli/gemset.nix149
-rw-r--r--nixpkgs/pkgs/games/airshipper/default.nix19
-rw-r--r--nixpkgs/pkgs/games/dwarf-fortress/themes/default.nix2
-rw-r--r--nixpkgs/pkgs/games/flightgear/default.nix6
-rw-r--r--nixpkgs/pkgs/games/gcompris/default.nix24
-rw-r--r--nixpkgs/pkgs/games/gnonograms/default.nix10
-rw-r--r--nixpkgs/pkgs/games/katago/default.nix6
-rw-r--r--nixpkgs/pkgs/games/lunar-client/default.nix8
-rw-r--r--nixpkgs/pkgs/games/openxcom/default.nix1
-rw-r--r--nixpkgs/pkgs/games/polymc/default.nix11
-rw-r--r--nixpkgs/pkgs/games/rare/default.nix64
-rw-r--r--nixpkgs/pkgs/games/spring/springlobby.nix1
-rw-r--r--nixpkgs/pkgs/games/steam/fhsenv.nix4
-rw-r--r--nixpkgs/pkgs/games/warzone2100/default.nix4
-rw-r--r--nixpkgs/pkgs/games/xtris/default.nix4
-rw-r--r--nixpkgs/pkgs/misc/autoadb/default.nix22
-rw-r--r--nixpkgs/pkgs/misc/cups/drivers/mfcl2750dw/default.nix93
-rw-r--r--nixpkgs/pkgs/misc/drivers/logiops/default.nix26
-rw-r--r--nixpkgs/pkgs/misc/dxvk/darwin-thread-primitives.patch186
-rw-r--r--nixpkgs/pkgs/misc/dxvk/default.nix43
-rw-r--r--nixpkgs/pkgs/misc/dxvk/dxvk.nix12
-rw-r--r--nixpkgs/pkgs/misc/logging/pacemaker/default.nix102
-rw-r--r--nixpkgs/pkgs/misc/screensavers/alock/default.nix9
-rw-r--r--nixpkgs/pkgs/misc/screensavers/xtrlock-pam/default.nix9
-rw-r--r--nixpkgs/pkgs/misc/sndio/default.nix4
-rw-r--r--nixpkgs/pkgs/misc/t-rec/default.nix6
-rw-r--r--nixpkgs/pkgs/os-specific/darwin/m-cli/default.nix1
-rw-r--r--nixpkgs/pkgs/os-specific/darwin/moltenvk/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/darwin/moltenvk/dxvk-moltenvk-compat.patch (renamed from nixpkgs/pkgs/misc/dxvk/darwin-moltenvk-compat.patch)0
-rw-r--r--nixpkgs/pkgs/os-specific/linux/audit/default.nix5
-rw-r--r--nixpkgs/pkgs/os-specific/linux/bluez/default.nix1
-rw-r--r--nixpkgs/pkgs/os-specific/linux/disk-indicator/default.nix9
-rw-r--r--nixpkgs/pkgs/os-specific/linux/displaylink/default.nix8
-rw-r--r--nixpkgs/pkgs/os-specific/linux/dmtcp/default.nix12
-rw-r--r--nixpkgs/pkgs/os-specific/linux/earlyoom/default.nix6
-rw-r--r--nixpkgs/pkgs/os-specific/linux/firmware/rt5677/default.nix10
-rw-r--r--nixpkgs/pkgs/os-specific/linux/hostapd/default.nix1
-rw-r--r--nixpkgs/pkgs/os-specific/linux/i7z/default.nix1
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/common-config.nix28
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-4.14.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-4.19.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-4.9.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-5.10.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-5.15.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-5.16.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-5.17.nix18
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-5.4.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-libre.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix6
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix6
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/linux-zen.nix7
-rw-r--r--nixpkgs/pkgs/os-specific/linux/kernel/manual-config.nix1
-rw-r--r--nixpkgs/pkgs/os-specific/linux/ldm/default.nix5
-rw-r--r--nixpkgs/pkgs/os-specific/linux/lightum/default.nix10
-rw-r--r--nixpkgs/pkgs/os-specific/linux/lttng-modules/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/lvm2/common.nix10
-rw-r--r--nixpkgs/pkgs/os-specific/linux/nix-ld/default.nix49
-rw-r--r--nixpkgs/pkgs/os-specific/linux/nixos-rebuild/default.nix14
-rwxr-xr-xnixpkgs/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh174
-rw-r--r--nixpkgs/pkgs/os-specific/linux/nvidia-x11/default.nix8
-rw-r--r--nixpkgs/pkgs/os-specific/linux/ocf-resource-agents/default.nix7
-rw-r--r--nixpkgs/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/pflask/default.nix18
-rw-r--r--nixpkgs/pkgs/os-specific/linux/projecteur/default.nix32
-rw-r--r--nixpkgs/pkgs/os-specific/linux/r8168/default.nix3
-rw-r--r--nixpkgs/pkgs/os-specific/linux/rtl8189es/default.nix1
-rw-r--r--nixpkgs/pkgs/os-specific/linux/rtl8192eu/default.nix6
-rw-r--r--nixpkgs/pkgs/os-specific/linux/rtl8814au/default.nix6
-rw-r--r--nixpkgs/pkgs/os-specific/linux/rtl8821au/default.nix6
-rw-r--r--nixpkgs/pkgs/os-specific/linux/rtl8821ce/default.nix14
-rw-r--r--nixpkgs/pkgs/os-specific/linux/rtl8821cu/default.nix8
-rw-r--r--nixpkgs/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/smem/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/tuigreet/default.nix2
-rw-r--r--nixpkgs/pkgs/os-specific/linux/udisks/2-default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/udisks/fix-paths.patch37
-rw-r--r--nixpkgs/pkgs/os-specific/linux/upower/default.nix10
-rw-r--r--nixpkgs/pkgs/os-specific/linux/usbguard/default.nix4
-rw-r--r--nixpkgs/pkgs/os-specific/linux/usermount/default.nix9
-rw-r--r--nixpkgs/pkgs/os-specific/linux/x86info/default.nix45
-rw-r--r--nixpkgs/pkgs/os-specific/linux/zfs/default.nix18
-rw-r--r--nixpkgs/pkgs/servers/amqp/qpid-cpp/default.nix2
-rw-r--r--nixpkgs/pkgs/servers/amqp/rabbitmq-server/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/atlassian/bamboo.nix37
-rw-r--r--nixpkgs/pkgs/servers/atlassian/jira.nix4
-rw-r--r--nixpkgs/pkgs/servers/brickd/default.nix24
-rw-r--r--nixpkgs/pkgs/servers/clickhouse/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/confluent-platform/default.nix25
-rw-r--r--nixpkgs/pkgs/servers/corosync/default.nix10
-rw-r--r--nixpkgs/pkgs/servers/dendrite/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/dict/wiktionary/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/dns/bind/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/dns/coredns/default.nix17
-rw-r--r--nixpkgs/pkgs/servers/dns/https-dns-proxy/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/dns/knot-resolver/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/dns/pdns-recursor/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/dns/pdns/default.nix59
-rw-r--r--nixpkgs/pkgs/servers/dns/pdns/version.patch13
-rw-r--r--nixpkgs/pkgs/servers/dns/powerdns/default.nix60
-rw-r--r--nixpkgs/pkgs/servers/headscale/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/component-packages.nix4
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/http/apache-httpd/2.4.nix10
-rw-r--r--nixpkgs/pkgs/servers/http/lwan/default.nix9
-rw-r--r--nixpkgs/pkgs/servers/icingaweb2/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/icingaweb2/ipl.nix4
-rw-r--r--nixpkgs/pkgs/servers/imgproxy/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/invidious/default.nix53
-rw-r--r--nixpkgs/pkgs/servers/invidious/lsquic.nix20
-rw-r--r--nixpkgs/pkgs/servers/invidious/shards.nix12
-rwxr-xr-xnixpkgs/pkgs/servers/invidious/update.sh96
-rw-r--r--nixpkgs/pkgs/servers/invidious/use-etc-ssl-certs.patch13
-rw-r--r--nixpkgs/pkgs/servers/invidious/versions.json18
-rw-r--r--nixpkgs/pkgs/servers/invidious/videojs.nix18
-rw-r--r--nixpkgs/pkgs/servers/invidious/videojs.sh9
-rw-r--r--nixpkgs/pkgs/servers/isso/default.nix11
-rw-r--r--nixpkgs/pkgs/servers/jackett/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/jackett/deps.nix8
-rw-r--r--nixpkgs/pkgs/servers/keycloak/all-plugins.nix7
-rw-r--r--nixpkgs/pkgs/servers/keycloak/default.nix14
-rw-r--r--nixpkgs/pkgs/servers/keycloak/keycloak-discord/default.nix29
-rw-r--r--nixpkgs/pkgs/servers/keycloak/keycloak-metrics-spi/default.nix26
-rw-r--r--nixpkgs/pkgs/servers/keycloak/scim-for-keycloak/default.nix36
-rw-r--r--nixpkgs/pkgs/servers/klipper/default.nix5
-rw-r--r--nixpkgs/pkgs/servers/libreddit/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/mapcache/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/mastodon/default.nix69
-rw-r--r--nixpkgs/pkgs/servers/mastodon/package.json197
-rw-r--r--nixpkgs/pkgs/servers/mastodon/resolutions.patch68
-rw-r--r--nixpkgs/pkgs/servers/mastodon/source.nix2
-rwxr-xr-xnixpkgs/pkgs/servers/mastodon/update.sh25
-rw-r--r--nixpkgs/pkgs/servers/mastodon/version.patch9
-rw-r--r--nixpkgs/pkgs/servers/mastodon/yarn.nix12637
-rw-r--r--nixpkgs/pkgs/servers/matrix-synapse/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix4
-rw-r--r--nixpkgs/pkgs/servers/matterbridge/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/mautrix-telegram/0002-Don-t-depend-on-pytest-runner.patch24
-rw-r--r--nixpkgs/pkgs/servers/mautrix-telegram/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/mautrix-whatsapp/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/memcached/default.nix1
-rw-r--r--nixpkgs/pkgs/servers/minio/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/misc/virtiofsd/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/mjolnir/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/mjolnir/node-deps.nix243
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/monitoring/munin/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/monitoring/nagios/plugins/check_ssl_cert.nix4
-rw-r--r--nixpkgs/pkgs/servers/monitoring/prometheus/alertmanager.nix6
-rw-r--r--nixpkgs/pkgs/servers/monitoring/prometheus/apcupsd-exporter.nix8
-rw-r--r--nixpkgs/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix6
-rw-r--r--nixpkgs/pkgs/servers/monitoring/prometheus/node-exporter.nix12
-rw-r--r--nixpkgs/pkgs/servers/monitoring/prometheus/node-exporter/node-exporter-darwin.patch17
-rw-r--r--nixpkgs/pkgs/servers/monitoring/prometheus/redis-exporter.nix4
-rw-r--r--nixpkgs/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix6
-rw-r--r--nixpkgs/pkgs/servers/monitoring/telegraf/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/moonraker/default.nix20
-rw-r--r--nixpkgs/pkgs/servers/mpd/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/nats-server/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/nats-streaming-server/default.nix14
-rw-r--r--nixpkgs/pkgs/servers/nextcloud/default.nix25
-rw-r--r--nixpkgs/pkgs/servers/nominatim/default.nix68
-rw-r--r--nixpkgs/pkgs/servers/openafs/1.8/module.nix2
-rw-r--r--nixpkgs/pkgs/servers/owncast/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/peertube/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/piping-server-rust/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/pleroma/default.nix31
-rw-r--r--nixpkgs/pkgs/servers/plex/raw.nix6
-rw-r--r--nixpkgs/pkgs/servers/pr-tracker/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/ps3netsrv/default.nix11
-rw-r--r--nixpkgs/pkgs/servers/rippled/data-api.nix14
-rw-r--r--nixpkgs/pkgs/servers/roon-bridge/default.nix9
-rw-r--r--nixpkgs/pkgs/servers/roon-server/default.nix12
-rw-r--r--nixpkgs/pkgs/servers/sabnzbd/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/scylladb/default.nix9
-rw-r--r--nixpkgs/pkgs/servers/sql/materialize/default.nix11
-rw-r--r--nixpkgs/pkgs/servers/sql/patroni/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/sql/postgresql/ext/pgroonga.nix4
-rw-r--r--nixpkgs/pkgs/servers/squid/default.nix14
-rw-r--r--nixpkgs/pkgs/servers/tailscale/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/teleport/0001-fix-add-nix-path-to-exec-env.patch28
-rw-r--r--nixpkgs/pkgs/servers/teleport/default.nix1
-rw-r--r--nixpkgs/pkgs/servers/traefik/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/u9fs/default.nix20
-rw-r--r--nixpkgs/pkgs/servers/unifi/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/varnish/default.nix15
-rw-r--r--nixpkgs/pkgs/servers/varnish/packages.nix6
-rw-r--r--nixpkgs/pkgs/servers/web-apps/morty/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/web-apps/wordpress/default.nix4
-rw-r--r--nixpkgs/pkgs/shells/elvish/default.nix6
-rw-r--r--nixpkgs/pkgs/shells/fish/default.nix10
-rw-r--r--nixpkgs/pkgs/shells/fish/plugins/forgit.nix6
-rw-r--r--nixpkgs/pkgs/shells/fish/plugins/hydro.nix8
-rw-r--r--nixpkgs/pkgs/shells/fish/tests-pcre2-update.patch7
-rw-r--r--nixpkgs/pkgs/shells/hilbish/default.nix4
-rw-r--r--nixpkgs/pkgs/shells/zsh/oh-my-zsh/default.nix6
-rw-r--r--nixpkgs/pkgs/stdenv/default.nix1
-rw-r--r--nixpkgs/pkgs/stdenv/generic/check-meta.nix1
-rw-r--r--nixpkgs/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix2
-rw-r--r--nixpkgs/pkgs/test/haskell/shellFor/default.nix11
-rw-r--r--nixpkgs/pkgs/test/mkOption/declare.nix53
-rw-r--r--nixpkgs/pkgs/test/mkOption/keep.nix11
-rw-r--r--nixpkgs/pkgs/test/mkOption/keep.ref57
-rw-r--r--nixpkgs/pkgs/test/mkOption/merge.nix15
-rw-r--r--nixpkgs/pkgs/test/mkOption/merge.ref20
-rwxr-xr-xnixpkgs/pkgs/test/mkOption/test.sh9
-rw-r--r--nixpkgs/pkgs/test/nixos-functions/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/X11/jumpapp/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/X11/xkeysnail/browser-emacs-bindings.py34
-rw-r--r--nixpkgs/pkgs/tools/admin/aliyun-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/aws-vault/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/admin/bash-my-aws/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/admin/berglas/default.nix33
-rw-r--r--nixpkgs/pkgs/tools/admin/eksctl/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/admin/exoscale-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/fits-cloudctl/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/lxd/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/pulumi/data.nix354
-rwxr-xr-xnixpkgs/pkgs/tools/admin/pulumi/update.sh2
-rw-r--r--nixpkgs/pkgs/tools/admin/salt/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/stripe-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/syft/default.nix21
-rw-r--r--nixpkgs/pkgs/tools/admin/trinsic-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/trivy/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/archivers/7zz/default.nix58
-rwxr-xr-xnixpkgs/pkgs/tools/archivers/7zz/update.sh50
-rw-r--r--nixpkgs/pkgs/tools/archivers/p7zip/default.nix35
-rwxr-xr-xnixpkgs/pkgs/tools/archivers/p7zip/update.sh47
-rw-r--r--nixpkgs/pkgs/tools/archivers/rar/default.nix24
-rw-r--r--nixpkgs/pkgs/tools/audio/essentia-extractor/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/audio/gvolicon/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/audio/opl3bankeditor/common.nix6
-rw-r--r--nixpkgs/pkgs/tools/audio/pa-applet/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/audio/tts/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/backup/autorestic/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/backup/bacula/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/backup/btrbk/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/backup/bupstash/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/backup/dar/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/bluetooth/blueberry/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/bluetooth/blueberry/gnome-bluetooth.nix96
-rw-r--r--nixpkgs/pkgs/tools/cd-dvd/vobsub2srt/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/compression/pxz/default.nix42
-rw-r--r--nixpkgs/pkgs/tools/compression/pxz/flush-stdout-help-version.patch32
-rw-r--r--nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/filesystems/dosfstools/default.nix15
-rw-r--r--nixpkgs/pkgs/tools/filesystems/eiciel/default.nix56
-rw-r--r--nixpkgs/pkgs/tools/filesystems/go-mtpfs/default.nix18
-rw-r--r--nixpkgs/pkgs/tools/filesystems/littlefs-fuse/default.nix26
-rw-r--r--nixpkgs/pkgs/tools/filesystems/squashfs/darwin.patch36
-rw-r--r--nixpkgs/pkgs/tools/filesystems/squashfs/default.nix25
-rw-r--r--nixpkgs/pkgs/tools/filesystems/xfsprogs/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/graphics/astc-encoder/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/graphics/sic-image-cli/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/graphics/wkhtmltopdf-bin/default.nix51
-rw-r--r--nixpkgs/pkgs/tools/misc/apkeep/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/azure-vhd-utils/default.nix15
-rw-r--r--nixpkgs/pkgs/tools/misc/bitbucket-cli/default.nix27
-rw-r--r--nixpkgs/pkgs/tools/misc/broadlink-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/calamares/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/chezmoi/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/diffoscope/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/misc/direnv/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/dsq/default.nix60
-rw-r--r--nixpkgs/pkgs/tools/misc/dua/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/esphome/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/esptool/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/fend/default.nix15
-rw-r--r--nixpkgs/pkgs/tools/misc/fwup/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/misc/gawp/default.nix16
-rw-r--r--nixpkgs/pkgs/tools/misc/goreleaser/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/gosu/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/misc/gotify-desktop/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/grub/trusted.nix46
-rw-r--r--nixpkgs/pkgs/tools/misc/gummy/default.nix66
-rw-r--r--nixpkgs/pkgs/tools/misc/hashit/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/i3cat/default.nix21
-rw-r--r--nixpkgs/pkgs/tools/misc/infracost/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/misc/license-generator/default.nix20
-rw-r--r--nixpkgs/pkgs/tools/misc/mc/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/mcfly/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/miniserve/default.nix20
-rw-r--r--nixpkgs/pkgs/tools/misc/mmctl/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/mmv/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/mpdscribble/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/nbench/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/misc/nix-direnv/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/onefetch/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/misc/opentelemetry-collector/contrib.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/opentelemetry-collector/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/ostree/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/pandoc-include/default.nix30
-rw-r--r--nixpkgs/pkgs/tools/misc/parallel/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/pg_flame/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/plantuml-server/default.nix63
-rw-r--r--nixpkgs/pkgs/tools/misc/remind/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/rockbox-utility/default.nix43
-rw-r--r--nixpkgs/pkgs/tools/misc/rpm-ostree/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/sam-ba/default.nix53
-rw-r--r--nixpkgs/pkgs/tools/misc/sdl-jstest/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/misc/smug/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/misc/starship/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/misc/steampipe/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/topgrade/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/ttchat/default.nix23
-rw-r--r--nixpkgs/pkgs/tools/misc/up/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/upower-notify/default.nix18
-rw-r--r--nixpkgs/pkgs/tools/misc/youtube-dl/default.nix17
-rw-r--r--nixpkgs/pkgs/tools/misc/ytmdl/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/zellij/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/aardvark-dns/default.nix16
-rw-r--r--nixpkgs/pkgs/tools/networking/amass/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/boundary/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/networking/brook/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/bud/default.nix38
-rw-r--r--nixpkgs/pkgs/tools/networking/carddav-util/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/networking/chrony/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/networking/clash/default.nix22
-rw-r--r--nixpkgs/pkgs/tools/networking/cloudflare-warp/default.nix48
-rw-r--r--nixpkgs/pkgs/tools/networking/corerad/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/networking/dnsproxy/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/drill/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/networking/frp/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/godns/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/hey/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/httpie/default.nix18
-rw-r--r--nixpkgs/pkgs/tools/networking/hurl/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/innernet/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/lychee/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/magic-wormhole-rs/Cargo.toml.patch67
-rw-r--r--nixpkgs/pkgs/tools/networking/magic-wormhole-rs/default.nix32
-rw-r--r--nixpkgs/pkgs/tools/networking/minio-client/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/mqttui/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/netavark/default.nix19
-rw-r--r--nixpkgs/pkgs/tools/networking/netproc/default.nix25
-rw-r--r--nixpkgs/pkgs/tools/networking/networkmanager/applet/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/networkmanager/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix19
-rw-r--r--nixpkgs/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch7
-rw-r--r--nixpkgs/pkgs/tools/networking/networkmanager/libnma/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/networkmanager/openconnect/default.nix28
-rw-r--r--nixpkgs/pkgs/tools/networking/networkmanager/openvpn/default.nix53
-rw-r--r--nixpkgs/pkgs/tools/networking/networkmanager/vpnc/default.nix58
-rw-r--r--nixpkgs/pkgs/tools/networking/obfs4/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/networking/openapi-generator-cli/unstable.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/openvpn/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/networking/pirate-get/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/s3gof3r/default.nix21
-rw-r--r--nixpkgs/pkgs/tools/networking/siege/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/networking/socat/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/networking/stunnel/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/tcpdump/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/networking/tinyssh/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/tuntox/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/networking/ua/default.nix23
-rw-r--r--nixpkgs/pkgs/tools/networking/waitron/default.nix13
-rw-r--r--nixpkgs/pkgs/tools/networking/xh/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/networking/xrootd/default.nix4
-rwxr-xr-xnixpkgs/pkgs/tools/nix/info/info.sh2
-rw-r--r--nixpkgs/pkgs/tools/nix/nix-output-monitor/default.nix179
-rw-r--r--nixpkgs/pkgs/tools/nix/nix-output-monitor/generated-package.nix147
-rwxr-xr-xnixpkgs/pkgs/tools/nix/nix-output-monitor/update.sh25
-rw-r--r--nixpkgs/pkgs/tools/package-management/cargo-about/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/package-management/micromamba/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/package-management/nfpm/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix/common.nix9
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix/nix-perl.nix5
-rw-r--r--nixpkgs/pkgs/tools/package-management/nixui/default.nix20
-rw-r--r--nixpkgs/pkgs/tools/package-management/nixui/node-packages.nix4
-rw-r--r--nixpkgs/pkgs/tools/package-management/nixui/pkg.json2
-rw-r--r--nixpkgs/pkgs/tools/security/amber/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/authoscope/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/cameradar/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/cariddi/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/cfripper/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/cryptomator/default.nix49
-rw-r--r--nixpkgs/pkgs/tools/security/exploitdb/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/feroxbuster/default.nix45
-rw-r--r--nixpkgs/pkgs/tools/security/ffuf/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/fulcio/default.nix52
-rw-r--r--nixpkgs/pkgs/tools/security/gitleaks/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/gopass/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/grype/default.nix21
-rw-r--r--nixpkgs/pkgs/tools/security/jadx/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/keybase/gui.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/keyscope/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/libtpms/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/melt/default.nix25
-rw-r--r--nixpkgs/pkgs/tools/security/metasploit/Gemfile2
-rw-r--r--nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock60
-rw-r--r--nixpkgs/pkgs/tools/security/metasploit/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/metasploit/gemset.nix78
-rw-r--r--nixpkgs/pkgs/tools/security/minio-certgen/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/nitrokey-app/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/security/nuclei/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/nwipe/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/onlykey/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/security/onlykey/node-packages.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/onlykey/package.json2
-rw-r--r--nixpkgs/pkgs/tools/security/sequoia/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/security/shisho/default.nix59
-rw-r--r--nixpkgs/pkgs/tools/security/sigma-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/spire/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/security/sshuttle/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/security/sshuttle/sudo.patch2
-rw-r--r--nixpkgs/pkgs/tools/security/step-ca/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/tboot/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/tor/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/security/tor/torsocks.nix3
-rw-r--r--nixpkgs/pkgs/tools/security/tpm-luks/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/security/vault/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/security/vault/update-bin.sh43
-rw-r--r--nixpkgs/pkgs/tools/security/vault/vault-bin.nix90
-rw-r--r--nixpkgs/pkgs/tools/security/volatility3/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/security/zdns/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/system/ctop/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/system/das_watchdog/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/system/evemu/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/system/gohai/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/system/goreman/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/system/hardlink/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/system/hostctl/default.nix23
-rw-r--r--nixpkgs/pkgs/tools/system/monit/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/mq-cli/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/system/nats-top/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/syslog-ng/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/thermald/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/codesearch/default.nix22
-rw-r--r--nixpkgs/pkgs/tools/text/difftastic/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/text/gnused/422.nix35
-rw-r--r--nixpkgs/pkgs/tools/text/gtranslator/default.nix21
-rw-r--r--nixpkgs/pkgs/tools/text/justify/default.nix33
-rw-r--r--nixpkgs/pkgs/tools/text/mdbook-pdf/default.nix28
-rw-r--r--nixpkgs/pkgs/tools/text/miller/default.nix25
-rw-r--r--nixpkgs/pkgs/tools/text/mmdoc/default.nix37
-rw-r--r--nixpkgs/pkgs/tools/text/snippetpixie/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/text/tab/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/text/ugrep/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/vale/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/typesetting/biblatex-check/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/typesetting/lowdown/default.nix42
-rw-r--r--nixpkgs/pkgs/tools/typesetting/lowdown/shared.patch42
-rw-r--r--nixpkgs/pkgs/tools/typesetting/odpdown/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix31
-rw-r--r--nixpkgs/pkgs/tools/video/vnc2flv/default.nix20
-rw-r--r--nixpkgs/pkgs/tools/virtualization/awsebcli/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/virtualization/linode-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/virtualization/shipyard/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/wayland/cliphist/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/wayland/swaykbdd/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/wayland/swayr/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/wayland/wl-color-picker/default.nix59
-rw-r--r--nixpkgs/pkgs/tools/wayland/ydotool/default.nix35
-rw-r--r--nixpkgs/pkgs/tools/wayland/ydotool/fixup-cmakelists.patch58
-rw-r--r--nixpkgs/pkgs/top-level/aliases.nix384
-rw-r--r--nixpkgs/pkgs/top-level/all-packages.nix431
-rw-r--r--nixpkgs/pkgs/top-level/java-packages.nix4
-rw-r--r--nixpkgs/pkgs/top-level/linux-kernels.nix12
-rw-r--r--nixpkgs/pkgs/top-level/ocaml-packages.nix18
-rw-r--r--nixpkgs/pkgs/top-level/perl-packages.nix23
-rw-r--r--nixpkgs/pkgs/top-level/python-aliases.nix2
-rw-r--r--nixpkgs/pkgs/top-level/python-packages.nix69
-rw-r--r--nixpkgs/pkgs/top-level/qt5-packages.nix5
-rw-r--r--nixpkgs/pkgs/top-level/stage.nix44
-rw-r--r--nixpkgs/pkgs/top-level/unixtools.nix1
-rw-r--r--overlays/patches/default.nix2
-rw-r--r--overlays/patches/linux/patches.nix11
-rw-r--r--sys/eve.nix1
2165 files changed, 50012 insertions, 44178 deletions
diff --git a/nixpkgs/.github/CODEOWNERS b/nixpkgs/.github/CODEOWNERS
index c4662b044aa7..9117a44b9fc2 100644
--- a/nixpkgs/.github/CODEOWNERS
+++ b/nixpkgs/.github/CODEOWNERS
@@ -77,6 +77,12 @@
 # NixOS integration test driver
 /nixos/lib/test-driver  @tfc
 
+# Systemd
+/nixos/modules/system/boot/systemd.nix      @NixOS/systemd
+/nixos/modules/system/boot/systemd          @NixOS/systemd
+/nixos/lib/systemd-*.nix                    @NixOS/systemd
+/pkgs/os-specific/linux/systemd             @NixOS/systemd
+
 # Updaters
 ## update.nix
 /maintainers/scripts/update.nix   @jtojnar
diff --git a/nixpkgs/.github/labeler.yml b/nixpkgs/.github/labeler.yml
index c5c10d3e4bc1..a48f60e77638 100644
--- a/nixpkgs/.github/labeler.yml
+++ b/nixpkgs/.github/labeler.yml
@@ -5,10 +5,6 @@
   - pkgs/development/libraries/agda/**/*
   - pkgs/top-level/agda-packages.nix
 
-"6.topic: bsd":
-  - pkgs/os-specific/bsd/**/*
-  - pkgs/stdenv/freebsd/**/*
-
 "6.topic: cinnamon":
   - pkgs/desktops/cinnamon/**/*
 
diff --git a/nixpkgs/.github/workflows/backport.yml b/nixpkgs/.github/workflows/backport.yml
index bcb164a04eef..4ee5adfaac1e 100644
--- a/nixpkgs/.github/workflows/backport.yml
+++ b/nixpkgs/.github/workflows/backport.yml
@@ -2,6 +2,12 @@ name: Backport
 on:
   pull_request_target:
     types: [closed, labeled]
+
+# WARNING:
+# When extending this action, be aware that $GITHUB_TOKEN allows write access to
+# the GitHub repository. This means that it should not evaluate user input in a
+# way that allows code injection.
+
 jobs:
   backport:
     name: Backport Pull Request
diff --git a/nixpkgs/.github/workflows/direct-push.yml b/nixpkgs/.github/workflows/direct-push.yml
index 459475c3c6bc..082a4806e619 100644
--- a/nixpkgs/.github/workflows/direct-push.yml
+++ b/nixpkgs/.github/workflows/direct-push.yml
@@ -22,7 +22,7 @@ jobs:
       if: steps.ismerge.outputs.ismerge != 'true'
     - name: Warn if the commit was a direct push
       if: steps.ismerge.outputs.ismerge != 'true'
-      uses: peter-evans/commit-comment@v1
+      uses: peter-evans/commit-comment@v2
       with:
         body: |
           @${{ github.actor }}, you pushed a commit directly to master/release branch
diff --git a/nixpkgs/.github/workflows/labels.yml b/nixpkgs/.github/workflows/labels.yml
index c464f8bf58a9..5f949ddc56b1 100644
--- a/nixpkgs/.github/workflows/labels.yml
+++ b/nixpkgs/.github/workflows/labels.yml
@@ -4,6 +4,11 @@ on:
   pull_request_target:
     types: [edited, opened, synchronize, reopened]
 
+# WARNING:
+# When extending this action, be aware that $GITHUB_TOKEN allows some write
+# access to the GitHub API. This means that it should not evaluate user input in
+# a way that allows code injection.
+
 permissions:
   contents: read
   pull-requests: write
diff --git a/nixpkgs/.github/workflows/pending-set.yml b/nixpkgs/.github/workflows/pending-set.yml
index 944d1deefb9f..b15e4847e67c 100644
--- a/nixpkgs/.github/workflows/pending-set.yml
+++ b/nixpkgs/.github/workflows/pending-set.yml
@@ -3,6 +3,11 @@ name: "set pending status"
 on:
   pull_request_target:
 
+# WARNING:
+# When extending this action, be aware that $GITHUB_TOKEN allows write access to
+# the GitHub repository. This means that it should not evaluate user input in a
+# way that allows code injection.
+
 jobs:
   action:
     runs-on: ubuntu-latest
diff --git a/nixpkgs/.github/workflows/periodic-merge-24h.yml b/nixpkgs/.github/workflows/periodic-merge-24h.yml
index 5ad0db1db51c..027c63aad9a2 100644
--- a/nixpkgs/.github/workflows/periodic-merge-24h.yml
+++ b/nixpkgs/.github/workflows/periodic-merge-24h.yml
@@ -49,7 +49,7 @@ jobs:
           github_token: ${{ secrets.GITHUB_TOKEN }}
 
       - name: Comment on failure
-        uses: peter-evans/create-or-update-comment@v1
+        uses: peter-evans/create-or-update-comment@v2
         if: ${{ failure() }}
         with:
           issue-number: 105153
diff --git a/nixpkgs/.github/workflows/periodic-merge-6h.yml b/nixpkgs/.github/workflows/periodic-merge-6h.yml
index a8af04b78bc2..5588d216ea03 100644
--- a/nixpkgs/.github/workflows/periodic-merge-6h.yml
+++ b/nixpkgs/.github/workflows/periodic-merge-6h.yml
@@ -43,7 +43,7 @@ jobs:
           github_token: ${{ secrets.GITHUB_TOKEN }}
 
       - name: Comment on failure
-        uses: peter-evans/create-or-update-comment@v1
+        uses: peter-evans/create-or-update-comment@v2
         if: ${{ failure() }}
         with:
           issue-number: 105153
diff --git a/nixpkgs/.github/workflows/update-terraform-providers.yml b/nixpkgs/.github/workflows/update-terraform-providers.yml
index 09d208a62160..0c775cb6e402 100644
--- a/nixpkgs/.github/workflows/update-terraform-providers.yml
+++ b/nixpkgs/.github/workflows/update-terraform-providers.yml
@@ -39,7 +39,7 @@ jobs:
           title: ${{ steps.setup.outputs.title }}
           token: ${{ secrets.GITHUB_TOKEN }}
       - name: comment on failure
-        uses: peter-evans/create-or-update-comment@v1
+        uses: peter-evans/create-or-update-comment@v2
         if: ${{ failure() }}
         with:
           issue-number: 153416
diff --git a/nixpkgs/doc/builders/fetchers.chapter.md b/nixpkgs/doc/builders/fetchers.chapter.md
index 28388ba685d8..d9f22b062827 100644
--- a/nixpkgs/doc/builders/fetchers.chapter.md
+++ b/nixpkgs/doc/builders/fetchers.chapter.md
@@ -72,6 +72,10 @@ Used with Mercurial. Expects `url`, `rev`, and `sha256`.
 
 A number of fetcher functions wrap part of `fetchurl` and `fetchzip`. They are mainly convenience functions intended for commonly used destinations of source code in Nixpkgs. These wrapper fetchers are listed below.
 
+## `fetchFromGitea` {#fetchfromgitea}
+
+`fetchFromGitea` expects five arguments. `domain` is the gitea server name. `owner` is a string corresponding to the Gitea user or organization that controls this repository. `repo` corresponds to the name of the software repository. These are located at the top of every Gitea HTML page as `owner`/`repo`. `rev` corresponds to the Git commit hash or tag (e.g `v1.0`) that will be downloaded from Git. Finally, `sha256` corresponds to the hash of the extracted directory. Again, other hash algorithms are also available but `sha256` is currently preferred.
+
 ## `fetchFromGitHub` {#fetchfromgithub}
 
 `fetchFromGitHub` expects four arguments. `owner` is a string corresponding to the GitHub user or organization that controls this repository. `repo` corresponds to the name of the software repository. These are located at the top of every GitHub HTML page as `owner`/`repo`. `rev` corresponds to the Git commit hash or tag (e.g `v1.0`) that will be downloaded from Git. Finally, `sha256` corresponds to the hash of the extracted directory. Again, other hash algorithms are also available but `sha256` is currently preferred.
diff --git a/nixpkgs/doc/contributing/coding-conventions.chapter.md b/nixpkgs/doc/contributing/coding-conventions.chapter.md
index cfe8582e514a..dac6d828ac0b 100644
--- a/nixpkgs/doc/contributing/coding-conventions.chapter.md
+++ b/nixpkgs/doc/contributing/coding-conventions.chapter.md
@@ -540,10 +540,11 @@ If you do need to do create this sort of patch file, one way to do so is with gi
 
 If a patch is available online but does not cleanly apply, it can be modified in some fixed ways by using additional optional arguments for `fetchpatch`:
 
+- `relative`: Similar to using `git-diff`'s `--relative` flag, only keep changes inside the specified directory, making paths relative to it.
 - `stripLen`: Remove the first `stripLen` components of pathnames in the patch.
 - `extraPrefix`: Prefix pathnames by this string.
-- `excludes`: Exclude files matching this pattern.
-- `includes`: Include only files matching this pattern.
+- `excludes`: Exclude files matching these patterns (applies after the above arguments).
+- `includes`: Include only files matching these patterns (applies after the above arguments).
 - `revert`: Revert the patch.
 
 Note that because the checksum is computed after applying these effects, using or modifying these arguments will have no effect unless the `sha256` argument is changed as well.
diff --git a/nixpkgs/doc/contributing/reviewing-contributions.chapter.md b/nixpkgs/doc/contributing/reviewing-contributions.chapter.md
index 0a90781d0c59..3417854730ef 100644
--- a/nixpkgs/doc/contributing/reviewing-contributions.chapter.md
+++ b/nixpkgs/doc/contributing/reviewing-contributions.chapter.md
@@ -122,10 +122,10 @@ Reviewing process:
   - [CODEOWNERS](https://help.github.com/articles/about-codeowners/) will make GitHub notify users based on the submitted changes, but it can happen that it misses some of the package maintainers.
 - Ensure that the module tests, if any, are succeeding.
 - Ensure that the introduced options are correct.
-  - Type should be appropriate (string related types differs in their merging capabilities, `optionSet` and `string` types are deprecated).
+  - Type should be appropriate (string related types differs in their merging capabilities, `loaOf` and `string` types are deprecated).
   - Description, default and example should be provided.
 - Ensure that option changes are backward compatible.
-  - `mkRenamedOptionModule` and `mkAliasOptionModule` functions provide way to make option changes backward compatible.
+  - `mkRenamedOptionModuleWith` provides a way to make option changes backward compatible.
 - Ensure that removed options are declared with `mkRemovedOptionModule`
 - Ensure that changes that are not backward compatible are mentioned in release notes.
 - Ensure that documentations affected by the change is updated.
@@ -157,7 +157,7 @@ Reviewing process:
 
 - Ensure that the module tests, if any, are succeeding.
 - Ensure that the introduced options are correct.
-  - Type should be appropriate (string related types differs in their merging capabilities, `optionSet` and `string` types are deprecated).
+  - Type should be appropriate (string related types differs in their merging capabilities, `loaOf` and `string` types are deprecated).
   - Description, default and example should be provided.
 - Ensure that module `meta` field is present
   - Maintainers should be declared in `meta.maintainers`.
diff --git a/nixpkgs/doc/languages-frameworks/javascript.section.md b/nixpkgs/doc/languages-frameworks/javascript.section.md
index bf5742d6855e..817317804923 100644
--- a/nixpkgs/doc/languages-frameworks/javascript.section.md
+++ b/nixpkgs/doc/languages-frameworks/javascript.section.md
@@ -85,7 +85,7 @@ you will still need to commit the modified version of the lock files, but at lea
 
 each tool has an abstraction to just build the node_modules (dependencies) directory. you can always use the stdenv.mkDerivation with the node_modules to build the package (symlink the node_modules directory and then use the package build command). the node_modules abstraction can be also used to build some web framework frontends. For an example of this see how [plausible](https://github.com/NixOS/nixpkgs/blob/master/pkgs/servers/web-apps/plausible/default.nix) is built. mkYarnModules to make the derivation containing node_modules. Then when building the frontend you can just symlink the node_modules directory
 
-## javascript packages inside nixpkgs {#javascript-packages-nixpkgs}
+## Javascript packages inside nixpkgs {#javascript-packages-nixpkgs}
 
 The `pkgs/development/node-packages` folder contains a generated collection of
 [NPM packages](https://npmjs.com/) that can be installed with the Nix package
@@ -121,12 +121,14 @@ requires `node-gyp-build`, so [we override](https://github.com/NixOS/nixpkgs/blo
     };
 ```
 
+### Adding and Updating Javascript packages in nixpkgs
+
 To add a package from NPM to nixpkgs:
 
 1. Modify `pkgs/development/node-packages/node-packages.json` to add, update
     or remove package entries to have it included in `nodePackages` and
     `nodePackages_latest`.
-2. Run the script: `cd pkgs/development/node-packages && ./generate.sh`.
+2. Run the script: `./pkgs/development/node-packages/generate.sh`.
 3. Build your new package to test your changes:
     `cd /path/to/nixpkgs && nix-build -A nodePackages.<new-or-updated-package>`.
     To build against the latest stable Current Node.js version (e.g. 14.x):
@@ -137,6 +139,26 @@ For more information about the generation process, consult the
 [README.md](https://github.com/svanderburg/node2nix) file of the `node2nix`
 tool.
 
+To update NPM packages in nixpkgs, run the same `generate.sh` script:
+
+```sh
+./pkgs/development/node-packages/generate.sh
+```
+
+#### Git protocol error
+
+Some packages may have Git dependencies from GitHub specified with `git://`.
+GitHub has
+[disabled unecrypted Git connections](https://github.blog/2021-09-01-improving-git-protocol-security-github/#no-more-unauthenticated-git),
+so you may see the following error when running the generate script:
+`The unauthenticated git protocol on port 9418 is no longer supported`.
+
+Use the following Git configuration to resolve the issue:
+
+```sh
+git config --global url."https://github.com/".insteadOf git://github.com/
+```
+
 ## Tool specific instructions {#javascript-tool-specific}
 
 ### node2nix {#javascript-node2nix}
diff --git a/nixpkgs/doc/languages-frameworks/ocaml.section.md b/nixpkgs/doc/languages-frameworks/ocaml.section.md
index e4813d7dd2d4..c6e40eaa20d0 100644
--- a/nixpkgs/doc/languages-frameworks/ocaml.section.md
+++ b/nixpkgs/doc/languages-frameworks/ocaml.section.md
@@ -38,8 +38,12 @@ Here is a simple package example.
 
 - It uses the `fetchFromGitHub` fetcher to get its source.
 
-- `useDune2 = true` ensures that Dune version 2 is used for the
-  build (this is the default; set to `false` to use Dune version 1).
+- `duneVersion = "2"` ensures that Dune version 2 is used for the
+  build (this is the default; valid values are `"1"`, `"2"`, and `"3"`);
+  note that there is also a legacy `useDune2` boolean attribute:
+  set to `false` it corresponds to `duneVersion = "1"`; set to `true` it
+  corresponds to `duneVersion = "2"`. If both arguments (`duneVersion` and
+  `useDune2`) are given, the second one (`useDune2`) is silently ignored.
 
 - It sets the optional `doCheck` attribute such that tests will be run with
   `dune runtest -p angstrom` after the build (`dune build -p angstrom`) is
@@ -67,7 +71,7 @@ Here is a simple package example.
 buildDunePackage rec {
   pname = "angstrom";
   version = "0.15.0";
-  useDune2 = true;
+  duneVersion = "2";
 
   minimalOCamlVersion = "4.04";
 
diff --git a/nixpkgs/doc/languages-frameworks/texlive.section.md b/nixpkgs/doc/languages-frameworks/texlive.section.md
index 6b505cefcc95..060f5c647c29 100644
--- a/nixpkgs/doc/languages-frameworks/texlive.section.md
+++ b/nixpkgs/doc/languages-frameworks/texlive.section.md
@@ -6,7 +6,7 @@ Since release 15.09 there is a new TeX Live packaging that lives entirely under
 
 - For basic usage just pull `texlive.combined.scheme-basic` for an environment with basic LaTeX support.
 
-- It typically won't work to use separately installed packages together. Instead, you can build a custom set of packages like this:
+- It typically won't work to use separately installed packages together. Instead, you can build a custom set of packages like this. Most CTAN packages should be available:
 
   ```nix
   texlive.combine {
diff --git a/nixpkgs/doc/languages-frameworks/vim.section.md b/nixpkgs/doc/languages-frameworks/vim.section.md
index a615d585b151..563fdf45a861 100644
--- a/nixpkgs/doc/languages-frameworks/vim.section.md
+++ b/nixpkgs/doc/languages-frameworks/vim.section.md
@@ -18,7 +18,7 @@ Adding custom .vimrc lines can be done using the following code:
 
 ```nix
 vim_configurable.customize {
-  # `name` specifies the name of the executable and package
+  # `name` optionally specifies the name of the executable and package
   name = "vim-with-plugins";
 
   vimrcConfig.customRC = ''
@@ -28,6 +28,9 @@ vim_configurable.customize {
 ```
 
 This configuration is used when Vim is invoked with the command specified as name, in this case `vim-with-plugins`.
+You can also omit `name` to customize Vim itself. See the
+[definition of `vimUtils.makeCustomizable`](https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/editors/vim/plugins/vim-utils.nix#L408)
+for all supported options.
 
 For Neovim the `configure` argument can be overridden to achieve the same:
 
@@ -286,7 +289,7 @@ Sample output1:
 "reload" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
   name = "reload";
   src = fetchgit {
-    url = "git://github.com/xolox/vim-reload";
+    url = "https://github.com/xolox/vim-reload";
     rev = "0a601a668727f5b675cb1ddc19f6861f3f7ab9e1";
     sha256 = "0vb832l9yxj919f5hfg6qj6bn9ni57gnjd3bj7zpq7d4iv2s4wdh";
   };
diff --git a/nixpkgs/lib/attrsets.nix b/nixpkgs/lib/attrsets.nix
index c0d3ede73d0e..516fdd8d33fd 100644
--- a/nixpkgs/lib/attrsets.nix
+++ b/nixpkgs/lib/attrsets.nix
@@ -4,8 +4,8 @@
 let
   inherit (builtins) head tail length;
   inherit (lib.trivial) id;
-  inherit (lib.strings) concatStringsSep sanitizeDerivationName;
-  inherit (lib.lists) foldr foldl' concatMap concatLists elemAt all;
+  inherit (lib.strings) concatStringsSep concatMapStringsSep escapeNixIdentifier sanitizeDerivationName;
+  inherit (lib.lists) foldr foldl' concatMap concatLists elemAt all partition groupBy take foldl;
 in
 
 rec {
@@ -78,6 +78,103 @@ rec {
     in attrByPath attrPath (abort errorMsg);
 
 
+  /* Update or set specific paths of an attribute set.
+
+     Takes a list of updates to apply and an attribute set to apply them to,
+     and returns the attribute set with the updates applied. Updates are
+     represented as { path = ...; update = ...; } values, where `path` is a
+     list of strings representing the attribute path that should be updated,
+     and `update` is a function that takes the old value at that attribute path
+     as an argument and returns the new
+     value it should be.
+
+     Properties:
+     - Updates to deeper attribute paths are applied before updates to more
+       shallow attribute paths
+     - Multiple updates to the same attribute path are applied in the order
+       they appear in the update list
+     - If any but the last `path` element leads into a value that is not an
+       attribute set, an error is thrown
+     - If there is an update for an attribute path that doesn't exist,
+       accessing the argument in the update function causes an error, but
+       intermediate attribute sets are implicitly created as needed
+
+     Example:
+       updateManyAttrsByPath [
+         {
+           path = [ "a" "b" ];
+           update = old: { d = old.c; };
+         }
+         {
+           path = [ "a" "b" "c" ];
+           update = old: old + 1;
+         }
+         {
+           path = [ "x" "y" ];
+           update = old: "xy";
+         }
+       ] { a.b.c = 0; }
+       => { a = { b = { d = 1; }; }; x = { y = "xy"; }; }
+  */
+  updateManyAttrsByPath = let
+    # When recursing into attributes, instead of updating the `path` of each
+    # update using `tail`, which needs to allocate an entirely new list,
+    # we just pass a prefix length to use and make sure to only look at the
+    # path without the prefix length, so that we can reuse the original list
+    # entries.
+    go = prefixLength: hasValue: value: updates:
+      let
+        # Splits updates into ones on this level (split.right)
+        # And ones on levels further down (split.wrong)
+        split = partition (el: length el.path == prefixLength) updates;
+
+        # Groups updates on further down levels into the attributes they modify
+        nested = groupBy (el: elemAt el.path prefixLength) split.wrong;
+
+        # Applies only nested modification to the input value
+        withNestedMods =
+          # Return the value directly if we don't have any nested modifications
+          if split.wrong == [] then
+            if hasValue then value
+            else
+              # Throw an error if there is no value. This `head` call here is
+              # safe, but only in this branch since `go` could only be called
+              # with `hasValue == false` for nested updates, in which case
+              # it's also always called with at least one update
+              let updatePath = (head split.right).path; in
+              throw
+              ( "updateManyAttrsByPath: Path '${showAttrPath updatePath}' does "
+              + "not exist in the given value, but the first update to this "
+              + "path tries to access the existing value.")
+          else
+            # If there are nested modifications, try to apply them to the value
+            if ! hasValue then
+              # But if we don't have a value, just use an empty attribute set
+              # as the value, but simplify the code a bit
+              mapAttrs (name: go (prefixLength + 1) false null) nested
+            else if isAttrs value then
+              # If we do have a value and it's an attribute set, override it
+              # with the nested modifications
+              value //
+              mapAttrs (name: go (prefixLength + 1) (value ? ${name}) value.${name}) nested
+            else
+              # However if it's not an attribute set, we can't apply the nested
+              # modifications, throw an error
+              let updatePath = (head split.wrong).path; in
+              throw
+              ( "updateManyAttrsByPath: Path '${showAttrPath updatePath}' needs to "
+              + "be updated, but path '${showAttrPath (take prefixLength updatePath)}' "
+              + "of the given value is not an attribute set, so we can't "
+              + "update an attribute inside of it.");
+
+        # We get the final result by applying all the updates on this level
+        # after having applied all the nested updates
+        # We use foldl instead of foldl' so that in case of multiple updates,
+        # intermediate values aren't evaluated if not needed
+      in foldl (acc: el: el.update acc) withNestedMods split.right;
+
+  in updates: value: go 0 true value updates;
+
   /* Return the specified attributes from a set.
 
      Example:
@@ -477,6 +574,20 @@ rec {
   overrideExisting = old: new:
     mapAttrs (name: value: new.${name} or value) old;
 
+  /* Turns a list of strings into a human-readable description of those
+    strings represented as an attribute path. The result of this function is
+    not intended to be machine-readable.
+
+    Example:
+      showAttrPath [ "foo" "10" "bar" ]
+      => "foo.\"10\".bar"
+      showAttrPath []
+      => "<root attribute path>"
+  */
+  showAttrPath = path:
+    if path == [] then "<root attribute path>"
+    else concatMapStringsSep "." escapeNixIdentifier path;
+
   /* Get a package output.
      If no output is found, fallback to `.out` and then to the default.
 
diff --git a/nixpkgs/lib/default.nix b/nixpkgs/lib/default.nix
index 3fead03a4636..1f06283790a8 100644
--- a/nixpkgs/lib/default.nix
+++ b/nixpkgs/lib/default.nix
@@ -66,9 +66,10 @@ let
       stringLength sub substring tail trace;
     inherit (self.trivial) id const pipe concat or and bitAnd bitOr bitXor
       bitNot boolToString mergeAttrs flip mapNullable inNixShell isFloat min max
-      importJSON importTOML warn warnIf throwIfNot checkListOfEnum
-      info showWarnings nixpkgsVersion version
-      mod compare splitByAndCompare functionArgs setFunctionArgs isFunction
+      importJSON importTOML warn warnIf warnIfNot throwIf throwIfNot checkListOfEnum
+      info showWarnings nixpkgsVersion version isInOldestRelease
+      mod compare splitByAndCompare
+      functionArgs setFunctionArgs isFunction toFunction
       toHexString toBaseDigits;
     inherit (self.fixedPoints) fix fix' converge extends composeExtensions
       composeManyExtensions makeExtensible makeExtensibleWithCustomName;
@@ -78,9 +79,10 @@ let
       mapAttrs' mapAttrsToList mapAttrsRecursive mapAttrsRecursiveCond
       genAttrs isDerivation toDerivation optionalAttrs
       zipAttrsWithNames zipAttrsWith zipAttrs recursiveUpdateUntil
-      recursiveUpdate matchAttrs overrideExisting getOutput getBin
+      recursiveUpdate matchAttrs overrideExisting showAttrPath getOutput getBin
       getLib getDev getMan chooseDevOutputs zipWithNames zip
-      recurseIntoAttrs dontRecurseIntoAttrs cartesianProductOfSets;
+      recurseIntoAttrs dontRecurseIntoAttrs cartesianProductOfSets
+      updateManyAttrsByPath;
     inherit (self.lists) singleton forEach foldr fold foldl foldl' imap0 imap1
       concatMap flatten remove findSingle findFirst any all count
       optional optionals toList range partition zipListsWith zipLists
@@ -112,14 +114,15 @@ let
       commitIdFromGitRepo cleanSourceWith pathHasContext
       canCleanSource pathIsRegularFile pathIsGitRepo;
     inherit (self.modules) evalModules setDefaultModuleLocation
-      unifyModuleSyntax applyIfFunction mergeModules
+      unifyModuleSyntax applyModuleArgsIfFunction mergeModules
       mergeModules' mergeOptionDecls evalOptionValue mergeDefinitions
       pushDownProperties dischargeProperties filterOverrides
       sortProperties fixupOptionType mkIf mkAssert mkMerge mkOverride
       mkOptionDefault mkDefault mkImageMediaOverride mkForce mkVMOverride
       mkFixStrictness mkOrder mkBefore mkAfter mkAliasDefinitions
       mkAliasAndWrapDefinitions fixMergeModules mkRemovedOptionModule
-      mkRenamedOptionModule mkMergedOptionModule mkChangedOptionModule
+      mkRenamedOptionModule mkRenamedOptionModuleWith
+      mkMergedOptionModule mkChangedOptionModule
       mkAliasOptionModule mkDerivedConfig doRename;
     inherit (self.options) isOption mkEnableOption mkSinkUndeclaredOptions
       mergeDefaultOption mergeOneOption mergeEqualOption mergeUniqueOption
diff --git a/nixpkgs/lib/licenses.nix b/nixpkgs/lib/licenses.nix
index b9310ef6c5b8..2928d11d8b22 100644
--- a/nixpkgs/lib/licenses.nix
+++ b/nixpkgs/lib/licenses.nix
@@ -389,6 +389,11 @@ in mkLicense lset) ({
     free = false;
   };
 
+  generaluser = {
+    fullName = "GeneralUser GS License v2.0";
+    url = "http://www.schristiancollins.com/generaluser.php"; # license included in sources
+  };
+
   gpl1Only = {
     spdxId = "GPL-1.0-only";
     fullName = "GNU General Public License v1.0 only";
@@ -607,6 +612,11 @@ in mkLicense lset) ({
     fullName = "Enlightenment License (e16)";
   };
 
+  mit0 = {
+    spdxId = "MIT-0";
+    fullName = "MIT No Attribution";
+  };
+
   mpl10 = {
     spdxId = "MPL-1.0";
     fullName = "Mozilla Public License 1.0";
diff --git a/nixpkgs/lib/lists.nix b/nixpkgs/lib/lists.nix
index 1dbff7668d75..a030280c8dcc 100644
--- a/nixpkgs/lib/lists.nix
+++ b/nixpkgs/lib/lists.nix
@@ -4,6 +4,7 @@
 let
   inherit (lib.strings) toInt;
   inherit (lib.trivial) compare min;
+  inherit (lib.attrsets) mapAttrs;
 in
 rec {
 
@@ -340,15 +341,15 @@ rec {
        groupBy' builtins.add 0 (x: boolToString (x > 2)) [ 5 1 2 3 4 ]
        => { true = 12; false = 3; }
   */
-  groupBy' = op: nul: pred: lst:
-    foldl' (r: e:
-              let
-                key = pred e;
-              in
-                r // { ${key} = op (r.${key} or nul) e; }
-           ) {} lst;
+  groupBy' = op: nul: pred: lst: mapAttrs (name: foldl op nul) (groupBy pred lst);
 
-  groupBy = groupBy' (sum: e: sum ++ [e]) [];
+  groupBy = builtins.groupBy or (
+    pred: foldl' (r: e:
+       let
+         key = pred e;
+       in
+         r // { ${key} = (r.${key} or []) ++ [e]; }
+    ) {});
 
   /* Merges two lists of the same size together. If the sizes aren't the same
      the merging stops at the shortest. How both lists are merged is defined
diff --git a/nixpkgs/lib/modules.nix b/nixpkgs/lib/modules.nix
index 4c4d9f994dae..894104cc5790 100644
--- a/nixpkgs/lib/modules.nix
+++ b/nixpkgs/lib/modules.nix
@@ -9,7 +9,7 @@ let
     catAttrs
     concatLists
     concatMap
-    count
+    concatStringsSep
     elem
     filter
     findFirst
@@ -47,6 +47,20 @@ let
     showOption
     unknownModule
     ;
+
+  showDeclPrefix = loc: decl: prefix:
+    " - option(s) with prefix `${showOption (loc ++ [prefix])}' in module `${decl._file}'";
+  showRawDecls = loc: decls:
+    concatStringsSep "\n"
+      (sort (a: b: a < b)
+        (concatMap
+          (decl: map
+            (showDeclPrefix loc decl)
+            (attrNames decl.options)
+          )
+          decls
+      ));
+
 in
 
 rec {
@@ -268,11 +282,11 @@ rec {
       # Like unifyModuleSyntax, but also imports paths and calls functions if necessary
       loadModule = args: fallbackFile: fallbackKey: m:
         if isFunction m || isAttrs m then
-          unifyModuleSyntax fallbackFile fallbackKey (applyIfFunction fallbackKey m args)
+          unifyModuleSyntax fallbackFile fallbackKey (applyModuleArgsIfFunction fallbackKey m args)
         else if isList m then
           let defs = [{ file = fallbackFile; value = m; }]; in
           throw "Module imports can't be nested lists. Perhaps you meant to remove one level of lists? Definitions: ${showDefs defs}"
-        else unifyModuleSyntax (toString m) (toString m) (applyIfFunction (toString m) (import m) args);
+        else unifyModuleSyntax (toString m) (toString m) (applyModuleArgsIfFunction (toString m) (import m) args);
 
       /*
       Collects all modules recursively into the form
@@ -369,7 +383,7 @@ rec {
         config = addFreeformType (addMeta (removeAttrs m ["_file" "key" "disabledModules" "require" "imports" "freeformType"]));
       };
 
-  applyIfFunction = key: f: args@{ config, options, lib, ... }: if isFunction f then
+  applyModuleArgsIfFunction = key: f: args@{ config, options, lib, ... }: if isFunction f then
     let
       # Module arguments are resolved in a strict manner when attribute set
       # deconstruction is used.  As the arguments are now defined with the
@@ -474,26 +488,61 @@ rec {
           [{ inherit (module) file; inherit value; }]
         ) configs;
 
+      # Convert an option tree decl to a submodule option decl
+      optionTreeToOption = decl:
+        if isOption decl.options
+        then decl
+        else decl // {
+            options = mkOption {
+              type = types.submoduleWith {
+                modules = [ { options = decl.options; } ];
+                # `null` is not intended for use by modules. It is an internal
+                # value that means "whatever the user has declared elsewhere".
+                # This might become obsolete with https://github.com/NixOS/nixpkgs/issues/162398
+                shorthandOnlyDefinesConfig = null;
+              };
+            };
+          };
+
       resultsByName = mapAttrs (name: decls:
         # We're descending into attribute ‘name’.
         let
           loc = prefix ++ [name];
           defns = defnsByName.${name} or [];
           defns' = defnsByName'.${name} or [];
-          nrOptions = count (m: isOption m.options) decls;
+          optionDecls = filter (m: isOption m.options) decls;
         in
-          if nrOptions == length decls then
+          if length optionDecls == length decls then
             let opt = fixupOptionType loc (mergeOptionDecls loc decls);
             in {
               matchedOptions = evalOptionValue loc opt defns';
               unmatchedDefns = [];
             }
-          else if nrOptions != 0 then
-            let
-              firstOption = findFirst (m: isOption m.options) "" decls;
-              firstNonOption = findFirst (m: !isOption m.options) "" decls;
-            in
-              throw "The option `${showOption loc}' in `${firstOption._file}' is a prefix of options in `${firstNonOption._file}'."
+          else if optionDecls != [] then
+              if all (x: x.options.type.name == "submodule") optionDecls
+              # Raw options can only be merged into submodules. Merging into
+              # attrsets might be nice, but ambiguous. Suppose we have
+              # attrset as a `attrsOf submodule`. User declares option
+              # attrset.foo.bar, this could mean:
+              #  a. option `bar` is only available in `attrset.foo`
+              #  b. option `foo.bar` is available in all `attrset.*`
+              #  c. reject and require "<name>" as a reminder that it behaves like (b).
+              #  d. magically combine (a) and (c).
+              # All of the above are merely syntax sugar though.
+              then
+                let opt = fixupOptionType loc (mergeOptionDecls loc (map optionTreeToOption decls));
+                in {
+                  matchedOptions = evalOptionValue loc opt defns';
+                  unmatchedDefns = [];
+                }
+              else
+                let
+                  firstNonOption = findFirst (m: !isOption m.options) "" decls;
+                  nonOptions = filter (m: !isOption m.options) decls;
+                in
+                throw "The option `${showOption loc}' in module `${(lib.head optionDecls)._file}' would be a parent of the following options, but its type `${(lib.head optionDecls).options.type.description or "<no description>"}' does not support nested options.\n${
+                  showRawDecls loc nonOptions
+                }"
           else
             mergeModules' loc decls defns) declsByName;
 
@@ -560,17 +609,9 @@ rec {
         throw "The option `${showOption loc}' in `${opt._file}' is already declared in ${showFiles res.declarations}."
       else
         let
-          /* Add the modules of the current option to the list of modules
-             already collected.  The options attribute except either a list of
-             submodules or a submodule. For each submodule, we add the file of the
-             current option declaration as the file use for the submodule.  If the
-             submodule defines any filename, then we ignore the enclosing option file. */
-          options' = toList opt.options.options;
-
           getSubModules = opt.options.type.getSubModules or null;
           submodules =
             if getSubModules != null then map (setDefaultModuleLocation opt._file) getSubModules ++ res.options
-            else if opt.options ? options then map (coerceOption opt._file) options' ++ res.options
             else res.options;
         in opt.options // res //
           { declarations = res.declarations ++ [opt._file];
@@ -753,26 +794,13 @@ rec {
       compare = a: b: (a.priority or 1000) < (b.priority or 1000);
     in sort compare defs';
 
-  /* Hack for backward compatibility: convert options of type
-     optionSet to options of type submodule.  FIXME: remove
-     eventually. */
+  # This calls substSubModules, whose entire purpose is only to ensure that
+  # option declarations in submodules have accurate position information.
+  # TODO: Merge this into mergeOptionDecls
   fixupOptionType = loc: opt:
-    let
-      options = opt.options or
-        (throw "Option `${showOption loc}' has type optionSet but has no option attribute, in ${showFiles opt.declarations}.");
-      f = tp:
-        if tp.name == "option set" || tp.name == "submodule" then
-          throw "The option ${showOption loc} uses submodules without a wrapping type, in ${showFiles opt.declarations}."
-        else if (tp.functor.wrapped.name or null) == "optionSet" then
-          if tp.name == "attrsOf" then types.attrsOf (types.submodule options)
-          else if tp.name == "listOf" then types.listOf  (types.submodule options)
-          else if tp.name == "nullOr" then types.nullOr  (types.submodule options)
-          else tp
-        else tp;
-    in
-      if opt.type.getSubModules or null == null
-      then opt // { type = f (opt.type or types.unspecified); }
-      else opt // { type = opt.type.substSubModules opt.options; options = []; };
+    if opt.type.getSubModules or null == null
+    then opt // { type = opt.type or types.unspecified; }
+    else opt // { type = opt.type.substSubModules opt.options; options = []; };
 
 
   /* Properties. */
@@ -904,6 +932,26 @@ rec {
     use = builtins.trace "Obsolete option `${showOption from}' is used. It was renamed to `${showOption to}'.";
   };
 
+  mkRenamedOptionModuleWith = {
+    /* Old option path as list of strings. */
+    from,
+    /* New option path as list of strings. */
+    to,
+
+    /*
+      Release number of the first release that contains the rename, ignoring backports.
+      Set it to the upcoming release, matching the nixpkgs/.version file.
+    */
+    sinceRelease,
+
+  }: doRename {
+    inherit from to;
+    visible = false;
+    warn = lib.isInOldestRelease sinceRelease;
+    use = lib.warnIf (lib.isInOldestRelease sinceRelease)
+      "Obsolete option `${showOption from}' is used. It was renamed to `${showOption to}'.";
+  };
+
   /* Return a module that causes a warning to be shown if any of the "from"
      option is defined; the defined values can be used in the "mergeFn" to set
      the "to" value.
diff --git a/nixpkgs/lib/options.nix b/nixpkgs/lib/options.nix
index 627aac24d2fb..8d0801775c46 100644
--- a/nixpkgs/lib/options.nix
+++ b/nixpkgs/lib/options.nix
@@ -79,8 +79,6 @@ rec {
     visible ? null,
     # Whether the option can be set only once
     readOnly ? null,
-    # Deprecated, used by types.optionSet.
-    options ? null
     } @ attrs:
     attrs // { _type = "option"; };
 
@@ -231,7 +229,7 @@ rec {
             then true
             else opt.visible or true;
           readOnly = opt.readOnly or false;
-          type = opt.type.description or null;
+          type = opt.type.description or "unspecified";
         }
         // optionalAttrs (opt ? example) { example = scrubOptionValue opt.example; }
         // optionalAttrs (opt ? default) { default = scrubOptionValue opt.default; }
diff --git a/nixpkgs/lib/systems/default.nix b/nixpkgs/lib/systems/default.nix
index 529eeb6514b9..7ddd5b8a5812 100644
--- a/nixpkgs/lib/systems/default.nix
+++ b/nixpkgs/lib/systems/default.nix
@@ -105,7 +105,8 @@ rec {
         else if final.isAarch64 then "arm64"
         else if final.isx86_32 then "i386"
         else if final.isx86_64 then "x86_64"
-        else if final.isMips then "mips"
+        else if final.isMips32 then "mips"
+        else if final.isMips64 then "mips"    # linux kernel does not distinguish mips32/mips64
         else if final.isPower then "powerpc"
         else if final.isRiscV then "riscv"
         else if final.isS390 then "s390"
diff --git a/nixpkgs/lib/systems/doubles.nix b/nixpkgs/lib/systems/doubles.nix
index 00e57339a310..27cdaf6a7233 100644
--- a/nixpkgs/lib/systems/doubles.nix
+++ b/nixpkgs/lib/systems/doubles.nix
@@ -26,7 +26,7 @@ let
 
     # Linux
     "aarch64-linux" "armv5tel-linux" "armv6l-linux" "armv7a-linux"
-    "armv7l-linux" "i686-linux" "m68k-linux" "mipsel-linux"
+    "armv7l-linux" "i686-linux" "m68k-linux" "mipsel-linux" "mips64el-linux"
     "powerpc64-linux" "powerpc64le-linux" "riscv32-linux"
     "riscv64-linux" "s390-linux" "s390x-linux" "x86_64-linux"
 
@@ -87,7 +87,11 @@ in {
   darwin        = filterDoubles predicates.isDarwin;
   freebsd       = filterDoubles predicates.isFreeBSD;
   # Should be better, but MinGW is unclear.
-  gnu           = filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnu; }) ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnueabi; }) ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnueabihf; });
+  gnu           = filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnu; })
+                  ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnueabi; })
+                  ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnueabihf; })
+                  ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnuabin32; })
+                  ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnuabi64; });
   illumos       = filterDoubles predicates.isSunOS;
   linux         = filterDoubles predicates.isLinux;
   netbsd        = filterDoubles predicates.isNetBSD;
diff --git a/nixpkgs/lib/systems/examples.nix b/nixpkgs/lib/systems/examples.nix
index 9c0c91617e8a..997a7a8c273a 100644
--- a/nixpkgs/lib/systems/examples.nix
+++ b/nixpkgs/lib/systems/examples.nix
@@ -93,6 +93,26 @@ rec {
     config = "mipsel-unknown-linux-gnu";
   } // platforms.fuloong2f_n32;
 
+  # MIPS ABI table transcribed from here: https://wiki.debian.org/Multiarch/Tuples
+
+  # can execute on 32bit chip
+  mips-linux-gnu                = { config = "mips-linux-gnu";                } // platforms.gcc_mips32r2_o32;
+  mipsel-linux-gnu              = { config = "mipsel-linux-gnu";              } // platforms.gcc_mips32r2_o32;
+  mipsisa32r6-linux-gnu         = { config = "mipsisa32r6-linux-gnu";         } // platforms.gcc_mips32r6_o32;
+  mipsisa32r6el-linux-gnu       = { config = "mipsisa32r6el-linux-gnu";       } // platforms.gcc_mips32r6_o32;
+
+  # require 64bit chip (for more registers, 64-bit floating point, 64-bit "long long") but use 32bit pointers
+  mips64-linux-gnuabin32        = { config = "mips64-linux-gnuabin32";        } // platforms.gcc_mips64r2_n32;
+  mips64el-linux-gnuabin32      = { config = "mips64el-linux-gnuabin32";      } // platforms.gcc_mips64r2_n32;
+  mipsisa64r6-linux-gnuabin32   = { config = "mipsisa64r6-linux-gnuabin32";   } // platforms.gcc_mips64r6_n32;
+  mipsisa64r6el-linux-gnuabin32 = { config = "mipsisa64r6el-linux-gnuabin32"; } // platforms.gcc_mips64r6_n32;
+
+  # 64bit pointers
+  mips64-linux-gnuabi64         = { config = "mips64-linux-gnuabi64";         } // platforms.gcc_mips64r2_64;
+  mips64el-linux-gnuabi64       = { config = "mips64el-linux-gnuabi64";       } // platforms.gcc_mips64r2_64;
+  mipsisa64r6-linux-gnuabi64    = { config = "mipsisa64r6-linux-gnuabi64";    } // platforms.gcc_mips64r6_64;
+  mipsisa64r6el-linux-gnuabi64  = { config = "mipsisa64r6el-linux-gnuabi64";  } // platforms.gcc_mips64r6_64;
+
   muslpi = raspberryPi // {
     config = "armv6l-unknown-linux-musleabihf";
   };
diff --git a/nixpkgs/lib/systems/inspect.nix b/nixpkgs/lib/systems/inspect.nix
index 718954e0839a..89cac575c67d 100644
--- a/nixpkgs/lib/systems/inspect.nix
+++ b/nixpkgs/lib/systems/inspect.nix
@@ -17,6 +17,10 @@ rec {
     isAarch32      = { cpu = { family = "arm"; bits = 32; }; };
     isAarch64      = { cpu = { family = "arm"; bits = 64; }; };
     isMips         = { cpu = { family = "mips"; }; };
+    isMips32       = { cpu = { family = "mips"; bits = 32; }; };
+    isMips64       = { cpu = { family = "mips"; bits = 64; }; };
+    isMips64n32    = { cpu = { family = "mips"; bits = 64; }; abi = { abi = "n32"; }; };
+    isMips64n64    = { cpu = { family = "mips"; bits = 64; }; abi = { abi = "64";  }; };
     isMmix         = { cpu = { family = "mmix"; }; };
     isRiscV        = { cpu = { family = "riscv"; }; };
     isSparc        = { cpu = { family = "sparc"; }; };
@@ -57,7 +61,7 @@ rec {
 
     isAndroid      = [ { abi = abis.android; } { abi = abis.androideabi; } ];
     isGnu          = with abis; map (a: { abi = a; }) [ gnuabi64 gnu gnueabi gnueabihf ];
-    isMusl         = with abis; map (a: { abi = a; }) [ musl musleabi musleabihf ];
+    isMusl         = with abis; map (a: { abi = a; }) [ musl musleabi musleabihf muslabin32 muslabi64 ];
     isUClibc       = with abis; map (a: { abi = a; }) [ uclibc uclibceabi uclibceabihf ];
 
     isEfi          = map (family: { cpu.family = family; })
diff --git a/nixpkgs/lib/systems/parse.nix b/nixpkgs/lib/systems/parse.nix
index f0e87c30e473..3ceddbb599b9 100644
--- a/nixpkgs/lib/systems/parse.nix
+++ b/nixpkgs/lib/systems/parse.nix
@@ -359,6 +359,13 @@ rec {
       ];
     };
     gnuabi64     = { abi = "64"; };
+    muslabi64    = { abi = "64"; };
+
+    # NOTE: abi=n32 requires a 64-bit MIPS chip!  That is not a typo.
+    # It is basically the 64-bit abi with 32-bit pointers.  Details:
+    # https://www.linux-mips.org/pub/linux/mips/doc/ABI/MIPS-N32-ABI-Handbook.pdf
+    gnuabin32    = { abi = "n32"; };
+    muslabin32   = { abi = "n32"; };
 
     musleabi     = { float = "soft"; };
     musleabihf   = { float = "hard"; };
diff --git a/nixpkgs/lib/systems/platforms.nix b/nixpkgs/lib/systems/platforms.nix
index b2a8dbedef4f..04d55416242e 100644
--- a/nixpkgs/lib/systems/platforms.nix
+++ b/nixpkgs/lib/systems/platforms.nix
@@ -1,3 +1,10 @@
+# Note: lib/systems/default.nix takes care of producing valid,
+# fully-formed "platform" values (e.g. hostPlatform, buildPlatform,
+# targetPlatform, etc) containing at least the minimal set of attrs
+# required (see types.parsedPlatform in lib/systems/parse.nix).  This
+# file takes an already-valid platform and further elaborates it with
+# optional fields such as linux-kernel, gcc, etc.
+
 { lib }:
 rec {
   pc = {
@@ -482,6 +489,43 @@ rec {
     };
   };
 
+  # can execute on 32bit chip
+  gcc_mips32r2_o32 = { gcc = { arch = "mips32r2"; abi = "o32"; }; };
+  gcc_mips32r6_o32 = { gcc = { arch = "mips32r6"; abi = "o32"; }; };
+  gcc_mips64r2_n32 = { gcc = { arch = "mips64r2"; abi = "n32"; }; };
+  gcc_mips64r6_n32 = { gcc = { arch = "mips64r6"; abi = "n32"; }; };
+  gcc_mips64r2_64  = { gcc = { arch = "mips64r2"; abi =  "64"; }; };
+  gcc_mips64r6_64  = { gcc = { arch = "mips64r6"; abi =  "64"; }; };
+
+  # based on:
+  #   https://www.mail-archive.com/qemu-discuss@nongnu.org/msg05179.html
+  #   https://gmplib.org/~tege/qemu.html#mips64-debian
+  mips64el-qemu-linux-gnuabi64 = (import ./examples).mips64el-linux-gnuabi64 // {
+    linux-kernel = {
+      name = "mips64el";
+      baseConfig = "64r2el_defconfig";
+      target = "vmlinuz";
+      autoModules = false;
+      DTB = true;
+      # for qemu 9p passthrough filesystem
+      extraConfig = ''
+        MIPS_MALTA y
+        PAGE_SIZE_4KB y
+        CPU_LITTLE_ENDIAN y
+        CPU_MIPS64_R2 y
+        64BIT y
+        CPU_MIPS64_R2 y
+
+        NET_9P y
+        NET_9P_VIRTIO y
+        9P_FS y
+        9P_FS_POSIX_ACL y
+        PCI y
+        VIRTIO_PCI y
+      '';
+    };
+  };
+
   ##
   ## Other
   ##
@@ -499,6 +543,9 @@ rec {
     };
   };
 
+  # This function takes a minimally-valid "platform" and returns an
+  # attrset containing zero or more additional attrs which should be
+  # included in the platform in order to further elaborate it.
   select = platform:
     # x86
     /**/ if platform.isx86 then pc
diff --git a/nixpkgs/lib/tests/misc.nix b/nixpkgs/lib/tests/misc.nix
index 5fa95828df69..271119031395 100644
--- a/nixpkgs/lib/tests/misc.nix
+++ b/nixpkgs/lib/tests/misc.nix
@@ -761,4 +761,156 @@ runTests {
       { a = 3; b = 30; c = 300; }
     ];
   };
+
+  # The example from the showAttrPath documentation
+  testShowAttrPathExample = {
+    expr = showAttrPath [ "foo" "10" "bar" ];
+    expected = "foo.\"10\".bar";
+  };
+
+  testShowAttrPathEmpty = {
+    expr = showAttrPath [];
+    expected = "<root attribute path>";
+  };
+
+  testShowAttrPathVarious = {
+    expr = showAttrPath [
+      "."
+      "foo"
+      "2"
+      "a2-b"
+      "_bc'de"
+    ];
+    expected = ''".".foo."2".a2-b._bc'de'';
+  };
+
+  testGroupBy = {
+    expr = groupBy (n: toString (mod n 5)) (range 0 16);
+    expected = {
+      "0" = [ 0 5 10 15 ];
+      "1" = [ 1 6 11 16 ];
+      "2" = [ 2 7 12 ];
+      "3" = [ 3 8 13 ];
+      "4" = [ 4 9 14 ];
+    };
+  };
+
+  testGroupBy' = {
+    expr = groupBy' builtins.add 0 (x: boolToString (x > 2)) [ 5 1 2 3 4 ];
+    expected = { false = 3; true = 12; };
+  };
+
+  # The example from the updateManyAttrsByPath documentation
+  testUpdateManyAttrsByPathExample = {
+    expr = updateManyAttrsByPath [
+      {
+        path = [ "a" "b" ];
+        update = old: { d = old.c; };
+      }
+      {
+        path = [ "a" "b" "c" ];
+        update = old: old + 1;
+      }
+      {
+        path = [ "x" "y" ];
+        update = old: "xy";
+      }
+    ] { a.b.c = 0; };
+    expected = { a = { b = { d = 1; }; }; x = { y = "xy"; }; };
+  };
+
+  # If there are no updates, the value is passed through
+  testUpdateManyAttrsByPathNone = {
+    expr = updateManyAttrsByPath [] "something";
+    expected = "something";
+  };
+
+  # A single update to the root path is just like applying the function directly
+  testUpdateManyAttrsByPathSingleIncrement = {
+    expr = updateManyAttrsByPath [
+      {
+        path = [ ];
+        update = old: old + 1;
+      }
+    ] 0;
+    expected = 1;
+  };
+
+  # Multiple updates can be applied are done in order
+  testUpdateManyAttrsByPathMultipleIncrements = {
+    expr = updateManyAttrsByPath [
+      {
+        path = [ ];
+        update = old: old + "a";
+      }
+      {
+        path = [ ];
+        update = old: old + "b";
+      }
+      {
+        path = [ ];
+        update = old: old + "c";
+      }
+    ] "";
+    expected = "abc";
+  };
+
+  # If an update doesn't use the value, all previous updates are not evaluated
+  testUpdateManyAttrsByPathLazy = {
+    expr = updateManyAttrsByPath [
+      {
+        path = [ ];
+        update = old: old + throw "nope";
+      }
+      {
+        path = [ ];
+        update = old: "untainted";
+      }
+    ] (throw "start");
+    expected = "untainted";
+  };
+
+  # Deeply nested attributes can be updated without affecting others
+  testUpdateManyAttrsByPathDeep = {
+    expr = updateManyAttrsByPath [
+      {
+        path = [ "a" "b" "c" ];
+        update = old: old + 1;
+      }
+    ] {
+      a.b.c = 0;
+
+      a.b.z = 0;
+      a.y.z = 0;
+      x.y.z = 0;
+    };
+    expected = {
+      a.b.c = 1;
+
+      a.b.z = 0;
+      a.y.z = 0;
+      x.y.z = 0;
+    };
+  };
+
+  # Nested attributes are updated first
+  testUpdateManyAttrsByPathNestedBeforehand = {
+    expr = updateManyAttrsByPath [
+      {
+        path = [ "a" ];
+        update = old: old // { x = old.b; };
+      }
+      {
+        path = [ "a" "b" ];
+        update = old: old + 1;
+      }
+    ] {
+      a.b = 0;
+    };
+    expected = {
+      a.b = 1;
+      a.x = 1;
+    };
+  };
+
 }
diff --git a/nixpkgs/lib/tests/modules.sh b/nixpkgs/lib/tests/modules.sh
index 350fe85e7487..8050c6539fc2 100755
--- a/nixpkgs/lib/tests/modules.sh
+++ b/nixpkgs/lib/tests/modules.sh
@@ -62,6 +62,13 @@ checkConfigError() {
 checkConfigOutput '^false$' config.enable ./declare-enable.nix
 checkConfigError 'The option .* does not exist. Definition values:\n\s*- In .*: true' config.enable ./define-enable.nix
 
+checkConfigOutput '^1$' config.bare-submodule.nested ./declare-bare-submodule.nix ./declare-bare-submodule-nested-option.nix
+checkConfigOutput '^2$' config.bare-submodule.deep ./declare-bare-submodule.nix ./declare-bare-submodule-deep-option.nix
+checkConfigOutput '^42$' config.bare-submodule.nested ./declare-bare-submodule.nix ./declare-bare-submodule-nested-option.nix ./declare-bare-submodule-deep-option.nix ./define-bare-submodule-values.nix
+checkConfigOutput '^420$' config.bare-submodule.deep ./declare-bare-submodule.nix ./declare-bare-submodule-nested-option.nix ./declare-bare-submodule-deep-option.nix ./define-bare-submodule-values.nix
+checkConfigOutput '^2$' config.bare-submodule.deep ./declare-bare-submodule.nix ./declare-bare-submodule-deep-option.nix ./define-shorthandOnlyDefinesConfig-true.nix
+checkConfigError 'The option .bare-submodule.deep. in .*/declare-bare-submodule-deep-option.nix. is already declared in .*/declare-bare-submodule-deep-option-duplicate.nix' config.bare-submodule.deep ./declare-bare-submodule.nix ./declare-bare-submodule-deep-option.nix  ./declare-bare-submodule-deep-option-duplicate.nix
+
 # Check integer types.
 # unsigned
 checkConfigOutput '^42$' config.value ./declare-int-unsigned-value.nix ./define-value-int-positive.nix
@@ -304,6 +311,12 @@ checkConfigOutput "10" config.processedToplevel ./raw.nix
 checkConfigError "The option .multiple. is defined multiple times" config.multiple ./raw.nix
 checkConfigOutput "bar" config.priorities ./raw.nix
 
+## Option collision
+checkConfigError \
+  'The option .set. in module .*/declare-set.nix. would be a parent of the following options, but its type .attribute set of signed integers. does not support nested options.\n\s*- option[(]s[)] with prefix .set.enable. in module .*/declare-enable-nested.nix.' \
+  config.set \
+  ./declare-set.nix ./declare-enable-nested.nix
+
 # Test that types.optionType merges types correctly
 checkConfigOutput '^10$' config.theOption.int ./optionTypeMerging.nix
 checkConfigOutput '^"hello"$' config.theOption.str ./optionTypeMerging.nix
diff --git a/nixpkgs/lib/tests/modules/declare-bare-submodule-deep-option-duplicate.nix b/nixpkgs/lib/tests/modules/declare-bare-submodule-deep-option-duplicate.nix
new file mode 100644
index 000000000000..06ad1f6e0a51
--- /dev/null
+++ b/nixpkgs/lib/tests/modules/declare-bare-submodule-deep-option-duplicate.nix
@@ -0,0 +1,10 @@
+{ lib, ... }:
+let
+  inherit (lib) mkOption types;
+in
+{
+  options.bare-submodule.deep = mkOption {
+    type = types.int;
+    default = 2;
+  };
+}
diff --git a/nixpkgs/lib/tests/modules/declare-bare-submodule-deep-option.nix b/nixpkgs/lib/tests/modules/declare-bare-submodule-deep-option.nix
new file mode 100644
index 000000000000..06ad1f6e0a51
--- /dev/null
+++ b/nixpkgs/lib/tests/modules/declare-bare-submodule-deep-option.nix
@@ -0,0 +1,10 @@
+{ lib, ... }:
+let
+  inherit (lib) mkOption types;
+in
+{
+  options.bare-submodule.deep = mkOption {
+    type = types.int;
+    default = 2;
+  };
+}
diff --git a/nixpkgs/lib/tests/modules/declare-bare-submodule-nested-option.nix b/nixpkgs/lib/tests/modules/declare-bare-submodule-nested-option.nix
new file mode 100644
index 000000000000..da125c84b25d
--- /dev/null
+++ b/nixpkgs/lib/tests/modules/declare-bare-submodule-nested-option.nix
@@ -0,0 +1,19 @@
+{ config, lib, ... }:
+let
+  inherit (lib) mkOption types;
+in
+{
+  options.bare-submodule = mkOption {
+    type = types.submoduleWith {
+      shorthandOnlyDefinesConfig = config.shorthandOnlyDefinesConfig;
+      modules = [
+        {
+          options.nested = mkOption {
+            type = types.int;
+            default = 1;
+          };
+        }
+      ];
+    };
+  };
+}
diff --git a/nixpkgs/lib/tests/modules/declare-bare-submodule.nix b/nixpkgs/lib/tests/modules/declare-bare-submodule.nix
new file mode 100644
index 000000000000..5402f4ff5a50
--- /dev/null
+++ b/nixpkgs/lib/tests/modules/declare-bare-submodule.nix
@@ -0,0 +1,18 @@
+{ config, lib, ... }:
+let
+  inherit (lib) mkOption types;
+in
+{
+  options.bare-submodule = mkOption {
+    type = types.submoduleWith {
+      modules = [ ];
+      shorthandOnlyDefinesConfig = config.shorthandOnlyDefinesConfig;
+    };
+    default = {};
+  };
+
+  # config-dependent options: won't recommend, but useful for making this test parameterized
+  options.shorthandOnlyDefinesConfig = mkOption {
+    default = false;
+  };
+}
diff --git a/nixpkgs/lib/tests/modules/declare-set.nix b/nixpkgs/lib/tests/modules/declare-set.nix
new file mode 100644
index 000000000000..853418531a81
--- /dev/null
+++ b/nixpkgs/lib/tests/modules/declare-set.nix
@@ -0,0 +1,12 @@
+{ lib, ... }:
+
+{
+  options.set = lib.mkOption {
+    default = { };
+    example = { a = 1; };
+    type = lib.types.attrsOf lib.types.int;
+    description = ''
+      Some descriptive text
+    '';
+  };
+}
diff --git a/nixpkgs/lib/tests/modules/define-bare-submodule-values.nix b/nixpkgs/lib/tests/modules/define-bare-submodule-values.nix
new file mode 100644
index 000000000000..00ede929ee66
--- /dev/null
+++ b/nixpkgs/lib/tests/modules/define-bare-submodule-values.nix
@@ -0,0 +1,4 @@
+{
+  bare-submodule.nested = 42;
+  bare-submodule.deep = 420;
+}
diff --git a/nixpkgs/lib/tests/modules/define-shorthandOnlyDefinesConfig-true.nix b/nixpkgs/lib/tests/modules/define-shorthandOnlyDefinesConfig-true.nix
new file mode 100644
index 000000000000..bd3a73dce340
--- /dev/null
+++ b/nixpkgs/lib/tests/modules/define-shorthandOnlyDefinesConfig-true.nix
@@ -0,0 +1 @@
+{ shorthandOnlyDefinesConfig = true; }
diff --git a/nixpkgs/lib/tests/systems.nix b/nixpkgs/lib/tests/systems.nix
index 2646e792682b..c88adbf4651a 100644
--- a/nixpkgs/lib/tests/systems.nix
+++ b/nixpkgs/lib/tests/systems.nix
@@ -17,7 +17,7 @@ with lib.systems.doubles; lib.runTests {
 
   testarm = mseteq arm [ "armv5tel-linux" "armv6l-linux" "armv6l-netbsd" "armv6l-none" "armv7a-linux" "armv7a-netbsd" "armv7l-linux" "armv7l-netbsd" "arm-none" "armv7a-darwin" ];
   testi686 = mseteq i686 [ "i686-linux" "i686-freebsd" "i686-genode" "i686-netbsd" "i686-openbsd" "i686-cygwin" "i686-windows" "i686-none" "i686-darwin" ];
-  testmips = mseteq mips [ "mipsel-linux" "mipsel-netbsd" ];
+  testmips = mseteq mips [ "mips64el-linux" "mipsel-linux" "mipsel-netbsd" ];
   testmmix = mseteq mmix [ "mmix-mmixware" ];
   testx86_64 = mseteq x86_64 [ "x86_64-linux" "x86_64-darwin" "x86_64-freebsd" "x86_64-genode" "x86_64-redox" "x86_64-openbsd" "x86_64-netbsd" "x86_64-cygwin" "x86_64-solaris" "x86_64-windows" "x86_64-none" ];
 
@@ -28,7 +28,7 @@ with lib.systems.doubles; lib.runTests {
   testredox = mseteq redox [ "x86_64-redox" ];
   testgnu = mseteq gnu (linux /* ++ kfreebsd ++ ... */);
   testillumos = mseteq illumos [ "x86_64-solaris" ];
-  testlinux = mseteq linux [ "aarch64-linux" "armv5tel-linux" "armv6l-linux" "armv7a-linux" "armv7l-linux" "i686-linux" "mipsel-linux" "riscv32-linux" "riscv64-linux" "x86_64-linux" "powerpc64-linux" "powerpc64le-linux" "m68k-linux" "s390-linux" "s390x-linux" ];
+  testlinux = mseteq linux [ "aarch64-linux" "armv5tel-linux" "armv6l-linux" "armv7a-linux" "armv7l-linux" "i686-linux" "mips64el-linux" "mipsel-linux" "riscv32-linux" "riscv64-linux" "x86_64-linux" "powerpc64-linux" "powerpc64le-linux" "m68k-linux" "s390-linux" "s390x-linux" ];
   testnetbsd = mseteq netbsd [ "aarch64-netbsd" "armv6l-netbsd" "armv7a-netbsd" "armv7l-netbsd" "i686-netbsd" "m68k-netbsd" "mipsel-netbsd" "powerpc-netbsd" "riscv32-netbsd" "riscv64-netbsd" "x86_64-netbsd" ];
   testopenbsd = mseteq openbsd [ "i686-openbsd" "x86_64-openbsd" ];
   testwindows = mseteq windows [ "i686-cygwin" "x86_64-cygwin" "i686-windows" "x86_64-windows" ];
diff --git a/nixpkgs/lib/trivial.nix b/nixpkgs/lib/trivial.nix
index c68bac902e91..18616a189c26 100644
--- a/nixpkgs/lib/trivial.nix
+++ b/nixpkgs/lib/trivial.nix
@@ -166,6 +166,30 @@ rec {
   /* Returns the current nixpkgs release number as string. */
   release = lib.strings.fileContents ../.version;
 
+  /* The latest release that is supported, at the time of release branch-off,
+     if applicable.
+
+     Ideally, out-of-tree modules should be able to evaluate cleanly with all
+     supported Nixpkgs versions (master, release and old release until EOL).
+     So if possible, deprecation warnings should take effect only when all
+     out-of-tree expressions/libs/modules can upgrade to the new way without
+     losing support for supported Nixpkgs versions.
+
+     This release number allows deprecation warnings to be implemented such that
+     they take effect as soon as the oldest release reaches end of life. */
+  oldestSupportedRelease =
+    # Update on master only. Do not backport.
+    2111;
+
+  /* Whether a feature is supported in all supported releases (at the time of
+     release branch-off, if applicable). See `oldestSupportedRelease`. */
+  isInOldestRelease =
+    /* Release number of feature introduction as an integer, e.g. 2111 for 21.11.
+       Set it to the upcoming release, matching the nixpkgs/.version file.
+    */
+    release:
+      release <= lib.trivial.oldestSupportedRelease;
+
   /* Returns the current nixpkgs release code name.
 
      On each release the first letter is bumped and a new animal is chosen
@@ -323,7 +347,14 @@ rec {
 
     Type: bool -> string -> a -> a
   */
-  warnIf = cond: msg: if cond then warn msg else id;
+  warnIf = cond: msg: if cond then warn msg else x: x;
+
+  /*
+    Like warnIf, but negated (warn if the first argument is `false`).
+
+    Type: bool -> string -> a -> a
+  */
+  warnIfNot = cond: msg: if cond then x: x else warn msg;
 
   /*
     Like the `assert b; e` expression, but with a custom error message and
@@ -347,6 +378,13 @@ rec {
   */
   throwIfNot = cond: msg: if cond then x: x else throw msg;
 
+  /*
+    Like throwIfNot, but negated (throw if the first argument is `true`).
+
+    Type: bool -> string -> a -> a
+  */
+  throwIf = cond: msg: if cond then throw msg else x: x;
+
   /* Check if the elements in a list are valid values from a enum, returning the identity function, or throwing an error message otherwise.
 
      Example:
@@ -403,6 +441,25 @@ rec {
   isFunction = f: builtins.isFunction f ||
     (f ? __functor && isFunction (f.__functor f));
 
+  /*
+    Turns any non-callable values into constant functions.
+    Returns callable values as is.
+
+    Example:
+
+      nix-repl> lib.toFunction 1 2
+      1
+
+      nix-repl> lib.toFunction (x: x + 1) 2
+      3
+  */
+  toFunction =
+    # Any value
+    v:
+    if isFunction v
+    then v
+    else k: v;
+
   /* Convert the given positive integer to a string of its hexadecimal
      representation. For example:
 
diff --git a/nixpkgs/lib/types.nix b/nixpkgs/lib/types.nix
index 3078615f5ddc..5c4b96310617 100644
--- a/nixpkgs/lib/types.nix
+++ b/nixpkgs/lib/types.nix
@@ -572,14 +572,18 @@ rec {
       let
         inherit (lib.modules) evalModules;
 
-        coerce = unify: value: if isFunction value
-          then setFunctionArgs (args: unify (value args)) (functionArgs value)
-          else unify (if shorthandOnlyDefinesConfig then { config = value; } else value);
+        shorthandToModule = if shorthandOnlyDefinesConfig == false
+          then value: value
+          else value: { config = value; };
 
         allModules = defs: imap1 (n: { value, file }:
-          if isAttrs value || isFunction value then
-            # Annotate the value with the location of its definition for better error messages
-            coerce (lib.modules.unifyModuleSyntax file "${toString file}-${toString n}") value
+          if isFunction value
+          then setFunctionArgs
+                (args: lib.modules.unifyModuleSyntax file "${toString file}-${toString n}" (value args))
+                (functionArgs value)
+          else if isAttrs value
+          then
+            lib.modules.unifyModuleSyntax file "${toString file}-${toString n}" (shorthandToModule value)
           else value
         ) defs;
 
@@ -647,7 +651,11 @@ rec {
               then lhs.specialArgs // rhs.specialArgs
               else throw "A submoduleWith option is declared multiple times with the same specialArgs \"${toString (attrNames intersecting)}\"";
             shorthandOnlyDefinesConfig =
-              if lhs.shorthandOnlyDefinesConfig == rhs.shorthandOnlyDefinesConfig
+              if lhs.shorthandOnlyDefinesConfig == null
+              then rhs.shorthandOnlyDefinesConfig
+              else if rhs.shorthandOnlyDefinesConfig == null
+              then lhs.shorthandOnlyDefinesConfig
+              else if lhs.shorthandOnlyDefinesConfig == rhs.shorthandOnlyDefinesConfig
               then lhs.shorthandOnlyDefinesConfig
               else throw "A submoduleWith option is declared multiple times with conflicting shorthandOnlyDefinesConfig values";
           };
@@ -741,14 +749,6 @@ rec {
         nestedTypes.finalType = finalType;
       };
 
-    # Obsolete alternative to configOf.  It takes its option
-    # declarations from the ‘options’ attribute of containing option
-    # declaration.
-    optionSet = mkOptionType {
-      name = "optionSet";
-      description = "option set";
-      deprecationMessage = "Use `types.submodule' instead";
-    };
     # Augment the given type with an additional type check function.
     addCheck = elemType: check: elemType // { check = x: elemType.check x && check x; };
 
diff --git a/nixpkgs/maintainers/maintainer-list.nix b/nixpkgs/maintainers/maintainer-list.nix
index 99b64520ffa7..25c5bd078e51 100644
--- a/nixpkgs/maintainers/maintainer-list.nix
+++ b/nixpkgs/maintainers/maintainer-list.nix
@@ -929,6 +929,12 @@
     githubId = 1296771;
     name = "Anders Riutta";
   };
+  arjan-s = {
+    email = "github@anymore.nl";
+    github = "arjan-s";
+    githubId = 10400299;
+    name = "Arjan Schrijver";
+  };
   arkivm = {
     email = "vikram186@gmail.com";
     github = "arkivm";
@@ -1295,6 +1301,12 @@
     githubId = 127523;
     name = "Herman Fries";
   };
+  BarinovMaxim = {
+    name = "Barinov Maxim";
+    email = "barinov274@gmail.com";
+    github = "barinov274";
+    githubId = 54442153;
+  };
   barrucadu = {
     email = "mike@barrucadu.co.uk";
     github = "barrucadu";
@@ -1901,6 +1913,12 @@
     githubId = 82591;
     name = "Carl Sverre";
   };
+  carpinchomug = {
+    email = "aki.suda@protonmail.com";
+    github = "carpinchomug";
+    githubId = 101536256;
+    name = "Akiyoshi Suda";
+  };
   cartr = {
     email = "carter.sande@duodecima.technology";
     github = "cartr";
@@ -2812,6 +2830,12 @@
     githubId = 49904992;
     name = "Dawid Sowa";
   };
+  dbeckwith = {
+    email = "djbsnx@gmail.com";
+    github = "dbeckwith";
+    githubId = 1279939;
+    name = "Daniel Beckwith";
+  };
   dbirks = {
     email = "david@birks.dev";
     github = "dbirks";
@@ -4229,7 +4253,12 @@
     githubId = 119691;
     name = "Michael Gough";
   };
-
+  freax13 = {
+    email = "erbse.13@gmx.de";
+    github = "freax13";
+    githubId = 14952658;
+    name = "Tom Dohrmann";
+  };
   fredeb = {
     email = "im@fredeb.dev";
     github = "fredeeb";
@@ -5863,6 +5892,12 @@
     githubId = 587870;
     name = "Jonathan Mettes";
   };
+  jmgilman = {
+    email = "joshuagilman@gmail.com";
+    github = "jmgilman";
+    githubId = 2308444;
+    name = "Joshua Gilman";
+  };
   jo1gi = {
     email = "joakimholm@protonmail.com";
     github = "jo1gi";
@@ -7235,12 +7270,29 @@
     githubId = 1267527;
     name = "Daniel Firth";
   };
+  lockejan = {
+    email = "git@smittie.de";
+    matrix = "@jan:smittie.de";
+    github = "lockejan";
+    githubId = 25434434;
+    name = "Jan Schmitt";
+    keys = [{
+      longkeyid = "dsa2048/0xA2BC3C6F14351991";
+      fingerprint = "1763 9903 2D7C 5B82 5D5A  0EAD A2BC 3C6F 1435 1991";
+    }];
+  };
   lodi = {
     email = "anthony.lodi@gmail.com";
     github = "lodi";
     githubId = 918448;
     name = "Anthony Lodi";
   };
+  loicreynier = {
+    email = "loic@loireynier.fr";
+    github = "loicreynier";
+    githubId = 88983487;
+    name = "Loïc Reynier";
+  };
   lopsided98 = {
     email = "benwolsieffer@gmail.com";
     github = "lopsided98";
@@ -8710,6 +8762,12 @@
       fingerprint = "4BFF 0614 03A2 47F0 AA0B 4BC4 916D 8B67 2418 92AE";
     }];
   };
+  nbr = {
+    email = "nbr@users.noreply.github.com";
+    github = "nbr";
+    githubId = 3819225;
+    name = "Nick Braga";
+  };
   nbren12 = {
     email = "nbren12@gmail.com";
     github = "nbren12";
@@ -9892,6 +9950,12 @@
       fingerprint = "48AD DE10 F27B AFB4 7BB0  CCAF 2D25 95A0 0D08 ACE0";
     }];
   };
+  ppenguin = {
+    name = "Jeroen Versteeg";
+    email = "hieronymusv@gmail.com";
+    github = "ppenguin";
+    githubId = 17690377;
+  };
   ppom = {
     name = "Paco Pompeani";
     email = "paco@ecomail.io";
@@ -10248,6 +10312,16 @@
     githubId = 16487165;
     name = "Rafael Basso";
   };
+  rbreslow = {
+    name = "Rocky Breslow";
+    email = "1774125+rbreslow@users.noreply.github.com";
+    github = "rbreslow";
+    githubId = 1774125;
+    keys = [{
+      longkeyid = "ed25519/0xA0D32ACCA38B88ED";
+      fingerprint = "B5B7 BCA0 EE6F F31E 263A  69E3 A0D3 2ACC A38B 88ED";
+    }];
+  };
   rbrewer = {
     email = "rwb123@gmail.com";
     github = "rbrewer123";
@@ -10374,6 +10448,18 @@
     githubId = 22803888;
     name = "Lu Hongxu";
   };
+  rgnns = {
+    email = "jglievano@gmail.com";
+    github = "rgnns";
+    githubId = 811827;
+    name = "Gabriel Lievano";
+  };
+  rgrinberg = {
+    name = "Rudi Grinberg";
+    email = "me@rgrinberg.com";
+    github = "rgrinberg";
+    githubId = 139003;
+  };
   rgrunbla = {
     email = "remy@grunblatt.org";
     github = "rgrunbla";
@@ -11225,6 +11311,12 @@
     githubId = 293035;
     name = "Shawn Dellysse";
   };
+  shawn8901 = {
+    email = "shawn8901@googlemail.com";
+    github = "shawn8901";
+    githubId = 12239057;
+    name = "Shawn8901";
+  };
   shazow = {
     email = "andrey.petrov@shazow.net";
     github = "shazow";
@@ -12718,6 +12810,12 @@
     githubId = 1983821;
     name = "Eric Wolf";
   };
+  uakci = {
+    name = "uakci";
+    email = "uakci@uakci.pl";
+    github = "uakci";
+    githubId = 6961268;
+  };
   udono = {
     email = "udono@virtual-things.biz";
     github = "udono";
@@ -13145,6 +13243,12 @@
     githubId = 34962284;
     name = "wchresta";
   };
+  wdavidw = {
+    name = "David Worms";
+    email = "david@adaltas.com";
+    github = "wdavidw";
+    githubId = 46896;
+  };
   wedens = {
     email = "kirill.wedens@gmail.com";
     name = "wedens";
diff --git a/nixpkgs/maintainers/scripts/luarocks-packages.csv b/nixpkgs/maintainers/scripts/luarocks-packages.csv
index d69546cdf07e..bdda8020a3da 100644
--- a/nixpkgs/maintainers/scripts/luarocks-packages.csv
+++ b/nixpkgs/maintainers/scripts/luarocks-packages.csv
@@ -81,6 +81,6 @@ rapidjson,https://github.com/xpol/lua-rapidjson.git,,,,,
 readline,,,,,,
 say,https://github.com/Olivine-Labs/say.git,,,,,
 std._debug,https://github.com/lua-stdlib/_debug.git,,,,,
-std.normalize,git://github.com/lua-stdlib/normalize.git,,,,,
+std.normalize,https://github.com/lua-stdlib/normalize.git,,,,,
 stdlib,,,,41.2.2,,vyp
 vstruct,https://github.com/ToxicFrog/vstruct.git,,,,,
diff --git a/nixpkgs/maintainers/scripts/remove-old-aliases.py b/nixpkgs/maintainers/scripts/remove-old-aliases.py
index 5d9398feaa25..c5629c829594 100755
--- a/nixpkgs/maintainers/scripts/remove-old-aliases.py
+++ b/nixpkgs/maintainers/scripts/remove-old-aliases.py
@@ -28,6 +28,11 @@ def process_args() -> argparse.Namespace:
         default=1,
         help="operate on aliases older than $year-$month",
     )
+    arg_parser.add_argument(
+        "--only-throws",
+        action="store_true",
+        help="only operate on throws. e.g remove throws older than $date",
+    )
     arg_parser.add_argument("--file", required=True, type=Path, help="alias file")
     arg_parser.add_argument(
         "--dry-run", action="store_true", help="don't modify files, only print results"
@@ -36,7 +41,7 @@ def process_args() -> argparse.Namespace:
 
 
 def get_date_lists(
-    txt: list[str], cutoffdate: datetimedate
+    txt: list[str], cutoffdate: datetimedate, only_throws: bool
 ) -> tuple[list[str], list[str], list[str]]:
     """get a list of lines in which the date is older than $cutoffdate"""
     date_older_list: list[str] = []
@@ -57,7 +62,11 @@ def get_date_lists(
                 except ValueError:
                     continue
 
-        if my_date is None or my_date > cutoffdate:
+        if (
+            my_date is None
+            or my_date > cutoffdate
+            or "preserve, reason:" in line.lower()
+        ):
             continue
 
         if "=" not in line:
@@ -67,7 +76,7 @@ def get_date_lists(
             print(f"RESOLVE MANUALLY {line}")
         elif "throw" in line:
             date_older_throw_list.append(line)
-        else:
+        elif not only_throws:
             date_older_list.append(line)
 
     return (
@@ -160,6 +169,7 @@ def main() -> None:
     """main"""
     args = process_args()
 
+    only_throws = args.only_throws
     aliasfile = Path(args.file).absolute()
     cutoffdate = (datetime.strptime(f"{args.year}-{args.month}-01", "%Y-%m-%d")).date()
 
@@ -170,13 +180,12 @@ def main() -> None:
     date_older_throw_list: list[str] = []
 
     date_older_list, date_sep_line_list, date_older_throw_list = get_date_lists(
-        txt, cutoffdate
+        txt, cutoffdate, only_throws
     )
 
     converted_to_throw: list[tuple[str, str]] = []
-    converted_to_throw = convert_to_throw(date_older_list)
-
     if date_older_list:
+        converted_to_throw = convert_to_throw(date_older_list)
         print(" Will be converted to throws. ".center(100, "-"))
         for l_n in date_older_list:
             print(l_n)
diff --git a/nixpkgs/nixos/doc/manual/development/option-declarations.section.md b/nixpkgs/nixos/doc/manual/development/option-declarations.section.md
index 819fc6d891f0..53ecb9b3a624 100644
--- a/nixpkgs/nixos/doc/manual/development/option-declarations.section.md
+++ b/nixpkgs/nixos/doc/manual/development/option-declarations.section.md
@@ -27,9 +27,10 @@ The function `mkOption` accepts the following arguments.
 
 `type`
 
-:   The type of the option (see [](#sec-option-types)). It may be
-    omitted, but that's not advisable since it may lead to errors that
-    are hard to diagnose.
+:   The type of the option (see [](#sec-option-types)). This
+    argument is mandatory for nixpkgs modules. Setting this is highly
+    recommended for the sake of documentation and type checking. In case it is
+    not set, a fallback type with unspecified behavior is used.
 
 `default`
 
diff --git a/nixpkgs/nixos/doc/manual/development/writing-nixos-tests.section.md b/nixpkgs/nixos/doc/manual/development/writing-nixos-tests.section.md
index 7de57d0d2a37..433e1906f775 100644
--- a/nixpkgs/nixos/doc/manual/development/writing-nixos-tests.section.md
+++ b/nixpkgs/nixos/doc/manual/development/writing-nixos-tests.section.md
@@ -158,6 +158,12 @@ The following methods are available on machine objects:
     e.g., `send_chars("foobar\n")` will type the string `foobar`
     followed by the Enter key.
 
+`send_console`
+
+:   Send keys to the kernel console. This allows interaction with the systemd
+    emergency mode, for example. Takes a string that is sent, e.g.,
+    `send_console("\n\nsystemctl default\n")`.
+
 `execute`
 
 :   Execute a shell command, returning a list `(status, stdout)`.
@@ -272,6 +278,13 @@ The following methods are available on machine objects:
     Killing the interactive session with `Ctrl-d` or `Ctrl-c` also ends
     the guest session.
 
+`console_interact`
+
+:   Allows you to directly interact with QEMU's stdin. This should
+    only be used during test development, not in production tests.
+    Output from QEMU is only read line-wise. `Ctrl-c` kills QEMU and
+    `Ctrl-d` closes console and returns to the test runner.
+
 To test user units declared by `systemd.user.services` the optional
 `user` argument can be used:
 
diff --git a/nixpkgs/nixos/doc/manual/from_md/development/option-declarations.section.xml b/nixpkgs/nixos/doc/manual/from_md/development/option-declarations.section.xml
index 554705e2e424..0ac5e0eeca2d 100644
--- a/nixpkgs/nixos/doc/manual/from_md/development/option-declarations.section.xml
+++ b/nixpkgs/nixos/doc/manual/from_md/development/option-declarations.section.xml
@@ -38,9 +38,11 @@ options = {
       <listitem>
         <para>
           The type of the option (see
-          <xref linkend="sec-option-types" />). It may be omitted, but
-          that’s not advisable since it may lead to errors that are hard
-          to diagnose.
+          <xref linkend="sec-option-types" />). This argument is
+          mandatory for nixpkgs modules. Setting this is highly
+          recommended for the sake of documentation and type checking.
+          In case it is not set, a fallback type with unspecified
+          behavior is used.
         </para>
       </listitem>
     </varlistentry>
diff --git a/nixpkgs/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml b/nixpkgs/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml
index 45c9c40c6095..4f856f98f2a2 100644
--- a/nixpkgs/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml
+++ b/nixpkgs/nixos/doc/manual/from_md/development/writing-nixos-tests.section.xml
@@ -263,6 +263,19 @@ start_all()
       </varlistentry>
       <varlistentry>
         <term>
+          <literal>send_console</literal>
+        </term>
+        <listitem>
+          <para>
+            Send keys to the kernel console. This allows interaction
+            with the systemd emergency mode, for example. Takes a string
+            that is sent, e.g.,
+            <literal>send_console(&quot;\n\nsystemctl default\n&quot;)</literal>.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term>
           <literal>execute</literal>
         </term>
         <listitem>
@@ -502,6 +515,21 @@ machine.systemctl(&quot;list-jobs --no-pager&quot;, &quot;any-user&quot;) # spaw
           </para>
         </listitem>
       </varlistentry>
+      <varlistentry>
+        <term>
+          <literal>console_interact</literal>
+        </term>
+        <listitem>
+          <para>
+            Allows you to directly interact with QEMU’s stdin. This
+            should only be used during test development, not in
+            production tests. Output from QEMU is only read line-wise.
+            <literal>Ctrl-c</literal> kills QEMU and
+            <literal>Ctrl-d</literal> closes console and returns to the
+            test runner.
+          </para>
+        </listitem>
+      </varlistentry>
     </variablelist>
     <para>
       To test user units declared by
diff --git a/nixpkgs/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml b/nixpkgs/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml
index 396de8cd77c2..0c5b3b4fec76 100644
--- a/nixpkgs/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml
+++ b/nixpkgs/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml
@@ -17,6 +17,14 @@
     <itemizedlist>
       <listitem>
         <para>
+          The <literal>firefox</literal> browser on
+          <literal>x86_64-linux</literal> is now making use of
+          profile-guided optimization resulting in a much more
+          responsive browsing experience.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           <literal>security.acme.defaults</literal> has been added to
           simplify configuring settings for many certificates at once.
           This also opens up the the option to use DNS-01 validation
@@ -27,6 +35,16 @@
       </listitem>
       <listitem>
         <para>
+          GNOME has been upgraded to 42. Please take a look at their
+          <link xlink:href="https://release.gnome.org/42/">Release
+          Notes</link> for details. Notably, it replaces gedit with
+          GNOME Text Editor, GNOME Terminal with GNOME Console (formerly
+          King’s Cross), and GNOME Screenshot with a tool built into the
+          Shell.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           PHP 8.1 is now available
         </para>
       </listitem>
@@ -62,6 +80,14 @@
           notes</link> for details.
         </para>
       </listitem>
+      <listitem>
+        <para>
+          Module authors can use
+          <literal>mkRenamedOptionModuleWith</literal> to automate the
+          deprecation cycle without annoying out-of-tree module authors
+          and their users.
+        </para>
+      </listitem>
     </itemizedlist>
   </section>
   <section xml:id="sec-release-22.05-new-services">
@@ -109,7 +135,7 @@
         <para>
           <link xlink:href="https://frrouting.org/">FRRouting</link>, a
           popular suite of Internet routing protocol daemons (BGP, BFD,
-          OSPF, IS-IS, VVRP and others). Available as
+          OSPF, IS-IS, VRRP and others). Available as
           <link linkend="opt-services.frr.babel.enable">services.frr</link>
         </para>
       </listitem>
@@ -276,6 +302,13 @@
       </listitem>
       <listitem>
         <para>
+          <link xlink:href="https://github.com/Mic92/nix-ld">nix-ld</link>,
+          Run unpatched dynamic binaries on NixOS. Available as
+          <link xlink:href="options.html#opt-programs.nix-ld.enable">programs.nix-ld</link>.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           <link xlink:href="https://timetagger.app">timetagger</link>,
           an open source time-tracker with an intuitive user experience
           and powerful reporting.
@@ -306,6 +339,12 @@
           with many features.
         </para>
       </listitem>
+      <listitem>
+        <para>
+          <link xlink:href="https://clusterlabs.org/pacemaker/">pacemaker</link>
+          cluster resource manager
+        </para>
+      </listitem>
     </itemizedlist>
   </section>
   <section xml:id="sec-release-22.05-incompatibilities">
@@ -448,6 +487,15 @@
       </listitem>
       <listitem>
         <para>
+          <literal>services.ipfs.extraFlags</literal> is now escaped
+          with <literal>utils.escapeSystemdExecArgs</literal>. If you
+          rely on systemd interpolating <literal>extraFlags</literal> in
+          the service <literal>ExecStart</literal>, this will no longer
+          work.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           The <literal>matrix-synapse</literal> service
           (<literal>services.matrix-synapse</literal>) has been
           converted to use the <literal>settings</literal> option
@@ -462,6 +510,12 @@
           freeform type.
         </para>
         <para>
+          The <literal>listeners.*.bind_address</literal> option was
+          renamed to <literal>bind_addresses</literal> in order to match
+          the upstream <literal>homeserver.yaml</literal> option name.
+          It is now also a list of strings instead of a string.
+        </para>
+        <para>
           An example to make the required migration clearer:
         </para>
         <para>
@@ -522,7 +576,7 @@
 
       listeners = [ {
         port = 8448;
-        bind_address = [
+        bind_addresses = [
           &quot;::&quot;
           &quot;0.0.0.0&quot;
         ];
@@ -553,7 +607,14 @@
           Additionally a few option defaults have been synced up with
           upstream default values, for example the
           <literal>max_upload_size</literal> grew from
-          <literal>10M</literal> to <literal>50M</literal>.
+          <literal>10M</literal> to <literal>50M</literal>. For the same
+          reason, the default <literal>media_store_path</literal> was
+          changed from <literal>${dataDir}/media</literal> to
+          <literal>${dataDir}/media_store</literal> if
+          <literal>system.stateVersion</literal> is at least
+          <literal>22.05</literal>. Files will need to be manually moved
+          to the new location if the <literal>stateVersion</literal> is
+          updated.
         </para>
       </listitem>
       <listitem>
@@ -565,6 +626,25 @@
       </listitem>
       <listitem>
         <para>
+          Services in the <literal>hadoop</literal> module previously
+          set <literal>openFirewall</literal> to true by default. This
+          has now been changed to false. Node definitions for multi-node
+          clusters would need <literal>openFirewall = true;</literal> to
+          be added to to hadoop services when upgrading from NixOS
+          21.11.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          <literal>services.hadoop.yarn.nodemanager</literal> now uses
+          cgroup-based CPU limit enforcement by default. Additionally,
+          the option <literal>useCGroups</literal> was added to
+          nodemanagers as an easy way to switch back to the old
+          behavior.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           The <literal>wafHook</literal> hook now honors
           <literal>NIX_BUILD_CORES</literal> when
           <literal>enableParallelBuilding</literal> is not set
@@ -610,6 +690,23 @@
       </listitem>
       <listitem>
         <para>
+          <literal>services.gnome.experimental-features.realtime-scheduling</literal>
+          option has been removed, as GNOME Shell now
+          <link xlink:href="https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2060">uses
+          rtkit</link>. Use
+          <literal>security.rtkit.enable = true;</literal> instead. As
+          before, you will need to have it enabled using GSettings.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          <literal>services.telepathy</literal> will no longer be
+          enabled by default for GNOME desktops, one should enable it in
+          their configs if using Empathy or Polari.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           If you previously used
           <literal>/etc/docker/daemon.json</literal>, you need to
           incorporate the changes into the new option
@@ -737,6 +834,60 @@
       </listitem>
       <listitem>
         <para>
+          <literal>pkgs._7zz</literal> is now correctly licensed as
+          LGPL3+ and BSD3 with optional unfree unRAR licensed code
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          The <literal>vim.customize</literal> function produced by
+          <literal>vimUtils.makeCustomizable</literal> now has a
+          slightly different interface:
+        </para>
+        <itemizedlist spacing="compact">
+          <listitem>
+            <para>
+              The wrapper now includes everything in the given Vim
+              derivation if <literal>name</literal> is
+              <literal>&quot;vim&quot;</literal> (the default). This
+              makes the <literal>wrapManual</literal> argument obsolete,
+              but this behavior can be overriden by setting the
+              <literal>standalone</literal> argument.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              All the executables present in the given derivation (or,
+              in <literal>standalone</literal> mode, only the
+              <literal>*vim</literal> ones) are wrapped. This makes the
+              <literal>wrapGui</literal> argument obsolete.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              The <literal>vimExecutableName</literal> and
+              <literal>gvimExecutableName</literal> arguments were
+              replaced by a single <literal>executableName</literal>
+              argument in which the shell variable
+              <literal>$exe</literal> can be used to refer to the
+              wrapped executable’s name.
+            </para>
+          </listitem>
+        </itemizedlist>
+        <para>
+          See the comments in
+          <literal>pkgs/applications/editors/vim/plugins/vim-utils.nix</literal>
+          for more details.
+        </para>
+        <para>
+          <literal>vimUtils.vimWithRC</literal> was removed. You should
+          instead use <literal>customize</literal> on a Vim derivation,
+          which now accepts <literal>vimrcFile</literal> and
+          <literal>gvimrcFile</literal> arguments.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           <literal>tilp2</literal> was removed together with its module
         </para>
       </listitem>
@@ -769,6 +920,16 @@
       </listitem>
       <listitem>
         <para>
+          The <literal>miller</literal> package has been upgraded from
+          5.10.3 to
+          <link xlink:href="https://github.com/johnkerl/miller/releases/tag/v6.2.0">6.2.0</link>.
+          See
+          <link xlink:href="https://miller.readthedocs.io/en/latest/new-in-miller-6">What’s
+          new in Miller 6</link>.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           MultiMC has been replaced with the fork PolyMC due to upstream
           developers being hostile to 3rd party package maintainers.
           PolyMC removes all MultiMC branding and is aimed at providing
@@ -794,6 +955,16 @@
       </listitem>
       <listitem>
         <para>
+          The Tor SOCKS proxy is now actually disabled if
+          <literal>services.tor.client.enable</literal> is set to
+          <literal>false</literal> (the default). If you are using this
+          functionality but didn’t change the setting or set it to
+          <literal>false</literal>, you now need to set it to
+          <literal>true</literal>.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           The terraform 0.12 compatibility has been removed and the
           <literal>terraform.withPlugins</literal> and
           <literal>terraform-providers.mkProvider</literal>
@@ -1146,7 +1317,8 @@
               Legacy options have been mapped to the corresponding
               options under under
               <link xlink:href="options.html#opt-nix.settings">nix.settings</link>
-              but may be deprecated in the future.
+              and will be deprecated when NixOS 21.11 reaches end of
+              life.
             </para>
           </listitem>
           <listitem>
@@ -1169,6 +1341,33 @@
       </listitem>
       <listitem>
         <para>
+          Some improvements have been made to the
+          <literal>hadoop</literal> module:
+        </para>
+        <itemizedlist spacing="compact">
+          <listitem>
+            <para>
+              A <literal>gatewayRole</literal> option has been added,
+              for deploying hadoop cluster configuration files to a node
+              that does not have any active services
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              Support for older versions of hadoop have been added to
+              the module
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              Overriding and extending site XML files has been made
+              easier
+            </para>
+          </listitem>
+        </itemizedlist>
+      </listitem>
+      <listitem>
+        <para>
           If you are using Wayland you can choose to use the Ozone
           Wayland support in Chrome and several Electron apps by setting
           the environment variable <literal>NIXOS_OZONE_WL=1</literal>
@@ -1192,6 +1391,14 @@
       </listitem>
       <listitem>
         <para>
+          The <literal>unifi</literal> package was switched from
+          <literal>unifi6</literal> to <literal>unifi7</literal>. Direct
+          downgrades from Unifi 7 to Unifi 6 are not possible and
+          require restoring from a backup made by Unifi 6.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           <literal>programs.zsh.autosuggestions.strategy</literal> now
           takes a list of strings instead of a string.
         </para>
@@ -1206,6 +1413,15 @@
       </listitem>
       <listitem>
         <para>
+          The <literal>services.unifi-video.openPorts</literal> option
+          default value of <literal>true</literal> is now deprecated and
+          will be changed to <literal>false</literal> in 22.11.
+          Configurations using this default will print a warning when
+          rebuilt.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           <literal>security.acme</literal> certificates will now
           correctly check for CA revokation before reaching their
           minimum age.
@@ -1267,10 +1483,10 @@
       </listitem>
       <listitem>
         <para>
-          A new option
-          <literal>boot.initrd.extraModprobeConfig</literal> has been
-          added which can be used to configure kernel modules that are
-          loaded in the initrd.
+          The options <literal>boot.extraModprobeConfig</literal> and
+          <literal>boot.blacklistedKernelModules</literal> now also take
+          effect in the initrd by copying the file
+          <literal>/etc/modprobe.d/nixos.conf</literal> into the initrd.
         </para>
       </listitem>
       <listitem>
@@ -1282,6 +1498,52 @@
       </listitem>
       <listitem>
         <para>
+          ORY Kratos was updated to version 0.8.3-alpha.1.pre.0, which
+          introduces some breaking changes:
+        </para>
+        <itemizedlist spacing="compact">
+          <listitem>
+            <para>
+              If you are relying on the SQLite images, update your
+              Docker Pull commands as follows:
+            </para>
+            <itemizedlist spacing="compact">
+              <listitem>
+                <para>
+                  <literal>docker pull oryd/kratos:{version}</literal>
+                </para>
+              </listitem>
+            </itemizedlist>
+          </listitem>
+          <listitem>
+            <para>
+              Additionally, all passwords now have to be at least 8
+              characters long.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              For more details, see:
+            </para>
+            <itemizedlist spacing="compact">
+              <listitem>
+                <para>
+                  <link xlink:href="https://github.com/ory/kratos/releases/tag/v0.8.1-alpha.1">Release
+                  Notes for v0.8.1-alpha-1</link>
+                </para>
+              </listitem>
+              <listitem>
+                <para>
+                  <link xlink:href="https://github.com/ory/kratos/releases/tag/v0.8.2-alpha.1">Release
+                  Notes for v0.8.2-alpha-1</link>
+                </para>
+              </listitem>
+            </itemizedlist>
+          </listitem>
+        </itemizedlist>
+      </listitem>
+      <listitem>
+        <para>
           <literal>fetchFromSourcehut</literal> now allows fetching
           repositories recursively using <literal>fetchgit</literal> or
           <literal>fetchhg</literal> if the argument
@@ -1414,6 +1676,12 @@
       </listitem>
       <listitem>
         <para>
+          <literal>services.autorandr</literal> now allows for adding
+          hooks and profiles declaratively.
+        </para>
+      </listitem>
+      <listitem>
+        <para>
           The <literal>pomerium-cli</literal> command has been moved out
           of the <literal>pomerium</literal> package into the
           <literal>pomerium-cli</literal> package, following upstream’s
@@ -1450,6 +1718,52 @@
           desktop environments as needed.
         </para>
       </listitem>
+      <listitem>
+        <para>
+          The <literal>hadoop</literal> package has added support for
+          <literal>aarch64-linux</literal> and
+          <literal>aarch64-darwin</literal> as of 3.3.1
+          (<link xlink:href="https://github.com/NixOS/nixpkgs/pull/158613">#158613</link>).
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          The <literal>R</literal> package now builds again on
+          <literal>aarch64-darwin</literal>
+          (<link xlink:href="https://github.com/NixOS/nixpkgs/pull/158992">#158992</link>).
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          The <literal>spark3</literal> package has been updated from
+          3.1.2 to 3.2.1
+          (<link xlink:href="https://github.com/NixOS/nixpkgs/pull/160075">#160075</link>):
+        </para>
+        <itemizedlist spacing="compact">
+          <listitem>
+            <para>
+              Testing has been enabled for
+              <literal>aarch64-linux</literal> in addition to
+              <literal>x86_64-linux</literal>.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              The <literal>spark3</literal> package is now usable on
+              <literal>aarch64-darwin</literal> as a result of
+              <link xlink:href="https://github.com/NixOS/nixpkgs/pull/158613">#158613</link>
+              and
+              <link xlink:href="https://github.com/NixOS/nixpkgs/pull/158992">#158992</link>.
+            </para>
+          </listitem>
+        </itemizedlist>
+      </listitem>
+      <listitem>
+        <para>
+          The <literal>programs.nncp</literal> options were added for
+          generating host-global NNCP configuration.
+        </para>
+      </listitem>
     </itemizedlist>
   </section>
 </section>
diff --git a/nixpkgs/nixos/doc/manual/man-nixos-rebuild.xml b/nixpkgs/nixos/doc/manual/man-nixos-rebuild.xml
index ab2a5d83a089..b2ca9f457a2b 100644
--- a/nixpkgs/nixos/doc/manual/man-nixos-rebuild.xml
+++ b/nixpkgs/nixos/doc/manual/man-nixos-rebuild.xml
@@ -92,6 +92,10 @@
    </arg>
 
    <arg>
+    <option>--no-flake</option>
+   </arg>
+
+   <arg>
     <option>--override-input</option> <replaceable>input-name</replaceable> <replaceable>flake-uri</replaceable>
    </arg>
 
@@ -594,6 +598,20 @@
     </listitem>
    </varlistentry>
 
+   <varlistentry>
+    <term>
+     <option>--no-flake</option>
+    </term>
+    <listitem>
+     <para>
+      Do not imply <option>--flake</option> if
+      <filename>/etc/nixos/flake.nix</filename> exists. With this
+      option, it is possible to build non-flake NixOS configurations
+      even if the current NixOS systems uses flakes.
+     </para>
+    </listitem>
+   </varlistentry>
+
   </variablelist>
 
   <para>
diff --git a/nixpkgs/nixos/doc/manual/release-notes/rl-2205.section.md b/nixpkgs/nixos/doc/manual/release-notes/rl-2205.section.md
index 2f730de737c0..7cafdcabbaaf 100644
--- a/nixpkgs/nixos/doc/manual/release-notes/rl-2205.section.md
+++ b/nixpkgs/nixos/doc/manual/release-notes/rl-2205.section.md
@@ -6,11 +6,17 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 ## Highlights {#sec-release-22.05-highlights}
 
+- The `firefox` browser on `x86_64-linux` is now making use of
+  profile-guided optimization resulting in a much more responsive
+  browsing experience.
+
 - `security.acme.defaults` has been added to simplify configuring
   settings for many certificates at once. This also opens up the
   the option to use DNS-01 validation when using `enableACME` on
   web server virtual hosts (e.g. `services.nginx.virtualHosts.*.enableACME`).
 
+- GNOME has been upgraded to 42. Please take a look at their [Release Notes](https://release.gnome.org/42/) for details. Notably, it replaces gedit with GNOME Text Editor, GNOME Terminal with GNOME Console (formerly King’s Cross), and GNOME Screenshot with a tool built into the Shell.
+
 - PHP 8.1 is now available
 
 - Mattermost has been updated to extended support release 6.3, as the previously packaged extended support release 5.37 is [reaching its end of life](https://docs.mattermost.com/upgrade/extended-support-release.html).
@@ -21,6 +27,8 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - [`kops`](https://kops.sigs.k8s.io) defaults to 1.22.4, which will enable [Instance Metadata Service Version 2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html) and require tokens on new clusters with Kubernetes 1.22. This will increase security by default, but may break some types of workloads. See the [release notes](https://kops.sigs.k8s.io/releases/1.22-notes/) for details.
 
+- Module authors can use `mkRenamedOptionModuleWith` to automate the deprecation cycle without annoying out-of-tree module authors and their users.
+
 ## New Services {#sec-release-22.05-new-services}
 
 - [aesmd](https://github.com/intel/linux-sgx#install-the-intelr-sgx-psw), the Intel SGX Architectural Enclave Service Manager. Available as [services.aesmd](#opt-services.aesmd.enable).
@@ -33,7 +41,7 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - [apfs](https://github.com/linux-apfs/linux-apfs-rw), a kernel module for mounting the Apple File System (APFS).
 
-- [FRRouting](https://frrouting.org/), a popular suite of Internet routing protocol daemons (BGP, BFD, OSPF, IS-IS, VVRP and others). Available as [services.frr](#opt-services.frr.babel.enable)
+- [FRRouting](https://frrouting.org/), a popular suite of Internet routing protocol daemons (BGP, BFD, OSPF, IS-IS, VRRP and others). Available as [services.frr](#opt-services.frr.babel.enable)
 
 - [heisenbridge](https://github.com/hifi/heisenbridge), a bouncer-style Matrix IRC bridge. Available as [services.heisenbridge](options.html#opt-services.heisenbridge.enable).
 
@@ -79,6 +87,8 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - [nbd](https://nbd.sourceforge.io/), a Network Block Device server. Available as [services.nbd](options.html#opt-services.nbd.server.enable).
 
+- [nix-ld](https://github.com/Mic92/nix-ld), Run unpatched dynamic binaries on NixOS. Available as [programs.nix-ld](options.html#opt-programs.nix-ld.enable).
+
 - [timetagger](https://timetagger.app), an open source time-tracker with an intuitive user experience and powerful reporting. [services.timetagger](options.html#opt-services.timetagger.enable).
 
 - [rstudio-server](https://www.rstudio.com/products/rstudio/#rstudio-server), a browser-based version of the RStudio IDE for the R programming language. Available as [services.rstudio-server](options.html#opt-services.rstudio-server.enable).
@@ -87,6 +97,8 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - [blocky](https://0xerr0r.github.io/blocky/), fast and lightweight DNS proxy as ad-blocker for local network with many features.
 
+- [pacemaker](https://clusterlabs.org/pacemaker/) cluster resource manager
+
 <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
 
 ## Backward Incompatibilities {#sec-release-22.05-incompatibilities}
@@ -151,11 +163,16 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - The `mailpile` email webclient (`services.mailpile`) has been removed due to its reliance on python2.
 
+- `services.ipfs.extraFlags` is now escaped with `utils.escapeSystemdExecArgs`. If you rely on systemd interpolating `extraFlags` in the service `ExecStart`, this will no longer work.
+
 - The `matrix-synapse` service (`services.matrix-synapse`) has been converted to use the `settings` option defined in RFC42.
   This means that options that are part of your `homeserver.yaml` configuration, and that were specified at the top-level of the
   module (`services.matrix-synapse`) now need to be moved into `services.matrix-synapse.settings`. And while not all options you
   may use are defined in there, they are still supported, because you can set arbitrary values in this freeform type.
 
+  The `listeners.*.bind_address` option was renamed to `bind_addresses` in order to match the upstream `homeserver.yaml` option
+  name. It is now also a list of strings instead of a string.
+
   An example to make the required migration clearer:
 
   Before:
@@ -213,7 +230,7 @@ In addition to numerous new and upgraded packages, this release has the followin
 
         listeners = [ {
           port = 8448;
-          bind_address = [
+          bind_addresses = [
             "::"
             "0.0.0.0"
           ];
@@ -238,10 +255,20 @@ In addition to numerous new and upgraded packages, this release has the followin
 
   The secrets in your original config should be migrated into a YAML file that is included via `extraConfigFiles`.
 
-  Additionally a few option defaults have been synced up with upstream default values, for example the `max_upload_size` grew from `10M` to `50M`.
+  Additionally a few option defaults have been synced up with upstream default values, for example the `max_upload_size` grew from `10M` to `50M`. For the same reason, the default
+  `media_store_path` was changed from `${dataDir}/media` to `${dataDir}/media_store` if `system.stateVersion` is at least `22.05`. Files will need to be manually moved to the new
+  location if the `stateVersion` is updated.
 
 - The MoinMoin wiki engine (`services.moinmoin`) has been removed, because Python 2 is being retired from nixpkgs.
 
+- Services in the `hadoop` module previously set `openFirewall` to true by default.
+  This has now been changed to false. Node definitions for multi-node clusters would need
+  `openFirewall = true;` to be added to to hadoop services when upgrading from NixOS 21.11.
+
+- `services.hadoop.yarn.nodemanager` now uses cgroup-based CPU limit enforcement by default.
+  Additionally, the option `useCGroups` was added to nodemanagers as an easy way to switch
+  back to the old behavior.
+
 - The `wafHook` hook now honors `NIX_BUILD_CORES` when `enableParallelBuilding` is not set explicitly. Packages can restore the old behaviour by setting `enableParallelBuilding=false`.
 
 - `pkgs.claws-mail-gtk2`, representing Claws Mail's older release version three, was removed in order to get rid of Python 2.
@@ -254,6 +281,10 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - The `gnome-passwordsafe` package updated to [version 6.x](https://gitlab.gnome.org/World/secrets/-/tags/6.0) and renamed to `gnome-secrets`.
 
+- `services.gnome.experimental-features.realtime-scheduling` option has been removed, as GNOME Shell now [uses rtkit](https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2060). Use `security.rtkit.enable = true;` instead. As before, you will need to have it enabled using GSettings.
+
+- `services.telepathy` will no longer be enabled by default for GNOME desktops, one should enable it in their configs if using Empathy or Polari.
+
 - If you previously used `/etc/docker/daemon.json`, you need to incorporate the changes into the new option `virtualisation.docker.daemon.settings`.
 
 - Ntopng (`services.ntopng`) is updated to 5.2.1 and uses a separate Redis instance if `system.stateVersion` is at least `22.05`. Existing setups shouldn't be affected.
@@ -294,6 +325,17 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - `pkgs.docbookrx` was removed since it's unmaintained
 
+- `pkgs._7zz` is now correctly licensed as LGPL3+ and BSD3 with optional unfree unRAR licensed code
+
+- The `vim.customize` function produced by `vimUtils.makeCustomizable` now has a slightly different interface:
+  * The wrapper now includes everything in the given Vim derivation if `name` is `"vim"` (the default). This makes the `wrapManual` argument obsolete, but this behavior can be overriden by setting the `standalone` argument.
+  * All the executables present in the given derivation (or, in `standalone` mode, only the `*vim` ones) are wrapped. This makes the `wrapGui` argument obsolete.
+  * The `vimExecutableName` and `gvimExecutableName` arguments were replaced by a single `executableName` argument in which the shell variable `$exe` can be used to refer to the wrapped executable's name.
+
+  See the comments in `pkgs/applications/editors/vim/plugins/vim-utils.nix` for more details.
+
+  `vimUtils.vimWithRC` was removed. You should instead use `customize` on a Vim derivation, which now accepts `vimrcFile` and `gvimrcFile` arguments.
+
 - `tilp2` was removed together with its module
 
 - The F-PROT antivirus (`fprot` package) and its service module were removed because it
@@ -303,10 +345,14 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - The options `networking.interfaces.<name>.ipv4.routes` and `networking.interfaces.<name>.ipv6.routes` are no longer ignored when using networkd instead of the default scripted network backend by setting `networking.useNetworkd` to `true`.
 
+- The `miller` package has been upgraded from 5.10.3 to [6.2.0](https://github.com/johnkerl/miller/releases/tag/v6.2.0). See [What's new in Miller 6](https://miller.readthedocs.io/en/latest/new-in-miller-6).
+
 - MultiMC has been replaced with the fork PolyMC due to upstream developers being hostile to 3rd party package maintainers. PolyMC removes all MultiMC branding and is aimed at providing proper 3rd party packages like the one contained in Nixpkgs. This change affects the data folder where game instances and other save and configuration files are stored. Users with existing installations should rename `~/.local/share/multimc` to `~/.local/share/polymc`. The main config file's path has also moved from `~/.local/share/multimc/multimc.cfg` to `~/.local/share/polymc/polymc.cfg`.
 
 - `systemd-nspawn@.service` settings have been reverted to the default systemd behaviour. User namespaces are now activated by default. If you want to keep running nspawn containers without user namespaces you need to set `systemd.nspawn.<name>.execConfig.PrivateUsers = false`
 
+- The Tor SOCKS proxy is now actually disabled if `services.tor.client.enable` is set to `false` (the default). If you are using this functionality but didn't change the setting or set it to `false`, you now need to set it to `true`.
+
 - The terraform 0.12 compatibility has been removed and the `terraform.withPlugins` and `terraform-providers.mkProvider` implementations simplified. Providers now need to be stored under
 `$out/libexec/terraform-providers/<registry>/<owner>/<name>/<version>/<os>_<arch>/terraform-provider-<name>_v<version>` (which mkProvider does).
 
@@ -429,11 +475,16 @@ In addition to numerous new and upgraded packages, this release has the followin
   Similarly [virtualisation.vmVariantWithBootloader](#opt-virtualisation.vmVariantWithBootLoader) was added.
 
 - The configuration portion of the `nix-daemon` module has been reworked and exposed as [nix.settings](options.html#opt-nix-settings):
-  * Legacy options have been mapped to the corresponding options under under [nix.settings](options.html#opt-nix.settings) but may be deprecated in the future.
+  * Legacy options have been mapped to the corresponding options under under [nix.settings](options.html#opt-nix.settings) and will be deprecated when NixOS 21.11 reaches end of life.
   * [nix.buildMachines.publicHostKey](options.html#opt-nix.buildMachines.publicHostKey) has been added.
 
 - The `writers.writePyPy2`/`writers.writePyPy3` and corresponding `writers.writePyPy2Bin`/`writers.writePyPy3Bin` convenience functions to create executable Python 2/3 scripts using the PyPy interpreter were added.
 
+- Some improvements have been made to the `hadoop` module:
+  - A `gatewayRole` option has been added, for deploying hadoop cluster configuration files to a node that does not have any active services
+  - Support for older versions of hadoop have been added to the module
+  - Overriding and extending site XML files has been made easier
+
 - If you are using Wayland you can choose to use the Ozone Wayland support
   in Chrome and several Electron apps by setting the environment variable
   `NIXOS_OZONE_WL=1` (for example via
@@ -447,11 +498,17 @@ In addition to numerous new and upgraded packages, this release has the followin
   combined `influxdb2` package is still provided in this release for
   backwards compatibilty, but will be removed at a later date.
 
+- The `unifi` package was switched from `unifi6` to `unifi7`.
+  Direct downgrades from Unifi 7 to Unifi 6 are not possible and require restoring from a backup made by Unifi 6.
+
 - `programs.zsh.autosuggestions.strategy` now takes a list of strings instead of a string.
 
 - The `services.unifi.openPorts` option default value of `true` is now deprecated and will be changed to `false` in 22.11.
   Configurations using this default will print a warning when rebuilt.
 
+- The `services.unifi-video.openPorts` option default value of `true` is now deprecated and will be changed to `false` in 22.11.
+  Configurations using this default will print a warning when rebuilt.
+
 - `security.acme` certificates will now correctly check for CA
   revokation before reaching their minimum age.
 
@@ -476,10 +533,18 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - The option `services.duplicati.dataDir` has been added to allow changing the location of duplicati's files.
 
-- A new option `boot.initrd.extraModprobeConfig` has been added which can be used to configure kernel modules that are loaded in the initrd.
+- The options `boot.extraModprobeConfig` and `boot.blacklistedKernelModules` now also take effect in the initrd by copying the file `/etc/modprobe.d/nixos.conf` into the initrd.
 
 - `nixos-generate-config` now puts the dhcp configuration in `hardware-configuration.nix` instead of `configuration.nix`.
 
+- ORY Kratos was updated to version 0.8.3-alpha.1.pre.0, which introduces some breaking changes:
+  - If you are relying on the SQLite images, update your Docker Pull commands as follows:
+    - `docker pull oryd/kratos:{version}`
+  - Additionally, all passwords now have to be at least 8 characters long.
+  - For more details, see:
+    - [Release Notes for v0.8.1-alpha-1](https://github.com/ory/kratos/releases/tag/v0.8.1-alpha.1)
+    - [Release Notes for v0.8.2-alpha-1](https://github.com/ory/kratos/releases/tag/v0.8.2-alpha.1)
+
 - `fetchFromSourcehut` now allows fetching repositories recursively
   using `fetchgit` or `fetchhg` if the argument `fetchSubmodules`
   is set to `true`.
@@ -520,6 +585,8 @@ In addition to numerous new and upgraded packages, this release has the followin
   Reason is that the old name has been deprecated upstream.
   Using the old option name will still work, but produce a warning.
 
+- `services.autorandr` now allows for adding hooks and profiles declaratively.
+
 - The `pomerium-cli` command has been moved out of the `pomerium` package into
   the `pomerium-cli` package, following upstream's repository split. If you are
   using the `pomerium-cli` command, you should now install the `pomerium-cli`
@@ -535,4 +602,15 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - The polkit service, available at `security.polkit.enable`, is now disabled by default. It will automatically be enabled through services and desktop environments as needed.
 
+- The `hadoop` package has added support for `aarch64-linux` and `aarch64-darwin` as of 3.3.1 ([#158613](https://github.com/NixOS/nixpkgs/pull/158613)).
+
+- The `R` package now builds again on `aarch64-darwin` ([#158992](https://github.com/NixOS/nixpkgs/pull/158992)).
+
+- The `spark3` package has been updated from 3.1.2 to 3.2.1 ([#160075](https://github.com/NixOS/nixpkgs/pull/160075)):
+
+  - Testing has been enabled for `aarch64-linux` in addition to `x86_64-linux`.
+  - The `spark3` package is now usable on `aarch64-darwin` as a result of [#158613](https://github.com/NixOS/nixpkgs/pull/158613) and [#158992](https://github.com/NixOS/nixpkgs/pull/158992).
+
+- The `programs.nncp` options were added for generating host-global NNCP configuration.
+
 <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
diff --git a/nixpkgs/nixos/lib/make-options-doc/mergeJSON.py b/nixpkgs/nixos/lib/make-options-doc/mergeJSON.py
index 029787a31586..8e2ea322dc89 100644
--- a/nixpkgs/nixos/lib/make-options-doc/mergeJSON.py
+++ b/nixpkgs/nixos/lib/make-options-doc/mergeJSON.py
@@ -66,14 +66,21 @@ for (k, v) in overrides.items():
         elif ov is not None or cur.get(ok, None) is None:
             cur[ok] = ov
 
+severity = "error" if warningsAreErrors else "warning"
+
 # check that every option has a description
 hasWarnings = False
 for (k, v) in options.items():
     if v.value.get('description', None) is None:
-        severity = "error" if warningsAreErrors else "warning"
         hasWarnings = True
         print(f"\x1b[1;31m{severity}: option {v.name} has no description\x1b[0m", file=sys.stderr)
         v.value['description'] = "This option has no description."
+    if v.value.get('type', "unspecified") == "unspecified":
+        hasWarnings = True
+        print(
+            f"\x1b[1;31m{severity}: option {v.name} has no type. Please specify a valid type, see " +
+            "https://nixos.org/manual/nixos/stable/index.html#sec-option-types\x1b[0m", file=sys.stderr)
+
 if hasWarnings and warningsAreErrors:
     print(
         "\x1b[1;31m" +
diff --git a/nixpkgs/nixos/lib/systemd-lib.nix b/nixpkgs/nixos/lib/systemd-lib.nix
index ab166d7327ce..37900b0b16f6 100644
--- a/nixpkgs/nixos/lib/systemd-lib.nix
+++ b/nixpkgs/nixos/lib/systemd-lib.nix
@@ -5,6 +5,7 @@ with lib;
 let
   cfg = config.systemd;
   lndir = "${pkgs.buildPackages.xorg.lndir}/bin/lndir";
+  systemd = cfg.package;
 in rec {
 
   shellEscape = s: (replaceChars [ "\\" ] [ "\\\\" ] s);
@@ -22,8 +23,9 @@ in rec {
           inherit (unit) text;
         }
         ''
-          mkdir -p $out
-          echo -n "$text" > $out/${shellEscape name}
+          name=${shellEscape name}
+          mkdir -p "$out/$(dirname "$name")"
+          echo -n "$text" > "$out/$name"
         ''
     else
       pkgs.runCommand "unit-${mkPathSafeName name}-disabled"
@@ -31,8 +33,9 @@ in rec {
           allowSubstitutes = false;
         }
         ''
-          mkdir -p $out
-          ln -s /dev/null $out/${shellEscape name}
+          name=${shellEscape name}
+          mkdir -p "$out/$(dirname "$name")"
+          ln -s /dev/null "$out/$name"
         '';
 
   boolValues = [true false "yes" "no"];
@@ -235,4 +238,205 @@ in rec {
       ''}
     ''; # */
 
+  makeJobScript = name: text:
+    let
+      scriptName = replaceChars [ "\\" "@" ] [ "-" "_" ] (shellEscape name);
+      out = (pkgs.writeShellScriptBin scriptName ''
+        set -e
+        ${text}
+      '').overrideAttrs (_: {
+        # The derivation name is different from the script file name
+        # to keep the script file name short to avoid cluttering logs.
+        name = "unit-script-${scriptName}";
+      });
+    in "${out}/bin/${scriptName}";
+
+  unitConfig = { config, options, ... }: {
+    config = {
+      unitConfig =
+        optionalAttrs (config.requires != [])
+          { Requires = toString config.requires; }
+        // optionalAttrs (config.wants != [])
+          { Wants = toString config.wants; }
+        // optionalAttrs (config.after != [])
+          { After = toString config.after; }
+        // optionalAttrs (config.before != [])
+          { Before = toString config.before; }
+        // optionalAttrs (config.bindsTo != [])
+          { BindsTo = toString config.bindsTo; }
+        // optionalAttrs (config.partOf != [])
+          { PartOf = toString config.partOf; }
+        // optionalAttrs (config.conflicts != [])
+          { Conflicts = toString config.conflicts; }
+        // optionalAttrs (config.requisite != [])
+          { Requisite = toString config.requisite; }
+        // optionalAttrs (config.restartTriggers != [])
+          { X-Restart-Triggers = toString config.restartTriggers; }
+        // optionalAttrs (config.reloadTriggers != [])
+          { X-Reload-Triggers = toString config.reloadTriggers; }
+        // optionalAttrs (config.description != "") {
+          Description = config.description; }
+        // optionalAttrs (config.documentation != []) {
+          Documentation = toString config.documentation; }
+        // optionalAttrs (config.onFailure != []) {
+          OnFailure = toString config.onFailure; }
+        // optionalAttrs (options.startLimitIntervalSec.isDefined) {
+          StartLimitIntervalSec = toString config.startLimitIntervalSec;
+        } // optionalAttrs (options.startLimitBurst.isDefined) {
+          StartLimitBurst = toString config.startLimitBurst;
+        };
+    };
+  };
+
+  serviceConfig = { name, config, ... }: {
+    config = mkMerge
+      [ { # Default path for systemd services.  Should be quite minimal.
+          path = mkAfter
+            [ pkgs.coreutils
+              pkgs.findutils
+              pkgs.gnugrep
+              pkgs.gnused
+              systemd
+            ];
+          environment.PATH = "${makeBinPath config.path}:${makeSearchPathOutput "bin" "sbin" config.path}";
+        }
+        (mkIf (config.preStart != "")
+          { serviceConfig.ExecStartPre =
+              [ (makeJobScript "${name}-pre-start" config.preStart) ];
+          })
+        (mkIf (config.script != "")
+          { serviceConfig.ExecStart =
+              makeJobScript "${name}-start" config.script + " " + config.scriptArgs;
+          })
+        (mkIf (config.postStart != "")
+          { serviceConfig.ExecStartPost =
+              [ (makeJobScript "${name}-post-start" config.postStart) ];
+          })
+        (mkIf (config.reload != "")
+          { serviceConfig.ExecReload =
+              makeJobScript "${name}-reload" config.reload;
+          })
+        (mkIf (config.preStop != "")
+          { serviceConfig.ExecStop =
+              makeJobScript "${name}-pre-stop" config.preStop;
+          })
+        (mkIf (config.postStop != "")
+          { serviceConfig.ExecStopPost =
+              makeJobScript "${name}-post-stop" config.postStop;
+          })
+      ];
+  };
+
+  mountConfig = { config, ... }: {
+    config = {
+      mountConfig =
+        { What = config.what;
+          Where = config.where;
+        } // optionalAttrs (config.type != "") {
+          Type = config.type;
+        } // optionalAttrs (config.options != "") {
+          Options = config.options;
+        };
+    };
+  };
+
+  automountConfig = { config, ... }: {
+    config = {
+      automountConfig =
+        { Where = config.where;
+        };
+    };
+  };
+
+  commonUnitText = def: ''
+      [Unit]
+      ${attrsToSection def.unitConfig}
+    '';
+
+  targetToUnit = name: def:
+    { inherit (def) aliases wantedBy requiredBy enable;
+      text =
+        ''
+          [Unit]
+          ${attrsToSection def.unitConfig}
+        '';
+    };
+
+  serviceToUnit = name: def:
+    { inherit (def) aliases wantedBy requiredBy enable;
+      text = commonUnitText def +
+        ''
+          [Service]
+          ${let env = cfg.globalEnvironment // def.environment;
+            in concatMapStrings (n:
+              let s = optionalString (env.${n} != null)
+                "Environment=${builtins.toJSON "${n}=${env.${n}}"}\n";
+              # systemd max line length is now 1MiB
+              # https://github.com/systemd/systemd/commit/e6dde451a51dc5aaa7f4d98d39b8fe735f73d2af
+              in if stringLength s >= 1048576 then throw "The value of the environment variable ‘${n}’ in systemd service ‘${name}.service’ is too long." else s) (attrNames env)}
+          ${if def.reloadIfChanged then ''
+            X-ReloadIfChanged=true
+          '' else if !def.restartIfChanged then ''
+            X-RestartIfChanged=false
+          '' else ""}
+          ${optionalString (!def.stopIfChanged) "X-StopIfChanged=false"}
+          ${attrsToSection def.serviceConfig}
+        '';
+    };
+
+  socketToUnit = name: def:
+    { inherit (def) aliases wantedBy requiredBy enable;
+      text = commonUnitText def +
+        ''
+          [Socket]
+          ${attrsToSection def.socketConfig}
+          ${concatStringsSep "\n" (map (s: "ListenStream=${s}") def.listenStreams)}
+          ${concatStringsSep "\n" (map (s: "ListenDatagram=${s}") def.listenDatagrams)}
+        '';
+    };
+
+  timerToUnit = name: def:
+    { inherit (def) aliases wantedBy requiredBy enable;
+      text = commonUnitText def +
+        ''
+          [Timer]
+          ${attrsToSection def.timerConfig}
+        '';
+    };
+
+  pathToUnit = name: def:
+    { inherit (def) aliases wantedBy requiredBy enable;
+      text = commonUnitText def +
+        ''
+          [Path]
+          ${attrsToSection def.pathConfig}
+        '';
+    };
+
+  mountToUnit = name: def:
+    { inherit (def) aliases wantedBy requiredBy enable;
+      text = commonUnitText def +
+        ''
+          [Mount]
+          ${attrsToSection def.mountConfig}
+        '';
+    };
+
+  automountToUnit = name: def:
+    { inherit (def) aliases wantedBy requiredBy enable;
+      text = commonUnitText def +
+        ''
+          [Automount]
+          ${attrsToSection def.automountConfig}
+        '';
+    };
+
+  sliceToUnit = name: def:
+    { inherit (def) aliases wantedBy requiredBy enable;
+      text = commonUnitText def +
+        ''
+          [Slice]
+          ${attrsToSection def.sliceConfig}
+        '';
+    };
 }
diff --git a/nixpkgs/nixos/lib/test-driver/test_driver/driver.py b/nixpkgs/nixos/lib/test-driver/test_driver/driver.py
index 880b1c5fdec0..0e5f013193fe 100644
--- a/nixpkgs/nixos/lib/test-driver/test_driver/driver.py
+++ b/nixpkgs/nixos/lib/test-driver/test_driver/driver.py
@@ -55,6 +55,7 @@ class Driver:
         tmp_dir = get_tmp_dir()
 
         with rootlog.nested("start all VLans"):
+            vlans = list(set(vlans))
             self.vlans = [VLan(nr, tmp_dir) for nr in vlans]
 
         def cmd(scripts: List[str]) -> Iterator[NixStartScript]:
diff --git a/nixpkgs/nixos/lib/test-driver/test_driver/machine.py b/nixpkgs/nixos/lib/test-driver/test_driver/machine.py
index 569a0f3c61e4..f3e615fe5bf9 100644
--- a/nixpkgs/nixos/lib/test-driver/test_driver/machine.py
+++ b/nixpkgs/nixos/lib/test-driver/test_driver/machine.py
@@ -198,7 +198,7 @@ class StartCommand:
     ) -> subprocess.Popen:
         return subprocess.Popen(
             self.cmd(monitor_socket_path, shell_socket_path),
-            stdin=subprocess.DEVNULL,
+            stdin=subprocess.PIPE,
             stdout=subprocess.PIPE,
             stderr=subprocess.STDOUT,
             shell=True,
@@ -558,6 +558,28 @@ class Machine:
             pass_fds=[self.shell.fileno()],
         )
 
+    def console_interact(self) -> None:
+        """Allows you to interact with QEMU's stdin
+
+        The shell can be exited with Ctrl+D. Note that Ctrl+C is not allowed to be used.
+        QEMU's stdout is read line-wise.
+
+        Should only be used during test development, not in the production test."""
+        self.log("Terminal is ready (there is no prompt):")
+
+        assert self.process
+        assert self.process.stdin
+
+        while True:
+            try:
+                char = sys.stdin.buffer.read(1)
+            except KeyboardInterrupt:
+                break
+            if char == b"":  # ctrl+d
+                self.log("Closing connection to the console")
+                break
+            self.send_console(char.decode())
+
     def succeed(self, *commands: str, timeout: Optional[int] = None) -> str:
         """Execute each command and check that it succeeds."""
         output = ""
@@ -834,6 +856,12 @@ class Machine:
         self.send_monitor_command("sendkey {}".format(key))
         time.sleep(0.01)
 
+    def send_console(self, chars: str) -> None:
+        assert self.process
+        assert self.process.stdin
+        self.process.stdin.write(chars.encode())
+        self.process.stdin.flush()
+
     def start(self) -> None:
         if self.booted:
             return
diff --git a/nixpkgs/nixos/lib/testing-python.nix b/nixpkgs/nixos/lib/testing-python.nix
index 0d3c3a89e783..facc7a253a75 100644
--- a/nixpkgs/nixos/lib/testing-python.nix
+++ b/nixpkgs/nixos/lib/testing-python.nix
@@ -146,26 +146,28 @@ rec {
 
   # Make a full-blown test
   makeTest =
-    { testScript
+    { machine ? null
+    , nodes ? {}
+    , testScript
     , enableOCR ? false
     , name ? "unnamed"
       # Skip linting (mainly intended for faster dev cycles)
     , skipLint ? false
     , passthru ? {}
+    , meta ? {}
     , # For meta.position
       pos ? # position used in error messages and for meta.position
-        (if t.meta.description or null != null
-          then builtins.unsafeGetAttrPos "description" t.meta
+        (if meta.description or null != null
+          then builtins.unsafeGetAttrPos "description" meta
           else builtins.unsafeGetAttrPos "testScript" t)
-    , ...
     } @ t:
     let
-      nodes = qemu_pkg:
+      mkNodes = qemu_pkg:
         let
           testScript' =
             # Call the test script with the computed nodes.
             if lib.isFunction testScript
-            then testScript { nodes = nodes qemu_pkg; }
+            then testScript { nodes = mkNodes qemu_pkg; }
             else testScript;
 
           build-vms = import ./build-vms.nix {
@@ -205,33 +207,29 @@ rec {
           };
         in
           build-vms.buildVirtualNetwork (
-              t.nodes or (if t ? machine then { machine = t.machine; } else { })
+              nodes // lib.optionalAttrs (machine != null) { inherit machine; }
           );
 
       driver = setupDriverForTest {
         inherit testScript enableOCR skipLint passthru;
         testName = name;
         qemu_pkg = pkgs.qemu_test;
-        nodes = nodes pkgs.qemu_test;
+        nodes = mkNodes pkgs.qemu_test;
       };
       driverInteractive = setupDriverForTest {
         inherit testScript enableOCR skipLint passthru;
         testName = name;
         qemu_pkg = pkgs.qemu;
-        nodes = nodes pkgs.qemu;
+        nodes = mkNodes pkgs.qemu;
         interactive = true;
       };
 
-      test =
-        let
-          passMeta = drv: drv // lib.optionalAttrs (t ? meta) {
-            meta = (drv.meta or { }) // t.meta;
-          };
-        in passMeta (runTests { inherit driver pos driverInteractive; });
+      test = lib.addMetaAttrs meta (runTests { inherit driver pos driverInteractive; });
 
     in
       test // {
-        inherit test driver driverInteractive nodes;
+        inherit test driver driverInteractive;
+        inherit (driver) nodes;
       };
 
   abortForFunction = functionName: abort ''The ${functionName} function was
diff --git a/nixpkgs/nixos/modules/config/resolvconf.nix b/nixpkgs/nixos/modules/config/resolvconf.nix
index cd0ed491383c..4499481811fd 100644
--- a/nixpkgs/nixos/modules/config/resolvconf.nix
+++ b/nixpkgs/nixos/modules/config/resolvconf.nix
@@ -47,8 +47,8 @@ in
 
       enable = mkOption {
         type = types.bool;
-        default = false;
-        internal = true;
+        default = !(config.environment.etc ? "resolv.conf");
+        defaultText = literalExpression ''!(config.environment.etc ? "resolv.conf")'';
         description = ''
           DNS configuration is managed by resolvconf.
         '';
@@ -110,8 +110,6 @@ in
 
   config = mkMerge [
     {
-      networking.resolvconf.enable = !(config.environment.etc ? "resolv.conf");
-
       environment.etc."resolvconf.conf".text =
         if !cfg.enable then
           # Force-stop any attempts to use resolvconf
diff --git a/nixpkgs/nixos/modules/hardware/video/nvidia.nix b/nixpkgs/nixos/modules/hardware/video/nvidia.nix
index a81220a92a1b..6de5b99a1ee6 100644
--- a/nixpkgs/nixos/modules/hardware/video/nvidia.nix
+++ b/nixpkgs/nixos/modules/hardware/video/nvidia.nix
@@ -244,7 +244,7 @@ in
       modules = optional (igpuDriver == "amdgpu") [ pkgs.xorg.xf86videoamdgpu ];
       deviceSection = ''
         BusID "${igpuBusId}"
-        ${optionalString syncCfg.enable ''Option "AccelMethod" "none"''}
+        ${optionalString (syncCfg.enable && igpuDriver != "amdgpu") ''Option "AccelMethod" "none"''}
       '';
     } ++ singleton {
       name = "nvidia";
@@ -269,9 +269,15 @@ in
       Option "AllowNVIDIAGPUScreens"
     '';
 
-    services.xserver.displayManager.setupCommands = optionalString syncCfg.enable ''
+    services.xserver.displayManager.setupCommands = let
+      sinkGpuProviderName = if igpuDriver == "amdgpu" then
+        # find the name of the provider if amdgpu
+        "`${pkgs.xorg.xrandr}/bin/xrandr --listproviders | ${pkgs.gnugrep}/bin/grep -i AMD | ${pkgs.gnused}/bin/sed -n 's/^.*name://p'`"
+      else
+        igpuDriver;
+    in optionalString syncCfg.enable ''
       # Added by nvidia configuration module for Optimus/PRIME.
-      ${pkgs.xorg.xrandr}/bin/xrandr --setprovideroutputsource ${igpuDriver} NVIDIA-0
+      ${pkgs.xorg.xrandr}/bin/xrandr --setprovideroutputsource "${sinkGpuProviderName}" NVIDIA-0
       ${pkgs.xorg.xrandr}/bin/xrandr --auto
     '';
 
@@ -283,14 +289,14 @@ in
     environment.etc."egl/egl_external_platform.d".source =
       "/run/opengl-driver/share/egl/egl_external_platform.d/";
 
-    hardware.opengl.package = mkIf (!offloadCfg.enable) nvidia_x11.out;
-    hardware.opengl.package32 = mkIf (!offloadCfg.enable) nvidia_x11.lib32;
     hardware.opengl.extraPackages = [
+      nvidia_x11.out
       pkgs.nvidia-vaapi-driver
-    ] ++ optional offloadCfg.enable nvidia_x11.out;
+    ];
     hardware.opengl.extraPackages32 = [
+      nvidia_x11.lib32
       pkgs.pkgsi686Linux.nvidia-vaapi-driver
-    ] ++ optional offloadCfg.enable nvidia_x11.lib32;
+    ];
 
     environment.systemPackages = [ nvidia_x11.bin ]
       ++ optionals cfg.nvidiaSettings [ nvidia_x11.settings ]
diff --git a/nixpkgs/nixos/modules/installer/cd-dvd/iso-image.nix b/nixpkgs/nixos/modules/installer/cd-dvd/iso-image.nix
index 3ff1b3d670e9..860e240b43d4 100644
--- a/nixpkgs/nixos/modules/installer/cd-dvd/iso-image.nix
+++ b/nixpkgs/nixos/modules/installer/cd-dvd/iso-image.nix
@@ -91,29 +91,9 @@ let
     SERIAL 0 115200
     TIMEOUT ${builtins.toString syslinuxTimeout}
     UI vesamenu.c32
-    MENU TITLE NixOS
     MENU BACKGROUND /isolinux/background.png
-    MENU RESOLUTION 800 600
-    MENU CLEAR
-    MENU ROWS 6
-    MENU CMDLINEROW -4
-    MENU TIMEOUTROW -3
-    MENU TABMSGROW  -2
-    MENU HELPMSGROW -1
-    MENU HELPMSGENDROW -1
-    MENU MARGIN 0
-
-    #                                FG:AARRGGBB  BG:AARRGGBB   shadow
-    MENU COLOR BORDER       30;44      #00000000    #00000000   none
-    MENU COLOR SCREEN       37;40      #FF000000    #00E2E8FF   none
-    MENU COLOR TABMSG       31;40      #80000000    #00000000   none
-    MENU COLOR TIMEOUT      1;37;40    #FF000000    #00000000   none
-    MENU COLOR TIMEOUT_MSG  37;40      #FF000000    #00000000   none
-    MENU COLOR CMDMARK      1;36;40    #FF000000    #00000000   none
-    MENU COLOR CMDLINE      37;40      #FF000000    #00000000   none
-    MENU COLOR TITLE        1;36;44    #00000000    #00000000   none
-    MENU COLOR UNSEL        37;44      #FF000000    #00000000   none
-    MENU COLOR SEL          7;37;40    #FFFFFFFF    #FF5277C3   std
+
+    ${config.isoImage.syslinuxTheme}
 
     DEFAULT boot
 
@@ -601,6 +581,37 @@ in
       '';
     };
 
+    isoImage.syslinuxTheme = mkOption {
+      default = ''
+        MENU TITLE NixOS
+        MENU RESOLUTION 800 600
+        MENU CLEAR
+        MENU ROWS 6
+        MENU CMDLINEROW -4
+        MENU TIMEOUTROW -3
+        MENU TABMSGROW  -2
+        MENU HELPMSGROW -1
+        MENU HELPMSGENDROW -1
+        MENU MARGIN 0
+
+        #                                FG:AARRGGBB  BG:AARRGGBB   shadow
+        MENU COLOR BORDER       30;44      #00000000    #00000000   none
+        MENU COLOR SCREEN       37;40      #FF000000    #00E2E8FF   none
+        MENU COLOR TABMSG       31;40      #80000000    #00000000   none
+        MENU COLOR TIMEOUT      1;37;40    #FF000000    #00000000   none
+        MENU COLOR TIMEOUT_MSG  37;40      #FF000000    #00000000   none
+        MENU COLOR CMDMARK      1;36;40    #FF000000    #00000000   none
+        MENU COLOR CMDLINE      37;40      #FF000000    #00000000   none
+        MENU COLOR TITLE        1;36;44    #00000000    #00000000   none
+        MENU COLOR UNSEL        37;44      #FF000000    #00000000   none
+        MENU COLOR SEL          7;37;40    #FFFFFFFF    #FF5277C3   std
+      '';
+      type = types.str;
+      description = ''
+        The syslinux theme used for BIOS boot.
+      '';
+    };
+
     isoImage.appendToMenuLabel = mkOption {
       default = " Installer";
       example = " Live System";
diff --git a/nixpkgs/nixos/modules/installer/tools/nixos-enter.sh b/nixpkgs/nixos/modules/installer/tools/nixos-enter.sh
index 115b3d7a7c5e..89beeee7cf9e 100644
--- a/nixpkgs/nixos/modules/installer/tools/nixos-enter.sh
+++ b/nixpkgs/nixos/modules/installer/tools/nixos-enter.sh
@@ -63,32 +63,32 @@ mount --rbind /sys "$mountPoint/sys"
 
 # modified from https://github.com/archlinux/arch-install-scripts/blob/bb04ab435a5a89cd5e5ee821783477bc80db797f/arch-chroot.in#L26-L52
 chroot_add_resolv_conf() {
-    local chrootdir=$1 resolv_conf=$1/etc/resolv.conf
+    local chrootDir="$1" resolvConf="$1/etc/resolv.conf"
 
     [[ -e /etc/resolv.conf ]] || return 0
 
     # Handle resolv.conf as a symlink to somewhere else.
-    if [[ -L $chrootdir/etc/resolv.conf ]]; then
+    if [[ -L "$resolvConf" ]]; then
       # readlink(1) should always give us *something* since we know at this point
       # it's a symlink. For simplicity, ignore the case of nested symlinks.
-      # We also ignore the possibility if `../`s escaping the root.
-      resolv_conf=$(readlink "$chrootdir/etc/resolv.conf")
-      if [[ $resolv_conf = /* ]]; then
-        resolv_conf=$chrootdir$resolv_conf
+      # We also ignore the possibility of `../`s escaping the root.
+      resolvConf="$(readlink "$resolvConf")"
+      if [[ "$resolvConf" = /* ]]; then
+        resolvConf="$chrootDir$resolvConf"
       else
-        resolv_conf=$chrootdir/etc/$resolv_conf
+        resolvConf="$chrootDir/etc/$resolvConf"
       fi
     fi
 
     # ensure file exists to bind mount over
-    if [[ ! -f $resolv_conf ]]; then
-      install -Dm644 /dev/null "$resolv_conf" || return 1
+    if [[ ! -f "$resolvConf" ]]; then
+      install -Dm644 /dev/null "$resolvConf" || return 1
     fi
 
-    mount --bind /etc/resolv.conf "$resolv_conf"
+    mount --bind /etc/resolv.conf "$resolvConf"
 }
 
-chroot_add_resolv_conf "$mountPoint" || print "ERROR: failed to set up resolv.conf"
+chroot_add_resolv_conf "$mountPoint" || echo "$0: failed to set up resolv.conf" >&2
 
 (
     # If silent, write both stdout and stderr of activation script to /dev/null
diff --git a/nixpkgs/nixos/modules/installer/tools/nixos-generate-config.pl b/nixpkgs/nixos/modules/installer/tools/nixos-generate-config.pl
index 57aef50a0f6b..fb5d3ba47325 100644
--- a/nixpkgs/nixos/modules/installer/tools/nixos-generate-config.pl
+++ b/nixpkgs/nixos/modules/installer/tools/nixos-generate-config.pl
@@ -51,7 +51,9 @@ for (my $n = 0; $n < scalar @ARGV; $n++) {
         $n++;
         $rootDir = $ARGV[$n];
         die "$0: ‘--root’ requires an argument\n" unless defined $rootDir;
+        die "$0: no need to specify `/` with `--root`, it is the default\n" if $rootDir eq "/";
         $rootDir =~ s/\/*$//; # remove trailing slashes
+        $rootDir = File::Spec->rel2abs($rootDir); # resolve absolute path
     }
     elsif ($arg eq "--force") {
         $force = 1;
@@ -616,7 +618,12 @@ EOF
 if ($showHardwareConfig) {
     print STDOUT $hwConfig;
 } else {
-    $outDir = "$rootDir$outDir";
+    if ($outDir eq "/etc/nixos") {
+        $outDir = "$rootDir$outDir";
+    } else {
+        $outDir = File::Spec->rel2abs($outDir);
+        $outDir =~ s/\/*$//; # remove trailing slashes
+    }
 
     my $fn = "$outDir/hardware-configuration.nix";
     print STDERR "writing $fn...\n";
diff --git a/nixpkgs/nixos/modules/installer/tools/tools.nix b/nixpkgs/nixos/modules/installer/tools/tools.nix
index 71aaf7f253d9..2e088b977710 100644
--- a/nixpkgs/nixos/modules/installer/tools/tools.nix
+++ b/nixpkgs/nixos/modules/installer/tools/tools.nix
@@ -117,7 +117,7 @@ in
     '';
   };
 
-  config = lib.mkIf (!config.system.disableInstallerTools) {
+  config = lib.mkIf (config.nix.enable && !config.system.disableInstallerTools) {
 
     system.nixos-generate-config.configuration = mkDefault ''
       # Edit this configuration file to define what should be installed on
diff --git a/nixpkgs/nixos/modules/misc/locate.nix b/nixpkgs/nixos/modules/misc/locate.nix
index 66a49b0b888f..204a89143008 100644
--- a/nixpkgs/nixos/modules/misc/locate.nix
+++ b/nixpkgs/nixos/modules/misc/locate.nix
@@ -183,7 +183,11 @@ in
 
     pruneNames = mkOption {
       type = listOf str;
-      default = [ ".bzr" ".cache" ".git" ".hg" ".svn" ];
+      default = lib.optionals (!isFindutils) [ ".bzr" ".cache" ".git" ".hg" ".svn" ];
+      defaultText = literalDocBook ''
+        <literal>[ ".bzr" ".cache" ".git" ".hg" ".svn" ]</literal>, if
+        supported by the locate implementation (i.e. mlocate or plocate).
+      '';
       description = ''
         Directory components which should exclude paths containing them from indexing
       '';
diff --git a/nixpkgs/nixos/modules/misc/version.nix b/nixpkgs/nixos/modules/misc/version.nix
index 6c072021ed83..d825f4beb301 100644
--- a/nixpkgs/nixos/modules/misc/version.nix
+++ b/nixpkgs/nixos/modules/misc/version.nix
@@ -8,8 +8,12 @@ let
     concatStringsSep mapAttrsToList toLower
     literalExpression mkRenamedOptionModule mkDefault mkOption trivial types;
 
+  needsEscaping = s: null != builtins.match "[a-zA-Z0-9]+" s;
+  escapeIfNeccessary = s: if needsEscaping s then s else ''"${lib.escape [ "\$" "\"" "\\" "\`" ] s}"'';
   attrsToText = attrs:
-    concatStringsSep "\n" (mapAttrsToList (n: v: ''${n}="${toString v}"'') attrs);
+    concatStringsSep "\n" (
+      mapAttrsToList (n: v: ''${n}=${escapeIfNeccessary (toString v)}'') attrs
+    );
 
 in
 {
diff --git a/nixpkgs/nixos/modules/module-list.nix b/nixpkgs/nixos/modules/module-list.nix
index 12bca45a9958..9e5255be2d79 100644
--- a/nixpkgs/nixos/modules/module-list.nix
+++ b/nixpkgs/nixos/modules/module-list.nix
@@ -118,6 +118,7 @@
   ./misc/version.nix
   ./misc/wordlist.nix
   ./misc/nixops-autoluks.nix
+  ./programs/_1password-gui.nix
   ./programs/adb.nix
   ./programs/appgate-sdp.nix
   ./programs/atop.nix
@@ -181,8 +182,10 @@
   ./programs/mtr.nix
   ./programs/nano.nix
   ./programs/nbd.nix
+  ./programs/nix-ld.nix
   ./programs/neovim.nix
   ./programs/nm-applet.nix
+  ./programs/nncp.nix
   ./programs/npm.nix
   ./programs/noisetorch.nix
   ./programs/oblogout.nix
@@ -302,6 +305,7 @@
   ./services/backup/znapzend.nix
   ./services/blockchain/ethereum/geth.nix
   ./services/backup/zrepl.nix
+  ./services/cluster/corosync/default.nix
   ./services/cluster/hadoop/default.nix
   ./services/cluster/k3s/default.nix
   ./services/cluster/kubernetes/addons/dns.nix
@@ -314,6 +318,7 @@
   ./services/cluster/kubernetes/pki.nix
   ./services/cluster/kubernetes/proxy.nix
   ./services/cluster/kubernetes/scheduler.nix
+  ./services/cluster/pacemaker/default.nix
   ./services/cluster/spark/default.nix
   ./services/computing/boinc/client.nix
   ./services/computing/foldingathome/client.nix
@@ -776,6 +781,7 @@
   ./services/networking/headscale.nix
   ./services/networking/hostapd.nix
   ./services/networking/htpdate.nix
+  ./services/networking/https-dns-proxy.nix
   ./services/networking/hylafax/default.nix
   ./services/networking/i2pd.nix
   ./services/networking/i2p.nix
@@ -1168,7 +1174,12 @@
   ./system/boot/stage-1.nix
   ./system/boot/stage-2.nix
   ./system/boot/systemd.nix
-  ./system/boot/systemd-nspawn.nix
+  ./system/boot/systemd/coredump.nix
+  ./system/boot/systemd/journald.nix
+  ./system/boot/systemd/logind.nix
+  ./system/boot/systemd/nspawn.nix
+  ./system/boot/systemd/tmpfiles.nix
+  ./system/boot/systemd/user.nix
   ./system/boot/timesyncd.nix
   ./system/boot/tmp.nix
   ./system/etc/etc-activation.nix
diff --git a/nixpkgs/nixos/modules/programs/_1password-gui.nix b/nixpkgs/nixos/modules/programs/_1password-gui.nix
new file mode 100644
index 000000000000..f57de44bb9e2
--- /dev/null
+++ b/nixpkgs/nixos/modules/programs/_1password-gui.nix
@@ -0,0 +1,69 @@
+{ config, pkgs, lib, ... }:
+
+with lib;
+
+let
+  cfg = config.programs._1password-gui;
+
+in {
+  options = {
+    programs._1password-gui = {
+      enable = mkEnableOption "The 1Password Desktop application with browser integration";
+
+      groupId = mkOption {
+        type = types.int;
+        example = literalExpression "5000";
+        description = ''
+          The GroupID to assign to the onepassword group, which is needed for browser integration. The group ID must be 1000 or greater.
+          '';
+      };
+
+      polkitPolicyOwners = mkOption {
+        type = types.listOf types.str;
+        default = [];
+        example = literalExpression "[\"user1\" \"user2\" \"user3\"]";
+        description = ''
+          A list of users who should be able to integrate 1Password with polkit-based authentication mechanisms. By default, no users will have such access.
+          '';
+      };
+
+      package = mkOption {
+        type = types.package;
+        default = pkgs._1password-gui;
+        defaultText = literalExpression "pkgs._1password-gui";
+        example = literalExpression "pkgs._1password-gui";
+        description = ''
+          The 1Password derivation to use. This can be used to upgrade from the stable release that we keep in nixpkgs to the betas.
+          '';
+      };
+    };
+  };
+
+  config = let
+    package = cfg.package.override {
+      polkitPolicyOwners = cfg.polkitPolicyOwners;
+    };
+  in mkIf cfg.enable {
+    environment.systemPackages = [ package ];
+    users.groups.onepassword.gid = cfg.groupId;
+
+    security.wrappers = {
+      "1Password-BrowserSupport" =
+        { source = "${cfg.package}/share/1password/1Password-BrowserSupport";
+          owner = "root";
+          group = "onepassword";
+          setuid = false;
+          setgid = true;
+        };
+
+      "1Password-KeyringHelper" =
+        { source = "${cfg.package}/share/1password/1Password-KeyringHelper";
+          owner = "root";
+          group = "onepassword";
+          setuid = true;
+          setgid = true;
+        };
+    };
+
+  };
+}
diff --git a/nixpkgs/nixos/modules/programs/nix-ld.nix b/nixpkgs/nixos/modules/programs/nix-ld.nix
new file mode 100644
index 000000000000..810a74ab50b7
--- /dev/null
+++ b/nixpkgs/nixos/modules/programs/nix-ld.nix
@@ -0,0 +1,12 @@
+{ pkgs, lib, config, ... }:
+{
+  meta.maintainers = [ lib.maintainers.mic92 ];
+  options = {
+    programs.nix-ld.enable = lib.mkEnableOption ''nix-ld, Documentation: <link xlink:href="https://github.com/Mic92/nix-ld"/>'';
+  };
+  config = lib.mkIf config.programs.nix-ld.enable {
+    systemd.tmpfiles.rules = [
+      "L+ ${pkgs.nix-ld.ldPath} - - - - ${pkgs.nix-ld}/libexec/nix-ld"
+    ];
+  };
+}
diff --git a/nixpkgs/nixos/modules/programs/nncp.nix b/nixpkgs/nixos/modules/programs/nncp.nix
new file mode 100644
index 000000000000..29a703eadf10
--- /dev/null
+++ b/nixpkgs/nixos/modules/programs/nncp.nix
@@ -0,0 +1,101 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+let
+  nncpCfgFile = "/run/nncp.hjson";
+  programCfg = config.programs.nncp;
+  settingsFormat = pkgs.formats.json { };
+  jsonCfgFile = settingsFormat.generate "nncp.json" programCfg.settings;
+  pkg = programCfg.package;
+in {
+  options.programs.nncp = {
+
+    enable =
+      mkEnableOption "NNCP (Node to Node copy) utilities and configuration";
+
+    group = mkOption {
+      type = types.str;
+      default = "uucp";
+      description = ''
+        The group under which NNCP files shall be owned.
+        Any member of this group may access the secret keys
+        of this NNCP node.
+      '';
+    };
+
+    package = mkOption {
+      type = types.package;
+      default = pkgs.nncp;
+      defaultText = literalExpression "pkgs.nncp";
+      description = "The NNCP package to use system-wide.";
+    };
+
+    secrets = mkOption {
+      type = with types; listOf str;
+      example = [ "/run/keys/nncp.hjson" ];
+      description = ''
+        A list of paths to NNCP configuration files that should not be
+        in the Nix store. These files are layered on top of the values at
+        <xref linkend="opt-programs.nncp.settings"/>.
+      '';
+    };
+
+    settings = mkOption {
+      type = settingsFormat.type;
+      description = ''
+        NNCP configuration, see
+        <link xlink:href="http://www.nncpgo.org/Configuration.html"/>.
+        At runtime these settings will be overlayed by the contents of
+        <xref linkend="opt-programs.nncp.secrets"/> into the file
+        <literal>${nncpCfgFile}</literal>. Node keypairs go in
+        <literal>secrets</literal>, do not specify them in
+        <literal>settings</literal> as they will be leaked into
+        <literal>/nix/store</literal>!
+      '';
+      default = { };
+    };
+
+  };
+
+  config = mkIf programCfg.enable {
+
+    environment = {
+      systemPackages = [ pkg ];
+      etc."nncp.hjson".source = nncpCfgFile;
+    };
+
+    programs.nncp.settings = {
+      spool = mkDefault "/var/spool/nncp";
+      log = mkDefault "/var/spool/nncp/log";
+    };
+
+    systemd.tmpfiles.rules = [
+      "d ${programCfg.settings.spool} 0770 root ${programCfg.group}"
+      "f ${programCfg.settings.log} 0770 root ${programCfg.group}"
+    ];
+
+    systemd.services.nncp-config = {
+      path = [ pkg ];
+      description = "Generate NNCP configuration";
+      wantedBy = [ "basic.target" ];
+      serviceConfig.Type = "oneshot";
+      script = ''
+        umask u=rw
+        nncpCfgDir=$(mktemp --directory nncp.XXX)
+        for f in ${jsonCfgFile} ${toString config.programs.nncp.secrets}; do
+          tmpdir=$(mktemp --directory nncp.XXX)
+          nncp-cfgdir -cfg $f -dump $tmpdir
+          find $tmpdir -size 1c -delete
+          cp -a $tmpdir/* $nncpCfgDir/
+          rm -rf $tmpdir
+        done
+        nncp-cfgdir -load $nncpCfgDir > ${nncpCfgFile}
+        rm -rf $nncpCfgDir
+        chgrp ${programCfg.group} ${nncpCfgFile}
+        chmod g+r ${nncpCfgFile}
+      '';
+    };
+  };
+
+  meta.maintainers = with lib.maintainers; [ ehmry ];
+}
diff --git a/nixpkgs/nixos/modules/services/cluster/corosync/default.nix b/nixpkgs/nixos/modules/services/cluster/corosync/default.nix
new file mode 100644
index 000000000000..b4144917feea
--- /dev/null
+++ b/nixpkgs/nixos/modules/services/cluster/corosync/default.nix
@@ -0,0 +1,112 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+let
+  cfg = config.services.corosync;
+in
+{
+  # interface
+  options.services.corosync = {
+    enable = mkEnableOption "corosync";
+
+    package = mkOption {
+      type = types.package;
+      default = pkgs.corosync;
+      defaultText = literalExpression "pkgs.corosync";
+      description = "Package that should be used for corosync.";
+    };
+
+    clusterName = mkOption {
+      type = types.str;
+      default = "nixcluster";
+      description = "Name of the corosync cluster.";
+    };
+
+    extraOptions = mkOption {
+      type = with types; listOf str;
+      default = [];
+      description = "Additional options with which to start corosync.";
+    };
+
+    nodelist = mkOption {
+      description = "Corosync nodelist: all cluster members.";
+      default = [];
+      type = with types; listOf (submodule {
+        options = {
+          nodeid = mkOption {
+            type = int;
+            description = "Node ID number";
+          };
+          name = mkOption {
+            type = str;
+            description = "Node name";
+          };
+          ring_addrs = mkOption {
+            type = listOf str;
+            description = "List of addresses, one for each ring.";
+          };
+        };
+      });
+    };
+  };
+
+  # implementation
+  config = mkIf cfg.enable {
+    environment.systemPackages = [ cfg.package ];
+
+    environment.etc."corosync/corosync.conf".text = ''
+      totem {
+        version: 2
+        secauth: on
+        cluster_name: ${cfg.clusterName}
+        transport: knet
+      }
+
+      nodelist {
+        ${concatMapStrings ({ nodeid, name, ring_addrs }: ''
+          node {
+            nodeid: ${toString nodeid}
+            name: ${name}
+            ${concatStrings (imap0 (i: addr: ''
+              ring${toString i}_addr: ${addr}
+            '') ring_addrs)}
+          }
+        '') cfg.nodelist}
+      }
+
+      quorum {
+        # only corosync_votequorum is supported
+        provider: corosync_votequorum
+        wait_for_all: 0
+        ${optionalString (builtins.length cfg.nodelist < 3) ''
+          two_node: 1
+        ''}
+      }
+
+      logging {
+        to_syslog: yes
+      }
+    '';
+
+    environment.etc."corosync/uidgid.d/root".text = ''
+      # allow pacemaker connection by root
+      uidgid {
+        uid: 0
+        gid: 0
+      }
+    '';
+
+    systemd.packages = [ cfg.package ];
+    systemd.services.corosync = {
+      wantedBy = [ "multi-user.target" ];
+      serviceConfig = {
+        StateDirectory = "corosync";
+        StateDirectoryMode = "0700";
+      };
+    };
+
+    environment.etc."sysconfig/corosync".text = lib.optionalString (cfg.extraOptions != []) ''
+      COROSYNC_OPTIONS="${lib.escapeShellArgs cfg.extraOptions}"
+    '';
+  };
+}
diff --git a/nixpkgs/nixos/modules/services/cluster/hadoop/conf.nix b/nixpkgs/nixos/modules/services/cluster/hadoop/conf.nix
index 0caec5cfc203..e3c26a0d5505 100644
--- a/nixpkgs/nixos/modules/services/cluster/hadoop/conf.nix
+++ b/nixpkgs/nixos/modules/services/cluster/hadoop/conf.nix
@@ -1,6 +1,6 @@
 { cfg, pkgs, lib }:
 let
-  propertyXml = name: value: ''
+  propertyXml = name: value: lib.optionalString (value != null) ''
     <property>
       <name>${name}</name>
       <value>${builtins.toString value}</value>
@@ -29,16 +29,16 @@ let
     export HADOOP_LOG_DIR=/tmp/hadoop/$USER
   '';
 in
-pkgs.runCommand "hadoop-conf" {} ''
+pkgs.runCommand "hadoop-conf" {} (with cfg; ''
   mkdir -p $out/
-  cp ${siteXml "core-site.xml" cfg.coreSite}/* $out/
-  cp ${siteXml "hdfs-site.xml" cfg.hdfsSite}/* $out/
-  cp ${siteXml "mapred-site.xml" cfg.mapredSite}/* $out/
-  cp ${siteXml "yarn-site.xml" cfg.yarnSite}/* $out/
-  cp ${siteXml "httpfs-site.xml" cfg.httpfsSite}/* $out/
-  cp ${cfgFile "container-executor.cfg" cfg.containerExecutorCfg}/* $out/
+  cp ${siteXml "core-site.xml" (coreSite // coreSiteInternal)}/* $out/
+  cp ${siteXml "hdfs-site.xml" (hdfsSiteDefault // hdfsSite // hdfsSiteInternal)}/* $out/
+  cp ${siteXml "mapred-site.xml" (mapredSiteDefault // mapredSite)}/* $out/
+  cp ${siteXml "yarn-site.xml" (yarnSiteDefault // yarnSite // yarnSiteInternal)}/* $out/
+  cp ${siteXml "httpfs-site.xml" httpfsSite}/* $out/
+  cp ${cfgFile "container-executor.cfg" containerExecutorCfg}/* $out/
   cp ${pkgs.writeTextDir "hadoop-user-functions.sh" userFunctions}/* $out/
   cp ${pkgs.writeTextDir "hadoop-env.sh" hadoopEnv}/* $out/
-  cp ${cfg.log4jProperties} $out/log4j.properties
-  ${lib.concatMapStringsSep "\n" (dir: "cp -r ${dir}/* $out/") cfg.extraConfDirs}
-''
+  cp ${log4jProperties} $out/log4j.properties
+  ${lib.concatMapStringsSep "\n" (dir: "cp -r ${dir}/* $out/") extraConfDirs}
+'')
diff --git a/nixpkgs/nixos/modules/services/cluster/hadoop/default.nix b/nixpkgs/nixos/modules/services/cluster/hadoop/default.nix
index a1a95fe31cac..a4fdea81037c 100644
--- a/nixpkgs/nixos/modules/services/cluster/hadoop/default.nix
+++ b/nixpkgs/nixos/modules/services/cluster/hadoop/default.nix
@@ -21,24 +21,50 @@ with lib;
         <link xlink:href="https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/core-default.xml"/>
       '';
     };
+    coreSiteInternal = mkOption {
+      default = {};
+      type = types.attrsOf types.anything;
+      internal = true;
+      description = ''
+        Internal option to add configs to core-site.xml based on module options
+      '';
+    };
 
-    hdfsSite = mkOption {
+    hdfsSiteDefault = mkOption {
       default = {
         "dfs.namenode.rpc-bind-host" = "0.0.0.0";
+        "dfs.namenode.http-address" = "0.0.0.0:9870";
+        "dfs.namenode.servicerpc-bind-host" = "0.0.0.0";
+        "dfs.namenode.http-bind-host" = "0.0.0.0";
       };
       type = types.attrsOf types.anything;
+      description = ''
+        Default options for hdfs-site.xml
+      '';
+    };
+    hdfsSite = mkOption {
+      default = {};
+      type = types.attrsOf types.anything;
       example = literalExpression ''
         {
           "dfs.nameservices" = "namenode1";
         }
       '';
       description = ''
-        Hadoop hdfs-site.xml definition
+        Additional options and overrides for hdfs-site.xml
         <link xlink:href="https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml"/>
       '';
     };
+    hdfsSiteInternal = mkOption {
+      default = {};
+      type = types.attrsOf types.anything;
+      internal = true;
+      description = ''
+        Internal option to add configs to hdfs-site.xml based on module options
+      '';
+    };
 
-    mapredSite = mkOption {
+    mapredSiteDefault = mkOption {
       default = {
         "mapreduce.framework.name" = "yarn";
         "yarn.app.mapreduce.am.env" = "HADOOP_MAPRED_HOME=${cfg.package}/lib/${cfg.package.untarDir}";
@@ -54,18 +80,25 @@ with lib;
         }
       '';
       type = types.attrsOf types.anything;
+      description = ''
+        Default options for mapred-site.xml
+      '';
+    };
+    mapredSite = mkOption {
+      default = {};
+      type = types.attrsOf types.anything;
       example = literalExpression ''
-        options.services.hadoop.mapredSite.default // {
+        {
           "mapreduce.map.java.opts" = "-Xmx900m -XX:+UseParallelGC";
         }
       '';
       description = ''
-        Hadoop mapred-site.xml definition
+        Additional options and overrides for mapred-site.xml
         <link xlink:href="https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/mapred-default.xml"/>
       '';
     };
 
-    yarnSite = mkOption {
+    yarnSiteDefault = mkOption {
       default = {
         "yarn.nodemanager.admin-env" = "PATH=$PATH";
         "yarn.nodemanager.aux-services" = "mapreduce_shuffle";
@@ -77,19 +110,34 @@ with lib;
         "yarn.nodemanager.linux-container-executor.path" = "/run/wrappers/yarn-nodemanager/bin/container-executor";
         "yarn.nodemanager.log-dirs" = "/var/log/hadoop/yarn/nodemanager";
         "yarn.resourcemanager.bind-host" = "0.0.0.0";
-        "yarn.resourcemanager.scheduler.class" = "org.apache.hadoop.yarn.server.resourcemanager.scheduler.fifo.FifoScheduler";
+        "yarn.resourcemanager.scheduler.class" = "org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler";
       };
       type = types.attrsOf types.anything;
+      description = ''
+        Default options for yarn-site.xml
+      '';
+    };
+    yarnSite = mkOption {
+      default = {};
+      type = types.attrsOf types.anything;
       example = literalExpression ''
-        options.services.hadoop.yarnSite.default // {
+        {
           "yarn.resourcemanager.hostname" = "''${config.networking.hostName}";
         }
       '';
       description = ''
-        Hadoop yarn-site.xml definition
+        Additional options and overrides for yarn-site.xml
         <link xlink:href="https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-common/yarn-default.xml"/>
       '';
     };
+    yarnSiteInternal = mkOption {
+      default = {};
+      type = types.attrsOf types.anything;
+      internal = true;
+      description = ''
+        Internal option to add configs to yarn-site.xml based on module options
+      '';
+    };
 
     httpfsSite = mkOption {
       default = { };
@@ -123,6 +171,7 @@ with lib;
         "yarn.nodemanager.linux-container-executor.group"="hadoop";
         "min.user.id"=1000;
         "feature.terminal.enabled"=1;
+        "feature.mount-cgroup.enabled" = 1;
       };
       type = types.attrsOf types.anything;
       example = literalExpression ''
@@ -148,6 +197,8 @@ with lib;
       description = "Directories containing additional config files to be added to HADOOP_CONF_DIR";
     };
 
+    gatewayRole.enable = mkEnableOption "gateway role for deploying hadoop configs";
+
     package = mkOption {
       type = types.package;
       default = pkgs.hadoop;
@@ -157,20 +208,16 @@ with lib;
   };
 
 
-  config = mkMerge [
-    (mkIf (builtins.hasAttr "yarn" config.users.users ||
-           builtins.hasAttr "hdfs" config.users.users ||
-           builtins.hasAttr "httpfs" config.users.users) {
-      users.groups.hadoop = {
-        gid = config.ids.gids.hadoop;
-      };
-      environment = {
-        systemPackages = [ cfg.package ];
-        etc."hadoop-conf".source = let
-          hadoopConf = "${import ./conf.nix { inherit cfg pkgs lib; }}/";
-        in "${hadoopConf}";
-      };
-    })
-
-  ];
+  config = mkIf cfg.gatewayRole.enable {
+    users.groups.hadoop = {
+      gid = config.ids.gids.hadoop;
+    };
+    environment = {
+      systemPackages = [ cfg.package ];
+      etc."hadoop-conf".source = let
+        hadoopConf = "${import ./conf.nix { inherit cfg pkgs lib; }}/";
+      in "${hadoopConf}";
+      variables.HADOOP_CONF_DIR = "/etc/hadoop-conf/";
+    };
+  };
 }
diff --git a/nixpkgs/nixos/modules/services/cluster/hadoop/hdfs.nix b/nixpkgs/nixos/modules/services/cluster/hadoop/hdfs.nix
index be667aa82d8a..325a002ad32f 100644
--- a/nixpkgs/nixos/modules/services/cluster/hadoop/hdfs.nix
+++ b/nixpkgs/nixos/modules/services/cluster/hadoop/hdfs.nix
@@ -1,191 +1,191 @@
-{ config, lib, pkgs, ...}:
+{ config, lib, pkgs, ... }:
 with lib;
 let
   cfg = config.services.hadoop;
+
+  # Config files for hadoop services
   hadoopConf = "${import ./conf.nix { inherit cfg pkgs lib; }}/";
-  restartIfChanged  = mkOption {
-    type = types.bool;
-    description = ''
-      Automatically restart the service on config change.
-      This can be set to false to defer restarts on clusters running critical applications.
-      Please consider the security implications of inadvertently running an older version,
-      and the possibility of unexpected behavior caused by inconsistent versions across a cluster when disabling this option.
-    '';
-    default = false;
-  };
+
+  # Generator for HDFS service options
+  hadoopServiceOption = { serviceName, firewallOption ? true, extraOpts ? null }: {
+    enable = mkEnableOption serviceName;
+    restartIfChanged = mkOption {
+      type = types.bool;
+      description = ''
+        Automatically restart the service on config change.
+        This can be set to false to defer restarts on clusters running critical applications.
+        Please consider the security implications of inadvertently running an older version,
+        and the possibility of unexpected behavior caused by inconsistent versions across a cluster when disabling this option.
+      '';
+      default = false;
+    };
+    extraFlags = mkOption{
+      type = with types; listOf str;
+      default = [];
+      description = "Extra command line flags to pass to ${serviceName}";
+      example = [
+        "-Dcom.sun.management.jmxremote"
+        "-Dcom.sun.management.jmxremote.port=8010"
+      ];
+    };
+    extraEnv = mkOption{
+      type = with types; attrsOf str;
+      default = {};
+      description = "Extra environment variables for ${serviceName}";
+    };
+  } // (optionalAttrs firewallOption {
+    openFirewall = mkOption {
+      type = types.bool;
+      default = false;
+      description = "Open firewall ports for ${serviceName}.";
+    };
+  }) // (optionalAttrs (extraOpts != null) extraOpts);
+
+  # Generator for HDFS service configs
+  hadoopServiceConfig =
+    { name
+    , serviceOptions ? cfg.hdfs."${toLower name}"
+    , description ? "Hadoop HDFS ${name}"
+    , User ? "hdfs"
+    , allowedTCPPorts ? [ ]
+    , preStart ? ""
+    , environment ? { }
+    , extraConfig ? { }
+    }: (
+
+      mkIf serviceOptions.enable ( mkMerge [{
+        systemd.services."hdfs-${toLower name}" = {
+          inherit description preStart;
+          environment = environment // serviceOptions.extraEnv;
+          wantedBy = [ "multi-user.target" ];
+          inherit (serviceOptions) restartIfChanged;
+          serviceConfig = {
+            inherit User;
+            SyslogIdentifier = "hdfs-${toLower name}";
+            ExecStart = "${cfg.package}/bin/hdfs --config ${hadoopConf} ${toLower name} ${escapeShellArgs serviceOptions.extraFlags}";
+            Restart = "always";
+          };
+        };
+
+        services.hadoop.gatewayRole.enable = true;
+
+        networking.firewall.allowedTCPPorts = mkIf
+          ((builtins.hasAttr "openFirewall" serviceOptions) && serviceOptions.openFirewall)
+          allowedTCPPorts;
+      } extraConfig])
+    );
+
 in
 {
   options.services.hadoop.hdfs = {
-    namenode = {
-      enable = mkEnableOption "Whether to run the HDFS NameNode";
+
+    namenode = hadoopServiceOption { serviceName = "HDFS NameNode"; } // {
       formatOnInit = mkOption {
         type = types.bool;
         default = false;
         description = ''
-          Format HDFS namenode on first start. This is useful for quickly spinning up ephemeral HDFS clusters with a single namenode.
-          For HA clusters, initialization involves multiple steps across multiple nodes. Follow [this guide](https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html)
-          to initialize an HA cluster manually.
-        '';
-      };
-      inherit restartIfChanged;
-      openFirewall = mkOption {
-        type = types.bool;
-        default = true;
-        description = ''
-          Open firewall ports for namenode
-        '';
-      };
-    };
-    datanode = {
-      enable = mkEnableOption "Whether to run the HDFS DataNode";
-      inherit restartIfChanged;
-      openFirewall = mkOption {
-        type = types.bool;
-        default = true;
-        description = ''
-          Open firewall ports for datanode
+          Format HDFS namenode on first start. This is useful for quickly spinning up
+          ephemeral HDFS clusters with a single namenode.
+          For HA clusters, initialization involves multiple steps across multiple nodes.
+          Follow this guide to initialize an HA cluster manually:
+          <link xlink:href="https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html"/>
         '';
       };
     };
-    journalnode = {
-      enable = mkEnableOption "Whether to run the HDFS JournalNode";
-      inherit restartIfChanged;
-      openFirewall = mkOption {
-        type = types.bool;
-        default = true;
-        description = ''
-          Open firewall ports for journalnode
-        '';
+
+    datanode = hadoopServiceOption { serviceName = "HDFS DataNode"; } // {
+      dataDirs = mkOption {
+        default = null;
+        description = "Tier and path definitions for datanode storage.";
+        type = with types; nullOr (listOf (submodule {
+          options = {
+            type = mkOption {
+              type = enum [ "SSD" "DISK" "ARCHIVE" "RAM_DISK" ];
+              description = ''
+                Storage types ([SSD]/[DISK]/[ARCHIVE]/[RAM_DISK]) for HDFS storage policies.
+              '';
+            };
+            path = mkOption {
+              type = path;
+              example = [ "/var/lib/hadoop/hdfs/dn" ];
+              description = "Determines where on the local filesystem a data node should store its blocks.";
+            };
+          };
+        }));
       };
     };
-    zkfc = {
-      enable = mkEnableOption "Whether to run the HDFS ZooKeeper failover controller";
-      inherit restartIfChanged;
+
+    journalnode = hadoopServiceOption { serviceName = "HDFS JournalNode"; };
+
+    zkfc = hadoopServiceOption {
+      serviceName = "HDFS ZooKeeper failover controller";
+      firewallOption = false;
     };
-    httpfs = {
-      enable = mkEnableOption "Whether to run the HDFS HTTPfs server";
+
+    httpfs = hadoopServiceOption { serviceName = "HDFS JournalNode"; } // {
       tempPath = mkOption {
         type = types.path;
         default = "/tmp/hadoop/httpfs";
-        description = ''
-          HTTPFS_TEMP path used by HTTPFS
-        '';
-      };
-      inherit restartIfChanged;
-      openFirewall = mkOption {
-        type = types.bool;
-        default = true;
-        description = ''
-          Open firewall ports for HTTPFS
-        '';
+        description = "HTTPFS_TEMP path used by HTTPFS";
       };
     };
+
   };
 
   config = mkMerge [
-    (mkIf cfg.hdfs.namenode.enable {
-      systemd.services.hdfs-namenode = {
-        description = "Hadoop HDFS NameNode";
-        wantedBy = [ "multi-user.target" ];
-        inherit (cfg.hdfs.namenode) restartIfChanged;
-
-        preStart = (mkIf cfg.hdfs.namenode.formatOnInit ''
-          ${cfg.package}/bin/hdfs --config ${hadoopConf} namenode -format -nonInteractive || true
-        '');
-
-        serviceConfig = {
-          User = "hdfs";
-          SyslogIdentifier = "hdfs-namenode";
-          ExecStart = "${cfg.package}/bin/hdfs --config ${hadoopConf} namenode";
-          Restart = "always";
-        };
-      };
-
-      networking.firewall.allowedTCPPorts = (mkIf cfg.hdfs.namenode.openFirewall [
+    (hadoopServiceConfig {
+      name = "NameNode";
+      allowedTCPPorts = [
         9870 # namenode.http-address
         8020 # namenode.rpc-address
-        8022 # namenode. servicerpc-address
-      ]);
+        8022 # namenode.servicerpc-address
+        8019 # dfs.ha.zkfc.port
+      ];
+      preStart = (mkIf cfg.hdfs.namenode.formatOnInit
+        "${cfg.package}/bin/hdfs --config ${hadoopConf} namenode -format -nonInteractive || true"
+      );
     })
-    (mkIf cfg.hdfs.datanode.enable {
-      systemd.services.hdfs-datanode = {
-        description = "Hadoop HDFS DataNode";
-        wantedBy = [ "multi-user.target" ];
-        inherit (cfg.hdfs.datanode) restartIfChanged;
-
-        serviceConfig = {
-          User = "hdfs";
-          SyslogIdentifier = "hdfs-datanode";
-          ExecStart = "${cfg.package}/bin/hdfs --config ${hadoopConf} datanode";
-          Restart = "always";
-        };
-      };
 
-      networking.firewall.allowedTCPPorts = (mkIf cfg.hdfs.datanode.openFirewall [
+    (hadoopServiceConfig {
+      name = "DataNode";
+      # port numbers for datanode changed between hadoop 2 and 3
+      allowedTCPPorts = if versionAtLeast cfg.package.version "3" then [
         9864 # datanode.http.address
         9866 # datanode.address
         9867 # datanode.ipc.address
-      ]);
+      ] else [
+        50075 # datanode.http.address
+        50010 # datanode.address
+        50020 # datanode.ipc.address
+      ];
+      extraConfig.services.hadoop.hdfsSiteInternal."dfs.datanode.data.dir" = let d = cfg.hdfs.datanode.dataDirs; in
+        if (d!= null) then (concatMapStringsSep "," (x: "["+x.type+"]file://"+x.path) cfg.hdfs.datanode.dataDirs) else d;
     })
-    (mkIf cfg.hdfs.journalnode.enable {
-      systemd.services.hdfs-journalnode = {
-        description = "Hadoop HDFS JournalNode";
-        wantedBy = [ "multi-user.target" ];
-        inherit (cfg.hdfs.journalnode) restartIfChanged;
-
-        serviceConfig = {
-          User = "hdfs";
-          SyslogIdentifier = "hdfs-journalnode";
-          ExecStart = "${cfg.package}/bin/hdfs --config ${hadoopConf} journalnode";
-          Restart = "always";
-        };
-      };
 
-      networking.firewall.allowedTCPPorts = (mkIf cfg.hdfs.journalnode.openFirewall [
+    (hadoopServiceConfig {
+      name = "JournalNode";
+      allowedTCPPorts = [
         8480 # dfs.journalnode.http-address
         8485 # dfs.journalnode.rpc-address
-      ]);
+      ];
     })
-    (mkIf cfg.hdfs.zkfc.enable {
-      systemd.services.hdfs-zkfc = {
-        description = "Hadoop HDFS ZooKeeper failover controller";
-        wantedBy = [ "multi-user.target" ];
-        inherit (cfg.hdfs.zkfc) restartIfChanged;
-
-        serviceConfig = {
-          User = "hdfs";
-          SyslogIdentifier = "hdfs-zkfc";
-          ExecStart = "${cfg.package}/bin/hdfs --config ${hadoopConf} zkfc";
-          Restart = "always";
-        };
-      };
-    })
-    (mkIf cfg.hdfs.httpfs.enable {
-      systemd.services.hdfs-httpfs = {
-        description = "Hadoop httpfs";
-        wantedBy = [ "multi-user.target" ];
-        inherit (cfg.hdfs.httpfs) restartIfChanged;
-
-        environment.HTTPFS_TEMP = cfg.hdfs.httpfs.tempPath;
 
-        preStart = ''
-          mkdir -p $HTTPFS_TEMP
-        '';
+    (hadoopServiceConfig {
+      name = "zkfc";
+      description = "Hadoop HDFS ZooKeeper failover controller";
+    })
 
-        serviceConfig = {
-          User = "httpfs";
-          SyslogIdentifier = "hdfs-httpfs";
-          ExecStart = "${cfg.package}/bin/hdfs --config ${hadoopConf} httpfs";
-          Restart = "always";
-        };
-      };
-      networking.firewall.allowedTCPPorts = (mkIf cfg.hdfs.httpfs.openFirewall [
+    (hadoopServiceConfig {
+      name = "HTTPFS";
+      environment.HTTPFS_TEMP = cfg.hdfs.httpfs.tempPath;
+      preStart = "mkdir -p $HTTPFS_TEMP";
+      User = "httpfs";
+      allowedTCPPorts = [
         14000 # httpfs.http.port
-      ]);
+      ];
     })
-    (mkIf (
-        cfg.hdfs.namenode.enable || cfg.hdfs.datanode.enable || cfg.hdfs.journalnode.enable || cfg.hdfs.zkfc.enable
-    ) {
+
+    (mkIf cfg.gatewayRole.enable {
       users.users.hdfs = {
         description = "Hadoop HDFS user";
         group = "hadoop";
@@ -199,5 +199,6 @@ in
         isSystemUser = true;
       };
     })
+
   ];
 }
diff --git a/nixpkgs/nixos/modules/services/cluster/hadoop/yarn.nix b/nixpkgs/nixos/modules/services/cluster/hadoop/yarn.nix
index 37c26ea10f76..74e16bdec687 100644
--- a/nixpkgs/nixos/modules/services/cluster/hadoop/yarn.nix
+++ b/nixpkgs/nixos/modules/services/cluster/hadoop/yarn.nix
@@ -13,23 +13,77 @@ let
     '';
     default = false;
   };
+  extraFlags = mkOption{
+    type = with types; listOf str;
+    default = [];
+    description = "Extra command line flags to pass to the service";
+    example = [
+      "-Dcom.sun.management.jmxremote"
+      "-Dcom.sun.management.jmxremote.port=8010"
+    ];
+  };
+  extraEnv = mkOption{
+    type = with types; attrsOf str;
+    default = {};
+    description = "Extra environment variables";
+  };
 in
 {
   options.services.hadoop.yarn = {
     resourcemanager = {
-      enable = mkEnableOption "Whether to run the Hadoop YARN ResourceManager";
-      inherit restartIfChanged;
+      enable = mkEnableOption "Hadoop YARN ResourceManager";
+      inherit restartIfChanged extraFlags extraEnv;
+
       openFirewall = mkOption {
         type = types.bool;
-        default = true;
+        default = false;
         description = ''
           Open firewall ports for resourcemanager
         '';
       };
     };
     nodemanager = {
-      enable = mkEnableOption "Whether to run the Hadoop YARN NodeManager";
-      inherit restartIfChanged;
+      enable = mkEnableOption "Hadoop YARN NodeManager";
+      inherit restartIfChanged extraFlags extraEnv;
+
+      resource = {
+        cpuVCores = mkOption {
+          description = "Number of vcores that can be allocated for containers.";
+          type = with types; nullOr ints.positive;
+          default = null;
+        };
+        maximumAllocationVCores = mkOption {
+          description = "The maximum virtual CPU cores any container can be allocated.";
+          type = with types; nullOr ints.positive;
+          default = null;
+        };
+        memoryMB = mkOption {
+          description = "Amount of physical memory, in MB, that can be allocated for containers.";
+          type = with types; nullOr ints.positive;
+          default = null;
+        };
+        maximumAllocationMB = mkOption {
+          description = "The maximum physical memory any container can be allocated.";
+          type = with types; nullOr ints.positive;
+          default = null;
+        };
+      };
+
+      useCGroups = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Use cgroups to enforce resource limits on containers
+        '';
+      };
+
+      localDir = mkOption {
+        description = "List of directories to store localized files in.";
+        type = with types; nullOr (listOf path);
+        example = [ "/var/lib/hadoop/yarn/nm" ];
+        default = null;
+      };
+
       addBinBash = mkOption {
         type = types.bool;
         default = true;
@@ -39,7 +93,7 @@ in
       };
       openFirewall = mkOption {
         type = types.bool;
-        default = true;
+        default = false;
         description = ''
           Open firewall ports for nodemanager.
           Because containers can listen on any ephemeral port, TCP ports 1024–65535 will be opened.
@@ -49,10 +103,7 @@ in
   };
 
   config = mkMerge [
-    (mkIf (
-        cfg.yarn.resourcemanager.enable || cfg.yarn.nodemanager.enable
-    ) {
-
+    (mkIf cfg.gatewayRole.enable {
       users.users.yarn = {
         description = "Hadoop YARN user";
         group = "hadoop";
@@ -65,15 +116,19 @@ in
         description = "Hadoop YARN ResourceManager";
         wantedBy = [ "multi-user.target" ];
         inherit (cfg.yarn.resourcemanager) restartIfChanged;
+        environment = cfg.yarn.resourcemanager.extraEnv;
 
         serviceConfig = {
           User = "yarn";
           SyslogIdentifier = "yarn-resourcemanager";
           ExecStart = "${cfg.package}/bin/yarn --config ${hadoopConf} " +
-                      " resourcemanager";
+                      " resourcemanager ${escapeShellArgs cfg.yarn.resourcemanager.extraFlags}";
           Restart = "always";
         };
       };
+
+      services.hadoop.gatewayRole.enable = true;
+
       networking.firewall.allowedTCPPorts = (mkIf cfg.yarn.resourcemanager.openFirewall [
         8088 # resourcemanager.webapp.address
         8030 # resourcemanager.scheduler.address
@@ -94,6 +149,7 @@ in
         description = "Hadoop YARN NodeManager";
         wantedBy = [ "multi-user.target" ];
         inherit (cfg.yarn.nodemanager) restartIfChanged;
+        environment = cfg.yarn.nodemanager.extraEnv;
 
         preStart = ''
           # create log dir
@@ -101,8 +157,9 @@ in
           chown yarn:hadoop /var/log/hadoop/yarn/nodemanager
 
           # set up setuid container executor binary
+          umount /run/wrappers/yarn-nodemanager/cgroup/cpu || true
           rm -rf /run/wrappers/yarn-nodemanager/ || true
-          mkdir -p /run/wrappers/yarn-nodemanager/{bin,etc/hadoop}
+          mkdir -p /run/wrappers/yarn-nodemanager/{bin,etc/hadoop,cgroup/cpu}
           cp ${cfg.package}/lib/${cfg.package.untarDir}/bin/container-executor /run/wrappers/yarn-nodemanager/bin/
           chgrp hadoop /run/wrappers/yarn-nodemanager/bin/container-executor
           chmod 6050 /run/wrappers/yarn-nodemanager/bin/container-executor
@@ -114,11 +171,26 @@ in
           SyslogIdentifier = "yarn-nodemanager";
           PermissionsStartOnly = true;
           ExecStart = "${cfg.package}/bin/yarn --config ${hadoopConf} " +
-                      " nodemanager";
+                      " nodemanager ${escapeShellArgs cfg.yarn.nodemanager.extraFlags}";
           Restart = "always";
         };
       };
 
+      services.hadoop.gatewayRole.enable = true;
+
+      services.hadoop.yarnSiteInternal = with cfg.yarn.nodemanager; {
+        "yarn.nodemanager.local-dirs" = localDir;
+        "yarn.scheduler.maximum-allocation-vcores" = resource.maximumAllocationVCores;
+        "yarn.scheduler.maximum-allocation-mb" = resource.maximumAllocationMB;
+        "yarn.nodemanager.resource.cpu-vcores" = resource.cpuVCores;
+        "yarn.nodemanager.resource.memory-mb" = resource.memoryMB;
+      } // mkIf useCGroups {
+        "yarn.nodemanager.linux-container-executor.cgroups.hierarchy" = "/hadoop-yarn";
+        "yarn.nodemanager.linux-container-executor.resources-handler.class" = "org.apache.hadoop.yarn.server.nodemanager.util.CgroupsLCEResourcesHandler";
+        "yarn.nodemanager.linux-container-executor.cgroups.mount" = "true";
+        "yarn.nodemanager.linux-container-executor.cgroups.mount-path" = "/run/wrappers/yarn-nodemanager/cgroup";
+      };
+
       networking.firewall.allowedTCPPortRanges = [
         (mkIf (cfg.yarn.nodemanager.openFirewall) {from = 1024; to = 65535;})
       ];
diff --git a/nixpkgs/nixos/modules/services/cluster/pacemaker/default.nix b/nixpkgs/nixos/modules/services/cluster/pacemaker/default.nix
new file mode 100644
index 000000000000..7eeadffcc586
--- /dev/null
+++ b/nixpkgs/nixos/modules/services/cluster/pacemaker/default.nix
@@ -0,0 +1,52 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+let
+  cfg = config.services.pacemaker;
+in
+{
+  # interface
+  options.services.pacemaker = {
+    enable = mkEnableOption "pacemaker";
+
+    package = mkOption {
+      type = types.package;
+      default = pkgs.pacemaker;
+      defaultText = literalExpression "pkgs.pacemaker";
+      description = "Package that should be used for pacemaker.";
+    };
+  };
+
+  # implementation
+  config = mkIf cfg.enable {
+    assertions = [ {
+      assertion = config.services.corosync.enable;
+      message = ''
+        Enabling services.pacemaker requires a services.corosync configuration.
+      '';
+    } ];
+
+    environment.systemPackages = [ cfg.package ];
+
+    # required by pacemaker
+    users.users.hacluster = {
+      isSystemUser = true;
+      group = "pacemaker";
+      home = "/var/lib/pacemaker";
+    };
+    users.groups.pacemaker = {};
+
+    systemd.tmpfiles.rules = [
+      "d /var/log/pacemaker 0700 hacluster pacemaker -"
+    ];
+
+    systemd.packages = [ cfg.package ];
+    systemd.services.pacemaker = {
+      wantedBy = [ "multi-user.target" ];
+      serviceConfig = {
+        StateDirectory = "pacemaker";
+        StateDirectoryMode = "0700";
+      };
+    };
+  };
+}
diff --git a/nixpkgs/nixos/modules/services/continuous-integration/buildbot/master.nix b/nixpkgs/nixos/modules/services/continuous-integration/buildbot/master.nix
index aaa159d3cb18..80c6c6abfd0b 100644
--- a/nixpkgs/nixos/modules/services/continuous-integration/buildbot/master.nix
+++ b/nixpkgs/nixos/modules/services/continuous-integration/buildbot/master.nix
@@ -64,7 +64,7 @@ in {
         description = "Factory Steps";
         default = [];
         example = [
-          "steps.Git(repourl='git://github.com/buildbot/pyflakes.git', mode='incremental')"
+          "steps.Git(repourl='https://github.com/buildbot/pyflakes.git', mode='incremental')"
           "steps.ShellCommand(command=['trial', 'pyflakes'])"
         ];
       };
@@ -74,7 +74,7 @@ in {
         description = "List of Change Sources.";
         default = [];
         example = [
-          "changes.GitPoller('git://github.com/buildbot/pyflakes.git', workdir='gitpoller-workdir', branch='master', pollinterval=300)"
+          "changes.GitPoller('https://github.com/buildbot/pyflakes.git', workdir='gitpoller-workdir', branch='master', pollinterval=300)"
         ];
       };
 
diff --git a/nixpkgs/nixos/modules/services/desktops/pipewire/pipewire-media-session.nix b/nixpkgs/nixos/modules/services/desktops/pipewire/pipewire-media-session.nix
index 109c91134b99..6027e4f3d4bf 100644
--- a/nixpkgs/nixos/modules/services/desktops/pipewire/pipewire-media-session.nix
+++ b/nixpkgs/nixos/modules/services/desktops/pipewire/pipewire-media-session.nix
@@ -110,6 +110,11 @@ in {
       source = json.generate "v4l2-monitor.conf" configs.v4l2-monitor;
     };
 
+    environment.etc."pipewire/media-session.d/with-audio" =
+      mkIf config.services.pipewire.audio.enable {
+        text = "";
+      };
+
     environment.etc."pipewire/media-session.d/with-alsa" =
       mkIf config.services.pipewire.alsa.enable {
         text = "";
diff --git a/nixpkgs/nixos/modules/services/desktops/pipewire/pipewire.nix b/nixpkgs/nixos/modules/services/desktops/pipewire/pipewire.nix
index 59e9342a6ea1..1323336d866e 100644
--- a/nixpkgs/nixos/modules/services/desktops/pipewire/pipewire.nix
+++ b/nixpkgs/nixos/modules/services/desktops/pipewire/pipewire.nix
@@ -116,6 +116,16 @@ in {
         };
       };
 
+      audio = {
+        enable = lib.mkOption {
+          type = lib.types.bool;
+          # this is for backwards compatibility
+          default = cfg.alsa.enable || cfg.jack.enable || cfg.pulse.enable;
+          defaultText = lib.literalExpression "config.services.pipewire.alsa.enable || config.services.pipewire.jack.enable || config.services.pipewire.pulse.enable";
+          description = "Whether to use PipeWire as the primary sound server";
+        };
+      };
+
       alsa = {
         enable = mkEnableOption "ALSA support";
         support32Bit = mkEnableOption "32-bit ALSA support on 64-bit systems";
@@ -152,13 +162,18 @@ in {
   config = mkIf cfg.enable {
     assertions = [
       {
-        assertion = cfg.pulse.enable -> !config.hardware.pulseaudio.enable;
-        message = "PipeWire based PulseAudio server emulation replaces PulseAudio. This option requires `hardware.pulseaudio.enable` to be set to false";
+        assertion = cfg.audio.enable -> !config.hardware.pulseaudio.enable;
+        message = "Using PipeWire as the sound server conflicts with PulseAudio. This option requires `hardware.pulseaudio.enable` to be set to false";
       }
       {
         assertion = cfg.jack.enable -> !config.services.jack.jackd.enable;
         message = "PipeWire based JACK emulation doesn't use the JACK service. This option requires `services.jack.jackd.enable` to be set to false";
       }
+      {
+        # JACK intentionally not checked, as PW-on-JACK setups are a thing that some people may want
+        assertion = (cfg.alsa.enable || cfg.pulse.enable) -> cfg.audio.enable;
+        message = "Using PipeWire's ALSA/PulseAudio compatibility layers requires running PipeWire as the sound server. Set `services.pipewire.audio.enable` to true.";
+      }
     ];
 
     environment.systemPackages = [ cfg.package ]
diff --git a/nixpkgs/nixos/modules/services/desktops/pipewire/wireplumber.nix b/nixpkgs/nixos/modules/services/desktops/pipewire/wireplumber.nix
index 52ec17b95db4..32206ccb4e60 100644
--- a/nixpkgs/nixos/modules/services/desktops/pipewire/wireplumber.nix
+++ b/nixpkgs/nixos/modules/services/desktops/pipewire/wireplumber.nix
@@ -1,7 +1,9 @@
 { config, lib, pkgs, ... }:
 
 let
-  cfg = config.services.pipewire.wireplumber;
+  pwCfg = config.services.pipewire;
+  cfg = pwCfg.wireplumber;
+  pwUsedForAudio = pwCfg.audio.enable;
 in
 {
   meta.maintainers = [ lib.maintainers.k900 ];
@@ -33,6 +35,14 @@ in
     ];
 
     environment.systemPackages = [ cfg.package ];
+
+    environment.etc."wireplumber/main.lua.d/80-nixos.lua" = lib.mkIf (!pwUsedForAudio) {
+     text = ''
+        # Pipewire is not used for audio, so prevent it from grabbing audio devices
+        alsa_monitor.enable = function() end
+      '';
+    };
+
     systemd.packages = [ cfg.package ];
 
     systemd.services.wireplumber.enable = config.services.pipewire.systemWide;
diff --git a/nixpkgs/nixos/modules/services/games/factorio.nix b/nixpkgs/nixos/modules/services/games/factorio.nix
index 96fcd6d2c8b3..ff73d7a46ed3 100644
--- a/nixpkgs/nixos/modules/services/games/factorio.nix
+++ b/nixpkgs/nixos/modules/services/games/factorio.nix
@@ -53,6 +53,14 @@ in
         '';
       };
 
+      bind = mkOption {
+        type = types.str;
+        default = "0.0.0.0";
+        description = ''
+          The address to which the service should bind.
+        '';
+      };
+
       admins = mkOption {
         type = types.listOf types.str;
         default = [];
@@ -241,6 +249,7 @@ in
           "${cfg.package}/bin/factorio"
           "--config=${cfg.configFile}"
           "--port=${toString cfg.port}"
+          "--bind=${cfg.bind}"
           "--start-server=${mkSavePath cfg.saveName}"
           "--server-settings=${serverSettingsFile}"
           (optionalString (cfg.mods != []) "--mod-directory=${modDir}")
diff --git a/nixpkgs/nixos/modules/services/games/minecraft-server.nix b/nixpkgs/nixos/modules/services/games/minecraft-server.nix
index 5bb8eff57629..8233962c1a2c 100644
--- a/nixpkgs/nixos/modules/services/games/minecraft-server.nix
+++ b/nixpkgs/nixos/modules/services/games/minecraft-server.nix
@@ -153,7 +153,7 @@ in {
         type = types.separatedString " ";
         default = "-Xmx2048M -Xms2048M";
         # Example options from https://minecraft.gamepedia.com/Tutorials/Server_startup_script
-        example = "-Xmx2048M -Xms4092M -XX:+UseG1GC -XX:+CMSIncrementalPacing "
+        example = "-Xms4092M -Xmx4092M -XX:+UseG1GC -XX:+CMSIncrementalPacing "
           + "-XX:+CMSClassUnloadingEnabled -XX:ParallelGCThreads=2 "
           + "-XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=10";
         description = "JVM options for the Minecraft server.";
diff --git a/nixpkgs/nixos/modules/services/hardware/joycond.nix b/nixpkgs/nixos/modules/services/hardware/joycond.nix
index ffef4f8a4e18..d81c1bb6d63d 100644
--- a/nixpkgs/nixos/modules/services/hardware/joycond.nix
+++ b/nixpkgs/nixos/modules/services/hardware/joycond.nix
@@ -22,13 +22,9 @@ with lib;
   };
 
   config = mkIf cfg.enable {
-    environment.systemPackages = [
-      kernelPackages.hid-nintendo
-      cfg.package
-    ];
+    environment.systemPackages = [ cfg.package ];
 
-    boot.extraModulePackages = [ kernelPackages.hid-nintendo ];
-    boot.kernelModules = [ "hid_nintendo" ];
+    boot.extraModulePackages = optional (versionOlder kernelPackages.kernel.version "5.16") kernelPackages.hid-nintendo;
 
     services.udev.packages = [ cfg.package ];
 
diff --git a/nixpkgs/nixos/modules/services/logging/graylog.nix b/nixpkgs/nixos/modules/services/logging/graylog.nix
index e6a23233ba28..28e2d18bf031 100644
--- a/nixpkgs/nixos/modules/services/logging/graylog.nix
+++ b/nixpkgs/nixos/modules/services/logging/graylog.nix
@@ -132,7 +132,7 @@ in
         description = "Graylog server daemon user";
       };
     };
-    users.groups = mkIf (cfg.user == "graylog") {};
+    users.groups = mkIf (cfg.user == "graylog") { graylog = {}; };
 
     systemd.tmpfiles.rules = [
       "d '${cfg.messageJournalDir}' - ${cfg.user} - - -"
diff --git a/nixpkgs/nixos/modules/services/matrix/matrix-synapse.xml b/nixpkgs/nixos/modules/services/matrix/matrix-synapse.xml
index cdc4b4de1a73..cf33957d58ec 100644
--- a/nixpkgs/nixos/modules/services/matrix/matrix-synapse.xml
+++ b/nixpkgs/nixos/modules/services/matrix/matrix-synapse.xml
@@ -119,7 +119,7 @@ in {
     <link linkend="opt-services.matrix-synapse.settings.listeners">listeners</link> = [
       {
         <link linkend="opt-services.matrix-synapse.settings.listeners._.port">port</link> = 8008;
-        <link linkend="opt-services.matrix-synapse.settings.listeners._.bind_addresses">bind_address</link> = [ "::1" ];
+        <link linkend="opt-services.matrix-synapse.settings.listeners._.bind_addresses">bind_addresses</link> = [ "::1" ];
         <link linkend="opt-services.matrix-synapse.settings.listeners._.type">type</link> = "http";
         <link linkend="opt-services.matrix-synapse.settings.listeners._.tls">tls</link> = false;
         <link linkend="opt-services.matrix-synapse.settings.listeners._.x_forwarded">x_forwarded</link> = true;
@@ -152,10 +152,10 @@ in {
 
   <para>
    If you want to run a server with public registration by anybody, you can
-   then enable <literal><link linkend="opt-services.matrix-synapse.settings.enable_registration">services.matrix-synapse.enable_registration</link> =
+   then enable <literal><link linkend="opt-services.matrix-synapse.settings.enable_registration">services.matrix-synapse.settings.enable_registration</link> =
    true;</literal>. Otherwise, or you can generate a registration secret with
    <command>pwgen -s 64 1</command> and set it with
-   <option><link linkend="opt-services.matrix-synapse.settings.registration_shared_secret">services.matrix-synapse.registration_shared_secret</link></option>.
+   <option><link linkend="opt-services.matrix-synapse.settings.registration_shared_secret">services.matrix-synapse.settings.registration_shared_secret</link></option>.
    To create a new user or admin, run the following after you have set the secret
    and have rebuilt NixOS:
 <screen>
diff --git a/nixpkgs/nixos/modules/services/misc/autorandr.nix b/nixpkgs/nixos/modules/services/misc/autorandr.nix
index a65c5c9d11cf..ef799e9ce3b6 100644
--- a/nixpkgs/nixos/modules/services/misc/autorandr.nix
+++ b/nixpkgs/nixos/modules/services/misc/autorandr.nix
@@ -5,6 +5,243 @@ with lib;
 let
 
   cfg = config.services.autorandr;
+  hookType = types.lines;
+
+  matrixOf = n: m: elemType:
+  mkOptionType rec {
+    name = "matrixOf";
+    description =
+      "${toString n}×${toString m} matrix of ${elemType.description}s";
+    check = xss:
+      let listOfSize = l: xs: isList xs && length xs == l;
+      in listOfSize n xss
+      && all (xs: listOfSize m xs && all elemType.check xs) xss;
+    merge = mergeOneOption;
+    getSubOptions = prefix: elemType.getSubOptions (prefix ++ [ "*" "*" ]);
+    getSubModules = elemType.getSubModules;
+    substSubModules = mod: matrixOf n m (elemType.substSubModules mod);
+    functor = (defaultFunctor name) // { wrapped = elemType; };
+  };
+
+  profileModule = types.submodule {
+    options = {
+      fingerprint = mkOption {
+        type = types.attrsOf types.str;
+        description = ''
+          Output name to EDID mapping.
+          Use <code>autorandr --fingerprint</code> to get current setup values.
+        '';
+        default = { };
+      };
+
+      config = mkOption {
+        type = types.attrsOf configModule;
+        description = "Per output profile configuration.";
+        default = { };
+      };
+
+      hooks = mkOption {
+        type = hooksModule;
+        description = "Profile hook scripts.";
+        default = { };
+      };
+    };
+  };
+
+  configModule = types.submodule {
+    options = {
+      enable = mkOption {
+        type = types.bool;
+        description = "Whether to enable the output.";
+        default = true;
+      };
+
+      crtc = mkOption {
+        type = types.nullOr types.ints.unsigned;
+        description = "Output video display controller.";
+        default = null;
+        example = 0;
+      };
+
+      primary = mkOption {
+        type = types.bool;
+        description = "Whether output should be marked as primary";
+        default = false;
+      };
+
+      position = mkOption {
+        type = types.str;
+        description = "Output position";
+        default = "";
+        example = "5760x0";
+      };
+
+      mode = mkOption {
+        type = types.str;
+        description = "Output resolution.";
+        default = "";
+        example = "3840x2160";
+      };
+
+      rate = mkOption {
+        type = types.str;
+        description = "Output framerate.";
+        default = "";
+        example = "60.00";
+      };
+
+      gamma = mkOption {
+        type = types.str;
+        description = "Output gamma configuration.";
+        default = "";
+        example = "1.0:0.909:0.833";
+      };
+
+      rotate = mkOption {
+        type = types.nullOr (types.enum [ "normal" "left" "right" "inverted" ]);
+        description = "Output rotate configuration.";
+        default = null;
+        example = "left";
+      };
+
+      transform = mkOption {
+        type = types.nullOr (matrixOf 3 3 types.float);
+        default = null;
+        example = literalExpression ''
+          [
+            [ 0.6 0.0 0.0 ]
+            [ 0.0 0.6 0.0 ]
+            [ 0.0 0.0 1.0 ]
+          ]
+        '';
+        description = ''
+          Refer to
+          <citerefentry>
+            <refentrytitle>xrandr</refentrytitle>
+            <manvolnum>1</manvolnum>
+          </citerefentry>
+          for the documentation of the transform matrix.
+        '';
+      };
+
+      dpi = mkOption {
+        type = types.nullOr types.ints.positive;
+        description = "Output DPI configuration.";
+        default = null;
+        example = 96;
+      };
+
+      scale = mkOption {
+        type = types.nullOr (types.submodule {
+          options = {
+            method = mkOption {
+              type = types.enum [ "factor" "pixel" ];
+              description = "Output scaling method.";
+              default = "factor";
+              example = "pixel";
+            };
+
+            x = mkOption {
+              type = types.either types.float types.ints.positive;
+              description = "Horizontal scaling factor/pixels.";
+            };
+
+            y = mkOption {
+              type = types.either types.float types.ints.positive;
+              description = "Vertical scaling factor/pixels.";
+            };
+          };
+        });
+        description = ''
+          Output scale configuration.
+          </para><para>
+          Either configure by pixels or a scaling factor. When using pixel method the
+          <citerefentry>
+            <refentrytitle>xrandr</refentrytitle>
+            <manvolnum>1</manvolnum>
+          </citerefentry>
+          option
+          <parameter class="command">--scale-from</parameter>
+          will be used; when using factor method the option
+          <parameter class="command">--scale</parameter>
+          will be used.
+          </para><para>
+          This option is a shortcut version of the transform option and they are mutually
+          exclusive.
+        '';
+        default = null;
+        example = literalExpression ''
+          {
+            x = 1.25;
+            y = 1.25;
+          }
+        '';
+      };
+    };
+  };
+
+  hooksModule = types.submodule {
+    options = {
+      postswitch = mkOption {
+        type = types.attrsOf hookType;
+        description = "Postswitch hook executed after mode switch.";
+        default = { };
+      };
+
+      preswitch = mkOption {
+        type = types.attrsOf hookType;
+        description = "Preswitch hook executed before mode switch.";
+        default = { };
+      };
+
+      predetect = mkOption {
+        type = types.attrsOf hookType;
+        description = ''
+          Predetect hook executed before autorandr attempts to run xrandr.
+        '';
+        default = { };
+      };
+    };
+  };
+
+  hookToFile = folder: name: hook:
+    nameValuePair "xdg/autorandr/${folder}/${name}" {
+      source = "${pkgs.writeShellScriptBin "hook" hook}/bin/hook";
+    };
+  profileToFiles = name: profile:
+    with profile;
+    mkMerge ([
+      {
+        "xdg/autorandr/${name}/setup".text = concatStringsSep "\n"
+          (mapAttrsToList fingerprintToString fingerprint);
+        "xdg/autorandr/${name}/config".text =
+          concatStringsSep "\n" (mapAttrsToList configToString profile.config);
+      }
+      (mapAttrs' (hookToFile "${name}/postswitch.d") hooks.postswitch)
+      (mapAttrs' (hookToFile "${name}/preswitch.d") hooks.preswitch)
+      (mapAttrs' (hookToFile "${name}/predetect.d") hooks.predetect)
+    ]);
+  fingerprintToString = name: edid: "${name} ${edid}";
+  configToString = name: config:
+    if config.enable then
+      concatStringsSep "\n" ([ "output ${name}" ]
+        ++ optional (config.position != "") "pos ${config.position}"
+        ++ optional (config.crtc != null) "crtc ${toString config.crtc}"
+        ++ optional config.primary "primary"
+        ++ optional (config.dpi != null) "dpi ${toString config.dpi}"
+        ++ optional (config.gamma != "") "gamma ${config.gamma}"
+        ++ optional (config.mode != "") "mode ${config.mode}"
+        ++ optional (config.rate != "") "rate ${config.rate}"
+        ++ optional (config.rotate != null) "rotate ${config.rotate}"
+        ++ optional (config.transform != null) ("transform "
+          + concatMapStringsSep "," toString (flatten config.transform))
+        ++ optional (config.scale != null)
+        ((if config.scale.method == "factor" then "scale" else "scale-from")
+          + " ${toString config.scale.x}x${toString config.scale.y}"))
+    else ''
+      output ${name}
+      off
+    '';
 
 in {
 
@@ -22,6 +259,67 @@ in {
           for further reference.
         '';
       };
+
+      hooks = mkOption {
+        type = hooksModule;
+        description = "Global hook scripts";
+        default = { };
+        example = ''
+          {
+            postswitch = {
+              "notify-i3" = "''${pkgs.i3}/bin/i3-msg restart";
+              "change-background" = readFile ./change-background.sh;
+              "change-dpi" = '''
+                case "$AUTORANDR_CURRENT_PROFILE" in
+                  default)
+                    DPI=120
+                    ;;
+                  home)
+                    DPI=192
+                    ;;
+                  work)
+                    DPI=144
+                    ;;
+                  *)
+                    echo "Unknown profle: $AUTORANDR_CURRENT_PROFILE"
+                    exit 1
+                esac
+                echo "Xft.dpi: $DPI" | ''${pkgs.xorg.xrdb}/bin/xrdb -merge
+              '''
+            };
+          }
+        '';
+      };
+      profiles = mkOption {
+        type = types.attrsOf profileModule;
+        description = "Autorandr profiles specification.";
+        default = { };
+        example = literalExpression ''
+          {
+            "work" = {
+              fingerprint = {
+                eDP1 = "<EDID>";
+                DP1 = "<EDID>";
+              };
+              config = {
+                eDP1.enable = false;
+                DP1 = {
+                  enable = true;
+                  crtc = 0;
+                  primary = true;
+                  position = "0x0";
+                  mode = "3840x2160";
+                  gamma = "1.0:0.909:0.833";
+                  rate = "60.00";
+                  rotate = "left";
+                };
+              };
+              hooks.postswitch = readFile ./work-postswitch.sh;
+            };
+          }
+        '';
+      };
+
     };
 
   };
@@ -30,7 +328,15 @@ in {
 
     services.udev.packages = [ pkgs.autorandr ];
 
-    environment.systemPackages = [ pkgs.autorandr ];
+    environment = {
+      systemPackages = [ pkgs.autorandr ];
+      etc = mkMerge ([
+        (mapAttrs' (hookToFile "postswitch.d") cfg.hooks.postswitch)
+        (mapAttrs' (hookToFile "preswitch.d") cfg.hooks.preswitch)
+        (mapAttrs' (hookToFile "predetect.d") cfg.hooks.predetect)
+        (mkMerge (mapAttrsToList profileToFiles cfg.profiles))
+      ]);
+    };
 
     systemd.services.autorandr = {
       wantedBy = [ "sleep.target" ];
@@ -49,5 +355,5 @@ in {
 
   };
 
-  meta.maintainers = with maintainers; [ ];
+  meta.maintainers = with maintainers; [ alexnortung ];
 }
diff --git a/nixpkgs/nixos/modules/services/misc/dendrite.nix b/nixpkgs/nixos/modules/services/misc/dendrite.nix
index b2885b094153..89bb989a09ec 100644
--- a/nixpkgs/nixos/modules/services/misc/dendrite.nix
+++ b/nixpkgs/nixos/modules/services/misc/dendrite.nix
@@ -248,14 +248,11 @@ in
         RuntimeDirectory = "dendrite";
         RuntimeDirectoryMode = "0700";
         EnvironmentFile = lib.mkIf (cfg.environmentFile != null) cfg.environmentFile;
-        ExecStartPre =
-          if (cfg.environmentFile != null) then ''
-            ${pkgs.envsubst}/bin/envsubst \
-              -i ${configurationYaml} \
-              -o /run/dendrite/dendrite.yaml
-          '' else ''
-            ${pkgs.coreutils}/bin/cp ${configurationYaml} /run/dendrite/dendrite.yaml
-          '';
+        ExecStartPre = ''
+          ${pkgs.envsubst}/bin/envsubst \
+            -i ${configurationYaml} \
+            -o /run/dendrite/dendrite.yaml
+        '';
         ExecStart = lib.strings.concatStringsSep " " ([
           "${pkgs.dendrite}/bin/dendrite-monolith-server"
           "--config /run/dendrite/dendrite.yaml"
diff --git a/nixpkgs/nixos/modules/services/misc/moonraker.nix b/nixpkgs/nixos/modules/services/misc/moonraker.nix
index ae57aaa6d479..b75227effa04 100644
--- a/nixpkgs/nixos/modules/services/misc/moonraker.nix
+++ b/nixpkgs/nixos/modules/services/misc/moonraker.nix
@@ -79,6 +79,19 @@ in {
           for supported values.
         '';
       };
+
+      allowSystemControl = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to allow Moonraker to perform system-level operations.
+
+          Moonraker exposes APIs to perform system-level operations, such as
+          reboot, shutdown, and management of systemd units. See the
+          <link xlink:href="https://moonraker.readthedocs.io/en/latest/web_api/#machine-commands">documentation</link>
+          for details on what clients are able to do.
+        '';
+      };
     };
   };
 
@@ -86,6 +99,13 @@ in {
     warnings = optional (cfg.settings ? update_manager)
       ''Enabling update_manager is not supported on NixOS and will lead to non-removable warnings in some clients.'';
 
+    assertions = [
+      {
+        assertion = cfg.allowSystemControl -> config.security.polkit.enable;
+        message = "services.moonraker.allowSystemControl requires polkit to be enabled (security.polkit.enable).";
+      }
+    ];
+
     users.users = optionalAttrs (cfg.user == "moonraker") {
       moonraker = {
         group = cfg.group;
@@ -128,11 +148,31 @@ in {
         exec ${pkg}/bin/moonraker -c ${cfg.configDir}/moonraker-temp.cfg
       '';
 
+      # Needs `ip` command
+      path = [ pkgs.iproute2 ];
+
       serviceConfig = {
         WorkingDirectory = cfg.stateDir;
         Group = cfg.group;
         User = cfg.user;
       };
     };
+
+    security.polkit.extraConfig = lib.optionalString cfg.allowSystemControl ''
+      // nixos/moonraker: Allow Moonraker to perform system-level operations
+      //
+      // This was enabled via services.moonraker.allowSystemControl.
+      polkit.addRule(function(action, subject) {
+        if ((action.id == "org.freedesktop.systemd1.manage-units" ||
+             action.id == "org.freedesktop.login1.power-off" ||
+             action.id == "org.freedesktop.login1.power-off-multiple-sessions" ||
+             action.id == "org.freedesktop.login1.reboot" ||
+             action.id == "org.freedesktop.login1.reboot-multiple-sessions" ||
+             action.id.startsWith("org.freedesktop.packagekit.")) &&
+             subject.user == "${cfg.user}") {
+          return polkit.Result.YES;
+        }
+      });
+    '';
   };
 }
diff --git a/nixpkgs/nixos/modules/services/misc/nix-daemon.nix b/nixpkgs/nixos/modules/services/misc/nix-daemon.nix
index 2b21df91b82f..d56808c7564e 100644
--- a/nixpkgs/nixos/modules/services/misc/nix-daemon.nix
+++ b/nixpkgs/nixos/modules/services/misc/nix-daemon.nix
@@ -112,11 +112,11 @@ in
 
 {
   imports = [
-    (mkRenamedOptionModule [ "nix" "useChroot" ] [ "nix" "useSandbox" ])
-    (mkRenamedOptionModule [ "nix" "chrootDirs" ] [ "nix" "sandboxPaths" ])
-    (mkRenamedOptionModule [ "nix" "daemonIONiceLevel" ] [ "nix" "daemonIOSchedPriority" ])
+    (mkRenamedOptionModuleWith { sinceRelease = 2003; from = [ "nix" "useChroot" ]; to = [ "nix" "useSandbox" ]; })
+    (mkRenamedOptionModuleWith { sinceRelease = 2003; from = [ "nix" "chrootDirs" ]; to = [ "nix" "sandboxPaths" ]; })
+    (mkRenamedOptionModuleWith { sinceRelease = 2205; from = [ "nix" "daemonIONiceLevel" ]; to = [ "nix" "daemonIOSchedPriority" ]; })
     (mkRemovedOptionModule [ "nix" "daemonNiceLevel" ] "Consider nix.daemonCPUSchedPolicy instead.")
-  ] ++ mapAttrsToList (oldConf: newConf: mkRenamedOptionModule [ "nix" oldConf ] [ "nix" "settings" newConf ]) legacyConfMappings;
+  ] ++ mapAttrsToList (oldConf: newConf: mkRenamedOptionModuleWith { sinceRelease = 2205; from = [ "nix" oldConf ]; to = [ "nix" "settings" newConf ]; }) legacyConfMappings;
 
   ###### interface
 
diff --git a/nixpkgs/nixos/modules/services/misc/nix-gc.nix b/nixpkgs/nixos/modules/services/misc/nix-gc.nix
index a7a6a3b59644..b4b4b55a6c82 100644
--- a/nixpkgs/nixos/modules/services/misc/nix-gc.nix
+++ b/nixpkgs/nixos/modules/services/misc/nix-gc.nix
@@ -81,8 +81,14 @@ in
   ###### implementation
 
   config = {
-
-    systemd.services.nix-gc = {
+    assertions = [
+      {
+        assertion = cfg.automatic -> config.nix.enable;
+        message = ''nix.gc.automatic requires nix.enable'';
+      }
+    ];
+
+    systemd.services.nix-gc = lib.mkIf config.nix.enable {
       description = "Nix Garbage Collector";
       script = "exec ${config.nix.package.out}/bin/nix-collect-garbage ${cfg.options}";
       startAt = optional cfg.automatic cfg.dates;
diff --git a/nixpkgs/nixos/modules/services/misc/nix-optimise.nix b/nixpkgs/nixos/modules/services/misc/nix-optimise.nix
index e02026d5f76c..acf8177b146a 100644
--- a/nixpkgs/nixos/modules/services/misc/nix-optimise.nix
+++ b/nixpkgs/nixos/modules/services/misc/nix-optimise.nix
@@ -37,8 +37,14 @@ in
   ###### implementation
 
   config = {
-
-    systemd.services.nix-optimise =
+    assertions = [
+      {
+        assertion = cfg.automatic -> config.nix.enable;
+        message = ''nix.optimise.automatic requires nix.enable'';
+      }
+    ];
+
+    systemd.services.nix-optimise = lib.mkIf config.nix.enable
       { description = "Nix Store Optimiser";
         # No point this if the nix daemon (and thus the nix store) is outside
         unitConfig.ConditionPathIsReadWrite = "/nix/var/nix/daemon-socket";
diff --git a/nixpkgs/nixos/modules/services/misc/paperless-ng.nix b/nixpkgs/nixos/modules/services/misc/paperless-ng.nix
index 44efc234a2b3..11e44f5ece57 100644
--- a/nixpkgs/nixos/modules/services/misc/paperless-ng.nix
+++ b/nixpkgs/nixos/modules/services/misc/paperless-ng.nix
@@ -214,6 +214,8 @@ in
         User = cfg.user;
         ExecStart = "${cfg.package}/bin/paperless-ng qcluster";
         Restart = "on-failure";
+        # The `mbind` syscall is needed for running the classifier.
+        SystemCallFilter = defaultServiceConfig.SystemCallFilter ++ [ "mbind" ];
       };
       environment = env;
       wantedBy = [ "multi-user.target" ];
diff --git a/nixpkgs/nixos/modules/services/monitoring/grafana.nix b/nixpkgs/nixos/modules/services/monitoring/grafana.nix
index 81fca33f5fec..b959379d331a 100644
--- a/nixpkgs/nixos/modules/services/monitoring/grafana.nix
+++ b/nixpkgs/nixos/modules/services/monitoring/grafana.nix
@@ -214,6 +214,11 @@ let
           type = types.path;
           description = "Path grafana will watch for dashboards.";
         };
+        foldersFromFilesStructure = mkOption {
+          type = types.bool;
+          default = false;
+          description = "Use folder names from filesystem to create folders in Grafana.";
+        };
       };
     };
   };
diff --git a/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/varnish.nix b/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/varnish.nix
index 5b5a6e18fcd6..ede6028933a4 100644
--- a/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/varnish.nix
+++ b/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/varnish.nix
@@ -45,7 +45,8 @@ in
     };
     instance = mkOption {
       type = types.nullOr types.str;
-      default = null;
+      default = config.services.varnish.stateDir;
+      defaultText = lib.literalExpression "config.services.varnish.stateDir";
       description = ''
         varnishstat -n value.
       '';
@@ -66,7 +67,7 @@ in
     };
   };
   serviceOpts = {
-    path = [ pkgs.varnish ];
+    path = [ config.services.varnish.package ];
     serviceConfig = {
       RestartSec = mkDefault 1;
       DynamicUser = false;
diff --git a/nixpkgs/nixos/modules/services/network-filesystems/ipfs.nix b/nixpkgs/nixos/modules/services/network-filesystems/ipfs.nix
index 17da020bf3e2..7e96179b3cab 100644
--- a/nixpkgs/nixos/modules/services/network-filesystems/ipfs.nix
+++ b/nixpkgs/nixos/modules/services/network-filesystems/ipfs.nix
@@ -1,16 +1,17 @@
-{ config, lib, pkgs, options, ... }:
+{ config, lib, pkgs, options, utils, ... }:
 with lib;
 let
   cfg = config.services.ipfs;
   opt = options.services.ipfs;
 
-  ipfsFlags = toString ([
-    (optionalString cfg.autoMount "--mount")
-    (optionalString cfg.enableGC "--enable-gc")
-    (optionalString (cfg.serviceFdlimit != null) "--manage-fdlimit=false")
-    (optionalString (cfg.defaultMode == "offline") "--offline")
-    (optionalString (cfg.defaultMode == "norouting") "--routing=none")
-  ] ++ cfg.extraFlags);
+  ipfsFlags = utils.escapeSystemdExecArgs (
+    optional cfg.autoMount "--mount" ++
+    optional cfg.enableGC "--enable-gc" ++
+    optional (cfg.serviceFdlimit != null) "--manage-fdlimit=false" ++
+    optional (cfg.defaultMode == "offline") "--offline" ++
+    optional (cfg.defaultMode == "norouting") "--routing=none" ++
+    cfg.extraFlags
+  );
 
   profile =
     if cfg.localDiscovery
@@ -239,7 +240,10 @@ in
       "d '${cfg.ipnsMountDir}' - ${cfg.user} ${cfg.group} - -"
     ];
 
-    systemd.packages = [ cfg.package ];
+    # The hardened systemd unit breaks the fuse-mount function according to documentation in the unit file itself
+    systemd.packages = if cfg.autoMount
+      then [ cfg.package.systemd_unit ]
+      else [ cfg.package.systemd_unit_hardened ];
 
     systemd.services.ipfs = {
       path = [ "/run/wrappers" cfg.package ];
@@ -275,6 +279,8 @@ in
         ExecStart = [ "" "${cfg.package}/bin/ipfs daemon ${ipfsFlags}" ];
         User = cfg.user;
         Group = cfg.group;
+        StateDirectory = "";
+        ReadWritePaths = [ "" cfg.dataDir ];
       } // optionalAttrs (cfg.serviceFdlimit != null) { LimitNOFILE = cfg.serviceFdlimit; };
     } // optionalAttrs (!cfg.startWhenNeeded) {
       wantedBy = [ "default.target" ];
diff --git a/nixpkgs/nixos/modules/services/network-filesystems/samba.nix b/nixpkgs/nixos/modules/services/network-filesystems/samba.nix
index 9ed755d0465c..992f948e8cd5 100644
--- a/nixpkgs/nixos/modules/services/network-filesystems/samba.nix
+++ b/nixpkgs/nixos/modules/services/network-filesystems/samba.nix
@@ -224,6 +224,7 @@ in
           targets.samba = {
             description = "Samba Server";
             after = [ "network.target" ];
+            wants = [ "network-online.target" ];
             wantedBy = [ "multi-user.target" ];
           };
           # Refer to https://github.com/samba-team/samba/tree/master/packaging/systemd
diff --git a/nixpkgs/nixos/modules/services/networking/dhcpd.nix b/nixpkgs/nixos/modules/services/networking/dhcpd.nix
index 3c4c0069dfd0..49950efc0a1b 100644
--- a/nixpkgs/nixos/modules/services/networking/dhcpd.nix
+++ b/nixpkgs/nixos/modules/services/networking/dhcpd.nix
@@ -7,7 +7,7 @@ let
   cfg4 = config.services.dhcpd4;
   cfg6 = config.services.dhcpd6;
 
-  writeConfig = cfg: pkgs.writeText "dhcpd.conf"
+  writeConfig = postfix: cfg: pkgs.writeText "dhcpd.conf"
     ''
       default-lease-time 600;
       max-lease-time 7200;
@@ -21,7 +21,9 @@ let
           (machine: ''
             host ${machine.hostName} {
               hardware ethernet ${machine.ethernetAddress};
-              fixed-address ${machine.ipAddress};
+              fixed-address${
+                optionalString (postfix == "6") postfix
+              } ${machine.ipAddress};
             }
           '')
           cfg.machines
@@ -33,7 +35,7 @@ let
       configFile =
         if cfg.configFile != null
           then cfg.configFile
-          else writeConfig cfg;
+          else writeConfig postfix cfg;
       leaseFile = "/var/lib/dhcpd${postfix}/dhcpd.leases";
       args = [
         "@${pkgs.dhcp}/sbin/dhcpd" "dhcpd${postfix}" "-${postfix}"
diff --git a/nixpkgs/nixos/modules/services/networking/https-dns-proxy.nix b/nixpkgs/nixos/modules/services/networking/https-dns-proxy.nix
new file mode 100644
index 000000000000..85d6c362b466
--- /dev/null
+++ b/nixpkgs/nixos/modules/services/networking/https-dns-proxy.nix
@@ -0,0 +1,128 @@
+{ config, lib, pkgs, ... }:
+
+let
+  inherit (lib)
+    concatStringsSep
+    mkEnableOption mkIf mkOption types;
+
+  cfg = config.services.https-dns-proxy;
+
+  providers = {
+    cloudflare = {
+      ips = [ "1.1.1.1" "1.0.0.1" ];
+      url = "https://cloudflare-dns.com/dns-query";
+    };
+    google = {
+      ips = [ "8.8.8.8" "8.8.4.4" ];
+      url = "https://dns.google/dns-query";
+    };
+    quad9 = {
+      ips = [ "9.9.9.9" "149.112.112.112" ];
+      url = "https://dns.quad9.net/dns-query";
+    };
+  };
+
+  defaultProvider = "quad9";
+
+  providerCfg =
+    let
+      isCustom = cfg.provider.kind == "custom";
+    in
+    lib.concatStringsSep " " [
+      "-b"
+      (concatStringsSep "," (if isCustom then cfg.provider.ips else providers."${cfg.provider.kind}".ips))
+      "-r"
+      (if isCustom then cfg.provider.url else providers."${cfg.provider.kind}".url)
+    ];
+
+in
+{
+  meta.maintainers = with lib.maintainers; [ peterhoeg ];
+
+  ###### interface
+
+  options.services.https-dns-proxy = {
+    enable = mkEnableOption "https-dns-proxy daemon";
+
+    address = mkOption {
+      description = "The address on which to listen";
+      type = types.str;
+      default = "127.0.0.1";
+    };
+
+    port = mkOption {
+      description = "The port on which to listen";
+      type = types.port;
+      default = 5053;
+    };
+
+    provider = {
+      kind = mkOption {
+        description = ''
+          The upstream provider to use or custom in case you do not trust any of
+          the predefined providers or just want to use your own.
+
+          The default is ${defaultProvider} and there are privacy and security trade-offs
+          when using any upstream provider. Please consider that before using any
+          of them.
+
+          If you pick a custom provider, you will need to provide the bootstrap
+          IP addresses as well as the resolver https URL.
+        '';
+        type = types.enum ((builtins.attrNames providers) ++ [ "custom" ]);
+        default = defaultProvider;
+      };
+
+      ips = mkOption {
+        description = "The custom provider IPs";
+        type = types.listOf types.str;
+      };
+
+      url = mkOption {
+        description = "The custom provider URL";
+        type = types.str;
+      };
+    };
+
+    preferIPv4 = mkOption {
+      description = ''
+        https_dns_proxy will by default use IPv6 and fail if it is not available.
+        To play it safe, we choose IPv4.
+      '';
+      type = types.bool;
+      default = true;
+    };
+
+    extraArgs = mkOption {
+      description = "Additional arguments to pass to the process.";
+      type = types.listOf types.str;
+      default = [ "-v" ];
+    };
+  };
+
+  ###### implementation
+
+  config = lib.mkIf cfg.enable {
+    systemd.services.https-dns-proxy = {
+      description = "DNS to DNS over HTTPS (DoH) proxy";
+      after = [ "network.target" ];
+      wantedBy = [ "multi-user.target" ];
+      serviceConfig = rec {
+        Type = "exec";
+        DynamicUser = true;
+        ExecStart = lib.concatStringsSep " " (
+          [
+            "${pkgs.https-dns-proxy}/bin/https_dns_proxy"
+            "-a ${toString cfg.address}"
+            "-p ${toString cfg.port}"
+            "-l -"
+            providerCfg
+          ]
+          ++ lib.optional cfg.preferIPv4 "-4"
+          ++ cfg.extraArgs
+        );
+        Restart = "on-failure";
+      };
+    };
+  };
+}
diff --git a/nixpkgs/nixos/modules/services/networking/iwd.nix b/nixpkgs/nixos/modules/services/networking/iwd.nix
index 8835f7f9372d..5c1480e7e2fb 100644
--- a/nixpkgs/nixos/modules/services/networking/iwd.nix
+++ b/nixpkgs/nixos/modules/services/networking/iwd.nix
@@ -1,12 +1,21 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
+  inherit (lib)
+    mkEnableOption mkIf mkOption types
+    recursiveUpdate;
+
   cfg = config.networking.wireless.iwd;
   ini = pkgs.formats.ini { };
-  configFile = ini.generate "main.conf" cfg.settings;
-in {
+  defaults = {
+    # without UseDefaultInterface, sometimes wlan0 simply goes AWOL with NetworkManager
+    # https://iwd.wiki.kernel.org/interface_lifecycle#interface_management_in_iwd
+    General.UseDefaultInterface = with config.networking.networkmanager; (enable && (wifi.backend == "iwd"));
+  };
+  configFile = ini.generate "main.conf" (recursiveUpdate defaults cfg.settings);
+
+in
+{
   options.networking.wireless.iwd = {
     enable = mkEnableOption "iwd";
 
@@ -38,10 +47,10 @@ in {
       '';
     }];
 
-    environment.etc."iwd/main.conf".source = configFile;
+    environment.etc."iwd/${configFile.name}".source = configFile;
 
     # for iwctl
-    environment.systemPackages =  [ pkgs.iwd ];
+    environment.systemPackages = [ pkgs.iwd ];
 
     services.dbus.packages = [ pkgs.iwd ];
 
diff --git a/nixpkgs/nixos/modules/services/networking/nsd.nix b/nixpkgs/nixos/modules/services/networking/nsd.nix
index cf6c9661dc1b..a51fc5345342 100644
--- a/nixpkgs/nixos/modules/services/networking/nsd.nix
+++ b/nixpkgs/nixos/modules/services/networking/nsd.nix
@@ -194,19 +194,8 @@ let
                        zone.children
       );
 
-  # fighting infinite recursion
-  zoneOptions = zoneOptionsRaw // childConfig zoneOptions1 true;
-  zoneOptions1 = zoneOptionsRaw // childConfig zoneOptions2 false;
-  zoneOptions2 = zoneOptionsRaw // childConfig zoneOptions3 false;
-  zoneOptions3 = zoneOptionsRaw // childConfig zoneOptions4 false;
-  zoneOptions4 = zoneOptionsRaw // childConfig zoneOptions5 false;
-  zoneOptions5 = zoneOptionsRaw // childConfig zoneOptions6 false;
-  zoneOptions6 = zoneOptionsRaw // childConfig null         false;
-
-  childConfig = x: v: { options.children = { type = types.attrsOf x; visible = v; }; };
-
   # options are ordered alphanumerically
-  zoneOptionsRaw = types.submodule {
+  zoneOptions = types.submodule {
     options = {
 
       allowAXFRFallback = mkOption {
@@ -246,6 +235,13 @@ let
       };
 
       children = mkOption {
+        # TODO: This relies on the fact that `types.anything` doesn't set any
+        # values of its own to any defaults, because in the above zoneConfigs',
+        # values from children override ones from parents, but only if the
+        # attributes are defined. Because of this, we can't replace the element
+        # type here with `zoneConfigs`, since that would set all the attributes
+        # to default values, breaking the parent inheriting function.
+        type = types.attrsOf types.anything;
         default = {};
         description = ''
           Children zones inherit all options of their parents. Attributes
diff --git a/nixpkgs/nixos/modules/services/networking/pleroma.nix b/nixpkgs/nixos/modules/services/networking/pleroma.nix
index 9b8382392c0a..c6d4c14dcb7e 100644
--- a/nixpkgs/nixos/modules/services/networking/pleroma.nix
+++ b/nixpkgs/nixos/modules/services/networking/pleroma.nix
@@ -1,6 +1,7 @@
 { config, options, lib, pkgs, stdenv, ... }:
 let
   cfg = config.services.pleroma;
+  cookieFile = "/var/lib/pleroma/.cookie";
 in {
   options = {
     services.pleroma = with lib; {
@@ -8,7 +9,7 @@ in {
 
       package = mkOption {
         type = types.package;
-        default = pkgs.pleroma;
+        default = pkgs.pleroma.override { inherit cookieFile; };
         defaultText = literalExpression "pkgs.pleroma";
         description = "Pleroma package to use.";
       };
@@ -100,7 +101,6 @@ in {
       after = [ "network-online.target" "postgresql.service" ];
       wantedBy = [ "multi-user.target" ];
       restartTriggers = [ config.environment.etc."/pleroma/config.exs".source ];
-      environment.RELEASE_COOKIE = "/var/lib/pleroma/.cookie";
       serviceConfig = {
         User = cfg.user;
         Group = cfg.group;
@@ -118,10 +118,10 @@ in {
         # Better be safe than sorry migration-wise.
         ExecStartPre =
           let preScript = pkgs.writers.writeBashBin "pleromaStartPre" ''
-            if [ ! -f /var/lib/pleroma/.cookie ]
+            if [ ! -f "${cookieFile}" ] || [ ! -s "${cookieFile}" ]
             then
               echo "Creating cookie file"
-              dd if=/dev/urandom bs=1 count=16 | hexdump -e '16/1 "%02x"' > /var/lib/pleroma/.cookie
+              dd if=/dev/urandom bs=1 count=16 | ${pkgs.hexdump}/bin/hexdump -e '16/1 "%02x"' > "${cookieFile}"
             fi
             ${cfg.package}/bin/pleroma_ctl migrate
           '';
diff --git a/nixpkgs/nixos/modules/services/networking/powerdns.nix b/nixpkgs/nixos/modules/services/networking/powerdns.nix
index 8cae61b83543..b035698456c0 100644
--- a/nixpkgs/nixos/modules/services/networking/powerdns.nix
+++ b/nixpkgs/nixos/modules/services/networking/powerdns.nix
@@ -24,14 +24,14 @@ in {
 
   config = mkIf cfg.enable {
 
-    systemd.packages = [ pkgs.powerdns ];
+    systemd.packages = [ pkgs.pdns ];
 
     systemd.services.pdns = {
       wantedBy = [ "multi-user.target" ];
       after = [ "network.target" "mysql.service" "postgresql.service" "openldap.service" ];
 
       serviceConfig = {
-        ExecStart = [ "" "${pkgs.powerdns}/bin/pdns_server --config-dir=${configDir} --guardian=no --daemon=no --disable-syslog --log-timestamp=no --write-pid=no" ];
+        ExecStart = [ "" "${pkgs.pdns}/bin/pdns_server --config-dir=${configDir} --guardian=no --daemon=no --disable-syslog --log-timestamp=no --write-pid=no" ];
       };
     };
 
diff --git a/nixpkgs/nixos/modules/services/networking/squid.nix b/nixpkgs/nixos/modules/services/networking/squid.nix
index 4f3881af8bbf..db4f0d26b6f4 100644
--- a/nixpkgs/nixos/modules/services/networking/squid.nix
+++ b/nixpkgs/nixos/modules/services/networking/squid.nix
@@ -111,6 +111,13 @@ in
         description = "Whether to run squid web proxy.";
       };
 
+      package = mkOption {
+        default = pkgs.squid;
+        defaultText = literalExpression "pkgs.squid";
+        type = types.package;
+        description = "Squid package to use.";
+      };
+
       proxyAddress = mkOption {
         type = types.nullOr types.str;
         default = null;
@@ -157,17 +164,21 @@ in
     users.groups.squid = {};
 
     systemd.services.squid = {
-      description = "Squid caching web proxy";
+      description = "Squid caching proxy";
+      documentation = [ "man:squid(8)" ];
       after = [ "network.target" "nss-lookup.target" ];
       wantedBy = [ "multi-user.target"];
       preStart = ''
         mkdir -p "/var/log/squid"
         chown squid:squid "/var/log/squid"
+        ${cfg.package}/bin/squid --foreground -z -f ${squidConfig}
       '';
       serviceConfig = {
-        Type="forking";
         PIDFile="/run/squid.pid";
-        ExecStart  = "${pkgs.squid}/bin/squid -YCs -f ${squidConfig}";
+        ExecStart  = "${cfg.package}/bin/squid --foreground -YCs -f ${squidConfig}";
+        ExecReload="kill -HUP $MAINPID";
+        KillMode="mixed";
+        NotifyAccess="all";
       };
     };
 
diff --git a/nixpkgs/nixos/modules/services/networking/unbound.nix b/nixpkgs/nixos/modules/services/networking/unbound.nix
index f6e963490924..87873c8c1e83 100644
--- a/nixpkgs/nixos/modules/services/networking/unbound.nix
+++ b/nixpkgs/nixos/modules/services/networking/unbound.nix
@@ -62,6 +62,7 @@ in {
       };
 
       stateDir = mkOption {
+        type = types.path;
         default = "/var/lib/unbound";
         description = "Directory holding all state for unbound to run.";
       };
diff --git a/nixpkgs/nixos/modules/services/networking/vsftpd.nix b/nixpkgs/nixos/modules/services/networking/vsftpd.nix
index 710c2d9ca17b..d205302051e1 100644
--- a/nixpkgs/nixos/modules/services/networking/vsftpd.nix
+++ b/nixpkgs/nixos/modules/services/networking/vsftpd.nix
@@ -153,6 +153,7 @@ in
 
       userlist = mkOption {
         default = [];
+        type = types.listOf types.str;
         description = "See <option>userlistFile</option>.";
       };
 
diff --git a/nixpkgs/nixos/modules/services/networking/wg-quick.nix b/nixpkgs/nixos/modules/services/networking/wg-quick.nix
index 414775fc3577..61e9fe5096b1 100644
--- a/nixpkgs/nixos/modules/services/networking/wg-quick.nix
+++ b/nixpkgs/nixos/modules/services/networking/wg-quick.nix
@@ -17,6 +17,13 @@ let
         description = "The IP addresses of the interface.";
       };
 
+      autostart = mkOption {
+        description = "Whether to bring up this interface automatically during boot.";
+        default = true;
+        example = false;
+        type = types.bool;
+      };
+
       dns = mkOption {
         example = [ "192.168.2.2" ];
         default = [];
@@ -247,7 +254,7 @@ let
         description = "wg-quick WireGuard Tunnel - ${name}";
         requires = [ "network-online.target" ];
         after = [ "network.target" "network-online.target" ];
-        wantedBy = [ "multi-user.target" ];
+        wantedBy = optional values.autostart "multi-user.target";
         environment.DEVICE = name;
         path = [ pkgs.kmod pkgs.wireguard-tools ];
 
diff --git a/nixpkgs/nixos/modules/services/security/oauth2_proxy.nix b/nixpkgs/nixos/modules/services/security/oauth2_proxy.nix
index 4d3562424170..ce295bd4ba3b 100644
--- a/nixpkgs/nixos/modules/services/security/oauth2_proxy.nix
+++ b/nixpkgs/nixos/modules/services/security/oauth2_proxy.nix
@@ -102,17 +102,19 @@ in
     # Taken from: https://github.com/oauth2-proxy/oauth2-proxy/blob/master/providers/providers.go
     provider = mkOption {
       type = types.enum [
-        "google"
+        "adfs"
         "azure"
+        "bitbucket"
+        "digitalocean"
         "facebook"
         "github"
-        "keycloak"
         "gitlab"
+        "google"
+        "keycloak"
+        "keycloak-oidc"
         "linkedin"
         "login.gov"
-        "bitbucket"
         "nextcloud"
-        "digitalocean"
         "oidc"
       ];
       default = "google";
diff --git a/nixpkgs/nixos/modules/services/security/sslmate-agent.nix b/nixpkgs/nixos/modules/services/security/sslmate-agent.nix
new file mode 100644
index 000000000000..c850eb22a031
--- /dev/null
+++ b/nixpkgs/nixos/modules/services/security/sslmate-agent.nix
@@ -0,0 +1,32 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.sslmate-agent;
+
+in {
+  meta.maintainers = with maintainers; [ wolfangaukang ];
+
+  options = {
+    services.sslmate-agent = {
+      enable = mkEnableOption "sslmate-agent, a daemon for managing SSL/TLS certificates on a server";
+    };
+  };
+
+  config = mkIf cfg.enable {
+    environment.systemPackages = with pkgs; [ sslmate-agent ];
+
+    systemd = {
+      packages = [ pkgs.sslmate-agent ];
+      services.sslmate-agent = {
+        wantedBy = [ "multi-user.target" ];
+        serviceConfig = {
+          ConfigurationDirectory = "sslmate-agent";
+          LogsDirectory = "sslmate-agent";
+          StateDirectory = "sslmate-agent";
+        };
+      };
+    };
+  };
+}
diff --git a/nixpkgs/nixos/modules/services/security/tor.nix b/nixpkgs/nixos/modules/services/security/tor.nix
index ddd216ca7fd0..a5822c02794d 100644
--- a/nixpkgs/nixos/modules/services/security/tor.nix
+++ b/nixpkgs/nixos/modules/services/security/tor.nix
@@ -910,6 +910,11 @@ in
         ORPort = mkForce [];
         PublishServerDescriptor = mkForce false;
       })
+      (mkIf (!cfg.client.enable) {
+        # Make sure application connections via SOCKS are disabled
+        # when services.tor.client.enable is false
+        SOCKSPort = mkForce [ 0 ];
+      })
       (mkIf cfg.client.enable (
         { SOCKSPort = [ cfg.client.socksListenAddress ];
         } // optionalAttrs cfg.client.transparentProxy.enable {
diff --git a/nixpkgs/nixos/modules/services/system/earlyoom.nix b/nixpkgs/nixos/modules/services/system/earlyoom.nix
index ddd5bcebcdd5..629358559890 100644
--- a/nixpkgs/nixos/modules/services/system/earlyoom.nix
+++ b/nixpkgs/nixos/modules/services/system/earlyoom.nix
@@ -5,8 +5,8 @@ let
 
   inherit (lib)
     mkDefault mkEnableOption mkIf mkOption types
-    mkRemovedOptionModule
-    concatStringsSep optional;
+    mkRemovedOptionModule literalExpression
+    escapeShellArg concatStringsSep optional optionalString;
 
 in
 {
@@ -17,10 +17,26 @@ in
       type = types.ints.between 1 100;
       default = 10;
       description = ''
-        Minimum of availabe memory (in percent).
-        If the free memory falls below this threshold and the analog is true for
-        <option>services.earlyoom.freeSwapThreshold</option>
-        the killing begins.
+        Minimum available memory (in percent).
+
+        If the available memory falls below this threshold (and the analog is true for
+        <option>freeSwapThreshold</option>) the killing begins.
+        SIGTERM is sent first to the process that uses the most memory; then, if the available
+        memory falls below <option>freeMemKillThreshold</option> (and the analog is true for
+        <option>freeSwapKillThreshold</option>), SIGKILL is sent.
+
+        See <link xlink:href="https://github.com/rfjakob/earlyoom#command-line-options">README</link> for details.
+      '';
+    };
+
+    freeMemKillThreshold = mkOption {
+      type = types.nullOr (types.ints.between 1 100);
+      default = null;
+      description = ''
+        Minimum available memory (in percent) before sending SIGKILL.
+        If unset, this defaults to half of <option>freeMemThreshold</option>.
+
+        See the description of <xref linkend="opt-services.earlyoom.freeMemThreshold"/>.
       '';
     };
 
@@ -28,19 +44,20 @@ in
       type = types.ints.between 1 100;
       default = 10;
       description = ''
-        Minimum of availabe swap space (in percent).
-        If the available swap space falls below this threshold and the analog
-        is true for <option>services.earlyoom.freeMemThreshold</option>
-        the killing begins.
+        Minimum free swap space (in percent) before sending SIGTERM.
+
+        See the description of <xref linkend="opt-services.earlyoom.freeMemThreshold"/>.
       '';
     };
 
-    # TODO: remove or warn after 1.7 (https://github.com/rfjakob/earlyoom/commit/7ebc4554)
-    ignoreOOMScoreAdjust = mkOption {
-      type = types.bool;
-      default = false;
+    freeSwapKillThreshold = mkOption {
+      type = types.nullOr (types.ints.between 1 100);
+      default = null;
       description = ''
-        Ignore oom_score_adjust values of processes.
+        Minimum free swap space (in percent) before sending SIGKILL.
+        If unset, this defaults to half of <option>freeSwapThreshold</option>.
+
+        See the description of <xref linkend="opt-services.earlyoom.freeMemThreshold"/>.
       '';
     };
 
@@ -63,12 +80,43 @@ in
         local user to DoS your session by spamming notifications.
 
         To actually see the notifications in your GUI session, you need to have
-        <literal>systembus-notify</literal> running as your user which this
-        option handles.
+        <literal>systembus-notify</literal> running as your user, which this
+        option handles by enabling <option>services.systembus-notify</option>.
 
         See <link xlink:href="https://github.com/rfjakob/earlyoom#notifications">README</link> for details.
       '';
     };
+
+    killHook = mkOption {
+      type = types.nullOr types.path;
+      default = null;
+      example = literalExpression ''
+        pkgs.writeShellScript "earlyoom-kill-hook" '''
+          echo "Process $EARLYOOM_NAME ($EARLYOOM_PID) was killed" >> /path/to/log
+        '''
+      '';
+      description = ''
+        An absolute path to an executable to be run for each process killed.
+        Some environment variables are available, see
+        <link xlink:href="https://github.com/rfjakob/earlyoom#notifications">README</link> and
+        <link xlink:href="https://github.com/rfjakob/earlyoom/blob/master/MANPAGE.md#-n-pathtoscript">the man page</link>
+        for details.
+      '';
+    };
+
+    reportInterval = mkOption {
+      type = types.int;
+      default = 3600;
+      example = 0;
+      description = "Interval (in seconds) at which a memory report is printed (set to 0 to disable).";
+    };
+
+    extraArgs = mkOption {
+      type = types.listOf types.str;
+      default = [];
+      example = [ "-g" "--prefer '(^|/)(java|chromium)$'" ];
+      description = "Extra command-line arguments to be passed to earlyoom.";
+    };
   };
 
   imports = [
@@ -76,7 +124,11 @@ in
       This option is deprecated and ignored by earlyoom since 1.2.
     '')
     (mkRemovedOptionModule [ "services" "earlyoom" "notificationsCommand" ] ''
-      This option is deprecated and ignored by earlyoom since 1.6.
+      This option was removed in earlyoom 1.6, but was reimplemented in 1.7
+      and is available as the new option `services.earlyoom.killHook`.
+    '')
+    (mkRemovedOptionModule [ "services" "earlyoom" "ignoreOOMScoreAdjust" ] ''
+      This option is deprecated and ignored by earlyoom since 1.7.
     '')
   ];
 
@@ -91,12 +143,16 @@ in
         StandardError = "journal";
         ExecStart = concatStringsSep " " ([
           "${pkgs.earlyoom}/bin/earlyoom"
-          "-m ${toString cfg.freeMemThreshold}"
-          "-s ${toString cfg.freeSwapThreshold}"
+          ("-m ${toString cfg.freeMemThreshold}"
+            + optionalString (cfg.freeMemKillThreshold != null) ",${toString cfg.freeMemKillThreshold}")
+          ("-s ${toString cfg.freeSwapThreshold}"
+            + optionalString (cfg.freeSwapKillThreshold != null) ",${toString cfg.freeSwapKillThreshold}")
+          "-r ${toString cfg.reportInterval}"
         ]
-        ++ optional cfg.ignoreOOMScoreAdjust "-i"
         ++ optional cfg.enableDebugInfo "-d"
         ++ optional cfg.enableNotifications "-n"
+        ++ optional (cfg.killHook != null) "-N ${escapeShellArg cfg.killHook}"
+        ++ cfg.extraArgs
         );
       };
     };
diff --git a/nixpkgs/nixos/modules/services/video/unifi-video.nix b/nixpkgs/nixos/modules/services/video/unifi-video.nix
index 43208a9fe4cf..11d9fe305470 100644
--- a/nixpkgs/nixos/modules/services/video/unifi-video.nix
+++ b/nixpkgs/nixos/modules/services/video/unifi-video.nix
@@ -16,7 +16,7 @@ let
     -pidfile ${cfg.pidFile} \
     -procname unifi-video \
     -Djava.security.egd=file:/dev/./urandom \
-    -Xmx${cfg.maximumJavaHeapSize}M \
+    -Xmx${toString cfg.maximumJavaHeapSize}M \
     -Xss512K \
     -XX:+UseG1GC \
     -XX:+UseStringDeduplication \
@@ -91,98 +91,102 @@ let
   stateDir = "/var/lib/unifi-video";
 
 in
-  {
-
-    options.services.unifi-video = {
-      enable = mkOption {
-        type = types.bool;
-        default = false;
-        description = ''
-          Whether or not to enable the unifi-video service.
-        '';
-      };
+{
 
-      jrePackage = mkOption {
-        type = types.package;
-        default = pkgs.jre8;
-        defaultText = literalExpression "pkgs.jre8";
-        description = ''
-          The JRE package to use. Check the release notes to ensure it is supported.
-        '';
-      };
+  options.services.unifi-video = {
 
-      unifiVideoPackage = mkOption {
-        type = types.package;
-        default = pkgs.unifi-video;
-        defaultText = literalExpression "pkgs.unifi-video";
-        description = ''
-          The unifi-video package to use.
-        '';
-      };
+    enable = mkOption {
+      type = types.bool;
+      default = false;
+      description = ''
+        Whether or not to enable the unifi-video service.
+      '';
+    };
 
-      mongodbPackage = mkOption {
-        type = types.package;
-        default = pkgs.mongodb-4_0;
-        defaultText = literalExpression "pkgs.mongodb";
-        description = ''
-          The mongodb package to use.
-        '';
-      };
+    jrePackage = mkOption {
+      type = types.package;
+      default = pkgs.jre8;
+      defaultText = literalExpression "pkgs.jre8";
+      description = ''
+        The JRE package to use. Check the release notes to ensure it is supported.
+      '';
+    };
 
-      logDir = mkOption {
-        type = types.str;
-        default = "${stateDir}/logs";
-        description = ''
-          Where to store the logs.
-        '';
-      };
+    unifiVideoPackage = mkOption {
+      type = types.package;
+      default = pkgs.unifi-video;
+      defaultText = literalExpression "pkgs.unifi-video";
+      description = ''
+        The unifi-video package to use.
+      '';
+    };
 
-      dataDir = mkOption {
-        type = types.str;
-        default = "${stateDir}/data";
-        description = ''
-          Where to store the database and other data.
-        '';
-      };
+    mongodbPackage = mkOption {
+      type = types.package;
+      default = pkgs.mongodb-4_0;
+      defaultText = literalExpression "pkgs.mongodb";
+      description = ''
+        The mongodb package to use.
+      '';
+    };
 
-      openPorts = mkOption {
-        type = types.bool;
-        default = true;
-        description = ''
-          Whether or not to open the required ports on the firewall.
-        '';
-      };
+    logDir = mkOption {
+      type = types.str;
+      default = "${stateDir}/logs";
+      description = ''
+        Where to store the logs.
+      '';
+    };
 
-      maximumJavaHeapSize = mkOption {
-        type = types.nullOr types.int;
-        default = 1024;
-        example = 4096;
-        description = ''
-          Set the maximimum heap size for the JVM in MB.
-        '';
-      };
+    dataDir = mkOption {
+      type = types.str;
+      default = "${stateDir}/data";
+      description = ''
+        Where to store the database and other data.
+      '';
+    };
 
-      pidFile = mkOption {
-        type = types.path;
-        default = "${cfg.dataDir}/unifi-video.pid";
-        defaultText = literalExpression ''"''${config.${opt.dataDir}}/unifi-video.pid"'';
-        description = "Location of unifi-video pid file.";
-      };
+    openFirewall = mkOption {
+      type = types.bool;
+      default = true;
+      description = ''
+        Whether or not to open the required ports on the firewall.
+      '';
+    };
+
+    maximumJavaHeapSize = mkOption {
+      type = types.nullOr types.int;
+      default = 1024;
+      example = 4096;
+      description = ''
+        Set the maximimum heap size for the JVM in MB.
+      '';
+    };
+
+    pidFile = mkOption {
+      type = types.path;
+      default = "${cfg.dataDir}/unifi-video.pid";
+      defaultText = literalExpression ''"''${config.${opt.dataDir}}/unifi-video.pid"'';
+      description = "Location of unifi-video pid file.";
+    };
+
+  };
+
+  config = mkIf cfg.enable {
 
-};
+    warnings = optional
+      (options.services.unifi-video.openFirewall.highestPrio >= (mkOptionDefault null).priority)
+      "The current services.unifi-video.openFirewall = true default is deprecated and will change to false in 22.11. Set it explicitly to silence this warning.";
 
-config = mkIf cfg.enable {
-  users = {
-    users.unifi-video = {
+    users.users.unifi-video = {
       description = "UniFi Video controller daemon user";
       home = stateDir;
       group = "unifi-video";
       isSystemUser = true;
     };
-    groups.unifi-video = {};
-  };
+    users.groups.unifi-video = {};
 
-  networking.firewall = mkIf cfg.openPorts {
+    networking.firewall = mkIf cfg.openFirewall {
       # https://help.ui.com/hc/en-us/articles/217875218-UniFi-Video-Ports-Used
       allowedTCPPorts = [
         7080 # HTTP portal
@@ -237,7 +241,6 @@ config = mkIf cfg.enable {
       "L+ '${stateDir}/conf/server.xml' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/server.xml"
       "L+ '${stateDir}/conf/tomcat-users.xml' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/tomcat-users.xml"
       "L+ '${stateDir}/conf/web.xml' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/web.xml"
-
     ];
 
     systemd.services.unifi-video = {
@@ -258,10 +261,11 @@ config = mkIf cfg.enable {
         WorkingDirectory = "${stateDir}";
       };
     };
-
   };
 
-  meta = {
-    maintainers = with lib.maintainers; [ rsynnest ];
-  };
+  imports = [
+    (mkRenamedOptionModule [ "services" "unifi-video" "openPorts" ] [ "services" "unifi-video" "openFirewall" ])
+  ];
+
+  meta.maintainers = with lib.maintainers; [ rsynnest ];
 }
diff --git a/nixpkgs/nixos/modules/services/web-apps/keycloak.nix b/nixpkgs/nixos/modules/services/web-apps/keycloak.nix
index 22c16be76139..c4a2127663a9 100644
--- a/nixpkgs/nixos/modules/services/web-apps/keycloak.nix
+++ b/nixpkgs/nixos/modules/services/web-apps/keycloak.nix
@@ -129,6 +129,14 @@ in
         '';
       };
 
+      plugins = lib.mkOption {
+        type = lib.types.listOf lib.types.path;
+        default = [];
+        description = ''
+          Keycloak plugin jar, ear files or derivations with them
+        '';
+      };
+
       database = {
         type = mkOption {
           type = enum [ "mysql" "postgresql" ];
@@ -787,6 +795,14 @@ in
 
               umask u=rwx,g=,o=
 
+              install_plugin() {
+                if [ -d "$1" ]; then
+                  find "$1" -type f \( -iname \*.ear -o -iname \*.jar \) -exec install -m 0500 -o keycloak -g keycloak "{}" "/run/keycloak/deployments/" \;
+                else
+                  install -m 0500 -o keycloak -g keycloak "$1" "/run/keycloak/deployments/"
+                fi
+              }
+
               install -m 0600 ${cfg.package}/standalone/configuration/*.properties /run/keycloak/configuration
               install -T -m 0600 ${keycloakConfig} /run/keycloak/configuration/standalone.xml
 
@@ -794,7 +810,9 @@ in
 
               export JAVA_OPTS=-Djboss.server.config.user.dir=/run/keycloak/configuration
               add-user-keycloak.sh -u admin -p '${cfg.initialAdminPassword}'
-            '' + optionalString (cfg.sslCertificate != null && cfg.sslCertificateKey != null) ''
+            ''
+            + lib.optionalString (cfg.plugins != []) (lib.concatStringsSep "\n" (map (pl: "install_plugin ${lib.escapeShellArg pl}") cfg.plugins)) + "\n"
+            + optionalString (cfg.sslCertificate != null && cfg.sslCertificateKey != null) ''
               pushd /run/keycloak/ssl/
               cat "$CREDENTIALS_DIRECTORY/ssl_cert" <(echo) \
                   "$CREDENTIALS_DIRECTORY/ssl_key" <(echo) \
diff --git a/nixpkgs/nixos/modules/services/web-apps/nextcloud.nix b/nixpkgs/nixos/modules/services/web-apps/nextcloud.nix
index 141ab98e29bf..b32220a5e579 100644
--- a/nixpkgs/nixos/modules/services/web-apps/nextcloud.nix
+++ b/nixpkgs/nixos/modules/services/web-apps/nextcloud.nix
@@ -153,7 +153,7 @@ in {
     package = mkOption {
       type = types.package;
       description = "Which package to use for the Nextcloud instance.";
-      relatedPackages = [ "nextcloud21" "nextcloud22" "nextcloud23" ];
+      relatedPackages = [ "nextcloud22" "nextcloud23" ];
     };
     phpPackage = mkOption {
       type = types.package;
@@ -571,15 +571,6 @@ in {
               nextcloud defined in an overlay, please set `services.nextcloud.package` to
               `pkgs.nextcloud`.
             ''
-          # 21.03 will not be an official release - it was instead 21.05.
-          # This versionOlder statement remains set to 21.03 for backwards compatibility.
-          # See https://github.com/NixOS/nixpkgs/pull/108899 and
-          # https://github.com/NixOS/rfcs/blob/master/rfcs/0080-nixos-release-schedule.md.
-          # FIXME(@Ma27) remove this else-if as soon as 21.05 is EOL! This is only here
-          # to ensure that users who are on Nextcloud 19 with a stateVersion <21.05 with
-          # no explicit services.nextcloud.package don't upgrade to v21 by accident (
-          # nextcloud20 throws an eval-error because it's dropped).
-          else if versionOlder stateVersion "21.03" then nextcloud20
           else if versionOlder stateVersion "21.11" then nextcloud21
           else if versionOlder stateVersion "22.05" then nextcloud22
           else nextcloud23
diff --git a/nixpkgs/nixos/modules/services/x11/desktop-managers/gnome.nix b/nixpkgs/nixos/modules/services/x11/desktop-managers/gnome.nix
index e2323785149a..f87258ac8dc5 100644
--- a/nixpkgs/nixos/modules/services/x11/desktop-managers/gnome.nix
+++ b/nixpkgs/nixos/modules/services/x11/desktop-managers/gnome.nix
@@ -132,6 +132,10 @@ in
       [ "environment" "gnome3" "excludePackages" ]
       [ "environment" "gnome" "excludePackages" ]
     )
+    (mkRemovedOptionModule
+      [ "services" "gnome" "experimental-features" "realtime-scheduling" ]
+      "Set `security.rtkit.enable = true;` to make realtime scheduling possible. (Still needs to be enabled using GSettings.)"
+    )
   ];
 
   options = {
@@ -142,38 +146,6 @@ in
       core-utilities.enable = mkEnableOption "GNOME core utilities";
       core-developer-tools.enable = mkEnableOption "GNOME core developer tools";
       games.enable = mkEnableOption "GNOME games";
-
-      experimental-features = {
-        realtime-scheduling = mkOption {
-          type = types.bool;
-          default = false;
-          description = ''
-            Makes mutter (which propagates to gnome-shell) request a low priority real-time
-            scheduling which is only available on the wayland session.
-            To enable this experimental feature it requires a restart of the compositor.
-            Note that enabling this option only enables the <emphasis>capability</emphasis>
-            for realtime-scheduling to be used. It doesn't automatically set the gsetting
-            so that mutter actually uses realtime-scheduling. This would require adding <literal>
-            rt-scheduler</literal> to <literal>/org/gnome/mutter/experimental-features</literal>
-            with dconf-editor. You cannot use extraGSettingsOverrides because that will only
-            change the default value of the setting.
-
-            Please be aware of these known issues with the feature in nixos:
-            <itemizedlist>
-             <listitem>
-              <para>
-               <link xlink:href="https://github.com/NixOS/nixpkgs/issues/90201">NixOS/nixpkgs#90201</link>
-              </para>
-             </listitem>
-             <listitem>
-              <para>
-               <link xlink:href="https://github.com/NixOS/nixpkgs/issues/86730">NixOS/nixpkgs#86730</link>
-              </para>
-            </listitem>
-            </itemizedlist>
-          '';
-        };
-      };
     };
 
     services.xserver.desktopManager.gnome = {
@@ -414,7 +386,6 @@ in
       services.gnome.rygel.enable = mkDefault true;
       services.gvfs.enable = true;
       services.system-config-printer.enable = (mkIf config.services.printing.enable (mkDefault true));
-      services.telepathy.enable = mkDefault true;
 
       systemd.packages = with pkgs.gnome; [
         gnome-session
@@ -480,29 +451,6 @@ in
       ];
     })
 
-    # Enable soft realtime scheduling, only supported on wayland
-    (mkIf serviceCfg.experimental-features.realtime-scheduling {
-      security.wrappers.".gnome-shell-wrapped" = {
-        source = "${pkgs.gnome.gnome-shell}/bin/.gnome-shell-wrapped";
-        owner = "root";
-        group = "root";
-        capabilities = "cap_sys_nice=ep";
-      };
-
-      systemd.user.services.gnome-shell-wayland = let
-        gnomeShellRT = with pkgs.gnome; pkgs.runCommand "gnome-shell-rt" {} ''
-          mkdir -p $out/bin/
-          cp ${gnome-shell}/bin/gnome-shell $out/bin
-          sed -i "s@${gnome-shell}/bin/@${config.security.wrapperDir}/@" $out/bin/gnome-shell
-        '';
-      in {
-        # Note we need to clear ExecStart before overriding it
-        serviceConfig.ExecStart = ["" "${gnomeShellRT}/bin/gnome-shell"];
-        # Do not use the default environment, it provides a broken PATH
-        environment = mkForce {};
-      };
-    })
-
     # Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-38/elements/core/meta-gnome-core-utilities.bst
     (mkIf serviceCfg.core-utilities.enable {
       environment.systemPackages =
@@ -513,18 +461,18 @@ in
             cheese
             eog
             epiphany
-            gedit
+            pkgs.gnome-text-editor
             gnome-calculator
             gnome-calendar
             gnome-characters
             gnome-clocks
+            pkgs.gnome-console
             gnome-contacts
             gnome-font-viewer
             gnome-logs
             gnome-maps
             gnome-music
             pkgs.gnome-photos
-            gnome-screenshot
             gnome-system-monitor
             gnome-weather
             nautilus
@@ -547,10 +495,13 @@ in
       programs.file-roller.enable = notExcluded pkgs.gnome.file-roller;
       programs.geary.enable = notExcluded pkgs.gnome.geary;
       programs.gnome-disks.enable = notExcluded pkgs.gnome.gnome-disk-utility;
-      programs.gnome-terminal.enable = notExcluded pkgs.gnome.gnome-terminal;
       programs.seahorse.enable = notExcluded pkgs.gnome.seahorse;
       services.gnome.sushi.enable = notExcluded pkgs.gnome.sushi;
 
+      # VTE shell integration for gnome-console
+      programs.bash.vteIntegration = mkDefault true;
+      programs.zsh.vteIntegration = mkDefault true;
+
       # Let nautilus find extensions
       # TODO: Create nautilus-with-extensions package
       environment.sessionVariables.NAUTILUS_EXTENSION_DIR = "${config.system.path}/lib/nautilus/extensions-3.0";
diff --git a/nixpkgs/nixos/modules/services/x11/desktop-managers/pantheon.nix b/nixpkgs/nixos/modules/services/x11/desktop-managers/pantheon.nix
index 8ff9b0b756d3..48e119a86187 100644
--- a/nixpkgs/nixos/modules/services/x11/desktop-managers/pantheon.nix
+++ b/nixpkgs/nixos/modules/services/x11/desktop-managers/pantheon.nix
@@ -220,9 +220,7 @@ in
       ] config.environment.pantheon.excludePackages);
 
       programs.evince.enable = mkDefault true;
-      programs.evince.package = pkgs.pantheon.evince;
       programs.file-roller.enable = mkDefault true;
-      programs.file-roller.package = pkgs.pantheon.file-roller;
 
       # Settings from elementary-default-settings
       environment.etc."gtk-3.0/settings.ini".source = "${pkgs.pantheon.elementary-default-settings}/etc/gtk-3.0/settings.ini";
@@ -304,7 +302,6 @@ in
       environment.systemPackages = with pkgs.pantheon; [
         contractor
         file-roller-contract
-        gnome-bluetooth-contract
       ];
 
       environment.pathsToLink = [
diff --git a/nixpkgs/nixos/modules/services/x11/desktop-managers/plasma5.nix b/nixpkgs/nixos/modules/services/x11/desktop-managers/plasma5.nix
index b7aa2eba81cf..3ca044ad5bc8 100644
--- a/nixpkgs/nixos/modules/services/x11/desktop-managers/plasma5.nix
+++ b/nixpkgs/nixos/modules/services/x11/desktop-managers/plasma5.nix
@@ -519,7 +519,7 @@ in
         with plasma5; with kdeApplications; with kdeFrameworks;
         [
           # Basic packages without which Plasma Mobile fails to work properly.
-          plasma-phone-components
+          plasma-mobile
           plasma-nano
           pkgs.maliit-framework
           pkgs.maliit-keyboard
@@ -573,7 +573,7 @@ in
         };
       };
 
-      services.xserver.displayManager.sessionPackages = [ pkgs.libsForQt5.plasma5.plasma-phone-components ];
+      services.xserver.displayManager.sessionPackages = [ pkgs.libsForQt5.plasma5.plasma-mobile ];
     })
   ];
 }
diff --git a/nixpkgs/nixos/modules/services/x11/display-managers/default.nix b/nixpkgs/nixos/modules/services/x11/display-managers/default.nix
index 92b3af8527f1..a5db3dd5dd45 100644
--- a/nixpkgs/nixos/modules/services/x11/display-managers/default.nix
+++ b/nixpkgs/nixos/modules/services/x11/display-managers/default.nix
@@ -219,6 +219,7 @@ in
 
       session = mkOption {
         default = [];
+        type = types.listOf types.attrs;
         example = literalExpression
           ''
             [ { manage = "desktop";
diff --git a/nixpkgs/nixos/modules/services/x11/display-managers/gdm.nix b/nixpkgs/nixos/modules/services/x11/display-managers/gdm.nix
index b1dc6643be82..70ae6b8978d0 100644
--- a/nixpkgs/nixos/modules/services/x11/display-managers/gdm.nix
+++ b/nixpkgs/nixos/modules/services/x11/display-managers/gdm.nix
@@ -141,7 +141,7 @@ in
           GDM_X_SERVER_EXTRA_ARGS = toString
             (filter (arg: arg != "-terminate") cfg.xserverArgs);
           # GDM is needed for gnome-login.session
-          XDG_DATA_DIRS = "${gdm}/share:${cfg.sessionData.desktops}/share";
+          XDG_DATA_DIRS = "${gdm}/share:${cfg.sessionData.desktops}/share:${pkgs.gnome.gnome-control-center}/share";
         } // optionalAttrs (xSessionWrapper != null) {
           # Make GDM use this wrapper before running the session, which runs the
           # configured setupCommands. This relies on a patched GDM which supports
diff --git a/nixpkgs/nixos/modules/system/activation/switch-to-configuration.pl b/nixpkgs/nixos/modules/system/activation/switch-to-configuration.pl
index 459d09faa53b..9e5b760434a0 100755
--- a/nixpkgs/nixos/modules/system/activation/switch-to-configuration.pl
+++ b/nixpkgs/nixos/modules/system/activation/switch-to-configuration.pl
@@ -8,18 +8,29 @@ use File::Basename;
 use File::Slurp qw(read_file write_file edit_file);
 use Net::DBus;
 use Sys::Syslog qw(:standard :macros);
-use Cwd 'abs_path';
+use Cwd qw(abs_path);
 
+## no critic(ControlStructures::ProhibitDeepNests)
+## no critic(ErrorHandling::RequireCarping)
 ## no critic(CodeLayout::ProhibitParensWithBuiltins)
+## no critic(Variables::ProhibitPunctuationVars, Variables::RequireLocalizedPunctuationVars)
+## no critic(InputOutput::RequireCheckedSyscalls, InputOutput::RequireBracedFileHandleWithPrint, InputOutput::RequireBriefOpen)
+## no critic(ValuesAndExpressions::ProhibitNoisyQuotes, ValuesAndExpressions::ProhibitMagicNumbers, ValuesAndExpressions::ProhibitEmptyQuotes, ValuesAndExpressions::ProhibitInterpolationOfLiterals)
+## no critic(RegularExpressions::ProhibitEscapedMetacharacters)
 
+# System closure path to switch to
 my $out = "@out@";
-
-my $curSystemd = abs_path("/run/current-system/sw/bin");
+# Path to the directory containing systemd tools of the old system
+my $cur_systemd = abs_path("/run/current-system/sw/bin");
+# Path to the systemd store path of the new system
+my $new_systemd = "@systemd@";
 
 # To be robust against interruption, record what units need to be started etc.
-my $startListFile = "/run/nixos/start-list";
-my $restartListFile = "/run/nixos/restart-list";
-my $reloadListFile = "/run/nixos/reload-list";
+# We read these files again every time this script starts to make sure we continue
+# where the old (interrupted) script left off.
+my $start_list_file = "/run/nixos/start-list";
+my $restart_list_file = "/run/nixos/restart-list";
+my $reload_list_file = "/run/nixos/reload-list";
 
 # Parse restart/reload requests by the activation script.
 # Activation scripts may write newline-separated units to the restart
@@ -31,21 +42,23 @@ my $reloadListFile = "/run/nixos/reload-list";
 # The reload file asks the script to reload a unit. This is the same as
 # specifying a reload trigger in the NixOS module and can be ignored if
 # the unit is restarted in this activation.
-my $restartByActivationFile = "/run/nixos/activation-restart-list";
-my $reloadByActivationFile = "/run/nixos/activation-reload-list";
-my $dryRestartByActivationFile = "/run/nixos/dry-activation-restart-list";
-my $dryReloadByActivationFile = "/run/nixos/dry-activation-reload-list";
-
-make_path("/run/nixos", { mode => oct(755) });
+my $restart_by_activation_file = "/run/nixos/activation-restart-list";
+my $reload_by_activation_file = "/run/nixos/activation-reload-list";
+my $dry_restart_by_activation_file = "/run/nixos/dry-activation-restart-list";
+my $dry_reload_by_activation_file = "/run/nixos/dry-activation-reload-list";
 
+# The action that is to be performed (like switch, boot, test, dry-activate)
+# Also exposed via environment variable from now on
 my $action = shift(@ARGV);
+$ENV{NIXOS_ACTION} = $action;
 
+# Expose the locale archive as an environment variable for systemctl and the activation script
 if ("@localeArchive@" ne "") {
     $ENV{LOCALE_ARCHIVE} = "@localeArchive@";
 }
 
 if (!defined($action) || ($action ne "switch" && $action ne "boot" && $action ne "test" && $action ne "dry-activate")) {
-    print STDERR <<EOF;
+    print STDERR <<"EOF";
 Usage: $0 [switch|boot|test]
 
 switch:       make the configuration the boot default and activate now
@@ -56,37 +69,41 @@ EOF
     exit(1);
 }
 
-$ENV{NIXOS_ACTION} = $action;
-
 # This is a NixOS installation if it has /etc/NIXOS or a proper
 # /etc/os-release.
-die("This is not a NixOS installation!\n") unless
-    -f "/etc/NIXOS" || (read_file("/etc/os-release", err_mode => 'quiet') // "") =~ /ID="?nixos"?/s;
+if (!-f "/etc/NIXOS" && (read_file("/etc/os-release", err_mode => "quiet") // "") !~ /^ID="?nixos"?/msx) {
+    die("This is not a NixOS installation!\n");
+}
 
+make_path("/run/nixos", { mode => oct(755) });
 openlog("nixos", "", LOG_USER);
 
 # Install or update the bootloader.
 if ($action eq "switch" || $action eq "boot") {
-    chomp(my $installBootLoader = <<'EOFBOOTLOADER');
+    chomp(my $install_boot_loader = <<'EOFBOOTLOADER');
 @installBootLoader@
 EOFBOOTLOADER
-    system("$installBootLoader $out") == 0 or exit 1;
+    system("$install_boot_loader $out") == 0 or exit 1;
 }
 
 # Just in case the new configuration hangs the system, do a sync now.
-system("@coreutils@/bin/sync", "-f", "/nix/store") unless ($ENV{"NIXOS_NO_SYNC"} // "") eq "1";
+if (($ENV{"NIXOS_NO_SYNC"} // "") ne "1") {
+    system("@coreutils@/bin/sync", "-f", "/nix/store");
+}
 
-exit(0) if $action eq "boot";
+if ($action eq "boot") {
+    exit(0);
+}
 
 # Check if we can activate the new configuration.
-my $oldVersion = read_file("/run/current-system/init-interface-version", err_mode => 'quiet') // "";
-my $newVersion = read_file("$out/init-interface-version");
+my $cur_init_interface_version = read_file("/run/current-system/init-interface-version", err_mode => "quiet") // "";
+my $new_init_interface_version = read_file("$out/init-interface-version");
 
-if ($newVersion ne $oldVersion) {
-    print STDERR <<EOF;
+if ($new_init_interface_version ne $cur_init_interface_version) {
+    print STDERR <<'EOF';
 Warning: the new NixOS configuration has an ‘init’ that is
 incompatible with the current configuration.  The new configuration
-won\'t take effect until you reboot the system.
+won't take effect until you reboot the system.
 EOF
     exit(100);
 }
@@ -95,41 +112,56 @@ EOF
 # virtual console 1 and we restart the "tty1" unit.
 $SIG{PIPE} = "IGNORE";
 
-sub getActiveUnits {
+# Asks the currently running systemd instance via dbus which units are active.
+# Returns a hash where the key is the name of each unit and the value a hash
+# of load, state, substate.
+sub get_active_units {
     my $mgr = Net::DBus->system->get_service("org.freedesktop.systemd1")->get_object("/org/freedesktop/systemd1");
     my $units = $mgr->ListUnitsByPatterns([], []);
     my $res = {};
-    for my $item (@$units) {
+    for my $item (@{$units}) {
         my ($id, $description, $load_state, $active_state, $sub_state,
-            $following, $unit_path, $job_id, $job_type, $job_path) = @$item;
-        next unless $following eq '';
-        next if $job_id == 0 and $active_state eq 'inactive';
+            $following, $unit_path, $job_id, $job_type, $job_path) = @{$item};
+        if ($following ne "") {
+            next;
+        }
+        if ($job_id == 0 and $active_state eq "inactive") {
+            next;
+        }
         $res->{$id} = { load => $load_state, state => $active_state, substate => $sub_state };
     }
     return $res;
 }
 
-# Returns whether a systemd unit is active
+# Asks the currently running systemd instance whether a unit is currently active.
+# Takes the name of the unit as an argument and returns a bool whether the unit is active or not.
 sub unit_is_active {
     my ($unit_name) = @_;
 
-    my $mgr = Net::DBus->system->get_service('org.freedesktop.systemd1')->get_object('/org/freedesktop/systemd1');
+    my $mgr = Net::DBus->system->get_service("org.freedesktop.systemd1")->get_object("/org/freedesktop/systemd1");
     my $units = $mgr->ListUnitsByNames([$unit_name]);
     if (scalar(@{$units}) == 0) {
         return 0;
     }
-    my $active_state = $units->[0]->[3]; ## no critic (ValuesAndExpressions::ProhibitMagicNumbers)
-    return $active_state eq 'active' || $active_state eq 'activating';
+    my $active_state = $units->[0]->[3];
+    return $active_state eq "active" || $active_state eq "activating";
 }
 
-sub parseFstab {
+# Parse a fstab file, given its path.
+# Returns a tuple of filesystems and swaps.
+#
+# Filesystems is a hash of mountpoint and { device, fsType, options }
+# Swaps is a hash of device and { options }
+sub parse_fstab {
     my ($filename) = @_;
     my ($fss, $swaps);
-    foreach my $line (read_file($filename, err_mode => 'quiet')) {
+    foreach my $line (read_file($filename, err_mode => "quiet")) {
         chomp($line);
-        $line =~ s/^\s*#.*//;
-        next if $line =~ /^\s*$/;
-        my @xs = split(/ /, $line);
+        $line =~ s/^\s*\#.*//msx;
+        if ($line =~ /^\s*$/msx) {
+            next;
+        }
+        my @xs = split(/\s+/msx, $line);
         if ($xs[2] eq "swap") {
             $swaps->{$xs[0]} = { options => $xs[3] // "" };
         } else {
@@ -148,35 +180,35 @@ sub parseFstab {
 #
 # Instead of returning the hash, this subroutine takes a hashref to return the data in. This
 # allows calling the subroutine multiple times with the same hash to parse override files.
-sub parseSystemdIni {
-    my ($unitContents, $path) = @_;
+sub parse_systemd_ini {
+    my ($unit_contents, $path) = @_;
     # Tie the ini file to a hash for easier access
-    tie(my %fileContents, 'Config::IniFiles', (-file => $path, -allowempty => 1, -allowcontinue => 1)); ## no critic(Miscellanea::ProhibitTies)
+    tie(my %file_contents, "Config::IniFiles", (-file => $path, -allowempty => 1, -allowcontinue => 1)); ## no critic(Miscellanea::ProhibitTies)
 
     # Copy over all sections
-    foreach my $sectionName (keys(%fileContents)) {
-        if ($sectionName eq "Install") {
+    foreach my $section_name (keys(%file_contents)) {
+        if ($section_name eq "Install") {
             # Skip the [Install] section because it has no relevant keys for us
             next;
         }
         # Copy over all keys
-        foreach my $iniKey (keys(%{$fileContents{$sectionName}})) {
+        foreach my $ini_key (keys(%{$file_contents{$section_name}})) {
             # Ensure the value is an array so it's easier to work with
-            my $iniValue = $fileContents{$sectionName}{$iniKey};
-            my @iniValues;
-            if (ref($iniValue) eq "ARRAY") {
-                @iniValues = @{$iniValue};
+            my $ini_value = $file_contents{$section_name}{$ini_key};
+            my @ini_values;
+            if (ref($ini_value) eq "ARRAY") {
+                @ini_values = @{$ini_value};
             } else {
-                @iniValues = $iniValue;
+                @ini_values = $ini_value;
             }
             # Go over all values
-            for my $iniValue (@iniValues) {
+            for my $ini_value (@ini_values) {
                 # If a value is empty, it's an override that tells us to clean the value
-                if ($iniValue eq "") {
-                    delete $unitContents->{$sectionName}->{$iniKey};
+                if ($ini_value eq "") {
+                    delete $unit_contents->{$section_name}->{$ini_key};
                     next;
                 }
-                push(@{$unitContents->{$sectionName}->{$iniKey}}, $iniValue);
+                push(@{$unit_contents->{$section_name}->{$ini_key}}, $ini_value);
             }
         }
     }
@@ -185,7 +217,7 @@ sub parseSystemdIni {
 
 # This subroutine takes the path to a systemd configuration file (like a unit configuration),
 # parses it, and returns a hash that contains the contents. The contents of this hash are
-# explained in the `parseSystemdIni` subroutine. Neither the sections nor the keys inside
+# explained in the `parse_systemd_ini` subroutine. Neither the sections nor the keys inside
 # the sections are consistently sorted.
 #
 # If a directory with the same basename ending in .d exists next to the unit file, it will be
@@ -199,36 +231,44 @@ sub parse_unit {
     # Valid characters in unit names are ASCII letters, digits, ":", "-", "_", ".", and "\"
     $unit_path =~ s/\\/\\\\/gmsx;
     foreach (glob("${unit_path}{,.d/*.conf}")) {
-        parseSystemdIni(\%unit_data, "$_")
+        parse_systemd_ini(\%unit_data, "$_")
     }
     return %unit_data;
 }
 
 # Checks whether a specified boolean in a systemd unit is true
 # or false, with a default that is applied when the value is not set.
-sub parseSystemdBool {
-    my ($unitConfig, $sectionName, $boolName, $default) = @_;
+sub parse_systemd_bool {
+    my ($unit_config, $section_name, $bool_name, $default) = @_;
 
-    my @values = @{$unitConfig->{$sectionName}{$boolName} // []};
+    my @values = @{$unit_config->{$section_name}{$bool_name} // []};
     # Return default if value is not set
-    if (scalar(@values) lt 1 || not defined($values[-1])) {
+    if ((scalar(@values) < 1) || (not defined($values[-1]))) {
         return $default;
     }
     # If value is defined multiple times, use the last definition
-    my $last = $values[-1];
+    my $last_value = $values[-1];
     # These are valid values as of systemd.syntax(7)
-    return $last eq "1" || $last eq "yes" || $last eq "true" || $last eq "on";
+    return $last_value eq "1" || $last_value eq "yes" || $last_value eq "true" || $last_value eq "on";
 }
 
-sub recordUnit {
+# Writes a unit name into a given file to be more resilient against
+# crashes of the script. Does nothing when the action is dry-activate.
+sub record_unit {
     my ($fn, $unit) = @_;
-    write_file($fn, { append => 1 }, "$unit\n") if $action ne "dry-activate";
+    if ($action ne "dry-activate") {
+        write_file($fn, { append => 1 }, "$unit\n");
+    }
+    return;
 }
 
-# The opposite of recordUnit, removes a unit name from a file
+# The opposite of record_unit, removes a unit name from a file
 sub unrecord_unit {
     my ($fn, $unit) = @_;
-    edit_file(sub { s/^$unit\n//msx }, $fn) if $action ne "dry-activate";
+    if ($action ne "dry-activate") {
+        edit_file(sub { s/^$unit\n//msx }, $fn);
+    }
+    return;
 }
 
 # Compare the contents of two unit files and return whether the unit
@@ -240,8 +280,8 @@ sub unrecord_unit {
 # - 0 if the units are equal
 # - 1 if the units are different and a restart action is required
 # - 2 if the units are different and a reload action is required
-sub compare_units {
-    my ($old_unit, $new_unit) = @_;
+sub compare_units { ## no critic(Subroutines::ProhibitExcessComplexity)
+    my ($cur_unit, $new_unit) = @_;
     my $ret = 0;
     # Keys to ignore in the [Unit] section
     my %unit_section_ignores = map { $_ => 1 } qw(
@@ -262,13 +302,13 @@ sub compare_units {
     # Comparison hash for the sections
     my %section_cmp = map { $_ => 1 } keys(%{$new_unit});
     # Iterate over the sections
-    foreach my $section_name (keys(%{$old_unit})) {
+    foreach my $section_name (keys(%{$cur_unit})) {
         # Missing section in the new unit?
         if (not exists($section_cmp{$section_name})) {
             # If the [Unit] section was removed, make sure that only keys
             # were in it that are ignored
-            if ($section_name eq 'Unit') {
-                foreach my $ini_key (keys(%{$old_unit->{'Unit'}})) {
+            if ($section_name eq "Unit") {
+                foreach my $ini_key (keys(%{$cur_unit->{"Unit"}})) {
                     if (not defined($unit_section_ignores{$ini_key})) {
                         return 1;
                     }
@@ -277,7 +317,7 @@ sub compare_units {
             } else {
                 return 1;
             }
-            if ($section_name eq 'Unit' and %{$old_unit->{'Unit'}} == 1 and defined(%{$old_unit->{'Unit'}}{'X-Reload-Triggers'})) {
+            if ($section_name eq "Unit" and %{$cur_unit->{"Unit"}} == 1 and defined(%{$cur_unit->{"Unit"}}{"X-Reload-Triggers"})) {
                 # If a new [Unit] section was removed that only contained X-Reload-Triggers,
                 # do nothing.
                 next;
@@ -289,23 +329,23 @@ sub compare_units {
         # Comparison hash for the section contents
         my %ini_cmp = map { $_ => 1 } keys(%{$new_unit->{$section_name}});
         # Iterate over the keys of the section
-        foreach my $ini_key (keys(%{$old_unit->{$section_name}})) {
+        foreach my $ini_key (keys(%{$cur_unit->{$section_name}})) {
             delete $ini_cmp{$ini_key};
-            my @old_value = @{$old_unit->{$section_name}{$ini_key}};
+            my @cur_value = @{$cur_unit->{$section_name}{$ini_key}};
             # If the key is missing in the new unit, they are different...
             if (not $new_unit->{$section_name}{$ini_key}) {
                 # ... unless the key that is now missing is one of the ignored keys
-                if ($section_name eq 'Unit' and defined($unit_section_ignores{$ini_key})) {
+                if ($section_name eq "Unit" and defined($unit_section_ignores{$ini_key})) {
                     next;
                 }
                 return 1;
             }
             my @new_value = @{$new_unit->{$section_name}{$ini_key}};
             # If the contents are different, the units are different
-            if (not $comp_array->(\@old_value, \@new_value)) {
+            if (not $comp_array->(\@cur_value, \@new_value)) {
                 # Check if only the reload triggers changed or one of the ignored keys
-                if ($section_name eq 'Unit') {
-                    if ($ini_key eq 'X-Reload-Triggers') {
+                if ($section_name eq "Unit") {
+                    if ($ini_key eq "X-Reload-Triggers") {
                         $ret = 2;
                         next;
                     } elsif (defined($unit_section_ignores{$ini_key})) {
@@ -315,11 +355,11 @@ sub compare_units {
                 return 1;
             }
         }
-        # A key was introduced that was missing in the old unit
+        # A key was introduced that was missing in the previous unit
         if (%ini_cmp) {
-            if ($section_name eq 'Unit') {
+            if ($section_name eq "Unit") {
                 foreach my $ini_key (keys(%ini_cmp)) {
-                    if ($ini_key eq 'X-Reload-Triggers') {
+                    if ($ini_key eq "X-Reload-Triggers") {
                         $ret = 2;
                     } elsif (defined($unit_section_ignores{$ini_key})) {
                         next;
@@ -332,13 +372,13 @@ sub compare_units {
             }
         };
     }
-    # A section was introduced that was missing in the old unit
+    # A section was introduced that was missing in the previous unit
     if (%section_cmp) {
-        if (%section_cmp == 1 and defined($section_cmp{'Unit'})) {
-            foreach my $ini_key (keys(%{$new_unit->{'Unit'}})) {
+        if (%section_cmp == 1 and defined($section_cmp{"Unit"})) {
+            foreach my $ini_key (keys(%{$new_unit->{"Unit"}})) {
                 if (not defined($unit_section_ignores{$ini_key})) {
                     return 1;
-                } elsif ($ini_key eq 'X-Reload-Triggers') {
+                } elsif ($ini_key eq "X-Reload-Triggers") {
                     $ret = 2;
                 }
             }
@@ -350,76 +390,78 @@ sub compare_units {
     return $ret;
 }
 
-sub handleModifiedUnit {
-    my ($unit, $baseName, $newUnitFile, $newUnitInfo, $activePrev, $unitsToStop, $unitsToStart, $unitsToReload, $unitsToRestart, $unitsToSkip) = @_;
+# Called when a unit exists in both the old systemd and the new system and the units
+# differ. This figures out of what units are to be stopped, restarted, reloaded, started, and skipped.
+sub handle_modified_unit { ## no critic(Subroutines::ProhibitManyArgs, Subroutines::ProhibitExcessComplexity)
+    my ($unit, $base_name, $new_unit_file, $new_unit_info, $active_cur, $units_to_stop, $units_to_start, $units_to_reload, $units_to_restart, $units_to_skip) = @_;
 
-    if ($unit eq "sysinit.target" || $unit eq "basic.target" || $unit eq "multi-user.target" || $unit eq "graphical.target" || $unit =~ /\.path$/ || $unit =~ /\.slice$/) {
+    if ($unit eq "sysinit.target" || $unit eq "basic.target" || $unit eq "multi-user.target" || $unit eq "graphical.target" || $unit =~ /\.path$/msx || $unit =~ /\.slice$/msx) {
         # Do nothing.  These cannot be restarted directly.
 
         # Slices and Paths don't have to be restarted since
         # properties (resource limits and inotify watches)
         # seem to get applied on daemon-reload.
-    } elsif ($unit =~ /\.mount$/) {
+    } elsif ($unit =~ /\.mount$/msx) {
         # Reload the changed mount unit to force a remount.
         # FIXME: only reload when Options= changed, restart otherwise
-        $unitsToReload->{$unit} = 1;
-        recordUnit($reloadListFile, $unit);
-    } elsif ($unit =~ /\.socket$/) {
+        $units_to_reload->{$unit} = 1;
+        record_unit($reload_list_file, $unit);
+    } elsif ($unit =~ /\.socket$/msx) {
         # FIXME: do something?
         # Attempt to fix this: https://github.com/NixOS/nixpkgs/pull/141192
         # Revert of the attempt: https://github.com/NixOS/nixpkgs/pull/147609
         # More details: https://github.com/NixOS/nixpkgs/issues/74899#issuecomment-981142430
     } else {
-        my %unitInfo = $newUnitInfo ? %{$newUnitInfo} : parse_unit($newUnitFile);
-        if (parseSystemdBool(\%unitInfo, "Service", "X-ReloadIfChanged", 0) and not $unitsToRestart->{$unit} and not $unitsToStop->{$unit}) {
-            $unitsToReload->{$unit} = 1;
-            recordUnit($reloadListFile, $unit);
+        my %new_unit_info = $new_unit_info ? %{$new_unit_info} : parse_unit($new_unit_file);
+        if (parse_systemd_bool(\%new_unit_info, "Service", "X-ReloadIfChanged", 0) and not $units_to_restart->{$unit} and not $units_to_stop->{$unit}) {
+            $units_to_reload->{$unit} = 1;
+            record_unit($reload_list_file, $unit);
         }
-        elsif (!parseSystemdBool(\%unitInfo, "Service", "X-RestartIfChanged", 1) || parseSystemdBool(\%unitInfo, "Unit", "RefuseManualStop", 0) || parseSystemdBool(\%unitInfo, "Unit", "X-OnlyManualStart", 0)) {
-            $unitsToSkip->{$unit} = 1;
+        elsif (!parse_systemd_bool(\%new_unit_info, "Service", "X-RestartIfChanged", 1) || parse_systemd_bool(\%new_unit_info, "Unit", "RefuseManualStop", 0) || parse_systemd_bool(\%new_unit_info, "Unit", "X-OnlyManualStart", 0)) {
+            $units_to_skip->{$unit} = 1;
         } else {
             # It doesn't make sense to stop and start non-services because
             # they can't have ExecStop=
-            if (!parseSystemdBool(\%unitInfo, "Service", "X-StopIfChanged", 1) || $unit !~ /\.service$/) {
+            if (!parse_systemd_bool(\%new_unit_info, "Service", "X-StopIfChanged", 1) || $unit !~ /\.service$/msx) {
                 # This unit should be restarted instead of
                 # stopped and started.
-                $unitsToRestart->{$unit} = 1;
-                recordUnit($restartListFile, $unit);
+                $units_to_restart->{$unit} = 1;
+                record_unit($restart_list_file, $unit);
                 # Remove from units to reload so we don't restart and reload
-                if ($unitsToReload->{$unit}) {
-                    delete $unitsToReload->{$unit};
-                    unrecord_unit($reloadListFile, $unit);
+                if ($units_to_reload->{$unit}) {
+                    delete $units_to_reload->{$unit};
+                    unrecord_unit($reload_list_file, $unit);
                 }
             } else {
                 # If this unit is socket-activated, then stop the
                 # socket unit(s) as well, and restart the
                 # socket(s) instead of the service.
                 my $socket_activated = 0;
-                if ($unit =~ /\.service$/) {
-                    my @sockets = split(/ /, join(" ", @{$unitInfo{Service}{Sockets} // []}));
+                if ($unit =~ /\.service$/msx) {
+                    my @sockets = split(/\s+/msx, join(" ", @{$new_unit_info{Service}{Sockets} // []}));
                     if (scalar(@sockets) == 0) {
-                        @sockets = ("$baseName.socket");
+                        @sockets = ("$base_name.socket");
                     }
                     foreach my $socket (@sockets) {
-                        if (defined($activePrev->{$socket})) {
+                        if (defined($active_cur->{$socket})) {
                             # We can now be sure this is a socket-activate unit
 
-                            $unitsToStop->{$socket} = 1;
+                            $units_to_stop->{$socket} = 1;
                             # Only restart sockets that actually
                             # exist in new configuration:
                             if (-e "$out/etc/systemd/system/$socket") {
-                                $unitsToStart->{$socket} = 1;
-                                if ($unitsToStart eq $unitsToRestart) {
-                                    recordUnit($restartListFile, $socket);
+                                $units_to_start->{$socket} = 1;
+                                if ($units_to_start eq $units_to_restart) {
+                                    record_unit($restart_list_file, $socket);
                                 } else {
-                                    recordUnit($startListFile, $socket);
+                                    record_unit($start_list_file, $socket);
                                 }
                                 $socket_activated = 1;
                             }
                             # Remove from units to reload so we don't restart and reload
-                            if ($unitsToReload->{$unit}) {
-                                delete $unitsToReload->{$unit};
-                                unrecord_unit($reloadListFile, $unit);
+                            if ($units_to_reload->{$unit}) {
+                                delete $units_to_reload->{$unit};
+                                unrecord_unit($reload_list_file, $unit);
                             }
                         }
                     }
@@ -430,64 +472,67 @@ sub handleModifiedUnit {
                 # We write this to a file to ensure that the
                 # service gets restarted if we're interrupted.
                 if (!$socket_activated) {
-                    $unitsToStart->{$unit} = 1;
-                    if ($unitsToStart eq $unitsToRestart) {
-                        recordUnit($restartListFile, $unit);
+                    $units_to_start->{$unit} = 1;
+                    if ($units_to_start eq $units_to_restart) {
+                        record_unit($restart_list_file, $unit);
                     } else {
-                        recordUnit($startListFile, $unit);
+                        record_unit($start_list_file, $unit);
                     }
                 }
 
-                $unitsToStop->{$unit} = 1;
+                $units_to_stop->{$unit} = 1;
                 # Remove from units to reload so we don't restart and reload
-                if ($unitsToReload->{$unit}) {
-                    delete $unitsToReload->{$unit};
-                    unrecord_unit($reloadListFile, $unit);
+                if ($units_to_reload->{$unit}) {
+                    delete $units_to_reload->{$unit};
+                    unrecord_unit($reload_list_file, $unit);
                 }
             }
         }
     }
+    return;
 }
 
 # Figure out what units need to be stopped, started, restarted or reloaded.
-my (%unitsToStop, %unitsToSkip, %unitsToStart, %unitsToRestart, %unitsToReload);
+my (%units_to_stop, %units_to_skip, %units_to_start, %units_to_restart, %units_to_reload);
 
-my %unitsToFilter; # units not shown
+my %units_to_filter; # units not shown
 
-$unitsToStart{$_} = 1 foreach
-    split('\n', read_file($startListFile, err_mode => 'quiet') // "");
+%units_to_start = map { $_ => 1 }
+    split(/\n/msx, read_file($start_list_file, err_mode => "quiet") // "");
 
-$unitsToRestart{$_} = 1 foreach
-    split('\n', read_file($restartListFile, err_mode => 'quiet') // "");
+%units_to_restart = map { $_ => 1 }
+    split(/\n/msx, read_file($restart_list_file, err_mode => "quiet") // "");
 
-$unitsToReload{$_} = 1 foreach
-    split('\n', read_file($reloadListFile, err_mode => 'quiet') // "");
+%units_to_reload = map { $_ => 1 }
+    split(/\n/msx, read_file($reload_list_file, err_mode => "quiet") // "");
 
-my $activePrev = getActiveUnits();
-while (my ($unit, $state) = each(%{$activePrev})) {
-    my $baseUnit = $unit;
+my $active_cur = get_active_units();
+while (my ($unit, $state) = each(%{$active_cur})) {
+    my $base_unit = $unit;
 
-    my $prevUnitFile = "/etc/systemd/system/$baseUnit";
-    my $newUnitFile = "$out/etc/systemd/system/$baseUnit";
+    my $cur_unit_file = "/etc/systemd/system/$base_unit";
+    my $new_unit_file = "$out/etc/systemd/system/$base_unit";
 
     # Detect template instances.
-    if (!-e $prevUnitFile && !-e $newUnitFile && $unit =~ /^(.*)@[^\.]*\.(.*)$/) {
-      $baseUnit = "$1\@.$2";
-      $prevUnitFile = "/etc/systemd/system/$baseUnit";
-      $newUnitFile = "$out/etc/systemd/system/$baseUnit";
+    if (!-e $cur_unit_file && !-e $new_unit_file && $unit =~ /^(.*)@[^\.]*\.(.*)$/msx) {
+      $base_unit = "$1\@.$2";
+      $cur_unit_file = "/etc/systemd/system/$base_unit";
+      $new_unit_file = "$out/etc/systemd/system/$base_unit";
     }
 
-    my $baseName = $baseUnit;
-    $baseName =~ s/\.[a-z]*$//;
+    my $base_name = $base_unit;
+    $base_name =~ s/\.[[:lower:]]*$//msx;
 
-    if (-e $prevUnitFile && ($state->{state} eq "active" || $state->{state} eq "activating")) {
-        if (! -e $newUnitFile || abs_path($newUnitFile) eq "/dev/null") {
-            my %unitInfo = parse_unit($prevUnitFile);
-            $unitsToStop{$unit} = 1 if parseSystemdBool(\%unitInfo, "Unit", "X-StopOnRemoval", 1);
+    if (-e $cur_unit_file && ($state->{state} eq "active" || $state->{state} eq "activating")) {
+        if (! -e $new_unit_file || abs_path($new_unit_file) eq "/dev/null") {
+            my %cur_unit_info = parse_unit($cur_unit_file);
+            if (parse_systemd_bool(\%cur_unit_info, "Unit", "X-StopOnRemoval", 1)) {
+                $units_to_stop{$unit} = 1;
+            }
         }
 
-        elsif ($unit =~ /\.target$/) {
-            my %unitInfo = parse_unit($newUnitFile);
+        elsif ($unit =~ /\.target$/msx) {
+            my %new_unit_info = parse_unit($new_unit_file);
 
             # Cause all active target units to be restarted below.
             # This should start most changed units we stop here as
@@ -496,11 +541,11 @@ while (my ($unit, $state) = each(%{$activePrev})) {
             # active after the system has resumed, which probably
             # should not be the case.  Just ignore it.
             if ($unit ne "suspend.target" && $unit ne "hibernate.target" && $unit ne "hybrid-sleep.target") {
-                unless (parseSystemdBool(\%unitInfo, "Unit", "RefuseManualStart", 0) || parseSystemdBool(\%unitInfo, "Unit", "X-OnlyManualStart", 0)) {
-                    $unitsToStart{$unit} = 1;
-                    recordUnit($startListFile, $unit);
+                if (!(parse_systemd_bool(\%new_unit_info, "Unit", "RefuseManualStart", 0) || parse_systemd_bool(\%new_unit_info, "Unit", "X-OnlyManualStart", 0))) {
+                    $units_to_start{$unit} = 1;
+                    record_unit($start_list_file, $unit);
                     # Don't spam the user with target units that always get started.
-                    $unitsToFilter{$unit} = 1;
+                    $units_to_filter{$unit} = 1;
                 }
             }
 
@@ -515,33 +560,35 @@ while (my ($unit, $state) = each(%{$activePrev})) {
             # Stopping a target generally has no effect on other units
             # (unless there is a PartOf dependency), so this is just a
             # bookkeeping thing to get systemd to do the right thing.
-            if (parseSystemdBool(\%unitInfo, "Unit", "X-StopOnReconfiguration", 0)) {
-                $unitsToStop{$unit} = 1;
+            if (parse_systemd_bool(\%new_unit_info, "Unit", "X-StopOnReconfiguration", 0)) {
+                $units_to_stop{$unit} = 1;
             }
         }
 
         else {
-            my %old_unit_info = parse_unit($prevUnitFile);
-            my %new_unit_info = parse_unit($newUnitFile);
-            my $diff = compare_units(\%old_unit_info, \%new_unit_info);
+            my %cur_unit_info = parse_unit($cur_unit_file);
+            my %new_unit_info = parse_unit($new_unit_file);
+            my $diff = compare_units(\%cur_unit_info, \%new_unit_info);
             if ($diff == 1) {
-                handleModifiedUnit($unit, $baseName, $newUnitFile, \%new_unit_info, $activePrev, \%unitsToStop, \%unitsToStart, \%unitsToReload, \%unitsToRestart, \%unitsToSkip);
-            } elsif ($diff == 2 and not $unitsToRestart{$unit}) {
-                $unitsToReload{$unit} = 1;
-                recordUnit($reloadListFile, $unit);
+                handle_modified_unit($unit, $base_name, $new_unit_file, \%new_unit_info, $active_cur, \%units_to_stop, \%units_to_start, \%units_to_reload, \%units_to_restart, \%units_to_skip);
+            } elsif ($diff == 2 and not $units_to_restart{$unit}) {
+                $units_to_reload{$unit} = 1;
+                record_unit($reload_list_file, $unit);
             }
         }
     }
 }
 
-sub pathToUnitName {
+# Converts a path to the name of a systemd mount unit that would be responsible
+# for mounting this path.
+sub path_to_unit_name {
     my ($path) = @_;
     # Use current version of systemctl binary before daemon is reexeced.
-    open(my $cmd, "-|", "$curSystemd/systemd-escape", "--suffix=mount", "-p", $path)
+    open(my $cmd, "-|", "$cur_systemd/systemd-escape", "--suffix=mount", "-p", $path)
         or die "Unable to escape $path!\n";
-    my $escaped = join("", <$cmd>);
+    my $escaped = do { local $/ = undef; <$cmd> };
     chomp($escaped);
-    close($cmd) or die('Unable to close systemd-escape pipe');
+    close($cmd) or die("Unable to close systemd-escape pipe");
     return $escaped;
 }
 
@@ -550,31 +597,31 @@ sub pathToUnitName {
 # automatically by starting local-fs.target.  FIXME: might be nicer if
 # we generated units for all mounts; then we could unify this with the
 # unit checking code above.
-my ($prevFss, $prevSwaps) = parseFstab("/etc/fstab");
-my ($newFss, $newSwaps) = parseFstab("$out/etc/fstab");
-foreach my $mountPoint (keys(%$prevFss)) {
-    my $prev = $prevFss->{$mountPoint};
-    my $new = $newFss->{$mountPoint};
-    my $unit = pathToUnitName($mountPoint);
+my ($cur_fss, $cur_swaps) = parse_fstab("/etc/fstab");
+my ($new_fss, $new_swaps) = parse_fstab("$out/etc/fstab");
+foreach my $mount_point (keys(%{$cur_fss})) {
+    my $cur = $cur_fss->{$mount_point};
+    my $new = $new_fss->{$mount_point};
+    my $unit = path_to_unit_name($mount_point);
     if (!defined($new)) {
         # Filesystem entry disappeared, so unmount it.
-        $unitsToStop{$unit} = 1;
-    } elsif ($prev->{fsType} ne $new->{fsType} || $prev->{device} ne $new->{device}) {
+        $units_to_stop{$unit} = 1;
+    } elsif ($cur->{fsType} ne $new->{fsType} || $cur->{device} ne $new->{device}) {
         # Filesystem type or device changed, so unmount and mount it.
-        $unitsToStop{$unit} = 1;
-        $unitsToStart{$unit} = 1;
-        recordUnit($startListFile, $unit);
-    } elsif ($prev->{options} ne $new->{options}) {
+        $units_to_stop{$unit} = 1;
+        $units_to_start{$unit} = 1;
+        record_unit($start_list_file, $unit);
+    } elsif ($cur->{options} ne $new->{options}) {
         # Mount options changes, so remount it.
-        $unitsToReload{$unit} = 1;
-        recordUnit($reloadListFile, $unit);
+        $units_to_reload{$unit} = 1;
+        record_unit($reload_list_file, $unit);
     }
 }
 
 # Also handles swap devices.
-foreach my $device (keys(%$prevSwaps)) {
-    my $prev = $prevSwaps->{$device};
-    my $new = $newSwaps->{$device};
+foreach my $device (keys(%{$cur_swaps})) {
+    my $cur = $cur_swaps->{$device};
+    my $new = $new_swaps->{$device};
     if (!defined($new)) {
         # Swap entry disappeared, so turn it off.  Can't use
         # "systemctl stop" here because systemd has lots of alias
@@ -592,97 +639,109 @@ foreach my $device (keys(%$prevSwaps)) {
 
 
 # Should we have systemd re-exec itself?
-my $prevSystemd = abs_path("/proc/1/exe") // "/unknown";
-my $prevSystemdSystemConfig = abs_path("/etc/systemd/system.conf") // "/unknown";
-my $newSystemd = abs_path("@systemd@/lib/systemd/systemd") or die;
-my $newSystemdSystemConfig = abs_path("$out/etc/systemd/system.conf") // "/unknown";
+my $cur_pid1_path = abs_path("/proc/1/exe") // "/unknown";
+my $cur_systemd_system_config = abs_path("/etc/systemd/system.conf") // "/unknown";
+my $new_pid1_path = abs_path("$new_systemd/lib/systemd/systemd") or die;
+my $new_systemd_system_config = abs_path("$out/etc/systemd/system.conf") // "/unknown";
 
-my $restartSystemd = $prevSystemd ne $newSystemd;
-if ($prevSystemdSystemConfig ne $newSystemdSystemConfig) {
-    $restartSystemd = 1;
+my $restart_systemd = $cur_pid1_path ne $new_pid1_path;
+if ($cur_systemd_system_config ne $new_systemd_system_config) {
+    $restart_systemd = 1;
 }
 
-
-sub filterUnits {
+# Takes an array of unit names and returns an array with the same elements,
+# except all units that are also in the global variable `unitsToFilter`.
+sub filter_units {
     my ($units) = @_;
     my @res;
     foreach my $unit (sort(keys(%{$units}))) {
-        push(@res, $unit) if !defined($unitsToFilter{$unit});
+        if (!defined($units_to_filter{$unit})) {
+            push(@res, $unit);
+        }
     }
     return @res;
 }
 
-my @unitsToStopFiltered = filterUnits(\%unitsToStop);
+my @units_to_stop_filtered = filter_units(\%units_to_stop);
 
 
 # Show dry-run actions.
 if ($action eq "dry-activate") {
-    print STDERR "would stop the following units: ", join(", ", @unitsToStopFiltered), "\n"
-        if scalar(@unitsToStopFiltered) > 0;
-    print STDERR "would NOT stop the following changed units: ", join(", ", sort(keys(%unitsToSkip))), "\n"
-        if scalar(keys(%unitsToSkip)) > 0;
+    if (scalar(@units_to_stop_filtered) > 0) {
+        print STDERR "would stop the following units: ", join(", ", @units_to_stop_filtered), "\n";
+    }
+    if (scalar(keys(%units_to_skip)) > 0) {
+        print STDERR "would NOT stop the following changed units: ", join(", ", sort(keys(%units_to_skip))), "\n";
+    }
 
     print STDERR "would activate the configuration...\n";
     system("$out/dry-activate", "$out");
 
     # Handle the activation script requesting the restart or reload of a unit.
-    foreach (split('\n', read_file($dryRestartByActivationFile, err_mode => 'quiet') // "")) {
+    foreach (split(/\n/msx, read_file($dry_restart_by_activation_file, err_mode => "quiet") // "")) {
         my $unit = $_;
-        my $baseUnit = $unit;
-        my $newUnitFile = "$out/etc/systemd/system/$baseUnit";
+        my $base_unit = $unit;
+        my $new_unit_file = "$out/etc/systemd/system/$base_unit";
 
         # Detect template instances.
-        if (!-e $newUnitFile && $unit =~ /^(.*)@[^\.]*\.(.*)$/) {
-          $baseUnit = "$1\@.$2";
-          $newUnitFile = "$out/etc/systemd/system/$baseUnit";
+        if (!-e $new_unit_file && $unit =~ /^(.*)@[^\.]*\.(.*)$/msx) {
+          $base_unit = "$1\@.$2";
+          $new_unit_file = "$out/etc/systemd/system/$base_unit";
         }
 
-        my $baseName = $baseUnit;
-        $baseName =~ s/\.[a-z]*$//;
+        my $base_name = $base_unit;
+        $base_name =~ s/\.[[:lower:]]*$//msx;
 
         # Start units if they were not active previously
-        if (not defined($activePrev->{$unit})) {
-            $unitsToStart{$unit} = 1;
+        if (not defined($active_cur->{$unit})) {
+            $units_to_start{$unit} = 1;
             next;
         }
 
-        handleModifiedUnit($unit, $baseName, $newUnitFile, undef, $activePrev, \%unitsToRestart, \%unitsToRestart, \%unitsToReload, \%unitsToRestart, \%unitsToSkip);
+        handle_modified_unit($unit, $base_name, $new_unit_file, undef, $active_cur, \%units_to_restart, \%units_to_restart, \%units_to_reload, \%units_to_restart, \%units_to_skip);
     }
-    unlink($dryRestartByActivationFile);
+    unlink($dry_restart_by_activation_file);
 
-    foreach (split('\n', read_file($dryReloadByActivationFile, err_mode => 'quiet') // "")) {
+    foreach (split(/\n/msx, read_file($dry_reload_by_activation_file, err_mode => "quiet") // "")) {
         my $unit = $_;
 
-        if (defined($activePrev->{$unit}) and not $unitsToRestart{$unit} and not $unitsToStop{$unit}) {
-            $unitsToReload{$unit} = 1;
-            recordUnit($reloadListFile, $unit);
+        if (defined($active_cur->{$unit}) and not $units_to_restart{$unit} and not $units_to_stop{$unit}) {
+            $units_to_reload{$unit} = 1;
+            record_unit($reload_list_file, $unit);
         }
     }
-    unlink($dryReloadByActivationFile);
+    unlink($dry_reload_by_activation_file);
 
-    print STDERR "would restart systemd\n" if $restartSystemd;
-    print STDERR "would reload the following units: ", join(", ", sort(keys(%unitsToReload))), "\n"
-        if scalar(keys(%unitsToReload)) > 0;
-    print STDERR "would restart the following units: ", join(", ", sort(keys(%unitsToRestart))), "\n"
-        if scalar(keys(%unitsToRestart)) > 0;
-    my @unitsToStartFiltered = filterUnits(\%unitsToStart);
-    print STDERR "would start the following units: ", join(", ", @unitsToStartFiltered), "\n"
-        if scalar(@unitsToStartFiltered);
+    if ($restart_systemd) {
+        print STDERR "would restart systemd\n";
+    }
+    if (scalar(keys(%units_to_reload)) > 0) {
+        print STDERR "would reload the following units: ", join(", ", sort(keys(%units_to_reload))), "\n";
+    }
+    if (scalar(keys(%units_to_restart)) > 0) {
+        print STDERR "would restart the following units: ", join(", ", sort(keys(%units_to_restart))), "\n";
+    }
+    my @units_to_start_filtered = filter_units(\%units_to_start);
+    if (scalar(@units_to_start_filtered)) {
+        print STDERR "would start the following units: ", join(", ", @units_to_start_filtered), "\n";
+    }
     exit 0;
 }
 
 
 syslog(LOG_NOTICE, "switching to system configuration $out");
 
-if (scalar(keys(%unitsToStop)) > 0) {
-    print STDERR "stopping the following units: ", join(", ", @unitsToStopFiltered), "\n"
-        if scalar(@unitsToStopFiltered);
+if (scalar(keys(%units_to_stop)) > 0) {
+    if (scalar(@units_to_stop_filtered)) {
+        print STDERR "stopping the following units: ", join(", ", @units_to_stop_filtered), "\n";
+    }
     # Use current version of systemctl binary before daemon is reexeced.
-    system("$curSystemd/systemctl", "stop", "--", sort(keys(%unitsToStop)));
+    system("$cur_systemd/systemctl", "stop", "--", sort(keys(%units_to_stop)));
 }
 
-print STDERR "NOT restarting the following changed units: ", join(", ", sort(keys(%unitsToSkip))), "\n"
-    if scalar(keys(%unitsToSkip)) > 0;
+if (scalar(keys(%units_to_skip)) > 0) {
+    print STDERR "NOT restarting the following changed units: ", join(", ", sort(keys(%units_to_skip))), "\n";
+}
 
 # Activate the new configuration (i.e., update /etc, make accounts,
 # and so on).
@@ -691,108 +750,110 @@ print STDERR "activating the configuration...\n";
 system("$out/activate", "$out") == 0 or $res = 2;
 
 # Handle the activation script requesting the restart or reload of a unit.
-foreach (split('\n', read_file($restartByActivationFile, err_mode => 'quiet') // "")) {
+foreach (split(/\n/msx, read_file($restart_by_activation_file, err_mode => "quiet") // "")) {
     my $unit = $_;
-    my $baseUnit = $unit;
-    my $newUnitFile = "$out/etc/systemd/system/$baseUnit";
+    my $base_unit = $unit;
+    my $new_unit_file = "$out/etc/systemd/system/$base_unit";
 
     # Detect template instances.
-    if (!-e $newUnitFile && $unit =~ /^(.*)@[^\.]*\.(.*)$/) {
-      $baseUnit = "$1\@.$2";
-      $newUnitFile = "$out/etc/systemd/system/$baseUnit";
+    if (!-e $new_unit_file && $unit =~ /^(.*)@[^\.]*\.(.*)$/msx) {
+      $base_unit = "$1\@.$2";
+      $new_unit_file = "$out/etc/systemd/system/$base_unit";
     }
 
-    my $baseName = $baseUnit;
-    $baseName =~ s/\.[a-z]*$//;
+    my $base_name = $base_unit;
+    $base_name =~ s/\.[[:lower:]]*$//msx;
 
     # Start units if they were not active previously
-    if (not defined($activePrev->{$unit})) {
-        $unitsToStart{$unit} = 1;
-        recordUnit($startListFile, $unit);
+    if (not defined($active_cur->{$unit})) {
+        $units_to_start{$unit} = 1;
+        record_unit($start_list_file, $unit);
         next;
     }
 
-    handleModifiedUnit($unit, $baseName, $newUnitFile, undef, $activePrev, \%unitsToRestart, \%unitsToRestart, \%unitsToReload, \%unitsToRestart, \%unitsToSkip);
+    handle_modified_unit($unit, $base_name, $new_unit_file, undef, $active_cur, \%units_to_restart, \%units_to_restart, \%units_to_reload, \%units_to_restart, \%units_to_skip);
 }
 # We can remove the file now because it has been propagated to the other restart/reload files
-unlink($restartByActivationFile);
+unlink($restart_by_activation_file);
 
-foreach (split('\n', read_file($reloadByActivationFile, err_mode => 'quiet') // "")) {
+foreach (split(/\n/msx, read_file($reload_by_activation_file, err_mode => "quiet") // "")) {
     my $unit = $_;
 
-    if (defined($activePrev->{$unit}) and not $unitsToRestart{$unit} and not $unitsToStop{$unit}) {
-        $unitsToReload{$unit} = 1;
-        recordUnit($reloadListFile, $unit);
+    if (defined($active_cur->{$unit}) and not $units_to_restart{$unit} and not $units_to_stop{$unit}) {
+        $units_to_reload{$unit} = 1;
+        record_unit($reload_list_file, $unit);
     }
 }
 # We can remove the file now because it has been propagated to the other reload file
-unlink($reloadByActivationFile);
+unlink($reload_by_activation_file);
 
 # Restart systemd if necessary. Note that this is done using the
 # current version of systemd, just in case the new one has trouble
 # communicating with the running pid 1.
-if ($restartSystemd) {
+if ($restart_systemd) {
     print STDERR "restarting systemd...\n";
-    system("$curSystemd/systemctl", "daemon-reexec") == 0 or $res = 2;
+    system("$cur_systemd/systemctl", "daemon-reexec") == 0 or $res = 2;
 }
 
 # Forget about previously failed services.
-system("@systemd@/bin/systemctl", "reset-failed");
+system("$new_systemd/bin/systemctl", "reset-failed");
 
 # Make systemd reload its units.
-system("@systemd@/bin/systemctl", "daemon-reload") == 0 or $res = 3;
+system("$new_systemd/bin/systemctl", "daemon-reload") == 0 or $res = 3;
 
 # Reload user units
-open(my $listActiveUsers, '-|', '@systemd@/bin/loginctl', 'list-users', '--no-legend');
-while (my $f = <$listActiveUsers>) {
-    next unless $f =~ /^\s*(?<uid>\d+)\s+(?<user>\S+)/;
+open(my $list_active_users, "-|", "$new_systemd/bin/loginctl", "list-users", "--no-legend") || die("Unable to call loginctl");
+while (my $f = <$list_active_users>) {
+    if ($f !~ /^\s*(?<uid>\d+)\s+(?<user>\S+)/msx) {
+        next;
+    }
     my ($uid, $name) = ($+{uid}, $+{user});
     print STDERR "reloading user units for $name...\n";
 
     system("@su@", "-s", "@shell@", "-l", $name, "-c",
            "export XDG_RUNTIME_DIR=/run/user/$uid; " .
-           "$curSystemd/systemctl --user daemon-reexec; " .
-           "@systemd@/bin/systemctl --user start nixos-activation.service");
+           "$cur_systemd/systemctl --user daemon-reexec; " .
+           "$new_systemd/bin/systemctl --user start nixos-activation.service");
 }
 
-close($listActiveUsers);
+close($list_active_users) || die("Unable to close the file handle to loginctl");
 
 # Set the new tmpfiles
 print STDERR "setting up tmpfiles\n";
-system("@systemd@/bin/systemd-tmpfiles", "--create", "--remove", "--exclude-prefix=/dev") == 0 or $res = 3;
+system("$new_systemd/bin/systemd-tmpfiles", "--create", "--remove", "--exclude-prefix=/dev") == 0 or $res = 3;
 
 # Before reloading we need to ensure that the units are still active. They may have been
 # deactivated because one of their requirements got stopped. If they are inactive
 # but should have been reloaded, the user probably expects them to be started.
-if (scalar(keys(%unitsToReload)) > 0) {
-    for my $unit (keys(%unitsToReload)) {
+if (scalar(keys(%units_to_reload)) > 0) {
+    for my $unit (keys(%units_to_reload)) {
         if (!unit_is_active($unit)) {
             # Figure out if we need to start the unit
             my %unit_info = parse_unit("$out/etc/systemd/system/$unit");
-            if (!(parseSystemdBool(\%unit_info, 'Unit', 'RefuseManualStart', 0) || parseSystemdBool(\%unit_info, 'Unit', 'X-OnlyManualStart', 0))) {
-                $unitsToStart{$unit} = 1;
-                recordUnit($startListFile, $unit);
+            if (!(parse_systemd_bool(\%unit_info, "Unit", "RefuseManualStart", 0) || parse_systemd_bool(\%unit_info, "Unit", "X-OnlyManualStart", 0))) {
+                $units_to_start{$unit} = 1;
+                record_unit($start_list_file, $unit);
             }
             # Don't reload the unit, reloading would fail
-            delete %unitsToReload{$unit};
-            unrecord_unit($reloadListFile, $unit);
+            delete %units_to_reload{$unit};
+            unrecord_unit($reload_list_file, $unit);
         }
     }
 }
 # Reload units that need it. This includes remounting changed mount
 # units.
-if (scalar(keys(%unitsToReload)) > 0) {
-    print STDERR "reloading the following units: ", join(", ", sort(keys(%unitsToReload))), "\n";
-    system("@systemd@/bin/systemctl", "reload", "--", sort(keys(%unitsToReload))) == 0 or $res = 4;
-    unlink($reloadListFile);
+if (scalar(keys(%units_to_reload)) > 0) {
+    print STDERR "reloading the following units: ", join(", ", sort(keys(%units_to_reload))), "\n";
+    system("$new_systemd/bin/systemctl", "reload", "--", sort(keys(%units_to_reload))) == 0 or $res = 4;
+    unlink($reload_list_file);
 }
 
 # Restart changed services (those that have to be restarted rather
 # than stopped and started).
-if (scalar(keys(%unitsToRestart)) > 0) {
-    print STDERR "restarting the following units: ", join(", ", sort(keys(%unitsToRestart))), "\n";
-    system("@systemd@/bin/systemctl", "restart", "--", sort(keys(%unitsToRestart))) == 0 or $res = 4;
-    unlink($restartListFile);
+if (scalar(keys(%units_to_restart)) > 0) {
+    print STDERR "restarting the following units: ", join(", ", sort(keys(%units_to_restart))), "\n";
+    system("$new_systemd/bin/systemctl", "restart", "--", sort(keys(%units_to_restart))) == 0 or $res = 4;
+    unlink($restart_list_file);
 }
 
 # Start all active targets, as well as changed units we stopped above.
@@ -801,17 +862,18 @@ if (scalar(keys(%unitsToRestart)) > 0) {
 # that are symlinks to other units.  We shouldn't start both at the
 # same time because we'll get a "Failed to add path to set" error from
 # systemd.
-my @unitsToStartFiltered = filterUnits(\%unitsToStart);
-print STDERR "starting the following units: ", join(", ", @unitsToStartFiltered), "\n"
-    if scalar(@unitsToStartFiltered);
-system("@systemd@/bin/systemctl", "start", "--", sort(keys(%unitsToStart))) == 0 or $res = 4;
-unlink($startListFile);
+my @units_to_start_filtered = filter_units(\%units_to_start);
+if (scalar(@units_to_start_filtered)) {
+    print STDERR "starting the following units: ", join(", ", @units_to_start_filtered), "\n"
+}
+system("$new_systemd/bin/systemctl", "start", "--", sort(keys(%units_to_start))) == 0 or $res = 4;
+unlink($start_list_file);
 
 
 # Print failed and new units.
 my (@failed, @new);
-my $activeNew = getActiveUnits();
-while (my ($unit, $state) = each(%{$activeNew})) {
+my $active_new = get_active_units();
+while (my ($unit, $state) = each(%{$active_new})) {
     if ($state->{state} eq "failed") {
         push(@failed, $unit);
         next;
@@ -819,7 +881,9 @@ while (my ($unit, $state) = each(%{$activeNew})) {
 
     if ($state->{substate} eq "auto-restart") {
         # A unit in auto-restart substate is a failure *if* it previously failed to start
-        my $main_status = `@systemd@/bin/systemctl show --value --property=ExecMainStatus '$unit'`;
+        open(my $main_status_fd, "-|", "$new_systemd/bin/systemctl", "show", "--value", "--property=ExecMainStatus", $unit) || die("Unable to call 'systemctl show'");
+        my $main_status = do { local $/ = undef; <$main_status_fd> };
+        close($main_status_fd) || die("Unable to close 'systemctl show' fd");
         chomp($main_status);
 
         if ($main_status ne "0") {
@@ -831,7 +895,7 @@ while (my ($unit, $state) = each(%{$activeNew})) {
     # Ignore scopes since they are not managed by this script but rather
     # created and managed by third-party services via the systemd dbus API.
     # This only lists units that are not failed (including ones that are in auto-restart but have not failed previously)
-    if ($state->{state} ne "failed" && !defined($activePrev->{$unit}) && $unit !~ /\.scope$/msx) {
+    if ($state->{state} ne "failed" && !defined($active_cur->{$unit}) && $unit !~ /\.scope$/msx) {
         push(@new, $unit);
     }
 }
@@ -843,7 +907,7 @@ if (scalar(@new) > 0) {
 if (scalar(@failed) > 0) {
     my @failed_sorted = sort(@failed);
     print STDERR "warning: the following units failed: ", join(", ", @failed_sorted), "\n\n";
-    system("@systemd@/bin/systemctl status --no-pager --full '" . join("' '", @failed_sorted) . "' >&2");
+    system("$new_systemd/bin/systemctl status --no-pager --full '" . join("' '", @failed_sorted) . "' >&2");
     $res = 4;
 }
 
diff --git a/nixpkgs/nixos/modules/system/boot/kernel.nix b/nixpkgs/nixos/modules/system/boot/kernel.nix
index d147155d796c..db00244ca0af 100644
--- a/nixpkgs/nixos/modules/system/boot/kernel.nix
+++ b/nixpkgs/nixos/modules/system/boot/kernel.nix
@@ -36,7 +36,7 @@ in
 
     boot.kernelPackages = mkOption {
       default = pkgs.linuxPackages;
-      type = types.unspecified // { merge = mergeEqualOption; };
+      type = types.raw;
       apply = kernelPackages: kernelPackages.extend (self: super: {
         kernel = super.kernel.override (originalArgs: {
           inherit randstructSeed;
diff --git a/nixpkgs/nixos/modules/system/boot/modprobe.nix b/nixpkgs/nixos/modules/system/boot/modprobe.nix
index 27f78835adb2..e683d1817297 100644
--- a/nixpkgs/nixos/modules/system/boot/modprobe.nix
+++ b/nixpkgs/nixos/modules/system/boot/modprobe.nix
@@ -34,23 +34,6 @@ with lib;
       type = types.lines;
     };
 
-    boot.initrd.extraModprobeConfig = mkOption {
-      default = "";
-      example =
-        ''
-          options zfs zfs_arc_max=1073741824
-        '';
-      description = ''
-        Does exactly the same thing as
-        <option>boot.extraModprobeConfig</option>, except
-        that the generated <filename>modprobe.conf</filename>
-        file is also included in the initrd.
-        This is useful for setting module options for kernel
-        modules that are loaded during early boot in the initrd.
-      '';
-      type = types.lines;
-    };
-
   };
 
 
@@ -67,9 +50,6 @@ with lib;
         '')}
         ${config.boot.extraModprobeConfig}
       '';
-    environment.etc."modprobe.d/nixos-initrd.conf".text = ''
-        ${config.boot.initrd.extraModprobeConfig}
-      '';
     environment.etc."modprobe.d/debian.conf".source = pkgs.kmod-debian-aliases;
 
     environment.etc."modprobe.d/systemd.conf".source = "${pkgs.systemd}/lib/modprobe.d/systemd.conf";
diff --git a/nixpkgs/nixos/modules/system/boot/stage-1.nix b/nixpkgs/nixos/modules/system/boot/stage-1.nix
index 1575c0257d1c..8b011d91563f 100644
--- a/nixpkgs/nixos/modules/system/boot/stage-1.nix
+++ b/nixpkgs/nixos/modules/system/boot/stage-1.nix
@@ -338,9 +338,6 @@ let
         { object = pkgs.writeText "mdadm.conf" config.boot.initrd.mdadmConf;
           symlink = "/etc/mdadm.conf";
         }
-        { object = config.environment.etc."modprobe.d/nixos-initrd.conf".source;
-          symlink = "/etc/modprobe.d/nixos-initrd.conf";
-        }
         { object = pkgs.runCommand "initrd-kmod-blacklist-ubuntu" {
               src = "${pkgs.kmod-blacklist-ubuntu}/modprobe.conf";
               preferLocalBuild = true;
@@ -581,7 +578,7 @@ in
         else "gzip"
       );
       defaultText = literalDocBook "<literal>zstd</literal> if the kernel supports it (5.9+), <literal>gzip</literal> if not";
-      type = types.unspecified; # We don't have a function type...
+      type = types.either types.str (types.functionTo types.str);
       description = ''
         The compressor to use on the initrd image. May be any of:
 
diff --git a/nixpkgs/nixos/modules/system/boot/stage-2.nix b/nixpkgs/nixos/modules/system/boot/stage-2.nix
index f6b6a8e4b0b4..fa2bf938df4f 100644
--- a/nixpkgs/nixos/modules/system/boot/stage-2.nix
+++ b/nixpkgs/nixos/modules/system/boot/stage-2.nix
@@ -47,36 +47,6 @@ in
         '';
       };
 
-      devSize = mkOption {
-        default = "5%";
-        example = "32m";
-        type = types.str;
-        description = ''
-          Size limit for the /dev tmpfs. Look at mount(8), tmpfs size option,
-          for the accepted syntax.
-        '';
-      };
-
-      devShmSize = mkOption {
-        default = "50%";
-        example = "256m";
-        type = types.str;
-        description = ''
-          Size limit for the /dev/shm tmpfs. Look at mount(8), tmpfs size option,
-          for the accepted syntax.
-        '';
-      };
-
-      runSize = mkOption {
-        default = "25%";
-        example = "256m";
-        type = types.str;
-        description = ''
-          Size limit for the /run tmpfs. Look at mount(8), tmpfs size option,
-          for the accepted syntax.
-        '';
-      };
-
       systemdExecutable = mkOption {
         default = "systemd";
         type = types.str;
diff --git a/nixpkgs/nixos/modules/system/boot/systemd.nix b/nixpkgs/nixos/modules/system/boot/systemd.nix
index 2607e57195ca..057474c607ac 100644
--- a/nixpkgs/nixos/modules/system/boot/systemd.nix
+++ b/nixpkgs/nixos/modules/system/boot/systemd.nix
@@ -2,7 +2,6 @@
 
 with utils;
 with systemdUtils.unitOptions;
-with systemdUtils.lib;
 with lib;
 
 let
@@ -11,6 +10,24 @@ let
 
   systemd = cfg.package;
 
+  inherit (systemdUtils.lib)
+    makeUnit
+    generateUnits
+    makeJobScript
+    unitConfig
+    serviceConfig
+    mountConfig
+    automountConfig
+    commonUnitText
+    targetToUnit
+    serviceToUnit
+    socketToUnit
+    timerToUnit
+    pathToUnit
+    mountToUnit
+    automountToUnit
+    sliceToUnit;
+
   upstreamSystemUnits =
     [ # Targets.
       "basic.target"
@@ -63,32 +80,6 @@ let
       "printer.target"
       "smartcard.target"
 
-      # Login stuff.
-      "systemd-logind.service"
-      "autovt@.service"
-      "systemd-user-sessions.service"
-      "dbus-org.freedesktop.import1.service"
-      "dbus-org.freedesktop.machine1.service"
-      "dbus-org.freedesktop.login1.service"
-      "user@.service"
-      "user-runtime-dir@.service"
-
-      # Journal.
-      "systemd-journald.socket"
-      "systemd-journald@.socket"
-      "systemd-journald-varlink@.socket"
-      "systemd-journald.service"
-      "systemd-journald@.service"
-      "systemd-journal-flush.service"
-      "systemd-journal-catalog-update.service"
-      ] ++ (optional (!config.boot.isContainer) "systemd-journald-audit.socket") ++ [
-      "systemd-journald-dev-log.socket"
-      "syslog.socket"
-
-      # Coredumps.
-      "systemd-coredump.socket"
-      "systemd-coredump@.service"
-
       # Kernel module loading.
       "systemd-modules-load.service"
       "kmod-static-nodes.service"
@@ -149,19 +140,12 @@ let
 
       # Slices / containers.
       "slices.target"
-      "user.slice"
       "machine.slice"
       "machines.target"
       "systemd-importd.service"
       "systemd-machined.service"
       "systemd-nspawn@.service"
 
-      # Temporary file creation / cleanup.
-      "systemd-tmpfiles-clean.service"
-      "systemd-tmpfiles-clean.timer"
-      "systemd-tmpfiles-setup.service"
-      "systemd-tmpfiles-setup-dev.service"
-
       # Misc.
       "systemd-sysctl.service"
       "dbus-org.freedesktop.timedate1.service"
@@ -172,9 +156,6 @@ let
       "systemd-hostnamed.service"
       "systemd-exit.service"
       "systemd-update-done.service"
-    ] ++ optionals config.services.journald.enableHttpGateway [
-      "systemd-journal-gatewayd.socket"
-      "systemd-journal-gatewayd.service"
     ] ++ cfg.additionalUpstreamSystemUnits;
 
   upstreamSystemWants =
@@ -185,237 +166,6 @@ let
       "timers.target.wants"
     ];
 
-    upstreamUserUnits = [
-      "app.slice"
-      "background.slice"
-      "basic.target"
-      "bluetooth.target"
-      "default.target"
-      "exit.target"
-      "graphical-session-pre.target"
-      "graphical-session.target"
-      "paths.target"
-      "printer.target"
-      "session.slice"
-      "shutdown.target"
-      "smartcard.target"
-      "sockets.target"
-      "sound.target"
-      "systemd-exit.service"
-      "systemd-tmpfiles-clean.service"
-      "systemd-tmpfiles-clean.timer"
-      "systemd-tmpfiles-setup.service"
-      "timers.target"
-      "xdg-desktop-autostart.target"
-    ];
-
-  makeJobScript = name: text:
-    let
-      scriptName = replaceChars [ "\\" "@" ] [ "-" "_" ] (shellEscape name);
-      out = (pkgs.writeShellScriptBin scriptName ''
-        set -e
-        ${text}
-      '').overrideAttrs (_: {
-        # The derivation name is different from the script file name
-        # to keep the script file name short to avoid cluttering logs.
-        name = "unit-script-${scriptName}";
-      });
-    in "${out}/bin/${scriptName}";
-
-  unitConfig = { config, options, ... }: {
-    config = {
-      unitConfig =
-        optionalAttrs (config.requires != [])
-          { Requires = toString config.requires; }
-        // optionalAttrs (config.wants != [])
-          { Wants = toString config.wants; }
-        // optionalAttrs (config.after != [])
-          { After = toString config.after; }
-        // optionalAttrs (config.before != [])
-          { Before = toString config.before; }
-        // optionalAttrs (config.bindsTo != [])
-          { BindsTo = toString config.bindsTo; }
-        // optionalAttrs (config.partOf != [])
-          { PartOf = toString config.partOf; }
-        // optionalAttrs (config.conflicts != [])
-          { Conflicts = toString config.conflicts; }
-        // optionalAttrs (config.requisite != [])
-          { Requisite = toString config.requisite; }
-        // optionalAttrs (config.restartTriggers != [])
-          { X-Restart-Triggers = toString config.restartTriggers; }
-        // optionalAttrs (config.reloadTriggers != [])
-          { X-Reload-Triggers = toString config.reloadTriggers; }
-        // optionalAttrs (config.description != "") {
-          Description = config.description; }
-        // optionalAttrs (config.documentation != []) {
-          Documentation = toString config.documentation; }
-        // optionalAttrs (config.onFailure != []) {
-          OnFailure = toString config.onFailure; }
-        // optionalAttrs (options.startLimitIntervalSec.isDefined) {
-          StartLimitIntervalSec = toString config.startLimitIntervalSec;
-        } // optionalAttrs (options.startLimitBurst.isDefined) {
-          StartLimitBurst = toString config.startLimitBurst;
-        };
-    };
-  };
-
-  serviceConfig = { name, config, ... }: {
-    config = mkMerge
-      [ { # Default path for systemd services.  Should be quite minimal.
-          path = mkAfter
-            [ pkgs.coreutils
-              pkgs.findutils
-              pkgs.gnugrep
-              pkgs.gnused
-              systemd
-            ];
-          environment.PATH = "${makeBinPath config.path}:${makeSearchPathOutput "bin" "sbin" config.path}";
-        }
-        (mkIf (config.preStart != "")
-          { serviceConfig.ExecStartPre =
-              [ (makeJobScript "${name}-pre-start" config.preStart) ];
-          })
-        (mkIf (config.script != "")
-          { serviceConfig.ExecStart =
-              makeJobScript "${name}-start" config.script + " " + config.scriptArgs;
-          })
-        (mkIf (config.postStart != "")
-          { serviceConfig.ExecStartPost =
-              [ (makeJobScript "${name}-post-start" config.postStart) ];
-          })
-        (mkIf (config.reload != "")
-          { serviceConfig.ExecReload =
-              makeJobScript "${name}-reload" config.reload;
-          })
-        (mkIf (config.preStop != "")
-          { serviceConfig.ExecStop =
-              makeJobScript "${name}-pre-stop" config.preStop;
-          })
-        (mkIf (config.postStop != "")
-          { serviceConfig.ExecStopPost =
-              makeJobScript "${name}-post-stop" config.postStop;
-          })
-      ];
-  };
-
-  mountConfig = { config, ... }: {
-    config = {
-      mountConfig =
-        { What = config.what;
-          Where = config.where;
-        } // optionalAttrs (config.type != "") {
-          Type = config.type;
-        } // optionalAttrs (config.options != "") {
-          Options = config.options;
-        };
-    };
-  };
-
-  automountConfig = { config, ... }: {
-    config = {
-      automountConfig =
-        { Where = config.where;
-        };
-    };
-  };
-
-  commonUnitText = def: ''
-      [Unit]
-      ${attrsToSection def.unitConfig}
-    '';
-
-  targetToUnit = name: def:
-    { inherit (def) aliases wantedBy requiredBy enable;
-      text =
-        ''
-          [Unit]
-          ${attrsToSection def.unitConfig}
-        '';
-    };
-
-  serviceToUnit = name: def:
-    { inherit (def) aliases wantedBy requiredBy enable;
-      text = commonUnitText def +
-        ''
-          [Service]
-          ${let env = cfg.globalEnvironment // def.environment;
-            in concatMapStrings (n:
-              let s = optionalString (env.${n} != null)
-                "Environment=${builtins.toJSON "${n}=${env.${n}}"}\n";
-              # systemd max line length is now 1MiB
-              # https://github.com/systemd/systemd/commit/e6dde451a51dc5aaa7f4d98d39b8fe735f73d2af
-              in if stringLength s >= 1048576 then throw "The value of the environment variable ‘${n}’ in systemd service ‘${name}.service’ is too long." else s) (attrNames env)}
-          ${if def.reloadIfChanged then ''
-            X-ReloadIfChanged=true
-          '' else if !def.restartIfChanged then ''
-            X-RestartIfChanged=false
-          '' else ""}
-          ${optionalString (!def.stopIfChanged) "X-StopIfChanged=false"}
-          ${attrsToSection def.serviceConfig}
-        '';
-    };
-
-  socketToUnit = name: def:
-    { inherit (def) aliases wantedBy requiredBy enable;
-      text = commonUnitText def +
-        ''
-          [Socket]
-          ${attrsToSection def.socketConfig}
-          ${concatStringsSep "\n" (map (s: "ListenStream=${s}") def.listenStreams)}
-          ${concatStringsSep "\n" (map (s: "ListenDatagram=${s}") def.listenDatagrams)}
-        '';
-    };
-
-  timerToUnit = name: def:
-    { inherit (def) aliases wantedBy requiredBy enable;
-      text = commonUnitText def +
-        ''
-          [Timer]
-          ${attrsToSection def.timerConfig}
-        '';
-    };
-
-  pathToUnit = name: def:
-    { inherit (def) aliases wantedBy requiredBy enable;
-      text = commonUnitText def +
-        ''
-          [Path]
-          ${attrsToSection def.pathConfig}
-        '';
-    };
-
-  mountToUnit = name: def:
-    { inherit (def) aliases wantedBy requiredBy enable;
-      text = commonUnitText def +
-        ''
-          [Mount]
-          ${attrsToSection def.mountConfig}
-        '';
-    };
-
-  automountToUnit = name: def:
-    { inherit (def) aliases wantedBy requiredBy enable;
-      text = commonUnitText def +
-        ''
-          [Automount]
-          ${attrsToSection def.automountConfig}
-        '';
-    };
-
-  sliceToUnit = name: def:
-    { inherit (def) aliases wantedBy requiredBy enable;
-      text = commonUnitText def +
-        ''
-          [Slice]
-          ${attrsToSection def.sliceConfig}
-        '';
-    };
-
-  logindHandlerType = types.enum [
-    "ignore" "poweroff" "reboot" "halt" "kexec" "suspend"
-    "hibernate" "hybrid-sleep" "suspend-then-hibernate" "lock"
-  ];
-
   proxy_env = config.networking.proxy.envVars;
 
 in
@@ -568,26 +318,6 @@ in
       '';
     };
 
-    systemd.coredump.enable = mkOption {
-      default = true;
-      type = types.bool;
-      description = ''
-        Whether core dumps should be processed by
-        <command>systemd-coredump</command>. If disabled, core dumps
-        appear in the current directory of the crashing process.
-      '';
-    };
-
-    systemd.coredump.extraConfig = mkOption {
-      default = "";
-      type = types.lines;
-      example = "Storage=journal";
-      description = ''
-        Extra config options for systemd-coredump. See coredump.conf(5) man page
-        for available options.
-      '';
-    };
-
     systemd.extraConfig = mkOption {
       default = "";
       type = types.lines;
@@ -598,142 +328,6 @@ in
       '';
     };
 
-    services.journald.console = mkOption {
-      default = "";
-      type = types.str;
-      description = "If non-empty, write log messages to the specified TTY device.";
-    };
-
-    services.journald.rateLimitInterval = mkOption {
-      default = "30s";
-      type = types.str;
-      description = ''
-        Configures the rate limiting interval that is applied to all
-        messages generated on the system. This rate limiting is applied
-        per-service, so that two services which log do not interfere with
-        each other's limit. The value may be specified in the following
-        units: s, min, h, ms, us. To turn off any kind of rate limiting,
-        set either value to 0.
-
-        See <option>services.journald.rateLimitBurst</option> for important
-        considerations when setting this value.
-      '';
-    };
-
-    services.journald.rateLimitBurst = mkOption {
-      default = 10000;
-      type = types.int;
-      description = ''
-        Configures the rate limiting burst limit (number of messages per
-        interval) that is applied to all messages generated on the system.
-        This rate limiting is applied per-service, so that two services
-        which log do not interfere with each other's limit.
-
-        Note that the effective rate limit is multiplied by a factor derived
-        from the available free disk space for the journal as described on
-        <link xlink:href="https://www.freedesktop.org/software/systemd/man/journald.conf.html">
-        journald.conf(5)</link>.
-
-        Note that the total amount of logs stored is limited by journald settings
-        such as <literal>SystemMaxUse</literal>, which defaults to a 4 GB cap.
-
-        It is thus recommended to compute what period of time that you will be
-        able to store logs for when an application logs at full burst rate.
-        With default settings for log lines that are 100 Bytes long, this can
-        amount to just a few hours.
-      '';
-    };
-
-    services.journald.extraConfig = mkOption {
-      default = "";
-      type = types.lines;
-      example = "Storage=volatile";
-      description = ''
-        Extra config options for systemd-journald. See man journald.conf
-        for available options.
-      '';
-    };
-
-    services.journald.enableHttpGateway = mkOption {
-      default = false;
-      type = types.bool;
-      description = ''
-        Whether to enable the HTTP gateway to the journal.
-      '';
-    };
-
-    services.journald.forwardToSyslog = mkOption {
-      default = config.services.rsyslogd.enable || config.services.syslog-ng.enable;
-      defaultText = literalExpression "services.rsyslogd.enable || services.syslog-ng.enable";
-      type = types.bool;
-      description = ''
-        Whether to forward log messages to syslog.
-      '';
-    };
-
-    services.logind.extraConfig = mkOption {
-      default = "";
-      type = types.lines;
-      example = "IdleAction=lock";
-      description = ''
-        Extra config options for systemd-logind. See
-        <link xlink:href="https://www.freedesktop.org/software/systemd/man/logind.conf.html">
-        logind.conf(5)</link> for available options.
-      '';
-    };
-
-    services.logind.killUserProcesses = mkOption {
-      default = false;
-      type = types.bool;
-      description = ''
-        Specifies whether the processes of a user should be killed
-        when the user logs out.  If true, the scope unit corresponding
-        to the session and all processes inside that scope will be
-        terminated.  If false, the scope is "abandoned" (see
-        <link xlink:href="https://www.freedesktop.org/software/systemd/man/systemd.scope.html#">
-        systemd.scope(5)</link>), and processes are not killed.
-        </para>
-
-        <para>
-        See <link xlink:href="https://www.freedesktop.org/software/systemd/man/logind.conf.html#KillUserProcesses=">logind.conf(5)</link>
-        for more details.
-      '';
-    };
-
-    services.logind.lidSwitch = mkOption {
-      default = "suspend";
-      example = "ignore";
-      type = logindHandlerType;
-
-      description = ''
-        Specifies what to be done when the laptop lid is closed.
-      '';
-    };
-
-    services.logind.lidSwitchDocked = mkOption {
-      default = "ignore";
-      example = "suspend";
-      type = logindHandlerType;
-
-      description = ''
-        Specifies what to be done when the laptop lid is closed
-        and another screen is added.
-      '';
-    };
-
-    services.logind.lidSwitchExternalPower = mkOption {
-      default = config.services.logind.lidSwitch;
-      defaultText = literalExpression "services.logind.lidSwitch";
-      example = "ignore";
-      type = logindHandlerType;
-
-      description = ''
-        Specifies what to do when the laptop lid is closed and the system is
-        on external power. By default use the same action as specified in
-        services.logind.lidSwitch.
-      '';
-    };
-
     systemd.sleep.extraConfig = mkOption {
       default = "";
       type = types.lines;
@@ -744,95 +338,6 @@ in
       '';
     };
 
-    systemd.user.extraConfig = mkOption {
-      default = "";
-      type = types.lines;
-      example = "DefaultCPUAccounting=yes";
-      description = ''
-        Extra config options for systemd user instances. See man systemd-user.conf for
-        available options.
-      '';
-    };
-
-    systemd.tmpfiles.rules = mkOption {
-      type = types.listOf types.str;
-      default = [];
-      example = [ "d /tmp 1777 root root 10d" ];
-      description = ''
-        Rules for creation, deletion and cleaning of volatile and temporary files
-        automatically. See
-        <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>
-        for the exact format.
-      '';
-    };
-
-    systemd.tmpfiles.packages = mkOption {
-      type = types.listOf types.package;
-      default = [];
-      example = literalExpression "[ pkgs.lvm2 ]";
-      apply = map getLib;
-      description = ''
-        List of packages containing <command>systemd-tmpfiles</command> rules.
-
-        All files ending in .conf found in
-        <filename><replaceable>pkg</replaceable>/lib/tmpfiles.d</filename>
-        will be included.
-        If this folder does not exist or does not contain any files an error will be returned instead.
-
-        If a <filename>lib</filename> output is available, rules are searched there and only there.
-        If there is no <filename>lib</filename> output it will fall back to <filename>out</filename>
-        and if that does not exist either, the default output will be used.
-      '';
-    };
-
-    systemd.user.units = mkOption {
-      description = "Definition of systemd per-user units.";
-      default = {};
-      type = with types; attrsOf (submodule (
-        { name, config, ... }:
-        { options = concreteUnitOptions;
-          config = {
-            unit = mkDefault (makeUnit name config);
-          };
-        }));
-    };
-
-    systemd.user.paths = mkOption {
-      default = {};
-      type = with types; attrsOf (submodule [ { options = pathOptions; } unitConfig ]);
-      description = "Definition of systemd per-user path units.";
-    };
-
-    systemd.user.services = mkOption {
-      default = {};
-      type = with types; attrsOf (submodule [ { options = serviceOptions; } unitConfig serviceConfig ] );
-      description = "Definition of systemd per-user service units.";
-    };
-
-    systemd.user.slices = mkOption {
-      default = {};
-      type = with types; attrsOf (submodule [ { options = sliceOptions; } unitConfig ] );
-      description = "Definition of systemd per-user slice units.";
-    };
-
-    systemd.user.sockets = mkOption {
-      default = {};
-      type = with types; attrsOf (submodule [ { options = socketOptions; } unitConfig ] );
-      description = "Definition of systemd per-user socket units.";
-    };
-
-    systemd.user.targets = mkOption {
-      default = {};
-      type = with types; attrsOf (submodule [ { options = targetOptions; } unitConfig] );
-      description = "Definition of systemd per-user target units.";
-    };
-
-    systemd.user.timers = mkOption {
-      default = {};
-      type = with types; attrsOf (submodule [ { options = timerOptions; } unitConfig ] );
-      description = "Definition of systemd per-user timer units.";
-    };
-
     systemd.additionalUpstreamSystemUnits = mkOption {
       default = [ ];
       type = types.listOf types.str;
@@ -968,8 +473,6 @@ in
     in ({
       "systemd/system".source = generateUnits "system" enabledUnits enabledUpstreamSystemUnits upstreamSystemWants;
 
-      "systemd/user".source = generateUnits "user" cfg.user.units upstreamUserUnits [];
-
       "systemd/system.conf".text = ''
         [Manager]
         ${optionalString config.systemd.enableCgroupAccounting ''
@@ -995,76 +498,17 @@ in
         ${config.systemd.extraConfig}
       '';
 
-      "systemd/user.conf".text = ''
-        [Manager]
-        ${config.systemd.user.extraConfig}
-      '';
-
-      "systemd/journald.conf".text = ''
-        [Journal]
-        Storage=persistent
-        RateLimitInterval=${config.services.journald.rateLimitInterval}
-        RateLimitBurst=${toString config.services.journald.rateLimitBurst}
-        ${optionalString (config.services.journald.console != "") ''
-          ForwardToConsole=yes
-          TTYPath=${config.services.journald.console}
-        ''}
-        ${optionalString (config.services.journald.forwardToSyslog) ''
-          ForwardToSyslog=yes
-        ''}
-        ${config.services.journald.extraConfig}
-      '';
-
-      "systemd/coredump.conf".text =
-        ''
-          [Coredump]
-          ${config.systemd.coredump.extraConfig}
-        '';
-
-      "systemd/logind.conf".text = ''
-        [Login]
-        KillUserProcesses=${if config.services.logind.killUserProcesses then "yes" else "no"}
-        HandleLidSwitch=${config.services.logind.lidSwitch}
-        HandleLidSwitchDocked=${config.services.logind.lidSwitchDocked}
-        HandleLidSwitchExternalPower=${config.services.logind.lidSwitchExternalPower}
-        ${config.services.logind.extraConfig}
-      '';
-
       "systemd/sleep.conf".text = ''
         [Sleep]
         ${config.systemd.sleep.extraConfig}
       '';
 
-      # install provided sysctl snippets
-      "sysctl.d/50-coredump.conf".source = "${systemd}/example/sysctl.d/50-coredump.conf";
-      "sysctl.d/50-default.conf".source = "${systemd}/example/sysctl.d/50-default.conf";
-
-      "tmpfiles.d".source = (pkgs.symlinkJoin {
-        name = "tmpfiles.d";
-        paths = map (p: p + "/lib/tmpfiles.d") cfg.tmpfiles.packages;
-        postBuild = ''
-          for i in $(cat $pathsPath); do
-            (test -d "$i" && test $(ls "$i"/*.conf | wc -l) -ge 1) || (
-              echo "ERROR: The path '$i' from systemd.tmpfiles.packages contains no *.conf files."
-              exit 1
-            )
-          done
-        '' + concatMapStrings (name: optionalString (hasPrefix "tmpfiles.d/" name) ''
-          rm -f $out/${removePrefix "tmpfiles.d/" name}
-        '') config.system.build.etc.passthru.targets;
-      }) + "/*";
-
       "systemd/system-generators" = { source = hooks "generators" cfg.generators; };
       "systemd/system-shutdown" = { source = hooks "shutdown" cfg.shutdown; };
     });
 
     services.dbus.enable = true;
 
-    users.users.systemd-coredump = {
-      uid = config.ids.uids.systemd-coredump;
-      group = "systemd-coredump";
-    };
-    users.groups.systemd-coredump = {};
     users.users.systemd-network = {
       uid = config.ids.uids.systemd-network;
       group = "systemd-network";
@@ -1084,38 +528,6 @@ in
         unitConfig.X-StopOnReconfiguration = true;
       };
 
-    systemd.tmpfiles.packages = [
-      # Default tmpfiles rules provided by systemd
-      (pkgs.runCommand "systemd-default-tmpfiles" {} ''
-        mkdir -p $out/lib/tmpfiles.d
-        cd $out/lib/tmpfiles.d
-
-        # home.conf creates /srv (which we don't want), and /home, which
-        # is handled by NixOS anyway.
-        # ln -s "${systemd}/example/tmpfiles.d/home.conf"
-        ln -s "${systemd}/example/tmpfiles.d/journal-nocow.conf"
-        ln -s "${systemd}/example/tmpfiles.d/static-nodes-permissions.conf"
-        ln -s "${systemd}/example/tmpfiles.d/systemd.conf"
-        ln -s "${systemd}/example/tmpfiles.d/systemd-nologin.conf"
-        ln -s "${systemd}/example/tmpfiles.d/systemd-nspawn.conf"
-        ln -s "${systemd}/example/tmpfiles.d/systemd-tmp.conf"
-        ln -s "${systemd}/example/tmpfiles.d/tmp.conf"
-        ln -s "${systemd}/example/tmpfiles.d/var.conf"
-        ln -s "${systemd}/example/tmpfiles.d/x11.conf"
-      '')
-      # User-specified tmpfiles rules
-      (pkgs.writeTextFile {
-        name = "nixos-tmpfiles.d";
-        destination = "/lib/tmpfiles.d/00-nixos.conf";
-        text = ''
-          # This file is created automatically and should not be modified.
-          # Please change the option ‘systemd.tmpfiles.rules’ instead.
-
-          ${concatStringsSep "\n" cfg.tmpfiles.rules}
-        '';
-      })
-    ];
-
     systemd.units =
          mapAttrs' (n: v: nameValuePair "${n}.path"    (pathToUnit    n v)) cfg.paths
       // mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services
@@ -1130,14 +542,6 @@ in
                    (v: let n = escapeSystemdPath v.where;
                        in nameValuePair "${n}.automount" (automountToUnit n v)) cfg.automounts);
 
-    systemd.user.units =
-         mapAttrs' (n: v: nameValuePair "${n}.path"    (pathToUnit    n v)) cfg.user.paths
-      // mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.user.services
-      // mapAttrs' (n: v: nameValuePair "${n}.slice"   (sliceToUnit   n v)) cfg.user.slices
-      // mapAttrs' (n: v: nameValuePair "${n}.socket"  (socketToUnit  n v)) cfg.user.sockets
-      // mapAttrs' (n: v: nameValuePair "${n}.target"  (targetToUnit  n v)) cfg.user.targets
-      // mapAttrs' (n: v: nameValuePair "${n}.timer"   (timerToUnit   n v)) cfg.user.timers;
-
     system.requiredKernelConfig = map config.lib.kernelConfig.isEnabled
       [ "DEVTMPFS" "CGROUPS" "INOTIFY_USER" "SIGNALFD" "TIMERFD" "EPOLL" "NET"
         "SYSFS" "PROC_FS" "FHANDLE" "CRYPTO_USER_API_HASH" "CRYPTO_HMAC"
@@ -1145,11 +549,6 @@ in
         "TMPFS_XATTR" "SECCOMP"
       ];
 
-    users.groups.systemd-journal.gid = config.ids.gids.systemd-journal;
-    users.users.systemd-journal-gateway.uid = config.ids.uids.systemd-journal-gateway;
-    users.users.systemd-journal-gateway.group = "systemd-journal-gateway";
-    users.groups.systemd-journal-gateway.gid = config.ids.gids.systemd-journal-gateway;
-
     # Generate timer units for all services that have a ‘startAt’ value.
     systemd.timers =
       mapAttrs (name: service:
@@ -1166,42 +565,14 @@ in
         })
         (filterAttrs (name: service: service.startAt != []) cfg.user.services);
 
-    systemd.sockets.systemd-journal-gatewayd.wantedBy =
-      optional config.services.journald.enableHttpGateway "sockets.target";
-
-    # Provide the systemd-user PAM service, required to run systemd
-    # user instances.
-    security.pam.services.systemd-user =
-      { # Ensure that pam_systemd gets included. This is special-cased
-        # in systemd to provide XDG_RUNTIME_DIR.
-        startSession = true;
-      };
-
     # Some overrides to upstream units.
     systemd.services."systemd-backlight@".restartIfChanged = false;
     systemd.services."systemd-fsck@".restartIfChanged = false;
     systemd.services."systemd-fsck@".path = [ config.system.path ];
-    systemd.services."user@".restartIfChanged = false;
-    systemd.services.systemd-journal-flush.restartIfChanged = false;
     systemd.services.systemd-random-seed.restartIfChanged = false;
     systemd.services.systemd-remount-fs.restartIfChanged = false;
     systemd.services.systemd-update-utmp.restartIfChanged = false;
-    systemd.services.systemd-user-sessions.restartIfChanged = false; # Restart kills all active sessions.
     systemd.services.systemd-udev-settle.restartIfChanged = false; # Causes long delays in nixos-rebuild
-    # Restarting systemd-logind breaks X11
-    # - upstream commit: https://cgit.freedesktop.org/xorg/xserver/commit/?id=dc48bd653c7e101
-    # - systemd announcement: https://github.com/systemd/systemd/blob/22043e4317ecd2bc7834b48a6d364de76bb26d91/NEWS#L103-L112
-    # - this might be addressed in the future by xorg
-    #systemd.services.systemd-logind.restartTriggers = [ config.environment.etc."systemd/logind.conf".source ];
-    systemd.services.systemd-logind.restartIfChanged = false;
-    systemd.services.systemd-logind.stopIfChanged = false;
-    # The user-runtime-dir@ service is managed by systemd-logind we should not touch it or else we break the users' sessions.
-    systemd.services."user-runtime-dir@".stopIfChanged = false;
-    systemd.services."user-runtime-dir@".restartIfChanged = false;
-    systemd.services.systemd-journald.restartTriggers = [ config.environment.etc."systemd/journald.conf".source ];
-    systemd.services.systemd-journald.stopIfChanged = false;
-    systemd.services."systemd-journald@".restartTriggers = [ config.environment.etc."systemd/journald.conf".source ];
-    systemd.services."systemd-journald@".stopIfChanged = false;
     systemd.targets.local-fs.unitConfig.X-StopOnReconfiguration = true;
     systemd.targets.remote-fs.unitConfig.X-StopOnReconfiguration = true;
     systemd.targets.network-online.wantedBy = [ "multi-user.target" ];
@@ -1212,8 +583,6 @@ in
     systemd.services.systemd-remount-fs.unitConfig.ConditionVirtualization = "!container";
     systemd.services.systemd-random-seed.unitConfig.ConditionVirtualization = "!container";
 
-    boot.kernel.sysctl."kernel.core_pattern" = mkIf (!cfg.coredump.enable) "core";
-
     # Increase numeric PID range (set directly instead of copying a one-line file from systemd)
     # https://github.com/systemd/systemd/pull/12226
     boot.kernel.sysctl."kernel.pid_max" = mkIf pkgs.stdenv.is64bit (lib.mkDefault 4194304);
diff --git a/nixpkgs/nixos/modules/system/boot/systemd/coredump.nix b/nixpkgs/nixos/modules/system/boot/systemd/coredump.nix
new file mode 100644
index 000000000000..b6ee2cff1f9a
--- /dev/null
+++ b/nixpkgs/nixos/modules/system/boot/systemd/coredump.nix
@@ -0,0 +1,57 @@
+{ config, lib, pkgs, utils, ... }:
+
+with lib;
+
+let
+  cfg = config.systemd.coredump;
+  systemd = config.systemd.package;
+in {
+  options = {
+    systemd.coredump.enable = mkOption {
+      default = true;
+      type = types.bool;
+      description = ''
+        Whether core dumps should be processed by
+        <command>systemd-coredump</command>. If disabled, core dumps
+        appear in the current directory of the crashing process.
+      '';
+    };
+
+    systemd.coredump.extraConfig = mkOption {
+      default = "";
+      type = types.lines;
+      example = "Storage=journal";
+      description = ''
+        Extra config options for systemd-coredump. See coredump.conf(5) man page
+        for available options.
+      '';
+    };
+  };
+
+  config = {
+    systemd.additionalUpstreamSystemUnits = [
+      "systemd-coredump.socket"
+      "systemd-coredump@.service"
+    ];
+
+    environment.etc = {
+      "systemd/coredump.conf".text =
+      ''
+        [Coredump]
+        ${cfg.extraConfig}
+      '';
+
+      # install provided sysctl snippets
+      "sysctl.d/50-coredump.conf".source = "${systemd}/example/sysctl.d/50-coredump.conf";
+      "sysctl.d/50-default.conf".source = "${systemd}/example/sysctl.d/50-default.conf";
+    };
+
+    users.users.systemd-coredump = {
+      uid = config.ids.uids.systemd-coredump;
+      group = "systemd-coredump";
+    };
+    users.groups.systemd-coredump = {};
+
+    boot.kernel.sysctl."kernel.core_pattern" = mkIf (!cfg.enable) "core";
+  };
+}
diff --git a/nixpkgs/nixos/modules/system/boot/systemd/journald.nix b/nixpkgs/nixos/modules/system/boot/systemd/journald.nix
new file mode 100644
index 000000000000..7e14c8ae4077
--- /dev/null
+++ b/nixpkgs/nixos/modules/system/boot/systemd/journald.nix
@@ -0,0 +1,131 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.journald;
+in {
+  options = {
+    services.journald.console = mkOption {
+      default = "";
+      type = types.str;
+      description = "If non-empty, write log messages to the specified TTY device.";
+    };
+
+    services.journald.rateLimitInterval = mkOption {
+      default = "30s";
+      type = types.str;
+      description = ''
+        Configures the rate limiting interval that is applied to all
+        messages generated on the system. This rate limiting is applied
+        per-service, so that two services which log do not interfere with
+        each other's limit. The value may be specified in the following
+        units: s, min, h, ms, us. To turn off any kind of rate limiting,
+        set either value to 0.
+
+        See <option>services.journald.rateLimitBurst</option> for important
+        considerations when setting this value.
+      '';
+    };
+
+    services.journald.rateLimitBurst = mkOption {
+      default = 10000;
+      type = types.int;
+      description = ''
+        Configures the rate limiting burst limit (number of messages per
+        interval) that is applied to all messages generated on the system.
+        This rate limiting is applied per-service, so that two services
+        which log do not interfere with each other's limit.
+
+        Note that the effective rate limit is multiplied by a factor derived
+        from the available free disk space for the journal as described on
+        <link xlink:href="https://www.freedesktop.org/software/systemd/man/journald.conf.html">
+        journald.conf(5)</link>.
+
+        Note that the total amount of logs stored is limited by journald settings
+        such as <literal>SystemMaxUse</literal>, which defaults to a 4 GB cap.
+
+        It is thus recommended to compute what period of time that you will be
+        able to store logs for when an application logs at full burst rate.
+        With default settings for log lines that are 100 Bytes long, this can
+        amount to just a few hours.
+      '';
+    };
+
+    services.journald.extraConfig = mkOption {
+      default = "";
+      type = types.lines;
+      example = "Storage=volatile";
+      description = ''
+        Extra config options for systemd-journald. See man journald.conf
+        for available options.
+      '';
+    };
+
+    services.journald.enableHttpGateway = mkOption {
+      default = false;
+      type = types.bool;
+      description = ''
+        Whether to enable the HTTP gateway to the journal.
+      '';
+    };
+
+    services.journald.forwardToSyslog = mkOption {
+      default = config.services.rsyslogd.enable || config.services.syslog-ng.enable;
+      defaultText = literalExpression "services.rsyslogd.enable || services.syslog-ng.enable";
+      type = types.bool;
+      description = ''
+        Whether to forward log messages to syslog.
+      '';
+    };
+  };
+
+  config = {
+    systemd.additionalUpstreamSystemUnits = [
+      "systemd-journald.socket"
+      "systemd-journald@.socket"
+      "systemd-journald-varlink@.socket"
+      "systemd-journald.service"
+      "systemd-journald@.service"
+      "systemd-journal-flush.service"
+      "systemd-journal-catalog-update.service"
+      ] ++ (optional (!config.boot.isContainer) "systemd-journald-audit.socket") ++ [
+      "systemd-journald-dev-log.socket"
+      "syslog.socket"
+      ] ++ optionals cfg.enableHttpGateway [
+      "systemd-journal-gatewayd.socket"
+      "systemd-journal-gatewayd.service"
+      ];
+
+    environment.etc = {
+      "systemd/journald.conf".text = ''
+        [Journal]
+        Storage=persistent
+        RateLimitInterval=${cfg.rateLimitInterval}
+        RateLimitBurst=${toString cfg.rateLimitBurst}
+        ${optionalString (cfg.console != "") ''
+          ForwardToConsole=yes
+          TTYPath=${cfg.console}
+        ''}
+        ${optionalString (cfg.forwardToSyslog) ''
+          ForwardToSyslog=yes
+        ''}
+        ${cfg.extraConfig}
+      '';
+    };
+
+    users.groups.systemd-journal.gid = config.ids.gids.systemd-journal;
+    users.users.systemd-journal-gateway.uid = config.ids.uids.systemd-journal-gateway;
+    users.users.systemd-journal-gateway.group = "systemd-journal-gateway";
+    users.groups.systemd-journal-gateway.gid = config.ids.gids.systemd-journal-gateway;
+
+    systemd.sockets.systemd-journal-gatewayd.wantedBy =
+      optional cfg.enableHttpGateway "sockets.target";
+
+    systemd.services.systemd-journal-flush.restartIfChanged = false;
+    systemd.services.systemd-journald.restartTriggers = [ config.environment.etc."systemd/journald.conf".source ];
+    systemd.services.systemd-journald.stopIfChanged = false;
+    systemd.services."systemd-journald@".restartTriggers = [ config.environment.etc."systemd/journald.conf".source ];
+    systemd.services."systemd-journald@".stopIfChanged = false;
+  };
+}
diff --git a/nixpkgs/nixos/modules/system/boot/systemd/logind.nix b/nixpkgs/nixos/modules/system/boot/systemd/logind.nix
new file mode 100644
index 000000000000..c1e6cfe61d04
--- /dev/null
+++ b/nixpkgs/nixos/modules/system/boot/systemd/logind.nix
@@ -0,0 +1,114 @@
+{ config, lib, pkgs, utils, ... }:
+
+with lib;
+
+let
+  cfg = config.services.logind;
+
+  logindHandlerType = types.enum [
+    "ignore" "poweroff" "reboot" "halt" "kexec" "suspend"
+    "hibernate" "hybrid-sleep" "suspend-then-hibernate" "lock"
+  ];
+in
+{
+  options = {
+    services.logind.extraConfig = mkOption {
+      default = "";
+      type = types.lines;
+      example = "IdleAction=lock";
+      description = ''
+        Extra config options for systemd-logind. See
+        <link xlink:href="https://www.freedesktop.org/software/systemd/man/logind.conf.html">
+        logind.conf(5)</link> for available options.
+      '';
+    };
+
+    services.logind.killUserProcesses = mkOption {
+      default = false;
+      type = types.bool;
+      description = ''
+        Specifies whether the processes of a user should be killed
+        when the user logs out.  If true, the scope unit corresponding
+        to the session and all processes inside that scope will be
+        terminated.  If false, the scope is "abandoned" (see
+        <link xlink:href="https://www.freedesktop.org/software/systemd/man/systemd.scope.html#">
+        systemd.scope(5)</link>), and processes are not killed.
+        </para>
+
+        <para>
+        See <link xlink:href="https://www.freedesktop.org/software/systemd/man/logind.conf.html#KillUserProcesses=">logind.conf(5)</link>
+        for more details.
+      '';
+    };
+
+    services.logind.lidSwitch = mkOption {
+      default = "suspend";
+      example = "ignore";
+      type = logindHandlerType;
+
+      description = ''
+        Specifies what to be done when the laptop lid is closed.
+      '';
+    };
+
+    services.logind.lidSwitchDocked = mkOption {
+      default = "ignore";
+      example = "suspend";
+      type = logindHandlerType;
+
+      description = ''
+        Specifies what to be done when the laptop lid is closed
+        and another screen is added.
+      '';
+    };
+
+    services.logind.lidSwitchExternalPower = mkOption {
+      default = cfg.lidSwitch;
+      defaultText = literalExpression "services.logind.lidSwitch";
+      example = "ignore";
+      type = logindHandlerType;
+
+      description = ''
+        Specifies what to do when the laptop lid is closed and the system is
+        on external power. By default use the same action as specified in
+        services.logind.lidSwitch.
+      '';
+    };
+  };
+
+  config = {
+    systemd.additionalUpstreamSystemUnits = [
+      "systemd-logind.service"
+      "autovt@.service"
+      "systemd-user-sessions.service"
+      "dbus-org.freedesktop.import1.service"
+      "dbus-org.freedesktop.machine1.service"
+      "dbus-org.freedesktop.login1.service"
+      "user@.service"
+      "user-runtime-dir@.service"
+    ];
+
+    environment.etc = {
+      "systemd/logind.conf".text = ''
+        [Login]
+        KillUserProcesses=${if cfg.killUserProcesses then "yes" else "no"}
+        HandleLidSwitch=${cfg.lidSwitch}
+        HandleLidSwitchDocked=${cfg.lidSwitchDocked}
+        HandleLidSwitchExternalPower=${cfg.lidSwitchExternalPower}
+        ${cfg.extraConfig}
+      '';
+    };
+
+    # Restarting systemd-logind breaks X11
+    # - upstream commit: https://cgit.freedesktop.org/xorg/xserver/commit/?id=dc48bd653c7e101
+    # - systemd announcement: https://github.com/systemd/systemd/blob/22043e4317ecd2bc7834b48a6d364de76bb26d91/NEWS#L103-L112
+    # - this might be addressed in the future by xorg
+    #systemd.services.systemd-logind.restartTriggers = [ config.environment.etc."systemd/logind.conf".source ];
+    systemd.services.systemd-logind.restartIfChanged = false;
+    systemd.services.systemd-logind.stopIfChanged = false;
+
+    # The user-runtime-dir@ service is managed by systemd-logind we should not touch it or else we break the users' sessions.
+    systemd.services."user-runtime-dir@".stopIfChanged = false;
+    systemd.services."user-runtime-dir@".restartIfChanged = false;
+  };
+}
diff --git a/nixpkgs/nixos/modules/system/boot/systemd-nspawn.nix b/nixpkgs/nixos/modules/system/boot/systemd/nspawn.nix
index 0c6822319a5b..0c6822319a5b 100644
--- a/nixpkgs/nixos/modules/system/boot/systemd-nspawn.nix
+++ b/nixpkgs/nixos/modules/system/boot/systemd/nspawn.nix
diff --git a/nixpkgs/nixos/modules/system/boot/systemd/tmpfiles.nix b/nixpkgs/nixos/modules/system/boot/systemd/tmpfiles.nix
new file mode 100644
index 000000000000..f626d66dcffe
--- /dev/null
+++ b/nixpkgs/nixos/modules/system/boot/systemd/tmpfiles.nix
@@ -0,0 +1,106 @@
+{ config, lib, pkgs, utils, ... }:
+
+with lib;
+
+let
+  cfg = config.systemd.tmpfiles;
+  systemd = config.systemd.package;
+in
+{
+  options = {
+    systemd.tmpfiles.rules = mkOption {
+      type = types.listOf types.str;
+      default = [];
+      example = [ "d /tmp 1777 root root 10d" ];
+      description = ''
+        Rules for creation, deletion and cleaning of volatile and temporary files
+        automatically. See
+        <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+        for the exact format.
+      '';
+    };
+
+    systemd.tmpfiles.packages = mkOption {
+      type = types.listOf types.package;
+      default = [];
+      example = literalExpression "[ pkgs.lvm2 ]";
+      apply = map getLib;
+      description = ''
+        List of packages containing <command>systemd-tmpfiles</command> rules.
+
+        All files ending in .conf found in
+        <filename><replaceable>pkg</replaceable>/lib/tmpfiles.d</filename>
+        will be included.
+        If this folder does not exist or does not contain any files an error will be returned instead.
+
+        If a <filename>lib</filename> output is available, rules are searched there and only there.
+        If there is no <filename>lib</filename> output it will fall back to <filename>out</filename>
+        and if that does not exist either, the default output will be used.
+      '';
+    };
+  };
+
+  config = {
+    systemd.additionalUpstreamSystemUnits = [
+      "systemd-tmpfiles-clean.service"
+      "systemd-tmpfiles-clean.timer"
+      "systemd-tmpfiles-setup.service"
+      "systemd-tmpfiles-setup-dev.service"
+    ];
+
+    systemd.additionalUpstreamUserUnits = [
+      "systemd-tmpfiles-clean.service"
+      "systemd-tmpfiles-clean.timer"
+      "systemd-tmpfiles-setup.service"
+    ];
+
+    environment.etc = {
+      "tmpfiles.d".source = (pkgs.symlinkJoin {
+        name = "tmpfiles.d";
+        paths = map (p: p + "/lib/tmpfiles.d") cfg.packages;
+        postBuild = ''
+          for i in $(cat $pathsPath); do
+            (test -d "$i" && test $(ls "$i"/*.conf | wc -l) -ge 1) || (
+              echo "ERROR: The path '$i' from systemd.tmpfiles.packages contains no *.conf files."
+              exit 1
+            )
+          done
+        '' + concatMapStrings (name: optionalString (hasPrefix "tmpfiles.d/" name) ''
+          rm -f $out/${removePrefix "tmpfiles.d/" name}
+        '') config.system.build.etc.passthru.targets;
+      }) + "/*";
+    };
+
+    systemd.tmpfiles.packages = [
+      # Default tmpfiles rules provided by systemd
+      (pkgs.runCommand "systemd-default-tmpfiles" {} ''
+        mkdir -p $out/lib/tmpfiles.d
+        cd $out/lib/tmpfiles.d
+
+        # home.conf creates /srv (which we don't want), and /home, which
+        # is handled by NixOS anyway.
+        # ln -s "${systemd}/example/tmpfiles.d/home.conf"
+        ln -s "${systemd}/example/tmpfiles.d/journal-nocow.conf"
+        ln -s "${systemd}/example/tmpfiles.d/static-nodes-permissions.conf"
+        ln -s "${systemd}/example/tmpfiles.d/systemd.conf"
+        ln -s "${systemd}/example/tmpfiles.d/systemd-nologin.conf"
+        ln -s "${systemd}/example/tmpfiles.d/systemd-nspawn.conf"
+        ln -s "${systemd}/example/tmpfiles.d/systemd-tmp.conf"
+        ln -s "${systemd}/example/tmpfiles.d/tmp.conf"
+        ln -s "${systemd}/example/tmpfiles.d/var.conf"
+        ln -s "${systemd}/example/tmpfiles.d/x11.conf"
+      '')
+      # User-specified tmpfiles rules
+      (pkgs.writeTextFile {
+        name = "nixos-tmpfiles.d";
+        destination = "/lib/tmpfiles.d/00-nixos.conf";
+        text = ''
+          # This file is created automatically and should not be modified.
+          # Please change the option ‘systemd.tmpfiles.rules’ instead.
+
+          ${concatStringsSep "\n" cfg.rules}
+        '';
+      })
+    ];
+  };
+}
diff --git a/nixpkgs/nixos/modules/system/boot/systemd/user.nix b/nixpkgs/nixos/modules/system/boot/systemd/user.nix
new file mode 100644
index 000000000000..e30f83f3457f
--- /dev/null
+++ b/nixpkgs/nixos/modules/system/boot/systemd/user.nix
@@ -0,0 +1,158 @@
+{ config, lib, pkgs, utils, ... }:
+with utils;
+with systemdUtils.unitOptions;
+with lib;
+
+let
+  cfg = config.systemd.user;
+
+  systemd = config.systemd.package;
+
+  inherit
+    (systemdUtils.lib)
+    makeUnit
+    generateUnits
+    makeJobScript
+    unitConfig
+    serviceConfig
+    commonUnitText
+    targetToUnit
+    serviceToUnit
+    socketToUnit
+    timerToUnit
+    pathToUnit;
+
+  upstreamUserUnits = [
+    "app.slice"
+    "background.slice"
+    "basic.target"
+    "bluetooth.target"
+    "default.target"
+    "exit.target"
+    "graphical-session-pre.target"
+    "graphical-session.target"
+    "paths.target"
+    "printer.target"
+    "session.slice"
+    "shutdown.target"
+    "smartcard.target"
+    "sockets.target"
+    "sound.target"
+    "systemd-exit.service"
+    "timers.target"
+    "xdg-desktop-autostart.target"
+  ] ++ config.systemd.additionalUpstreamUserUnits;
+in {
+  options = {
+    systemd.user.extraConfig = mkOption {
+      default = "";
+      type = types.lines;
+      example = "DefaultCPUAccounting=yes";
+      description = ''
+        Extra config options for systemd user instances. See man systemd-user.conf for
+        available options.
+      '';
+    };
+
+    systemd.user.units = mkOption {
+      description = "Definition of systemd per-user units.";
+      default = {};
+      type = with types; attrsOf (submodule (
+        { name, config, ... }:
+        { options = concreteUnitOptions;
+          config = {
+            unit = mkDefault (makeUnit name config);
+          };
+        }));
+    };
+
+    systemd.user.paths = mkOption {
+      default = {};
+      type = with types; attrsOf (submodule [ { options = pathOptions; } unitConfig ]);
+      description = "Definition of systemd per-user path units.";
+    };
+
+    systemd.user.services = mkOption {
+      default = {};
+      type = with types; attrsOf (submodule [ { options = serviceOptions; } unitConfig serviceConfig ] );
+      description = "Definition of systemd per-user service units.";
+    };
+
+    systemd.user.slices = mkOption {
+      default = {};
+      type = with types; attrsOf (submodule [ { options = sliceOptions; } unitConfig ] );
+      description = "Definition of systemd per-user slice units.";
+    };
+
+    systemd.user.sockets = mkOption {
+      default = {};
+      type = with types; attrsOf (submodule [ { options = socketOptions; } unitConfig ] );
+      description = "Definition of systemd per-user socket units.";
+    };
+
+    systemd.user.targets = mkOption {
+      default = {};
+      type = with types; attrsOf (submodule [ { options = targetOptions; } unitConfig] );
+      description = "Definition of systemd per-user target units.";
+    };
+
+    systemd.user.timers = mkOption {
+      default = {};
+      type = with types; attrsOf (submodule [ { options = timerOptions; } unitConfig ] );
+      description = "Definition of systemd per-user timer units.";
+    };
+
+    systemd.additionalUpstreamUserUnits = mkOption {
+      default = [];
+      type = types.listOf types.str;
+      example = [];
+      description = ''
+        Additional units shipped with systemd that should be enabled for per-user systemd instances.
+      '';
+      internal = true;
+    };
+  };
+
+  config = {
+    systemd.additionalUpstreamSystemUnits = [
+      "user.slice"
+    ];
+
+    environment.etc = {
+      "systemd/user".source = generateUnits "user" cfg.units upstreamUserUnits [];
+
+      "systemd/user.conf".text = ''
+        [Manager]
+        ${cfg.extraConfig}
+      '';
+    };
+
+    systemd.user.units =
+         mapAttrs' (n: v: nameValuePair "${n}.path"    (pathToUnit    n v)) cfg.paths
+      // mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services
+      // mapAttrs' (n: v: nameValuePair "${n}.slice"   (sliceToUnit   n v)) cfg.slices
+      // mapAttrs' (n: v: nameValuePair "${n}.socket"  (socketToUnit  n v)) cfg.sockets
+      // mapAttrs' (n: v: nameValuePair "${n}.target"  (targetToUnit  n v)) cfg.targets
+      // mapAttrs' (n: v: nameValuePair "${n}.timer"   (timerToUnit   n v)) cfg.timers;
+
+    # Generate timer units for all services that have a ‘startAt’ value.
+    systemd.user.timers =
+      mapAttrs (name: service: {
+        wantedBy = ["timers.target"];
+        timerConfig.OnCalendar = service.startAt;
+      })
+      (filterAttrs (name: service: service.startAt != []) cfg.services);
+
+    # Provide the systemd-user PAM service, required to run systemd
+    # user instances.
+    security.pam.services.systemd-user =
+      { # Ensure that pam_systemd gets included. This is special-cased
+        # in systemd to provide XDG_RUNTIME_DIR.
+        startSession = true;
+      };
+
+    # Some overrides to upstream units.
+    systemd.services."user@".restartIfChanged = false;
+    systemd.services.systemd-user-sessions.restartIfChanged = false; # Restart kills all active sessions.
+  };
+}
diff --git a/nixpkgs/nixos/modules/tasks/auto-upgrade.nix b/nixpkgs/nixos/modules/tasks/auto-upgrade.nix
index b931b27ad817..1404dcbaf7c0 100644
--- a/nixpkgs/nixos/modules/tasks/auto-upgrade.nix
+++ b/nixpkgs/nixos/modules/tasks/auto-upgrade.nix
@@ -80,6 +80,7 @@ in {
           Reboot the system into the new generation instead of a switch
           if the new generation uses a different kernel, kernel modules
           or initrd than the booted system.
+          See <option>rebootWindow</option> for configuring the times at which a reboot is allowed.
         '';
       };
 
@@ -96,6 +97,32 @@ in {
         '';
       };
 
+      rebootWindow = mkOption {
+        description = ''
+          Define a lower and upper time value (in HH:MM format) which
+          constitute a time window during which reboots are allowed after an upgrade.
+          This option only has an effect when <option>allowReboot</option> is enabled.
+          The default value of <literal>null</literal> means that reboots are allowed at any time.
+        '';
+        default = null;
+        example = { lower = "01:00"; upper = "05:00"; };
+        type = with types; nullOr (submodule {
+          options = {
+            lower = mkOption {
+              description = "Lower limit of the reboot window";
+              type = types.strMatching "[[:digit:]]{2}:[[:digit:]]{2}";
+              example = "01:00";
+            };
+
+            upper = mkOption {
+              description = "Upper limit of the reboot window";
+              type = types.strMatching "[[:digit:]]{2}:[[:digit:]]{2}";
+              example = "05:00";
+            };
+          };
+        });
+      };
+
     };
 
   };
@@ -110,12 +137,10 @@ in {
     }];
 
     system.autoUpgrade.flags = (if cfg.flake == null then
-        [ "--no-build-output" ] ++ (if cfg.channel == null then
-          [ "--upgrade" ]
-        else [
+        [ "--no-build-output" ] ++ optionals (cfg.channel != null) [
           "-I"
           "nixpkgs=${cfg.channel}/nixexprs.tar.xz"
-        ])
+        ]
       else
         [ "--flake ${cfg.flake}" ]);
 
@@ -143,19 +168,52 @@ in {
       ];
 
       script = let
-        nixos-rebuild =
-          "${config.system.build.nixos-rebuild}/bin/nixos-rebuild";
+        nixos-rebuild = "${config.system.build.nixos-rebuild}/bin/nixos-rebuild";
+        date     = "${pkgs.coreutils}/bin/date";
+        readlink = "${pkgs.coreutils}/bin/readlink";
+        shutdown = "${pkgs.systemd}/bin/shutdown";
+        upgradeFlag = optional (cfg.channel == null) "--upgrade";
       in if cfg.allowReboot then ''
-        ${nixos-rebuild} boot ${toString cfg.flags}
-        booted="$(readlink /run/booted-system/{initrd,kernel,kernel-modules})"
-        built="$(readlink /nix/var/nix/profiles/system/{initrd,kernel,kernel-modules})"
-        if [ "$booted" = "$built" ]; then
+        ${nixos-rebuild} boot ${toString (cfg.flags ++ upgradeFlag)}
+        booted="$(${readlink} /run/booted-system/{initrd,kernel,kernel-modules})"
+        built="$(${readlink} /nix/var/nix/profiles/system/{initrd,kernel,kernel-modules})"
+
+        ${optionalString (cfg.rebootWindow != null) ''
+          current_time="$(${date} +%H:%M)"
+
+          lower="${cfg.rebootWindow.lower}"
+          upper="${cfg.rebootWindow.upper}"
+
+          if [[ "''${lower}" < "''${upper}" ]]; then
+            if [[ "''${current_time}" > "''${lower}" ]] && \
+               [[ "''${current_time}" < "''${upper}" ]]; then
+              do_reboot="true"
+            else
+              do_reboot="false"
+            fi
+          else
+            # lower > upper, so we are crossing midnight (e.g. lower=23h, upper=6h)
+            # we want to reboot if cur > 23h or cur < 6h
+            if [[ "''${current_time}" < "''${upper}" ]] || \
+               [[ "''${current_time}" > "''${lower}" ]]; then
+              do_reboot="true"
+            else
+              do_reboot="false"
+            fi
+          fi
+        ''}
+
+        if [ "''${booted}" = "''${built}" ]; then
           ${nixos-rebuild} switch ${toString cfg.flags}
+        ${optionalString (cfg.rebootWindow != null) ''
+          elif [ "''${do_reboot}" != true ]; then
+            echo "Outside of configured reboot window, skipping."
+        ''}
         else
-          /run/current-system/sw/bin/shutdown -r +1
+          ${shutdown} -r +1
         fi
       '' else ''
-        ${nixos-rebuild} switch ${toString cfg.flags}
+        ${nixos-rebuild} switch ${toString (cfg.flags ++ upgradeFlag)}
       '';
 
       startAt = cfg.dates;
@@ -167,3 +225,4 @@ in {
   };
 
 }
+
diff --git a/nixpkgs/nixos/modules/tasks/filesystems.nix b/nixpkgs/nixos/modules/tasks/filesystems.nix
index f3da6771197e..d68edd8d7d39 100644
--- a/nixpkgs/nixos/modules/tasks/filesystems.nix
+++ b/nixpkgs/nixos/modules/tasks/filesystems.nix
@@ -215,6 +215,35 @@ in
       '';
     };
 
+    boot.devSize = mkOption {
+      default = "5%";
+      example = "32m";
+      type = types.str;
+      description = ''
+        Size limit for the /dev tmpfs. Look at mount(8), tmpfs size option,
+        for the accepted syntax.
+      '';
+    };
+
+    boot.devShmSize = mkOption {
+      default = "50%";
+      example = "256m";
+      type = types.str;
+      description = ''
+        Size limit for the /dev/shm tmpfs. Look at mount(8), tmpfs size option,
+        for the accepted syntax.
+      '';
+    };
+
+    boot.runSize = mkOption {
+      default = "25%";
+      example = "256m";
+      type = types.str;
+      description = ''
+        Size limit for the /run tmpfs. Look at mount(8), tmpfs size option,
+        for the accepted syntax.
+      '';
+    };
   };
 
 
diff --git a/nixpkgs/nixos/modules/tasks/network-interfaces-scripted.nix b/nixpkgs/nixos/modules/tasks/network-interfaces-scripted.nix
index 19f2be2c4a25..b0f160c1dbf9 100644
--- a/nixpkgs/nixos/modules/tasks/network-interfaces-scripted.nix
+++ b/nixpkgs/nixos/modules/tasks/network-interfaces-scripted.nix
@@ -535,6 +535,7 @@ let
         createGreDevice = n: v: nameValuePair "${n}-netdev"
           (let
             deps = deviceDependency v.dev;
+            ttlarg = if lib.hasPrefix "ip6" v.type then "hoplimit" else "ttl";
           in
           { description = "GRE Tunnel Interface ${n}";
             wantedBy = [ "network-setup.service" (subsystemDevice n) ];
@@ -551,6 +552,7 @@ let
               ip link add name "${n}" type ${v.type} \
                 ${optionalString (v.remote != null) "remote \"${v.remote}\""} \
                 ${optionalString (v.local != null) "local \"${v.local}\""} \
+                ${optionalString (v.ttl != null) "${ttlarg} ${toString v.ttl}"} \
                 ${optionalString (v.dev != null) "dev \"${v.dev}\""}
               ip link set "${n}" up
             '';
diff --git a/nixpkgs/nixos/modules/tasks/network-interfaces-systemd.nix b/nixpkgs/nixos/modules/tasks/network-interfaces-systemd.nix
index 8a5e1b5af114..8654539b6629 100644
--- a/nixpkgs/nixos/modules/tasks/network-interfaces-systemd.nix
+++ b/nixpkgs/nixos/modules/tasks/network-interfaces-systemd.nix
@@ -318,6 +318,8 @@ in
               Remote = gre.remote;
             }) // (optionalAttrs (gre.local != null) {
               Local = gre.local;
+            }) // (optionalAttrs (gre.ttl != null) {
+              TTL = gre.ttl;
             });
         };
         networks = mkIf (gre.dev != null) {
diff --git a/nixpkgs/nixos/modules/tasks/network-interfaces.nix b/nixpkgs/nixos/modules/tasks/network-interfaces.nix
index 06117ab451d3..8ca4ad7b7d86 100644
--- a/nixpkgs/nixos/modules/tasks/network-interfaces.nix
+++ b/nixpkgs/nixos/modules/tasks/network-interfaces.nix
@@ -1020,6 +1020,14 @@ in
             local = "10.0.0.22";
             dev = "enp4s0f0";
             type = "tap";
+            ttl = 255;
+          };
+          gre6Tunnel = {
+            remote = "fd7a:5634::1";
+            local = "fd7a:5634::2";
+            dev = "enp4s0f0";
+            type = "tun6";
+            ttl = 255;
           };
         }
       '';
@@ -1057,11 +1065,25 @@ in
             '';
           };
 
+          ttl = mkOption {
+            type = types.nullOr types.int;
+            default = null;
+            example = 255;
+            description = ''
+              The time-to-live/hoplimit of the connection to the remote tunnel endpoint.
+            '';
+          };
+
           type = mkOption {
-            type = with types; enum [ "tun" "tap" ];
+            type = with types; enum [ "tun" "tap" "tun6" "tap6" ];
             default = "tap";
             example = "tap";
-            apply = v: if v == "tun" then "gre" else "gretap";
+            apply = v: {
+              tun = "gre";
+              tap = "gretap";
+              tun6 = "ip6gre";
+              tap6 = "ip6gretap";
+            }.${v};
             description = ''
               Whether the tunnel routes layer 2 (tap) or layer 3 (tun) traffic.
             '';
@@ -1429,7 +1451,7 @@ in
           sysctl-value = tempaddrValues.${cfg.tempAddresses}.sysctl;
         in ''
           # enable and prefer IPv6 privacy addresses by default
-          ACTION=="add", SUBSYSTEM=="net", RUN+="${pkgs.bash}/bin/sh -c 'echo ${sysctl-value} > /proc/sys/net/ipv6/conf/%k/use_tempaddr'"
+          ACTION=="add", SUBSYSTEM=="net", RUN+="${pkgs.bash}/bin/sh -c 'echo ${sysctl-value} > /proc/sys/net/ipv6/conf/$name/use_tempaddr'"
         '';
       })
       (pkgs.writeTextFile rec {
diff --git a/nixpkgs/nixos/modules/virtualisation/qemu-vm.nix b/nixpkgs/nixos/modules/virtualisation/qemu-vm.nix
index 514389358947..dacbb64a2dac 100644
--- a/nixpkgs/nixos/modules/virtualisation/qemu-vm.nix
+++ b/nixpkgs/nixos/modules/virtualisation/qemu-vm.nix
@@ -796,7 +796,7 @@ in
     # allow `system.build.toplevel' to be included.  (If we had a direct
     # reference to ${regInfo} here, then we would get a cyclic
     # dependency.)
-    boot.postBootCommands =
+    boot.postBootCommands = lib.mkIf config.nix.enable
       ''
         if [[ "$(cat /proc/cmdline)" =~ regInfo=([^ ]*) ]]; then
           ${config.nix.package.out}/bin/nix-store --load-db < ''${BASH_REMATCH[1]}
diff --git a/nixpkgs/nixos/modules/virtualisation/waydroid.nix b/nixpkgs/nixos/modules/virtualisation/waydroid.nix
index 4fc798ff39f8..2c0b658948dd 100644
--- a/nixpkgs/nixos/modules/virtualisation/waydroid.nix
+++ b/nixpkgs/nixos/modules/virtualisation/waydroid.nix
@@ -56,8 +56,6 @@ in
 
       wantedBy = [ "multi-user.target" ];
 
-      path = with pkgs; [ getent iptables iproute kmod nftables util-linux which ];
-
       unitConfig = {
         ConditionPathExists = "/var/lib/waydroid/lxc/waydroid";
       };
@@ -68,6 +66,10 @@ in
         ExecStopPost = "${pkgs.waydroid}/bin/waydroid session stop";
       };
     };
+
+    systemd.tmpfiles.rules = [
+      "d /var/lib/misc 0755 root root -" # for dnsmasq.leases
+    ];
   };
 
 }
diff --git a/nixpkgs/nixos/tests/all-tests.nix b/nixpkgs/nixos/tests/all-tests.nix
index 98ca2e081086..ab6906cd24e2 100644
--- a/nixpkgs/nixos/tests/all-tests.nix
+++ b/nixpkgs/nixos/tests/all-tests.nix
@@ -132,6 +132,7 @@ in
   domination = handleTest ./domination.nix {};
   dovecot = handleTest ./dovecot.nix {};
   drbd = handleTest ./drbd.nix {};
+  earlyoom = handleTestOn ["x86_64-linux"] ./earlyoom.nix {};
   ec2-config = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-config or {};
   ec2-nixops = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-nixops or {};
   ecryptfs = handleTest ./ecryptfs.nix {};
@@ -189,9 +190,9 @@ in
   grocy = handleTest ./grocy.nix {};
   grub = handleTest ./grub.nix {};
   gvisor = handleTest ./gvisor.nix {};
-  hadoop.all = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./hadoop/hadoop.nix {};
-  hadoop.hdfs = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./hadoop/hdfs.nix {};
-  hadoop.yarn = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./hadoop/yarn.nix {};
+  hadoop = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop; };
+  hadoop_3_2 = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop_3_2; };
+  hadoop2 = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop2; };
   haka = handleTest ./haka.nix {};
   haproxy = handleTest ./haproxy.nix {};
   hardened = handleTest ./hardened.nix {};
@@ -286,6 +287,7 @@ in
   mailhog = handleTest ./mailhog.nix {};
   man = handleTest ./man.nix {};
   mariadb-galera = handleTest ./mysql/mariadb-galera.nix {};
+  mastodon = handleTestOn ["x86_64-linux" "i686-linux" "aarch64-linux"] ./web-apps/mastodon.nix {};
   matomo = handleTest ./matomo.nix {};
   matrix-appservice-irc = handleTest ./matrix-appservice-irc.nix {};
   matrix-conduit = handleTest ./matrix-conduit.nix {};
@@ -307,6 +309,7 @@ in
   molly-brown = handleTest ./molly-brown.nix {};
   mongodb = handleTest ./mongodb.nix {};
   moodle = handleTest ./moodle.nix {};
+  moonraker = handleTest ./moonraker.nix {};
   morty = handleTest ./morty.nix {};
   mosquitto = handleTest ./mosquitto.nix {};
   moosefs = handleTest ./moosefs.nix {};
@@ -355,6 +358,7 @@ in
   nginx-sso = handleTest ./nginx-sso.nix {};
   nginx-variants = handleTest ./nginx-variants.nix {};
   nitter = handleTest ./nitter.nix {};
+  nix-ld = handleTest ./nix-ld {};
   nix-serve = handleTest ./nix-serve.nix {};
   nix-serve-ssh = handleTest ./nix-serve-ssh.nix {};
   nixops = handleTest ./nixops/default.nix {};
@@ -384,6 +388,7 @@ in
   os-prober = handleTestOn ["x86_64-linux"] ./os-prober.nix {};
   osrm-backend = handleTest ./osrm-backend.nix {};
   overlayfs = handleTest ./overlayfs.nix {};
+  pacemaker = handleTest ./pacemaker.nix {};
   packagekit = handleTest ./packagekit.nix {};
   pam-file-contents = handleTest ./pam/pam-file-contents.nix {};
   pam-oath-login = handleTest ./pam/pam-oath-login.nix {};
@@ -467,6 +472,7 @@ in
   seafile = handleTest ./seafile.nix {};
   searx = handleTest ./searx.nix {};
   service-runner = handleTest ./service-runner.nix {};
+  sfxr-qt = handleTest ./sfxr-qt.nix {};
   shadow = handleTest ./shadow.nix {};
   shadowsocks = handleTest ./shadowsocks {};
   shattered-pixel-dungeon = handleTest ./shattered-pixel-dungeon.nix {};
@@ -484,7 +490,7 @@ in
   sonarr = handleTest ./sonarr.nix {};
   sourcehut = handleTest ./sourcehut.nix {};
   spacecookie = handleTest ./spacecookie.nix {};
-  spark = handleTestOn ["x86_64-linux"] ./spark {};
+  spark = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./spark {};
   sslh = handleTest ./sslh.nix {};
   sssd = handleTestOn ["x86_64-linux"] ./sssd.nix {};
   sssd-ldap = handleTestOn ["x86_64-linux"] ./sssd-ldap.nix {};
@@ -514,12 +520,13 @@ in
   systemd-networkd-vrf = handleTest ./systemd-networkd-vrf.nix {};
   systemd-nspawn = handleTest ./systemd-nspawn.nix {};
   systemd-timesyncd = handleTest ./systemd-timesyncd.nix {};
-  systemd-unit-path = handleTest ./systemd-unit-path.nix {};
+  systemd-misc = handleTest ./systemd-misc.nix {};
   taskserver = handleTest ./taskserver.nix {};
   teeworlds = handleTest ./teeworlds.nix {};
   telegraf = handleTest ./telegraf.nix {};
   teleport = handleTest ./teleport.nix {};
   thelounge = handleTest ./thelounge.nix {};
+  terminal-emulators = handleTest ./terminal-emulators.nix {};
   tiddlywiki = handleTest ./tiddlywiki.nix {};
   tigervnc = handleTest ./tigervnc.nix {};
   timezone = handleTest ./timezone.nix {};
diff --git a/nixpkgs/nixos/tests/avahi.nix b/nixpkgs/nixos/tests/avahi.nix
index ebb46838325f..c53a95903291 100644
--- a/nixpkgs/nixos/tests/avahi.nix
+++ b/nixpkgs/nixos/tests/avahi.nix
@@ -59,7 +59,7 @@ import ./make-test-python.nix {
     two.succeed("test `wc -l < out` -gt 0")
 
     # More DNS-SD.
-    one.execute('avahi-publish -s "This is a test" _test._tcp 123 one=1 &')
+    one.execute('avahi-publish -s "This is a test" _test._tcp 123 one=1 >&2 &')
     one.sleep(5)
     two.succeed("avahi-browse -r -t _test._tcp | tee out >&2")
     two.succeed("test `wc -l < out` -gt 0")
diff --git a/nixpkgs/nixos/tests/boot.nix b/nixpkgs/nixos/tests/boot.nix
index cf5565667131..ec2a9f6527c9 100644
--- a/nixpkgs/nixos/tests/boot.nix
+++ b/nixpkgs/nixos/tests/boot.nix
@@ -38,7 +38,6 @@ let
       } // extraConfig);
     in
       makeTest {
-        inherit iso;
         name = "boot-" + name;
         nodes = { };
         testScript =
diff --git a/nixpkgs/nixos/tests/caddy.nix b/nixpkgs/nixos/tests/caddy.nix
index 0902904b2086..16436ab52800 100644
--- a/nixpkgs/nixos/tests/caddy.nix
+++ b/nixpkgs/nixos/tests/caddy.nix
@@ -7,7 +7,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
   nodes = {
     webserver = { pkgs, lib, ... }: {
       services.caddy.enable = true;
-      services.caddy.config = ''
+      services.caddy.extraConfig = ''
         http://localhost {
           encode gzip
 
@@ -22,7 +22,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
       '';
 
       specialisation.etag.configuration = {
-        services.caddy.config = lib.mkForce ''
+        services.caddy.extraConfig = lib.mkForce ''
           http://localhost {
             encode gzip
 
@@ -38,7 +38,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
       };
 
       specialisation.config-reload.configuration = {
-        services.caddy.config = ''
+        services.caddy.extraConfig = ''
           http://localhost:8080 {
           }
         '';
diff --git a/nixpkgs/nixos/tests/ceph-multi-node.nix b/nixpkgs/nixos/tests/ceph-multi-node.nix
index 29e7c279d69a..556546beee76 100644
--- a/nixpkgs/nixos/tests/ceph-multi-node.nix
+++ b/nixpkgs/nixos/tests/ceph-multi-node.nix
@@ -48,7 +48,7 @@ let
       sudo
       ceph
       xfsprogs
-      netcat-openbsd
+      libressl.nc
     ];
 
     boot.kernelModules = [ "xfs" ];
diff --git a/nixpkgs/nixos/tests/chromium.nix b/nixpkgs/nixos/tests/chromium.nix
index 8965646bc5dc..3815dca76220 100644
--- a/nixpkgs/nixos/tests/chromium.nix
+++ b/nixpkgs/nixos/tests/chromium.nix
@@ -15,26 +15,9 @@
 with import ../lib/testing-python.nix { inherit system pkgs; };
 with pkgs.lib;
 
-mapAttrs (channel: chromiumPkg: makeTest rec {
-  name = "chromium-${channel}";
-  meta = {
-    maintainers = with maintainers; [ aszlig primeos ];
-    # https://github.com/NixOS/hydra/issues/591#issuecomment-435125621
-    inherit (chromiumPkg.meta) timeout;
-  };
-
-  enableOCR = true;
-
+let
   user = "alice";
 
-  machine.imports = [ ./common/user-account.nix ./common/x11.nix ];
-  machine.virtualisation.memorySize = 2047;
-  machine.test-support.displayManager.auto.user = user;
-  machine.environment = {
-    systemPackages = [ chromiumPkg ];
-    variables."XAUTHORITY" = "/home/alice/.Xauthority";
-  };
-
   startupHTML = pkgs.writeText "chromium-startup.html" ''
     <!DOCTYPE html>
     <html>
@@ -50,6 +33,25 @@ mapAttrs (channel: chromiumPkg: makeTest rec {
     </body>
     </html>
   '';
+in
+
+mapAttrs (channel: chromiumPkg: makeTest {
+  name = "chromium-${channel}";
+  meta = {
+    maintainers = with maintainers; [ aszlig primeos ];
+    # https://github.com/NixOS/hydra/issues/591#issuecomment-435125621
+    inherit (chromiumPkg.meta) timeout;
+  };
+
+  enableOCR = true;
+
+  machine.imports = [ ./common/user-account.nix ./common/x11.nix ];
+  machine.virtualisation.memorySize = 2047;
+  machine.test-support.displayManager.auto.user = user;
+  machine.environment = {
+    systemPackages = [ chromiumPkg ];
+    variables."XAUTHORITY" = "/home/alice/.Xauthority";
+  };
 
   testScript = let
     xdo = name: text: let
diff --git a/nixpkgs/nixos/tests/cri-o.nix b/nixpkgs/nixos/tests/cri-o.nix
index 91d46657f241..d3a8713d6a9b 100644
--- a/nixpkgs/nixos/tests/cri-o.nix
+++ b/nixpkgs/nixos/tests/cri-o.nix
@@ -1,7 +1,7 @@
 # This test runs CRI-O and verifies via critest
 import ./make-test-python.nix ({ pkgs, ... }: {
   name = "cri-o";
-  maintainers = with pkgs.lib.maintainers; teams.podman.members;
+  meta.maintainers = with pkgs.lib.maintainers; teams.podman.members;
 
   nodes = {
     crio = {
diff --git a/nixpkgs/nixos/tests/earlyoom.nix b/nixpkgs/nixos/tests/earlyoom.nix
new file mode 100644
index 000000000000..75bdf56899b3
--- /dev/null
+++ b/nixpkgs/nixos/tests/earlyoom.nix
@@ -0,0 +1,16 @@
+import ./make-test-python.nix ({ lib, ... }: {
+  name = "earlyoom";
+  meta = {
+    maintainers = with lib.maintainers; [ ncfavier ];
+  };
+
+  machine = {
+    services.earlyoom = {
+      enable = true;
+    };
+  };
+
+  testScript = ''
+    machine.wait_for_unit("earlyoom.service")
+  '';
+})
diff --git a/nixpkgs/nixos/tests/gitolite-fcgiwrap.nix b/nixpkgs/nixos/tests/gitolite-fcgiwrap.nix
index 38f8d5c883fd..abf1db37003a 100644
--- a/nixpkgs/nixos/tests/gitolite-fcgiwrap.nix
+++ b/nixpkgs/nixos/tests/gitolite-fcgiwrap.nix
@@ -20,7 +20,7 @@ import ./make-test-python.nix (
         nodes = {
 
           server =
-            { ... }:
+            { config, ... }:
               {
                 networking.firewall.allowedTCPPorts = [ 80 ];
 
diff --git a/nixpkgs/nixos/tests/gnome-xorg.nix b/nixpkgs/nixos/tests/gnome-xorg.nix
index 6264b87af4ec..d7be531e364e 100644
--- a/nixpkgs/nixos/tests/gnome-xorg.nix
+++ b/nixpkgs/nixos/tests/gnome-xorg.nix
@@ -24,6 +24,7 @@ import ./make-test-python.nix ({ pkgs, lib, ...} : {
       services.xserver.desktopManager.gnome.enable = true;
       services.xserver.desktopManager.gnome.debug = true;
       services.xserver.displayManager.defaultSession = "gnome-xorg";
+      programs.gnome-terminal.enable = true;
 
       systemd.user.services = {
         "org.gnome.Shell@x11" = {
diff --git a/nixpkgs/nixos/tests/gnome.nix b/nixpkgs/nixos/tests/gnome.nix
index 06f387ecad67..ca49183fe442 100644
--- a/nixpkgs/nixos/tests/gnome.nix
+++ b/nixpkgs/nixos/tests/gnome.nix
@@ -22,6 +22,7 @@ import ./make-test-python.nix ({ pkgs, lib, ...} : {
 
       services.xserver.desktopManager.gnome.enable = true;
       services.xserver.desktopManager.gnome.debug = true;
+      programs.gnome-terminal.enable = true;
 
       environment.systemPackages = [
         (pkgs.makeAutostartItem {
diff --git a/nixpkgs/nixos/tests/hadoop/default.nix b/nixpkgs/nixos/tests/hadoop/default.nix
new file mode 100644
index 000000000000..d2a97cbeffb8
--- /dev/null
+++ b/nixpkgs/nixos/tests/hadoop/default.nix
@@ -0,0 +1,7 @@
+{ handleTestOn, package, ... }:
+
+{
+  all = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./hadoop.nix { inherit package; };
+  hdfs = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./hdfs.nix { inherit package; };
+  yarn = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./yarn.nix { inherit package; };
+}
diff --git a/nixpkgs/nixos/tests/hadoop/hadoop.nix b/nixpkgs/nixos/tests/hadoop/hadoop.nix
index 48737debab54..b132f4fa58b0 100644
--- a/nixpkgs/nixos/tests/hadoop/hadoop.nix
+++ b/nixpkgs/nixos/tests/hadoop/hadoop.nix
@@ -1,121 +1,148 @@
 # This test is very comprehensive. It tests whether all hadoop services work well with each other.
 # Run this when updating the Hadoop package or making significant changes to the hadoop module.
 # For a more basic test, see hdfs.nix and yarn.nix
-import ../make-test-python.nix ({pkgs, ...}: {
-
-  nodes = let
-    package = pkgs.hadoop;
-    coreSite = {
-      "fs.defaultFS" = "hdfs://ns1";
-    };
-    hdfsSite = {
-      "dfs.namenode.rpc-bind-host" = "0.0.0.0";
-      "dfs.namenode.http-bind-host" = "0.0.0.0";
-      "dfs.namenode.servicerpc-bind-host" = "0.0.0.0";
-
-      # HA Quorum Journal Manager configuration
-      "dfs.nameservices" = "ns1";
-      "dfs.ha.namenodes.ns1" = "nn1,nn2";
-      "dfs.namenode.shared.edits.dir.ns1.nn1" = "qjournal://jn1:8485;jn2:8485;jn3:8485/ns1";
-      "dfs.namenode.shared.edits.dir.ns1.nn2" = "qjournal://jn1:8485;jn2:8485;jn3:8485/ns1";
-      "dfs.namenode.rpc-address.ns1.nn1" = "nn1:8020";
-      "dfs.namenode.rpc-address.ns1.nn2" = "nn2:8020";
-      "dfs.namenode.servicerpc-address.ns1.nn1" = "nn1:8022";
-      "dfs.namenode.servicerpc-address.ns1.nn2" = "nn2:8022";
-      "dfs.namenode.http-address.ns1.nn1" = "nn1:9870";
-      "dfs.namenode.http-address.ns1.nn2" = "nn2:9870";
-
-      # Automatic failover configuration
-      "dfs.client.failover.proxy.provider.ns1" = "org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider";
-      "dfs.ha.automatic-failover.enabled.ns1" = "true";
-      "dfs.ha.fencing.methods" = "shell(true)";
-      "ha.zookeeper.quorum" = "zk1:2181";
-    };
-    yarnSiteHA = {
-      "yarn.resourcemanager.zk-address" = "zk1:2181";
-      "yarn.resourcemanager.ha.enabled" = "true";
-      "yarn.resourcemanager.ha.rm-ids" = "rm1,rm2";
-      "yarn.resourcemanager.hostname.rm1" = "rm1";
-      "yarn.resourcemanager.hostname.rm2" = "rm2";
-      "yarn.resourcemanager.ha.automatic-failover.enabled" = "true";
-      "yarn.resourcemanager.cluster-id" = "cluster1";
-      # yarn.resourcemanager.webapp.address needs to be defined even though yarn.resourcemanager.hostname is set. This shouldn't be necessary, but there's a bug in
-      # hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-web-proxy/src/main/java/org/apache/hadoop/yarn/server/webproxy/amfilter/AmFilterInitializer.java:70
-      # that causes AM containers to fail otherwise.
-      "yarn.resourcemanager.webapp.address.rm1" = "rm1:8088";
-      "yarn.resourcemanager.webapp.address.rm2" = "rm2:8088";
-    };
-  in {
-    zk1 = { ... }: {
-      services.zookeeper.enable = true;
-      networking.firewall.allowedTCPPorts = [ 2181 ];
-    };
-
-    # HDFS cluster
-    nn1 = {pkgs, options, ...}: {
-      services.hadoop = {
-        inherit package coreSite hdfsSite;
-        hdfs.namenode.enable = true;
-        hdfs.zkfc.enable = true;
+import ../make-test-python.nix ({ package, ... }: {
+  name = "hadoop-combined";
+
+  nodes =
+    let
+      coreSite = {
+        "fs.defaultFS" = "hdfs://ns1";
+      };
+      hdfsSite = {
+        # HA Quorum Journal Manager configuration
+        "dfs.nameservices" = "ns1";
+        "dfs.ha.namenodes.ns1" = "nn1,nn2";
+        "dfs.namenode.shared.edits.dir.ns1" = "qjournal://jn1:8485;jn2:8485;jn3:8485/ns1";
+        "dfs.namenode.rpc-address.ns1.nn1" = "nn1:8020";
+        "dfs.namenode.rpc-address.ns1.nn2" = "nn2:8020";
+        "dfs.namenode.servicerpc-address.ns1.nn1" = "nn1:8022";
+        "dfs.namenode.servicerpc-address.ns1.nn2" = "nn2:8022";
+        "dfs.namenode.http-address.ns1.nn1" = "nn1:9870";
+        "dfs.namenode.http-address.ns1.nn2" = "nn2:9870";
+
+        # Automatic failover configuration
+        "dfs.client.failover.proxy.provider.ns1" = "org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider";
+        "dfs.ha.automatic-failover.enabled.ns1" = "true";
+        "dfs.ha.fencing.methods" = "shell(true)";
+        "ha.zookeeper.quorum" = "zk1:2181";
+      };
+      yarnSite = {
+        "yarn.resourcemanager.zk-address" = "zk1:2181";
+        "yarn.resourcemanager.ha.enabled" = "true";
+        "yarn.resourcemanager.ha.rm-ids" = "rm1,rm2";
+        "yarn.resourcemanager.hostname.rm1" = "rm1";
+        "yarn.resourcemanager.hostname.rm2" = "rm2";
+        "yarn.resourcemanager.ha.automatic-failover.enabled" = "true";
+        "yarn.resourcemanager.cluster-id" = "cluster1";
+        # yarn.resourcemanager.webapp.address needs to be defined even though yarn.resourcemanager.hostname is set. This shouldn't be necessary, but there's a bug in
+        # hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-web-proxy/src/main/java/org/apache/hadoop/yarn/server/webproxy/amfilter/AmFilterInitializer.java:70
+        # that causes AM containers to fail otherwise.
+        "yarn.resourcemanager.webapp.address.rm1" = "rm1:8088";
+        "yarn.resourcemanager.webapp.address.rm2" = "rm2:8088";
+      };
+    in
+    {
+      zk1 = { ... }: {
+        services.zookeeper.enable = true;
+        networking.firewall.allowedTCPPorts = [ 2181 ];
       };
-    };
-    nn2 = {pkgs, options, ...}: {
-      services.hadoop = {
-        inherit package coreSite hdfsSite;
-        hdfs.namenode.enable = true;
-        hdfs.zkfc.enable = true;
+
+      # HDFS cluster
+      nn1 = { ... }: {
+        services.hadoop = {
+          inherit package coreSite hdfsSite;
+          hdfs.namenode = {
+            enable = true;
+            openFirewall = true;
+          };
+          hdfs.zkfc.enable = true;
+        };
+      };
+      nn2 = { ... }: {
+        services.hadoop = {
+          inherit package coreSite hdfsSite;
+          hdfs.namenode = {
+            enable = true;
+            openFirewall = true;
+          };
+          hdfs.zkfc.enable = true;
+        };
       };
-    };
 
-    jn1 = {pkgs, options, ...}: {
-      services.hadoop = {
-        inherit package coreSite hdfsSite;
-        hdfs.journalnode.enable = true;
+      jn1 = { ... }: {
+        services.hadoop = {
+          inherit package coreSite hdfsSite;
+          hdfs.journalnode = {
+            enable = true;
+            openFirewall = true;
+          };
+        };
       };
-    };
-    jn2 = {pkgs, options, ...}: {
-      services.hadoop = {
-        inherit package coreSite hdfsSite;
-        hdfs.journalnode.enable = true;
+      jn2 = { ... }: {
+        services.hadoop = {
+          inherit package coreSite hdfsSite;
+          hdfs.journalnode = {
+            enable = true;
+            openFirewall = true;
+          };
+        };
       };
-    };
-    jn3 = {pkgs, options, ...}: {
-      services.hadoop = {
-        inherit package coreSite hdfsSite;
-        hdfs.journalnode.enable = true;
+      jn3 = { ... }: {
+        services.hadoop = {
+          inherit package coreSite hdfsSite;
+          hdfs.journalnode = {
+            enable = true;
+            openFirewall = true;
+          };
+        };
+      };
+
+      dn1 = { ... }: {
+        services.hadoop = {
+          inherit package coreSite hdfsSite;
+          hdfs.datanode = {
+            enable = true;
+            openFirewall = true;
+          };
+        };
       };
-    };
 
-    dn1 = {pkgs, options, ...}: {
-      services.hadoop = {
-        inherit package coreSite hdfsSite;
-        hdfs.datanode.enable = true;
+      # YARN cluster
+      rm1 = { options, ... }: {
+        services.hadoop = {
+          inherit package coreSite hdfsSite yarnSite;
+          yarn.resourcemanager = {
+            enable = true;
+            openFirewall = true;
+          };
+        };
       };
-    };
-
-    # YARN cluster
-    rm1 = {pkgs, options, ...}: {
-      services.hadoop = {
-        inherit package coreSite hdfsSite;
-        yarnSite = options.services.hadoop.yarnSite.default // yarnSiteHA;
-        yarn.resourcemanager.enable = true;
+      rm2 = { options, ... }: {
+        services.hadoop = {
+          inherit package coreSite hdfsSite yarnSite;
+          yarn.resourcemanager = {
+            enable = true;
+            openFirewall = true;
+          };
+        };
       };
-    };
-    rm2 = {pkgs, options, ...}: {
-      services.hadoop = {
-        inherit package coreSite hdfsSite;
-        yarnSite = options.services.hadoop.yarnSite.default // yarnSiteHA;
-        yarn.resourcemanager.enable = true;
+      nm1 = { options, ... }: {
+        virtualisation.memorySize = 2048;
+        services.hadoop = {
+          inherit package coreSite hdfsSite yarnSite;
+          yarn.nodemanager = {
+            enable = true;
+            openFirewall = true;
+          };
+        };
       };
-    };
-    nm1 = {pkgs, options, ...}: {
-      virtualisation.memorySize = 2048;
-      services.hadoop = {
-        inherit package coreSite hdfsSite;
-        yarnSite = options.services.hadoop.yarnSite.default // yarnSiteHA;
-        yarn.nodemanager.enable = true;
+      client = { options, ... }: {
+        services.hadoop = {
+          gatewayRole.enable = true;
+          inherit package coreSite hdfsSite yarnSite;
+        };
       };
-    };
   };
 
   testScript = ''
@@ -173,26 +200,26 @@ import ../make-test-python.nix ({pkgs, ...}: {
     # DN should have started by now, but confirm anyway
     dn1.wait_for_unit("hdfs-datanode")
     # Print states of namenodes
-    dn1.succeed("sudo -u hdfs hdfs haadmin -getAllServiceState | systemd-cat")
+    client.succeed("sudo -u hdfs hdfs haadmin -getAllServiceState | systemd-cat")
     # Wait for cluster to exit safemode
-    dn1.succeed("sudo -u hdfs hdfs dfsadmin -safemode wait")
-    dn1.succeed("sudo -u hdfs hdfs haadmin -getAllServiceState | systemd-cat")
+    client.succeed("sudo -u hdfs hdfs dfsadmin -safemode wait")
+    client.succeed("sudo -u hdfs hdfs haadmin -getAllServiceState | systemd-cat")
     # test R/W
-    dn1.succeed("echo testfilecontents | sudo -u hdfs hdfs dfs -put - /testfile")
-    assert "testfilecontents" in dn1.succeed("sudo -u hdfs hdfs dfs -cat /testfile")
+    client.succeed("echo testfilecontents | sudo -u hdfs hdfs dfs -put - /testfile")
+    assert "testfilecontents" in client.succeed("sudo -u hdfs hdfs dfs -cat /testfile")
 
     # Test NN failover
     nn1.succeed("systemctl stop hdfs-namenode")
-    assert "active" in dn1.succeed("sudo -u hdfs hdfs haadmin -getAllServiceState")
-    dn1.succeed("sudo -u hdfs hdfs haadmin -getAllServiceState | systemd-cat")
-    assert "testfilecontents" in dn1.succeed("sudo -u hdfs hdfs dfs -cat /testfile")
+    assert "active" in client.succeed("sudo -u hdfs hdfs haadmin -getAllServiceState")
+    client.succeed("sudo -u hdfs hdfs haadmin -getAllServiceState | systemd-cat")
+    assert "testfilecontents" in client.succeed("sudo -u hdfs hdfs dfs -cat /testfile")
 
     nn1.succeed("systemctl start hdfs-namenode")
     nn1.wait_for_open_port(9870)
     nn1.wait_for_open_port(8022)
     nn1.wait_for_open_port(8020)
-    assert "standby" in dn1.succeed("sudo -u hdfs hdfs haadmin -getAllServiceState")
-    dn1.succeed("sudo -u hdfs hdfs haadmin -getAllServiceState | systemd-cat")
+    assert "standby" in client.succeed("sudo -u hdfs hdfs haadmin -getAllServiceState")
+    client.succeed("sudo -u hdfs hdfs haadmin -getAllServiceState | systemd-cat")
 
     #### YARN tests ####
 
@@ -208,21 +235,21 @@ import ../make-test-python.nix ({pkgs, ...}: {
     nm1.wait_for_unit("yarn-nodemanager")
     nm1.wait_for_open_port(8042)
     nm1.wait_for_open_port(8040)
-    nm1.wait_until_succeeds("yarn node -list | grep Nodes:1")
-    nm1.succeed("sudo -u yarn yarn rmadmin -getAllServiceState | systemd-cat")
-    nm1.succeed("sudo -u yarn yarn node -list | systemd-cat")
+    client.wait_until_succeeds("yarn node -list | grep Nodes:1")
+    client.succeed("sudo -u yarn yarn rmadmin -getAllServiceState | systemd-cat")
+    client.succeed("sudo -u yarn yarn node -list | systemd-cat")
 
     # Test RM failover
     rm1.succeed("systemctl stop yarn-resourcemanager")
-    assert "standby" not in nm1.succeed("sudo -u yarn yarn rmadmin -getAllServiceState")
-    nm1.succeed("sudo -u yarn yarn rmadmin -getAllServiceState | systemd-cat")
+    assert "standby" not in client.succeed("sudo -u yarn yarn rmadmin -getAllServiceState")
+    client.succeed("sudo -u yarn yarn rmadmin -getAllServiceState | systemd-cat")
     rm1.succeed("systemctl start yarn-resourcemanager")
     rm1.wait_for_unit("yarn-resourcemanager")
     rm1.wait_for_open_port(8088)
-    assert "standby" in nm1.succeed("sudo -u yarn yarn rmadmin -getAllServiceState")
-    nm1.succeed("sudo -u yarn yarn rmadmin -getAllServiceState | systemd-cat")
+    assert "standby" in client.succeed("sudo -u yarn yarn rmadmin -getAllServiceState")
+    client.succeed("sudo -u yarn yarn rmadmin -getAllServiceState | systemd-cat")
 
-    assert "Estimated value of Pi is" in nm1.succeed("HADOOP_USER_NAME=hdfs yarn jar $(readlink $(which yarn) | sed -r 's~bin/yarn~lib/hadoop-*/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar~g') pi 2 10")
-    assert "SUCCEEDED" in nm1.succeed("yarn application -list -appStates FINISHED")
+    assert "Estimated value of Pi is" in client.succeed("HADOOP_USER_NAME=hdfs yarn jar $(readlink $(which yarn) | sed -r 's~bin/yarn~lib/hadoop-*/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar~g') pi 2 10")
+    assert "SUCCEEDED" in client.succeed("yarn application -list -appStates FINISHED")
   '';
 })
diff --git a/nixpkgs/nixos/tests/hadoop/hdfs.nix b/nixpkgs/nixos/tests/hadoop/hdfs.nix
index b63cbf480327..9415500463de 100644
--- a/nixpkgs/nixos/tests/hadoop/hdfs.nix
+++ b/nixpkgs/nixos/tests/hadoop/hdfs.nix
@@ -1,32 +1,46 @@
 # Test a minimal HDFS cluster with no HA
-import ../make-test-python.nix ({...}: {
-  nodes = {
-    namenode = {pkgs, ...}: {
+import ../make-test-python.nix ({ package, lib, ... }:
+with lib;
+{
+  name = "hadoop-hdfs";
+
+  nodes = let
+    coreSite = {
+      "fs.defaultFS" = "hdfs://namenode:8020";
+      "hadoop.proxyuser.httpfs.groups" = "*";
+      "hadoop.proxyuser.httpfs.hosts" = "*";
+    };
+    in {
+    namenode = { pkgs, ... }: {
       services.hadoop = {
-        package = pkgs.hadoop;
+        inherit package;
         hdfs = {
           namenode = {
             enable = true;
+            openFirewall = true;
             formatOnInit = true;
           };
-          httpfs.enable = true;
-        };
-        coreSite = {
-          "fs.defaultFS" = "hdfs://namenode:8020";
-          "hadoop.proxyuser.httpfs.groups" = "*";
-          "hadoop.proxyuser.httpfs.hosts" = "*";
+          httpfs = {
+            # The NixOS hadoop module only support webHDFS on 3.3 and newer
+            enable = mkIf (versionAtLeast package.version "3.3") true;
+            openFirewall = true;
+          };
         };
+        inherit coreSite;
       };
     };
-    datanode = {pkgs, ...}: {
+    datanode = { pkgs, ... }: {
       services.hadoop = {
-        package = pkgs.hadoop;
-        hdfs.datanode.enable = true;
-        coreSite = {
-          "fs.defaultFS" = "hdfs://namenode:8020";
-          "hadoop.proxyuser.httpfs.groups" = "*";
-          "hadoop.proxyuser.httpfs.hosts" = "*";
+        inherit package;
+        hdfs.datanode = {
+          enable = true;
+          openFirewall = true;
+          dataDirs = [{
+            type = "DISK";
+            path = "/tmp/dn1";
+          }];
         };
+        inherit coreSite;
       };
     };
   };
@@ -37,21 +51,32 @@ import ../make-test-python.nix ({...}: {
     namenode.wait_for_unit("hdfs-namenode")
     namenode.wait_for_unit("network.target")
     namenode.wait_for_open_port(8020)
+    namenode.succeed("ss -tulpne | systemd-cat")
+    namenode.succeed("cat /etc/hadoop*/hdfs-site.xml | systemd-cat")
     namenode.wait_for_open_port(9870)
 
     datanode.wait_for_unit("hdfs-datanode")
     datanode.wait_for_unit("network.target")
+  '' + ( if versionAtLeast package.version "3" then ''
     datanode.wait_for_open_port(9864)
     datanode.wait_for_open_port(9866)
     datanode.wait_for_open_port(9867)
 
-    namenode.succeed("curl -f http://namenode:9870")
     datanode.succeed("curl -f http://datanode:9864")
+  '' else ''
+    datanode.wait_for_open_port(50075)
+    datanode.wait_for_open_port(50010)
+    datanode.wait_for_open_port(50020)
+
+    datanode.succeed("curl -f http://datanode:50075")
+  '' ) + ''
+    namenode.succeed("curl -f http://namenode:9870")
 
     datanode.succeed("sudo -u hdfs hdfs dfsadmin -safemode wait")
     datanode.succeed("echo testfilecontents | sudo -u hdfs hdfs dfs -put - /testfile")
     assert "testfilecontents" in datanode.succeed("sudo -u hdfs hdfs dfs -cat /testfile")
 
+  '' + optionalString ( versionAtLeast package.version "3.3" ) ''
     namenode.wait_for_unit("hdfs-httpfs")
     namenode.wait_for_open_port(14000)
     assert "testfilecontents" in datanode.succeed("curl -f \"http://namenode:14000/webhdfs/v1/testfile?user.name=hdfs&op=OPEN\" 2>&1")
diff --git a/nixpkgs/nixos/tests/hadoop/yarn.nix b/nixpkgs/nixos/tests/hadoop/yarn.nix
index 09bdb35791c7..1bf8e3831f67 100644
--- a/nixpkgs/nixos/tests/hadoop/yarn.nix
+++ b/nixpkgs/nixos/tests/hadoop/yarn.nix
@@ -1,22 +1,30 @@
 # This only tests if YARN is able to start its services
-import ../make-test-python.nix ({...}: {
+import ../make-test-python.nix ({ package, ... }: {
+  name = "hadoop-yarn";
+
   nodes = {
-    resourcemanager = {pkgs, ...}: {
-      services.hadoop.package = pkgs.hadoop;
-      services.hadoop.yarn.resourcemanager.enable = true;
-      services.hadoop.yarnSite = {
-        "yarn.resourcemanager.scheduler.class" = "org.apache.hadoop.yarn.server.resourcemanager.scheduler.fifo.FifoScheduler";
+    resourcemanager = { ... }: {
+      services.hadoop = {
+        inherit package;
+        yarn.resourcemanager = {
+          enable = true;
+          openFirewall = true;
+        };
       };
     };
-    nodemanager = {pkgs, ...}: {
-      services.hadoop.package = pkgs.hadoop;
-      services.hadoop.yarn.nodemanager.enable = true;
-      services.hadoop.yarnSite = {
-        "yarn.resourcemanager.hostname" = "resourcemanager";
-        "yarn.nodemanager.log-dirs" = "/tmp/userlogs";
+    nodemanager = { options, lib, ... }: {
+      services.hadoop = {
+        inherit package;
+        yarn.nodemanager = {
+          enable = true;
+          openFirewall = true;
+        };
+        yarnSite = options.services.hadoop.yarnSite.default // {
+          "yarn.resourcemanager.hostname" = "resourcemanager";
+          "yarn.nodemanager.log-dirs" = "/tmp/userlogs";
+        };
       };
     };
-
   };
 
   testScript = ''
diff --git a/nixpkgs/nixos/tests/installed-tests/gjs.nix b/nixpkgs/nixos/tests/installed-tests/gjs.nix
index 1656e9de171b..d12487cba249 100644
--- a/nixpkgs/nixos/tests/installed-tests/gjs.nix
+++ b/nixpkgs/nixos/tests/installed-tests/gjs.nix
@@ -3,4 +3,10 @@
 makeInstalledTest {
   tested = pkgs.gjs;
   withX11 = true;
+
+  testConfig = {
+    environment.systemPackages = [
+      pkgs.gjs
+    ];
+  };
 }
diff --git a/nixpkgs/nixos/tests/installer.nix b/nixpkgs/nixos/tests/installer.nix
index 5525c3117b79..2cfadf85c935 100644
--- a/nixpkgs/nixos/tests/installer.nix
+++ b/nixpkgs/nixos/tests/installer.nix
@@ -568,7 +568,7 @@ in {
           "pvcreate /dev/vda1 /dev/vda2",
           "vgcreate MyVolGroup /dev/vda1 /dev/vda2",
           "lvcreate --size 1G --name swap MyVolGroup",
-          "lvcreate --size 3G --name nixos MyVolGroup",
+          "lvcreate --size 6G --name nixos MyVolGroup",
           "mkswap -f /dev/MyVolGroup/swap -L swap",
           "swapon -L swap",
           "mkfs.xfs -L nixos /dev/MyVolGroup/nixos",
diff --git a/nixpkgs/nixos/tests/ipfs.nix b/nixpkgs/nixos/tests/ipfs.nix
index f8683b0a8580..5e7c967028e4 100644
--- a/nixpkgs/nixos/tests/ipfs.nix
+++ b/nixpkgs/nixos/tests/ipfs.nix
@@ -10,6 +10,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
       # Also will add a unix domain socket socket API address, see module.
       startWhenNeeded = true;
       apiAddress = "/ip4/127.0.0.1/tcp/2324";
+      dataDir = "/mnt/ipfs";
     };
   };
 
@@ -35,5 +36,9 @@ import ./make-test-python.nix ({ pkgs, ...} : {
     machine.succeed(
         f"ipfs --api /unix/run/ipfs.sock cat /ipfs/{ipfs_hash.strip()} | grep fnord2"
     )
+
+    # Test if setting dataDir works properly with the hardened systemd unit
+    machine.succeed("test -e /mnt/ipfs/config")
+    machine.succeed("test ! -e /var/lib/ipfs/")
   '';
 })
diff --git a/nixpkgs/nixos/tests/jitsi-meet.nix b/nixpkgs/nixos/tests/jitsi-meet.nix
index d95f7c2ea9ea..41d53bc73800 100644
--- a/nixpkgs/nixos/tests/jitsi-meet.nix
+++ b/nixpkgs/nixos/tests/jitsi-meet.nix
@@ -21,9 +21,9 @@ import ./make-test-python.nix ({ pkgs, ... }: {
         forceSSL = true;
       };
 
-      security.acme.email = "me@example.org";
       security.acme.acceptTerms = true;
-      security.acme.server = "https://example.com"; # self-signed only
+      security.acme.defaults.email = "me@example.org";
+      security.acme.defaults.server = "https://example.com"; # self-signed only
     };
   };
 
diff --git a/nixpkgs/nixos/tests/keepassxc.nix b/nixpkgs/nixos/tests/keepassxc.nix
index 685a200b3187..924c137a9032 100644
--- a/nixpkgs/nixos/tests/keepassxc.nix
+++ b/nixpkgs/nixos/tests/keepassxc.nix
@@ -15,20 +15,54 @@ import ./make-test-python.nix ({ pkgs, ...} :
     ];
 
     services.xserver.enable = true;
+
+    # Regression test for https://github.com/NixOS/nixpkgs/issues/163482
+    qt5 = {
+      enable = true;
+      platformTheme = "gnome";
+      style = "adwaita-dark";
+    };
+
     test-support.displayManager.auto.user = "alice";
-    environment.systemPackages = [ pkgs.keepassxc ];
+    environment.systemPackages = with pkgs; [
+      keepassxc
+      xdotool
+    ];
   };
 
   enableOCR = true;
 
-  testScript = { nodes, ... }: ''
-    start_all()
-    machine.wait_for_x()
+  testScript = { nodes, ... }: let
+    aliceDo = cmd: ''machine.succeed("su - alice -c '${cmd}' >&2 &");'';
+    in ''
+    with subtest("Ensure X starts"):
+        start_all()
+        machine.wait_for_x()
+
+    with subtest("Can create database and entry with CLI"):
+        ${aliceDo "keepassxc-cli db-create -k foo.keyfile foo.kdbx"}
+        ${aliceDo "keepassxc-cli add --no-password -k foo.keyfile foo.kdbx bar"}
+
+    with subtest("Ensure KeePassXC starts"):
+        # start KeePassXC window
+        ${aliceDo "keepassxc >&2 &"}
 
-    # start KeePassXC window
-    machine.execute("su - alice -c keepassxc >&2 &")
+        machine.wait_for_text("KeePassXC ${pkgs.keepassxc.version}")
+        machine.screenshot("KeePassXC")
 
-    machine.wait_for_text("KeePassXC ${pkgs.keepassxc.version}")
-    machine.screenshot("KeePassXC")
+    with subtest("Can open existing database"):
+        machine.send_key("ctrl-o")
+        machine.sleep(5)
+        # Regression #163482: keepassxc did not crash
+        machine.succeed("ps -e | grep keepassxc")
+        machine.wait_for_text("foo.kdbx")
+        machine.send_key("ret")
+        machine.sleep(1)
+        # Click on "Browse" button to select keyfile
+        machine.send_key("tab")
+        machine.send_chars("/home/alice/foo.keyfile")
+        machine.send_key("ret")
+        # Passwords folder is displayed
+        machine.wait_for_text("Passwords")
   '';
 })
diff --git a/nixpkgs/nixos/tests/keycloak.nix b/nixpkgs/nixos/tests/keycloak.nix
index 6367ed808e06..fce8df2b7e3a 100644
--- a/nixpkgs/nixos/tests/keycloak.nix
+++ b/nixpkgs/nixos/tests/keycloak.nix
@@ -16,8 +16,7 @@ let
       };
 
       nodes = {
-        keycloak = { ... }: {
-
+        keycloak = { config, ... }: {
           security.pki.certificateFiles = [
             certs.ca.cert
           ];
@@ -36,6 +35,10 @@ let
               username = "bogus";
               passwordFile = pkgs.writeText "dbPassword" "wzf6vOCbPp6cqTH";
             };
+            plugins = with config.services.keycloak.package.plugins; [
+              keycloak-discord
+              keycloak-metrics-spi
+            ];
           };
 
           environment.systemPackages = with pkgs; [
@@ -102,8 +105,21 @@ let
           ### Realm Setup ###
 
           # Get an admin interface access token
+          keycloak.succeed("""
+              curl -sSf -d 'client_id=admin-cli' \
+                   -d 'username=admin' \
+                   -d 'password=${initialAdminPassword}' \
+                   -d 'grant_type=password' \
+                   '${frontendUrl}/realms/master/protocol/openid-connect/token' \
+                   | jq -r '"Authorization: bearer " + .access_token' >admin_auth_header
+          """)
+
+          # Register the metrics SPI
           keycloak.succeed(
-              "curl -sSf -d 'client_id=admin-cli' -d 'username=admin' -d 'password=${initialAdminPassword}' -d 'grant_type=password' '${frontendUrl}/realms/master/protocol/openid-connect/token' | jq -r '\"Authorization: bearer \" + .access_token' >admin_auth_header"
+              "${pkgs.jre}/bin/keytool -import -alias snakeoil -file ${certs.ca.cert} -storepass aaaaaa -keystore cacert.jks -noprompt",
+              "KC_OPTS='-Djavax.net.ssl.trustStore=cacert.jks -Djavax.net.ssl.trustStorePassword=aaaaaa' ${pkgs.keycloak}/bin/kcadm.sh config credentials --server '${frontendUrl}' --realm master --user admin --password '${initialAdminPassword}'",
+              "KC_OPTS='-Djavax.net.ssl.trustStore=cacert.jks -Djavax.net.ssl.trustStorePassword=aaaaaa' ${pkgs.keycloak}/bin/kcadm.sh update events/config -s 'eventsEnabled=true' -s 'adminEventsEnabled=true' -s 'eventsListeners+=metrics-listener'",
+              "curl -sSf '${frontendUrl}/realms/master/metrics' | grep '^keycloak_admin_event_UPDATE'"
           )
 
           # Publish the realm, including a test OIDC client and user
diff --git a/nixpkgs/nixos/tests/misc.nix b/nixpkgs/nixos/tests/misc.nix
index 0587912c9a22..02513c4726c1 100644
--- a/nixpkgs/nixos/tests/misc.nix
+++ b/nixpkgs/nixos/tests/misc.nix
@@ -1,13 +1,13 @@
 # Miscellaneous small tests that don't warrant their own VM run.
 
-import ./make-test-python.nix ({ pkgs, ...} : rec {
+import ./make-test-python.nix ({ pkgs, ...} : let
+  foo = pkgs.writeText "foo" "Hello World";
+in {
   name = "misc";
   meta = with pkgs.lib.maintainers; {
     maintainers = [ eelco ];
   };
 
-  foo = pkgs.writeText "foo" "Hello World";
-
   machine =
     { lib, ... }:
     with lib;
diff --git a/nixpkgs/nixos/tests/moonraker.nix b/nixpkgs/nixos/tests/moonraker.nix
new file mode 100644
index 000000000000..b0a93a4a608b
--- /dev/null
+++ b/nixpkgs/nixos/tests/moonraker.nix
@@ -0,0 +1,45 @@
+import ./make-test-python.nix ({ pkgs, ...} : {
+  name = "moonraker";
+  meta = with pkgs.lib.maintainers; {
+    maintainers = [ zhaofengli ];
+  };
+
+  nodes = {
+    printer = { config, pkgs, ... }: {
+      security.polkit.enable = true;
+
+      services.moonraker = {
+        enable = true;
+        allowSystemControl = true;
+
+        settings = {
+          authorization = {
+            trusted_clients = [ "127.0.0.0/8" "::1/128" ];
+          };
+        };
+      };
+
+      services.klipper = {
+        enable = true;
+
+        user = "moonraker";
+        group = "moonraker";
+
+        # No mcu configured so won't even enter `ready` state
+        settings = {};
+      };
+    };
+  };
+
+  testScript = ''
+    printer.start()
+
+    printer.wait_for_unit("klipper.service")
+    printer.wait_for_unit("moonraker.service")
+    printer.wait_until_succeeds("curl http://localhost:7125/printer/info | grep -v 'Not Found' >&2", timeout=30)
+
+    with subtest("Check that we can perform system-level operations"):
+        printer.succeed("curl -X POST http://localhost:7125/machine/services/stop?service=klipper | grep ok >&2")
+        printer.wait_until_succeeds("systemctl --no-pager show klipper.service | grep ActiveState=inactive", timeout=10)
+  '';
+})
diff --git a/nixpkgs/nixos/tests/networking.nix b/nixpkgs/nixos/tests/networking.nix
index 8c9df19f2d58..dc7938a436aa 100644
--- a/nixpkgs/nixos/tests/networking.nix
+++ b/nixpkgs/nixos/tests/networking.nix
@@ -498,6 +498,7 @@ let
         networking = {
           useNetworkd = networkd;
           useDHCP = false;
+          firewall.extraCommands = "ip6tables -A nixos-fw -p gre -j nixos-fw-accept";
         };
       };
     in {
@@ -506,21 +507,35 @@ let
         mkMerge [
           (node args)
           {
-            virtualisation.vlans = [ 1 2 ];
+            virtualisation.vlans = [ 1 2 4 ];
             networking = {
               greTunnels = {
                 greTunnel = {
                   local = "192.168.2.1";
                   remote = "192.168.2.2";
                   dev = "eth2";
+                  ttl = 225;
                   type = "tap";
                 };
+                gre6Tunnel = {
+                  local = "fd00:1234:5678:4::1";
+                  remote = "fd00:1234:5678:4::2";
+                  dev = "eth3";
+                  ttl = 255;
+                  type = "tun6";
+                };
               };
               bridges.bridge.interfaces = [ "greTunnel" "eth1" ];
               interfaces.eth1.ipv4.addresses = mkOverride 0 [];
               interfaces.bridge.ipv4.addresses = mkOverride 0 [
                 { address = "192.168.1.1"; prefixLength = 24; }
               ];
+              interfaces.eth3.ipv6.addresses = [
+                { address = "fd00:1234:5678:4::1"; prefixLength = 64; }
+              ];
+              interfaces.gre6Tunnel.ipv6.addresses = mkOverride 0 [
+                { address = "fc00::1"; prefixLength = 64; }
+              ];
             };
           }
         ];
@@ -528,26 +543,41 @@ let
         mkMerge [
           (node args)
           {
-            virtualisation.vlans = [ 2 3 ];
+            virtualisation.vlans = [ 2 3 4 ];
             networking = {
               greTunnels = {
                 greTunnel = {
                   local = "192.168.2.2";
                   remote = "192.168.2.1";
                   dev = "eth1";
+                  ttl = 225;
                   type = "tap";
                 };
+                gre6Tunnel = {
+                  local = "fd00:1234:5678:4::2";
+                  remote = "fd00:1234:5678:4::1";
+                  dev = "eth3";
+                  ttl = 255;
+                  type = "tun6";
+                };
               };
               bridges.bridge.interfaces = [ "greTunnel" "eth2" ];
               interfaces.eth2.ipv4.addresses = mkOverride 0 [];
               interfaces.bridge.ipv4.addresses = mkOverride 0 [
                 { address = "192.168.1.2"; prefixLength = 24; }
               ];
+              interfaces.eth3.ipv6.addresses = [
+                { address = "fd00:1234:5678:4::2"; prefixLength = 64; }
+              ];
+              interfaces.gre6Tunnel.ipv6.addresses = mkOverride 0 [
+                { address = "fc00::2"; prefixLength = 64; }
+              ];
             };
           }
         ];
       testScript = { ... }:
         ''
+          import json
           start_all()
 
           with subtest("Wait for networking to be configured"):
@@ -562,6 +592,17 @@ let
               client1.wait_until_succeeds("ping -c 1 192.168.1.2")
 
               client2.wait_until_succeeds("ping -c 1 192.168.1.1")
+
+              client1.wait_until_succeeds("ping -c 1 fc00::2")
+
+              client2.wait_until_succeeds("ping -c 1 fc00::1")
+
+          with subtest("Test GRE tunnel TTL"):
+              links = json.loads(client1.succeed("ip -details -json link show greTunnel"))
+              assert links[0]['linkinfo']['info_data']['ttl'] == 225, "ttl not set for greTunnel"
+
+              links = json.loads(client2.succeed("ip -details -json link show gre6Tunnel"))
+              assert links[0]['linkinfo']['info_data']['ttl'] == 255, "ttl not set for gre6Tunnel"
         '';
     };
     vlan = let
diff --git a/nixpkgs/nixos/tests/nextcloud/default.nix b/nixpkgs/nixos/tests/nextcloud/default.nix
index 34d3c345354c..b7b1c5c66002 100644
--- a/nixpkgs/nixos/tests/nextcloud/default.nix
+++ b/nixpkgs/nixos/tests/nextcloud/default.nix
@@ -18,4 +18,4 @@ foldl
     };
   })
 { }
-  [ 21 22 23 ]
+  [ 22 23 ]
diff --git a/nixpkgs/nixos/tests/nix-ld.nix b/nixpkgs/nixos/tests/nix-ld.nix
new file mode 100644
index 000000000000..5c886182d969
--- /dev/null
+++ b/nixpkgs/nixos/tests/nix-ld.nix
@@ -0,0 +1,20 @@
+import ./make-test-python.nix ({ lib, pkgs, ...} :
+{
+  name = "nix-ld";
+  nodes.machine = { pkgs, ... }: {
+    programs.nix-ld.enable = true;
+    environment.systemPackages = [
+      (pkgs.runCommand "patched-hello" {} ''
+        install -D -m755 ${pkgs.hello}/bin/hello $out/bin/hello
+        patchelf $out/bin/hello --set-interpreter ${pkgs.nix-ld.ldPath}
+      '')
+    ];
+  };
+  testScript = ''
+    start_all()
+    path = "${pkgs.stdenv.cc}/nix-support/dynamic-linker"
+    with open(path) as f:
+        real_ld = f.read().strip()
+    machine.succeed(f"NIX_LD={real_ld} hello")
+ '';
+})
diff --git a/nixpkgs/nixos/tests/pacemaker.nix b/nixpkgs/nixos/tests/pacemaker.nix
new file mode 100644
index 000000000000..684557614953
--- /dev/null
+++ b/nixpkgs/nixos/tests/pacemaker.nix
@@ -0,0 +1,110 @@
+import ./make-test-python.nix  ({ pkgs, lib, ... }: rec {
+  name = "pacemaker";
+  meta = with pkgs.lib.maintainers; {
+    maintainers = [ astro ];
+  };
+
+  nodes =
+    let
+      node = i: {
+        networking.interfaces.eth1.ipv4.addresses = [ {
+          address = "192.168.0.${toString i}";
+          prefixLength = 24;
+        } ];
+
+        services.corosync = {
+          enable = true;
+          clusterName = "zentralwerk-network";
+          nodelist = lib.imap (i: name: {
+            nodeid = i;
+            inherit name;
+            ring_addrs = [
+              (builtins.head nodes.${name}.networking.interfaces.eth1.ipv4.addresses).address
+            ];
+          }) (builtins.attrNames nodes);
+        };
+        environment.etc."corosync/authkey" = {
+          source = builtins.toFile "authkey"
+            # minimum length: 128 bytes
+            "testtesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttest";
+          mode = "0400";
+        };
+
+        services.pacemaker.enable = true;
+
+        # used for pacemaker resource
+        systemd.services.ha-cat = {
+          description = "Highly available netcat";
+          serviceConfig.ExecStart = "${pkgs.netcat}/bin/nc -l discard";
+        };
+      };
+    in {
+      node1 = node 1;
+      node2 = node 2;
+      node3 = node 3;
+    };
+
+  # sets up pacemaker with resources configuration, then crashes a
+  # node and waits for service restart on another node
+  testScript =
+    let
+      resources = builtins.toFile "cib-resources.xml" ''
+        <resources>
+          <primitive id="cat" class="systemd" type="ha-cat">
+            <operations>
+              <op id="stop-cat" name="start" interval="0" timeout="1s"/>
+              <op id="start-cat" name="start" interval="0" timeout="1s"/>
+              <op id="monitor-cat" name="monitor" interval="1s" timeout="1s"/>
+            </operations>
+          </primitive>
+        </resources>
+      '';
+    in ''
+      import re
+      import time
+
+      start_all()
+
+      ${lib.concatMapStrings (node: ''
+        ${node}.wait_until_succeeds("corosync-quorumtool")
+        ${node}.wait_for_unit("pacemaker.service")
+      '') (builtins.attrNames nodes)}
+
+      # No STONITH device
+      node1.succeed("crm_attribute -t crm_config -n stonith-enabled -v false")
+      # Configure the cat resource
+      node1.succeed("cibadmin --replace --scope resources --xml-file ${resources}")
+
+      # wait until the service is started
+      while True:
+        output = node1.succeed("crm_resource -r cat --locate")
+        match = re.search("is running on: (.+)", output)
+        if match:
+          for machine in machines:
+            if machine.name == match.group(1):
+              current_node = machine
+          break
+        time.sleep(1)
+
+      current_node.log("Service running here!")
+      current_node.crash()
+
+      # pick another node that's still up
+      for machine in machines:
+        if machine.booted:
+          check_node = machine
+      # find where the service has been started next
+      while True:
+        output = check_node.succeed("crm_resource -r cat --locate")
+        match = re.search("is running on: (.+)", output)
+        # output will remain the old current_node until the crash is detected by pacemaker
+        if match and match.group(1) != current_node.name:
+          for machine in machines:
+            if machine.name == match.group(1):
+              next_node = machine
+          break
+        time.sleep(1)
+
+      next_node.log("Service migrated here!")
+  '';
+})
diff --git a/nixpkgs/nixos/tests/pleroma.nix b/nixpkgs/nixos/tests/pleroma.nix
index bf3623fce38b..90a9a2511044 100644
--- a/nixpkgs/nixos/tests/pleroma.nix
+++ b/nixpkgs/nixos/tests/pleroma.nix
@@ -32,8 +32,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
     # system one. Overriding this pretty bad default behaviour.
     export REQUESTS_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt
 
-    export TOOT_LOGIN_CLI_PASSWORD="jamy-password"
-    toot login_cli -i "pleroma.nixos.test" -e "jamy@nixos.test"
+    echo "jamy-password" | toot login_cli -i "pleroma.nixos.test" -e "jamy@nixos.test"
     echo "Login OK"
 
     # Send a toot then verify it's part of the public timeline
@@ -168,21 +167,6 @@ import ./make-test-python.nix ({ pkgs, ... }:
     cp key.pem cert.pem $out
   '';
 
-  /* Toot is preventing users from feeding login_cli a password non
-     interactively. While it makes sense most of the times, it's
-     preventing us to login in this non-interactive test. This patch
-     introduce a TOOT_LOGIN_CLI_PASSWORD env variable allowing us to
-     provide a password to toot login_cli
-
-     If https://github.com/ihabunek/toot/pull/180 gets merged at some
-     point, feel free to remove this patch. */
-  custom-toot = pkgs.toot.overrideAttrs(old:{
-    patches = [ (pkgs.fetchpatch {
-      url = "https://github.com/NinjaTrappeur/toot/commit/b4a4c30f41c0cb7e336714c2c4af9bc9bfa0c9f2.patch";
-      sha256 = "sha256-0xxNwjR/fStLjjUUhwzCCfrghRVts+fc+fvVJqVcaFg=";
-    }) ];
-  });
-
   hosts = nodes: ''
     ${nodes.pleroma.config.networking.primaryIPAddress} pleroma.nixos.test
     ${nodes.client.config.networking.primaryIPAddress} client.nixos.test
@@ -194,7 +178,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
       security.pki.certificateFiles = [ "${tls-cert}/cert.pem" ];
       networking.extraHosts = hosts nodes;
       environment.systemPackages = with pkgs; [
-        custom-toot
+        toot
         send-toot
       ];
     };
diff --git a/nixpkgs/nixos/tests/powerdns.nix b/nixpkgs/nixos/tests/powerdns.nix
index d025934ad2b3..70060bad87b6 100644
--- a/nixpkgs/nixos/tests/powerdns.nix
+++ b/nixpkgs/nixos/tests/powerdns.nix
@@ -10,6 +10,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
     services.powerdns.extraConfig = ''
       launch=gmysql
       gmysql-user=pdns
+      zone-cache-refresh-interval=0
     '';
 
     services.mysql = {
diff --git a/nixpkgs/nixos/tests/rstudio-server.nix b/nixpkgs/nixos/tests/rstudio-server.nix
index c7ac7670fbd4..dd5fe3e5b440 100644
--- a/nixpkgs/nixos/tests/rstudio-server.nix
+++ b/nixpkgs/nixos/tests/rstudio-server.nix
@@ -14,12 +14,6 @@ import ./make-test-python.nix ({ pkgs, ... }:
       };
     };
 
-    users.testuser = {
-      uid = 1000;
-      group = "testgroup";
-    };
-    groups.testgroup.gid = 1000;
-
     testScript = ''
       machine.wait_for_unit("rstudio-server.service")
       machine.succeed("curl -f -vvv -s http://127.0.0.1:8787")
diff --git a/nixpkgs/nixos/tests/sfxr-qt.nix b/nixpkgs/nixos/tests/sfxr-qt.nix
new file mode 100644
index 000000000000..976b9b11fc66
--- /dev/null
+++ b/nixpkgs/nixos/tests/sfxr-qt.nix
@@ -0,0 +1,32 @@
+import ./make-test-python.nix ({ pkgs, ... }: {
+  name = "sfxr-qt";
+  meta = with pkgs.lib.maintainers; {
+    maintainers = [ fgaz ];
+  };
+
+  machine = { config, pkgs, ... }: {
+    imports = [
+      ./common/x11.nix
+    ];
+
+    services.xserver.enable = true;
+    sound.enable = true;
+    environment.systemPackages = [ pkgs.sfxr-qt ];
+  };
+
+  enableOCR = true;
+
+  testScript =
+    ''
+      machine.wait_for_x()
+      # Add a dummy sound card, or the program won't start
+      machine.execute("modprobe snd-dummy")
+
+      machine.execute("sfxr-qt >&2 &")
+
+      machine.wait_for_window(r"sfxr")
+      machine.sleep(10)
+      machine.wait_for_text("requency")
+      machine.screenshot("screen")
+    '';
+})
diff --git a/nixpkgs/nixos/tests/step-ca.nix b/nixpkgs/nixos/tests/step-ca.nix
index b22bcb060f2b..f21bd5366266 100644
--- a/nixpkgs/nixos/tests/step-ca.nix
+++ b/nixpkgs/nixos/tests/step-ca.nix
@@ -42,8 +42,8 @@ import ./make-test-python.nix ({ pkgs, ... }:
 
         caclient =
           { config, pkgs, ... }: {
-            security.acme.server = "https://caserver:8443/acme/acme/directory";
-            security.acme.email = "root@example.org";
+            security.acme.defaults.server = "https://caserver:8443/acme/acme/directory";
+            security.acme.defaults.email = "root@example.org";
             security.acme.acceptTerms = true;
 
             security.pki.certificateFiles = [ "${test-certificates}/root_ca.crt" ];
diff --git a/nixpkgs/nixos/tests/switch-test.nix b/nixpkgs/nixos/tests/switch-test.nix
index 93eee4babc2d..0198866b6ff8 100644
--- a/nixpkgs/nixos/tests/switch-test.nix
+++ b/nixpkgs/nixos/tests/switch-test.nix
@@ -51,6 +51,12 @@ in {
       environment.systemPackages = [ pkgs.socat ]; # for the socket activation stuff
       users.mutableUsers = false;
 
+      # For boot/switch testing
+      system.build.installBootLoader = lib.mkForce (pkgs.writeShellScript "install-dummy-loader" ''
+        echo "installing dummy bootloader"
+        touch /tmp/bootloader-installed
+      '');
+
       specialisation = rec {
         simpleService.configuration = {
           systemd.services.test = {
@@ -502,10 +508,33 @@ in {
     machine.succeed(
         "${stderrRunner} ${originalSystem}/bin/switch-to-configuration test"
     )
+    # This tests whether the /etc/os-release parser works which is a fallback
+    # when /etc/NIXOS is missing. If the parser does not work, switch-to-configuration
+    # would fail.
+    machine.succeed("rm /etc/NIXOS")
     machine.succeed(
         "${stderrRunner} ${otherSystem}/bin/switch-to-configuration test"
     )
 
+
+    with subtest("actions"):
+        # boot action
+        machine.fail("test -f /tmp/bootloader-installed")
+        out = switch_to_specialisation("${machine}", "simpleService", action="boot")
+        assert_contains(out, "installing dummy bootloader")
+        assert_lacks(out, "activating the configuration...")  # good indicator of a system activation
+        machine.succeed("test -f /tmp/bootloader-installed")
+        machine.succeed("rm /tmp/bootloader-installed")
+
+        # switch action
+        machine.fail("test -f /tmp/bootloader-installed")
+        out = switch_to_specialisation("${machine}", "", action="switch")
+        assert_contains(out, "installing dummy bootloader")
+        assert_contains(out, "activating the configuration...")  # good indicator of a system activation
+        machine.succeed("test -f /tmp/bootloader-installed")
+
+        # test and dry-activate actions are tested further down below
+
     with subtest("services"):
         switch_to_specialisation("${machine}", "")
         # Nothing happens when nothing is changed
@@ -519,6 +548,7 @@ in {
 
         # Start a simple service
         out = switch_to_specialisation("${machine}", "simpleService")
+        assert_lacks(out, "installing dummy bootloader")  # test does not install a bootloader
         assert_lacks(out, "stopping the following units:")
         assert_lacks(out, "NOT restarting the following changed units:")
         assert_contains(out, "reloading the following units: dbus.service\n")  # huh
diff --git a/nixpkgs/nixos/tests/systemd-unit-path.nix b/nixpkgs/nixos/tests/systemd-misc.nix
index 5998a187188a..e416baa8b5f5 100644
--- a/nixpkgs/nixos/tests/systemd-unit-path.nix
+++ b/nixpkgs/nixos/tests/systemd-misc.nix
@@ -29,10 +29,23 @@ let
   };
 in
 {
-  name = "systemd-unit-path";
+  name = "systemd-misc";
 
   machine = { pkgs, lib, ... }: {
     boot.extraSystemdUnitPaths = [ "/etc/systemd-rw/system" ];
+
+    users.users.limited = {
+      isNormalUser = true;
+      uid = 1000;
+    };
+
+    systemd.units."user-1000.slice.d/limits.conf" = {
+      text = ''
+        [Slice]
+        TasksAccounting=yes
+        TasksMax=100
+      '';
+    };
   };
 
   testScript = ''
@@ -43,5 +56,7 @@ in
     )
     machine.succeed("systemctl start example.service")
     machine.succeed("systemctl status example.service | grep 'Active: active'")
+
+    machine.succeed("systemctl show --property TasksMax --value user-1000.slice | grep 100")
   '';
 })
diff --git a/nixpkgs/nixos/tests/terminal-emulators.nix b/nixpkgs/nixos/tests/terminal-emulators.nix
new file mode 100644
index 000000000000..6ea0f1c18725
--- /dev/null
+++ b/nixpkgs/nixos/tests/terminal-emulators.nix
@@ -0,0 +1,207 @@
+# Terminal emulators all present a pretty similar interface.
+# That gives us an opportunity to easily test their basic functionality with a single codebase.
+#
+# There are two tests run on each terminal emulator
+# - can it successfully execute a command passed on the cmdline?
+# - can it successfully display a colour?
+# the latter is used as a proxy for "can it display text?", without going through all the intricacies of OCR.
+#
+# 256-colour terminal mode is used to display the test colour, since it has a universally-applicable palette (unlike 8- and 16- colour, where the colours are implementation-defined), and it is widely supported (unlike 24-bit colour).
+#
+# Future work:
+# - Wayland support (both for testing the existing terminals, and for testing wayland-only terminals like foot and havoc)
+# - Test keyboard input? (skipped for now, to eliminate the possibility of race conditions and focus issues)
+
+{ system ? builtins.currentSystem,
+  config ? {},
+  pkgs ? import ../.. { inherit system config; }
+}:
+
+with import ../lib/testing-python.nix { inherit system pkgs; };
+with pkgs.lib;
+
+let tests = {
+      alacritty.pkg = p: p.alacritty;
+
+      contour.pkg = p: p.contour;
+      contour.cmd = "contour $command";
+
+      cool-retro-term.pkg = p: p.cool-retro-term;
+      cool-retro-term.colourTest = false; # broken by gloss effect
+
+      ctx.pkg = p: p.ctx;
+      ctx.pinkValue = "#FE0065";
+
+      darktile.pkg = p: p.darktile;
+
+      eterm.pkg = p: p.eterm;
+      eterm.executable = "Eterm";
+      eterm.pinkValue = "#D40055";
+
+      germinal.pkg = p: p.germinal;
+
+      gnome-terminal.pkg = p: p.gnome.gnome-terminal;
+
+      guake.pkg = p: p.guake;
+      guake.cmd = "SHELL=$command guake --show";
+      guake.kill = true;
+
+      hyper.pkg = p: p.hyper;
+
+      kermit.pkg = p: p.kermit-terminal;
+
+      kgx.pkg = p: p.kgx;
+      kgx.cmd = "kgx -e $command";
+      kgx.kill = true;
+
+      kitty.pkg = p: p.kitty;
+      kitty.cmd = "kitty $command";
+
+      konsole.pkg = p: p.plasma5Packages.konsole;
+
+      lxterminal.pkg = p: p.lxterminal;
+
+      mate-terminal.pkg = p: p.mate.mate-terminal;
+      mate-terminal.cmd = "SHELL=$command mate-terminal --disable-factory"; # factory mode uses dbus, and we don't have a proper dbus session set up
+
+      mlterm.pkg = p: p.mlterm;
+
+      mrxvt.pkg = p: p.mrxvt;
+
+      qterminal.pkg = p: p.lxqt.qterminal;
+      qterminal.kill = true;
+
+      roxterm.pkg = p: p.roxterm;
+      roxterm.cmd = "roxterm -e $command";
+
+      sakura.pkg = p: p.sakura;
+
+      st.pkg = p: p.st;
+      st.kill = true;
+
+      stupidterm.pkg = p: p.stupidterm;
+      stupidterm.cmd = "stupidterm -- $command";
+
+      terminator.pkg = p: p.terminator;
+      terminator.cmd = "terminator -e $command";
+
+      terminology.pkg = p: p.enlightenment.terminology;
+      terminology.cmd = "SHELL=$command terminology --no-wizard=true";
+      terminology.colourTest = false; # broken by gloss effect
+
+      termite.pkg = p: p.termite;
+
+      termonad.pkg = p: p.termonad;
+
+      tilda.pkg = p: p.tilda;
+
+      tilix.pkg = p: p.tilix;
+      tilix.cmd = "tilix -e $command";
+
+      urxvt.pkg = p: p.rxvt-unicode;
+
+      wayst.pkg = p: p.wayst;
+      wayst.pinkValue = "#FF0066";
+
+      wezterm.pkg = p: p.wezterm;
+
+      xfce4-terminal.pkg = p: p.xfce.xfce4-terminal;
+
+      xterm.pkg = p: p.xterm;
+    };
+in mapAttrs (name: { pkg, executable ? name, cmd ? "SHELL=$command ${executable}", colourTest ? true, pinkValue ? "#FF0087", kill ? false }: makeTest
+{
+  name = "terminal-emulator-${name}";
+  meta = with pkgs.lib.maintainers; {
+    maintainers = [ jjjollyjim ];
+  };
+
+  machine = { pkgsInner, ... }:
+
+  {
+    imports = [ ./common/x11.nix ./common/user-account.nix ];
+
+    # Hyper (and any other electron-based terminals) won't run as root
+    test-support.displayManager.auto.user = "alice";
+
+    environment.systemPackages = [
+      (pkg pkgs)
+      (pkgs.writeShellScriptBin "report-success" ''
+        echo 1 > /tmp/term-ran-successfully
+        ${optionalString kill "pkill ${executable}"}
+      '')
+      (pkgs.writeShellScriptBin "display-colour" ''
+        # A 256-colour background colour code for pink, then spaces.
+        #
+        # Background is used rather than foreground to minimize the effect of anti-aliasing.
+        #
+        # Keep adding more in case the window is partially offscreen to the left or requires
+        # a change to correctly redraw after initialising the window (as with ctx).
+
+        while :
+        do
+            echo -ne "\e[48;5;198m                   "
+            sleep 0.5
+        done
+        sleep infinity
+      '')
+      (pkgs.writeShellScriptBin "run-in-this-term" "sudo -u alice run-in-this-term-wrapped $1")
+
+      (pkgs.writeShellScriptBin "run-in-this-term-wrapped" "command=\"$(which \"$1\")\"; ${cmd}")
+    ];
+
+    # Helpful reminder to add this test to passthru.tests
+    warnings = if !((pkg pkgs) ? "passthru" && (pkg pkgs).passthru ? "tests") then [ "The package for ${name} doesn't have a passthru.tests" ] else [ ];
+  };
+
+  # We need imagemagick, though not tesseract
+  enableOCR = true;
+
+  testScript = { nodes, ... }: let
+  in ''
+    with subtest("wait for x"):
+        start_all()
+        machine.wait_for_x()
+
+    with subtest("have the terminal run a command"):
+        # We run this command synchronously, so we can be certain the exit codes are happy
+        machine.${if kill then "execute" else "succeed"}("run-in-this-term report-success")
+        machine.wait_for_file("/tmp/term-ran-successfully")
+    ${optionalString colourTest ''
+
+    import tempfile
+    import subprocess
+
+
+    def check_for_pink(final=False) -> bool:
+        with tempfile.NamedTemporaryFile() as tmpin:
+            machine.send_monitor_command("screendump {}".format(tmpin.name))
+
+            cmd = 'convert {} -define histogram:unique-colors=true -format "%c" histogram:info:'.format(
+                tmpin.name
+            )
+            ret = subprocess.run(cmd, shell=True, capture_output=True)
+            if ret.returncode != 0:
+                raise Exception(
+                    "image analysis failed with exit code {}".format(ret.returncode)
+                )
+
+            text = ret.stdout.decode("utf-8")
+            return "${pinkValue}" in text
+
+
+    with subtest("ensuring no pink is present without the terminal"):
+        assert (
+            check_for_pink() == False
+        ), "Pink was present on the screen before we even launched a terminal!"
+
+    with subtest("have the terminal display a colour"):
+        # We run this command in the background
+        machine.shell.send(b"(run-in-this-term display-colour |& systemd-cat -t terminal) &\n")
+
+        with machine.nested("Waiting for the screen to have pink on it:"):
+            retry(check_for_pink)
+  ''}'';
+}
+
+  ) tests
diff --git a/nixpkgs/nixos/tests/tor.nix b/nixpkgs/nixos/tests/tor.nix
index c061f59226cf..71ec9df4641f 100644
--- a/nixpkgs/nixos/tests/tor.nix
+++ b/nixpkgs/nixos/tests/tor.nix
@@ -1,24 +1,19 @@
 import ./make-test-python.nix ({ lib, ... }: with lib;
 
-rec {
+{
   name = "tor";
   meta.maintainers = with maintainers; [ joachifm ];
 
-  common =
-    { ... }:
-    { boot.kernelParams = [ "audit=0" "apparmor=0" "quiet" ];
-      networking.firewall.enable = false;
-      networking.useDHCP = false;
-    };
+  nodes.client = { pkgs, ... }: {
+    boot.kernelParams = [ "audit=0" "apparmor=0" "quiet" ];
+    networking.firewall.enable = false;
+    networking.useDHCP = false;
 
-  nodes.client =
-    { pkgs, ... }:
-    { imports = [ common ];
-      environment.systemPackages = with pkgs; [ netcat ];
-      services.tor.enable = true;
-      services.tor.client.enable = true;
-      services.tor.settings.ControlPort = 9051;
-    };
+    environment.systemPackages = with pkgs; [ netcat ];
+    services.tor.enable = true;
+    services.tor.client.enable = true;
+    services.tor.settings.ControlPort = 9051;
+  };
 
   testScript = ''
     client.wait_for_unit("tor.service")
diff --git a/nixpkgs/nixos/tests/web-apps/mastodon.nix b/nixpkgs/nixos/tests/web-apps/mastodon.nix
new file mode 100644
index 000000000000..279a1c59169f
--- /dev/null
+++ b/nixpkgs/nixos/tests/web-apps/mastodon.nix
@@ -0,0 +1,170 @@
+import ../make-test-python.nix ({pkgs, ...}:
+let
+  test-certificates = pkgs.runCommandLocal "test-certificates" { } ''
+    mkdir -p $out
+    echo insecure-root-password > $out/root-password-file
+    echo insecure-intermediate-password > $out/intermediate-password-file
+    ${pkgs.step-cli}/bin/step certificate create "Example Root CA" $out/root_ca.crt $out/root_ca.key --password-file=$out/root-password-file --profile root-ca
+    ${pkgs.step-cli}/bin/step certificate create "Example Intermediate CA 1" $out/intermediate_ca.crt $out/intermediate_ca.key --password-file=$out/intermediate-password-file --ca-password-file=$out/root-password-file --profile intermediate-ca --ca $out/root_ca.crt --ca-key $out/root_ca.key
+  '';
+
+  hosts = ''
+    192.168.2.10 ca.local
+    192.168.2.11 mastodon.local
+  '';
+
+in
+{
+  name = "mastodon";
+  meta.maintainers = with pkgs.lib.maintainers; [ erictapen izorkin ];
+
+  nodes = {
+    ca = { pkgs, ... }: {
+      networking = {
+        interfaces.eth1 = {
+          ipv4.addresses = [
+            { address = "192.168.2.10"; prefixLength = 24; }
+          ];
+        };
+        extraHosts = hosts;
+      };
+      services.step-ca = {
+        enable = true;
+        address = "0.0.0.0";
+        port = 8443;
+        openFirewall = true;
+        intermediatePasswordFile = "${test-certificates}/intermediate-password-file";
+        settings = {
+          dnsNames = [ "ca.local" ];
+          root = "${test-certificates}/root_ca.crt";
+          crt = "${test-certificates}/intermediate_ca.crt";
+          key = "${test-certificates}/intermediate_ca.key";
+          db = {
+            type = "badger";
+            dataSource = "/var/lib/step-ca/db";
+          };
+          authority = {
+            provisioners = [
+              {
+                type = "ACME";
+                name = "acme";
+              }
+            ];
+          };
+        };
+      };
+    };
+
+    server = { pkgs, ... }: {
+      networking = {
+        interfaces.eth1 = {
+          ipv4.addresses = [
+            { address = "192.168.2.11"; prefixLength = 24; }
+          ];
+        };
+        extraHosts = hosts;
+        firewall.allowedTCPPorts = [ 80 443 ];
+      };
+
+      security = {
+        acme = {
+          acceptTerms = true;
+          defaults.server = "https://ca.local:8443/acme/acme/directory";
+          defaults.email = "mastodon@mastodon.local";
+        };
+        pki.certificateFiles = [ "${test-certificates}/root_ca.crt" ];
+      };
+
+      services.redis.servers.mastodon = {
+        enable = true;
+        bind = "127.0.0.1";
+        port = 31637;
+      };
+
+      services.mastodon = {
+        enable = true;
+        configureNginx = true;
+        localDomain = "mastodon.local";
+        enableUnixSocket = false;
+        redis = {
+          createLocally = true;
+          host = "127.0.0.1";
+          port = 31637;
+        };
+        database = {
+          createLocally = true;
+          host = "/run/postgresql";
+          port = 5432;
+        };
+        smtp = {
+          createLocally = false;
+          fromAddress = "mastodon@mastodon.local";
+        };
+        extraConfig = {
+          EMAIL_DOMAIN_ALLOWLIST = "example.com";
+        };
+      };
+    };
+
+    client = { pkgs, ... }: {
+      environment.systemPackages = [ pkgs.jq ];
+      networking = {
+        interfaces.eth1 = {
+          ipv4.addresses = [
+            { address = "192.168.2.12"; prefixLength = 24; }
+          ];
+        };
+        extraHosts = hosts;
+      };
+
+      security = {
+        pki.certificateFiles = [ "${test-certificates}/root_ca.crt" ];
+      };
+    };
+  };
+
+  testScript = ''
+    start_all()
+
+    ca.wait_for_unit("step-ca.service")
+    ca.wait_for_open_port(8443)
+
+    server.wait_for_unit("nginx.service")
+    server.wait_for_unit("redis-mastodon.service")
+    server.wait_for_unit("postgresql.service")
+    server.wait_for_unit("mastodon-sidekiq.service")
+    server.wait_for_unit("mastodon-streaming.service")
+    server.wait_for_unit("mastodon-web.service")
+    server.wait_for_open_port(55000)
+    server.wait_for_open_port(55001)
+
+    # Check Mastodon version from remote client
+    client.succeed("curl --fail https://mastodon.local/api/v1/instance | jq -r '.version' | grep '${pkgs.mastodon.version}'")
+
+    # Check using admin CLI
+    # Check Mastodon version
+    server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl version' | grep '${pkgs.mastodon.version}'")
+
+    # Manage accounts
+    server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl email_domain_blocks add example.com'")
+    server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl email_domain_blocks list' | grep 'example.com'")
+    server.fail("su - mastodon -s /bin/sh -c 'mastodon-env tootctl email_domain_blocks list' | grep 'mastodon.local'")
+    server.fail("su - mastodon -s /bin/sh -c 'mastodon-env tootctl accounts create alice --email=alice@example.com'")
+    server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl email_domain_blocks remove example.com'")
+    server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl accounts create bob --email=bob@example.com'")
+    server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl accounts approve bob'")
+    server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl accounts delete bob'")
+
+    # Manage IP access
+    server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl ip_blocks add 192.168.0.0/16 --severity=no_access'")
+    server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl ip_blocks export' | grep '192.168.0.0/16'")
+    server.fail("su - mastodon -s /bin/sh -c 'mastodon-env tootctl p_blocks export' | grep '172.16.0.0/16'")
+    client.fail("curl --fail https://mastodon.local/about")
+    server.succeed("su - mastodon -s /bin/sh -c 'mastodon-env tootctl ip_blocks remove 192.168.0.0/16'")
+    client.succeed("curl --fail https://mastodon.local/about")
+
+    ca.shutdown()
+    server.shutdown()
+    client.shutdown()
+  '';
+})
diff --git a/nixpkgs/nixos/tests/web-apps/peertube.nix b/nixpkgs/nixos/tests/web-apps/peertube.nix
index 38b31f6c3325..706c598338e8 100644
--- a/nixpkgs/nixos/tests/web-apps/peertube.nix
+++ b/nixpkgs/nixos/tests/web-apps/peertube.nix
@@ -120,6 +120,9 @@ import ../make-test-python.nix ({pkgs, ...}:
     # Check if PeerTube is running
     client.succeed("curl --fail http://peertube.local:9000/api/v1/config/about | jq -r '.instance.name' | grep 'PeerTube\ Test\ Server'")
 
+    # Check PeerTube CLI version
+    assert "${pkgs.peertube.version}" in server.succeed('su - peertube -s /bin/sh -c "peertube --version"')
+
     client.shutdown()
     server.shutdown()
     database.shutdown()
diff --git a/nixpkgs/nixos/tests/wine.nix b/nixpkgs/nixos/tests/wine.nix
index cc449864c762..8135cb90a591 100644
--- a/nixpkgs/nixos/tests/wine.nix
+++ b/nixpkgs/nixos/tests/wine.nix
@@ -3,7 +3,7 @@
 }:
 
 let
-  inherit (pkgs.lib) concatMapStrings listToAttrs;
+  inherit (pkgs.lib) concatMapStrings listToAttrs optionals optionalString;
   inherit (import ../lib/testing-python.nix { inherit system pkgs; }) makeTest;
 
   hello32 = "${pkgs.pkgsCross.mingw32.hello}/bin/hello.exe";
@@ -27,6 +27,9 @@ let
               "bash -c 'wine ${exe} 2> >(tee wine-stderr >&2)'"
           )
           assert 'Hello, world!' in greeting
+        ''
+        # only the full version contains Gecko, but the error is not printed reliably in other variants
+        + optionalString (variant == "full") ''
           machine.fail(
               "fgrep 'Could not find Wine Gecko. HTML rendering will be disabled.' wine-stderr"
           )
@@ -37,5 +40,9 @@ let
 
   variants = [ "base" "full" "minimal" "staging" "unstable" "wayland" ];
 
-in listToAttrs (map (makeWineTest "winePackages" [ hello32 ]) variants
-  ++ map (makeWineTest "wineWowPackages" [ hello32 hello64 ]) variants)
+in
+listToAttrs (
+  map (makeWineTest "winePackages" [ hello32 ]) variants
+  ++ optionals pkgs.stdenv.is64bit
+    (map (makeWineTest "wineWowPackages" [ hello32 hello64 ]) variants)
+)
diff --git a/nixpkgs/nixos/tests/without-nix.nix b/nixpkgs/nixos/tests/without-nix.nix
index 2fc00b04144f..b21e9f2844f5 100644
--- a/nixpkgs/nixos/tests/without-nix.nix
+++ b/nixpkgs/nixos/tests/without-nix.nix
@@ -4,14 +4,23 @@ import ./make-test-python.nix ({ lib, ... }: {
     maintainers = [ ericson2314 ];
   };
 
-  nixpkgs.overlays = [
-    (self: super: {
-      nix = throw "don't want to use this";
-    })
-  ];
-
   nodes.machine = { ... }: {
     nix.enable = false;
+    nixpkgs.overlays = [
+      (self: super: {
+        nix = throw "don't want to use pkgs.nix";
+        nixVersions = lib.mapAttrs (k: throw "don't want to use pkgs.nixVersions.${k}") super.nixVersions;
+        # aliases, some deprecated
+        nix_2_3 = throw "don't want to use pkgs.nix_2_3";
+        nix_2_4 = throw "don't want to use pkgs.nix_2_4";
+        nix_2_5 = throw "don't want to use pkgs.nix_2_5";
+        nix_2_6 = throw "don't want to use pkgs.nix_2_6";
+        nixFlakes = throw "don't want to use pkgs.nixFlakes";
+        nixStable = throw "don't want to use pkgs.nixStable";
+        nixUnstable = throw "don't want to use pkgs.nixUnstable";
+        nixStatic = throw "don't want to use pkgs.nixStatic";
+      })
+    ];
   };
 
   testScript = ''
diff --git a/nixpkgs/pkgs/applications/accessibility/squeekboard/default.nix b/nixpkgs/pkgs/applications/accessibility/squeekboard/default.nix
index db139ab39d08..94129d05288b 100644
--- a/nixpkgs/pkgs/applications/accessibility/squeekboard/default.nix
+++ b/nixpkgs/pkgs/applications/accessibility/squeekboard/default.nix
@@ -5,6 +5,7 @@
 , ninja
 , pkg-config
 , gnome
+, gnome-desktop
 , glib
 , gtk3
 , wayland
@@ -54,7 +55,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     gtk3
-    gnome.gnome-desktop
+    gnome-desktop
     wayland
     wayland-protocols
     libxml2
diff --git a/nixpkgs/pkgs/applications/audio/airwave/default.nix b/nixpkgs/pkgs/applications/audio/airwave/default.nix
index 438159201de8..6ed488d7d643 100644
--- a/nixpkgs/pkgs/applications/audio/airwave/default.nix
+++ b/nixpkgs/pkgs/applications/audio/airwave/default.nix
@@ -3,7 +3,6 @@
 }:
 
 let
-
   version = "1.3.3";
 
   airwave-src = fetchFromGitHub {
@@ -38,7 +37,8 @@ let
 in
 
 multiStdenv.mkDerivation {
-  name = "airwave-${version}";
+  pname = "airwave";
+  inherit version;
 
   src = airwave-src;
 
diff --git a/nixpkgs/pkgs/applications/audio/aj-snapshot/default.nix b/nixpkgs/pkgs/applications/audio/aj-snapshot/default.nix
index 00fde01859c8..9143b5f5b08a 100644
--- a/nixpkgs/pkgs/applications/audio/aj-snapshot/default.nix
+++ b/nixpkgs/pkgs/applications/audio/aj-snapshot/default.nix
@@ -1,12 +1,11 @@
 { lib, stdenv, fetchurl, alsa-lib, jack2, minixml, pkg-config }:
 
 stdenv.mkDerivation rec {
-  name =  packageName + "-" + version ;
-  packageName = "aj-snapshot" ;
+  pname = "aj-snapshot" ;
   version = "0.9.9";
 
   src = fetchurl {
-    url = "mirror://sourceforge/${packageName}/${name}.tar.bz2";
+    url = "mirror://sourceforge/aj-snapshot/aj-snapshot-${version}.tar.bz2";
     sha256 = "0z8wd5yvxdmw1h1rj6km9h01xd4xmp4d86gczlix7hsc7zrf0wil";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/ams/default.nix b/nixpkgs/pkgs/applications/audio/ams/default.nix
index 388d8b44dcf5..7b209994103e 100644
--- a/nixpkgs/pkgs/applications/audio/ams/default.nix
+++ b/nixpkgs/pkgs/applications/audio/ams/default.nix
@@ -12,7 +12,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "ams";
+  pname = "ams";
   version = "unstable-2019-04-27";
 
   src = fetchgit {
diff --git a/nixpkgs/pkgs/applications/audio/bitwig-studio/bitwig-studio2.nix b/nixpkgs/pkgs/applications/audio/bitwig-studio/bitwig-studio2.nix
index 345750e9e2a9..0d93284e2942 100644
--- a/nixpkgs/pkgs/applications/audio/bitwig-studio/bitwig-studio2.nix
+++ b/nixpkgs/pkgs/applications/audio/bitwig-studio/bitwig-studio2.nix
@@ -2,7 +2,7 @@
   pulseaudio }:
 
 bitwig-studio1.overrideAttrs (oldAttrs: rec {
-  name = "bitwig-studio-${version}";
+  pname = "bitwig-studio";
   version = "2.5";
 
   src = fetchurl {
diff --git a/nixpkgs/pkgs/applications/audio/cardinal/default.nix b/nixpkgs/pkgs/applications/audio/cardinal/default.nix
index 9200a36f9f34..1e77ade6cdb4 100644
--- a/nixpkgs/pkgs/applications/audio/cardinal/default.nix
+++ b/nixpkgs/pkgs/applications/audio/cardinal/default.nix
@@ -22,7 +22,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "cardinal-${version}";
+  pname = "cardinal";
   version = "22.02";
 
   src = fetchurl {
diff --git a/nixpkgs/pkgs/applications/audio/cider/default.nix b/nixpkgs/pkgs/applications/audio/cider/default.nix
new file mode 100644
index 000000000000..edab6d109ef5
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/cider/default.nix
@@ -0,0 +1,30 @@
+{ appimageTools, lib, fetchurl }:
+
+appimageTools.wrapType2 rec {
+  pname = "cider";
+  version = "1.3.1308";
+
+  src = fetchurl {
+    url = "https://1308-429851205-gh.circle-artifacts.com/0/%7E/Cider/dist/artifacts/Cider-${version}.AppImage";
+    sha256 = "1lbyvn1c8155p039qfzx7jwad7km073phkmrzjm0w3ahdpwz3wgi";
+  };
+
+  extraInstallCommands =
+    let contents = appimageTools.extract { inherit pname version src; };
+    in ''
+      mv $out/bin/${pname}-${version} $out/bin/${pname}
+
+      install -m 444 -D ${contents}/${pname}.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/${pname}.desktop \
+        --replace 'Exec=AppRun' 'Exec=${pname}'
+      cp -r ${contents}/usr/share/icons $out/share
+    '';
+
+  meta = with lib; {
+    description = "A new look into listening and enjoying Apple Music in style and performance.";
+    homepage = "https://github.com/ciderapp/Cider";
+    license = licenses.agpl3;
+    maintainers = [ maintainers.cigrainger ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/audio/cmt/default.nix b/nixpkgs/pkgs/applications/audio/cmt/default.nix
index bb23f9b62bbd..1062d897c6bd 100644
--- a/nixpkgs/pkgs/applications/audio/cmt/default.nix
+++ b/nixpkgs/pkgs/applications/audio/cmt/default.nix
@@ -4,11 +4,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "cmt";
+  pname = "cmt";
   version = "1.17";
 
   src = fetchurl {
-    url = "http://www.ladspa.org/download/${name}_${version}.tgz";
+    url = "http://www.ladspa.org/download/cmt_${version}.tgz";
     sha256 = "07xd0xmwpa0j12813jpf87fr9hwzihii5l35mp8ady7xxfmxfmpb";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/cmusfm/default.nix b/nixpkgs/pkgs/applications/audio/cmusfm/default.nix
index 4cf91c698be7..17495ead355a 100644
--- a/nixpkgs/pkgs/applications/audio/cmusfm/default.nix
+++ b/nixpkgs/pkgs/applications/audio/cmusfm/default.nix
@@ -1,18 +1,24 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, curl, libnotify, gdk-pixbuf }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, curl, libnotify
+, gdk-pixbuf, libnotifySupport ? stdenv.isLinux, debug ? false }:
+
+stdenv.mkDerivation rec {
+  pname = "cmusfm";
+  version = "0.4.1";
 
-stdenv.mkDerivation {
-  version = "2021-05-19";
-  pname = "cmusfm-unstable";
   src = fetchFromGitHub {
     owner = "Arkq";
-    repo = "cmusfm";
-    rev = "a1f9f37c5819ca8a5b48e6185c2ec7ad478b9f1a";
-    sha256 = "19akgvh9gl99xvpmzgqv88w2mnnln7k6290dr5rn3h6a1ihvllaw";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1px2is80jdxchg8cpn5cizg6jvcbzyxl0qzs3bn0k3d10qjvdww5";
   };
-  # building
-  configureFlags = [ "--enable-libnotify" ];
+
+  configureFlags = lib.optional libnotifySupport "--enable-libnotify"
+    ++ lib.optional debug "--enable-debug";
+
   nativeBuildInputs = [ autoreconfHook pkg-config ];
-  buildInputs = [ curl libnotify gdk-pixbuf ];
+
+  buildInputs = [ curl gdk-pixbuf ]
+    ++ lib.optional libnotifySupport libnotify;
 
   meta = with lib; {
     description = "Last.fm and Libre.fm standalone scrobbler for the cmus music player";
diff --git a/nixpkgs/pkgs/applications/audio/deadbeef/default.nix b/nixpkgs/pkgs/applications/audio/deadbeef/default.nix
index c1cecc13ec56..e8b0ded4c00d 100644
--- a/nixpkgs/pkgs/applications/audio/deadbeef/default.nix
+++ b/nixpkgs/pkgs/applications/audio/deadbeef/default.nix
@@ -112,6 +112,5 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = [ maintainers.abbradar ];
-    repositories.git = "https://github.com/Alexey-Yakovenko/deadbeef";
   };
 }
diff --git a/nixpkgs/pkgs/applications/audio/eteroj.lv2/default.nix b/nixpkgs/pkgs/applications/audio/eteroj.lv2/default.nix
deleted file mode 100644
index ee95ce43ff52..000000000000
--- a/nixpkgs/pkgs/applications/audio/eteroj.lv2/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, libuv, lv2 }:
-
-stdenv.mkDerivation rec {
-  pname = "eteroj.lv2";
-  version = "0.4.0";
-
-  src = fetchFromGitHub {
-    owner  = "OpenMusicKontrollers";
-    repo   = pname;
-    rev    = version;
-    sha256 = "0lzdk7hlz3vqgshrfpj0izjad1fmsnzk2vxqrry70xgz8xglvnmn";
-  };
-
-  buildInputs = [ libuv lv2 ];
-  nativeBuildInputs = [ cmake pkg-config ];
-
-  meta = with lib; {
-    description = "OSC injection/ejection from/to UDP/TCP/Serial for LV2";
-    homepage = "https://open-music-kontrollers.ch/lv2/eteroj";
-    license = licenses.artistic2;
-    maintainers = with maintainers; [ magnetophon ];
-  };
-}
diff --git a/nixpkgs/pkgs/applications/audio/friture/default.nix b/nixpkgs/pkgs/applications/audio/friture/default.nix
index 7918ea178917..bb92af2dd5c5 100644
--- a/nixpkgs/pkgs/applications/audio/friture/default.nix
+++ b/nixpkgs/pkgs/applications/audio/friture/default.nix
@@ -1,16 +1,16 @@
-{ lib, fetchFromGitHub, fetchpatch, python3Packages, wrapQtAppsHook }:
+{ lib, fetchFromGitHub, python3Packages, wrapQtAppsHook }:
 
 let
   py = python3Packages;
 in py.buildPythonApplication rec {
   pname = "friture";
-  version = "0.48";
+  version = "0.49";
 
   src = fetchFromGitHub {
     owner = "tlecomte";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-oOH58jD49xAeSuP+l6tYUpwkYsnfeSGTt8x4DFzTY6g=";
+    sha256 = "sha256-xKgyBV/Qc+9PgXyxcT0xG1GXLC6KnjavJ/0SUE+9VSY=";
   };
 
   nativeBuildInputs = (with py; [ numpy cython scipy ]) ++
@@ -28,15 +28,6 @@ in py.buildPythonApplication rec {
     rtmixer
   ];
 
-  patches = [
-    # Backported fix that resolves an issue with setuptools packaging
-    (fetchpatch {
-      name = "fix-setuptools-packaging.patch";
-      url = "https://github.com/tlecomte/friture/commit/ea7210dae883edf17de8fec82f9428b18ee138b6.diff";
-      sha256 = "sha256-Kv/vmC8kcqfOgfIPQyZN46sbV6bezhq6pyj8bvke6s8=";
-    })
-  ];
-
   postPatch = ''
     # Remove version constraints from Python dependencies in setup.py
     sed -i -E "s/\"([A-Za-z0-9]+)(=|>|<)=[0-9\.]+\"/\"\1\"/g" setup.py
diff --git a/nixpkgs/pkgs/applications/audio/furnace/default.nix b/nixpkgs/pkgs/applications/audio/furnace/default.nix
index e7794175ac91..841a65e541fc 100644
--- a/nixpkgs/pkgs/applications/audio/furnace/default.nix
+++ b/nixpkgs/pkgs/applications/audio/furnace/default.nix
@@ -1,8 +1,9 @@
 { stdenv
 , lib
-, nix-update-script
+, gitUpdater
+, testVersion
+, furnace
 , fetchFromGitHub
-, fetchpatch
 , cmake
 , pkg-config
 , makeWrapper
@@ -18,24 +19,16 @@
 
 stdenv.mkDerivation rec {
   pname = "furnace";
-  version = "0.5.6";
+  version = "0.5.8";
 
   src = fetchFromGitHub {
     owner = "tildearrow";
     repo = "furnace";
     rev = "v${version}";
     fetchSubmodules = true;
-    sha256 = "sha256-BcaPQuDFkAaxFQKwoI6xdSWcyHo5VsqZcwf++JISqRs=";
+    sha256 = "103ymd3wa1sfsr6qg15vpcs53j350i7zidv3azlf7cynk6k28xim";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "0001-furnace-fix-wrong-include-path.patch";
-      url = "https://github.com/tildearrow/furnace/commit/456db22f9d9f0ed40d74fe50dde492e69e901fcc.patch";
-      sha256 = "17ikb1z9ldm7kdj00m4swsrq1qx94vlzhc6h020x3ryzwnglc8d3";
-    })
-  ];
-
   postPatch = ''
     # rtmidi is not used yet
     sed -i -e '/add_subdirectory(extern\/rtmidi/d' -e '/DEPENDENCIES_LIBRARIES rtmidi/d' CMakeLists.txt
@@ -85,8 +78,16 @@ stdenv.mkDerivation rec {
     cp -r ../demos $out/share/furnace/
   '';
 
-  passthru.updateScript = nix-update-script {
-    attrPath = pname;
+  passthru = {
+    updateScript = gitUpdater {
+      inherit pname version;
+      rev-prefix = "v";
+    };
+    tests.version = testVersion {
+      package = furnace;
+      # The command always exits with code 1
+      command = "(furnace --version || [ $? -eq 1 ])";
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/audio/gnome-podcasts/default.nix b/nixpkgs/pkgs/applications/audio/gnome-podcasts/default.nix
index 5a4876a98ddf..ec927bdc5b03 100644
--- a/nixpkgs/pkgs/applications/audio/gnome-podcasts/default.nix
+++ b/nixpkgs/pkgs/applications/audio/gnome-podcasts/default.nix
@@ -2,6 +2,7 @@
 , lib
 , rustPlatform
 , fetchFromGitLab
+, fetchpatch
 , meson
 , ninja
 , gettext
@@ -31,6 +32,16 @@ stdenv.mkDerivation rec {
     sha256 = "00vy1qkkpn76jdpybsq9qp8s6fh1ih10j73p2x43sl97m5g8944h";
   };
 
+  patches = [
+    # Fix build with meson 0.61, can be removed on next release.
+    # podcasts-gtk/resources/meson.build:5:0: ERROR: Function does not take positional arguments.
+    # podcasts-gtk/resources/meson.build:30:0: ERROR: Function does not take positional arguments.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/World/podcasts/-/commit/6614bb62ecbec7c3b18ea7fe44beb50fe7942b27.patch";
+      sha256 = "3TVKFV9V6Ofdajgkdc+j+yxsU21C4JWSc6GjLExSM00=";
+    })
+  ];
+
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
diff --git a/nixpkgs/pkgs/applications/audio/jamin/default.nix b/nixpkgs/pkgs/applications/audio/jamin/default.nix
index 325d115b5816..2bd23b821f13 100644
--- a/nixpkgs/pkgs/applications/audio/jamin/default.nix
+++ b/nixpkgs/pkgs/applications/audio/jamin/default.nix
@@ -4,7 +4,7 @@
 
 stdenv.mkDerivation rec {
   version = "0.95.0";
-  name = "jamin-${version}";
+  pname = "jamin";
 
   src = fetchurl {
     url = "mirror://sourceforge/jamin/jamin-${version}.tar.gz";
diff --git a/nixpkgs/pkgs/applications/audio/lv2lint/default.nix b/nixpkgs/pkgs/applications/audio/lv2lint/default.nix
new file mode 100644
index 000000000000..ada996866c88
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/lv2lint/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, lib, fetchurl, pkg-config, meson, ninja, lv2, lilv, curl, libelf }:
+
+stdenv.mkDerivation rec {
+  pname = "lv2lint";
+  version = "0.14.0";
+
+  src = fetchurl {
+    url = "https://git.open-music-kontrollers.ch/lv2/${pname}/snapshot/${pname}-${version}.tar.xz";
+    sha256 = "sha256-yPKM7RToLNBT+AXSjfxxpncESmv89/wcGCt//pnEGqI=";
+  };
+
+  nativeBuildInputs = [ pkg-config meson ninja ];
+  buildInputs = [ lv2 lilv curl libelf ];
+
+  meta = with lib; {
+    description = "Check whether a given LV2 plugin is up to the specification";
+    homepage = "https://open-music-kontrollers.ch/lv2/${pname}:";
+    license = licenses.artistic2;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix b/nixpkgs/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix
index 7ea5fa753c81..fd55bae6fd61 100644
--- a/nixpkgs/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix
+++ b/nixpkgs/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
 stdenv.mkDerivation rec {
-  name = "faustCompressors-v${version}";
+  pname = "faustCompressors";
   version = "1.2";
 
   src = fetchFromGitHub {
diff --git a/nixpkgs/pkgs/applications/audio/mid2key/default.nix b/nixpkgs/pkgs/applications/audio/mid2key/default.nix
index 5db17b99d1c3..0a5aecfecb0f 100644
--- a/nixpkgs/pkgs/applications/audio/mid2key/default.nix
+++ b/nixpkgs/pkgs/applications/audio/mid2key/default.nix
@@ -1,10 +1,13 @@
-{ lib, stdenv, fetchurl, alsa-lib, libX11, libXi, libXtst, xorgproto }:
+{ lib, stdenv, fetchFromGitHub, alsa-lib, libX11, libXi, libXtst, xorgproto }:
 
 stdenv.mkDerivation rec {
-  name = "mid2key-r1";
+  pname = "mid2key";
+  version = "1";
 
-  src = fetchurl {
-    url = "http://mid2key.googlecode.com/files/${name}.tar.gz";
+  src = fetchFromGitHub {
+    owner = "dnschneid";
+    repo = "mid2key";
+    rev = "v${version}";
     sha256 = "0j2vsjvdgx51nd1qmaa18mcy0yw9pwrhbv2mdwnf913bwsk4y904";
   };
 
diff --git a/nixpkgs/pkgs/applications/audio/midas/generic.nix b/nixpkgs/pkgs/applications/audio/midas/generic.nix
index 93a215e46b1b..b58bd0b27572 100644
--- a/nixpkgs/pkgs/applications/audio/midas/generic.nix
+++ b/nixpkgs/pkgs/applications/audio/midas/generic.nix
@@ -1,8 +1,7 @@
 { stdenv, fetchurl, lib, libX11, libXext, alsa-lib, freetype, brand, type, version, homepage, url, sha256, ... }:
 stdenv.mkDerivation rec {
-  inherit type;
-  baseName = "${type}-Edit";
-  name = "${lib.toLower baseName}-${version}";
+  pname = "${lib.toLower type}-edit";
+  inherit version;
 
   src = fetchurl {
     inherit url;
@@ -15,7 +14,7 @@ stdenv.mkDerivation rec {
 
   installPhase = ''
     mkdir -p $out/bin
-    cp ${baseName} $out/bin
+    cp ${pname} $out/bin
   '';
   preFixup = let
     # we prepare our library path in the let clause to avoid it become part of the input of mkDerivation
@@ -30,7 +29,7 @@ stdenv.mkDerivation rec {
     patchelf \
       --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
       --set-rpath "${libPath}" \
-      $out/bin/${baseName}
+      $out/bin/${pname}
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/audio/mopidy/youtube.nix b/nixpkgs/pkgs/applications/audio/mopidy/youtube.nix
index ecb8128032e5..386e372d7987 100644
--- a/nixpkgs/pkgs/applications/audio/mopidy/youtube.nix
+++ b/nixpkgs/pkgs/applications/audio/mopidy/youtube.nix
@@ -6,15 +6,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "mopidy-youtube";
-  version = "3.4";
-
-  disabled = python3.pythonOlder "3.7";
+  version = "3.5";
+  format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "natumbri";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0lm6nn926qkrwzvj64yracdixfrnv5zk243msjskrnlzkhgk01rk";
+    hash = "sha256-hlokysFFgZZYY7flghgRq6wVG824kpcLkXxk6nMhxn4=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
@@ -39,8 +38,10 @@ python3.pkgs.buildPythonApplication rec {
   ];
 
   disabledTestPaths = [
-    # Fails with an import error
+    # Disable tests which interact with Youtube
+    "tests/test_api.py"
     "tests/test_backend.py"
+    "tests/test_youtube.py"
   ];
 
   pythonImportsCheck = [
diff --git a/nixpkgs/pkgs/applications/audio/mopidy/ytmusic.nix b/nixpkgs/pkgs/applications/audio/mopidy/ytmusic.nix
index 92b754147852..9f393a0e7520 100644
--- a/nixpkgs/pkgs/applications/audio/mopidy/ytmusic.nix
+++ b/nixpkgs/pkgs/applications/audio/mopidy/ytmusic.nix
@@ -2,24 +2,33 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "mopidy-ytmusic";
-  version = "0.3.2";
+  version = "0.3.5";
 
   src = python3Packages.fetchPypi {
     inherit version;
     pname = "Mopidy-YTMusic";
-    sha256 = "sha256-BZtW+qHsTnOMj+jdAFI8ZMwGxJc9lNosgPJZGbt4JgU=";
+    sha256 = "0pncyxfqxvznb9y4ksndbny1yf5mxh4089ak0yz86dp2qi5j99iv";
   };
 
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace 'ytmusicapi>=0.20.0,<0.21.0' 'ytmusicapi>=0.20.0'
+  '';
+
   propagatedBuildInputs = [
     mopidy
     python3Packages.ytmusicapi
     python3Packages.pytube
   ];
 
+  pythonImportsCheck = [ "mopidy_ytmusic" ];
+
+  # has no tests
   doCheck = false;
 
   meta = with lib; {
     description = "Mopidy extension for playing music from YouTube Music";
+    homepage = "https://github.com/OzymandiasTheGreat/mopidy-ytmusic";
     license = licenses.asl20;
     maintainers = [ maintainers.nickhu ];
   };
diff --git a/nixpkgs/pkgs/applications/audio/musescore/darwin.nix b/nixpkgs/pkgs/applications/audio/musescore/darwin.nix
index 131417293207..2cf1b9ff68de 100644
--- a/nixpkgs/pkgs/applications/audio/musescore/darwin.nix
+++ b/nixpkgs/pkgs/applications/audio/musescore/darwin.nix
@@ -32,6 +32,5 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     platforms = platforms.darwin;
     maintainers = [];
-    repositories.git = "https://github.com/musescore/MuseScore";
   };
 }
diff --git a/nixpkgs/pkgs/applications/audio/musescore/default.nix b/nixpkgs/pkgs/applications/audio/musescore/default.nix
index 7662eadc4983..caa799c88f61 100644
--- a/nixpkgs/pkgs/applications/audio/musescore/default.nix
+++ b/nixpkgs/pkgs/applications/audio/musescore/default.nix
@@ -51,6 +51,5 @@ mkDerivation rec {
     license = licenses.gpl2;
     maintainers = with maintainers; [ vandenoever turion doronbehar ];
     platforms = platforms.linux;
-    repositories.git = "https://github.com/musescore/MuseScore";
   };
 }
diff --git a/nixpkgs/pkgs/applications/audio/ocenaudio/default.nix b/nixpkgs/pkgs/applications/audio/ocenaudio/default.nix
index 8a25955e2498..50697c6c81a9 100644
--- a/nixpkgs/pkgs/applications/audio/ocenaudio/default.nix
+++ b/nixpkgs/pkgs/applications/audio/ocenaudio/default.nix
@@ -11,11 +11,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ocenaudio";
-  version = "3.11.5";
+  version = "3.11.7";
 
   src = fetchurl {
     url = "https://www.ocenaudio.com/downloads/index.php/ocenaudio_debian9_64.deb?version=${version}";
-    sha256 = "sha256-YkSsvhBbju/NEkT7RspZQYnLkcx/5POA8VtxCAL3Wcc=";
+    sha256 = "sha256-fTeDRo7gCM1jXTQGm9MsmKu4KvTGDUogF3VSZWk91RM=";
   };
 
   nativeBuildInputs = [
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     rm -rf $out/opt
 
     # Create symlink bzip2 library
-    ln -s ${bzip2.out}/lib/libbz2.so.1 $out/libbz2.so.1.0
+    ln -s ${bzip2.out}/lib/libbz2.so.1 $out/lib/libbz2.so.1.0
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/audio/open-music-kontrollers/eteroj.nix b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/eteroj.nix
new file mode 100644
index 000000000000..60de97ca3d0d
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/eteroj.nix
@@ -0,0 +1,10 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  pname = "eteroj";
+  version = "0.10.0";
+
+  sha256 = "18iv1sdwm0g6b53shsylj6bf3svmvvy5xadhfsgb4xg39qr07djz";
+
+  description = "OSC injection/ejection from/to UDP/TCP/Serial for LV2";
+})
diff --git a/nixpkgs/pkgs/applications/audio/open-music-kontrollers/generic.nix b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/generic.nix
new file mode 100644
index 000000000000..a5ed7c41eb79
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/generic.nix
@@ -0,0 +1,37 @@
+{ stdenv, lib, fetchurl, pkg-config, meson, ninja, libGLU, lv2, serd, sord, libX11, libXext, glew, lv2lint
+, pname, version, sha256, description
+, url ? "https://git.open-music-kontrollers.ch/lv2/${pname}.lv2/snapshot/${pname}.lv2-${version}.tar.xz"
+, additionalBuildInputs ? []
+, postPatch ? ""
+, ...
+}:
+
+stdenv.mkDerivation {
+  inherit pname;
+
+  inherit version;
+
+  inherit postPatch;
+
+  src = fetchurl {
+    url = url;
+    sha256 = sha256;
+  };
+  nativeBuildInputs = [ pkg-config meson ninja ];
+  buildInputs = [
+    lv2
+    sord
+    libX11
+    libXext
+    glew
+    lv2lint
+  ] ++ additionalBuildInputs;
+
+  meta = with lib; {
+    description = description;
+    homepage = "https://open-music-kontrollers.ch/lv2/${pname}:";
+    license = licenses.artistic2;
+    maintainers = [ maintainers.magnetophon ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/audio/open-music-kontrollers/jit.nix b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/jit.nix
new file mode 100644
index 000000000000..937a6446a8da
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/jit.nix
@@ -0,0 +1,12 @@
+{ callPackage, lv2, fontconfig, libvterm-neovim, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  pname = "jit";
+  version = "unstable-2021-08-15";
+  url = "https://git.open-music-kontrollers.ch/lv2/${pname}.lv2/snapshot/${pname}.lv2-1f5d6935049fc0dd5a4dc257b84b36d2048f2d83.tar.xz";
+  sha256 = "sha256-XGICowVb0JgLJpn2h9GtViobYTdmo1LJ7/JFEyVsIqU=";
+
+  additionalBuildInputs = [ lv2 fontconfig libvterm-neovim ];
+
+  description = "A Just-in-Time C/Rust compiler embedded in an LV2 plugin";
+})
diff --git a/nixpkgs/pkgs/applications/audio/open-music-kontrollers/mephisto.nix b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/mephisto.nix
new file mode 100644
index 000000000000..de707edd3d91
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/mephisto.nix
@@ -0,0 +1,17 @@
+{ callPackage, faust, fontconfig, cmake, libvterm-neovim, libevdev, libglvnd, fira-code, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  pname = "mephisto";
+  version = "0.16.0";
+
+  sha256 = "0vgr3rsvdj4w0xpc5iqpvyqilk42wr9zs8bg26sfv3f2wi4hb6gx";
+
+  additionalBuildInputs = [ faust fontconfig cmake libvterm-neovim libevdev libglvnd fira-code ];
+
+  # see: https://github.com/OpenMusicKontrollers/mephisto.lv2/issues/6
+  postPatch = ''
+    sed -i 's/llvm-c-dsp/llvm-dsp-c/g' mephisto.c
+  '';
+
+  description = "A Just-in-time FAUST embedded in an LV2 plugin";
+})
diff --git a/nixpkgs/pkgs/applications/audio/open-music-kontrollers/midi_matrix.nix b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/midi_matrix.nix
new file mode 100644
index 000000000000..cd431d1a1d3d
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/midi_matrix.nix
@@ -0,0 +1,10 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  pname = "midi_matrix";
+  version = "0.30.0";
+
+  sha256 = "1nwmfxdzk4pvbwcgi3d7v4flqc10bmi2fxhrhrpfa7cafqs40ib6";
+
+  description = "An LV2 MIDI channel matrix patcher";
+})
diff --git a/nixpkgs/pkgs/applications/audio/open-music-kontrollers/moony.nix b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/moony.nix
new file mode 100644
index 000000000000..6087e0553765
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/moony.nix
@@ -0,0 +1,13 @@
+{ callPackage, cairo, libvterm-neovim, robodoc, cmake, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  pname = "moony";
+  version = "0.40.0";
+
+  sha256 = "sha256-9a3gR3lV8xFFTDZD+fJPCALVztgmggzyIpsPZCOw/uY=";
+
+  additionalBuildInputs = [ cairo libvterm-neovim robodoc cmake ];
+
+  description = "Realtime Lua as programmable glue in LV2";
+
+})
diff --git a/nixpkgs/pkgs/applications/audio/open-music-kontrollers/orbit.nix b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/orbit.nix
new file mode 100644
index 000000000000..930fc17760f9
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/orbit.nix
@@ -0,0 +1,12 @@
+{ callPackage, zlib, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  pname = "orbit";
+  version = "unstable-2021-04-13";
+  url = "https://git.open-music-kontrollers.ch/lv2/${pname}.lv2/snapshot/${pname}.lv2-f4aa620fc8d77418856581a6a955192af15b3860.tar.xz";
+  sha256 = "0z8d8h2w8fb2zx84n697jvy32dc0vf60jyiyh4gm22prgr2dvgkc";
+
+  additionalBuildInputs = [ zlib ];
+
+  description = "An LV2 time event manipulation plugin bundle";
+})
diff --git a/nixpkgs/pkgs/applications/audio/open-music-kontrollers/patchmatrix.nix b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/patchmatrix.nix
new file mode 100644
index 000000000000..cc343e0330c3
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/patchmatrix.nix
@@ -0,0 +1,13 @@
+{ callPackage, libjack2, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  pname = "patchmatrix";
+  version = "0.26.0";
+
+  url = "https://git.open-music-kontrollers.ch/lad/${pname}/snapshot/${pname}-${version}.tar.xz";
+  sha256 = "sha256-cqPHCnrAhHB6a0xmPUYOAsZfLsqnGpXEuGR1W6i6W7I=";
+
+  additionalBuildInputs = [ libjack2 ];
+
+  description = "A JACK patchbay in flow matrix style";
+})
diff --git a/nixpkgs/pkgs/applications/audio/open-music-kontrollers/router.nix b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/router.nix
new file mode 100644
index 000000000000..40d3a5e6fbcd
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/router.nix
@@ -0,0 +1,11 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  pname = "router";
+  version = "unstable-2021-04-13";
+
+  url = "https://git.open-music-kontrollers.ch/lv2/${pname}.lv2/snapshot/${pname}.lv2-7d754dd64c540d40b828166401617715dc235ca3.tar.xz";
+  sha256 = "sha256-LjaW5Xdxfjzd6IJ2ptHzmHt7fhU1HQo7ubZ4USVqRE8=";
+
+  description = "An atom/audio/CV router LV2 plugin bundle";
+})
diff --git a/nixpkgs/pkgs/applications/audio/open-music-kontrollers/sherlock.nix b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/sherlock.nix
new file mode 100644
index 000000000000..c8ae0afd09a7
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/sherlock.nix
@@ -0,0 +1,12 @@
+{ callPackage, sratom, flex, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  pname = "sherlock";
+  version = "0.28.0";
+
+  sha256 = "07zj88s1593fpw2s0r3ix7cj2icfd9zyirsyhr2i8l6d30b6n6fb";
+
+  additionalBuildInputs = [ sratom flex ];
+
+  description = "Plugins for visualizing LV2 atom, MIDI and OSC events";
+})
diff --git a/nixpkgs/pkgs/applications/audio/open-music-kontrollers/synthpod.nix b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/synthpod.nix
new file mode 100644
index 000000000000..9b7964e839bf
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/synthpod.nix
@@ -0,0 +1,13 @@
+{ callPackage, lilv, libjack2, alsa-lib, zita-alsa-pcmi, libxcb, xcbutilxrm, sratom, gtk2, qt5,  libvterm-neovim, robodoc, cmake,... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  pname = "synthpod";
+  version = "unstable-2021-10-22";
+
+  url = "https://git.open-music-kontrollers.ch/lv2/synthpod/snapshot/synthpod-6f284bdad882037a522c120af92b96d8abf2de60.tar.xz";
+  sha256 = "sha256-59WBlOKum5Pcmq2CfFfRHCNEa8uPCoBk0kSjFlIcypw=";
+
+  additionalBuildInputs = [ lilv libjack2 alsa-lib zita-alsa-pcmi libxcb xcbutilxrm sratom gtk2 qt5.qtbase qt5.wrapQtAppsHook libvterm-neovim robodoc cmake ];
+
+  description = "Lightweight Nonlinear LV2 Plugin Container";
+})
diff --git a/nixpkgs/pkgs/applications/audio/open-music-kontrollers/vm.nix b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/vm.nix
new file mode 100644
index 000000000000..8d432d356cf5
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/open-music-kontrollers/vm.nix
@@ -0,0 +1,10 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  pname = "vm";
+  version = "0.14.0";
+
+  sha256 = "013gq7jn556nkk1nq6zzh9nmp3fb36jd7ndzvyq3qryw7khzkagc";
+
+  description = "A programmable virtual machine LV2 plugin";
+})
diff --git a/nixpkgs/pkgs/applications/audio/patchage/default.nix b/nixpkgs/pkgs/applications/audio/patchage/default.nix
index f37cf8c5b32d..fffa05915a8e 100644
--- a/nixpkgs/pkgs/applications/audio/patchage/default.nix
+++ b/nixpkgs/pkgs/applications/audio/patchage/default.nix
@@ -1,24 +1,46 @@
-{ lib, stdenv, alsa-lib, boost, dbus-glib, fetchsvn, ganv, glibmm
-, gtkmm2, libjack2, pkg-config, python2, wafHook
+{ lib
+, stdenv
+, fetchFromGitLab
+, alsa-lib
+, boost
+, dbus-glib
+, ganv
+, glibmm
+, gtkmm2
+, libjack2
+, pkg-config
+, python3
+, wafHook
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "patchage";
-  version = "1.0.1";
-  src = fetchsvn {
-    url = "http://svn.drobilla.net/lad/trunk/patchage/";
-    rev = "5821";
-    sha256 = "1ar64l0sg468qzxj7i6ppgfqjpm92awcp5lzskamrf3ln17lrgj7";
+  version = "1.0.4";
+
+  src = fetchFromGitLab {
+    owner = "drobilla";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-feQXACsn2i2pJXs0EA9tIbtpl9Lxx5K4G7eG5VWuDV0=";
+    fetchSubmodules = true;
   };
 
   buildInputs = [
-    alsa-lib boost dbus-glib ganv glibmm gtkmm2 libjack2
-    pkg-config python2 wafHook
+    alsa-lib
+    boost
+    dbus-glib
+    ganv
+    glibmm
+    gtkmm2
+    libjack2
+    pkg-config
+    python3
+    wafHook
   ];
 
   meta = {
     description = "Modular patch bay for Jack and ALSA systems";
-    homepage = "http://non.tuxfamily.org";
+    homepage = "https://drobilla.net/software/patchage.html";
     license = lib.licenses.lgpl3;
     platforms = lib.platforms.linux;
     maintainers = [ lib.maintainers.nico202 ];
diff --git a/nixpkgs/pkgs/applications/audio/patchmatrix/default.nix b/nixpkgs/pkgs/applications/audio/patchmatrix/default.nix
deleted file mode 100644
index a5d135ce9d45..000000000000
--- a/nixpkgs/pkgs/applications/audio/patchmatrix/default.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-{ stdenv
-, lib
-, fetchFromGitHub
-, libjack2
-, lv2
-, meson
-, ninja
-, pkg-config
-, glew
-, xorg
-}:
-
-stdenv.mkDerivation rec {
-  pname = "patchmatrix";
-  version = "0.26.0";
-
-  src = fetchFromGitHub {
-    owner = "OpenMusicKontrollers";
-    repo = pname;
-    rev = version;
-    hash = "sha256-rR3y5rGzmib//caPmhthvMelAdHRvV0lMRfvcj9kcCg=";
-  };
-
-  nativeBuildInputs = [
-    meson
-    ninja
-    pkg-config
-  ];
-
-  buildInputs = [
-    glew
-    libjack2
-    lv2
-    xorg.libX11
-    xorg.libXext
-  ];
-
-  meta = with lib; {
-    description = "A JACK patchbay in flow matrix style";
-    homepage = "https://github.com/OpenMusicKontrollers/patchmatrix";
-    license = licenses.artistic2;
-    maintainers = with maintainers; [ pennae ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/nixpkgs/pkgs/applications/audio/plexamp/default.nix b/nixpkgs/pkgs/applications/audio/plexamp/default.nix
index 4f0ca02b628c..d86223dcdcb1 100644
--- a/nixpkgs/pkgs/applications/audio/plexamp/default.nix
+++ b/nixpkgs/pkgs/applications/audio/plexamp/default.nix
@@ -2,12 +2,12 @@
 
 let
   pname = "plexamp";
-  version = "4.0.3";
+  version = "4.1.0";
 
   src = fetchurl {
     url = "https://plexamp.plex.tv/plexamp.plex.tv/desktop/Plexamp-${version}.AppImage";
     name="${pname}-${version}.AppImage";
-    sha512 = "Nh0+/ibZnjcGXgQUe+QvukWpaX6/0nNPR4NIK0i2Bn6kBkihv9bkfF9xGpgqeE6H3CK+4e6ywg8y9RR+pJBBSA==";
+    sha512 = "N+WkH6n7MWfRd2rsk/2b/rABL6pcjpKa1iBZSHslIOEc5fYWjGAxjwwTU0RgSaqptS1DyPeCUeWuphWPZJsQgw==";
   };
 
   appimageContents = appimageTools.extractType2 {
@@ -33,7 +33,7 @@ in appimageTools.wrapType2 {
   meta = with lib; {
     description = "A beautiful Plex music player for audiophiles, curators, and hipsters";
     homepage = "https://plexamp.com/";
-    changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/41";
+    changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/42";
     license = licenses.unfree;
     maintainers = with maintainers; [ killercup synthetica ];
     platforms = [ "x86_64-linux" ];
diff --git a/nixpkgs/pkgs/applications/audio/pt2-clone/default.nix b/nixpkgs/pkgs/applications/audio/pt2-clone/default.nix
index 57c327d429d7..2577f61e8d51 100644
--- a/nixpkgs/pkgs/applications/audio/pt2-clone/default.nix
+++ b/nixpkgs/pkgs/applications/audio/pt2-clone/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pt2-clone";
-  version = "1.42";
+  version = "1.43";
 
   src = fetchFromGitHub {
     owner = "8bitbubsy";
     repo = "pt2-clone";
     rev = "v${version}";
-    sha256 = "sha256-CwnEvQsxrYStJ4RxnE0lHt1fBHQEZrjSldnQnTOPaE0=";
+    sha256 = "sha256-+sHGjgDqizv/9n0dDj8knsl+4MBfO3/pMkmD+MPsuNM=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/applications/audio/pyradio/default.nix b/nixpkgs/pkgs/applications/audio/pyradio/default.nix
index e95e5d9c6d15..44f7b2613936 100644
--- a/nixpkgs/pkgs/applications/audio/pyradio/default.nix
+++ b/nixpkgs/pkgs/applications/audio/pyradio/default.nix
@@ -2,7 +2,7 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "pyradio";
-  version = "0.8.9.14";
+  version = "0.8.9.16";
 
   propagatedBuildInputs = with python3Packages; [
     requests
@@ -14,7 +14,7 @@ python3Packages.buildPythonApplication rec {
     owner = "coderholic";
     repo = pname;
     rev = version;
-    sha256 = "sha256-9q+YsQPFB7Ql5WnXvPj100cD7pGkmr1hHztqbpZStt8=";
+    sha256 = "sha256-uerQfyGHWhLbO6UkLSMA1tdfW/8fDQkcm6hYIdwwC7I=";
   };
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/applications/audio/qmidiarp/default.nix b/nixpkgs/pkgs/applications/audio/qmidiarp/default.nix
index 618062dc2f37..487f86cf660f 100644
--- a/nixpkgs/pkgs/applications/audio/qmidiarp/default.nix
+++ b/nixpkgs/pkgs/applications/audio/qmidiarp/default.nix
@@ -10,13 +10,13 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "qmidiarp";
+  pname = "qmidiarp";
   version = "0.6.5";
 
   src = fetchgit {
     url = "https://git.code.sf.net/p/qmidiarp/code";
     sha256 = "1g2143gzfbihqr2zi3k2v1yn1x3mwfbb2khmcd4m4cq3hcwhhlx9";
-    rev = "qmidiarp-0.6.5";
+    rev = "qmidiarp-${version}";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/audio/qmmp/default.nix b/nixpkgs/pkgs/applications/audio/qmmp/default.nix
index 460b97479c6c..bed02f77e7b2 100644
--- a/nixpkgs/pkgs/applications/audio/qmmp/default.nix
+++ b/nixpkgs/pkgs/applications/audio/qmmp/default.nix
@@ -58,6 +58,5 @@ mkDerivation rec {
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
-    repositories.svn = "https://svn.code.sf.net/p/qmmp-dev/code";
   };
 }
diff --git a/nixpkgs/pkgs/applications/audio/rhythmbox/default.nix b/nixpkgs/pkgs/applications/audio/rhythmbox/default.nix
index 4898648599c3..2f35f1fe65ca 100644
--- a/nixpkgs/pkgs/applications/audio/rhythmbox/default.nix
+++ b/nixpkgs/pkgs/applications/audio/rhythmbox/default.nix
@@ -10,6 +10,7 @@
 , libnotify
 , libdmapsharing
 , gnome
+, gobject-introspection
 , totem-pl-parser
 , tdb
 , json-glib
@@ -65,6 +66,9 @@ in stdenv.mkDerivation rec {
     totem-pl-parser
     gnome.adwaita-icon-theme
 
+    gobject-introspection
+    python3.pkgs.pygobject3
+
     gst_all_1.gstreamer
     gst_all_1.gst-plugins-base
     gst_all_1.gst-plugins-good
@@ -83,6 +87,12 @@ in stdenv.mkDerivation rec {
     "--with-libsecret"
   ];
 
+  preFixup = ''
+    gappsWrapperArgs+=(
+      --prefix PYTHONPATH : "${python3.pkgs.pygobject3}/${python3.sitePackages}:$out/lib/rhythmbox/plugins/"
+    )
+  '';
+
   enableParallelBuilding = true;
 
   passthru = {
diff --git a/nixpkgs/pkgs/applications/audio/sfxr-qt/default.nix b/nixpkgs/pkgs/applications/audio/sfxr-qt/default.nix
index bf8b826f544f..0ffd754c0476 100644
--- a/nixpkgs/pkgs/applications/audio/sfxr-qt/default.nix
+++ b/nixpkgs/pkgs/applications/audio/sfxr-qt/default.nix
@@ -1,26 +1,36 @@
 { lib
 , mkDerivation
 , fetchFromGitHub
+, fetchpatch
 , cmake
 , extra-cmake-modules
 , qtbase
 , qtquickcontrols2
 , SDL
 , python3
+, callPackage
+, nixosTests
 }:
 
 mkDerivation rec {
   pname = "sfxr-qt";
-  version = "1.4.0";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "agateau";
     repo = "sfxr-qt";
     rev = version;
-    sha256 = "sha256-Mn+wcwu70BwsTLFlc12sOOe6U1AJ8hR7bCIPlPnCooE=";
+    sha256 = "sha256-Ce5NJe1f+C4pPmtenHYvtkxste+nPuxJoB+N7K2nyRo=";
     fetchSubmodules = true;
   };
 
+  # Remove on next release
+  patches = [(fetchpatch {
+    name = "sfxr-qr-missing-qpainterpath-include";
+    url = "https://github.com/agateau/sfxr-qt/commit/ef051f473654052112b647df987eb263e38faf47.patch";
+    sha256 = "sha256-bqMnxHUzdS5oG/2hfr5MvkpwrtZW+GTN5fS2WpV2W2c=";
+  })];
+
   nativeBuildInputs = [
     cmake
     extra-cmake-modules
@@ -33,6 +43,11 @@ mkDerivation rec {
     SDL
   ];
 
+  passthru.tests = {
+    export-square-wave = callPackage ./test-export-square-wave {};
+    sfxr-qt-starts = nixosTests.sfxr-qt;
+  };
+
   meta = with lib; {
     homepage = "https://github.com/agateau/sfxr-qt";
     description = "A sound effect generator, QtQuick port of sfxr";
diff --git a/nixpkgs/pkgs/applications/audio/sfxr-qt/test-export-square-wave/default.nix b/nixpkgs/pkgs/applications/audio/sfxr-qt/test-export-square-wave/default.nix
new file mode 100644
index 000000000000..eea0d0743e6a
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/sfxr-qt/test-export-square-wave/default.nix
@@ -0,0 +1,6 @@
+{ runCommand, sfxr-qt }:
+
+runCommand "sfxr-qt-test-export-square-wave" ''
+  mkdir $out
+  ${sfxr-qt}/bin/sfxr-qt --export --output $out/output.wav ${./input.sfxj}
+''
diff --git a/nixpkgs/pkgs/applications/audio/sfxr-qt/test-export-square-wave/input.sfxj b/nixpkgs/pkgs/applications/audio/sfxr-qt/test-export-square-wave/input.sfxj
new file mode 100644
index 000000000000..5ffd33b93f97
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/sfxr-qt/test-export-square-wave/input.sfxj
@@ -0,0 +1,29 @@
+{
+    "properties": {
+        "attackTime": 0,
+        "baseFrequency": 1,
+        "changeAmount": 0,
+        "changeSpeed": 0,
+        "decayTime": 1,
+        "deltaSlide": 0,
+        "dutySweep": 0,
+        "hpFilterCutoff": 0,
+        "hpFilterCutoffSweep": 0,
+        "lpFilterCutoff": 1,
+        "lpFilterCutoffSweep": 0,
+        "lpFilterResonance": 0,
+        "minFrequency": 0,
+        "phaserOffset": 0,
+        "phaserSweep": 0,
+        "repeatSpeed": 0,
+        "slide": 0,
+        "squareDuty": 0,
+        "sustainPunch": 0,
+        "sustainTime": 1,
+        "vibratoDepth": 0,
+        "vibratoSpeed": 0,
+        "volume": 1,
+        "waveForm": "Square"
+    },
+    "version": 1
+}
diff --git a/nixpkgs/pkgs/applications/audio/sisco.lv2/default.nix b/nixpkgs/pkgs/applications/audio/sisco.lv2/default.nix
index 3ecd4665f262..5aa407a15023 100644
--- a/nixpkgs/pkgs/applications/audio/sisco.lv2/default.nix
+++ b/nixpkgs/pkgs/applications/audio/sisco.lv2/default.nix
@@ -1,7 +1,6 @@
 { lib, stdenv, fetchFromGitHub, lv2, pkg-config, libGLU, libGL, cairo, pango, libjack2 }:
 
 let
-  name = "sisco.lv2-${version}";
   version = "0.7.0";
 
   robtkVersion = "80a2585253a861c81f0bfb7e4579c75f5c73af89";
@@ -22,7 +21,8 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  inherit name;
+  pname = "sisco.lv2";
+  inherit version;
 
   srcs = [ src robtkSrc ];
   sourceRoot = src.name;
diff --git a/nixpkgs/pkgs/applications/audio/snd/default.nix b/nixpkgs/pkgs/applications/audio/snd/default.nix
index 52789d64d10a..01e8f5d23611 100644
--- a/nixpkgs/pkgs/applications/audio/snd/default.nix
+++ b/nixpkgs/pkgs/applications/audio/snd/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "snd";
-  version = "22.1";
+  version = "22.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/snd/snd-${version}.tar.gz";
-    sha256 = "sha256-jrH0XRvPj9ySd8FSrOKf6qP5T1YSKrYBNHl6fz5dhkI=";
+    sha256 = "sha256-MZ8Vm/d+0r7YsXdySKcH5rqXBh4iFLyUe44LBOD58E0=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/applications/audio/sonic-pi/default.nix b/nixpkgs/pkgs/applications/audio/sonic-pi/default.nix
index f7a3e2e36744..e9d8f979e4ad 100644
--- a/nixpkgs/pkgs/applications/audio/sonic-pi/default.nix
+++ b/nixpkgs/pkgs/applications/audio/sonic-pi/default.nix
@@ -4,7 +4,11 @@
 , fetchFromGitHub
 , fftwSinglePrec
 , ruby
+, erlang
 , aubio
+, alsa-lib
+, rtmidi
+, libsndfile
 , cmake
 , pkg-config
 , boost
@@ -12,26 +16,44 @@
 , jack2
 , supercollider
 , qwt
-, osmid
 }:
 
 let
 
   supercollider_single_prec = supercollider.override {  fftw = fftwSinglePrec; };
 
-in
-
-mkDerivation rec {
-  version = "3.2.2";
   pname = "sonic-pi";
-
+  version = "3.3.1";
   src = fetchFromGitHub {
-    owner = "samaaron";
+    owner = "sonic-pi-net";
     repo = "sonic-pi";
     rev = "v${version}";
-    sha256 = "1nlkpkpg9iz2hvf5pymvk6lqhpdpjbdrvr0hrnkc3ymj7llvf1cm";
+    sha256 = "sha256-AE7iuSNnW1SAtBMplReGzXKcqD4GG23i10MIAWnlcPo=";
   };
 
+  # sonic pi uses it's own aubioonset with hardcoded parameters but will compile a whole aubio for it
+  # let's just build the aubioonset instead and link against aubio from nixpkgs
+  aubioonset = mkDerivation {
+    name = "aubioonset";
+    src = src;
+    sourceRoot = "source/app/external/aubio/examples";
+    buildInputs = [jack2 aubio libsndfile];
+    patchPhase = ''
+      sed -i "s@<aubio.h>@<aubio/aubio.h>@" jackio.c utils.h
+    '';
+    buildPhase = ''
+      gcc -o aubioonset -laubio jackio.c utils.c aubioonset.c
+    '';
+    installPhase = ''
+      install -D aubioonset $out/aubioonset
+    '';
+  };
+
+in
+
+mkDerivation rec {
+  inherit pname version src;
+
   buildInputs = [
     bash
     cmake
@@ -42,42 +64,36 @@ mkDerivation rec {
     aubio
     supercollider_single_prec
     boost
+    erlang
+    alsa-lib
+    rtmidi
   ];
 
   dontUseCmakeConfigure = true;
 
-  preConfigure = ''
-    patchShebangs .
-    substituteInPlace app/gui/qt/mainwindow.cpp \
-      --subst-var-by ruby "${ruby}/bin/ruby" \
-      --subst-var out
+  prePatch = ''
+    sed -i '/aubio/d' app/external/linux_build_externals.sh
+    sed -i '/aubio/d' app/linux-prebuild.sh
+    patchShebangs app
   '';
 
-  buildPhase = ''
-    export SONIC_PI_HOME=$TMPDIR
-    export AUBIO_LIB=${aubio}/lib/libaubio.so
-    export OSMID_DIR=app/server/native/osmid
-
-    mkdir -p $OSMID_DIR
-    cp ${osmid}/bin/{m2o,o2m} $OSMID_DIR
+  configurePhase = ''
+    runHook preConfigure
 
-    pushd app/server/ruby/bin
-      ./compile-extensions.rb
-      ./i18n-tool.rb -t
-    popd
+    ./app/linux-prebuild.sh
+    ./app/linux-config.sh
 
-    pushd app/gui/qt
-      cp -f utils/ruby_help.tmpl utils/ruby_help.h
-      ../../server/ruby/bin/qt-doc.rb -o utils/ruby_help.h
+    runHook postConfigure
+  '';
 
-      lrelease lang/*.ts
+  buildPhase = ''
+    runHook preBuild
 
-      mkdir build
-      pushd build
-        cmake -G "Unix Makefiles" ..
-        make
-      popd
+    pushd app/build
+    cmake --build . --config Release
     popd
+
+    runHook postBuild
   '';
 
   installPhase = ''
@@ -90,10 +106,14 @@ mkDerivation rec {
     mkdir -p $out/app
     cp -r app/server $out/app/
 
+    # We didn't build this during linux-prebuild.sh so copy from the separate derivation
+    cp ${aubioonset}/aubioonset $out/app/server/native/
+
     # Copy only necessary files for the gui app.
-    mkdir -p $out/app/gui/qt/build
+    mkdir -p $out/app/gui/qt
     cp -r app/gui/qt/{book,fonts,help,html,images,image_source,info,lang,theme} $out/app/gui/qt/
-    cp app/gui/qt/build/sonic-pi $out/app/gui/qt/build/sonic-pi
+    mkdir -p $out/app/build/gui/qt
+    cp app/build/gui/qt/sonic-pi $out/app/build/gui/qt/sonic-pi
 
     runHook postInstall
   '';
@@ -102,20 +122,18 @@ mkDerivation rec {
   dontWrapQtApps = true;
   preFixup = ''
     wrapQtApp "$out/bin/sonic-pi" \
-      --prefix PATH : ${lib.makeBinPath [ bash jack2 ruby supercollider ] } \
-      --set AUBIO_LIB "${aubio}/lib/libaubio.so"
+      --prefix PATH : ${lib.makeBinPath [ bash jack2 ruby supercollider erlang] }
     makeWrapper \
       $out/app/server/ruby/bin/sonic-pi-server.rb \
       $out/bin/sonic-pi-server \
-      --prefix PATH : ${lib.makeBinPath [ bash jack2 ruby supercollider ] } \
-      --set AUBIO_LIB "${aubio}/lib/libaubio.so"
+      --prefix PATH : ${lib.makeBinPath [ bash jack2 ruby supercollider erlang ] }
   '';
 
   meta = {
     homepage = "https://sonic-pi.net/";
     description = "Free live coding synth for everyone originally designed to support computing and music lessons within schools";
     license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ Phlogistique kamilchm c0deaddict ];
+    maintainers = with lib.maintainers; [ Phlogistique kamilchm c0deaddict sohalt ];
     platforms = lib.platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/applications/audio/sound-juicer/default.nix b/nixpkgs/pkgs/applications/audio/sound-juicer/default.nix
index c03b48c436bf..f162dcd045d8 100644
--- a/nixpkgs/pkgs/applications/audio/sound-juicer/default.nix
+++ b/nixpkgs/pkgs/applications/audio/sound-juicer/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchurl
+, fetchpatch
 , meson
 , ninja
 , pkg-config
@@ -28,6 +29,15 @@ stdenv.mkDerivation rec {
     sha256 = "08d5d81rz9sj3m5paw8fwbgxmhlbr7bcjdzpmzj832qvg8smydxf";
   };
 
+  patches = [
+    # Fix build with meson 0.61
+    # data/meson.build:2:5: ERROR: Function does not take positional arguments.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/sound-juicer/-/commit/9f97ca1faca396099f52264a9729aa355f8d122e.patch";
+      sha256 = "8JllVSQgI7KiBI5WP6QtXRiggYuD89NSJJp1hP4Dbao=";
+    })
+  ];
+
   nativeBuildInputs = [
     meson
     ninja
diff --git a/nixpkgs/pkgs/applications/audio/soundkonverter/default.nix b/nixpkgs/pkgs/applications/audio/soundkonverter/default.nix
index 1c1724fbce8b..d85367626416 100644
--- a/nixpkgs/pkgs/applications/audio/soundkonverter/default.nix
+++ b/nixpkgs/pkgs/applications/audio/soundkonverter/default.nix
@@ -45,7 +45,7 @@ let runtimeDeps = []
 
 in
 mkDerivation rec {
-  name = "soundkonverter";
+  pname = "soundkonverter";
   version = "3.0.1";
   src = fetchFromGitHub {
     owner = "dfaust";
diff --git a/nixpkgs/pkgs/applications/audio/spotify/default.nix b/nixpkgs/pkgs/applications/audio/spotify/default.nix
index ddc426416006..aa04eba7fe8a 100644
--- a/nixpkgs/pkgs/applications/audio/spotify/default.nix
+++ b/nixpkgs/pkgs/applications/audio/spotify/default.nix
@@ -10,14 +10,14 @@ let
   # If an update breaks things, one of those might have valuable info:
   # https://aur.archlinux.org/packages/spotify/
   # https://community.spotify.com/t5/Desktop-Linux
-  version = "1.1.77.643.g3c4c6fc6";
+  version = "1.1.80.699.gc3dac750";
   # To get the latest stable revision:
   # curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
   # To get general information:
   # curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
   # More examples of api usage:
   # https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
-  rev = "57";
+  rev = "58";
 
   deps = [
     alsa-lib
@@ -80,7 +80,7 @@ stdenv.mkDerivation {
   # https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
   src = fetchurl {
     url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
-    sha512 = "d9f8fe692db479bcce1f47c87b65c5ac6d62e16b76a0f9b2d693d82d2b9ed2c7cf370cb091ce8ecd291c47d1efdbaa897c9bffb210edd901dc3d5425995229f7";
+    sha512 = "91385a5a8de31d6e9f1945d23108447fd369c1cdc2e4d95cbb7cec5d403c3be14a1b0fabe3fb01aef809a39b033d289add1bcb307ab19c7fcb63689dbae57c53";
   };
 
   nativeBuildInputs = [ makeWrapper wrapGAppsHook squashfsTools ];
diff --git a/nixpkgs/pkgs/applications/audio/strawberry/default.nix b/nixpkgs/pkgs/applications/audio/strawberry/default.nix
index b607e2c9a0f1..fb440c6dc514 100644
--- a/nixpkgs/pkgs/applications/audio/strawberry/default.nix
+++ b/nixpkgs/pkgs/applications/audio/strawberry/default.nix
@@ -36,13 +36,13 @@
 
 mkDerivation rec {
   pname = "strawberry";
-  version = "1.0.2";
+  version = "1.0.3";
 
   src = fetchFromGitHub {
     owner = "jonaski";
     repo = pname;
     rev = version;
-    sha256 = "sha256-/pwHWmQTV1QBK+5SS0/NC6wMm2QQm+iCZArxiHjn4M4=";
+    sha256 = "sha256-wa7r6maHAgCTD/TFjqtMuoRt1BqQ38T8KpbMUOoS2ZE=";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/applications/audio/sunvox/default.nix b/nixpkgs/pkgs/applications/audio/sunvox/default.nix
index b6a60c0de641..503079b9ed4b 100644
--- a/nixpkgs/pkgs/applications/audio/sunvox/default.nix
+++ b/nixpkgs/pkgs/applications/audio/sunvox/default.nix
@@ -13,11 +13,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "SunVox";
-  version = "2.0c";
+  version = "2.0e";
 
   src = fetchurl {
-    url = "http://www.warmplace.ru/soft/sunvox/sunvox-${version}.zip";
-    sha256 = "949e5348da9faa92ce17aac943b58027bdb797b65c7f5f365ef0610bb6dd8a3d";
+    url = "https://www.warmplace.ru/soft/sunvox/sunvox-${version}.zip";
+    sha256 = "sha256-v4dQnRr7pusOAHX8ytDChKixYxEIjg30vOTD6uA/S0o=";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/nixpkgs/pkgs/applications/audio/synaesthesia/default.nix b/nixpkgs/pkgs/applications/audio/synaesthesia/default.nix
new file mode 100644
index 000000000000..efdd6f7e73a7
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/synaesthesia/default.nix
@@ -0,0 +1,33 @@
+{ stdenv
+, lib
+, fetchzip
+, SDL
+, pkg-config
+, libSM
+}:
+stdenv.mkDerivation rec {
+  pname = "synaesthesia";
+  version = "2.4";
+
+  src = fetchzip {
+    url = "https://logarithmic.net/pfh-files/synaesthesia/synaesthesia-${version}.tar.gz";
+    sha256 = "0nzsdxbah0shm2vlziaaw3ilzlizd3d35rridkpg40nfxmq84qnx";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
+  buildInputs = [
+    SDL
+    libSM
+  ];
+
+  meta = {
+    homepage = "https://logarithmic.net/pfh/synaesthesia";
+    description = "Program for representing sounds visually";
+    license = lib.licenses.gpl2Only;
+    platforms = lib.platforms.linux;
+    maintainers = [ lib.maintainers.infinisil ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/audio/tonelib-gfx/default.nix b/nixpkgs/pkgs/applications/audio/tonelib-gfx/default.nix
index 108f39925b4f..a0b3cf2879e6 100644
--- a/nixpkgs/pkgs/applications/audio/tonelib-gfx/default.nix
+++ b/nixpkgs/pkgs/applications/audio/tonelib-gfx/default.nix
@@ -16,11 +16,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tonelib-gfx";
-  version = "4.7.0";
+  version = "4.7.5";
 
   src = fetchurl {
-    url = "https://www.tonelib.net/download/0930/ToneLib-GFX-amd64.deb";
-    hash = "sha256-BcbX0dz94B4mj6QeQsnuZmwXAaXH+yJjnrUPgEYVqkU=";
+    url = "https://www.tonelib.net/download/220214/ToneLib-GFX-amd64.deb";
+    hash = "sha256-GUSyarqG1V5O6ayAedeGqmOA+UABQDpAZ+dsorh7das=";
   };
 
   nativeBuildInputs = [ autoPatchelfHook dpkg ];
diff --git a/nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix b/nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix
index 1c0d51ed88be..17b3b1197f45 100644
--- a/nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix
+++ b/nixpkgs/pkgs/applications/audio/tonelib-jam/default.nix
@@ -16,11 +16,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tonelib-jam";
-  version = "4.7.0";
+  version = "4.7.5";
 
   src = fetchurl {
-    url = "https://www.tonelib.net/download/0930/ToneLib-Jam-amd64.deb";
-    sha256 = "sha256-xyBDp3DQVC+nK2WGnvrfUfD+9GvwtbldXgExTMmCGw0=";
+    url = "https://www.tonelib.net/download/220214/ToneLib-Jam-amd64.deb";
+    sha256 = "sha256-alkdoEhN58o9IGZ8sB39ctTpouMSmvgn6tbrKFneKPI=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/audio/tonelib-metal/default.nix b/nixpkgs/pkgs/applications/audio/tonelib-metal/default.nix
new file mode 100644
index 000000000000..9acb6982c6a7
--- /dev/null
+++ b/nixpkgs/pkgs/applications/audio/tonelib-metal/default.nix
@@ -0,0 +1,60 @@
+{ lib
+, stdenv
+, fetchurl
+, autoPatchelfHook
+, dpkg
+, alsa-lib
+, freetype
+, libglvnd
+, mesa
+, curl
+, libXcursor
+, libXinerama
+, libXrandr
+, libXrender
+, libjack2
+}:
+
+stdenv.mkDerivation rec {
+  pname = "tonelib-metal";
+  version = "1.1.0";
+
+  src = fetchurl {
+    url = "https://www.tonelib.net/download/220218/ToneLib-Metal-amd64.deb";
+    sha256 = "sha256-F5EKwNQ9f/kdZLFI+QDZHvwevV/vDnxMdSmT/vnX6ug=";
+  };
+
+  nativeBuildInputs = [ autoPatchelfHook dpkg ];
+
+  buildInputs = [
+    stdenv.cc.cc.lib
+    alsa-lib
+    freetype
+    libglvnd
+    mesa
+  ] ++ runtimeDependencies;
+
+  runtimeDependencies = map lib.getLib [
+    curl
+    libXcursor
+    libXinerama
+    libXrandr
+    libXrender
+    libjack2
+  ];
+
+  unpackCmd = "dpkg -x $curSrc source";
+
+  installPhase = ''
+    mv usr $out
+    substituteInPlace $out/share/applications/ToneLib-Metal.desktop --replace /usr/ $out/
+ '';
+
+  meta = with lib; {
+    description = "ToneLib Metal – Guitar amp simulator targeted at metal players";
+    homepage = "https://tonelib.net/";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ dan4ik605743 ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/audio/vocal/default.nix b/nixpkgs/pkgs/applications/audio/vocal/default.nix
index 3d6f3aef9e1b..0c80dda703e7 100644
--- a/nixpkgs/pkgs/applications/audio/vocal/default.nix
+++ b/nixpkgs/pkgs/applications/audio/vocal/default.nix
@@ -56,7 +56,6 @@ stdenv.mkDerivation rec {
     libgee
     libnotify
     libunity
-    pantheon.elementary-icon-theme
     pantheon.granite
     sqlite
     webkitgtk
@@ -73,6 +72,13 @@ stdenv.mkDerivation rec {
     })
   ];
 
+  postPatch = ''
+    # Fix build with vala 0.56
+    # https://github.com/needle-and-thread/vocal/pull/503
+    substituteInPlace src/Vocal.vala \
+      --replace "public const OptionEntry[] app_options" "private const OptionEntry[] app_options"
+  '';
+
   passthru = {
     updateScript = nix-update-script {
       attrPath = pname;
diff --git a/nixpkgs/pkgs/applications/backup/pika-backup/default.nix b/nixpkgs/pkgs/applications/backup/pika-backup/default.nix
index e0b8b2fca14f..604456c6583a 100644
--- a/nixpkgs/pkgs/applications/backup/pika-backup/default.nix
+++ b/nixpkgs/pkgs/applications/backup/pika-backup/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitLab
+, fetchpatch
 , rustPlatform
 , substituteAll
 , desktop-file-utils
@@ -40,6 +41,13 @@ stdenv.mkDerivation rec {
       src = ./borg-path.patch;
       borg = "${borgbackup}/bin/borg";
     })
+    # Fix build with meson 0.61, can be removed on next release.
+    # https://gitlab.gnome.org/World/pika-backup/-/issues/156
+    # https://github.com/mesonbuild/meson/issues/9441
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/World/pika-backup/-/commit/54be149c88fd69fb9e74b7362fe7182863237869.patch";
+      sha256 = "sha256-Tffxo5hlf/gSkp1GfyL4eHthX49tuTq6B+S53N8oA2M=";
+    })
   ];
 
   postPatch = ''
@@ -73,5 +81,6 @@ stdenv.mkDerivation rec {
     changelog = "https://gitlab.gnome.org/World/pika-backup/-/blob/v${version}/CHANGELOG.md";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ dotlambda ];
+    platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/applications/blockchains/alfis/default.nix b/nixpkgs/pkgs/applications/blockchains/alfis/default.nix
index 2c8526c6292e..28ce7512129e 100644
--- a/nixpkgs/pkgs/applications/blockchains/alfis/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/alfis/default.nix
@@ -14,16 +14,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "alfis";
-  version = "0.6.10";
+  version = "0.6.11";
 
   src = fetchFromGitHub {
     owner = "Revertron";
     repo = "Alfis";
     rev = "v${version}";
-    sha256 = "sha256-JJTU3wZ3cG5TmgHYShWJaNAZBA4z3qZXPfb7WUX6/80=";
+    sha256 = "sha256-vm/JBJh58UaSem18RpJuPUzM2GCy4RfCb6Hr1B7KWQA=";
   };
 
-  cargoSha256 = "sha256-BsFe1Fp+Q5Gqa1w4xov0tVLDKV7S+6b5fKBl09ggLB0=";
+  cargoSha256 = "sha256-8ijGO8up0qVQ/kVX5/DveKyovYLh7jm+d7vooS1waAA=";
 
   checkFlags = [
     # these want internet access, disable them
diff --git a/nixpkgs/pkgs/applications/blockchains/bitcoin-unlimited/default.nix b/nixpkgs/pkgs/applications/blockchains/bitcoin-unlimited/default.nix
index 802a19167a97..fe7acb0bbe1d 100644
--- a/nixpkgs/pkgs/applications/blockchains/bitcoin-unlimited/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/bitcoin-unlimited/default.nix
@@ -6,7 +6,7 @@
 with lib;
 
 stdenv.mkDerivation rec {
-  name = "bitcoin" + (toString (optional (!withGui) "d")) + "-unlimited-" + version;
+  pname = "bitcoin" + optionalString (!withGui) "d" + "-unlimited";
   version = "1.9.2.0";
 
   src = fetchFromGitHub {
diff --git a/nixpkgs/pkgs/applications/blockchains/chia/default.nix b/nixpkgs/pkgs/applications/blockchains/chia/default.nix
index f912ef41677e..e8527559c3af 100644
--- a/nixpkgs/pkgs/applications/blockchains/chia/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/chia/default.nix
@@ -6,14 +6,14 @@
 
 let chia = python3Packages.buildPythonApplication rec {
   pname = "chia";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "Chia-Network";
     repo = "chia-blockchain";
     rev = version;
     fetchSubmodules = true;
-    hash = "sha256-eUvZc/7gqGkCB2tNKdwqKOmOgEcG9a/7TSvvyQzhNcQ=";
+    hash = "sha256-nH6rCzIQu5oWsdEHa+UkvbWeUGjrtpEKVEcLmSoor5k=";
   };
 
   postPatch = ''
@@ -50,6 +50,7 @@ let chia = python3Packages.buildPythonApplication rec {
     dnslib
     dnspythonchia
     fasteners
+    filelock
     keyrings-cryptfile
     pyyaml
     setproctitle
diff --git a/nixpkgs/pkgs/applications/blockchains/dogecoin/default.nix b/nixpkgs/pkgs/applications/blockchains/dogecoin/default.nix
index 35b9fb026e39..8094959a248d 100644
--- a/nixpkgs/pkgs/applications/blockchains/dogecoin/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/dogecoin/default.nix
@@ -6,7 +6,7 @@
 
 with lib;
 stdenv.mkDerivation rec {
-  name = "dogecoin" + (toString (optional (!withGui) "d")) + "-" + version;
+  pname = "dogecoin" + optionalString (!withGui) "d";
   version = "1.14.5";
 
   src = fetchFromGitHub {
diff --git a/nixpkgs/pkgs/applications/blockchains/litecoin/default.nix b/nixpkgs/pkgs/applications/blockchains/litecoin/default.nix
index c80ef342c752..0a82ca0ce2c3 100644
--- a/nixpkgs/pkgs/applications/blockchains/litecoin/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/litecoin/default.nix
@@ -11,8 +11,7 @@
 with lib;
 
 mkDerivation rec {
-
-  name = "litecoin" + (toString (optional (!withGui) "d")) + "-" + version;
+  pname = "litecoin" + optionalString (!withGui) "d";
   version = "0.18.1";
 
   src = fetchFromGitHub {
diff --git a/nixpkgs/pkgs/applications/blockchains/namecoin/default.nix b/nixpkgs/pkgs/applications/blockchains/namecoin/default.nix
index 1851c581c9ae..d5c739e00f4a 100644
--- a/nixpkgs/pkgs/applications/blockchains/namecoin/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/namecoin/default.nix
@@ -3,8 +3,8 @@
 
 with lib;
 stdenv.mkDerivation rec {
+  pname = "namecoin" + optionalString (!withGui) "d";
   version = "nc22.0";
-  name = "namecoin" + toString (optional (!withGui) "d") + "-" + version;
 
   src = fetchFromGitHub {
     owner = "namecoin";
diff --git a/nixpkgs/pkgs/applications/blockchains/polkadot/default.nix b/nixpkgs/pkgs/applications/blockchains/polkadot/default.nix
index 1210caaa2519..8199504839a0 100644
--- a/nixpkgs/pkgs/applications/blockchains/polkadot/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/polkadot/default.nix
@@ -5,18 +5,25 @@
 , protobuf
 , rustPlatform
 , writeShellScriptBin
+, Security
 }:
 rustPlatform.buildRustPackage rec {
   pname = "polkadot";
-  version = "0.9.16";
+  version = "0.9.18";
 
   src = fetchFromGitHub {
     owner = "paritytech";
     repo = "polkadot";
     rev = "v${version}";
-    sha256 = "sha256-NXuYUmo80rrBZCcuISKon48SKyyJrkzCEhggxaJNfBM=";
+    sha256 = "sha256-pjHSiVspBV15jKUFv+Uf2l3tah40l55Pv8vwDuwgwjc=";
 
-    # see the comment below on fakeGit for how this is used
+    # the build process of polkadot requires a .git folder in order to determine
+    # the git commit hash that is being built and add it to the version string.
+    # since having a .git folder introduces reproducibility issues to the nix
+    # build, we check the git commit hash after fetching the source and save it
+    # into a .git_commit file, and then delete the .git folder. we can then use
+    # this file to populate an environment variable with the commit hash, which
+    # is picked up by polkadot's build process.
     leaveDotGit = true;
     postFetch = ''
       ( cd $out; git rev-parse --short HEAD > .git_commit )
@@ -24,28 +31,16 @@ rustPlatform.buildRustPackage rec {
     '';
   };
 
-  cargoSha256 = "sha256-PIORMTzQbMdlrKwuF4MiGrLlg2nQpgLRsaHHeiCbqrg=";
+  cargoSha256 = "sha256-Gc5WbayQUlsl7Fk8NyLPh2Zg2yrLl3WJqKorNZMLi94=";
 
-  nativeBuildInputs =
-    let
-      # the build process of polkadot requires a .git folder in order to determine
-      # the git commit hash that is being built and add it to the version string.
-      # since having a .git folder introduces reproducibility issues to the nix
-      # build, we check the git commit hash after fetching the source and save it
-      # into a .git_commit file, and then delete the .git folder. then we create a
-      # fake git command that will just return the contents of this file, which will
-      # be used when the polkadot build calls `git rev-parse` to fetch the commit
-      # hash.
-      fakeGit = writeShellScriptBin "git" ''
-        if [[ $@ = "rev-parse --short HEAD" ]]; then
-          cat /build/source/.git_commit
-        else
-          >&2 echo "Unknown command: $@"
-          exit 1
-        fi
-      '';
-    in
-    [ clang fakeGit ];
+  buildInputs = [ Security ];
+
+  nativeBuildInputs = [ clang ];
+
+  preBuild = ''
+    export SUBSTRATE_CLI_GIT_COMMIT_HASH=$(cat .git_commit)
+    rm .git_commit
+  '';
 
   LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
   PROTOC = "${protobuf}/bin/protoc";
@@ -64,6 +59,6 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://polkadot.network";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ akru andresilva asymmetric FlorianFranzen RaghavSood ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/applications/blockchains/trezor-suite/default.nix b/nixpkgs/pkgs/applications/blockchains/trezor-suite/default.nix
index 43f41e5aeef7..9c38a3f78615 100644
--- a/nixpkgs/pkgs/applications/blockchains/trezor-suite/default.nix
+++ b/nixpkgs/pkgs/applications/blockchains/trezor-suite/default.nix
@@ -8,7 +8,7 @@
 
 let
   pname = "trezor-suite";
-  version = "22.1.1";
+  version = "22.3.2";
   name = "${pname}-${version}";
 
   suffix = {
@@ -19,8 +19,8 @@ let
   src = fetchurl {
     url = "https://github.com/trezor/${pname}/releases/download/v${version}/Trezor-Suite-${version}-${suffix}.AppImage";
     sha512 = { # curl -Lfs https://github.com/trezor/trezor-suite/releases/latest/download/latest-linux{-arm64,}.yml | grep ^sha512 | sed 's/: /-/'
-      aarch64-linux = "sha512-hRPwhKdAqiHmsaIuNm5r3ZuKhUh+IipR5/5N/9PwiLEfaSQRWink0dUwyuUoWzy4DyGabLQyIWbQRvR7eRGKJA==";
-      x86_64-linux  = "sha512-W4S7W4TeDtSwWCj6N6EoJJOCYG3m1pK3D+UPlsp7B7VY/0uBtI31+tS28E6TUgXZUttr8IIbqzJYWCuyLfDthQ==";
+      aarch64-linux = "sha512-GW8wmfTjuWrXijyPKeDJgF+mas1pfEMgAASmlvCURfFwg+oSL0B/0Z2qm5QRXIHmyd7eg/Zd8nEZL7Fg2Lb9ww==";
+      x86_64-linux  = "sha512-/XQ/sI0TP++3KHlkBXLHe/SVGKcmyjT7vPkV0NCK4rlL70VE+wKLKQK6XKp4V81B5w2+3a/uPOWtmcVr5iVkSA==";
     }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
   };
 
diff --git a/nixpkgs/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix b/nixpkgs/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix
index ea7fc1375747..e84f305526b4 100644
--- a/nixpkgs/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix
+++ b/nixpkgs/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix
@@ -1,15 +1,16 @@
-{ lib, stdenv, fetchgit, pkg-config, linkFarm, lightdm-enso-os-greeter
+{ lib, stdenv, fetchFromGitHub, pkg-config, linkFarm, lightdm-enso-os-greeter
 , dbus, pcre, libepoxy, libXdmcp, at-spi2-core, libxklavier, libxkbcommon, libpthreadstubs
 , gtk3, vala, cmake, libgee, libX11, lightdm, gdk-pixbuf, clutter-gtk, wrapGAppsHook, librsvg }:
 
 stdenv.mkDerivation {
-  version = "0.2.1";
   pname = "lightdm-enso-os-greeter";
+  version = "0.2.1";
 
-  src = fetchgit {
-    url = "https://github.com/nick92/Enso-OS";
+  src = fetchFromGitHub {
+    owner = "nick92";
+    repo = "Enso-OS";
     rev = "ed48330bfd986072bd82ac542ed8f8a7365c6427";
-    sha256 = "11jm181jq1vbn83h235avpdxz7pqq6prqyzki5yryy53mkj4kgxz";
+    sha256 = "sha256-v79J5KyjeJ99ifN7nK/B+J7f292qDAEHsmsHLAMKVYY=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/applications/editors/apostrophe/default.nix b/nixpkgs/pkgs/applications/editors/apostrophe/default.nix
index e5cfeb964bd7..1f9f64822f1b 100644
--- a/nixpkgs/pkgs/applications/editors/apostrophe/default.nix
+++ b/nixpkgs/pkgs/applications/editors/apostrophe/default.nix
@@ -13,14 +13,14 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "apostrophe";
-  version = "2.5";
+  version = "2.6.1";
 
   src = fetchFromGitLab {
     owner  = "World";
     repo   = pname;
     domain = "gitlab.gnome.org";
     rev    = "v${version}";
-    sha256 = "06yfiflmj3ip7ppcz41nb3xpgb5ggw5h74w0v87yaqqkq7qh31lp";
+    sha256 = "awaXXSUiEIzOAj9Zw8K961HuIKsLFi3QKETUTTIaTjk=";
   };
 
   nativeBuildInputs = [ meson ninja pkg-config desktop-file-utils
diff --git a/nixpkgs/pkgs/applications/editors/bless/default.nix b/nixpkgs/pkgs/applications/editors/bless/default.nix
index e613747aeab1..f79d72792317 100644
--- a/nixpkgs/pkgs/applications/editors/bless/default.nix
+++ b/nixpkgs/pkgs/applications/editors/bless/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchFromGitHub
 , pkg-config
 , mono
@@ -12,6 +13,7 @@
 , libxslt
 , docbook_xsl
 , python3
+, itstool
 }:
 
 stdenv.mkDerivation rec {
@@ -25,11 +27,6 @@ stdenv.mkDerivation rec {
     hash = "sha256-rS+vJX0y9v1TiPsRfABroHiTuENQKEOxNsyKwagRuHM=";
   };
 
-  postPatch = ''
-    sed "s|get_option('tests')|false|g" -i meson.build
-    patchShebangs .
-  '';
-
   buildInputs = [
     gtk-sharp-2_0
     mono
@@ -47,8 +44,17 @@ stdenv.mkDerivation rec {
     libxslt
     docbook_xsl
     python3
+    itstool
+  ];
+
+  mesonFlags = [
+    "-Dtests=false" # requires NUnit
   ];
 
+  postPatch = ''
+    patchShebangs .
+  '';
+
   preFixup = ''
     MPATH="${gtk-sharp-2_0}/lib/mono/gtk-sharp-2.0:${glib.out}/lib:${gtk2-x11}/lib:${gtk-sharp-2_0}/lib"
     wrapProgram $out/bin/bless --prefix MONO_PATH : "$MPATH" --prefix LD_LIBRARY_PATH : "$MPATH" --prefix PATH : ${lib.makeBinPath [ mono ]}
diff --git a/nixpkgs/pkgs/applications/editors/bluej/default.nix b/nixpkgs/pkgs/applications/editors/bluej/default.nix
index 100178f7daf1..b8a651b2d44f 100644
--- a/nixpkgs/pkgs/applications/editors/bluej/default.nix
+++ b/nixpkgs/pkgs/applications/editors/bluej/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "bluej";
-  version = "5.0.2";
+  version = "5.0.3";
   src = fetchurl {
     # We use the deb here. First instinct might be to go for the "generic" JAR
     # download, but that is actually a graphical installer that is much harder
     # to unpack than the deb.
     url = "https://www.bluej.org/download/files/BlueJ-linux-${builtins.replaceStrings ["."] [""] version}.deb";
-    sha256 = "sha256-9sWfVQF/wCiVDKBmesMpM+5BHjFUPszm6U1SgJNQ8lE=";
+    sha256 = "sha256-OarqmptxZc7xEEYeoCVqHXkAvfzfSYx5nUp/iWPyoqw=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/applications/editors/cudatext/default.nix b/nixpkgs/pkgs/applications/editors/cudatext/default.nix
index 2b58ba50bca6..d142551a1141 100644
--- a/nixpkgs/pkgs/applications/editors/cudatext/default.nix
+++ b/nixpkgs/pkgs/applications/editors/cudatext/default.nix
@@ -38,13 +38,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "cudatext";
-  version = "1.156.2";
+  version = "1.159.2";
 
   src = fetchFromGitHub {
     owner = "Alexey-T";
     repo = "CudaText";
     rev = version;
-    sha256 = "sha256-waVTNyK3OHpOvBJrXio+Xjn9q3WmUczbx3E26ChsuKo=";
+    sha256 = "sha256-dSZd+Dsln7xUfN/cqTZSdnpnINHsDCBrbNGcDLwqzzU=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/applications/editors/cudatext/deps.json b/nixpkgs/pkgs/applications/editors/cudatext/deps.json
index 9ae3c1c33ca1..430061e0eb72 100644
--- a/nixpkgs/pkgs/applications/editors/cudatext/deps.json
+++ b/nixpkgs/pkgs/applications/editors/cudatext/deps.json
@@ -1,23 +1,23 @@
 {
   "EncConv": {
     "owner": "Alexey-T",
-    "rev": "2021.01.01",
-    "sha256": "18fp7yz2rl80a6xw7v4bgc4092l74fb6p6z4yf312r7gw7b8naq6"
+    "rev": "2022.03.02",
+    "sha256": "sha256-fBN6Ix5CqhzMbNrWGn6nw6+JRDmEfqe6o8JGHERkiPE="
   },
   "ATBinHex-Lazarus": {
     "owner": "Alexey-T",
-    "rev": "2021.07.02",
-    "sha256": "sha256-XSt2XfHMiF/ZIf07M65u+k5FjacyToL0rWbpcflKcuY="
+    "rev": "2021.11.17",
+    "sha256": "sha256-wdYH0sISFNx42zt07gLn9ANxcyrq3WrbRhWfTFgPQWw="
   },
   "ATFlatControls": {
     "owner": "Alexey-T",
-    "rev": "2021.11.11",
-    "sha256": "sha256-lbRRiA8CHWmosJefTHrP2cTgU8nlK1SmNcppG6Bl54I="
+    "rev": "2022.03.17",
+    "sha256": "sha256-zpirFZcqIT53tZhgxQGdwVB6pA98SQLr1o3f+Lhq2QY="
   },
   "ATSynEdit": {
     "owner": "Alexey-T",
-    "rev": "2022.02.19",
-    "sha256": "sha256-cq2dirFNPaWRmZJu0F+CFA//+SuFOOpTH3Q5zL4oPQo="
+    "rev": "2022.03.23",
+    "sha256": "sha256-D/pQ4TSWUaL97Nau3bGi7rc8MxnvuoDcD7HDNEDwmsk="
   },
   "ATSynEdit_Cmp": {
     "owner": "Alexey-T",
@@ -26,13 +26,13 @@
   },
   "EControl": {
     "owner": "Alexey-T",
-    "rev": "2022.02.02",
-    "sha256": "sha256-T/6SQJHKzbv/PlObDyc9bcpC14krHgcLDQn0v2fNkLM="
+    "rev": "2022.03.28",
+    "sha256": "sha256-jh3lqisiPNMxCapP6O5oJdUL3PLQ3JyomtgWix+bML0="
   },
   "ATSynEdit_Ex": {
     "owner": "Alexey-T",
-    "rev": "2022.02.01",
-    "sha256": "sha256-FAcq6ixmFPQFBAGG2gqB4T+YGYT+Rh/OlKdGcH/iL3g="
+    "rev": "2022.03.28",
+    "sha256": "sha256-TpAaL7/bhnrQgAq1mUTdEWXecSmznWy/iAw+TMMrQGo="
   },
   "Python-for-Lazarus": {
     "owner": "Alexey-T",
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix
index 54bcc3a7c063..49c1b6248cac 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix
@@ -425,6 +425,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    buffer-env = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "buffer-env";
+        ename = "buffer-env";
+        version = "0.3";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/buffer-env-0.3.tar";
+          sha256 = "0h92pia258fndihnwmnak10ix00dmfanadnsnzbdah3q64416qhz";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/buffer-env.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     buffer-expose = callPackage ({ cl-lib ? null
                                  , elpaBuild
                                  , emacs
@@ -463,10 +478,10 @@
       elpaBuild {
         pname = "cape";
         ename = "cape";
-        version = "0.6";
+        version = "0.7";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/cape-0.6.tar";
-          sha256 = "0pc0vvdb0pczz9n50wry6k6wkdaz3bqin07nmlxm8w1aqvapb2pr";
+          url = "https://elpa.gnu.org/packages/cape-0.7.tar";
+          sha256 = "1icgd5d55x7x7czw349v8m19mgq4yrx6j6zhbb666h2hdkbnykbg";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -609,6 +624,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    code-cells = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "code-cells";
+        ename = "code-cells";
+        version = "0.2";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/code-cells-0.2.tar";
+          sha256 = "19v6a7l23646diazl0rzjxjsam12hm08hgyq8hdcc7l3xl840ghk";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/code-cells.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     coffee-mode = callPackage ({ elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "coffee-mode";
@@ -711,10 +741,10 @@
       elpaBuild {
         pname = "consult";
         ename = "consult";
-        version = "0.15";
+        version = "0.16";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/consult-0.15.tar";
-          sha256 = "0hsmxaiadb8smi1hk90n9napqrygh9rvj7g9a3d9isi47yrbg693";
+          url = "https://elpa.gnu.org/packages/consult-0.16.tar";
+          sha256 = "172w4d9hbzj98j1gyfhzw2zz4fpw90ak8ccg35fngwjlk9mjdrzk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -741,10 +771,10 @@
       elpaBuild {
         pname = "corfu";
         ename = "corfu";
-        version = "0.19";
+        version = "0.20";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/corfu-0.19.tar";
-          sha256 = "0jilhsddzjm0is7kqdklpr2ih50k2c3sik2i9vlgcizxqaqss97c";
+          url = "https://elpa.gnu.org/packages/corfu-0.20.tar";
+          sha256 = "03yycimbqs4ixz7lxp7f1b4fipq6kl2bbjnl87r0n9x8mzfslbdl";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -756,10 +786,10 @@
       elpaBuild {
         pname = "coterm";
         ename = "coterm";
-        version = "1.4";
+        version = "1.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/coterm-1.4.tar";
-          sha256 = "0cs9hqffkzlkkpcfhdh67gg3vzvffrjawmi89q7x9p52fk9rcxp6";
+          url = "https://elpa.gnu.org/packages/coterm-1.5.tar";
+          sha256 = "1v8cl3bw5z0f36iw8x3gcgiizml74m1kfxfrasyfx8k01nbxcfs8";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -921,10 +951,10 @@
       elpaBuild {
         pname = "debbugs";
         ename = "debbugs";
-        version = "0.30";
+        version = "0.31";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/debbugs-0.30.tar";
-          sha256 = "05yy1hhxd59rhricb14iai71w681222sv0i703yrgg868mphl7sb";
+          url = "https://elpa.gnu.org/packages/debbugs-0.31.tar";
+          sha256 = "11vdjrn5m5g6pirw8jv0602fbwwgdhazfrrwxxplii8x02gqk0sr";
         };
         packageRequires = [ emacs soap-client ];
         meta = {
@@ -1127,16 +1157,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    dts-mode = callPackage ({ elpaBuild, fetchurl, lib }:
+    dts-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "dts-mode";
         ename = "dts-mode";
-        version = "0.1.1";
+        version = "1.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/dts-mode-0.1.1.tar";
-          sha256 = "1hdbf7snfbg3pfg1vhbak1gq5smaklvaqj1y9mjcnxyipqi47q28";
+          url = "https://elpa.gnu.org/packages/dts-mode-1.0.tar";
+          sha256 = "0ihwqkv1ddysjgxh01vpayv3ia0vx55ny8ym0mi5b4iz95idj60s";
         };
-        packageRequires = [];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/dts-mode.html";
           license = lib.licenses.free;
@@ -1176,10 +1206,10 @@
       elpaBuild {
         pname = "ebdb";
         ename = "ebdb";
-        version = "0.8.12";
+        version = "0.8.14";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ebdb-0.8.12.tar";
-          sha256 = "1k53crdmaw6lzvprsmpdfvg96ck54bzs4z1d4q9x890anglxq5m6";
+          url = "https://elpa.gnu.org/packages/ebdb-0.8.14.tar";
+          sha256 = "0h7yva7p4b4lapi7pwcibf75nqmazjf3r67ibnkc8l9salfhml25";
         };
         packageRequires = [ emacs seq ];
         meta = {
@@ -1236,10 +1266,10 @@
       elpaBuild {
         pname = "eev";
         ename = "eev";
-        version = "20220224";
+        version = "20220324";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/eev-20220224.tar";
-          sha256 = "008750fm7w5k9yrkwyxgank02smxki2857cd2d8qvhsa2qnz6c5n";
+          url = "https://elpa.gnu.org/packages/eev-20220324.tar";
+          sha256 = "0x1fhjj7g96xmp8pnj3k23xi61nfzaj04bzx050qjc1dvdg8gpfa";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1294,10 +1324,10 @@
       elpaBuild {
         pname = "eldoc";
         ename = "eldoc";
-        version = "1.11.0";
+        version = "1.11.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/eldoc-1.11.0.el";
-          sha256 = "1py9l1vl7s90y5kfpglhy11jswam2gcrqap09h6wb5ldnyb8cgq2";
+          url = "https://elpa.gnu.org/packages/eldoc-1.11.1.tar";
+          sha256 = "065clc07nrgp56cgynqhq3fmnwd64ccg2jxzikzb0f2zkn10vc90";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1354,10 +1384,10 @@
       elpaBuild {
         pname = "embark";
         ename = "embark";
-        version = "0.15";
+        version = "0.16";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/embark-0.15.tar";
-          sha256 = "0dr97549xrs9j1fhnqpdspvbfxnzqvzvpi8qc91fd2v4jsfwlklh";
+          url = "https://elpa.gnu.org/packages/embark-0.16.tar";
+          sha256 = "1fgsy4nqwl1cah287fbabpi9lwmbiyn36c4z918514iwr5hgrmfi";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1374,10 +1404,10 @@
       elpaBuild {
         pname = "embark-consult";
         ename = "embark-consult";
-        version = "0.4";
+        version = "0.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/embark-consult-0.4.tar";
-          sha256 = "1z0xc11y59lagfsd2raps4iz68hvw132ff0qynbmvgw63mp1w4yy";
+          url = "https://elpa.gnu.org/packages/embark-consult-0.5.tar";
+          sha256 = "1z4n5gm30yan3gg2aqwb1ygql56v9sg2px1dr0gdl32lgmn9kvg6";
         };
         packageRequires = [ consult emacs embark ];
         meta = {
@@ -2043,10 +2073,10 @@
       elpaBuild {
         pname = "isearch-mb";
         ename = "isearch-mb";
-        version = "0.4";
+        version = "0.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/isearch-mb-0.4.tar";
-          sha256 = "11q9sdi6l795hspi7hr621bbra66pxsgrkry95k7wxjkmibcbsxr";
+          url = "https://elpa.gnu.org/packages/isearch-mb-0.5.tar";
+          sha256 = "0fah8dmh9jv05i93ccn9dvl7qmfy32vwxqdzkf1v8gr1plsyjyx7";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2419,6 +2449,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    logos = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "logos";
+        ename = "logos";
+        version = "0.2.0";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/logos-0.2.0.tar";
+          sha256 = "0cqmgvgyyn656rg60bbnxr2flmnw9h4z5i2w98bsf4krlp3s4i6x";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/logos.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     map = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "map";
@@ -2438,10 +2483,10 @@
       elpaBuild {
         pname = "marginalia";
         ename = "marginalia";
-        version = "0.12";
+        version = "0.13";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/marginalia-0.12.tar";
-          sha256 = "01dy9dg2ac6s84ffcxn2pw1y75pinkdvxg1j2g3vijwjd5hpfakq";
+          url = "https://elpa.gnu.org/packages/marginalia-0.13.tar";
+          sha256 = "1d5y3d2plkxnmm4458l0gfpim6q3vzps3bsfakvnzf86hh5nm77j";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3006,6 +3051,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    org-modern = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "org-modern";
+        ename = "org-modern";
+        version = "0.3";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/org-modern-0.3.tar";
+          sha256 = "14f5grai6k9xbpyc33pcpgi6ka8pgy7vcnqqi77nclzq2yxhl9c1";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/org-modern.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     org-real = callPackage ({ boxy, elpaBuild, emacs, fetchurl, lib, org }:
       elpaBuild {
         pname = "org-real";
@@ -3025,10 +3085,10 @@
       elpaBuild {
         pname = "org-remark";
         ename = "org-remark";
-        version = "1.0.2";
+        version = "1.0.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/org-remark-1.0.2.tar";
-          sha256 = "12g9kmr0gfs1pi1410akvcaiax0dswbw09sgqbib58mikb3074nv";
+          url = "https://elpa.gnu.org/packages/org-remark-1.0.4.tar";
+          sha256 = "1mbsp92vw8p8l2pxs53r7wafrplrwfx0rmfk723cl9hpvghvl9vf";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -3055,10 +3115,10 @@
       elpaBuild {
         pname = "org-translate";
         ename = "org-translate";
-        version = "0.1.3";
+        version = "0.1.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/org-translate-0.1.3.el";
-          sha256 = "0m52vv1961kf8f1gw8c4n02hxcvhdw3wgzmcxvjcdijfnjkarm33";
+          url = "https://elpa.gnu.org/packages/org-translate-0.1.4.tar";
+          sha256 = "0dvg3h8mmzlqfg60rwxjgy17sqv84p6nj2ngjdafkp9a4halv0g7";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -3096,6 +3156,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    osm = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "osm";
+        ename = "osm";
+        version = "0.6";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/osm-0.6.tar";
+          sha256 = "0p19qyx4gw1rn2f5hlxa7gx1sph2z5vjw7cnxwpjhbbr0430zzwb";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/osm.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     other-frame-window = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "other-frame-window";
@@ -3220,10 +3295,10 @@
       elpaBuild {
         pname = "phps-mode";
         ename = "phps-mode";
-        version = "0.4.17";
+        version = "0.4.20";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/phps-mode-0.4.17.tar";
-          sha256 = "1j3whjxhjawl1i5449yf56ljbazx90272gr8zfr36s8h8rijfjn9";
+          url = "https://elpa.gnu.org/packages/phps-mode-0.4.20.tar";
+          sha256 = "0xb4i3s6yira1kfqwrs72ajvpqc6pw7gqlxmfmdhyyvib6p93l6m";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3321,6 +3396,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    pulsar = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "pulsar";
+        ename = "pulsar";
+        version = "0.2.0";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/pulsar-0.2.0.tar";
+          sha256 = "0vil6gv7w6d77hksc2pbrwjdd8dp3ka4kf5kihx04r95032pky62";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/pulsar.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     pyim = callPackage ({ async, elpaBuild, emacs, fetchurl, lib, xr }:
       elpaBuild {
         pname = "pyim";
@@ -3650,10 +3740,10 @@
       elpaBuild {
         pname = "repology";
         ename = "repology";
-        version = "1.2.2";
+        version = "1.2.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/repology-1.2.2.tar";
-          sha256 = "0ggb0zgz24hs5andhyrlpqm0gda0gf1wynzkarj4z7gpk5p9wrpr";
+          url = "https://elpa.gnu.org/packages/repology-1.2.3.tar";
+          sha256 = "1ngx23b7dilyps20nznrrn867kbxyn6nryf4p1sy5m576hkw18kn";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4245,10 +4335,10 @@
       elpaBuild {
         pname = "tempel";
         ename = "tempel";
-        version = "0.2";
+        version = "0.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/tempel-0.2.tar";
-          sha256 = "0xn2vqaxqv04zmlp5hpb9vxkbs3bv4dk22xs5j5fqjid2hcv3714";
+          url = "https://elpa.gnu.org/packages/tempel-0.3.tar";
+          sha256 = "0aa3f3sfvibp3wl401fdlww70axl9hxasbza70i44vqq0y9csv40";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4395,16 +4485,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    undo-tree = callPackage ({ elpaBuild, fetchurl, lib }:
+    undo-tree = callPackage ({ elpaBuild, emacs, fetchurl, lib, queue }:
       elpaBuild {
         pname = "undo-tree";
         ename = "undo-tree";
-        version = "0.7.5";
+        version = "0.8.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/undo-tree-0.7.5.el";
-          sha256 = "00admi87gqm0akhfqm4dcp9fw8ihpygy030955jswkha4zs7lw2p";
+          url = "https://elpa.gnu.org/packages/undo-tree-0.8.2.tar";
+          sha256 = "0fgir9pls9439zwyl3j2yvrwx9wigisj1jil4ijma27dfrpgm288";
         };
-        packageRequires = [];
+        packageRequires = [ emacs queue ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/undo-tree.html";
           license = lib.licenses.free;
@@ -4605,10 +4695,10 @@
       elpaBuild {
         pname = "vertico";
         ename = "vertico";
-        version = "0.20";
+        version = "0.21";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/vertico-0.20.tar";
-          sha256 = "1hg91f74klbwisxzp74d020v42l28wik9y1lg3hrbdspnhlhsdrl";
+          url = "https://elpa.gnu.org/packages/vertico-0.21.tar";
+          sha256 = "0aw3hkr46zghvyp7s2b6ziqavsf1zpml4bbxcvs4kvm05qa0y1hv";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4625,10 +4715,10 @@
       elpaBuild {
         pname = "vertico-posframe";
         ename = "vertico-posframe";
-        version = "0.5.2";
+        version = "0.5.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/vertico-posframe-0.5.2.tar";
-          sha256 = "0gzvm0la706kg3aqgrd6crz6353sp47dnpxdj9l2avb31avyqmv9";
+          url = "https://elpa.gnu.org/packages/vertico-posframe-0.5.3.tar";
+          sha256 = "12jcb4im1ys2s0wbv9nfmgpcrz037zagd677qjm8hz8fn29xdh6n";
         };
         packageRequires = [ emacs posframe vertico ];
         meta = {
@@ -4933,10 +5023,10 @@
       elpaBuild {
         pname = "xref";
         ename = "xref";
-        version = "1.4.0";
+        version = "1.4.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/xref-1.4.0.tar";
-          sha256 = "1ng03fyhpisa1v99sc96mpr7hna1pmg4gdc61p86r8lka9m5gqfx";
+          url = "https://elpa.gnu.org/packages/xref-1.4.1.tar";
+          sha256 = "1vbpplw0sngymmawi940nlqmncqznb5vp7zi0ib8v66g3y33ijrf";
         };
         packageRequires = [ emacs ];
         meta = {
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix
index fd658aac5f44..fd8d17da60ea 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix
@@ -2,10 +2,11 @@
 
 # Updating
 
-To update the list of packages from MELPA,
+To update the list of packages from ELPA,
 
 1. Run `./update-elpa`.
 2. Check for evaluation errors:
+     # "../../../../../" points to the default.nix from root of Nixpkgs tree
      env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate ../../../../../ -A emacs.pkgs.elpaPackages
 3. Run `git commit -m "elpa-packages $(date -Idate)" -- elpa-generated.nix`
 
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacs2nix.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacs2nix.nix
index 20bb0efdd663..2873be1787fa 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacs2nix.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacs2nix.nix
@@ -1,11 +1,12 @@
 let
   pkgs = import ../../../../.. { };
 
-  src = pkgs.fetchgit {
-    url = "https://github.com/nix-community/emacs2nix.git";
-    fetchSubmodules = true;
+  src = pkgs.fetchFromGitHub {
+    owner = "nix-community";
+    repo = "emacs2nix";
     rev = "2e8d2c644397be57455ad32c2849f692eeac7797";
     sha256 = "sha256-qnOYDYHAQ+r5eegKP9GqHz5R2ig96B2W7M+uYa1ti9M=";
+    fetchSubmodules = true;
   };
 in
 pkgs.mkShell {
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacspeak/default.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacspeak/default.nix
index 84d724c3518b..54805d43b248 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacspeak/default.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/emacspeak/default.nix
@@ -45,7 +45,8 @@ stdenv.mkDerivation rec {
     find "$d" \( -type d -or \( -type f -executable \) \) -execdir chmod 755 {} +
     find "$d" -type f -not -executable -execdir chmod 644 {} +
     makeWrapper ${emacs}/bin/emacs $out/bin/emacspeak \
-        --set DTK_PROGRAM "${espeak-ng}/bin/espeak" \
+        --set DTK_PROGRAM "${placeholder "out"}/share/emacs/site-lisp/emacspeak/servers/espeak" \
+        --set TCLLIBPATH "${tclx}/lib" \
         --add-flags '-l "${placeholder "out"}/share/emacs/site-lisp/emacspeak/lisp/emacspeak-setup.elc"'
   '';
 
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix
index 9a81f25ec1b3..18c8549b9cca 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix
@@ -6,6 +6,7 @@ To update the list of packages from MELPA,
 
 1. Run `./update-melpa`
 2. Check for evaluation errors:
+     # "../../../../../" points to the default.nix from root of Nixpkgs tree
      env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../../ -A emacs.pkgs.melpaStablePackages
      env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../../ -A emacs.pkgs.melpaPackages
 3. Run `git commit -m "melpa-packages $(date -Idate)" recipes-archive-melpa.json`
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix
index 60028dc9950b..dc2e87c30e60 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix
@@ -258,10 +258,10 @@
       elpaBuild {
         pname = "cider";
         ename = "cider";
-        version = "1.2.0";
+        version = "1.3.0";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/cider-1.2.0.tar";
-          sha256 = "1dkn5mcp4vyk6h4mqrn7fcqjs4h0dx1y1b1pcg2jpyx11mhdpjxf";
+          url = "https://elpa.nongnu.org/nongnu/cider-1.3.0.tar";
+          sha256 = "10kg30s0gb09l0z17v2hqxy9v5pscnpqp5dng62cjh0x3hdi4i7x";
         };
         packageRequires = [
           clojure-mode
@@ -281,10 +281,10 @@
       elpaBuild {
         pname = "clojure-mode";
         ename = "clojure-mode";
-        version = "5.13.0";
+        version = "5.14.0";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/clojure-mode-5.13.0.tar";
-          sha256 = "16xll0sp7mqzwldfsihp7j3dlm6ps1l1awi122ff8w7xph7b0wfh";
+          url = "https://elpa.nongnu.org/nongnu/clojure-mode-5.14.0.tar";
+          sha256 = "1lirhp6m5r050dm73nrslgzdgy6rdbxn02wal8n52q37m2armra2";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -292,6 +292,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    coffee-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "coffee-mode";
+        ename = "coffee-mode";
+        version = "0.6.3";
+        src = fetchurl {
+          url = "https://elpa.nongnu.org/nongnu/coffee-mode-0.6.3.tar";
+          sha256 = "1yv1b5rzlj7cpz7gsv2j07mr8z6lkwxp1cldkrc6xlhcbqh8795a";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/coffee-mode.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     color-theme-tangotango = callPackage ({ color-theme
                                           , elpaBuild
                                           , fetchurl
@@ -688,16 +703,21 @@
           license = lib.licenses.free;
         };
       }) {};
-    geiser = callPackage ({ elpaBuild, emacs, fetchurl, lib, transient }:
+    geiser = callPackage ({ elpaBuild
+                          , emacs
+                          , fetchurl
+                          , lib
+                          , project
+                          , transient }:
       elpaBuild {
         pname = "geiser";
         ename = "geiser";
-        version = "0.22.2";
+        version = "0.23.2";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/geiser-0.22.2.tar";
-          sha256 = "0mva8arcxj1kf6g7s6f6ik70gradmbnhhiaf7rdkycxdd8kdqn7i";
+          url = "https://elpa.nongnu.org/nongnu/geiser-0.23.2.tar";
+          sha256 = "1rdz13rjfp8j2ik3vbw1jvacjri3abghlq6aqfvkd7vwm21h30ih";
         };
-        packageRequires = [ emacs transient ];
+        packageRequires = [ emacs project transient ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/geiser.html";
           license = lib.licenses.free;
@@ -782,10 +802,10 @@
       elpaBuild {
         pname = "geiser-guile";
         ename = "geiser-guile";
-        version = "0.21.2";
+        version = "0.23.2";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/geiser-guile-0.21.2.tar";
-          sha256 = "06mr8clsk8fj73q4ln90i28xs8axl4sd68wiyl41kgg9w5y78cb7";
+          url = "https://elpa.nongnu.org/nongnu/geiser-guile-0.23.2.tar";
+          sha256 = "1z2khagg425y5cfja694zxrj3lyw3awsmqd86b2hpqhrylrb8jaa";
         };
         packageRequires = [ emacs geiser ];
         meta = {
@@ -1043,10 +1063,10 @@
       elpaBuild {
         pname = "helm";
         ename = "helm";
-        version = "3.8.4";
+        version = "3.8.5";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/helm-3.8.4.tar";
-          sha256 = "0yc7ijap3g68w7npgwymzlp5bcawk3lhnp0004m03zfdbxhmkq0z";
+          url = "https://elpa.nongnu.org/nongnu/helm-3.8.5.tar";
+          sha256 = "1h71qcik375zhkk4rgcxj6ffnzpns2lvzwq82yfhmmhzrrxhds0z";
         };
         packageRequires = [ helm-core popup ];
         meta = {
@@ -1058,10 +1078,10 @@
       elpaBuild {
         pname = "helm-core";
         ename = "helm-core";
-        version = "3.8.4";
+        version = "3.8.5";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/helm-core-3.8.4.tar";
-          sha256 = "0a1liapy345nlqjgxbzad0mkdbs4g6619cqplwiyh89x0lm0jprx";
+          url = "https://elpa.nongnu.org/nongnu/helm-core-3.8.5.tar";
+          sha256 = "0117y2gazm8h5fxj23166a53w4r68r1mscgardk0y6xd6lz73yz9";
         };
         packageRequires = [ async emacs ];
         meta = {
@@ -2210,10 +2230,10 @@
       elpaBuild {
         pname = "web-mode";
         ename = "web-mode";
-        version = "17.1.4";
+        version = "17.2.0";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/web-mode-17.1.4.tar";
-          sha256 = "0863p8ikc8yqw0dahswi5s9q7v7rg1hasdxz5jwkd796fh1ih78n";
+          url = "https://elpa.nongnu.org/nongnu/web-mode-17.2.0.tar";
+          sha256 = "15m7rx7sz7f6h0x90811bcl8gdcpn216ia48nmkqhqrm85synlja";
         };
         packageRequires = [ emacs ];
         meta = {
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-packages.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-packages.nix
index dcd7e92c642d..cd32a8bd3975 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-packages.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/nongnu-packages.nix
@@ -6,7 +6,8 @@ To update the list of packages from nongnu (ELPA),
 
 1. Run `./update-nongnu`.
 2. Check for evaluation errors:
-     env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate ../../../../.. -A emacs.pkgs.nongnuPackages
+     # "../../../../../" points to the default.nix from root of Nixpkgs tree
+     env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate ../../../../../ -A emacs.pkgs.nongnuPackages
 3. Run `git commit -m "nongnu-packages $(date -Idate)" -- nongnu-generated.nix`
 
 */
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/plz/default.nix b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/plz/default.nix
index 9992fb877a9f..29f71d7f1580 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/plz/default.nix
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/plz/default.nix
@@ -2,21 +2,29 @@
 
 trivialBuild {
   pname = "plz";
-  version = "unstable-2021-08-22";
+  version = "0.pre+date=2021-08-22";
 
   src = fetchFromGitHub {
     owner = "alphapapa";
     repo = "plz.el";
     rev = "7e456638a651bab3a814e3ea81742dd917509cbb";
-    sha256 = "sha256-8kn9ax1AVF6f9iCTqvVeJZihs03pYAhLjUDooG/ubxY=";
+    hash = "sha256-8kn9ax1AVF6f9iCTqvVeJZihs03pYAhLjUDooG/ubxY=";
   };
 
   postPatch = ''
-    substituteInPlace ./plz.el --replace 'plz-curl-program "curl"' 'plz-curl-program "${curl}/bin/curl"'
+    substituteInPlace ./plz.el \
+      --replace 'plz-curl-program "curl"' 'plz-curl-program "${curl}/bin/curl"'
   '';
 
   meta = {
-    description = "plz is an HTTP library for Emacs";
+    description = "An HTTP library for Emacs";
+    longDescription = ''
+      plz is an HTTP library for Emacs. It uses curl as a backend, which avoids
+      some of the issues with using Emacs’s built-in url library. It supports
+      both synchronous and asynchronous requests. Its API is intended to be
+      simple, natural, and expressive. Its code is intended to be simple and
+      well-organized. Every feature is tested against httpbin.org.
+    '';
     license = lib.licenses.gpl3Only;
     platforms = lib.platforms.all;
   };
diff --git a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
index 0afde2c5c33b..1de739b5645c 100644
--- a/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
+++ b/nixpkgs/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
@@ -204,19 +204,19 @@
   "repo": "ymarco/auto-activating-snippets",
   "unstable": {
    "version": [
-    20220217,
-    2054
+    20220301,
+    1628
    ],
-   "commit": "1cb08537e255c60a9439e3fea7c5d406e32f5e97",
-   "sha256": "1mm8c69r9jjs4qr0nha7pj1i8pq03q4nban4pik280swn4c8f3zl"
+   "commit": "8ce591165e0bdc1a6ea76e78bc10c6b55bab9634",
+   "sha256": "0v9hw8rf5ypxn7bbwdvv5wrmvdghp691xkfc7kj2zihc0f7vyxak"
   },
   "stable": {
    "version": [
     1,
-    0
+    1
    ],
-   "commit": "3076cefea0f6ae9d7757f13c27b5602e007b58ec",
-   "sha256": "1psy6qpqxh6dm2ix7pwqdcq0rbiy6hyd830g76jk4wvj4spm5rpf"
+   "commit": "5d83f76823bc0b86d5270277b57a627f3af427a1",
+   "sha256": "0vw57jrjds4y37aryjx8lcxs6w6amn2gxhpxlr3ylwi1b6yimvhf"
   }
  },
  {
@@ -273,8 +273,8 @@
     20210923,
     950
    ],
-   "commit": "fc0eeb780d22aa1aac337f06cc9b479c51600243",
-   "sha256": "1vv3p6fkp352chrjm7jwc3frifzfral1jyrkx4m8pfq0cyj2g197"
+   "commit": "0d6aace2ffd184137618a0c6e7f29826cbd8d1f9",
+   "sha256": "1rf989ll07xqmamdigzqmamhfscx7wk0xh5yaqam1q3hj13yywm5"
   }
  },
  {
@@ -308,16 +308,16 @@
   "repo": "abstools/abs-mode",
   "unstable": {
    "version": [
-    20210411,
-    1013
+    20220316,
+    921
    ],
    "deps": [
     "erlang",
     "flymake",
     "maude-mode"
    ],
-   "commit": "3b332ec1e941874f220897e5c0e0a6df762ca28d",
-   "sha256": "0m7v87w2akdpgr360gyjiw0p5sc6ms3y9bccwi9j4jz4gnlix6l5"
+   "commit": "d860ddbbd7cb93c7a77980c78c1a2a7634ef01e1",
+   "sha256": "03j70vk0gaf96cljkxxk2d1df85b968yn31wa13d465swcaq8wav"
   },
   "stable": {
    "version": [
@@ -1763,20 +1763,26 @@
   "repo": "codesuki/add-node-modules-path",
   "unstable": {
    "version": [
-    20210305,
-    312
+    20220315,
+    340
+   ],
+   "deps": [
+    "s"
    ],
-   "commit": "7d9be65b3be062842b7ead862dec15d6f25db4a2",
-   "sha256": "0za0jjba2qdpqdkcp5bch6ma8crf0vsi7bxj2rasn2icqgxyn89m"
+   "commit": "63f047fd84b825876152743f66de7ee6f9ed203b",
+   "sha256": "09vf921dh6lawh14rk02gjsvz88x9vd1c68ilf2fzkap5dh61dy5"
   },
   "stable": {
    "version": [
     1,
-    2,
-    0
+    3,
+    1
+   ],
+   "deps": [
+    "s"
    ],
-   "commit": "6f7801b2c41e3711406b7e1654257ad5557f5bb3",
-   "sha256": "1pfgy1k7vp34k4zb9835y3x4jmf81na60vsf80wlgvfafwk170z6"
+   "commit": "63f047fd84b825876152743f66de7ee6f9ed203b",
+   "sha256": "09vf921dh6lawh14rk02gjsvz88x9vd1c68ilf2fzkap5dh61dy5"
   }
  },
  {
@@ -1887,25 +1893,25 @@
   "repo": "minad/affe",
   "unstable": {
    "version": [
-    20211221,
-    1304
+    20220308,
+    1016
    ],
    "deps": [
     "consult"
    ],
-   "commit": "4d65f37a22425cf41c02862522a76e5688998591",
-   "sha256": "051k54mrq03574lni5nqabmhpbcgpjlm0vjn0yi7h4g0wl299ab6"
+   "commit": "36d8654a8d7e862d2e64f6bece370e664218ab1a",
+   "sha256": "1wj63vqr5vf2mzwsx1j837ahjkj0p20zn4vkxl52rxdl8m01m2yv"
   },
   "stable": {
    "version": [
     0,
-    3
+    4
    ],
    "deps": [
     "consult"
    ],
-   "commit": "0ee5e2374339c1a57d36c06818247afeecadc2c5",
-   "sha256": "0r9ziscf2f4plp740ggd2vh73cgax31xsvzmc1f5w9cy88i9f8nn"
+   "commit": "0982fbfee5877b2492568cce2d746b263f198db3",
+   "sha256": "01hmhg3smjni8gpyap4wmqb4ax6dxfn6jnwlpdp76imbvb9m26ma"
   }
  },
  {
@@ -2406,6 +2412,40 @@
   }
  },
  {
+  "ename": "alert-toast",
+  "commit": "94d83975f0554ee1ce5fcc5a151cb859e0fcaefa",
+  "sha256": "1bw641qxq4vrnq9q0j7avzqhl988rds92gi5f858q49as5lf5yvr",
+  "fetcher": "github",
+  "repo": "gkowzan/alert-toast",
+  "unstable": {
+   "version": [
+    20220312,
+    229
+   ],
+   "deps": [
+    "alert",
+    "f",
+    "s"
+   ],
+   "commit": "ba931529a266537783cfec2a28c2b8c058364ff2",
+   "sha256": "07g7ny45gy488iqxfna1mdyc7rq8jjm4zb8krk50bymk5rhnmyar"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    0
+   ],
+   "deps": [
+    "alert",
+    "f",
+    "s"
+   ],
+   "commit": "96c88c93c1084de681700f655223142ee0eb944a",
+   "sha256": "1jir8qh87faqlxq1g0yyp5zy3d60615agyddxhsmx6l9a8x91zkn"
+  }
+ },
+ {
   "ename": "align-cljlet",
   "commit": "091dcc3775ec2137cb61d66df4e72aca4900897a",
   "sha256": "0pnhhv33rvlmb3823xpy9v5h6q99fa7fn38djbwry4rymi4jmlih",
@@ -2449,11 +2489,11 @@
   "repo": "domtronn/all-the-icons.el",
   "unstable": {
    "version": [
-    20220117,
-    108
+    20220325,
+    1238
    ],
-   "commit": "2c963ebb75f211d2f7ac3d2db5f4a9ee2f3e27da",
-   "sha256": "1gn5nyyhrvz8w1y5m8lg2khwfir0czjizmdzinr70gd7n8g1xqk9"
+   "commit": "65c496d3d1d1298345beb9845840067bffb2ffd8",
+   "sha256": "05n68r1f9g0xhffv8da5142c1771ma0lbwh44fqiraw80zjp5ybi"
   },
   "stable": {
    "version": [
@@ -2491,14 +2531,14 @@
   "repo": "wyuenho/all-the-icons-dired",
   "unstable": {
    "version": [
-    20211007,
-    1729
+    20220304,
+    1638
    ],
    "deps": [
     "all-the-icons"
    ],
-   "commit": "5e9b097f9950cc9f86de922b07903a4e5fefc733",
-   "sha256": "0p09rdq97hshg9gaivsqz9zvi2ba2p1a2ja1i8z6f896xv5jqs98"
+   "commit": "147ed0dfd1034a686795a08dc63e2c293128597e",
+   "sha256": "1vlwhnvgpjsvrlifczlnf4w02vpzp8rqkfw3mphhzxkfzvif5v53"
   },
   "stable": {
    "version": [
@@ -2539,14 +2579,14 @@
   "repo": "seagle0128/all-the-icons-ibuffer",
   "unstable": {
    "version": [
-    20220122,
-    2206
+    20220228,
+    1513
    ],
    "deps": [
     "all-the-icons"
    ],
-   "commit": "67a331c94af7670a89cea2cd58a1e7b11b83e8a9",
-   "sha256": "1aq1g81hj9c8z6h3aw9jdiq9x531kdysdifcr6q7p2bd0vcjd79m"
+   "commit": "66317e945dc63b7947b99162d8c482ffe936ff96",
+   "sha256": "0wdlcgr11yq0f8ld8fkks51fbf63d8ddm2firga0402g5gs8ybqc"
   },
   "stable": {
    "version": [
@@ -2601,28 +2641,28 @@
   "repo": "seagle0128/all-the-icons-ivy-rich",
   "unstable": {
    "version": [
-    20220219,
-    1054
+    20220324,
+    317
    ],
    "deps": [
     "all-the-icons",
     "ivy-rich"
    ],
-   "commit": "2aca118abec76886a0689bcb4b6ba1049ff4e297",
-   "sha256": "0h6sq20pg3g68p4a0ziy8n41h236q9vfc21wx7qs5g9v6k3pbdng"
+   "commit": "498ea281656569593b8fe4b47162447767daf408",
+   "sha256": "1zpqvzg76i5k48a2qvafls7fg3y0lrwfk9im0zhngczjy5gadldq"
   },
   "stable": {
    "version": [
     1,
-    6,
-    3
+    7,
+    0
    ],
    "deps": [
     "all-the-icons",
     "ivy-rich"
    ],
-   "commit": "66824c6468cbe256d7e5012f516f6840b5ab1de9",
-   "sha256": "19i7gnkwa7v6balx1qhd68rl1bxghl2fy442ymcaxl3yykc2hx9d"
+   "commit": "a866ed554932d4c52f802b2235e6d5c3382d8a67",
+   "sha256": "0id821qis6yqaicr0dv2cxyfdy8dh0m5xp7zbfrgnbzk1ah0npd5"
   }
  },
  {
@@ -2675,8 +2715,8 @@
     20220212,
     1526
    ],
-   "commit": "583ed2d65310eddcb1d5d82af236c9ed86560447",
-   "sha256": "1a3xk7cyxp63957mk3msrj166yq61zwyckdc7qd2l9s3spbsdq0j"
+   "commit": "490f9b781d6aa2be376b01326b4ccdea756ff382",
+   "sha256": "1bp5rcqni80izky8mzg0bmf8q8n3niwhjix6jsa9w81584kmcaha"
   },
   "stable": {
    "version": [
@@ -3231,8 +3271,8 @@
     20200914,
     644
    ],
-   "commit": "6b13364d36eeb60d8ec15eaf8effe23c73401900",
-   "sha256": "1mjsxi18rv83wggp53iyh0dzp8y6jy3azqklkr9rmh6xjqb68a30"
+   "commit": "724723ed0a6b179398f4105f5eb5ea088d1bac4a",
+   "sha256": "0qzg5qhf3p4ifspbz6l1yj4fl6sdgbi74kprql20sx9y58dyhamd"
   },
   "stable": {
    "version": [
@@ -3587,8 +3627,8 @@
     20220114,
     2329
    ],
-   "commit": "75074a2f11e29aeca376b3004270a93ce44e59de",
-   "sha256": "07ngvm540x86fy07bg4pp5fm5f3qwqpmq5qk209gf4s7wqgign33"
+   "commit": "9ed3c9d72ada133426a40bac6f4a719706d99532",
+   "sha256": "1zg1yk6g7kx22vxg74srzkxgw4880lwf6aifxgz058v3fhk0zgks"
   },
   "stable": {
    "version": [
@@ -3701,8 +3741,8 @@
     20210802,
     1715
    ],
-   "commit": "00c141bbff46c89a96598b605dee05dd1d89f624",
-   "sha256": "1d3ssyp90k26282p46c91wj1bvqxpvghcsicp14bnh78llwninvc"
+   "commit": "9b4b41cac699e85cb36bd0e4ef2cb39f7af1cf3d",
+   "sha256": "1khbqp8iqm6p5a83bvcvdiykd9qpa4c2545l3sbb5q3qg8js67cn"
   },
   "stable": {
    "version": [
@@ -3744,11 +3784,11 @@
   "repo": "waymondo/apropospriate-theme",
   "unstable": {
    "version": [
-    20220114,
-    1444
+    20220323,
+    1703
    ],
-   "commit": "1761bf480cd62859e452ca492b69f09024bb308a",
-   "sha256": "1vhms80pdw46a16l9cjrh8sfyxwwrr8r28qpx1gkzh4bjqyszphx"
+   "commit": "7bcabbbbef2cb1dd12917f248402565b557d8f60",
+   "sha256": "1frlcjd82g0m3aj3wi45gv5gzqy16frj7as22v4c07b78xg1mzks"
   },
   "stable": {
    "version": [
@@ -3846,17 +3886,17 @@
  },
  {
   "ename": "archive-rpm",
-  "commit": "e5f5653e62afdc022eac30bda3d21bd2d2625d2e",
-  "sha256": "0s53zbn71lb008gw3f0b5w4q0pw0vgiqbffgnyib24sh03ijl7z7",
+  "commit": "64c5ca910a8a887165a34d818fe464936df64606",
+  "sha256": "1s9w02w6crli7cq1082y1vrlj9qmgk2dq7smg21znmi5lch1y193",
   "fetcher": "github",
-  "repo": "legoscia/archive-rpm",
+  "repo": "nbarrientos/archive-rpm",
   "unstable": {
    "version": [
-    20180706,
-    1232
+    20220314,
+    1647
    ],
-   "commit": "59f83caebbd2f92fd634f6968e6d17b50ffa3dc7",
-   "sha256": "11ssqaax4jl7r3z5agzmc74sjsfvl0m3xvp015ncqzpzysla47g3"
+   "commit": "379dddfbe4e801df6fdb81a55528fab6c7dbb78e",
+   "sha256": "1w505zv614xsc0bjc0539fw68x88vfxmd8k9mnp5364pvjfc7g87"
   },
   "stable": {
    "version": [
@@ -4191,11 +4231,11 @@
   "repo": "jwiegley/emacs-async",
   "unstable": {
    "version": [
-    20220104,
-    1222
+    20220318,
+    1342
    ],
-   "commit": "0d52411d3accc3e11a2c64838703a8ce9755c77c",
-   "sha256": "0afjx74l0fywjr1gdf023prkbv9xglicjakbfbyw41m7vvlzcvk3"
+   "commit": "c78bab7506a70a735d2c3deab13fa87bf44a83d3",
+   "sha256": "1pa0cmphja9flib8m86rlsns7q53g06pn0m4ksdj0ig1xmzj4108"
   },
   "stable": {
    "version": [
@@ -4296,8 +4336,8 @@
     20201026,
     339
    ],
-   "commit": "15ab7db5d188083f09d65163edd5d0ef995c4c30",
-   "sha256": "05fgd7h75jrzblgs8ydkd30pgjhr16ng4l4k32wr4wwqn213ag97"
+   "commit": "3f4b12016bd1d0115207013ebc3f02fa7f50917b",
+   "sha256": "07gf5p6c78kxyji4q89gz2ffyixdccn5h610d7nidiiix1bwvh1p"
   },
   "stable": {
    "version": [
@@ -4320,8 +4360,8 @@
     20210731,
     609
    ],
-   "commit": "da34a3950b80bb43cc1e8b4aa404b761372dd149",
-   "sha256": "04jjgcs7h2bxxjqhsi65iwgf5jg912lgingfq3yd9dkcbw9nmcfc"
+   "commit": "7e07005dbbca6a5f409f37af37e5f5f81d057ded",
+   "sha256": "1mm9xfsk2kgqfy29k27b5z43j12nkpx1ssgp4y9k6bymrgbfx08v"
   },
   "stable": {
    "version": [
@@ -4621,8 +4661,8 @@
     "keytar",
     "s"
    ],
-   "commit": "c7b5893e0d93ac6a653e58161b42dc2b21793711",
-   "sha256": "1w9i58dg0l23dry0aj3cvb842fd33z9hngq0a7rikacmympz95r9"
+   "commit": "f235a34306e230dcbf60f63e19fdc3b06425f7cf",
+   "sha256": "1pa4syiq7ds1hfpi268krlkyi8vl7hfr23md2x16zh0wlnsxnpm2"
   },
   "stable": {
    "version": [
@@ -4764,8 +4804,8 @@
     "cl-lib",
     "popup"
    ],
-   "commit": "71dd984aa45dccea1cb797d336507eafa81b5bf4",
-   "sha256": "0cayj63jn1dc01bn4z87l783fiis4ixvmbww2pqii1i06mxsqxaw"
+   "commit": "d515059ea5316c81223f6d969e45b16b47365b5c",
+   "sha256": "07xp981b1j9igcai930pqfiz16idp9898bpdl623d9175i5dnrjl"
   },
   "stable": {
    "version": [
@@ -5041,6 +5081,21 @@
   }
  },
  {
+  "ename": "auto-dark",
+  "commit": "5e0563fc10ad39c0bee64c91c02df54d4880491c",
+  "sha256": "1lh5jsqkx653p3xbpyg67jfi9n2x6nzlqh0szhawp9rahszjgwym",
+  "fetcher": "github",
+  "repo": "LionyxML/auto-dark-emacs",
+  "unstable": {
+   "version": [
+    20220320,
+    1703
+   ],
+   "commit": "c5dd3afa6771f4777db9e427f21bfcbe4883abaf",
+   "sha256": "0r4i664kybzzfmpn9w7pi1czjivq6kk1yqdym30c6kvdq1kv73d3"
+  }
+ },
+ {
   "ename": "auto-dictionary",
   "commit": "1711d710ac09fe407fde89ee351ccdcb78555d35",
   "sha256": "1va485a8lxvb3507kr83cr6wpssxnf8y4l42mamn9daa8sjx3q16",
@@ -5092,8 +5147,8 @@
    "deps": [
     "ht"
    ],
-   "commit": "db22c24d13532e80ce02c2f51f41f6c979cf0604",
-   "sha256": "0z1frm9kicrlb63iyk7wa5dpvy92ygh5vxaw2kv1rvnfbsfmxl7b"
+   "commit": "939aa7f58c555a05451238e40c34bc8da0150870",
+   "sha256": "1rqphhfvi91vgqqxahgm2zkxk12dvqxvqgraqgagc75xpqsgw423"
   },
   "stable": {
    "version": [
@@ -5242,8 +5297,8 @@
     20210805,
     1344
    ],
-   "commit": "beb7a4d2b15790502ac52f65588da3d23567f9db",
-   "sha256": "1pv88hrld0zifd7w52kqlx04fx3vfzrp56kzd2jk0fn3pvqdi5n7"
+   "commit": "5551157ab81b55322e7787ce16ba84162933aece",
+   "sha256": "18zrh7s8xn9spr5lg5zasdb3rkldnvmhi31z08d4rxjfpfhikcql"
   },
   "stable": {
    "version": [
@@ -5511,8 +5566,8 @@
     20190331,
     2230
    ],
-   "commit": "842ae4df222bbd6596068814ac1b1e505c2a6b7a",
-   "sha256": "19j76bgv5hca8i9385f1s66zj31y70fgppmvxdqrws4265zqc11d"
+   "commit": "09166f32d3ece2b297da036f0abbeba63329580e",
+   "sha256": "09j3mxa0803piywmfkvxg0jpgbx6qbvibsik8wsms898bg5n3s4d"
   }
  },
  {
@@ -5655,20 +5710,20 @@
     "avy",
     "embark"
    ],
-   "commit": "8cb3f7655a7868cebe756c1f6c9f2d07ca4da5d4",
-   "sha256": "1w1swb8qqqzp0b665bd8pbjykgy0523n1wjxwwd0jbma58c4j5xs"
+   "commit": "b80d96ce0ab79e73829322e46c6d7493eb2b8c34",
+   "sha256": "1jsynjl0y7w0jqxqlibg8m4rwzv9lxj443m6dlac6zncz8plnizp"
   },
   "stable": {
    "version": [
     0,
-    15
+    16
    ],
    "deps": [
     "avy",
     "embark"
    ],
-   "commit": "7814a7345067da31a1e7af682bb1f6f050527001",
-   "sha256": "08wj0p3plvblbmfmn4vsanhldr2csrnm1lhk3g1nic5v26yi5l64"
+   "commit": "5faf1389162dd64bfe3511dfb8f52c18efb5140b",
+   "sha256": "04xxwhh577aam0fqfmprxqaw0v1l6yidikr6chajcf16mf1wd2gv"
   }
  },
  {
@@ -6879,8 +6934,8 @@
     20210715,
     1004
    ],
-   "commit": "e6e73647e4c176ff4f89e09d54dae753f95c7a03",
-   "sha256": "06r3b4wggam2a0n87cnlkxsn16aam9c0wdi6niw6sainjmk0dw8g"
+   "commit": "7183369a489a12f4a776f03c8e1a9bfe62d0ab3d",
+   "sha256": "1fg0w1c1fdvqjf5rki4zw2m8zwdxsc2g43s9vm635v6akb8ryqmy"
   },
   "stable": {
    "version": [
@@ -7577,26 +7632,26 @@
   "repo": "Artawower/blamer.el",
   "unstable": {
    "version": [
-    20220227,
-    1237
+    20220302,
+    1936
    ],
    "deps": [
     "a"
    ],
-   "commit": "44cca9a637c967b8b0b6385f29572bd3b2999a53",
-   "sha256": "12ccpncf3l5pl5hmn9vaixwm34jy8rpf8iyyn3srj3v8mak3xsa0"
+   "commit": "0dc1328b8640207ac75a009c690d392f63c44f4d",
+   "sha256": "1sdgbwv3iiwcw5af7hdk04ab841nl8y8xm854b9qdh9n0micwx3a"
   },
   "stable": {
    "version": [
     0,
     4,
-    3
+    4
    ],
    "deps": [
     "a"
    ],
-   "commit": "44cca9a637c967b8b0b6385f29572bd3b2999a53",
-   "sha256": "12ccpncf3l5pl5hmn9vaixwm34jy8rpf8iyyn3srj3v8mak3xsa0"
+   "commit": "0dc1328b8640207ac75a009c690d392f63c44f4d",
+   "sha256": "1sdgbwv3iiwcw5af7hdk04ab841nl8y8xm854b9qdh9n0micwx3a"
   }
  },
  {
@@ -8104,8 +8159,8 @@
     "epkg",
     "magit"
    ],
-   "commit": "ee4491481955eb49de07693b58e00a5ff5908d0b",
-   "sha256": "1p13q43l9da48vpwgjwirwvwqwlmksgvq4w6n77sy6akx2xywgzv"
+   "commit": "378089e179e439a4999e14a410868743694cb911",
+   "sha256": "07wygkg94m5xr0r4yfcvcxdy3a9mh7pxfg3gzvy8dka6cax7fj25"
   },
   "stable": {
    "version": [
@@ -8596,11 +8651,11 @@
   "repo": "astoff/buffer-env",
   "unstable": {
    "version": [
-    20210520,
-    1616
+    20220325,
+    1659
    ],
-   "commit": "32c1cfdf06dfa7bdbd79aba8066064212672e755",
-   "sha256": "1mbrsakg7mbrr4szi7ha5hcfr88i79p5bn59dh7v6ywa357brmky"
+   "commit": "ba1c9d24d3f1ba58445cbf1f762ba6859b66f6bf",
+   "sha256": "0davkvlyqj78i6njhkjyrv4l7qnscysimssbwjsnl4lbk7c1z85k"
   }
  },
  {
@@ -8798,8 +8853,8 @@
     20200924,
     345
    ],
-   "commit": "327c378c333156321974ffcf93f19aa9fad59a9e",
-   "sha256": "02wihnxifb17g9hn0l6ia63whfxvx7351s64ffpvvjjryz8l95fg"
+   "commit": "1734ee6cadaa8094e6b06876c57dbca5dbd289cf",
+   "sha256": "0h8da68hclfjrxpq3h84fanldm8vgkriljw0qn2vwpdd5yw5258v"
   },
   "stable": {
    "version": [
@@ -9197,11 +9252,11 @@
   "repo": "jorgenschaefer/emacs-buttercup",
   "unstable": {
    "version": [
-    20210105,
-    2255
+    20220321,
+    1903
    ],
-   "commit": "1cb7afcb0b6d87a3e623dc26ffcb2c7d4d6dd280",
-   "sha256": "07f8lxcyi007qfhgq0yvpq1pg8hklzq94pfkzpqq2hb2cvyj2zb5"
+   "commit": "c365dae776f823aa7489bcf0f750ca748fefdb28",
+   "sha256": "1p7c6p33nk23jywwd9b7c7062chr8x0bjffgall9rxsyqczdqzxx"
   },
   "stable": {
    "version": [
@@ -9700,16 +9755,19 @@
   "repo": "chenyanming/calibredb.el",
   "unstable": {
    "version": [
-    20210603,
-    323
+    20220305,
+    1621
    ],
    "deps": [
     "dash",
+    "esxml",
+    "org",
+    "request",
     "s",
     "transient"
    ],
-   "commit": "cb93563d0ec9e0c653210bc574f9546d1e7db437",
-   "sha256": "10dymcd17ili5r6ydiz7bj0q81y5fh0s1d64m4acfa8xfsi7zx55"
+   "commit": "20337d39e3abe4baa38cc0ed5a6c65272df9af2d",
+   "sha256": "08ix2iq17xsl9dcnf0xik12ykpji77kb5xs91y23w1plfl1pl0zj"
   },
   "stable": {
    "version": [
@@ -9875,19 +9933,19 @@
   "repo": "minad/cape",
   "unstable": {
    "version": [
-    20220227,
-    316
+    20220313,
+    58
    ],
-   "commit": "fc7a20be524d0faa848ba2a16a80767a445a1391",
-   "sha256": "1dwbvixk2zr2k061zrljr933l2gpkx672d1d67gbz5znz4sbjsgh"
+   "commit": "79e8771c18c76a5bef5fdbf74718527e74b6d702",
+   "sha256": "1v5q066xppxf0crzcliqa2mya0x18qjmz5xp0mcr2szi1nps8z7s"
   },
   "stable": {
    "version": [
     0,
-    6
+    7
    ],
-   "commit": "92c3168283c6d9faa3fcf2e72d0d71afbfa5d6e1",
-   "sha256": "1bmxpfp0zs24lbp1mlcc66f4s5gxgrj78001h241mzndc3kaiqfk"
+   "commit": "51b9bf1276445faebfbad636d9b6a39dc57b22bc",
+   "sha256": "0731c55bb1vxdh8k7312z1bvf7g8jwr2n04q3ffpqp0fan6ra025"
   }
  },
  {
@@ -9901,8 +9959,8 @@
     20210707,
     2310
    ],
-   "commit": "fe82ae30fcd53dbe3c9ae7e14e495a79ac7a9c74",
-   "sha256": "02z2ss5kqmda32x4pwrjwqly2ia2wyw47pny6hh93mzpc453lmj0"
+   "commit": "281aacc18003ae103b8a04ea83d7b6f814c97b8b",
+   "sha256": "0v245k0fv0dsg706v34rg91h36avfvl3yfddll1gp9h87df04hkp"
   },
   "stable": {
    "version": [
@@ -9952,14 +10010,14 @@
   "repo": "kwrooijen/cargo.el",
   "unstable": {
    "version": [
-    20220208,
-    1933
+    20220311,
+    827
    ],
    "deps": [
     "markdown-mode"
    ],
-   "commit": "841ea7d85edd10c94138339469c4d8bbd03c8a29",
-   "sha256": "0gnah3bdcii2xrjnwpr9kzl5x8p85dv61yl48j3fizanjmwhan13"
+   "commit": "8335b5577dfa526c645f7c1839c473f99b9ad1a8",
+   "sha256": "0dw46rd1naz9z383bn3zzywz2955r4fw6a1v87m1scr3j42i6q4p"
   },
   "stable": {
    "version": [
@@ -10061,8 +10119,8 @@
   "repo": "cask/cask",
   "unstable": {
    "version": [
-    20211103,
-    1654
+    20220316,
+    1557
    ],
    "deps": [
     "ansi",
@@ -10073,14 +10131,14 @@
     "s",
     "shut-up"
    ],
-   "commit": "751435bd56c7123d8244d9d156309e21e63cd5c0",
-   "sha256": "0jxwsaam7hqvqbxrkzd7hy09l87yjsg7z89jikzs6vzc72h02g8x"
+   "commit": "218433b408b95efdc026081ee3f44e976a3aa36b",
+   "sha256": "08bniq7hba6438nfwfnmhkvm1yqln5f27239ndq1gbhc3wnnq61q"
   },
   "stable": {
    "version": [
     0,
     8,
-    7
+    8
    ],
    "deps": [
     "ansi",
@@ -10091,8 +10149,8 @@
     "s",
     "shut-up"
    ],
-   "commit": "9600dd9a341c61ac006c0a44912e13f3810f3c54",
-   "sha256": "0aqc3p7i00rbdgj2cjil71c8wqq9ard637fnpdq1ny6wnb8kblm7"
+   "commit": "9347a4d4459722f0863167bd21001477d76f3dc8",
+   "sha256": "1i948z6q07mfibs1v7k1cl8hs299m5vlm2brlpz9hm0bkfmmwm2f"
   }
  },
  {
@@ -10271,8 +10329,8 @@
     20210501,
     820
    ],
-   "commit": "ac0777ace98b6e8a8a10aa2302d51efeaa6f7893",
-   "sha256": "0r4ichirlmw6hsgq74kwnw235a85lkn528322rvd1zl1iir0ffsc"
+   "commit": "5c209e0306364118abf9d9440d7b8b9613183072",
+   "sha256": "1p7mwlnhsblr9ilns4vbadlbr1bz7w81das54znw6cnv4yjjzdan"
   }
  },
  {
@@ -10320,8 +10378,8 @@
     20200904,
     1431
    ],
-   "commit": "ac0777ace98b6e8a8a10aa2302d51efeaa6f7893",
-   "sha256": "0r4ichirlmw6hsgq74kwnw235a85lkn528322rvd1zl1iir0ffsc"
+   "commit": "5c209e0306364118abf9d9440d7b8b9613183072",
+   "sha256": "1p7mwlnhsblr9ilns4vbadlbr1bz7w81das54znw6cnv4yjjzdan"
   }
  },
  {
@@ -10590,8 +10648,8 @@
     20171115,
     2108
    ],
-   "commit": "64122d4a77d76689558412b55962cab60524c67c",
-   "sha256": "1a80pfhys8ja1nh32d3xqab0f7f1k3k5mzsvscnivk90cmsrakhb"
+   "commit": "6bbfdf3109f044191750ac893aadbfc0d1b2fb0e",
+   "sha256": "0mz18pj1phxpjp54w4l7xcrm3lzp9jick4fws1wy8mk4566qiixm"
   },
   "stable": {
    "version": [
@@ -10737,11 +10795,27 @@
  },
  {
   "ename": "cg",
-  "commit": "be27e728327016b819535ef8cae10020e5a07c2e",
-  "sha256": "1xffjilr9f2s3w7j8f3clq7qvsnr0lr8gadlybpzzy8x5fbmk4n3",
-  "error": "Not in archive",
+  "commit": "808b19a7c16fa977ecf22006c470cfb8b62b9e5d",
+  "sha256": "01aqh2xbg0bmj166lhxnl44qvwadsp2fcrm39w4hywccjpgvy94h",
   "fetcher": "github",
-  "repo": "emacsmirror/cg"
+  "repo": "GrammarSoft/cg3",
+  "unstable": {
+   "version": [
+    20220318,
+    1007
+   ],
+   "commit": "140a63995ca15d393c7e7003cf0e6edddcd4088c",
+   "sha256": "1ssl0nzm2bs3iyjak9x2gkl3206v5ihbzsspqrvrgijfv3h9yhzr"
+  },
+  "stable": {
+   "version": [
+    1,
+    3,
+    6
+   ],
+   "commit": "25afa64a35780b7d870a6c2467a404ea67d6d23f",
+   "sha256": "0jwyq878bayw4qx25ifc1gabsvg0xilsizg73lkwj06qzag2x0s9"
+  }
  },
  {
   "ename": "challenger-deep-theme",
@@ -11062,11 +11136,11 @@
   "repo": "tuh8888/chezmoi.el",
   "unstable": {
    "version": [
-    20220221,
-    1556
+    20220310,
+    2014
    ],
-   "commit": "0b25d312a84868d6cf76f2016cd0dbc70c9312a0",
-   "sha256": "0mqrxzk0skkc3wj3b44k10nnrg542jnh8s226v1mx4dbcxws8rdy"
+   "commit": "781783c483bc8fcdba3a230bb774c3a8a5ebe396",
+   "sha256": "0il36mnf4c13336sa4hpbfypdc983va5fcd5shcsp7slb9zwm69m"
   },
   "stable": {
    "version": [
@@ -11245,16 +11319,16 @@
   "url": "https://tildegit.org/contrapunctus/chronometrist.git",
   "unstable": {
    "version": [
-    20220224,
-    1017
+    20220326,
+    1439
    ],
    "deps": [
     "dash",
     "seq",
     "ts"
    ],
-   "commit": "7cf2c86afd8f6fb6235320ac9f7ebd76153d8bc6",
-   "sha256": "1gw69ps98bc28kwfqi6m9v4im71jla410ici5cyhfyk67m3dvgbb"
+   "commit": "3f52469f31f0bc23dd63d0b3c29bc2040dfcd98a",
+   "sha256": "1mjvn02dwhnwq6x1llnlpxzvpfkl753mbs68dahd520fvyjglnrq"
   },
   "stable": {
    "version": [
@@ -11298,14 +11372,14 @@
   "url": "https://tildegit.org/contrapunctus/chronometrist.git",
   "unstable": {
    "version": [
-    20220225,
-    950
+    20220326,
+    1439
    ],
    "deps": [
     "chronometrist"
    ],
-   "commit": "7cf2c86afd8f6fb6235320ac9f7ebd76153d8bc6",
-   "sha256": "1gw69ps98bc28kwfqi6m9v4im71jla410ici5cyhfyk67m3dvgbb"
+   "commit": "3f52469f31f0bc23dd63d0b3c29bc2040dfcd98a",
+   "sha256": "1mjvn02dwhnwq6x1llnlpxzvpfkl753mbs68dahd520fvyjglnrq"
   },
   "stable": {
    "version": [
@@ -11328,15 +11402,15 @@
   "url": "https://tildegit.org/contrapunctus/chronometrist.git",
   "unstable": {
    "version": [
-    20220215,
-    1904
+    20220321,
+    349
    ],
    "deps": [
     "chronometrist",
     "spark"
    ],
-   "commit": "7cf2c86afd8f6fb6235320ac9f7ebd76153d8bc6",
-   "sha256": "1gw69ps98bc28kwfqi6m9v4im71jla410ici5cyhfyk67m3dvgbb"
+   "commit": "3f52469f31f0bc23dd63d0b3c29bc2040dfcd98a",
+   "sha256": "1mjvn02dwhnwq6x1llnlpxzvpfkl753mbs68dahd520fvyjglnrq"
   },
   "stable": {
    "version": [
@@ -11408,8 +11482,8 @@
   "repo": "clojure-emacs/cider",
   "unstable": {
    "version": [
-    20220222,
-    1710
+    20220324,
+    542
    ],
    "deps": [
     "clojure-mode",
@@ -11419,26 +11493,25 @@
     "sesman",
     "spinner"
    ],
-   "commit": "7a072d8374eb92c8164b436ee271abb5e9e351e3",
-   "sha256": "098h86i41dqxydmhx9akiyixnz846i7jhl1hcsz7dnwl7ibbz14k"
+   "commit": "36277802a47b0dbc9c1fd60f60908963c59c58d6",
+   "sha256": "0z05paq62aq520n3nqc089pyx58yn670r80cda896syqs7qrxpq9"
   },
   "stable": {
    "version": [
     1,
-    2,
+    3,
     0
    ],
    "deps": [
     "clojure-mode",
     "parseedn",
-    "pkg-info",
     "queue",
     "seq",
     "sesman",
     "spinner"
    ],
-   "commit": "7869c66f81d8a2b47f2e2d912fcb96934f5aa39a",
-   "sha256": "1c21hdrf6b7zc65nr7wqjhcyq5a0f4aa91wrxgzx374q81xym2rf"
+   "commit": "02ca53021682f426323dc7bb4e6b28e6c8f5eb30",
+   "sha256": "0mxlkxpzn7rzbzpzcw2z9x2ab2zvhrwr8h21kmfn3li3dha73gf1"
   }
  },
  {
@@ -11641,14 +11714,14 @@
   "repo": "emacs-circe/circe",
   "unstable": {
    "version": [
-    20210717,
-    1041
+    20220320,
+    1811
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "77e16de3b9fbaa0417b56a9acc70a9bca17c4ad0",
-   "sha256": "1ww04kfz4kkbhrbd78r4dpylhayb5hl72qcjv8wm0mhgfwmbb358"
+   "commit": "e4c5bb69e6f1338239bdbf66baf57bb610828b2e",
+   "sha256": "05ddgcgqribdwbph7qkz5r24h1xsbrnhlg4yqgnyyw5kfxayapzj"
   },
   "stable": {
    "version": [
@@ -11719,8 +11792,8 @@
   "repo": "bdarcus/citar",
   "unstable": {
    "version": [
-    20220217,
-    1606
+    20220324,
+    1539
    ],
    "deps": [
     "citeproc",
@@ -11728,8 +11801,8 @@
     "parsebib",
     "s"
    ],
-   "commit": "b84cb375933053cf3e5408f0386034e8dabca5cb",
-   "sha256": "0hgyl2akvm5z13x403hmk3xyybbdp40sxbkf97m81k9y8m5fz7lz"
+   "commit": "e97e33128051b5311d640492a3dfaf8dd7cdfcfd",
+   "sha256": "0yyb3gq140cl4dxlaagm8rwxf4cvv51g20sv5d3xfkhbkymbqjf6"
   },
   "stable": {
    "version": [
@@ -11832,11 +11905,11 @@
   "repo": "universal-ctags/citre",
   "unstable": {
    "version": [
-    20220130,
-    538
+    20220324,
+    1741
    ],
-   "commit": "d7b6428da289c2f63a7a97f4eaba5b76616a09ce",
-   "sha256": "0kg64va0iqjzwswzs4z9sx278w20c35pg4ysp9x198z0575lvpid"
+   "commit": "8b51e58819e0a4b65c15f01177d1a154d9a9d153",
+   "sha256": "0yrcqypj1paszp2iwv0c67bh7vy1p3fj9n4h1ghn1y0pcqgbccb9"
   },
   "stable": {
    "version": [
@@ -12179,10 +12252,10 @@
  },
  {
   "ename": "clj-deps-new",
-  "commit": "733832bb1f0003cab6ca52ebba6cabc1bdf68659",
-  "sha256": "16jmdiavl7pg54kflfs1dkpislc6wbmnxxf0qh9idf584kkl1g1m",
+  "commit": "74d96277724fddaa7dbaa77795a02d4a97e499e6",
+  "sha256": "0q02wnv7i7bxz782yf5sk7lgisrh6064hagmyngpzx1dw1i29wcp",
   "fetcher": "github",
-  "repo": "jpe90/emacs-deps-new",
+  "repo": "jpe90/emacs-clj-deps-new",
   "unstable": {
    "version": [
     20220221,
@@ -12203,8 +12276,8 @@
   "repo": "clojure-emacs/clj-refactor.el",
   "unstable": {
    "version": [
-    20220213,
-    1906
+    20220315,
+    2251
    ],
    "deps": [
     "cider",
@@ -12217,14 +12290,14 @@
     "seq",
     "yasnippet"
    ],
-   "commit": "542225248e8d27111d6164292b37058ad5194984",
-   "sha256": "1xzr0yhsp45g4z634h7an5avndz8azz53ggxyyina06xrl1d2845"
+   "commit": "f368c56c83843396b160440f472a661a3b639862",
+   "sha256": "0xp17gc5ipm7jzyx8smnq5z3hb7nb36c11f5c637chg3qdhw1r8m"
   },
   "stable": {
    "version": [
     3,
-    3,
-    3
+    5,
+    2
    ],
    "deps": [
     "cider",
@@ -12237,8 +12310,8 @@
     "seq",
     "yasnippet"
    ],
-   "commit": "542225248e8d27111d6164292b37058ad5194984",
-   "sha256": "1xzr0yhsp45g4z634h7an5avndz8azz53ggxyyina06xrl1d2845"
+   "commit": "f368c56c83843396b160440f472a661a3b639862",
+   "sha256": "0xp17gc5ipm7jzyx8smnq5z3hb7nb36c11f5c637chg3qdhw1r8m"
   }
  },
  {
@@ -12465,20 +12538,20 @@
   "repo": "clojure-emacs/clojure-mode",
   "unstable": {
    "version": [
-    20220222,
-    827
+    20220307,
+    1903
    ],
-   "commit": "4a0b598c340143c5d9d39e36d32cee9693ec0e32",
-   "sha256": "0rias19vnxpf190mijncbajym07p3pslhxssq3kf1pwbx256aa1w"
+   "commit": "c339353f9e649b3af084f1bb6ce759e614a2f243",
+   "sha256": "062vkzp5y8f8afz0rbgagqrsmmfnwmhkg7n9ainqp7m2h52qqzbb"
   },
   "stable": {
    "version": [
     5,
-    13,
+    14,
     0
    ],
-   "commit": "0e886656c83e6e8771f748ec698bb173adcb0968",
-   "sha256": "1ikl29rygr1habcsglz07m4ihd4ivi732kkzg8q676ihf367wa9i"
+   "commit": "b7d08b87f6a116ff47b33ee857926b60c66c3ab7",
+   "sha256": "0n7v6hx21f8x37gj388wnff38aqpzxxv5g8vxavp74vr3cbagsnn"
   }
  },
  {
@@ -12495,20 +12568,20 @@
    "deps": [
     "clojure-mode"
    ],
-   "commit": "4a0b598c340143c5d9d39e36d32cee9693ec0e32",
-   "sha256": "0rias19vnxpf190mijncbajym07p3pslhxssq3kf1pwbx256aa1w"
+   "commit": "c339353f9e649b3af084f1bb6ce759e614a2f243",
+   "sha256": "062vkzp5y8f8afz0rbgagqrsmmfnwmhkg7n9ainqp7m2h52qqzbb"
   },
   "stable": {
    "version": [
     5,
-    13,
+    14,
     0
    ],
    "deps": [
     "clojure-mode"
    ],
-   "commit": "0e886656c83e6e8771f748ec698bb173adcb0968",
-   "sha256": "1ikl29rygr1habcsglz07m4ihd4ivi732kkzg8q676ihf367wa9i"
+   "commit": "b7d08b87f6a116ff47b33ee857926b60c66c3ab7",
+   "sha256": "0n7v6hx21f8x37gj388wnff38aqpzxxv5g8vxavp74vr3cbagsnn"
   }
  },
  {
@@ -12795,11 +12868,11 @@
   "url": "https://gitlab.kitware.com/cmake/cmake.git",
   "unstable": {
    "version": [
-    20210104,
-    1831
+    20220322,
+    1258
    ],
-   "commit": "a2513bb55e05bb503f6c0a0122eed17a33aa1354",
-   "sha256": "0jgjn78y3kmfmzyhvp3j0lclaxfpa8im7d8gvvzr5qv1j83dprdr"
+   "commit": "843d1d198d15f65781d71118573461fb03a3101c",
+   "sha256": "000ls9briydjr5akwm7zcia3ir9l9i7xwgn06qp3wl5j9wgasbh2"
   },
   "stable": {
    "version": [
@@ -12807,10 +12880,10 @@
     23,
     0,
     -1,
-    2
+    5
    ],
-   "commit": "352ea99bbacf6e57bca47f43725d98b2a4a0b87d",
-   "sha256": "1dg1lk5f8qpx0scp33yqvbmwxaci484bawm70l9wkx8q2zjsljsh"
+   "commit": "18b02cc127730e3b007c2b56c6e115d476f0d5e0",
+   "sha256": "0qglzmmy4kyylz5fxg25mhwg01d5x5dpblh4zm3vyvmydbrdik7r"
   }
  },
  {
@@ -12962,11 +13035,11 @@
   "repo": "astoff/code-cells.el",
   "unstable": {
    "version": [
-    20211014,
-    738
+    20220305,
+    1320
    ],
-   "commit": "f5150fc213da470da2d4fedaa4b86f476167b235",
-   "sha256": "1p8a4ga6pysqd41frzzpi0a5bv1a0qmn136srfqqkkg60y5rlnl0"
+   "commit": "8660bdeedee360e5eb632f1eb1356eb09d7dfbee",
+   "sha256": "0mvfsdlhc3znc0d2p8vm7apkbpvbs688wmwvd0sms33qly53f546"
   }
  },
  {
@@ -12995,8 +13068,8 @@
   "repo": "wandersoncferreira/code-review",
   "unstable": {
    "version": [
-    20220107,
-    1355
+    20220318,
+    1429
    ],
    "deps": [
     "a",
@@ -13009,8 +13082,8 @@
     "markdown-mode",
     "uuidgen"
    ],
-   "commit": "ced8a31f331c034b00165d1eb6ac76f5a21db9b6",
-   "sha256": "1yrgkj634p9hf1jrlcy6f4yydyc4z5ig7pq14yxhfcnw0cf8ksr6"
+   "commit": "6a10610826990e62c99486e30c0b3ef5869559e3",
+   "sha256": "0zajjm560vyjryr9yclda0j6f13w44mqzh1rz7kqxfl5sp6sv53m"
   },
   "stable": {
    "version": [
@@ -13210,14 +13283,14 @@
   "repo": "ankurdave/color-identifiers-mode",
   "unstable": {
    "version": [
-    20210607,
-    1842
+    20220318,
+    1558
    ],
    "deps": [
     "dash"
    ],
-   "commit": "fa42b60f9e84995a8109a49798c0b4c618fc1ed3",
-   "sha256": "12ybgh8yzi62lw0c7yakgvfdx45sr11szyqdlf58n2pbkz9sxkmv"
+   "commit": "05dfc97b004f1a962313710d81cffae3b2f9c98a",
+   "sha256": "161mn6b14kbpf4lyqw9ijxqir8qxbz9rr7ydx03z6shjfp7ciz54"
   },
   "stable": {
    "version": [
@@ -13462,8 +13535,8 @@
    "deps": [
     "s"
    ],
-   "commit": "fd84b0e32a0faa450df6035fb94ce96aa777b237",
-   "sha256": "0gb30gyadxvc47zrvkjkjil3qj6mxavxagzyp21jlxx7fn3n0fic"
+   "commit": "d4958edf2a4a8cbe55097320e191045d496847d8",
+   "sha256": "1yi1ha4iyfb0362x7wk65lksh6377mga0xyva65s035i75r4k05n"
   },
   "stable": {
    "version": [
@@ -13797,11 +13870,11 @@
   "repo": "company-mode/company-mode",
   "unstable": {
    "version": [
-    20220110,
-    2248
+    20220326,
+    48
    ],
-   "commit": "c25f1fbc3850e36e6521b77fa1641d5583365d8b",
-   "sha256": "1ski2dv8ndlrpad08xg1bz9fxy8lj3c27z8i0vlc96x40nc788bh"
+   "commit": "783287526a791590bea4f9a23992c2bfebdb4c8d",
+   "sha256": "1cxr4dc0yfnccjk3l3sc15ys0pzff0r133msq59nzk6r48ba9p0q"
   },
   "stable": {
    "version": [
@@ -14041,8 +14114,8 @@
   "repo": "cpitclaudel/company-coq",
   "unstable": {
    "version": [
-    20210708,
-    2357
+    20220314,
+    526
    ],
    "deps": [
     "cl-lib",
@@ -14051,8 +14124,8 @@
     "dash",
     "yasnippet"
    ],
-   "commit": "382db93374380e5db56f02934ee32bbe39159019",
-   "sha256": "1vlbw54a02qy77ad2qgd6sy7y3b6x1y1nm3bjxcd7f67hnncjg0p"
+   "commit": "a6e349e0131f676a885bd14c908fd26054b2df42",
+   "sha256": "1qws0a0ia039d6bv2sbjsdl1ry28y9jrv98qnp5jcm7jfb2jmvsp"
   },
   "stable": {
    "version": [
@@ -14255,8 +14328,8 @@
     "emojify",
     "ht"
    ],
-   "commit": "01cbc9bf1b073abc5cf567479a3cf4b6f929d474",
-   "sha256": "115smqwz19c4pxh3asg046kq0pmdnwj2qz1s36h833kzz1ig3rn2"
+   "commit": "34f33e4bd1fc11da306c1d159def96cd92e4c00f",
+   "sha256": "0v6j7xjl5gs513gydxj2hn5f17p6y6fqbf8ik8v5ac5lifhwcn6q"
   },
   "stable": {
    "version": [
@@ -14351,16 +14424,16 @@
   "repo": "jcs-elpa/company-fuzzy",
   "unstable": {
    "version": [
-    20220222,
-    613
+    20220325,
+    1206
    ],
    "deps": [
     "company",
     "ht",
     "s"
    ],
-   "commit": "122cdecee0a269b014471875f3eb29cd8af96d6e",
-   "sha256": "1wnh11m9pqlin58izx5w72a807pi59dj7mfhl5jfvsk7ds29yb04"
+   "commit": "4fd30469d50a5d49e035a02a29c6acf5fb72a494",
+   "sha256": "1qqdma87jvmybd0af5ls86v2k62586ijqkymg99w6dxvlsd8wj6w"
   },
   "stable": {
    "version": [
@@ -14922,8 +14995,8 @@
     "company",
     "phpactor"
    ],
-   "commit": "585862496e8ac9f496c0c99c5b97af456cb1f73c",
-   "sha256": "1y5g5g2d5g9xiw3vwxqnmz58gyfn9hybpfzcjhyjhnjma74jkqfr"
+   "commit": "34195f1533209e2ffd0f898a69c7db2bffd1eabe",
+   "sha256": "1xp4v5dm2x31xp5rq80jii2y8nprqd3jcmzpc0dp9xk3fq9hbq7l"
   },
   "stable": {
    "version": [
@@ -15062,8 +15135,8 @@
     "company",
     "prescient"
    ],
-   "commit": "3dbcef387502d309d130a518a18d48cd2f0e15b7",
-   "sha256": "024l7s0b6apbzanw3cnhjypxnxfinfb5b3nhaabrc138m5pis8j5"
+   "commit": "c5295a9eecbd2935bb57684a4422638e03bf738c",
+   "sha256": "1wfmynbqaqvrkjdncx0wmqxz6v8zlfmqlh5l3h6876jin97i5fbv"
   },
   "stable": {
    "version": [
@@ -15144,8 +15217,8 @@
     "company-quickhelp",
     "popup"
    ],
-   "commit": "5bafab30e0edb99a3064edf1e9265a416c632a71",
-   "sha256": "0nbncspzxrqqn7gsaapwy3dqd00gxzzjcf7xl0i8g1glsw4nwabv"
+   "commit": "fe68967d901ec284022fd67d296866795476e60d",
+   "sha256": "1586vwl280z463h9yb5ijjhwi3dmizcmwxy54rh2pd8yljgxsjlm"
   },
   "stable": {
    "version": [
@@ -15317,8 +15390,8 @@
     "company",
     "solidity-mode"
    ],
-   "commit": "f0f68b038c5edf16c85fc8ca58537e1c6479738b",
-   "sha256": "0hfp07bg348ppkgp5wca1sqpcprhc6jyxkpb1pmsm0vrifb3261l"
+   "commit": "20fb77e089e10187b37ae1a94153017b82ed2a0a",
+   "sha256": "0lyfhb4lirk08jc73c2vhlskfb496vnh0h906a74wz2pwg84q4m5"
   },
   "stable": {
    "version": [
@@ -15840,8 +15913,8 @@
   "repo": "necaris/conda.el",
   "unstable": {
    "version": [
-    20211123,
-    357
+    20220315,
+    1533
    ],
    "deps": [
     "dash",
@@ -15849,8 +15922,8 @@
     "pythonic",
     "s"
    ],
-   "commit": "7a34e06931515d46f9e22154762e06e66cfbc81c",
-   "sha256": "0n1w3gx7xv84nc5hz8w1ab2ml45g64jx05cwrflf5kqmx496phms"
+   "commit": "9c28d7a853b4b4bd00215cf7f07856c1563f2ad7",
+   "sha256": "03r9f2pvxxv6nlxgljnd5cmnlvsykypdl38cfi79iw3spr0lcrxn"
   },
   "stable": {
    "version": [
@@ -16004,19 +16077,19 @@
   "repo": "minad/consult",
   "unstable": {
    "version": [
-    20220227,
-    1400
+    20220319,
+    2221
    ],
-   "commit": "782a90da29568a79259464c1c11854a3e16ea36e",
-   "sha256": "01f16chhk4s53xmrl6c3a4nac8qmx6cdwlmxkhnc7a032njgd9bi"
+   "commit": "47c4f405efdf4692c6b7e1dd2098573db9aeae6c",
+   "sha256": "1nph35a4q2a4sbsmh9hcxvwcr4pfshnmrc8ahk4qn825a7iny70w"
   },
   "stable": {
    "version": [
     0,
-    15
+    16
    ],
-   "commit": "e1e17965a98515a620c439be1eb28cd125f984a0",
-   "sha256": "0cfj8h0k05947cazsr95yy75shs0vpy59sa41f31xbw00q9l48q6"
+   "commit": "800824601b610016066991d6e2dde198d4b0ad8f",
+   "sha256": "1mravx5aapy8bcgk6nvi1jvb5jgl7jsn7pd7br7v7fqadcp225m6"
   }
  },
  {
@@ -16133,6 +16206,24 @@
   }
  },
  {
+  "ename": "consult-flyspell",
+  "commit": "1750efda60a7c884f89ef22ed00d89a41d245272",
+  "sha256": "0n1kby3hs1cn48z5qsc9dh1897rpd0paji8cyx7pssncaz8mzhfy",
+  "fetcher": "gitlab",
+  "repo": "OlMon/consult-flyspell",
+  "unstable": {
+   "version": [
+    20220227,
+    2210
+   ],
+   "deps": [
+    "consult"
+   ],
+   "commit": "2e7b99dec6c51259d0bffbae3e863f4054dd2346",
+   "sha256": "1cj3ahxdihi4v4x5qsn1lgacl7dzswy79qli23zrkxaw78x8is0i"
+  }
+ },
+ {
   "ename": "consult-ghq",
   "commit": "513921c684fbab5ff57e47c509a89b15d7d3a5ce",
   "sha256": "091018x5y28lbffjrb75a5r2cvprlhz0jdj371nlyvrpsdgdfs4f",
@@ -16172,16 +16263,16 @@
   "repo": "gagbo/consult-lsp",
   "unstable": {
    "version": [
-    20220109,
-    937
+    20220320,
+    1125
    ],
    "deps": [
     "consult",
     "f",
     "lsp-mode"
    ],
-   "commit": "f4f195046b97be5ce0406e0723921b3393d9442e",
-   "sha256": "094i7g10m8702sxvgis46wnx492fq2kfv641a7255qs51l3y2r49"
+   "commit": "0dfc9d55876d4cf7c32f8a663fe6343927f78052",
+   "sha256": "15w586gp8x4d52wlf4b6lcmgsidav8slqr97yrj1jfhyri2sryx9"
   },
   "stable": {
    "version": [
@@ -16205,27 +16296,27 @@
   "url": "https://codeberg.org/jao/consult-notmuch.git",
   "unstable": {
    "version": [
-    20211229,
-    420
+    20220302,
+    229
    ],
    "deps": [
     "consult",
     "notmuch"
    ],
-   "commit": "0b7fae73f51bc855078dca9593c8c7f67fe2ed98",
-   "sha256": "0kiwc7qbhkmaj5hlarxsv3gy3gikykvxklgqkq8f68jjfgb0hdag"
+   "commit": "883527072b56bb09dd921800bca13860caaa4ffe",
+   "sha256": "0xzpkpf2sb89qkbqcrwddp4pgnzdjp40bc5da22jq9r4pf67y7qs"
   },
   "stable": {
    "version": [
     0,
-    6
+    7
    ],
    "deps": [
     "consult",
     "notmuch"
    ],
-   "commit": "a5509cfd0c9f69327ab63fd18e548b7f39be16c8",
-   "sha256": "07qbm5p4cfrrwyp8a5sw0wkdhnqbappz4xjlnjil2krhj9g39q78"
+   "commit": "883527072b56bb09dd921800bca13860caaa4ffe",
+   "sha256": "0xzpkpf2sb89qkbqcrwddp4pgnzdjp40bc5da22jq9r4pf67y7qs"
   }
  },
  {
@@ -16236,15 +16327,26 @@
   "repo": "Qkessler/consult-project-extra",
   "unstable": {
    "version": [
-    20220222,
-    1825
+    20220228,
+    843
    ],
    "deps": [
     "consult",
     "project"
    ],
-   "commit": "b2a7062251b101aa9d1ba6c1f3f65c69ebdfd784",
-   "sha256": "14ji1vjj265j0chn3fk9ncm4l66j6jq0g2nq5qz94qnpk1fadf8s"
+   "commit": "897f2f71a94ce1b72c3bf823e14791a332befbb7",
+   "sha256": "1c0nllj6hhgvjf7zzy44iacnl29flg54ahb26r4bi9lip8aw65xs"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "deps": [
+    "consult"
+   ],
+   "commit": "fee931a63317bcc183c34a84b758db561db3f2dd",
+   "sha256": "1ybgwf56ydfgww1yhbxpipknvi01h2svpjh05b8x825qmplslidp"
   }
  },
  {
@@ -16255,15 +16357,15 @@
   "repo": "OlMon/consult-projectile",
   "unstable": {
    "version": [
-    20220225,
-    1544
+    20220310,
+    1840
    ],
    "deps": [
     "consult",
     "projectile"
    ],
-   "commit": "758cfc259ae83421d008731642ff1ada41b7b514",
-   "sha256": "0fsqz88xplbkr6hl8zwmg65s3d8jjfnvf2bdfv795i0n8lsprl3c"
+   "commit": "df85d0f83c323f4672221c9e78d84027bcb9d96f",
+   "sha256": "178405z6vasr44p1rg1n1ar4vwbvp04n5fnyma1j327lp8lbppmi"
   }
  },
  {
@@ -16286,13 +16388,13 @@
   "stable": {
    "version": [
     0,
-    3
+    4
    ],
    "deps": [
     "consult"
    ],
-   "commit": "1b21fa157ba40fcfeecd0a10c5c82ecfb87aee53",
-   "sha256": "0bfvxzvyppkqfdj4cm5haqgkd72wrh5l7x8ldnpycapqyjpv9pip"
+   "commit": "228306eeda8c57db45609ca068f60ee433367c17",
+   "sha256": "0rxfxws0d65sdjph91g77a2sy1k90y9hgyps4da0a6kvbm3zprgg"
   }
  },
  {
@@ -16599,6 +16701,24 @@
   }
  },
  {
+  "ename": "corfu-doc",
+  "commit": "78440eba5512b37243de24364afd5d7f46f8fcca",
+  "sha256": "0vi12khc9c9gcz8lagw75zkx377f7f6qdlgjr6rg37nd3ip4pkj0",
+  "fetcher": "github",
+  "repo": "galeo/corfu-doc",
+  "unstable": {
+   "version": [
+    20220318,
+    1052
+   ],
+   "deps": [
+    "corfu"
+   ],
+   "commit": "95fdae5755e6c88cf77b409b555290c36961ec6c",
+   "sha256": "09lmvb88nj7ivsr6gh93xhbfav80pm69z3dgnifnn1g2gfjnjjka"
+  }
+ },
+ {
   "ename": "corral",
   "commit": "7b0d7e326f0401de0488b77d39af7bd7b8e8fdd4",
   "sha256": "1drccqk4qzkgvkgkzlrrfd1dcgj8ziqriijrjihrzjgjsbpzv6da",
@@ -17105,8 +17225,8 @@
     "dash",
     "ivy"
    ],
-   "commit": "6ba0f2ac7e4e5b8c1baec90296d9f24407d8d632",
-   "sha256": "1kp83cql4gn9g3d8g5mw3mrmpfj407kzpsi5wmwl1jr1pmw3v3jc"
+   "commit": "0f790def6ac2b5a84d01eed47a7ee53619a8f5b9",
+   "sha256": "1p15g5bc1pgibvqv6akp4dmqzysws26dhpnxgswmclrq0hy0qwjx"
   }
  },
  {
@@ -17142,8 +17262,8 @@
     "counsel",
     "projectile"
    ],
-   "commit": "e30150792a96968f55f34638cbfe63eaa30839cc",
-   "sha256": "1vp39r5njfzchkqv9g0w77whazp070anh9gmbkp3z4n3xxbik27f"
+   "commit": "40d1e1d4bb70acb00fddd6f4df9778bf2c52734b",
+   "sha256": "1qgm0c9s6lwwjqm137sicy9pl045rik24gy6g1imizr2s9r2b57c"
   },
   "stable": {
    "version": [
@@ -17392,8 +17512,8 @@
     20210510,
     1540
    ],
-   "commit": "d8a72a311c6875f1aef6a30b3d23a1b02df75941",
-   "sha256": "0sczdlhpqs0pgka426ngvvcf01c6lvgk2aykajc5b2zgxywkfg40"
+   "commit": "683c23afa2a37272be54de822ad19f4e11dd86ba",
+   "sha256": "08sffa51f4p2la199hf6zb2r2hyvrpdcd2q6q4sig3gmyk75qlbm"
   }
  },
  {
@@ -18141,8 +18261,8 @@
     20220130,
     2307
    ],
-   "commit": "38b5e94bf718eeea0b880a78ed52926dec89fea9",
-   "sha256": "0yc89vfca2q9bii4145wkyb5g4nil3n14b8af08npjhmb2i85aw1"
+   "commit": "56021fd53efd775d91db2730e4ab4d5c157c513f",
+   "sha256": "093ximdpb9bzrnayc47is6i6jya8s5jkq7f8njnqd07hh5bm3l20"
   },
   "stable": {
    "version": [
@@ -18603,8 +18723,8 @@
     20211111,
     1407
    ],
-   "commit": "11a9e73a4e67b162b10d3db70b513b4d14bb7a43",
-   "sha256": "0dh67z7aq7jq8bjdi1k7j1c3sb2b9xm8p147qv4rlllfgfqxnmig"
+   "commit": "d85cbf676dd7bec80fbfc23d038575a21859ac87",
+   "sha256": "16ix9zxwmr0m8c6p61dddwmgs95jv942pr9alz9az7dw71d0flac"
   },
   "stable": {
    "version": [
@@ -18755,11 +18875,11 @@
   "repo": "rails-to-cosmos/danneskjold-theme",
   "unstable": {
    "version": [
-    20220214,
-    552
+    20220316,
+    1101
    ],
-   "commit": "eaf1c6a99cd1697a805a3f04325906412eef8171",
-   "sha256": "1nb34gmzlypq3yccm4dwii86pn6k75hb9y50ldsyx3x93zwcm3dk"
+   "commit": "054c0b9bc9cefb53a4065096e66707d20885c461",
+   "sha256": "1bw9ng01d0y6ri67w42z8ql37kxxra59v4cnra94s00abc212lja"
   }
  },
  {
@@ -18811,8 +18931,8 @@
   "repo": "emacs-lsp/dap-mode",
   "unstable": {
    "version": [
-    20220226,
-    1848
+    20220325,
+    1144
    ],
    "deps": [
     "bui",
@@ -18824,8 +18944,8 @@
     "posframe",
     "s"
    ],
-   "commit": "6933fca0b53ea5d2d65a0545e5a4ae6424d32e9b",
-   "sha256": "1m99z72qmq4ghaiv5s9bqzx4aj1wj4r1d233h6a92hw7kdd9hj0l"
+   "commit": "f918c0580bd17105cbe50aa701a2375abca5a6ab",
+   "sha256": "12wnvj6bnz9xx9skzqjmldn9ak0pxm46b2g7ishj7q810fg5hzws"
   },
   "stable": {
    "version": [
@@ -19175,11 +19295,11 @@
   "repo": "emacs-dashboard/emacs-dashboard",
   "unstable": {
    "version": [
-    20220208,
-    915
+    20220326,
+    725
    ],
-   "commit": "7ae46300df5d22d3941ff9f10bc52d232985b628",
-   "sha256": "1qv5vffbf0wjymdhabc3jl4h9ib9x38swabsjs23rm3a5jf9b091"
+   "commit": "1d3fce6e8e8605f770f2b23184b055029128c477",
+   "sha256": "0kylaqz16xmc22xainarnwn31rlanw3ycapdxga0hgyg972p1z45"
   },
   "stable": {
    "version": [
@@ -19221,14 +19341,14 @@
   "repo": "emacs-dashboard/dashboard-ls",
   "unstable": {
    "version": [
-    20220117,
-    1607
+    20220326,
+    628
    ],
    "deps": [
     "dashboard"
    ],
-   "commit": "cde30ac64006f79be71c9e59eda2218d725e2bee",
-   "sha256": "0272j1wr7399zfpl0vdk397dmi1ll3bqrv5h6rrbwg8vvmfk01vj"
+   "commit": "73d280e029dfb68c2666dbc20130300439b170b7",
+   "sha256": "1rsv008hfk8v8wkhfqhhpyf5k7hhhh0aisa36ram6a3y5gwj0ac5"
   },
   "stable": {
    "version": [
@@ -19508,15 +19628,15 @@
   "repo": "skk-dev/ddskk",
   "unstable": {
    "version": [
-    20220227,
-    1955
+    20220305,
+    522
    ],
    "deps": [
     "ccc",
     "cdb"
    ],
-   "commit": "ac0777ace98b6e8a8a10aa2302d51efeaa6f7893",
-   "sha256": "0r4ichirlmw6hsgq74kwnw235a85lkn528322rvd1zl1iir0ffsc"
+   "commit": "5c209e0306364118abf9d9440d7b8b9613183072",
+   "sha256": "1p7mwlnhsblr9ilns4vbadlbr1bz7w81das54znw6cnv4yjjzdan"
   }
  },
  {
@@ -19659,11 +19779,11 @@
   "repo": "lifelike/decide-mode",
   "unstable": {
    "version": [
-    20211127,
-    2248
+    20220319,
+    1927
    ],
-   "commit": "668fa559b95b50f140e73f26a21fad559c1ffa77",
-   "sha256": "1wbiy8lda6p888qf4ak8j02cp42h25y17xnz5bq5p032xgq731n0"
+   "commit": "b4feee9d5ad32c7b73ab3e1da5cfcdab532754c2",
+   "sha256": "0xwflq1k4x2br5dw8fhqbz6zq4hbwvknrnzd2c2b1l68l4y7rs3j"
   },
   "stable": {
    "version": [
@@ -19701,11 +19821,11 @@
   "repo": "sanel/declutter",
   "unstable": {
    "version": [
-    20210904,
-    2039
+    20220310,
+    2101
    ],
-   "commit": "e08195e2f5691ad0ec9090d7edf550608e13fcfa",
-   "sha256": "1hjdjd0nmknv8yppda89hsgkyvk52zcwz92cdxsng87rlp9hwddv"
+   "commit": "8ac50a64dc3a12440d98bc1556b5c7727fdf51ed",
+   "sha256": "0kmkb5gfldim2nqkb4mnjllp1nvkr7c3j1zk84crfyxy45ln7lv4"
   },
   "stable": {
    "version": [
@@ -19837,8 +19957,8 @@
     "s",
     "wiki-summary"
    ],
-   "commit": "70dd874c7cd8fef9de17984f1e360fe1d9f0d3e1",
-   "sha256": "0q1z1p4wmqaa0jdkw98brnvz7nz7nwgwpfcwa7ildjldl8k8xb06"
+   "commit": "ba801ce1851a83bad2b962c47aef1f86f56286dd",
+   "sha256": "0psf7cnps4qkxz48cqvkgqcqyll825d5zdlw297v670rjjxbpclm"
   },
   "stable": {
    "version": [
@@ -19983,6 +20103,30 @@
   }
  },
  {
+  "ename": "demap",
+  "commit": "3cede53ed6d8133241ea0a1949f4ba5ed51805c2",
+  "sha256": "1syza8lkph1p7wp40pcb46pziqbq7nw0jjh6563rcicngqyzhngc",
+  "fetcher": "gitlab",
+  "repo": "sawyerjgardner/demap.el",
+  "unstable": {
+   "version": [
+    20220322,
+    2309
+   ],
+   "commit": "c42ec4752544f80ca7c172ff65e705a56089bc96",
+   "sha256": "0nh0g7a6svwwp3hinc8c3x3ln76z8hgzddc4lx4z0dzzj6bwakz7"
+  },
+  "stable": {
+   "version": [
+    1,
+    4,
+    0
+   ],
+   "commit": "c42ec4752544f80ca7c172ff65e705a56089bc96",
+   "sha256": "0nh0g7a6svwwp3hinc8c3x3ln76z8hgzddc4lx4z0dzzj6bwakz7"
+  }
+ },
+ {
   "ename": "demo-it",
   "commit": "1dec5877db00c29d81d76be0ee2504399bad9cc4",
   "sha256": "063v115xy9mcga4qv16v538k12rn9maz92khzwa35wx56bwz4gg7",
@@ -20200,11 +20344,11 @@
   "repo": "astoff/devdocs.el",
   "unstable": {
    "version": [
-    20220226,
-    925
+    20220326,
+    943
    ],
-   "commit": "cdc1a7cc3f05235883ffb098fe1c5a8963ed06e2",
-   "sha256": "1r84yimb8dc1i6ybc2vngvv38ypfnjwrbp93n13h9ij2p9dmxl8p"
+   "commit": "be6cdf690a49d5bb39da7ea29c10cec660f7c60a",
+   "sha256": "0wq220bv7k2aqqsfc83akg6ygrwshn5haaqibpzgr05n8w4264v6"
   }
  },
  {
@@ -20417,11 +20561,11 @@
   "repo": "ideasman42/emacs-diff-ansi",
   "unstable": {
    "version": [
-    20220211,
-    548
+    20220323,
+    106
    ],
-   "commit": "6ced92510df2c121e577189fa838dbf84303a0a9",
-   "sha256": "0mdyb2mlckcwphm6yaapdw6m2w2br0yfsvi6maw422mnm6nvjlwh"
+   "commit": "39b39a7265c59e413ff32f1fccebe4dc1a7a966e",
+   "sha256": "1kw2fvkfydyc8fbwqf4r88qgzrl85qzypjwzklkpwsawdpp6vzs2"
   }
  },
  {
@@ -20555,11 +20699,11 @@
   "repo": "mgalgs/diffview-mode",
   "unstable": {
    "version": [
-    20150929,
-    511
+    20220322,
+    2334
    ],
-   "commit": "031b70913e755c5e55222680f80185032a7d1728",
-   "sha256": "0diw887x4q7kbgdvxbbnxdw51z33kqwxw3v9m45fczxbywyi4cxf"
+   "commit": "af2251a01f532efa819d236802cb3d942befe5a1",
+   "sha256": "1x4xgq964rxx6ngxclsvkil3g1rplrwd1dl3hy2613kacd1n5pjn"
   },
   "stable": {
    "version": [
@@ -20791,8 +20935,8 @@
     20220218,
     1541
    ],
-   "commit": "8db04f40c269127919e1081c658f93bf7fe395f5",
-   "sha256": "1j6ym1bbld1bys5q5pm0rrx1m9922rr7fw82r2alvzrb78my660i"
+   "commit": "8f517bbb04411a125860ce4fb169bcea06b364e9",
+   "sha256": "0frffd2b7q22xdvk9li9vivd810sy6xkw001ajc0q7c70wxj0ksk"
   },
   "stable": {
    "version": [
@@ -21231,11 +21375,11 @@
   "repo": "thomp/dired-launch",
   "unstable": {
    "version": [
-    20211205,
-    712
+    20220317,
+    1839
    ],
-   "commit": "b4a5341e22efed3c1a261b9b5098d7c429d655d1",
-   "sha256": "1i0lc6sq87yyg1xzj2qqk3rld9j0mvbl7vhlpdpk75g7nlfi2w8w"
+   "commit": "72ebbe2b3d2e04dbfda636fa114d4f47835ce044",
+   "sha256": "0z53ymlbyan542mzsjkgab29czx2zk05qgady99kg40rik78599q"
   }
  },
  {
@@ -21458,15 +21602,15 @@
   "repo": "stsquad/dired-rsync",
   "unstable": {
    "version": [
-    20210806,
-    850
+    20220313,
+    1533
    ],
    "deps": [
     "dash",
     "s"
    ],
-   "commit": "7940d9154d0a908693999b0e1ea351a6d365c93d",
-   "sha256": "0fhbpy9y89jm03hjqp317h0aj9iasbdan0h829rhjhga11x8rw2y"
+   "commit": "b327971d197e95e9b78e7ef92539bd4196a12797",
+   "sha256": "15bkjvrdyn1bpvj0lpxm370cl7phyypmpswc80qngx2axdqbr0a2"
   },
   "stable": {
    "version": [
@@ -21489,14 +21633,14 @@
   "repo": "jojojames/dired-sidebar",
   "unstable": {
    "version": [
-    20210608,
-    2340
+    20220317,
+    1546
    ],
    "deps": [
     "dired-subtree"
    ],
-   "commit": "6be2dad2782e28dae2f50c0cbfd82042b2b6ba8d",
-   "sha256": "1lqnd64ga7g8dzzgfn2bw00y65hlvlgxnj3bk7j6qr5wzkz6qp52"
+   "commit": "aed7e44b5a4ef37fa7be6210ddfe73bb724bac6f",
+   "sha256": "1wc4lb7rpim4npjl7aszc1ddpsqf2an8v7j4dasxlvdq0n2zz6qn"
   },
   "stable": {
    "version": [
@@ -21834,11 +21978,20 @@
   "repo": "alexluigit/dirvish",
   "unstable": {
    "version": [
-    20220223,
-    1713
+    20220325,
+    1418
+   ],
+   "commit": "7d26d98df1a7af0266261e0e666a890a86a52bd0",
+   "sha256": "1yw1y5kdhs2213bvsmd65yhw3h2c7dzb70977bjd0pa083xddr0p"
+  },
+  "stable": {
+   "version": [
+    1,
+    2,
+    0
    ],
-   "commit": "9bb39bef29a41162e00a563da4966b6a368e6b5f",
-   "sha256": "0wgyd66lrvl8i6sn7ar9mvm06lq6h57asm3sfhkiq0qf65w7bwhn"
+   "commit": "f03db6106adc61e050ea242dcfbd3fcae71dee23",
+   "sha256": "1aniq3lylc2fmw3snsjmbpzzgjspryjfq6vsc10daihnihnff0qg"
   }
  },
  {
@@ -22053,6 +22206,30 @@
   }
  },
  {
+  "ename": "display-wttr",
+  "commit": "a60a6643b6d8a5691d48b47c31eb560e0f793d26",
+  "sha256": "1lhnv2cqff22z7d7n2sx7pqvskyg5fbiax2dhfznf2xjmqh22lzi",
+  "fetcher": "github",
+  "repo": "josegpt/display-wttr",
+  "unstable": {
+   "version": [
+    20220316,
+    213
+   ],
+   "commit": "2cb36df32b0ecf381185126a969b7282af5a0e01",
+   "sha256": "03lb0a9w9rgiqar93crh4h4q3m7d3yk9hn8y5h806h56lzrp54f2"
+  },
+  "stable": {
+   "version": [
+    2,
+    0,
+    0
+   ],
+   "commit": "2cb36df32b0ecf381185126a969b7282af5a0e01",
+   "sha256": "03lb0a9w9rgiqar93crh4h4q3m7d3yk9hn8y5h806h56lzrp54f2"
+  }
+ },
+ {
   "ename": "dispwatch",
   "commit": "580cee72ac9871f8f256069b371f7fb66367a048",
   "sha256": "1cq5lbh3r9jjwixn2q30gryy4j4l8jb70nkhsjbaln1c3jdwrf9p",
@@ -22139,14 +22316,14 @@
   "repo": "unhammer/dix",
   "unstable": {
    "version": [
-    20220105,
-    1017
+    20220323,
+    1046
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "a2d924725380aca4d61df4a70825fc4b76185938",
-   "sha256": "1cg565l7iviis7888in7bf3v59b2a67jb552yshq6yb4d63v0b6f"
+   "commit": "5230c18456ab034f2fb69acdbef62c1abae6a8cf",
+   "sha256": "161ykw5p6wxy3dlx7f6zxg1cwl8hh411b7clzc5zhdpmq1wnqy0b"
   },
   "stable": {
    "version": [
@@ -22176,8 +22353,8 @@
     "dix",
     "evil"
    ],
-   "commit": "a2d924725380aca4d61df4a70825fc4b76185938",
-   "sha256": "1cg565l7iviis7888in7bf3v59b2a67jb552yshq6yb4d63v0b6f"
+   "commit": "5230c18456ab034f2fb69acdbef62c1abae6a8cf",
+   "sha256": "161ykw5p6wxy3dlx7f6zxg1cwl8hh411b7clzc5zhdpmq1wnqy0b"
   },
   "stable": {
    "version": [
@@ -22216,20 +22393,20 @@
   "repo": "muffinmad/emacs-django-commands",
   "unstable": {
    "version": [
-    20191107,
-    1830
+    20220314,
+    1545
    ],
-   "commit": "bef7ca848d6d1721ebb22b181c50dcfbef16e434",
-   "sha256": "1zd98xkbxvikp4sf5nxf6vb2sk7a5s3q9ida0l5f4z4jc48xx5zm"
+   "commit": "7510c0f068bf214ad012c203d68e03ff4262efdf",
+   "sha256": "0d27cz3i78n5n4bhmkzr6yg2mz5hrpf0r25m71176d6v0ckq7pwh"
   },
   "stable": {
    "version": [
     1,
-    3,
-    3
+    4,
+    1
    ],
-   "commit": "bef7ca848d6d1721ebb22b181c50dcfbef16e434",
-   "sha256": "1zd98xkbxvikp4sf5nxf6vb2sk7a5s3q9ida0l5f4z4jc48xx5zm"
+   "commit": "7510c0f068bf214ad012c203d68e03ff4262efdf",
+   "sha256": "0d27cz3i78n5n4bhmkzr6yg2mz5hrpf0r25m71176d6v0ckq7pwh"
   }
  },
  {
@@ -22465,11 +22642,11 @@
   "repo": "ideasman42/emacs-doc-show-inline",
   "unstable": {
    "version": [
-    20220211,
-    548
+    20220314,
+    57
    ],
-   "commit": "5705f8d6f5583d50fc0497a88f06fb7c84a9ddb0",
-   "sha256": "189bahsiyv7j0h1i1nfilr5rp2bihfgi19lipdxmixfmfv8fjy6j"
+   "commit": "42954390621f281930a70104162db1bb70532a1b",
+   "sha256": "0nvk10nh2mkw430zdr0m2cnqzvi48ah32k8zay4lh0qgz4jl2kdy"
   }
  },
  {
@@ -22517,8 +22694,8 @@
   "repo": "Silex/docker.el",
   "unstable": {
    "version": [
-    20220225,
-    1528
+    20220320,
+    1935
    ],
    "deps": [
     "aio",
@@ -22529,8 +22706,8 @@
     "tablist",
     "transient"
    ],
-   "commit": "498ffb2ba51fce12cb543caca0ecbc62782620d3",
-   "sha256": "1ixzi9lsjra01srvkd30jvryhbgxl9s49mspy2f6975zna390m60"
+   "commit": "fbd896e3138f497b89a128d17b6f5e0e5286515b",
+   "sha256": "0d430ignd6yw117srysc8bxghlq0h8k533pl8k882q0mfgpnaqhw"
   },
   "stable": {
    "version": [
@@ -22668,8 +22845,8 @@
     20220220,
     1439
    ],
-   "commit": "11c43de04b128b7638cd98a1e80be2b661c18fbb",
-   "sha256": "0nmybfc9qch0jng06qgs2xb41dl9v52ckc9nc20d7hv3x36w555x"
+   "commit": "b63a3d12b7dea0cb9efc7f78d7ad5672ceab2a3f",
+   "sha256": "0cnsm9xc5lqfx0vgv0fcqadwr8mnj3s9bqldrh1s6f26q9bapncd"
   },
   "stable": {
    "version": [
@@ -22688,8 +22865,8 @@
   "repo": "r0man/docopt.el",
   "unstable": {
    "version": [
-    20201211,
-    1008
+    20220319,
+    1912
    ],
    "deps": [
     "dash",
@@ -22698,14 +22875,14 @@
     "s",
     "transient"
    ],
-   "commit": "2e49c2f4e9ee023d2a143086463bac47db914846",
-   "sha256": "0vkmgfgw8qica21hcqila62ivqxshkay2r2dyy4dxxj3xypk3083"
+   "commit": "a7f5b4a8b1a43552067ce27bce6080a509c92cff",
+   "sha256": "0dr0m5rrk0vhz1sq3d28pxijlkj030ckxc5mhqv3jpq2xfjwd2gv"
   },
   "stable": {
    "version": [
     0,
     1,
-    1
+    2
    ],
    "deps": [
     "dash",
@@ -22714,8 +22891,8 @@
     "s",
     "transient"
    ],
-   "commit": "6e1105347decbf9b4b848d952858455f9b145c56",
-   "sha256": "0vkmgfgw8qica21hcqila62ivqxshkay2r2dyy4dxxj3xypk3083"
+   "commit": "a7f5b4a8b1a43552067ce27bce6080a509c92cff",
+   "sha256": "0dr0m5rrk0vhz1sq3d28pxijlkj030ckxc5mhqv3jpq2xfjwd2gv"
   }
  },
  {
@@ -22732,8 +22909,8 @@
    "deps": [
     "s"
    ],
-   "commit": "49d0e77aa9a1c6a649c0d45030111b26222f960c",
-   "sha256": "0w1jjm9p2332ql8k32x2i1f51df8wqz68y07dqipz5d3h4ysgwfl"
+   "commit": "6267907a6b57c32b430b481fe129a6cae8792784",
+   "sha256": "1blgf4jw5crd4daidcnj5hv57hzvhqwhfsgxvxb8rlzaapk751wc"
   },
   "stable": {
    "version": [
@@ -22893,30 +23070,30 @@
   "repo": "seagle0128/doom-modeline",
   "unstable": {
    "version": [
-    20220218,
-    1547
+    20220325,
+    554
    ],
    "deps": [
     "all-the-icons",
     "dash",
     "shrink-path"
    ],
-   "commit": "d9b64bc56283c7816f8124dcb3a5c7ea22732643",
-   "sha256": "0kk0yxcb26igkgqasrp9h78k0sll9by9m07dydd7lhkpwdg4dd7r"
+   "commit": "edf18b93cceb5cf00e1006d0034663ef4d9fdc11",
+   "sha256": "0l0lb3in80p9hgqqbrjrnbcjb2vqxw4qxgxl42vz6kvx77fk77j7"
   },
   "stable": {
    "version": [
     3,
     2,
-    1
+    2
    ],
    "deps": [
     "all-the-icons",
     "dash",
     "shrink-path"
    ],
-   "commit": "b59802efba1215bb861621deba0030cfda2796ed",
-   "sha256": "1ji15n2rdp7bjg5iq9im6c4m12k24kqp85i3n1m9npihrb4arh54"
+   "commit": "1ecf8fcd779c3ef7472f532e0f7843b3ad9682c7",
+   "sha256": "08zvi1a6hiii3sw8fk0x26jv7vgzy04aal8zvcbwaaczl063vark"
   }
  },
  {
@@ -23200,8 +23377,8 @@
     20220209,
     724
    ],
-   "commit": "2c9efdae8b7b9a8e57dfd3aa1c62426a262e9eba",
-   "sha256": "1wblaspw1yb2xgymlajjqap5rkj6danrsh8hnkhpcd1x9q49llis"
+   "commit": "e725c9e790c9e9cdaccdb35faaae9d5cb16ddb89",
+   "sha256": "1hj40c203a5mj9xngsgw5yihd6pcvr91aggqa0kbd4j16fcsvw9j"
   },
   "stable": {
    "version": [
@@ -23335,16 +23512,16 @@
   "repo": "pavpanchekha/dropbox.el",
   "unstable": {
    "version": [
-    20190918,
-    1629
+    20220314,
+    1638
    ],
    "deps": [
     "json",
     "oauth",
     "request"
    ],
-   "commit": "5e0c954a6b819fd3a22b463cce3825984f9ef691",
-   "sha256": "0z1iw5rzdgipqhx4bvshjbrqqr3wyqy75frwmz34g7s6vll1ip0a"
+   "commit": "c048faad0be24e8fa31974f08b710a87cf5b668c",
+   "sha256": "1d43ynlqj60bhc5cc39b02440gdvvbw8hyppg7xs7wcljyb54jxd"
   }
  },
  {
@@ -23424,11 +23601,11 @@
   "repo": "niklaseklund/dtache",
   "unstable": {
    "version": [
-    20220209,
-    1903
+    20220320,
+    1338
    ],
-   "commit": "9b39e9ebbfd19bae1b0b30e98b574f0e8a952bec",
-   "sha256": "0jx228qzqmw3ncrjqdd6jhphl6j58iyg7knmk6favbsnr3nl2y54"
+   "commit": "e7d143df8a8f88cbbe0fa023cd1fc30219598d88",
+   "sha256": "02bpghhjcgfgcrlkvsrj652ki558pf9q5vj6j056lalfhcrckpvd"
   },
   "stable": {
    "version": [
@@ -23462,8 +23639,8 @@
   "repo": "dtk01/dtk",
   "unstable": {
    "version": [
-    20210926,
-    541
+    20220309,
+    759
    ],
    "deps": [
     "cl-lib",
@@ -23471,8 +23648,8 @@
     "s",
     "seq"
    ],
-   "commit": "f6a94d86263041f9a172cb7df90e00d1ec44604a",
-   "sha256": "1q29lpza8rd209zh0n04ia6n359p372czkm57hhmvcd9cmi91fc8"
+   "commit": "56b339bc76926defa775c406113e306ec6d31b36",
+   "sha256": "0g33sn95zk4fp1jyh472k3qyvbm062njbxkmnv0qavrbli097q80"
   }
  },
  {
@@ -23632,17 +23809,17 @@
     20210909,
     1010
    ],
-   "commit": "c967d8a4880732f2f7cba39d4f283154c5ef914e",
-   "sha256": "079xxy2569zrfy2r621bb25gw99dlmwmys60qyrxvn01mb9ah9ql"
+   "commit": "33d625d08bcf596a6c309d791a2cab70f2b8abce",
+   "sha256": "1pak38z3bq35b21lz3wm0jvhjznffhi7i6h9nvs1qcf9s7frw2b6"
   },
   "stable": {
    "version": [
     3,
     0,
-    2
+    3
    ],
-   "commit": "f8c75a43bc0a8e190727161c2f67ae643b884542",
-   "sha256": "1spgn3sjygnwq95ybxaj5dg9s5hyp6v5dwl240w3m4664blilz4z"
+   "commit": "68c36597dfb99187ccbadf578988deaf690c4e25",
+   "sha256": "1ndn560fg0fg8n3wplmkg5px69h0g38pyma9wik85cmmqfxry14k"
   }
  },
  {
@@ -24282,26 +24459,26 @@
   "repo": "leoliu/easy-kill",
   "unstable": {
    "version": [
-    20181114,
-    2330
+    20220311,
+    1506
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "2a6309d98aa6b71df6bbbcdf15cab3187c521a6b",
-   "sha256": "1j8hl0f52fqb21775xn94sf9g12yqyg6z0ibgmxzmnl02ir4xr86"
+   "commit": "f9b450a87c41e5ef616df565ed158cb236aa5189",
+   "sha256": "05drsb7kaksdsk1v0i5gip255rvlziirl4wcana08cpm9v9p4m21"
   },
   "stable": {
    "version": [
     0,
     9,
-    3
+    4
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "e3b2442e2096cefff94ea8656e49af07fee58f47",
-   "sha256": "0r56nqrj6iaz57ys6hqdq5qkyliv7dj6dv274l228r7x0axrwd9m"
+   "commit": "2a6309d98aa6b71df6bbbcdf15cab3187c521a6b",
+   "sha256": "1j8hl0f52fqb21775xn94sf9g12yqyg6z0ibgmxzmnl02ir4xr86"
   }
  },
  {
@@ -24398,14 +24575,14 @@
   "repo": "joostkremers/ebib",
   "unstable": {
    "version": [
-    20220121,
-    2236
+    20220314,
+    2256
    ],
    "deps": [
     "parsebib"
    ],
-   "commit": "4aed0c3a34e5faa95435e03be043f9a843971560",
-   "sha256": "13h94383lqfk2gcrfd7czdm46q38zg8bm8dyk8lcbyi7b60rczbg"
+   "commit": "600b5e3d3dd98ba4017ad257470424b4507b4e59",
+   "sha256": "0mybyw2hh104z53lnp2pvcm9sg01wdad0hqyxl6msrq12n8pkr4x"
   },
   "stable": {
    "version": [
@@ -24919,15 +25096,15 @@
   "repo": "editorconfig/editorconfig-emacs",
   "unstable": {
    "version": [
-    20210830,
-    1025
+    20220301,
+    332
    ],
    "deps": [
     "cl-lib",
     "nadvice"
    ],
-   "commit": "3c03cef3110024016c688553733cdc3694a8a799",
-   "sha256": "1vyl3i6dgi8y3rc5a4n2hhghiri0914k2j7w7zkji8brpl8i5f0g"
+   "commit": "1d4acc3ec73609990eabacb59c038708bc401003",
+   "sha256": "1blx38fyfl1zgfh5k1mgsnxxjlski7f0n890kiyjbaw2ba9zzmgr"
   },
   "stable": {
    "version": [
@@ -25082,8 +25259,8 @@
   "repo": "sebastiw/edts",
   "unstable": {
    "version": [
-    20220220,
-    1753
+    20220312,
+    2132
    ],
    "deps": [
     "auto-complete",
@@ -25094,8 +25271,8 @@
     "popup",
     "s"
    ],
-   "commit": "603e182f8f0a4140e6cbf71c2d73673cd08028ee",
-   "sha256": "0zvbahgm910sdasq1404lyxxan0mrcpzcjwm64jpzinx2i0bai5j"
+   "commit": "d815148f22ed194116dcde63a0150919e380ecd6",
+   "sha256": "11x1607fcpxzrf8kqi364qiiffbpwpwld0w9x0mjfsphyvdpg62g"
   }
  },
  {
@@ -25290,8 +25467,8 @@
   "repo": "joaotavora/eglot",
   "unstable": {
    "version": [
-    20220123,
-    1406
+    20220324,
+    1606
    ],
    "deps": [
     "eldoc",
@@ -25301,8 +25478,8 @@
     "seq",
     "xref"
    ],
-   "commit": "bd6a1cccfe9c0f724772f846d1f4a9300f40f88f",
-   "sha256": "094kk4xprnfx3x94ij3fxc6sh877m03dwx35qmg1sh8capx28zi3"
+   "commit": "03fc783c4b701fc8c19096b7167b73bd5d8f63a8",
+   "sha256": "1w2j3rrbgh1mffhzbjgm3hcvijmfdcfp06pkgnacfi9dydwcap62"
   },
   "stable": {
    "version": [
@@ -25432,11 +25609,11 @@
   "url": "https://forge.chapril.org/hjuvi/eide.git",
   "unstable": {
    "version": [
-    20220119,
-    2125
+    20220316,
+    619
    ],
-   "commit": "b0aab3735f3333ba0b429e669730ff22c9d59da7",
-   "sha256": "0ms8a4wrkf98p0fjvy4fck0285gx1fdr8nwry0c2p4s1afj48kcn"
+   "commit": "23c78f4850f44d18eef66c694e7e05882d841ba6",
+   "sha256": "1icj34anks7f0cjdqc1kgj3bva3bnhily5xc5mzx21w0iciqvpk6"
   },
   "stable": {
    "version": [
@@ -25471,8 +25648,8 @@
   "repo": "millejoh/emacs-ipython-notebook",
   "unstable": {
    "version": [
-    20211225,
-    1355
+    20220324,
+    204
    ],
    "deps": [
     "anaphora",
@@ -25483,8 +25660,8 @@
     "websocket",
     "with-editor"
    ],
-   "commit": "6063cee7fb0bdefa22fb05e4b17e58631f8187d6",
-   "sha256": "0kfl8jv9lkp92c811r1qdw1xw23pd8ga2v9j7bizx9hvvnh8nc7j"
+   "commit": "e04e1e19c63667e6847ae6341ab7fc7488f5eb8c",
+   "sha256": "16f1ka02n06li4griyrviv9bwzvj4s5fk7i2kqa5mkg0gibxmawc"
   }
  },
  {
@@ -25728,8 +25905,8 @@
     20220115,
     34
    ],
-   "commit": "abe86793f0684a51ed895c43775a964a6900504e",
-   "sha256": "01ixs3rksm4y66q27d69nkj87k1l214fkixkh6yr5rv3xfd7jr5b"
+   "commit": "83bd1378ce4a920ce708e15f1d2caafe30d41a79",
+   "sha256": "1xpk4c3m5d89n2v2xfn55mj2qv60pb0rpx8ghbcsdyd04ir1llp6"
   },
   "stable": {
    "version": [
@@ -25755,8 +25932,8 @@
     "hercules",
     "org-ql"
    ],
-   "commit": "99f4d9d38b8e6a5b3f32bd4f6a3c7f68c2523dd9",
-   "sha256": "1lf74clkv1iq14xd07ar0k1nl7ws5111d6lh8yqn34c80gbj10hn"
+   "commit": "dd7edc12568902561c8939e389626b3f0c7f6312",
+   "sha256": "0zc6d58plwnmmf0k0dgklfaya5k6ai6gmabpjl5n16r50x39jafs"
   }
  },
  {
@@ -25774,8 +25951,8 @@
     "el-secretario",
     "elfeed"
    ],
-   "commit": "99f4d9d38b8e6a5b3f32bd4f6a3c7f68c2523dd9",
-   "sha256": "1lf74clkv1iq14xd07ar0k1nl7ws5111d6lh8yqn34c80gbj10hn"
+   "commit": "dd7edc12568902561c8939e389626b3f0c7f6312",
+   "sha256": "0zc6d58plwnmmf0k0dgklfaya5k6ai6gmabpjl5n16r50x39jafs"
   }
  },
  {
@@ -25793,8 +25970,8 @@
     "el-secretario",
     "org-ql"
    ],
-   "commit": "99f4d9d38b8e6a5b3f32bd4f6a3c7f68c2523dd9",
-   "sha256": "1lf74clkv1iq14xd07ar0k1nl7ws5111d6lh8yqn34c80gbj10hn"
+   "commit": "dd7edc12568902561c8939e389626b3f0c7f6312",
+   "sha256": "0zc6d58plwnmmf0k0dgklfaya5k6ai6gmabpjl5n16r50x39jafs"
   }
  },
  {
@@ -25812,8 +25989,8 @@
     "el-secretario",
     "notmuch"
    ],
-   "commit": "99f4d9d38b8e6a5b3f32bd4f6a3c7f68c2523dd9",
-   "sha256": "1lf74clkv1iq14xd07ar0k1nl7ws5111d6lh8yqn34c80gbj10hn"
+   "commit": "dd7edc12568902561c8939e389626b3f0c7f6312",
+   "sha256": "0zc6d58plwnmmf0k0dgklfaya5k6ai6gmabpjl5n16r50x39jafs"
   }
  },
  {
@@ -25832,8 +26009,8 @@
     "el-secretario",
     "org-ql"
    ],
-   "commit": "99f4d9d38b8e6a5b3f32bd4f6a3c7f68c2523dd9",
-   "sha256": "1lf74clkv1iq14xd07ar0k1nl7ws5111d6lh8yqn34c80gbj10hn"
+   "commit": "dd7edc12568902561c8939e389626b3f0c7f6312",
+   "sha256": "0zc6d58plwnmmf0k0dgklfaya5k6ai6gmabpjl5n16r50x39jafs"
   }
  },
  {
@@ -26007,11 +26184,11 @@
   "repo": "Mstrodl/elcord",
   "unstable": {
    "version": [
-    20220209,
-    2301
+    20220305,
+    1234
    ],
-   "commit": "ed8de0e9d218723f45200542b21a68dc8440f278",
-   "sha256": "0q1vr5ks04qjzml13wzmzkvm1za3faq9m2y5f3g0z254fh82cbbb"
+   "commit": "70fd716e673b724b30b921f4cfa0033f9c02d0f2",
+   "sha256": "043516j84q0jx558frk8afavdfr52pvwb23viyb8m54422z1psxl"
   }
  },
  {
@@ -26056,19 +26233,19 @@
   "repo": "doublep/eldev",
   "unstable": {
    "version": [
-    20220221,
-    2055
+    20220313,
+    1510
    ],
-   "commit": "7be0cb16ce5d9d3139b4ed1724ac6d8292935267",
-   "sha256": "0yb8rpv6yi47kdk6gaav063zqq3l4jlyb4wk95abwzkgjcmjc4ky"
+   "commit": "bdc729893ccfc52b2b7369624111cc175e4ce0b9",
+   "sha256": "1yii555k43v94cqlxv2n9k1d6pz3mjg1sc1zgpbnx5gqhzfk7m5r"
   },
   "stable": {
    "version": [
-    0,
-    11
+    1,
+    0
    ],
-   "commit": "f7cfdb8648624917afec0a687c6fa92ce8d7958f",
-   "sha256": "10l9gdxk6l2zp14zaf6k5aq36c0nbjq8jya727xs4yra0rdg05hl"
+   "commit": "deaf16e832bbb4665fe5ccf825422566ce489ad6",
+   "sha256": "1y7ngdj2icn8zw5qpjxqj3j9dry4lb7ixgxa148ss5bgsl8pgqnd"
   }
  },
  {
@@ -26079,11 +26256,11 @@
   "repo": "casouri/eldoc-box",
   "unstable": {
    "version": [
-    20220220,
-    2003
+    20220228,
+    631
    ],
-   "commit": "646ae5cdd8ccbf5d78eb0488298b7c5e9c9a18a6",
-   "sha256": "0y2502b0d0fy2pm7kklv5262maxky2y2y8nw223f4f3bicbymxwy"
+   "commit": "c0cbb8d9191a1df8a289aafc8cb94a3ebb515d6b",
+   "sha256": "102z9wl7d563x7i44zhlc81bi7k030rlzfgs5cm8vbmalgqv1c63"
   },
   "stable": {
    "version": [
@@ -26243,14 +26420,14 @@
   "repo": "davidshepherd7/electric-operator",
   "unstable": {
    "version": [
-    20220218,
-    826
+    20220313,
+    911
    ],
    "deps": [
     "dash"
    ],
-   "commit": "6dbd8f80aee44e2f6ff9995f1bebb8f05575505a",
-   "sha256": "0a65cin6r2bx9fz3a56iywmsdm5k6i6av0j6ba3s8hm2hdl7ckdq"
+   "commit": "8bcc6b02722adb21d3698df46db2426718aebf70",
+   "sha256": "0xh658xwx5bbzak4axdrwx90zv9vmba8lwcma4m7scinzwhnjfx5"
   },
   "stable": {
    "version": [
@@ -26432,10 +26609,10 @@
  },
  {
   "ename": "elfeed-dashboard",
-  "commit": "339127464845e86419c6a88004fc16b60d675f57",
-  "sha256": "1ykg8gcsl7gf1w2xvd1wm088fw1l1mbsamx7drrvkdnpwxx6xiga",
+  "commit": "40ba169fd28e3fee01bc51055a811ae78d4d6eab",
+  "sha256": "16r2nwlsjlfh48mbgyp3bqnqmxgaj5f4md1i2m8hvvhpyihq7969",
   "fetcher": "github",
-  "repo": "Manoj321/elfeed-dashboard",
+  "repo": "manojm321/elfeed-dashboard",
   "unstable": {
    "version": [
     20210727,
@@ -26444,8 +26621,8 @@
    "deps": [
     "elfeed"
    ],
-   "commit": "b143f8453aed2053e8fc6f05cef6233797408546",
-   "sha256": "1yvr3fg5dx0z6h7jbv3fvn5ccw5grpcaj2ynp7zri5y388g160ql"
+   "commit": "26ff3573efce3cb66c8814854a2983a69683af09",
+   "sha256": "0wqv4r1s7py81cx4jcih0s6gqrg9xb8ycfkky32x0h64vq906c0y"
   }
  },
  {
@@ -26456,18 +26633,18 @@
   "repo": "algernon/elfeed-goodies",
   "unstable": {
    "version": [
-    20220116,
-    1609
+    20220306,
+    2253
    ],
    "deps": [
-    "ace-jump-mode",
     "cl-lib",
     "elfeed",
+    "link-hint",
     "popwin",
     "powerline"
    ],
-   "commit": "8e4c1fbfb86226d867b524fd0f8ae78b4b602f1b",
-   "sha256": "1f8gyzzdfj0x078m8az2n4c4ihxyxg3yrhx5ry9fi0xsglzvrcn0"
+   "commit": "6711de66c22360f80fcfd9730293e5f3d419f787",
+   "sha256": "1c2wqa08wjmqq9kax1akyad23664h5cwdan9mcrn68w6pgqd9rv8"
   }
  },
  {
@@ -26881,11 +27058,11 @@
   "repo": "elixir-editors/emacs-elixir",
   "unstable": {
    "version": [
-    20211013,
-    1408
+    20220314,
+    1302
    ],
-   "commit": "6f61e04c8537c2e9a807dc29908f619b5202b0f8",
-   "sha256": "1hcmb3n2av3zdxsh4wk9d1l2x9065mjjgzbf5i3lh3ij1qrgakcm"
+   "commit": "e0d0466d83ec80ddb412bb1473908a21baad1ec3",
+   "sha256": "1whi4ni2jcinwq68yrzcl0q23dhp0b5k3jy5j3m89s2kdv3rwsm9"
   },
   "stable": {
    "version": [
@@ -27274,11 +27451,11 @@
   "url": "https://thelambdalab.xyz/git/elpher.git",
   "unstable": {
    "version": [
-    20220208,
-    1726
+    20220228,
+    1307
    ],
-   "commit": "6e3a8ef5af192eddcd834efac49866f84e2c73dd",
-   "sha256": "1p43x7mf14q84armxhp294xaclq5c6mpggq619ravia0kdrqij1w"
+   "commit": "ecb5e17d37249bc38c25ee278094fb93b63b0a49",
+   "sha256": "0q2wmsxvcg6c98fbnldk64lc49zlzd42k8zisk03f8g91l12wxac"
   },
   "stable": {
    "version": [
@@ -27298,11 +27475,11 @@
   "repo": "twlz0ne/elpl",
   "unstable": {
    "version": [
-    20200821,
-    1052
+    20220314,
+    1353
    ],
-   "commit": "ca6a6237681c641d5137d58e52f884dec0da6349",
-   "sha256": "0nh300bn5wc753dpyi5p8ihgm173h07mg04fryz5w173xxqqhj8c"
+   "commit": "32eaec0fc7d20b8acbd4d459bfb8f8b72d75bb66",
+   "sha256": "1ggb7kx29pg6jph0xrkg00ybqasbak9bld2z2pl0vh1a61bv8vm4"
   }
  },
  {
@@ -27313,8 +27490,8 @@
   "repo": "jorgenschaefer/elpy",
   "unstable": {
    "version": [
-    20220220,
-    2059
+    20220322,
+    41
    ],
    "deps": [
     "company",
@@ -27323,8 +27500,8 @@
     "s",
     "yasnippet"
    ],
-   "commit": "758c1ab3516b1e38fdc5b978da6252284f4ecade",
-   "sha256": "0mldrhqppm3cqrdl836g3rzd6l29ynjvz4b747n0z86sj1chgn54"
+   "commit": "1746e7009000b7635c0ea6f1559018143aa61642",
+   "sha256": "120xzzaa8jxls3lri6d53zq6gafnkc6d9mlg09an334kkmh8k2fc"
   },
   "stable": {
    "version": [
@@ -27627,20 +27804,20 @@
   "repo": "emacscollective/elx",
   "unstable": {
    "version": [
-    20210918,
-    1436
+    20220321,
+    1200
    ],
-   "commit": "a457a596401dc5caa9c9a2ebb627bd4af0607780",
-   "sha256": "0670dxmvy38rl3mh2gh2ab8hp4y7z90kg3w340mfgx50fbwbcfs4"
+   "commit": "fb5fe4e017d5a10a9ae4c9e17d6a9c8ac656530a",
+   "sha256": "1rhrvn9vmb00makvg2gdaaakg76wpsl7spn402hyzgg7jhmqhfgs"
   },
   "stable": {
    "version": [
     1,
     5,
-    0
+    1
    ],
-   "commit": "a457a596401dc5caa9c9a2ebb627bd4af0607780",
-   "sha256": "0670dxmvy38rl3mh2gh2ab8hp4y7z90kg3w340mfgx50fbwbcfs4"
+   "commit": "fb5fe4e017d5a10a9ae4c9e17d6a9c8ac656530a",
+   "sha256": "1rhrvn9vmb00makvg2gdaaakg76wpsl7spn402hyzgg7jhmqhfgs"
   }
  },
  {
@@ -27853,14 +28030,14 @@
   "repo": "cireu/emacsql-sqlite3",
   "unstable": {
    "version": [
-    20200914,
-    508
+    20220304,
+    1014
    ],
    "deps": [
     "emacsql"
    ],
-   "commit": "209fd0c2649db0c7532e543ec12e7ba881a3325c",
-   "sha256": "0zr56gwn8rcgvaa9halhfxpxnn0x6yqc66z6r7vqzx5jbj7d6q46"
+   "commit": "2113618732665f2112cb932a66c0e89c404d8777",
+   "sha256": "0r8svrd0d4cflx8a8gkynnhafcpv3ksn9rds8dhyx5yibximbzsw"
   },
   "stable": {
    "version": [
@@ -27979,19 +28156,19 @@
   "repo": "oantolin/embark",
   "unstable": {
    "version": [
-    20220225,
-    2232
+    20220326,
+    56
    ],
-   "commit": "8cb3f7655a7868cebe756c1f6c9f2d07ca4da5d4",
-   "sha256": "1w1swb8qqqzp0b665bd8pbjykgy0523n1wjxwwd0jbma58c4j5xs"
+   "commit": "b80d96ce0ab79e73829322e46c6d7493eb2b8c34",
+   "sha256": "1jsynjl0y7w0jqxqlibg8m4rwzv9lxj443m6dlac6zncz8plnizp"
   },
   "stable": {
    "version": [
     0,
-    15
+    16
    ],
-   "commit": "7814a7345067da31a1e7af682bb1f6f050527001",
-   "sha256": "08wj0p3plvblbmfmn4vsanhldr2csrnm1lhk3g1nic5v26yi5l64"
+   "commit": "5faf1389162dd64bfe3511dfb8f52c18efb5140b",
+   "sha256": "04xxwhh577aam0fqfmprxqaw0v1l6yidikr6chajcf16mf1wd2gv"
   }
  },
  {
@@ -28002,27 +28179,27 @@
   "repo": "oantolin/embark",
   "unstable": {
    "version": [
-    20220219,
-    1728
+    20220321,
+    239
    ],
    "deps": [
     "consult",
     "embark"
    ],
-   "commit": "8cb3f7655a7868cebe756c1f6c9f2d07ca4da5d4",
-   "sha256": "1w1swb8qqqzp0b665bd8pbjykgy0523n1wjxwwd0jbma58c4j5xs"
+   "commit": "b80d96ce0ab79e73829322e46c6d7493eb2b8c34",
+   "sha256": "1jsynjl0y7w0jqxqlibg8m4rwzv9lxj443m6dlac6zncz8plnizp"
   },
   "stable": {
    "version": [
     0,
-    15
+    16
    ],
    "deps": [
     "consult",
     "embark"
    ],
-   "commit": "7814a7345067da31a1e7af682bb1f6f050527001",
-   "sha256": "08wj0p3plvblbmfmn4vsanhldr2csrnm1lhk3g1nic5v26yi5l64"
+   "commit": "5faf1389162dd64bfe3511dfb8f52c18efb5140b",
+   "sha256": "04xxwhh577aam0fqfmprxqaw0v1l6yidikr6chajcf16mf1wd2gv"
   }
  },
  {
@@ -28158,16 +28335,16 @@
   "url": "https://git.savannah.gnu.org/git/emms.git",
   "unstable": {
    "version": [
-    20220221,
-    1445
+    20220315,
+    1727
    ],
    "deps": [
     "cl-lib",
     "nadvice",
     "seq"
    ],
-   "commit": "6afe1b26d679357586380ecd69c9795985231013",
-   "sha256": "03cb4v50cxbprl695r9812zl35y5a8sdk7q8byflrlk6arihgrxy"
+   "commit": "dd1ee74db3325d6a27e14df7ae882b5cbd84989a",
+   "sha256": "0s50ap75wsjapxdby7x2gk85jnsr6aaf0l1vzpb6ax96ag92d4lm"
   },
   "stable": {
    "version": [
@@ -28450,8 +28627,8 @@
     "emojify",
     "request"
    ],
-   "commit": "c641508772a7a7d455f0917d45c3c508de56e871",
-   "sha256": "0iam1caa6pyr3x7qf5nl9d2c0js9m5k6q59dbmvq2bwm7l243nxl"
+   "commit": "8ebfc21d243fc17faf074b36dbc4be6141139906",
+   "sha256": "1mdh1f3lbng0nbwih3haf7wj4x4mmgviziv5fwki449495mw041q"
   },
   "stable": {
    "version": [
@@ -28914,8 +29091,8 @@
    "deps": [
     "closql"
    ],
-   "commit": "4bb8a13a43e30798e27c80174169ff955bf2b631",
-   "sha256": "10arkzdqdc1kzizhxa4n28fjmaamz8gdnn1lf79327p7qi3cz7np"
+   "commit": "475bfb19e293edcdbeb23d30b2e4954ca7ab8f39",
+   "sha256": "0f4p5xrlsfmsn61xvh3mx9y84bklsyjz6jgkdajiyd7wrmhlyjzf"
   },
   "stable": {
    "version": [
@@ -29575,8 +29752,8 @@
     20200914,
     644
    ],
-   "commit": "6b13364d36eeb60d8ec15eaf8effe23c73401900",
-   "sha256": "1mjsxi18rv83wggp53iyh0dzp8y6jy3azqklkr9rmh6xjqb68a30"
+   "commit": "724723ed0a6b179398f4105f5eb5ea088d1bac4a",
+   "sha256": "0qzg5qhf3p4ifspbz6l1yj4fl6sdgbi74kprql20sx9y58dyhamd"
   },
   "stable": {
    "version": [
@@ -29600,18 +29777,18 @@
     20220215,
     1844
    ],
-   "commit": "d469db4ddf72479a42b60f5337504fb53b65079e",
-   "sha256": "1mp8c7hfrdbxp6h51fkqi3ri3fqxwapgp9qbggw1jfpqlsjga8lm"
+   "commit": "510b025db164ec18e49117d070f4e08ebe8f4da1",
+   "sha256": "1wliqzp5nw07qxmy9024i2dmbidn9216niz09299q9z447raisp3"
   },
   "stable": {
    "version": [
     25,
     0,
     -1,
-    1
+    2
    ],
-   "commit": "3c68ceea1f93119bed871866c690fbf5a95048c1",
-   "sha256": "0i45r682i93b71jjhixq450lpkl6kbm8gi4f73g22k88w1lj1rmq"
+   "commit": "85d0a8366e64f8272e332a63a2cba59afa3f7eb9",
+   "sha256": "0nln44fd5kxjsgr0k95xn46jshp035s66rna7gb0lsm2iggcfwy8"
   }
  },
  {
@@ -29764,8 +29941,8 @@
     "s",
     "shut-up"
    ],
-   "commit": "c3969c86b5b00087d8b2fcb7147481d5be56f2f7",
-   "sha256": "0v3ry7aza86pzrjjy9qr07jxn3md1vx324cl0xq3b055mdp6dqv6"
+   "commit": "80cf4f60ec8c1f04f58054ed8ad2dcfacc17d8b5",
+   "sha256": "1zxhiy8hpyz1nbi238gnwvs2pyrl1h8pgfyqrjhqwni8bih4kzx7"
   },
   "stable": {
    "version": [
@@ -30133,26 +30310,26 @@
   "repo": "Phundrak/eshell-info-banner.el",
   "unstable": {
    "version": [
-    20220114,
-    1021
+    20220326,
+    933
    ],
    "deps": [
     "s"
    ],
-   "commit": "247d8bf4dd93d796c41c0f60947cc77b73b99e83",
-   "sha256": "02xni607801764pwnhj0g3mvl1pg5mr0kvg6mbgxxwjpjcv6cndf"
+   "commit": "9c17e92f0229c9002e071842a88396c3f2439d72",
+   "sha256": "08kqqlvia3hzl9yq5yia92a27rk3fsahdizlf7rpywkmj5aix43l"
   },
   "stable": {
    "version": [
     0,
     8,
-    6
+    7
    ],
    "deps": [
     "s"
    ],
-   "commit": "d4033120c1259c454aaba21eb1c297b0507b34d4",
-   "sha256": "0f1zgbgzfc6djr3h5lkw9z614wcr5sfz77lfya31brpbiqpvqz6d"
+   "commit": "9c17e92f0229c9002e071842a88396c3f2439d72",
+   "sha256": "08kqqlvia3hzl9yq5yia92a27rk3fsahdizlf7rpywkmj5aix43l"
   }
  },
  {
@@ -31106,15 +31283,15 @@
   "repo": "emacs-evil/evil",
   "unstable": {
    "version": [
-    20220217,
-    748
+    20220309,
+    2216
    ],
    "deps": [
     "cl-lib",
     "goto-chg"
    ],
-   "commit": "00fca685479e772361765b13de4689099a328c28",
-   "sha256": "0gpw5hajzlaam3gdqrr8vxdjdghqr29il8zsmn9q77askf64wsbw"
+   "commit": "3e41a823334abbba9cf16e482855699054d9dfe0",
+   "sha256": "1ir4ybrnylx9slyb7znrshfjf0gw1xi7f9nf6bryidqxspsn2ri5"
   },
   "stable": {
    "version": [
@@ -31308,15 +31485,15 @@
   "repo": "emacs-evil/evil-collection",
   "unstable": {
    "version": [
-    20220222,
-    1104
+    20220314,
+    1559
    ],
    "deps": [
     "annalist",
     "evil"
    ],
-   "commit": "2dc6b5e56a7c320dba9da1da2c8c491be586eecf",
-   "sha256": "12rnxyzqna28f9mxw4fhw4wy0lilp5vjfmdvbaz3sldc162vi36q"
+   "commit": "e55718869252a8cd46e61e350bb514194a37f2f8",
+   "sha256": "0inq608gk9kn3383qni7ll93qhw3qqy7yi22ympv0y3279n8725b"
   },
   "stable": {
    "version": [
@@ -31773,14 +31950,14 @@
   "repo": "edkolev/evil-lion",
   "unstable": {
    "version": [
-    20170811,
-    614
+    20220317,
+    1030
    ],
    "deps": [
     "evil"
    ],
-   "commit": "6b03593f5dd6e7c9ca02207f9a73615cf94c93ab",
-   "sha256": "1a162hynp0jcsn50c1w5a02mrw9w3q05c7lkqzqd25px3d0p772q"
+   "commit": "4da660e124731ed65e7aaa6c067c30e876619429",
+   "sha256": "0akhw0a9qsk65lvanb57fqh7hf601xdzkbyi560ximfrsr7f94pi"
   }
  },
  {
@@ -32634,8 +32811,8 @@
    "deps": [
     "evil"
    ],
-   "commit": "00fca685479e772361765b13de4689099a328c28",
-   "sha256": "0gpw5hajzlaam3gdqrr8vxdjdghqr29il8zsmn9q77askf64wsbw"
+   "commit": "3e41a823334abbba9cf16e482855699054d9dfe0",
+   "sha256": "1ir4ybrnylx9slyb7znrshfjf0gw1xi7f9nf6bryidqxspsn2ri5"
   },
   "stable": {
    "version": [
@@ -32837,15 +33014,15 @@
   "repo": "meain/evil-textobj-tree-sitter",
   "unstable": {
    "version": [
-    20220204,
-    417
+    20220325,
+    1401
    ],
    "deps": [
     "evil",
     "tree-sitter"
    ],
-   "commit": "ff733576d1dc5395c08d8f0e396b7a7073e39674",
-   "sha256": "1pa6ffz5wssnrs2x81p06w4c7iba4jx4man0h8qgl3qfsl2nkchw"
+   "commit": "d488792ee1ceadf3ae4a8b7b93ca3a88d36111cc",
+   "sha256": "0mwxv0al1i8vplsh2bl8y5vl9zga6zlz6f8mjbbm6gvcnzpbz5ff"
   }
  },
  {
@@ -32874,8 +33051,8 @@
   "repo": "ethan-leba/tree-edit",
   "unstable": {
    "version": [
-    20220129,
-    446
+    20220319,
+    1652
    ],
    "deps": [
     "avy",
@@ -32884,8 +33061,8 @@
     "tree-edit",
     "tree-sitter"
    ],
-   "commit": "f7d393b5caf601fe20c7543a53fca3d7e74ea09d",
-   "sha256": "0i8vc5mpwgkf21awnzc4m60paf13lwl0ff4ihks6k6xq65va3rhn"
+   "commit": "63816d614e6e2112c2f26e65afd7440f022ba2ad",
+   "sha256": "1c0s9hsm5wisikgxzskmnkin0r2vs9yc5yhgkjrsrvaiiv05g9ip"
   }
  },
  {
@@ -33415,15 +33592,15 @@
   "repo": "md-arif-shaikh/expenses",
   "unstable": {
    "version": [
-    20220215,
-    1518
+    20220318,
+    842
    ],
    "deps": [
     "dash",
     "ht"
    ],
-   "commit": "fb4349fb7dbddcebc189cce52dda25ab42d27b06",
-   "sha256": "18ihdfm8hbfl0nhk5k02m0f5dni5pmljnv0my87pmhqa4bzi1b38"
+   "commit": "e668666770858e92de83d8217c7e384de3ba1e34",
+   "sha256": "0hlm8c1sif4z8fl6k9k9akc26nzxby792ca6wkrqxcjsc65a65zv"
   },
   "stable": {
    "version": [
@@ -33622,16 +33799,16 @@
   "repo": "walseb/exwm-firefox-evil",
   "unstable": {
    "version": [
-    20200206,
-    2212
+    20220318,
+    1958
    ],
    "deps": [
     "evil",
     "exwm",
     "exwm-firefox-core"
    ],
-   "commit": "14643ee53a506ddcb5d2e06cb9f1be7310cd00b1",
-   "sha256": "12rhsy5f662maip1sma0vi364xb8swb7g59r4dmafjv3b52gxik8"
+   "commit": "a377326e2e4ac386a0abb3fc9b1b356a0d955b61",
+   "sha256": "0gn221al5sf6zcpgd7rl3d8kg8c8l6plf9v5ii0z6ib14g0wvpgb"
   }
  },
  {
@@ -34029,19 +34206,19 @@
   "repo": "WJCFerguson/emacs-faff-theme",
   "unstable": {
    "version": [
-    20220219,
-    1818
+    20220318,
+    2213
    ],
-   "commit": "f32c32711e936ae0397686b38b88a7dd3cc7ad21",
-   "sha256": "0vkd83bjprwbm02chvm1q8m818f9ngpbdzr078bxbyig5p0332z4"
+   "commit": "c58c162a2d1284033497feff4bfa8c3210685d9d",
+   "sha256": "0v5xn0zpc2khy97pbhvhja724hfc9y3rm9fmqf0xzpm6czbgi4xr"
   },
   "stable": {
    "version": [
     3,
-    0
+    1
    ],
-   "commit": "c090f3d3a8a2ddedeffc1f5b5147cb7633dae79e",
-   "sha256": "1kiaqascf4lh1kpvp79yynjyncakq31xgx0h2bfinji8i7y32pg1"
+   "commit": "1385058dfe1db579cc5e08bd81ad9b15282f0650",
+   "sha256": "1ph7myinasxbamr7vpiijihqniq06ng4h58jgh04xb7vvi4b07nx"
   }
  },
  {
@@ -34160,14 +34337,14 @@
   "repo": "condy0919/fanyi.el",
   "unstable": {
    "version": [
-    20220222,
-    1101
+    20220310,
+    358
    ],
    "deps": [
     "s"
    ],
-   "commit": "bf214d3256143c4d18f3ec6060ee141d252424e2",
-   "sha256": "0wfp54h3wfvvr6sms1fzxpiqdsyhyygnmjkb9jv03gkir3asnpf9"
+   "commit": "b01cb24209d223ae0e7281c279daab87800ee7f4",
+   "sha256": "1jaw9xwh58p1n0x943f6fly0scxf6zd6czq87xrb3fnkmv8qdnhk"
   }
  },
  {
@@ -34523,17 +34700,17 @@
  },
  {
   "ename": "fennel-mode",
-  "commit": "cda0732050a17b2dc70b80afd6fc6bb9cf8bb60f",
-  "sha256": "0lg69rjvbg7zl4jxc88m12r4rgv2mg2xdyz591mdmgvxwr2hfrv9",
-  "fetcher": "gitlab",
-  "repo": "technomancy/fennel-mode",
+  "commit": "6f1dd5342562665d32308d2cf69527a0e491f269",
+  "sha256": "0fbwd932jvgn7aarv04pbla76ldpdn2gz0z6zjdcjsp5h507ngps",
+  "fetcher": "git",
+  "url": "https://git.sr.ht/~technomancy/fennel-mode",
   "unstable": {
    "version": [
-    20220131,
-    627
+    20220309,
+    445
    ],
-   "commit": "824d330c32637d8e0ef349ffaa8e002aca56991a",
-   "sha256": "1f1i28jlghzm7fa4998izakasmr6jvzghx96shahc6walcr8zb2h"
+   "commit": "c55eecd7c731a18c40be98684370c4c6903d243d",
+   "sha256": "1cg21a2p9pqx9dif35k0p393ckz8f433qznwxgircajjmz65b7b2"
   },
   "stable": {
    "version": [
@@ -34575,8 +34752,8 @@
     "f",
     "s"
    ],
-   "commit": "bc8828273e7a01549d6e892bb0f4ca36d59dd964",
-   "sha256": "0rcxlmic4hh6qc2l041i7p3qxlmncbw8bhh4lzgg59hdhc18ln04"
+   "commit": "dd51ad1a5a0d85ab3c71e9bd31499d50ec8b1f74",
+   "sha256": "1qvi1z6w8j94pp71gwvjd8h14m6fnf0wg824iwk7pvfyhfmi3p91"
   },
   "stable": {
    "version": [
@@ -34679,8 +34856,8 @@
   "repo": "knpatel401/filetree",
   "unstable": {
    "version": [
-    20220130,
-    9
+    20220312,
+    1650
    ],
    "deps": [
     "dash",
@@ -34688,8 +34865,8 @@
     "seq",
     "transient"
    ],
-   "commit": "953f0b2d130d3944557d2c909328afd8c8097e8c",
-   "sha256": "09r3k0ba89iv6vzhyzgl7aa496ycld0ab18z45qvp7m8aqkvf3jw"
+   "commit": "9125e5b7ebbb99b8c007018fcfd5034e7ac6630d",
+   "sha256": "1gwx52498q6yg8vyfdw4mrxjj49cbcaf9r95rl2dcms9rb9s5rqv"
   }
  },
  {
@@ -34749,8 +34926,8 @@
     20210707,
     354
    ],
-   "commit": "f23ecfc9c6b7a1369f8431ba1bd919a733b3d38e",
-   "sha256": "0hp3id5fc8z305y5jpbg57nqzdscw5r9yhvmzndiw6ly9pk8868a"
+   "commit": "466b2314f48aee2bab17810eb4fd7f9b061c9a46",
+   "sha256": "1dmdmgmb7gw2p62p1i1ii1b4b6wvh0kg1vvvlfpx5jmv2ix01drc"
   },
   "stable": {
    "version": [
@@ -34943,11 +35120,11 @@
   "repo": "muffinmad/emacs-find-file-rg",
   "unstable": {
    "version": [
-    20220109,
-    2015
+    20220314,
+    1540
    ],
-   "commit": "86158409c59f0349e84fb31557cc41f93d2df5d8",
-   "sha256": "1aghs4411fbxdlfhgy3a2aiq5z2a5slgw5qjd2hs99iqll2zq84v"
+   "commit": "404b1cc97c2f700d3dc1c66b640f96ed5a268dc3",
+   "sha256": "18v3wdkh7ld6ap4nfc8p84i44gc99nrvk7v0gyq1zdg0yy20vwaq"
   }
  },
  {
@@ -35018,8 +35195,8 @@
   "repo": "LaurenceWarne/finito.el",
   "unstable": {
    "version": [
-    20220111,
-    1121
+    20220307,
+    1527
    ],
    "deps": [
     "async",
@@ -35030,8 +35207,8 @@
     "s",
     "transient"
    ],
-   "commit": "57d3e873a5a5fde4f8dfdd99608780b7020c7b9d",
-   "sha256": "18li3w3qf9j1lb90p3vsn28wlqqad05rq7nhd988nzf7izxir094"
+   "commit": "be1ae9bcb1b85d93f138c510dbc16c28af228916",
+   "sha256": "0jslc8j153sglagfjq5vrcnhgzjjxkf763h3md9735z231svvvk6"
   },
   "stable": {
    "version": [
@@ -35892,8 +36069,8 @@
   "repo": "flycheck/flycheck",
   "unstable": {
    "version": [
-    20210825,
-    1804
+    20220314,
+    27
    ],
    "deps": [
     "dash",
@@ -35901,8 +36078,8 @@
     "pkg-info",
     "seq"
    ],
-   "commit": "784f184cdd9f9cb4e3dbb997c09d93e954142842",
-   "sha256": "137zsivwh3i4b757hzwf5mhv5sg8j2jg7kg0cjphplwasqk70qm7"
+   "commit": "278d0810f05eb03600d835c2bdd67d6b55a58034",
+   "sha256": "1c722aapkqbkxqchpchd2id9kz4hv2dckyl851x4na3yd7k0dzky"
   },
   "stable": {
    "version": [
@@ -36696,8 +36873,8 @@
    "deps": [
     "seq"
    ],
-   "commit": "6274e6d5391bcdca46164b3238b045ca21c353a2",
-   "sha256": "0dr52dqxsgswswbkdbv0dax57k41j58n5wf3gny6yz52626kv8n8"
+   "commit": "911ffb3498e411c538eebce20c6b20b39d725af6",
+   "sha256": "1b0g9lqg6kmvhvh4a6g6xmag4jmkx3br6b37z8kb7p7x3wb691f4"
   }
  },
  {
@@ -36818,8 +36995,8 @@
    "deps": [
     "flycheck"
    ],
-   "commit": "65e7d90594b5f624702b3cf6e8867407419980b7",
-   "sha256": "1s7xgcn10dx4i0l3q1pl33v8r59xjjmgia4a45jmv52schpx53gp"
+   "commit": "6b76fa9c43834fabe501c7ab1816797af4e4a7d1",
+   "sha256": "1l2lv9n159c04rk3z044ib5w1kpgld6j1i63106bmr3za3kkkqv6"
   },
   "stable": {
    "version": [
@@ -36889,16 +37066,16 @@
   "repo": "emacs-grammarly/flycheck-grammarly",
   "unstable": {
    "version": [
-    20220222,
-    638
+    20220228,
+    731
    ],
    "deps": [
     "flycheck",
     "grammarly",
     "s"
    ],
-   "commit": "7ded0a4f36b88867ec6b14a791dc4d14baf09bd5",
-   "sha256": "0q3bhfjb0cr4f0g9dyyz70lgzzzwa3k77ahyhkc1jscmjafsjs5i"
+   "commit": "2b71f7708798aba0c766768eeb161bd2696d663d",
+   "sha256": "0vg9gpa4sifzdv6z5ax3cqgmqa1xzaq4g5fqpswsyr55jaxpi5r7"
   },
   "stable": {
    "version": [
@@ -37020,14 +37197,14 @@
   "repo": "DamienCassou/flycheck-hledger",
   "unstable": {
    "version": [
-    20210119,
-    1000
+    20220323,
+    726
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "0eeaa707b74f96761404daa2f807fbd7af904b75",
-   "sha256": "15xwnxvda3kj81q2rm8cz2qj17l9cwjqak4y6v02cv37nax0jmfh"
+   "commit": "87b275b9b3d476b5f458e85e760f3f7fa3e66775",
+   "sha256": "0l4xqrjzz2spld624zsnnx7bqsiyqhfd3wixcjh7rjshiaf5vhb5"
   },
   "stable": {
    "version": [
@@ -37276,8 +37453,8 @@
     "flycheck",
     "keg"
    ],
-   "commit": "f0a719892aed5b1b4b644f1339d1ace99c656100",
-   "sha256": "0vk4fdkai0ssq31ycckkz4iwp35ip5d8lnyisv4m3b98jv3pb6k0"
+   "commit": "944e36144d92a798e1fd0f3d83fc6347d57a976e",
+   "sha256": "1flri9jmhhhak2zx46sw86jm05mw4banyk1ag2354v1irsc81piv"
   }
  },
  {
@@ -37317,14 +37494,14 @@
   "repo": "emacs-languagetool/flycheck-languagetool",
   "unstable": {
    "version": [
-    20211107,
-    1001
+    20220228,
+    737
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "c22c4f33cfc1229177fc67b18885363fb8a23af9",
-   "sha256": "01nshsqjl9vlx06vg2fws0jxd6x2dy5pf2hix0am14v0rk9kh6zk"
+   "commit": "018b4e12b9b5e80e0169ce044fb2a898a747bd1f",
+   "sha256": "0v8wf6jax2gzqrsj8lijybc47bkz665mbw87a73iz6dcmlyrxsmy"
   },
   "stable": {
    "version": [
@@ -38611,8 +38788,8 @@
    "deps": [
     "flymake"
    ],
-   "commit": "0c9f3fa273cf1cea8fd64c2b3c20119e2d5c8f6e",
-   "sha256": "0vw21na55i7fxrls5b3frf2mml7nk8k6y39936r7gbnmn00dcmam"
+   "commit": "097c8754367f68ea84eac9f5f31664cecb95eeb9",
+   "sha256": "1nw2lib8c919bwiljqbj2b098frw6ciamyd66ms131pzm633iplc"
   },
   "stable": {
    "version": [
@@ -38703,11 +38880,11 @@
   "repo": "orzechowskid/flymake-eslint",
   "unstable": {
    "version": [
-    20191129,
-    1558
+    20220318,
+    152
    ],
-   "commit": "6e2d376f84ddf9af593072954c97e9c82ab85331",
-   "sha256": "1pkigdarkjk2gpqjrfavg68bwihaazjzf1rr9fmrqkgis5hz3zf7"
+   "commit": "bfcf28259c7d774b259a6ed122f1f0936a5b96b9",
+   "sha256": "18rvmvaw7jdlrc4xvl9nw9lawwqnd5ahnf7j95qlqfrr3fm2avmw"
   },
   "stable": {
    "version": [
@@ -38727,14 +38904,14 @@
   "repo": "purcell/flymake-flycheck",
   "unstable": {
    "version": [
-    20210404,
-    2128
+    20220313,
+    924
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "fd5e801b49a0dd085bc23fd6ea32b0e3be9edea7",
-   "sha256": "1rvrxnqplwxm2havrsfsv3nrfv0zgz574rh18dkz5ixlbscjcpx7"
+   "commit": "850a3f2f6908db5d4a3739e385b2c9fb3ad488f9",
+   "sha256": "1axr0wgmjr58fhhl2zwh5l4wd9x8h66rv2917ynxwq61p955wi87"
   }
  },
  {
@@ -38839,8 +39016,8 @@
     "grammarly",
     "s"
    ],
-   "commit": "ae2190f47b8e0792ae936f972081de5a5b796d95",
-   "sha256": "1k66jv6nqmaazibr212swhkn4y3dkzwrg7f9mvpig19abfima6yn"
+   "commit": "bb8bae85b0cd5a3d4603bbb35f9237bcd83d250f",
+   "sha256": "1a2mzmgp6sb0wylcasg764rczlqc0nj09wbxdfmdjghdcl679pr1"
   },
   "stable": {
    "version": [
@@ -39086,8 +39263,8 @@
    "deps": [
     "s"
    ],
-   "commit": "55df906e4a19d64aa6bc44fd45eb02819c6e77be",
-   "sha256": "0lxfzib1ipr3nkyjixy49n7g5z1v6hhimp1ff6n87wwz1d55lkjb"
+   "commit": "330a277f6469f3382fb758bd19117aa4ca5aabf9",
+   "sha256": "1sgcws103qbj259zi0qrpn5cgjiab36sl2w2nnfs96bky228byc9"
   },
   "stable": {
    "version": [
@@ -39148,6 +39325,30 @@
   }
  },
  {
+  "ename": "flymake-markdownlint",
+  "commit": "0cdb9c33a827d870da79a63d3c0b923fb5b02073",
+  "sha256": "1myfk8pk02svr6506ccgs4qhcgq89jhyf91hpwvf1jfc1icr1ph6",
+  "fetcher": "github",
+  "repo": "shaohme/flymake-markdownlint",
+  "unstable": {
+   "version": [
+    20220320,
+    1208
+   ],
+   "commit": "59e3520668d9394c573e07b7980a2d48d9f6086c",
+   "sha256": "1d51gfk0yw9hxr3i48v7b7g3zh2pdwlygxy2gdcjcy4a4ih1014s"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    3
+   ],
+   "commit": "59e3520668d9394c573e07b7980a2d48d9f6086c",
+   "sha256": "1d51gfk0yw9hxr3i48v7b7g3zh2pdwlygxy2gdcjcy4a4ih1014s"
+  }
+ },
+ {
   "ename": "flymake-nasm",
   "commit": "003b8973f810f771da88e30b4aa7457967f21364",
   "sha256": "1i12dz0xzvbyajnlb64scv894zj2nbsz354mv9rjhkgvc9zw2hnl",
@@ -39179,8 +39380,8 @@
    "deps": [
     "flymake"
    ],
-   "commit": "c70eb881d4fb27aeb72c0bf8de6707b9de49bd51",
-   "sha256": "1w7msjg4sa0h0a4ycl9382agv1bhzcr9z0i6hmhcg7333rd31ilh"
+   "commit": "dba854423933224f0d983bde8981f7c6b62a7865",
+   "sha256": "08j9zcj42zxwdlycqcivhh58rr1abafb66vbgcik9h2givnkx2ys"
   },
   "stable": {
    "version": [
@@ -39268,8 +39469,8 @@
    "deps": [
     "flymake-easy"
    ],
-   "commit": "8e5ab5103c8f40a2ab6c86def6327e480ae93657",
-   "sha256": "19cggpaj14w3j3q6dgv7ybjqbr2pqbwhingz4yi7wkrr0w6s0lsa"
+   "commit": "8f6222324e4f205312b51c8a862b24562db0e02e",
+   "sha256": "1cpfif8v9qrcfiklfy0rvj31f8ixj6npydzkqsn2xjxd8j8266zb"
   },
   "stable": {
    "version": [
@@ -39407,15 +39608,15 @@
   "repo": "mohkale/flymake-rest",
   "unstable": {
    "version": [
-    20220109,
-    15
+    20220313,
+    1311
    ],
    "deps": [
     "flymake",
     "let-alist"
    ],
-   "commit": "fd9928801cf601a221cf45508e254f405d19c819",
-   "sha256": "1paiw6ax6zcqdr2gxj78d8by7glag0nnrp8y489qz6k2y7mwv9s8"
+   "commit": "6c0f39ae1e8b476b195adfe477b40cf6c4a162b6",
+   "sha256": "1qmzf49ags9ymdfi7q4mk4amp522ssq2hnrknkrx1sj0lfxkkypw"
   },
   "stable": {
    "version": [
@@ -39525,11 +39726,11 @@
   "repo": "federicotdn/flymake-shellcheck",
   "unstable": {
    "version": [
-    20210314,
-    2048
+    20220308,
+    2218
    ],
-   "commit": "ac534e9ef15c82ac86ae65fe5004d29dbc8c92c7",
-   "sha256": "04yfb4sy41spjzk9mhm4gy0h8vnjx09p2g6nm1yzgd9a5ph9sqgl"
+   "commit": "688638177b4e23ecc192975e3062274ca904ada1",
+   "sha256": "1x5blblaf1h6jz4v6l10w2gy7xkbwzzw2a4s0afdicm0r1wc7v44"
   }
  },
  {
@@ -39609,11 +39810,20 @@
   "repo": "shaohme/flymake-yamllint",
   "unstable": {
    "version": [
-    20211215,
-    1416
+    20220311,
+    636
+   ],
+   "commit": "a93bf9a6697566f0e29fb51a87c5cc7b2a972d2d",
+   "sha256": "0h1w5b2krdvvr73w2k54bxc3dbgs1kbgb2za0z7wc8w02cl8fg57"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    3
    ],
-   "commit": "22690dd862089f470980cceea06153682a397b7a",
-   "sha256": "1x3ivvwnbwpsavbypgkh1il7l7vmq8vp4w3y40f60zv3zz06nf16"
+   "commit": "a93bf9a6697566f0e29fb51a87c5cc7b2a972d2d",
+   "sha256": "0h1w5b2krdvvr73w2k54bxc3dbgs1kbgb2za0z7wc8w02cl8fg57"
   }
  },
  {
@@ -39660,8 +39870,8 @@
     20220131,
     834
    ],
-   "commit": "e9fde6f93af991b0528d6ed47d44bed470dc70af",
-   "sha256": "1sjdd9ixvp84fzx2zkz6kxlkwnd7v95jl2ilx5jf5r6l1118iakq"
+   "commit": "e8027a412262bc04056a5b5440efdb7f370c3320",
+   "sha256": "15db543hnx2m5vcykd13gkxc6j52piyk4jab3wq46223qwpxi0xn"
   },
   "stable": {
    "version": [
@@ -39688,8 +39898,8 @@
     "avy-menu",
     "flyspell-correct"
    ],
-   "commit": "e9fde6f93af991b0528d6ed47d44bed470dc70af",
-   "sha256": "1sjdd9ixvp84fzx2zkz6kxlkwnd7v95jl2ilx5jf5r6l1118iakq"
+   "commit": "e8027a412262bc04056a5b5440efdb7f370c3320",
+   "sha256": "15db543hnx2m5vcykd13gkxc6j52piyk4jab3wq46223qwpxi0xn"
   },
   "stable": {
    "version": [
@@ -39720,8 +39930,8 @@
     "flyspell-correct",
     "helm"
    ],
-   "commit": "e9fde6f93af991b0528d6ed47d44bed470dc70af",
-   "sha256": "1sjdd9ixvp84fzx2zkz6kxlkwnd7v95jl2ilx5jf5r6l1118iakq"
+   "commit": "e8027a412262bc04056a5b5440efdb7f370c3320",
+   "sha256": "15db543hnx2m5vcykd13gkxc6j52piyk4jab3wq46223qwpxi0xn"
   },
   "stable": {
    "version": [
@@ -39752,8 +39962,8 @@
     "flyspell-correct",
     "ivy"
    ],
-   "commit": "e9fde6f93af991b0528d6ed47d44bed470dc70af",
-   "sha256": "1sjdd9ixvp84fzx2zkz6kxlkwnd7v95jl2ilx5jf5r6l1118iakq"
+   "commit": "e8027a412262bc04056a5b5440efdb7f370c3320",
+   "sha256": "15db543hnx2m5vcykd13gkxc6j52piyk4jab3wq46223qwpxi0xn"
   },
   "stable": {
    "version": [
@@ -39784,8 +39994,8 @@
     "flyspell-correct",
     "popup"
    ],
-   "commit": "e9fde6f93af991b0528d6ed47d44bed470dc70af",
-   "sha256": "1sjdd9ixvp84fzx2zkz6kxlkwnd7v95jl2ilx5jf5r6l1118iakq"
+   "commit": "e8027a412262bc04056a5b5440efdb7f370c3320",
+   "sha256": "15db543hnx2m5vcykd13gkxc6j52piyk4jab3wq46223qwpxi0xn"
   },
   "stable": {
    "version": [
@@ -40129,8 +40339,8 @@
     20170305,
     1356
    ],
-   "commit": "a743f80bfd53767ca9ee32da34c5ca032172a480",
-   "sha256": "1mkyd2bbyd9avw2qaidkzkpv8i7lfiv9189bj49dxklg92823sip"
+   "commit": "b64edc9f350beef07168621933d3e287bce28434",
+   "sha256": "1yss4akandva0rg05g6vfwjk3q9yj6p0pg85nq5glv1qxdx1rvxn"
   },
   "stable": {
    "version": [
@@ -40292,8 +40502,8 @@
   "repo": "magit/forge",
   "unstable": {
    "version": [
-    20220225,
-    1417
+    20220326,
+    908
    ],
    "deps": [
     "closql",
@@ -40306,8 +40516,8 @@
     "transient",
     "yaml"
    ],
-   "commit": "0f436173d1660321edac761e3e82c40e97709f63",
-   "sha256": "03iwng2l5gj3mhk8jw72wzz5iji4c0m5p59f2igbiqm79xrxghys"
+   "commit": "2aaf4462e868acf6eca95e5ca2c3693c3f059c2b",
+   "sha256": "16d3zcjwxhy18jhgcznwx643v9fc93yxb6fxgkasrzb0dlxrhhwq"
   },
   "stable": {
    "version": [
@@ -40362,15 +40572,15 @@
   "repo": "lassik/emacs-format-all-the-code",
   "unstable": {
    "version": [
-    20211119,
-    1042
+    20220322,
+    1003
    ],
    "deps": [
     "inheritenv",
     "language-id"
    ],
-   "commit": "6200b91d9151b3177a676d30edd948266292bcc1",
-   "sha256": "1d3mqajajr1jqkv4rnc3iwfdpipv9lk14hw4g7y8sli17l286k16"
+   "commit": "eb2a7fa6da15d23b57921218a36ac67d523e81f1",
+   "sha256": "1lf719fifgaci4hirz1bdnf918ijmkp017ynmlg1gq0lfx7ay7gj"
   },
   "stable": {
    "version": [
@@ -40507,14 +40717,14 @@
   "repo": "rnkn/fountain-mode",
   "unstable": {
    "version": [
-    20220223,
-    1041
+    20211223,
+    405
    ],
    "deps": [
     "seq"
    ],
-   "commit": "96dd298a2ee2f62739e4a11281daadd90352df70",
-   "sha256": "0amxqi4jvc0sr5i6pk72ricjwdc0v0lr0q34vccsab2l8iiwid89"
+   "commit": "0aab300c0a6225d93087ae112f123eb89048ce1d",
+   "sha256": "102g7n43ji47ssj7rdyx34frbgl84lgmppww4f3x6wbkvfwa2p6f"
   },
   "stable": {
    "version": [
@@ -40793,11 +41003,11 @@
   "repo": "rnkn/freeze-it",
   "unstable": {
    "version": [
-    20210727,
-    1535
+    20220301,
+    148
    ],
-   "commit": "151d264a0d0593b413b5a984b391023e905a190b",
-   "sha256": "04cv6p9df7h6w9h2ina3y3mmkp0y1rs6d9wmzari0cbm7q50hz4l"
+   "commit": "ad92e33a7ebd860905da60d194833516bf61cbf5",
+   "sha256": "0gvc6f8jdvrfwhm5rlvrjd6lbvw1j84z3pwcfajpgyr1a5y6gx49"
   },
   "stable": {
    "version": [
@@ -40826,8 +41036,8 @@
     "friendly-tramp-path",
     "with-shell-interpreter"
    ],
-   "commit": "ad4ac00662829fa18858be02b322753ad091ffe3",
-   "sha256": "0xf71bvz4252y2jxkn9dpcmg5fvf9i049bbm8bvs7s9f6bcplba6"
+   "commit": "e530e359848e8bdad09d26529f17eb25e5558b3e",
+   "sha256": "0n4p0682k6q7p4kn8khb87zbaa9by36gr7iz218p1bnv3v8c42b8"
   },
   "stable": {
    "version": [
@@ -40853,16 +41063,16 @@
   "repo": "p3r7/friendly-shell",
   "unstable": {
    "version": [
-    20201212,
-    2302
+    20220309,
+    1711
    ],
    "deps": [
     "cl-lib",
     "dash",
     "with-shell-interpreter"
    ],
-   "commit": "ad4ac00662829fa18858be02b322753ad091ffe3",
-   "sha256": "0xf71bvz4252y2jxkn9dpcmg5fvf9i049bbm8bvs7s9f6bcplba6"
+   "commit": "e530e359848e8bdad09d26529f17eb25e5558b3e",
+   "sha256": "0n4p0682k6q7p4kn8khb87zbaa9by36gr7iz218p1bnv3v8c42b8"
   },
   "stable": {
    "version": [
@@ -40894,8 +41104,8 @@
     "dash",
     "with-shell-interpreter"
    ],
-   "commit": "ad4ac00662829fa18858be02b322753ad091ffe3",
-   "sha256": "0xf71bvz4252y2jxkn9dpcmg5fvf9i049bbm8bvs7s9f6bcplba6"
+   "commit": "e530e359848e8bdad09d26529f17eb25e5558b3e",
+   "sha256": "0n4p0682k6q7p4kn8khb87zbaa9by36gr7iz218p1bnv3v8c42b8"
   },
   "stable": {
    "version": [
@@ -41009,8 +41219,8 @@
   "repo": "thefrontside/frontmacs",
   "unstable": {
    "version": [
-    20220201,
-    2048
+    20220315,
+    1057
    ],
    "deps": [
     "add-node-modules-path",
@@ -41023,8 +41233,8 @@
     "tide",
     "web-mode"
    ],
-   "commit": "774b4b3a1f24c46c91f189a2c67d5fcf0785e2be",
-   "sha256": "0ks55xp65qg96vsj1nsrifbpvfz0k45glis4wsl6wyc7pfiss11y"
+   "commit": "18816534a977fbd28848389b58c22b6538cfdeec",
+   "sha256": "1nhsjkp0dm9875a1w86vvfwd1gsssvcmk144wvflvw40br9ss7h1"
   }
  },
  {
@@ -41131,8 +41341,8 @@
    "deps": [
     "cl-lib"
    ],
-   "commit": "3032408bd3b521d761eea9f0e4e89640d5485129",
-   "sha256": "0y6mralgvay2493vzm6m7m53sxivg9rzhs947flpdyz8xsl0ac4d"
+   "commit": "cd194eebbf3bfc8ab795b41f99613faae342df34",
+   "sha256": "1qj9wvggyakp0v1yyr2fkj13ddgjj67g0fad2yk1xma44d454xfm"
   },
   "stable": {
    "version": [
@@ -41330,8 +41540,8 @@
     20211231,
     1837
    ],
-   "commit": "20a76509831b8296bf3c8b389e1f5602c2a88899",
-   "sha256": "1m4qsb2hfs1v5ffxzc81km5ld0gi8j3hzgnjckw5rlgl0ikrbjg5"
+   "commit": "9c500225fc1e084935f4865e2117acef8e30c5f5",
+   "sha256": "1y7439ipgpj57asmxhdgnkjyakh7ijj2242al5ljpswqmb5404kk"
   },
   "stable": {
    "version": [
@@ -41731,26 +41941,28 @@
   "repo": "emacs-geiser/geiser",
   "unstable": {
    "version": [
-    20220223,
-    1659
+    20220324,
+    51
    ],
    "deps": [
+    "project",
     "transient"
    ],
-   "commit": "ed6d6a1b362fe389acb7f7e1bf6d89ff88e060af",
-   "sha256": "1zs3ywy81754daygch6nc03wg5z953gm03kclnv5fngxjzjf5xgk"
+   "commit": "cbfab92584072ba0e1c4119612a8438db61ecbf6",
+   "sha256": "1gxa5ba5n7k169klg3zyrl8ywyljmcp006x2fql3s7awz0c98rw0"
   },
   "stable": {
    "version": [
     0,
-    22,
+    23,
     2
    ],
    "deps": [
+    "project",
     "transient"
    ],
-   "commit": "c1cc4da1edc46b763e0342ab4aa971e54f48658d",
-   "sha256": "11vc57nkgbsyl1wrjikxs0ixzkp7dksj51p4aa9girsm2hs3bs6v"
+   "commit": "bc0dde310492de733f9ec528d7aeddd57093d05e",
+   "sha256": "1gxa5ba5n7k169klg3zyrl8ywyljmcp006x2fql3s7awz0c98rw0"
   }
  },
  {
@@ -41904,26 +42116,26 @@
   "repo": "emacs-geiser/guile",
   "unstable": {
    "version": [
-    20220215,
-    2320
+    20220323,
+    2352
    ],
    "deps": [
     "geiser"
    ],
-   "commit": "cfd9116dcb246126950d7f2f662f09149684128b",
-   "sha256": "1k8qgkamzd6ljvk7xiqs1r0fvr4gzffhylpll7c4zjywrbixw3g1"
+   "commit": "c641fcc50b6b86ca95743122b5206cdcd475f96e",
+   "sha256": "18m5ldj4r4c2hxgvv5b4azl90r8az1kn5f3s913h971asyv4wx06"
   },
   "stable": {
    "version": [
     0,
-    21,
+    23,
     2
    ],
    "deps": [
     "geiser"
    ],
-   "commit": "ecd118171a111e04120d11c0d72345ce1d0f8066",
-   "sha256": "1ri1l203vp5nnl7chmmvvj3b03315fpzjjkisv55m6xs77ig2cl7"
+   "commit": "c641fcc50b6b86ca95743122b5206cdcd475f96e",
+   "sha256": "18m5ldj4r4c2hxgvv5b4azl90r8az1kn5f3s913h971asyv4wx06"
   }
  },
  {
@@ -42224,16 +42436,16 @@
   "repo": "thisch/gerrit.el",
   "unstable": {
    "version": [
-    20220208,
-    2103
+    20220323,
+    1105
    ],
    "deps": [
     "dash",
     "magit",
     "s"
    ],
-   "commit": "a802be95aea25f500583f72df968c86c6771a3d0",
-   "sha256": "1ac6d4fxcac4p6dp4nhbqf3bzd0yvgwajrllrh3j0vcdpzmbg95s"
+   "commit": "b7603d14f3869e1fba6265bd8255469a47be7357",
+   "sha256": "1hshq5bv3cmd04mkq8lckk9cnmjlhb4l34wapgpqrsyhfnz18zxw"
   }
  },
  {
@@ -42343,16 +42555,17 @@
   "repo": "sigma/gh.el",
   "unstable": {
    "version": [
-    20201222,
-    438
+    20220302,
+    549
    ],
    "deps": [
+    "cl-lib",
     "logito",
     "marshal",
     "pcache"
    ],
-   "commit": "4b2dd0667ebe9c684c1de5bc96961c2ab0885c07",
-   "sha256": "11qjlwsiicnmgcy0yvpvagpcl31rrv5qzm18hlh16cyis4z3vngi"
+   "commit": "27ccc892e94f7e747e5b879eec71119965d9ed6e",
+   "sha256": "0biljpqw14kjv0njyrahfdgglaphghva0kpfjhiprfwbd0rmmi1k"
   },
   "stable": {
    "version": [
@@ -42377,11 +42590,11 @@
   "repo": "emacsorphanage/gh-md",
   "unstable": {
    "version": [
-    20151207,
-    1740
+    20220316,
+    1432
    ],
-   "commit": "693cb0dcadff70e813e1a9d303d227aff7898557",
-   "sha256": "0g3bjpnwgqczw6ddh4mv7pby0zyqzqgywjrjz2ib6hwmdqzyp1s0"
+   "commit": "e721fd5e41e682f47f2dd4ce26ef2ba28c7fa0b5",
+   "sha256": "1xnfq6bbc5bgkd0mzkr7r66sd85qfn859swpsp6sr0xfl8cq12wm"
   }
  },
  {
@@ -42523,28 +42736,28 @@
   "repo": "magit/ghub",
   "unstable": {
    "version": [
-    20220216,
-    2156
+    20220325,
+    1028
    ],
    "deps": [
     "let-alist",
     "treepy"
    ],
-   "commit": "2f50383cb35f0cc54599c54cc9794bf25387c050",
-   "sha256": "1ph96pqhizaq2vkvmkbzilacsbyx69g2bbsb3z8kqafrhg0khajj"
+   "commit": "fdf2e5bb9ba34216d6a76444c1889863db447b29",
+   "sha256": "03c1934gck19gmhmy1cv3m2fma7f9pxi9l7p1pcz7iy1x6cyi6bm"
   },
   "stable": {
    "version": [
     3,
     5,
-    5
+    6
    ],
    "deps": [
     "let-alist",
     "treepy"
    ],
-   "commit": "6662865449a4c68c03e3a8257aee0ae5318b0fbd",
-   "sha256": "1px27nh4cr3r16qmvig72jdirjzllvm2m4dzm59kfznhg3rf7vj0"
+   "commit": "2e1cf8c1410be8b1d5a81bff1cfac70a3f621b92",
+   "sha256": "1pw1rjrvvanlcxv3rb64s2p646zfaipp7h7v8djlrrnlgy6mwbqd"
   }
  },
  {
@@ -42896,8 +43109,8 @@
     "transient",
     "with-editor"
    ],
-   "commit": "0f96d398346293b4d1f60dd878a490c25917cd8a",
-   "sha256": "1q948ihwfr55spa81vpg3lih6bc0vappl0xlgdagh7m55mg561bm"
+   "commit": "b1702991eec2c068d282fc2f1bd665726a14e10d",
+   "sha256": "0gyvbhwm5x7wgm4cdp3v0h8vv5vkw066fmwsvlvgyqqppkq5pqz3"
   },
   "stable": {
    "version": [
@@ -42994,7 +43207,7 @@
     20211222,
     913
    ],
-   "commit": "9174c74cd607e297d7f14c0595d4c20ebb53847d",
+   "commit": "abe65ed3937fe038123549b948f37a3bbf1c4029",
    "sha256": "1jkhvxlk4lkfjgd5vlfjy8z7w6n7j91rxqr48ricyzzl62p4v2wr"
   },
   "stable": {
@@ -43316,14 +43529,14 @@
   "repo": "pidu/git-timemachine",
   "unstable": {
    "version": [
-    20210528,
-    908
+    20220324,
+    1057
    ],
    "deps": [
     "transient"
    ],
-   "commit": "3381797bcbf906b18dff654a2361032d2d01b4a3",
-   "sha256": "05pyjhi26charkjy0mhvigd72rvb4s1s8imycfynf0fmjy7f7n7x"
+   "commit": "ca09684e94767cc0b2339b77b778b4de4f9d104f",
+   "sha256": "13zs30sr8fkxar883va9xbfcl27m7jf02g63rq09gccjfw670r7z"
   },
   "stable": {
    "version": [
@@ -43491,11 +43704,20 @@
   "repo": "Justintime50/github-dark-vscode-emacs-theme",
   "unstable": {
    "version": [
-    20211122,
-    1800
+    20220313,
+    2033
+   ],
+   "commit": "2123bcd08fe42094b07180632be2cd2af606ee21",
+   "sha256": "1n41px99cs6q53lfs2dn9h7ml6hc4yz7mbjlg30hp4l8a3j74lz3"
+  },
+  "stable": {
+   "version": [
+    0,
+    3,
+    1
    ],
-   "commit": "092324ecb9c0909da2ba2751cb21a994b4e09536",
-   "sha256": "1zr116c9zphm5kgacqxmll7gzd1h5583xy0asg46dzyn4gn0bmhv"
+   "commit": "2123bcd08fe42094b07180632be2cd2af606ee21",
+   "sha256": "1n41px99cs6q53lfs2dn9h7ml6hc4yz7mbjlg30hp4l8a3j74lz3"
   }
  },
  {
@@ -43540,23 +43762,60 @@
   "repo": "TxGVNN/github-explorer",
   "unstable": {
    "version": [
-    20211216,
-    749
+    20220305,
+    1450
    ],
    "deps": [
     "graphql"
    ],
-   "commit": "069e25c3e72290adc5d32c380999840ba42ccd78",
-   "sha256": "1c8hsh2jb9670dwhnrcyk1jcbkji1zrgr5g9ra170ya5gi16cann"
+   "commit": "49e5c350169b556deaabdcb67e9440bd4d5b4f8b",
+   "sha256": "08d2s9a8sa6r67dirj5nn1hi1k5hivsjm4yz5gawww30v4w6cwil"
   },
   "stable": {
    "version": [
     1,
-    0,
+    1,
     0
    ],
-   "commit": "e6bdc500dd9b580ed12a54d18600f5db541b38b8",
-   "sha256": "1a9hnmx1q7fxyyxn0ji2mcam6wz8rwxi7a71f5542l65ah20gg1r"
+   "deps": [
+    "graphql"
+   ],
+   "commit": "d7198dd81afc4ee2001606be821707a9ff4f31da",
+   "sha256": "0gjzm4h813b065nvf4hvfji67jvygvfgzv5yhmpw5ddj1h6rz43m"
+  }
+ },
+ {
+  "ename": "github-linguist",
+  "commit": "8876af18b9e797ab7521a087278a046e0cecb7bc",
+  "sha256": "0r77axj20qf4x2gf1c0n5xfia7sfyir9cm5kwkn85w4bgb2179dd",
+  "fetcher": "github",
+  "repo": "akirak/github-linguist.el",
+  "unstable": {
+   "version": [
+    20220324,
+    548
+   ],
+   "deps": [
+    "async",
+    "map",
+    "project"
+   ],
+   "commit": "6e3fc58a465e6726dcba6da038f959028c62223b",
+   "sha256": "1zli3xzp44c61jrg0fn7h39ianxjp2r24sswm3i99hnx052pp8fp"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    1
+   ],
+   "deps": [
+    "async",
+    "map",
+    "project"
+   ],
+   "commit": "6e3fc58a465e6726dcba6da038f959028c62223b",
+   "sha256": "1zli3xzp44c61jrg0fn7h39ianxjp2r24sswm3i99hnx052pp8fp"
   }
  },
  {
@@ -43956,14 +44215,14 @@
   "repo": "xuchunyang/gitter.el",
   "unstable": {
    "version": [
-    20180122,
-    856
+    20220316,
+    138
    ],
    "deps": [
     "let-alist"
    ],
-   "commit": "11cb9b4b45f67bdc24f055a9bfac21d2bd19ea1a",
-   "sha256": "14ri86kxqz9qfhcr0bkgfyggy4bgg9imk9akhw6dfzqkl90gn2gy"
+   "commit": "49327c91eb50cfea633af8fd32b0643691d75cb7",
+   "sha256": "0m8np2pxmgziirmprs70jbflilc98b7zlx1g07i6mhp39xw1sx98"
   },
   "stable": {
    "version": [
@@ -43984,15 +44243,15 @@
   "repo": "Kinneyzhang/gkroam",
   "unstable": {
    "version": [
-    20210914,
-    1311
+    20220326,
+    521
    ],
    "deps": [
     "company",
     "db"
    ],
-   "commit": "a9c9034a8fa3c08ec3097ae40e227d400d766db9",
-   "sha256": "1fc8srqvygiv3h2hw31vy20ip6kbm2m1aq5imx01fw9qig7xfv47"
+   "commit": "38f517ac2894b16e6cf983b93ee96762fffa152a",
+   "sha256": "1ag1cpyljid237ki91zq68chyaalskibadz7af3abaa00d4lvf9v"
   },
   "stable": {
    "version": [
@@ -44308,8 +44567,8 @@
     20220102,
     1637
    ],
-   "commit": "d1a6a606dcb389a7c91a6b0d9fb995434df561be",
-   "sha256": "1p1nbgr4ffpp7plllsimshjr9ykcz27afz6fq1xqpnbslryi0bag"
+   "commit": "57be3c7addec31e226a5a27aa553e996f9c684e3",
+   "sha256": "04w11gsg91mvr2bpa70rip8rn6ir9wmgpj6078hlx4dhx0fj7c00"
   },
   "stable": {
    "version": [
@@ -44430,11 +44689,11 @@
   "repo": "unhammer/gnus-recent",
   "unstable": {
    "version": [
-    20210920,
-    902
+    20220324,
+    2011
    ],
-   "commit": "dfa0e687601e78d6be82530413cb00edb1a39889",
-   "sha256": "021rq3qp3544abqzr8cdsblpqh8yh2ss3f9gsf5sifckz7127h0s"
+   "commit": "a0ace8ea6e62a6b79a18149fbd560c6948a8103b",
+   "sha256": "0z1ad57kb0xbm8568cs6wwsgv9zbzs0skjvc12y83j5say3gwlgy"
   },
   "stable": {
    "version": [
@@ -45150,11 +45409,11 @@
   "repo": "lorniu/go-translate",
   "unstable": {
    "version": [
-    20220130,
-    138
+    20220321,
+    210
    ],
-   "commit": "b6a5842fdd08872d9243375c46cd549f1399e5b8",
-   "sha256": "1570b0v4dr745hwvw20byzhkhn4cr1v2g0n3zalh4j8wq1qkb0cw"
+   "commit": "2616a4c2e26827ecba0f2576d26b01a63546b452",
+   "sha256": "00bs8alcd2hj4c2yz1m6h1h0zddy9vicmhvipz5q1lsmnbaamwmr"
   },
   "stable": {
    "version": [
@@ -45595,8 +45854,8 @@
     "go-mode",
     "s"
    ],
-   "commit": "298335fab797d0465516ed396f6e2acbe8f2ed93",
-   "sha256": "12sn06c4gw5jddmdaw73djlraj01f57z9plnyf1gxss4gnch6kmd"
+   "commit": "78be56c0f210224b1e3a7d58239e2a32f8f84bf4",
+   "sha256": "0xkvw0wy4p8viib2s7anh322lvwm8p30g4hsjr9x0j8sqiq838ds"
   },
   "stable": {
    "version": [
@@ -45648,8 +45907,8 @@
     20210323,
     332
    ],
-   "commit": "5da95c2b6d555155189c54b6857ceaafa2b72e8a",
-   "sha256": "07hapzb7h2rbvxzn1ml4dmzcj1ihdcsw365nirvhjfbipr1y7xkn"
+   "commit": "573a53f070c71e02d89866f4cdc2ba5ccdc9cecb",
+   "sha256": "1am0l056dyi71wwzv7viigia9qybdh9b19w4ql1fkrr80zr5m0v3"
   },
   "stable": {
    "version": [
@@ -45735,8 +45994,8 @@
     20210323,
     422
    ],
-   "commit": "921f7b729fff82924c539d96feb47e299c07e7a1",
-   "sha256": "1v73qzgf1bfkw7j295nmlpqaims8ry5b0vszfxajz2p09011hw12"
+   "commit": "27fcc9e7062c9d672a513ba306fd32f7736dab78",
+   "sha256": "1zmpmv7121cv2v5sm3pg5jz7rfhikj8351isx2qa2z165b3ixssz"
   },
   "stable": {
    "version": [
@@ -45765,8 +46024,8 @@
     "magit-popup",
     "s"
    ],
-   "commit": "a41644562f5977dc76f2a385ab77432bfc21c993",
-   "sha256": "16q09nrsxnwyylfk0zdk0smxqwr31n13hww1i4f5gpw232b5lbck"
+   "commit": "fcb4f7ccee1a01bd759c3d4e7331d40c61a1feca",
+   "sha256": "1qdlmj8gpsc5365kplm0wif93y8bwfnya47y013nqjk748ins8vv"
   },
   "stable": {
    "version": [
@@ -46000,8 +46259,8 @@
     "s",
     "websocket"
    ],
-   "commit": "b340f523caa88534a89f5fa9fd0fae502e56a12c",
-   "sha256": "0f8nr981n7ndc7zvj21hsfqiy4h1ry5r1vz004lggphb2lzpzgyn"
+   "commit": "067c58d79a90071a0d70012fa1722c5c79abdc01",
+   "sha256": "1w3mj1izjs0y7xpbpy7vrkj7ljpbiz7ivkv4h17847q6w79y92wa"
   },
   "stable": {
    "version": [
@@ -46194,11 +46453,11 @@
   "repo": "ppareit/graphviz-dot-mode",
   "unstable": {
    "version": [
-    20220117,
-    1537
+    20220309,
+    1336
    ],
-   "commit": "a1b7d66f5c20404a1e59c2ee5e841022622535b8",
-   "sha256": "1xzpj81zzasj4ys9zypl4svgcikz4d32fvmzxdp8gq67bkwdlb6h"
+   "commit": "6e96a89762760935a7dff6b18393396f6498f976",
+   "sha256": "04p8x4lwbp2qwlsr5xlzjn3a25bg0rsnk3nqfvvz66zv0srz62mn"
   },
   "stable": {
    "version": [
@@ -46410,11 +46669,11 @@
   "repo": "seagle0128/grip-mode",
   "unstable": {
    "version": [
-    20220104,
-    1419
+    20220323,
+    1519
    ],
-   "commit": "1fd737f7f1e34e27b6d317ba16507bbbe0d2588c",
-   "sha256": "1b1cams272ppzs00gbcmaxihgsjym96qp399hardiw7j8byav7fz"
+   "commit": "3b06e0f594efc5d835eb30a4b89ad951e7b4d7a1",
+   "sha256": "026r6wh0plpwb6ag05ysfhcsw7l4001xwb7wqw1xchxh7jhvpmdy"
   },
   "stable": {
    "version": [
@@ -47381,14 +47640,15 @@
   "repo": "otavioschwanck/harpoon.el",
   "unstable": {
    "version": [
-    20220220,
-    839
+    20220301,
+    607
    ],
    "deps": [
-    "f"
+    "f",
+    "hydra"
    ],
-   "commit": "2e252559667ebe27485aa990a5ec062f94b67835",
-   "sha256": "0s2ags1ashr1mk5g5x467xh0ffxzkmyhr9w86qgmjnq37r0iw5zi"
+   "commit": "331eea2ed64e34cdbea024fa0fd6ba930b60d95f",
+   "sha256": "0clfdvsw08hb68iq9rhhlfb8rzp1dd81yx5k0d7zs0nqbldr71av"
   }
  },
  {
@@ -47517,11 +47777,11 @@
   "repo": "haskell/haskell-mode",
   "unstable": {
    "version": [
-    20220208,
-    1821
+    20220324,
+    1803
    ],
-   "commit": "f13b6db78bc880e680c320e015ae232f525e0a27",
-   "sha256": "06amab8n56nv8a1fnd9x3ic0s36g6q4c4m5mh6sxcngaqjvvz4pa"
+   "commit": "b1505b727b1fb8ae352e59dc90ec6dd05369ce32",
+   "sha256": "1a2znlg42jg5v2ml1n6a5chrh4365kppfrrd2y6f8rk4x6jwr6mx"
   },
   "stable": {
    "version": [
@@ -47687,8 +47947,8 @@
     20210108,
     1835
    ],
-   "commit": "f6ed4b77cdd775d53a7b824c21fd14e0eec5e3c7",
-   "sha256": "0314x9y3v8nmknmdw0gbl4njanxiqbh5h5m0kvnph6r6v0cz7m4s"
+   "commit": "b6daf4c8bfd7fa6ba7b4bdbfe03c0be7704add04",
+   "sha256": "0g4xp5z6wqhfivyls6asjnqdxmafbyl24fvcqk2s5zd9j94x6649"
   },
   "stable": {
    "version": [
@@ -47827,29 +48087,28 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20220226,
-    2016
+    20220319,
+    1850
    ],
    "deps": [
     "helm-core",
     "popup"
    ],
-   "commit": "f030e584b7f2c8679297ce960cedbdf0f7e7e86e",
-   "sha256": "0y1d8kh0swpgplqji5cmpd2xpaywd3zr3qc4msdw9lvylnrkrdgn"
+   "commit": "5e035c9193bf1e1d4bb709794a154957544dcfc7",
+   "sha256": "1my6c87ia7h99dbbbw1yxcmgacwss1j36rf3swn3k2ab6k34hsf4"
   },
   "stable": {
    "version": [
     3,
     8,
-    4
+    5
    ],
    "deps": [
-    "async",
     "helm-core",
     "popup"
    ],
-   "commit": "08c4ad8e80394c8bc2c0d50429bce765f03826db",
-   "sha256": "0kfw83jz44b30v5rzvrx4ish62rkvacxd4s64xmf18h2342nrzi0"
+   "commit": "5e035c9193bf1e1d4bb709794a154957544dcfc7",
+   "sha256": "1my6c87ia7h99dbbbw1yxcmgacwss1j36rf3swn3k2ab6k34hsf4"
   }
  },
  {
@@ -47935,8 +48194,8 @@
    "deps": [
     "helm"
    ],
-   "commit": "7cfed5d3e861717466ae6d3f76c759548a9fad04",
-   "sha256": "0j1l9ifssd2xmdiif0c922dsdii143kjp8ifygqigb9m4wbsz8ax"
+   "commit": "9109208978bc739fb8fdae760abcea4225048dd1",
+   "sha256": "0cm1r1qmmmvdmr0sshsndvi9s99n52y4nkirq7cs8alg86iyiyrk"
   },
   "stable": {
    "version": [
@@ -48734,26 +48993,26 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20220217,
-    812
+    20220319,
+    1850
    ],
    "deps": [
     "async"
    ],
-   "commit": "f030e584b7f2c8679297ce960cedbdf0f7e7e86e",
-   "sha256": "0y1d8kh0swpgplqji5cmpd2xpaywd3zr3qc4msdw9lvylnrkrdgn"
+   "commit": "5e035c9193bf1e1d4bb709794a154957544dcfc7",
+   "sha256": "1my6c87ia7h99dbbbw1yxcmgacwss1j36rf3swn3k2ab6k34hsf4"
   },
   "stable": {
    "version": [
     3,
     8,
-    4
+    5
    ],
    "deps": [
     "async"
    ],
-   "commit": "08c4ad8e80394c8bc2c0d50429bce765f03826db",
-   "sha256": "0kfw83jz44b30v5rzvrx4ish62rkvacxd4s64xmf18h2342nrzi0"
+   "commit": "5e035c9193bf1e1d4bb709794a154957544dcfc7",
+   "sha256": "1my6c87ia7h99dbbbw1yxcmgacwss1j36rf3swn3k2ab6k34hsf4"
   }
  },
  {
@@ -48917,14 +49176,14 @@
   "repo": "emacs-helm/helm-dictionary",
   "unstable": {
    "version": [
-    20201006,
-    1511
+    20220319,
+    955
    ],
    "deps": [
     "helm"
    ],
-   "commit": "b316a1d55e58645d59a84d33851d46fab3cd54b5",
-   "sha256": "0rggi6jd5f6dp50d08k9xba470drlhg9qa5a0y3cy4y2nlq0y7rn"
+   "commit": "69f1e5bf03d67c9e5cb0065e702e8c311ac9d3db",
+   "sha256": "0haq758rxayl4qwyxm44w7mq1s5g0gpfxspd0q9c546qvws4kwrr"
   }
  },
  {
@@ -48972,8 +49231,8 @@
     "cl-lib",
     "helm"
    ],
-   "commit": "281523f9fc46cf00fafd670ba5cd16552a607212",
-   "sha256": "1bqavj5ljr350dckyf39i9plkb0rbhyd17ka94n2g6daapgpq0x6"
+   "commit": "06654656d3ad502742056d9030dd59e0da984764",
+   "sha256": "17647v4wqia35x90ph47cv76mr5c1vym1p61jmrmasdp0cm06bv3"
   },
   "stable": {
    "version": [
@@ -49073,16 +49332,16 @@
   "repo": "emacs-helm/helm-emms",
   "unstable": {
    "version": [
-    20201205,
-    1635
+    20220314,
+    1633
    ],
    "deps": [
     "cl-lib",
     "emms",
     "helm"
    ],
-   "commit": "43d387504a292b36e4e4246abdc9090c1717a561",
-   "sha256": "0pgrjqhw1xjl5xy329621idg517bfaafvqb3f5wxci6fhm4x46gc"
+   "commit": "aefa44ab77808626c4951be2df49a2eab7820805",
+   "sha256": "07ric1lghxdccq30jr3nfzkqa0mpx61kp4mjyi0zsxqcwfyz7zx3"
   },
   "stable": {
    "version": [
@@ -49298,8 +49557,8 @@
    "deps": [
     "helm"
    ],
-   "commit": "2eb2ad4f3f456fadfb6a0ec044acfef2f2e7af5c",
-   "sha256": "0z0ssmi8l6x2fca7xfnpkyvfmyc4zgbf925ms3bvgjzwm5q23zmk"
+   "commit": "6a1d1fefad4b7f3723220da2edaef0b7d6f09a0e",
+   "sha256": "0wzq9pj1gbyv7cyar0r4hgmskwmksq7xfpjldibw30vzrpiqapas"
   },
   "stable": {
    "version": [
@@ -49563,8 +49822,8 @@
     "flx",
     "helm"
    ],
-   "commit": "6cbdb15094354262a2f5f793b66694e3f2c86e0b",
-   "sha256": "1gdjczi601586f7qzdxs65vhi9im6zymmqqp02ayz0nbmkijvqxj"
+   "commit": "e0cf739c0765c3f0186b9d5f691c2c7750a484c2",
+   "sha256": "1kkcnczk295aib8r37qfl0bcvrvki12wi0r5aqjc1g8vklaf9vbp"
   },
   "stable": {
    "version": [
@@ -49910,8 +50169,8 @@
    "deps": [
     "helm"
    ],
-   "commit": "a15fe1dd272d252ad933d8129db1dce02fd41adb",
-   "sha256": "1kc1jzk10nfd2v20g8dwnb6a944afrwdwnkzl06w4ba8k4yim7gi"
+   "commit": "06255ec6347efb8f1884b4a844f40f94239137bb",
+   "sha256": "1yp1l6na6mf91wym28pnmc06zwbhg2i3p9i1z7kx9wf3mc3982gn"
   },
   "stable": {
    "version": [
@@ -50833,8 +51092,8 @@
   "repo": "alphapapa/org-ql",
   "unstable": {
    "version": [
-    20210922,
-    615
+    20220318,
+    1529
    ],
    "deps": [
     "dash",
@@ -50842,13 +51101,14 @@
     "org-ql",
     "s"
    ],
-   "commit": "31aeb0a2505acf8044c07824888ddec7f3e529c1",
-   "sha256": "1jfm4ahh58x3a3njigrbfzd86fnbyybbcgca2mgmxddcy6bszfp1"
+   "commit": "46f523d94a376b168176c75bbd0e3e0d00e61170",
+   "sha256": "0vrk7lx4n4imvsnqv50w6fmqnndr48x89gcmm375fw6zgy2m90bl"
   },
   "stable": {
    "version": [
     0,
-    6
+    6,
+    1
    ],
    "deps": [
     "dash",
@@ -50856,8 +51116,8 @@
     "org-ql",
     "s"
    ],
-   "commit": "31aeb0a2505acf8044c07824888ddec7f3e529c1",
-   "sha256": "1jfm4ahh58x3a3njigrbfzd86fnbyybbcgca2mgmxddcy6bszfp1"
+   "commit": "f666fe150f1bf3c3ce43d0e15f90b20d43c2e772",
+   "sha256": "1mpq3v8lxqllnb4afqh7p9av0p9bha8ld7741zaw4hxb1252xgm2"
   }
  },
  {
@@ -51735,8 +51995,8 @@
     "s",
     "searcher"
    ],
-   "commit": "40f0db0a94ad45fe1bdb8928a884784a5adb2bd8",
-   "sha256": "0kprf6c06bghs4iw4y5w8ar8l2zg2511qdc46h6dpsglrp6d79pa"
+   "commit": "fedb0c735270764a0fd38cebcd2b3c32612fd455",
+   "sha256": "0jv8qbffr5wckblkdy2ka0rryczr72m8kgmg5y2is1jajnxsfwam"
   },
   "stable": {
    "version": [
@@ -52216,8 +52476,8 @@
    "deps": [
     "helm-core"
    ],
-   "commit": "244121903650c2d25a233d12b378060cf8b010e7",
-   "sha256": "0ii70wn3vadx8a36q2frmsvrmlpz1w58qgn2w3knjivj195knliw"
+   "commit": "c1d5f9a2ccdb133aaf6122632166ba4b6fbc188b",
+   "sha256": "05vd7gxa21lg49hhs0pg0skpidav9qmhcijkjakzi4v8p29qjg72"
   },
   "stable": {
    "version": [
@@ -53581,11 +53841,11 @@
   "repo": "ideasman42/emacs-hl-prog-extra",
   "unstable": {
    "version": [
-    20220211,
-    548
+    20220324,
+    16
    ],
-   "commit": "aaa9cd5085c13cbbfa41648ca4134a1699e64d5e",
-   "sha256": "1pbhyskam5jklglrqmzqdfzs5vgh8qykp3ihr9q4rsmh2wypxy4g"
+   "commit": "3312497ddfc7b7bc0e773ae98fc02477a4b0c7a0",
+   "sha256": "1n436z6dg7c1vw6sl5bswny059d2629yx9cvlkf076xg8dmlhwdv"
   }
  },
  {
@@ -53618,20 +53878,20 @@
   "repo": "tarsius/hl-todo",
   "unstable": {
    "version": [
-    20210909,
-    1114
+    20220323,
+    1714
    ],
-   "commit": "42f744ffb513cf2b95517144c64dbf3fc69f711a",
-   "sha256": "1f84d4wms8q2kcj5mb6ih6b5ni35fwqvckp2j3mcdznms759j7li"
+   "commit": "c0f0555a6b9f3818f29e6394db0b45d6d5675edf",
+   "sha256": "15sndz0dd8aasg23yp298rlrw17pn73irzn048fmvri8wl8951hv"
   },
   "stable": {
    "version": [
     3,
-    3,
-    0
+    4,
+    1
    ],
-   "commit": "57378bd4511887a815725a7850e1ff2c6e9fda16",
-   "sha256": "0bdwdp8d0g7n0kv6l4h7alya3z6fsfi618dzw5x8f2az3r87yg8y"
+   "commit": "c0f0555a6b9f3818f29e6394db0b45d6d5675edf",
+   "sha256": "15sndz0dd8aasg23yp298rlrw17pn73irzn048fmvri8wl8951hv"
   }
  },
  {
@@ -54223,8 +54483,8 @@
     20200929,
     559
    ],
-   "commit": "4dc29dcae47afa740f001f04ad7f7b77169ea8a6",
-   "sha256": "1sfbd0a6lgipcd1i8a843433pwf8rfspim13qx0lwghwzva0f7bl"
+   "commit": "a221c1af3d0a2bdc849adabd4044bb3f63895b54",
+   "sha256": "1warqfy5gq56mxypkpzd29k280yka2zzi131rrm1j2rr49ipj6dq"
   },
   "stable": {
    "version": [
@@ -54405,11 +54665,11 @@
   "repo": "humanoid-colors/emacs-humanoid-themes",
   "unstable": {
    "version": [
-    20220112,
-    1138
+    20220305,
+    930
    ],
-   "commit": "3871746b51772c95b4419e978af069570c914f95",
-   "sha256": "1gbhz35chwzy75l514niw3sih3hwj68sn3zavvw8yzsn5yfzqd7j"
+   "commit": "5828705bcc3eab9af9dd36fd7dc96d48c3020d85",
+   "sha256": "1aij86pi2p1dy0dakbnm0a8mwy5vffayfk8y05jx3v1cishp324s"
   },
   "stable": {
    "version": [
@@ -54816,11 +55076,11 @@
   "repo": "muffinmad/emacs-ibuffer-project",
   "unstable": {
    "version": [
-    20210205,
-    1940
+    20220321,
+    1312
    ],
-   "commit": "2483d2dbd715c4bd892d1fbc968a17a01888cb2d",
-   "sha256": "165g2lsg8apdpn7i36h0x5j80clpjpf3d1d1l8g8ahf5280flcfw"
+   "commit": "bfc0ec1f27b02b8ab816dcfd9073e5d78dae1aed",
+   "sha256": "0x25xzlvqgpf2s00595vbgyk322h74n46x2dbcp2v3158b0cj86c"
   },
   "stable": {
    "version": [
@@ -56079,8 +56339,8 @@
    "deps": [
     "impatient-mode"
    ],
-   "commit": "38ece99b3d566c48d9ba011a234869bc1b6f9a1e",
-   "sha256": "1za9rsf77f1qv2pqhw5myih8lgpdsa8n61pzj5z4lk5isj10cykw"
+   "commit": "8376bcfc2bbb3762e26dfc1bb8866c452f7935fe",
+   "sha256": "01g5r3sh1qma3vpyzzhixpw62y0kvphznpnfd80w4a5a3gbwp5m2"
   },
   "stable": {
    "version": [
@@ -56220,8 +56480,8 @@
     20220227,
     653
    ],
-   "commit": "73682aac9aff60937a5f0187b1896c8f78f1b9cc",
-   "sha256": "195mpasf89jwr35q3gbcq286hx2siv9asyki4bz5wx175yp3yjjk"
+   "commit": "c6373bdfaf43255141983aea245571364f04d3cb",
+   "sha256": "0iphkl27ihnv2dmjaj1b3292xsx8g8m11r7hjikh421n9f1p5xy0"
   },
   "stable": {
    "version": [
@@ -56426,14 +56686,14 @@
   "repo": "clojure-emacs/inf-clojure",
   "unstable": {
    "version": [
-    20220208,
-    1627
+    20220315,
+    1102
    ],
    "deps": [
     "clojure-mode"
    ],
-   "commit": "e47684de78da1ee470d42ae2a411909b2cf61d50",
-   "sha256": "0ngkhp4i3qgl6lgld5qbnrk8grd8r18mabrsana8z2pmy58hxz73"
+   "commit": "f511dcad0e0684c9609c7526930e88d11da989ab",
+   "sha256": "1xxjqf3j2k92sj4zwhkjywc6yr5x183r8n33lba2v3w5hcfgahd0"
   },
   "stable": {
    "version": [
@@ -56525,11 +56785,11 @@
   "repo": "nonsequitur/inf-ruby",
   "unstable": {
    "version": [
-    20220203,
-    153
+    20220228,
+    208
    ],
-   "commit": "f892e6e74ffdf9f80019cf85f4e128dc66359266",
-   "sha256": "09kzmw9i4d77qjz1i37v40g683d9q7rw79bnxkj56acpd7h9dvk0"
+   "commit": "dbf4386bac12f1733257db6105e3f1fca05ffb79",
+   "sha256": "0sb72prfcglkjvpsgadyql5s9r28dbiihby3szl500lv7cfpc6ds"
   },
   "stable": {
    "version": [
@@ -56877,11 +57137,11 @@
   "repo": "ideasman42/emacs-inkpot-theme",
   "unstable": {
    "version": [
-    20220211,
-    548
+    20220326,
+    733
    ],
-   "commit": "eb3f6deac945e536cdc8ddc09f6021fdbaa645eb",
-   "sha256": "1s0srxvcwv1myba22z0phkrs7da7cn22mgp6m6d01v5zgj03924m"
+   "commit": "a8d0d2ecd4855ba91e21d0481b02dff3755f8afd",
+   "sha256": "0qz91mzfp8ywk9ngaw60q0nczxykanl5sbgf42v9xfgm6fys8yal"
   }
  },
  {
@@ -57456,8 +57716,8 @@
    "deps": [
     "f"
    ],
-   "commit": "68271c7784d9ef7eee61d1f55dc050225d3448e9",
-   "sha256": "1dzjldfljbmxfwvh3krfkjww6rxff55bwgah9ixmcrlw73gsz1h1"
+   "commit": "1ccf7219c2f78485aa23174e46aa8cd77a98a6a0",
+   "sha256": "0bws8fiqysqjcyw1y1ng1dic7nv7g1syml9hldb9gf7b0xan35yz"
   },
   "stable": {
    "version": [
@@ -57967,8 +58227,8 @@
     "ivy",
     "s"
    ],
-   "commit": "044aef3c5f9302cdf326f88b785a355fdeea6336",
-   "sha256": "1x9gw5xh390naa258xany93w1p37zbwmg87ikjvhxp4zidypwrr2"
+   "commit": "eb358d8460b944bf764cb6c01f205e6af94c4861",
+   "sha256": "07lazz8ca9sshrgswl47zz8gvc0niwyi397m3x3vrn5738qd0bf9"
   },
   "stable": {
    "version": [
@@ -58132,16 +58392,16 @@
   "repo": "ROCKTAKEY/ivy-migemo",
   "unstable": {
    "version": [
-    20210425,
-    613
+    20220309,
+    605
    ],
    "deps": [
     "ivy",
     "migemo",
     "nadvice"
    ],
-   "commit": "b91f341d1b70175baf989f0c6eee6573bf781a27",
-   "sha256": "0svvh14zhym9ssc0dc7wyr1pw0rhiirn2s7a0xk43wl2r0c36cgj"
+   "commit": "f31a2b314b81e328ce0222d8796b808230ddaa0e",
+   "sha256": "07l6x4aysxzrwlva7df5mdmb8kir1w9jpk7jqc5823zd00dmd6hf"
   },
   "stable": {
    "version": [
@@ -58296,8 +58556,8 @@
     "ivy",
     "prescient"
    ],
-   "commit": "3dbcef387502d309d130a518a18d48cd2f0e15b7",
-   "sha256": "024l7s0b6apbzanw3cnhjypxnxfinfb5b3nhaabrc138m5pis8j5"
+   "commit": "c5295a9eecbd2935bb57684a4422638e03bf738c",
+   "sha256": "1wfmynbqaqvrkjdncx0wmqxz6v8zlfmqlh5l3h6876jin97i5fbv"
   },
   "stable": {
    "version": [
@@ -58421,8 +58681,8 @@
     "s",
     "searcher"
    ],
-   "commit": "55f5cf2ecc268686e7e124251f3c46c5065368d8",
-   "sha256": "1fahbnkg12dknkyrcszqm6c848rbalg0sgrxfanq7p9n7wpvskd8"
+   "commit": "63d55b3c333881d3c9d1e3f1ee50a72e79fd9e0e",
+   "sha256": "1mydy1akn25xb9wy8y08vmk997h2nvqdm48fnxldxbkli2d0zv1j"
   },
   "stable": {
    "version": [
@@ -58570,8 +58830,8 @@
     "ivy",
     "request"
    ],
-   "commit": "849b6db7ef02b080a86c1b887488e2935c31059a",
-   "sha256": "0f90dq8qhmsnm2hvnvzyb20nq0vmgnqzqa693scq69dv5rdjgwyj"
+   "commit": "273788e0d22a06cca1050eb1205d3fbc2245d001",
+   "sha256": "0w0aifinr8v0sdbj0gasqacwh5gmsb0rcg6jwi8ppga944wlkb2y"
   },
   "stable": {
    "version": [
@@ -59428,11 +59688,11 @@
   "repo": "Michael-Allan/Java_Mode_Tamed",
   "unstable": {
    "version": [
-    20211027,
-    1852
+    20220312,
+    1945
    ],
-   "commit": "647cae28087529d18367f895d7ef689c7f64c6bd",
-   "sha256": "086h53mmdjx30093zazwylx3fg7jvbcjy63q4ph63ybizsbiy5lg"
+   "commit": "44280538a2b780536c56ee2a51b7a5b03d376a2e",
+   "sha256": "1x5k9d1iq33ds8cszcyl2bhbr8hkldq6hph1b77zayqyg00pnly4"
   }
  },
  {
@@ -59798,14 +60058,14 @@
   "repo": "mooz/js2-mode",
   "unstable": {
    "version": [
-    20211229,
-    135
+    20220316,
+    1506
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "997cac4c80a03062145b541b006c51cc91ee0c24",
-   "sha256": "1wcz3xji7viqxa5is81jd7in7x1fya6rzybm8qj9rwgdc8camvyb"
+   "commit": "b9ed9e406d59661bb099cb2307dfbfcc1d47beae",
+   "sha256": "15c5smxfh2dgk6da012fsvjz9c075cxfp2q8fglbalazplzwv4zc"
   },
   "stable": {
    "version": [
@@ -60362,8 +60622,8 @@
   "repo": "gcv/julia-snail",
   "unstable": {
    "version": [
-    20220218,
-    512
+    20220325,
+    2038
    ],
    "deps": [
     "dash",
@@ -60372,8 +60632,8 @@
     "spinner",
     "vterm"
    ],
-   "commit": "fc67e4d603907160766cf22e8ef16029238e78d3",
-   "sha256": "04nh37izz04lxkvkxhsig8khbrrgdl4p6pkjsv5bxymnp84zwlw7"
+   "commit": "80a2def11e444d8ba2b640d0ea76720cfefccb65",
+   "sha256": "1k5wqlxgijz73qscbdnkaia3ffw55x08xyqmfppvqv1w4gdvr0ya"
   },
   "stable": {
    "version": [
@@ -60613,8 +60873,8 @@
   "repo": "psibi/justl.el",
   "unstable": {
    "version": [
-    20220226,
-    1619
+    20220312,
+    1104
    ],
    "deps": [
     "f",
@@ -60622,13 +60882,13 @@
     "transient",
     "xterm-color"
    ],
-   "commit": "73cb3a8f519dd555f73b981ac9c803b7489ce25b",
-   "sha256": "0d68zhzclvnhyxvb0l6a841mvbfawvzryrpck36x06wy3899jn5l"
+   "commit": "9f77366aaf2227bb0cbd3cdc0f78088032f2e873",
+   "sha256": "17l4lh9511dw4ri7csvp8258q59brhgrkir60kqmzxglrpmgjj6s"
   },
   "stable": {
    "version": [
     0,
-    6
+    7
    ],
    "deps": [
     "f",
@@ -60636,8 +60896,8 @@
     "transient",
     "xterm-color"
    ],
-   "commit": "73cb3a8f519dd555f73b981ac9c803b7489ce25b",
-   "sha256": "0d68zhzclvnhyxvb0l6a841mvbfawvzryrpck36x06wy3899jn5l"
+   "commit": "9f77366aaf2227bb0cbd3cdc0f78088032f2e873",
+   "sha256": "17l4lh9511dw4ri7csvp8258q59brhgrkir60kqmzxglrpmgjj6s"
   }
  },
  {
@@ -60969,15 +61229,15 @@
   "repo": "ogdenwebb/emacs-kaolin-themes",
   "unstable": {
    "version": [
-    20220131,
-    1652
+    20220317,
+    1238
    ],
    "deps": [
     "autothemer",
     "cl-lib"
    ],
-   "commit": "ff7f31b100421328b6b8c57a5b640a26b9d914c2",
-   "sha256": "066iqbyvapc7i41xlci2jlnvdkdhkv7c8rj4ambz8rbj6i2sjb5s"
+   "commit": "78df90fa411c0d24d884abd47bf63a167231a84c",
+   "sha256": "05z7w4ig17w5vxz3g4waghkq8ay9cdjc22aihn34h3q7h1vlv5dd"
   },
   "stable": {
    "version": [
@@ -61013,10 +61273,10 @@
  },
  {
   "ename": "kapacitor",
-  "commit": "db1f8cfcda2fa2b9be74a6cd9f95608e8b3f50bb",
-  "sha256": "108b3y71p7s3lcwbqxp7hy2l304yj4hxm2nq8iv7ljr8av1q7kn6",
+  "commit": "afb7ebaf3b1b1b3ce0162de9b8d586d699fdeac9",
+  "sha256": "0yccmgzmhwjnnzlqhyq326adnxkf3s27gg67g1w1hba1ippg7l60",
   "fetcher": "github",
-  "repo": "Manoj321/kapacitor-el",
+  "repo": "manojm321/kapacitor-el",
   "unstable": {
    "version": [
     20190414,
@@ -61119,11 +61379,11 @@
   "repo": "conao3/keg.el",
   "unstable": {
    "version": [
-    20211105,
-    316
+    20220309,
+    647
    ],
-   "commit": "f0a719892aed5b1b4b644f1339d1ace99c656100",
-   "sha256": "0vk4fdkai0ssq31ycckkz4iwp35ip5d8lnyisv4m3b98jv3pb6k0"
+   "commit": "944e36144d92a798e1fd0f3d83fc6347d57a976e",
+   "sha256": "1flri9jmhhhak2zx46sw86jm05mw4banyk1ag2354v1irsc81piv"
   }
  },
  {
@@ -61134,11 +61394,11 @@
   "repo": "conao3/keg.el",
   "unstable": {
    "version": [
-    20200601,
-    333
+    20220307,
+    829
    ],
-   "commit": "f0a719892aed5b1b4b644f1339d1ace99c656100",
-   "sha256": "0vk4fdkai0ssq31ycckkz4iwp35ip5d8lnyisv4m3b98jv3pb6k0"
+   "commit": "944e36144d92a798e1fd0f3d83fc6347d57a976e",
+   "sha256": "1flri9jmhhhak2zx46sw86jm05mw4banyk1ag2354v1irsc81piv"
   }
  },
  {
@@ -61543,8 +61803,8 @@
     20220222,
     639
    ],
-   "commit": "f0f8b04f9f8e7863bdd3459d6ee6fd88ecd55dcf",
-   "sha256": "0vkaz5ifqasn2q51hnx024pdbr48xvx07g1rclfpw26990ah6yqa"
+   "commit": "33e5e50b795a48315d869d9545c650b7641eed0a",
+   "sha256": "12zkfsbsbf3s5ifyfrbv5xyyrif59rkk89in83ghys03qp5kmybs"
   },
   "stable": {
    "version": [
@@ -61799,19 +62059,17 @@
     20210318,
     2106
    ],
-   "commit": "71aca81024898c9c6ef88962bddc5462a93ffa0c",
-   "sha256": "05w51blhz9527idrky4c9j24vqlk7dnygws4ynsp78icn3lmixx6"
+   "commit": "06c15c1f7567c6dbc97248c85467bdfd2fcf3cf8",
+   "sha256": "0w36wggnmf7dq0kqkkm66zq9adq2r1f8zrdjw6qnbg7b9bdxwxik"
   },
   "stable": {
    "version": [
     2,
     1,
-    0,
-    -1,
-    1
+    0
    ],
-   "commit": "87b60702e0bf8eee929ba9ac4db725d12274d7ba",
-   "sha256": "0ppy54rvknghjcxrbja72n45yn5ljcqbvddb3rvn8pfpzih6j1pg"
+   "commit": "023bd79b90f9831b45bb8eb449346648aa5fe5f8",
+   "sha256": "0q0hn1q5l1pg3ma2x922m93vpfax7x9cmm8psy3qw7b5pf4cillk"
   }
  },
  {
@@ -61822,14 +62080,14 @@
   "url": "https://repo.or.cz/kiwix.el.git",
   "unstable": {
    "version": [
-    20220210,
-    1403
+    20220316,
+    847
    ],
    "deps": [
     "request"
    ],
-   "commit": "d21cbe30d697fa6720d016c52a807c8502719d4d",
-   "sha256": "0yapgm2fp9igc39did3h1kf3m236683h08n6615kldq8wxd5w774"
+   "commit": "444f686a7f75db788d54f544b923a3532732eb8b",
+   "sha256": "1pdm69ghdfzv738c5y1b61d12cfafkvcmmjf0v4m3qai2xxqk4sn"
   },
   "stable": {
    "version": [
@@ -61875,18 +62133,18 @@
   }
  },
  {
-  "ename": "kmacro-mc",
-  "commit": "08973ee8f00035da7092e9eb8b850323ae83a916",
-  "sha256": "0ysgfrv0y4i4v6nppcs3gflx5qyx3jnkgygv0y24f833qnrnjgkd",
+  "ename": "kmacro-x",
+  "commit": "207d9fb6f29a426ce1aeac517ae31d69aa1f4d8a",
+  "sha256": "06q9lv3a4jsn6a9xfp0aw980pl938h817bagqq5xkh0q169f34qm",
   "fetcher": "github",
-  "repo": "vifon/kmacro-mc.el",
+  "repo": "vifon/kmacro-x.el",
   "unstable": {
    "version": [
-    20220123,
-    2254
+    20220323,
+    2215
    ],
-   "commit": "c7fe2f8200ae993787246ad6c8a5021b4946b118",
-   "sha256": "0q3gwf42fsii6c1ql8imjryv0a47gam72yw5gbqsrhwiqr81lyll"
+   "commit": "429abd82c97031948b7681197551bb77708bd174",
+   "sha256": "07yxqcq84hlj3h3b66cwlmmk4cfnwb7pfr5lqvgaxywvziv2hqng"
   }
  },
  {
@@ -62116,8 +62374,8 @@
   "repo": "abrochard/kubel",
   "unstable": {
    "version": [
-    20220104,
-    2320
+    20220318,
+    2124
    ],
    "deps": [
     "dash",
@@ -62125,8 +62383,8 @@
     "transient",
     "yaml-mode"
    ],
-   "commit": "68d2925c7942039e3fb3eb6c113adec5369c6c72",
-   "sha256": "173ympabfa14rc6y4f3rjxapj7py0dsnzp8zg7q2gkyxv1iwhh55"
+   "commit": "6ce4a13b1de666a90f5acfdfd8c78f6ea2013c60",
+   "sha256": "16xam2yhj77mj388hrzbh2ah8y1k5sbfacavjmriaxrnn5c8v16d"
   },
   "stable": {
    "version": [
@@ -62151,15 +62409,15 @@
   "repo": "abrochard/kubel",
   "unstable": {
    "version": [
-    20210922,
-    2325
+    20220318,
+    2124
    ],
    "deps": [
     "evil",
     "kubel"
    ],
-   "commit": "68d2925c7942039e3fb3eb6c113adec5369c6c72",
-   "sha256": "173ympabfa14rc6y4f3rjxapj7py0dsnzp8zg7q2gkyxv1iwhh55"
+   "commit": "6ce4a13b1de666a90f5acfdfd8c78f6ea2013c60",
+   "sha256": "16xam2yhj77mj388hrzbh2ah8y1k5sbfacavjmriaxrnn5c8v16d"
   },
   "stable": {
    "version": [
@@ -62313,6 +62571,30 @@
   }
  },
  {
+  "ename": "kuronami-theme",
+  "commit": "f1fe04f11b3ab6ee00a36d2d171d7042aebe3115",
+  "sha256": "00f5lxhpqy1p7nlaw7nka90hy95dqrg7flfv5i9f8nrx9r3r7rpp",
+  "fetcher": "github",
+  "repo": "super3ggo/kuronami",
+  "unstable": {
+   "version": [
+    20220309,
+    604
+   ],
+   "commit": "910e8fa56a0cfe89dae888522f9fec4045d017fb",
+   "sha256": "0pghi50ffzlp7igvq81dmrbrwyj9ivl5kkxm47hff7qgb9rvx8n1"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    0
+   ],
+   "commit": "910e8fa56a0cfe89dae888522f9fec4045d017fb",
+   "sha256": "0pghi50ffzlp7igvq81dmrbrwyj9ivl5kkxm47hff7qgb9rvx8n1"
+  }
+ },
+ {
   "ename": "kv",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "0c10r7mhg517p62lc87ccqypsjrm28xh3bgv4f01fnx569jqgzgp",
@@ -62380,29 +62662,29 @@
   "repo": "tecosaur/LaTeX-auto-activating-snippets",
   "unstable": {
    "version": [
-    20220108,
-    1536
+    20220301,
+    1629
    ],
    "deps": [
     "aas",
     "auctex",
     "yasnippet"
    ],
-   "commit": "14c6cc2ff8c0c6b20b83fb075b94a8661a985249",
-   "sha256": "1vz0q7z3n6iv2m3xiw5m5f17ifig47c08zz2sm3svqwjq328pnwh"
+   "commit": "b372f9a44bea03cce09b20cd2409e3ae3fa2d651",
+   "sha256": "1f2cfvc4iz71x43z8f7v24cnfdvn249685qqz9lz16j2sga9f3y1"
   },
   "stable": {
    "version": [
     1,
-    0
+    1
    ],
    "deps": [
     "aas",
     "auctex",
     "yasnippet"
    ],
-   "commit": "e9bc939237bed4ce50d3d403120f7206c835ea4a",
-   "sha256": "1z2r52x9fsjm1y2m8n0fm9ymd0dx798iw5b3x79fkhnrrw4wfq0s"
+   "commit": "b372f9a44bea03cce09b20cd2409e3ae3fa2d651",
+   "sha256": "1f2cfvc4iz71x43z8f7v24cnfdvn249685qqz9lz16j2sga9f3y1"
   }
  },
  {
@@ -62452,11 +62734,11 @@
   "repo": "dingansichKum0/lacquer",
   "unstable": {
    "version": [
-    20211005,
-    1517
+    20220321,
+    720
    ],
-   "commit": "3ef4c22982119674861ed61e3302ac3e0f05be2b",
-   "sha256": "0m05qyy0w5k9ycb2ywv222cy99brw2d1gmcan6b4311r04fv9k70"
+   "commit": "0d7d09f7fe22fb0241e91228ce44568ed3e3e798",
+   "sha256": "1xfh4yi5r96vfy0zmr09lkvgzf7v82cs03y3jvflpz75acmbiryh"
   },
   "stable": {
    "version": [
@@ -62513,13 +62795,13 @@
     "highlight",
     "math-symbol-lists"
    ],
-   "commit": "df2081b207ddef0fe1b83d8a2405858d8e361bcf",
-   "sha256": "0v2xj6x6g11g77lxzj4j777ajkwf448h0a71xzy6zggq16hvw9ma"
+   "commit": "c73645f35868bf436f9b50dc81a75b58c7e10806",
+   "sha256": "0bpyzm71b1fh48yp73m4vh99c7q4sd69lynkww6c8yrjdqlwbb27"
   },
   "stable": {
    "version": [
     2,
-    1,
+    2,
     0
    ],
    "deps": [
@@ -62527,8 +62809,8 @@
     "highlight",
     "math-symbol-lists"
    ],
-   "commit": "215a0e2434811f026c357f92ca15652e31a945a5",
-   "sha256": "026vp7h5i6yqvafap9n1g3sh0a3zz8pgbxy4nkhnfg7spdr29svm"
+   "commit": "0476fbec66e99750abe9d60c3aa9cb9a52189bea",
+   "sha256": "0bpyzm71b1fh48yp73m4vh99c7q4sd69lynkww6c8yrjdqlwbb27"
   }
  },
  {
@@ -62653,26 +62935,19 @@
   "repo": "lassik/emacs-language-id",
   "unstable": {
    "version": [
-    20210916,
-    831
-   ],
-   "deps": [
-    "cl-lib"
+    20220321,
+    638
    ],
-   "commit": "906fac7d91994d02120cfb5f547c1d06cea1ad69",
-   "sha256": "1rgf90z6rl5g348s49w39ng7avq2s9qwi7mmpfxi3hjaslazn1jl"
+   "commit": "46a44793a2ac73c7b70f8b4c11818423aa1582e3",
+   "sha256": "0i3qww2lc7kcvw27iwwvi871k81s8jc2rbfbpcnrsy3cnrxx7smd"
   },
   "stable": {
    "version": [
     0,
-    16,
-    1
-   ],
-   "deps": [
-    "cl-lib"
+    18
    ],
-   "commit": "906fac7d91994d02120cfb5f547c1d06cea1ad69",
-   "sha256": "1rgf90z6rl5g348s49w39ng7avq2s9qwi7mmpfxi3hjaslazn1jl"
+   "commit": "c945568a2e40e8d7e9738a534ce54e9ff59779c6",
+   "sha256": "0ny0sicma48snzyhh6xv1zv4vc87mmf4jyacpky3i6mk6gdwxfl8"
   }
  },
  {
@@ -63295,11 +63570,11 @@
   "repo": "ledger/ledger-mode",
   "unstable": {
    "version": [
-    20211214,
-    1449
+    20220307,
+    854
    ],
-   "commit": "f47df6a18060002b47352b9c4b502556204df61b",
-   "sha256": "0g7qxl8b6cazp4vlqr8r6pksmm9vlrl92142k18vmfbabnjgfdm9"
+   "commit": "b55384d9cd14aa0ba3eb100660f929cfa6674558",
+   "sha256": "0wn9v7qarciq16hhcl8dy8yp1hcdhmircqkla59g5khv3qybjphs"
   },
   "stable": {
    "version": [
@@ -63791,19 +64066,19 @@
   "repo": "buzztaiki/lice-el",
   "unstable": {
    "version": [
-    20220215,
-    303
+    20220312,
+    2215
    ],
-   "commit": "b15230dbfc66cc92bbde8f9fd369522d7666c0c7",
-   "sha256": "0xpjcp4b76lc0d5jpry055d572rdp93vkbm8ck5yh97wy1y2837w"
+   "commit": "0b69ba54057146f1473e85c0760029e584e3eb13",
+   "sha256": "06plnrxj6kgnl9mjcbc48mgagpa60yyyyribwicmcgg9pgrs0wad"
   },
   "stable": {
    "version": [
     0,
-    2
+    3
    ],
-   "commit": "69f2d87984f3f3d469db35e241fbbe979384cd03",
-   "sha256": "0hi8s20vw4a5i5n5jlm5dzgsl1qpfyqbpskqszjls1xrrf3dd4zl"
+   "commit": "0b69ba54057146f1473e85c0760029e584e3eb13",
+   "sha256": "06plnrxj6kgnl9mjcbc48mgagpa60yyyyribwicmcgg9pgrs0wad"
   }
  },
  {
@@ -63838,8 +64113,8 @@
    "deps": [
     "request"
    ],
-   "commit": "19a77b73e655d4ed5de50674ad0f8c44c8f6f7b1",
-   "sha256": "0a7fzbapygdq6jrwbiy0cmqyf19hdzrzv7xd1f1pwa8vknhzjn7m"
+   "commit": "52fcd8efc293694af1b23ea401a2991f8554dbbc",
+   "sha256": "1cp0301l3byhzd4gyil9p7iljfgkjn2c93ilc9b88b1kj7cvbp2z"
   },
   "stable": {
    "version": [
@@ -63880,17 +64155,17 @@
     20220209,
     755
    ],
-   "commit": "35d666b3e14c69eeb968f16ca8635a57b908d8ff",
-   "sha256": "0bywj3y3cz2wd0xzdl3plghpzh2an8wkl07brrkkhpfy9mcrfv0p"
+   "commit": "618d98641a4fc1c55d07de72c12754b85da27910",
+   "sha256": "1kvkbj4rpvilxl6w119xh7x9w8xdw4cgnw7gd3vl50krzj9s1ajz"
   },
   "stable": {
    "version": [
     1,
-    0,
-    2
+    2,
+    3
    ],
-   "commit": "7032d39df69b5d727215c1f31e5bbc29970a30a1",
-   "sha256": "0bywj3y3cz2wd0xzdl3plghpzh2an8wkl07brrkkhpfy9mcrfv0p"
+   "commit": "8fcf8424cbfb06d3b5a89b2ce60826a5e4bf76f4",
+   "sha256": "0h81778qq5j18gq8vyynb4x41zczvvprvvnis0xjl1mhpi5z2l72"
   }
  },
  {
@@ -63901,16 +64176,17 @@
   "repo": "emacs-vs/line-reminder",
   "unstable": {
    "version": [
-    20220206,
-    1919
+    20220309,
+    848
    ],
    "deps": [
     "fringe-helper",
     "ht",
-    "indicators"
+    "indicators",
+    "ov"
    ],
-   "commit": "c2e3b1411665f882337adbaf53af831ee10e3034",
-   "sha256": "1x81saxhzlaf32hhjaah1z6s7vn7jcdxxpckj4na3zx3ncg1r5jp"
+   "commit": "d60c0d498f12d550200d505cd8b43f953eff2ae4",
+   "sha256": "1kx2k2fsygf9qq9wq9cs6h7c4lr58ip781l9yrffj2vhhhmrg5kj"
   },
   "stable": {
    "version": [
@@ -64043,14 +64319,14 @@
   "repo": "noctuid/link-hint.el",
   "unstable": {
    "version": [
-    20211224,
-    1358
+    20220320,
+    1727
    ],
    "deps": [
     "avy"
    ],
-   "commit": "676dac6621e321b33a8d396fa27dd0ea619d21e3",
-   "sha256": "1g9w2ymihs649cck3vm0pb4591jzsyf2b2jfpyrwcxipqw30rj63"
+   "commit": "44e98956e04dfa8e440951c6cc6cefb9e64f1658",
+   "sha256": "0fhs1ha2j4k1pkfhyvc3x2mp9r3xl7slj6y4hqfzgllmhzmr93g0"
   }
  },
  {
@@ -64155,8 +64431,8 @@
     20211004,
     1429
    ],
-   "commit": "87241398f185a134940680c1f0d0f24951dabed3",
-   "sha256": "0i26bzba5ysvscghgc8lih8y3vvyl6jbmlny9m7790fgy9zkps1g"
+   "commit": "08e6da70e485307b7c5777caeb60737de183d228",
+   "sha256": "0d5vkm5cpnl38zfbjfhbl6wffmrlxx4bxkh4w4f04pr97i899n9z"
   },
   "stable": {
    "version": [
@@ -64619,11 +64895,11 @@
   "repo": "jingtaozf/literate-elisp",
   "unstable": {
    "version": [
-    20220103,
-    717
+    20220322,
+    133
    ],
-   "commit": "b17645f2dfdf8d6b945123cafc253b1fc71f336b",
-   "sha256": "1gqk2klypf4r6yx5lvlpsiwn9fb5w3lqm99rq1bkx0iq1qm5aa85"
+   "commit": "dc4f9d64a8483aa6e394178087c589cdefc571e2",
+   "sha256": "08hhp74s56h9k3hlfqky68aiv4qy79gnci46r5nh4mbkrybsijnq"
   },
   "stable": {
    "version": [
@@ -64660,14 +64936,14 @@
   "repo": "Atreyagaurav/litex-mode",
   "unstable": {
    "version": [
-    20220225,
-    2010
+    20220308,
+    1707
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "533a0c0777e25134d2782917648b6e8d8274a3ac",
-   "sha256": "0pspw0w0w8jzi97hhsrgniwjymf7ri59kqkjv9lrxycxddaccc5q"
+   "commit": "59ef93dca6618c42db1b61fe0a44bdc8faf04506",
+   "sha256": "08i5v97azfxkp4aqsg2kijyy2w5swxhkplvp40v1bswyy3kn176v"
   },
   "stable": {
    "version": [
@@ -64749,8 +65025,8 @@
     20220208,
     308
    ],
-   "commit": "0070f01c244bd103b935052356f16b9c5d1d7387",
-   "sha256": "0l0w9p6vk6cjm07cmblrsk7f6vnz9b3i39yg6bzklzzqiwaskj7g"
+   "commit": "d3c813f90083ee1a146b3e2d96c8bc47b9e7ff7b",
+   "sha256": "18kak48a6zs065xx7q47kqs9hx5n0lbr0a2pvlh1wxhncnh8vgpj"
   },
   "stable": {
    "version": [
@@ -65145,8 +65421,8 @@
     "ht",
     "s"
    ],
-   "commit": "ab124ae3b38e77f5fb14c8902928d7b010b00b41",
-   "sha256": "1fsx0lyfj05wqnl0i8dw1slxndcg0b2p1fmcdhxvmsa5k4l11v2y"
+   "commit": "b5ca8bd44a900fb85636fec9b326d0c117d3b8a6",
+   "sha256": "1ay81g4s02jkwwy62s2c3218b5z9z012nyrqihlx44fyglyi27b1"
   },
   "stable": {
    "version": [
@@ -65318,11 +65594,11 @@
   "repo": "petermao/look-mode",
   "unstable": {
    "version": [
-    20220213,
-    126
+    20220313,
+    2103
    ],
-   "commit": "c6e7baedd652a9a2b7e6b9418039e8f4922e0baf",
-   "sha256": "0r6yp86nbbxv6m4mzh7xya2mqxrq77s3qpzf5w5aj9hlnx1p5psl"
+   "commit": "4ab32794b07f77b1d243dc07239c417f20cab7b8",
+   "sha256": "0k7mnwqkd07lwwbb7vn5bfncrp6alfggv9m07bzk7c1v4s9fqwhw"
   }
  },
  {
@@ -65356,11 +65632,11 @@
   "repo": "0x60df/loophole",
   "unstable": {
    "version": [
-    20220227,
-    1436
+    20220311,
+    1130
    ],
-   "commit": "ac0e295080f08797b6a161ff1df550ff78e9c759",
-   "sha256": "11ngiihl3daynk03z9ndl3ivkgxbx0k4pg4qynw1n1j6pxasb0b1"
+   "commit": "bd93fcd42fc2db76bf6bc3fbb4eb7401444bd04d",
+   "sha256": "15q0y594k5k9n96dygscc4a6jyslwri5z8sf1kg1shpkwyj3bjyz"
   },
   "stable": {
    "version": [
@@ -65500,8 +65776,8 @@
   "repo": "emacs-lsp/lsp-dart",
   "unstable": {
    "version": [
-    20220212,
-    27
+    20220313,
+    1835
    ],
    "deps": [
     "dap-mode",
@@ -65511,8 +65787,8 @@
     "lsp-mode",
     "lsp-treemacs"
    ],
-   "commit": "40aa90d8ad0ec6d5f9682e135eefb794b675dc9a",
-   "sha256": "0dbbfsspwfx654y8gkn12whf5942lchcma8ki6jy06h7pbx4wgm8"
+   "commit": "fda433671f38874f0ebe66c43c64fec14af3f492",
+   "sha256": "1zszzw0a58s1clsvhvqxymivrw2x6p96cxx9pygr8is8f9353hpg"
   },
   "stable": {
    "version": [
@@ -65604,8 +65880,8 @@
     "request",
     "s"
    ],
-   "commit": "f54d1a7ec9ee1b7bd4fd71490038064d49caa1b5",
-   "sha256": "0vjwwfl54lm0szsrr40mjzk3r10j0cmiks2gbwhf1aa948lwda82"
+   "commit": "20112b40fd3f6cbd20c659ef43a6da6635e610df",
+   "sha256": "1p3f90f0gsa8mj9pv905f51zb1ymyfbhz20171hv69klz4hlqfsn"
   },
   "stable": {
    "version": [
@@ -65632,14 +65908,14 @@
   "repo": "emacs-lsp/lsp-haskell",
   "unstable": {
    "version": [
-    20220226,
-    1437
+    20220307,
+    2312
    ],
    "deps": [
     "lsp-mode"
    ],
-   "commit": "69ddd5d32d6d7d658ec3f89c8ec6280e912e6be8",
-   "sha256": "080k3ghhrnlnlq8dzqki6jwnxg3dvg2kzcsx8214k7sfp47qfkwn"
+   "commit": "7cf64944ab3a25ea5d6f8d5e0cd33124182df991",
+   "sha256": "037wcvan0185bhzzhi4phw9z245a28s29zvyfik04c27n0bhm2xf"
   }
  },
  {
@@ -65701,8 +65977,8 @@
   "repo": "emacs-lsp/lsp-java",
   "unstable": {
    "version": [
-    20211124,
-    605
+    20220325,
+    547
    ],
    "deps": [
     "dap-mode",
@@ -65714,8 +65990,8 @@
     "request",
     "treemacs"
    ],
-   "commit": "ce03cb6574566e334c3ce5735458cc3ec1989486",
-   "sha256": "0z18b7xn9rgrs8w485bzw93g1nimfp0616d9xlrj0wc4k1i8vyd4"
+   "commit": "0968038b9aea52ef3bf499e597cf3800d913c059",
+   "sha256": "1rpssrv1avbfq47h23qiymzhzddcxgs77diwq3mavqkxkqrkj3vz"
   },
   "stable": {
    "version": [
@@ -65862,8 +66138,8 @@
    "deps": [
     "lsp-mode"
    ],
-   "commit": "daad61dbdbdac83267c6de04a13f8e2ecde3226d",
-   "sha256": "1aky40r4850d4203wj1wxgx3xq0pb8rdvcv3b957nclvn8fmzvzw"
+   "commit": "435128d5cdc8822ccf1bb58f45184cdd9fb8589f",
+   "sha256": "197drh6lwghdcf52hdk7kc315jlpxlaz8cj76b4q28s0g63bh8bc"
   },
   "stable": {
    "version": [
@@ -65888,8 +66164,8 @@
   "repo": "emacs-lsp/lsp-metals",
   "unstable": {
    "version": [
-    20220218,
-    1105
+    20220314,
+    1111
    ],
    "deps": [
     "dap-mode",
@@ -65901,8 +66177,8 @@
     "scala-mode",
     "treemacs"
    ],
-   "commit": "5891149014308e73faf025bf40cd099cc185277b",
-   "sha256": "165040pm6g8sm1afcdp6x6jciqpix12cskn7jhy21vr5ff0awsiz"
+   "commit": "b7fe3ade85d020560947f1a4f4913130c9dd1809",
+   "sha256": "0dq18p5bqqyf36mqck0iprydjm77y29k8n2d25xz26i64s3pkykq"
   },
   "stable": {
    "version": [
@@ -65932,8 +66208,8 @@
   "repo": "emacs-lsp/lsp-mode",
   "unstable": {
    "version": [
-    20220227,
-    2032
+    20220325,
+    1415
    ],
    "deps": [
     "dash",
@@ -65943,8 +66219,8 @@
     "markdown-mode",
     "spinner"
    ],
-   "commit": "2d640a146ad164f87c7796826791d7bcb85a8e7a",
-   "sha256": "0j7c5m7n7g7d16ldcqicw1f12dwcbak9gx5606qm8q8nlhk76mnm"
+   "commit": "95a5270ff783af063392286e8f45cf338c5a9765",
+   "sha256": "1sbww4m1pm5n0y3gzsqdggv39ic39gy0l15va5m26pvz9ffd7367"
   },
   "stable": {
    "version": [
@@ -66099,8 +66375,8 @@
     "ht",
     "lsp-mode"
    ],
-   "commit": "d428dbcf1802fbe147271c8dc74b073bd9cd7403",
-   "sha256": "0y31dajhd6jfla4h137k78clvwsfj1pdmgd61ni83yl6ackpvm8c"
+   "commit": "fa6698a6e33880feb16d264172aa665d14cb8a6f",
+   "sha256": "10y3gsc4wawh4rjv25dr10wb65wmwmrz1wnf5qsaglq2c5svhxhy"
   }
  },
  {
@@ -66117,8 +66393,8 @@
    "deps": [
     "lsp-mode"
    ],
-   "commit": "abf4d89ecf2fa0871130df5fce6065b7cf0a2721",
-   "sha256": "1cad09y36bf97mhgg7xncf4m856ys8n7zlbsgag5h5rja1ha71nl"
+   "commit": "ab052be5c4347e909dbfeecc83d43b9d75ccedda",
+   "sha256": "1bdlkqkqssz56kskff2pm2bkdb0bscfbqbd1vk3li20036c5dq05"
   },
   "stable": {
    "version": [
@@ -66141,15 +66417,15 @@
   "repo": "jjlee/lsp-rescript",
   "unstable": {
    "version": [
-    20210519,
-    1101
+    20220314,
+    1957
    ],
    "deps": [
     "lsp-mode",
     "rescript-mode"
    ],
-   "commit": "aac9673855314a1f34037eb785bccbd3f66d7695",
-   "sha256": "0jyn471mdklhw1il6bbnv5drrl0raiyh17p1qi6rdn20ywi1dbx7"
+   "commit": "7baf9adf10234cf964feefae99050268e9bc5681",
+   "sha256": "09jh4q3i0b71srfpsr4w0jk5rn9rz359v8k1pk80636g7448k8gl"
   }
  },
  {
@@ -66218,8 +66494,8 @@
    "deps": [
     "lsp-mode"
    ],
-   "commit": "dc4d5246afe8620cdffaff1a362529f5d63b1ef5",
-   "sha256": "1sb7apaqxv3mf601v3wxnx3v9jb71avh5m0dw4r80wbkxcgi65f2"
+   "commit": "010318052021ec041727e58e41752af094c8827a",
+   "sha256": "1rwszx7qza3nshcwvgq0lq3bnrggyq45k4363bhcqf95fbjl5jxl"
   },
   "stable": {
    "version": [
@@ -66278,16 +66554,16 @@
   "repo": "emacs-lsp/lsp-ui",
   "unstable": {
    "version": [
-    20220104,
-    1635
+    20220311,
+    1634
    ],
    "deps": [
     "dash",
     "lsp-mode",
     "markdown-mode"
    ],
-   "commit": "21ce926eedd41ef305c2d89412506ce59b1a7eac",
-   "sha256": "0v58imgrcgqs4fla1cncsd3wk6a8d5v7j014nn0pirypwfznyq0j"
+   "commit": "96b1ecbfbf87a775f05b5f0b55253376a3bd61e7",
+   "sha256": "0xjskdws354zbs906frcmx37862xldpai09sicdk8jy2sdwhamk6"
   },
   "stable": {
    "version": [
@@ -66391,11 +66667,11 @@
   "repo": "hawk/lux",
   "unstable": {
    "version": [
-    20210607,
-    1130
+    20220121,
+    913
    ],
-   "commit": "d158bb78029705a6ee848f8e00c09ba1f3575564",
-   "sha256": "1dkx6xas7dg07pgk4h3f7cdr6hmccw00qv3fi8l2vj462nd7cr5w"
+   "commit": "4304c89b3c9cccb256655b7d1058d7619e926dc7",
+   "sha256": "1fynv13wv13dzl7s84x6b4sav1im3rhrzds38w4vl1nx2jvgiya4"
   }
  },
  {
@@ -66493,14 +66769,14 @@
   "repo": "emacs-pe/lyrics.el",
   "unstable": {
    "version": [
-    20180812,
-    1841
+    20220206,
+    116
    ],
    "deps": [
     "seq"
    ],
-   "commit": "d0b920be634a5be81ad49418cfaada0f0a57d6cd",
-   "sha256": "0926avnlxi8qkr1faplk1aj4lji0ixa4lv81badi5zsmpyyrwmm7"
+   "commit": "c3d42f1e039941f32f49252e1b1610de337b4470",
+   "sha256": "02b0b68bh4jymx08zy2dsgs134mknk1ygb10mpqmyy1z88785ybd"
   }
  },
  {
@@ -66774,11 +67050,11 @@
   "repo": "roadrunner1776/magik",
   "unstable": {
    "version": [
-    20220204,
-    1229
+    20220311,
+    1219
    ],
-   "commit": "0168a410ea2e25c1e98c9be6381ba0872d1e1ae1",
-   "sha256": "19v5902fij5q6cfzxx8b9lsm5kkgrzsd9lccj7di1aj2yf02n4jx"
+   "commit": "86f1ca9f0f45e61a1ac7b96c809a85defc4ca665",
+   "sha256": "0scg4n7p9k7kj18w2v73f3w5f6xwf7fpjvf0sa253jwpdk6ln5b8"
   },
   "stable": {
    "version": [
@@ -66798,8 +67074,8 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20220227,
-    1341
+    20220326,
+    946
    ],
    "deps": [
     "dash",
@@ -66808,8 +67084,8 @@
     "transient",
     "with-editor"
    ],
-   "commit": "0f96d398346293b4d1f60dd878a490c25917cd8a",
-   "sha256": "1q948ihwfr55spa81vpg3lih6bc0vappl0xlgdagh7m55mg561bm"
+   "commit": "b1702991eec2c068d282fc2f1bd665726a14e10d",
+   "sha256": "0gyvbhwm5x7wgm4cdp3v0h8vv5vkw066fmwsvlvgyqqppkq5pqz3"
   },
   "stable": {
    "version": [
@@ -66836,15 +67112,15 @@
   "repo": "magit/magit-annex",
   "unstable": {
    "version": [
-    20211004,
-    2314
+    20220302,
+    1725
    ],
    "deps": [
     "cl-lib",
     "magit"
    ],
-   "commit": "018e8eebd2b1e56e9e8c152c6fb249f4de52e2d8",
-   "sha256": "1amr2c08mq1nnn6k66mgz4rzyni4np7gxm96g4qyla2cbfbachgk"
+   "commit": "efe484644666c6b7c544b0fb7b87e30703fa9425",
+   "sha256": "1n2q9px8b3s3732a6yiz9gvfxbya7sa2qnxidzcn4gdp867l103c"
   },
   "stable": {
    "version": [
@@ -66888,14 +67164,14 @@
   "repo": "ideasman42/emacs-magit-commit-mark",
   "unstable": {
    "version": [
-    20220211,
-    548
+    20220315,
+    250
    ],
    "deps": [
     "magit"
    ],
-   "commit": "4845e535a38da2dae1b2dd857cef9eb15abefb41",
-   "sha256": "0vnp1xn7s447waa1319bix8xnvwbbz0vshplzl37zdjyh1myf33k"
+   "commit": "f0fff86ffb669357b0897132d386c4c19dbf300e",
+   "sha256": "0l9fg19izp4f4ph9by1zz6nwpxpvgdl77kcbxykphf22wx5j0jyr"
   }
  },
  {
@@ -67105,14 +67381,14 @@
   "repo": "magit/magit-imerge",
   "unstable": {
    "version": [
-    20211004,
+    20220306,
     2311
    ],
    "deps": [
     "magit"
    ],
-   "commit": "1ee213d7fa1536c86c128d09946b44ededbfac9c",
-   "sha256": "1virc4ps25nwv8jkyvlb4ylxpcz676bfw449izaly97f2f2a91hk"
+   "commit": "37bca48218dc32cad964e01e0f9936a90f634fba",
+   "sha256": "064mq1xp970gk23l1rpshs1a4spqq4q61b8jjlc6jps7ls888v6j"
   },
   "stable": {
    "version": [
@@ -67135,15 +67411,15 @@
   "repo": "Ailrun/magit-lfs",
   "unstable": {
    "version": [
-    20210918,
-    2000
+    20220314,
+    1957
    ],
    "deps": [
     "dash",
     "magit"
    ],
-   "commit": "ee005580c1441cce4251734dd239c84d9e88639e",
-   "sha256": "1mv5rw65gn2rsk654q1ccp7hdg6jfap123b652cf9chwxy6c6nrk"
+   "commit": "8ebe246f20f4ab5c9f191c38137833c7f01a0432",
+   "sha256": "08ild7xc9m8pvkb23x5kxdc7ar7gz7470fng1f0zjlk4izbf1nh5"
   },
   "stable": {
    "version": [
@@ -67174,8 +67450,8 @@
     "libgit",
     "magit"
    ],
-   "commit": "0f96d398346293b4d1f60dd878a490c25917cd8a",
-   "sha256": "1q948ihwfr55spa81vpg3lih6bc0vappl0xlgdagh7m55mg561bm"
+   "commit": "b1702991eec2c068d282fc2f1bd665726a14e10d",
+   "sha256": "0gyvbhwm5x7wgm4cdp3v0h8vv5vkw066fmwsvlvgyqqppkq5pqz3"
   },
   "stable": {
    "version": [
@@ -67237,14 +67513,14 @@
   "repo": "dickmao/magit-patch-changelog",
   "unstable": {
    "version": [
-    20220209,
-    1857
+    20220313,
+    1229
    ],
    "deps": [
     "magit"
    ],
-   "commit": "e792755514cb5a98b94fcd1c5eacd487f7e04d7b",
-   "sha256": "1x6663ycyvxmacww7cdq82cxbjkpgjpwcvxgaqgh6pfc2wwqiwml"
+   "commit": "96936d2bd92c8bbf87f65bc293f3246014bc2764",
+   "sha256": "1k0674f9c0h468nl791nrvngymgbdljnsrwapnki5b3zvaxglckc"
   }
  },
  {
@@ -67323,14 +67599,14 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20220223,
-    2013
+    20220325,
+    1720
    ],
    "deps": [
     "dash"
    ],
-   "commit": "0f96d398346293b4d1f60dd878a490c25917cd8a",
-   "sha256": "1q948ihwfr55spa81vpg3lih6bc0vappl0xlgdagh7m55mg561bm"
+   "commit": "b1702991eec2c068d282fc2f1bd665726a14e10d",
+   "sha256": "0gyvbhwm5x7wgm4cdp3v0h8vv5vkw066fmwsvlvgyqqppkq5pqz3"
   },
   "stable": {
    "version": [
@@ -67393,26 +67669,26 @@
   "repo": "magit/magit-tbdiff",
   "unstable": {
    "version": [
-    20220204,
-    455
+    20220306,
+    2311
    ],
    "deps": [
     "magit"
    ],
-   "commit": "5fc67d0ca96d5db8f51ed9f2d9e3a7f69e7cd497",
-   "sha256": "1gzv5d1iar53b020qy17hrvqc5h0phx4hz22lkdmw0br554vyzgl"
+   "commit": "ae9345d867539a4c5c635be04df2e26468444da8",
+   "sha256": "1klns192jlp0ba9gklkkjjhl33k7dha0ircpm4d11y8vcy3c3zh3"
   },
   "stable": {
    "version": [
     1,
     1,
-    0
+    1
    ],
    "deps": [
     "magit"
    ],
-   "commit": "fef1b7772fe192c434089b67644ff93765e384d4",
-   "sha256": "1g5nsg6zb3jrm7w1ssawv109ai2l7dpnd1dqrjsry2dnx1mxd212"
+   "commit": "ae9345d867539a4c5c635be04df2e26468444da8",
+   "sha256": "1klns192jlp0ba9gklkkjjhl33k7dha0ircpm4d11y8vcy3c3zh3"
   }
  },
  {
@@ -67423,8 +67699,8 @@
   "repo": "alphapapa/magit-todos",
   "unstable": {
    "version": [
-    20210811,
-    459
+    20220326,
+    519
    ],
    "deps": [
     "async",
@@ -67436,8 +67712,8 @@
     "s",
     "transient"
    ],
-   "commit": "60152d5c4e4b73e72e15f23ca16e8cc7734906bc",
-   "sha256": "1ri53hnhamp3b9nh9dld6wxjvsxrk883kw900gglvw962ndimx5x"
+   "commit": "67fd80c2f10aec4d5b2a24b5d3d53c08cc1f05dc",
+   "sha256": "00hs3a9hpxmwsrd8xxwn9cpxk69x5ghmxq205aqpr7mjigcg7n2d"
   },
   "stable": {
    "version": [
@@ -67528,8 +67804,8 @@
   "repo": "vermiculus/magithub",
   "unstable": {
    "version": [
-    20190512,
-    2316
+    20220315,
+    117
    ],
    "deps": [
     "ghub+",
@@ -67538,8 +67814,8 @@
     "markdown-mode",
     "s"
    ],
-   "commit": "b75bb92eb5defeb358aac09bc50f6067e3c1d250",
-   "sha256": "1yxkzxxlbx1bhdxry114r5h6ncipycg6szn8gs8xnzj6yi5niyig"
+   "commit": "dd62c7057155c0a334e6d9087779a2923d2300b8",
+   "sha256": "1v8nsv1y4fa3y2skx1w3gbf438zlf00zlmsxkh692kmvbkx4sdf4"
   },
   "stable": {
    "version": [
@@ -67905,8 +68181,8 @@
     20210108,
     1832
    ],
-   "commit": "f4b37fffec7b6608a597e6a3f6900634802807b4",
-   "sha256": "0shk5n4a88r347h1fhayn0gzi242mc5b7i6b4aw0s63kw2yd4h6r"
+   "commit": "3a8398de3a79ca03f9fe55f6f31f70f3f62f8999",
+   "sha256": "1788n96c5h2s0qmwc7xw9anhcw6l0qqfbgx8mrp2n95mdix04n18"
   },
   "stable": {
    "version": [
@@ -67931,8 +68207,8 @@
    "deps": [
     "manage-minor-mode"
    ],
-   "commit": "e4d748adcf52c6d9483cd9d8bd91a1288c2d7052",
-   "sha256": "15321wq812plbn81g5hjagxz6pyg7z896zhicgac0v6dv0jz7cyf"
+   "commit": "492307c6c67c1b397084d85129e2b82cfd2c6556",
+   "sha256": "1di0m42hxi276a1axqayzvwqalw77zxy89qlnshldh373r5s20ax"
   },
   "stable": {
    "version": [
@@ -68108,19 +68384,19 @@
   "repo": "minad/marginalia",
   "unstable": {
    "version": [
-    20220226,
-    1237
+    20220312,
+    1357
    ],
-   "commit": "5767b6ff49e26ecd6aa26f552397d5d2b8213d25",
-   "sha256": "143d57fy5i5ziwfxxix595k0f98ay5l57x5z69g8lkp6nb7b1rq7"
+   "commit": "e63d27e6fb24ed16339de9d813c555d40aa1e4ca",
+   "sha256": "0pfl2h0xgd9jbpzw8b25pa601gad8p4l470yrkhzyzv5hs7774s4"
   },
   "stable": {
    "version": [
     0,
-    12
+    13
    ],
-   "commit": "e9540a7b80f9c4d044748b88720e5cba3e30c20a",
-   "sha256": "1a4k00g2pp7mk0x5zhqbxvv2igfjdz6bfy2g3hps2ygf4h12wbhg"
+   "commit": "bd98c02720bc59a5c185c293f60595d06dfd7637",
+   "sha256": "1qk6j7l39z92h4kvvbwcs85ilyx3d6y0l8zm33iar2pjnyks1kq3"
   }
  },
  {
@@ -68443,8 +68719,8 @@
     20200720,
     1034
    ],
-   "commit": "74d9f566a41805cf7f2d49bb69400cca91fe7b8d",
-   "sha256": "0rmavxh8dvldzbc0glcg9ya2dv5gnv2nfrzc5r9yrj2slkip51qn"
+   "commit": "9fb36834f151ff47ae4122cc18c341f366f035fc",
+   "sha256": "0yb4kr5986shjjd8j6sjvynh4ijmq38y4yjy2hmrzk7chd658qnc"
   },
   "stable": {
    "version": [
@@ -68632,11 +68908,11 @@
   "url": "https://git.code.sf.net/p/matlab-emacs/src",
   "unstable": {
    "version": [
-    20211122,
-    833
+    20220311,
+    1955
    ],
-   "commit": "c945bf50251150e0d4ad7ee751c7e9615cb4b3e8",
-   "sha256": "0f0h73n5zg766aqhd8w0s2lbg71av4nyswzbcxprah7l57yr6kzi"
+   "commit": "45febb409c474417562f79e90387d3568b4fc024",
+   "sha256": "0sn4c8gbvf68sn3qh75lq499lqds1rcc7ccifj5zgzxcgaf2x2wf"
   }
  },
  {
@@ -69139,20 +69415,20 @@
   "repo": "meow-edit/meow",
   "unstable": {
    "version": [
-    20220218,
-    2024
+    20220321,
+    2047
    ],
-   "commit": "7d3139c9f55ba85c00e5f5b1a396be98fea1762a",
-   "sha256": "1brw32ghmk0l98wk0n34v8as0g816n87f8drq794y8hkx8iiw6lz"
+   "commit": "979acca991cdada7438f360ef0fec573b20f4f96",
+   "sha256": "0m46nil2bbmks6d9zg18246xfwjyghdfsim5fvfhxq39amw5rp9j"
   },
   "stable": {
    "version": [
     1,
     4,
-    1
+    2
    ],
-   "commit": "b494651e1e02a232c5b9a359d6d4474ade736baa",
-   "sha256": "1w6586q237c5li8c0rrivissvhn2hic6l199yr9qx92mm9cvic0q"
+   "commit": "57656a69d3c29ddb0d18697491f80674e1097eaf",
+   "sha256": "11iz95lm25vpdc3plpm3h1zlmfmfz08xlman8iqk5fa13636v7hj"
   }
  },
  {
@@ -69163,11 +69439,11 @@
   "repo": "ocaml/merlin",
   "unstable": {
    "version": [
-    20210720,
-    950
+    20220318,
+    2012
    ],
-   "commit": "8091fad9953c6b9840a53aa53336fdebe51658b6",
-   "sha256": "1q8hvj2l7bwswvx6qjbqac7cmi5x6k0kb8gbyih5v2dsbbqlijxs"
+   "commit": "fb5cfc2a5091ffa77894629538efb0ec953fb6e7",
+   "sha256": "13g281pyfdid3kcd00x04k12f5b4zyx3xk19h636wah9hn27dyjn"
   },
   "stable": {
    "version": [
@@ -69195,8 +69471,8 @@
     "auto-complete",
     "merlin"
    ],
-   "commit": "8091fad9953c6b9840a53aa53336fdebe51658b6",
-   "sha256": "1q8hvj2l7bwswvx6qjbqac7cmi5x6k0kb8gbyih5v2dsbbqlijxs"
+   "commit": "fb5cfc2a5091ffa77894629538efb0ec953fb6e7",
+   "sha256": "13g281pyfdid3kcd00x04k12f5b4zyx3xk19h636wah9hn27dyjn"
   },
   "stable": {
    "version": [
@@ -69228,8 +69504,8 @@
     "company",
     "merlin"
    ],
-   "commit": "8091fad9953c6b9840a53aa53336fdebe51658b6",
-   "sha256": "1q8hvj2l7bwswvx6qjbqac7cmi5x6k0kb8gbyih5v2dsbbqlijxs"
+   "commit": "fb5cfc2a5091ffa77894629538efb0ec953fb6e7",
+   "sha256": "13g281pyfdid3kcd00x04k12f5b4zyx3xk19h636wah9hn27dyjn"
   },
   "stable": {
    "version": [
@@ -69290,8 +69566,8 @@
     "iedit",
     "merlin"
    ],
-   "commit": "8091fad9953c6b9840a53aa53336fdebe51658b6",
-   "sha256": "1q8hvj2l7bwswvx6qjbqac7cmi5x6k0kb8gbyih5v2dsbbqlijxs"
+   "commit": "fb5cfc2a5091ffa77894629538efb0ec953fb6e7",
+   "sha256": "13g281pyfdid3kcd00x04k12f5b4zyx3xk19h636wah9hn27dyjn"
   },
   "stable": {
    "version": [
@@ -70711,11 +70987,11 @@
   "repo": "protesilaos/modus-themes",
   "unstable": {
    "version": [
-    20220227,
-    1815
+    20220325,
+    617
    ],
-   "commit": "425d428a014125022315c2de69c17700a884d3ea",
-   "sha256": "0map0cy1p887bgjwswnzjq9qmvgw7r8g82515gvqb8x6xw2pfyj3"
+   "commit": "03f7046dff86c5342af778ad3f9850af7e950aed",
+   "sha256": "1ab0s4jqav3l66zzgxpx9gr6p0s3d6rhd98jkh3i3hba7qqsjn7x"
   },
   "stable": {
    "version": [
@@ -70738,8 +71014,8 @@
     20220111,
     1220
    ],
-   "commit": "0aad6ff44b9ee496d8c1053c3d7cbc59e11e3999",
-   "sha256": "0x9x7f53wv02a3i9sjhmkx0bhk93civgq52rfi2maawshh8cwwdd"
+   "commit": "edf3fe47fb986e283e3b04cba443dcb39fe8720e",
+   "sha256": "1wr6xd3hhgnqjrr2d8llbrdaagi4wz77zfxh1jg2f2mj28i52ksz"
   },
   "stable": {
    "version": [
@@ -71164,11 +71440,11 @@
   "repo": "Melchizedek6809/morgentau-theme",
   "unstable": {
    "version": [
-    20220223,
-    1047
+    20220319,
+    1049
    ],
-   "commit": "63792c50a1fdfdf85c6ba6d7a8eb9fc3ec0a434a",
-   "sha256": "0p448x7kl4y9zapkf808x4yxg86ifih95af2rhgzaxxm6ndvkyjl"
+   "commit": "a8da5640b4a9b72a3136901d0a1a03071d9fcb00",
+   "sha256": "1ksfw4slhbwsvydb3qvdwlb5nh47zv420akrssavw7527c657rkj"
   }
  },
  {
@@ -71361,8 +71637,8 @@
     20210306,
     1053
    ],
-   "commit": "f4ed28f37281ae0f2318e5f52f46ba49d58c8ebc",
-   "sha256": "1k1aclfizzypa007x4zrpabjc8s8gpid7phwi1bycd418nhbx5z8"
+   "commit": "1b950579e8a422ef3aaaa1e183db330a448f18e5",
+   "sha256": "1gay1s7kgpkml9bk6s9a2srp19g64m57q2cc6r42h89z128wgh0k"
   },
   "stable": {
    "version": [
@@ -71757,22 +72033,22 @@
  },
  {
   "ename": "mu4e-alert",
-  "commit": "855ea20024b606314f8590129259747cac0bcc97",
-  "sha256": "0b74ky51nx75vcrrbabr5cj2cx4yax5kgaq479hjp5yc5mq2q46r",
+  "commit": "9f978bdf14e60dd049a8a0a59b3ef94b17bc1f3a",
+  "sha256": "0jnm0xfw0lnmkl3kcddkkdl11xk55bs7g6mzarcgl44j8mlbwizq",
   "fetcher": "github",
-  "repo": "iqbalansari/mu4e-alert",
+  "repo": "xzz53/mu4e-alert",
   "unstable": {
    "version": [
-    20190418,
-    558
+    20220320,
+    1917
    ],
    "deps": [
     "alert",
     "ht",
     "s"
    ],
-   "commit": "91f0657c5b245a9de57aa38391221fb5d141d9bd",
-   "sha256": "0qr5ww2xj8dibglh175qcq4bdgzs8lylv28hkbijykjshr3pkzn9"
+   "commit": "cfd8bf3edab29ba7babb7cbe75c67aeb15a8a386",
+   "sha256": "1wgfs61x2m9prjnmc0019km177p9ayzyhxxf8py97fckxn2hkwlz"
   },
   "stable": {
    "version": [
@@ -72095,11 +72371,11 @@
   "url": "https://hg.osdn.net/view/multi-project/multi-project",
   "unstable": {
    "version": [
-    20211230,
-    2223
+    20220312,
+    2321
    ],
-   "commit": "81262345927d30571d2797a8fb8dbd9eeeb6ccf8",
-   "sha256": "1ps0dvbms7bgpgbrvy2yajy4xp3nxrscvw94krdxvnb8ycnvdqrk"
+   "commit": "c0a37d5ee969ca8a783bf6c4a9084c4efeace86d",
+   "sha256": "0rn0iixl37px4sbkqxrfnfkq6kmb9dsn4x83rbz335dwniqxx5iw"
   }
  },
  {
@@ -72968,11 +73244,11 @@
   "repo": "nryotaro/narumi",
   "unstable": {
    "version": [
-    20220221,
-    313
+    20220228,
+    243
    ],
-   "commit": "7a3b3c3a314612d16f89120b13ebeb8a4149d829",
-   "sha256": "0j47yah1prq9kvgx4nvbyvmvgivzalg6m1zjldsa63w76d8sfpqk"
+   "commit": "5bfb114adc0e6a2d5aebcd6335d1e6850e3f9722",
+   "sha256": "1vacijawhk60jqxkyk3malv1z6hd4w5dvzfkpf9nivj1fvhps9f0"
   }
  },
  {
@@ -73343,14 +73619,14 @@
   "repo": "SpringHan/netease-cloud-music.el",
   "unstable": {
    "version": [
-    20220211,
-    1326
+    20220305,
+    1224
    ],
    "deps": [
     "request"
    ],
-   "commit": "0738c875045072c277c85882330778fadd3d29f7",
-   "sha256": "1rxqgb3fj9zvl5pmfd2pb4hd7jrgl8620pnq455qg6b8ck24gl2i"
+   "commit": "f238d1d45bbeee32e0a8d169f39de4360be908f4",
+   "sha256": "0i460vn7plvxrzbzlnfldx36aymy0x666r5w3mak3a5ksyqpbi1c"
   },
   "stable": {
    "version": [
@@ -73769,8 +74045,8 @@
     20181024,
     1439
    ],
-   "commit": "c5e509481f1e53ceedc21d0315e125895b24d68d",
-   "sha256": "1w0hp5fzj6g6l0x77h3c3phq3hvm7klk7bgnk6c3didnvs47z9w7"
+   "commit": "25cdbae0ee1270a5c8dd6ba67696e29ad8076919",
+   "sha256": "1fwqvjg39l7321ykph3fd8dmkdy4q381jlg1jwr7ynmm285rfs9j"
   },
   "stable": {
    "version": [
@@ -73868,15 +74144,15 @@
   "repo": "NixOS/nix-mode",
   "unstable": {
    "version": [
-    20220121,
-    1723
+    20220228,
+    1520
    ],
    "deps": [
     "magit-section",
     "transient"
    ],
-   "commit": "00b2b8da57dc411cbaa464521d6f6f5f1dd9eb87",
-   "sha256": "0rpz1rfvrkw43mjaviy8p865xnsqm76rfmhgs8945wkms54g6qky"
+   "commit": "20ee8d88900b169831d6b0783bd82d2625e940c7",
+   "sha256": "0qv5cin9668pxm5cjhrl5sf170g62qqi954q4y2yj7zh3q0qhwpi"
   },
   "stable": {
    "version": [
@@ -74165,26 +74441,26 @@
   "repo": "emacscollective/no-littering",
   "unstable": {
    "version": [
-    20220227,
-    1208
+    20220315,
+    2232
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "e0f8daa7c374cd91d9c4e89cbdda6e0e7fe24317",
-   "sha256": "1098wm46gi15pzh065fpxfjf8lr7jf2sg48yy9yzdi0dwdyz6l4c"
+   "commit": "13414b7a294fa6f35bbeb535cdcab6b256e39da7",
+   "sha256": "1grc5fk7ng4d6i8fwfpm3cb2b19s9sbdjbdn8ybchk7cj45kkl24"
   },
   "stable": {
    "version": [
     1,
     2,
-    5
+    7
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "f01872a2972450f8d12d84f58f3c5b812c716299",
-   "sha256": "0rf05lfmr77yq7xqz1nd4bji6d2cipb3hd5ap9lrk6jiv7f72dr2"
+   "commit": "13414b7a294fa6f35bbeb535cdcab6b256e39da7",
+   "sha256": "1grc5fk7ng4d6i8fwfpm3cb2b19s9sbdjbdn8ybchk7cj45kkl24"
   }
  },
  {
@@ -74433,6 +74709,29 @@
   }
  },
  {
+  "ename": "norns",
+  "commit": "c40cac0da3033b1e18edd5813deed53c6c831594",
+  "sha256": "0zsfsg30smi0wi9854ibcakgr6wp9impy7kxdcghqvvs251sjfns",
+  "fetcher": "github",
+  "repo": "p3r7/norns.el",
+  "unstable": {
+   "version": [
+    20220315,
+    1155
+   ],
+   "deps": [
+    "dash",
+    "f",
+    "osc",
+    "request",
+    "s",
+    "websocket"
+   ],
+   "commit": "b70ab2f9a58859243762c633628ad515f5563da8",
+   "sha256": "0cw0ry30im3b4b70n7rsp8pyv1567kl7byjck3rdlfrl7ll9bzr6"
+  }
+ },
+ {
   "ename": "northcode-theme",
   "commit": "25dcd4dd8189ad0fbf6c31874daa618bf1957863",
   "sha256": "0x4dryx174kcjzm11z9q5qqlzr1c9zr0p32zwgbvgypgnvjy6i4g",
@@ -74488,8 +74787,8 @@
     20220226,
     1200
    ],
-   "commit": "7167b7556cccbb16ec83144a2f2a095b91a6ba02",
-   "sha256": "1i6cmaa530s45sawmfsabr8vvqlnk64bifill070jfzpgilxj7bp"
+   "commit": "8ed6a172b35708428f84f30af44fa81c12852e43",
+   "sha256": "1gknm711bfyvl7mrd0an1rjlw584vrxj8j922wy60j9mrka1wmgz"
   },
   "stable": {
    "version": [
@@ -74657,15 +74956,15 @@
   "url": "https://depp.brause.cc/nov.el.git",
   "unstable": {
    "version": [
-    20220218,
-    1230
+    20220320,
+    1009
    ],
    "deps": [
     "dash",
     "esxml"
    ],
-   "commit": "0a166007f6430564360c31b5c68fca45a0c610d2",
-   "sha256": "0zgycw1bf0f1hf5apl1pmzviw4kizgpfd2gb36fpwky83a4r38xl"
+   "commit": "b6ea69a83fef6c4f547da3a4551ebed2cfe436a7",
+   "sha256": "1jxqwn8ybb61y59p7302ac9ph65xlqyrk8nqmswrr2czm1px7zjb"
   },
   "stable": {
    "version": [
@@ -75001,11 +75300,11 @@
   "repo": "enricoflor/numbex",
   "unstable": {
    "version": [
-    20220206,
-    251
+    20220323,
+    2011
    ],
-   "commit": "21fb1d4c998c914a91302fd5dec85fc803393917",
-   "sha256": "146ln9wbmk9j62klh6yi4b7hfijnnfayr660hvjzyvd4jj0lr8wa"
+   "commit": "c1db2846cf7448307500fec718fab7a02b179c8b",
+   "sha256": "0kssw66g4hy5xs8map2vn3vygjhawp9jl0wx7nmjaaz8vagv8zca"
   }
  },
  {
@@ -75031,27 +75330,27 @@
   "repo": "douglasdavis/numpydoc.el",
   "unstable": {
    "version": [
-    20220214,
-    1526
+    20220304,
+    1546
    ],
    "deps": [
     "dash",
     "s"
    ],
-   "commit": "cfec608e1b95bc834e801bf285b0ff5451ccdf33",
-   "sha256": "1k05i8xa7c6nzgv0k4kngjnsgcpllvnwj76nl15an4k2jphcd17g"
+   "commit": "1b8c5ef3301fed5e5c1941817dbb7435188ff417",
+   "sha256": "0vd8hpirib67zx61zb4abxpm9fq7kahabcizananf4k207zmv66s"
   },
   "stable": {
    "version": [
     0,
-    6
+    7
    ],
    "deps": [
     "dash",
     "s"
    ],
-   "commit": "7b803432ce62fc54a5c9d87294e3a499e55381ae",
-   "sha256": "0vmkfjd16v40gfh6w4lqn84jdljk5rz1rmh7sbb8dnfxfkvh9y9f"
+   "commit": "1b8c5ef3301fed5e5c1941817dbb7435188ff417",
+   "sha256": "0vd8hpirib67zx61zb4abxpm9fq7kahabcizananf4k207zmv66s"
   }
  },
  {
@@ -75391,6 +75690,21 @@
   }
  },
  {
+  "ename": "ob-compile",
+  "commit": "7769e68ef350b3379e0523fe938b5c5ec270f8cb",
+  "sha256": "1kld4rcq2cwlllyf8wbp64yd7fsyarrxc28j4wh13942s34sh1zq",
+  "fetcher": "github",
+  "repo": "TxGVNN/ob-compile",
+  "unstable": {
+   "version": [
+    20220320,
+    1343
+   ],
+   "commit": "cbfad24503491ba2bb0fff7454c339e655968c90",
+   "sha256": "01jmyvan8f5p4v8yyafyvv6j6fm01y184b3y6wxfk4c80m2zh86f"
+  }
+ },
+ {
   "ename": "ob-crystal",
   "commit": "b9a7d43199a83ab6f672aaa69ef4e158c868f180",
   "sha256": "11mk2spwlddbrvcimhzw43b6d3gxzmi8br58bily1x4qkvl6zy4n",
@@ -75930,6 +76244,21 @@
   }
  },
  {
+  "ename": "ob-powershell",
+  "commit": "3490006379a8aaa3d6bd8d28b115475d3e2164f1",
+  "sha256": "0k7l2s2181mwz20sskgk3dxhxid861c7b9hmk2pgknb6dizi00hk",
+  "fetcher": "github",
+  "repo": "MoisMoshev/ob-powershell",
+  "unstable": {
+   "version": [
+    20220314,
+    1359
+   ],
+   "commit": "f351429590ed68b26a9c8f9847066ca4205e524b",
+   "sha256": "1lk3xikq4j5nw0z1mj1wq9p1i39zbjhznw0fn7s0wk0as7kd4nkn"
+  }
+ },
+ {
   "ename": "ob-prolog",
   "commit": "fb87868cd74325f0a4a38c5542c264501000951d",
   "sha256": "0ki8yd20yk5xwn0zpk06zjxzgrsf8paydif9n98svb9s2l9wrh1s",
@@ -76454,11 +76783,11 @@
   "repo": "ocaml-ppx/ocamlformat",
   "unstable": {
    "version": [
-    20210923,
-    1348
+    20220307,
+    1315
    ],
-   "commit": "63e478f1186a03c7e4dfeeb39b3d8fe2ef1cb429",
-   "sha256": "10vy102a0isd8cg94y61pm4qfgy74d6003dw0qn0bdmbd19r5071"
+   "commit": "f490dbb90052516e532b7cc2f4e6bce149e1cfb3",
+   "sha256": "141rd4a80vvf4hmlnfzprjg6hzgjs6g09rpy0wzxi1jsz7f0xc9j"
   },
   "stable": {
    "version": [
@@ -76651,26 +76980,26 @@
   "repo": "oer/oer-reveal",
   "unstable": {
    "version": [
-    20220117,
-    1434
+    20220321,
+    1632
    ],
    "deps": [
     "org-re-reveal"
    ],
-   "commit": "e8c43c843f97eb9fc4ffeb1e7758935a314d1cfe",
-   "sha256": "0baa27f60l4351h6m054hmzk48y838a5cppw0qp7bacbzv9d9qq6"
+   "commit": "8ac1829bbe3458a100ef7de1195a9714b59db98b",
+   "sha256": "0f75k0vvikvzlkd6yr7wl53lh167njfwd0hkfp8mkxfzls36rwxk"
   },
   "stable": {
    "version": [
     4,
-    1,
-    2
+    3,
+    0
    ],
    "deps": [
     "org-re-reveal"
    ],
-   "commit": "e8c43c843f97eb9fc4ffeb1e7758935a314d1cfe",
-   "sha256": "0baa27f60l4351h6m054hmzk48y838a5cppw0qp7bacbzv9d9qq6"
+   "commit": "8ac1829bbe3458a100ef7de1195a9714b59db98b",
+   "sha256": "0f75k0vvikvzlkd6yr7wl53lh167njfwd0hkfp8mkxfzls36rwxk"
   }
  },
  {
@@ -77398,11 +77727,11 @@
   "repo": "oantolin/orderless",
   "unstable": {
    "version": [
-    20220212,
-    356
+    20220312,
+    1944
    ],
-   "commit": "7ddf5dfe9e982ee1510ceec36eeb4d8bb802ea73",
-   "sha256": "0jl9zcpxlz89fzvagvwz73y2qxq0vbmzk7rmqcz37f8r75fz63aw"
+   "commit": "f2c78c4a6059c5f892e48a3887d4368a547515ff",
+   "sha256": "1zr3pk1ifvn9j4f4n7g53q4wcd3r4zybjni8kyiil4jadmvsglfl"
   },
   "stable": {
    "version": [
@@ -77560,30 +77889,30 @@
   "repo": "eyeinsky/org-anki",
   "unstable": {
    "version": [
-    20220102,
-    1248
+    20220302,
+    1706
    ],
    "deps": [
     "dash",
     "promise",
     "request"
    ],
-   "commit": "400f472e7b2e45502cac2b96bdde33830b84ea60",
-   "sha256": "1qj07k5j6493n76q23f4llmbkv5chf9fr43c2b5a5a8cx8qpp48f"
+   "commit": "c1790b1cdd2e5733cf64c7507a89da0b6179cf7d",
+   "sha256": "10r8k14dlm017c4kahim2jv2nkx0898r0dc21z5szp4hw7l1z4n9"
   },
   "stable": {
    "version": [
     0,
     0,
-    7
+    9
    ],
    "deps": [
     "dash",
     "promise",
     "request"
    ],
-   "commit": "e6221b1654d34bc3a06500ae4706419bc176b575",
-   "sha256": "1xnqih87sipqd6q5cvgvw2mpn5m4j605bxhlbmpr4kzhni9vd9sh"
+   "commit": "c1790b1cdd2e5733cf64c7507a89da0b6179cf7d",
+   "sha256": "10r8k14dlm017c4kahim2jv2nkx0898r0dc21z5szp4hw7l1z4n9"
   }
  },
  {
@@ -78609,8 +78938,8 @@
   "repo": "kidd/org-gcal.el",
   "unstable": {
    "version": [
-    20220222,
-    1915
+    20220324,
+    1852
    ],
    "deps": [
     "alert",
@@ -78619,8 +78948,8 @@
     "request",
     "request-deferred"
    ],
-   "commit": "f7a3145fac5d7e637a7cc557e5196086061159e0",
-   "sha256": "0s4nai9c2s237cwy6649zsgqp6z75129ly43v0kibfvf4pgrbkxw"
+   "commit": "554c48fb57dc46877202028019197b0699961ca0",
+   "sha256": "1l48dgzwwh230l5kxd17jdmjwhbkaqzmj95znxzhs9jrfm7jixyb"
   },
   "stable": {
    "version": [
@@ -78765,28 +79094,28 @@
   "repo": "marcIhm/org-id-cleanup",
   "unstable": {
    "version": [
-    20210714,
-    1604
+    20220228,
+    1653
    ],
    "deps": [
     "dash",
     "org"
    ],
-   "commit": "416c95fc9ad8551f1d9544f2504c866daac5477e",
-   "sha256": "189zzfi5a1qsjm8ayq5v58s5iagibv2vk6rb6zda4p0hrmnfz2ky"
+   "commit": "b6bf79465cd31d66b547704903b8ba5fcd6dd108",
+   "sha256": "0cs69fa36wdz8i6rvdslmr3nlwmaw74s8r5wcbjvh0kjzipyqdyp"
   },
   "stable": {
    "version": [
     1,
     7,
-    0
+    1
    ],
    "deps": [
     "dash",
     "org"
    ],
-   "commit": "2cb87624238281b438cda67ed375c56403524489",
-   "sha256": "1xmbrrp1zyvij18v3rqmini6w9i6v7dl4fp103ph6wznav8x0jbl"
+   "commit": "b6bf79465cd31d66b547704903b8ba5fcd6dd108",
+   "sha256": "0cs69fa36wdz8i6rvdslmr3nlwmaw74s8r5wcbjvh0kjzipyqdyp"
   }
  },
  {
@@ -78821,16 +79150,16 @@
   "repo": "marcIhm/org-index",
   "unstable": {
    "version": [
-    20220121,
-    1503
+    20220228,
+    1651
    ],
    "deps": [
     "dash",
     "org",
     "s"
    ],
-   "commit": "64930ad82c0220ad7d80ec0896b8647a3206d2d3",
-   "sha256": "0r4kn82jwv6w6ngz5azqq7jyxlfcspjj8lpscq8cnha5112qw7nh"
+   "commit": "9671cf059b681fac39ce910dd8847b5c7bfad170",
+   "sha256": "1zygrmihzdsciqnm5kl3j4wgmm796q8ppv7nvgn3d8rv6xky5mx3"
   },
   "stable": {
    "version": [
@@ -79012,16 +79341,16 @@
   "repo": "SqrtMinusOne/org-journal-tags",
   "unstable": {
    "version": [
-    20220216,
-    801
+    20220305,
+    2019
    ],
    "deps": [
     "magit-section",
     "org-journal",
     "transient"
    ],
-   "commit": "f8ad372c5839eeb882d2bd256ddd740e900aad95",
-   "sha256": "0ky4am88azrnhync6zr3ilq9lf5hknymm6m0cg4iphklx0694v6m"
+   "commit": "b395f5c90aa06885aa9441217cc0abaaa53ccc11",
+   "sha256": "1kkf6sryj9xgplxpf69lz3wz1zaifarr1cwgq5if3yc1bb868ax2"
   },
   "stable": {
    "version": [
@@ -79108,8 +79437,8 @@
     "posframe",
     "s"
    ],
-   "commit": "39f22dc98cb8268af67c6df71778ec5784d2b683",
-   "sha256": "14rjgdl941kja3hndc55q3c65fi7plviirxihffkw498h0vkbyhs"
+   "commit": "d18e73dbed8ae104699295143a44356fa1029358",
+   "sha256": "0387n6z3kyqvslv395wajmbsg3p05918wn1wgm2bi4d9kjw6y3qm"
   }
  },
  {
@@ -79120,14 +79449,14 @@
   "url": "https://repo.or.cz/org-link-beautify.git",
   "unstable": {
    "version": [
-    20220210,
-    1409
+    20220321,
+    145
    ],
    "deps": [
     "all-the-icons"
    ],
-   "commit": "e8be9d886b5a9467244ed906ebb48089d9406aa2",
-   "sha256": "0rivgwi1570ybzz136q02kijv6cjbqx8ncwm71kas0gvcp6i73py"
+   "commit": "75a0f3bc427b9449f6f7ae3b2ac67e16e24153bd",
+   "sha256": "0p33n195xl6pgvyf7z47mq48fh8ihkq7wx70z1vn9js3xvig2ahm"
   }
  },
  {
@@ -79344,11 +79673,19 @@
   "repo": "minad/org-modern",
   "unstable": {
    "version": [
-    20220226,
-    26
+    20220325,
+    1506
+   ],
+   "commit": "dc19304f409259d1b258c51cedd2d362e0ff9b98",
+   "sha256": "1b0cis1n786c4lkrsi71ak2wv21mhgbfk3q2pp6qiqhddah0l1cg"
+  },
+  "stable": {
+   "version": [
+    0,
+    3
    ],
-   "commit": "fdb7b59682b656a998bf8821d112283e1a3edbd8",
-   "sha256": "1ihzv6n4zwxq51gba6w3bgzb4ws18h79z8k1iw24gpbz6pw0pwww"
+   "commit": "64fa67a3e4cc7af4084bb879bd8a0e5380333bcf",
+   "sha256": "187fxw2rg0kw1d2binpa32ckp67r4v10j6ypr077g9qn6nkmyvvn"
   }
  },
  {
@@ -79393,8 +79730,8 @@
     20211029,
     1147
    ],
-   "commit": "454d317bf772a616cb76cf2212f111c7977016a2",
-   "sha256": "1bib2ch2grb7qlyhc7aq82ca1i16nqi8h84nfvlwgx45al8r3k4l"
+   "commit": "a74322f0cfd6e52151f9bb8d4f90833330f69120",
+   "sha256": "18kjj1125rbr6mppj9wamwlgi5hvv8h6p4c8z3bckl80y5f7r8rl"
   },
   "stable": {
    "version": [
@@ -79538,8 +79875,8 @@
   "repo": "fuxialexander/org-pdftools",
   "unstable": {
    "version": [
-    20210118,
-    1611
+    20220320,
+    300
    ],
    "deps": [
     "org",
@@ -79547,8 +79884,8 @@
     "org-pdftools",
     "pdf-tools"
    ],
-   "commit": "a5b61bca3f8c91b0859bb0df1a929f9a31a57b99",
-   "sha256": "18iy03hc7jb7qsfj25f6hmrwli6fyjbf14c1p5bhp5gwk49rm9p1"
+   "commit": "967f48fb5038bba32915ee9da8dc4e8b10ba3376",
+   "sha256": "0f47ww8r00b7lb1msybnmnqdhm9i2vwz5lrz9m9bn6gbh97mzhn8"
   }
  },
  {
@@ -79721,16 +80058,16 @@
   "repo": "fuxialexander/org-pdftools",
   "unstable": {
    "version": [
-    20210118,
-    1611
+    20220320,
+    301
    ],
    "deps": [
     "org",
     "org-noter",
     "pdf-tools"
    ],
-   "commit": "a5b61bca3f8c91b0859bb0df1a929f9a31a57b99",
-   "sha256": "18iy03hc7jb7qsfj25f6hmrwli6fyjbf14c1p5bhp5gwk49rm9p1"
+   "commit": "967f48fb5038bba32915ee9da8dc4e8b10ba3376",
+   "sha256": "0f47ww8r00b7lb1msybnmnqdhm9i2vwz5lrz9m9bn6gbh97mzhn8"
   }
  },
  {
@@ -79776,15 +80113,15 @@
   "repo": "marcinkoziej/org-pomodoro",
   "unstable": {
    "version": [
-    20190530,
-    1445
+    20220318,
+    1618
    ],
    "deps": [
     "alert",
     "cl-lib"
    ],
-   "commit": "aa07c11318f91219336197e62c47bc7a3d090479",
-   "sha256": "0nbprh2nhnmb7ngp9ndr6zr37ashcsvpi5slv7a37x1dl7j6w1k4"
+   "commit": "3f5bcfb80d61556d35fc29e5ddb09750df962cc6",
+   "sha256": "1x3ny357s0h73129mhah6rjipjd0jw6gh3msr6sahwx36nsdrp4m"
   },
   "stable": {
    "version": [
@@ -79858,14 +80195,14 @@
   "repo": "jakebox/org-preview-html",
   "unstable": {
    "version": [
-    20211126,
-    2350
+    20220228,
+    414
    ],
    "deps": [
     "org"
    ],
-   "commit": "14e39aec6e29dc15ff40b219b2b7284a9ec0af36",
-   "sha256": "0qza6ylknsd0d87dhwxk5hyqzs5107n2s8y189nr23lnyvpggn49"
+   "commit": "cb85524d5090b8189e965cc49d65be04650c17c4",
+   "sha256": "1ikcsn970pf5m30h6bqshykpnwpn7vwyyi9ymk3fv6pxh772x5wc"
   }
  },
  {
@@ -79970,8 +80307,8 @@
   "repo": "alphapapa/org-ql",
   "unstable": {
    "version": [
-    20210922,
-    615
+    20220318,
+    1534
    ],
    "deps": [
     "dash",
@@ -79985,13 +80322,14 @@
     "transient",
     "ts"
    ],
-   "commit": "31aeb0a2505acf8044c07824888ddec7f3e529c1",
-   "sha256": "1jfm4ahh58x3a3njigrbfzd86fnbyybbcgca2mgmxddcy6bszfp1"
+   "commit": "46f523d94a376b168176c75bbd0e3e0d00e61170",
+   "sha256": "0vrk7lx4n4imvsnqv50w6fmqnndr48x89gcmm375fw6zgy2m90bl"
   },
   "stable": {
    "version": [
     0,
-    6
+    6,
+    1
    ],
    "deps": [
     "dash",
@@ -80005,8 +80343,8 @@
     "transient",
     "ts"
    ],
-   "commit": "31aeb0a2505acf8044c07824888ddec7f3e529c1",
-   "sha256": "1jfm4ahh58x3a3njigrbfzd86fnbyybbcgca2mgmxddcy6bszfp1"
+   "commit": "f666fe150f1bf3c3ce43d0e15f90b20d43c2e772",
+   "sha256": "1mpq3v8lxqllnb4afqh7p9av0p9bha8ld7741zaw4hxb1252xgm2"
   }
  },
  {
@@ -80085,28 +80423,28 @@
   "repo": "oer/org-re-reveal",
   "unstable": {
    "version": [
-    20211119,
-    624
+    20220315,
+    1704
    ],
    "deps": [
     "htmlize",
     "org"
    ],
-   "commit": "55fca47c740c50fe04cbf2b8ae90e02174626c0c",
-   "sha256": "01h1vdg96ml8zxfi78j178w4m33n2rmwgcl6k2cisymcfijcp2c5"
+   "commit": "e5bae22b9ef63a9fcfbbaa000e087703751eaad0",
+   "sha256": "1njib0ah1913lk3ma18y8m5k8jqki17i9298cc03k7vvfw3l19wz"
   },
   "stable": {
    "version": [
     3,
     12,
-    4
+    5
    ],
    "deps": [
     "htmlize",
     "org"
    ],
-   "commit": "ee0417aac3969ec2d776eba1ddc6434d4c61a10d",
-   "sha256": "0j7394zcbzqfk33g2xdyb3fmw3brxy8v66vvf1j9nqlskfddh7bn"
+   "commit": "e5bae22b9ef63a9fcfbbaa000e087703751eaad0",
+   "sha256": "1njib0ah1913lk3ma18y8m5k8jqki17i9298cc03k7vvfw3l19wz"
   }
  },
  {
@@ -80261,8 +80599,8 @@
   "repo": "jkitchin/org-ref",
   "unstable": {
    "version": [
-    20220212,
-    1552
+    20220318,
+    2105
    ],
    "deps": [
     "avy",
@@ -80276,8 +80614,8 @@
     "parsebib",
     "s"
    ],
-   "commit": "b7d43f4c66baeea7cf9a1d3af8a3cc874a6abcea",
-   "sha256": "1hkqaq8ksda60bsp7qlpvpz66syms0qxs5ig693q3py372p6g9pp"
+   "commit": "ec449195438f815698241f0b01a5395221b3306e",
+   "sha256": "19hf4lp1z14gczs0d39vi8lcl67bbraz2wkimshk8fwhjc14wf4l"
   },
   "stable": {
    "version": [
@@ -80353,28 +80691,28 @@
   "repo": "akirak/org-reverse-datetree",
   "unstable": {
    "version": [
-    20220222,
-    1041
+    20220310,
+    1646
    ],
    "deps": [
     "dash",
     "org"
    ],
-   "commit": "777bdff6df36a7b0f4e82a3caa0edd7cf92e888f",
-   "sha256": "1124ns6d1rvh6p96fkmszpx1b9aiy2rcbffiswa2rmaa188c4d6b"
+   "commit": "c42078f8601b7f600135f66e75246a53c5f9975f",
+   "sha256": "1afmv6ncjbm6dalgz459lhh0rif8rlag23n05jwdv7izibwb1dm2"
   },
   "stable": {
    "version": [
     0,
     3,
-    8
+    10
    ],
    "deps": [
     "dash",
     "org"
    ],
-   "commit": "777bdff6df36a7b0f4e82a3caa0edd7cf92e888f",
-   "sha256": "1124ns6d1rvh6p96fkmszpx1b9aiy2rcbffiswa2rmaa188c4d6b"
+   "commit": "c42078f8601b7f600135f66e75246a53c5f9975f",
+   "sha256": "1afmv6ncjbm6dalgz459lhh0rif8rlag23n05jwdv7izibwb1dm2"
   }
  },
  {
@@ -80400,11 +80738,11 @@
   "repo": "unhammer/org-rich-yank",
   "unstable": {
    "version": [
-    20201115,
-    823
+    20220227,
+    2154
    ],
-   "commit": "56d698c2614025538f456479c79073ef40399bc3",
-   "sha256": "0l20a8ljpg8bk6hw4py5g9wv6kyv6y4nrc06l1w0lr0l808w5gqd"
+   "commit": "4bcd030f0d736d77c647955739b61fae541417e9",
+   "sha256": "11j7ywvhsi4a4ayapxqccvag8sraw168pwwq4s3a0f98yzknd9h9"
   },
   "stable": {
    "version": [
@@ -80424,8 +80762,8 @@
   "repo": "org-roam/org-roam",
   "unstable": {
    "version": [
-    20220227,
-    2050
+    20220319,
+    1902
    ],
    "deps": [
     "dash",
@@ -80434,25 +80772,24 @@
     "magit-section",
     "org"
    ],
-   "commit": "65ea325071777030978a85cac73ba6741a3c00a8",
-   "sha256": "0knk77scs08w2gwkxw8an0d743mz1mip6v8dcg44wh8xwwf2hvg1"
+   "commit": "d71675fb479d11da3ae597bb13bc1c96256ff0b0",
+   "sha256": "056gkk7fxla2rm8lzzig1rq8brhznciifdn0pqfxwwyvpa6sy1i5"
   },
   "stable": {
    "version": [
     2,
     2,
-    0
+    1
    ],
    "deps": [
     "dash",
     "emacsql",
     "emacsql-sqlite",
-    "f",
     "magit-section",
     "org"
    ],
-   "commit": "6170cc99288e75b8e3f3fd3101b66acc12a9613a",
-   "sha256": "0q3nhw05wnqh1qgggxsj8wki4ihciqlkic2x7qbcsskjqm73j1r7"
+   "commit": "3782e88d50f83c5b9fbb4b10df71df3f37e27156",
+   "sha256": "0c5vxz423lz386dxa9nqyf396jmyb36q79paxf27is1dhq1vwd5w"
   }
  },
  {
@@ -80521,8 +80858,23 @@
     "simple-httpd",
     "websocket"
    ],
-   "commit": "df1f9522c5a9cdb248208427fa9df4f2a7666e2a",
-   "sha256": "03kyg95f012ql0gpzy58kzxgdfksig5zlbr1p9m9ycgqmmxyq4jp"
+   "commit": "9474a254390b1e42488a1801fed5826b32a8030b",
+   "sha256": "0v54vxh95izch74wz2dl2dkdqicbvshra55l6qvd4xl5qmfhpjdc"
+  }
+ },
+ {
+  "ename": "org-ros",
+  "commit": "a7b6aff1afbd525b43a53229be4e6faf166c6968",
+  "sha256": "10jfdrrqqk0y43z32w0hsiih1l3rb6yafkqwxj64dgfd0iz4szsx",
+  "fetcher": "github",
+  "repo": "LionyxML/ros",
+  "unstable": {
+   "version": [
+    20220320,
+    1705
+   ],
+   "commit": "70e0f33ee027ca1dce68351ad14a9e47a452fc17",
+   "sha256": "0qjfb2fllzkh1d0jprxdsvg6fcrrhc7wc2lg0kffp5vwmfv7m3db"
   }
  },
  {
@@ -80699,17 +81051,20 @@
   "repo": "alhassy/org-special-block-extras",
   "unstable": {
    "version": [
-    20210909,
-    2032
+    20220326,
+    1432
    ],
    "deps": [
+    "dad-joke",
     "dash",
     "lf",
+    "lolcat",
     "org",
-    "s"
+    "s",
+    "seq"
    ],
-   "commit": "1e9731dfd79b0605ee88c8cc891d4b5106c9e0f4",
-   "sha256": "0lp0gn7p5d0fkm3wy27xhj2q6snhl1ssqqhyl52hw06jhifamm8l"
+   "commit": "2e397dac372ff75ea6ee6eed9ae3a0540a082af8",
+   "sha256": "0i838ph9p92vfirf6q145m22nydzrans2ss6aj80m4g0b2mprq2z"
   },
   "stable": {
    "version": [
@@ -80769,27 +81124,26 @@
   "repo": "akirak/org-starter",
   "unstable": {
    "version": [
-    20220218,
-    743
+    20220326,
+    1106
    ],
    "deps": [
     "dash"
    ],
-   "commit": "2b06b02b8008dde8cfad69b679f89742d80aa4e6",
-   "sha256": "1x6kcwyyixgi92yq7cmx2bhcbh342acwr1c5nw31mi03v6hczjzk"
+   "commit": "cd9c5c0402de941299d1c8901f26a8f24d755022",
+   "sha256": "07z17r2ny9m4cddr87v636vgvcfgv1j5qkvhckms0xnfh9wcs9j3"
   },
   "stable": {
    "version": [
     0,
     2,
-    9,
-    1
+    10
    ],
    "deps": [
     "dash"
    ],
-   "commit": "338650e8fd4cb02aad68939f4baa3269b73b233c",
-   "sha256": "1fh2ryli8xyvnndjhk3miynkmd5xrdinlqybkcglwd6v48yd7c5c"
+   "commit": "cd9c5c0402de941299d1c8901f26a8f24d755022",
+   "sha256": "07z17r2ny9m4cddr87v636vgvcfgv1j5qkvhckms0xnfh9wcs9j3"
   }
  },
  {
@@ -80807,22 +81161,21 @@
     "org-starter",
     "swiper"
    ],
-   "commit": "2b06b02b8008dde8cfad69b679f89742d80aa4e6",
-   "sha256": "1x6kcwyyixgi92yq7cmx2bhcbh342acwr1c5nw31mi03v6hczjzk"
+   "commit": "cd9c5c0402de941299d1c8901f26a8f24d755022",
+   "sha256": "07z17r2ny9m4cddr87v636vgvcfgv1j5qkvhckms0xnfh9wcs9j3"
   },
   "stable": {
    "version": [
     0,
     2,
-    9,
-    1
+    10
    ],
    "deps": [
     "org-starter",
     "swiper"
    ],
-   "commit": "338650e8fd4cb02aad68939f4baa3269b73b233c",
-   "sha256": "1fh2ryli8xyvnndjhk3miynkmd5xrdinlqybkcglwd6v48yd7c5c"
+   "commit": "cd9c5c0402de941299d1c8901f26a8f24d755022",
+   "sha256": "07z17r2ny9m4cddr87v636vgvcfgv1j5qkvhckms0xnfh9wcs9j3"
   }
  },
  {
@@ -80896,8 +81249,8 @@
     "s",
     "ts"
    ],
-   "commit": "fb5e2ef277bc811a3b061106c99e4c47b6b86f80",
-   "sha256": "1sjx5ahyjpxv5xkxaf1x0p64bjls8ralv9knf80w17nb87dk3p91"
+   "commit": "3108bc3f725818f0e868520d2c243abe9acbef4e",
+   "sha256": "172kjz03byizc972h8qh5hp5lrjqxp8x7cpcqykzj5j4db670ym1"
   },
   "stable": {
    "version": [
@@ -80997,6 +81350,21 @@
   }
  },
  {
+  "ename": "org-table-color",
+  "commit": "06a6b1a123be2e653a09ed297a777b955ecd235f",
+  "sha256": "0hb40k9dly4kj15b4bin10szm1rvfl6dx638a29fv4cv3h90yqqj",
+  "fetcher": "github",
+  "repo": "fosskers/org-table-color",
+  "unstable": {
+   "version": [
+    20220311,
+    1927
+   ],
+   "commit": "2022f301ef323953c3a0e087a1b601da85e06da1",
+   "sha256": "18bbsi79i0xf8kzzbpr6v4sh150m1qip7m74ighbb9as3kx07r0f"
+  }
+ },
+ {
   "ename": "org-table-comment",
   "commit": "2c1f08c41969bc8a7104fb914564b4f6cab667e2",
   "sha256": "1d40vl8aa1x27z4gwnkzxgrqp7vd3ln2pc445ijjxp1wr8bjxvdz",
@@ -81058,15 +81426,15 @@
   "url": "https://repo.or.cz/org-tag-beautify.git",
   "unstable": {
    "version": [
-    20220224,
-    358
+    20220315,
+    1159
    ],
    "deps": [
     "all-the-icons",
     "org-pretty-tags"
    ],
-   "commit": "c9bfe0d84f1ea6aa18febf098ed47dbf7373782b",
-   "sha256": "1ldc8calzxszqr8zp3fq5ix72pszg7wjh48a7wmj2kzd6p56akh6"
+   "commit": "aad66c775e3010f7af2ebd3e0914aa6a57127f1b",
+   "sha256": "01y53nh9z7y77gns28dg5s2sr672i3sb39vpflx7mhfcijkribzj"
   }
  },
  {
@@ -81493,17 +81861,17 @@
     20220227,
     1536
    ],
-   "commit": "604cee9fa5c16ddb2bf3ce163077e718465bbc1b",
-   "sha256": "035hx2kkwdar9cw12dj32lq8scvkwafswjhq3aiiw3q7v4icicbf"
+   "commit": "623d596ff02e54d7e090fa30c67a4d0dd4e7fe72",
+   "sha256": "0cnwrjhbp8jfsbax7v46xiq6xzcp4by73dbkkgw19bjj5mywiqc9"
   },
   "stable": {
    "version": [
     1,
     1,
-    3
+    4
    ],
-   "commit": "604cee9fa5c16ddb2bf3ce163077e718465bbc1b",
-   "sha256": "035hx2kkwdar9cw12dj32lq8scvkwafswjhq3aiiw3q7v4icicbf"
+   "commit": "623d596ff02e54d7e090fa30c67a4d0dd4e7fe72",
+   "sha256": "0cnwrjhbp8jfsbax7v46xiq6xzcp4by73dbkkgw19bjj5mywiqc9"
   }
  },
  {
@@ -81602,30 +81970,30 @@
   "repo": "marcIhm/org-working-set",
   "unstable": {
    "version": [
-    20211112,
-    1600
+    20220228,
+    1652
    ],
    "deps": [
     "dash",
     "org",
     "s"
    ],
-   "commit": "729445496d94ea0050706007391817ef84dc0226",
-   "sha256": "0xa545wbh7kjbpry74x2bkw6rs9dshlajb5i17zc6v8zf400ds4r"
+   "commit": "25ddd0169eafece581bbb4919427a4d64dab8ae8",
+   "sha256": "08s9rf57yci4xla6dlkb9av9qd2nwls487vxr4zfyb932j8vdp4h"
   },
   "stable": {
    "version": [
     2,
-    5,
-    4
+    6,
+    1
    ],
    "deps": [
     "dash",
     "org",
     "s"
    ],
-   "commit": "f5512304dccc152816f9957f5627c814bcb0f683",
-   "sha256": "0kg2bjwp66fml3836zfr15aadh5d7srg8ai69g0nxk1kmalbxkdv"
+   "commit": "25ddd0169eafece581bbb4919427a4d64dab8ae8",
+   "sha256": "08s9rf57yci4xla6dlkb9av9qd2nwls487vxr4zfyb932j8vdp4h"
   }
  },
  {
@@ -81878,8 +82246,8 @@
     "ht",
     "s"
    ],
-   "commit": "9570a0d438cd41332e273a057cd697de859a39ec",
-   "sha256": "1b7wn7b50nrps72v25c644bm19j7z0d2scpdh1bjmk1zz0mdzazx"
+   "commit": "3cdd1985ec06fe42b81f3029512c7530a33f15c8",
+   "sha256": "0xg4vikw8k3kzn5vlqcf1jagalnq2xwd4wps8l37fr1iqkpr7wqb"
   },
   "stable": {
    "version": [
@@ -82288,6 +82656,29 @@
   }
  },
  {
+  "ename": "osm",
+  "commit": "6836bd94e02dd18c0a865824e1b3f285905aefc4",
+  "sha256": "12zlr5l8x98gzasz79f1d1i8f486c3djx46v5p0zzabmm06vfhai",
+  "fetcher": "github",
+  "repo": "minad/osm",
+  "unstable": {
+   "version": [
+    20220325,
+    2356
+   ],
+   "commit": "881b1c969fcf3dae5c020ce520e5a16f8f2b6f18",
+   "sha256": "06ryshf804m6npygf8546kxg1xsjsl52kgbzr147h2ay5kq90q06"
+  },
+  "stable": {
+   "version": [
+    0,
+    6
+   ],
+   "commit": "f76decfd0e94d5fc030a1d5c3230c213c87b47ef",
+   "sha256": "0aiq2z9vv4jsl0s0x9vpjgp0mnn27wanhirzj3h80ivgiphzs7l5"
+  }
+ },
+ {
   "ename": "osx-browse",
   "commit": "081aa3e1d50c2c9e5a9b9ce0716258a93279f605",
   "sha256": "06rfzq2hxhzg6jh2zs28r7ffxwlq40nz954j13ly8403c7rmbrfm",
@@ -82651,15 +83042,15 @@
   "repo": "alphapapa/outshine",
   "unstable": {
    "version": [
-    20191112,
-    1414
+    20220326,
+    540
    ],
    "deps": [
     "cl-lib",
     "outorg"
    ],
-   "commit": "9334b555aaf1426a9e405a57b80809a1615627b3",
-   "sha256": "11r6advraz5rkrxr25mj0wpfgzxcvn5gzppsc7ma51zqfmijg7dk"
+   "commit": "bf1eed10dd7a89b63d0fc014944033db397c1e23",
+   "sha256": "19ni7j84361if3kyap1jf2xj0w3myp9iiz52gjcmbgk1g1g9ycdc"
   },
   "stable": {
    "version": [
@@ -83045,14 +83436,14 @@
   "repo": "kaushalmodi/ox-hugo",
   "unstable": {
    "version": [
-    20220225,
-    358
+    20220322,
+    137
    ],
    "deps": [
     "org"
    ],
-   "commit": "8503350603c10d1e264f5599ae288fd71725919f",
-   "sha256": "1a5idw9p83m3jnf8s3f0lg28pw5059n05q1m4j5d92wajxlxf2wv"
+   "commit": "d04f41af6d128ccb9421c9bcd83b5fb12d14f440",
+   "sha256": "0qqaqykcm3pzc8a3ap4jnspn2p1034f6qhv6xyf43iqy8nhvrl03"
   },
   "stable": {
    "version": [
@@ -83546,11 +83937,20 @@
   "repo": "jjuliano/org-simple-timeline",
   "unstable": {
    "version": [
-    20210118,
-    536
+    20220321,
+    2115
    ],
-   "commit": "238e05b01dde37fa27a3a8943cc04dcc9b9b83b2",
-   "sha256": "0949gabr0wfsrzzaf217jsaawkc3gj1lxkrzwp3bigmxngsn4ykn"
+   "commit": "b28bd4ccd5fa114c0f51b9766f0b9be7fe05fdd8",
+   "sha256": "0l71bhbgs2g0gbfl8lf6p2hnnyma26qk67q59x935hkgjbb4vx1z"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    0
+   ],
+   "commit": "b28bd4ccd5fa114c0f51b9766f0b9be7fe05fdd8",
+   "sha256": "0l71bhbgs2g0gbfl8lf6p2hnnyma26qk67q59x935hkgjbb4vx1z"
   }
  },
  {
@@ -84159,8 +84559,8 @@
   "repo": "r0man/paimon.el",
   "unstable": {
    "version": [
-    20220218,
-    1904
+    20220325,
+    1032
    ],
    "deps": [
     "aio",
@@ -84172,14 +84572,14 @@
     "request",
     "transient"
    ],
-   "commit": "a05e38a6303239d899afb116763f4fa06f2088dc",
-   "sha256": "08ab0x44fz44gxr9gwyh8zck8sf571snfl7pmj995dwbq27pqbjd"
+   "commit": "8e28efe96a171b04b1fd83f763ca26e939dd44ed",
+   "sha256": "1d3bcy1wb7wsw6qqihwdy835z32pibz9d8ia8xcarzcg5c983is8"
   },
   "stable": {
    "version": [
     0,
     1,
-    1
+    3
    ],
    "deps": [
     "aio",
@@ -84191,8 +84591,8 @@
     "request",
     "transient"
    ],
-   "commit": "a05e38a6303239d899afb116763f4fa06f2088dc",
-   "sha256": "08ab0x44fz44gxr9gwyh8zck8sf571snfl7pmj995dwbq27pqbjd"
+   "commit": "b29ccfcedefd03cc05d98cd06a5935ecf4bd6917",
+   "sha256": "1wd1z2l0jyx20y2h95w6ybjabjn613m09gmrp6bj13ry4355sfvs"
   }
  },
  {
@@ -84709,8 +85109,8 @@
    "deps": [
     "s"
    ],
-   "commit": "fbb88260179dd92264325dee37d7898619407558",
-   "sha256": "0ysgwj56wj8cbm8lrn24r89rbsxgc3s8idvx9x5apxddcjin80ik"
+   "commit": "c6330d9fc28fe92c83415c2a56e675a6e04841fa",
+   "sha256": "1bgpbc38f37ja6xsny7q28wwvg0m6hs34zgqk3q39zadq595q6iy"
   },
   "stable": {
    "version": [
@@ -84786,11 +85186,11 @@
   "repo": "clojure-emacs/parseclj",
   "unstable": {
    "version": [
-    20220207,
-    1351
+    20220313,
+    1649
    ],
-   "commit": "90595049634549e6d8872f719b13e9555897d17b",
-   "sha256": "0ifc9gyp7hr97ssnsqxiwrzmldqysz874crlg6jm4iy5l9fyls22"
+   "commit": "f32c041f2b301e790429fd16677c8cab11645702",
+   "sha256": "1i3xrhfhdjadq6qyn492r37ayd88cna1yih87b9n3iky1ziryljj"
   },
   "stable": {
    "version": [
@@ -84950,16 +85350,16 @@
   "repo": "zx2c4/password-store",
   "unstable": {
    "version": [
-    20200328,
-    1214
+    20220306,
+    2230
    ],
    "deps": [
     "auth-source-pass",
     "s",
     "with-editor"
    ],
-   "commit": "eea24967a002a2a81ae9b97a1fe972b5287f3a09",
-   "sha256": "0vsdy989b69widmvaj2hzkmraddwzkpbbnj16gv95bhl51av2582"
+   "commit": "c4d8a1d815e79ddd89a85d3e36a41d29f0475771",
+   "sha256": "1gcpnh34ra7ahzmkh6rh4wkp745f8n14jbrdq2mhgg4zvxc2w83w"
   },
   "stable": {
    "version": [
@@ -85010,20 +85410,20 @@
  },
  {
   "ename": "password-vault",
-  "commit": "71ad3fa96afa18b5002faf9272732c7d09826493",
+  "commit": "1a054aba2409fb8ae12a634952f3d1336a14eb70",
   "sha256": "17i556xwq6yaxv9v18l1abcpbaz6hygsa4vf4b68fc98vcy7396a",
   "fetcher": "github",
   "repo": "PuercoPop/password-vault",
   "unstable": {
    "version": [
-    20160126,
-    1820
+    20220321,
+    1521
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "dc56e6c2f5da66f1ab63736cecf08fb2c6c2b30f",
-   "sha256": "0921xwg3d3345hiqz4c1iyqwvfyg8rv0wggcnig7xh9qivspag4c"
+   "commit": "763750e2fbdd3bc96dfd256215b5e49394b7bef3",
+   "sha256": "0zwnk5ljack42f3nmjwrhsx7f7cr52r3w5y414c5bg9yk3y47dda"
   }
  },
  {
@@ -85904,14 +86304,14 @@
   "repo": "nex3/perspective-el",
   "unstable": {
    "version": [
-    20220225,
-    2254
+    20220320,
+    437
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "7297dabf6de83642e8242052fe95c79d4233eac7",
-   "sha256": "0rf28lq8nz3mx7hkcny10wwiaj27ph8hwpvqjji86x89w9w67pqr"
+   "commit": "d3afc52ed098b713b6607943bd1ee0ef899db267",
+   "sha256": "0bbpmrjyz0zfgbfhf340axnx93ln39ml58frpqiiablz9n1xvj0j"
   },
   "stable": {
    "version": [
@@ -86515,8 +86915,8 @@
   "repo": "emacs-php/phpactor.el",
   "unstable": {
    "version": [
-    20220120,
-    1919
+    20220310,
+    1511
    ],
    "deps": [
     "async",
@@ -86524,8 +86924,8 @@
     "f",
     "php-runtime"
    ],
-   "commit": "585862496e8ac9f496c0c99c5b97af456cb1f73c",
-   "sha256": "1y5g5g2d5g9xiw3vwxqnmz58gyfn9hybpfzcjhyjhnjma74jkqfr"
+   "commit": "34195f1533209e2ffd0f898a69c7db2bffd1eabe",
+   "sha256": "1xp4v5dm2x31xp5rq80jii2y8nprqd3jcmzpc0dp9xk3fq9hbq7l"
   },
   "stable": {
    "version": [
@@ -87121,11 +87521,11 @@
   "repo": "juergenhoetzel/pkgbuild-mode",
   "unstable": {
    "version": [
-    20210123,
-    1507
+    20220312,
+    1316
    ],
-   "commit": "8a5e95c8514315cb40c47f1acdb68a4ace921497",
-   "sha256": "1p903a3jbw1jp5l6d6mb50dq5zd8951qxh2b97vy30p3nnl8i0lj"
+   "commit": "3cbf38c22d783ac77d5dbc69a38afa04e0aa4803",
+   "sha256": "14ll9z57jlnbvsnzarqi0k0a0bxnkc9y4r52xah1h09v5fmcyi8a"
   },
   "stable": {
    "version": [
@@ -87156,10 +87556,10 @@
  },
  {
   "ename": "plain-theme",
-  "commit": "e170913006b93f4c235c403c5cde64d274b91e1f",
-  "sha256": "11hafn2wsj5dskf18q3jd6vqj20nhzii067ll8l38977c070qqlh",
+  "commit": "c06b0212e521aa168ad4c34c312235d6ad38b004",
+  "sha256": "0ij63lfpmligzp9m6lvww7jri9cs6gkzhy49wdjqhi5dy63y2xpv",
   "fetcher": "github",
-  "repo": "alpakido/plain-theme",
+  "repo": "sowelisuwi/plain-theme",
   "unstable": {
    "version": [
     20171124,
@@ -87762,14 +88162,14 @@
   "repo": "wailo/emacs-poet",
   "unstable": {
    "version": [
-    20190124,
-    654
+    20190403,
+    708
    ],
    "deps": [
     "request"
    ],
-   "commit": "32382057b3e4b8a02ec5ac3190dbe4b93d058741",
-   "sha256": "1p8x7g3hg6yw51c67kznvldrvwnp67l9b6drnmck8glwx0nxb6zr"
+   "commit": "38a9635cab4799224153f89ff47cf1b060fb3939",
+   "sha256": "1h8svmh2pmg822jpag33ahmhpvdc77fbxxn205kx8p3vk362vbvi"
   }
  },
  {
@@ -88223,11 +88623,11 @@
   "repo": "polymode/polymode",
   "unstable": {
    "version": [
-    20220225,
-    1521
+    20220322,
+    824
    ],
-   "commit": "8ba56f841cbbee102e4fd00dff0f88646907bd09",
-   "sha256": "0vz52wagbpjg3c2br3cl9zhciq74c1is81crkrxbcdwsms1bwhiw"
+   "commit": "2094c92403fe395dfb2b8b2521da1012a966e9ab",
+   "sha256": "0fgg6vw81cqp4ixm9iwh9r1dw6l4pimpdxjcvvpmfff6ia4pqqws"
   },
   "stable": {
    "version": [
@@ -88266,16 +88666,16 @@
   "repo": "SqrtMinusOne/pomm.el",
   "unstable": {
    "version": [
-    20220208,
-    1648
+    20220315,
+    2038
    ],
    "deps": [
     "alert",
     "seq",
     "transient"
    ],
-   "commit": "6dc3b5f913908bca8db85e4b2161a1de76c60a58",
-   "sha256": "1rxlz0l58g2vvlhf0y3s7abfph3nplvm7q4vrymgj1s251kjxmmi"
+   "commit": "2a2673bdc8e2c2af99040b14e97b39271806bf79",
+   "sha256": "09w3m2gb0qv3cr3kklv37rgpcaxvyp21sdjmb15c26cf0i8rc86c"
   },
   "stable": {
    "version": [
@@ -88451,11 +88851,11 @@
   "repo": "karthink/popper",
   "unstable": {
    "version": [
-    20220216,
-    1906
+    20220309,
+    457
    ],
-   "commit": "7b02960025fb89384f78ba12ad03cae0ddf1e411",
-   "sha256": "0p12zz2lhm10yikhnq52z66xwy64gcvig42bzajv5q7x09qvvna7"
+   "commit": "60297066e31e012b8087b1b7818febd73e02d2cf",
+   "sha256": "1ivj61hjg5gqlivb04ynnk2mry8bac9mmf9f473naplzwnd741p1"
   },
   "stable": {
    "version": [
@@ -88477,8 +88877,8 @@
     20211231,
     1823
    ],
-   "commit": "37a04117ac83b3ed24a2cba894443a32795c2f1a",
-   "sha256": "0vyg6va1wzl0h9sd85a2zy922w6q8za0fq6v07hcq956lhh6wi6y"
+   "commit": "e112ef1cc6c86151ea97a0bad49026fbbacc768c",
+   "sha256": "1iwq7p7f1xpiwzlizqqm2jzf2ly0cgaj8zskjrya0lymfz8rw7dx"
   },
   "stable": {
    "version": [
@@ -88621,8 +89021,8 @@
     20210215,
     1849
    ],
-   "commit": "1184368d3610bd0d0ca4a3db4068048c562c2b50",
-   "sha256": "0inm6wbfkw6b9bwikd77d0zmk6ma9fzfs11acblp5imq202v76ra"
+   "commit": "8f90c6faeecd77c88883cafc03c37a5cce4b1982",
+   "sha256": "0zs4z22ib34jg1lblqr5b0gdywb88fp769dk2x53s6sq1gi7cvkp"
   },
   "stable": {
    "version": [
@@ -88996,8 +89396,21 @@
   "repo": "LaurenceWarne/prefab.el",
   "unstable": {
    "version": [
-    20220210,
-    1658
+    20220314,
+    2005
+   ],
+   "deps": [
+    "f",
+    "transient"
+   ],
+   "commit": "4d9cac415a4ee86bb5793ce18a350a30f562c2fd",
+   "sha256": "0f4cm5kvsa14yl93vw750ll51vf1g4b04vl6zivq1nzrb8gjj6zr"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    0
    ],
    "deps": [
     "f",
@@ -89033,8 +89446,8 @@
     20211228,
     417
    ],
-   "commit": "3dbcef387502d309d130a518a18d48cd2f0e15b7",
-   "sha256": "024l7s0b6apbzanw3cnhjypxnxfinfb5b3nhaabrc138m5pis8j5"
+   "commit": "c5295a9eecbd2935bb57684a4422638e03bf738c",
+   "sha256": "1wfmynbqaqvrkjdncx0wmqxz6v8zlfmqlh5l3h6876jin97i5fbv"
   },
   "stable": {
    "version": [
@@ -89138,6 +89551,36 @@
   }
  },
  {
+  "ename": "prettier-rc",
+  "commit": "9511d2926f50ac20b9c5b99c14cf2d51e377c981",
+  "sha256": "0gkyws3pmnswc07yzvr39w439f5pcwfja0sg4460shkrmqqcwv8b",
+  "fetcher": "github",
+  "repo": "jjuliano/prettier-rc-emacs",
+  "unstable": {
+   "version": [
+    20220321,
+    1516
+   ],
+   "deps": [
+    "prettier-js"
+   ],
+   "commit": "f2aa1a7469d62a11479a3abb826c8fb96dd00082",
+   "sha256": "1rlfh2c680nl2bbv82mp4y6k6cp7qwp2axi0v998zb62ymw6p1bv"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    0
+   ],
+   "deps": [
+    "prettier-js"
+   ],
+   "commit": "eaef4cd76094c7351a2da508b4bc3b25966d0da6",
+   "sha256": "1ylaikaqpd4f1p8ir5y271dy6xv8jvdzs7ail5ac0lxk3m8gl4ki"
+  }
+ },
+ {
   "ename": "prettify-greek",
   "commit": "23c8f10205187babb17e3abc3dc40eb1938e6640",
   "sha256": "1izl6r6i3zbhd7r7lz2k42yyz6qcng11wfmb7lx4883dj00flsl7",
@@ -89254,11 +89697,11 @@
   "repo": "kcyarn/pretty-speedbar",
   "unstable": {
    "version": [
-    20220124,
-    16
+    20220303,
+    1726
    ],
-   "commit": "4153fed2c83faad90803f57a3c9364609eb7b3eb",
-   "sha256": "0s3mms1lvid47g77pp6681zrnvx1v0s08xyk3272nja5w16fizyh"
+   "commit": "56dc9f114fcc55843e182cde1fc9d7a14c261c6a",
+   "sha256": "1hz67jhvg9n9d07lil6zqciqhh512k0fv54dl605p7vi704ma2ir"
   }
  },
  {
@@ -89566,8 +90009,8 @@
     20210715,
     1213
    ],
-   "commit": "15b58b2220b6a09922164cedc0892f57ad148785",
-   "sha256": "1dpx6i0fhkkiqcx4la21grsyhkzcwp02qzpa7j9hc984yv1s1973"
+   "commit": "7bd4d77808e15bc3845b0ab2421bb31c20e981cc",
+   "sha256": "16ybwsqlw5j92bynm9x56s351y4mh2s51ycbcfcl3460b9adqsxl"
   },
   "stable": {
    "version": [
@@ -89723,11 +90166,11 @@
   "repo": "bbatsov/projectile",
   "unstable": {
    "version": [
-    20220227,
-    551
+    20220313,
+    1334
    ],
-   "commit": "2c948f3a8ed378ae5fd800d2c66aece06ba058b8",
-   "sha256": "1nmdyd8bldgs0zcsdqdjj4c5kq3742019qlxprx2cqs640fi5y2s"
+   "commit": "20df208385ce7b80207602c9931e31094eca85fb",
+   "sha256": "15nnmnapyclk6v69l2l0vhy5k5x682l0kj9nj454nmdqqh4lmkwy"
   },
   "stable": {
    "version": [
@@ -89844,8 +90287,8 @@
     "projectile",
     "ripgrep"
    ],
-   "commit": "40e871dcc4519a70981e9f28acea304692a60978",
-   "sha256": "0snn12iibz5frsx6yk6c31hb8knvsd568ghw9jjka5vxdjzap7p9"
+   "commit": "4ed5c741233a81d96115f556784269042070901e",
+   "sha256": "1bz9srlimpr5lzsjd02jq23h0vg2lnk921m24g0wsrdrccvmfxi2"
   },
   "stable": {
    "version": [
@@ -90123,17 +90566,17 @@
  },
  {
   "ename": "proof-general",
-  "commit": "135c8f2a04739145b500b8742a697907e398d270",
-  "sha256": "10zif9ax4d3m8sa9y2xqz7g24xa2r3m2x5l0zqa06wm4afq29p87",
+  "commit": "5bab170dd89e99f7c8430a11e6a2d8191b60f746",
+  "sha256": "0fx1avmkwi8ilmv0lxk6pp91hd6saycggca52z8rvjz66h9rmq3c",
   "fetcher": "github",
   "repo": "ProofGeneral/PG",
   "unstable": {
    "version": [
-    20220209,
-    1726
+    20220310,
+    2253
    ],
-   "commit": "df19c7ba0eadf9f47e9dd757a7d0350fc967da99",
-   "sha256": "0xh9x6b4fmbnvs8awdkg74msabchqf7lx9w3z14qwfzn4jjzqwlb"
+   "commit": "f34a4938399e6b863f14315ba5eeefb5ce047c50",
+   "sha256": "1cgnjpxjrdwf1sk8a7b76gsdvlsl8p0cwb4yhizvafm5p4276v5s"
   }
  },
  {
@@ -90225,20 +90668,20 @@
   "repo": "google/protobuf",
   "unstable": {
    "version": [
-    20211013,
-    1726
+    20220303,
+    1716
    ],
-   "commit": "cbc9826db7a7927956e4c5094427580291f55f47",
-   "sha256": "0zvlq5lqy5c6bc02v6442ljw8gp377pqnkfv3h4x60xqv0lqpfjm"
+   "commit": "b5a35bcc7e4cc4ff00eb105449b300fca3a8b0d2",
+   "sha256": "1gydvww2n64gsa2nyi5150jwsgxg0mdpxr3h9kpzdd4rqxab07z7"
   },
   "stable": {
    "version": [
     3,
-    19,
-    4
+    20,
+    0
    ],
-   "commit": "22d0e265de7d2b3d2e9a00d071313502e7d4cccf",
-   "sha256": "0vhzy6xy7r7622yid374b4fhnws0x9xpfcnhd1gwp0fmi5g3q54v"
+   "commit": "bc799d78f81115940eec953e2937245c70e3e6e4",
+   "sha256": "0qnr8dp0cc2sfhacgjws1kc3s5c1xvbcrn5pi83p0axj0kdhjdbm"
   }
  },
  {
@@ -90381,15 +90824,15 @@
   "repo": "thierryvolpiatto/psession",
   "unstable": {
    "version": [
-    20211228,
-    839
+    20220318,
+    1129
    ],
    "deps": [
     "async",
     "cl-lib"
    ],
-   "commit": "97f6fb308fcb007e53c7277fb4603a6faef99c79",
-   "sha256": "0k2myrd1ar2nlgnavsvbawiff7x27fr72921xnzp7rwnl07klyji"
+   "commit": "328c64804c4c9e15b373c7ba3bc82bfdfb27971a",
+   "sha256": "1mmn5qmjn77jh0zjfgl6w87yxxq116cb7rj3an0svmaabqsmwpjj"
   },
   "stable": {
    "version": [
@@ -91319,17 +91762,17 @@
     20210411,
     1931
    ],
-   "commit": "90dafaef06809eab8fb1dda8bc0955b959fe1e23",
-   "sha256": "19rxhzbgj5fp0awgij7i7p26ippd5qf4a2c4yzm8vjyjvvmmd5vs"
+   "commit": "556304eb1e54c67940d0f9d0497ffa368b50a22a",
+   "sha256": "0j6vwjw83wyhalwzic94pimjvjwsxyyz6mh6zsic44hc80ycnrj0"
   },
   "stable": {
    "version": [
     2,
-    12,
-    2
+    13,
+    1
    ],
-   "commit": "eec287fae66f8fc514d5daa9caee46fd0e0cb6d9",
-   "sha256": "0spmy7j1vvh55shzgma80q61y0d1cj45dcgslb4g5w3y602miq5i"
+   "commit": "0e1ca11ac65cbe5a65437518fca1e25f1ad0e48e",
+   "sha256": "049mfnlwan1qq0awnxriw29v285ly4d3r8a8xgxhzpwg3k2z3sdn"
   }
  },
  {
@@ -91530,11 +91973,11 @@
   "repo": "glyph/python-docstring-mode",
   "unstable": {
    "version": [
-    20190716,
-    921
+    20220308,
+    22
    ],
-   "commit": "ec253711f2bdcb3848046bb68f6405a7bf9eb0fb",
-   "sha256": "0m27h2ycjz212r012wh4wsahidclmb74gk9g3v6ym9a2120bk0dh"
+   "commit": "01d0470498d08ce9d99dd4ce709c567229f857d2",
+   "sha256": "1573qiqllckd5xbdbll8h786v5znahd0l5hipda9i6ppb1vj3vwg"
   }
  },
  {
@@ -91667,11 +92110,11 @@
   "repo": "python-mode-devs/python-mode",
   "unstable": {
    "version": [
-    20220223,
-    1329
+    20220315,
+    1118
    ],
-   "commit": "b26546ff9d5d112baf822563beffe6f7fdd3c327",
-   "sha256": "0yx5bq6fq6y1v69cmwxchmxx4lnq5zgc5q0izz392bbpbyha9xzc"
+   "commit": "29c6815c585c200eda2541b678e499d06c3e14d2",
+   "sha256": "1b146lq5hwr76fl1abg189xsjdvz8ggaas18n8d3yx4zvjskiqs9"
   },
   "stable": {
    "version": [
@@ -91700,7 +92143,7 @@
     "s",
     "transient"
    ],
-   "commit": "b603c5c7f21d351364deeb78e503d3a54d08a152",
+   "commit": "ea53891a219659d9339220d5db50a8c525f199af",
    "sha256": "176c4banbgd474iw49cw17wbvncr13xwgqjsfpvvakd0awpyvzw1"
   },
   "stable": {
@@ -91837,6 +92280,24 @@
   }
  },
  {
+  "ename": "pyvenv-auto",
+  "commit": "ddf36d8974cc527db81d02c4f3792e16d1e5d80a",
+  "sha256": "141fjkrncmyls064w6kjxgj45zxip71p50scnrf74fizdbw2kn6d",
+  "fetcher": "github",
+  "repo": "nryotaro/pyvenv-auto",
+  "unstable": {
+   "version": [
+    20220315,
+    1606
+   ],
+   "deps": [
+    "pyvenv"
+   ],
+   "commit": "59ece8554bf249f30984c81c103a5704d2fb27bf",
+   "sha256": "1f599q5bd89k68s0m9mq08a2f3465j00hklnmbyv0cm3j0majwzm"
+  }
+ },
+ {
   "ename": "q-mode",
   "commit": "fff65433eff01d6239809df4c047f0e4349cc4a9",
   "sha256": "1vv3hynd6k050nxln83l703ymzyh1kl69cdy4yabdvmkqw4gbshz",
@@ -91952,6 +92413,27 @@
   }
  },
  {
+  "ename": "quarto-mode",
+  "commit": "9534fae4c021b7f9c55175a189156c8658084821",
+  "sha256": "1cg26blid1kbnk7r1gzlpsd5gqgiqyr63kld0hqpih066xx5kaj5",
+  "fetcher": "github",
+  "repo": "quarto-dev/quarto-emacs",
+  "unstable": {
+   "version": [
+    20220306,
+    2243
+   ],
+   "deps": [
+    "markdown-mode",
+    "poly-markdown",
+    "polymode",
+    "request"
+   ],
+   "commit": "9250975a4602d7a78efa2b0e477088aa2df5659c",
+   "sha256": "0n0cqcfmq9d36vdqa47scpny8hpdr975ykw01nf7924zacwgnjfb"
+  }
+ },
+ {
   "ename": "quasi-monochrome-theme",
   "commit": "a9c8498e4bcca19c4c24b2fd0db035c3da477e2a",
   "sha256": "0h5pqrklyga40jg8qc47lwmf8khn0vcs5jx2sdycl2ipy0ikmfs0",
@@ -92151,8 +92633,8 @@
     20210904,
     1553
    ],
-   "commit": "78317951cd3db986d811de616b7035559831749b",
-   "sha256": "0z7zpsmhfhnzvf1vqpsj5wsnlxmyxgc1z6599xsbvl30fw589y1r"
+   "commit": "c680f5137c49e352ff3779f9c82a3f1bd4a2d9b6",
+   "sha256": "1jjvjdig87krjmnwlxmlal56ks0nx4pgwrb5836srkd3aqlir90b"
   },
   "stable": {
    "version": [
@@ -92310,11 +92792,11 @@
   "repo": "greghendershott/racket-mode",
   "unstable": {
    "version": [
-    20220222,
-    1947
+    20220325,
+    1342
    ],
-   "commit": "30b5dfdd3a11a513b1c21e448fc8cb1ecc8a71bd",
-   "sha256": "0fgg2qn5b5d0zm2id80jx9jrdyb4z1fjd8sbn11ajiawsjb9wb3d"
+   "commit": "c1774ad168bd0857cf695ad39ae4d61cd668f6d9",
+   "sha256": "1rksxymhadsj6zikhbn68j9iq0b01m9ajdddkk4kbaczh35vwyx5"
   }
  },
  {
@@ -93672,8 +94154,8 @@
   "repo": "thanhvg/emacs-reddigg",
   "unstable": {
    "version": [
-    20220120,
-    2200
+    20220312,
+    1339
    ],
    "deps": [
     "ht",
@@ -93681,8 +94163,8 @@
     "promise",
     "request"
    ],
-   "commit": "edabb5df2aa0fee0c0f34b862505977dc13449cc",
-   "sha256": "0g6kj94904ymsk54y5f6ynh5w562hy6bx9lngnwrqxcga1xydk71"
+   "commit": "911a1c6310b42226392fd03dc1746a4c6fc4eb95",
+   "sha256": "0zljjqd1qyxh0p5rjphkljbl4b1kpmjw279axxp8y4hd67rk8fc2"
   }
  },
  {
@@ -93802,8 +94284,8 @@
     20181121,
     21
    ],
-   "commit": "49783bd5d83c1d1989838b5ecf4a240bcc994243",
-   "sha256": "163kj0hmvn7vgd86q0dhz3zimkiqabzylyvchnzaqc2y1mp4qhfk"
+   "commit": "ae76658873a647eb43d8cf84365a9d68e9a3273c",
+   "sha256": "1nqpiy0aw43acrrg8aa1sd0880ilychysk2r2c7kwk5dbnip3f29"
   }
  },
  {
@@ -94339,8 +94821,8 @@
     20211107,
     1907
    ],
-   "commit": "3336eaa97de923f74b90dda3e35985e122d40805",
-   "sha256": "0jckwy5zhz95d6l3lz8b9b34pppcjjzy97fg1wn8mqzhf3h460ac"
+   "commit": "c769cf33f2ac0a1a9798b508935c4b260e856ab5",
+   "sha256": "0dqcg1dlzirmgsgg8ar2csn5mnlpr64y6n5skrqc6wcshzyzp038"
   },
   "stable": {
    "version": [
@@ -94367,8 +94849,8 @@
     "deferred",
     "request"
    ],
-   "commit": "3336eaa97de923f74b90dda3e35985e122d40805",
-   "sha256": "0jckwy5zhz95d6l3lz8b9b34pppcjjzy97fg1wn8mqzhf3h460ac"
+   "commit": "c769cf33f2ac0a1a9798b508935c4b260e856ab5",
+   "sha256": "0dqcg1dlzirmgsgg8ar2csn5mnlpr64y6n5skrqc6wcshzyzp038"
   },
   "stable": {
    "version": [
@@ -94446,8 +94928,8 @@
     20210902,
     2140
    ],
-   "commit": "4bd88e4e835af2f9f7c0b65cf4488570126d4fef",
-   "sha256": "0k1h53kc2xmh5kc461rlac81mam8srkasc1jfb52a6qbscj3lspd"
+   "commit": "9c32dc6fcd05c72177ec1659c33f3b834233b890",
+   "sha256": "0vpxk1hmic9r1z7z2yxh1pff2m7zlvrh3j27bdcc0q3xnbzkmh7m"
   }
  },
  {
@@ -94619,8 +95101,8 @@
     "f",
     "s"
    ],
-   "commit": "7f37c27f52049dae3c2630e5383dcf29fd2260d4",
-   "sha256": "0a8cf6wp918mxmx90z26mafi6gzyh8sj5qdc3jzjm5yzv4a2n3n2"
+   "commit": "4ff5fd1660eabaccca1fdbec8bdfbe0ad84eeb6a",
+   "sha256": "18c5gg6cgxg6dijrc6ijiw0mkxfkyb6pw3dd8vzipz17pszf2bjf"
   },
   "stable": {
    "version": [
@@ -94668,14 +95150,14 @@
   "repo": "a13/reverse-im.el",
   "unstable": {
    "version": [
-    20211005,
-    2158
+    20220309,
+    1919
    ],
    "deps": [
     "seq"
    ],
-   "commit": "380cce8deb1ea7ad79a8b1aaec4a753bd300b6fa",
-   "sha256": "039y306py7fb3pn4nhlq2mb7rznd6kv2m9bfpd7hbxpfysj7kmi5"
+   "commit": "50b8376f152916bc200635a112db9439bc3cc9b5",
+   "sha256": "12lk6k0jwz3y9bjyxyl14g8qys4zcacb80mkc0hgz0bb7797hp3z"
   },
   "stable": {
    "version": [
@@ -94790,28 +95272,28 @@
   "repo": "dajva/rg.el",
   "unstable": {
    "version": [
-    20220116,
-    1228
+    20220319,
+    1216
    ],
    "deps": [
     "transient",
     "wgrep"
    ],
-   "commit": "dcbaa48689d3d73f8a142a1ab5f1e722d7434ff9",
-   "sha256": "1djccv9fdl0a3jlv3xsflds1hx5kam2n2ghhv7hr2whivlh9wkrb"
+   "commit": "5673681708685cce34521a1af48609b00a642b15",
+   "sha256": "0b1lq45vsn6fylwn1wmmfwc8mzwg4mgmj0kfqic039yagf9rvnpv"
   },
   "stable": {
    "version": [
     2,
-    1,
+    2,
     0
    ],
    "deps": [
     "transient",
     "wgrep"
    ],
-   "commit": "0fa6d33d2f3123aecd0b0dbc5fa3d884edf10a92",
-   "sha256": "17f11znjyfnxs5y0zafcx9aa055wkw3igzk9gy0cipnyp42yb4v7"
+   "commit": "77a709626609e7069f457e1b1885b76ebb98a354",
+   "sha256": "0a16g9phyy6c6vn5zfkpcpi90ixbx1ivp4wapwg189v77k2810by"
   }
  },
  {
@@ -94822,20 +95304,20 @@
   "repo": "ROCKTAKEY/rhq",
   "unstable": {
    "version": [
-    20220128,
-    1344
+    20220308,
+    1254
    ],
-   "commit": "8d7e25de54f0b11df90a21d3fd2f7fd7608607f0",
-   "sha256": "17qiigk6ikfcyjgwxifmvwkyl8pa6iapyxz2qs0sbskw5d4mhdan"
+   "commit": "9cd8c2d61c3b8d4c92542a8c7f7493f61a850dc0",
+   "sha256": "0pj9900jmlid6ygwv5r8nnz1j4axcspyk73hl2vi1xvlna93yxdr"
   },
   "stable": {
    "version": [
     0,
-    5,
+    6,
     0
    ],
-   "commit": "f554339b7a0be35ba43631a316a797edb888b206",
-   "sha256": "0pnh1mgv5xi11nrd0w2in5p412pqa29x3xvxj5q24lrwcjpl37lw"
+   "commit": "32d801fb79d45ef895c4e009884dd82ea3a6e466",
+   "sha256": "0nfi6mgar27qqf9hr9cnzq9asdisbkrwdlfjq9fzhgdb984xn22x"
   }
  },
  {
@@ -95095,11 +95577,11 @@
   "repo": "nlamirault/ripgrep.el",
   "unstable": {
    "version": [
-    20190215,
-    841
+    20220309,
+    1746
    ],
-   "commit": "40e871dcc4519a70981e9f28acea304692a60978",
-   "sha256": "0snn12iibz5frsx6yk6c31hb8knvsd568ghw9jjka5vxdjzap7p9"
+   "commit": "4ed5c741233a81d96115f556784269042070901e",
+   "sha256": "1bz9srlimpr5lzsjd02jq23h0vg2lnk921m24g0wsrdrccvmfxi2"
   },
   "stable": {
    "version": [
@@ -95194,11 +95676,11 @@
   "repo": "jgkamat/rmsbolt",
   "unstable": {
    "version": [
-    20210920,
-    1617
+    20220325,
+    1526
    ],
-   "commit": "54bdd5090e0e3ae907d3f9075eb3a3fab0ba497a",
-   "sha256": "0i11kmqnbb201x9gmai279lni7csgq6isi1klpzch2c6y6pw01n0"
+   "commit": "2e1ff0653e5355a2214e735f0ada287071457c6a",
+   "sha256": "1ra2q2wnman6zdfmky296r8h73zhjwkika8r3czjx5nsg24464vi"
   }
  },
  {
@@ -95356,11 +95838,11 @@
   "repo": "DerBeutlin/ros.el",
   "unstable": {
    "version": [
-    20220119,
-    1543
+    20220314,
+    2026
    ],
-   "commit": "815a985d7426d716e9f588f6bbd3a12327c3acdb",
-   "sha256": "01hsnnxmvmk5vqga9781g1sff1fv2x77a4cmm3v5n94sv29jky4k"
+   "commit": "5e2bcd808f301b1a92cd583f2799d520bd802480",
+   "sha256": "0gb5bk1c10n4hr9dbwpgyk17qmd6bfqj9v9l0bmrbdvxafmnii8p"
   }
  },
  {
@@ -95940,8 +96422,8 @@
   "repo": "semenInRussia/emacs-run-command-recipes",
   "unstable": {
    "version": [
-    20220208,
-    1018
+    20220301,
+    2010
    ],
    "deps": [
     "dash",
@@ -95949,8 +96431,8 @@
     "run-command",
     "s"
    ],
-   "commit": "e2751673e19e55fa364bc917e150c72b8ccc3294",
-   "sha256": "178qs6k5z4s74xx4n6r4qadw4svarvm8sfdxm5z964166r8d3x1y"
+   "commit": "02a4d366e309b7dd6a45f8a94669a25d6fe80ea1",
+   "sha256": "0j634n2v8sqpybbmd62jayyamz28dzlmvr45bsijbwxn6b4pa8k0"
   }
  },
  {
@@ -96055,8 +96537,8 @@
     20220217,
     2009
    ],
-   "commit": "c8ae5dedb3deddaf35f6345da894ae26d156bf27",
-   "sha256": "01r727n9gp5c7pmgnka53igcaaphfjy7lqb9w8bjjp7db9ccnacd"
+   "commit": "26ecc903c50b2ffd289bbe981f9ad03626fc0057",
+   "sha256": "0jr7i85zacpwx3kqg7yb7mbz0ap8w3ydzb8rlf0syccqjiqwslnl"
   },
   "stable": {
    "version": [
@@ -96099,8 +96581,8 @@
   "repo": "brotzeit/rustic",
   "unstable": {
    "version": [
-    20220227,
-    1323
+    20220323,
+    1159
    ],
    "deps": [
     "dash",
@@ -96114,8 +96596,8 @@
     "spinner",
     "xterm-color"
    ],
-   "commit": "4140ce28ed7beda6b7a1cc6e6cbf242856f1dbb7",
-   "sha256": "0sd1n4wxw68hj2x87r5vhii3c36p64i36d4mx6ml8f91gxh4nrc6"
+   "commit": "6eec9713876d698510ee3715698fd42c1571e307",
+   "sha256": "17lcys2sm56c8bnj9vjs9mz6liir8cnybax0fxgcrjgfp38wxc48"
   },
   "stable": {
    "version": [
@@ -96624,8 +97106,8 @@
     20200830,
     301
    ],
-   "commit": "fef5275f9df821b169bcf5973646c10c9179e876",
-   "sha256": "1xrwbf4hvm3l33j35q0xii6yrzpqx9v0rvma8p7j41afhhv9fcp0"
+   "commit": "e34e756d264800b701c07414ceffd9dd768cdf84",
+   "sha256": "0v6njsp1g7m0qjss4rhmbnrg8yccxyk7dy477cbpdijxw3fdi2yv"
   }
  },
  {
@@ -96818,19 +97300,19 @@
   "repo": "ieure/scratch-el",
   "unstable": {
    "version": [
-    20190314,
-    614
+    20220319,
+    1705
    ],
-   "commit": "4813d82b39a451f2a6d5b730cd7ec49a9bdabcca",
-   "sha256": "0yiwq2gc4gdgfhaagpawhb7yrzc4fsnyb10w5d0q4whv64cj8555"
+   "commit": "f000648c9663833a76a8de9b1e78c99a9d698e48",
+   "sha256": "174d8ancnkgb7q62196kd6nrfib6rnwxw4visgbk1c6yd1w8kray"
   },
   "stable": {
    "version": [
     1,
-    3
+    4
    ],
-   "commit": "4813d82b39a451f2a6d5b730cd7ec49a9bdabcca",
-   "sha256": "0yiwq2gc4gdgfhaagpawhb7yrzc4fsnyb10w5d0q4whv64cj8555"
+   "commit": "f000648c9663833a76a8de9b1e78c99a9d698e48",
+   "sha256": "174d8ancnkgb7q62196kd6nrfib6rnwxw4visgbk1c6yd1w8kray"
   }
  },
  {
@@ -97093,20 +97575,20 @@
   "repo": "t-e-r-m/sculpture-themes",
   "unstable": {
    "version": [
-    20210828,
-    1634
+    20220311,
+    2122
    ],
-   "commit": "cce59d2bcc48d622f3978c583108cf853f21789c",
-   "sha256": "0f8aqq026j0wxkgs0p3yjq3r1jd30lk79199wrdk58x9120pp6z6"
+   "commit": "407cbed4145af8feb5232b1161a5f79b6a9878fb",
+   "sha256": "0x15fwrc53z1g517jrqyjdd8diil8sjdp9qhbhnbm2nsp97f07yk"
   },
   "stable": {
    "version": [
     1,
-    2,
-    2
+    3,
+    0
    ],
-   "commit": "57fb0022daf5ca753dc77ee9178267c710c318db",
-   "sha256": "01xw04v22dh60w49i8h72wa2hvhwpqgriv0chy90m8vmn2fz40wz"
+   "commit": "07d74b29908447ff33365c23686682066549d671",
+   "sha256": "1azfr5np6m2zg7r3ga172mls3x64gb3m57lcfzwxgb9l8pmjy3an"
   }
  },
  {
@@ -97183,8 +97665,8 @@
     "dash",
     "f"
    ],
-   "commit": "65498b584dd074f69e0c3fa61309542f77acd328",
-   "sha256": "0q27192qvf4p8cy0ks8bifag2zk2ncyz1ig1sjdwdbwx0drinw7p"
+   "commit": "09ae519ce825affeb6a033dac81bf7af946127ad",
+   "sha256": "1gprpjnm7r2faj53qcnch7s05s4jjrsh94hiji50kdi3lrwf2rs3"
   },
   "stable": {
    "version": [
@@ -97421,11 +97903,11 @@
   "repo": "raxod502/selectrum",
   "unstable": {
    "version": [
-    20220123,
-    27
+    20220323,
+    10
    ],
-   "commit": "26908ea0e88727f5eb6c5ebae7f9fbbe117ef25f",
-   "sha256": "0fd7nq7nxl9gjb37r14z5rdrk97p9z80z91i9744c1p6x714w702"
+   "commit": "7da932eeb89f1aa8060a73ddd040f95bbb127343",
+   "sha256": "14hplki838svbjpasmm9ik8c5xm0ji2xxrp61cq82dc6r0axg5w9"
   },
   "stable": {
    "version": [
@@ -97451,8 +97933,8 @@
     "prescient",
     "selectrum"
    ],
-   "commit": "3dbcef387502d309d130a518a18d48cd2f0e15b7",
-   "sha256": "024l7s0b6apbzanw3cnhjypxnxfinfb5b3nhaabrc138m5pis8j5"
+   "commit": "c5295a9eecbd2935bb57684a4422638e03bf738c",
+   "sha256": "1wfmynbqaqvrkjdncx0wmqxz6v8zlfmqlh5l3h6876jin97i5fbv"
   },
   "stable": {
    "version": [
@@ -97882,14 +98364,14 @@
   "url": "https://codeberg.org/FelipeLema/session-async.el.git",
   "unstable": {
    "version": [
-    20211227,
-    1609
+    20220302,
+    2008
    ],
    "deps": [
     "jsonrpc"
    ],
-   "commit": "589eb5a1c6dee345880a9735c37b8b8f5de1813c",
-   "sha256": "0yj4r6y74w4b8axvljrm4xmd8n4v28s83wkbafsz8k25i1vrm2pj"
+   "commit": "427238bdfde880106dd39cf5845b559975e52f4f",
+   "sha256": "0zrcfycfgy87bpfm3jcfzp72ky5marbd5w4xf4rqvnw9spml6sya"
   }
  },
  {
@@ -98145,14 +98627,14 @@
   "repo": "sebasmonia/sharper",
   "unstable": {
    "version": [
-    20210523,
-    1821
+    20220321,
+    422
    ],
    "deps": [
     "transient"
    ],
-   "commit": "08277b6c30568adfbe438c9f2a1d6c3db4b7ebeb",
-   "sha256": "1n0nc3g57kl5d4zh0k0gis70kd05yb2pv7kw8akmdp9q7hxs6m93"
+   "commit": "96edd4a1dbc267afdff0cb97298d1b05b7c2080c",
+   "sha256": "0pprbp9n43g1ijap96fjiz6sckplryi198gci0ywpyglx6illllg"
   }
  },
  {
@@ -98364,11 +98846,11 @@
   "repo": "Overdr0ne/shelldon",
   "unstable": {
    "version": [
-    20211118,
-    1811
+    20220325,
+    1305
    ],
-   "commit": "df8ab901c7f47c760879e5ccc26ee0b5195946c2",
-   "sha256": "1xkv0c2hzjccn73wl8x789cqwckbvkwgp80x8fagwswvg6ngzdcx"
+   "commit": "8d073ce580e7782ed863fc6e19dc33b4f73c0d79",
+   "sha256": "07ka7nd1apyjdf9cljs4zbcyv0bfbn1z4arhq2m2kdinjqpr6mbq"
   }
  },
  {
@@ -98425,11 +98907,11 @@
   "repo": "redguardtoo/shenshou",
   "unstable": {
    "version": [
-    20211103,
-    1010
+    20220324,
+    1137
    ],
-   "commit": "5b9a400cafbf4778cdb4ab26f7718f8cb0c84705",
-   "sha256": "143b5np4d8vmpdyw1pzxl6xgh6pzfp0phhli0j4wsly83ivcf7w2"
+   "commit": "bc16a637edaaca831a5147b6f479ba1dbdc02454",
+   "sha256": "0mli3h3i511vq8g69b2y8hq9591bv5yjblvx7cnh1nrjpb4flak0"
   },
   "stable": {
    "version": [
@@ -98599,8 +99081,8 @@
     20210715,
     1227
    ],
-   "commit": "b5f6338f381c796a528d399a3fbaa4bb069d185a",
-   "sha256": "0wagh0jw2pkkq4rqkvcdj6rdnmnsz983r6mc9fsxnl0nwm8d9m7m"
+   "commit": "ff41a9988523891de92379b611f8c00b44d4127e",
+   "sha256": "0k29xx6ym2mqcn6rszxl4p05zqfpfvhcwvc3h3cx0bf5b8pnxd3j"
   },
   "stable": {
    "version": [
@@ -99435,6 +99917,24 @@
   }
  },
  {
+  "ename": "skerrick",
+  "commit": "bf90740eac9231fe9c1a71f302614b3ed4d1f464",
+  "sha256": "1y2v9rnlj4hidp1vr4ivsxg90l0cjbwkw6fayh5dgfnk1brck6iq",
+  "fetcher": "github",
+  "repo": "anonimitoraf/skerrick",
+  "unstable": {
+   "version": [
+    20220306,
+    2139
+   ],
+   "deps": [
+    "request"
+   ],
+   "commit": "fc88e82aa4b0a71b1fbe0217df4020538ebd8cd5",
+   "sha256": "0cjch25ljjw0pqj69rckp9b0lw1iz41dd1nl794gfagvl86gl92f"
+  }
+ },
+ {
   "ename": "sketch-themes",
   "commit": "d1b2026ff5fe7a2893dd4c71d9089e97c4fd48f1",
   "sha256": "18n6blkrn72zyjj4ik3f6w2axmn0rwk8lpbcaynl3y7v7ij35m0r",
@@ -99661,15 +100161,15 @@
   "repo": "slime/slime",
   "unstable": {
    "version": [
-    20220227,
-    1043
+    20220302,
+    1215
    ],
    "deps": [
     "cl-lib",
     "macrostep"
    ],
-   "commit": "8bdcc23f9b9738dd400b98b4503bb359b7bb43e4",
-   "sha256": "191rqs073cis7cswjmgxmjp9fw30d8n3kqbw9x8kzqqypw0s577l"
+   "commit": "6ef28864d4a6b4d9390dbd0cac64f2a56582682d",
+   "sha256": "0pscgg31slqggdzrjfmkg721lwvqph9qrp833p1j4b7wcc1j8xvv"
   },
   "stable": {
    "version": [
@@ -99900,11 +100400,11 @@
   "repo": "joaotavora/sly",
   "unstable": {
    "version": [
-    20220131,
-    1646
+    20220302,
+    1053
    ],
-   "commit": "8074da031ed9d677abc77fb3dab4bb42c6be76c3",
-   "sha256": "0yp1fzm7kiqd7316v6ndgildf81mslylnmqhx1xn8g8hsp2fl2l6"
+   "commit": "4513c382f07a2a2cedb3c046231b69eae2f5e6f0",
+   "sha256": "10bzxhi5d7h18hqclxqy2z857d0sfbsnyxvrhmfkdi0h75zz7m4n"
   }
  },
  {
@@ -101153,11 +101653,11 @@
   "repo": "bbatsov/solarized-emacs",
   "unstable": {
    "version": [
-    20211114,
-    807
+    20220324,
+    445
    ],
-   "commit": "f34a171ff0e39549972edf533120f0b556f0b5ad",
-   "sha256": "07zxrf4xbh85d4sfxch6mcjgd6ga4a079k5fwqdm72pmi07659hf"
+   "commit": "86e5f94ea033c8b2a21084774063a493b62a4e81",
+   "sha256": "17z6cj8ids88xj2i6zs1s0mxs0fhn3gr7g5nhhy8s8khnzmyy2vj"
   },
   "stable": {
    "version": [
@@ -101189,8 +101689,8 @@
     "flycheck",
     "solidity-mode"
    ],
-   "commit": "f0f68b038c5edf16c85fc8ca58537e1c6479738b",
-   "sha256": "0hfp07bg348ppkgp5wca1sqpcprhc6jyxkpb1pmsm0vrifb3261l"
+   "commit": "20fb77e089e10187b37ae1a94153017b82ed2a0a",
+   "sha256": "0lyfhb4lirk08jc73c2vhlskfb496vnh0h906a74wz2pwg84q4m5"
   },
   "stable": {
    "version": [
@@ -101214,11 +101714,11 @@
   "repo": "ethereum/emacs-solidity",
   "unstable": {
    "version": [
-    20220106,
-    1055
+    20220308,
+    1517
    ],
-   "commit": "f0f68b038c5edf16c85fc8ca58537e1c6479738b",
-   "sha256": "0hfp07bg348ppkgp5wca1sqpcprhc6jyxkpb1pmsm0vrifb3261l"
+   "commit": "20fb77e089e10187b37ae1a94153017b82ed2a0a",
+   "sha256": "0lyfhb4lirk08jc73c2vhlskfb496vnh0h906a74wz2pwg84q4m5"
   },
   "stable": {
    "version": [
@@ -101440,8 +101940,8 @@
     "cl-lib",
     "deferred"
    ],
-   "commit": "8a18f8a62f4fdde80dfa069986aa959091a42472",
-   "sha256": "18iahla8m9b6bdn63x2yrvr3rzyw5ybipf44q9avyy6s1pqsby2a"
+   "commit": "323a364d2c220873f935ad46142c05c4fd1dea1d",
+   "sha256": "1dsb6j2kli0a0y06yn7gj5c72f6qz9fpwqhnvh9glcbqf6vv068r"
   },
   "stable": {
    "version": [
@@ -101827,11 +102327,11 @@
   "repo": "condy0919/spdx.el",
   "unstable": {
    "version": [
-    20220225,
-    102
+    20220325,
+    106
    ],
-   "commit": "fba53cc8d05d768dc7835b06d0fb857d7f13d5ea",
-   "sha256": "1lmf3zmwain0y6psmdazbbh240p64a4p6cwlj55sngbnzqidf7h1"
+   "commit": "914df7fa483825d813e7aaeb9dffce629aae2a52",
+   "sha256": "0ccw0wmc5kx9x31x0ycw74ngh6zdkjqm10my9ypfc97rfv2q6bh1"
   }
  },
  {
@@ -102541,11 +103041,11 @@
   "repo": "srfi-explorations/emacs-srfi",
   "unstable": {
    "version": [
-    20220202,
-    2241
+    20220321,
+    2152
    ],
-   "commit": "48318da86b2b214106c3e6248c7865407aeebcd4",
-   "sha256": "111h20gp0ns2c4cj9rh2bqlp4mksv1w4ybli64fnm300jci1p2lg"
+   "commit": "5efe17755c04dedb62033c1c53eda3c28c3a5f65",
+   "sha256": "0yxjzp1wxyggjk15d84b0399z5d5xspphdsy4m8r52aqcfxaqnd6"
   },
   "stable": {
    "version": [
@@ -102830,6 +103330,21 @@
   }
  },
  {
+  "ename": "starlit-theme",
+  "commit": "4b695ee03d16e9253674cedaef785c2545113b67",
+  "sha256": "02qb70fgnp7r35hz2g53rpc792rh568ddxgxxsbfw5jg9f429z9x",
+  "fetcher": "github",
+  "repo": "SFTtech/starlit-emacs",
+  "unstable": {
+   "version": [
+    20220325,
+    1418
+   ],
+   "commit": "9a76710497482110f5cba6e86aea66d94f5dbb50",
+   "sha256": "16nswflx3ccqkc64ijy4wvq0qqikijqh5dvj0j2ylf8bydnv4xqb"
+  }
+ },
+ {
   "ename": "start-menu",
   "commit": "88d965f6789d3f5ba3856cbf10edbc46e37b12ae",
   "sha256": "1k1lc9i9vcl2am9afq0ksrxwsy6kppl4i0v10h0w2fq5z374rdkv",
@@ -103019,11 +103534,11 @@
   "repo": "motform/stimmung-themes",
   "unstable": {
    "version": [
-    20220210,
-    1829
+    20220326,
+    1241
    ],
-   "commit": "ce7c9805c9030fe28c4f29720bfe413ee4674c2d",
-   "sha256": "0pspxxpydzb5yhw1lmw5y6lcgrxq9zdrp40ckgjwdq0x49j7166z"
+   "commit": "659d5814c5f9b21b159778ffab30aa9d8fb2cb96",
+   "sha256": "0skvns8x15cffwmv904sfgqz5rh4kv84aflwk547p7j1fcz8pja2"
   }
  },
  {
@@ -103086,11 +103601,11 @@
   "repo": "fosskers/streak",
   "unstable": {
    "version": [
-    20211004,
-    2025
+    20220311,
+    1929
    ],
-   "commit": "32d6e3814df50284466d6d3a69f7f236e3746699",
-   "sha256": "0a3cn9kqkln4nxln78wjzr2zph3aa5y3hp0kxymniqz26dga29cn"
+   "commit": "b2206de2fe43f97e754bbcb0abe9b078a419e787",
+   "sha256": "0v2yvwgkc48kbqh2lx52044b5d7yvg7d24vivqbri1wny5zpriqr"
   },
   "stable": {
    "version": [
@@ -103260,11 +103775,11 @@
   "repo": "stepnem/stripes-el",
   "unstable": {
    "version": [
-    20211022,
-    2144
+    20220310,
+    2237
    ],
-   "commit": "5e7adbd6e19a2d362ba818fdb44ad7744d757df2",
-   "sha256": "0ikhgqwwfbx1zmbx2scvi9cx7wlzwq91pwjydj2vxsg7c03iadd8"
+   "commit": "618e40e0a9cf80decea32c8daecb1c9f6eae2991",
+   "sha256": "0yb8mnix056n6ll17w13afr9rap53bb542xqy5ywcg9ajc1gd4jz"
   },
   "stable": {
    "version": [
@@ -104043,14 +104558,14 @@
   "repo": "swift-emacs/swift-mode",
   "unstable": {
    "version": [
-    20211031,
-    543
+    20220313,
+    542
    ],
    "deps": [
     "seq"
    ],
-   "commit": "4777c409ba0cd0d02b9a8397ba810e449b5ac213",
-   "sha256": "0dmrshlkhavzlfxhm2fi37x7rf1h203iiamdqvqb7dqq0axah5r7"
+   "commit": "0d1ef0ef183398143b13fb8c76c1284df0d5e616",
+   "sha256": "0s7y6xkvy2lg3bs4508dh7szsfrvmxrihbf22ysijaqgzd69s86j"
   },
   "stable": {
    "version": [
@@ -104394,14 +104909,14 @@
   "repo": "wolray/symbol-overlay",
   "unstable": {
    "version": [
-    20220103,
-    1747
+    20220304,
+    917
    ],
    "deps": [
     "seq"
    ],
-   "commit": "d08c33dc85a118b199415e71bba0e7c330f87c5b",
-   "sha256": "1k9x39hv07wxk4hv60ai5gc9rbx0h423zcgj23cvqxj34knklzgi"
+   "commit": "c439b73a5f9713bb3dce98986b589bb901e22130",
+   "sha256": "0n2yknbhwbgbrvmgxk2j2hm5gkdh6m9p5y8vpq758bxf5xk6npzm"
   },
   "stable": {
    "version": [
@@ -104464,8 +104979,8 @@
   "repo": "countvajhula/symex.el",
   "unstable": {
    "version": [
-    20220221,
-    252
+    20220323,
+    1808
    ],
    "deps": [
     "evil",
@@ -104477,8 +104992,8 @@
     "seq",
     "undo-tree"
    ],
-   "commit": "520682d49e4e0684d6ee45cfa8d3157e830778b8",
-   "sha256": "01kfqwh7dkrq4dmdaxf5z6f3hj144d34nhfnjsq204mbnq37mdph"
+   "commit": "8ab435c2866869977c92ad64c3706f626acfb4d3",
+   "sha256": "1jc9a27cpdldigyna3spdmx7ad0pcxfgl27xk1ikh74cbvry0ir4"
   },
   "stable": {
    "version": [
@@ -105359,15 +105874,15 @@
   "repo": "zevlg/telega.el",
   "unstable": {
    "version": [
-    20220221,
-    1453
+    20220319,
+    955
    ],
    "deps": [
     "rainbow-identifiers",
     "visual-fill-column"
    ],
-   "commit": "8402e7e2f016e372585273df35ea8484a7c4854c",
-   "sha256": "0k9q83xllhl1bmyrraylb38q285s96p43cbiagkq4lghib83d03l"
+   "commit": "500b7b42d81b77920f40a2f461dff7b6367e8326",
+   "sha256": "1j7gdc5ib1f63lw1cmbv937yx46mzmvh8r8h47z3m2pdx3drfsc0"
   },
   "stable": {
    "version": [
@@ -105414,16 +105929,16 @@
   "repo": "dbordak/telephone-line",
   "unstable": {
    "version": [
-    20220218,
-    449
+    20220313,
+    2218
    ],
    "deps": [
     "cl-generic",
     "cl-lib",
     "seq"
    ],
-   "commit": "aa7b1ec159252f8a25f3c75fcc346fa4b0b3c73d",
-   "sha256": "0dy3w69rndgvhlfp5mx4axdgn517ip63js219vb8m9514mswhxav"
+   "commit": "7a0ba06db860dfe9a9ca012c2750b13deec385c6",
+   "sha256": "1w7b5qhg4nd92hl9whvbzz6nx2cb09m84ixkqqzygmjnrxknqsdl"
   },
   "stable": {
    "version": [
@@ -105480,19 +105995,19 @@
   "repo": "minad/tempel",
   "unstable": {
    "version": [
-    20220223,
-    2047
+    20220310,
+    2211
    ],
-   "commit": "40de509ff635b75d877d83d42d8e36672fdcc47d",
-   "sha256": "1h9sj8w6yrrlf1gjwv7lxzkbgam78804f8zm8d3knic8qv3h03lk"
+   "commit": "56ee3bf1462efeb40caf7008ac93a3ea25866453",
+   "sha256": "1rd2w6j8yrv1d7fcxj39lgqdms2r6wsm4szqcd3fya216cmblyqd"
   },
   "stable": {
    "version": [
     0,
-    2
+    3
    ],
-   "commit": "91d19e22f9f77f897c97177601d7f870fbf807cb",
-   "sha256": "16972j2qq03q65qszgjjkzl52f79hk007kyi249wg1bqhvfa59b6"
+   "commit": "ee964c24b69579fcd5ec3c7d3d1d84d1ca3d90e4",
+   "sha256": "1cq7gg4fh105229my57wbb7v72l8mx957pvsg8k3zc1l0hbc796i"
   }
  },
  {
@@ -106174,11 +106689,11 @@
   "repo": "Dspil/text-categories",
   "unstable": {
    "version": [
-    20211130,
-    1719
+    20220310,
+    1053
    ],
-   "commit": "b6afe804e23c624eec2af0f2a5c04bdcdfd833b5",
-   "sha256": "0p63ypxfd4s0ywmja3ynyn0i9mirgv8kyr2wj4a0i20havxd29gz"
+   "commit": "f046a0e3da5283fdf3046b2f4cf3689a520ae552",
+   "sha256": "0amx3wa5vr913vvvz7vlyajvg8d5nagjfnc9gmi842nzqcm2699j"
   }
  },
  {
@@ -106503,18 +107018,18 @@
     20200212,
     1903
    ],
-   "commit": "6781ecec4ba66950d04180cc0c2adac4f9a1e39f",
-   "sha256": "0c6ag1yv08xfwh8cmv3jp9i7kr9ppha9sp518vy9pq8cz151xcyw"
+   "commit": "9cdad0dbf6fdc6078b3c04c3941fd4e87fe40d2c",
+   "sha256": "1irfw968wsryry9sf9bs3n1854wa6m2xprb2pkk7wgj0z1701mx8"
   },
   "stable": {
    "version": [
     2022,
-    2,
+    3,
     21,
     0
    ],
-   "commit": "4d159d0224c848847f37e247b2935dd11ff0cac9",
-   "sha256": "0yqbl77gvd550k7pcn1vscb4kdkayp410bsya93pzrlxfxnygp90"
+   "commit": "5e4ce0994de546bc7e17a0ba588518cabd01f303",
+   "sha256": "1fj5zgpwvw6ybs72f09r3zf72glwjg4930mggwpl3ki1fql81g6w"
   }
  },
  {
@@ -106594,8 +107109,8 @@
   "repo": "ananthakumaran/tide",
   "unstable": {
    "version": [
-    20220102,
-    441
+    20220314,
+    930
    ],
    "deps": [
     "cl-lib",
@@ -106604,8 +107119,8 @@
     "s",
     "typescript-mode"
    ],
-   "commit": "4bd7f35d8aae160b16642aef3ca205adc71539a9",
-   "sha256": "0zrapfxdarakp3kwp73c2ymjx51fsnfk6azi2y1wb2kgsdxl2yim"
+   "commit": "b93e555858edc331ba33d1d8bd4582d578c7ca31",
+   "sha256": "0il0rdg6qk4bdpq86hxzwbv1rgwn028v72i3xh2kg6xsmpil4f0z"
   },
   "stable": {
    "version": [
@@ -106819,11 +107334,11 @@
   "repo": "aimebertrand/timu-spacegrey-theme",
   "unstable": {
    "version": [
-    20220126,
-    2034
+    20220316,
+    2014
    ],
-   "commit": "f0e8cee8caef2f3a411cbf276940dfacfc4d4158",
-   "sha256": "1rhr7j0gfcxvcgl5dfr4fidyx9m9lxwqyi8vcnvwcz0vnfxbr8x1"
+   "commit": "3be10cb5c3e17d9babb67190f63500ee68df267c",
+   "sha256": "04n31pgzn53cnlcs6qagdbspjy85w4dxm3iz6gynwnp50g4y16cv"
   },
   "stable": {
    "version": [
@@ -106923,11 +107438,11 @@
   "repo": "duckwork/titlecase.el",
   "unstable": {
    "version": [
-    20220118,
-    604
+    20220227,
+    1900
    ],
-   "commit": "d82f3d23c166db1c3ea9ae25adaf43d1eeb748dc",
-   "sha256": "1m1zn8fh68jvh3n7x89bj2v0wgdj0323vrxp7251n9vj3fffnchi"
+   "commit": "157b2943f4aa5745d64c77c1ac4b76ce6e60c47b",
+   "sha256": "1bcj3k5gb28dkk8mcyqvm7scdszzf7ydp23piwsmavw0rdfqfhsd"
   },
   "stable": {
    "version": [
@@ -107050,16 +107565,16 @@
   "repo": "abrochard/emacs-todoist",
   "unstable": {
    "version": [
-    20220126,
-    1813
+    20220318,
+    2120
    ],
    "deps": [
     "dash",
     "org",
     "transient"
    ],
-   "commit": "585cd45b2c1442888a465e4e9d538eeb1a7b3c0a",
-   "sha256": "1m7pxf54l7qazh7fj2b6b0z9h2zfaxspxlx7lyxrfncdmp1bcswz"
+   "commit": "383d139a4627f4199cdda99f08551ed3237595a2",
+   "sha256": "1wvf1mq0j7bnjswssvnn2b4vqfxd19hw15v2ch6c7zai0jrqylzh"
   }
  },
  {
@@ -107124,8 +107639,8 @@
    "deps": [
     "cl-lib"
    ],
-   "commit": "842ae4df222bbd6596068814ac1b1e505c2a6b7a",
-   "sha256": "19j76bgv5hca8i9385f1s66zj31y70fgppmvxdqrws4265zqc11d"
+   "commit": "09166f32d3ece2b297da036f0abbeba63329580e",
+   "sha256": "09j3mxa0803piywmfkvxg0jpgbx6qbvibsik8wsms898bg5n3s4d"
   }
  },
  {
@@ -107184,8 +107699,8 @@
     20220222,
     1140
    ],
-   "commit": "3e856aa9388af2d5acbc77f4f7be7eb920f26760",
-   "sha256": "1wgf1xw3fmbzawl8hykxf6sa7gmrp6vx9bpcv31199mh1nzx7iin"
+   "commit": "b21fe53b70fa2936b052b9db8e2d4704ac40d9f6",
+   "sha256": "08si1qbdcy36h08256a9fgybifbx3bghx3z9l6j6j1kyz6s1w6gy"
   }
  },
  {
@@ -107286,20 +107801,20 @@
   "repo": "trevorpogue/topspace",
   "unstable": {
    "version": [
-    20220225,
-    1808
+    20220323,
+    2050
    ],
-   "commit": "42ee2417302b57ea9e81c1c455841b1578934cbc",
-   "sha256": "167bs3c2vbvjiafgnkyic8pb538cmv9k2df3phh5ly8bk0jzx17x"
+   "commit": "1daae45343622c65fdfc9abe456020fd17e9168d",
+   "sha256": "1gwv7r6xaxkpnd7nyyj1v6xh4pd8lrnh3crlbf2d1sz49c5rf1zd"
   },
   "stable": {
    "version": [
     0,
     1,
-    1
+    2
    ],
-   "commit": "4eb27abaa182e856ba3f3c8e1e84fdd2e1f009af",
-   "sha256": "0zfc5ix16kk5mwjs5wiqkfaljdhahb5hsb76hmay8nwhg5xsadkj"
+   "commit": "270b4ace5151f38ee5145689437d2b7a2d52cd96",
+   "sha256": "1mj5fd7kqmaz7qdx8rdqlri4999np8fd492hgpwli98zr6ha8spc"
   }
  },
  {
@@ -107562,8 +108077,8 @@
     20210713,
     1609
    ],
-   "commit": "77e16de3b9fbaa0417b56a9acc70a9bca17c4ad0",
-   "sha256": "1ww04kfz4kkbhrbd78r4dpylhayb5hl72qcjv8wm0mhgfwmbb358"
+   "commit": "e4c5bb69e6f1338239bdbf66baf57bb610828b2e",
+   "sha256": "05ddgcgqribdwbph7qkz5r24h1xsbrnhlg4yqgnyyw5kfxayapzj"
   },
   "stable": {
    "version": [
@@ -107666,11 +108181,11 @@
   "repo": "magit/transient",
   "unstable": {
    "version": [
-    20220227,
-    1751
+    20220325,
+    1619
    ],
-   "commit": "7c771c94c8fc31d859c1e083bf32fbce403f4766",
-   "sha256": "1x4bk5m9s5zag8din004n3paiy8l560p2cwcyfc9y2zjn7h5p42v"
+   "commit": "270eff1c7cc910dfe9882e97df608627028eaa40",
+   "sha256": "197j1jih73vjd3awycbiyfkj1fxmizaqs8h3id0kd1gyyjq4anck"
   },
   "stable": {
    "version": [
@@ -107799,8 +108314,8 @@
     20200910,
     1636
    ],
-   "commit": "ec3d59c9be9a6ba3b8d4dbfc6f8834c9c3d14f7b",
-   "sha256": "18mqlcbic82naypgzgr8fw7zjcxp3096c5yhjspz349igqw32y01"
+   "commit": "8cf1c0d52509fa789870b300f2a7b3564e021104",
+   "sha256": "0kq5piwrby9xdx4xmqm63nsbg597xa46lzh4v59irkf89irsay49"
   },
   "stable": {
    "version": [
@@ -107910,8 +108425,8 @@
   "repo": "ethan-leba/tree-edit",
   "unstable": {
    "version": [
-    20220211,
-    1633
+    20220319,
+    1652
    ],
    "deps": [
     "dash",
@@ -107921,8 +108436,8 @@
     "tree-sitter-langs",
     "tsc"
    ],
-   "commit": "f7d393b5caf601fe20c7543a53fca3d7e74ea09d",
-   "sha256": "0i8vc5mpwgkf21awnzc4m60paf13lwl0ff4ihks6k6xq65va3rhn"
+   "commit": "63816d614e6e2112c2f26e65afd7440f022ba2ad",
+   "sha256": "1c0s9hsm5wisikgxzskmnkin0r2vs9yc5yhgkjrsrvaiiv05g9ip"
   }
  },
  {
@@ -107978,15 +108493,15 @@
   "url": "https://codeberg.org/FelipeLema/tree-sitter-indent.el.git",
   "unstable": {
    "version": [
-    20211128,
-    2236
+    20220305,
+    1919
    ],
    "deps": [
     "seq",
     "tree-sitter"
    ],
-   "commit": "5f80e89b7da2074ea7f083b769448eb7026865dc",
-   "sha256": "14pi0vv193vpbwd4kb86hsnv1h8j9pcclvipp1wllv3nxw8k2ypk"
+   "commit": "785b8cb8ab17bffec958e421260746e16b438727",
+   "sha256": "03c7lbig8rflny20v85w7bpla2x9653dk4azjifcs0m0vpjjghma"
   },
   "stable": {
    "version": [
@@ -108009,26 +108524,26 @@
   "repo": "emacs-tree-sitter/tree-sitter-langs",
   "unstable": {
    "version": [
-    20220212,
-    641
+    20220319,
+    356
    ],
    "deps": [
     "tree-sitter"
    ],
-   "commit": "599570cd2a6d1b43a109634896b5c52121e155e3",
-   "sha256": "1sgpsjd3037pbvwk7lgw70gb4j0fyqikv4lwxwa6l5dwnqvqxgq6"
+   "commit": "f4effc81fcac3592bce7072619a0e17043412cf4",
+   "sha256": "01bzlhnz7n781gp9d48973gxkcc95rscjs0c24am73505srl38jz"
   },
   "stable": {
    "version": [
     0,
     11,
-    3
+    4
    ],
    "deps": [
     "tree-sitter"
    ],
-   "commit": "599570cd2a6d1b43a109634896b5c52121e155e3",
-   "sha256": "1sgpsjd3037pbvwk7lgw70gb4j0fyqikv4lwxwa6l5dwnqvqxgq6"
+   "commit": "f4effc81fcac3592bce7072619a0e17043412cf4",
+   "sha256": "01bzlhnz7n781gp9d48973gxkcc95rscjs0c24am73505srl38jz"
   }
  },
  {
@@ -108343,9 +108858,20 @@
   "ename": "treemacs-tab-bar",
   "commit": "fd08b4b2dc7476e39c210207313431e554de9bb9",
   "sha256": "1j5ch9jki388dhjnc7lsi6drvrsajjrdhxhqr55hq8ns1dhm8gl9",
-  "error": "Not in archive",
   "fetcher": "github",
-  "repo": "Alexander-Miller/treemacs"
+  "repo": "Alexander-Miller/treemacs",
+  "unstable": {
+   "version": [
+    20220221,
+    2038
+   ],
+   "deps": [
+    "dash",
+    "treemacs"
+   ],
+   "commit": "b18a05b1f62074a40e6011d83cd4c92cbee040dd",
+   "sha256": "0975n5d1rl9dqi9qwsg724cjxl753rw30xxngg7qs6338mp77c1y"
+  }
  },
  {
   "ename": "treepy",
@@ -108417,8 +108943,8 @@
     20180904,
     2313
    ],
-   "commit": "886232c6d7e92a8e9fe573eef46754ebe321f90d",
-   "sha256": "10h6p2dwl2k2p35pi3n8y85qh5y0zrr9nhfr4sviwzj1nbqdrvdr"
+   "commit": "f7cbd4f9283dbb0528445a3ea6d3b291d97065f6",
+   "sha256": "08l88w680jcl609wnsalydgfjnhrvbwiasgss7sv5r1xa16as942"
   },
   "stable": {
    "version": [
@@ -108438,11 +108964,11 @@
   "repo": "ianyepan/tron-legacy-emacs-theme",
   "unstable": {
    "version": [
-    20210420,
-    1201
+    20220312,
+    1645
    ],
-   "commit": "e7d16ebe4a824e7d7766fb34ffe4ea3b002f3d23",
-   "sha256": "15njpd9923rl07lq4mxs611glgnw3qyr21wk6xak6n1cminvy81g"
+   "commit": "d775d9f348a942230ea57b6520e1eb56a5d67569",
+   "sha256": "03v8izw95ksl104w4zgacy0wpcvl4x3kwzamvd11d7ndlzn3jqpy"
   },
   "stable": {
    "version": [
@@ -108700,14 +109226,14 @@
   "repo": "smallwat3r/tubestatus.el",
   "unstable": {
    "version": [
-    20210801,
-    1522
+    20220303,
+    1736
    ],
    "deps": [
     "request"
    ],
-   "commit": "eeda4c2647cfdb910de776398037183f48e3fa72",
-   "sha256": "1fn405rmwcy8y5sa8lh5grq87n5zxbln2b9agxyilfx4jm6rcnpl"
+   "commit": "c81373f1bc32cbd2e2d642ee10ee1cb31915acb0",
+   "sha256": "1ili2jfp8ycigq022ws92x6x91k0myq34ipq318b461shd1by4yq"
   }
  },
  {
@@ -108927,24 +109453,6 @@
   }
  },
  {
-  "ename": "twtxt",
-  "commit": "4627ee00b9439d9dac9971ad1060af4bcf31446c",
-  "sha256": "0fpq3nz30v0g355xq0pcwf8iqykvn9af1wdx76v5fgzimlrpwy7l",
-  "fetcher": "github",
-  "repo": "deadblackclover/twtxt-el",
-  "unstable": {
-   "version": [
-    20200824,
-    1323
-   ],
-   "deps": [
-    "request"
-   ],
-   "commit": "e7bafaf92124bb4f2a0be5c1a635b80f9b3a8c87",
-   "sha256": "1qqc6ykrpq311fwn5mvzc3yl6z48v1c3yq3vi8g9zv63ywj33bbk"
-  }
- },
- {
   "ename": "typescript-mode",
   "commit": "94455323364d5a6b00e2786d577134eb350826b4",
   "sha256": "1abnik2dq0zfnp8pk8x6zy962qww78xadm87xyiwz17559g88d82",
@@ -108955,8 +109463,8 @@
     20220223,
     1506
    ],
-   "commit": "84ff4228b5d1af287f35c9869e8eb079184a9831",
-   "sha256": "1kjw7phch5vyxc7gwkcwdl1p0cy3zzg7vyx4k1p5dbvh261k7c6h"
+   "commit": "88f317f0b6aef8f8d232e912fdbc679799580c56",
+   "sha256": "0qkqxvam3r21philap71dy4980sbadx32176rz20wwrs10szqnck"
   },
   "stable": {
    "version": [
@@ -109374,8 +109882,8 @@
     20200719,
     618
    ],
-   "commit": "33cb9f541b1f7d4fa675e244822c8a074ebb4c4e",
-   "sha256": "104170qlxrvg5gr1m3ajfnankvnd3700k46lhrh7i356jl23kh1h"
+   "commit": "b9069b8af1bfa360d3b7197a7101fe0233c92750",
+   "sha256": "05873v76z7f7jrhkc78bmkgmqjvbidyaf1dymcccc8cgsc7bixp1"
   },
   "stable": {
    "version": [
@@ -109433,11 +109941,11 @@
   "repo": "ideasman42/emacs-undo-fu-session",
   "unstable": {
    "version": [
-    20220211,
-    548
+    20220326,
+    622
    ],
-   "commit": "d4f078abcbeea614ac2b32808c9cadf460a61e2e",
-   "sha256": "02b95pasbgr82g2ii225ixfd39w2y7jncxwmvm7ix2pw77g9mc7v"
+   "commit": "7bbc89a42f6bb4abcd4513488bd45784cf4041e4",
+   "sha256": "1is1ywsr78k9fil44psb8hqhm8b2a8hmv1pf6a8h04hwv3svpf3q"
   }
  },
  {
@@ -109469,8 +109977,8 @@
    "deps": [
     "cl-lib"
    ],
-   "commit": "94959e708d5a74913788324893d0b6dabc88ff18",
-   "sha256": "09gf5bm2kwgfx4b1rbnljarzj9mfbx3f0xiqias3cbj0x0lmwmd1"
+   "commit": "efb8ac3935635ad0fd731de0ef64b14a23f50b42",
+   "sha256": "0mvj2jhj2dl4pr4gh7rh3042lawxik9myvvnvqc25zjqa5n4jp8c"
   },
   "stable": {
    "version": [
@@ -109667,11 +110175,11 @@
   "repo": "astoff/unicode-math-input.el",
   "unstable": {
    "version": [
-    20210612,
-    847
+    20220302,
+    1231
    ],
-   "commit": "2788d7824d23749a6e5b33f653c47471455da187",
-   "sha256": "1kqaqzlgf9gqxf3fzy41m606h7ridp5iik1w5a0dpq86ni23r77c"
+   "commit": "06bf37d649fc3b41fcd5fa29c0b0eda555aaf8bb",
+   "sha256": "0i6qyc5jl1151dyp95wjx7f7fs4m0pb7qnlb6skr33rrfl1icmpn"
   }
  },
  {
@@ -110318,8 +110826,8 @@
     20220220,
     150
    ],
-   "commit": "b590f6d3643ff70dfde0181abb287d7b24073067",
-   "sha256": "0zp6zyxk033n8p3ccaz50mrnhrcnb7w40b0xjm1lk4snap3hlihq"
+   "commit": "fb82a02b6c86e6224482b27caa08662b023b40a1",
+   "sha256": "1lncgprxmir4czq8iiww9cmpd4si77vipkgksjrv37r9xz5hgyr4"
   },
   "stable": {
    "version": [
@@ -110415,6 +110923,21 @@
   }
  },
  {
+  "ename": "uwu-theme",
+  "commit": "32b645e4304be3340c29e466f9b082a4e4855631",
+  "sha256": "1iq7rm53ds6yqrdj1drjy26dxdcsh29bz5ab7200yx1fjn114qzl",
+  "fetcher": "github",
+  "repo": "kborling/uwu-theme",
+  "unstable": {
+   "version": [
+    20220324,
+    1828
+   ],
+   "commit": "a40f96f35cd6dafe0fc98bd19c9783f6b265173c",
+   "sha256": "1ppar0fz98xsbdl9yvh3rk09i1zk9170n4j7rlnvj3a9gnp9bdvq"
+  }
+ },
+ {
   "ename": "v-mode",
   "commit": "247cab604cf0ef6078f5b0f5887526bcbbcefb70",
   "sha256": "0jky9y06fqj06m4mg95h8k3h5fihf9j9qj4w3n836qg5lnb4ywga",
@@ -111448,11 +111971,11 @@
   "repo": "thanhvg/emacs-virtual-comment",
   "unstable": {
    "version": [
-    20211103,
-    209
+    20220301,
+    430
    ],
-   "commit": "4effa95c7d6243fc5696597f488653f9d2a5d4a6",
-   "sha256": "164yiiqqxk2fpjk65y72fr71j05b1330zmvbaxh0w3ww2axkjz68"
+   "commit": "5205379bcfa1774a745e3dcbaa4ea861ff6a9ad2",
+   "sha256": "1blgy286id63mqr2gan7xkg88rn2nwj36vqdsyyxq8w2p3f5qh54"
   }
  },
  {
@@ -111768,11 +112291,11 @@
   "repo": "emacs-vs/vs-dark-theme",
   "unstable": {
    "version": [
-    20220214,
-    1401
+    20220319,
+    1730
    ],
-   "commit": "6fde70a06788e2b8851e765c75ae76cd1655287d",
-   "sha256": "10wjd76qrr503rbvpklpcxz74pcx08zvqgn3g6a0qrzpsiigkscd"
+   "commit": "94021437d4dded5039e75c236b4a230d9fbdf7d6",
+   "sha256": "09q43zpx010jmwiz3wbsfwy4kmfz23z1xy7ka7a9nymd97kjnq9p"
   },
   "stable": {
    "version": [
@@ -111791,11 +112314,11 @@
   "repo": "emacs-vs/vs-light-theme",
   "unstable": {
    "version": [
-    20220214,
-    1401
+    20220319,
+    1729
    ],
-   "commit": "6bfe9144b626b98bbb67cbf512f3419c25ae973f",
-   "sha256": "05rkm1zlxmz65z1k9i3nh1dgd6arn97h0cyv3mbyw0pksfnf0gx7"
+   "commit": "a1a6708419944c95fd36bdc8f8771fb8746a698b",
+   "sha256": "04jccdrsx5r7q067sfyx5qcamlb3df1lx2v04zc436v7cxmj9s9z"
   },
   "stable": {
    "version": [
@@ -111829,11 +112352,11 @@
   "repo": "ianyepan/vscode-dark-plus-emacs-theme",
   "unstable": {
    "version": [
-    20220217,
-    350
+    20220320,
+    530
    ],
-   "commit": "612646c3e707f9665bdbd034a6c2e17cb2645c3a",
-   "sha256": "0m6vwvrsl4dnw42pd3fi2s513jjlq8km7gzks8c6jch7lydwxabk"
+   "commit": "cec18a9d816fef372a4e70f6ad1e16a42aa93b06",
+   "sha256": "1byssa2rv2j9s3m10v7ihi1avqkjc5wqj62393wkp85k73z9v3dq"
   },
   "stable": {
    "version": [
@@ -112019,8 +112542,8 @@
     "org-roam",
     "s"
    ],
-   "commit": "266c491ee2d583648f391803a278e8c5befbd8bd",
-   "sha256": "1dw05c0kfrjv09lqdkwg8i6hkxd3g2zaclixfhfzgs2976a9r23k"
+   "commit": "ba44342aea6a81c7b7ca6fcaae9a537701789b5e",
+   "sha256": "0avqxd264dpbyh8cza0pv8miflyaaqlx27xdjix4xj42wq8k6rzm"
   },
   "stable": {
    "version": [
@@ -112045,14 +112568,14 @@
   "repo": "embed-me/vunit-mode",
   "unstable": {
    "version": [
-    20220121,
-    1644
+    20220316,
+    1812
    ],
    "deps": [
     "hydra"
    ],
-   "commit": "13311cc9fba6e73cf859dd5defefd330cc41b489",
-   "sha256": "0k7xj2a0xdc4g0bi1fxmwy1bl1ha9z68f7l1qc296r8q3hq8ghi9"
+   "commit": "5643460a7011d6bc13c2d4762f329d19f6c7d46b",
+   "sha256": "1zzlfscnzvck658ylsmqwk30jdf9qnrnmhvghd3xinlhglnmwrp7"
   }
  },
  {
@@ -112250,16 +112773,16 @@
   "repo": "abrochard/walkman",
   "unstable": {
    "version": [
-    20201229,
-    1811
+    20220318,
+    2122
    ],
    "deps": [
     "json-mode",
     "org",
     "transient"
    ],
-   "commit": "0cb9c2fef6e611b4389f7df7fcccc17744053e9b",
-   "sha256": "1fv4bn6c04kv39jv25r09pvxc5hz5gwwbj16fhxs5930rf77ikqb"
+   "commit": "3118dd4f493caffcc2849058833572dfc0c0e0a9",
+   "sha256": "03hyz3bhbisymm0gzqzsrmvyzkkgh73zbqgra6m70jka8sv065xs"
   },
   "stable": {
    "version": [
@@ -112610,11 +113133,11 @@
   "repo": "fxbois/web-mode",
   "unstable": {
    "version": [
-    20220227,
-    1557
+    20220319,
+    653
    ],
-   "commit": "f70277774a725e177774cc81ecbd228792cd6656",
-   "sha256": "1kqjq0b0yfhnqxhmzsz7cw01da95nmakc1qjr8jk1m7hwljl3p4b"
+   "commit": "efa853e5cfff8e0bcacbda9d1c6696b33da91b03",
+   "sha256": "1hpdr9r1wvvh44iqkv1lcfnjlvn16yrsgdq2ald2p6sxh9hkvn66"
   },
   "stable": {
    "version": [
@@ -112787,14 +113310,14 @@
   "repo": "emacs-love/weblorg",
   "unstable": {
    "version": [
-    20210919,
-    1547
+    20220312,
+    2008
    ],
    "deps": [
     "templatel"
    ],
-   "commit": "0f8ec7e9065b2962c93209ee30b46f91843e2815",
-   "sha256": "0jiq879m74ysl0gb9wh1qmxyxi79nhnr2b1slq33mwf98r1nzcbg"
+   "commit": "b2bb79ed2c532cad5b03455d8cae887ddb803db3",
+   "sha256": "0xz9f7vz3h82hksz0swf5ykdh1fwh6dyk7dadjvral7iqjz4pjmf"
   },
   "stable": {
    "version": [
@@ -112855,8 +113378,8 @@
    "deps": [
     "cl-lib"
    ],
-   "commit": "fda4455333309545c0787a79d73c19ddbeb57980",
-   "sha256": "1ga4m9xgiczb6sv7dhmy4841rd9wxsirrvi8va34srpzlq51iq65"
+   "commit": "82b370602fa0158670b1c6c769f223159affce9b",
+   "sha256": "0bl1hwdy6ign624lhb8dncvahvrs8j96dss4kl5rfxzy5rpva0jp"
   },
   "stable": {
    "version": [
@@ -113354,9 +113877,16 @@
   "ename": "why-this",
   "commit": "f45e4eabb023673be2dd3c6c46e752085587c0e2",
   "sha256": "1pb73qc67w73p664kfd0na1qmzbz00dmjz468smrpjjscqmazmp3",
-  "error": "Not in archive",
   "fetcher": "git",
-  "url": "https://codeberg.org/akib/emacs-why-this.git"
+  "url": "https://codeberg.org/akib/emacs-why-this.git",
+  "unstable": {
+   "version": [
+    20220314,
+    1329
+   ],
+   "commit": "ca4cf46d6e7b961a0c0fa39ac084fdca3c8c93b2",
+   "sha256": "14zb4abakpy2s05lfry097i0gg2d3njj0847a62dnwv8hgypsk6c"
+  }
  },
  {
   "ename": "wide-column",
@@ -113467,15 +113997,15 @@
   "repo": "progfolio/wikinforg",
   "unstable": {
    "version": [
-    20211210,
-    2116
+    20220322,
+    946
    ],
    "deps": [
     "org",
     "wikinfo"
    ],
-   "commit": "62842806fee863eb43c3015c3d86f5a7f0bf858f",
-   "sha256": "1rzxswfzg8lpwn1r7lq08rz7mrbrs5vr587phh60l26qpz6960c2"
+   "commit": "9a5bfe36d59dc845b8da1951bed327f3a9071534",
+   "sha256": "16vcqf6f44jbyr5plkppd9s3p7i920nv2pvcqazc4g954h6582nl"
   }
  },
  {
@@ -113887,11 +114417,11 @@
   "repo": "magit/with-editor",
   "unstable": {
    "version": [
-    20220211,
-    2034
+    20220318,
+    1640
    ],
-   "commit": "f514f23258af67a10fc8e1c431bfe94702b6e65b",
-   "sha256": "095gmw87ch8mnwcldyab89a04wr5ahb2hgh0nd0gbhg7mkca17ph"
+   "commit": "e8569e027ff5c9bef8d9ff0734e3293e1c0574a2",
+   "sha256": "1q5c46kinh0s3pyms64nbzzbzgfq5a29qjzw4khsh0b73p8245gf"
   },
   "stable": {
    "version": [
@@ -114141,8 +114671,8 @@
     20220225,
     1907
    ],
-   "commit": "19be797818be2d9ac5a0a8acf30b43ad38e2f4ed",
-   "sha256": "13yj1pl9v0345dnxwdpy50b74syrbqhlrf8ldfnxpiww090n7zmq"
+   "commit": "5a1f9a45c3d1fa58c3de5183c4456572ae861d49",
+   "sha256": "0jd7lbb7mbjfk66mkzxnhffh3dlj28xma5a8km5hc4lclqlm74sx"
   }
  },
  {
@@ -114272,11 +114802,11 @@
   "repo": "pashinin/workgroups2",
   "unstable": {
    "version": [
-    20220106,
-    249
+    20220308,
+    1314
    ],
-   "commit": "d2e1f33001f1777767a7c6e862d5e6a37e688f42",
-   "sha256": "03lbfbi05g03w1cnys6smaf0yxm6168ckmdbcvkxy0k519ngzyd1"
+   "commit": "b2c457a720e98dd1c560860e44a6a80372ef07ef",
+   "sha256": "198bm8l8jf6xvc7djy3d9z7xm437pkabmi9i30pd79g5l2dikj8f"
   },
   "stable": {
    "version": [
@@ -115370,11 +115900,11 @@
   "repo": "zkry/yaml.el",
   "unstable": {
    "version": [
-    20210730,
-    143
+    20220311,
+    332
    ],
-   "commit": "84b88c9ed178af16da18b230c1f61c57cefedf28",
-   "sha256": "13fjxrr7iyfagbm21p5is5jw1zv56ns2mnac145v8lqli6mrr5gx"
+   "commit": "34c300b08579b72c7c92aefee1f4b500913f0c85",
+   "sha256": "1lwhm3c7xmx1j9ggf9ka0whpm7g5p6b11gfv1bxkdx1j8ypvxn0m"
   },
   "stable": {
    "version": [
@@ -115537,11 +116067,11 @@
   "repo": "binjo/yara-mode",
   "unstable": {
    "version": [
-    20210520,
-    1318
+    20220317,
+    935
    ],
-   "commit": "345cf782926414f92f57d7f1b129974dc38a545b",
-   "sha256": "0n3cnxxwm3rgzpgqy1kkv6fhqzqw3gnj1p9anp5vdhss8fdad7s3"
+   "commit": "4c959b300ce52665c92e04e524dda5ed051c34f3",
+   "sha256": "0kb2a4hcmaczn279hbgk0jv88hsjznv1kqpkgkadszd02q53n0cl"
   }
  },
  {
@@ -115616,8 +116146,8 @@
     20220212,
     1742
    ],
-   "commit": "d8674bbbc9d4d7bdba374f0c0473ebb1912bcac2",
-   "sha256": "1nryhfiddak70y1hhhzkpb2afy00kd7vc3vg4ja0frpdvdrl93pz"
+   "commit": "82772ac2508a4549c75f2aa31d901caea468a0fb",
+   "sha256": "1ccyf0y9886vq4007xr4g8w05jnw3v8pfzlqxdk7j4babj8kyjw9"
   },
   "stable": {
    "version": [
@@ -116531,11 +117061,11 @@
   "repo": "localauthor/zk",
   "unstable": {
    "version": [
-    20220227,
-    1351
+    20220321,
+    2050
    ],
-   "commit": "a8785b1e012fa178674d5c9fab014b60ca1ba269",
-   "sha256": "1fy6mz0f1pgx5m9q76a7803rl9pzg1v5pvxslpsw93qi6xw1wjqv"
+   "commit": "4c6426e5e26e6a4d375442660d4f78aaea1691f7",
+   "sha256": "056xx1xlq9hwfjbympkl517544n1gfs605q0c7jkixh2vs6ipydr"
   }
  },
  {
@@ -116546,14 +117076,14 @@
   "repo": "localauthor/zk",
   "unstable": {
    "version": [
-    20220220,
-    1952
+    20220312,
+    2211
    ],
    "deps": [
     "zk"
    ],
-   "commit": "a8785b1e012fa178674d5c9fab014b60ca1ba269",
-   "sha256": "1fy6mz0f1pgx5m9q76a7803rl9pzg1v5pvxslpsw93qi6xw1wjqv"
+   "commit": "4c6426e5e26e6a4d375442660d4f78aaea1691f7",
+   "sha256": "056xx1xlq9hwfjbympkl517544n1gfs605q0c7jkixh2vs6ipydr"
   }
  },
  {
@@ -116778,8 +117308,8 @@
     20201205,
     1038
    ],
-   "commit": "474ca4723517d95356145950b134652d5dc0c7f7",
-   "sha256": "0syr88kqzh27ap57v97prk2z0l9wkaysqf1263j7nn9pl4jswppd"
+   "commit": "1823f8431b36beae112a67f5b102e06afaaa52bf",
+   "sha256": "0mqz10ngfn2kyhm918gwx185zmmvzj47vha5dvwwkqxx28xcsfq6"
   },
   "stable": {
    "version": [
@@ -116943,20 +117473,20 @@
   "repo": "Vonfry/zoxide.el",
   "unstable": {
    "version": [
-    20211223,
-    245
+    20220302,
+    522
    ],
-   "commit": "29508e94255c34174bc07c93749cad5d04700063",
-   "sha256": "12y0vqibb5sn9l42aiy1lm0cp0nl8d27zgql86va28glwzpma6s9"
+   "commit": "ecdcb62847b5e54ccd477d740e4974f28c8f5809",
+   "sha256": "1f4j53a1bm4kpgmlpfxnqb9zm8q0qxl7frxd8a0nqwfrxrzkqp8p"
   },
   "stable": {
    "version": [
     1,
-    1,
+    2,
     0
    ],
-   "commit": "29508e94255c34174bc07c93749cad5d04700063",
-   "sha256": "12y0vqibb5sn9l42aiy1lm0cp0nl8d27zgql86va28glwzpma6s9"
+   "commit": "1ec22ca486aaa838828ec516e91f8880b478bd19",
+   "sha256": "1f4j53a1bm4kpgmlpfxnqb9zm8q0qxl7frxd8a0nqwfrxrzkqp8p"
   }
  },
  {
diff --git a/nixpkgs/pkgs/applications/editors/ghostwriter/default.nix b/nixpkgs/pkgs/applications/editors/ghostwriter/default.nix
index 7d060a972cdc..dfdf75627bff 100644
--- a/nixpkgs/pkgs/applications/editors/ghostwriter/default.nix
+++ b/nixpkgs/pkgs/applications/editors/ghostwriter/default.nix
@@ -14,13 +14,13 @@
 
 mkDerivation rec {
   pname = "ghostwriter";
-  version = "2.1.1";
+  version = "2.1.2";
 
   src = fetchFromGitHub {
     owner = "wereturtle";
     repo = pname;
     rev = version;
-    hash = "sha256-w4qCJgfBnN1PpPfhdsLdBpCRAWai9RrwU3LZl8DdEcw=";
+    hash = "sha256-NpgtxYqxMWMZXZRZjujob40Nn6hirsSzcjoqRJR6Rws=";
   };
 
   nativeBuildInputs = [ qmake pkg-config qttools ];
diff --git a/nixpkgs/pkgs/applications/editors/gnome-builder/default.nix b/nixpkgs/pkgs/applications/editors/gnome-builder/default.nix
index 0e2ffe46d208..8fd9f56a9d22 100644
--- a/nixpkgs/pkgs/applications/editors/gnome-builder/default.nix
+++ b/nixpkgs/pkgs/applications/editors/gnome-builder/default.nix
@@ -18,6 +18,7 @@
 , json-glib
 , jsonrpc-glib
 , libdazzle
+, libhandy
 , libpeas
 , libportal-gtk3
 , libxml2
@@ -40,21 +41,20 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-builder";
-  version = "41.3";
+  version = "42.0";
 
   outputs = [ "out" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "4iUPyOnp8gAsRS5ZUNgmhXNNPESAs1Fnq1CKyHAlCeE=";
+    sha256 = "Uu/SltaLL/GCNBwEgdz9cGVMQIvbZ5/Ot225cDwiQo8=";
   };
 
   patches = [
-    # Fix build with latest libportal
-    # https://gitlab.gnome.org/GNOME/gnome-builder/-/merge_requests/486
+    # Fix appstream validation
     (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/gnome-builder/-/commit/b3bfa0df53a3749c3b73cb6c4bad5cab3fa549a1.patch";
-      sha256 = "B/uCcYavFvOAPhLHZ4MRNENDd6VytILiGYwDZRUSxTE=";
+      url = "https://gitlab.gnome.org/GNOME/gnome-builder/-/commit/d7151679e0c925d27216256dc32fe67fb298d059.patch";
+      sha256 = "vdNJawkqSBaFGRZvxzvjOryQpBL4jcN7tr1t3ihD7LA=";
     })
   ];
 
@@ -87,6 +87,7 @@ stdenv.mkDerivation rec {
     json-glib
     jsonrpc-glib
     libdazzle
+    libhandy
     libxml2
     ostree
     pcre
@@ -103,10 +104,6 @@ stdenv.mkDerivation rec {
     xvfb-run
   ];
 
-  prePatch = ''
-    patchShebangs build-aux/meson/post_install.py
-  '';
-
   mesonFlags = [
     "-Ddocs=true"
 
@@ -122,6 +119,10 @@ stdenv.mkDerivation rec {
   # understand why. Somebody should look into fixing this.
   doCheck = true;
 
+  postPatch = ''
+    patchShebangs build-aux/meson/post_install.py
+  '';
+
   checkPhase = ''
     export NO_AT_BRIDGE=1
     xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
diff --git a/nixpkgs/pkgs/applications/editors/hexdino/default.nix b/nixpkgs/pkgs/applications/editors/hexdino/default.nix
index 82119ae91d18..424295b12c98 100644
--- a/nixpkgs/pkgs/applications/editors/hexdino/default.nix
+++ b/nixpkgs/pkgs/applications/editors/hexdino/default.nix
@@ -1,17 +1,17 @@
 { lib, fetchFromGitHub, rustPlatform, ncurses }:
 
-rustPlatform.buildRustPackage {
+rustPlatform.buildRustPackage rec {
   pname = "hexdino";
-  version = "0.1.0";
+  version = "0.1.1";
 
   src = fetchFromGitHub {
     owner = "Luz";
-    repo = "hexdino";
-    rev = "de5b5d7042129f57e0ab36416a06476126bce389";
-    sha256 = "11mz07735gxqfamjcjjmxya6swlvr1p77sgd377zjcmd6z54gwyf";
+    repo = pname;
+    rev = version;
+    sha256 = "1n8gizawx8h58hpyyqivp7vwy7yhn6scipl5rrbvkpnav8qpmk1r";
   };
 
-  cargoSha256 = "1hpndmpk1zlfvb4r95m13yvnsbjkwgw4pb9ala2d5yzfp38225nm";
+  cargoSha256 = "01869b1d7gbsprcxxj7h9z16pvnzb02j2hywh97gfq5x96gnmkz3";
 
   buildInputs = [ ncurses ];
 
diff --git a/nixpkgs/pkgs/applications/editors/jetbrains/darwin.nix b/nixpkgs/pkgs/applications/editors/jetbrains/darwin.nix
index b1002e235824..f771894f533d 100644
--- a/nixpkgs/pkgs/applications/editors/jetbrains/darwin.nix
+++ b/nixpkgs/pkgs/applications/editors/jetbrains/darwin.nix
@@ -5,7 +5,7 @@
 }:
 
 { meta
-, name
+, pname
 , product
 , productShort ? product
 , src
@@ -17,7 +17,7 @@ let
   loname = lib.toLower productShort;
 in
   stdenvNoCC.mkDerivation {
-    inherit meta src version;
+    inherit pname meta src version;
     desktopName = product;
     installPhase = ''
       runHook preInstall
@@ -32,6 +32,5 @@ in
       runHook postInstall
     '';
     nativeBuildInputs = [ undmg ];
-    pname = lib.concatStringsSep "-" (lib.init (lib.splitString "-" name));
     sourceRoot = ".";
   }
diff --git a/nixpkgs/pkgs/applications/editors/jetbrains/default.nix b/nixpkgs/pkgs/applications/editors/jetbrains/default.nix
index b47c12707904..f0ee51dde3c6 100644
--- a/nixpkgs/pkgs/applications/editors/jetbrains/default.nix
+++ b/nixpkgs/pkgs/applications/editors/jetbrains/default.nix
@@ -24,9 +24,9 @@ let
 
   # Sorted alphabetically
 
-  buildClion = { name, version, src, license, description, wmClass, ... }:
+  buildClion = { pname, version, src, license, description, wmClass, ... }:
     (mkJetBrainsProduct {
-      inherit name version src wmClass jdk;
+      inherit pname version src wmClass jdk;
       product = "CLion";
       meta = with lib; {
         homepage = "https://www.jetbrains.com/clion/";
@@ -62,9 +62,9 @@ let
       '';
     });
 
-  buildDataGrip = { name, version, src, license, description, wmClass, ... }:
+  buildDataGrip = { pname, version, src, license, description, wmClass, ... }:
     (mkJetBrainsProduct {
-      inherit name version src wmClass jdk;
+      inherit pname version src wmClass jdk;
       product = "DataGrip";
       meta = with lib; {
         homepage = "https://www.jetbrains.com/datagrip/";
@@ -78,9 +78,9 @@ let
       };
     });
 
-  buildGoland = { name, version, src, license, description, wmClass, ... }:
+  buildGoland = { pname, version, src, license, description, wmClass, ... }:
     (mkJetBrainsProduct {
-      inherit name version src wmClass jdk;
+      inherit pname version src wmClass jdk;
       product = "Goland";
       meta = with lib; {
         homepage = "https://www.jetbrains.com/go/";
@@ -106,9 +106,9 @@ let
       '';
     });
 
-  buildIdea = { name, version, src, license, description, wmClass, product, ... }:
+  buildIdea = { pname, version, src, license, description, wmClass, product, ... }:
     (mkJetBrainsProduct {
-      inherit name version src wmClass jdk product;
+      inherit pname version src wmClass jdk product;
       productShort = "IDEA";
       extraLdPath = [ zlib ];
       extraWrapperArgs = [
@@ -129,9 +129,9 @@ let
       };
     });
 
-  buildMps = { name, version, src, license, description, wmClass, product, ... }:
+  buildMps = { pname, version, src, license, description, wmClass, product, ... }:
     (mkJetBrainsProduct rec {
-      inherit name version src wmClass jdk product;
+      inherit pname version src wmClass jdk product;
       productShort = "MPS";
       meta = with lib; {
         homepage = "https://www.jetbrains.com/mps/";
@@ -146,9 +146,9 @@ let
       };
     });
 
-  buildPhpStorm = { name, version, src, license, description, wmClass, ... }:
+  buildPhpStorm = { pname, version, src, license, description, wmClass, ... }:
     (mkJetBrainsProduct {
-      inherit name version src wmClass jdk;
+      inherit pname version src wmClass jdk;
       product = "PhpStorm";
       meta = with lib; {
         homepage = "https://www.jetbrains.com/phpstorm/";
@@ -162,9 +162,9 @@ let
       };
     });
 
-  buildPycharm = { name, version, src, license, description, wmClass, product, ... }:
+  buildPycharm = { pname, version, src, license, description, wmClass, product, ... }:
     (mkJetBrainsProduct {
-      inherit name version src wmClass jdk product;
+      inherit pname version src wmClass jdk product;
       productShort = "PyCharm";
       meta = with lib; {
         homepage = "https://www.jetbrains.com/pycharm/";
@@ -186,9 +186,9 @@ let
       };
     });
 
-  buildRider = { name, version, src, license, description, wmClass, ... }:
+  buildRider = { pname, version, src, license, description, wmClass, ... }:
     (mkJetBrainsProduct {
-      inherit name version src wmClass jdk;
+      inherit pname version src wmClass jdk;
       product = "Rider";
       meta = with lib; {
         homepage = "https://www.jetbrains.com/rider/";
@@ -211,9 +211,9 @@ let
       '');
     });
 
-  buildRubyMine = { name, version, src, license, description, wmClass, ... }:
+  buildRubyMine = { pname, version, src, license, description, wmClass, ... }:
     (mkJetBrainsProduct {
-      inherit name version src wmClass jdk;
+      inherit pname version src wmClass jdk;
       product = "RubyMine";
       meta = with lib; {
         homepage = "https://www.jetbrains.com/ruby/";
@@ -223,9 +223,9 @@ let
       };
     });
 
-  buildWebStorm = { name, version, src, license, description, wmClass, ... }:
+  buildWebStorm = { pname, version, src, license, description, wmClass, ... }:
     (mkJetBrainsProduct {
-      inherit name version src wmClass jdk;
+      inherit pname version src wmClass jdk;
       product = "WebStorm";
       meta = with lib; {
         homepage = "https://www.jetbrains.com/webstorm/";
@@ -251,7 +251,7 @@ in
   # Sorted alphabetically
 
   clion = buildClion rec {
-    name = "clion-${version}";
+    pname = "clion";
     version = products.clion.version;
     description  = "C/C++ IDE. New. Intelligent. Cross-platform";
     license = lib.licenses.unfree;
@@ -264,7 +264,7 @@ in
   };
 
   datagrip = buildDataGrip rec {
-    name = "datagrip-${version}";
+    pname = "datagrip";
     version = products.datagrip.version;
     description = "Your Swiss Army Knife for Databases and SQL";
     license = lib.licenses.unfree;
@@ -277,7 +277,7 @@ in
   };
 
   goland = buildGoland rec {
-    name = "goland-${version}";
+    pname = "goland";
     version = products.goland.version;
     description = "Up and Coming Go IDE";
     license = lib.licenses.unfree;
@@ -290,7 +290,7 @@ in
   };
 
   idea-community = buildIdea rec {
-    name = "idea-community-${version}";
+    pname = "idea-community";
     product = "IntelliJ IDEA CE";
     version = products.idea-community.version;
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
@@ -304,7 +304,7 @@ in
   };
 
   idea-ultimate = buildIdea rec {
-    name = "idea-ultimate-${version}";
+    pname = "idea-ultimate";
     product = "IntelliJ IDEA";
     version = products.idea-ultimate.version;
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
@@ -318,7 +318,7 @@ in
   };
 
   mps = buildMps rec {
-    name = "mps-${version}";
+    pname = "mps";
     product = "MPS ${products.mps.version-major-minor}";
     version = products.mps.version;
     description = "Create your own domain-specific language";
@@ -332,7 +332,7 @@ in
   };
 
   phpstorm = buildPhpStorm rec {
-    name = "phpstorm-${version}";
+    pname = "phpstorm";
     version = products.phpstorm.version;
     description = "Professional IDE for Web and PHP developers";
     license = lib.licenses.unfree;
@@ -345,7 +345,7 @@ in
   };
 
   pycharm-community = buildPycharm rec {
-    name = "pycharm-community-${version}";
+    pname = "pycharm-community";
     product = "PyCharm CE";
     version = products.pycharm-community.version;
     description = "PyCharm Community Edition";
@@ -359,7 +359,7 @@ in
   };
 
   pycharm-professional = buildPycharm rec {
-    name = "pycharm-professional-${version}";
+    pname = "pycharm-professional";
     product = "PyCharm";
     version = products.pycharm-professional.version;
     description = "PyCharm Professional Edition";
@@ -373,7 +373,7 @@ in
   };
 
   rider = buildRider rec {
-    name = "rider-${version}";
+    pname = "rider";
     version = products.rider.version;
     description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper";
     license = lib.licenses.unfree;
@@ -386,7 +386,7 @@ in
   };
 
   ruby-mine = buildRubyMine rec {
-    name = "ruby-mine-${version}";
+    pname = "ruby-mine";
     version = products.ruby-mine.version;
     description = "The Most Intelligent Ruby and Rails IDE";
     license = lib.licenses.unfree;
@@ -399,7 +399,7 @@ in
   };
 
   webstorm = buildWebStorm rec {
-    name = "webstorm-${version}";
+    pname = "webstorm";
     version = products.webstorm.version;
     description = "Professional IDE for Web and JavaScript development";
     license = lib.licenses.unfree;
diff --git a/nixpkgs/pkgs/applications/editors/jetbrains/linux.nix b/nixpkgs/pkgs/applications/editors/jetbrains/linux.nix
index d150368ca820..55ed0e6829e5 100644
--- a/nixpkgs/pkgs/applications/editors/jetbrains/linux.nix
+++ b/nixpkgs/pkgs/applications/editors/jetbrains/linux.nix
@@ -3,30 +3,29 @@
 , vmopts ? null
 }:
 
-{ name, product, productShort ? product, version, src, wmClass, jdk, meta, extraLdPath ? [], extraWrapperArgs ? [] }@args:
+{ pname, product, productShort ? product, version, src, wmClass, jdk, meta, extraLdPath ? [], extraWrapperArgs ? [] }@args:
 
 with lib;
 
 let loName = toLower productShort;
     hiName = toUpper productShort;
-    mainProgram = concatStringsSep "-" (init (splitString "-" name));
     vmoptsName = loName
                + lib.optionalString stdenv.hostPlatform.is64bit "64"
                + ".vmoptions";
 in
 
 with stdenv; lib.makeOverridable mkDerivation (rec {
-  inherit name src;
-  meta = args.meta // { inherit mainProgram; };
+  inherit pname version src;
+  meta = args.meta // { mainProgram = pname; };
 
   desktopItem = makeDesktopItem {
-    name = mainProgram;
-    exec = mainProgram;
+    name = pname;
+    exec = pname;
     comment = lib.replaceChars ["\n"] [" "] meta.longDescription;
     desktopName = product;
     genericName = meta.description;
     categories = [ "Development" ];
-    icon = mainProgram;
+    icon = pname;
     startupWMClass = wmClass;
   };
 
@@ -62,16 +61,16 @@ with stdenv; lib.makeOverridable mkDerivation (rec {
   installPhase = ''
     runHook preInstall
 
-    mkdir -p $out/{bin,$name,share/pixmaps,libexec/${name}}
-    cp -a . $out/$name
-    ln -s $out/$name/bin/${loName}.png $out/share/pixmaps/${mainProgram}.png
-    mv bin/fsnotifier* $out/libexec/${name}/.
+    mkdir -p $out/{bin,$pname,share/pixmaps,libexec/${pname}}
+    cp -a . $out/$pname
+    ln -s $out/$pname/bin/${loName}.png $out/share/pixmaps/${pname}.png
+    mv bin/fsnotifier* $out/libexec/${pname}/.
 
     jdk=${jdk.home}
     item=${desktopItem}
 
-    makeWrapper "$out/$name/bin/${loName}.sh" "$out/bin/${mainProgram}" \
-      --prefix PATH : "$out/libexec/${name}:${lib.makeBinPath [ jdk coreutils gnugrep which git ]}" \
+    makeWrapper "$out/$pname/bin/${loName}.sh" "$out/bin/${pname}" \
+      --prefix PATH : "$out/libexec/${pname}:${lib.makeBinPath [ jdk coreutils gnugrep which git ]}" \
       --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath ([
         # Some internals want libstdc++.so.6
         stdenv.cc.cc.lib libsecret e2fsprogs
diff --git a/nixpkgs/pkgs/applications/editors/jupyter-kernels/octave/default.nix b/nixpkgs/pkgs/applications/editors/jupyter-kernels/octave/default.nix
index 9db38d144489..7a1c997a7c53 100644
--- a/nixpkgs/pkgs/applications/editors/jupyter-kernels/octave/default.nix
+++ b/nixpkgs/pkgs/applications/editors/jupyter-kernels/octave/default.nix
@@ -32,7 +32,8 @@ rec {
   '';
 
   sizedLogo = size: stdenv.mkDerivation {
-    name = ''octave-logo-${octave.version}-${size}x${size}.png'';
+    pname = "octave-logo-${size}x${size}.png";
+    inherit (octave) version;
 
     src = octave.src;
 
diff --git a/nixpkgs/pkgs/applications/editors/lapce/default.nix b/nixpkgs/pkgs/applications/editors/lapce/default.nix
new file mode 100644
index 000000000000..2653806a14f3
--- /dev/null
+++ b/nixpkgs/pkgs/applications/editors/lapce/default.nix
@@ -0,0 +1,83 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, rustPlatform
+, cmake
+, pkg-config
+, python3
+, perl
+, freetype
+, fontconfig
+, libxkbcommon
+, xcbutil
+, libX11
+, libXcursor
+, libXrandr
+, libXi
+, vulkan-loader
+, copyDesktopItems
+, makeDesktopItem
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "lapce";
+  version = "0.0.10";
+
+  src = fetchFromGitHub {
+    owner = "lapce";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "tOVFm4DFQurFU4DtpPwxXQLbTGCZnrV1FfYKtvkRxRE=";
+  };
+
+  cargoPatches = [ ./fix-version.patch ];
+
+  cargoSha256 = "BwB3KgmI5XnZ5uHv6f+kGKBzpyxPWcoKvF7qw90eorI=";
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    python3
+    perl
+    copyDesktopItems
+  ];
+
+  buildInputs = [
+    freetype
+    fontconfig
+    libxkbcommon
+    xcbutil
+    libX11
+    libXcursor
+    libXrandr
+    libXi
+    vulkan-loader
+  ];
+
+  # Add missing vulkan dependency to rpath
+  preFixup = ''
+    patchelf --add-needed ${vulkan-loader}/lib/libvulkan.so.1 $out/bin/lapce
+  '';
+
+  postInstall = ''
+    install -Dm0644 $src/extra/images/logo.svg $out/share/icons/hicolor/scalable/apps/lapce.svg
+  '';
+
+  desktopItems = [ (makeDesktopItem {
+    name = "lapce";
+    exec = "lapce %F";
+    icon = "lapce";
+    desktopName = "Lapce";
+    comment = meta.description;
+    genericName = "Code Editor";
+    categories = [ "Development" "Utility" "TextEditor" ];
+  }) ];
+
+  meta = with lib; {
+    description = "Lightning-fast and Powerful Code Editor written in Rust";
+    homepage = "https://github.com/lapce/lapce";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ elliot ];
+    broken = stdenv.isDarwin;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/editors/lapce/fix-version.patch b/nixpkgs/pkgs/applications/editors/lapce/fix-version.patch
new file mode 100644
index 000000000000..2a8d96be1696
--- /dev/null
+++ b/nixpkgs/pkgs/applications/editors/lapce/fix-version.patch
@@ -0,0 +1,31 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index bc9a0f8..45a74ad 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -2165,7 +2165,7 @@ dependencies = [
+ 
+ [[package]]
+ name = "lapce"
+-version = "0.0.9"
++version = "0.0.10"
+ dependencies = [
+  "lapce-core",
+  "lapce-proxy",
+@@ -2173,7 +2173,7 @@ dependencies = [
+ 
+ [[package]]
+ name = "lapce-core"
+-version = "0.0.9"
++version = "0.0.10"
+ dependencies = [
+  "Inflector",
+  "alacritty_terminal 0.15.0",
+@@ -2233,7 +2233,7 @@ dependencies = [
+ 
+ [[package]]
+ name = "lapce-proxy"
+-version = "0.0.9"
++version = "0.0.10"
+ dependencies = [
+  "alacritty_terminal 0.16.0-rc2",
+  "anyhow",
diff --git a/nixpkgs/pkgs/applications/editors/micro/default.nix b/nixpkgs/pkgs/applications/editors/micro/default.nix
index c3c42ac24cba..d9805cbb36a9 100644
--- a/nixpkgs/pkgs/applications/editors/micro/default.nix
+++ b/nixpkgs/pkgs/applications/editors/micro/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles, callPackage }:
 
 buildGoModule rec {
   pname = "micro";
@@ -24,6 +24,8 @@ buildGoModule rec {
     install -Dt $out/share/applications assets/packaging/micro.desktop
   '';
 
+  passthru.tests.expect = callPackage ./test-with-expect.nix {};
+
   meta = with lib; {
     homepage = "https://micro-editor.github.io";
     description = "Modern and intuitive terminal-based text editor";
diff --git a/nixpkgs/pkgs/applications/editors/micro/test-with-expect.nix b/nixpkgs/pkgs/applications/editors/micro/test-with-expect.nix
new file mode 100644
index 000000000000..d3e1d60e0874
--- /dev/null
+++ b/nixpkgs/pkgs/applications/editors/micro/test-with-expect.nix
@@ -0,0 +1,30 @@
+{ micro, expect, runCommand, writeScript, runtimeShell }:
+
+let expect-script = writeScript "expect-script" ''
+  #!${expect}/bin/expect -f
+
+  spawn micro file.txt
+  expect "file.txt"
+
+  send "Hello world!"
+  expect "Hello world!"
+
+  # Send ctrl-q (exit)
+  send "\021"
+
+  expect "Save changes to file.txt before closing?"
+  send "y"
+
+  expect eof
+''; in
+runCommand "micro-test-expect"
+{
+  nativeBuildInputs = [ micro expect ];
+  passthru = { inherit expect-script; };
+} ''
+  # Micro really wants a writable $HOME for its config directory.
+  export HOME=$(pwd)
+  expect -f ${expect-script}
+  grep "Hello world!" file.txt
+  touch $out
+''
diff --git a/nixpkgs/pkgs/applications/editors/neovim/neovim-remote.nix b/nixpkgs/pkgs/applications/editors/neovim/neovim-remote.nix
index 2b1281ae21be..52c3c08ea847 100644
--- a/nixpkgs/pkgs/applications/editors/neovim/neovim-remote.nix
+++ b/nixpkgs/pkgs/applications/editors/neovim/neovim-remote.nix
@@ -4,8 +4,6 @@
 , neovim
 }:
 
-with lib;
-
 with python3.pkgs; buildPythonApplication rec {
   pname = "neovim-remote";
   version = "2.4.0";
@@ -35,11 +33,12 @@ with python3.pkgs; buildPythonApplication rec {
     "test_escape_double_quotes_in_filenames"
   ];
 
-  meta = {
+  meta = with lib; {
     description = "A tool that helps controlling nvim processes from a terminal";
     homepage = "https://github.com/mhinz/neovim-remote/";
     license = licenses.mit;
     maintainers = with maintainers; [ edanaher ];
     platforms = platforms.unix;
+    mainProgram = "nvr";
   };
 }
diff --git a/nixpkgs/pkgs/applications/editors/pinegrow/default.nix b/nixpkgs/pkgs/applications/editors/pinegrow/default.nix
index 3b694e4b1516..1f069024eb9e 100644
--- a/nixpkgs/pkgs/applications/editors/pinegrow/default.nix
+++ b/nixpkgs/pkgs/applications/editors/pinegrow/default.nix
@@ -8,22 +8,22 @@
 , autoPatchelfHook
 , gsettings-desktop-schemas
 , gtk3
-, wrapGAppsHook
+, makeWrapper
 }:
 
 stdenv.mkDerivation rec {
   pname = "pinegrow";
-  version = "6.4";
+  version = "6.5";
 
   src = fetchurl {
     url = "https://download.pinegrow.com/PinegrowLinux64.${version}.zip";
-    sha256 = "0i8sg4criimrqmz0g68b8xcwcrb362ssid5jazswpa6hhwj6s5n4";
+    sha256 = "1l7cf5jgidpykaf68mzf92kywl1vxwl3fg43ibgr2rg4cnl1g82b";
   };
 
   nativeBuildInputs = [
     unzip
     autoPatchelfHook
-    wrapGAppsHook
+    makeWrapper
   ];
 
   buildInputs = [
@@ -34,6 +34,11 @@ stdenv.mkDerivation rec {
     gtk3
   ];
 
+  wrapProgramFlags = [
+    "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ gcc-unwrapped.lib gtk3 udev ]}"
+    "--prefix PATH : ${lib.makeBinPath [ stdenv.cc ]}"
+  ];
+
   sourceRoot = ".";
 
   dontUnpack = true;
@@ -57,7 +62,7 @@ stdenv.mkDerivation rec {
 
   preFixup = ''
     export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
-    wrapGApp "$out/opt/pinegrow/PinegrowLibrary" --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ udev ]}
+    wrapProgram "$out/opt/pinegrow/PinegrowLibrary" ''${wrapProgramFlags[@]}
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/editors/qxmledit/default.nix b/nixpkgs/pkgs/applications/editors/qxmledit/default.nix
index d2aea1344da8..35c5f644ffa4 100644
--- a/nixpkgs/pkgs/applications/editors/qxmledit/default.nix
+++ b/nixpkgs/pkgs/applications/editors/qxmledit/default.nix
@@ -2,7 +2,7 @@
   qmake, qtbase, qtxmlpatterns, qtsvg, qtscxml, qtquick1, libGLU }:
 
 stdenv.mkDerivation rec {
-  name = "qxmledit-${version}" ;
+  pname = "qxmledit" ;
   version = "0.9.15" ;
   src = fetchFromGitHub ( lib.importJSON ./qxmledit.json ) ;
   nativeBuildInputs = [ qmake ] ;
diff --git a/nixpkgs/pkgs/applications/editors/vim/configurable.nix b/nixpkgs/pkgs/applications/editors/vim/configurable.nix
index 01561f4c2722..bc317b91597e 100644
--- a/nixpkgs/pkgs/applications/editors/vim/configurable.nix
+++ b/nixpkgs/pkgs/applications/editors/vim/configurable.nix
@@ -3,7 +3,7 @@
 , libX11, libXext, libSM, libXpm, libXt, libXaw, libXau, libXmu
 , libICE
 , vimPlugins
-, makeWrapper
+, makeWrapper, makeBinaryWrapper
 , wrapGAppsHook
 , runtimeShell
 
@@ -25,7 +25,6 @@
 , ximSupport        ? config.vim.xim or true        # less than 15KB, needed for deadkeys
 , darwinSupport     ? config.vim.darwin or false    # Enable Darwin support
 , ftNixSupport      ? config.vim.ftNix or true      # Add .nix filetype detection and minimal syntax highlighting support
-, ...
 }:
 
 
@@ -134,7 +133,9 @@ in stdenv.mkDerivation rec {
   ++ lib.optional wrapPythonDrv makeWrapper
   ++ lib.optional nlsSupport gettext
   ++ lib.optional perlSupport perl
-  ++ lib.optional (guiSupport == "gtk3") wrapGAppsHook
+  # Make the inner wrapper binary to avoid double wrapping issues with wrapPythonDrv
+  # (https://github.com/NixOS/nixpkgs/pull/164163)
+  ++ lib.optional (guiSupport == "gtk3") (wrapGAppsHook.override { makeWrapper = makeBinaryWrapper; })
   ;
 
   buildInputs = [
@@ -174,40 +175,12 @@ in stdenv.mkDerivation rec {
   postInstall = ''
     ln -s $out/bin/vim $out/bin/vi
   '' + lib.optionalString stdenv.isLinux ''
-    patchelf --set-rpath \
-      "$(patchelf --print-rpath $out/bin/vim):${lib.makeLibraryPath buildInputs}" \
-      "$out"/bin/vim
-    if [[ -e "$out"/bin/gvim ]]; then
-      patchelf --set-rpath \
-        "$(patchelf --print-rpath $out/bin/vim):${lib.makeLibraryPath buildInputs}" \
-        "$out"/bin/gvim
-    fi
-
     ln -sfn '${nixosRuntimepath}' "$out"/share/vim/vimrc
-  '' + lib.optionalString wrapPythonDrv ''
+  '';
+
+  postFixup = lib.optionalString wrapPythonDrv ''
     wrapProgram "$out/bin/vim" --prefix PATH : "${python3}/bin" \
       --set NIX_PYTHONPATH "${python3}/${python3.sitePackages}"
-  '' + lib.optionalString (guiSupport == "gtk3") ''
-
-    rewrap () {
-      rm -f "$out/bin/$1"
-      echo -e '#!${runtimeShell}\n"'"$out/bin/vim"'" '"$2"' "$@"' > "$out/bin/$1"
-      chmod a+x "$out/bin/$1"
-    }
-
-    rewrap ex -e
-    rewrap view -R
-    rewrap gvim -g
-    rewrap gex -eg
-    rewrap gview -Rg
-    rewrap rvim -Z
-    rewrap rview -RZ
-    rewrap rgvim -gZ
-    rewrap rgview -RgZ
-    rewrap evim    -y
-    rewrap eview   -yR
-    rewrap vimdiff -d
-    rewrap gvimdiff -gd
   '';
 
   dontStrip = true;
diff --git a/nixpkgs/pkgs/applications/editors/vim/plugins/generated.nix b/nixpkgs/pkgs/applications/editors/vim/plugins/generated.nix
index b15195bd0155..2df68756b66a 100644
--- a/nixpkgs/pkgs/applications/editors/vim/plugins/generated.nix
+++ b/nixpkgs/pkgs/applications/editors/vim/plugins/generated.nix
@@ -41,12 +41,12 @@ final: prev:
 
   aerial-nvim = buildVimPluginFrom2Nix {
     pname = "aerial.nvim";
-    version = "2022-03-04";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "aerial.nvim";
-      rev = "d864b463bca824ebbdf2b17a0ac046955c007b2b";
-      sha256 = "173r0vj0g893c4mkd4if16xqsckx55jfsgwz7fg6rrnbazjs75h0";
+      rev = "b9f6067529ef123b8ace705ea356869f66aad320";
+      sha256 = "1wcdshvq2nw1dx8xxzplvq519bzzb3qgf7lh0sqafjd19nzgwiji";
     };
     meta.homepage = "https://github.com/stevearc/aerial.nvim/";
   };
@@ -77,12 +77,12 @@ final: prev:
 
   ale = buildVimPluginFrom2Nix {
     pname = "ale";
-    version = "2022-03-05";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "dense-analysis";
       repo = "ale";
-      rev = "560e6340ce10ce90fac587096fb147eea43e624d";
-      sha256 = "08gcy6anp648kpk1sir6nwk0dxy55a6gj9w1whp28lchjc5yrd8y";
+      rev = "80dcd648d389965603246c2c5a4554e3e4aa184c";
+      sha256 = "1a38q83sgv13aw3iy40mjzkg1wsc5zmf5mmkjqpdcgv5aixyb8m5";
     };
     meta.homepage = "https://github.com/dense-analysis/ale/";
   };
@@ -101,12 +101,12 @@ final: prev:
 
   aniseed = buildVimPluginFrom2Nix {
     pname = "aniseed";
-    version = "2022-02-15";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "Olical";
       repo = "aniseed";
-      rev = "a955096c566843302a0a509680b92ab276488add";
-      sha256 = "1ka9p2d2fvr1p8gr39fq44msjqkshg3r6pjzzsnx8r821ql0055i";
+      rev = "bd79727af8a21037222a08ec9bcaf1c85488aaa4";
+      sha256 = "0l4hvhmf9cgw921956rh97x6aqhjzs2jxsdnk2m38a9fr738hknk";
     };
     meta.homepage = "https://github.com/Olical/aniseed/";
   };
@@ -269,12 +269,12 @@ final: prev:
 
   auto-session = buildVimPluginFrom2Nix {
     pname = "auto-session";
-    version = "2022-02-21";
+    version = "2022-03-15";
     src = fetchFromGitHub {
       owner = "rmagatti";
       repo = "auto-session";
-      rev = "da8a37dc635ef25c39442351fb3c838d151eda71";
-      sha256 = "0pn32l9pzvxl5fd8l3pxjsrzx0gv794xjh2flv0gf2f9lk4hvcbx";
+      rev = "ba1606202588a1d4cc68360d6ef9549f0fc464a1";
+      sha256 = "029pwryrsc1hzxsc6jvin7vxx21rj2270kw2hqj0dj74qn8b8dg5";
     };
     meta.homepage = "https://github.com/rmagatti/auto-session/";
   };
@@ -365,12 +365,12 @@ final: prev:
 
   better-escape-nvim = buildVimPluginFrom2Nix {
     pname = "better-escape.nvim";
-    version = "2022-02-05";
+    version = "2022-03-14";
     src = fetchFromGitHub {
       owner = "max397574";
       repo = "better-escape.nvim";
-      rev = "b227dd1380bbe226b117f9b758e146aa7c2e7d82";
-      sha256 = "1jzfjnry03cv8nxf30h4x5pad5s55k4grzy1jp26sb3xjlpriz3p";
+      rev = "d2efbf0093235525e81f537f8f4e63f23acedf06";
+      sha256 = "1xx23v9jgpzdhyp1diyq0vc36vlxzljx36qnax2cms36kfnc398l";
     };
     meta.homepage = "https://github.com/max397574/better-escape.nvim/";
   };
@@ -437,36 +437,36 @@ final: prev:
 
   bufdelete-nvim = buildVimPluginFrom2Nix {
     pname = "bufdelete.nvim";
-    version = "2021-12-18";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "famiu";
       repo = "bufdelete.nvim";
-      rev = "1c59b784c53afaf7b9ca63186da99e5d46e3e429";
-      sha256 = "0zq261nv2jzhqqzaldr5l6dlriyy23zv8rsn3k7fg91q3vjawn4i";
+      rev = "05f9b2831abc693996b335494337b88e616e9eed";
+      sha256 = "09a5r51k8926v51ma45jfqqwwjnk52yy5ql9swmrxnvnrdsjah3p";
     };
     meta.homepage = "https://github.com/famiu/bufdelete.nvim/";
   };
 
   bufexplorer = buildVimPluginFrom2Nix {
     pname = "bufexplorer";
-    version = "2022-02-08";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "jlanzarotta";
       repo = "bufexplorer";
-      rev = "4b1d3adca7e968ebc619cf2f6f3e197ef78c8342";
-      sha256 = "0imyzav898hzx4d669rxx7qyac6b8csp04am2j85rr31rywylpn0";
+      rev = "a81eb31192e3033eccedb61c842e274252038a04";
+      sha256 = "06b0mfmys2ah1hkyfipv0chv138mmdlixc2l0377zhq8409i3k3c";
     };
     meta.homepage = "https://github.com/jlanzarotta/bufexplorer/";
   };
 
   bufferline-nvim = buildVimPluginFrom2Nix {
     pname = "bufferline.nvim";
-    version = "2022-03-09";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "bufferline.nvim";
-      rev = "d5904e8a3434acb151a4948b1b3d4760a2a12bb1";
-      sha256 = "1rr048xsf4q5rpi1b2fkgqh23khrmjpd6420p240m3b3rj027brw";
+      rev = "e1202c6569353d03ef0cb3da11b839dba26854dd";
+      sha256 = "1nd5pvbg0yw8jl4rn56dzhabmiwkvlzb8iv595rrkqdb2msdl4qx";
     };
     meta.homepage = "https://github.com/akinsho/bufferline.nvim/";
   };
@@ -485,12 +485,12 @@ final: prev:
 
   calendar-vim = buildVimPluginFrom2Nix {
     pname = "calendar.vim";
-    version = "2021-09-18";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "itchyny";
       repo = "calendar.vim";
-      rev = "eebee3aa5da63188b70c4fd75509dcfce77e2030";
-      sha256 = "0n8i5jg3hvx6mj6grxcvdsanbyvg67gjiq18aq6kpdb1rcip0270";
+      rev = "896360bfd9d5347b2726dd247df2d2cbdb8cf1d6";
+      sha256 = "06xvggyq0saf9mj330vnlh0q4176w46w09335iwhc3fp999vl07p";
     };
     meta.homepage = "https://github.com/itchyny/calendar.vim/";
   };
@@ -509,12 +509,12 @@ final: prev:
 
   catppuccin-nvim = buildVimPluginFrom2Nix {
     pname = "catppuccin-nvim";
-    version = "2022-03-10";
+    version = "2022-03-20";
     src = fetchFromGitHub {
       owner = "catppuccin";
       repo = "nvim";
-      rev = "24aba3962926330266e8a722c62d7c7fcfb1961e";
-      sha256 = "1h3jnfjwn16a2by95vh9l7jc79ab5jc6w6ksh56r5maxf9v49x94";
+      rev = "f079dda3dc23450d69b4bad11bfbd9af2c77f6f3";
+      sha256 = "1w0n96fbrkm3vdl64v1yzkly8wpcn5g9qflmpb8r1ww9hhig7a38";
     };
     meta.homepage = "https://github.com/catppuccin/nvim/";
   };
@@ -533,12 +533,12 @@ final: prev:
 
   chadtree = buildVimPluginFrom2Nix {
     pname = "chadtree";
-    version = "2022-03-10";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "chadtree";
-      rev = "f5fc1c613783a488e01be692c2ca3b1e9d46e8e4";
-      sha256 = "0avdzzppjw59jlkjicl749kbs602dlfjmc4z7770c8ga2hzslzzd";
+      rev = "e9606bfa350f277d54a61742d560e6122dc4d32c";
+      sha256 = "1vyg48ghr8fd15fh41pk5qlgngdqkw8gwhkkyq9hbvs2mxw8x80c";
     };
     meta.homepage = "https://github.com/ms-jpq/chadtree/";
   };
@@ -581,12 +581,12 @@ final: prev:
 
   ci_dark = buildVimPluginFrom2Nix {
     pname = "ci_dark";
-    version = "2022-03-10";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "yunlingz";
       repo = "ci_dark";
-      rev = "b21e4e725dfe7aaec02d88923f45193928fe5a55";
-      sha256 = "1c5gdd3j1sg0bk92iaanw855d05ximdm7y0s2z1ph4lawfn3bk37";
+      rev = "3acf3a52921708c4c7c6c8ca8590e63bf86d0eff";
+      sha256 = "1x2242mzv3vflaq6k7xdp5xc52hsykw9693szmnvfb72i0mhrf4c";
     };
     meta.homepage = "https://github.com/yunlingz/ci_dark/";
   };
@@ -737,12 +737,12 @@ final: prev:
 
   cmp-nvim-lsp-document-symbol = buildVimPluginFrom2Nix {
     pname = "cmp-nvim-lsp-document-symbol";
-    version = "2021-10-28";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "cmp-nvim-lsp-document-symbol";
-      rev = "29d12e55cf49ee07b829114ad39b161cad2544ab";
-      sha256 = "0w4m34467j3cg4dj69r12115p5k1i2lbjzmwx5hmd5x6xzb5qycb";
+      rev = "c3f0086ed9882e52e0ae38dd5afa915f69054941";
+      sha256 = "1jprb86z081kpxyb2dhw3n1pq15dzcc9wlwmpb6k43mqd7k8q11l";
     };
     meta.homepage = "https://github.com/hrsh7th/cmp-nvim-lsp-document-symbol/";
   };
@@ -761,12 +761,12 @@ final: prev:
 
   cmp-nvim-ultisnips = buildVimPluginFrom2Nix {
     pname = "cmp-nvim-ultisnips";
-    version = "2022-02-21";
+    version = "2022-03-19";
     src = fetchFromGitHub {
       owner = "quangnguyen30192";
       repo = "cmp-nvim-ultisnips";
-      rev = "3cac37c0dfea9d42cf69d9638bb63f267c5a1033";
-      sha256 = "1h4jjhczgx9kp4a0d9jf5qa0jkhb15zzdfhkpfgxfz2szh8frj0k";
+      rev = "f90ebb220306e39766ad0ec1f094e4e12bb2fdd4";
+      sha256 = "1pfa3fpjna1969a9ij40b4rmss413mzr5m27i2lhq21xw2f0fi6a";
     };
     meta.homepage = "https://github.com/quangnguyen30192/cmp-nvim-ultisnips/";
   };
@@ -881,12 +881,12 @@ final: prev:
 
   cmp_luasnip = buildVimPluginFrom2Nix {
     pname = "cmp_luasnip";
-    version = "2022-01-02";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "saadparwaiz1";
       repo = "cmp_luasnip";
-      rev = "d6f837f4e8fe48eeae288e638691b91b97d1737f";
-      sha256 = "0cmfjqps7j3056y8avkrfz40kx8qcdxf4v1xvfv03nrw9xdwwh5y";
+      rev = "85f2767842a35064f61128b71b8dab1e38c413c4";
+      sha256 = "13s04x9vx3n854q9abb0knls5aycxigbwqgllfmp2xgaycgxqksa";
     };
     meta.homepage = "https://github.com/saadparwaiz1/cmp_luasnip/";
   };
@@ -963,26 +963,50 @@ final: prev:
     meta.homepage = "https://github.com/iamcco/coc-spell-checker/";
   };
 
+  coc-svelte = buildVimPluginFrom2Nix {
+    pname = "coc-svelte";
+    version = "2022-03-14";
+    src = fetchFromGitHub {
+      owner = "coc-extensions";
+      repo = "coc-svelte";
+      rev = "7dda98527c0831e287ae8cd1c85cfc958c949d4a";
+      sha256 = "0ci35dph7zz53hiw65xp79g6i8h5yk1zlcbinljfcdn5635wsjbn";
+    };
+    meta.homepage = "https://github.com/coc-extensions/coc-svelte/";
+  };
+
+  coc-tailwindcss = buildVimPluginFrom2Nix {
+    pname = "coc-tailwindcss";
+    version = "2020-08-19";
+    src = fetchFromGitHub {
+      owner = "iamcco";
+      repo = "coc-tailwindcss";
+      rev = "5f41aa1feb36e39b95ccd83be6a37ee8c475f9fb";
+      sha256 = "189abl36aj862m5nz8jjdgdfc4s6xbag030hi9m13yd6fbg99f85";
+    };
+    meta.homepage = "https://github.com/iamcco/coc-tailwindcss/";
+  };
+
   coc-nvim = buildVimPluginFrom2Nix {
     pname = "coc.nvim";
-    version = "2022-03-10";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "neoclide";
       repo = "coc.nvim";
-      rev = "c13c51019ca922279b291f82ddeecefb26fecdac";
-      sha256 = "0g2sm6f8h5si901l2nzbphin7qh66517636xv9f5821jaixwyx6m";
+      rev = "16e74f9b31d20b8dfc8933132beed4c175d824ea";
+      sha256 = "0nrfm8517fz31qrg0gfh888q7wcbxxkbpcp39ycvwkdfxpq1bzwr";
     };
     meta.homepage = "https://github.com/neoclide/coc.nvim/";
   };
 
   codi-vim = buildVimPluginFrom2Nix {
     pname = "codi.vim";
-    version = "2021-01-11";
+    version = "2022-03-20";
     src = fetchFromGitHub {
       owner = "metakirby5";
       repo = "codi.vim";
-      rev = "cf62681a4962ce1873e4b2a5e0bf401dcd42890f";
-      sha256 = "15j08qa7sklm0pilfn3ljgq75hrv8y9h8xzj8ibrafp29640gkfl";
+      rev = "7d2604c8ef8bf2154e191746692477da39aed399";
+      sha256 = "0na5nlzi9rz1gx1p98wksy6axmxkq4mmhxq3dzg0pv0m0137vi1g";
     };
     meta.homepage = "https://github.com/metakirby5/codi.vim/";
   };
@@ -1038,12 +1062,12 @@ final: prev:
 
   comment-nvim = buildVimPluginFrom2Nix {
     pname = "comment.nvim";
-    version = "2022-03-07";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "numtostr";
       repo = "comment.nvim";
-      rev = "026ec9530b6691db8c68a3ae4fc44c56aa281f52";
-      sha256 = "14qfx8722mzb62a60l3m7ddy2g241gp06f7k5ncdfy49353qv7v8";
+      rev = "03b2a8f81102f2994f4888760e0f08385d841c3f";
+      sha256 = "1ilzpdyis41p1x6wbkavjpva5hvxclagw6hjn76vpmwibnz99pfy";
     };
     meta.homepage = "https://github.com/numtostr/comment.nvim/";
   };
@@ -1230,24 +1254,24 @@ final: prev:
 
   coq_nvim = buildVimPluginFrom2Nix {
     pname = "coq_nvim";
-    version = "2022-03-10";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq_nvim";
-      rev = "3172e9802f8cd0d6fa64c7cfa377410369786040";
-      sha256 = "0zj6j1ih6knj5bhs3d7g1yr8i2pnhf6pgdh7gbj7l28j62idx9dy";
+      rev = "ad255350b66809d4af3aae75f4fb4dd576a06ab4";
+      sha256 = "17l6ajaj03d5v8abi8m754ypqwhz1nw232n15y8av15ll0pb7gk0";
     };
     meta.homepage = "https://github.com/ms-jpq/coq_nvim/";
   };
 
   Coqtail = buildVimPluginFrom2Nix {
     pname = "Coqtail";
-    version = "2022-02-28";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "whonore";
       repo = "Coqtail";
-      rev = "074b3f1758d4e743e2d0bed0fc24ef6386387036";
-      sha256 = "1qbxrl36zawvbf4x2h9za4s300b8s7yvzfp7klcy30nd9a9xfwpr";
+      rev = "7a1cb8fb1cbdf136bba50a22ddcc056e83dc435c";
+      sha256 = "0jj966bansbfzbhbfgyqciis36s7z46n9n8ihy2m7vxynibbf9yp";
     };
     meta.homepage = "https://github.com/whonore/Coqtail/";
   };
@@ -1350,12 +1374,12 @@ final: prev:
 
   ctrlp-vim = buildVimPluginFrom2Nix {
     pname = "ctrlp.vim";
-    version = "2022-02-09";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "ctrlpvim";
       repo = "ctrlp.vim";
-      rev = "d5b092036bc651912474f64277913be8502f8f09";
-      sha256 = "12nmcam301h69181hznsh19p9sl42srp98dfa56ghy4iyrcg2d34";
+      rev = "40ee62ef9b415da647618b08d1b28d19180a22eb";
+      sha256 = "1f73gfbc59lx36xfdh2y6fcan2ia59m9vx1bjq32hj987iw2wxhy";
     };
     meta.homepage = "https://github.com/ctrlpvim/ctrlp.vim/";
   };
@@ -1470,12 +1494,12 @@ final: prev:
 
   deol-nvim = buildVimPluginFrom2Nix {
     pname = "deol.nvim";
-    version = "2022-02-17";
+    version = "2022-03-16";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "deol.nvim";
-      rev = "bf9b2bafc76e290f11eabd654ac830034a4b553b";
-      sha256 = "1hya333j0j7mhk1cnyjpy3rzmzbq7pddnyrjrl3bi4xhq8044g3h";
+      rev = "4ecffa4502a65f90397c2194ae308dac49194a65";
+      sha256 = "1h23nmqpf5782r3fj945ck0dn0sa6vb0m03sbb4fzd707k6xwnl9";
     };
     meta.homepage = "https://github.com/Shougo/deol.nvim/";
   };
@@ -1592,12 +1616,12 @@ final: prev:
 
   deoplete-lsp = buildVimPluginFrom2Nix {
     pname = "deoplete-lsp";
-    version = "2021-10-07";
+    version = "2022-03-12";
     src = fetchFromGitHub {
       owner = "deoplete-plugins";
       repo = "deoplete-lsp";
-      rev = "f3d1f14fa8a8cf882be39605fb037ee982c3f37c";
-      sha256 = "0qngyypp8md9rq06xvmwy5qwpa5al6kscj9ivad9mg3wzw6rmya6";
+      rev = "c466c955e85d995984a8135e16da71463712e5e5";
+      sha256 = "0s14m5k1vw5pfgi9wc9jhvwfwv57hdcrji24vspid8yjzgfjf5yd";
     };
     meta.homepage = "https://github.com/deoplete-plugins/deoplete-lsp/";
   };
@@ -1796,24 +1820,24 @@ final: prev:
 
   dracula-vim = buildVimPluginFrom2Nix {
     pname = "dracula-vim";
-    version = "2022-01-18";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "dracula";
       repo = "vim";
-      rev = "210e0961b9bd765b5b46a84d0631271ee8e6af64";
-      sha256 = "0f4kf6853wynhdc30hmc9avk1k6inw8jxp9w0sgkgp6958s3ksfh";
+      rev = "d7723a842a6cfa2f62cf85530ab66eb418521dc2";
+      sha256 = "1qzil8rwpdzf64gq63ds0cf509ldam77l3fz02g1mia5dry75r02";
     };
     meta.homepage = "https://github.com/dracula/vim/";
   };
 
   dressing-nvim = buildVimPluginFrom2Nix {
     pname = "dressing.nvim";
-    version = "2022-03-02";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "dressing.nvim";
-      rev = "b36b69c6a5d6b30b16782be22674d6d037dc87e3";
-      sha256 = "1inb7x7lcf5vrxhbcxcmdldvbldq8asn21wvp3awf9wk8zn6572i";
+      rev = "31f12fff6e71a14ddce30bfc7ec9b29a2137ccde";
+      sha256 = "0kjx04q2hnbvw68wh3d9li9p9s5d07j308kfhawpnhnmv6g57nzw";
     };
     meta.homepage = "https://github.com/stevearc/dressing.nvim/";
   };
@@ -1832,12 +1856,12 @@ final: prev:
 
   edge = buildVimPluginFrom2Nix {
     pname = "edge";
-    version = "2022-03-10";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "edge";
-      rev = "ba27cebaa7cc51f60f5f8dbeae0ab94c6ccca8e5";
-      sha256 = "1fd32qwvqsdb2ndpsnxlaw5940f31p3vlk9j79pxykizl4zi4w39";
+      rev = "36c08622c4420129fa576ceafa4ed3388d3beb56";
+      sha256 = "0hai4ns9chvqb8x7vgcl0i0lxqvqwxwhpa489zsqsp1lb436bwqc";
     };
     meta.homepage = "https://github.com/sainnhe/edge/";
   };
@@ -1893,12 +1917,12 @@ final: prev:
 
   embark-vim = buildVimPluginFrom2Nix {
     pname = "embark-vim";
-    version = "2022-01-10";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "embark-theme";
       repo = "vim";
-      rev = "2740b2f15708dee3a5b390709e07a69255f75d75";
-      sha256 = "1y1i5wzs1w20k6yyr6l8861bph7xj50ks66yxy7kc97f18jrpra6";
+      rev = "3f7f03aa2ae0d4185792aaf9b960bca0d22c48fd";
+      sha256 = "0gv2ivrwsrhnsr2kh56yj3m1l4ydwq27vllzxa5vkpbb11jydf3d";
     };
     meta.homepage = "https://github.com/embark-theme/vim/";
   };
@@ -1930,12 +1954,12 @@ final: prev:
 
   everforest = buildVimPluginFrom2Nix {
     pname = "everforest";
-    version = "2022-03-10";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "everforest";
-      rev = "e6628a1ff5028086b42e90061c78c8d3bd15a7c8";
-      sha256 = "0sb0vhnlfm0830w5kpy3jd1ihxpx1ban0mg0lvgg1fqxn8a0kzkx";
+      rev = "764e36cf49a5845217ef09281adf708ab5abd9e3";
+      sha256 = "03byh70krkcgcj6yis7x73bzs8b21qic5qhi01az057rp7mx462l";
     };
     meta.homepage = "https://github.com/sainnhe/everforest/";
   };
@@ -1990,12 +2014,12 @@ final: prev:
 
   feline-nvim = buildVimPluginFrom2Nix {
     pname = "feline.nvim";
-    version = "2022-02-13";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "feline-nvim";
       repo = "feline.nvim";
-      rev = "7ddd3f02757b04f1035d0ae8bbe9d8461d536a2d";
-      sha256 = "0dfv4a131x5c6njwiz34kfr0sgky8mmd3ifd7gpk5z5q5cwgbhg0";
+      rev = "290bea8e8a782586de32bb8d0bfb056ff8acdb9c";
+      sha256 = "0sjg8hb6z9c7kscx26jkdxl31qy244w76iywy8xp7143kb9p0qx1";
     };
     meta.homepage = "https://github.com/feline-nvim/feline.nvim/";
   };
@@ -2014,12 +2038,12 @@ final: prev:
 
   fern-vim = buildVimPluginFrom2Nix {
     pname = "fern.vim";
-    version = "2022-03-03";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "lambdalisue";
       repo = "fern.vim";
-      rev = "6a0763f917e05c3a22cfa85cbb65e6a9234da122";
-      sha256 = "1yl9l3hily2548v5h848f9vg15fblnrb8imlhnv9v31w0233h9xp";
+      rev = "45950d39965150a6c6bff1979303e735460379d0";
+      sha256 = "067aild4sr5zd08fn2dna9ndycf5i4w524kkz88yzhyr7h5rc0w4";
     };
     meta.homepage = "https://github.com/lambdalisue/fern.vim/";
   };
@@ -2038,12 +2062,12 @@ final: prev:
 
   fidget-nvim = buildVimPluginFrom2Nix {
     pname = "fidget.nvim";
-    version = "2022-02-19";
+    version = "2022-03-20";
     src = fetchFromGitHub {
       owner = "j-hui";
       repo = "fidget.nvim";
-      rev = "cbe0db4f2adfddfd830310e5846f8735d4e068fa";
-      sha256 = "0fg3rmp3nnb3hh8cs4mha96xjfzkgbs308a5lbmsbkqz9gi2l6yq";
+      rev = "d47f2bbf7d984f69dc53bf2d37f9292e3e99ae8a";
+      sha256 = "0nw05yzy1a9yq8jvjgzq1y2wbq1x8rski6brmz3pn4rdmpkzqvsd";
     };
     meta.homepage = "https://github.com/j-hui/fidget.nvim/";
   };
@@ -2123,12 +2147,12 @@ final: prev:
 
   formatter-nvim = buildVimPluginFrom2Nix {
     pname = "formatter.nvim";
-    version = "2022-03-01";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "mhartington";
       repo = "formatter.nvim";
-      rev = "2e82574f2cb6686849fb8e7a0231537734161fd4";
-      sha256 = "08c9asrkmr57v83n3a6r28a0rxwna9xp227p8jr3rj3fn9ykahxw";
+      rev = "cc42c16a793cba102ac75574ab187a77995ba06b";
+      sha256 = "1qz87l2da378wcbbck6n9p82apl594x2kxldl4sxhy88rbbqi2vb";
     };
     meta.homepage = "https://github.com/mhartington/formatter.nvim/";
   };
@@ -2147,12 +2171,12 @@ final: prev:
 
   friendly-snippets = buildVimPluginFrom2Nix {
     pname = "friendly-snippets";
-    version = "2022-03-05";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "rafamadriz";
       repo = "friendly-snippets";
-      rev = "ad07b2844021b20797adda5b483265802559a693";
-      sha256 = "1gar4pcdh4waxsjr423s4s1bdxplg01bgalp414pwbc4zwzrdh3b";
+      rev = "e302658e765cf20e6af5a1be8cc07a996d6ee2cc";
+      sha256 = "15s2k776wf4qs3w101q6dwip8abqhsxb1f7xnx41zq7j1r09i20r";
     };
     meta.homepage = "https://github.com/rafamadriz/friendly-snippets/";
   };
@@ -2171,12 +2195,12 @@ final: prev:
 
   FTerm-nvim = buildVimPluginFrom2Nix {
     pname = "FTerm.nvim";
-    version = "2022-01-04";
+    version = "2022-03-13";
     src = fetchFromGitHub {
       owner = "numToStr";
       repo = "FTerm.nvim";
-      rev = "eabb65f23ba48ec9e8abb9a2514f99b77b3bc6f2";
-      sha256 = "0bk1lh9i584ysj5yvmb7945nkighrc8blw28y6npqaf6mvma31n6";
+      rev = "233633a5f6fe8398187a4eba93eba0828ef3d5f3";
+      sha256 = "0sxnii921xia4mrf67qz7ichi9xqr9zf193hb9dx199l7hl6k1p8";
     };
     meta.homepage = "https://github.com/numToStr/FTerm.nvim/";
   };
@@ -2291,12 +2315,12 @@ final: prev:
 
   ghcid = buildVimPluginFrom2Nix {
     pname = "ghcid";
-    version = "2022-03-05";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "ndmitchell";
       repo = "ghcid";
-      rev = "b6a426bc8224865c70244365f5c7599765d8df95";
-      sha256 = "1l1485fnsf9y529snqh68kwksc5xcxg7fh7ikscisqdia2j75vg9";
+      rev = "f48626bf5b64067a84b644bcc56afac686046966";
+      sha256 = "0v2m05980r5zq77b11nghjgz0yr70a88gd7jv0d0iy2z6ah63sxv";
     };
     meta.homepage = "https://github.com/ndmitchell/ghcid/";
   };
@@ -2387,12 +2411,12 @@ final: prev:
 
   gitsigns-nvim = buildVimPluginFrom2Nix {
     pname = "gitsigns.nvim";
-    version = "2022-03-09";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "gitsigns.nvim";
-      rev = "5c487a804e462c284c159c800a803b8e0294d0a4";
-      sha256 = "13i2c5r021h9jbsiap31f42y67z0pqjwfgmx6z64r35n3gmz5azz";
+      rev = "2a107231d92fa37224efdbc475abfba71f94b5ee";
+      sha256 = "0i17r2c48csff7pl0k1vvc5j61xh3qv4xq6v75raz937w0kj6hfg";
     };
     meta.homepage = "https://github.com/lewis6991/gitsigns.nvim/";
   };
@@ -2423,12 +2447,12 @@ final: prev:
 
   glow-nvim = buildVimPluginFrom2Nix {
     pname = "glow.nvim";
-    version = "2022-01-26";
+    version = "2022-03-10";
     src = fetchFromGitHub {
       owner = "ellisonleao";
       repo = "glow.nvim";
-      rev = "c6685381d31df262b776775b9f4252f6c7fa98d0";
-      sha256 = "08f6qi6ncicw7zj9vyf08pays9sbxvzwm920i3mbkld6nmb87j39";
+      rev = "64052ad16286281861de9281dc0695c80cc9ccc4";
+      sha256 = "0ykd5ps6i7256w6yxvpjp6yia85ds9ln8icd29lzddf1qpza4rnr";
     };
     meta.homepage = "https://github.com/ellisonleao/glow.nvim/";
   };
@@ -2531,12 +2555,12 @@ final: prev:
 
   gruvbox-material = buildVimPluginFrom2Nix {
     pname = "gruvbox-material";
-    version = "2022-03-10";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "gruvbox-material";
-      rev = "256cd9d2bb414942eb2300d41ead84ed0f52edfd";
-      sha256 = "1v7d4pfp1m9027x3spqikjhgv03fsjpmmgl6hzf2nzlxqiavh07v";
+      rev = "b8b63c81637c845e8a7c2dff4c206b714f7b93e4";
+      sha256 = "0ds72yyca1sgrr5b7i683i0lpfz6n75vrij94vc8z07ivn33qy2r";
     };
     meta.homepage = "https://github.com/sainnhe/gruvbox-material/";
   };
@@ -2639,40 +2663,52 @@ final: prev:
 
   hologram-nvim = buildVimPluginFrom2Nix {
     pname = "hologram.nvim";
-    version = "2022-02-17";
+    version = "2022-03-13";
     src = fetchFromGitHub {
       owner = "edluffy";
       repo = "hologram.nvim";
-      rev = "de698e1f8db5d1d3a65ba9dd1880096ae2d5ff7f";
-      sha256 = "099dj5zvijhpvvd6r0zvsyl0v841cqh4vz678k1f7jcrpk6g9537";
+      rev = "7bd3ffb073dde94c8d86c1b49c47ef9d2f2bc605";
+      sha256 = "0hld4cr09bd0y4k9yz1lls5dqdak605zf5rnv75zi5scbgwly19c";
     };
     meta.homepage = "https://github.com/edluffy/hologram.nvim/";
   };
 
   hoon-vim = buildVimPluginFrom2Nix {
     pname = "hoon.vim";
-    version = "2022-01-29";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "urbit";
       repo = "hoon.vim";
-      rev = "f287adb9ce5f99a2a8b806833ab1582ba162aab0";
-      sha256 = "0nlmcz79qcmrkfji5mdc66p1pxrz5i68m50013fr66zqcccnynjk";
+      rev = "233d48ab2621877d8899b7a75b70f379ce36a066";
+      sha256 = "0bq8vd6dnf39y3686snaywp8krmjghfsxnnm0k1cyv20g1mf54s5";
     };
     meta.homepage = "https://github.com/urbit/hoon.vim/";
   };
 
   hop-nvim = buildVimPluginFrom2Nix {
     pname = "hop.nvim";
-    version = "2022-02-07";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "phaazon";
       repo = "hop.nvim";
-      rev = "75f73d3959a0df7ef3642fd5138acdb1ce50fdc8";
-      sha256 = "08yvjh70saffnjjxdhis9sfcbkpmbgm8jl3ax0qal41crwrv7ibb";
+      rev = "e2f978b50c2bd9ae2c6a4ebdf2222c0f299c85c3";
+      sha256 = "1si2ibxidjn0l565vhr77949s16yjv46alq145b19h15amwgq3g2";
     };
     meta.homepage = "https://github.com/phaazon/hop.nvim/";
   };
 
+  hotpot-nvim = buildVimPluginFrom2Nix {
+    pname = "hotpot.nvim";
+    version = "2022-03-23";
+    src = fetchFromGitHub {
+      owner = "rktjmp";
+      repo = "hotpot.nvim";
+      rev = "72704e1914648774a4fb42f57ca411d689e08ae6";
+      sha256 = "1dh6i2asqrhxc1irnhr46drn8ksj7xq81m6ankvy1gj8bkc74dmp";
+    };
+    meta.homepage = "https://github.com/rktjmp/hotpot.nvim/";
+  };
+
   i3config-vim = buildVimPluginFrom2Nix {
     pname = "i3config.vim";
     version = "2021-06-23";
@@ -2723,12 +2759,12 @@ final: prev:
 
   impatient-nvim = buildVimPluginFrom2Nix {
     pname = "impatient.nvim";
-    version = "2022-02-21";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "impatient.nvim";
-      rev = "7abfc924714d3b7f19f3674cca0231cf6ef2050f";
-      sha256 = "04q08syijlia2m8dbaf0854y4zp73j0ms1vg8wa7kr80rwvkrvbz";
+      rev = "989eefca3539b9958df100e8e3130f55eafe1709";
+      sha256 = "0cypb6nm0jlgf4cbsazwplvniiqrnda32nk2nkaqm0dbprs920sv";
     };
     meta.homepage = "https://github.com/lewis6991/impatient.nvim/";
   };
@@ -2783,12 +2819,12 @@ final: prev:
 
   indent-blankline-nvim = buildVimPluginFrom2Nix {
     pname = "indent-blankline.nvim";
-    version = "2022-03-09";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "lukas-reineke";
       repo = "indent-blankline.nvim";
-      rev = "9915d46ba9361784c70036bb7259c436249e5b0c";
-      sha256 = "0gcfm7hppgm2f909q6y8gs369mrh8flhbriyv5waq0ir15752cv4";
+      rev = "ebedbed53690a53cd15b53c124eb29f9faffc1d2";
+      sha256 = "1wsxvlpq78vyvgz6g0ji07dy1b10bsfr1qk9qdpj2n5592zp8zlk";
     };
     meta.homepage = "https://github.com/lukas-reineke/indent-blankline.nvim/";
   };
@@ -2904,12 +2940,12 @@ final: prev:
 
   jellybeans-nvim = buildVimPluginFrom2Nix {
     pname = "jellybeans-nvim";
-    version = "2021-04-07";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "metalelf0";
       repo = "jellybeans-nvim";
-      rev = "cef41133874073b35bf7e8061d97a5214623770d";
-      sha256 = "1hd21h48mwsixbx4iw8r86pmml2z79wpc0p0wb8d50jjxlyphgv4";
+      rev = "f77b75443adf6461ded30de0243f49771f933d06";
+      sha256 = "187xvsfg9ac04006bzcwdi03l5cnzg3rg7ak1s9n8wb66s25vrpx";
     };
     meta.homepage = "https://github.com/metalelf0/jellybeans-nvim/";
   };
@@ -2964,24 +3000,24 @@ final: prev:
 
   julia-vim = buildVimPluginFrom2Nix {
     pname = "julia-vim";
-    version = "2022-03-04";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "JuliaEditorSupport";
       repo = "julia-vim";
-      rev = "a4b2830cedfc57152bd4e6b27050a41f02229295";
-      sha256 = "0kmc6cgnsdim5yhjcy1hxcfp17a6pslj2zbray8jsfl9xkc2jl74";
+      rev = "a2c96eda9d5b0dde03d2e22d0888e40426cd38dd";
+      sha256 = "1x9f3gd4bgj3f1c75bp58mvaxll4rw55vznqckc0w0p1bcwq9faw";
     };
     meta.homepage = "https://github.com/JuliaEditorSupport/julia-vim/";
   };
 
   kanagawa-nvim = buildVimPluginFrom2Nix {
     pname = "kanagawa.nvim";
-    version = "2022-03-02";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "rebelot";
       repo = "kanagawa.nvim";
-      rev = "63cb5cc1a80def7da4bb375adee1587866250a17";
-      sha256 = "08iwz314c0k63mwv3yka8n79lb2627nbx9n81l9crz1f3nplaasd";
+      rev = "f5881a688b951cb35a7f36628b23ee4393d96daf";
+      sha256 = "1h4m0mcgvpdxh6pzkg2k5am9g31w8xpq84rcpqchvql7yhyjv4g7";
     };
     meta.homepage = "https://github.com/rebelot/kanagawa.nvim/";
   };
@@ -3084,24 +3120,24 @@ final: prev:
 
   LeaderF = buildVimPluginFrom2Nix {
     pname = "LeaderF";
-    version = "2022-03-07";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "Yggdroot";
       repo = "LeaderF";
-      rev = "58ef474453717efa9b700a22fc004756bf2ea5b9";
-      sha256 = "1gwk1p7djny7wgy2bb1m5g230z2rr6jy2bjjfwrnbddhvhvi32q8";
+      rev = "60e14a5bbd52a22578d6335c606d0539067b9327";
+      sha256 = "05bx5wm8r5rs4y51pkgb2m6bxzddacn7f3bdsgnmbvxz0rxyq8dp";
     };
     meta.homepage = "https://github.com/Yggdroot/LeaderF/";
   };
 
   lean-nvim = buildVimPluginFrom2Nix {
     pname = "lean.nvim";
-    version = "2022-03-08";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "Julian";
       repo = "lean.nvim";
-      rev = "d3fef426356b6d33248c3e919cbd9b90d3742a70";
-      sha256 = "0wr06w8bbsalfs188gg055wc0p4f6x7l8bqci96bjdn9f1pa1xpj";
+      rev = "c22a0a6d288488a05a74aaa53dac4d2d71f7a30d";
+      sha256 = "0rb1gw3ndrjw5k1l2ckm936xp83krrwi3ylr27il8mdf4xllw3y8";
     };
     meta.homepage = "https://github.com/Julian/lean.nvim/";
   };
@@ -3144,12 +3180,12 @@ final: prev:
 
   lexima-vim = buildVimPluginFrom2Nix {
     pname = "lexima.vim";
-    version = "2022-02-10";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "cohama";
       repo = "lexima.vim";
-      rev = "abfae597b52c621da63882c6d58f252a37815ac0";
-      sha256 = "1xn4xv7br7k92q6nsrrys0qrj1bm10asycyrqcqzzs7wvd1qirlv";
+      rev = "fbc05de53ca98b7f36a82f566db1df49864e58ef";
+      sha256 = "1gyxa9larwz8brfs47ivxcrx03fa52pvc6kw31c7nl03j5p91f8m";
     };
     meta.homepage = "https://github.com/cohama/lexima.vim/";
   };
@@ -3204,12 +3240,12 @@ final: prev:
 
   lightline-bufferline = buildVimPluginFrom2Nix {
     pname = "lightline-bufferline";
-    version = "2022-01-26";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "mengelbrecht";
       repo = "lightline-bufferline";
-      rev = "81c3ed800ce24bc09802899c1dc0c0b4d8d4f9b2";
-      sha256 = "1ahbd3l2jjjjcwsvjlbr0q4vhhlsngz9jwvmrkl5a7q9c7h0y7m6";
+      rev = "59b2c6b0ab5ad41ce42db89f05c8ea67020099ff";
+      sha256 = "0laz118k20sm3bn6r81f8pg9n77k5038c0vhgpbj349k3zraygjq";
     };
     meta.homepage = "https://github.com/mengelbrecht/lightline-bufferline/";
   };
@@ -3240,12 +3276,12 @@ final: prev:
 
   lightline-vim = buildVimPluginFrom2Nix {
     pname = "lightline.vim";
-    version = "2021-11-21";
+    version = "2022-03-15";
     src = fetchFromGitHub {
       owner = "itchyny";
       repo = "lightline.vim";
-      rev = "a29b8331e1bb36b09bafa30c3aa77e89cdd832b2";
-      sha256 = "0n3wrfcw6k95cmwg8jpxh0y9jy6y2bjgvszjgal9yha7y8gv6a9v";
+      rev = "11931e2de42cb1a14887a002a874f0b2daf12bc2";
+      sha256 = "1iyns1bm3wjr6z2hmc0p9j61vhprhax4f9qdqaf3w7vvgkhx1xj6";
     };
     meta.homepage = "https://github.com/itchyny/lightline.vim/";
   };
@@ -3288,12 +3324,12 @@ final: prev:
 
   lir-nvim = buildVimPluginFrom2Nix {
     pname = "lir.nvim";
-    version = "2022-03-09";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "tamago324";
       repo = "lir.nvim";
-      rev = "8447cf6de2bee95a23c6e43d7cfc291a713e401e";
-      sha256 = "0zr9bk6glf97g6w7wsk9s5zi6g3gbpk104b5aq0wl2dmcccxy09m";
+      rev = "00c30733467be30a72311e08030bba34ceb4f6df";
+      sha256 = "1psyvz4qb28mlkbxjs5xy6l4vhw9jyzc0j460xx2phiiz7raq852";
     };
     meta.homepage = "https://github.com/tamago324/lir.nvim/";
   };
@@ -3312,12 +3348,12 @@ final: prev:
 
   litee-calltree-nvim = buildVimPluginFrom2Nix {
     pname = "litee-calltree.nvim";
-    version = "2022-03-02";
+    version = "2022-03-20";
     src = fetchFromGitHub {
       owner = "ldelossa";
       repo = "litee-calltree.nvim";
-      rev = "86fa6872ba2195f4dc569073c46192041f153654";
-      sha256 = "0faqi0rwjdd09bv9h3j8jpyv8hmak91aymysi9rc99zwd84nvy59";
+      rev = "3f3c25e584558949b1eda38ded76eade28fa5fd6";
+      sha256 = "1k1i4c8rydnhk36pcwa9dhvlbawda0dbwh6ppgypm1xnda10hv3h";
     };
     meta.homepage = "https://github.com/ldelossa/litee-calltree.nvim/";
   };
@@ -3336,12 +3372,12 @@ final: prev:
 
   litee-symboltree-nvim = buildVimPluginFrom2Nix {
     pname = "litee-symboltree.nvim";
-    version = "2022-02-17";
+    version = "2022-03-20";
     src = fetchFromGitHub {
       owner = "ldelossa";
       repo = "litee-symboltree.nvim";
-      rev = "58ee5063ca1cd333a2d0a4a9509de80c7582ee01";
-      sha256 = "07qbfkjyf0j0mngn6bn4x4vypnl3sf0jaiwhw8iw7zqy4a1338rg";
+      rev = "ab90e26d68157d3f016f9a5d5c1d3a46a174618c";
+      sha256 = "07cfcmly1xdy4vmng8l2q2cpc99nvpdyihnl8x5xs2i7n1zakmdh";
     };
     meta.homepage = "https://github.com/ldelossa/litee-symboltree.nvim/";
   };
@@ -3443,12 +3479,12 @@ final: prev:
 
   lspsaga-nvim = buildVimPluginFrom2Nix {
     pname = "lspsaga.nvim";
-    version = "2022-03-03";
+    version = "2022-03-14";
     src = fetchFromGitHub {
       owner = "tami5";
       repo = "lspsaga.nvim";
-      rev = "f3cdb7b3a99c548b56fe39078a69d0c594422e18";
-      sha256 = "11l7iyykbd1hh673srpafggg3hlnf6a8jissmsx303gpnsml4bhv";
+      rev = "5309d75bd90ce5b1708331df3af1e971fa83a2b9";
+      sha256 = "0xvlpjv69wf18nw5hbmmgbhs8ws4gfq5ny2vrncqaxcikr3gdmms";
     };
     meta.homepage = "https://github.com/tami5/lspsaga.nvim/";
   };
@@ -3479,24 +3515,24 @@ final: prev:
 
   lualine-nvim = buildVimPluginFrom2Nix {
     pname = "lualine.nvim";
-    version = "2022-03-07";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "nvim-lualine";
       repo = "lualine.nvim";
-      rev = "88a44ade818f9ee7ba730aa4096250e22b243808";
-      sha256 = "0wjqpy7gvkzim27dnanzydphb44kdm345zm9yrngysrdpmbpkd0p";
+      rev = "f14175e142825c69c5b39e8f1564b9945a97d4aa";
+      sha256 = "0x6f88ixb6xd5nh3d8y5sql8yfyqs5fnpvdkdv9ywp7swzaydgqc";
     };
     meta.homepage = "https://github.com/nvim-lualine/lualine.nvim/";
   };
 
   luasnip = buildVimPluginFrom2Nix {
     pname = "luasnip";
-    version = "2022-03-08";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "l3mon4d3";
       repo = "luasnip";
-      rev = "35c7e1c1a1beec3dda228c7f3c2fba5c543c77a2";
-      sha256 = "10a6p7cwa0r3zpf3az4a7i5hi4lza0d7maxywnk0wb4x039bpq9x";
+      rev = "d03f0c32b2aa763915401421f6b084315936590f";
+      sha256 = "0qrryj40v70wl1mwn3jc0f50ygslc0848gppki5sxv1aq56a58ps";
     };
     meta.homepage = "https://github.com/l3mon4d3/luasnip/";
   };
@@ -3515,12 +3551,12 @@ final: prev:
 
   lush-nvim = buildVimPluginFrom2Nix {
     pname = "lush.nvim";
-    version = "2022-02-04";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "rktjmp";
       repo = "lush.nvim";
-      rev = "218923092bea0ba1f7cb5552b68994f28064b154";
-      sha256 = "1dmnmvavljy4dh6f7fvpwf6a2zl2rj9aq00jz57l1w0a63fddpcd";
+      rev = "fa7694fe221ca595d6f8c4f1aab531b4c1d48d7b";
+      sha256 = "14cs574nk0hr6mbf80gcjdarwbngbgj73s1grn6yczr2gqqqmhwk";
     };
     meta.homepage = "https://github.com/rktjmp/lush.nvim/";
   };
@@ -3587,12 +3623,12 @@ final: prev:
 
   material-nvim = buildVimPluginFrom2Nix {
     pname = "material.nvim";
-    version = "2022-03-10";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "marko-cerovac";
       repo = "material.nvim";
-      rev = "596270a53ac5e19a3b9f9f1777d7e99dcf67f71e";
-      sha256 = "0zzdks5dgfz19srflvxa4jj9gxzbany6a697p000vaq5zb59k9v2";
+      rev = "82f74e8ec5d21a8ec9ebe1175c330a0b6e490212";
+      sha256 = "0hgcgj84d92js6i6skwzznz0ym8cgzwr4pz5aqi038g8ldpcx0ki";
     };
     meta.homepage = "https://github.com/marko-cerovac/material.nvim/";
   };
@@ -3623,12 +3659,12 @@ final: prev:
 
   mini-nvim = buildVimPluginFrom2Nix {
     pname = "mini.nvim";
-    version = "2022-03-10";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "echasnovski";
       repo = "mini.nvim";
-      rev = "68f2bda2ce9ea9ecd51a133d9909c9ec07d44666";
-      sha256 = "0klsy5pq3fvj2v6199aikpa6br4q6l30ig5nqnh6jm8c48bw6nqg";
+      rev = "b0763e58ccb8b203f87fcd58fe2fecb095119f96";
+      sha256 = "0qbyvz7l9p9iia7mh41119zdgz2v8xrkp8wcxl6hyxqri18j49yn";
     };
     meta.homepage = "https://github.com/echasnovski/mini.nvim/";
   };
@@ -3659,24 +3695,24 @@ final: prev:
 
   mkdir-nvim = buildVimPluginFrom2Nix {
     pname = "mkdir.nvim";
-    version = "2022-02-26";
+    version = "2022-03-12";
     src = fetchFromGitHub {
       owner = "jghauser";
       repo = "mkdir.nvim";
-      rev = "ed2da69babf365395be5dde420d7ee6482564938";
-      sha256 = "05zavlylgadhwrv3andvr0briqblj0kr5m148s7bwczqi15y0ljy";
+      rev = "01261650382bef195dab8ac39344234b57914f09";
+      sha256 = "1irpi2aqi2pr0ydxsw2d4m2lkhzkqcs6gvz15snvnsckvk03j3v7";
     };
     meta.homepage = "https://github.com/jghauser/mkdir.nvim/";
   };
 
   mkdx = buildVimPluginFrom2Nix {
     pname = "mkdx";
-    version = "2022-03-01";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "SidOfc";
       repo = "mkdx";
-      rev = "1f33d22f61db59faa24aaa69f2452668c37eef32";
-      sha256 = "0ybi76l3f2r19d2f2ca5jjbn2gcvwdh9mxbh3xly8jin7f8anp36";
+      rev = "e3f0718d53347e884f9f2282c35df0063ec6f9b1";
+      sha256 = "13j611r2hzz2ldbvir89bxab4cicy5nrg9s780dsriz2g4slj5hg";
     };
     meta.homepage = "https://github.com/SidOfc/mkdx/";
   };
@@ -3707,36 +3743,36 @@ final: prev:
 
   mru = buildVimPluginFrom2Nix {
     pname = "mru";
-    version = "2022-03-10";
+    version = "2022-03-12";
     src = fetchFromGitHub {
       owner = "yegappan";
       repo = "mru";
-      rev = "148f71bd47bdb2af8c639694863910b6e551aaa4";
-      sha256 = "1cijxc0srzbl2bycx7ccmwhgzz89frvyyim808rcy7bk7i56ccda";
+      rev = "2698dc2622450645618e6457a81d325954ba725f";
+      sha256 = "06w4rmdn48h21wl9mn5v9mfkaaypd1fxhdjiv7ng5zj7jgi1qnsd";
     };
     meta.homepage = "https://github.com/yegappan/mru/";
   };
 
   Navigator-nvim = buildVimPluginFrom2Nix {
     pname = "Navigator.nvim";
-    version = "2022-03-07";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "numToStr";
       repo = "Navigator.nvim";
-      rev = "6bfcf7da965a03fd1e170aa6870b92b16bf739ee";
-      sha256 = "1vx3ibxsn4gdq44pqhykygmim1cq1pj6qrd8cs9lpkm1vq1gz35w";
+      rev = "58d07e658c15b61ef7b6e375073b1f06934bc28f";
+      sha256 = "0d40rilwcxi7q36fnk4xpyx1cq3nb4yf22j8k8zq6mwg5h4j648r";
     };
     meta.homepage = "https://github.com/numToStr/Navigator.nvim/";
   };
 
   ncm2 = buildVimPluginFrom2Nix {
     pname = "ncm2";
-    version = "2021-10-08";
+    version = "2022-03-17";
     src = fetchFromGitHub {
       owner = "ncm2";
       repo = "ncm2";
-      rev = "d2d8cc430232f385d8468f44da8635febb9a92ad";
-      sha256 = "1zkl8g7kf95rbyk9zs1xwr0n76l1f9vvwc2432rsmgj2bdly8vby";
+      rev = "24d77cd5206438a6670ff1cf8d1628532910e14e";
+      sha256 = "1avxqqajkd1rhz61c066n4qxv5955yl6w5mgm15z3disgi68kvb2";
     };
     meta.homepage = "https://github.com/ncm2/ncm2/";
   };
@@ -3995,24 +4031,24 @@ final: prev:
 
   neoformat = buildVimPluginFrom2Nix {
     pname = "neoformat";
-    version = "2022-01-26";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "sbdchd";
       repo = "neoformat";
-      rev = "0d665b05efa344977208c230f164440e3a5ce52f";
-      sha256 = "1ckz7lrnwgnijf6mm6dxamqhwkr0y0wswc5gcm3np37r58yc5mbh";
+      rev = "bccf41d62e874fd614d83c8b0e942cdda6b98012";
+      sha256 = "163pfqa33n1hzz3wb02ymisvl070lz1apcgyn349xbq4fz7ry3b9";
     };
     meta.homepage = "https://github.com/sbdchd/neoformat/";
   };
 
   neogit = buildVimPluginFrom2Nix {
     pname = "neogit";
-    version = "2022-03-05";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "TimUntersberger";
       repo = "neogit";
-      rev = "f30879799f7c19d0047c6f3d3a86b818eaf0f201";
-      sha256 = "1bfm5zfc97kna9hkb8asknbx1b7pznv88n3128a7d11ysasziz98";
+      rev = "9987421e0724ce704d0035f50a7080c677a85d71";
+      sha256 = "14sbbih38494ybhs5khsd07rq0136gdacjchfz8bx3sq05l0blmf";
     };
     meta.homepage = "https://github.com/TimUntersberger/neogit/";
   };
@@ -4031,12 +4067,12 @@ final: prev:
 
   neomake = buildVimPluginFrom2Nix {
     pname = "neomake";
-    version = "2021-09-17";
+    version = "2022-03-19";
     src = fetchFromGitHub {
       owner = "neomake";
       repo = "neomake";
-      rev = "8df876172fd9b8f6c023fcd5b84728a675cbdf91";
-      sha256 = "0dqr9b2h0f2rxiw4lvws2gamwxdmnqb2qsk2ish47v7lnc772l2l";
+      rev = "0556893d7fbc1948ac1a82cd0f41023d76a234b2";
+      sha256 = "0dw6miyxbbi71na8qb7nqk20vni1q46lmg51r0h354xcnxn4hyms";
     };
     meta.homepage = "https://github.com/neomake/neomake/";
   };
@@ -4067,12 +4103,12 @@ final: prev:
 
   neorg = buildVimPluginFrom2Nix {
     pname = "neorg";
-    version = "2022-03-09";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "nvim-neorg";
       repo = "neorg";
-      rev = "ed9fb80e846042a46521494a980df83bc4e075fd";
-      sha256 = "1f85yr0kvncxhqp9l4diwk9l3g2sg8ca3xbvp95qh957jfp03n9k";
+      rev = "8f8c1ae889ffe666423a89271933272ebffec3ef";
+      sha256 = "10fgkrr9wn6jj35qa42c353k4rnys9a2wrckjk0kwrx6kvx7m6l6";
     };
     meta.homepage = "https://github.com/nvim-neorg/neorg/";
   };
@@ -4259,12 +4295,12 @@ final: prev:
 
   nightfox-nvim = buildVimPluginFrom2Nix {
     pname = "nightfox.nvim";
-    version = "2022-03-03";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "EdenEast";
       repo = "nightfox.nvim";
-      rev = "2208bcb7fe17a76d8b88f296fe632860bf62d948";
-      sha256 = "0pq5r5kdq858k5cxd9ix3xqwvikllq63b86ba42jpkq1z39bdk2v";
+      rev = "2b19e2ad758f078b607408b15bdaf39f3beafac6";
+      sha256 = "0xn78z74wldjq7p5xzlbv4562b6i5nha3lj0bc2hv6w9n3m7q494";
     };
     meta.homepage = "https://github.com/EdenEast/nightfox.nvim/";
   };
@@ -4331,12 +4367,12 @@ final: prev:
 
   nordic-nvim = buildVimPluginFrom2Nix {
     pname = "nordic.nvim";
-    version = "2022-03-07";
+    version = "2022-03-13";
     src = fetchFromGitHub {
       owner = "andersevenrud";
       repo = "nordic.nvim";
-      rev = "419542972605b808607d9339cbda0a216b6e8be6";
-      sha256 = "10w85n2i7hl0whnv3pb3zva6iws61ca2a8xcrlwh1si2vjywby6i";
+      rev = "612f7db0b904d11eeddd41474e71e4bf67acc453";
+      sha256 = "000s48f80gpwsqfgxcsafifd10ii99w8kw237i9afa2msrk9w1fs";
     };
     meta.homepage = "https://github.com/andersevenrud/nordic.nvim/";
   };
@@ -4379,24 +4415,24 @@ final: prev:
 
   null-ls-nvim = buildVimPluginFrom2Nix {
     pname = "null-ls.nvim";
-    version = "2022-03-10";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "jose-elias-alvarez";
       repo = "null-ls.nvim";
-      rev = "2d98a1dac0a6ffc915e78738f87ad80c9c6a8d18";
-      sha256 = "0wnxbfyr9q4rqbivff0lnyv1b6h9i0dkrg67qxnkqmh3zx34pq9z";
+      rev = "7253974f8bd8c805a2a1cf7456b4d47913f4a094";
+      sha256 = "0xy80c1wra3ir8v0ywrrmyswprbzknlwf69q9g33g29zsmgfx9dr";
     };
     meta.homepage = "https://github.com/jose-elias-alvarez/null-ls.nvim/";
   };
 
   numb-nvim = buildVimPluginFrom2Nix {
     pname = "numb.nvim";
-    version = "2021-07-12";
+    version = "2022-03-20";
     src = fetchFromGitHub {
       owner = "nacro90";
       repo = "numb.nvim";
-      rev = "c8b128230adb22727256fd24a221f4c5a1b41e93";
-      sha256 = "0dg5cym0rcjy198rhkd61mhq1mg7lw5z4vprik8aimgnlqdzgqad";
+      rev = "453c50ab921fa066fb073d2fd0f826cb036eaf7b";
+      sha256 = "0pkssmd29r2d5f0s770ppj0z4rv0qj5szd43jh16wxknwwjmqi9n";
     };
     meta.homepage = "https://github.com/nacro90/numb.nvim/";
   };
@@ -4427,36 +4463,36 @@ final: prev:
 
   nvim-autopairs = buildVimPluginFrom2Nix {
     pname = "nvim-autopairs";
-    version = "2022-03-06";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "windwp";
       repo = "nvim-autopairs";
-      rev = "d2cde7c5802b34d6391a8a3555a3b7b56482f2aa";
-      sha256 = "1cbijlqblxf5chc35lq8jl8pzfkx0a72bbf6bzz90nvrcn4xc6m3";
+      rev = "f3ebca37d6ef1ff22d1f2c764a9e619d1fe5f3c7";
+      sha256 = "0w5xsj55iz30khiw4y47h43i40z2ly607bm8hvddpvrd50i5vcz1";
     };
     meta.homepage = "https://github.com/windwp/nvim-autopairs/";
   };
 
   nvim-base16 = buildVimPluginFrom2Nix {
     pname = "nvim-base16";
-    version = "2022-02-20";
+    version = "2022-03-13";
     src = fetchFromGitHub {
       owner = "RRethy";
       repo = "nvim-base16";
-      rev = "6c6962d51dda76cf9bc1467aa8b09036396985d0";
-      sha256 = "07ynvj0m88l8vbzvk8izqbwxs4wr99f99wh7x95jpi4wd6rfdvc3";
+      rev = "9893a06a11b448e05c0bd1f44970acbb7712e8ba";
+      sha256 = "0hhlyw9nacyc4pyx2537y145lm9p3s4m4ckh8cwbambp5ypnn8kl";
     };
     meta.homepage = "https://github.com/RRethy/nvim-base16/";
   };
 
   nvim-bqf = buildVimPluginFrom2Nix {
     pname = "nvim-bqf";
-    version = "2022-03-06";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "kevinhwang91";
       repo = "nvim-bqf";
-      rev = "dcb8a8762d9c93ddf7dc8f06009299c0bf11a14c";
-      sha256 = "146bwcfywazl2ygs5r0yd56prdmrr1lbhlqcbrvs7l4pkh58w4fw";
+      rev = "7d3630f1616c2e5cf9f1c8efc1cf186b9249ce7b";
+      sha256 = "0y9kp05qgs7mmivs52ab26jhiqj1izz4jhj1n4x26zmaqbpw4viw";
     };
     meta.homepage = "https://github.com/kevinhwang91/nvim-bqf/";
   };
@@ -4487,24 +4523,24 @@ final: prev:
 
   nvim-cmp = buildVimPluginFrom2Nix {
     pname = "nvim-cmp";
-    version = "2022-03-02";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "nvim-cmp";
-      rev = "1001683bee3a52a7b7e07ba9d391472961739c7b";
-      sha256 = "1z2dy0mgzrpkxirkhximc5ibhgqf2hqa7d8xxmw6icpn3mxwb7xq";
+      rev = "272cbdca3e327bf43e8df85c6f4f00921656c4e4";
+      sha256 = "1z3nsrkla35sl6d66bjnk0qvqn1a5m8vn670qyb8y9nqs344fy8d";
     };
     meta.homepage = "https://github.com/hrsh7th/nvim-cmp/";
   };
 
   nvim-code-action-menu = buildVimPluginFrom2Nix {
     pname = "nvim-code-action-menu";
-    version = "2022-03-02";
+    version = "2022-03-17";
     src = fetchFromGitHub {
       owner = "weilbith";
       repo = "nvim-code-action-menu";
-      rev = "3f7fc82977e843e14bb3b16bad4cbd5d363d8694";
-      sha256 = "1x9cpy79fxq5nwpbfwi2xcw5xhk6nw16rribdns2n2qy4my4ajpa";
+      rev = "a864a79c8e024d4f5d95915210188c9c3430b160";
+      sha256 = "14m95sp0a6ss71s9ljg1b2m2sz4fyh0rxv9l4mj6brjywsx6agvw";
     };
     meta.homepage = "https://github.com/weilbith/nvim-code-action-menu/";
   };
@@ -4523,12 +4559,12 @@ final: prev:
 
   nvim-comment = buildVimPluginFrom2Nix {
     pname = "nvim-comment";
-    version = "2022-01-04";
+    version = "2022-03-15";
     src = fetchFromGitHub {
       owner = "terrortylor";
       repo = "nvim-comment";
-      rev = "f670649da497de12aa3d5afc0a693d5d50b17d85";
-      sha256 = "0j3pay000yf79lz5plcnfp068fychnf7xa08cg7h5s0nx5cp5bgh";
+      rev = "861921706a39144ea528a6200a059a549b02d8f0";
+      sha256 = "0r1yb20r8p53y5dli81sm5ycgs76vpwdwcggcwadgiv2rq78ax90";
     };
     meta.homepage = "https://github.com/terrortylor/nvim-comment/";
   };
@@ -4571,24 +4607,24 @@ final: prev:
 
   nvim-dap = buildVimPluginFrom2Nix {
     pname = "nvim-dap";
-    version = "2022-03-09";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-dap";
-      rev = "bc7ac4864188079a6122032a75ea914c95461c1f";
-      sha256 = "05wv0cq7w0adkq78fz47vwm65ws6ckysm9bxg3yaxlkiarc59vw0";
+      rev = "e6d7ba5847fbe5f33ba211cf28d3cea72cfa9865";
+      sha256 = "0w57cxj07law5igbxvblfk59pv5c8z714dm80njb168ldgy26kz6";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-dap/";
   };
 
   nvim-dap-ui = buildVimPluginFrom2Nix {
     pname = "nvim-dap-ui";
-    version = "2022-03-05";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "rcarriga";
       repo = "nvim-dap-ui";
-      rev = "b4a596f149f87a6e93ae11c46a2121ff7c265170";
-      sha256 = "12ljh9mnfvpw538lq8ggmxvsq7f1phjvp4xsnflrl7vkhdy32zsr";
+      rev = "45805d69273f1ca0753a096abd419e89af8e5f8a";
+      sha256 = "03jjhsdl0w5w0s7d9a64fmvwdpm1pkvjvd5gh1hgsavbpf0w71mb";
     };
     meta.homepage = "https://github.com/rcarriga/nvim-dap-ui/";
   };
@@ -4655,12 +4691,12 @@ final: prev:
 
   nvim-gps = buildVimPluginFrom2Nix {
     pname = "nvim-gps";
-    version = "2022-03-09";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "smiteshp";
       repo = "nvim-gps";
-      rev = "08134573e3d5fef75c52c39f3e7097dbbdf6255c";
-      sha256 = "1rs1y3ywrrcz03ad847903wrl4rmg1kzhvm9dkq33pz5m0myf75j";
+      rev = "1ad35eada2972c055b181c73852438a6ea51b484";
+      sha256 = "1kv7p2lcilvkvzl9whdkxgg94vk9fa9d1bikwhahxv2zxzk10qkz";
     };
     meta.homepage = "https://github.com/smiteshp/nvim-gps/";
   };
@@ -4679,12 +4715,12 @@ final: prev:
 
   nvim-hlslens = buildVimPluginFrom2Nix {
     pname = "nvim-hlslens";
-    version = "2022-03-09";
+    version = "2022-03-20";
     src = fetchFromGitHub {
       owner = "kevinhwang91";
       repo = "nvim-hlslens";
-      rev = "6c6dcf5c461355392487d8c0e5b00223de933948";
-      sha256 = "1rqk7n0cbrv25dzlz28xajw6fsqw9lrflicd9x830yq809mvfql0";
+      rev = "22f7df73283c6f947a56fef0355f5a3ee2971152";
+      sha256 = "1qjy4n0ly5vmkpfyjanqb76jvh6qa5ldqvhgfgxk91b9l35ca95l";
     };
     meta.homepage = "https://github.com/kevinhwang91/nvim-hlslens/";
   };
@@ -4703,12 +4739,12 @@ final: prev:
 
   nvim-jdtls = buildVimPluginFrom2Nix {
     pname = "nvim-jdtls";
-    version = "2022-01-27";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-jdtls";
-      rev = "e2a80d5f51c326d6623979d614dd7968ef752061";
-      sha256 = "1m8sc88g8sk41m4ml62zn7dn05q1ns8xr20c7bldqaz9rwqbhqny";
+      rev = "dd1e8dc1daac110cd86dccc159007deac856a89b";
+      sha256 = "1hzbn9v42z0m8s6fnf2r5navcshclsfpc88sasack5c1nvsvv43s";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-jdtls/";
   };
@@ -4763,24 +4799,24 @@ final: prev:
 
   nvim-lsp-ts-utils = buildVimPluginFrom2Nix {
     pname = "nvim-lsp-ts-utils";
-    version = "2022-03-10";
+    version = "2022-03-15";
     src = fetchFromGitHub {
       owner = "jose-elias-alvarez";
       repo = "nvim-lsp-ts-utils";
-      rev = "c68bf8e382eb737d98ec77b2f87ce5c07ea09b46";
-      sha256 = "10jj3qdxcsyfv260zp5sd2ys93r7y4584865iv1bvgxa98g7y8ps";
+      rev = "1d2c585cb69a91cf53f17a90d2544ed10eb03193";
+      sha256 = "07vf3xzcld2h3j6hnrrib60p2gnjkcb96h33sm8kfdvaj1578pbd";
     };
     meta.homepage = "https://github.com/jose-elias-alvarez/nvim-lsp-ts-utils/";
   };
 
   nvim-lspconfig = buildVimPluginFrom2Nix {
     pname = "nvim-lspconfig";
-    version = "2022-03-09";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "neovim";
       repo = "nvim-lspconfig";
-      rev = "096398a07c2dc08d785266f9f55ddcb462ba0749";
-      sha256 = "05gb0nd9iv06hr6zfa8yc2n4nd3p98mvcsdbyxm504bpfy3z8c81";
+      rev = "7d5a6dc46dd2ebaeb74b573922f289ae33089fe7";
+      sha256 = "1dz2q6n2ibq9l2js088wfp2y5md6z8lqs6hy02xajglvb0d9g3fg";
     };
     meta.homepage = "https://github.com/neovim/nvim-lspconfig/";
   };
@@ -4799,12 +4835,12 @@ final: prev:
 
   nvim-metals = buildVimPluginFrom2Nix {
     pname = "nvim-metals";
-    version = "2022-03-09";
+    version = "2022-03-20";
     src = fetchFromGitHub {
       owner = "scalameta";
       repo = "nvim-metals";
-      rev = "32a37ce2f2cdafd0f1c5a44bcf748dae6867c982";
-      sha256 = "1n3x2i0jd7lrxa66v7fw0rffy3mv5rajqv9qh1r38x45mig8vi40";
+      rev = "3312490ef74ea149121a82fde578a13b1921cef9";
+      sha256 = "0xi13qji716kdbbq579pj7rxbjfkwjrsdp3qvfb937spwzbak2jc";
     };
     meta.homepage = "https://github.com/scalameta/nvim-metals/";
   };
@@ -4835,12 +4871,12 @@ final: prev:
 
   nvim-notify = buildVimPluginFrom2Nix {
     pname = "nvim-notify";
-    version = "2022-03-02";
+    version = "2022-03-20";
     src = fetchFromGitHub {
       owner = "rcarriga";
       repo = "nvim-notify";
-      rev = "f81b48d298c0ff7479b66568d9cc1a4794c196d0";
-      sha256 = "024zzjvdkj1bklhic3yh69jibvnjw0416wvm3lnfw7gjxshglrsy";
+      rev = "da1030208347ad8937fdad1d4f8092b578e3ea2f";
+      sha256 = "0myrcm6170ncff7ymdlaiahh9230yff794f4dc2lzwv5igkxxiha";
     };
     meta.homepage = "https://github.com/rcarriga/nvim-notify/";
   };
@@ -4859,12 +4895,12 @@ final: prev:
 
   nvim-scrollview = buildVimPluginFrom2Nix {
     pname = "nvim-scrollview";
-    version = "2022-02-27";
+    version = "2022-03-15";
     src = fetchFromGitHub {
       owner = "dstein64";
       repo = "nvim-scrollview";
-      rev = "0090dfbf449d7ad49f6bdaedf51b949e84affc72";
-      sha256 = "194pgvs9d11aihddc2c55r8vrz05154lr751w72vii3zvnik9xhd";
+      rev = "f1cdec5869de70359c8dff06e9057b99a56a0e48";
+      sha256 = "028wvmdbj2fllkw6nr2sasxpamqpl3gmrzdn8lw2bjfzy5xf88x1";
     };
     meta.homepage = "https://github.com/dstein64/nvim-scrollview/";
   };
@@ -4883,12 +4919,12 @@ final: prev:
 
   nvim-spectre = buildVimPluginFrom2Nix {
     pname = "nvim-spectre";
-    version = "2022-02-10";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "nvim-pack";
       repo = "nvim-spectre";
-      rev = "208d983e9bab4d0eb98b4642636e1b4f41c5280a";
-      sha256 = "0yq7whrlzrwiyk6xzakvrf9drrr21gy2s5318rnn9r01mp27z6in";
+      rev = "3bbf9cb2e36200d67c150d71d49011c133d3bbb8";
+      sha256 = "1jif3knz78mqf6sgckfwin1wx6ad4wppdc2y0hcxlj2kwm17xqzk";
     };
     meta.homepage = "https://github.com/nvim-pack/nvim-spectre/";
   };
@@ -4907,24 +4943,24 @@ final: prev:
 
   nvim-tree-lua = buildVimPluginFrom2Nix {
     pname = "nvim-tree.lua";
-    version = "2022-03-09";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "kyazdani42";
       repo = "nvim-tree.lua";
-      rev = "2457e141ae5c2e9c5d94a9550b37b421d25cfff1";
-      sha256 = "0cw0bgp6q2sa8v88dsvncxmwmglxywbdhiws2klcm6ij9kdk1gy9";
+      rev = "524758a207f9c5bf3888b446d9f93192a837b8a7";
+      sha256 = "0kz7qhirm7gkklmyysanndm4pimvfm0p0qzz3q96hv01hpm3d17y";
     };
     meta.homepage = "https://github.com/kyazdani42/nvim-tree.lua/";
   };
 
   nvim-treesitter = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter";
-    version = "2022-03-10";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter";
-      rev = "f448a78057290cca9c70c4065819da96103f3dee";
-      sha256 = "0yq2lkjch42s02wr93c4xv7sqksiklwspx5pg8d4cia7ghaadj8q";
+      rev = "b995eebe84df88092a41cbfd591bfc1565f70d8e";
+      sha256 = "1738mssq22n1njrpi004apgfv00fxn7yx00r3175qn57bjw9bks9";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
   };
@@ -4943,12 +4979,12 @@ final: prev:
 
   nvim-treesitter-pyfold = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter-pyfold";
-    version = "2021-05-22";
+    version = "2022-03-14";
     src = fetchFromGitHub {
       owner = "eddiebergman";
       repo = "nvim-treesitter-pyfold";
-      rev = "01185457e9c0a118d5807998de624179bc605a2a";
-      sha256 = "13dhix449mvbfsmg8j1554nv6i7gdr8d6143gdy3ihp8sx66bg6k";
+      rev = "46e0c3ebed0934fffcc2a23b52393059b76bff3f";
+      sha256 = "1fwmwkpnr0cy663cy5yx5spm5hrv8xhsgvk891dqbm1pydxbpa1z";
     };
     meta.homepage = "https://github.com/eddiebergman/nvim-treesitter-pyfold/";
   };
@@ -4967,12 +5003,12 @@ final: prev:
 
   nvim-treesitter-textobjects = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter-textobjects";
-    version = "2022-03-02";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter-textobjects";
-      rev = "7c6b5fe0926f52854f193d058cd98d2e74c3d483";
-      sha256 = "1zrgiazmqbn6664ji9gxvn36dsmp9v11nk99yl12c7fxdjlvfpql";
+      rev = "2885b60e9f9b90b4e2a32b0f8adf8571bf1f390e";
+      sha256 = "0q1dph3pz2ygz1wccjgcdfqyb4faj47rv2v9a4p4ngw2vd00qjgy";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter-textobjects/";
   };
@@ -4991,36 +5027,36 @@ final: prev:
 
   nvim-ts-context-commentstring = buildVimPluginFrom2Nix {
     pname = "nvim-ts-context-commentstring";
-    version = "2021-12-13";
+    version = "2022-03-18";
     src = fetchFromGitHub {
       owner = "joosepalviste";
       repo = "nvim-ts-context-commentstring";
-      rev = "097df33c9ef5bbd3828105e4bee99965b758dc3f";
-      sha256 = "1q6n98kfhi4ra2rgijv32z0m63r6waih8j8zdy0g4ffk4ycqxsf0";
+      rev = "7810f1fe706092290dd338f40e5e857bac4a03cf";
+      sha256 = "0hl3fivd0yn9g1di2545inz92szsqxq0svwhr8ymyg5sgx465rfc";
     };
     meta.homepage = "https://github.com/joosepalviste/nvim-ts-context-commentstring/";
   };
 
   nvim-ts-rainbow = buildVimPluginFrom2Nix {
     pname = "nvim-ts-rainbow";
-    version = "2022-03-03";
+    version = "2022-03-20";
     src = fetchFromGitHub {
       owner = "p00f";
       repo = "nvim-ts-rainbow";
-      rev = "0594067ae677a192a94e383c25a93ac1c3a844d1";
-      sha256 = "1pafxnzcwrxbbkqpf9psdglqksl97m8vb6180fwcrgdicbnyp793";
+      rev = "af1a18d2577ba0be5b59bc4b32aebd2569ff085e";
+      sha256 = "1z100akjipzp3zyr7d54vbwwf53dj4f8y8qzf7fv32la142a7idq";
     };
     meta.homepage = "https://github.com/p00f/nvim-ts-rainbow/";
   };
 
   nvim-web-devicons = buildVimPluginFrom2Nix {
     pname = "nvim-web-devicons";
-    version = "2022-02-19";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "kyazdani42";
       repo = "nvim-web-devicons";
-      rev = "4415d1aaa56f73b9c05795af84d625c610b05d3b";
-      sha256 = "1n2301a0jxf2z79bc5hp97r48vsh25hy9bfrx12my6ag839ayyyj";
+      rev = "09e62319974d7d7ec7e53b974724f7942470ef78";
+      sha256 = "0f64alh5mf6zjnbxqsx21m3dcldqshx7a7z46qg0pfbnn9fx7swq";
     };
     meta.homepage = "https://github.com/kyazdani42/nvim-web-devicons/";
   };
@@ -5063,12 +5099,12 @@ final: prev:
 
   nvimdev-nvim = buildVimPluginFrom2Nix {
     pname = "nvimdev.nvim";
-    version = "2022-03-05";
+    version = "2022-03-15";
     src = fetchFromGitHub {
       owner = "neovim";
       repo = "nvimdev.nvim";
-      rev = "6562c96cfc9c71b139807a975ada6aa8528511dc";
-      sha256 = "1x4qjkq67wlhzwbhcjabqc0z8hz4racfdg7pssbig3cmj27y57ik";
+      rev = "cb0fcc1cdbe3864554a7b1ecbe706eb4de4ec680";
+      sha256 = "063fyzawn6i67cv3221s282ln5gpms3qw97blrd80l18syykj2b9";
     };
     meta.homepage = "https://github.com/neovim/nvimdev.nvim/";
   };
@@ -5123,36 +5159,36 @@ final: prev:
 
   onedark-nvim = buildVimPluginFrom2Nix {
     pname = "onedark.nvim";
-    version = "2022-01-11";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "navarasu";
       repo = "onedark.nvim";
-      rev = "e5f6772b61b4aea429db1d8cc61b8a91f467611b";
-      sha256 = "0nlr29ymv5hqiqblmlyac17w26s2y58jlaxmva4ms62x0wq4mxx0";
+      rev = "e520a0c81a5a1997ecffd846ccd9c6e63b7859c6";
+      sha256 = "1xvh5mmjc4w4rkp8h1qwxfqz3kcrqvhxnl66x19j098d1h7aqsb6";
     };
     meta.homepage = "https://github.com/navarasu/onedark.nvim/";
   };
 
   onedark-vim = buildVimPluginFrom2Nix {
     pname = "onedark.vim";
-    version = "2022-03-08";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "joshdick";
       repo = "onedark.vim";
-      rev = "d472198ec6d6a0d148dd0b4cdcf1b60e845311af";
-      sha256 = "00sjcihagbdka2mcld584ba2s5g99qbbjh6wgga7n90pkqcqmlw4";
+      rev = "7db2ed5b825a311d0f6d12694d4738cf60106dc8";
+      sha256 = "0jxnymbj83y0wfwv6ixxzlx1zyh9mlv1krq5g9wqhz4w6n9rkmqx";
     };
     meta.homepage = "https://github.com/joshdick/onedark.vim/";
   };
 
   onedarkpro-nvim = buildVimPluginFrom2Nix {
     pname = "onedarkpro.nvim";
-    version = "2022-03-07";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "olimorris";
       repo = "onedarkpro.nvim";
-      rev = "f0562da89fecbce7ef335875c70baedfdd34c7d8";
-      sha256 = "1f21m3ddmqpcxv2sv80k1zn9kvnx6m8h88mxv9nk8q422r4vrh21";
+      rev = "46b0ffb97f3778a1f6f5da6471a42f3f64bbf238";
+      sha256 = "13gyfz9fxgzvmcwwv19f8csmanv52144gvr5xdgvcg5nygkmydcp";
     };
     meta.homepage = "https://github.com/olimorris/onedarkpro.nvim/";
   };
@@ -5195,12 +5231,12 @@ final: prev:
 
   orgmode = buildVimPluginFrom2Nix {
     pname = "orgmode";
-    version = "2022-03-08";
+    version = "2022-03-10";
     src = fetchFromGitHub {
       owner = "nvim-orgmode";
       repo = "orgmode";
-      rev = "2adb21effcedd6f2c501797a9973d49ca4862544";
-      sha256 = "1z5rph5l7m50fh0lv6w56c723ajnr0fz3f4l59acci2p5158hbz0";
+      rev = "e1f3054987ce054525258d9a3cc5837bf6e75212";
+      sha256 = "0hwsajd7lhc04da7yzx770f3bgn2jsibcg1pjhxyib1prr17mpy0";
     };
     meta.homepage = "https://github.com/nvim-orgmode/orgmode/";
   };
@@ -5219,12 +5255,12 @@ final: prev:
 
   packer-nvim = buildVimPluginFrom2Nix {
     pname = "packer.nvim";
-    version = "2022-02-25";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "wbthomason";
       repo = "packer.nvim";
-      rev = "c576ab3f1488ee86d60fd340d01ade08dcabd256";
-      sha256 = "0g2h6wq2v315s1g5wh2qfvslly00iglx9sixqrq9xncrs34n4w25";
+      rev = "4dedd3b08f8c6e3f84afbce0c23b66320cd2a8f2";
+      sha256 = "09sqfak384lhqr37003bq4wm9v0hi690ilag89z6cw5c0fnsysbl";
     };
     meta.homepage = "https://github.com/wbthomason/packer.nvim/";
   };
@@ -5243,12 +5279,12 @@ final: prev:
 
   papercolor-theme = buildVimPluginFrom2Nix {
     pname = "papercolor-theme";
-    version = "2021-10-14";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "NLKNguyen";
       repo = "papercolor-theme";
-      rev = "d0d32dc5e92564b63ec905a9423984b5d503c24a";
-      sha256 = "1h9ql0ryqblnmiksskh4phah1br1gbfc3zyylc8gczppgnxvgq5p";
+      rev = "afde171829b1416125bf07a81fc28e4490aa91b2";
+      sha256 = "1iz8aqmwbnfha2agcxy7cd2v0znz8vzpz7iyvd15hxx7zbqlwz1d";
     };
     meta.homepage = "https://github.com/NLKNguyen/papercolor-theme/";
   };
@@ -5339,12 +5375,12 @@ final: prev:
 
   plenary-nvim = buildVimPluginFrom2Nix {
     pname = "plenary.nvim";
-    version = "2022-03-04";
+    version = "2022-03-20";
     src = fetchFromGitHub {
       owner = "nvim-lua";
       repo = "plenary.nvim";
-      rev = "14dfb4071022b22e08384ee125a5607464b6d397";
-      sha256 = "06c3r97kki2g3jha45nrm6i8dljrqak38iy1248ml8ri3ldpj44z";
+      rev = "0d660152000a40d52158c155625865da2aa7aa1b";
+      sha256 = "0r8amnlaqxg9jpqk6v4rzlfrc8q161jy1bpy35jrk7gva76kp9hm";
     };
     meta.homepage = "https://github.com/nvim-lua/plenary.nvim/";
   };
@@ -5641,12 +5677,12 @@ final: prev:
 
   refactoring-nvim = buildVimPluginFrom2Nix {
     pname = "refactoring.nvim";
-    version = "2022-03-10";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "theprimeagen";
       repo = "refactoring.nvim";
-      rev = "7b0c1354bfdc90e9c9085d206b2611ad5d77142a";
-      sha256 = "1z03xfqsrr7h7wy9lrsy1bxigyia4i102li5ndki3d2yi7pi9l61";
+      rev = "93967110eb45d7234802c0c0e2ef909968e8461e";
+      sha256 = "1mphqq650d3x0g2nl4pkgflp3hsi68agzj807r64x82p3266abzs";
     };
     meta.homepage = "https://github.com/theprimeagen/refactoring.nvim/";
   };
@@ -5725,12 +5761,12 @@ final: prev:
 
   rnvimr = buildVimPluginFrom2Nix {
     pname = "rnvimr";
-    version = "2022-01-10";
+    version = "2022-03-16";
     src = fetchFromGitHub {
       owner = "kevinhwang91";
       repo = "rnvimr";
-      rev = "86da77b6861a21aef04d644b7ad41751d9b66240";
-      sha256 = "06qarvvkxiz126446dd486zwi9yr7qxlgy4vwi38y2gyn793rv0q";
+      rev = "26dc0949680b77216ab4de7ae909b324944a493c";
+      sha256 = "1ci10s7kcpvg1g9k33ydn4zp8bnm69271mbhys5k9lc50qky2cp2";
     };
     meta.homepage = "https://github.com/kevinhwang91/rnvimr/";
   };
@@ -5785,12 +5821,12 @@ final: prev:
 
   rust-tools-nvim = buildVimPluginFrom2Nix {
     pname = "rust-tools.nvim";
-    version = "2022-03-06";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "simrat39";
       repo = "rust-tools.nvim";
-      rev = "9aa2d2da7f485336c5d97aa47c0acb0544ace768";
-      sha256 = "1ffwvx17pl36wxfdi0v8rgh20mb2ww9b5ghrj81n3125ffvl03sk";
+      rev = "9f89fe6d9762ef89973bbb698c750dd21b94ec44";
+      sha256 = "0r1k71rjlcly5pyi1vdzr22xdssikzsm5q4g2xzjp9v497fycg1h";
     };
     meta.homepage = "https://github.com/simrat39/rust-tools.nvim/";
   };
@@ -5823,22 +5859,22 @@ final: prev:
     pname = "salt-vim";
     version = "2017-07-01";
     src = fetchFromGitHub {
-      owner = "saltstack";
+      owner = "vmware-archive";
       repo = "salt-vim";
       rev = "6ca9e3500cc39dd417b411435d58a1b720b331cc";
       sha256 = "0r79bpl98xcsmkw6dg83cf1ghn89rzsr011zirk3v1wfxclri2c4";
     };
-    meta.homepage = "https://github.com/saltstack/salt-vim/";
+    meta.homepage = "https://github.com/vmware-archive/salt-vim/";
   };
 
   SchemaStore-nvim = buildVimPluginFrom2Nix {
     pname = "SchemaStore.nvim";
-    version = "2022-03-08";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "b0o";
       repo = "SchemaStore.nvim";
-      rev = "4926d66c99fd35cf41bf497fa4f8912acb5d6e8d";
-      sha256 = "0h6ncs2ac8i2rnal62blbgivykhlhspsd2nda8lwd68ri8pxn4w1";
+      rev = "f665a87f88b7b891aa5e1f91236b5bab29c2faaf";
+      sha256 = "1i90yyrm7ji8wf3if431al9ggcnps37k3lsnga3ixqa5pr7xsrg9";
     };
     meta.homepage = "https://github.com/b0o/SchemaStore.nvim/";
   };
@@ -6050,12 +6086,12 @@ final: prev:
 
   sonokai = buildVimPluginFrom2Nix {
     pname = "sonokai";
-    version = "2022-03-10";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "sonokai";
-      rev = "d92364f07a5b0a8279bfd3c97263bbae4b3ad958";
-      sha256 = "090d6s64j6w16l4ww0nm87686k3j4nwh1dl3ydd42mqqi3k95lkf";
+      rev = "774ccdb95a04539530be34fa17a34c0f64139aca";
+      sha256 = "1myz05j6i7h0yyffbip6a2gpfb61y35w48aa1wlh8i3m9bhy7g4a";
     };
     meta.homepage = "https://github.com/sainnhe/sonokai/";
   };
@@ -6122,12 +6158,12 @@ final: prev:
 
   SpaceVim = buildVimPluginFrom2Nix {
     pname = "SpaceVim";
-    version = "2022-02-26";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "SpaceVim";
       repo = "SpaceVim";
-      rev = "e1d68de4c28ec1d71e092c1b4d7cc70e5bec6aa4";
-      sha256 = "1zjj510vmvjqb248g0jssh689zsmx3xcwrclkgk3s3y84ylxmh1n";
+      rev = "a8d183fdd97de3c1ee54c0e5f0efe9e95a19d866";
+      sha256 = "0rhpasj5jw7jhij6pqjrsb48gwf4hrpadh8ab9d611v6akkkxlvv";
     };
     meta.homepage = "https://github.com/SpaceVim/SpaceVim/";
   };
@@ -6182,12 +6218,12 @@ final: prev:
 
   splitjoin-vim = buildVimPluginFrom2Nix {
     pname = "splitjoin.vim";
-    version = "2022-01-08";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "AndrewRadev";
       repo = "splitjoin.vim";
-      rev = "452d1359fb14731a316be49fb446a05d2c7d2f71";
-      sha256 = "0idp98hm8qbamfdav97c94b1fj6an9vha5rpkc4727n47fj5hvlq";
+      rev = "c32b18751a81715e3c13cff22fea9fb5ce31ef35";
+      sha256 = "12kp185ndag507b7l4qvhr369zyikwgh0wyi9lrjyr2ar5impjqc";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/AndrewRadev/splitjoin.vim/";
@@ -6231,12 +6267,12 @@ final: prev:
 
   stabilize-nvim = buildVimPluginFrom2Nix {
     pname = "stabilize.nvim";
-    version = "2021-12-22";
+    version = "2022-03-11";
     src = fetchFromGitHub {
       owner = "luukvbaal";
       repo = "stabilize.nvim";
-      rev = "16d1d235f0b05beb423d8b5e4a32044441e7e8ff";
-      sha256 = "00vaxyrji34xr0lhlanrd1sbbnrnvx93k6mwff0hmxq05m4r665x";
+      rev = "786c818d7258b783afc192ac287b4365c5596dcf";
+      sha256 = "07fd72p0qch0gfg92vcw3mlh7f8f1dii681qzpngnlk73ghq4ffw";
     };
     meta.homepage = "https://github.com/luukvbaal/stabilize.nvim/";
   };
@@ -6364,12 +6400,12 @@ final: prev:
 
   syntastic = buildVimPluginFrom2Nix {
     pname = "syntastic";
-    version = "2021-11-11";
+    version = "2022-03-17";
     src = fetchFromGitHub {
       owner = "vim-syntastic";
       repo = "syntastic";
-      rev = "2c4b33f6e6679fb5f3824d9cd38d4813c71a19a3";
-      sha256 = "18lb4rs9zrgn35b2x6b7pycd3h64virkadlidcy3xhzhsynlvwgr";
+      rev = "b7f4f71539038d33f173bfa72631737da049575a";
+      sha256 = "0f9nbq4p51624xkdb6a1xvfbvr0ylcr2bxv7gdssyahjr2g45bvy";
     };
     meta.homepage = "https://github.com/vim-syntastic/syntastic/";
   };
@@ -6461,12 +6497,12 @@ final: prev:
 
   tagbar = buildVimPluginFrom2Nix {
     pname = "tagbar";
-    version = "2022-02-06";
+    version = "2022-03-15";
     src = fetchFromGitHub {
       owner = "preservim";
       repo = "tagbar";
-      rev = "a0343f009025c0457edc92ab83b5a8ee5626d114";
-      sha256 = "14lqfkp6ldrdr67r2s5zjg9kml3llirsjbcvsczs0wmwmdl8r7bp";
+      rev = "69659cfc9d081caf31c8d548dd4c19593839317b";
+      sha256 = "1wdrn0zvqhz7pd0rgl5z3zri3sy4hb947nmw9imvwi62mpdhsh7d";
     };
     meta.homepage = "https://github.com/preservim/tagbar/";
   };
@@ -6569,12 +6605,12 @@ final: prev:
 
   telescope-file-browser-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-file-browser.nvim";
-    version = "2022-03-09";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope-file-browser.nvim";
-      rev = "84efd93ec772696c1cce2aada4d39f2756953964";
-      sha256 = "1n23d24nr9q857pgmzkcl6v49c1gs4bqabfdwjik18nxkjxq2zhk";
+      rev = "c6f5104ff309649ebbaec283bbd1ab54511dd109";
+      sha256 = "1b3z4i5jlxjk44x245b5sqnzcn5k1jww8viy0394hj6zqf7ink2w";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope-file-browser.nvim/";
   };
@@ -6676,6 +6712,18 @@ final: prev:
     meta.homepage = "https://github.com/nvim-telescope/telescope-symbols.nvim/";
   };
 
+  telescope-ui-select-nvim = buildVimPluginFrom2Nix {
+    pname = "telescope-ui-select.nvim";
+    version = "2022-03-20";
+    src = fetchFromGitHub {
+      owner = "nvim-telescope";
+      repo = "telescope-ui-select.nvim";
+      rev = "186a124a01d7f19e6fcf608d4e1cc61d61ebe939";
+      sha256 = "1lx11d4m0gcbvbb3bvxaciihnlsj1gi30ja1p0i9w7dm748d57zb";
+    };
+    meta.homepage = "https://github.com/nvim-telescope/telescope-ui-select.nvim/";
+  };
+
   telescope-ultisnips-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-ultisnips.nvim";
     version = "2021-09-26";
@@ -6726,12 +6774,12 @@ final: prev:
 
   telescope-nvim = buildVimPluginFrom2Nix {
     pname = "telescope.nvim";
-    version = "2022-03-10";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope.nvim";
-      rev = "a7517b4b2df8a066927f0a9d1f226c89bb69f06f";
-      sha256 = "1vsmhra3aj1q9r7g12iszgw2mlamcv4prz6s1sx0bvmj7ahfzwkq";
+      rev = "cf2d6d34282afd90f0f5d2aba265a23b068494c2";
+      sha256 = "042w0l8hdcxaj3pmbp0w1mqmivfm48pv3vlcz6d423qiljbkrk9k";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope.nvim/";
   };
@@ -6810,12 +6858,12 @@ final: prev:
 
   thumbnail-vim = buildVimPluginFrom2Nix {
     pname = "thumbnail.vim";
-    version = "2021-01-11";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "itchyny";
       repo = "thumbnail.vim";
-      rev = "bfd408a3210c305aaf51e6ce31ac99497e6ab1ec";
-      sha256 = "1kh12d0dg932j9drby27fhg8vbjm8rwih33rm4yjba0316i8wcyv";
+      rev = "01e4f648b99aa3799502b35682c2948794ccb238";
+      sha256 = "083xd3mwbv89k7vdwm7x3ww6xsjarphr0znfda47dam5r4vk41nz";
     };
     meta.homepage = "https://github.com/itchyny/thumbnail.vim/";
   };
@@ -6907,12 +6955,12 @@ final: prev:
 
   toggleterm-nvim = buildVimPluginFrom2Nix {
     pname = "toggleterm.nvim";
-    version = "2022-02-28";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "toggleterm.nvim";
-      rev = "e97d0c1046512e975a9f3fa95afe98f312752b1c";
-      sha256 = "00j1q6g7js9ais6s1vi18x165k1zrx988zbp0yr1gcd5n2xnknbi";
+      rev = "9f969e7f72d19966756318d61f2562f67dbb1f9c";
+      sha256 = "118hwkn9cw2wsqigqvbpvbhbag6ywc325lvn088dfpzbn9k7vfmr";
     };
     meta.homepage = "https://github.com/akinsho/toggleterm.nvim/";
   };
@@ -6967,12 +7015,12 @@ final: prev:
 
   trouble-nvim = buildVimPluginFrom2Nix {
     pname = "trouble.nvim";
-    version = "2021-12-31";
+    version = "2022-03-18";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "trouble.nvim";
-      rev = "20469be985143d024c460d95326ebeff9971d714";
-      sha256 = "00g1w1ry2gzklxvmvgy3dpig8njaziqz64yf7bqr9vqf0nxcvb5p";
+      rev = "691d490cc4eadc430d226fa7d77aaa84e2e0a125";
+      sha256 = "1d218xxz936q53aknazhnfxhy9ncjyq76dna6y5n87kxn9hzqix1";
     };
     meta.homepage = "https://github.com/folke/trouble.nvim/";
   };
@@ -7027,12 +7075,12 @@ final: prev:
 
   typescript-vim = buildVimPluginFrom2Nix {
     pname = "typescript-vim";
-    version = "2020-12-08";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "leafgarland";
       repo = "typescript-vim";
-      rev = "67e81e4292186889a1a519e1bf3a600d671237eb";
-      sha256 = "1mpp4n7qgz3yq4vka8h5sbngc14w5bzd9s9c2csbv9ds8w0lpi0g";
+      rev = "52f3ca3474d51f5021696ffb7297d989e49121ac";
+      sha256 = "12qcp82jkaa6nmdb0s4an29bfp9mzkkkxz2sfhm93x5506g8gk4l";
     };
     meta.homepage = "https://github.com/leafgarland/typescript-vim/";
   };
@@ -7147,12 +7195,12 @@ final: prev:
 
   vifm-vim = buildVimPluginFrom2Nix {
     pname = "vifm.vim";
-    version = "2022-03-07";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "vifm";
       repo = "vifm.vim";
-      rev = "b7da086d9f370b65ffeec6af76c8a37cf5e43336";
-      sha256 = "1ln0icwhmcrzkmn0ln75xn1inik5hyn6938i479128ysznplz8fm";
+      rev = "11d8fb106515a4c4e6016742053356c9f0434fed";
+      sha256 = "1gjaqmkrxg5x6mpb7dnznbbzrv3iadcw7snxjx7bzmr0b24mddcp";
     };
     meta.homepage = "https://github.com/vifm/vifm.vim/";
   };
@@ -7411,12 +7459,12 @@ final: prev:
 
   vim-airline = buildVimPluginFrom2Nix {
     pname = "vim-airline";
-    version = "2022-02-28";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline";
-      rev = "e2498d72dcc123115ed1d0fe1449beba6dadecc2";
-      sha256 = "0zr7ldn3kwx45qyi27bzbgy63va7hwvp9n2awrvgd3zsk1nq9kbq";
+      rev = "a306a7abfd8b4450fcfdc0384dadb996148d2c1b";
+      sha256 = "0qvz41rpdbcsszh0n4jhjrw9anyzsh4r1j694a3ryjj58gg9smjy";
     };
     meta.homepage = "https://github.com/vim-airline/vim-airline/";
   };
@@ -7663,12 +7711,12 @@ final: prev:
 
   vim-bracketed-paste = buildVimPluginFrom2Nix {
     pname = "vim-bracketed-paste";
-    version = "2018-05-22";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "ConradIrwin";
       repo = "vim-bracketed-paste";
-      rev = "c4c639f3cacd1b874ed6f5f196fac772e089c932";
-      sha256 = "1hhi7ab36iscv9l7i64qymckccnjs9pzv0ccnap9gj5xigwz6p9h";
+      rev = "45411da73cc159e4fc2138d930553d247bbfbcdc";
+      sha256 = "1bz40p7zr439ziy7mfks4jcs5rdnw4zinp81fw6wsm5knrx1r5qy";
     };
     meta.homepage = "https://github.com/ConradIrwin/vim-bracketed-paste/";
   };
@@ -7783,12 +7831,12 @@ final: prev:
 
   vim-clap = buildVimPluginFrom2Nix {
     pname = "vim-clap";
-    version = "2022-03-10";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "liuchengxu";
       repo = "vim-clap";
-      rev = "1b776663b029f00ed20cc87b871726fa0a2f394d";
-      sha256 = "1vgm6wh7nsdx7737vl97c8c2x8l1gdkdjbc1zd2a468ij9qhcg00";
+      rev = "6fd4fecaf8b1da31c625e5f02822778d4a2a08b5";
+      sha256 = "0h9z49r20wyqwvj4dr5grq0zdaz2d728jxc29l5q3rb1nh9nqbfi";
     };
     meta.homepage = "https://github.com/liuchengxu/vim-clap/";
   };
@@ -7908,7 +7956,7 @@ final: prev:
       owner = "flazz";
       repo = "vim-colorschemes";
       rev = "fd8f122cef604330c96a6a6e434682dbdfb878c9";
-      sha256 = "0kpsf6j20fgblc8vhqn7ymr52v2d1h52vc7rbxmxfwdm80nvv3g5";
+      sha256 = "1cg8q7w0vgl73aw1b9zz0zh5vw5d2pm8pm54fhfzva4azg56f416";
     };
     meta.homepage = "https://github.com/flazz/vim-colorschemes/";
   };
@@ -7927,12 +7975,12 @@ final: prev:
 
   vim-commentary = buildVimPluginFrom2Nix {
     pname = "vim-commentary";
-    version = "2021-09-14";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-commentary";
-      rev = "627308e30639be3e2d5402808ce18690557e8292";
-      sha256 = "0d056h2vh3bzc3mcijq90y5c7rvg01zzxyfc826h4f79y1fz8jnp";
+      rev = "3654775824337f466109f00eaf6759760f65be34";
+      sha256 = "09iv58r0z3dv5fd6g8zq542rc5hz81gd5h0ncnvhx9drrl6f86ip";
     };
     meta.homepage = "https://github.com/tpope/vim-commentary/";
   };
@@ -8059,12 +8107,12 @@ final: prev:
 
   vim-dadbod = buildVimPluginFrom2Nix {
     pname = "vim-dadbod";
-    version = "2022-03-06";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-dadbod";
-      rev = "23514a579ce6df28fd956070d9e2ac1051855115";
-      sha256 = "0pabwgszd6s03y1mykxxvipn4cwkzch4jgb18iqcnpbpgbsyghl6";
+      rev = "d6b9957a1e13f34fb66795fad729c611b2513922";
+      sha256 = "14a0mbhcw10400g6ybj6h8nq5bis9hba76qvjx5mph7vbb3rhjwn";
     };
     meta.homepage = "https://github.com/tpope/vim-dadbod/";
   };
@@ -8107,12 +8155,12 @@ final: prev:
 
   vim-DetectSpellLang = buildVimPluginFrom2Nix {
     pname = "vim-DetectSpellLang";
-    version = "2022-03-10";
+    version = "2022-03-15";
     src = fetchFromGitHub {
       owner = "konfekt";
       repo = "vim-DetectSpellLang";
-      rev = "65c3e44b125913d40692a6bd1e5c65b4c42bddf3";
-      sha256 = "0mz6hyf9il6l0gk8qn3hfazlkavjrw6w2nbhmqmxk2dnwp8h051c";
+      rev = "d5b55e3307e72e45f8d736818c76884016583538";
+      sha256 = "0l9bdgqaxfpndpf4v5kxn34zx5pnhf62chp4flzyyhhzlz52dqjw";
     };
     meta.homepage = "https://github.com/konfekt/vim-DetectSpellLang/";
   };
@@ -8167,12 +8215,12 @@ final: prev:
 
   vim-dirvish = buildVimPluginFrom2Nix {
     pname = "vim-dirvish";
-    version = "2021-10-08";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "justinmk";
       repo = "vim-dirvish";
-      rev = "f297b2effb0ec879f33a8539b9701d048d44f295";
-      sha256 = "02fag2mar06845dricviqb3jfc05f13na3svhcpddw7gdpimsdmv";
+      rev = "9dde0c97cc39ca1cf49cbe7ecd350d153a0426c3";
+      sha256 = "0ba2lsc2jwgplgqsnq69dngiybcs4ad0il19xlk250msxpr5l8xq";
     };
     meta.homepage = "https://github.com/justinmk/vim-dirvish/";
   };
@@ -8347,12 +8395,12 @@ final: prev:
 
   vim-endwise = buildVimPluginFrom2Nix {
     pname = "vim-endwise";
-    version = "2021-03-06";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-endwise";
-      rev = "4289889a2622f9bc7c594a6dd79763781f63dfb5";
-      sha256 = "0sixr3rpcgqbaiyk7w6ghcrvllh35cb3gq9isdlwkww3dz4jyyxc";
+      rev = "8faf48b69b04af120e162ce113ea21eac322e3b4";
+      sha256 = "0zfgsqs2mal1yh8x4lj1kx2ib80clsh9s9swh44cq5ga5glfkyn8";
     };
     meta.homepage = "https://github.com/tpope/vim-endwise/";
   };
@@ -8407,12 +8455,12 @@ final: prev:
 
   vim-eunuch = buildVimPluginFrom2Nix {
     pname = "vim-eunuch";
-    version = "2022-01-13";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-eunuch";
-      rev = "e2c9e01abd2734919e65dd6fe6c84ca2a9b65a7d";
-      sha256 = "02ilz95fmp2j9azpxia38hka2n81x5x3b1knaidiaf1pifl0c7zn";
+      rev = "01aa41b276b45e2df2cb680ab38e78ea7e5786c1";
+      sha256 = "149hnk9ja9vnw5vr7axliyqh0l2xz6i4l3lngdlzi1xic0xfwxf5";
     };
     meta.homepage = "https://github.com/tpope/vim-eunuch/";
   };
@@ -8467,12 +8515,12 @@ final: prev:
 
   vim-fireplace = buildVimPluginFrom2Nix {
     pname = "vim-fireplace";
-    version = "2021-12-09";
+    version = "2022-03-11";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fireplace";
-      rev = "b2fffb38988747e6891bf3bedf3921783e5659df";
-      sha256 = "023vj0bsg3vp9s7ldhidlzd40117fbp0xripvzrz364xy22ikn1c";
+      rev = "49f213283ffd79e1a397a30ce9e11849eaacf8e1";
+      sha256 = "0lk6xxbf111p1d75vagfhf1qydm1mzm4xycmyydfr46acy6a8hbk";
     };
     meta.homepage = "https://github.com/tpope/vim-fireplace/";
   };
@@ -8599,12 +8647,12 @@ final: prev:
 
   vim-fugitive = buildVimPluginFrom2Nix {
     pname = "vim-fugitive";
-    version = "2022-03-09";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fugitive";
-      rev = "46652a304f0b89f36d70cee954d77e467ec0f6de";
-      sha256 = "174qmalqmg8miq7ixc0c3w66qpc46c9rxvpw6sn8qalyifb0z7fj";
+      rev = "321328c6c5901a597348155fc0e83b800544dcb0";
+      sha256 = "11sd87c9vw1gs9pkvv0y24yqhkack0yxv5mg50ss6v7mjjdngv66";
     };
     meta.homepage = "https://github.com/tpope/vim-fugitive/";
   };
@@ -8743,12 +8791,12 @@ final: prev:
 
   vim-go = buildVimPluginFrom2Nix {
     pname = "vim-go";
-    version = "2022-02-16";
+    version = "2022-03-19";
     src = fetchFromGitHub {
       owner = "fatih";
       repo = "vim-go";
-      rev = "05f97b7fb130cf137b129dd4f9ab09fa5a8839c8";
-      sha256 = "1g0v9miazm9z9nbi3s8k5imh75kp4d1mz5q95y2aqm12bi5a7890";
+      rev = "dcefd64ba251ffc3d497f8758036735c8f6cc824";
+      sha256 = "1j5jrs7kk59ilqsjs0qk5213psv33xnnifsqrjc7h63p28sv3pnw";
     };
     meta.homepage = "https://github.com/fatih/vim-go/";
   };
@@ -8791,12 +8839,12 @@ final: prev:
 
   vim-gruvbox8 = buildVimPluginFrom2Nix {
     pname = "vim-gruvbox8";
-    version = "2021-08-04";
+    version = "2022-03-20";
     src = fetchFromGitHub {
       owner = "lifepillar";
       repo = "vim-gruvbox8";
-      rev = "1e205910e67003ff9efb77e7730f1e49d8aae29c";
-      sha256 = "1z7vx4x4flx6853a70vk2bcnv52ra3z275g1i30pjzc5blsbw6hw";
+      rev = "f94afba273ec544e1e73e82c78674eed4ccb1c8c";
+      sha256 = "1gjnp05a10bad1f12xc5pb1m54jzkq3hh8a83l8aq6377a1z9bky";
     };
     meta.homepage = "https://github.com/lifepillar/vim-gruvbox8/";
   };
@@ -8827,12 +8875,12 @@ final: prev:
 
   vim-hardtime = buildVimPluginFrom2Nix {
     pname = "vim-hardtime";
-    version = "2021-06-11";
+    version = "2022-03-13";
     src = fetchFromGitHub {
       owner = "takac";
       repo = "vim-hardtime";
-      rev = "00fde0a5e3fe15e329bdeac5331e4b439b6972a8";
-      sha256 = "1c66q7bcg0m19zjd3yz5ywhm094cr48yr6rxp8zhlavaswwx8wz7";
+      rev = "5603072377d1f1f26a1561eda9e1884bb5f028ef";
+      sha256 = "13279v9vd083xg6820gh15qxsyhbr7gjf7lzgy8w52xya852xsks";
     };
     meta.homepage = "https://github.com/takac/vim-hardtime/";
   };
@@ -9044,12 +9092,12 @@ final: prev:
 
   vim-illuminate = buildVimPluginFrom2Nix {
     pname = "vim-illuminate";
-    version = "2022-01-13";
+    version = "2022-03-13";
     src = fetchFromGitHub {
       owner = "RRethy";
       repo = "vim-illuminate";
-      rev = "db98338285574265a6ce54370b54d9f939e091bb";
-      sha256 = "1inhds5za9v7nja3xv1s7iwcpzd91diixq95bhknp758np6z6yj2";
+      rev = "487563de7ed6195fd46da178cb38dc1ff110c1ce";
+      sha256 = "1k4pzq1gxqpcrx828ywypff1cjrns34rh8q7yz1j8nhlqvgrda9s";
     };
     meta.homepage = "https://github.com/RRethy/vim-illuminate/";
   };
@@ -9152,12 +9200,12 @@ final: prev:
 
   vim-javacomplete2 = buildVimPluginFrom2Nix {
     pname = "vim-javacomplete2";
-    version = "2022-03-01";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "artur-shaik";
       repo = "vim-javacomplete2";
-      rev = "8c59fc67c6a935723be0efacfe7af66866ce8570";
-      sha256 = "0vg4nzykdllwwgmnbmbd9i60gd0kml8q58mqpnnc4qmzvm6krgl5";
+      rev = "e461476ccc931eed1d439984dd98a26ab56eecee";
+      sha256 = "0kpifkb03aw3dq6x6vlai0ivdmwxs32v0ajzcym1f005b1n1rydy";
     };
     meta.homepage = "https://github.com/artur-shaik/vim-javacomplete2/";
   };
@@ -9658,12 +9706,12 @@ final: prev:
 
   vim-move = buildVimPluginFrom2Nix {
     pname = "vim-move";
-    version = "2021-12-14";
+    version = "2022-03-14";
     src = fetchFromGitHub {
       owner = "matze";
       repo = "vim-move";
-      rev = "d4fbf3b9d794d20a36aef729ecdfa56ce097986e";
-      sha256 = "0dkn6ssqhxdp52cg1hk104n3d3fac48yklmnx6sl7i7lx8hpjshc";
+      rev = "97fc86064eaa95384b5b00f6253e339fba44da5d";
+      sha256 = "0h2f47q5dvl5myk5vif9ya4n308i4h5sb9rrg86v0inpbwzjpyas";
     };
     meta.homepage = "https://github.com/matze/vim-move/";
   };
@@ -9838,12 +9886,12 @@ final: prev:
 
   vim-obsession = buildVimPluginFrom2Nix {
     pname = "vim-obsession";
-    version = "2021-03-22";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-obsession";
-      rev = "82c9ac5e130c92a46e043dd9cd9e5b48d15e286d";
-      sha256 = "0lfcba8sk25l5yp3agh6pwniddf8jx627ikpr8i2z9ary2fqsj98";
+      rev = "d2818a614ec3a5d174c6bb19e87e2eeb207f4900";
+      sha256 = "08scgvpc5rmcc6xwbqir1b8y4fx58im5gn55fpg33s5346lxwd62";
     };
     meta.homepage = "https://github.com/tpope/vim-obsession/";
   };
@@ -9958,12 +10006,12 @@ final: prev:
 
   vim-oscyank = buildVimPluginFrom2Nix {
     pname = "vim-oscyank";
-    version = "2022-02-21";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "ojroques";
       repo = "vim-oscyank";
-      rev = "18db93968ae0f2aa89ee68e18f5785381ab169cc";
-      sha256 = "0a4261fkvgfaw1vsm5fgqm27rlcx8gpj2hkrk8kg9bjaijniqgd8";
+      rev = "23b0846e26d946bda9ebcd267839fea83435aff2";
+      sha256 = "0fydc0xs7pfx681s6v2l4w7z6c7ldajhsaffi23a0p9g5k0vchk6";
     };
     meta.homepage = "https://github.com/ojroques/vim-oscyank/";
   };
@@ -10222,12 +10270,12 @@ final: prev:
 
   vim-projectionist = buildVimPluginFrom2Nix {
     pname = "vim-projectionist";
-    version = "2022-02-02";
+    version = "2022-03-13";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-projectionist";
-      rev = "a1ff5b95b4e3965c285a1983b930a4bcfd7dd87e";
-      sha256 = "1zxwlsnnmq8x56gy37y66hyvir0qzaaf98fkz0d5kyv8nqqirclz";
+      rev = "93b2af188fe0937edea414b8e05a362b74f4b31d";
+      sha256 = "13x66y0dp70s2wcz5jkcqyp1r44sn3xdn70khzgl3jlv94ij3s1y";
     };
     meta.homepage = "https://github.com/tpope/vim-projectionist/";
   };
@@ -10378,12 +10426,12 @@ final: prev:
 
   vim-ragtag = buildVimPluginFrom2Nix {
     pname = "vim-ragtag";
-    version = "2021-02-22";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-ragtag";
-      rev = "b8966c4f6503a8baaec39e17bd0bf38b2aadc9b2";
-      sha256 = "0q4blsgnl4l2bkhgjry6xnszhsswdand52gc6gdjffwlzwa9jczy";
+      rev = "51b313e8a2e3a44f37b9d625bc0d461e9066b7e9";
+      sha256 = "0rd6p1c071dny90n0ph9l61zcbkln24lpjsjyrvlpna0lp1dx81q";
     };
     meta.homepage = "https://github.com/tpope/vim-ragtag/";
   };
@@ -10486,12 +10534,12 @@ final: prev:
 
   vim-ruby = buildVimPluginFrom2Nix {
     pname = "vim-ruby";
-    version = "2021-12-31";
+    version = "2022-03-22";
     src = fetchFromGitHub {
       owner = "vim-ruby";
       repo = "vim-ruby";
-      rev = "3b0c329d823b4736b8f5bae8ab546fb690fc0aa2";
-      sha256 = "1r10l7q1wy84insjpzkqg2z4dxv8qja0fgpnwldh6rgh3bz60q0a";
+      rev = "f3236767d2e74d736d98efd8da44013d1e95bfc1";
+      sha256 = "0mlllnykdmcxf4yx2nkp74rm4wx2qwcly3m711a6pq7w87fgh6jz";
     };
     meta.homepage = "https://github.com/vim-ruby/vim-ruby/";
   };
@@ -10510,12 +10558,12 @@ final: prev:
 
   vim-sandwich = buildVimPluginFrom2Nix {
     pname = "vim-sandwich";
-    version = "2022-01-30";
+    version = "2022-03-12";
     src = fetchFromGitHub {
       owner = "machakann";
       repo = "vim-sandwich";
-      rev = "48acdaded60c6b75fce06a0d61183ee99950c0ec";
-      sha256 = "0rijq9xwm3n84vpjzyvcpy6r58y6ma2pxj61h86122wda5ymwxwg";
+      rev = "7bdd7fc4b4c9f0342e8cbac617b7e5299bd056a1";
+      sha256 = "1c10gcfb43f0zq48kmlmhdvmpmgr8likkl7xbjqhkjcsj520qlj5";
     };
     meta.homepage = "https://github.com/machakann/vim-sandwich/";
   };
@@ -10558,12 +10606,12 @@ final: prev:
 
   vim-scriptease = buildVimPluginFrom2Nix {
     pname = "vim-scriptease";
-    version = "2021-11-05";
+    version = "2022-03-19";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-scriptease";
-      rev = "710fe7c2f3c636fae0b5cac041ff8da028a0777f";
-      sha256 = "0m3nsy0ks3rljwmaiygb4v3m58a2xnhavawzmms0fh1lsyyzcp1d";
+      rev = "74bd5bf46a63b982b100466f9fd47d2d0597fcdd";
+      sha256 = "1m9zpxlk1iz1wxylq4nrrlyv111f4my11jf1h5ff25l1acbgxvrw";
     };
     meta.homepage = "https://github.com/tpope/vim-scriptease/";
   };
@@ -10666,12 +10714,12 @@ final: prev:
 
   vim-sleuth = buildVimPluginFrom2Nix {
     pname = "vim-sleuth";
-    version = "2022-03-08";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-sleuth";
-      rev = "f07ab590e5dc91ded9ef8988b93e686965001dfa";
-      sha256 = "0gss50z473cqvpasj9nihvcb2yl43vwb2911v9d6kd5yxvs75hzz";
+      rev = "edffd9ee2cfafa3aba291f105a1d4f9f0e2d5701";
+      sha256 = "1rkn4qawz3p0h1pz0g712k3iz72qvapqd8k1f05kbabxymw6yqd7";
     };
     meta.homepage = "https://github.com/tpope/vim-sleuth/";
   };
@@ -10762,12 +10810,12 @@ final: prev:
 
   vim-snippets = buildVimPluginFrom2Nix {
     pname = "vim-snippets";
-    version = "2022-03-03";
+    version = "2022-03-27";
     src = fetchFromGitHub {
       owner = "honza";
       repo = "vim-snippets";
-      rev = "4e1d1456fd7d1d5d6cff256578a3e3bbeeb24e62";
-      sha256 = "1pwqwbiwgnfxwilazdzgd1yzpkh642wzlpwlvn6jx1n0fywmb60j";
+      rev = "57d23f6f44203374edcbb7d41903a491ec8cbed7";
+      sha256 = "0371pv4pl99icxhbqbqfx7ds1i1kwv1k9p28i5pxayngkyhd7l39";
     };
     meta.homepage = "https://github.com/honza/vim-snippets/";
   };
@@ -10846,12 +10894,12 @@ final: prev:
 
   vim-startuptime = buildVimPluginFrom2Nix {
     pname = "vim-startuptime";
-    version = "2022-02-27";
+    version = "2022-03-17";
     src = fetchFromGitHub {
       owner = "dstein64";
       repo = "vim-startuptime";
-      rev = "63967c60feb2034158bdbcf061c171e3bb4d8b99";
-      sha256 = "1vqlmx16n9b53qv6kx2dqaq54k5jw8c15zgdvr69ddljksw80mjk";
+      rev = "61f122ebc41e9bcf1793c752a728db59feee77bb";
+      sha256 = "1p9b2xgfcfbikadb2250ja0zbz1hcj02knqj5jw5kr3fp170100h";
     };
     meta.homepage = "https://github.com/dstein64/vim-startuptime/";
   };
@@ -10906,16 +10954,28 @@ final: prev:
 
   vim-surround = buildVimPluginFrom2Nix {
     pname = "vim-surround";
-    version = "2022-01-30";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-surround";
-      rev = "baf89ad26488f6a7665d51b986f5c7ad2d22b30b";
-      sha256 = "0kzp1g2zw2an0z7bb8h4xs8jf17z0mnn0zf6v1wkipvz6nvp7di8";
+      rev = "9857a874632d1b983a7f4b1c85e3d15990c8b101";
+      sha256 = "0ihcqrgvrllnrll9vgg1ywmhsvf43dwdpqv89r8mi70wsnzbgk3v";
     };
     meta.homepage = "https://github.com/tpope/vim-surround/";
   };
 
+  vim-svelte = buildVimPluginFrom2Nix {
+    pname = "vim-svelte";
+    version = "2022-02-17";
+    src = fetchFromGitHub {
+      owner = "evanleck";
+      repo = "vim-svelte";
+      rev = "1080030d6a1bc6582389c133a07552ba0a442410";
+      sha256 = "0kwx0rkb6879v5c3jyavzh1hklxl2q1qwnm28x1p32kdcwqkccjp";
+    };
+    meta.homepage = "https://github.com/evanleck/vim-svelte/";
+  };
+
   vim-swap = buildVimPluginFrom2Nix {
     pname = "vim-swap";
     version = "2021-08-08";
@@ -11003,12 +11063,12 @@ final: prev:
 
   vim-test = buildVimPluginFrom2Nix {
     pname = "vim-test";
-    version = "2022-03-08";
+    version = "2022-03-26";
     src = fetchFromGitHub {
       owner = "vim-test";
       repo = "vim-test";
-      rev = "16a3b6da1bab42473d42d7e02d89d549d7a5e138";
-      sha256 = "1hlw3268x3i0pbmyj5b56kng6a9348rmh3dg8jrhq1jyy75r6m09";
+      rev = "56bbfa295fe62123d2ebe8ed57dd002afab46097";
+      sha256 = "0ggk1c5767hjjfg1nwdm880bj9cgj6bgvf25dgjhwx83xxhzpp6d";
     };
     meta.homepage = "https://github.com/vim-test/vim-test/";
   };
@@ -11183,12 +11243,12 @@ final: prev:
 
   vim-tpipeline = buildVimPluginFrom2Nix {
     pname = "vim-tpipeline";
-    version = "2022-03-09";
+    version = "2022-03-21";
     src = fetchFromGitHub {
       owner = "vimpostor";
       repo = "vim-tpipeline";
-      rev = "d601fd8c4635cc127d48d6219881215782bf0b2a";
-      sha256 = "1rniy8sl4pr0k2j49yvkbsj4lax6qb6lmyay7svksqyzjy3rndcl";
+      rev = "1da5d790a7b5c073453bcddf34da8145df04b32f";
+      sha256 = "1x2hlfy3r4qsgshhlz73qdjrjrnzj88z5h9vhnvml4sljf5y9r2d";
     };
     meta.homepage = "https://github.com/vimpostor/vim-tpipeline/";
   };
@@ -11243,12 +11303,12 @@ final: prev:
 
   vim-ultest = buildVimPluginFrom2Nix {
     pname = "vim-ultest";
-    version = "2022-03-02";
+    version = "2022-03-19";
     src = fetchFromGitHub {
       owner = "rcarriga";
       repo = "vim-ultest";
-      rev = "5b3d26c0850e3347ebb39b90c3d4e04e883edd36";
-      sha256 = "1r63pn6gj2nnjayhxyxm9jhxlsqzrcn847pfmfp3ndh0fradhlzz";
+      rev = "2a35653111b023660b519f6dbd95c97996ce8b02";
+      sha256 = "1b840fnfqh19p2gzhc1xxisn0gyw756miian4znk0zzj2wlja151";
     };
     meta.homepage = "https://github.com/rcarriga/vim-ultest/";
   };
@@ -11315,12 +11375,12 @@ final: prev:
 
   vim-visual-multi = buildVimPluginFrom2Nix {
     pname = "vim-visual-multi";
-    version = "2021-08-31";
+    version = "2022-03-25";
     src = fetchFromGitHub {
       owner = "mg979";
       repo = "vim-visual-multi";
-      rev = "e20908963d9b0114e5da1eacbc516e4b09cf5803";
-      sha256 = "02y91annhsrq6m9lnnvrla08g3z4chmpdrfrlzf252s26062mwdv";
+      rev = "4fcd3797e380f2e4c8ea8be31ec6469e6f86f971";
+      sha256 = "135jggj34pdczjby1p2vpr1b30whcabsfxjgvyrra45hlg45kzgn";
     };
     meta.homepage = "https://github.com/mg979/vim-visual-multi/";
   };
@@ -11471,12 +11531,12 @@ final: prev:
 
   vim-xkbswitch = buildVimPluginFrom2Nix {
     pname = "vim-xkbswitch";
-    version = "2021-12-29";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "lyokha";
       repo = "vim-xkbswitch";
-      rev = "17aaeece90075ee4990da21ef662107a243fdbc9";
-      sha256 = "0mvx5im6ryrnqq0mq0z4lfks20cryz8rnrl8347nrhw9vsb1sb2v";
+      rev = "d6c9b8e06c1e7b3f14abc772ad61d73e687eede6";
+      sha256 = "015jr832zwa7gcakbllifh3r45iyfywraswsm70vvbam165wwxph";
     };
     meta.homepage = "https://github.com/lyokha/vim-xkbswitch/";
   };
@@ -11687,12 +11747,12 @@ final: prev:
 
   vimspector = buildVimPluginFrom2Nix {
     pname = "vimspector";
-    version = "2022-03-08";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "puremourning";
       repo = "vimspector";
-      rev = "9bec3b99f6303bdcbfba669b21e4260df4f8a02b";
-      sha256 = "1ynkcklpdlc5kdfcppz8vk1x4qjc2p8dwnxzigzc78hnrrgb76pz";
+      rev = "99ce7a74699f12e05bf6059125d767b05ceb212b";
+      sha256 = "0hj26vyq8cbw5zsq94i4hay27fs9z5xxyniflz975ddii8189qa9";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/puremourning/vimspector/";
@@ -11700,12 +11760,12 @@ final: prev:
 
   vimtex = buildVimPluginFrom2Nix {
     pname = "vimtex";
-    version = "2022-03-04";
+    version = "2022-03-24";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "dad71b9053e50d7210cdf4e51e0aced1acd296e0";
-      sha256 = "0dkkf4sz9cj768q41a1sijiah0fpc290wfm3agvdlmlbpp3l78vx";
+      rev = "4eccec4e9fc46a52ba832ac2f8ab749ea33d6790";
+      sha256 = "07mydwxqhk9l0ciqpczd51x4s58asmqa3f0bznw7cdvp9qa6a6sn";
     };
     meta.homepage = "https://github.com/lervag/vimtex/";
   };
@@ -11796,36 +11856,36 @@ final: prev:
 
   webapi-vim = buildVimPluginFrom2Nix {
     pname = "webapi-vim";
-    version = "2021-06-04";
+    version = "2022-03-11";
     src = fetchFromGitHub {
       owner = "mattn";
       repo = "webapi-vim";
-      rev = "b09cbd3a27157a5baf0468403b392f577adefe45";
-      sha256 = "17vlzg5dm5phirwyk8xkqnrkplybd8d5rj9kdx7rgla3h7rqn4wg";
+      rev = "e9fdce27dc542f491c034a288bce5d74a79fb92d";
+      sha256 = "09shpfr42h96qv4s9z3csjk39ppqmyxi183kpnli4479mc4z4df4";
     };
     meta.homepage = "https://github.com/mattn/webapi-vim/";
   };
 
   which-key-nvim = buildVimPluginFrom2Nix {
     pname = "which-key.nvim";
-    version = "2022-01-19";
+    version = "2022-03-18";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "which-key.nvim";
-      rev = "28d2bd129575b5e9ebddd88506601290bb2bb221";
-      sha256 = "13k1q7zkwr5bfc2lj97nk4npy0gk49r1qbac49aib7fyzirkagkg";
+      rev = "a3c19ec5754debb7bf38a8404e36a9287b282430";
+      sha256 = "00kkl785ifx5sg49q65d4yzdgf08gyriqrils5n4zhz4pksd5z1a";
     };
     meta.homepage = "https://github.com/folke/which-key.nvim/";
   };
 
   wilder-nvim = buildVimPluginFrom2Nix {
     pname = "wilder.nvim";
-    version = "2022-02-12";
+    version = "2022-03-13";
     src = fetchFromGitHub {
       owner = "gelguy";
       repo = "wilder.nvim";
-      rev = "f49592d297eff4c485ac28927fc7945c165197d6";
-      sha256 = "14sxz4vfzrqwa9qxw9pprj34v7z4gmdz0k1xdkyjcx6fzmny7ycn";
+      rev = "b59648ad8588bcba377f4eecdea317796ebd1f9d";
+      sha256 = "0aic96isjssgmlqkr30m9j3895v27f3hgkgsqbl3zwkvjqa218d6";
     };
     meta.homepage = "https://github.com/gelguy/wilder.nvim/";
   };
@@ -11953,12 +12013,12 @@ final: prev:
 
   YouCompleteMe = buildVimPluginFrom2Nix {
     pname = "YouCompleteMe";
-    version = "2022-02-22";
+    version = "2022-03-23";
     src = fetchFromGitHub {
       owner = "ycm-core";
       repo = "YouCompleteMe";
-      rev = "aec79589040497cd0cb0701e089d8d80dc6de996";
-      sha256 = "16nnq95hvprr5wkbrx4slrfjspcshhx4halij3spldrxy40mbm2m";
+      rev = "89bba25c96866662ca38c2428f73eb64b0351ba3";
+      sha256 = "0yrhvd9c0g6ay02b77sr657hn7ambcifwjfqsjywmnirr4zja45p";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/ycm-core/YouCompleteMe/";
@@ -12026,12 +12086,12 @@ final: prev:
 
   zig-vim = buildVimPluginFrom2Nix {
     pname = "zig.vim";
-    version = "2022-03-03";
+    version = "2022-03-15";
     src = fetchFromGitHub {
       owner = "ziglang";
       repo = "zig.vim";
-      rev = "118d9b74970899cae309823b75ddee3af999a74c";
-      sha256 = "1q9gbzyrx5j95jwly0qc41lyaqpsk6wq82w2h8d0q3abfxwisy11";
+      rev = "dd5e2c2384d42eaffadd5a8fd749b0499a90a7ac";
+      sha256 = "0qbjnmjf057phxkzhsyys9x0620szbgr3awqzgxr3cflyd1zhrf4";
     };
     meta.homepage = "https://github.com/ziglang/zig.vim/";
   };
diff --git a/nixpkgs/pkgs/applications/editors/vim/plugins/overrides.nix b/nixpkgs/pkgs/applications/editors/vim/plugins/overrides.nix
index 9219e685c33c..f3e1a5f12c33 100644
--- a/nixpkgs/pkgs/applications/editors/vim/plugins/overrides.nix
+++ b/nixpkgs/pkgs/applications/editors/vim/plugins/overrides.nix
@@ -832,7 +832,7 @@ self: super: {
             libiconv
           ];
 
-          cargoSha256 = "12xaxpg4ws09rnp9prrqcac8581ggr36mpy39xyfngjy5xvcalaq";
+          cargoSha256 = "035v8mm8v7aj8qwhvxsp6k0afn05gi2xb1achzsvm0m4a8a9xs65";
         };
       in
       ''
@@ -846,6 +846,16 @@ self: super: {
     dependencies = with self; [ vim-maktaba ];
   });
 
+  # Due to case-sensitivety issues, the hash differs on Darwin systems, see:
+  # https://github.com/NixOS/nixpkgs/issues/157609
+  vim-colorschemes = super.vim-colorschemes.overrideAttrs (old: {
+    src = old.src.overrideAttrs (srcOld: {
+      postFetch = (srcOld.postFetch or "") + lib.optionalString (!stdenv.isDarwin) ''
+        rm $out/colors/darkBlue.vim
+      '';
+    });
+  });
+
   vim-dasht = super.vim-dasht.overrideAttrs (old: {
     preFixup = ''
       substituteInPlace $out/autoload/dasht.vim \
diff --git a/nixpkgs/pkgs/applications/editors/vim/plugins/vim-plugin-names b/nixpkgs/pkgs/applications/editors/vim/plugins/vim-plugin-names
index 7426fe82b2e5..dae9ab2aa1de 100644
--- a/nixpkgs/pkgs/applications/editors/vim/plugins/vim-plugin-names
+++ b/nixpkgs/pkgs/applications/editors/vim/plugins/vim-plugin-names
@@ -91,6 +91,7 @@ ckarnell/antonys-macro-repeater
 clojure-vim/vim-jack-in
 cloudhead/neovim-fuzzy
 CoatiSoftware/vim-sourcetrail
+coc-extensions/coc-svelte
 cocopon/iceberg.vim
 codota/tabnine-vim
 cohama/lexima.vim
@@ -158,6 +159,7 @@ ervandew/supertab
 esneider/YUNOcommit.vim
 euclidianAce/BetterLua.vim
 euclio/vim-markdown-composer
+evanleck/vim-svelte
 f-person/git-blame.nvim
 f3fora/cmp-spell
 famiu/bufdelete.nvim
@@ -261,6 +263,7 @@ hsitz/VimOrganizer
 https://git.sr.ht/~whynothugo/lsp_lines.nvim
 hura/vim-asymptote
 iamcco/coc-spell-checker
+iamcco/coc-tailwindcss
 iamcco/markdown-preview.nvim
 ianks/vim-tsx
 idanarye/vim-merginal
@@ -597,6 +600,7 @@ nvim-telescope/telescope-fzy-native.nvim
 nvim-telescope/telescope-github.nvim
 nvim-telescope/telescope-project.nvim
 nvim-telescope/telescope-symbols.nvim
+nvim-telescope/telescope-ui-select.nvim
 nvim-telescope/telescope-z.nvim
 nvim-telescope/telescope.nvim
 nvim-treesitter/completion-treesitter
@@ -693,6 +697,7 @@ rhysd/vim-operator-surround
 RishabhRD/nvim-lsputils
 RishabhRD/popfix
 rktjmp/fwatch.nvim
+rktjmp/hotpot.nvim
 rktjmp/lush.nvim
 rmagatti/auto-session
 rmagatti/goto-preview
@@ -726,7 +731,6 @@ sainnhe/everforest
 sainnhe/gruvbox-material
 sainnhe/sonokai
 sakhnik/nvim-gdb
-saltstack/salt-vim
 samoshkin/vim-mergetool
 sbdchd/neoformat
 sblumentritt/bitbake.vim
@@ -957,6 +961,7 @@ vimwiki/vimwiki
 vito-c/jq.vim
 vmchale/ats-vim
 vmchale/dhall-vim
+vmware-archive/salt-vim
 vn-ki/coc-clap
 voldikss/vim-floaterm
 vuki656/package-info.nvim
diff --git a/nixpkgs/pkgs/applications/editors/vim/plugins/vim-utils.nix b/nixpkgs/pkgs/applications/editors/vim/plugins/vim-utils.nix
index 4183b6214351..b291928f25aa 100644
--- a/nixpkgs/pkgs/applications/editors/vim/plugins/vim-utils.nix
+++ b/nixpkgs/pkgs/applications/editors/vim/plugins/vim-utils.nix
@@ -1,5 +1,6 @@
 # tests available at pkgs/test/vim
-{ lib, stdenv, vim, vimPlugins, vim_configurable, buildEnv, writeText, writeScriptBin
+{ lib, stdenv, vim, vimPlugins, vim_configurable, buildEnv, writeText
+, runCommand, makeWrapper
 , nix-prefetch-hg, nix-prefetch-git
 , fetchFromGitHub, runtimeShell
 , hasLuaModule
@@ -16,7 +17,7 @@ Install Vim like this eg using nixos option environment.systemPackages which wil
 vim-with-plugins in PATH:
 
   vim_configurable.customize {
-    name = "vim-with-plugins";
+    name = "vim-with-plugins"; # optional
 
     # add custom .vimrc lines like this:
     vimrcConfig.customRC = ''
@@ -404,64 +405,81 @@ rec {
   inherit vimrcContent;
   inherit packDir;
 
-  # shell script with custom name passing [-u vimrc] [-U gvimrc] to vim
-  vimWithRC = {
-    vimExecutable,
-    gvimExecutable,
-    vimManPages,
-    wrapManual,
-    wrapGui,
-    name ? "vim",
-    vimrcFile ? null,
-    gvimrcFile ? null,
-    vimExecutableName,
-    gvimExecutableName,
-  }:
-    let
-      rcOption = o: file: lib.optionalString (file != null) "-${o} ${file}";
-      vimWrapperScript = writeScriptBin vimExecutableName ''
-        #!${runtimeShell}
-        exec ${vimExecutable} ${rcOption "u" vimrcFile} ${rcOption "U" gvimrcFile} "$@"
-      '';
-      gvimWrapperScript = writeScriptBin gvimExecutableName ''
-        #!${stdenv.shell}
-        exec ${gvimExecutable} ${rcOption "u" vimrcFile} ${rcOption "U" gvimrcFile} "$@"
-      '';
-    in
-      buildEnv {
-        inherit name;
-        paths = [
-          vimWrapperScript
-        ] ++ lib.optional wrapGui gvimWrapperScript
-          ++ lib.optional wrapManual vimManPages
-        ;
-      };
-
-  # add a customize option to a vim derivation
-  makeCustomizable = vim: vim // {
-    customize = {
-      name,
-      vimrcConfig,
-      wrapManual ? true,
-      wrapGui ? false,
-      vimExecutableName ? name,
-      gvimExecutableName ? (lib.concatStrings [ "g" name ]),
-    }: vimWithRC {
-      vimExecutable = "${vim}/bin/vim";
-      gvimExecutable = "${vim}/bin/gvim";
-      inherit name wrapManual wrapGui vimExecutableName gvimExecutableName;
-      vimrcFile = vimrcFile vimrcConfig;
-      vimManPages = buildEnv {
-        name = "vim-doc";
-        paths = [ vim ];
-        pathsToLink = [ "/share/man" ];
-      };
-    };
+  makeCustomizable = let
+    mkVimrcFile = vimrcFile; # avoid conflict with argument name
+  in vim: vim // {
+    # Returns a customized vim that uses the specified vimrc configuration.
+    customize =
+      { # The name of the derivation.
+        name ? "vim"
+      , # A shell word used to specify the names of the customized executables.
+        # The shell variable $exe can be used to refer to the wrapped executable's name.
+        # Examples: "my-$exe", "$exe-with-plugins", "\${exe/vim/v1m}"
+        executableName ?
+          if lib.hasInfix "vim" name then
+            lib.replaceStrings [ "vim" ] [ "$exe" ] name
+          else
+            "\${exe/vim/${lib.escapeShellArg name}}"
+      , # A custom vimrc configuration, treated as an argument to vimrcContent (see the documentation in this file).
+        vimrcConfig ? null
+      , # A custom vimrc file.
+        vimrcFile ? null
+      , # A custom gvimrc file.
+        gvimrcFile ? null
+      , # If set to true, return the *vim wrappers only.
+        # If set to false, overlay the wrappers on top of the original vim derivation.
+        # This ensures that things like man pages and .desktop files are available.
+        standalone ? name != "vim" && wrapManual != true
+
+      , # deprecated arguments (TODO: remove eventually)
+        wrapManual ? null, wrapGui ? null, vimExecutableName ? null, gvimExecutableName ? null,
+      }:
+      lib.warnIf (wrapManual != null) ''
+        vim.customize: wrapManual is deprecated: the manual is now included by default if `name == "vim"`.
+        ${if wrapManual == true && name != "vim" then "Set `standalone = false` to include the manual."
+        else if wrapManual == false && name == "vim" then "Set `standalone = true` to get the *vim wrappers only."
+        else ""}''
+      lib.warnIf (wrapGui != null)
+        "vim.customize: wrapGui is deprecated: gvim is now automatically included if present"
+      lib.throwIfNot (vimExecutableName == null && gvimExecutableName == null)
+        "vim.customize: (g)vimExecutableName is deprecated: use executableName instead (see source code for examples)"
+      (let
+        vimrc =
+          if vimrcFile != null then vimrcFile
+          else if vimrcConfig != null then mkVimrcFile vimrcConfig
+          else throw "at least one of vimrcConfig and vimrcFile must be specified";
+        bin = runCommand "${name}-bin" { buildInputs = [ makeWrapper ]; } ''
+          vimrc=${lib.escapeShellArg vimrc}
+          gvimrc=${if gvimrcFile != null then lib.escapeShellArg gvimrcFile else ""}
+
+          mkdir -p "$out/bin"
+          for exe in ${
+            if standalone then "{,g,r,rg,e}vim {,g}vimdiff"
+            else "{,g,r,rg,e}{vim,view} {,g}vimdiff ex"
+          }; do
+            if [[ -e ${vim}/bin/$exe ]]; then
+              dest="$out/bin/${executableName}"
+              if [[ -e $dest ]]; then
+                echo "ambiguous executableName: ''${dest##*/} already exists"
+                continue
+              fi
+              makeWrapper ${vim}/bin/"$exe" "$dest" \
+                --add-flags "-u ''${vimrc@Q} ''${gvimrc:+-U ''${gvimrc@Q}}"
+            fi
+          done
+        '';
+      in if standalone then bin else
+        buildEnv {
+          inherit name;
+          paths = [ (lib.lowPrio vim) bin ];
+        });
 
     override = f: makeCustomizable (vim.override f);
     overrideAttrs = f: makeCustomizable (vim.overrideAttrs f);
   };
 
+  vimWithRC = throw "vimWithRC was removed, please use vim.customize instead";
+
   pluginnames2Nix = {name, namefiles} : vim_configurable.customize {
     inherit name;
     vimrcConfig.vam.knownPlugins = vimPlugins;
diff --git a/nixpkgs/pkgs/applications/editors/vscode/extensions/default.nix b/nixpkgs/pkgs/applications/editors/vscode/extensions/default.nix
index e9054f944e76..a5c8dcfb50f5 100644
--- a/nixpkgs/pkgs/applications/editors/vscode/extensions/default.nix
+++ b/nixpkgs/pkgs/applications/editors/vscode/extensions/default.nix
@@ -5,6 +5,7 @@
 , vscode-utils
 , asciidoctor
 , nodePackages
+, python3Packages
 , jdk
 , llvmPackages_8
 , nixpkgs-fmt
@@ -1313,6 +1314,33 @@ let
         };
       };
 
+      kddejong.vscode-cfn-lint = let
+        inherit (python3Packages) cfn-lint;
+      in buildVscodeMarketplaceExtension {
+        mktplcRef = {
+          name = "vscode-cfn-lint";
+          publisher = "kddejong";
+          version = "0.21.0";
+          sha256 = "sha256-IueXiN+077tiecAsVCzgYksWYTs00mZv6XJVMtRJ/PQ=";
+        };
+
+        nativeBuildInputs = [ jq moreutils ];
+
+        buildInputs = [ cfn-lint ];
+
+        postInstall = ''
+          cd "$out/$installPrefix"
+          jq '.contributes.configuration.properties."cfnLint.path".default = "${cfn-lint}/bin/cfn-lint"' package.json | sponge package.json
+        '';
+
+        meta = with lib; {
+          description = "CloudFormation Linter IDE integration, autocompletion, and documentation";
+          homepage = "https://github.com/aws-cloudformation/cfn-lint-visual-studio-code";
+          license = lib.licenses.asl20;
+          maintainers = with maintainers; [ wolfangaukang ];
+        };
+      };
+
       kubukoz.nickel-syntax = buildVscodeMarketplaceExtension {
         mktplcRef = {
           name = "nickel-syntax";
@@ -1374,6 +1402,18 @@ let
         };
       };
 
+      marp-team.marp-vscode = buildVscodeMarketplaceExtension {
+        mktplcRef = {
+          name = "marp-vscode";
+          publisher = "marp-team";
+          version = "1.5.0";
+          sha256 = "0wqsj8rp58vl3nafkjvyw394h5j4jd7d24ra6hkvfpnlzrgv4yhs";
+        };
+        meta = {
+          license = lib.licenses.mit;
+        };
+      };
+
       mikestead.dotenv = buildVscodeMarketplaceExtension {
         mktplcRef = {
           name = "dotenv";
@@ -1679,6 +1719,18 @@ let
         };
       };
 
+      richie5um2.snake-trail = buildVscodeMarketplaceExtension {
+        mktplcRef = {
+          name = "snake-trail";
+          publisher = "richie5um2";
+          version = "0.6.0";
+          sha256 = "0wkpq9f48hplrgabb0v1ij6fc4sb8h4a93dagw4biprhnnm3qx49";
+        };
+        meta = with lib; {
+          license = licenses.mit;
+        };
+      };
+
       ritwickdey.liveserver = buildVscodeMarketplaceExtension {
         mktplcRef = {
           name = "liveserver";
diff --git a/nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/build-deps/package.json b/nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/build-deps/package.json
index 54a931eee86a..f12db30a6a3d 100644
--- a/nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/build-deps/package.json
+++ b/nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/build-deps/package.json
@@ -1,26 +1,19 @@
 {
   "name": "rust-analyzer",
-  "version": "0.2.834",
+  "version": "0.2.975",
   "dependencies": {
-    "https-proxy-agent": "^5.0.0",
-    "node-fetch": "^2.6.1",
-    "vscode-languageclient": "8.0.0-next.2",
-    "d3": "^7.1.0",
+    "vscode-languageclient": "8.0.0-next.8",
+    "d3": "^7.3.0",
     "d3-graphviz": "^4.0.0",
-    "@types/glob": "^7.1.4",
-    "@types/mocha": "^8.2.3",
     "@types/node": "~14.17.5",
-    "@types/node-fetch": "^2.5.11",
-    "@types/vscode": "^1.57.0",
-    "@typescript-eslint/eslint-plugin": "^4.28.2",
-    "@typescript-eslint/parser": "^4.28.2",
-    "eslint": "^7.30.0",
-    "glob": "^7.1.6",
-    "mocha": "^9.0.2",
+    "@types/vscode": "~1.63.0",
+    "@typescript-eslint/eslint-plugin": "^5.10.0",
+    "@typescript-eslint/parser": "^5.10.0",
+    "@vscode/test-electron": "^2.1.1",
+    "eslint": "^8.7.0",
     "tslib": "^2.3.0",
-    "typescript": "^4.3.5",
+    "typescript": "^4.5.5",
     "typescript-formatter": "^7.2.2",
-    "vsce": "^1.95.1",
-    "vscode-test": "^1.5.1"
+    "vsce": "^2.6.7"
   }
 }
diff --git a/nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/default.nix b/nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/default.nix
index 271607af6bd4..c11add5021ca 100644
--- a/nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/default.nix
+++ b/nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/default.nix
@@ -20,13 +20,13 @@ let
   # Use the plugin version as in vscode marketplace, updated by update script.
   inherit (vsix) version;
 
-  releaseTag = "2021-11-29";
+  releaseTag = "2022-03-07";
 
   src = fetchFromGitHub {
     owner = "rust-analyzer";
     repo = "rust-analyzer";
     rev = releaseTag;
-    sha256 = "sha256-vh7z8jupVxXPOko3sWUsOB7eji/7lKfwJ/CE3iw97Sw=";
+    sha256 = "sha256-/qKh4utesAjlyG8A3hEmSx+HBgh48Uje6ZRtUGz5f0g=";
   };
 
   build-deps = nodePackages."rust-analyzer-build-deps-../../applications/editors/vscode/extensions/rust-analyzer/build-deps";
diff --git a/nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/update.sh b/nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/update.sh
new file mode 100755
index 000000000000..0c06f903dfb4
--- /dev/null
+++ b/nixpkgs/pkgs/applications/editors/vscode/extensions/rust-analyzer/update.sh
@@ -0,0 +1,49 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl jq libarchive
+#shellcheck shell=bash
+set -euo pipefail
+cd "$(dirname "$0")"
+nixpkgs=../../../../../../
+node_packages="$nixpkgs/pkgs/development/node-packages"
+owner=rust-analyzer
+repo=rust-analyzer
+ver=$(
+    curl -s "https://api.github.com/repos/$owner/$repo/releases" |
+    jq 'map(select(.prerelease | not)) | .[0].tag_name' --raw-output
+)
+node_src="$(nix-build "$nixpkgs" -A rust-analyzer.src --no-out-link)/editors/code"
+
+# Check vscode compatibility
+req_vscode_ver="$(jq '.engines.vscode' "$node_src/package.json" --raw-output)"
+req_vscode_ver="${req_vscode_ver#^}"
+cur_vscode_ver="$(nix-instantiate --eval --strict "$nixpkgs" -A vscode.version | tr -d '"')"
+if [[ "$(nix-instantiate --eval --strict -E "(builtins.compareVersions \"$req_vscode_ver\" \"$cur_vscode_ver\")")" -gt 0 ]]; then
+    echo "vscode $cur_vscode_ver is incompatible with the extension requiring ^$req_vscode_ver"
+    exit 1
+fi
+
+extension_ver=$(curl "https://github.com/rust-analyzer/rust-analyzer/releases/download/$ver/rust-analyzer-linux-x64.vsix" -L |
+    bsdtar -xf - --to-stdout extension/package.json | # Use bsdtar to extract vsix(zip).
+    jq --raw-output '.version')
+echo "Extension version: $extension_ver"
+
+# We need devDependencies to build vsix.
+# `esbuild` is a binary package an is already in nixpkgs so we omit it here.
+jq '{ name, version: $ver, dependencies: (.dependencies + .devDependencies | del(.esbuild)) }' "$node_src/package.json" \
+    --arg ver "$extension_ver" \
+    >"build-deps/package.json.new"
+
+old_deps="$(jq '.dependencies' build-deps/package.json)"
+new_deps="$(jq '.dependencies' build-deps/package.json.new)"
+if [[ "$old_deps" == "$new_deps" ]]; then
+    echo "package.json dependencies not changed, do simple version change"
+
+    sed -E '/^  "rust-analyzer-build-deps/,+3 s/version = ".*"/version = "'"$extension_ver"'"/' \
+        --in-place "$node_packages"/node-packages.nix
+    mv build-deps/package.json{.new,}
+else
+    echo "package.json dependencies changed, updating nodePackages"
+    mv build-deps/package.json{.new,}
+
+    ./"$node_packages"/generate.sh
+fi
diff --git a/nixpkgs/pkgs/applications/editors/vscode/generic.nix b/nixpkgs/pkgs/applications/editors/vscode/generic.nix
index 672eb4b27ba1..d704497b4f0c 100644
--- a/nixpkgs/pkgs/applications/editors/vscode/generic.nix
+++ b/nixpkgs/pkgs/applications/editors/vscode/generic.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, makeDesktopItem
 , unzip, libsecret, libXScrnSaver, libxshmfence, wrapGAppsHook
-, gtk2, atomEnv, at-spi2-atk, autoPatchelfHook
+, atomEnv, at-spi2-atk, autoPatchelfHook
 , systemd, fontconfig, libdbusmenu, glib, buildFHSUserEnvBubblewrap
 , writeShellScriptBin
 
@@ -64,7 +64,7 @@ let
     };
 
     buildInputs = [ libsecret libXScrnSaver libxshmfence ]
-      ++ lib.optionals (!stdenv.isDarwin) ([ gtk2 at-spi2-atk ] ++ atomEnv.packages);
+      ++ lib.optionals (!stdenv.isDarwin) ([ at-spi2-atk ] ++ atomEnv.packages);
 
     runtimeDependencies = lib.optional (stdenv.isLinux) [ (lib.getLib systemd) fontconfig.lib libdbusmenu ];
 
@@ -72,6 +72,7 @@ let
 
     dontBuild = true;
     dontConfigure = true;
+    noDumpEnvVars = true;
 
     installPhase = ''
       runHook preInstall
diff --git a/nixpkgs/pkgs/applications/emulators/collapseos-cvm/default.nix b/nixpkgs/pkgs/applications/emulators/collapseos-cvm/default.nix
new file mode 100644
index 000000000000..798d58467af6
--- /dev/null
+++ b/nixpkgs/pkgs/applications/emulators/collapseos-cvm/default.nix
@@ -0,0 +1,30 @@
+{ lib, stdenv, fetchurl, ncurses }:
+
+stdenv.mkDerivation rec {
+  pname = "collapseos-cvm";
+  version = "20220316";
+  src = fetchurl {
+    url = "http://collapseos.org/files/collapseos-${version}.tar.gz";
+    hash = "sha256-8bt6wj93T82K9fqtuC/mctkMCzfvW0taxv6QAKeJb5g=";
+  };
+  buildInputs = [ ncurses ];
+  sourceRoot = "cvm";
+  postPatch = ''
+    substituteInPlace common.mk \
+      --replace "-lcurses" "-lncurses"
+  '';
+  installPhase = ''
+    runHook preInstall;
+    find . -type f -executable -exec install -Dt $out/bin {} \;
+    runHook postInstall;
+  '';
+  meta = {
+    description = "Virtual machine for Collapse OS (Forth operating system)";
+    changelog = "http://collapseos.org/files/CHANGES.txt";
+    downloadPage = "http://collapseos.org/files/";
+    homepage = "http://collapseos.org/";
+    license = lib.licenses.gpl3Only;
+    maintainers = with lib.maintainers; [ ehmry ];
+    mainProgram = "cos-serial";
+  };
+}
diff --git a/nixpkgs/pkgs/applications/emulators/fceux/default.nix b/nixpkgs/pkgs/applications/emulators/fceux/default.nix
index 0247a10f0e54..e48f1cf7d56c 100644
--- a/nixpkgs/pkgs/applications/emulators/fceux/default.nix
+++ b/nixpkgs/pkgs/applications/emulators/fceux/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fceux";
-  version = "2.6.3";
+  version = "2.6.4";
 
   src = fetchFromGitHub {
     owner = "TASEmulators";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "sha256-jNR9AB8s2S9ehYsompkV2GOLsaXIQzldeQ1WRCxdDG0=";
+    sha256 = "sha256-Q6r/iBlmi0z40+U6OLZCahS0io4IBBGZMP1mJH7szRM=";
   };
 
   nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
diff --git a/nixpkgs/pkgs/applications/emulators/flycast/default.nix b/nixpkgs/pkgs/applications/emulators/flycast/default.nix
new file mode 100644
index 000000000000..67ba4590db62
--- /dev/null
+++ b/nixpkgs/pkgs/applications/emulators/flycast/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, pkg-config
+, alsa-lib
+, libX11
+, libevdev
+, udev
+, libpulseaudio
+, SDL2
+, libzip
+, miniupnpc
+}:
+
+stdenv.mkDerivation rec {
+  pname = "flycast";
+  version = "1.2";
+
+  src = fetchFromGitHub {
+    owner = "flyinghead";
+    repo = "flycast";
+    rev = "v${version}";
+    sha256 = "sha256-MzHAGK++oukIs84OR/l6gBwCJssdi8Iyte5Rtro2+Q0=";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
+
+  buildInputs = [
+    alsa-lib
+    libX11
+    libevdev
+    udev
+    libpulseaudio
+    SDL2
+    libzip
+    miniupnpc
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/flyinghead/flycast";
+    changelog = "https://github.com/flyinghead/flycast/releases/tag/v${version}";
+    description = "A multi-platform Sega Dreamcast, Naomi and Atomiswave emulator";
+    license = licenses.gpl2Only;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.ivar ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/emulators/goldberg-emu/default.nix b/nixpkgs/pkgs/applications/emulators/goldberg-emu/default.nix
new file mode 100644
index 000000000000..4a8d3e3b85ec
--- /dev/null
+++ b/nixpkgs/pkgs/applications/emulators/goldberg-emu/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, stdenv
+, fetchFromGitLab
+, cmake
+, protobuf
+ }:
+
+stdenv.mkDerivation rec {
+  pname = "goldberg-emu";
+  version = "0.2.5";
+
+  src = fetchFromGitLab {
+    owner = "mr_goldberg";
+    repo = "goldberg_emulator";
+    rev = version;
+    sha256 = "sha256-goOgMNjtDmIKOAv9sZwnPOY0WqTN90LFJ5iEp3Vkzog=";
+  };
+
+  # It attempts to install windows-only libraries which we never build
+  patches = [ ./dont-install-unsupported.patch ];
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ protobuf ];
+
+  cmakeFlags = [
+    "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}/share/goldberg"
+  ];
+
+  preFixup = ''
+    mkdir -p $out/{bin,lib}
+    chmod +x $out/share/goldberg/tools/find_interfaces.sh
+
+    ln -s $out/share/goldberg/libsteam_api.so $out/lib
+    ln -s $out/share/goldberg/lobby_connect/lobby_connect $out/bin
+    ln -s $out/share/goldberg/tools/generate_interfaces_file $out/bin
+    ln -s $out/share/goldberg/tools/find_interfaces.sh $out/bin/find_interfaces
+  '';
+
+  meta = with lib; {
+    homepage = "https://gitlab.com/Mr_Goldberg/goldberg_emulator";
+    changelog = "https://gitlab.com/Mr_Goldberg/goldberg_emulator/-/releases";
+    description = "Program that emulates steam online features";
+    longDescription = ''
+      Steam emulator that emulates steam online features. Lets you play games that
+      use the steam multiplayer apis on a LAN without steam or an internet connection.
+    '';
+    mainProgram = "lobby_connect";
+    license = licenses.lgpl3Only;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.ivar ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/emulators/goldberg-emu/dont-install-unsupported.patch b/nixpkgs/pkgs/applications/emulators/goldberg-emu/dont-install-unsupported.patch
new file mode 100644
index 000000000000..7dba7e25b970
--- /dev/null
+++ b/nixpkgs/pkgs/applications/emulators/goldberg-emu/dont-install-unsupported.patch
@@ -0,0 +1,34 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index abaace2..5e3465c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -182,10 +182,10 @@ if(WIN32)
+     RUNTIME DESTINATION ./
+   )
+ else()
+-	install(TARGETS
+-    ${LIB_STEAMCLIENT}
+-    LIBRARY DESTINATION ./
+-  )
++    #    install(TARGETS
++    #${LIB_STEAMCLIENT}
++    #LIBRARY DESTINATION ./
++    #)
+ endif()
+ 
+ if(NOT WIN32)
+@@ -220,10 +220,10 @@ if(WIN32)
+     RUNTIME DESTINATION ./
+   )
+ else()
+-	install(TARGETS
+-    ${LIB_STEAMNETWORKINGSOCKETS}
+-    LIBRARY DESTINATION ./
+-  )
++    #	install(TARGETS
++    #    ${LIB_STEAMNETWORKINGSOCKETS}
++    #    LIBRARY DESTINATION ./
++    #  )
+ endif()
+ 
+ if(NOT WIN32)
diff --git a/nixpkgs/pkgs/applications/emulators/reicast/default.nix b/nixpkgs/pkgs/applications/emulators/reicast/default.nix
deleted file mode 100644
index f9e8e4d69376..000000000000
--- a/nixpkgs/pkgs/applications/emulators/reicast/default.nix
+++ /dev/null
@@ -1,52 +0,0 @@
-{ lib, stdenv
-, fetchFromGitHub
-, cmake
-, pkg-config
-, curl
-, alsa-lib
-, libGLU
-, libX11
-, libevdev
-, udev
-, libpulseaudio
-}:
-
-stdenv.mkDerivation rec {
-  pname = "reicast";
-  version = "20.04";
-
-  src = fetchFromGitHub {
-    owner = "reicast";
-    repo = "reicast-emulator";
-    rev = "r${version}";
-    sha256 = "0vz3b1hg1qj6nycnqq5zcpzqpcbxw1c2ffamia5z3x7rapjx5d71";
-  };
-
-  nativeBuildInputs = [ cmake pkg-config ];
-  buildInputs = [
-    curl
-    alsa-lib
-    libGLU
-    libX11
-    libevdev
-    udev
-    libpulseaudio
-  ];
-
-  # No rule to make target 'install'
-  installPhase = ''
-    runHook preInstall
-
-    install -D ./reicast $out/bin/reicast
-
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    homepage = "https://reicast.com/";
-    description = "A multi-platform Sega Dreamcast emulator";
-    license = with licenses; [ bsd3 gpl2Only lgpl2Only ];
-    platforms = ["x86_64-linux" ];
-    maintainers = [ maintainers.ivar ];
-  };
-}
diff --git a/nixpkgs/pkgs/applications/emulators/rpcs3/default.nix b/nixpkgs/pkgs/applications/emulators/rpcs3/default.nix
index 6f58990e4735..74c5b8ee6b35 100644
--- a/nixpkgs/pkgs/applications/emulators/rpcs3/default.nix
+++ b/nixpkgs/pkgs/applications/emulators/rpcs3/default.nix
@@ -9,10 +9,10 @@
 
 let
   # Keep these separate so the update script can regex them
-  rpcs3GitVersion = "13327-6c096b72b";
-  rpcs3Version = "0.0.21-13327-6c096b72b";
-  rpcs3Revision = "6c096b72b5294758067a002f981563bbd618d30d";
-  rpcs3Sha256 = "0xmdhjskqbv02jvl43bvw0clsgh9gnahl50fr3q8lmpwpy13ldr4";
+  rpcs3GitVersion = "13352-e58906cb4";
+  rpcs3Version = "0.0.21-13352-e58906cb4";
+  rpcs3Revision = "e58906cb4df26c14fcade07d7c15ab432dae6882";
+  rpcs3Sha256 = "1bzx6af77z5l6jdgazw8x59pi2xhwkz0knynmf5kzww39m6npx0a";
 
   ittapi = fetchFromGitHub {
     owner = "intel";
diff --git a/nixpkgs/pkgs/applications/emulators/ryujinx/default.nix b/nixpkgs/pkgs/applications/emulators/ryujinx/default.nix
index 2ac16662b882..7a4f4351dc94 100644
--- a/nixpkgs/pkgs/applications/emulators/ryujinx/default.nix
+++ b/nixpkgs/pkgs/applications/emulators/ryujinx/default.nix
@@ -17,13 +17,13 @@
 
 buildDotnetModule rec {
   pname = "ryujinx";
-  version = "1.1.64"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml
+  version = "1.1.77"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml
 
   src = fetchFromGitHub {
     owner = "Ryujinx";
     repo = "Ryujinx";
-    rev = "54bfaa125d9b6ae1be53ec431d40326fba51d0de";
-    sha256 = "0p8wmnm8sjx7wqb5z62mp8c3cwrv241ji3fawj2qgqx3k9jlb31i";
+    rev = "df70442c46e7ee133b1fb79dc23ddd134e618085";
+    sha256 = "1m9msp7kxsj7251l2yjcfzrb4k1lisk9sip7acm22pxmi1a7gw73";
   };
 
   dotnet-sdk = dotnetCorePackages.sdk_6_0;
diff --git a/nixpkgs/pkgs/applications/emulators/ryujinx/deps.nix b/nixpkgs/pkgs/applications/emulators/ryujinx/deps.nix
index 804b17d8946a..33f55f8cb6e8 100644
--- a/nixpkgs/pkgs/applications/emulators/ryujinx/deps.nix
+++ b/nixpkgs/pkgs/applications/emulators/ryujinx/deps.nix
@@ -12,9 +12,9 @@
   (fetchNuGet { pname = "GtkSharp"; version = "3.22.25.128"; sha256 = "0z0wx0p3gc02r8d7y88k1rw307sb2vapbr1k1yc5qdc38fxz5jsy"; })
   (fetchNuGet { pname = "GtkSharp.Dependencies"; version = "1.1.1"; sha256 = "0ffywnc3ca1lwhxdnk99l238vsprsrsh678bgm238lb7ja7m52pw"; })
   (fetchNuGet { pname = "LibHac"; version = "0.16.0"; sha256 = "1kivnf4c4km1a8y0sl34z9gfazlivna0x31q0065n0sz13g82spi"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.0"; sha256 = "0r6jyxl3h1asj30la78skd5gsxgwjpvkspmkw1gglxfg85hnqc8w"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.0"; sha256 = "1hnqhvgjp342nx9s47w5sknmlpkfxbcfi50pa4vary2r7sv8ka2w"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.0"; sha256 = "1j8cn97swc67ly7ca7m05akczrswbg0gjsk7473vad6770ph79vm"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.3"; sha256 = "0rrrfgkr7rzhlnsnajvzb1ijkybp99d992bqxy9pbawmq7d60bdk"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.3"; sha256 = "09whyl3i9mzy10n5zxlq66lj3l4p29hm75igmdip2fb376zxyam3"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.3"; sha256 = "11kv50kll3iq88kn40f5v5qlq8mydv6y6xz2cbzjw4aadd44njwq"; })
   (fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "16.8.0"; sha256 = "1y05sjk7wgd29a47v1yhn2s1lrd8wgazkilvmjbvivmrrm3fqjs8"; })
   (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.0.1"; sha256 = "0zxc0apx1gcx361jlq8smc9pfdgmyjh6hpka8dypc9w23nlsh6yj"; })
   (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.5.0"; sha256 = "01i28nvzccxbqmiz217fxs6hnjwmd5fafs37rd49a6qp53y6623l"; })
@@ -22,17 +22,18 @@
   (fetchNuGet { pname = "Microsoft.IdentityModel.JsonWebTokens"; version = "6.15.0"; sha256 = "0dwx7dk8jr10784nriqbi364qbxzfwq0c6xia0ac5rzrp7179r4d"; })
   (fetchNuGet { pname = "Microsoft.IdentityModel.Logging"; version = "6.15.0"; sha256 = "0jn9a20a2zixnkm3bmpmvmiv7mk0hqdlnpi0qgjkg1nir87czm19"; })
   (fetchNuGet { pname = "Microsoft.IdentityModel.Tokens"; version = "6.15.0"; sha256 = "1nbgydr45f7lp980xyrkzpyaw2mkkishjwp3slgxk7f0mz6q8i1v"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.0"; sha256 = "188cbx99ahvksap9w20943p62fmzxa6fl133w4r7c6bjpsrm29a4"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.0"; sha256 = "1016ld3kg4dav2yxxh0i32cy0ixv7s0wl9czydbhkbs2d8669kfx"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.0"; sha256 = "0qaylw18flrfl3vxnbp8wsiz29znidmn6dhv7k4v4jj2za16wmji"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.0"; sha256 = "1njh3iky5wyxdrisz8xfpy7kzbsrvzfhpdl01xbavvz189x4ajqp"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.0"; sha256 = "13x1nkigy3nhbr8gxalij7krmzxpciyq4i8k7jdy9278zs1lm5a6"; })
+  (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "16.8.0"; sha256 = "1ln2mva7j2mpsj9rdhpk8vhm3pgd8wn563xqdcwd38avnhp74rm9"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.3"; sha256 = "1py3nrfvllqlnb9mhs0qwgy7c14n33b2hfb0qc49rx22sqv8ylbp"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.3"; sha256 = "1y428glba68s76icjzfl1v3p61pcz7rd78wybhabs8zq8w9cp2pj"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.3"; sha256 = "0k9gc94cvn36p0v3pj296asg2sq9a8ah6lfw0xvvmd4hq2k72s79"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.3"; sha256 = "0f04srx6q0jk81a60n956hz32fdngzp0xmdb2x7gyl77gsq8yijj"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.3"; sha256 = "0180ipzzz9pc6f6l17rg5bxz1ghzbapmiqq66kdl33bmbny6vmm9"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.3"; sha256 = "1rjkzs2013razi2xs943q62ys1jh8blhjcnj75qkvirf859d11qw"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.0.0"; sha256 = "1fk2fk2639i7nzy58m9dvpdnzql4vb8yl8vr19r2fp8lmj9w2jr0"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1"; sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
-  (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "16.8.0"; sha256 = "1ln2mva7j2mpsj9rdhpk8vhm3pgd8wn563xqdcwd38avnhp74rm9"; })
   (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "16.8.0"; sha256 = "0ii9d88py6mjsxzj9v3zx4izh6rb9ma6s9kj85xmc0xrw7jc2g3m"; })
   (fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "16.8.0"; sha256 = "1rh8cga1km3jfafkwfjr0dwqrxb4306hf7fipwba9h02w7vlhb9a"; })
   (fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.0.1"; sha256 = "1n8ap0cmljbqskxpf8fjzn7kh1vvlndsa75k01qig26mbw97k2q7"; })
diff --git a/nixpkgs/pkgs/applications/emulators/vice/default.nix b/nixpkgs/pkgs/applications/emulators/vice/default.nix
index 13457823a23e..45fb03f1ac42 100644
--- a/nixpkgs/pkgs/applications/emulators/vice/default.nix
+++ b/nixpkgs/pkgs/applications/emulators/vice/default.nix
@@ -23,6 +23,108 @@
 , file
 }:
 
+let
+  desktopItems = [
+    (makeDesktopItem {
+      name = "x128";
+      exec = "x128";
+      comment = "VICE: C128 Emulator";
+      desktopName = "VICE: C128 Emulator";
+      genericName = "Commodore 128 emulator";
+      categories = [ "System" ];
+    })
+
+    (makeDesktopItem {
+      name = "x64";
+      exec = "x64";
+      comment = "VICE: C64 Emulator";
+      desktopName = "VICE: C64 Emulator";
+      genericName = "Commodore 64 emulator";
+      categories = [ "System" ];
+    })
+
+    (makeDesktopItem {
+      name = "x64dtv";
+      exec = "x64dtv";
+      comment = "VICE: C64 DTV Emulator";
+      desktopName = "VICE: C64 DTV Emulator";
+      genericName = "Commodore 64 DTV emulator";
+      categories = [ "System" ];
+    })
+
+    (makeDesktopItem {
+      name = "x64sc";
+      exec = "x64sc";
+      comment = "VICE: C64 SC Emulator";
+      desktopName = "VICE: C64 SC Emulator";
+      genericName = "Commodore 64 SC emulator";
+      categories = [ "System" ];
+    })
+
+    (makeDesktopItem {
+      name = "xcbm2";
+      exec = "xcbm2";
+      comment = "VICE: CBM-II B-Model Emulator";
+      desktopName = "VICE: CBM-II B-Model Emulator";
+      genericName = "CBM-II B-Model Emulator";
+      categories = [ "System" ];
+    })
+
+    (makeDesktopItem {
+      name = "xcbm5x0";
+      exec = "xcbm5x0";
+      comment = "VICE: CBM-II P-Model Emulator";
+      desktopName = "VICE: CBM-II P-Model Emulator";
+      genericName = "CBM-II P-Model Emulator";
+      categories = [ "System" ];
+    })
+
+    (makeDesktopItem {
+      name = "xpet";
+      exec = "xpet";
+      comment = "VICE: PET Emulator";
+      desktopName = "VICE: PET Emulator";
+      genericName = "Commodore PET Emulator";
+      categories = [ "System" ];
+    })
+
+    (makeDesktopItem {
+      name = "xplus4";
+      exec = "xplus4";
+      comment = "VICE: PLUS4 Emulator";
+      desktopName = "VICE: PLUS4 Emulator";
+      genericName = "Commodore PLUS4 Emulator";
+      categories = [ "System" ];
+    })
+
+    (makeDesktopItem {
+      name = "xscpu64";
+      exec = "xscpu64";
+      comment = "VICE: SCPU64 Emulator";
+      desktopName = "VICE: SCPU64 Emulator";
+      genericName = "Commodore SCPU64 Emulator";
+      categories = [ "System" ];
+    })
+
+    (makeDesktopItem {
+      name = "xvic";
+      exec = "xvic";
+      comment = "VICE: VIC-20 Emulator";
+      desktopName = "VICE: VIC-20 Emulator";
+      genericName = "Commodore VIC-20 Emulator";
+      categories = [ "System" ];
+    })
+
+    (makeDesktopItem {
+      name = "vsid";
+      exec = "vsid";
+      comment = "VSID: The SID Emulator";
+      desktopName = "VSID: The SID Emulator";
+      genericName = "SID Emulator";
+      categories = [ "System" ];
+    })
+  ];
+in
 stdenv.mkDerivation rec {
   pname = "vice";
   version = "3.6.1";
@@ -59,15 +161,6 @@ stdenv.mkDerivation rec {
   dontDisableStatic = true;
   configureFlags = [ "--enable-fullscreen" "--enable-gnomeui" "--disable-pdf-docs" ];
 
-  desktopItem = makeDesktopItem {
-    name = "vice";
-    exec = "x64";
-    comment = "Commodore 64 emulator";
-    desktopName = "VICE";
-    genericName = "Commodore 64 emulator";
-    categories = [ "Emulator" ];
-  };
-
   preBuild = ''
     for i in src/resid src/resid-dtv
     do
@@ -77,12 +170,15 @@ stdenv.mkDerivation rec {
   '';
 
   postInstall = ''
-    mkdir -p $out/share/applications
-    cp ${desktopItem}/share/applications/* $out/share/applications
+    for app in ${toString desktopItems}
+    do
+        mkdir -p $out/share/applications
+        cp $app/share/applications/* $out/share/applications
+    done
   '';
 
   meta = {
-    description = "Commodore 64, 128 and other emulators";
+    description = "Emulators for a variety of 8-bit Commodore computers";
     homepage = "https://vice-emu.sourceforge.io/";
     license = lib.licenses.gpl2Plus;
     maintainers = [ lib.maintainers.sander ];
diff --git a/nixpkgs/pkgs/applications/emulators/wine/base.nix b/nixpkgs/pkgs/applications/emulators/wine/base.nix
index f13e224627a9..7788b13b4ecb 100644
--- a/nixpkgs/pkgs/applications/emulators/wine/base.nix
+++ b/nixpkgs/pkgs/applications/emulators/wine/base.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, pkgArches, callPackage, makeSetupHook,
-  name, version, src, mingwGccs, monos, geckos, platforms,
+  pname, version, src, mingwGccs, monos, geckos, platforms,
   bison, flex, fontforge, makeWrapper, pkg-config,
   autoconf, hexdump, perl, nixosTests,
   supportFlags,
@@ -13,7 +13,7 @@ with import ./util.nix { inherit lib; };
 
 let
   patches' = patches;
-  prevName = name;
+  prevName = pname;
   prevPlatforms = platforms;
   prevConfigFlags = configureFlags;
   setupHookDarwin = makeSetupHook {
@@ -42,9 +42,9 @@ stdenv.mkDerivation ((lib.optionalAttrs (buildScript != null) {
     make loader/wine64-preloader NIX_LDFLAGS="" NIX_LDFLAGS_${stdenv.cc.suffixSalt}=""
   '';
 }) // rec {
-  inherit src;
+  inherit version src;
 
-  name = if supportFlags.waylandSupport then "${prevName}-wayland" else prevName;
+  pname = prevName + lib.optionalString supportFlags.waylandSupport "wayland";
 
   # Fixes "Compiler cannot create executables" building wineWow with mingwSupport
   strictDeps = true;
diff --git a/nixpkgs/pkgs/applications/emulators/wine/packages.nix b/nixpkgs/pkgs/applications/emulators/wine/packages.nix
index bf3f57aff0ff..c119feb783d3 100644
--- a/nixpkgs/pkgs/applications/emulators/wine/packages.nix
+++ b/nixpkgs/pkgs/applications/emulators/wine/packages.nix
@@ -9,7 +9,7 @@ let
   vkd3d_i686 = pkgsi686Linux.callPackage ./vkd3d.nix { inherit moltenvk; };
 in with src; {
   wine32 = pkgsi686Linux.callPackage ./base.nix {
-    name = "wine-${version}";
+    pname = "wine";
     inherit src version supportFlags patches moltenvk;
     pkgArches = [ pkgsi686Linux ];
     vkd3dArches = lib.optionals supportFlags.vkd3dSupport [ vkd3d_i686 ];
@@ -19,7 +19,7 @@ in with src; {
     platforms = [ "i686-linux" "x86_64-linux" ];
   };
   wine64 = callPackage ./base.nix {
-    name = "wine64-${version}";
+    pname = "wine64";
     inherit src version supportFlags patches moltenvk;
     pkgArches = [ pkgs ];
     vkd3dArches = lib.optionals supportFlags.vkd3dSupport [ vkd3d ];
@@ -30,7 +30,7 @@ in with src; {
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
   };
   wineWow = callPackage ./base.nix {
-    name = "wine-wow-${version}";
+    pname = "wine-wow";
     inherit src version supportFlags patches moltenvk;
     stdenv = stdenv_32bit;
     pkgArches = [ pkgs pkgsi686Linux ];
diff --git a/nixpkgs/pkgs/applications/emulators/wine/sources.nix b/nixpkgs/pkgs/applications/emulators/wine/sources.nix
index b98aceddbd4d..23538a237e4a 100644
--- a/nixpkgs/pkgs/applications/emulators/wine/sources.nix
+++ b/nixpkgs/pkgs/applications/emulators/wine/sources.nix
@@ -46,9 +46,9 @@ in rec {
 
   unstable = fetchurl rec {
     # NOTE: Don't forget to change the SHA256 for staging as well.
-    version = "7.2";
+    version = "7.4";
     url = "https://dl.winehq.org/wine/source/7.x/wine-${version}.tar.xz";
-    sha256 = "sha256-38ZBUjyNvGZBaLYXREFjPZcSdUVr9n3i3KqZyNql7hU=";
+    sha256 = "sha256-co6GbW5JzpKioMUUMz6f8Ivb9shvXvTmGAFDuNK31BY=";
     inherit (stable) gecko32 gecko64 patches;
 
     mono = fetchurl rec {
@@ -61,7 +61,7 @@ in rec {
   staging = fetchFromGitHub rec {
     # https://github.com/wine-staging/wine-staging/releases
     inherit (unstable) version;
-    sha256 = "sha256-Ec9rienlsDg+2QkJqPrGorDb5NycG1/iGWhnqLZOrwg=";
+    sha256 = "0vlj3b8bnidyhlgkjrnlbah3878zjy3s557vbp16qka42zjaa51q";
     owner = "wine-staging";
     repo = "wine-staging";
     rev = "v${version}";
diff --git a/nixpkgs/pkgs/applications/emulators/wine/vkd3d.nix b/nixpkgs/pkgs/applications/emulators/wine/vkd3d.nix
index ac7c399cd97b..4f06b886e231 100644
--- a/nixpkgs/pkgs/applications/emulators/wine/vkd3d.nix
+++ b/nixpkgs/pkgs/applications/emulators/wine/vkd3d.nix
@@ -1,16 +1,18 @@
-{ lib, stdenv, fetchurl, moltenvk, vulkan-headers, spirv-headers, vulkan-loader }:
+{ lib, stdenv, fetchurl, moltenvk, vulkan-headers, spirv-headers, vulkan-loader, flex, bison }:
 
 #TODO: unstable
 
 stdenv.mkDerivation rec {
   pname = "vkd3d";
-  version = "1.2";
+  version = "1.3";
 
   src = fetchurl {
     url = "https://dl.winehq.org/vkd3d/source/vkd3d-${version}.tar.xz";
-    sha256 = "0szr1lw3xbgi9qjm13d1q4gyzzwv8i5wfxiwjg6dmwphrc7h6jxh";
+    sha256 = "134b347806d34a4d2b39ea29ff1c2b38443793803a3adc50800855bb929fb8b2";
   };
 
+  nativeBuildInputs = [ flex bison ];
+
   buildInputs = [ vulkan-headers spirv-headers ]
     ++ [ (if stdenv.isDarwin then moltenvk else vulkan-loader) ];
 
diff --git a/nixpkgs/pkgs/applications/emulators/yuzu/default.nix b/nixpkgs/pkgs/applications/emulators/yuzu/default.nix
index 9e45ba0cd2cb..f212abb448a6 100644
--- a/nixpkgs/pkgs/applications/emulators/yuzu/default.nix
+++ b/nixpkgs/pkgs/applications/emulators/yuzu/default.nix
@@ -4,25 +4,25 @@ let
 in {
   mainline = libsForQt5.callPackage ./base.nix rec {
     pname = "yuzu-mainline";
-    version = "882";
+    version = "953";
     branchName = branch;
     src = fetchFromGitHub {
       owner = "yuzu-emu";
       repo = "yuzu-mainline";
       rev = "mainline-0-${version}";
-      sha256 = "17j845laxnaq50icwl32yisdivwcnwa59fxdr297yxrz4hmfzhxq";
+      sha256 = "0p07gybyhr6flzmhz92qlrwcq7l37c2wmcxw8sbrvhj2pgaaw9ic";
       fetchSubmodules = true;
     };
   };
   early-access = libsForQt5.callPackage ./base.nix rec {
     pname = "yuzu-ea";
-    version = "2432";
+    version = "2557";
     branchName = branch;
     src = fetchFromGitHub {
       owner = "pineappleEA";
       repo = "pineapple-src";
       rev = "EA-${version}";
-      sha256 = "0zqab61rphgjzyxk52idhr7dqwwxih0f8b9hig3zvrwkdry9wfh4";
+      sha256 = "013xxgyn8y5fv0xbrm0zfl9xmi0gx4hpflrbjskg1hcvb2bjqyvj";
     };
   };
 }.${branch}
diff --git a/nixpkgs/pkgs/applications/gis/grass/default.nix b/nixpkgs/pkgs/applications/gis/grass/default.nix
index 5ca31cc04052..36664a2d49cd 100644
--- a/nixpkgs/pkgs/applications/gis/grass/default.nix
+++ b/nixpkgs/pkgs/applications/gis/grass/default.nix
@@ -5,7 +5,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "grass";
+  pname = "grass";
   version = "7.8.6";
 
   src = with lib; fetchFromGitHub {
diff --git a/nixpkgs/pkgs/applications/gis/qgis/unwrapped-ltr.nix b/nixpkgs/pkgs/applications/gis/qgis/unwrapped-ltr.nix
index 41408bc33072..5a4f059e91ef 100644
--- a/nixpkgs/pkgs/applications/gis/qgis/unwrapped-ltr.nix
+++ b/nixpkgs/pkgs/applications/gis/qgis/unwrapped-ltr.nix
@@ -69,14 +69,14 @@ let
     six
   ];
 in mkDerivation rec {
-  version = "3.22.4";
+  version = "3.22.5";
   pname = "qgis-ltr-unwrapped";
 
   src = fetchFromGitHub {
     owner = "qgis";
     repo = "QGIS";
     rev = "final-${lib.replaceStrings [ "." ] [ "_" ] version}";
-    sha256 = "sha256-z2dCdaIJUKpZgJHtn1/qA07uMJpAWKL0cDx6B/n1Oxg=";
+    sha256 = "sha256-G7ckAj0vb6030L2gL11+e5pp0OK1NxwECQ295B9sI4o=";
   };
 
   passthru = {
diff --git a/nixpkgs/pkgs/applications/gis/qgis/unwrapped.nix b/nixpkgs/pkgs/applications/gis/qgis/unwrapped.nix
index 9658cfe0608d..ca73dcdbfaaf 100644
--- a/nixpkgs/pkgs/applications/gis/qgis/unwrapped.nix
+++ b/nixpkgs/pkgs/applications/gis/qgis/unwrapped.nix
@@ -69,14 +69,14 @@ let
     six
   ];
 in mkDerivation rec {
-  version = "3.24.0";
+  version = "3.24.1";
   pname = "qgis-unwrapped";
 
   src = fetchFromGitHub {
     owner = "qgis";
     repo = "QGIS";
     rev = "final-${lib.replaceStrings [ "." ] [ "_" ] version}";
-    sha256 = "sha256-EPF8sXAH7UAttLutxXGFovog3+XpXP0GXg2tu0mSU2s=";
+    sha256 = "sha256-3dAwFR7L6NNDkDqNg9MzOJOGh1CDEJfckwo72dQECDg=";
   };
 
   passthru = {
diff --git a/nixpkgs/pkgs/applications/graphics/drawio/default.nix b/nixpkgs/pkgs/applications/graphics/drawio/default.nix
index 57439313bf24..e53030428e61 100644
--- a/nixpkgs/pkgs/applications/graphics/drawio/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/drawio/default.nix
@@ -11,11 +11,11 @@
 
 stdenv.mkDerivation rec {
   pname = "drawio";
-  version = "16.5.1";
+  version = "17.2.4";
 
   src = fetchurl {
     url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/drawio-x86_64-${version}.rpm";
-    sha256 = "a8ebf2560820d2d05677b9b16fc863f555dde8235b3e34acd7916eee3544eaa9";
+    sha256 = "sha256-dKl7DxNneoQEL+QhZmpfQCd15RoeDRnkZt3sv8t2KM4=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/graphics/gimp/default.nix b/nixpkgs/pkgs/applications/graphics/gimp/default.nix
index 9a91e5f8c6e9..55c95c95cf73 100644
--- a/nixpkgs/pkgs/applications/graphics/gimp/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/gimp/default.nix
@@ -180,5 +180,6 @@ in stdenv.mkDerivation rec {
     maintainers = with maintainers; [ jtojnar ];
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
+    mainProgram = "gimp";
   };
 }
diff --git a/nixpkgs/pkgs/applications/graphics/gimp/wrapper.nix b/nixpkgs/pkgs/applications/graphics/gimp/wrapper.nix
index 679e9136c44a..353990ca3a95 100644
--- a/nixpkgs/pkgs/applications/graphics/gimp/wrapper.nix
+++ b/nixpkgs/pkgs/applications/graphics/gimp/wrapper.nix
@@ -26,4 +26,6 @@ in symlinkJoin {
       ln -sf "$each-${versionBranch}" $out/bin/$each
     done
   '';
+
+  inherit (gimp) meta;
 }
diff --git a/nixpkgs/pkgs/applications/graphics/glimpse/default.nix b/nixpkgs/pkgs/applications/graphics/glimpse/default.nix
index 01271f53b572..09e58fccf9d1 100644
--- a/nixpkgs/pkgs/applications/graphics/glimpse/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/glimpse/default.nix
@@ -195,5 +195,6 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ ashkitten erictapen ];
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
+    mainProgram = "glimpse";
   };
 }
diff --git a/nixpkgs/pkgs/applications/graphics/glimpse/wrapper.nix b/nixpkgs/pkgs/applications/graphics/glimpse/wrapper.nix
index 361b2ba38b6e..63697a9bb66b 100644
--- a/nixpkgs/pkgs/applications/graphics/glimpse/wrapper.nix
+++ b/nixpkgs/pkgs/applications/graphics/glimpse/wrapper.nix
@@ -27,4 +27,6 @@ symlinkJoin {
       ln -sf "$each-${versionBranch}" $out/bin/$each
     done
   '';
+
+  inherit (glimpse) meta;
 }
diff --git a/nixpkgs/pkgs/applications/graphics/gnome-photos/default.nix b/nixpkgs/pkgs/applications/graphics/gnome-photos/default.nix
index 9dc318a0674c..774e377ca031 100644
--- a/nixpkgs/pkgs/applications/graphics/gnome-photos/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/gnome-photos/default.nix
@@ -36,13 +36,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-photos";
-  version = "40.0";
+  version = "42.0";
 
   outputs = [ "out" "installedTests" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "1bzi79plw6ji6qlckhxnwfnswy6jpnhzmmyanml2i2xg73hp6bg0";
+    sha256 = "JcsoFCUZnex7BF8T8y+PlgNMsMuLlNlvnf+vT1vmhVE=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/applications/graphics/gpicview/default.nix b/nixpkgs/pkgs/applications/graphics/gpicview/default.nix
index edafa5612a2d..ae1e64297bd5 100644
--- a/nixpkgs/pkgs/applications/graphics/gpicview/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/gpicview/default.nix
@@ -23,7 +23,6 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A simple and fast image viewer for X";
     homepage = "http://lxde.sourceforge.net/gpicview/";
-    repositories.git = "git://lxde.git.sourceforge.net/gitroot/lxde/gpicview";
     license = licenses.gpl2;
     maintainers = with maintainers; [ lovek323 ];
     platforms = platforms.unix;
diff --git a/nixpkgs/pkgs/applications/graphics/gthumb/default.nix b/nixpkgs/pkgs/applications/graphics/gthumb/default.nix
index d412c6fded87..e680554a711e 100644
--- a/nixpkgs/pkgs/applications/graphics/gthumb/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/gthumb/default.nix
@@ -33,11 +33,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gthumb";
-  version = "3.12.0";
+  version = "3.12.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-Pe/8AwOE5ktXNhxDfHm0ga4Uie9EyHroVugbsQ2OOD8=";
+    sha256 = "sha256-ZDBmOgAHBpbGgeXru4AQc/1GpG1oEsKeL5pPgRr6Gfw=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/graphics/hydrus/default.nix b/nixpkgs/pkgs/applications/graphics/hydrus/default.nix
index 12e605f80c4f..1d0cf4bec7d0 100644
--- a/nixpkgs/pkgs/applications/graphics/hydrus/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/hydrus/default.nix
@@ -10,22 +10,24 @@
 
 python3Packages.buildPythonPackage rec {
   pname = "hydrus";
-  version = "474";
+  version = "478";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "hydrusnetwork";
     repo = "hydrus";
     rev = "v${version}";
-    sha256 = "sha256-NeTHq8zlgBajw/eogwpabqeU0b7cp83Frqy6kisrths=";
+    sha256 = "sha256-ZsQzKc2fOFTzI/kBS8ws2+XT9kRAn4L55n1EZgVy4Kk=";
   };
 
   nativeBuildInputs = [
     wrapQtAppsHook
+    python3Packages.mkdocs-material
   ];
 
   propagatedBuildInputs = with python3Packages; [
     beautifulsoup4
+    cbor2
     chardet
     cloudscraper
     html5lib
@@ -85,6 +87,7 @@ python3Packages.buildPythonPackage rec {
     # Move the hydrus module and related directories
     mkdir -p $out/${python3Packages.python.sitePackages}
     mv {hydrus,static} $out/${python3Packages.python.sitePackages}
+    mkdocs build -d help
     mv help $out/doc/
 
     # install the hydrus binaries
diff --git a/nixpkgs/pkgs/applications/graphics/inkscape/default.nix b/nixpkgs/pkgs/applications/graphics/inkscape/default.nix
index 12d6332af5d5..0958676cc99b 100644
--- a/nixpkgs/pkgs/applications/graphics/inkscape/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/inkscape/default.nix
@@ -5,6 +5,7 @@
 , cairo
 , cmake
 , fetchurl
+, fetchpatch
 , gettext
 , ghostscript
 , glib
@@ -71,6 +72,13 @@ stdenv.mkDerivation rec {
       # e.g., those from the "Effects" menu.
       python3 = "${python3Env}/bin/python";
     })
+
+    # Fix build with poppler 22.03
+    # https://gitlab.com/inkscape/inkscape/-/merge_requests/4187
+    (fetchpatch {
+      url = "https://gitlab.com/inkscape/inkscape/-/commit/a18c57ffff313fd08bc8a44f6b6bf0b01d7e9b75.patch";
+      sha256 = "UZb8ZTtfA5667uo5ZlVQ5vPowiSgd4ItAJ9U1BOsRQg=";
+    })
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/applications/graphics/inkscape/extensions.nix b/nixpkgs/pkgs/applications/graphics/inkscape/extensions.nix
index 63010a19f14d..08260c968cfb 100644
--- a/nixpkgs/pkgs/applications/graphics/inkscape/extensions.nix
+++ b/nixpkgs/pkgs/applications/graphics/inkscape/extensions.nix
@@ -9,8 +9,8 @@
   applytransforms = callPackage ./extensions/applytransforms { };
 
   hexmap = stdenv.mkDerivation {
-    name = "hexmap";
-    version = "2020-06-06";
+    pname = "hexmap";
+    version = "unstable-2020-06-06";
 
     src = fetchFromGitHub {
       owner = "lifelike";
diff --git a/nixpkgs/pkgs/applications/graphics/menyoki/default.nix b/nixpkgs/pkgs/applications/graphics/menyoki/default.nix
index 7a601b9641d1..296c9d206548 100644
--- a/nixpkgs/pkgs/applications/graphics/menyoki/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/menyoki/default.nix
@@ -12,16 +12,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "menyoki";
-  version = "1.5.6";
+  version = "1.6.0";
 
   src = fetchFromGitHub {
     owner = "orhun";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-2k8CRya9SylauYV+2aQS2QHkQhyiTHMgGp1DNoZ4jbU=";
+    sha256 = "sha256-7dqV18+Q0M1PrSXfMro5bUqSeA72Stj5JfP4MsTlrjM=";
   };
 
-  cargoSha256 = "sha256-NLPqJepg0WRt/X3am9J7vwIE9bn+dt2UHE26Dc/QRMM=";
+  cargoSha256 = "sha256-c3VpHr/X2tKh7mY4dOQac0lS7oem0GGqjzv7feNwc24=";
 
   nativeBuildInputs = [ installShellFiles ]
     ++ lib.optional stdenv.isLinux pkg-config;
diff --git a/nixpkgs/pkgs/applications/graphics/mtpaint/default.nix b/nixpkgs/pkgs/applications/graphics/mtpaint/default.nix
index 3565173285b4..0acc873b3968 100644
--- a/nixpkgs/pkgs/applications/graphics/mtpaint/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/mtpaint/default.nix
@@ -4,14 +4,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  p_name  = "mtPaint";
-  ver_maj = "3.50";
-  ver_min = "01";
-  name = "${p_name}-${ver_maj}.${ver_min}";
+  pname  = "mtPaint";
+  version = "3.50.01";
 
   src = fetchFromGitHub {
     owner = "wjaguar";
-    repo = p_name;
+    repo = "mtPaint";
     rev = "a4675ff5cd9fcd57d291444cb9f332b48f11243f";
     sha256 = "04wqxz8i655gz5rnz90cksy8v6m2jhcn1j8rzhqpp5xhawlmq24y";
   };
diff --git a/nixpkgs/pkgs/applications/graphics/nomacs/default.nix b/nixpkgs/pkgs/applications/graphics/nomacs/default.nix
index 9f3c1e453f8d..29b049ac55be 100644
--- a/nixpkgs/pkgs/applications/graphics/nomacs/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/nomacs/default.nix
@@ -66,7 +66,6 @@ mkDerivation rec {
     description = "Qt-based image viewer";
     maintainers = with lib.maintainers; [ mindavi ];
     license = licenses.gpl3Plus;
-    repositories.git = "https://github.com/nomacs/nomacs.git";
     inherit (qtbase.meta) platforms;
   };
 }
diff --git a/nixpkgs/pkgs/applications/graphics/pixinsight/default.nix b/nixpkgs/pkgs/applications/graphics/pixinsight/default.nix
index 8396ba55638f..8e864b640968 100644
--- a/nixpkgs/pkgs/applications/graphics/pixinsight/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/pixinsight/default.nix
@@ -7,12 +7,12 @@
 
 stdenv.mkDerivation rec {
   pname = "pixinsight";
-  version = "1.8.8-12";
+  version = "1.8.9";
 
   src = requireFile rec {
-    name = "PI-linux-x64-${version}-20211229-c.tar.xz";
+    name = "PI-linux-x64-${version}-20220313-c.tar.xz";
     url = "https://pixinsight.com/";
-    sha256 = "7095b83a276f8000c9fe50caadab4bf22a248a880e77b63e0463ad8d5469f617";
+    sha256 = "sha256-LvrTB8fofuysxR3OoZ2fkkOQU62yUAu8ePOczJG2uqU=";
     message = ''
       PixInsight is available from ${url} and requires a commercial (or trial) license.
       After a license has been obtained, PixInsight can be downloaded from the software distribution
diff --git a/nixpkgs/pkgs/applications/graphics/sane/backends/brscan5/default.nix b/nixpkgs/pkgs/applications/graphics/sane/backends/brscan5/default.nix
index 9771384a5d1a..9f76a0dd0b7d 100644
--- a/nixpkgs/pkgs/applications/graphics/sane/backends/brscan5/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/sane/backends/brscan5/default.nix
@@ -5,21 +5,22 @@ let
       ${stdenv.glibc}/lib/ld-linux${optionalString stdenv.is64bit "-x86-64"}.so.2 \
       ${file}
   '';
+  system = stdenv.hostPlatform.system;
 
 in
 stdenv.mkDerivation rec {
   pname = "brscan5";
-  version = "1.2.7-0";
+  version = "1.2.9-0";
   src = {
     "i686-linux" = fetchurl {
       url = "https://download.brother.com/welcome/dlf104034/${pname}-${version}.i386.deb";
-      sha256 = "647d06f629c22408d25be7c0bf49a4b1c7280bf78a27aa2cde6c3e3fa8b6807a";
+      sha256 = "ac23c9a435818955e7882ab06380adf346203ff4e45f384b40e84b8b29642f07";
     };
     "x86_64-linux" = fetchurl {
       url = "https://download.brother.com/welcome/dlf104033/${pname}-${version}.amd64.deb";
-      sha256 = "867bd88ab0d90f8e9391dc8127385095127e533cb6bd2d5d13449df602b165ae";
+      sha256 = "4ec23ff4b457323ae778e871a0f1abcc1848ea105af17850b57f7dcaddcfd96d";
     };
-  }."${stdenv.hostPlatform.system}";
+  }."${system}" or (throw "Unsupported system: ${system}");
 
   unpackPhase = ''
     ar x $src
@@ -30,21 +31,28 @@ stdenv.mkDerivation rec {
   buildInputs = [ libusb1 avahi-compat stdenv.cc.cc glib ];
   dontBuild = true;
 
-  postPatch = ''
-    ${myPatchElf "opt/brother/scanner/brscan5/brsaneconfig5"}
-    ${myPatchElf "opt/brother/scanner/brscan5/brscan_cnetconfig"}
-    ${myPatchElf "opt/brother/scanner/brscan5/brscan_gnetconfig"}
-
-    for a in opt/brother/scanner/brscan5/*.so.* opt/brother/scanner/brscan5/brscan_[cg]netconfig; do
-      if ! test -L $a; then
-        patchelf --set-rpath ${lib.makeLibraryPath buildInputs} $a
-      fi
-    done
-
-    # driver is hardcoded to look in /opt/brother/scanner/brscan5/models for model metadata.
-    # patch it to look in /etc/opt/brother/scanner/models instead, so nixos environment.etc can make it available
-    printf '/etc/opt/brother/scanner/models\x00' | dd of=opt/brother/scanner/brscan5/libsane-brother5.so.1.0.7 bs=1 seek=84632 conv=notrunc
-  '';
+  postPatch =
+    let
+      patchOffsetBytes =
+        if system == "x86_64-linux" then 84632
+        else if system == "i686-linux" then 77396
+        else throw "Unsupported system: ${system}";
+    in
+    ''
+      ${myPatchElf "opt/brother/scanner/brscan5/brsaneconfig5"}
+      ${myPatchElf "opt/brother/scanner/brscan5/brscan_cnetconfig"}
+      ${myPatchElf "opt/brother/scanner/brscan5/brscan_gnetconfig"}
+
+      for file in opt/brother/scanner/brscan5/*.so.* opt/brother/scanner/brscan5/brscan_[cg]netconfig; do
+        if ! test -L $file; then
+          patchelf --set-rpath ${lib.makeLibraryPath buildInputs} $file
+        fi
+      done
+
+      # driver is hardcoded to look in /opt/brother/scanner/brscan5/models for model metadata.
+      # patch it to look in /etc/opt/brother/scanner/models instead, so nixos environment.etc can make it available
+      printf '/etc/opt/brother/scanner/models\x00' | dd of=opt/brother/scanner/brscan5/libsane-brother5.so.1.0.7 bs=1 seek=${toString patchOffsetBytes} conv=notrunc
+    '';
 
   installPhase = with lib; ''
     runHook preInstall
diff --git a/nixpkgs/pkgs/applications/graphics/unigine-heaven/default.nix b/nixpkgs/pkgs/applications/graphics/unigine-heaven/default.nix
new file mode 100644
index 000000000000..2ce05a52812e
--- /dev/null
+++ b/nixpkgs/pkgs/applications/graphics/unigine-heaven/default.nix
@@ -0,0 +1,107 @@
+{ lib
+, stdenv
+, fetchurl
+, makeWrapper
+, libX11
+, libXext
+, libXrandr
+, freetype
+, fontconfig
+, libXrender
+, libXinerama
+, autoPatchelfHook
+, libglvnd
+, openal
+, imagemagick
+, makeDesktopItem
+}:
+let
+  version = "4.0";
+
+  arch =
+    if stdenv.hostPlatform.system == "x86_64-linux" then
+      "x64"
+    else if stdenv.hostPlatform.system == "i686-linux" then
+      "x86"
+    else
+      throw "Unsupported platform ${stdenv.hostPlatform.system}";
+
+  desktopItem = makeDesktopItem {
+    name = "Heaven";
+    exec = "heaven";
+    genericName = "A GPU Stress test tool from the UNIGINE";
+    icon = "Heaven";
+    desktopName = "Heaven Benchmark";
+  };
+in
+stdenv.mkDerivation
+{
+  pname = "unigine-heaven";
+  inherit version;
+
+  src = fetchurl {
+    url = "https://assets.unigine.com/d/Unigine_Heaven-${version}.run";
+    sha256 = "19rndwwxnb9k2nw9h004hyrmr419471s0fp25yzvvc6rkd521c0v";
+  };
+
+  installPhase =
+    ''
+      sh $src --target $name
+
+      mkdir -p $out/lib/unigine/heaven/bin
+      mkdir -p $out/bin
+      mkdir -p $out/share/applications/
+      mkdir -p $out/share/icons/hicolor
+
+      install -m 0755 $name/bin/browser_${arch} $out/lib/unigine/heaven/bin
+      install -m 0755 $name/bin/libApp{Stereo,Surround,Wall}_${arch}.so $out/lib/unigine/heaven/bin
+      install -m 0755 $name/bin/libGPUMonitor_${arch}.so $out/lib/unigine/heaven/bin
+      install -m 0755 $name/bin/libQt{Core,Gui,Network,WebKit,Xml}Unigine_${arch}.so.4 $out/lib/unigine/heaven/bin
+      install -m 0755 $name/bin/libUnigine_${arch}.so $out/lib/unigine/heaven/bin
+      install -m 0755 $name/bin/heaven_${arch} $out/lib/unigine/heaven/bin
+      install -m 0755 $name/heaven $out/bin/heaven
+
+      cp -R $name/data $name/documentation $out/lib/unigine/heaven
+
+      wrapProgram $out/bin/heaven --prefix LD_LIBRARY_PATH : ${libglvnd}/lib:$out/bin:${openal}/lib --run "cd $out/lib/unigine/heaven/"
+
+      convert $out/lib/unigine/heaven/data/launcher/icon.png -resize 128x128 $out/share/icons/Heaven.png
+      for RES in 16 24 32 48 64 128 256
+      do
+          mkdir -p $out/share/icons/hicolor/"$RES"x"$RES"/apps
+          convert $out/lib/unigine/heaven/data/launcher/icon.png -resize "$RES"x"$RES" $out/share/icons/hicolor/"$RES"x"$RES"/apps/Heaven.png
+      done
+
+      ln -s ${desktopItem}/share/applications/* $out/share/applications
+    '';
+
+  nativeBuildInputs =
+    [
+      autoPatchelfHook
+      makeWrapper
+      imagemagick
+    ];
+
+  buildInputs =
+    [
+      libX11
+      stdenv.cc.cc
+      libXext
+      libXrandr
+      freetype
+      fontconfig
+      libXrender
+      libXinerama
+    ];
+
+  dontUnpack = true;
+
+  meta =
+    {
+      description = "The Unigine Heaven GPU benchmarking tool";
+      homepage = "https://benchmark.unigine.com/heaven";
+      license = lib.licenses.unfree;
+      maintainers = [ lib.maintainers.BarinovMaxim ];
+      platforms = [ "x86_64-linux" "i686-linux" ];
+    };
+}
diff --git a/nixpkgs/pkgs/applications/graphics/unigine-superposition/default.nix b/nixpkgs/pkgs/applications/graphics/unigine-superposition/default.nix
new file mode 100644
index 000000000000..768089d1a0c4
--- /dev/null
+++ b/nixpkgs/pkgs/applications/graphics/unigine-superposition/default.nix
@@ -0,0 +1,146 @@
+{ lib
+, glib
+, stdenv
+, dbus
+, freetype
+, fontconfig
+, zlib
+, qtquickcontrols2
+, libXinerama
+, libxcb
+, libSM
+, libXi
+, libglvnd
+, libXext
+, libXrandr
+, mailspring
+, libX11
+, libICE
+, libXrender
+, autoPatchelfHook
+, makeWrapper
+, mkDerivation
+, xkeyboard_config
+, fetchurl
+, buildFHSUserEnv
+, openal
+, makeDesktopItem
+}:
+
+let
+
+  superposition = stdenv.mkDerivation rec{
+    pname = "unigine-superposition";
+    version = "1.1";
+
+    src = fetchurl {
+      url = "https://assets.unigine.com/d/Unigine_Superposition-${version}.run";
+      sha256 = "12hzlz792pf8pvxf13fww3qhahqzwzkxq9q3mq20hbhvaphbg7nd";
+    };
+
+    nativeBuildInputs = [
+      autoPatchelfHook
+      makeWrapper
+    ];
+
+    buildInputs = [
+      glib
+      stdenv.cc.cc
+      dbus
+      freetype
+      fontconfig
+      zlib
+      qtquickcontrols2
+      libXinerama
+      libxcb
+      libSM
+      libXi
+      libglvnd
+      libXext
+      libXrandr
+      mailspring
+      libX11
+      libICE
+      libXrender
+    ];
+
+    installPhase = ''
+      bash $src --target $name --noexec
+      mkdir -p $out/bin $out/lib/unigine/superposition/
+      cp -r $name/* $out/lib/unigine/superposition/
+      echo "exec $out/lib/unigine/superposition/Superposition" >> $out/bin/superposition
+      chmod +x $out/bin/superposition
+       wrapProgram $out/lib/unigine/superposition/Superposition \
+        --set QT_XKB_CONFIG_ROOT ${xkeyboard_config} \
+        --run "cd $out/lib/unigine/superposition/"
+    '';
+
+    dontUnpack = true;
+    dontWrapQtApps = true;
+
+    postPatchMkspecs = ''
+      cp -f $name/bin/superposition $out/lib/unigine/superposition/bin/superposition
+    '';
+  };
+
+  desktopItem = makeDesktopItem {
+    name = "Superposition";
+    exec = "Superposition";
+    genericName = "A GPU Stress test tool from the UNIGINE";
+    icon = "Superposition";
+    desktopName = "Superposition Benchmark";
+  };
+
+in
+
+# We can patch the "/bin/superposition", but "/bin/launcher" checks it for changes.
+# For that we need use a buildFHSUserEnv.
+
+buildFHSUserEnv {
+  name = "Superposition";
+
+  targetPkgs = pkgs: [
+    superposition
+    glib
+    stdenv.cc.cc
+    dbus
+    freetype
+    fontconfig
+    zlib
+    qtquickcontrols2
+    libXinerama
+    libxcb
+    libSM
+    libXi
+    libglvnd
+    libXext
+    libXrandr
+    mailspring
+    libX11
+    libICE
+    libXrender
+    openal
+  ];
+  runScript = "superposition";
+
+  extraInstallCommands = ''
+    # create directories
+    mkdir -p $out/share/icons/hicolor $out/share/applications
+    # create .desktop file
+    ln -s ${desktopItem}/share/applications/* $out/share/applications
+    # install Superposition.desktop and icon
+    cp ${superposition}/lib/unigine/superposition/Superposition.png $out/share/icons/
+    for RES in 16 24 32 48 64 128 256; do
+      mkdir -p $out/share/icons/hicolor/"$RES"x"$RES"/apps
+      cp ${superposition}/lib/unigine/superposition/icons/superposition_icon_$RES.png $out/share/icons/hicolor/"$RES"x"$RES"/apps/Superposition.png
+    done
+  '';
+
+  meta = {
+    description = "The Unigine Superposition GPU benchmarking tool";
+    homepage = "https://benchmark.unigine.com/superposition";
+    license = lib.licenses.unfree;
+    maintainers = [ lib.maintainers.BarinovMaxim ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/graphics/xfig/default.nix b/nixpkgs/pkgs/applications/graphics/xfig/default.nix
index dc98d761bf08..23d56c8ec727 100644
--- a/nixpkgs/pkgs/applications/graphics/xfig/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/xfig/default.nix
@@ -3,6 +3,7 @@
 , fetchurl
 , xlibsWrapper
 , makeWrapper
+, imagemagick
 , libXpm
 , libXmu
 , libXi
@@ -21,7 +22,7 @@ stdenv.mkDerivation rec {
     sha256 = "0fndgbm1mkqb1sn2v2kj3nx9mxj70jbp31y2bjvzcmmkry0q3k5j";
   };
 
-  nativeBuildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ imagemagick makeWrapper ];
 
   buildInputs = [
     xlibsWrapper
@@ -34,7 +35,8 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
-    sed -i 's:"fig2dev":"${fig2dev}/bin/fig2dev":' src/main.c
+    substituteInPlace src/main.c --replace '"fig2dev"' '"${fig2dev}/bin/fig2dev"'
+    substituteInPlace xfig.desktop --replace "/usr/bin/" "$out/bin/"
   '';
 
   postInstall = ''
@@ -43,6 +45,15 @@ stdenv.mkDerivation rec {
 
     wrapProgram $out/bin/xfig \
       --set XAPPLRESDIR $out/share/X11/app-defaults
+
+    mkdir -p $out/share/icons/hicolor/{16x16,22x22,48x48,64x64}/apps
+
+    for dimension in 16x16 22x22 48x48; do
+      convert doc/html/images/xfig-logo.png -geometry $dimension\
+        $out/share/icons/hicolor/16x16/apps/xfig.png
+    done
+    install doc/html/images/xfig-logo.png \
+      $out/share/icons/hicolor/64x64/apps/xfig.png
   '';
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/applications/graphics/xournal/default.nix b/nixpkgs/pkgs/applications/graphics/xournal/default.nix
index f83127238756..47a47ae4f25d 100644
--- a/nixpkgs/pkgs/applications/graphics/xournal/default.nix
+++ b/nixpkgs/pkgs/applications/graphics/xournal/default.nix
@@ -10,9 +10,9 @@ in
 
 stdenv.mkDerivation rec {
   version = "0.4.8.2016";
-  name = "xournal-" + version;
+  pname = "xournal";
   src = fetchurl {
-    url = "mirror://sourceforge/xournal/${name}.tar.gz";
+    url = "mirror://sourceforge/xournal/xournal-${version}.tar.gz";
     sha256 = "09i88v3wacmx7f96dmq0l3afpyv95lh6jrx16xzm0jd1szdrhn5j";
   };
 
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     + lib.optionalString (!isGdkQuartzBackend) " -lX11";
 
   desktopItem = makeDesktopItem {
-    name = name;
+    name = "xournal-${version}";
     exec = "xournal";
     icon = "xournal";
     desktopName = "Xournal";
diff --git a/nixpkgs/pkgs/applications/kde/kitinerary.nix b/nixpkgs/pkgs/applications/kde/kitinerary.nix
index f69e705bb2f9..83763ba965af 100644
--- a/nixpkgs/pkgs/applications/kde/kitinerary.nix
+++ b/nixpkgs/pkgs/applications/kde/kitinerary.nix
@@ -1,4 +1,4 @@
-{ mkDerivation, lib, extra-cmake-modules
+{ mkDerivation, fetchpatch, lib, extra-cmake-modules
 , qtdeclarative, ki18n, kmime, kpkpass
 , poppler, kcontacts, kcalendarcore
 , shared-mime-info
@@ -10,6 +10,15 @@ mkDerivation {
     license = with lib.licenses; [ lgpl21 ];
     maintainers = [ lib.maintainers.bkchr ];
   };
+
+  patches = [
+    # Fix build with poppler 22.03
+    (fetchpatch {
+      url = "https://github.com/KDE/kitinerary/commit/e21d1ffc5fa81a636245f49c97fe7cda63abbb1d.patch";
+      sha256 = "1/zgq9QIOCPplqplDqgpoqzuYFf/m1Ixxawe50t2F04=";
+    })
+  ];
+
   nativeBuildInputs = [
     extra-cmake-modules
     shared-mime-info # for update-mime-database
diff --git a/nixpkgs/pkgs/applications/kde/konsole.nix b/nixpkgs/pkgs/applications/kde/konsole.nix
index 098001ef4c23..23cbdf28477d 100644
--- a/nixpkgs/pkgs/applications/kde/konsole.nix
+++ b/nixpkgs/pkgs/applications/kde/konsole.nix
@@ -1,5 +1,5 @@
 {
-  mkDerivation, lib,
+  mkDerivation, lib, nixosTests,
   extra-cmake-modules, kdoctools,
   kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons, kguiaddons,
   ki18n, kiconthemes, kinit, kio, knotifications,
@@ -22,5 +22,7 @@ mkDerivation {
     kservice ktextwidgets kwidgetsaddons kwindowsystem kxmlgui qtscript knewstuff
   ];
 
+  passthru.tests.test = nixosTests.terminal-emulators.konsole;
+
   propagatedUserEnvPkgs = [ (lib.getBin kinit) ];
 }
diff --git a/nixpkgs/pkgs/applications/misc/1password-gui/default.nix b/nixpkgs/pkgs/applications/misc/1password-gui/default.nix
index 6de089ba58c5..311ef3037bb8 100644
--- a/nixpkgs/pkgs/applications/misc/1password-gui/default.nix
+++ b/nixpkgs/pkgs/applications/misc/1password-gui/default.nix
@@ -30,14 +30,23 @@
 , systemd
 , udev
 , xdg-utils
+
+  # The 1Password polkit file requires a list of users for whom polkit
+  # integrations should be enabled. This should be a list of strings that
+  # correspond to usernames.
+, polkitPolicyOwners ? []
 }:
-stdenv.mkDerivation rec {
+let
+  # Convert the polkitPolicyOwners variable to a polkit-compatible string for the polkit file.
+  policyOwners = lib.concatStringsSep " " (map (user: "unix-user:${user}") polkitPolicyOwners);
+
+in stdenv.mkDerivation rec {
   pname = "1password";
-  version = "8.5.0";
+  version = "8.6.0";
 
   src = fetchurl {
     url = "https://downloads.1password.com/linux/tar/stable/x86_64/1password-${version}.x64.tar.gz";
-    sha256 = "tnZr+qjUcJ9Fhk6RP8iwu+/JsvYSE03NHhBfhedyCTQ=";
+    sha256 = "AgmLbf2YHZr8McSIL5dxp5HxOC7gLrZWIopuA7aL0JI=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -86,8 +95,12 @@ stdenv.mkDerivation rec {
       substituteInPlace $out/share/applications/${pname}.desktop \
         --replace 'Exec=/opt/1Password/${pname}' 'Exec=${pname}'
 
+      '' + (lib.optionalString (polkitPolicyOwners != [ ])
+      ''
       # Polkit file
-      install -Dm 0644 -t $out/share/polkit-1/actions com.1password.1Password.policy
+        mkdir -p $out/share/polkit-1/actions
+        substitute com.1password.1Password.policy.tpl $out/share/polkit-1/actions/com.1password.1Password.policy --replace "\''${POLICY_OWNERS}" "${policyOwners}"
+        '') + ''
 
       # Icons
       cp -a resources/icons $out/share
diff --git a/nixpkgs/pkgs/applications/misc/1password/default.nix b/nixpkgs/pkgs/applications/misc/1password/default.nix
index 512f5546aecd..25685b2e125e 100644
--- a/nixpkgs/pkgs/applications/misc/1password/default.nix
+++ b/nixpkgs/pkgs/applications/misc/1password/default.nix
@@ -1,28 +1,38 @@
-{ lib, stdenv, fetchzip, autoPatchelfHook, fetchurl, xar, cpio }:
+{ lib, stdenv, fetchurl, fetchzip, autoPatchelfHook, installShellFiles, cpio, xar }:
+
+let
+  inherit (stdenv.hostPlatform) system;
+  fetch = srcPlatform: sha256: extension:
+    let
+      args = {
+        url = "https://cache.agilebits.com/dist/1P/op2/pkg/v${version}/op_${srcPlatform}_v${version}.${extension}";
+        inherit sha256;
+      } // lib.optionalAttrs (extension == "zip") { stripRoot = false; };
+    in
+    if extension == "zip" then fetchzip args else fetchurl args;
 
-stdenv.mkDerivation rec {
   pname = "1password-cli";
-  version = "1.12.2";
+  version = "2.0.0";
+  sources = rec {
+    aarch64-linux = fetch "linux_arm64" "sha256-NhCs68on8LzoeOmM5eP8LwmFaVWz6aghqtHzfUlACiA=" "zip";
+    i686-linux = fetch "linux_386" "sha256-vCxgEBq4YVfljq2zUpvBdZUbIiam4z64P1m9OMWq1f4=" "zip";
+    x86_64-linux = fetch "linux_amd64" "sha256-CDwrJ5ksXf9kwHobw4jvRUi1hLQzq4/yRlk+kHPN7UE=" "zip";
+    aarch64-darwin = fetch "apple_universal" "sha256-DC9hdzRjQ9iNjbe6PfRpMXzDeInq4rYSAa2nDHQMTRo=" "pkg";
+    x86_64-darwin = aarch64-darwin;
+  };
+  platforms = builtins.attrNames sources;
+  mainProgram = "op";
+in
+
+stdenv.mkDerivation {
+  inherit pname version;
   src =
-    if stdenv.isLinux then
-      fetchzip
-        {
-          url = {
-            "i686-linux" = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_386_v${version}.zip";
-            "x86_64-linux" = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_amd64_v${version}.zip";
-            "aarch64-linux" = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_arm64_v${version}.zip";
-          }.${stdenv.hostPlatform.system};
-          sha256 = {
-            "i686-linux" = "tCm/vDBASPN9FBSVRJ6BrFc7hdtZWPEAgvokJhjazPg=";
-            "x86_64-linux" = "3VkVMuTAfeEowkguJi2fd1kG7GwO1VN5GBPgNaH3Zv4=";
-            "aarch64-linux" = "12h1s9c97w0gb6bia3hy7773mwpfnyrn40sbjm1zc37y4zyi5dyp";
-          }.${stdenv.hostPlatform.system};
-          stripRoot = false;
-        } else
-      fetchurl {
-        url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_apple_universal_v${version}.pkg";
-        sha256 = "xG/6YZdkJxr5Py90rkIyG4mK40yFTmNSfih9jO2uF+4=";
-      };
+    if (builtins.elem system platforms) then
+      sources.${system}
+    else
+      throw "Source for ${pname} is not available for ${system}";
+
+  nativeBuildInputs = [ installShellFiles ] ++ lib.optional stdenv.isLinux autoPatchelfHook;
 
   buildInputs = lib.optionals stdenv.isDarwin [ xar cpio ];
 
@@ -32,25 +42,27 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
-    install -D op $out/bin/op
+    install -D ${mainProgram} $out/bin/${mainProgram}
+    runHook postInstall
   '';
 
-  dontStrip = stdenv.isDarwin;
+  postInstall = "installShellCompletion --cmd ${mainProgram}" + lib.concatMapStrings
+    (s: " --${s} <($out/bin/${mainProgram} completion ${s})") [ "bash" "fish" "zsh" ];
 
-  nativeBuildInputs = lib.optionals stdenv.isLinux [ autoPatchelfHook ];
+  dontStrip = stdenv.isDarwin;
 
   doInstallCheck = true;
 
   installCheckPhase = ''
-    $out/bin/op --version
+    $out/bin/${mainProgram} --version
   '';
 
   meta = with lib; {
     description = "1Password command-line tool";
-    homepage = "https://support.1password.com/command-line/";
-    downloadPage = "https://app-updates.agilebits.com/product_history/CLI";
+    homepage = "https://developer.1password.com/docs/cli/";
+    downloadPage = "https://app-updates.agilebits.com/product_history/CLI2";
     maintainers = with maintainers; [ joelburget marsam ];
     license = licenses.unfree;
-    platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin" ];
+    inherit mainProgram platforms;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/ArchiSteamFarm/deps-aarch64-linux.nix b/nixpkgs/pkgs/applications/misc/ArchiSteamFarm/deps-aarch64-linux.nix
index 2fb60e8fef12..db2f33332806 100644
--- a/nixpkgs/pkgs/applications/misc/ArchiSteamFarm/deps-aarch64-linux.nix
+++ b/nixpkgs/pkgs/applications/misc/ArchiSteamFarm/deps-aarch64-linux.nix
@@ -55,12 +55,12 @@
   (fetchNuGet { pname = "Humanizer.Core.zh-Hant"; version = "2.13.14"; sha256 = "07xsdx8j1rhp712kwy8jx9ang6f9zljqrvaggf0ssj5zqbliz93p"; })
   (fetchNuGet { pname = "JetBrains.Annotations"; version = "2021.3.0"; sha256 = "01ssylllbwpana2w3iybi533zlvcsbhzjc8kr0g4kg307kjbfn8v"; })
   (fetchNuGet { pname = "Markdig.Signed"; version = "0.26.0"; sha256 = "1giwdvmy6n4vfb0g7sxmdf9bklb4r2vdfhm1xfxvqys8rfm15d4z"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "6.0.0"; sha256 = "0np2x73x2g3145qnd4ibkxlz535g19lansmaqkjplf0xc6qi5zsg"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.0"; sha256 = "1315hycfqlalh6k4zvvz7pz3dylpp0sr45j1v9avcb143hjqnav6"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.0"; sha256 = "0r6jyxl3h1asj30la78skd5gsxgwjpvkspmkw1gglxfg85hnqc8w"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "6.0.0"; sha256 = "1x254v25wilx4nh4dnjij4p9g0wsrqn9jyf4z48fa1bw1q3j3rba"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.0"; sha256 = "1hnqhvgjp342nx9s47w5sknmlpkfxbcfi50pa4vary2r7sv8ka2w"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.0"; sha256 = "1j8cn97swc67ly7ca7m05akczrswbg0gjsk7473vad6770ph79vm"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "6.0.3"; sha256 = "0s874cs94p1rxdy6n22ch3vr1ad1w0nkh7cnjxvxcjim2b4lfvln"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.3"; sha256 = "1jpw4s862j4aa7b7wchi03gxcy02j6hhpbsfbcayiyx6ry788i15"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.3"; sha256 = "0rrrfgkr7rzhlnsnajvzb1ijkybp99d992bqxy9pbawmq7d60bdk"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "6.0.3"; sha256 = "0s0xpqd0nc9kldfay5j1krbc1nyfasxw4xxjx1mwpnbr7n99wbms"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.3"; sha256 = "09whyl3i9mzy10n5zxlq66lj3l4p29hm75igmdip2fb376zxyam3"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.3"; sha256 = "11kv50kll3iq88kn40f5v5qlq8mydv6y6xz2cbzjw4aadd44njwq"; })
   (fetchNuGet { pname = "Microsoft.AspNetCore.JsonPatch"; version = "6.0.0-rc.1.21452.15"; sha256 = "0c3vnaag8gxlxij77n18m3hawpjkjjamsnq5kfjz5cvc7sfg3fwh"; })
   (fetchNuGet { pname = "Microsoft.AspNetCore.Mvc.NewtonsoftJson"; version = "6.0.0-rc.1.21452.15"; sha256 = "1xyx358w4fqzxr9cy358agnm86rjijbnvikiqlngz2msgmldxi2z"; })
   (fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.0.0"; sha256 = "18gdbsqf6i79ld4ikqr4jhx9ndsggm865b5xj1xmnmgg12ydp19a"; })
@@ -74,24 +74,25 @@
   (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "5.0.0"; sha256 = "1yza38675dbv1qqnnhqm23alv2bbaqxp0pb7zinjmw8j2mr5r6wc"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "5.0.0"; sha256 = "1rdmgpg770x8qwaaa6ryc27zh93p697fcyvn5vkxp0wimlhqkbay"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "5.0.0"; sha256 = "0swqcknyh87ns82w539z1mvy804pfwhgzs97cr3nwqk6g5s42gd6"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "6.0.0"; sha256 = "0m4q75iz6nj76sakab3265rzz969gk1rm2qwbvn0v60h3hflkqgb"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.0"; sha256 = "07fgwhgnwcf58dkrfpmfyzqvd33x6ir25qn3v96j8bl4x9dn4sij"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "6.0.0"; sha256 = "0z2whbviiw6kjqa7c2gj3j7fqq31m28iww66n7hvy3cnqcn3471k"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.0"; sha256 = "188cbx99ahvksap9w20943p62fmzxa6fl133w4r7c6bjpsrm29a4"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.0"; sha256 = "1016ld3kg4dav2yxxh0i32cy0ixv7s0wl9czydbhkbs2d8669kfx"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "6.0.0"; sha256 = "159hq4fn2n5n2mkxw6wi4nhj0ifclpn7gxspqljlgczlhkm1vxqb"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.0"; sha256 = "146rbmk0svvqaf0c4msg67h17x4k4gd5kzsbb3iqvs14xfkli2xw"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.0"; sha256 = "0qaylw18flrfl3vxnbp8wsiz29znidmn6dhv7k4v4jj2za16wmji"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "6.0.0"; sha256 = "1ywkycp9llrfk4jcd7agaivlhn9pig70cj65xkfhjw1wx51756jc"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.0"; sha256 = "1njh3iky5wyxdrisz8xfpy7kzbsrvzfhpdl01xbavvz189x4ajqp"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.0"; sha256 = "13x1nkigy3nhbr8gxalij7krmzxpciyq4i8k7jdy9278zs1lm5a6"; })
+  (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.0.0"; sha256 = "0bknyf5kig5icwjxls7pcn51x2b2qf91dz9qv67fl70v6cczaz2r"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "6.0.3"; sha256 = "14lypnhdby9939l75y6i077x4ccb22yakzjrbapl8an438h09yf8"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.3"; sha256 = "1swbrmpsayy99ycwaq68dx9ydd5h3qv9brwig6ryff1xfn1llndq"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.3"; sha256 = "1py3nrfvllqlnb9mhs0qwgy7c14n33b2hfb0qc49rx22sqv8ylbp"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "6.0.3"; sha256 = "0rshhsygm3id8wig8mqs846l8dck65drszpzjh1d00d1fk2bxzs4"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.3"; sha256 = "0k9gc94cvn36p0v3pj296asg2sq9a8ah6lfw0xvvmd4hq2k72s79"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.3"; sha256 = "1y428glba68s76icjzfl1v3p61pcz7rd78wybhabs8zq8w9cp2pj"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "6.0.3"; sha256 = "0ws9vxias9iynhcajkl9lz4c8f6hc4b5spypxd0ha33lcjaj408a"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.3"; sha256 = "0gjj6p2nnxzhyrmmmwiyrll782famhll9lbgj8cji1i93amxq1pb"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.3"; sha256 = "0f04srx6q0jk81a60n956hz32fdngzp0xmdb2x7gyl77gsq8yijj"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "6.0.3"; sha256 = "003s3x2ffk4g76jy4b60n6vizly03amjbli4lngsy0wzc86c0ij1"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.3"; sha256 = "0180ipzzz9pc6f6l17rg5bxz1ghzbapmiqq66kdl33bmbny6vmm9"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.3"; sha256 = "1rjkzs2013razi2xs943q62ys1jh8blhjcnj75qkvirf859d11qw"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.0.0"; sha256 = "1fk2fk2639i7nzy58m9dvpdnzql4vb8yl8vr19r2fp8lmj9w2jr0"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1"; sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
-  (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.0.0"; sha256 = "0bknyf5kig5icwjxls7pcn51x2b2qf91dz9qv67fl70v6cczaz2r"; })
   (fetchNuGet { pname = "Microsoft.OpenApi"; version = "1.2.3"; sha256 = "07b19k89whj69j87afkz86gp9b3iybw8jqwvlgcn43m7fb2y99rr"; })
   (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.0.0"; sha256 = "1bh5scbvl6ndldqv20sl34h4y257irm9ziv2wyfc3hka6912fhn7"; })
   (fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.0.0"; sha256 = "06mn31cgpp7d8lwdyjanh89prc66j37dchn74vrd9s588rq0y70r"; })
diff --git a/nixpkgs/pkgs/applications/misc/ArchiSteamFarm/deps-x86_64-linux.nix b/nixpkgs/pkgs/applications/misc/ArchiSteamFarm/deps-x86_64-linux.nix
index 54bcfc8f5b30..db2f33332806 100644
--- a/nixpkgs/pkgs/applications/misc/ArchiSteamFarm/deps-x86_64-linux.nix
+++ b/nixpkgs/pkgs/applications/misc/ArchiSteamFarm/deps-x86_64-linux.nix
@@ -55,12 +55,12 @@
   (fetchNuGet { pname = "Humanizer.Core.zh-Hant"; version = "2.13.14"; sha256 = "07xsdx8j1rhp712kwy8jx9ang6f9zljqrvaggf0ssj5zqbliz93p"; })
   (fetchNuGet { pname = "JetBrains.Annotations"; version = "2021.3.0"; sha256 = "01ssylllbwpana2w3iybi533zlvcsbhzjc8kr0g4kg307kjbfn8v"; })
   (fetchNuGet { pname = "Markdig.Signed"; version = "0.26.0"; sha256 = "1giwdvmy6n4vfb0g7sxmdf9bklb4r2vdfhm1xfxvqys8rfm15d4z"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "6.0.0"; sha256 = "0np2x73x2g3145qnd4ibkxlz535g19lansmaqkjplf0xc6qi5zsg"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.0"; sha256 = "1315hycfqlalh6k4zvvz7pz3dylpp0sr45j1v9avcb143hjqnav6"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.0"; sha256 = "0r6jyxl3h1asj30la78skd5gsxgwjpvkspmkw1gglxfg85hnqc8w"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "6.0.0"; sha256 = "1x254v25wilx4nh4dnjij4p9g0wsrqn9jyf4z48fa1bw1q3j3rba"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.0"; sha256 = "1hnqhvgjp342nx9s47w5sknmlpkfxbcfi50pa4vary2r7sv8ka2w"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.0"; sha256 = "1j8cn97swc67ly7ca7m05akczrswbg0gjsk7473vad6770ph79vm"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "6.0.3"; sha256 = "0s874cs94p1rxdy6n22ch3vr1ad1w0nkh7cnjxvxcjim2b4lfvln"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.3"; sha256 = "1jpw4s862j4aa7b7wchi03gxcy02j6hhpbsfbcayiyx6ry788i15"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.3"; sha256 = "0rrrfgkr7rzhlnsnajvzb1ijkybp99d992bqxy9pbawmq7d60bdk"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "6.0.3"; sha256 = "0s0xpqd0nc9kldfay5j1krbc1nyfasxw4xxjx1mwpnbr7n99wbms"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.3"; sha256 = "09whyl3i9mzy10n5zxlq66lj3l4p29hm75igmdip2fb376zxyam3"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.3"; sha256 = "11kv50kll3iq88kn40f5v5qlq8mydv6y6xz2cbzjw4aadd44njwq"; })
   (fetchNuGet { pname = "Microsoft.AspNetCore.JsonPatch"; version = "6.0.0-rc.1.21452.15"; sha256 = "0c3vnaag8gxlxij77n18m3hawpjkjjamsnq5kfjz5cvc7sfg3fwh"; })
   (fetchNuGet { pname = "Microsoft.AspNetCore.Mvc.NewtonsoftJson"; version = "6.0.0-rc.1.21452.15"; sha256 = "1xyx358w4fqzxr9cy358agnm86rjijbnvikiqlngz2msgmldxi2z"; })
   (fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.0.0"; sha256 = "18gdbsqf6i79ld4ikqr4jhx9ndsggm865b5xj1xmnmgg12ydp19a"; })
@@ -74,24 +74,25 @@
   (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "5.0.0"; sha256 = "1yza38675dbv1qqnnhqm23alv2bbaqxp0pb7zinjmw8j2mr5r6wc"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "5.0.0"; sha256 = "1rdmgpg770x8qwaaa6ryc27zh93p697fcyvn5vkxp0wimlhqkbay"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "5.0.0"; sha256 = "0swqcknyh87ns82w539z1mvy804pfwhgzs97cr3nwqk6g5s42gd6"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "6.0.0"; sha256 = "0m4q75iz6nj76sakab3265rzz969gk1rm2qwbvn0v60h3hflkqgb"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.0"; sha256 = "0aska6s99rfg13ngsaxr151a6sk8r68lv3mj8yv0bhvwcpln4342"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "6.0.0"; sha256 = "0z2whbviiw6kjqa7c2gj3j7fqq31m28iww66n7hvy3cnqcn3471k"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.0"; sha256 = "188cbx99ahvksap9w20943p62fmzxa6fl133w4r7c6bjpsrm29a4"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.0"; sha256 = "1016ld3kg4dav2yxxh0i32cy0ixv7s0wl9czydbhkbs2d8669kfx"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "6.0.0"; sha256 = "159hq4fn2n5n2mkxw6wi4nhj0ifclpn7gxspqljlgczlhkm1vxqb"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.0"; sha256 = "146rbmk0svvqaf0c4msg67h17x4k4gd5kzsbb3iqvs14xfkli2xw"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.0"; sha256 = "0qaylw18flrfl3vxnbp8wsiz29znidmn6dhv7k4v4jj2za16wmji"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "6.0.0"; sha256 = "1ywkycp9llrfk4jcd7agaivlhn9pig70cj65xkfhjw1wx51756jc"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.0"; sha256 = "1njh3iky5wyxdrisz8xfpy7kzbsrvzfhpdl01xbavvz189x4ajqp"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.0"; sha256 = "13x1nkigy3nhbr8gxalij7krmzxpciyq4i8k7jdy9278zs1lm5a6"; })
+  (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.0.0"; sha256 = "0bknyf5kig5icwjxls7pcn51x2b2qf91dz9qv67fl70v6cczaz2r"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "6.0.3"; sha256 = "14lypnhdby9939l75y6i077x4ccb22yakzjrbapl8an438h09yf8"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.3"; sha256 = "1swbrmpsayy99ycwaq68dx9ydd5h3qv9brwig6ryff1xfn1llndq"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.3"; sha256 = "1py3nrfvllqlnb9mhs0qwgy7c14n33b2hfb0qc49rx22sqv8ylbp"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "6.0.3"; sha256 = "0rshhsygm3id8wig8mqs846l8dck65drszpzjh1d00d1fk2bxzs4"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.3"; sha256 = "0k9gc94cvn36p0v3pj296asg2sq9a8ah6lfw0xvvmd4hq2k72s79"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.3"; sha256 = "1y428glba68s76icjzfl1v3p61pcz7rd78wybhabs8zq8w9cp2pj"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "6.0.3"; sha256 = "0ws9vxias9iynhcajkl9lz4c8f6hc4b5spypxd0ha33lcjaj408a"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.3"; sha256 = "0gjj6p2nnxzhyrmmmwiyrll782famhll9lbgj8cji1i93amxq1pb"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.3"; sha256 = "0f04srx6q0jk81a60n956hz32fdngzp0xmdb2x7gyl77gsq8yijj"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "6.0.3"; sha256 = "003s3x2ffk4g76jy4b60n6vizly03amjbli4lngsy0wzc86c0ij1"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.3"; sha256 = "0180ipzzz9pc6f6l17rg5bxz1ghzbapmiqq66kdl33bmbny6vmm9"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.3"; sha256 = "1rjkzs2013razi2xs943q62ys1jh8blhjcnj75qkvirf859d11qw"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.0.0"; sha256 = "1fk2fk2639i7nzy58m9dvpdnzql4vb8yl8vr19r2fp8lmj9w2jr0"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1"; sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
-  (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.0.0"; sha256 = "0bknyf5kig5icwjxls7pcn51x2b2qf91dz9qv67fl70v6cczaz2r"; })
   (fetchNuGet { pname = "Microsoft.OpenApi"; version = "1.2.3"; sha256 = "07b19k89whj69j87afkz86gp9b3iybw8jqwvlgcn43m7fb2y99rr"; })
   (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.0.0"; sha256 = "1bh5scbvl6ndldqv20sl34h4y257irm9ziv2wyfc3hka6912fhn7"; })
   (fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.0.0"; sha256 = "06mn31cgpp7d8lwdyjanh89prc66j37dchn74vrd9s588rq0y70r"; })
diff --git a/nixpkgs/pkgs/applications/misc/ablog/default.nix b/nixpkgs/pkgs/applications/misc/ablog/default.nix
new file mode 100644
index 000000000000..b6a3a1dfdb56
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/ablog/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, python3
+}:
+
+with python3.pkgs;
+
+buildPythonApplication rec {
+  pname = "ablog";
+  version = "0.10.23";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-fqqB17dNzcDZmFw3nj85T5zvMzY6SN/JxbB3IASOas8=";
+  };
+
+  propagatedBuildInputs = [
+    feedgen
+    sphinx
+    invoke
+    watchdog
+    python-dateutil
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  nativeBuildInputs = [ setuptools-scm ];
+
+  meta = with lib; {
+    description = "ABlog for blogging with Sphinx";
+    homepage = "https://ablog.readthedocs.io/en/latest/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ rgrinberg ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/misc/abook/default.nix b/nixpkgs/pkgs/applications/misc/abook/default.nix
index de463cfd6665..e822f869619b 100644
--- a/nixpkgs/pkgs/applications/misc/abook/default.nix
+++ b/nixpkgs/pkgs/applications/misc/abook/default.nix
@@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
     description = "Text-based addressbook program designed to use with mutt mail client";
     license = lib.licenses.gpl2;
     maintainers = [ lib.maintainers.edwtjo ];
-    platforms = with lib.platforms; linux;
+    platforms = with lib.platforms; unix;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/almanah/default.nix b/nixpkgs/pkgs/applications/misc/almanah/default.nix
index a4ef9b34318c..5e4f44823548 100644
--- a/nixpkgs/pkgs/applications/misc/almanah/default.nix
+++ b/nixpkgs/pkgs/applications/misc/almanah/default.nix
@@ -1,5 +1,7 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
+, fetchpatch
 , atk
 , cairo
 , desktop-file-utils
@@ -32,6 +34,16 @@ stdenv.mkDerivation rec {
     sha256 = "lMpDQOxlGljP66APR49aPbTZnfrGakbQ2ZcFvmiPMFo=";
   };
 
+  patches = [
+    # Fix build with meson 0.61
+    # data/meson.build:2:5: ERROR: Function does not take positional arguments.
+    # Patch taken from https://gitlab.gnome.org/GNOME/almanah/-/merge_requests/13
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/almanah/-/commit/8c42a67695621d1e30cec933a04e633e6030bbaf.patch";
+      sha256 = "qyqFgYSu4emFDG/Mjwz1bZb3v3/4gwQSKmGCoPPNYCQ=";
+    })
+  ];
+
   nativeBuildInputs = [
     desktop-file-utils
     gettext
diff --git a/nixpkgs/pkgs/applications/misc/anytype/default.nix b/nixpkgs/pkgs/applications/misc/anytype/default.nix
index e80bb82ccec1..5f09fba4cb7a 100644
--- a/nixpkgs/pkgs/applications/misc/anytype/default.nix
+++ b/nixpkgs/pkgs/applications/misc/anytype/default.nix
@@ -2,13 +2,13 @@
 
 let
   pname = "anytype";
-  version = "0.23.5";
+  version = "0.24.0";
   name = "Anytype-${version}";
   nameExecutable = pname;
   src = fetchurl {
     url = "https://at9412003.fra1.digitaloceanspaces.com/Anytype-${version}.AppImage";
     name = "Anytype-${version}.AppImage";
-    sha256 = "sha256-kVM/F0LsIgMtur8jHZzUWkFIcfHe0i8y9Zxe3z5SkVM=";
+    sha256 = "sha256-QyexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
   };
   appimageContents = appimageTools.extractType2 { inherit name src; };
 in
diff --git a/nixpkgs/pkgs/applications/misc/appeditor/default.nix b/nixpkgs/pkgs/applications/misc/appeditor/default.nix
index cf1303422d27..9e38a208e179 100644
--- a/nixpkgs/pkgs/applications/misc/appeditor/default.nix
+++ b/nixpkgs/pkgs/applications/misc/appeditor/default.nix
@@ -43,6 +43,11 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
+    # Fix build with vala 0.56
+    # https://github.com/donadigo/appeditor/pull/122
+    substituteInPlace src/Application.vala \
+      --replace "private static string? create_exec_filename;" "public static string? create_exec_filename;"
+
     chmod +x meson/post_install.py
     patchShebangs meson/post_install.py
   '';
diff --git a/nixpkgs/pkgs/applications/misc/avrdudess/default.nix b/nixpkgs/pkgs/applications/misc/avrdudess/default.nix
index 0a42e6f5e2cd..56ee5fa52801 100644
--- a/nixpkgs/pkgs/applications/misc/avrdudess/default.nix
+++ b/nixpkgs/pkgs/applications/misc/avrdudess/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation {
   pname = "avrdudess";
-  version = "2.2.20140102";
+  version = "2.13";
 
   src = fetchurl {
-    url = "http://blog.zakkemble.co.uk/download/avrdudess_20140102.zip";
-    sha256 = "18llpvjsfhypzijrvfbzmcg3g141f307mzsrg11wcdxh9syxqak6";
+    url = "https://github.com/ZakKemble/AVRDUDESS/releases/download/v2.13/AVRDUDESS-2.13-portable.zip";
+    sha256 = "0fpvc19fb14ppqfb2yg821szmhyanxcp5chfldf8yh51f64zihv9";
   };
 
   nativeBuildInputs = [ unzip ];
@@ -36,7 +36,8 @@ stdenv.mkDerivation {
 
   meta = with lib; {
     description = "GUI for AVRDUDE (AVR microcontroller programmer)";
-    homepage = "https://github.com/zkemble/AVRDUDESS";
+    homepage = "https://blog.zakkemble.net/avrdudess-a-gui-for-avrdude/";
+    changelog = "https://github.com/ZakKemble/AVRDUDESS/blob/v${version}/Changelog.txt";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
diff --git a/nixpkgs/pkgs/applications/misc/blender/default.nix b/nixpkgs/pkgs/applications/misc/blender/default.nix
index 31c1d4a19937..a0467b817142 100644
--- a/nixpkgs/pkgs/applications/misc/blender/default.nix
+++ b/nixpkgs/pkgs/applications/misc/blender/default.nix
@@ -1,11 +1,11 @@
 { config, stdenv, lib, fetchurl, fetchzip, boost, cmake, ffmpeg, gettext, glew
 , ilmbase, libXi, libX11, libXext, libXrender
 , libjpeg, libpng, libsamplerate, libsndfile
-, libtiff, libGLU, libGL, openal, opencolorio, openexr, openimagedenoise, openimageio2, openjpeg, python39Packages
+, libtiff, libGLU, libGL, openal, opencolorio, openexr, openimagedenoise, openimageio2, openjpeg, python310Packages
 , openvdb, libXxf86vm, tbb, alembic
-, zlib, fftw, opensubdiv, freetype, jemalloc, ocl-icd, addOpenGLRunpath
+, zlib, zstd, fftw, opensubdiv, freetype, jemalloc, ocl-icd, addOpenGLRunpath
 , jackaudioSupport ? false, libjack2
-, cudaSupport ? config.cudaSupport or false, cudatoolkit
+, cudaSupport ? config.cudaSupport or false, cudatoolkit_11
 , colladaSupport ? true, opencollada
 , spaceNavSupport ? stdenv.isLinux, libspnav
 , makeWrapper
@@ -17,30 +17,31 @@
 
 with lib;
 let
-  python = python39Packages.python;
+  python = python310Packages.python;
   optix = fetchzip {
-    url = "https://developer.download.nvidia.com/redist/optix/v7.0/OptiX-7.0.0-include.zip";
-    sha256 = "1b3ccd3197anya2bj3psxdrvrpfgiwva5zfv2xmyrl73nb2dvfr7";
+    # url taken from the archlinux blender PKGBUILD
+    url = "https://developer.download.nvidia.com/redist/optix/v7.3/OptiX-7.3.0-Include.zip";
+    sha256 = "0max1j4822mchj0xpz9lqzh91zkmvsn4py0r174cvqfz8z8ykjk8";
   };
 
 in
 stdenv.mkDerivation rec {
   pname = "blender";
-  version = "2.93.5";
+  version = "3.1.0";
 
   src = fetchurl {
     url = "https://download.blender.org/source/${pname}-${version}.tar.xz";
-    sha256 = "1fsw8w80h8k5w4zmy659bjlzqyn5i198hi1kbpzfrdn8psxg2bfj";
+    sha256 = "1d0476bzcz86lwdnyjn7hyzkmhfiqh47ls5h09jlbm7v7k9x69hw";
   };
 
   patches = lib.optional stdenv.isDarwin ./darwin.patch;
 
-  nativeBuildInputs = [ cmake makeWrapper python39Packages.wrapPython llvmPackages.llvm.dev ]
+  nativeBuildInputs = [ cmake makeWrapper python310Packages.wrapPython llvmPackages.llvm.dev ]
     ++ optionals cudaSupport [ addOpenGLRunpath ];
   buildInputs =
     [ boost ffmpeg gettext glew ilmbase
       freetype libjpeg libpng libsamplerate libsndfile libtiff
-      opencolorio openexr openimagedenoise openimageio2 openjpeg python zlib fftw jemalloc
+      opencolorio openexr openimagedenoise openimageio2 openjpeg python zlib zstd fftw jemalloc
       alembic
       (opensubdiv.override { inherit cudaSupport; })
       tbb
@@ -62,10 +63,10 @@ stdenv.mkDerivation rec {
       llvmPackages.openmp SDL Cocoa CoreGraphics ForceFeedback OpenAL OpenGL
     ])
     ++ optional jackaudioSupport libjack2
-    ++ optional cudaSupport cudatoolkit
+    ++ optional cudaSupport cudatoolkit_11
     ++ optional colladaSupport opencollada
     ++ optional spaceNavSupport libspnav;
-  pythonPath = with python39Packages; [ numpy requests ];
+  pythonPath = with python310Packages; [ numpy requests ];
 
   postPatch = ''
     # allow usage of dynamically linked embree
@@ -84,7 +85,7 @@ stdenv.mkDerivation rec {
         --replace '${"$"}{LIBDIR}/opencollada' \
                   '${opencollada}' \
         --replace '${"$"}{PYTHON_LIBPATH}/site-packages/numpy' \
-                  '${python39Packages.numpy}/${python.sitePackages}/numpy'
+                  '${python310Packages.numpy}/${python.sitePackages}/numpy'
     '' else ''
       substituteInPlace extern/clew/src/clew.c --replace '"libOpenCL.so"' '"${ocl-icd}/lib/libOpenCL.so"'
     '');
@@ -106,8 +107,8 @@ stdenv.mkDerivation rec {
       "-DPYTHON_VERSION=${python.pythonVersion}"
       "-DWITH_PYTHON_INSTALL=OFF"
       "-DWITH_PYTHON_INSTALL_NUMPY=OFF"
-      "-DPYTHON_NUMPY_PATH=${python39Packages.numpy}/${python.sitePackages}"
-      "-DPYTHON_NUMPY_INCLUDE_DIRS=${python39Packages.numpy}/${python.sitePackages}/numpy/core/include"
+      "-DPYTHON_NUMPY_PATH=${python310Packages.numpy}/${python.sitePackages}"
+      "-DPYTHON_NUMPY_INCLUDE_DIRS=${python310Packages.numpy}/${python.sitePackages}/numpy/core/include"
       "-DWITH_PYTHON_INSTALL_REQUESTS=OFF"
       "-DWITH_OPENVDB=ON"
       "-DWITH_TBB=ON"
diff --git a/nixpkgs/pkgs/applications/misc/bottles/default.nix b/nixpkgs/pkgs/applications/misc/bottles/default.nix
index 865e3a849a1d..b0b1718c87b5 100644
--- a/nixpkgs/pkgs/applications/misc/bottles/default.nix
+++ b/nixpkgs/pkgs/applications/misc/bottles/default.nix
@@ -4,7 +4,7 @@
 , python3Packages, gettext
 , appstream-glib, gdk-pixbuf, glib, gobject-introspection, gspell, gtk3, gtksourceview4, gnome
 , steam, xdg-utils, pciutils, cabextract, wineWowPackages
-, freetype, p7zip, gamemode
+, freetype, p7zip, gamemode, mangohud
 , bottlesExtraLibraries ? pkgs: [ ] # extra packages to add to steam.run multiPkgs
 , bottlesExtraPkgs ? pkgs: [ ] # extra packages to add to steam.run targetPkgs
 }:
@@ -12,7 +12,7 @@
 let
   steam-run = (steam.override {
     # required by wine runner `caffe`
-    extraLibraries = pkgs: with pkgs; [ libunwind libusb1 ]
+    extraLibraries = pkgs: with pkgs; [ libunwind libusb1 gnutls ]
       ++ bottlesExtraLibraries pkgs;
     extraPkgs = pkgs: [ ]
       ++ bottlesExtraPkgs pkgs;
@@ -20,8 +20,10 @@ let
 in
 python3Packages.buildPythonApplication rec {
   pname = "bottles";
-  version = "2022.2.28-trento-1";
-  sha256 = "tE6YuuZZcs3RKxs1S6OoGt0CXz3oHUi/sopFN0iywds=";
+  version = "2022.3.14-trento-3";
+  sha256 = "0wdqj9l69a9pnray2zcfgl2yw0hmrh23njbgwgqccimch014ckdq";
+  # Note: Update via pkgs/applications/misc/bottles/update.py
+  # mostly copypasted from pkgs/applications/networking/instant-messengers/telegram/tdesktop/update.py
 
   src = fetchFromGitHub {
     owner = "bottlesdevs";
@@ -80,6 +82,7 @@ python3Packages.buildPythonApplication rec {
     freetype
     p7zip
     gamemode # programs.gamemode.enable
+    mangohud
   ];
 
   format = "other";
@@ -89,13 +92,19 @@ python3Packages.buildPythonApplication rec {
   preConfigure = ''
     patchShebangs build-aux/meson/postinstall.py
     substituteInPlace src/backend/wine/winecommand.py \
-      --replace '= f"{Paths.runners}' '= f"${steam-run}/bin/steam-run {Paths.runners}'
+      --replace \
+        'self.__get_runner()' \
+        '(lambda r: (f"${steam-run}/bin/steam-run {r}", r)[r == "wine" or r == "wine64"])(self.__get_runner())'
   '';
 
   preFixup = ''
     makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
   '';
 
+  passthru = {
+    updateScript = ./update.py;
+  };
+
   meta = with lib; {
     description = "An easy-to-use wineprefix manager";
     homepage = "https://usebottles.com/";
diff --git a/nixpkgs/pkgs/applications/misc/bottles/update.py b/nixpkgs/pkgs/applications/misc/bottles/update.py
new file mode 100755
index 000000000000..6adacd7d0e07
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/bottles/update.py
@@ -0,0 +1,65 @@
+#! /usr/bin/env nix-shell
+#! nix-shell -i python3 -p python3 nix nix-prefetch-git
+
+import fileinput
+import json
+import os
+import re
+import subprocess
+
+from datetime import datetime
+from urllib.request import urlopen, Request
+
+
+DIR = os.path.dirname(os.path.abspath(__file__))
+HEADERS = {'Accept': 'application/vnd.github.v3+json'}
+
+
+def github_api_request(endpoint):
+    base_url = 'https://api.github.com/'
+    request = Request(base_url + endpoint, headers=HEADERS)
+    with urlopen(request) as http_response:
+        return json.loads(http_response.read().decode('utf-8'))
+
+
+def get_commit_date(repo, sha):
+    url = f'https://api.github.com/repos/{repo}/commits/{sha}'
+    request = Request(url, headers=HEADERS)
+    with urlopen(request) as http_response:
+        commit = json.loads(http_response.read().decode())
+        date = commit['commit']['committer']['date'].rstrip('Z')
+        date = datetime.fromisoformat(date).date().isoformat()
+        return 'unstable-' + date
+
+
+def nix_prefetch_git(url, rev):
+    """Prefetches the requested Git revision (incl. submodules) of the given repository URL."""
+    print(f'nix-prefetch-git {url} {rev}')
+    out = subprocess.check_output(['nix-prefetch-git', '--quiet', '--url', url, '--rev', rev, '--fetch-submodules'])
+    return json.loads(out)['sha256']
+
+
+def nix_prefetch_url(url, unpack=False):
+    """Prefetches the content of the given URL."""
+    print(f'nix-prefetch-url {url}')
+    options = ['--type', 'sha256']
+    if unpack:
+        options += ['--unpack']
+    out = subprocess.check_output(['nix-prefetch-url'] + options + [url])
+    return out.decode('utf-8').rstrip()
+
+
+def update_file(relpath, version, sha256):
+    file_path = os.path.join(DIR, relpath)
+    with fileinput.FileInput(file_path, inplace=True) as f:
+        for line in f:
+            result = line
+            result = re.sub(r'^  version = ".+";', f'  version = "{version}";', result)
+            result = re.sub(r'^  sha256 = ".+";', f'  sha256 = "{sha256}";', result)
+            print(result, end='')
+
+
+if __name__ == "__main__":
+    bottles_version = github_api_request('repos/bottlesdevs/Bottles/releases/latest')['tag_name']
+    bottles_hash = nix_prefetch_git('https://github.com/bottlesdevs/Bottles.git', bottles_version)
+    update_file('default.nix', bottles_version, bottles_hash)
diff --git a/nixpkgs/pkgs/applications/misc/dasel/default.nix b/nixpkgs/pkgs/applications/misc/dasel/default.nix
index eb17bf5c1943..d8fd18f9de4e 100644
--- a/nixpkgs/pkgs/applications/misc/dasel/default.nix
+++ b/nixpkgs/pkgs/applications/misc/dasel/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "dasel";
-  version = "1.23.0";
+  version = "1.24.0";
 
   src = fetchFromGitHub {
     owner = "TomWright";
     repo = "dasel";
     rev = "v${version}";
-    sha256 = "sha256-MUF57begai6yMYLPC5dnyO9S39uHogB+Ie3qDA46Cn8=";
+    sha256 = "sha256-Em+WAI8G492h7FJTnTHFj5L7M4xBZhW4qC0MMc2JRUU=";
   };
 
   vendorSha256 = "sha256-NP+Is7Dxz4LGzx5vpv8pJOJhodAYHia1JXYfhJD54as=";
diff --git a/nixpkgs/pkgs/applications/misc/dbeaver/default.nix b/nixpkgs/pkgs/applications/misc/dbeaver/default.nix
index 61dd6e4a6d6e..d713afc96a3f 100644
--- a/nixpkgs/pkgs/applications/misc/dbeaver/default.nix
+++ b/nixpkgs/pkgs/applications/misc/dbeaver/default.nix
@@ -16,19 +16,24 @@
 , maven
 , webkitgtk
 , glib-networking
+, javaPackages
 }:
 
-stdenv.mkDerivation rec {
+javaPackages.mavenfod rec {
   pname = "dbeaver";
-  version = "22.0.0"; # When updating also update fetchedMavenDeps.sha256
+  version = "22.0.1"; # When updating also update fetchedMavenDeps.sha256
 
   src = fetchFromGitHub {
     owner = "dbeaver";
     repo = "dbeaver";
     rev = version;
-    sha256 = "sha256-LSEsaCEUoKViKC+IjJrV/w1VzOGi4EOr4LnAutOIyJU=";
+    sha256 = "sha256-IG5YWwq3WVzQBvAslQ9Z2Ou6ADzf4n9NkQCtH4Jgkac=";
   };
 
+
+  mvnSha256 = "7Sm1hAoi5xc4MLONOD8ySLLkpao0qmlMRRva/8zR210=";
+  mvnParameters = "-P desktop,all-platforms";
+
   fetchedMavenDeps = stdenv.mkDerivation {
     name = "dbeaver-${version}-maven-deps";
     inherit src;
@@ -37,7 +42,7 @@ stdenv.mkDerivation rec {
       maven
     ];
 
-    buildPhase = "mvn package -Dmaven.repo.local=$out/.m2 -P desktop,all-platforms";
+    buildPhase = "mvn package -Dmaven.repo.local=$out/.m2 ${mvnParameters}";
 
     # keep only *.{pom,jar,sha1,nbm} and delete all ephemeral files with lastModified timestamps inside
     installPhase = ''
@@ -88,14 +93,6 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  buildPhase = ''
-    runHook preBuild
-
-    mvn package --offline -Dmaven.repo.local=$(cp -dpR ${fetchedMavenDeps}/.m2 ./ && chmod +w -R .m2 && pwd)/.m2 -P desktop,all-platforms
-
-    runHook postBuild
-  '';
-
   installPhase =
     let
       productTargetPath = "product/community/target/products/org.jkiss.dbeaver.core.product";
diff --git a/nixpkgs/pkgs/applications/misc/electron-cash/default.nix b/nixpkgs/pkgs/applications/misc/electron-cash/default.nix
index 16f5673bed1b..7fe091cf7732 100644
--- a/nixpkgs/pkgs/applications/misc/electron-cash/default.nix
+++ b/nixpkgs/pkgs/applications/misc/electron-cash/default.nix
@@ -3,13 +3,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "electron-cash";
-  version = "4.2.5";
+  version = "4.2.7";
 
   src = fetchFromGitHub {
     owner = "Electron-Cash";
     repo = "Electron-Cash";
     rev = version;
-    sha256 = "sha256-ALIrNnhpX46xdQdfJdx/9e/QtdyBEgi5xLrbuOBJR7o=";
+    sha256 = "sha256-m8a3x5fPSrnrCH30MToT3aKtX35nFUbeerR7ubWgOOI=";
   };
 
   propagatedBuildInputs = with python3Packages; [
@@ -40,6 +40,7 @@ python3Packages.buildPythonApplication rec {
     keepkey
     btchip
     hidapi
+    pyopenssl
     pyscard
     pysatochip
   ];
diff --git a/nixpkgs/pkgs/applications/misc/electrum/default.nix b/nixpkgs/pkgs/applications/misc/electrum/default.nix
index 29a129192960..f9ef802ce422 100644
--- a/nixpkgs/pkgs/applications/misc/electrum/default.nix
+++ b/nixpkgs/pkgs/applications/misc/electrum/default.nix
@@ -21,7 +21,7 @@
 }:
 
 let
-  version = "4.1.5";
+  version = "4.2.1";
 
   libsecp256k1_name =
     if stdenv.isLinux then "libsecp256k1.so.0"
@@ -37,7 +37,7 @@ let
     owner = "spesmilo";
     repo = "electrum";
     rev = version;
-    sha256 = "1ps8yaps5kfd7yv7bpdvssbwm6f5qivxcvhwn17cpddc2760a7nk";
+    sha256 = "sha256-BoikYSsQZAv8WswIr5nmBsGmjZbTXaLAbdO2QtPvc7c=";
 
     extraPostFetch = ''
       mv $out ./all
@@ -45,19 +45,6 @@ let
     '';
   };
 
-  py = python3.override {
-    packageOverrides = self: super: {
-
-      aiorpcx = super.aiorpcx.overridePythonAttrs (oldAttrs: rec {
-        version = "0.18.7";
-        src = oldAttrs.src.override {
-          inherit version;
-          sha256 = "1rswrspv27x33xa5bnhrkjqzhv0sknv5kd7pl1vidw9d2z4rx2l0";
-        };
-      });
-    };
-  };
-
 in
 
 python3.pkgs.buildPythonApplication {
@@ -66,7 +53,7 @@ python3.pkgs.buildPythonApplication {
 
   src = fetchurl {
     url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
-    sha256 = "188r4zji985z8pm9b942xhmvv174yndk6jxagxl7ljk03wl2wiwi";
+    sha256 = "sha256-2SxSTH9P380j2KaCbkXjgmQO7K2z81AG6PMA/EMggXA=";
   };
 
   postUnpack = ''
@@ -74,27 +61,9 @@ python3.pkgs.buildPythonApplication {
     cp -ar ${tests} $sourceRoot/electrum/tests
   '';
 
-  postPatch = ''
-    substituteInPlace contrib/requirements/requirements.txt \
-      --replace "dnspython>=2.0,<2.1" "dnspython>=2.0"
-
-    # according to upstream, this is fine
-    # https://github.com/spesmilo/electrum/issues/7361
-    substituteInPlace contrib/requirements/requirements.txt \
-      --replace "qdarkstyle<2.9" "qdarkstyle>=2.7"
-  '';
-
-  patches = [
-    # trezorlib 0.13 compatibility
-    (fetchpatch {
-      url = "https://github.com/spesmilo/electrum/commit/97e61cfacdca374103e4184f0f9a07a0c5757afb.patch";
-      sha256 = "sha256-RGVBO9IskC+lQOHNGjrqH6EM/inNPJlcD9sSWedyT5E=";
-    })
-  ];
-
   nativeBuildInputs = lib.optionals enableQt [ wrapQtAppsHook ];
 
-  propagatedBuildInputs = with py.pkgs; [
+  propagatedBuildInputs = with python3.pkgs; [
     aiohttp
     aiohttp-socks
     aiorpcx
diff --git a/nixpkgs/pkgs/applications/misc/eos-installer/default.nix b/nixpkgs/pkgs/applications/misc/eos-installer/default.nix
index 02d629412a39..8234a77ba145 100644
--- a/nixpkgs/pkgs/applications/misc/eos-installer/default.nix
+++ b/nixpkgs/pkgs/applications/misc/eos-installer/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub
 , autoconf, autoconf-archive, automake, glib, intltool, libtool, pkg-config
-, gnome, gnupg, gtk3, udisks
+, gnome-desktop, gnupg, gtk3, udisks
 }:
 
 stdenv.mkDerivation rec {
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     autoconf autoconf-archive automake glib intltool libtool pkg-config
   ];
-  buildInputs = [ gnome.gnome-desktop gtk3 udisks ];
+  buildInputs = [ gnome-desktop gtk3 udisks ];
 
   preConfigure = ''
     ./autogen.sh
diff --git a/nixpkgs/pkgs/applications/misc/faircamp/default.nix b/nixpkgs/pkgs/applications/misc/faircamp/default.nix
new file mode 100644
index 000000000000..4486381b8b34
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/faircamp/default.nix
@@ -0,0 +1,56 @@
+{ lib
+, rustPlatform
+, fetchgit
+, makeWrapper
+, ffmpeg
+, callPackage
+, unstableGitUpdater
+}:
+
+rustPlatform.buildRustPackage {
+  pname = "faircamp";
+  version = "unstable-2022-01-19";
+
+  # TODO when switching to a stable release, use fetchFromGitea and add a
+  # version test. Meanwhile, fetchgit is used to make unstableGitUpdater work.
+  src = fetchgit {
+    url = "https://codeberg.org/simonrepp/faircamp.git";
+    rev = "f8ffc7a35a12251b83966b35c63f72b4912f75a9";
+    sha256 = "sha256-9t42+813IPLUChbLkcwzoCr7FXSL1g+ZG6I3d+7pmec=";
+  };
+
+  cargoHash = "sha256-24ALBede3W8rjlBRdtL0aazRyK1RmNLdHF/bt5i4S5Y=";
+
+  nativeBuildInputs = [
+    makeWrapper
+  ];
+
+  postInstall = ''
+    wrapProgram $out/bin/faircamp \
+      --prefix PATH : ${lib.makeBinPath [ ffmpeg ]}
+  '';
+
+  passthru.tests.wav = callPackage ./test-wav.nix { };
+
+  passthru.updateScript = unstableGitUpdater { };
+
+  meta = with lib; {
+    description = "A self-hostable, statically generated bandcamp alternative";
+    longDescription = ''
+      Faircamp takes a directory on your disk - your Catalog - and from it
+      produces a fancy-looking (and technically simple and completely static)
+      website, which presents your music in a way similar to how popular
+      commercial service bandcamp does it.
+
+      You can upload the files faircamp generates to any webspace - no database
+      and no programming language support (PHP or such) is required. If your
+      webspace supports SSH access, faircamp can be configured to upload your
+      website for you automatically, otherwise you can use FTP or whichever
+      means you prefer to do that manually.
+    '';
+    homepage = "https://codeberg.org/simonrepp/faircamp";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ fgaz ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/misc/faircamp/test-wav.nix b/nixpkgs/pkgs/applications/misc/faircamp/test-wav.nix
new file mode 100644
index 000000000000..8a9d2eaa2f35
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/faircamp/test-wav.nix
@@ -0,0 +1,14 @@
+{ stdenv
+, faircamp
+, ffmpeg
+}:
+
+stdenv.mkDerivation {
+  name = "faircamp-test-wav";
+  meta.timeout = 60;
+  buildCommand = ''
+    mkdir album
+    ${ffmpeg}/bin/ffmpeg -f lavfi -i "sine=frequency=440:duration=1" album/track.wav
+    ${faircamp}/bin/faircamp --build-dir $out
+  '';
+}
diff --git a/nixpkgs/pkgs/applications/misc/font-manager/default.nix b/nixpkgs/pkgs/applications/misc/font-manager/default.nix
index bd6ae3d74780..e90c0a4ec18e 100644
--- a/nixpkgs/pkgs/applications/misc/font-manager/default.nix
+++ b/nixpkgs/pkgs/applications/misc/font-manager/default.nix
@@ -2,7 +2,6 @@
 , stdenv
 , fetchFromGitHub
 , meson
-, fetchpatch
 , ninja
 , gettext
 , python3
@@ -26,24 +25,15 @@
 
 stdenv.mkDerivation rec {
   pname = "font-manager";
-  version = "0.8.7";
+  version = "0.8.8";
 
   src = fetchFromGitHub {
     owner = "FontManager";
     repo = "master";
     rev = version;
-    sha256 = "lqXjGSsiWaMJGyr1c2Wt/bs4F8q51mQ1+f6vbZRQzVs=";
+    sha256 = "sha256-M13Q9d2cKhc0tudkvw0zgqPAFTlmXwK+LltXeuDPWxo=";
   };
 
-  patches = [
-    # Fix compilation with latest Vala.
-    # https://github.com/FontManager/font-manager/issues/240
-    (fetchpatch {
-      url = "https://github.com/FontManager/font-manager/commit/f9c4621389dae5999ca9d2f3c8402c2512a9ea60.patch";
-      sha256 = "ZEJZSUYFLKmiHpVusO3ZUXMLUzJbbbCSqMjCtwlzPRY=";
-    })
-  ];
-
   nativeBuildInputs = [
     pkg-config
     meson
diff --git a/nixpkgs/pkgs/applications/misc/freeplane/default.nix b/nixpkgs/pkgs/applications/misc/freeplane/default.nix
index 37c4abb37646..e2931698d1ac 100644
--- a/nixpkgs/pkgs/applications/misc/freeplane/default.nix
+++ b/nixpkgs/pkgs/applications/misc/freeplane/default.nix
@@ -1,24 +1,31 @@
-{ stdenv, lib, fetchpatch, fetchFromGitHub, makeWrapper, writeText, runtimeShell, jdk11, perl, gradle_5, which }:
+{ stdenv, lib, fetchpatch, fetchFromGitHub, makeWrapper, writeText, runtimeShell, jdk11, perl, gradle_6, which }:
 
 let
   pname = "freeplane";
-  version = "1.9.5";
+  version = "1.9.14";
+
+  src_sha256 = "UiXtGJs+hibB63BaDDLXgjt3INBs+NfMsKcX2Q/kxKw=";
+  deps_outputHash = "tHhRaMIQK8ERuzm+qB9tRe2XSesL0bN3rComB9/qWgg=";
+  emoji_outputHash = "w96or4lpKCRK8A5HaB4Eakr7oVSiQALJ9tCJvKZaM34=";
+
+  jdk = jdk11;
+  gradle = gradle_6;
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "release-${version}";
-    sha256 = "qfhhmF3mePxcL4U8izkEmWaiaOLi4slsaymVnDoO3sY=";
+    sha256 = src_sha256;
   };
 
   deps = stdenv.mkDerivation {
     name = "${pname}-deps";
     inherit src;
 
-    nativeBuildInputs = [ jdk11 perl gradle_5 ];
+    nativeBuildInputs = [ jdk perl gradle ];
 
     buildPhase = ''
-      GRADLE_USER_HOME=$PWD gradle -Dorg.gradle.java.home=${jdk11} --no-daemon jar
+      GRADLE_USER_HOME=$PWD gradle -Dorg.gradle.java.home=${jdk} --no-daemon jar
     '';
 
     # Mavenize dependency paths
@@ -31,7 +38,7 @@ let
 
     outputHashAlgo = "sha256";
     outputHashMode = "recursive";
-    outputHash = "xphTzaSXTGpP7vI/t4oIiv1ZpbekG2dFRzyl3ub6qnA=";
+    outputHash = deps_outputHash;
   };
 
   # Point to our local deps repo
@@ -60,16 +67,14 @@ let
     }
   '';
 
-  # downloaded from unicode.org and twemoji.maxcdn.com by code in freeplane/emoji.gradle
-  # the below hash is for versions of freeplane that use twemoji 12.1.4, and emoji 12.1
   emoji = stdenv.mkDerivation rec {
     name = "${pname}-emoji";
     inherit src;
 
-    nativeBuildInputs = [ jdk11 gradle_5 ];
+    nativeBuildInputs = [ jdk gradle ];
 
     buildPhase = ''
-      GRADLE_USER_HOME=$PWD gradle -Dorg.gradle.java.home=${jdk11} --no-daemon --offline --init-script ${gradleInit} emojiGraphicsClasses emojiListClasses
+      GRADLE_USER_HOME=$PWD gradle -Dorg.gradle.java.home=${jdk} --no-daemon --offline --init-script ${gradleInit} :freeplane:downloadEmoji
     '';
 
     installPhase = ''
@@ -80,19 +85,19 @@ let
 
     outputHashAlgo = "sha256";
     outputHashMode = "recursive";
-    outputHash = "0zikbakbr2fhyv4h4h52ajhznjka0hg6hiqfy1528a39i6psipn3";
+    outputHash = emoji_outputHash;
   };
 
 in stdenv.mkDerivation rec {
   inherit pname version src;
 
-  nativeBuildInputs = [ makeWrapper jdk11 gradle_5 ];
+  nativeBuildInputs = [ makeWrapper jdk gradle ];
 
   buildPhase = ''
     mkdir -p -- ./freeplane/build/emoji/{txt,resources/images}
     cp ${emoji}/emoji/txt/emojilist.txt ./freeplane/build/emoji/txt/emojilist.txt
     cp -r ${emoji}/resources/images/emoji ./freeplane/build/emoji/resources/images/emoji
-    GRADLE_USER_HOME=$PWD gradle -Dorg.gradle.java.home=${jdk11} --no-daemon --offline --init-script ${gradleInit} -x test -x :freeplane:downloadEmoji build
+    GRADLE_USER_HOME=$PWD gradle -Dorg.gradle.java.home=${jdk} --no-daemon --offline --init-script ${gradleInit} -x test -x :freeplane:downloadEmoji build
   '';
 
   installPhase = ''
@@ -102,8 +107,8 @@ in stdenv.mkDerivation rec {
     cp -a ./BIN/. $out/share/${pname}
     makeWrapper $out/share/${pname}/${pname}.sh $out/bin/${pname} \
       --set FREEPLANE_BASE_DIR $out/share/${pname} \
-      --set JAVA_HOME ${jdk11} \
-      --prefix PATH : ${lib.makeBinPath [ jdk11 which ]}
+      --set JAVA_HOME ${jdk} \
+      --prefix PATH : ${lib.makeBinPath [ jdk which ]}
     runHook postInstall
   '';
 
diff --git a/nixpkgs/pkgs/applications/misc/gallery-dl/default.nix b/nixpkgs/pkgs/applications/misc/gallery-dl/default.nix
index ed0e3e72be2d..dc5dedbd1ad9 100644
--- a/nixpkgs/pkgs/applications/misc/gallery-dl/default.nix
+++ b/nixpkgs/pkgs/applications/misc/gallery-dl/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonApplication rec {
   pname = "gallery_dl";
-  version = "1.20.5";
+  version = "1.21.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-UJAoxRybEYxQY+7l/szSj9fy1J552yaxF3MdaEmDiQQ=";
+    sha256 = "sha256-D/K+C7IX4VGv+FFYuPQEqwVYSjiDcSeElVunVMiFWI8=";
   };
 
   propagatedBuildInputs = [ requests yt-dlp ];
diff --git a/nixpkgs/pkgs/applications/misc/gnome-solanum/default.nix b/nixpkgs/pkgs/applications/misc/gnome-solanum/default.nix
new file mode 100644
index 000000000000..8ad1267afa93
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/gnome-solanum/default.nix
@@ -0,0 +1,70 @@
+{ lib
+, stdenv
+, fetchFromGitLab
+, rustPlatform
+, desktop-file-utils
+, meson
+, ninja
+, pkg-config
+, wrapGAppsHook
+, python3
+, git
+, glib
+, gtk4
+, gst_all_1
+, libadwaita
+}:
+
+stdenv.mkDerivation rec {
+  pname = "solanum";
+  version = "3.0.1";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "World";
+    repo = "Solanum";
+    rev = "v${version}";
+    sha256 = "0cga6cz6jfbipzp008rjznkz7844licdc34lk133fcyqil0cg0ap";
+  };
+
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit src;
+    name = "${pname}-${version}";
+    sha256 = "10kzv98b2fiql9f6n2fv6lrgq4fdzxq0h4nzcq9jrw3fsggzl0wb";
+  };
+
+  postPatch = ''
+    patchShebangs build-aux
+  '';
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    wrapGAppsHook
+    python3
+    git
+    desktop-file-utils
+  ] ++ (with rustPlatform; [
+    cargoSetupHook
+    rust.cargo
+    rust.rustc
+  ]);
+
+  buildInputs = [
+    glib
+    gtk4
+    libadwaita
+    gst_all_1.gstreamer
+    gst_all_1.gst-plugins-base
+    gst_all_1.gst-plugins-bad
+  ];
+
+  meta = with lib; {
+    homepage = "https://gitlab.gnome.org/World/Solanum";
+    description = "A pomodoro timer for the GNOME desktop";
+    maintainers = with maintainers; [ linsui ];
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/misc/gosmore/default.nix b/nixpkgs/pkgs/applications/misc/gosmore/default.nix
index 854fec8642a8..bd87e7b4aeb6 100644
--- a/nixpkgs/pkgs/applications/misc/gosmore/default.nix
+++ b/nixpkgs/pkgs/applications/misc/gosmore/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchsvn, libxml2, gtk2, curl, pkg-config } :
 
-let
+stdenv.mkDerivation rec {
+  pname = "gosmore";
   version = "31801";
-in
-stdenv.mkDerivation {
-  name = "gosmore-r${version}";
   # the gosmore svn repository does not lock revision numbers of its externals
   # so we explicitly disable them to avoid breaking the hash
   # especially as the externals appear to be unused
diff --git a/nixpkgs/pkgs/applications/misc/joshuto/default.nix b/nixpkgs/pkgs/applications/misc/joshuto/default.nix
index 7d4ec87b9f4b..32018d7151db 100644
--- a/nixpkgs/pkgs/applications/misc/joshuto/default.nix
+++ b/nixpkgs/pkgs/applications/misc/joshuto/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "joshuto";
-  version = "0.9.2";
+  version = "0.9.3";
 
   src = fetchFromGitHub {
     owner = "kamiyaa";
     repo = pname;
     rev = version;
-    sha256 = "sha256-9TGHSGYCzU6uAIO4zZ/6+B4oVPE6SD9Phl4dShylW5o=";
+    sha256 = "sha256-RbA7MM/3u2LJG6QD5f15E/XoLwHMkPasx0ht4PqV/jc=";
   };
 
-  cargoSha256 = "sha256-g8YYOk2RW4GPdkWlvAxd5KFdV4S1l5yKEzNm9OAc8RI=";
+  cargoSha256 = "sha256-vhTfAoAwDJ9BjhgUEkV2H+KAetJR1YqwaZ7suF6yMXA=";
 
   buildInputs = lib.optional stdenv.isDarwin SystemConfiguration;
 
diff --git a/nixpkgs/pkgs/applications/misc/keepassx/community.nix b/nixpkgs/pkgs/applications/misc/keepassx/community.nix
index a8548f2c5c00..c2e7ae58eb3c 100644
--- a/nixpkgs/pkgs/applications/misc/keepassx/community.nix
+++ b/nixpkgs/pkgs/applications/misc/keepassx/community.nix
@@ -22,6 +22,7 @@
 , qtx11extras
 , quazip
 , readline
+, wrapGAppsHook
 , wrapQtAppsHook
 , yubikey-personalization
 , zlib
@@ -90,7 +91,7 @@ stdenv.mkDerivation rec {
     runHook postCheck
   '';
 
-  nativeBuildInputs = [ asciidoctor cmake wrapQtAppsHook qttools pkg-config ];
+  nativeBuildInputs = [ asciidoctor cmake wrapGAppsHook wrapQtAppsHook qttools pkg-config ];
 
   buildInputs = [
     curl
diff --git a/nixpkgs/pkgs/applications/misc/koreader/default.nix b/nixpkgs/pkgs/applications/misc/koreader/default.nix
index 2e6318f98807..0a082cce3274 100644
--- a/nixpkgs/pkgs/applications/misc/koreader/default.nix
+++ b/nixpkgs/pkgs/applications/misc/koreader/default.nix
@@ -13,12 +13,12 @@
 let font-droid = nerdfonts.override { fonts = [ "DroidSansMono" ]; };
 in stdenv.mkDerivation rec {
   pname = "koreader";
-  version = "2022.02";
+  version = "2022.03.1";
 
   src = fetchurl {
     url =
       "https://github.com/koreader/koreader/releases/download/v${version}/koreader-${version}-amd64.deb";
-    sha256 = "sha256-gR81ZN0N3bmvLVqwUanXTrpBnzhPZT0bo4J8VOfaJh8=";
+    sha256 = "sha256-ZoqITWPR60G4xY9InrtIY9rCWUk0PidGFZokHLWl5ps=";
   };
 
   sourceRoot = ".";
diff --git a/nixpkgs/pkgs/applications/misc/kratos/default.nix b/nixpkgs/pkgs/applications/misc/kratos/default.nix
index a0b67042ecac..043f607c010d 100644
--- a/nixpkgs/pkgs/applications/misc/kratos/default.nix
+++ b/nixpkgs/pkgs/applications/misc/kratos/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kratos";
-  version = "0.8.0-alpha.3";
+  version = "0.8.3-alpha.1.pre.0";
 
   src = fetchFromGitHub {
     owner = "ory";
     repo = "kratos";
     rev = "v${version}";
-    sha256 = "0ihq2kxjackicxg0hrpmx6bsgz056xbaq3j8py37z2w6mwszarcg";
+    sha256 = "1225paf0x6lb6cb3q5f4lyz0r426ifx4x8145q7nsc6v64srck2y";
   };
 
-  vendorSha256 = "175pckj30cm5xkbvsdvwzarvwapsylyjgj4ss8v5r1sa0fjpj008";
+  vendorSha256 = "10zhxbccjsp6hbmk2lnvbag6c92hz703mcaigaj4wvlf7glpldm6";
 
   subPackages = [ "." ];
 
@@ -25,7 +25,7 @@ buildGoModule rec {
        test/e2e/run.sh
        script/testenv.sh
        script/test-envs.sh
-       persistence/sql/migratest/update_fixtures.sh
+       script/debug-entrypoint.sh
     )
     patchShebangs "''${files[@]}"
 
diff --git a/nixpkgs/pkgs/applications/misc/lighthouse/default.nix b/nixpkgs/pkgs/applications/misc/lighthouse/default.nix
index e9aa79dcdd83..01ffb7a9ffe8 100644
--- a/nixpkgs/pkgs/applications/misc/lighthouse/default.nix
+++ b/nixpkgs/pkgs/applications/misc/lighthouse/default.nix
@@ -3,8 +3,8 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "lighthouse-${date}";
-  date = "2016-07-20";
+  pname = "lighthouse";
+  version = "unstable-2016-07-20";
 
   src = fetchFromGitHub {
     owner = "emgram769";
diff --git a/nixpkgs/pkgs/applications/misc/logseq/default.nix b/nixpkgs/pkgs/applications/misc/logseq/default.nix
index 81c9e9d55156..153e50f9a873 100644
--- a/nixpkgs/pkgs/applications/misc/logseq/default.nix
+++ b/nixpkgs/pkgs/applications/misc/logseq/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "logseq";
-  version = "0.6.3";
+  version = "0.6.5";
 
   src = fetchurl {
     url = "https://github.com/logseq/logseq/releases/download/${version}/logseq-linux-x64-${version}.AppImage";
-    sha256 = "o3tBHk7bauNczz6lPS3lV0mpYEaBa0lh/mAJKJM2eWU=";
+    sha256 = "WKROcCv0IzRnQd74j5Iget5jlfyDbeJ/PXgZmSNrSsQ=";
     name = "${pname}-${version}.AppImage";
   };
 
diff --git a/nixpkgs/pkgs/applications/misc/lutris/fhsenv.nix b/nixpkgs/pkgs/applications/misc/lutris/fhsenv.nix
index 88b3d253114d..0ff5b4a6a625 100644
--- a/nixpkgs/pkgs/applications/misc/lutris/fhsenv.nix
+++ b/nixpkgs/pkgs/applications/misc/lutris/fhsenv.nix
@@ -7,7 +7,7 @@
 let
 
   qt5Deps = pkgs: with pkgs.qt5; [ qtbase qtmultimedia ];
-  gnomeDeps = pkgs: with pkgs; [ gnome.zenity gtksourceview gnome.gnome-desktop gnome.libgnome-keyring webkitgtk ];
+  gnomeDeps = pkgs: with pkgs; [ gnome.zenity gtksourceview gnome-desktop gnome.libgnome-keyring webkitgtk ];
   xorgDeps = pkgs: with pkgs.xorg; [
     libX11 libXrender libXrandr libxcb libXmu libpthreadstubs libXext libXdmcp
     libXxf86vm libXinerama libSM libXv libXaw libXi libXcursor libXcomposite
diff --git a/nixpkgs/pkgs/applications/misc/mob/default.nix b/nixpkgs/pkgs/applications/misc/mob/default.nix
index f6490906b55e..2b9c847bac8f 100644
--- a/nixpkgs/pkgs/applications/misc/mob/default.nix
+++ b/nixpkgs/pkgs/applications/misc/mob/default.nix
@@ -1,8 +1,8 @@
 { lib
 , buildGoPackage
 , fetchFromGitHub
-
-, withSpeech ? true
+, stdenv
+, withSpeech ? !stdenv.isDarwin
 , makeWrapper
 , espeak-ng
 }:
diff --git a/nixpkgs/pkgs/applications/misc/moonlight-qt/default.nix b/nixpkgs/pkgs/applications/misc/moonlight-qt/default.nix
index 1a764dfaef30..c29813517496 100644
--- a/nixpkgs/pkgs/applications/misc/moonlight-qt/default.nix
+++ b/nixpkgs/pkgs/applications/misc/moonlight-qt/default.nix
@@ -57,5 +57,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ luc65r ];
     platforms = platforms.all;
+    mainProgram = "moonlight";
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/mop/default.nix b/nixpkgs/pkgs/applications/misc/mop/default.nix
index f31b79c9ddf4..105728b7f044 100644
--- a/nixpkgs/pkgs/applications/misc/mop/default.nix
+++ b/nixpkgs/pkgs/applications/misc/mop/default.nix
@@ -1,9 +1,15 @@
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "mop";
   version = "0.2.0";
-  rev = "bc666ec165d08b43134f7ec0bf29083ad5466243";
+
+  src = fetchFromGitHub {
+    owner = "mop-tracker";
+    repo = "mop";
+    rev = "bc666ec165d08b43134f7ec0bf29083ad5466243";
+    sha256 = "sha256-fX7G4M3gfv31Eb2HChTY4RfVF2U92000U4ZnFNML5X4=";
+  };
 
   goPackagePath = "github.com/michaeldv/mop";
   goDeps = ./deps.nix;
@@ -16,12 +22,6 @@ buildGoPackage rec {
     mv cmd mop
   '';
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/mop-tracker/mop";
-    sha256 = "0zp51g9i8rw6acs4vnrxclbxa5z1v0a0m1xx27szszp0rphcczkx";
-  };
-
   meta = with lib; {
     description = "Simple stock tracker implemented in go";
     homepage =  "https://github.com/mop-tracker/mop";
diff --git a/nixpkgs/pkgs/applications/misc/mucommander/default.nix b/nixpkgs/pkgs/applications/misc/mucommander/default.nix
index 648b4951504f..681e2d3eb4e6 100644
--- a/nixpkgs/pkgs/applications/misc/mucommander/default.nix
+++ b/nixpkgs/pkgs/applications/misc/mucommander/default.nix
@@ -2,7 +2,6 @@
 
 let
   version = "0.9.3-3";
-  name = "mucommander-${version}";
 
   src = fetchFromGitHub {
     owner = "mucommander";
@@ -34,8 +33,8 @@ let
 
   # fake build to pre-download deps into fixed-output derivation
   deps = stdenv.mkDerivation {
-    name = "${name}-deps";
-    inherit src postPatch;
+    pname = "mucommander-deps";
+    inherit version src postPatch;
     nativeBuildInputs = [ gradle_6 perl ];
     buildPhase = ''
       export GRADLE_USER_HOME=$(mktemp -d)
@@ -53,7 +52,8 @@ let
   };
 
 in stdenv.mkDerivation {
-  inherit name src postPatch;
+  pname = "mucommander";
+  inherit version src postPatch;
   nativeBuildInputs = [ gradle_6 perl makeWrapper ];
 
   buildPhase = ''
diff --git a/nixpkgs/pkgs/applications/misc/mupdf/0001-Use-command-v-in-favor-of-which.patch b/nixpkgs/pkgs/applications/misc/mupdf/0001-Use-command-v-in-favor-of-which.patch
new file mode 100644
index 000000000000..26ed3aec9fb7
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/mupdf/0001-Use-command-v-in-favor-of-which.patch
@@ -0,0 +1,25 @@
+From b2935ed7e2962d73f3b493c38c0bb1e8659c0a60 Mon Sep 17 00:00:00 2001
+From: toonn <toonn@toonn.io>
+Date: Tue, 8 Mar 2022 23:59:19 +0100
+Subject: [PATCH 1/2] Use command -v in favor of which
+
+---
+ Makerules | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makerules b/Makerules
+index 0fdaecb..6d52cca 100644
+--- a/Makerules
++++ b/Makerules
+@@ -145,7 +145,7 @@ else ifeq ($(OS),MACOS)
+   LD = xcrun ld
+   RANLIB = xcrun ranlib
+ 
+-  ifeq (, $(shell which pkg-config))
++  ifeq (, $(shell command -v pkg-config))
+     $(warning "No pkg-config found, install it for proper integration of libcrypto")
+   else
+     HAVE_LIBCRYPTO := $(shell pkg-config --exists 'libcrypto >= 1.1.0' && echo yes)
+-- 
+2.17.2 (Apple Git-113)
+
diff --git a/nixpkgs/pkgs/applications/misc/mupdf/0002-Add-Darwin-deps.patch b/nixpkgs/pkgs/applications/misc/mupdf/0002-Add-Darwin-deps.patch
new file mode 100644
index 000000000000..2fe1a4afd9fd
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/mupdf/0002-Add-Darwin-deps.patch
@@ -0,0 +1,57 @@
+From 0f0ccfc01cfe72d96eafee57ec6c5107f09c7238 Mon Sep 17 00:00:00 2001
+From: toonn <toonn@toonn.io>
+Date: Wed, 9 Mar 2022 00:08:28 +0100
+Subject: [PATCH 2/2] Add Darwin deps
+
+---
+ Makerules | 34 ++++++++++++++++++++++++++++++++++
+ 1 file changed, 34 insertions(+)
+
+diff --git a/Makerules b/Makerules
+index 6d52cca..a6bd0ed 100644
+--- a/Makerules
++++ b/Makerules
+@@ -153,6 +153,40 @@ else ifeq ($(OS),MACOS)
+ 	  LIBCRYPTO_CFLAGS := $(shell pkg-config --cflags libcrypto) -DHAVE_LIBCRYPTO
+ 	  LIBCRYPTO_LIBS := $(shell pkg-config --libs libcrypto)
+     endif
++    # Required for mupdf-gl
++    ifeq ($(shell pkg-config --exists harfbuzz && echo yes),yes)
++          SYS_HARFBUZZ_CFLAGS := $(shell pkg-config --cflags harfbuzz)
++          SYS_HARFBUZZ_LIBS := $(shell pkg-config --libs harfbuzz)
++    endif
++    ifeq ($(shell pkg-config --exists libopenjp2 && echo yes),yes)
++          SYS_OPENJPEG_CFLAGS := $(shell pkg-config --cflags libopenjp2)
++          SYS_OPENJPEG_LIBS := $(shell pkg-config --libs libopenjp2)
++    endif
++    ifeq ($(shell pkg-config --exists freetype2 && echo yes),yes)
++          SYS_FREETYPE_CFLAGS := $(shell pkg-config --cflags freetype2)
++          SYS_FREETYPE_LIBS := $(shell pkg-config --libs freetype2)
++    endif
++    ifeq ($(shell pkg-config --exists gumbo && echo yes),yes)
++          SYS_GUMBO_CFLAGS := $(shell pkg-config --cflags gumbo)
++          SYS_GUMBO_LIBS := $(shell pkg-config --libs gumbo)
++    endif
++    # Required for mupdf-x11
++    HAVE_X11 := $(shell pkg-config --exists x11 xext && echo yes)
++    ifeq ($(HAVE_X11),yes)
++          X11_CFLAGS := $(shell pkg-config --cflags x11 xext)
++          X11_LIBS := $(shell pkg-config --libs x11 xext)
++    endif
++    # Required for mupdf-x11-curl
++    HAVE_SYS_CURL := $(shell pkg-config --exists libcurl && echo yes)
++    ifeq ($(HAVE_SYS_CURL),yes)
++          SYS_CURL_CFLAGS := $(shell pkg-config --cflags libcurl)
++          SYS_CURL_LIBS := $(shell pkg-config --libs libcurl)
++    endif
++    HAVE_PTHREAD := yes
++    ifeq ($(HAVE_PTHREAD),yes)
++          PTHREAD_CFLAGS :=
++          PTHREAD_LIBS := -lpthread
++    endif
+   endif
+ 
+ else ifeq ($(OS),Linux)
+-- 
+2.17.2 (Apple Git-113)
+
diff --git a/nixpkgs/pkgs/applications/misc/mupdf/1.17.nix b/nixpkgs/pkgs/applications/misc/mupdf/1.17.nix
index 95e9c7c3307a..ec978b9fc3a2 100644
--- a/nixpkgs/pkgs/applications/misc/mupdf/1.17.nix
+++ b/nixpkgs/pkgs/applications/misc/mupdf/1.17.nix
@@ -82,7 +82,6 @@ in stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://mupdf.com";
-    repositories.git = "git://git.ghostscript.com/mupdf.git";
     description = "Lightweight PDF, XPS, and E-book viewer and toolkit written in portable C";
     license = licenses.agpl3Plus;
     maintainers = with maintainers; [ vrthra fpletz ];
diff --git a/nixpkgs/pkgs/applications/misc/mupdf/default.nix b/nixpkgs/pkgs/applications/misc/mupdf/default.nix
index 7bb9a89b8b39..99812bcdc8c9 100644
--- a/nixpkgs/pkgs/applications/misc/mupdf/default.nix
+++ b/nixpkgs/pkgs/applications/misc/mupdf/default.nix
@@ -2,6 +2,9 @@
 , lib
 , fetchurl
 , fetchpatch
+, copyDesktopItems
+, makeDesktopItem
+, desktopToDarwinBundle
 , pkg-config
 , freetype
 , harfbuzz
@@ -10,7 +13,7 @@
 , libjpeg
 , darwin
 , gumbo
-, enableX11 ? true
+, enableX11 ? (!stdenv.isDarwin)
 , libX11
 , libXext
 , libXi
@@ -21,6 +24,7 @@
 , enableGL ? true
 , freeglut
 , libGLU
+, xcbuild
 }:
 let
 
@@ -39,6 +43,10 @@ stdenv.mkDerivation rec {
     sha256 = "1vfyhlqq1a0k0drcggly4bgsjasmf6lmpfbdi5xcrwdbzkagrbr1";
   };
 
+  patches = [ ./0001-Use-command-v-in-favor-of-which.patch
+              ./0002-Add-Darwin-deps.patch
+            ];
+
   postPatch = ''
     sed -i "s/__OPENJPEG__VERSION__/${openJpegVersion}/" source/fitz/load-jpx.c
   '';
@@ -50,8 +58,12 @@ stdenv.mkDerivation rec {
     ++ lib.optionals (!enableX11) [ "HAVE_X11=no" ]
     ++ lib.optionals (!enableGL) [ "HAVE_GLUT=no" ];
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config ]
+    ++ lib.optional (enableGL || enableX11) copyDesktopItems
+    ++ lib.optional stdenv.isDarwin desktopToDarwinBundle;
+
   buildInputs = [ freetype harfbuzz openjpeg jbig2dec libjpeg gumbo ]
+    ++ lib.optional stdenv.isDarwin xcbuild
     ++ lib.optionals enableX11 [ libX11 libXext libXi libXrandr ]
     ++ lib.optionals enableCurl [ curl openssl ]
     ++ lib.optionals enableGL (
@@ -68,6 +80,30 @@ stdenv.mkDerivation rec {
     rm -rf thirdparty/{curl,freetype,glfw,harfbuzz,jbig2dec,libjpeg,openjpeg,zlib}
   '';
 
+  desktopItems = [
+    (makeDesktopItem {
+      name = pname;
+      desktopName = pname;
+      comment = meta.description;
+      icon = "mupdf";
+      exec = "${pname} %f";
+      terminal = false;
+      mimeTypes = [
+        "application/epub+zip"
+        "application/oxps"
+        "application/pdf"
+        "application/vnd.ms-xpsdocument"
+        "application/x-cbz"
+        "application/x-pdf"
+      ];
+      categories = [ "Graphics" "Viewer" ];
+      keywords = [
+        "mupdf" "comic" "document" "ebook" "viewer"
+        "cbz" "epub" "fb2" "pdf" "xps"
+      ];
+    })
+  ];
+
   postInstall = ''
     mkdir -p "$out/lib/pkgconfig"
     cat >"$out/lib/pkgconfig/mupdf.pc" <<EOF
@@ -83,26 +119,19 @@ stdenv.mkDerivation rec {
     EOF
 
     moveToOutput "bin" "$bin"
-  '' + lib.optionalString enableX11 ''
+  '' + lib.optionalString (enableX11 || enableGL) ''
+    mkdir -p $bin/share/icons/hicolor/48x48/apps
+    cp docs/logo/mupdf.png $bin/share/icons/hicolor/48x48/apps
+  '' + (if enableGL then ''
+    ln -s "$bin/bin/mupdf-gl" "$bin/bin/mupdf"
+  '' else lib.optionalString (enableX11) ''
     ln -s "$bin/bin/mupdf-x11" "$bin/bin/mupdf"
-    mkdir -p $bin/share/applications
-    cat > $bin/share/applications/mupdf.desktop <<EOF
-    [Desktop Entry]
-    Type=Application
-    Version=1.0
-    Name=mupdf
-    Comment=PDF viewer
-    Exec=$bin/bin/mupdf-x11 %f
-    Terminal=false
-    MimeType=application/pdf;application/x-pdf;application/x-cbz;application/oxps;application/vnd.ms-xpsdocument;application/epub+zip
-    EOF
-  '';
+  '');
 
   enableParallelBuilding = true;
 
   meta = with lib; {
     homepage = "https://mupdf.com";
-    repositories.git = "git://git.ghostscript.com/mupdf.git";
     description = "Lightweight PDF, XPS, and E-book viewer and toolkit written in portable C";
     license = licenses.agpl3Plus;
     maintainers = with maintainers; [ vrthra fpletz ];
diff --git a/nixpkgs/pkgs/applications/misc/nix-tour/default.nix b/nixpkgs/pkgs/applications/misc/nix-tour/default.nix
index 57b1b6256906..b7485255b8a8 100644
--- a/nixpkgs/pkgs/applications/misc/nix-tour/default.nix
+++ b/nixpkgs/pkgs/applications/misc/nix-tour/default.nix
@@ -1,34 +1,50 @@
-{ lib, stdenv, fetchgit, electron, runtimeShell } :
+{ lib
+, stdenv
+, fetchFromGitHub
+, electron
+, runtimeShell
+, makeWrapper
+, copyDesktopItems
+, makeDesktopItem
+}:
 
 stdenv.mkDerivation rec {
   pname = "nix-tour";
-  version = "0.0.1";
+  version = "unstable-2022-01-03";
 
-  buildInputs = [ electron ];
-
-  src = fetchgit {
-    url = "https://github.com/nixcloud/tour_of_nix";
-    rev = "v${version}";
-    sha256 = "09b1vxli4zv1nhqnj6c0vrrl51gaira94i8l7ww96fixqxjgdwvb";
+  src = fetchFromGitHub {
+    owner = "nixcloud";
+    repo = "tour_of_nix";
+    rev = "6a6784983e6dc121574b97eb9b1d03592c8cb9a7";
+    sha256 = "sha256-BhQz59wkwwY0ShXzqUD6MQl4NE/jUik5RbLzseEc5Bc=";
   };
 
+  nativeBuildInputs = [ makeWrapper copyDesktopItems ];
+  buildInputs = [ electron ];
+
   installPhase = ''
-    mkdir -p $out/bin
-    mkdir -p $out/share
-    cp -R * $out/share
-    chmod 0755 $out/share/ -R
-    echo "#!${runtimeShell}" > $out/bin/nix-tour
-    echo "cd $out/share/" >> $out/bin/nix-tour
-    echo "${electron}/bin/electron $out/share/electron-main.js" >> $out/bin/nix-tour
-    chmod 0755 $out/bin/nix-tour
+    install -d $out/bin $out/share/nix-tour
+    cp -R * $out/share/nix-tour
+    makeWrapper ${electron}/bin/electron $out/bin/nix-tour \
+      --add-flags $out/share/nix-tour/electron-main.js
   '';
 
+  desktopItems = [
+    (makeDesktopItem {
+      name = pname;
+      desktopName = "Tour of Nix";
+      genericName = "Tour of Nix";
+      comment =
+        "Interactive programming guide dedicated to the nix programming language";
+      categories = [ "Development" "Documentation" ];
+      exec = "nix-tour";
+    })
+  ];
+
   meta = with lib; {
     description = "'the tour of nix' from nixcloud.io/tour as offline version";
     homepage = "https://nixcloud.io/tour";
     license = licenses.gpl2;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ qknight ];
+    maintainers = with maintainers; [ qknight yuu ];
   };
-
 }
diff --git a/nixpkgs/pkgs/applications/misc/nut/default.nix b/nixpkgs/pkgs/applications/misc/nut/default.nix
index 4694c243b391..41f46ff1c003 100644
--- a/nixpkgs/pkgs/applications/misc/nut/default.nix
+++ b/nixpkgs/pkgs/applications/misc/nut/default.nix
@@ -49,7 +49,6 @@ stdenv.mkDerivation rec {
       It uses a layered approach to connect all of the parts.
     '';
     homepage = "https://networkupstools.org/";
-    repositories.git = "https://github.com/networkupstools/nut.git";
     platforms = platforms.linux;
     maintainers = [ maintainers.pierron ];
     license = with licenses; [ gpl1Plus gpl2Plus gpl3Plus ];
diff --git a/nixpkgs/pkgs/applications/misc/obsidian/default.nix b/nixpkgs/pkgs/applications/misc/obsidian/default.nix
index 67a0939ddab9..3dad5c846952 100644
--- a/nixpkgs/pkgs/applications/misc/obsidian/default.nix
+++ b/nixpkgs/pkgs/applications/misc/obsidian/default.nix
@@ -12,7 +12,7 @@
 let
   inherit (stdenv.hostPlatform) system;
   pname = "obsidian";
-  version = "0.13.31";
+  version = "0.14.2";
   meta = with lib; {
     description = "A powerful knowledge base that works on top of a local folder of plain text Markdown files";
     homepage = "https://obsidian.md";
@@ -21,23 +21,12 @@ let
     maintainers = with maintainers; [ conradmearns zaninime opeik ];
   };
 
+  filename = if stdenv.isDarwin then "Obsidian-${version}-universal.dmg" else "obsidian-${version}.tar.gz";
   src = fetchurl {
-    url = "https://github.com/obsidianmd/obsidian-releases/releases/download/v${version}/obsidian-${version}${extension}";
-    inherit sha256;
+    url = "https://github.com/obsidianmd/obsidian-releases/releases/download/v${version}/${filename}";
+    sha256 = if stdenv.isDarwin then "128kgqkf54ljkglwqa6i0qnfqhhmsv7hwbaqnml95n5dzyxrbm4s" else "00gip6pvkbywywlx71j87sxyh8yhkd36i1ydncbpnhsplr6smsq3";
   };
 
-  sha256 = rec {
-    x86_64-linux = "v3Zm5y8V1KyWDQeJxhryBojz56OTT7gfT+pLGDUD4zs=";
-    x86_64-darwin = "m/81uuDhMJJ1tHTUPww+xNdwsaYCOmeNtbjdwMAwhBU=";
-    aarch64-darwin = x86_64-darwin;
-  }.${system};
-
-  extension = rec {
-    x86_64-linux = ".tar.gz";
-    x86_64-darwin = "-universal.dmg";
-    aarch64-darwin = x86_64-darwin;
-  }.${system};
-
   linux = stdenv.mkDerivation rec {
     icon = fetchurl {
       url = "https://forum.obsidian.md/uploads/default/original/1X/bf119bd48f748f4fd2d65f2d1bb05d3c806883b5.png";
@@ -49,8 +38,9 @@ let
       desktopName = "Obsidian";
       comment = "Knowledge base";
       icon = "obsidian";
-      exec = "obsidian";
+      exec = "obsidian %u";
       categories = [ "Office" ];
+      mimeTypes = [ "x-scheme-handler/obsidian" ];
     };
 
     inherit pname version src;
diff --git a/nixpkgs/pkgs/applications/misc/octoprint/default.nix b/nixpkgs/pkgs/applications/misc/octoprint/default.nix
index eda78c54a10e..4dc6f8763189 100644
--- a/nixpkgs/pkgs/applications/misc/octoprint/default.nix
+++ b/nixpkgs/pkgs/applications/misc/octoprint/default.nix
@@ -34,6 +34,47 @@ let
         (mkOverride "markdown" "3.1.1" "2e50876bcdd74517e7b71f3e7a76102050edec255b3983403f1a63e7c8a41e7a")
         (mkOverride "markupsafe" "1.1.1" "29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b")
 
+        # black uses hash, not sha256 identifier. Newer black version requires newer click version
+        (
+          self: super: {
+            black = super.black.overridePythonAttrs (oldAttrs: rec {
+              version = "21.12b0";
+              src = oldAttrs.src.override {
+                inherit version;
+                hash = "sha256-d7gPaTpWni5SeVhFljTxjfmwuiYluk4MLV2lvkLm8rM=";
+              };
+              doCheck = false;
+            });
+          }
+        )
+
+        # tests need network
+        (
+          self: super: {
+            curio = super.curio.overridePythonAttrs (oldAttrs: rec {
+              disabledTests = [
+                "test_timeout"
+                "test_ssl_outgoing"
+              ];
+            });
+          }
+        )
+
+        # tests need network
+        (
+          self: super: {
+            trio = super.trio.overridePythonAttrs (oldAttrs: rec {
+              disabledTests = [
+                "test_local_address_real"
+              ];
+              disabledTestPaths = [
+                "trio/tests/test_exports.py"
+                "trio/tests/test_socket.py"
+              ];
+            });
+          }
+        )
+
         # Requires flask<2, cannot mkOverride because tests need to be disabled
         (
           self: super: {
@@ -400,7 +441,7 @@ let
                 homepage = "https://octoprint.org/";
                 description = "The snappy web interface for your 3D printer";
                 license = licenses.agpl3Only;
-                maintainers = with maintainers; [ abbradar gebner WhittlesJr ];
+                maintainers = with maintainers; [ abbradar gebner WhittlesJr gador ];
               };
             };
           }
diff --git a/nixpkgs/pkgs/applications/misc/orca/default.nix b/nixpkgs/pkgs/applications/misc/orca/default.nix
index d0b2c85f1078..63923188db7b 100644
--- a/nixpkgs/pkgs/applications/misc/orca/default.nix
+++ b/nixpkgs/pkgs/applications/misc/orca/default.nix
@@ -34,13 +34,13 @@
 
 buildPythonApplication rec {
   pname = "orca";
-  version = "41.2";
+  version = "42.0";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "1/Jy6ps3+9ZFTkAh5GU4okcibhwKxXDW4rhOlxmqKv4=";
+    sha256 = "LCUXmrQbJgsY8f+Jm+uv5olDi0nf/SEd78l2olCT9zo=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/applications/misc/organicmaps/default.nix b/nixpkgs/pkgs/applications/misc/organicmaps/default.nix
new file mode 100644
index 000000000000..7e320e5f367a
--- /dev/null
+++ b/nixpkgs/pkgs/applications/misc/organicmaps/default.nix
@@ -0,0 +1,91 @@
+{ lib
+, mkDerivation
+, stdenv
+, fetchFromGitHub
+, cmake
+, ninja
+, pkg-config
+, which
+, python3
+, rsync
+, makeWrapper
+, qtbase
+, qtsvg
+, libGLU
+, libGL
+, zlib
+, icu
+, freetype
+}:
+
+mkDerivation rec {
+  pname = "organicmaps";
+  version = "2022.03.23-4-android";
+
+  src = fetchFromGitHub {
+    owner = "organicmaps";
+    repo = "organicmaps";
+    rev = version;
+    sha256 = "sha256-4VBsHq8z/odD7Nrk9e0sYMEBBLeTAHsWsdgPIN1KVZo=";
+    fetchSubmodules = true;
+  };
+
+  postPatch = ''
+    # Disable certificate check. It's dependent on time
+    echo "exit 0" > tools/unix/check_cert.sh
+
+    # crude fix for https://github.com/organicmaps/organicmaps/issues/1862
+    echo "echo ${lib.replaceStrings ["." "-" "android"] ["" "" ""] version}" > tools/unix/version.sh
+  '';
+
+  nativeBuildInputs = [
+    cmake
+    ninja
+    pkg-config
+    which
+    python3
+    rsync
+    makeWrapper
+  ];
+
+  # Most dependencies are vendored
+  buildInputs = [
+    qtbase
+    qtsvg
+    libGLU
+    libGL
+    zlib
+    icu
+    freetype
+  ];
+
+  # Yes, this is PRE configure. The configure phase uses cmake
+  preConfigure = ''
+    bash ./configure.sh
+  '';
+
+  postInstall = ''
+    install -Dm755 OMaps $out/bin/OMaps
+    # Tell the program that the read-only and the read-write data locations
+    # are different, and create the read-write one.
+    wrapProgram $out/bin/OMaps \
+      --add-flags "-resources_path $out/share/organicmaps/data" \
+      --add-flags '-data_path "''${XDG_DATA_HOME:-''${HOME}/.local/share}/OMaps"' \
+      --run 'mkdir -p "''${XDG_DATA_HOME:-''${HOME}/.local/share}/OMaps"'
+
+    mkdir -p $out/share/organicmaps
+    cp -r ../data $out/share/organicmaps/data
+    install -Dm644 ../qt/res/logo.png $out/share/icons/hicolor/96x96/apps/organicmaps.png
+    install -Dm644 ../qt/res/OrganicMaps.desktop $out/share/applications/OrganicMaps.desktop
+  '';
+
+  meta = with lib; {
+    homepage = "https://organicmaps.app/";
+    description = "Detailed Offline Maps for Travellers, Tourists, Hikers and Cyclists";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fgaz ];
+    platforms = platforms.all;
+    mainProgram = "OMaps";
+    broken = stdenv.isDarwin; # "invalid application of 'sizeof' to a function type"
+  };
+}
diff --git a/nixpkgs/pkgs/applications/misc/pdfdiff/default.nix b/nixpkgs/pkgs/applications/misc/pdfdiff/default.nix
index 20a953384971..e21b06bf25ca 100644
--- a/nixpkgs/pkgs/applications/misc/pdfdiff/default.nix
+++ b/nixpkgs/pkgs/applications/misc/pdfdiff/default.nix
@@ -1,9 +1,7 @@
 { lib, python2Packages, fetchurl, xpdf }:
-let
-  py = python2Packages;
-in
-py.buildPythonApplication rec {
-  name = "pdfdiff-${version}";
+
+python2Packages.buildPythonApplication rec {
+  pname = "pdfdiff";
   version = "0.92";
 
   src = fetchurl {
diff --git a/nixpkgs/pkgs/applications/misc/pdfpc/default.nix b/nixpkgs/pkgs/applications/misc/pdfpc/default.nix
index ec78c43dbe04..9bf5907a23be 100644
--- a/nixpkgs/pkgs/applications/misc/pdfpc/default.nix
+++ b/nixpkgs/pkgs/applications/misc/pdfpc/default.nix
@@ -3,13 +3,12 @@
 , webkitgtk, discount, json-glib }:
 
 stdenv.mkDerivation rec {
-  name = "${product}-${version}";
-  product = "pdfpc";
+  pname = "pdfpc";
   version = "4.5.0";
 
   src = fetchFromGitHub {
-    repo = product;
-    owner = product;
+    repo = "pdfpc";
+    owner = "pdfpc";
     rev = "v${version}";
     sha256 = "0bmy51w6ypz927hxwp5g7wapqvzqmsi3w32rch6i3f94kg1152ck";
   };
diff --git a/nixpkgs/pkgs/applications/misc/phoc/default.nix b/nixpkgs/pkgs/applications/misc/phoc/default.nix
index 7acdcdf02c45..ee6c213fbf2c 100644
--- a/nixpkgs/pkgs/applications/misc/phoc/default.nix
+++ b/nixpkgs/pkgs/applications/misc/phoc/default.nix
@@ -9,6 +9,7 @@
 , wrapGAppsHook
 , libinput
 , gnome
+, gnome-desktop
 , glib
 , gtk3
 , wayland
@@ -33,6 +34,12 @@ let
         url = "https://github.com/swaywm/wlroots/commit/66593071bc90a1cccaeedc636eb6f33c973f5362.patch";
         sha256 = "sha256-yKf/twdUzrII5IakH7AH6LGyPDo9Nl/gIB0pTThSTfY=";
       })
+      # xdg-activation: Allow to submit tokens
+      (fetchpatch {
+        name = "allow-to-submit-tokens.patch";
+        url = "https://gitlab.freedesktop.org/wlroots/wlroots/-/commit/4c59f7d46a949548caa55805b00922f846d58525.patch";
+        sha256 = "sha256-1kUIt6lV3HXN2BBBER8sjYVLTvgqELdSeFullJjNGo8=";
+      })
       # xwayland: Allow to retrieve startup-id via _NET_STARTUP_INFO
       (fetchpatch {
         name = "allow-to-retrieve-startup-id-via-net-startup-info.patch";
@@ -43,7 +50,7 @@ let
   });
 in stdenv.mkDerivation rec {
   pname = "phoc";
-  version = "0.12.0";
+  version = "0.13.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
@@ -51,7 +58,7 @@ in stdenv.mkDerivation rec {
     owner = "Phosh";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-kfMM/YjgAktpOKHNcxxl1FPVbgATPDNRhEJ/sVT1LYs=";
+    sha256 = "sha256-65u59S6ntvkoQUO5BvkHZVcbj6cHIU4CgHWjzFo6s94=";
   };
 
   nativeBuildInputs = [
@@ -68,7 +75,7 @@ in stdenv.mkDerivation rec {
     libinput
     glib
     gtk3
-    gnome.gnome-desktop
+    gnome-desktop
     # For keybindings settings schemas
     gnome.mutter
     wayland
diff --git a/nixpkgs/pkgs/applications/misc/prusa-slicer/default.nix b/nixpkgs/pkgs/applications/misc/prusa-slicer/default.nix
index 6ae7f422f022..dd6184f4ff6f 100644
--- a/nixpkgs/pkgs/applications/misc/prusa-slicer/default.nix
+++ b/nixpkgs/pkgs/applications/misc/prusa-slicer/default.nix
@@ -4,7 +4,7 @@
 }:
 stdenv.mkDerivation rec {
   pname = "prusa-slicer";
-  version = "2.4.0";
+  version = "2.4.1";
 
   nativeBuildInputs = [
     cmake
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "prusa3d";
     repo = "PrusaSlicer";
-    sha256 = "1mb7v0khrmsgy3inmh4mjn709jlhx422kvbnrhsqziph2wwak9bz";
+    sha256 = "sha256-4L/x8cMQee3n20iyWEiXd62NtA6BYM1SHkCn8ZlDNWA=";
     rev = "version_${version}";
   };
 
diff --git a/nixpkgs/pkgs/applications/misc/prusa-slicer/super-slicer.nix b/nixpkgs/pkgs/applications/misc/prusa-slicer/super-slicer.nix
index 7a4d2ee1d254..c3037f0da8d2 100644
--- a/nixpkgs/pkgs/applications/misc/prusa-slicer/super-slicer.nix
+++ b/nixpkgs/pkgs/applications/misc/prusa-slicer/super-slicer.nix
@@ -45,7 +45,7 @@ let
 
     meta = with lib; {
       inherit description;
-      homepage = "https://github.com/supermerili/SuperSlicer";
+      homepage = "https://github.com/supermerill/SuperSlicer";
       license = licenses.agpl3;
       maintainers = with maintainers; [ cab404 moredread ];
       mainProgram = "superslicer";
diff --git a/nixpkgs/pkgs/applications/misc/qmetro/default.nix b/nixpkgs/pkgs/applications/misc/qmetro/default.nix
index 70c41ff3142f..2678f744f8ed 100644
--- a/nixpkgs/pkgs/applications/misc/qmetro/default.nix
+++ b/nixpkgs/pkgs/applications/misc/qmetro/default.nix
@@ -1,12 +1,11 @@
 { lib, stdenv, fetchurl, qmake4Hook, unzip, qt4 }:
 
 stdenv.mkDerivation rec {
-  name = "${project}-${version}";
-  project = "qmetro";
+  pname = "qmetro";
   version = "0.7.1";
 
   src = fetchurl {
-    url = "mirror://sourceforge/${project}/${name}.zip";
+    url = "mirror://sourceforge/qmetro/qmetro-${version}.zip";
     sha256 = "1zdj87lzcr43gr2h05g17z31pd22n5kxdwbvx7rx656rmhv0sjq5";
   };
 
diff --git a/nixpkgs/pkgs/applications/misc/regextester/default.nix b/nixpkgs/pkgs/applications/misc/regextester/default.nix
index b7eb2367528d..2a00cb92b9d1 100644
--- a/nixpkgs/pkgs/applications/misc/regextester/default.nix
+++ b/nixpkgs/pkgs/applications/misc/regextester/default.nix
@@ -37,7 +37,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    pantheon.elementary-icon-theme
     pantheon.granite
     glib
     libgee
diff --git a/nixpkgs/pkgs/applications/misc/sigi/default.nix b/nixpkgs/pkgs/applications/misc/sigi/default.nix
index 674432e7a024..62b8dd576591 100644
--- a/nixpkgs/pkgs/applications/misc/sigi/default.nix
+++ b/nixpkgs/pkgs/applications/misc/sigi/default.nix
@@ -2,11 +2,11 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "sigi";
-  version = "3.0.2";
+  version = "3.0.3";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-N+8DdokiYW5mHIQJisdTja8xMVGip37X6c/xBYnQaRU=";
+    sha256 = "sha256-tjhNE20GE1L8kvhdI5Mc90I75q8szOIV40vq2CBt98U=";
   };
 
   nativeBuildInputs = [ installShellFiles ];
@@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec {
     installManPage sigi.1
   '';
 
-  cargoSha256 = "sha256-vO9ocTDcGt/T/sLCP+tCHXihV1H2liFDjI7OhhmPd3I=";
+  cargoSha256 = "sha256-0e0r6hfXGJmrc6tgCqq2dQXu2MhkThViZwdG3r3g028=";
 
   passthru.tests.version = testVersion { package = sigi; };
 
diff --git a/nixpkgs/pkgs/applications/misc/sleepyhead/default.nix b/nixpkgs/pkgs/applications/misc/sleepyhead/default.nix
index 94c47c23afef..63a45758d932 100644
--- a/nixpkgs/pkgs/applications/misc/sleepyhead/default.nix
+++ b/nixpkgs/pkgs/applications/misc/sleepyhead/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, mkDerivation, fetchgit, zlib, libGLU, libX11, qtbase, qtwebkit, qtserialport, wrapQtAppsHook }:
 
-let
-  name = "sleepyhead-${version}";
+mkDerivation {
+  pname = "sleepyhead";
   version = "1.0.0-beta-git";
-in mkDerivation {
-  inherit name;
 
   src = fetchgit {
     url = "https://gitlab.com/sleepyhead/sleepyhead-code.git";
diff --git a/nixpkgs/pkgs/applications/misc/slic3r/default.nix b/nixpkgs/pkgs/applications/misc/slic3r/default.nix
index f4dd6c7185f5..8d929e0eef58 100644
--- a/nixpkgs/pkgs/applications/misc/slic3r/default.nix
+++ b/nixpkgs/pkgs/applications/misc/slic3r/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchgit, perl, makeWrapper
+{ lib, stdenv, fetchFromGitHub, perl, makeWrapper
 , makeDesktopItem, which, perlPackages, boost
 }:
 
@@ -6,10 +6,11 @@ stdenv.mkDerivation rec {
   version = "1.3.0";
   pname = "slic3r";
 
-  src = fetchgit {
-    url = "git://github.com/alexrj/Slic3r";
+  src = fetchFromGitHub {
+    owner = "alexrj";
+    repo = "Slic3r";
     rev = version;
-    sha256 = "1pg4jxzb7f58ls5s8mygza8kqdap2c50kwlsdkf28bz1xi611zbi";
+    sha256 = "sha256-cf0QTOzhLyTcbJryCQoTVzU8kfrPV6SLpqi4s36X5N0=";
   };
 
   buildInputs =
diff --git a/nixpkgs/pkgs/applications/misc/slmenu/default.nix b/nixpkgs/pkgs/applications/misc/slmenu/default.nix
index 16145a915feb..80aedd574187 100644
--- a/nixpkgs/pkgs/applications/misc/slmenu/default.nix
+++ b/nixpkgs/pkgs/applications/misc/slmenu/default.nix
@@ -1,30 +1,19 @@
 {lib, stdenv, fetchhg}:
-let
-  s =
-  rec {
-    baseName = "slmenu";
-    version = "hg-${date}";
-    date = "2012-02-01";
-    name = "${baseName}-${version}";
+
+stdenv.mkDerivation {
+  pname = "slmenu";
+  version = "hg-2012-02-01";
+
+  src = fetchhg {
     url = "https://bitbucket.org/rafaelgg/slmenu/";
     rev = "7e74fa5db73e8b018da48d50dbbaf11cb5c62d13";
     sha256 = "0zb7mm8344d3xmvrl62psazcabfk75pp083jqkmywdsrikgjagv6";
   };
-  buildInputs = [
-  ];
-in
-stdenv.mkDerivation {
-  inherit (s) name version;
-  inherit buildInputs;
-  src = fetchhg {
-    inherit (s) url sha256;
-  };
   makeFlags = [ "PREFIX=$(out)" ];
-  meta = {
-    inherit (s) version;
+  meta = with lib; {
     description = "A console dmenu-like tool";
-    license = lib.licenses.mit;
-    maintainers = [lib.maintainers.raskin];
-    platforms = lib.platforms.linux;
+    license = licenses.mit;
+    maintainers = with maintainers; [ raskin ];
+    platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/applications/misc/spicetify-cli/default.nix b/nixpkgs/pkgs/applications/misc/spicetify-cli/default.nix
index 08a54f49584a..07d7d605d809 100644
--- a/nixpkgs/pkgs/applications/misc/spicetify-cli/default.nix
+++ b/nixpkgs/pkgs/applications/misc/spicetify-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "spicetify-cli";
-  version = "2.9.2";
+  version = "2.9.4";
 
   src = fetchFromGitHub {
     owner = "khanhas";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-r6xm0Gq2QXWQEcYEu1n0y6S4r4odzYP8Srr0U+jZr6U=";
+    sha256 = "sha256-dHkbjmb9qlMO+pYUmdnoztkrMqPW6GfceAUxgnRmlDA=";
   };
 
-  vendorSha256 = "sha256-g0RYIVIq4oMXdRZDBDnVYg7ombN5WEo/6O9hChQvOYs=";
+  vendorSha256 = "sha256-zYIbtcDM9iYSRHagvI9D284Y7w0ZxG4Ba1p4jqmQyng=";
 
   # used at runtime, but not installed by default
   postInstall = ''
diff --git a/nixpkgs/pkgs/applications/misc/stog/default.nix b/nixpkgs/pkgs/applications/misc/stog/default.nix
index 91a77d8de6fd..1d6373592fbf 100644
--- a/nixpkgs/pkgs/applications/misc/stog/default.nix
+++ b/nixpkgs/pkgs/applications/misc/stog/default.nix
@@ -10,7 +10,7 @@ else
 buildDunePackage rec {
   pname = "stog";
   version = "0.20.0";
-  useDune2 = true;
+  duneVersion = "3";
   minimalOCamlVersion = "4.12";
   src = fetchFromGitLab {
     domain = "framagit.org";
diff --git a/nixpkgs/pkgs/applications/misc/stork/default.nix b/nixpkgs/pkgs/applications/misc/stork/default.nix
index 11face45145b..48e2859fa849 100644
--- a/nixpkgs/pkgs/applications/misc/stork/default.nix
+++ b/nixpkgs/pkgs/applications/misc/stork/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "stork";
-  version = "1.4.0";
+  version = "1.4.1";
 
   src = fetchFromGitHub {
     owner = "jameslittle230";
     repo = "stork";
     rev = "v${version}";
-    sha256 = "sha256-9fylJcUuModemkBRnXeFfB1b+CD9IvTxW+CnlqaUb60=";
+    sha256 = "sha256-aBsxRLUufVUauySCxZKk/ZfcU/5KR7jOHmnx6mHmsFs=";
   };
 
-  cargoSha256 = "sha256-j7OXl66xuTuP6hWJs+xHrwtaBGAYt02OESCN6FH3KX0=";
+  cargoSha256 = "sha256-oNoWGdXYfp47IpqU1twbORPOYrHjArNf43Zyeyat4Xs=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/applications/misc/taskwarrior-tui/default.nix b/nixpkgs/pkgs/applications/misc/taskwarrior-tui/default.nix
index 7b58ede38344..7d730421398c 100644
--- a/nixpkgs/pkgs/applications/misc/taskwarrior-tui/default.nix
+++ b/nixpkgs/pkgs/applications/misc/taskwarrior-tui/default.nix
@@ -5,19 +5,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "taskwarrior-tui";
-  version = "0.20.1";
+  version = "0.21.1";
 
   src = fetchFromGitHub {
     owner = "kdheepak";
     repo = "taskwarrior-tui";
     rev = "v${version}";
-    sha256 = "sha256-NE0GKQ3ROD+AF5FCuaKJ+8g+wiYobVK8swK0F9jo2Lk=";
+    sha256 = "sha256-fgoK7Y+3h2VFfP8yiR8JM8Xf7UJbkX9PO1RoJRoYLW4=";
   };
 
   # Because there's a test that requires terminal access
   doCheck = false;
 
-  cargoSha256 = "sha256-hO5rff3bm8g3JYh5vFhj2L3f/hOgP0ZA0EhO3YF5DFw=";
+  cargoSha256 = "sha256-3rDvla1mCcQclALbomUTvE3aLzsMeIjcIbEv4KfCKZE=";
 
   meta = with lib; {
     description = "A terminal user interface for taskwarrior ";
diff --git a/nixpkgs/pkgs/applications/misc/tootle/default.nix b/nixpkgs/pkgs/applications/misc/tootle/default.nix
index f29c471d04b0..c11ad8d1e981 100644
--- a/nixpkgs/pkgs/applications/misc/tootle/default.nix
+++ b/nixpkgs/pkgs/applications/misc/tootle/default.nix
@@ -68,6 +68,11 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
+    # Fix build with vala 0.56
+    # https://github.com/bleakgrey/tootle/pull/346
+    substituteInPlace src/Application.vala \
+      --replace "public const GLib.ActionEntry[] app_entries" "private const GLib.ActionEntry[] app_entries"
+
     chmod +x meson/post_install.py
     patchShebangs meson/post_install.py
   '';
diff --git a/nixpkgs/pkgs/applications/misc/tpmmanager/default.nix b/nixpkgs/pkgs/applications/misc/tpmmanager/default.nix
index b2839a97efcc..a94363f4600c 100644
--- a/nixpkgs/pkgs/applications/misc/tpmmanager/default.nix
+++ b/nixpkgs/pkgs/applications/misc/tpmmanager/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, fetchgit, qt4, qmake4Hook, trousers }:
+{ lib, stdenv, fetchFromGitHub, qt4, qmake4Hook, trousers }:
 
 stdenv.mkDerivation rec {
   version = "0.8.1";
   pname = "tpmmanager";
 
-  src = fetchgit {
-    url = "https://github.com/Sirrix-AG/TPMManager";
-    rev = "9f989206635a6d2c1342576c90fa73eb239519cd";
-    sha256 = "24a606f88fed67ed0d0e61dc220295e9e1ab8db3ef3d028fa34b04ff30652d8e";
+  src = fetchFromGitHub {
+    owner = "Rohde-Schwarz";
+    repo = "TPMManager";
+    rev = "v${version}";
+    sha256 = "sha256-JKYG+I/tZ+0NDmHcIgKV6eGrjbPvPQKPo0sE/zBlLY4=";
   };
 
   nativeBuildInputs = [ qmake4Hook ];
diff --git a/nixpkgs/pkgs/applications/misc/tuhi/default.nix b/nixpkgs/pkgs/applications/misc/tuhi/default.nix
index 4bd0c914d3a1..bf939cfa1758 100644
--- a/nixpkgs/pkgs/applications/misc/tuhi/default.nix
+++ b/nixpkgs/pkgs/applications/misc/tuhi/default.nix
@@ -13,15 +13,15 @@
 }:
 
 python3Packages.buildPythonApplication rec {
-  name = "tuhi";
+  pname = "tuhi";
   version = "0.5";
 
   format = "other";
 
   src = fetchFromGitHub {
     owner = "tuhiproject";
-    repo = name;
-    rev = "${version}";
+    repo = "tuhi";
+    rev = version;
     sha256 = "17kggm9c423vj7irxx248fjc8sxvkp9w1mgawlx1snrii817p3db";
   };
 
diff --git a/nixpkgs/pkgs/applications/misc/urlview/default.nix b/nixpkgs/pkgs/applications/misc/urlview/default.nix
index 0374fb91844d..2eca4cfccb31 100644
--- a/nixpkgs/pkgs/applications/misc/urlview/default.nix
+++ b/nixpkgs/pkgs/applications/misc/urlview/default.nix
@@ -1,15 +1,15 @@
 { lib, stdenv, fetchurl, ncurses, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  version    = "0.9";
+  pname = "urlview";
+  _version    = "0.9";
   patchLevel = "19";
-
-  name = "urlview-${version}-${patchLevel}";
+  version = "${_version}-${patchLevel}";
 
   urlBase = "mirror://debian/pool/main/u/urlview/";
 
   src = fetchurl {
-    url = urlBase + "urlview_${version}.orig.tar.gz";
+    url = urlBase + "urlview_${_version}.orig.tar.gz";
     sha256 = "746ff540ccf601645f500ee7743f443caf987d6380e61e5249fc15f7a455ed42";
   };
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   '';
 
   debianPatches = fetchurl {
-    url = urlBase + "urlview_${version}-${patchLevel}.diff.gz";
+    url = urlBase + "urlview_${_version}-${patchLevel}.diff.gz";
     sha256 = "056883c17756f849fb9235596d274fbc5bc0d944fcc072bdbb13d1e828301585";
   };
 
diff --git a/nixpkgs/pkgs/applications/misc/xmr-stak/default.nix b/nixpkgs/pkgs/applications/misc/xmr-stak/default.nix
index cb4233be8ec3..91c8c69fe930 100644
--- a/nixpkgs/pkgs/applications/misc/xmr-stak/default.nix
+++ b/nixpkgs/pkgs/applications/misc/xmr-stak/default.nix
@@ -11,7 +11,7 @@ let
 in
 
 stdenv'.mkDerivation rec {
-  name = "xmr-stak-${version}";
+  pname = "xmr-stak";
   version = "2.10.8";
 
   src = fetchFromGitHub {
diff --git a/nixpkgs/pkgs/applications/misc/zettlr/default.nix b/nixpkgs/pkgs/applications/misc/zettlr/default.nix
index 0d4c21dbfead..b0d1b79509a6 100644
--- a/nixpkgs/pkgs/applications/misc/zettlr/default.nix
+++ b/nixpkgs/pkgs/applications/misc/zettlr/default.nix
@@ -10,11 +10,11 @@
 # Based on https://gist.github.com/msteen/96cb7df66a359b827497c5269ccbbf94 and joplin-desktop nixpkgs.
 let
   pname = "zettlr";
-  version = "2.2.3";
+  version = "2.2.4";
   name = "${pname}-${version}";
   src = fetchurl {
     url = "https://github.com/Zettlr/Zettlr/releases/download/v${version}/Zettlr-${version}-x86_64.appimage";
-    sha256 = "sha256-BXStGhCEXpQRyLjcS00CM/NI/NVRKpLTlW8Xh51fV8w=";
+    sha256 = "sha256-lzXciToyUsHl8WV0IvdP6R2pYegL7/G04YPLb6gbCgQ=";
   };
   appimageContents = appimageTools.extractType2 {
     inherit name src;
diff --git a/nixpkgs/pkgs/applications/misc/zscroll/default.nix b/nixpkgs/pkgs/applications/misc/zscroll/default.nix
index 3acac8b3c68d..d3424938dd9b 100644
--- a/nixpkgs/pkgs/applications/misc/zscroll/default.nix
+++ b/nixpkgs/pkgs/applications/misc/zscroll/default.nix
@@ -1,9 +1,9 @@
 { lib, python3, python3Packages, fetchFromGitHub }:
 
-let version = "1.0"; in
+python3Packages.buildPythonApplication rec {
+  pname = "zscroll";
+  version = "1.0";
 
-python3Packages.buildPythonApplication {
-  name = "zscroll-${version}";
   # don't prefix with python version
   namePrefix = "";
 
diff --git a/nixpkgs/pkgs/applications/networking/browsers/brave/default.nix b/nixpkgs/pkgs/applications/networking/browsers/brave/default.nix
index f5965767cd8f..65627a490d10 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/brave/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/brave/default.nix
@@ -91,11 +91,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "brave";
-  version = "1.36.111";
+  version = "1.36.122";
 
   src = fetchurl {
     url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
-    sha256 = "bXZsUqLaP43wJV3Cehgblw1G179HgGhToSL36v5QseA=";
+    sha256 = "aBHoEu1egRPMpeUBgRl2V5J3op1Ju+CvprG14dIWc8M=";
   };
 
   dontConfigure = true;
diff --git a/nixpkgs/pkgs/applications/networking/browsers/chromium/common.nix b/nixpkgs/pkgs/applications/networking/browsers/chromium/common.nix
index 9b18590817f8..6dd6d98c0efd 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/chromium/common.nix
@@ -23,7 +23,7 @@
 , libusb1, re2
 , ffmpeg, libxslt, libxml2
 , nasm
-, nspr, nss, systemd
+, nspr, nss
 , util-linux, alsa-lib
 , bison, gperf, libkrb5
 , glib, gtk3, dbus-glib
@@ -47,6 +47,8 @@
 , ungoogled ? false, ungoogled-chromium
 # Optional dependencies:
 , libgcrypt ? null # gnomeSupport || cupsSupport
+, systemdSupport ? stdenv.isLinux
+, systemd
 }:
 
 buildFun:
@@ -114,7 +116,7 @@ let
   };
 
   base = rec {
-    name = "${packageName}-unwrapped-${version}";
+    pname = "${packageName}-unwrapped";
     inherit (upstream-info) version;
     inherit packageName buildType buildPath;
 
@@ -139,7 +141,7 @@ let
       libusb1 re2
       ffmpeg libxslt libxml2
       nasm
-      nspr nss systemd
+      nspr nss
       util-linux alsa-lib
       bison gperf libkrb5
       glib gtk3 dbus-glib
@@ -151,7 +153,8 @@ let
       libdrm wayland mesa.drivers libxkbcommon
       curl
       libepoxy
-    ] ++ optionals gnomeSupport [ gnome2.GConf libgcrypt ]
+    ] ++ optional systemdSupport systemd
+      ++ optionals gnomeSupport [ gnome2.GConf libgcrypt ]
       ++ optional gnomeKeyringSupport libgnome-keyring3
       ++ optionals cupsSupport [ libgcrypt cups ]
       ++ optional pulseSupport libpulseaudio;
@@ -204,9 +207,10 @@ let
       sed -i -e 's@"\(#!\)\?.*xdg-@"\1${xdg-utils}/bin/xdg-@' \
         chrome/browser/shell_integration_linux.cc
 
+    '' + lib.optionalString systemdSupport ''
       sed -i -e '/lib_loader.*Load/s!"\(libudev\.so\)!"${lib.getLib systemd}/lib/\1!' \
         device/udev_linux/udev?_loader.cc
-
+    '' + ''
       sed -i -e '/libpci_loader.*Load/s!"\(libpci\.so\)!"${pciutils}/lib/\1!' \
         gpu/config/gpu_info_collector_linux.cc
 
diff --git a/nixpkgs/pkgs/applications/networking/browsers/chromium/default.nix b/nixpkgs/pkgs/applications/networking/browsers/chromium/default.nix
index 0202ead46052..e8d9a13f9ac7 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/chromium/default.nix
@@ -157,8 +157,8 @@ let
     else browser;
 
 in stdenv.mkDerivation {
-  name = lib.optionalString ungoogled "ungoogled-"
-    + "chromium${suffix}-${version}";
+  pname = lib.optionalString ungoogled "ungoogled-"
+    + "chromium${suffix}";
   inherit version;
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json b/nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json
index 8385ac2e0098..c3ffe5cf116d 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json
+++ b/nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json
@@ -1,8 +1,8 @@
 {
   "stable": {
-    "version": "99.0.4844.51",
-    "sha256": "1qxsn8zvvvsnn0k7nn606rhaial8ikrlfh175msqpp50xibjxicp",
-    "sha256bin64": "04kqfppa88g2q54vp53avyyhqzrxljz49p4wqk76kq7fz2rm94x1",
+    "version": "99.0.4844.84",
+    "sha256": "05bma8lsm5lad58mlfiv8bg0fw5k5mxh0v6g1ik7xp2bsd71iv10",
+    "sha256bin64": "0sdnsnp7hnpip91hwbz3hiw2727g0a3ydf55ldqv9bgik3vn1wln",
     "deps": {
       "gn": {
         "version": "2022-01-10",
@@ -12,16 +12,16 @@
       }
     },
     "chromedriver": {
-      "version": "99.0.4844.35",
-      "sha256_linux": "1q10mn34s03zy0nqcgrjd7ry53g4paxpwcki1bgicpcrwnjlzc3y",
-      "sha256_darwin": "0mcfry8vqqc8n1sgyn2azr8pc4lgjnkpnhz0ggjqm12njq0lfjfx",
-      "sha256_darwin_aarch64": "19wpqd5mq2vrgma899vbbdqhg660x47v4ppbz1r8dcg5r5y93x3s"
+      "version": "99.0.4844.51",
+      "sha256_linux": "1r5wbcfbj9s216jyjasmiscsrsix9ap3pplp12rznrwn4898p51y",
+      "sha256_darwin": "1nak8p5hdrw94lx73m9c110zrwag4qr6487dhplm3qfrnrkdh8wp",
+      "sha256_darwin_aarch64": "0hkcx6a8bcjlbmp6z3ld23mi1kpyjn2g7m3ns9qw6ns4x3rn5i3r"
     }
   },
   "beta": {
-    "version": "100.0.4896.30",
-    "sha256": "06zfx9f6wv4j4fz7ss8pjlxfcsrwrvwqkmdk5bin7slxg4sq31fl",
-    "sha256bin64": "06s2p81grqrxl3p9ksy9q7s3s42ijmcw316nb51f7zx4ijk5hzya",
+    "version": "100.0.4896.56",
+    "sha256": "0vdyddxhmkw9bqwx5j19h69swx9ysiipsmcc1sjl0qv8bn8f790z",
+    "sha256bin64": "09h4fxsx0q5b0gn258xnmk11qz7ql8flpn4mq5x201abmv29y856",
     "deps": {
       "gn": {
         "version": "2022-01-21",
@@ -32,22 +32,22 @@
     }
   },
   "dev": {
-    "version": "101.0.4929.5",
-    "sha256": "0330vs0np23x390lfnc5gzmbnkdak590rzqpa7abpfx1gzj1rd3s",
-    "sha256bin64": "0670z86sz2wxpfxda32cirara7yg87g67cymh8ik3w99g5q7cb1d",
+    "version": "101.0.4951.7",
+    "sha256": "0xnvbiqi50hgky35qaivcyzfp05nnwfwqrd50dksqkzycl8avb4z",
+    "sha256bin64": "19my3zr9d3w2ypl9cm1xa15vhyv9add1f283alb9fmh2qwhl4scg",
     "deps": {
       "gn": {
-        "version": "2022-03-01",
+        "version": "2022-03-14",
         "url": "https://gn.googlesource.com/gn",
-        "rev": "d7c2209cebcfe37f46dba7be4e1a7000ffc342fb",
-        "sha256": "0b024mr8bdsnkkd3qkh097a7w0gpicarijnsbpfgkf6imnkccg5w"
+        "rev": "bd99dbf98cbdefe18a4128189665c5761263bcfb",
+        "sha256": "0nql15ckjqkm001xajq3qyn4h4q80i7x6dm9zinxxr1a8q5lppx3"
       }
     }
   },
   "ungoogled-chromium": {
-    "version": "99.0.4844.51",
-    "sha256": "1qxsn8zvvvsnn0k7nn606rhaial8ikrlfh175msqpp50xibjxicp",
-    "sha256bin64": "04kqfppa88g2q54vp53avyyhqzrxljz49p4wqk76kq7fz2rm94x1",
+    "version": "99.0.4844.84",
+    "sha256": "05bma8lsm5lad58mlfiv8bg0fw5k5mxh0v6g1ik7xp2bsd71iv10",
+    "sha256bin64": "0sdnsnp7hnpip91hwbz3hiw2727g0a3ydf55ldqv9bgik3vn1wln",
     "deps": {
       "gn": {
         "version": "2022-01-10",
@@ -56,8 +56,8 @@
         "sha256": "1103lf38h7412949j6nrk48m2vv2rrxacn42sjg33lg88nyv7skv"
       },
       "ungoogled-patches": {
-        "rev": "99.0.4844.51-1",
-        "sha256": "0rs10jrng63lk4xgnqpgc8zxaj6lp70csbx6r0ihpv4z3rdn37va"
+        "rev": "99.0.4844.84-1",
+        "sha256": "1j02zcam09mdw7wg30r1mx27b8bw0s9dvk4qjl6vrhp24rbmscs7"
       }
     }
   }
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix b/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
index 7fa0ae18549f..ab3cfb9ef52b 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
@@ -1,985 +1,985 @@
 {
-  version = "98.0b5";
+  version = "99.0b6";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ach/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ach/firefox-99.0b6.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "d572a56bbdaf004ff33ca5ea1079680a2af9b5b8ba9ca3989b34ba6d5d34abbb";
+      sha256 = "a540c52dbb973a85ee0f9fb116f7812e624d925dce77fe14a310f4bf5e6a0b58";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/af/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/af/firefox-99.0b6.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "ac544b28cf44236f1d1e46ee5e1b3484c97cf732bc857eeae3682b501ccd9867";
+      sha256 = "0f15edf10fc6ccb9f8bfba5cd6bbe83ac11df1b01fe9d5a1888f9b83a20b6d49";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/an/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/an/firefox-99.0b6.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "18eff485b959812f916f6925d4adf32a30e1fd3b82040db1ffb1c03aa9e76a5e";
+      sha256 = "769c936702fd344395e2fb949ddd2782f0e35096889c7c84027edfd9f08f5790";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ar/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ar/firefox-99.0b6.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "cb33eedbc186386dbe5bd96d294a202a3f4d43e72affcf62b2f5608580262902";
+      sha256 = "401b84fb1ce243e657018b0f6c98acc7838c7abcb0ed93772d56b1082135b479";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ast/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ast/firefox-99.0b6.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "34461a0d3e89768cf951f7a1d12a61732a66b38cc7f4493b028b1c49f810e265";
+      sha256 = "2876d7dc456ead1a0efd867e3f683ea432589049ad85adf7ca5e7824f9dcfe66";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/az/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/az/firefox-99.0b6.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "6a7084f81c269b572f4d8b19ac686a97187be217e1a8e1a6d993470f60374d1b";
+      sha256 = "c83d7bf96d74241657ae84dcd0b63328dc521cdb4be639577473305bc0d024b7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/be/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/be/firefox-99.0b6.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "85b951a4c3a9f73f74cf4374b142fe86306e26480461e665fee92d4d920fa716";
+      sha256 = "35942f40d0604f382a383a9f737d59bdd6141ec6066d7da54422fe02928c46f2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/bg/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/bg/firefox-99.0b6.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "03de393f231f1b54babb254a139e71a051861656f050f31605a8351f2a33507b";
+      sha256 = "f55d30618fd8eccfba51fc82fbcf37fa3eed550b168ed603a14a69511ee4955c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/bn/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/bn/firefox-99.0b6.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "ba3b9743502aeb38f510873854dd054ba21250394097f12b2f3ff8883c6c1e97";
+      sha256 = "462741a2dd135d7f0cbe12ca93bba398a621613af5611f1cae364a281863388f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/br/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/br/firefox-99.0b6.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "56478d56ef1a6e4340262eff9f5f64925aa62bea4774e41cfe97069760dc3505";
+      sha256 = "2f08c5b70e49b9151757a80821011cc6ac8bb9d68b282aeb33b9928bec2609f2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/bs/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/bs/firefox-99.0b6.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "b76eb84e8c2282a7ca11cd3208aa4445b52ff24fd06e0f4a2445b326c71b42c3";
+      sha256 = "08802aa569f3e4c9307dbdf0216cc96e851ee88d663d52f22559bae99df3c551";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ca-valencia/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ca-valencia/firefox-99.0b6.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "4f9325f1d1fbaa28a5be6599e2db4f55e69e5e10b0f11496e1c36e83c50ceced";
+      sha256 = "49fc70e96542fb26e536570395f6f8302e4271306f0298739c537a7d03af3585";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ca/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ca/firefox-99.0b6.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "1f110c78565cace8c1def9c0343c0d4b2a0632d25a03fc0cda9462daa8292d41";
+      sha256 = "c1a1ae01536b9b885ee66033f8d828ef63cf3211fa3ec52ad8cd8c688e8bb1cf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/cak/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/cak/firefox-99.0b6.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "843ef97f99c5d0396485e9821a0600a2f2a724ff76b147c7883c3b05c89c34ef";
+      sha256 = "536ebd5224b5a53b4660d9113172fcd73862307da6c41f007a2cdb71b35a6dc5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/cs/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/cs/firefox-99.0b6.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "52394ebc3694fefedf33a65626020bf78610bd8d8fd732605f254d0532f3e804";
+      sha256 = "3d25003533ce79e9a32e4dccb92235994b076dce620a73b4f3efac2c04887596";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/cy/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/cy/firefox-99.0b6.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "5952065bc634b3a008798ac329172e68eafb9c18c84e99520465ffeadd36ebae";
+      sha256 = "04e5c7f3195ee0a55b3c2c27cf030a1cebeabfcb833e77a2b099916bfac07b8a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/da/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/da/firefox-99.0b6.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "7346203ba006416b010c05ba217792caa53fe5472b1239450100d0d75b2be301";
+      sha256 = "707a9d7991c925989af516681542ba7cf1f4cabeaa3eea7d8be44a76184ae440";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/de/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/de/firefox-99.0b6.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "272d56431cae04275648d25cb9b85c0d555cb839eed6bcd9bb8c088ba4983d58";
+      sha256 = "e2601df88ee67fc7d4d0d675f53dfb96f34a2c2e3dffdf1ee811561e3ddfa7a3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/dsb/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/dsb/firefox-99.0b6.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "5ce9c6d56b286aacf049580ca971cc5737498f62b6a9c177aa7634bec8ad13e7";
+      sha256 = "479ec9ec8fc128dc971976611b31d12ea58b1a3119c9019c8fcf4e224486b8dd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/el/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/el/firefox-99.0b6.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "2624a40add509da75dc22e8438147b7556fab463dd44793b918bd91826a5a3f7";
+      sha256 = "fc0075428e18c918bbeb1b25e367e7bf0a4aacc7a27c6acd382f326dfefa65d0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/en-CA/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/en-CA/firefox-99.0b6.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "bb91268d5bdd7ca82642363c33af05223375596c4b2d4cf51195d1478985ec5b";
+      sha256 = "1f1f10900d3c3ecfc1ec55e06d38bbe89462abc25bf2aa97bad2a785970b52fa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/en-GB/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/en-GB/firefox-99.0b6.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "5c9e84e4116e2d65f87a8959bf384b51e9e1edbaab165d506c9e8051813bc767";
+      sha256 = "36ec8955482e37178f6b333681ae3e998a65701b90541ed6f98b452d04515b27";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/en-US/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/en-US/firefox-99.0b6.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "389b11d44e6b50684e309b89bbc7baca1e86a2be26c3809b490b77fc3ccdb48a";
+      sha256 = "e316f005fbefcec2c55d9dd2452392c82155b080abb51d36eddcccfead742ca8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/eo/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/eo/firefox-99.0b6.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "fd1a3ec9000492ddd64eaa2fb60bcbbd2a7af8b4fccbe78690378eb9ac365c07";
+      sha256 = "0fab5a6ed664f3be18c9aa81c51015b75b3cb9a8bed5bae3322eca57d76fa0b7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/es-AR/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/es-AR/firefox-99.0b6.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "788018660eaf7b02a5e0279447e508863ebb75fed18299d4ae0279cb36f842a2";
+      sha256 = "e24a821243c0f2ba758c00334ee40900b3d8eec2d137db774512a1b5907dd0e3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/es-CL/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/es-CL/firefox-99.0b6.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "3556d494d08f129aec339642a28dcae9f051cb0baef4344cf5bcec7326186f26";
+      sha256 = "5ba1376f6c47b8afb320f7aa36ae1bc6a6dd45350a843f641889fa0f9bd6d4f1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/es-ES/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/es-ES/firefox-99.0b6.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "15a3d9d872d3e2e3ef2a795767b64a495f4b992aa72a80558d67b8f294d5b959";
+      sha256 = "73d3f8a7ad44d175fc73993ad1ddf2115cda48d33422493e80f5f5fcb0805f13";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/es-MX/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/es-MX/firefox-99.0b6.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "9bcc96e62902977cb2f5f10fad4ada00c19a453d4c598787e92ce4e54e6adfdf";
+      sha256 = "cd3267b82d6a02a1f2797069373e95726262c603902a655fb138699b5546e34b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/et/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/et/firefox-99.0b6.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "b0cbbc22406961bd076d0a8792e7a166280a52e29804129db8c39f5f24248fe3";
+      sha256 = "07f95fc1bef61d7c1f8b85ae9e774cab7c79c8d8e2d1d82fe80ea6b8f33e7a6b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/eu/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/eu/firefox-99.0b6.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "d82729e8551f3d4e9782d70c30e0aac3d1033acd57c0bb61c3073dfc7d1e8642";
+      sha256 = "da979dfebd9e18d524e20f05c04dcb9abf42eced67d0d59b2e2b8fd0f2860d4c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/fa/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/fa/firefox-99.0b6.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "66de45bf96a23242566ef04ae6e402e08b35964e42c704e4f4350171f28e3b74";
+      sha256 = "7afddd9ca0568fc844e68f67325ceb2f5a4bf8ed35095076b60e98e334001575";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ff/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ff/firefox-99.0b6.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "851ab51c00f3e59439dd7f482fa3361634600e5c2b63be5784472df912288b86";
+      sha256 = "291a80a59157da3eee5f8f8c4c4647713fa639e940200dee7a6f2ff6d44dc55a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/fi/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/fi/firefox-99.0b6.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "b1857154f9a49ac0acf8e99bf2491af4dd84cab2b1f1965acdd321311305c7a1";
+      sha256 = "b5d42423703cbf205fab56d64125d5d68c5466553dbdf47d05e29c98a1bf4c56";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/fr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/fr/firefox-99.0b6.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "59e4d31c6532096215b223f41a3a5e59c29db0e9007d8b26260997878223efe7";
+      sha256 = "95ac9b6b2be9e5996dd3ed3a84c62bf1f29715063c0af3475c02fe5614436800";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/fy-NL/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/fy-NL/firefox-99.0b6.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "56707c16711c7c90cadd66eaf3084498769827fdacf6fb73b4eca60185c1b2d6";
+      sha256 = "d4b0eaa62170cf651d92b3feb361632a2a202b971661e1111cd343c54abfe98c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ga-IE/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ga-IE/firefox-99.0b6.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "afd4b994549beb079ec0d04669824904d7f16e9ddd9cf323095ce32277d7865a";
+      sha256 = "01e383677c6fe5d3c73b29339d62b8cc5e8fa6120a6c1f31509eac9020eb7a42";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/gd/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/gd/firefox-99.0b6.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "1e96751aeee49e229afc0715d2d1b93f216b159a716075b6481d59add59c8e35";
+      sha256 = "ba0c05f8ccb21224781824178b41794f04585dc22c60bb4b3db3a230be304eaa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/gl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/gl/firefox-99.0b6.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "2950aed5bf345de03873a8a0ab35885aa766a88776213d5f58798235e8130094";
+      sha256 = "540cf483ba69cb35eb0878d07af059f023e453359962217fa4f91ed6e9ceeb8c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/gn/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/gn/firefox-99.0b6.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "6f4afd656511c8cfbb933b8680ddee2bbf3ff584021193058e7eacabd152cf03";
+      sha256 = "222de0e732642bb0ab30687312bbd2fe83b0ca42497a1e8aab2a56658b1f3fa0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/gu-IN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/gu-IN/firefox-99.0b6.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "0b9cd7febe314aed67e85fba904b000dccd97d983e944a093699d80eb53134b0";
+      sha256 = "c2d5751f5b5d3c419c4a5bc61ecf900638f2f4f93e44dfe4b888c467e17ae368";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/he/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/he/firefox-99.0b6.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "6a122b779d99bc42ddbdd85e97649953185f472c97d352d4e0f0cf96198bcca8";
+      sha256 = "00e4b80dbe25ff5daee56b2eeca471b5bda4186b50a676b72ee3b6dd85f52935";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/hi-IN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/hi-IN/firefox-99.0b6.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "551b20cc433c045a4e28628498548f6cc114998158386062be926238b674239d";
+      sha256 = "cc762a99b9443f45c326971dd3f0fbe10c46abc4ab54a31916d8f344942fe645";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/hr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/hr/firefox-99.0b6.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "15f1814fb99544f7b093ba6cf6de98be069696175d9ccd93db049b8e0a723a78";
+      sha256 = "6f935f65ef177e330b53c35818d14cdc135436f79497b6e59e748365a2942767";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/hsb/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/hsb/firefox-99.0b6.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "bc89304cd1f68d18de7d8711f334a14d972c35eb4a779e212ff470157b15525c";
+      sha256 = "4ec5aaf93f6bebd218817ee6552b352822c016209e5b528bb96f65fc1b89ec69";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/hu/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/hu/firefox-99.0b6.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "f7a85d9d1d529f245d456eab76ad26cecb6a1d58a5da15b5b6d20544af989772";
+      sha256 = "5042f7330efadd917d38f9e5415477f507258ba8462e5600ab1ab15755707db2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/hy-AM/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/hy-AM/firefox-99.0b6.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "f5b6c4ea7c8817f9b8740aa0954c74c7cedf30e659bdeec4b9b468ac7430ae25";
+      sha256 = "479d9f677b0dc81f9286e4b9b8c89cc3a34de3c51d1e2088c7463adcb8cc7d35";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ia/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ia/firefox-99.0b6.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "24d68a73da9e817f02233a4c39e1a6d56aa26d15b17a964de0d10cd65ff8f6aa";
+      sha256 = "42a882486fdd29a89220c3a2604873d338b9187d5545fac9da59929a4f865deb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/id/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/id/firefox-99.0b6.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "86f7e09688943b242a83bda19b770f4720aa495c9f8503a79d22abb8a24793a0";
+      sha256 = "483885d63782b4dc2f6444438f5f4c4f291600a5ca669b2630c6ee5fccdd4382";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/is/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/is/firefox-99.0b6.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "52cbbd83f54f4e93b08d874f7f68cdaa168bb663c10c4a3534918bfef4812793";
+      sha256 = "23c62d13ce11f8c5497ab32a80e0f6b49e56f711c9e42673baf37022e3feb364";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/it/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/it/firefox-99.0b6.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "aeb7529d9a7dc88a23094589fd30c04f2d1366e5dae9a92bb16a7c9bbaf476ba";
+      sha256 = "7a3006a99a20a54ad104389c7203bfd6c24b0aa53c02ca4d14a24e34503cf6a1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ja/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ja/firefox-99.0b6.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "9cf3e5bf609bd86f7cea748df34279fb9f421e76a3e3935e33e5af1b3ba32f06";
+      sha256 = "05ca3af44e2d723edd2777c91714962459b889122dd669d72c91d83ecefded54";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ka/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ka/firefox-99.0b6.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "c6d6d9524aeafef73aed12d2757520903a53deff32ddf55873e038f1a1b3e37b";
+      sha256 = "9979bd999157dcbca6b70ca967401b61c574ed3a6d2dd62d436692dbd26fa0b6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/kab/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/kab/firefox-99.0b6.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "c238bd3d49236ccc80d85b8ea9a5bfe95f7a93bdd9fc82f09dde2de314412027";
+      sha256 = "e2e5c9220501b8c481cc2c1a159b49b5adc243bdaad715afd7cf32aae89237c2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/kk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/kk/firefox-99.0b6.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "b34c10751ef34dbc41157711fc4f02c5c9d26104be971b1c9001704c2e695e3e";
+      sha256 = "67a0794f7ff2206955d47a2af2f9eeeb0b308526348e86845ec9fcaaaeff9ede";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/km/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/km/firefox-99.0b6.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "859629828f358f3b7933f98292f3df0047fa012cfdbc4db652eea0fcebd944a8";
+      sha256 = "79de967bb49baaf50633e11c03487b9f696eb924a6c2cb4ca776849c03709f71";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/kn/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/kn/firefox-99.0b6.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "ae70facbaecd4b11d8e39eb6b40615c63e37eb9020933b443326c3ec6849277a";
+      sha256 = "acf8833a43bbca67be2f7c883e8c9fd3b65b5e43f61e803a5ac188ca2724273a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ko/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ko/firefox-99.0b6.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "63b939612cb311aa31b9f2293e82cd0aafb1a857318db2f8cb022cd0d868324c";
+      sha256 = "669aeb1fc430810d5347cb85df3e1f53240573c3b37c621c5ab9f384b2883f31";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/lij/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/lij/firefox-99.0b6.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "85c8edd159ad5b2843673a9beda883a349bebf1133ad64fef2685a61bbbb8d4e";
+      sha256 = "1c29ba78ad9834ce598c31fc40999861556d91e3a43a3a39b8eef08eac59a8f4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/lt/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/lt/firefox-99.0b6.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "fa5d9116fbb25a8c1b816357de21aa8e376ee0983c12ae6c842c0a015071829e";
+      sha256 = "caf5e72d891e001b5874cd9eb39359535d0e7a3e9e806bdf6c9bbc2ad5cb1543";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/lv/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/lv/firefox-99.0b6.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "e744ece030a07f84c9cbf8a952c5dc2ab8fc3cb3889405978f79665917ab62a5";
+      sha256 = "48e2e31c5fe889be4ff3cbdf1bab671537ca66a55c59f63ae9f09a31f4222c9b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/mk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/mk/firefox-99.0b6.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "466d376a9f0caf60242aa0abb945b8899ac9d80080da3c4546c74d9e2e6c131c";
+      sha256 = "cb26ff5fd9f9b4dbda62b173459173a5d0d39fd4caada1877a1f9750080f239a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/mr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/mr/firefox-99.0b6.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "c3077f608d9a5f655b50a0a14c024f5f8bca2dd6ab75901915fc379ec5e31311";
+      sha256 = "d8c95476b496d42e876080d2809fb349442f159afd385bdaa0444ae776f2bfb5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ms/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ms/firefox-99.0b6.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "de64870f7300f66ec653af11f4d38320c1b63f6ac2bcda3b7d21610ab83598e0";
+      sha256 = "3be2c35dc0d5cb98b616eb573d436326238ea0f03b6dbb5ec3c6e9f0b6d3f677";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/my/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/my/firefox-99.0b6.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "91ecbb951fe4d987b226b40a9bb7efec4119cb43371fb57c98deecb538704ae6";
+      sha256 = "f24161a028dd225cc9e57636544fdf2fece02129e65388bf63bee752b23be712";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/nb-NO/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/nb-NO/firefox-99.0b6.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "bcccecd3ae6b89c6972a24d41967d20b487d55da6d0d489de0e69da6d9e95c0d";
+      sha256 = "1699b0cdfd96cef9193bbee9a461b3867783d93ca98974efec4e998ecd430847";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ne-NP/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ne-NP/firefox-99.0b6.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "808f5583b067f74ed584804ea4a32ca86bab336f808944ee5877c7a964bc84d6";
+      sha256 = "c0d6ed8fa1ad7853adb10c83d6422fe2a41254522655d52e1ac4fbe88412996f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/nl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/nl/firefox-99.0b6.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "2bdd1003f0a77b0c2d3703fcf952aa82dc8e0e56801945810fbe2343ff45c4f4";
+      sha256 = "cfc70746d63c465066e924ac3740e5c0ab7d19dfade9d32698e9c3903dfb8bfc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/nn-NO/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/nn-NO/firefox-99.0b6.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "c31423b965a44848021ab8b148ebef815451c706c0ed21e2272cc4d9a6404fa0";
+      sha256 = "700145c367d4177fabcbb183653498d4c3c0d23fa1686456f564912a62b1550c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/oc/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/oc/firefox-99.0b6.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "ce8dac45e0643307e3664f529fd8f22a80e3089bb17593febd730bdd554920a9";
+      sha256 = "a657ab1229f0f670d113efe6ee7f008544682f60ce936edbb4d68a2a81b60a8d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/pa-IN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/pa-IN/firefox-99.0b6.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "1dbcb8f8a7097cfc9d52ae1702bb29995f1585a0e817a0bfc587dfb0779cf975";
+      sha256 = "a3641a38f87342e9511baf1866226da4875160c30b573893fa85eba644c5195a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/pl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/pl/firefox-99.0b6.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "3549823c524d86ef0b60174425c49c6fd91bfbd8e7f8dce371eea882d0e09fea";
+      sha256 = "045ebe8f05147249b6516b412b1d1fbd9208f894e503000228a0e630c63f444f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/pt-BR/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/pt-BR/firefox-99.0b6.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "67b85d1b5229e7dcc0207ece3fcee3e5b3b086086103ceecfe34c80333d4c2c9";
+      sha256 = "23c50ecf3cf14217fa8c865f7ab1d7321c6815ff4c68c10630fef9d72904883e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/pt-PT/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/pt-PT/firefox-99.0b6.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "b7ebf1834baed814479bc2471ebd1090fe9f662b80cf177542cb0cf118f82774";
+      sha256 = "17c937a8afa36f4260ce6d3ea79a07b9119ba12b1710c43d27ff05538e6971a8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/rm/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/rm/firefox-99.0b6.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "bb19bcd207a6823c6ca304f13acbd7640aba4bb9fac14a4ce4fe5a3280823091";
+      sha256 = "836195c4a54dd90d7a32c031114a56fa561d1c2e3b8f930227871e6325dc6262";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ro/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ro/firefox-99.0b6.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "f22e4c6b8024e724dc2bf09bc1f7d66109551a07acf9c2c638165ecc6e9280fb";
+      sha256 = "6c0c29c8b91013897b03866e242f9dd6a67c44440f1405c4b356dbb7a935a09a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ru/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ru/firefox-99.0b6.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "7896e4fb06f0566f07069f724a0e1e96f9532eabf76108efa92738a92a6ae8d8";
+      sha256 = "73e15ebb5ceefe5d76ec3563378cb7c7704fb821fcf5b583fb709995a0efcb7e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/sco/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/sco/firefox-99.0b6.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "3ab3b8ccdbba37af17943df1d5f5b070a1c3826a55fbbba0c71a1a3f2342a3ec";
+      sha256 = "2f8ba8588f33fc783976617d662a29acbf41a78851dd781dfc26d7e0ac4d97e2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/si/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/si/firefox-99.0b6.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "4dd9bbca09dab4c57edc9a3def8fe768888f698e01186a5154a9b5fdcf68cda9";
+      sha256 = "5fa2169531665633c3481c177490110cb6a9bd959172f0ae94b2e5a6475a1bd6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/sk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/sk/firefox-99.0b6.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "8db73e84467ef07a82f75224e36d4038fb29bb3d6246624cebab9c645a65d1a1";
+      sha256 = "abeb0a6de0522a4e2aa47c8ce02b8c478a21165153fc3c6edda8642777cba266";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/sl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/sl/firefox-99.0b6.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "eab61eb7a5d353ae33573be8eb37c141820e545945229ab9db248263b7033c17";
+      sha256 = "c0019a21096573635aae9f2b97c50557dc011b670f05f1fcf0779732e2f7dc92";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/son/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/son/firefox-99.0b6.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "41d282f7d6ebd9e0a084c4a4e8e7f6b59a9433feb4c006c5ada699a4e4d2e19d";
+      sha256 = "ccd58c05db49f4e5295794c73248bb267bb87173aa7e0dcaa63cbe6593e9fc85";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/sq/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/sq/firefox-99.0b6.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "8213721fa3601bc529f5fc2a97f7f64adf544b994c607947e94e104d5ff5c96b";
+      sha256 = "5ff7791b6d9ff215e8e466b27902716a9de6018ee9ef0efd639579847178760f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/sr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/sr/firefox-99.0b6.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "f8ed04bae5dd80366ed92be6437b01887310d914b306b172e303da78a878df0f";
+      sha256 = "709df8593b8257191313b456288de9952a9e6308a3663a21e40733b4eb3b7353";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/sv-SE/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/sv-SE/firefox-99.0b6.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "a9dfbc40e42b55ae876cb44499ed2b245c184acc4299b358fe6844c6f80092e7";
+      sha256 = "ff25b85789453457aa9c035395bd5588c252804d5801d8e111a24e64d69e4d1d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/szl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/szl/firefox-99.0b6.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "8f2f3fcfef222377dce579308736948dbfdf29e7a0aff42a8b553990238bbb4b";
+      sha256 = "1da12d4d2046e953010fd5d064dfe468fd97e65f5003c8d746cb70479bd66187";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ta/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ta/firefox-99.0b6.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "900de26055afc2ddf81d4480deab7711f0232ce034fde90f01e7314526866eb7";
+      sha256 = "494d240702bbcb9124d56c835ac4e3642e37bd873a5209ba9b99bcb338f40fda";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/te/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/te/firefox-99.0b6.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "f1b34ccfe1a28f7c3f9ccb1700ec91c2c8c0eab45b074dc38386818969c1d945";
+      sha256 = "acebd79510550d690adb1444e906dc82d9f38e86bd5a93e5e72f711d2d3e49f4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/th/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/th/firefox-99.0b6.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "7458224a8dfcfa1480ea95a4dcf6dfdb62d1e9576838820855cb23baba23bb94";
+      sha256 = "b6f90c5a89a8116c1049da7a3a34fb6d82114b261f978f0a2237dd32a10462bb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/tl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/tl/firefox-99.0b6.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "6441f1bd46807575c11b209a35b9f5003d418c7ea439ffa8c7abd18355635bc9";
+      sha256 = "961afa78a723382ef7e4cb49cd0f32cca39dd921dbe8168a8e835bbb244ff4a1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/tr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/tr/firefox-99.0b6.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "c65364bcb6078efc0e856bac29ee758bceb016e838cf74723768de3872e57e71";
+      sha256 = "15efd87bb2654ebd7921b72e0653639c4a3da51af7bee06b284d9abd0e395c1a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/trs/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/trs/firefox-99.0b6.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "3ae90a452b99a039e4d9590d92d4c58ce5684c6237c1d3bf7679ff3b422c99ac";
+      sha256 = "78bffcf079bb4e9518fb7ae6deddf395837c16e5a942b66fdeef67c9137d950b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/uk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/uk/firefox-99.0b6.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "4dfffaf009936d7dfd6614c496fca8884076293122cae401255ef34304176bde";
+      sha256 = "08995e6b88aaa2af8dab0a95d27312f5e97df3ad7e1a6f0096b0803d835ef6c5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/ur/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/ur/firefox-99.0b6.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "7fb0f40583398617a3469c1a0ba5a83443857b872b9b6b0deeda957b3796ae02";
+      sha256 = "8530f5bcb6bdcc1f5a3127d0ab6c94f19e4a28df2a6c4291c821aaf9c85f379a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/uz/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/uz/firefox-99.0b6.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "4b943e4439c8f07d3de7f9ac9e17b2af3a1d2a29bd4b917fd11664e1ea249e76";
+      sha256 = "67c7aa4e6095f8073cb94339f63aef2eedf51e096985ca175e983bbca4089498";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/vi/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/vi/firefox-99.0b6.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "08dd3aea42b2589fa141aab23d5f9c925d57cbf45619fc9b7b2d64ec13e29dc4";
+      sha256 = "14ee8e4ab854e5443f537fa05ca83befc679c5c78db4323c54dc85ed58702435";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/xh/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/xh/firefox-99.0b6.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "b1130919b88f96d866dd54938dfb63250df118a6861e8a0eb8b32943c027ca33";
+      sha256 = "ff4c8b2e0bc0a5231ba19bf058baaa7b455b2d8469f56ec97283d26539405641";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/zh-CN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/zh-CN/firefox-99.0b6.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "9f1186860c19e4f6301ab0bdf39c2824038bb14b225dd8b8e43cca5b838ca92c";
+      sha256 = "0a9228bb1a0629351a62636db29ce428bfb1ed704222b66d1dd369e6fdb3d503";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-x86_64/zh-TW/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-x86_64/zh-TW/firefox-99.0b6.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "70e66f4edb9e6c39b404205094eed21e8df186571c581f67f8176c78d5a41098";
+      sha256 = "42531087bef983024116ee5eb4d42197ddf6252c798944e7674648b76fdf57b8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ach/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ach/firefox-99.0b6.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "7a133f4f6ed1b67715ace63839dc2d4a1dd79537ff168177ad5a329d4c482292";
+      sha256 = "15488bccadd886bea058313e062b811120f42978ab5d9f7ed05ccef88026bdf9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/af/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/af/firefox-99.0b6.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "b8b214903b2aca2b0e5d4de1f152e67c5a71ac6917903d92f2000629b51aae97";
+      sha256 = "7a8a204badfb379007c116d4e7476111d19e72928ae3ed8557b1a7de7535d4d3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/an/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/an/firefox-99.0b6.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "884696456c121f511b0661bf9972492e01a23d3e106b00c219c598855df7557f";
+      sha256 = "4fdcb8886f89c586b1f58eee2300276536bc06d024aa9864a447235e74f5e31c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ar/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ar/firefox-99.0b6.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "676ac6c717cc21496baa6135d18bc7cb625e58c3e12c261bdac2a99401c38ec8";
+      sha256 = "dc621abab4c6e678e8910569b21fbb01c4ca54e0ca80b0585c5ae2124f199e8d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ast/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ast/firefox-99.0b6.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "c86f2615962a16d7766ae21598f82caf77f0cea341e0b931dc1b9ed90a9c2f02";
+      sha256 = "afbe9810b9f326ee8b561acff2e2cb809793177daf00bd467bbfae245648fc56";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/az/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/az/firefox-99.0b6.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "14875cec0478392c2dc4c79de855f1c338e7737132f6a4522e65e02478072d4a";
+      sha256 = "806a98e46682d180348f772de1aacad415948e77845d00087d4717c40a4814cf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/be/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/be/firefox-99.0b6.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "9aa8bf0ada8766019bf9c6aaec64c005239c3d9d82c494e81ddede4f822b0bc8";
+      sha256 = "ecaeb8a69b0c1a8330748e9db299bab7920c3f7f0e3825a35cc0ac6e06ee35a6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/bg/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/bg/firefox-99.0b6.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "a822d9daaa748c6f64628dd7f4fa2cd0b8bdbf57a77710bab2cce990aa052874";
+      sha256 = "cf499eb69e98f38eb211c1c962ea81a8617bf169b4e6309fe900f82ce38b8c45";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/bn/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/bn/firefox-99.0b6.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "209a83d4d7372b7f2ab578622c3e77110929bc4a1d572c2b3d084e5c2b183d90";
+      sha256 = "40d828000019191f9a5f45ac49eae01f66b3251326cdffdc395089bec2396f66";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/br/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/br/firefox-99.0b6.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "20258167e5f470435d01fea08faaa1854872d5bde35c3a48e4028e8a61e5e894";
+      sha256 = "8ea216bc32179311769ec3eb9e8fa25aac44f75502a9f6d9b20c3ac0c2f6c336";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/bs/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/bs/firefox-99.0b6.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "948ed50f652aa1f0d16de7923b29d6c4ae1e9f87a16cf4d6e195a94e7c0bb196";
+      sha256 = "d85c1085e8dd29f69ee7a41bebcbc6ef85118423e1684026a47e71b2072d74b2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ca-valencia/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ca-valencia/firefox-99.0b6.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "65eb92ee9f63176db9efb700ce8b26c2f9d1d4a4ce2d66ce2b12bf0a083f0db4";
+      sha256 = "ef80441301799de2d0043eaac8537a4e994e232666a315db4acfb3cbdfdd70d2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ca/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ca/firefox-99.0b6.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "ff3d52f5060ce6b69a52ab54baf53ff767a6a948fc5385b38452ff1ddd32d10a";
+      sha256 = "f5888c5c06b29afc8314f7c4bd3201c511cd8fa07322f990d7f58978e5a9d31f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/cak/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/cak/firefox-99.0b6.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "d8dedf187004a64a6484657230796066be8819be188b6c73edf23a2e516015aa";
+      sha256 = "4ad994ecb37604cf9caa8035750325853fd9a87072439e17b2bd0cb4b6066634";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/cs/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/cs/firefox-99.0b6.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "5f6e10610a2f3431ea75f36b5abe3a79ae2a877fc912733be7b7ded63c2d0434";
+      sha256 = "688096996df92cc3d070c43ceea6abebc8dec53d458fb3bcecda0a63bb048269";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/cy/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/cy/firefox-99.0b6.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "c6bfdb386e2dbef46666582b97057dc4d87da0a3da708f0834cbfb46f01553d4";
+      sha256 = "c10ab338b8785a0937d6ace161c36f3c05a8016d5b3d7051155eb412985c71cc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/da/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/da/firefox-99.0b6.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "d657648c3bd243d005b7b8ae9b720c3dd14ebd7fab10a5aeda332abec34adae7";
+      sha256 = "04a25829cd6f56b5d05c0ccd2d26fd1e28838902388b8dd1fa2472eb84770360";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/de/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/de/firefox-99.0b6.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "653c7ac40b697418ef9335b5d84b4791126a4d88499c7643b8691ec7f7f2674d";
+      sha256 = "ee5530c4477d8a0df77f4fec8112ce1f606aee109e97cbd37aca6ddf25c4f52c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/dsb/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/dsb/firefox-99.0b6.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "caf1f6164adc422f9b6d15998acace1644b3b7422cc049302151e3edf060c8c4";
+      sha256 = "0f85121b622f28c84bf76666dac0282528a1d380506f03ddd0944de7f2b07afd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/el/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/el/firefox-99.0b6.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "a500f80b351209b849689cea6eb558f039c2ccfa2f88544473c9e6b6592d5d73";
+      sha256 = "99bdc3c28894fa8141e5e1cf9585717b91686ab0082a57b4d7aa43e8a6394505";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/en-CA/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/en-CA/firefox-99.0b6.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "4c3c78cdaa65537de0577889eaf2029981e57b70a079111f26a53cc28ed234c8";
+      sha256 = "5facba35ff29bee9609c94df4672df4375b7d20ea424b1b64e911bdeba5db26e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/en-GB/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/en-GB/firefox-99.0b6.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "5ad92e4c565807f377900c3c588b2e7090335259bb529b71af45b37b9a081067";
+      sha256 = "e2ffe099d47813c705422758e78ddccc97fe99673379b2a6115d9e298df32074";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/en-US/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/en-US/firefox-99.0b6.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "c5dd205aa822a311fcda06018ba79fec68ee8c2b05d5ecad1d2dcb103da87509";
+      sha256 = "edd09800502881bb1a3e49042c0eb1c0618bf2a0507a38dca9dc4e3fb391dc97";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/eo/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/eo/firefox-99.0b6.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "613140f6f288290d93a0a41811372a46debcf9de05dd1858dcc5a97e242bd657";
+      sha256 = "678f340edfc6cfc8ca9b88032856119c0474f6944e8d67778e098100154f9a9d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/es-AR/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/es-AR/firefox-99.0b6.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "ab6cd6c4e09cf5dce87a5f072068b7c49c203296a5ce0c32fe41fad4d4fec495";
+      sha256 = "2d2fc35fae3617bfa1ea2ac466211b64ce58b13fdcda8f301ad31f13f90d968b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/es-CL/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/es-CL/firefox-99.0b6.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "93349da0b0a1529e8b5855519175f61e064445572b9acbdaac68695f7157ef14";
+      sha256 = "df84c0a9ca7a896b02d83d13ffb238e90cf69926feb3c8e0d6edfca842f8defc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/es-ES/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/es-ES/firefox-99.0b6.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "e5d6800770146e6c1e4cc4d91202ca4749b6d922ee5965bd82a6acf7448f2677";
+      sha256 = "1f87c85a46b57f99ae9bf98256fd115a15e1a86a4c9860cd3faa3c9bcc424806";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/es-MX/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/es-MX/firefox-99.0b6.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "22aa961e8d40f0d4bface131a19ff0cc0f88b9f66bc9b63c3038ae2b878cadcb";
+      sha256 = "eb865eff70bd7042cd5e54e2251b9111b18d484fe1dea4d4ba57e7dc9ea2a5db";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/et/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/et/firefox-99.0b6.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "722ba0c78b51491d8943823e0aa972147c0504d7c65dd7c5eea29377abcfc571";
+      sha256 = "beb51d1ea549633f09feaf220e96c3b0506c3b38baaa0772079b0f7efad2b281";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/eu/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/eu/firefox-99.0b6.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "96b12801ae70101cbf4620e1fbc8e4cc074e4f07017179586cbc5ab208fe9f0d";
+      sha256 = "d7da5f728c7858e8773ceff7e30ca28f238af7aa618711de1286100512fa2378";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/fa/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/fa/firefox-99.0b6.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "cc97cd08c428bc52616f6db25e9dd50f9162c29758d6c44160ebdfe745211d0e";
+      sha256 = "606190d0434108a4f8c2bf87629ca119339211856ec9fda619a0bc6c2bfc620c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ff/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ff/firefox-99.0b6.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "982fab751bf71de830c9f5866943962f3095e70c4918f65201f8f51c99070898";
+      sha256 = "2b3a7038abaa4ba5ffbdc48eba4e6cd2c03bdf438f8ea9b70f15c1968bb59b80";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/fi/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/fi/firefox-99.0b6.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "c5e9739a2b8f60d578a8a1f22f947d25e8eb14049ffdf57a3948a50e34400156";
+      sha256 = "a2025ddf884826afea3a16a87716398658bf55fb5ac5b647331f4f25166555ba";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/fr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/fr/firefox-99.0b6.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "7441aeda63c2e90a26a342c80846a4ea0a48d4d4807aa2fe39337401d9002a54";
+      sha256 = "31adba6a0615ff23388686959327ee0e68812c4341bcf92878fb58a7c01712fa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/fy-NL/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/fy-NL/firefox-99.0b6.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "83d26111f5d82644ba1601df382aa57da851f69284cc4fcb88d943a79fa5709d";
+      sha256 = "8f691e303e2d1fe5e7548184d1186f4d4a811b65cbbe6e839243a12ecef8eced";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ga-IE/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ga-IE/firefox-99.0b6.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "1c845264e89286cf8a5171f372930189455b3e2e0b959f8e271799c4bb00b074";
+      sha256 = "e8a4903ceb272389a7e1461693a7e6727990432ba4a6d5c98898af5475e6d164";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/gd/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/gd/firefox-99.0b6.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "a8e7e5e6cc3da1aae7c016dcfd28bebf35b4f5ef9a4687fdc48175126dfd1043";
+      sha256 = "bf6f72c6a2ecf977dc2b14be911c13f59951dea4a4d6c40cd16afd38ffc63553";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/gl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/gl/firefox-99.0b6.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "20b081e9f5443f247520f6b78283666c695c574fe3113384b81c8bc1b6e100c8";
+      sha256 = "af31f670691de33b3943d5a1e9f12b9b64fe53d25ef45eb44cdc44430208c201";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/gn/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/gn/firefox-99.0b6.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "6dab96866f64e882c8b7a42c6b66146b9c6f34e0934304dd192aed28692acd05";
+      sha256 = "f1a554806a9f51f8c4892eb23c65aa53f96390ca7e5e032f2c96cb26f9deb077";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/gu-IN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/gu-IN/firefox-99.0b6.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "a81691a57dc6d64c425254688baedbe16589887e99a88328efa391d7c22a7cd2";
+      sha256 = "2686a4fea05aee55741ef0333c916d4be8c5573f6e7e80b587a8d2bce3c2dacc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/he/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/he/firefox-99.0b6.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "e22bfd17a291bf7e890f80b054a9a608a8b7537a401c2fba0ea97bfda531a06a";
+      sha256 = "f4c18f2cc00f93636db310f9d9279d43bea6ef193aa693c7761ff1066e9b46fc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/hi-IN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/hi-IN/firefox-99.0b6.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "ff107e3b42e93ccea47c0f4b6fac05fec1904333e1173cfd193028b1c7a02ed4";
+      sha256 = "8a2646bcd741965d8a6835ca8d38dfbe66b607c87d9cd3b32b861dabc5e7b916";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/hr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/hr/firefox-99.0b6.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "50f460b541ae13cd78699642e0853bd198d9c2604c74e1894b716a7226a82b17";
+      sha256 = "46b59ab47cc8fb194c6f5f20a1ccc2f2fb963f2c3944e91aeabdb829c1e3d483";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/hsb/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/hsb/firefox-99.0b6.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "13acea425da7fe917fec2f7daeea24f7705c6af770f02918097cf795dca4f4f3";
+      sha256 = "f4bac6b25259c55d7892477dfe7bde36d09ee85399096eebfcb3a0c5bba54d1c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/hu/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/hu/firefox-99.0b6.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "f0ca828539b50b41c478b1c48ad96c3db25bf2dcc3eef5924e55b477b01a7339";
+      sha256 = "d14bc01ca1936e05f9f58a6516f1af98029d71e41f6cac7aeb6055c3a25455b8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/hy-AM/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/hy-AM/firefox-99.0b6.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "93b756eefb43ec5ccb8c2da88804ceff1388db4cee07cdc1e4d9e745b5b8c971";
+      sha256 = "90f4b0aa50a353109ce313543abee0606c4155a2610105ef9537319e3bf9f137";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ia/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ia/firefox-99.0b6.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "5b4a364a9e288e9b83b0c99ffba35ebfeb37984e0d1b4fbdb9003f5eeb490bb2";
+      sha256 = "384c3a0db8fe5448c17815d5ecab4e18ab25ec4ae75319b4b0075741d285fc4a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/id/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/id/firefox-99.0b6.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "5b6438b6e2d27ed1e5b3139b707610f21b977b3080b83e5cec1375482124895a";
+      sha256 = "c8067e2bbe42bc9b639098e463f69c53475d949ce883dc2f108a80d62424c0f5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/is/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/is/firefox-99.0b6.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "882246ace511dc8b8daf9370d134002cca9c470c2420c7110325813c86ef17a3";
+      sha256 = "33b049fb59684b094b919646994c446c29d4d3c533ef97ed5c592b86b621ca2e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/it/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/it/firefox-99.0b6.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "d49c6a19ab9538bb731ea4b0bf272dd35aca39bac41cba5e440d9aa3b61497fe";
+      sha256 = "1f3e0d9fc78f51946f2d35ca6ab977f53fd58ad0f80412dbba23fe97c9b8bb0c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ja/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ja/firefox-99.0b6.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "da3e2b86437ccebe811b1b0f7c79d8a875a9f682596cafc3a30d216b584d3412";
+      sha256 = "41fd54681fa8ff564fbc202cef68cf4f63b44764dca8090386eef4f0d7395de8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ka/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ka/firefox-99.0b6.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "7a6889b3e6859ae3af55a5df7c7d13d7b52be3a8b0643ff9b14b7ebd436cf2a0";
+      sha256 = "a46ee22485e1a51c0a955a66a388a4afcad842ba162fdfa4ccf8826fab26cc55";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/kab/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/kab/firefox-99.0b6.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "1a7942f57ed945628815b3ee536b892acec11a7d4a5c7ecb31bfb6c61fd05996";
+      sha256 = "33192258d78d383eebcd465bf333d3a59b92dcd87fce6dca72bbe59fd10ffc4f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/kk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/kk/firefox-99.0b6.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "7eb32c26f0e4551abe340567558644a41c101edea66042eeffef299b35f53959";
+      sha256 = "90bb4cab46a5827bc2e9abbcc79952f033b132fae628fb0f9697a55c69b9e049";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/km/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/km/firefox-99.0b6.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "608e5e80d8e5bd48e327f1b827835ae0ddb2dcfb2921d33c1e9bb895da695641";
+      sha256 = "0b70f38800d315af8377a8a7db8f1769b559ba06f92fc90bea3ef9c07dcda86e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/kn/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/kn/firefox-99.0b6.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "9b9eb2dea61ac0dd76252321caa2afaa98a3c0b64faf3d1f354e9b9cf02b1761";
+      sha256 = "dcb383343a002dec453abe185c02735d52e0f579e940104af9311b701a4a1d81";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ko/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ko/firefox-99.0b6.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "58217c4383dcd7720c7362839c9326c93e8cdf0982fefc4844b2c6ba66ea0360";
+      sha256 = "a60f64fcb7fe7456ce76f696bc17e1bfb6c2a3997ff79e090ed49735c6443a44";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/lij/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/lij/firefox-99.0b6.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "89f99e044b69d89219974772d385f5d86b64c9f12ba1ac9a2790dd61ccfd44b5";
+      sha256 = "a2dcd9632c637a52695a0d2aa085c329a7ecd19443bbba27c232839f9b64ed6a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/lt/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/lt/firefox-99.0b6.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "303ebd0555d448182167b9bff79f72dd7fa247c1fd259c3af0d1ee3f0f4e339f";
+      sha256 = "c6113f95e4c8387b9de8373838fd08638c25438995f27380f30e2e22bb211877";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/lv/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/lv/firefox-99.0b6.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "f89d9021207399c9ba56db03add2ed8e10fca3b8273f2cc4ef79814730af9cde";
+      sha256 = "302a146408cd24bd215ab2a1ada0b6306e30e549663f9ab85cdce528a79eb088";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/mk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/mk/firefox-99.0b6.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "12d5492f712b993df46a2083fd2d3958da8d5bcde7e11ef83482b3d6c0c0e5ea";
+      sha256 = "72288455347b225f2e773df5bfc82d51709b493a2f7aa46b78da0b5fb4d89b35";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/mr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/mr/firefox-99.0b6.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "26937f627cd4c14bc354c9e39378e56ef06ea18519f5b6344ca6ebcbe1ffbe1e";
+      sha256 = "f67ebc75fcebc1ef25ab6838ff34a27395d3babed0e08014c47b213a4724b9d7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ms/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ms/firefox-99.0b6.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "2de70b33a112c662a158493a14e05ca45904a0ba9ca71d2416ba59ce81bf4192";
+      sha256 = "612625f0ef927d42b9ab526c10f67c443d60bf0714f57570eb76ce97f84c2f4e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/my/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/my/firefox-99.0b6.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "dd3b9ec61dca822106c3b88df842f0380a75c1262bef82be1aef6040df308e1c";
+      sha256 = "b3bc2ffb890f6ae3316be0cf7a987b186268cca8d9df4cd1ee6f390e689f1148";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/nb-NO/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/nb-NO/firefox-99.0b6.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "997a5202f5da86b665595b7f0a4c793527428c1d78c60831ac6b52961ee466bf";
+      sha256 = "0751f4007a434ad1241459e13841f66c32664b1c2eba53fe936c559acb609a36";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ne-NP/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ne-NP/firefox-99.0b6.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "80577c41032e229cba1c2130ef66a428daa0ce238a12f15e1815460c02f0fa93";
+      sha256 = "72e278fbb6e073166de952f70c9542e5de2fbda9615205a5ca8e4abfcaf2a199";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/nl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/nl/firefox-99.0b6.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "15d92dd24481329ca8f742bd71ffa6a5dd20a4c6362dde813f4dcba663da65c2";
+      sha256 = "5fc45ef4391c93b081e5690d9c759547e47bfba389bb6143c5f00353a18cf22e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/nn-NO/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/nn-NO/firefox-99.0b6.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "59d49f04138c120b6f9e4ea8d9b902f90dad86fcc16ff82af47bc198635f5747";
+      sha256 = "1d7182f883569941f4a7c2e7445f5b2f39f2b9ace02b42c7f4c18108539c2778";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/oc/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/oc/firefox-99.0b6.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "3b82478ace0de50b1e9e60715da1e90f97e6e938577c75d2be44d313354291cf";
+      sha256 = "5a9100e569886a334cd5f6518f279a537482fa0a32ae0e663ddb3afc47b3f405";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/pa-IN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/pa-IN/firefox-99.0b6.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "62eeb120929b980e1b0c30a38054a84e821b3895f73be938274f52cb19791038";
+      sha256 = "fd310dab3a60759d98059ed81cf6c2cbf9a422ec9b56a590ce774e1a5377576c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/pl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/pl/firefox-99.0b6.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "a5a304bc7671a16ce9e41158ad34ac7e49406740d22decddab2c5a004a76a8f6";
+      sha256 = "79a8d53d9143d9208af8f63c96385b94a2b4ff2bcad40bfbc8250d792b1b3688";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/pt-BR/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/pt-BR/firefox-99.0b6.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "ed8e69b18fa20ff70effd6417d3e457ce4e820907bf550d9f8aca5ab135e12a5";
+      sha256 = "bbd6b280549cc9b446346e5a3bb3bf7d091782c6b17d27e22767cb5056bfa789";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/pt-PT/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/pt-PT/firefox-99.0b6.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "c5d3904f8f09309b0c75f80676f156261dd63bc37817283bc21f577c99c900f1";
+      sha256 = "7b246df8ad2f65bf29d97dab9d8f78a66fd7f5287820d4db21ca284b82ebf939";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/rm/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/rm/firefox-99.0b6.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "e7b96b422b949121511e4cb289958c9efa96f0d0e3808e20a97aa03b4c441529";
+      sha256 = "a721ab8316ad1a3dd12407a2b68986dbbf32632b40c1151640dedae9ad7815c9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ro/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ro/firefox-99.0b6.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "6333056941db9f5ae7679c3aa4213570f1add3f60fbf67729a97b7210788744b";
+      sha256 = "66d9d112528b9b6f01cde01d7a251c28821e30b435316f5bc0afaaf9436052af";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ru/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ru/firefox-99.0b6.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "05c050f50704b62324aa699856c3a6cb57e2d5bce783f9e39861a3cb92c7eeff";
+      sha256 = "a7de24d79cf333da45b474d8ef9eb5b5034f18eb79b8d8590cd5f39c7d5de130";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/sco/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/sco/firefox-99.0b6.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "6519d91cf5798d4b14ea3743ab4b1ce547031b346926b8504c16aaad61a9f023";
+      sha256 = "9d8754c1a5e2c4f22d1ff5cfbd39f5092840e9910f58f0468fcdf8df4306639d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/si/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/si/firefox-99.0b6.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "7abbf189b2229f911a0aec5fc294ac0efd9e7ac9d657aae08e7f867cd0128179";
+      sha256 = "9dec327ac9b519dad9d61cfbebdff117f61f3a44715379ddd1db38891a13346a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/sk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/sk/firefox-99.0b6.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "b02a4906ca96a545af361f5aa29437d3d4c873c3ca29db4ebb36fa2128b3a540";
+      sha256 = "8b8a8278d15d848361a854f898c021e2ba875da54921cb5c5aef260929134b11";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/sl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/sl/firefox-99.0b6.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "b1cf1ce7d68359b1d18059434c0aa13ef9871a82cd3c3e81fe5bb9c3ed7249df";
+      sha256 = "f605f1d0e94e3ebda1491efde196bdf33c35ec6c34703a6d5559afbc47dc4c17";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/son/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/son/firefox-99.0b6.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "6eb2146f30a6e4b73f5d5ccff0b6a9483753ec135cafb9d16ee7d693de26f9dc";
+      sha256 = "7d0b0338f9ed0dd5e214199cc4eb10624d07078beb9945281f01721a829dbf9a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/sq/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/sq/firefox-99.0b6.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "ac7c65f8569531fecb469e37ae8728fe42ef0ab7d542be4051cef398c2db0fe3";
+      sha256 = "546c338eb2cb4d185e597f0ab94186856ddcad7a7725837e9f0d3b6460363242";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/sr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/sr/firefox-99.0b6.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "acce4ec2bbf346fa76c5d40a8bf3ee3696484b8de4e57135678a3a60ca5c3857";
+      sha256 = "851482b831381a8fee93e7f2bf627675d6a0a39b6024b613c319e28341211bff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/sv-SE/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/sv-SE/firefox-99.0b6.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "7260ac1017a5b4452b5aec0de30894c6619c5f480aa6f1df67a9e876ac83fcde";
+      sha256 = "5116d06eee5bfe3d906ce833ad5ee6ec01df739ede6d2a0bb742964f5142b695";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/szl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/szl/firefox-99.0b6.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "b9327040072808ef614944b659304ce14c6aeceac82afcfd45454d610ec9d019";
+      sha256 = "503a4fedd181a8fa1b5ce578a6e950d7c8e8c9d641a04bac617a4d5505c54802";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ta/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ta/firefox-99.0b6.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "a4c5d9b87878d269be2b6314c1347093e04c8d21300344e3435288da0e325cea";
+      sha256 = "8291466aba0e6bc86665a605e81e01ab2fdc3e94310f90284319a585a7688d1b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/te/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/te/firefox-99.0b6.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "4d0f8b73c3cc034604330787a4d8fcc914eaf4cf7a3187041bf924b6a450d62b";
+      sha256 = "6d5e52745638471ace3790e1d162f3eec0814f7f38e49e3041cdbdde84c14ebb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/th/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/th/firefox-99.0b6.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "c152c0e843a69e6c099995707d838b1540b58b9c74f42241926ff2415321c63d";
+      sha256 = "1983264e9e0681edfbfb1425a24af506b9c451bb2947d153aeab4d421a2dad94";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/tl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/tl/firefox-99.0b6.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "da96cd06713a231bfeb10a1c077586579aef855ffeab88de13e9508cceef0661";
+      sha256 = "42b44c25ad8c5e7f69f4500411d41575a44efb943fb62da5c2a0844a79f1bbec";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/tr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/tr/firefox-99.0b6.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "b7789d13580a7149f7c3c03a234d40e56f95782654e0c7b24078d95106a316e5";
+      sha256 = "68e01ef5fe17667548b218b1b69b7ad9b9017647b5695623e6ab6b2ee7e704a1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/trs/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/trs/firefox-99.0b6.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "1c6fc47bf87316ccb5cb767d0a42aa685cc2d75a923138803897d0aee0035c24";
+      sha256 = "29adf4bc2783130d5b64edd8ea812000748938538b90f47e1f9ec704cf183752";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/uk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/uk/firefox-99.0b6.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "647f29a9cffaf16abdf8be253503fee7df5b54cfe90e311a7d1f978bfe53243f";
+      sha256 = "6953e34511ccb537fbbf2a6cca6369c2f8252e3025dc459bb809ffd44f602ea1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/ur/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/ur/firefox-99.0b6.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "2451a832ef04df012d6114c6a9bb6f99a2dfd673f4d5a1ae5fd2b048fda3ea2c";
+      sha256 = "6479f088e60bc401346ba93be6711d83f42e113c3cd9c71e02fe72e2fee18d2b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/uz/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/uz/firefox-99.0b6.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "c8b0f6dce66303ff77c33d33516f41070ad470d04ea7a159d8a2407e072b4617";
+      sha256 = "99217c54b034c995203bcb290b6b07ddcf8dfe3f0d4f67876656e5930a813e75";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/vi/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/vi/firefox-99.0b6.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "fd08bf4e07e05535c39469307bf423f64d16df910e3dbe29f608818eaf63b5b8";
+      sha256 = "0b714adab63f4551e2837b6fe439f1193d2c097cccd0d938e6ee069bf6273cf3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/xh/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/xh/firefox-99.0b6.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "b1b07960637d5bcc3c540ecd3ea91c9aae6d602506416093afeb68ffc9a84e37";
+      sha256 = "f15315fdc1e03b0bb2f834240f35a695b3f1173494b2ee1eaa36d7b154fcca4e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/zh-CN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/zh-CN/firefox-99.0b6.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "b21137ca94f8426338635c2173be59474f07fe7d6eae7bdbd062311a5593dc3c";
+      sha256 = "a959f20cea8596ef0447f0823056a6e500fdc6d38fe9bdbea06fdbb8ebe93973";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0b5/linux-i686/zh-TW/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/99.0b6/linux-i686/zh-TW/firefox-99.0b6.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "652c5ce25e695ccf5cb8145f1c71660bf39e6bd9b2a951f468cd1d1967811f2b";
+      sha256 = "e2c8da8c23fbb7817ef215c035042d04f6a2a0705de9924c66c80759deb67e1c";
     }
     ];
 }
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/default.nix b/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/default.nix
index 8df80ab526a6..a71cb84a05c3 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/default.nix
@@ -11,7 +11,6 @@
 , gdk-pixbuf
 , glib
 , glibc
-, gtk2
 , gtk3
 , libkrb5
 , libX11
@@ -110,7 +109,6 @@ stdenv.mkDerivation {
       gdk-pixbuf
       glib
       glibc
-      gtk2
       gtk3
       libkrb5
       mesa
@@ -190,7 +188,7 @@ stdenv.mkDerivation {
       ln -s ${policiesJson} "$out/lib/firefox-bin-${version}/distribution/policies.json";
     '';
 
-  passthru.applicationName = "firefox";
+  passthru.binaryName = "firefox";
   passthru.libName = "firefox-bin-${version}";
   passthru.execdir = "/bin";
   passthru.ffmpegSupport = true;
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix b/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
index c3d034cd5a1e..25a81d11efaf 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
@@ -1,985 +1,985 @@
 {
-  version = "98.0b5";
+  version = "99.0b6";
   sources = [
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ach/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ach/firefox-99.0b6.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "75ed4180a84010f7bb509f9f8107e303c6243008071f0ab925313aab0e4dea60";
+      sha256 = "0bb4605a97661502cb23fe2ebfdb1a31831f8ca015349b3105d1245fcaa5eb69";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/af/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/af/firefox-99.0b6.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "b4c380c4d73ecb913a1ffcf0dc0d3dd771240f1188204f728464df8a65671013";
+      sha256 = "564fd8895c6fa6aecebd5a7250bd73df45a6e51f90845d9597e59cd9175b6c2c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/an/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/an/firefox-99.0b6.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "247918ac04cdef6ad1452f1d7cb0754f48c70cdffc2e20a3187901c72a023f30";
+      sha256 = "76035e42b93995e6cda0de737981760a0025013bc3330142b95ba7329d54153b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ar/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ar/firefox-99.0b6.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "68514334b54f4a626d7eb37f563bb39f418d6be4b980c7d3d31f417153d51482";
+      sha256 = "31abbbdf4378559e6b612fd3b0167bbaad332edc47d6ff67e8d9aa7e01130808";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ast/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ast/firefox-99.0b6.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "cf6a2ade0caaed45038a1237d4881c2e07867d1ba283432e7464ffee5c84258d";
+      sha256 = "1c4a2c370c3f566823c722082a3a9f149050cb7a891f3a1f21b7ca8ec899ca92";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/az/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/az/firefox-99.0b6.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "5c481ca36bb79dbfa5f4e6b83c76a0746b6f4f3fb69200642315a9226ec04809";
+      sha256 = "b1d0effa84614c985001705630da49b70f09e91be3715795fc18d926303b6b95";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/be/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/be/firefox-99.0b6.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "676169af51ba1089aeeedc1c57fc19bf383fbeff03df5b13ef401b63ec9aa249";
+      sha256 = "d0ace001eff838f8dcb80090a193307e143a5c1f3b1dac143ded5af3fecbdfda";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/bg/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/bg/firefox-99.0b6.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "5e030aeb833b356b145c8ee624ec18facd95c16dbed374d1f2e90c4c14427404";
+      sha256 = "784d6029972a843829783581796263899371c777cf669f0e4f6978f35a8d6199";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/bn/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/bn/firefox-99.0b6.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "7211a76921bb81307bb14bb57c5e062fde21de58fa61ef4f676652cc2c5d365f";
+      sha256 = "7cdc3a6f35c2a56b87a58eaf3112148c51b2d2d0fe5d9afc5deccfb2d2269b2e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/br/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/br/firefox-99.0b6.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "a2a6dcaba8188b205207bbf815b899a8413a494af1e87060b1da73cda1a8ca0f";
+      sha256 = "abbe12c9d887ea98d85479105bf2640bdbe3d295def41b626d3d8feef3627b36";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/bs/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/bs/firefox-99.0b6.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "fd0bfad035287c35a809c1fbeff9b00e78f6c5a067e8b301c30b76ef37922dc2";
+      sha256 = "fc1076c2eda5623869a3af5c850fb51cf8611501f51984c85f690b4c545cc93b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ca-valencia/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ca-valencia/firefox-99.0b6.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "ab4d58c4640a4b0e65d824e62a898aa19674d37929c1748a27e4aed8e5be0e97";
+      sha256 = "d328055c61c96c92dd05989c23a3f8f49b36cb755f72118c21331f986ba3b44d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ca/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ca/firefox-99.0b6.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "0429ac4f1050234a28ac1cb3fea8eeef0a763e4c316154e6f02452fde434d968";
+      sha256 = "6a020e56c5f4136deff38f07d94b516971af1a31a804384a50396dbf6241877e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/cak/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/cak/firefox-99.0b6.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "c69d5c22998d097213fc0016a344c967064193e81fdf45b2bfd5f1687883690d";
+      sha256 = "c6298bdeba82a637bb3903aaf73b9de9f0a3ce4ec22637b1ee1340273b7e36af";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/cs/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/cs/firefox-99.0b6.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "7d06915a6b86c9bc8bf408fabbb2db73f56c3f0dc3a81d7c11324b564bde3d51";
+      sha256 = "1facd79fe087052af58205d2a0a9acce68a1d9bc58d1a3bd3e49b740f6e51647";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/cy/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/cy/firefox-99.0b6.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "3e7ea4aebf641697f182c1ed5cd8848a4aac239f1fd7082f5deaf7911ca99f5f";
+      sha256 = "e7305badc55114c4a39edc317202338b3e61feba9844fc2cd8edc1518486736a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/da/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/da/firefox-99.0b6.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "b151987307e07fdc86ee14a9c0487c3be73b954d28c5beffd9b00ee05740da15";
+      sha256 = "6b1d2403e1e74c97c763476a128c56079d546967c87f1b225ac790d9acb6940d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/de/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/de/firefox-99.0b6.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "433edd8dc45eee166d14d1340453637985f8e606d635ebffed09f20c93cf851e";
+      sha256 = "c8d01b9a1bbcdeb1fa0fa63ff553209d095280ebad4eb03efa47e029505b8204";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/dsb/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/dsb/firefox-99.0b6.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "46b731e6ebac3d2e729e69a2d671b5980f6a2d8ccf83c1e6828feab93bff73ce";
+      sha256 = "bea09c23f3099c85e415bb05916ab9e3374f78e897e2b8549fb9f67895b7c052";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/el/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/el/firefox-99.0b6.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "a6f5e1ce2b6333468a250c1a28bdcb7e44539315ecaf3da09091f7cf3c08f3db";
+      sha256 = "bd740ab9aaad78e4b16e42d610ea1b914db95e2f8396f0e9c4803e38c9810f20";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/en-CA/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/en-CA/firefox-99.0b6.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "bc56c9b18f7d8ecbbdb6f3d4b56607bcf9355156174d537e0e85d41f32876be4";
+      sha256 = "acf5c9da684d5f7bb5b25e5fbd62d5dfafb1a5f33bd6c7baa385a37967e516a1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/en-GB/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/en-GB/firefox-99.0b6.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "35b574db65cd0f4511d745892690dd2e64fa4c0ca1eeb2be56ad2259b45f48c5";
+      sha256 = "76cfab3fb29274bcec47ce72e88f783668653d3f8ea4ad00637bdd7ad5d32364";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/en-US/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/en-US/firefox-99.0b6.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "2968f69125d5a203c2edb96bdb9a922d26064c7f903d5d1b9d7f5d0f7a4aef8e";
+      sha256 = "798f68125a37ac1e60d72dff3a773cd167075a58d523d7d9659cd5fb511e2dcb";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/eo/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/eo/firefox-99.0b6.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "7f5abde625cf25801bede74f74cdc1413c3dee3a4288eaf75d5e967ce133a88a";
+      sha256 = "0b65dc59679b42a298484d3901f3f47d6073f08e260a792a6e80d9c5a0e6ad0b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/es-AR/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/es-AR/firefox-99.0b6.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "1626c5996088df57740cd8907d61210c8081bb0a2a1b19d8bc9129c14fbd6dfe";
+      sha256 = "3a894741998ee1a2adb6def1c8d548b2c5fcab8fbea655a013dbeef9a29ab228";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/es-CL/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/es-CL/firefox-99.0b6.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "5bed3b64b239ded8424a27b01a8456248e317b8e2b8ee92ef50c9462574189b5";
+      sha256 = "1964534e196d426a9d6dbe664dc16790f010214cfba85e98f5df728e110e0a74";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/es-ES/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/es-ES/firefox-99.0b6.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "cf79cade9876dede8e6a4886875181d153169ca4f8ae5bfa9958c48f2abdcdf2";
+      sha256 = "32b21ccb56fbe2e46aba0e21c417e2a7d3404a0a3487186c75d042fd84c5033a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/es-MX/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/es-MX/firefox-99.0b6.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "544ec72d7f304ba702c134d1325f6589e30354d3d4b03d641451bc2f560446cc";
+      sha256 = "d70ff15a4cced1028433e603151af021be98d1026322203f0412605685611e5d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/et/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/et/firefox-99.0b6.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "5a5775bc02aa61edf7d218ffc9506e70ca2dfb781f0abf5e4aabc288328deb1d";
+      sha256 = "df844133edc74d396a2fe66b0a71efda2c4797ca7110a12c4c7e620cbacbfe8d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/eu/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/eu/firefox-99.0b6.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "27bdd41a21e159e19bc9ef1464f1f76ac48126decd2942b4a18d4ea0777db743";
+      sha256 = "1ca8ba1a7ba29a0c21d7bdf5cbb046fa0e145a9bdad5debd93d121b512a060a4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/fa/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/fa/firefox-99.0b6.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "7e3d58ae913c919aab4f716308a9fdc6cfb590538b0dd0b90aad3dc099caead9";
+      sha256 = "a4c223f683bf75c96650d939c56aa17bfeca975ba8863e44dd5ce0449b436b3e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ff/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ff/firefox-99.0b6.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "553b4b1025749f374f82acac4e529799d9e555754e63ae4a8bdf016ac8ed620e";
+      sha256 = "6b165789213fc3f9c3f46457a04974e3c718b2c0aebd44c57c7bf8f41c73687b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/fi/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/fi/firefox-99.0b6.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "7514590c9dc0d9181ae439a637640ee1dee40e00e9283008a54ac3a07ec8256a";
+      sha256 = "eea67a8d94f324a9ab74caae5a7755f9505781ff690760a06a62ad034ba76bd5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/fr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/fr/firefox-99.0b6.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "ffd7579cdb4e6c8f5e1e66b26e3b064362292d93776313b9ded9da4a3b764cb0";
+      sha256 = "d4cc1a70f8d020870ccac0b023574b9c0f39fd44bbbcfd8a35f6c688183f2a9a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/fy-NL/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/fy-NL/firefox-99.0b6.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "1f8457a73eb013abd48669f4cf1e109d307f307881e1d9b46ba9aafb09ecaebb";
+      sha256 = "df49ee1a9db407819fcc7baa9c6bc9c6fc9ab2c2b57b08d85c9478f1b0aaf6c0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ga-IE/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ga-IE/firefox-99.0b6.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "6e9798462e2c2c0c50927276595c42539880cee4f58d00808cdfc5113aba9399";
+      sha256 = "e7e846a95ba695a8a3edf233ad31117f4d35d4942784c5f6c5a1ebed7f2f8e4a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/gd/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/gd/firefox-99.0b6.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "95f41bc7fb4c6fa19851827e0712bc8d7c9344eddc3c341172478fea583265ad";
+      sha256 = "48ef5fa12ec7415ad23a5a40f2f882147e03ecc074b33b173f413e53cc0cdde6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/gl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/gl/firefox-99.0b6.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "b785913074c6d311380b382b63d57c2eae45dffee759d1aa0cd2d0c12f736e1b";
+      sha256 = "b44500b87f3b2219ba10e06bd937ba06784fc00085be12a16f69fe26f7733317";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/gn/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/gn/firefox-99.0b6.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "1b7b37e1569244fdb6a11fa1d8d371d01756150bf376662b2b0246a4f08bfb37";
+      sha256 = "0e521a61d44d1058ceb566ae58272e41f0aab7f2267555781bb3235ff5e3a59c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/gu-IN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/gu-IN/firefox-99.0b6.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "8623a915fcc694e5c8295bc1b95b4c6a37aacd0aed505f91239a2ab48fba8d72";
+      sha256 = "2179c82d7763294f5adedb8c905ed5e009a4d3d176fae58c7503404015214c51";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/he/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/he/firefox-99.0b6.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "52cf134be5f9981534a93d454cd7a893fd605026ad814a7257ba0e59f4cbbe1c";
+      sha256 = "69383070d17f2ae68363e8a29efc53e2748b8f784137c854162ec0132295a9e1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/hi-IN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/hi-IN/firefox-99.0b6.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "e06f6fc47a98f4564a65d236f8c322e5eaaedb98d049171dfa1fafaaec8bb690";
+      sha256 = "71e57a59cfc523d5c1c73c9b5547b3247170865a95022e5bd3098967c3e6002c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/hr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/hr/firefox-99.0b6.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "a93e7425c0cbcd7579fb4de0a7ece495d77c01eb2ce2a11a9413bc6a8baae3a3";
+      sha256 = "9ea82b192336e83c7ac450dc7068f2730c031f43633a87b7fa554651cf64a912";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/hsb/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/hsb/firefox-99.0b6.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "66b42537cbd4d2338fd6a07b86c52c44f1210124f4c3572518c5bf7f0be217a5";
+      sha256 = "e3814f823f3bde2812751e9dd6a2b51a8861952eb04cb845d543a9252501dbba";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/hu/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/hu/firefox-99.0b6.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "637e898fc7bec9727fa489498abf1e6989a32e5f8b92340d0f645aa1150885c5";
+      sha256 = "e647f86de2e7687e23320aa0f36d96743f5da2cf43b2d83444a41506d13face9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/hy-AM/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/hy-AM/firefox-99.0b6.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "b1b6b24039321e322f0b7d1fd2c59de13029aa56017e48e5211c18838744e9e5";
+      sha256 = "21cc172fad6136a17df0a6ae4c6e90ec72a02db744cfcb5252cedcf48223e543";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ia/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ia/firefox-99.0b6.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "5ad069400e47bae81e7e8581e81763905b3334ca5146672317e2986fde7fbfbe";
+      sha256 = "5f0c85a36ec40ef57cfa2bbbc1a4663ce10c8659e0d6ecad67ea993186c9cbb6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/id/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/id/firefox-99.0b6.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "0c80a2786e149afb12de10a49584d6017980e3b52fa1c411d9db289ee537290f";
+      sha256 = "e6671d2ac6b63ea4f2a84d1d0e89038ef1030d85e84d6b47c5b878ddc8d96b60";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/is/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/is/firefox-99.0b6.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "39ebabcb230336731e5be1d4024add0d639b3ef0c9d9d94a9b59b5bcf00c6263";
+      sha256 = "5bcafb210fa3aa06d56f17972d94c17faaaa2937948890b993bbc6c9bfbeecad";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/it/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/it/firefox-99.0b6.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "8646c156daf2b9e76f1cc93bda605186c8041114bcafa8b67aa27c767297a830";
+      sha256 = "3c14104a82a312324c1d42644eca6f80b7375f946a42edcb0a23f8a824bd0eb7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ja/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ja/firefox-99.0b6.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "ac9284b3b994f9e3505808cc94391e04e62fc70a75a7ec4919dec56b79a63f84";
+      sha256 = "00713bc8710add3312294aa755c881701ebbb2d00e1f5f242ca12d102ab6f19b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ka/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ka/firefox-99.0b6.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "3627584688564c9fbaab025f1fc97eb988dc8b5c4eed58bd55f3fa1cb08bcd12";
+      sha256 = "ba6985797ef85bdccb1f81053456baddbe2cfd9e1097e42b20617270f681c1ad";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/kab/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/kab/firefox-99.0b6.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "b0a8e54764b3f0d947894d0daf2a5031d43a65e19fd3bfcda7f0499ff065441b";
+      sha256 = "8be17598d305e257005ba0f9ef2f7053ee7e79bf3c1b4caade77c8e5a7e8a57c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/kk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/kk/firefox-99.0b6.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "b6cc1c4cbe1cae43a45f5fe1b2ea1ca6c3d0de7cf2d085b7e5536232c9213bf8";
+      sha256 = "7e142151f26355256d2923b183fa1d225e3ed26026cbedf9abcebef301dc1045";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/km/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/km/firefox-99.0b6.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "069f7428b290da1db567a21ae0a5dc54a0cea3ab0012248658d3a273c9b45abb";
+      sha256 = "0df166d5a55e52ad60f8873afff5c1c43816ef99b56e1d817b4d4c29f173def5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/kn/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/kn/firefox-99.0b6.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "a7ba3abc8eaa5348b47b287b98961506e87c40740c25b88e0da611153e95f992";
+      sha256 = "193c7b709c03212ba91ea99da00c6b1c53edebbc9390d7321bd9815e5ced8233";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ko/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ko/firefox-99.0b6.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "ec46b6e6f2c852272dc5247053a55797468ba911dad70d4b1d927465ddd6ba5b";
+      sha256 = "d265a984bcc6a381f715eff5e2501acde0c8793b111e15877f7d4e9086ddcf10";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/lij/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/lij/firefox-99.0b6.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "c401224b42efadc03055787bc20df523cfbde82b65d1b885a0ef6ff23bed9a21";
+      sha256 = "4a8327447982439a2f9e5ecff39b77ddd2bfdcb081d9b6f89848f2c93db3b3ca";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/lt/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/lt/firefox-99.0b6.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "323f765f5db4ceb5dcd167ccb4c997bfe820498aa2249a1fa2557285a1f2ad5f";
+      sha256 = "cb2a9545762247192f909c1600097b1198fbddfed1c383adf5dfa9666ddc0e80";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/lv/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/lv/firefox-99.0b6.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "053e095300c9c1ccb3d8fff574aff799c40215482cb977087255d69dabf9362e";
+      sha256 = "6ed249ade30c7d2d5ff290c4b65d3eaf3df4e49e112412cb3153da15bcf23fcd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/mk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/mk/firefox-99.0b6.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "946d5de91994de14941bbd9a4a1ded228b97eb76d503c8aeb164d1a718758257";
+      sha256 = "56af16c66d20eaae2d6b487c3bec4f438d21effd3e3b1582579bb9c1836956d0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/mr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/mr/firefox-99.0b6.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "ed084fcb7285e047548c0969914bc43fa3572cbbb5faae91dc85688e2de77a7b";
+      sha256 = "fa6f5e496fdac7eda06220a423683f608d6c49b0e3caada52b9fd903b5ebcbe9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ms/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ms/firefox-99.0b6.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "58fcdd5fc46f80aef8a736dab07ffce340175ef07845a3c09da0f7056b30df3a";
+      sha256 = "0820d7fcdeb7226d067f920e7cb8a0bb3bfd98ea931d468ae58ed54e074dd1f7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/my/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/my/firefox-99.0b6.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "3049e29781a51f1e9c1f5da7ffccdcc52b71ffd5e7e068a17b364d7b71b91982";
+      sha256 = "20ab8faa3a4aa4b4f94f6c057d4fc9602201a55482d492bc6dd7acc5173364a7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/nb-NO/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/nb-NO/firefox-99.0b6.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "10c4764716f879429754d9665f439c2b23dab89c9a1d159ed229569b987ccb26";
+      sha256 = "77bf24610d6ad64859c83125909b70b3dd768e90e563971461f2c18fa2cd7693";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ne-NP/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ne-NP/firefox-99.0b6.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "a46fbe8f8058d9280d28412bac9e3172d9554f0da6c5f5bfc97258e15bb1a5b6";
+      sha256 = "fe5477509d83a14875e0409f99e2336abba237da75d1e56d753e27b7d1016c9c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/nl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/nl/firefox-99.0b6.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "a99eadaf1d78c5afab26f951f3ee69d49326bac0db27132ac931651a2fa7eb39";
+      sha256 = "3b67159e8d34c836d5367a2e17b54bd2aa274e1f602ae42649afc2ba2fa1429f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/nn-NO/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/nn-NO/firefox-99.0b6.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "b7da10f47cc22661606c3e2d7ce1885a4b6a5aea42ef7e17ec80766d9c5d92fb";
+      sha256 = "4faf2904a8b9a0c315c222d7e810d2fb3e24947dda1e006ddd1f727d2f9f967a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/oc/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/oc/firefox-99.0b6.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "653bc3cbcc3145ed8b93f3835486f2756c51318c74c8ce3006fec19420b771e3";
+      sha256 = "1dfa10fd1d9f958d487023144b7fad8ca8d1e528954f11e28509b7e22e48a341";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/pa-IN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/pa-IN/firefox-99.0b6.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "efc1573dd48edebe52a4ef241132715db0a41b75db7e857f3abd0631fc2e5d02";
+      sha256 = "e6e4cc03a47ab8ff0546457b2ee0b55b8702463ed5666c15c0d2d98716fa84d2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/pl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/pl/firefox-99.0b6.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "a856f24cfdc51898dcad5e2ccd9f9bb406622d33daaf03362fbabfa11893b413";
+      sha256 = "525023c756ff0a0eae303c02ef9b7155fdad5f0f41bc4e539be5ca21d1af0ceb";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/pt-BR/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/pt-BR/firefox-99.0b6.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "1cdfb66a7616eefe00025f70f1e5fd317890a141e5495066971fc53e3102106d";
+      sha256 = "1a8070c38035f97ed771b02e59b3c2b0ef0073560c8ba285be9779fd4e99b61f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/pt-PT/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/pt-PT/firefox-99.0b6.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "c8a127fd0bc4edb0eaad1b06e32e050ffe1df11ef657e05d89de3ec97f8fe607";
+      sha256 = "ea356edfa8b398ea16719993cf05e65b5c63b4d2c4e589a9a26814ae275e4be2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/rm/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/rm/firefox-99.0b6.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "6c4f66d3b22cf226ff9fbfd05e0ce463d80044bccf8228721b5b8cc5476e8d1b";
+      sha256 = "f07ca7d4233860a6271eaa972358bd05b834c7f56c4b64d45eb9af72bcf2dd9f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ro/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ro/firefox-99.0b6.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "08d7eab6ce8f18abde13feab2ceaabcc3e23652730a3ee7dc98d8c9234043b0b";
+      sha256 = "fccb8f523251dba30a73f6ec9259113142514b6d4657f63b88f5b9d9e8a01923";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ru/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ru/firefox-99.0b6.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "e6fa1e2b5b3d0ce7586fba3c0d2f9c34514c767bae4a5066052df2bfb511907d";
+      sha256 = "d87928af8f4a0b28abdcd0386755a3f4f70d7e17e455fe5913b1e177c3edff2c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/sco/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/sco/firefox-99.0b6.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "2c6e9d6804839a525925ad29adfafdda06ecdac1ccf034a2afbcffd5d13dfa66";
+      sha256 = "de3bda2032217c56213f64b31332e8e6ea9598c7f31f3dce1a7b136c40c3153d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/si/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/si/firefox-99.0b6.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "f3172fa7c4655496565322f717f176d908ad60d97c99692a92bfb948186d17a9";
+      sha256 = "22dbdccec8073bd1d83cc236fc563aa97a3607a92e9b3908d4c8c0307dca8b08";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/sk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/sk/firefox-99.0b6.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "78f88185772cf164bf548d134b00d602cc9cbfe88a5b29e9c4a0c93f3de74efc";
+      sha256 = "d5f73c93ef57cd600a2c4269a99a498896b580ec99b549db8b0ee1537a644bb1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/sl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/sl/firefox-99.0b6.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "15f31bf52e10de228b50be002deddc1cc89ee6a882def6420d1055f021f75b6a";
+      sha256 = "12459b203b0de94241b243b07b9f54e7ae612f7887581c5cd3ac7ca2a08a54d9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/son/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/son/firefox-99.0b6.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "b4412fe101e6de2ca6f66d818823e48e337f06490645bd58455c6e4f9aa6723d";
+      sha256 = "2d44c84feaa5c5e3595055289f84f320b447664d01c653b0a3b50f1da24b1a78";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/sq/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/sq/firefox-99.0b6.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "420aaf8816745afabe98906716a8b23d0e0f84de677538a102ebc290c0f57154";
+      sha256 = "fa3f9724380818a71d895252631b354ffb692f35679eb9b8ffa5b2beede8ab61";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/sr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/sr/firefox-99.0b6.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "573aedef6185562efcb03d11e0fe2c19f28f16d593f598b529eab5c80648d91f";
+      sha256 = "c2e5ad218b8cbadfda7c455266e018a6eaf9b450a905e8a73b01d02b7efed608";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/sv-SE/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/sv-SE/firefox-99.0b6.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "13a4fb70bf63f3f99321998e6e01a1eebe745eeefb33848b345c2020c0e8befd";
+      sha256 = "12060ac843f03a7544db8631c7f53bcd0cc6fb15d62cd997b02a83f0560722aa";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/szl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/szl/firefox-99.0b6.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "8daa190aa592e6e11fefed3558c3f91cbcee630e20c3a452ff88d333b483885b";
+      sha256 = "71ace92d020f3fbd1d5e223dfaa01e3a53ac625ba5ecf074153aad8ccb640ede";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ta/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ta/firefox-99.0b6.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "21cff7fb1234defe7732e4e933e24cacfe27b782c37c447f079662ddb6a58d85";
+      sha256 = "6ace267aab85845babad8b11b68e154e1128b920ed16b8b8d011d53f6dced16c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/te/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/te/firefox-99.0b6.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "4f9fb449f2524d47994fa17e8a561b8706f48b36566cf36c39b590a26b04ec55";
+      sha256 = "e381faff48999b63b4981695e7c80bb946b44503ab5275344f12b7005ed49ef3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/th/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/th/firefox-99.0b6.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "f9fedd16f2ddf56c8be38579b29ae2c09b4e62228674decb88475be72eed93a1";
+      sha256 = "6c2ddea1c0ccf0521b9b647827569b78ac2143163895e67476051f8496011b66";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/tl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/tl/firefox-99.0b6.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "b62e425beec561b02a273e2a432eec4e857683ad83295376e902852245ee7b27";
+      sha256 = "9d949c9c61922756d0f2dbcff76906191d438d161c74fbe7d702c7372c11b5d0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/tr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/tr/firefox-99.0b6.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "ce56109695065dbbc78251d436d490bccc895a1a668c3507d6231f71a1046ada";
+      sha256 = "88763e4847b865603a7d953d54b86e6a053d2476209b4046bcb09149275690f8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/trs/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/trs/firefox-99.0b6.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "38451517de283d29f3147b41b1438c99a74eecc3fe56c042637344585bb4d8e7";
+      sha256 = "b6e7aa724a06f85e4eaae7e1c55e3ed1ec9a6b5664150745a257bd3f63310d53";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/uk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/uk/firefox-99.0b6.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "ab9d0993bf83de703245b62fac86453c091ca46f2b0bb3e96c8cd1be30fba295";
+      sha256 = "69b200c0c4c92430f188ea12bf5e60aae18203a76e61cc163738d46c3627b137";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/ur/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/ur/firefox-99.0b6.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "8d5d39a0c363817c4d728c6d6d9cf215d136e60ea989a0578cf76930f5caac5e";
+      sha256 = "330bb00cc0c0882a1e8aa06fdf7d283eaeef04500a9bfccef50f7b2ab8becf81";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/uz/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/uz/firefox-99.0b6.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "e1b4738410bec169f0947c2d6df5048c3c1ca51f632a2a94233be51963bb0947";
+      sha256 = "a9b7087c1deec3aedcc2c279b135b113e79739a28e31ba6cd090541505e5d9e5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/vi/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/vi/firefox-99.0b6.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "b950e0e6fbb707f4c0dd70b491b100f890255077ab756af92d419e0d0518cf27";
+      sha256 = "76b034ed53b8c99cf7909a6a5651627fcd9cdebd7f8ccdbd3d2286cb19dc7eaa";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/xh/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/xh/firefox-99.0b6.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "e01cb86ff2b60435d5717dca42e522c5a4824c09486067574cedf8de09d98064";
+      sha256 = "a1c9ec73200bea835c46879d8196b380a3157c98404e6a009fbdb24b1662ddde";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/zh-CN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/zh-CN/firefox-99.0b6.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "e388cf188ed66903c46c0694aac5725ae1f2015ba3faba4645277d6456719721";
+      sha256 = "74fd44c26c503014d0fc3a32dbb726feefd572ce52697879a392996243b5811d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-x86_64/zh-TW/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-x86_64/zh-TW/firefox-99.0b6.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "b6cdace1499535a36e4573914b49a2c3e4ce9cffbad250438bbaab78f3dbe4fc";
+      sha256 = "a9d86ddb8f5388370a28ac643e3d21a411625b7098aca9c399551f8e2c125da9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ach/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ach/firefox-99.0b6.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "d269fe06dfb496fdb6b9ce50d7ea4c9064e8070bbc2a47e6e6641aa79a13e772";
+      sha256 = "67b0501117e5d93046031860df5dc6eef3fc3126f0b10240cc13b83f6f1cfdb9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/af/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/af/firefox-99.0b6.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "0c6a0ddb0937c59ff5b88d09ef291e685cb29f8435b4fb6227eb0c12b82d20b5";
+      sha256 = "43b9b1107fb13b97f6b955b3abaa4f1d590bbb1747859e54bb306c9578fbdfe6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/an/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/an/firefox-99.0b6.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "efd0afc4e2ce06b094a2c1fb005c246bf8dad02fa9b8e2a0037e6f88f0fccb19";
+      sha256 = "da752ce8f7a9a0769c93f6f1817649354f892c440cdd48f0dd75739baedcff40";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ar/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ar/firefox-99.0b6.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "29ef8698f0026dedf638fa32a2ed32d0014e131f41500969d271ca62c38f5cc2";
+      sha256 = "e67fc64daef74e78eee12a1e5d4c1ef5a89a8278d19187d9e0c67ac5ea350623";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ast/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ast/firefox-99.0b6.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "244697199ae0e2895f242c64bd6f23d641deb124950ded7a0c0e8d1e18017636";
+      sha256 = "115cb0605bfb7629b854d242634cd2797b5072f735c840a6611325faf7bc3f77";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/az/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/az/firefox-99.0b6.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "77bf85d57fb887f5f1e0073daf09807286e2e5d835ecd9400f698dcf0108a949";
+      sha256 = "c839a19dc4f5d938fe7a5426a8abd7b228c89a262201c019b4b53953211aea78";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/be/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/be/firefox-99.0b6.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "6e18fb3773dea1a99c9ea383868a9db07e2bf2a0ba30b9acd283107a3b557b17";
+      sha256 = "94c8e688578059f8c4f7fd2a65a8fd77280b4047e845efd6ea66e34f5320d119";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/bg/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/bg/firefox-99.0b6.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "1be4cc0e4a2b9c4cd00813cade9b09db97f3cec3087d103c0204cfb64bceee12";
+      sha256 = "9f7acb26e7cd9193e9e435da3e2f4e9d9ee82195cc18e8de8295cba2446da1f0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/bn/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/bn/firefox-99.0b6.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "c18cf7a7dd09718fd59457e8eb7153229061e4962e29abde5e83add456e2f086";
+      sha256 = "93f31b395a9a42386b0de322db1f675810a3db106a0e8c583f18ad4dd0c56488";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/br/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/br/firefox-99.0b6.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "d6ac7e4e279ce4858f77cf3613c05b4d6dc0ac0be4cfd66aa880b5761f9dbd02";
+      sha256 = "a04a2b2f2b70f33bfe288d9907291aa61f2daa64d0d6802c784d7b4f44b38326";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/bs/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/bs/firefox-99.0b6.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "b785f4a680031be8ab963a66df4d61dbc54510fcd400d7e061c54e4bff554dd9";
+      sha256 = "154456c3aeefe93d6891306fe295342aa02c294bf64693fe93943ae836fc796d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ca-valencia/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ca-valencia/firefox-99.0b6.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "69ccaf431b505db72245a8a6bce287dff88993055cfa3bdafbb31ef9783598bc";
+      sha256 = "c00ab86f77e5113f85feb8eb14b74c2c144e9c7e08c4442b06b749ffccde2cf1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ca/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ca/firefox-99.0b6.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "d779e8ca6fcf77cd4c5e0edb4883d0d28dcba2eba456de9cd4216d96e7aedb03";
+      sha256 = "07de1d9c72f9d5487b9ff57ec609a2b6ce37a8b09fc81200a6cc6610a7e66b9f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/cak/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/cak/firefox-99.0b6.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "dcedaaaaf1d9acac61fdedaf893d288052df18a925f8853722934ef54e92a71f";
+      sha256 = "ee05ba6ce42f873ab79032553302caae28069d84c5105192623f1261d2d3d609";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/cs/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/cs/firefox-99.0b6.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "b761e7d712a9ad951a00ee73f36eb5a764faa1285ce22af168e4dbe1516edfbf";
+      sha256 = "9b2af581c1c70b72cbf82cf656f94e65058063f0fd6807d99760dfe9b68af808";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/cy/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/cy/firefox-99.0b6.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "f640b0ffc029f473c3638ec8e08884997533d087cc8590a35458571403b5396d";
+      sha256 = "f638faf94045b5e739736926e4b3e173f8830542287d46aed70337d9ac3a4495";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/da/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/da/firefox-99.0b6.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "0e56091cf2787215884df9c1dc0e2c208021fa99088d0dce18324b18b0b57aa5";
+      sha256 = "3dad188b310fef15b704ca788b320d502a0a6ee59538296176fb17d2b440163a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/de/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/de/firefox-99.0b6.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "39d1c2ee79f1434f263ff804122d9dc20744c8c050513c95c75d7c424a5325c1";
+      sha256 = "1bdb5b60bdf16126de86ba1413eb5ac4184f727b3e57a36d424dfe39647f53be";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/dsb/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/dsb/firefox-99.0b6.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "09544d8f51134e5f74c5d90b98844e49ee5b0be7ed5c63e2fa9753a08cfd2600";
+      sha256 = "b306d40607d73314c0e3e87bb1bce65369846be3e370943088a8e7e9731098fc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/el/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/el/firefox-99.0b6.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "c76d10c0f9036b33e5e0048fafa7b4d8571af5e27f25d7dc92c336ffac2726da";
+      sha256 = "45202f79f9cbf2a44bfefa9ce50bd0a6b88485207105db4df1f26f547c1f556b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/en-CA/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/en-CA/firefox-99.0b6.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "c85152d5ba80dc5a843312da61aed21834257bede5019b1042353a7955ef0e35";
+      sha256 = "78020bb6fa9395fc4e2cf40645e127d0f6d6dfca4044e5c00f63a90e24824add";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/en-GB/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/en-GB/firefox-99.0b6.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "52696aed9eaf8be1994c88ed50925cc32f8139aa92ed9f9e1ed91d8c01468e44";
+      sha256 = "647947c0b765d1142947d3cb35ceb308946090e928ecbd4cf8c3eba4b57afa47";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/en-US/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/en-US/firefox-99.0b6.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "e60a2d3079cb76ce879cda5d9c67ca33938d501c3ceb517fd69b58e6f932bf2c";
+      sha256 = "4249f742c2918d66af2e7defe1c6b34870f258fe047ae7b38f91b0394b453cbe";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/eo/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/eo/firefox-99.0b6.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "0f27a6f422d03c65879233a22cf469cf287d24d7c250dcea2bf8d845af303bd7";
+      sha256 = "1726df9605c7deafd6963c18c4b8dbd4bbbed86814fa9932367fd04f6ef609fc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/es-AR/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/es-AR/firefox-99.0b6.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "639027a3d48570d8bc98965802f9b7661d545ece751ad1d734e7e303f8649962";
+      sha256 = "c3820a35047f21efc721889fa0003d8e74e13858aad4d3aea038c01b5cd6c657";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/es-CL/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/es-CL/firefox-99.0b6.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "44f2a552486e6f22b111e793d0e69a67e635929f02f6f3da814dd2daf22210c2";
+      sha256 = "b1f5bf697007d8b6ac9f1fa057f292bcfb860d71229a7d0ad6d611ab02991211";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/es-ES/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/es-ES/firefox-99.0b6.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "02e56e76df00d39b0a8fd68038a9e8c956ceb512867d453f47209cdb9ce65597";
+      sha256 = "de33571140d165d0422b2e4543893bab6435b6626333a05bfef39682ef759db0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/es-MX/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/es-MX/firefox-99.0b6.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "2386378b0917c770b419ea6561823ab0cfebe36c28a36e7747c47fe68201f95d";
+      sha256 = "f681be5b92c8959e0e8c90cf4c7f6cd9197e11be1828797e853310a49dc76698";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/et/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/et/firefox-99.0b6.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "382c77faf5501c3f03c626b1a8c99bbbd0d60cff39ab1b0ed33c7a3903866d03";
+      sha256 = "476a0ccde58372bffea3ebfb0d88795b31db2ec622f9c1b99df51287aa8ba69b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/eu/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/eu/firefox-99.0b6.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "9db254a521cb2185c82522121ba5f7d75a819298abb3c301b6a8b06007d242da";
+      sha256 = "d465a6a4a01853724894fd81e31b63b80e830cee268298d6e037e6877ae77661";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/fa/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/fa/firefox-99.0b6.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "16576d6924c772e5d05285a8a9367e3cfbe407f26f96c499fd829529bfd3db4e";
+      sha256 = "cf8ac9c8d667ccb0066db1d20a9f43af807e40d1746931e001ec900b34fbbc02";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ff/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ff/firefox-99.0b6.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "e26dd072353546dab184c4fd527525bb23201a8ed05c3c2bb672cf5a3da2e776";
+      sha256 = "86dcb3f9e1d899973eaccd3caf401471b36ff70f4a4693fa9f857083e8641a2e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/fi/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/fi/firefox-99.0b6.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "e785cc2e7c9abefcf9b4114f778def4789635e1bd0f354082ba1040435d9c4f1";
+      sha256 = "ca0b830aa6ec724aa31f957e7c84156726c26fa0a74ace80ecdea899a8091f82";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/fr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/fr/firefox-99.0b6.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "7debe05c2c0128f6a125c627b26e441547d4da485ab263c5b5190cf5cc04b3a5";
+      sha256 = "e94a7a54ba806e2b4baa0159d2f8cb96e79abc9c01e2526821cac8253c6ad495";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/fy-NL/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/fy-NL/firefox-99.0b6.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "6da5b56b5df3fda1f8ac8f35ed80a0150e66809ab4ae18af8e114a7e45bd10a6";
+      sha256 = "cae5c9c607c0dc99e4645f756befce2c9c4ae83b7edc39cf12af81781b33a7b9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ga-IE/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ga-IE/firefox-99.0b6.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "e145c6ec469038e9cc2e195770fd5eb467bc3859c465d9c570df06e1af0d9532";
+      sha256 = "b9b1cb2a48cd17179d5e3a8a3fca9ac25c3367ff6281f632d826cd6a9bb4a633";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/gd/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/gd/firefox-99.0b6.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "d95b7f7aad0d343bdfd8814f38ea59ebc277ea85426fb447173b0a1b4efd9a74";
+      sha256 = "b5454de81ba2fee053e98dcb37d3703b5385a51561e45fa32f6872494cfc047b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/gl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/gl/firefox-99.0b6.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "def309ff0f7916df41f34ffe9ec2260a0738da4a2657020641d6d03ee2faed93";
+      sha256 = "be3b3decd8e75740a317f105bfa2e4c919ad7f31e391845fb60b299fae7bea7c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/gn/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/gn/firefox-99.0b6.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "1dfb7e8a36039e5bb434f1273cf9356a3826444f0f6b058897d16d4b9b0d8676";
+      sha256 = "394562b739f81ec43a954f7393c5177f87d3d5b36d404d97e2e483f3000bb615";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/gu-IN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/gu-IN/firefox-99.0b6.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "1c3e77637bba527e9a229665fc4a4921f0b26e05c14e5257a0b28507db34f08d";
+      sha256 = "d2e36f37146b48cbc710af7663ad8b4f7770dbb5f6a557e3f54d637e7061ad90";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/he/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/he/firefox-99.0b6.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "d54c2e3377e75dea8400d9b5486259f9be1158e44f520439912052bc2097624a";
+      sha256 = "17bbbd7768ff852dc1f27b224b77dfdaaebabaf531028c71a371bf302a9dd92d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/hi-IN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/hi-IN/firefox-99.0b6.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "a91f89a416dc77cda507aa9a1bea653f48249f55ba4655489a4376ea92cf066c";
+      sha256 = "2f431a3e50ac0b74a2bda65652a5aa45c0e1b44ef0837645ec49e30c6d0d7fbc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/hr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/hr/firefox-99.0b6.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "ce38b5bc0b04a1bd86e2f5cf345c25718103d347803eb72d46f1cb90553695be";
+      sha256 = "e57e5fe2cb59c25002e9c06cd3298d9cb75c4437ddc9556590d6c56a1eac57bb";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/hsb/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/hsb/firefox-99.0b6.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "201ec9e0bb4058d7183024545af8eefe0cd3505fe557b2d541d8a7330c2797fa";
+      sha256 = "7c1eefa455afacf5b3b1ee1d04b6e793e2db210912dae58910093c70a21a73f5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/hu/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/hu/firefox-99.0b6.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "997a9884e4669e6e883703934e4d747f784f38fb374ee43c7d30f82b9462bb2c";
+      sha256 = "d2b02034ce6686e0743af6444acc2a23ed657124bd7bb6ddfaf6d24cf11730b6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/hy-AM/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/hy-AM/firefox-99.0b6.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "fb97cbf935b6ae92c8c17be640820e4be73fed59d385bdeb2435ac2253c66651";
+      sha256 = "75589d2abd9488269693c0a0440d6359bafb354b1b5ee91b90306871903eda0b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ia/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ia/firefox-99.0b6.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "d999259f970084c684cf543460efc6faa3677eb839c67e9743af24232d81ecc9";
+      sha256 = "b26efd6320a41a558383e22db49cbcdd930161fb48ad0032d24e44b57b01f0c6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/id/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/id/firefox-99.0b6.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "d9bcf799f9d744ba94197900e2032cbc42e4eb3f5ee2d429ede4e2ca47c45d63";
+      sha256 = "d50fff8b0ff7ae5546ad3f25e485ef51280bd022708e3d0aae97d99f79788f0a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/is/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/is/firefox-99.0b6.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "69e55dfe9e542f9c4e0cdcd75e24c346ac565012b2214ad99534ff643d5b1a9e";
+      sha256 = "4cf7fbadac8084b8e134f6110ee07076ddd93cf00a10b6ef3d6276df9080bdc1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/it/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/it/firefox-99.0b6.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "b10c9af0a38a7cc456d7392dbb4a01a964e68fcaf963868011ba104a01c10f59";
+      sha256 = "6fabf495a730600869f6d1e2d9382120361f5061e3a893321f68a6378f7eeddc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ja/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ja/firefox-99.0b6.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "114df4baff98d81d046a069b6a3271f3cd385cafff9681bb1bdd988a4b806eb3";
+      sha256 = "95a537b3306ae1f6bfe9c4076042d6c29c6478c0f32e5aa4a01e800c1d2a75a5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ka/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ka/firefox-99.0b6.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "79cbe62f30dc117fb656db52ba61895dc830f2f53b8f02edb69809a8fdfe4722";
+      sha256 = "e73b2b555f7318650ca1ea20f9d8c1fbc933d230eba3eaeb5e5a47dac24797b1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/kab/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/kab/firefox-99.0b6.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "babe5ff8170ac703bc95db0c9b54e6c05c12e198dcdd42f0fce9eb2b2a366606";
+      sha256 = "cd55879a883ac4e4efef972d6200284d6839dc786e7dad4c3a81fd88b89b18ab";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/kk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/kk/firefox-99.0b6.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "a4e3648681178444d8527539523fcd177741ca74a11cf608ae7cfe9608ff46d0";
+      sha256 = "cf2dd9ae9cd6347eaf976cdcf4a6cce81abb741b0cc273063cbe1274d271e05b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/km/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/km/firefox-99.0b6.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "42dd57a33216a86ccfaf915dbc2513b6ff9441ff5820cf51b0a97bdaecf1c00c";
+      sha256 = "f0f3982e7d838841a01b24c330ed3e74416073c40470293447551aacb5411506";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/kn/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/kn/firefox-99.0b6.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "8b296ec5f02e7135209f83c53bb4d18c652336a4068b17db99b10dc9d3500744";
+      sha256 = "3e2953e55e3bc7fa76ff77aac08f79b20bbf2be52683c08b3d54a323a1754ed7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ko/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ko/firefox-99.0b6.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "85829c8e7d52e7e5879d52897ffee0763f3aa03b754647a4d4c0e2d59cfad230";
+      sha256 = "5c5bec8a40dbea26674eb2d4b7160c1c2f3ef37f68d67c24a7ca6a2cf77eac85";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/lij/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/lij/firefox-99.0b6.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "89f0205a14d7b97c635382d3e2ea045103eda9df9f0b7184e7655626b34e39f6";
+      sha256 = "7cc492c5eff065cc3cbceb292d18d833e9f2bf76ace0d5ca960256290f049f94";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/lt/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/lt/firefox-99.0b6.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "f9f88f5d24d5edcd157a030b482c50175bda9a9d4d95499b668227438045b6a0";
+      sha256 = "b4b56e01e65ffe4f7232daf661df178d4af1d813e1c8122c4ba56aada0b2ef52";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/lv/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/lv/firefox-99.0b6.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "7da0fd946c235948ce659947e53f389955e12a10251d2ad564ba6808e13aee76";
+      sha256 = "b13ac2b90f13813b8252c5eb817d0f55f770a58e05f8a98b1a08fdf59fc9191a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/mk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/mk/firefox-99.0b6.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "9ffa05fc839c67e5c709b6203627b75b7bf7765e5e52e7151561ae0ff36d43f8";
+      sha256 = "6b1d2598350feb901e86f332598688853b607c7c14c13ac228610d16e89eeda3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/mr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/mr/firefox-99.0b6.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "ff45d74bd695b8677ba76ab1cf6a7726ac08d7ea0c6ed6f705dfedc536df8112";
+      sha256 = "9a6a47fc20500b4421b12381374f0a8ecfa9a0929a54a6f6dba73e1c2e5a6c81";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ms/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ms/firefox-99.0b6.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "9494973f7facf05b5636bce50a39151596b827a3444ce80a601c66e55b488af0";
+      sha256 = "e79c4f88952ec9061b4d90f8ca5970be8b5c19cbc1df8d9970b9b23c801103a1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/my/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/my/firefox-99.0b6.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "ef0b115274304dd0925d643903f15ac7d6c26281ad5ec57c6b73a0a0beb97486";
+      sha256 = "f8ce25b87b639843fa6fab4651326719f229f91a4d6b3a6ef17d0e9f4035b1f3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/nb-NO/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/nb-NO/firefox-99.0b6.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "79c7211ec24d7855f890cd83a65411302f0ad4296ed19fecb86969e62ab6c01a";
+      sha256 = "03f5550bf0c0f33c3cf252cbad1650204e008d852e6db46a6f7fb6f6b5ac10ed";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ne-NP/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ne-NP/firefox-99.0b6.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "b4fd3ba21a5c906cdeab13d4db78c4d8c43dae758211d8edb6570d49561b9f26";
+      sha256 = "5d94d2dbdbdadf6abb7250772e6e046b9ce03cbf5e4c920ef7e8b5cae69359b7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/nl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/nl/firefox-99.0b6.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "cfbfaffe54246e4ced8a35edd67b5e28567d9d61ed4fe867f11fc479864e8a6d";
+      sha256 = "3045ce321c102e2c114a48a46526572a2c52d228b44ab35d8241d92bd65dd9fa";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/nn-NO/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/nn-NO/firefox-99.0b6.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "74487e82d428166a870b0593ea7be3de9b912132542ff98bd3276e1b9091fc21";
+      sha256 = "a16aa9b6de0ac4213492ca117eb47fbd4994824c0f080001baa9136231fb69cf";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/oc/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/oc/firefox-99.0b6.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "004d5e020a627f95572f2c52bcdbd0ef52b66134c5ad64328c810ba2a910cfba";
+      sha256 = "70bf39cd4c3fc4ef772dd71d97f71fdc92324ce2caf9d359cc1d3f3d1557c3a5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/pa-IN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/pa-IN/firefox-99.0b6.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "4102b176aa98362b3ea6bca76bc5ad3fee3849b833f192d55c02ec72bbd7fcd5";
+      sha256 = "951263906c05aa6f60a65d77e917a95ce10e8ae31f156acac7f47ab4ec36deab";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/pl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/pl/firefox-99.0b6.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "acc2990be46dde74e93acc0e20d5c59acd2ec9b0ca2d3db1bc641eba9e17dd6d";
+      sha256 = "476ca14396dd7ee636ed1e74a20d9d0ff3b0c452e5b5f61eae6f0594ba060f3e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/pt-BR/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/pt-BR/firefox-99.0b6.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "c1a286c4369f13a6df8dbbeb9ef60dea11d36d38e1403d8e9bb8387fac2226d8";
+      sha256 = "33ea09c993bddcc36621ae633713e758ac33349847604995e05fce0d26be398f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/pt-PT/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/pt-PT/firefox-99.0b6.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "35805803b8487ed6f28bf8cf6ffba764c479cf0eb11bd418ae2613831ede598a";
+      sha256 = "fd4b924d8afa163ec40a2f5ca6ae0b89e1a22a8be8b8fbf9f43012159d0b7172";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/rm/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/rm/firefox-99.0b6.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "deb2e23159d458e4e2b030678075d793a0d68e87fad38473267e7e7d57939715";
+      sha256 = "97ce5f4af9e8ed2af039255e284ce1b55b6a3ac0eacf4c40be82b635b1df0f2b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ro/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ro/firefox-99.0b6.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "bb0c6227d2903080645a7c7ed0665db6922beda6438d7b82060d890b9ace2a64";
+      sha256 = "a959d39333b98c5a479e6975dfa82a4c2b3efe5d69d2d99fddc8d2aabdbe95ce";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ru/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ru/firefox-99.0b6.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "b06680a771d8a347c25b65a56cf76bbfa1294fc8c7a2a303bf92175aec1e952e";
+      sha256 = "e4f65bbf839054b7009e01461cf4a0b943e1373df054e9b40797b5d233654aac";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/sco/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/sco/firefox-99.0b6.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "0519564a5e34f3c9c9ae9605f520da542bd69f20f9410c47739e30ed290ac5f5";
+      sha256 = "fac16861dbc011655c3b36b31d5e0816a09e1f88e34032d247d09f691c097ddd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/si/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/si/firefox-99.0b6.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "8a5d4685384eaec411a278f92aa2c09f667df430cb65920dbf4f2a22ab749b22";
+      sha256 = "93423cb2cccf166f374fb4b8779f337fa1cfdff67f0f2c463a398a35ecd251bf";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/sk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/sk/firefox-99.0b6.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "6083bdf468dae23a0cd69506e04615f7312dfce6ee0fad744432f316001b23b0";
+      sha256 = "e63c2240f7b791b01c94084dbb28d74ddd6528a7bd1e62bb74ee9271d0fd81f6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/sl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/sl/firefox-99.0b6.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "42ae9e4a00b8a939a934505e5b4898dfc5edf2ef7c63451784770ae8e942dc3e";
+      sha256 = "87064873e57431bb9cfd3e231df07753c8f644e218ea0318b3731baa05b16c1e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/son/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/son/firefox-99.0b6.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "2d808b21afc4b1af9ea72880acac4c017566e74d7a6635d0a3e9302159961f2d";
+      sha256 = "6ecdf2061f0787fc9adcd27465211446df45751d103e279aa50f278361061728";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/sq/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/sq/firefox-99.0b6.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "799099d98be61d2ef50988e4a0dcc910a3d089c8b1b156c340bc6f306f0c05bf";
+      sha256 = "47783d01b35119b158c746c5ccede7e4832d15317958030306035d1b448b77dc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/sr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/sr/firefox-99.0b6.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "0627104342fa014aa267b4874d88592aad131b8b71ae9da4864233217dac9fcd";
+      sha256 = "4aa1908894de6eb3640b497361d5245ed3379d29ffe6e10401540cc1c10cb965";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/sv-SE/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/sv-SE/firefox-99.0b6.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "cf22010a41298f31839c61c749b7f643f92b792050d62060305284d77fc21b35";
+      sha256 = "2334fb5859711a4471f06a9eb81907d0b41ba52a8fce05b7cec320a0d31a4167";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/szl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/szl/firefox-99.0b6.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "588fed1f0dc77c8d5a18ddb33d04c5570efe80adf3e96895b1b0243e82e92535";
+      sha256 = "39ad1c9f4da42278f2a1b3c125aa7e2a8005376a6f458a03851d42f85d116dee";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ta/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ta/firefox-99.0b6.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "6d10537d9268c509fed6bfd86eb53351b772ea2ba96c0f386d589765b0f1153c";
+      sha256 = "24055aedcf23fcde0dc519bc2124a8d42c82ddd74dda46b694a20d25ff76d2ce";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/te/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/te/firefox-99.0b6.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "4ececc1167184b3a531f8176f4282b34b2f5e2c98f329af7dc67ac5be5efefe7";
+      sha256 = "18a90860a6428ab31229c975927b264d75b2e2f186f83ef270262f7598053d48";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/th/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/th/firefox-99.0b6.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "2860a9bf015972a38b1a15bfb532b87c65e2edb7b9ea8ed2db8ee6ab03d4e281";
+      sha256 = "b965a21a0585cc07714c39ba33afc5ce757294d595c7617ba5b330a0d1d8cf0b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/tl/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/tl/firefox-99.0b6.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "97134e6fc0b07c910f8a2ca263943724e3f5790d62b4f0d2fc697c3d5a15a6ec";
+      sha256 = "cd1fb6553daf6b123e6545cf0553038b2f16c12ae4a21425e253c68124a8ce42";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/tr/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/tr/firefox-99.0b6.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "5b38cc44c7d8aa425e70903f192f2ccf8cf4dbcd40952d0014a6f16c81ec66fa";
+      sha256 = "2a2c6abfa119022520e8a3ab4c430c282a7a3f7d5e72d2a67d070a64398b2bb9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/trs/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/trs/firefox-99.0b6.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "e5e7db1ca4c8bff1623bd2b78b1d66617510419a893f324af8092de1a9476a51";
+      sha256 = "aae079859fcf211c1e465a00a6a07514397a9f715bc02d704daf062e3d75220a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/uk/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/uk/firefox-99.0b6.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "357410778b50cd6da76d178dbc88efe9bdf01e71895699e1616ef4dff253aae1";
+      sha256 = "04ebb332d79d0a9aef5d2e93b2aa8dae0ded8d4e4c639d192ac969e8033ffa24";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/ur/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/ur/firefox-99.0b6.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "f38359d87aa018b4bd8fee63829a04e7d552c928b945f74c3f2e0ec21524ea03";
+      sha256 = "8a8d6d6503657665882ccea44a56b324253adc8d98eba20696ecfd096311821f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/uz/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/uz/firefox-99.0b6.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "b23c4436a5fe3edb954c2ddc16ff16756d672a89afed91e0753b6f9c7018e9d9";
+      sha256 = "e2990d6a4c3bfb5547bdac49a2499c7dd958d0b8e665b636e0ffd6e9aebaab58";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/vi/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/vi/firefox-99.0b6.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "7156717a71e9fcc8d98eb0fd544b5a3bcd8ade7e805e7a2806b3b3ac363e2402";
+      sha256 = "b7c2a4d8c1c400f44fcad7e91572134328097d183c76b8e22d5eaa0a4959d35f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/xh/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/xh/firefox-99.0b6.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "5e5b2764b860bf45e5cc738c1d6ce989a6f85b226ebd4ab59d236295ef596a51";
+      sha256 = "e3dc9942f397812564b5d7728bb4857f0c217183300ac0ab28590921f56bda34";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/zh-CN/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/zh-CN/firefox-99.0b6.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "74fbfe561438450fc28539c6d88e16e89abcfabcb025dc57aef87bb2aa64bee0";
+      sha256 = "11ff62d8f465b9ce17591177f1fc98d6dcbbd819332f65bcffd685d43b5aa285";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/98.0b5/linux-i686/zh-TW/firefox-98.0b5.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/99.0b6/linux-i686/zh-TW/firefox-99.0b6.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "12467aa41392d7429a91d01e35894fe5bf3d18cfc4091e349490f063e4b69247";
+      sha256 = "406200aceeae06ce5ae2d736d8ff42713e2275b5f369682cd49946326c5cf21d";
     }
     ];
 }
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index d7b63fe46bb5..080fec91c1ca 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
@@ -1,985 +1,985 @@
 {
-  version = "98.0";
+  version = "98.0.2";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ach/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ach/firefox-98.0.2.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "92fe50154b763faba3d923ba19be737a7e6c48c04652275da2727489c0f3b14f";
+      sha256 = "e40a11afbb7a464eb7817457cf360ec2b4e0d77b8d5db5d7856c5b79cdb1425e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/af/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/af/firefox-98.0.2.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "f086d9cf3142c7adebff590702f497e1f99d74ccb69b7001851e1b0329b9ff7e";
+      sha256 = "8d0570e82ec73708933cbe2cacd53d89503cdc7d1e97cc57edaa066960340a1c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/an/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/an/firefox-98.0.2.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "5e7e8fa95293bf2921596ecddd10217f10682e4a576b3f0f8c70021ee785afb2";
+      sha256 = "04403b0d68911dde99880c76d1e87f1315d1c463a63711e37e0f40abbfd9c2eb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ar/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ar/firefox-98.0.2.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "cf7e5bfe6fcc19e0e6ac6b2646118e25b471cffc025d1de85ac62b0569582285";
+      sha256 = "57ab64dfa19fead2a828333456921465cd77e37a36d2030f81b7c022062fe215";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ast/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ast/firefox-98.0.2.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "54c694772844caf3946520aa624d8a5c8d2d21ab29c64bc1c438011ad830d001";
+      sha256 = "3dfb8f3c288e6c910d929da7c0228c52c490e33a1fbc99ce90c231e81cd9896d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/az/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/az/firefox-98.0.2.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "0e342f5bc920684c2b7ae988a983e27e0bdf130b6f1e210952139edee2ea9827";
+      sha256 = "b5fc1a8d7decd2372026f9e4d4d8bb4d5fd839b165168f01e08a9641c0d7f92e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/be/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/be/firefox-98.0.2.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "89973f6718cfb63e43713594089618355e5c8323b3912a7a67d4d0fdfbe1cfd5";
+      sha256 = "8b1fffc493c20318533879ecf9a006d0215d7c6f2323134fadecdfea68aaaa6f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/bg/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/bg/firefox-98.0.2.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "b7ea5573feb114ba63e5f0b516f36d134b4015a262c2e7f824dcce5cf31d7058";
+      sha256 = "852016bb71423b058a195d1b8631331a6da144a20c0d74b641d6189c93730ad5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/bn/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/bn/firefox-98.0.2.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "bc4837219822c224b556c826f83bc913f9454da7aa9b26ff3a44119e5284b63d";
+      sha256 = "748e7303d01ca41fed55dc31d0bb57458c69180499bb5915ca4c835f7fdb56c4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/br/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/br/firefox-98.0.2.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "36d61c43e4aaf323763676ca5ac5be3e4c23af46b4aeb00409ca7391cdf60143";
+      sha256 = "efc2e20d5201621c76411ffc3c7df227c9462bb6994f7ad19d735c986c362aa1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/bs/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/bs/firefox-98.0.2.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "6215685be94ad53ea827a6366673a14c327d2e4fc94fca51918b6cb2a8fb5897";
+      sha256 = "adb507af1a64e2c72193942b2c3a839576ca7d493541bdfed06b0f838f3bef43";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ca-valencia/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ca-valencia/firefox-98.0.2.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "15220b2edf948b6027d391bf0140becb69f529565094f5f10a65b090456cc295";
+      sha256 = "1cb7d989fcb1ca726d022a2e20523427d9aa0718d2129cea5102971624edff61";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ca/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ca/firefox-98.0.2.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "1060f9d8a46d078b3a1234116a2b963537213084e74dec8fc6b2598a8e863196";
+      sha256 = "0d746e8c8ca233d4f4161134f920a44e1a3593a2277101e20184087f76a443b5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/cak/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/cak/firefox-98.0.2.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "03a302fe8bea3dd231b204946cd843850526652ffd2b77b4110c97ddcd6b4f54";
+      sha256 = "fac629e27bb9e60fef81fa58268f9367a95af59b299a628ffe692731fd5ae4c8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/cs/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/cs/firefox-98.0.2.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "6815701642c6a76a3ee5f75433aa91d8e0e23b8a68c3f2204862703a4426fede";
+      sha256 = "7f6f30ea9afac44b1d1fde8abe2701f8f83b3014aa1c98fba1e2c4ae6c841140";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/cy/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/cy/firefox-98.0.2.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "f68a21a0dd833f51a9d8e66e0c5d970b5d704472728e3585512d07fcbd28c470";
+      sha256 = "63c2b0bf442365c7db1cf96f192db016c4ddd4233a32190d657779a254871a2f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/da/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/da/firefox-98.0.2.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "66689f2a8ebdce69f3f83edf2e626017c51dfd823340a946e23550d93cbcfc80";
+      sha256 = "f7d18039814a6310ce4a4e37d10d131639868a6f5ae85c4718ca1f9ceb90ae13";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/de/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/de/firefox-98.0.2.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "183b0453e691f33ea7844a8a0b4fe91cacfca64b07375d85a84dc58aa95fdc5b";
+      sha256 = "736f10e89507455708e40c9cdbd093fb1cb802ada7dd5d3e0d612cb0e11db096";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/dsb/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/dsb/firefox-98.0.2.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "b129086ca18bf18ab583015c2602710e7164a53bb262c8e3ecdc62092d88eed5";
+      sha256 = "50ca85b163011ebdda69be8772a76ff4a912653a03d527784b18bbffd7c63a16";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/el/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/el/firefox-98.0.2.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "46f9fc4b9cabb2e9fbee8a6453b7e5cccbed4dc7529717e917e4c3be3bb7fc54";
+      sha256 = "4b3a28670c6a7577f65dba7f857e8c68009a8d1e80089707d8d830e02a5f7fa3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/en-CA/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/en-CA/firefox-98.0.2.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "5f7f255b6d210709f716920989f835f4908bdf02a5a2c1f9c12a393e03da6a8f";
+      sha256 = "f3a7c9de172b6ec0673d2600537ab9265cf3cde3e2fa614424e9f4c08986eb7c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/en-GB/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/en-GB/firefox-98.0.2.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "a940242819cf79b1bd834520358e0aaea24e682cd5019668f356460a6815e4c9";
+      sha256 = "49f044b0b5f841d5e42b9c6275dc7c78e2b2f903aa28f0d6a02a25a41d781d23";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/en-US/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/en-US/firefox-98.0.2.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "1a3d68e5e449faec50a427f709b98078bb57aee8209743a0beac978a4a72a05e";
+      sha256 = "07c5f3dad0850a92d5c609278fb1fe682b2562fa55e6733c09a6b4da7373bfcc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/eo/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/eo/firefox-98.0.2.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "d070191b8184943b55c4a68a3b523712ab04b0781ac835ec1f31de5aa170782a";
+      sha256 = "98626ef3b514d1ddf0d9d530ef7b3ac8bb504717eb633f036fe9cb9437d8ea56";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/es-AR/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/es-AR/firefox-98.0.2.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "d5a3c016b4090b926710c184729f2a59af3c257ec8ba48dcadb6367f67976192";
+      sha256 = "86a57a29b086fbc1d59731f94b792d1116a358e4735d9a8d08c022a2d5c7d0d6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/es-CL/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/es-CL/firefox-98.0.2.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "c22546ecc83739731783c6090172b1a8ca9082415881d62c691a97ed27b0813f";
+      sha256 = "834bbbe0388631cae1e87e464c0b4e0151c37341828d71dd99fccc2d56c179c2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/es-ES/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/es-ES/firefox-98.0.2.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "33a424c76e44d1ee73e360da08a5aca42ab30bdcc3ad2524c0c209be37121978";
+      sha256 = "590efa38b4a374ccac89128a0e84de77492f1a8702e70b3b13d9a456575963f6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/es-MX/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/es-MX/firefox-98.0.2.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "5ee32de772d925389210cd210c326f3aec85e9ad45b8041a373cf8456008b7eb";
+      sha256 = "f64ac621daa5f891541d836727d91cb56d5eb8db6093aa7f83af19adfc49ffc9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/et/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/et/firefox-98.0.2.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "3bfdba6becdc20002d267ed8d695b72915f4d59073f0c0c5c5858bd383189017";
+      sha256 = "08374c6ae7b8eff3b6ce748c87f18136c86f73abf6238383ba3c4b1555f8a003";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/eu/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/eu/firefox-98.0.2.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "2c0669ed569b7676e10330d034802d9ffd24ca85ef38cff0208a7a02cba53d22";
+      sha256 = "3ce288c26201feca071bfd56f66fca69da7a68b3a468405ff6a665cb666cd799";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/fa/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/fa/firefox-98.0.2.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "c7c8242892426c9cd1f0f60c3235de6dc7d9e77b3b341630c9d6887e34ff2761";
+      sha256 = "3bfac0751b251dbd3ddb253973bb1ad7afe58f7cb824bef59d4f6c7dc5acec78";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ff/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ff/firefox-98.0.2.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "4a7352a86887d5200106ad725e7a41aab1d353547da2c1891fc399424112ba20";
+      sha256 = "2b962a0442a12c7f2dd7d2c716fbac0ad9435debf06d1c1e9f95fcb62fb90d50";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/fi/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/fi/firefox-98.0.2.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "a696aa3e201f6b776610195e8e0130791015229a66082e3f1240d925210db6db";
+      sha256 = "705b21bdfa9826563042d0014a9225870c87b3351b9920cca35e203d1375f9b6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/fr/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/fr/firefox-98.0.2.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "67022f4ed56749d968780a97e1efc14d272a38a96aaf4bc55584e6fe423d48ac";
+      sha256 = "e1d9cbb1c529508bb8262b0498506c30c7932b17a7d86d9b5877f44877cea60e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/fy-NL/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/fy-NL/firefox-98.0.2.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "1718465d4a46d4e8b0fba79b9e0fdadb241183745ad158fa65a3f8d17212d7eb";
+      sha256 = "c1b40fb366281b9df839083af4aaaaa7a264e1ce380f9ffe46a2fe181bddd3f7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ga-IE/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ga-IE/firefox-98.0.2.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "65ea67422e9816b20be8259b5771f3db7f4c414e52cbc9975612a533ad4d6009";
+      sha256 = "466ff81e255bed9c03669c974581ee2cfc796e77456dea25af75adb501855c54";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/gd/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/gd/firefox-98.0.2.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "5ba3f664ee375bf22255c5d9776c8da83747f52aea566a4436d29b91b34afb7e";
+      sha256 = "0e1de18ab0b75b43ee8caff97c2963b7047f1000fa8dfdcc4e3fe87f29794c17";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/gl/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/gl/firefox-98.0.2.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "58edc93a8885ae6c2686a8c8f67b93b19fc99376155770b4e72e821d762be0a0";
+      sha256 = "56f259c9f2f13d3f366e921aae1fbd069f00d59131cd3a3b31cb0f3e16f2ad74";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/gn/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/gn/firefox-98.0.2.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "c5c08869c3390a95de8e490af4e69783bba03fe8d55a1c2b344339cab9fbc4f7";
+      sha256 = "b532c79002184bb13a3f197b5c0faf4a24e0b71f737de31c242f9fd286f05aa9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/gu-IN/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/gu-IN/firefox-98.0.2.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "35f29f0b0574ccbb02cf08d4714e2827ce364876ad7751ba7f1cc24e9f9861c5";
+      sha256 = "12ec5c968d852a7a72221373813fca48a4e524e552d22aca50ae99111a7128fa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/he/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/he/firefox-98.0.2.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "27c5343c95f53dced72958155d7f8af100e3cdb8aabfebc3189f1a9c2550428c";
+      sha256 = "3c1c1222a4ffcac6679849c94da395440d417284a922cae16b5edd1cf4ba678d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/hi-IN/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/hi-IN/firefox-98.0.2.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "f8d7111c208a529c8f461284249d1c77f88e8d644c27f398aabdd414a7309802";
+      sha256 = "6ae96b87b251917d2c11684ae58ac3df54496cf047b115145a5f85cfb1575b9a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/hr/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/hr/firefox-98.0.2.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "721b61beae502b2b7039e29b959c2b4b8cde84260b601aa29bbcf80c73a633f6";
+      sha256 = "4a77fb11f0d27a4abfc1426136d93404baaa730ffea2a31fe337f11ad92bcc8a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/hsb/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/hsb/firefox-98.0.2.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "4eb192a2d3942e0c80ec2f3ba805a19824ab4c1d85e1ada9050409cf0cfd4ef2";
+      sha256 = "725e2f719720c84ba06a28c5f025a16a951642c1102f7fe5faa41baede1b6a5d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/hu/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/hu/firefox-98.0.2.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "70b9a67a51d3e61242c1ece908a81d0ce4b407bfdd9d3592a7025242cfb0ecce";
+      sha256 = "4a128951a5466189b703fbf3055a9e65af64f08a7fcd979448611b91a63bb456";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/hy-AM/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/hy-AM/firefox-98.0.2.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "1135df2ba82e8834a8d38e436df2debab2601884c02a9ed876a64044dec9170e";
+      sha256 = "70e44a8105ef260b3e10271f1a9c36a5149a485130d5a1219397aff93500639a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ia/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ia/firefox-98.0.2.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "0e8b652231ae2962c61a90466d1e8278c11ca3b4ce70432dd3a3541a7bd55760";
+      sha256 = "a121636fb2513557f8e7e0a1b30e3d855202db14f997437cc5a6d7863214d385";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/id/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/id/firefox-98.0.2.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "5c35d191e9010e7a0e97844b38573b6fde93ec57e13c1fcb85f3bbe595257bd1";
+      sha256 = "eccb423ef76aab7725cd21efda222ed63c030d494c294998f4e9837ecccbbf06";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/is/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/is/firefox-98.0.2.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "297aebec277c01bcc5dc0fcccc44946181991192e3f485ec4bc0555131f132ed";
+      sha256 = "86aac8ae944846967e472d6fd893c40ac988c25a2c2ee9af40485e216bb67b2d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/it/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/it/firefox-98.0.2.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "7d0c7162f4c3c264d5394814c99881e2a39f9fd406e7a32fb5319bf63c3fe344";
+      sha256 = "f0ccf0977b3f3e05ed0d07980eca2179a808e0f62930690fb33f17b68c3bdca7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ja/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ja/firefox-98.0.2.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "eb260c766f1c82d45393d5c7f3c3c945166f837ba02f061691bcb1b3f9d11b90";
+      sha256 = "217159ae769b050bf9ff1b04ed80ad85a384625e2ccbf0d9f98c0786dc2e6c5a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ka/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ka/firefox-98.0.2.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "ce8f6ee46fe3c8b836fd694b2642be066a81191a9011e33c0853396dea625880";
+      sha256 = "c4aa9e994cad797afc081d2031296cac780e76966a7f231e6a0e3187d9e8aef2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/kab/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/kab/firefox-98.0.2.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "05a282afed3bb3e573c4250368b3ff1edc4c322dfa81d30e8f8f3447199fe9c7";
+      sha256 = "cc8333cb75f48ea82b752023162a270f18e33cbec610571624a38919737b00c7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/kk/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/kk/firefox-98.0.2.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "558a35d13332976880b0cacb69d45f25d72e34d4ef43e7c92260621dc1287ff3";
+      sha256 = "3482645b2581284503f72569caedc750706c439346917c07673ed0a27b0bbf36";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/km/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/km/firefox-98.0.2.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "a3d3f64dc5e55e9b3168e18a64b2bda9d238e10bbc295d7ce7f4c1d964b6553e";
+      sha256 = "b70fcfa2b4b4bed16d4fe8af2d57d8b7a4af346f321ece425895c10f7ac058d1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/kn/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/kn/firefox-98.0.2.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "b06d52db9c0e2984c8a652278595cbd0530512b9bb8e6d5ec5d3015620225bab";
+      sha256 = "63550bf8572312f3c69c90f65de89423fc0ac926736723be3034d5d441ceb1e4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ko/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ko/firefox-98.0.2.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "f1edc7483429824478a9a4d2f4f3a03a9adf23e9ae364ce8c50da8d97fb55052";
+      sha256 = "de17cda5324ca6d179b9d576b62cde0ed21718b72896b161631513b654540cf0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/lij/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/lij/firefox-98.0.2.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "e441db0a47d1265d1280a60c592b4b2ddd33751c1e9b38bd71afc2f25edfe469";
+      sha256 = "67cafe6a9f0c01aadb1fb55afe273fb58e4baeb38be2b472ed90a83c72b07ed6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/lt/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/lt/firefox-98.0.2.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "989c66160ac78aec5a4d543a519e11cad772cbbeb6b5bd30832b04751217d621";
+      sha256 = "135773dc11e691c20f20b0a1d37e2b25d92062c573846127c113896708e649d8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/lv/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/lv/firefox-98.0.2.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "764a3821b57384676d1236e9553007a78583fd277d27174bf4970750ecbcf9e4";
+      sha256 = "44bfaf12e5d34e1b8e281d00c7d9a26c2d0aa0a8ffbd74df9a5026e15ac12b66";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/mk/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/mk/firefox-98.0.2.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "104b650e57a1d521951086fcd337a21fb3133358dce8842c434089454a389f12";
+      sha256 = "94d7db6bc2ba9de25207a058d29d8abc57e967dfaf59c3388438953098da9580";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/mr/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/mr/firefox-98.0.2.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "396359e41e9fbbc03a548e6f77c1a607af0e3c09044d6b57e2cb01fb80fab94a";
+      sha256 = "e2ef6708ed116e40d3cc776c483d3cd42c91988673b91d2d29f4da8ea996f1c0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ms/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ms/firefox-98.0.2.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "e8dcb2af15e9fbedb0e3ebdfabdda5f596fd469b6b20e4b6c5eaedc177e6c7bf";
+      sha256 = "e376a479d170ff881d6de21f9c03ffc7a4968fccde7347e9fa261de7bb11e427";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/my/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/my/firefox-98.0.2.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "89e64cb715720dafacbebc7ddd72a5c6cbd69995113f1b7d1e68805b09591df7";
+      sha256 = "a1143bce18aaadd340b69403f064574664f202765ee5a8553ac6d3372ab33134";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/nb-NO/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/nb-NO/firefox-98.0.2.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "640c4b9f4e23d08df22d67e915cae12ba07aea80ef392658f693bd5a14a23572";
+      sha256 = "eebdd022202cb7140db46995a3925c990e614233f3e15b850e5176b1f2c07907";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ne-NP/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ne-NP/firefox-98.0.2.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "efe07ad3079a3295744b8739d3718374137ee98d39622c0056f079196175dfed";
+      sha256 = "084a278fe0b67a51126518d9aa62cae7cf78d96e3f6cf5b191f136a5c20acf84";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/nl/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/nl/firefox-98.0.2.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "d979a5e416109251b0f27a50e5d2831ae2fbf3da6ed3d3e34b52adf2c19221ba";
+      sha256 = "fdae25ccd979bdb5b4bb23f4e9e82e432df98059d82732ee187f37c8cb3547d4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/nn-NO/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/nn-NO/firefox-98.0.2.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "cdffc971080f506d083b7c4fb1edb769046a6b56ad5c6851fd3a09b48d401bfa";
+      sha256 = "7ec4c099c7a282a5b38df9a124ea6f2ee3a1704746aa308431aa8c356a57bec5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/oc/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/oc/firefox-98.0.2.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "7d4206e9e73132f13f5ac5377eb619c796ab1088f8a91958dd13789b0b309995";
+      sha256 = "7f6d8ed3a7511d6af408c47c626a3e141425925df364f26a622a088491d7fe5d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/pa-IN/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/pa-IN/firefox-98.0.2.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "f46a2e85222e39c03019373cfd539ae5354c608e60783151f15bbdd1a8be3b62";
+      sha256 = "9fa3699918286b6f9f8829beac8cd45e59f35f389a09e0cbb34dc393885ec8f6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/pl/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/pl/firefox-98.0.2.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "1853fb827d238af7122e9edb0d7553aab00196f5523addc641f93b3f26b02b0d";
+      sha256 = "e2ebf0346fb5b626a048a720782e325eefd04f1fe62de5c57826ebdd3ab1bec5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/pt-BR/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/pt-BR/firefox-98.0.2.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "a5f4e7c3f0b187bc86c4b085536a8dddd9c2fff6f746db77ed186b6ccc4efb97";
+      sha256 = "dc79e634319ffc7221245e2a081cf6bfc15ddcd4bd8bf110d5dc15732aaab33f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/pt-PT/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/pt-PT/firefox-98.0.2.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "88dd8f0332d88ccd38ba119acdaeaad4fa3692b45759762871fba67a110af9b3";
+      sha256 = "f94ba01eca76939d1ecbfccfd9647c96244effb080df98b4e04d3edfd80ffa48";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/rm/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/rm/firefox-98.0.2.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "7e901202cb7b29f04c481df5bb330faa92e48d41dfe49ab614f089c4787ac36c";
+      sha256 = "6b27aee9330a94e659da34f17213522687859263ed8500daf1d62fc496cff033";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ro/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ro/firefox-98.0.2.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "149b39e24f83bd14c9befc52ef92639ad02ac2059a247d8521a8e5f8659b0983";
+      sha256 = "b6029f72497173e8aef444cb42437d6035354fe4a2bfe6359c50eefa4d6e1850";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ru/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ru/firefox-98.0.2.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "5739758546b279d77101391edd7cfe236ddbf69434ea89dea6c5d4f857a016e1";
+      sha256 = "73cbafa190a5083cfeba8ad0971d28eaaa228b9a9345ddc72d4f5d6490ebbad1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/sco/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/sco/firefox-98.0.2.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "cbb408a2be5d3c15ba7f9e865c02228f65c9ce59d2c29dd081638515404da03a";
+      sha256 = "dd2d86ddcd270d2bb58c7152d15072341460a09b2da1639a76ac70afc9a714e6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/si/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/si/firefox-98.0.2.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "b96e1604af6e1e828230a1a3652f83bdf28247dbcb9961b233d18a9bcc829da9";
+      sha256 = "0cf0281b2d082b3861947e5002f843df050586e96027ec30acba2913ce588daf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/sk/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/sk/firefox-98.0.2.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "ebe0774a5872e8e9f3ed3c894d10dd9aebcbce1539e56febcbbb7ee97c3ee358";
+      sha256 = "8853372fdbe0834f6322e2e1c03d909b2c21f60496d7e679266dfc35e5835191";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/sl/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/sl/firefox-98.0.2.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "2b3e38e812508438768d4f12e545d96f1b7e160d53edd26481ff70510d89388d";
+      sha256 = "ce97423a4ad380fb019b3e4c8d57a44bb15ca0b0afc7778a10fd23cb9382c143";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/son/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/son/firefox-98.0.2.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "df1bc20d146bdb2d1491cb040c4eaac1a70d4af024a00863539b218b6e1098ef";
+      sha256 = "468b642210c8c52ef5a8b91ddf81b9ff9c25768d7b0481f361e7c95861dfa5d0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/sq/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/sq/firefox-98.0.2.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "9b40353c9c9911522fa495d35f19764b220e2c40488205050719c951911dac11";
+      sha256 = "8a079436e4be7ceb82b56f02d50054066906b2f819b787ba964d20c64ba731d1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/sr/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/sr/firefox-98.0.2.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "d2ba0fe06528af4fed9907870bd72290df1c433c02bafad8b7b834a24b9a1427";
+      sha256 = "e9f0f1a8d6bf3bcb6df32a27560e952e3373d712cee08fb97e1c41b76052d370";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/sv-SE/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/sv-SE/firefox-98.0.2.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "44fa731f57d2f0639d1e3595eebeb2491cd3dfff7ff8144eac663e966ffa8f6d";
+      sha256 = "eb4b4092f1f667661afbce19e0d3ef75301976689f1ea2ee11104d11fea2ddd0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/szl/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/szl/firefox-98.0.2.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "37523769babf48c7c942d878c8c55bc0bd761a0e4df8a0d562416ccff46f8cb6";
+      sha256 = "29c9fcd787fafc93480fabb59573dd500d557847079f032a6f3ca6e9c4422c80";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ta/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ta/firefox-98.0.2.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "3aa9dc19988fb6663ac95b6c3b79d03313cd78cb4e80700708ac92c3939d513f";
+      sha256 = "f07b8a79048b55d6fd8f7d19858ea2f1b5f53bde782c65ea7fb3f34d9cd5ac40";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/te/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/te/firefox-98.0.2.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "bd7a1af00c7aaf49c5ba667e7e85bac5672384b68f5f7cb96e4670f7363ff063";
+      sha256 = "14882f8a3c425dd512c37f80fd45bdf9d34c4d7163454e1533c6306713935d36";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/th/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/th/firefox-98.0.2.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "962c9e428f1ab3d3d143920a503dcf6d5335489e7e691a4447c32ddfad0b55d3";
+      sha256 = "c91bb2249cd2b22ae86b1b51fe6c34062a4da7772eab97b1e39915a2c2782488";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/tl/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/tl/firefox-98.0.2.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "6ae919a932170ccc3891f0805949e29cd403f6a2e6efed38b76c7817c9533cef";
+      sha256 = "1c6fe06f19821a7a77a26bedf38ed3fea20561df0589c672027b2108e080e6b3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/tr/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/tr/firefox-98.0.2.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "27127d6261975f62185966a8d2a9c4e686c92212b8f4e06a36b47d16434413aa";
+      sha256 = "c06881993063dcdf6fbfebe139f9fdafe2ca37667375683ae85497603517b5a0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/trs/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/trs/firefox-98.0.2.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "a005665c64968a82221d6332ed20aa6702f197ec31960fd4a4a78871a947586c";
+      sha256 = "fcfd9120933339006f1868b27e0fff1d60f562a3d11e826bbf9996f69d4256ae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/uk/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/uk/firefox-98.0.2.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "866021efaa23457b203bb2700b8f24649222855d7ac1f71bf05ee98469f8c7ca";
+      sha256 = "01cabeeb98988d4478d381b34e7c0e6cde887d2ea83feeb349763ee454760924";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/ur/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/ur/firefox-98.0.2.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "d34a0c4f6937d8f6375c5d056cb615db37673917dfafec7d1f5201c38359a1c2";
+      sha256 = "db7de84fed953da53998ae6ff2456a02de833de22d13d1aa7e16f53d3bcb7fb1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/uz/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/uz/firefox-98.0.2.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "a5098a02bf4a8c983e81b2863afae1cccc007c69556d69432577928a9eed89d8";
+      sha256 = "9fe0fc4851f005160de9562123e48c19216cb013dcdd2b8bd2b745d7838062ea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/vi/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/vi/firefox-98.0.2.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "ec7c91879c348fdccbe73b498757d1ad7bb1461df530829012c33c706c023aa0";
+      sha256 = "e335f20bd5a63c2fa17ce15fdebe0c5af5c6787d37bd49ad2da156b450383ae3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/xh/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/xh/firefox-98.0.2.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "0b8bb8c5eaf45faa1f128c08a8d47d7f1388f37e09f73f3ee9b0e77044aa83a6";
+      sha256 = "9cd953e87b70c979a8c03fde8c989f626a23f62a7d59be8796a09c8a8950127f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/zh-CN/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/zh-CN/firefox-98.0.2.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "4cbe5d68f610f3778be063d132271fca35ad9c7a7914aa32459527b4c1800948";
+      sha256 = "2c7d059be4474164fddd349fc3f18d1f380af5f9ba82f8e01b04e2f18bcd09e8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-x86_64/zh-TW/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-x86_64/zh-TW/firefox-98.0.2.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "80d4bc113d203fdba00f6af11ef1fd7b9184204b1788124e66049ca5ec13b3c1";
+      sha256 = "37b5a0275b137b0ef578591ccf5a54518bdbb449915f4ad50c276952a0bcccd8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ach/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ach/firefox-98.0.2.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "98a4025d0771980dbd3d06511ba15de71d7df7311c7e683039d315bce7dcb590";
+      sha256 = "b3b734eb8d62112f7983e86dbd49d2d3be3ed6d2f80fd2d7bc189f12e03ab0b6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/af/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/af/firefox-98.0.2.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "8519234c67e0f8b4e13df38ca98589d0a618f607eb940cf1f686f540a3dad527";
+      sha256 = "fcf6a355f70392606ec2ed5853b1d14e8d5923fd92c10774c776c43e6c8a6cdb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/an/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/an/firefox-98.0.2.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "61bcf050289a12e11c6a2b308f3323f39558aceaaa7b18cd95dd19609065a66f";
+      sha256 = "388532ad380bf43c287ca3e7e29a3a6f97fbbc0e02c2ae5207ac07587c3faa2d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ar/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ar/firefox-98.0.2.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "961d7585e36e387d7a0f01bec3cb8359704a0716124211f2a24f5c046d49d338";
+      sha256 = "178a38e6bec65a59679944fdd6882774d23bb15e62f2e697cf369742bc4c8196";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ast/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ast/firefox-98.0.2.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "bb104056866e6518bb0ab94ba179b525105ddba09fc969065dc48d15f70de5cb";
+      sha256 = "5fa0aea769c7f7fba13168fb404f03b2cb8f6df5ab733054118df67015ab665f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/az/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/az/firefox-98.0.2.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "897fe5ebfd497eadda7858701217d6a0cf0bbf2a74389ffdfc46ddc8a5706480";
+      sha256 = "62816d95c32f04090a5e23bc38ebc774355ac77dfdd1a41a2d6e10ce983c53ac";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/be/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/be/firefox-98.0.2.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "6e4122643e4bd368c7adeb640554c7a5252562b767093aeb0e9cd63c9a533b25";
+      sha256 = "918447a5f57647ed5d846a0a0bbbcbaa55559722de7b8dca2ed2e744eb14ce36";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/bg/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/bg/firefox-98.0.2.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "481a3cc57cdd62d1ad23ef9f8f0c15087ff20335ab57bc28729dd74975460370";
+      sha256 = "74851892da2c6c0a9a75d822aeef2c0a275fb5bbc32b88abb28e67f9310bb2ba";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/bn/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/bn/firefox-98.0.2.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "d56c44b8c5103072605b9fd3e5cec63ef613698bad3198543e67958c7ae2c97c";
+      sha256 = "2a6f53aa3fec578a76368120bca30240bb631db9767159aedb3b5480c1ab661a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/br/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/br/firefox-98.0.2.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "2f25b1130142faa0efe08413512353319dd341d31221fd463f198ff8ec776b4e";
+      sha256 = "5d1d9478f459bcc3e6b148ff42d6f9f589b8fb395672e3b8ce8f333832b523dd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/bs/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/bs/firefox-98.0.2.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "a0a33294d9eed0867463b56bd0e02e58836c5eae91718ba918160dc98eb7ac42";
+      sha256 = "ed99ea471d6e30c0304bbb27bbdf88b479fee4df7f8cbba481d03de13954131a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ca-valencia/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ca-valencia/firefox-98.0.2.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "fed1ba8e292c72cff4c28ce3c5e59f58fd20f25624444084394f7b1cd61446e7";
+      sha256 = "5dd1447b3fea23f08551b2ab5a80581c3e0e09f5602709cbdce751d491faa60a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ca/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ca/firefox-98.0.2.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "f2cff173d6c5f6d12f8b29f07b3ee0d51dc523d508f340a65a99404953e1cb74";
+      sha256 = "21f6c622de4016a8e372ae7d249a07800b4393ba02ab59994356869a01cef571";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/cak/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/cak/firefox-98.0.2.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "c48e7d51d10b4d398a3a737faf204cd695091da360a70f3fb6dcf8b5ddcc265d";
+      sha256 = "e9895877763157132e390f31c859b561c7d62adb011e209ab9cc0092ecfccb1a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/cs/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/cs/firefox-98.0.2.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "1a223fcfa992f1f58e61f9c4903253e51adbf8a73380d09e9b38eda8f713c31d";
+      sha256 = "13c94b8b12fcbee4d41c6f7289f0cf2f199ef3d750628cc0ea11a60534ab6954";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/cy/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/cy/firefox-98.0.2.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "3f26e158ac5870fecd94d2b5a07f7116577fb0cacae5a98f456aa64b66eac64f";
+      sha256 = "c21d9e83d14ac46effb9e12a5210d7b56e3d765eef877f8ac4ed5104582d2631";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/da/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/da/firefox-98.0.2.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "1ad6bd99e003d2c8a2d3dfb15360f52800b8e2b0c6ce586f1857ab491763a27c";
+      sha256 = "74a4a14ae8d8f64c56ce4409851f3e8e51bac61e2223c022f40d56d341fdcc65";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/de/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/de/firefox-98.0.2.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "1f433c261278469c96f239c595ccaeaab2d735b461847b2a6f0770cb618e13d6";
+      sha256 = "d3449eec8075f3b6d07b2e6d7adecbec60a7e29b12c2016f642a90c5555971ed";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/dsb/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/dsb/firefox-98.0.2.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "c0aa0c513549ddcf73243d7b0fec5110d547be0536b79d2763714447cd80460f";
+      sha256 = "0dfac7916796d4ec7943963e28d7ca65f78661b6f22c226afb2dd00db47917e0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/el/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/el/firefox-98.0.2.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "0e341f6e22862bc0d92efce71243e64cde6e9324ac33bb1fbfed59b84fb4fb89";
+      sha256 = "c2769489e0947a7eeb0cb1f9d99d51317fd037e2a7bb06134403df1d4560a767";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/en-CA/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/en-CA/firefox-98.0.2.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "5dedc5db801b0f7c7bc42a2373e8558895a1fc757cb1f39f99b355729eff7e4c";
+      sha256 = "87bb7162b58f7632ddf733fbdd4f195d75a9a6d467355c2625344171c72f4e9f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/en-GB/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/en-GB/firefox-98.0.2.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "05d2a3ed1e9b2d7693062758183187d0a8a4524d6644532029aadb1d2d1b9548";
+      sha256 = "89bbf10bb75effa9e8064b6c42d0a4d7fd21ac2cd6e4ed3625d92c6b55ba1ee6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/en-US/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/en-US/firefox-98.0.2.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "01e9e15b89299cac4ec8931e84f11ed63ff3ee5e70cb73be4cb6f6f5d817cfb3";
+      sha256 = "888db6752eb5703af5fe5ab4b1575f2a35dbd204614552fbe3a276042a3509d5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/eo/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/eo/firefox-98.0.2.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "121a736e78d12f984270cea37b14915fe65a52c3dfd29e155f20a09707d69c58";
+      sha256 = "a2004dc59269fb2b37e568767593bcc0a7862a109df18f548eb1a0b829cf4293";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/es-AR/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/es-AR/firefox-98.0.2.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "a051af8c255954d2c025cb9d3a0ad2d1ad6bbfbc1bf69436abe8ec6674277ece";
+      sha256 = "9e2c0f6cb231c469660cc7fe63489e69a2616553d17c52f5e7a2a86a171bc6e9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/es-CL/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/es-CL/firefox-98.0.2.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "17a2fa85675f5fbf532da3485099315de98397e5286e2fa5a0b1c8b468a9c974";
+      sha256 = "dfe6f1229a6f80b6fab3a22fc8a8a6ecf3137b31805339a489ec53e5af63f040";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/es-ES/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/es-ES/firefox-98.0.2.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "ffa84eba0ac4cd45fa385de6fba23b8bc69efbee1a3bc39b7e1fb95cf6e6581d";
+      sha256 = "01020488ee2ad2e2357bbaf83857a2ad0820fb9f97302d1447cf4148b22d2bd4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/es-MX/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/es-MX/firefox-98.0.2.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "f73059f6dfa6df82282ce8cf5068fc5fdbc6320d2e73c981ff6571afba8b3959";
+      sha256 = "3c7bacc6f703cdff7adb9097bfc39f52a67aa6a9814d7a8f451d4ef50c591714";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/et/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/et/firefox-98.0.2.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "250eb95ef69fa4e61fb6fff0c10c7f884684ca428318b1feed366a2b49809993";
+      sha256 = "f2bc8e4200c89cf74ae6c984543e97b2523782dae70ecf6135f47943a01f1d83";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/eu/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/eu/firefox-98.0.2.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "6a709d754542a74104539e8e043f1b07652e007a1c062e067af4123d46c46071";
+      sha256 = "62bf0d826adb66d755f38bf25199eaf3850c37bfddca627b597802a20f8d3367";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/fa/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/fa/firefox-98.0.2.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "5435ad7aff621091454b61f2261e72ef1ba2fcd2b89d32148f8ffde0635e237e";
+      sha256 = "9d4dfff33db462c71eb12067f56f2e20b0a557f9cbf1234b617e1c2ab5832ea8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ff/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ff/firefox-98.0.2.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "627f8970b92f5a96d8023406ca14c46471be457147d282e15e71db0163822a66";
+      sha256 = "5b3a271207003e25776a55b7ee6adba2f83e844d4b0a738209d21be7db82ac33";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/fi/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/fi/firefox-98.0.2.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "ef7912a562f3d01e20ee54dd505859ec6da549c8daba04c5003a8b618af722d3";
+      sha256 = "50a9408303ac8fc7c22da96f993b0b251407261d35598b4fe06f1c545788ef0b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/fr/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/fr/firefox-98.0.2.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "da5b3dd660ff8ac8f10f5419d0d848503a74948d76ebe45fbf88470703b24831";
+      sha256 = "65db55f518be2abd8da5b52654bdf0efecd94b21ab843b76a6ad9e9ccb516a55";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/fy-NL/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/fy-NL/firefox-98.0.2.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "5d58c3ef8e75c22db07e82131d6773f8af8930d46a3ea9667bae07a59dd6b8bc";
+      sha256 = "b3da8b5a077e4955bf2c662840005adaba2dd77af4724e965403da3139b5fb3f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ga-IE/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ga-IE/firefox-98.0.2.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "05a3402a6be754390c79a66160510696acf866002225a5d242d2f178e3c63dc6";
+      sha256 = "f4812b90fa0a0391d2a372e7bf45a3393d59714209046618e7b1ed72f1889e2f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/gd/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/gd/firefox-98.0.2.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "6832439565a3a18ec623c5a6d0c36e429b2ef291bc8c0152da6934a108ca32a3";
+      sha256 = "769c42c86d5b3866f9ad38bc833f5f1f1b01c7f5ed6898eba064ce6f31c9f550";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/gl/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/gl/firefox-98.0.2.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "2e55dcaf24d4fb028ff5dcba94fac38499897bbb7cecca79d6fafc0b83e21a9d";
+      sha256 = "b75ed9efccd63053589a3f60fbabb6ce5fc1c027a1a00789ff23b6971b0ebad5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/gn/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/gn/firefox-98.0.2.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "c25a77b99c022c3de29cea922e926db9e738771cd146acc6d71545cf8f1acdaf";
+      sha256 = "bf60ba48f5d5a18ef9aeaf631d564412788ca102990b69b176ac66c1b8e3535c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/gu-IN/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/gu-IN/firefox-98.0.2.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "e41991d388c6fecf9b22416c5f840e8f96d032d3be793101c9133ef7cc545850";
+      sha256 = "19f568337cfba71d7e1626099b1c6cee4d69a0332065779e5375da648d70a3f4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/he/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/he/firefox-98.0.2.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "55125f1e56fa6d8f5af4aba206e3ede2bb80f39414563a541f07eebc568de993";
+      sha256 = "7d6a55d76f74d85e2f9da77ee071df31aed1c37f9fb139e448624a105b6ef19d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/hi-IN/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/hi-IN/firefox-98.0.2.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "4ebdde0d91f94399607c127953e738855a17463cea34a4360b630ce0e6add5c5";
+      sha256 = "12451d7cc49ca2629ffedeebd1d77f8ac96d5839ed165ea91f55a249427ebf09";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/hr/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/hr/firefox-98.0.2.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "11f2449791c1613394764d36e1661cb05a83e2582904eb00ade9f09f58d4147d";
+      sha256 = "b2197d6d51847848cd849fef446e8b84725fc2b9539824e65719c4fd1d7f29ba";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/hsb/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/hsb/firefox-98.0.2.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "d7138688ce4edd030bb51d7eb68626a4055ef18dfaf30045d872c03b187b4ed8";
+      sha256 = "5000e21630440a446416de3cc38bcfc7c22bb8bc8d1a1a027c14b9548acff74a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/hu/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/hu/firefox-98.0.2.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "693e08538b19f9d1aaab399e8d4b582e557e34ba5d2cae7de6c7e048b175dd3e";
+      sha256 = "dee75736596f5f0dc1d6952327274d07f927ff42e7c9a0ed8c8ba8dc78a6b3f9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/hy-AM/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/hy-AM/firefox-98.0.2.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "1e78ed371f092f9e1ec9ec7c43b16da6b5a277056983ea810af568e250c9d588";
+      sha256 = "4b7dcb46864b058bdbeb35404de32c88e2822dd0315f105e95f61be857288282";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ia/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ia/firefox-98.0.2.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "a02a62a042cc51d7b6389366114816daf10cead0ce51a716ff58485fd7b856e0";
+      sha256 = "e89e07b1d71e1b2ccfd4d412dabea164bae8448f57a5f99a07ab04f9dcaa0bab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/id/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/id/firefox-98.0.2.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "e548a304acb9075e6110c276482a1759cfb06b6cbd4edf2b7aa633f6762b91d8";
+      sha256 = "398ee6ed278cec1ceb489dd06d8f4c2671309a3e0d61f3202fd5280a5b596ca7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/is/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/is/firefox-98.0.2.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "c43167df2a3739d7d9e7c8013cbe4a9ed5e18a060d06667ebf36102ad7a0587c";
+      sha256 = "a3531b8f68ee22452390ff8e1c70d7f6b842e10ab60ca6666f79fd958284d099";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/it/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/it/firefox-98.0.2.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "4eba45221ef34d71353b3d442e8cc5a565fe79cad1a21b4de27129da92f165fb";
+      sha256 = "fe8fd2e7b0e87cb3b12ab6d8d973c422ef763d9d3a78620fe5a9f374455ccecc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ja/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ja/firefox-98.0.2.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "173c3f7afc252f495e9553c6b7a1afdd5090de2578a477e15307ccbecad937f1";
+      sha256 = "5d52ec4afd7de44806b804b5de6e597228d7061c10b0cc8d6fabeca505a0b207";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ka/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ka/firefox-98.0.2.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "de14be28830076b11610a8824cf20e161cb4e7c0e527d160caf7d214f41ba9a9";
+      sha256 = "902abc9df459c6dd2168050764cb2301ffee566f4deb11b2ef7c694cf429cc58";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/kab/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/kab/firefox-98.0.2.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "385dfe3ea1c1aafd4e0f3c4176bf2498876b34d7fee5195ba5fa5884203ae338";
+      sha256 = "aa96307da2c832df7ea7ea418d3dae6dd9f2aed56432a8ed6e43fabe71aa9828";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/kk/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/kk/firefox-98.0.2.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "c9b2f1fe4cdce853ec155a4b99d44279dc64c266706e58274413b0b37cf71317";
+      sha256 = "addb689db7bb19f28db963ca61dd0ece3813f5ca21f3437c1320c3f972e19029";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/km/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/km/firefox-98.0.2.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "adc84f8768a71d7f2ed314dad0347a346b3592d47bb7ef621301deb2b72f7f56";
+      sha256 = "7a982cdb847d162c6cedf724adebfab904cfacdbe3d4e48ee9af3e644e74cc14";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/kn/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/kn/firefox-98.0.2.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "c0579f13e76c62e402065069ab7dcbddd7cfbea8e428b5bf2e77d42550d18557";
+      sha256 = "d2cb6eb8c004d9c0e0929d8047d93902a2235b5068b86672c693edef1a2b8911";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ko/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ko/firefox-98.0.2.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "bfc610608666e626715000bc4fa48dccd43ce0036ee0111e926f92b75034a0f3";
+      sha256 = "63770f2a873b520e5b1c1bece82ea4a987a2ae6535f9c4047e99b68f62c91748";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/lij/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/lij/firefox-98.0.2.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "fb1afb37bd4d47aae8de6ff8b1a2dc34d41903ae4ead5a2671baeeb6ef3b3196";
+      sha256 = "ff130a01dc266b5b49f39f9c4355a6576211c0008cd5008290266daff222e18d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/lt/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/lt/firefox-98.0.2.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "0197a8c4ddf84ac38aba0533a84b4a57e783d3542b48e221b3317b39e9decddc";
+      sha256 = "04105e0614b660d0e156b0aa2307af9d0d11236119b6667718d7f0f1f13ae505";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/lv/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/lv/firefox-98.0.2.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "a7631d6bfc46a140c226cd1914074084ac1bba0104c7811305d40291e015c2c7";
+      sha256 = "50dd34d558800dafc84d714f5cf08a26eb4970c3aa6b8850430aa156d8869549";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/mk/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/mk/firefox-98.0.2.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "78be93a5ef3ec79c9b7b8ed4134b25fd66db74e4160235e1ff57f87f7ecf7f71";
+      sha256 = "8ca0b1cc9ff39757f2cc513d61a77d1d95a607862ea654d6743bf4a8f7bde99c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/mr/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/mr/firefox-98.0.2.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "3890be73f978299ebbd3c7ef0919a6d5f916729528ee90f7d1ef86b088fb748d";
+      sha256 = "b24884486692dfcad578026498a3654d34ae78cd39e977b3708053bd7754d37b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ms/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ms/firefox-98.0.2.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "5bbded06e5eb3c4f628df573ca10aed952d72125ca1f96f74643e28210121e47";
+      sha256 = "c43f2f10d928a3cf875e81afb54c09c1ef49ff8457069c054df2f62e0a43979f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/my/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/my/firefox-98.0.2.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "2a8ea9468c6fa4a4a303c4b5b1a9306898ed8f2fd60a3e8c9915ae549baefa09";
+      sha256 = "296d3860c2224deaa43184fa85dfce21eb9fc9b11d080d7f71cc189c4a790ed3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/nb-NO/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/nb-NO/firefox-98.0.2.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "c7fb5c534a03afe15bc2c439b679dbf3316aea92d23d154b6902893633fa9b32";
+      sha256 = "b0ce5e0157ff9f64434b38cf9338960870bbf6bdb4b75494b82c8ba871868ff3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ne-NP/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ne-NP/firefox-98.0.2.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "d2b2731732202c4501e0989fdd95a68cca01aa4b13a02ca035247a1de7a7f299";
+      sha256 = "58b7a719e7fb10bf7bfbe23f4ffcf002434652f792a3a1ffbadb13a5e06a04ba";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/nl/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/nl/firefox-98.0.2.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "2947d1783e0cc8126c086bb9a1ed139de735ddf2bcb4f104e9efb6d68d844503";
+      sha256 = "2951dae0cbb3bec0e47ae44b70e6796ace16c8fbac18d7d04da84a51ded6a650";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/nn-NO/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/nn-NO/firefox-98.0.2.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "1aad31043951d9b81f707cd9c6259d6c215ae20f55776719c2553148dc3bb589";
+      sha256 = "6f44201f301931e3b51144d57a79c484b776c37cb29dda93b57795c0a756c62f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/oc/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/oc/firefox-98.0.2.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "c237cab50aba2e059224d80ebddda67f13f8737899a29d6246418dcb09c486de";
+      sha256 = "899a48b47dd642a64de0ac9226b4655e74bba9f0f6d1eccebc1c1875e1d3ea12";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/pa-IN/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/pa-IN/firefox-98.0.2.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "e487db05bc46eae01509b5ac3a9f4aa6e3cd8bd0970366d9501c1a74653f3110";
+      sha256 = "392b6e6cb3ca1ef3e17f73ca327bf7fd49d453ee0216f922dfc3bfc7b2ce18da";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/pl/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/pl/firefox-98.0.2.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "a84f34fd417855acfeb89926fdacc8c4fdcb870251d3b43095e04d2392a6637f";
+      sha256 = "f4f6124c3520c58ee00b7f4f00a39a904657b21072fe3d822a17b072c8e69473";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/pt-BR/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/pt-BR/firefox-98.0.2.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "5a4e35c0efdb79e83d535b62d57c26d5021d20c26d2654b98f6078ebbf4b6094";
+      sha256 = "b19e3aee72fb779ab139535295d3279cd06c125349fb5ee71c12737ab2aff733";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/pt-PT/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/pt-PT/firefox-98.0.2.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "f61b70f911e708f4964f4592e9b46c8e70a730f778aaa6e320ee7c0d3647253d";
+      sha256 = "0924bc137f6eaaf6686249f59540eadfd9b09aa843a071bd7db5d62f742258af";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/rm/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/rm/firefox-98.0.2.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "3b602a6d897e2311f1521a36ffc4be4c6b84705605aa1bf321b684010c02d59e";
+      sha256 = "ea9b082ba495a19162c0945b865eae6f66c689962807873bf27ad59a3e83c85e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ro/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ro/firefox-98.0.2.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "94ff92349315c126c3c1294e9d468914b7f81ef8a0597c5fd039fe66bcad271e";
+      sha256 = "3bbd902b4ace383d914f51553bce3de83c2ca4f6366e3f2dc42268795c7bf72b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ru/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ru/firefox-98.0.2.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "1f24d74427e79b7c78ffcdfbe1a40c5e767ed0854a870babdf1f4956ddaa17bf";
+      sha256 = "84296b00a3646cf8d0e7ba3ec6cbc90592b8fe8b2dcc36b8c904d1e15c264575";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/sco/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/sco/firefox-98.0.2.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "2b11f6b4b380143ffb07764c6fb6fb139da7aaab0ea5bdad826b1c14eea09a3c";
+      sha256 = "8f966e6fa33e9e0242dd422818c9c46c5ffe37ebeb34e01a7eb57258e0aea481";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/si/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/si/firefox-98.0.2.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "f644c5fcc35bb8e4a2d4ba1d7210cacfa498ca9aaed79174ac4f973021dbac63";
+      sha256 = "3ce96976ec5e920b20fdb1ff7fa8d20db2a67c0797ac4307f7e387db91306719";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/sk/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/sk/firefox-98.0.2.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "859bfb3a177429a24e585e6ad11fdf9220d5d0a2751ab861aa33e3e553a3fa2e";
+      sha256 = "1a4d37ac6777185230343dceb4902b55e0adad62d144347d09f031228583370c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/sl/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/sl/firefox-98.0.2.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "e5ba078d2f83df37b8211f8423dc549358b9d1c508a9607d1d5e735501ca9845";
+      sha256 = "e1875f0077c3c03f34d7fa33e807d0297f831d451a045cd55accc493c3dce366";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/son/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/son/firefox-98.0.2.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "07f902640b9742954ac03b737fd402d1024e647d4cfc096ceff2ef5329853235";
+      sha256 = "1d13d9d3f9d8cfc03e5e45cd1c62a08b24437ed9feeb27ce42b07a75f0aefc04";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/sq/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/sq/firefox-98.0.2.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "2dc1cdc47fabf4d212745f326dea7ad202527fa8dee9d90908812a3f7b152840";
+      sha256 = "e2ae3fa32c56258069cdb95231a5d3b44218d32f0b10afc4174ac204bda7acf5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/sr/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/sr/firefox-98.0.2.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "d84a3a521ed43b9ce70a6984f6afb35bb02da5b4b9372cfdd47607151dbfdce5";
+      sha256 = "96a5178bdbca9f6d1434610aa0d35c32b6eb542d6d3e760ce778a8e4181515f7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/sv-SE/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/sv-SE/firefox-98.0.2.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "5c313719484370ac42a46cda464ef5096e866a93d821fd88d8cadc3fe483b8be";
+      sha256 = "fabe9274a8ac78ba84a394a7a5e7cfa22c41e3b58c8e6b94496fda6490bad644";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/szl/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/szl/firefox-98.0.2.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "6933fcc3ca447d2c530bc4d5a3fac65351359de13ca8415c17034611d343e4d2";
+      sha256 = "d77505b5fe04946002e5d1a28081c7e2933ce910a8d67f4e5ed31508808cfd41";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ta/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ta/firefox-98.0.2.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "a1d11f11350ad8a1aca420774896721a71db6640e78798bd5d0e9563fa215350";
+      sha256 = "a34e5b28526f9861bdc7af910e0a3418404f4316ad5792607493a698f480c9a1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/te/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/te/firefox-98.0.2.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "a09332149b4d4daf758cc75a0b50c793207e6dfa7f487f04864f8c41e2f7c2c1";
+      sha256 = "c3b8653af6ed8f4cf7e9f3e5a4a0c622a163f7c45dd0d1ddcb3936e1504ea1af";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/th/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/th/firefox-98.0.2.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "615300bf23c3903079601c5e4d9509bc3a7d5fa1e94a01aff09559f3c2994306";
+      sha256 = "a6456037b76bf2adaa6a6d68f8b20f293f8a4fdbbc3e533c8a6a22aedcc3bf4d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/tl/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/tl/firefox-98.0.2.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "f323e7204e86b91cce656780e65bfb4166bd0e27d1ba84ede5e8b87ab6c4e122";
+      sha256 = "51ff115845f3d70a9fb08f08fcd3c1f86a41b3570f81f460c24a5a87605a779d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/tr/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/tr/firefox-98.0.2.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "cf36e947181fc7750186b75edb0998df3219097ed94e4617435cff2690f626d9";
+      sha256 = "3ccb5735a16622dafe6ae465ba167ea164843c85df436e7cd20cf6e7a4fbb610";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/trs/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/trs/firefox-98.0.2.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "137270152321a9922decfbfcad4643ce9d3b127498d91ef7a4d60069d249632e";
+      sha256 = "7d1a71033460524506082087ce1b3ddc424207ea3ade6e0bbdbb00310e74cfea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/uk/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/uk/firefox-98.0.2.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "4571eb45952e27756ba8332cd62673c3cd21d58b85662d6eae7a43afc5aa9613";
+      sha256 = "6db06ed2f126c5307ef6380dff4dae14cc39ca58d23b827835d3e702acf33c72";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/ur/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/ur/firefox-98.0.2.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "77d60ba1a7bf22d7fb690ec1c22dd35b84b3e59891d07c129335894d3c47e8fa";
+      sha256 = "d00bcd6b3c70919999e748046b3291279d313f850c3daedae37259b695cb351d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/uz/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/uz/firefox-98.0.2.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "a716e77dae132d1741366836c9fb59320477f623cef47713e93ff7ea6c712d49";
+      sha256 = "1d77240a5f6d7542a7035fd32fd73e07bee1e1e880800cabd01e357a3da30907";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/vi/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/vi/firefox-98.0.2.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "90d8f9ae57521d77e4f9db4166aa7124f4b935f3f1531639058cecd7cf96be36";
+      sha256 = "9469a1c6613ea83a8e367c0e25e188ea9b9fddcc1497725a3ebb008fb5d5d73e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/xh/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/xh/firefox-98.0.2.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "ede2ab7f812aeef2f4f07ceac4df1edcdeca35c1b8d1d64053a7250fd781187e";
+      sha256 = "af3144bfcb52df706182fa04badf39be51e5774335af21d8ec38dcbebe3bdf13";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/zh-CN/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/zh-CN/firefox-98.0.2.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "02c61d1b1bb6e966444a800a319eb69fa36ce913614369d0c8f95388e4bdd14d";
+      sha256 = "fe6fc7bda0e52d64abcef8cbfc5e8576c64067b8746605e80790bde6dcd9b03d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0/linux-i686/zh-TW/firefox-98.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/98.0.2/linux-i686/zh-TW/firefox-98.0.2.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "5c347fe33e423b8300fd6f2a0a3026896ac6c74af7bbdfead40f72874e65b0c2";
+      sha256 = "18da6dcf61bba9a22b5487f695793d65b952cfc7065ff334b0faf8e7ec82d90f";
     }
     ];
 }
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox/common.nix b/nixpkgs/pkgs/applications/networking/browsers/firefox/common.nix
index 481783bc024b..a1e836151350 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox/common.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox/common.nix
@@ -1,37 +1,92 @@
-{ pname, version, meta, updateScript ? null
-, binaryName ? "firefox", application ? "browser"
-, src, unpackPhase ? null, patches ? []
-, extraNativeBuildInputs ? [], extraConfigureFlags ? [], extraMakeFlags ? [], tests ? []
-, extraPostPatch ? "", extraPassthru ? {} }:
-
-{ lib, stdenv, pkg-config, pango, perl, python3, zip
-, libjpeg, zlib, dbus, dbus-glib, bzip2, xorg
-, freetype, fontconfig, file, nspr, nss
-, yasm, libGLU, libGL, sqlite, unzip, makeWrapper
-, hunspell, libevent, libstartup_notification
-, libvpx
-, icu70, libpng, glib, pciutils
-, autoconf213, which, gnused, rustPackages, rustPlatform
-, rust-cbindgen, nodejs, nasm, fetchpatch
+{ pname
+, version
+, meta
+, updateScript ? null
+, binaryName ? "firefox"
+, application ? "browser"
+, src
+, unpackPhase ? null
+, extraPatches ? []
+, extraPostPatch ? ""
+, extraNativeBuildInputs ? []
+, extraConfigureFlags ? []
+, extraBuildInputs ? []
+, extraMakeFlags ? []
+, extraPassthru ? {}
+, tests ? []
+}:
+
+
+{ lib
+, stdenv
+, fetchpatch
+
+# build time
+, autoconf
+, cargo
+, gnused
+, makeWrapper
+, nodejs
+, perl
+, pkg-config
+, pkgsCross # wasm32 rlbox
+, python3
+, runCommand
+, rustc
+, rust-cbindgen
+, rustPlatform
+, unzip
+, which
+, wrapGAppsHook
+
+# runtime
+, bzip2
+, dbus
+, dbus-glib
+, file
+, fontconfig
+, freetype
+, glib
 , gnum4
-, gtk3, wrapGAppsHook
-, pkgsCross
+, gtk3
+, icu
+, libGL
+, libGLU
+, libevent
+, libffi
+, libjpeg
+, libpng
+, libstartup_notification
+, libvpx
+, libwebp
+, nasm
+, nspr
+, nss
+, pango
+, xorg
+, zip
+, zlib
+
+# optionals
+
+## debugging
+
 , debugBuild ? false
-, runCommand
 
-### optionals
+# On 32bit platforms, we disable adding "-g" for easier linking.
+, enableDebugSymbols ? !stdenv.is32bit
 
 ## optional libraries
 
 , alsaSupport ? stdenv.isLinux, alsa-lib
-, pulseaudioSupport ? stdenv.isLinux, libpulseaudio
 , ffmpegSupport ? true
-, waylandSupport ? true, libxkbcommon, libdrm
-, ltoSupport ? (stdenv.isLinux && stdenv.is64bit), overrideCC, buildPackages
 , gssSupport ? true, libkrb5
-, pipewireSupport ? waylandSupport && webrtcSupport, pipewire
-# Jemalloc could reduce memory consumption.
 , jemallocSupport ? true, jemalloc
+, ltoSupport ? (stdenv.isLinux && stdenv.is64bit), overrideCC, buildPackages
+, pgoSupport ? (stdenv.isLinux && stdenv.isx86_64 && stdenv.hostPlatform == stdenv.buildPlatform), xvfb-run
+, pipewireSupport ? waylandSupport && webrtcSupport
+, pulseaudioSupport ? stdenv.isLinux, libpulseaudio
+, waylandSupport ? true, libxkbcommon, libdrm
 
 ## privacy-related options
 
@@ -40,22 +95,24 @@
 # WARNING: NEVER set any of the options below to `true` by default.
 # Set to `!privacySupport` or `false`.
 
-# webrtcSupport breaks the aarch64 build on version >= 60, fixed in 63.
-# https://bugzilla.mozilla.org/show_bug.cgi?id=1434589
-, webrtcSupport ? !privacySupport
 , geolocationSupport ? !privacySupport
 , googleAPISupport ? geolocationSupport
-, crashreporterSupport ? false
+, webrtcSupport ? !privacySupport
 
-, safeBrowsingSupport ? false
-, drmSupport ? false
+# digital rights managemewnt
 
-# macOS dependencies
-, xcbuild, CoreMedia, ExceptionHandling, Kerberos, AVFoundation, MediaToolbox
-, CoreLocation, Foundation, AddressBook, libobjc, cups, rsync
+# This flag controls whether Firefox will show the nagbar, that allows
+# users at runtime the choice to enable Widevine CDM support when a site
+# requests it.
+# Controlling the nagbar and widevine CDM at runtime is possible by setting
+# `browser.eme.ui.enabled` and `media.gmp-widevinecdm.enabled` accordingly
+, drmSupport ? true
 
 ## other
 
+, crashreporterSupport ? false
+, safeBrowsingSupport ? false
+
 # As stated by Sylvestre Ledru (@sylvestre) on Nov 22, 2017 at
 # https://github.com/NixOS/nixpkgs/issues/31843#issuecomment-346372756 we
 # have permission to use the official firefox branding.
@@ -75,38 +132,16 @@
 # > the experience of Firefox users, you won't have any issues using the
 # > official branding.
 , enableOfficialBranding ? true
-
-# On 32bit platforms, we disable adding "-g" for easier linking.
-, enableDebugSymbols ? !stdenv.is32bit
 }:
 
 assert stdenv.cc.libc or null != null;
-assert pipewireSupport -> !waylandSupport || !webrtcSupport -> throw "pipewireSupport requires both wayland and webrtc support.";
-assert ltoSupport -> stdenv.isDarwin -> throw "LTO is broken on Darwin (see PR#19312).";
+assert pipewireSupport -> !waylandSupport || !webrtcSupport -> throw "${pname}: pipewireSupport requires both wayland and webrtc support.";
 
 let
   flag = tf: x: [(if tf then "--enable-${x}" else "--disable-${x}")];
 
-  default-toolkit = if stdenv.isDarwin then "cairo-cocoa"
-                    else "cairo-gtk3${lib.optionalString waylandSupport "-wayland"}";
-
-  binaryNameCapitalized = lib.toUpper (lib.substring 0 1 binaryName) + lib.substring 1 (-1) binaryName;
-
-  applicationName = if stdenv.isDarwin then binaryNameCapitalized else binaryName;
-
-  execdir = if stdenv.isDarwin
-            then "/Applications/${binaryNameCapitalized}.app/Contents/MacOS"
-            else "/bin";
-
-  inherit (rustPackages) rustc cargo;
-
-  # Darwin's stdenv provides the default llvmPackages version, match that since
-  # clang LTO on Darwin is broken so the stdenv is not being changed.
-  # Target the LLVM version that rustc -Vv reports it is built with for LTO.
-  llvmPackages0 =
-    if stdenv.isDarwin
-      then buildPackages.llvmPackages
-    else rustc.llvmPackages;
+  # Target the LLVM version that rustc is built with for LTO.
+  llvmPackages0 = rustc.llvmPackages;
 
   # Force the use of lld and other llvm tools for LTO
   llvmPackages = llvmPackages0.override {
@@ -114,14 +149,10 @@ let
     bootBintools = null;
   };
 
-  # When LTO for Darwin is fixed, the following will need updating as lld
-  # doesn't work on it. For now it is fine since ltoSupport implies no Darwin.
-  buildStdenv = if ltoSupport
-                # LTO requires LLVM bintools including ld.lld and llvm-ar.
-                then overrideCC llvmPackages.stdenv (llvmPackages.stdenv.cc.override {
-                  inherit (llvmPackages) bintools;
-                })
-                else stdenv;
+  # LTO requires LLVM bintools including ld.lld and llvm-ar.
+  buildStdenv = overrideCC llvmPackages.stdenv (llvmPackages.stdenv.cc.override {
+    inherit (llvmPackages) bintools;
+  });
 
   # Compile the wasm32 sysroot to build the RLBox Sandbox
   # https://hacks.mozilla.org/2021/12/webassembly-and-back-again-fine-grained-sandboxing-in-firefox-95/
@@ -140,95 +171,109 @@ buildStdenv.mkDerivation ({
 
   inherit src unpackPhase meta;
 
+  # Add another configure-build-profiling run before the final configure phase if we build with pgo
+  preConfigurePhases = lib.optionals pgoSupport [
+    "configurePhase"
+    "buildPhase"
+    "profilingPhase"
+  ];
+
   patches = [
-  ] ++
-  lib.optional (lib.versionAtLeast version "86") ./env_var_for_system_dir-ff86.patch ++
-  lib.optional (lib.versionAtLeast version "90" && lib.versionOlder version "95") ./no-buildconfig-ffx90.patch ++
-  lib.optional (lib.versionAtLeast version "96") ./no-buildconfig-ffx96.patch ++
+    (fetchpatch {
+      # RDD Sandbox paths for NixOS, remove with Firefox>=100
+      # https://hg.mozilla.org/integration/autoland/rev/5ac6a69a01f47ca050d90704a9791b8224d30f14
+      # https://bugzilla.mozilla.org/show_bug.cgi?id=1761692
+      name = "mozbz-1761692-rdd-sandbox-paths.patch";
+      url = "https://hg.mozilla.org/integration/autoland/raw-rev/5ac6a69a01f47ca050d90704a9791b8224d30f14";
+      hash = "sha256-+NGRUxXA7HGvPaAwvDveqRsdXof5nBIc+l4hdf7cC/Y=";
+    })
+  ]
+  ++ lib.optional (lib.versionAtLeast version "86") ./env_var_for_system_dir-ff86.patch
+  ++ lib.optional (lib.versionAtLeast version "90" && lib.versionOlder version "95") ./no-buildconfig-ffx90.patch
+  ++ lib.optional (lib.versionAtLeast version "96") ./no-buildconfig-ffx96.patch
+  ++ extraPatches;
 
-  patches;
+  postPatch = ''
+    rm -rf obj-x86_64-pc-linux-gnu
+    patchShebangs mach
+  ''
+  + extraPostPatch;
 
   # Ignore trivial whitespace changes in patches, this fixes compatibility of
   # ./env_var_for_system_dir.patch with Firefox >=65 without having to track
   # two patches.
   patchFlags = [ "-p1" "-l" ];
 
-  buildInputs = [
-    gnum4 gtk3 perl zip libjpeg zlib bzip2
-    dbus dbus-glib pango freetype fontconfig xorg.libXi xorg.libXcursor
-    xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file
-    xorg.pixman yasm libGLU libGL
-    xorg.xorgproto
-    xorg.libXdamage
-    xorg.libXext
-    xorg.libXtst
-    libevent libstartup_notification /* cairo */
-    libpng glib
-    nasm icu70 libvpx
-    # >= 66 requires nasm for the AV1 lib dav1d
-    # yasm can potentially be removed in future versions
-    # https://bugzilla.mozilla.org/show_bug.cgi?id=1501796
-    # https://groups.google.com/forum/#!msg/mozilla.dev.platform/o-8levmLU80/SM_zQvfzCQAJ
-    nspr nss
+  nativeBuildInputs = [
+    autoconf
+    cargo
+    gnused
+    llvmPackages.llvm # llvm-objdump
+    makeWrapper
+    nodejs
+    perl
+    pkg-config
+    python3
+    rust-cbindgen
+    rustPlatform.bindgenHook
+    rustc
+    unzip
+    which
+    wrapGAppsHook
   ]
-  ++ lib.optional  alsaSupport alsa-lib
-  ++ lib.optional  pulseaudioSupport libpulseaudio # only headers are needed
-  ++ lib.optional  gssSupport libkrb5
-  ++ lib.optionals waylandSupport [ libxkbcommon libdrm ]
-  ++ lib.optional  pipewireSupport pipewire
-  ++ lib.optional  jemallocSupport jemalloc
-  ++ lib.optionals buildStdenv.isDarwin [ CoreMedia ExceptionHandling Kerberos
-                                          AVFoundation MediaToolbox CoreLocation
-                                          Foundation libobjc AddressBook cups ];
-
-  MACH_USE_SYSTEM_PYTHON = "1";
-
-  postPatch = ''
-    rm -rf obj-x86_64-pc-linux-gnu
-    substituteInPlace toolkit/xre/glxtest.cpp \
-      --replace 'dlopen("libpci.so' 'dlopen("${pciutils}/lib/libpci.so'
+  ++ lib.optionals pgoSupport [ xvfb-run ]
+  ++ extraNativeBuildInputs;
 
-    patchShebangs mach
-  '' + extraPostPatch;
-
-  nativeBuildInputs =
-    [
-      autoconf213
-      cargo
-      gnused
-      llvmPackages.llvm # llvm-objdump
-      makeWrapper
-      nodejs
-      perl
-      pkg-config
-      python3
-      rust-cbindgen
-      rustc
-      which
-      unzip
-      wrapGAppsHook
-      rustPlatform.bindgenHook
-    ]
-    ++ lib.optionals buildStdenv.isDarwin [ xcbuild rsync ]
-    ++ extraNativeBuildInputs;
-
-  separateDebugInfo = enableDebugSymbols;
   setOutputFlags = false; # `./mach configure` doesn't understand `--*dir=` flags.
 
   preConfigure = ''
     # remove distributed configuration files
-    rm -f configure
-    rm -f js/src/configure
-    rm -f .mozconfig*
-    # this will run autoconf213
+    rm -f configure js/src/configure .mozconfig*
+
+    # Runs autoconf through ./mach configure in configurePhase
     configureScript="$(realpath ./mach) configure"
+
+    # Set predictable directories for build and state
+    export MOZ_OBJDIR=$(pwd)/mozobj
     export MOZBUILD_STATE_PATH=$(pwd)/mozbuild
 
-  '' + (lib.optionalString (lib.versionAtLeast version "95.0") ''
+    # Don't try to send libnotify notifications during build
+    export MOZ_NOSPAM=1
+
+    # Set consistent remoting name to ensure wmclass matches with desktop file
+    export MOZ_APP_REMOTINGNAME="${binaryName}"
+
+    # Use our own python
+    export MACH_USE_SYSTEM_PYTHON=1
+
+    # AS=as in the environment causes build failure
+    # https://bugzilla.mozilla.org/show_bug.cgi?id=1497286
+    unset AS
+
+  '' + lib.optionalString (lib.versionAtLeast version "95.0") ''
     # RBox WASM Sandboxing
     export WASM_CC=${pkgsCross.wasi32.stdenv.cc}/bin/${pkgsCross.wasi32.stdenv.cc.targetPrefix}cc
     export WASM_CXX=${pkgsCross.wasi32.stdenv.cc}/bin/${pkgsCross.wasi32.stdenv.cc.targetPrefix}c++
-  '') + (lib.optionalString googleAPISupport ''
+ '' + lib.optionalString pgoSupport ''
+   if [ -e "$TMPDIR/merged.profdata" ]; then
+     echo "Configuring with profiling data"
+     for i in "''${!configureFlagsArray[@]}"; do
+       if [[ ''${configureFlagsArray[i]} = "--enable-profile-generate=cross" ]]; then
+         unset 'configureFlagsArray[i]'
+       fi
+     done
+     configureFlagsArray+=(
+       "--enable-profile-use=cross"
+       "--with-pgo-profile-path="$TMPDIR/merged.profdata""
+       "--with-pgo-jarlog="$TMPDIR/jarlog""
+     )
+   else
+     echo "Configuring to generate profiling data"
+     configureFlagsArray+=(
+       "--enable-profile-generate=cross"
+     )
+   fi
+  '' + lib.optionalString googleAPISupport ''
     # Google API key used by Chromium and Firefox.
     # Note: These are for NixOS/nixpkgs use ONLY. For your own distribution,
     # please get your own set of keys.
@@ -236,49 +281,43 @@ buildStdenv.mkDerivation ({
     # 60.5+ & 66+ did split the google API key arguments: https://bugzilla.mozilla.org/show_bug.cgi?id=1531176
     configureFlagsArray+=("--with-google-location-service-api-keyfile=$TMPDIR/ga")
     configureFlagsArray+=("--with-google-safebrowsing-api-keyfile=$TMPDIR/ga")
-  '') + ''
-    # AS=as in the environment causes build failure https://bugzilla.mozilla.org/show_bug.cgi?id=1497286
-    unset AS
-  '' + (lib.optionalString enableOfficialBranding ''
+  '' + lib.optionalString enableOfficialBranding ''
     export MOZILLA_OFFICIAL=1
-    export BUILD_OFFICIAL=1
-  '');
+  '';
 
   configureFlags = [
+    "--disable-tests"
+    "--disable-updater"
     "--enable-application=${application}"
+    "--enable-default-toolkit=cairo-gtk3${lib.optionalString waylandSupport "-wayland"}"
+    "--enable-system-pixman"
+    "--with-libclang-path=${llvmPackages.libclang.lib}/lib"
+    "--with-system-ffi"
+    "--with-system-icu"
     "--with-system-jpeg"
-    "--with-system-zlib"
     "--with-system-libevent"
     "--with-system-libvpx"
-    "--with-system-png" # needs APNG support
-    "--with-system-icu"
-    "--enable-system-ffi"
-    "--enable-system-pixman"
-    #"--enable-system-cairo"
-    "--disable-tests"
-    "--disable-necko-wifi" # maybe we want to enable this at some point
-    "--disable-updater"
-    "--enable-default-toolkit=${default-toolkit}"
-    "--with-libclang-path=${llvmPackages.libclang.lib}/lib"
     "--with-system-nspr"
     "--with-system-nss"
+    "--with-system-png" # needs APNG support
+    "--with-system-webp"
+    "--with-system-zlib"
   ]
-  ++ lib.optional (buildStdenv.isDarwin) "--disable-xcode-checks"
-  ++ lib.optional (!ltoSupport && !buildStdenv.cc.isClang) "--with-clang-path=${llvmPackages.clang}/bin/clang"
   # LTO is done using clang and lld on Linux.
-  # Darwin needs to use the default linker as lld is not supported (yet?):
-  #   https://bugzilla.mozilla.org/show_bug.cgi?id=1538724
+  ++ lib.optionals ltoSupport [
+     "--enable-lto=cross" # Cross-Language LTO
+     "--enable-linker=lld"
+  ]
   # elf-hack is broken when using clang+lld:
-  #   https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
-  ++ lib.optional ltoSupport "--enable-lto=cross" # Cross-language LTO.
+  # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
   ++ lib.optional (ltoSupport && (buildStdenv.isAarch32 || buildStdenv.isi686 || buildStdenv.isx86_64)) "--disable-elf-hack"
-  ++ lib.optional (ltoSupport && !buildStdenv.isDarwin) "--enable-linker=lld"
   ++ lib.optional (lib.versionAtLeast version "95") "--with-wasi-sysroot=${wasiSysRoot}"
 
   ++ flag alsaSupport "alsa"
   ++ flag pulseaudioSupport "pulseaudio"
   ++ flag ffmpegSupport "ffmpeg"
   ++ flag jemallocSupport "jemalloc"
+  ++ flag geolocationSupport "necko-wifi"
   ++ flag gssSupport "negotiateauth"
   ++ flag webrtcSupport "webrtc"
   ++ flag crashreporterSupport "crashreporter"
@@ -295,19 +334,91 @@ buildStdenv.mkDerivation ({
   ++ lib.optional enableOfficialBranding "--enable-official-branding"
   ++ extraConfigureFlags;
 
-  postConfigure = ''
-    cd obj-*
+  buildInputs = [
+    bzip2
+    dbus
+    dbus-glib
+    file
+    fontconfig
+    freetype
+    glib
+    gnum4
+    gtk3
+    icu
+    libffi
+    libGL
+    libGLU
+    libevent
+    libjpeg
+    libpng
+    libstartup_notification
+    libvpx
+    libwebp
+    nasm
+    nspr
+    nss
+    pango
+    perl
+    xorg.libX11
+    xorg.libXcursor
+    xorg.libXdamage
+    xorg.libXext
+    xorg.libXft
+    xorg.libXi
+    xorg.libXrender
+    xorg.libXt
+    xorg.libXtst
+    xorg.pixman
+    xorg.xorgproto
+    zip
+    zlib
+  ]
+  ++ lib.optional  alsaSupport alsa-lib
+  ++ lib.optional  pulseaudioSupport libpulseaudio # only headers are needed
+  ++ lib.optional  gssSupport libkrb5
+  ++ lib.optionals waylandSupport [ libxkbcommon libdrm ]
+  ++ lib.optional  jemallocSupport jemalloc
+  ++ extraBuildInputs;
+
+  profilingPhase = lib.optionalString pgoSupport ''
+    # Package up Firefox for profiling
+    ./mach package
+
+    # Run profiling
+    (
+      export HOME=$TMPDIR
+      export LLVM_PROFDATA=llvm-profdata
+      export JARLOG_FILE="$TMPDIR/jarlog"
+
+      xvfb-run -w 10 -s "-screen 0 1920x1080x24" \
+        ./mach python ./build/pgo/profileserver.py
+    )
+
+    # Copy profiling data to a place we can easily reference
+    cp ./merged.profdata $TMPDIR/merged.profdata
+
+    # Clean build dir
+    ./mach clobber
   '';
 
-  makeFlags = extraMakeFlags;
+  preBuild = ''
+    cd mozobj
+  '';
 
+  postBuild = ''
+    cd ..
+  '';
+
+  makeFlags = extraMakeFlags;
+  separateDebugInfo = enableDebugSymbols;
   enableParallelBuilding = true;
-  doCheck = false; # "--disable-tests" above
 
-  installPhase = if buildStdenv.isDarwin then ''
-    mkdir -p $out/Applications
-    cp -LR dist/${binaryNameCapitalized}.app $out/Applications
-  '' else null;
+  # tests were disabled in configureFlags
+  doCheck = false;
+
+  preInstall = ''
+    cd mozobj
+  '';
 
   postInstall = lib.optionalString buildStdenv.isLinux ''
     # Remove SDK cruft. FIXME: move to a separate output?
@@ -319,7 +430,7 @@ buildStdenv.mkDerivation ({
 
   # Workaround: The separateDebugInfo hook skips artifacts whose build ID's length is not 40.
   # But we got 16-length build ID here. The function body is mainly copied from pkgs/build-support/setup-hooks/separate-debug-info.sh
-  # Remove it when PR #146275 is merged.
+  # Remove it when https://github.com/NixOS/nixpkgs/pull/146275 is merged.
   preFixup = lib.optionalString enableDebugSymbols ''
     _separateDebugInfo() {
         [ -e "$prefix" ] || return 0
@@ -356,19 +467,18 @@ buildStdenv.mkDerivation ({
   doInstallCheck = true;
   installCheckPhase = ''
     # Some basic testing
-    "$out${execdir}/${applicationName}" --version
+    "$out/bin/${binaryName}" --version
   '';
 
   passthru = {
     inherit updateScript;
     inherit version;
     inherit alsaSupport;
+    inherit binaryName;
     inherit pipewireSupport;
     inherit nspr;
     inherit ffmpegSupport;
     inherit gssSupport;
-    inherit execdir;
-    inherit applicationName;
     inherit tests;
     inherit gtk3;
     inherit wasiSysRoot;
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox/librewolf/default.nix b/nixpkgs/pkgs/applications/networking/browsers/firefox/librewolf/default.nix
index 4d8fe708e75a..10b65e8825c2 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox/librewolf/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox/librewolf/default.nix
@@ -6,7 +6,7 @@ rec {
 
   inherit (src) packageVersion firefox source;
 
-  patches = [ ./verify-telemetry-macros.patch ];
+  extraPatches = [ ./verify-telemetry-macros.patch ];
 
   extraConfigureFlags = [
     "--with-app-name=librewolf"
@@ -34,7 +34,7 @@ rec {
   extraPoliciesFiles = [ "${source}/submodules/settings/distribution/policies.json" ];
 
   extraPassthru = {
-    librewolf = { inherit src patches; };
+    librewolf = { inherit src extraPatches; };
     inherit extraPrefsFiles extraPoliciesFiles;
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox/librewolf/src.json b/nixpkgs/pkgs/applications/networking/browsers/firefox/librewolf/src.json
index bf1e1e2f4e43..f24353089488 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox/librewolf/src.json
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox/librewolf/src.json
@@ -1,11 +1,11 @@
 {
-  "packageVersion": "97.0.2-1",
+  "packageVersion": "98.0.2-1",
   "source": {
-    "rev": "97.0.2-1",
-    "sha256": "0pk9ci0wvz61879w3fvy8p1w4w8anv5s7rfiimz21m351gcf3d7m"
+    "rev": "98.0.2-1",
+    "sha256": "033l6mjmhfhf7b8p652s7ziw8zz725082hhzzvr3ahi498wshkx6"
   },
   "firefox": {
-    "version": "97.0.2",
-    "sha512": "efbf33723f5979025454b6cc183927afb4bc72a51c00b5d45940122da596b8ac99080f3a6a59f5dd85a725e356349ec57e7eba1c36cdab7d55a28b04895d274c"
+    "version": "98.0.2",
+    "sha512": "b567b53fcdc08491063d535545f558ea56ec5be02ca540661de116986245b79f509e0103cea5661faf9f4b3d30b67758ebdb4b30401e260ee27cbb300203f36e"
   }
 }
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox/packages.nix b/nixpkgs/pkgs/applications/networking/browsers/firefox/packages.nix
index 902eb19da747..0eeb451f682e 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -3,10 +3,10 @@
 rec {
   firefox = firefoxCommon rec {
     pname = "firefox";
-    version = "98.0.1";
+    version = "98.0.2";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "1434ff775e6cdc6d9a75fa0e6d07a4680ada86ecfd7b65208c597ed765e847d900b68df355e6bea6461f6d86ee7a8b2ce3117f23826ad144bd87dfe64ee39b42";
+      sha512 = "b567b53fcdc08491063d535545f558ea56ec5be02ca540661de116986245b79f509e0103cea5661faf9f4b3d30b67758ebdb4b30401e260ee27cbb300203f36e";
     };
 
     meta = {
@@ -95,5 +95,6 @@ rec {
   }).override {
     crashreporterSupport = false;
     enableOfficialBranding = false;
+    pgoSupport = false; # Profiling gets stuck and doesn't terminate.
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/browsers/firefox/wrapper.nix b/nixpkgs/pkgs/applications/networking/browsers/firefox/wrapper.nix
index 4713320e0685..d5055f04ed82 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/firefox/wrapper.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/firefox/wrapper.nix
@@ -12,6 +12,7 @@
 , libva
 , mesa # firefox wants gbm for drm+dmabuf
 , cups
+, pciutils
 }:
 
 ## configurability of the wrapper itself
@@ -20,7 +21,7 @@ browser:
 
 let
   wrapper =
-    { applicationName ? browser.applicationName or (lib.getName browser)
+    { applicationName ? browser.binaryName or (lib.getName browser)
     , pname ? applicationName
     , version ? lib.getVersion browser
     , desktopName ? # applicationName with first letter capitalized
@@ -66,8 +67,8 @@ let
           ++ lib.optional (cfg.enableFXCastBridge or false) fx_cast_bridge
           ++ extraNativeMessagingHosts
         );
-      libs =   lib.optionals stdenv.isLinux [ udev libva mesa libnotify xorg.libXScrnSaver cups ]
-            ++ lib.optional (pipewireSupport && lib.versionAtLeast version "83") pipewire
+      libs =   lib.optionals stdenv.isLinux [ udev libva mesa libnotify xorg.libXScrnSaver cups pciutils ]
+            ++ lib.optional pipewireSupport pipewire
             ++ lib.optional ffmpegSupport ffmpeg
             ++ lib.optional gssSupport libkrb5
             ++ lib.optional useGlvnd libglvnd
@@ -179,14 +180,10 @@ let
       buildInputs = [ browser.gtk3 ];
 
 
-      buildCommand = lib.optionalString stdenv.isDarwin ''
-        mkdir -p $out/Applications
-        cp -R --no-preserve=mode,ownership ${browser}/Applications/${applicationName}.app $out/Applications
-        rm -f $out${browser.execdir or "/bin"}/${applicationName}
-      '' + ''
-        if [ ! -x "${browser}${browser.execdir or "/bin"}/${applicationName}" ]
+      buildCommand = ''
+        if [ ! -x "${browser}/bin/${applicationName}" ]
         then
-            echo "cannot find executable file \`${browser}${browser.execdir or "/bin"}/${applicationName}'"
+            echo "cannot find executable file \`${browser}/bin/${applicationName}'"
             exit 1
         fi
 
@@ -223,12 +220,12 @@ let
 
         # create the wrapper
 
-        executablePrefix="$out${browser.execdir or "/bin"}"
+        executablePrefix="$out/bin"
         executablePath="$executablePrefix/${applicationName}"
 
         if [ ! -x "$executablePath" ]
         then
-            echo "cannot find executable file \`${browser}${browser.execdir or "/bin"}/${applicationName}'"
+            echo "cannot find executable file \`${browser}/bin/${applicationName}'"
             exit 1
         fi
 
@@ -243,18 +240,18 @@ let
           oldExe="$(readlink -v --canonicalize-existing "$executablePath")"
         fi
 
-        if [ ! -x "${browser}${browser.execdir or "/bin"}/${applicationName}" ]
+        if [ ! -x "${browser}/bin/${applicationName}" ]
         then
-            echo "cannot find executable file \`${browser}${browser.execdir or "/bin"}/${applicationName}'"
+            echo "cannot find executable file \`${browser}/bin/${applicationName}'"
             exit 1
         fi
 
         makeWrapper "$oldExe" \
-          "$out${browser.execdir or "/bin"}/${applicationName}${nameSuffix}" \
+          "$out/bin/${applicationName}${nameSuffix}" \
             --prefix LD_LIBRARY_PATH ':' "$libs" \
             --suffix-each GTK_PATH ':' "$gtk_modules" \
             --prefix PATH ':' "${xdg-utils}/bin" \
-            --suffix PATH ':' "$out${browser.execdir or "/bin"}" \
+            --suffix PATH ':' "$out/bin" \
             --set MOZ_APP_LAUNCHER "${applicationName}${nameSuffix}" \
             --set MOZ_SYSTEM_DIR "$out/lib/mozilla" \
             --set MOZ_LEGACY_PROFILES 1 \
@@ -278,7 +275,7 @@ let
             mkdir -p "$out/share/icons/hicolor/''${res}x''${res}/apps"
             icon=$( find "${browser}/lib/" -name "default''${res}.png" )
               if [ -e "$icon" ]; then ln -s "$icon" \
-                "$out/share/icons/hicolor/''${res}x''${res}/apps/${applicationName}.png"
+                "$out/share/icons/hicolor/''${res}x''${res}/apps/${icon}.png"
               fi
             done
         fi
diff --git a/nixpkgs/pkgs/applications/networking/browsers/opera/default.nix b/nixpkgs/pkgs/applications/networking/browsers/opera/default.nix
index bd7d42777f5d..7c37531263fb 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/opera/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/opera/default.nix
@@ -50,11 +50,11 @@ let
 in stdenv.mkDerivation rec {
 
   pname = "opera";
-  version = "84.0.4316.31";
+  version = "84.0.4316.42";
 
   src = fetchurl {
     url = "${mirror}/${version}/linux/${pname}-stable_${version}_amd64.deb";
-    sha256 = "sha256-ypSnarhtJNQn3yOtydjmf6WmHAYbOfMg3xatCxTfIMY=";
+    sha256 = "sha256-ZjVuw30YfHQ69BVxPvIde6VuOcqtnXrGwhZpA26vLpw=";
   };
 
   unpackCmd = "${dpkg}/bin/dpkg-deb -x $curSrc .";
diff --git a/nixpkgs/pkgs/applications/networking/browsers/palemoon/default.nix b/nixpkgs/pkgs/applications/networking/browsers/palemoon/default.nix
index e33ff3f3ca6e..0a0a7f341c06 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/palemoon/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/palemoon/default.nix
@@ -44,12 +44,12 @@ assert with lib.strings; (
 
 stdenv.mkDerivation rec {
   pname = "palemoon";
-  version = "29.4.4";
+  version = "29.4.5";
 
   src = fetchzip {
     name = "${pname}-${version}";
     url = "http://archive.palemoon.org/source/${pname}-${version}.source.tar.xz";
-    sha256 = "sha256-0R0IJd4rd7NqnxQxkHSx10cNlwECqpKgJnlfYAMx4wc=";
+    sha256 = "sha256-ls4uhfFaiFHkmAVbwwBenm71sNm6Tql2tMpzk9D2b5Y=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix b/nixpkgs/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
index ce1d41834c3b..28e11814029c 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
@@ -87,7 +87,7 @@ let
   fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ];
 
   # Upstream source
-  version = "11.0.7";
+  version = "11.0.9";
 
   lang = "en-US";
 
@@ -98,7 +98,7 @@ let
         "https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
         "https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
       ];
-      sha256 = "197yf0abcb98kqds0xvki0b52rlhzyzdc98zmhrn7y8gmahc84cz";
+      sha256 = "0cl01bx64d6bmajknj7085nzc6841adkp65fz531r3y6nnpwr9ds";
     };
 
     i686-linux = fetchurl {
@@ -107,7 +107,7 @@ let
         "https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
         "https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
       ];
-      sha256 = "0yylfsgmnfn6zww0r6kp1d1wmmb0lfa4lqwkgr7d8rzi6q9spmqk";
+      sha256 = "0j6alhm1pqp7fb6nk55vzvr1qjz6gyd3vn6v2dkkvj9mgm57x1j5";
     };
   };
 in
diff --git a/nixpkgs/pkgs/applications/networking/browsers/vieb/default.nix b/nixpkgs/pkgs/applications/networking/browsers/vieb/default.nix
index d7ba8808cc71..7cbf4cad975e 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/vieb/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/vieb/default.nix
@@ -2,13 +2,13 @@
 
 mkYarnPackage rec {
   pname = "vieb";
-  version = "6.2.0";
+  version = "7.1.2";
 
   src = fetchFromGitHub {
     owner = "Jelmerro";
     repo = pname;
     rev = version;
-    sha256 = "sha256-FuaN9iUxR5Y6SnNmuegmNJXn1BYKgcobquTL3thuByM=";
+    sha256 = "sha256-4LGg3w/rleTyHJd4867dog+/fIXhtKbYgF1bYKwoh/I=";
   };
 
   packageJSON = ./package.json;
diff --git a/nixpkgs/pkgs/applications/networking/browsers/vieb/package.json b/nixpkgs/pkgs/applications/networking/browsers/vieb/package.json
index 1836efdb8ad2..0e518f5ef4af 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/vieb/package.json
+++ b/nixpkgs/pkgs/applications/networking/browsers/vieb/package.json
@@ -1,7 +1,7 @@
 {
   "name": "vieb",
   "productName": "Vieb",
-  "version": "5.3.0",
+  "version": "7.1.2",
   "description": "Vim Inspired Electron Browser",
   "main": "app/index.js",
   "scripts": {
@@ -14,7 +14,7 @@
     "fix": "eslint --fix app .eslintrc.js build.js",
     "lint": "eslint app .eslintrc.js build.js",
     "start": "electron app",
-    "test": "jest --testEnvironment jsdom --coverage --collectCoverageFrom 'app/**/*.js' -u && npm run lint && echo 'All good :)'"
+    "test": "TZ=UTC jest --testEnvironment jsdom --coverage --collectCoverageFrom 'app/**/*.js' -u && npm run lint && echo 'All good :)'"
   },
   "repository": "https://github.com/Jelmerro/Vieb",
   "homepage": "https://vieb.dev",
@@ -28,23 +28,18 @@
   "email": "Jelmerro@users.noreply.github.com",
   "license": "GPL-3.0-or-later",
   "devDependencies": {
-    "archiver": "5.3.0",
-    "electron": "13.1.4",
-    "electron-builder": "22.11.7",
-    "eslint": "7.29.0",
-    "eslint-plugin-compat": "3.9.0",
-    "eslint-plugin-sort-keys-fix": "1.1.1",
-    "jest": "27.0.6",
-    "jest-environment-jsdom": "27.0.6"
+    "electron": "17.0.1",
+    "electron-builder": "22.14.13",
+    "eslint": "8.9.0",
+    "eslint-plugin-sort-keys": "2.3.5",
+    "jest": "27.5.1",
+    "jest-environment-jsdom": "27.5.1"
   },
   "dependencies": {
     "7zip-bin": "5.1.1",
-    "@cliqz/adblocker-electron": "1.22.2",
-    "@cliqz/adblocker-electron-preload": "1.22.2",
-    "is-svg": "4.3.1",
+    "@cliqz/adblocker-electron": "1.23.6",
+    "@cliqz/adblocker-electron-preload": "1.23.6",
+    "is-svg": "4.3.2",
     "rimraf": "3.0.2"
-  },
-  "browserslist": [
-    "last 2 Chrome versions"
-  ]
+  }
 }
diff --git a/nixpkgs/pkgs/applications/networking/browsers/vieb/yarn.lock b/nixpkgs/pkgs/applications/networking/browsers/vieb/yarn.lock
index 33e9604c06da..4f5254819b16 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/vieb/yarn.lock
+++ b/nixpkgs/pkgs/applications/networking/browsers/vieb/yarn.lock
@@ -7,184 +7,167 @@
   resolved "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-5.1.1.tgz#9274ec7460652f9c632c59addf24efb1684ef876"
   integrity sha512-sAP4LldeWNz0lNzmTird3uWfFDWWTeg6V/MsmyyLR9X1idwKBWIgt/ZvinqQldJm3LecKEs1emkbquO6PCiLVQ==
 
-"@babel/code-frame@7.12.11":
-  version "7.12.11"
-  resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f"
-  integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==
-  dependencies:
-    "@babel/highlight" "^7.10.4"
-
-"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.14.5.tgz#23b08d740e83f49c5e59945fbf1b43e80bbf4edb"
-  integrity sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==
-  dependencies:
-    "@babel/highlight" "^7.14.5"
-
-"@babel/compat-data@^7.14.5":
-  version "7.14.7"
-  resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.7.tgz#7b047d7a3a89a67d2258dc61f604f098f1bc7e08"
-  integrity sha512-nS6dZaISCXJ3+518CWiBfEr//gHyMO02uDxBkXTKZDN5POruCnOZ1N4YBRZDCabwF8nZMWBpRxIicmXtBs+fvw==
-
-"@babel/core@^7.1.0", "@babel/core@^7.7.2", "@babel/core@^7.7.5":
-  version "7.14.6"
-  resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.14.6.tgz#e0814ec1a950032ff16c13a2721de39a8416fcab"
-  integrity sha512-gJnOEWSqTk96qG5BoIrl5bVtc23DCycmIePPYnamY9RboYdI4nFy5vAQMSl81O5K/W0sLDWfGysnOECC+KUUCA==
-  dependencies:
-    "@babel/code-frame" "^7.14.5"
-    "@babel/generator" "^7.14.5"
-    "@babel/helper-compilation-targets" "^7.14.5"
-    "@babel/helper-module-transforms" "^7.14.5"
-    "@babel/helpers" "^7.14.6"
-    "@babel/parser" "^7.14.6"
-    "@babel/template" "^7.14.5"
-    "@babel/traverse" "^7.14.5"
-    "@babel/types" "^7.14.5"
+"@ampproject/remapping@^2.1.0":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.1.2.tgz#4edca94973ded9630d20101cd8559cedb8d8bd34"
+  integrity sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==
+  dependencies:
+    "@jridgewell/trace-mapping" "^0.3.0"
+
+"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7":
+  version "7.16.7"
+  resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.7.tgz#44416b6bd7624b998f5b1af5d470856c40138789"
+  integrity sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==
+  dependencies:
+    "@babel/highlight" "^7.16.7"
+
+"@babel/compat-data@^7.17.7":
+  version "7.17.7"
+  resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.17.7.tgz#078d8b833fbbcc95286613be8c716cef2b519fa2"
+  integrity sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==
+
+"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.2", "@babel/core@^7.8.0":
+  version "7.17.8"
+  resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.17.8.tgz#3dac27c190ebc3a4381110d46c80e77efe172e1a"
+  integrity sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==
+  dependencies:
+    "@ampproject/remapping" "^2.1.0"
+    "@babel/code-frame" "^7.16.7"
+    "@babel/generator" "^7.17.7"
+    "@babel/helper-compilation-targets" "^7.17.7"
+    "@babel/helper-module-transforms" "^7.17.7"
+    "@babel/helpers" "^7.17.8"
+    "@babel/parser" "^7.17.8"
+    "@babel/template" "^7.16.7"
+    "@babel/traverse" "^7.17.3"
+    "@babel/types" "^7.17.0"
     convert-source-map "^1.7.0"
     debug "^4.1.0"
     gensync "^1.0.0-beta.2"
     json5 "^2.1.2"
     semver "^6.3.0"
-    source-map "^0.5.0"
 
-"@babel/generator@^7.14.5", "@babel/generator@^7.7.2":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.14.5.tgz#848d7b9f031caca9d0cd0af01b063f226f52d785"
-  integrity sha512-y3rlP+/G25OIX3mYKKIOlQRcqj7YgrvHxOLbVmyLJ9bPmi5ttvUmpydVjcFjZphOktWuA7ovbx91ECloWTfjIA==
+"@babel/generator@^7.17.3", "@babel/generator@^7.17.7", "@babel/generator@^7.7.2":
+  version "7.17.7"
+  resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.17.7.tgz#8da2599beb4a86194a3b24df6c085931d9ee45ad"
+  integrity sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==
   dependencies:
-    "@babel/types" "^7.14.5"
+    "@babel/types" "^7.17.0"
     jsesc "^2.5.1"
     source-map "^0.5.0"
 
-"@babel/helper-compilation-targets@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz#7a99c5d0967911e972fe2c3411f7d5b498498ecf"
-  integrity sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw==
+"@babel/helper-compilation-targets@^7.17.7":
+  version "7.17.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz#a3c2924f5e5f0379b356d4cfb313d1414dc30e46"
+  integrity sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==
   dependencies:
-    "@babel/compat-data" "^7.14.5"
-    "@babel/helper-validator-option" "^7.14.5"
-    browserslist "^4.16.6"
+    "@babel/compat-data" "^7.17.7"
+    "@babel/helper-validator-option" "^7.16.7"
+    browserslist "^4.17.5"
     semver "^6.3.0"
 
-"@babel/helper-function-name@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz#89e2c474972f15d8e233b52ee8c480e2cfcd50c4"
-  integrity sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ==
-  dependencies:
-    "@babel/helper-get-function-arity" "^7.14.5"
-    "@babel/template" "^7.14.5"
-    "@babel/types" "^7.14.5"
-
-"@babel/helper-get-function-arity@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz#25fbfa579b0937eee1f3b805ece4ce398c431815"
-  integrity sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg==
-  dependencies:
-    "@babel/types" "^7.14.5"
-
-"@babel/helper-hoist-variables@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz#e0dd27c33a78e577d7c8884916a3e7ef1f7c7f8d"
-  integrity sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==
-  dependencies:
-    "@babel/types" "^7.14.5"
-
-"@babel/helper-member-expression-to-functions@^7.14.5":
-  version "7.14.7"
-  resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.7.tgz#97e56244beb94211fe277bd818e3a329c66f7970"
-  integrity sha512-TMUt4xKxJn6ccjcOW7c4hlwyJArizskAhoSTOCkA0uZ+KghIaci0Qg9R043kUMWI9mtQfgny+NQ5QATnZ+paaA==
-  dependencies:
-    "@babel/types" "^7.14.5"
-
-"@babel/helper-module-imports@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz#6d1a44df6a38c957aa7c312da076429f11b422f3"
-  integrity sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ==
-  dependencies:
-    "@babel/types" "^7.14.5"
-
-"@babel/helper-module-transforms@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.14.5.tgz#7de42f10d789b423eb902ebd24031ca77cb1e10e"
-  integrity sha512-iXpX4KW8LVODuAieD7MzhNjmM6dzYY5tfRqT+R9HDXWl0jPn/djKmA+G9s/2C2T9zggw5tK1QNqZ70USfedOwA==
-  dependencies:
-    "@babel/helper-module-imports" "^7.14.5"
-    "@babel/helper-replace-supers" "^7.14.5"
-    "@babel/helper-simple-access" "^7.14.5"
-    "@babel/helper-split-export-declaration" "^7.14.5"
-    "@babel/helper-validator-identifier" "^7.14.5"
-    "@babel/template" "^7.14.5"
-    "@babel/traverse" "^7.14.5"
-    "@babel/types" "^7.14.5"
-
-"@babel/helper-optimise-call-expression@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz#f27395a8619e0665b3f0364cddb41c25d71b499c"
-  integrity sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==
-  dependencies:
-    "@babel/types" "^7.14.5"
-
-"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.8.0":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz#5ac822ce97eec46741ab70a517971e443a70c5a9"
-  integrity sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==
-
-"@babel/helper-replace-supers@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz#0ecc0b03c41cd567b4024ea016134c28414abb94"
-  integrity sha512-3i1Qe9/8x/hCHINujn+iuHy+mMRLoc77b2nI9TB0zjH1hvn9qGlXjWlggdwUcju36PkPCy/lpM7LLUdcTyH4Ow==
-  dependencies:
-    "@babel/helper-member-expression-to-functions" "^7.14.5"
-    "@babel/helper-optimise-call-expression" "^7.14.5"
-    "@babel/traverse" "^7.14.5"
-    "@babel/types" "^7.14.5"
-
-"@babel/helper-simple-access@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.14.5.tgz#66ea85cf53ba0b4e588ba77fc813f53abcaa41c4"
-  integrity sha512-nfBN9xvmCt6nrMZjfhkl7i0oTV3yxR4/FztsbOASyTvVcoYd0TRHh7eMLdlEcCqobydC0LAF3LtC92Iwxo0wyw==
-  dependencies:
-    "@babel/types" "^7.14.5"
-
-"@babel/helper-split-export-declaration@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz#22b23a54ef51c2b7605d851930c1976dd0bc693a"
-  integrity sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==
-  dependencies:
-    "@babel/types" "^7.14.5"
-
-"@babel/helper-validator-identifier@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz#d0f0e277c512e0c938277faa85a3968c9a44c0e8"
-  integrity sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==
-
-"@babel/helper-validator-option@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz#6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3"
-  integrity sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==
-
-"@babel/helpers@^7.14.6":
-  version "7.14.6"
-  resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.14.6.tgz#5b58306b95f1b47e2a0199434fa8658fa6c21635"
-  integrity sha512-yesp1ENQBiLI+iYHSJdoZKUtRpfTlL1grDIX9NRlAVppljLw/4tTyYupIB7uIYmC3stW/imAv8EqaKaS/ibmeA==
-  dependencies:
-    "@babel/template" "^7.14.5"
-    "@babel/traverse" "^7.14.5"
-    "@babel/types" "^7.14.5"
-
-"@babel/highlight@^7.10.4", "@babel/highlight@^7.14.5":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz#6861a52f03966405001f6aa534a01a24d99e8cd9"
-  integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==
-  dependencies:
-    "@babel/helper-validator-identifier" "^7.14.5"
+"@babel/helper-environment-visitor@^7.16.7":
+  version "7.16.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz#ff484094a839bde9d89cd63cba017d7aae80ecd7"
+  integrity sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==
+  dependencies:
+    "@babel/types" "^7.16.7"
+
+"@babel/helper-function-name@^7.16.7":
+  version "7.16.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz#f1ec51551fb1c8956bc8dd95f38523b6cf375f8f"
+  integrity sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==
+  dependencies:
+    "@babel/helper-get-function-arity" "^7.16.7"
+    "@babel/template" "^7.16.7"
+    "@babel/types" "^7.16.7"
+
+"@babel/helper-get-function-arity@^7.16.7":
+  version "7.16.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz#ea08ac753117a669f1508ba06ebcc49156387419"
+  integrity sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==
+  dependencies:
+    "@babel/types" "^7.16.7"
+
+"@babel/helper-hoist-variables@^7.16.7":
+  version "7.16.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz#86bcb19a77a509c7b77d0e22323ef588fa58c246"
+  integrity sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==
+  dependencies:
+    "@babel/types" "^7.16.7"
+
+"@babel/helper-module-imports@^7.16.7":
+  version "7.16.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz#25612a8091a999704461c8a222d0efec5d091437"
+  integrity sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==
+  dependencies:
+    "@babel/types" "^7.16.7"
+
+"@babel/helper-module-transforms@^7.17.7":
+  version "7.17.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz#3943c7f777139e7954a5355c815263741a9c1cbd"
+  integrity sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==
+  dependencies:
+    "@babel/helper-environment-visitor" "^7.16.7"
+    "@babel/helper-module-imports" "^7.16.7"
+    "@babel/helper-simple-access" "^7.17.7"
+    "@babel/helper-split-export-declaration" "^7.16.7"
+    "@babel/helper-validator-identifier" "^7.16.7"
+    "@babel/template" "^7.16.7"
+    "@babel/traverse" "^7.17.3"
+    "@babel/types" "^7.17.0"
+
+"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.8.0":
+  version "7.16.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz#aa3a8ab4c3cceff8e65eb9e73d87dc4ff320b2f5"
+  integrity sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==
+
+"@babel/helper-simple-access@^7.17.7":
+  version "7.17.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz#aaa473de92b7987c6dfa7ce9a7d9674724823367"
+  integrity sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==
+  dependencies:
+    "@babel/types" "^7.17.0"
+
+"@babel/helper-split-export-declaration@^7.16.7":
+  version "7.16.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz#0b648c0c42da9d3920d85ad585f2778620b8726b"
+  integrity sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==
+  dependencies:
+    "@babel/types" "^7.16.7"
+
+"@babel/helper-validator-identifier@^7.16.7":
+  version "7.16.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad"
+  integrity sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==
+
+"@babel/helper-validator-option@^7.16.7":
+  version "7.16.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz#b203ce62ce5fe153899b617c08957de860de4d23"
+  integrity sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==
+
+"@babel/helpers@^7.17.8":
+  version "7.17.8"
+  resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.17.8.tgz#288450be8c6ac7e4e44df37bcc53d345e07bc106"
+  integrity sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==
+  dependencies:
+    "@babel/template" "^7.16.7"
+    "@babel/traverse" "^7.17.3"
+    "@babel/types" "^7.17.0"
+
+"@babel/highlight@^7.16.7":
+  version "7.16.10"
+  resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88"
+  integrity sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==
+  dependencies:
+    "@babel/helper-validator-identifier" "^7.16.7"
     chalk "^2.0.0"
     js-tokens "^4.0.0"
 
-"@babel/parser@^7.1.0", "@babel/parser@^7.14.5", "@babel/parser@^7.14.6", "@babel/parser@^7.14.7", "@babel/parser@^7.7.2":
-  version "7.14.7"
-  resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.7.tgz#6099720c8839ca865a2637e6c85852ead0bdb595"
-  integrity sha512-X67Z5y+VBJuHB/RjwECp8kSl5uYi0BvRbNeWqkaJCVh+LiTPl19WBUfG627psSgp9rSf6ojuXghQM3ha6qHHdA==
+"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.16.7", "@babel/parser@^7.17.3", "@babel/parser@^7.17.8":
+  version "7.17.8"
+  resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.17.8.tgz#2817fb9d885dd8132ea0f8eb615a6388cca1c240"
+  integrity sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==
 
 "@babel/plugin-syntax-async-generators@^7.8.4":
   version "7.8.4"
@@ -271,42 +254,43 @@
     "@babel/helper-plugin-utils" "^7.14.5"
 
 "@babel/plugin-syntax-typescript@^7.7.2":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz#b82c6ce471b165b5ce420cf92914d6fb46225716"
-  integrity sha512-u6OXzDaIXjEstBRRoBCQ/uKQKlbuaeE5in0RvWdA4pN6AhqxTIwUsnHPU1CFZA/amYObMsuWhYfRl3Ch90HD0Q==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/template@^7.14.5", "@babel/template@^7.3.3":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.14.5.tgz#a9bc9d8b33354ff6e55a9c60d1109200a68974f4"
-  integrity sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==
-  dependencies:
-    "@babel/code-frame" "^7.14.5"
-    "@babel/parser" "^7.14.5"
-    "@babel/types" "^7.14.5"
-
-"@babel/traverse@^7.1.0", "@babel/traverse@^7.14.5", "@babel/traverse@^7.7.2":
-  version "7.14.7"
-  resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.14.7.tgz#64007c9774cfdc3abd23b0780bc18a3ce3631753"
-  integrity sha512-9vDr5NzHu27wgwejuKL7kIOm4bwEtaPQ4Z6cpCmjSuaRqpH/7xc4qcGEscwMqlkwgcXl6MvqoAjZkQ24uSdIZQ==
-  dependencies:
-    "@babel/code-frame" "^7.14.5"
-    "@babel/generator" "^7.14.5"
-    "@babel/helper-function-name" "^7.14.5"
-    "@babel/helper-hoist-variables" "^7.14.5"
-    "@babel/helper-split-export-declaration" "^7.14.5"
-    "@babel/parser" "^7.14.7"
-    "@babel/types" "^7.14.5"
+  version "7.16.7"
+  resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.7.tgz#39c9b55ee153151990fb038651d58d3fd03f98f8"
+  integrity sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==
+  dependencies:
+    "@babel/helper-plugin-utils" "^7.16.7"
+
+"@babel/template@^7.16.7", "@babel/template@^7.3.3":
+  version "7.16.7"
+  resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.7.tgz#8d126c8701fde4d66b264b3eba3d96f07666d155"
+  integrity sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==
+  dependencies:
+    "@babel/code-frame" "^7.16.7"
+    "@babel/parser" "^7.16.7"
+    "@babel/types" "^7.16.7"
+
+"@babel/traverse@^7.17.3", "@babel/traverse@^7.7.2":
+  version "7.17.3"
+  resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.17.3.tgz#0ae0f15b27d9a92ba1f2263358ea7c4e7db47b57"
+  integrity sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==
+  dependencies:
+    "@babel/code-frame" "^7.16.7"
+    "@babel/generator" "^7.17.3"
+    "@babel/helper-environment-visitor" "^7.16.7"
+    "@babel/helper-function-name" "^7.16.7"
+    "@babel/helper-hoist-variables" "^7.16.7"
+    "@babel/helper-split-export-declaration" "^7.16.7"
+    "@babel/parser" "^7.17.3"
+    "@babel/types" "^7.17.0"
     debug "^4.1.0"
     globals "^11.1.0"
 
-"@babel/types@^7.0.0", "@babel/types@^7.14.5", "@babel/types@^7.3.0", "@babel/types@^7.3.3":
-  version "7.14.5"
-  resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.14.5.tgz#3bb997ba829a2104cedb20689c4a5b8121d383ff"
-  integrity sha512-M/NzBpEL95I5Hh4dwhin5JlE7EzO5PHMAuzjxss3tiOBD46KfQvVedN/3jEPZvdRvtsK2222XfdHogNIttFgcg==
+"@babel/types@^7.0.0", "@babel/types@^7.16.7", "@babel/types@^7.17.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3":
+  version "7.17.0"
+  resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.17.0.tgz#a826e368bccb6b3d84acd76acad5c0d87342390b"
+  integrity sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==
   dependencies:
-    "@babel/helper-validator-identifier" "^7.14.5"
+    "@babel/helper-validator-identifier" "^7.16.7"
     to-fast-properties "^2.0.0"
 
 "@bcoe/v8-coverage@^0.2.3":
@@ -314,46 +298,53 @@
   resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
   integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
 
-"@cliqz/adblocker-content@^1.22.2":
-  version "1.22.2"
-  resolved "https://registry.yarnpkg.com/@cliqz/adblocker-content/-/adblocker-content-1.22.2.tgz#643849d5f08c167eb84a2e7e3f1f9fbc41a3889b"
-  integrity sha512-EsV00IdW8sGujGnylOGR8dm401FdIfPRAjuevsRlZjgDE+hQKj6n5wwrZaylPIh994hWesg6bxWTmXpJ2Sy2QQ==
+"@cliqz/adblocker-content@^1.23.6", "@cliqz/adblocker-content@^1.23.7":
+  version "1.23.7"
+  resolved "https://registry.yarnpkg.com/@cliqz/adblocker-content/-/adblocker-content-1.23.7.tgz#21a1035e479d8f4dc4e7ecc2500cf8a4149eaace"
+  integrity sha512-tgCFcWhBty+WI3ObYBLDk56i1G7nScd5TBAOXlQf2EIbVJ+DC+G0YE91YHhQpzfy4ySI/wRGyEHrKzTRgmkuKQ==
+  dependencies:
+    "@cliqz/adblocker-extended-selectors" "^1.23.7"
+
+"@cliqz/adblocker-electron-preload@1.23.6":
+  version "1.23.6"
+  resolved "https://registry.yarnpkg.com/@cliqz/adblocker-electron-preload/-/adblocker-electron-preload-1.23.6.tgz#7f8db3df95afb385917df00ec5300847448437d1"
+  integrity sha512-xVBrIqfvcuh2Y07ZkEogzgkyqJuZvOqhRoFnuTyW2q97AmWAGLT6IjEGjl/vX7vMP0Y1b8wubdjI3VHnKvNKDg==
   dependencies:
-    "@cliqz/adblocker-extended-selectors" "^1.22.2"
+    "@cliqz/adblocker-content" "^1.23.6"
 
-"@cliqz/adblocker-electron-preload@1.22.2", "@cliqz/adblocker-electron-preload@^1.22.2":
-  version "1.22.2"
-  resolved "https://registry.yarnpkg.com/@cliqz/adblocker-electron-preload/-/adblocker-electron-preload-1.22.2.tgz#eea674767a60abe4e5f9ccb46188d33656f551d0"
-  integrity sha512-4JSqNNYo4hXMoZjnyBVTd3z2yV2n5qeoNPk+WaeOFEF9uJXhqPR+Sz7scNB6nMYnRuSQfraeogtdaA4s0JkJWQ==
+"@cliqz/adblocker-electron-preload@^1.23.6":
+  version "1.23.7"
+  resolved "https://registry.yarnpkg.com/@cliqz/adblocker-electron-preload/-/adblocker-electron-preload-1.23.7.tgz#6aff5198c518c2d35f67a34bd213664a2a86e3ae"
+  integrity sha512-bGWf4r5q4savAGs3Kl4aR7XBH4J9AmrErDmcYu+tJk9V3rhTGXUi29kMl0D5x2JimhRmnKOeJ/Q2GJSUjvnmsg==
   dependencies:
-    "@cliqz/adblocker-content" "^1.22.2"
+    "@cliqz/adblocker-content" "^1.23.7"
 
-"@cliqz/adblocker-electron@1.22.2":
-  version "1.22.2"
-  resolved "https://registry.yarnpkg.com/@cliqz/adblocker-electron/-/adblocker-electron-1.22.2.tgz#85af3b49f7f653e6fb0d008b6523e3b3ba0dd41e"
-  integrity sha512-uSQjbcv9/csjQOO0AgqK8AnqdpKseebPkwXozglU1uFVVnuSOTs/4RohL3yac9uMkJtfyAIhT3mnbw9Cf4o+gQ==
+"@cliqz/adblocker-electron@1.23.6":
+  version "1.23.6"
+  resolved "https://registry.yarnpkg.com/@cliqz/adblocker-electron/-/adblocker-electron-1.23.6.tgz#e550f2ffa2b5d0404d0090c3870d0a849d3cd5d8"
+  integrity sha512-wzkCfBCo5RvRanzsVOu65xHW9GAUDqsg+tP8GYld6/hgMMb96KJZJVpvrvwvsneAm9T55QE4ef1utZbIIwltqA==
   dependencies:
-    "@cliqz/adblocker" "^1.22.2"
-    "@cliqz/adblocker-electron-preload" "^1.22.2"
+    "@cliqz/adblocker" "^1.23.6"
+    "@cliqz/adblocker-electron-preload" "^1.23.6"
     tldts-experimental "^5.6.21"
 
-"@cliqz/adblocker-extended-selectors@^1.22.2":
-  version "1.22.2"
-  resolved "https://registry.yarnpkg.com/@cliqz/adblocker-extended-selectors/-/adblocker-extended-selectors-1.22.2.tgz#1cad3c1569b765d9e7f8672c85b2a7b1e8e9ee90"
-  integrity sha512-/u4SmQ1wr7d80iGP705fZrfHjJUTf/1MyRXz5Wltt7i3OHvOCQEoST2mqNlfx0W/9gIWzxA7cFRLY0/aITmzTw==
+"@cliqz/adblocker-extended-selectors@^1.23.7":
+  version "1.23.7"
+  resolved "https://registry.yarnpkg.com/@cliqz/adblocker-extended-selectors/-/adblocker-extended-selectors-1.23.7.tgz#4782829c97b7ed229789a14d4e39b2339825077d"
+  integrity sha512-3y1eeHHZS3qvvv3dDZDjVVr6g03GeUBbDExCW/GOiHdo+qKYmM2K40EaLN+Upzc2ppuum9UKvzsHxG8Hs9R/kQ==
 
-"@cliqz/adblocker@^1.22.2":
-  version "1.22.2"
-  resolved "https://registry.yarnpkg.com/@cliqz/adblocker/-/adblocker-1.22.2.tgz#99a14d56327734d3083a077d96fe7b91c236bf7a"
-  integrity sha512-P+a8gYbRbQy38mYsr7932h2cnK/7AEuQrmCEfLTO1+abCr2v5RM2Qb+cCn/JVnQSeqnysebAIXoV+PUzrjfpiQ==
+"@cliqz/adblocker@^1.23.6":
+  version "1.23.7"
+  resolved "https://registry.yarnpkg.com/@cliqz/adblocker/-/adblocker-1.23.7.tgz#d439fe8b62d2789c274b5e124cddb930de25f59a"
+  integrity sha512-HUvC7CcmNbcIftcRhFeuQhHSpyNdOVdXazXDL0+avvWR0cxlI9zcC8yHMRKjxeY6nsiOXdyEFby+V5KgJvfwaQ==
   dependencies:
-    "@cliqz/adblocker-content" "^1.22.2"
-    "@cliqz/adblocker-extended-selectors" "^1.22.2"
+    "@cliqz/adblocker-content" "^1.23.7"
+    "@cliqz/adblocker-extended-selectors" "^1.23.7"
     "@remusao/guess-url-type" "^1.1.2"
     "@remusao/small" "^1.1.2"
     "@remusao/smaz" "^1.7.1"
-    "@types/chrome" "^0.0.145"
-    "@types/firefox-webext-browser" "^82.0.0"
+    "@types/chrome" "^0.0.180"
+    "@types/firefox-webext-browser" "^94.0.0"
     tldts-experimental "^5.6.21"
 
 "@develar/schema-utils@~2.6.5":
@@ -364,10 +355,10 @@
     ajv "^6.12.0"
     ajv-keywords "^3.4.1"
 
-"@electron/get@^1.0.1":
-  version "1.12.4"
-  resolved "https://registry.yarnpkg.com/@electron/get/-/get-1.12.4.tgz#a5971113fc1bf8fa12a8789dc20152a7359f06ab"
-  integrity sha512-6nr9DbJPUR9Xujw6zD3y+rS95TyItEVM0NVjt1EehY2vUWfIgPiIPVHxCvaTS0xr2B+DRxovYVKbuOWqC35kjg==
+"@electron/get@^1.13.0":
+  version "1.14.1"
+  resolved "https://registry.yarnpkg.com/@electron/get/-/get-1.14.1.tgz#16ba75f02dffb74c23965e72d617adc721d27f40"
+  integrity sha512-BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw==
   dependencies:
     debug "^4.1.1"
     env-paths "^2.2.0"
@@ -377,7 +368,7 @@
     semver "^6.2.0"
     sumchecker "^3.0.1"
   optionalDependencies:
-    global-agent "^2.0.2"
+    global-agent "^3.0.0"
     global-tunnel-ng "^2.7.1"
 
 "@electron/universal@1.0.5":
@@ -391,21 +382,35 @@
     dir-compare "^2.4.0"
     fs-extra "^9.0.1"
 
-"@eslint/eslintrc@^0.4.2":
-  version "0.4.2"
-  resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.2.tgz#f63d0ef06f5c0c57d76c4ab5f63d3835c51b0179"
-  integrity sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==
+"@eslint/eslintrc@^1.1.0":
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.2.1.tgz#8b5e1c49f4077235516bc9ec7d41378c0f69b8c6"
+  integrity sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==
   dependencies:
     ajv "^6.12.4"
-    debug "^4.1.1"
-    espree "^7.3.0"
+    debug "^4.3.2"
+    espree "^9.3.1"
     globals "^13.9.0"
-    ignore "^4.0.6"
+    ignore "^5.2.0"
     import-fresh "^3.2.1"
-    js-yaml "^3.13.1"
+    js-yaml "^4.1.0"
     minimatch "^3.0.4"
     strip-json-comments "^3.1.1"
 
+"@humanwhocodes/config-array@^0.9.2":
+  version "0.9.5"
+  resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.9.5.tgz#2cbaf9a89460da24b5ca6531b8bbfc23e1df50c7"
+  integrity sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==
+  dependencies:
+    "@humanwhocodes/object-schema" "^1.2.1"
+    debug "^4.1.1"
+    minimatch "^3.0.4"
+
+"@humanwhocodes/object-schema@^1.2.1":
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
+  integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
+
 "@istanbuljs/load-nyc-config@^1.0.0":
   version "1.1.0"
   resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced"
@@ -422,168 +427,168 @@
   resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98"
   integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==
 
-"@jest/console@^27.0.6":
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.0.6.tgz#3eb72ea80897495c3d73dd97aab7f26770e2260f"
-  integrity sha512-fMlIBocSHPZ3JxgWiDNW/KPj6s+YRd0hicb33IrmelCcjXo/pXPwvuiKFmZz+XuqI/1u7nbUK10zSsWL/1aegg==
+"@jest/console@^27.5.1":
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba"
+  integrity sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==
   dependencies:
-    "@jest/types" "^27.0.6"
+    "@jest/types" "^27.5.1"
     "@types/node" "*"
     chalk "^4.0.0"
-    jest-message-util "^27.0.6"
-    jest-util "^27.0.6"
+    jest-message-util "^27.5.1"
+    jest-util "^27.5.1"
     slash "^3.0.0"
 
-"@jest/core@^27.0.6":
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.0.6.tgz#c5f642727a0b3bf0f37c4b46c675372d0978d4a1"
-  integrity sha512-SsYBm3yhqOn5ZLJCtccaBcvD/ccTLCeuDv8U41WJH/V1MW5eKUkeMHT9U+Pw/v1m1AIWlnIW/eM2XzQr0rEmow==
+"@jest/core@^27.5.1":
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626"
+  integrity sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==
   dependencies:
-    "@jest/console" "^27.0.6"
-    "@jest/reporters" "^27.0.6"
-    "@jest/test-result" "^27.0.6"
-    "@jest/transform" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    "@jest/console" "^27.5.1"
+    "@jest/reporters" "^27.5.1"
+    "@jest/test-result" "^27.5.1"
+    "@jest/transform" "^27.5.1"
+    "@jest/types" "^27.5.1"
     "@types/node" "*"
     ansi-escapes "^4.2.1"
     chalk "^4.0.0"
     emittery "^0.8.1"
     exit "^0.1.2"
-    graceful-fs "^4.2.4"
-    jest-changed-files "^27.0.6"
-    jest-config "^27.0.6"
-    jest-haste-map "^27.0.6"
-    jest-message-util "^27.0.6"
-    jest-regex-util "^27.0.6"
-    jest-resolve "^27.0.6"
-    jest-resolve-dependencies "^27.0.6"
-    jest-runner "^27.0.6"
-    jest-runtime "^27.0.6"
-    jest-snapshot "^27.0.6"
-    jest-util "^27.0.6"
-    jest-validate "^27.0.6"
-    jest-watcher "^27.0.6"
+    graceful-fs "^4.2.9"
+    jest-changed-files "^27.5.1"
+    jest-config "^27.5.1"
+    jest-haste-map "^27.5.1"
+    jest-message-util "^27.5.1"
+    jest-regex-util "^27.5.1"
+    jest-resolve "^27.5.1"
+    jest-resolve-dependencies "^27.5.1"
+    jest-runner "^27.5.1"
+    jest-runtime "^27.5.1"
+    jest-snapshot "^27.5.1"
+    jest-util "^27.5.1"
+    jest-validate "^27.5.1"
+    jest-watcher "^27.5.1"
     micromatch "^4.0.4"
-    p-each-series "^2.1.0"
     rimraf "^3.0.0"
     slash "^3.0.0"
     strip-ansi "^6.0.0"
 
-"@jest/environment@^27.0.6":
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.0.6.tgz#ee293fe996db01d7d663b8108fa0e1ff436219d2"
-  integrity sha512-4XywtdhwZwCpPJ/qfAkqExRsERW+UaoSRStSHCCiQTUpoYdLukj+YJbQSFrZjhlUDRZeNiU9SFH0u7iNimdiIg==
+"@jest/environment@^27.5.1":
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74"
+  integrity sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==
   dependencies:
-    "@jest/fake-timers" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    "@jest/fake-timers" "^27.5.1"
+    "@jest/types" "^27.5.1"
     "@types/node" "*"
-    jest-mock "^27.0.6"
+    jest-mock "^27.5.1"
 
-"@jest/fake-timers@^27.0.6":
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.0.6.tgz#cbad52f3fe6abe30e7acb8cd5fa3466b9588e3df"
-  integrity sha512-sqd+xTWtZ94l3yWDKnRTdvTeZ+A/V7SSKrxsrOKSqdyddb9CeNRF8fbhAU0D7ZJBpTTW2nbp6MftmKJDZfW2LQ==
+"@jest/fake-timers@^27.5.1":
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74"
+  integrity sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==
   dependencies:
-    "@jest/types" "^27.0.6"
-    "@sinonjs/fake-timers" "^7.0.2"
+    "@jest/types" "^27.5.1"
+    "@sinonjs/fake-timers" "^8.0.1"
     "@types/node" "*"
-    jest-message-util "^27.0.6"
-    jest-mock "^27.0.6"
-    jest-util "^27.0.6"
+    jest-message-util "^27.5.1"
+    jest-mock "^27.5.1"
+    jest-util "^27.5.1"
 
-"@jest/globals@^27.0.6":
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.0.6.tgz#48e3903f99a4650673d8657334d13c9caf0e8f82"
-  integrity sha512-DdTGCP606rh9bjkdQ7VvChV18iS7q0IMJVP1piwTWyWskol4iqcVwthZmoJEf7obE1nc34OpIyoVGPeqLC+ryw==
+"@jest/globals@^27.5.1":
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b"
+  integrity sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==
   dependencies:
-    "@jest/environment" "^27.0.6"
-    "@jest/types" "^27.0.6"
-    expect "^27.0.6"
+    "@jest/environment" "^27.5.1"
+    "@jest/types" "^27.5.1"
+    expect "^27.5.1"
 
-"@jest/reporters@^27.0.6":
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.0.6.tgz#91e7f2d98c002ad5df94d5b5167c1eb0b9fd5b00"
-  integrity sha512-TIkBt09Cb2gptji3yJXb3EE+eVltW6BjO7frO7NEfjI9vSIYoISi5R3aI3KpEDXlB1xwB+97NXIqz84qYeYsfA==
+"@jest/reporters@^27.5.1":
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04"
+  integrity sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==
   dependencies:
     "@bcoe/v8-coverage" "^0.2.3"
-    "@jest/console" "^27.0.6"
-    "@jest/test-result" "^27.0.6"
-    "@jest/transform" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    "@jest/console" "^27.5.1"
+    "@jest/test-result" "^27.5.1"
+    "@jest/transform" "^27.5.1"
+    "@jest/types" "^27.5.1"
+    "@types/node" "*"
     chalk "^4.0.0"
     collect-v8-coverage "^1.0.0"
     exit "^0.1.2"
     glob "^7.1.2"
-    graceful-fs "^4.2.4"
+    graceful-fs "^4.2.9"
     istanbul-lib-coverage "^3.0.0"
-    istanbul-lib-instrument "^4.0.3"
+    istanbul-lib-instrument "^5.1.0"
     istanbul-lib-report "^3.0.0"
     istanbul-lib-source-maps "^4.0.0"
-    istanbul-reports "^3.0.2"
-    jest-haste-map "^27.0.6"
-    jest-resolve "^27.0.6"
-    jest-util "^27.0.6"
-    jest-worker "^27.0.6"
+    istanbul-reports "^3.1.3"
+    jest-haste-map "^27.5.1"
+    jest-resolve "^27.5.1"
+    jest-util "^27.5.1"
+    jest-worker "^27.5.1"
     slash "^3.0.0"
     source-map "^0.6.0"
     string-length "^4.0.1"
     terminal-link "^2.0.0"
-    v8-to-istanbul "^8.0.0"
+    v8-to-istanbul "^8.1.0"
 
-"@jest/source-map@^27.0.6":
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.0.6.tgz#be9e9b93565d49b0548b86e232092491fb60551f"
-  integrity sha512-Fek4mi5KQrqmlY07T23JRi0e7Z9bXTOOD86V/uS0EIW4PClvPDqZOyFlLpNJheS6QI0FNX1CgmPjtJ4EA/2M+g==
+"@jest/source-map@^27.5.1":
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf"
+  integrity sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==
   dependencies:
     callsites "^3.0.0"
-    graceful-fs "^4.2.4"
+    graceful-fs "^4.2.9"
     source-map "^0.6.0"
 
-"@jest/test-result@^27.0.6":
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.0.6.tgz#3fa42015a14e4fdede6acd042ce98c7f36627051"
-  integrity sha512-ja/pBOMTufjX4JLEauLxE3LQBPaI2YjGFtXexRAjt1I/MbfNlMx0sytSX3tn5hSLzQsR3Qy2rd0hc1BWojtj9w==
+"@jest/test-result@^27.5.1":
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb"
+  integrity sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==
   dependencies:
-    "@jest/console" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    "@jest/console" "^27.5.1"
+    "@jest/types" "^27.5.1"
     "@types/istanbul-lib-coverage" "^2.0.0"
     collect-v8-coverage "^1.0.0"
 
-"@jest/test-sequencer@^27.0.6":
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.0.6.tgz#80a913ed7a1130545b1cd777ff2735dd3af5d34b"
-  integrity sha512-bISzNIApazYOlTHDum9PwW22NOyDa6VI31n6JucpjTVM0jD6JDgqEZ9+yn575nDdPF0+4csYDxNNW13NvFQGZA==
+"@jest/test-sequencer@^27.5.1":
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b"
+  integrity sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==
   dependencies:
-    "@jest/test-result" "^27.0.6"
-    graceful-fs "^4.2.4"
-    jest-haste-map "^27.0.6"
-    jest-runtime "^27.0.6"
+    "@jest/test-result" "^27.5.1"
+    graceful-fs "^4.2.9"
+    jest-haste-map "^27.5.1"
+    jest-runtime "^27.5.1"
 
-"@jest/transform@^27.0.6":
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.0.6.tgz#189ad7107413208f7600f4719f81dd2f7278cc95"
-  integrity sha512-rj5Dw+mtIcntAUnMlW/Vju5mr73u8yg+irnHwzgtgoeI6cCPOvUwQ0D1uQtc/APmWgvRweEb1g05pkUpxH3iCA==
+"@jest/transform@^27.5.1":
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409"
+  integrity sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==
   dependencies:
     "@babel/core" "^7.1.0"
-    "@jest/types" "^27.0.6"
-    babel-plugin-istanbul "^6.0.0"
+    "@jest/types" "^27.5.1"
+    babel-plugin-istanbul "^6.1.1"
     chalk "^4.0.0"
     convert-source-map "^1.4.0"
     fast-json-stable-stringify "^2.0.0"
-    graceful-fs "^4.2.4"
-    jest-haste-map "^27.0.6"
-    jest-regex-util "^27.0.6"
-    jest-util "^27.0.6"
+    graceful-fs "^4.2.9"
+    jest-haste-map "^27.5.1"
+    jest-regex-util "^27.5.1"
+    jest-util "^27.5.1"
     micromatch "^4.0.4"
-    pirates "^4.0.1"
+    pirates "^4.0.4"
     slash "^3.0.0"
     source-map "^0.6.1"
     write-file-atomic "^3.0.0"
 
-"@jest/types@^27.0.6":
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.0.6.tgz#9a992bc517e0c49f035938b8549719c2de40706b"
-  integrity sha512-aSquT1qa9Pik26JK5/3rvnYb4bGtm1VFNesHKmNTwmPIgOrixvhL2ghIvFRNEpzy3gU+rUgjIF/KodbkFAl++g==
+"@jest/types@^27.5.1":
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80"
+  integrity sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==
   dependencies:
     "@types/istanbul-lib-coverage" "^2.0.0"
     "@types/istanbul-reports" "^3.0.0"
@@ -591,6 +596,24 @@
     "@types/yargs" "^16.0.0"
     chalk "^4.0.0"
 
+"@jridgewell/resolve-uri@^3.0.3":
+  version "3.0.5"
+  resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz#68eb521368db76d040a6315cdb24bf2483037b9c"
+  integrity sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==
+
+"@jridgewell/sourcemap-codec@^1.4.10":
+  version "1.4.11"
+  resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec"
+  integrity sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==
+
+"@jridgewell/trace-mapping@^0.3.0":
+  version "0.3.4"
+  resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz#f6a0832dffd5b8a6aaa633b7d9f8e8e94c83a0c3"
+  integrity sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==
+  dependencies:
+    "@jridgewell/resolve-uri" "^3.0.3"
+    "@jridgewell/sourcemap-codec" "^1.4.10"
+
 "@malept/cross-spawn-promise@^1.1.0":
   version "1.1.1"
   resolved "https://registry.yarnpkg.com/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz#504af200af6b98e198bce768bc1730c6936ae01d"
@@ -608,13 +631,6 @@
     lodash "^4.17.15"
     tmp-promise "^3.0.2"
 
-"@mdn/browser-compat-data@^2.0.7":
-  version "2.0.7"
-  resolved "https://registry.yarnpkg.com/@mdn/browser-compat-data/-/browser-compat-data-2.0.7.tgz#72ec37b9c1e00ce0b4e0309d753be18e2da12ee3"
-  integrity sha512-GeeM827DlzFFidn1eKkMBiqXFD2oLsnZbaiGhByPl0vcapsRzUL+t9hDoov1swc9rB2jw64R+ihtzC8qOE9wXw==
-  dependencies:
-    extend "3.0.2"
-
 "@remusao/guess-url-type@^1.1.2":
   version "1.2.1"
   resolved "https://registry.yarnpkg.com/@remusao/guess-url-type/-/guess-url-type-1.2.1.tgz#b3e7c32abdf98d0fb4f93cc67cad580b5fe4ba57"
@@ -662,10 +678,10 @@
   dependencies:
     type-detect "4.0.8"
 
-"@sinonjs/fake-timers@^7.0.2":
-  version "7.1.2"
-  resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz#2524eae70c4910edccf99b2f4e6efc5894aff7b5"
-  integrity sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg==
+"@sinonjs/fake-timers@^8.0.1":
+  version "8.1.0"
+  resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7"
+  integrity sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==
   dependencies:
     "@sinonjs/commons" "^1.7.0"
 
@@ -681,10 +697,15 @@
   resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82"
   integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==
 
+"@tootallnate/once@2":
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf"
+  integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==
+
 "@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14":
-  version "7.1.14"
-  resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.14.tgz#faaeefc4185ec71c389f4501ee5ec84b170cc402"
-  integrity sha512-zGZJzzBUVDo/eV6KgbE0f0ZI7dInEYvo12Rb70uNQDshC3SkRMb67ja0GgRHZgAX3Za6rhaWlvbDO8rrGyAb1g==
+  version "7.1.19"
+  resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.19.tgz#7b497495b7d1b4812bdb9d02804d0576f43ee460"
+  integrity sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==
   dependencies:
     "@babel/parser" "^7.1.0"
     "@babel/types" "^7.0.0"
@@ -693,44 +714,46 @@
     "@types/babel__traverse" "*"
 
 "@types/babel__generator@*":
-  version "7.6.2"
-  resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.2.tgz#f3d71178e187858f7c45e30380f8f1b7415a12d8"
-  integrity sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==
+  version "7.6.4"
+  resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7"
+  integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==
   dependencies:
     "@babel/types" "^7.0.0"
 
 "@types/babel__template@*":
-  version "7.4.0"
-  resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.0.tgz#0c888dd70b3ee9eebb6e4f200e809da0076262be"
-  integrity sha512-NTPErx4/FiPCGScH7foPyr+/1Dkzkni+rHiYHHoTjvwou7AQzJkNeD60A9CXRy+ZEN2B1bggmkTMCDb+Mv5k+A==
+  version "7.4.1"
+  resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969"
+  integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==
   dependencies:
     "@babel/parser" "^7.1.0"
     "@babel/types" "^7.0.0"
 
 "@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6":
-  version "7.14.0"
-  resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.14.0.tgz#a34277cf8acbd3185ea74129e1f100491eb1da7f"
-  integrity sha512-IilJZ1hJBUZwMOVDNTdflOOLzJB/ZtljYVa7k3gEZN/jqIJIPkWHC6dvbX+DD2CwZDHB9wAKzZPzzqMIkW37/w==
+  version "7.14.2"
+  resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.14.2.tgz#ffcd470bbb3f8bf30481678fb5502278ca833a43"
+  integrity sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==
   dependencies:
     "@babel/types" "^7.3.0"
 
-"@types/chrome@^0.0.145":
-  version "0.0.145"
-  resolved "https://registry.yarnpkg.com/@types/chrome/-/chrome-0.0.145.tgz#6c53ae0af5f25350b07bfd24cf459b5fe65cd9b8"
-  integrity sha512-vLvTMmfc8mvwOZzkmn2UwlWSNu0t0txBkyuIv8NgihRkvFCe6XJX65YZAgAP/RdBit3enhU2GTxCr+prn4uZmA==
+"@types/chrome@^0.0.180":
+  version "0.0.180"
+  resolved "https://registry.yarnpkg.com/@types/chrome/-/chrome-0.0.180.tgz#b7fb831848f6b6c49abffd85410b73037c02381e"
+  integrity sha512-A/CuuKAaHq2CHEpYBAtl0lp2ib7TTXK7VjJI4q+c+1U/HDvZLJ8IlsdEDzzHdvkNdh36bGONxrMnO9YZrKqbAw==
   dependencies:
     "@types/filesystem" "*"
     "@types/har-format" "*"
 
-"@types/debug@^4.1.5":
-  version "4.1.5"
-  resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.5.tgz#b14efa8852b7768d898906613c23f688713e02cd"
-  integrity sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ==
+"@types/debug@^4.1.6":
+  version "4.1.7"
+  resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.7.tgz#7cc0ea761509124709b8b2d1090d8f6c17aadb82"
+  integrity sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==
+  dependencies:
+    "@types/ms" "*"
 
 "@types/filesystem@*":
-  version "0.0.31"
-  resolved "https://registry.yarnpkg.com/@types/filesystem/-/filesystem-0.0.31.tgz#121a1ded274a2dc731d5e0d90163a920ad6a9ef1"
-  integrity sha512-9Dj1Gb7ZhknhJ8J1H/lTQrEorwIHWZlO9Tfi0WMrvyO1+2GUIUF8Sg4zrID77hj0ywArzQRJ1MwlT9H7c9QmEQ==
+  version "0.0.32"
+  resolved "https://registry.yarnpkg.com/@types/filesystem/-/filesystem-0.0.32.tgz#307df7cc084a2293c3c1a31151b178063e0a8edf"
+  integrity sha512-Yuf4jR5YYMR2DVgwuCiP11s0xuVRyPKmz8vo6HBY3CGdeMj8af93CFZX+T82+VD1+UqHOxTq31lO7MI7lepBtQ==
   dependencies:
     "@types/filewriter" "*"
 
@@ -739,22 +762,22 @@
   resolved "https://registry.yarnpkg.com/@types/filewriter/-/filewriter-0.0.29.tgz#a48795ecadf957f6c0d10e0c34af86c098fa5bee"
   integrity sha512-BsPXH/irW0ht0Ji6iw/jJaK8Lj3FJemon2gvEqHKpCdDCeemHa+rI3WBGq5z7cDMZgoLjY40oninGxqk+8NzNQ==
 
-"@types/firefox-webext-browser@^82.0.0":
-  version "82.0.0"
-  resolved "https://registry.yarnpkg.com/@types/firefox-webext-browser/-/firefox-webext-browser-82.0.0.tgz#4d0f5cfebd7321d2cbf0ccfb6032570f0138b958"
-  integrity sha512-zKHePkjMx42KIUUZCPcUiyu1tpfQXH9VR4iDYfns3HvmKVJzt/TAFT+DFVroos8BI9RH78YgF3Hi/wlC6R6cKA==
+"@types/firefox-webext-browser@^94.0.0":
+  version "94.0.1"
+  resolved "https://registry.yarnpkg.com/@types/firefox-webext-browser/-/firefox-webext-browser-94.0.1.tgz#52afb975253dc0fd350d5d58c7fe9fd1a01f64a1"
+  integrity sha512-I6iHRQJSTZ+gYt2IxdH2RRAMvcUyK8v5Ig7fHQR0IwUNYP7hz9+cziBVIKxLCO6XI7fiyRsNOWObfl3/4Js2Lg==
 
 "@types/fs-extra@^9.0.11":
-  version "9.0.11"
-  resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.11.tgz#8cc99e103499eab9f347dbc6ca4e99fb8d2c2b87"
-  integrity sha512-mZsifGG4QeQ7hlkhO56u7zt/ycBgGxSVsFI/6lGTU34VtwkiqrrSDgw0+ygs8kFGWcXnFQWMrzF2h7TtDFNixA==
+  version "9.0.13"
+  resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.13.tgz#7594fbae04fe7f1918ce8b3d213f74ff44ac1f45"
+  integrity sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==
   dependencies:
     "@types/node" "*"
 
 "@types/glob@^7.1.1":
-  version "7.1.3"
-  resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.3.tgz#e6ba80f36b7daad2c685acd9266382e68985c183"
-  integrity sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==
+  version "7.2.0"
+  resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb"
+  integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==
   dependencies:
     "@types/minimatch" "*"
     "@types/node" "*"
@@ -767,14 +790,14 @@
     "@types/node" "*"
 
 "@types/har-format@*":
-  version "1.2.6"
-  resolved "https://registry.yarnpkg.com/@types/har-format/-/har-format-1.2.6.tgz#471c83acdf6a2ea429620daee4c6dc1784a0e85f"
-  integrity sha512-TeZjp4COiAWPOeGx1tuFJETr/SBMx80lxqeqnCC36ZVn463f7ElCdA3X9RzDuo3BHjhN4apw41A5uoIw5FzgWA==
+  version "1.2.8"
+  resolved "https://registry.yarnpkg.com/@types/har-format/-/har-format-1.2.8.tgz#e6908b76d4c88be3db642846bb8b455f0bfb1c4e"
+  integrity sha512-OP6L9VuZNdskgNN3zFQQ54ceYD8OLq5IbqO4VK91ORLfOm7WdT/CiT/pHEBSQEqCInJ2y3O6iCm/zGtPElpgJQ==
 
 "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
-  version "2.0.3"
-  resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762"
-  integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==
+  version "2.0.4"
+  resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44"
+  integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==
 
 "@types/istanbul-lib-report@*":
   version "3.0.0"
@@ -791,19 +814,24 @@
     "@types/istanbul-lib-report" "*"
 
 "@types/minimatch@*":
-  version "3.0.4"
-  resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.4.tgz#f0ec25dbf2f0e4b18647313ac031134ca5b24b21"
-  integrity sha512-1z8k4wzFnNjVK/tlxvrWuK5WMt6mydWWP7+zvH5eFep4oj+UkrfiJTRtjCeBXNpwaA/FYqqtb4/QS4ianFpIRA==
+  version "3.0.5"
+  resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40"
+  integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==
+
+"@types/ms@*":
+  version "0.7.31"
+  resolved "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.31.tgz#31b7ca6407128a3d2bbc27fe2d21b345397f6197"
+  integrity sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==
 
 "@types/node@*":
-  version "15.12.5"
-  resolved "https://registry.yarnpkg.com/@types/node/-/node-15.12.5.tgz#9a78318a45d75c9523d2396131bd3cca54b2d185"
-  integrity sha512-se3yX7UHv5Bscf8f1ERKvQOD6sTyycH3hdaoozvaLxgUiY5lIGEeH37AD0G0Qi9kPqihPn0HOfd2yaIEN9VwEg==
+  version "17.0.22"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.22.tgz#38b6c4b9b2f3ed9f2e376cce42a298fb2375251e"
+  integrity sha512-8FwbVoG4fy+ykY86XCAclKZDORttqE5/s7dyWZKLXTdv3vRy5HozBEinG5IqhvPXXzIZEcTVbuHlQEI6iuwcmw==
 
 "@types/node@^14.6.2":
-  version "14.17.4"
-  resolved "https://registry.yarnpkg.com/@types/node/-/node-14.17.4.tgz#218712242446fc868d0e007af29a4408c7765bc0"
-  integrity sha512-8kQ3+wKGRNN0ghtEn7EGps/B8CzuBz1nXZEIGGLP2GnwbqYn4dbTs7k+VKLTq1HvZLRCIDtN3Snx1Ege8B7L5A==
+  version "14.18.12"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-14.18.12.tgz#0d4557fd3b94497d793efd4e7d92df2f83b4ef24"
+  integrity sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==
 
 "@types/plist@^3.0.1":
   version "3.0.2"
@@ -814,29 +842,36 @@
     xmlbuilder ">=11.0.1"
 
 "@types/prettier@^2.1.5":
-  version "2.3.0"
-  resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.3.0.tgz#2e8332cc7363f887d32ec5496b207d26ba8052bb"
-  integrity sha512-hkc1DATxFLQo4VxPDpMH1gCkPpBbpOoJ/4nhuXw4n63/0R6bCpQECj4+K226UJ4JO/eJQz+1mC2I7JsWanAdQw==
+  version "2.4.4"
+  resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.4.tgz#5d9b63132df54d8909fce1c3f8ca260fdd693e17"
+  integrity sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA==
 
 "@types/stack-utils@^2.0.0":
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.0.tgz#7036640b4e21cc2f259ae826ce843d277dad8cff"
-  integrity sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw==
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c"
+  integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==
 
 "@types/verror@^1.10.3":
-  version "1.10.4"
-  resolved "https://registry.yarnpkg.com/@types/verror/-/verror-1.10.4.tgz#805c0612b3a0c124cf99f517364142946b74ba3b"
-  integrity sha512-OjJdqx6QlbyZw9LShPwRW+Kmiegeg3eWNI41MQQKaG3vjdU2L9SRElntM51HmHBY1cu7izxQJ1lMYioQh3XMBg==
+  version "1.10.5"
+  resolved "https://registry.yarnpkg.com/@types/verror/-/verror-1.10.5.tgz#2a1413aded46e67a1fe2386800e291123ed75eb1"
+  integrity sha512-9UjMCHK5GPgQRoNbqdLIAvAy0EInuiqbW0PBMtVP6B5B2HQJlvoJHM+KodPZMEjOa5VkSc+5LH7xy+cUzQdmHw==
 
 "@types/yargs-parser@*":
-  version "20.2.0"
-  resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.0.tgz#dd3e6699ba3237f0348cd085e4698780204842f9"
-  integrity sha512-37RSHht+gzzgYeobbG+KWryeAW8J33Nhr69cjTqSYymXVZEN9NbRYWoYlRtDhHKPVT1FyNKwaTPC1NynKZpzRA==
+  version "21.0.0"
+  resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b"
+  integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==
 
-"@types/yargs@^16.0.0", "@types/yargs@^16.0.2":
-  version "16.0.3"
-  resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.3.tgz#4b6d35bb8e680510a7dc2308518a80ee1ef27e01"
-  integrity sha512-YlFfTGS+zqCgXuXNV26rOIeETOkXnGQXP/pjjL9P0gO/EP9jTmc7pUBhx+jVEIxpq41RX33GQ7N3DzOSfZoglQ==
+"@types/yargs@^16.0.0":
+  version "16.0.4"
+  resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977"
+  integrity sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==
+  dependencies:
+    "@types/yargs-parser" "*"
+
+"@types/yargs@^17.0.1":
+  version "17.0.10"
+  resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.10.tgz#591522fce85d8739bca7b8bb90d048e4478d186a"
+  integrity sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==
   dependencies:
     "@types/yargs-parser" "*"
 
@@ -854,24 +889,24 @@ acorn-globals@^6.0.0:
     acorn-walk "^7.1.1"
 
 acorn-jsx@^5.3.1:
-  version "5.3.1"
-  resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b"
-  integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==
+  version "5.3.2"
+  resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
+  integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
 
 acorn-walk@^7.1.1:
   version "7.2.0"
   resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc"
   integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==
 
-acorn@^7.1.1, acorn@^7.4.0:
+acorn@^7.1.1:
   version "7.4.1"
   resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
   integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
 
-acorn@^8.2.4:
-  version "8.4.1"
-  resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.4.1.tgz#56c36251fc7cabc7096adc18f05afe814321a28c"
-  integrity sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==
+acorn@^8.2.4, acorn@^8.7.0:
+  version "8.7.0"
+  resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf"
+  integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==
 
 agent-base@6:
   version "6.0.2"
@@ -895,27 +930,12 @@ ajv@^6.10.0, ajv@^6.12.0, ajv@^6.12.4:
     json-schema-traverse "^0.4.1"
     uri-js "^4.2.2"
 
-ajv@^8.0.1:
-  version "8.6.0"
-  resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.6.0.tgz#60cc45d9c46a477d80d92c48076d972c342e5720"
-  integrity sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==
-  dependencies:
-    fast-deep-equal "^3.1.1"
-    json-schema-traverse "^1.0.0"
-    require-from-string "^2.0.2"
-    uri-js "^4.2.2"
-
 ansi-align@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb"
-  integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw==
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59"
+  integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==
   dependencies:
-    string-width "^3.0.0"
-
-ansi-colors@^4.1.1:
-  version "4.1.1"
-  resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348"
-  integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==
+    string-width "^4.1.0"
 
 ansi-escapes@^4.2.1:
   version "4.3.2"
@@ -924,20 +944,10 @@ ansi-escapes@^4.2.1:
   dependencies:
     type-fest "^0.21.3"
 
-ansi-regex@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998"
-  integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=
-
-ansi-regex@^4.1.0:
-  version "4.1.0"
-  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997"
-  integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==
-
-ansi-regex@^5.0.0:
-  version "5.0.0"
-  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75"
-  integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==
+ansi-regex@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
+  integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
 
 ansi-styles@^3.2.1:
   version "3.2.1"
@@ -966,15 +976,15 @@ anymatch@^3.0.3:
     normalize-path "^3.0.0"
     picomatch "^2.0.4"
 
-app-builder-bin@3.5.13:
-  version "3.5.13"
-  resolved "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.5.13.tgz#6dd7f4de34a4e408806f99b8c7d6ef1601305b7e"
-  integrity sha512-ighVe9G+bT1ENGdp9ecO1P+94vv/f+FUwaI+XkNzeg9bYF8Oi3BQ+mJuxS00UgyHs8luuOzjzC+qnAtdb43Mpg==
+app-builder-bin@3.7.1:
+  version "3.7.1"
+  resolved "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.7.1.tgz#cb0825c5e12efc85b196ac3ed9c89f076c61040e"
+  integrity sha512-ql93vEUq6WsstGXD+SBLSIQw6SNnhbDEM0swzgugytMxLp3rT24Ag/jcC80ZHxiPRTdew1niuR7P3/FCrDqIjw==
 
-app-builder-lib@22.11.7:
-  version "22.11.7"
-  resolved "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.11.7.tgz#c0ad1119ebfbf4189a8280ad693625f5e684dca6"
-  integrity sha512-pS9/cR4/TnNZVAHZECiSvvwTBzbwblj7KBBZkMKDG57nibq0I1XY8zAaYeHFdlYTyrRcz9JUXbAqJKezya7UFQ==
+app-builder-lib@22.14.13:
+  version "22.14.13"
+  resolved "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.14.13.tgz#c1f5b6afc86596357598bb90b69eef06c7c2eeb3"
+  integrity sha512-SufmrtxU+D0Tn948fjEwAOlCN9757UXLkzzTWXMwZKR/5hisvgqeeBepWfphMIE6OkDGz0fbzEhL1P2Pty4XMg==
   dependencies:
     "7zip-bin" "~5.1.1"
     "@develar/schema-utils" "~2.6.5"
@@ -982,12 +992,14 @@ app-builder-lib@22.11.7:
     "@malept/flatpak-bundler" "^0.4.0"
     async-exit-hook "^2.0.1"
     bluebird-lst "^1.0.9"
-    builder-util "22.11.7"
-    builder-util-runtime "8.7.7"
+    builder-util "22.14.13"
+    builder-util-runtime "8.9.2"
     chromium-pickle-js "^0.2.0"
     debug "^4.3.2"
     ejs "^3.1.6"
-    electron-publish "22.11.7"
+    electron-osx-sign "^0.5.0"
+    electron-publish "22.14.13"
+    form-data "^4.0.0"
     fs-extra "^10.0.0"
     hosted-git-info "^4.0.2"
     is-ci "^3.0.0"
@@ -1000,35 +1012,6 @@ app-builder-lib@22.11.7:
     semver "^7.3.5"
     temp-file "^3.4.0"
 
-archiver-utils@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-2.1.0.tgz#e8a460e94b693c3e3da182a098ca6285ba9249e2"
-  integrity sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw==
-  dependencies:
-    glob "^7.1.4"
-    graceful-fs "^4.2.0"
-    lazystream "^1.0.0"
-    lodash.defaults "^4.2.0"
-    lodash.difference "^4.5.0"
-    lodash.flatten "^4.4.0"
-    lodash.isplainobject "^4.0.6"
-    lodash.union "^4.6.0"
-    normalize-path "^3.0.0"
-    readable-stream "^2.0.0"
-
-archiver@5.3.0:
-  version "5.3.0"
-  resolved "https://registry.yarnpkg.com/archiver/-/archiver-5.3.0.tgz#dd3e097624481741df626267564f7dd8640a45ba"
-  integrity sha512-iUw+oDwK0fgNpvveEsdQ0Ase6IIKztBJU2U0E9MzszMfmVVUyv1QJhS2ITW9ZCqx8dktAxVAjWWkKehuZE8OPg==
-  dependencies:
-    archiver-utils "^2.1.0"
-    async "^3.2.0"
-    buffer-crc32 "^0.2.1"
-    readable-stream "^3.6.0"
-    readdir-glob "^1.0.0"
-    tar-stream "^2.2.0"
-    zip-stream "^4.1.0"
-
 argparse@^1.0.7:
   version "1.0.10"
   resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
@@ -1042,9 +1025,9 @@ argparse@^2.0.1:
   integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
 
 asar@^3.0.3:
-  version "3.0.3"
-  resolved "https://registry.yarnpkg.com/asar/-/asar-3.0.3.tgz#1fef03c2d6d2de0cbad138788e4f7ae03b129c7b"
-  integrity sha512-k7zd+KoR+n8pl71PvgElcoKHrVNiSXtw7odKbyNpmgKe7EGRF9Pnu3uLOukD37EvavKwVFxOUpqXTIZC5B5Pmw==
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/asar/-/asar-3.1.0.tgz#70b0509449fe3daccc63beb4d3c7d2e24d3c6473"
+  integrity sha512-vyxPxP5arcAqN4F/ebHd/HhwnAiZtwhglvdmc7BR2f0ywbVNTOpSeyhLDbGXtE/y58hv1oC75TaNIXutnsOZsQ==
   dependencies:
     chromium-pickle-js "^0.2.0"
     commander "^5.0.0"
@@ -1058,11 +1041,6 @@ assert-plus@^1.0.0:
   resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
   integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=
 
-ast-metadata-inferer@^0.4.0:
-  version "0.4.0"
-  resolved "https://registry.yarnpkg.com/ast-metadata-inferer/-/ast-metadata-inferer-0.4.0.tgz#6be85ceeffcf267bd79db8e1ae731da44880b45f"
-  integrity sha512-tKHdBe8N/Vq2nLAm4YPBVREVZjMux6KrqyPfNQgIbDl0t7HaNSmy8w4OyVHYg/cvyn5BW7o7pVwpjPte89Zhcg==
-
 astral-regex@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31"
@@ -1078,11 +1056,6 @@ async@0.9.x:
   resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d"
   integrity sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=
 
-async@^3.2.0:
-  version "3.2.0"
-  resolved "https://registry.yarnpkg.com/async/-/async-3.2.0.tgz#b3a2685c5ebb641d3de02d161002c60fc9f85720"
-  integrity sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==
-
 asynckit@^0.4.0:
   version "0.4.0"
   resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
@@ -1093,35 +1066,35 @@ at-least-node@^1.0.0:
   resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2"
   integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==
 
-babel-jest@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.0.6.tgz#e99c6e0577da2655118e3608b68761a5a69bd0d8"
-  integrity sha512-iTJyYLNc4wRofASmofpOc5NK9QunwMk+TLFgGXsTFS8uEqmd8wdI7sga0FPe2oVH3b5Agt/EAK1QjPEuKL8VfA==
+babel-jest@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444"
+  integrity sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==
   dependencies:
-    "@jest/transform" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    "@jest/transform" "^27.5.1"
+    "@jest/types" "^27.5.1"
     "@types/babel__core" "^7.1.14"
-    babel-plugin-istanbul "^6.0.0"
-    babel-preset-jest "^27.0.6"
+    babel-plugin-istanbul "^6.1.1"
+    babel-preset-jest "^27.5.1"
     chalk "^4.0.0"
-    graceful-fs "^4.2.4"
+    graceful-fs "^4.2.9"
     slash "^3.0.0"
 
-babel-plugin-istanbul@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz#e159ccdc9af95e0b570c75b4573b7c34d671d765"
-  integrity sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==
+babel-plugin-istanbul@^6.1.1:
+  version "6.1.1"
+  resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73"
+  integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==
   dependencies:
     "@babel/helper-plugin-utils" "^7.0.0"
     "@istanbuljs/load-nyc-config" "^1.0.0"
     "@istanbuljs/schema" "^0.1.2"
-    istanbul-lib-instrument "^4.0.0"
+    istanbul-lib-instrument "^5.0.4"
     test-exclude "^6.0.0"
 
-babel-plugin-jest-hoist@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.0.6.tgz#f7c6b3d764af21cb4a2a1ab6870117dbde15b456"
-  integrity sha512-CewFeM9Vv2gM7Yr9n5eyyLVPRSiBnk6lKZRjgwYnGKSl9M14TMn2vkN02wTF04OGuSDLEzlWiMzvjXuW9mB6Gw==
+babel-plugin-jest-hoist@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e"
+  integrity sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==
   dependencies:
     "@babel/template" "^7.3.3"
     "@babel/types" "^7.3.3"
@@ -1146,12 +1119,12 @@ babel-preset-current-node-syntax@^1.0.0:
     "@babel/plugin-syntax-optional-chaining" "^7.8.3"
     "@babel/plugin-syntax-top-level-await" "^7.8.3"
 
-babel-preset-jest@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.0.6.tgz#909ef08e9f24a4679768be2f60a3df0856843f9d"
-  integrity sha512-WObA0/Biw2LrVVwZkF/2GqbOdzhKD6Fkdwhoy9ASIrOWr/zodcSpQh72JOkEn6NWyjmnPDjNSqaGN4KnpKzhXw==
+babel-preset-jest@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81"
+  integrity sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==
   dependencies:
-    babel-plugin-jest-hoist "^27.0.6"
+    babel-plugin-jest-hoist "^27.5.1"
     babel-preset-current-node-syntax "^1.0.0"
 
 balanced-match@^1.0.0:
@@ -1164,15 +1137,6 @@ base64-js@^1.3.1, base64-js@^1.5.1:
   resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
   integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
 
-bl@^4.0.3:
-  version "4.1.0"
-  resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a"
-  integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==
-  dependencies:
-    buffer "^5.5.0"
-    inherits "^2.0.4"
-    readable-stream "^3.4.0"
-
 bluebird-lst@^1.0.9:
   version "1.0.9"
   resolved "https://registry.yarnpkg.com/bluebird-lst/-/bluebird-lst-1.0.9.tgz#a64a0e4365658b9ab5fe875eb9dfb694189bb41c"
@@ -1180,26 +1144,26 @@ bluebird-lst@^1.0.9:
   dependencies:
     bluebird "^3.5.5"
 
-bluebird@^3.5.5:
+bluebird@^3.5.0, bluebird@^3.5.5:
   version "3.7.2"
   resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
   integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==
 
 boolean@^3.0.1:
-  version "3.1.2"
-  resolved "https://registry.yarnpkg.com/boolean/-/boolean-3.1.2.tgz#e30f210a26b02458482a8cc353ab06f262a780c2"
-  integrity sha512-YN6UmV0FfLlBVvRvNPx3pz5W/mUoYB24J4WSXOKP/OOJpi+Oq6WYqPaNTHzjI0QzwWtnvEd5CGYyQPgp1jFxnw==
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/boolean/-/boolean-3.2.0.tgz#9e5294af4e98314494cbb17979fa54ca159f116b"
+  integrity sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==
 
 boxen@^5.0.0:
-  version "5.0.1"
-  resolved "https://registry.yarnpkg.com/boxen/-/boxen-5.0.1.tgz#657528bdd3f59a772b8279b831f27ec2c744664b"
-  integrity sha512-49VBlw+PrWEF51aCmy7QIteYPIFZxSpvqBdP/2itCPPlJ49kj9zg/XPRFrdkne2W+CfwXUls8exMvu1RysZpKA==
+  version "5.1.2"
+  resolved "https://registry.yarnpkg.com/boxen/-/boxen-5.1.2.tgz#788cb686fc83c1f486dfa8a40c68fc2b831d2b50"
+  integrity sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==
   dependencies:
     ansi-align "^3.0.0"
     camelcase "^6.2.0"
     chalk "^4.1.0"
     cli-boxes "^2.2.1"
-    string-width "^4.2.0"
+    string-width "^4.2.2"
     type-fest "^0.20.2"
     widest-line "^3.1.0"
     wrap-ansi "^7.0.0"
@@ -1224,16 +1188,16 @@ browser-process-hrtime@^1.0.0:
   resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626"
   integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==
 
-browserslist@^4.12.2, browserslist@^4.16.6:
-  version "4.16.6"
-  resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz#d7901277a5a88e554ed305b183ec9b0c08f66fa2"
-  integrity sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==
+browserslist@^4.17.5:
+  version "4.20.2"
+  resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.20.2.tgz#567b41508757ecd904dab4d1c646c612cd3d4f88"
+  integrity sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==
   dependencies:
-    caniuse-lite "^1.0.30001219"
-    colorette "^1.2.2"
-    electron-to-chromium "^1.3.723"
+    caniuse-lite "^1.0.30001317"
+    electron-to-chromium "^1.4.84"
     escalade "^3.1.1"
-    node-releases "^1.1.71"
+    node-releases "^2.0.2"
+    picocolors "^1.0.0"
 
 bser@2.1.1:
   version "2.1.1"
@@ -1242,7 +1206,20 @@ bser@2.1.1:
   dependencies:
     node-int64 "^0.4.0"
 
-buffer-crc32@^0.2.1, buffer-crc32@^0.2.13, buffer-crc32@~0.2.3:
+buffer-alloc-unsafe@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0"
+  integrity sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==
+
+buffer-alloc@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec"
+  integrity sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==
+  dependencies:
+    buffer-alloc-unsafe "^1.1.0"
+    buffer-fill "^1.0.0"
+
+buffer-crc32@~0.2.3:
   version "0.2.13"
   resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242"
   integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=
@@ -1252,12 +1229,17 @@ buffer-equal@1.0.0:
   resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.0.tgz#59616b498304d556abd466966b22eeda3eca5fbe"
   integrity sha1-WWFrSYME1Var1GaWayLu2j7KX74=
 
+buffer-fill@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c"
+  integrity sha1-+PeLdniYiO858gXNY39o5wISKyw=
+
 buffer-from@^1.0.0:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
-  integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
+  integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
 
-buffer@^5.1.0, buffer@^5.5.0:
+buffer@^5.1.0:
   version "5.7.1"
   resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0"
   integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==
@@ -1265,36 +1247,31 @@ buffer@^5.1.0, buffer@^5.5.0:
     base64-js "^1.3.1"
     ieee754 "^1.1.13"
 
-builder-util-runtime@8.7.6:
-  version "8.7.6"
-  resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.7.6.tgz#4b43c96db2bd494ced7694bcd7674934655e8324"
-  integrity sha512-rj9AIY7CzLSuTOXpToiaQkruYh6UEQ+kYnd5UET22ch8MGClEtIZKXHG14qEiXEr2x4EOKDMxkcTa+9TYaE+ug==
-  dependencies:
-    debug "^4.3.2"
-    sax "^1.2.4"
-
-builder-util-runtime@8.7.7:
-  version "8.7.7"
-  resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.7.7.tgz#6c83cc3abe7a7a5c8b4ec8878f68adc828c07f0d"
-  integrity sha512-RUfoXzVrmFFI0K/Oft0CtP1LpTIOlBeLJatt5DePTI0KlxE156am4SGUpqtbbdqZNm++LkV9mX4olBDcXyGPow==
+builder-util-runtime@8.9.2:
+  version "8.9.2"
+  resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.9.2.tgz#a9669ae5b5dcabfe411ded26678e7ae997246c28"
+  integrity sha512-rhuKm5vh7E0aAmT6i8aoSfEjxzdYEFX7zDApK+eNgOhjofnWb74d9SRJv0H/8nsgOkos0TZ4zxW0P8J4N7xQ2A==
   dependencies:
     debug "^4.3.2"
     sax "^1.2.4"
 
-builder-util@22.11.7:
-  version "22.11.7"
-  resolved "https://registry.yarnpkg.com/builder-util/-/builder-util-22.11.7.tgz#ae9707afa6a31feafa13c274ac83b4fe28ef1467"
-  integrity sha512-ihqUe5ey82LM9qqQe0/oIcaSm9w+B9UjcsWJZxJliTBsbU+sErOpDFpHW+sim0veiTF/EIcGUh9HoduWw+l9FA==
+builder-util@22.14.13:
+  version "22.14.13"
+  resolved "https://registry.yarnpkg.com/builder-util/-/builder-util-22.14.13.tgz#41b5b7b4ee53aff4e09cc007fb144522598f3ce6"
+  integrity sha512-oePC/qrrUuerhmH5iaCJzPRAKlSBylrhzuAJmRQClTyWnZUv6jbaHh+VoHMbEiE661wrj2S2aV7/bQh12cj1OA==
   dependencies:
     "7zip-bin" "~5.1.1"
-    "@types/debug" "^4.1.5"
+    "@types/debug" "^4.1.6"
     "@types/fs-extra" "^9.0.11"
-    app-builder-bin "3.5.13"
+    app-builder-bin "3.7.1"
     bluebird-lst "^1.0.9"
-    builder-util-runtime "8.7.7"
+    builder-util-runtime "8.9.2"
     chalk "^4.1.1"
+    cross-spawn "^7.0.3"
     debug "^4.3.2"
     fs-extra "^10.0.0"
+    http-proxy-agent "^5.0.0"
+    https-proxy-agent "^5.0.0"
     is-ci "^3.0.0"
     js-yaml "^4.1.0"
     source-map-support "^0.5.19"
@@ -1325,16 +1302,16 @@ camelcase@^5.3.1:
   integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
 
 camelcase@^6.2.0:
-  version "6.2.0"
-  resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809"
-  integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==
+  version "6.3.0"
+  resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a"
+  integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==
 
-caniuse-lite@^1.0.30001166, caniuse-lite@^1.0.30001219:
-  version "1.0.30001241"
-  resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001241.tgz#cd3fae47eb3d7691692b406568d7a3e5b23c7598"
-  integrity sha512-1uoSZ1Pq1VpH0WerIMqwptXHNNGfdl7d1cJUFs80CwQ/lVzdhTvsFZCeNFslze7AjsQnb4C85tzclPa1VShbeQ==
+caniuse-lite@^1.0.30001317:
+  version "1.0.30001319"
+  resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001319.tgz#eb4da4eb3ecdd409f7ba1907820061d56096e88f"
+  integrity sha512-xjlIAFHucBRSMUo1kb5D4LYgcN1M45qdKP++lhqowDpwJwGkpIRTt5qQqnhxjj1vHcI7nrJxWhCC1ATrCEBTcw==
 
-chalk@^2.0.0, chalk@^2.4.2:
+chalk@^2.0.0:
   version "2.4.2"
   resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
   integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
@@ -1343,10 +1320,10 @@ chalk@^2.0.0, chalk@^2.4.2:
     escape-string-regexp "^1.0.5"
     supports-color "^5.3.0"
 
-chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1:
-  version "4.1.1"
-  resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.1.tgz#c80b3fab28bf6371e6863325eee67e618b77e6ad"
-  integrity sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==
+chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.1:
+  version "4.1.2"
+  resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
+  integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
   dependencies:
     ansi-styles "^4.1.0"
     supports-color "^7.1.0"
@@ -1366,28 +1343,28 @@ ci-info@^2.0.0:
   resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46"
   integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==
 
-ci-info@^3.1.1:
-  version "3.2.0"
-  resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.2.0.tgz#2876cb948a498797b5236f0095bc057d0dca38b6"
-  integrity sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==
+ci-info@^3.2.0:
+  version "3.3.0"
+  resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.3.0.tgz#b4ed1fb6818dea4803a55c623041f9165d2066b2"
+  integrity sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw==
 
 cjs-module-lexer@^1.0.0:
-  version "1.2.1"
-  resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.1.tgz#2fd46d9906a126965aa541345c499aaa18e8cd73"
-  integrity sha512-jVamGdJPDeuQilKhvVn1h3knuMOZzr8QDnpk+M9aMlCaMkTDd6fBWPhiDqFvFZ07pL0liqabAiuy8SY4jGHeaw==
+  version "1.2.2"
+  resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40"
+  integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==
 
 cli-boxes@^2.2.1:
   version "2.2.1"
   resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f"
   integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==
 
-cli-truncate@^1.1.0:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-1.1.0.tgz#2b2dfd83c53cfd3572b87fc4d430a808afb04086"
-  integrity sha512-bAtZo0u82gCfaAGfSNxUdTI9mNyza7D8w4CVCcaOsy7sgwDzvx6ekr6cuWJqY3UGzgnQ1+4wgENup5eIhgxEYA==
+cli-truncate@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7"
+  integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==
   dependencies:
-    slice-ansi "^1.0.0"
-    string-width "^2.0.0"
+    slice-ansi "^3.0.0"
+    string-width "^4.2.0"
 
 cliui@^7.0.2:
   version "7.0.4"
@@ -1439,11 +1416,6 @@ color-name@~1.1.4:
   resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
   integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
 
-colorette@^1.2.2:
-  version "1.2.2"
-  resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94"
-  integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==
-
 colors@1.0.3:
   version "1.0.3"
   resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b"
@@ -1468,15 +1440,10 @@ commander@^5.0.0:
   resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae"
   integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==
 
-compress-commons@^4.1.0:
-  version "4.1.1"
-  resolved "https://registry.yarnpkg.com/compress-commons/-/compress-commons-4.1.1.tgz#df2a09a7ed17447642bad10a85cc9a19e5c42a7d"
-  integrity sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ==
-  dependencies:
-    buffer-crc32 "^0.2.13"
-    crc32-stream "^4.0.2"
-    normalize-path "^3.0.0"
-    readable-stream "^3.6.0"
+compare-version@^0.1.2:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/compare-version/-/compare-version-0.1.2.tgz#0162ec2d9351f5ddd59a9202cba935366a725080"
+  integrity sha1-AWLsLZNR9d3VmpICy6k1NmpyUIA=
 
 concat-map@0.0.1:
   version "0.0.1"
@@ -1520,31 +1487,15 @@ convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0:
   dependencies:
     safe-buffer "~5.1.1"
 
-core-js@^3.6.5:
-  version "3.15.2"
-  resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.15.2.tgz#740660d2ff55ef34ce664d7e2455119c5bdd3d61"
-  integrity sha512-tKs41J7NJVuaya8DxIOCnl8QuPHx5/ZVbFo1oKgVl1qHFBBrDctzQGtuLjPpRdNTWmKPH6oEvgN/MUID+l485Q==
-
-core-util-is@1.0.2, core-util-is@~1.0.0:
+core-util-is@1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
   integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
 
-crc-32@^1.2.0:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/crc-32/-/crc-32-1.2.0.tgz#cb2db6e29b88508e32d9dd0ec1693e7b41a18208"
-  integrity sha512-1uBwHxF+Y/4yF5G48fwnKq6QsIXheor3ZLPT80yGBV1oEUwpPojlEhQbWKVw1VwcTQyMGHK1/XMmTjmlsmTTGA==
-  dependencies:
-    exit-on-epipe "~1.0.1"
-    printj "~1.1.0"
-
-crc32-stream@^4.0.2:
-  version "4.0.2"
-  resolved "https://registry.yarnpkg.com/crc32-stream/-/crc32-stream-4.0.2.tgz#c922ad22b38395abe9d3870f02fa8134ed709007"
-  integrity sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w==
-  dependencies:
-    crc-32 "^1.2.0"
-    readable-stream "^3.4.0"
+core-util-is@~1.0.0:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
+  integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
 
 crc@^3.8.0:
   version "3.8.0"
@@ -1593,27 +1544,20 @@ data-urls@^2.0.0:
     whatwg-mimetype "^2.3.0"
     whatwg-url "^8.0.0"
 
-debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1:
-  version "4.3.1"
-  resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee"
-  integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==
+debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2:
+  version "4.3.4"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
+  integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
   dependencies:
     ms "2.1.2"
 
-debug@^2.6.9:
+debug@^2.6.8, debug@^2.6.9:
   version "2.6.9"
   resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
   integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
   dependencies:
     ms "2.0.0"
 
-debug@^4.3.2:
-  version "4.3.2"
-  resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b"
-  integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==
-  dependencies:
-    ms "2.1.2"
-
 decimal.js@^10.2.1:
   version "10.3.1"
   resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783"
@@ -1637,9 +1581,9 @@ deep-extend@^0.6.0:
   integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
 
 deep-is@^0.1.3, deep-is@~0.1.3:
-  version "0.1.3"
-  resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
-  integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
+  integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
 
 deepmerge@^4.2.2:
   version "4.2.2"
@@ -1673,10 +1617,10 @@ detect-node@^2.0.4:
   resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1"
   integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==
 
-diff-sequences@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.0.6.tgz#3305cb2e55a033924054695cc66019fd7f8e5723"
-  integrity sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ==
+diff-sequences@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327"
+  integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==
 
 dir-compare@^2.4.0:
   version "2.4.0"
@@ -1688,14 +1632,14 @@ dir-compare@^2.4.0:
     commander "2.9.0"
     minimatch "3.0.4"
 
-dmg-builder@22.11.7:
-  version "22.11.7"
-  resolved "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.11.7.tgz#5956008c18d40ee72c0ea01ffea9590dbf51df89"
-  integrity sha512-+I+XfP2DODHB6PwFANgpH/WMzzCA5r5XoMvbFCIYjQjJpXlO0XnqQaamzFl2vh/Wz/Qt0d0lJMgRy8gKR3MGdQ==
+dmg-builder@22.14.13:
+  version "22.14.13"
+  resolved "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.14.13.tgz#cc613f3c18e889b8777d525991fd52f50a564f8c"
+  integrity sha512-xNOugB6AbIRETeU2uID15sUfjdZZcKdxK8xkFnwIggsM00PJ12JxpLNPTjcRoUnfwj3WrPjilrO64vRMwNItQg==
   dependencies:
-    app-builder-lib "22.11.7"
-    builder-util "22.11.7"
-    builder-util-runtime "8.7.6"
+    app-builder-lib "22.14.13"
+    builder-util "22.14.13"
+    builder-util-runtime "8.9.2"
     fs-extra "^10.0.0"
     iconv-lite "^0.6.2"
     js-yaml "^4.1.0"
@@ -1703,17 +1647,16 @@ dmg-builder@22.11.7:
     dmg-license "^1.0.9"
 
 dmg-license@^1.0.9:
-  version "1.0.9"
-  resolved "https://registry.yarnpkg.com/dmg-license/-/dmg-license-1.0.9.tgz#a2fb8d692af0e30b0730b5afc91ed9edc2d9cb4f"
-  integrity sha512-Rq6qMDaDou2+aPN2SYy0x7LDznoJ/XaG6oDcH5wXUp+WRWQMUYE6eM+F+nex+/LSXOp1uw4HLFoed0YbfU8R/Q==
+  version "1.0.11"
+  resolved "https://registry.yarnpkg.com/dmg-license/-/dmg-license-1.0.11.tgz#7b3bc3745d1b52be7506b4ee80cb61df6e4cd79a"
+  integrity sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==
   dependencies:
     "@types/plist" "^3.0.1"
     "@types/verror" "^1.10.3"
     ajv "^6.10.0"
-    cli-truncate "^1.1.0"
     crc "^3.8.0"
-    iconv-corefoundation "^1.1.6"
-    plist "^3.0.1"
+    iconv-corefoundation "^1.1.7"
+    plist "^3.0.4"
     smart-buffer "^4.0.2"
     verror "^1.10.0"
 
@@ -1760,17 +1703,17 @@ ejs@^3.1.6:
   dependencies:
     jake "^10.6.1"
 
-electron-builder@22.11.7:
-  version "22.11.7"
-  resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.11.7.tgz#cd97a0d9f6e6d388112e66b4376de431cca4d596"
-  integrity sha512-yQExSLt7Hbz/P8lLkZDdE/OnJJ7NCX+uiQcV+XIH0TeEZcD87ZnSqBBzGUN5akySU4BXXlrVZKeUsXACWrm5Kw==
+electron-builder@22.14.13:
+  version "22.14.13"
+  resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.14.13.tgz#fd40564685cf5422a8f8d667940af3d3776f4fb8"
+  integrity sha512-3fgLxqF2TXVKiUPeg74O4V3l0l3j7ERLazo8sUbRkApw0+4iVAf2BJkHsHMaXiigsgCoEzK/F4/rB5rne/VAnw==
   dependencies:
-    "@types/yargs" "^16.0.2"
-    app-builder-lib "22.11.7"
-    builder-util "22.11.7"
-    builder-util-runtime "8.7.7"
+    "@types/yargs" "^17.0.1"
+    app-builder-lib "22.14.13"
+    builder-util "22.14.13"
+    builder-util-runtime "8.9.2"
     chalk "^4.1.1"
-    dmg-builder "22.11.7"
+    dmg-builder "22.14.13"
     fs-extra "^10.0.0"
     is-ci "^3.0.0"
     lazy-val "^1.0.5"
@@ -1778,30 +1721,42 @@ electron-builder@22.11.7:
     update-notifier "^5.1.0"
     yargs "^17.0.1"
 
-electron-publish@22.11.7:
-  version "22.11.7"
-  resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.11.7.tgz#4126cbb08ccf082a2aa7fef89ee629b3a4b8ae9a"
-  integrity sha512-A4EhRRNBVz4SPzUlBrPO6BmuyDeI0pyprggPAV9rQ+SDVSnSB/WKPot9JwWMyArkGj3AUUTMNVT6hwZhMvhfqw==
+electron-osx-sign@^0.5.0:
+  version "0.5.0"
+  resolved "https://registry.yarnpkg.com/electron-osx-sign/-/electron-osx-sign-0.5.0.tgz#fc258c5e896859904bbe3d01da06902c04b51c3a"
+  integrity sha512-icoRLHzFz/qxzDh/N4Pi2z4yVHurlsCAYQvsCSG7fCedJ4UJXBS6PoQyGH71IfcqKupcKeK7HX/NkyfG+v6vlQ==
+  dependencies:
+    bluebird "^3.5.0"
+    compare-version "^0.1.2"
+    debug "^2.6.8"
+    isbinaryfile "^3.0.2"
+    minimist "^1.2.0"
+    plist "^3.0.1"
+
+electron-publish@22.14.13:
+  version "22.14.13"
+  resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.14.13.tgz#8b71e6975af8cc6ac5b21f293ade23f8704047c7"
+  integrity sha512-0oP3QiNj3e8ewOaEpEJV/o6Zrmy2VarVvZ/bH7kyO/S/aJf9x8vQsKVWpsdmSiZ5DJEHgarFIXrnO0ZQf0P9iQ==
   dependencies:
     "@types/fs-extra" "^9.0.11"
-    builder-util "22.11.7"
-    builder-util-runtime "8.7.7"
+    builder-util "22.14.13"
+    builder-util-runtime "8.9.2"
     chalk "^4.1.1"
     fs-extra "^10.0.0"
     lazy-val "^1.0.5"
     mime "^2.5.2"
 
-electron-to-chromium@^1.3.723:
-  version "1.3.763"
-  resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.763.tgz#93f6f02506d099941f557b9db9ba50b30215bf15"
-  integrity sha512-UyvEPae0wvzsyNJhVfGeFSOlUkHEze8xSIiExO5tZQ8QTr7obFiJWGk3U4e7afFOJMQJDszqU/3Pk5jtKiaSEg==
+electron-to-chromium@^1.4.84:
+  version "1.4.90"
+  resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.90.tgz#4a518590f118828d54fff045728f547fef08143f"
+  integrity sha512-ZwKgSA0mQMyEhz+NR0F8dRzkrCLeHLzLkjx/CWf16+zV85hQ6meXPQbKanvhnpkYb7b2uJNj+enQJ/N877ND4Q==
 
-electron@13.1.4:
-  version "13.1.4"
-  resolved "https://registry.yarnpkg.com/electron/-/electron-13.1.4.tgz#6d20d932a0651c3cba9f09a3d08cbaf5b69aa84b"
-  integrity sha512-4qhRZbRvGqHmMWsCG/kRVF4X8VIq9Nujgm+gXZLBSpiR6uUtMHy7ViBTQZl1PGf6O9Ppxhpr9Yz+k6Um9WoP3Q==
+electron@17.0.1:
+  version "17.0.1"
+  resolved "https://registry.yarnpkg.com/electron/-/electron-17.0.1.tgz#e6c7ad2be26e7be8a5a9bac16b21920ad2671224"
+  integrity sha512-CBReR/QEOpgwMdt59lWCtj9wC8oHB6aAjMF1lhXcGew132xtp+C5N6EaXb/fmDceVYLouziYjbNcpeXsWrqdpA==
   dependencies:
-    "@electron/get" "^1.0.1"
+    "@electron/get" "^1.13.0"
     "@types/node" "^14.6.2"
     extract-zip "^1.0.3"
 
@@ -1810,11 +1765,6 @@ emittery@^0.8.1:
   resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860"
   integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==
 
-emoji-regex@^7.0.1:
-  version "7.0.3"
-  resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156"
-  integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==
-
 emoji-regex@^8.0.0:
   version "8.0.0"
   resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
@@ -1825,25 +1775,25 @@ encodeurl@^1.0.2:
   resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
   integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=
 
-end-of-stream@^1.1.0, end-of-stream@^1.4.1:
+end-of-stream@^1.1.0:
   version "1.4.4"
   resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
   integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
   dependencies:
     once "^1.4.0"
 
-enquirer@^2.3.5:
-  version "2.3.6"
-  resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d"
-  integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==
-  dependencies:
-    ansi-colors "^4.1.1"
-
 env-paths@^2.2.0:
   version "2.2.1"
   resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2"
   integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==
 
+error-ex@^1.3.1:
+  version "1.3.2"
+  resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
+  integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
+  dependencies:
+    is-arrayish "^0.2.1"
+
 es6-error@^4.1.1:
   version "4.1.1"
   resolved "https://registry.yarnpkg.com/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d"
@@ -1886,105 +1836,87 @@ escodegen@^2.0.0:
   optionalDependencies:
     source-map "~0.6.1"
 
-eslint-plugin-compat@3.9.0:
-  version "3.9.0"
-  resolved "https://registry.yarnpkg.com/eslint-plugin-compat/-/eslint-plugin-compat-3.9.0.tgz#a7a224e09b102b58e7f7dff52c936428ff3e0186"
-  integrity sha512-lt3l5PHFHVEYSZ5zijcoYvtQJPsBifRiH5N0Et57KwVu7l/yxmHhSG6VJiLMa/lXrg93Qu8049RNQOMn0+yJBg==
-  dependencies:
-    "@mdn/browser-compat-data" "^2.0.7"
-    ast-metadata-inferer "^0.4.0"
-    browserslist "^4.12.2"
-    caniuse-lite "^1.0.30001166"
-    core-js "^3.6.5"
-    find-up "^4.1.0"
-    lodash.memoize "4.1.2"
-    semver "7.3.2"
-
-eslint-plugin-sort-keys-fix@1.1.1:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/eslint-plugin-sort-keys-fix/-/eslint-plugin-sort-keys-fix-1.1.1.tgz#2ed201b53fd4a89552c6e2abd38933f330a4b62e"
-  integrity sha512-x02SLBg+8OEaoT9vvMbsgeInw17wjHLsa9cOieIVQY+xMNRiXBbyMWw+NiBoxYyJIR4QKDOPDofCjQdoSvltQg==
+eslint-plugin-sort-keys@2.3.5:
+  version "2.3.5"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-sort-keys/-/eslint-plugin-sort-keys-2.3.5.tgz#f28d5cd2f5ee0fc5192f5ff879f56f8516aac57b"
+  integrity sha512-2j/XKQ9sNJwK8kIp/U0EvuF6stS6/8aIc53/NskE4C5NRNh4dt3xzbZyOdrVC11cTH6Zo59/pdzA0Kb+2fQGWg==
   dependencies:
-    requireindex "~1.2.0"
+    natural-compare "1.4.0"
 
-eslint-scope@^5.1.1:
-  version "5.1.1"
-  resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
-  integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
+eslint-scope@^7.1.1:
+  version "7.1.1"
+  resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642"
+  integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==
   dependencies:
     esrecurse "^4.3.0"
-    estraverse "^4.1.1"
+    estraverse "^5.2.0"
 
-eslint-utils@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27"
-  integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==
+eslint-utils@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672"
+  integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==
   dependencies:
-    eslint-visitor-keys "^1.1.0"
-
-eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0:
-  version "1.3.0"
-  resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e"
-  integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==
+    eslint-visitor-keys "^2.0.0"
 
 eslint-visitor-keys@^2.0.0:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303"
   integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==
 
-eslint@7.29.0:
-  version "7.29.0"
-  resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.29.0.tgz#ee2a7648f2e729485e4d0bd6383ec1deabc8b3c0"
-  integrity sha512-82G/JToB9qIy/ArBzIWG9xvvwL3R86AlCjtGw+A29OMZDqhTybz/MByORSukGxeI+YPCR4coYyITKk8BFH9nDA==
+eslint-visitor-keys@^3.3.0:
+  version "3.3.0"
+  resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826"
+  integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==
+
+eslint@8.9.0:
+  version "8.9.0"
+  resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.9.0.tgz#a2a8227a99599adc4342fd9b854cb8d8d6412fdb"
+  integrity sha512-PB09IGwv4F4b0/atrbcMFboF/giawbBLVC7fyDamk5Wtey4Jh2K+rYaBhCAbUyEI4QzB1ly09Uglc9iCtFaG2Q==
   dependencies:
-    "@babel/code-frame" "7.12.11"
-    "@eslint/eslintrc" "^0.4.2"
+    "@eslint/eslintrc" "^1.1.0"
+    "@humanwhocodes/config-array" "^0.9.2"
     ajv "^6.10.0"
     chalk "^4.0.0"
     cross-spawn "^7.0.2"
-    debug "^4.0.1"
+    debug "^4.3.2"
     doctrine "^3.0.0"
-    enquirer "^2.3.5"
     escape-string-regexp "^4.0.0"
-    eslint-scope "^5.1.1"
-    eslint-utils "^2.1.0"
-    eslint-visitor-keys "^2.0.0"
-    espree "^7.3.1"
+    eslint-scope "^7.1.1"
+    eslint-utils "^3.0.0"
+    eslint-visitor-keys "^3.3.0"
+    espree "^9.3.1"
     esquery "^1.4.0"
     esutils "^2.0.2"
     fast-deep-equal "^3.1.3"
     file-entry-cache "^6.0.1"
     functional-red-black-tree "^1.0.1"
-    glob-parent "^5.1.2"
+    glob-parent "^6.0.1"
     globals "^13.6.0"
-    ignore "^4.0.6"
+    ignore "^5.2.0"
     import-fresh "^3.0.0"
     imurmurhash "^0.1.4"
     is-glob "^4.0.0"
-    js-yaml "^3.13.1"
+    js-yaml "^4.1.0"
     json-stable-stringify-without-jsonify "^1.0.1"
     levn "^0.4.1"
     lodash.merge "^4.6.2"
     minimatch "^3.0.4"
     natural-compare "^1.4.0"
     optionator "^0.9.1"
-    progress "^2.0.0"
-    regexpp "^3.1.0"
-    semver "^7.2.1"
-    strip-ansi "^6.0.0"
+    regexpp "^3.2.0"
+    strip-ansi "^6.0.1"
     strip-json-comments "^3.1.0"
-    table "^6.0.9"
     text-table "^0.2.0"
     v8-compile-cache "^2.0.3"
 
-espree@^7.3.0, espree@^7.3.1:
-  version "7.3.1"
-  resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6"
-  integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==
+espree@^9.3.1:
+  version "9.3.1"
+  resolved "https://registry.yarnpkg.com/espree/-/espree-9.3.1.tgz#8793b4bc27ea4c778c19908e0719e7b8f4115bcd"
+  integrity sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==
   dependencies:
-    acorn "^7.4.0"
+    acorn "^8.7.0"
     acorn-jsx "^5.3.1"
-    eslint-visitor-keys "^1.3.0"
+    eslint-visitor-keys "^3.3.0"
 
 esprima@^4.0.0, esprima@^4.0.1:
   version "4.0.1"
@@ -2005,15 +1937,10 @@ esrecurse@^4.3.0:
   dependencies:
     estraverse "^5.2.0"
 
-estraverse@^4.1.1:
-  version "4.3.0"
-  resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
-  integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
-
 estraverse@^5.1.0, estraverse@^5.2.0:
-  version "5.2.0"
-  resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880"
-  integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==
+  version "5.3.0"
+  resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
+  integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
 
 esutils@^2.0.2:
   version "2.0.3"
@@ -2035,32 +1962,20 @@ execa@^5.0.0:
     signal-exit "^3.0.3"
     strip-final-newline "^2.0.0"
 
-exit-on-epipe@~1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz#0bdd92e87d5285d267daa8171d0eb06159689692"
-  integrity sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==
-
 exit@^0.1.2:
   version "0.1.2"
   resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
   integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=
 
-expect@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/expect/-/expect-27.0.6.tgz#a4d74fbe27222c718fff68ef49d78e26a8fd4c05"
-  integrity sha512-psNLt8j2kwg42jGBDSfAlU49CEZxejN1f1PlANWDZqIhBOVU/c2Pm888FcjWJzFewhIsNWfZJeLjUjtKGiPuSw==
+expect@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74"
+  integrity sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==
   dependencies:
-    "@jest/types" "^27.0.6"
-    ansi-styles "^5.0.0"
-    jest-get-type "^27.0.6"
-    jest-matcher-utils "^27.0.6"
-    jest-message-util "^27.0.6"
-    jest-regex-util "^27.0.6"
-
-extend@3.0.2:
-  version "3.0.2"
-  resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
-  integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
+    "@jest/types" "^27.5.1"
+    jest-get-type "^27.5.1"
+    jest-matcher-utils "^27.5.1"
+    jest-message-util "^27.5.1"
 
 extract-zip@^1.0.3:
   version "1.7.0"
@@ -2073,9 +1988,9 @@ extract-zip@^1.0.3:
     yauzl "^2.10.0"
 
 extsprintf@^1.2.0:
-  version "1.4.0"
-  resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
-  integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=
+  version "1.4.1"
+  resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07"
+  integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==
 
 fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
   version "3.1.3"
@@ -2093,9 +2008,11 @@ fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6:
   integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
 
 fast-xml-parser@^3.19.0:
-  version "3.19.0"
-  resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-3.19.0.tgz#cb637ec3f3999f51406dd8ff0e6fc4d83e520d01"
-  integrity sha512-4pXwmBplsCPv8FOY1WRakF970TjNGnGnfbOnLqjlYvMiF1SR3yOHyxMR/YCXpPTOspNF5gwudqktIP4VsWkvBg==
+  version "3.21.1"
+  resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-3.21.1.tgz#152a1d51d445380f7046b304672dd55d15c9e736"
+  integrity sha512-FTFVjYoBOZTJekiUsawGsSYV9QL0A+zDYCRj7y34IO6Jg+2IMYEtQa+bbictpdpV8dHxXywqU7C0gRDEOFtBFg==
+  dependencies:
+    strnum "^1.0.4"
 
 fb-watchman@^2.0.0:
   version "2.0.1"
@@ -2149,9 +2066,9 @@ flat-cache@^3.0.4:
     rimraf "^3.0.2"
 
 flatted@^3.1.0:
-  version "3.1.1"
-  resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469"
-  integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==
+  version "3.2.5"
+  resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.5.tgz#76c8584f4fc843db64702a6bd04ab7a8bd666da3"
+  integrity sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==
 
 form-data@^3.0.0:
   version "3.0.1"
@@ -2162,15 +2079,19 @@ form-data@^3.0.0:
     combined-stream "^1.0.8"
     mime-types "^2.1.12"
 
-fs-constants@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
-  integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==
+form-data@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
+  integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==
+  dependencies:
+    asynckit "^0.4.0"
+    combined-stream "^1.0.8"
+    mime-types "^2.1.12"
 
 fs-extra@^10.0.0:
-  version "10.0.0"
-  resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.0.tgz#9ff61b655dde53fb34a82df84bb214ce802e17c1"
-  integrity sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==
+  version "10.0.1"
+  resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.1.tgz#27de43b4320e833f6867cc044bfce29fdf0ef3b8"
+  integrity sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag==
   dependencies:
     graceful-fs "^4.2.0"
     jsonfile "^6.0.1"
@@ -2249,17 +2170,17 @@ get-stream@^6.0.0:
   resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
   integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==
 
-glob-parent@^5.1.2:
-  version "5.1.2"
-  resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
-  integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
+glob-parent@^6.0.1:
+  version "6.0.2"
+  resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
+  integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
   dependencies:
-    is-glob "^4.0.1"
+    is-glob "^4.0.3"
 
 glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
-  version "7.1.7"
-  resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90"
-  integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==
+  version "7.2.0"
+  resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
+  integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==
   dependencies:
     fs.realpath "^1.0.0"
     inflight "^1.0.4"
@@ -2268,13 +2189,12 @@ glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
     once "^1.3.0"
     path-is-absolute "^1.0.0"
 
-global-agent@^2.0.2:
-  version "2.2.0"
-  resolved "https://registry.yarnpkg.com/global-agent/-/global-agent-2.2.0.tgz#566331b0646e6bf79429a16877685c4a1fbf76dc"
-  integrity sha512-+20KpaW6DDLqhG7JDiJpD1JvNvb8ts+TNl7BPOYcURqCrXqnN1Vf+XVOrkKJAFPqfX+oEhsdzOj1hLWkBTdNJg==
+global-agent@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/global-agent/-/global-agent-3.0.0.tgz#ae7cd31bd3583b93c5a16437a1afe27cc33a1ab6"
+  integrity sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==
   dependencies:
     boolean "^3.0.1"
-    core-js "^3.6.5"
     es6-error "^4.1.1"
     matcher "^3.0.0"
     roarr "^2.15.3"
@@ -2304,9 +2224,9 @@ globals@^11.1.0:
   integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
 
 globals@^13.6.0, globals@^13.9.0:
-  version "13.9.0"
-  resolved "https://registry.yarnpkg.com/globals/-/globals-13.9.0.tgz#4bf2bf635b334a173fb1daf7c5e6b218ecdc06cb"
-  integrity sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==
+  version "13.13.0"
+  resolved "https://registry.yarnpkg.com/globals/-/globals-13.13.0.tgz#ac32261060d8070e2719dd6998406e27d2b5727b"
+  integrity sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==
   dependencies:
     type-fest "^0.20.2"
 
@@ -2334,10 +2254,10 @@ got@^9.6.0:
     to-readable-stream "^1.0.0"
     url-parse-lax "^3.0.0"
 
-graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4:
-  version "4.2.6"
-  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.6.tgz#ff040b2b0853b23c3d31027523706f1885d76bee"
-  integrity sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==
+graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.9:
+  version "4.2.9"
+  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96"
+  integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==
 
 "graceful-readlink@>= 1.0.0":
   version "1.0.1"
@@ -2367,9 +2287,9 @@ has@^1.0.3:
     function-bind "^1.1.1"
 
 hosted-git-info@^4.0.2:
-  version "4.0.2"
-  resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz#5e425507eede4fea846b7262f0838456c4209961"
-  integrity sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224"
+  integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==
   dependencies:
     lru-cache "^6.0.0"
 
@@ -2399,6 +2319,15 @@ http-proxy-agent@^4.0.1:
     agent-base "6"
     debug "4"
 
+http-proxy-agent@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43"
+  integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==
+  dependencies:
+    "@tootallnate/once" "2"
+    agent-base "6"
+    debug "4"
+
 https-proxy-agent@^5.0.0:
   version "5.0.0"
   resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2"
@@ -2412,12 +2341,12 @@ human-signals@^2.1.0:
   resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0"
   integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==
 
-iconv-corefoundation@^1.1.6:
-  version "1.1.6"
-  resolved "https://registry.yarnpkg.com/iconv-corefoundation/-/iconv-corefoundation-1.1.6.tgz#27c135470237f6f8d13462fa1f5eaf250523c29a"
-  integrity sha512-1NBe55C75bKGZaY9UHxvXG3G0gEp0ziht7quhuFrW3SPgZDw9HI6qvYXRSV5M/Eupyu8ljuJ6Cba+ec15PZ4Xw==
+iconv-corefoundation@^1.1.7:
+  version "1.1.7"
+  resolved "https://registry.yarnpkg.com/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz#31065e6ab2c9272154c8b0821151e2c88f1b002a"
+  integrity sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==
   dependencies:
-    cli-truncate "^1.1.0"
+    cli-truncate "^2.1.0"
     node-addon-api "^1.6.3"
 
 iconv-lite@0.4.24:
@@ -2439,10 +2368,10 @@ ieee754@^1.1.13:
   resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
   integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
 
-ignore@^4.0.6:
-  version "4.0.6"
-  resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc"
-  integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==
+ignore@^5.2.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a"
+  integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==
 
 import-fresh@^3.0.0, import-fresh@^3.2.1:
   version "3.3.0"
@@ -2458,9 +2387,9 @@ import-lazy@^2.1.0:
   integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=
 
 import-local@^3.0.2:
-  version "3.0.2"
-  resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6"
-  integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4"
+  integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==
   dependencies:
     pkg-dir "^4.2.0"
     resolve-cwd "^3.0.0"
@@ -2478,7 +2407,7 @@ inflight@^1.0.4:
     once "^1.3.0"
     wrappy "1"
 
-inherits@2, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3:
+inherits@2, inherits@^2.0.3, inherits@~2.0.3:
   version "2.0.4"
   resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
   integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
@@ -2493,6 +2422,11 @@ ini@^1.3.4, ini@~1.3.0:
   resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c"
   integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
 
+is-arrayish@^0.2.1:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
+  integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
+
 is-ci@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c"
@@ -2501,16 +2435,16 @@ is-ci@^2.0.0:
     ci-info "^2.0.0"
 
 is-ci@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.0.tgz#c7e7be3c9d8eef7d0fa144390bd1e4b88dc4c994"
-  integrity sha512-kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ==
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.1.tgz#db6ecbed1bd659c43dac0f45661e7674103d1867"
+  integrity sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==
   dependencies:
-    ci-info "^3.1.1"
+    ci-info "^3.2.0"
 
-is-core-module@^2.2.0:
-  version "2.4.0"
-  resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.4.0.tgz#8e9fc8e15027b011418026e98f0e6f4d86305cc1"
-  integrity sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==
+is-core-module@^2.8.1:
+  version "2.8.1"
+  resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211"
+  integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==
   dependencies:
     has "^1.0.3"
 
@@ -2519,11 +2453,6 @@ is-extglob@^2.1.1:
   resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
   integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
 
-is-fullwidth-code-point@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
-  integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
-
 is-fullwidth-code-point@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
@@ -2534,10 +2463,10 @@ is-generator-fn@^2.0.0:
   resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118"
   integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==
 
-is-glob@^4.0.0, is-glob@^4.0.1:
-  version "4.0.1"
-  resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc"
-  integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==
+is-glob@^4.0.0, is-glob@^4.0.3:
+  version "4.0.3"
+  resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
+  integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
   dependencies:
     is-extglob "^2.1.1"
 
@@ -2575,14 +2504,14 @@ is-potential-custom-element-name@^1.0.1:
   integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==
 
 is-stream@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3"
-  integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077"
+  integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==
 
-is-svg@4.3.1:
-  version "4.3.1"
-  resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-4.3.1.tgz#8c63ec8c67c8c7f0a8de0a71c8c7d58eccf4406b"
-  integrity sha512-h2CGs+yPUyvkgTJQS9cJzo9lYK06WgRiXUqBBHtglSzVKAuH4/oWsqk7LGfbSa1hGk9QcZ0SyQtVggvBA8LZXA==
+is-svg@4.3.2:
+  version "4.3.2"
+  resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-4.3.2.tgz#a119e9932e1af53f6be1969d1790d6cc5fd947d3"
+  integrity sha512-mM90duy00JGMyjqIVHu9gNTjywdZV+8qNasX8cm/EEYZ53PHDgajvbBwNVvty5dwSAxLUD3p3bdo+7sR/UMrpw==
   dependencies:
     fast-xml-parser "^3.19.0"
 
@@ -2601,6 +2530,13 @@ isarray@~1.0.0:
   resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
   integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
 
+isbinaryfile@^3.0.2:
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-3.0.3.tgz#5d6def3edebf6e8ca8cae9c30183a804b5f8be80"
+  integrity sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==
+  dependencies:
+    buffer-alloc "^1.2.0"
+
 isbinaryfile@^4.0.8:
   version "4.0.8"
   resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.8.tgz#5d34b94865bd4946633ecc78a026fc76c5b11fcf"
@@ -2611,19 +2547,20 @@ isexe@^2.0.0:
   resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
   integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
 
-istanbul-lib-coverage@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec"
-  integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==
+istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0:
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3"
+  integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==
 
-istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3:
-  version "4.0.3"
-  resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d"
-  integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==
+istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a"
+  integrity sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==
   dependencies:
-    "@babel/core" "^7.7.5"
+    "@babel/core" "^7.12.3"
+    "@babel/parser" "^7.14.7"
     "@istanbuljs/schema" "^0.1.2"
-    istanbul-lib-coverage "^3.0.0"
+    istanbul-lib-coverage "^3.2.0"
     semver "^6.3.0"
 
 istanbul-lib-report@^3.0.0:
@@ -2636,252 +2573,254 @@ istanbul-lib-report@^3.0.0:
     supports-color "^7.1.0"
 
 istanbul-lib-source-maps@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9"
-  integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551"
+  integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==
   dependencies:
     debug "^4.1.1"
     istanbul-lib-coverage "^3.0.0"
     source-map "^0.6.1"
 
-istanbul-reports@^3.0.2:
-  version "3.0.2"
-  resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b"
-  integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==
+istanbul-reports@^3.1.3:
+  version "3.1.4"
+  resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.4.tgz#1b6f068ecbc6c331040aab5741991273e609e40c"
+  integrity sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==
   dependencies:
     html-escaper "^2.0.0"
     istanbul-lib-report "^3.0.0"
 
 jake@^10.6.1:
-  version "10.8.2"
-  resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.2.tgz#ebc9de8558160a66d82d0eadc6a2e58fbc500a7b"
-  integrity sha512-eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A==
+  version "10.8.4"
+  resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.4.tgz#f6a8b7bf90c6306f768aa82bb7b98bf4ca15e84a"
+  integrity sha512-MtWeTkl1qGsWUtbl/Jsca/8xSoK3x0UmS82sNbjqxxG/de/M/3b1DntdjHgPMC50enlTNwXOCRqPXLLt5cCfZA==
   dependencies:
     async "0.9.x"
-    chalk "^2.4.2"
+    chalk "^4.0.2"
     filelist "^1.0.1"
     minimatch "^3.0.4"
 
-jest-changed-files@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.0.6.tgz#bed6183fcdea8a285482e3b50a9a7712d49a7a8b"
-  integrity sha512-BuL/ZDauaq5dumYh5y20sn4IISnf1P9A0TDswTxUi84ORGtVa86ApuBHqICL0vepqAnZiY6a7xeSPWv2/yy4eA==
+jest-changed-files@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5"
+  integrity sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==
   dependencies:
-    "@jest/types" "^27.0.6"
+    "@jest/types" "^27.5.1"
     execa "^5.0.0"
     throat "^6.0.1"
 
-jest-circus@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.0.6.tgz#dd4df17c4697db6a2c232aaad4e9cec666926668"
-  integrity sha512-OJlsz6BBeX9qR+7O9lXefWoc2m9ZqcZ5Ohlzz0pTEAG4xMiZUJoacY8f4YDHxgk0oKYxj277AfOk9w6hZYvi1Q==
+jest-circus@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.5.1.tgz#37a5a4459b7bf4406e53d637b49d22c65d125ecc"
+  integrity sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==
   dependencies:
-    "@jest/environment" "^27.0.6"
-    "@jest/test-result" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    "@jest/environment" "^27.5.1"
+    "@jest/test-result" "^27.5.1"
+    "@jest/types" "^27.5.1"
     "@types/node" "*"
     chalk "^4.0.0"
     co "^4.6.0"
     dedent "^0.7.0"
-    expect "^27.0.6"
+    expect "^27.5.1"
     is-generator-fn "^2.0.0"
-    jest-each "^27.0.6"
-    jest-matcher-utils "^27.0.6"
-    jest-message-util "^27.0.6"
-    jest-runtime "^27.0.6"
-    jest-snapshot "^27.0.6"
-    jest-util "^27.0.6"
-    pretty-format "^27.0.6"
+    jest-each "^27.5.1"
+    jest-matcher-utils "^27.5.1"
+    jest-message-util "^27.5.1"
+    jest-runtime "^27.5.1"
+    jest-snapshot "^27.5.1"
+    jest-util "^27.5.1"
+    pretty-format "^27.5.1"
     slash "^3.0.0"
     stack-utils "^2.0.3"
     throat "^6.0.1"
 
-jest-cli@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.0.6.tgz#d021e5f4d86d6a212450d4c7b86cb219f1e6864f"
-  integrity sha512-qUUVlGb9fdKir3RDE+B10ULI+LQrz+MCflEH2UJyoUjoHHCbxDrMxSzjQAPUMsic4SncI62ofYCcAvW6+6rhhg==
+jest-cli@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145"
+  integrity sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==
   dependencies:
-    "@jest/core" "^27.0.6"
-    "@jest/test-result" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    "@jest/core" "^27.5.1"
+    "@jest/test-result" "^27.5.1"
+    "@jest/types" "^27.5.1"
     chalk "^4.0.0"
     exit "^0.1.2"
-    graceful-fs "^4.2.4"
+    graceful-fs "^4.2.9"
     import-local "^3.0.2"
-    jest-config "^27.0.6"
-    jest-util "^27.0.6"
-    jest-validate "^27.0.6"
+    jest-config "^27.5.1"
+    jest-util "^27.5.1"
+    jest-validate "^27.5.1"
     prompts "^2.0.1"
-    yargs "^16.0.3"
+    yargs "^16.2.0"
 
-jest-config@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.0.6.tgz#119fb10f149ba63d9c50621baa4f1f179500277f"
-  integrity sha512-JZRR3I1Plr2YxPBhgqRspDE2S5zprbga3swYNrvY3HfQGu7p/GjyLOqwrYad97tX3U3mzT53TPHVmozacfP/3w==
+jest-config@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41"
+  integrity sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==
   dependencies:
-    "@babel/core" "^7.1.0"
-    "@jest/test-sequencer" "^27.0.6"
-    "@jest/types" "^27.0.6"
-    babel-jest "^27.0.6"
+    "@babel/core" "^7.8.0"
+    "@jest/test-sequencer" "^27.5.1"
+    "@jest/types" "^27.5.1"
+    babel-jest "^27.5.1"
     chalk "^4.0.0"
+    ci-info "^3.2.0"
     deepmerge "^4.2.2"
     glob "^7.1.1"
-    graceful-fs "^4.2.4"
-    is-ci "^3.0.0"
-    jest-circus "^27.0.6"
-    jest-environment-jsdom "^27.0.6"
-    jest-environment-node "^27.0.6"
-    jest-get-type "^27.0.6"
-    jest-jasmine2 "^27.0.6"
-    jest-regex-util "^27.0.6"
-    jest-resolve "^27.0.6"
-    jest-runner "^27.0.6"
-    jest-util "^27.0.6"
-    jest-validate "^27.0.6"
+    graceful-fs "^4.2.9"
+    jest-circus "^27.5.1"
+    jest-environment-jsdom "^27.5.1"
+    jest-environment-node "^27.5.1"
+    jest-get-type "^27.5.1"
+    jest-jasmine2 "^27.5.1"
+    jest-regex-util "^27.5.1"
+    jest-resolve "^27.5.1"
+    jest-runner "^27.5.1"
+    jest-util "^27.5.1"
+    jest-validate "^27.5.1"
     micromatch "^4.0.4"
-    pretty-format "^27.0.6"
+    parse-json "^5.2.0"
+    pretty-format "^27.5.1"
+    slash "^3.0.0"
+    strip-json-comments "^3.1.1"
 
-jest-diff@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.0.6.tgz#4a7a19ee6f04ad70e0e3388f35829394a44c7b5e"
-  integrity sha512-Z1mqgkTCSYaFgwTlP/NUiRzdqgxmmhzHY1Tq17zL94morOHfHu3K4bgSgl+CR4GLhpV8VxkuOYuIWnQ9LnFqmg==
+jest-diff@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def"
+  integrity sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==
   dependencies:
     chalk "^4.0.0"
-    diff-sequences "^27.0.6"
-    jest-get-type "^27.0.6"
-    pretty-format "^27.0.6"
+    diff-sequences "^27.5.1"
+    jest-get-type "^27.5.1"
+    pretty-format "^27.5.1"
 
-jest-docblock@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.0.6.tgz#cc78266acf7fe693ca462cbbda0ea4e639e4e5f3"
-  integrity sha512-Fid6dPcjwepTFraz0YxIMCi7dejjJ/KL9FBjPYhBp4Sv1Y9PdhImlKZqYU555BlN4TQKaTc+F2Av1z+anVyGkA==
+jest-docblock@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0"
+  integrity sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==
   dependencies:
     detect-newline "^3.0.0"
 
-jest-each@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.0.6.tgz#cee117071b04060158dc8d9a66dc50ad40ef453b"
-  integrity sha512-m6yKcV3bkSWrUIjxkE9OC0mhBZZdhovIW5ergBYirqnkLXkyEn3oUUF/QZgyecA1cF1QFyTE8bRRl8Tfg1pfLA==
+jest-each@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e"
+  integrity sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==
   dependencies:
-    "@jest/types" "^27.0.6"
+    "@jest/types" "^27.5.1"
     chalk "^4.0.0"
-    jest-get-type "^27.0.6"
-    jest-util "^27.0.6"
-    pretty-format "^27.0.6"
-
-jest-environment-jsdom@27.0.6, jest-environment-jsdom@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.0.6.tgz#f66426c4c9950807d0a9f209c590ce544f73291f"
-  integrity sha512-FvetXg7lnXL9+78H+xUAsra3IeZRTiegA3An01cWeXBspKXUhAwMM9ycIJ4yBaR0L7HkoMPaZsozCLHh4T8fuw==
-  dependencies:
-    "@jest/environment" "^27.0.6"
-    "@jest/fake-timers" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    jest-get-type "^27.5.1"
+    jest-util "^27.5.1"
+    pretty-format "^27.5.1"
+
+jest-environment-jsdom@27.5.1, jest-environment-jsdom@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546"
+  integrity sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==
+  dependencies:
+    "@jest/environment" "^27.5.1"
+    "@jest/fake-timers" "^27.5.1"
+    "@jest/types" "^27.5.1"
     "@types/node" "*"
-    jest-mock "^27.0.6"
-    jest-util "^27.0.6"
+    jest-mock "^27.5.1"
+    jest-util "^27.5.1"
     jsdom "^16.6.0"
 
-jest-environment-node@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.0.6.tgz#a6699b7ceb52e8d68138b9808b0c404e505f3e07"
-  integrity sha512-+Vi6yLrPg/qC81jfXx3IBlVnDTI6kmRr08iVa2hFCWmJt4zha0XW7ucQltCAPhSR0FEKEoJ3i+W4E6T0s9is0w==
+jest-environment-node@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e"
+  integrity sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==
   dependencies:
-    "@jest/environment" "^27.0.6"
-    "@jest/fake-timers" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    "@jest/environment" "^27.5.1"
+    "@jest/fake-timers" "^27.5.1"
+    "@jest/types" "^27.5.1"
     "@types/node" "*"
-    jest-mock "^27.0.6"
-    jest-util "^27.0.6"
+    jest-mock "^27.5.1"
+    jest-util "^27.5.1"
 
-jest-get-type@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.0.6.tgz#0eb5c7f755854279ce9b68a9f1a4122f69047cfe"
-  integrity sha512-XTkK5exIeUbbveehcSR8w0bhH+c0yloW/Wpl+9vZrjzztCPWrxhHwkIFpZzCt71oRBsgxmuUfxEqOYoZI2macg==
+jest-get-type@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1"
+  integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==
 
-jest-haste-map@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.0.6.tgz#4683a4e68f6ecaa74231679dca237279562c8dc7"
-  integrity sha512-4ldjPXX9h8doB2JlRzg9oAZ2p6/GpQUNAeiYXqcpmrKbP0Qev0wdZlxSMOmz8mPOEnt4h6qIzXFLDi8RScX/1w==
+jest-haste-map@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f"
+  integrity sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==
   dependencies:
-    "@jest/types" "^27.0.6"
+    "@jest/types" "^27.5.1"
     "@types/graceful-fs" "^4.1.2"
     "@types/node" "*"
     anymatch "^3.0.3"
     fb-watchman "^2.0.0"
-    graceful-fs "^4.2.4"
-    jest-regex-util "^27.0.6"
-    jest-serializer "^27.0.6"
-    jest-util "^27.0.6"
-    jest-worker "^27.0.6"
+    graceful-fs "^4.2.9"
+    jest-regex-util "^27.5.1"
+    jest-serializer "^27.5.1"
+    jest-util "^27.5.1"
+    jest-worker "^27.5.1"
     micromatch "^4.0.4"
     walker "^1.0.7"
   optionalDependencies:
     fsevents "^2.3.2"
 
-jest-jasmine2@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.0.6.tgz#fd509a9ed3d92bd6edb68a779f4738b100655b37"
-  integrity sha512-cjpH2sBy+t6dvCeKBsHpW41mjHzXgsavaFMp+VWRf0eR4EW8xASk1acqmljFtK2DgyIECMv2yCdY41r2l1+4iA==
+jest-jasmine2@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4"
+  integrity sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==
   dependencies:
-    "@babel/traverse" "^7.1.0"
-    "@jest/environment" "^27.0.6"
-    "@jest/source-map" "^27.0.6"
-    "@jest/test-result" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    "@jest/environment" "^27.5.1"
+    "@jest/source-map" "^27.5.1"
+    "@jest/test-result" "^27.5.1"
+    "@jest/types" "^27.5.1"
     "@types/node" "*"
     chalk "^4.0.0"
     co "^4.6.0"
-    expect "^27.0.6"
+    expect "^27.5.1"
     is-generator-fn "^2.0.0"
-    jest-each "^27.0.6"
-    jest-matcher-utils "^27.0.6"
-    jest-message-util "^27.0.6"
-    jest-runtime "^27.0.6"
-    jest-snapshot "^27.0.6"
-    jest-util "^27.0.6"
-    pretty-format "^27.0.6"
+    jest-each "^27.5.1"
+    jest-matcher-utils "^27.5.1"
+    jest-message-util "^27.5.1"
+    jest-runtime "^27.5.1"
+    jest-snapshot "^27.5.1"
+    jest-util "^27.5.1"
+    pretty-format "^27.5.1"
     throat "^6.0.1"
 
-jest-leak-detector@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.0.6.tgz#545854275f85450d4ef4b8fe305ca2a26450450f"
-  integrity sha512-2/d6n2wlH5zEcdctX4zdbgX8oM61tb67PQt4Xh8JFAIy6LRKUnX528HulkaG6nD5qDl5vRV1NXejCe1XRCH5gQ==
+jest-leak-detector@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8"
+  integrity sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==
   dependencies:
-    jest-get-type "^27.0.6"
-    pretty-format "^27.0.6"
+    jest-get-type "^27.5.1"
+    pretty-format "^27.5.1"
 
-jest-matcher-utils@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.0.6.tgz#2a8da1e86c620b39459f4352eaa255f0d43e39a9"
-  integrity sha512-OFgF2VCQx9vdPSYTHWJ9MzFCehs20TsyFi6bIHbk5V1u52zJOnvF0Y/65z3GLZHKRuTgVPY4Z6LVePNahaQ+tA==
+jest-matcher-utils@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab"
+  integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==
   dependencies:
     chalk "^4.0.0"
-    jest-diff "^27.0.6"
-    jest-get-type "^27.0.6"
-    pretty-format "^27.0.6"
+    jest-diff "^27.5.1"
+    jest-get-type "^27.5.1"
+    pretty-format "^27.5.1"
 
-jest-message-util@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.0.6.tgz#158bcdf4785706492d164a39abca6a14da5ab8b5"
-  integrity sha512-rBxIs2XK7rGy+zGxgi+UJKP6WqQ+KrBbD1YMj517HYN3v2BG66t3Xan3FWqYHKZwjdB700KiAJ+iES9a0M+ixw==
+jest-message-util@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf"
+  integrity sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==
   dependencies:
     "@babel/code-frame" "^7.12.13"
-    "@jest/types" "^27.0.6"
+    "@jest/types" "^27.5.1"
     "@types/stack-utils" "^2.0.0"
     chalk "^4.0.0"
-    graceful-fs "^4.2.4"
+    graceful-fs "^4.2.9"
     micromatch "^4.0.4"
-    pretty-format "^27.0.6"
+    pretty-format "^27.5.1"
     slash "^3.0.0"
     stack-utils "^2.0.3"
 
-jest-mock@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.0.6.tgz#0efdd40851398307ba16778728f6d34d583e3467"
-  integrity sha512-lzBETUoK8cSxts2NYXSBWT+EJNzmUVtVVwS1sU9GwE1DLCfGsngg+ZVSIe0yd0ZSm+y791esiuo+WSwpXJQ5Bw==
+jest-mock@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6"
+  integrity sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==
   dependencies:
-    "@jest/types" "^27.0.6"
+    "@jest/types" "^27.5.1"
     "@types/node" "*"
 
 jest-pnp-resolver@^1.2.2:
@@ -2889,187 +2828,181 @@ jest-pnp-resolver@^1.2.2:
   resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c"
   integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==
 
-jest-regex-util@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.0.6.tgz#02e112082935ae949ce5d13b2675db3d8c87d9c5"
-  integrity sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ==
+jest-regex-util@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95"
+  integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==
 
-jest-resolve-dependencies@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.0.6.tgz#3e619e0ef391c3ecfcf6ef4056207a3d2be3269f"
-  integrity sha512-mg9x9DS3BPAREWKCAoyg3QucCr0n6S8HEEsqRCKSPjPcu9HzRILzhdzY3imsLoZWeosEbJZz6TKasveczzpJZA==
+jest-resolve-dependencies@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8"
+  integrity sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==
   dependencies:
-    "@jest/types" "^27.0.6"
-    jest-regex-util "^27.0.6"
-    jest-snapshot "^27.0.6"
+    "@jest/types" "^27.5.1"
+    jest-regex-util "^27.5.1"
+    jest-snapshot "^27.5.1"
 
-jest-resolve@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.0.6.tgz#e90f436dd4f8fbf53f58a91c42344864f8e55bff"
-  integrity sha512-yKmIgw2LgTh7uAJtzv8UFHGF7Dm7XfvOe/LQ3Txv101fLM8cx2h1QVwtSJ51Q/SCxpIiKfVn6G2jYYMDNHZteA==
+jest-resolve@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384"
+  integrity sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==
   dependencies:
-    "@jest/types" "^27.0.6"
+    "@jest/types" "^27.5.1"
     chalk "^4.0.0"
-    escalade "^3.1.1"
-    graceful-fs "^4.2.4"
+    graceful-fs "^4.2.9"
+    jest-haste-map "^27.5.1"
     jest-pnp-resolver "^1.2.2"
-    jest-util "^27.0.6"
-    jest-validate "^27.0.6"
+    jest-util "^27.5.1"
+    jest-validate "^27.5.1"
     resolve "^1.20.0"
+    resolve.exports "^1.1.0"
     slash "^3.0.0"
 
-jest-runner@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.0.6.tgz#1325f45055539222bbc7256a6976e993ad2f9520"
-  integrity sha512-W3Bz5qAgaSChuivLn+nKOgjqNxM7O/9JOJoKDCqThPIg2sH/d4A/lzyiaFgnb9V1/w29Le11NpzTJSzga1vyYQ==
+jest-runner@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5"
+  integrity sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==
   dependencies:
-    "@jest/console" "^27.0.6"
-    "@jest/environment" "^27.0.6"
-    "@jest/test-result" "^27.0.6"
-    "@jest/transform" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    "@jest/console" "^27.5.1"
+    "@jest/environment" "^27.5.1"
+    "@jest/test-result" "^27.5.1"
+    "@jest/transform" "^27.5.1"
+    "@jest/types" "^27.5.1"
     "@types/node" "*"
     chalk "^4.0.0"
     emittery "^0.8.1"
-    exit "^0.1.2"
-    graceful-fs "^4.2.4"
-    jest-docblock "^27.0.6"
-    jest-environment-jsdom "^27.0.6"
-    jest-environment-node "^27.0.6"
-    jest-haste-map "^27.0.6"
-    jest-leak-detector "^27.0.6"
-    jest-message-util "^27.0.6"
-    jest-resolve "^27.0.6"
-    jest-runtime "^27.0.6"
-    jest-util "^27.0.6"
-    jest-worker "^27.0.6"
+    graceful-fs "^4.2.9"
+    jest-docblock "^27.5.1"
+    jest-environment-jsdom "^27.5.1"
+    jest-environment-node "^27.5.1"
+    jest-haste-map "^27.5.1"
+    jest-leak-detector "^27.5.1"
+    jest-message-util "^27.5.1"
+    jest-resolve "^27.5.1"
+    jest-runtime "^27.5.1"
+    jest-util "^27.5.1"
+    jest-worker "^27.5.1"
     source-map-support "^0.5.6"
     throat "^6.0.1"
 
-jest-runtime@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.0.6.tgz#45877cfcd386afdd4f317def551fc369794c27c9"
-  integrity sha512-BhvHLRVfKibYyqqEFkybsznKwhrsu7AWx2F3y9G9L95VSIN3/ZZ9vBpm/XCS2bS+BWz3sSeNGLzI3TVQ0uL85Q==
-  dependencies:
-    "@jest/console" "^27.0.6"
-    "@jest/environment" "^27.0.6"
-    "@jest/fake-timers" "^27.0.6"
-    "@jest/globals" "^27.0.6"
-    "@jest/source-map" "^27.0.6"
-    "@jest/test-result" "^27.0.6"
-    "@jest/transform" "^27.0.6"
-    "@jest/types" "^27.0.6"
-    "@types/yargs" "^16.0.0"
+jest-runtime@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af"
+  integrity sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==
+  dependencies:
+    "@jest/environment" "^27.5.1"
+    "@jest/fake-timers" "^27.5.1"
+    "@jest/globals" "^27.5.1"
+    "@jest/source-map" "^27.5.1"
+    "@jest/test-result" "^27.5.1"
+    "@jest/transform" "^27.5.1"
+    "@jest/types" "^27.5.1"
     chalk "^4.0.0"
     cjs-module-lexer "^1.0.0"
     collect-v8-coverage "^1.0.0"
-    exit "^0.1.2"
+    execa "^5.0.0"
     glob "^7.1.3"
-    graceful-fs "^4.2.4"
-    jest-haste-map "^27.0.6"
-    jest-message-util "^27.0.6"
-    jest-mock "^27.0.6"
-    jest-regex-util "^27.0.6"
-    jest-resolve "^27.0.6"
-    jest-snapshot "^27.0.6"
-    jest-util "^27.0.6"
-    jest-validate "^27.0.6"
+    graceful-fs "^4.2.9"
+    jest-haste-map "^27.5.1"
+    jest-message-util "^27.5.1"
+    jest-mock "^27.5.1"
+    jest-regex-util "^27.5.1"
+    jest-resolve "^27.5.1"
+    jest-snapshot "^27.5.1"
+    jest-util "^27.5.1"
     slash "^3.0.0"
     strip-bom "^4.0.0"
-    yargs "^16.0.3"
 
-jest-serializer@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.0.6.tgz#93a6c74e0132b81a2d54623251c46c498bb5bec1"
-  integrity sha512-PtGdVK9EGC7dsaziskfqaAPib6wTViY3G8E5wz9tLVPhHyiDNTZn/xjZ4khAw+09QkoOVpn7vF5nPSN6dtBexA==
+jest-serializer@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64"
+  integrity sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==
   dependencies:
     "@types/node" "*"
-    graceful-fs "^4.2.4"
+    graceful-fs "^4.2.9"
 
-jest-snapshot@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.0.6.tgz#f4e6b208bd2e92e888344d78f0f650bcff05a4bf"
-  integrity sha512-NTHaz8He+ATUagUgE7C/UtFcRoHqR2Gc+KDfhQIyx+VFgwbeEMjeP+ILpUTLosZn/ZtbNdCF5LkVnN/l+V751A==
+jest-snapshot@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1"
+  integrity sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==
   dependencies:
     "@babel/core" "^7.7.2"
     "@babel/generator" "^7.7.2"
-    "@babel/parser" "^7.7.2"
     "@babel/plugin-syntax-typescript" "^7.7.2"
     "@babel/traverse" "^7.7.2"
     "@babel/types" "^7.0.0"
-    "@jest/transform" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    "@jest/transform" "^27.5.1"
+    "@jest/types" "^27.5.1"
     "@types/babel__traverse" "^7.0.4"
     "@types/prettier" "^2.1.5"
     babel-preset-current-node-syntax "^1.0.0"
     chalk "^4.0.0"
-    expect "^27.0.6"
-    graceful-fs "^4.2.4"
-    jest-diff "^27.0.6"
-    jest-get-type "^27.0.6"
-    jest-haste-map "^27.0.6"
-    jest-matcher-utils "^27.0.6"
-    jest-message-util "^27.0.6"
-    jest-resolve "^27.0.6"
-    jest-util "^27.0.6"
+    expect "^27.5.1"
+    graceful-fs "^4.2.9"
+    jest-diff "^27.5.1"
+    jest-get-type "^27.5.1"
+    jest-haste-map "^27.5.1"
+    jest-matcher-utils "^27.5.1"
+    jest-message-util "^27.5.1"
+    jest-util "^27.5.1"
     natural-compare "^1.4.0"
-    pretty-format "^27.0.6"
+    pretty-format "^27.5.1"
     semver "^7.3.2"
 
-jest-util@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.0.6.tgz#e8e04eec159de2f4d5f57f795df9cdc091e50297"
-  integrity sha512-1JjlaIh+C65H/F7D11GNkGDDZtDfMEM8EBXsvd+l/cxtgQ6QhxuloOaiayt89DxUvDarbVhqI98HhgrM1yliFQ==
+jest-util@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9"
+  integrity sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==
   dependencies:
-    "@jest/types" "^27.0.6"
+    "@jest/types" "^27.5.1"
     "@types/node" "*"
     chalk "^4.0.0"
-    graceful-fs "^4.2.4"
-    is-ci "^3.0.0"
+    ci-info "^3.2.0"
+    graceful-fs "^4.2.9"
     picomatch "^2.2.3"
 
-jest-validate@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.0.6.tgz#930a527c7a951927df269f43b2dc23262457e2a6"
-  integrity sha512-yhZZOaMH3Zg6DC83n60pLmdU1DQE46DW+KLozPiPbSbPhlXXaiUTDlhHQhHFpaqIFRrInko1FHXjTRpjWRuWfA==
+jest-validate@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067"
+  integrity sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==
   dependencies:
-    "@jest/types" "^27.0.6"
+    "@jest/types" "^27.5.1"
     camelcase "^6.2.0"
     chalk "^4.0.0"
-    jest-get-type "^27.0.6"
+    jest-get-type "^27.5.1"
     leven "^3.1.0"
-    pretty-format "^27.0.6"
+    pretty-format "^27.5.1"
 
-jest-watcher@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.0.6.tgz#89526f7f9edf1eac4e4be989bcb6dec6b8878d9c"
-  integrity sha512-/jIoKBhAP00/iMGnTwUBLgvxkn7vsOweDrOTSPzc7X9uOyUtJIDthQBTI1EXz90bdkrxorUZVhJwiB69gcHtYQ==
+jest-watcher@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2"
+  integrity sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==
   dependencies:
-    "@jest/test-result" "^27.0.6"
-    "@jest/types" "^27.0.6"
+    "@jest/test-result" "^27.5.1"
+    "@jest/types" "^27.5.1"
     "@types/node" "*"
     ansi-escapes "^4.2.1"
     chalk "^4.0.0"
-    jest-util "^27.0.6"
+    jest-util "^27.5.1"
     string-length "^4.0.1"
 
-jest-worker@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.0.6.tgz#a5fdb1e14ad34eb228cfe162d9f729cdbfa28aed"
-  integrity sha512-qupxcj/dRuA3xHPMUd40gr2EaAurFbkwzOh7wfPaeE9id7hyjURRQoqNfHifHK3XjJU6YJJUQKILGUnwGPEOCA==
+jest-worker@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0"
+  integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==
   dependencies:
     "@types/node" "*"
     merge-stream "^2.0.0"
     supports-color "^8.0.0"
 
-jest@27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/jest/-/jest-27.0.6.tgz#10517b2a628f0409087fbf473db44777d7a04505"
-  integrity sha512-EjV8aETrsD0wHl7CKMibKwQNQc3gIRBXlTikBmmHUeVMKaPFxdcUIBfoDqTSXDoGJIivAYGqCWVlzCSaVjPQsA==
+jest@27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc"
+  integrity sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==
   dependencies:
-    "@jest/core" "^27.0.6"
+    "@jest/core" "^27.5.1"
     import-local "^3.0.2"
-    jest-cli "^27.0.6"
+    jest-cli "^27.5.1"
 
 js-tokens@^4.0.0:
   version "4.0.0"
@@ -3092,9 +3025,9 @@ js-yaml@^4.1.0:
     argparse "^2.0.1"
 
 jsdom@^16.6.0:
-  version "16.6.0"
-  resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.6.0.tgz#f79b3786682065492a3da6a60a4695da983805ac"
-  integrity sha512-Ty1vmF4NHJkolaEmdjtxTfSfkdb8Ywarwf63f+F8/mDD1uLSSWDxDuMiZxiPhwunLrn9LOSVItWj4bLYsLN3Dg==
+  version "16.7.0"
+  resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710"
+  integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==
   dependencies:
     abab "^2.0.5"
     acorn "^8.2.4"
@@ -3121,7 +3054,7 @@ jsdom@^16.6.0:
     whatwg-encoding "^1.0.5"
     whatwg-mimetype "^2.3.0"
     whatwg-url "^8.5.0"
-    ws "^7.4.5"
+    ws "^7.4.6"
     xml-name-validator "^3.0.0"
 
 jsesc@^2.5.1:
@@ -3134,16 +3067,16 @@ json-buffer@3.0.0:
   resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898"
   integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=
 
+json-parse-even-better-errors@^2.3.0:
+  version "2.3.1"
+  resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
+  integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
+
 json-schema-traverse@^0.4.1:
   version "0.4.1"
   resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
   integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
 
-json-schema-traverse@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2"
-  integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==
-
 json-stable-stringify-without-jsonify@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
@@ -3155,11 +3088,9 @@ json-stringify-safe@^5.0.1:
   integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=
 
 json5@^2.1.2, json5@^2.2.0:
-  version "2.2.0"
-  resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3"
-  integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==
-  dependencies:
-    minimist "^1.2.5"
+  version "2.2.1"
+  resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c"
+  integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==
 
 jsonfile@^4.0.0:
   version "4.0.0"
@@ -3201,13 +3132,6 @@ lazy-val@^1.0.4, lazy-val@^1.0.5:
   resolved "https://registry.yarnpkg.com/lazy-val/-/lazy-val-1.0.5.tgz#6cf3b9f5bc31cee7ee3e369c0832b7583dcd923d"
   integrity sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==
 
-lazystream@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.0.tgz#f6995fe0f820392f61396be89462407bb77168e4"
-  integrity sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=
-  dependencies:
-    readable-stream "^2.0.5"
-
 leven@^3.1.0:
   version "3.1.0"
   resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2"
@@ -3229,6 +3153,11 @@ levn@~0.3.0:
     prelude-ls "~1.1.2"
     type-check "~0.3.2"
 
+lines-and-columns@^1.1.6:
+  version "1.2.4"
+  resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
+  integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
+
 locate-path@^5.0.0:
   version "5.0.0"
   resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0"
@@ -3236,51 +3165,11 @@ locate-path@^5.0.0:
   dependencies:
     p-locate "^4.1.0"
 
-lodash.clonedeep@^4.5.0:
-  version "4.5.0"
-  resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef"
-  integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=
-
-lodash.defaults@^4.2.0:
-  version "4.2.0"
-  resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c"
-  integrity sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=
-
-lodash.difference@^4.5.0:
-  version "4.5.0"
-  resolved "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz#9ccb4e505d486b91651345772885a2df27fd017c"
-  integrity sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=
-
-lodash.flatten@^4.4.0:
-  version "4.4.0"
-  resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f"
-  integrity sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=
-
-lodash.isplainobject@^4.0.6:
-  version "4.0.6"
-  resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb"
-  integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=
-
-lodash.memoize@4.1.2:
-  version "4.1.2"
-  resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
-  integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=
-
 lodash.merge@^4.6.2:
   version "4.6.2"
   resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
   integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
 
-lodash.truncate@^4.4.2:
-  version "4.4.2"
-  resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193"
-  integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=
-
-lodash.union@^4.6.0:
-  version "4.6.0"
-  resolved "https://registry.yarnpkg.com/lodash.union/-/lodash.union-4.6.0.tgz#48bb5088409f16f1821666641c44dd1aaae3cd88"
-  integrity sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=
-
 lodash@^4.17.10, lodash@^4.17.15, lodash@^4.7.0:
   version "4.17.21"
   resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
@@ -3310,12 +3199,12 @@ make-dir@^3.0.0:
   dependencies:
     semver "^6.0.0"
 
-makeerror@1.0.x:
-  version "1.0.11"
-  resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c"
-  integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=
+makeerror@1.0.12:
+  version "1.0.12"
+  resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a"
+  integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==
   dependencies:
-    tmpl "1.0.x"
+    tmpl "1.0.5"
 
 matcher@^3.0.0:
   version "3.0.0"
@@ -3337,22 +3226,22 @@ micromatch@^4.0.4:
     braces "^3.0.1"
     picomatch "^2.2.3"
 
-mime-db@1.48.0:
-  version "1.48.0"
-  resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.48.0.tgz#e35b31045dd7eada3aaad537ed88a33afbef2d1d"
-  integrity sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==
+mime-db@1.52.0:
+  version "1.52.0"
+  resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
+  integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
 
 mime-types@^2.1.12:
-  version "2.1.31"
-  resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.31.tgz#a00d76b74317c61f9c2db2218b8e9f8e9c5c9e6b"
-  integrity sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==
+  version "2.1.35"
+  resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
+  integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
   dependencies:
-    mime-db "1.48.0"
+    mime-db "1.52.0"
 
 mime@^2.5.2:
-  version "2.5.2"
-  resolved "https://registry.yarnpkg.com/mime/-/mime-2.5.2.tgz#6e3dc6cc2b9510643830e5f19d5cb753da5eeabe"
-  integrity sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==
+  version "2.6.0"
+  resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367"
+  integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==
 
 mimic-fn@^2.1.0:
   version "2.1.0"
@@ -3364,24 +3253,31 @@ mimic-response@^1.0.0, mimic-response@^1.0.1:
   resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
   integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==
 
-minimatch@3.0.4, minimatch@^3.0.4:
+minimatch@3.0.4:
   version "3.0.4"
   resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
   integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
   dependencies:
     brace-expansion "^1.1.7"
 
-minimist@^1.2.0, minimist@^1.2.5:
-  version "1.2.5"
-  resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
-  integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
+minimatch@^3.0.4:
+  version "3.1.2"
+  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
+  integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
+  dependencies:
+    brace-expansion "^1.1.7"
+
+minimist@^1.2.0, minimist@^1.2.6:
+  version "1.2.6"
+  resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44"
+  integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==
 
 mkdirp@^0.5.4:
-  version "0.5.5"
-  resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
-  integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
+  version "0.5.6"
+  resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6"
+  integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==
   dependencies:
-    minimist "^1.2.5"
+    minimist "^1.2.6"
 
 ms@2.0.0:
   version "2.0.0"
@@ -3393,7 +3289,7 @@ ms@2.1.2:
   resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
   integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
 
-natural-compare@^1.4.0:
+natural-compare@1.4.0, natural-compare@^1.4.0:
   version "1.4.0"
   resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
   integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
@@ -3408,15 +3304,10 @@ node-int64@^0.4.0:
   resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b"
   integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=
 
-node-modules-regexp@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40"
-  integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=
-
-node-releases@^1.1.71:
-  version "1.1.73"
-  resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.73.tgz#dd4e81ddd5277ff846b80b52bb40c49edf7a7b20"
-  integrity sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==
+node-releases@^2.0.2:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.2.tgz#7139fe71e2f4f11b47d4d2986aaf8c48699e0c01"
+  integrity sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==
 
 normalize-path@^3.0.0:
   version "3.0.0"
@@ -3496,11 +3387,6 @@ p-cancelable@^1.0.0:
   resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc"
   integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==
 
-p-each-series@^2.1.0:
-  version "2.2.0"
-  resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a"
-  integrity sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==
-
 p-limit@^2.2.0:
   version "2.3.0"
   resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
@@ -3537,6 +3423,16 @@ parent-module@^1.0.0:
   dependencies:
     callsites "^3.0.0"
 
+parse-json@^5.2.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd"
+  integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==
+  dependencies:
+    "@babel/code-frame" "^7.0.0"
+    error-ex "^1.3.1"
+    json-parse-even-better-errors "^2.3.0"
+    lines-and-columns "^1.1.6"
+
 parse5@6.0.1:
   version "6.0.1"
   resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b"
@@ -3557,7 +3453,7 @@ path-key@^3.0.0, path-key@^3.1.0:
   resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
   integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
 
-path-parse@^1.0.6:
+path-parse@^1.0.7:
   version "1.0.7"
   resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
   integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
@@ -3567,22 +3463,25 @@ pend@~1.2.0:
   resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50"
   integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA=
 
+picocolors@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
+  integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
+
 picomatch@^2.0.4, picomatch@^2.2.3:
-  version "2.3.0"
-  resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972"
-  integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==
+  version "2.3.1"
+  resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
+  integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
 
 pify@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
   integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=
 
-pirates@^4.0.1:
-  version "4.0.1"
-  resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87"
-  integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==
-  dependencies:
-    node-modules-regexp "^1.0.0"
+pirates@^4.0.4:
+  version "4.0.5"
+  resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b"
+  integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==
 
 pkg-dir@^4.2.0:
   version "4.2.0"
@@ -3591,14 +3490,13 @@ pkg-dir@^4.2.0:
   dependencies:
     find-up "^4.0.0"
 
-plist@^3.0.1:
-  version "3.0.2"
-  resolved "https://registry.yarnpkg.com/plist/-/plist-3.0.2.tgz#74bbf011124b90421c22d15779cee60060ba95bc"
-  integrity sha512-MSrkwZBdQ6YapHy87/8hDU8MnIcyxBKjeF+McXnr5A9MtffPewTs7G3hlpodT5TacyfIyFTaJEhh3GGcmasTgQ==
+plist@^3.0.1, plist@^3.0.4:
+  version "3.0.4"
+  resolved "https://registry.yarnpkg.com/plist/-/plist-3.0.4.tgz#a62df837e3aed2bb3b735899d510c4f186019cbe"
+  integrity sha512-ksrr8y9+nXOxQB2osVNqrgvX/XQPOXaU4BQMKjYq8PvaY1U18mo+fKgBSwzK+luSyinOuPae956lSVcBwxlAMg==
   dependencies:
     base64-js "^1.5.1"
     xmlbuilder "^9.0.7"
-    xmldom "^0.5.0"
 
 prelude-ls@^1.2.1:
   version "1.2.1"
@@ -3615,35 +3513,29 @@ prepend-http@^2.0.0:
   resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897"
   integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=
 
-pretty-format@^27.0.6:
-  version "27.0.6"
-  resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.0.6.tgz#ab770c47b2c6f893a21aefc57b75da63ef49a11f"
-  integrity sha512-8tGD7gBIENgzqA+UBzObyWqQ5B778VIFZA/S66cclyd5YkFLYs2Js7gxDKf0MXtTc9zcS7t1xhdfcElJ3YIvkQ==
+pretty-format@^27.5.1:
+  version "27.5.1"
+  resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e"
+  integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==
   dependencies:
-    "@jest/types" "^27.0.6"
-    ansi-regex "^5.0.0"
+    ansi-regex "^5.0.1"
     ansi-styles "^5.0.0"
     react-is "^17.0.1"
 
-printj@~1.1.0:
-  version "1.1.2"
-  resolved "https://registry.yarnpkg.com/printj/-/printj-1.1.2.tgz#d90deb2975a8b9f600fb3a1c94e3f4c53c78a222"
-  integrity sha512-zA2SmoLaxZyArQTOPj5LXecR+RagfPSU5Kw1qP+jkWeNlrq+eJZyY2oS68SU1Z/7/myXM4lo9716laOFAVStCQ==
-
 process-nextick-args@~2.0.0:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
   integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
 
-progress@^2.0.0, progress@^2.0.3:
+progress@^2.0.3:
   version "2.0.3"
   resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
   integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==
 
 prompts@^2.0.1:
-  version "2.4.1"
-  resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.1.tgz#befd3b1195ba052f9fd2fde8a486c4e82ee77f61"
-  integrity sha512-EQyfIuO2hPDsX1L/blblV+H7I0knhgAd82cVneCwcdND9B8AuCDuRcBH6yIcG4dFzlOUqbazQqwGjx5xmsNLuQ==
+  version "2.4.2"
+  resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069"
+  integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==
   dependencies:
     kleur "^3.0.3"
     sisteransi "^1.0.5"
@@ -3704,7 +3596,7 @@ read-config-file@6.2.0:
     json5 "^2.2.0"
     lazy-val "^1.0.4"
 
-readable-stream@^2.0.0, readable-stream@^2.0.5, readable-stream@^2.2.2:
+readable-stream@^2.2.2:
   version "2.3.7"
   resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
   integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
@@ -3717,23 +3609,7 @@ readable-stream@^2.0.0, readable-stream@^2.0.5, readable-stream@^2.2.2:
     string_decoder "~1.1.1"
     util-deprecate "~1.0.1"
 
-readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0:
-  version "3.6.0"
-  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
-  integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
-  dependencies:
-    inherits "^2.0.3"
-    string_decoder "^1.1.1"
-    util-deprecate "^1.0.1"
-
-readdir-glob@^1.0.0:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/readdir-glob/-/readdir-glob-1.1.1.tgz#f0e10bb7bf7bfa7e0add8baffdc54c3f7dbee6c4"
-  integrity sha512-91/k1EzZwDx6HbERR+zucygRFfiPl2zkIYZtv3Jjr6Mn7SkKcVct8aVO+sSRiGMc6fLf72du3d92/uY63YPdEA==
-  dependencies:
-    minimatch "^3.0.4"
-
-regexpp@^3.1.0:
+regexpp@^3.2.0:
   version "3.2.0"
   resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2"
   integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==
@@ -3757,16 +3633,6 @@ require-directory@^2.1.1:
   resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
   integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I=
 
-require-from-string@^2.0.2:
-  version "2.0.2"
-  resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
-  integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==
-
-requireindex@~1.2.0:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/requireindex/-/requireindex-1.2.0.tgz#3463cdb22ee151902635aa6c9535d4de9c2ef1ef"
-  integrity sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==
-
 resolve-cwd@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d"
@@ -3784,13 +3650,19 @@ resolve-from@^5.0.0:
   resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
   integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
 
+resolve.exports@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9"
+  integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==
+
 resolve@^1.20.0:
-  version "1.20.0"
-  resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975"
-  integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==
+  version "1.22.0"
+  resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198"
+  integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==
   dependencies:
-    is-core-module "^2.2.0"
-    path-parse "^1.0.6"
+    is-core-module "^2.8.1"
+    path-parse "^1.0.7"
+    supports-preserve-symlinks-flag "^1.0.0"
 
 responselike@^1.0.2:
   version "1.0.2"
@@ -3823,11 +3695,6 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1:
   resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
   integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
 
-safe-buffer@~5.2.0:
-  version "5.2.1"
-  resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
-  integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
-
 "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0":
   version "2.1.2"
   resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
@@ -3864,17 +3731,12 @@ semver-diff@^3.1.1:
   dependencies:
     semver "^6.3.0"
 
-semver@7.3.2:
-  version "7.3.2"
-  resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938"
-  integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==
-
 semver@^6.0.0, semver@^6.2.0, semver@^6.3.0:
   version "6.3.0"
   resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
   integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
 
-semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5:
+semver@^7.3.2, semver@^7.3.4, semver@^7.3.5:
   version "7.3.5"
   resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
   integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==
@@ -3901,9 +3763,9 @@ shebang-regex@^3.0.0:
   integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
 
 signal-exit@^3.0.2, signal-exit@^3.0.3:
-  version "3.0.3"
-  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c"
-  integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==
+  version "3.0.7"
+  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9"
+  integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
 
 sisteransi@^1.0.5:
   version "1.0.5"
@@ -3915,31 +3777,24 @@ slash@^3.0.0:
   resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
   integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
 
-slice-ansi@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d"
-  integrity sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==
-  dependencies:
-    is-fullwidth-code-point "^2.0.0"
-
-slice-ansi@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b"
-  integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==
+slice-ansi@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787"
+  integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==
   dependencies:
     ansi-styles "^4.0.0"
     astral-regex "^2.0.0"
     is-fullwidth-code-point "^3.0.0"
 
 smart-buffer@^4.0.2:
-  version "4.1.0"
-  resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.1.0.tgz#91605c25d91652f4661ea69ccf45f1b331ca21ba"
-  integrity sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw==
+  version "4.2.0"
+  resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae"
+  integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==
 
 source-map-support@^0.5.19, source-map-support@^0.5.6:
-  version "0.5.19"
-  resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61"
-  integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==
+  version "0.5.21"
+  resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"
+  integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==
   dependencies:
     buffer-from "^1.0.0"
     source-map "^0.6.0"
@@ -3970,9 +3825,9 @@ sprintf-js@~1.0.2:
   integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
 
 stack-utils@^2.0.3:
-  version "2.0.3"
-  resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.3.tgz#cd5f030126ff116b78ccb3c027fe302713b61277"
-  integrity sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==
+  version "2.0.5"
+  resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.5.tgz#d25265fca995154659dbbfba3b49254778d2fdd5"
+  integrity sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==
   dependencies:
     escape-string-regexp "^2.0.0"
 
@@ -3989,38 +3844,14 @@ string-length@^4.0.1:
     char-regex "^1.0.2"
     strip-ansi "^6.0.0"
 
-string-width@^2.0.0:
-  version "2.1.1"
-  resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
-  integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
-  dependencies:
-    is-fullwidth-code-point "^2.0.0"
-    strip-ansi "^4.0.0"
-
-string-width@^3.0.0:
-  version "3.1.0"
-  resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961"
-  integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==
-  dependencies:
-    emoji-regex "^7.0.1"
-    is-fullwidth-code-point "^2.0.0"
-    strip-ansi "^5.1.0"
-
-string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0:
-  version "4.2.2"
-  resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5"
-  integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==
+string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3:
+  version "4.2.3"
+  resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
+  integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
   dependencies:
     emoji-regex "^8.0.0"
     is-fullwidth-code-point "^3.0.0"
-    strip-ansi "^6.0.0"
-
-string_decoder@^1.1.1:
-  version "1.3.0"
-  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
-  integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
-  dependencies:
-    safe-buffer "~5.2.0"
+    strip-ansi "^6.0.1"
 
 string_decoder@~1.1.1:
   version "1.1.1"
@@ -4029,26 +3860,12 @@ string_decoder@~1.1.1:
   dependencies:
     safe-buffer "~5.1.0"
 
-strip-ansi@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f"
-  integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8=
-  dependencies:
-    ansi-regex "^3.0.0"
-
-strip-ansi@^5.1.0:
-  version "5.2.0"
-  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae"
-  integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==
-  dependencies:
-    ansi-regex "^4.1.0"
-
-strip-ansi@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532"
-  integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==
+strip-ansi@^6.0.0, strip-ansi@^6.0.1:
+  version "6.0.1"
+  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
+  integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
   dependencies:
-    ansi-regex "^5.0.0"
+    ansi-regex "^5.0.1"
 
 strip-bom@^4.0.0:
   version "4.0.0"
@@ -4070,6 +3887,11 @@ strip-json-comments@~2.0.1:
   resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
   integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
 
+strnum@^1.0.4:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/strnum/-/strnum-1.0.5.tgz#5c4e829fe15ad4ff0d20c3db5ac97b73c9b072db"
+  integrity sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==
+
 sumchecker@^3.0.1:
   version "3.0.1"
   resolved "https://registry.yarnpkg.com/sumchecker/-/sumchecker-3.0.1.tgz#6377e996795abb0b6d348e9b3e1dfb24345a8e42"
@@ -4106,34 +3928,16 @@ supports-hyperlinks@^2.0.0:
     has-flag "^4.0.0"
     supports-color "^7.0.0"
 
+supports-preserve-symlinks-flag@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
+  integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
+
 symbol-tree@^3.2.4:
   version "3.2.4"
   resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2"
   integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==
 
-table@^6.0.9:
-  version "6.7.1"
-  resolved "https://registry.yarnpkg.com/table/-/table-6.7.1.tgz#ee05592b7143831a8c94f3cee6aae4c1ccef33e2"
-  integrity sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==
-  dependencies:
-    ajv "^8.0.1"
-    lodash.clonedeep "^4.5.0"
-    lodash.truncate "^4.4.2"
-    slice-ansi "^4.0.0"
-    string-width "^4.2.0"
-    strip-ansi "^6.0.0"
-
-tar-stream@^2.2.0:
-  version "2.2.0"
-  resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287"
-  integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==
-  dependencies:
-    bl "^4.0.3"
-    end-of-stream "^1.4.1"
-    fs-constants "^1.0.0"
-    inherits "^2.0.3"
-    readable-stream "^3.1.1"
-
 temp-file@^3.4.0:
   version "3.4.0"
   resolved "https://registry.yarnpkg.com/temp-file/-/temp-file-3.4.0.tgz#766ea28911c683996c248ef1a20eea04d51652c7"
@@ -4169,22 +3973,22 @@ throat@^6.0.1:
   resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375"
   integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==
 
-tldts-core@^5.7.38:
-  version "5.7.38"
-  resolved "https://registry.yarnpkg.com/tldts-core/-/tldts-core-5.7.38.tgz#779092c90941803fb682c3d7094a88f12aad4508"
-  integrity sha512-mcL16YTXjpVJ+ekoKC/ddvdjGNMg8HkdWQNp3WNz26WJMV7Z2Hjr1IPwYYr9W3LxGdXV7mmg21Zk2vSstiSsFg==
+tldts-core@^5.7.72:
+  version "5.7.72"
+  resolved "https://registry.yarnpkg.com/tldts-core/-/tldts-core-5.7.72.tgz#d42d0ba3b0a1c677f7f4fc4581267df90238a14c"
+  integrity sha512-UVnXJQbM3CGYwXVy16nNJHh/MWr7fcaEyd3DravwgZjWn0pPHuQ/ajtGonzi9F62Ld3d5r6zBlOTI7qLlLJR1Q==
 
 tldts-experimental@^5.6.21:
-  version "5.7.38"
-  resolved "https://registry.yarnpkg.com/tldts-experimental/-/tldts-experimental-5.7.38.tgz#a2b03ae0282ee7439b1ed1618a1d7d2e9e66be78"
-  integrity sha512-3L0yML53LSw3tlRPwHcGOf35l3dhZx/3DgPGWL3ILATnuu76OiAOvJ4Xw1Znl6sIxVKJ4B4BE0zroZMMzsHg/A==
+  version "5.7.72"
+  resolved "https://registry.yarnpkg.com/tldts-experimental/-/tldts-experimental-5.7.72.tgz#b0a9b121e542a3b31f2b0dc7b64abc720940fd6a"
+  integrity sha512-Qg1FOnR8jCXBySOQVSaAmRZ4UiKse60MY7eTdx6oIaQ8ve+xGi+dXybb4+RN4cu9c4M7HOoGYkWERQ5tkBAPbg==
   dependencies:
-    tldts-core "^5.7.38"
+    tldts-core "^5.7.72"
 
 tmp-promise@^3.0.2:
-  version "3.0.2"
-  resolved "https://registry.yarnpkg.com/tmp-promise/-/tmp-promise-3.0.2.tgz#6e933782abff8b00c3119d63589ca1fb9caaa62a"
-  integrity sha512-OyCLAKU1HzBjL6Ev3gxUeraJNlbNingmi8IrHHEsYH8LTmEuhvYfqvhn2F/je+mjf4N58UmZ96OMEy1JanSCpA==
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/tmp-promise/-/tmp-promise-3.0.3.tgz#60a1a1cc98c988674fcbfd23b6e3367bdeac4ce7"
+  integrity sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==
   dependencies:
     tmp "^0.2.0"
 
@@ -4195,10 +3999,10 @@ tmp@^0.2.0:
   dependencies:
     rimraf "^3.0.0"
 
-tmpl@1.0.x:
-  version "1.0.4"
-  resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1"
-  integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=
+tmpl@1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc"
+  integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==
 
 to-fast-properties@^2.0.0:
   version "2.0.0"
@@ -4347,7 +4151,7 @@ utf8-byte-length@^1.0.1:
   resolved "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz#f45f150c4c66eee968186505ab93fcbb8ad6bf61"
   integrity sha1-9F8VDExm7uloGGUFq5P8u4rWv2E=
 
-util-deprecate@^1.0.1, util-deprecate@~1.0.1:
+util-deprecate@~1.0.1:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
   integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
@@ -4357,19 +4161,19 @@ v8-compile-cache@^2.0.3:
   resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee"
   integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==
 
-v8-to-istanbul@^8.0.0:
-  version "8.0.0"
-  resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz#4229f2a99e367f3f018fa1d5c2b8ec684667c69c"
-  integrity sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==
+v8-to-istanbul@^8.1.0:
+  version "8.1.1"
+  resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed"
+  integrity sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==
   dependencies:
     "@types/istanbul-lib-coverage" "^2.0.1"
     convert-source-map "^1.6.0"
     source-map "^0.7.3"
 
 verror@^1.10.0:
-  version "1.10.0"
-  resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
-  integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=
+  version "1.10.1"
+  resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.1.tgz#4bf09eeccf4563b109ed4b3d458380c972b0cdeb"
+  integrity sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==
   dependencies:
     assert-plus "^1.0.0"
     core-util-is "1.0.2"
@@ -4390,11 +4194,11 @@ w3c-xmlserializer@^2.0.0:
     xml-name-validator "^3.0.0"
 
 walker@^1.0.7:
-  version "1.0.7"
-  resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb"
-  integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=
+  version "1.0.8"
+  resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f"
+  integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==
   dependencies:
-    makeerror "1.0.x"
+    makeerror "1.0.12"
 
 webidl-conversions@^5.0.0:
   version "5.0.0"
@@ -4470,10 +4274,10 @@ write-file-atomic@^3.0.0:
     signal-exit "^3.0.2"
     typedarray-to-buffer "^3.1.5"
 
-ws@^7.4.5:
-  version "7.5.1"
-  resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.1.tgz#44fc000d87edb1d9c53e51fbc69a0ac1f6871d66"
-  integrity sha512-2c6faOUH/nhoQN6abwMloF7Iyl0ZS2E9HGtsiLrWn0zOOMWlhtDmdf/uihDt6jnuCxgtwGBNy6Onsoy2s2O2Ow==
+ws@^7.4.6:
+  version "7.5.7"
+  resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67"
+  integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==
 
 xdg-basedir@^4.0.0:
   version "4.0.0"
@@ -4500,11 +4304,6 @@ xmlchars@^2.2.0:
   resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb"
   integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==
 
-xmldom@^0.5.0:
-  version "0.5.0"
-  resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.5.0.tgz#193cb96b84aa3486127ea6272c4596354cb4962e"
-  integrity sha512-Foaj5FXVzgn7xFzsKeNIde9g6aFBxTPi37iwsno8QvApmtg7KYrr+OPyRHcJF7dud2a5nGRBXK3n0dL62Gf7PA==
-
 y18n@^5.0.5:
   version "5.0.8"
   resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
@@ -4520,7 +4319,12 @@ yargs-parser@^20.2.2:
   resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"
   integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
 
-yargs@^16.0.3:
+yargs-parser@^21.0.0:
+  version "21.0.1"
+  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.1.tgz#0267f286c877a4f0f728fceb6f8a3e4cb95c6e35"
+  integrity sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==
+
+yargs@^16.2.0:
   version "16.2.0"
   resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66"
   integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==
@@ -4534,17 +4338,17 @@ yargs@^16.0.3:
     yargs-parser "^20.2.2"
 
 yargs@^17.0.1:
-  version "17.0.1"
-  resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.0.1.tgz#6a1ced4ed5ee0b388010ba9fd67af83b9362e0bb"
-  integrity sha512-xBBulfCc8Y6gLFcrPvtqKz9hz8SO0l1Ni8GgDekvBX2ro0HRQImDGnikfc33cgzcYUSncapnNcZDjVFIH3f6KQ==
+  version "17.4.0"
+  resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.4.0.tgz#9fc9efc96bd3aa2c1240446af28499f0e7593d00"
+  integrity sha512-WJudfrk81yWFSOkZYpAZx4Nt7V4xp7S/uJkX0CnxovMCt1wCE8LNftPpNuF9X/u9gN5nsD7ycYtRcDf2pL3UiA==
   dependencies:
     cliui "^7.0.2"
     escalade "^3.1.1"
     get-caller-file "^2.0.5"
     require-directory "^2.1.1"
-    string-width "^4.2.0"
+    string-width "^4.2.3"
     y18n "^5.0.5"
-    yargs-parser "^20.2.2"
+    yargs-parser "^21.0.0"
 
 yauzl@^2.10.0:
   version "2.10.0"
@@ -4553,12 +4357,3 @@ yauzl@^2.10.0:
   dependencies:
     buffer-crc32 "~0.2.3"
     fd-slicer "~1.1.0"
-
-zip-stream@^4.1.0:
-  version "4.1.0"
-  resolved "https://registry.yarnpkg.com/zip-stream/-/zip-stream-4.1.0.tgz#51dd326571544e36aa3f756430b313576dc8fc79"
-  integrity sha512-zshzwQW7gG7hjpBlgeQP9RuyPGNxvJdzR8SUM3QhxCnLjWN2E7j3dOvpeDcQoETfHx0urRS7EtmVToql7YpU4A==
-  dependencies:
-    archiver-utils "^2.1.0"
-    compress-commons "^4.1.0"
-    readable-stream "^3.6.0"
diff --git a/nixpkgs/pkgs/applications/networking/browsers/vieb/yarn.nix b/nixpkgs/pkgs/applications/networking/browsers/vieb/yarn.nix
index 6f045bd27e63..a8a281126a0e 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/vieb/yarn.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/vieb/yarn.nix
@@ -6,183 +6,167 @@
       path = fetchurl {
         name = "7zip_bin___7zip_bin_5.1.1.tgz";
         url  = "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-5.1.1.tgz";
-        sha1 = "9274ec7460652f9c632c59addf24efb1684ef876";
+        sha512 = "sAP4LldeWNz0lNzmTird3uWfFDWWTeg6V/MsmyyLR9X1idwKBWIgt/ZvinqQldJm3LecKEs1emkbquO6PCiLVQ==";
       };
     }
     {
-      name = "_babel_code_frame___code_frame_7.12.11.tgz";
+      name = "_ampproject_remapping___remapping_2.1.2.tgz";
       path = fetchurl {
-        name = "_babel_code_frame___code_frame_7.12.11.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz";
-        sha1 = "f4ad435aa263db935b8f10f2c552d23fb716a63f";
+        name = "_ampproject_remapping___remapping_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.1.2.tgz";
+        sha512 = "hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==";
       };
     }
     {
-      name = "_babel_code_frame___code_frame_7.14.5.tgz";
+      name = "_babel_code_frame___code_frame_7.16.7.tgz";
       path = fetchurl {
-        name = "_babel_code_frame___code_frame_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.14.5.tgz";
-        sha1 = "23b08d740e83f49c5e59945fbf1b43e80bbf4edb";
+        name = "_babel_code_frame___code_frame_7.16.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.7.tgz";
+        sha512 = "iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==";
       };
     }
     {
-      name = "_babel_compat_data___compat_data_7.14.7.tgz";
+      name = "_babel_compat_data___compat_data_7.17.7.tgz";
       path = fetchurl {
-        name = "_babel_compat_data___compat_data_7.14.7.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.7.tgz";
-        sha1 = "7b047d7a3a89a67d2258dc61f604f098f1bc7e08";
+        name = "_babel_compat_data___compat_data_7.17.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.17.7.tgz";
+        sha512 = "p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==";
       };
     }
     {
-      name = "_babel_core___core_7.14.6.tgz";
+      name = "_babel_core___core_7.17.8.tgz";
       path = fetchurl {
-        name = "_babel_core___core_7.14.6.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/core/-/core-7.14.6.tgz";
-        sha1 = "e0814ec1a950032ff16c13a2721de39a8416fcab";
+        name = "_babel_core___core_7.17.8.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/core/-/core-7.17.8.tgz";
+        sha512 = "OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==";
       };
     }
     {
-      name = "_babel_generator___generator_7.14.5.tgz";
+      name = "_babel_generator___generator_7.17.7.tgz";
       path = fetchurl {
-        name = "_babel_generator___generator_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.14.5.tgz";
-        sha1 = "848d7b9f031caca9d0cd0af01b063f226f52d785";
+        name = "_babel_generator___generator_7.17.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.17.7.tgz";
+        sha512 = "oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==";
       };
     }
     {
-      name = "_babel_helper_compilation_targets___helper_compilation_targets_7.14.5.tgz";
+      name = "_babel_helper_compilation_targets___helper_compilation_targets_7.17.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_compilation_targets___helper_compilation_targets_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz";
-        sha1 = "7a99c5d0967911e972fe2c3411f7d5b498498ecf";
+        name = "_babel_helper_compilation_targets___helper_compilation_targets_7.17.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz";
+        sha512 = "UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==";
       };
     }
     {
-      name = "_babel_helper_function_name___helper_function_name_7.14.5.tgz";
+      name = "_babel_helper_environment_visitor___helper_environment_visitor_7.16.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_function_name___helper_function_name_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz";
-        sha1 = "89e2c474972f15d8e233b52ee8c480e2cfcd50c4";
+        name = "_babel_helper_environment_visitor___helper_environment_visitor_7.16.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz";
+        sha512 = "SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==";
       };
     }
     {
-      name = "_babel_helper_get_function_arity___helper_get_function_arity_7.14.5.tgz";
+      name = "_babel_helper_function_name___helper_function_name_7.16.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_get_function_arity___helper_get_function_arity_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz";
-        sha1 = "25fbfa579b0937eee1f3b805ece4ce398c431815";
+        name = "_babel_helper_function_name___helper_function_name_7.16.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz";
+        sha512 = "QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==";
       };
     }
     {
-      name = "_babel_helper_hoist_variables___helper_hoist_variables_7.14.5.tgz";
+      name = "_babel_helper_get_function_arity___helper_get_function_arity_7.16.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_hoist_variables___helper_hoist_variables_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz";
-        sha1 = "e0dd27c33a78e577d7c8884916a3e7ef1f7c7f8d";
+        name = "_babel_helper_get_function_arity___helper_get_function_arity_7.16.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz";
+        sha512 = "flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==";
       };
     }
     {
-      name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.14.7.tgz";
+      name = "_babel_helper_hoist_variables___helper_hoist_variables_7.16.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.14.7.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.7.tgz";
-        sha1 = "97e56244beb94211fe277bd818e3a329c66f7970";
+        name = "_babel_helper_hoist_variables___helper_hoist_variables_7.16.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz";
+        sha512 = "m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==";
       };
     }
     {
-      name = "_babel_helper_module_imports___helper_module_imports_7.14.5.tgz";
+      name = "_babel_helper_module_imports___helper_module_imports_7.16.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_module_imports___helper_module_imports_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz";
-        sha1 = "6d1a44df6a38c957aa7c312da076429f11b422f3";
+        name = "_babel_helper_module_imports___helper_module_imports_7.16.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz";
+        sha512 = "LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==";
       };
     }
     {
-      name = "_babel_helper_module_transforms___helper_module_transforms_7.14.5.tgz";
+      name = "_babel_helper_module_transforms___helper_module_transforms_7.17.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_module_transforms___helper_module_transforms_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.14.5.tgz";
-        sha1 = "7de42f10d789b423eb902ebd24031ca77cb1e10e";
+        name = "_babel_helper_module_transforms___helper_module_transforms_7.17.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz";
+        sha512 = "VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==";
       };
     }
     {
-      name = "_babel_helper_optimise_call_expression___helper_optimise_call_expression_7.14.5.tgz";
+      name = "_babel_helper_plugin_utils___helper_plugin_utils_7.16.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_optimise_call_expression___helper_optimise_call_expression_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz";
-        sha1 = "f27395a8619e0665b3f0364cddb41c25d71b499c";
+        name = "_babel_helper_plugin_utils___helper_plugin_utils_7.16.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz";
+        sha512 = "Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==";
       };
     }
     {
-      name = "_babel_helper_plugin_utils___helper_plugin_utils_7.14.5.tgz";
+      name = "_babel_helper_simple_access___helper_simple_access_7.17.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_plugin_utils___helper_plugin_utils_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz";
-        sha1 = "5ac822ce97eec46741ab70a517971e443a70c5a9";
+        name = "_babel_helper_simple_access___helper_simple_access_7.17.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz";
+        sha512 = "txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==";
       };
     }
     {
-      name = "_babel_helper_replace_supers___helper_replace_supers_7.14.5.tgz";
+      name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.16.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_replace_supers___helper_replace_supers_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz";
-        sha1 = "0ecc0b03c41cd567b4024ea016134c28414abb94";
+        name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.16.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz";
+        sha512 = "xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==";
       };
     }
     {
-      name = "_babel_helper_simple_access___helper_simple_access_7.14.5.tgz";
+      name = "_babel_helper_validator_identifier___helper_validator_identifier_7.16.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_simple_access___helper_simple_access_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.14.5.tgz";
-        sha1 = "66ea85cf53ba0b4e588ba77fc813f53abcaa41c4";
+        name = "_babel_helper_validator_identifier___helper_validator_identifier_7.16.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz";
+        sha512 = "hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==";
       };
     }
     {
-      name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.14.5.tgz";
+      name = "_babel_helper_validator_option___helper_validator_option_7.16.7.tgz";
       path = fetchurl {
-        name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz";
-        sha1 = "22b23a54ef51c2b7605d851930c1976dd0bc693a";
+        name = "_babel_helper_validator_option___helper_validator_option_7.16.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz";
+        sha512 = "TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==";
       };
     }
     {
-      name = "_babel_helper_validator_identifier___helper_validator_identifier_7.14.5.tgz";
+      name = "_babel_helpers___helpers_7.17.8.tgz";
       path = fetchurl {
-        name = "_babel_helper_validator_identifier___helper_validator_identifier_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz";
-        sha1 = "d0f0e277c512e0c938277faa85a3968c9a44c0e8";
+        name = "_babel_helpers___helpers_7.17.8.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.17.8.tgz";
+        sha512 = "QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==";
       };
     }
     {
-      name = "_babel_helper_validator_option___helper_validator_option_7.14.5.tgz";
+      name = "_babel_highlight___highlight_7.16.10.tgz";
       path = fetchurl {
-        name = "_babel_helper_validator_option___helper_validator_option_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz";
-        sha1 = "6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3";
+        name = "_babel_highlight___highlight_7.16.10.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.10.tgz";
+        sha512 = "5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==";
       };
     }
     {
-      name = "_babel_helpers___helpers_7.14.6.tgz";
+      name = "_babel_parser___parser_7.17.8.tgz";
       path = fetchurl {
-        name = "_babel_helpers___helpers_7.14.6.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.14.6.tgz";
-        sha1 = "5b58306b95f1b47e2a0199434fa8658fa6c21635";
-      };
-    }
-    {
-      name = "_babel_highlight___highlight_7.14.5.tgz";
-      path = fetchurl {
-        name = "_babel_highlight___highlight_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz";
-        sha1 = "6861a52f03966405001f6aa534a01a24d99e8cd9";
-      };
-    }
-    {
-      name = "_babel_parser___parser_7.14.7.tgz";
-      path = fetchurl {
-        name = "_babel_parser___parser_7.14.7.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.7.tgz";
-        sha1 = "6099720c8839ca865a2637e6c85852ead0bdb595";
+        name = "_babel_parser___parser_7.17.8.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.17.8.tgz";
+        sha512 = "BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==";
       };
     }
     {
@@ -190,7 +174,7 @@
       path = fetchurl {
         name = "_babel_plugin_syntax_async_generators___plugin_syntax_async_generators_7.8.4.tgz";
         url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz";
-        sha1 = "a983fb1aeb2ec3f6ed042a210f640e90e786fe0d";
+        sha512 = "tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==";
       };
     }
     {
@@ -198,7 +182,7 @@
       path = fetchurl {
         name = "_babel_plugin_syntax_bigint___plugin_syntax_bigint_7.8.3.tgz";
         url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz";
-        sha1 = "4c9a6f669f5d0cdf1b90a1671e9a146be5300cea";
+        sha512 = "wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==";
       };
     }
     {
@@ -206,7 +190,7 @@
       path = fetchurl {
         name = "_babel_plugin_syntax_class_properties___plugin_syntax_class_properties_7.12.13.tgz";
         url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz";
-        sha1 = "b5c987274c4a3a82b89714796931a6b53544ae10";
+        sha512 = "fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==";
       };
     }
     {
@@ -214,7 +198,7 @@
       path = fetchurl {
         name = "_babel_plugin_syntax_import_meta___plugin_syntax_import_meta_7.10.4.tgz";
         url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz";
-        sha1 = "ee601348c370fa334d2207be158777496521fd51";
+        sha512 = "Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==";
       };
     }
     {
@@ -222,7 +206,7 @@
       path = fetchurl {
         name = "_babel_plugin_syntax_json_strings___plugin_syntax_json_strings_7.8.3.tgz";
         url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz";
-        sha1 = "01ca21b668cd8218c9e640cb6dd88c5412b2c96a";
+        sha512 = "lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==";
       };
     }
     {
@@ -230,7 +214,7 @@
       path = fetchurl {
         name = "_babel_plugin_syntax_logical_assignment_operators___plugin_syntax_logical_assignment_operators_7.10.4.tgz";
         url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz";
-        sha1 = "ca91ef46303530448b906652bac2e9fe9941f699";
+        sha512 = "d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==";
       };
     }
     {
@@ -238,7 +222,7 @@
       path = fetchurl {
         name = "_babel_plugin_syntax_nullish_coalescing_operator___plugin_syntax_nullish_coalescing_operator_7.8.3.tgz";
         url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz";
-        sha1 = "167ed70368886081f74b5c36c65a88c03b66d1a9";
+        sha512 = "aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==";
       };
     }
     {
@@ -246,7 +230,7 @@
       path = fetchurl {
         name = "_babel_plugin_syntax_numeric_separator___plugin_syntax_numeric_separator_7.10.4.tgz";
         url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz";
-        sha1 = "b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97";
+        sha512 = "9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==";
       };
     }
     {
@@ -254,7 +238,7 @@
       path = fetchurl {
         name = "_babel_plugin_syntax_object_rest_spread___plugin_syntax_object_rest_spread_7.8.3.tgz";
         url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz";
-        sha1 = "60e225edcbd98a640332a2e72dd3e66f1af55871";
+        sha512 = "XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==";
       };
     }
     {
@@ -262,7 +246,7 @@
       path = fetchurl {
         name = "_babel_plugin_syntax_optional_catch_binding___plugin_syntax_optional_catch_binding_7.8.3.tgz";
         url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz";
-        sha1 = "6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1";
+        sha512 = "6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==";
       };
     }
     {
@@ -270,7 +254,7 @@
       path = fetchurl {
         name = "_babel_plugin_syntax_optional_chaining___plugin_syntax_optional_chaining_7.8.3.tgz";
         url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz";
-        sha1 = "4f69c2ab95167e0180cd5336613f8c5788f7d48a";
+        sha512 = "KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==";
       };
     }
     {
@@ -278,39 +262,39 @@
       path = fetchurl {
         name = "_babel_plugin_syntax_top_level_await___plugin_syntax_top_level_await_7.14.5.tgz";
         url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz";
-        sha1 = "c1cfdadc35a646240001f06138247b741c34d94c";
+        sha512 = "hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==";
       };
     }
     {
-      name = "_babel_plugin_syntax_typescript___plugin_syntax_typescript_7.14.5.tgz";
+      name = "_babel_plugin_syntax_typescript___plugin_syntax_typescript_7.16.7.tgz";
       path = fetchurl {
-        name = "_babel_plugin_syntax_typescript___plugin_syntax_typescript_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz";
-        sha1 = "b82c6ce471b165b5ce420cf92914d6fb46225716";
+        name = "_babel_plugin_syntax_typescript___plugin_syntax_typescript_7.16.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.7.tgz";
+        sha512 = "YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==";
       };
     }
     {
-      name = "_babel_template___template_7.14.5.tgz";
+      name = "_babel_template___template_7.16.7.tgz";
       path = fetchurl {
-        name = "_babel_template___template_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.14.5.tgz";
-        sha1 = "a9bc9d8b33354ff6e55a9c60d1109200a68974f4";
+        name = "_babel_template___template_7.16.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.16.7.tgz";
+        sha512 = "I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==";
       };
     }
     {
-      name = "_babel_traverse___traverse_7.14.7.tgz";
+      name = "_babel_traverse___traverse_7.17.3.tgz";
       path = fetchurl {
-        name = "_babel_traverse___traverse_7.14.7.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.14.7.tgz";
-        sha1 = "64007c9774cfdc3abd23b0780bc18a3ce3631753";
+        name = "_babel_traverse___traverse_7.17.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.17.3.tgz";
+        sha512 = "5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==";
       };
     }
     {
-      name = "_babel_types___types_7.14.5.tgz";
+      name = "_babel_types___types_7.17.0.tgz";
       path = fetchurl {
-        name = "_babel_types___types_7.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.14.5.tgz";
-        sha1 = "3bb997ba829a2104cedb20689c4a5b8121d383ff";
+        name = "_babel_types___types_7.17.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.17.0.tgz";
+        sha512 = "TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==";
       };
     }
     {
@@ -318,47 +302,55 @@
       path = fetchurl {
         name = "_bcoe_v8_coverage___v8_coverage_0.2.3.tgz";
         url  = "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz";
-        sha1 = "75a2e8b51cb758a7553d6804a5932d7aace75c39";
+        sha512 = "0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==";
+      };
+    }
+    {
+      name = "_cliqz_adblocker_content___adblocker_content_1.23.7.tgz";
+      path = fetchurl {
+        name = "_cliqz_adblocker_content___adblocker_content_1.23.7.tgz";
+        url  = "https://registry.yarnpkg.com/@cliqz/adblocker-content/-/adblocker-content-1.23.7.tgz";
+        sha512 = "tgCFcWhBty+WI3ObYBLDk56i1G7nScd5TBAOXlQf2EIbVJ+DC+G0YE91YHhQpzfy4ySI/wRGyEHrKzTRgmkuKQ==";
       };
     }
     {
-      name = "_cliqz_adblocker_content___adblocker_content_1.22.2.tgz";
+      name = "_cliqz_adblocker_electron_preload___adblocker_electron_preload_1.23.6.tgz";
       path = fetchurl {
-        name = "_cliqz_adblocker_content___adblocker_content_1.22.2.tgz";
-        url  = "https://registry.yarnpkg.com/@cliqz/adblocker-content/-/adblocker-content-1.22.2.tgz";
-        sha1 = "643849d5f08c167eb84a2e7e3f1f9fbc41a3889b";
+        name = "_cliqz_adblocker_electron_preload___adblocker_electron_preload_1.23.6.tgz";
+        url  = "https://registry.yarnpkg.com/@cliqz/adblocker-electron-preload/-/adblocker-electron-preload-1.23.6.tgz";
+        sha512 = "xVBrIqfvcuh2Y07ZkEogzgkyqJuZvOqhRoFnuTyW2q97AmWAGLT6IjEGjl/vX7vMP0Y1b8wubdjI3VHnKvNKDg==";
       };
     }
     {
-      name = "_cliqz_adblocker_electron_preload___adblocker_electron_preload_1.22.2.tgz";
+      name = "_cliqz_adblocker_electron_preload___adblocker_electron_preload_1.23.7.tgz";
       path = fetchurl {
-        name = "_cliqz_adblocker_electron_preload___adblocker_electron_preload_1.22.2.tgz";
-        url  = "https://registry.yarnpkg.com/@cliqz/adblocker-electron-preload/-/adblocker-electron-preload-1.22.2.tgz";
-        sha1 = "eea674767a60abe4e5f9ccb46188d33656f551d0";
+        name = "_cliqz_adblocker_electron_preload___adblocker_electron_preload_1.23.7.tgz";
+        url  = "https://registry.yarnpkg.com/@cliqz/adblocker-electron-preload/-/adblocker-electron-preload-1.23.7.tgz";
+        sha512 = "bGWf4r5q4savAGs3Kl4aR7XBH4J9AmrErDmcYu+tJk9V3rhTGXUi29kMl0D5x2JimhRmnKOeJ/Q2GJSUjvnmsg==";
       };
     }
     {
-      name = "_cliqz_adblocker_electron___adblocker_electron_1.22.2.tgz";
+      name = "_cliqz_adblocker_electron___adblocker_electron_1.23.6.tgz";
       path = fetchurl {
-        name = "_cliqz_adblocker_electron___adblocker_electron_1.22.2.tgz";
-        url  = "https://registry.yarnpkg.com/@cliqz/adblocker-electron/-/adblocker-electron-1.22.2.tgz";
-        sha1 = "85af3b49f7f653e6fb0d008b6523e3b3ba0dd41e";
+        name = "_cliqz_adblocker_electron___adblocker_electron_1.23.6.tgz";
+        url  = "https://registry.yarnpkg.com/@cliqz/adblocker-electron/-/adblocker-electron-1.23.6.tgz";
+        sha512 = "wzkCfBCo5RvRanzsVOu65xHW9GAUDqsg+tP8GYld6/hgMMb96KJZJVpvrvwvsneAm9T55QE4ef1utZbIIwltqA==";
       };
     }
     {
-      name = "_cliqz_adblocker_extended_selectors___adblocker_extended_selectors_1.22.2.tgz";
+      name = "_cliqz_adblocker_extended_selectors___adblocker_extended_selectors_1.23.7.tgz";
       path = fetchurl {
-        name = "_cliqz_adblocker_extended_selectors___adblocker_extended_selectors_1.22.2.tgz";
-        url  = "https://registry.yarnpkg.com/@cliqz/adblocker-extended-selectors/-/adblocker-extended-selectors-1.22.2.tgz";
-        sha1 = "1cad3c1569b765d9e7f8672c85b2a7b1e8e9ee90";
+        name = "_cliqz_adblocker_extended_selectors___adblocker_extended_selectors_1.23.7.tgz";
+        url  = "https://registry.yarnpkg.com/@cliqz/adblocker-extended-selectors/-/adblocker-extended-selectors-1.23.7.tgz";
+        sha512 = "3y1eeHHZS3qvvv3dDZDjVVr6g03GeUBbDExCW/GOiHdo+qKYmM2K40EaLN+Upzc2ppuum9UKvzsHxG8Hs9R/kQ==";
       };
     }
     {
-      name = "_cliqz_adblocker___adblocker_1.22.2.tgz";
+      name = "_cliqz_adblocker___adblocker_1.23.7.tgz";
       path = fetchurl {
-        name = "_cliqz_adblocker___adblocker_1.22.2.tgz";
-        url  = "https://registry.yarnpkg.com/@cliqz/adblocker/-/adblocker-1.22.2.tgz";
-        sha1 = "99a14d56327734d3083a077d96fe7b91c236bf7a";
+        name = "_cliqz_adblocker___adblocker_1.23.7.tgz";
+        url  = "https://registry.yarnpkg.com/@cliqz/adblocker/-/adblocker-1.23.7.tgz";
+        sha512 = "HUvC7CcmNbcIftcRhFeuQhHSpyNdOVdXazXDL0+avvWR0cxlI9zcC8yHMRKjxeY6nsiOXdyEFby+V5KgJvfwaQ==";
       };
     }
     {
@@ -366,15 +358,15 @@
       path = fetchurl {
         name = "_develar_schema_utils___schema_utils_2.6.5.tgz";
         url  = "https://registry.yarnpkg.com/@develar/schema-utils/-/schema-utils-2.6.5.tgz";
-        sha1 = "3ece22c5838402419a6e0425f85742b961d9b6c6";
+        sha512 = "0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==";
       };
     }
     {
-      name = "_electron_get___get_1.12.4.tgz";
+      name = "_electron_get___get_1.14.1.tgz";
       path = fetchurl {
-        name = "_electron_get___get_1.12.4.tgz";
-        url  = "https://registry.yarnpkg.com/@electron/get/-/get-1.12.4.tgz";
-        sha1 = "a5971113fc1bf8fa12a8789dc20152a7359f06ab";
+        name = "_electron_get___get_1.14.1.tgz";
+        url  = "https://registry.yarnpkg.com/@electron/get/-/get-1.14.1.tgz";
+        sha512 = "BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw==";
       };
     }
     {
@@ -382,15 +374,31 @@
       path = fetchurl {
         name = "_electron_universal___universal_1.0.5.tgz";
         url  = "https://registry.yarnpkg.com/@electron/universal/-/universal-1.0.5.tgz";
-        sha1 = "b812340e4ef21da2b3ee77b2b4d35c9b86defe37";
+        sha512 = "zX9O6+jr2NMyAdSkwEUlyltiI4/EBLu2Ls/VD3pUQdi3cAYeYfdQnT2AJJ38HE4QxLccbU13LSpccw1IWlkyag==";
+      };
+    }
+    {
+      name = "_eslint_eslintrc___eslintrc_1.2.1.tgz";
+      path = fetchurl {
+        name = "_eslint_eslintrc___eslintrc_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.2.1.tgz";
+        sha512 = "bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==";
+      };
+    }
+    {
+      name = "_humanwhocodes_config_array___config_array_0.9.5.tgz";
+      path = fetchurl {
+        name = "_humanwhocodes_config_array___config_array_0.9.5.tgz";
+        url  = "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.9.5.tgz";
+        sha512 = "ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==";
       };
     }
     {
-      name = "_eslint_eslintrc___eslintrc_0.4.2.tgz";
+      name = "_humanwhocodes_object_schema___object_schema_1.2.1.tgz";
       path = fetchurl {
-        name = "_eslint_eslintrc___eslintrc_0.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.2.tgz";
-        sha1 = "f63d0ef06f5c0c57d76c4ab5f63d3835c51b0179";
+        name = "_humanwhocodes_object_schema___object_schema_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz";
+        sha512 = "ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==";
       };
     }
     {
@@ -398,7 +406,7 @@
       path = fetchurl {
         name = "_istanbuljs_load_nyc_config___load_nyc_config_1.1.0.tgz";
         url  = "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz";
-        sha1 = "fd3db1d59ecf7cf121e80650bb86712f9b55eced";
+        sha512 = "VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==";
       };
     }
     {
@@ -406,95 +414,119 @@
       path = fetchurl {
         name = "_istanbuljs_schema___schema_0.1.3.tgz";
         url  = "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz";
-        sha1 = "e45e384e4b8ec16bce2fd903af78450f6bf7ec98";
+        sha512 = "ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==";
       };
     }
     {
-      name = "_jest_console___console_27.0.6.tgz";
+      name = "_jest_console___console_27.5.1.tgz";
       path = fetchurl {
-        name = "_jest_console___console_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/console/-/console-27.0.6.tgz";
-        sha1 = "3eb72ea80897495c3d73dd97aab7f26770e2260f";
+        name = "_jest_console___console_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/console/-/console-27.5.1.tgz";
+        sha512 = "kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==";
       };
     }
     {
-      name = "_jest_core___core_27.0.6.tgz";
+      name = "_jest_core___core_27.5.1.tgz";
       path = fetchurl {
-        name = "_jest_core___core_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/core/-/core-27.0.6.tgz";
-        sha1 = "c5f642727a0b3bf0f37c4b46c675372d0978d4a1";
+        name = "_jest_core___core_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/core/-/core-27.5.1.tgz";
+        sha512 = "AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==";
       };
     }
     {
-      name = "_jest_environment___environment_27.0.6.tgz";
+      name = "_jest_environment___environment_27.5.1.tgz";
       path = fetchurl {
-        name = "_jest_environment___environment_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/environment/-/environment-27.0.6.tgz";
-        sha1 = "ee293fe996db01d7d663b8108fa0e1ff436219d2";
+        name = "_jest_environment___environment_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/environment/-/environment-27.5.1.tgz";
+        sha512 = "/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==";
       };
     }
     {
-      name = "_jest_fake_timers___fake_timers_27.0.6.tgz";
+      name = "_jest_fake_timers___fake_timers_27.5.1.tgz";
       path = fetchurl {
-        name = "_jest_fake_timers___fake_timers_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.0.6.tgz";
-        sha1 = "cbad52f3fe6abe30e7acb8cd5fa3466b9588e3df";
+        name = "_jest_fake_timers___fake_timers_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz";
+        sha512 = "/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==";
       };
     }
     {
-      name = "_jest_globals___globals_27.0.6.tgz";
+      name = "_jest_globals___globals_27.5.1.tgz";
       path = fetchurl {
-        name = "_jest_globals___globals_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/globals/-/globals-27.0.6.tgz";
-        sha1 = "48e3903f99a4650673d8657334d13c9caf0e8f82";
+        name = "_jest_globals___globals_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/globals/-/globals-27.5.1.tgz";
+        sha512 = "ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==";
       };
     }
     {
-      name = "_jest_reporters___reporters_27.0.6.tgz";
+      name = "_jest_reporters___reporters_27.5.1.tgz";
       path = fetchurl {
-        name = "_jest_reporters___reporters_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.0.6.tgz";
-        sha1 = "91e7f2d98c002ad5df94d5b5167c1eb0b9fd5b00";
+        name = "_jest_reporters___reporters_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.5.1.tgz";
+        sha512 = "cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==";
       };
     }
     {
-      name = "_jest_source_map___source_map_27.0.6.tgz";
+      name = "_jest_source_map___source_map_27.5.1.tgz";
       path = fetchurl {
-        name = "_jest_source_map___source_map_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.0.6.tgz";
-        sha1 = "be9e9b93565d49b0548b86e232092491fb60551f";
+        name = "_jest_source_map___source_map_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.5.1.tgz";
+        sha512 = "y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==";
       };
     }
     {
-      name = "_jest_test_result___test_result_27.0.6.tgz";
+      name = "_jest_test_result___test_result_27.5.1.tgz";
       path = fetchurl {
-        name = "_jest_test_result___test_result_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.0.6.tgz";
-        sha1 = "3fa42015a14e4fdede6acd042ce98c7f36627051";
+        name = "_jest_test_result___test_result_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.5.1.tgz";
+        sha512 = "EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==";
       };
     }
     {
-      name = "_jest_test_sequencer___test_sequencer_27.0.6.tgz";
+      name = "_jest_test_sequencer___test_sequencer_27.5.1.tgz";
       path = fetchurl {
-        name = "_jest_test_sequencer___test_sequencer_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.0.6.tgz";
-        sha1 = "80a913ed7a1130545b1cd777ff2735dd3af5d34b";
+        name = "_jest_test_sequencer___test_sequencer_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz";
+        sha512 = "LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==";
       };
     }
     {
-      name = "_jest_transform___transform_27.0.6.tgz";
+      name = "_jest_transform___transform_27.5.1.tgz";
       path = fetchurl {
-        name = "_jest_transform___transform_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/transform/-/transform-27.0.6.tgz";
-        sha1 = "189ad7107413208f7600f4719f81dd2f7278cc95";
+        name = "_jest_transform___transform_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/transform/-/transform-27.5.1.tgz";
+        sha512 = "ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==";
       };
     }
     {
-      name = "_jest_types___types_27.0.6.tgz";
+      name = "_jest_types___types_27.5.1.tgz";
       path = fetchurl {
-        name = "_jest_types___types_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/types/-/types-27.0.6.tgz";
-        sha1 = "9a992bc517e0c49f035938b8549719c2de40706b";
+        name = "_jest_types___types_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz";
+        sha512 = "Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==";
+      };
+    }
+    {
+      name = "_jridgewell_resolve_uri___resolve_uri_3.0.5.tgz";
+      path = fetchurl {
+        name = "_jridgewell_resolve_uri___resolve_uri_3.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz";
+        sha512 = "VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==";
+      };
+    }
+    {
+      name = "_jridgewell_sourcemap_codec___sourcemap_codec_1.4.11.tgz";
+      path = fetchurl {
+        name = "_jridgewell_sourcemap_codec___sourcemap_codec_1.4.11.tgz";
+        url  = "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz";
+        sha512 = "Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==";
+      };
+    }
+    {
+      name = "_jridgewell_trace_mapping___trace_mapping_0.3.4.tgz";
+      path = fetchurl {
+        name = "_jridgewell_trace_mapping___trace_mapping_0.3.4.tgz";
+        url  = "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz";
+        sha512 = "vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==";
       };
     }
     {
@@ -502,7 +534,7 @@
       path = fetchurl {
         name = "_malept_cross_spawn_promise___cross_spawn_promise_1.1.1.tgz";
         url  = "https://registry.yarnpkg.com/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz";
-        sha1 = "504af200af6b98e198bce768bc1730c6936ae01d";
+        sha512 = "RTBGWL5FWQcg9orDOCcp4LvItNzUPcyEU9bwaeJX0rJ1IQxzucC48Y0/sQLp/g6t99IQgAlGIaesJS+gTn7tVQ==";
       };
     }
     {
@@ -510,15 +542,7 @@
       path = fetchurl {
         name = "_malept_flatpak_bundler___flatpak_bundler_0.4.0.tgz";
         url  = "https://registry.yarnpkg.com/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz";
-        sha1 = "e8a32c30a95d20c2b1bb635cc580981a06389858";
-      };
-    }
-    {
-      name = "_mdn_browser_compat_data___browser_compat_data_2.0.7.tgz";
-      path = fetchurl {
-        name = "_mdn_browser_compat_data___browser_compat_data_2.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/@mdn/browser-compat-data/-/browser-compat-data-2.0.7.tgz";
-        sha1 = "72ec37b9c1e00ce0b4e0309d753be18e2da12ee3";
+        sha512 = "9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==";
       };
     }
     {
@@ -526,7 +550,7 @@
       path = fetchurl {
         name = "_remusao_guess_url_type___guess_url_type_1.2.1.tgz";
         url  = "https://registry.yarnpkg.com/@remusao/guess-url-type/-/guess-url-type-1.2.1.tgz";
-        sha1 = "b3e7c32abdf98d0fb4f93cc67cad580b5fe4ba57";
+        sha512 = "rbOqre2jW8STjheOsOaQHLgYBaBZ9Owbdt8NO7WvNZftJlaG3y/K9oOkl8ZUpuFBisIhmBuMEW6c+YrQl5inRA==";
       };
     }
     {
@@ -534,7 +558,7 @@
       path = fetchurl {
         name = "_remusao_small___small_1.2.1.tgz";
         url  = "https://registry.yarnpkg.com/@remusao/small/-/small-1.2.1.tgz";
-        sha1 = "63bfe4548832289f94ac868a0c305970c9a0e5f9";
+        sha512 = "7MjoGt0TJMVw1GPKgWq6SJPws1SLsUXQRa43Umht+nkyw2jnpy3WpiLNqGdwo5rHr5Wp9B2W/Pm5RQp656UJdw==";
       };
     }
     {
@@ -542,7 +566,7 @@
       path = fetchurl {
         name = "_remusao_smaz_compress___smaz_compress_1.9.1.tgz";
         url  = "https://registry.yarnpkg.com/@remusao/smaz-compress/-/smaz-compress-1.9.1.tgz";
-        sha1 = "fc75eaf9bcac2d58bc4c3d518183a7cb9612d275";
+        sha512 = "E2f48TwloQu3r6BdLOGF2aczeH7bJ/32oJGqvzT9SKur0cuUnLcZ7ZXP874E2fwmdE+cXzfC7bKzp79cDnmeyw==";
       };
     }
     {
@@ -550,7 +574,7 @@
       path = fetchurl {
         name = "_remusao_smaz_decompress___smaz_decompress_1.9.1.tgz";
         url  = "https://registry.yarnpkg.com/@remusao/smaz-decompress/-/smaz-decompress-1.9.1.tgz";
-        sha1 = "8094f997e8fb591a678cda9cf08c209c825eba5b";
+        sha512 = "TfjKKprYe3n47od8auhvJ/Ikj9kQTbDTe71ynKlxslrvvUhlIV3VQSuwYuMWMbdz1fIs0H/fxCN1Z8/H3km6/A==";
       };
     }
     {
@@ -558,7 +582,7 @@
       path = fetchurl {
         name = "_remusao_smaz___smaz_1.9.1.tgz";
         url  = "https://registry.yarnpkg.com/@remusao/smaz/-/smaz-1.9.1.tgz";
-        sha1 = "a2b9b045385f81e1615a68d932b7cc8b04c9db8d";
+        sha512 = "e6BLuP8oaXCZ9+v46Is4ilAZ/Vq6YLgmBP204Ixgk1qTjXmqvFYG7+AS7v9nsZdGOy96r9DWGFbbDVgMxwu1rA==";
       };
     }
     {
@@ -566,7 +590,7 @@
       path = fetchurl {
         name = "_remusao_trie___trie_1.4.1.tgz";
         url  = "https://registry.yarnpkg.com/@remusao/trie/-/trie-1.4.1.tgz";
-        sha1 = "755d09f8a007476334e611f42719b2d581f00720";
+        sha512 = "yvwa+aCyYI/UjeD39BnpMypG8N06l86wIDW1/PAc6ihBRnodIfZDwccxQN3n1t74wduzaz74m4ZMHZnB06567Q==";
       };
     }
     {
@@ -574,7 +598,7 @@
       path = fetchurl {
         name = "_sindresorhus_is___is_0.14.0.tgz";
         url  = "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz";
-        sha1 = "9fb3a3cf3132328151f353de4632e01e52102bea";
+        sha512 = "9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==";
       };
     }
     {
@@ -582,15 +606,15 @@
       path = fetchurl {
         name = "_sinonjs_commons___commons_1.8.3.tgz";
         url  = "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz";
-        sha1 = "3802ddd21a50a949b6721ddd72da36e67e7f1b2d";
+        sha512 = "xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==";
       };
     }
     {
-      name = "_sinonjs_fake_timers___fake_timers_7.1.2.tgz";
+      name = "_sinonjs_fake_timers___fake_timers_8.1.0.tgz";
       path = fetchurl {
-        name = "_sinonjs_fake_timers___fake_timers_7.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz";
-        sha1 = "2524eae70c4910edccf99b2f4e6efc5894aff7b5";
+        name = "_sinonjs_fake_timers___fake_timers_8.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz";
+        sha512 = "OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==";
       };
     }
     {
@@ -598,7 +622,7 @@
       path = fetchurl {
         name = "_szmarczak_http_timer___http_timer_1.1.2.tgz";
         url  = "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz";
-        sha1 = "b1665e2c461a2cd92f4c1bbf50d5454de0d4b421";
+        sha512 = "XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==";
       };
     }
     {
@@ -606,63 +630,71 @@
       path = fetchurl {
         name = "_tootallnate_once___once_1.1.2.tgz";
         url  = "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz";
-        sha1 = "ccb91445360179a04e7fe6aff78c00ffc1eeaf82";
+        sha512 = "RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==";
+      };
+    }
+    {
+      name = "_tootallnate_once___once_2.0.0.tgz";
+      path = fetchurl {
+        name = "_tootallnate_once___once_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz";
+        sha512 = "XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==";
       };
     }
     {
-      name = "_types_babel__core___babel__core_7.1.14.tgz";
+      name = "_types_babel__core___babel__core_7.1.19.tgz";
       path = fetchurl {
-        name = "_types_babel__core___babel__core_7.1.14.tgz";
-        url  = "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.14.tgz";
-        sha1 = "faaeefc4185ec71c389f4501ee5ec84b170cc402";
+        name = "_types_babel__core___babel__core_7.1.19.tgz";
+        url  = "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.19.tgz";
+        sha512 = "WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==";
       };
     }
     {
-      name = "_types_babel__generator___babel__generator_7.6.2.tgz";
+      name = "_types_babel__generator___babel__generator_7.6.4.tgz";
       path = fetchurl {
-        name = "_types_babel__generator___babel__generator_7.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.2.tgz";
-        sha1 = "f3d71178e187858f7c45e30380f8f1b7415a12d8";
+        name = "_types_babel__generator___babel__generator_7.6.4.tgz";
+        url  = "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz";
+        sha512 = "tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==";
       };
     }
     {
-      name = "_types_babel__template___babel__template_7.4.0.tgz";
+      name = "_types_babel__template___babel__template_7.4.1.tgz";
       path = fetchurl {
-        name = "_types_babel__template___babel__template_7.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.0.tgz";
-        sha1 = "0c888dd70b3ee9eebb6e4f200e809da0076262be";
+        name = "_types_babel__template___babel__template_7.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz";
+        sha512 = "azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==";
       };
     }
     {
-      name = "_types_babel__traverse___babel__traverse_7.14.0.tgz";
+      name = "_types_babel__traverse___babel__traverse_7.14.2.tgz";
       path = fetchurl {
-        name = "_types_babel__traverse___babel__traverse_7.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.14.0.tgz";
-        sha1 = "a34277cf8acbd3185ea74129e1f100491eb1da7f";
+        name = "_types_babel__traverse___babel__traverse_7.14.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.14.2.tgz";
+        sha512 = "K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==";
       };
     }
     {
-      name = "_types_chrome___chrome_0.0.145.tgz";
+      name = "_types_chrome___chrome_0.0.180.tgz";
       path = fetchurl {
-        name = "_types_chrome___chrome_0.0.145.tgz";
-        url  = "https://registry.yarnpkg.com/@types/chrome/-/chrome-0.0.145.tgz";
-        sha1 = "6c53ae0af5f25350b07bfd24cf459b5fe65cd9b8";
+        name = "_types_chrome___chrome_0.0.180.tgz";
+        url  = "https://registry.yarnpkg.com/@types/chrome/-/chrome-0.0.180.tgz";
+        sha512 = "A/CuuKAaHq2CHEpYBAtl0lp2ib7TTXK7VjJI4q+c+1U/HDvZLJ8IlsdEDzzHdvkNdh36bGONxrMnO9YZrKqbAw==";
       };
     }
     {
-      name = "_types_debug___debug_4.1.5.tgz";
+      name = "_types_debug___debug_4.1.7.tgz";
       path = fetchurl {
-        name = "_types_debug___debug_4.1.5.tgz";
-        url  = "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.5.tgz";
-        sha1 = "b14efa8852b7768d898906613c23f688713e02cd";
+        name = "_types_debug___debug_4.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.7.tgz";
+        sha512 = "9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==";
       };
     }
     {
-      name = "_types_filesystem___filesystem_0.0.31.tgz";
+      name = "_types_filesystem___filesystem_0.0.32.tgz";
       path = fetchurl {
-        name = "_types_filesystem___filesystem_0.0.31.tgz";
-        url  = "https://registry.yarnpkg.com/@types/filesystem/-/filesystem-0.0.31.tgz";
-        sha1 = "121a1ded274a2dc731d5e0d90163a920ad6a9ef1";
+        name = "_types_filesystem___filesystem_0.0.32.tgz";
+        url  = "https://registry.yarnpkg.com/@types/filesystem/-/filesystem-0.0.32.tgz";
+        sha512 = "Yuf4jR5YYMR2DVgwuCiP11s0xuVRyPKmz8vo6HBY3CGdeMj8af93CFZX+T82+VD1+UqHOxTq31lO7MI7lepBtQ==";
       };
     }
     {
@@ -670,31 +702,31 @@
       path = fetchurl {
         name = "_types_filewriter___filewriter_0.0.29.tgz";
         url  = "https://registry.yarnpkg.com/@types/filewriter/-/filewriter-0.0.29.tgz";
-        sha1 = "a48795ecadf957f6c0d10e0c34af86c098fa5bee";
+        sha512 = "BsPXH/irW0ht0Ji6iw/jJaK8Lj3FJemon2gvEqHKpCdDCeemHa+rI3WBGq5z7cDMZgoLjY40oninGxqk+8NzNQ==";
       };
     }
     {
-      name = "_types_firefox_webext_browser___firefox_webext_browser_82.0.0.tgz";
+      name = "_types_firefox_webext_browser___firefox_webext_browser_94.0.1.tgz";
       path = fetchurl {
-        name = "_types_firefox_webext_browser___firefox_webext_browser_82.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/firefox-webext-browser/-/firefox-webext-browser-82.0.0.tgz";
-        sha1 = "4d0f5cfebd7321d2cbf0ccfb6032570f0138b958";
+        name = "_types_firefox_webext_browser___firefox_webext_browser_94.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/firefox-webext-browser/-/firefox-webext-browser-94.0.1.tgz";
+        sha512 = "I6iHRQJSTZ+gYt2IxdH2RRAMvcUyK8v5Ig7fHQR0IwUNYP7hz9+cziBVIKxLCO6XI7fiyRsNOWObfl3/4Js2Lg==";
       };
     }
     {
-      name = "_types_fs_extra___fs_extra_9.0.11.tgz";
+      name = "_types_fs_extra___fs_extra_9.0.13.tgz";
       path = fetchurl {
-        name = "_types_fs_extra___fs_extra_9.0.11.tgz";
-        url  = "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.11.tgz";
-        sha1 = "8cc99e103499eab9f347dbc6ca4e99fb8d2c2b87";
+        name = "_types_fs_extra___fs_extra_9.0.13.tgz";
+        url  = "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.13.tgz";
+        sha512 = "nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==";
       };
     }
     {
-      name = "_types_glob___glob_7.1.3.tgz";
+      name = "_types_glob___glob_7.2.0.tgz";
       path = fetchurl {
-        name = "_types_glob___glob_7.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.3.tgz";
-        sha1 = "e6ba80f36b7daad2c685acd9266382e68985c183";
+        name = "_types_glob___glob_7.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz";
+        sha512 = "ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==";
       };
     }
     {
@@ -702,23 +734,23 @@
       path = fetchurl {
         name = "_types_graceful_fs___graceful_fs_4.1.5.tgz";
         url  = "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz";
-        sha1 = "21ffba0d98da4350db64891f92a9e5db3cdb4e15";
+        sha512 = "anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==";
       };
     }
     {
-      name = "_types_har_format___har_format_1.2.6.tgz";
+      name = "_types_har_format___har_format_1.2.8.tgz";
       path = fetchurl {
-        name = "_types_har_format___har_format_1.2.6.tgz";
-        url  = "https://registry.yarnpkg.com/@types/har-format/-/har-format-1.2.6.tgz";
-        sha1 = "471c83acdf6a2ea429620daee4c6dc1784a0e85f";
+        name = "_types_har_format___har_format_1.2.8.tgz";
+        url  = "https://registry.yarnpkg.com/@types/har-format/-/har-format-1.2.8.tgz";
+        sha512 = "OP6L9VuZNdskgNN3zFQQ54ceYD8OLq5IbqO4VK91ORLfOm7WdT/CiT/pHEBSQEqCInJ2y3O6iCm/zGtPElpgJQ==";
       };
     }
     {
-      name = "_types_istanbul_lib_coverage___istanbul_lib_coverage_2.0.3.tgz";
+      name = "_types_istanbul_lib_coverage___istanbul_lib_coverage_2.0.4.tgz";
       path = fetchurl {
-        name = "_types_istanbul_lib_coverage___istanbul_lib_coverage_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz";
-        sha1 = "4ba8ddb720221f432e443bd5f9117fd22cfd4762";
+        name = "_types_istanbul_lib_coverage___istanbul_lib_coverage_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz";
+        sha512 = "z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==";
       };
     }
     {
@@ -726,7 +758,7 @@
       path = fetchurl {
         name = "_types_istanbul_lib_report___istanbul_lib_report_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz";
-        sha1 = "c14c24f18ea8190c118ee7562b7ff99a36552686";
+        sha512 = "plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==";
       };
     }
     {
@@ -734,31 +766,39 @@
       path = fetchurl {
         name = "_types_istanbul_reports___istanbul_reports_3.0.1.tgz";
         url  = "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz";
-        sha1 = "9153fe98bba2bd565a63add9436d6f0d7f8468ff";
+        sha512 = "c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==";
+      };
+    }
+    {
+      name = "_types_minimatch___minimatch_3.0.5.tgz";
+      path = fetchurl {
+        name = "_types_minimatch___minimatch_3.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz";
+        sha512 = "Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==";
       };
     }
     {
-      name = "_types_minimatch___minimatch_3.0.4.tgz";
+      name = "_types_ms___ms_0.7.31.tgz";
       path = fetchurl {
-        name = "_types_minimatch___minimatch_3.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.4.tgz";
-        sha1 = "f0ec25dbf2f0e4b18647313ac031134ca5b24b21";
+        name = "_types_ms___ms_0.7.31.tgz";
+        url  = "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.31.tgz";
+        sha512 = "iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==";
       };
     }
     {
-      name = "_types_node___node_15.12.5.tgz";
+      name = "_types_node___node_17.0.22.tgz";
       path = fetchurl {
-        name = "_types_node___node_15.12.5.tgz";
-        url  = "https://registry.yarnpkg.com/@types/node/-/node-15.12.5.tgz";
-        sha1 = "9a78318a45d75c9523d2396131bd3cca54b2d185";
+        name = "_types_node___node_17.0.22.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-17.0.22.tgz";
+        sha512 = "8FwbVoG4fy+ykY86XCAclKZDORttqE5/s7dyWZKLXTdv3vRy5HozBEinG5IqhvPXXzIZEcTVbuHlQEI6iuwcmw==";
       };
     }
     {
-      name = "_types_node___node_14.17.4.tgz";
+      name = "_types_node___node_14.18.12.tgz";
       path = fetchurl {
-        name = "_types_node___node_14.17.4.tgz";
-        url  = "https://registry.yarnpkg.com/@types/node/-/node-14.17.4.tgz";
-        sha1 = "218712242446fc868d0e007af29a4408c7765bc0";
+        name = "_types_node___node_14.18.12.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-14.18.12.tgz";
+        sha512 = "q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==";
       };
     }
     {
@@ -766,47 +806,55 @@
       path = fetchurl {
         name = "_types_plist___plist_3.0.2.tgz";
         url  = "https://registry.yarnpkg.com/@types/plist/-/plist-3.0.2.tgz";
-        sha1 = "61b3727bba0f5c462fe333542534a0c3e19ccb01";
+        sha512 = "ULqvZNGMv0zRFvqn8/4LSPtnmN4MfhlPNtJCTpKuIIxGVGZ2rYWzFXrvEBoh9CVyqSE7D6YFRJ1hydLHI6kbWw==";
       };
     }
     {
-      name = "_types_prettier___prettier_2.3.0.tgz";
+      name = "_types_prettier___prettier_2.4.4.tgz";
       path = fetchurl {
-        name = "_types_prettier___prettier_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.3.0.tgz";
-        sha1 = "2e8332cc7363f887d32ec5496b207d26ba8052bb";
+        name = "_types_prettier___prettier_2.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.4.tgz";
+        sha512 = "ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA==";
       };
     }
     {
-      name = "_types_stack_utils___stack_utils_2.0.0.tgz";
+      name = "_types_stack_utils___stack_utils_2.0.1.tgz";
       path = fetchurl {
-        name = "_types_stack_utils___stack_utils_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.0.tgz";
-        sha1 = "7036640b4e21cc2f259ae826ce843d277dad8cff";
+        name = "_types_stack_utils___stack_utils_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz";
+        sha512 = "Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==";
       };
     }
     {
-      name = "_types_verror___verror_1.10.4.tgz";
+      name = "_types_verror___verror_1.10.5.tgz";
       path = fetchurl {
-        name = "_types_verror___verror_1.10.4.tgz";
-        url  = "https://registry.yarnpkg.com/@types/verror/-/verror-1.10.4.tgz";
-        sha1 = "805c0612b3a0c124cf99f517364142946b74ba3b";
+        name = "_types_verror___verror_1.10.5.tgz";
+        url  = "https://registry.yarnpkg.com/@types/verror/-/verror-1.10.5.tgz";
+        sha512 = "9UjMCHK5GPgQRoNbqdLIAvAy0EInuiqbW0PBMtVP6B5B2HQJlvoJHM+KodPZMEjOa5VkSc+5LH7xy+cUzQdmHw==";
       };
     }
     {
-      name = "_types_yargs_parser___yargs_parser_20.2.0.tgz";
+      name = "_types_yargs_parser___yargs_parser_21.0.0.tgz";
       path = fetchurl {
-        name = "_types_yargs_parser___yargs_parser_20.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.0.tgz";
-        sha1 = "dd3e6699ba3237f0348cd085e4698780204842f9";
+        name = "_types_yargs_parser___yargs_parser_21.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz";
+        sha512 = "iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==";
       };
     }
     {
-      name = "_types_yargs___yargs_16.0.3.tgz";
+      name = "_types_yargs___yargs_16.0.4.tgz";
       path = fetchurl {
-        name = "_types_yargs___yargs_16.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.3.tgz";
-        sha1 = "4b6d35bb8e680510a7dc2308518a80ee1ef27e01";
+        name = "_types_yargs___yargs_16.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.4.tgz";
+        sha512 = "T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==";
+      };
+    }
+    {
+      name = "_types_yargs___yargs_17.0.10.tgz";
+      path = fetchurl {
+        name = "_types_yargs___yargs_17.0.10.tgz";
+        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.10.tgz";
+        sha512 = "gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==";
       };
     }
     {
@@ -814,7 +862,7 @@
       path = fetchurl {
         name = "abab___abab_2.0.5.tgz";
         url  = "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz";
-        sha1 = "c0b678fb32d60fc1219c784d6a826fe385aeb79a";
+        sha512 = "9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==";
       };
     }
     {
@@ -822,15 +870,15 @@
       path = fetchurl {
         name = "acorn_globals___acorn_globals_6.0.0.tgz";
         url  = "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz";
-        sha1 = "46cdd39f0f8ff08a876619b55f5ac8a6dc770b45";
+        sha512 = "ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==";
       };
     }
     {
-      name = "acorn_jsx___acorn_jsx_5.3.1.tgz";
+      name = "acorn_jsx___acorn_jsx_5.3.2.tgz";
       path = fetchurl {
-        name = "acorn_jsx___acorn_jsx_5.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz";
-        sha1 = "fc8661e11b7ac1539c47dbfea2e72b3af34d267b";
+        name = "acorn_jsx___acorn_jsx_5.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz";
+        sha512 = "rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==";
       };
     }
     {
@@ -838,7 +886,7 @@
       path = fetchurl {
         name = "acorn_walk___acorn_walk_7.2.0.tgz";
         url  = "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz";
-        sha1 = "0de889a601203909b0fbe07b8938dc21d2e967bc";
+        sha512 = "OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==";
       };
     }
     {
@@ -846,15 +894,15 @@
       path = fetchurl {
         name = "acorn___acorn_7.4.1.tgz";
         url  = "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz";
-        sha1 = "feaed255973d2e77555b83dbc08851a6c63520fa";
+        sha512 = "nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==";
       };
     }
     {
-      name = "acorn___acorn_8.4.1.tgz";
+      name = "acorn___acorn_8.7.0.tgz";
       path = fetchurl {
-        name = "acorn___acorn_8.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/acorn/-/acorn-8.4.1.tgz";
-        sha1 = "56c36251fc7cabc7096adc18f05afe814321a28c";
+        name = "acorn___acorn_8.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz";
+        sha512 = "V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==";
       };
     }
     {
@@ -862,7 +910,7 @@
       path = fetchurl {
         name = "agent_base___agent_base_6.0.2.tgz";
         url  = "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz";
-        sha1 = "49fff58577cfee3f37176feab4c22e00f86d7f77";
+        sha512 = "RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==";
       };
     }
     {
@@ -870,7 +918,7 @@
       path = fetchurl {
         name = "ajv_keywords___ajv_keywords_3.5.2.tgz";
         url  = "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz";
-        sha1 = "31f29da5ab6e00d1c2d329acf7b5929614d5014d";
+        sha512 = "5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==";
       };
     }
     {
@@ -878,31 +926,15 @@
       path = fetchurl {
         name = "ajv___ajv_6.12.6.tgz";
         url  = "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz";
-        sha1 = "baf5a62e802b07d977034586f8c3baf5adf26df4";
-      };
-    }
-    {
-      name = "ajv___ajv_8.6.0.tgz";
-      path = fetchurl {
-        name = "ajv___ajv_8.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/ajv/-/ajv-8.6.0.tgz";
-        sha1 = "60cc45d9c46a477d80d92c48076d972c342e5720";
-      };
-    }
-    {
-      name = "ansi_align___ansi_align_3.0.0.tgz";
-      path = fetchurl {
-        name = "ansi_align___ansi_align_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.0.tgz";
-        sha1 = "b536b371cf687caaef236c18d3e21fe3797467cb";
+        sha512 = "j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==";
       };
     }
     {
-      name = "ansi_colors___ansi_colors_4.1.1.tgz";
+      name = "ansi_align___ansi_align_3.0.1.tgz";
       path = fetchurl {
-        name = "ansi_colors___ansi_colors_4.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz";
-        sha1 = "cbb9ae256bf750af1eab344f229aa27fe94ba348";
+        name = "ansi_align___ansi_align_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz";
+        sha512 = "IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==";
       };
     }
     {
@@ -910,31 +942,15 @@
       path = fetchurl {
         name = "ansi_escapes___ansi_escapes_4.3.2.tgz";
         url  = "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz";
-        sha1 = "6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e";
+        sha512 = "gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==";
       };
     }
     {
-      name = "ansi_regex___ansi_regex_3.0.0.tgz";
+      name = "ansi_regex___ansi_regex_5.0.1.tgz";
       path = fetchurl {
-        name = "ansi_regex___ansi_regex_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz";
-        sha1 = "ed0317c322064f79466c02966bddb605ab37d998";
-      };
-    }
-    {
-      name = "ansi_regex___ansi_regex_4.1.0.tgz";
-      path = fetchurl {
-        name = "ansi_regex___ansi_regex_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz";
-        sha1 = "8b9f8f08cf1acb843756a839ca8c7e3168c51997";
-      };
-    }
-    {
-      name = "ansi_regex___ansi_regex_5.0.0.tgz";
-      path = fetchurl {
-        name = "ansi_regex___ansi_regex_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz";
-        sha1 = "388539f55179bf39339c81af30a654d69f87cb75";
+        name = "ansi_regex___ansi_regex_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz";
+        sha512 = "quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==";
       };
     }
     {
@@ -942,7 +958,7 @@
       path = fetchurl {
         name = "ansi_styles___ansi_styles_3.2.1.tgz";
         url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz";
-        sha1 = "41fbb20243e50b12be0f04b8dedbf07520ce841d";
+        sha512 = "VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==";
       };
     }
     {
@@ -950,7 +966,7 @@
       path = fetchurl {
         name = "ansi_styles___ansi_styles_4.3.0.tgz";
         url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz";
-        sha1 = "edd803628ae71c04c85ae7a0906edad34b648937";
+        sha512 = "zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==";
       };
     }
     {
@@ -958,7 +974,7 @@
       path = fetchurl {
         name = "ansi_styles___ansi_styles_5.2.0.tgz";
         url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz";
-        sha1 = "07449690ad45777d1924ac2abb2fc8895dba836b";
+        sha512 = "Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==";
       };
     }
     {
@@ -966,39 +982,23 @@
       path = fetchurl {
         name = "anymatch___anymatch_3.1.2.tgz";
         url  = "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz";
-        sha1 = "c0557c096af32f106198f4f4e2a383537e378716";
+        sha512 = "P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==";
       };
     }
     {
-      name = "app_builder_bin___app_builder_bin_3.5.13.tgz";
+      name = "app_builder_bin___app_builder_bin_3.7.1.tgz";
       path = fetchurl {
-        name = "app_builder_bin___app_builder_bin_3.5.13.tgz";
-        url  = "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.5.13.tgz";
-        sha1 = "6dd7f4de34a4e408806f99b8c7d6ef1601305b7e";
+        name = "app_builder_bin___app_builder_bin_3.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.7.1.tgz";
+        sha512 = "ql93vEUq6WsstGXD+SBLSIQw6SNnhbDEM0swzgugytMxLp3rT24Ag/jcC80ZHxiPRTdew1niuR7P3/FCrDqIjw==";
       };
     }
     {
-      name = "app_builder_lib___app_builder_lib_22.11.7.tgz";
+      name = "app_builder_lib___app_builder_lib_22.14.13.tgz";
       path = fetchurl {
-        name = "app_builder_lib___app_builder_lib_22.11.7.tgz";
-        url  = "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.11.7.tgz";
-        sha1 = "c0ad1119ebfbf4189a8280ad693625f5e684dca6";
-      };
-    }
-    {
-      name = "archiver_utils___archiver_utils_2.1.0.tgz";
-      path = fetchurl {
-        name = "archiver_utils___archiver_utils_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-2.1.0.tgz";
-        sha1 = "e8a460e94b693c3e3da182a098ca6285ba9249e2";
-      };
-    }
-    {
-      name = "archiver___archiver_5.3.0.tgz";
-      path = fetchurl {
-        name = "archiver___archiver_5.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/archiver/-/archiver-5.3.0.tgz";
-        sha1 = "dd3e097624481741df626267564f7dd8640a45ba";
+        name = "app_builder_lib___app_builder_lib_22.14.13.tgz";
+        url  = "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.14.13.tgz";
+        sha512 = "SufmrtxU+D0Tn948fjEwAOlCN9757UXLkzzTWXMwZKR/5hisvgqeeBepWfphMIE6OkDGz0fbzEhL1P2Pty4XMg==";
       };
     }
     {
@@ -1006,7 +1006,7 @@
       path = fetchurl {
         name = "argparse___argparse_1.0.10.tgz";
         url  = "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz";
-        sha1 = "bcd6791ea5ae09725e17e5ad988134cd40b3d911";
+        sha512 = "o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==";
       };
     }
     {
@@ -1014,15 +1014,15 @@
       path = fetchurl {
         name = "argparse___argparse_2.0.1.tgz";
         url  = "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz";
-        sha1 = "246f50f3ca78a3240f6c997e8a9bd1eac49e4b38";
+        sha512 = "8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==";
       };
     }
     {
-      name = "asar___asar_3.0.3.tgz";
+      name = "asar___asar_3.1.0.tgz";
       path = fetchurl {
-        name = "asar___asar_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/asar/-/asar-3.0.3.tgz";
-        sha1 = "1fef03c2d6d2de0cbad138788e4f7ae03b129c7b";
+        name = "asar___asar_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/asar/-/asar-3.1.0.tgz";
+        sha512 = "vyxPxP5arcAqN4F/ebHd/HhwnAiZtwhglvdmc7BR2f0ywbVNTOpSeyhLDbGXtE/y58hv1oC75TaNIXutnsOZsQ==";
       };
     }
     {
@@ -1030,15 +1030,7 @@
       path = fetchurl {
         name = "assert_plus___assert_plus_1.0.0.tgz";
         url  = "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz";
-        sha1 = "f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525";
-      };
-    }
-    {
-      name = "ast_metadata_inferer___ast_metadata_inferer_0.4.0.tgz";
-      path = fetchurl {
-        name = "ast_metadata_inferer___ast_metadata_inferer_0.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/ast-metadata-inferer/-/ast-metadata-inferer-0.4.0.tgz";
-        sha1 = "6be85ceeffcf267bd79db8e1ae731da44880b45f";
+        sha1 = "8S4PPF13sLHN2RRpQuTpbB5N1SU=";
       };
     }
     {
@@ -1046,7 +1038,7 @@
       path = fetchurl {
         name = "astral_regex___astral_regex_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz";
-        sha1 = "483143c567aeed4785759c0865786dc77d7d2e31";
+        sha512 = "Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==";
       };
     }
     {
@@ -1054,7 +1046,7 @@
       path = fetchurl {
         name = "async_exit_hook___async_exit_hook_2.0.1.tgz";
         url  = "https://registry.yarnpkg.com/async-exit-hook/-/async-exit-hook-2.0.1.tgz";
-        sha1 = "8bd8b024b0ec9b1c01cccb9af9db29bd717dfaf3";
+        sha512 = "NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==";
       };
     }
     {
@@ -1062,15 +1054,7 @@
       path = fetchurl {
         name = "async___async_0.9.2.tgz";
         url  = "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz";
-        sha1 = "aea74d5e61c1f899613bf64bda66d4c78f2fd17d";
-      };
-    }
-    {
-      name = "async___async_3.2.0.tgz";
-      path = fetchurl {
-        name = "async___async_3.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/async/-/async-3.2.0.tgz";
-        sha1 = "b3a2685c5ebb641d3de02d161002c60fc9f85720";
+        sha1 = "rqdNXmHB+JlhO/ZL2mbUx48v0X0=";
       };
     }
     {
@@ -1078,7 +1062,7 @@
       path = fetchurl {
         name = "asynckit___asynckit_0.4.0.tgz";
         url  = "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz";
-        sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
+        sha1 = "x57Zf380y48robyXkLzDZkdLS3k=";
       };
     }
     {
@@ -1086,31 +1070,31 @@
       path = fetchurl {
         name = "at_least_node___at_least_node_1.0.0.tgz";
         url  = "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz";
-        sha1 = "602cd4b46e844ad4effc92a8011a3c46e0238dc2";
+        sha512 = "+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==";
       };
     }
     {
-      name = "babel_jest___babel_jest_27.0.6.tgz";
+      name = "babel_jest___babel_jest_27.5.1.tgz";
       path = fetchurl {
-        name = "babel_jest___babel_jest_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.0.6.tgz";
-        sha1 = "e99c6e0577da2655118e3608b68761a5a69bd0d8";
+        name = "babel_jest___babel_jest_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.5.1.tgz";
+        sha512 = "cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==";
       };
     }
     {
-      name = "babel_plugin_istanbul___babel_plugin_istanbul_6.0.0.tgz";
+      name = "babel_plugin_istanbul___babel_plugin_istanbul_6.1.1.tgz";
       path = fetchurl {
-        name = "babel_plugin_istanbul___babel_plugin_istanbul_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz";
-        sha1 = "e159ccdc9af95e0b570c75b4573b7c34d671d765";
+        name = "babel_plugin_istanbul___babel_plugin_istanbul_6.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz";
+        sha512 = "Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==";
       };
     }
     {
-      name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_27.0.6.tgz";
+      name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_27.5.1.tgz";
       path = fetchurl {
-        name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.0.6.tgz";
-        sha1 = "f7c6b3d764af21cb4a2a1ab6870117dbde15b456";
+        name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz";
+        sha512 = "50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==";
       };
     }
     {
@@ -1118,15 +1102,15 @@
       path = fetchurl {
         name = "babel_preset_current_node_syntax___babel_preset_current_node_syntax_1.0.1.tgz";
         url  = "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz";
-        sha1 = "b4399239b89b2a011f9ddbe3e4f401fc40cff73b";
+        sha512 = "M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==";
       };
     }
     {
-      name = "babel_preset_jest___babel_preset_jest_27.0.6.tgz";
+      name = "babel_preset_jest___babel_preset_jest_27.5.1.tgz";
       path = fetchurl {
-        name = "babel_preset_jest___babel_preset_jest_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.0.6.tgz";
-        sha1 = "909ef08e9f24a4679768be2f60a3df0856843f9d";
+        name = "babel_preset_jest___babel_preset_jest_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz";
+        sha512 = "Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==";
       };
     }
     {
@@ -1134,7 +1118,7 @@
       path = fetchurl {
         name = "balanced_match___balanced_match_1.0.2.tgz";
         url  = "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz";
-        sha1 = "e83e3a7e3f300b34cb9d87f615fa0cbf357690ee";
+        sha512 = "3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==";
       };
     }
     {
@@ -1142,15 +1126,7 @@
       path = fetchurl {
         name = "base64_js___base64_js_1.5.1.tgz";
         url  = "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz";
-        sha1 = "1b1b440160a5bf7ad40b650f095963481903930a";
-      };
-    }
-    {
-      name = "bl___bl_4.1.0.tgz";
-      path = fetchurl {
-        name = "bl___bl_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz";
-        sha1 = "451535264182bec2fbbc83a62ab98cf11d9f7b3a";
+        sha512 = "AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==";
       };
     }
     {
@@ -1158,7 +1134,7 @@
       path = fetchurl {
         name = "bluebird_lst___bluebird_lst_1.0.9.tgz";
         url  = "https://registry.yarnpkg.com/bluebird-lst/-/bluebird-lst-1.0.9.tgz";
-        sha1 = "a64a0e4365658b9ab5fe875eb9dfb694189bb41c";
+        sha512 = "7B1Rtx82hjnSD4PGLAjVWeYH3tHAcVUmChh85a3lltKQm6FresXh9ErQo6oAv6CqxttczC3/kEg8SY5NluPuUw==";
       };
     }
     {
@@ -1166,23 +1142,23 @@
       path = fetchurl {
         name = "bluebird___bluebird_3.7.2.tgz";
         url  = "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz";
-        sha1 = "9f229c15be272454ffa973ace0dbee79a1b0c36f";
+        sha512 = "XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==";
       };
     }
     {
-      name = "boolean___boolean_3.1.2.tgz";
+      name = "boolean___boolean_3.2.0.tgz";
       path = fetchurl {
-        name = "boolean___boolean_3.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/boolean/-/boolean-3.1.2.tgz";
-        sha1 = "e30f210a26b02458482a8cc353ab06f262a780c2";
+        name = "boolean___boolean_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/boolean/-/boolean-3.2.0.tgz";
+        sha512 = "d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==";
       };
     }
     {
-      name = "boxen___boxen_5.0.1.tgz";
+      name = "boxen___boxen_5.1.2.tgz";
       path = fetchurl {
-        name = "boxen___boxen_5.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/boxen/-/boxen-5.0.1.tgz";
-        sha1 = "657528bdd3f59a772b8279b831f27ec2c744664b";
+        name = "boxen___boxen_5.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/boxen/-/boxen-5.1.2.tgz";
+        sha512 = "9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==";
       };
     }
     {
@@ -1190,7 +1166,7 @@
       path = fetchurl {
         name = "brace_expansion___brace_expansion_1.1.11.tgz";
         url  = "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz";
-        sha1 = "3c7fcbf529d87226f3d2f52b966ff5271eb441dd";
+        sha512 = "iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==";
       };
     }
     {
@@ -1198,7 +1174,7 @@
       path = fetchurl {
         name = "braces___braces_3.0.2.tgz";
         url  = "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz";
-        sha1 = "3454e1a462ee8d599e236df336cd9ea4f8afe107";
+        sha512 = "b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==";
       };
     }
     {
@@ -1206,15 +1182,15 @@
       path = fetchurl {
         name = "browser_process_hrtime___browser_process_hrtime_1.0.0.tgz";
         url  = "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz";
-        sha1 = "3c9b4b7d782c8121e56f10106d84c0d0ffc94626";
+        sha512 = "9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==";
       };
     }
     {
-      name = "browserslist___browserslist_4.16.6.tgz";
+      name = "browserslist___browserslist_4.20.2.tgz";
       path = fetchurl {
-        name = "browserslist___browserslist_4.16.6.tgz";
-        url  = "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz";
-        sha1 = "d7901277a5a88e554ed305b183ec9b0c08f66fa2";
+        name = "browserslist___browserslist_4.20.2.tgz";
+        url  = "https://registry.yarnpkg.com/browserslist/-/browserslist-4.20.2.tgz";
+        sha512 = "CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==";
       };
     }
     {
@@ -1222,7 +1198,23 @@
       path = fetchurl {
         name = "bser___bser_2.1.1.tgz";
         url  = "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz";
-        sha1 = "e6787da20ece9d07998533cfd9de6f5c38f4bc05";
+        sha512 = "gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==";
+      };
+    }
+    {
+      name = "buffer_alloc_unsafe___buffer_alloc_unsafe_1.1.0.tgz";
+      path = fetchurl {
+        name = "buffer_alloc_unsafe___buffer_alloc_unsafe_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz";
+        sha512 = "TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==";
+      };
+    }
+    {
+      name = "buffer_alloc___buffer_alloc_1.2.0.tgz";
+      path = fetchurl {
+        name = "buffer_alloc___buffer_alloc_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz";
+        sha512 = "CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==";
       };
     }
     {
@@ -1230,7 +1222,7 @@
       path = fetchurl {
         name = "buffer_crc32___buffer_crc32_0.2.13.tgz";
         url  = "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz";
-        sha1 = "0d333e3f00eac50aa1454abd30ef8c2a5d9a7242";
+        sha1 = "DTM+PwDqxQqhRUq9MO+MKl2ackI=";
       };
     }
     {
@@ -1238,47 +1230,47 @@
       path = fetchurl {
         name = "buffer_equal___buffer_equal_1.0.0.tgz";
         url  = "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.0.tgz";
-        sha1 = "59616b498304d556abd466966b22eeda3eca5fbe";
+        sha1 = "WWFrSYME1Var1GaWayLu2j7KX74=";
       };
     }
     {
-      name = "buffer_from___buffer_from_1.1.1.tgz";
+      name = "buffer_fill___buffer_fill_1.0.0.tgz";
       path = fetchurl {
-        name = "buffer_from___buffer_from_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz";
-        sha1 = "32713bc028f75c02fdb710d7c7bcec1f2c6070ef";
+        name = "buffer_fill___buffer_fill_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz";
+        sha1 = "+PeLdniYiO858gXNY39o5wISKyw=";
       };
     }
     {
-      name = "buffer___buffer_5.7.1.tgz";
+      name = "buffer_from___buffer_from_1.1.2.tgz";
       path = fetchurl {
-        name = "buffer___buffer_5.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz";
-        sha1 = "ba62e7c13133053582197160851a8f648e99eed0";
+        name = "buffer_from___buffer_from_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz";
+        sha512 = "E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==";
       };
     }
     {
-      name = "builder_util_runtime___builder_util_runtime_8.7.6.tgz";
+      name = "buffer___buffer_5.7.1.tgz";
       path = fetchurl {
-        name = "builder_util_runtime___builder_util_runtime_8.7.6.tgz";
-        url  = "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.7.6.tgz";
-        sha1 = "4b43c96db2bd494ced7694bcd7674934655e8324";
+        name = "buffer___buffer_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz";
+        sha512 = "EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==";
       };
     }
     {
-      name = "builder_util_runtime___builder_util_runtime_8.7.7.tgz";
+      name = "builder_util_runtime___builder_util_runtime_8.9.2.tgz";
       path = fetchurl {
-        name = "builder_util_runtime___builder_util_runtime_8.7.7.tgz";
-        url  = "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.7.7.tgz";
-        sha1 = "6c83cc3abe7a7a5c8b4ec8878f68adc828c07f0d";
+        name = "builder_util_runtime___builder_util_runtime_8.9.2.tgz";
+        url  = "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.9.2.tgz";
+        sha512 = "rhuKm5vh7E0aAmT6i8aoSfEjxzdYEFX7zDApK+eNgOhjofnWb74d9SRJv0H/8nsgOkos0TZ4zxW0P8J4N7xQ2A==";
       };
     }
     {
-      name = "builder_util___builder_util_22.11.7.tgz";
+      name = "builder_util___builder_util_22.14.13.tgz";
       path = fetchurl {
-        name = "builder_util___builder_util_22.11.7.tgz";
-        url  = "https://registry.yarnpkg.com/builder-util/-/builder-util-22.11.7.tgz";
-        sha1 = "ae9707afa6a31feafa13c274ac83b4fe28ef1467";
+        name = "builder_util___builder_util_22.14.13.tgz";
+        url  = "https://registry.yarnpkg.com/builder-util/-/builder-util-22.14.13.tgz";
+        sha512 = "oePC/qrrUuerhmH5iaCJzPRAKlSBylrhzuAJmRQClTyWnZUv6jbaHh+VoHMbEiE661wrj2S2aV7/bQh12cj1OA==";
       };
     }
     {
@@ -1286,7 +1278,7 @@
       path = fetchurl {
         name = "cacheable_request___cacheable_request_6.1.0.tgz";
         url  = "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz";
-        sha1 = "20ffb8bd162ba4be11e9567d823db651052ca912";
+        sha512 = "Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==";
       };
     }
     {
@@ -1294,7 +1286,7 @@
       path = fetchurl {
         name = "callsites___callsites_3.1.0.tgz";
         url  = "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz";
-        sha1 = "b3630abd8943432f54b3f0519238e33cd7df2f73";
+        sha512 = "P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==";
       };
     }
     {
@@ -1302,23 +1294,23 @@
       path = fetchurl {
         name = "camelcase___camelcase_5.3.1.tgz";
         url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz";
-        sha1 = "e3c9b31569e106811df242f715725a1f4c494320";
+        sha512 = "L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==";
       };
     }
     {
-      name = "camelcase___camelcase_6.2.0.tgz";
+      name = "camelcase___camelcase_6.3.0.tgz";
       path = fetchurl {
-        name = "camelcase___camelcase_6.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz";
-        sha1 = "924af881c9d525ac9d87f40d964e5cea982a1809";
+        name = "camelcase___camelcase_6.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz";
+        sha512 = "Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==";
       };
     }
     {
-      name = "caniuse_lite___caniuse_lite_1.0.30001241.tgz";
+      name = "caniuse_lite___caniuse_lite_1.0.30001319.tgz";
       path = fetchurl {
-        name = "caniuse_lite___caniuse_lite_1.0.30001241.tgz";
-        url  = "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001241.tgz";
-        sha1 = "cd3fae47eb3d7691692b406568d7a3e5b23c7598";
+        name = "caniuse_lite___caniuse_lite_1.0.30001319.tgz";
+        url  = "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001319.tgz";
+        sha512 = "xjlIAFHucBRSMUo1kb5D4LYgcN1M45qdKP++lhqowDpwJwGkpIRTt5qQqnhxjj1vHcI7nrJxWhCC1ATrCEBTcw==";
       };
     }
     {
@@ -1326,15 +1318,15 @@
       path = fetchurl {
         name = "chalk___chalk_2.4.2.tgz";
         url  = "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz";
-        sha1 = "cd42541677a54333cf541a49108c1432b44c9424";
+        sha512 = "Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==";
       };
     }
     {
-      name = "chalk___chalk_4.1.1.tgz";
+      name = "chalk___chalk_4.1.2.tgz";
       path = fetchurl {
-        name = "chalk___chalk_4.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/chalk/-/chalk-4.1.1.tgz";
-        sha1 = "c80b3fab28bf6371e6863325eee67e618b77e6ad";
+        name = "chalk___chalk_4.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz";
+        sha512 = "oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==";
       };
     }
     {
@@ -1342,7 +1334,7 @@
       path = fetchurl {
         name = "char_regex___char_regex_1.0.2.tgz";
         url  = "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz";
-        sha1 = "d744358226217f981ed58f479b1d6bcc29545dcf";
+        sha512 = "kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==";
       };
     }
     {
@@ -1350,7 +1342,7 @@
       path = fetchurl {
         name = "chromium_pickle_js___chromium_pickle_js_0.2.0.tgz";
         url  = "https://registry.yarnpkg.com/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz";
-        sha1 = "04a106672c18b085ab774d983dfa3ea138f22205";
+        sha1 = "BKEGZywYsIWrd02YPfo+oTjyIgU=";
       };
     }
     {
@@ -1358,23 +1350,23 @@
       path = fetchurl {
         name = "ci_info___ci_info_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz";
-        sha1 = "67a9e964be31a51e15e5010d58e6f12834002f46";
+        sha512 = "5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==";
       };
     }
     {
-      name = "ci_info___ci_info_3.2.0.tgz";
+      name = "ci_info___ci_info_3.3.0.tgz";
       path = fetchurl {
-        name = "ci_info___ci_info_3.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/ci-info/-/ci-info-3.2.0.tgz";
-        sha1 = "2876cb948a498797b5236f0095bc057d0dca38b6";
+        name = "ci_info___ci_info_3.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/ci-info/-/ci-info-3.3.0.tgz";
+        sha512 = "riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw==";
       };
     }
     {
-      name = "cjs_module_lexer___cjs_module_lexer_1.2.1.tgz";
+      name = "cjs_module_lexer___cjs_module_lexer_1.2.2.tgz";
       path = fetchurl {
-        name = "cjs_module_lexer___cjs_module_lexer_1.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.1.tgz";
-        sha1 = "2fd46d9906a126965aa541345c499aaa18e8cd73";
+        name = "cjs_module_lexer___cjs_module_lexer_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz";
+        sha512 = "cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==";
       };
     }
     {
@@ -1382,15 +1374,15 @@
       path = fetchurl {
         name = "cli_boxes___cli_boxes_2.2.1.tgz";
         url  = "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz";
-        sha1 = "ddd5035d25094fce220e9cab40a45840a440318f";
+        sha512 = "y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==";
       };
     }
     {
-      name = "cli_truncate___cli_truncate_1.1.0.tgz";
+      name = "cli_truncate___cli_truncate_2.1.0.tgz";
       path = fetchurl {
-        name = "cli_truncate___cli_truncate_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-1.1.0.tgz";
-        sha1 = "2b2dfd83c53cfd3572b87fc4d430a808afb04086";
+        name = "cli_truncate___cli_truncate_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz";
+        sha512 = "n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==";
       };
     }
     {
@@ -1398,7 +1390,7 @@
       path = fetchurl {
         name = "cliui___cliui_7.0.4.tgz";
         url  = "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz";
-        sha1 = "a0265ee655476fc807aea9df3df8df7783808b4f";
+        sha512 = "OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==";
       };
     }
     {
@@ -1406,7 +1398,7 @@
       path = fetchurl {
         name = "clone_response___clone_response_1.0.2.tgz";
         url  = "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz";
-        sha1 = "d1dc973920314df67fbeb94223b4ee350239e96b";
+        sha1 = "0dyXOSAxTfZ/vrlCI7TuNQI56Ws=";
       };
     }
     {
@@ -1414,7 +1406,7 @@
       path = fetchurl {
         name = "co___co_4.6.0.tgz";
         url  = "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz";
-        sha1 = "6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184";
+        sha1 = "bqa989hTrlTMuOR7+gvz+QMfsYQ=";
       };
     }
     {
@@ -1422,7 +1414,7 @@
       path = fetchurl {
         name = "collect_v8_coverage___collect_v8_coverage_1.0.1.tgz";
         url  = "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz";
-        sha1 = "cc2c8e94fc18bbdffe64d6534570c8a673b27f59";
+        sha512 = "iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==";
       };
     }
     {
@@ -1430,7 +1422,7 @@
       path = fetchurl {
         name = "color_convert___color_convert_1.9.3.tgz";
         url  = "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz";
-        sha1 = "bb71850690e1f136567de629d2d5471deda4c1e8";
+        sha512 = "QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==";
       };
     }
     {
@@ -1438,7 +1430,7 @@
       path = fetchurl {
         name = "color_convert___color_convert_2.0.1.tgz";
         url  = "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz";
-        sha1 = "72d3a68d598c9bdb3af2ad1e84f21d896abd4de3";
+        sha512 = "RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==";
       };
     }
     {
@@ -1446,7 +1438,7 @@
       path = fetchurl {
         name = "color_name___color_name_1.1.3.tgz";
         url  = "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz";
-        sha1 = "a7d0558bd89c42f795dd42328f740831ca53bc25";
+        sha1 = "p9BVi9icQveV3UIyj3QIMcpTvCU=";
       };
     }
     {
@@ -1454,15 +1446,7 @@
       path = fetchurl {
         name = "color_name___color_name_1.1.4.tgz";
         url  = "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz";
-        sha1 = "c2a09a87acbde69543de6f63fa3995c826c536a2";
-      };
-    }
-    {
-      name = "colorette___colorette_1.2.2.tgz";
-      path = fetchurl {
-        name = "colorette___colorette_1.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz";
-        sha1 = "cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94";
+        sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==";
       };
     }
     {
@@ -1470,7 +1454,7 @@
       path = fetchurl {
         name = "colors___colors_1.0.3.tgz";
         url  = "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz";
-        sha1 = "0433f44d809680fdeb60ed260f1b0c262e82a40b";
+        sha1 = "BDP0TYCWgP3rYO0mDxsMJi6CpAs=";
       };
     }
     {
@@ -1478,7 +1462,7 @@
       path = fetchurl {
         name = "combined_stream___combined_stream_1.0.8.tgz";
         url  = "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz";
-        sha1 = "c3d45a8b34fd730631a110a8a2520682b31d5a7f";
+        sha512 = "FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==";
       };
     }
     {
@@ -1486,7 +1470,7 @@
       path = fetchurl {
         name = "commander___commander_2.9.0.tgz";
         url  = "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz";
-        sha1 = "9c99094176e12240cb22d6c5146098400fe0f7d4";
+        sha1 = "nJkJQXbhIkDLItbFFGCYQA/g99Q=";
       };
     }
     {
@@ -1494,15 +1478,15 @@
       path = fetchurl {
         name = "commander___commander_5.1.0.tgz";
         url  = "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz";
-        sha1 = "46abbd1652f8e059bddaef99bbdcb2ad9cf179ae";
+        sha512 = "P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==";
       };
     }
     {
-      name = "compress_commons___compress_commons_4.1.1.tgz";
+      name = "compare_version___compare_version_0.1.2.tgz";
       path = fetchurl {
-        name = "compress_commons___compress_commons_4.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/compress-commons/-/compress-commons-4.1.1.tgz";
-        sha1 = "df2a09a7ed17447642bad10a85cc9a19e5c42a7d";
+        name = "compare_version___compare_version_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/compare-version/-/compare-version-0.1.2.tgz";
+        sha1 = "AWLsLZNR9d3VmpICy6k1NmpyUIA=";
       };
     }
     {
@@ -1510,7 +1494,7 @@
       path = fetchurl {
         name = "concat_map___concat_map_0.0.1.tgz";
         url  = "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz";
-        sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
+        sha1 = "2Klr13/Wjfd5OnMDajug1UBdR3s=";
       };
     }
     {
@@ -1518,7 +1502,7 @@
       path = fetchurl {
         name = "concat_stream___concat_stream_1.6.2.tgz";
         url  = "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz";
-        sha1 = "904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34";
+        sha512 = "27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==";
       };
     }
     {
@@ -1526,7 +1510,7 @@
       path = fetchurl {
         name = "config_chain___config_chain_1.1.13.tgz";
         url  = "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz";
-        sha1 = "fad0795aa6a6cdaff9ed1b68e9dff94372c232f4";
+        sha512 = "qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==";
       };
     }
     {
@@ -1534,7 +1518,7 @@
       path = fetchurl {
         name = "configstore___configstore_5.0.1.tgz";
         url  = "https://registry.yarnpkg.com/configstore/-/configstore-5.0.1.tgz";
-        sha1 = "d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96";
+        sha512 = "aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==";
       };
     }
     {
@@ -1542,15 +1526,7 @@
       path = fetchurl {
         name = "convert_source_map___convert_source_map_1.8.0.tgz";
         url  = "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz";
-        sha1 = "f3373c32d21b4d780dd8004514684fb791ca4369";
-      };
-    }
-    {
-      name = "core_js___core_js_3.15.2.tgz";
-      path = fetchurl {
-        name = "core_js___core_js_3.15.2.tgz";
-        url  = "https://registry.yarnpkg.com/core-js/-/core-js-3.15.2.tgz";
-        sha1 = "740660d2ff55ef34ce664d7e2455119c5bdd3d61";
+        sha512 = "+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==";
       };
     }
     {
@@ -1558,23 +1534,15 @@
       path = fetchurl {
         name = "core_util_is___core_util_is_1.0.2.tgz";
         url  = "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz";
-        sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
+        sha1 = "tf1UIgqivFq1eqtxQMlAdUUDwac=";
       };
     }
     {
-      name = "crc_32___crc_32_1.2.0.tgz";
+      name = "core_util_is___core_util_is_1.0.3.tgz";
       path = fetchurl {
-        name = "crc_32___crc_32_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/crc-32/-/crc-32-1.2.0.tgz";
-        sha1 = "cb2db6e29b88508e32d9dd0ec1693e7b41a18208";
-      };
-    }
-    {
-      name = "crc32_stream___crc32_stream_4.0.2.tgz";
-      path = fetchurl {
-        name = "crc32_stream___crc32_stream_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/crc32-stream/-/crc32-stream-4.0.2.tgz";
-        sha1 = "c922ad22b38395abe9d3870f02fa8134ed709007";
+        name = "core_util_is___core_util_is_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz";
+        sha512 = "ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==";
       };
     }
     {
@@ -1582,7 +1550,7 @@
       path = fetchurl {
         name = "crc___crc_3.8.0.tgz";
         url  = "https://registry.yarnpkg.com/crc/-/crc-3.8.0.tgz";
-        sha1 = "ad60269c2c856f8c299e2c4cc0de4556914056c6";
+        sha512 = "iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==";
       };
     }
     {
@@ -1590,7 +1558,7 @@
       path = fetchurl {
         name = "cross_spawn___cross_spawn_7.0.3.tgz";
         url  = "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz";
-        sha1 = "f73a85b9d5d41d045551c177e2882d4ac85728a6";
+        sha512 = "iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==";
       };
     }
     {
@@ -1598,7 +1566,7 @@
       path = fetchurl {
         name = "crypto_random_string___crypto_random_string_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz";
-        sha1 = "ef2a7a966ec11083388369baa02ebead229b30d5";
+        sha512 = "v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==";
       };
     }
     {
@@ -1606,7 +1574,7 @@
       path = fetchurl {
         name = "cssom___cssom_0.4.4.tgz";
         url  = "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz";
-        sha1 = "5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10";
+        sha512 = "p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==";
       };
     }
     {
@@ -1614,7 +1582,7 @@
       path = fetchurl {
         name = "cssom___cssom_0.3.8.tgz";
         url  = "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz";
-        sha1 = "9f1276f5b2b463f2114d3f2c75250af8c1a36f4a";
+        sha512 = "b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==";
       };
     }
     {
@@ -1622,7 +1590,7 @@
       path = fetchurl {
         name = "cssstyle___cssstyle_2.3.0.tgz";
         url  = "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz";
-        sha1 = "ff665a0ddbdc31864b09647f34163443d90b0852";
+        sha512 = "AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==";
       };
     }
     {
@@ -1630,15 +1598,15 @@
       path = fetchurl {
         name = "data_urls___data_urls_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz";
-        sha1 = "156485a72963a970f5d5821aaf642bef2bf2db9b";
+        sha512 = "X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==";
       };
     }
     {
-      name = "debug___debug_4.3.1.tgz";
+      name = "debug___debug_4.3.4.tgz";
       path = fetchurl {
-        name = "debug___debug_4.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz";
-        sha1 = "f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee";
+        name = "debug___debug_4.3.4.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz";
+        sha512 = "PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==";
       };
     }
     {
@@ -1646,15 +1614,7 @@
       path = fetchurl {
         name = "debug___debug_2.6.9.tgz";
         url  = "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz";
-        sha1 = "5d128515df134ff327e90a4c93f4e077a536341f";
-      };
-    }
-    {
-      name = "debug___debug_4.3.2.tgz";
-      path = fetchurl {
-        name = "debug___debug_4.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz";
-        sha1 = "f0a49c18ac8779e31d4a0c6029dfb76873c7428b";
+        sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==";
       };
     }
     {
@@ -1662,7 +1622,7 @@
       path = fetchurl {
         name = "decimal.js___decimal.js_10.3.1.tgz";
         url  = "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz";
-        sha1 = "d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783";
+        sha512 = "V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==";
       };
     }
     {
@@ -1670,7 +1630,7 @@
       path = fetchurl {
         name = "decompress_response___decompress_response_3.3.0.tgz";
         url  = "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz";
-        sha1 = "80a4dd323748384bfa248083622aedec982adff3";
+        sha1 = "gKTdMjdIOEv6JICDYirt7Jgq3/M=";
       };
     }
     {
@@ -1678,7 +1638,7 @@
       path = fetchurl {
         name = "dedent___dedent_0.7.0.tgz";
         url  = "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz";
-        sha1 = "2495ddbaf6eb874abb0e1be9df22d2e5a544326c";
+        sha1 = "JJXduvbrh0q7Dhvp3yLS5aVEMmw=";
       };
     }
     {
@@ -1686,15 +1646,15 @@
       path = fetchurl {
         name = "deep_extend___deep_extend_0.6.0.tgz";
         url  = "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz";
-        sha1 = "c4fa7c95404a17a9c3e8ca7e1537312b736330ac";
+        sha512 = "LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==";
       };
     }
     {
-      name = "deep_is___deep_is_0.1.3.tgz";
+      name = "deep_is___deep_is_0.1.4.tgz";
       path = fetchurl {
-        name = "deep_is___deep_is_0.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz";
-        sha1 = "b369d6fb5dbc13eecf524f91b070feedc357cf34";
+        name = "deep_is___deep_is_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz";
+        sha512 = "oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==";
       };
     }
     {
@@ -1702,7 +1662,7 @@
       path = fetchurl {
         name = "deepmerge___deepmerge_4.2.2.tgz";
         url  = "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz";
-        sha1 = "44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955";
+        sha512 = "FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==";
       };
     }
     {
@@ -1710,7 +1670,7 @@
       path = fetchurl {
         name = "defer_to_connect___defer_to_connect_1.1.3.tgz";
         url  = "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz";
-        sha1 = "331ae050c08dcf789f8c83a7b81f0ed94f4ac591";
+        sha512 = "0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==";
       };
     }
     {
@@ -1718,7 +1678,7 @@
       path = fetchurl {
         name = "define_properties___define_properties_1.1.3.tgz";
         url  = "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz";
-        sha1 = "cf88da6cbee26fe6db7094f61d870cbd84cee9f1";
+        sha512 = "3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==";
       };
     }
     {
@@ -1726,7 +1686,7 @@
       path = fetchurl {
         name = "delayed_stream___delayed_stream_1.0.0.tgz";
         url  = "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz";
-        sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
+        sha1 = "3zrhmayt+31ECqrgsp4icrJOxhk=";
       };
     }
     {
@@ -1734,7 +1694,7 @@
       path = fetchurl {
         name = "detect_newline___detect_newline_3.1.0.tgz";
         url  = "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz";
-        sha1 = "576f5dfc63ae1a192ff192d8ad3af6308991b651";
+        sha512 = "TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==";
       };
     }
     {
@@ -1742,15 +1702,15 @@
       path = fetchurl {
         name = "detect_node___detect_node_2.1.0.tgz";
         url  = "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz";
-        sha1 = "c9c70775a49c3d03bc2c06d9a73be550f978f8b1";
+        sha512 = "T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==";
       };
     }
     {
-      name = "diff_sequences___diff_sequences_27.0.6.tgz";
+      name = "diff_sequences___diff_sequences_27.5.1.tgz";
       path = fetchurl {
-        name = "diff_sequences___diff_sequences_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.0.6.tgz";
-        sha1 = "3305cb2e55a033924054695cc66019fd7f8e5723";
+        name = "diff_sequences___diff_sequences_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz";
+        sha512 = "k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==";
       };
     }
     {
@@ -1758,23 +1718,23 @@
       path = fetchurl {
         name = "dir_compare___dir_compare_2.4.0.tgz";
         url  = "https://registry.yarnpkg.com/dir-compare/-/dir-compare-2.4.0.tgz";
-        sha1 = "785c41dc5f645b34343a4eafc50b79bac7f11631";
+        sha512 = "l9hmu8x/rjVC9Z2zmGzkhOEowZvW7pmYws5CWHutg8u1JgvsKWMx7Q/UODeu4djLZ4FgW5besw5yvMQnBHzuCA==";
       };
     }
     {
-      name = "dmg_builder___dmg_builder_22.11.7.tgz";
+      name = "dmg_builder___dmg_builder_22.14.13.tgz";
       path = fetchurl {
-        name = "dmg_builder___dmg_builder_22.11.7.tgz";
-        url  = "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.11.7.tgz";
-        sha1 = "5956008c18d40ee72c0ea01ffea9590dbf51df89";
+        name = "dmg_builder___dmg_builder_22.14.13.tgz";
+        url  = "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.14.13.tgz";
+        sha512 = "xNOugB6AbIRETeU2uID15sUfjdZZcKdxK8xkFnwIggsM00PJ12JxpLNPTjcRoUnfwj3WrPjilrO64vRMwNItQg==";
       };
     }
     {
-      name = "dmg_license___dmg_license_1.0.9.tgz";
+      name = "dmg_license___dmg_license_1.0.11.tgz";
       path = fetchurl {
-        name = "dmg_license___dmg_license_1.0.9.tgz";
-        url  = "https://registry.yarnpkg.com/dmg-license/-/dmg-license-1.0.9.tgz";
-        sha1 = "a2fb8d692af0e30b0730b5afc91ed9edc2d9cb4f";
+        name = "dmg_license___dmg_license_1.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/dmg-license/-/dmg-license-1.0.11.tgz";
+        sha512 = "ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==";
       };
     }
     {
@@ -1782,7 +1742,7 @@
       path = fetchurl {
         name = "doctrine___doctrine_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz";
-        sha1 = "addebead72a6574db783639dc87a121773973961";
+        sha512 = "yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==";
       };
     }
     {
@@ -1790,7 +1750,7 @@
       path = fetchurl {
         name = "domexception___domexception_2.0.1.tgz";
         url  = "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz";
-        sha1 = "fb44aefba793e1574b0af6aed2801d057529f304";
+        sha512 = "yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==";
       };
     }
     {
@@ -1798,7 +1758,7 @@
       path = fetchurl {
         name = "dot_prop___dot_prop_5.3.0.tgz";
         url  = "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz";
-        sha1 = "90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88";
+        sha512 = "QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==";
       };
     }
     {
@@ -1806,7 +1766,7 @@
       path = fetchurl {
         name = "dotenv_expand___dotenv_expand_5.1.0.tgz";
         url  = "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz";
-        sha1 = "3fbaf020bfd794884072ea26b1e9791d45a629f0";
+        sha512 = "YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==";
       };
     }
     {
@@ -1814,7 +1774,7 @@
       path = fetchurl {
         name = "dotenv___dotenv_9.0.2.tgz";
         url  = "https://registry.yarnpkg.com/dotenv/-/dotenv-9.0.2.tgz";
-        sha1 = "dacc20160935a37dea6364aa1bef819fb9b6ab05";
+        sha512 = "I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg==";
       };
     }
     {
@@ -1822,7 +1782,7 @@
       path = fetchurl {
         name = "duplexer3___duplexer3_0.1.4.tgz";
         url  = "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz";
-        sha1 = "ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2";
+        sha1 = "7gHdHKwO08vH/b6jfcCo8c4ALOI=";
       };
     }
     {
@@ -1830,55 +1790,55 @@
       path = fetchurl {
         name = "ejs___ejs_3.1.6.tgz";
         url  = "https://registry.yarnpkg.com/ejs/-/ejs-3.1.6.tgz";
-        sha1 = "5bfd0a0689743bb5268b3550cceeebbc1702822a";
+        sha512 = "9lt9Zse4hPucPkoP7FHDF0LQAlGyF9JVpnClFLFH3aSSbxmyoqINRpp/9wePWJTUl4KOQwRL72Iw3InHPDkoGw==";
       };
     }
     {
-      name = "electron_builder___electron_builder_22.11.7.tgz";
+      name = "electron_builder___electron_builder_22.14.13.tgz";
       path = fetchurl {
-        name = "electron_builder___electron_builder_22.11.7.tgz";
-        url  = "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.11.7.tgz";
-        sha1 = "cd97a0d9f6e6d388112e66b4376de431cca4d596";
+        name = "electron_builder___electron_builder_22.14.13.tgz";
+        url  = "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.14.13.tgz";
+        sha512 = "3fgLxqF2TXVKiUPeg74O4V3l0l3j7ERLazo8sUbRkApw0+4iVAf2BJkHsHMaXiigsgCoEzK/F4/rB5rne/VAnw==";
       };
     }
     {
-      name = "electron_publish___electron_publish_22.11.7.tgz";
+      name = "electron_osx_sign___electron_osx_sign_0.5.0.tgz";
       path = fetchurl {
-        name = "electron_publish___electron_publish_22.11.7.tgz";
-        url  = "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.11.7.tgz";
-        sha1 = "4126cbb08ccf082a2aa7fef89ee629b3a4b8ae9a";
+        name = "electron_osx_sign___electron_osx_sign_0.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/electron-osx-sign/-/electron-osx-sign-0.5.0.tgz";
+        sha512 = "icoRLHzFz/qxzDh/N4Pi2z4yVHurlsCAYQvsCSG7fCedJ4UJXBS6PoQyGH71IfcqKupcKeK7HX/NkyfG+v6vlQ==";
       };
     }
     {
-      name = "electron_to_chromium___electron_to_chromium_1.3.763.tgz";
+      name = "electron_publish___electron_publish_22.14.13.tgz";
       path = fetchurl {
-        name = "electron_to_chromium___electron_to_chromium_1.3.763.tgz";
-        url  = "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.763.tgz";
-        sha1 = "93f6f02506d099941f557b9db9ba50b30215bf15";
+        name = "electron_publish___electron_publish_22.14.13.tgz";
+        url  = "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.14.13.tgz";
+        sha512 = "0oP3QiNj3e8ewOaEpEJV/o6Zrmy2VarVvZ/bH7kyO/S/aJf9x8vQsKVWpsdmSiZ5DJEHgarFIXrnO0ZQf0P9iQ==";
       };
     }
     {
-      name = "electron___electron_13.1.4.tgz";
+      name = "electron_to_chromium___electron_to_chromium_1.4.90.tgz";
       path = fetchurl {
-        name = "electron___electron_13.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/electron/-/electron-13.1.4.tgz";
-        sha1 = "6d20d932a0651c3cba9f09a3d08cbaf5b69aa84b";
+        name = "electron_to_chromium___electron_to_chromium_1.4.90.tgz";
+        url  = "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.90.tgz";
+        sha512 = "ZwKgSA0mQMyEhz+NR0F8dRzkrCLeHLzLkjx/CWf16+zV85hQ6meXPQbKanvhnpkYb7b2uJNj+enQJ/N877ND4Q==";
       };
     }
     {
-      name = "emittery___emittery_0.8.1.tgz";
+      name = "electron___electron_17.0.1.tgz";
       path = fetchurl {
-        name = "emittery___emittery_0.8.1.tgz";
-        url  = "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz";
-        sha1 = "bb23cc86d03b30aa75a7f734819dee2e1ba70860";
+        name = "electron___electron_17.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/electron/-/electron-17.0.1.tgz";
+        sha512 = "CBReR/QEOpgwMdt59lWCtj9wC8oHB6aAjMF1lhXcGew132xtp+C5N6EaXb/fmDceVYLouziYjbNcpeXsWrqdpA==";
       };
     }
     {
-      name = "emoji_regex___emoji_regex_7.0.3.tgz";
+      name = "emittery___emittery_0.8.1.tgz";
       path = fetchurl {
-        name = "emoji_regex___emoji_regex_7.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz";
-        sha1 = "933a04052860c85e83c122479c4748a8e4c72156";
+        name = "emittery___emittery_0.8.1.tgz";
+        url  = "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz";
+        sha512 = "uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==";
       };
     }
     {
@@ -1886,7 +1846,7 @@
       path = fetchurl {
         name = "emoji_regex___emoji_regex_8.0.0.tgz";
         url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz";
-        sha1 = "e818fd69ce5ccfcb404594f842963bf53164cc37";
+        sha512 = "MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==";
       };
     }
     {
@@ -1894,7 +1854,7 @@
       path = fetchurl {
         name = "encodeurl___encodeurl_1.0.2.tgz";
         url  = "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz";
-        sha1 = "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59";
+        sha1 = "rT/0yG7C0CkyL1oCw6mmBslbP1k=";
       };
     }
     {
@@ -1902,23 +1862,23 @@
       path = fetchurl {
         name = "end_of_stream___end_of_stream_1.4.4.tgz";
         url  = "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz";
-        sha1 = "5ae64a5f45057baf3626ec14da0ca5e4b2431eb0";
+        sha512 = "+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==";
       };
     }
     {
-      name = "enquirer___enquirer_2.3.6.tgz";
+      name = "env_paths___env_paths_2.2.1.tgz";
       path = fetchurl {
-        name = "enquirer___enquirer_2.3.6.tgz";
-        url  = "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz";
-        sha1 = "2a7fe5dd634a1e4125a975ec994ff5456dc3734d";
+        name = "env_paths___env_paths_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz";
+        sha512 = "+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==";
       };
     }
     {
-      name = "env_paths___env_paths_2.2.1.tgz";
+      name = "error_ex___error_ex_1.3.2.tgz";
       path = fetchurl {
-        name = "env_paths___env_paths_2.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz";
-        sha1 = "420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2";
+        name = "error_ex___error_ex_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz";
+        sha512 = "7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==";
       };
     }
     {
@@ -1926,7 +1886,7 @@
       path = fetchurl {
         name = "es6_error___es6_error_4.1.1.tgz";
         url  = "https://registry.yarnpkg.com/es6-error/-/es6-error-4.1.1.tgz";
-        sha1 = "9e3af407459deed47e9a91f9b885a84eb05c561d";
+        sha512 = "Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==";
       };
     }
     {
@@ -1934,7 +1894,7 @@
       path = fetchurl {
         name = "escalade___escalade_3.1.1.tgz";
         url  = "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz";
-        sha1 = "d8cfdc7000965c5a0174b4a82eaa5c0552742e40";
+        sha512 = "k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==";
       };
     }
     {
@@ -1942,7 +1902,7 @@
       path = fetchurl {
         name = "escape_goat___escape_goat_2.1.1.tgz";
         url  = "https://registry.yarnpkg.com/escape-goat/-/escape-goat-2.1.1.tgz";
-        sha1 = "1b2dc77003676c457ec760b2dc68edb648188675";
+        sha512 = "8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==";
       };
     }
     {
@@ -1950,7 +1910,7 @@
       path = fetchurl {
         name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
         url  = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
-        sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4";
+        sha1 = "G2HAViGQqN/2rjuyzwIAyhMLhtQ=";
       };
     }
     {
@@ -1958,7 +1918,7 @@
       path = fetchurl {
         name = "escape_string_regexp___escape_string_regexp_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz";
-        sha1 = "a30304e99daa32e23b2fd20f51babd07cffca344";
+        sha512 = "UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==";
       };
     }
     {
@@ -1966,7 +1926,7 @@
       path = fetchurl {
         name = "escape_string_regexp___escape_string_regexp_4.0.0.tgz";
         url  = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz";
-        sha1 = "14ba83a5d373e3d311e5afca29cf5bfad965bf34";
+        sha512 = "TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==";
       };
     }
     {
@@ -1974,71 +1934,63 @@
       path = fetchurl {
         name = "escodegen___escodegen_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz";
-        sha1 = "5e32b12833e8aa8fa35e1bf0befa89380484c7dd";
+        sha512 = "mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==";
       };
     }
     {
-      name = "eslint_plugin_compat___eslint_plugin_compat_3.9.0.tgz";
+      name = "eslint_plugin_sort_keys___eslint_plugin_sort_keys_2.3.5.tgz";
       path = fetchurl {
-        name = "eslint_plugin_compat___eslint_plugin_compat_3.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-compat/-/eslint-plugin-compat-3.9.0.tgz";
-        sha1 = "a7a224e09b102b58e7f7dff52c936428ff3e0186";
+        name = "eslint_plugin_sort_keys___eslint_plugin_sort_keys_2.3.5.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-sort-keys/-/eslint-plugin-sort-keys-2.3.5.tgz";
+        sha512 = "2j/XKQ9sNJwK8kIp/U0EvuF6stS6/8aIc53/NskE4C5NRNh4dt3xzbZyOdrVC11cTH6Zo59/pdzA0Kb+2fQGWg==";
       };
     }
     {
-      name = "eslint_plugin_sort_keys_fix___eslint_plugin_sort_keys_fix_1.1.1.tgz";
+      name = "eslint_scope___eslint_scope_7.1.1.tgz";
       path = fetchurl {
-        name = "eslint_plugin_sort_keys_fix___eslint_plugin_sort_keys_fix_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-sort-keys-fix/-/eslint-plugin-sort-keys-fix-1.1.1.tgz";
-        sha1 = "2ed201b53fd4a89552c6e2abd38933f330a4b62e";
+        name = "eslint_scope___eslint_scope_7.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz";
+        sha512 = "QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==";
       };
     }
     {
-      name = "eslint_scope___eslint_scope_5.1.1.tgz";
+      name = "eslint_utils___eslint_utils_3.0.0.tgz";
       path = fetchurl {
-        name = "eslint_scope___eslint_scope_5.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz";
-        sha1 = "e786e59a66cb92b3f6c1fb0d508aab174848f48c";
+        name = "eslint_utils___eslint_utils_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz";
+        sha512 = "uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==";
       };
     }
     {
-      name = "eslint_utils___eslint_utils_2.1.0.tgz";
-      path = fetchurl {
-        name = "eslint_utils___eslint_utils_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz";
-        sha1 = "d2de5e03424e707dc10c74068ddedae708741b27";
-      };
-    }
-    {
-      name = "eslint_visitor_keys___eslint_visitor_keys_1.3.0.tgz";
+      name = "eslint_visitor_keys___eslint_visitor_keys_2.1.0.tgz";
       path = fetchurl {
-        name = "eslint_visitor_keys___eslint_visitor_keys_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz";
-        sha1 = "30ebd1ef7c2fdff01c3a4f151044af25fab0523e";
+        name = "eslint_visitor_keys___eslint_visitor_keys_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz";
+        sha512 = "0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==";
       };
     }
     {
-      name = "eslint_visitor_keys___eslint_visitor_keys_2.1.0.tgz";
+      name = "eslint_visitor_keys___eslint_visitor_keys_3.3.0.tgz";
       path = fetchurl {
-        name = "eslint_visitor_keys___eslint_visitor_keys_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz";
-        sha1 = "f65328259305927392c938ed44eb0a5c9b2bd303";
+        name = "eslint_visitor_keys___eslint_visitor_keys_3.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz";
+        sha512 = "mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==";
       };
     }
     {
-      name = "eslint___eslint_7.29.0.tgz";
+      name = "eslint___eslint_8.9.0.tgz";
       path = fetchurl {
-        name = "eslint___eslint_7.29.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint/-/eslint-7.29.0.tgz";
-        sha1 = "ee2a7648f2e729485e4d0bd6383ec1deabc8b3c0";
+        name = "eslint___eslint_8.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint/-/eslint-8.9.0.tgz";
+        sha512 = "PB09IGwv4F4b0/atrbcMFboF/giawbBLVC7fyDamk5Wtey4Jh2K+rYaBhCAbUyEI4QzB1ly09Uglc9iCtFaG2Q==";
       };
     }
     {
-      name = "espree___espree_7.3.1.tgz";
+      name = "espree___espree_9.3.1.tgz";
       path = fetchurl {
-        name = "espree___espree_7.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz";
-        sha1 = "f2df330b752c6f55019f8bd89b7660039c1bbbb6";
+        name = "espree___espree_9.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/espree/-/espree-9.3.1.tgz";
+        sha512 = "bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==";
       };
     }
     {
@@ -2046,7 +1998,7 @@
       path = fetchurl {
         name = "esprima___esprima_4.0.1.tgz";
         url  = "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz";
-        sha1 = "13b04cdb3e6c5d19df91ab6987a8695619b0aa71";
+        sha512 = "eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==";
       };
     }
     {
@@ -2054,7 +2006,7 @@
       path = fetchurl {
         name = "esquery___esquery_1.4.0.tgz";
         url  = "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz";
-        sha1 = "2148ffc38b82e8c7057dfed48425b3e61f0f24a5";
+        sha512 = "cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==";
       };
     }
     {
@@ -2062,23 +2014,15 @@
       path = fetchurl {
         name = "esrecurse___esrecurse_4.3.0.tgz";
         url  = "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz";
-        sha1 = "7ad7964d679abb28bee72cec63758b1c5d2c9921";
+        sha512 = "KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==";
       };
     }
     {
-      name = "estraverse___estraverse_4.3.0.tgz";
+      name = "estraverse___estraverse_5.3.0.tgz";
       path = fetchurl {
-        name = "estraverse___estraverse_4.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz";
-        sha1 = "398ad3f3c5a24948be7725e83d11a7de28cdbd1d";
-      };
-    }
-    {
-      name = "estraverse___estraverse_5.2.0.tgz";
-      path = fetchurl {
-        name = "estraverse___estraverse_5.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz";
-        sha1 = "307df42547e6cc7324d3cf03c155d5cdb8c53880";
+        name = "estraverse___estraverse_5.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz";
+        sha512 = "MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==";
       };
     }
     {
@@ -2086,7 +2030,7 @@
       path = fetchurl {
         name = "esutils___esutils_2.0.3.tgz";
         url  = "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz";
-        sha1 = "74d2eb4de0b8da1293711910d50775b9b710ef64";
+        sha512 = "kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==";
       };
     }
     {
@@ -2094,15 +2038,7 @@
       path = fetchurl {
         name = "execa___execa_5.1.1.tgz";
         url  = "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz";
-        sha1 = "f80ad9cbf4298f7bd1d4c9555c21e93741c411dd";
-      };
-    }
-    {
-      name = "exit_on_epipe___exit_on_epipe_1.0.1.tgz";
-      path = fetchurl {
-        name = "exit_on_epipe___exit_on_epipe_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz";
-        sha1 = "0bdd92e87d5285d267daa8171d0eb06159689692";
+        sha512 = "8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==";
       };
     }
     {
@@ -2110,23 +2046,15 @@
       path = fetchurl {
         name = "exit___exit_0.1.2.tgz";
         url  = "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz";
-        sha1 = "0632638f8d877cc82107d30a0fff1a17cba1cd0c";
+        sha1 = "BjJjj42HfMghB9MKD/8aF8uhzQw=";
       };
     }
     {
-      name = "expect___expect_27.0.6.tgz";
+      name = "expect___expect_27.5.1.tgz";
       path = fetchurl {
-        name = "expect___expect_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/expect/-/expect-27.0.6.tgz";
-        sha1 = "a4d74fbe27222c718fff68ef49d78e26a8fd4c05";
-      };
-    }
-    {
-      name = "extend___extend_3.0.2.tgz";
-      path = fetchurl {
-        name = "extend___extend_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz";
-        sha1 = "f8b1136b4071fbd8eb140aff858b1019ec2915fa";
+        name = "expect___expect_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/expect/-/expect-27.5.1.tgz";
+        sha512 = "E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==";
       };
     }
     {
@@ -2134,15 +2062,15 @@
       path = fetchurl {
         name = "extract_zip___extract_zip_1.7.0.tgz";
         url  = "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.7.0.tgz";
-        sha1 = "556cc3ae9df7f452c493a0cfb51cc30277940927";
+        sha512 = "xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==";
       };
     }
     {
-      name = "extsprintf___extsprintf_1.4.0.tgz";
+      name = "extsprintf___extsprintf_1.4.1.tgz";
       path = fetchurl {
-        name = "extsprintf___extsprintf_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz";
-        sha1 = "e2689f8f356fad62cca65a3a91c5df5f9551692f";
+        name = "extsprintf___extsprintf_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz";
+        sha512 = "Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==";
       };
     }
     {
@@ -2150,7 +2078,7 @@
       path = fetchurl {
         name = "fast_deep_equal___fast_deep_equal_3.1.3.tgz";
         url  = "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz";
-        sha1 = "3a7d56b559d6cbc3eb512325244e619a65c6c525";
+        sha512 = "f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==";
       };
     }
     {
@@ -2158,7 +2086,7 @@
       path = fetchurl {
         name = "fast_json_stable_stringify___fast_json_stable_stringify_2.1.0.tgz";
         url  = "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz";
-        sha1 = "874bf69c6f404c2b5d99c481341399fd55892633";
+        sha512 = "lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==";
       };
     }
     {
@@ -2166,15 +2094,15 @@
       path = fetchurl {
         name = "fast_levenshtein___fast_levenshtein_2.0.6.tgz";
         url  = "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz";
-        sha1 = "3d8a5c66883a16a30ca8643e851f19baa7797917";
+        sha1 = "PYpcZog6FqMMqGQ+hR8Zuqd5eRc=";
       };
     }
     {
-      name = "fast_xml_parser___fast_xml_parser_3.19.0.tgz";
+      name = "fast_xml_parser___fast_xml_parser_3.21.1.tgz";
       path = fetchurl {
-        name = "fast_xml_parser___fast_xml_parser_3.19.0.tgz";
-        url  = "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-3.19.0.tgz";
-        sha1 = "cb637ec3f3999f51406dd8ff0e6fc4d83e520d01";
+        name = "fast_xml_parser___fast_xml_parser_3.21.1.tgz";
+        url  = "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-3.21.1.tgz";
+        sha512 = "FTFVjYoBOZTJekiUsawGsSYV9QL0A+zDYCRj7y34IO6Jg+2IMYEtQa+bbictpdpV8dHxXywqU7C0gRDEOFtBFg==";
       };
     }
     {
@@ -2182,7 +2110,7 @@
       path = fetchurl {
         name = "fb_watchman___fb_watchman_2.0.1.tgz";
         url  = "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz";
-        sha1 = "fc84fb39d2709cf3ff6d743706157bb5708a8a85";
+        sha512 = "DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==";
       };
     }
     {
@@ -2190,7 +2118,7 @@
       path = fetchurl {
         name = "fd_slicer___fd_slicer_1.1.0.tgz";
         url  = "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz";
-        sha1 = "25c7c89cb1f9077f8891bbe61d8f390eae256f1e";
+        sha1 = "JcfInLH5B3+IkbvmHY85Dq4lbx4=";
       };
     }
     {
@@ -2198,7 +2126,7 @@
       path = fetchurl {
         name = "file_entry_cache___file_entry_cache_6.0.1.tgz";
         url  = "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz";
-        sha1 = "211b2dd9659cb0394b073e7323ac3c933d522027";
+        sha512 = "7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==";
       };
     }
     {
@@ -2206,7 +2134,7 @@
       path = fetchurl {
         name = "filelist___filelist_1.0.2.tgz";
         url  = "https://registry.yarnpkg.com/filelist/-/filelist-1.0.2.tgz";
-        sha1 = "80202f21462d4d1c2e214119b1807c1bc0380e5b";
+        sha512 = "z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==";
       };
     }
     {
@@ -2214,7 +2142,7 @@
       path = fetchurl {
         name = "fill_range___fill_range_7.0.1.tgz";
         url  = "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz";
-        sha1 = "1919a6a7c75fe38b2c7c77e5198535da9acdda40";
+        sha512 = "qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==";
       };
     }
     {
@@ -2222,7 +2150,7 @@
       path = fetchurl {
         name = "find_up___find_up_4.1.0.tgz";
         url  = "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz";
-        sha1 = "97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19";
+        sha512 = "PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==";
       };
     }
     {
@@ -2230,15 +2158,15 @@
       path = fetchurl {
         name = "flat_cache___flat_cache_3.0.4.tgz";
         url  = "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz";
-        sha1 = "61b0338302b2fe9f957dcc32fc2a87f1c3048b11";
+        sha512 = "dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==";
       };
     }
     {
-      name = "flatted___flatted_3.1.1.tgz";
+      name = "flatted___flatted_3.2.5.tgz";
       path = fetchurl {
-        name = "flatted___flatted_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz";
-        sha1 = "c4b489e80096d9df1dfc97c79871aea7c617c469";
+        name = "flatted___flatted_3.2.5.tgz";
+        url  = "https://registry.yarnpkg.com/flatted/-/flatted-3.2.5.tgz";
+        sha512 = "WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==";
       };
     }
     {
@@ -2246,23 +2174,23 @@
       path = fetchurl {
         name = "form_data___form_data_3.0.1.tgz";
         url  = "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz";
-        sha1 = "ebd53791b78356a99af9a300d4282c4d5eb9755f";
+        sha512 = "RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==";
       };
     }
     {
-      name = "fs_constants___fs_constants_1.0.0.tgz";
+      name = "form_data___form_data_4.0.0.tgz";
       path = fetchurl {
-        name = "fs_constants___fs_constants_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz";
-        sha1 = "6be0de9be998ce16af8afc24497b9ee9b7ccd9ad";
+        name = "form_data___form_data_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz";
+        sha512 = "ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==";
       };
     }
     {
-      name = "fs_extra___fs_extra_10.0.0.tgz";
+      name = "fs_extra___fs_extra_10.0.1.tgz";
       path = fetchurl {
-        name = "fs_extra___fs_extra_10.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.0.tgz";
-        sha1 = "9ff61b655dde53fb34a82df84bb214ce802e17c1";
+        name = "fs_extra___fs_extra_10.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.1.tgz";
+        sha512 = "NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag==";
       };
     }
     {
@@ -2270,7 +2198,7 @@
       path = fetchurl {
         name = "fs_extra___fs_extra_8.1.0.tgz";
         url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz";
-        sha1 = "49d43c45a88cd9677668cb7be1b46efdb8d2e1c0";
+        sha512 = "yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==";
       };
     }
     {
@@ -2278,7 +2206,7 @@
       path = fetchurl {
         name = "fs_extra___fs_extra_9.1.0.tgz";
         url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz";
-        sha1 = "5954460c764a8da2094ba3554bf839e6b9a7c86d";
+        sha512 = "hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==";
       };
     }
     {
@@ -2286,7 +2214,7 @@
       path = fetchurl {
         name = "fs.realpath___fs.realpath_1.0.0.tgz";
         url  = "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz";
-        sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f";
+        sha1 = "FQStJSMVjKpA20onh8sBQRmU6k8=";
       };
     }
     {
@@ -2294,7 +2222,7 @@
       path = fetchurl {
         name = "fsevents___fsevents_2.3.2.tgz";
         url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz";
-        sha1 = "8a526f78b8fdf4623b709e0b975c52c24c02fd1a";
+        sha512 = "xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==";
       };
     }
     {
@@ -2302,7 +2230,7 @@
       path = fetchurl {
         name = "function_bind___function_bind_1.1.1.tgz";
         url  = "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz";
-        sha1 = "a56899d3ea3c9bab874bb9773b7c5ede92f4895d";
+        sha512 = "yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==";
       };
     }
     {
@@ -2310,7 +2238,7 @@
       path = fetchurl {
         name = "functional_red_black_tree___functional_red_black_tree_1.0.1.tgz";
         url  = "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz";
-        sha1 = "1b0ab3bd553b2a0d6399d29c0e3ea0b252078327";
+        sha1 = "GwqzvVU7Kg1jmdKcDj6gslIHgyc=";
       };
     }
     {
@@ -2318,7 +2246,7 @@
       path = fetchurl {
         name = "gensync___gensync_1.0.0_beta.2.tgz";
         url  = "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz";
-        sha1 = "32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0";
+        sha512 = "3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==";
       };
     }
     {
@@ -2326,7 +2254,7 @@
       path = fetchurl {
         name = "get_caller_file___get_caller_file_2.0.5.tgz";
         url  = "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz";
-        sha1 = "4f94412a82db32f36e3b0b9741f8a97feb031f7e";
+        sha512 = "DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==";
       };
     }
     {
@@ -2334,7 +2262,7 @@
       path = fetchurl {
         name = "get_package_type___get_package_type_0.1.0.tgz";
         url  = "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz";
-        sha1 = "8de2d803cff44df3bc6c456e6668b36c3926e11a";
+        sha512 = "pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==";
       };
     }
     {
@@ -2342,7 +2270,7 @@
       path = fetchurl {
         name = "get_stream___get_stream_4.1.0.tgz";
         url  = "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz";
-        sha1 = "c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5";
+        sha512 = "GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==";
       };
     }
     {
@@ -2350,7 +2278,7 @@
       path = fetchurl {
         name = "get_stream___get_stream_5.2.0.tgz";
         url  = "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz";
-        sha1 = "4966a1795ee5ace65e706c4b7beb71257d6e22d3";
+        sha512 = "nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==";
       };
     }
     {
@@ -2358,31 +2286,31 @@
       path = fetchurl {
         name = "get_stream___get_stream_6.0.1.tgz";
         url  = "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz";
-        sha1 = "a262d8eef67aced57c2852ad6167526a43cbf7b7";
+        sha512 = "ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==";
       };
     }
     {
-      name = "glob_parent___glob_parent_5.1.2.tgz";
+      name = "glob_parent___glob_parent_6.0.2.tgz";
       path = fetchurl {
-        name = "glob_parent___glob_parent_5.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz";
-        sha1 = "869832c58034fe68a4093c17dc15e8340d8401c4";
+        name = "glob_parent___glob_parent_6.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz";
+        sha512 = "XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==";
       };
     }
     {
-      name = "glob___glob_7.1.7.tgz";
+      name = "glob___glob_7.2.0.tgz";
       path = fetchurl {
-        name = "glob___glob_7.1.7.tgz";
-        url  = "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz";
-        sha1 = "3b193e9233f01d42d0b3f78294bbeeb418f94a90";
+        name = "glob___glob_7.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz";
+        sha512 = "lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==";
       };
     }
     {
-      name = "global_agent___global_agent_2.2.0.tgz";
+      name = "global_agent___global_agent_3.0.0.tgz";
       path = fetchurl {
-        name = "global_agent___global_agent_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/global-agent/-/global-agent-2.2.0.tgz";
-        sha1 = "566331b0646e6bf79429a16877685c4a1fbf76dc";
+        name = "global_agent___global_agent_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/global-agent/-/global-agent-3.0.0.tgz";
+        sha512 = "PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==";
       };
     }
     {
@@ -2390,7 +2318,7 @@
       path = fetchurl {
         name = "global_dirs___global_dirs_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/global-dirs/-/global-dirs-3.0.0.tgz";
-        sha1 = "70a76fe84ea315ab37b1f5576cbde7d48ef72686";
+        sha512 = "v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==";
       };
     }
     {
@@ -2398,7 +2326,7 @@
       path = fetchurl {
         name = "global_tunnel_ng___global_tunnel_ng_2.7.1.tgz";
         url  = "https://registry.yarnpkg.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz";
-        sha1 = "d03b5102dfde3a69914f5ee7d86761ca35d57d8f";
+        sha512 = "4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==";
       };
     }
     {
@@ -2406,15 +2334,15 @@
       path = fetchurl {
         name = "globals___globals_11.12.0.tgz";
         url  = "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz";
-        sha1 = "ab8795338868a0babd8525758018c2a7eb95c42e";
+        sha512 = "WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==";
       };
     }
     {
-      name = "globals___globals_13.9.0.tgz";
+      name = "globals___globals_13.13.0.tgz";
       path = fetchurl {
-        name = "globals___globals_13.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/globals/-/globals-13.9.0.tgz";
-        sha1 = "4bf2bf635b334a173fb1daf7c5e6b218ecdc06cb";
+        name = "globals___globals_13.13.0.tgz";
+        url  = "https://registry.yarnpkg.com/globals/-/globals-13.13.0.tgz";
+        sha512 = "EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==";
       };
     }
     {
@@ -2422,7 +2350,7 @@
       path = fetchurl {
         name = "globalthis___globalthis_1.0.2.tgz";
         url  = "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.2.tgz";
-        sha1 = "2a235d34f4d8036219f7e34929b5de9e18166b8b";
+        sha512 = "ZQnSFO1la8P7auIOQECnm0sSuoMeaSq0EEdXMBFF2QJO4uNcwbyhSgG3MruWNbFTqCLmxVwGOl7LZ9kASvHdeQ==";
       };
     }
     {
@@ -2430,15 +2358,15 @@
       path = fetchurl {
         name = "got___got_9.6.0.tgz";
         url  = "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz";
-        sha1 = "edf45e7d67f99545705de1f7bbeeeb121765ed85";
+        sha512 = "R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==";
       };
     }
     {
-      name = "graceful_fs___graceful_fs_4.2.6.tgz";
+      name = "graceful_fs___graceful_fs_4.2.9.tgz";
       path = fetchurl {
-        name = "graceful_fs___graceful_fs_4.2.6.tgz";
-        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.6.tgz";
-        sha1 = "ff040b2b0853b23c3d31027523706f1885d76bee";
+        name = "graceful_fs___graceful_fs_4.2.9.tgz";
+        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz";
+        sha512 = "NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==";
       };
     }
     {
@@ -2446,7 +2374,7 @@
       path = fetchurl {
         name = "graceful_readlink___graceful_readlink_1.0.1.tgz";
         url  = "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz";
-        sha1 = "4cafad76bc62f02fa039b2f94e9a3dd3a391a725";
+        sha1 = "TK+tdrxi8C+gObL5Tpo906ORpyU=";
       };
     }
     {
@@ -2454,7 +2382,7 @@
       path = fetchurl {
         name = "has_flag___has_flag_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz";
-        sha1 = "b5d454dc2199ae225699f3467e5a07f3b955bafd";
+        sha1 = "tdRU3CGZriJWmfNGfloH87lVuv0=";
       };
     }
     {
@@ -2462,7 +2390,7 @@
       path = fetchurl {
         name = "has_flag___has_flag_4.0.0.tgz";
         url  = "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz";
-        sha1 = "944771fd9c81c81265c4d6941860da06bb59479b";
+        sha512 = "EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==";
       };
     }
     {
@@ -2470,7 +2398,7 @@
       path = fetchurl {
         name = "has_yarn___has_yarn_2.1.0.tgz";
         url  = "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz";
-        sha1 = "137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77";
+        sha512 = "UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==";
       };
     }
     {
@@ -2478,15 +2406,15 @@
       path = fetchurl {
         name = "has___has_1.0.3.tgz";
         url  = "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz";
-        sha1 = "722d7cbfc1f6aa8241f16dd814e011e1f41e8796";
+        sha512 = "f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==";
       };
     }
     {
-      name = "hosted_git_info___hosted_git_info_4.0.2.tgz";
+      name = "hosted_git_info___hosted_git_info_4.1.0.tgz";
       path = fetchurl {
-        name = "hosted_git_info___hosted_git_info_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz";
-        sha1 = "5e425507eede4fea846b7262f0838456c4209961";
+        name = "hosted_git_info___hosted_git_info_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz";
+        sha512 = "kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==";
       };
     }
     {
@@ -2494,7 +2422,7 @@
       path = fetchurl {
         name = "html_encoding_sniffer___html_encoding_sniffer_2.0.1.tgz";
         url  = "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz";
-        sha1 = "42a6dc4fd33f00281176e8b23759ca4e4fa185f3";
+        sha512 = "D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==";
       };
     }
     {
@@ -2502,7 +2430,7 @@
       path = fetchurl {
         name = "html_escaper___html_escaper_2.0.2.tgz";
         url  = "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz";
-        sha1 = "dfd60027da36a36dfcbe236262c00a5822681453";
+        sha512 = "H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==";
       };
     }
     {
@@ -2510,7 +2438,7 @@
       path = fetchurl {
         name = "http_cache_semantics___http_cache_semantics_4.1.0.tgz";
         url  = "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz";
-        sha1 = "49e91c5cbf36c9b94bcfcd71c23d5249ec74e390";
+        sha512 = "carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==";
       };
     }
     {
@@ -2518,7 +2446,15 @@
       path = fetchurl {
         name = "http_proxy_agent___http_proxy_agent_4.0.1.tgz";
         url  = "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz";
-        sha1 = "8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a";
+        sha512 = "k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==";
+      };
+    }
+    {
+      name = "http_proxy_agent___http_proxy_agent_5.0.0.tgz";
+      path = fetchurl {
+        name = "http_proxy_agent___http_proxy_agent_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz";
+        sha512 = "n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==";
       };
     }
     {
@@ -2526,7 +2462,7 @@
       path = fetchurl {
         name = "https_proxy_agent___https_proxy_agent_5.0.0.tgz";
         url  = "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz";
-        sha1 = "e2a90542abb68a762e0a0850f6c9edadfd8506b2";
+        sha512 = "EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==";
       };
     }
     {
@@ -2534,15 +2470,15 @@
       path = fetchurl {
         name = "human_signals___human_signals_2.1.0.tgz";
         url  = "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz";
-        sha1 = "dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0";
+        sha512 = "B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==";
       };
     }
     {
-      name = "iconv_corefoundation___iconv_corefoundation_1.1.6.tgz";
+      name = "iconv_corefoundation___iconv_corefoundation_1.1.7.tgz";
       path = fetchurl {
-        name = "iconv_corefoundation___iconv_corefoundation_1.1.6.tgz";
-        url  = "https://registry.yarnpkg.com/iconv-corefoundation/-/iconv-corefoundation-1.1.6.tgz";
-        sha1 = "27c135470237f6f8d13462fa1f5eaf250523c29a";
+        name = "iconv_corefoundation___iconv_corefoundation_1.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz";
+        sha512 = "T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==";
       };
     }
     {
@@ -2550,7 +2486,7 @@
       path = fetchurl {
         name = "iconv_lite___iconv_lite_0.4.24.tgz";
         url  = "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz";
-        sha1 = "2022b4b25fbddc21d2f524974a474aafe733908b";
+        sha512 = "v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==";
       };
     }
     {
@@ -2558,7 +2494,7 @@
       path = fetchurl {
         name = "iconv_lite___iconv_lite_0.6.3.tgz";
         url  = "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz";
-        sha1 = "a52f80bf38da1952eb5c681790719871a1a72501";
+        sha512 = "4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==";
       };
     }
     {
@@ -2566,15 +2502,15 @@
       path = fetchurl {
         name = "ieee754___ieee754_1.2.1.tgz";
         url  = "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz";
-        sha1 = "8eb7a10a63fff25d15a57b001586d177d1b0d352";
+        sha512 = "dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==";
       };
     }
     {
-      name = "ignore___ignore_4.0.6.tgz";
+      name = "ignore___ignore_5.2.0.tgz";
       path = fetchurl {
-        name = "ignore___ignore_4.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz";
-        sha1 = "750e3db5862087b4737ebac8207ffd1ef27b25fc";
+        name = "ignore___ignore_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz";
+        sha512 = "CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==";
       };
     }
     {
@@ -2582,7 +2518,7 @@
       path = fetchurl {
         name = "import_fresh___import_fresh_3.3.0.tgz";
         url  = "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz";
-        sha1 = "37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b";
+        sha512 = "veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==";
       };
     }
     {
@@ -2590,15 +2526,15 @@
       path = fetchurl {
         name = "import_lazy___import_lazy_2.1.0.tgz";
         url  = "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz";
-        sha1 = "05698e3d45c88e8d7e9d92cb0584e77f096f3e43";
+        sha1 = "BWmOPUXIjo1+nZLLBYTnfwlvPkM=";
       };
     }
     {
-      name = "import_local___import_local_3.0.2.tgz";
+      name = "import_local___import_local_3.1.0.tgz";
       path = fetchurl {
-        name = "import_local___import_local_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/import-local/-/import-local-3.0.2.tgz";
-        sha1 = "a8cfd0431d1de4a2199703d003e3e62364fa6db6";
+        name = "import_local___import_local_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz";
+        sha512 = "ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==";
       };
     }
     {
@@ -2606,7 +2542,7 @@
       path = fetchurl {
         name = "imurmurhash___imurmurhash_0.1.4.tgz";
         url  = "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz";
-        sha1 = "9218b9b2b928a238b13dc4fb6b6d576f231453ea";
+        sha1 = "khi5srkoojixPcT7a21XbyMUU+o=";
       };
     }
     {
@@ -2614,7 +2550,7 @@
       path = fetchurl {
         name = "inflight___inflight_1.0.6.tgz";
         url  = "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz";
-        sha1 = "49bd6331d7d02d0c09bc910a1075ba8165b56df9";
+        sha1 = "Sb1jMdfQLQwJvJEKEHW6gWW1bfk=";
       };
     }
     {
@@ -2622,7 +2558,7 @@
       path = fetchurl {
         name = "inherits___inherits_2.0.4.tgz";
         url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz";
-        sha1 = "0fa2c64f932917c3433a0ded55363aae37416b7c";
+        sha512 = "k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==";
       };
     }
     {
@@ -2630,7 +2566,7 @@
       path = fetchurl {
         name = "ini___ini_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/ini/-/ini-2.0.0.tgz";
-        sha1 = "e5fd556ecdd5726be978fa1001862eacb0a94bc5";
+        sha512 = "7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==";
       };
     }
     {
@@ -2638,7 +2574,15 @@
       path = fetchurl {
         name = "ini___ini_1.3.8.tgz";
         url  = "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz";
-        sha1 = "a29da425b48806f34767a4efce397269af28432c";
+        sha512 = "JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==";
+      };
+    }
+    {
+      name = "is_arrayish___is_arrayish_0.2.1.tgz";
+      path = fetchurl {
+        name = "is_arrayish___is_arrayish_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz";
+        sha1 = "d8mYQFJ6qOyxqLppe4BkWnqSap0=";
       };
     }
     {
@@ -2646,23 +2590,23 @@
       path = fetchurl {
         name = "is_ci___is_ci_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz";
-        sha1 = "6bc6334181810e04b5c22b3d589fdca55026404c";
+        sha512 = "YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==";
       };
     }
     {
-      name = "is_ci___is_ci_3.0.0.tgz";
+      name = "is_ci___is_ci_3.0.1.tgz";
       path = fetchurl {
-        name = "is_ci___is_ci_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.0.tgz";
-        sha1 = "c7e7be3c9d8eef7d0fa144390bd1e4b88dc4c994";
+        name = "is_ci___is_ci_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.1.tgz";
+        sha512 = "ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==";
       };
     }
     {
-      name = "is_core_module___is_core_module_2.4.0.tgz";
+      name = "is_core_module___is_core_module_2.8.1.tgz";
       path = fetchurl {
-        name = "is_core_module___is_core_module_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.4.0.tgz";
-        sha1 = "8e9fc8e15027b011418026e98f0e6f4d86305cc1";
+        name = "is_core_module___is_core_module_2.8.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz";
+        sha512 = "SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==";
       };
     }
     {
@@ -2670,15 +2614,7 @@
       path = fetchurl {
         name = "is_extglob___is_extglob_2.1.1.tgz";
         url  = "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz";
-        sha1 = "a88c02535791f02ed37c76a1b9ea9773c833f8c2";
-      };
-    }
-    {
-      name = "is_fullwidth_code_point___is_fullwidth_code_point_2.0.0.tgz";
-      path = fetchurl {
-        name = "is_fullwidth_code_point___is_fullwidth_code_point_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz";
-        sha1 = "a3b30a5c4f199183167aaab93beefae3ddfb654f";
+        sha1 = "qIwCU1eR8C7TfHahueqXc8gz+MI=";
       };
     }
     {
@@ -2686,7 +2622,7 @@
       path = fetchurl {
         name = "is_fullwidth_code_point___is_fullwidth_code_point_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz";
-        sha1 = "f116f8064fe90b3f7844a38997c0b75051269f1d";
+        sha512 = "zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==";
       };
     }
     {
@@ -2694,15 +2630,15 @@
       path = fetchurl {
         name = "is_generator_fn___is_generator_fn_2.1.0.tgz";
         url  = "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz";
-        sha1 = "7d140adc389aaf3011a8f2a2a4cfa6faadffb118";
+        sha512 = "cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==";
       };
     }
     {
-      name = "is_glob___is_glob_4.0.1.tgz";
+      name = "is_glob___is_glob_4.0.3.tgz";
       path = fetchurl {
-        name = "is_glob___is_glob_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz";
-        sha1 = "7567dbe9f2f5e2467bc77ab83c4a29482407a5dc";
+        name = "is_glob___is_glob_4.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz";
+        sha512 = "xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==";
       };
     }
     {
@@ -2710,7 +2646,7 @@
       path = fetchurl {
         name = "is_installed_globally___is_installed_globally_0.4.0.tgz";
         url  = "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.4.0.tgz";
-        sha1 = "9a0fd407949c30f86eb6959ef1b7994ed0b7b520";
+        sha512 = "iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==";
       };
     }
     {
@@ -2718,7 +2654,7 @@
       path = fetchurl {
         name = "is_npm___is_npm_5.0.0.tgz";
         url  = "https://registry.yarnpkg.com/is-npm/-/is-npm-5.0.0.tgz";
-        sha1 = "43e8d65cc56e1b67f8d47262cf667099193f45a8";
+        sha512 = "WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==";
       };
     }
     {
@@ -2726,7 +2662,7 @@
       path = fetchurl {
         name = "is_number___is_number_7.0.0.tgz";
         url  = "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz";
-        sha1 = "7535345b896734d5f80c4d06c50955527a14f12b";
+        sha512 = "41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==";
       };
     }
     {
@@ -2734,7 +2670,7 @@
       path = fetchurl {
         name = "is_obj___is_obj_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz";
-        sha1 = "473fb05d973705e3fd9620545018ca8e22ef4982";
+        sha512 = "drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==";
       };
     }
     {
@@ -2742,7 +2678,7 @@
       path = fetchurl {
         name = "is_path_inside___is_path_inside_3.0.3.tgz";
         url  = "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz";
-        sha1 = "d231362e53a07ff2b0e0ea7fed049161ffd16283";
+        sha512 = "Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==";
       };
     }
     {
@@ -2750,23 +2686,23 @@
       path = fetchurl {
         name = "is_potential_custom_element_name___is_potential_custom_element_name_1.0.1.tgz";
         url  = "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz";
-        sha1 = "171ed6f19e3ac554394edf78caa05784a45bebb5";
+        sha512 = "bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==";
       };
     }
     {
-      name = "is_stream___is_stream_2.0.0.tgz";
+      name = "is_stream___is_stream_2.0.1.tgz";
       path = fetchurl {
-        name = "is_stream___is_stream_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz";
-        sha1 = "bde9c32680d6fae04129d6ac9d921ce7815f78e3";
+        name = "is_stream___is_stream_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz";
+        sha512 = "hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==";
       };
     }
     {
-      name = "is_svg___is_svg_4.3.1.tgz";
+      name = "is_svg___is_svg_4.3.2.tgz";
       path = fetchurl {
-        name = "is_svg___is_svg_4.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-svg/-/is-svg-4.3.1.tgz";
-        sha1 = "8c63ec8c67c8c7f0a8de0a71c8c7d58eccf4406b";
+        name = "is_svg___is_svg_4.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-svg/-/is-svg-4.3.2.tgz";
+        sha512 = "mM90duy00JGMyjqIVHu9gNTjywdZV+8qNasX8cm/EEYZ53PHDgajvbBwNVvty5dwSAxLUD3p3bdo+7sR/UMrpw==";
       };
     }
     {
@@ -2774,7 +2710,7 @@
       path = fetchurl {
         name = "is_typedarray___is_typedarray_1.0.0.tgz";
         url  = "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz";
-        sha1 = "e479c80858df0c1b11ddda6940f96011fcda4a9a";
+        sha1 = "5HnICFjfDBsR3dppQPlgEfzaSpo=";
       };
     }
     {
@@ -2782,7 +2718,7 @@
       path = fetchurl {
         name = "is_yarn_global___is_yarn_global_0.3.0.tgz";
         url  = "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz";
-        sha1 = "d502d3382590ea3004893746754c89139973e232";
+        sha512 = "VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==";
       };
     }
     {
@@ -2790,7 +2726,15 @@
       path = fetchurl {
         name = "isarray___isarray_1.0.0.tgz";
         url  = "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz";
-        sha1 = "bb935d48582cba168c06834957a54a3e07124f11";
+        sha1 = "u5NdSFgsuhaMBoNJV6VKPgcSTxE=";
+      };
+    }
+    {
+      name = "isbinaryfile___isbinaryfile_3.0.3.tgz";
+      path = fetchurl {
+        name = "isbinaryfile___isbinaryfile_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-3.0.3.tgz";
+        sha512 = "8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==";
       };
     }
     {
@@ -2798,7 +2742,7 @@
       path = fetchurl {
         name = "isbinaryfile___isbinaryfile_4.0.8.tgz";
         url  = "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.8.tgz";
-        sha1 = "5d34b94865bd4946633ecc78a026fc76c5b11fcf";
+        sha512 = "53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w==";
       };
     }
     {
@@ -2806,23 +2750,23 @@
       path = fetchurl {
         name = "isexe___isexe_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz";
-        sha1 = "e8fbf374dc556ff8947a10dcb0572d633f2cfa10";
+        sha1 = "6PvzdNxVb/iUehDcsFctYz8s+hA=";
       };
     }
     {
-      name = "istanbul_lib_coverage___istanbul_lib_coverage_3.0.0.tgz";
+      name = "istanbul_lib_coverage___istanbul_lib_coverage_3.2.0.tgz";
       path = fetchurl {
-        name = "istanbul_lib_coverage___istanbul_lib_coverage_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz";
-        sha1 = "f5944a37c70b550b02a78a5c3b2055b280cec8ec";
+        name = "istanbul_lib_coverage___istanbul_lib_coverage_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz";
+        sha512 = "eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==";
       };
     }
     {
-      name = "istanbul_lib_instrument___istanbul_lib_instrument_4.0.3.tgz";
+      name = "istanbul_lib_instrument___istanbul_lib_instrument_5.1.0.tgz";
       path = fetchurl {
-        name = "istanbul_lib_instrument___istanbul_lib_instrument_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz";
-        sha1 = "873c6fff897450118222774696a3f28902d77c1d";
+        name = "istanbul_lib_instrument___istanbul_lib_instrument_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz";
+        sha512 = "czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==";
       };
     }
     {
@@ -2830,159 +2774,159 @@
       path = fetchurl {
         name = "istanbul_lib_report___istanbul_lib_report_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz";
-        sha1 = "7518fe52ea44de372f460a76b5ecda9ffb73d8a6";
+        sha512 = "wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==";
       };
     }
     {
-      name = "istanbul_lib_source_maps___istanbul_lib_source_maps_4.0.0.tgz";
+      name = "istanbul_lib_source_maps___istanbul_lib_source_maps_4.0.1.tgz";
       path = fetchurl {
-        name = "istanbul_lib_source_maps___istanbul_lib_source_maps_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz";
-        sha1 = "75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9";
+        name = "istanbul_lib_source_maps___istanbul_lib_source_maps_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz";
+        sha512 = "n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==";
       };
     }
     {
-      name = "istanbul_reports___istanbul_reports_3.0.2.tgz";
+      name = "istanbul_reports___istanbul_reports_3.1.4.tgz";
       path = fetchurl {
-        name = "istanbul_reports___istanbul_reports_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz";
-        sha1 = "d593210e5000683750cb09fc0644e4b6e27fd53b";
+        name = "istanbul_reports___istanbul_reports_3.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.4.tgz";
+        sha512 = "r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==";
       };
     }
     {
-      name = "jake___jake_10.8.2.tgz";
+      name = "jake___jake_10.8.4.tgz";
       path = fetchurl {
-        name = "jake___jake_10.8.2.tgz";
-        url  = "https://registry.yarnpkg.com/jake/-/jake-10.8.2.tgz";
-        sha1 = "ebc9de8558160a66d82d0eadc6a2e58fbc500a7b";
+        name = "jake___jake_10.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/jake/-/jake-10.8.4.tgz";
+        sha512 = "MtWeTkl1qGsWUtbl/Jsca/8xSoK3x0UmS82sNbjqxxG/de/M/3b1DntdjHgPMC50enlTNwXOCRqPXLLt5cCfZA==";
       };
     }
     {
-      name = "jest_changed_files___jest_changed_files_27.0.6.tgz";
+      name = "jest_changed_files___jest_changed_files_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_changed_files___jest_changed_files_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.0.6.tgz";
-        sha1 = "bed6183fcdea8a285482e3b50a9a7712d49a7a8b";
+        name = "jest_changed_files___jest_changed_files_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz";
+        sha512 = "buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==";
       };
     }
     {
-      name = "jest_circus___jest_circus_27.0.6.tgz";
+      name = "jest_circus___jest_circus_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_circus___jest_circus_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.0.6.tgz";
-        sha1 = "dd4df17c4697db6a2c232aaad4e9cec666926668";
+        name = "jest_circus___jest_circus_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.5.1.tgz";
+        sha512 = "D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==";
       };
     }
     {
-      name = "jest_cli___jest_cli_27.0.6.tgz";
+      name = "jest_cli___jest_cli_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_cli___jest_cli_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.0.6.tgz";
-        sha1 = "d021e5f4d86d6a212450d4c7b86cb219f1e6864f";
+        name = "jest_cli___jest_cli_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.5.1.tgz";
+        sha512 = "Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==";
       };
     }
     {
-      name = "jest_config___jest_config_27.0.6.tgz";
+      name = "jest_config___jest_config_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_config___jest_config_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-config/-/jest-config-27.0.6.tgz";
-        sha1 = "119fb10f149ba63d9c50621baa4f1f179500277f";
+        name = "jest_config___jest_config_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-config/-/jest-config-27.5.1.tgz";
+        sha512 = "5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==";
       };
     }
     {
-      name = "jest_diff___jest_diff_27.0.6.tgz";
+      name = "jest_diff___jest_diff_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_diff___jest_diff_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.0.6.tgz";
-        sha1 = "4a7a19ee6f04ad70e0e3388f35829394a44c7b5e";
+        name = "jest_diff___jest_diff_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz";
+        sha512 = "m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==";
       };
     }
     {
-      name = "jest_docblock___jest_docblock_27.0.6.tgz";
+      name = "jest_docblock___jest_docblock_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_docblock___jest_docblock_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.0.6.tgz";
-        sha1 = "cc78266acf7fe693ca462cbbda0ea4e639e4e5f3";
+        name = "jest_docblock___jest_docblock_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.5.1.tgz";
+        sha512 = "rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==";
       };
     }
     {
-      name = "jest_each___jest_each_27.0.6.tgz";
+      name = "jest_each___jest_each_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_each___jest_each_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-each/-/jest-each-27.0.6.tgz";
-        sha1 = "cee117071b04060158dc8d9a66dc50ad40ef453b";
+        name = "jest_each___jest_each_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-each/-/jest-each-27.5.1.tgz";
+        sha512 = "1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==";
       };
     }
     {
-      name = "jest_environment_jsdom___jest_environment_jsdom_27.0.6.tgz";
+      name = "jest_environment_jsdom___jest_environment_jsdom_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_environment_jsdom___jest_environment_jsdom_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.0.6.tgz";
-        sha1 = "f66426c4c9950807d0a9f209c590ce544f73291f";
+        name = "jest_environment_jsdom___jest_environment_jsdom_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz";
+        sha512 = "TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==";
       };
     }
     {
-      name = "jest_environment_node___jest_environment_node_27.0.6.tgz";
+      name = "jest_environment_node___jest_environment_node_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_environment_node___jest_environment_node_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.0.6.tgz";
-        sha1 = "a6699b7ceb52e8d68138b9808b0c404e505f3e07";
+        name = "jest_environment_node___jest_environment_node_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.5.1.tgz";
+        sha512 = "Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==";
       };
     }
     {
-      name = "jest_get_type___jest_get_type_27.0.6.tgz";
+      name = "jest_get_type___jest_get_type_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_get_type___jest_get_type_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.0.6.tgz";
-        sha1 = "0eb5c7f755854279ce9b68a9f1a4122f69047cfe";
+        name = "jest_get_type___jest_get_type_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz";
+        sha512 = "2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==";
       };
     }
     {
-      name = "jest_haste_map___jest_haste_map_27.0.6.tgz";
+      name = "jest_haste_map___jest_haste_map_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_haste_map___jest_haste_map_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.0.6.tgz";
-        sha1 = "4683a4e68f6ecaa74231679dca237279562c8dc7";
+        name = "jest_haste_map___jest_haste_map_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.5.1.tgz";
+        sha512 = "7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==";
       };
     }
     {
-      name = "jest_jasmine2___jest_jasmine2_27.0.6.tgz";
+      name = "jest_jasmine2___jest_jasmine2_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_jasmine2___jest_jasmine2_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.0.6.tgz";
-        sha1 = "fd509a9ed3d92bd6edb68a779f4738b100655b37";
+        name = "jest_jasmine2___jest_jasmine2_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz";
+        sha512 = "jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==";
       };
     }
     {
-      name = "jest_leak_detector___jest_leak_detector_27.0.6.tgz";
+      name = "jest_leak_detector___jest_leak_detector_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_leak_detector___jest_leak_detector_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.0.6.tgz";
-        sha1 = "545854275f85450d4ef4b8fe305ca2a26450450f";
+        name = "jest_leak_detector___jest_leak_detector_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz";
+        sha512 = "POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==";
       };
     }
     {
-      name = "jest_matcher_utils___jest_matcher_utils_27.0.6.tgz";
+      name = "jest_matcher_utils___jest_matcher_utils_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_matcher_utils___jest_matcher_utils_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.0.6.tgz";
-        sha1 = "2a8da1e86c620b39459f4352eaa255f0d43e39a9";
+        name = "jest_matcher_utils___jest_matcher_utils_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz";
+        sha512 = "z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==";
       };
     }
     {
-      name = "jest_message_util___jest_message_util_27.0.6.tgz";
+      name = "jest_message_util___jest_message_util_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_message_util___jest_message_util_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.0.6.tgz";
-        sha1 = "158bcdf4785706492d164a39abca6a14da5ab8b5";
+        name = "jest_message_util___jest_message_util_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.5.1.tgz";
+        sha512 = "rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==";
       };
     }
     {
-      name = "jest_mock___jest_mock_27.0.6.tgz";
+      name = "jest_mock___jest_mock_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_mock___jest_mock_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.0.6.tgz";
-        sha1 = "0efdd40851398307ba16778728f6d34d583e3467";
+        name = "jest_mock___jest_mock_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.5.1.tgz";
+        sha512 = "K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==";
       };
     }
     {
@@ -2990,103 +2934,103 @@
       path = fetchurl {
         name = "jest_pnp_resolver___jest_pnp_resolver_1.2.2.tgz";
         url  = "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz";
-        sha1 = "b704ac0ae028a89108a4d040b3f919dfddc8e33c";
+        sha512 = "olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==";
       };
     }
     {
-      name = "jest_regex_util___jest_regex_util_27.0.6.tgz";
+      name = "jest_regex_util___jest_regex_util_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_regex_util___jest_regex_util_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.0.6.tgz";
-        sha1 = "02e112082935ae949ce5d13b2675db3d8c87d9c5";
+        name = "jest_regex_util___jest_regex_util_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz";
+        sha512 = "4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==";
       };
     }
     {
-      name = "jest_resolve_dependencies___jest_resolve_dependencies_27.0.6.tgz";
+      name = "jest_resolve_dependencies___jest_resolve_dependencies_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_resolve_dependencies___jest_resolve_dependencies_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.0.6.tgz";
-        sha1 = "3e619e0ef391c3ecfcf6ef4056207a3d2be3269f";
+        name = "jest_resolve_dependencies___jest_resolve_dependencies_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz";
+        sha512 = "QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==";
       };
     }
     {
-      name = "jest_resolve___jest_resolve_27.0.6.tgz";
+      name = "jest_resolve___jest_resolve_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_resolve___jest_resolve_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.0.6.tgz";
-        sha1 = "e90f436dd4f8fbf53f58a91c42344864f8e55bff";
+        name = "jest_resolve___jest_resolve_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.5.1.tgz";
+        sha512 = "FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==";
       };
     }
     {
-      name = "jest_runner___jest_runner_27.0.6.tgz";
+      name = "jest_runner___jest_runner_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_runner___jest_runner_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.0.6.tgz";
-        sha1 = "1325f45055539222bbc7256a6976e993ad2f9520";
+        name = "jest_runner___jest_runner_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.5.1.tgz";
+        sha512 = "g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==";
       };
     }
     {
-      name = "jest_runtime___jest_runtime_27.0.6.tgz";
+      name = "jest_runtime___jest_runtime_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_runtime___jest_runtime_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.0.6.tgz";
-        sha1 = "45877cfcd386afdd4f317def551fc369794c27c9";
+        name = "jest_runtime___jest_runtime_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.5.1.tgz";
+        sha512 = "o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==";
       };
     }
     {
-      name = "jest_serializer___jest_serializer_27.0.6.tgz";
+      name = "jest_serializer___jest_serializer_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_serializer___jest_serializer_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.0.6.tgz";
-        sha1 = "93a6c74e0132b81a2d54623251c46c498bb5bec1";
+        name = "jest_serializer___jest_serializer_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.5.1.tgz";
+        sha512 = "jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==";
       };
     }
     {
-      name = "jest_snapshot___jest_snapshot_27.0.6.tgz";
+      name = "jest_snapshot___jest_snapshot_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_snapshot___jest_snapshot_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.0.6.tgz";
-        sha1 = "f4e6b208bd2e92e888344d78f0f650bcff05a4bf";
+        name = "jest_snapshot___jest_snapshot_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.5.1.tgz";
+        sha512 = "yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==";
       };
     }
     {
-      name = "jest_util___jest_util_27.0.6.tgz";
+      name = "jest_util___jest_util_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_util___jest_util_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-util/-/jest-util-27.0.6.tgz";
-        sha1 = "e8e04eec159de2f4d5f57f795df9cdc091e50297";
+        name = "jest_util___jest_util_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-util/-/jest-util-27.5.1.tgz";
+        sha512 = "Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==";
       };
     }
     {
-      name = "jest_validate___jest_validate_27.0.6.tgz";
+      name = "jest_validate___jest_validate_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_validate___jest_validate_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.0.6.tgz";
-        sha1 = "930a527c7a951927df269f43b2dc23262457e2a6";
+        name = "jest_validate___jest_validate_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.5.1.tgz";
+        sha512 = "thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==";
       };
     }
     {
-      name = "jest_watcher___jest_watcher_27.0.6.tgz";
+      name = "jest_watcher___jest_watcher_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_watcher___jest_watcher_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.0.6.tgz";
-        sha1 = "89526f7f9edf1eac4e4be989bcb6dec6b8878d9c";
+        name = "jest_watcher___jest_watcher_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.5.1.tgz";
+        sha512 = "z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==";
       };
     }
     {
-      name = "jest_worker___jest_worker_27.0.6.tgz";
+      name = "jest_worker___jest_worker_27.5.1.tgz";
       path = fetchurl {
-        name = "jest_worker___jest_worker_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.0.6.tgz";
-        sha1 = "a5fdb1e14ad34eb228cfe162d9f729cdbfa28aed";
+        name = "jest_worker___jest_worker_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz";
+        sha512 = "7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==";
       };
     }
     {
-      name = "jest___jest_27.0.6.tgz";
+      name = "jest___jest_27.5.1.tgz";
       path = fetchurl {
-        name = "jest___jest_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest/-/jest-27.0.6.tgz";
-        sha1 = "10517b2a628f0409087fbf473db44777d7a04505";
+        name = "jest___jest_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest/-/jest-27.5.1.tgz";
+        sha512 = "Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==";
       };
     }
     {
@@ -3094,7 +3038,7 @@
       path = fetchurl {
         name = "js_tokens___js_tokens_4.0.0.tgz";
         url  = "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz";
-        sha1 = "19203fb59991df98e3a287050d4647cdeaf32499";
+        sha512 = "RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==";
       };
     }
     {
@@ -3102,7 +3046,7 @@
       path = fetchurl {
         name = "js_yaml___js_yaml_3.14.1.tgz";
         url  = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz";
-        sha1 = "dae812fdb3825fa306609a8717383c50c36a0537";
+        sha512 = "okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==";
       };
     }
     {
@@ -3110,15 +3054,15 @@
       path = fetchurl {
         name = "js_yaml___js_yaml_4.1.0.tgz";
         url  = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz";
-        sha1 = "c1fb65f8f5017901cdd2c951864ba18458a10602";
+        sha512 = "wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==";
       };
     }
     {
-      name = "jsdom___jsdom_16.6.0.tgz";
+      name = "jsdom___jsdom_16.7.0.tgz";
       path = fetchurl {
-        name = "jsdom___jsdom_16.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/jsdom/-/jsdom-16.6.0.tgz";
-        sha1 = "f79b3786682065492a3da6a60a4695da983805ac";
+        name = "jsdom___jsdom_16.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz";
+        sha512 = "u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==";
       };
     }
     {
@@ -3126,7 +3070,7 @@
       path = fetchurl {
         name = "jsesc___jsesc_2.5.2.tgz";
         url  = "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz";
-        sha1 = "80564d2e483dacf6e8ef209650a67df3f0c283a4";
+        sha512 = "OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==";
       };
     }
     {
@@ -3134,23 +3078,23 @@
       path = fetchurl {
         name = "json_buffer___json_buffer_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz";
-        sha1 = "5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898";
+        sha1 = "Wx85evx11ne96Lz8Dkfh+aPZqJg=";
       };
     }
     {
-      name = "json_schema_traverse___json_schema_traverse_0.4.1.tgz";
+      name = "json_parse_even_better_errors___json_parse_even_better_errors_2.3.1.tgz";
       path = fetchurl {
-        name = "json_schema_traverse___json_schema_traverse_0.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz";
-        sha1 = "69f6a87d9513ab8bb8fe63bdb0979c448e684660";
+        name = "json_parse_even_better_errors___json_parse_even_better_errors_2.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz";
+        sha512 = "xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==";
       };
     }
     {
-      name = "json_schema_traverse___json_schema_traverse_1.0.0.tgz";
+      name = "json_schema_traverse___json_schema_traverse_0.4.1.tgz";
       path = fetchurl {
-        name = "json_schema_traverse___json_schema_traverse_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz";
-        sha1 = "ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2";
+        name = "json_schema_traverse___json_schema_traverse_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz";
+        sha512 = "xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==";
       };
     }
     {
@@ -3158,7 +3102,7 @@
       path = fetchurl {
         name = "json_stable_stringify_without_jsonify___json_stable_stringify_without_jsonify_1.0.1.tgz";
         url  = "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz";
-        sha1 = "9db7b59496ad3f3cfef30a75142d2d930ad72651";
+        sha1 = "nbe1lJatPzz+8wp1FC0tkwrXJlE=";
       };
     }
     {
@@ -3166,15 +3110,15 @@
       path = fetchurl {
         name = "json_stringify_safe___json_stringify_safe_5.0.1.tgz";
         url  = "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
-        sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
+        sha1 = "Epai1Y/UXxmg9s4B1lcB4sc1tus=";
       };
     }
     {
-      name = "json5___json5_2.2.0.tgz";
+      name = "json5___json5_2.2.1.tgz";
       path = fetchurl {
-        name = "json5___json5_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz";
-        sha1 = "2dfefe720c6ba525d9ebd909950f0515316c89a3";
+        name = "json5___json5_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz";
+        sha512 = "1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==";
       };
     }
     {
@@ -3182,7 +3126,7 @@
       path = fetchurl {
         name = "jsonfile___jsonfile_4.0.0.tgz";
         url  = "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz";
-        sha1 = "8771aae0799b64076b76640fca058f9c10e33ecb";
+        sha1 = "h3Gq4HmbZAdrdmQPygWPnBDjPss=";
       };
     }
     {
@@ -3190,7 +3134,7 @@
       path = fetchurl {
         name = "jsonfile___jsonfile_6.1.0.tgz";
         url  = "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz";
-        sha1 = "bc55b2634793c679ec6403094eb13698a6ec0aae";
+        sha512 = "5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==";
       };
     }
     {
@@ -3198,7 +3142,7 @@
       path = fetchurl {
         name = "keyv___keyv_3.1.0.tgz";
         url  = "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz";
-        sha1 = "ecc228486f69991e49e9476485a5be1e8fc5c4d9";
+        sha512 = "9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==";
       };
     }
     {
@@ -3206,7 +3150,7 @@
       path = fetchurl {
         name = "kleur___kleur_3.0.3.tgz";
         url  = "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz";
-        sha1 = "a79c9ecc86ee1ce3fa6206d1216c501f147fc07e";
+        sha512 = "eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==";
       };
     }
     {
@@ -3214,7 +3158,7 @@
       path = fetchurl {
         name = "latest_version___latest_version_5.1.0.tgz";
         url  = "https://registry.yarnpkg.com/latest-version/-/latest-version-5.1.0.tgz";
-        sha1 = "119dfe908fe38d15dfa43ecd13fa12ec8832face";
+        sha512 = "weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==";
       };
     }
     {
@@ -3222,15 +3166,7 @@
       path = fetchurl {
         name = "lazy_val___lazy_val_1.0.5.tgz";
         url  = "https://registry.yarnpkg.com/lazy-val/-/lazy-val-1.0.5.tgz";
-        sha1 = "6cf3b9f5bc31cee7ee3e369c0832b7583dcd923d";
-      };
-    }
-    {
-      name = "lazystream___lazystream_1.0.0.tgz";
-      path = fetchurl {
-        name = "lazystream___lazystream_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.0.tgz";
-        sha1 = "f6995fe0f820392f61396be89462407bb77168e4";
+        sha512 = "0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==";
       };
     }
     {
@@ -3238,7 +3174,7 @@
       path = fetchurl {
         name = "leven___leven_3.1.0.tgz";
         url  = "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz";
-        sha1 = "77891de834064cccba82ae7842bb6b14a13ed7f2";
+        sha512 = "qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==";
       };
     }
     {
@@ -3246,7 +3182,7 @@
       path = fetchurl {
         name = "levn___levn_0.4.1.tgz";
         url  = "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz";
-        sha1 = "ae4562c007473b932a6200d403268dd2fffc6ade";
+        sha512 = "+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==";
       };
     }
     {
@@ -3254,63 +3190,23 @@
       path = fetchurl {
         name = "levn___levn_0.3.0.tgz";
         url  = "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz";
-        sha1 = "3b09924edf9f083c0490fdd4c0bc4421e04764ee";
-      };
-    }
-    {
-      name = "locate_path___locate_path_5.0.0.tgz";
-      path = fetchurl {
-        name = "locate_path___locate_path_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz";
-        sha1 = "1afba396afd676a6d42504d0a67a3a7eb9f62aa0";
-      };
-    }
-    {
-      name = "lodash.clonedeep___lodash.clonedeep_4.5.0.tgz";
-      path = fetchurl {
-        name = "lodash.clonedeep___lodash.clonedeep_4.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz";
-        sha1 = "e23f3f9c4f8fbdde872529c1071857a086e5ccef";
-      };
-    }
-    {
-      name = "lodash.defaults___lodash.defaults_4.2.0.tgz";
-      path = fetchurl {
-        name = "lodash.defaults___lodash.defaults_4.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz";
-        sha1 = "d09178716ffea4dde9e5fb7b37f6f0802274580c";
-      };
-    }
-    {
-      name = "lodash.difference___lodash.difference_4.5.0.tgz";
-      path = fetchurl {
-        name = "lodash.difference___lodash.difference_4.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz";
-        sha1 = "9ccb4e505d486b91651345772885a2df27fd017c";
-      };
-    }
-    {
-      name = "lodash.flatten___lodash.flatten_4.4.0.tgz";
-      path = fetchurl {
-        name = "lodash.flatten___lodash.flatten_4.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz";
-        sha1 = "f31c22225a9632d2bbf8e4addbef240aa765a61f";
+        sha1 = "OwmSTt+fCDwEkP3UwLxEIeBHZO4=";
       };
     }
     {
-      name = "lodash.isplainobject___lodash.isplainobject_4.0.6.tgz";
+      name = "lines_and_columns___lines_and_columns_1.2.4.tgz";
       path = fetchurl {
-        name = "lodash.isplainobject___lodash.isplainobject_4.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz";
-        sha1 = "7c526a52d89b45c45cc690b88163be0497f550cb";
+        name = "lines_and_columns___lines_and_columns_1.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz";
+        sha512 = "7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==";
       };
     }
     {
-      name = "lodash.memoize___lodash.memoize_4.1.2.tgz";
+      name = "locate_path___locate_path_5.0.0.tgz";
       path = fetchurl {
-        name = "lodash.memoize___lodash.memoize_4.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz";
-        sha1 = "bcc6c49a42a2840ed997f323eada5ecd182e0bfe";
+        name = "locate_path___locate_path_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz";
+        sha512 = "t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==";
       };
     }
     {
@@ -3318,23 +3214,7 @@
       path = fetchurl {
         name = "lodash.merge___lodash.merge_4.6.2.tgz";
         url  = "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz";
-        sha1 = "558aa53b43b661e1925a0afdfa36a9a1085fe57a";
-      };
-    }
-    {
-      name = "lodash.truncate___lodash.truncate_4.4.2.tgz";
-      path = fetchurl {
-        name = "lodash.truncate___lodash.truncate_4.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz";
-        sha1 = "5a350da0b1113b837ecfffd5812cbe58d6eae193";
-      };
-    }
-    {
-      name = "lodash.union___lodash.union_4.6.0.tgz";
-      path = fetchurl {
-        name = "lodash.union___lodash.union_4.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.union/-/lodash.union-4.6.0.tgz";
-        sha1 = "48bb5088409f16f1821666641c44dd1aaae3cd88";
+        sha512 = "0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==";
       };
     }
     {
@@ -3342,7 +3222,7 @@
       path = fetchurl {
         name = "lodash___lodash_4.17.21.tgz";
         url  = "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz";
-        sha1 = "679591c564c3bffaae8454cf0b3df370c3d6911c";
+        sha512 = "v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==";
       };
     }
     {
@@ -3350,7 +3230,7 @@
       path = fetchurl {
         name = "lowercase_keys___lowercase_keys_1.0.1.tgz";
         url  = "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz";
-        sha1 = "6f9e30b47084d971a7c820ff15a6c5167b74c26f";
+        sha512 = "G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==";
       };
     }
     {
@@ -3358,7 +3238,7 @@
       path = fetchurl {
         name = "lowercase_keys___lowercase_keys_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz";
-        sha1 = "2603e78b7b4b0006cbca2fbcc8a3202558ac9479";
+        sha512 = "tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==";
       };
     }
     {
@@ -3366,7 +3246,7 @@
       path = fetchurl {
         name = "lru_cache___lru_cache_6.0.0.tgz";
         url  = "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz";
-        sha1 = "6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94";
+        sha512 = "Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==";
       };
     }
     {
@@ -3374,15 +3254,15 @@
       path = fetchurl {
         name = "make_dir___make_dir_3.1.0.tgz";
         url  = "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz";
-        sha1 = "415e967046b3a7f1d185277d84aa58203726a13f";
+        sha512 = "g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==";
       };
     }
     {
-      name = "makeerror___makeerror_1.0.11.tgz";
+      name = "makeerror___makeerror_1.0.12.tgz";
       path = fetchurl {
-        name = "makeerror___makeerror_1.0.11.tgz";
-        url  = "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz";
-        sha1 = "e01a5c9109f2af79660e4e8b9587790184f5a96c";
+        name = "makeerror___makeerror_1.0.12.tgz";
+        url  = "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz";
+        sha512 = "JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==";
       };
     }
     {
@@ -3390,7 +3270,7 @@
       path = fetchurl {
         name = "matcher___matcher_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/matcher/-/matcher-3.0.0.tgz";
-        sha1 = "bd9060f4c5b70aa8041ccc6f80368760994f30ca";
+        sha512 = "OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==";
       };
     }
     {
@@ -3398,7 +3278,7 @@
       path = fetchurl {
         name = "merge_stream___merge_stream_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz";
-        sha1 = "52823629a14dd00c9770fb6ad47dc6310f2c1f60";
+        sha512 = "abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==";
       };
     }
     {
@@ -3406,31 +3286,31 @@
       path = fetchurl {
         name = "micromatch___micromatch_4.0.4.tgz";
         url  = "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz";
-        sha1 = "896d519dfe9db25fce94ceb7a500919bf881ebf9";
+        sha512 = "pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==";
       };
     }
     {
-      name = "mime_db___mime_db_1.48.0.tgz";
+      name = "mime_db___mime_db_1.52.0.tgz";
       path = fetchurl {
-        name = "mime_db___mime_db_1.48.0.tgz";
-        url  = "https://registry.yarnpkg.com/mime-db/-/mime-db-1.48.0.tgz";
-        sha1 = "e35b31045dd7eada3aaad537ed88a33afbef2d1d";
+        name = "mime_db___mime_db_1.52.0.tgz";
+        url  = "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz";
+        sha512 = "sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==";
       };
     }
     {
-      name = "mime_types___mime_types_2.1.31.tgz";
+      name = "mime_types___mime_types_2.1.35.tgz";
       path = fetchurl {
-        name = "mime_types___mime_types_2.1.31.tgz";
-        url  = "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.31.tgz";
-        sha1 = "a00d76b74317c61f9c2db2218b8e9f8e9c5c9e6b";
+        name = "mime_types___mime_types_2.1.35.tgz";
+        url  = "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz";
+        sha512 = "ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==";
       };
     }
     {
-      name = "mime___mime_2.5.2.tgz";
+      name = "mime___mime_2.6.0.tgz";
       path = fetchurl {
-        name = "mime___mime_2.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/mime/-/mime-2.5.2.tgz";
-        sha1 = "6e3dc6cc2b9510643830e5f19d5cb753da5eeabe";
+        name = "mime___mime_2.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz";
+        sha512 = "USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==";
       };
     }
     {
@@ -3438,7 +3318,7 @@
       path = fetchurl {
         name = "mimic_fn___mimic_fn_2.1.0.tgz";
         url  = "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz";
-        sha1 = "7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b";
+        sha512 = "OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==";
       };
     }
     {
@@ -3446,7 +3326,7 @@
       path = fetchurl {
         name = "mimic_response___mimic_response_1.0.1.tgz";
         url  = "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz";
-        sha1 = "4923538878eef42063cb8a3e3b0798781487ab1b";
+        sha512 = "j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==";
       };
     }
     {
@@ -3454,23 +3334,31 @@
       path = fetchurl {
         name = "minimatch___minimatch_3.0.4.tgz";
         url  = "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz";
-        sha1 = "5166e286457f03306064be5497e8dbb0c3d32083";
+        sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
+      };
+    }
+    {
+      name = "minimatch___minimatch_3.1.2.tgz";
+      path = fetchurl {
+        name = "minimatch___minimatch_3.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz";
+        sha512 = "J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==";
       };
     }
     {
-      name = "minimist___minimist_1.2.5.tgz";
+      name = "minimist___minimist_1.2.6.tgz";
       path = fetchurl {
-        name = "minimist___minimist_1.2.5.tgz";
-        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz";
-        sha1 = "67d66014b66a6a8aaa0c083c5fd58df4e4e97602";
+        name = "minimist___minimist_1.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz";
+        sha512 = "Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==";
       };
     }
     {
-      name = "mkdirp___mkdirp_0.5.5.tgz";
+      name = "mkdirp___mkdirp_0.5.6.tgz";
       path = fetchurl {
-        name = "mkdirp___mkdirp_0.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz";
-        sha1 = "d91cefd62d1436ca0f41620e251288d420099def";
+        name = "mkdirp___mkdirp_0.5.6.tgz";
+        url  = "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz";
+        sha512 = "FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==";
       };
     }
     {
@@ -3478,7 +3366,7 @@
       path = fetchurl {
         name = "ms___ms_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz";
-        sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8";
+        sha1 = "VgiurfwAvmwpAd9fmGF4jeDVl8g=";
       };
     }
     {
@@ -3486,7 +3374,7 @@
       path = fetchurl {
         name = "ms___ms_2.1.2.tgz";
         url  = "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz";
-        sha1 = "d09d1f357b443f493382a8eb3ccd183872ae6009";
+        sha512 = "sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==";
       };
     }
     {
@@ -3494,7 +3382,7 @@
       path = fetchurl {
         name = "natural_compare___natural_compare_1.4.0.tgz";
         url  = "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz";
-        sha1 = "4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7";
+        sha1 = "Sr6/7tdUHywnrPspvbvRXI1bpPc=";
       };
     }
     {
@@ -3502,7 +3390,7 @@
       path = fetchurl {
         name = "node_addon_api___node_addon_api_1.7.2.tgz";
         url  = "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.2.tgz";
-        sha1 = "3df30b95720b53c24e59948b49532b662444f54d";
+        sha512 = "ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==";
       };
     }
     {
@@ -3510,23 +3398,15 @@
       path = fetchurl {
         name = "node_int64___node_int64_0.4.0.tgz";
         url  = "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz";
-        sha1 = "87a9065cdb355d3182d8f94ce11188b825c68a3b";
+        sha1 = "h6kGXNs1XTGC2PlM4RGIuCXGijs=";
       };
     }
     {
-      name = "node_modules_regexp___node_modules_regexp_1.0.0.tgz";
+      name = "node_releases___node_releases_2.0.2.tgz";
       path = fetchurl {
-        name = "node_modules_regexp___node_modules_regexp_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz";
-        sha1 = "8d9dbe28964a4ac5712e9131642107c71e90ec40";
-      };
-    }
-    {
-      name = "node_releases___node_releases_1.1.73.tgz";
-      path = fetchurl {
-        name = "node_releases___node_releases_1.1.73.tgz";
-        url  = "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.73.tgz";
-        sha1 = "dd4e81ddd5277ff846b80b52bb40c49edf7a7b20";
+        name = "node_releases___node_releases_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.2.tgz";
+        sha512 = "XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==";
       };
     }
     {
@@ -3534,7 +3414,7 @@
       path = fetchurl {
         name = "normalize_path___normalize_path_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz";
-        sha1 = "0dcd69ff23a1c9b11fd0978316644a0388216a65";
+        sha512 = "6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==";
       };
     }
     {
@@ -3542,7 +3422,7 @@
       path = fetchurl {
         name = "normalize_url___normalize_url_4.5.1.tgz";
         url  = "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz";
-        sha1 = "0dd90cf1288ee1d1313b87081c9a5932ee48518a";
+        sha512 = "9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==";
       };
     }
     {
@@ -3550,7 +3430,7 @@
       path = fetchurl {
         name = "npm_conf___npm_conf_1.1.3.tgz";
         url  = "https://registry.yarnpkg.com/npm-conf/-/npm-conf-1.1.3.tgz";
-        sha1 = "256cc47bd0e218c259c4e9550bf413bc2192aff9";
+        sha512 = "Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==";
       };
     }
     {
@@ -3558,7 +3438,7 @@
       path = fetchurl {
         name = "npm_run_path___npm_run_path_4.0.1.tgz";
         url  = "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz";
-        sha1 = "b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea";
+        sha512 = "S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==";
       };
     }
     {
@@ -3566,7 +3446,7 @@
       path = fetchurl {
         name = "nwsapi___nwsapi_2.2.0.tgz";
         url  = "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz";
-        sha1 = "204879a9e3d068ff2a55139c2c772780681a38b7";
+        sha512 = "h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==";
       };
     }
     {
@@ -3574,7 +3454,7 @@
       path = fetchurl {
         name = "object_keys___object_keys_1.1.1.tgz";
         url  = "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz";
-        sha1 = "1c47f272df277f3b1daf061677d9c82e2322c60e";
+        sha512 = "NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==";
       };
     }
     {
@@ -3582,7 +3462,7 @@
       path = fetchurl {
         name = "once___once_1.4.0.tgz";
         url  = "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz";
-        sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1";
+        sha1 = "WDsap3WWHUsROsF9nFC6753Xa9E=";
       };
     }
     {
@@ -3590,7 +3470,7 @@
       path = fetchurl {
         name = "onetime___onetime_5.1.2.tgz";
         url  = "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz";
-        sha1 = "d0e96ebb56b07476df1dd9c4806e5237985ca45e";
+        sha512 = "kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==";
       };
     }
     {
@@ -3598,7 +3478,7 @@
       path = fetchurl {
         name = "optionator___optionator_0.8.3.tgz";
         url  = "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz";
-        sha1 = "84fa1d036fe9d3c7e21d99884b601167ec8fb495";
+        sha512 = "+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==";
       };
     }
     {
@@ -3606,7 +3486,7 @@
       path = fetchurl {
         name = "optionator___optionator_0.9.1.tgz";
         url  = "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz";
-        sha1 = "4f236a6373dae0566a6d43e1326674f50c291499";
+        sha512 = "74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==";
       };
     }
     {
@@ -3614,15 +3494,7 @@
       path = fetchurl {
         name = "p_cancelable___p_cancelable_1.1.0.tgz";
         url  = "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz";
-        sha1 = "d078d15a3af409220c886f1d9a0ca2e441ab26cc";
-      };
-    }
-    {
-      name = "p_each_series___p_each_series_2.2.0.tgz";
-      path = fetchurl {
-        name = "p_each_series___p_each_series_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.2.0.tgz";
-        sha1 = "105ab0357ce72b202a8a8b94933672657b5e2a9a";
+        sha512 = "s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==";
       };
     }
     {
@@ -3630,7 +3502,7 @@
       path = fetchurl {
         name = "p_limit___p_limit_2.3.0.tgz";
         url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz";
-        sha1 = "3dd33c647a214fdfffd835933eb086da0dc21db1";
+        sha512 = "//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==";
       };
     }
     {
@@ -3638,7 +3510,7 @@
       path = fetchurl {
         name = "p_locate___p_locate_4.1.0.tgz";
         url  = "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz";
-        sha1 = "a3428bb7088b3a60292f66919278b7c297ad4f07";
+        sha512 = "R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==";
       };
     }
     {
@@ -3646,7 +3518,7 @@
       path = fetchurl {
         name = "p_try___p_try_2.2.0.tgz";
         url  = "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz";
-        sha1 = "cb2868540e313d61de58fafbe35ce9004d5540e6";
+        sha512 = "R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==";
       };
     }
     {
@@ -3654,7 +3526,7 @@
       path = fetchurl {
         name = "package_json___package_json_6.5.0.tgz";
         url  = "https://registry.yarnpkg.com/package-json/-/package-json-6.5.0.tgz";
-        sha1 = "6feedaca35e75725876d0b0e64974697fed145b0";
+        sha512 = "k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==";
       };
     }
     {
@@ -3662,7 +3534,15 @@
       path = fetchurl {
         name = "parent_module___parent_module_1.0.1.tgz";
         url  = "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz";
-        sha1 = "691d2709e78c79fae3a156622452d00762caaaa2";
+        sha512 = "GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==";
+      };
+    }
+    {
+      name = "parse_json___parse_json_5.2.0.tgz";
+      path = fetchurl {
+        name = "parse_json___parse_json_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz";
+        sha512 = "ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==";
       };
     }
     {
@@ -3670,7 +3550,7 @@
       path = fetchurl {
         name = "parse5___parse5_6.0.1.tgz";
         url  = "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz";
-        sha1 = "e1a1c085c569b3dc08321184f19a39cc27f7c30b";
+        sha512 = "Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==";
       };
     }
     {
@@ -3678,7 +3558,7 @@
       path = fetchurl {
         name = "path_exists___path_exists_4.0.0.tgz";
         url  = "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz";
-        sha1 = "513bdbe2d3b95d7762e8c1137efa195c6c61b5b3";
+        sha512 = "ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==";
       };
     }
     {
@@ -3686,7 +3566,7 @@
       path = fetchurl {
         name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
         url  = "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
-        sha1 = "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f";
+        sha1 = "F0uSaHNVNP+8es5r9TpanhtcX18=";
       };
     }
     {
@@ -3694,7 +3574,7 @@
       path = fetchurl {
         name = "path_key___path_key_3.1.1.tgz";
         url  = "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz";
-        sha1 = "581f6ade658cbba65a0d3380de7753295054f375";
+        sha512 = "ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==";
       };
     }
     {
@@ -3702,7 +3582,7 @@
       path = fetchurl {
         name = "path_parse___path_parse_1.0.7.tgz";
         url  = "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz";
-        sha1 = "fbc114b60ca42b30d9daf5858e4bd68bbedb6735";
+        sha512 = "LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==";
       };
     }
     {
@@ -3710,15 +3590,23 @@
       path = fetchurl {
         name = "pend___pend_1.2.0.tgz";
         url  = "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz";
-        sha1 = "7a57eb550a6783f9115331fcf4663d5c8e007a50";
+        sha1 = "elfrVQpng/kRUzH89GY9XI4AelA=";
       };
     }
     {
-      name = "picomatch___picomatch_2.3.0.tgz";
+      name = "picocolors___picocolors_1.0.0.tgz";
       path = fetchurl {
-        name = "picomatch___picomatch_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz";
-        sha1 = "f1f061de8f6a4bf022892e2d128234fb98302972";
+        name = "picocolors___picocolors_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz";
+        sha512 = "1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==";
+      };
+    }
+    {
+      name = "picomatch___picomatch_2.3.1.tgz";
+      path = fetchurl {
+        name = "picomatch___picomatch_2.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz";
+        sha512 = "JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==";
       };
     }
     {
@@ -3726,15 +3614,15 @@
       path = fetchurl {
         name = "pify___pify_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz";
-        sha1 = "e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176";
+        sha1 = "5aSs0sEB/fPZpNB/DbxNtJ3SgXY=";
       };
     }
     {
-      name = "pirates___pirates_4.0.1.tgz";
+      name = "pirates___pirates_4.0.5.tgz";
       path = fetchurl {
-        name = "pirates___pirates_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz";
-        sha1 = "643a92caf894566f91b2b986d2c66950a8e2fb87";
+        name = "pirates___pirates_4.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz";
+        sha512 = "8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==";
       };
     }
     {
@@ -3742,15 +3630,15 @@
       path = fetchurl {
         name = "pkg_dir___pkg_dir_4.2.0.tgz";
         url  = "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz";
-        sha1 = "f099133df7ede422e81d1d8448270eeb3e4261f3";
+        sha512 = "HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==";
       };
     }
     {
-      name = "plist___plist_3.0.2.tgz";
+      name = "plist___plist_3.0.4.tgz";
       path = fetchurl {
-        name = "plist___plist_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/plist/-/plist-3.0.2.tgz";
-        sha1 = "74bbf011124b90421c22d15779cee60060ba95bc";
+        name = "plist___plist_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/plist/-/plist-3.0.4.tgz";
+        sha512 = "ksrr8y9+nXOxQB2osVNqrgvX/XQPOXaU4BQMKjYq8PvaY1U18mo+fKgBSwzK+luSyinOuPae956lSVcBwxlAMg==";
       };
     }
     {
@@ -3758,7 +3646,7 @@
       path = fetchurl {
         name = "prelude_ls___prelude_ls_1.2.1.tgz";
         url  = "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz";
-        sha1 = "debc6489d7a6e6b0e7611888cec880337d316396";
+        sha512 = "vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==";
       };
     }
     {
@@ -3766,7 +3654,7 @@
       path = fetchurl {
         name = "prelude_ls___prelude_ls_1.1.2.tgz";
         url  = "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz";
-        sha1 = "21932a549f5e52ffd9a827f570e04be62a97da54";
+        sha1 = "IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=";
       };
     }
     {
@@ -3774,23 +3662,15 @@
       path = fetchurl {
         name = "prepend_http___prepend_http_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz";
-        sha1 = "e92434bfa5ea8c19f41cdfd401d741a3c819d897";
+        sha1 = "6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=";
       };
     }
     {
-      name = "pretty_format___pretty_format_27.0.6.tgz";
+      name = "pretty_format___pretty_format_27.5.1.tgz";
       path = fetchurl {
-        name = "pretty_format___pretty_format_27.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.0.6.tgz";
-        sha1 = "ab770c47b2c6f893a21aefc57b75da63ef49a11f";
-      };
-    }
-    {
-      name = "printj___printj_1.1.2.tgz";
-      path = fetchurl {
-        name = "printj___printj_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/printj/-/printj-1.1.2.tgz";
-        sha1 = "d90deb2975a8b9f600fb3a1c94e3f4c53c78a222";
+        name = "pretty_format___pretty_format_27.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz";
+        sha512 = "Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==";
       };
     }
     {
@@ -3798,7 +3678,7 @@
       path = fetchurl {
         name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
         url  = "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
-        sha1 = "7820d9b16120cc55ca9ae7792680ae7dba6d7fe2";
+        sha512 = "3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==";
       };
     }
     {
@@ -3806,15 +3686,15 @@
       path = fetchurl {
         name = "progress___progress_2.0.3.tgz";
         url  = "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz";
-        sha1 = "7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8";
+        sha512 = "7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==";
       };
     }
     {
-      name = "prompts___prompts_2.4.1.tgz";
+      name = "prompts___prompts_2.4.2.tgz";
       path = fetchurl {
-        name = "prompts___prompts_2.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/prompts/-/prompts-2.4.1.tgz";
-        sha1 = "befd3b1195ba052f9fd2fde8a486c4e82ee77f61";
+        name = "prompts___prompts_2.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz";
+        sha512 = "NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==";
       };
     }
     {
@@ -3822,7 +3702,7 @@
       path = fetchurl {
         name = "proto_list___proto_list_1.2.4.tgz";
         url  = "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz";
-        sha1 = "212d5bfe1318306a420f6402b8e26ff39647a849";
+        sha1 = "IS1b/hMYMGpCD2QCuOJv85ZHqEk=";
       };
     }
     {
@@ -3830,7 +3710,7 @@
       path = fetchurl {
         name = "psl___psl_1.8.0.tgz";
         url  = "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz";
-        sha1 = "9326f8bcfb013adcc005fdff056acce020e51c24";
+        sha512 = "RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==";
       };
     }
     {
@@ -3838,7 +3718,7 @@
       path = fetchurl {
         name = "pump___pump_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz";
-        sha1 = "b4a2116815bde2f4e1ea602354e8c75565107a64";
+        sha512 = "LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==";
       };
     }
     {
@@ -3846,7 +3726,7 @@
       path = fetchurl {
         name = "punycode___punycode_2.1.1.tgz";
         url  = "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz";
-        sha1 = "b58b010ac40c22c5657616c8d2c2c02c7bf479ec";
+        sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
       };
     }
     {
@@ -3854,7 +3734,7 @@
       path = fetchurl {
         name = "pupa___pupa_2.1.1.tgz";
         url  = "https://registry.yarnpkg.com/pupa/-/pupa-2.1.1.tgz";
-        sha1 = "f5e8fd4afc2c5d97828faa523549ed8744a20d62";
+        sha512 = "l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==";
       };
     }
     {
@@ -3862,7 +3742,7 @@
       path = fetchurl {
         name = "rc___rc_1.2.8.tgz";
         url  = "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz";
-        sha1 = "cd924bf5200a075b83c188cd6b9e211b7fc0d3ed";
+        sha512 = "y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==";
       };
     }
     {
@@ -3870,7 +3750,7 @@
       path = fetchurl {
         name = "react_is___react_is_17.0.2.tgz";
         url  = "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz";
-        sha1 = "e691d4a8e9c789365655539ab372762b0efb54f0";
+        sha512 = "w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==";
       };
     }
     {
@@ -3878,7 +3758,7 @@
       path = fetchurl {
         name = "read_config_file___read_config_file_6.2.0.tgz";
         url  = "https://registry.yarnpkg.com/read-config-file/-/read-config-file-6.2.0.tgz";
-        sha1 = "71536072330bcd62ba814f91458b12add9fc7ade";
+        sha512 = "gx7Pgr5I56JtYz+WuqEbQHj/xWo+5Vwua2jhb1VwM4Wid5PqYmZ4i00ZB0YEGIfkVBsCv9UrjgyqCiQfS/Oosg==";
       };
     }
     {
@@ -3886,23 +3766,7 @@
       path = fetchurl {
         name = "readable_stream___readable_stream_2.3.7.tgz";
         url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz";
-        sha1 = "1eca1cf711aef814c04f62252a36a62f6cb23b57";
-      };
-    }
-    {
-      name = "readable_stream___readable_stream_3.6.0.tgz";
-      path = fetchurl {
-        name = "readable_stream___readable_stream_3.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz";
-        sha1 = "337bbda3adc0706bd3e024426a286d4b4b2c9198";
-      };
-    }
-    {
-      name = "readdir_glob___readdir_glob_1.1.1.tgz";
-      path = fetchurl {
-        name = "readdir_glob___readdir_glob_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/readdir-glob/-/readdir-glob-1.1.1.tgz";
-        sha1 = "f0e10bb7bf7bfa7e0add8baffdc54c3f7dbee6c4";
+        sha512 = "Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==";
       };
     }
     {
@@ -3910,7 +3774,7 @@
       path = fetchurl {
         name = "regexpp___regexpp_3.2.0.tgz";
         url  = "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz";
-        sha1 = "0425a2768d8f23bad70ca4b90461fa2f1213e1b2";
+        sha512 = "pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==";
       };
     }
     {
@@ -3918,7 +3782,7 @@
       path = fetchurl {
         name = "registry_auth_token___registry_auth_token_4.2.1.tgz";
         url  = "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.1.tgz";
-        sha1 = "6d7b4006441918972ccd5fedcd41dc322c79b250";
+        sha512 = "6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==";
       };
     }
     {
@@ -3926,7 +3790,7 @@
       path = fetchurl {
         name = "registry_url___registry_url_5.1.0.tgz";
         url  = "https://registry.yarnpkg.com/registry-url/-/registry-url-5.1.0.tgz";
-        sha1 = "e98334b50d5434b81136b44ec638d9c2009c5009";
+        sha512 = "8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==";
       };
     }
     {
@@ -3934,23 +3798,7 @@
       path = fetchurl {
         name = "require_directory___require_directory_2.1.1.tgz";
         url  = "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz";
-        sha1 = "8c64ad5fd30dab1c976e2344ffe7f792a6a6df42";
-      };
-    }
-    {
-      name = "require_from_string___require_from_string_2.0.2.tgz";
-      path = fetchurl {
-        name = "require_from_string___require_from_string_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz";
-        sha1 = "89a7fdd938261267318eafe14f9c32e598c36909";
-      };
-    }
-    {
-      name = "requireindex___requireindex_1.2.0.tgz";
-      path = fetchurl {
-        name = "requireindex___requireindex_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/requireindex/-/requireindex-1.2.0.tgz";
-        sha1 = "3463cdb22ee151902635aa6c9535d4de9c2ef1ef";
+        sha1 = "jGStX9MNqxyXbiNE/+f3kqam30I=";
       };
     }
     {
@@ -3958,7 +3806,7 @@
       path = fetchurl {
         name = "resolve_cwd___resolve_cwd_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz";
-        sha1 = "0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d";
+        sha512 = "OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==";
       };
     }
     {
@@ -3966,7 +3814,7 @@
       path = fetchurl {
         name = "resolve_from___resolve_from_4.0.0.tgz";
         url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz";
-        sha1 = "4abcd852ad32dd7baabfe9b40e00a36db5f392e6";
+        sha512 = "pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==";
       };
     }
     {
@@ -3974,15 +3822,23 @@
       path = fetchurl {
         name = "resolve_from___resolve_from_5.0.0.tgz";
         url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz";
-        sha1 = "c35225843df8f776df21c57557bc087e9dfdfc69";
+        sha512 = "qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==";
       };
     }
     {
-      name = "resolve___resolve_1.20.0.tgz";
+      name = "resolve.exports___resolve.exports_1.1.0.tgz";
       path = fetchurl {
-        name = "resolve___resolve_1.20.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz";
-        sha1 = "629a013fb3f70755d6f0b7935cc1c2c5378b1975";
+        name = "resolve.exports___resolve.exports_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz";
+        sha512 = "J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==";
+      };
+    }
+    {
+      name = "resolve___resolve_1.22.0.tgz";
+      path = fetchurl {
+        name = "resolve___resolve_1.22.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz";
+        sha512 = "Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==";
       };
     }
     {
@@ -3990,7 +3846,7 @@
       path = fetchurl {
         name = "responselike___responselike_1.0.2.tgz";
         url  = "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz";
-        sha1 = "918720ef3b631c5642be068f15ade5a46f4ba1e7";
+        sha1 = "kYcg7ztjHFZCvgaPFa3lpG9Loec=";
       };
     }
     {
@@ -3998,7 +3854,7 @@
       path = fetchurl {
         name = "rimraf___rimraf_3.0.2.tgz";
         url  = "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz";
-        sha1 = "f1a5402ba6220ad52cc1282bac1ae3aa49fd061a";
+        sha512 = "JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==";
       };
     }
     {
@@ -4006,7 +3862,7 @@
       path = fetchurl {
         name = "roarr___roarr_2.15.4.tgz";
         url  = "https://registry.yarnpkg.com/roarr/-/roarr-2.15.4.tgz";
-        sha1 = "f5fe795b7b838ccfe35dc608e0282b9eba2e7afd";
+        sha512 = "CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==";
       };
     }
     {
@@ -4014,15 +3870,7 @@
       path = fetchurl {
         name = "safe_buffer___safe_buffer_5.1.2.tgz";
         url  = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz";
-        sha1 = "991ec69d296e0313747d59bdfd2b745c35f8828d";
-      };
-    }
-    {
-      name = "safe_buffer___safe_buffer_5.2.1.tgz";
-      path = fetchurl {
-        name = "safe_buffer___safe_buffer_5.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz";
-        sha1 = "1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6";
+        sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==";
       };
     }
     {
@@ -4030,7 +3878,7 @@
       path = fetchurl {
         name = "safer_buffer___safer_buffer_2.1.2.tgz";
         url  = "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz";
-        sha1 = "44fa161b0187b9549dd84bb91802f9bd8385cd6a";
+        sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
       };
     }
     {
@@ -4038,7 +3886,7 @@
       path = fetchurl {
         name = "sanitize_filename___sanitize_filename_1.6.3.tgz";
         url  = "https://registry.yarnpkg.com/sanitize-filename/-/sanitize-filename-1.6.3.tgz";
-        sha1 = "755ebd752045931977e30b2025d340d7c9090378";
+        sha512 = "y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==";
       };
     }
     {
@@ -4046,7 +3894,7 @@
       path = fetchurl {
         name = "sax___sax_1.2.4.tgz";
         url  = "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz";
-        sha1 = "2816234e2378bddc4e5354fab5caa895df7100d9";
+        sha512 = "NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==";
       };
     }
     {
@@ -4054,7 +3902,7 @@
       path = fetchurl {
         name = "saxes___saxes_5.0.1.tgz";
         url  = "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz";
-        sha1 = "eebab953fa3b7608dbe94e5dadb15c888fa6696d";
+        sha512 = "5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==";
       };
     }
     {
@@ -4062,7 +3910,7 @@
       path = fetchurl {
         name = "semver_compare___semver_compare_1.0.0.tgz";
         url  = "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz";
-        sha1 = "0dee216a1c941ab37e9efb1788f6afc5ff5537fc";
+        sha1 = "De4hahyUGrN+nvsXiPavxf9VN/w=";
       };
     }
     {
@@ -4070,15 +3918,7 @@
       path = fetchurl {
         name = "semver_diff___semver_diff_3.1.1.tgz";
         url  = "https://registry.yarnpkg.com/semver-diff/-/semver-diff-3.1.1.tgz";
-        sha1 = "05f77ce59f325e00e2706afd67bb506ddb1ca32b";
-      };
-    }
-    {
-      name = "semver___semver_7.3.2.tgz";
-      path = fetchurl {
-        name = "semver___semver_7.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz";
-        sha1 = "604962b052b81ed0786aae84389ffba70ffd3938";
+        sha512 = "GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==";
       };
     }
     {
@@ -4086,7 +3926,7 @@
       path = fetchurl {
         name = "semver___semver_6.3.0.tgz";
         url  = "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz";
-        sha1 = "ee0a64c8af5e8ceea67687b133761e1becbd1d3d";
+        sha512 = "b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==";
       };
     }
     {
@@ -4094,7 +3934,7 @@
       path = fetchurl {
         name = "semver___semver_7.3.5.tgz";
         url  = "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz";
-        sha1 = "0b621c879348d8998e4b0e4be94b3f12e6018ef7";
+        sha512 = "PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==";
       };
     }
     {
@@ -4102,7 +3942,7 @@
       path = fetchurl {
         name = "serialize_error___serialize_error_7.0.1.tgz";
         url  = "https://registry.yarnpkg.com/serialize-error/-/serialize-error-7.0.1.tgz";
-        sha1 = "f1360b0447f61ffb483ec4157c737fab7d778e18";
+        sha512 = "8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==";
       };
     }
     {
@@ -4110,7 +3950,7 @@
       path = fetchurl {
         name = "shebang_command___shebang_command_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz";
-        sha1 = "ccd0af4f8835fbdc265b82461aaf0c36663f34ea";
+        sha512 = "kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==";
       };
     }
     {
@@ -4118,15 +3958,15 @@
       path = fetchurl {
         name = "shebang_regex___shebang_regex_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz";
-        sha1 = "ae16f1644d873ecad843b0307b143362d4c42172";
+        sha512 = "7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==";
       };
     }
     {
-      name = "signal_exit___signal_exit_3.0.3.tgz";
+      name = "signal_exit___signal_exit_3.0.7.tgz";
       path = fetchurl {
-        name = "signal_exit___signal_exit_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz";
-        sha1 = "a1410c2edd8f077b08b4e253c8eacfcaf057461c";
+        name = "signal_exit___signal_exit_3.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz";
+        sha512 = "wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==";
       };
     }
     {
@@ -4134,7 +3974,7 @@
       path = fetchurl {
         name = "sisteransi___sisteransi_1.0.5.tgz";
         url  = "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz";
-        sha1 = "134d681297756437cc05ca01370d3a7a571075ed";
+        sha512 = "bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==";
       };
     }
     {
@@ -4142,39 +3982,31 @@
       path = fetchurl {
         name = "slash___slash_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz";
-        sha1 = "6539be870c165adbd5240220dbe361f1bc4d4634";
+        sha512 = "g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==";
       };
     }
     {
-      name = "slice_ansi___slice_ansi_1.0.0.tgz";
+      name = "slice_ansi___slice_ansi_3.0.0.tgz";
       path = fetchurl {
-        name = "slice_ansi___slice_ansi_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz";
-        sha1 = "044f1a49d8842ff307aad6b505ed178bd950134d";
+        name = "slice_ansi___slice_ansi_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz";
+        sha512 = "pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==";
       };
     }
     {
-      name = "slice_ansi___slice_ansi_4.0.0.tgz";
+      name = "smart_buffer___smart_buffer_4.2.0.tgz";
       path = fetchurl {
-        name = "slice_ansi___slice_ansi_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz";
-        sha1 = "500e8dd0fd55b05815086255b3195adf2a45fe6b";
+        name = "smart_buffer___smart_buffer_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz";
+        sha512 = "94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==";
       };
     }
     {
-      name = "smart_buffer___smart_buffer_4.1.0.tgz";
+      name = "source_map_support___source_map_support_0.5.21.tgz";
       path = fetchurl {
-        name = "smart_buffer___smart_buffer_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.1.0.tgz";
-        sha1 = "91605c25d91652f4661ea69ccf45f1b331ca21ba";
-      };
-    }
-    {
-      name = "source_map_support___source_map_support_0.5.19.tgz";
-      path = fetchurl {
-        name = "source_map_support___source_map_support_0.5.19.tgz";
-        url  = "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz";
-        sha1 = "a98b62f86dcaf4f67399648c085291ab9e8fed61";
+        name = "source_map_support___source_map_support_0.5.21.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz";
+        sha512 = "uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==";
       };
     }
     {
@@ -4182,7 +4014,7 @@
       path = fetchurl {
         name = "source_map___source_map_0.5.7.tgz";
         url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz";
-        sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc";
+        sha1 = "igOdLRAh0i0eoUyA2OpGi6LvP8w=";
       };
     }
     {
@@ -4190,7 +4022,7 @@
       path = fetchurl {
         name = "source_map___source_map_0.6.1.tgz";
         url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz";
-        sha1 = "74722af32e9614e9c287a8d0bbde48b5e2f1a263";
+        sha512 = "UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==";
       };
     }
     {
@@ -4198,7 +4030,7 @@
       path = fetchurl {
         name = "source_map___source_map_0.7.3.tgz";
         url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz";
-        sha1 = "5302f8169031735226544092e64981f751750383";
+        sha512 = "CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==";
       };
     }
     {
@@ -4206,7 +4038,7 @@
       path = fetchurl {
         name = "sprintf_js___sprintf_js_1.1.2.tgz";
         url  = "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.2.tgz";
-        sha1 = "da1765262bf8c0f571749f2ad6c26300207ae673";
+        sha512 = "VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==";
       };
     }
     {
@@ -4214,15 +4046,15 @@
       path = fetchurl {
         name = "sprintf_js___sprintf_js_1.0.3.tgz";
         url  = "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz";
-        sha1 = "04e6926f662895354f3dd015203633b857297e2c";
+        sha1 = "BOaSb2YolTVPPdAVIDYzuFcpfiw=";
       };
     }
     {
-      name = "stack_utils___stack_utils_2.0.3.tgz";
+      name = "stack_utils___stack_utils_2.0.5.tgz";
       path = fetchurl {
-        name = "stack_utils___stack_utils_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.3.tgz";
-        sha1 = "cd5f030126ff116b78ccb3c027fe302713b61277";
+        name = "stack_utils___stack_utils_2.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.5.tgz";
+        sha512 = "xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==";
       };
     }
     {
@@ -4230,7 +4062,7 @@
       path = fetchurl {
         name = "stat_mode___stat_mode_1.0.0.tgz";
         url  = "https://registry.yarnpkg.com/stat-mode/-/stat-mode-1.0.0.tgz";
-        sha1 = "68b55cb61ea639ff57136f36b216a291800d1465";
+        sha512 = "jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==";
       };
     }
     {
@@ -4238,39 +4070,15 @@
       path = fetchurl {
         name = "string_length___string_length_4.0.2.tgz";
         url  = "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz";
-        sha1 = "a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a";
-      };
-    }
-    {
-      name = "string_width___string_width_2.1.1.tgz";
-      path = fetchurl {
-        name = "string_width___string_width_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz";
-        sha1 = "ab93f27a8dc13d28cac815c462143a6d9012ae9e";
-      };
-    }
-    {
-      name = "string_width___string_width_3.1.0.tgz";
-      path = fetchurl {
-        name = "string_width___string_width_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz";
-        sha1 = "22767be21b62af1081574306f69ac51b62203961";
+        sha512 = "+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==";
       };
     }
     {
-      name = "string_width___string_width_4.2.2.tgz";
+      name = "string_width___string_width_4.2.3.tgz";
       path = fetchurl {
-        name = "string_width___string_width_4.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz";
-        sha1 = "dafd4f9559a7585cfba529c6a0a4f73488ebd4c5";
-      };
-    }
-    {
-      name = "string_decoder___string_decoder_1.3.0.tgz";
-      path = fetchurl {
-        name = "string_decoder___string_decoder_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz";
-        sha1 = "42f114594a46cf1a8e30b0a84f56c78c3edac21e";
+        name = "string_width___string_width_4.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz";
+        sha512 = "wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==";
       };
     }
     {
@@ -4278,31 +4086,15 @@
       path = fetchurl {
         name = "string_decoder___string_decoder_1.1.1.tgz";
         url  = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz";
-        sha1 = "9cf1611ba62685d7030ae9e4ba34149c3af03fc8";
-      };
-    }
-    {
-      name = "strip_ansi___strip_ansi_4.0.0.tgz";
-      path = fetchurl {
-        name = "strip_ansi___strip_ansi_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz";
-        sha1 = "a8479022eb1ac368a871389b635262c505ee368f";
+        sha512 = "n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==";
       };
     }
     {
-      name = "strip_ansi___strip_ansi_5.2.0.tgz";
+      name = "strip_ansi___strip_ansi_6.0.1.tgz";
       path = fetchurl {
-        name = "strip_ansi___strip_ansi_5.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz";
-        sha1 = "8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae";
-      };
-    }
-    {
-      name = "strip_ansi___strip_ansi_6.0.0.tgz";
-      path = fetchurl {
-        name = "strip_ansi___strip_ansi_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz";
-        sha1 = "0b1571dd7669ccd4f3e06e14ef1eed26225ae532";
+        name = "strip_ansi___strip_ansi_6.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz";
+        sha512 = "Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==";
       };
     }
     {
@@ -4310,7 +4102,7 @@
       path = fetchurl {
         name = "strip_bom___strip_bom_4.0.0.tgz";
         url  = "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz";
-        sha1 = "9c3505c1db45bcedca3d9cf7a16f5c5aa3901878";
+        sha512 = "3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==";
       };
     }
     {
@@ -4318,7 +4110,7 @@
       path = fetchurl {
         name = "strip_final_newline___strip_final_newline_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz";
-        sha1 = "89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad";
+        sha512 = "BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==";
       };
     }
     {
@@ -4326,7 +4118,7 @@
       path = fetchurl {
         name = "strip_json_comments___strip_json_comments_3.1.1.tgz";
         url  = "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz";
-        sha1 = "31f1281b3832630434831c310c01cccda8cbe006";
+        sha512 = "6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==";
       };
     }
     {
@@ -4334,7 +4126,15 @@
       path = fetchurl {
         name = "strip_json_comments___strip_json_comments_2.0.1.tgz";
         url  = "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz";
-        sha1 = "3c531942e908c2697c0ec344858c286c7ca0a60a";
+        sha1 = "PFMZQukIwml8DsNEhYwobHygpgo=";
+      };
+    }
+    {
+      name = "strnum___strnum_1.0.5.tgz";
+      path = fetchurl {
+        name = "strnum___strnum_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/strnum/-/strnum-1.0.5.tgz";
+        sha512 = "J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==";
       };
     }
     {
@@ -4342,7 +4142,7 @@
       path = fetchurl {
         name = "sumchecker___sumchecker_3.0.1.tgz";
         url  = "https://registry.yarnpkg.com/sumchecker/-/sumchecker-3.0.1.tgz";
-        sha1 = "6377e996795abb0b6d348e9b3e1dfb24345a8e42";
+        sha512 = "MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==";
       };
     }
     {
@@ -4350,7 +4150,7 @@
       path = fetchurl {
         name = "supports_color___supports_color_5.5.0.tgz";
         url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz";
-        sha1 = "e2e69a44ac8772f78a1ec0b35b689df6530efc8f";
+        sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==";
       };
     }
     {
@@ -4358,7 +4158,7 @@
       path = fetchurl {
         name = "supports_color___supports_color_7.2.0.tgz";
         url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz";
-        sha1 = "1b7dcdcb32b8138801b3e478ba6a51caa89648da";
+        sha512 = "qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==";
       };
     }
     {
@@ -4366,7 +4166,7 @@
       path = fetchurl {
         name = "supports_color___supports_color_8.1.1.tgz";
         url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz";
-        sha1 = "cd6fc17e28500cff56c1b86c0a7fd4a54a73005c";
+        sha512 = "MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==";
       };
     }
     {
@@ -4374,31 +4174,23 @@
       path = fetchurl {
         name = "supports_hyperlinks___supports_hyperlinks_2.2.0.tgz";
         url  = "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz";
-        sha1 = "4f77b42488765891774b70c79babd87f9bd594bb";
-      };
-    }
-    {
-      name = "symbol_tree___symbol_tree_3.2.4.tgz";
-      path = fetchurl {
-        name = "symbol_tree___symbol_tree_3.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz";
-        sha1 = "430637d248ba77e078883951fb9aa0eed7c63fa2";
+        sha512 = "6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==";
       };
     }
     {
-      name = "table___table_6.7.1.tgz";
+      name = "supports_preserve_symlinks_flag___supports_preserve_symlinks_flag_1.0.0.tgz";
       path = fetchurl {
-        name = "table___table_6.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/table/-/table-6.7.1.tgz";
-        sha1 = "ee05592b7143831a8c94f3cee6aae4c1ccef33e2";
+        name = "supports_preserve_symlinks_flag___supports_preserve_symlinks_flag_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz";
+        sha512 = "ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==";
       };
     }
     {
-      name = "tar_stream___tar_stream_2.2.0.tgz";
+      name = "symbol_tree___symbol_tree_3.2.4.tgz";
       path = fetchurl {
-        name = "tar_stream___tar_stream_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz";
-        sha1 = "acad84c284136b060dc3faa64474aa9aebd77287";
+        name = "symbol_tree___symbol_tree_3.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz";
+        sha512 = "9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==";
       };
     }
     {
@@ -4406,7 +4198,7 @@
       path = fetchurl {
         name = "temp_file___temp_file_3.4.0.tgz";
         url  = "https://registry.yarnpkg.com/temp-file/-/temp-file-3.4.0.tgz";
-        sha1 = "766ea28911c683996c248ef1a20eea04d51652c7";
+        sha512 = "C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==";
       };
     }
     {
@@ -4414,7 +4206,7 @@
       path = fetchurl {
         name = "terminal_link___terminal_link_2.1.1.tgz";
         url  = "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz";
-        sha1 = "14a64a27ab3c0df933ea546fba55f2d078edc994";
+        sha512 = "un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==";
       };
     }
     {
@@ -4422,7 +4214,7 @@
       path = fetchurl {
         name = "test_exclude___test_exclude_6.0.0.tgz";
         url  = "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz";
-        sha1 = "04a8698661d805ea6fa293b6cb9e63ac044ef15e";
+        sha512 = "cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==";
       };
     }
     {
@@ -4430,7 +4222,7 @@
       path = fetchurl {
         name = "text_table___text_table_0.2.0.tgz";
         url  = "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz";
-        sha1 = "7f5ee823ae805207c00af2df4a84ec3fcfa570b4";
+        sha1 = "f17oI66AUgfACvLfSoTsP8+lcLQ=";
       };
     }
     {
@@ -4438,31 +4230,31 @@
       path = fetchurl {
         name = "throat___throat_6.0.1.tgz";
         url  = "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz";
-        sha1 = "d514fedad95740c12c2d7fc70ea863eb51ade375";
+        sha512 = "8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==";
       };
     }
     {
-      name = "tldts_core___tldts_core_5.7.38.tgz";
+      name = "tldts_core___tldts_core_5.7.72.tgz";
       path = fetchurl {
-        name = "tldts_core___tldts_core_5.7.38.tgz";
-        url  = "https://registry.yarnpkg.com/tldts-core/-/tldts-core-5.7.38.tgz";
-        sha1 = "779092c90941803fb682c3d7094a88f12aad4508";
+        name = "tldts_core___tldts_core_5.7.72.tgz";
+        url  = "https://registry.yarnpkg.com/tldts-core/-/tldts-core-5.7.72.tgz";
+        sha512 = "UVnXJQbM3CGYwXVy16nNJHh/MWr7fcaEyd3DravwgZjWn0pPHuQ/ajtGonzi9F62Ld3d5r6zBlOTI7qLlLJR1Q==";
       };
     }
     {
-      name = "tldts_experimental___tldts_experimental_5.7.38.tgz";
+      name = "tldts_experimental___tldts_experimental_5.7.72.tgz";
       path = fetchurl {
-        name = "tldts_experimental___tldts_experimental_5.7.38.tgz";
-        url  = "https://registry.yarnpkg.com/tldts-experimental/-/tldts-experimental-5.7.38.tgz";
-        sha1 = "a2b03ae0282ee7439b1ed1618a1d7d2e9e66be78";
+        name = "tldts_experimental___tldts_experimental_5.7.72.tgz";
+        url  = "https://registry.yarnpkg.com/tldts-experimental/-/tldts-experimental-5.7.72.tgz";
+        sha512 = "Qg1FOnR8jCXBySOQVSaAmRZ4UiKse60MY7eTdx6oIaQ8ve+xGi+dXybb4+RN4cu9c4M7HOoGYkWERQ5tkBAPbg==";
       };
     }
     {
-      name = "tmp_promise___tmp_promise_3.0.2.tgz";
+      name = "tmp_promise___tmp_promise_3.0.3.tgz";
       path = fetchurl {
-        name = "tmp_promise___tmp_promise_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/tmp-promise/-/tmp-promise-3.0.2.tgz";
-        sha1 = "6e933782abff8b00c3119d63589ca1fb9caaa62a";
+        name = "tmp_promise___tmp_promise_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/tmp-promise/-/tmp-promise-3.0.3.tgz";
+        sha512 = "RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==";
       };
     }
     {
@@ -4470,15 +4262,15 @@
       path = fetchurl {
         name = "tmp___tmp_0.2.1.tgz";
         url  = "https://registry.yarnpkg.com/tmp/-/tmp-0.2.1.tgz";
-        sha1 = "8457fc3037dcf4719c251367a1af6500ee1ccf14";
+        sha512 = "76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==";
       };
     }
     {
-      name = "tmpl___tmpl_1.0.4.tgz";
+      name = "tmpl___tmpl_1.0.5.tgz";
       path = fetchurl {
-        name = "tmpl___tmpl_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz";
-        sha1 = "23640dd7b42d00433911140820e5cf440e521dd1";
+        name = "tmpl___tmpl_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz";
+        sha512 = "3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==";
       };
     }
     {
@@ -4486,7 +4278,7 @@
       path = fetchurl {
         name = "to_fast_properties___to_fast_properties_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz";
-        sha1 = "dc5e698cbd079265bc73e0377681a4e4e83f616e";
+        sha1 = "3F5pjL0HkmW8c+A3doGk5Og/YW4=";
       };
     }
     {
@@ -4494,7 +4286,7 @@
       path = fetchurl {
         name = "to_readable_stream___to_readable_stream_1.0.0.tgz";
         url  = "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz";
-        sha1 = "ce0aa0c2f3df6adf852efb404a783e77c0475771";
+        sha512 = "Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==";
       };
     }
     {
@@ -4502,7 +4294,7 @@
       path = fetchurl {
         name = "to_regex_range___to_regex_range_5.0.1.tgz";
         url  = "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz";
-        sha1 = "1648c44aae7c8d988a326018ed72f5b4dd0392e4";
+        sha512 = "65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==";
       };
     }
     {
@@ -4510,7 +4302,7 @@
       path = fetchurl {
         name = "tough_cookie___tough_cookie_4.0.0.tgz";
         url  = "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz";
-        sha1 = "d822234eeca882f991f0f908824ad2622ddbece4";
+        sha512 = "tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==";
       };
     }
     {
@@ -4518,7 +4310,7 @@
       path = fetchurl {
         name = "tr46___tr46_2.1.0.tgz";
         url  = "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz";
-        sha1 = "fa87aa81ca5d5941da8cbf1f9b749dc969a4e240";
+        sha512 = "15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==";
       };
     }
     {
@@ -4526,7 +4318,7 @@
       path = fetchurl {
         name = "truncate_utf8_bytes___truncate_utf8_bytes_1.0.2.tgz";
         url  = "https://registry.yarnpkg.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz";
-        sha1 = "405923909592d56f78a5818434b0b78489ca5f2b";
+        sha1 = "QFkjkJWS1W94pYGENLC3hInKXys=";
       };
     }
     {
@@ -4534,7 +4326,7 @@
       path = fetchurl {
         name = "tunnel___tunnel_0.0.6.tgz";
         url  = "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz";
-        sha1 = "72f1314b34a5b192db012324df2cc587ca47f92c";
+        sha512 = "1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==";
       };
     }
     {
@@ -4542,7 +4334,7 @@
       path = fetchurl {
         name = "type_check___type_check_0.4.0.tgz";
         url  = "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz";
-        sha1 = "07b8203bfa7056c0657050e3ccd2c37730bab8f1";
+        sha512 = "XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==";
       };
     }
     {
@@ -4550,7 +4342,7 @@
       path = fetchurl {
         name = "type_check___type_check_0.3.2.tgz";
         url  = "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz";
-        sha1 = "5884cab512cf1d355e3fb784f30804b2b520db72";
+        sha1 = "WITKtRLPHTVeP7eE8wgEsrUg23I=";
       };
     }
     {
@@ -4558,7 +4350,7 @@
       path = fetchurl {
         name = "type_detect___type_detect_4.0.8.tgz";
         url  = "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz";
-        sha1 = "7646fb5f18871cfbb7749e69bd39a6388eb7450c";
+        sha512 = "0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==";
       };
     }
     {
@@ -4566,7 +4358,7 @@
       path = fetchurl {
         name = "type_fest___type_fest_0.13.1.tgz";
         url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.13.1.tgz";
-        sha1 = "0172cb5bce80b0bd542ea348db50c7e21834d934";
+        sha512 = "34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==";
       };
     }
     {
@@ -4574,7 +4366,7 @@
       path = fetchurl {
         name = "type_fest___type_fest_0.20.2.tgz";
         url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz";
-        sha1 = "1bf207f4b28f91583666cb5fbd327887301cd5f4";
+        sha512 = "Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==";
       };
     }
     {
@@ -4582,7 +4374,7 @@
       path = fetchurl {
         name = "type_fest___type_fest_0.21.3.tgz";
         url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz";
-        sha1 = "d260a24b0198436e133fa26a524a6d65fa3b2e37";
+        sha512 = "t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==";
       };
     }
     {
@@ -4590,7 +4382,7 @@
       path = fetchurl {
         name = "typedarray_to_buffer___typedarray_to_buffer_3.1.5.tgz";
         url  = "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz";
-        sha1 = "a97ee7a9ff42691b9f783ff1bc5112fe3fca9080";
+        sha512 = "zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==";
       };
     }
     {
@@ -4598,7 +4390,7 @@
       path = fetchurl {
         name = "typedarray___typedarray_0.0.6.tgz";
         url  = "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz";
-        sha1 = "867ac74e3864187b1d3d47d996a78ec5c8830777";
+        sha1 = "hnrHTjhkGHsdPUfZlqeOxciDB3c=";
       };
     }
     {
@@ -4606,7 +4398,7 @@
       path = fetchurl {
         name = "unique_string___unique_string_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz";
-        sha1 = "39c6451f81afb2749de2b233e3f7c5e8843bd89d";
+        sha512 = "uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==";
       };
     }
     {
@@ -4614,7 +4406,7 @@
       path = fetchurl {
         name = "universalify___universalify_0.1.2.tgz";
         url  = "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz";
-        sha1 = "b646f69be3942dabcecc9d6639c80dc105efaa66";
+        sha512 = "rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==";
       };
     }
     {
@@ -4622,7 +4414,7 @@
       path = fetchurl {
         name = "universalify___universalify_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz";
-        sha1 = "75a4984efedc4b08975c5aeb73f530d02df25717";
+        sha512 = "hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==";
       };
     }
     {
@@ -4630,7 +4422,7 @@
       path = fetchurl {
         name = "update_notifier___update_notifier_5.1.0.tgz";
         url  = "https://registry.yarnpkg.com/update-notifier/-/update-notifier-5.1.0.tgz";
-        sha1 = "4ab0d7c7f36a231dd7316cf7729313f0214d9ad9";
+        sha512 = "ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==";
       };
     }
     {
@@ -4638,7 +4430,7 @@
       path = fetchurl {
         name = "uri_js___uri_js_4.4.1.tgz";
         url  = "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz";
-        sha1 = "9b1a52595225859e55f669d928f88c6c57f2a77e";
+        sha512 = "7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==";
       };
     }
     {
@@ -4646,7 +4438,7 @@
       path = fetchurl {
         name = "url_parse_lax___url_parse_lax_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz";
-        sha1 = "16b5cafc07dbe3676c1b1999177823d6503acb0c";
+        sha1 = "FrXK/Afb42dsGxmZF3gj1lA6yww=";
       };
     }
     {
@@ -4654,7 +4446,7 @@
       path = fetchurl {
         name = "utf8_byte_length___utf8_byte_length_1.0.4.tgz";
         url  = "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz";
-        sha1 = "f45f150c4c66eee968186505ab93fcbb8ad6bf61";
+        sha1 = "9F8VDExm7uloGGUFq5P8u4rWv2E=";
       };
     }
     {
@@ -4662,7 +4454,7 @@
       path = fetchurl {
         name = "util_deprecate___util_deprecate_1.0.2.tgz";
         url  = "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz";
-        sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf";
+        sha1 = "RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=";
       };
     }
     {
@@ -4670,23 +4462,23 @@
       path = fetchurl {
         name = "v8_compile_cache___v8_compile_cache_2.3.0.tgz";
         url  = "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz";
-        sha1 = "2de19618c66dc247dcfb6f99338035d8245a2cee";
+        sha512 = "l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==";
       };
     }
     {
-      name = "v8_to_istanbul___v8_to_istanbul_8.0.0.tgz";
+      name = "v8_to_istanbul___v8_to_istanbul_8.1.1.tgz";
       path = fetchurl {
-        name = "v8_to_istanbul___v8_to_istanbul_8.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz";
-        sha1 = "4229f2a99e367f3f018fa1d5c2b8ec684667c69c";
+        name = "v8_to_istanbul___v8_to_istanbul_8.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz";
+        sha512 = "FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==";
       };
     }
     {
-      name = "verror___verror_1.10.0.tgz";
+      name = "verror___verror_1.10.1.tgz";
       path = fetchurl {
-        name = "verror___verror_1.10.0.tgz";
-        url  = "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz";
-        sha1 = "3a105ca17053af55d6e270c1f8288682e18da400";
+        name = "verror___verror_1.10.1.tgz";
+        url  = "https://registry.yarnpkg.com/verror/-/verror-1.10.1.tgz";
+        sha512 = "veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==";
       };
     }
     {
@@ -4694,7 +4486,7 @@
       path = fetchurl {
         name = "w3c_hr_time___w3c_hr_time_1.0.2.tgz";
         url  = "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz";
-        sha1 = "0a89cdf5cc15822df9c360543676963e0cc308cd";
+        sha512 = "z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==";
       };
     }
     {
@@ -4702,15 +4494,15 @@
       path = fetchurl {
         name = "w3c_xmlserializer___w3c_xmlserializer_2.0.0.tgz";
         url  = "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz";
-        sha1 = "3e7104a05b75146cc60f564380b7f683acf1020a";
+        sha512 = "4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==";
       };
     }
     {
-      name = "walker___walker_1.0.7.tgz";
+      name = "walker___walker_1.0.8.tgz";
       path = fetchurl {
-        name = "walker___walker_1.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz";
-        sha1 = "2f7f9b8fd10d677262b18a884e28d19618e028fb";
+        name = "walker___walker_1.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz";
+        sha512 = "ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==";
       };
     }
     {
@@ -4718,7 +4510,7 @@
       path = fetchurl {
         name = "webidl_conversions___webidl_conversions_5.0.0.tgz";
         url  = "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz";
-        sha1 = "ae59c8a00b121543a2acc65c0434f57b0fc11aff";
+        sha512 = "VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==";
       };
     }
     {
@@ -4726,7 +4518,7 @@
       path = fetchurl {
         name = "webidl_conversions___webidl_conversions_6.1.0.tgz";
         url  = "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz";
-        sha1 = "9111b4d7ea80acd40f5270d666621afa78b69514";
+        sha512 = "qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==";
       };
     }
     {
@@ -4734,7 +4526,7 @@
       path = fetchurl {
         name = "whatwg_encoding___whatwg_encoding_1.0.5.tgz";
         url  = "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz";
-        sha1 = "5abacf777c32166a51d085d6b4f3e7d27113ddb0";
+        sha512 = "b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==";
       };
     }
     {
@@ -4742,7 +4534,7 @@
       path = fetchurl {
         name = "whatwg_mimetype___whatwg_mimetype_2.3.0.tgz";
         url  = "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz";
-        sha1 = "3d4b1e0312d2079879f826aff18dbeeca5960fbf";
+        sha512 = "M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==";
       };
     }
     {
@@ -4750,7 +4542,7 @@
       path = fetchurl {
         name = "whatwg_url___whatwg_url_8.7.0.tgz";
         url  = "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz";
-        sha1 = "656a78e510ff8f3937bc0bcbe9f5c0ac35941b77";
+        sha512 = "gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==";
       };
     }
     {
@@ -4758,7 +4550,7 @@
       path = fetchurl {
         name = "which___which_2.0.2.tgz";
         url  = "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz";
-        sha1 = "7c6a8dd0a636a0327e10b59c9286eee93f3f51b1";
+        sha512 = "BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==";
       };
     }
     {
@@ -4766,7 +4558,7 @@
       path = fetchurl {
         name = "widest_line___widest_line_3.1.0.tgz";
         url  = "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz";
-        sha1 = "8292333bbf66cb45ff0de1603b136b7ae1496eca";
+        sha512 = "NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==";
       };
     }
     {
@@ -4774,7 +4566,7 @@
       path = fetchurl {
         name = "word_wrap___word_wrap_1.2.3.tgz";
         url  = "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz";
-        sha1 = "610636f6b1f703891bd34771ccb17fb93b47079c";
+        sha512 = "Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==";
       };
     }
     {
@@ -4782,7 +4574,7 @@
       path = fetchurl {
         name = "wrap_ansi___wrap_ansi_7.0.0.tgz";
         url  = "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz";
-        sha1 = "67e145cff510a6a6984bdf1152911d69d2eb9e43";
+        sha512 = "YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==";
       };
     }
     {
@@ -4790,7 +4582,7 @@
       path = fetchurl {
         name = "wrappy___wrappy_1.0.2.tgz";
         url  = "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz";
-        sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
+        sha1 = "tSQ9jz7BqjXxNkYFvA0QNuMKtp8=";
       };
     }
     {
@@ -4798,15 +4590,15 @@
       path = fetchurl {
         name = "write_file_atomic___write_file_atomic_3.0.3.tgz";
         url  = "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz";
-        sha1 = "56bd5c5a5c70481cd19c571bd39ab965a5de56e8";
+        sha512 = "AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==";
       };
     }
     {
-      name = "ws___ws_7.5.1.tgz";
+      name = "ws___ws_7.5.7.tgz";
       path = fetchurl {
-        name = "ws___ws_7.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/ws/-/ws-7.5.1.tgz";
-        sha1 = "44fc000d87edb1d9c53e51fbc69a0ac1f6871d66";
+        name = "ws___ws_7.5.7.tgz";
+        url  = "https://registry.yarnpkg.com/ws/-/ws-7.5.7.tgz";
+        sha512 = "KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==";
       };
     }
     {
@@ -4814,7 +4606,7 @@
       path = fetchurl {
         name = "xdg_basedir___xdg_basedir_4.0.0.tgz";
         url  = "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz";
-        sha1 = "4bc8d9984403696225ef83a1573cbbcb4e79db13";
+        sha512 = "PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==";
       };
     }
     {
@@ -4822,7 +4614,7 @@
       path = fetchurl {
         name = "xml_name_validator___xml_name_validator_3.0.0.tgz";
         url  = "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz";
-        sha1 = "6ae73e06de4d8c6e47f9fb181f78d648ad457c6a";
+        sha512 = "A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==";
       };
     }
     {
@@ -4830,7 +4622,7 @@
       path = fetchurl {
         name = "xmlbuilder___xmlbuilder_15.1.1.tgz";
         url  = "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz";
-        sha1 = "9dcdce49eea66d8d10b42cae94a79c3c8d0c2ec5";
+        sha512 = "yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==";
       };
     }
     {
@@ -4838,7 +4630,7 @@
       path = fetchurl {
         name = "xmlbuilder___xmlbuilder_9.0.7.tgz";
         url  = "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz";
-        sha1 = "132ee63d2ec5565c557e20f4c22df9aca686b10d";
+        sha1 = "Ey7mPS7FVlxVfiD0wi35rKaGsQ0=";
       };
     }
     {
@@ -4846,15 +4638,7 @@
       path = fetchurl {
         name = "xmlchars___xmlchars_2.2.0.tgz";
         url  = "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz";
-        sha1 = "060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb";
-      };
-    }
-    {
-      name = "xmldom___xmldom_0.5.0.tgz";
-      path = fetchurl {
-        name = "xmldom___xmldom_0.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/xmldom/-/xmldom-0.5.0.tgz";
-        sha1 = "193cb96b84aa3486127ea6272c4596354cb4962e";
+        sha512 = "JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==";
       };
     }
     {
@@ -4862,7 +4646,7 @@
       path = fetchurl {
         name = "y18n___y18n_5.0.8.tgz";
         url  = "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz";
-        sha1 = "7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55";
+        sha512 = "0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==";
       };
     }
     {
@@ -4870,7 +4654,7 @@
       path = fetchurl {
         name = "yallist___yallist_4.0.0.tgz";
         url  = "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz";
-        sha1 = "9bb92790d9c0effec63be73519e11a35019a3a72";
+        sha512 = "3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==";
       };
     }
     {
@@ -4878,7 +4662,15 @@
       path = fetchurl {
         name = "yargs_parser___yargs_parser_20.2.9.tgz";
         url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz";
-        sha1 = "2eb7dc3b0289718fc295f362753845c41a0c94ee";
+        sha512 = "y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==";
+      };
+    }
+    {
+      name = "yargs_parser___yargs_parser_21.0.1.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_21.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.1.tgz";
+        sha512 = "9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==";
       };
     }
     {
@@ -4886,15 +4678,15 @@
       path = fetchurl {
         name = "yargs___yargs_16.2.0.tgz";
         url  = "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz";
-        sha1 = "1c82bf0f6b6a66eafce7ef30e376f49a12477f66";
+        sha512 = "D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==";
       };
     }
     {
-      name = "yargs___yargs_17.0.1.tgz";
+      name = "yargs___yargs_17.4.0.tgz";
       path = fetchurl {
-        name = "yargs___yargs_17.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/yargs/-/yargs-17.0.1.tgz";
-        sha1 = "6a1ced4ed5ee0b388010ba9fd67af83b9362e0bb";
+        name = "yargs___yargs_17.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-17.4.0.tgz";
+        sha512 = "WJudfrk81yWFSOkZYpAZx4Nt7V4xp7S/uJkX0CnxovMCt1wCE8LNftPpNuF9X/u9gN5nsD7ycYtRcDf2pL3UiA==";
       };
     }
     {
@@ -4902,15 +4694,7 @@
       path = fetchurl {
         name = "yauzl___yauzl_2.10.0.tgz";
         url  = "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz";
-        sha1 = "c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9";
-      };
-    }
-    {
-      name = "zip_stream___zip_stream_4.1.0.tgz";
-      path = fetchurl {
-        name = "zip_stream___zip_stream_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/zip-stream/-/zip-stream-4.1.0.tgz";
-        sha1 = "51dd326571544e36aa3f756430b313576dc8fc79";
+        sha1 = "x+sXyT4RLLEIb6bY5R+wZnt5pfk=";
       };
     }
   ];
diff --git a/nixpkgs/pkgs/applications/networking/browsers/vivaldi/default.nix b/nixpkgs/pkgs/applications/networking/browsers/vivaldi/default.nix
index fc66f471e4ba..30d719593e83 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/vivaldi/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/vivaldi/default.nix
@@ -20,11 +20,11 @@ let
   vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
 in stdenv.mkDerivation rec {
   pname = "vivaldi";
-  version = "5.1.2567.49-1";
+  version = "5.1.2567.73-1";
 
   src = fetchurl {
     url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}_amd64.deb";
-    sha256 = "1cyd789apjh71vzry2zjxb0c215yarfryb9jzxjmkfvrqg4g23xr";
+    sha256 = "04jzhipn4ip7x3zdwmfnp6w0qc2y1qdfy5w3qyy0r114jz9s9i7g";
   };
 
   unpackPhase = ''
diff --git a/nixpkgs/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix b/nixpkgs/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix
index 28543c31edc4..461fd0050cf1 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "chromium-codecs-ffmpeg-extra";
-  version = "97.0.4692.56";
+  version = "97.0.4692.71";
 
   src = fetchurl {
-    url = "https://launchpadlibrarian.net/574348729/${pname}_${version}-0ubuntu0.18.04.1_amd64.deb";
-    sha256 = "sha256-v5DHJxQjHjBeIS/psaM+LyUaHKlwzrKncLarErbUGVU=";
+    url = "https://launchpadlibrarian.net/579085093/${pname}_${version}-0ubuntu0.18.04.1_amd64.deb";
+    sha256 = "sha256-YUv1D8U776NJBRPvYJigG7gyH9zd19FbnjAvIEhfYpA=";
   };
 
   buildInputs = [ dpkg ];
diff --git a/nixpkgs/pkgs/applications/networking/browsers/vivaldi/update.sh b/nixpkgs/pkgs/applications/networking/browsers/vivaldi/update.sh
index 2e6c2853eb14..caf9148805cd 100755
--- a/nixpkgs/pkgs/applications/networking/browsers/vivaldi/update.sh
+++ b/nixpkgs/pkgs/applications/networking/browsers/vivaldi/update.sh
@@ -36,9 +36,13 @@ git commit -m "vivaldi: ${vivaldi_version_old} -> ${vivaldi_version}"
 
 # Check vivaldi-ffmpeg-codecs version.
 chromium_version_old=$(version vivaldi-ffmpeg-codecs)
-chromium_version=$(bsdtar xOf "$path" data.tar.xz | bsdtar xOf - ./opt/vivaldi/vivaldi-bin | strings | grep '^[0-9]\{2,\}\.[0-9]\+\.[0-9]\{4,\}\+\.[0-9]\+$')
+ffmpeg_update_script=$(bsdtar xOf "$path" data.tar.xz | bsdtar xOf - ./opt/vivaldi/update-ffmpeg)
+chromium_version=$(sed -rne 's/FFMPEG_VERSION_DEB\=([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+).*/\1/p' <<< $ffmpeg_update_script)
+download_subdir=$(sed -rne 's/.*FFMPEG_URL_DEB\=https:\/\/launchpadlibrarian\.net\/([0-9]+)\/.*_amd64\.deb/\1/p' <<< $ffmpeg_update_script)
 
 if [[ "$chromium_version" != "$chromium_version_old" ]]; then
+  # replace the download prefix
+  sed -i $ffmpeg_nix -e "s/\(https:\/\/launchpadlibrarian\.net\/\)[0-9]\+/\1$download_subdir/g"
   (cd "$root" && update-source-version vivaldi-ffmpeg-codecs "$chromium_version")
 
   git add "${ffmpeg_nix}"
diff --git a/nixpkgs/pkgs/applications/networking/browsers/webbrowser/default.nix b/nixpkgs/pkgs/applications/networking/browsers/webbrowser/default.nix
deleted file mode 100644
index 9f43f981722f..000000000000
--- a/nixpkgs/pkgs/applications/networking/browsers/webbrowser/default.nix
+++ /dev/null
@@ -1,109 +0,0 @@
-{ stdenv, lib, fetchgit, makeDesktopItem, pkg-config, makeWrapper
-# Build
-, python2, autoconf213, yasm, perl
-, unzip, gnome2, gnum4
-
-# Runtime
-, xorg, zip, freetype, fontconfig, glibc, libffi
-, dbus, dbus-glib, gtk2, alsa-lib, jack2, ffmpeg
-}:
-
-let
-
-  libPath = lib.makeLibraryPath [ ffmpeg ];
-
-in stdenv.mkDerivation rec {
-  pname = "webbrowser";
-  version = "29.0.0rc1";
-
-  src = fetchgit {
-    url = "https://git.nuegia.net/webbrowser.git";
-    rev = version;
-    sha256 = "1d82943mla6q3257081d946kgms91dg0n93va3zlzm9hbbqilzm6";
-    fetchSubmodules = true;
-  };
-
-  desktopItem = makeDesktopItem {
-    name = "webbrowser";
-    exec = "webbrowser %U";
-    icon = "webbrowser";
-    desktopName = "Web Browser";
-    genericName = "Web Browser";
-    categories = [ "Network" "WebBrowser" ];
-    mimeTypes = [
-      "text/html"
-      "text/xml"
-      "application/xhtml+xml"
-      "application/vnd.mozilla.xul+xml"
-      "x-scheme-handler/http"
-      "x-scheme-handler/https"
-    ];
-  };
-
-  nativeBuildInputs = [
-    gnum4 makeWrapper perl pkg-config python2 unzip
-  ];
-
-  buildInputs = [
-    alsa-lib dbus dbus-glib ffmpeg fontconfig freetype yasm zip jack2 gtk2
-    gnome2.GConf xorg.libXt
-  ];
-
-  enableParallelBuilding = true;
-
-  configurePhase = ''
-    export MOZCONFIG=$PWD/.mozconfig
-    export MOZ_NOSPAM=1
-
-    cp $src/doc/mozconfig.example $MOZCONFIG
-    # Need to modify it
-    chmod 644 $MOZCONFIG
-
-    substituteInPlace $MOZCONFIG \
-      --replace "mk_add_options PYTHON=/usr/bin/python2" "mk_add_options PYTHON=${python2}/bin/python2" \
-      --replace "mk_add_options AUTOCONF=/usr/bin/autoconf-2.13" "mk_add_options AUTOCONF=${autoconf213}/bin/autoconf" \
-      --replace 'mk_add_options MOZ_OBJDIR=$HOME/build/wbobjects/' "" \
-      --replace "ac_add_options --x-libraries=/usr/lib64" "ac_add_options --x-libraries=${lib.makeLibraryPath [ xorg.libX11 ]}" \
-      --replace "_BUILD_64=1" "_BUILD_64=${lib.optionalString stdenv.hostPlatform.is64bit "1"}" \
-      --replace "--enable-ccache" "--disable-ccache"
-
-    echo >> $MOZCONFIG '
-    #
-    # NixOS-specific adjustments
-    #
-
-    ac_add_options --prefix=$out
-
-    mk_add_options MOZ_MAKE_FLAGS="-j$NIX_BUILD_CORES"
-    '
-  '';
-
-  buildPhase = "$src/mach build";
-
-  installPhase = ''
-    $src/mach install
-
-    mkdir -p $out/share/applications
-    cp ${desktopItem}/share/applications/* $out/share/applications
-
-    for n in 16 32 48; do
-      size=$n"x"$n
-      mkdir -p $out/share/icons/hicolor/$size/apps
-      cp $src/webbrowser/branding/unofficial/default$n.png \
-         $out/share/icons/hicolor/$size/apps/webbrowser.png
-    done
-
-    # Needed to make videos work
-    wrapProgram $out/lib/webbrowser-${version}/webbrowser \
-      --prefix LD_LIBRARY_PATH : "${libPath}"
-  '';
-
-  meta = with lib; {
-    description = "Generic web browser without trackers compatible with XUL plugins using UXP rendering engine";
-    homepage    = "https://git.nuegia.net/webbrowser.git/";
-    license     = [ licenses.mpl20 licenses.gpl3 ];
-    maintainers = with maintainers; [ TheBrainScrambler ];
-    platforms   = [ "i686-linux" "x86_64-linux" ];
-    broken      = true; # 2021-01-07
-  };
-}
diff --git a/nixpkgs/pkgs/applications/networking/browsers/yandex-browser/default.nix b/nixpkgs/pkgs/applications/networking/browsers/yandex-browser/default.nix
index 7df9b6b1e7a4..dab9794277f6 100644
--- a/nixpkgs/pkgs/applications/networking/browsers/yandex-browser/default.nix
+++ b/nixpkgs/pkgs/applications/networking/browsers/yandex-browser/default.nix
@@ -50,11 +50,11 @@
 
 stdenv.mkDerivation rec {
   pname = "yandex-browser";
-  version = "22.1.3.856-1";
+  version = "22.1.3.907-1";
 
   src = fetchurl {
     url = "http://repo.yandex.ru/yandex-browser/deb/pool/main/y/${pname}-beta/${pname}-beta_${version}_amd64.deb";
-    sha256 = "sha256-+xxyV8dBnfu2hQ/ykkp7wFSaojhlPLVvMmZdh/hyaoE=";
+    sha256 = "sha256-7dbFqNzZP2CyseK0xD9zcvecIuueZfMy5KgN8gRRLEk=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/networking/cawbird/default.nix b/nixpkgs/pkgs/applications/networking/cawbird/default.nix
index 74074d23242a..dad293e51a2d 100644
--- a/nixpkgs/pkgs/applications/networking/cawbird/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cawbird/default.nix
@@ -23,14 +23,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.4.2";
+  version = "1.5";
   pname = "cawbird";
 
   src = fetchFromGitHub {
     owner = "IBBoard";
     repo = "cawbird";
     rev = "v${version}";
-    sha256 = "17575cp5qcgsqf37y3xqg3vr6l2j8bbbkmy2c1l185rxghfacida";
+    sha256 = "sha256-XFN9gfCoQDmYYysg1yrUoPPE0Ow40LttvV5Ltu0DTfI=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/networking/cisco-packet-tracer/8.nix b/nixpkgs/pkgs/applications/networking/cisco-packet-tracer/8.nix
index 1267a061429f..9bc890017454 100644
--- a/nixpkgs/pkgs/applications/networking/cisco-packet-tracer/8.nix
+++ b/nixpkgs/pkgs/applications/networking/cisco-packet-tracer/8.nix
@@ -27,7 +27,7 @@
 }:
 
 let
-  version = "8.0.1";
+  version = "8.1.1";
 
   ptFiles = stdenv.mkDerivation {
     name = "PacketTracer8Drv";
@@ -36,7 +36,7 @@ let
     dontUnpack = true;
     src = requireFile {
       name = "CiscoPacketTracer_${builtins.replaceStrings ["."] [""] version}_Ubuntu_64bit.deb";
-      sha256 = "77a25351b016faed7c78959819c16c7013caa89c6b1872cb888cd96edd259140";
+      sha256 = "08c53171aa0257a64ae7de1540f242214033cfa4f879fbc9fed5cc0d32232abf";
       url = "https://www.netacad.com";
     };
 
@@ -72,6 +72,7 @@ let
       libXrandr
       libXrender
       libXScrnSaver
+      libXtst
       xcbutilimage
       xcbutilkeysyms
       xcbutilrenderutil
diff --git a/nixpkgs/pkgs/applications/networking/cloudflared/default.nix b/nixpkgs/pkgs/applications/networking/cloudflared/default.nix
index 3707876fd740..e5a3fc2060e9 100644
--- a/nixpkgs/pkgs/applications/networking/cloudflared/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cloudflared/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "cloudflared";
-  version = "2022.3.1";
+  version = "2022.3.4";
 
   src = fetchFromGitHub {
     owner  = "cloudflare";
     repo   = "cloudflared";
     rev    = version;
-    hash   = "sha256-iVg+AXSBO+caeYxUR41infCvsCTZkJTf7K0oZnOQmnY=";
+    hash   = "sha256-W3XA3AOzuyHlFCps2ne4Fh2X+E48inJT4QrDJLOeD5M=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/applications/networking/cluster/argo/default.nix b/nixpkgs/pkgs/applications/networking/cluster/argo/default.nix
index 07817e3ab0a3..503952fa59ad 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/argo/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/argo/default.nix
@@ -19,16 +19,16 @@ let
 in
 buildGoModule rec {
   pname = "argo";
-  version = "3.2.9";
+  version = "3.3.0";
 
   src = fetchFromGitHub {
     owner = "argoproj";
     repo = "argo";
     rev = "v${version}";
-    sha256 = "sha256-lZ6FjWXhVc51BlioDSryeYe5aZeUhMMEde+kk2SwV20=";
+    sha256 = "sha256-BDHbbb3WqQvRJB1A4NInfvujjB3r/AMmVvos8i/CnyU=";
   };
 
-  vendorSha256 = "sha256-hxSr0sNlz93JxOxnE2SnR6/OgCGK8DrJZxqQtSxfbj8=";
+  vendorSha256 = "sha256-YeSeaYOkNRjQgxsK9G7iPbVpfrPs4HRRFwfoUDxoCm0=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/applications/networking/cluster/argocd-autopilot/default.nix b/nixpkgs/pkgs/applications/networking/cluster/argocd-autopilot/default.nix
new file mode 100644
index 000000000000..674db790f223
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/cluster/argocd-autopilot/default.nix
@@ -0,0 +1,55 @@
+{ lib, stdenv, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "argocd-autopilot";
+  version = "0.3.0";
+  commit = "c8d17bef976649e4dc2428c14c39e30a0f846552";
+
+  src = fetchFromGitHub {
+    owner = "argoproj-labs";
+    repo = "argocd-autopilot";
+    rev = "v${version}";
+    sha256 = "sha256-tggE1T+oD/dJS9tD9xOExjhy+T1GDd0vwTerD3P2KvA=";
+  };
+
+  vendorSha256 = "sha256-v8UMSObE6w+ULzueEK0UFeebLqoamy/788SQLBmJZ8U=";
+
+  proxyVendor = true;
+
+  ldflags =
+    let package_url = "github.com/argoproj-labs/argocd-autopilot/pkg/store"; in
+    [
+      "-s"
+      "-w"
+      "-X ${package_url}.binaryName=${pname}"
+      "-X ${package_url}.version=${src.rev}"
+      "-X ${package_url}.buildDate=unknown"
+      "-X ${package_url}.gitCommit=${commit}"
+      "-X ${package_url}.installationManifestURL=github.com/argoproj-labs/argocd-autopilot/manifests/base?ref=${src.rev}"
+      "-X ${package_url}.installationManifestsNamespacedURL=github.com/argoproj-labs/argocd-autopilot/manifests/insecure?ref=${src.rev}"
+    ];
+
+  subPackages = [ "cmd" ];
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    $out/bin/argocd-autopilot version | grep ${src.rev} > /dev/null
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin
+    install -Dm755 "$GOPATH/bin/cmd" -T $out/bin/argocd-autopilot
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "ArgoCD Autopilot";
+    downloadPage = "https://github.com/argoproj-labs/argocd-autopilot";
+    homepage = "https://argocd-autopilot.readthedocs.io/en/stable/";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ sagikazarmark bryanasdev000 ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/cluster/argocd/default.nix b/nixpkgs/pkgs/applications/networking/cluster/argocd/default.nix
index 360d566009d4..211c2ce211eb 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/argocd/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/argocd/default.nix
@@ -1,26 +1,25 @@
-{ lib, buildGoModule, fetchFromGitHub, packr, makeWrapper, installShellFiles, helm, kustomize }:
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
 
 buildGoModule rec {
   pname = "argocd";
-  version = "2.2.5";
-  commit = "8f981ccfcf942a9eb00bc466649f8499ba0455f5";
+  version = "2.3.2";
   tag = "v${version}";
+  # Update commit to match the tag above
+  # TODO make updadeScript
+  commit = "ecc2af9dcaa12975e654cde8cbbeaffbb315f75c";
 
   src = fetchFromGitHub {
     owner = "argoproj";
     repo = "argo-cd";
     rev = tag;
-    sha256 = "sha256-wSvDoRHV4BObRL8lEpHt9oGXNB06LXdIYasRYqmM5QA=";
+    sha256 = "sha256-n+C4l4U3cDU+fgCnGWOYLdyjknw7n/xPEtC1i8AaU4o=";
   };
 
-  vendorSha256 = "sha256-BVhts+gOM6nhcR1lkFzy7OJnainLXw5YdeseBBRF2xE=";
+  vendorSha256 = "sha256-Km+1o6yuuxJs+DNTQ/XVTUFurD5gM5ohwDc7MwJuu5s=";
 
-  nativeBuildInputs = [ packr makeWrapper installShellFiles ];
-
-  # run packr to embed assets
-  preBuild = ''
-    packr
-  '';
+  # Set target as ./cmd per release-cli
+  # https://github.com/argoproj/argo-cd/blob/master/Makefile#L222
+  subPackages = [ "cmd" ];
 
   ldflags =
     let package_url = "github.com/argoproj/argo-cd/v2/common"; in
@@ -33,20 +32,7 @@ buildGoModule rec {
       "-X ${package_url}.gitTreeState=clean"
     ];
 
-  # Test is disabled because ksonnet is missing from nixpkgs.
-  # Log: https://gist.github.com/superherointj/79cbdc869dfd44d28a10dc6746ecb3f9
-  doCheck = false;
-  checkInputs = [
-    helm
-    kustomize
-    #ksonnet
-  ];
-
-  doInstallCheck = true;
-  installCheckPhase = ''
-    $out/bin/argocd version --client | grep ${tag} > /dev/null
-    $out/bin/argocd-util version --client | grep ${tag} > /dev/null
-  '';
+  nativeBuildInputs = [ installShellFiles ];
 
   installPhase = ''
     runHook preInstall
@@ -55,10 +41,12 @@ buildGoModule rec {
     runHook postInstall
   '';
 
+  doInstallCheck = true;
+  installCheckPhase = ''
+    $out/bin/argocd version --client | grep ${tag} > /dev/null
+  '';
+
   postInstall = ''
-    for appname in argocd-util argocd-server argocd-repo-server argocd-application-controller argocd-dex ; do
-      makeWrapper $out/bin/argocd $out/bin/$appname --set ARGOCD_BINARY_NAME $appname
-    done
     installShellCompletion --cmd argocd \
       --bash <($out/bin/argocd completion bash) \
       --zsh <($out/bin/argocd completion zsh)
diff --git a/nixpkgs/pkgs/applications/networking/cluster/cmctl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/cmctl/default.nix
index 64a8ebd4a99b..df34db0e1476 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/cmctl/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/cmctl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "cmctl";
-  version = "1.7.1";
+  version = "1.7.2";
 
   src = fetchFromGitHub {
     owner = "cert-manager";
     repo = "cert-manager";
     rev = "v${version}";
-    sha256 = "sha256-RO7YcGEfAQ9kTxfqgekYf6M5b6Fg64hCPLA/vt6IWp8=";
+    sha256 = "sha256-Hx6MG5GCZyOX0tfpg1bfUT0BOI3p7Mws1VCz2PuUuw8=";
   };
 
   vendorSha256 = "sha256-4zhdpedOmLl/i1G0QCto4ACxguWRZLzOm5HfMBMtvPY=";
diff --git a/nixpkgs/pkgs/applications/networking/cluster/driftctl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/driftctl/default.nix
index 4c22b9adca5f..28dd421c72c5 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/driftctl/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/driftctl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "driftctl";
-  version = "0.23.0";
+  version = "0.25.0";
 
   src = fetchFromGitHub {
     owner = "snyk";
     repo = "driftctl";
     rev = "v${version}";
-    sha256 = "sha256-TUwTvCsWB+n+shVU1hTzLYROG9Wp4ySzJwAnappK7TY=";
+    sha256 = "sha256-opR1NkMGptZilSPVZ7yNjYBBjnOXxrqAFCYzQ1tNS78=";
   };
 
   vendorSha256 = "sha256-I0OCRhUvuaF4k5qqPaV6R24mrd9AG5GgQCCF6yodK0E=";
diff --git a/nixpkgs/pkgs/applications/networking/cluster/flink/default.nix b/nixpkgs/pkgs/applications/networking/cluster/flink/default.nix
index 36940d7441dc..b5250a3bd7fa 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/flink/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/flink/default.nix
@@ -34,6 +34,5 @@ stdenv.mkDerivation rec {
     license = licenses.asl20;
     platforms = platforms.all;
     maintainers = with maintainers; [ mbode ];
-    repositories.git = "git://git.apache.org/flink.git";
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix b/nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix
index a583bf308954..1547a63383a2 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/fluxcd/default.nix
@@ -1,9 +1,9 @@
 { lib, buildGoModule, fetchFromGitHub, fetchzip, installShellFiles }:
 
 let
-  version = "0.27.3";
-  sha256 = "08ax1033456hfm5qz0r671xm5ig0047nqp7xffyn9za498bm4i5q";
-  manifestsSha256 = "165kspq10nvlihcb1460qmbw5r1mlzs5gliw01qa4mymvzmlggk7";
+  version = "0.28.3";
+  sha256 = "1agzj8fgv6jp1i15asjvhnsxw4fj7i6g00ajjl4ihd9p166r83qy";
+  manifestsSha256 = "036d1y5dkb9mir9iy76zwdydlqxpbhz7j25fy1faznmicm2qxiqi";
 
   manifests = fetchzip {
     url =
@@ -23,7 +23,7 @@ in buildGoModule rec {
     inherit sha256;
   };
 
-  vendorSha256 = "sha256-ENSfec7iSKOkILgVCVnORpAia4D+vBjQAUXDA7EIvVQ=";
+  vendorSha256 = "sha256-8TIeVcPW55vJn49y2xLfOOrefmqNAhDMmTWS/c8HuA8=";
 
   postUnpack = ''
     cp -r ${manifests} source/cmd/flux/manifests
diff --git a/nixpkgs/pkgs/applications/networking/cluster/fn-cli/default.nix b/nixpkgs/pkgs/applications/networking/cluster/fn-cli/default.nix
index df44c25cdc51..22e596dabf26 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/fn-cli/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/fn-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "fn";
-  version = "0.6.15";
+  version = "0.6.17";
 
   src = fetchFromGitHub {
     owner = "fnproject";
     repo = "cli";
     rev = version;
-    sha256 = "sha256-Gf4YxxyNALicb9GPpOW+Kzb2xrwcAU1XYOzXochH0LI=";
+    sha256 = "sha256-u/YISLlZFYlAUejSlaH7POA2WwKURPN8phFU86/caXU=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/applications/networking/cluster/hadoop/default.nix b/nixpkgs/pkgs/applications/networking/cluster/hadoop/default.nix
index 6a48cc8ada89..adb46540cba7 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/hadoop/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/hadoop/default.nix
@@ -15,6 +15,8 @@
 , zlib
 , zstd
 , openssl
+, glibc
+, nixosTests
 }:
 
 with lib;
@@ -22,7 +24,7 @@ with lib;
 assert elem stdenv.system [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin" ];
 
 let
-  common = { pname, version, untarDir ? "${pname}-${version}", sha256, jdk, openssl ? null, nativeLibs ? [ ], libPatches ? "" }:
+  common = { pname, version, untarDir ? "${pname}-${version}", sha256, jdk, openssl ? null, nativeLibs ? [ ], libPatches ? "", tests }:
     stdenv.mkDerivation rec {
       inherit pname version jdk libPatches untarDir openssl;
       src = fetchurl {
@@ -38,7 +40,10 @@ let
       installPhase = ''
         mkdir -p $out/{lib/${untarDir}/conf,bin,lib}
         mv * $out/lib/${untarDir}
-
+      '' + optionalString stdenv.isLinux ''
+        # All versions need container-executor, but some versions can't use autoPatchelf because of broken SSL versions
+        patchelf --set-interpreter ${glibc.out}/lib64/ld-linux-x86-64.so.2 $out/lib/${untarDir}/bin/container-executor
+      '' + ''
         for n in $(find $out/lib/${untarDir}/bin -type f ! -name "*.*"); do
           makeWrapper "$n" "$out/bin/$(basename $n)"\
             --set-default JAVA_HOME ${jdk.home}\
@@ -49,6 +54,8 @@ let
         done
       '' + libPatches;
 
+      passthru = { inherit tests; };
+
       meta = {
         homepage = "https://hadoop.apache.org/";
         description = "Framework for distributed processing of large data sets across clusters of computers";
@@ -73,30 +80,34 @@ in
 {
   # Different version of hadoop support different java runtime versions
   # https://cwiki.apache.org/confluence/display/HADOOP/Hadoop+Java+Versions
-  hadoop_3_3 =
-    common
-      (rec {
-        pname = "hadoop";
-        version = "3.3.1";
-        untarDir = "${pname}-${version}";
-        sha256 = rec {
-          x86_64-linux = "1b3v16ihysqaxw8za1r5jlnphy8dwhivdx2d0z64309w57ihlxxd";
-          x86_64-darwin = x86_64-linux;
-          aarch64-linux = "00ln18vpi07jq2slk3kplyhcj8ad41n0yl880q5cihilk7daclxz";
-          aarch64-darwin = aarch64-linux;
-        };
-
-        inherit openssl;
-        nativeLibs = [ stdenv.cc.cc.lib protobuf3_7 zlib snappy ];
-        libPatches = ''
-          ln -s ${getLib cyrus_sasl}/lib/libsasl2.so $out/lib/${untarDir}/lib/native/libsasl2.so.2
-          ln -s ${getLib openssl}/lib/libcrypto.so $out/lib/${untarDir}/lib/native/
-          ln -s ${getLib zlib}/lib/libz.so.1 $out/lib/${untarDir}/lib/native/
-          ln -s ${getLib zstd}/lib/libzstd.so.1 $out/lib/${untarDir}/lib/native/
-          ln -s ${getLib bzip2}/lib/libbz2.so.1 $out/lib/${untarDir}/lib/native/
-        '' + optionalString stdenv.isLinux "patchelf --add-rpath ${jdk.home}/lib/server $out/lib/${untarDir}/lib/native/libnativetask.so.1.0.0";
-        jdk = jdk11_headless;
-      });
+  hadoop_3_3 = common rec {
+    pname = "hadoop";
+    version = "3.3.1";
+    untarDir = "${pname}-${version}";
+    sha256 = rec {
+      x86_64-linux = "1b3v16ihysqaxw8za1r5jlnphy8dwhivdx2d0z64309w57ihlxxd";
+      x86_64-darwin = x86_64-linux;
+      aarch64-linux = "00ln18vpi07jq2slk3kplyhcj8ad41n0yl880q5cihilk7daclxz";
+      aarch64-darwin = aarch64-linux;
+    };
+    jdk = jdk11_headless;
+    inherit openssl;
+    # TODO: Package and add Intel Storage Acceleration Library
+    nativeLibs = [ stdenv.cc.cc.lib protobuf3_7 zlib snappy ];
+    libPatches = ''
+      ln -s ${getLib cyrus_sasl}/lib/libsasl2.so $out/lib/${untarDir}/lib/native/libsasl2.so.2
+      ln -s ${getLib openssl}/lib/libcrypto.so $out/lib/${untarDir}/lib/native/
+      ln -s ${getLib zlib}/lib/libz.so.1 $out/lib/${untarDir}/lib/native/
+      ln -s ${getLib zstd}/lib/libzstd.so.1 $out/lib/${untarDir}/lib/native/
+      ln -s ${getLib bzip2}/lib/libbz2.so.1 $out/lib/${untarDir}/lib/native/
+    '' + optionalString stdenv.isLinux ''
+      # libjvm.so for Java >=11
+      patchelf --add-rpath ${jdk.home}/lib/server $out/lib/${untarDir}/lib/native/libnativetask.so.1.0.0
+      # Java 8 has libjvm.so at a different path
+      patchelf --add-rpath ${jdk.home}/jre/lib/amd64/server $out/lib/${untarDir}/lib/native/libnativetask.so.1.0.0
+    '';
+    tests = nixosTests.hadoop;
+  };
   hadoop_3_2 = common rec {
     pname = "hadoop";
     version = "3.2.2";
@@ -104,11 +115,13 @@ in
     jdk = jdk8_headless;
     # not using native libs because of broken openssl_1_0_2 dependency
     # can be manually overriden
+    tests = nixosTests.hadoop_3_2;
   };
   hadoop2 = common rec {
     pname = "hadoop";
     version = "2.10.1";
     sha256.x86_64-linux = "1w31x4bk9f2swnx8qxx0cgwfg8vbpm6cy5lvfnbbpl3rsjhmyg97";
     jdk = jdk8_headless;
+    tests = nixosTests.hadoop2;
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/cluster/helm/chart-testing/default.nix b/nixpkgs/pkgs/applications/networking/cluster/helm/chart-testing/default.nix
index 2f6dcbe01446..127ee9c6895a 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/helm/chart-testing/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/helm/chart-testing/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "chart-testing";
-  version = "3.5.0";
+  version = "3.5.1";
 
   src = fetchFromGitHub {
     owner = "helm";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-lXi778MTeVUBtepGjIkKAX1kDEaaVzQI1gTKfcpANC0=";
+    sha256 = "sha256-LNCzz5me60R/moFfdJhGMgUToFxADiPL02G4QCv0DLg=";
   };
 
-  vendorSha256 = "sha256-pNevyTibnhUK8LSM1lVnmumFazXK86q4AZ2WKFt5jok=";
+  vendorSha256 = "sha256-38ufXHzGlZgEh6swD/GhWbIYdY5uYznKCQ9OaoyOEiY=";
 
   postPatch = ''
     substituteInPlace pkg/config/config.go \
diff --git a/nixpkgs/pkgs/applications/networking/cluster/helmfile/default.nix b/nixpkgs/pkgs/applications/networking/cluster/helmfile/default.nix
index 1fde5343d29d..b4c4fde53ed5 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/helmfile/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/helmfile/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "helmfile";
-  version = "0.143.0";
+  version = "0.143.3";
 
   src = fetchFromGitHub {
     owner = "roboll";
     repo = "helmfile";
     rev = "v${version}";
-    sha256 = "sha256-3Kuj3umyD7fooa4alNJAm7Adu+7EQvoB7Gt/LRjgW94=";
+    sha256 = "sha256-A0xpXsMWUaJYTzo9O4KkdyjonSGZ+FylTK140pqnJX8=";
   };
 
-  vendorSha256 = "sha256-/MbKYPcZ7cOPQKT+nYQaaCiahKLcesrSVKNo8hKFlf0=";
+  vendorSha256 = "sha256-qolmWat7An4HFm4O5vSCYZe+w79nsRIrnBLJacUCeA4=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix
index db9028d0af24..da633af2b8f7 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/istioctl/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "istioctl";
-  version = "1.13.1";
+  version = "1.13.2";
 
   src = fetchFromGitHub {
     owner = "istio";
     repo = "istio";
     rev = version;
-    sha256 = "sha256-lFuDFuzart7uvs6NGNvNYh7JRF5ROx0V8uYoThF2mIU=";
+    sha256 = "sha256-7YtszdwauTz9LfZ77d13fDU6vQm5hiJrIOiqpqIginQ=";
   };
-  vendorSha256 = "sha256-cVbQUWgreVy5m6OdS+Ik/xvUuedlI75gM9zq4qto+gY=";
+  vendorSha256 = "sha256-AOcWkcw+2DcgBxvxRO/sdb339a7hmI7Oy5I4kW4oE+k=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix b/nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix
index a844f2216754..48236cdc25e2 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/k9s/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ stdenv, lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "k9s";
@@ -21,7 +21,8 @@ buildGoModule rec {
 
   preCheck = "export HOME=$(mktemp -d)";
 
-  doCheck = true;
+  # TODO investigate why some config tests are failing
+  doCheck = !(stdenv.isDarwin && stdenv.isAarch64);
 
   meta = with lib; {
     description = "Kubernetes CLI To Manage Your Clusters In Style";
diff --git a/nixpkgs/pkgs/applications/networking/cluster/kn/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kn/default.nix
index d5faebdab3cc..93ccd873f777 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/kn/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/kn/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "kn";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "knative";
     repo = "client";
     rev = "knative-v${version}";
-    sha256 = "sha256-PxiYxDHcA95MinNpEcXul2cYrV/VB6gThhYCZANqAGY=";
+    sha256 = "sha256-xpSnirdEZ/Cua/wicu62HzeDm0E8Xo/Jt2eMfUS7mDo=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/applications/networking/cluster/kontemplate/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kontemplate/default.nix
index 87ae71f6a48d..10c161f45d05 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/kontemplate/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/kontemplate/default.nix
@@ -20,7 +20,6 @@ buildGoPackage rec {
     license          = licenses.gpl3;
     maintainers      = with maintainers; [ mbode tazjin ];
     platforms        = platforms.unix;
-    repositories.git = "git://github.com/tazjin/kontemplate.git";
 
     longDescription = ''
       Kontemplate is a simple CLI tool that can take sets of
diff --git a/nixpkgs/pkgs/applications/networking/cluster/kops/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kops/default.nix
index d4a02b6ab9e5..da8e14d1f307 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/kops/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/kops/default.nix
@@ -43,7 +43,7 @@ let
           homepage = "https://github.com/kubernetes/kops";
           changelog = "https://github.com/kubernetes/kops/tree/master/docs/releases";
           license = licenses.asl20;
-          maintainers = with maintainers; [ offline zimbatm diegolelis ];
+          maintainers = with maintainers; [ offline zimbatm diegolelis yurrriq ];
           platforms = platforms.unix;
         };
       } // attrs';
@@ -52,12 +52,6 @@ rec {
 
   mkKops = generic;
 
-  kops_1_20 = mkKops rec {
-    version = "1.20.3";
-    sha256 = "sha256-Yrh0wFz7MQgTDwENqQouYh3pr1gOq64Rqft5yxIiCAo=";
-    rev = "v${version}";
-  };
-
   kops_1_21 = mkKops rec {
     version = "1.21.4";
     sha256 = "sha256-f2xOVa3N/GH5IoI6H/QwDdKTeQoF/kEHX6lNytCZ9cs=";
@@ -69,4 +63,10 @@ rec {
     sha256 = "sha256-osU7yI77ZALGrAGuP8qAgv+ogDRn+BSVmcjPbi/WEKE=";
     rev = "v${version}";
   };
+
+  kops_1_23 = mkKops rec {
+    version = "1.23.0";
+    sha256 = "sha256-tiVNUaW0an6C8M9bxEX5pvB/W5IjZ/S24RdPikzm3bc=";
+    rev = "v${version}";
+  };
 }
diff --git a/nixpkgs/pkgs/applications/networking/cluster/krelay/default.nix b/nixpkgs/pkgs/applications/networking/cluster/krelay/default.nix
new file mode 100644
index 000000000000..f0a9912ab914
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/cluster/krelay/default.nix
@@ -0,0 +1,31 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "krelay";
+  version = "0.0.2";
+
+  src = fetchFromGitHub {
+    owner = "knight42";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-7P+pGiML/1aZEpYAWtAPEhrBAo8e8ATcemrH8tD73w8=";
+  };
+
+  vendorSha256 = "sha256-PrL3GYP5K6ZaSAShwuDQA7WfOVJeQraxZ8jrtnajR9g=";
+
+  subPackages = [ "cmd/client" ];
+
+  ldflags = [ "-s" "-w" "-X github.com/knight42/krelay/pkg/constants.ClientVersion=${version}" ];
+
+  postInstall = ''
+    mv $out/bin/client $out/bin/kubectl-relay
+  '';
+
+  meta = with lib; {
+    description = "A better alternative to `kubectl port-forward` that can forward TCP or UDP traffic to IP/Host which is accessible inside the cluster.";
+    homepage = "https://github.com/knight42/krelay";
+    changelog = "https://github.com/knight42/krelay/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ivankovnatsky ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/cluster/kube-capacity/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kube-capacity/default.nix
index 0a2386d37cee..c7d14748e80f 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/kube-capacity/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/kube-capacity/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kube-capacity";
-  version = "0.7.0";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "robscott";
     repo = pname;
-    sha256 = "sha256-jop1dn+D0A6BkR1UCMrU9qcbZ1AHVth430cTd+kUYJw=";
+    sha256 = "sha256-+1qewL8N3WTS7GW6fpL2+RPbFQQ/3DDMgShtBi+lRtg=";
   };
 
-  vendorSha256 = "sha256-PkCUwe3S1bq37ME2WyTUnwEcbnFcNI0eaI9yW/HZ1uw=";
+  vendorSha256 = "sha256-sMobdarMMktf34LbQnyZ6sgbfiJhWxWSQR0F+4x5J58=";
 
   meta = with lib; {
     description =
diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubecolor/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubecolor/default.nix
index 8a3c2d12d1b9..a295a48a1920 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/kubecolor/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/kubecolor/default.nix
@@ -13,11 +13,13 @@ buildGoModule rec {
 
   vendorSha256 = "sha256-C1K7iEugA4HBLthcOI7EZ6H4YHW6el8X6FjVN1BeJR0=";
 
+  ldflags = [ "-s" "-w" "-X main.Version=${version}" ];
+
   meta = with lib; {
     description = "Colorizes kubectl output";
     homepage = "https://github.com/hidetatz/kubecolor";
     changelog = "https://github.com/hidetatz/kubecolor/releases/tag/v${version}";
     license = licenses.mit;
-    maintainers = [ maintainers.ivankovnatsky ];
+    maintainers = with maintainers; [ ivankovnatsky SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubent/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubent/default.nix
new file mode 100644
index 000000000000..79c0fdf2186a
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/cluster/kubent/default.nix
@@ -0,0 +1,29 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "kubent";
+  version = "0.5.1";
+
+  src = fetchFromGitHub {
+    owner = "doitintl";
+    repo = "kube-no-trouble";
+    rev = "${version}";
+    sha256 = "0pwb9g1hhfqn3rl87fg6sf07m7aviadljb05bbnd241hhlcyslv6";
+  };
+
+  vendorSha256 = "1z4cvk936l7011fbimsgpw89yqzyikw9jb4184l37mnj9hl5wpcp";
+
+  ldflags = [
+    "-w" "-s"
+    "-X main.version=v${version}"
+  ];
+
+  subPackages = [ "cmd/kubent" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/doitintl/kube-no-trouble";
+    description = "Easily check your cluster for use of deprecated APIs";
+    license = licenses.mit;
+    maintainers = with maintainers; [ peterromfeldhk ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix b/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix
index 8d11bc28017a..e4203f0028ad 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "kubernetes";
-  version = "1.23.4";
+  version = "1.23.5";
 
   src = fetchFromGitHub {
     owner = "kubernetes";
     repo = "kubernetes";
     rev = "v${version}";
-    sha256 = "sha256-srJHW/wvrFKKgxVwJB4h0FGeaT7iSJYOTtSeTkcR3FE=";
+    sha256 = "sha256-LhJ3gThcsWnawSOmHSzWOG8tfODIPo4dJTMeLKmvMdM=";
   };
 
   nativeBuildInputs = [ makeWrapper which go rsync installShellFiles ];
diff --git a/nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix b/nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix
index 48ac2dc983e5..936e76823489 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/nerdctl/default.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "nerdctl";
-  version = "0.17.1";
+  version = "0.18.0";
 
   src = fetchFromGitHub {
     owner = "containerd";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-fWev5KgJEuL2pDm17kxdqRKo7t3+dDt5UD5iTHneJSY=";
+    sha256 = "sha256-gkfy/tKzh6EO+nyjuiU3InSErKvGcJp/X7oqYk0Msr0=";
   };
 
-  vendorSha256 = "sha256-7L5xA/2uQnu10QGZn49K3oJf4HBEvt8q/sOR6BRXlo0=";
+  vendorSha256 = "sha256-hjhZYNpqt9yFNrDVpFlguESUAAqU+AhpUQTCvyMadPk=";
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
 
diff --git a/nixpkgs/pkgs/applications/networking/cluster/ocm/default.nix b/nixpkgs/pkgs/applications/networking/cluster/ocm/default.nix
new file mode 100644
index 000000000000..1bacd8510dc4
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/cluster/ocm/default.nix
@@ -0,0 +1,32 @@
+{ lib, buildGoModule, fetchFromGitHub, testVersion, ocm }:
+
+buildGoModule rec {
+  pname = "ocm";
+  version = "0.1.62";
+
+  src = fetchFromGitHub {
+    owner = "openshift-online";
+    repo = "ocm-cli";
+    rev = "v${version}";
+    sha256 = "0kv0zcx6wdlyid37ygzg05xyyk77ybd2qcdgbswjv6crcjh1xdrd";
+  };
+
+  vendorSha256 = "sha256-nXUrbF9mcHy8G7c+ktQixBmmf6x066gpuaZ0eUsJQwc=";
+
+  # Tests expect the binary to be located in the root directory.
+  preCheck = ''
+    ln -s $GOPATH/bin/ocm ocm
+  '';
+
+  passthru.tests.version = testVersion {
+    package = ocm;
+    command = "ocm version";
+  };
+
+  meta = with lib; {
+    description = "CLI for the Red Hat OpenShift Cluster Manager";
+    license = licenses.asl20;
+    homepage = "https://github.com/openshift-online/ocm-cli";
+    maintainers = with maintainers; [ stehessel ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/cluster/pluto/default.nix b/nixpkgs/pkgs/applications/networking/cluster/pluto/default.nix
new file mode 100644
index 000000000000..1fa4dc161952
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/cluster/pluto/default.nix
@@ -0,0 +1,27 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "pluto";
+  version = "5.6.0";
+
+  src = fetchFromGitHub {
+    owner = "FairwindsOps";
+    repo = "pluto";
+    rev = "v${version}";
+    sha256 = "0nr8h8vg8ifgibgw80rs4mk63bj3qhmd37lfjc89iyml4g6p9mwr";
+  };
+
+  vendorSha256 = "08x5mzypg66s54apkd7hhj6bi5pgbch9if2dbr58ksd3arkji2pv";
+
+  ldflags = [
+    "-w" "-s"
+    "-X main.version=v${version}"
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/FairwindsOps/pluto";
+    description = "Find deprecated Kubernetes apiVersions";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ peterromfeldhk ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/cluster/popeye/default.nix b/nixpkgs/pkgs/applications/networking/cluster/popeye/default.nix
index e70856ef9d90..25fa2c4adc55 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/popeye/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/popeye/default.nix
@@ -32,6 +32,5 @@ buildGoModule rec {
     changelog = "https://github.com/derailed/popeye/releases/tag/v${version}";
     license = licenses.asl20;
     maintainers = [ maintainers.bryanasdev000 ];
-    platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/cluster/qbec/default.nix b/nixpkgs/pkgs/applications/networking/cluster/qbec/default.nix
index 3d34a65e2926..8dcb08247e35 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/qbec/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/qbec/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "qbec";
-  version = "0.15.1";
+  version = "0.15.2";
 
   src = fetchFromGitHub {
     owner = "splunk";
     repo = "qbec";
     rev = "v${version}";
-    sha256 = "sha256-cXU+LnOCsGg+iwH5c7cKVi2Htw45AGxyjJFKXKbTkUo=";
+    sha256 = "sha256-js/UjnNYRW7s3b4TeprhmBe4cDLDYDrMeLtpASI9aN4=";
   };
 
-  vendorSha256 = "sha256-CiVAzFN/ygIiyhZKYtJ197TZO3ppL/emWSj4hAlIanc=";
+  vendorSha256 = "sha256-oEbKk9cMbI0ZWXrfM8Y19OF/A75mwHl0C/PJx0oTOBo=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/applications/networking/cluster/rancher/default.nix b/nixpkgs/pkgs/applications/networking/cluster/rancher/default.nix
index 7c219725d7c9..3ee09b14ce96 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/rancher/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/rancher/default.nix
@@ -1,14 +1,14 @@
 { lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
-  pname = "rancher-cli";
-  version = "2.6.0";
+  pname = "rancher";
+  version = "2.6.4";
 
   src = fetchFromGitHub {
     owner  = "rancher";
     repo   = "cli";
     rev    = "v${version}";
-    sha256 = "sha256-RfhcTo10nkHmKGwmS8WdjBioZhDIGSQ9vPPOv3Wg0Y4=";
+    sha256 = "sha256-5ceyScsCidJpHGfwhsq7/hDd3CClx29cD5Cdc1PSxTU=";
   };
 
   ldflags = [
@@ -25,8 +25,6 @@ buildGoModule rec {
     mv $out/bin/cli $out/bin/rancher
   '';
 
-  doCheck = true;
-
   doInstallCheck = true;
   installCheckPhase = ''
     $out/bin/rancher | grep ${version} > /dev/null
diff --git a/nixpkgs/pkgs/applications/networking/cluster/sonobuoy/default.nix b/nixpkgs/pkgs/applications/networking/cluster/sonobuoy/default.nix
index cb0e9adaf262..f08f403de282 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/sonobuoy/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/sonobuoy/default.nix
@@ -1,11 +1,11 @@
 { lib, buildGoModule, fetchFromGitHub }:
 
 # SHA of ${version} for the tool's help output. Unfortunately this is needed in build flags.
-let rev = "6cf7519717a14c9a3e495fcd4588fa4eb16d2be2";
+let rev = "1005bee8fff1b8daa30ddbcca717d03384630a71";
 in
 buildGoModule rec {
   pname = "sonobuoy";
-  version = "0.56.2"; # Do not forget to update `rev` above
+  version = "0.56.3"; # Do not forget to update `rev` above
 
   ldflags =
     let t = "github.com/vmware-tanzu/sonobuoy";
@@ -20,7 +20,7 @@ buildGoModule rec {
     owner = "vmware-tanzu";
     repo = "sonobuoy";
     rev = "v${version}";
-    sha256 = "sha256-KYpBubNHAstKUtf9Ys4VCWyZ+y4HjzVMs9EtWzVFviQ=";
+    sha256 = "sha256-7yN3/bGjcntzMQRbB//fmqvD7me/xKLytfF+mQ1fcfc=";
   };
 
   vendorSha256 = "sha256-qKXm39CwrTcXENIMh2BBS3MUlhJvmTTA3UzZNpF0PCc=";
diff --git a/nixpkgs/pkgs/applications/networking/cluster/spark/default.nix b/nixpkgs/pkgs/applications/networking/cluster/spark/default.nix
index 7876eb1c7523..69cdcc8d1316 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/spark/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/spark/default.nix
@@ -1,13 +1,26 @@
-{ lib, stdenv, fetchzip, makeWrapper, jdk8, python3Packages, extraPythonPackages ? [], coreutils, hadoop
-, RSupport? true, R
+{ lib
+, stdenv
+, fetchzip
+, makeWrapper
+, jdk8
+, python3Packages
+, extraPythonPackages ? [ ]
+, coreutils
+, hadoop
+, RSupport ? true
+, R
 }:
 
 with lib;
 
 let
-  spark = { pname, version, src }:
+  spark = { pname, version, sha256 }:
     stdenv.mkDerivation rec {
-      inherit pname version src;
+      inherit pname version;
+      src = fetchzip {
+        url = "mirror://apache/spark/${pname}-${version}/${pname}-${version}-bin-without-hadoop.tgz";
+        sha256 = sha256;
+      };
       nativeBuildInputs = [ makeWrapper ];
       buildInputs = [ jdk8 python3Packages.python ]
         ++ extraPythonPackages
@@ -45,31 +58,28 @@ let
       '';
 
       meta = {
-        description      = "Apache Spark is a fast and general engine for large-scale data processing";
-        homepage         = "https://spark.apache.org/";
-        license          = lib.licenses.asl20;
-        platforms        = lib.platforms.all;
-        maintainers      = with maintainers; [ thoughtpolice offline kamilchm illustris ];
-        repositories.git = "git://git.apache.org/spark.git";
+        description = "Apache Spark is a fast and general engine for large-scale data processing";
+        homepage = "https://spark.apache.org/";
+        license = lib.licenses.asl20;
+        platforms = lib.platforms.all;
+        maintainers = with maintainers; [ thoughtpolice offline kamilchm illustris ];
       };
     };
-in {
-  spark3 = spark rec {
+in
+{
+  spark_3_2 = spark rec {
+    pname = "spark";
+    version = "3.2.1";
+    sha256 = "0kxdqczwmj6pray0h8h1qhygni9m82jzznw5fbv9hrxrkq1v182d";
+  };
+  spark_3_1 = spark rec {
     pname = "spark";
     version = "3.1.2";
-
-    src = fetchzip {
-      url    = "mirror://apache/spark/${pname}-${version}/${pname}-${version}-bin-without-hadoop.tgz";
-      sha256 = "1bgh2y6jm7wqy6yc40rx68xkki31i3jiri2yixb1bm0i9pvsj9yf";
-    };
+    sha256 = "1bgh2y6jm7wqy6yc40rx68xkki31i3jiri2yixb1bm0i9pvsj9yf";
   };
-  spark2 = spark rec {
+  spark_2_4 = spark rec {
     pname = "spark";
     version = "2.4.8";
-
-    src = fetchzip {
-      url    = "mirror://apache/spark/${pname}-${version}/${pname}-${version}-bin-without-hadoop.tgz";
-      sha256 = "1mkyq0gz9fiav25vr0dba5ivp0wh0mh7kswwnx8pvsmb6wbwyfxv";
-    };
+    sha256 = "1mkyq0gz9fiav25vr0dba5ivp0wh0mh7kswwnx8pvsmb6wbwyfxv";
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix b/nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
index 65a371687836..bdd538ef804d 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "tektoncd-cli";
-  version = "0.23.0";
+  version = "0.23.1";
 
   src = fetchFromGitHub {
     owner = "tektoncd";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-rzKEjLjX2bPqgNGJYdyTuu15+9bq9WnsrJtsBzL/oOo=";
+    sha256 = "sha256-fOq67Cxtb2A9Obh2o5/aFy5bYBnyFKYQDPcpxOXMy1s=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json
index 8ff0628a6615..56743624efaa 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json
+++ b/nixpkgs/pkgs/applications/networking/cluster/terraform-providers/providers.json
@@ -3,10 +3,10 @@
     "owner": "CiscoDevNet",
     "provider-source-address": "registry.terraform.io/CiscoDevNet/aci",
     "repo": "terraform-provider-aci",
-    "rev": "v2.0.1",
-    "sha256": "165k2sf4hq84zidlh0y5jmzwnid5gz7slhnb9rgp2771pzqm0gki",
+    "rev": "v2.1.0",
+    "sha256": "sha256-7fOvTEinJUpSaCnlP+191VTSEpE4z11+HUcH2iTFj60=",
     "vendorSha256": null,
-    "version": "2.0.1"
+    "version": "2.1.0"
   },
   "acme": {
     "owner": "vancluever",
@@ -40,10 +40,10 @@
     "owner": "aliyun",
     "provider-source-address": "registry.terraform.io/aliyun/alicloud",
     "repo": "terraform-provider-alicloud",
-    "rev": "v1.160.0",
-    "sha256": "sha256-ijSOvBS8bcFKX0qa2Cl/xqDdwduamVdCWzgTCWao1Sg=",
-    "vendorSha256": "sha256-oKaghX3u8H9vDFvmo+jelTIbvuHnAt27Z9N0oEWxcxc=",
-    "version": "1.160.0"
+    "rev": "v1.162.0",
+    "sha256": "sha256-xqZv15Tst+7o9HhNu6/bW+a4z7FTkra+MfS8jKrfeNs=",
+    "vendorSha256": "sha256-RbOf/S0rkbhW0s+/YOqu+BQuE0V4aS2x36Xf+hgBkqY=",
+    "version": "1.162.0"
   },
   "ansible": {
     "owner": "nbering",
@@ -94,10 +94,10 @@
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/aws",
     "repo": "terraform-provider-aws",
-    "rev": "v4.5.0",
-    "sha256": "sha256-L1LRuinU3YrqywRGpmUqGQgjZ1JuYhECjCN6ysYPzco=",
-    "vendorSha256": "sha256-3akEup/M7Zc5MPf2XA+324PxQiHegIwzR05JNSjYanw=",
-    "version": "4.5.0"
+    "rev": "v4.8.0",
+    "sha256": "sha256-Ere41qols4lNnoAIZGWQmituukLnPNbv5d8C/e3rQgI=",
+    "vendorSha256": "sha256-ZXH9YlSii2z1s6Y/TfZVBje0/xQ2DXw3ZpgcBPeQZ2I=",
+    "version": "4.8.0"
   },
   "azuread": {
     "owner": "hashicorp",
@@ -112,10 +112,10 @@
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/azurerm",
     "repo": "terraform-provider-azurerm",
-    "rev": "v2.99.0",
-    "sha256": "sha256-HXLr22UVciRvW1iaa46sy37ivG41hKqhrQtCXpnl8ss=",
+    "rev": "v3.0.2",
+    "sha256": "sha256-T24bfys9OxBnGN4YtJEsJmSUK26a5hMnbgZUANcpg3k=",
     "vendorSha256": null,
-    "version": "2.99.0"
+    "version": "3.0.2"
   },
   "azurestack": {
     "owner": "hashicorp",
@@ -148,10 +148,10 @@
     "owner": "DrFaust92",
     "provider-source-address": "registry.terraform.io/DrFaust92/bitbucket",
     "repo": "terraform-provider-bitbucket",
-    "rev": "v2.8.0",
-    "sha256": "sha256-W+mAud3DpBViLeFwXLWIwZ1+TOco8FWZnVrIbHUwgIU=",
-    "vendorSha256": "sha256-hSMVLDZXC9QMpcgREjEUjhxArtotrIrIyfdNIZw8uM4=",
-    "version": "2.8.0"
+    "rev": "v2.13.1",
+    "sha256": "sha256-P/6scAuRMRrACHmEdWjn+W37ptVmVgtj+iTXQDrG+WM=",
+    "vendorSha256": "sha256-o1CZ4VuGCPALqSIz8KSm1zCwd3r9bR13CRvP7XpVBAM=",
+    "version": "2.13.1"
   },
   "brightbox": {
     "owner": "brightbox",
@@ -194,19 +194,19 @@
     "owner": "cloudflare",
     "provider-source-address": "registry.terraform.io/cloudflare/cloudflare",
     "repo": "terraform-provider-cloudflare",
-    "rev": "v3.10.1",
-    "sha256": "sha256-2Ulavo82Y8dEOXtgpbgCwuCTOhAEoOFbgL4bK5HXQlY=",
-    "vendorSha256": "sha256-CgK1/Ddau3glxmzb7Y6o1RZbMV8dwA84F6n2OzuyZrU=",
-    "version": "3.10.1"
+    "rev": "v3.11.0",
+    "sha256": "sha256-z7IjLXO/AHWENKYaCospJDcOwOubNcRHKDQzmRkhimw=",
+    "vendorSha256": "sha256-Lx/faIdx4k399sm9p8BVqpiKZtNjZoThBhWWWgEuPyg=",
+    "version": "3.11.0"
   },
   "cloudfoundry": {
     "owner": "cloudfoundry-community",
     "provider-source-address": "registry.terraform.io/cloudfoundry-community/cloudfoundry",
     "repo": "terraform-provider-cloudfoundry",
-    "rev": "v0.15.0",
-    "sha256": "0kg9aivxlbkqgrwv0j02hfsaky5q4f0bmqihn589dsdk7jds66i7",
-    "vendorSha256": "19h526ag7p2jkdp0610slbpsz8q3njvj9d4xmsfdsv3r8pz7xzls",
-    "version": "0.15.0"
+    "rev": "v0.15.2",
+    "sha256": "sha256-I4E+UyiaxEa/UK699xys75IMhNccnBcJ8tgJ3XH0NPg=",
+    "vendorSha256": "sha256-mxsGmI26ZQlj0eagqScF6IeZFX0T6iLqqpgc0ZLpU1E=",
+    "version": "0.15.2"
   },
   "cloudinit": {
     "owner": "hashicorp",
@@ -230,19 +230,19 @@
     "owner": "Constellix",
     "provider-source-address": "registry.terraform.io/Constellix/constellix",
     "repo": "terraform-provider-constellix",
-    "rev": "v0.4.1",
-    "sha256": "15myw5ff22wi4cykwc2plghmfwl6d6m9pfskjqiwq8hffv35h50v",
+    "rev": "v0.4.2",
+    "sha256": "sha256-XnLTh/AP0OcFD5U2I1LSNpQ3s1OObueURDnioAtIQlU=",
     "vendorSha256": null,
-    "version": "0.4.1"
+    "version": "0.4.2"
   },
   "consul": {
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/consul",
     "repo": "terraform-provider-consul",
-    "rev": "v2.14.0",
-    "sha256": "19kmjjg4f74askwwwslbh5wvi5ndcr4wzm0374qr8gc57qiwxkpy",
+    "rev": "v2.15.0",
+    "sha256": "sha256-6NQL1ZlHZsxfoRV0zMOXApuCR+nj8CPWjpxj7BAJivY=",
     "vendorSha256": null,
-    "version": "2.14.0"
+    "version": "2.15.0"
   },
   "ct": {
     "owner": "poseidon",
@@ -293,10 +293,10 @@
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/dns",
     "repo": "terraform-provider-dns",
-    "rev": "v3.2.1",
-    "sha256": "1zynfwm7hl7pnldjr2nxj0a06j209r62g8zpkasj6zdjscy62rc8",
-    "vendorSha256": "0hpf48z7i5h1hh52wpyc48axpvfx9h3209iw36v8c764xzf87w0g",
-    "version": "3.2.1"
+    "rev": "v3.2.3",
+    "sha256": "sha256-aH9sDqlXSq2dJi0kzGreJZ5V8A0WU0UqTpxWPKn23rM=",
+    "vendorSha256": "sha256-AefmrO8Zb7ICH+qGxYW9ele6kNtrAusOf+KE/iZxKLY=",
+    "version": "3.2.3"
   },
   "dnsimple": {
     "owner": "dnsimple",
@@ -338,19 +338,19 @@
     "owner": "exoscale",
     "provider-source-address": "registry.terraform.io/exoscale/exoscale",
     "repo": "terraform-provider-exoscale",
-    "rev": "v0.33.0",
-    "sha256": "sha256-mih0Bo6fcNgpyeCQ+GWSPyTrPlGzmBXkEO43TOVWMds=",
+    "rev": "v0.33.1",
+    "sha256": "sha256-HlhJe8jyvtACOF0msFMSrt9l//Ik03poSvhP+JccRyQ=",
     "vendorSha256": null,
-    "version": "0.33.0"
+    "version": "0.33.1"
   },
   "external": {
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/external",
     "repo": "terraform-provider-external",
-    "rev": "v2.2.0",
-    "sha256": "0s7zxz9dni1p93di1ddx595d0mmizq7zrvkbbx1m4c5f208m262x",
-    "vendorSha256": "1f5gh110rylb1cw4dlwdzsj8sb0myj7xcj7ix966l5qa9x05p9pn",
-    "version": "2.2.0"
+    "rev": "v2.2.2",
+    "sha256": "sha256-gImRxsDUgBHmw/5DeKcO9BzB906JB8dUcSGKQj+Vcy0=",
+    "vendorSha256": "sha256-1BUFg8epcEsCf6yyJr4E4CdX2o6/3R384opRTxwrsng=",
+    "version": "2.2.2"
   },
   "fastly": {
     "owner": "fastly",
@@ -392,10 +392,10 @@
     "owner": "integrations",
     "provider-source-address": "registry.terraform.io/integrations/github",
     "repo": "terraform-provider-github",
-    "rev": "v4.21.0",
-    "sha256": "sha256-ayL22zlfZkGL/ycyQX384g7CjFHDgK8k010kg1fI4h4=",
+    "rev": "v4.23.0",
+    "sha256": "sha256-N7PFLh7qr8OPB92ePLS1B/KexipKV5LFRWvrxdS8cGk=",
     "vendorSha256": null,
-    "version": "4.21.0"
+    "version": "4.23.0"
   },
   "gitlab": {
     "owner": "gitlabhq",
@@ -411,20 +411,20 @@
     "provider-source-address": "registry.terraform.io/hashicorp/google",
     "proxyVendor": true,
     "repo": "terraform-provider-google",
-    "rev": "v4.13.0",
-    "sha256": "sha256-QSHlnvsWmkdUE7dd6HqzYtyYC+XDW69dIp/h7u1jD9g=",
-    "vendorSha256": "sha256-1tiFBc03RyIAtnu/NqhU3RowM8JhuLNS+blfyjXBcW0=",
-    "version": "4.13.0"
+    "rev": "v4.15.0",
+    "sha256": "sha256-BHtbBfCihy1zh/A9JB03CDh5KpzMWeR/mbuRErJkVUE=",
+    "vendorSha256": "sha256-7xTABs0O2eBBwjP1JNaFhsodl/ItPC+iv7NnwwlACvU=",
+    "version": "4.15.0"
   },
   "google-beta": {
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/google-beta",
     "proxyVendor": true,
     "repo": "terraform-provider-google-beta",
-    "rev": "v4.13.0",
-    "sha256": "sha256-jjYUijzUgIiSC9eL6rbgtuBSh6bbHLjeifN+GIndrVs=",
-    "vendorSha256": "sha256-1tiFBc03RyIAtnu/NqhU3RowM8JhuLNS+blfyjXBcW0=",
-    "version": "4.13.0"
+    "rev": "v4.15.0",
+    "sha256": "sha256-FTT6PS0OS4HPfkM2u4PZwOA/v5VzDwHLdO2s+qgRkW8=",
+    "vendorSha256": "sha256-7xTABs0O2eBBwjP1JNaFhsodl/ItPC+iv7NnwwlACvU=",
+    "version": "4.15.0"
   },
   "grafana": {
     "owner": "grafana",
@@ -511,10 +511,10 @@
     "owner": "IBM-Cloud",
     "provider-source-address": "registry.terraform.io/IBM-Cloud/ibm",
     "repo": "terraform-provider-ibm",
-    "rev": "v1.39.2",
-    "sha256": "sha256-9r0tt0N3m/IYq/9oepQ4DcB78ds8pb1up1TyjFYzX1U=",
-    "vendorSha256": "sha256-8qgm1zDdwKNE/bs1n5cpY/DUD3SKtFmnvEgwtKorASk=",
-    "version": "1.39.2"
+    "rev": "v1.40.0-beta0",
+    "sha256": "sha256-1C0JdzoHf/GKdlLyHA6GgJpb3lbYFXeMGeWYJ7RkyfU=",
+    "vendorSha256": "sha256-YgRgm5S7cXHO9yqUUuVVkFRQL+pf0RMPJI9oUaWob2I=",
+    "version": "1.40.0-beta0"
   },
   "icinga2": {
     "owner": "Icinga",
@@ -565,28 +565,28 @@
     "owner": "kingsoftcloud",
     "provider-source-address": "registry.terraform.io/kingsoftcloud/ksyun",
     "repo": "terraform-provider-ksyun",
-    "rev": "v1.3.42",
-    "sha256": "sha256-wj4o2XSz8ylZJdseIi/TadlhOwFWZ6nfDOUezbeGYw4=",
+    "rev": "v1.3.43",
+    "sha256": "sha256-HOZ1nhHLdiYy+WR2y4OsyRGReK+OJFTaWqYU0X4eEQ0=",
     "vendorSha256": "sha256-nbAEaRFtFtB4ftLgnCv3MmkjFFbcNkCuxZc+G8/ObPE=",
-    "version": "1.3.42"
+    "version": "1.3.43"
   },
   "kubectl": {
     "owner": "gavinbunney",
     "provider-source-address": "registry.terraform.io/gavinbunney/kubectl",
     "repo": "terraform-provider-kubectl",
-    "rev": "v1.13.1",
-    "sha256": "0jm6zri6j3wdgwg8wixfh6w8il3vnqmwlbpa6scbfa8zq71qi1a0",
-    "vendorSha256": "1ahxhb6ws1mq4x7nbww8di0b19z6669gn18scqipvxcvmsihfx4m",
-    "version": "1.13.1"
+    "rev": "v1.14.0",
+    "sha256": "sha256-UkUwWi7Z9cSMyZakD6JxMl+qdczAYfZQgwroCUjFIUM=",
+    "vendorSha256": "sha256-lXQHo66b9X0jZhoF+5Ix5qewQGyI82VPJ7gGzc2CHao=",
+    "version": "1.14.0"
   },
   "kubernetes": {
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/kubernetes",
     "repo": "terraform-provider-kubernetes",
-    "rev": "v2.8.0",
-    "sha256": "15mjx531jzrsfd4kxnklcr8q7gbq64z772y9m5lhq73anr9yqfa3",
+    "rev": "v2.9.0",
+    "sha256": "sha256-w16pm2+8M59grW5HUBBtkKaCnvf5p4GQMEHtQa4DLXs=",
     "vendorSha256": null,
-    "version": "2.8.0"
+    "version": "2.9.0"
   },
   "launchdarkly": {
     "owner": "launchdarkly",
@@ -610,19 +610,19 @@
     "owner": "linode",
     "provider-source-address": "registry.terraform.io/linode/linode",
     "repo": "terraform-provider-linode",
-    "rev": "v1.26.1",
-    "sha256": "sha256-bd0raIIh/VmTlSVYnNd98fpppRKnO46g8FI5OwZPjMg=",
-    "vendorSha256": "sha256-SCTWvTgJ0QYh2DEbTI9coa3Fp4fBHusytF+JFzAq2XA=",
-    "version": "1.26.1"
+    "rev": "v1.26.3",
+    "sha256": "sha256-BVPlzrsX04XCaypKhqM9uvDrevak+qXe+x4mSo2G3kY=",
+    "vendorSha256": "sha256-mp1w1JXqrpLl8+pFlrBx/P9ZnGKIu8O/FgR73ff/wpQ=",
+    "version": "1.26.3"
   },
   "linuxbox": {
     "owner": "numtide",
     "provider-source-address": "registry.terraform.io/numtide/linuxbox",
     "repo": "terraform-provider-linuxbox",
-    "rev": "v0.4.2",
-    "sha256": "1ghlp0nnc67m5rsx6aixqxjd5vhpbi88gcfyv3710dvqxchdgscy",
-    "vendorSha256": "01d556pfaa2ycww5kgd1f3shp2i2r48kgwnls39lhplp5qmnkz4g",
-    "version": "0.4.2"
+    "rev": "v0.4.3",
+    "sha256": "sha256-MzasMVtXO7ZeZ+qEx2Z+7881fOIA0SFzSvXVHeEROtg=",
+    "vendorSha256": "sha256-Jlg3a91pOhMC5SALzL9onajZUZ2H9mXfU5CKvotbCbw=",
+    "version": "0.4.3"
   },
   "local": {
     "owner": "hashicorp",
@@ -674,19 +674,19 @@
     "owner": "equinix",
     "provider-source-address": "registry.terraform.io/equinix/metal",
     "repo": "terraform-provider-metal",
-    "rev": "v3.3.0-alpha.1",
-    "sha256": "0lihzid312q8qh1bl9x1wqslshq7pb0q4m8dgbww1cszzg6xb5aq",
-    "vendorSha256": "0aniiiysh6iq20fcqvdgs6a4l3prbxzpqpp2ixpfaxhg4z5l8zrf",
-    "version": "3.3.0-alpha.1"
+    "rev": "v3.3.0-alpha.2",
+    "sha256": "sha256-RUD4BJy0/s23+OWlQfFEh59BEhhtobW7zDOOcosC0l4=",
+    "vendorSha256": "sha256-Ln9EyycPduVuj+JefH9f+Q5KlNGvbcwcEDgaqH2M0So=",
+    "version": "3.3.0-alpha.2"
   },
   "minio": {
     "owner": "aminueza",
     "provider-source-address": "registry.terraform.io/aminueza/minio",
     "repo": "terraform-provider-minio",
-    "rev": "v1.4.0",
-    "sha256": "0da7dhgs1c4r65fwwbkbz67lphrsl6ia5v8yx5viwfrsgdh0319z",
-    "vendorSha256": "1yshi8sz99ii9v77hlgkrcxrazjc8f6s79dszxdrnjwhahnz0hac",
-    "version": "1.4.0"
+    "rev": "v1.5.0",
+    "sha256": "sha256-wHxslrcjv0SuQhbEv95lkGba61HMimE1JLX4lWgSi3s=",
+    "vendorSha256": "sha256-j5DWJodrnGm9a3VsOjk0ZeVBh77C00SMMXrK7SNKKrY=",
+    "version": "1.5.0"
   },
   "mongodbatlas": {
     "owner": "mongodb",
@@ -701,10 +701,10 @@
     "owner": "NaverCloudPlatform",
     "provider-source-address": "registry.terraform.io/NaverCloudPlatform/ncloud",
     "repo": "terraform-provider-ncloud",
-    "rev": "v2.2.5",
-    "sha256": "0hspr6iv69izg1y8s1sj24kgy562jggn9nwqgprn4zca7vsrl29r",
-    "vendorSha256": "1hiz0pphl4jxfglxj28rm58ih7c5dabhd2gaig23hcqvczhf1wd2",
-    "version": "2.2.5"
+    "rev": "v2.2.6",
+    "sha256": "sha256-Sw3Z6hi+nm/e+lMQQkk8KIa2AK2+q+0gBUe091GnQq0=",
+    "vendorSha256": "sha256-ovHg4GcbMzjEi+qJBpdqhR0YUakZCdnpc10SCu8FP8I=",
+    "version": "2.2.6"
   },
   "netlify": {
     "owner": "AegirHealth",
@@ -719,10 +719,10 @@
     "owner": "newrelic",
     "provider-source-address": "registry.terraform.io/newrelic/newrelic",
     "repo": "terraform-provider-newrelic",
-    "rev": "v2.39.2",
-    "sha256": "sha256-NfszsBliZAjY52kPWB7yhOEYZB2V4yOp6IDffF7EG6k=",
-    "vendorSha256": "sha256-DD6zXX7anks5jRw9tn8lUvgJY4k81oGSQr0a/xofkGk=",
-    "version": "2.39.2"
+    "rev": "v2.41.2",
+    "sha256": "sha256-LCA1K4md1wRRkB7oerUn1MM0TRLcqQBoVpvoxCMGSs8=",
+    "vendorSha256": "sha256-G/GWIE+XeLiHW0xxyjbIpncAnpBmC/+iZnI8MFmi80k=",
+    "version": "2.41.2"
   },
   "nomad": {
     "owner": "hashicorp",
@@ -755,29 +755,29 @@
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/null",
     "repo": "terraform-provider-null",
-    "rev": "v3.1.0",
-    "sha256": "0s6j2py9bb3knrn0f8aga8ypkxj6v5ns08k7zgw26h3wwdxwyd12",
-    "vendorSha256": null,
-    "version": "3.1.0"
+    "rev": "v3.1.1",
+    "sha256": "sha256-OKnlIt+R16d5GOKqM7/+sApQoC1+nv9h5Ty32QIIMuQ=",
+    "vendorSha256": "sha256-MtVpbcN/GZRYabsli2mhUXyCuRLRR0NEvcX1iLM552c=",
+    "version": "3.1.1"
   },
   "nutanix": {
     "deleteVendor": true,
     "owner": "nutanix",
     "provider-source-address": "registry.terraform.io/nutanix/nutanix",
     "repo": "terraform-provider-nutanix",
-    "rev": "v1.3.0",
-    "sha256": "1q38f6a8d607sdhrr6xcqmdsvm625v7y36xma137bqv09g3xga0s",
-    "vendorSha256": "0qkd9pnidf4rhbk7p4jkpcdq36g8lp8pwpsf3hydy6xh072iy4id",
-    "version": "1.3.0"
+    "rev": "v1.4.1",
+    "sha256": "sha256-NUu5MB2Y7wWDgKXMfKKygNUmpvfkEVF2Z1lBMpktIdc=",
+    "vendorSha256": "sha256-LRIfxQGwG988HE5fftGl6JmBG7tTknvmgpm4Fu1NbWI=",
+    "version": "1.4.1"
   },
   "oci": {
     "owner": "oracle",
-    "provider-source-address": "registry.terraform.io/hashicorp/oci",
+    "provider-source-address": "registry.terraform.io/oracle/oci",
     "repo": "terraform-provider-oci",
-    "rev": "v4.67.0",
-    "sha256": "sha256-kgnyGLF6UbWRbrjXDkh7y11jx4JO3hFo7/qdJzwX0rU=",
+    "rev": "v4.69.0",
+    "sha256": "sha256-VwL+i4HtvAJi3R57cjUrg+7rx1LxEUAMwkorCvJ9DcU=",
     "vendorSha256": null,
-    "version": "4.67.0"
+    "version": "4.69.0"
   },
   "okta": {
     "owner": "okta",
@@ -811,10 +811,10 @@
     "owner": "OpenNebula",
     "provider-source-address": "registry.terraform.io/OpenNebula/opennebula",
     "repo": "terraform-provider-opennebula",
-    "rev": "v0.4.2",
-    "sha256": "sha256-h2trcyXJcdWQyonjdDLkJkcawE4AoFYnzLZtKPotMY0=",
+    "rev": "v0.4.3",
+    "sha256": "sha256-mnRRMubaz5hin4kG5NK+GMtTPcsIJu6GS8PKDitNszg=",
     "vendorSha256": "sha256-JTQJH0f8m6yBL8+jk6q02WPuvyre3mHql9Zy9OJW32M=",
-    "version": "0.4.2"
+    "version": "0.4.3"
   },
   "openstack": {
     "owner": "terraform-provider-openstack",
@@ -829,10 +829,10 @@
     "owner": "opentelekomcloud",
     "provider-source-address": "registry.terraform.io/opentelekomcloud/opentelekomcloud",
     "repo": "terraform-provider-opentelekomcloud",
-    "rev": "v1.27.7",
-    "sha256": "sha256-8y++zfxRam4sZvGWajyGiPv/5G8K7D4+ReNU7DBlqe8=",
-    "vendorSha256": "sha256-OqN+QGclKYo4jjQi0HJ/80zVTPkcOQyl4n6i2BpDZQE=",
-    "version": "1.27.7"
+    "rev": "v1.28.2",
+    "sha256": "sha256-qp5H37Zf9oPYA2vvWKuEpfUeHIfK1NYE9Uk7dcX9izA=",
+    "vendorSha256": "sha256-FMcPG7EJvU6XNKd2+8+xmjqSI0Ec9Xx/6gZvK9zJ3wg=",
+    "version": "1.28.2"
   },
   "opsgenie": {
     "owner": "opsgenie",
@@ -928,10 +928,10 @@
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/random",
     "repo": "terraform-provider-random",
-    "rev": "v3.1.0",
-    "sha256": "1677mia6bbydqa8w50f1y85rynpv9lhg9ar5s6japsr5g78lrcqf",
-    "vendorSha256": null,
-    "version": "3.1.0"
+    "rev": "v3.1.2",
+    "sha256": "sha256-Yk1CPR9gN70E+Qpc20vBQG2MY/RCO5cvaNtD8N++d5A=",
+    "vendorSha256": "sha256-/IjOv7/kQlGuV9+9Vhc7zUrr6hbcoxZyKi+q52YA/kk=",
+    "version": "3.1.2"
   },
   "rundeck": {
     "owner": "rundeck",
@@ -991,10 +991,10 @@
     "owner": "splunk-terraform",
     "provider-source-address": "registry.terraform.io/splunk-terraform/signalfx",
     "repo": "terraform-provider-signalfx",
-    "rev": "v6.10.0",
-    "sha256": "sha256-ZfNxab95ZDz68fEPfYd+w0E/fS/FPBVIs4kHTBhG858=",
-    "vendorSha256": "sha256-bX01PcLLpgWFMWxWPaUW8iEHxllqCmIX1/OIicB/h0M=",
-    "version": "6.10.0"
+    "rev": "v6.11.0",
+    "sha256": "sha256-ezd4TzckY5yx/UjwGxH36VX+owI8fBUmxtQFztOsFvs=",
+    "vendorSha256": "sha256-PVbqS37MBkIrr8CO6LxB0NjWWiTI5NFDipX6GvokrnY=",
+    "version": "6.11.0"
   },
   "skytap": {
     "owner": "skytap",
@@ -1009,10 +1009,10 @@
     "owner": "chanzuckerberg",
     "provider-source-address": "registry.terraform.io/chanzuckerberg/snowflake",
     "repo": "terraform-provider-snowflake",
-    "rev": "v0.25.36",
-    "sha256": "sha256-AeIQfdn68EnSj2BXZIsC0+L3EJ6tRHLD0NYHdPcf89w=",
-    "vendorSha256": "sha256-oYjoTZ79ricoFZTokiFcCKNXAeqFvW4RIMQmTp763gE=",
-    "version": "0.25.36"
+    "rev": "v0.29.0",
+    "sha256": "sha256-CdJHknGzEKfbxzrtqmevKwiYTs1UoRFRj6/ShQ9mdIc=",
+    "vendorSha256": "sha256-G/UIKuKtolLY7RIQF06wzn/ZYTMihEmJZ1DqVcHFGdg=",
+    "version": "0.29.0"
   },
   "sops": {
     "owner": "carlpett",
@@ -1045,10 +1045,10 @@
     "owner": "StatusCakeDev",
     "provider-source-address": "registry.terraform.io/StatusCakeDev/statuscake",
     "repo": "terraform-provider-statuscake",
-    "rev": "v2.0.0-pre",
-    "sha256": "sha256-S9VJRGREoRJPIb9gv822Y/8ZRa0x7WoPjU7BxLlRpOM=",
-    "vendorSha256": "sha256-wKrbjxRCDk8GFAR0OFz4w9UnkIXH9EO/S+p2RKNLJaM=",
-    "version": "2.0.0-pre"
+    "rev": "v2.0.1-pre",
+    "sha256": "sha256-/SWmGy6kMAt4TAswlpmfs4rVAa/DZBFoE1Yv+EcWfGo=",
+    "vendorSha256": "sha256-sFKhbOsE2eQ4Qxfbtab19nZRIKhJXNdsg274tWRjoVg=",
+    "version": "2.0.1-pre"
   },
   "sumologic": {
     "owner": "SumoLogic",
@@ -1072,28 +1072,28 @@
     "owner": "tencentcloudstack",
     "provider-source-address": "registry.terraform.io/tencentcloudstack/tencentcloud",
     "repo": "terraform-provider-tencentcloud",
-    "rev": "v1.65.0",
-    "sha256": "sha256-NpKZ4KbEDxCYmG2E4F/bHEUmK6invkcIaNkXDZjhmDI=",
+    "rev": "v1.66.1",
+    "sha256": "sha256-kzEU+yDm8O9tBNkf+qy945drnPj8wNR4VfBPO6fcbGE=",
     "vendorSha256": null,
-    "version": "1.65.0"
+    "version": "1.66.1"
   },
   "tfe": {
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/tfe",
     "repo": "terraform-provider-tfe",
-    "rev": "v0.28.1",
-    "sha256": "0xvah6qaf6kxgxhgzgh4rqswjda3366i6gqqwaiw4gc3w0ks2i3g",
-    "vendorSha256": "1qxbsnay75v6ss3fvi00rif10ra1l23b107d0v5cc1il4smqc36g",
-    "version": "0.28.1"
+    "rev": "v0.29.0",
+    "sha256": "sha256-2RksakMtNF0FGdUmJ4BBF6pvO2SrW0BNlQo95GIJSK4=",
+    "vendorSha256": "sha256-Nh22X4Unt77oWs/jf2PjZcxrz0nkyJrOY55ZbA972v8=",
+    "version": "0.29.0"
   },
   "thunder": {
     "owner": "a10networks",
     "provider-source-address": "registry.terraform.io/a10networks/thunder",
     "repo": "terraform-provider-thunder",
-    "rev": "v0.5.21-beta",
-    "sha256": "1z52ifdi0nj3miwjz96zkmszh13l3vcbijgacfa28j2shasjyfwd",
+    "rev": "v1.0.0",
+    "sha256": "sha256-fXvwBOIW3/76V3O9t25wff0oGViqSaSB2VgMdItXyn4=",
     "vendorSha256": null,
-    "version": "0.5.21-beta"
+    "version": "1.0.0"
   },
   "time": {
     "owner": "hashicorp",
@@ -1141,14 +1141,23 @@
     "vendorSha256": null,
     "version": "1.31.0"
   },
+  "utils": {
+    "owner": "cloudposse",
+    "provider-source-address": "registry.terraform.io/cloudposse/utils",
+    "repo": "terraform-provider-utils",
+    "rev": "0.17.17",
+    "sha256": "sha256-QJtdCEw8bnVku4fqAX5MBU9tkPv5jwjra9lGPfUPGQw=",
+    "vendorSha256": "sha256-5EelFIfHVLRiRJig6EeJG6KGJuQ05LX3M5CNxUxQAas=",
+    "version": "0.17.17"
+  },
   "vault": {
     "owner": "hashicorp",
     "provider-source-address": "registry.terraform.io/hashicorp/vault",
     "repo": "terraform-provider-vault",
-    "rev": "v3.3.1",
-    "sha256": "1mxy44dl1wr99v6b0gvzcf9d5nfky0avmx4fq83h9vfnvq7rmrhn",
-    "vendorSha256": "0x9cyxnaqkfpzx9ml7qqhl98jslpy1v965kd11kgcvqpr9lmc77x",
-    "version": "3.3.1"
+    "rev": "v3.4.0",
+    "sha256": "sha256-guacIY3iXieTiEXJ8mnq6gNWHs1doTNGJ8Su5PTfnaY=",
+    "vendorSha256": "sha256-JiNYM8P6ExGVVOVBYA2WJSZOpZ0PAyoncENqYRXPo7c=",
+    "version": "3.4.0"
   },
   "vcd": {
     "owner": "vmware",
@@ -1164,10 +1173,10 @@
     "owner": "Venafi",
     "provider-source-address": "registry.terraform.io/Venafi/venafi",
     "repo": "terraform-provider-venafi",
-    "rev": "v0.14.0",
-    "sha256": "16a7mr4dzfkvf9gg77dax92dp6g99plfg5qpzfhxdfanb25lq7za",
-    "vendorSha256": "0vmmki2pmg6ns75ldygyvj5pzl3blzz62zfqh4jsm1zbswfs75df",
-    "version": "0.14.0"
+    "rev": "v0.15.2",
+    "sha256": "sha256-jnBunvqdLuU+GTRoXr/62FSnUoD5nfLVCN/wo4NdM3A=",
+    "vendorSha256": "sha256-lj8cuv9jR+3P7OiO/eW8poHcX+LsQo+kOyspiqdMXRY=",
+    "version": "0.15.2"
   },
   "vercel": {
     "owner": "ondrejsika",
@@ -1209,19 +1218,19 @@
     "owner": "vultr",
     "provider-source-address": "registry.terraform.io/vultr/vultr",
     "repo": "terraform-provider-vultr",
-    "rev": "v2.9.1",
-    "sha256": "1w6699ngk6vcjii9skhrzv93p79mn6rmyqbb7fdchrwcvamk3y9a",
+    "rev": "v2.10.0",
+    "sha256": "sha256-4WoTMyGKBTYzoqt0Ih+khfsaeJuKox5Sq9ak9xwvvJQ=",
     "vendorSha256": null,
-    "version": "2.9.1"
+    "version": "2.10.0"
   },
   "wavefront": {
     "owner": "vmware",
     "provider-source-address": "registry.terraform.io/vmware/wavefront",
     "repo": "terraform-provider-wavefront",
-    "rev": "v3.0.1",
-    "sha256": "sha256-6SQjYaN0yhcHdmM+vGvIDPHKxN34ns3Yz+CMTEo13s0=",
+    "rev": "v3.0.2",
+    "sha256": "sha256-HCo6Hw724kQrPOCHoyByThq7L5NIZ/0AHmnQD27RUFA=",
     "vendorSha256": "sha256-PdSW3tyQUWbBiaM9U3NsqX/j4fMw9ZmjEDdyjxmRfD0=",
-    "version": "3.0.1"
+    "version": "3.0.2"
   },
   "yandex": {
     "owner": "yandex-cloud",
diff --git a/nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix b/nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix
index 110193a6ab4b..48025dfd7f72 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/terragrunt/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "terragrunt";
-  version = "0.36.2";
+  version = "0.36.6";
 
   src = fetchFromGitHub {
     owner = "gruntwork-io";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Iv9ZQoU/mMYdxBuPfoYc/zQXQ14FmDBfoFwxnESC6Ns=";
+    sha256 = "sha256-WSvdv4E/m6mJZdo3s9FHMETKaYNB7mltWrQlTHTFJ/E=";
   };
 
   vendorSha256 = "sha256-tNgEepKqwiqXhmoRCIEg7VJw7Y0TGt+R+6dZzd8aECg=";
diff --git a/nixpkgs/pkgs/applications/networking/cluster/tfswitch/default.nix b/nixpkgs/pkgs/applications/networking/cluster/tfswitch/default.nix
index f8473481cc01..3e872c27142d 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/tfswitch/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/tfswitch/default.nix
@@ -1,16 +1,16 @@
 { buildGoModule, lib, fetchFromGitHub }:
 buildGoModule rec {
   pname = "tfswitch";
-  version = "0.13.1201";
+  version = "0.13.1218";
 
   src = fetchFromGitHub {
     owner = "warrensbox";
     repo = "terraform-switcher";
     rev = version;
-    sha256 = "sha256-gJa8oVdgerDi0GdTSNus5rHLsFuzg8ZqVeKTMuPXu0o=";
+    sha256 = "sha256-RJdbNXO+6TqFLapWiZ1UeXGS5522ykQvhhNDEHPr8xE=";
   };
 
-  vendorSha256 = "sha256-z3UDrwlMHFFH56U3oylSWE3wqWOCA4RI2smafHHwYkQ=";
+  vendorSha256 = "sha256-Xqgki072Iy+snRriPVJ9oaDNJ/LiKL+AuU+eVw0zlDU=";
 
   # Disable tests since it requires network access and relies on the
   # presence of release.hashicorp.com
diff --git a/nixpkgs/pkgs/applications/networking/cluster/tgswitch/default.nix b/nixpkgs/pkgs/applications/networking/cluster/tgswitch/default.nix
index 560e593ba19c..5f669a6b9d8a 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/tgswitch/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/tgswitch/default.nix
@@ -1,13 +1,13 @@
 { buildGoPackage, lib, fetchFromGitHub }:
 buildGoPackage rec {
   pname = "tgswitch";
-  version = "0.5.382";
+  version = "0.5.389";
 
   src = fetchFromGitHub {
     owner = "warrensbox";
     repo = "tgswitch";
     rev = version;
-    sha256 = "sha256-DbPf1o1XlXLpuYSrNMRwHRqi/urQhSfzPW5BPIvZC/Y=";
+    sha256 = "sha256-6hErfI7LEJFgOoJR8IF9jTSBwqbQYeGiwdeJShqxVQ0=";
   };
 
   goPackagePath = "github.com/warrensbox/tgswitch";
diff --git a/nixpkgs/pkgs/applications/networking/cluster/tilt/default.nix b/nixpkgs/pkgs/applications/networking/cluster/tilt/default.nix
index 5193d1de5df6..c13c08c44a43 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/tilt/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/tilt/default.nix
@@ -5,13 +5,13 @@ buildGoModule rec {
   /* Do not use "dev" as a version. If you do, Tilt will consider itself
     running in development environment and try to serve assets from the
     source tree, which is not there once build completes.  */
-  version = "0.25.2";
+  version = "0.26.3";
 
   src = fetchFromGitHub {
     owner  = "tilt-dev";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "sha256-L5pXq4vfus8gpQMO+j2+WXMPkk3sv3WeeeYrBFd+w7s=";
+    sha256 = "sha256-jrVf6vNlEkTgALS93o3kIiticvsyFHm5oA2Fh1edAGY=";
   };
   vendorSha256 = null;
 
diff --git a/nixpkgs/pkgs/applications/networking/cluster/velero/default.nix b/nixpkgs/pkgs/applications/networking/cluster/velero/default.nix
index e0042e43efba..88c3a31fd2d7 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/velero/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/velero/default.nix
@@ -2,14 +2,14 @@
 
 buildGoModule rec {
   pname = "velero";
-  version = "1.8.0";
+  version = "1.8.1";
 
 
   src = fetchFromGitHub {
     owner = "vmware-tanzu";
     repo = "velero";
     rev = "v${version}";
-    sha256 = "sha256-tQGAzQFrpCUAEzdd5vr4j2oIb6TKeN9DQm96TdP0n40=";
+    sha256 = "sha256-oiYr9JQlJVxjZxGhZyOIUy934KedBmDhzK+71qmaD58=";
   };
 
   ldflags = [
diff --git a/nixpkgs/pkgs/applications/networking/cluster/werf/default.nix b/nixpkgs/pkgs/applications/networking/cluster/werf/default.nix
index f8dcbc0183ad..9a9f454ac003 100644
--- a/nixpkgs/pkgs/applications/networking/cluster/werf/default.nix
+++ b/nixpkgs/pkgs/applications/networking/cluster/werf/default.nix
@@ -11,15 +11,15 @@
 
 buildGoModule rec {
   pname = "werf";
-  version = "1.2.73";
+  version = "1.2.78";
 
   src = fetchFromGitHub {
     owner = "werf";
     repo = "werf";
     rev = "v${version}";
-    sha256 = "sha256-E16p40Pmr9o2946XlO3TUE/xUueG0NBWux23MgAVLlI=";
+    sha256 = "sha256-ehrzb7WvkYL8oj2RSzKc1KDagV0zg6vMzgpT2sPyhcI=";
   };
-  vendorSha256 = "sha256-NHeUj1JWRqElY2BpQ+7ANqwlOYQ5H2R00LGqktcsoF4=";
+  vendorSha256 = "sha256-w8ZeAQbZIVOBoRa9fJhXgTeYRCYpkh/U4pwb5u6A9mQ=";
   proxyVendor = true;
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/applications/networking/flexget/default.nix b/nixpkgs/pkgs/applications/networking/flexget/default.nix
index f4a2306017a9..96d3e773c88c 100644
--- a/nixpkgs/pkgs/applications/networking/flexget/default.nix
+++ b/nixpkgs/pkgs/applications/networking/flexget/default.nix
@@ -5,14 +5,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "flexget";
-  version = "3.3.3";
+  version = "3.3.4";
 
   # Fetch from GitHub in order to use `requirements.in`
   src = fetchFromGitHub {
     owner = "flexget";
     repo = "flexget";
     rev = "v${version}";
-    hash = "sha256-a76x4Klad3lct2M9RxSroUYKmEX7lPqDN+dFvfjavo8=";
+    hash = "sha256-/nuY8+/RMM7ASke+NXb95yu+FeQHawCdgqVsBrk/KZ8=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/applications/networking/gmailctl/default.nix b/nixpkgs/pkgs/applications/networking/gmailctl/default.nix
index f024de8d55ed..9fc1e25a92d7 100644
--- a/nixpkgs/pkgs/applications/networking/gmailctl/default.nix
+++ b/nixpkgs/pkgs/applications/networking/gmailctl/default.nix
@@ -6,15 +6,19 @@
 
 buildGoModule rec {
   pname = "gmailctl";
-  version = "0.10.0";
+  # on an unstable version because of https://github.com/mbrt/gmailctl/issues/232
+  # and https://github.com/mbrt/gmailctl/commit/484bb689866987580e0576165180ef06375a543f
+  version = "unstable-2022-03-24";
 
   src = fetchFromGitHub {
     owner = "mbrt";
     repo = "gmailctl";
-    rev = "v${version}";
-    sha256 = "sha256-JuE8+OW+qM6tir4A25tN2GTXQIkcKVE4uKbZNSTcNlA=";
+    rev = "484bb689866987580e0576165180ef06375a543f";
+    sha256 = "sha256-hIoS64QEDJ1qq3KJ2H8HjgQl8SxuIo+xz7Ot8CdjjQA=";
   };
 
+  vendorSha256 = "sha256-KWM20a38jZ3/a45313kxY2LaCQyiNMEdfdIV78phrBo=";
+
   nativeBuildInputs = [
     installShellFiles
   ];
@@ -26,8 +30,6 @@ buildGoModule rec {
       --zsh <($out/bin/gmailctl completion zsh)
   '';
 
-  vendorSha256 = "sha256-nAczO439tRiQU9f9LbJVENJiURVRnBAInwUp699RxOY=";
-
   doCheck = false;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/alfaview/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/alfaview/default.nix
index 764ba6a0d79e..ebed984c4d53 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/alfaview/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/alfaview/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "alfaview";
-  version = "8.37.0";
+  version = "8.40.0";
 
   src = fetchurl {
     url = "https://production-alfaview-assets.alfaview.com/stable/linux/${pname}_${version}.deb";
-    sha256 = "sha256-hU4tqDu95ej8ChiWJq3ZPhEwxBcmTQkA/n///pPVa5U=";
+    sha256 = "sha256-meiIDIG7OXxF2aclHA/8FN8aSz5KWJliDbm2p/flD4k=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/chatty/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/chatty/default.nix
index f9cec37a5068..97282c76d04c 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/chatty/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/chatty/default.nix
@@ -11,7 +11,7 @@
 , evolution-data-server
 , feedbackd
 , glibmm
-, gnome
+, gnome-desktop
 , gspell
 , gtk3
 , json-glib
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
     evolution-data-server
     feedbackd
     glibmm
-    gnome.gnome-desktop
+    gnome-desktop
     gspell
     gtk3
     json-glib
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/cinny/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/cinny/default.nix
index 1e2dc88a4d5d..940d0b6b92b3 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/cinny/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/cinny/default.nix
@@ -4,11 +4,11 @@ let
   configOverrides = writeText "cinny-config-overrides.json" (builtins.toJSON conf);
 in stdenv.mkDerivation rec {
   pname = "cinny";
-  version = "1.8.0";
+  version = "1.8.2";
 
   src = fetchurl {
     url = "https://github.com/ajbura/cinny/releases/download/v${version}/cinny-v${version}.tar.gz";
-    sha256 = "0pbapzl3pfx87ns4vp7088kkhl34c0ihbq90r3d0iz6sa16mcs79";
+    sha256 = "sha256-0harFaO1MWzTmN/Q3e38MC2O7P9yVeQ5ZSy0yiGbtCs=";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix
index 9e245b46d061..f80d8cab8b11 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix
@@ -1,38 +1,41 @@
 { lib
 , copyDesktopItems
-, electron
+, electron_14
 , esbuild
 , fetchFromGitHub
 , fetchpatch
 , libdeltachat
 , makeDesktopItem
 , makeWrapper
-, nodePackages
+, nodejs-14_x
+, noto-fonts-emoji
 , pkg-config
+, roboto
 , rustPlatform
+, sqlcipher
 , stdenv
 , CoreServices
 }:
 
 let
   libdeltachat' = libdeltachat.overrideAttrs (old: rec {
-    version = "1.70.0";
+    version = "1.76.0";
     src = fetchFromGitHub {
       owner = "deltachat";
       repo = "deltachat-core-rust";
       rev = version;
-      hash = "sha256-702XhFWvFG+g++3X97sy6C5DMNWogv1Xbr8QPR8QyLo=";
+      hash = "sha256-aeYOszOFyLaC1xKswYZLzqoWSFFWOOeOkc+WrtqU0jo=";
     };
     cargoDeps = rustPlatform.fetchCargoTarball {
       inherit src;
       name = "${old.pname}-${version}";
-      hash = "sha256-MiSGJMXe8vouv4XEHXq274FHEvBMtd7IX6DyNJIWYeU=";
+      hash = "sha256-sBFXcLXpAkX+HzRKrLKaHhi5ieS8Yc/Uf30WcXyWrok=";
     };
   });
   electronExec = if stdenv.isDarwin then
-    "${electron}/Applications/Electron.app/Contents/MacOS/Electron"
+    "${electron_14}/Applications/Electron.app/Contents/MacOS/Electron"
   else
-    "${electron}/bin/electron";
+    "${electron_14}/bin/electron";
   esbuild' = esbuild.overrideAttrs (old: rec {
     version = "0.12.29";
     src = fetchFromGitHub {
@@ -42,19 +45,18 @@ let
       hash = "sha256-oU++9E3StUoyrMVRMZz8/1ntgPI62M1NoNz9sH/N5Bg=";
     };
   });
-in nodePackages.deltachat-desktop.override rec {
+in nodejs-14_x.pkgs.deltachat-desktop.override rec {
   pname = "deltachat-desktop";
-  version = "1.26.0";
+  version = "1.28.0";
 
   src = fetchFromGitHub {
     owner = "deltachat";
     repo = "deltachat-desktop";
     rev = "v${version}";
-    hash = "sha256-IDyGV2+/+wHp5N4G10y5OHvw2yoyVxWx394xszIYoj4=";
+    hash = "sha256-Ur0UxaKEWp+y7lGz2Khsg4npOf+gjCiOoijkSbnp0hg=";
   };
 
   nativeBuildInputs = [
-    esbuild
     makeWrapper
     pkg-config
   ] ++ lib.optionals stdenv.isLinux [
@@ -72,27 +74,28 @@ in nodePackages.deltachat-desktop.override rec {
   USE_SYSTEM_LIBDELTACHAT = "true";
   VERSION_INFO_GIT_REF = src.rev;
 
-  postInstall = let
-    keep = lib.concatMapStringsSep " " (file: "! -name ${file}") [
-      "_locales" "build" "html-dist" "images" "index.js"
-      "node_modules" "themes" "tsc-dist"
-    ];
-  in ''
+  postInstall = ''
     rm -r node_modules/deltachat-node/{deltachat-core-rust,prebuilds,src}
 
-    patchShebangs node_modules/sass/sass.js
-
     npm run build
 
     npm prune --production
 
-    find . -mindepth 1 -maxdepth 1 ${keep} -print0 | xargs -0 rm -r
-
-    mkdir -p $out/share/icons/hicolor/scalable/apps
-    ln -s $out/lib/node_modules/deltachat-desktop/build/icon.png \
+    install -D $out/lib/node_modules/deltachat-desktop/build/icon.png \
       $out/share/icons/hicolor/scalable/apps/deltachat.png
 
+    awk '!/^#/ && NF' build/packageignore_list \
+      | xargs -I {} sh -c "rm -rf {}" || true
+
+    ln -sf ${noto-fonts-emoji}/share/fonts/noto/NotoColorEmoji.ttf \
+      $out/lib/node_modules/deltachat-desktop/html-dist/fonts/noto/emoji
+    for font in $out/lib/node_modules/deltachat-desktop/html-dist/fonts/Roboto-*.ttf; do
+      ln -sf ${roboto}/share/fonts/truetype/$(basename $font) \
+        $out/lib/node_modules/deltachat-desktop/html-dist/fonts
+    done
+
     makeWrapper ${electronExec} $out/bin/deltachat \
+      --set LD_PRELOAD ${sqlcipher}/lib/libsqlcipher${stdenv.hostPlatform.extensions.sharedLibrary} \
       --add-flags $out/lib/node_modules/deltachat-desktop
   '';
 
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/package.json b/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/package.json
index 23f0f15e3c47..ca584702765a 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/package.json
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/package.json
@@ -1,36 +1,39 @@
 {
   "name": "deltachat-desktop",
-  "version": "1.26.0",
+  "version": "1.28.0",
   "dependencies": {
     "@blueprintjs/core": "^3.22.3",
-    "@deltachat/message_parser_wasm": "^0.1.0",
+    "@deltachat/message_parser_wasm": "^0.3.0",
     "@mapbox/geojson-extent": "^1.0.0",
     "application-config": "^1.0.1",
     "classnames": "^2.3.1",
     "debounce": "^1.2.0",
-    "deltachat-node": "1.70.0",
+    "deltachat-node": "1.76.0",
     "emoji-js-clean": "^4.0.0",
     "emoji-mart": "^3.0.0",
     "emoji-regex": "^9.2.2",
-    "error-stack-parser": "2.0.6",
+    "error-stack-parser": "^2.0.7",
     "filesize": "^8.0.6",
+    "immutable": "^4.0.0",
     "mapbox-gl": "^1.12.0",
     "mime-types": "^2.1.31",
     "moment": "^2.27.0",
-    "node-fetch": "^2.6.1",
+    "node-fetch": "^2.6.7",
     "path-browserify": "^1.0.1",
     "rc": "^1.2.8",
     "react": "^17.0.2",
     "react-dom": "^17.0.2",
     "react-qr-reader": "^2.2.1",
     "react-qr-svg": "^2.1.0",
-    "react-string-replace": "^0.4.4",
+    "react-string-replace": "^1.0.0",
     "react-virtualized-auto-sizer": "^1.0.5",
     "react-window": "^1.8.6",
     "react-window-infinite-loader": "^1.0.7",
+    "react-zoom-pan-pinch": "^2.1.3",
     "source-map-support": "^0.5.19",
+    "stackframe": "^1.2.1",
     "tempy": "^0.3.0",
-    "url-parse": "^1.5.3",
+    "url-parse": "^1.5.9",
     "use-debounce": "^3.3.0",
     "@babel/core": "^7.7.7",
     "@babel/preset-env": "^7.7.7",
@@ -48,8 +51,8 @@
     "@types/react-window": "^1.8.4",
     "@types/react-window-infinite-loader": "^1.0.4",
     "@types/url-parse": "^1.4.3",
-    "electron": "^13.1.6",
-    "esbuild": "^0.12.15",
+    "electron": "^14.2.6",
+    "esbuild": "^0.12.29",
     "glob-watcher": "^5.0.5",
     "sass": "^1.26.5",
     "typescript": "^4.4.4",
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh b/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh
index 3f14f01b3604..c3119a79afd8 100755
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh
@@ -29,7 +29,7 @@ tac default.nix \
 
 src=$(nix-build "$nixpkgs" -A deltachat-desktop.src --no-out-link)
 
-jq '{ name, version, dependencies: (.dependencies + (.devDependencies | del(.["@typescript-eslint/eslint-plugin","@typescript-eslint/parser","electron-builder","electron-devtools-installer","electron-notarize","eslint","eslint-config-prettier","eslint-plugin-react-hooks","hallmark","prettier","tape","testcafe","testcafe-browser-provider-electron","testcafe-react-selectors","walk"]))) }' \
+jq '{ name, version, dependencies: (.dependencies + (.devDependencies | del(.["@types/chai","@types/mocha","@typescript-eslint/eslint-plugin","@typescript-eslint/parser","chai","electron-builder","electron-devtools-installer","electron-notarize","eslint","eslint-config-prettier","eslint-plugin-react-hooks","hallmark","mocha","prettier","testcafe","testcafe-browser-provider-electron","testcafe-react-selectors","ts-node","walk"]))) }' \
     "$src/package.json" > package.json.new
 
 if cmp --quiet package.json{.new,}; then
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json b/nixpkgs/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json
index 6d3353c2515f..984a9cb501dd 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json
@@ -2,7 +2,7 @@
   "name": "element-desktop",
   "productName": "Element",
   "main": "lib/electron-main.js",
-  "version": "1.10.6",
+  "version": "1.10.7",
   "description": "A feature-rich client for Matrix.org",
   "author": "Element",
   "repository": {
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/element/pin.json b/nixpkgs/pkgs/applications/networking/instant-messengers/element/pin.json
index d1fb0fe1c622..f75dfc66ca90 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/element/pin.json
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/element/pin.json
@@ -1,6 +1,6 @@
 {
-  "version": "1.10.6",
-  "desktopSrcHash": "TJGYavawLDLbP9Sg7HxIcOkr7hcTfAwk4fyOOEv4KhI=",
+  "version": "1.10.7",
+  "desktopSrcHash": "HkGny9t8dNzVGyyqgr4tABbFZgWV4xqGZt9xH4ejkew=",
   "desktopYarnHash": "038rqg26dn8chzscck5mlhnw2viy6gr8pjb7zrcmi7ipx9h038a0",
-  "webHash": "1wax4h5gfcq4giyq1igsix748cngky487kwvf69zb1gz95hjds9r"
+  "webHash": "0gim79a1zpfc56ca5fndp2whmlv9jz1s32z666i268xppn4z53k1"
 }
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/ferdi/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/ferdi/default.nix
index 92e39f091b15..0a44a37cf4bc 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/ferdi/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/ferdi/default.nix
@@ -17,10 +17,10 @@ in
 mkFranzDerivation' rec {
   pname = "ferdi";
   name = "Ferdi";
-  version = "5.7.0";
+  version = "5.8.0";
   src = fetchurl {
     url = "https://github.com/getferdi/ferdi/releases/download/v${version}/ferdi_${version}_amd64.deb";
-    sha256 = "sha256-WwtnYNjXHk80o1wMsEBoaT9j0+4TWTfWhuVpGHaZB7c=";
+    sha256 = "sha256-Dd/iH9dtr4WvM++bSURF8kI6BsF6uBiSFviC/ik2H+o=";
   };
   extraBuildInputs = [ xorg.libxshmfence ];
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/fractal/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/fractal/default.nix
index d957daced26d..3b5349d65ffe 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/fractal/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/fractal/default.nix
@@ -1,5 +1,7 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchFromGitLab
+, fetchpatch
 , nix-update-script
 , meson
 , ninja
@@ -33,6 +35,15 @@ stdenv.mkDerivation rec {
     sha256 = "DSNVd9YvI7Dd3s3+M0+wE594tmL1yPNMnD1W9wLhSuw=";
   };
 
+  patches = [
+    # Fix build with meson 0.61
+    # fractal-gtk/res/meson.build:5:0: ERROR: Function does not take positional arguments.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/fractal/-/commit/6fa1a23596d65d94aa889efe725174e6cd2903f0.patch";
+      sha256 = "3OzU9XL2V1VNOkvL1j677K3HNoBqPMQudQDmiDxYfAc=";
+    })
+  ];
+
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/gotktrix/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/gotktrix/default.nix
new file mode 100644
index 000000000000..f44c05da5c01
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/gotktrix/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, gtk4
+, glib
+, gobject-introspection
+, pkg-config
+, go
+}:
+
+buildGoModule rec {
+  pname = "gotktrix";
+  version = "0.1.2";
+
+  src = fetchFromGitHub {
+    owner = "diamondburned";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-K+q0sykdOMnAWypOXnwTU5oTokpYw61CTsAW1gIvGSQ=";
+  };
+
+  vendorSha256 = "sha256-Br9KgUoN01yoGujgbj5UEoB57K87oEH/o40rrRtIZVY=";
+
+  buildInputs = [
+    gtk4
+    glib
+    gobject-introspection
+  ];
+
+  nativeBuildInputs = [ pkg-config ];
+
+  # Checking requires a working display
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Matrix client written in Go using GTK4";
+    homepage = "https://github.com/diamondburned/gotktrix";
+    license = licenses.agpl3Plus;
+    maintainers = with maintainers; [ chuangzhu ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/matrixcli/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/matrixcli/default.nix
index 7e88a77193b6..9b501facb7f6 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/matrixcli/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/matrixcli/default.nix
@@ -1,13 +1,14 @@
-{ lib, fetchgit
+{ lib, fetchFromGitHub
   , buildPythonApplication, buildPythonPackage
   , pygobject3, pytest-runner, requests, responses, pytest, python-olm
   , canonicaljson, olm
 }:
 let
-  mainsrc = fetchgit {
-    url = "https://github.com/saadnpq/matrixcli";
+  mainsrc = fetchFromGitHub {
+    owner = "saadnpq";
+    repo = "matrixcli";
     rev = "61ebde173ca2f77185c261c2b7f6db297ca89863";
-    sha256 = "0xcjjy2xwlcixr9fwgzcfjjkivqpk104h7dslfa7lz9jq9pzqzvq";
+    sha256 = "sha256-eH/8b8IyfXqUo7odSECYF+84pXTsP+5S7pFR3oWXknU=";
     fetchSubmodules = true;
   };
 
@@ -35,7 +36,6 @@ let
 
 in
 buildPythonApplication rec {
-  name = "${pname}-${version}";
   pname = "matrixcli";
   version = "0.0.2019-08-15";
 
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/neochat/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/neochat/default.nix
index 6de6922913fc..a8e73ad1098f 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/neochat/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/neochat/default.nix
@@ -8,6 +8,7 @@
 , kconfig
 , kdbusaddons
 , ki18n
+, kio
 , kirigami2
 , kitemmodels
 , knotifications
@@ -16,23 +17,25 @@
 , libquotient
 , libsecret
 , olm
+, qcoro
 , qqc2-desktop-style
 , qtgraphicaleffects
 , qtkeychain
 , qtmultimedia
 , qtquickcontrols2
+, sonnet
 }:
 
 mkDerivation rec {
   pname = "neochat";
-  version = "1.2";
+  version = "22.02";
 
   src = fetchFromGitLab {
     domain = "invent.kde.org";
     owner = "network";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Kpv7BY/qS0A3xFlYFhz1RRNwQVsyhOTHHGDbWRTTv1I=";
+    sha256 = "sha256-7EBnHuwpyJ/bGrCldZHWOwcnJWDIDaNWZXHkCYkOTjs=";
   };
 
   nativeBuildInputs = [ cmake extra-cmake-modules pkg-config ];
@@ -41,6 +44,7 @@ mkDerivation rec {
     cmark
     kconfig
     kdbusaddons
+    kio
     ki18n
     kirigami2
     kitemmodels
@@ -50,11 +54,13 @@ mkDerivation rec {
     libquotient
     libsecret
     olm
+    qcoro
     qtgraphicaleffects
     qtkeychain
     qtmultimedia
     qtquickcontrols2
     qqc2-desktop-style
+    sonnet
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/nheko/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/nheko/default.nix
index 080ceda94b4a..750511ebf152 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/nheko/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/nheko/default.nix
@@ -33,13 +33,13 @@
 
 mkDerivation rec {
   pname = "nheko";
-  version = "0.9.2";
+  version = "0.9.3";
 
   src = fetchFromGitHub {
     owner = "Nheko-Reborn";
     repo = "nheko";
     rev = "v${version}";
-    sha256 = "sha256-roC1OIq0Vmj5rABNtH4IOMHX9aSlOMFC7ZHueuj/PmE=";
+    sha256 = "sha256-h1Yahz7Rt7+r55RFTSVj6E14nWnjCs0CecljceaWgaQ=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix
index a168eb984c33..2c6a0c5e7e64 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix
@@ -1,16 +1,14 @@
-{ lib, stdenv, fetchgit, pkg-config, pidgin } :
+{ lib, stdenv, fetchFromGitHub, pkg-config, pidgin } :
 
-let
-  version = "54b2992";
-in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "pidgin-mra";
-  inherit version;
+  version = "unstable-2014-07-08";
 
-  src = fetchgit {
-    url = "https://github.com/dreadatour/pidgin-mra";
-    rev = version;
-    sha256 = "1adq57g11kw7bfpivyvfk3nlpjkc8raiw4bzn3gn4nx3m0wl99vw";
+  src = fetchFromGitHub {
+    owner = "dreadatour";
+    repo = "pidgin-mra";
+    rev = "54b299266265cde800289b2d51f13b81f6bf379c";
+    sha256 = "sha256-fKdEOaijW2LfsH8RHlVGbMpL7Zhu+x2vW4fPEN4puKk=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix
index 527af9ed98db..6f7aab564fac 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix
@@ -1,16 +1,14 @@
-{ lib, stdenv, fetchgit, pkg-config, pidgin, libwebp, libgcrypt, gettext } :
+{ lib, stdenv, fetchFromGitHub, pkg-config, pidgin, libwebp, libgcrypt, gettext } :
 
-let
-  version = "1.3.1";
-in
 stdenv.mkDerivation rec {
   pname = "telegram-purple";
-  inherit version;
+  version = "1.3.1";
 
-  src = fetchgit {
-    url = "https://github.com/majn/telegram-purple";
+  src = fetchFromGitHub {
+    owner = "majn";
+    repo = "telegram-purple";
     rev = "v${version}";
-    sha256 = "0p93jpjpx7hszwffzgixw04zkrpsiyzz4za3gfr4j07krc4771fp";
+    sha256 = "sha256-14VzCMvzAEmye0N98r+P+ub5CeA9vu8c/xqefuWVI10=";
   };
 
   NIX_CFLAGS_COMPILE = "-Wno-error=cast-function-type";
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/pond/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/pond/default.nix
index f26cd0109444..c7b5d56dbba3 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/pond/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/pond/default.nix
@@ -1,20 +1,20 @@
 { lib, stdenv, buildGoPackage, trousers, dclxvi, wrapGAppsHook, pkg-config, gtk3, gtkspell3,
-  fetchgit }:
+  fetchFromGitHub }:
 
 let
   gui = true; # Might be implemented with nixpkgs config.
 in
 buildGoPackage rec {
   pname = "pond";
-  version = "20150830-${lib.strings.substring 0 7 rev}";
-  rev = "bce6e0dc61803c23699c749e29a83f81da3c41b2";
+  version = "unstable-2015-08-30";
 
   goPackagePath = "github.com/agl/pond";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/agl/pond";
-    sha256 = "1dmgbg4ak3jkbgmxh0lr4hga1nl623mh7pvsgby1rxl4ivbzwkh4";
+  src = fetchFromGitHub {
+    owner = "agl";
+    repo = "pond";
+    rev = "bce6e0dc61803c23699c749e29a83f81da3c41b2";
+    sha256 = "sha256-BE7+146E9hz8enrfA+sQhtqgHiSZAtjrW1OOqchbr7Y=";
   };
 
   goDeps = ./deps.nix;
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/psi-plus/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
index 9288f272134a..aeb20d6779ef 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
@@ -43,13 +43,13 @@ assert enablePsiMedia -> enablePlugins;
 
 mkDerivation rec {
   pname = "psi-plus";
-  version = "1.5.1600";
+  version = "1.5.1615";
 
   src = fetchFromGitHub {
     owner = "psi-plus";
     repo = "psi-plus-snapshots";
     rev = version;
-    sha256 = "sha256-AZSxElEpYUYa92KdYxVyM+ppKHpXXwwlBFVOOKH/O7g=";
+    sha256 = "sha256-aD+JVGmBWHUav2bH9rXGtgqI+/5lJTMrYLRP7E65JxI=";
   };
 
   cmakeFlags = [
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/schildichat/schildichat-desktop.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/schildichat/schildichat-desktop.nix
index a87d57ecc91f..e2b4cafe9936 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/schildichat/schildichat-desktop.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/schildichat/schildichat-desktop.nix
@@ -2,7 +2,7 @@
 , element-desktop # for seshat and keytar
 , schildichat-web
 , stdenv
-, fetchgit
+, fetchFromGitHub
 , makeWrapper
 , makeDesktopItem
 , copyDesktopItems
@@ -25,8 +25,9 @@ stdenv.mkDerivation rec {
   pname = "schildichat-desktop";
   inherit (pinData) version;
 
-  src = fetchgit {
-    url = "https://github.com/SchildiChat/schildichat-desktop/";
+  src = fetchFromGitHub {
+    owner = "SchildiChat";
+    repo = "schildichat-desktop";
     inherit (pinData) rev;
     sha256 = pinData.srcHash;
     fetchSubmodules = true;
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix
index f9e00c06470a..a7ad6fb4d9b1 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix
@@ -1,5 +1,5 @@
 { stdenv, lib
-, fetchgit
+, fetchFromGitHub
 , fetchYarnDeps
 , nodejs
 , yarn
@@ -18,8 +18,9 @@ in stdenv.mkDerivation rec {
   pname = "schildichat-web";
   inherit (pinData) version;
 
-  src = fetchgit {
-    url = "https://github.com/SchildiChat/schildichat-desktop/";
+  src = fetchFromGitHub {
+    owner = "SchildiChat";
+    repo = "schildichat-desktop";
     inherit (pinData) rev;
     sha256 = pinData.srcHash;
     fetchSubmodules = true;
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/session-desktop-appimage/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/session-desktop-appimage/default.nix
index 9126a587dc7a..4518627fe2b8 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/session-desktop-appimage/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/session-desktop-appimage/default.nix
@@ -1,15 +1,53 @@
 { lib
+, makeDesktopItem
+, copyDesktopItems
+, stdenvNoCC
 , fetchurl
 , appimageTools
 }:
 
-appimageTools.wrapType2 rec {
+let
+  version = "1.7.9";
   pname = "session-desktop-appimage";
-  version = "1.7.7";
+
   src = fetchurl {
     url = "https://github.com/oxen-io/session-desktop/releases/download/v${version}/session-desktop-linux-x86_64-${version}.AppImage";
-    sha256 = "iMJk7/Q3Kh2KwLs0m+DAPVv471iPZcsIs4+YCSbmeIo=";
+    sha256 = "ca7754e59146633b71e66b02a90cff87e4f2574e57ff831ca4a5f983b7e2fbef";
+  };
+  appimage = appimageTools.wrapType2 {
+    inherit version pname src;
   };
+  appimage-contents = appimageTools.extractType2 {
+    inherit version pname src;
+  };
+in
+stdenvNoCC.mkDerivation {
+  inherit version pname;
+  src = appimage;
+
+  nativeBuildInputs = [ copyDesktopItems ];
+
+  desktopItems = [
+    (makeDesktopItem {
+      name = "Session";
+      desktopName = "Session";
+      comment = "Onion routing based messenger";
+      exec = "${appimage}/bin/session-desktop-appimage-${version}";
+      icon = "${appimage-contents}/session-desktop.png";
+      terminal = false;
+      type = "Application";
+      categories = [ "Network" ];
+    })
+  ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/
+    cp -r bin $out/bin
+
+    runHook postInstall
+  '';
 
   meta = with lib; {
     description = "Onion routing based messenger";
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
index 99ee871c917e..e3fa08e3df3a 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
@@ -24,7 +24,7 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "signal-desktop";
-  version = "5.35.0"; # Please backport all updates to the stable channel.
+  version = "5.36.0"; # Please backport all updates to the stable channel.
   # All releases have a limited lifetime and "expire" 90 days after the release.
   # When releases "expire" the application becomes unusable until an update is
   # applied. The expiration date for the current release can be extracted with:
@@ -34,7 +34,7 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
-    sha256 = "sha256-2KF2OLq6/vHElgloxn+kgQisJC+HAkpOBfsKfEPW35c=";
+    sha256 = "sha256-x1PUEDq/0B1T14mBs2FuKtcGpJHWOIvHAs8hptpzhZk=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
index a1b897dce228..f03a91faa23f 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "signalbackup-tools";
-  version = "20220314";
+  version = "20220316";
 
   src = fetchFromGitHub {
     owner = "bepaald";
     repo = pname;
     rev = version;
-    sha256 = "sha256-E3gH4Ym2tmH9qmbfKWybgO6qUW2rpJQyhBh6LPpfFHE=";
+    sha256 = "sha256-c9eqY3KBzCrNOLNf1DGpARmxGzwga3+tBg3e7Yr+Rb8=";
   };
 
   # Remove when Apple SDK is >= 10.13
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/sky/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/sky/default.nix
new file mode 100644
index 000000000000..464d4d77f946
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/sky/default.nix
@@ -0,0 +1,66 @@
+{ lib
+, mkDerivation
+, fetchurl
+, autoPatchelfHook
+, zstd
+, curl
+, ffmpeg
+, libjpeg_turbo
+, libpam-wrapper
+, libv4l
+, pulseaudio
+, zlib
+, xorg
+}:
+
+mkDerivation rec {
+  pname = "sky";
+  version = "2.1.7801";
+
+  src = fetchurl {
+    url = "https://tel.red/repos/archlinux/sky-archlinux-${version}-1-x86_64.pkg.tar.zst";
+    sha256 = "sha256-3xiq2b3CwNjRd09q0z8olrmLGhgkJGAVkZoJSIHom+k=";
+  };
+
+  nativeBuildInputs = [ autoPatchelfHook zstd ];
+
+  buildInputs = [
+    curl
+    ffmpeg
+    libjpeg_turbo
+    libpam-wrapper
+    libv4l
+    pulseaudio
+    xorg.libX11
+    xorg.libXScrnSaver
+    xorg.libXcursor
+    xorg.libXdamage
+    xorg.libXinerama
+    xorg.libXmu
+    xorg.libXrandr
+    xorg.libXtst
+    xorg.libXv
+    xorg.libxkbfile
+    zlib
+  ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir $out
+    mv * $out/
+    ln --force --symbolic $out/lib/sky/sky{,_sender} $out/bin
+    substituteInPlace $out/share/applications/sky.desktop \
+      --replace /usr/ $out/
+
+    runHook postInstall
+  '';
+
+  meta = {
+    description = "Lync & Skype for Business on Linux";
+    homepage = "https://tel.red/";
+    license = lib.licenses.unfree;
+    maintainers = [ lib.maintainers.wucke13 ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix
index cb4f3e5e5d15..ce5dc0e266e6 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix
@@ -1,53 +1,231 @@
-{ mkDerivation, lib, fetchFromGitHub, callPackage
-, pkg-config, cmake, ninja, python3, wrapGAppsHook, wrapQtAppsHook
-, qtbase, qtimageformats, gtk3, libsForQt5, lz4, xxHash
-, ffmpeg, openalSoft, minizip, libopus, alsa-lib, libpulseaudio, range-v3
-, tl-expected, hunspell, glibmm, webkitgtk
-# Transitive dependencies:
-, pcre, xorg, util-linux, libselinux, libsepol, libepoxy
-, at-spi2-core, libXtst, libthai, libdatrie
+{ lib
+, stdenv
+, fetchFromGitHub
+, callPackage
+, pkg-config
+, cmake
+, ninja
+, clang
+, python3
+, wrapGAppsHook
+, wrapQtAppsHook
+, removeReferencesTo
+, extra-cmake-modules
+, qtbase
+, qtimageformats
+, qtsvg
+, kwayland
+, lz4
+, xxHash
+, ffmpeg
+, openalSoft
+, minizip
+, libopus
+, alsa-lib
+, libpulseaudio
+, range-v3
+, tl-expected
+, hunspell
+, glibmm
+, webkitgtk
+, jemalloc
+, rnnoise
+, abseil-cpp
+, microsoft_gsl
+, wayland
+, libicns
+, Cocoa
+, CoreFoundation
+, CoreServices
+, CoreText
+, CoreGraphics
+, CoreMedia
+, OpenGL
+, AudioUnit
+, ApplicationServices
+, Foundation
+, AGL
+, Security
+, SystemConfiguration
+, Carbon
+, AudioToolbox
+, VideoToolbox
+, VideoDecodeAcceleration
+, AVFoundation
+, CoreAudio
+, CoreVideo
+, CoreMediaIO
+, QuartzCore
+, AppKit
+, CoreWLAN
+, WebKit
+, IOKit
+, GSS
+, MediaPlayer
+, IOSurface
+, Metal
+, MetalKit
+, withWebKit ? false
 }:
 
 with lib;
 
 let
-  tg_owt = callPackage ./tg_owt.nix {};
-in mkDerivation rec {
+  tg_owt = callPackage ./tg_owt.nix {
+    abseil-cpp = (abseil-cpp.override {
+      # abseil-cpp should use the same compiler
+      inherit stdenv;
+      cxxStandard = "20";
+    }).overrideAttrs (_: {
+      # https://github.com/NixOS/nixpkgs/issues/130963
+      NIX_LDFLAGS = optionalString stdenv.isDarwin "-lc++abi";
+    });
+
+    # tg_owt should use the same compiler
+    inherit stdenv;
+
+    inherit Cocoa AppKit IOKit IOSurface Foundation AVFoundation CoreMedia VideoToolbox
+      CoreGraphics CoreVideo OpenGL Metal MetalKit CoreFoundation ApplicationServices;
+  };
+in
+stdenv.mkDerivation rec {
   pname = "kotatogram-desktop";
-  version = "1.4.1";
+  version = "1.4.9";
 
   src = fetchFromGitHub {
     owner = "kotatogram";
     repo = "kotatogram-desktop";
     rev = "k${version}";
-    sha256 = "07z56gz3sk45n5j0gw9p9mxrbwixxsmp7lvqc6lqnxmglz6knc1d";
+    sha256 = "sha256-6bF/6fr8mJyyVg53qUykysL7chuewtJB8E22kVyxjHw=";
     fetchSubmodules = true;
   };
 
-  postPatch = ''
+  patches = [
+    ./shortcuts-binary-path.patch
+    # let it build with nixpkgs 10.12 sdk
+    ./kotato-10.12-sdk.patch
+  ];
+
+  postPatch = optionalString stdenv.isLinux ''
+    substituteInPlace Telegram/ThirdParty/libtgvoip/os/linux/AudioInputALSA.cpp \
+      --replace '"libasound.so.2"' '"${alsa-lib}/lib/libasound.so.2"'
+    substituteInPlace Telegram/ThirdParty/libtgvoip/os/linux/AudioOutputALSA.cpp \
+      --replace '"libasound.so.2"' '"${alsa-lib}/lib/libasound.so.2"'
+    substituteInPlace Telegram/ThirdParty/libtgvoip/os/linux/AudioPulse.cpp \
+      --replace '"libpulse.so.0"' '"${libpulseaudio}/lib/libpulse.so.0"'
+  '' + optionalString (stdenv.isLinux && withWebKit) ''
+    substituteInPlace Telegram/lib_webview/webview/platform/linux/webview_linux_webkit_gtk.cpp \
+      --replace '"libwebkit2gtk-4.0.so.37"' '"${webkitgtk}/lib/libwebkit2gtk-4.0.so.37"'
+  '' + optionalString stdenv.isDarwin ''
     substituteInPlace Telegram/CMakeLists.txt \
-      --replace '"''${TDESKTOP_LAUNCHER_BASENAME}.appdata.xml"' '"''${TDESKTOP_LAUNCHER_BASENAME}.metainfo.xml"'
+      --replace 'COMMAND iconutil' 'COMMAND png2icns' \
+      --replace '--convert icns' "" \
+      --replace '--output AppIcon.icns' 'AppIcon.icns' \
+      --replace "\''${appicon_path}" "\''${appicon_path}/icon_16x16.png \''${appicon_path}/icon_32x32.png \''${appicon_path}/icon_128x128.png \''${appicon_path}/icon_256x256.png \''${appicon_path}/icon_512x512.png"
   '';
 
   # We want to run wrapProgram manually (with additional parameters)
-  dontWrapGApps = true;
-  dontWrapQtApps = true;
+  dontWrapGApps = stdenv.isLinux;
+  dontWrapQtApps = stdenv.isLinux && withWebKit;
 
-  nativeBuildInputs = [ pkg-config cmake ninja python3 wrapGAppsHook wrapQtAppsHook ];
+  nativeBuildInputs = [
+    pkg-config
+    cmake
+    ninja
+    python3
+    wrapQtAppsHook
+    removeReferencesTo
+  ] ++ optionals stdenv.isLinux [
+    # to build bundled libdispatch
+    clang
+    extra-cmake-modules
+  ] ++ optionals (stdenv.isLinux && withWebKit) [
+    wrapGAppsHook
+  ];
 
   buildInputs = [
-    qtbase qtimageformats gtk3 libsForQt5.kwayland libsForQt5.libdbusmenu lz4 xxHash
-    ffmpeg openalSoft minizip libopus alsa-lib libpulseaudio range-v3
-    tl-expected hunspell glibmm webkitgtk
+    qtbase
+    qtimageformats
+    qtsvg
+    lz4
+    xxHash
+    ffmpeg
+    openalSoft
+    minizip
+    libopus
+    range-v3
+    tl-expected
+    rnnoise
     tg_owt
-    # Transitive dependencies:
-    pcre xorg.libXdmcp util-linux libselinux libsepol libepoxy
-    at-spi2-core libXtst libthai libdatrie
+    microsoft_gsl
+  ] ++ optionals stdenv.isLinux [
+    kwayland
+    alsa-lib
+    libpulseaudio
+    hunspell
+    glibmm
+    jemalloc
+    wayland
+  ] ++ optionals (stdenv.isLinux && withWebKit) [
+    webkitgtk
+  ] ++ optionals stdenv.isDarwin [
+    Cocoa
+    CoreFoundation
+    CoreServices
+    CoreText
+    CoreGraphics
+    CoreMedia
+    OpenGL
+    AudioUnit
+    ApplicationServices
+    Foundation
+    AGL
+    Security
+    SystemConfiguration
+    Carbon
+    AudioToolbox
+    VideoToolbox
+    VideoDecodeAcceleration
+    AVFoundation
+    CoreAudio
+    CoreVideo
+    CoreMediaIO
+    QuartzCore
+    AppKit
+    CoreWLAN
+    WebKit
+    IOKit
+    GSS
+    MediaPlayer
+    IOSurface
+    Metal
+    libicns
   ];
 
-  cmakeFlags = [ "-DTDESKTOP_API_TEST=ON" ];
+  # https://github.com/NixOS/nixpkgs/issues/130963
+  NIX_LDFLAGS = optionalString stdenv.isDarwin "-lc++abi";
+
+  enableParallelBuilding = true;
+
+  cmakeFlags = [
+    "-DTDESKTOP_API_TEST=ON"
+    "-DDESKTOP_APP_QT6=OFF"
+  ];
+
+  installPhase = optionalString stdenv.isDarwin ''
+    mkdir -p $out/Applications
+    cp -r Kotatogram.app $out/Applications
+    ln -s $out/Applications/Kotatogram.app/Contents/MacOS $out/bin
+  '';
+
+  preFixup = ''
+    binName=${if stdenv.isLinux then "kotatogram-desktop" else "Kotatogram"}
+    remove-references-to -t ${stdenv.cc.cc} $out/bin/$binName
+    remove-references-to -t ${microsoft_gsl} $out/bin/$binName
+    remove-references-to -t ${tg_owt.dev} $out/bin/$binName
+  '';
 
-  postFixup = ''
+  postFixup = optionalString (stdenv.isLinux && withWebKit) ''
     # We also use gappsWrapperArgs from wrapGAppsHook.
     wrapProgram $out/bin/kotatogram-desktop \
       "''${gappsWrapperArgs[@]}" \
@@ -66,9 +244,9 @@ in mkDerivation rec {
       It contains some useful (or purely cosmetic) features, but they could be unstable. A detailed list is available here: https://kotatogram.github.io/changes
     '';
     license = licenses.gpl3;
-    platforms = platforms.linux;
+    platforms = platforms.all;
     homepage = "https://kotatogram.github.io";
-    changelog = "https://github.com/kotatogram/kotatogram-desktop/releases/tag/k{ver}";
+    changelog = "https://github.com/kotatogram/kotatogram-desktop/releases/tag/k{version}";
     maintainers = with maintainers; [ ilya-fedin ];
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/kotato-10.12-sdk.patch b/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/kotato-10.12-sdk.patch
new file mode 100644
index 000000000000..d603c967cfde
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/kotato-10.12-sdk.patch
@@ -0,0 +1,415 @@
+diff --git a/Telegram/SourceFiles/platform/mac/file_bookmark_mac.mm b/Telegram/SourceFiles/platform/mac/file_bookmark_mac.mm
+index 337055443..09604b117 100644
+--- a/Telegram/SourceFiles/platform/mac/file_bookmark_mac.mm
++++ b/Telegram/SourceFiles/platform/mac/file_bookmark_mac.mm
+@@ -12,6 +12,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ 
+ #include <Cocoa/Cocoa.h>
+ #include <CoreFoundation/CFURL.h>
++#undef check
+ 
+ namespace Platform {
+ namespace {
+diff --git a/Telegram/SourceFiles/platform/mac/specific_mac.mm b/Telegram/SourceFiles/platform/mac/specific_mac.mm
+index 3b4395ae3..7f8ee401f 100644
+--- a/Telegram/SourceFiles/platform/mac/specific_mac.mm
++++ b/Telegram/SourceFiles/platform/mac/specific_mac.mm
+@@ -119,6 +119,7 @@ PermissionStatus GetPermissionStatus(PermissionType type) {
+ 	switch (type) {
+ 	case PermissionType::Microphone:
+ 	case PermissionType::Camera:
++#if 0
+ 		const auto nativeType = (type == PermissionType::Microphone)
+ 			? AVMediaTypeAudio
+ 			: AVMediaTypeVideo;
+@@ -133,6 +134,7 @@ PermissionStatus GetPermissionStatus(PermissionType type) {
+ 					return PermissionStatus::Denied;
+ 			}
+ 		}
++#endif
+ 		break;
+ 	}
+ 	return PermissionStatus::Granted;
+@@ -142,6 +144,7 @@ void RequestPermission(PermissionType type, Fn<void(PermissionStatus)> resultCal
+ 	switch (type) {
+ 	case PermissionType::Microphone:
+ 	case PermissionType::Camera:
++#if 0
+ 		const auto nativeType = (type == PermissionType::Microphone)
+ 			? AVMediaTypeAudio
+ 			: AVMediaTypeVideo;
+@@ -152,6 +155,7 @@ void RequestPermission(PermissionType type, Fn<void(PermissionStatus)> resultCal
+ 				});
+ 			}];
+ 		}
++#endif
+ 		break;
+ 	}
+ 	resultCallback(PermissionStatus::Granted);
+diff --git a/Telegram/SourceFiles/platform/mac/touchbar/items/mac_formatter_item.h b/Telegram/SourceFiles/platform/mac/touchbar/items/mac_formatter_item.h
+index a537929c8..82ef2b837 100644
+--- a/Telegram/SourceFiles/platform/mac/touchbar/items/mac_formatter_item.h
++++ b/Telegram/SourceFiles/platform/mac/touchbar/items/mac_formatter_item.h
+@@ -9,8 +9,8 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ 
+ #import <AppKit/NSPopoverTouchBarItem.h>
+ #import <AppKit/NSTouchBar.h>
++#undef check
+ 
+-API_AVAILABLE(macos(10.12.2))
+ @interface TextFormatPopover : NSPopoverTouchBarItem
+ - (id)init:(NSTouchBarItemIdentifier)identifier;
+ @end
+diff --git a/Telegram/SourceFiles/platform/mac/touchbar/items/mac_pinned_chats_item.h b/Telegram/SourceFiles/platform/mac/touchbar/items/mac_pinned_chats_item.h
+index c6a4b886f..d2e0936c0 100644
+--- a/Telegram/SourceFiles/platform/mac/touchbar/items/mac_pinned_chats_item.h
++++ b/Telegram/SourceFiles/platform/mac/touchbar/items/mac_pinned_chats_item.h
+@@ -8,12 +8,12 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ #pragma once
+ 
+ #include <AppKit/NSImageView.h>
++#undef check
+ 
+ namespace Main {
+ class Session;
+ } // namespace Main
+ 
+-API_AVAILABLE(macos(10.12.2))
+ @interface PinnedDialogsPanel : NSImageView
+ - (id)init:(not_null<Main::Session*>)session
+ 	destroyEvent:(rpl::producer<>)touchBarSwitches;
+diff --git a/Telegram/SourceFiles/platform/mac/touchbar/items/mac_scrubber_item.h b/Telegram/SourceFiles/platform/mac/touchbar/items/mac_scrubber_item.h
+index 27b04467c..b1a7dfbd9 100644
+--- a/Telegram/SourceFiles/platform/mac/touchbar/items/mac_scrubber_item.h
++++ b/Telegram/SourceFiles/platform/mac/touchbar/items/mac_scrubber_item.h
+@@ -9,12 +9,12 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ 
+ #import <AppKit/NSPopoverTouchBarItem.h>
+ #import <AppKit/NSTouchBar.h>
++#undef check
+ 
+ namespace Window {
+ class Controller;
+ } // namespace Window
+ 
+-API_AVAILABLE(macos(10.12.2))
+ @interface StickerEmojiPopover : NSPopoverTouchBarItem<NSTouchBarDelegate>
+ - (id)init:(not_null<Window::Controller*>)controller
+ 	identifier:(NSTouchBarItemIdentifier)identifier;
+diff --git a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_audio.h b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_audio.h
+index ec4596c67..972461aef 100644
+--- a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_audio.h
++++ b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_audio.h
+@@ -8,8 +8,8 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ #pragma once
+ 
+ #import <AppKit/NSTouchBar.h>
++#undef check
+ 
+-API_AVAILABLE(macos(10.12.2))
+ @interface TouchBarAudioPlayer : NSTouchBar<NSTouchBarDelegate>
+ - (rpl::producer<>)closeRequests;
+ @end
+diff --git a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_common.h b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_common.h
+index 52b54de12..ac3857f9b 100644
+--- a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_common.h
++++ b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_common.h
+@@ -9,6 +9,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ 
+ #import <AppKit/NSImage.h>
+ #import <Foundation/Foundation.h>
++#undef check
+ 
+ namespace TouchBar {
+ 
+diff --git a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_controls.h b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_controls.h
+index 1cc8c832f..c2178c975 100644
+--- a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_controls.h
++++ b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_controls.h
+@@ -20,19 +20,19 @@ struct TrackState;
+ 
+ namespace TouchBar {
+ 
+-[[nodiscard]] API_AVAILABLE(macos(10.12.2))
++[[nodiscard]]
+ NSButton *CreateTouchBarButton(
+ 	NSImage *image,
+ 	rpl::lifetime &lifetime,
+ 	Fn<void()> callback);
+ 
+-[[nodiscard]] API_AVAILABLE(macos(10.12.2))
++[[nodiscard]]
+ NSButton *CreateTouchBarButton(
+ 	const style::icon &icon,
+ 	rpl::lifetime &lifetime,
+ 	Fn<void()> callback);
+ 
+-[[nodiscard]] API_AVAILABLE(macos(10.12.2))
++[[nodiscard]]
+ NSButton *CreateTouchBarButtonWithTwoStates(
+ 	NSImage *icon1,
+ 	NSImage *icon2,
+@@ -41,7 +41,7 @@ NSButton *CreateTouchBarButtonWithTwoStates(
+ 	bool firstState,
+ 	rpl::producer<bool> stateChanged = rpl::never<bool>());
+ 
+-[[nodiscard]] API_AVAILABLE(macos(10.12.2))
++[[nodiscard]]
+ NSButton *CreateTouchBarButtonWithTwoStates(
+ 	const style::icon &icon1,
+ 	const style::icon &icon2,
+@@ -50,14 +50,14 @@ NSButton *CreateTouchBarButtonWithTwoStates(
+ 	bool firstState,
+ 	rpl::producer<bool> stateChanged = rpl::never<bool>());
+ 
+-[[nodiscard]] API_AVAILABLE(macos(10.12.2))
++[[nodiscard]]
+ NSSliderTouchBarItem *CreateTouchBarSlider(
+ 	NSString *itemId,
+ 	rpl::lifetime &lifetime,
+ 	Fn<void(bool, double, double)> callback,
+ 	rpl::producer<Media::Player::TrackState> stateChanged);
+ 
+-[[nodiscard]] API_AVAILABLE(macos(10.12.2))
++[[nodiscard]]
+ NSCustomTouchBarItem *CreateTouchBarTrackPosition(
+ 	NSString *itemId,
+ 	rpl::producer<Media::Player::TrackState> stateChanged);
+diff --git a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_main.h b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_main.h
+index f03546eaf..bc8c63678 100644
+--- a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_main.h
++++ b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_main.h
+@@ -8,6 +8,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ #pragma once
+ 
+ #import <AppKit/NSTouchBar.h>
++#undef check
+ 
+ namespace Window {
+ class Controller;
+@@ -21,7 +22,6 @@ const auto kPopoverPickerItemIdentifier = @"pickerButtons";
+ 
+ } // namespace TouchBar::Main
+ 
+-API_AVAILABLE(macos(10.12.2))
+ @interface TouchBarMain : NSTouchBar
+ - (id)init:(not_null<Window::Controller*>)controller
+ 	touchBarSwitches:(rpl::producer<>)touchBarSwitches;
+diff --git a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_manager.h b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_manager.h
+index 464f87c9c..9a008c75e 100644
+--- a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_manager.h
++++ b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_manager.h
+@@ -8,6 +8,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ #pragma once
+ 
+ #import <AppKit/NSTouchBar.h>
++#undef check
+ 
+ namespace Main {
+ class Domain;
+@@ -17,7 +18,6 @@ namespace Window {
+ class Controller;
+ } // namespace Window
+ 
+-API_AVAILABLE(macos(10.12.2))
+ @interface RootTouchBar : NSTouchBar<NSTouchBarDelegate>
+ - (id)init:(rpl::producer<bool>)canApplyMarkdown
+ 	controller:(not_null<Window::Controller*>)controller
+Submodule Telegram/ThirdParty/tgcalls contains modified content
+diff --git a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoDecoderFactory.mm b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoDecoderFactory.mm
+index 8a4417b..2d9794e 100644
+--- a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoDecoderFactory.mm
++++ b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoDecoderFactory.mm
+@@ -71,7 +71,7 @@
+     if (@available(iOS 11.0, *)) {
+         [result addObject:h265Info];
+     }
+-#else // WEBRTC_IOS
++#elif 0 // WEBRTC_IOS
+     if (@available(macOS 10.13, *)) {
+         [result addObject:h265Info];
+     }
+@@ -101,7 +101,7 @@
+       return [[TGRTCVideoDecoderH265 alloc] init];
+     }
+   }
+-#else // WEBRTC_IOS
++#elif 0 // WEBRTC_IOS
+   if (@available(macOS 10.13, *)) {
+     if ([info.name isEqualToString:kRTCVideoCodecH265Name]) {
+       return [[TGRTCVideoDecoderH265 alloc] init];
+diff --git a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoEncoderFactory.mm b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoEncoderFactory.mm
+index 2901417..ac9ec2a 100644
+--- a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoEncoderFactory.mm
++++ b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoEncoderFactory.mm
+@@ -76,7 +76,7 @@
+       [result addObject:h265Info];
+     }
+   }
+-#else // WEBRTC_IOS
++#elif 0 // WEBRTC_IOS
+   if (@available(macOS 10.13, *)) {
+     if ([[AVAssetExportSession allExportPresets] containsObject:AVAssetExportPresetHEVCHighestQuality]) {
+       [result addObject:h265Info];
+@@ -112,7 +112,7 @@
+       return [[TGRTCVideoEncoderH265 alloc] initWithCodecInfo:info];
+     }
+   }
+-#else // WEBRTC_IOS
++#elif 0 // WEBRTC_IOS
+   if (@available(macOS 10.13, *)) {
+     if ([info.name isEqualToString:kRTCVideoCodecH265Name]) {
+       return [[TGRTCVideoEncoderH265 alloc] initWithCodecInfo:info];
+diff --git a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoCameraCapturerMac.mm b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoCameraCapturerMac.mm
+index de92427..9a5b20d 100644
+--- a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoCameraCapturerMac.mm
++++ b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoCameraCapturerMac.mm
+@@ -507,8 +507,7 @@ static tgcalls::DarwinVideoTrackSource *getObjCVideoSource(const rtc::scoped_ref
+ - (void)captureOutput:(AVCaptureOutput *)captureOutput
+     didDropSampleBuffer:(CMSampleBufferRef)sampleBuffer
+          fromConnection:(AVCaptureConnection *)connection {
+-  NSString *droppedReason =
+-      (__bridge NSString *)CMGetAttachment(sampleBuffer, kCMSampleBufferAttachmentKey_DroppedFrameReason, nil);
++  NSString *droppedReason = nil;
+   RTCLogError(@"Dropped sample buffer. Reason: %@", droppedReason);
+ }
+ 
+diff --git a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoMetalViewMac.mm b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoMetalViewMac.mm
+index bcabcf7..de7b6c7 100644
+--- a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoMetalViewMac.mm
++++ b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoMetalViewMac.mm
+@@ -245,9 +245,11 @@ private:
+     layer.framebufferOnly = true;
+     layer.opaque = false;
+ //    layer.cornerRadius = 4;
++#if 0
+     if (@available(macOS 10.13, *)) {
+         layer.displaySyncEnabled = NO;
+     }
++#endif
+ //    layer.presentsWithTransaction = YES;
+     layer.backgroundColor = [NSColor clearColor].CGColor;
+     layer.contentsGravity = kCAGravityResizeAspectFill;
+@@ -334,9 +336,7 @@ private:
+ - (RTCVideoRotation)rtcFrameRotation {
+     if (_rotationOverride) {
+         RTCVideoRotation rotation;
+-        if (@available(macOS 10.13, *)) {
+-            [_rotationOverride getValue:&rotation size:sizeof(rotation)];
+-        } else {
++        {
+             [_rotationOverride getValue:&rotation];
+         }
+         return rotation;
+Submodule Telegram/lib_base contains modified content
+diff --git a/Telegram/lib_base/base/platform/mac/base_global_shortcuts_mac.mm b/Telegram/lib_base/base/platform/mac/base_global_shortcuts_mac.mm
+index 5491702..32befc6 100644
+--- a/Telegram/lib_base/base/platform/mac/base_global_shortcuts_mac.mm
++++ b/Telegram/lib_base/base/platform/mac/base_global_shortcuts_mac.mm
+@@ -128,6 +128,7 @@ bool Available() {
+ }
+ 
+ bool Allowed() {
++#if 0
+ 	if (@available(macOS 10.15, *)) {
+ 		// Input Monitoring is required on macOS 10.15 an later.
+ 		// Even if user grants access, restart is required.
+@@ -141,6 +142,7 @@ bool Allowed() {
+ 		return AXIsProcessTrustedWithOptions(
+ 			(__bridge CFDictionaryRef)options);
+ 	}
++#endif
+ 	return true;
+ }
+ 
+diff --git a/Telegram/lib_base/base/platform/mac/base_info_mac.mm b/Telegram/lib_base/base/platform/mac/base_info_mac.mm
+index 29e368f..ea1f65f 100644
+--- a/Telegram/lib_base/base/platform/mac/base_info_mac.mm
++++ b/Telegram/lib_base/base/platform/mac/base_info_mac.mm
+@@ -203,16 +203,20 @@ void Finish() {
+ }
+ 
+ void OpenInputMonitoringPrivacySettings() {
++#if 0
+ 	if (@available(macOS 10.15, *)) {
+ 		IOHIDRequestAccess(kIOHIDRequestTypeListenEvent);
+ 	}
++#endif
+ 	[[NSWorkspace sharedWorkspace] openURL:PrivacySettingsUrl("Privacy_ListenEvent")];
+ }
+ 
+ void OpenDesktopCapturePrivacySettings() {
++#if 0
+ 	if (@available(macOS 11.0, *)) {
+ 		CGRequestScreenCaptureAccess();
+ 	}
++#endif
+ 	[[NSWorkspace sharedWorkspace] openURL:PrivacySettingsUrl("Privacy_ScreenCapture")];
+ }
+ 
+diff --git a/Telegram/lib_base/base/platform/mac/base_system_media_controls_mac.mm b/Telegram/lib_base/base/platform/mac/base_system_media_controls_mac.mm
+index c86ac77..b081162 100644
+--- a/Telegram/lib_base/base/platform/mac/base_system_media_controls_mac.mm
++++ b/Telegram/lib_base/base/platform/mac/base_system_media_controls_mac.mm
+@@ -271,6 +271,7 @@ void SystemMediaControls::setThumbnail(const QImage &thumbnail) {
+ 	if (thumbnail.isNull()) {
+ 		return;
+ 	}
++#if 0
+ 	if (@available(macOS 10.13.2, *)) {
+ 		const auto copy = thumbnail;
+ 		[_private->info
+@@ -284,6 +285,7 @@ void SystemMediaControls::setThumbnail(const QImage &thumbnail) {
+ 			forKey:MPMediaItemPropertyArtwork];
+ 		updateDisplay();
+ 	}
++#endif
+ }
+ 
+ void SystemMediaControls::setDuration(int duration) {
+@@ -302,10 +304,12 @@ void SystemMediaControls::setVolume(float64 volume) {
+ }
+ 
+ void SystemMediaControls::clearThumbnail() {
++#if 0
+ 	if (@available(macOS 10.13.2, *)) {
+ 		[_private->info removeObjectForKey:MPMediaItemPropertyArtwork];
+ 		updateDisplay();
+ 	}
++#endif
+ }
+ 
+ void SystemMediaControls::clearMetadata() {
+@@ -367,9 +371,11 @@ bool SystemMediaControls::volumeSupported() const {
+ }
+ 
+ bool SystemMediaControls::Supported() {
++#if 0
+ 	if (@available(macOS 10.12.2, *)) {
+ 		return true;
+ 	}
++#endif
+ 	return false;
+ }
+ 
+Submodule Telegram/lib_webrtc contains modified content
+diff --git a/Telegram/lib_webrtc/webrtc/mac/webrtc_media_devices_mac.mm b/Telegram/lib_webrtc/webrtc/mac/webrtc_media_devices_mac.mm
+index 21e93f7..10a3890 100644
+--- a/Telegram/lib_webrtc/webrtc/mac/webrtc_media_devices_mac.mm
++++ b/Telegram/lib_webrtc/webrtc/mac/webrtc_media_devices_mac.mm
+@@ -397,6 +397,7 @@ void MacMediaDevices::videoInputRefreshed() {
+ }
+ 
+ bool MacDesktopCaptureAllowed() {
++#if 0
+ 	if (@available(macOS 11.0, *)) {
+ 		// Screen Recording is required on macOS 10.15 an later.
+ 		// Even if user grants access, restart is required.
+@@ -421,6 +422,7 @@ bool MacDesktopCaptureAllowed() {
+ 		CFRelease(stream);
+ 		return true;
+ 	}
++#endif
+ 	return true;
+ }
+ 
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/shortcuts-binary-path.patch b/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/shortcuts-binary-path.patch
new file mode 100644
index 000000000000..f173a64f141a
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/shortcuts-binary-path.patch
@@ -0,0 +1,38 @@
+diff --git a/Telegram/SourceFiles/core/application.cpp b/Telegram/SourceFiles/core/application.cpp
+index 2a092c6ea..de46dd269 100644
+--- a/Telegram/SourceFiles/core/application.cpp
++++ b/Telegram/SourceFiles/core/application.cpp
+@@ -1173,7 +1173,7 @@ void Application::startShortcuts() {
+ 
+ void Application::RegisterUrlScheme() {
+ 	base::Platform::RegisterUrlScheme(base::Platform::UrlSchemeDescriptor{
+-		.executable = cExeDir() + cExeName(),
++		.executable = qsl("kotatogram-desktop"),
+ 		.arguments = qsl("-workdir \"%1\"").arg(cWorkingDir()),
+ 		.protocol = qsl("tg"),
+ 		.protocolName = qsl("Telegram Link"),
+diff --git a/Telegram/SourceFiles/platform/linux/specific_linux.cpp b/Telegram/SourceFiles/platform/linux/specific_linux.cpp
+index 26168baa7..00d2525a0 100644
+--- a/Telegram/SourceFiles/platform/linux/specific_linux.cpp
++++ b/Telegram/SourceFiles/platform/linux/specific_linux.cpp
+@@ -303,19 +303,11 @@ bool GenerateDesktopFile(
+ 
+ 	QFile target(targetFile);
+ 	if (target.open(QIODevice::WriteOnly)) {
+-		fileText = fileText.replace(
+-			QRegularExpression(
+-				qsl("^TryExec=.*$"),
+-				QRegularExpression::MultilineOption),
+-			qsl("TryExec=%1").arg(
+-				QString(cExeDir() + cExeName()).replace('\\', "\\\\")));
+-
+ 		fileText = fileText.replace(
+ 			QRegularExpression(
+ 				qsl("^Exec=kotatogram-desktop(.*)$"),
+ 				QRegularExpression::MultilineOption),
+-			qsl("Exec=%1 -workdir %2\\1").arg(
+-				EscapeShellInLauncher(cExeDir() + cExeName()),
++			qsl("Exec=kotatogram-desktop -workdir %1\\1").arg(
+ 				EscapeShellInLauncher(cWorkingDir())));
+ 
+ 		fileText = fileText.replace(
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt-10.12-sdk.patch b/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt-10.12-sdk.patch
new file mode 100644
index 000000000000..a9adf5737a55
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt-10.12-sdk.patch
@@ -0,0 +1,55 @@
+diff --git a/src/rtc_base/system/gcd_helpers.m b/src/rtc_base/system/gcd_helpers.m
+index fd9a361f..3a63be6d 100644
+--- a/src/rtc_base/system/gcd_helpers.m
++++ b/src/rtc_base/system/gcd_helpers.m
+@@ -13,9 +13,6 @@
+ dispatch_queue_t RTCDispatchQueueCreateWithTarget(const char *label,
+                                                   dispatch_queue_attr_t attr,
+                                                   dispatch_queue_t target) {
+-  if (@available(iOS 10, macOS 10.12, tvOS 10, watchOS 3, *)) {
+-    return dispatch_queue_create_with_target(label, attr, target);
+-  }
+   dispatch_queue_t queue = dispatch_queue_create(label, attr);
+   dispatch_set_target_queue(queue, target);
+   return queue;
+diff --git a/src/sdk/objc/components/video_codec/nalu_rewriter.cc b/src/sdk/objc/components/video_codec/nalu_rewriter.cc
+index 61c1e7d6..b19f3f91 100644
+--- a/src/sdk/objc/components/video_codec/nalu_rewriter.cc
++++ b/src/sdk/objc/components/video_codec/nalu_rewriter.cc
+@@ -245,10 +245,7 @@ bool H265CMSampleBufferToAnnexBBuffer(
+   int nalu_header_size = 0;
+   size_t param_set_count = 0;
+   OSStatus status = noErr;
+-  if (__builtin_available(macOS 10.13, *)) {
+-    status = CMVideoFormatDescriptionGetHEVCParameterSetAtIndex(
+-        description, 0, nullptr, nullptr, &param_set_count, &nalu_header_size);
+-  } else {
++  {
+     RTC_LOG(LS_ERROR) << "Not supported.";
+     return false;
+   }
+@@ -271,10 +268,7 @@ bool H265CMSampleBufferToAnnexBBuffer(
+     size_t param_set_size = 0;
+     const uint8_t* param_set = nullptr;
+     for (size_t i = 0; i < param_set_count; ++i) {
+-      if (__builtin_available(macOS 10.13, *)) {
+-        status = CMVideoFormatDescriptionGetHEVCParameterSetAtIndex(
+-            description, i, &param_set, &param_set_size, nullptr, nullptr);
+-      } else {
++      {
+         RTC_LOG(LS_ERROR) << "Not supported.";
+         return false;
+       }
+@@ -514,11 +508,7 @@ CMVideoFormatDescriptionRef CreateH265VideoFormatDescription(
+   // Parse the SPS and PPS into a CMVideoFormatDescription.
+   CMVideoFormatDescriptionRef description = nullptr;
+   OSStatus status = noErr;
+-  if (__builtin_available(macOS 10.13, *)) {
+-    status = CMVideoFormatDescriptionCreateFromHEVCParameterSets(
+-        kCFAllocatorDefault, 3, param_set_ptrs, param_set_sizes, 4, nullptr,
+-        &description);
+-  } else {
++  {
+     RTC_LOG(LS_ERROR) << "Not supported.";
+     return nullptr;
+   }
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix
index aff74a174b9c..fe62270b8e80 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix
@@ -1,35 +1,123 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, ninja, yasm
-, libjpeg, openssl, libopus, ffmpeg_4, alsa-lib, libpulseaudio, protobuf
-, xorg, libXtst
+{ lib
+, stdenv
+, fetchFromGitHub
+, pkg-config
+, cmake
+, ninja
+, yasm
+, libjpeg
+, openssl
+, libopus
+, ffmpeg_4
+, protobuf
+, openh264
+, usrsctp
+, libvpx
+, libX11
+, libXtst
+, libXcomposite
+, libXdamage
+, libXext
+, libXrender
+, libXrandr
+, libXi
+, glib
+, abseil-cpp
+, pipewire
+, mesa
+, libglvnd
+, libepoxy
+, Cocoa
+, AppKit
+, IOKit
+, IOSurface
+, Foundation
+, AVFoundation
+, CoreMedia
+, VideoToolbox
+, CoreGraphics
+, CoreVideo
+, OpenGL
+, Metal
+, MetalKit
+, CoreFoundation
+, ApplicationServices
 }:
 
-let
-  rev = "2d804d2c9c5d05324c8ab22f2e6ff8306521b3c3";
-  sha256 = "0kz0i381iwsgcc3yzsq7njx3gkqja4bb9fsgc24vhg0md540qhyn";
-
-in stdenv.mkDerivation {
+stdenv.mkDerivation {
   pname = "tg_owt";
-  version = "git-${rev}";
+  version = "unstable-2022-02-26";
 
   src = fetchFromGitHub {
     owner = "desktop-app";
     repo = "tg_owt";
-    inherit rev sha256;
+    rev = "a264028ec71d9096e0aa629113c49c25db89d260";
+    sha256 = "sha256-JR+M+4w0QsQLfIunZ/7W+5Knn+gX+RR3DBrpOz7q44I=";
     fetchSubmodules = true;
   };
 
+  patches = [
+    # let it build with nixpkgs 10.12 sdk
+    ./tg_owt-10.12-sdk.patch
+  ];
+
   outputs = [ "out" "dev" ];
 
   nativeBuildInputs = [ pkg-config cmake ninja yasm ];
 
   buildInputs = [
-    libjpeg openssl libopus ffmpeg_4 alsa-lib libpulseaudio protobuf
-    xorg.libX11 libXtst
+    libjpeg
+    openssl
+    libopus
+    ffmpeg_4
+    protobuf
+    openh264
+    usrsctp
+    libvpx
+    abseil-cpp
+  ] ++ lib.optionals stdenv.isLinux [
+    libX11
+    libXtst
+    libXcomposite
+    libXdamage
+    libXext
+    libXrender
+    libXrandr
+    libXi
+    glib
+    pipewire
+    mesa
+    libepoxy
+    libglvnd
+  ] ++ lib.optionals stdenv.isDarwin [
+    Cocoa
+    AppKit
+    IOKit
+    IOSurface
+    Foundation
+    AVFoundation
+    CoreMedia
+    VideoToolbox
+    CoreGraphics
+    CoreVideo
+    OpenGL
+    Metal
+    MetalKit
+    CoreFoundation
+    ApplicationServices
   ];
 
-  cmakeFlags = [
-    # Building as a shared library isn't officially supported and currently broken:
-    "-DBUILD_SHARED_LIBS=OFF"
+  # https://github.com/NixOS/nixpkgs/issues/130963
+  NIX_LDFLAGS = lib.optionalString stdenv.isDarwin "-lc++abi";
+
+  enableParallelBuilding = true;
+
+  propagatedBuildInputs = [
+    # Required for linking downstream binaries.
+    abseil-cpp
+    openh264
+    usrsctp
+    libvpx
   ];
 
   meta.license = lib.licenses.bsd3;
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/tensor/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/tensor/default.nix
index 2d5f6e2dfb72..cbc93857c819 100644
--- a/nixpkgs/pkgs/applications/networking/instant-messengers/tensor/default.nix
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/tensor/default.nix
@@ -1,7 +1,7 @@
 { mkDerivation
 , lib
 , stdenv
-, fetchgit
+, fetchFromGitHub
 , qtbase
 , qtquickcontrols
 , qmake
@@ -15,10 +15,11 @@ mkDerivation rec {
   pname = "tensor";
   version = "unstable-2017-02-21";
 
-  src = fetchgit {
-    url = "https://github.com/davidar/tensor.git";
+  src = fetchFromGitHub {
+    owner = "davidar";
+    repo = "tensor";
     rev = "f3f3056d770d7fb4a21c610cee7936ee900569f5";
-    sha256 = "19in8c7a2hxsx2c4lj540w5c3pn1882645m21l91mcriynqr67k9";
+    sha256 = "sha256-aR6TsfUxsxoSDaIWYgRCwd7BCgekSEqY6LpDoQ5DNqY=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/applications/networking/ipfs/default.nix b/nixpkgs/pkgs/applications/networking/ipfs/default.nix
index 2cceddf0bd7c..f6285ae59beb 100644
--- a/nixpkgs/pkgs/applications/networking/ipfs/default.nix
+++ b/nixpkgs/pkgs/applications/networking/ipfs/default.nix
@@ -29,15 +29,23 @@ buildGoModule rec {
 
   vendorSha256 = null;
 
+  outputs = [ "out" "systemd_unit" "systemd_unit_hardened" ];
+
+  postPatch = ''
+    substituteInPlace 'misc/systemd/ipfs.service' \
+      --replace '/usr/bin/ipfs' "$out/bin/ipfs"
+    substituteInPlace 'misc/systemd/ipfs-hardened.service' \
+      --replace '/usr/bin/ipfs' "$out/bin/ipfs"
+  '';
+
   postInstall = ''
-    install --mode=444 -D misc/systemd/ipfs.service $out/etc/systemd/system/ipfs.service
-    install --mode=444 -D misc/systemd/ipfs-hardened.service $out/etc/systemd/system/ipfs-hardened.service
-    install --mode=444 -D misc/systemd/ipfs-api.socket $out/etc/systemd/system/ipfs-api.socket
-    install --mode=444 -D misc/systemd/ipfs-gateway.socket $out/etc/systemd/system/ipfs-gateway.socket
-    substituteInPlace $out/etc/systemd/system/ipfs.service \
-      --replace /usr/bin/ipfs $out/bin/ipfs
-    substituteInPlace $out/etc/systemd/system/ipfs-hardened.service \
-      --replace /usr/bin/ipfs $out/bin/ipfs
+    install --mode=444 -D 'misc/systemd/ipfs-api.socket' "$systemd_unit/etc/systemd/system/ipfs-api.socket"
+    install --mode=444 -D 'misc/systemd/ipfs-gateway.socket' "$systemd_unit/etc/systemd/system/ipfs-gateway.socket"
+    install --mode=444 -D 'misc/systemd/ipfs.service' "$systemd_unit/etc/systemd/system/ipfs.service"
+
+    install --mode=444 -D 'misc/systemd/ipfs-api.socket' "$systemd_unit_hardened/etc/systemd/system/ipfs-api.socket"
+    install --mode=444 -D 'misc/systemd/ipfs-gateway.socket' "$systemd_unit_hardened/etc/systemd/system/ipfs-gateway.socket"
+    install --mode=444 -D 'misc/systemd/ipfs-hardened.service' "$systemd_unit_hardened/etc/systemd/system/ipfs.service"
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/networking/irc/communi/default.nix b/nixpkgs/pkgs/applications/networking/irc/communi/default.nix
index df7168ac308e..c8c36049a2a4 100644
--- a/nixpkgs/pkgs/applications/networking/irc/communi/default.nix
+++ b/nixpkgs/pkgs/applications/networking/irc/communi/default.nix
@@ -1,13 +1,14 @@
-{ fetchgit, libcommuni, qtbase, qmake, lib, stdenv, wrapQtAppsHook }:
+{ fetchFromGitHub, libcommuni, qtbase, qmake, lib, stdenv, wrapQtAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "communi";
   version = "3.5.0";
 
-  src = fetchgit {
-    url = "https://github.com/communi/communi-desktop.git";
+  src = fetchFromGitHub {
+    owner = "communi";
+    repo = "communi-desktop";
     rev = "v${version}";
-    sha256 = "10grskhczh8601s90ikdsbjabgr9ypcp2j7vivjkl456rmg6xbji";
+    sha256 = "sha256-Ua5uXs2mEDrljvtIcdn1Kb+l5NJtRpB0AAbBz+DU+YE=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/applications/networking/irc/ircdog/default.nix b/nixpkgs/pkgs/applications/networking/irc/ircdog/default.nix
index 5badc69a3a27..87d4b8777c3f 100644
--- a/nixpkgs/pkgs/applications/networking/irc/ircdog/default.nix
+++ b/nixpkgs/pkgs/applications/networking/irc/ircdog/default.nix
@@ -5,21 +5,22 @@
 
 buildGoPackage rec {
   pname = "ircdog";
-  version = "0.2.1";
+  version = "0.3.0";
 
-  goPackagePath = "github.com/goshuirc/ircdog";
+  goPackagePath = "github.com/ergochat/ircdog";
 
   src = fetchFromGitHub {
     owner = "goshuirc";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1ppbznlkv7vajfbimxbyiq5y6pkfhm6ylhl408rwq1bawl28hpkl";
+    sha256 = "sha256-x3ihWLgVYu17vG1xQTgIr4TSkeZ467TZBV1fPTPnZgw=";
     fetchSubmodules = true;
   };
 
   meta = with lib; {
     description = "ircdog is a simple wrapper over the raw IRC protocol that can respond to pings, and interprets formatting codes";
-    homepage = "https://github.com/goshuirc/ircdog";
+    homepage = "https://github.com/ergochat/ircdog";
+    changelog = "https://github.com/ergochat/ircdog/releases/tag/v${version}";
     license = licenses.isc;
     maintainers = with maintainers; [ hexa ];
   };
diff --git a/nixpkgs/pkgs/applications/networking/irc/quassel/default.nix b/nixpkgs/pkgs/applications/networking/irc/quassel/default.nix
index d218f114143f..4bc930b12d0a 100644
--- a/nixpkgs/pkgs/applications/networking/irc/quassel/default.nix
+++ b/nixpkgs/pkgs/applications/networking/irc/quassel/default.nix
@@ -88,7 +88,6 @@ in (if !buildClient then stdenv.mkDerivation else mkDerivation) rec {
     '';
     license = licenses.gpl3;
     maintainers = with maintainers; [ ttuegel ];
-    repositories.git = "https://github.com/quassel/quassel.git";
     inherit (qtbase.meta) platforms;
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/juju/default.nix b/nixpkgs/pkgs/applications/networking/juju/default.nix
index 0d57e252e301..b22cea57987c 100644
--- a/nixpkgs/pkgs/applications/networking/juju/default.nix
+++ b/nixpkgs/pkgs/applications/networking/juju/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "juju";
-  version = "2.9.26";
+  version = "2.9.27";
 
   src = fetchFromGitHub {
     owner = "juju";
     repo = "juju";
     rev = "juju-${version}";
-    sha256 = "sha256-phzjjW9KG0Z5WAzxtYdI7i2Nw4FHVNeEJswQreHga4M=";
+    sha256 = "sha256-4G+veQkPY6n/uRMsBWQgig/6IDc0Y2nXDpMUyC1ShF4=";
   };
 
-  vendorSha256 = "sha256-Jzd6I3a/2Un2a3/T2vzFuHwe9Y3eGEvfpZWSwjWokM0=";
+  vendorSha256 = "sha256-Ieaf+Qp/7/6nv2ftHY3pbtOg+t7dYAuMv4BvhRaAZ9E=";
 
   # Disable tests because it attempts to use a mongodb instance
   doCheck = false;
diff --git a/nixpkgs/pkgs/applications/networking/lieer/default.nix b/nixpkgs/pkgs/applications/networking/lieer/default.nix
index 420b9b28ccfc..a9bf177128d5 100644
--- a/nixpkgs/pkgs/applications/networking/lieer/default.nix
+++ b/nixpkgs/pkgs/applications/networking/lieer/default.nix
@@ -33,7 +33,6 @@ python3Packages.buildPythonApplication rec {
       GMail account.
     '';
     homepage = "https://lieer.gaute.vetsj.com/";
-    repositories.git = "https://github.com/gauteh/lieer.git";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ flokli kaiha ];
   };
diff --git a/nixpkgs/pkgs/applications/networking/linssid/default.nix b/nixpkgs/pkgs/applications/networking/linssid/default.nix
index 090f53cffb62..72128a5ef95c 100644
--- a/nixpkgs/pkgs/applications/networking/linssid/default.nix
+++ b/nixpkgs/pkgs/applications/networking/linssid/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, qtbase, qtsvg, qmake, pkg-config, boost, wirelesstools, iw, qwt, wrapQtAppsHook }:
+{ lib, stdenv, fetchurl, qtbase, qtsvg, qmake, pkg-config, boost, wirelesstools, iw, qwt6_1, wrapQtAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "linssid";
@@ -10,12 +10,12 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkg-config qmake wrapQtAppsHook ];
-  buildInputs = [ qtbase qtsvg boost qwt ];
+  buildInputs = [ qtbase qtsvg boost qwt6_1 ];
 
   patches = [ ./0001-unbundled-qwt.patch ];
 
   postPatch = ''
-    sed -e "s|/usr/include/qt5.*$|& ${qwt}/include|" -i linssid-app/linssid-app.pro
+    sed -e "s|/usr/include/qt5.*$|& ${qwt6_1}/include|" -i linssid-app/linssid-app.pro
     sed -e "s|/usr/include/|/nonexistent/|g" -i linssid-app/*.pro
     sed -e 's|^LIBS .*= .*libboost_regex.a|LIBS += -lboost_regex|' \
         -e "s|/usr|$out|g" \
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/alot/default.nix b/nixpkgs/pkgs/applications/networking/mailreaders/alot/default.nix
index 3d09711fb3cc..cb49829dce07 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/alot/default.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/alot/default.nix
@@ -9,13 +9,7 @@
 , withManpage ? false
 }:
 
-with python3.pkgs;
-let
-  notmuch2 = callPackage ./notmuch.nix {
-    inherit notmuch;
-  };
-in
-buildPythonApplication rec {
+with python3.pkgs; buildPythonApplication rec {
   pname = "alot";
   version = "0.10";
 
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix b/nixpkgs/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix
index 4d4e33c6373c..db7771bc3c9f 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "evolution-ews";
-  version = "3.42.4";
+  version = "3.44.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "gpIW4GBXT0GCtV7Q8EfdEeK56gCACi+PJ/jbwQkVQbk=";
+    sha256 = "q4Cg6eLOdn+56EruBl0Ote9QLNebLiykUeyoQpIpeoA=";
   };
 
   nativeBuildInputs = [ cmake gettext intltool pkg-config ];
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix b/nixpkgs/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix
index 9aac3db3594c..2fae122fc1b6 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , cmake
 , ninja
 , intltool
@@ -25,6 +26,7 @@
 , gcr
 , sqlite
 , gnome
+, gnome-desktop
 , librsvg
 , gdk-pixbuf
 , libsecret
@@ -32,6 +34,8 @@
 , nspr
 , icu
 , libcanberra-gtk3
+, geocode-glib
+, cmark
 , bogofilter
 , gst_all_1
 , procps
@@ -42,11 +46,11 @@
 
 stdenv.mkDerivation rec {
   pname = "evolution";
-  version = "3.42.4";
+  version = "3.44.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/evolution/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "+oprem1GsinbXfIv3nZCVFIjV/4b7NexjlNt/piJCmU=";
+    sha256 = "3yHT31Ik36hC6ikO/82QKv1LFBhgik37aQejt9TZlPk=";
   };
 
   nativeBuildInputs = [
@@ -68,7 +72,7 @@ stdenv.mkDerivation rec {
     gdk-pixbuf
     glib
     glib-networking
-    gnome.gnome-desktop
+    gnome-desktop
     gsettings-desktop-schemas
     gst_all_1.gst-plugins-base
     gst_all_1.gstreamer
@@ -77,6 +81,8 @@ stdenv.mkDerivation rec {
     highlight
     icu
     libcanberra-gtk3
+    geocode-glib
+    cmark
     libgdata
     libgweather
     libical
@@ -106,6 +112,7 @@ stdenv.mkDerivation rec {
     "-DWITH_SA_LEARN=${spamassassin}/bin/sa-learn"
     "-DWITH_BOGOFILTER=${bogofilter}/bin/bogofilter"
     "-DWITH_OPENLDAP=${openldap}"
+    "-DWITH_GWEATHER4=ON"
   ];
 
   requiredSystemFeatures = [
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/himalaya/default.nix b/nixpkgs/pkgs/applications/networking/mailreaders/himalaya/default.nix
index 1c2d41100863..91161e5ab14a 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/himalaya/default.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/himalaya/default.nix
@@ -12,16 +12,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "himalaya";
-  version = "0.5.8";
+  version = "0.5.10";
 
   src = fetchFromGitHub {
     owner = "soywod";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Ejaspj0YpkGmfO1omOhx8ZDg77J7NqC32mw5Cd3K1FM=";
+    sha256 = "sha256-CXchZbXX7NH2ZXeAoPph3qxxdcAdDVZLBmOMwxFu+Yo=";
   };
 
-  cargoSha256 = "sha256-xce2iHrqTxIirrut4dN7526pjE4T+ruaDS44jr+KeGs=";
+  cargoSha256 = "sha256-sSQX7DHDgh1eO1Dwn1f0m51Bl2ZG1daRtrnYvsvPOkg=";
 
   nativeBuildInputs = lib.optionals enableCompletions [ installShellFiles ]
     ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ pkg-config ];
@@ -34,6 +34,8 @@ rustPlatform.buildRustPackage rec {
       openssl
     ];
 
+  # flag added because without end-to-end testing is ran which requires
+  # additional tooling and servers to test
   cargoTestFlags = [ "--lib" ];
 
   postInstall = lib.optionalString enableCompletions ''
@@ -45,10 +47,10 @@ rustPlatform.buildRustPackage rec {
   '';
 
   meta = with lib; {
-    description = "CLI email client written in Rust";
+    description = "Command-line interface for email management";
     homepage = "https://github.com/soywod/himalaya";
     changelog = "https://github.com/soywod/himalaya/blob/v${version}/CHANGELOG.md";
     license = licenses.bsdOriginal;
-    maintainers = with maintainers; [ yanganto ];
+    maintainers = with maintainers; [ toastal yanganto ];
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/mutt/default.nix b/nixpkgs/pkgs/applications/networking/mailreaders/mutt/default.nix
index af05bfe884c3..9904e2db362d 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/mutt/default.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/mutt/default.nix
@@ -27,11 +27,11 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "mutt";
-  version = "2.2.1";
+  version = "2.2.2";
 
   src = fetchurl {
     url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz";
-    sha256 = "1ddbhwsycfpf430k52l5gggywd09h10hwcwzpydam43c5ga30vdp";
+    sha256 = "1k0ghbpc4gn3sydbw10xv9djin9grk1pkxdwynrw0iknyc68gphh";
   };
 
   patches = optional smimeSupport (fetchpatch {
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/notmuch/default.nix b/nixpkgs/pkgs/applications/networking/mailreaders/notmuch/default.nix
index 184804a87888..e89216802e50 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -62,7 +62,12 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
   makeFlags = [ "V=1" ];
 
-  outputs = [ "out" "man" "info" ]
+  postConfigure = ''
+    mkdir ${placeholder "bindingconfig"}
+    cp bindings/python-cffi/_notmuch_config.py ${placeholder "bindingconfig"}/
+  '';
+
+  outputs = [ "out" "man" "info" "bindingconfig" ]
     ++ lib.optional withEmacs "emacs"
     ++ lib.optional withRuby "ruby";
 
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird/packages.nix b/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
index 3ab0c58ecc5e..e2d4a76df7d0 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
+++ b/nixpkgs/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
@@ -8,7 +8,7 @@ let
 in
 
 rec {
-  thunderbird = common rec {
+  thunderbird = (common rec {
     pname = "thunderbird";
     version = "91.7.0";
     application = "comm/mail";
@@ -17,7 +17,7 @@ rec {
       url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
       sha512 = "2afaee16f155edcb0bdb46ebe282a733cf041ec6f562aebd06f8b675e46917f6f500fcc532fc54d74f3f4b0b489a88934a2c6c304f849873de4bc2690b9056a0";
     };
-    patches = [
+    extraPatches = [
       # The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`.
       ./no-buildconfig.patch
     ];
@@ -35,5 +35,7 @@ rec {
     updateScript = callPackage ./update.nix {
       attrPath = "thunderbird-unwrapped";
     };
+  }).override {
+    pgoSupport = false; # console.warn: feeds: "downloadFeed: network connection unavailable"
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/misc/zammad/default.nix b/nixpkgs/pkgs/applications/networking/misc/zammad/default.nix
index 21c9b98a01fb..ca5e2222c8e1 100644
--- a/nixpkgs/pkgs/applications/networking/misc/zammad/default.nix
+++ b/nixpkgs/pkgs/applications/networking/misc/zammad/default.nix
@@ -10,6 +10,8 @@
 , ruby_2_7
 , postgresql
 , imlib2
+, jq
+, moreutils
 , nodejs
 , yarn
 , yarn2nix-moretea
@@ -19,7 +21,7 @@
 
 let
   pname = "zammad";
-  version = "5.0.2";
+  version = "5.1.0";
 
   src = applyPatches {
 
@@ -31,6 +33,7 @@ let
       sed -i -e "s|ruby '2.7.4'|ruby '${ruby_2_7.version}'|" Gemfile
       sed -i -e "s|ruby 2.7.4p191|ruby ${ruby_2_7.version}|" Gemfile.lock
       sed -i -e "s|2.7.4|${ruby_2_7.version}|" .ruby-version
+      ${jq}/bin/jq '. += {name: "Zammad", version: "${version}"}' package.json | ${moreutils}/bin/sponge package.json
     '';
   };
 
@@ -70,6 +73,7 @@ let
       };
       rszr = attrs: {
         buildInputs = [ imlib2 imlib2.dev ];
+        buildFlags = [ "--without-imlib2-config" ];
       };
       mini_racer = attrs: {
         buildFlags = [
diff --git a/nixpkgs/pkgs/applications/networking/misc/zammad/gemset.nix b/nixpkgs/pkgs/applications/networking/misc/zammad/gemset.nix
index 57a54ef48395..2f9e77d42531 100644
--- a/nixpkgs/pkgs/applications/networking/misc/zammad/gemset.nix
+++ b/nixpkgs/pkgs/applications/networking/misc/zammad/gemset.nix
@@ -1,271 +1,216 @@
 {
   aasm = {
-    dependencies = [ "concurrent-ruby" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["concurrent-ruby"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "05j0rdhdzc628v5nyzrazp4704hh96j5sjbn48zxyk4v3a61f4m2";
       type = "gem";
     };
     version = "5.2.0";
   };
   actioncable = {
-    dependencies = [ "actionpack" "nio4r" "websocket-driver" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["actionpack" "nio4r" "websocket-driver"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1vv8dq95apmwsnam1l2c62ayjr2jwi5m24bcd2l4p324cqmds3ir";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1csrylhksddsarr6wcsiyd0sni106djabswz5gwqqgm2hp992hkz";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   actionmailbox = {
-    dependencies = [ "actionpack" "activejob" "activerecord" "activestorage" "activesupport" "mail" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["actionpack" "activejob" "activerecord" "activestorage" "activesupport" "mail"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0q8bhmdi1jgybs18vaa3hpmydhw8mjx8hcpjlravkwc78ckl19vy";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wm2g9f9vppxpv7dyvi5y6dg2k3cdd3x8635cswhpxlfd707sr4p";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   actionmailer = {
-    dependencies = [ "actionpack" "actionview" "activejob" "mail" "rails-dom-testing" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1nximq0hwcy5vhywsryn6y67zaqwhk5gk44d0rgyisbwl6s34zim";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1iv2hgqynqlynl2gfaxazb5zzz7qdvdbvl0w695s9ry36ap6mlyi";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   actionpack = {
-    dependencies = [ "actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer" ];
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "00vsfvrbw1dx1xpvpca5szk1z9qqv5g00c2gyrvskvxbgn3298bg";
+      remotes = ["https://rubygems.org"];
+      sha256 = "01fc5lhy6g602xpwdc4pb0sbsfy3kpkc6w99k3fcrq1p14d4kbv5";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   actiontext = {
-    dependencies = [ "actionpack" "activerecord" "activestorage" "activesupport" "nokogiri" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["actionpack" "activerecord" "activestorage" "activesupport" "nokogiri"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "00yz34p7syz3wr7sbgn81b5qf97hv5lm2vbbf5xiny9cj1y8hrll";
+      remotes = ["https://rubygems.org"];
+      sha256 = "11n4aaxwjq0iaddvlcdpfip1dpva7hhl2bd883gm0ijw2klaf17n";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   actionview = {
-    dependencies = [ "activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer" ];
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "03dqdl0qkwmkxf6xar9lrxp547hj72ysqg6i13kw8jg8mprk1xk1";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1gjcbrav25klh8gfj29hfd352if746v7rww77m1mj2adak02sjd1";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   activejob = {
-    dependencies = [ "activesupport" "globalid" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["activesupport" "globalid"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0r4dk44x1kn16bsi4h9q13sq65waa940nrnf4i0wd2cssk34sx3i";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pvf0hl372y6lsar7svykbvdb3rn5jbis8z7vnqm57l2wvzzp6gv";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   activemodel = {
-    dependencies = [ "activesupport" ];
-    groups = [ "default" "nulldb" ];
-    platforms = [ ];
+    dependencies = ["activesupport"];
+    groups = ["default" "nulldb"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1m254z419v5n6flqvvf923p5hxwqv43x6nr8gzaw378vl68sp8ff";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kznd1n0rffhd0vvhxzqdm4m9qp3y7xgqz34vmq2919m3zygqihx";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   activerecord = {
-    dependencies = [ "activemodel" "activesupport" ];
-    groups = [ "default" "nulldb" ];
-    platforms = [ ];
+    dependencies = ["activemodel" "activesupport"];
+    groups = ["default" "nulldb"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1q48dsxkvlrr34w6hap2dyr1ym68azkmnhllng60pxaizml89azl";
+      remotes = ["https://rubygems.org"];
+      sha256 = "19kw1mcd6a1lyy8k3wk55pb2qdavwwpqn63ikfyb90ylvnr36g2q";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   activerecord-import = {
-    dependencies = [ "activerecord" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["activerecord"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "17ydad9gcsh0c9ny68fyvxmh6rbld4pyvyabnc7882678dnvfy8i";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nagy0b82ims0pc9mvg1fq8hlrnn6z8r9kpaas83f4yyrwr9h359";
       type = "gem";
     };
-    version = "1.2.0";
+    version = "1.3.0";
   };
   activerecord-nulldb-adapter = {
-    dependencies = [ "activerecord" ];
-    groups = [ "nulldb" ];
-    platforms = [ ];
+    dependencies = ["activerecord"];
+    groups = ["nulldb"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1iybn9vafw9vcdi966yidj4zk5vy6b0gg0zk39v1r0kgj9n9qm1v";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c0f7fn06fzc7pn0dydchnq6xgcaga9rbzhmin5z5xvg5nkv783c";
       type = "gem";
     };
-    version = "0.7.0";
+    version = "0.8.0";
   };
   activerecord-session_store = {
-    dependencies = [ "actionpack" "activerecord" "multi_json" "rack" "railties" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["actionpack" "activerecord" "multi_json" "rack" "railties"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "06ddhz1b2yg72iv09n48gcd3ix5da7hxlzi7vvj13nrps2qwlffg";
       type = "gem";
     };
     version = "2.0.0";
   };
   activestorage = {
-    dependencies = [ "actionpack" "activejob" "activerecord" "marcel" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["actionpack" "activejob" "activerecord" "marcel"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1g6h5k478d9v14w09wnhflsk8xj06clkd6xbfw4sxbbww5n8vl55";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ync0w5mnmyk3pczc0k44iic35a5ij25fi5jwjhl9k7jr6wdhi2b";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   activesupport = {
-    dependencies = [ "concurrent-ruby" "i18n" "minitest" "tzinfo" "zeitwerk" ];
-    groups = [ "assets" "default" "development" "nulldb" "test" ];
-    platforms = [ ];
+    dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo" "zeitwerk"];
+    groups = ["assets" "default" "development" "nulldb" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1ldrpgy4gfqykzavgdp0svsm41hkzfi2aaq8as9lqd0sq19mgpqx";
+      remotes = ["https://rubygems.org"];
+      sha256 = "15pwg27li00rrzq4drmxx9l4w8fmxapnigvhh9m4xl0asmy1k207";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   acts_as_list = {
-    dependencies = [ "activerecord" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["activerecord"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "12p22h59c45dnccb51pqk275ziyi502azf9w3qcnkcsq827ma5jm";
       type = "gem";
     };
     version = "1.0.4";
   };
   addressable = {
-    dependencies = [ "public_suffix" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["public_suffix"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "022r3m9wdxljpbya69y2i3h9g3dhhfaqzidf95m6qjzms792jvgp";
       type = "gem";
     };
     version = "2.8.0";
   };
   argon2 = {
-    dependencies = [ "ffi" "ffi-compiler" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["ffi" "ffi-compiler"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0285wr6ai2c1qswr67pybpbj28dv5nv1i4597hg3vg9w1fb7gmzl";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0g4qsdq072fyrsa7r0sg456dhrb017jmzdbnnzl2c80ha40bbmhg";
       type = "gem";
     };
-    version = "2.0.3";
+    version = "2.1.1";
   };
   ast = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "04nc8x27hlzlrr5c2gn7mar4vdr0apw5xg22wp6m8dx3wqr04a0y";
       type = "gem";
     };
     version = "2.4.2";
   };
-  async = {
-    dependencies = [ "console" "nio4r" "timers" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1lh36bsb41vllyrkiffs8qba2ilcjl7nrywizrb8ffrix50rfjn9";
-      type = "gem";
-    };
-    version = "1.29.1";
-  };
-  async-http = {
-    dependencies = [ "async" "async-io" "async-pool" "protocol-http" "protocol-http1" "protocol-http2" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1a1si0iz1m6b1lzd5f8cvf1cbniy8kqc06n10bn74l1ppx8a6lc2";
-      type = "gem";
-    };
-    version = "0.56.3";
-  };
-  async-http-faraday = {
-    dependencies = [ "async-http" "faraday" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0ndynkfknabv6m9wzcmdnj4r4bhlxqkg9c6rzsjc1pk8q057kslv";
-      type = "gem";
-    };
-    version = "0.11.0";
-  };
-  async-io = {
-    dependencies = [ "async" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1z58cgnw79idasx63knyjqihxp5v4wrp7r4jf251a8kyykwdd83a";
-      type = "gem";
-    };
-    version = "1.32.1";
-  };
-  async-pool = {
-    dependencies = [ "async" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1rq62gnhiy4a275wid465xqv6f6xsmp1zd9002xw4b37y83y5rqg";
-      type = "gem";
-    };
-    version = "0.3.7";
-  };
   autodiscover = {
-    dependencies = [ "httpclient" "logging" "nokogiri" "nori" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["httpclient" "logging" "nokogiri" "nori"];
+    groups = ["default"];
+    platforms = [];
     source = {
       fetchSubmodules = false;
       rev = "ee9b53dfa797ce6d4f970b82beea7fbdd2df56bb";
@@ -276,1042 +221,999 @@
     version = "1.0.2";
   };
   autoprefixer-rails = {
-    dependencies = [ "execjs" ];
-    groups = [ "assets" ];
-    platforms = [ ];
+    dependencies = ["execjs"];
+    groups = ["assets"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1bj8ajlq6ygyqxz7ykykaxfr4jn0ivc95sl64wrycwz7hxz29vda";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ssfcicmmwx50491wns3aa9i0yamp2x6qk04yrgn51h9kzhp7frf";
       type = "gem";
     };
-    version = "10.3.3.0";
+    version = "10.4.2.0";
   };
   binding_of_caller = {
-    dependencies = [ "debug_inspector" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["debug_inspector"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "078n2dkpgsivcf0pr50981w95nfc2bsrp3wpf9wnxz1qsp8jbb9s";
       type = "gem";
     };
     version = "1.0.0";
   };
   biz = {
-    dependencies = [ "clavius" "tzinfo" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["clavius" "tzinfo"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1n2d7cs9jlnpi75nbssv77qlw0jsqnixaikpxsrbxz154q43gvlc";
       type = "gem";
     };
     version = "1.8.2";
   };
   bootsnap = {
-    dependencies = [ "msgpack" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["msgpack"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1ndjra3h86dq28njm2swmaw6n3vsywrycrf7i5iy9l8hrhfhv4x2";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bjhh8pngmvnrsri2h6a753pgv0xdkbbgi1bmv6c7q137sp37jbg";
       type = "gem";
     };
-    version = "1.9.1";
+    version = "1.11.1";
   };
   brakeman = {
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0y71fqqd0azy5rn78fwiz9px0mql23zrl0ij0dzdkx22l4cscpb0";
+      remotes = ["https://rubygems.org"];
+      sha256 = "197bvfm4rpczyrpbjzn7zh4q6rxigwnxnnmvvgfg9451k3jjygyy";
       type = "gem";
     };
-    version = "5.1.1";
+    version = "5.2.1";
   };
   browser = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0g4bcpax07kqqr9cp7cjc7i0pcij4nqpn1rdsg2wdwhzf00m6x32";
       type = "gem";
     };
     version = "5.3.1";
   };
   buftok = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1rzsy1vy50v55x9z0nivf23y0r9jkmq6i130xa75pq9i8qrn1mxs";
       type = "gem";
     };
     version = "0.2.0";
   };
   builder = {
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr";
       type = "gem";
     };
     version = "3.2.4";
   };
   byebug = {
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0nx3yjf4xzdgb8jkmk2344081gqr22pgjqnmjg2q64mj5d6r9194";
       type = "gem";
     };
     version = "11.1.3";
   };
   capybara = {
-    dependencies = [ "addressable" "mini_mime" "nokogiri" "rack" "rack-test" "regexp_parser" "xpath" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["addressable" "matrix" "mini_mime" "nokogiri" "rack" "rack-test" "regexp_parser" "xpath"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1viqcpsngy9fqjd68932m43ad6xj656d1x33nx9565q57chgi29k";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1dv75hs45456mi76h720gxk959gpg4f6091hmk42y0ln6kp2x7i0";
       type = "gem";
     };
-    version = "3.35.3";
+    version = "3.36.0";
   };
   childprocess = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1ic028k8xgm2dds9mqnvwwx3ibaz32j8455zxr9f4bcnviyahya5";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lvcp8bsd35g57f7wz4jigcw2sryzzwrpcgjwwf3chmjrjcww5in";
       type = "gem";
     };
-    version = "3.0.0";
+    version = "4.1.0";
   };
   chunky_png = {
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1znw5x86hmm9vfhidwdsijz8m38pqgmv98l9ryilvky0aldv7mc9";
       type = "gem";
     };
     version = "1.4.0";
   };
   clavius = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0y58v8k860vafm1psm69f2ndcqmcifyvswsjdy8bxbxy30zrgad1";
       type = "gem";
     };
     version = "1.0.4";
   };
   clearbit = {
-    dependencies = [ "nestful" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["nestful"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1ccgvxzgpll1wr5i9wjm1h0m2z600j6c4yf6pww423qhg8a25lbl";
       type = "gem";
     };
     version = "0.3.3";
   };
   coderay = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0jvxqxzply1lwp7ysn94zjhh57vc14mcshw1ygw14ib8lhc00lyw";
       type = "gem";
     };
     version = "1.1.3";
   };
   coffee-rails = {
-    dependencies = [ "coffee-script" "railties" ];
-    groups = [ "assets" ];
-    platforms = [ ];
+    dependencies = ["coffee-script" "railties"];
+    groups = ["assets"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "170sp4y82bf6nsczkkkzypzv368sgjg6lfrkib4hfjgxa6xa3ajx";
       type = "gem";
     };
     version = "5.0.0";
   };
   coffee-script = {
-    dependencies = [ "coffee-script-source" "execjs" ];
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["coffee-script-source" "execjs"];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0rc7scyk7mnpfxqv5yy4y5q1hx3i7q3ahplcp4bq2g5r24g2izl2";
       type = "gem";
     };
     version = "2.4.1";
   };
   coffee-script-source = {
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1907v9q1zcqmmyqzhzych5l7qifgls2rlbnbhy5vzyr7i7yicaz1";
       type = "gem";
     };
     version = "1.12.2";
   };
   coffeelint = {
-    dependencies = [ "coffee-script" "execjs" "json" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["coffee-script" "execjs" "json"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0k6nqia44m6jzzkav6wz1aafjipbygla3g6nl6i7sks854bwgdg1";
       type = "gem";
     };
     version = "1.16.1";
   };
   composite_primary_keys = {
-    dependencies = [ "activerecord" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["activerecord"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "08w8rns5dgjmvavqf1apfbd59dyqyv4igni940rklnqps297w2bn";
       type = "gem";
     };
     version = "12.0.10";
   };
   concurrent-ruby = {
-    groups = [ "assets" "default" "development" "nulldb" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "nulldb" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0nwad3211p7yv9sda31jmbyw6sdafzmdi2i2niaz6f0wk5nq9h0f";
       type = "gem";
     };
     version = "1.1.9";
   };
-  console = {
-    dependencies = [ "fiber-local" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "04vhg3vnj2ky00fld4v6qywx32z4pjsa7l8i7sl1bl213s8334l9";
-      type = "gem";
-    };
-    version = "1.13.1";
-  };
-  coveralls = {
-    dependencies = [ "multi_json" "rest-client" "simplecov" "term-ansicolor" "thor" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0b97bp3kndl1glfx8rlm19b1vxphirvkrjqn5hn9y1p975iwhl3w";
-      type = "gem";
-    };
-    version = "0.7.1";
-  };
   crack = {
-    dependencies = [ "rexml" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["rexml"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1cr1kfpw3vkhysvkk3wg7c54m75kd68mbm9rs5azdjdq57xid13r";
       type = "gem";
     };
     version = "0.4.5";
   };
   crass = {
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0pfl5c0pyqaparxaqxi6s4gfl21bdldwiawrc0aknyvflli60lfw";
       type = "gem";
     };
     version = "1.0.6";
   };
   csv = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "079al4y5rjgx12s7rg08rnf9w1n51a7ghycvmr7vhw6r6i81ry8s";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xqp6d3k3qcfybfibv6jx315800j1zvm1wwrdmfbs35g3wi9sb2c";
       type = "gem";
     };
-    version = "3.2.0";
+    version = "3.2.2";
   };
   daemons = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "07cszb0zl8mqmwhc8a2yfg36vi6lbgrp4pa5bvmryrpcz9v6viwg";
       type = "gem";
     };
     version = "1.4.1";
   };
   dalli = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0br39scmr187w3ifl5gsddl2fhq6ahijgw6358plqjdzrizlg764";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wb7lqiza98cb76bq1jwvzr1j0r2nxkihaaa3dk17wjshd02jyn3";
       type = "gem";
     };
-    version = "2.7.11";
+    version = "3.2.1";
   };
   debug_inspector = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "01l678ng12rby6660pmwagmyg8nccvjfgs3487xna7ay378a59ga";
       type = "gem";
     };
     version = "1.1.0";
   };
   delayed_job = {
-    dependencies = [ "activesupport" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["activesupport"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "19ym3jw2jj1pxm6p22x2mpf69sdxiw07ddr69v92ccgg6d7q87rh";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1f1vzxi1xcm1mq7nw3xr9j4q6a5pr5xply15s0n1hl1gahsgnlfa";
       type = "gem";
     };
-    version = "4.1.9";
+    version = "4.1.10";
   };
   delayed_job_active_record = {
-    dependencies = [ "activerecord" "delayed_job" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["activerecord" "delayed_job"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0n6wjvk0yfkp1z19kvma7piasw1xgjh5ls51sf24c8g1jlmkmvdh";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wh1146hg0b85zv336dn00jx9mzw5ma0maj67is7bvz5l35hd6yk";
       type = "gem";
     };
-    version = "4.1.6";
+    version = "4.1.7";
   };
   deprecation_toolkit = {
-    dependencies = [ "activesupport" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["activesupport"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1fh4d98irhph3ri7c2rrvvmmjd4z14702r8baq9flh5f34dap8d8";
       type = "gem";
     };
     version = "1.5.1";
   };
   diff-lcs = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0m925b8xc6kbpnif9dldna24q1szg4mk0fvszrki837pfn46afmz";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rwvjahnp7cpmracd8x732rjgnilqv2sx7d1gfrysslc3h039fa9";
       type = "gem";
     };
-    version = "1.4.4";
+    version = "1.5.0";
   };
   diffy = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0nrg7kpgz6cn1gv2saj2fa5sfiykamvd7vn9lw2v625k7pjwf31l";
       type = "gem";
     };
     version = "3.4.0";
   };
-  docile = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1lxqxgq71rqwj1lpl9q1mbhhhhhhdkkj7my341f2889pwayk85sz";
-      type = "gem";
-    };
-    version = "1.4.0";
-  };
   domain_name = {
-    dependencies = [ "unf" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["unf"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0lcqjsmixjp52bnlgzh4lg9ppsk52x9hpwdjd53k8jnbah2602h0";
       type = "gem";
     };
     version = "0.5.20190701";
   };
   doorkeeper = {
-    dependencies = [ "railties" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["railties"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1hnwd7by65yyiz90ycs3pj4f78s7bnl09nzs1g1vs62509j4nz19";
+      remotes = ["https://rubygems.org"];
+      sha256 = "188ybg2cgghcp5r1jpfnbx3anf0z8fzlla72jra0vgwkdylk7qkz";
       type = "gem";
     };
-    version = "5.5.2";
+    version = "5.5.4";
   };
   dotenv = {
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0iym172c5337sm1x2ykc2i3f961vj3wdclbyg1x6sxs3irgfsl94";
       type = "gem";
     };
     version = "2.7.6";
   };
   eco = {
-    dependencies = [ "coffee-script" "eco-source" "execjs" ];
-    groups = [ "assets" ];
-    platforms = [ ];
+    dependencies = ["coffee-script" "eco-source" "execjs"];
+    groups = ["assets"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "09jiwb7pkg0sxk730maxahra4whqw5l47zd7yg7fvd71pikdwdr0";
       type = "gem";
     };
     version = "1.0.0";
   };
   eco-source = {
-    groups = [ "assets" "default" ];
-    platforms = [ ];
+    groups = ["assets" "default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1ccxrvaac6mw5kdj1i490b5xb1wdka3a5q4jhvn8dvg41594yba1";
       type = "gem";
     };
     version = "1.1.0.rc.1";
   };
   em-websocket = {
-    dependencies = [ "eventmachine" "http_parser.rb" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["eventmachine" "http_parser.rb"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1mg1mx735a0k1l8y14ps2mxdwhi5r01ikydf34b0sp60v66nvbkb";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1a66b0kjk6jx7pai9gc7i27zd0a128gy73nmas98gjz6wjyr4spm";
       type = "gem";
     };
-    version = "0.5.2";
+    version = "0.5.3";
   };
   equalizer = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4";
       type = "gem";
     };
     version = "0.0.11";
   };
   erubi = {
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "09l8lz3j00m898li0yfsnb6ihc63rdvhw3k5xczna5zrjk104f2l";
       type = "gem";
     };
     version = "1.10.0";
   };
   eventmachine = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0wh9aqb0skz80fhfn66lbpr4f86ya2z5rx6gm5xlfhd05bj1ch4r";
       type = "gem";
     };
     version = "1.2.7";
   };
   execjs = {
-    groups = [ "assets" "development" "test" ];
-    platforms = [ ];
+    groups = ["assets" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "121h6af4i6wr3wxvv84y53jcyw2sk71j5wsncm6wq6yqrwcrk4vd";
       type = "gem";
     };
     version = "2.8.1";
   };
   factory_bot = {
-    dependencies = [ "activesupport" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["activesupport"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "04vxmjr200akcil9fqxc9ghbb9q0lyrh2q03xxncycd5vln910fi";
       type = "gem";
     };
     version = "6.2.0";
   };
   factory_bot_rails = {
-    dependencies = [ "factory_bot" "railties" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["factory_bot" "railties"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "18fhcihkc074gk62iwqgbdgc3ymim4fm0b4p3ipffy5hcsb9d2r7";
       type = "gem";
     };
     version = "6.2.0";
   };
   faker = {
-    dependencies = [ "i18n" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["i18n"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0hb9wfxyb4ss2vl2mrj1zgdk7dh4yaxghq22gbx62yxj5yb9w4zw";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1694ndj701a8q4c4bwxz53kx94ih1rr4pgr4gk7a6c8k4jsbjgwi";
       type = "gem";
     };
-    version = "2.19.0";
+    version = "2.20.0";
   };
   faraday = {
-    dependencies = [ "faraday-em_http" "faraday-em_synchrony" "faraday-excon" "faraday-httpclient" "faraday-net_http" "faraday-net_http_persistent" "faraday-patron" "faraday-rack" "multipart-post" "ruby2_keywords" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["faraday-em_http" "faraday-em_synchrony" "faraday-excon" "faraday-httpclient" "faraday-multipart" "faraday-net_http" "faraday-net_http_persistent" "faraday-patron" "faraday-rack" "faraday-retry" "ruby2_keywords"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0afhlqgby2cizcwgh7h2sq5f77q01axjbdl25bsvfwsry9n7gyyi";
+      remotes = ["https://rubygems.org"];
+      sha256 = "00palwawk897p5gypw5wjrh93d4p0xz2yl9w93yicb4kq7amh8d4";
       type = "gem";
     };
-    version = "1.8.0";
+    version = "1.10.0";
   };
   faraday-em_http = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "12cnqpbak4vhikrh2cdn94assh3yxza8rq2p9w2j34bqg5q4qgbs";
       type = "gem";
     };
     version = "1.0.0";
   };
   faraday-em_synchrony = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1vgrbhkp83sngv6k4mii9f2s9v5lmp693hylfxp2ssfc60fas3a6";
       type = "gem";
     };
     version = "1.0.0";
   };
   faraday-excon = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0h09wkb0k0bhm6dqsd47ac601qiaah8qdzjh8gvxfd376x1chmdh";
       type = "gem";
     };
     version = "1.1.0";
   };
-  faraday-http-cache = {
-    dependencies = [ "faraday" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+  faraday-httpclient = {
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0lhfwlk4mhmw9pdlgdsl2bq4x45w7s51jkxjryf18wym8iiw36g7";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fyk0jd3ks7fdn8nv3spnwjpzx2lmxmg2gh4inz3by1zjzqg33sc";
       type = "gem";
     };
-    version = "2.2.0";
+    version = "1.0.1";
   };
-  faraday-httpclient = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+  faraday-multipart = {
+    dependencies = ["multipart-post"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0fyk0jd3ks7fdn8nv3spnwjpzx2lmxmg2gh4inz3by1zjzqg33sc";
+      remotes = ["https://rubygems.org"];
+      sha256 = "03qfi9020ynf7hkdiaq01sd2mllvw7fg4qiin3pk028b4wv23j3j";
       type = "gem";
     };
-    version = "1.0.1";
+    version = "1.0.3";
   };
   faraday-net_http = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1fi8sda5hc54v1w3mqfl5yz09nhx35kglyx72w7b8xxvdr0cwi9j";
       type = "gem";
     };
     version = "1.0.1";
   };
   faraday-net_http_persistent = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0dc36ih95qw3rlccffcb0vgxjhmipsvxhn6cw71l7ffs0f7vq30b";
       type = "gem";
     };
     version = "1.2.0";
   };
   faraday-patron = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "19wgsgfq0xkski1g7m96snv39la3zxz6x7nbdgiwhg5v82rxfb6w";
       type = "gem";
     };
     version = "1.0.0";
   };
   faraday-rack = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1h184g4vqql5jv9s9im6igy00jp6mrah2h14py6mpf9bkabfqq7g";
       type = "gem";
     };
     version = "1.0.0";
   };
+  faraday-retry = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "153i967yrwnswqgvnnajgwp981k9p50ys1h80yz3q94rygs59ldd";
+      type = "gem";
+    };
+    version = "1.0.3";
+  };
   faraday_middleware = {
-    dependencies = [ "faraday" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["faraday"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0jik2kgfinwnfi6fpp512vlvs0mlggign3gkbpkg5fw1jr9his0r";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1bw8mfh4yin2xk7138rg3fhb2p5g2dlmdma88k82psah9mbmvlfy";
       type = "gem";
     };
-    version = "1.0.0";
+    version = "1.2.0";
   };
   ffi = {
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1wgvaclp4h9y8zkrgz8p2hqkrgr4j7kz0366mik0970w532cbmcq";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1862ydmclzy1a0cjbvm8dz7847d9rch495ib0zb64y84d3xd4bkg";
       type = "gem";
     };
-    version = "1.15.3";
+    version = "1.15.5";
   };
   ffi-compiler = {
-    dependencies = [ "ffi" "rake" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["ffi" "rake"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0c2caqm9wqnbidcb8dj4wd3s902z15qmgxplwyfyqbwa0ydki7q1";
       type = "gem";
     };
     version = "1.0.1";
   };
-  fiber-local = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1vrxxb09fc7aicb9zb0pmn5akggjy21dmxkdl3w949y4q05rldr9";
-      type = "gem";
-    };
-    version = "1.0.0";
-  };
   formatador = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0mprf1dwznz5ld0q1jpbyl59fwnwk6azspnd0am7zz7kfg3pxhv5";
-      type = "gem";
-    };
-    version = "0.3.0";
-  };
-  github_changelog_generator = {
-    dependencies = [ "activesupport" "async" "async-http-faraday" "faraday-http-cache" "multi_json" "octokit" "rainbow" "rake" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "04d6z2ysq3gzvpw91lq8mxmdlqcxkmvp8rw9zrzkmksh3pjdzli1";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1l06bv4avphbdmr1y4g0rqlczr38k6r65b3zghrbj2ynyhm3xqjl";
       type = "gem";
     };
-    version = "1.16.4";
+    version = "1.1.0";
   };
   gli = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1sxpixpkbwi0g1lp9nv08hb4hw9g563zwxqfxd3nqp9c1ymcv5h3";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rv8dlq9nqpias29jh40qb6xzznlk6ra41nan6s5hy56402f0k29";
       type = "gem";
     };
-    version = "2.20.1";
+    version = "2.21.0";
   };
   globalid = {
-    dependencies = [ "activesupport" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["activesupport"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0k6ww3shk3mv119xvr9m99l6ql0czq91xhd66hm8hqssb18r2lvm";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1n5yc058i8xhi1fwcp1w7mfi6xaxfmrifdb4r4hjfff33ldn8lqj";
       type = "gem";
     };
-    version = "0.5.2";
+    version = "1.0.0";
   };
   gmail_xoauth = {
-    dependencies = [ "oauth" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["oauth"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0dslnb1kffcygcbs8sqw58w6ba0maq4w7k1i7kjrqpq0kxx6wklq";
       type = "gem";
     };
     version = "0.4.2";
   };
   guard = {
-    dependencies = [ "formatador" "listen" "lumberjack" "nenv" "notiffany" "pry" "shellany" "thor" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["formatador" "listen" "lumberjack" "nenv" "notiffany" "pry" "shellany" "thor"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1zqy994fr0pf3pda0x3mmkhgnfg4hd12qp5bh1s1xm68l00viwhj";
       type = "gem";
     };
     version = "2.18.0";
   };
   guard-compat = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1zj6sr1k8w59mmi27rsii0v8xyy2rnsi09nqvwpgj1q10yq1mlis";
       type = "gem";
     };
     version = "1.2.1";
   };
   guard-livereload = {
-    dependencies = [ "em-websocket" "guard" "guard-compat" "multi_json" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["em-websocket" "guard" "guard-compat" "multi_json"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0yd74gdbbv2yz2caqwpsavzw8d5fd5y446wp8rdjw8wan0yd6k8j";
       type = "gem";
     };
     version = "2.5.2";
   };
   guard-symlink = {
-    dependencies = [ "guard" "guard-compat" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["guard" "guard-compat"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0s5lwl8v55lq0bbvj9k3fv0l4nkl0ydd7gr1k26ycs2a80cgd5mq";
       type = "gem";
     };
     version = "0.1.1";
   };
   hashdiff = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1nynpl0xbj0nphqx1qlmyggq58ms1phf5i03hk64wcc0a17x1m1c";
       type = "gem";
     };
     version = "1.0.1";
   };
   hashie = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "02bsx12ihl78x0vdm37byp78jjw2ff6035y7rrmbd90qxjwxr43q";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1nh3arcrbz1rc1cr59qm53sdhqm137b258y8rcb4cvd3y98lwv4x";
       type = "gem";
     };
-    version = "4.1.0";
+    version = "5.0.0";
   };
   hiredis = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "04jj8k7lxqxw24sp0jiravigdkgsyrpprxpxm71ba93x1wr2w1bz";
       type = "gem";
     };
     version = "0.6.3";
   };
   htmlentities = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1nkklqsn8ir8wizzlakncfv42i32wc0w9hxp00hvdlgjr7376nhj";
       type = "gem";
     };
     version = "4.3.4";
   };
   http = {
-    dependencies = [ "addressable" "http-cookie" "http-form_data" "http-parser" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["addressable" "http-cookie" "http-form_data" "http-parser"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0z8vmvnkrllkpzsxi94284di9r63g9v561a16an35izwak8g245y";
       type = "gem";
     };
     version = "4.4.1";
   };
   http-accept = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "09m1facypsdjynfwrcv19xcb1mqg8z6kk31g8r33pfxzh838c9n6";
       type = "gem";
     };
     version = "1.7.0";
   };
   http-cookie = {
-    dependencies = [ "domain_name" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["domain_name"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "19370bc97gsy2j4hanij246hv1ddc85hw0xjb6sj7n1ykqdlx9l9";
       type = "gem";
     };
     version = "1.0.4";
   };
   http-form_data = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1wx591jdhy84901pklh1n9sgh74gnvq1qyqxwchni1yrc49ynknc";
       type = "gem";
     };
     version = "2.3.0";
   };
   http-parser = {
-    dependencies = [ "ffi-compiler" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["ffi-compiler"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "18qqvckvqjffh88hfib6c8pl9qwk9gp89w89hl3f2s1x8hgyqka1";
       type = "gem";
     };
     version = "1.2.3";
   };
   "http_parser.rb" = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "15nidriy0v5yqfjsgsra51wmknxci2n2grliz78sf9pga3n0l7gi";
       type = "gem";
     };
     version = "0.6.0";
   };
   httpclient = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "19mxmvghp7ki3klsxwrlwr431li7hm1lczhhj8z4qihl2acy8l99";
       type = "gem";
     };
     version = "2.8.3";
   };
   i18n = {
-    dependencies = [ "concurrent-ruby" ];
-    groups = [ "assets" "default" "development" "nulldb" "test" ];
-    platforms = [ ];
+    dependencies = ["concurrent-ruby"];
+    groups = ["assets" "default" "development" "nulldb" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0g2fnag935zn2ggm5cn6k4s4xvv53v2givj1j90szmvavlpya96a";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0b2qyvnk4yynlg17ymkq4g5xgr275637fhl1mjh0valw3cb1fhhg";
       type = "gem";
     };
-    version = "1.8.10";
+    version = "1.10.0";
   };
   icalendar = {
-    dependencies = [ "ice_cube" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["ice_cube"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1wv5wq6pzq6434bnxfanvijswj2rnfvjmgisj1qg399mc42g46ls";
       type = "gem";
     };
     version = "2.7.1";
   };
   icalendar-recurrence = {
-    dependencies = [ "icalendar" "ice_cube" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["icalendar" "ice_cube"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "06li3cdbwkd9y2sadjlbwj54blqdaa056yx338s4ddfxywrngigh";
       type = "gem";
     };
     version = "1.1.3";
   };
   ice_cube = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1rzfydzgy6jppqvzzr76skfk07nmlszpcjzzn4wlzpsgmagmf0wq";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1dri4mcya1fwzrr9nzic8hj1jr28a2szjag63f9k7p2bw9fpw4fs";
       type = "gem";
     };
-    version = "0.16.3";
+    version = "0.16.4";
   };
   inflection = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0mfkk0j0dway3p4gwzk8fnpi4hwaywl2v0iywf1azf98zhk9pfnf";
       type = "gem";
     };
     version = "1.0.0";
   };
   iniparse = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1wb1qy4i2xrrd92dc34pi7q7ibrjpapzk9y465v0n9caiplnb89n";
       type = "gem";
     };
     version = "1.5.0";
   };
   interception = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "01vrkn28psdx1ysh5js3hn17nfp1nvvv46wc1pwqsakm6vb1hf55";
       type = "gem";
     };
     version = "0.5";
   };
   json = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0lrirj0gw420kw71bjjlqkqhqbrplla61gbv1jzgsz6bv90qr3ci";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1z9grvjyfz16ag55hg522d3q4dh07hf391sf9s96npc0vfi85xkz";
       type = "gem";
     };
-    version = "2.5.1";
+    version = "2.6.1";
   };
   jwt = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "036i5fc09275ms49mw43mh4i9pwaap778ra2pmx06ipzyyjl6bfs";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bg8pjx0mpvl10k6d8a6gc8dzlv2z5jkqcjbjcirnk032iriq838";
       type = "gem";
     };
-    version = "2.2.3";
+    version = "2.3.0";
   };
   kgio = {
-    groups = [ "default" "unicorn" ];
-    platforms = [ ];
+    groups = ["default" "unicorn"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1ipzvw7n0kz1w8rkqybyxvf3hb601a770khm0xdqm68mc4aa59xx";
       type = "gem";
     };
     version = "2.11.4";
   };
   koala = {
-    dependencies = [ "addressable" "faraday" "json" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["addressable" "faraday" "json" "rexml"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1k7nlif8nwgb6bfkclry41xklaf4rqf18ycgq63sgkgj6zdpda4w";
+      remotes = ["https://rubygems.org"];
+      sha256 = "028cfg3i8kysv7vvrscakx5b809jbmlrbykr727sngh3hxq1wknb";
       type = "gem";
     };
-    version = "3.0.0";
+    version = "3.1.0";
   };
   libv8 = {
-    groups = [ "mini_racer" ];
-    platforms = [ ];
+    groups = ["mini_racer"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0317sr3nrl51sp844bps71smkrwim3fjn47wdfpbycixnbxspivm";
       type = "gem";
     };
     version = "8.4.255.0";
   };
   listen = {
-    dependencies = [ "rb-fsevent" "rb-inotify" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["rb-fsevent" "rb-inotify"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0h2v34xhi30w0d9gfzds2w6v89grq2gkpgvmdj9m8x1ld1845xnj";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0agybr37wpjv3xy4ipcmsvsibgdgphzrwbvcj4vfiykpmakwm01v";
       type = "gem";
     };
-    version = "3.5.1";
+    version = "3.7.1";
   };
   little-plugger = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1frilv82dyxnlg8k1jhrvyd73l6k17mxc5vwxx080r4x1p04gwym";
       type = "gem";
     };
     version = "1.1.4";
   };
   logging = {
-    dependencies = [ "little-plugger" "multi_json" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["little-plugger" "multi_json"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0pkmhcxi8lp74bq5gz9lxrvaiv5w0745kk7s4bw2b1x07qqri0n9";
       type = "gem";
     };
     version = "2.3.0";
   };
   loofah = {
-    dependencies = [ "crass" "nokogiri" ];
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["crass" "nokogiri"];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1nqcya57x2n58y1dify60i0dpla40n4yir928khp4nj5jrn9mgmw";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0z8bdcmw66j3dy6ivcc02yq32lx3n9bavx497llln8qy014xjm4w";
       type = "gem";
     };
-    version = "2.12.0";
+    version = "2.14.0";
   };
   lumberjack = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "06pybb23hypc9gvs2p839ildhn26q68drb6431ng3s39i3fkkba8";
       type = "gem";
     };
     version = "1.2.8";
   };
   mail = {
-    dependencies = [ "mini_mime" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["mini_mime"];
+    groups = ["default"];
+    platforms = [];
     source = {
       fetchSubmodules = false;
       rev = "9265cf75bbe376f595944bd10d2dd953f863e765";
@@ -1322,1513 +1224,1385 @@
     version = "2.7.2.edge";
   };
   marcel = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0bp001p687nsa4a8sp3q1iv8pfhs24w7s3avychjp64sdkg6jxq3";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kky3yiwagsk8gfbzn3mvl2fxlh3b39v6nawzm4wpjs6xxvvc4x0";
       type = "gem";
     };
-    version = "1.0.1";
+    version = "1.0.2";
+  };
+  matrix = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1h2cgkpzkh3dd0flnnwfq6f3nl2b1zff9lvqz8xs853ssv5kq23i";
+      type = "gem";
+    };
+    version = "0.4.2";
   };
   memoizable = {
-    dependencies = [ "thread_safe" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["thread_safe"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0v42bvghsvfpzybfazl14qhkrjvx0xlmxz0wwqc960ga1wld5x5c";
       type = "gem";
     };
     version = "0.4.2";
   };
   messagebird-rest = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1nj994h4ziwb72g54ma3ivb3rbfkv3yk81wwcmgykl2ik3g7q2bm";
       type = "gem";
     };
     version = "3.0.0";
   };
   method_source = {
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1pnyh44qycnf9mzi1j6fywd5fkskv3x7nmsqrrws0rjn5dd4ayfp";
       type = "gem";
     };
     version = "1.0.0";
   };
   mime-types = {
-    dependencies = [ "mime-types-data" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["mime-types-data"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1zj12l9qk62anvk9bjvandpa6vy4xslil15wl6wlivyf51z773vh";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ipw892jbksbxxcrlx9g5ljq60qx47pm24ywgfbyjskbcl78pkvb";
       type = "gem";
     };
-    version = "3.3.1";
+    version = "3.4.1";
   };
   mime-types-data = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1phcq7z0zpipwd7y4fbqmlaqghv07fjjgrx99mwq3z3n0yvy7fmi";
+      remotes = ["https://rubygems.org"];
+      sha256 = "003gd7mcay800k2q4pb2zn8lwwgci4bhi42v2jvlidm8ksx03i6q";
       type = "gem";
     };
-    version = "3.2021.0225";
+    version = "3.2022.0105";
   };
   mini_mime = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "173dp4vqvx1sl6aq83daxwn5xvb5rn3jgynjmb91swl7gmgp17yl";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lbim375gw2dk6383qirz13hgdmxlan0vc5da2l072j3qw6fqjm5";
       type = "gem";
     };
-    version = "1.1.1";
+    version = "1.1.2";
   };
   mini_portile2 = {
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1lvxm91hi0pabnkkg47wh1siv56s6slm2mdq1idfm86dyfidfprq";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rapl1sfmfi3bfr68da4ca16yhc0pp93vjwkj7y3rdqrzy3b41hy";
       type = "gem";
     };
-    version = "2.6.1";
+    version = "2.8.0";
   };
   mini_racer = {
-    dependencies = [ "libv8" ];
-    groups = [ "mini_racer" ];
-    platforms = [ ];
+    dependencies = ["libv8"];
+    groups = ["mini_racer"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0zi36qcg5qj4g1c11vwmc7lknjihirrmc6yxi6q8j6v4lfnyjbyg";
       type = "gem";
     };
     version = "0.2.9";
   };
   minitest = {
-    groups = [ "assets" "default" "development" "nulldb" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "nulldb" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "19z7wkhg59y8abginfrm2wzplz7py3va8fyngiigngqvsws6cwgl";
+      remotes = ["https://rubygems.org"];
+      sha256 = "06xf558gid4w8lwx13jwfdafsch9maz8m0g85wnfymqj63x5nbbd";
       type = "gem";
     };
-    version = "5.14.4";
+    version = "5.15.0";
   };
   msgpack = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "06iajjyhx0rvpn4yr3h1hc4w4w3k59bdmfhxnjzzh76wsrdxxrc6";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1cshgsx3hmpgx639xyqjqa2q3hgrhlyr9rpwhsglsx529alqq125";
       type = "gem";
     };
-    version = "1.4.2";
+    version = "1.4.5";
   };
   multi_json = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0pb1g1y3dsiahavspyzkdy39j4q377009f6ix0bh1ag4nqw43l0z";
       type = "gem";
     };
     version = "1.15.0";
   };
   multi_xml = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0lmd4f401mvravi1i1yq7b2qjjli0yq7dfc4p1nj5nwajp7r6hyj";
       type = "gem";
     };
     version = "0.6.0";
   };
   multipart-post = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1zgw9zlwh2a6i1yvhhc4a84ry1hv824d6g2iw2chs3k5aylpmpfj";
       type = "gem";
     };
     version = "2.1.1";
   };
   mysql2 = {
-    groups = [ "mysql" ];
-    platforms = [ ];
+    groups = ["mysql"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0d14pcy5m4hjig0zdxnl9in5f4izszc7v9zcczf2gyi5kiyxk8jw";
       type = "gem";
     };
     version = "0.5.3";
   };
   naught = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1wwjx35zgbc0nplp8a866iafk4zsrbhwwz4pav5gydr2wm26nksg";
       type = "gem";
     };
     version = "1.1.0";
   };
   nenv = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0r97jzknll9bhd8yyg2bngnnkj8rjhal667n7d32h8h7ny7nvpnr";
       type = "gem";
     };
     version = "0.3.0";
   };
   nestful = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0sn7lrdhp1dwn9xkqwkarby5bxx1g30givy3fi1dwp1xvqbrqikw";
       type = "gem";
     };
     version = "1.1.4";
   };
   net-ldap = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1j19yxrz7h3hj7kiiln13c7bz7hvpdqr31bwi88dj64zifr7896n";
       type = "gem";
     };
     version = "0.17.0";
   };
   netrc = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y";
       type = "gem";
     };
     version = "0.11.0";
   };
   nio4r = {
-    groups = [ "default" "development" "puma" "test" ];
-    platforms = [ ];
+    groups = ["default" "puma"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0xk64wghkscs6bv2n22853k2nh39d131c6rfpnlw12mbjnnv9v1v";
       type = "gem";
     };
     version = "2.5.8";
   };
   nokogiri = {
-    dependencies = [ "mini_portile2" "racc" ];
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["mini_portile2" "racc"];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1v02g7k7cxiwdcahvlxrmizn3avj2q6nsjccgilq1idc89cr081b";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p6b3q411h2mw4dsvhjrp1hh66hha5cm69fqg85vn2lizz71n6xz";
       type = "gem";
     };
-    version = "1.12.5";
+    version = "1.13.3";
   };
   nori = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "066wc774a2zp4vrq3k7k8p0fhv30ymqmxma1jj7yg5735zls8agn";
       type = "gem";
     };
     version = "2.6.0";
   };
   notiffany = {
-    dependencies = [ "nenv" "shellany" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["nenv" "shellany"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0f47h3bmg1apr4x51szqfv3rh2vq58z3grh4w02cp3bzbdh6jxnk";
       type = "gem";
     };
     version = "0.1.3";
   };
   oauth = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1zwd6v39yqfdrpg1p3d9jvzs9ljg55ana2p06m0l7qn5w0lgx1a0";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0h6nfg2pibc17fch0795d4bcy41a92im5zrsrgs31zdhrl6zf4w0";
       type = "gem";
     };
-    version = "0.5.6";
+    version = "0.5.8";
   };
   oauth2 = {
-    dependencies = [ "faraday" "jwt" "multi_json" "multi_xml" "rack" ];
-    groups = [ "default" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1q6q2kgpxmygk8kmxqn54zkw8cs57a34zzz5cxpsh1bj3ag06rk3";
-      type = "gem";
-    };
-    version = "1.4.7";
-  };
-  octokit = {
-    dependencies = [ "faraday" "sawyer" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["faraday" "jwt" "multi_json" "multi_xml" "rack"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0ak64rb48d8z98nw6q70r6i0i3ivv61iqla40ss5l79491qfnn27";
+      remotes = ["https://rubygems.org"];
+      sha256 = "16sk9h6a6vzqxf8v1fisa8jq5cj9sw4mwc7azy5gj2w1whkfa5dp";
       type = "gem";
     };
-    version = "4.21.0";
+    version = "1.4.9";
   };
   omniauth = {
-    dependencies = [ "hashie" "rack" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["hashie" "rack"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "002vi9gwamkmhf0dsj2im1d47xw2n1jfhnzl18shxf3ampkqfmyz";
       type = "gem";
     };
     version = "1.9.1";
   };
   omniauth-facebook = {
-    dependencies = [ "omniauth-oauth2" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1z0f5sr2ddnvfva0jrfd4926nlv4528rfj7z595288n39304r092";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0m7q38kjm94wgq6h7hk9546yg33wcs3vf1v6zp0vx7nwkvfxh2j4";
       type = "gem";
     };
-    version = "8.0.0";
+    version = "9.0.0";
   };
   omniauth-github = {
-    dependencies = [ "omniauth" "omniauth-oauth2" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["omniauth" "omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0xbk0dbxqfpyfb33ghz6vrlz3m6442rp18ryf13gwzlnifcawhlb";
       type = "gem";
     };
     version = "1.4.0";
   };
   omniauth-gitlab = {
-    dependencies = [ "omniauth" "omniauth-oauth2" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["omniauth" "omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1nbrg93p0nqxs1i2ddyij2rr7jn4vr3la4la39q4fknpin535k3z";
       type = "gem";
     };
     version = "2.0.0";
   };
   omniauth-google-oauth2 = {
-    dependencies = [ "jwt" "oauth2" "omniauth" "omniauth-oauth2" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["jwt" "oauth2" "omniauth" "omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "10pnxvb6wpnf58dja3yz4ja527443x3q13hzhcbays4amnnp8i4a";
       type = "gem";
     };
     version = "0.8.2";
   };
   omniauth-linkedin-oauth2 = {
-    dependencies = [ "omniauth-oauth2" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1ydkj9f2hd3fskpc2gazz9dim70z2k6z6pb8j3glnlhkd67iyzci";
       type = "gem";
     };
     version = "1.0.0";
   };
   omniauth-microsoft-office365 = {
-    dependencies = [ "omniauth" "omniauth-oauth2" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["omniauth" "omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1vw6418gykxqd9z32ddq0mr6wa737la1zwppb1ilw9sgii24rg1v";
       type = "gem";
     };
     version = "0.0.8";
   };
   omniauth-oauth = {
-    dependencies = [ "oauth" "omniauth" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["oauth" "omniauth"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0yw2vzx633p9wpdkd4jxsih6mw604mj7f6myyfikmj4d95c8d9z7";
       type = "gem";
     };
     version = "1.2.0";
   };
   omniauth-oauth2 = {
-    dependencies = [ "oauth2" "omniauth" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["oauth2" "omniauth"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "10fr2b58sp7l6nfdvxpbi67374hkrvsf507cvda89jjs0jacy319";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ry65f309rnzhgdjvqybkd5i4qp9rpk1gbp4dz02h4l6bkk6ya10";
       type = "gem";
     };
-    version = "1.7.1";
+    version = "1.7.2";
   };
   omniauth-rails_csrf_protection = {
-    dependencies = [ "actionpack" "omniauth" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["actionpack" "omniauth"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0xgkxwg17w39q3yjqcj0fm6hdkw37qm1l82dvm9zxn6q2pbzm2zv";
       type = "gem";
     };
     version = "0.1.2";
   };
   omniauth-saml = {
-    dependencies = [ "omniauth" "ruby-saml" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["omniauth" "ruby-saml"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0gxl14lbksnjkl8dfn23lsjkk63md77icm5racrh6fsp5n4ni9d4";
       type = "gem";
     };
     version = "1.10.3";
   };
   omniauth-twitter = {
-    dependencies = [ "omniauth-oauth" "rack" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["omniauth-oauth" "rack"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0r5j65hkpgzhvvbs90id3nfsjgsad6ymzggbm7zlaxvnrmvnrk65";
       type = "gem";
     };
     version = "1.4.0";
   };
   omniauth-weibo-oauth2 = {
-    dependencies = [ "omniauth" "omniauth-oauth2" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["omniauth" "omniauth-oauth2"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "02cz73lj38cjqkbrdnfr7iymzqdcxgqcjy992r5hmawgpqqgxvwb";
       type = "gem";
     };
     version = "0.5.2";
   };
   openssl = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "03wbynzkhay7l1x76srjkg91q48mxl575vrxb3blfxlpqwsvvp0w";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1azzx975qr078isvg8i0hmsr2l98kgnlfrnbb2jdm9b5kwifx1h4";
       type = "gem";
     };
-    version = "2.2.0";
+    version = "3.0.0";
   };
   overcommit = {
-    dependencies = [ "childprocess" "iniparse" "rexml" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["childprocess" "iniparse" "rexml"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0wbczp2pxwiggx5n925mdr2q17c6m9hq7h0q7ml2spmla29609sr";
       type = "gem";
     };
     version = "0.58.0";
   };
   parallel = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1hkfpm78c2vs1qblnva3k1grijvxh87iixcnyd83s3lxrxsjvag4";
       type = "gem";
     };
     version = "1.21.0";
   };
   parser = {
-    dependencies = [ "ast" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["ast"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "06ma6w87ph8lnc9z4hi40ynmcdnjv0p8x53x0s3fjkz4q2p6sxh5";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zaghgvva2q4jqbachg8jvpwgbg3w1jqr0d00m8rqciqznjgsw3c";
       type = "gem";
     };
-    version = "3.0.2.0";
+    version = "3.1.1.0";
   };
   pg = {
-    groups = [ "postgres" ];
-    platforms = [ ];
+    groups = ["postgres"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "00vhasqwc4f98qb4wxqn2h07fjwzhp5lwyi41j2gndi2g02wrdqh";
       type = "gem";
     };
     version = "0.21.0";
   };
-  power_assert = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "01z44m715rb6nzfrc90c5rkkdiy42dv3q94jw1q8baf9dg33nwi5";
-      type = "gem";
-    };
-    version = "2.0.1";
-  };
-  protocol-hpack = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0sd85am1hj2w7z5hv19wy1nbisxfr1vqx3wlxjfz9xy7x7s6aczw";
-      type = "gem";
-    };
-    version = "1.4.2";
-  };
-  protocol-http = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0q7js6npc8flgipjpdykmbdmhf2ml8li5gy7763y6awkpli6s6p6";
-      type = "gem";
-    };
-    version = "0.22.4";
-  };
-  protocol-http1 = {
-    dependencies = [ "protocol-http" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+  PoParser = {
+    dependencies = ["simple_po_parser"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0wp9pi1qjh1darrqv0r46i4bvax3n64aa0mn7kza4251qmk0dwz5";
+      remotes = ["https://rubygems.org"];
+      sha256 = "19mf9f5zx23cjjn0p77wz1igzpfr22mxhljgavffl8fwqq74v4ih";
       type = "gem";
     };
-    version = "0.14.1";
+    version = "3.2.5";
   };
-  protocol-http2 = {
-    dependencies = [ "protocol-hpack" "protocol-http" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+  power_assert = {
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1a9klpfmi7w465zq5xz8y8h1qvj42hkm0qd0nlws9d2idd767q5j";
+      remotes = ["https://rubygems.org"];
+      sha256 = "01z44m715rb6nzfrc90c5rkkdiy42dv3q94jw1q8baf9dg33nwi5";
       type = "gem";
     };
-    version = "0.14.2";
+    version = "2.0.1";
   };
   pry = {
-    dependencies = [ "coderay" "method_source" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["coderay" "method_source"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0m445x8fwcjdyv2bc0glzss2nbm1ll51bq45knixapc7cl3dzdlr";
       type = "gem";
     };
     version = "0.14.1";
   };
   pry-rails = {
-    dependencies = [ "pry" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["pry"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1cf4ii53w2hdh7fn8vhqpzkymmchjbwij4l3m7s6fsxvb9bn51j6";
       type = "gem";
     };
     version = "0.3.9";
   };
   pry-remote = {
-    dependencies = [ "pry" "slop" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["pry" "slop"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "10g1wrkcy5v5qyg9fpw1cag6g5rlcl1i66kn00r7kwqkzrdhd7nm";
       type = "gem";
     };
     version = "0.1.8";
   };
   pry-rescue = {
-    dependencies = [ "interception" "pry" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["interception" "pry"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1wn72y8y3d3g0ng350ld92nyjln012432q2z2iy9lhwzjc4dwi65";
       type = "gem";
     };
     version = "1.5.2";
   };
   pry-stack_explorer = {
-    dependencies = [ "binding_of_caller" "pry" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["binding_of_caller" "pry"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0h7kp99r8vpvpbvia079i58932qjz2ci9qhwbk7h1bf48ydymnx2";
       type = "gem";
     };
     version = "0.6.1";
   };
   public_suffix = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1xqcgkl7bwws1qrlnmxgh8g4g9m10vg60bhlw40fplninb3ng6d9";
       type = "gem";
     };
     version = "4.0.6";
   };
   puma = {
-    dependencies = [ "nio4r" ];
-    groups = [ "puma" ];
-    platforms = [ ];
+    dependencies = ["nio4r"];
+    groups = ["puma"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0r22aq2shhmvi461pfs1c7pf66l4kbwndpi1jgxqydp0a1lfjbbk";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xvkz9xrd1cqnlm0qac1iwwxzndx3cc17zrjncpa4lzjfwbxhsnm";
       type = "gem";
     };
-    version = "4.3.10";
+    version = "4.3.11";
   };
   pundit = {
-    dependencies = [ "activesupport" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["activesupport"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1i3rccbzyw46xrx1ic95r11v15ia2kj8naiyi68gdvxfrisk1fxm";
+      remotes = ["https://rubygems.org"];
+      sha256 = "17z2f7w3syh3c04c8m1v9pvb9pfpymk8b5plszr5l24hx374xvsd";
       type = "gem";
     };
-    version = "2.1.1";
+    version = "2.2.0";
   };
   pundit-matchers = {
-    dependencies = [ "rspec-rails" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["rspec-rails"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "10kvf0pj5339fh3dgf9lvsv94d74x7x1wxdb0hp8a1ac7w5l6vmm";
       type = "gem";
     };
     version = "1.7.0";
   };
   racc = {
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "178k7r0xn689spviqzhvazzvxfq6fyjldxb3ywjbgipbfi4s8j1g";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0la56m0z26j3mfn1a9lf2l03qx1xifanndf9p3vx1azf6sqy7v9d";
       type = "gem";
     };
-    version = "1.5.2";
+    version = "1.6.0";
   };
   rack = {
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0i5vs0dph9i5jn8dfc6aqd6njcafmb20rwqngrf759c9cvmyff16";
       type = "gem";
     };
     version = "2.2.3";
   };
   rack-livereload = {
-    dependencies = [ "rack" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["rack"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1slzlmvlapgp2pc7389i0zndq3nka0s6sh445vf21cxpz7vz3p5i";
       type = "gem";
     };
     version = "0.3.17";
   };
   rack-test = {
-    dependencies = [ "rack" ];
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["rack"];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0rh8h376mx71ci5yklnpqqn118z3bl67nnv5k801qaqn1zs62h8m";
       type = "gem";
     };
     version = "1.1.0";
   };
   rails = {
-    dependencies = [ "actioncable" "actionmailbox" "actionmailer" "actionpack" "actiontext" "actionview" "activejob" "activemodel" "activerecord" "activestorage" "activesupport" "railties" "sprockets-rails" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["actioncable" "actionmailbox" "actionmailer" "actionpack" "actiontext" "actionview" "activejob" "activemodel" "activerecord" "activestorage" "activesupport" "railties" "sprockets-rails"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1q0y3nc0phg85zjxh9j78rs2hlc34zbhwn2zaw2w7bz2fc2vbxk2";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1r9b9bxa7s3mw8dz8bl61pyazk880jmpngy3rkpyjc5cckawqbnb";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   rails-controller-testing = {
-    dependencies = [ "actionpack" "actionview" "activesupport" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["actionpack" "actionview" "activesupport"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "151f303jcvs8s149mhx2g5mn67487x0blrf9dzl76q1nb7dlh53l";
       type = "gem";
     };
     version = "1.0.5";
   };
   rails-dom-testing = {
-    dependencies = [ "activesupport" "nokogiri" ];
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["activesupport" "nokogiri"];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1lfq2a7kp2x64dzzi5p4cjcbiv62vxh9lyqk2f0rqq3fkzrw8h5i";
       type = "gem";
     };
     version = "2.0.3";
   };
   rails-html-sanitizer = {
-    dependencies = [ "loofah" ];
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["loofah"];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0whc4d4jqm8kd4x3jzbax54sscm1k4pfkr5d1gpapjbzqkfj77yy";
+      remotes = ["https://rubygems.org"];
+      sha256 = "09qrfi3pgllxb08r024lln9k0qzxs57v0slsj8616xf9c0cwnwbk";
       type = "gem";
     };
-    version = "1.4.1";
+    version = "1.4.2";
   };
   railties = {
-    dependencies = [ "actionpack" "activesupport" "method_source" "rake" "thor" ];
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["actionpack" "activesupport" "method_source" "rake" "thor"];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0v454xnsfh2sival85cah5wbagzzzzd7frqx9kwn4nc9m8m3yx74";
+      remotes = ["https://rubygems.org"];
+      sha256 = "03kwdd874sjaag082ia3zf4bng6dgsjk4nkkkn28l7n89i062ca3";
       type = "gem";
     };
-    version = "6.0.4.1";
+    version = "6.0.4.7";
   };
   rainbow = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0smwg4mii0fm38pyb5fddbmrdpifwv22zv3d3px2xx497am93503";
       type = "gem";
     };
-    version = "3.0.0";
+    version = "3.1.1";
   };
   raindrops = {
-    groups = [ "default" "unicorn" ];
-    platforms = [ ];
+    groups = ["default" "unicorn"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "07nikrdnsf6g55225njnzs1lm9s0lnbv2krvqd2gldwl49l7vl9x";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wb2x51parf6v78w0cic90m33bdc92y5h8rj4wqs75dhw1b69hc7";
       type = "gem";
     };
-    version = "0.19.2";
+    version = "0.20.0";
   };
   rake = {
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "15whn7p9nrkxangbs9hh75q585yfn66lv0v2mhj6q6dl6x8bzr2w";
       type = "gem";
     };
     version = "13.0.6";
   };
   rb-fsevent = {
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1qsx9c4jr11vr3a9s5j83avczx9qn9rjaf32gxpc2v451hvbc0is";
+      remotes = ["https://rubygems.org"];
+      sha256 = "06c50pvxib7wqnv6q0f3n7gzfcrp5chi3sa48hxpkfxc3hhy11fm";
       type = "gem";
     };
-    version = "0.11.0";
+    version = "0.11.1";
   };
   rb-inotify = {
-    dependencies = [ "ffi" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["ffi"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1jm76h8f8hji38z3ggf4bzi8vps6p7sagxn3ab57qc0xyga64005";
       type = "gem";
     };
     version = "0.10.1";
   };
   rchardet = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1isj1b3ywgg2m1vdlnr41lpvpm3dbyarf1lla4dfibfmad9csfk9";
       type = "gem";
     };
     version = "1.8.0";
   };
   redis = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1ig832dp0xmpp6a934nifzaj7wm9lzjxzasw911fagycs8p6m720";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lhdfkl4r6dnhlr8jpz4a21ca6c76jfy7fj7gf4j2qpbh8ld8qyb";
       type = "gem";
     };
-    version = "4.4.0";
+    version = "4.6.0";
   };
   regexp_parser = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0vg7imjnfcqjx7kw94ccj5r78j4g190cqzi1i59sh4a0l940b9cr";
+      remotes = ["https://rubygems.org"];
+      sha256 = "155f6cr4rrfw5bs5xd3m5kfw32qhc5fsi4nk82rhif56rc6cs0wm";
       type = "gem";
     };
-    version = "2.1.1";
+    version = "2.2.1";
   };
   rest-client = {
-    dependencies = [ "http-accept" "http-cookie" "mime-types" "netrc" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["http-accept" "http-cookie" "mime-types" "netrc"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1qs74yzl58agzx9dgjhcpgmzfn61fqkk33k1js2y5yhlvc5l19im";
       type = "gem";
     };
     version = "2.1.0";
   };
   rexml = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53";
       type = "gem";
     };
     version = "3.2.5";
   };
   rspec-core = {
-    dependencies = [ "rspec-support" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["rspec-support"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0wwnfhxxvrlxlk1a3yxlb82k2f9lm0yn0598x7lk8fksaz4vv6mc";
+      remotes = ["https://rubygems.org"];
+      sha256 = "118hkfw9b11hvvalr7qlylwal5h8dihagm9xg7k4gskg7587hca6";
       type = "gem";
     };
-    version = "3.10.1";
+    version = "3.11.0";
   };
   rspec-expectations = {
-    dependencies = [ "diff-lcs" "rspec-support" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["diff-lcs" "rspec-support"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1sz9bj4ri28adsklnh257pnbq4r5ayziw02qf67wry0kvzazbb17";
+      remotes = ["https://rubygems.org"];
+      sha256 = "001ihayil7jpfxdlxlhakvz02kx0nk5m1w0bz6z8izdx0nc8bh53";
       type = "gem";
     };
-    version = "3.10.1";
+    version = "3.11.0";
   };
   rspec-mocks = {
-    dependencies = [ "diff-lcs" "rspec-support" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["diff-lcs" "rspec-support"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1d13g6kipqqc9lmwz5b244pdwc97z15vcbnbq6n9rlf32bipdz4k";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0y38dc66yhnfcf4ky3k47c20xak1rax940s4a96qkjxqrniy5ys3";
       type = "gem";
     };
-    version = "3.10.2";
+    version = "3.11.0";
   };
   rspec-rails = {
-    dependencies = [ "actionpack" "activesupport" "railties" "rspec-core" "rspec-expectations" "rspec-mocks" "rspec-support" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["actionpack" "activesupport" "railties" "rspec-core" "rspec-expectations" "rspec-mocks" "rspec-support"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "152yz205p8zi5nxxhs8z581rjdvvqsfjndklkvn11f2vi50nv7n9";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jj5zs9h2ll8iz699ac4bysih7y4csnf8h5h80bm6ppbf02ly8fa";
       type = "gem";
     };
-    version = "5.0.2";
+    version = "5.1.1";
   };
   rspec-support = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "15j52parvb8cgvl6s0pbxi2ywxrv6x0764g222kz5flz0s4mycbl";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xfk4pla77251n39zf4n792m1rhg5sn1kp63yvpvvysany34la03";
       type = "gem";
     };
-    version = "3.10.2";
+    version = "3.11.0";
   };
   rszr = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0ns5qxdkgbqw1d52nz29lwx6xgs5bqwx1js1227n6l4q36g3snpp";
       type = "gem";
     };
     version = "0.5.2";
   };
   rubocop = {
-    dependencies = [ "parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1gqsacpqzcflc8j08qx1asvcr89jjg9gqhijhir6wivjbmz700cm";
+      remotes = ["https://rubygems.org"];
+      sha256 = "03c6v6bfqdw8vnda0if0sx7aff0iq6xnv1adyfs0bi9msgggafcr";
       type = "gem";
     };
-    version = "1.21.0";
+    version = "1.26.0";
   };
   rubocop-ast = {
-    dependencies = [ "parser" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["parser"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "06fkn66wrsfprvd7bh0bkjvdcr17b9jy3j0cs7lbd3f2yscvwr63";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1bd2z82ly7fix8415gvfiwzb6bjialz5rs3sr72kv1lk68rd23wv";
       type = "gem";
     };
-    version = "1.11.0";
+    version = "1.16.0";
   };
   rubocop-faker = {
-    dependencies = [ "faker" "rubocop" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["faker" "rubocop"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "05d2mpi8xq50xh1s53h75hgvdhcz76lv9cnfn4jg35nbg67j1pdz";
       type = "gem";
     };
     version = "1.1.0";
   };
+  rubocop-inflector = {
+    dependencies = ["activesupport" "rubocop" "rubocop-rspec"];
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1v5ijrpvvibkzfdbih0c0rvfpvifirj2fmy237ph48r5q0xm1fzl";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
   rubocop-performance = {
-    dependencies = [ "rubocop" "rubocop-ast" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["rubocop" "rubocop-ast"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0whjb16w70z1x0x797cfbcmqq6ngf0vkhn5qn2f2zmcin0929kgm";
+      remotes = ["https://rubygems.org"];
+      sha256 = "17ny81dy5gjrvris8mni7la8yjg57snphyg9nmvnc3al7yhwr74x";
       type = "gem";
     };
-    version = "1.11.5";
+    version = "1.13.3";
   };
   rubocop-rails = {
-    dependencies = [ "activesupport" "rack" "rubocop" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["activesupport" "rack" "rubocop"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0sc2hbz434j6h3y1s6pzqrmdbbj6y0csfqdyjm23scwfdg7g3n07";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vibx4jhpxaxa8w3wyhasskcgrxfjiyqdwrrc7l2lb0mbxqcs1ly";
       type = "gem";
     };
-    version = "2.12.2";
+    version = "2.13.2";
   };
   rubocop-rspec = {
-    dependencies = [ "rubocop" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["rubocop"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "037v3zb1ia12sgqb2f2dd2cgrfj4scfvy29nfp5688av0wghb7fd";
+      remotes = ["https://rubygems.org"];
+      sha256 = "051gq9pz49iv4gq34d3n089iaa6cb418n2fhin6gd6fpysbi3nf6";
       type = "gem";
     };
-    version = "2.5.0";
+    version = "2.9.0";
   };
   ruby-progressbar = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "02nmaw7yx9kl7rbaan5pl8x5nn0y4j5954mzrkzi9i3dhsrps4nc";
       type = "gem";
     };
     version = "1.11.0";
   };
   ruby-saml = {
-    dependencies = [ "nokogiri" "rexml" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["nokogiri" "rexml"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0v21hgbhaqvz99w3jdm3s1pxwc2idjgqyw4fghzj54g9sgm0dxii";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1irn32sy9gx6xj9jxc28h7dax7vp9z8j6hjjfsb2f5hd4qz0z20x";
       type = "gem";
     };
-    version = "1.12.2";
+    version = "1.14.0";
   };
   ruby2_keywords = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1vz322p8n39hz3b4a9gkmz9y7a5jaz41zrm2ywf31dvkqm03glgz";
       type = "gem";
     };
     version = "0.0.5";
   };
   rubyntlm = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0b8hczk8hysv53ncsqzx4q6kma5gy5lqc7s5yx8h64x3vdb18cjv";
       type = "gem";
     };
     version = "0.6.3";
   };
   rubyzip = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0590m2pr9i209pp5z4mx0nb1961ishdiqb28995hw1nln1d1b5ji";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0grps9197qyxakbpw02pda59v45lfgbgiyw48i0mq9f2bn9y6mrz";
       type = "gem";
     };
-    version = "2.3.0";
+    version = "2.3.2";
   };
   sassc = {
-    dependencies = [ "ffi" ];
-    groups = [ "assets" "default" ];
-    platforms = [ ];
+    dependencies = ["ffi"];
+    groups = ["assets" "default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0gpqv48xhl8mb8qqhcifcp0pixn206a7imc07g48armklfqa4q2c";
       type = "gem";
     };
     version = "2.4.0";
   };
   sassc-rails = {
-    dependencies = [ "railties" "sassc" "sprockets" "sprockets-rails" "tilt" ];
-    groups = [ "assets" ];
-    platforms = [ ];
+    dependencies = ["railties" "sassc" "sprockets" "sprockets-rails" "tilt"];
+    groups = ["assets"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1d9djmwn36a5m8a83bpycs48g8kh1n2xkyvghn7dr6zwh4wdyksz";
       type = "gem";
     };
     version = "2.1.2";
   };
-  sawyer = {
-    dependencies = [ "addressable" "faraday" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0yrdchs3psh583rjapkv33mljdivggqn99wkydkjdckcjn43j3cz";
-      type = "gem";
-    };
-    version = "0.8.2";
-  };
   selenium-webdriver = {
-    dependencies = [ "childprocess" "rubyzip" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["childprocess" "rexml" "rubyzip"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0adcvp86dinaqq3nhf8p3m0rl2g6q0a4h52k0i7kdnsg1qz9k86y";
+      remotes = ["https://rubygems.org"];
+      sha256 = "17hilxa40cj7q48k6wcx1cbdb1v3q9c4nx89fji7gyqpcfm16vq7";
       type = "gem";
     };
-    version = "3.142.7";
+    version = "4.1.0";
   };
   shellany = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1ryyzrj1kxmnpdzhlv4ys3dnl2r5r3d2rs2jwzbnd1v96a8pl4hf";
       type = "gem";
     };
     version = "0.0.1";
   };
   shoulda-matchers = {
-    dependencies = [ "activesupport" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["activesupport"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0z6v2acldnvqrnvfk70f9xq39ppw5j03kbz2hpz7s17lgnn21vx8";
+      remotes = ["https://rubygems.org"];
+      sha256 = "01svmyma958sbqfz0v29lbqbr0ibvgcng352nhx6bsc9k5c207d0";
       type = "gem";
     };
-    version = "5.0.0";
+    version = "5.1.0";
   };
   simple_oauth = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0dw9ii6m7wckml100xhjc6vxpjcry174lbi9jz5v7ibjr3i94y8l";
       type = "gem";
     };
     version = "0.3.1";
   };
-  simplecov = {
-    dependencies = [ "docile" "simplecov-html" "simplecov_json_formatter" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1hrv046jll6ad1s964gsmcq4hvkr3zzr6jc7z1mns22mvfpbc3cr";
-      type = "gem";
-    };
-    version = "0.21.2";
-  };
-  simplecov-html = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0yx01bxa8pbf9ip4hagqkp5m0mqfnwnw2xk8kjraiywz4lrss6jb";
-      type = "gem";
-    };
-    version = "0.12.3";
-  };
-  simplecov-rcov = {
-    dependencies = [ "simplecov" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "056fav5r7m73fkzpsrvbg0kgv905lkpmnj1l80q9msj3gfq23xn7";
-      type = "gem";
-    };
-    version = "0.2.3";
-  };
-  simplecov_json_formatter = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+  simple_po_parser = {
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "19r15hyvh52jx7fmsrcflb58xh8l7l0zx4sxkh3hqzhq68y81pjl";
+      remotes = ["https://rubygems.org"];
+      sha256 = "134zg0dzd7216lyczkhv01v27ikkmipjihcy2bzi0qv72p1i923i";
       type = "gem";
     };
-    version = "0.1.3";
+    version = "1.1.5";
   };
   slack-notifier = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "001bipchr45sny33nlavqgxca9y1qqxa7xpi7pvjfqiybwzvm6nd";
       type = "gem";
     };
     version = "2.4.0";
   };
   slack-ruby-client = {
-    dependencies = [ "faraday" "faraday_middleware" "gli" "hashie" "websocket-driver" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["faraday" "faraday_middleware" "gli" "hashie" "websocket-driver"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "11q9v6ch9jpc82z1nghwibbbbxbi23q41fcw8i57dpjmq06ma9z2";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0i067a99sr4m80gimcrymkic9da7zrszlfr87mhlgy5s7z4j70gw";
       type = "gem";
     };
-    version = "0.17.0";
+    version = "1.0.0";
   };
   slop = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "00w8g3j7k7kl8ri2cf1m58ckxk8rn350gp4chfscmgv6pq1spk3n";
       type = "gem";
     };
     version = "3.6.0";
   };
   spring = {
-    groups = [ "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "12kyz3jdnaarhf2jbykmd9mqg085gxsx00c16la5q7czxvpb2x2r";
-      type = "gem";
-    };
-    version = "3.0.0";
-  };
-  spring-commands-rspec = {
-    dependencies = [ "spring" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0b0svpq3md1pjz5drpa5pxwg8nk48wrshq8lckim4x3nli7ya0k2";
-      type = "gem";
-    };
-    version = "1.0.4";
-  };
-  spring-commands-testunit = {
-    dependencies = [ "spring" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0qqb0iyjgl9nr7w69p07nq8ghidjcp5n81xrsn8rvafana5lis5c";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ihmqcqylfx04bigg0fswmlvp0639f1j47kdir4g9lc76yw3c6ia";
       type = "gem";
     };
-    version = "1.0.1";
+    version = "4.0.0";
   };
   sprockets = {
-    dependencies = [ "concurrent-ruby" "rack" ];
-    groups = [ "assets" ];
-    platforms = [ ];
+    dependencies = ["concurrent-ruby" "rack"];
+    groups = ["assets"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "182jw5a0fbqah5w9jancvfmjbk88h8bxdbwnl4d3q809rpxdg8ay";
       type = "gem";
     };
     version = "3.7.2";
   };
   sprockets-rails = {
-    dependencies = [ "actionpack" "activesupport" "sprockets" ];
-    groups = [ "assets" "default" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0mwmz36265646xqfyczgr1mhkm1hfxgxxvgdgr4xfcbf2g72p1k2";
-      type = "gem";
-    };
-    version = "3.2.2";
-  };
-  sync = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["actionpack" "activesupport" "sprockets"];
+    groups = ["assets" "default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1z9qlq4icyiv3hz1znvsq1wz2ccqjb1zwd6gkvnwg6n50z65d0v6";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1b9i14qb27zs56hlcc2hf139l0ghbqnjpmfi0054dxycaxvk5min";
       type = "gem";
     };
-    version = "0.5.0";
+    version = "3.4.2";
   };
   tcr = {
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "14678jlva69bxx24sz5i882x25h357xmbmqsichvq8vdiw2xf6aa";
       type = "gem";
     };
     version = "0.2.2";
   };
   telegramAPI = {
-    dependencies = [ "rest-client" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["rest-client"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "043blxqk5qps62jgjyr7hbf2y2fg5ldcmii8mxk09b3c6ps9ji6g";
       type = "gem";
     };
     version = "1.4.2";
   };
   telephone_number = {
-    groups = [ "default" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0231010c9rq0sp2iss6m9lrycpwrapl2hdg1fjg9d0jg5m1ly66v";
-      type = "gem";
-    };
-    version = "1.4.12";
-  };
-  term-ansicolor = {
-    dependencies = [ "tins" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1xq5kci9215skdh27npyd3y55p812v4qb4x2hv3xsjvwqzz9ycwj";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ai25w1g5g6lr6mz2yxma2px78gfx50bk66kbakkx0dczdybxd1r";
       type = "gem";
     };
-    version = "1.7.1";
+    version = "1.4.14";
   };
   test-unit = {
-    dependencies = [ "power_assert" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["power_assert"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "03pn837vgza8v550ggzhcxbvb80d6qivqnhv3n39lrfnsc8xgi7m";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0h0gpi3fggfa76sbm5kh48ma79z41yh6y7n3lxmaqrbf3zqyjlcw";
       type = "gem";
     };
-    version = "3.4.7";
+    version = "3.5.3";
   };
   thor = {
-    groups = [ "assets" "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "18yhlvmfya23cs3pvhr1qy38y41b6mhr5q9vwv5lrgk16wmf3jna";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0inl77jh4ia03jw3iqm5ipr76ghal3hyjrd6r8zqsswwvi9j2xdi";
       type = "gem";
     };
-    version = "1.1.0";
+    version = "1.2.1";
   };
   thread_safe = {
-    groups = [ "assets" "default" "development" "nulldb" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "nulldb" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
       type = "gem";
     };
     version = "0.3.6";
   };
   tilt = {
-    groups = [ "assets" "default" ];
-    platforms = [ ];
+    groups = ["assets" "default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0rn8z8hda4h41a64l0zhkiwz2vxw9b1nb70gl37h1dg2k874yrlv";
       type = "gem";
     };
     version = "2.0.10";
   };
-  timers = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "00xdi97gm01alfqhjgvv5sff9n1n2l6aym69s9jh8l9clg63b0jc";
-      type = "gem";
-    };
-    version = "4.3.3";
-  };
-  tins = {
-    dependencies = [ "sync" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
-    source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0nzp88y19rqlcizp1nw8m44fvfxs9g3bhjpscz44dwfawfrmr0cb";
-      type = "gem";
-    };
-    version = "1.29.1";
-  };
   twilio-ruby = {
-    dependencies = [ "faraday" "jwt" "nokogiri" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["faraday" "jwt" "nokogiri"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "07g0jrd5qxzgrv10pgyxajahvmfnqx26i8kp0sxmn2in2xj6fb6c";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0x8md052pya691vjzzvpmpf0j42m017p3d8xr2js6j5ir69iya0j";
       type = "gem";
     };
-    version = "5.58.3";
+    version = "5.65.1";
   };
   twitter = {
-    dependencies = [ "addressable" "buftok" "equalizer" "http" "http-form_data" "http_parser.rb" "memoizable" "multipart-post" "naught" "simple_oauth" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["addressable" "buftok" "equalizer" "http" "http-form_data" "http_parser.rb" "memoizable" "multipart-post" "naught" "simple_oauth"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "13dmkjgsnym1avym9f7y2i2h3mlk8crqvc87drrzr4f0sf9l8g2y";
       type = "gem";
     };
     version = "7.0.0";
   };
   tzinfo = {
-    dependencies = [ "thread_safe" ];
-    groups = [ "assets" "default" "development" "nulldb" "test" ];
-    platforms = [ ];
+    dependencies = ["thread_safe"];
+    groups = ["assets" "default" "development" "nulldb" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0zwqqh6138s8b321fwvfbywxy00lw1azw4ql3zr0xh1aqxf8cnvj";
       type = "gem";
     };
     version = "1.2.9";
   };
   uglifier = {
-    dependencies = [ "execjs" ];
-    groups = [ "assets" ];
-    platforms = [ ];
+    dependencies = ["execjs"];
+    groups = ["assets"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0wgh7bzy68vhv9v68061519dd8samcy8sazzz0w3k8kqpy3g4s5f";
       type = "gem";
     };
     version = "4.2.0";
   };
   unf = {
-    dependencies = [ "unf_ext" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["unf_ext"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0bh2cf73i2ffh4fcpdn9ir4mhq8zi50ik0zqa1braahzadx536a9";
       type = "gem";
     };
     version = "0.1.4";
   };
   unf_ext = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0wc47r23h063l8ysws8sy24gzh74mks81cak3lkzlrw4qkqb3sg4";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jmbimpnpjdzz8hlrppgl9spm99qh3qzbx0b81k3gkgwba8nk3yd";
       type = "gem";
     };
-    version = "0.0.7.7";
+    version = "0.0.8";
   };
   unicode-display_width = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0csjm9shhfik0ci9mgimb7hf3xgh7nx45rkd9rzgdz6vkwr8rzxn";
       type = "gem";
     };
     version = "2.1.0";
   };
   unicorn = {
-    dependencies = [ "kgio" "raindrops" ];
-    groups = [ "unicorn" ];
-    platforms = [ ];
+    dependencies = ["kgio" "raindrops"];
+    groups = ["unicorn"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1jcm85d7j7njfgims712svlgml32zjim6qwabm99645aj5laayln";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1h0gma14jjxiz6piyi6p99q7lya2mxrq79l03160hascvmx9ipa5";
       type = "gem";
     };
-    version = "6.0.0";
+    version = "6.1.0";
   };
   valid_email2 = {
-    dependencies = [ "activemodel" "mail" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["activemodel" "mail"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "0l4xkwvx7aj5z18h6vzp0wsfjbcrl76ixp0x95wwlrhn03qab6hs";
+      remotes = ["https://rubygems.org"];
+      sha256 = "0mm92c0p2cgsydcn1va624yzpsdp9bnh24c68lw45j43rca88kq7";
       type = "gem";
     };
-    version = "4.0.0";
+    version = "4.0.3";
   };
   vcr = {
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1j9j257wjkjbh8slx6gjgcwch8x4f7pk53iaq2w71z35rm1a0a3a";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1xzd8f17mmcq9f6lxg4w0x4nd9pyp41lr77gjzxwynijzp8rcgjl";
       type = "gem";
     };
-    version = "6.0.0";
+    version = "6.1.0";
   };
   viewpoint = {
-    dependencies = [ "httpclient" "logging" "nokogiri" "rubyntlm" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["httpclient" "logging" "nokogiri" "rubyntlm"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "14bvihfs0gzmam680xqqs07isxjk677yi3ph2pdvyyhhkbfys0l0";
       type = "gem";
     };
     version = "1.1.1";
   };
   webmock = {
-    dependencies = [ "addressable" "crack" "hashdiff" ];
-    groups = [ "development" "test" ];
-    platforms = [ ];
+    dependencies = ["addressable" "crack" "hashdiff"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "1l8vh8p0g92cqcvv0ra3mblsa4nczh0rz8nbwbkc3g3yzbva85xk";
       type = "gem";
     };
     version = "3.14.0";
   };
   websocket-driver = {
-    dependencies = [ "websocket-extensions" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["websocket-extensions"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0a3bwxd9v3ghrxzjc4vxmf4xa18c6m4xqy5wb0yk5c6b9psc7052";
       type = "gem";
     };
     version = "0.7.5";
   };
   websocket-extensions = {
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0hc2g9qps8lmhibl5baa91b4qx8wqw872rgwagml78ydj8qacsqw";
       type = "gem";
     };
     version = "0.1.5";
   };
   writeexcel = {
-    groups = [ "default" ];
-    platforms = [ ];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0waaf1drp17m5qdchxqlqzj51sfa9hxqccw7d71qdg73gzay1x34";
       type = "gem";
     };
     version = "1.0.5";
   };
   xpath = {
-    dependencies = [ "nokogiri" ];
-    groups = [ "default" "development" "test" ];
-    platforms = [ ];
+    dependencies = ["nokogiri"];
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
+      remotes = ["https://rubygems.org"];
       sha256 = "0bh8lk9hvlpn7vmi6h4hkcwjzvs2y0cmkk3yjjdr8fxvj6fsgzbd";
       type = "gem";
     };
     version = "3.2.0";
   };
   zeitwerk = {
-    groups = [ "assets" "default" "development" "nulldb" "test" ];
-    platforms = [ ];
+    groups = ["assets" "default" "development" "nulldb" "test"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1746czsjarixq0x05f7p3hpzi38ldg6wxnxxw74kbjzh1sdjgmpl";
+      remotes = ["https://rubygems.org"];
+      sha256 = "09bq7j2p6mkbxnsg71s253dm2463kg51xc7bmjcxgyblqbh4ln7m";
       type = "gem";
     };
-    version = "2.4.2";
+    version = "2.5.4";
   };
   zendesk_api = {
-    dependencies = [ "faraday" "hashie" "inflection" "mini_mime" "multipart-post" ];
-    groups = [ "default" ];
-    platforms = [ ];
+    dependencies = ["faraday" "hashie" "inflection" "mini_mime" "multipart-post"];
+    groups = ["default"];
+    platforms = [];
     source = {
-      remotes = [ "https://rubygems.org" ];
-      sha256 = "1j50s7cw52hrjnd9v3lbfk76d44vx3sq4af7alz9hiy90gnxnd9z";
+      remotes = ["https://rubygems.org"];
+      sha256 = "1sl5a01sl58pxxcx9qdvjwm04my1waysaik7y6l5564wbx4xczyr";
       type = "gem";
     };
-    version = "1.33.0";
+    version = "1.35.0";
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/misc/zammad/package.json b/nixpkgs/pkgs/applications/networking/misc/zammad/package.json
index ed5407ada93e..00c22263200b 100644
--- a/nixpkgs/pkgs/applications/networking/misc/zammad/package.json
+++ b/nixpkgs/pkgs/applications/networking/misc/zammad/package.json
@@ -1,14 +1,18 @@
 {
-  "name": "Zammad",
-  "version": "1.0.0",
+  "scripts": {
+    "lint:css": "stylelint \"**/*.{css,scss}\"",
+    "lint:css:fix": "stylelint \"**/*.{css,scss}\" --fix"
+  },
   "devDependencies": {
-    "gulp": "^3.8.11",
-    "gulp-cheerio": "^0.6.2",
-    "gulp-rename": "^1.2.2",
-    "gulp-svgmin": "^1.1.2",
-    "gulp-svgstore": "^5.0.1",
-    "gulp-util": "^3.0.4",
-    "gulp-watch": "^4.2.4",
-    "through2": "^0.6.5"
-  }
+    "postcss": "^8.4.4",
+    "postcss-html": "^1.3.0",
+    "prettier": "2.5.0",
+    "stylelint": "^14.1.0",
+    "stylelint-config-prettier": "^9.0.3",
+    "stylelint-config-standard": "^24.0.0",
+    "stylelint-config-standard-scss": "^3.0.0",
+    "stylelint-prettier": "^2.0.0"
+  },
+  "name": "Zammad",
+  "version": "5.1.0"
 }
diff --git a/nixpkgs/pkgs/applications/networking/misc/zammad/source.json b/nixpkgs/pkgs/applications/networking/misc/zammad/source.json
index 0142e8d6fce5..76e1321433f1 100644
--- a/nixpkgs/pkgs/applications/networking/misc/zammad/source.json
+++ b/nixpkgs/pkgs/applications/networking/misc/zammad/source.json
@@ -1,7 +1,7 @@
 {
-    "owner": "zammad",
-    "repo": "zammad",
-    "rev": "ad12ad4e01f5e6d1d58da019107b66e562ae463c",
-    "sha256": "i50A0/dBsdvv7L/fZiA1LvJEcO3OghjjgwS/7oFjk2o=",
-    "fetchSubmodules": true
+  "owner": "zammad",
+  "repo": "zammad",
+  "rev": "eefae45c2ad6e6a96b8df631d2f50f290ecbd27d",
+  "sha256": "EjowvM//+UsAfEH9/0jgLkiD7EWH34M1NQ9U2DotBqc=",
+  "fetchSubmodules": true
 }
diff --git a/nixpkgs/pkgs/applications/networking/misc/zammad/update.nix b/nixpkgs/pkgs/applications/networking/misc/zammad/update.nix
index 216feb3e3706..49e676d13f39 100644
--- a/nixpkgs/pkgs/applications/networking/misc/zammad/update.nix
+++ b/nixpkgs/pkgs/applications/networking/misc/zammad/update.nix
@@ -3,6 +3,7 @@
 , makeWrapper
 , bundix
 , common-updater-scripts
+, jq
 , nix-prefetch-github
 , yarn
 , yarn2nix
@@ -22,6 +23,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     bundix
     common-updater-scripts
+    jq
     nix-prefetch-github
     yarn
     yarn2nix
diff --git a/nixpkgs/pkgs/applications/networking/misc/zammad/update.sh b/nixpkgs/pkgs/applications/networking/misc/zammad/update.sh
index f1ddf27ac618..982e77c1228b 100755
--- a/nixpkgs/pkgs/applications/networking/misc/zammad/update.sh
+++ b/nixpkgs/pkgs/applications/networking/misc/zammad/update.sh
@@ -38,7 +38,7 @@ trap cleanup EXIT
 pushd $WORK_DIR
 
 echo ":: Creating source.json"
-nix-prefetch-github zammad zammad --rev $VERSION --json > $TARGET_DIR/source.json
+nix-prefetch-github zammad zammad --rev $VERSION --json --fetch-submodules | jq 'del(.leaveDotGit) | del(.deepClone)' > $TARGET_DIR/source.json
 echo >> $TARGET_DIR/source.json
 
 echo ":: Fetching source"
@@ -61,7 +61,7 @@ cp yarn.lock $TARGET_DIR
 yarn2nix > $TARGET_DIR/yarn.nix
 
 # needed to avoid import from derivation
-cp package.json $TARGET_DIR
+jq --arg VERSION "$VERSION" '. += {name: "Zammad", version: $VERSION}' package.json > $TARGET_DIR/package.json
 
 popd
 popd
diff --git a/nixpkgs/pkgs/applications/networking/misc/zammad/yarn.lock b/nixpkgs/pkgs/applications/networking/misc/zammad/yarn.lock
index 8f512464386c..410bbae565ad 100644
--- a/nixpkgs/pkgs/applications/networking/misc/zammad/yarn.lock
+++ b/nixpkgs/pkgs/applications/networking/misc/zammad/yarn.lock
@@ -2,188 +2,118 @@
 # yarn lockfile v1
 
 
-ansi-cyan@^0.1.1:
-  version "0.1.1"
-  resolved "https://registry.yarnpkg.com/ansi-cyan/-/ansi-cyan-0.1.1.tgz#538ae528af8982f28ae30d86f2f17456d2609873"
-  integrity sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=
+"@babel/code-frame@^7.0.0":
+  version "7.16.0"
+  resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.0.tgz#0dfc80309beec8411e65e706461c408b0bb9b431"
+  integrity sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA==
   dependencies:
-    ansi-wrap "0.1.0"
+    "@babel/highlight" "^7.16.0"
 
-ansi-gray@^0.1.1:
-  version "0.1.1"
-  resolved "https://registry.yarnpkg.com/ansi-gray/-/ansi-gray-0.1.1.tgz#2962cf54ec9792c48510a3deb524436861ef7251"
-  integrity sha1-KWLPVOyXksSFEKPetSRDaGHvclE=
+"@babel/helper-validator-identifier@^7.15.7":
+  version "7.15.7"
+  resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389"
+  integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==
+
+"@babel/highlight@^7.16.0":
+  version "7.16.0"
+  resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.0.tgz#6ceb32b2ca4b8f5f361fb7fd821e3fddf4a1725a"
+  integrity sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==
   dependencies:
-    ansi-wrap "0.1.0"
+    "@babel/helper-validator-identifier" "^7.15.7"
+    chalk "^2.0.0"
+    js-tokens "^4.0.0"
 
-ansi-red@^0.1.1:
-  version "0.1.1"
-  resolved "https://registry.yarnpkg.com/ansi-red/-/ansi-red-0.1.1.tgz#8c638f9d1080800a353c9c28c8a81ca4705d946c"
-  integrity sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=
+"@nodelib/fs.scandir@2.1.5":
+  version "2.1.5"
+  resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
+  integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
   dependencies:
-    ansi-wrap "0.1.0"
+    "@nodelib/fs.stat" "2.0.5"
+    run-parallel "^1.1.9"
 
-ansi-regex@^2.0.0:
-  version "2.1.1"
-  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
-  integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
+"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":
+  version "2.0.5"
+  resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"
+  integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
 
-ansi-styles@^2.2.1:
-  version "2.2.1"
-  resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
-  integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=
+"@nodelib/fs.walk@^1.2.3":
+  version "1.2.8"
+  resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"
+  integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
+  dependencies:
+    "@nodelib/fs.scandir" "2.1.5"
+    fastq "^1.6.0"
 
-ansi-wrap@0.1.0:
-  version "0.1.0"
-  resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf"
-  integrity sha1-qCJQ3bABXponyoLoLqYDu/pF768=
+"@types/minimist@^1.2.0":
+  version "1.2.2"
+  resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c"
+  integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==
 
-anymatch@^1.3.0:
-  version "1.3.2"
-  resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a"
-  integrity sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==
-  dependencies:
-    micromatch "^2.1.5"
-    normalize-path "^2.0.0"
+"@types/normalize-package-data@^2.4.0":
+  version "2.4.1"
+  resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301"
+  integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==
 
-archy@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40"
-  integrity sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=
+"@types/parse-json@^4.0.0":
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0"
+  integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==
 
-argparse@^1.0.7:
-  version "1.0.10"
-  resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
-  integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
+ajv@^8.0.1:
+  version "8.8.2"
+  resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.8.2.tgz#01b4fef2007a28bf75f0b7fc009f62679de4abbb"
+  integrity sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==
   dependencies:
-    sprintf-js "~1.0.2"
+    fast-deep-equal "^3.1.1"
+    json-schema-traverse "^1.0.0"
+    require-from-string "^2.0.2"
+    uri-js "^4.2.2"
 
-arr-diff@^1.0.1:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-1.1.0.tgz#687c32758163588fef7de7b36fabe495eb1a399a"
-  integrity sha1-aHwydYFjWI/vfeezb6vklesaOZo=
-  dependencies:
-    arr-flatten "^1.0.1"
-    array-slice "^0.2.3"
+ansi-regex@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
+  integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
 
-arr-diff@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf"
-  integrity sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=
+ansi-styles@^3.2.1:
+  version "3.2.1"
+  resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
+  integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
   dependencies:
-    arr-flatten "^1.0.1"
+    color-convert "^1.9.0"
 
-arr-diff@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520"
-  integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=
-
-arr-flatten@^1.0.1, arr-flatten@^1.1.0:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1"
-  integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==
+ansi-styles@^4.0.0:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
+  integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
+  dependencies:
+    color-convert "^2.0.1"
 
-arr-union@^2.0.1:
+array-union@^2.1.0:
   version "2.1.0"
-  resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-2.1.0.tgz#20f9eab5ec70f5c7d215b1077b1c39161d292c7d"
-  integrity sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=
-
-arr-union@^3.1.0:
-  version "3.1.0"
-  resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4"
-  integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=
-
-array-differ@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031"
-  integrity sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=
+  resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"
+  integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==
 
-array-each@^1.0.1:
+arrify@^1.0.1:
   version "1.0.1"
-  resolved "https://registry.yarnpkg.com/array-each/-/array-each-1.0.1.tgz#a794af0c05ab1752846ee753a1f211a05ba0c44f"
-  integrity sha1-p5SvDAWrF1KEbudTofIRoFugxE8=
-
-array-slice@^0.2.3:
-  version "0.2.3"
-  resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-0.2.3.tgz#dd3cfb80ed7973a75117cdac69b0b99ec86186f5"
-  integrity sha1-3Tz7gO15c6dRF82sabC5nshhhvU=
-
-array-slice@^1.0.0:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-1.1.0.tgz#e368ea15f89bc7069f7ffb89aec3a6c7d4ac22d4"
-  integrity sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==
-
-array-uniq@^1.0.2:
-  version "1.0.3"
-  resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
-  integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=
-
-array-unique@^0.2.1:
-  version "0.2.1"
-  resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53"
-  integrity sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=
+  resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
+  integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=
 
-array-unique@^0.3.2:
-  version "0.3.2"
-  resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"
-  integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=
-
-assign-symbols@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"
-  integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=
-
-async-each@^1.0.0:
-  version "1.0.3"
-  resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf"
-  integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==
-
-atob@^2.1.2:
-  version "2.1.2"
-  resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
-  integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
+astral-regex@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31"
+  integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==
 
 balanced-match@^1.0.0:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
   integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
 
-base@^0.11.1:
-  version "0.11.2"
-  resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f"
-  integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==
-  dependencies:
-    cache-base "^1.0.1"
-    class-utils "^0.3.5"
-    component-emitter "^1.2.1"
-    define-property "^1.0.0"
-    isobject "^3.0.1"
-    mixin-deep "^1.2.0"
-    pascalcase "^0.1.1"
-
-beeper@^1.0.0:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/beeper/-/beeper-1.1.1.tgz#e6d5ea8c5dad001304a70b22638447f69cb2f809"
-  integrity sha1-5tXqjF2tABMEpwsiY4RH9pyy+Ak=
-
-binary-extensions@^1.0.0:
-  version "1.13.1"
-  resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65"
-  integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==
-
-bindings@^1.5.0:
-  version "1.5.0"
-  resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df"
-  integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==
-  dependencies:
-    file-uri-to-path "1.0.0"
-
-boolbase@~1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
-  integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24=
+balanced-match@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-2.0.0.tgz#dc70f920d78db8b858535795867bf48f820633d9"
+  integrity sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==
 
-brace-expansion@^1.0.0:
+brace-expansion@^1.1.7:
   version "1.1.11"
   resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
   integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
@@ -191,838 +121,390 @@ brace-expansion@^1.0.0:
     balanced-match "^1.0.0"
     concat-map "0.0.1"
 
-braces@^1.8.2:
-  version "1.8.5"
-  resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7"
-  integrity sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=
-  dependencies:
-    expand-range "^1.8.1"
-    preserve "^0.2.0"
-    repeat-element "^1.1.2"
-
-braces@^2.3.1:
-  version "2.3.2"
-  resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729"
-  integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==
-  dependencies:
-    arr-flatten "^1.1.0"
-    array-unique "^0.3.2"
-    extend-shallow "^2.0.1"
-    fill-range "^4.0.0"
-    isobject "^3.0.1"
-    repeat-element "^1.1.2"
-    snapdragon "^0.8.1"
-    snapdragon-node "^2.0.1"
-    split-string "^3.0.2"
-    to-regex "^3.0.1"
-
-cache-base@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2"
-  integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==
-  dependencies:
-    collection-visit "^1.0.0"
-    component-emitter "^1.2.1"
-    get-value "^2.0.6"
-    has-value "^1.0.0"
-    isobject "^3.0.1"
-    set-value "^2.0.0"
-    to-object-path "^0.3.0"
-    union-value "^1.0.0"
-    unset-value "^1.0.0"
-
-chalk@^1.0.0, chalk@^1.1.3:
-  version "1.1.3"
-  resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
-  integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=
-  dependencies:
-    ansi-styles "^2.2.1"
-    escape-string-regexp "^1.0.2"
-    has-ansi "^2.0.0"
-    strip-ansi "^3.0.0"
-    supports-color "^2.0.0"
-
-cheerio@0.*:
-  version "0.22.0"
-  resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-0.22.0.tgz#a9baa860a3f9b595a6b81b1a86873121ed3a269e"
-  integrity sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=
-  dependencies:
-    css-select "~1.2.0"
-    dom-serializer "~0.1.0"
-    entities "~1.1.1"
-    htmlparser2 "^3.9.1"
-    lodash.assignin "^4.0.9"
-    lodash.bind "^4.1.4"
-    lodash.defaults "^4.0.1"
-    lodash.filter "^4.4.0"
-    lodash.flatten "^4.2.0"
-    lodash.foreach "^4.3.0"
-    lodash.map "^4.4.0"
-    lodash.merge "^4.4.0"
-    lodash.pick "^4.2.1"
-    lodash.reduce "^4.4.0"
-    lodash.reject "^4.4.0"
-    lodash.some "^4.4.0"
-
-chokidar@^1.6.1:
-  version "1.7.0"
-  resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468"
-  integrity sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=
-  dependencies:
-    anymatch "^1.3.0"
-    async-each "^1.0.0"
-    glob-parent "^2.0.0"
-    inherits "^2.0.1"
-    is-binary-path "^1.0.0"
-    is-glob "^2.0.0"
-    path-is-absolute "^1.0.0"
-    readdirp "^2.0.0"
-  optionalDependencies:
-    fsevents "^1.0.0"
-
-clap@^1.0.9:
-  version "1.2.3"
-  resolved "https://registry.yarnpkg.com/clap/-/clap-1.2.3.tgz#4f36745b32008492557f46412d66d50cb99bce51"
-  integrity sha512-4CoL/A3hf90V3VIEjeuhSvlGFEHKzOz+Wfc2IVZc+FaUgU0ZQafJTP49fvnULipOPcAfqhyI2duwQyns6xqjYA==
+braces@^3.0.1:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
+  integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
   dependencies:
-    chalk "^1.1.3"
+    fill-range "^7.0.1"
+
+callsites@^3.0.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
+  integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
 
-class-utils@^0.3.5:
-  version "0.3.6"
-  resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463"
-  integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==
+camelcase-keys@^6.2.2:
+  version "6.2.2"
+  resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0"
+  integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==
   dependencies:
-    arr-union "^3.1.0"
-    define-property "^0.2.5"
-    isobject "^3.0.0"
-    static-extend "^0.1.1"
+    camelcase "^5.3.1"
+    map-obj "^4.0.0"
+    quick-lru "^4.0.1"
 
-clone-stats@^0.0.1:
-  version "0.0.1"
-  resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1"
-  integrity sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=
+camelcase@^5.3.1:
+  version "5.3.1"
+  resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
+  integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
 
-clone@^0.2.0:
-  version "0.2.0"
-  resolved "https://registry.yarnpkg.com/clone/-/clone-0.2.0.tgz#c6126a90ad4f72dbf5acdb243cc37724fe93fc1f"
-  integrity sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=
+chalk@^2.0.0:
+  version "2.4.2"
+  resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
+  integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
+  dependencies:
+    ansi-styles "^3.2.1"
+    escape-string-regexp "^1.0.5"
+    supports-color "^5.3.0"
 
-clone@^1.0.0, clone@^1.0.2:
-  version "1.0.4"
-  resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e"
-  integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4=
+clone-regexp@^2.1.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-2.2.0.tgz#7d65e00885cd8796405c35a737e7a86b7429e36f"
+  integrity sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q==
+  dependencies:
+    is-regexp "^2.0.0"
 
-coa@~1.0.1:
-  version "1.0.4"
-  resolved "https://registry.yarnpkg.com/coa/-/coa-1.0.4.tgz#a9ef153660d6a86a8bdec0289a5c684d217432fd"
-  integrity sha1-qe8VNmDWqGqL3sAomlxoTSF0Mv0=
+color-convert@^1.9.0:
+  version "1.9.3"
+  resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
+  integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
   dependencies:
-    q "^1.1.2"
+    color-name "1.1.3"
 
-collection-visit@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0"
-  integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=
+color-convert@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
+  integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
   dependencies:
-    map-visit "^1.0.0"
-    object-visit "^1.0.0"
+    color-name "~1.1.4"
 
-color-support@^1.1.3:
+color-name@1.1.3:
   version "1.1.3"
-  resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2"
-  integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==
-
-colors@~1.1.2:
-  version "1.1.2"
-  resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63"
-  integrity sha1-FopHAXVran9RoSzgyXv6KMCE7WM=
+  resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
+  integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
 
-component-emitter@^1.2.1:
-  version "1.3.0"
-  resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0"
-  integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==
+color-name@~1.1.4:
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
+  integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
 
 concat-map@0.0.1:
   version "0.0.1"
   resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
   integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
 
-copy-descriptor@^0.1.0:
-  version "0.1.1"
-  resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
-  integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=
-
-core-util-is@~1.0.0:
-  version "1.0.3"
-  resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
-  integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
-
-css-select@~1.2.0:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858"
-  integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=
-  dependencies:
-    boolbase "~1.0.0"
-    css-what "2.1"
-    domutils "1.5.1"
-    nth-check "~1.0.1"
-
-css-what@2.1:
-  version "2.1.3"
-  resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2"
-  integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==
-
-csso@~2.3.1:
-  version "2.3.2"
-  resolved "https://registry.yarnpkg.com/csso/-/csso-2.3.2.tgz#ddd52c587033f49e94b71fc55569f252e8ff5f85"
-  integrity sha1-3dUsWHAz9J6Utx/FVWnyUuj/X4U=
+cosmiconfig@^7.0.1:
+  version "7.0.1"
+  resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d"
+  integrity sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==
   dependencies:
-    clap "^1.0.9"
-    source-map "^0.5.3"
+    "@types/parse-json" "^4.0.0"
+    import-fresh "^3.2.1"
+    parse-json "^5.0.0"
+    path-type "^4.0.0"
+    yaml "^1.10.0"
 
-dateformat@^2.0.0:
-  version "2.2.0"
-  resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.2.0.tgz#4065e2013cf9fb916ddfd82efb506ad4c6769062"
-  integrity sha1-QGXiATz5+5Ft39gu+1Bq1MZ2kGI=
-
-debug@^2.2.0, debug@^2.3.3:
-  version "2.6.9"
-  resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
-  integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
-  dependencies:
-    ms "2.0.0"
-
-decode-uri-component@^0.2.0:
-  version "0.2.0"
-  resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
-  integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=
+cssesc@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
+  integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==
 
-defaults@^1.0.0:
-  version "1.0.3"
-  resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d"
-  integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=
+debug@^4.3.2:
+  version "4.3.3"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664"
+  integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==
   dependencies:
-    clone "^1.0.2"
+    ms "2.1.2"
 
-define-property@^0.2.5:
-  version "0.2.5"
-  resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116"
-  integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=
+decamelize-keys@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9"
+  integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=
   dependencies:
-    is-descriptor "^0.1.0"
+    decamelize "^1.1.0"
+    map-obj "^1.0.0"
 
-define-property@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6"
-  integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY=
-  dependencies:
-    is-descriptor "^1.0.0"
+decamelize@^1.1.0, decamelize@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
+  integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
 
-define-property@^2.0.2:
-  version "2.0.2"
-  resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d"
-  integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==
+dir-glob@^3.0.1:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"
+  integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==
   dependencies:
-    is-descriptor "^1.0.2"
-    isobject "^3.0.1"
-
-deprecated@^0.0.1:
-  version "0.0.1"
-  resolved "https://registry.yarnpkg.com/deprecated/-/deprecated-0.0.1.tgz#f9c9af5464afa1e7a971458a8bdef2aa94d5bb19"
-  integrity sha1-+cmvVGSvoeepcUWKi97yqpTVuxk=
-
-detect-file@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7"
-  integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=
+    path-type "^4.0.0"
 
-dom-serializer@0:
-  version "0.2.2"
-  resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51"
-  integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==
+dom-serializer@^1.0.1:
+  version "1.3.2"
+  resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91"
+  integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==
   dependencies:
     domelementtype "^2.0.1"
+    domhandler "^4.2.0"
     entities "^2.0.0"
 
-dom-serializer@~0.1.0:
-  version "0.1.1"
-  resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0"
-  integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==
-  dependencies:
-    domelementtype "^1.3.0"
-    entities "^1.1.1"
-
-domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1:
-  version "1.3.1"
-  resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f"
-  integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==
-
-domelementtype@^2.0.1:
+domelementtype@^2.0.1, domelementtype@^2.2.0:
   version "2.2.0"
   resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57"
   integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==
 
-domhandler@^2.3.0:
-  version "2.4.2"
-  resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803"
-  integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==
-  dependencies:
-    domelementtype "1"
-
-domutils@1.5.1:
-  version "1.5.1"
-  resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf"
-  integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=
-  dependencies:
-    dom-serializer "0"
-    domelementtype "1"
-
-domutils@^1.5.1:
-  version "1.7.0"
-  resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a"
-  integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==
+domhandler@^4.2.0, domhandler@^4.2.2:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.0.tgz#16c658c626cf966967e306f966b431f77d4a5626"
+  integrity sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==
   dependencies:
-    dom-serializer "0"
-    domelementtype "1"
+    domelementtype "^2.2.0"
 
-duplexer2@0.0.2:
-  version "0.0.2"
-  resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db"
-  integrity sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds=
-  dependencies:
-    readable-stream "~1.1.9"
-
-end-of-stream@~0.1.5:
-  version "0.1.5"
-  resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-0.1.5.tgz#8e177206c3c80837d85632e8b9359dfe8b2f6eaf"
-  integrity sha1-jhdyBsPICDfYVjLouTWd/osvbq8=
+domutils@^2.8.0:
+  version "2.8.0"
+  resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135"
+  integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==
   dependencies:
-    once "~1.3.0"
+    dom-serializer "^1.0.1"
+    domelementtype "^2.2.0"
+    domhandler "^4.2.0"
 
-entities@^1.1.1, entities@~1.1.1:
-  version "1.1.2"
-  resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56"
-  integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==
+emoji-regex@^8.0.0:
+  version "8.0.0"
+  resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
+  integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
 
 entities@^2.0.0:
   version "2.2.0"
   resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55"
   integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==
 
-escape-string-regexp@^1.0.2:
-  version "1.0.5"
-  resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
-  integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
-
-esprima@^2.6.0:
-  version "2.7.3"
-  resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581"
-  integrity sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=
-
-expand-brackets@^0.1.4:
-  version "0.1.5"
-  resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b"
-  integrity sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=
-  dependencies:
-    is-posix-bracket "^0.1.0"
-
-expand-brackets@^2.1.4:
-  version "2.1.4"
-  resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622"
-  integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI=
-  dependencies:
-    debug "^2.3.3"
-    define-property "^0.2.5"
-    extend-shallow "^2.0.1"
-    posix-character-classes "^0.1.0"
-    regex-not "^1.0.0"
-    snapdragon "^0.8.1"
-    to-regex "^3.0.1"
-
-expand-range@^1.8.1:
-  version "1.8.2"
-  resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337"
-  integrity sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=
-  dependencies:
-    fill-range "^2.1.0"
+entities@^3.0.1:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4"
+  integrity sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==
 
-expand-tilde@^2.0.0, expand-tilde@^2.0.2:
-  version "2.0.2"
-  resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502"
-  integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=
+error-ex@^1.3.1:
+  version "1.3.2"
+  resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
+  integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
   dependencies:
-    homedir-polyfill "^1.0.1"
+    is-arrayish "^0.2.1"
 
-extend-shallow@^1.1.2:
-  version "1.1.4"
-  resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-1.1.4.tgz#19d6bf94dfc09d76ba711f39b872d21ff4dd9071"
-  integrity sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=
-  dependencies:
-    kind-of "^1.1.0"
+escape-string-regexp@^1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
+  integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
 
-extend-shallow@^2.0.1:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f"
-  integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=
+execall@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/execall/-/execall-2.0.0.tgz#16a06b5fe5099df7d00be5d9c06eecded1663b45"
+  integrity sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow==
   dependencies:
-    is-extendable "^0.1.0"
+    clone-regexp "^2.1.0"
 
-extend-shallow@^3.0.0, extend-shallow@^3.0.2:
-  version "3.0.2"
-  resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8"
-  integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=
-  dependencies:
-    assign-symbols "^1.0.0"
-    is-extendable "^1.0.1"
+fast-deep-equal@^3.1.1:
+  version "3.1.3"
+  resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
+  integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
 
-extend@^3.0.0:
-  version "3.0.2"
-  resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
-  integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
+fast-diff@^1.1.2:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03"
+  integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==
 
-extglob@^0.3.1:
-  version "0.3.2"
-  resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1"
-  integrity sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=
+fast-glob@^3.1.1, fast-glob@^3.2.7:
+  version "3.2.7"
+  resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1"
+  integrity sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==
   dependencies:
-    is-extglob "^1.0.0"
+    "@nodelib/fs.stat" "^2.0.2"
+    "@nodelib/fs.walk" "^1.2.3"
+    glob-parent "^5.1.2"
+    merge2 "^1.3.0"
+    micromatch "^4.0.4"
 
-extglob@^2.0.4:
-  version "2.0.4"
-  resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543"
-  integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==
-  dependencies:
-    array-unique "^0.3.2"
-    define-property "^1.0.0"
-    expand-brackets "^2.1.4"
-    extend-shallow "^2.0.1"
-    fragment-cache "^0.2.1"
-    regex-not "^1.0.0"
-    snapdragon "^0.8.1"
-    to-regex "^3.0.1"
-
-fancy-log@^1.1.0:
-  version "1.3.3"
-  resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.3.tgz#dbc19154f558690150a23953a0adbd035be45fc7"
-  integrity sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==
-  dependencies:
-    ansi-gray "^0.1.1"
-    color-support "^1.1.3"
-    parse-node-version "^1.0.0"
-    time-stamp "^1.0.0"
-
-file-uri-to-path@1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd"
-  integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==
-
-filename-regex@^2.0.0:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26"
-  integrity sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=
+fastest-levenshtein@^1.0.12:
+  version "1.0.12"
+  resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz#9990f7d3a88cc5a9ffd1f1745745251700d497e2"
+  integrity sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==
 
-fill-range@^2.1.0:
-  version "2.2.4"
-  resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565"
-  integrity sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==
+fastq@^1.6.0:
+  version "1.13.0"
+  resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c"
+  integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==
   dependencies:
-    is-number "^2.1.0"
-    isobject "^2.0.0"
-    randomatic "^3.0.0"
-    repeat-element "^1.1.2"
-    repeat-string "^1.5.2"
+    reusify "^1.0.4"
 
-fill-range@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7"
-  integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=
+file-entry-cache@^6.0.1:
+  version "6.0.1"
+  resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
+  integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==
   dependencies:
-    extend-shallow "^2.0.1"
-    is-number "^3.0.0"
-    repeat-string "^1.6.1"
-    to-regex-range "^2.1.0"
-
-find-index@^0.1.1:
-  version "0.1.1"
-  resolved "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4"
-  integrity sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ=
+    flat-cache "^3.0.4"
 
-findup-sync@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc"
-  integrity sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=
+fill-range@^7.0.1:
+  version "7.0.1"
+  resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
+  integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
   dependencies:
-    detect-file "^1.0.0"
-    is-glob "^3.1.0"
-    micromatch "^3.0.4"
-    resolve-dir "^1.0.1"
+    to-regex-range "^5.0.1"
 
-fined@^1.0.1:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/fined/-/fined-1.2.0.tgz#d00beccf1aa2b475d16d423b0238b713a2c4a37b"
-  integrity sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==
+find-up@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
+  integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
   dependencies:
-    expand-tilde "^2.0.2"
-    is-plain-object "^2.0.3"
-    object.defaults "^1.1.0"
-    object.pick "^1.2.0"
-    parse-filepath "^1.0.1"
-
-first-chunk-stream@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz#59bfb50cd905f60d7c394cd3d9acaab4e6ad934e"
-  integrity sha1-Wb+1DNkF9g18OUzT2ayqtOatk04=
+    locate-path "^5.0.0"
+    path-exists "^4.0.0"
 
-first-chunk-stream@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz#1bdecdb8e083c0664b91945581577a43a9f31d70"
-  integrity sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=
+flat-cache@^3.0.4:
+  version "3.0.4"
+  resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11"
+  integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==
   dependencies:
-    readable-stream "^2.0.2"
-
-flagged-respawn@^1.0.0:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-1.0.1.tgz#e7de6f1279ddd9ca9aac8a5971d618606b3aab41"
-  integrity sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==
+    flatted "^3.1.0"
+    rimraf "^3.0.2"
 
-for-in@^1.0.1, for-in@^1.0.2:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
-  integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=
+flatted@^3.1.0:
+  version "3.2.4"
+  resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.4.tgz#28d9969ea90661b5134259f312ab6aa7929ac5e2"
+  integrity sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw==
 
-for-own@^0.1.4:
-  version "0.1.5"
-  resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce"
-  integrity sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=
-  dependencies:
-    for-in "^1.0.1"
-
-for-own@^1.0.0:
+fs.realpath@^1.0.0:
   version "1.0.0"
-  resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b"
-  integrity sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=
-  dependencies:
-    for-in "^1.0.1"
-
-fragment-cache@^0.2.1:
-  version "0.2.1"
-  resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19"
-  integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=
-  dependencies:
-    map-cache "^0.2.2"
-
-fsevents@^1.0.0:
-  version "1.2.13"
-  resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38"
-  integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==
-  dependencies:
-    bindings "^1.5.0"
-    nan "^2.12.1"
+  resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
+  integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
 
 function-bind@^1.1.1:
   version "1.1.1"
   resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
   integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
 
-gaze@^0.5.1:
-  version "0.5.2"
-  resolved "https://registry.yarnpkg.com/gaze/-/gaze-0.5.2.tgz#40b709537d24d1d45767db5a908689dfe69ac44f"
-  integrity sha1-QLcJU30k0dRXZ9takIaJ3+aaxE8=
-  dependencies:
-    globule "~0.1.0"
-
-get-value@^2.0.3, get-value@^2.0.6:
-  version "2.0.6"
-  resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28"
-  integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=
-
-glob-base@^0.3.0:
-  version "0.3.0"
-  resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4"
-  integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=
-  dependencies:
-    glob-parent "^2.0.0"
-    is-glob "^2.0.0"
-
-glob-parent@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28"
-  integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=
-  dependencies:
-    is-glob "^2.0.0"
-
-glob-parent@^3.0.1:
-  version "3.1.0"
-  resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae"
-  integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=
-  dependencies:
-    is-glob "^3.1.0"
-    path-dirname "^1.0.0"
-
-glob-stream@^3.1.5:
-  version "3.1.18"
-  resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-3.1.18.tgz#9170a5f12b790306fdfe598f313f8f7954fd143b"
-  integrity sha1-kXCl8St5Awb9/lmPMT+PeVT9FDs=
-  dependencies:
-    glob "^4.3.1"
-    glob2base "^0.0.12"
-    minimatch "^2.0.1"
-    ordered-read-streams "^0.1.0"
-    through2 "^0.6.1"
-    unique-stream "^1.0.0"
-
-glob-watcher@^0.0.6:
-  version "0.0.6"
-  resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-0.0.6.tgz#b95b4a8df74b39c83298b0c05c978b4d9a3b710b"
-  integrity sha1-uVtKjfdLOcgymLDAXJeLTZo7cQs=
-  dependencies:
-    gaze "^0.5.1"
+get-stdin@^8.0.0:
+  version "8.0.0"
+  resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53"
+  integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==
 
-glob2base@^0.0.12:
-  version "0.0.12"
-  resolved "https://registry.yarnpkg.com/glob2base/-/glob2base-0.0.12.tgz#9d419b3e28f12e83a362164a277055922c9c0d56"
-  integrity sha1-nUGbPijxLoOjYhZKJ3BVkiycDVY=
+glob-parent@^5.1.2:
+  version "5.1.2"
+  resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
+  integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
   dependencies:
-    find-index "^0.1.1"
+    is-glob "^4.0.1"
 
-glob@^4.3.1:
-  version "4.5.3"
-  resolved "https://registry.yarnpkg.com/glob/-/glob-4.5.3.tgz#c6cb73d3226c1efef04de3c56d012f03377ee15f"
-  integrity sha1-xstz0yJsHv7wTePFbQEvAzd+4V8=
+glob@^7.1.3:
+  version "7.2.0"
+  resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
+  integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==
   dependencies:
+    fs.realpath "^1.0.0"
     inflight "^1.0.4"
     inherits "2"
-    minimatch "^2.0.1"
+    minimatch "^3.0.4"
     once "^1.3.0"
+    path-is-absolute "^1.0.0"
 
-glob@~3.1.21:
-  version "3.1.21"
-  resolved "https://registry.yarnpkg.com/glob/-/glob-3.1.21.tgz#d29e0a055dea5138f4d07ed40e8982e83c2066cd"
-  integrity sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=
-  dependencies:
-    graceful-fs "~1.2.0"
-    inherits "1"
-    minimatch "~0.2.11"
-
-global-modules@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea"
-  integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==
-  dependencies:
-    global-prefix "^1.0.1"
-    is-windows "^1.0.1"
-    resolve-dir "^1.0.0"
-
-global-prefix@^1.0.1:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe"
-  integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=
-  dependencies:
-    expand-tilde "^2.0.2"
-    homedir-polyfill "^1.0.1"
-    ini "^1.3.4"
-    is-windows "^1.0.1"
-    which "^1.2.14"
-
-globule@~0.1.0:
-  version "0.1.0"
-  resolved "https://registry.yarnpkg.com/globule/-/globule-0.1.0.tgz#d9c8edde1da79d125a151b79533b978676346ae5"
-  integrity sha1-2cjt3h2nnRJaFRt5UzuXhnY0auU=
+global-modules@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780"
+  integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==
   dependencies:
-    glob "~3.1.21"
-    lodash "~1.0.1"
-    minimatch "~0.2.11"
+    global-prefix "^3.0.0"
 
-glogg@^1.0.0:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.2.tgz#2d7dd702beda22eb3bffadf880696da6d846313f"
-  integrity sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==
+global-prefix@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz#fc85f73064df69f50421f47f883fe5b913ba9b97"
+  integrity sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==
   dependencies:
-    sparkles "^1.0.0"
+    ini "^1.3.5"
+    kind-of "^6.0.2"
+    which "^1.3.1"
 
-graceful-fs@^3.0.0:
-  version "3.0.12"
-  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-3.0.12.tgz#0034947ce9ed695ec8ab0b854bc919e82b1ffaef"
-  integrity sha512-J55gaCS4iTTJfTXIxSVw3EMQckcqkpdRv3IR7gu6sq0+tbC363Zx6KH/SEwXASK9JRbhyZmVjJEVJIOxYsB3Qg==
+globby@^11.0.4:
+  version "11.0.4"
+  resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5"
+  integrity sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==
   dependencies:
-    natives "^1.1.3"
-
-graceful-fs@^4.1.11, graceful-fs@^4.1.2:
-  version "4.2.8"
-  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a"
-  integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==
+    array-union "^2.1.0"
+    dir-glob "^3.0.1"
+    fast-glob "^3.1.1"
+    ignore "^5.1.4"
+    merge2 "^1.3.0"
+    slash "^3.0.0"
 
-graceful-fs@~1.2.0:
-  version "1.2.3"
-  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-1.2.3.tgz#15a4806a57547cb2d2dbf27f42e89a8c3451b364"
-  integrity sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=
+globjoin@^0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/globjoin/-/globjoin-0.1.4.tgz#2f4494ac8919e3767c5cbb691e9f463324285d43"
+  integrity sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=
 
-gulp-cheerio@^0.6.2:
-  version "0.6.3"
-  resolved "https://registry.yarnpkg.com/gulp-cheerio/-/gulp-cheerio-0.6.3.tgz#40271c1703368c88408ab8750ba9bf3e1aea9c68"
-  integrity sha512-ZuRAq48qT9u2E8QUz1pHQZOq9500tQojOfGXzAER91CGYf8a3U5+fHuLWk5wvJ0iwrriaApg5Honvt3r5XMcNg==
-  dependencies:
-    cheerio "0.*"
-    plugin-error "^0.1.2"
-    through2 "^0.6.3"
+hard-rejection@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883"
+  integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==
 
-gulp-rename@^1.2.2:
-  version "1.4.0"
-  resolved "https://registry.yarnpkg.com/gulp-rename/-/gulp-rename-1.4.0.tgz#de1c718e7c4095ae861f7296ef4f3248648240bd"
-  integrity sha512-swzbIGb/arEoFK89tPY58vg3Ok1bw+d35PfUNwWqdo7KM4jkmuGA78JiDNqR+JeZFaeeHnRg9N7aihX3YPmsyg==
+has-flag@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
+  integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
 
-gulp-svgmin@^1.1.2:
-  version "1.2.4"
-  resolved "https://registry.yarnpkg.com/gulp-svgmin/-/gulp-svgmin-1.2.4.tgz#a4aa9e2615cf1105ef555aea86e86296cc20e273"
-  integrity sha1-pKqeJhXPEQXvVVrqhuhilswg4nM=
-  dependencies:
-    gulp-util "^3.0.4"
-    svgo "^0.7.0"
-
-gulp-svgstore@^5.0.1:
-  version "5.0.5"
-  resolved "https://registry.yarnpkg.com/gulp-svgstore/-/gulp-svgstore-5.0.5.tgz#4ad5cec5d753a1624a00e49cef5fc86a45d97327"
-  integrity sha1-StXOxddToWJKAOSc71/IakXZcyc=
-  dependencies:
-    cheerio "0.*"
-    gulp-util "^3.0.0"
-
-gulp-util@^3.0.0, gulp-util@^3.0.4, gulp-util@^3.0.7:
-  version "3.0.8"
-  resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f"
-  integrity sha1-AFTh50RQLifATBh8PsxQXdVLu08=
-  dependencies:
-    array-differ "^1.0.0"
-    array-uniq "^1.0.2"
-    beeper "^1.0.0"
-    chalk "^1.0.0"
-    dateformat "^2.0.0"
-    fancy-log "^1.1.0"
-    gulplog "^1.0.0"
-    has-gulplog "^0.1.0"
-    lodash._reescape "^3.0.0"
-    lodash._reevaluate "^3.0.0"
-    lodash._reinterpolate "^3.0.0"
-    lodash.template "^3.0.0"
-    minimist "^1.1.0"
-    multipipe "^0.1.2"
-    object-assign "^3.0.0"
-    replace-ext "0.0.1"
-    through2 "^2.0.0"
-    vinyl "^0.5.0"
-
-gulp-watch@^4.2.4:
-  version "4.3.11"
-  resolved "https://registry.yarnpkg.com/gulp-watch/-/gulp-watch-4.3.11.tgz#162fc563de9fc770e91f9a7ce3955513a9a118c0"
-  integrity sha1-Fi/FY96fx3DpH5p845VVE6mhGMA=
-  dependencies:
-    anymatch "^1.3.0"
-    chokidar "^1.6.1"
-    glob-parent "^3.0.1"
-    gulp-util "^3.0.7"
-    object-assign "^4.1.0"
-    path-is-absolute "^1.0.1"
-    readable-stream "^2.2.2"
-    slash "^1.0.0"
-    vinyl "^1.2.0"
-    vinyl-file "^2.0.0"
-
-gulp@^3.8.11:
-  version "3.9.1"
-  resolved "https://registry.yarnpkg.com/gulp/-/gulp-3.9.1.tgz#571ce45928dd40af6514fc4011866016c13845b4"
-  integrity sha1-VxzkWSjdQK9lFPxAEYZgFsE4RbQ=
-  dependencies:
-    archy "^1.0.0"
-    chalk "^1.0.0"
-    deprecated "^0.0.1"
-    gulp-util "^3.0.0"
-    interpret "^1.0.0"
-    liftoff "^2.1.0"
-    minimist "^1.1.0"
-    orchestrator "^0.3.0"
-    pretty-hrtime "^1.0.0"
-    semver "^4.1.0"
-    tildify "^1.0.0"
-    v8flags "^2.0.2"
-    vinyl-fs "^0.3.0"
-
-gulplog@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5"
-  integrity sha1-4oxNRdBey77YGDY86PnFkmIp/+U=
+has@^1.0.3:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
+  integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
   dependencies:
-    glogg "^1.0.0"
+    function-bind "^1.1.1"
 
-has-ansi@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
-  integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=
-  dependencies:
-    ansi-regex "^2.0.0"
+hosted-git-info@^2.1.4:
+  version "2.8.9"
+  resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9"
+  integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==
 
-has-gulplog@^0.1.0:
-  version "0.1.0"
-  resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce"
-  integrity sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=
+hosted-git-info@^4.0.1:
+  version "4.0.2"
+  resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz#5e425507eede4fea846b7262f0838456c4209961"
+  integrity sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==
   dependencies:
-    sparkles "^1.0.0"
+    lru-cache "^6.0.0"
 
-has-value@^0.3.1:
-  version "0.3.1"
-  resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f"
-  integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=
-  dependencies:
-    get-value "^2.0.3"
-    has-values "^0.1.4"
-    isobject "^2.0.0"
+html-tags@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz#7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140"
+  integrity sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==
 
-has-value@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177"
-  integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=
+htmlparser2@^7.1.2:
+  version "7.2.0"
+  resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-7.2.0.tgz#8817cdea38bbc324392a90b1990908e81a65f5a5"
+  integrity sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==
   dependencies:
-    get-value "^2.0.6"
-    has-values "^1.0.0"
-    isobject "^3.0.0"
+    domelementtype "^2.0.1"
+    domhandler "^4.2.2"
+    domutils "^2.8.0"
+    entities "^3.0.1"
 
-has-values@^0.1.4:
-  version "0.1.4"
-  resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771"
-  integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E=
+ignore@^5.1.4, ignore@^5.1.9:
+  version "5.1.9"
+  resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.9.tgz#9ec1a5cbe8e1446ec60d4420060d43aa6e7382fb"
+  integrity sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ==
 
-has-values@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f"
-  integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=
+import-fresh@^3.2.1:
+  version "3.3.0"
+  resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
+  integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==
   dependencies:
-    is-number "^3.0.0"
-    kind-of "^4.0.0"
+    parent-module "^1.0.0"
+    resolve-from "^4.0.0"
 
-has@^1.0.3:
-  version "1.0.3"
-  resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
-  integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
-  dependencies:
-    function-bind "^1.1.1"
+import-lazy@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz#e8eb627483a0a43da3c03f3e35548be5cb0cc153"
+  integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==
 
-homedir-polyfill@^1.0.1:
-  version "1.0.3"
-  resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8"
-  integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==
-  dependencies:
-    parse-passwd "^1.0.0"
+imurmurhash@^0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
+  integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
 
-htmlparser2@^3.9.1:
-  version "3.10.1"
-  resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f"
-  integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==
-  dependencies:
-    domelementtype "^1.3.1"
-    domhandler "^2.3.0"
-    domutils "^1.5.1"
-    entities "^1.1.1"
-    inherits "^2.0.1"
-    readable-stream "^3.1.1"
+indent-string@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251"
+  integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==
 
 inflight@^1.0.4:
   version "1.0.6"
@@ -1032,662 +514,235 @@ inflight@^1.0.4:
     once "^1.3.0"
     wrappy "1"
 
-inherits@1:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/inherits/-/inherits-1.0.2.tgz#ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b"
-  integrity sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=
-
-inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3:
+inherits@2:
   version "2.0.4"
   resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
   integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
 
-ini@^1.3.4:
+ini@^1.3.5:
   version "1.3.8"
   resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c"
   integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
 
-interpret@^1.0.0:
-  version "1.4.0"
-  resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e"
-  integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==
-
-is-absolute@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576"
-  integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==
-  dependencies:
-    is-relative "^1.0.0"
-    is-windows "^1.0.1"
-
-is-accessor-descriptor@^0.1.6:
-  version "0.1.6"
-  resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6"
-  integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=
-  dependencies:
-    kind-of "^3.0.2"
-
-is-accessor-descriptor@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656"
-  integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==
-  dependencies:
-    kind-of "^6.0.0"
-
-is-binary-path@^1.0.0:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898"
-  integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=
-  dependencies:
-    binary-extensions "^1.0.0"
-
-is-buffer@^1.1.5:
-  version "1.1.6"
-  resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
-  integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
+is-arrayish@^0.2.1:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
+  integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
 
-is-core-module@^2.2.0:
+is-core-module@^2.2.0, is-core-module@^2.5.0:
   version "2.8.0"
   resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.0.tgz#0321336c3d0925e497fd97f5d95cb114a5ccd548"
   integrity sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==
   dependencies:
     has "^1.0.3"
 
-is-data-descriptor@^0.1.4:
-  version "0.1.4"
-  resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56"
-  integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=
-  dependencies:
-    kind-of "^3.0.2"
-
-is-data-descriptor@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7"
-  integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==
-  dependencies:
-    kind-of "^6.0.0"
-
-is-descriptor@^0.1.0:
-  version "0.1.6"
-  resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca"
-  integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==
-  dependencies:
-    is-accessor-descriptor "^0.1.6"
-    is-data-descriptor "^0.1.4"
-    kind-of "^5.0.0"
-
-is-descriptor@^1.0.0, is-descriptor@^1.0.2:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec"
-  integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==
-  dependencies:
-    is-accessor-descriptor "^1.0.0"
-    is-data-descriptor "^1.0.0"
-    kind-of "^6.0.2"
-
-is-dotfile@^1.0.0:
-  version "1.0.3"
-  resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1"
-  integrity sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=
-
-is-equal-shallow@^0.1.3:
-  version "0.1.3"
-  resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534"
-  integrity sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=
-  dependencies:
-    is-primitive "^2.0.0"
-
-is-extendable@^0.1.0, is-extendable@^0.1.1:
-  version "0.1.1"
-  resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
-  integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=
-
-is-extendable@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4"
-  integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==
-  dependencies:
-    is-plain-object "^2.0.4"
-
-is-extglob@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0"
-  integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=
-
-is-extglob@^2.1.0:
+is-extglob@^2.1.1:
   version "2.1.1"
   resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
   integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
 
-is-glob@^2.0.0, is-glob@^2.0.1:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863"
-  integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=
-  dependencies:
-    is-extglob "^1.0.0"
-
-is-glob@^3.1.0:
-  version "3.1.0"
-  resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a"
-  integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=
-  dependencies:
-    is-extglob "^2.1.0"
-
-is-number@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f"
-  integrity sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=
-  dependencies:
-    kind-of "^3.0.2"
-
-is-number@^3.0.0:
+is-fullwidth-code-point@^3.0.0:
   version "3.0.0"
-  resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195"
-  integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=
-  dependencies:
-    kind-of "^3.0.2"
-
-is-number@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff"
-  integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==
-
-is-plain-object@^2.0.3, is-plain-object@^2.0.4:
-  version "2.0.4"
-  resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
-  integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==
-  dependencies:
-    isobject "^3.0.1"
-
-is-posix-bracket@^0.1.0:
-  version "0.1.1"
-  resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4"
-  integrity sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=
-
-is-primitive@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575"
-  integrity sha1-IHurkWOEmcB7Kt8kCkGochADRXU=
+  resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
+  integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
 
-is-relative@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d"
-  integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==
+is-glob@^4.0.1:
+  version "4.0.3"
+  resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
+  integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
   dependencies:
-    is-unc-path "^1.0.0"
+    is-extglob "^2.1.1"
 
-is-unc-path@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-1.0.0.tgz#d731e8898ed090a12c352ad2eaed5095ad322c9d"
-  integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==
-  dependencies:
-    unc-path-regex "^0.1.2"
+is-number@^7.0.0:
+  version "7.0.0"
+  resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
+  integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
 
-is-utf8@^0.2.0:
-  version "0.2.1"
-  resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
-  integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=
+is-plain-obj@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e"
+  integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4=
 
-is-windows@^1.0.1, is-windows@^1.0.2:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d"
-  integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==
+is-plain-object@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344"
+  integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==
 
-isarray@0.0.1:
-  version "0.0.1"
-  resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
-  integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=
+is-regexp@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-2.1.0.tgz#cd734a56864e23b956bf4e7c66c396a4c0b22c2d"
+  integrity sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA==
 
-isarray@1.0.0, isarray@~1.0.0:
+is-typedarray@^1.0.0:
   version "1.0.0"
-  resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
-  integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
+  resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
+  integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
 
 isexe@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
   integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
 
-isobject@^2.0.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
-  integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=
-  dependencies:
-    isarray "1.0.0"
-
-isobject@^3.0.0, isobject@^3.0.1:
-  version "3.0.1"
-  resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
-  integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8=
-
-js-yaml@~3.7.0:
-  version "3.7.0"
-  resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80"
-  integrity sha1-XJZ93YN6m/3KXy3oQlOr6KHAO4A=
-  dependencies:
-    argparse "^1.0.7"
-    esprima "^2.6.0"
-
-kind-of@^1.1.0:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-1.1.0.tgz#140a3d2d41a36d2efcfa9377b62c24f8495a5c44"
-  integrity sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=
-
-kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0:
-  version "3.2.2"
-  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
-  integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=
-  dependencies:
-    is-buffer "^1.1.5"
-
-kind-of@^4.0.0:
+js-tokens@^4.0.0:
   version "4.0.0"
-  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57"
-  integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc=
-  dependencies:
-    is-buffer "^1.1.5"
+  resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
+  integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
+
+json-parse-even-better-errors@^2.3.0:
+  version "2.3.1"
+  resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
+  integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
 
-kind-of@^5.0.0:
-  version "5.1.0"
-  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d"
-  integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==
+json-schema-traverse@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2"
+  integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==
 
-kind-of@^6.0.0, kind-of@^6.0.2:
+kind-of@^6.0.2, kind-of@^6.0.3:
   version "6.0.3"
   resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
   integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
 
-liftoff@^2.1.0:
-  version "2.5.0"
-  resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-2.5.0.tgz#2009291bb31cea861bbf10a7c15a28caf75c31ec"
-  integrity sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=
-  dependencies:
-    extend "^3.0.0"
-    findup-sync "^2.0.0"
-    fined "^1.0.1"
-    flagged-respawn "^1.0.0"
-    is-plain-object "^2.0.4"
-    object.map "^1.0.0"
-    rechoir "^0.6.2"
-    resolve "^1.1.7"
-
-lodash._basecopy@^3.0.0:
-  version "3.0.1"
-  resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36"
-  integrity sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=
-
-lodash._basetostring@^3.0.0:
-  version "3.0.1"
-  resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5"
-  integrity sha1-0YYdh3+CSlL2aYMtyvPuFVZqB9U=
-
-lodash._basevalues@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7"
-  integrity sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc=
-
-lodash._getnative@^3.0.0:
-  version "3.9.1"
-  resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5"
-  integrity sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=
-
-lodash._isiterateecall@^3.0.0:
-  version "3.0.9"
-  resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c"
-  integrity sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=
+known-css-properties@^0.23.0:
+  version "0.23.0"
+  resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.23.0.tgz#e643e1bab2b1f8ba292eea9557121cc02e9846a0"
+  integrity sha512-h9ivI88e1lFNmTT4HovBN33Ysn0OIJG7IPG2mkpx2uniQXFWqo35QdiX7w0TovlUFXfW8aPFblP5/q0jlOr2sA==
 
-lodash._reescape@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/lodash._reescape/-/lodash._reescape-3.0.0.tgz#2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a"
-  integrity sha1-Kx1vXf4HyKNVdT5fJ/rH8c3hYWo=
-
-lodash._reevaluate@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz#58bc74c40664953ae0b124d806996daca431e2ed"
-  integrity sha1-WLx0xAZklTrgsSTYBpltrKQx4u0=
-
-lodash._reinterpolate@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
-  integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=
-
-lodash._root@^3.0.0:
-  version "3.0.1"
-  resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692"
-  integrity sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI=
-
-lodash.assignin@^4.0.9:
-  version "4.2.0"
-  resolved "https://registry.yarnpkg.com/lodash.assignin/-/lodash.assignin-4.2.0.tgz#ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2"
-  integrity sha1-uo31+4QesKPoBEIysOJjqNxqKKI=
-
-lodash.bind@^4.1.4:
-  version "4.2.1"
-  resolved "https://registry.yarnpkg.com/lodash.bind/-/lodash.bind-4.2.1.tgz#7ae3017e939622ac31b7d7d7dcb1b34db1690d35"
-  integrity sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=
-
-lodash.defaults@^4.0.1:
-  version "4.2.0"
-  resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c"
-  integrity sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=
+lines-and-columns@^1.1.6:
+  version "1.2.4"
+  resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
+  integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
 
-lodash.escape@^3.0.0:
-  version "3.2.0"
-  resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698"
-  integrity sha1-mV7g3BjBtIzJLv+ucaEKq1tIdpg=
+locate-path@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0"
+  integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==
   dependencies:
-    lodash._root "^3.0.0"
-
-lodash.filter@^4.4.0:
-  version "4.6.0"
-  resolved "https://registry.yarnpkg.com/lodash.filter/-/lodash.filter-4.6.0.tgz#668b1d4981603ae1cc5a6fa760143e480b4c4ace"
-  integrity sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=
+    p-locate "^4.1.0"
 
-lodash.flatten@^4.2.0:
-  version "4.4.0"
-  resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f"
-  integrity sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=
+lodash.truncate@^4.4.2:
+  version "4.4.2"
+  resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193"
+  integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=
 
-lodash.foreach@^4.3.0:
-  version "4.5.0"
-  resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53"
-  integrity sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=
-
-lodash.isarguments@^3.0.0:
-  version "3.1.0"
-  resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a"
-  integrity sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=
+lodash@^4.17.15:
+  version "4.17.21"
+  resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
+  integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
 
-lodash.isarray@^3.0.0:
-  version "3.0.4"
-  resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55"
-  integrity sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=
-
-lodash.keys@^3.0.0:
-  version "3.1.2"
-  resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a"
-  integrity sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=
-  dependencies:
-    lodash._getnative "^3.0.0"
-    lodash.isarguments "^3.0.0"
-    lodash.isarray "^3.0.0"
-
-lodash.map@^4.4.0:
-  version "4.6.0"
-  resolved "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz#771ec7839e3473d9c4cde28b19394c3562f4f6d3"
-  integrity sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=
-
-lodash.merge@^4.4.0:
-  version "4.6.2"
-  resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
-  integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
-
-lodash.pick@^4.2.1:
-  version "4.4.0"
-  resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3"
-  integrity sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=
-
-lodash.reduce@^4.4.0:
-  version "4.6.0"
-  resolved "https://registry.yarnpkg.com/lodash.reduce/-/lodash.reduce-4.6.0.tgz#f1ab6b839299ad48f784abbf476596f03b914d3b"
-  integrity sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=
-
-lodash.reject@^4.4.0:
-  version "4.6.0"
-  resolved "https://registry.yarnpkg.com/lodash.reject/-/lodash.reject-4.6.0.tgz#80d6492dc1470864bbf583533b651f42a9f52415"
-  integrity sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=
-
-lodash.restparam@^3.0.0:
-  version "3.6.1"
-  resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805"
-  integrity sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=
-
-lodash.some@^4.4.0:
-  version "4.6.0"
-  resolved "https://registry.yarnpkg.com/lodash.some/-/lodash.some-4.6.0.tgz#1bb9f314ef6b8baded13b549169b2a945eb68e4d"
-  integrity sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=
-
-lodash.template@^3.0.0:
-  version "3.6.2"
-  resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f"
-  integrity sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8=
-  dependencies:
-    lodash._basecopy "^3.0.0"
-    lodash._basetostring "^3.0.0"
-    lodash._basevalues "^3.0.0"
-    lodash._isiterateecall "^3.0.0"
-    lodash._reinterpolate "^3.0.0"
-    lodash.escape "^3.0.0"
-    lodash.keys "^3.0.0"
-    lodash.restparam "^3.0.0"
-    lodash.templatesettings "^3.0.0"
-
-lodash.templatesettings@^3.0.0:
-  version "3.1.1"
-  resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz#fb307844753b66b9f1afa54e262c745307dba8e5"
-  integrity sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU=
+lru-cache@^6.0.0:
+  version "6.0.0"
+  resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
+  integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
   dependencies:
-    lodash._reinterpolate "^3.0.0"
-    lodash.escape "^3.0.0"
-
-lodash@~1.0.1:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/lodash/-/lodash-1.0.2.tgz#8f57560c83b59fc270bd3d561b690043430e2551"
-  integrity sha1-j1dWDIO1n8JwvT1WG2kAQ0MOJVE=
+    yallist "^4.0.0"
 
-lru-cache@2:
-  version "2.7.3"
-  resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.7.3.tgz#6d4524e8b955f95d4f5b58851ce21dd72fb4e952"
-  integrity sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=
-
-make-iterator@^1.0.0:
+map-obj@^1.0.0:
   version "1.0.1"
-  resolved "https://registry.yarnpkg.com/make-iterator/-/make-iterator-1.0.1.tgz#29b33f312aa8f547c4a5e490f56afcec99133ad6"
-  integrity sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==
-  dependencies:
-    kind-of "^6.0.2"
-
-map-cache@^0.2.0, map-cache@^0.2.2:
-  version "0.2.2"
-  resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf"
-  integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=
+  resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d"
+  integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=
 
-map-visit@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f"
-  integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=
-  dependencies:
-    object-visit "^1.0.0"
-
-math-random@^1.0.1:
-  version "1.0.4"
-  resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.4.tgz#5dd6943c938548267016d4e34f057583080c514c"
-  integrity sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==
-
-micromatch@^2.1.5:
-  version "2.3.11"
-  resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565"
-  integrity sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=
-  dependencies:
-    arr-diff "^2.0.0"
-    array-unique "^0.2.1"
-    braces "^1.8.2"
-    expand-brackets "^0.1.4"
-    extglob "^0.3.1"
-    filename-regex "^2.0.0"
-    is-extglob "^1.0.0"
-    is-glob "^2.0.1"
-    kind-of "^3.0.2"
-    normalize-path "^2.0.1"
-    object.omit "^2.0.0"
-    parse-glob "^3.0.4"
-    regex-cache "^0.4.2"
-
-micromatch@^3.0.4, micromatch@^3.1.10:
-  version "3.1.10"
-  resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23"
-  integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==
-  dependencies:
-    arr-diff "^4.0.0"
-    array-unique "^0.3.2"
-    braces "^2.3.1"
-    define-property "^2.0.2"
-    extend-shallow "^3.0.2"
-    extglob "^2.0.4"
-    fragment-cache "^0.2.1"
-    kind-of "^6.0.2"
-    nanomatch "^1.2.9"
-    object.pick "^1.3.0"
-    regex-not "^1.0.0"
-    snapdragon "^0.8.1"
-    to-regex "^3.0.2"
-
-minimatch@^2.0.1:
-  version "2.0.10"
-  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-2.0.10.tgz#8d087c39c6b38c001b97fca7ce6d0e1e80afbac7"
-  integrity sha1-jQh8OcazjAAbl/ynzm0OHoCvusc=
-  dependencies:
-    brace-expansion "^1.0.0"
+map-obj@^4.0.0:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a"
+  integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==
 
-minimatch@~0.2.11:
-  version "0.2.14"
-  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-0.2.14.tgz#c74e780574f63c6f9a090e90efbe6ef53a6a756a"
-  integrity sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=
-  dependencies:
-    lru-cache "2"
-    sigmund "~1.0.0"
-
-minimist@^1.1.0, minimist@^1.2.5:
-  version "1.2.5"
-  resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
-  integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
+mathml-tag-names@^2.1.3:
+  version "2.1.3"
+  resolved "https://registry.yarnpkg.com/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz#4ddadd67308e780cf16a47685878ee27b736a0a3"
+  integrity sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==
+
+meow@^9.0.0:
+  version "9.0.0"
+  resolved "https://registry.yarnpkg.com/meow/-/meow-9.0.0.tgz#cd9510bc5cac9dee7d03c73ee1f9ad959f4ea364"
+  integrity sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==
+  dependencies:
+    "@types/minimist" "^1.2.0"
+    camelcase-keys "^6.2.2"
+    decamelize "^1.2.0"
+    decamelize-keys "^1.1.0"
+    hard-rejection "^2.1.0"
+    minimist-options "4.1.0"
+    normalize-package-data "^3.0.0"
+    read-pkg-up "^7.0.1"
+    redent "^3.0.0"
+    trim-newlines "^3.0.0"
+    type-fest "^0.18.0"
+    yargs-parser "^20.2.3"
+
+merge2@^1.3.0:
+  version "1.4.1"
+  resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
+  integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
+
+micromatch@^4.0.4:
+  version "4.0.4"
+  resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9"
+  integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==
+  dependencies:
+    braces "^3.0.1"
+    picomatch "^2.2.3"
+
+min-indent@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869"
+  integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==
 
-mixin-deep@^1.2.0:
-  version "1.3.2"
-  resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566"
-  integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==
+minimatch@^3.0.4:
+  version "3.0.4"
+  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
+  integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
   dependencies:
-    for-in "^1.0.2"
-    is-extendable "^1.0.1"
+    brace-expansion "^1.1.7"
 
-mkdirp@^0.5.0, mkdirp@~0.5.1:
-  version "0.5.5"
-  resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
-  integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
+minimist-options@4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619"
+  integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==
   dependencies:
-    minimist "^1.2.5"
+    arrify "^1.0.1"
+    is-plain-obj "^1.1.0"
+    kind-of "^6.0.3"
 
-ms@2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
-  integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
-
-multipipe@^0.1.2:
-  version "0.1.2"
-  resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-0.1.2.tgz#2a8f2ddf70eed564dff2d57f1e1a137d9f05078b"
-  integrity sha1-Ko8t33Du1WTf8tV/HhoTfZ8FB4s=
-  dependencies:
-    duplexer2 "0.0.2"
-
-nan@^2.12.1:
-  version "2.15.0"
-  resolved "https://registry.yarnpkg.com/nan/-/nan-2.15.0.tgz#3f34a473ff18e15c1b5626b62903b5ad6e665fee"
-  integrity sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==
-
-nanomatch@^1.2.9:
-  version "1.2.13"
-  resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119"
-  integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==
-  dependencies:
-    arr-diff "^4.0.0"
-    array-unique "^0.3.2"
-    define-property "^2.0.2"
-    extend-shallow "^3.0.2"
-    fragment-cache "^0.2.1"
-    is-windows "^1.0.2"
-    kind-of "^6.0.2"
-    object.pick "^1.3.0"
-    regex-not "^1.0.0"
-    snapdragon "^0.8.1"
-    to-regex "^3.0.1"
+ms@2.1.2:
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
+  integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
 
-natives@^1.1.3:
-  version "1.1.6"
-  resolved "https://registry.yarnpkg.com/natives/-/natives-1.1.6.tgz#a603b4a498ab77173612b9ea1acdec4d980f00bb"
-  integrity sha512-6+TDFewD4yxY14ptjKaS63GVdtKiES1pTPyxn9Jb0rBqPMZ7VcCiooEhPNsr+mqHtMGxa/5c/HhcC4uPEUw/nA==
+nanoid@^3.1.30:
+  version "3.1.30"
+  resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.30.tgz#63f93cc548d2a113dc5dfbc63bfa09e2b9b64362"
+  integrity sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==
 
-normalize-path@^2.0.0, normalize-path@^2.0.1:
-  version "2.1.1"
-  resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
-  integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=
+normalize-package-data@^2.5.0:
+  version "2.5.0"
+  resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
+  integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
   dependencies:
-    remove-trailing-separator "^1.0.1"
+    hosted-git-info "^2.1.4"
+    resolve "^1.10.0"
+    semver "2 || 3 || 4 || 5"
+    validate-npm-package-license "^3.0.1"
 
-nth-check@~1.0.1:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c"
-  integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==
+normalize-package-data@^3.0.0:
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e"
+  integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==
   dependencies:
-    boolbase "~1.0.0"
+    hosted-git-info "^4.0.1"
+    is-core-module "^2.5.0"
+    semver "^7.3.4"
+    validate-npm-package-license "^3.0.1"
 
-object-assign@^3.0.0:
+normalize-path@^3.0.0:
   version "3.0.0"
-  resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2"
-  integrity sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=
-
-object-assign@^4.1.0:
-  version "4.1.1"
-  resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
-  integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
-
-object-copy@^0.1.0:
-  version "0.1.0"
-  resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c"
-  integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw=
-  dependencies:
-    copy-descriptor "^0.1.0"
-    define-property "^0.2.5"
-    kind-of "^3.0.3"
-
-object-visit@^1.0.0:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb"
-  integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=
-  dependencies:
-    isobject "^3.0.0"
+  resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
+  integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
 
-object.defaults@^1.1.0:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/object.defaults/-/object.defaults-1.1.0.tgz#3a7f868334b407dea06da16d88d5cd29e435fecf"
-  integrity sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=
-  dependencies:
-    array-each "^1.0.1"
-    array-slice "^1.0.0"
-    for-own "^1.0.0"
-    isobject "^3.0.0"
-
-object.map@^1.0.0:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/object.map/-/object.map-1.0.1.tgz#cf83e59dc8fcc0ad5f4250e1f78b3b81bd801d37"
-  integrity sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=
-  dependencies:
-    for-own "^1.0.0"
-    make-iterator "^1.0.0"
-
-object.omit@^2.0.0:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa"
-  integrity sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=
-  dependencies:
-    for-own "^0.1.4"
-    is-extendable "^0.1.1"
-
-object.pick@^1.2.0, object.pick@^1.3.0:
-  version "1.3.0"
-  resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747"
-  integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=
-  dependencies:
-    isobject "^3.0.1"
+normalize-selector@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/normalize-selector/-/normalize-selector-0.2.0.tgz#d0b145eb691189c63a78d201dc4fdb1293ef0c03"
+  integrity sha1-0LFF62kRicY6eNIB3E/bEpPvDAM=
 
 once@^1.3.0:
   version "1.4.0"
@@ -1696,72 +751,48 @@ once@^1.3.0:
   dependencies:
     wrappy "1"
 
-once@~1.3.0:
-  version "1.3.3"
-  resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20"
-  integrity sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=
+p-limit@^2.2.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
+  integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
   dependencies:
-    wrappy "1"
+    p-try "^2.0.0"
 
-orchestrator@^0.3.0:
-  version "0.3.8"
-  resolved "https://registry.yarnpkg.com/orchestrator/-/orchestrator-0.3.8.tgz#14e7e9e2764f7315fbac184e506c7aa6df94ad7e"
-  integrity sha1-FOfp4nZPcxX7rBhOUGx6pt+UrX4=
+p-locate@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07"
+  integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==
   dependencies:
-    end-of-stream "~0.1.5"
-    sequencify "~0.0.7"
-    stream-consume "~0.1.0"
-
-ordered-read-streams@^0.1.0:
-  version "0.1.0"
-  resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz#fd565a9af8eb4473ba69b6ed8a34352cb552f126"
-  integrity sha1-/VZamvjrRHO6abbtijQ1LLVS8SY=
+    p-limit "^2.2.0"
 
-os-homedir@^1.0.0:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
-  integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M=
+p-try@^2.0.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
+  integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
 
-parse-filepath@^1.0.1:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891"
-  integrity sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=
+parent-module@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
+  integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
   dependencies:
-    is-absolute "^1.0.0"
-    map-cache "^0.2.0"
-    path-root "^0.1.1"
+    callsites "^3.0.0"
 
-parse-glob@^3.0.4:
-  version "3.0.4"
-  resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c"
-  integrity sha1-ssN2z7EfNVE7rdFz7wu246OIORw=
+parse-json@^5.0.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd"
+  integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==
   dependencies:
-    glob-base "^0.3.0"
-    is-dotfile "^1.0.0"
-    is-extglob "^1.0.0"
-    is-glob "^2.0.0"
-
-parse-node-version@^1.0.0:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/parse-node-version/-/parse-node-version-1.0.1.tgz#e2b5dbede00e7fa9bc363607f53327e8b073189b"
-  integrity sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==
-
-parse-passwd@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6"
-  integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=
-
-pascalcase@^0.1.1:
-  version "0.1.1"
-  resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14"
-  integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=
+    "@babel/code-frame" "^7.0.0"
+    error-ex "^1.3.1"
+    json-parse-even-better-errors "^2.3.0"
+    lines-and-columns "^1.1.6"
 
-path-dirname@^1.0.0:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0"
-  integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=
+path-exists@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
+  integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
 
-path-is-absolute@^1.0.0, path-is-absolute@^1.0.1:
+path-is-absolute@^1.0.0:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
   integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
@@ -1771,187 +802,142 @@ path-parse@^1.0.6:
   resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
   integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
 
-path-root-regex@^0.1.0:
-  version "0.1.2"
-  resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d"
-  integrity sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=
+path-type@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
+  integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
 
-path-root@^0.1.1:
-  version "0.1.1"
-  resolved "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7"
-  integrity sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=
-  dependencies:
-    path-root-regex "^0.1.0"
+picocolors@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
+  integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
 
-pify@^2.3.0:
+picomatch@^2.2.3:
   version "2.3.0"
-  resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
-  integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw=
+  resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972"
+  integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==
 
-pinkie-promise@^2.0.0:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
-  integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o=
+postcss-html@^1.3.0:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/postcss-html/-/postcss-html-1.3.0.tgz#5b28b44a9cc8351cdba6ae1f26017c2303bd7642"
+  integrity sha512-ewbwd7OGW4dLsErtvZH9HpVMEcXnlhYSzKsr7MepGlOT8imHTIZ/+pdfEruLS+hTYapLTQAWDnoQcJpsYU4uRw==
   dependencies:
-    pinkie "^2.0.0"
+    htmlparser2 "^7.1.2"
+    postcss "^8.4.0"
+    postcss-safe-parser "^6.0.0"
 
-pinkie@^2.0.0:
-  version "2.0.4"
-  resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
-  integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA=
-
-plugin-error@^0.1.2:
-  version "0.1.2"
-  resolved "https://registry.yarnpkg.com/plugin-error/-/plugin-error-0.1.2.tgz#3b9bb3335ccf00f425e07437e19276967da47ace"
-  integrity sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=
-  dependencies:
-    ansi-cyan "^0.1.1"
-    ansi-red "^0.1.1"
-    arr-diff "^1.0.1"
-    arr-union "^2.0.1"
-    extend-shallow "^1.1.2"
+postcss-media-query-parser@^0.2.3:
+  version "0.2.3"
+  resolved "https://registry.yarnpkg.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#27b39c6f4d94f81b1a73b8f76351c609e5cef244"
+  integrity sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ=
 
-posix-character-classes@^0.1.0:
+postcss-resolve-nested-selector@^0.1.1:
   version "0.1.1"
-  resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
-  integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=
+  resolved "https://registry.yarnpkg.com/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz#29ccbc7c37dedfac304e9fff0bf1596b3f6a0e4e"
+  integrity sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4=
 
-preserve@^0.2.0:
-  version "0.2.0"
-  resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
-  integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=
+postcss-safe-parser@^6.0.0:
+  version "6.0.0"
+  resolved "https://registry.yarnpkg.com/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz#bb4c29894171a94bc5c996b9a30317ef402adaa1"
+  integrity sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==
 
-pretty-hrtime@^1.0.0:
-  version "1.0.3"
-  resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1"
-  integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=
+postcss-scss@^4.0.2:
+  version "4.0.2"
+  resolved "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-4.0.2.tgz#39ddcc0ab32f155d5ab328ee91353d67a52d537b"
+  integrity sha512-xfdkU128CkKKKVAwkyt0M8OdnelJ3MRcIRAPPQkRpoPeuzWY3RIeg7piRCpZ79MK7Q16diLXMMAD9dN5mauPlQ==
 
-process-nextick-args@~2.0.0:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
-  integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
+postcss-selector-parser@^6.0.6:
+  version "6.0.6"
+  resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz#2c5bba8174ac2f6981ab631a42ab0ee54af332ea"
+  integrity sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==
+  dependencies:
+    cssesc "^3.0.0"
+    util-deprecate "^1.0.2"
 
-q@^1.1.2:
-  version "1.5.1"
-  resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7"
-  integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=
+postcss-value-parser@^4.1.0:
+  version "4.2.0"
+  resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
+  integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
 
-randomatic@^3.0.0:
-  version "3.1.1"
-  resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.1.1.tgz#b776efc59375984e36c537b2f51a1f0aff0da1ed"
-  integrity sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==
-  dependencies:
-    is-number "^4.0.0"
-    kind-of "^6.0.0"
-    math-random "^1.0.1"
-
-"readable-stream@>=1.0.33-1 <1.1.0-0":
-  version "1.0.34"
-  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c"
-  integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=
-  dependencies:
-    core-util-is "~1.0.0"
-    inherits "~2.0.1"
-    isarray "0.0.1"
-    string_decoder "~0.10.x"
-
-readable-stream@^2.0.2, readable-stream@^2.2.2, readable-stream@~2.3.6:
-  version "2.3.7"
-  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
-  integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
-  dependencies:
-    core-util-is "~1.0.0"
-    inherits "~2.0.3"
-    isarray "~1.0.0"
-    process-nextick-args "~2.0.0"
-    safe-buffer "~5.1.1"
-    string_decoder "~1.1.1"
-    util-deprecate "~1.0.1"
-
-readable-stream@^3.1.1:
-  version "3.6.0"
-  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
-  integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
-  dependencies:
-    inherits "^2.0.3"
-    string_decoder "^1.1.1"
-    util-deprecate "^1.0.1"
-
-readable-stream@~1.1.9:
-  version "1.1.14"
-  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9"
-  integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk=
-  dependencies:
-    core-util-is "~1.0.0"
-    inherits "~2.0.1"
-    isarray "0.0.1"
-    string_decoder "~0.10.x"
-
-readdirp@^2.0.0:
-  version "2.2.1"
-  resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525"
-  integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==
-  dependencies:
-    graceful-fs "^4.1.11"
-    micromatch "^3.1.10"
-    readable-stream "^2.0.2"
-
-rechoir@^0.6.2:
-  version "0.6.2"
-  resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384"
-  integrity sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=
-  dependencies:
-    resolve "^1.1.6"
-
-regex-cache@^0.4.2:
-  version "0.4.4"
-  resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd"
-  integrity sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==
-  dependencies:
-    is-equal-shallow "^0.1.3"
-
-regex-not@^1.0.0, regex-not@^1.0.2:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c"
-  integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==
+postcss@^8.3.11, postcss@^8.4.0, postcss@^8.4.4:
+  version "8.4.4"
+  resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.4.tgz#d53d4ec6a75fd62557a66bb41978bf47ff0c2869"
+  integrity sha512-joU6fBsN6EIer28Lj6GDFoC/5yOZzLCfn0zHAn/MYXI7aPt4m4hK5KC5ovEZXy+lnCjmYIbQWngvju2ddyEr8Q==
   dependencies:
-    extend-shallow "^3.0.2"
-    safe-regex "^1.1.0"
-
-remove-trailing-separator@^1.0.1:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
-  integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8=
+    nanoid "^3.1.30"
+    picocolors "^1.0.0"
+    source-map-js "^1.0.1"
 
-repeat-element@^1.1.2:
-  version "1.1.4"
-  resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9"
-  integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==
+prettier-linter-helpers@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b"
+  integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==
+  dependencies:
+    fast-diff "^1.1.2"
 
-repeat-string@^1.5.2, repeat-string@^1.6.1:
-  version "1.6.1"
-  resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
-  integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc=
+prettier@2.5.0:
+  version "2.5.0"
+  resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.5.0.tgz#a6370e2d4594e093270419d9cc47f7670488f893"
+  integrity sha512-FM/zAKgWTxj40rH03VxzIPdXmj39SwSjwG0heUcNFwI+EMZJnY93yAiKXM3dObIKAM5TA88werc8T/EwhB45eg==
 
-replace-ext@0.0.1:
-  version "0.0.1"
-  resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924"
-  integrity sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=
+punycode@^2.1.0:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
+  integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
 
-resolve-dir@^1.0.0, resolve-dir@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43"
-  integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=
+queue-microtask@^1.2.2:
+  version "1.2.3"
+  resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
+  integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
+
+quick-lru@^4.0.1:
+  version "4.0.1"
+  resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f"
+  integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==
+
+read-pkg-up@^7.0.1:
+  version "7.0.1"
+  resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507"
+  integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==
+  dependencies:
+    find-up "^4.1.0"
+    read-pkg "^5.2.0"
+    type-fest "^0.8.1"
+
+read-pkg@^5.2.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc"
+  integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==
+  dependencies:
+    "@types/normalize-package-data" "^2.4.0"
+    normalize-package-data "^2.5.0"
+    parse-json "^5.0.0"
+    type-fest "^0.6.0"
+
+redent@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f"
+  integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==
   dependencies:
-    expand-tilde "^2.0.0"
-    global-modules "^1.0.0"
+    indent-string "^4.0.0"
+    strip-indent "^3.0.0"
 
-resolve-url@^0.2.1:
-  version "0.2.1"
-  resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
-  integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=
+require-from-string@^2.0.2:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
+  integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==
+
+resolve-from@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
+  integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
 
-resolve@^1.1.6, resolve@^1.1.7:
+resolve-from@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
+  integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
+
+resolve@^1.10.0:
   version "1.20.0"
   resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975"
   integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==
@@ -1959,377 +945,299 @@ resolve@^1.1.6, resolve@^1.1.7:
     is-core-module "^2.2.0"
     path-parse "^1.0.6"
 
-ret@~0.1.10:
-  version "0.1.15"
-  resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
-  integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==
-
-safe-buffer@~5.1.0, safe-buffer@~5.1.1:
-  version "5.1.2"
-  resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
-  integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
+reusify@^1.0.4:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
+  integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
 
-safe-buffer@~5.2.0:
-  version "5.2.1"
-  resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
-  integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
+rimraf@^3.0.2:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
+  integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
+  dependencies:
+    glob "^7.1.3"
 
-safe-regex@^1.1.0:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e"
-  integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4=
+run-parallel@^1.1.9:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
+  integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
   dependencies:
-    ret "~0.1.10"
+    queue-microtask "^1.2.2"
 
-sax@~1.2.1:
-  version "1.2.4"
-  resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
-  integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
+"semver@2 || 3 || 4 || 5":
+  version "5.7.1"
+  resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
+  integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
 
-semver@^4.1.0:
-  version "4.3.6"
-  resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da"
-  integrity sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=
+semver@^7.3.4:
+  version "7.3.5"
+  resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
+  integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==
+  dependencies:
+    lru-cache "^6.0.0"
 
-sequencify@~0.0.7:
-  version "0.0.7"
-  resolved "https://registry.yarnpkg.com/sequencify/-/sequencify-0.0.7.tgz#90cff19d02e07027fd767f5ead3e7b95d1e7380c"
-  integrity sha1-kM/xnQLgcCf9dn9erT57ldHnOAw=
+signal-exit@^3.0.2:
+  version "3.0.6"
+  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.6.tgz#24e630c4b0f03fea446a2bd299e62b4a6ca8d0af"
+  integrity sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==
 
-set-value@^2.0.0, set-value@^2.0.1:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b"
-  integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==
+slash@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
+  integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
+
+slice-ansi@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b"
+  integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==
   dependencies:
-    extend-shallow "^2.0.1"
-    is-extendable "^0.1.1"
-    is-plain-object "^2.0.3"
-    split-string "^3.0.1"
+    ansi-styles "^4.0.0"
+    astral-regex "^2.0.0"
+    is-fullwidth-code-point "^3.0.0"
 
-sigmund@~1.0.0:
+source-map-js@^1.0.1:
   version "1.0.1"
-  resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590"
-  integrity sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=
-
-slash@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
-  integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=
+  resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.1.tgz#a1741c131e3c77d048252adfa24e23b908670caf"
+  integrity sha512-4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA==
 
-snapdragon-node@^2.0.1:
-  version "2.1.1"
-  resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b"
-  integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==
+spdx-correct@^3.0.0:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9"
+  integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==
   dependencies:
-    define-property "^1.0.0"
-    isobject "^3.0.0"
-    snapdragon-util "^3.0.1"
+    spdx-expression-parse "^3.0.0"
+    spdx-license-ids "^3.0.0"
+
+spdx-exceptions@^2.1.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d"
+  integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==
 
-snapdragon-util@^3.0.1:
+spdx-expression-parse@^3.0.0:
   version "3.0.1"
-  resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2"
-  integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==
-  dependencies:
-    kind-of "^3.2.0"
-
-snapdragon@^0.8.1:
-  version "0.8.2"
-  resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d"
-  integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==
-  dependencies:
-    base "^0.11.1"
-    debug "^2.2.0"
-    define-property "^0.2.5"
-    extend-shallow "^2.0.1"
-    map-cache "^0.2.2"
-    source-map "^0.5.6"
-    source-map-resolve "^0.5.0"
-    use "^3.1.0"
-
-source-map-resolve@^0.5.0:
-  version "0.5.3"
-  resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a"
-  integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==
-  dependencies:
-    atob "^2.1.2"
-    decode-uri-component "^0.2.0"
-    resolve-url "^0.2.1"
-    source-map-url "^0.4.0"
-    urix "^0.1.0"
-
-source-map-url@^0.4.0:
-  version "0.4.1"
-  resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56"
-  integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==
+  resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679"
+  integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==
+  dependencies:
+    spdx-exceptions "^2.1.0"
+    spdx-license-ids "^3.0.0"
 
-source-map@^0.5.3, source-map@^0.5.6:
-  version "0.5.7"
-  resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
-  integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=
+spdx-license-ids@^3.0.0:
+  version "3.0.11"
+  resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz#50c0d8c40a14ec1bf449bae69a0ea4685a9d9f95"
+  integrity sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==
 
-sparkles@^1.0.0:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.1.tgz#008db65edce6c50eec0c5e228e1945061dd0437c"
-  integrity sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==
+specificity@^0.4.1:
+  version "0.4.1"
+  resolved "https://registry.yarnpkg.com/specificity/-/specificity-0.4.1.tgz#aab5e645012db08ba182e151165738d00887b019"
+  integrity sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==
 
-split-string@^3.0.1, split-string@^3.0.2:
-  version "3.1.0"
-  resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2"
-  integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==
+string-width@^4.2.3:
+  version "4.2.3"
+  resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
+  integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
   dependencies:
-    extend-shallow "^3.0.0"
-
-sprintf-js@~1.0.2:
-  version "1.0.3"
-  resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
-  integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
+    emoji-regex "^8.0.0"
+    is-fullwidth-code-point "^3.0.0"
+    strip-ansi "^6.0.1"
 
-static-extend@^0.1.1:
-  version "0.1.2"
-  resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6"
-  integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=
+strip-ansi@^6.0.1:
+  version "6.0.1"
+  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
+  integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
   dependencies:
-    define-property "^0.2.5"
-    object-copy "^0.1.0"
+    ansi-regex "^5.0.1"
 
-stream-consume@~0.1.0:
-  version "0.1.1"
-  resolved "https://registry.yarnpkg.com/stream-consume/-/stream-consume-0.1.1.tgz#d3bdb598c2bd0ae82b8cac7ac50b1107a7996c48"
-  integrity sha512-tNa3hzgkjEP7XbCkbRXe1jpg+ievoa0O4SCFlMOYEscGSS4JJsckGL8swUyAa/ApGU3Ae4t6Honor4HhL+tRyg==
-
-string_decoder@^1.1.1:
-  version "1.3.0"
-  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
-  integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
+strip-indent@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001"
+  integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==
   dependencies:
-    safe-buffer "~5.2.0"
+    min-indent "^1.0.0"
 
-string_decoder@~0.10.x:
-  version "0.10.31"
-  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
-  integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=
+style-search@^0.1.0:
+  version "0.1.0"
+  resolved "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz#7958c793e47e32e07d2b5cafe5c0bf8e12e77902"
+  integrity sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI=
 
-string_decoder@~1.1.1:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
-  integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
-  dependencies:
-    safe-buffer "~5.1.0"
+stylelint-config-prettier@^9.0.3:
+  version "9.0.3"
+  resolved "https://registry.yarnpkg.com/stylelint-config-prettier/-/stylelint-config-prettier-9.0.3.tgz#0dccebeff359dcc393c9229184408b08964d561c"
+  integrity sha512-5n9gUDp/n5tTMCq1GLqSpA30w2sqWITSSEiAWQlpxkKGAUbjcemQ0nbkRvRUa0B1LgD3+hCvdL7B1eTxy1QHJg==
 
-strip-ansi@^3.0.0:
-  version "3.0.1"
-  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
-  integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
+stylelint-config-recommended-scss@^5.0.2:
+  version "5.0.2"
+  resolved "https://registry.yarnpkg.com/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-5.0.2.tgz#193f483861c76a36ece24c52eb6baca4838f4a48"
+  integrity sha512-b14BSZjcwW0hqbzm9b0S/ScN2+3CO3O4vcMNOw2KGf8lfVSwJ4p5TbNEXKwKl1+0FMtgRXZj6DqVUe/7nGnuBg==
   dependencies:
-    ansi-regex "^2.0.0"
+    postcss-scss "^4.0.2"
+    stylelint-config-recommended "^6.0.0"
+    stylelint-scss "^4.0.0"
 
-strip-bom-stream@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/strip-bom-stream/-/strip-bom-stream-2.0.0.tgz#f87db5ef2613f6968aa545abfe1ec728b6a829ca"
-  integrity sha1-+H217yYT9paKpUWr/h7HKLaoKco=
-  dependencies:
-    first-chunk-stream "^2.0.0"
-    strip-bom "^2.0.0"
+stylelint-config-recommended@^6.0.0:
+  version "6.0.0"
+  resolved "https://registry.yarnpkg.com/stylelint-config-recommended/-/stylelint-config-recommended-6.0.0.tgz#fd2523a322836005ad9bf473d3e5534719c09f9d"
+  integrity sha512-ZorSSdyMcxWpROYUvLEMm0vSZud2uB7tX1hzBZwvVY9SV/uly4AvvJPPhCcymZL3fcQhEQG5AELmrxWqtmzacw==
 
-strip-bom@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-1.0.0.tgz#85b8862f3844b5a6d5ec8467a93598173a36f794"
-  integrity sha1-hbiGLzhEtabV7IRnqTWYFzo295Q=
+stylelint-config-standard-scss@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/stylelint-config-standard-scss/-/stylelint-config-standard-scss-3.0.0.tgz#dafc4fa5538d0ed833bf0a7d391e075683ffd96c"
+  integrity sha512-zt3ZbzIbllN1iCmc94e4pDxqpkzeR6CJo5DDXzltshuXr+82B8ylHyMMARNnUYrZH80B7wgY7UkKTYCFM0UUyw==
   dependencies:
-    first-chunk-stream "^1.0.0"
-    is-utf8 "^0.2.0"
+    stylelint-config-recommended-scss "^5.0.2"
+    stylelint-config-standard "^24.0.0"
 
-strip-bom@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
-  integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=
+stylelint-config-standard@^24.0.0:
+  version "24.0.0"
+  resolved "https://registry.yarnpkg.com/stylelint-config-standard/-/stylelint-config-standard-24.0.0.tgz#6823f207ab997ae0b641f9a636d007cc44d77541"
+  integrity sha512-+RtU7fbNT+VlNbdXJvnjc3USNPZRiRVp/d2DxOF/vBDDTi0kH5RX2Ny6errdtZJH3boO+bmqIYEllEmok4jiuw==
   dependencies:
-    is-utf8 "^0.2.0"
+    stylelint-config-recommended "^6.0.0"
 
-supports-color@^2.0.0:
+stylelint-prettier@^2.0.0:
   version "2.0.0"
-  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
-  integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=
-
-svgo@^0.7.0:
-  version "0.7.2"
-  resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5"
-  integrity sha1-n1dyQTlSE1xv779Ar+ak+qiLS7U=
-  dependencies:
-    coa "~1.0.1"
-    colors "~1.1.2"
-    csso "~2.3.1"
-    js-yaml "~3.7.0"
-    mkdirp "~0.5.1"
-    sax "~1.2.1"
-    whet.extend "~0.9.9"
-
-through2@^0.6.1, through2@^0.6.3, through2@^0.6.5:
-  version "0.6.5"
-  resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48"
-  integrity sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=
-  dependencies:
-    readable-stream ">=1.0.33-1 <1.1.0-0"
-    xtend ">=4.0.0 <4.1.0-0"
-
-through2@^2.0.0:
-  version "2.0.5"
-  resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd"
-  integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==
+  resolved "https://registry.yarnpkg.com/stylelint-prettier/-/stylelint-prettier-2.0.0.tgz#ead781aea522379f2ffa2d136bafdfc451d699a5"
+  integrity sha512-jvT3G+9lopkeB0ARmDPszyfaOnvnIF+30QCjZxyt7E6fynI1T9mOKgYDNb9bXX17M7PXMZaX3j/26wqakjp1tw==
   dependencies:
-    readable-stream "~2.3.6"
-    xtend "~4.0.1"
+    prettier-linter-helpers "^1.0.0"
 
-tildify@^1.0.0:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/tildify/-/tildify-1.2.0.tgz#dcec03f55dca9b7aa3e5b04f21817eb56e63588a"
-  integrity sha1-3OwD9V3Km3qj5bBPIYF+tW5jWIo=
-  dependencies:
-    os-homedir "^1.0.0"
-
-time-stamp@^1.0.0:
-  version "1.1.0"
-  resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3"
-  integrity sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=
+stylelint-scss@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/stylelint-scss/-/stylelint-scss-4.0.0.tgz#4901ced92b9c68e37649799a39defbd5f2ac5bcd"
+  integrity sha512-lIRhPqtI6I065EJ6aI4mWKsmQt8Krnu6aF9XSL9s8Nd2f/cDKImST0T9TfjnUul3ReKYWozkG9dlpNTZH2FB9w==
+  dependencies:
+    lodash "^4.17.15"
+    postcss-media-query-parser "^0.2.3"
+    postcss-resolve-nested-selector "^0.1.1"
+    postcss-selector-parser "^6.0.6"
+    postcss-value-parser "^4.1.0"
+
+stylelint@^14.1.0:
+  version "14.1.0"
+  resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-14.1.0.tgz#8cefb64df6158b30f678c2d93a7052e2c1d8235b"
+  integrity sha512-IedkssuNVA11+v++2PIV2OHOU5A3SfRcXVi56vZVSsMhGrgtwmmit69jeM+08/Tun5DTBe7BuH1Zp1mMLmtKLA==
+  dependencies:
+    balanced-match "^2.0.0"
+    cosmiconfig "^7.0.1"
+    debug "^4.3.2"
+    execall "^2.0.0"
+    fast-glob "^3.2.7"
+    fastest-levenshtein "^1.0.12"
+    file-entry-cache "^6.0.1"
+    get-stdin "^8.0.0"
+    global-modules "^2.0.0"
+    globby "^11.0.4"
+    globjoin "^0.1.4"
+    html-tags "^3.1.0"
+    ignore "^5.1.9"
+    import-lazy "^4.0.0"
+    imurmurhash "^0.1.4"
+    is-plain-object "^5.0.0"
+    known-css-properties "^0.23.0"
+    mathml-tag-names "^2.1.3"
+    meow "^9.0.0"
+    micromatch "^4.0.4"
+    normalize-path "^3.0.0"
+    normalize-selector "^0.2.0"
+    picocolors "^1.0.0"
+    postcss "^8.3.11"
+    postcss-media-query-parser "^0.2.3"
+    postcss-resolve-nested-selector "^0.1.1"
+    postcss-safe-parser "^6.0.0"
+    postcss-selector-parser "^6.0.6"
+    postcss-value-parser "^4.1.0"
+    resolve-from "^5.0.0"
+    specificity "^0.4.1"
+    string-width "^4.2.3"
+    strip-ansi "^6.0.1"
+    style-search "^0.1.0"
+    svg-tags "^1.0.0"
+    table "^6.7.3"
+    v8-compile-cache "^2.3.0"
+    write-file-atomic "^3.0.3"
+
+supports-color@^5.3.0:
+  version "5.5.0"
+  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
+  integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
+  dependencies:
+    has-flag "^3.0.0"
+
+svg-tags@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz#58f71cee3bd519b59d4b2a843b6c7de64ac04764"
+  integrity sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=
 
-to-object-path@^0.3.0:
-  version "0.3.0"
-  resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af"
-  integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=
+table@^6.7.3:
+  version "6.7.5"
+  resolved "https://registry.yarnpkg.com/table/-/table-6.7.5.tgz#f04478c351ef3d8c7904f0e8be90a1b62417d238"
+  integrity sha512-LFNeryOqiQHqCVKzhkymKwt6ozeRhlm8IL1mE8rNUurkir4heF6PzMyRgaTa4tlyPTGGgXuvVOF/OLWiH09Lqw==
   dependencies:
-    kind-of "^3.0.2"
+    ajv "^8.0.1"
+    lodash.truncate "^4.4.2"
+    slice-ansi "^4.0.0"
+    string-width "^4.2.3"
+    strip-ansi "^6.0.1"
 
-to-regex-range@^2.1.0:
-  version "2.1.1"
-  resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38"
-  integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=
+to-regex-range@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
+  integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
   dependencies:
-    is-number "^3.0.0"
-    repeat-string "^1.6.1"
+    is-number "^7.0.0"
 
-to-regex@^3.0.1, to-regex@^3.0.2:
-  version "3.0.2"
-  resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce"
-  integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==
-  dependencies:
-    define-property "^2.0.2"
-    extend-shallow "^3.0.2"
-    regex-not "^1.0.2"
-    safe-regex "^1.1.0"
+trim-newlines@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144"
+  integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==
 
-unc-path-regex@^0.1.2:
-  version "0.1.2"
-  resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa"
-  integrity sha1-5z3T17DXxe2G+6xrCufYxqadUPo=
+type-fest@^0.18.0:
+  version "0.18.1"
+  resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f"
+  integrity sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==
 
-union-value@^1.0.0:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847"
-  integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==
-  dependencies:
-    arr-union "^3.1.0"
-    get-value "^2.0.6"
-    is-extendable "^0.1.1"
-    set-value "^2.0.1"
+type-fest@^0.6.0:
+  version "0.6.0"
+  resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b"
+  integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==
 
-unique-stream@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-1.0.0.tgz#d59a4a75427447d9aa6c91e70263f8d26a4b104b"
-  integrity sha1-1ZpKdUJ0R9mqbJHnAmP40mpLEEs=
+type-fest@^0.8.1:
+  version "0.8.1"
+  resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d"
+  integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==
 
-unset-value@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559"
-  integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=
+typedarray-to-buffer@^3.1.5:
+  version "3.1.5"
+  resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"
+  integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==
   dependencies:
-    has-value "^0.3.1"
-    isobject "^3.0.0"
-
-urix@^0.1.0:
-  version "0.1.0"
-  resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
-  integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=
+    is-typedarray "^1.0.0"
 
-use@^3.1.0:
-  version "3.1.1"
-  resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f"
-  integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==
-
-user-home@^1.1.1:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190"
-  integrity sha1-K1viOjK2Onyd640PKNSFcko98ZA=
+uri-js@^4.2.2:
+  version "4.4.1"
+  resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
+  integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
+  dependencies:
+    punycode "^2.1.0"
 
-util-deprecate@^1.0.1, util-deprecate@~1.0.1:
+util-deprecate@^1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
   integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
 
-v8flags@^2.0.2:
-  version "2.1.1"
-  resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4"
-  integrity sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=
-  dependencies:
-    user-home "^1.1.1"
+v8-compile-cache@^2.3.0:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee"
+  integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==
 
-vinyl-file@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/vinyl-file/-/vinyl-file-2.0.0.tgz#a7ebf5ffbefda1b7d18d140fcb07b223efb6751a"
-  integrity sha1-p+v1/779obfRjRQPyweyI++2dRo=
-  dependencies:
-    graceful-fs "^4.1.2"
-    pify "^2.3.0"
-    pinkie-promise "^2.0.0"
-    strip-bom "^2.0.0"
-    strip-bom-stream "^2.0.0"
-    vinyl "^1.1.0"
-
-vinyl-fs@^0.3.0:
-  version "0.3.14"
-  resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-0.3.14.tgz#9a6851ce1cac1c1cea5fe86c0931d620c2cfa9e6"
-  integrity sha1-mmhRzhysHBzqX+hsCTHWIMLPqeY=
-  dependencies:
-    defaults "^1.0.0"
-    glob-stream "^3.1.5"
-    glob-watcher "^0.0.6"
-    graceful-fs "^3.0.0"
-    mkdirp "^0.5.0"
-    strip-bom "^1.0.0"
-    through2 "^0.6.1"
-    vinyl "^0.4.0"
-
-vinyl@^0.4.0:
-  version "0.4.6"
-  resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.4.6.tgz#2f356c87a550a255461f36bbeb2a5ba8bf784847"
-  integrity sha1-LzVsh6VQolVGHza76ypbqL94SEc=
-  dependencies:
-    clone "^0.2.0"
-    clone-stats "^0.0.1"
-
-vinyl@^0.5.0:
-  version "0.5.3"
-  resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.5.3.tgz#b0455b38fc5e0cf30d4325132e461970c2091cde"
-  integrity sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4=
-  dependencies:
-    clone "^1.0.0"
-    clone-stats "^0.0.1"
-    replace-ext "0.0.1"
-
-vinyl@^1.1.0, vinyl@^1.2.0:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-1.2.0.tgz#5c88036cf565e5df05558bfc911f8656df218884"
-  integrity sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=
+validate-npm-package-license@^3.0.1:
+  version "3.0.4"
+  resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
+  integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==
   dependencies:
-    clone "^1.0.0"
-    clone-stats "^0.0.1"
-    replace-ext "0.0.1"
+    spdx-correct "^3.0.0"
+    spdx-expression-parse "^3.0.0"
 
-whet.extend@~0.9.9:
-  version "0.9.9"
-  resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1"
-  integrity sha1-+HfVv2SMl+WqVC+twW1qJZucEaE=
-
-which@^1.2.14:
+which@^1.3.1:
   version "1.3.1"
   resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
   integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
@@ -2341,7 +1249,27 @@ wrappy@1:
   resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
   integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
 
-"xtend@>=4.0.0 <4.1.0-0", xtend@~4.0.1:
-  version "4.0.2"
-  resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
-  integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
+write-file-atomic@^3.0.3:
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8"
+  integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==
+  dependencies:
+    imurmurhash "^0.1.4"
+    is-typedarray "^1.0.0"
+    signal-exit "^3.0.2"
+    typedarray-to-buffer "^3.1.5"
+
+yallist@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
+  integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
+
+yaml@^1.10.0:
+  version "1.10.2"
+  resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b"
+  integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==
+
+yargs-parser@^20.2.3:
+  version "20.2.9"
+  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"
+  integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
diff --git a/nixpkgs/pkgs/applications/networking/misc/zammad/yarn.nix b/nixpkgs/pkgs/applications/networking/misc/zammad/yarn.nix
index d0edb7987ac0..2b17084486f1 100644
--- a/nixpkgs/pkgs/applications/networking/misc/zammad/yarn.nix
+++ b/nixpkgs/pkgs/applications/networking/misc/zammad/yarn.nix
@@ -2,2667 +2,1547 @@
   offline_cache = linkFarm "offline" packages;
   packages = [
     {
-      name = "ansi_cyan___ansi_cyan_0.1.1.tgz";
+      name = "_babel_code_frame___code_frame_7.16.0.tgz";
       path = fetchurl {
-        name = "ansi_cyan___ansi_cyan_0.1.1.tgz";
-        url = "https://registry.yarnpkg.com/ansi-cyan/-/ansi-cyan-0.1.1.tgz";
-        sha1 = "538ae528af8982f28ae30d86f2f17456d2609873";
+        name = "_babel_code_frame___code_frame_7.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.0.tgz";
+        sha512 = "IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA==";
       };
     }
     {
-      name = "ansi_gray___ansi_gray_0.1.1.tgz";
+      name = "_babel_helper_validator_identifier___helper_validator_identifier_7.15.7.tgz";
       path = fetchurl {
-        name = "ansi_gray___ansi_gray_0.1.1.tgz";
-        url = "https://registry.yarnpkg.com/ansi-gray/-/ansi-gray-0.1.1.tgz";
-        sha1 = "2962cf54ec9792c48510a3deb524436861ef7251";
+        name = "_babel_helper_validator_identifier___helper_validator_identifier_7.15.7.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz";
+        sha512 = "K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==";
       };
     }
     {
-      name = "ansi_red___ansi_red_0.1.1.tgz";
+      name = "_babel_highlight___highlight_7.16.0.tgz";
       path = fetchurl {
-        name = "ansi_red___ansi_red_0.1.1.tgz";
-        url = "https://registry.yarnpkg.com/ansi-red/-/ansi-red-0.1.1.tgz";
-        sha1 = "8c638f9d1080800a353c9c28c8a81ca4705d946c";
+        name = "_babel_highlight___highlight_7.16.0.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.0.tgz";
+        sha512 = "t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==";
       };
     }
     {
-      name = "ansi_regex___ansi_regex_2.1.1.tgz";
+      name = "_nodelib_fs.scandir___fs.scandir_2.1.5.tgz";
       path = fetchurl {
-        name = "ansi_regex___ansi_regex_2.1.1.tgz";
-        url = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz";
-        sha1 = "c3b33ab5ee360d86e0e628f0468ae7ef27d654df";
+        name = "_nodelib_fs.scandir___fs.scandir_2.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz";
+        sha512 = "vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==";
       };
     }
     {
-      name = "ansi_styles___ansi_styles_2.2.1.tgz";
+      name = "_nodelib_fs.stat___fs.stat_2.0.5.tgz";
       path = fetchurl {
-        name = "ansi_styles___ansi_styles_2.2.1.tgz";
-        url = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz";
-        sha1 = "b432dd3358b634cf75e1e4664368240533c1ddbe";
+        name = "_nodelib_fs.stat___fs.stat_2.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz";
+        sha512 = "RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==";
       };
     }
     {
-      name = "ansi_wrap___ansi_wrap_0.1.0.tgz";
+      name = "_nodelib_fs.walk___fs.walk_1.2.8.tgz";
       path = fetchurl {
-        name = "ansi_wrap___ansi_wrap_0.1.0.tgz";
-        url = "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz";
-        sha1 = "a82250ddb0015e9a27ca82e82ea603bbfa45efaf";
+        name = "_nodelib_fs.walk___fs.walk_1.2.8.tgz";
+        url  = "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz";
+        sha512 = "oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==";
       };
     }
     {
-      name = "anymatch___anymatch_1.3.2.tgz";
+      name = "_types_minimist___minimist_1.2.2.tgz";
       path = fetchurl {
-        name = "anymatch___anymatch_1.3.2.tgz";
-        url = "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz";
-        sha1 = "553dcb8f91e3c889845dfdba34c77721b90b9d7a";
+        name = "_types_minimist___minimist_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz";
+        sha512 = "jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==";
       };
     }
     {
-      name = "archy___archy_1.0.0.tgz";
+      name = "_types_normalize_package_data___normalize_package_data_2.4.1.tgz";
       path = fetchurl {
-        name = "archy___archy_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz";
-        sha1 = "f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40";
+        name = "_types_normalize_package_data___normalize_package_data_2.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz";
+        sha512 = "Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==";
       };
     }
     {
-      name = "argparse___argparse_1.0.10.tgz";
+      name = "_types_parse_json___parse_json_4.0.0.tgz";
       path = fetchurl {
-        name = "argparse___argparse_1.0.10.tgz";
-        url = "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz";
-        sha1 = "bcd6791ea5ae09725e17e5ad988134cd40b3d911";
+        name = "_types_parse_json___parse_json_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz";
+        sha512 = "//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==";
       };
     }
     {
-      name = "arr_diff___arr_diff_1.1.0.tgz";
+      name = "ajv___ajv_8.8.2.tgz";
       path = fetchurl {
-        name = "arr_diff___arr_diff_1.1.0.tgz";
-        url = "https://registry.yarnpkg.com/arr-diff/-/arr-diff-1.1.0.tgz";
-        sha1 = "687c32758163588fef7de7b36fabe495eb1a399a";
+        name = "ajv___ajv_8.8.2.tgz";
+        url  = "https://registry.yarnpkg.com/ajv/-/ajv-8.8.2.tgz";
+        sha512 = "x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==";
       };
     }
     {
-      name = "arr_diff___arr_diff_2.0.0.tgz";
+      name = "ansi_regex___ansi_regex_5.0.1.tgz";
       path = fetchurl {
-        name = "arr_diff___arr_diff_2.0.0.tgz";
-        url = "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz";
-        sha1 = "8f3b827f955a8bd669697e4a4256ac3ceae356cf";
+        name = "ansi_regex___ansi_regex_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz";
+        sha512 = "quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==";
       };
     }
     {
-      name = "arr_diff___arr_diff_4.0.0.tgz";
+      name = "ansi_styles___ansi_styles_3.2.1.tgz";
       path = fetchurl {
-        name = "arr_diff___arr_diff_4.0.0.tgz";
-        url = "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz";
-        sha1 = "d6461074febfec71e7e15235761a329a5dc7c520";
+        name = "ansi_styles___ansi_styles_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz";
+        sha512 = "VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==";
       };
     }
     {
-      name = "arr_flatten___arr_flatten_1.1.0.tgz";
+      name = "ansi_styles___ansi_styles_4.3.0.tgz";
       path = fetchurl {
-        name = "arr_flatten___arr_flatten_1.1.0.tgz";
-        url = "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz";
-        sha1 = "36048bbff4e7b47e136644316c99669ea5ae91f1";
+        name = "ansi_styles___ansi_styles_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz";
+        sha512 = "zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==";
       };
     }
     {
-      name = "arr_union___arr_union_2.1.0.tgz";
+      name = "array_union___array_union_2.1.0.tgz";
       path = fetchurl {
-        name = "arr_union___arr_union_2.1.0.tgz";
-        url = "https://registry.yarnpkg.com/arr-union/-/arr-union-2.1.0.tgz";
-        sha1 = "20f9eab5ec70f5c7d215b1077b1c39161d292c7d";
+        name = "array_union___array_union_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz";
+        sha512 = "HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==";
       };
     }
     {
-      name = "arr_union___arr_union_3.1.0.tgz";
+      name = "arrify___arrify_1.0.1.tgz";
       path = fetchurl {
-        name = "arr_union___arr_union_3.1.0.tgz";
-        url = "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz";
-        sha1 = "e39b09aea9def866a8f206e288af63919bae39c4";
+        name = "arrify___arrify_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz";
+        sha1 = "iYUI2iIm84DfkEcoRWhJwVAaSw0=";
       };
     }
     {
-      name = "array_differ___array_differ_1.0.0.tgz";
+      name = "astral_regex___astral_regex_2.0.0.tgz";
       path = fetchurl {
-        name = "array_differ___array_differ_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz";
-        sha1 = "eff52e3758249d33be402b8bb8e564bb2b5d4031";
-      };
-    }
-    {
-      name = "array_each___array_each_1.0.1.tgz";
-      path = fetchurl {
-        name = "array_each___array_each_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/array-each/-/array-each-1.0.1.tgz";
-        sha1 = "a794af0c05ab1752846ee753a1f211a05ba0c44f";
-      };
-    }
-    {
-      name = "array_slice___array_slice_0.2.3.tgz";
-      path = fetchurl {
-        name = "array_slice___array_slice_0.2.3.tgz";
-        url = "https://registry.yarnpkg.com/array-slice/-/array-slice-0.2.3.tgz";
-        sha1 = "dd3cfb80ed7973a75117cdac69b0b99ec86186f5";
-      };
-    }
-    {
-      name = "array_slice___array_slice_1.1.0.tgz";
-      path = fetchurl {
-        name = "array_slice___array_slice_1.1.0.tgz";
-        url = "https://registry.yarnpkg.com/array-slice/-/array-slice-1.1.0.tgz";
-        sha1 = "e368ea15f89bc7069f7ffb89aec3a6c7d4ac22d4";
-      };
-    }
-    {
-      name = "array_uniq___array_uniq_1.0.3.tgz";
-      path = fetchurl {
-        name = "array_uniq___array_uniq_1.0.3.tgz";
-        url = "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz";
-        sha1 = "af6ac877a25cc7f74e058894753858dfdb24fdb6";
-      };
-    }
-    {
-      name = "array_unique___array_unique_0.2.1.tgz";
-      path = fetchurl {
-        name = "array_unique___array_unique_0.2.1.tgz";
-        url = "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz";
-        sha1 = "a1d97ccafcbc2625cc70fadceb36a50c58b01a53";
-      };
-    }
-    {
-      name = "array_unique___array_unique_0.3.2.tgz";
-      path = fetchurl {
-        name = "array_unique___array_unique_0.3.2.tgz";
-        url = "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz";
-        sha1 = "a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428";
-      };
-    }
-    {
-      name = "assign_symbols___assign_symbols_1.0.0.tgz";
-      path = fetchurl {
-        name = "assign_symbols___assign_symbols_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz";
-        sha1 = "59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367";
-      };
-    }
-    {
-      name = "async_each___async_each_1.0.3.tgz";
-      path = fetchurl {
-        name = "async_each___async_each_1.0.3.tgz";
-        url = "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz";
-        sha1 = "b727dbf87d7651602f06f4d4ac387f47d91b0cbf";
-      };
-    }
-    {
-      name = "atob___atob_2.1.2.tgz";
-      path = fetchurl {
-        name = "atob___atob_2.1.2.tgz";
-        url = "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz";
-        sha1 = "6d9517eb9e030d2436666651e86bd9f6f13533c9";
+        name = "astral_regex___astral_regex_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz";
+        sha512 = "Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==";
       };
     }
     {
       name = "balanced_match___balanced_match_1.0.2.tgz";
       path = fetchurl {
         name = "balanced_match___balanced_match_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz";
-        sha1 = "e83e3a7e3f300b34cb9d87f615fa0cbf357690ee";
+        url  = "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz";
+        sha512 = "3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==";
       };
     }
     {
-      name = "base___base_0.11.2.tgz";
+      name = "balanced_match___balanced_match_2.0.0.tgz";
       path = fetchurl {
-        name = "base___base_0.11.2.tgz";
-        url = "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz";
-        sha1 = "7bde5ced145b6d551a90db87f83c558b4eb48a8f";
-      };
-    }
-    {
-      name = "beeper___beeper_1.1.1.tgz";
-      path = fetchurl {
-        name = "beeper___beeper_1.1.1.tgz";
-        url = "https://registry.yarnpkg.com/beeper/-/beeper-1.1.1.tgz";
-        sha1 = "e6d5ea8c5dad001304a70b22638447f69cb2f809";
-      };
-    }
-    {
-      name = "binary_extensions___binary_extensions_1.13.1.tgz";
-      path = fetchurl {
-        name = "binary_extensions___binary_extensions_1.13.1.tgz";
-        url = "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz";
-        sha1 = "598afe54755b2868a5330d2aff9d4ebb53209b65";
-      };
-    }
-    {
-      name = "bindings___bindings_1.5.0.tgz";
-      path = fetchurl {
-        name = "bindings___bindings_1.5.0.tgz";
-        url = "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz";
-        sha1 = "10353c9e945334bc0511a6d90b38fbc7c9c504df";
-      };
-    }
-    {
-      name = "boolbase___boolbase_1.0.0.tgz";
-      path = fetchurl {
-        name = "boolbase___boolbase_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz";
-        sha1 = "68dff5fbe60c51eb37725ea9e3ed310dcc1e776e";
+        name = "balanced_match___balanced_match_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/balanced-match/-/balanced-match-2.0.0.tgz";
+        sha512 = "1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==";
       };
     }
     {
       name = "brace_expansion___brace_expansion_1.1.11.tgz";
       path = fetchurl {
         name = "brace_expansion___brace_expansion_1.1.11.tgz";
-        url = "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz";
-        sha1 = "3c7fcbf529d87226f3d2f52b966ff5271eb441dd";
-      };
-    }
-    {
-      name = "braces___braces_1.8.5.tgz";
-      path = fetchurl {
-        name = "braces___braces_1.8.5.tgz";
-        url = "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz";
-        sha1 = "ba77962e12dff969d6b76711e914b737857bf6a7";
-      };
-    }
-    {
-      name = "braces___braces_2.3.2.tgz";
-      path = fetchurl {
-        name = "braces___braces_2.3.2.tgz";
-        url = "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz";
-        sha1 = "5979fd3f14cd531565e5fa2df1abfff1dfaee729";
-      };
-    }
-    {
-      name = "cache_base___cache_base_1.0.1.tgz";
-      path = fetchurl {
-        name = "cache_base___cache_base_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz";
-        sha1 = "0a7f46416831c8b662ee36fe4e7c59d76f666ab2";
-      };
-    }
-    {
-      name = "chalk___chalk_1.1.3.tgz";
-      path = fetchurl {
-        name = "chalk___chalk_1.1.3.tgz";
-        url = "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz";
-        sha1 = "a8115c55e4a702fe4d150abd3872822a7e09fc98";
-      };
-    }
-    {
-      name = "cheerio___cheerio_0.22.0.tgz";
-      path = fetchurl {
-        name = "cheerio___cheerio_0.22.0.tgz";
-        url = "https://registry.yarnpkg.com/cheerio/-/cheerio-0.22.0.tgz";
-        sha1 = "a9baa860a3f9b595a6b81b1a86873121ed3a269e";
+        url  = "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz";
+        sha512 = "iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==";
       };
     }
     {
-      name = "chokidar___chokidar_1.7.0.tgz";
+      name = "braces___braces_3.0.2.tgz";
       path = fetchurl {
-        name = "chokidar___chokidar_1.7.0.tgz";
-        url = "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz";
-        sha1 = "798e689778151c8076b4b360e5edd28cda2bb468";
+        name = "braces___braces_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz";
+        sha512 = "b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==";
       };
     }
     {
-      name = "clap___clap_1.2.3.tgz";
+      name = "callsites___callsites_3.1.0.tgz";
       path = fetchurl {
-        name = "clap___clap_1.2.3.tgz";
-        url = "https://registry.yarnpkg.com/clap/-/clap-1.2.3.tgz";
-        sha1 = "4f36745b32008492557f46412d66d50cb99bce51";
+        name = "callsites___callsites_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz";
+        sha512 = "P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==";
       };
     }
     {
-      name = "class_utils___class_utils_0.3.6.tgz";
+      name = "camelcase_keys___camelcase_keys_6.2.2.tgz";
       path = fetchurl {
-        name = "class_utils___class_utils_0.3.6.tgz";
-        url = "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz";
-        sha1 = "f93369ae8b9a7ce02fd41faad0ca83033190c463";
+        name = "camelcase_keys___camelcase_keys_6.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz";
+        sha512 = "YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==";
       };
     }
     {
-      name = "clone_stats___clone_stats_0.0.1.tgz";
+      name = "camelcase___camelcase_5.3.1.tgz";
       path = fetchurl {
-        name = "clone_stats___clone_stats_0.0.1.tgz";
-        url = "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz";
-        sha1 = "b88f94a82cf38b8791d58046ea4029ad88ca99d1";
+        name = "camelcase___camelcase_5.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz";
+        sha512 = "L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==";
       };
     }
     {
-      name = "clone___clone_0.2.0.tgz";
+      name = "chalk___chalk_2.4.2.tgz";
       path = fetchurl {
-        name = "clone___clone_0.2.0.tgz";
-        url = "https://registry.yarnpkg.com/clone/-/clone-0.2.0.tgz";
-        sha1 = "c6126a90ad4f72dbf5acdb243cc37724fe93fc1f";
+        name = "chalk___chalk_2.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz";
+        sha512 = "Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==";
       };
     }
     {
-      name = "clone___clone_1.0.4.tgz";
+      name = "clone_regexp___clone_regexp_2.2.0.tgz";
       path = fetchurl {
-        name = "clone___clone_1.0.4.tgz";
-        url = "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz";
-        sha1 = "da309cc263df15994c688ca902179ca3c7cd7c7e";
+        name = "clone_regexp___clone_regexp_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/clone-regexp/-/clone-regexp-2.2.0.tgz";
+        sha512 = "beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q==";
       };
     }
     {
-      name = "coa___coa_1.0.4.tgz";
+      name = "color_convert___color_convert_1.9.3.tgz";
       path = fetchurl {
-        name = "coa___coa_1.0.4.tgz";
-        url = "https://registry.yarnpkg.com/coa/-/coa-1.0.4.tgz";
-        sha1 = "a9ef153660d6a86a8bdec0289a5c684d217432fd";
+        name = "color_convert___color_convert_1.9.3.tgz";
+        url  = "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz";
+        sha512 = "QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==";
       };
     }
     {
-      name = "collection_visit___collection_visit_1.0.0.tgz";
+      name = "color_convert___color_convert_2.0.1.tgz";
       path = fetchurl {
-        name = "collection_visit___collection_visit_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz";
-        sha1 = "4bc0373c164bc3291b4d368c829cf1a80a59dca0";
+        name = "color_convert___color_convert_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz";
+        sha512 = "RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==";
       };
     }
     {
-      name = "color_support___color_support_1.1.3.tgz";
+      name = "color_name___color_name_1.1.3.tgz";
       path = fetchurl {
-        name = "color_support___color_support_1.1.3.tgz";
-        url = "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz";
-        sha1 = "93834379a1cc9a0c61f82f52f0d04322251bd5a2";
+        name = "color_name___color_name_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz";
+        sha1 = "p9BVi9icQveV3UIyj3QIMcpTvCU=";
       };
     }
     {
-      name = "colors___colors_1.1.2.tgz";
+      name = "color_name___color_name_1.1.4.tgz";
       path = fetchurl {
-        name = "colors___colors_1.1.2.tgz";
-        url = "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz";
-        sha1 = "168a4701756b6a7f51a12ce0c97bfa28c084ed63";
-      };
-    }
-    {
-      name = "component_emitter___component_emitter_1.3.0.tgz";
-      path = fetchurl {
-        name = "component_emitter___component_emitter_1.3.0.tgz";
-        url = "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz";
-        sha1 = "16e4070fba8ae29b679f2215853ee181ab2eabc0";
+        name = "color_name___color_name_1.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz";
+        sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==";
       };
     }
     {
       name = "concat_map___concat_map_0.0.1.tgz";
       path = fetchurl {
         name = "concat_map___concat_map_0.0.1.tgz";
-        url = "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz";
-        sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
-      };
-    }
-    {
-      name = "copy_descriptor___copy_descriptor_0.1.1.tgz";
-      path = fetchurl {
-        name = "copy_descriptor___copy_descriptor_0.1.1.tgz";
-        url = "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz";
-        sha1 = "676f6eb3c39997c2ee1ac3a924fd6124748f578d";
-      };
-    }
-    {
-      name = "core_util_is___core_util_is_1.0.3.tgz";
-      path = fetchurl {
-        name = "core_util_is___core_util_is_1.0.3.tgz";
-        url = "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz";
-        sha1 = "a6042d3634c2b27e9328f837b965fac83808db85";
-      };
-    }
-    {
-      name = "css_select___css_select_1.2.0.tgz";
-      path = fetchurl {
-        name = "css_select___css_select_1.2.0.tgz";
-        url = "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz";
-        sha1 = "2b3a110539c5355f1cd8d314623e870b121ec858";
-      };
-    }
-    {
-      name = "css_what___css_what_2.1.3.tgz";
-      path = fetchurl {
-        name = "css_what___css_what_2.1.3.tgz";
-        url = "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz";
-        sha1 = "a6d7604573365fe74686c3f311c56513d88285f2";
-      };
-    }
-    {
-      name = "csso___csso_2.3.2.tgz";
-      path = fetchurl {
-        name = "csso___csso_2.3.2.tgz";
-        url = "https://registry.yarnpkg.com/csso/-/csso-2.3.2.tgz";
-        sha1 = "ddd52c587033f49e94b71fc55569f252e8ff5f85";
-      };
-    }
-    {
-      name = "dateformat___dateformat_2.2.0.tgz";
-      path = fetchurl {
-        name = "dateformat___dateformat_2.2.0.tgz";
-        url = "https://registry.yarnpkg.com/dateformat/-/dateformat-2.2.0.tgz";
-        sha1 = "4065e2013cf9fb916ddfd82efb506ad4c6769062";
-      };
-    }
-    {
-      name = "debug___debug_2.6.9.tgz";
-      path = fetchurl {
-        name = "debug___debug_2.6.9.tgz";
-        url = "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz";
-        sha1 = "5d128515df134ff327e90a4c93f4e077a536341f";
-      };
-    }
-    {
-      name = "decode_uri_component___decode_uri_component_0.2.0.tgz";
-      path = fetchurl {
-        name = "decode_uri_component___decode_uri_component_0.2.0.tgz";
-        url = "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz";
-        sha1 = "eb3913333458775cb84cd1a1fae062106bb87545";
+        url  = "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz";
+        sha1 = "2Klr13/Wjfd5OnMDajug1UBdR3s=";
       };
     }
     {
-      name = "defaults___defaults_1.0.3.tgz";
+      name = "cosmiconfig___cosmiconfig_7.0.1.tgz";
       path = fetchurl {
-        name = "defaults___defaults_1.0.3.tgz";
-        url = "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz";
-        sha1 = "c656051e9817d9ff08ed881477f3fe4019f3ef7d";
+        name = "cosmiconfig___cosmiconfig_7.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz";
+        sha512 = "a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==";
       };
     }
     {
-      name = "define_property___define_property_0.2.5.tgz";
+      name = "cssesc___cssesc_3.0.0.tgz";
       path = fetchurl {
-        name = "define_property___define_property_0.2.5.tgz";
-        url = "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz";
-        sha1 = "c35b1ef918ec3c990f9a5bc57be04aacec5c8116";
+        name = "cssesc___cssesc_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz";
+        sha512 = "/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==";
       };
     }
     {
-      name = "define_property___define_property_1.0.0.tgz";
+      name = "debug___debug_4.3.3.tgz";
       path = fetchurl {
-        name = "define_property___define_property_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz";
-        sha1 = "769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6";
+        name = "debug___debug_4.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz";
+        sha512 = "/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==";
       };
     }
     {
-      name = "define_property___define_property_2.0.2.tgz";
+      name = "decamelize_keys___decamelize_keys_1.1.0.tgz";
       path = fetchurl {
-        name = "define_property___define_property_2.0.2.tgz";
-        url = "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz";
-        sha1 = "d459689e8d654ba77e02a817f8710d702cb16e9d";
+        name = "decamelize_keys___decamelize_keys_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz";
+        sha1 = "0XGoeTMlKAfrPLYdwcFEXQeN8tk=";
       };
     }
     {
-      name = "deprecated___deprecated_0.0.1.tgz";
+      name = "decamelize___decamelize_1.2.0.tgz";
       path = fetchurl {
-        name = "deprecated___deprecated_0.0.1.tgz";
-        url = "https://registry.yarnpkg.com/deprecated/-/deprecated-0.0.1.tgz";
-        sha1 = "f9c9af5464afa1e7a971458a8bdef2aa94d5bb19";
+        name = "decamelize___decamelize_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz";
+        sha1 = "9lNNFRSCabIDUue+4m9QH5oZEpA=";
       };
     }
     {
-      name = "detect_file___detect_file_1.0.0.tgz";
+      name = "dir_glob___dir_glob_3.0.1.tgz";
       path = fetchurl {
-        name = "detect_file___detect_file_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz";
-        sha1 = "f0d66d03672a825cb1b73bdb3fe62310c8e552b7";
+        name = "dir_glob___dir_glob_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz";
+        sha512 = "WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==";
       };
     }
     {
-      name = "dom_serializer___dom_serializer_0.2.2.tgz";
+      name = "dom_serializer___dom_serializer_1.3.2.tgz";
       path = fetchurl {
-        name = "dom_serializer___dom_serializer_0.2.2.tgz";
-        url = "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz";
-        sha1 = "1afb81f533717175d478655debc5e332d9f9bb51";
-      };
-    }
-    {
-      name = "dom_serializer___dom_serializer_0.1.1.tgz";
-      path = fetchurl {
-        name = "dom_serializer___dom_serializer_0.1.1.tgz";
-        url = "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz";
-        sha1 = "1ec4059e284babed36eec2941d4a970a189ce7c0";
-      };
-    }
-    {
-      name = "domelementtype___domelementtype_1.3.1.tgz";
-      path = fetchurl {
-        name = "domelementtype___domelementtype_1.3.1.tgz";
-        url = "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz";
-        sha1 = "d048c44b37b0d10a7f2a3d5fee3f4333d790481f";
+        name = "dom_serializer___dom_serializer_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz";
+        sha512 = "5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==";
       };
     }
     {
       name = "domelementtype___domelementtype_2.2.0.tgz";
       path = fetchurl {
         name = "domelementtype___domelementtype_2.2.0.tgz";
-        url = "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz";
-        sha1 = "9a0b6c2782ed6a1c7323d42267183df9bd8b1d57";
-      };
-    }
-    {
-      name = "domhandler___domhandler_2.4.2.tgz";
-      path = fetchurl {
-        name = "domhandler___domhandler_2.4.2.tgz";
-        url = "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz";
-        sha1 = "8805097e933d65e85546f726d60f5eb88b44f803";
-      };
-    }
-    {
-      name = "domutils___domutils_1.5.1.tgz";
-      path = fetchurl {
-        name = "domutils___domutils_1.5.1.tgz";
-        url = "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz";
-        sha1 = "dcd8488a26f563d61079e48c9f7b7e32373682cf";
-      };
-    }
-    {
-      name = "domutils___domutils_1.7.0.tgz";
-      path = fetchurl {
-        name = "domutils___domutils_1.7.0.tgz";
-        url = "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz";
-        sha1 = "56ea341e834e06e6748af7a1cb25da67ea9f8c2a";
+        url  = "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz";
+        sha512 = "DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==";
       };
     }
     {
-      name = "duplexer2___duplexer2_0.0.2.tgz";
+      name = "domhandler___domhandler_4.3.0.tgz";
       path = fetchurl {
-        name = "duplexer2___duplexer2_0.0.2.tgz";
-        url = "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz";
-        sha1 = "c614dcf67e2fb14995a91711e5a617e8a60a31db";
+        name = "domhandler___domhandler_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.0.tgz";
+        sha512 = "fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==";
       };
     }
     {
-      name = "end_of_stream___end_of_stream_0.1.5.tgz";
+      name = "domutils___domutils_2.8.0.tgz";
       path = fetchurl {
-        name = "end_of_stream___end_of_stream_0.1.5.tgz";
-        url = "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-0.1.5.tgz";
-        sha1 = "8e177206c3c80837d85632e8b9359dfe8b2f6eaf";
+        name = "domutils___domutils_2.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz";
+        sha512 = "w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==";
       };
     }
     {
-      name = "entities___entities_1.1.2.tgz";
+      name = "emoji_regex___emoji_regex_8.0.0.tgz";
       path = fetchurl {
-        name = "entities___entities_1.1.2.tgz";
-        url = "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz";
-        sha1 = "bdfa735299664dfafd34529ed4f8522a275fea56";
+        name = "emoji_regex___emoji_regex_8.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz";
+        sha512 = "MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==";
       };
     }
     {
       name = "entities___entities_2.2.0.tgz";
       path = fetchurl {
         name = "entities___entities_2.2.0.tgz";
-        url = "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz";
-        sha1 = "098dc90ebb83d8dffa089d55256b351d34c4da55";
-      };
-    }
-    {
-      name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
-      path = fetchurl {
-        name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
-        url = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
-        sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4";
-      };
-    }
-    {
-      name = "esprima___esprima_2.7.3.tgz";
-      path = fetchurl {
-        name = "esprima___esprima_2.7.3.tgz";
-        url = "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz";
-        sha1 = "96e3b70d5779f6ad49cd032673d1c312767ba581";
-      };
-    }
-    {
-      name = "expand_brackets___expand_brackets_0.1.5.tgz";
-      path = fetchurl {
-        name = "expand_brackets___expand_brackets_0.1.5.tgz";
-        url = "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz";
-        sha1 = "df07284e342a807cd733ac5af72411e581d1177b";
-      };
-    }
-    {
-      name = "expand_brackets___expand_brackets_2.1.4.tgz";
-      path = fetchurl {
-        name = "expand_brackets___expand_brackets_2.1.4.tgz";
-        url = "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz";
-        sha1 = "b77735e315ce30f6b6eff0f83b04151a22449622";
-      };
-    }
-    {
-      name = "expand_range___expand_range_1.8.2.tgz";
-      path = fetchurl {
-        name = "expand_range___expand_range_1.8.2.tgz";
-        url = "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz";
-        sha1 = "a299effd335fe2721ebae8e257ec79644fc85337";
-      };
-    }
-    {
-      name = "expand_tilde___expand_tilde_2.0.2.tgz";
-      path = fetchurl {
-        name = "expand_tilde___expand_tilde_2.0.2.tgz";
-        url = "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz";
-        sha1 = "97e801aa052df02454de46b02bf621642cdc8502";
-      };
-    }
-    {
-      name = "extend_shallow___extend_shallow_1.1.4.tgz";
-      path = fetchurl {
-        name = "extend_shallow___extend_shallow_1.1.4.tgz";
-        url = "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-1.1.4.tgz";
-        sha1 = "19d6bf94dfc09d76ba711f39b872d21ff4dd9071";
-      };
-    }
-    {
-      name = "extend_shallow___extend_shallow_2.0.1.tgz";
-      path = fetchurl {
-        name = "extend_shallow___extend_shallow_2.0.1.tgz";
-        url = "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz";
-        sha1 = "51af7d614ad9a9f610ea1bafbb989d6b1c56890f";
-      };
-    }
-    {
-      name = "extend_shallow___extend_shallow_3.0.2.tgz";
-      path = fetchurl {
-        name = "extend_shallow___extend_shallow_3.0.2.tgz";
-        url = "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz";
-        sha1 = "26a71aaf073b39fb2127172746131c2704028db8";
-      };
-    }
-    {
-      name = "extend___extend_3.0.2.tgz";
-      path = fetchurl {
-        name = "extend___extend_3.0.2.tgz";
-        url = "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz";
-        sha1 = "f8b1136b4071fbd8eb140aff858b1019ec2915fa";
-      };
-    }
-    {
-      name = "extglob___extglob_0.3.2.tgz";
-      path = fetchurl {
-        name = "extglob___extglob_0.3.2.tgz";
-        url = "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz";
-        sha1 = "2e18ff3d2f49ab2765cec9023f011daa8d8349a1";
-      };
-    }
-    {
-      name = "extglob___extglob_2.0.4.tgz";
-      path = fetchurl {
-        name = "extglob___extglob_2.0.4.tgz";
-        url = "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz";
-        sha1 = "ad00fe4dc612a9232e8718711dc5cb5ab0285543";
-      };
-    }
-    {
-      name = "fancy_log___fancy_log_1.3.3.tgz";
-      path = fetchurl {
-        name = "fancy_log___fancy_log_1.3.3.tgz";
-        url = "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.3.tgz";
-        sha1 = "dbc19154f558690150a23953a0adbd035be45fc7";
+        url  = "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz";
+        sha512 = "p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==";
       };
     }
     {
-      name = "file_uri_to_path___file_uri_to_path_1.0.0.tgz";
+      name = "entities___entities_3.0.1.tgz";
       path = fetchurl {
-        name = "file_uri_to_path___file_uri_to_path_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz";
-        sha1 = "553a7b8446ff6f684359c445f1e37a05dacc33dd";
+        name = "entities___entities_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz";
+        sha512 = "WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==";
       };
     }
     {
-      name = "filename_regex___filename_regex_2.0.1.tgz";
+      name = "error_ex___error_ex_1.3.2.tgz";
       path = fetchurl {
-        name = "filename_regex___filename_regex_2.0.1.tgz";
-        url = "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz";
-        sha1 = "c1c4b9bee3e09725ddb106b75c1e301fe2f18b26";
+        name = "error_ex___error_ex_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz";
+        sha512 = "7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==";
       };
     }
     {
-      name = "fill_range___fill_range_2.2.4.tgz";
+      name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
       path = fetchurl {
-        name = "fill_range___fill_range_2.2.4.tgz";
-        url = "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz";
-        sha1 = "eb1e773abb056dcd8df2bfdf6af59b8b3a936565";
+        name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
+        sha1 = "G2HAViGQqN/2rjuyzwIAyhMLhtQ=";
       };
     }
     {
-      name = "fill_range___fill_range_4.0.0.tgz";
+      name = "execall___execall_2.0.0.tgz";
       path = fetchurl {
-        name = "fill_range___fill_range_4.0.0.tgz";
-        url = "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz";
-        sha1 = "d544811d428f98eb06a63dc402d2403c328c38f7";
+        name = "execall___execall_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/execall/-/execall-2.0.0.tgz";
+        sha512 = "0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow==";
       };
     }
     {
-      name = "find_index___find_index_0.1.1.tgz";
+      name = "fast_deep_equal___fast_deep_equal_3.1.3.tgz";
       path = fetchurl {
-        name = "find_index___find_index_0.1.1.tgz";
-        url = "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz";
-        sha1 = "675d358b2ca3892d795a1ab47232f8b6e2e0dde4";
+        name = "fast_deep_equal___fast_deep_equal_3.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz";
+        sha512 = "f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==";
       };
     }
     {
-      name = "findup_sync___findup_sync_2.0.0.tgz";
+      name = "fast_diff___fast_diff_1.2.0.tgz";
       path = fetchurl {
-        name = "findup_sync___findup_sync_2.0.0.tgz";
-        url = "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz";
-        sha1 = "9326b1488c22d1a6088650a86901b2d9a90a2cbc";
+        name = "fast_diff___fast_diff_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz";
+        sha512 = "xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==";
       };
     }
     {
-      name = "fined___fined_1.2.0.tgz";
+      name = "fast_glob___fast_glob_3.2.7.tgz";
       path = fetchurl {
-        name = "fined___fined_1.2.0.tgz";
-        url = "https://registry.yarnpkg.com/fined/-/fined-1.2.0.tgz";
-        sha1 = "d00beccf1aa2b475d16d423b0238b713a2c4a37b";
+        name = "fast_glob___fast_glob_3.2.7.tgz";
+        url  = "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz";
+        sha512 = "rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==";
       };
     }
     {
-      name = "first_chunk_stream___first_chunk_stream_1.0.0.tgz";
+      name = "fastest_levenshtein___fastest_levenshtein_1.0.12.tgz";
       path = fetchurl {
-        name = "first_chunk_stream___first_chunk_stream_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz";
-        sha1 = "59bfb50cd905f60d7c394cd3d9acaab4e6ad934e";
+        name = "fastest_levenshtein___fastest_levenshtein_1.0.12.tgz";
+        url  = "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz";
+        sha512 = "On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==";
       };
     }
     {
-      name = "first_chunk_stream___first_chunk_stream_2.0.0.tgz";
+      name = "fastq___fastq_1.13.0.tgz";
       path = fetchurl {
-        name = "first_chunk_stream___first_chunk_stream_2.0.0.tgz";
-        url = "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz";
-        sha1 = "1bdecdb8e083c0664b91945581577a43a9f31d70";
+        name = "fastq___fastq_1.13.0.tgz";
+        url  = "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz";
+        sha512 = "YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==";
       };
     }
     {
-      name = "flagged_respawn___flagged_respawn_1.0.1.tgz";
+      name = "file_entry_cache___file_entry_cache_6.0.1.tgz";
       path = fetchurl {
-        name = "flagged_respawn___flagged_respawn_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-1.0.1.tgz";
-        sha1 = "e7de6f1279ddd9ca9aac8a5971d618606b3aab41";
+        name = "file_entry_cache___file_entry_cache_6.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz";
+        sha512 = "7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==";
       };
     }
     {
-      name = "for_in___for_in_1.0.2.tgz";
+      name = "fill_range___fill_range_7.0.1.tgz";
       path = fetchurl {
-        name = "for_in___for_in_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz";
-        sha1 = "81068d295a8142ec0ac726c6e2200c30fb6d5e80";
+        name = "fill_range___fill_range_7.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz";
+        sha512 = "qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==";
       };
     }
     {
-      name = "for_own___for_own_0.1.5.tgz";
+      name = "find_up___find_up_4.1.0.tgz";
       path = fetchurl {
-        name = "for_own___for_own_0.1.5.tgz";
-        url = "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz";
-        sha1 = "5265c681a4f294dabbf17c9509b6763aa84510ce";
+        name = "find_up___find_up_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz";
+        sha512 = "PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==";
       };
     }
     {
-      name = "for_own___for_own_1.0.0.tgz";
+      name = "flat_cache___flat_cache_3.0.4.tgz";
       path = fetchurl {
-        name = "for_own___for_own_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz";
-        sha1 = "c63332f415cedc4b04dbfe70cf836494c53cb44b";
+        name = "flat_cache___flat_cache_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz";
+        sha512 = "dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==";
       };
     }
     {
-      name = "fragment_cache___fragment_cache_0.2.1.tgz";
+      name = "flatted___flatted_3.2.4.tgz";
       path = fetchurl {
-        name = "fragment_cache___fragment_cache_0.2.1.tgz";
-        url = "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz";
-        sha1 = "4290fad27f13e89be7f33799c6bc5a0abfff0d19";
+        name = "flatted___flatted_3.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/flatted/-/flatted-3.2.4.tgz";
+        sha512 = "8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw==";
       };
     }
     {
-      name = "fsevents___fsevents_1.2.13.tgz";
+      name = "fs.realpath___fs.realpath_1.0.0.tgz";
       path = fetchurl {
-        name = "fsevents___fsevents_1.2.13.tgz";
-        url = "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz";
-        sha1 = "f325cb0455592428bcf11b383370ef70e3bfcc38";
+        name = "fs.realpath___fs.realpath_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz";
+        sha1 = "FQStJSMVjKpA20onh8sBQRmU6k8=";
       };
     }
     {
       name = "function_bind___function_bind_1.1.1.tgz";
       path = fetchurl {
         name = "function_bind___function_bind_1.1.1.tgz";
-        url = "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz";
-        sha1 = "a56899d3ea3c9bab874bb9773b7c5ede92f4895d";
-      };
-    }
-    {
-      name = "gaze___gaze_0.5.2.tgz";
-      path = fetchurl {
-        name = "gaze___gaze_0.5.2.tgz";
-        url = "https://registry.yarnpkg.com/gaze/-/gaze-0.5.2.tgz";
-        sha1 = "40b709537d24d1d45767db5a908689dfe69ac44f";
-      };
-    }
-    {
-      name = "get_value___get_value_2.0.6.tgz";
-      path = fetchurl {
-        name = "get_value___get_value_2.0.6.tgz";
-        url = "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz";
-        sha1 = "dc15ca1c672387ca76bd37ac0a395ba2042a2c28";
-      };
-    }
-    {
-      name = "glob_base___glob_base_0.3.0.tgz";
-      path = fetchurl {
-        name = "glob_base___glob_base_0.3.0.tgz";
-        url = "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz";
-        sha1 = "dbb164f6221b1c0b1ccf82aea328b497df0ea3c4";
-      };
-    }
-    {
-      name = "glob_parent___glob_parent_2.0.0.tgz";
-      path = fetchurl {
-        name = "glob_parent___glob_parent_2.0.0.tgz";
-        url = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz";
-        sha1 = "81383d72db054fcccf5336daa902f182f6edbb28";
-      };
-    }
-    {
-      name = "glob_parent___glob_parent_3.1.0.tgz";
-      path = fetchurl {
-        name = "glob_parent___glob_parent_3.1.0.tgz";
-        url = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz";
-        sha1 = "9e6af6299d8d3bd2bd40430832bd113df906c5ae";
-      };
-    }
-    {
-      name = "glob_stream___glob_stream_3.1.18.tgz";
-      path = fetchurl {
-        name = "glob_stream___glob_stream_3.1.18.tgz";
-        url = "https://registry.yarnpkg.com/glob-stream/-/glob-stream-3.1.18.tgz";
-        sha1 = "9170a5f12b790306fdfe598f313f8f7954fd143b";
-      };
-    }
-    {
-      name = "glob_watcher___glob_watcher_0.0.6.tgz";
-      path = fetchurl {
-        name = "glob_watcher___glob_watcher_0.0.6.tgz";
-        url = "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-0.0.6.tgz";
-        sha1 = "b95b4a8df74b39c83298b0c05c978b4d9a3b710b";
-      };
-    }
-    {
-      name = "glob2base___glob2base_0.0.12.tgz";
-      path = fetchurl {
-        name = "glob2base___glob2base_0.0.12.tgz";
-        url = "https://registry.yarnpkg.com/glob2base/-/glob2base-0.0.12.tgz";
-        sha1 = "9d419b3e28f12e83a362164a277055922c9c0d56";
+        url  = "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz";
+        sha512 = "yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==";
       };
     }
     {
-      name = "glob___glob_4.5.3.tgz";
+      name = "get_stdin___get_stdin_8.0.0.tgz";
       path = fetchurl {
-        name = "glob___glob_4.5.3.tgz";
-        url = "https://registry.yarnpkg.com/glob/-/glob-4.5.3.tgz";
-        sha1 = "c6cb73d3226c1efef04de3c56d012f03377ee15f";
+        name = "get_stdin___get_stdin_8.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz";
+        sha512 = "sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==";
       };
     }
     {
-      name = "glob___glob_3.1.21.tgz";
+      name = "glob_parent___glob_parent_5.1.2.tgz";
       path = fetchurl {
-        name = "glob___glob_3.1.21.tgz";
-        url = "https://registry.yarnpkg.com/glob/-/glob-3.1.21.tgz";
-        sha1 = "d29e0a055dea5138f4d07ed40e8982e83c2066cd";
+        name = "glob_parent___glob_parent_5.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz";
+        sha512 = "AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==";
       };
     }
     {
-      name = "global_modules___global_modules_1.0.0.tgz";
+      name = "glob___glob_7.2.0.tgz";
       path = fetchurl {
-        name = "global_modules___global_modules_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz";
-        sha1 = "6d770f0eb523ac78164d72b5e71a8877265cc3ea";
+        name = "glob___glob_7.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz";
+        sha512 = "lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==";
       };
     }
     {
-      name = "global_prefix___global_prefix_1.0.2.tgz";
+      name = "global_modules___global_modules_2.0.0.tgz";
       path = fetchurl {
-        name = "global_prefix___global_prefix_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz";
-        sha1 = "dbf743c6c14992593c655568cb66ed32c0122ebe";
+        name = "global_modules___global_modules_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz";
+        sha512 = "NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==";
       };
     }
     {
-      name = "globule___globule_0.1.0.tgz";
+      name = "global_prefix___global_prefix_3.0.0.tgz";
       path = fetchurl {
-        name = "globule___globule_0.1.0.tgz";
-        url = "https://registry.yarnpkg.com/globule/-/globule-0.1.0.tgz";
-        sha1 = "d9c8edde1da79d125a151b79533b978676346ae5";
+        name = "global_prefix___global_prefix_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz";
+        sha512 = "awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==";
       };
     }
     {
-      name = "glogg___glogg_1.0.2.tgz";
+      name = "globby___globby_11.0.4.tgz";
       path = fetchurl {
-        name = "glogg___glogg_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/glogg/-/glogg-1.0.2.tgz";
-        sha1 = "2d7dd702beda22eb3bffadf880696da6d846313f";
+        name = "globby___globby_11.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz";
+        sha512 = "9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==";
       };
     }
     {
-      name = "graceful_fs___graceful_fs_3.0.12.tgz";
+      name = "globjoin___globjoin_0.1.4.tgz";
       path = fetchurl {
-        name = "graceful_fs___graceful_fs_3.0.12.tgz";
-        url = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-3.0.12.tgz";
-        sha1 = "0034947ce9ed695ec8ab0b854bc919e82b1ffaef";
+        name = "globjoin___globjoin_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/globjoin/-/globjoin-0.1.4.tgz";
+        sha1 = "L0SUrIkZ43Z8XLtpHp9GMyQoXUM=";
       };
     }
     {
-      name = "graceful_fs___graceful_fs_4.2.8.tgz";
+      name = "hard_rejection___hard_rejection_2.1.0.tgz";
       path = fetchurl {
-        name = "graceful_fs___graceful_fs_4.2.8.tgz";
-        url = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz";
-        sha1 = "e412b8d33f5e006593cbd3cee6df9f2cebbe802a";
+        name = "hard_rejection___hard_rejection_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz";
+        sha512 = "VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==";
       };
     }
     {
-      name = "graceful_fs___graceful_fs_1.2.3.tgz";
+      name = "has_flag___has_flag_3.0.0.tgz";
       path = fetchurl {
-        name = "graceful_fs___graceful_fs_1.2.3.tgz";
-        url = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-1.2.3.tgz";
-        sha1 = "15a4806a57547cb2d2dbf27f42e89a8c3451b364";
+        name = "has_flag___has_flag_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz";
+        sha1 = "tdRU3CGZriJWmfNGfloH87lVuv0=";
       };
     }
     {
-      name = "gulp_cheerio___gulp_cheerio_0.6.3.tgz";
-      path = fetchurl {
-        name = "gulp_cheerio___gulp_cheerio_0.6.3.tgz";
-        url = "https://registry.yarnpkg.com/gulp-cheerio/-/gulp-cheerio-0.6.3.tgz";
-        sha1 = "40271c1703368c88408ab8750ba9bf3e1aea9c68";
-      };
-    }
-    {
-      name = "gulp_rename___gulp_rename_1.4.0.tgz";
-      path = fetchurl {
-        name = "gulp_rename___gulp_rename_1.4.0.tgz";
-        url = "https://registry.yarnpkg.com/gulp-rename/-/gulp-rename-1.4.0.tgz";
-        sha1 = "de1c718e7c4095ae861f7296ef4f3248648240bd";
-      };
-    }
-    {
-      name = "gulp_svgmin___gulp_svgmin_1.2.4.tgz";
-      path = fetchurl {
-        name = "gulp_svgmin___gulp_svgmin_1.2.4.tgz";
-        url = "https://registry.yarnpkg.com/gulp-svgmin/-/gulp-svgmin-1.2.4.tgz";
-        sha1 = "a4aa9e2615cf1105ef555aea86e86296cc20e273";
-      };
-    }
-    {
-      name = "gulp_svgstore___gulp_svgstore_5.0.5.tgz";
-      path = fetchurl {
-        name = "gulp_svgstore___gulp_svgstore_5.0.5.tgz";
-        url = "https://registry.yarnpkg.com/gulp-svgstore/-/gulp-svgstore-5.0.5.tgz";
-        sha1 = "4ad5cec5d753a1624a00e49cef5fc86a45d97327";
-      };
-    }
-    {
-      name = "gulp_util___gulp_util_3.0.8.tgz";
-      path = fetchurl {
-        name = "gulp_util___gulp_util_3.0.8.tgz";
-        url = "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz";
-        sha1 = "0054e1e744502e27c04c187c3ecc505dd54bbb4f";
-      };
-    }
-    {
-      name = "gulp_watch___gulp_watch_4.3.11.tgz";
-      path = fetchurl {
-        name = "gulp_watch___gulp_watch_4.3.11.tgz";
-        url = "https://registry.yarnpkg.com/gulp-watch/-/gulp-watch-4.3.11.tgz";
-        sha1 = "162fc563de9fc770e91f9a7ce3955513a9a118c0";
-      };
-    }
-    {
-      name = "gulp___gulp_3.9.1.tgz";
-      path = fetchurl {
-        name = "gulp___gulp_3.9.1.tgz";
-        url = "https://registry.yarnpkg.com/gulp/-/gulp-3.9.1.tgz";
-        sha1 = "571ce45928dd40af6514fc4011866016c13845b4";
-      };
-    }
-    {
-      name = "gulplog___gulplog_1.0.0.tgz";
+      name = "has___has_1.0.3.tgz";
       path = fetchurl {
-        name = "gulplog___gulplog_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz";
-        sha1 = "e28c4d45d05ecbbed818363ce8f9c5926229ffe5";
+        name = "has___has_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz";
+        sha512 = "f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==";
       };
     }
     {
-      name = "has_ansi___has_ansi_2.0.0.tgz";
+      name = "hosted_git_info___hosted_git_info_2.8.9.tgz";
       path = fetchurl {
-        name = "has_ansi___has_ansi_2.0.0.tgz";
-        url = "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz";
-        sha1 = "34f5049ce1ecdf2b0649af3ef24e45ed35416d91";
+        name = "hosted_git_info___hosted_git_info_2.8.9.tgz";
+        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz";
+        sha512 = "mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==";
       };
     }
     {
-      name = "has_gulplog___has_gulplog_0.1.0.tgz";
+      name = "hosted_git_info___hosted_git_info_4.0.2.tgz";
       path = fetchurl {
-        name = "has_gulplog___has_gulplog_0.1.0.tgz";
-        url = "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz";
-        sha1 = "6414c82913697da51590397dafb12f22967811ce";
+        name = "hosted_git_info___hosted_git_info_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz";
+        sha512 = "c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==";
       };
     }
     {
-      name = "has_value___has_value_0.3.1.tgz";
+      name = "html_tags___html_tags_3.1.0.tgz";
       path = fetchurl {
-        name = "has_value___has_value_0.3.1.tgz";
-        url = "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz";
-        sha1 = "7b1f58bada62ca827ec0a2078025654845995e1f";
+        name = "html_tags___html_tags_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz";
+        sha512 = "1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==";
       };
     }
     {
-      name = "has_value___has_value_1.0.0.tgz";
+      name = "htmlparser2___htmlparser2_7.2.0.tgz";
       path = fetchurl {
-        name = "has_value___has_value_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz";
-        sha1 = "18b281da585b1c5c51def24c930ed29a0be6b177";
+        name = "htmlparser2___htmlparser2_7.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-7.2.0.tgz";
+        sha512 = "H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==";
       };
     }
     {
-      name = "has_values___has_values_0.1.4.tgz";
+      name = "ignore___ignore_5.1.9.tgz";
       path = fetchurl {
-        name = "has_values___has_values_0.1.4.tgz";
-        url = "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz";
-        sha1 = "6d61de95d91dfca9b9a02089ad384bff8f62b771";
+        name = "ignore___ignore_5.1.9.tgz";
+        url  = "https://registry.yarnpkg.com/ignore/-/ignore-5.1.9.tgz";
+        sha512 = "2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ==";
       };
     }
     {
-      name = "has_values___has_values_1.0.0.tgz";
+      name = "import_fresh___import_fresh_3.3.0.tgz";
       path = fetchurl {
-        name = "has_values___has_values_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz";
-        sha1 = "95b0b63fec2146619a6fe57fe75628d5a39efe4f";
+        name = "import_fresh___import_fresh_3.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz";
+        sha512 = "veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==";
       };
     }
     {
-      name = "has___has_1.0.3.tgz";
+      name = "import_lazy___import_lazy_4.0.0.tgz";
       path = fetchurl {
-        name = "has___has_1.0.3.tgz";
-        url = "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz";
-        sha1 = "722d7cbfc1f6aa8241f16dd814e011e1f41e8796";
+        name = "import_lazy___import_lazy_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz";
+        sha512 = "rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==";
       };
     }
     {
-      name = "homedir_polyfill___homedir_polyfill_1.0.3.tgz";
+      name = "imurmurhash___imurmurhash_0.1.4.tgz";
       path = fetchurl {
-        name = "homedir_polyfill___homedir_polyfill_1.0.3.tgz";
-        url = "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz";
-        sha1 = "743298cef4e5af3e194161fbadcc2151d3a058e8";
+        name = "imurmurhash___imurmurhash_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz";
+        sha1 = "khi5srkoojixPcT7a21XbyMUU+o=";
       };
     }
     {
-      name = "htmlparser2___htmlparser2_3.10.1.tgz";
+      name = "indent_string___indent_string_4.0.0.tgz";
       path = fetchurl {
-        name = "htmlparser2___htmlparser2_3.10.1.tgz";
-        url = "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz";
-        sha1 = "bd679dc3f59897b6a34bb10749c855bb53a9392f";
+        name = "indent_string___indent_string_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz";
+        sha512 = "EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==";
       };
     }
     {
       name = "inflight___inflight_1.0.6.tgz";
       path = fetchurl {
         name = "inflight___inflight_1.0.6.tgz";
-        url = "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz";
-        sha1 = "49bd6331d7d02d0c09bc910a1075ba8165b56df9";
-      };
-    }
-    {
-      name = "inherits___inherits_1.0.2.tgz";
-      path = fetchurl {
-        name = "inherits___inherits_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/inherits/-/inherits-1.0.2.tgz";
-        sha1 = "ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b";
+        url  = "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz";
+        sha1 = "Sb1jMdfQLQwJvJEKEHW6gWW1bfk=";
       };
     }
     {
       name = "inherits___inherits_2.0.4.tgz";
       path = fetchurl {
         name = "inherits___inherits_2.0.4.tgz";
-        url = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz";
-        sha1 = "0fa2c64f932917c3433a0ded55363aae37416b7c";
+        url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz";
+        sha512 = "k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==";
       };
     }
     {
       name = "ini___ini_1.3.8.tgz";
       path = fetchurl {
         name = "ini___ini_1.3.8.tgz";
-        url = "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz";
-        sha1 = "a29da425b48806f34767a4efce397269af28432c";
+        url  = "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz";
+        sha512 = "JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==";
       };
     }
     {
-      name = "interpret___interpret_1.4.0.tgz";
+      name = "is_arrayish___is_arrayish_0.2.1.tgz";
       path = fetchurl {
-        name = "interpret___interpret_1.4.0.tgz";
-        url = "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz";
-        sha1 = "665ab8bc4da27a774a40584e812e3e0fa45b1a1e";
-      };
-    }
-    {
-      name = "is_absolute___is_absolute_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_absolute___is_absolute_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz";
-        sha1 = "395e1ae84b11f26ad1795e73c17378e48a301576";
-      };
-    }
-    {
-      name = "is_accessor_descriptor___is_accessor_descriptor_0.1.6.tgz";
-      path = fetchurl {
-        name = "is_accessor_descriptor___is_accessor_descriptor_0.1.6.tgz";
-        url = "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz";
-        sha1 = "a9e12cb3ae8d876727eeef3843f8a0897b5c98d6";
-      };
-    }
-    {
-      name = "is_accessor_descriptor___is_accessor_descriptor_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_accessor_descriptor___is_accessor_descriptor_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz";
-        sha1 = "169c2f6d3df1f992618072365c9b0ea1f6878656";
-      };
-    }
-    {
-      name = "is_binary_path___is_binary_path_1.0.1.tgz";
-      path = fetchurl {
-        name = "is_binary_path___is_binary_path_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz";
-        sha1 = "75f16642b480f187a711c814161fd3a4a7655898";
-      };
-    }
-    {
-      name = "is_buffer___is_buffer_1.1.6.tgz";
-      path = fetchurl {
-        name = "is_buffer___is_buffer_1.1.6.tgz";
-        url = "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz";
-        sha1 = "efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be";
+        name = "is_arrayish___is_arrayish_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz";
+        sha1 = "d8mYQFJ6qOyxqLppe4BkWnqSap0=";
       };
     }
     {
       name = "is_core_module___is_core_module_2.8.0.tgz";
       path = fetchurl {
         name = "is_core_module___is_core_module_2.8.0.tgz";
-        url = "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.0.tgz";
-        sha1 = "0321336c3d0925e497fd97f5d95cb114a5ccd548";
-      };
-    }
-    {
-      name = "is_data_descriptor___is_data_descriptor_0.1.4.tgz";
-      path = fetchurl {
-        name = "is_data_descriptor___is_data_descriptor_0.1.4.tgz";
-        url = "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz";
-        sha1 = "0b5ee648388e2c860282e793f1856fec3f301b56";
-      };
-    }
-    {
-      name = "is_data_descriptor___is_data_descriptor_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_data_descriptor___is_data_descriptor_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz";
-        sha1 = "d84876321d0e7add03990406abbbbd36ba9268c7";
-      };
-    }
-    {
-      name = "is_descriptor___is_descriptor_0.1.6.tgz";
-      path = fetchurl {
-        name = "is_descriptor___is_descriptor_0.1.6.tgz";
-        url = "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz";
-        sha1 = "366d8240dde487ca51823b1ab9f07a10a78251ca";
-      };
-    }
-    {
-      name = "is_descriptor___is_descriptor_1.0.2.tgz";
-      path = fetchurl {
-        name = "is_descriptor___is_descriptor_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz";
-        sha1 = "3b159746a66604b04f8c81524ba365c5f14d86ec";
-      };
-    }
-    {
-      name = "is_dotfile___is_dotfile_1.0.3.tgz";
-      path = fetchurl {
-        name = "is_dotfile___is_dotfile_1.0.3.tgz";
-        url = "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz";
-        sha1 = "a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1";
-      };
-    }
-    {
-      name = "is_equal_shallow___is_equal_shallow_0.1.3.tgz";
-      path = fetchurl {
-        name = "is_equal_shallow___is_equal_shallow_0.1.3.tgz";
-        url = "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz";
-        sha1 = "2238098fc221de0bcfa5d9eac4c45d638aa1c534";
-      };
-    }
-    {
-      name = "is_extendable___is_extendable_0.1.1.tgz";
-      path = fetchurl {
-        name = "is_extendable___is_extendable_0.1.1.tgz";
-        url = "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz";
-        sha1 = "62b110e289a471418e3ec36a617d472e301dfc89";
-      };
-    }
-    {
-      name = "is_extendable___is_extendable_1.0.1.tgz";
-      path = fetchurl {
-        name = "is_extendable___is_extendable_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz";
-        sha1 = "a7470f9e426733d81bd81e1155264e3a3507cab4";
-      };
-    }
-    {
-      name = "is_extglob___is_extglob_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_extglob___is_extglob_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz";
-        sha1 = "ac468177c4943405a092fc8f29760c6ffc6206c0";
+        url  = "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.0.tgz";
+        sha512 = "vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==";
       };
     }
     {
       name = "is_extglob___is_extglob_2.1.1.tgz";
       path = fetchurl {
         name = "is_extglob___is_extglob_2.1.1.tgz";
-        url = "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz";
-        sha1 = "a88c02535791f02ed37c76a1b9ea9773c833f8c2";
-      };
-    }
-    {
-      name = "is_glob___is_glob_2.0.1.tgz";
-      path = fetchurl {
-        name = "is_glob___is_glob_2.0.1.tgz";
-        url = "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz";
-        sha1 = "d096f926a3ded5600f3fdfd91198cb0888c2d863";
-      };
-    }
-    {
-      name = "is_glob___is_glob_3.1.0.tgz";
-      path = fetchurl {
-        name = "is_glob___is_glob_3.1.0.tgz";
-        url = "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz";
-        sha1 = "7ba5ae24217804ac70707b96922567486cc3e84a";
-      };
-    }
-    {
-      name = "is_number___is_number_2.1.0.tgz";
-      path = fetchurl {
-        name = "is_number___is_number_2.1.0.tgz";
-        url = "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz";
-        sha1 = "01fcbbb393463a548f2f466cce16dece49db908f";
-      };
-    }
-    {
-      name = "is_number___is_number_3.0.0.tgz";
-      path = fetchurl {
-        name = "is_number___is_number_3.0.0.tgz";
-        url = "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz";
-        sha1 = "24fd6201a4782cf50561c810276afc7d12d71195";
+        url  = "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz";
+        sha1 = "qIwCU1eR8C7TfHahueqXc8gz+MI=";
       };
     }
     {
-      name = "is_number___is_number_4.0.0.tgz";
+      name = "is_fullwidth_code_point___is_fullwidth_code_point_3.0.0.tgz";
       path = fetchurl {
-        name = "is_number___is_number_4.0.0.tgz";
-        url = "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz";
-        sha1 = "0026e37f5454d73e356dfe6564699867c6a7f0ff";
+        name = "is_fullwidth_code_point___is_fullwidth_code_point_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz";
+        sha512 = "zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==";
       };
     }
     {
-      name = "is_plain_object___is_plain_object_2.0.4.tgz";
+      name = "is_glob___is_glob_4.0.3.tgz";
       path = fetchurl {
-        name = "is_plain_object___is_plain_object_2.0.4.tgz";
-        url = "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz";
-        sha1 = "2c163b3fafb1b606d9d17928f05c2a1c38e07677";
+        name = "is_glob___is_glob_4.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz";
+        sha512 = "xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==";
       };
     }
     {
-      name = "is_posix_bracket___is_posix_bracket_0.1.1.tgz";
+      name = "is_number___is_number_7.0.0.tgz";
       path = fetchurl {
-        name = "is_posix_bracket___is_posix_bracket_0.1.1.tgz";
-        url = "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz";
-        sha1 = "3334dc79774368e92f016e6fbc0a88f5cd6e6bc4";
+        name = "is_number___is_number_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz";
+        sha512 = "41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==";
       };
     }
     {
-      name = "is_primitive___is_primitive_2.0.0.tgz";
+      name = "is_plain_obj___is_plain_obj_1.1.0.tgz";
       path = fetchurl {
-        name = "is_primitive___is_primitive_2.0.0.tgz";
-        url = "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz";
-        sha1 = "207bab91638499c07b2adf240a41a87210034575";
+        name = "is_plain_obj___is_plain_obj_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz";
+        sha1 = "caUMhCnfync8kqOQpKA7OfzVHT4=";
       };
     }
     {
-      name = "is_relative___is_relative_1.0.0.tgz";
+      name = "is_plain_object___is_plain_object_5.0.0.tgz";
       path = fetchurl {
-        name = "is_relative___is_relative_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz";
-        sha1 = "a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d";
+        name = "is_plain_object___is_plain_object_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz";
+        sha512 = "VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==";
       };
     }
     {
-      name = "is_unc_path___is_unc_path_1.0.0.tgz";
+      name = "is_regexp___is_regexp_2.1.0.tgz";
       path = fetchurl {
-        name = "is_unc_path___is_unc_path_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-1.0.0.tgz";
-        sha1 = "d731e8898ed090a12c352ad2eaed5095ad322c9d";
+        name = "is_regexp___is_regexp_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-regexp/-/is-regexp-2.1.0.tgz";
+        sha512 = "OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA==";
       };
     }
     {
-      name = "is_utf8___is_utf8_0.2.1.tgz";
+      name = "is_typedarray___is_typedarray_1.0.0.tgz";
       path = fetchurl {
-        name = "is_utf8___is_utf8_0.2.1.tgz";
-        url = "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz";
-        sha1 = "4b0da1442104d1b336340e80797e865cf39f7d72";
-      };
-    }
-    {
-      name = "is_windows___is_windows_1.0.2.tgz";
-      path = fetchurl {
-        name = "is_windows___is_windows_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz";
-        sha1 = "d1850eb9791ecd18e6182ce12a30f396634bb19d";
-      };
-    }
-    {
-      name = "isarray___isarray_0.0.1.tgz";
-      path = fetchurl {
-        name = "isarray___isarray_0.0.1.tgz";
-        url = "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz";
-        sha1 = "8a18acfca9a8f4177e09abfc6038939b05d1eedf";
-      };
-    }
-    {
-      name = "isarray___isarray_1.0.0.tgz";
-      path = fetchurl {
-        name = "isarray___isarray_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz";
-        sha1 = "bb935d48582cba168c06834957a54a3e07124f11";
+        name = "is_typedarray___is_typedarray_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz";
+        sha1 = "5HnICFjfDBsR3dppQPlgEfzaSpo=";
       };
     }
     {
       name = "isexe___isexe_2.0.0.tgz";
       path = fetchurl {
         name = "isexe___isexe_2.0.0.tgz";
-        url = "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz";
-        sha1 = "e8fbf374dc556ff8947a10dcb0572d633f2cfa10";
-      };
-    }
-    {
-      name = "isobject___isobject_2.1.0.tgz";
-      path = fetchurl {
-        name = "isobject___isobject_2.1.0.tgz";
-        url = "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz";
-        sha1 = "f065561096a3f1da2ef46272f815c840d87e0c89";
-      };
-    }
-    {
-      name = "isobject___isobject_3.0.1.tgz";
-      path = fetchurl {
-        name = "isobject___isobject_3.0.1.tgz";
-        url = "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz";
-        sha1 = "4e431e92b11a9731636aa1f9c8d1ccbcfdab78df";
-      };
-    }
-    {
-      name = "js_yaml___js_yaml_3.7.0.tgz";
-      path = fetchurl {
-        name = "js_yaml___js_yaml_3.7.0.tgz";
-        url = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz";
-        sha1 = "5c967ddd837a9bfdca5f2de84253abe8a1c03b80";
-      };
-    }
-    {
-      name = "kind_of___kind_of_1.1.0.tgz";
-      path = fetchurl {
-        name = "kind_of___kind_of_1.1.0.tgz";
-        url = "https://registry.yarnpkg.com/kind-of/-/kind-of-1.1.0.tgz";
-        sha1 = "140a3d2d41a36d2efcfa9377b62c24f8495a5c44";
+        url  = "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz";
+        sha1 = "6PvzdNxVb/iUehDcsFctYz8s+hA=";
       };
     }
     {
-      name = "kind_of___kind_of_3.2.2.tgz";
+      name = "js_tokens___js_tokens_4.0.0.tgz";
       path = fetchurl {
-        name = "kind_of___kind_of_3.2.2.tgz";
-        url = "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz";
-        sha1 = "31ea21a734bab9bbb0f32466d893aea51e4a3c64";
+        name = "js_tokens___js_tokens_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz";
+        sha512 = "RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==";
       };
     }
     {
-      name = "kind_of___kind_of_4.0.0.tgz";
+      name = "json_parse_even_better_errors___json_parse_even_better_errors_2.3.1.tgz";
       path = fetchurl {
-        name = "kind_of___kind_of_4.0.0.tgz";
-        url = "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz";
-        sha1 = "20813df3d712928b207378691a45066fae72dd57";
+        name = "json_parse_even_better_errors___json_parse_even_better_errors_2.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz";
+        sha512 = "xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==";
       };
     }
     {
-      name = "kind_of___kind_of_5.1.0.tgz";
+      name = "json_schema_traverse___json_schema_traverse_1.0.0.tgz";
       path = fetchurl {
-        name = "kind_of___kind_of_5.1.0.tgz";
-        url = "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz";
-        sha1 = "729c91e2d857b7a419a1f9aa65685c4c33f5845d";
+        name = "json_schema_traverse___json_schema_traverse_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz";
+        sha512 = "NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==";
       };
     }
     {
       name = "kind_of___kind_of_6.0.3.tgz";
       path = fetchurl {
         name = "kind_of___kind_of_6.0.3.tgz";
-        url = "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz";
-        sha1 = "07c05034a6c349fa06e24fa35aa76db4580ce4dd";
-      };
-    }
-    {
-      name = "liftoff___liftoff_2.5.0.tgz";
-      path = fetchurl {
-        name = "liftoff___liftoff_2.5.0.tgz";
-        url = "https://registry.yarnpkg.com/liftoff/-/liftoff-2.5.0.tgz";
-        sha1 = "2009291bb31cea861bbf10a7c15a28caf75c31ec";
-      };
-    }
-    {
-      name = "lodash._basecopy___lodash._basecopy_3.0.1.tgz";
-      path = fetchurl {
-        name = "lodash._basecopy___lodash._basecopy_3.0.1.tgz";
-        url = "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz";
-        sha1 = "8da0e6a876cf344c0ad8a54882111dd3c5c7ca36";
-      };
-    }
-    {
-      name = "lodash._basetostring___lodash._basetostring_3.0.1.tgz";
-      path = fetchurl {
-        name = "lodash._basetostring___lodash._basetostring_3.0.1.tgz";
-        url = "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz";
-        sha1 = "d1861d877f824a52f669832dcaf3ee15566a07d5";
-      };
-    }
-    {
-      name = "lodash._basevalues___lodash._basevalues_3.0.0.tgz";
-      path = fetchurl {
-        name = "lodash._basevalues___lodash._basevalues_3.0.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz";
-        sha1 = "5b775762802bde3d3297503e26300820fdf661b7";
-      };
-    }
-    {
-      name = "lodash._getnative___lodash._getnative_3.9.1.tgz";
-      path = fetchurl {
-        name = "lodash._getnative___lodash._getnative_3.9.1.tgz";
-        url = "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz";
-        sha1 = "570bc7dede46d61cdcde687d65d3eecbaa3aaff5";
-      };
-    }
-    {
-      name = "lodash._isiterateecall___lodash._isiterateecall_3.0.9.tgz";
-      path = fetchurl {
-        name = "lodash._isiterateecall___lodash._isiterateecall_3.0.9.tgz";
-        url = "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz";
-        sha1 = "5203ad7ba425fae842460e696db9cf3e6aac057c";
-      };
-    }
-    {
-      name = "lodash._reescape___lodash._reescape_3.0.0.tgz";
-      path = fetchurl {
-        name = "lodash._reescape___lodash._reescape_3.0.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash._reescape/-/lodash._reescape-3.0.0.tgz";
-        sha1 = "2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a";
-      };
-    }
-    {
-      name = "lodash._reevaluate___lodash._reevaluate_3.0.0.tgz";
-      path = fetchurl {
-        name = "lodash._reevaluate___lodash._reevaluate_3.0.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz";
-        sha1 = "58bc74c40664953ae0b124d806996daca431e2ed";
-      };
-    }
-    {
-      name = "lodash._reinterpolate___lodash._reinterpolate_3.0.0.tgz";
-      path = fetchurl {
-        name = "lodash._reinterpolate___lodash._reinterpolate_3.0.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz";
-        sha1 = "0ccf2d89166af03b3663c796538b75ac6e114d9d";
-      };
-    }
-    {
-      name = "lodash._root___lodash._root_3.0.1.tgz";
-      path = fetchurl {
-        name = "lodash._root___lodash._root_3.0.1.tgz";
-        url = "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz";
-        sha1 = "fba1c4524c19ee9a5f8136b4609f017cf4ded692";
-      };
-    }
-    {
-      name = "lodash.assignin___lodash.assignin_4.2.0.tgz";
-      path = fetchurl {
-        name = "lodash.assignin___lodash.assignin_4.2.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash.assignin/-/lodash.assignin-4.2.0.tgz";
-        sha1 = "ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2";
-      };
-    }
-    {
-      name = "lodash.bind___lodash.bind_4.2.1.tgz";
-      path = fetchurl {
-        name = "lodash.bind___lodash.bind_4.2.1.tgz";
-        url = "https://registry.yarnpkg.com/lodash.bind/-/lodash.bind-4.2.1.tgz";
-        sha1 = "7ae3017e939622ac31b7d7d7dcb1b34db1690d35";
-      };
-    }
-    {
-      name = "lodash.defaults___lodash.defaults_4.2.0.tgz";
-      path = fetchurl {
-        name = "lodash.defaults___lodash.defaults_4.2.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz";
-        sha1 = "d09178716ffea4dde9e5fb7b37f6f0802274580c";
-      };
-    }
-    {
-      name = "lodash.escape___lodash.escape_3.2.0.tgz";
-      path = fetchurl {
-        name = "lodash.escape___lodash.escape_3.2.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz";
-        sha1 = "995ee0dc18c1b48cc92effae71a10aab5b487698";
-      };
-    }
-    {
-      name = "lodash.filter___lodash.filter_4.6.0.tgz";
-      path = fetchurl {
-        name = "lodash.filter___lodash.filter_4.6.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash.filter/-/lodash.filter-4.6.0.tgz";
-        sha1 = "668b1d4981603ae1cc5a6fa760143e480b4c4ace";
-      };
-    }
-    {
-      name = "lodash.flatten___lodash.flatten_4.4.0.tgz";
-      path = fetchurl {
-        name = "lodash.flatten___lodash.flatten_4.4.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz";
-        sha1 = "f31c22225a9632d2bbf8e4addbef240aa765a61f";
-      };
-    }
-    {
-      name = "lodash.foreach___lodash.foreach_4.5.0.tgz";
-      path = fetchurl {
-        name = "lodash.foreach___lodash.foreach_4.5.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz";
-        sha1 = "1a6a35eace401280c7f06dddec35165ab27e3e53";
-      };
-    }
-    {
-      name = "lodash.isarguments___lodash.isarguments_3.1.0.tgz";
-      path = fetchurl {
-        name = "lodash.isarguments___lodash.isarguments_3.1.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz";
-        sha1 = "2f573d85c6a24289ff00663b491c1d338ff3458a";
-      };
-    }
-    {
-      name = "lodash.isarray___lodash.isarray_3.0.4.tgz";
-      path = fetchurl {
-        name = "lodash.isarray___lodash.isarray_3.0.4.tgz";
-        url = "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz";
-        sha1 = "79e4eb88c36a8122af86f844aa9bcd851b5fbb55";
-      };
-    }
-    {
-      name = "lodash.keys___lodash.keys_3.1.2.tgz";
-      path = fetchurl {
-        name = "lodash.keys___lodash.keys_3.1.2.tgz";
-        url = "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz";
-        sha1 = "4dbc0472b156be50a0b286855d1bd0b0c656098a";
+        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz";
+        sha512 = "dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==";
       };
     }
     {
-      name = "lodash.map___lodash.map_4.6.0.tgz";
+      name = "known_css_properties___known_css_properties_0.23.0.tgz";
       path = fetchurl {
-        name = "lodash.map___lodash.map_4.6.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz";
-        sha1 = "771ec7839e3473d9c4cde28b19394c3562f4f6d3";
+        name = "known_css_properties___known_css_properties_0.23.0.tgz";
+        url  = "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.23.0.tgz";
+        sha512 = "h9ivI88e1lFNmTT4HovBN33Ysn0OIJG7IPG2mkpx2uniQXFWqo35QdiX7w0TovlUFXfW8aPFblP5/q0jlOr2sA==";
       };
     }
     {
-      name = "lodash.merge___lodash.merge_4.6.2.tgz";
+      name = "lines_and_columns___lines_and_columns_1.2.4.tgz";
       path = fetchurl {
-        name = "lodash.merge___lodash.merge_4.6.2.tgz";
-        url = "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz";
-        sha1 = "558aa53b43b661e1925a0afdfa36a9a1085fe57a";
+        name = "lines_and_columns___lines_and_columns_1.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz";
+        sha512 = "7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==";
       };
     }
     {
-      name = "lodash.pick___lodash.pick_4.4.0.tgz";
+      name = "locate_path___locate_path_5.0.0.tgz";
       path = fetchurl {
-        name = "lodash.pick___lodash.pick_4.4.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz";
-        sha1 = "52f05610fff9ded422611441ed1fc123a03001b3";
+        name = "locate_path___locate_path_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz";
+        sha512 = "t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==";
       };
     }
     {
-      name = "lodash.reduce___lodash.reduce_4.6.0.tgz";
+      name = "lodash.truncate___lodash.truncate_4.4.2.tgz";
       path = fetchurl {
-        name = "lodash.reduce___lodash.reduce_4.6.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash.reduce/-/lodash.reduce-4.6.0.tgz";
-        sha1 = "f1ab6b839299ad48f784abbf476596f03b914d3b";
+        name = "lodash.truncate___lodash.truncate_4.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz";
+        sha1 = "WjUNoLERO4N+z//VgSy+WNbq4ZM=";
       };
     }
     {
-      name = "lodash.reject___lodash.reject_4.6.0.tgz";
+      name = "lodash___lodash_4.17.21.tgz";
       path = fetchurl {
-        name = "lodash.reject___lodash.reject_4.6.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash.reject/-/lodash.reject-4.6.0.tgz";
-        sha1 = "80d6492dc1470864bbf583533b651f42a9f52415";
+        name = "lodash___lodash_4.17.21.tgz";
+        url  = "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz";
+        sha512 = "v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==";
       };
     }
     {
-      name = "lodash.restparam___lodash.restparam_3.6.1.tgz";
+      name = "lru_cache___lru_cache_6.0.0.tgz";
       path = fetchurl {
-        name = "lodash.restparam___lodash.restparam_3.6.1.tgz";
-        url = "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz";
-        sha1 = "936a4e309ef330a7645ed4145986c85ae5b20805";
+        name = "lru_cache___lru_cache_6.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz";
+        sha512 = "Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==";
       };
     }
     {
-      name = "lodash.some___lodash.some_4.6.0.tgz";
+      name = "map_obj___map_obj_1.0.1.tgz";
       path = fetchurl {
-        name = "lodash.some___lodash.some_4.6.0.tgz";
-        url = "https://registry.yarnpkg.com/lodash.some/-/lodash.some-4.6.0.tgz";
-        sha1 = "1bb9f314ef6b8baded13b549169b2a945eb68e4d";
+        name = "map_obj___map_obj_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz";
+        sha1 = "2TPOuSBdgr3PSIb2dCvcK03qFG0=";
       };
     }
     {
-      name = "lodash.template___lodash.template_3.6.2.tgz";
+      name = "map_obj___map_obj_4.3.0.tgz";
       path = fetchurl {
-        name = "lodash.template___lodash.template_3.6.2.tgz";
-        url = "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz";
-        sha1 = "f8cdecc6169a255be9098ae8b0c53d378931d14f";
+        name = "map_obj___map_obj_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz";
+        sha512 = "hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==";
       };
     }
     {
-      name = "lodash.templatesettings___lodash.templatesettings_3.1.1.tgz";
+      name = "mathml_tag_names___mathml_tag_names_2.1.3.tgz";
       path = fetchurl {
-        name = "lodash.templatesettings___lodash.templatesettings_3.1.1.tgz";
-        url = "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz";
-        sha1 = "fb307844753b66b9f1afa54e262c745307dba8e5";
+        name = "mathml_tag_names___mathml_tag_names_2.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz";
+        sha512 = "APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==";
       };
     }
     {
-      name = "lodash___lodash_1.0.2.tgz";
+      name = "meow___meow_9.0.0.tgz";
       path = fetchurl {
-        name = "lodash___lodash_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/lodash/-/lodash-1.0.2.tgz";
-        sha1 = "8f57560c83b59fc270bd3d561b690043430e2551";
+        name = "meow___meow_9.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/meow/-/meow-9.0.0.tgz";
+        sha512 = "+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==";
       };
     }
     {
-      name = "lru_cache___lru_cache_2.7.3.tgz";
+      name = "merge2___merge2_1.4.1.tgz";
       path = fetchurl {
-        name = "lru_cache___lru_cache_2.7.3.tgz";
-        url = "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.7.3.tgz";
-        sha1 = "6d4524e8b955f95d4f5b58851ce21dd72fb4e952";
+        name = "merge2___merge2_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz";
+        sha512 = "8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==";
       };
     }
     {
-      name = "make_iterator___make_iterator_1.0.1.tgz";
+      name = "micromatch___micromatch_4.0.4.tgz";
       path = fetchurl {
-        name = "make_iterator___make_iterator_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/make-iterator/-/make-iterator-1.0.1.tgz";
-        sha1 = "29b33f312aa8f547c4a5e490f56afcec99133ad6";
+        name = "micromatch___micromatch_4.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz";
+        sha512 = "pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==";
       };
     }
     {
-      name = "map_cache___map_cache_0.2.2.tgz";
+      name = "min_indent___min_indent_1.0.1.tgz";
       path = fetchurl {
-        name = "map_cache___map_cache_0.2.2.tgz";
-        url = "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz";
-        sha1 = "c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf";
+        name = "min_indent___min_indent_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz";
+        sha512 = "I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==";
       };
     }
     {
-      name = "map_visit___map_visit_1.0.0.tgz";
+      name = "minimatch___minimatch_3.0.4.tgz";
       path = fetchurl {
-        name = "map_visit___map_visit_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz";
-        sha1 = "ecdca8f13144e660f1b5bd41f12f3479d98dfb8f";
+        name = "minimatch___minimatch_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz";
+        sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
       };
     }
     {
-      name = "math_random___math_random_1.0.4.tgz";
+      name = "minimist_options___minimist_options_4.1.0.tgz";
       path = fetchurl {
-        name = "math_random___math_random_1.0.4.tgz";
-        url = "https://registry.yarnpkg.com/math-random/-/math-random-1.0.4.tgz";
-        sha1 = "5dd6943c938548267016d4e34f057583080c514c";
+        name = "minimist_options___minimist_options_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz";
+        sha512 = "Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==";
       };
     }
     {
-      name = "micromatch___micromatch_2.3.11.tgz";
+      name = "ms___ms_2.1.2.tgz";
       path = fetchurl {
-        name = "micromatch___micromatch_2.3.11.tgz";
-        url = "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz";
-        sha1 = "86677c97d1720b363431d04d0d15293bd38c1565";
+        name = "ms___ms_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz";
+        sha512 = "sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==";
       };
     }
     {
-      name = "micromatch___micromatch_3.1.10.tgz";
+      name = "nanoid___nanoid_3.1.30.tgz";
       path = fetchurl {
-        name = "micromatch___micromatch_3.1.10.tgz";
-        url = "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz";
-        sha1 = "70859bc95c9840952f359a068a3fc49f9ecfac23";
+        name = "nanoid___nanoid_3.1.30.tgz";
+        url  = "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.30.tgz";
+        sha512 = "zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==";
       };
     }
     {
-      name = "minimatch___minimatch_2.0.10.tgz";
+      name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
       path = fetchurl {
-        name = "minimatch___minimatch_2.0.10.tgz";
-        url = "https://registry.yarnpkg.com/minimatch/-/minimatch-2.0.10.tgz";
-        sha1 = "8d087c39c6b38c001b97fca7ce6d0e1e80afbac7";
+        name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz";
+        sha512 = "/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==";
       };
     }
     {
-      name = "minimatch___minimatch_0.2.14.tgz";
+      name = "normalize_package_data___normalize_package_data_3.0.3.tgz";
       path = fetchurl {
-        name = "minimatch___minimatch_0.2.14.tgz";
-        url = "https://registry.yarnpkg.com/minimatch/-/minimatch-0.2.14.tgz";
-        sha1 = "c74e780574f63c6f9a090e90efbe6ef53a6a756a";
+        name = "normalize_package_data___normalize_package_data_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz";
+        sha512 = "p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==";
       };
     }
     {
-      name = "minimist___minimist_1.2.5.tgz";
+      name = "normalize_path___normalize_path_3.0.0.tgz";
       path = fetchurl {
-        name = "minimist___minimist_1.2.5.tgz";
-        url = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz";
-        sha1 = "67d66014b66a6a8aaa0c083c5fd58df4e4e97602";
+        name = "normalize_path___normalize_path_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz";
+        sha512 = "6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==";
       };
     }
     {
-      name = "mixin_deep___mixin_deep_1.3.2.tgz";
+      name = "normalize_selector___normalize_selector_0.2.0.tgz";
       path = fetchurl {
-        name = "mixin_deep___mixin_deep_1.3.2.tgz";
-        url = "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz";
-        sha1 = "1120b43dc359a785dce65b55b82e257ccf479566";
-      };
-    }
-    {
-      name = "mkdirp___mkdirp_0.5.5.tgz";
-      path = fetchurl {
-        name = "mkdirp___mkdirp_0.5.5.tgz";
-        url = "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz";
-        sha1 = "d91cefd62d1436ca0f41620e251288d420099def";
-      };
-    }
-    {
-      name = "ms___ms_2.0.0.tgz";
-      path = fetchurl {
-        name = "ms___ms_2.0.0.tgz";
-        url = "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz";
-        sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8";
-      };
-    }
-    {
-      name = "multipipe___multipipe_0.1.2.tgz";
-      path = fetchurl {
-        name = "multipipe___multipipe_0.1.2.tgz";
-        url = "https://registry.yarnpkg.com/multipipe/-/multipipe-0.1.2.tgz";
-        sha1 = "2a8f2ddf70eed564dff2d57f1e1a137d9f05078b";
-      };
-    }
-    {
-      name = "nan___nan_2.15.0.tgz";
-      path = fetchurl {
-        name = "nan___nan_2.15.0.tgz";
-        url = "https://registry.yarnpkg.com/nan/-/nan-2.15.0.tgz";
-        sha1 = "3f34a473ff18e15c1b5626b62903b5ad6e665fee";
-      };
-    }
-    {
-      name = "nanomatch___nanomatch_1.2.13.tgz";
-      path = fetchurl {
-        name = "nanomatch___nanomatch_1.2.13.tgz";
-        url = "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz";
-        sha1 = "b87a8aa4fc0de8fe6be88895b38983ff265bd119";
-      };
-    }
-    {
-      name = "natives___natives_1.1.6.tgz";
-      path = fetchurl {
-        name = "natives___natives_1.1.6.tgz";
-        url = "https://registry.yarnpkg.com/natives/-/natives-1.1.6.tgz";
-        sha1 = "a603b4a498ab77173612b9ea1acdec4d980f00bb";
-      };
-    }
-    {
-      name = "normalize_path___normalize_path_2.1.1.tgz";
-      path = fetchurl {
-        name = "normalize_path___normalize_path_2.1.1.tgz";
-        url = "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz";
-        sha1 = "1ab28b556e198363a8c1a6f7e6fa20137fe6aed9";
-      };
-    }
-    {
-      name = "nth_check___nth_check_1.0.2.tgz";
-      path = fetchurl {
-        name = "nth_check___nth_check_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz";
-        sha1 = "b2bd295c37e3dd58a3bf0700376663ba4d9cf05c";
-      };
-    }
-    {
-      name = "object_assign___object_assign_3.0.0.tgz";
-      path = fetchurl {
-        name = "object_assign___object_assign_3.0.0.tgz";
-        url = "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz";
-        sha1 = "9bedd5ca0897949bca47e7ff408062d549f587f2";
-      };
-    }
-    {
-      name = "object_assign___object_assign_4.1.1.tgz";
-      path = fetchurl {
-        name = "object_assign___object_assign_4.1.1.tgz";
-        url = "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz";
-        sha1 = "2109adc7965887cfc05cbbd442cac8bfbb360863";
-      };
-    }
-    {
-      name = "object_copy___object_copy_0.1.0.tgz";
-      path = fetchurl {
-        name = "object_copy___object_copy_0.1.0.tgz";
-        url = "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz";
-        sha1 = "7e7d858b781bd7c991a41ba975ed3812754e998c";
-      };
-    }
-    {
-      name = "object_visit___object_visit_1.0.1.tgz";
-      path = fetchurl {
-        name = "object_visit___object_visit_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz";
-        sha1 = "f79c4493af0c5377b59fe39d395e41042dd045bb";
-      };
-    }
-    {
-      name = "object.defaults___object.defaults_1.1.0.tgz";
-      path = fetchurl {
-        name = "object.defaults___object.defaults_1.1.0.tgz";
-        url = "https://registry.yarnpkg.com/object.defaults/-/object.defaults-1.1.0.tgz";
-        sha1 = "3a7f868334b407dea06da16d88d5cd29e435fecf";
-      };
-    }
-    {
-      name = "object.map___object.map_1.0.1.tgz";
-      path = fetchurl {
-        name = "object.map___object.map_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/object.map/-/object.map-1.0.1.tgz";
-        sha1 = "cf83e59dc8fcc0ad5f4250e1f78b3b81bd801d37";
-      };
-    }
-    {
-      name = "object.omit___object.omit_2.0.1.tgz";
-      path = fetchurl {
-        name = "object.omit___object.omit_2.0.1.tgz";
-        url = "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz";
-        sha1 = "1a9c744829f39dbb858c76ca3579ae2a54ebd1fa";
-      };
-    }
-    {
-      name = "object.pick___object.pick_1.3.0.tgz";
-      path = fetchurl {
-        name = "object.pick___object.pick_1.3.0.tgz";
-        url = "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz";
-        sha1 = "87a10ac4c1694bd2e1cbf53591a66141fb5dd747";
+        name = "normalize_selector___normalize_selector_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-selector/-/normalize-selector-0.2.0.tgz";
+        sha1 = "0LFF62kRicY6eNIB3E/bEpPvDAM=";
       };
     }
     {
       name = "once___once_1.4.0.tgz";
       path = fetchurl {
         name = "once___once_1.4.0.tgz";
-        url = "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz";
-        sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1";
-      };
-    }
-    {
-      name = "once___once_1.3.3.tgz";
-      path = fetchurl {
-        name = "once___once_1.3.3.tgz";
-        url = "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz";
-        sha1 = "b2e261557ce4c314ec8304f3fa82663e4297ca20";
-      };
-    }
-    {
-      name = "orchestrator___orchestrator_0.3.8.tgz";
-      path = fetchurl {
-        name = "orchestrator___orchestrator_0.3.8.tgz";
-        url = "https://registry.yarnpkg.com/orchestrator/-/orchestrator-0.3.8.tgz";
-        sha1 = "14e7e9e2764f7315fbac184e506c7aa6df94ad7e";
+        url  = "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz";
+        sha1 = "WDsap3WWHUsROsF9nFC6753Xa9E=";
       };
     }
     {
-      name = "ordered_read_streams___ordered_read_streams_0.1.0.tgz";
+      name = "p_limit___p_limit_2.3.0.tgz";
       path = fetchurl {
-        name = "ordered_read_streams___ordered_read_streams_0.1.0.tgz";
-        url = "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz";
-        sha1 = "fd565a9af8eb4473ba69b6ed8a34352cb552f126";
+        name = "p_limit___p_limit_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz";
+        sha512 = "//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==";
       };
     }
     {
-      name = "os_homedir___os_homedir_1.0.2.tgz";
+      name = "p_locate___p_locate_4.1.0.tgz";
       path = fetchurl {
-        name = "os_homedir___os_homedir_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz";
-        sha1 = "ffbc4988336e0e833de0c168c7ef152121aa7fb3";
+        name = "p_locate___p_locate_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz";
+        sha512 = "R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==";
       };
     }
     {
-      name = "parse_filepath___parse_filepath_1.0.2.tgz";
+      name = "p_try___p_try_2.2.0.tgz";
       path = fetchurl {
-        name = "parse_filepath___parse_filepath_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz";
-        sha1 = "a632127f53aaf3d15876f5872f3ffac763d6c891";
+        name = "p_try___p_try_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz";
+        sha512 = "R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==";
       };
     }
     {
-      name = "parse_glob___parse_glob_3.0.4.tgz";
+      name = "parent_module___parent_module_1.0.1.tgz";
       path = fetchurl {
-        name = "parse_glob___parse_glob_3.0.4.tgz";
-        url = "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz";
-        sha1 = "b2c376cfb11f35513badd173ef0bb6e3a388391c";
+        name = "parent_module___parent_module_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz";
+        sha512 = "GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==";
       };
     }
     {
-      name = "parse_node_version___parse_node_version_1.0.1.tgz";
+      name = "parse_json___parse_json_5.2.0.tgz";
       path = fetchurl {
-        name = "parse_node_version___parse_node_version_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/parse-node-version/-/parse-node-version-1.0.1.tgz";
-        sha1 = "e2b5dbede00e7fa9bc363607f53327e8b073189b";
+        name = "parse_json___parse_json_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz";
+        sha512 = "ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==";
       };
     }
     {
-      name = "parse_passwd___parse_passwd_1.0.0.tgz";
+      name = "path_exists___path_exists_4.0.0.tgz";
       path = fetchurl {
-        name = "parse_passwd___parse_passwd_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz";
-        sha1 = "6d5b934a456993b23d37f40a382d6f1666a8e5c6";
-      };
-    }
-    {
-      name = "pascalcase___pascalcase_0.1.1.tgz";
-      path = fetchurl {
-        name = "pascalcase___pascalcase_0.1.1.tgz";
-        url = "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz";
-        sha1 = "b363e55e8006ca6fe21784d2db22bd15d7917f14";
-      };
-    }
-    {
-      name = "path_dirname___path_dirname_1.0.2.tgz";
-      path = fetchurl {
-        name = "path_dirname___path_dirname_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz";
-        sha1 = "cc33d24d525e099a5388c0336c6e32b9160609e0";
+        name = "path_exists___path_exists_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz";
+        sha512 = "ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==";
       };
     }
     {
       name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
       path = fetchurl {
         name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
-        sha1 = "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f";
+        url  = "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
+        sha1 = "F0uSaHNVNP+8es5r9TpanhtcX18=";
       };
     }
     {
       name = "path_parse___path_parse_1.0.7.tgz";
       path = fetchurl {
         name = "path_parse___path_parse_1.0.7.tgz";
-        url = "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz";
-        sha1 = "fbc114b60ca42b30d9daf5858e4bd68bbedb6735";
-      };
-    }
-    {
-      name = "path_root_regex___path_root_regex_0.1.2.tgz";
-      path = fetchurl {
-        name = "path_root_regex___path_root_regex_0.1.2.tgz";
-        url = "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz";
-        sha1 = "bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d";
-      };
-    }
-    {
-      name = "path_root___path_root_0.1.1.tgz";
-      path = fetchurl {
-        name = "path_root___path_root_0.1.1.tgz";
-        url = "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz";
-        sha1 = "9a4a6814cac1c0cd73360a95f32083c8ea4745b7";
-      };
-    }
-    {
-      name = "pify___pify_2.3.0.tgz";
-      path = fetchurl {
-        name = "pify___pify_2.3.0.tgz";
-        url = "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz";
-        sha1 = "ed141a6ac043a849ea588498e7dca8b15330e90c";
+        url  = "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz";
+        sha512 = "LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==";
       };
     }
     {
-      name = "pinkie_promise___pinkie_promise_2.0.1.tgz";
+      name = "path_type___path_type_4.0.0.tgz";
       path = fetchurl {
-        name = "pinkie_promise___pinkie_promise_2.0.1.tgz";
-        url = "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz";
-        sha1 = "2135d6dfa7a358c069ac9b178776288228450ffa";
+        name = "path_type___path_type_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz";
+        sha512 = "gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==";
       };
     }
     {
-      name = "pinkie___pinkie_2.0.4.tgz";
+      name = "picocolors___picocolors_1.0.0.tgz";
       path = fetchurl {
-        name = "pinkie___pinkie_2.0.4.tgz";
-        url = "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz";
-        sha1 = "72556b80cfa0d48a974e80e77248e80ed4f7f870";
+        name = "picocolors___picocolors_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz";
+        sha512 = "1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==";
       };
     }
     {
-      name = "plugin_error___plugin_error_0.1.2.tgz";
+      name = "picomatch___picomatch_2.3.0.tgz";
       path = fetchurl {
-        name = "plugin_error___plugin_error_0.1.2.tgz";
-        url = "https://registry.yarnpkg.com/plugin-error/-/plugin-error-0.1.2.tgz";
-        sha1 = "3b9bb3335ccf00f425e07437e19276967da47ace";
+        name = "picomatch___picomatch_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz";
+        sha512 = "lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==";
       };
     }
     {
-      name = "posix_character_classes___posix_character_classes_0.1.1.tgz";
+      name = "postcss_html___postcss_html_1.3.0.tgz";
       path = fetchurl {
-        name = "posix_character_classes___posix_character_classes_0.1.1.tgz";
-        url = "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz";
-        sha1 = "01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab";
+        name = "postcss_html___postcss_html_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-html/-/postcss-html-1.3.0.tgz";
+        sha512 = "ewbwd7OGW4dLsErtvZH9HpVMEcXnlhYSzKsr7MepGlOT8imHTIZ/+pdfEruLS+hTYapLTQAWDnoQcJpsYU4uRw==";
       };
     }
     {
-      name = "preserve___preserve_0.2.0.tgz";
+      name = "postcss_media_query_parser___postcss_media_query_parser_0.2.3.tgz";
       path = fetchurl {
-        name = "preserve___preserve_0.2.0.tgz";
-        url = "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz";
-        sha1 = "815ed1f6ebc65926f865b310c0713bcb3315ce4b";
+        name = "postcss_media_query_parser___postcss_media_query_parser_0.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz";
+        sha1 = "J7Ocb02U+Bsac7j3Y1HGCeXO8kQ=";
       };
     }
     {
-      name = "pretty_hrtime___pretty_hrtime_1.0.3.tgz";
+      name = "postcss_resolve_nested_selector___postcss_resolve_nested_selector_0.1.1.tgz";
       path = fetchurl {
-        name = "pretty_hrtime___pretty_hrtime_1.0.3.tgz";
-        url = "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz";
-        sha1 = "b7e3ea42435a4c9b2759d99e0f201eb195802ee1";
+        name = "postcss_resolve_nested_selector___postcss_resolve_nested_selector_0.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz";
+        sha1 = "Kcy8fDfe36wwTp//C/FZaz9qDk4=";
       };
     }
     {
-      name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
+      name = "postcss_safe_parser___postcss_safe_parser_6.0.0.tgz";
       path = fetchurl {
-        name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
-        url = "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
-        sha1 = "7820d9b16120cc55ca9ae7792680ae7dba6d7fe2";
+        name = "postcss_safe_parser___postcss_safe_parser_6.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz";
+        sha512 = "FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==";
       };
     }
     {
-      name = "q___q_1.5.1.tgz";
+      name = "postcss_scss___postcss_scss_4.0.2.tgz";
       path = fetchurl {
-        name = "q___q_1.5.1.tgz";
-        url = "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz";
-        sha1 = "7e32f75b41381291d04611f1bf14109ac00651d7";
+        name = "postcss_scss___postcss_scss_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-4.0.2.tgz";
+        sha512 = "xfdkU128CkKKKVAwkyt0M8OdnelJ3MRcIRAPPQkRpoPeuzWY3RIeg7piRCpZ79MK7Q16diLXMMAD9dN5mauPlQ==";
       };
     }
     {
-      name = "randomatic___randomatic_3.1.1.tgz";
+      name = "postcss_selector_parser___postcss_selector_parser_6.0.6.tgz";
       path = fetchurl {
-        name = "randomatic___randomatic_3.1.1.tgz";
-        url = "https://registry.yarnpkg.com/randomatic/-/randomatic-3.1.1.tgz";
-        sha1 = "b776efc59375984e36c537b2f51a1f0aff0da1ed";
+        name = "postcss_selector_parser___postcss_selector_parser_6.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz";
+        sha512 = "9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==";
       };
     }
     {
-      name = "readable_stream___readable_stream_1.0.34.tgz";
+      name = "postcss_value_parser___postcss_value_parser_4.2.0.tgz";
       path = fetchurl {
-        name = "readable_stream___readable_stream_1.0.34.tgz";
-        url = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz";
-        sha1 = "125820e34bc842d2f2aaafafe4c2916ee32c157c";
+        name = "postcss_value_parser___postcss_value_parser_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz";
+        sha512 = "1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==";
       };
     }
     {
-      name = "readable_stream___readable_stream_2.3.7.tgz";
+      name = "postcss___postcss_8.4.4.tgz";
       path = fetchurl {
-        name = "readable_stream___readable_stream_2.3.7.tgz";
-        url = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz";
-        sha1 = "1eca1cf711aef814c04f62252a36a62f6cb23b57";
+        name = "postcss___postcss_8.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/postcss/-/postcss-8.4.4.tgz";
+        sha512 = "joU6fBsN6EIer28Lj6GDFoC/5yOZzLCfn0zHAn/MYXI7aPt4m4hK5KC5ovEZXy+lnCjmYIbQWngvju2ddyEr8Q==";
       };
     }
     {
-      name = "readable_stream___readable_stream_3.6.0.tgz";
+      name = "prettier_linter_helpers___prettier_linter_helpers_1.0.0.tgz";
       path = fetchurl {
-        name = "readable_stream___readable_stream_3.6.0.tgz";
-        url = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz";
-        sha1 = "337bbda3adc0706bd3e024426a286d4b4b2c9198";
+        name = "prettier_linter_helpers___prettier_linter_helpers_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz";
+        sha512 = "GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==";
       };
     }
     {
-      name = "readable_stream___readable_stream_1.1.14.tgz";
+      name = "prettier___prettier_2.5.0.tgz";
       path = fetchurl {
-        name = "readable_stream___readable_stream_1.1.14.tgz";
-        url = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz";
-        sha1 = "7cf4c54ef648e3813084c636dd2079e166c081d9";
+        name = "prettier___prettier_2.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/prettier/-/prettier-2.5.0.tgz";
+        sha512 = "FM/zAKgWTxj40rH03VxzIPdXmj39SwSjwG0heUcNFwI+EMZJnY93yAiKXM3dObIKAM5TA88werc8T/EwhB45eg==";
       };
     }
     {
-      name = "readdirp___readdirp_2.2.1.tgz";
+      name = "punycode___punycode_2.1.1.tgz";
       path = fetchurl {
-        name = "readdirp___readdirp_2.2.1.tgz";
-        url = "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz";
-        sha1 = "0e87622a3325aa33e892285caf8b4e846529a525";
+        name = "punycode___punycode_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz";
+        sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
       };
     }
     {
-      name = "rechoir___rechoir_0.6.2.tgz";
+      name = "queue_microtask___queue_microtask_1.2.3.tgz";
       path = fetchurl {
-        name = "rechoir___rechoir_0.6.2.tgz";
-        url = "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz";
-        sha1 = "85204b54dba82d5742e28c96756ef43af50e3384";
+        name = "queue_microtask___queue_microtask_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz";
+        sha512 = "NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==";
       };
     }
     {
-      name = "regex_cache___regex_cache_0.4.4.tgz";
+      name = "quick_lru___quick_lru_4.0.1.tgz";
       path = fetchurl {
-        name = "regex_cache___regex_cache_0.4.4.tgz";
-        url = "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz";
-        sha1 = "75bdc58a2a1496cec48a12835bc54c8d562336dd";
+        name = "quick_lru___quick_lru_4.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz";
+        sha512 = "ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==";
       };
     }
     {
-      name = "regex_not___regex_not_1.0.2.tgz";
+      name = "read_pkg_up___read_pkg_up_7.0.1.tgz";
       path = fetchurl {
-        name = "regex_not___regex_not_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz";
-        sha1 = "1f4ece27e00b0b65e0247a6810e6a85d83a5752c";
+        name = "read_pkg_up___read_pkg_up_7.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz";
+        sha512 = "zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==";
       };
     }
     {
-      name = "remove_trailing_separator___remove_trailing_separator_1.1.0.tgz";
+      name = "read_pkg___read_pkg_5.2.0.tgz";
       path = fetchurl {
-        name = "remove_trailing_separator___remove_trailing_separator_1.1.0.tgz";
-        url = "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz";
-        sha1 = "c24bce2a283adad5bc3f58e0d48249b92379d8ef";
+        name = "read_pkg___read_pkg_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz";
+        sha512 = "Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==";
       };
     }
     {
-      name = "repeat_element___repeat_element_1.1.4.tgz";
+      name = "redent___redent_3.0.0.tgz";
       path = fetchurl {
-        name = "repeat_element___repeat_element_1.1.4.tgz";
-        url = "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz";
-        sha1 = "be681520847ab58c7568ac75fbfad28ed42d39e9";
+        name = "redent___redent_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz";
+        sha512 = "6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==";
       };
     }
     {
-      name = "repeat_string___repeat_string_1.6.1.tgz";
+      name = "require_from_string___require_from_string_2.0.2.tgz";
       path = fetchurl {
-        name = "repeat_string___repeat_string_1.6.1.tgz";
-        url = "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz";
-        sha1 = "8dcae470e1c88abc2d600fff4a776286da75e637";
+        name = "require_from_string___require_from_string_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz";
+        sha512 = "Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==";
       };
     }
     {
-      name = "replace_ext___replace_ext_0.0.1.tgz";
+      name = "resolve_from___resolve_from_4.0.0.tgz";
       path = fetchurl {
-        name = "replace_ext___replace_ext_0.0.1.tgz";
-        url = "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz";
-        sha1 = "29bbd92078a739f0bcce2b4ee41e837953522924";
+        name = "resolve_from___resolve_from_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz";
+        sha512 = "pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==";
       };
     }
     {
-      name = "resolve_dir___resolve_dir_1.0.1.tgz";
+      name = "resolve_from___resolve_from_5.0.0.tgz";
       path = fetchurl {
-        name = "resolve_dir___resolve_dir_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz";
-        sha1 = "79a40644c362be82f26effe739c9bb5382046f43";
-      };
-    }
-    {
-      name = "resolve_url___resolve_url_0.2.1.tgz";
-      path = fetchurl {
-        name = "resolve_url___resolve_url_0.2.1.tgz";
-        url = "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz";
-        sha1 = "2c637fe77c893afd2a663fe21aa9080068e2052a";
+        name = "resolve_from___resolve_from_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz";
+        sha512 = "qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==";
       };
     }
     {
       name = "resolve___resolve_1.20.0.tgz";
       path = fetchurl {
         name = "resolve___resolve_1.20.0.tgz";
-        url = "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz";
-        sha1 = "629a013fb3f70755d6f0b7935cc1c2c5378b1975";
-      };
-    }
-    {
-      name = "ret___ret_0.1.15.tgz";
-      path = fetchurl {
-        name = "ret___ret_0.1.15.tgz";
-        url = "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz";
-        sha1 = "b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc";
-      };
-    }
-    {
-      name = "safe_buffer___safe_buffer_5.1.2.tgz";
-      path = fetchurl {
-        name = "safe_buffer___safe_buffer_5.1.2.tgz";
-        url = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz";
-        sha1 = "991ec69d296e0313747d59bdfd2b745c35f8828d";
-      };
-    }
-    {
-      name = "safe_buffer___safe_buffer_5.2.1.tgz";
-      path = fetchurl {
-        name = "safe_buffer___safe_buffer_5.2.1.tgz";
-        url = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz";
-        sha1 = "1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6";
+        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz";
+        sha512 = "wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==";
       };
     }
     {
-      name = "safe_regex___safe_regex_1.1.0.tgz";
+      name = "reusify___reusify_1.0.4.tgz";
       path = fetchurl {
-        name = "safe_regex___safe_regex_1.1.0.tgz";
-        url = "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz";
-        sha1 = "40a3669f3b077d1e943d44629e157dd48023bf2e";
+        name = "reusify___reusify_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz";
+        sha512 = "U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==";
       };
     }
     {
-      name = "sax___sax_1.2.4.tgz";
+      name = "rimraf___rimraf_3.0.2.tgz";
       path = fetchurl {
-        name = "sax___sax_1.2.4.tgz";
-        url = "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz";
-        sha1 = "2816234e2378bddc4e5354fab5caa895df7100d9";
+        name = "rimraf___rimraf_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz";
+        sha512 = "JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==";
       };
     }
     {
-      name = "semver___semver_4.3.6.tgz";
+      name = "run_parallel___run_parallel_1.2.0.tgz";
       path = fetchurl {
-        name = "semver___semver_4.3.6.tgz";
-        url = "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz";
-        sha1 = "300bc6e0e86374f7ba61068b5b1ecd57fc6532da";
+        name = "run_parallel___run_parallel_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz";
+        sha512 = "5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==";
       };
     }
     {
-      name = "sequencify___sequencify_0.0.7.tgz";
+      name = "semver___semver_5.7.1.tgz";
       path = fetchurl {
-        name = "sequencify___sequencify_0.0.7.tgz";
-        url = "https://registry.yarnpkg.com/sequencify/-/sequencify-0.0.7.tgz";
-        sha1 = "90cff19d02e07027fd767f5ead3e7b95d1e7380c";
+        name = "semver___semver_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz";
+        sha512 = "sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==";
       };
     }
     {
-      name = "set_value___set_value_2.0.1.tgz";
+      name = "semver___semver_7.3.5.tgz";
       path = fetchurl {
-        name = "set_value___set_value_2.0.1.tgz";
-        url = "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz";
-        sha1 = "a18d40530e6f07de4228c7defe4227af8cad005b";
+        name = "semver___semver_7.3.5.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz";
+        sha512 = "PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==";
       };
     }
     {
-      name = "sigmund___sigmund_1.0.1.tgz";
+      name = "signal_exit___signal_exit_3.0.6.tgz";
       path = fetchurl {
-        name = "sigmund___sigmund_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz";
-        sha1 = "3ff21f198cad2175f9f3b781853fd94d0d19b590";
+        name = "signal_exit___signal_exit_3.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.6.tgz";
+        sha512 = "sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==";
       };
     }
     {
-      name = "slash___slash_1.0.0.tgz";
+      name = "slash___slash_3.0.0.tgz";
       path = fetchurl {
-        name = "slash___slash_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz";
-        sha1 = "c41f2f6c39fc16d1cd17ad4b5d896114ae470d55";
+        name = "slash___slash_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz";
+        sha512 = "g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==";
       };
     }
     {
-      name = "snapdragon_node___snapdragon_node_2.1.1.tgz";
+      name = "slice_ansi___slice_ansi_4.0.0.tgz";
       path = fetchurl {
-        name = "snapdragon_node___snapdragon_node_2.1.1.tgz";
-        url = "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz";
-        sha1 = "6c175f86ff14bdb0724563e8f3c1b021a286853b";
+        name = "slice_ansi___slice_ansi_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz";
+        sha512 = "qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==";
       };
     }
     {
-      name = "snapdragon_util___snapdragon_util_3.0.1.tgz";
+      name = "source_map_js___source_map_js_1.0.1.tgz";
       path = fetchurl {
-        name = "snapdragon_util___snapdragon_util_3.0.1.tgz";
-        url = "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz";
-        sha1 = "f956479486f2acd79700693f6f7b805e45ab56e2";
+        name = "source_map_js___source_map_js_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.1.tgz";
+        sha512 = "4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA==";
       };
     }
     {
-      name = "snapdragon___snapdragon_0.8.2.tgz";
+      name = "spdx_correct___spdx_correct_3.1.1.tgz";
       path = fetchurl {
-        name = "snapdragon___snapdragon_0.8.2.tgz";
-        url = "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz";
-        sha1 = "64922e7c565b0e14204ba1aa7d6964278d25182d";
+        name = "spdx_correct___spdx_correct_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz";
+        sha512 = "cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==";
       };
     }
     {
-      name = "source_map_resolve___source_map_resolve_0.5.3.tgz";
+      name = "spdx_exceptions___spdx_exceptions_2.3.0.tgz";
       path = fetchurl {
-        name = "source_map_resolve___source_map_resolve_0.5.3.tgz";
-        url = "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz";
-        sha1 = "190866bece7553e1f8f267a2ee82c606b5509a1a";
+        name = "spdx_exceptions___spdx_exceptions_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz";
+        sha512 = "/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==";
       };
     }
     {
-      name = "source_map_url___source_map_url_0.4.1.tgz";
+      name = "spdx_expression_parse___spdx_expression_parse_3.0.1.tgz";
       path = fetchurl {
-        name = "source_map_url___source_map_url_0.4.1.tgz";
-        url = "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz";
-        sha1 = "0af66605a745a5a2f91cf1bbf8a7afbc283dec56";
+        name = "spdx_expression_parse___spdx_expression_parse_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz";
+        sha512 = "cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==";
       };
     }
     {
-      name = "source_map___source_map_0.5.7.tgz";
+      name = "spdx_license_ids___spdx_license_ids_3.0.11.tgz";
       path = fetchurl {
-        name = "source_map___source_map_0.5.7.tgz";
-        url = "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz";
-        sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc";
+        name = "spdx_license_ids___spdx_license_ids_3.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz";
+        sha512 = "Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==";
       };
     }
     {
-      name = "sparkles___sparkles_1.0.1.tgz";
+      name = "specificity___specificity_0.4.1.tgz";
       path = fetchurl {
-        name = "sparkles___sparkles_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.1.tgz";
-        sha1 = "008db65edce6c50eec0c5e228e1945061dd0437c";
+        name = "specificity___specificity_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/specificity/-/specificity-0.4.1.tgz";
+        sha512 = "1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==";
       };
     }
     {
-      name = "split_string___split_string_3.1.0.tgz";
+      name = "string_width___string_width_4.2.3.tgz";
       path = fetchurl {
-        name = "split_string___split_string_3.1.0.tgz";
-        url = "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz";
-        sha1 = "7cb09dda3a86585705c64b39a6466038682e8fe2";
+        name = "string_width___string_width_4.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz";
+        sha512 = "wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==";
       };
     }
     {
-      name = "sprintf_js___sprintf_js_1.0.3.tgz";
+      name = "strip_ansi___strip_ansi_6.0.1.tgz";
       path = fetchurl {
-        name = "sprintf_js___sprintf_js_1.0.3.tgz";
-        url = "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz";
-        sha1 = "04e6926f662895354f3dd015203633b857297e2c";
+        name = "strip_ansi___strip_ansi_6.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz";
+        sha512 = "Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==";
       };
     }
     {
-      name = "static_extend___static_extend_0.1.2.tgz";
+      name = "strip_indent___strip_indent_3.0.0.tgz";
       path = fetchurl {
-        name = "static_extend___static_extend_0.1.2.tgz";
-        url = "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz";
-        sha1 = "60809c39cbff55337226fd5e0b520f341f1fb5c6";
+        name = "strip_indent___strip_indent_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz";
+        sha512 = "laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==";
       };
     }
     {
-      name = "stream_consume___stream_consume_0.1.1.tgz";
+      name = "style_search___style_search_0.1.0.tgz";
       path = fetchurl {
-        name = "stream_consume___stream_consume_0.1.1.tgz";
-        url = "https://registry.yarnpkg.com/stream-consume/-/stream-consume-0.1.1.tgz";
-        sha1 = "d3bdb598c2bd0ae82b8cac7ac50b1107a7996c48";
+        name = "style_search___style_search_0.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz";
+        sha1 = "eVjHk+R+MuB9K1yv5cC/jhLneQI=";
       };
     }
     {
-      name = "string_decoder___string_decoder_1.3.0.tgz";
+      name = "stylelint_config_prettier___stylelint_config_prettier_9.0.3.tgz";
       path = fetchurl {
-        name = "string_decoder___string_decoder_1.3.0.tgz";
-        url = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz";
-        sha1 = "42f114594a46cf1a8e30b0a84f56c78c3edac21e";
+        name = "stylelint_config_prettier___stylelint_config_prettier_9.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint-config-prettier/-/stylelint-config-prettier-9.0.3.tgz";
+        sha512 = "5n9gUDp/n5tTMCq1GLqSpA30w2sqWITSSEiAWQlpxkKGAUbjcemQ0nbkRvRUa0B1LgD3+hCvdL7B1eTxy1QHJg==";
       };
     }
     {
-      name = "string_decoder___string_decoder_0.10.31.tgz";
+      name = "stylelint_config_recommended_scss___stylelint_config_recommended_scss_5.0.2.tgz";
       path = fetchurl {
-        name = "string_decoder___string_decoder_0.10.31.tgz";
-        url = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz";
-        sha1 = "62e203bc41766c6c28c9fc84301dab1c5310fa94";
+        name = "stylelint_config_recommended_scss___stylelint_config_recommended_scss_5.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-5.0.2.tgz";
+        sha512 = "b14BSZjcwW0hqbzm9b0S/ScN2+3CO3O4vcMNOw2KGf8lfVSwJ4p5TbNEXKwKl1+0FMtgRXZj6DqVUe/7nGnuBg==";
       };
     }
     {
-      name = "string_decoder___string_decoder_1.1.1.tgz";
+      name = "stylelint_config_recommended___stylelint_config_recommended_6.0.0.tgz";
       path = fetchurl {
-        name = "string_decoder___string_decoder_1.1.1.tgz";
-        url = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz";
-        sha1 = "9cf1611ba62685d7030ae9e4ba34149c3af03fc8";
+        name = "stylelint_config_recommended___stylelint_config_recommended_6.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint-config-recommended/-/stylelint-config-recommended-6.0.0.tgz";
+        sha512 = "ZorSSdyMcxWpROYUvLEMm0vSZud2uB7tX1hzBZwvVY9SV/uly4AvvJPPhCcymZL3fcQhEQG5AELmrxWqtmzacw==";
       };
     }
     {
-      name = "strip_ansi___strip_ansi_3.0.1.tgz";
+      name = "stylelint_config_standard_scss___stylelint_config_standard_scss_3.0.0.tgz";
       path = fetchurl {
-        name = "strip_ansi___strip_ansi_3.0.1.tgz";
-        url = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz";
-        sha1 = "6a385fb8853d952d5ff05d0e8aaf94278dc63dcf";
+        name = "stylelint_config_standard_scss___stylelint_config_standard_scss_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint-config-standard-scss/-/stylelint-config-standard-scss-3.0.0.tgz";
+        sha512 = "zt3ZbzIbllN1iCmc94e4pDxqpkzeR6CJo5DDXzltshuXr+82B8ylHyMMARNnUYrZH80B7wgY7UkKTYCFM0UUyw==";
       };
     }
     {
-      name = "strip_bom_stream___strip_bom_stream_2.0.0.tgz";
+      name = "stylelint_config_standard___stylelint_config_standard_24.0.0.tgz";
       path = fetchurl {
-        name = "strip_bom_stream___strip_bom_stream_2.0.0.tgz";
-        url = "https://registry.yarnpkg.com/strip-bom-stream/-/strip-bom-stream-2.0.0.tgz";
-        sha1 = "f87db5ef2613f6968aa545abfe1ec728b6a829ca";
+        name = "stylelint_config_standard___stylelint_config_standard_24.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint-config-standard/-/stylelint-config-standard-24.0.0.tgz";
+        sha512 = "+RtU7fbNT+VlNbdXJvnjc3USNPZRiRVp/d2DxOF/vBDDTi0kH5RX2Ny6errdtZJH3boO+bmqIYEllEmok4jiuw==";
       };
     }
     {
-      name = "strip_bom___strip_bom_1.0.0.tgz";
+      name = "stylelint_prettier___stylelint_prettier_2.0.0.tgz";
       path = fetchurl {
-        name = "strip_bom___strip_bom_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/strip-bom/-/strip-bom-1.0.0.tgz";
-        sha1 = "85b8862f3844b5a6d5ec8467a93598173a36f794";
+        name = "stylelint_prettier___stylelint_prettier_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint-prettier/-/stylelint-prettier-2.0.0.tgz";
+        sha512 = "jvT3G+9lopkeB0ARmDPszyfaOnvnIF+30QCjZxyt7E6fynI1T9mOKgYDNb9bXX17M7PXMZaX3j/26wqakjp1tw==";
       };
     }
     {
-      name = "strip_bom___strip_bom_2.0.0.tgz";
+      name = "stylelint_scss___stylelint_scss_4.0.0.tgz";
       path = fetchurl {
-        name = "strip_bom___strip_bom_2.0.0.tgz";
-        url = "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz";
-        sha1 = "6219a85616520491f35788bdbf1447a99c7e6b0e";
+        name = "stylelint_scss___stylelint_scss_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint-scss/-/stylelint-scss-4.0.0.tgz";
+        sha512 = "lIRhPqtI6I065EJ6aI4mWKsmQt8Krnu6aF9XSL9s8Nd2f/cDKImST0T9TfjnUul3ReKYWozkG9dlpNTZH2FB9w==";
       };
     }
     {
-      name = "supports_color___supports_color_2.0.0.tgz";
+      name = "stylelint___stylelint_14.1.0.tgz";
       path = fetchurl {
-        name = "supports_color___supports_color_2.0.0.tgz";
-        url = "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz";
-        sha1 = "535d045ce6b6363fa40117084629995e9df324c7";
+        name = "stylelint___stylelint_14.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/stylelint/-/stylelint-14.1.0.tgz";
+        sha512 = "IedkssuNVA11+v++2PIV2OHOU5A3SfRcXVi56vZVSsMhGrgtwmmit69jeM+08/Tun5DTBe7BuH1Zp1mMLmtKLA==";
       };
     }
     {
-      name = "svgo___svgo_0.7.2.tgz";
+      name = "supports_color___supports_color_5.5.0.tgz";
       path = fetchurl {
-        name = "svgo___svgo_0.7.2.tgz";
-        url = "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz";
-        sha1 = "9f5772413952135c6fefbf40afe6a4faa88b4bb5";
+        name = "supports_color___supports_color_5.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz";
+        sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==";
       };
     }
     {
-      name = "through2___through2_0.6.5.tgz";
+      name = "svg_tags___svg_tags_1.0.0.tgz";
       path = fetchurl {
-        name = "through2___through2_0.6.5.tgz";
-        url = "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz";
-        sha1 = "41ab9c67b29d57209071410e1d7a7a968cd3ad48";
+        name = "svg_tags___svg_tags_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz";
+        sha1 = "WPcc7jvVGbWdSyqEO2x95krAR2Q=";
       };
     }
     {
-      name = "through2___through2_2.0.5.tgz";
+      name = "table___table_6.7.5.tgz";
       path = fetchurl {
-        name = "through2___through2_2.0.5.tgz";
-        url = "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz";
-        sha1 = "01c1e39eb31d07cb7d03a96a70823260b23132cd";
+        name = "table___table_6.7.5.tgz";
+        url  = "https://registry.yarnpkg.com/table/-/table-6.7.5.tgz";
+        sha512 = "LFNeryOqiQHqCVKzhkymKwt6ozeRhlm8IL1mE8rNUurkir4heF6PzMyRgaTa4tlyPTGGgXuvVOF/OLWiH09Lqw==";
       };
     }
     {
-      name = "tildify___tildify_1.2.0.tgz";
+      name = "to_regex_range___to_regex_range_5.0.1.tgz";
       path = fetchurl {
-        name = "tildify___tildify_1.2.0.tgz";
-        url = "https://registry.yarnpkg.com/tildify/-/tildify-1.2.0.tgz";
-        sha1 = "dcec03f55dca9b7aa3e5b04f21817eb56e63588a";
+        name = "to_regex_range___to_regex_range_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz";
+        sha512 = "65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==";
       };
     }
     {
-      name = "time_stamp___time_stamp_1.1.0.tgz";
+      name = "trim_newlines___trim_newlines_3.0.1.tgz";
       path = fetchurl {
-        name = "time_stamp___time_stamp_1.1.0.tgz";
-        url = "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz";
-        sha1 = "764a5a11af50561921b133f3b44e618687e0f5c3";
+        name = "trim_newlines___trim_newlines_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz";
+        sha512 = "c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==";
       };
     }
     {
-      name = "to_object_path___to_object_path_0.3.0.tgz";
+      name = "type_fest___type_fest_0.18.1.tgz";
       path = fetchurl {
-        name = "to_object_path___to_object_path_0.3.0.tgz";
-        url = "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz";
-        sha1 = "297588b7b0e7e0ac08e04e672f85c1f4999e17af";
+        name = "type_fest___type_fest_0.18.1.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz";
+        sha512 = "OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==";
       };
     }
     {
-      name = "to_regex_range___to_regex_range_2.1.1.tgz";
+      name = "type_fest___type_fest_0.6.0.tgz";
       path = fetchurl {
-        name = "to_regex_range___to_regex_range_2.1.1.tgz";
-        url = "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz";
-        sha1 = "7c80c17b9dfebe599e27367e0d4dd5590141db38";
+        name = "type_fest___type_fest_0.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz";
+        sha512 = "q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==";
       };
     }
     {
-      name = "to_regex___to_regex_3.0.2.tgz";
+      name = "type_fest___type_fest_0.8.1.tgz";
       path = fetchurl {
-        name = "to_regex___to_regex_3.0.2.tgz";
-        url = "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz";
-        sha1 = "13cfdd9b336552f30b51f33a8ae1b42a7a7599ce";
+        name = "type_fest___type_fest_0.8.1.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz";
+        sha512 = "4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==";
       };
     }
     {
-      name = "unc_path_regex___unc_path_regex_0.1.2.tgz";
+      name = "typedarray_to_buffer___typedarray_to_buffer_3.1.5.tgz";
       path = fetchurl {
-        name = "unc_path_regex___unc_path_regex_0.1.2.tgz";
-        url = "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz";
-        sha1 = "e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa";
+        name = "typedarray_to_buffer___typedarray_to_buffer_3.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz";
+        sha512 = "zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==";
       };
     }
     {
-      name = "union_value___union_value_1.0.1.tgz";
+      name = "uri_js___uri_js_4.4.1.tgz";
       path = fetchurl {
-        name = "union_value___union_value_1.0.1.tgz";
-        url = "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz";
-        sha1 = "0b6fe7b835aecda61c6ea4d4f02c14221e109847";
-      };
-    }
-    {
-      name = "unique_stream___unique_stream_1.0.0.tgz";
-      path = fetchurl {
-        name = "unique_stream___unique_stream_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/unique-stream/-/unique-stream-1.0.0.tgz";
-        sha1 = "d59a4a75427447d9aa6c91e70263f8d26a4b104b";
-      };
-    }
-    {
-      name = "unset_value___unset_value_1.0.0.tgz";
-      path = fetchurl {
-        name = "unset_value___unset_value_1.0.0.tgz";
-        url = "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz";
-        sha1 = "8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559";
-      };
-    }
-    {
-      name = "urix___urix_0.1.0.tgz";
-      path = fetchurl {
-        name = "urix___urix_0.1.0.tgz";
-        url = "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz";
-        sha1 = "da937f7a62e21fec1fd18d49b35c2935067a6c72";
-      };
-    }
-    {
-      name = "use___use_3.1.1.tgz";
-      path = fetchurl {
-        name = "use___use_3.1.1.tgz";
-        url = "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz";
-        sha1 = "d50c8cac79a19fbc20f2911f56eb973f4e10070f";
-      };
-    }
-    {
-      name = "user_home___user_home_1.1.1.tgz";
-      path = fetchurl {
-        name = "user_home___user_home_1.1.1.tgz";
-        url = "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz";
-        sha1 = "2b5be23a32b63a7c9deb8d0f28d485724a3df190";
+        name = "uri_js___uri_js_4.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz";
+        sha512 = "7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==";
       };
     }
     {
       name = "util_deprecate___util_deprecate_1.0.2.tgz";
       path = fetchurl {
         name = "util_deprecate___util_deprecate_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz";
-        sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf";
-      };
-    }
-    {
-      name = "v8flags___v8flags_2.1.1.tgz";
-      path = fetchurl {
-        name = "v8flags___v8flags_2.1.1.tgz";
-        url = "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz";
-        sha1 = "aab1a1fa30d45f88dd321148875ac02c0b55e5b4";
-      };
-    }
-    {
-      name = "vinyl_file___vinyl_file_2.0.0.tgz";
-      path = fetchurl {
-        name = "vinyl_file___vinyl_file_2.0.0.tgz";
-        url = "https://registry.yarnpkg.com/vinyl-file/-/vinyl-file-2.0.0.tgz";
-        sha1 = "a7ebf5ffbefda1b7d18d140fcb07b223efb6751a";
+        url  = "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz";
+        sha1 = "RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=";
       };
     }
     {
-      name = "vinyl_fs___vinyl_fs_0.3.14.tgz";
+      name = "v8_compile_cache___v8_compile_cache_2.3.0.tgz";
       path = fetchurl {
-        name = "vinyl_fs___vinyl_fs_0.3.14.tgz";
-        url = "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-0.3.14.tgz";
-        sha1 = "9a6851ce1cac1c1cea5fe86c0931d620c2cfa9e6";
+        name = "v8_compile_cache___v8_compile_cache_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz";
+        sha512 = "l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==";
       };
     }
     {
-      name = "vinyl___vinyl_0.4.6.tgz";
+      name = "validate_npm_package_license___validate_npm_package_license_3.0.4.tgz";
       path = fetchurl {
-        name = "vinyl___vinyl_0.4.6.tgz";
-        url = "https://registry.yarnpkg.com/vinyl/-/vinyl-0.4.6.tgz";
-        sha1 = "2f356c87a550a255461f36bbeb2a5ba8bf784847";
+        name = "validate_npm_package_license___validate_npm_package_license_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz";
+        sha512 = "DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==";
       };
     }
     {
-      name = "vinyl___vinyl_0.5.3.tgz";
+      name = "which___which_1.3.1.tgz";
       path = fetchurl {
-        name = "vinyl___vinyl_0.5.3.tgz";
-        url = "https://registry.yarnpkg.com/vinyl/-/vinyl-0.5.3.tgz";
-        sha1 = "b0455b38fc5e0cf30d4325132e461970c2091cde";
+        name = "which___which_1.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz";
+        sha512 = "HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==";
       };
     }
     {
-      name = "vinyl___vinyl_1.2.0.tgz";
+      name = "wrappy___wrappy_1.0.2.tgz";
       path = fetchurl {
-        name = "vinyl___vinyl_1.2.0.tgz";
-        url = "https://registry.yarnpkg.com/vinyl/-/vinyl-1.2.0.tgz";
-        sha1 = "5c88036cf565e5df05558bfc911f8656df218884";
+        name = "wrappy___wrappy_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz";
+        sha1 = "tSQ9jz7BqjXxNkYFvA0QNuMKtp8=";
       };
     }
     {
-      name = "whet.extend___whet.extend_0.9.9.tgz";
+      name = "write_file_atomic___write_file_atomic_3.0.3.tgz";
       path = fetchurl {
-        name = "whet.extend___whet.extend_0.9.9.tgz";
-        url = "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz";
-        sha1 = "f877d5bf648c97e5aa542fadc16d6a259b9c11a1";
+        name = "write_file_atomic___write_file_atomic_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz";
+        sha512 = "AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==";
       };
     }
     {
-      name = "which___which_1.3.1.tgz";
+      name = "yallist___yallist_4.0.0.tgz";
       path = fetchurl {
-        name = "which___which_1.3.1.tgz";
-        url = "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz";
-        sha1 = "a45043d54f5805316da8d62f9f50918d3da70b0a";
+        name = "yallist___yallist_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz";
+        sha512 = "3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==";
       };
     }
     {
-      name = "wrappy___wrappy_1.0.2.tgz";
+      name = "yaml___yaml_1.10.2.tgz";
       path = fetchurl {
-        name = "wrappy___wrappy_1.0.2.tgz";
-        url = "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz";
-        sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
+        name = "yaml___yaml_1.10.2.tgz";
+        url  = "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz";
+        sha512 = "r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==";
       };
     }
     {
-      name = "xtend___xtend_4.0.2.tgz";
+      name = "yargs_parser___yargs_parser_20.2.9.tgz";
       path = fetchurl {
-        name = "xtend___xtend_4.0.2.tgz";
-        url = "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz";
-        sha1 = "bb72779f5fa465186b1f438f674fa347fdb5db54";
+        name = "yargs_parser___yargs_parser_20.2.9.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz";
+        sha512 = "y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==";
       };
     }
   ];
diff --git a/nixpkgs/pkgs/applications/networking/n8n/default.nix b/nixpkgs/pkgs/applications/networking/n8n/default.nix
index e7e1be095a20..72b4c7720480 100644
--- a/nixpkgs/pkgs/applications/networking/n8n/default.nix
+++ b/nixpkgs/pkgs/applications/networking/n8n/default.nix
@@ -17,6 +17,12 @@ nodePackages.n8n.override {
   meta = with lib; {
     description = "Free and open fair-code licensed node based Workflow Automation Tool";
     maintainers = with maintainers; [ freezeboy k900 ];
-    license = licenses.asl20;
+    license = {
+      fullName = "Sustainable Use License";
+      url = "https://github.com/n8n-io/n8n/blob/master/LICENSE.md";
+      free = false;
+      # only free to redistribute "for non-commercial purposes"
+      redistributable = false;
+    };
   };
 }
diff --git a/nixpkgs/pkgs/applications/networking/n8n/node-packages.nix b/nixpkgs/pkgs/applications/networking/n8n/node-packages.nix
index a86ac412c148..ab66b28fe17a 100644
--- a/nixpkgs/pkgs/applications/networking/n8n/node-packages.nix
+++ b/nixpkgs/pkgs/applications/networking/n8n/node-packages.nix
@@ -112,13 +112,13 @@ let
         sha512 = "ank38FdCLfJ+EoeMzCz3hkYJuZAd63ARvDKkxZYRDb+beBYf+/+gx8jNTqkq/hfyUl4dJQ/a7tECU0Y0F98CHg==";
       };
     };
-    "@babel/runtime-7.17.7" = {
+    "@babel/runtime-7.17.8" = {
       name = "_at_babel_slash_runtime";
       packageName = "@babel/runtime";
-      version = "7.17.7";
+      version = "7.17.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.7.tgz";
-        sha512 = "L6rvG9GDxaLgFjg41K+5Yv9OMrU98sWe+Ykmc6FDJW/+vYZMhdOMKkISgzptMaERHvS2Y2lw9MDRm2gHhlQQoA==";
+        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.8.tgz";
+        sha512 = "dQpEpK0O9o6lj6oPu0gRDbbnk+4LeHlNcBpspf6Olzt3GIX4P1lWF1gS+pHLDFlaJvbR6q7jCfQ08zA4QJBnmA==";
       };
     };
     "@colors/colors-1.5.0" = {
@@ -139,13 +139,13 @@ let
         sha512 = "hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==";
       };
     };
-    "@fontsource/open-sans-4.5.6" = {
+    "@fontsource/open-sans-4.5.8" = {
       name = "_at_fontsource_slash_open-sans";
       packageName = "@fontsource/open-sans";
-      version = "4.5.6";
+      version = "4.5.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fontsource/open-sans/-/open-sans-4.5.6.tgz";
-        sha512 = "bQuNS0H1VL1VLC6FwmReHlpJaICVe/seODU3Q9cpTQbJ5OtRD4TwWMrAjfTxqcFNollA6O0AlE4BnRSWMQLfvw==";
+        url = "https://registry.npmjs.org/@fontsource/open-sans/-/open-sans-4.5.8.tgz";
+        sha512 = "3b94XDdRLqL7OlE7OjWg/4pgG825Juw8PLVEDm6h5pio0gMU89ICxfatGxHsBxMGfqad+wnvdmUweZWlELDFpQ==";
       };
     };
     "@icetee/ftp-0.3.15" = {
@@ -481,13 +481,13 @@ let
         sha512 = "BzcaRsnFuznzOItW1WpQrDHM7plAa7GIDMZ6b5pnMbkqEtM/6WCOhvZar39oeMQP79gwvFUWjjptE7/KGcNqFg==";
       };
     };
-    "@types/node-17.0.21" = {
+    "@types/node-17.0.23" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "17.0.21";
+      version = "17.0.23";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz";
-        sha512 = "DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==";
+        url = "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz";
+        sha512 = "UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==";
       };
     };
     "@types/node-fetch-2.6.1" = {
@@ -670,15 +670,6 @@ let
         sha512 = "f5nltvjl+PRUh6YNfUstRaXwJxtfnKEWhAWWlmKvh+Y3J2+98a0KKVYDEhz6NdKGqswLhjNGznxfSsZGOvOd9g==";
       };
     };
-    "agent-base-4.3.0" = {
-      name = "agent-base";
-      packageName = "agent-base";
-      version = "4.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz";
-        sha512 = "salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==";
-      };
-    };
     "agent-base-6.0.2" = {
       name = "agent-base";
       packageName = "agent-base";
@@ -976,13 +967,13 @@ let
         sha512 = "uUbetCWczQHbsKyX1C99XpQHBM8SWfovvaZhPIj23/1uV7SQf0WeRZbiLpw0JZm+LHTChfNgrLfDJOVoU2kU+A==";
       };
     };
-    "aws-sdk-2.1093.0" = {
+    "aws-sdk-2.1101.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.1093.0";
+      version = "2.1101.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1093.0.tgz";
-        sha512 = "YD6VNemoKkzDMHsUiGP/MwpM0T20ukp3KTSxPY34Xw3Ww0zP19C54CfjaXhn//R27f2c57BtVez+he2RZ5GwyQ==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1101.0.tgz";
+        sha512 = "7lyVb7GXGl8yyu954Qxf6vU6MrcgFlmKyTLBVXJyo3Phn1OB+qOExA55WtSC6gQiQ7e5TeWOn1RUHLg30ywTBA==";
       };
     };
     "aws-sign2-0.7.0" = {
@@ -1777,13 +1768,13 @@ let
         sha512 = "hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==";
       };
     };
-    "convict-6.2.1" = {
+    "convict-6.2.2" = {
       name = "convict";
       packageName = "convict";
-      version = "6.2.1";
+      version = "6.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/convict/-/convict-6.2.1.tgz";
-        sha512 = "Mn4AJiYkR3TAZH1Xm/RU7gFS/0kM5TBSAQDry8y40Aez0ASY+3boUhv+3QE5XbOXiXM2JjdhkKve3IsBvWCibQ==";
+        url = "https://registry.npmjs.org/convict/-/convict-6.2.2.tgz";
+        sha512 = "3MsROJiEFN3BAzeFit1t87t7EUFzd44MNd13MLSikV2dsnDl7znwKgtYPPONtnDzxiDW0nBAsxVhSRNrjUrTTg==";
       };
     };
     "cookie-0.4.1" = {
@@ -1975,13 +1966,13 @@ let
         sha512 = "mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==";
       };
     };
-    "debug-4.3.3" = {
+    "debug-4.3.4" = {
       name = "debug";
       packageName = "debug";
-      version = "4.3.3";
+      version = "4.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz";
-        sha512 = "/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==";
+        url = "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz";
+        sha512 = "PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==";
       };
     };
     "debuglog-1.0.1" = {
@@ -2146,13 +2137,13 @@ let
         sha512 = "DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==";
       };
     };
-    "domhandler-4.3.0" = {
+    "domhandler-4.3.1" = {
       name = "domhandler";
       packageName = "domhandler";
-      version = "4.3.0";
+      version = "4.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz";
-        sha512 = "fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==";
+        url = "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz";
+        sha512 = "GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==";
       };
     };
     "domutils-2.8.0" = {
@@ -2335,24 +2326,6 @@ let
         sha1 = "aba8d9e1943a895ac96837a62a39b3f55ecd94ab";
       };
     };
-    "es6-promise-4.2.8" = {
-      name = "es6-promise";
-      packageName = "es6-promise";
-      version = "4.2.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz";
-        sha512 = "HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==";
-      };
-    };
-    "es6-promisify-5.0.0" = {
-      name = "es6-promisify";
-      packageName = "es6-promisify";
-      version = "5.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz";
-        sha1 = "5109d62f3e56ea967c4b63505aef08291c8a5203";
-      };
-    };
     "escalade-3.1.1" = {
       name = "escalade";
       packageName = "escalade";
@@ -3118,15 +3091,6 @@ let
         sha512 = "3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==";
       };
     };
-    "https-proxy-agent-3.0.1" = {
-      name = "https-proxy-agent";
-      packageName = "https-proxy-agent";
-      version = "3.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-3.0.1.tgz";
-        sha512 = "+ML2Rbh6DAuee7d07tYGEKOEi2voWPUGan+ExdPbPW6Z3svq+JCqr0v8WmKPOkz1vOVykPCBSuobe7G8GJUtVg==";
-      };
-    };
     "https-proxy-agent-5.0.0" = {
       name = "https-proxy-agent";
       packageName = "https-proxy-agent";
@@ -3874,13 +3838,13 @@ let
         sha512 = "2Bm96d5ktnE217Ib1FldvUaPAaOst6GtZrsxJCwnJgi9lnsoAKIHyU0sae8rNx6DNYbjdqqh8lv5/b9poD8qOg==";
       };
     };
-    "libphonenumber-js-1.9.49" = {
+    "libphonenumber-js-1.9.50" = {
       name = "libphonenumber-js";
       packageName = "libphonenumber-js";
-      version = "1.9.49";
+      version = "1.9.50";
       src = fetchurl {
-        url = "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.9.49.tgz";
-        sha512 = "/wEOIONcVboFky+lWlCaF7glm1FhBz11M5PHeCApA+xDdVfmhKjHktHS8KjyGxouV5CSXIr4f3GvLSpJa4qMSg==";
+        url = "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.9.50.tgz";
+        sha512 = "cCzQPChw2XbordcO2LKiw5Htx5leHVfFk/EXkxNHqJfFo7Fndcb1kF5wPJpc316vCJhhikedYnVysMh3Sc7Ocw==";
       };
     };
     "libqp-1.1.0" = {
@@ -4225,13 +4189,13 @@ let
         sha512 = "etgt+n4LlOkGSJbBTV9VROHA5R7ekIPS4vfh+bCAoJgRrJWdqJCBbpS3osRJ/HrT7R68MzMiY3L3sDJ/Fd8aBg==";
       };
     };
-    "mappersmith-2.38.0" = {
+    "mappersmith-2.38.1" = {
       name = "mappersmith";
       packageName = "mappersmith";
-      version = "2.38.0";
+      version = "2.38.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mappersmith/-/mappersmith-2.38.0.tgz";
-        sha512 = "D2+ICkvNGnGCz01MADdQQilcHGffwLd1ell4b4uXS9QYvLfrX0r5nl5zb9V+2YDy3142u6VUl1b154pxJAxw3g==";
+        url = "https://registry.npmjs.org/mappersmith/-/mappersmith-2.38.1.tgz";
+        sha512 = "ecZ+YyzBK7r3tC8MTaGo5tySHPhB6f9jdxN706Tux6dMlcE2fgwiBM/bf/+Sz5m2yKlTq5ntiahz7xSPgurD6w==";
       };
     };
     "material-colors-1.2.6" = {
@@ -4288,13 +4252,13 @@ let
         sha1 = "5529a4d67654134edcc5266656835b0f851afcee";
       };
     };
-    "micromatch-4.0.4" = {
+    "micromatch-4.0.5" = {
       name = "micromatch";
       packageName = "micromatch";
-      version = "4.0.4";
+      version = "4.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz";
-        sha512 = "pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==";
+        url = "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz";
+        sha512 = "DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==";
       };
     };
     "millisecond-0.1.2" = {
@@ -4360,13 +4324,13 @@ let
         sha512 = "J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==";
       };
     };
-    "minimist-1.2.5" = {
+    "minimist-1.2.6" = {
       name = "minimist";
       packageName = "minimist";
-      version = "1.2.5";
+      version = "1.2.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz";
-        sha512 = "FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==";
+        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz";
+        sha512 = "Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==";
       };
     };
     "minipass-2.9.0" = {
@@ -4387,13 +4351,13 @@ let
         sha512 = "6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==";
       };
     };
-    "mkdirp-0.5.5" = {
+    "mkdirp-0.5.6" = {
       name = "mkdirp";
       packageName = "mkdirp";
-      version = "0.5.5";
+      version = "0.5.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz";
-        sha512 = "NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==";
+        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz";
+        sha512 = "FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==";
       };
     };
     "mkdirp-1.0.4" = {
@@ -4540,49 +4504,49 @@ let
         sha512 = "z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==";
       };
     };
-    "n8n-core-0.109.0" = {
+    "n8n-core-0.111.0" = {
       name = "n8n-core";
       packageName = "n8n-core";
-      version = "0.109.0";
+      version = "0.111.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-core/-/n8n-core-0.109.0.tgz";
-        sha512 = "hzimsUZbWHfG9RofSX7czg0DgB7YAIcLi7JRFUVB90HVdasFf1HQFVM2AwFZC/lLVckktuadWSpq2MOKW+lE3Q==";
+        url = "https://registry.npmjs.org/n8n-core/-/n8n-core-0.111.0.tgz";
+        sha512 = "fZLLJ60yIuuX+geKGQrO6jk+kxn1UaCJMoWEi2FVE+InTmi+/r51Bv6LGoapoW0Oz+Em+CDq0wE7Yzg3xNx7fw==";
       };
     };
-    "n8n-design-system-0.14.0" = {
+    "n8n-design-system-0.16.0" = {
       name = "n8n-design-system";
       packageName = "n8n-design-system";
-      version = "0.14.0";
+      version = "0.16.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-design-system/-/n8n-design-system-0.14.0.tgz";
-        sha512 = "E9Tvnjd9hktVPsqBcX579Fr4Nn/QEVAHQaYZlPGrqxXLVD76mF0WQWJpU6XTZEs/9pKfEftk/TmDihtENLVTxg==";
+        url = "https://registry.npmjs.org/n8n-design-system/-/n8n-design-system-0.16.0.tgz";
+        sha512 = "X7Qa+DoXRyJL4gqh7x59udnPIBYAUgDvhchL33dpI/Rgq9gaFajT9eAuOFQnXKMUaL0FZ5hu3rRGcAmwwEA/bA==";
       };
     };
-    "n8n-editor-ui-0.135.0" = {
+    "n8n-editor-ui-0.137.0" = {
       name = "n8n-editor-ui";
       packageName = "n8n-editor-ui";
-      version = "0.135.0";
+      version = "0.137.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-editor-ui/-/n8n-editor-ui-0.135.0.tgz";
-        sha512 = "oM+Pnh4ZaUnDy5lj6u71EyXUPGNlbEIn3lpi4+xyO8tYtFyaN1kifS/q/a1sYrgZlwbWaksgUvTqufZ3Te6Yqw==";
+        url = "https://registry.npmjs.org/n8n-editor-ui/-/n8n-editor-ui-0.137.0.tgz";
+        sha512 = "/wYAIh/3RtVaFxY+vtVEACfo6xsVOi3cEPWd+GSFCK/AMxXs517CNGbwNz54geqaGNUH+rhhUz87C0pG+TgiUg==";
       };
     };
-    "n8n-nodes-base-0.166.0" = {
+    "n8n-nodes-base-0.168.0" = {
       name = "n8n-nodes-base";
       packageName = "n8n-nodes-base";
-      version = "0.166.0";
+      version = "0.168.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-nodes-base/-/n8n-nodes-base-0.166.0.tgz";
-        sha512 = "Iet76bGJrS3rTal5KbuBsJvYzAw3o9xfcLHERpDJyXOxgvrPfZ62A7RpmLMLA3KJLfKevY+VLGLWW5odTSvtEg==";
+        url = "https://registry.npmjs.org/n8n-nodes-base/-/n8n-nodes-base-0.168.0.tgz";
+        sha512 = "TyIL5Gwn+qvfi+1nNkQTPfrJYMqjx2P2OCiDWAMfzahauJyJpfJMYpIEKF3UxoKXCfWpBYPmHVoov6GadEOR1w==";
       };
     };
-    "n8n-workflow-0.91.0" = {
+    "n8n-workflow-0.93.0" = {
       name = "n8n-workflow";
       packageName = "n8n-workflow";
-      version = "0.91.0";
+      version = "0.93.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/n8n-workflow/-/n8n-workflow-0.91.0.tgz";
-        sha512 = "a4yqSvcalQs2MEDkOeadQc9cwK/3f6t+EKr/e8rEN5D9djnmuvoRJC+V9v6KPuHy66q1pv6w7fpmnrLRO+2WrA==";
+        url = "https://registry.npmjs.org/n8n-workflow/-/n8n-workflow-0.93.0.tgz";
+        sha512 = "IqZrnTKdIZD7aeL9/FiwoI7w1WBgeBmqZVXRF+OGtIHooK/lDkHpy17hoXXqAyeATiVf2licgl8F/zMvSsnuJA==";
       };
     };
     "named-placeholders-1.1.2" = {
@@ -4702,13 +4666,13 @@ let
         sha512 = "TwWAOZb0j7e9eGaf9esRx3ZcLaE5tQ2lvYy1pb5IAaG1a2e2Kv5Lms1Y4hpj+ciXJRofIxxlt5haeQ/2ANeE0Q==";
       };
     };
-    "node-ssh-12.0.3" = {
+    "node-ssh-12.0.4" = {
       name = "node-ssh";
       packageName = "node-ssh";
-      version = "12.0.3";
+      version = "12.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-ssh/-/node-ssh-12.0.3.tgz";
-        sha512 = "+TrX99Fvu50ZwBu/1Z9oWV1xC+vjADCJACSmvdgYUeUH/PKIX6Y5ltPvrh30WFXcxaP1wHN09BBVdQ3jfZlfoA==";
+        url = "https://registry.npmjs.org/node-ssh/-/node-ssh-12.0.4.tgz";
+        sha512 = "5M3FBeAWjEpAQvVakQde6CeviEoEiYb6IjJL9mrMen9at63GAv0Q5vOFHFP+SM1Y7pTN3EBvJ/I+oxn2Lpydbw==";
       };
     };
     "nodeify-1.0.1" = {
@@ -4729,13 +4693,13 @@ let
         sha512 = "AtiTVUFHLiiDnMQ43zi0YgkzHOEWUkhDgPlBXrsDzJiJvB29Alo4OKxHQ0ugF3gRqRQIneCLtZU3yiUo7pItZw==";
       };
     };
-    "nodemailer-6.7.2" = {
+    "nodemailer-6.7.3" = {
       name = "nodemailer";
       packageName = "nodemailer";
-      version = "6.7.2";
+      version = "6.7.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nodemailer/-/nodemailer-6.7.2.tgz";
-        sha512 = "Dz7zVwlef4k5R71fdmxwR8Q39fiboGbu3xgswkzGwczUfjp873rVxt1O46+Fh0j1ORnAC6L9+heI8uUpO6DT7Q==";
+        url = "https://registry.npmjs.org/nodemailer/-/nodemailer-6.7.3.tgz";
+        sha512 = "KUdDsspqx89sD4UUyUKzdlUOper3hRkDVkrKh/89G+d9WKsU5ox51NWS4tB1XR5dPUdR4SP0E3molyEfOvSa3g==";
       };
     };
     "nopt-4.0.3" = {
@@ -5935,13 +5899,13 @@ let
         sha512 = "wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==";
       };
     };
-    "requestretry-6.0.0" = {
+    "requestretry-7.0.2" = {
       name = "requestretry";
       packageName = "requestretry";
-      version = "6.0.0";
+      version = "7.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/requestretry/-/requestretry-6.0.0.tgz";
-        sha512 = "X7O+BMlfHgzetfSDtgQIMinLn1BuT+95W12iffDzyOS+HLoBEIQqCZv++UTChUWVjOu+pudbocD76+4j+jK9ww==";
+        url = "https://registry.npmjs.org/requestretry/-/requestretry-7.0.2.tgz";
+        sha512 = "Zz8z7G2OuVs4F0wR0shKMEMm7lNvPNHM0UIHNns9qfyuBDKSExoTsZGtSjKst6nPEwlMrbA9G+m/yC0AbGj+8w==";
       };
     };
     "require-at-1.0.6" = {
@@ -6367,13 +6331,13 @@ let
         sha512 = "LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==";
       };
     };
-    "snowflake-sdk-1.6.7" = {
+    "snowflake-sdk-1.6.8" = {
       name = "snowflake-sdk";
       packageName = "snowflake-sdk";
-      version = "1.6.7";
+      version = "1.6.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snowflake-sdk/-/snowflake-sdk-1.6.7.tgz";
-        sha512 = "pisHqO5ALTggbNhE7LGEG5bnD6NKebcqyirOl4IsoKsD7g6d+vC3gHgRR/cm8kAH1GhLHY/WwhDq2fr7lundpA==";
+        url = "https://registry.npmjs.org/snowflake-sdk/-/snowflake-sdk-1.6.8.tgz";
+        sha512 = "ZmzeR2W4mQVri546mUxUW+jBxTn0JRKm06EtndO7MUFLcS8YChf60tXTa+s7A0hO8FxQkSQAFonCmtz4nzPoSA==";
       };
     };
     "source-map-0.6.1" = {
@@ -6466,22 +6430,22 @@ let
         sha512 = "+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==";
       };
     };
-    "ssh2-1.7.0" = {
+    "ssh2-1.8.0" = {
       name = "ssh2";
       packageName = "ssh2";
-      version = "1.7.0";
+      version = "1.8.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssh2/-/ssh2-1.7.0.tgz";
-        sha512 = "u1gdFfqKV1PTGR2szS5FImhFii40o+8FOUpg1M//iimNaS4BkTyUVfVdoydXS93M1SquOU02Z4KFhYDBNqQO+g==";
+        url = "https://registry.npmjs.org/ssh2/-/ssh2-1.8.0.tgz";
+        sha512 = "NVIRkIwJvWl+mcRozp+EBzHMVCcbDKBea64ToPdZEk43yAVGwmfqYZRPFRnnvGjsKC34wYCmiupTcKgCVNVNNg==";
       };
     };
-    "ssh2-sftp-client-7.2.2" = {
+    "ssh2-sftp-client-7.2.3" = {
       name = "ssh2-sftp-client";
       packageName = "ssh2-sftp-client";
-      version = "7.2.2";
+      version = "7.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ssh2-sftp-client/-/ssh2-sftp-client-7.2.2.tgz";
-        sha512 = "qZYivU1zezyRomCf+TtsCYVAsc0TDQWzxJMMUN8NknEPonm2TYGxJAzrW8acUh2ILYgA0ZPOJElLV/qp9nRVYQ==";
+        url = "https://registry.npmjs.org/ssh2-sftp-client/-/ssh2-sftp-client-7.2.3.tgz";
+        sha512 = "Bmq4Uewu3e0XOwu5bnPbiS5KRQYv+dff5H6+85V4GZrPrt0Fkt1nUH+uXanyAkoNxUpzjnAPEEoLdOaBO9c3xw==";
       };
     };
     "sshpk-1.17.0" = {
@@ -7615,10 +7579,10 @@ in
   n8n = nodeEnv.buildNodePackage {
     name = "n8n";
     packageName = "n8n";
-    version = "0.168.1";
+    version = "0.170.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/n8n/-/n8n-0.168.1.tgz";
-      sha512 = "bghyOcF+KZmRsmyC9p2ARb+RIlUBDwTKCMLd5eUFW1SKMBCWgQZwG8KCLCRApWjXjP1SYekeyDo1PSl5fa7Hxw==";
+      url = "https://registry.npmjs.org/n8n/-/n8n-0.170.0.tgz";
+      sha512 = "aY4A9+P7K6iinxFyDZl9Jdin283csAbiMStjfxLX5IfO75/aNbjXhSmpjclV9PCUuuTonvoMiVMTvpbCaeImqg==";
     };
     dependencies = [
       (sources."@azure/abort-controller-1.0.5" // {
@@ -7670,7 +7634,7 @@ in
           sources."tslib-2.3.1"
         ];
       })
-      sources."@babel/runtime-7.17.7"
+      sources."@babel/runtime-7.17.8"
       sources."@colors/colors-1.5.0"
       (sources."@dabh/diagnostics-2.0.3" // {
         dependencies = [
@@ -7678,7 +7642,7 @@ in
           sources."kuler-2.0.0"
         ];
       })
-      sources."@fontsource/open-sans-4.5.6"
+      sources."@fontsource/open-sans-4.5.8"
       sources."@icetee/ftp-0.3.15"
       sources."@kafkajs/confluent-schema-registry-1.0.6"
       sources."@kwsites/file-exists-1.1.1"
@@ -7730,7 +7694,7 @@ in
       sources."@types/lodash-4.14.180"
       sources."@types/lossless-json-1.0.1"
       sources."@types/mime-1.3.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       (sources."@types/node-fetch-2.6.1" // {
         dependencies = [
           sources."form-data-3.0.1"
@@ -7799,7 +7763,7 @@ in
         ];
       })
       sources."avsc-5.7.3"
-      (sources."aws-sdk-2.1093.0" // {
+      (sources."aws-sdk-2.1101.0" // {
         dependencies = [
           sources."buffer-4.9.2"
           sources."events-1.1.1"
@@ -7970,7 +7934,7 @@ in
       })
       sources."content-disposition-0.5.4"
       sources."content-type-1.0.4"
-      sources."convict-6.2.1"
+      sources."convict-6.2.2"
       sources."cookie-0.4.1"
       sources."cookie-parser-1.4.6"
       sources."cookie-signature-1.0.6"
@@ -7997,7 +7961,7 @@ in
       sources."cssfilter-0.0.10"
       sources."dashdash-1.14.1"
       sources."date-utils-1.2.21"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."debuglog-1.0.1"
       sources."deep-extend-0.6.0"
       sources."deepmerge-4.2.2"
@@ -8014,7 +7978,7 @@ in
       sources."discontinuous-range-1.0.0"
       sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
       (sources."dot-case-3.0.4" // {
         dependencies = [
@@ -8045,8 +8009,6 @@ in
       sources."es-abstract-1.19.1"
       sources."es-to-primitive-1.2.1"
       sources."es5-ext-0.8.2"
-      sources."es6-promise-4.2.8"
-      sources."es6-promisify-5.0.0"
       sources."escalade-3.1.1"
       sources."escape-html-1.0.3"
       sources."escape-string-regexp-4.0.0"
@@ -8249,7 +8211,7 @@ in
           sources."iconv-lite-0.6.2"
         ];
       })
-      sources."libphonenumber-js-1.9.49"
+      sources."libphonenumber-js-1.9.50"
       sources."libqp-1.1.0"
       sources."limiter-1.1.5"
       sources."linkify-it-3.0.3"
@@ -8308,14 +8270,14 @@ in
       })
       sources."make-error-1.3.6"
       sources."make-error-cause-2.3.0"
-      sources."mappersmith-2.38.0"
+      sources."mappersmith-2.38.1"
       sources."material-colors-1.2.6"
       sources."md5-2.3.0"
       sources."media-typer-0.3.0"
       sources."merge-descriptors-1.0.1"
       sources."merge2-1.4.1"
       sources."methods-1.1.2"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."millisecond-0.1.2"
       sources."mime-1.6.0"
       sources."mime-db-1.52.0"
@@ -8323,7 +8285,7 @@ in
       sources."mimic-fn-2.1.0"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."minipass-2.9.0" // {
         dependencies = [
           sources."yallist-3.1.1"
@@ -8365,19 +8327,19 @@ in
         ];
       })
       sources."mz-2.7.0"
-      (sources."n8n-core-0.109.0" // {
+      (sources."n8n-core-0.111.0" // {
         dependencies = [
           sources."qs-6.10.3"
         ];
       })
-      sources."n8n-design-system-0.14.0"
-      sources."n8n-editor-ui-0.135.0"
-      (sources."n8n-nodes-base-0.166.0" // {
+      sources."n8n-design-system-0.16.0"
+      sources."n8n-editor-ui-0.137.0"
+      (sources."n8n-nodes-base-0.168.0" // {
         dependencies = [
           sources."iconv-lite-0.6.3"
         ];
       })
-      sources."n8n-workflow-0.91.0"
+      sources."n8n-workflow-0.93.0"
       (sources."named-placeholders-1.1.2" // {
         dependencies = [
           sources."lru-cache-4.1.5"
@@ -8409,14 +8371,14 @@ in
       sources."node-fetch-2.6.7"
       (sources."node-pre-gyp-0.11.0" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
           sources."rimraf-2.7.1"
           sources."semver-5.7.1"
         ];
       })
-      sources."node-ssh-12.0.3"
+      sources."node-ssh-12.0.4"
       sources."nodeify-1.0.1"
-      sources."nodemailer-6.7.2"
+      sources."nodemailer-6.7.3"
       sources."nopt-4.0.3"
       sources."normalize-path-3.0.0"
       sources."npm-bundled-1.1.2"
@@ -8596,7 +8558,7 @@ in
           sources."tough-cookie-2.5.0"
         ];
       })
-      sources."requestretry-6.0.0"
+      sources."requestretry-7.0.2"
       sources."require-at-1.0.6"
       sources."require-directory-2.1.1"
       sources."requires-port-1.0.0"
@@ -8659,12 +8621,10 @@ in
           sources."tslib-2.3.1"
         ];
       })
-      (sources."snowflake-sdk-1.6.7" // {
+      (sources."snowflake-sdk-1.6.8" // {
         dependencies = [
-          sources."agent-base-4.3.0"
           sources."debug-3.2.7"
           sources."http-signature-1.3.6"
-          sources."https-proxy-agent-3.0.1"
           sources."jsprim-2.0.2"
           sources."tmp-0.2.1"
           sources."uuid-3.4.0"
@@ -8683,8 +8643,8 @@ in
       sources."sqlstring-2.3.3"
       sources."sse-channel-3.1.1"
       sources."ssf-0.11.2"
-      sources."ssh2-1.7.0"
-      sources."ssh2-sftp-client-7.2.2"
+      sources."ssh2-1.8.0"
+      sources."ssh2-sftp-client-7.2.3"
       sources."sshpk-1.17.0"
       sources."stack-trace-0.0.10"
       sources."standard-as-callback-2.1.0"
@@ -8702,7 +8662,7 @@ in
       sources."supports-color-7.2.0"
       (sources."tar-4.4.19" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
           sources."yallist-3.1.1"
         ];
       })
diff --git a/nixpkgs/pkgs/applications/networking/nextcloud-client/default.nix b/nixpkgs/pkgs/applications/networking/nextcloud-client/default.nix
index 3a63f98c44c3..deac64c903e1 100644
--- a/nixpkgs/pkgs/applications/networking/nextcloud-client/default.nix
+++ b/nixpkgs/pkgs/applications/networking/nextcloud-client/default.nix
@@ -22,13 +22,13 @@
 
 mkDerivation rec {
   pname = "nextcloud-client";
-  version = "3.4.3";
+  version = "3.4.4";
 
   src = fetchFromGitHub {
     owner = "nextcloud";
     repo = "desktop";
     rev = "v${version}";
-    sha256 = "sha256-nryoueoqnbBAJaU11OUXKP5PNrYf4515ojBkdMFIEMA=";
+    sha256 = "sha256-e4me4mpK0N3UyM5MuJP3jxwM5h1dGBd+JzAr5f3BOGQ=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/applications/networking/p2p/fragments/default.nix b/nixpkgs/pkgs/applications/networking/p2p/fragments/default.nix
index a07869209c7d..ebeba4c010e8 100644
--- a/nixpkgs/pkgs/applications/networking/p2p/fragments/default.nix
+++ b/nixpkgs/pkgs/applications/networking/p2p/fragments/default.nix
@@ -1,76 +1,89 @@
 { lib
 , stdenv
 , fetchFromGitLab
+, fetchpatch
+, appstream-glib
+, dbus
+, desktop-file-utils
+, git
+, glib
+, gtk4
+, libadwaita
 , meson
-, vala
 , ninja
+, openssl
 , pkg-config
-, wrapGAppsHook
-, desktop-file-utils
-, appstream-glib
 , python3
-, glib
-, gtk3
-, libhandy
-, libtransmission
-, libb64
-, libutp
-, miniupnpc
-, dht
-, libnatpmp
-, libevent
-, curl
-, openssl
-, zlib
+, rustPlatform
+, sqlite
+, transmission
+, wrapGAppsHook4
 }:
 
-stdenv.mkDerivation rec {
+let
+  patchedTransmission = transmission.overrideAttrs (oldAttrs: {
+    patches = (oldAttrs.patches or []) ++ [
+      (fetchpatch {
+        url = "https://raw.githubusercontent.com/flathub/de.haeckerfelix.Fragments/2aee477c8e26a24570f8dbbdbd1c49e017ae32eb/transmission_pdeathsig.patch";
+        sha256 = "sha256-/rCoA566tMmzqcIfffC082Y56TwEyyQJ0knxymtscbA=";
+      })
+    ];
+  });
+in stdenv.mkDerivation rec {
   pname = "fragments";
-  version = "1.5";
+  version = "2.0.2";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "World";
     repo = "Fragments";
     rev = version;
-    sha256 = "0x1kafhlgyi65l4w67c24r8mpvasg3q3c4wlgnjc9sxvp6ki7xbn";
+    sha256 = "sha256-CMa1yka0kOxMhxSuazlJxTk4fzxuuwKYLBpEMwHbBUE=";
   };
 
-  patches = [
-    # Fix dependency resolution
-    ./dependency-resolution.patch
-  ];
+  postPatch = ''
+    patchShebangs build-aux/meson/postinstall.py
+  '';
+
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit src;
+    name = "${pname}-${version}";
+    hash = "sha256-/rFZcbpITYkpSCEZp9XH253u90RGmuVLEBGIRNBgI/o=";
+  };
 
   nativeBuildInputs = [
+    appstream-glib
+    desktop-file-utils
+    git
     meson
-    vala
     ninja
     pkg-config
-    wrapGAppsHook
-    desktop-file-utils
-    appstream-glib
     python3
-  ];
+    wrapGAppsHook4
+  ] ++ (with rustPlatform; [
+    cargoSetupHook
+    rust.cargo
+    rust.rustc
+  ]);
 
   buildInputs = [
+    dbus
     glib
-    gtk3
-    libhandy
-    libtransmission
-    libb64
-    libutp
-    miniupnpc
-    dht
-    libnatpmp
-    libevent
-    curl
+    gtk4
+    libadwaita
     openssl
-    zlib
+    sqlite
   ];
 
+  preFixup =  ''
+    gappsWrapperArgs+=(
+      --prefix PATH : "${lib.makeBinPath [ patchedTransmission ]}"
+    )
+  '';
+
   meta = with lib; {
     homepage = "https://gitlab.gnome.org/World/Fragments";
-    description = "A GTK3 BitTorrent Client";
+    description = "Easy to use BitTorrent client for the GNOME desktop environment";
     maintainers = with maintainers; [ emilytrau ];
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
diff --git a/nixpkgs/pkgs/applications/networking/p2p/fragments/dependency-resolution.patch b/nixpkgs/pkgs/applications/networking/p2p/fragments/dependency-resolution.patch
deleted file mode 100644
index 0446bc1390c7..000000000000
--- a/nixpkgs/pkgs/applications/networking/p2p/fragments/dependency-resolution.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/meson.build b/meson.build
-index 5030d0c..6de7a20 100644
---- a/meson.build
-+++ b/meson.build
-@@ -32,10 +32,11 @@ transmission_dep = declare_dependency(
- 				meson.get_compiler('c').find_library('dht'),
- 				meson.get_compiler('c').find_library('natpmp'),
- 				meson.get_compiler('c').find_library('event'),
--				meson.get_compiler('c').find_library('libcurl'),
--				meson.get_compiler('c').find_library('libcrypto'),
-+				meson.get_compiler('c').find_library('curl'),
-+				meson.get_compiler('c').find_library('crypto'),
-+				meson.get_compiler('c').find_library('ssl'),
- 				meson.get_compiler('c').find_library('libpthread'),
--				meson.get_compiler('c').find_library('libz'),
-+				meson.get_compiler('c').find_library('z'),
- 				transmission_vapi,
- 				transmission_lib
- 			])
-@@ -45,4 +46,4 @@ subdir('data')
- subdir('po')
- subdir('src')
- 
--meson.add_install_script('build-aux/postinstall.py')
-+meson.add_install_script('python3', '../build-aux/postinstall.py')
diff --git a/nixpkgs/pkgs/applications/networking/p2p/frostwire/default.nix b/nixpkgs/pkgs/applications/networking/p2p/frostwire/default.nix
index e4c1c8f5b7ba..cd6ae563aa0b 100644
--- a/nixpkgs/pkgs/applications/networking/p2p/frostwire/default.nix
+++ b/nixpkgs/pkgs/applications/networking/p2p/frostwire/default.nix
@@ -2,12 +2,11 @@
 
 let
   version = "6.6.7-build-529";
-  name = "frostwire-desktop-${version}";
 
   src = fetchFromGitHub {
     owner = "frostwire";
     repo = "frostwire";
-    rev = name;
+    rev = "frostwire-desktop-${version}";
     sha256 = "03wdj2kr8akzx8m1scvg98132zbaxh81qjdsxn2645b3gahjwz0m";
   };
 
@@ -23,8 +22,8 @@ let
 
   # fake build to pre-download deps into fixed-output derivation
   deps = stdenv.mkDerivation {
-    name = "${name}-deps";
-    inherit src;
+    pname = "frostwire-desktop-deps";
+    inherit version src;
     buildInputs = [ gradle_6 perl ];
     buildPhase = ''
       export GRADLE_USER_HOME=$(mktemp -d)
@@ -40,11 +39,12 @@ let
     '';
     outputHashAlgo = "sha256";
     outputHashMode = "recursive";
-    outputHash = "11zd98g0d0fdgls4lsskkagwfxyh26spfd6c6g9cahl89czvlg3c";
+    outputHash = "sha256-r6YSrbSJbM3063JrX4tCVKFrJxTaLN4Trc+33jzpwcE=";
   };
 
 in stdenv.mkDerivation {
-  inherit name src;
+  pname = "frostwire-desktop";
+  inherit version src;
 
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ gradle_6 ];
diff --git a/nixpkgs/pkgs/applications/networking/p2p/twister/default.nix b/nixpkgs/pkgs/applications/networking/p2p/twister/default.nix
index 9c708b795885..c8e3c4ce7b91 100644
--- a/nixpkgs/pkgs/applications/networking/p2p/twister/default.nix
+++ b/nixpkgs/pkgs/applications/networking/p2p/twister/default.nix
@@ -1,15 +1,15 @@
 { lib, stdenv, fetchFromGitHub, fetchpatch, autoconf, automake, libtool, pkg-config, python2
-, boost, db, openssl, geoip, libiconv, miniupnpc
-, srcOnly, fetchgit
+, boost, db, openssl, geoip, libiconv, miniupnpc, srcOnly
 }:
 
 let
   twisterHTML = srcOnly {
     name = "twister-html";
-    src = fetchgit {
-      url = "git://github.com/miguelfreitas/twister-html.git";
+    src = fetchFromGitHub {
+      owner = "miguelfreitas";
+      repo = "twister-html";
       rev = "01e7f7ca9b7e42ed90f91bc42da2c909ca5c0b9b";
-      sha256 = "0scjbin6s1kmi0bqq0dx0qyjw4n5xgmj567n0156i39f9h0dabqy";
+      sha256 = "sha256-Hi/VAEwujWhKAPaYIuvrxRIuPQa9AYwXiHUGbWxckmk=";
     };
   };
 
diff --git a/nixpkgs/pkgs/applications/networking/protonvpn-gui/default.nix b/nixpkgs/pkgs/applications/networking/protonvpn-gui/default.nix
index b6583efe730e..ecfde0a39c20 100644
--- a/nixpkgs/pkgs/applications/networking/protonvpn-gui/default.nix
+++ b/nixpkgs/pkgs/applications/networking/protonvpn-gui/default.nix
@@ -1,8 +1,21 @@
-{ lib, fetchFromGitHub, gobject-introspection, imagemagick,
-wrapGAppsHook, python3Packages, gtk3, networkmanager, webkitgtk }:
+{ lib
+, buildPythonApplication
+, fetchFromGitHub
+, wrapGAppsHook
+, gobject-introspection
+, imagemagick
+, networkmanager
+, pango
+, webkitgtk
+# Python libs
+, protonvpn-nm-lib
+, psutil
+# Optionals
+, withIndicator ? true
+, libappindicator-gtk3 }:
 
-python3Packages.buildPythonApplication rec {
-  pname = "protonvpn-linux-gui";
+buildPythonApplication rec {
+  pname = "protonvpn-gui";
   version = "1.7.0";
 
   src = fetchFromGitHub {
@@ -12,22 +25,26 @@ python3Packages.buildPythonApplication rec {
     sha256 = "sha256-uzooFQBq2mhqTBr/cgea5cVQ889P70sgSk2vjXBQEfw=";
   };
 
-  strictDeps = false;
-
   nativeBuildInputs = [
-    gobject-introspection imagemagick wrapGAppsHook
+    gobject-introspection
+    imagemagick
+    wrapGAppsHook
   ];
 
-  propagatedBuildInputs = with python3Packages; [
+  propagatedBuildInputs = [
     protonvpn-nm-lib
     psutil
   ];
 
   buildInputs = [
-    gtk3 networkmanager webkitgtk
-  ];
+    # To avoid enabling strictDeps = false (#56943)
+    gobject-introspection
+    networkmanager
+    pango
+    webkitgtk
+  ] ++ lib.optionals withIndicator [ libappindicator-gtk3 ];
 
-  postFixup = ''
+  postInstall = ''
     # Setting icons
     for size in 16 32 48 64 72 96 128 192 512 1024; do
       mkdir -p $out/share/icons/hicolor/"$size"x"$size"/apps
@@ -45,9 +62,9 @@ python3Packages.buildPythonApplication rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Linux GUI for ProtonVPN, written in Python";
+    description = "Official ProtonVPN Linux app";
     homepage = "https://github.com/ProtonVPN/linux-app";
-    maintainers = with maintainers; [ offline wolfangaukang ];
+    maintainers = with maintainers; [ wolfangaukang ];
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
   };
diff --git a/nixpkgs/pkgs/applications/networking/remote/remmina/default.nix b/nixpkgs/pkgs/applications/networking/remote/remmina/default.nix
index 29d80c25ef58..9721c6b9ba43 100644
--- a/nixpkgs/pkgs/applications/networking/remote/remmina/default.nix
+++ b/nixpkgs/pkgs/applications/networking/remote/remmina/default.nix
@@ -15,13 +15,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "remmina";
-  version = "1.4.24";
+  version = "1.4.25";
 
   src = fetchFromGitLab {
     owner  = "Remmina";
     repo   = "Remmina";
     rev    = "v${version}";
-    sha256 = "sha256-rcxgr3HVOWA3mTfX8tka9bPGDRDtKhBRsfQ3hv9XHf0=";
+    sha256 = "sha256-1val/KCClEtw1prVWuXJe8DmmQ7e7oqwAfAnT9G9iHI=";
   };
 
   nativeBuildInputs = [ cmake ninja pkg-config wrapGAppsHook ];
diff --git a/nixpkgs/pkgs/applications/networking/remote/vmware-horizon-client/default.nix b/nixpkgs/pkgs/applications/networking/remote/vmware-horizon-client/default.nix
index be0832a075f8..f114f8a3091b 100644
--- a/nixpkgs/pkgs/applications/networking/remote/vmware-horizon-client/default.nix
+++ b/nixpkgs/pkgs/applications/networking/remote/vmware-horizon-client/default.nix
@@ -115,7 +115,8 @@ let
 
 in
 stdenv.mkDerivation {
-  name = "vmware-horizon-client";
+  pname = "vmware-horizon-client";
+  inherit version;
 
   dontUnpack = true;
 
diff --git a/nixpkgs/pkgs/applications/networking/sync/desync/default.nix b/nixpkgs/pkgs/applications/networking/sync/desync/default.nix
index bc2776657c20..98b29038edec 100644
--- a/nixpkgs/pkgs/applications/networking/sync/desync/default.nix
+++ b/nixpkgs/pkgs/applications/networking/sync/desync/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "desync";
-  version = "0.9.0";
+  version = "0.9.2";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "folbricht";
     repo = "desync";
-    sha256 = "0j9hixgkja268r2zn2dglrmlrb2z57sgz6q3wqb8dfwpan7b5rsy";
+    sha256 = "sha256-yGlf6Z38GnOWSc2pvt/u4arx5lCB0QpoqPdNamdL9b0=";
   };
 
-  vendorSha256 = "1gajh99jb6mbwk93dypddhl7r7n8h2s11s3s82firbrb5k24s4pz";
+  vendorSha256 = "sha256-c+Sz3WMKyzdEE/Hs+7dekQPn+62ddbmfvV21W0KeLDU=";
 
   # nix builder doesn't have access to test data; tests fail for reasons unrelated to binary being bad.
   doCheck = false;
diff --git a/nixpkgs/pkgs/applications/networking/sync/rclone/default.nix b/nixpkgs/pkgs/applications/networking/sync/rclone/default.nix
index f9fbb071b06a..9ebd9db67f9d 100644
--- a/nixpkgs/pkgs/applications/networking/sync/rclone/default.nix
+++ b/nixpkgs/pkgs/applications/networking/sync/rclone/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "rclone";
-  version = "1.57.0";
+  version = "1.58.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "0pwbprbkx5y0c93b61k8znan4aimk7dkssapjhkhzw4c38xd4lza";
+    sha256 = "sha256-zCKXi3qeiq2AGT7UioVfCbB4bc5F2tXJ507zPa+O0pc=";
   };
 
-  vendorSha256 = "0353pff07lwpa1jmi095kb2izcw09z73x6nninnnpyqppwzas6ha";
+  vendorSha256 = "sha256-mgupx5SNQ3wUkQCeTVnw3wwdSCrTcwLYxcX6tlqXTyQ=";
 
   subPackages = [ "." ];
 
@@ -40,8 +40,13 @@ buildGoModule rec {
         ${rcloneBin}/bin/rclone genautocomplete $shell rclone.$shell
         installShellCompletion rclone.$shell
       done
-    '' + lib.optionalString (enableCmount && !stdenv.isDarwin) ''
-      wrapProgram $out/bin/rclone --prefix LD_LIBRARY_PATH : "${fuse}/lib"
+    '' + lib.optionalString (enableCmount && !stdenv.isDarwin)
+      # use --suffix here to ensure we don't shadow /run/wrappers/bin/fusermount,
+      # as the setuid wrapper is required as non-root on NixOS.
+      ''
+      wrapProgram $out/bin/rclone \
+                  --suffix PATH : "${lib.makeBinPath [ fuse ] }" \
+                  --prefix LD_LIBRARY_PATH : "${fuse}/lib"
     '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/networking/sync/unison/default.nix b/nixpkgs/pkgs/applications/networking/sync/unison/default.nix
index 3e0ed7a50208..497b91ad361e 100644
--- a/nixpkgs/pkgs/applications/networking/sync/unison/default.nix
+++ b/nixpkgs/pkgs/applications/networking/sync/unison/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "unison";
-  version = "2.51.5";
+  version = "2.52.0";
 
   src = fetchFromGitHub {
     owner = "bcpierce00";
     repo = "unison";
     rev = "v${version}";
-    sha256 = "sha256-pi5uYwPpIy0lERmgATWQCO3EA3Pg5pnn7gxv49FaPug=";
+    sha256 = "sha256-YCuXkHqY+JHsguvst2UkI/6YlFt3iTvchO8PQuS15nI=";
   };
 
   nativeBuildInputs = [ makeWrapper ]
diff --git a/nixpkgs/pkgs/applications/networking/termius/default.nix b/nixpkgs/pkgs/applications/networking/termius/default.nix
index 6e9093373c92..b087a45a9790 100644
--- a/nixpkgs/pkgs/applications/networking/termius/default.nix
+++ b/nixpkgs/pkgs/applications/networking/termius/default.nix
@@ -13,7 +13,7 @@
 
 stdenv.mkDerivation rec {
   pname = "termius";
-  version = "7.34.1";
+  version = "7.36.1";
 
   src = fetchurl {
     # find the latest version with
@@ -22,8 +22,8 @@ stdenv.mkDerivation rec {
     # curl -H 'X-Ubuntu-Series: 16' https://api.snapcraft.io/api/v1/snaps/details/termius-app | jq '.download_url' -r
     # and the sha512 with
     # curl -H 'X-Ubuntu-Series: 16' https://api.snapcraft.io/api/v1/snaps/details/termius-app | jq '.download_sha512' -r
-    url = "https://api.snapcraft.io/api/v1/snaps/download/WkTBXwoX81rBe3s3OTt3EiiLKBx2QhuS_101.snap";
-    sha512 = "7fdd82535fd288277b01fedde4739dc97782236fbf25372efa56114bba676c21277ed96b32a1d46ac86af19925b14935818af50985d43a1307639530db044af4";
+    url = "https://api.snapcraft.io/api/v1/snaps/download/WkTBXwoX81rBe3s3OTt3EiiLKBx2QhuS_107.snap";
+    sha512 = "ef8514bdd0e6761a9bc7bf6b0b72d95c661905798c1507af932bd38a1e0c96713f71140b0d91454c3da5f3b97a0c8143b32918294eea2e46a7dca8faabda57e6";
   };
 
   desktopItem = makeDesktopItem {
@@ -55,15 +55,7 @@ stdenv.mkDerivation rec {
     runHook preInstall
     cd squashfs-root
     mkdir -p $out/opt/termius
-    cp -r \
-        icudtl.dat \
-        libffmpeg.so \
-        locales \
-        resources \
-        resources.pak \
-        termius-app \
-        v8_context_snapshot.bin \
-        $out/opt/termius
+    cp -r ./ $out/opt/termius
 
     mkdir -p "$out/share/applications" "$out/share/pixmaps/termius-app.png"
     cp "${desktopItem}/share/applications/"* "$out/share/applications"
diff --git a/nixpkgs/pkgs/applications/office/autokey/remove-requires-dbus-python.patch b/nixpkgs/pkgs/applications/office/autokey/remove-requires-dbus-python.patch
deleted file mode 100644
index 73372e435291..000000000000
--- a/nixpkgs/pkgs/applications/office/autokey/remove-requires-dbus-python.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -71,7 +71,7 @@
-         'console_scripts': ['autokey-gtk=autokey.gtkui.__main__:main']
-     },
-     scripts=['autokey-qt', 'autokey-run', 'autokey-shell'],
--    install_requires=['dbus-python', 'pyinotify', 'python3-xlib'],
-+    install_requires=['pyinotify', 'python-xlib'],
-     classifiers=[
-         'Development Status :: 4 - Beta',
-         'Intended Audience :: Developers',
diff --git a/nixpkgs/pkgs/applications/office/bookworm/default.nix b/nixpkgs/pkgs/applications/office/bookworm/default.nix
index 8bd1d8f974b3..9cdbd14e105c 100644
--- a/nixpkgs/pkgs/applications/office/bookworm/default.nix
+++ b/nixpkgs/pkgs/applications/office/bookworm/default.nix
@@ -1,43 +1,67 @@
-{ lib, stdenv, fetchFromGitHub, pantheon, vala, python3, python2, pkg-config, libxml2, meson, ninja, gtk3, glib, webkitgtk, libgee
-, gobject-introspection, sqlite, poppler, poppler_utils, html2text, curl, gnugrep, coreutils, bash, unzip, unar, wrapGAppsHook
-, appstream, desktop-file-utils }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, appstream
+, bash
+, coreutils
+, curl
+, desktop-file-utils
+, glib
+, gnugrep
+, gobject-introspection
+, gtk3
+, html2text
+, libgee
+, libxml2
+, meson
+, ninja
+, pantheon
+, pkg-config
+, poppler
+, poppler_utils
+, python3
+, sqlite
+, unar
+, unzip
+, vala
+, webkitgtk
+, wrapGAppsHook
+}:
 
 stdenv.mkDerivation rec {
   pname = "bookworm";
-  version = "1.1.2";
+  version = "unstable-2022-01-09";
 
   src = fetchFromGitHub {
     owner = "babluboy";
     repo = pname;
-    rev = version;
-    sha256 = "0w0rlyahpgx0l6inkbj106agbnr2czil0vdcy1zzv70apnjz488j";
+    rev = "f3df858ce748a6bbc43f03a6e261ff76a6d7d303";
+    hash = "sha256-mLyJfblF5WnWBV3rX1ZRupccou4t5mBpo3W7+ECNMVI=";
   };
 
   nativeBuildInputs = [
     bash
-    gobject-introspection
-    libxml2
     meson
     ninja
     pkg-config
-    python3
     vala
     wrapGAppsHook
   ];
 
   buildInputs = [
-    pantheon.elementary-icon-theme
-    pantheon.granite
+    appstream
+    desktop-file-utils
     glib
-    libgee
+    gobject-introspection
     gtk3
     html2text
+    libgee
+    libxml2
+    pantheon.granite
     poppler
-    python2
+    python3
     sqlite
     webkitgtk
-    appstream
-    desktop-file-utils
   ];
 
   postPatch = ''
@@ -58,13 +82,13 @@ stdenv.mkDerivation rec {
     patchShebangs $out/share/bookworm/scripts/tasks/*.sh
   '';
 
-   meta = with lib; {
-     description = "A simple, focused eBook reader";
-     longDescription = ''
-       Read the books you love without having to worry about different format complexities like epub, pdf, mobi, cbr, etc.
-     '';
-     homepage = "https://babluboy.github.io/bookworm/";
-     license = licenses.gpl3Plus;
-     platforms = platforms.linux;
-   };
- }
+  meta = with lib; {
+    description = "A simple, focused eBook reader";
+    longDescription = ''
+      Read the books you love without having to worry about different format complexities like epub, pdf, mobi, cbr, etc.
+    '';
+    homepage = "https://babluboy.github.io/bookworm/";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/office/elementary-planner/default.nix b/nixpkgs/pkgs/applications/office/elementary-planner/default.nix
index d07133e9065e..54ad0753c72e 100644
--- a/nixpkgs/pkgs/applications/office/elementary-planner/default.nix
+++ b/nixpkgs/pkgs/applications/office/elementary-planner/default.nix
@@ -64,14 +64,27 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
+    # The GTK theme has been renamed in elementary OS 6
+    # https://github.com/elementary/flatpak-platform/blob/6.1.0/io.elementary.Sdk.json#L182
+    # Remove this in https://github.com/NixOS/nixpkgs/pull/159249
+    substituteInPlace src/Application.vala \
+      --replace '"gtk-theme-name", "elementary"' '"gtk-theme-name", "io.elementary.stylesheet.blueberry"'
+
+    # Fix build with vala 0.56
+    # https://github.com/alainm23/planner/pull/884
+    substituteInPlace src/Application.vala \
+      --replace "public const OptionEntry[] PLANNER_OPTIONS" "private const OptionEntry[] PLANNER_OPTIONS"
+
     chmod +x build-aux/meson/post_install.py
     patchShebangs build-aux/meson/post_install.py
   '';
 
   preFixup = ''
     gappsWrapperArgs+=(
-      # the theme is hardcoded
+      # The GTK theme is hardcoded.
       --prefix XDG_DATA_DIRS : "${pantheon.elementary-gtk-theme}/share"
+      # The icon theme is hardcoded.
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
     )
   '';
 
diff --git a/nixpkgs/pkgs/applications/office/jameica/default.nix b/nixpkgs/pkgs/applications/office/jameica/default.nix
index 767a4202ae86..d5c4dcb65011 100644
--- a/nixpkgs/pkgs/applications/office/jameica/default.nix
+++ b/nixpkgs/pkgs/applications/office/jameica/default.nix
@@ -4,7 +4,6 @@ let
   _version = "2.10.1";
   _build = "482";
   version = "${_version}-${_build}";
-  name = "jameica-${version}";
 
   swtSystem = if stdenv.hostPlatform.system == "i686-linux" then "linux"
   else if stdenv.hostPlatform.system == "x86_64-linux" then "linux64"
@@ -22,7 +21,8 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  inherit name version;
+  pname = "jameica";
+  inherit version;
 
   nativeBuildInputs = [ ant jdk makeWrapper ];
   buildInputs = lib.optionals stdenv.isLinux [ gtk2 glib xorg.libXtst ]
@@ -42,12 +42,12 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
-    mkdir -p $out/libexec $out/lib $out/bin $out/share/{applications,${name},java}/
+    mkdir -p $out/libexec $out/lib $out/bin $out/share/{applications,jameica-${version},java}/
 
     # copy libraries except SWT
-    cp $(find lib -type f -iname '*.jar' | grep -ve 'swt/.*/swt.jar') $out/share/${name}/
+    cp $(find lib -type f -iname '*.jar' | grep -ve 'swt/.*/swt.jar') $out/share/jameica-${version}/
     # copy platform-specific SWT
-    cp lib/swt/${swtSystem}/swt.jar $out/share/${name}/
+    cp lib/swt/${swtSystem}/swt.jar $out/share/jameica-${version}/
 
     install -Dm644 releases/${_version}-*/jameica/jameica.jar $out/share/java/
     install -Dm644 plugin.xml $out/share/java/
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
     cp ${desktopItem}/share/applications/* $out/share/applications/
 
     makeWrapper ${jre}/bin/java $out/bin/jameica \
-      --add-flags "-cp $out/share/java/jameica.jar:$out/share/${name}/* ${
+      --add-flags "-cp $out/share/java/jameica.jar:$out/share/jameica-${version}/* ${
         lib.optionalString stdenv.isDarwin ''-Xdock:name="Jameica" -XstartOnFirstThread''
       } de.willuhn.jameica.Main" \
       --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath buildInputs} \
diff --git a/nixpkgs/pkgs/applications/office/libreoffice/default.nix b/nixpkgs/pkgs/applications/office/libreoffice/default.nix
index aac85b9d4008..5ebde5e10dec 100644
--- a/nixpkgs/pkgs/applications/office/libreoffice/default.nix
+++ b/nixpkgs/pkgs/applications/office/libreoffice/default.nix
@@ -82,7 +82,15 @@ in (mkDrv rec {
     tar -xf ${srcs.translations}
   '';
 
-  patches = [ ./skip-failed-test-with-icu70.patch ];
+  patches = [
+    ./skip-failed-test-with-icu70.patch
+
+    # Fix build with poppler 22.03
+    (fetchurl {
+      url = "https://github.com/archlinux/svntogit-packages/raw/f82958b9538f86e41b51f1ba7134968d2f3788d1/trunk/poppler-22.03.0.patch";
+      sha256 = "5h4qJmx6Q3Q3dHUlSi8JXBziN2mAswGVWk5aDTLTwls=";
+    })
+  ];
 
   ### QT/KDE
   #
@@ -110,6 +118,7 @@ in (mkDrv rec {
       'GPGMEPP_CFLAGS=-I${gpgme.dev}/include/gpgme++'
   '' + lib.optionalString kdeIntegration ''
       substituteInPlace configure.ac \
+        --replace kcoreaddons_version.h KCoreAddons/kcoreaddons_version.h \
         --replace '$QT5INC'             ${qtbase.dev}/include \
         --replace '$QT5LIB'             ${qtbase.out}/lib \
         --replace '-I$qt5_incdir '      '-I${qtx11extras.dev}/include '\
diff --git a/nixpkgs/pkgs/applications/office/micropad/default.nix b/nixpkgs/pkgs/applications/office/micropad/default.nix
new file mode 100644
index 000000000000..a4ac00b3b6d0
--- /dev/null
+++ b/nixpkgs/pkgs/applications/office/micropad/default.nix
@@ -0,0 +1,101 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, fetchzip
+, makeWrapper
+, makeDesktopItem
+, mkYarnPackage
+, electron
+, desktopToDarwinBundle
+, copyDesktopItems
+}:
+let
+  executableName = "micropad";
+  electron_exec =
+    if stdenv.isDarwin
+    then "${electron}/Applications/Electron.app/Contents/MacOS/Electron"
+    else "${electron}/bin/electron";
+in
+  mkYarnPackage rec {
+    pname = "micropad";
+    version = "3.30.6";
+
+    src = fetchFromGitHub {
+      owner = "MicroPad";
+      repo = "Micropad-Electron";
+      rev = "v${version}";
+      sha256 = "sha256-v3hnHG6FMW2xBU/DnenqjFizQv/OZ9cW99n/3SoENe8=";
+    };
+
+    micropad-core = fetchzip {
+      url = "https://github.com/MicroPad/MicroPad-Core/releases/download/v${version}/micropad.tar.xz";
+      hash = "sha256-aqshYbVrQg6tYtTlO91FGiH7DuueOA0OU5KGCVc7XvI=";
+    };
+
+    packageJSON = ./package.json;
+    yarnLock = ./yarn.lock;
+    yarnNix = ./yarn.nix;
+
+    nativeBuildInputs = [ copyDesktopItems makeWrapper ]
+      ++ lib.optionals stdenv.isDarwin [ desktopToDarwinBundle ];
+
+    buildPhase = ''
+      runHook preBuild
+      pushd deps/micropad/
+      yarn --offline build
+      popd
+      runHook postBuild
+    '';
+
+    installPhase = ''
+      runHook preInstall
+
+      # resources
+      mkdir -p "$out/share/"
+      cp -r './deps/micropad' "$out/share/micropad"
+      ln -s '${micropad-core}' "$out/share/micropad/core"
+      rm "$out/share/micropad/node_modules"
+      cp -r './node_modules' "$out/share/micropad"
+
+      # icons
+      for icon in $out/share/micropad/build/icons/*.png; do
+        mkdir -p "$out/share/icons/hicolor/$(basename $icon .png | sed -e 's/^icon-//')/apps"
+        ln -s "$icon" "$out/share/icons/hicolor/$(basename $icon .png | sed -e 's/^icon-//')/apps/micropad.png"
+      done
+
+      # executable wrapper
+      makeWrapper '${electron_exec}' "$out/bin/${executableName}" \
+        --add-flags "$out/share/micropad" \
+        --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}"
+
+      runHook postInstall
+    '';
+
+    # Do not attempt generating a tarball for micropad again.
+    # note: `doDist = false;` does not work.
+    distPhase = ''
+      true
+    '';
+
+    # The desktop item properties should be kept in sync with data from upstream:
+    # https://github.com/MicroPad/MicroPad-Electron/blob/master/package.json
+    desktopItems = [
+      (makeDesktopItem {
+        name = "micropad";
+        exec = "${executableName} %u";
+        icon = "micropad";
+        desktopName = "µPad";
+        startupWMClass = "µPad";
+        comment = meta.description;
+        categories = ["Office"];
+      })
+    ];
+
+    meta = with lib; {
+      description = "A powerful note-taking app that helps you organise + take notes without restrictions";
+      homepage = "https://getmicropad.com/";
+      license = licenses.mpl20;
+      maintainers = with maintainers; [rhysmdnz];
+      inherit (electron.meta) platforms;
+    };
+  }
diff --git a/nixpkgs/pkgs/applications/office/micropad/package.json b/nixpkgs/pkgs/applications/office/micropad/package.json
new file mode 100644
index 000000000000..784aad7be11a
--- /dev/null
+++ b/nixpkgs/pkgs/applications/office/micropad/package.json
@@ -0,0 +1,87 @@
+{
+  "name": "micropad",
+  "version": "3.30.5",
+  "description": "A powerful note-taking app that helps you organise + take notes without restrictions.",
+  "main": "main.js",
+  "scripts": {
+    "start": "yarn build && yarn electron . --is-dev --no-sandbox",
+    "build": "yarn tsc -p tsconfig.json",
+    "update-core": "rm -rf core && rm -rf tmp && mkdir tmp && wget https://github.com/MicroPad/MicroPad-Core/releases/download/v${npm_package_version}/micropad.tar.xz -P ./tmp && cd tmp && tar -xf micropad.tar.xz && rm build/*.map && rm build/static/*/*.map && cp -r build ../core && cd .. && rm -rf tmp",
+    "pack": "yarn build && yarn electron-builder --dir",
+    "dist": "yarn build && yarn electron-builder"
+  },
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/MicroPad/Electron.git"
+  },
+  "author": {
+    "name": "Nick Webster",
+    "email": "nick@nick.geek.nz"
+  },
+  "license": "MPL-2.0",
+  "bugs": {
+    "url": "https://github.com/MicroPad/Electron/issues"
+  },
+  "homepage": "https://getmicropad.com",
+  "devDependencies": {
+    "electron": "^17.1.0",
+    "electron-builder": "^23.0.2",
+    "typescript": "~4.5.4"
+  },
+  "dependencies": {
+    "dictionary-en": "^3.0.0",
+    "dictionary-en-au": "^2.1.1",
+    "electron-context-menu": "^3.1.2",
+    "localforage": "^1.10.0",
+    "typo-js": "^1.2.1"
+  },
+  "build": {
+    "appId": "com.getmicropad.micropad",
+    "productName": "µPad",
+    "publish": {
+      "provider": "github",
+      "releaseType": "release"
+    },
+    "asarUnpack": [
+      "preload.js"
+    ],
+    "linux": {
+      "target": [
+        "tar.gz",
+        "AppImage",
+        "snap",
+        "deb",
+        "rpm",
+        "pacman"
+      ],
+      "executableName": "micropad",
+      "category": "Office",
+      "icon": "build/icons"
+    },
+    "pacman": {
+      "depends": [
+        "gtk3"
+      ]
+    },
+    "snap": {
+      "publish": {
+        "provider": "github",
+        "releaseType": "release"
+      }
+    },
+    "mac": {
+      "target": {
+        "target": "dmg",
+        "arch": "universal"
+      },
+      "category": "public.app-category.productivity",
+      "identity": null
+    },
+    "win": {
+      "target": [
+        "nsis",
+        "portable"
+      ]
+    }
+  }
+}
diff --git a/nixpkgs/pkgs/applications/office/micropad/yarn.lock b/nixpkgs/pkgs/applications/office/micropad/yarn.lock
new file mode 100644
index 000000000000..24c4dd8ed54f
--- /dev/null
+++ b/nixpkgs/pkgs/applications/office/micropad/yarn.lock
@@ -0,0 +1,2006 @@
+# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
+# yarn lockfile v1
+
+
+"7zip-bin@~5.1.1":
+  version "5.1.1"
+  resolved "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-5.1.1.tgz#9274ec7460652f9c632c59addf24efb1684ef876"
+  integrity sha512-sAP4LldeWNz0lNzmTird3uWfFDWWTeg6V/MsmyyLR9X1idwKBWIgt/ZvinqQldJm3LecKEs1emkbquO6PCiLVQ==
+
+"@develar/schema-utils@~2.6.5":
+  version "2.6.5"
+  resolved "https://registry.yarnpkg.com/@develar/schema-utils/-/schema-utils-2.6.5.tgz#3ece22c5838402419a6e0425f85742b961d9b6c6"
+  integrity sha512-0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==
+  dependencies:
+    ajv "^6.12.0"
+    ajv-keywords "^3.4.1"
+
+"@electron/get@^1.13.0":
+  version "1.14.1"
+  resolved "https://registry.yarnpkg.com/@electron/get/-/get-1.14.1.tgz#16ba75f02dffb74c23965e72d617adc721d27f40"
+  integrity sha512-BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw==
+  dependencies:
+    debug "^4.1.1"
+    env-paths "^2.2.0"
+    fs-extra "^8.1.0"
+    got "^9.6.0"
+    progress "^2.0.3"
+    semver "^6.2.0"
+    sumchecker "^3.0.1"
+  optionalDependencies:
+    global-agent "^3.0.0"
+    global-tunnel-ng "^2.7.1"
+
+"@electron/universal@1.2.0":
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/@electron/universal/-/universal-1.2.0.tgz#518cac72bccd79c00bf41345119e6fdbabdb871d"
+  integrity sha512-eu20BwNsrMPKoe2bZ3/l9c78LclDvxg3PlVXrQf3L50NaUuW5M59gbPytI+V4z7/QMrohUHetQaU0ou+p1UG9Q==
+  dependencies:
+    "@malept/cross-spawn-promise" "^1.1.0"
+    asar "^3.1.0"
+    debug "^4.3.1"
+    dir-compare "^2.4.0"
+    fs-extra "^9.0.1"
+    minimatch "^3.0.4"
+    plist "^3.0.4"
+
+"@malept/cross-spawn-promise@^1.1.0":
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz#504af200af6b98e198bce768bc1730c6936ae01d"
+  integrity sha512-RTBGWL5FWQcg9orDOCcp4LvItNzUPcyEU9bwaeJX0rJ1IQxzucC48Y0/sQLp/g6t99IQgAlGIaesJS+gTn7tVQ==
+  dependencies:
+    cross-spawn "^7.0.1"
+
+"@malept/flatpak-bundler@^0.4.0":
+  version "0.4.0"
+  resolved "https://registry.yarnpkg.com/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz#e8a32c30a95d20c2b1bb635cc580981a06389858"
+  integrity sha512-9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==
+  dependencies:
+    debug "^4.1.1"
+    fs-extra "^9.0.0"
+    lodash "^4.17.15"
+    tmp-promise "^3.0.2"
+
+"@sindresorhus/is@^0.14.0":
+  version "0.14.0"
+  resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea"
+  integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==
+
+"@szmarczak/http-timer@^1.1.2":
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421"
+  integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==
+  dependencies:
+    defer-to-connect "^1.0.1"
+
+"@tootallnate/once@2":
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf"
+  integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==
+
+"@types/debug@^4.1.6":
+  version "4.1.7"
+  resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.7.tgz#7cc0ea761509124709b8b2d1090d8f6c17aadb82"
+  integrity sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==
+  dependencies:
+    "@types/ms" "*"
+
+"@types/fs-extra@^9.0.11":
+  version "9.0.13"
+  resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.13.tgz#7594fbae04fe7f1918ce8b3d213f74ff44ac1f45"
+  integrity sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==
+  dependencies:
+    "@types/node" "*"
+
+"@types/glob@^7.1.1":
+  version "7.2.0"
+  resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb"
+  integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==
+  dependencies:
+    "@types/minimatch" "*"
+    "@types/node" "*"
+
+"@types/minimatch@*":
+  version "3.0.5"
+  resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40"
+  integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==
+
+"@types/ms@*":
+  version "0.7.31"
+  resolved "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.31.tgz#31b7ca6407128a3d2bbc27fe2d21b345397f6197"
+  integrity sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==
+
+"@types/node@*":
+  version "17.0.21"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.21.tgz#864b987c0c68d07b4345845c3e63b75edd143644"
+  integrity sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==
+
+"@types/node@^14.6.2":
+  version "14.18.12"
+  resolved "https://registry.yarnpkg.com/@types/node/-/node-14.18.12.tgz#0d4557fd3b94497d793efd4e7d92df2f83b4ef24"
+  integrity sha512-q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==
+
+"@types/plist@^3.0.1":
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/@types/plist/-/plist-3.0.2.tgz#61b3727bba0f5c462fe333542534a0c3e19ccb01"
+  integrity sha512-ULqvZNGMv0zRFvqn8/4LSPtnmN4MfhlPNtJCTpKuIIxGVGZ2rYWzFXrvEBoh9CVyqSE7D6YFRJ1hydLHI6kbWw==
+  dependencies:
+    "@types/node" "*"
+    xmlbuilder ">=11.0.1"
+
+"@types/verror@^1.10.3":
+  version "1.10.5"
+  resolved "https://registry.yarnpkg.com/@types/verror/-/verror-1.10.5.tgz#2a1413aded46e67a1fe2386800e291123ed75eb1"
+  integrity sha512-9UjMCHK5GPgQRoNbqdLIAvAy0EInuiqbW0PBMtVP6B5B2HQJlvoJHM+KodPZMEjOa5VkSc+5LH7xy+cUzQdmHw==
+
+"@types/yargs-parser@*":
+  version "21.0.0"
+  resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b"
+  integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==
+
+"@types/yargs@^17.0.1":
+  version "17.0.10"
+  resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.10.tgz#591522fce85d8739bca7b8bb90d048e4478d186a"
+  integrity sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==
+  dependencies:
+    "@types/yargs-parser" "*"
+
+agent-base@6:
+  version "6.0.2"
+  resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77"
+  integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==
+  dependencies:
+    debug "4"
+
+ajv-keywords@^3.4.1:
+  version "3.5.2"
+  resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d"
+  integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==
+
+ajv@^6.10.0, ajv@^6.12.0:
+  version "6.12.6"
+  resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
+  integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
+  dependencies:
+    fast-deep-equal "^3.1.1"
+    fast-json-stable-stringify "^2.0.0"
+    json-schema-traverse "^0.4.1"
+    uri-js "^4.2.2"
+
+ansi-align@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59"
+  integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==
+  dependencies:
+    string-width "^4.1.0"
+
+ansi-regex@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
+  integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
+
+ansi-styles@^3.2.1:
+  version "3.2.1"
+  resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
+  integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
+  dependencies:
+    color-convert "^1.9.0"
+
+ansi-styles@^4.0.0, ansi-styles@^4.1.0:
+  version "4.3.0"
+  resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
+  integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
+  dependencies:
+    color-convert "^2.0.1"
+
+app-builder-bin@4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-4.0.0.tgz#1df8e654bd1395e4a319d82545c98667d7eed2f0"
+  integrity sha512-xwdG0FJPQMe0M0UA4Tz0zEB8rBJTRA5a476ZawAqiBkMv16GRK5xpXThOjMaEOFnZ6zabejjG4J3da0SXG63KA==
+
+app-builder-lib@23.0.2:
+  version "23.0.2"
+  resolved "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-23.0.2.tgz#43f168a233812d7b65bee21962c1a9d1a62d30c4"
+  integrity sha512-2ytlOKavGQVvVujsGajJURtyrXHRXWIqHTzzZKUtYNrJUbDG2HcPZN7aktf+SDBeoXX0Lp/QA6dBpBpSRuG6rQ==
+  dependencies:
+    "7zip-bin" "~5.1.1"
+    "@develar/schema-utils" "~2.6.5"
+    "@electron/universal" "1.2.0"
+    "@malept/flatpak-bundler" "^0.4.0"
+    async-exit-hook "^2.0.1"
+    bluebird-lst "^1.0.9"
+    builder-util "23.0.2"
+    builder-util-runtime "9.0.0"
+    chromium-pickle-js "^0.2.0"
+    debug "^4.3.2"
+    ejs "^3.1.6"
+    electron-osx-sign "^0.6.0"
+    electron-publish "23.0.2"
+    form-data "^4.0.0"
+    fs-extra "^10.0.0"
+    hosted-git-info "^4.0.2"
+    is-ci "^3.0.0"
+    isbinaryfile "^4.0.8"
+    js-yaml "^4.1.0"
+    lazy-val "^1.0.5"
+    minimatch "^3.0.4"
+    read-config-file "6.2.0"
+    sanitize-filename "^1.6.3"
+    semver "^7.3.5"
+    temp-file "^3.4.0"
+
+argparse@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
+  integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
+
+asar@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/asar/-/asar-3.1.0.tgz#70b0509449fe3daccc63beb4d3c7d2e24d3c6473"
+  integrity sha512-vyxPxP5arcAqN4F/ebHd/HhwnAiZtwhglvdmc7BR2f0ywbVNTOpSeyhLDbGXtE/y58hv1oC75TaNIXutnsOZsQ==
+  dependencies:
+    chromium-pickle-js "^0.2.0"
+    commander "^5.0.0"
+    glob "^7.1.6"
+    minimatch "^3.0.4"
+  optionalDependencies:
+    "@types/glob" "^7.1.1"
+
+assert-plus@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
+  integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=
+
+astral-regex@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31"
+  integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==
+
+async-exit-hook@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/async-exit-hook/-/async-exit-hook-2.0.1.tgz#8bd8b024b0ec9b1c01cccb9af9db29bd717dfaf3"
+  integrity sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==
+
+async@0.9.x:
+  version "0.9.2"
+  resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d"
+  integrity sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=
+
+asynckit@^0.4.0:
+  version "0.4.0"
+  resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
+  integrity sha1-x57Zf380y48robyXkLzDZkdLS3k=
+
+at-least-node@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2"
+  integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==
+
+balanced-match@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
+  integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
+
+base64-js@^1.3.1, base64-js@^1.5.1:
+  version "1.5.1"
+  resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
+  integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
+
+bluebird-lst@^1.0.9:
+  version "1.0.9"
+  resolved "https://registry.yarnpkg.com/bluebird-lst/-/bluebird-lst-1.0.9.tgz#a64a0e4365658b9ab5fe875eb9dfb694189bb41c"
+  integrity sha512-7B1Rtx82hjnSD4PGLAjVWeYH3tHAcVUmChh85a3lltKQm6FresXh9ErQo6oAv6CqxttczC3/kEg8SY5NluPuUw==
+  dependencies:
+    bluebird "^3.5.5"
+
+bluebird@^3.5.0, bluebird@^3.5.5:
+  version "3.7.2"
+  resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
+  integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==
+
+boolean@^3.0.1:
+  version "3.2.0"
+  resolved "https://registry.yarnpkg.com/boolean/-/boolean-3.2.0.tgz#9e5294af4e98314494cbb17979fa54ca159f116b"
+  integrity sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==
+
+boxen@^5.0.0:
+  version "5.1.2"
+  resolved "https://registry.yarnpkg.com/boxen/-/boxen-5.1.2.tgz#788cb686fc83c1f486dfa8a40c68fc2b831d2b50"
+  integrity sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==
+  dependencies:
+    ansi-align "^3.0.0"
+    camelcase "^6.2.0"
+    chalk "^4.1.0"
+    cli-boxes "^2.2.1"
+    string-width "^4.2.2"
+    type-fest "^0.20.2"
+    widest-line "^3.1.0"
+    wrap-ansi "^7.0.0"
+
+brace-expansion@^1.1.7:
+  version "1.1.11"
+  resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
+  integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
+  dependencies:
+    balanced-match "^1.0.0"
+    concat-map "0.0.1"
+
+buffer-alloc-unsafe@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0"
+  integrity sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==
+
+buffer-alloc@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec"
+  integrity sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==
+  dependencies:
+    buffer-alloc-unsafe "^1.1.0"
+    buffer-fill "^1.0.0"
+
+buffer-crc32@~0.2.3:
+  version "0.2.13"
+  resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242"
+  integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=
+
+buffer-equal@1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.0.tgz#59616b498304d556abd466966b22eeda3eca5fbe"
+  integrity sha1-WWFrSYME1Var1GaWayLu2j7KX74=
+
+buffer-fill@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c"
+  integrity sha1-+PeLdniYiO858gXNY39o5wISKyw=
+
+buffer-from@^1.0.0:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
+  integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
+
+buffer@^5.1.0:
+  version "5.7.1"
+  resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0"
+  integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==
+  dependencies:
+    base64-js "^1.3.1"
+    ieee754 "^1.1.13"
+
+builder-util-runtime@9.0.0:
+  version "9.0.0"
+  resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-9.0.0.tgz#3a40ba7382712ccdb24471567f91d7c167e00830"
+  integrity sha512-SkpEtSmTkREDHRJnxKEv43aAYp8sYWY8fxYBhGLBLOBIRXeaIp6Kv3lBgSD7uR8jQtC7CA659sqJrpSV6zNvSA==
+  dependencies:
+    debug "^4.3.2"
+    sax "^1.2.4"
+
+builder-util@23.0.2:
+  version "23.0.2"
+  resolved "https://registry.yarnpkg.com/builder-util/-/builder-util-23.0.2.tgz#da84a971076397e3a671726f4bb96f0c2214fea7"
+  integrity sha512-HaNHL3axNW/Ms8O1mDx3I07G+ZnZ/TKSWWvorOAPau128cdt9S+lNx5ocbx8deSaHHX4WFXSZVHh3mxlaKJNgg==
+  dependencies:
+    "7zip-bin" "~5.1.1"
+    "@types/debug" "^4.1.6"
+    "@types/fs-extra" "^9.0.11"
+    app-builder-bin "4.0.0"
+    bluebird-lst "^1.0.9"
+    builder-util-runtime "9.0.0"
+    chalk "^4.1.1"
+    cross-spawn "^7.0.3"
+    debug "^4.3.2"
+    fs-extra "^10.0.0"
+    http-proxy-agent "^5.0.0"
+    https-proxy-agent "^5.0.0"
+    is-ci "^3.0.0"
+    js-yaml "^4.1.0"
+    source-map-support "^0.5.19"
+    stat-mode "^1.0.0"
+    temp-file "^3.4.0"
+
+cacheable-request@^6.0.0:
+  version "6.1.0"
+  resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912"
+  integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==
+  dependencies:
+    clone-response "^1.0.2"
+    get-stream "^5.1.0"
+    http-cache-semantics "^4.0.0"
+    keyv "^3.0.0"
+    lowercase-keys "^2.0.0"
+    normalize-url "^4.1.0"
+    responselike "^1.0.2"
+
+camelcase@^6.2.0:
+  version "6.3.0"
+  resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a"
+  integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==
+
+chalk@^2.4.2:
+  version "2.4.2"
+  resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
+  integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
+  dependencies:
+    ansi-styles "^3.2.1"
+    escape-string-regexp "^1.0.5"
+    supports-color "^5.3.0"
+
+chalk@^4.1.0, chalk@^4.1.1:
+  version "4.1.2"
+  resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
+  integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
+  dependencies:
+    ansi-styles "^4.1.0"
+    supports-color "^7.1.0"
+
+chromium-pickle-js@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz#04a106672c18b085ab774d983dfa3ea138f22205"
+  integrity sha1-BKEGZywYsIWrd02YPfo+oTjyIgU=
+
+ci-info@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46"
+  integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==
+
+ci-info@^3.2.0:
+  version "3.3.0"
+  resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.3.0.tgz#b4ed1fb6818dea4803a55c623041f9165d2066b2"
+  integrity sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw==
+
+cli-boxes@^2.2.1:
+  version "2.2.1"
+  resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f"
+  integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==
+
+cli-truncate@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7"
+  integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==
+  dependencies:
+    slice-ansi "^3.0.0"
+    string-width "^4.2.0"
+
+cliui@^7.0.2:
+  version "7.0.4"
+  resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f"
+  integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==
+  dependencies:
+    string-width "^4.2.0"
+    strip-ansi "^6.0.0"
+    wrap-ansi "^7.0.0"
+
+clone-response@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b"
+  integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=
+  dependencies:
+    mimic-response "^1.0.0"
+
+color-convert@^1.9.0:
+  version "1.9.3"
+  resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
+  integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
+  dependencies:
+    color-name "1.1.3"
+
+color-convert@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
+  integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
+  dependencies:
+    color-name "~1.1.4"
+
+color-name@1.1.3:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
+  integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
+
+color-name@~1.1.4:
+  version "1.1.4"
+  resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
+  integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
+
+colors@1.0.3:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b"
+  integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=
+
+combined-stream@^1.0.8:
+  version "1.0.8"
+  resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
+  integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
+  dependencies:
+    delayed-stream "~1.0.0"
+
+commander@2.9.0:
+  version "2.9.0"
+  resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4"
+  integrity sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=
+  dependencies:
+    graceful-readlink ">= 1.0.0"
+
+commander@^5.0.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae"
+  integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==
+
+compare-version@^0.1.2:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/compare-version/-/compare-version-0.1.2.tgz#0162ec2d9351f5ddd59a9202cba935366a725080"
+  integrity sha1-AWLsLZNR9d3VmpICy6k1NmpyUIA=
+
+concat-map@0.0.1:
+  version "0.0.1"
+  resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
+  integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
+
+concat-stream@^1.6.2:
+  version "1.6.2"
+  resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
+  integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
+  dependencies:
+    buffer-from "^1.0.0"
+    inherits "^2.0.3"
+    readable-stream "^2.2.2"
+    typedarray "^0.0.6"
+
+config-chain@^1.1.11:
+  version "1.1.13"
+  resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4"
+  integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==
+  dependencies:
+    ini "^1.3.4"
+    proto-list "~1.2.1"
+
+configstore@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96"
+  integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==
+  dependencies:
+    dot-prop "^5.2.0"
+    graceful-fs "^4.1.2"
+    make-dir "^3.0.0"
+    unique-string "^2.0.0"
+    write-file-atomic "^3.0.0"
+    xdg-basedir "^4.0.0"
+
+core-util-is@1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
+  integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
+
+core-util-is@~1.0.0:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
+  integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
+
+crc@^3.8.0:
+  version "3.8.0"
+  resolved "https://registry.yarnpkg.com/crc/-/crc-3.8.0.tgz#ad60269c2c856f8c299e2c4cc0de4556914056c6"
+  integrity sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==
+  dependencies:
+    buffer "^5.1.0"
+
+cross-spawn@^7.0.1, cross-spawn@^7.0.3:
+  version "7.0.3"
+  resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
+  integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
+  dependencies:
+    path-key "^3.1.0"
+    shebang-command "^2.0.0"
+    which "^2.0.1"
+
+crypto-random-string@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5"
+  integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==
+
+debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2:
+  version "4.3.4"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
+  integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
+  dependencies:
+    ms "2.1.2"
+
+debug@^2.6.8, debug@^2.6.9:
+  version "2.6.9"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
+  integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
+  dependencies:
+    ms "2.0.0"
+
+decompress-response@^3.3.0:
+  version "3.3.0"
+  resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3"
+  integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=
+  dependencies:
+    mimic-response "^1.0.0"
+
+deep-extend@^0.6.0:
+  version "0.6.0"
+  resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
+  integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
+
+defer-to-connect@^1.0.1:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591"
+  integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==
+
+define-properties@^1.1.3:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
+  integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==
+  dependencies:
+    object-keys "^1.0.12"
+
+delayed-stream@~1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
+  integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk=
+
+detect-node@^2.0.4:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1"
+  integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==
+
+dictionary-en-au@^2.1.1:
+  version "2.3.0"
+  resolved "https://registry.yarnpkg.com/dictionary-en-au/-/dictionary-en-au-2.3.0.tgz#261e8e8d0bd776afcf7ff49722815656438d5be9"
+  integrity sha512-KoEotpXPCyCgZ5DHlexHyzFfNwPnv9VupeCrp6r+JrtEkycPmZYbQiXF+cXz9NJr1gXy0AMEpzZ8UfxF40+8OQ==
+
+dictionary-en@^3.0.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/dictionary-en/-/dictionary-en-3.1.0.tgz#2883598f02c9ccfb8acf7aa513797b50eeec77d2"
+  integrity sha512-dNjhoQagh7GX3YUBdbzehy/+wR2GLhkdpkxF8wMEGIXxMrH6aqzMn/8CHP5xnF85qbv288gCt4XtPQEVCOmTeA==
+
+dir-compare@^2.4.0:
+  version "2.4.0"
+  resolved "https://registry.yarnpkg.com/dir-compare/-/dir-compare-2.4.0.tgz#785c41dc5f645b34343a4eafc50b79bac7f11631"
+  integrity sha512-l9hmu8x/rjVC9Z2zmGzkhOEowZvW7pmYws5CWHutg8u1JgvsKWMx7Q/UODeu4djLZ4FgW5besw5yvMQnBHzuCA==
+  dependencies:
+    buffer-equal "1.0.0"
+    colors "1.0.3"
+    commander "2.9.0"
+    minimatch "3.0.4"
+
+dmg-builder@23.0.2:
+  version "23.0.2"
+  resolved "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-23.0.2.tgz#06ac1a551e9b6ea2826b4b2063dc2f6fc775fd86"
+  integrity sha512-kfJZRKbIN6kM/Vuzrme8SGSA+M/F0VvNrSGa6idWXbqtxIbGZZMF1QxVrXJbxSayf0Jh4hPy6NUNZAfbX9/m3g==
+  dependencies:
+    app-builder-lib "23.0.2"
+    builder-util "23.0.2"
+    builder-util-runtime "9.0.0"
+    fs-extra "^10.0.0"
+    iconv-lite "^0.6.2"
+    js-yaml "^4.1.0"
+  optionalDependencies:
+    dmg-license "^1.0.9"
+
+dmg-license@^1.0.9:
+  version "1.0.11"
+  resolved "https://registry.yarnpkg.com/dmg-license/-/dmg-license-1.0.11.tgz#7b3bc3745d1b52be7506b4ee80cb61df6e4cd79a"
+  integrity sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==
+  dependencies:
+    "@types/plist" "^3.0.1"
+    "@types/verror" "^1.10.3"
+    ajv "^6.10.0"
+    crc "^3.8.0"
+    iconv-corefoundation "^1.1.7"
+    plist "^3.0.4"
+    smart-buffer "^4.0.2"
+    verror "^1.10.0"
+
+dot-prop@^5.2.0:
+  version "5.3.0"
+  resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88"
+  integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==
+  dependencies:
+    is-obj "^2.0.0"
+
+dotenv-expand@^5.1.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0"
+  integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==
+
+dotenv@^9.0.2:
+  version "9.0.2"
+  resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-9.0.2.tgz#dacc20160935a37dea6364aa1bef819fb9b6ab05"
+  integrity sha512-I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg==
+
+duplexer3@^0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2"
+  integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=
+
+ejs@^3.1.6:
+  version "3.1.6"
+  resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.6.tgz#5bfd0a0689743bb5268b3550cceeebbc1702822a"
+  integrity sha512-9lt9Zse4hPucPkoP7FHDF0LQAlGyF9JVpnClFLFH3aSSbxmyoqINRpp/9wePWJTUl4KOQwRL72Iw3InHPDkoGw==
+  dependencies:
+    jake "^10.6.1"
+
+electron-builder@^23.0.2:
+  version "23.0.2"
+  resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-23.0.2.tgz#55982959ac91b72f397a936afba2eb989cd3fc1a"
+  integrity sha512-NG8ywuoHZpq6uk/2fEo9XVKBnjyGwNCnCyPxgGLdEk6xLAXr6nkF54+kqdhrDw4E8alwxc/TPHxUY3G0B8k/Dw==
+  dependencies:
+    "@types/yargs" "^17.0.1"
+    app-builder-lib "23.0.2"
+    builder-util "23.0.2"
+    builder-util-runtime "9.0.0"
+    chalk "^4.1.1"
+    dmg-builder "23.0.2"
+    fs-extra "^10.0.0"
+    is-ci "^3.0.0"
+    lazy-val "^1.0.5"
+    read-config-file "6.2.0"
+    update-notifier "^5.1.0"
+    yargs "^17.0.1"
+
+electron-context-menu@^3.1.2:
+  version "3.1.2"
+  resolved "https://registry.yarnpkg.com/electron-context-menu/-/electron-context-menu-3.1.2.tgz#0f550e47df39cb25c03e0f4bf840ce5c9fefcdd5"
+  integrity sha512-nNzu4w14n7mOR+4cLjRC9cEFqGUsAY76seOm0sw3f4OxEfX/d75m7HYekyp5b+0m7Ixy2KN/Mrljw1zLmpyV2w==
+  dependencies:
+    cli-truncate "^2.1.0"
+    electron-dl "^3.2.1"
+    electron-is-dev "^2.0.0"
+
+electron-dl@^3.2.1:
+  version "3.3.0"
+  resolved "https://registry.yarnpkg.com/electron-dl/-/electron-dl-3.3.0.tgz#4e422e276c627373ba61fcf3f92ffa088988db1a"
+  integrity sha512-Zwaz/OMGPIfBLV2SQH4sTsdDOs/U4y5AOHfremMBXEpjIxX+SiTx845DZAvJJwgb5hfowyWOBLiJhd/emBNLLQ==
+  dependencies:
+    ext-name "^5.0.0"
+    pupa "^2.0.1"
+    unused-filename "^2.1.0"
+
+electron-is-dev@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/electron-is-dev/-/electron-is-dev-2.0.0.tgz#833487a069b8dad21425c67a19847d9064ab19bd"
+  integrity sha512-3X99K852Yoqu9AcW50qz3ibYBWY79/pBhlMCab8ToEWS48R0T9tyxRiQhwylE7zQdXrMnx2JKqUJyMPmt5FBqA==
+
+electron-osx-sign@^0.6.0:
+  version "0.6.0"
+  resolved "https://registry.yarnpkg.com/electron-osx-sign/-/electron-osx-sign-0.6.0.tgz#9b69c191d471d9458ef5b1e4fdd52baa059f1bb8"
+  integrity sha512-+hiIEb2Xxk6eDKJ2FFlpofCnemCbjbT5jz+BKGpVBrRNT3kWTGs4DfNX6IzGwgi33hUcXF+kFs9JW+r6Wc1LRg==
+  dependencies:
+    bluebird "^3.5.0"
+    compare-version "^0.1.2"
+    debug "^2.6.8"
+    isbinaryfile "^3.0.2"
+    minimist "^1.2.0"
+    plist "^3.0.1"
+
+electron-publish@23.0.2:
+  version "23.0.2"
+  resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-23.0.2.tgz#aa11419ae57b847df4beb63b95e2b2a43161957c"
+  integrity sha512-8gMYgWqv96lc83FCm85wd+tEyxNTJQK7WKyPkNkO8GxModZqt1GO8S+/vAnFGxilS/7vsrVRXFfqiCDUCSuxEg==
+  dependencies:
+    "@types/fs-extra" "^9.0.11"
+    builder-util "23.0.2"
+    builder-util-runtime "9.0.0"
+    chalk "^4.1.1"
+    fs-extra "^10.0.0"
+    lazy-val "^1.0.5"
+    mime "^2.5.2"
+
+electron@^17.1.0:
+  version "17.1.2"
+  resolved "https://registry.yarnpkg.com/electron/-/electron-17.1.2.tgz#b4e4a0df883d9a9854cf865efa2bb00b12d55b1d"
+  integrity sha512-hqKQaUIRWX5Y2eAD8FZINWD/e5TKdpkbBYbkcZmJS4Bd1PKQsaDVc9h5xoA8zZQkPymE9rss+swjRpAFurOPGQ==
+  dependencies:
+    "@electron/get" "^1.13.0"
+    "@types/node" "^14.6.2"
+    extract-zip "^1.0.3"
+
+emoji-regex@^8.0.0:
+  version "8.0.0"
+  resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
+  integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
+
+encodeurl@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
+  integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=
+
+end-of-stream@^1.1.0:
+  version "1.4.4"
+  resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
+  integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
+  dependencies:
+    once "^1.4.0"
+
+env-paths@^2.2.0:
+  version "2.2.1"
+  resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2"
+  integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==
+
+es6-error@^4.1.1:
+  version "4.1.1"
+  resolved "https://registry.yarnpkg.com/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d"
+  integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==
+
+escalade@^3.1.1:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
+  integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
+
+escape-goat@^2.0.0:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-2.1.1.tgz#1b2dc77003676c457ec760b2dc68edb648188675"
+  integrity sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==
+
+escape-string-regexp@^1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
+  integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
+
+escape-string-regexp@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
+  integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
+
+ext-list@^2.0.0:
+  version "2.2.2"
+  resolved "https://registry.yarnpkg.com/ext-list/-/ext-list-2.2.2.tgz#0b98e64ed82f5acf0f2931babf69212ef52ddd37"
+  integrity sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==
+  dependencies:
+    mime-db "^1.28.0"
+
+ext-name@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/ext-name/-/ext-name-5.0.0.tgz#70781981d183ee15d13993c8822045c506c8f0a6"
+  integrity sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==
+  dependencies:
+    ext-list "^2.0.0"
+    sort-keys-length "^1.0.0"
+
+extract-zip@^1.0.3:
+  version "1.7.0"
+  resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.7.0.tgz#556cc3ae9df7f452c493a0cfb51cc30277940927"
+  integrity sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==
+  dependencies:
+    concat-stream "^1.6.2"
+    debug "^2.6.9"
+    mkdirp "^0.5.4"
+    yauzl "^2.10.0"
+
+extsprintf@^1.2.0:
+  version "1.4.1"
+  resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07"
+  integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==
+
+fast-deep-equal@^3.1.1:
+  version "3.1.3"
+  resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
+  integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
+
+fast-json-stable-stringify@^2.0.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
+  integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
+
+fd-slicer@~1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e"
+  integrity sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=
+  dependencies:
+    pend "~1.2.0"
+
+filelist@^1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.2.tgz#80202f21462d4d1c2e214119b1807c1bc0380e5b"
+  integrity sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==
+  dependencies:
+    minimatch "^3.0.4"
+
+form-data@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
+  integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==
+  dependencies:
+    asynckit "^0.4.0"
+    combined-stream "^1.0.8"
+    mime-types "^2.1.12"
+
+fs-extra@^10.0.0:
+  version "10.0.1"
+  resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.1.tgz#27de43b4320e833f6867cc044bfce29fdf0ef3b8"
+  integrity sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag==
+  dependencies:
+    graceful-fs "^4.2.0"
+    jsonfile "^6.0.1"
+    universalify "^2.0.0"
+
+fs-extra@^8.1.0:
+  version "8.1.0"
+  resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0"
+  integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==
+  dependencies:
+    graceful-fs "^4.2.0"
+    jsonfile "^4.0.0"
+    universalify "^0.1.0"
+
+fs-extra@^9.0.0, fs-extra@^9.0.1:
+  version "9.1.0"
+  resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d"
+  integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==
+  dependencies:
+    at-least-node "^1.0.0"
+    graceful-fs "^4.2.0"
+    jsonfile "^6.0.1"
+    universalify "^2.0.0"
+
+fs.realpath@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
+  integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
+
+get-caller-file@^2.0.5:
+  version "2.0.5"
+  resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
+  integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
+
+get-stream@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5"
+  integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==
+  dependencies:
+    pump "^3.0.0"
+
+get-stream@^5.1.0:
+  version "5.2.0"
+  resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3"
+  integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==
+  dependencies:
+    pump "^3.0.0"
+
+glob@^7.1.3, glob@^7.1.6:
+  version "7.2.0"
+  resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
+  integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==
+  dependencies:
+    fs.realpath "^1.0.0"
+    inflight "^1.0.4"
+    inherits "2"
+    minimatch "^3.0.4"
+    once "^1.3.0"
+    path-is-absolute "^1.0.0"
+
+global-agent@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/global-agent/-/global-agent-3.0.0.tgz#ae7cd31bd3583b93c5a16437a1afe27cc33a1ab6"
+  integrity sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==
+  dependencies:
+    boolean "^3.0.1"
+    es6-error "^4.1.1"
+    matcher "^3.0.0"
+    roarr "^2.15.3"
+    semver "^7.3.2"
+    serialize-error "^7.0.1"
+
+global-dirs@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-3.0.0.tgz#70a76fe84ea315ab37b1f5576cbde7d48ef72686"
+  integrity sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==
+  dependencies:
+    ini "2.0.0"
+
+global-tunnel-ng@^2.7.1:
+  version "2.7.1"
+  resolved "https://registry.yarnpkg.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz#d03b5102dfde3a69914f5ee7d86761ca35d57d8f"
+  integrity sha512-4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==
+  dependencies:
+    encodeurl "^1.0.2"
+    lodash "^4.17.10"
+    npm-conf "^1.1.3"
+    tunnel "^0.0.6"
+
+globalthis@^1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.2.tgz#2a235d34f4d8036219f7e34929b5de9e18166b8b"
+  integrity sha512-ZQnSFO1la8P7auIOQECnm0sSuoMeaSq0EEdXMBFF2QJO4uNcwbyhSgG3MruWNbFTqCLmxVwGOl7LZ9kASvHdeQ==
+  dependencies:
+    define-properties "^1.1.3"
+
+got@^9.6.0:
+  version "9.6.0"
+  resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85"
+  integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==
+  dependencies:
+    "@sindresorhus/is" "^0.14.0"
+    "@szmarczak/http-timer" "^1.1.2"
+    cacheable-request "^6.0.0"
+    decompress-response "^3.3.0"
+    duplexer3 "^0.1.4"
+    get-stream "^4.1.0"
+    lowercase-keys "^1.0.1"
+    mimic-response "^1.0.1"
+    p-cancelable "^1.0.0"
+    to-readable-stream "^1.0.0"
+    url-parse-lax "^3.0.0"
+
+graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0:
+  version "4.2.9"
+  resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96"
+  integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==
+
+"graceful-readlink@>= 1.0.0":
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725"
+  integrity sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=
+
+has-flag@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
+  integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
+
+has-flag@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
+  integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
+
+has-yarn@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77"
+  integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==
+
+hosted-git-info@^4.0.2:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224"
+  integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==
+  dependencies:
+    lru-cache "^6.0.0"
+
+http-cache-semantics@^4.0.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390"
+  integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==
+
+http-proxy-agent@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43"
+  integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==
+  dependencies:
+    "@tootallnate/once" "2"
+    agent-base "6"
+    debug "4"
+
+https-proxy-agent@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2"
+  integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==
+  dependencies:
+    agent-base "6"
+    debug "4"
+
+iconv-corefoundation@^1.1.7:
+  version "1.1.7"
+  resolved "https://registry.yarnpkg.com/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz#31065e6ab2c9272154c8b0821151e2c88f1b002a"
+  integrity sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==
+  dependencies:
+    cli-truncate "^2.1.0"
+    node-addon-api "^1.6.3"
+
+iconv-lite@^0.6.2:
+  version "0.6.3"
+  resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501"
+  integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==
+  dependencies:
+    safer-buffer ">= 2.1.2 < 3.0.0"
+
+ieee754@^1.1.13:
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
+  integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
+
+immediate@~3.0.5:
+  version "3.0.6"
+  resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b"
+  integrity sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=
+
+import-lazy@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43"
+  integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=
+
+imurmurhash@^0.1.4:
+  version "0.1.4"
+  resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
+  integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
+
+inflight@^1.0.4:
+  version "1.0.6"
+  resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
+  integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
+  dependencies:
+    once "^1.3.0"
+    wrappy "1"
+
+inherits@2, inherits@^2.0.3, inherits@~2.0.3:
+  version "2.0.4"
+  resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
+  integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
+
+ini@2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/ini/-/ini-2.0.0.tgz#e5fd556ecdd5726be978fa1001862eacb0a94bc5"
+  integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==
+
+ini@^1.3.4, ini@~1.3.0:
+  version "1.3.8"
+  resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c"
+  integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
+
+is-ci@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c"
+  integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==
+  dependencies:
+    ci-info "^2.0.0"
+
+is-ci@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.1.tgz#db6ecbed1bd659c43dac0f45661e7674103d1867"
+  integrity sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==
+  dependencies:
+    ci-info "^3.2.0"
+
+is-fullwidth-code-point@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
+  integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
+
+is-installed-globally@^0.4.0:
+  version "0.4.0"
+  resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.4.0.tgz#9a0fd407949c30f86eb6959ef1b7994ed0b7b520"
+  integrity sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==
+  dependencies:
+    global-dirs "^3.0.0"
+    is-path-inside "^3.0.2"
+
+is-npm@^5.0.0:
+  version "5.0.0"
+  resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-5.0.0.tgz#43e8d65cc56e1b67f8d47262cf667099193f45a8"
+  integrity sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==
+
+is-obj@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982"
+  integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==
+
+is-path-inside@^3.0.2:
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283"
+  integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==
+
+is-plain-obj@^1.0.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e"
+  integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4=
+
+is-typedarray@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
+  integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
+
+is-yarn-global@^0.3.0:
+  version "0.3.0"
+  resolved "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232"
+  integrity sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==
+
+isarray@~1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
+  integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
+
+isbinaryfile@^3.0.2:
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-3.0.3.tgz#5d6def3edebf6e8ca8cae9c30183a804b5f8be80"
+  integrity sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==
+  dependencies:
+    buffer-alloc "^1.2.0"
+
+isbinaryfile@^4.0.8:
+  version "4.0.8"
+  resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.8.tgz#5d34b94865bd4946633ecc78a026fc76c5b11fcf"
+  integrity sha512-53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w==
+
+isexe@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
+  integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
+
+jake@^10.6.1:
+  version "10.8.2"
+  resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.2.tgz#ebc9de8558160a66d82d0eadc6a2e58fbc500a7b"
+  integrity sha512-eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A==
+  dependencies:
+    async "0.9.x"
+    chalk "^2.4.2"
+    filelist "^1.0.1"
+    minimatch "^3.0.4"
+
+js-yaml@^4.1.0:
+  version "4.1.0"
+  resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"
+  integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==
+  dependencies:
+    argparse "^2.0.1"
+
+json-buffer@3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898"
+  integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=
+
+json-schema-traverse@^0.4.1:
+  version "0.4.1"
+  resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
+  integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
+
+json-stringify-safe@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
+  integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=
+
+json5@^2.2.0:
+  version "2.2.0"
+  resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3"
+  integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==
+  dependencies:
+    minimist "^1.2.5"
+
+jsonfile@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"
+  integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=
+  optionalDependencies:
+    graceful-fs "^4.1.6"
+
+jsonfile@^6.0.1:
+  version "6.1.0"
+  resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae"
+  integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==
+  dependencies:
+    universalify "^2.0.0"
+  optionalDependencies:
+    graceful-fs "^4.1.6"
+
+keyv@^3.0.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9"
+  integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==
+  dependencies:
+    json-buffer "3.0.0"
+
+latest-version@^5.1.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-5.1.0.tgz#119dfe908fe38d15dfa43ecd13fa12ec8832face"
+  integrity sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==
+  dependencies:
+    package-json "^6.3.0"
+
+lazy-val@^1.0.4, lazy-val@^1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/lazy-val/-/lazy-val-1.0.5.tgz#6cf3b9f5bc31cee7ee3e369c0832b7583dcd923d"
+  integrity sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==
+
+lie@3.1.1:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/lie/-/lie-3.1.1.tgz#9a436b2cc7746ca59de7a41fa469b3efb76bd87e"
+  integrity sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=
+  dependencies:
+    immediate "~3.0.5"
+
+localforage@^1.10.0:
+  version "1.10.0"
+  resolved "https://registry.yarnpkg.com/localforage/-/localforage-1.10.0.tgz#5c465dc5f62b2807c3a84c0c6a1b1b3212781dd4"
+  integrity sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==
+  dependencies:
+    lie "3.1.1"
+
+lodash@^4.17.10, lodash@^4.17.15:
+  version "4.17.21"
+  resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
+  integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
+
+lowercase-keys@^1.0.0, lowercase-keys@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f"
+  integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==
+
+lowercase-keys@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479"
+  integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==
+
+lru-cache@^6.0.0:
+  version "6.0.0"
+  resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
+  integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
+  dependencies:
+    yallist "^4.0.0"
+
+make-dir@^3.0.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
+  integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==
+  dependencies:
+    semver "^6.0.0"
+
+matcher@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/matcher/-/matcher-3.0.0.tgz#bd9060f4c5b70aa8041ccc6f80368760994f30ca"
+  integrity sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==
+  dependencies:
+    escape-string-regexp "^4.0.0"
+
+mime-db@1.52.0, mime-db@^1.28.0:
+  version "1.52.0"
+  resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
+  integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
+
+mime-types@^2.1.12:
+  version "2.1.35"
+  resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
+  integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
+  dependencies:
+    mime-db "1.52.0"
+
+mime@^2.5.2:
+  version "2.6.0"
+  resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367"
+  integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==
+
+mimic-response@^1.0.0, mimic-response@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
+  integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==
+
+minimatch@3.0.4:
+  version "3.0.4"
+  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
+  integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
+  dependencies:
+    brace-expansion "^1.1.7"
+
+minimatch@^3.0.4:
+  version "3.1.2"
+  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
+  integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
+  dependencies:
+    brace-expansion "^1.1.7"
+
+minimist@^1.2.0, minimist@^1.2.5:
+  version "1.2.5"
+  resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
+  integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
+
+mkdirp@^0.5.4:
+  version "0.5.5"
+  resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
+  integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
+  dependencies:
+    minimist "^1.2.5"
+
+modify-filename@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/modify-filename/-/modify-filename-1.1.0.tgz#9a2dec83806fbb2d975f22beec859ca26b393aa1"
+  integrity sha1-mi3sg4Bvuy2XXyK+7IWcoms5OqE=
+
+ms@2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
+  integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
+
+ms@2.1.2:
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
+  integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
+
+node-addon-api@^1.6.3:
+  version "1.7.2"
+  resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.2.tgz#3df30b95720b53c24e59948b49532b662444f54d"
+  integrity sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==
+
+normalize-url@^4.1.0:
+  version "4.5.1"
+  resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a"
+  integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==
+
+npm-conf@^1.1.3:
+  version "1.1.3"
+  resolved "https://registry.yarnpkg.com/npm-conf/-/npm-conf-1.1.3.tgz#256cc47bd0e218c259c4e9550bf413bc2192aff9"
+  integrity sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==
+  dependencies:
+    config-chain "^1.1.11"
+    pify "^3.0.0"
+
+object-keys@^1.0.12:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
+  integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
+
+once@^1.3.0, once@^1.3.1, once@^1.4.0:
+  version "1.4.0"
+  resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
+  integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
+  dependencies:
+    wrappy "1"
+
+p-cancelable@^1.0.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc"
+  integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==
+
+package-json@^6.3.0:
+  version "6.5.0"
+  resolved "https://registry.yarnpkg.com/package-json/-/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0"
+  integrity sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==
+  dependencies:
+    got "^9.6.0"
+    registry-auth-token "^4.0.0"
+    registry-url "^5.0.0"
+    semver "^6.2.0"
+
+path-exists@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
+  integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
+
+path-is-absolute@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
+  integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
+
+path-key@^3.1.0:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
+  integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
+
+pend@~1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50"
+  integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA=
+
+pify@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
+  integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=
+
+plist@^3.0.1, plist@^3.0.4:
+  version "3.0.4"
+  resolved "https://registry.yarnpkg.com/plist/-/plist-3.0.4.tgz#a62df837e3aed2bb3b735899d510c4f186019cbe"
+  integrity sha512-ksrr8y9+nXOxQB2osVNqrgvX/XQPOXaU4BQMKjYq8PvaY1U18mo+fKgBSwzK+luSyinOuPae956lSVcBwxlAMg==
+  dependencies:
+    base64-js "^1.5.1"
+    xmlbuilder "^9.0.7"
+
+prepend-http@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897"
+  integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=
+
+process-nextick-args@~2.0.0:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
+  integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
+
+progress@^2.0.3:
+  version "2.0.3"
+  resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
+  integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==
+
+proto-list@~1.2.1:
+  version "1.2.4"
+  resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849"
+  integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=
+
+pump@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
+  integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==
+  dependencies:
+    end-of-stream "^1.1.0"
+    once "^1.3.1"
+
+punycode@^2.1.0:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
+  integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
+
+pupa@^2.0.1, pupa@^2.1.1:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/pupa/-/pupa-2.1.1.tgz#f5e8fd4afc2c5d97828faa523549ed8744a20d62"
+  integrity sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==
+  dependencies:
+    escape-goat "^2.0.0"
+
+rc@^1.2.8:
+  version "1.2.8"
+  resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
+  integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==
+  dependencies:
+    deep-extend "^0.6.0"
+    ini "~1.3.0"
+    minimist "^1.2.0"
+    strip-json-comments "~2.0.1"
+
+read-config-file@6.2.0:
+  version "6.2.0"
+  resolved "https://registry.yarnpkg.com/read-config-file/-/read-config-file-6.2.0.tgz#71536072330bcd62ba814f91458b12add9fc7ade"
+  integrity sha512-gx7Pgr5I56JtYz+WuqEbQHj/xWo+5Vwua2jhb1VwM4Wid5PqYmZ4i00ZB0YEGIfkVBsCv9UrjgyqCiQfS/Oosg==
+  dependencies:
+    dotenv "^9.0.2"
+    dotenv-expand "^5.1.0"
+    js-yaml "^4.1.0"
+    json5 "^2.2.0"
+    lazy-val "^1.0.4"
+
+readable-stream@^2.2.2:
+  version "2.3.7"
+  resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
+  integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
+  dependencies:
+    core-util-is "~1.0.0"
+    inherits "~2.0.3"
+    isarray "~1.0.0"
+    process-nextick-args "~2.0.0"
+    safe-buffer "~5.1.1"
+    string_decoder "~1.1.1"
+    util-deprecate "~1.0.1"
+
+registry-auth-token@^4.0.0:
+  version "4.2.1"
+  resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.1.tgz#6d7b4006441918972ccd5fedcd41dc322c79b250"
+  integrity sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==
+  dependencies:
+    rc "^1.2.8"
+
+registry-url@^5.0.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009"
+  integrity sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==
+  dependencies:
+    rc "^1.2.8"
+
+require-directory@^2.1.1:
+  version "2.1.1"
+  resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
+  integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I=
+
+responselike@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7"
+  integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=
+  dependencies:
+    lowercase-keys "^1.0.0"
+
+rimraf@^3.0.0:
+  version "3.0.2"
+  resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
+  integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
+  dependencies:
+    glob "^7.1.3"
+
+roarr@^2.15.3:
+  version "2.15.4"
+  resolved "https://registry.yarnpkg.com/roarr/-/roarr-2.15.4.tgz#f5fe795b7b838ccfe35dc608e0282b9eba2e7afd"
+  integrity sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==
+  dependencies:
+    boolean "^3.0.1"
+    detect-node "^2.0.4"
+    globalthis "^1.0.1"
+    json-stringify-safe "^5.0.1"
+    semver-compare "^1.0.0"
+    sprintf-js "^1.1.2"
+
+safe-buffer@~5.1.0, safe-buffer@~5.1.1:
+  version "5.1.2"
+  resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
+  integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
+
+"safer-buffer@>= 2.1.2 < 3.0.0":
+  version "2.1.2"
+  resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
+  integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
+
+sanitize-filename@^1.6.3:
+  version "1.6.3"
+  resolved "https://registry.yarnpkg.com/sanitize-filename/-/sanitize-filename-1.6.3.tgz#755ebd752045931977e30b2025d340d7c9090378"
+  integrity sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==
+  dependencies:
+    truncate-utf8-bytes "^1.0.0"
+
+sax@^1.2.4:
+  version "1.2.4"
+  resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
+  integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
+
+semver-compare@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc"
+  integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w=
+
+semver-diff@^3.1.1:
+  version "3.1.1"
+  resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-3.1.1.tgz#05f77ce59f325e00e2706afd67bb506ddb1ca32b"
+  integrity sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==
+  dependencies:
+    semver "^6.3.0"
+
+semver@^6.0.0, semver@^6.2.0, semver@^6.3.0:
+  version "6.3.0"
+  resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
+  integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
+
+semver@^7.3.2, semver@^7.3.4, semver@^7.3.5:
+  version "7.3.5"
+  resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
+  integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==
+  dependencies:
+    lru-cache "^6.0.0"
+
+serialize-error@^7.0.1:
+  version "7.0.1"
+  resolved "https://registry.yarnpkg.com/serialize-error/-/serialize-error-7.0.1.tgz#f1360b0447f61ffb483ec4157c737fab7d778e18"
+  integrity sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==
+  dependencies:
+    type-fest "^0.13.1"
+
+shebang-command@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
+  integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
+  dependencies:
+    shebang-regex "^3.0.0"
+
+shebang-regex@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
+  integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
+
+signal-exit@^3.0.2:
+  version "3.0.7"
+  resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9"
+  integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
+
+slice-ansi@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787"
+  integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==
+  dependencies:
+    ansi-styles "^4.0.0"
+    astral-regex "^2.0.0"
+    is-fullwidth-code-point "^3.0.0"
+
+smart-buffer@^4.0.2:
+  version "4.2.0"
+  resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae"
+  integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==
+
+sort-keys-length@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/sort-keys-length/-/sort-keys-length-1.0.1.tgz#9cb6f4f4e9e48155a6aa0671edd336ff1479a188"
+  integrity sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg=
+  dependencies:
+    sort-keys "^1.0.0"
+
+sort-keys@^1.0.0:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad"
+  integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0=
+  dependencies:
+    is-plain-obj "^1.0.0"
+
+source-map-support@^0.5.19:
+  version "0.5.21"
+  resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"
+  integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==
+  dependencies:
+    buffer-from "^1.0.0"
+    source-map "^0.6.0"
+
+source-map@^0.6.0:
+  version "0.6.1"
+  resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
+  integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
+
+sprintf-js@^1.1.2:
+  version "1.1.2"
+  resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673"
+  integrity sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==
+
+stat-mode@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/stat-mode/-/stat-mode-1.0.0.tgz#68b55cb61ea639ff57136f36b216a291800d1465"
+  integrity sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==
+
+string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3:
+  version "4.2.3"
+  resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
+  integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
+  dependencies:
+    emoji-regex "^8.0.0"
+    is-fullwidth-code-point "^3.0.0"
+    strip-ansi "^6.0.1"
+
+string_decoder@~1.1.1:
+  version "1.1.1"
+  resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
+  integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
+  dependencies:
+    safe-buffer "~5.1.0"
+
+strip-ansi@^6.0.0, strip-ansi@^6.0.1:
+  version "6.0.1"
+  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
+  integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
+  dependencies:
+    ansi-regex "^5.0.1"
+
+strip-json-comments@~2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
+  integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
+
+sumchecker@^3.0.1:
+  version "3.0.1"
+  resolved "https://registry.yarnpkg.com/sumchecker/-/sumchecker-3.0.1.tgz#6377e996795abb0b6d348e9b3e1dfb24345a8e42"
+  integrity sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==
+  dependencies:
+    debug "^4.1.0"
+
+supports-color@^5.3.0:
+  version "5.5.0"
+  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
+  integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
+  dependencies:
+    has-flag "^3.0.0"
+
+supports-color@^7.1.0:
+  version "7.2.0"
+  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
+  integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
+  dependencies:
+    has-flag "^4.0.0"
+
+temp-file@^3.4.0:
+  version "3.4.0"
+  resolved "https://registry.yarnpkg.com/temp-file/-/temp-file-3.4.0.tgz#766ea28911c683996c248ef1a20eea04d51652c7"
+  integrity sha512-C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==
+  dependencies:
+    async-exit-hook "^2.0.1"
+    fs-extra "^10.0.0"
+
+tmp-promise@^3.0.2:
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/tmp-promise/-/tmp-promise-3.0.3.tgz#60a1a1cc98c988674fcbfd23b6e3367bdeac4ce7"
+  integrity sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==
+  dependencies:
+    tmp "^0.2.0"
+
+tmp@^0.2.0:
+  version "0.2.1"
+  resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14"
+  integrity sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==
+  dependencies:
+    rimraf "^3.0.0"
+
+to-readable-stream@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771"
+  integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==
+
+truncate-utf8-bytes@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz#405923909592d56f78a5818434b0b78489ca5f2b"
+  integrity sha1-QFkjkJWS1W94pYGENLC3hInKXys=
+  dependencies:
+    utf8-byte-length "^1.0.1"
+
+tunnel@^0.0.6:
+  version "0.0.6"
+  resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c"
+  integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==
+
+type-fest@^0.13.1:
+  version "0.13.1"
+  resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.13.1.tgz#0172cb5bce80b0bd542ea348db50c7e21834d934"
+  integrity sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==
+
+type-fest@^0.20.2:
+  version "0.20.2"
+  resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4"
+  integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==
+
+typedarray-to-buffer@^3.1.5:
+  version "3.1.5"
+  resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"
+  integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==
+  dependencies:
+    is-typedarray "^1.0.0"
+
+typedarray@^0.0.6:
+  version "0.0.6"
+  resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
+  integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
+
+typescript@~4.5.4:
+  version "4.5.5"
+  resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.5.tgz#d8c953832d28924a9e3d37c73d729c846c5896f3"
+  integrity sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==
+
+typo-js@^1.2.1:
+  version "1.2.1"
+  resolved "https://registry.yarnpkg.com/typo-js/-/typo-js-1.2.1.tgz#334a0d8c3f6c56f2f1e15fdf6c31677793cbbe9b"
+  integrity sha512-bTGLjbD3WqZDR3CgEFkyi9Q/SS2oM29ipXrWfDb4M74ea69QwKAECVceYpaBu0GfdnASMg9Qfl67ttB23nePHg==
+
+unique-string@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d"
+  integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==
+  dependencies:
+    crypto-random-string "^2.0.0"
+
+universalify@^0.1.0:
+  version "0.1.2"
+  resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
+  integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
+
+universalify@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717"
+  integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==
+
+unused-filename@^2.1.0:
+  version "2.1.0"
+  resolved "https://registry.yarnpkg.com/unused-filename/-/unused-filename-2.1.0.tgz#33719c4e8d9644f32d2dec1bc8525c6aaeb4ba51"
+  integrity sha512-BMiNwJbuWmqCpAM1FqxCTD7lXF97AvfQC8Kr/DIeA6VtvhJaMDupZ82+inbjl5yVP44PcxOuCSxye1QMS0wZyg==
+  dependencies:
+    modify-filename "^1.1.0"
+    path-exists "^4.0.0"
+
+update-notifier@^5.1.0:
+  version "5.1.0"
+  resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-5.1.0.tgz#4ab0d7c7f36a231dd7316cf7729313f0214d9ad9"
+  integrity sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==
+  dependencies:
+    boxen "^5.0.0"
+    chalk "^4.1.0"
+    configstore "^5.0.1"
+    has-yarn "^2.1.0"
+    import-lazy "^2.1.0"
+    is-ci "^2.0.0"
+    is-installed-globally "^0.4.0"
+    is-npm "^5.0.0"
+    is-yarn-global "^0.3.0"
+    latest-version "^5.1.0"
+    pupa "^2.1.1"
+    semver "^7.3.4"
+    semver-diff "^3.1.1"
+    xdg-basedir "^4.0.0"
+
+uri-js@^4.2.2:
+  version "4.4.1"
+  resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
+  integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
+  dependencies:
+    punycode "^2.1.0"
+
+url-parse-lax@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c"
+  integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=
+  dependencies:
+    prepend-http "^2.0.0"
+
+utf8-byte-length@^1.0.1:
+  version "1.0.4"
+  resolved "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz#f45f150c4c66eee968186505ab93fcbb8ad6bf61"
+  integrity sha1-9F8VDExm7uloGGUFq5P8u4rWv2E=
+
+util-deprecate@~1.0.1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
+  integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
+
+verror@^1.10.0:
+  version "1.10.1"
+  resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.1.tgz#4bf09eeccf4563b109ed4b3d458380c972b0cdeb"
+  integrity sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==
+  dependencies:
+    assert-plus "^1.0.0"
+    core-util-is "1.0.2"
+    extsprintf "^1.2.0"
+
+which@^2.0.1:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
+  integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
+  dependencies:
+    isexe "^2.0.0"
+
+widest-line@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca"
+  integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==
+  dependencies:
+    string-width "^4.0.0"
+
+wrap-ansi@^7.0.0:
+  version "7.0.0"
+  resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
+  integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
+  dependencies:
+    ansi-styles "^4.0.0"
+    string-width "^4.1.0"
+    strip-ansi "^6.0.0"
+
+wrappy@1:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
+  integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
+
+write-file-atomic@^3.0.0:
+  version "3.0.3"
+  resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8"
+  integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==
+  dependencies:
+    imurmurhash "^0.1.4"
+    is-typedarray "^1.0.0"
+    signal-exit "^3.0.2"
+    typedarray-to-buffer "^3.1.5"
+
+xdg-basedir@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13"
+  integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==
+
+xmlbuilder@>=11.0.1:
+  version "15.1.1"
+  resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz#9dcdce49eea66d8d10b42cae94a79c3c8d0c2ec5"
+  integrity sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==
+
+xmlbuilder@^9.0.7:
+  version "9.0.7"
+  resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d"
+  integrity sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=
+
+y18n@^5.0.5:
+  version "5.0.8"
+  resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
+  integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
+
+yallist@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
+  integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
+
+yargs-parser@^21.0.0:
+  version "21.0.1"
+  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.1.tgz#0267f286c877a4f0f728fceb6f8a3e4cb95c6e35"
+  integrity sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==
+
+yargs@^17.0.1:
+  version "17.3.1"
+  resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.3.1.tgz#da56b28f32e2fd45aefb402ed9c26f42be4c07b9"
+  integrity sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==
+  dependencies:
+    cliui "^7.0.2"
+    escalade "^3.1.1"
+    get-caller-file "^2.0.5"
+    require-directory "^2.1.1"
+    string-width "^4.2.3"
+    y18n "^5.0.5"
+    yargs-parser "^21.0.0"
+
+yauzl@^2.10.0:
+  version "2.10.0"
+  resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9"
+  integrity sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=
+  dependencies:
+    buffer-crc32 "~0.2.3"
+    fd-slicer "~1.1.0"
diff --git a/nixpkgs/pkgs/applications/office/micropad/yarn.nix b/nixpkgs/pkgs/applications/office/micropad/yarn.nix
new file mode 100644
index 000000000000..5dbb77388ef0
--- /dev/null
+++ b/nixpkgs/pkgs/applications/office/micropad/yarn.nix
@@ -0,0 +1,2341 @@
+{ fetchurl, fetchgit, linkFarm, runCommand, gnutar }: rec {
+  offline_cache = linkFarm "offline" packages;
+  packages = [
+    {
+      name = "7zip_bin___7zip_bin_5.1.1.tgz";
+      path = fetchurl {
+        name = "7zip_bin___7zip_bin_5.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-5.1.1.tgz";
+        sha512 = "sAP4LldeWNz0lNzmTird3uWfFDWWTeg6V/MsmyyLR9X1idwKBWIgt/ZvinqQldJm3LecKEs1emkbquO6PCiLVQ==";
+      };
+    }
+    {
+      name = "_develar_schema_utils___schema_utils_2.6.5.tgz";
+      path = fetchurl {
+        name = "_develar_schema_utils___schema_utils_2.6.5.tgz";
+        url  = "https://registry.yarnpkg.com/@develar/schema-utils/-/schema-utils-2.6.5.tgz";
+        sha512 = "0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==";
+      };
+    }
+    {
+      name = "_electron_get___get_1.14.1.tgz";
+      path = fetchurl {
+        name = "_electron_get___get_1.14.1.tgz";
+        url  = "https://registry.yarnpkg.com/@electron/get/-/get-1.14.1.tgz";
+        sha512 = "BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw==";
+      };
+    }
+    {
+      name = "_electron_universal___universal_1.2.0.tgz";
+      path = fetchurl {
+        name = "_electron_universal___universal_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/@electron/universal/-/universal-1.2.0.tgz";
+        sha512 = "eu20BwNsrMPKoe2bZ3/l9c78LclDvxg3PlVXrQf3L50NaUuW5M59gbPytI+V4z7/QMrohUHetQaU0ou+p1UG9Q==";
+      };
+    }
+    {
+      name = "_malept_cross_spawn_promise___cross_spawn_promise_1.1.1.tgz";
+      path = fetchurl {
+        name = "_malept_cross_spawn_promise___cross_spawn_promise_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz";
+        sha512 = "RTBGWL5FWQcg9orDOCcp4LvItNzUPcyEU9bwaeJX0rJ1IQxzucC48Y0/sQLp/g6t99IQgAlGIaesJS+gTn7tVQ==";
+      };
+    }
+    {
+      name = "_malept_flatpak_bundler___flatpak_bundler_0.4.0.tgz";
+      path = fetchurl {
+        name = "_malept_flatpak_bundler___flatpak_bundler_0.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz";
+        sha512 = "9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==";
+      };
+    }
+    {
+      name = "_sindresorhus_is___is_0.14.0.tgz";
+      path = fetchurl {
+        name = "_sindresorhus_is___is_0.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz";
+        sha512 = "9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==";
+      };
+    }
+    {
+      name = "_szmarczak_http_timer___http_timer_1.1.2.tgz";
+      path = fetchurl {
+        name = "_szmarczak_http_timer___http_timer_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz";
+        sha512 = "XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==";
+      };
+    }
+    {
+      name = "_tootallnate_once___once_2.0.0.tgz";
+      path = fetchurl {
+        name = "_tootallnate_once___once_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz";
+        sha512 = "XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==";
+      };
+    }
+    {
+      name = "_types_debug___debug_4.1.7.tgz";
+      path = fetchurl {
+        name = "_types_debug___debug_4.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.7.tgz";
+        sha512 = "9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==";
+      };
+    }
+    {
+      name = "_types_fs_extra___fs_extra_9.0.13.tgz";
+      path = fetchurl {
+        name = "_types_fs_extra___fs_extra_9.0.13.tgz";
+        url  = "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.13.tgz";
+        sha512 = "nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==";
+      };
+    }
+    {
+      name = "_types_glob___glob_7.2.0.tgz";
+      path = fetchurl {
+        name = "_types_glob___glob_7.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz";
+        sha512 = "ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==";
+      };
+    }
+    {
+      name = "_types_minimatch___minimatch_3.0.5.tgz";
+      path = fetchurl {
+        name = "_types_minimatch___minimatch_3.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz";
+        sha512 = "Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==";
+      };
+    }
+    {
+      name = "_types_ms___ms_0.7.31.tgz";
+      path = fetchurl {
+        name = "_types_ms___ms_0.7.31.tgz";
+        url  = "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.31.tgz";
+        sha512 = "iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==";
+      };
+    }
+    {
+      name = "_types_node___node_17.0.21.tgz";
+      path = fetchurl {
+        name = "_types_node___node_17.0.21.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-17.0.21.tgz";
+        sha512 = "DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==";
+      };
+    }
+    {
+      name = "_types_node___node_14.18.12.tgz";
+      path = fetchurl {
+        name = "_types_node___node_14.18.12.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-14.18.12.tgz";
+        sha512 = "q4jlIR71hUpWTnGhXWcakgkZeHa3CCjcQcnuzU8M891BAWA2jHiziiWEPEkdS5pFsz7H9HJiy8BrK7tBRNrY7A==";
+      };
+    }
+    {
+      name = "_types_plist___plist_3.0.2.tgz";
+      path = fetchurl {
+        name = "_types_plist___plist_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/plist/-/plist-3.0.2.tgz";
+        sha512 = "ULqvZNGMv0zRFvqn8/4LSPtnmN4MfhlPNtJCTpKuIIxGVGZ2rYWzFXrvEBoh9CVyqSE7D6YFRJ1hydLHI6kbWw==";
+      };
+    }
+    {
+      name = "_types_verror___verror_1.10.5.tgz";
+      path = fetchurl {
+        name = "_types_verror___verror_1.10.5.tgz";
+        url  = "https://registry.yarnpkg.com/@types/verror/-/verror-1.10.5.tgz";
+        sha512 = "9UjMCHK5GPgQRoNbqdLIAvAy0EInuiqbW0PBMtVP6B5B2HQJlvoJHM+KodPZMEjOa5VkSc+5LH7xy+cUzQdmHw==";
+      };
+    }
+    {
+      name = "_types_yargs_parser___yargs_parser_21.0.0.tgz";
+      path = fetchurl {
+        name = "_types_yargs_parser___yargs_parser_21.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz";
+        sha512 = "iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==";
+      };
+    }
+    {
+      name = "_types_yargs___yargs_17.0.10.tgz";
+      path = fetchurl {
+        name = "_types_yargs___yargs_17.0.10.tgz";
+        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.10.tgz";
+        sha512 = "gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==";
+      };
+    }
+    {
+      name = "agent_base___agent_base_6.0.2.tgz";
+      path = fetchurl {
+        name = "agent_base___agent_base_6.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz";
+        sha512 = "RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==";
+      };
+    }
+    {
+      name = "ajv_keywords___ajv_keywords_3.5.2.tgz";
+      path = fetchurl {
+        name = "ajv_keywords___ajv_keywords_3.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz";
+        sha512 = "5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==";
+      };
+    }
+    {
+      name = "ajv___ajv_6.12.6.tgz";
+      path = fetchurl {
+        name = "ajv___ajv_6.12.6.tgz";
+        url  = "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz";
+        sha512 = "j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==";
+      };
+    }
+    {
+      name = "ansi_align___ansi_align_3.0.1.tgz";
+      path = fetchurl {
+        name = "ansi_align___ansi_align_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz";
+        sha512 = "IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==";
+      };
+    }
+    {
+      name = "ansi_regex___ansi_regex_5.0.1.tgz";
+      path = fetchurl {
+        name = "ansi_regex___ansi_regex_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz";
+        sha512 = "quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==";
+      };
+    }
+    {
+      name = "ansi_styles___ansi_styles_3.2.1.tgz";
+      path = fetchurl {
+        name = "ansi_styles___ansi_styles_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz";
+        sha512 = "VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==";
+      };
+    }
+    {
+      name = "ansi_styles___ansi_styles_4.3.0.tgz";
+      path = fetchurl {
+        name = "ansi_styles___ansi_styles_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz";
+        sha512 = "zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==";
+      };
+    }
+    {
+      name = "app_builder_bin___app_builder_bin_4.0.0.tgz";
+      path = fetchurl {
+        name = "app_builder_bin___app_builder_bin_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-4.0.0.tgz";
+        sha512 = "xwdG0FJPQMe0M0UA4Tz0zEB8rBJTRA5a476ZawAqiBkMv16GRK5xpXThOjMaEOFnZ6zabejjG4J3da0SXG63KA==";
+      };
+    }
+    {
+      name = "app_builder_lib___app_builder_lib_23.0.2.tgz";
+      path = fetchurl {
+        name = "app_builder_lib___app_builder_lib_23.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-23.0.2.tgz";
+        sha512 = "2ytlOKavGQVvVujsGajJURtyrXHRXWIqHTzzZKUtYNrJUbDG2HcPZN7aktf+SDBeoXX0Lp/QA6dBpBpSRuG6rQ==";
+      };
+    }
+    {
+      name = "argparse___argparse_2.0.1.tgz";
+      path = fetchurl {
+        name = "argparse___argparse_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz";
+        sha512 = "8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==";
+      };
+    }
+    {
+      name = "asar___asar_3.1.0.tgz";
+      path = fetchurl {
+        name = "asar___asar_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/asar/-/asar-3.1.0.tgz";
+        sha512 = "vyxPxP5arcAqN4F/ebHd/HhwnAiZtwhglvdmc7BR2f0ywbVNTOpSeyhLDbGXtE/y58hv1oC75TaNIXutnsOZsQ==";
+      };
+    }
+    {
+      name = "assert_plus___assert_plus_1.0.0.tgz";
+      path = fetchurl {
+        name = "assert_plus___assert_plus_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz";
+        sha1 = "8S4PPF13sLHN2RRpQuTpbB5N1SU=";
+      };
+    }
+    {
+      name = "astral_regex___astral_regex_2.0.0.tgz";
+      path = fetchurl {
+        name = "astral_regex___astral_regex_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz";
+        sha512 = "Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==";
+      };
+    }
+    {
+      name = "async_exit_hook___async_exit_hook_2.0.1.tgz";
+      path = fetchurl {
+        name = "async_exit_hook___async_exit_hook_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/async-exit-hook/-/async-exit-hook-2.0.1.tgz";
+        sha512 = "NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==";
+      };
+    }
+    {
+      name = "async___async_0.9.2.tgz";
+      path = fetchurl {
+        name = "async___async_0.9.2.tgz";
+        url  = "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz";
+        sha1 = "rqdNXmHB+JlhO/ZL2mbUx48v0X0=";
+      };
+    }
+    {
+      name = "asynckit___asynckit_0.4.0.tgz";
+      path = fetchurl {
+        name = "asynckit___asynckit_0.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz";
+        sha1 = "x57Zf380y48robyXkLzDZkdLS3k=";
+      };
+    }
+    {
+      name = "at_least_node___at_least_node_1.0.0.tgz";
+      path = fetchurl {
+        name = "at_least_node___at_least_node_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz";
+        sha512 = "+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==";
+      };
+    }
+    {
+      name = "balanced_match___balanced_match_1.0.2.tgz";
+      path = fetchurl {
+        name = "balanced_match___balanced_match_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz";
+        sha512 = "3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==";
+      };
+    }
+    {
+      name = "base64_js___base64_js_1.5.1.tgz";
+      path = fetchurl {
+        name = "base64_js___base64_js_1.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz";
+        sha512 = "AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==";
+      };
+    }
+    {
+      name = "bluebird_lst___bluebird_lst_1.0.9.tgz";
+      path = fetchurl {
+        name = "bluebird_lst___bluebird_lst_1.0.9.tgz";
+        url  = "https://registry.yarnpkg.com/bluebird-lst/-/bluebird-lst-1.0.9.tgz";
+        sha512 = "7B1Rtx82hjnSD4PGLAjVWeYH3tHAcVUmChh85a3lltKQm6FresXh9ErQo6oAv6CqxttczC3/kEg8SY5NluPuUw==";
+      };
+    }
+    {
+      name = "bluebird___bluebird_3.7.2.tgz";
+      path = fetchurl {
+        name = "bluebird___bluebird_3.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz";
+        sha512 = "XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==";
+      };
+    }
+    {
+      name = "boolean___boolean_3.2.0.tgz";
+      path = fetchurl {
+        name = "boolean___boolean_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/boolean/-/boolean-3.2.0.tgz";
+        sha512 = "d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==";
+      };
+    }
+    {
+      name = "boxen___boxen_5.1.2.tgz";
+      path = fetchurl {
+        name = "boxen___boxen_5.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/boxen/-/boxen-5.1.2.tgz";
+        sha512 = "9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==";
+      };
+    }
+    {
+      name = "brace_expansion___brace_expansion_1.1.11.tgz";
+      path = fetchurl {
+        name = "brace_expansion___brace_expansion_1.1.11.tgz";
+        url  = "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz";
+        sha512 = "iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==";
+      };
+    }
+    {
+      name = "buffer_alloc_unsafe___buffer_alloc_unsafe_1.1.0.tgz";
+      path = fetchurl {
+        name = "buffer_alloc_unsafe___buffer_alloc_unsafe_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz";
+        sha512 = "TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==";
+      };
+    }
+    {
+      name = "buffer_alloc___buffer_alloc_1.2.0.tgz";
+      path = fetchurl {
+        name = "buffer_alloc___buffer_alloc_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz";
+        sha512 = "CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==";
+      };
+    }
+    {
+      name = "buffer_crc32___buffer_crc32_0.2.13.tgz";
+      path = fetchurl {
+        name = "buffer_crc32___buffer_crc32_0.2.13.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz";
+        sha1 = "DTM+PwDqxQqhRUq9MO+MKl2ackI=";
+      };
+    }
+    {
+      name = "buffer_equal___buffer_equal_1.0.0.tgz";
+      path = fetchurl {
+        name = "buffer_equal___buffer_equal_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.0.tgz";
+        sha1 = "WWFrSYME1Var1GaWayLu2j7KX74=";
+      };
+    }
+    {
+      name = "buffer_fill___buffer_fill_1.0.0.tgz";
+      path = fetchurl {
+        name = "buffer_fill___buffer_fill_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz";
+        sha1 = "+PeLdniYiO858gXNY39o5wISKyw=";
+      };
+    }
+    {
+      name = "buffer_from___buffer_from_1.1.2.tgz";
+      path = fetchurl {
+        name = "buffer_from___buffer_from_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz";
+        sha512 = "E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==";
+      };
+    }
+    {
+      name = "buffer___buffer_5.7.1.tgz";
+      path = fetchurl {
+        name = "buffer___buffer_5.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz";
+        sha512 = "EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==";
+      };
+    }
+    {
+      name = "builder_util_runtime___builder_util_runtime_9.0.0.tgz";
+      path = fetchurl {
+        name = "builder_util_runtime___builder_util_runtime_9.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-9.0.0.tgz";
+        sha512 = "SkpEtSmTkREDHRJnxKEv43aAYp8sYWY8fxYBhGLBLOBIRXeaIp6Kv3lBgSD7uR8jQtC7CA659sqJrpSV6zNvSA==";
+      };
+    }
+    {
+      name = "builder_util___builder_util_23.0.2.tgz";
+      path = fetchurl {
+        name = "builder_util___builder_util_23.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/builder-util/-/builder-util-23.0.2.tgz";
+        sha512 = "HaNHL3axNW/Ms8O1mDx3I07G+ZnZ/TKSWWvorOAPau128cdt9S+lNx5ocbx8deSaHHX4WFXSZVHh3mxlaKJNgg==";
+      };
+    }
+    {
+      name = "cacheable_request___cacheable_request_6.1.0.tgz";
+      path = fetchurl {
+        name = "cacheable_request___cacheable_request_6.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz";
+        sha512 = "Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==";
+      };
+    }
+    {
+      name = "camelcase___camelcase_6.3.0.tgz";
+      path = fetchurl {
+        name = "camelcase___camelcase_6.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz";
+        sha512 = "Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==";
+      };
+    }
+    {
+      name = "chalk___chalk_2.4.2.tgz";
+      path = fetchurl {
+        name = "chalk___chalk_2.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz";
+        sha512 = "Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==";
+      };
+    }
+    {
+      name = "chalk___chalk_4.1.2.tgz";
+      path = fetchurl {
+        name = "chalk___chalk_4.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz";
+        sha512 = "oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==";
+      };
+    }
+    {
+      name = "chromium_pickle_js___chromium_pickle_js_0.2.0.tgz";
+      path = fetchurl {
+        name = "chromium_pickle_js___chromium_pickle_js_0.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz";
+        sha1 = "BKEGZywYsIWrd02YPfo+oTjyIgU=";
+      };
+    }
+    {
+      name = "ci_info___ci_info_2.0.0.tgz";
+      path = fetchurl {
+        name = "ci_info___ci_info_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz";
+        sha512 = "5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==";
+      };
+    }
+    {
+      name = "ci_info___ci_info_3.3.0.tgz";
+      path = fetchurl {
+        name = "ci_info___ci_info_3.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/ci-info/-/ci-info-3.3.0.tgz";
+        sha512 = "riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw==";
+      };
+    }
+    {
+      name = "cli_boxes___cli_boxes_2.2.1.tgz";
+      path = fetchurl {
+        name = "cli_boxes___cli_boxes_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz";
+        sha512 = "y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==";
+      };
+    }
+    {
+      name = "cli_truncate___cli_truncate_2.1.0.tgz";
+      path = fetchurl {
+        name = "cli_truncate___cli_truncate_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz";
+        sha512 = "n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==";
+      };
+    }
+    {
+      name = "cliui___cliui_7.0.4.tgz";
+      path = fetchurl {
+        name = "cliui___cliui_7.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz";
+        sha512 = "OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==";
+      };
+    }
+    {
+      name = "clone_response___clone_response_1.0.2.tgz";
+      path = fetchurl {
+        name = "clone_response___clone_response_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz";
+        sha1 = "0dyXOSAxTfZ/vrlCI7TuNQI56Ws=";
+      };
+    }
+    {
+      name = "color_convert___color_convert_1.9.3.tgz";
+      path = fetchurl {
+        name = "color_convert___color_convert_1.9.3.tgz";
+        url  = "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz";
+        sha512 = "QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==";
+      };
+    }
+    {
+      name = "color_convert___color_convert_2.0.1.tgz";
+      path = fetchurl {
+        name = "color_convert___color_convert_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz";
+        sha512 = "RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==";
+      };
+    }
+    {
+      name = "color_name___color_name_1.1.3.tgz";
+      path = fetchurl {
+        name = "color_name___color_name_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz";
+        sha1 = "p9BVi9icQveV3UIyj3QIMcpTvCU=";
+      };
+    }
+    {
+      name = "color_name___color_name_1.1.4.tgz";
+      path = fetchurl {
+        name = "color_name___color_name_1.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz";
+        sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==";
+      };
+    }
+    {
+      name = "colors___colors_1.0.3.tgz";
+      path = fetchurl {
+        name = "colors___colors_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz";
+        sha1 = "BDP0TYCWgP3rYO0mDxsMJi6CpAs=";
+      };
+    }
+    {
+      name = "combined_stream___combined_stream_1.0.8.tgz";
+      path = fetchurl {
+        name = "combined_stream___combined_stream_1.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz";
+        sha512 = "FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==";
+      };
+    }
+    {
+      name = "commander___commander_2.9.0.tgz";
+      path = fetchurl {
+        name = "commander___commander_2.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz";
+        sha1 = "nJkJQXbhIkDLItbFFGCYQA/g99Q=";
+      };
+    }
+    {
+      name = "commander___commander_5.1.0.tgz";
+      path = fetchurl {
+        name = "commander___commander_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz";
+        sha512 = "P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==";
+      };
+    }
+    {
+      name = "compare_version___compare_version_0.1.2.tgz";
+      path = fetchurl {
+        name = "compare_version___compare_version_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/compare-version/-/compare-version-0.1.2.tgz";
+        sha1 = "AWLsLZNR9d3VmpICy6k1NmpyUIA=";
+      };
+    }
+    {
+      name = "concat_map___concat_map_0.0.1.tgz";
+      path = fetchurl {
+        name = "concat_map___concat_map_0.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz";
+        sha1 = "2Klr13/Wjfd5OnMDajug1UBdR3s=";
+      };
+    }
+    {
+      name = "concat_stream___concat_stream_1.6.2.tgz";
+      path = fetchurl {
+        name = "concat_stream___concat_stream_1.6.2.tgz";
+        url  = "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz";
+        sha512 = "27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==";
+      };
+    }
+    {
+      name = "config_chain___config_chain_1.1.13.tgz";
+      path = fetchurl {
+        name = "config_chain___config_chain_1.1.13.tgz";
+        url  = "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz";
+        sha512 = "qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==";
+      };
+    }
+    {
+      name = "configstore___configstore_5.0.1.tgz";
+      path = fetchurl {
+        name = "configstore___configstore_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/configstore/-/configstore-5.0.1.tgz";
+        sha512 = "aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==";
+      };
+    }
+    {
+      name = "core_util_is___core_util_is_1.0.2.tgz";
+      path = fetchurl {
+        name = "core_util_is___core_util_is_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz";
+        sha1 = "tf1UIgqivFq1eqtxQMlAdUUDwac=";
+      };
+    }
+    {
+      name = "core_util_is___core_util_is_1.0.3.tgz";
+      path = fetchurl {
+        name = "core_util_is___core_util_is_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz";
+        sha512 = "ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==";
+      };
+    }
+    {
+      name = "crc___crc_3.8.0.tgz";
+      path = fetchurl {
+        name = "crc___crc_3.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/crc/-/crc-3.8.0.tgz";
+        sha512 = "iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==";
+      };
+    }
+    {
+      name = "cross_spawn___cross_spawn_7.0.3.tgz";
+      path = fetchurl {
+        name = "cross_spawn___cross_spawn_7.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz";
+        sha512 = "iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==";
+      };
+    }
+    {
+      name = "crypto_random_string___crypto_random_string_2.0.0.tgz";
+      path = fetchurl {
+        name = "crypto_random_string___crypto_random_string_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz";
+        sha512 = "v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==";
+      };
+    }
+    {
+      name = "debug___debug_4.3.4.tgz";
+      path = fetchurl {
+        name = "debug___debug_4.3.4.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz";
+        sha512 = "PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==";
+      };
+    }
+    {
+      name = "debug___debug_2.6.9.tgz";
+      path = fetchurl {
+        name = "debug___debug_2.6.9.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz";
+        sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==";
+      };
+    }
+    {
+      name = "decompress_response___decompress_response_3.3.0.tgz";
+      path = fetchurl {
+        name = "decompress_response___decompress_response_3.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz";
+        sha1 = "gKTdMjdIOEv6JICDYirt7Jgq3/M=";
+      };
+    }
+    {
+      name = "deep_extend___deep_extend_0.6.0.tgz";
+      path = fetchurl {
+        name = "deep_extend___deep_extend_0.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz";
+        sha512 = "LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==";
+      };
+    }
+    {
+      name = "defer_to_connect___defer_to_connect_1.1.3.tgz";
+      path = fetchurl {
+        name = "defer_to_connect___defer_to_connect_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz";
+        sha512 = "0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==";
+      };
+    }
+    {
+      name = "define_properties___define_properties_1.1.3.tgz";
+      path = fetchurl {
+        name = "define_properties___define_properties_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz";
+        sha512 = "3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==";
+      };
+    }
+    {
+      name = "delayed_stream___delayed_stream_1.0.0.tgz";
+      path = fetchurl {
+        name = "delayed_stream___delayed_stream_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz";
+        sha1 = "3zrhmayt+31ECqrgsp4icrJOxhk=";
+      };
+    }
+    {
+      name = "detect_node___detect_node_2.1.0.tgz";
+      path = fetchurl {
+        name = "detect_node___detect_node_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz";
+        sha512 = "T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==";
+      };
+    }
+    {
+      name = "dictionary_en_au___dictionary_en_au_2.3.0.tgz";
+      path = fetchurl {
+        name = "dictionary_en_au___dictionary_en_au_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/dictionary-en-au/-/dictionary-en-au-2.3.0.tgz";
+        sha512 = "KoEotpXPCyCgZ5DHlexHyzFfNwPnv9VupeCrp6r+JrtEkycPmZYbQiXF+cXz9NJr1gXy0AMEpzZ8UfxF40+8OQ==";
+      };
+    }
+    {
+      name = "dictionary_en___dictionary_en_3.1.0.tgz";
+      path = fetchurl {
+        name = "dictionary_en___dictionary_en_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/dictionary-en/-/dictionary-en-3.1.0.tgz";
+        sha512 = "dNjhoQagh7GX3YUBdbzehy/+wR2GLhkdpkxF8wMEGIXxMrH6aqzMn/8CHP5xnF85qbv288gCt4XtPQEVCOmTeA==";
+      };
+    }
+    {
+      name = "dir_compare___dir_compare_2.4.0.tgz";
+      path = fetchurl {
+        name = "dir_compare___dir_compare_2.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/dir-compare/-/dir-compare-2.4.0.tgz";
+        sha512 = "l9hmu8x/rjVC9Z2zmGzkhOEowZvW7pmYws5CWHutg8u1JgvsKWMx7Q/UODeu4djLZ4FgW5besw5yvMQnBHzuCA==";
+      };
+    }
+    {
+      name = "dmg_builder___dmg_builder_23.0.2.tgz";
+      path = fetchurl {
+        name = "dmg_builder___dmg_builder_23.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-23.0.2.tgz";
+        sha512 = "kfJZRKbIN6kM/Vuzrme8SGSA+M/F0VvNrSGa6idWXbqtxIbGZZMF1QxVrXJbxSayf0Jh4hPy6NUNZAfbX9/m3g==";
+      };
+    }
+    {
+      name = "dmg_license___dmg_license_1.0.11.tgz";
+      path = fetchurl {
+        name = "dmg_license___dmg_license_1.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/dmg-license/-/dmg-license-1.0.11.tgz";
+        sha512 = "ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==";
+      };
+    }
+    {
+      name = "dot_prop___dot_prop_5.3.0.tgz";
+      path = fetchurl {
+        name = "dot_prop___dot_prop_5.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz";
+        sha512 = "QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==";
+      };
+    }
+    {
+      name = "dotenv_expand___dotenv_expand_5.1.0.tgz";
+      path = fetchurl {
+        name = "dotenv_expand___dotenv_expand_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz";
+        sha512 = "YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==";
+      };
+    }
+    {
+      name = "dotenv___dotenv_9.0.2.tgz";
+      path = fetchurl {
+        name = "dotenv___dotenv_9.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/dotenv/-/dotenv-9.0.2.tgz";
+        sha512 = "I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg==";
+      };
+    }
+    {
+      name = "duplexer3___duplexer3_0.1.4.tgz";
+      path = fetchurl {
+        name = "duplexer3___duplexer3_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz";
+        sha1 = "7gHdHKwO08vH/b6jfcCo8c4ALOI=";
+      };
+    }
+    {
+      name = "ejs___ejs_3.1.6.tgz";
+      path = fetchurl {
+        name = "ejs___ejs_3.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/ejs/-/ejs-3.1.6.tgz";
+        sha512 = "9lt9Zse4hPucPkoP7FHDF0LQAlGyF9JVpnClFLFH3aSSbxmyoqINRpp/9wePWJTUl4KOQwRL72Iw3InHPDkoGw==";
+      };
+    }
+    {
+      name = "electron_builder___electron_builder_23.0.2.tgz";
+      path = fetchurl {
+        name = "electron_builder___electron_builder_23.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/electron-builder/-/electron-builder-23.0.2.tgz";
+        sha512 = "NG8ywuoHZpq6uk/2fEo9XVKBnjyGwNCnCyPxgGLdEk6xLAXr6nkF54+kqdhrDw4E8alwxc/TPHxUY3G0B8k/Dw==";
+      };
+    }
+    {
+      name = "electron_context_menu___electron_context_menu_3.1.2.tgz";
+      path = fetchurl {
+        name = "electron_context_menu___electron_context_menu_3.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/electron-context-menu/-/electron-context-menu-3.1.2.tgz";
+        sha512 = "nNzu4w14n7mOR+4cLjRC9cEFqGUsAY76seOm0sw3f4OxEfX/d75m7HYekyp5b+0m7Ixy2KN/Mrljw1zLmpyV2w==";
+      };
+    }
+    {
+      name = "electron_dl___electron_dl_3.3.0.tgz";
+      path = fetchurl {
+        name = "electron_dl___electron_dl_3.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/electron-dl/-/electron-dl-3.3.0.tgz";
+        sha512 = "Zwaz/OMGPIfBLV2SQH4sTsdDOs/U4y5AOHfremMBXEpjIxX+SiTx845DZAvJJwgb5hfowyWOBLiJhd/emBNLLQ==";
+      };
+    }
+    {
+      name = "electron_is_dev___electron_is_dev_2.0.0.tgz";
+      path = fetchurl {
+        name = "electron_is_dev___electron_is_dev_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/electron-is-dev/-/electron-is-dev-2.0.0.tgz";
+        sha512 = "3X99K852Yoqu9AcW50qz3ibYBWY79/pBhlMCab8ToEWS48R0T9tyxRiQhwylE7zQdXrMnx2JKqUJyMPmt5FBqA==";
+      };
+    }
+    {
+      name = "electron_osx_sign___electron_osx_sign_0.6.0.tgz";
+      path = fetchurl {
+        name = "electron_osx_sign___electron_osx_sign_0.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/electron-osx-sign/-/electron-osx-sign-0.6.0.tgz";
+        sha512 = "+hiIEb2Xxk6eDKJ2FFlpofCnemCbjbT5jz+BKGpVBrRNT3kWTGs4DfNX6IzGwgi33hUcXF+kFs9JW+r6Wc1LRg==";
+      };
+    }
+    {
+      name = "electron_publish___electron_publish_23.0.2.tgz";
+      path = fetchurl {
+        name = "electron_publish___electron_publish_23.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/electron-publish/-/electron-publish-23.0.2.tgz";
+        sha512 = "8gMYgWqv96lc83FCm85wd+tEyxNTJQK7WKyPkNkO8GxModZqt1GO8S+/vAnFGxilS/7vsrVRXFfqiCDUCSuxEg==";
+      };
+    }
+    {
+      name = "electron___electron_17.1.2.tgz";
+      path = fetchurl {
+        name = "electron___electron_17.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/electron/-/electron-17.1.2.tgz";
+        sha512 = "hqKQaUIRWX5Y2eAD8FZINWD/e5TKdpkbBYbkcZmJS4Bd1PKQsaDVc9h5xoA8zZQkPymE9rss+swjRpAFurOPGQ==";
+      };
+    }
+    {
+      name = "emoji_regex___emoji_regex_8.0.0.tgz";
+      path = fetchurl {
+        name = "emoji_regex___emoji_regex_8.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz";
+        sha512 = "MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==";
+      };
+    }
+    {
+      name = "encodeurl___encodeurl_1.0.2.tgz";
+      path = fetchurl {
+        name = "encodeurl___encodeurl_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz";
+        sha1 = "rT/0yG7C0CkyL1oCw6mmBslbP1k=";
+      };
+    }
+    {
+      name = "end_of_stream___end_of_stream_1.4.4.tgz";
+      path = fetchurl {
+        name = "end_of_stream___end_of_stream_1.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz";
+        sha512 = "+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==";
+      };
+    }
+    {
+      name = "env_paths___env_paths_2.2.1.tgz";
+      path = fetchurl {
+        name = "env_paths___env_paths_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz";
+        sha512 = "+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==";
+      };
+    }
+    {
+      name = "es6_error___es6_error_4.1.1.tgz";
+      path = fetchurl {
+        name = "es6_error___es6_error_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/es6-error/-/es6-error-4.1.1.tgz";
+        sha512 = "Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==";
+      };
+    }
+    {
+      name = "escalade___escalade_3.1.1.tgz";
+      path = fetchurl {
+        name = "escalade___escalade_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz";
+        sha512 = "k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==";
+      };
+    }
+    {
+      name = "escape_goat___escape_goat_2.1.1.tgz";
+      path = fetchurl {
+        name = "escape_goat___escape_goat_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/escape-goat/-/escape-goat-2.1.1.tgz";
+        sha512 = "8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==";
+      };
+    }
+    {
+      name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
+      path = fetchurl {
+        name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
+        sha1 = "G2HAViGQqN/2rjuyzwIAyhMLhtQ=";
+      };
+    }
+    {
+      name = "escape_string_regexp___escape_string_regexp_4.0.0.tgz";
+      path = fetchurl {
+        name = "escape_string_regexp___escape_string_regexp_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz";
+        sha512 = "TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==";
+      };
+    }
+    {
+      name = "ext_list___ext_list_2.2.2.tgz";
+      path = fetchurl {
+        name = "ext_list___ext_list_2.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/ext-list/-/ext-list-2.2.2.tgz";
+        sha512 = "u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==";
+      };
+    }
+    {
+      name = "ext_name___ext_name_5.0.0.tgz";
+      path = fetchurl {
+        name = "ext_name___ext_name_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ext-name/-/ext-name-5.0.0.tgz";
+        sha512 = "yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==";
+      };
+    }
+    {
+      name = "extract_zip___extract_zip_1.7.0.tgz";
+      path = fetchurl {
+        name = "extract_zip___extract_zip_1.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.7.0.tgz";
+        sha512 = "xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==";
+      };
+    }
+    {
+      name = "extsprintf___extsprintf_1.4.1.tgz";
+      path = fetchurl {
+        name = "extsprintf___extsprintf_1.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz";
+        sha512 = "Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==";
+      };
+    }
+    {
+      name = "fast_deep_equal___fast_deep_equal_3.1.3.tgz";
+      path = fetchurl {
+        name = "fast_deep_equal___fast_deep_equal_3.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz";
+        sha512 = "f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==";
+      };
+    }
+    {
+      name = "fast_json_stable_stringify___fast_json_stable_stringify_2.1.0.tgz";
+      path = fetchurl {
+        name = "fast_json_stable_stringify___fast_json_stable_stringify_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz";
+        sha512 = "lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==";
+      };
+    }
+    {
+      name = "fd_slicer___fd_slicer_1.1.0.tgz";
+      path = fetchurl {
+        name = "fd_slicer___fd_slicer_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz";
+        sha1 = "JcfInLH5B3+IkbvmHY85Dq4lbx4=";
+      };
+    }
+    {
+      name = "filelist___filelist_1.0.2.tgz";
+      path = fetchurl {
+        name = "filelist___filelist_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/filelist/-/filelist-1.0.2.tgz";
+        sha512 = "z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==";
+      };
+    }
+    {
+      name = "form_data___form_data_4.0.0.tgz";
+      path = fetchurl {
+        name = "form_data___form_data_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz";
+        sha512 = "ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==";
+      };
+    }
+    {
+      name = "fs_extra___fs_extra_10.0.1.tgz";
+      path = fetchurl {
+        name = "fs_extra___fs_extra_10.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.1.tgz";
+        sha512 = "NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag==";
+      };
+    }
+    {
+      name = "fs_extra___fs_extra_8.1.0.tgz";
+      path = fetchurl {
+        name = "fs_extra___fs_extra_8.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz";
+        sha512 = "yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==";
+      };
+    }
+    {
+      name = "fs_extra___fs_extra_9.1.0.tgz";
+      path = fetchurl {
+        name = "fs_extra___fs_extra_9.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz";
+        sha512 = "hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==";
+      };
+    }
+    {
+      name = "fs.realpath___fs.realpath_1.0.0.tgz";
+      path = fetchurl {
+        name = "fs.realpath___fs.realpath_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz";
+        sha1 = "FQStJSMVjKpA20onh8sBQRmU6k8=";
+      };
+    }
+    {
+      name = "get_caller_file___get_caller_file_2.0.5.tgz";
+      path = fetchurl {
+        name = "get_caller_file___get_caller_file_2.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz";
+        sha512 = "DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==";
+      };
+    }
+    {
+      name = "get_stream___get_stream_4.1.0.tgz";
+      path = fetchurl {
+        name = "get_stream___get_stream_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz";
+        sha512 = "GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==";
+      };
+    }
+    {
+      name = "get_stream___get_stream_5.2.0.tgz";
+      path = fetchurl {
+        name = "get_stream___get_stream_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz";
+        sha512 = "nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==";
+      };
+    }
+    {
+      name = "glob___glob_7.2.0.tgz";
+      path = fetchurl {
+        name = "glob___glob_7.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz";
+        sha512 = "lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==";
+      };
+    }
+    {
+      name = "global_agent___global_agent_3.0.0.tgz";
+      path = fetchurl {
+        name = "global_agent___global_agent_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/global-agent/-/global-agent-3.0.0.tgz";
+        sha512 = "PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==";
+      };
+    }
+    {
+      name = "global_dirs___global_dirs_3.0.0.tgz";
+      path = fetchurl {
+        name = "global_dirs___global_dirs_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/global-dirs/-/global-dirs-3.0.0.tgz";
+        sha512 = "v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==";
+      };
+    }
+    {
+      name = "global_tunnel_ng___global_tunnel_ng_2.7.1.tgz";
+      path = fetchurl {
+        name = "global_tunnel_ng___global_tunnel_ng_2.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz";
+        sha512 = "4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==";
+      };
+    }
+    {
+      name = "globalthis___globalthis_1.0.2.tgz";
+      path = fetchurl {
+        name = "globalthis___globalthis_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.2.tgz";
+        sha512 = "ZQnSFO1la8P7auIOQECnm0sSuoMeaSq0EEdXMBFF2QJO4uNcwbyhSgG3MruWNbFTqCLmxVwGOl7LZ9kASvHdeQ==";
+      };
+    }
+    {
+      name = "got___got_9.6.0.tgz";
+      path = fetchurl {
+        name = "got___got_9.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz";
+        sha512 = "R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==";
+      };
+    }
+    {
+      name = "graceful_fs___graceful_fs_4.2.9.tgz";
+      path = fetchurl {
+        name = "graceful_fs___graceful_fs_4.2.9.tgz";
+        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz";
+        sha512 = "NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==";
+      };
+    }
+    {
+      name = "graceful_readlink___graceful_readlink_1.0.1.tgz";
+      path = fetchurl {
+        name = "graceful_readlink___graceful_readlink_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz";
+        sha1 = "TK+tdrxi8C+gObL5Tpo906ORpyU=";
+      };
+    }
+    {
+      name = "has_flag___has_flag_3.0.0.tgz";
+      path = fetchurl {
+        name = "has_flag___has_flag_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz";
+        sha1 = "tdRU3CGZriJWmfNGfloH87lVuv0=";
+      };
+    }
+    {
+      name = "has_flag___has_flag_4.0.0.tgz";
+      path = fetchurl {
+        name = "has_flag___has_flag_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz";
+        sha512 = "EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==";
+      };
+    }
+    {
+      name = "has_yarn___has_yarn_2.1.0.tgz";
+      path = fetchurl {
+        name = "has_yarn___has_yarn_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz";
+        sha512 = "UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==";
+      };
+    }
+    {
+      name = "hosted_git_info___hosted_git_info_4.1.0.tgz";
+      path = fetchurl {
+        name = "hosted_git_info___hosted_git_info_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz";
+        sha512 = "kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==";
+      };
+    }
+    {
+      name = "http_cache_semantics___http_cache_semantics_4.1.0.tgz";
+      path = fetchurl {
+        name = "http_cache_semantics___http_cache_semantics_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz";
+        sha512 = "carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==";
+      };
+    }
+    {
+      name = "http_proxy_agent___http_proxy_agent_5.0.0.tgz";
+      path = fetchurl {
+        name = "http_proxy_agent___http_proxy_agent_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz";
+        sha512 = "n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==";
+      };
+    }
+    {
+      name = "https_proxy_agent___https_proxy_agent_5.0.0.tgz";
+      path = fetchurl {
+        name = "https_proxy_agent___https_proxy_agent_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz";
+        sha512 = "EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==";
+      };
+    }
+    {
+      name = "iconv_corefoundation___iconv_corefoundation_1.1.7.tgz";
+      path = fetchurl {
+        name = "iconv_corefoundation___iconv_corefoundation_1.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz";
+        sha512 = "T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==";
+      };
+    }
+    {
+      name = "iconv_lite___iconv_lite_0.6.3.tgz";
+      path = fetchurl {
+        name = "iconv_lite___iconv_lite_0.6.3.tgz";
+        url  = "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz";
+        sha512 = "4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==";
+      };
+    }
+    {
+      name = "ieee754___ieee754_1.2.1.tgz";
+      path = fetchurl {
+        name = "ieee754___ieee754_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz";
+        sha512 = "dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==";
+      };
+    }
+    {
+      name = "immediate___immediate_3.0.6.tgz";
+      path = fetchurl {
+        name = "immediate___immediate_3.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz";
+        sha1 = "nbHb0Pr43m++D13V5Wu2BigN5ps=";
+      };
+    }
+    {
+      name = "import_lazy___import_lazy_2.1.0.tgz";
+      path = fetchurl {
+        name = "import_lazy___import_lazy_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz";
+        sha1 = "BWmOPUXIjo1+nZLLBYTnfwlvPkM=";
+      };
+    }
+    {
+      name = "imurmurhash___imurmurhash_0.1.4.tgz";
+      path = fetchurl {
+        name = "imurmurhash___imurmurhash_0.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz";
+        sha1 = "khi5srkoojixPcT7a21XbyMUU+o=";
+      };
+    }
+    {
+      name = "inflight___inflight_1.0.6.tgz";
+      path = fetchurl {
+        name = "inflight___inflight_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz";
+        sha1 = "Sb1jMdfQLQwJvJEKEHW6gWW1bfk=";
+      };
+    }
+    {
+      name = "inherits___inherits_2.0.4.tgz";
+      path = fetchurl {
+        name = "inherits___inherits_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz";
+        sha512 = "k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==";
+      };
+    }
+    {
+      name = "ini___ini_2.0.0.tgz";
+      path = fetchurl {
+        name = "ini___ini_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ini/-/ini-2.0.0.tgz";
+        sha512 = "7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==";
+      };
+    }
+    {
+      name = "ini___ini_1.3.8.tgz";
+      path = fetchurl {
+        name = "ini___ini_1.3.8.tgz";
+        url  = "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz";
+        sha512 = "JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==";
+      };
+    }
+    {
+      name = "is_ci___is_ci_2.0.0.tgz";
+      path = fetchurl {
+        name = "is_ci___is_ci_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz";
+        sha512 = "YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==";
+      };
+    }
+    {
+      name = "is_ci___is_ci_3.0.1.tgz";
+      path = fetchurl {
+        name = "is_ci___is_ci_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.1.tgz";
+        sha512 = "ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==";
+      };
+    }
+    {
+      name = "is_fullwidth_code_point___is_fullwidth_code_point_3.0.0.tgz";
+      path = fetchurl {
+        name = "is_fullwidth_code_point___is_fullwidth_code_point_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz";
+        sha512 = "zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==";
+      };
+    }
+    {
+      name = "is_installed_globally___is_installed_globally_0.4.0.tgz";
+      path = fetchurl {
+        name = "is_installed_globally___is_installed_globally_0.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.4.0.tgz";
+        sha512 = "iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==";
+      };
+    }
+    {
+      name = "is_npm___is_npm_5.0.0.tgz";
+      path = fetchurl {
+        name = "is_npm___is_npm_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-npm/-/is-npm-5.0.0.tgz";
+        sha512 = "WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==";
+      };
+    }
+    {
+      name = "is_obj___is_obj_2.0.0.tgz";
+      path = fetchurl {
+        name = "is_obj___is_obj_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz";
+        sha512 = "drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==";
+      };
+    }
+    {
+      name = "is_path_inside___is_path_inside_3.0.3.tgz";
+      path = fetchurl {
+        name = "is_path_inside___is_path_inside_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz";
+        sha512 = "Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==";
+      };
+    }
+    {
+      name = "is_plain_obj___is_plain_obj_1.1.0.tgz";
+      path = fetchurl {
+        name = "is_plain_obj___is_plain_obj_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz";
+        sha1 = "caUMhCnfync8kqOQpKA7OfzVHT4=";
+      };
+    }
+    {
+      name = "is_typedarray___is_typedarray_1.0.0.tgz";
+      path = fetchurl {
+        name = "is_typedarray___is_typedarray_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz";
+        sha1 = "5HnICFjfDBsR3dppQPlgEfzaSpo=";
+      };
+    }
+    {
+      name = "is_yarn_global___is_yarn_global_0.3.0.tgz";
+      path = fetchurl {
+        name = "is_yarn_global___is_yarn_global_0.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz";
+        sha512 = "VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==";
+      };
+    }
+    {
+      name = "isarray___isarray_1.0.0.tgz";
+      path = fetchurl {
+        name = "isarray___isarray_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz";
+        sha1 = "u5NdSFgsuhaMBoNJV6VKPgcSTxE=";
+      };
+    }
+    {
+      name = "isbinaryfile___isbinaryfile_3.0.3.tgz";
+      path = fetchurl {
+        name = "isbinaryfile___isbinaryfile_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-3.0.3.tgz";
+        sha512 = "8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==";
+      };
+    }
+    {
+      name = "isbinaryfile___isbinaryfile_4.0.8.tgz";
+      path = fetchurl {
+        name = "isbinaryfile___isbinaryfile_4.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.8.tgz";
+        sha512 = "53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w==";
+      };
+    }
+    {
+      name = "isexe___isexe_2.0.0.tgz";
+      path = fetchurl {
+        name = "isexe___isexe_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz";
+        sha1 = "6PvzdNxVb/iUehDcsFctYz8s+hA=";
+      };
+    }
+    {
+      name = "jake___jake_10.8.2.tgz";
+      path = fetchurl {
+        name = "jake___jake_10.8.2.tgz";
+        url  = "https://registry.yarnpkg.com/jake/-/jake-10.8.2.tgz";
+        sha512 = "eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A==";
+      };
+    }
+    {
+      name = "js_yaml___js_yaml_4.1.0.tgz";
+      path = fetchurl {
+        name = "js_yaml___js_yaml_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz";
+        sha512 = "wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==";
+      };
+    }
+    {
+      name = "json_buffer___json_buffer_3.0.0.tgz";
+      path = fetchurl {
+        name = "json_buffer___json_buffer_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz";
+        sha1 = "Wx85evx11ne96Lz8Dkfh+aPZqJg=";
+      };
+    }
+    {
+      name = "json_schema_traverse___json_schema_traverse_0.4.1.tgz";
+      path = fetchurl {
+        name = "json_schema_traverse___json_schema_traverse_0.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz";
+        sha512 = "xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==";
+      };
+    }
+    {
+      name = "json_stringify_safe___json_stringify_safe_5.0.1.tgz";
+      path = fetchurl {
+        name = "json_stringify_safe___json_stringify_safe_5.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
+        sha1 = "Epai1Y/UXxmg9s4B1lcB4sc1tus=";
+      };
+    }
+    {
+      name = "json5___json5_2.2.0.tgz";
+      path = fetchurl {
+        name = "json5___json5_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz";
+        sha512 = "f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==";
+      };
+    }
+    {
+      name = "jsonfile___jsonfile_4.0.0.tgz";
+      path = fetchurl {
+        name = "jsonfile___jsonfile_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz";
+        sha1 = "h3Gq4HmbZAdrdmQPygWPnBDjPss=";
+      };
+    }
+    {
+      name = "jsonfile___jsonfile_6.1.0.tgz";
+      path = fetchurl {
+        name = "jsonfile___jsonfile_6.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz";
+        sha512 = "5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==";
+      };
+    }
+    {
+      name = "keyv___keyv_3.1.0.tgz";
+      path = fetchurl {
+        name = "keyv___keyv_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz";
+        sha512 = "9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==";
+      };
+    }
+    {
+      name = "latest_version___latest_version_5.1.0.tgz";
+      path = fetchurl {
+        name = "latest_version___latest_version_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/latest-version/-/latest-version-5.1.0.tgz";
+        sha512 = "weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==";
+      };
+    }
+    {
+      name = "lazy_val___lazy_val_1.0.5.tgz";
+      path = fetchurl {
+        name = "lazy_val___lazy_val_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/lazy-val/-/lazy-val-1.0.5.tgz";
+        sha512 = "0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==";
+      };
+    }
+    {
+      name = "lie___lie_3.1.1.tgz";
+      path = fetchurl {
+        name = "lie___lie_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/lie/-/lie-3.1.1.tgz";
+        sha1 = "mkNrLMd0bKWd56QfpGmz77dr2H4=";
+      };
+    }
+    {
+      name = "localforage___localforage_1.10.0.tgz";
+      path = fetchurl {
+        name = "localforage___localforage_1.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/localforage/-/localforage-1.10.0.tgz";
+        sha512 = "14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==";
+      };
+    }
+    {
+      name = "lodash___lodash_4.17.21.tgz";
+      path = fetchurl {
+        name = "lodash___lodash_4.17.21.tgz";
+        url  = "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz";
+        sha512 = "v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==";
+      };
+    }
+    {
+      name = "lowercase_keys___lowercase_keys_1.0.1.tgz";
+      path = fetchurl {
+        name = "lowercase_keys___lowercase_keys_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz";
+        sha512 = "G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==";
+      };
+    }
+    {
+      name = "lowercase_keys___lowercase_keys_2.0.0.tgz";
+      path = fetchurl {
+        name = "lowercase_keys___lowercase_keys_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz";
+        sha512 = "tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==";
+      };
+    }
+    {
+      name = "lru_cache___lru_cache_6.0.0.tgz";
+      path = fetchurl {
+        name = "lru_cache___lru_cache_6.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz";
+        sha512 = "Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==";
+      };
+    }
+    {
+      name = "make_dir___make_dir_3.1.0.tgz";
+      path = fetchurl {
+        name = "make_dir___make_dir_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz";
+        sha512 = "g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==";
+      };
+    }
+    {
+      name = "matcher___matcher_3.0.0.tgz";
+      path = fetchurl {
+        name = "matcher___matcher_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/matcher/-/matcher-3.0.0.tgz";
+        sha512 = "OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==";
+      };
+    }
+    {
+      name = "mime_db___mime_db_1.52.0.tgz";
+      path = fetchurl {
+        name = "mime_db___mime_db_1.52.0.tgz";
+        url  = "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz";
+        sha512 = "sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==";
+      };
+    }
+    {
+      name = "mime_types___mime_types_2.1.35.tgz";
+      path = fetchurl {
+        name = "mime_types___mime_types_2.1.35.tgz";
+        url  = "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz";
+        sha512 = "ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==";
+      };
+    }
+    {
+      name = "mime___mime_2.6.0.tgz";
+      path = fetchurl {
+        name = "mime___mime_2.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz";
+        sha512 = "USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==";
+      };
+    }
+    {
+      name = "mimic_response___mimic_response_1.0.1.tgz";
+      path = fetchurl {
+        name = "mimic_response___mimic_response_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz";
+        sha512 = "j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==";
+      };
+    }
+    {
+      name = "minimatch___minimatch_3.0.4.tgz";
+      path = fetchurl {
+        name = "minimatch___minimatch_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz";
+        sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
+      };
+    }
+    {
+      name = "minimatch___minimatch_3.1.2.tgz";
+      path = fetchurl {
+        name = "minimatch___minimatch_3.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz";
+        sha512 = "J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==";
+      };
+    }
+    {
+      name = "minimist___minimist_1.2.5.tgz";
+      path = fetchurl {
+        name = "minimist___minimist_1.2.5.tgz";
+        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz";
+        sha512 = "FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==";
+      };
+    }
+    {
+      name = "mkdirp___mkdirp_0.5.5.tgz";
+      path = fetchurl {
+        name = "mkdirp___mkdirp_0.5.5.tgz";
+        url  = "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz";
+        sha512 = "NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==";
+      };
+    }
+    {
+      name = "modify_filename___modify_filename_1.1.0.tgz";
+      path = fetchurl {
+        name = "modify_filename___modify_filename_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/modify-filename/-/modify-filename-1.1.0.tgz";
+        sha1 = "mi3sg4Bvuy2XXyK+7IWcoms5OqE=";
+      };
+    }
+    {
+      name = "ms___ms_2.0.0.tgz";
+      path = fetchurl {
+        name = "ms___ms_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz";
+        sha1 = "VgiurfwAvmwpAd9fmGF4jeDVl8g=";
+      };
+    }
+    {
+      name = "ms___ms_2.1.2.tgz";
+      path = fetchurl {
+        name = "ms___ms_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz";
+        sha512 = "sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==";
+      };
+    }
+    {
+      name = "node_addon_api___node_addon_api_1.7.2.tgz";
+      path = fetchurl {
+        name = "node_addon_api___node_addon_api_1.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.2.tgz";
+        sha512 = "ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==";
+      };
+    }
+    {
+      name = "normalize_url___normalize_url_4.5.1.tgz";
+      path = fetchurl {
+        name = "normalize_url___normalize_url_4.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz";
+        sha512 = "9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==";
+      };
+    }
+    {
+      name = "npm_conf___npm_conf_1.1.3.tgz";
+      path = fetchurl {
+        name = "npm_conf___npm_conf_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/npm-conf/-/npm-conf-1.1.3.tgz";
+        sha512 = "Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==";
+      };
+    }
+    {
+      name = "object_keys___object_keys_1.1.1.tgz";
+      path = fetchurl {
+        name = "object_keys___object_keys_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz";
+        sha512 = "NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==";
+      };
+    }
+    {
+      name = "once___once_1.4.0.tgz";
+      path = fetchurl {
+        name = "once___once_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz";
+        sha1 = "WDsap3WWHUsROsF9nFC6753Xa9E=";
+      };
+    }
+    {
+      name = "p_cancelable___p_cancelable_1.1.0.tgz";
+      path = fetchurl {
+        name = "p_cancelable___p_cancelable_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz";
+        sha512 = "s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==";
+      };
+    }
+    {
+      name = "package_json___package_json_6.5.0.tgz";
+      path = fetchurl {
+        name = "package_json___package_json_6.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/package-json/-/package-json-6.5.0.tgz";
+        sha512 = "k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==";
+      };
+    }
+    {
+      name = "path_exists___path_exists_4.0.0.tgz";
+      path = fetchurl {
+        name = "path_exists___path_exists_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz";
+        sha512 = "ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==";
+      };
+    }
+    {
+      name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
+      path = fetchurl {
+        name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
+        sha1 = "F0uSaHNVNP+8es5r9TpanhtcX18=";
+      };
+    }
+    {
+      name = "path_key___path_key_3.1.1.tgz";
+      path = fetchurl {
+        name = "path_key___path_key_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz";
+        sha512 = "ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==";
+      };
+    }
+    {
+      name = "pend___pend_1.2.0.tgz";
+      path = fetchurl {
+        name = "pend___pend_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz";
+        sha1 = "elfrVQpng/kRUzH89GY9XI4AelA=";
+      };
+    }
+    {
+      name = "pify___pify_3.0.0.tgz";
+      path = fetchurl {
+        name = "pify___pify_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz";
+        sha1 = "5aSs0sEB/fPZpNB/DbxNtJ3SgXY=";
+      };
+    }
+    {
+      name = "plist___plist_3.0.4.tgz";
+      path = fetchurl {
+        name = "plist___plist_3.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/plist/-/plist-3.0.4.tgz";
+        sha512 = "ksrr8y9+nXOxQB2osVNqrgvX/XQPOXaU4BQMKjYq8PvaY1U18mo+fKgBSwzK+luSyinOuPae956lSVcBwxlAMg==";
+      };
+    }
+    {
+      name = "prepend_http___prepend_http_2.0.0.tgz";
+      path = fetchurl {
+        name = "prepend_http___prepend_http_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz";
+        sha1 = "6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=";
+      };
+    }
+    {
+      name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
+      path = fetchurl {
+        name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
+        sha512 = "3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==";
+      };
+    }
+    {
+      name = "progress___progress_2.0.3.tgz";
+      path = fetchurl {
+        name = "progress___progress_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz";
+        sha512 = "7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==";
+      };
+    }
+    {
+      name = "proto_list___proto_list_1.2.4.tgz";
+      path = fetchurl {
+        name = "proto_list___proto_list_1.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz";
+        sha1 = "IS1b/hMYMGpCD2QCuOJv85ZHqEk=";
+      };
+    }
+    {
+      name = "pump___pump_3.0.0.tgz";
+      path = fetchurl {
+        name = "pump___pump_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz";
+        sha512 = "LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==";
+      };
+    }
+    {
+      name = "punycode___punycode_2.1.1.tgz";
+      path = fetchurl {
+        name = "punycode___punycode_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz";
+        sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
+      };
+    }
+    {
+      name = "pupa___pupa_2.1.1.tgz";
+      path = fetchurl {
+        name = "pupa___pupa_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/pupa/-/pupa-2.1.1.tgz";
+        sha512 = "l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==";
+      };
+    }
+    {
+      name = "rc___rc_1.2.8.tgz";
+      path = fetchurl {
+        name = "rc___rc_1.2.8.tgz";
+        url  = "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz";
+        sha512 = "y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==";
+      };
+    }
+    {
+      name = "read_config_file___read_config_file_6.2.0.tgz";
+      path = fetchurl {
+        name = "read_config_file___read_config_file_6.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-config-file/-/read-config-file-6.2.0.tgz";
+        sha512 = "gx7Pgr5I56JtYz+WuqEbQHj/xWo+5Vwua2jhb1VwM4Wid5PqYmZ4i00ZB0YEGIfkVBsCv9UrjgyqCiQfS/Oosg==";
+      };
+    }
+    {
+      name = "readable_stream___readable_stream_2.3.7.tgz";
+      path = fetchurl {
+        name = "readable_stream___readable_stream_2.3.7.tgz";
+        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz";
+        sha512 = "Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==";
+      };
+    }
+    {
+      name = "registry_auth_token___registry_auth_token_4.2.1.tgz";
+      path = fetchurl {
+        name = "registry_auth_token___registry_auth_token_4.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.1.tgz";
+        sha512 = "6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==";
+      };
+    }
+    {
+      name = "registry_url___registry_url_5.1.0.tgz";
+      path = fetchurl {
+        name = "registry_url___registry_url_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/registry-url/-/registry-url-5.1.0.tgz";
+        sha512 = "8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==";
+      };
+    }
+    {
+      name = "require_directory___require_directory_2.1.1.tgz";
+      path = fetchurl {
+        name = "require_directory___require_directory_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz";
+        sha1 = "jGStX9MNqxyXbiNE/+f3kqam30I=";
+      };
+    }
+    {
+      name = "responselike___responselike_1.0.2.tgz";
+      path = fetchurl {
+        name = "responselike___responselike_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz";
+        sha1 = "kYcg7ztjHFZCvgaPFa3lpG9Loec=";
+      };
+    }
+    {
+      name = "rimraf___rimraf_3.0.2.tgz";
+      path = fetchurl {
+        name = "rimraf___rimraf_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz";
+        sha512 = "JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==";
+      };
+    }
+    {
+      name = "roarr___roarr_2.15.4.tgz";
+      path = fetchurl {
+        name = "roarr___roarr_2.15.4.tgz";
+        url  = "https://registry.yarnpkg.com/roarr/-/roarr-2.15.4.tgz";
+        sha512 = "CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==";
+      };
+    }
+    {
+      name = "safe_buffer___safe_buffer_5.1.2.tgz";
+      path = fetchurl {
+        name = "safe_buffer___safe_buffer_5.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz";
+        sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==";
+      };
+    }
+    {
+      name = "safer_buffer___safer_buffer_2.1.2.tgz";
+      path = fetchurl {
+        name = "safer_buffer___safer_buffer_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz";
+        sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
+      };
+    }
+    {
+      name = "sanitize_filename___sanitize_filename_1.6.3.tgz";
+      path = fetchurl {
+        name = "sanitize_filename___sanitize_filename_1.6.3.tgz";
+        url  = "https://registry.yarnpkg.com/sanitize-filename/-/sanitize-filename-1.6.3.tgz";
+        sha512 = "y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==";
+      };
+    }
+    {
+      name = "sax___sax_1.2.4.tgz";
+      path = fetchurl {
+        name = "sax___sax_1.2.4.tgz";
+        url  = "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz";
+        sha512 = "NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==";
+      };
+    }
+    {
+      name = "semver_compare___semver_compare_1.0.0.tgz";
+      path = fetchurl {
+        name = "semver_compare___semver_compare_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz";
+        sha1 = "De4hahyUGrN+nvsXiPavxf9VN/w=";
+      };
+    }
+    {
+      name = "semver_diff___semver_diff_3.1.1.tgz";
+      path = fetchurl {
+        name = "semver_diff___semver_diff_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/semver-diff/-/semver-diff-3.1.1.tgz";
+        sha512 = "GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==";
+      };
+    }
+    {
+      name = "semver___semver_6.3.0.tgz";
+      path = fetchurl {
+        name = "semver___semver_6.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz";
+        sha512 = "b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==";
+      };
+    }
+    {
+      name = "semver___semver_7.3.5.tgz";
+      path = fetchurl {
+        name = "semver___semver_7.3.5.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz";
+        sha512 = "PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==";
+      };
+    }
+    {
+      name = "serialize_error___serialize_error_7.0.1.tgz";
+      path = fetchurl {
+        name = "serialize_error___serialize_error_7.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/serialize-error/-/serialize-error-7.0.1.tgz";
+        sha512 = "8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==";
+      };
+    }
+    {
+      name = "shebang_command___shebang_command_2.0.0.tgz";
+      path = fetchurl {
+        name = "shebang_command___shebang_command_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz";
+        sha512 = "kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==";
+      };
+    }
+    {
+      name = "shebang_regex___shebang_regex_3.0.0.tgz";
+      path = fetchurl {
+        name = "shebang_regex___shebang_regex_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz";
+        sha512 = "7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==";
+      };
+    }
+    {
+      name = "signal_exit___signal_exit_3.0.7.tgz";
+      path = fetchurl {
+        name = "signal_exit___signal_exit_3.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz";
+        sha512 = "wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==";
+      };
+    }
+    {
+      name = "slice_ansi___slice_ansi_3.0.0.tgz";
+      path = fetchurl {
+        name = "slice_ansi___slice_ansi_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz";
+        sha512 = "pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==";
+      };
+    }
+    {
+      name = "smart_buffer___smart_buffer_4.2.0.tgz";
+      path = fetchurl {
+        name = "smart_buffer___smart_buffer_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz";
+        sha512 = "94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==";
+      };
+    }
+    {
+      name = "sort_keys_length___sort_keys_length_1.0.1.tgz";
+      path = fetchurl {
+        name = "sort_keys_length___sort_keys_length_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/sort-keys-length/-/sort-keys-length-1.0.1.tgz";
+        sha1 = "nLb09OnkgVWmqgZx7dM2/xR5oYg=";
+      };
+    }
+    {
+      name = "sort_keys___sort_keys_1.1.2.tgz";
+      path = fetchurl {
+        name = "sort_keys___sort_keys_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz";
+        sha1 = "RBttTTRnmPG05J6JIK37oOVD+a0=";
+      };
+    }
+    {
+      name = "source_map_support___source_map_support_0.5.21.tgz";
+      path = fetchurl {
+        name = "source_map_support___source_map_support_0.5.21.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz";
+        sha512 = "uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==";
+      };
+    }
+    {
+      name = "source_map___source_map_0.6.1.tgz";
+      path = fetchurl {
+        name = "source_map___source_map_0.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz";
+        sha512 = "UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==";
+      };
+    }
+    {
+      name = "sprintf_js___sprintf_js_1.1.2.tgz";
+      path = fetchurl {
+        name = "sprintf_js___sprintf_js_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.2.tgz";
+        sha512 = "VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==";
+      };
+    }
+    {
+      name = "stat_mode___stat_mode_1.0.0.tgz";
+      path = fetchurl {
+        name = "stat_mode___stat_mode_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/stat-mode/-/stat-mode-1.0.0.tgz";
+        sha512 = "jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==";
+      };
+    }
+    {
+      name = "string_width___string_width_4.2.3.tgz";
+      path = fetchurl {
+        name = "string_width___string_width_4.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz";
+        sha512 = "wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==";
+      };
+    }
+    {
+      name = "string_decoder___string_decoder_1.1.1.tgz";
+      path = fetchurl {
+        name = "string_decoder___string_decoder_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz";
+        sha512 = "n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==";
+      };
+    }
+    {
+      name = "strip_ansi___strip_ansi_6.0.1.tgz";
+      path = fetchurl {
+        name = "strip_ansi___strip_ansi_6.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz";
+        sha512 = "Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==";
+      };
+    }
+    {
+      name = "strip_json_comments___strip_json_comments_2.0.1.tgz";
+      path = fetchurl {
+        name = "strip_json_comments___strip_json_comments_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz";
+        sha1 = "PFMZQukIwml8DsNEhYwobHygpgo=";
+      };
+    }
+    {
+      name = "sumchecker___sumchecker_3.0.1.tgz";
+      path = fetchurl {
+        name = "sumchecker___sumchecker_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/sumchecker/-/sumchecker-3.0.1.tgz";
+        sha512 = "MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==";
+      };
+    }
+    {
+      name = "supports_color___supports_color_5.5.0.tgz";
+      path = fetchurl {
+        name = "supports_color___supports_color_5.5.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz";
+        sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==";
+      };
+    }
+    {
+      name = "supports_color___supports_color_7.2.0.tgz";
+      path = fetchurl {
+        name = "supports_color___supports_color_7.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz";
+        sha512 = "qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==";
+      };
+    }
+    {
+      name = "temp_file___temp_file_3.4.0.tgz";
+      path = fetchurl {
+        name = "temp_file___temp_file_3.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/temp-file/-/temp-file-3.4.0.tgz";
+        sha512 = "C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==";
+      };
+    }
+    {
+      name = "tmp_promise___tmp_promise_3.0.3.tgz";
+      path = fetchurl {
+        name = "tmp_promise___tmp_promise_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/tmp-promise/-/tmp-promise-3.0.3.tgz";
+        sha512 = "RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==";
+      };
+    }
+    {
+      name = "tmp___tmp_0.2.1.tgz";
+      path = fetchurl {
+        name = "tmp___tmp_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/tmp/-/tmp-0.2.1.tgz";
+        sha512 = "76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==";
+      };
+    }
+    {
+      name = "to_readable_stream___to_readable_stream_1.0.0.tgz";
+      path = fetchurl {
+        name = "to_readable_stream___to_readable_stream_1.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz";
+        sha512 = "Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==";
+      };
+    }
+    {
+      name = "truncate_utf8_bytes___truncate_utf8_bytes_1.0.2.tgz";
+      path = fetchurl {
+        name = "truncate_utf8_bytes___truncate_utf8_bytes_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz";
+        sha1 = "QFkjkJWS1W94pYGENLC3hInKXys=";
+      };
+    }
+    {
+      name = "tunnel___tunnel_0.0.6.tgz";
+      path = fetchurl {
+        name = "tunnel___tunnel_0.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz";
+        sha512 = "1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==";
+      };
+    }
+    {
+      name = "type_fest___type_fest_0.13.1.tgz";
+      path = fetchurl {
+        name = "type_fest___type_fest_0.13.1.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.13.1.tgz";
+        sha512 = "34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==";
+      };
+    }
+    {
+      name = "type_fest___type_fest_0.20.2.tgz";
+      path = fetchurl {
+        name = "type_fest___type_fest_0.20.2.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz";
+        sha512 = "Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==";
+      };
+    }
+    {
+      name = "typedarray_to_buffer___typedarray_to_buffer_3.1.5.tgz";
+      path = fetchurl {
+        name = "typedarray_to_buffer___typedarray_to_buffer_3.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz";
+        sha512 = "zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==";
+      };
+    }
+    {
+      name = "typedarray___typedarray_0.0.6.tgz";
+      path = fetchurl {
+        name = "typedarray___typedarray_0.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz";
+        sha1 = "hnrHTjhkGHsdPUfZlqeOxciDB3c=";
+      };
+    }
+    {
+      name = "typescript___typescript_4.5.5.tgz";
+      path = fetchurl {
+        name = "typescript___typescript_4.5.5.tgz";
+        url  = "https://registry.yarnpkg.com/typescript/-/typescript-4.5.5.tgz";
+        sha512 = "TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==";
+      };
+    }
+    {
+      name = "typo_js___typo_js_1.2.1.tgz";
+      path = fetchurl {
+        name = "typo_js___typo_js_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/typo-js/-/typo-js-1.2.1.tgz";
+        sha512 = "bTGLjbD3WqZDR3CgEFkyi9Q/SS2oM29ipXrWfDb4M74ea69QwKAECVceYpaBu0GfdnASMg9Qfl67ttB23nePHg==";
+      };
+    }
+    {
+      name = "unique_string___unique_string_2.0.0.tgz";
+      path = fetchurl {
+        name = "unique_string___unique_string_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz";
+        sha512 = "uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==";
+      };
+    }
+    {
+      name = "universalify___universalify_0.1.2.tgz";
+      path = fetchurl {
+        name = "universalify___universalify_0.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz";
+        sha512 = "rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==";
+      };
+    }
+    {
+      name = "universalify___universalify_2.0.0.tgz";
+      path = fetchurl {
+        name = "universalify___universalify_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz";
+        sha512 = "hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==";
+      };
+    }
+    {
+      name = "unused_filename___unused_filename_2.1.0.tgz";
+      path = fetchurl {
+        name = "unused_filename___unused_filename_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/unused-filename/-/unused-filename-2.1.0.tgz";
+        sha512 = "BMiNwJbuWmqCpAM1FqxCTD7lXF97AvfQC8Kr/DIeA6VtvhJaMDupZ82+inbjl5yVP44PcxOuCSxye1QMS0wZyg==";
+      };
+    }
+    {
+      name = "update_notifier___update_notifier_5.1.0.tgz";
+      path = fetchurl {
+        name = "update_notifier___update_notifier_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/update-notifier/-/update-notifier-5.1.0.tgz";
+        sha512 = "ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==";
+      };
+    }
+    {
+      name = "uri_js___uri_js_4.4.1.tgz";
+      path = fetchurl {
+        name = "uri_js___uri_js_4.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz";
+        sha512 = "7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==";
+      };
+    }
+    {
+      name = "url_parse_lax___url_parse_lax_3.0.0.tgz";
+      path = fetchurl {
+        name = "url_parse_lax___url_parse_lax_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz";
+        sha1 = "FrXK/Afb42dsGxmZF3gj1lA6yww=";
+      };
+    }
+    {
+      name = "utf8_byte_length___utf8_byte_length_1.0.4.tgz";
+      path = fetchurl {
+        name = "utf8_byte_length___utf8_byte_length_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz";
+        sha1 = "9F8VDExm7uloGGUFq5P8u4rWv2E=";
+      };
+    }
+    {
+      name = "util_deprecate___util_deprecate_1.0.2.tgz";
+      path = fetchurl {
+        name = "util_deprecate___util_deprecate_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz";
+        sha1 = "RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=";
+      };
+    }
+    {
+      name = "verror___verror_1.10.1.tgz";
+      path = fetchurl {
+        name = "verror___verror_1.10.1.tgz";
+        url  = "https://registry.yarnpkg.com/verror/-/verror-1.10.1.tgz";
+        sha512 = "veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==";
+      };
+    }
+    {
+      name = "which___which_2.0.2.tgz";
+      path = fetchurl {
+        name = "which___which_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz";
+        sha512 = "BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==";
+      };
+    }
+    {
+      name = "widest_line___widest_line_3.1.0.tgz";
+      path = fetchurl {
+        name = "widest_line___widest_line_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz";
+        sha512 = "NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==";
+      };
+    }
+    {
+      name = "wrap_ansi___wrap_ansi_7.0.0.tgz";
+      path = fetchurl {
+        name = "wrap_ansi___wrap_ansi_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz";
+        sha512 = "YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==";
+      };
+    }
+    {
+      name = "wrappy___wrappy_1.0.2.tgz";
+      path = fetchurl {
+        name = "wrappy___wrappy_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz";
+        sha1 = "tSQ9jz7BqjXxNkYFvA0QNuMKtp8=";
+      };
+    }
+    {
+      name = "write_file_atomic___write_file_atomic_3.0.3.tgz";
+      path = fetchurl {
+        name = "write_file_atomic___write_file_atomic_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz";
+        sha512 = "AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==";
+      };
+    }
+    {
+      name = "xdg_basedir___xdg_basedir_4.0.0.tgz";
+      path = fetchurl {
+        name = "xdg_basedir___xdg_basedir_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz";
+        sha512 = "PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==";
+      };
+    }
+    {
+      name = "xmlbuilder___xmlbuilder_15.1.1.tgz";
+      path = fetchurl {
+        name = "xmlbuilder___xmlbuilder_15.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz";
+        sha512 = "yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==";
+      };
+    }
+    {
+      name = "xmlbuilder___xmlbuilder_9.0.7.tgz";
+      path = fetchurl {
+        name = "xmlbuilder___xmlbuilder_9.0.7.tgz";
+        url  = "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz";
+        sha1 = "Ey7mPS7FVlxVfiD0wi35rKaGsQ0=";
+      };
+    }
+    {
+      name = "y18n___y18n_5.0.8.tgz";
+      path = fetchurl {
+        name = "y18n___y18n_5.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz";
+        sha512 = "0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==";
+      };
+    }
+    {
+      name = "yallist___yallist_4.0.0.tgz";
+      path = fetchurl {
+        name = "yallist___yallist_4.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz";
+        sha512 = "3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==";
+      };
+    }
+    {
+      name = "yargs_parser___yargs_parser_21.0.1.tgz";
+      path = fetchurl {
+        name = "yargs_parser___yargs_parser_21.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.1.tgz";
+        sha512 = "9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==";
+      };
+    }
+    {
+      name = "yargs___yargs_17.3.1.tgz";
+      path = fetchurl {
+        name = "yargs___yargs_17.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-17.3.1.tgz";
+        sha512 = "WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==";
+      };
+    }
+    {
+      name = "yauzl___yauzl_2.10.0.tgz";
+      path = fetchurl {
+        name = "yauzl___yauzl_2.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz";
+        sha1 = "x+sXyT4RLLEIb6bY5R+wZnt5pfk=";
+      };
+    }
+  ];
+}
diff --git a/nixpkgs/pkgs/applications/office/mmex/default.nix b/nixpkgs/pkgs/applications/office/mmex/default.nix
index 7113997c90f3..c5a4e93de785 100644
--- a/nixpkgs/pkgs/applications/office/mmex/default.nix
+++ b/nixpkgs/pkgs/applications/office/mmex/default.nix
@@ -1,35 +1,32 @@
-{ lib, stdenv, fetchgit, sqlite, wxGTK30, gettext, wrapGAppsHook }:
+{ lib, stdenv, fetchFromGitHub, sqlite, wxGTK30, gettext, wrapGAppsHook }:
 
-
-let
+stdenv.mkDerivation rec {
+  pname = "money-manager-ex";
   version = "1.3.3";
-in
-  stdenv.mkDerivation {
-    pname = "money-manager-ex";
-    inherit version;
 
-    src = fetchgit {
-      url = "https://github.com/moneymanagerex/moneymanagerex.git";
-      rev = "refs/tags/v${version}";
-      sha256 = "0r4n93z3scv0i0zqflsxwv7j4yl8jy3gr0m4l30y1q8qv0zj9n74";
-    };
+  src = fetchFromGitHub {
+    owner = "moneymanagerex";
+    repo = "moneymanagerex";
+    rev = "refs/tags/v${version}";
+    sha256 = "sha256-5NgkP9gY4eDBoKSC/IaXiHoiz+ZdU4c/iGAzPf5IlmQ=";
+  };
 
-    nativeBuildInputs = [
-      wrapGAppsHook
-    ];
+  nativeBuildInputs = [
+    wrapGAppsHook
+  ];
 
-    buildInputs = [
-      gettext
-      sqlite
-      wxGTK30
-      wxGTK30.gtk
-    ];
+  buildInputs = [
+    gettext
+    sqlite
+    wxGTK30
+    wxGTK30.gtk
+  ];
 
-    meta = {
-      description = "Easy-to-use personal finance software";
-      homepage = "https://www.moneymanagerex.org/";
-      license = lib.licenses.gpl2Plus;
-      maintainers = with lib.maintainers; [viric];
-      platforms = with lib.platforms; linux;
-    };
-  }
+  meta = {
+    description = "Easy-to-use personal finance software";
+    homepage = "https://www.moneymanagerex.org/";
+    license = lib.licenses.gpl2Plus;
+    maintainers = with lib.maintainers; [viric];
+    platforms = with lib.platforms; linux;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/office/scribus/unstable.nix b/nixpkgs/pkgs/applications/office/scribus/unstable.nix
index 21adb90cab9e..754c9ba03d4e 100644
--- a/nixpkgs/pkgs/applications/office/scribus/unstable.nix
+++ b/nixpkgs/pkgs/applications/office/scribus/unstable.nix
@@ -54,6 +54,36 @@ mkDerivation rec {
       url = "https://github.com/scribusproject/scribus/commit/68ec41169eaceea4a6e1d6f359762a191c7e61d5.patch";
       sha256 = "sha256-xhp65qVvaof0md1jb3XHZw7uFX1RtNxPfUOaVnvZV1Y=";
     })
+    # For Poppler 22.02
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/85c0dff3422fa3c26fbc2e8d8561f597ec24bd92.patch";
+      sha256 = "YR0ii09EVU8Qazz6b8KAIWsUMTwPIwO8JuQPymAWKdw=";
+    })
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/f75c1613db67f4067643d0218a2db3235e42ec9f.patch";
+      sha256 = "vJU8HsKHE3oXlhcXQk9uCYINPYVPF5IGmrWYFQ6Py5c=";
+    })
+    # For Poppler 22.03
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/553d1fd5f76ffb3743583b88c78a7232b076a965.patch";
+      sha256 = "56JrEG3eCzyALTH04yjzurKRj2PocpjO6b4PusMRxjY=";
+    })
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/1f82e38be0782b065910f5fb4cece23f690349ae.patch";
+      sha256 = "qektUfel5KeA327D3THyqi8dznP1SQQFToUC5Kd0+W4=";
+    })
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/f19410ac3b27e33dd62105746784e61e85b90a1d.patch";
+      sha256 = "JHdgntYcioYatPeqpmym3c9dORahj0CinGOzbGtA4ds=";
+    })
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/e013e8126d2100e8e56dea5b836ad43275429389.patch";
+      sha256 = "+siPNtJq9Is9V2PgADeQJB+b4lkl5g8uk6zKBu10Jqw=";
+    })
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/48263954a7dee0be815b00f417ae365ab26cdd85.patch";
+      sha256 = "1WE9kALFw79bQH88NUafXaZ1Y/vJEKTIWxlk5c+opsQ=";
+    })
   ];
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/office/spice-up/default.nix b/nixpkgs/pkgs/applications/office/spice-up/default.nix
index 1de5a8b817b4..9c716dfd9a43 100644
--- a/nixpkgs/pkgs/applications/office/spice-up/default.nix
+++ b/nixpkgs/pkgs/applications/office/spice-up/default.nix
@@ -46,7 +46,6 @@ stdenv.mkDerivation rec {
     libgee
     libgudev
     libsoup
-    pantheon.elementary-icon-theme
     pantheon.granite
   ];
 
diff --git a/nixpkgs/pkgs/applications/office/zotero/default.nix b/nixpkgs/pkgs/applications/office/zotero/default.nix
index 6fb8aecbbca5..53c61f0d993c 100644
--- a/nixpkgs/pkgs/applications/office/zotero/default.nix
+++ b/nixpkgs/pkgs/applications/office/zotero/default.nix
@@ -1,4 +1,8 @@
-{ lib, stdenv, fetchurl, wrapGAppsHook, makeDesktopItem
+{ lib
+, stdenv
+, fetchurl
+, wrapGAppsHook
+, makeDesktopItem
 , atk
 , cairo
 , coreutils
@@ -27,7 +31,8 @@
 , libXt
 , libnotify
 , gnome
-, libGLU, libGL
+, libGLU
+, libGL
 , nspr
 , nss
 , pango
@@ -36,55 +41,56 @@
 
 stdenv.mkDerivation rec {
   pname = "zotero";
-  version = "5.0.96.3";
+  version = "6.0";
 
   src = fetchurl {
-    url = "https://download.zotero.org/client/release/${version}/Zotero-${version}_linux-x86_64.tar.bz2";
-    sha256 = "sha256-eqSNzmkGNopGJ7VByvUffFEPJz3WHS7b5+jgUAW/hU4=";
+    url =
+      "https://download.zotero.org/client/release/${version}/Zotero-${version}_linux-x86_64.tar.bz2";
+    sha256 = "0zkgmmflcj6vbyv8rs51jf3vx1zq8pl7b5d5asgayhrdlwi0qgff";
   };
 
   nativeBuildInputs = [ wrapGAppsHook ];
-  buildInputs= [ gsettings-desktop-schemas glib gtk3 gnome.adwaita-icon-theme dconf ];
+  buildInputs =
+    [ gsettings-desktop-schemas glib gtk3 gnome.adwaita-icon-theme dconf ];
 
   dontConfigure = true;
   dontBuild = true;
   dontStrip = true;
   dontPatchELF = true;
 
-  libPath = lib.makeLibraryPath
-    [ stdenv.cc.cc
-      atk
-      cairo
-      curl
-      cups
-      dbus-glib
-      dbus
-      fontconfig
-      freetype
-      gdk-pixbuf
-      glib
-      glibc
-      gtk3
-      libX11
-      libXScrnSaver
-      libXcomposite
-      libXcursor
-      libxcb
-      libXdamage
-      libXext
-      libXfixes
-      libXi
-      libXinerama
-      libXrender
-      libXt
-      libnotify
-      libGLU libGL
-      nspr
-      nss
-      pango
-    ] + ":" + lib.makeSearchPathOutput "lib" "lib64" [
-      stdenv.cc.cc
-    ];
+  libPath = lib.makeLibraryPath [
+    stdenv.cc.cc
+    atk
+    cairo
+    curl
+    cups
+    dbus-glib
+    dbus
+    fontconfig
+    freetype
+    gdk-pixbuf
+    glib
+    glibc
+    gtk3
+    libX11
+    libXScrnSaver
+    libXcomposite
+    libXcursor
+    libxcb
+    libXdamage
+    libXext
+    libXfixes
+    libXi
+    libXinerama
+    libXrender
+    libXt
+    libnotify
+    libGLU
+    libGL
+    nspr
+    nss
+    pango
+  ] + ":" + lib.makeSearchPathOutput "lib" "lib64" [ stdenv.cc.cc ];
 
   postPatch = ''
     sed -i '/pref("app.update.enabled", true);/c\pref("app.update.enabled", false);' defaults/preferences/prefs.js
diff --git a/nixpkgs/pkgs/applications/radio/freedv/default.nix b/nixpkgs/pkgs/applications/radio/freedv/default.nix
index 43cf58db2581..bbf40a44c2a7 100644
--- a/nixpkgs/pkgs/applications/radio/freedv/default.nix
+++ b/nixpkgs/pkgs/applications/radio/freedv/default.nix
@@ -1,16 +1,18 @@
-{ lib
+{ config
+, lib
 , stdenv
 , fetchFromGitHub
 , cmake
 , codec2
+, libpulseaudio
 , libsamplerate
 , libsndfile
 , lpcnetfreedv
 , portaudio
-, pulseaudio
 , speexdsp
 , hamlib
 , wxGTK31-gtk3
+, pulseSupport ? config.pulseaudio or stdenv.isLinux
 }:
 
 stdenv.mkDerivation rec {
@@ -33,17 +35,19 @@ stdenv.mkDerivation rec {
     speexdsp
     hamlib
     wxGTK31-gtk3
-  ] ++ (if stdenv.isLinux then [ pulseaudio ] else [ portaudio ]);
+  ] ++ (if pulseSupport then [ libpulseaudio ] else [ portaudio ]);
 
   cmakeFlags = [
     "-DUSE_INTERNAL_CODEC2:BOOL=FALSE"
     "-DUSE_STATIC_DEPS:BOOL=FALSE"
-  ] ++ lib.optionals stdenv.isLinux [ "-DUSE_PULSEAUDIO:BOOL=TRUE" ];
+  ] ++ lib.optionals pulseSupport [ "-DUSE_PULSEAUDIO:BOOL=TRUE" ];
 
   meta = with lib; {
     homepage = "https://freedv.org/";
     description = "Digital voice for HF radio";
     license = licenses.lgpl21;
     maintainers = with maintainers; [ mvs ];
+    platforms = platforms.unix;
+    broken = stdenv.isDarwin;  # see https://github.com/NixOS/nixpkgs/issues/165422
   };
 }
diff --git a/nixpkgs/pkgs/applications/radio/gnuradio/wrapper.nix b/nixpkgs/pkgs/applications/radio/gnuradio/wrapper.nix
index 4cbccbd51819..6765c877437b 100644
--- a/nixpkgs/pkgs/applications/radio/gnuradio/wrapper.nix
+++ b/nixpkgs/pkgs/applications/radio/gnuradio/wrapper.nix
@@ -50,7 +50,8 @@ let
   ;
   pythonEnv = unwrapped.python.withPackages(ps: pythonPkgs);
 
-  name = (lib.appendToName "wrapped" unwrapped).name;
+  pname = unwrapped.pname + "-wrapped";
+  inherit (unwrapped) version;
   makeWrapperArgs = builtins.concatStringsSep " " ([
   ]
     # Emulating wrapGAppsHook & wrapQtAppsHook working together
@@ -59,7 +60,7 @@ let
       || (unwrapped.hasFeature "gr-qtgui")
       ) [
       "--prefix" "XDG_DATA_DIRS" ":" "$out/share"
-      "--prefix" "XDG_DATA_DIRS" ":" "$out/share/gsettings-schemas/${name}"
+      "--prefix" "XDG_DATA_DIRS" ":" "$out/share/gsettings-schemas/${pname}"
       "--prefix" "XDG_DATA_DIRS" ":" "${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}"
       "--prefix" "XDG_DATA_DIRS" ":" "${hicolor-icon-theme}/share"
       # Needs to run `gsettings` on startup, see:
@@ -135,7 +136,7 @@ let
   };
   self = if doWrap then
     stdenv.mkDerivation {
-      inherit name passthru;
+      inherit pname version passthru;
       buildInputs = [
         makeWrapper
         xorg.lndir
diff --git a/nixpkgs/pkgs/applications/radio/pothos/default.nix b/nixpkgs/pkgs/applications/radio/pothos/default.nix
index 817013dbf3ec..1b36b36829a0 100644
--- a/nixpkgs/pkgs/applications/radio/pothos/default.nix
+++ b/nixpkgs/pkgs/applications/radio/pothos/default.nix
@@ -9,7 +9,7 @@
 , poco
 , qtbase
 , qtsvg
-, libsForQt5
+, qwt6_1
 , nlohmann_json
 , soapysdr-with-plugins
 , portaudio
@@ -38,7 +38,7 @@ mkDerivation rec {
   nativeBuildInputs = [ cmake pkg-config doxygen wrapQtAppsHook ];
 
   buildInputs = [
-    pcre poco qtbase qtsvg libsForQt5.qwt nlohmann_json
+    pcre poco qtbase qtsvg qwt6_1 nlohmann_json
     soapysdr-with-plugins portaudio alsa-lib muparserx python3
   ];
 
diff --git a/nixpkgs/pkgs/applications/radio/rtl-ais/default.nix b/nixpkgs/pkgs/applications/radio/rtl-ais/default.nix
index 7fd37d21fe16..243d3126b5f4 100644
--- a/nixpkgs/pkgs/applications/radio/rtl-ais/default.nix
+++ b/nixpkgs/pkgs/applications/radio/rtl-ais/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub, pkg-config, libusb1, rtl-sdr }:
 
 stdenv.mkDerivation {
-  name = "rtl-ais";
+  pname = "rtl-ais";
   version = "0.8.1";
   buildInputs = [ pkg-config rtl-sdr libusb1 ];
 
diff --git a/nixpkgs/pkgs/applications/radio/sdrplay/default.nix b/nixpkgs/pkgs/applications/radio/sdrplay/default.nix
index d12b12ecc13c..441ff1cf0f3d 100644
--- a/nixpkgs/pkgs/applications/radio/sdrplay/default.nix
+++ b/nixpkgs/pkgs/applications/radio/sdrplay/default.nix
@@ -4,7 +4,7 @@ let
     else if stdenv.isi686    then "i686"
     else throw "unsupported architecture";
 in stdenv.mkDerivation rec {
-  name = "sdrplay";
+  pname = "sdrplay";
   version = "3.07.1";
 
   src = fetchurl {
diff --git a/nixpkgs/pkgs/applications/radio/soapysdrplay/default.nix b/nixpkgs/pkgs/applications/radio/soapysdrplay/default.nix
index dbee593bd0d6..d205462fb604 100644
--- a/nixpkgs/pkgs/applications/radio/soapysdrplay/default.nix
+++ b/nixpkgs/pkgs/applications/radio/soapysdrplay/default.nix
@@ -1,8 +1,8 @@
 { stdenv, lib, fetchFromGitHub, cmake, pkg-config, soapysdr, sdrplay }:
 
 stdenv.mkDerivation {
-  name = "soapysdr-sdrplay3";
-  version = "20210425";
+  pname = "soapysdr-sdrplay3";
+  version = "unstable-2021-04-25";
 
   src = fetchFromGitHub {
     owner = "pothosware";
diff --git a/nixpkgs/pkgs/applications/radio/soundmodem/default.nix b/nixpkgs/pkgs/applications/radio/soundmodem/default.nix
index bedcc8b02c4e..01a8006822f6 100644
--- a/nixpkgs/pkgs/applications/radio/soundmodem/default.nix
+++ b/nixpkgs/pkgs/applications/radio/soundmodem/default.nix
@@ -1,11 +1,11 @@
 { lib, stdenv, fetchurl, pkg-config, alsa-lib, audiofile, gtk2, libxml2 }:
 
 stdenv.mkDerivation rec {
-  name = "soundmodem";
+  pname = "soundmodem";
   version = "0.20";
 
   src = fetchurl {
-    url = "https://archive.org/download/${name}-${version}/${name}-${version}.tar.gz";
+    url = "https://archive.org/download/soundmodem-${version}/soundmodem-${version}.tar.gz";
     sha256 = "156l3wjnh5rcisxb42kcmlf74swf679v4xnj09zy5j74rd4h721z";
   };
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     '';
     #homepage = "http://gna.org/projects/soundmodem"; # official, but "Connection refused"
     homepage = "http://soundmodem.vk4msl.id.au/";
-    downloadPage = "https://archive.org/download/${name}-${version}/${name}-${version}.tar.gz";
+    downloadPage = "https://archive.org/download/${pname}-${version}/${pname}-${version}.tar.gz";
     license = licenses.gpl2Only;
     maintainers = with maintainers; [ ymarkus ];
     platforms = platforms.all;
diff --git a/nixpkgs/pkgs/applications/radio/srsran/default.nix b/nixpkgs/pkgs/applications/radio/srsran/default.nix
new file mode 100644
index 000000000000..dc7ae777df71
--- /dev/null
+++ b/nixpkgs/pkgs/applications/radio/srsran/default.nix
@@ -0,0 +1,49 @@
+{ stdenv
+, lib
+, cmake
+, fetchFromGitHub
+, pkg-config
+, fftwFloat
+, mbedtls
+, boost
+, lksctp-tools
+, libconfig
+, pcsclite
+, uhd
+, soapysdr
+, libbladeRF
+}:
+
+stdenv.mkDerivation rec {
+  pname = "srsran";
+  version = "21.10";
+
+  src = fetchFromGitHub {
+    owner = "srsran";
+    repo = "srsran";
+    rev = "release_${builtins.replaceStrings ["."] ["_"] version}";
+    sha256 = "sha256-uJv8khevp7g2p4zT6bkrut67kvMu+fuL1VHDDit0viw=";
+  };
+
+  nativeBuildInputs = [ cmake pkg-config ];
+
+  buildInputs = [
+    fftwFloat
+    mbedtls
+    boost
+    libconfig
+    lksctp-tools
+    pcsclite
+    uhd
+    soapysdr
+    libbladeRF
+  ];
+
+  meta = with lib; {
+    homepage = "https://www.srslte.com/";
+    description = "Open-source 4G and 5G software radio suite.";
+    license = licenses.agpl3;
+    platforms = with platforms; linux ;
+    maintainers = with maintainers; [ hexagonal-sun ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/science/astronomy/gnuastro/default.nix b/nixpkgs/pkgs/applications/science/astronomy/gnuastro/default.nix
new file mode 100644
index 000000000000..aed029f9d367
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/astronomy/gnuastro/default.nix
@@ -0,0 +1,36 @@
+{ lib, stdenv, fetchurl, libtool
+, cfitsio, curl, ghostscript, gsl, libgit2, libjpeg, libtiff, lzlib, wcslib }:
+
+stdenv.mkDerivation rec {
+  pname = "gnuastro";
+  version = "0.17";
+
+  src = fetchurl {
+    url = "mirror://gnu/gnuastro/gnuastro-${version}.tar.gz";
+    sha256 = "sha256-xBvtM8wkDOqXg/Q2dNfPR0R0ZgRm4QiPJZoLDKivaPU=";
+  };
+
+  nativeBuildInputs = [ libtool ];
+
+  buildInputs = [
+    cfitsio
+    curl
+    ghostscript
+    gsl
+    libgit2
+    libjpeg
+    libtiff
+    lzlib
+    wcslib
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with lib; {
+    description = "GNU astronomy utilities and library";
+    homepage = "https://www.gnu.org/software/gnuastro/";
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ sikmir ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/science/astronomy/kstars/default.nix b/nixpkgs/pkgs/applications/science/astronomy/kstars/default.nix
index 3cd98f1acadc..9f58de432596 100644
--- a/nixpkgs/pkgs/applications/science/astronomy/kstars/default.nix
+++ b/nixpkgs/pkgs/applications/science/astronomy/kstars/default.nix
@@ -14,11 +14,11 @@
 
 mkDerivation rec {
   pname = "kstars";
-  version = "3.5.7";
+  version = "3.5.8";
 
   src = fetchurl {
     url = "mirror://kde/stable/kstars/kstars-${version}.tar.xz";
-    sha256 = "sha256-qo8SLum46BM0QzGR6rJ2w2ERK53Lm8+N+ghR6HoQDQY=";
+    sha256 = "sha256-Zg2QKDe3q/OBDW4k9y/YTwREopvX1D4YlrGf7OHIjD8=";
   };
 
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
diff --git a/nixpkgs/pkgs/applications/science/astronomy/phd2/default.nix b/nixpkgs/pkgs/applications/science/astronomy/phd2/default.nix
index 543e6820a763..52049302a27b 100644
--- a/nixpkgs/pkgs/applications/science/astronomy/phd2/default.nix
+++ b/nixpkgs/pkgs/applications/science/astronomy/phd2/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "phd2";
-  version = "2.6.10";
+  version = "2.6.11";
 
   src = fetchFromGitHub {
     owner = "OpenPHDGuiding";
     repo = "phd2";
     rev = "v${version}";
-    sha256 = "sha256-2ZiPjhlguWXFcC53xG1aqAode7twtoHWszFUMQkK5xU=";
+    sha256 = "sha256-iautgHOVzdLWYGOVu3wHBDt30uCbaP58mDz/l7buB1k=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/science/astronomy/siril/default.nix b/nixpkgs/pkgs/applications/science/astronomy/siril/default.nix
index b50cb4b71d0d..4a51e88dc3b9 100644
--- a/nixpkgs/pkgs/applications/science/astronomy/siril/default.nix
+++ b/nixpkgs/pkgs/applications/science/astronomy/siril/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "siril";
-  version = "0.99.10.1";
+  version = "1.0.0";
 
   src = fetchFromGitLab {
     owner = "free-astro";
     repo = pname;
     rev = version;
-    sha256 = "sha256-gqV+pJNaU+GnYiUo/imofgNdeM+AtDg/pSH7aoqhkYA=";
+    sha256 = "sha256-yqWFEa1fnSwl0ecN9hMI13QCfj0f69CFqTJlEAhTpJI=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/science/astronomy/stellarium/default.nix b/nixpkgs/pkgs/applications/science/astronomy/stellarium/default.nix
index 0963b4c17e02..7b5f28fbd848 100644
--- a/nixpkgs/pkgs/applications/science/astronomy/stellarium/default.nix
+++ b/nixpkgs/pkgs/applications/science/astronomy/stellarium/default.nix
@@ -1,25 +1,25 @@
 { stdenv, lib, mkDerivation, fetchFromGitHub
 , cmake, freetype, libpng, libGLU, libGL, openssl, perl, libiconv
-, qtscript, qtserialport, qttools
+, qtscript, qtserialport, qttools, qtcharts
 , qtmultimedia, qtlocation, qtbase, wrapQtAppsHook
 }:
 
 mkDerivation rec {
   pname = "stellarium";
-  version = "0.21.3";
+  version = "0.22.0";
 
   src = fetchFromGitHub {
     owner = "Stellarium";
     repo = "stellarium";
     rev = "v${version}";
-    sha256 = "sha256-TQMLy5ziBF7YqPDzPwgjY5FHxxMUe7MXo/TGxQ1nGcg=";
+    sha256 = "sha256-scG/SS9emEmrZunv6n3Vzcchoh0Cf9rDOkuxAMnxNk4=";
   };
 
   nativeBuildInputs = [ cmake perl wrapQtAppsHook ];
 
   buildInputs = [
     freetype libpng libGLU libGL openssl libiconv qtscript qtserialport qttools
-    qtmultimedia qtlocation qtbase
+    qtmultimedia qtlocation qtbase qtcharts
   ];
 
   preConfigure = lib.optionalString stdenv.isDarwin ''
diff --git a/nixpkgs/pkgs/applications/science/biology/flywheel-cli/default.nix b/nixpkgs/pkgs/applications/science/biology/flywheel-cli/default.nix
new file mode 100644
index 000000000000..7db8b0066263
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/biology/flywheel-cli/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, stdenv
+, fetchurl
+, unzip
+}:
+
+let
+  inherit (stdenv.targetPlatform) system;
+  throwSystem = throw "Unsupported system: ${system}";
+
+  os = {
+    x86_64-darwin = "darwin";
+    x86_64-linux = "linux";
+  }.${system} or throwSystem;
+
+  sha256 = {
+    x86_64-darwin = "sha256-OIyEu3Hsobui9s5+T9nC10SxMw0MhgmTA4SN9Ridyzo=";
+    x86_64-linux = "sha256-SxBjRd95hoh2zwX6IDnkZnTWVduQafPHvnWw8qTuM78=";
+  }.${system} or throwSystem;
+in
+stdenv.mkDerivation rec {
+  pname = "flywheel-cli";
+  version = "16.2.0";
+
+  src = fetchurl {
+    url = "https://storage.googleapis.com/flywheel-dist/cli/${version}/fw-${os}_amd64-${version}.zip";
+    inherit sha256;
+  };
+
+  nativeBuildInputs = [ unzip ];
+
+  unpackPhase = ''
+    unzip ${src}
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    install -Dt $out/bin ./${os}_amd64/fw
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Library and command line interface for interacting with a Flywheel site";
+    homepage = "https://gitlab.com/flywheel-io/public/python-cli";
+    license = licenses.mit;
+    maintainers = with maintainers; [ rbreslow ];
+    platforms = [ "x86_64-darwin" "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/science/biology/ncbi-tools/default.nix b/nixpkgs/pkgs/applications/science/biology/ncbi-tools/default.nix
index 0e273dbefaac..dff041971ea7 100644
--- a/nixpkgs/pkgs/applications/science/biology/ncbi-tools/default.nix
+++ b/nixpkgs/pkgs/applications/science/biology/ncbi-tools/default.nix
@@ -8,10 +8,10 @@
 # Another note: you may want the older and deprecated C-libs at ftp://ftp.ncbi.nih.gov/toolbox/ncbi_tools++/2008/Mar_17_2008/NCBI_C_Toolkit/ncbi_c--Mar_17_2008.tar.gz
 
 stdenv.mkDerivation rec {
-  name = "ncbi_tools";
-  ncbi_version = "Dec_31_2008";
+  pname = "ncbi_tools";
+  version = "Dec_31_2008";
   src = fetchurl {
-    url = "ftp://ftp.ncbi.nih.gov/toolbox/ncbi_tools++/2008/${ncbi_version}/ncbi_cxx--${ncbi_version}.tar.gz";
+    url = "ftp://ftp.ncbi.nih.gov/toolbox/ncbi_tools++/2008/${version}/ncbi_cxx--${version}.tar.gz";
     sha256 = "1b2v0dcdqn3bysgdkj57sxmd6s0hc9wpnxssviz399g6plhxggbr";
   };
 
diff --git a/nixpkgs/pkgs/applications/science/chemistry/jmol/default.nix b/nixpkgs/pkgs/applications/science/chemistry/jmol/default.nix
index 3f837edb4c8b..a747b96dd180 100644
--- a/nixpkgs/pkgs/applications/science/chemistry/jmol/default.nix
+++ b/nixpkgs/pkgs/applications/science/chemistry/jmol/default.nix
@@ -25,14 +25,14 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  version = "14.32.30";
+  version = "14.32.39";
   pname = "jmol";
 
   src = let
     baseVersion = "${lib.versions.major version}.${lib.versions.minor version}";
   in fetchurl {
     url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${version}/Jmol-${version}-binary.tar.gz";
-    sha256 = "sha256-VpOoduUA0iD+nI83GSQYQDHoK2Snog0NHkHWHfpLqFM=";
+    sha256 = "sha256-ekwipWWGsXYECJBOmw0+uIWHDpdF8T8jZUo6LeqD6Io=";
   };
 
   patchPhase = ''
diff --git a/nixpkgs/pkgs/applications/science/chemistry/marvin/default.nix b/nixpkgs/pkgs/applications/science/chemistry/marvin/default.nix
index 698095715cc5..2b5a1b969509 100644
--- a/nixpkgs/pkgs/applications/science/chemistry/marvin/default.nix
+++ b/nixpkgs/pkgs/applications/science/chemistry/marvin/default.nix
@@ -4,12 +4,12 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "marvin";
-  version = "22.7.0";
+  version = "22.8.0";
 
   src = fetchurl {
     name = "marvin-${version}.deb";
     url = "http://dl.chemaxon.com/marvin/${version}/marvin_linux_${versions.majorMinor version}.deb";
-    sha256 = "sha256-xK4C+0/Qpc2vXPmsI8KuHuDJLmJ5LXdAfRIREE+gkWA=";
+    sha256 = "sha256-dmG2p4KqzjLuuVw+wPWaxVoqOqba8Tx5l44PauWpqv4=";
   };
 
   nativeBuildInputs = [ dpkg makeWrapper ];
diff --git a/nixpkgs/pkgs/applications/science/computer-architecture/qtrvsim/default.nix b/nixpkgs/pkgs/applications/science/computer-architecture/qtrvsim/default.nix
index 24d9f642ec56..fc840fe45fbc 100644
--- a/nixpkgs/pkgs/applications/science/computer-architecture/qtrvsim/default.nix
+++ b/nixpkgs/pkgs/applications/science/computer-architecture/qtrvsim/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "QtRVSim";
-  version = "0.9.1";
+  version = "0.9.2";
 
   src = fetchFromGitHub {
     owner = "cvut";
     repo = "qtrvsim";
     rev = "refs/tags/v${version}";
-    sha256 = "AOksVS0drIBnK4RCxZw40yVxf4E8GjG9kU0rIZsY9gA=";
+    sha256 = "B1l+ysrodeDbxYfdLLMF8yk4/uPXTcDrTaMtYm89HuU=";
   };
 
   nativeBuildInputs = [ cmake wrapQtAppsHook ];
diff --git a/nixpkgs/pkgs/applications/science/electronics/caneda/default.nix b/nixpkgs/pkgs/applications/science/electronics/caneda/default.nix
index 6a9a491af1ee..1adac4832a13 100644
--- a/nixpkgs/pkgs/applications/science/electronics/caneda/default.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/caneda/default.nix
@@ -1,4 +1,4 @@
-{ mkDerivation, lib, fetchFromGitHub, cmake, qtbase, qttools, qtsvg, qwt }:
+{ mkDerivation, lib, fetchFromGitHub, cmake, qtbase, qttools, qtsvg, qwt6_1}:
 
 mkDerivation rec {
   pname = "caneda";
@@ -12,7 +12,7 @@ mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ qtbase qttools qtsvg qwt ];
+  buildInputs = [ qtbase qttools qtsvg qwt6_1 ];
 
   meta = {
     description = "Open source EDA software focused on easy of use and portability";
diff --git a/nixpkgs/pkgs/applications/science/electronics/gaw/default.nix b/nixpkgs/pkgs/applications/science/electronics/gaw/default.nix
index 928613737b47..7f0b5625e85a 100644
--- a/nixpkgs/pkgs/applications/science/electronics/gaw/default.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/gaw/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gaw";
-  version = "20200922";
+  version = "20220315";
 
   src = fetchurl {
     url = "https://download.tuxfamily.org/gaw/download/gaw3-${version}.tar.gz";
-    sha256 = "0qmap11v470a1yj4ypfvdq6wkfni77ijqpknka8b4fndi62sl4wa";
+    sha256 = "0j2bqi9444s1mfbr7x9rqp232xf7ab9z7ifsnl305jsklp6qmrbg";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix b/nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix
index 364321afbf71..9adfac344b38 100644
--- a/nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix
@@ -3,45 +3,45 @@
 {
   "kicad" = {
     kicadVersion = {
-      version =			"6.0.2";
+      version =			"6.0.4";
       src = {
-        rev =			"378541a8ebe8a691b61c8ed1b4012c71343acfbb";
-        sha256 =		"1lcl25zkqkyj5rvw9rad3n7bklpg10kmhmhkyyrgg8ql7di6wa0f";
+        rev =			"6f826c9f35a3dc9a104bb24a0a89a2e04b2d9721";
+        sha256 =		"0lki59ws0ncqkp9wxrhyni1ck2sx5z07mmpkjg0d9jpkync9hx9y";
       };
     };
     libVersion = {
-      version =			"6.0.2";
+      version =			"6.0.4";
       libSources = {
-        symbols.rev =		"80a176076a8f3785a4cd64e55ec87f27f6fcc163";
-        symbols.sha256 =	"1f57wv5b95iqd64k8ab82fvxnh5q890v7bzclmn019gl6ikisxj5";
-        templates.rev =		"c9a51b852eacc3e64639548032b50edd80ddb27c";
+        symbols.rev =		"9d00fbb9373571e54d9f29985b21a03d862795a4";
+        symbols.sha256 =	"12lyc187337bf2frl3jvwqdwwnd69f7l414k3kxhccs3sa2mcf1y";
+        templates.rev =		"c4f4fe4b821e062a3ddd275f9313d5d81ff8f8d7";
         templates.sha256 =	"13h9ly6amiwm7zkwa2fd9730kh295ls8j95fszlfjp9rczv2yyzm";
-        footprints.rev =	"c81b399054b0d3842094d7e8dfe08eb04310573a";
-        footprints.sha256 =	"1xmnq2731v2afan1d08xb1qqgl5xd01v5jphi6cdmw28ri555cna";
-        packages3d.rev =	"75175a21b720c59a26efce9a8c6dba3d032392a9";
-        packages3d.sha256 =	"10zf8hp85ksi84cbiczsksn0ygvri4ffsa126v73nnkx6irw6nkk";
+        footprints.rev =	"c48d3dfcfa6ce58ec11e10b7a74878bb69fae580";
+        footprints.sha256 =	"0px2g9jansky0rvc0bdjylbmv8xwhc0q63g88hd2nzbknqli9f1y";
+        packages3d.rev =	"b1de0b5c3edc16999602b809a05017da62ff52cc";
+        packages3d.sha256 =	"0ms9py93qyihxrhh9wm2ziycmdn88m36r8adx22ynjnxixw1f9ja";
       };
     };
   };
   "kicad-unstable" = {
     kicadVersion = {
-      version =			"2022-01-13";
+      version =			"2022-03-19";
       src = {
-        rev =			"33a4c9b08e040a17daefae9069fdf834063555b4";
-        sha256 =		"1ma0i0vgvdsjrmlfzdi34byly7n1vsaynwp9f1hny4s1m53nirha";
+        rev =			"58c146a7c00ee64ca07cacbcc594121f40aa2aeb";
+        sha256 =		"0gcbl11pq0dgp590hdwsh5np7spixk5kgva0v8mx9rqd374z4bdm";
       };
     };
     libVersion = {
-      version =			"2022-01-13";
+      version =			"2022-03-19";
       libSources = {
-        symbols.rev =		"e3b198d827817b79fb8a6df07f0cfc1cb9140edf";
-        symbols.sha256 =	"1azjx1bmxaz8bniyw75lq60mc8hvay00jn9qdc2zp7isy3c9ibp0";
+        symbols.rev =		"9b8d3163450172a7f368462c6d005841ad199144";
+        symbols.sha256 =	"12lyc187337bf2frl3jvwqdwwnd69f7l414k3kxhccs3sa2mcf1y";
         templates.rev =		"a27d83f0a20f0be0c1ab04b139a0c518da51a5d4";
         templates.sha256 =	"13h9ly6amiwm7zkwa2fd9730kh295ls8j95fszlfjp9rczv2yyzm";
-        footprints.rev =	"a939c691f1c515d6830e54cf035a420de3e5a92c";
-        footprints.sha256 =	"13g6y1l95znz6ixc4dpqsxp3icrzs951xpabnzr5znw42577gm9j";
-        packages3d.rev =	"196a26294d8e501b0e8b06c1df1abae0ebe23051";
-        packages3d.sha256 =	"0ywlk00dfwv7hc494finmazdh3g1yx0ir7bvnd8zp6cq4ql0nwl4";
+        footprints.rev =	"c871df2c81a894bc5e91d2d517b76884d5a918aa";
+        footprints.sha256 =	"0px2g9jansky0rvc0bdjylbmv8xwhc0q63g88hd2nzbknqli9f1y";
+        packages3d.rev =	"6ff98426fd51d53c55bc48025d66d3d0b0c5df92";
+        packages3d.sha256 =	"0ms9py93qyihxrhh9wm2ziycmdn88m36r8adx22ynjnxixw1f9ja";
       };
     };
   };
diff --git a/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/0002-fix-format-security.patch b/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/0002-fix-format-security.patch
deleted file mode 100644
index 37ae35195503..000000000000
--- a/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/0002-fix-format-security.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff --git a/database/DBio.c b/database/DBio.c
-index 93c4b0b..292ea5f 100644
---- a/database/DBio.c
-+++ b/database/DBio.c
-@@ -2378,12 +2378,12 @@ DBCellWriteFile(cellDef, f)
- 
- #define FPRINTF(f,s)\
- {\
--     if (fprintf(f,s) == EOF) goto ioerror;\
-+     if (fprintf(f,"%s",s) == EOF) goto ioerror;\
-      DBFileOffset += strlen(s);\
- }
- #define FPRINTR(f,s)\
- {\
--     if (fprintf(f,s) == EOF) return 1;\
-+     if (fprintf(f,"%s",s) == EOF) return 1;\
-      DBFileOffset += strlen(s);\
- }
- 
diff --git a/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/default.nix b/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/default.nix
index 82d8dbd2ddc4..edee5946d946 100644
--- a/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/default.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation rec {
   pname = "magic-vlsi";
-  version = "8.3.109";
+  version = "8.3.277";
 
   src = fetchurl {
     url    = "http://opencircuitdesign.com/magic/archive/magic-${version}.tgz";
-    sha256 = "sha256-ZK4OF5XwjW1OJmOVUFqLklfpM10eIwCILygqIyjRbEQ=";
+    sha256 = "sha256-cS3KaIVwGN/mMfRKjJxzdY6DeNV7tw2fATIHrFBV0fY=";
   };
 
   nativeBuildInputs = [ python3 ];
@@ -48,7 +48,6 @@ stdenv.mkDerivation rec {
 
   patches = [
     ./0001-strip-bin-prefix.patch
-    ./0002-fix-format-security.patch
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/applications/science/electronics/ngspice/default.nix b/nixpkgs/pkgs/applications/science/electronics/ngspice/default.nix
index 0eed8b1692aa..f4bf424f1090 100644
--- a/nixpkgs/pkgs/applications/science/electronics/ngspice/default.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/ngspice/default.nix
@@ -14,11 +14,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ngspice";
-  version = "34";
+  version = "36";
 
   src = fetchurl {
     url = "mirror://sourceforge/ngspice/ngspice-${version}.tar.gz";
-    sha256 = "sha256-ImP//GaUdUlyr3By7wHP5irHkIANrWUbwpC/yueb17U=";
+    sha256 = "sha256-T4GCh++6JFNBBGY1t1eugfh5VJsyakMWtfbml6pRf4w=";
   };
 
   nativeBuildInputs = [ flex bison ];
diff --git a/nixpkgs/pkgs/applications/science/electronics/xcircuit/default.nix b/nixpkgs/pkgs/applications/science/electronics/xcircuit/default.nix
index 68322a191787..eb2a29382e60 100644
--- a/nixpkgs/pkgs/applications/science/electronics/xcircuit/default.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/xcircuit/default.nix
@@ -1,16 +1,12 @@
 { lib, stdenv, fetchurl, autoreconfHook, automake, pkg-config
 , cairo, ghostscript, ngspice, tcl, tk, xorg, zlib }:
 
-let
+stdenv.mkDerivation rec {
   version = "3.10.12";
-  name = "xcircuit-${version}";
-  inherit (lib) getBin;
-
-in stdenv.mkDerivation {
-  inherit name version;
+  pname = "xcircuit";
 
   src = fetchurl {
-    url = "http://opencircuitdesign.com/xcircuit/archive/${name}.tgz";
+    url = "http://opencircuitdesign.com/xcircuit/archive/xcircuit-${version}.tgz";
     sha256 = "1h1ywc3mr7plvwnhdii2zgnnv5ih2nhyl4qbdjpi83dq0aq1s2mn";
   };
 
@@ -20,7 +16,7 @@ in stdenv.mkDerivation {
   configureFlags = [
     "--with-tcl=${tcl}/lib"
     "--with-tk=${tk}/lib"
-    "--with-ngspice=${getBin ngspice}/bin/ngspice"
+    "--with-ngspice=${lib.getBin ngspice}/bin/ngspice"
   ];
 
   buildInputs = with xorg; [ cairo ghostscript libSM libXt libICE libX11 libXpm tcl tk zlib ];
diff --git a/nixpkgs/pkgs/applications/science/logic/coq/default.nix b/nixpkgs/pkgs/applications/science/logic/coq/default.nix
index 29959be2fa97..a9fb21681586 100644
--- a/nixpkgs/pkgs/applications/science/logic/coq/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/coq/default.nix
@@ -47,6 +47,7 @@ let
    "8.14.0".sha256     = "04y2z0qyvag66zanfyc3f9agvmzbn4lsr0p1l7ck6yjhqx7vbm17";
    "8.14.1".sha256     = "0sx78pgx0qw8v7v2r32zzy3l161zipzq95iacda628girim7psnl";
    "8.15.0".sha256     = "sha256:1ma76wfrpfsl72yh10w1ys2a0vi0mdc2jc79kdc8nrmxkhpw1nxx";
+   "8.15.1".sha256     = "sha256:1dsa04jzkx5pw69pmxn0l55q4w88lg6fvz7clbga0bazzsfnsgd6";
   };
   releaseRev = v: "V${v}";
   fetched = import ../../../../build-support/coq/meta-fetch/default.nix
diff --git a/nixpkgs/pkgs/applications/science/logic/isabelle/components/default.nix b/nixpkgs/pkgs/applications/science/logic/isabelle/components/default.nix
new file mode 100644
index 000000000000..dd7b605f56af
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/logic/isabelle/components/default.nix
@@ -0,0 +1,5 @@
+{ callPackage }:
+
+{
+  isabelle-linter = callPackage ./isabelle-linter.nix {};
+}
diff --git a/nixpkgs/pkgs/applications/science/logic/isabelle/components/isabelle-linter.nix b/nixpkgs/pkgs/applications/science/logic/isabelle/components/isabelle-linter.nix
new file mode 100644
index 000000000000..7fca547f67c8
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/logic/isabelle/components/isabelle-linter.nix
@@ -0,0 +1,22 @@
+{ stdenv, lib, fetchFromGitHub, isabelle }:
+
+stdenv.mkDerivation rec {
+  pname = "isabelle-linter";
+  version = "Isabelle2021-1-v1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "isabelle-prover";
+    repo = "isabelle-linter";
+    rev = version;
+    sha256 = "0v6scc2rhj6bjv530gzz6i57czzcgpkw7a9iqnfdnm5gvs5qjk7a";
+  };
+
+  installPhase = import ./mkBuild.nix { inherit isabelle; path = "${pname}-${version}"; };
+
+  meta = with lib; {
+    description = "Linter component for Isabelle.";
+    homepage = "https://github.com/isabelle-prover/isabelle-linter";
+    maintainers = with maintainers; [ jvanbruegge ];
+    license = licenses.mit;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/science/logic/isabelle/components/mkBuild.nix b/nixpkgs/pkgs/applications/science/logic/isabelle/components/mkBuild.nix
new file mode 100644
index 000000000000..a05b5196b007
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/logic/isabelle/components/mkBuild.nix
@@ -0,0 +1,36 @@
+{ isabelle, path }:
+
+let
+  dir = "$out/isabelle/${isabelle.dirname}";
+  iDir = "${isabelle}/${isabelle.dirname}";
+in ''
+  shopt -s extglob
+  mkdir -p ${dir}/lib/classes
+
+  cDir=$out/${isabelle.dirname}/contrib/${path}
+  mkdir -p $cDir
+  cp -r !(isabelle) $cDir
+
+  cd ${dir}
+  ln -s ${iDir}/!(lib|bin) ./
+  ln -s ${iDir}/lib/!(classes) lib/
+  ln -s ${iDir}/lib/classes/* lib/classes/
+
+  mkdir bin/
+  cp ${iDir}/bin/* bin/
+
+  export HOME=$TMP
+  bin/isabelle components -u $cDir
+  bin/isabelle scala_build
+
+  cd lib/classes
+  for f in ${iDir}/lib/classes/*; do
+    rm $(basename $f)
+  done
+
+  lDir=$out/${isabelle.dirname}/lib/classes/
+  mkdir -p $lDir
+  cp -r * $lDir
+  cd $out
+  rm -rf isabelle
+''
diff --git a/nixpkgs/pkgs/applications/science/logic/isabelle/default.nix b/nixpkgs/pkgs/applications/science/logic/isabelle/default.nix
index aaac288b615d..6696527cece2 100644
--- a/nixpkgs/pkgs/applications/science/logic/isabelle/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/isabelle/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, coreutils, nettools, java, scala, polyml, z3, veriT, vampire, eprover-ho, rlwrap, perl, makeDesktopItem }:
+{ lib, stdenv, fetchurl, coreutils, nettools, java, scala, polyml, z3, veriT, vampire, eprover-ho, naproche, rlwrap, perl, makeDesktopItem, isabelle-components, isabelle, symlinkJoin }:
 # nettools needed for hostname
 
 stdenv.mkDerivation rec {
@@ -66,7 +66,8 @@ stdenv.mkDerivation rec {
       ISABELLE_JDK_HOME=${java}
     EOF
 
-    sed -i -e 's/naproche_server : bool = true/naproche_server : bool = false/' contrib/naproche-*/etc/options
+    rm contrib/naproche-*/x86*/Naproche-SAD
+    ln -s ${naproche}/bin/Naproche-SAD contrib/naproche-*/x86*/
 
     echo ISABELLE_LINE_EDITOR=${rlwrap}/bin/rlwrap >>etc/settings
 
@@ -152,4 +153,29 @@ stdenv.mkDerivation rec {
     maintainers = [ maintainers.jwiegley maintainers.jvanbruegge ];
     platforms = platforms.linux;
   };
+} // {
+  withComponents = f:
+    let
+      base = "$out/${isabelle.dirname}";
+      components = f isabelle-components;
+    in symlinkJoin {
+      name = "isabelle-with-components-${isabelle.version}";
+      paths = [ isabelle ] ++ components;
+
+      postBuild = ''
+        rm $out/bin/*
+
+        cd ${base}
+        rm bin/*
+        cp ${isabelle}/${isabelle.dirname}/bin/* bin/
+        rm etc/components
+        cat ${isabelle}/${isabelle.dirname}/etc/components > etc/components
+
+        export HOME=$TMP
+        bin/isabelle install $out/bin
+        patchShebangs $out/bin
+      '' + lib.concatMapStringsSep "\n" (c: ''
+        echo contrib/${c.pname}-${c.version} >> ${base}/etc/components
+      '') components;
+    };
 }
diff --git a/nixpkgs/pkgs/applications/science/logic/klee/default.nix b/nixpkgs/pkgs/applications/science/logic/klee/default.nix
index e0ace7e81c82..612d9fd57c7c 100644
--- a/nixpkgs/pkgs/applications/science/logic/klee/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/klee/default.nix
@@ -1,5 +1,5 @@
-{ stdenv
-, lib
+{ lib
+, callPackage
 , fetchFromGitHub
 , fetchpatch
 , cmake
@@ -14,13 +14,37 @@
 , sqlite
 , gtest
 , lit
+
+# Build KLEE in debug mode. Defaults to false.
 , debug ? false
+
+# Include debug info in the build. Defaults to true.
+, includeDebugInfo ? true
+
+# Enable KLEE asserts. Defaults to true, since LLVM is built with them.
+, asserts ? true
+
+# Build the KLEE runtime in debug mode. Defaults to true, as this improves
+# stack traces of the software under test.
+, debugRuntime ? true
+
+# Enable runtime asserts. Default false.
+, runtimeAsserts ? false
+
+# Extra klee-uclibc config.
+, extraKleeuClibcConfig ? {}
 }:
 
 let
+  # Python used for KLEE tests.
   kleePython = python3.withPackages (ps: with ps; [ tabulate ]);
+
+  # The klee-uclibc derivation.
+  kleeuClibc = callPackage ./klee-uclibc.nix {
+    inherit clang_9 llvmPackages_9 extraKleeuClibcConfig debugRuntime runtimeAsserts;
+  };
 in
-stdenv.mkDerivation rec {
+clang_9.stdenv.mkDerivation rec {
   pname = "klee";
   version = "2.2";
   src = fetchFromGitHub {
@@ -30,11 +54,12 @@ stdenv.mkDerivation rec {
     sha256 = "Ar3BKfADjJvvP0dI9+x/l3RDs8ncx4jmO7ol4MgOr4M=";
   };
   buildInputs = [
-    llvmPackages_9.llvm clang_9 z3 stp cryptominisat
+    llvmPackages_9.llvm
+    z3 stp cryptominisat
     gperftools sqlite
   ];
   nativeBuildInputs = [
-    cmake
+    cmake clang_9
   ];
   checkInputs = [
     gtest
@@ -46,14 +71,17 @@ stdenv.mkDerivation rec {
   ];
 
   cmakeFlags = let
-    buildType = if debug then "Debug" else "Release";
-  in
-  [
-    "-DCMAKE_BUILD_TYPE=${buildType}"
-    "-DKLEE_RUNTIME_BUILD_TYPE=${buildType}"
-    "-DENABLE_POSIX_RUNTIME=ON"
-    "-DENABLE_UNIT_TESTS=ON"
-    "-DENABLE_SYSTEM_TESTS=ON"
+    onOff = val: if val then "ON" else "OFF";
+  in [
+    "-DCMAKE_BUILD_TYPE=${if debug then "Debug" else if !debug && includeDebugInfo then "RelWithDebInfo" else "MinSizeRel"}"
+    "-DKLEE_RUNTIME_BUILD_TYPE=${if debugRuntime then "Debug" else "Release"}"
+    "-DKLEE_ENABLE_TIMESTAMP=${onOff false}"
+    "-DENABLE_KLEE_UCLIBC=${onOff true}"
+    "-DKLEE_UCLIBC_PATH=${kleeuClibc}"
+    "-DENABLE_KLEE_ASSERTS=${onOff asserts}"
+    "-DENABLE_POSIX_RUNTIME=${onOff true}"
+    "-DENABLE_UNIT_TESTS=${onOff true}"
+    "-DENABLE_SYSTEM_TESTS=${onOff true}"
     "-DGTEST_SRC_DIR=${gtest.src}"
     "-DGTEST_INCLUDE_DIR=${gtest.src}/googletest/include"
     "-Wno-dev"
@@ -66,21 +94,40 @@ stdenv.mkDerivation rec {
     patchShebangs .
   '';
 
-  /* This patch is currently necessary for the unit test suite to run correctly.
-   * See https://www.mail-archive.com/klee-dev@imperial.ac.uk/msg03136.html
-   * and https://github.com/klee/klee/pull/1458 for more information.
-   */
   patches = map fetchpatch [
+    /* This patch is currently necessary for the unit test suite to run correctly.
+     * See https://www.mail-archive.com/klee-dev@imperial.ac.uk/msg03136.html
+     * and https://github.com/klee/klee/pull/1458 for more information.
+     */
     {
       name = "fix-gtest";
       sha256 = "F+/6videwJZz4sDF9lnV4B8lMx6W11KFJ0Q8t1qUDf4=";
       url = "https://github.com/klee/klee/pull/1458.patch";
     }
+
+    # This patch fixes test compile issues with glibc 2.33+.
+    {
+      name = "fix-glibc-2.33";
+      sha256 = "PzxqtFyLy9KF1eA9AAKg1tu+ggRdvu7leuvXifayIcc=";
+      url = "https://github.com/klee/klee/pull/1385.patch";
+    }
+
+    # /etc/mtab doesn't exist in the Nix build sandbox.
+    {
+      name = "fix-etc-mtab-in-tests";
+      sha256 = "2Yb/rJA791esNNqq8uAXV+MML4YXIjPKkHBOufvyRoQ=";
+      url = "https://github.com/klee/klee/pull/1471.patch";
+    }
   ];
 
   doCheck = true;
   checkTarget = "check";
 
+  passthru = {
+    # Let the user depend on `klee.uclibc` for klee-uclibc
+    uclibc = kleeuClibc;
+  };
+
   meta = with lib; {
     description = "A symbolic virtual machine built on top of LLVM";
     longDescription = ''
diff --git a/nixpkgs/pkgs/applications/science/logic/klee/klee-uclibc.nix b/nixpkgs/pkgs/applications/science/logic/klee/klee-uclibc.nix
new file mode 100644
index 000000000000..2e3826c50c42
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/logic/klee/klee-uclibc.nix
@@ -0,0 +1,98 @@
+{ lib
+, fetchurl
+, fetchFromGitHub
+, which
+, linuxHeaders
+, clang_9
+, llvmPackages_9
+, python3
+, debugRuntime ? true
+, runtimeAsserts ? false
+, extraKleeuClibcConfig ? {}
+}:
+
+let
+  localeSrcBase = "uClibc-locale-030818.tgz";
+  localeSrc = fetchurl {
+    url = "http://www.uclibc.org/downloads/${localeSrcBase}";
+    sha256 = "xDYr4xijjxjZjcz0YtItlbq5LwVUi7k/ZSmP6a+uvVc=";
+  };
+  resolvedExtraKleeuClibcConfig = lib.mapAttrsToList (name: value: "${name}=${value}") (extraKleeuClibcConfig // {
+    "UCLIBC_DOWNLOAD_PREGENERATED_LOCALE_DATA" = "n";
+    "RUNTIME_PREFIX" = "/";
+    "DEVEL_PREFIX" = "/";
+  });
+in
+clang_9.stdenv.mkDerivation rec {
+  pname = "klee-uclibc";
+  version = "1.2";
+  src = fetchFromGitHub {
+    owner = "klee";
+    repo = "klee-uclibc";
+    rev = "klee_uclibc_v${version}";
+    sha256 = "qdrGMw+2XwpDsfxdv6swnoaoACcF5a/RWgUxUYbtPrI=";
+  };
+  nativeBuildInputs = [
+    clang_9
+    llvmPackages_9.llvm
+    python3
+    which
+  ];
+
+  # Some uClibc sources depend on Linux headers.
+  UCLIBC_KERNEL_HEADERS = "${linuxHeaders}/include";
+
+  # HACK: needed for cross-compile.
+  # See https://www.mail-archive.com/klee-dev@imperial.ac.uk/msg03141.html
+  KLEE_CFLAGS = "-idirafter ${clang_9}/resource-root/include";
+
+  prePatch = ''
+    patchShebangs ./configure
+    patchShebangs ./extra
+  '';
+
+  # klee-uclibc configure does not support --prefix, so we override configurePhase entirely
+  configurePhase = ''
+    ./configure ${lib.escapeShellArgs (
+      ["--make-llvm-lib"]
+      ++ lib.optional (!debugRuntime) "--enable-release"
+      ++ lib.optional runtimeAsserts "--enable-assertions"
+    )}
+
+    # Set all the configs we care about.
+    configs=(
+      PREFIX=$out
+    )
+    for value in ${lib.escapeShellArgs resolvedExtraKleeuClibcConfig}; do
+      configs+=("$value")
+    done
+
+    for configFile in .config .config.cmd; do
+      for config in "''${configs[@]}"; do
+        prefix="''${config%%=*}="
+        if grep -q "$prefix" "$configFile"; then
+          sed -i "s"'\001'"''${prefix}"'\001'"#''${prefix}"'\001'"g" "$configFile"
+        fi
+        echo "$config" >> "$configFile"
+      done
+    done
+  '';
+
+  # Link the locale source into the correct place
+  preBuild = ''
+    ln -sf ${localeSrc} extra/locale/${localeSrcBase}
+  '';
+
+  makeFlags = ["HAVE_DOT_CONFIG=y"];
+
+  meta = with lib; {
+    description = "A modified version of uClibc for KLEE.";
+    longDescription = ''
+      klee-uclibc is a bitcode build of uClibc meant for compatibility with the
+      KLEE symbolic virtual machine.
+    '';
+    homepage = "https://klee.github.io/";
+    license = licenses.lgpl3;
+    maintainers = with maintainers; [ numinit ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/science/logic/lean/default.nix b/nixpkgs/pkgs/applications/science/logic/lean/default.nix
index 1eea97a0fd23..b5e5ca8723d4 100644
--- a/nixpkgs/pkgs/applications/science/logic/lean/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/lean/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "lean";
-  version = "3.41.0";
+  version = "3.42.0";
 
   src = fetchFromGitHub {
     owner  = "leanprover-community";
@@ -11,8 +11,8 @@ stdenv.mkDerivation rec {
     # from. this is then used to check whether an olean file should be
     # rebuilt. don't use a tag as rev because this will get replaced into
     # src/githash.h.in in preConfigure.
-    rev    = "154ac72f4ff674bc4486ac611f926a3d6b999f9f";
-    sha256 = "0mpxlfjq460x1vi3v6qzgjv74asg0qlhykd51pj347795x5b1hf1";
+    rev    = "b35d4695da88139a9168f2ad7acf0782e66dc4f0";
+    sha256 = "02rpigw6lnyjw8ccrlp2mcvswawkhl5y6kqa3zq76qp1fdjqjrbp";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/applications/science/logic/naproche/default.nix b/nixpkgs/pkgs/applications/science/logic/naproche/default.nix
new file mode 100644
index 000000000000..5e286a9b57e3
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/logic/naproche/default.nix
@@ -0,0 +1,38 @@
+{ lib, fetchFromGitHub, haskellPackages, makeWrapper, eprover }:
+
+with haskellPackages; mkDerivation {
+  pname = "Naproche-SAD";
+  version = "0.1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "naproche";
+    repo = "naproche";
+    rev = "d39cea85ace04d5b3775fde9972a33886799bfe6";
+    sha256 = "1zqrldmxkzbyg9bssrbwb00zic29904igcipaz1m9al0456yjnkf";
+  };
+
+  isExecutable = true;
+
+  buildTools = [ hpack makeWrapper ];
+  executableHaskellDepends = [
+    base array bytestring containers ghc-prim megaparsec mtl network process
+    split temporary text threads time transformers uuid
+  ];
+
+  prePatch = "hpack";
+
+  checkPhase = ''
+    export NAPROCHE_EPROVER=${eprover}/bin/eprover
+    dist/build/Naproche-SAD/Naproche-SAD examples/cantor.ftl.tex -t 60 --tex=on
+  '';
+
+  postInstall = ''
+    wrapProgram $out/bin/Naproche-SAD \
+      --set-default NAPROCHE_EPROVER ${eprover}/bin/eprover
+  '';
+
+  homepage = "https://github.com/naproche/naproche#readme";
+  description = "Write formal proofs in natural language and LaTeX";
+  maintainers = with lib.maintainers; [ jvanbruegge ];
+  license = lib.licenses.gpl3Only;
+}
diff --git a/nixpkgs/pkgs/applications/science/logic/opensmt/default.nix b/nixpkgs/pkgs/applications/science/logic/opensmt/default.nix
index ef6f9b157d2f..9f104ab80a63 100644
--- a/nixpkgs/pkgs/applications/science/logic/opensmt/default.nix
+++ b/nixpkgs/pkgs/applications/science/logic/opensmt/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "opensmt";
-  version = "2.3.0";
+  version = "2.3.1";
 
   src = fetchFromGitHub {
     owner = "usi-verification-and-security";
     repo = "opensmt";
     rev = "v${version}";
-    sha256 = "sha256-5Gw9+J+3LHNUNbcHxsQR/ivWndL2P7yBt/Q35fBMg58=";
+    sha256 = "sha256-3F4Q/ZWlgkiiW7QVjnaaDLSNLVdfAOSmwYdQo1v9Lv4=";
   };
 
   nativeBuildInputs = [ cmake bison flex ];
diff --git a/nixpkgs/pkgs/applications/science/logic/why3/with-provers.nix b/nixpkgs/pkgs/applications/science/logic/why3/with-provers.nix
index 826473b38e9f..ae0acb1e525c 100644
--- a/nixpkgs/pkgs/applications/science/logic/why3/with-provers.nix
+++ b/nixpkgs/pkgs/applications/science/logic/why3/with-provers.nix
@@ -12,7 +12,7 @@ let configAwkScript = runCommand "why3-conf.awk" { inherit provers; }
   '';
 in
 stdenv.mkDerivation {
-  name = "${why3.name}-with-provers";
+  pname = "${why3.pname}-with-provers";
 
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ why3 ] ++ provers;
diff --git a/nixpkgs/pkgs/applications/science/logic/z3/4.4.0.nix b/nixpkgs/pkgs/applications/science/logic/z3/4.4.0.nix
index 2fbaa0a28caf..a3d6c16fb7df 100644
--- a/nixpkgs/pkgs/applications/science/logic/z3/4.4.0.nix
+++ b/nixpkgs/pkgs/applications/science/logic/z3/4.4.0.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub, python }:
 
 stdenv.mkDerivation rec {
-  name = "z3-${version}";
+  pname = "z3";
   version = "4.4.0";
 
   src = fetchFromGitHub {
diff --git a/nixpkgs/pkgs/applications/science/math/R/default.nix b/nixpkgs/pkgs/applications/science/math/R/default.nix
index 4bd237f87834..f91d72ff3f63 100644
--- a/nixpkgs/pkgs/applications/science/math/R/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/R/default.nix
@@ -14,11 +14,11 @@ assert (!blas.isILP64) && (!lapack.isILP64);
 
 stdenv.mkDerivation rec {
   pname = "R";
-  version = "4.1.2";
+  version = "4.1.3";
 
   src = fetchurl {
     url = "https://cran.r-project.org/src/base/R-${lib.versions.major version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-IDYiXp9yB9TOCX5Ulyrs2qi0DX2ZEc0mSR+sWg+rOK8=";
+    sha256 = "sha256-Ff9bMzxhCUBgsqUunB2OxVzELdAp45yiKr2qkJUm/tY=";
   };
 
   dontUseImakeConfigure = true;
diff --git a/nixpkgs/pkgs/applications/science/math/cemu/default.nix b/nixpkgs/pkgs/applications/science/math/cemu/default.nix
index 35b9200a4774..374b245e2499 100644
--- a/nixpkgs/pkgs/applications/science/math/cemu/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/cemu/default.nix
@@ -7,7 +7,7 @@
 , qtbase
 , qmake
 , git
-, libpng_apng
+, libpng
 , pkg-config
 , wrapQtAppsHook
 , stdenv
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     libarchive
     libusb-compat-0_1
     qtbase
-    libpng_apng
+    libpng
   ];
 
   qmakeFlags = [
diff --git a/nixpkgs/pkgs/applications/science/math/cntk/default.nix b/nixpkgs/pkgs/applications/science/math/cntk/default.nix
index ba2225b903fa..eb14982575a2 100644
--- a/nixpkgs/pkgs/applications/science/math/cntk/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/cntk/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchgit, fetchFromGitHub, cmake
+{ lib, stdenv, fetchFromGitHub, cmake
 , fetchpatch
 , openblas, blas, lapack, opencv3, libzip, boost, protobuf, mpi
 , onebitSGDSupport ? false
@@ -22,11 +22,12 @@ in stdenv.mkDerivation rec {
   pname = "CNTK";
   version = "2.7";
 
-  # Submodules
-  src = fetchgit {
-    url = "https://github.com/Microsoft/CNTK";
+  src = fetchFromGitHub {
+    owner = "Microsoft";
+    repo = "CNTK";
     rev = "v${version}";
-    sha256 = "18l9k7s966a26ywcf7flqyhm61788pcb9fj3wk61jrmgkhy2pcns";
+    sha256 = "sha256-2rIrPJyvZhnM5EO6tNhF6ARTocfUHce4N0IZk/SZiaI=";
+    fetchSubmodules = true;
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/applications/science/math/fricas/default.nix b/nixpkgs/pkgs/applications/science/math/fricas/default.nix
index 79d5664426be..8c2541fe4129 100644
--- a/nixpkgs/pkgs/applications/science/math/fricas/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/fricas/default.nix
@@ -1,14 +1,11 @@
 { lib, stdenv, fetchurl, sbcl, libX11, libXpm, libICE, libSM, libXt, libXau, libXdmcp }:
 
-let
+stdenv.mkDerivation rec {
+  pname = "fricas";
   version = "1.3.7";
-  name = "fricas-" + version;
-in
-stdenv.mkDerivation {
-  inherit name;
 
   src = fetchurl {
-    url = "mirror://sourceforge/fricas/fricas/${version}/${name}-full.tar.bz2";
+    url = "mirror://sourceforge/fricas/fricas/${version}/fricas-${version}-full.tar.bz2";
     sha256 = "sha256-cOqMvSe3ef/ZeVy5cj/VU/aTRtxgfxZfRbE4lWE5TU4=";
   };
 
diff --git a/nixpkgs/pkgs/applications/science/math/nasc/default.nix b/nixpkgs/pkgs/applications/science/math/nasc/default.nix
index 2fe027365cdc..3e7a8b56af1c 100644
--- a/nixpkgs/pkgs/applications/science/math/nasc/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/nasc/default.nix
@@ -48,7 +48,6 @@ stdenv.mkDerivation rec {
     gtk3
     gtksourceview
     libgee
-    pantheon.elementary-icon-theme
     pantheon.granite
     webkitgtk
     # We add libqalculate's runtime dependencies because nasc has it as a modified subproject.
diff --git a/nixpkgs/pkgs/applications/science/math/qalculate-gtk/default.nix b/nixpkgs/pkgs/applications/science/math/qalculate-gtk/default.nix
index 7ba5838faba1..4f68eb6ae78d 100644
--- a/nixpkgs/pkgs/applications/science/math/qalculate-gtk/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/qalculate-gtk/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qalculate-gtk";
-  version = "4.0.0";
+  version = "4.1.0";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "qalculate-gtk";
     rev = "v${version}";
-    sha256 = "sha256-l9lR5MVHWiRz5RG/I/nXRY4GQSSaXXP7PlRNoAu9+yo=";
+    sha256 = "sha256-EOiExp8JBc3SybSiBVbuRxBqTujzLjysWM0v94goups=";
   };
 
   hardeningDisable = [ "format" ];
diff --git a/nixpkgs/pkgs/applications/science/math/sage/README.md b/nixpkgs/pkgs/applications/science/math/sage/README.md
index 26e91fc63133..c3a81c2109ee 100644
--- a/nixpkgs/pkgs/applications/science/math/sage/README.md
+++ b/nixpkgs/pkgs/applications/science/math/sage/README.md
@@ -17,7 +17,7 @@ If the build broke as a result of a package update, try those solutions in order
 - fix the problem yourself. First clone the sagemath source and then check out the sage version you want to patch:
 
 ```
-[user@localhost ~]$ git clone git://github.com/sagemath/sage.git
+[user@localhost ~]$ git clone https://github.com/sagemath/sage.git
 [user@localhost ~]$ cd sage
 [user@localhost sage]$ git checkout 8.2 # substitute the relevant version here
 ```
@@ -41,7 +41,7 @@ You can [login the sage trac using GitHub](https://trac.sagemath.org/login). You
 Here's the gist, assuming you want to use ssh key authentication. First, [add your public ssh key](https://trac.sagemath.org/prefs/sshkeys). Then:
 
 ```
-[user@localhost ~]$ git clone git://github.com/sagemath/sage.git
+[user@localhost ~]$ git clone https://github.com/sagemath/sage.git
 [user@localhost ~]$ cd sage
 [user@localhost sage]$ git remote add trac git@trac.sagemath.org:sage.git -t master
 [user@localhost sage]$ git checkout -b u/gh-<your-github-username>/<your-branch-name> develop
diff --git a/nixpkgs/pkgs/applications/science/math/scilab-bin/default.nix b/nixpkgs/pkgs/applications/science/math/scilab-bin/default.nix
index 18dba2952cad..65d8c145bef6 100644
--- a/nixpkgs/pkgs/applications/science/math/scilab-bin/default.nix
+++ b/nixpkgs/pkgs/applications/science/math/scilab-bin/default.nix
@@ -1,11 +1,7 @@
 { stdenv, fetchurl, lib, xorg }:
 
 let
-  name = "scilab-bin-${ver}";
-
-  ver = "6.1.1";
-
-  badArch = throw "${name} requires i686-linux or x86_64-linux";
+  badArch = throw "scilab-bin requires i686-linux or x86_64-linux";
 
   architecture =
     if stdenv.hostPlatform.system == "i686-linux" then
@@ -15,11 +11,12 @@ let
     else
       badArch;
 in
-stdenv.mkDerivation {
-  inherit name;
+stdenv.mkDerivation rec {
+  pname = "scilab-bin";
+  version = "6.1.1";
 
   src = fetchurl {
-    url = "https://www.scilab.org/download/${ver}/scilab-${ver}.bin.linux-${architecture}.tar.gz";
+    url = "https://www.scilab.org/download/${version}/scilab-${version}.bin.linux-${architecture}.tar.gz";
     sha256 =
       if stdenv.hostPlatform.system == "i686-linux" then
         "0fgjc2ak3b2qi6yin3fy50qwk2bcj0zbz1h4lyyic9n1n1qcliib"
@@ -43,7 +40,7 @@ stdenv.mkDerivation {
     sed -i 's|\$(/bin/|$(|g' bin/scilab
     sed -i 's|/usr/bin/||g' bin/scilab
 
-    sci="$out/opt/scilab-${ver}"
+    sci="$out/opt/scilab-${version}"
     fullLibPath="$sci/lib/scilab:$sci/lib/thirdparty:$libPath"
     fullLibPath="$fullLibPath:$sci/lib/thirdparty/redist"
 
@@ -55,31 +52,31 @@ stdenv.mkDerivation {
   '';
 
   installPhase = ''
-    mkdir -p "$out/opt/scilab-${ver}"
-    cp -r . "$out/opt/scilab-${ver}/"
+    mkdir -p "$out/opt/scilab-${version}"
+    cp -r . "$out/opt/scilab-${version}/"
 
     # Create bin/ dir
     mkdir "$out/bin"
 
     # Creating executable symlinks
-    ln -s "$out/opt/scilab-${ver}/bin/scilab" "$out/bin/scilab"
-    ln -s "$out/opt/scilab-${ver}/bin/scilab-cli" "$out/bin/scilab-cli"
-    ln -s "$out/opt/scilab-${ver}/bin/scilab-adv-cli" "$out/bin/scilab-adv-cli"
+    ln -s "$out/opt/scilab-${version}/bin/scilab" "$out/bin/scilab"
+    ln -s "$out/opt/scilab-${version}/bin/scilab-cli" "$out/bin/scilab-cli"
+    ln -s "$out/opt/scilab-${version}/bin/scilab-adv-cli" "$out/bin/scilab-adv-cli"
 
     # Creating desktop config dir
     mkdir -p "$out/share/applications"
 
     # Moving desktop config files
-    mv $out/opt/scilab-${ver}/share/applications/*.desktop $out/share/applications
+    mv $out/opt/scilab-${version}/share/applications/*.desktop $out/share/applications
 
     # Fixing Exec paths and launching each app with a terminal
-    sed -i -e "s|Exec=|Exec=$out/opt/scilab-${ver}/bin/|g" \
+    sed -i -e "s|Exec=|Exec=$out/opt/scilab-${version}/bin/|g" \
            -e "s|Terminal=.*$|Terminal=true|g" $out/share/applications/*.desktop
 
     # Moving icons to the appropriate locations
-    for path in $out/opt/scilab-${ver}/share/icons/hicolor/*/*/*
+    for path in $out/opt/scilab-${version}/share/icons/hicolor/*/*/*
     do
-      newpath=$(echo $path | sed 's|/opt/scilab-${ver}||g')
+      newpath=$(echo $path | sed 's|/opt/scilab-${version}||g')
       filename=$(echo $path | sed 's|.*/||g')
       dir=$(echo $newpath | sed "s|$filename||g")
       mkdir -p $dir
@@ -87,10 +84,10 @@ stdenv.mkDerivation {
     done
 
     # Removing emptied folders
-    rm -rf $out/opt/scilab-${ver}/share/{applications,icons}
+    rm -rf $out/opt/scilab-${version}/share/{applications,icons}
 
     # Moving other share/ folders
-    mv $out/opt/scilab-${ver}/share/{appdata,locale,mime} $out/share
+    mv $out/opt/scilab-${version}/share/{appdata,locale,mime} $out/share
   '';
 
   meta = {
diff --git a/nixpkgs/pkgs/applications/science/misc/fityk/default.nix b/nixpkgs/pkgs/applications/science/misc/fityk/default.nix
index 974fd3ece45c..a3d6e1564666 100644
--- a/nixpkgs/pkgs/applications/science/misc/fityk/default.nix
+++ b/nixpkgs/pkgs/applications/science/misc/fityk/default.nix
@@ -1,12 +1,9 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook, wxGTK30, boost, lua, zlib, bzip2
 , xylib, readline, gnuplot, swig3 }:
 
-let
-  name    = "fityk";
+stdenv.mkDerivation rec {
+  pname = "fityk";
   version = "1.3.1";
-in
-stdenv.mkDerivation {
-  name = "${name}-${version}";
 
   src = fetchFromGitHub {
     owner = "wojdyr";
diff --git a/nixpkgs/pkgs/applications/science/misc/golly/beta.nix b/nixpkgs/pkgs/applications/science/misc/golly/beta.nix
deleted file mode 100644
index 9846be8a43a8..000000000000
--- a/nixpkgs/pkgs/applications/science/misc/golly/beta.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-{lib, stdenv, fetchgit
-, wxGTK, perl, python2, zlib, libGLU, libGL, libX11
-, automake, autoconf
-}:
-
-stdenv.mkDerivation rec {
-  pname = "golly";
-  version = "2.8.99.2.20161122";
-  #src = fetchurl {
-  #  url="mirror://sourceforge/project/golly/golly/golly-2.8/golly-2.8-src.tar.gz";
-  #  sha256="0a4vn2hm7h4b47v2iwip1z3n9y8isf79v08aipl2iqms2m3p5204";
-  #};
-  src = fetchgit {
-    url = "git://git.code.sf.net/p/golly/code";
-    rev = "93495edf3c9639332c6eb43ca7149c69629ee5d8";
-    sha256 = "1j308s9zlqkr3wnl1l32s5zk7r3g4ijwawkkysl8j5ik9sibi2gk";
-  };
-
-  setSourceRoot = ''
-    export sourceRoot="$(echo */gui-wx/configure)"
-  '';
-
-  nativeBuildInputs = [autoconf automake];
-
-  buildInputs = [
-    wxGTK perl python2 zlib libGLU libGL libX11
-  ];
-
-  # Link against Python explicitly as it is needed for scripts
-  makeFlags=[
-    "AM_LDFLAGS="
-  ];
-  NIX_LDFLAGS="-l${python2.libPrefix} -lperl -ldl -lGL";
-  preConfigure=''
-    export NIX_LDFLAGS="$NIX_LDFLAGS -L$(dirname "$(find ${perl} -name libperl.so)")"
-    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE
-      -DPYTHON_SHLIB=$(basename "$(
-        readlink -f ${python2}/lib/libpython*.so)")"
-
-    sh autogen.sh
-  '';
-
-  meta = {
-    description = "Cellular automata simulation program";
-    license = lib.licenses.gpl2;
-    maintainers = [lib.maintainers.raskin];
-    platforms = lib.platforms.linux;
-    downloadPage = "https://sourceforge.net/projects/golly/files/golly";
-  };
-}
diff --git a/nixpkgs/pkgs/applications/science/misc/simgrid/default.nix b/nixpkgs/pkgs/applications/science/misc/simgrid/default.nix
index 888419fbc86f..4867e6c9ed55 100644
--- a/nixpkgs/pkgs/applications/science/misc/simgrid/default.nix
+++ b/nixpkgs/pkgs/applications/science/misc/simgrid/default.nix
@@ -4,6 +4,7 @@
 , buildJavaBindings ? false, openjdk
 , buildPythonBindings ? true, python3Packages
 , modelCheckingSupport ? false, libunwind, libevent, elfutils # Inside elfutils: libelf and libdw
+, bmfSupport ? true, eigen
 , minimalBindings ? false
 , debug ? false
 , optimize ? (!debug)
@@ -19,14 +20,14 @@ in
 
 stdenv.mkDerivation rec {
   pname = "simgrid";
-  version = "3.30";
+  version = "3.31";
 
   src = fetchFromGitLab {
     domain = "framagit.org";
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "1dg8ywqif20g0fs8dnd6364n080nvwx7f444zcfwqwz6iax61qv1";
+    sha256 = "sha256-K6YkkCMxc2lqxHIwyuLiwcp3m49sqbEtOlwZh4L1YJg=";
   };
 
   propagatedBuildInputs = [ boost ];
@@ -35,6 +36,7 @@ stdenv.mkDerivation rec {
     ++ optionals buildJavaBindings [ openjdk ]
     ++ optionals buildPythonBindings [ python3Packages.pybind11 ]
     ++ optionals buildDocumentation [ fig2dev ghostscript doxygen ]
+    ++ optionals bmfSupport [ eigen ]
     ++ optionals modelCheckingSupport [ libunwind libevent elfutils ];
 
   outputs = [ "out" ]
diff --git a/nixpkgs/pkgs/applications/science/robotics/inav-configurator/default.nix b/nixpkgs/pkgs/applications/science/robotics/inav-configurator/default.nix
index 40914a8ac1a5..ec605a3a97e9 100644
--- a/nixpkgs/pkgs/applications/science/robotics/inav-configurator/default.nix
+++ b/nixpkgs/pkgs/applications/science/robotics/inav-configurator/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "inav-configurator";
-  version = "3.0.2";
+  version = "4.1.0";
 
   src = fetchurl {
     url = "https://github.com/iNavFlight/inav-configurator/releases/download/${version}/INAV-Configurator_linux64_${version}.tar.gz";
-    sha256 = "0v6dcg634wpp9q4ya3mj00j3pg25g62aq209iq2dsvj0a03afbp2";
+    sha256 = "sha256-+rPzytnAQcNGbISFBHb4JS9Nqy0C2i36k+EPBvq/mso=";
   };
 
   icon = fetchurl {
diff --git a/nixpkgs/pkgs/applications/system/monitor/default.nix b/nixpkgs/pkgs/applications/system/monitor/default.nix
index 653d727525e8..5de6e1165dc4 100644
--- a/nixpkgs/pkgs/applications/system/monitor/default.nix
+++ b/nixpkgs/pkgs/applications/system/monitor/default.nix
@@ -25,13 +25,13 @@
 
 stdenv.mkDerivation rec {
   pname = "monitor";
-  version = "0.12.0";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     owner = "stsdc";
     repo = "monitor";
     rev = version;
-    sha256 = "1fv98yz9393ddp0k96bwbgccy6x9dmmg8g1pjd3xs6m4c1bnvfc7";
+    sha256 = "sha256-qwx60cp3Q6PL1iwRP+M9Rtmxcis0EByi8fk13H4cXfc=";
     fetchSubmodules = true;
   };
 
@@ -90,7 +90,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/stsdc/monitor";
     maintainers = with maintainers; [ xiorcale ] ++ teams.pantheon.members;
     platforms = platforms.linux;
-    license = licenses.gpl3;
+    license = licenses.gpl3Plus;
     mainProgram = "com.github.stsdc.monitor";
   };
 }
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/alacritty/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/alacritty/default.nix
index e7730ba4b942..e6762f543cb9 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/alacritty/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/alacritty/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , fetchpatch
 , rustPlatform
+, nixosTests
 
 , cmake
 , gzip
@@ -132,6 +133,8 @@ rustPlatform.buildRustPackage rec {
 
   dontPatchELF = true;
 
+  passthru.tests.test = nixosTests.terminal-emulators.alacritty;
+
   meta = with lib; {
     description = "A cross-platform, GPU-accelerated terminal emulator";
     homepage = "https://github.com/alacritty/alacritty";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/contour/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/contour/default.nix
index 6ef16a5b9e48..d0def97e46f3 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/contour/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/contour/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, mkDerivation, fetchFromGitHub, cmake, pkg-config, freetype, libGL, pcre }:
+{ lib, stdenv, mkDerivation, fetchFromGitHub, cmake, pkg-config, freetype, libGL, pcre, nixosTests }:
 
 mkDerivation rec {
   pname = "contour";
@@ -16,6 +16,8 @@ mkDerivation rec {
 
   buildInputs = [ freetype libGL pcre ];
 
+  passthru.tests.test = nixosTests.terminal-emulators.contour;
+
   meta = with lib; {
     description = "Modern C++ Terminal Emulator";
     homepage = "https://github.com/christianparpart/contour";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/cool-retro-term/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/cool-retro-term/default.nix
index 049452c7e3ad..4243502e7fe9 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/cool-retro-term/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/cool-retro-term/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, mkDerivation, qtbase, qtquick1, qmltermwidget
-, qtquickcontrols, qtgraphicaleffects, qmake }:
+, qtquickcontrols, qtgraphicaleffects, qmake, nixosTests }:
 
 mkDerivation rec {
   version = "1.1.1";
@@ -29,6 +29,8 @@ mkDerivation rec {
     ln -s $out/bin/cool-retro-term.app/Contents/MacOS/cool-retro-term $out/bin/cool-retro-term
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.cool-retro-term;
+
   meta = {
     description = "Terminal emulator which mimics the old cathode display";
     longDescription = ''
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/ctx/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/ctx/default.nix
index 78c673d035a0..420e9b020e99 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/ctx/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/ctx/default.nix
@@ -8,6 +8,7 @@
 , libdrm # Not documented
 , pkg-config
 , enableFb ? false
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
@@ -43,6 +44,8 @@ stdenv.mkDerivation rec {
     "PREFIX=${placeholder "out"}"
   ];
 
+  passthru.tests.test = nixosTests.terminal-emulators.ctx;
+
   meta = with lib; {
     homepage = "https://ctx.graphics/";
     description = "Vector graphics terminal";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/darktile/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/darktile/default.nix
index f63232949501..17af8457cb10 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/darktile/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/darktile/default.nix
@@ -12,6 +12,7 @@
 , libXext
 , libXxf86vm
 , libGL
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
@@ -57,6 +58,8 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.darktile;
+
   meta = with lib; {
     description = "A GPU rendered terminal emulator designed for tiling window managers";
     homepage = "https://github.com/liamg/darktile";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/eterm/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/eterm/default.nix
index 328e61f1fe50..769104fea431 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/eterm/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/eterm/default.nix
@@ -8,6 +8,7 @@
 , libXext
 , libast
 , pkg-config
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
@@ -33,6 +34,8 @@ stdenv.mkDerivation rec {
     libast
   ];
 
+  passthru.tests.test = nixosTests.terminal-emulators.eterm;
+
   meta = with lib; {
     homepage = "https://github.com/mej/Eterm"; # http://www.eterm.org is gone
     description = "Terminal emulator";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/germinal/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/germinal/default.nix
index 1bbe87853f75..aef24f675b1a 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/germinal/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/germinal/default.nix
@@ -9,6 +9,7 @@
 , tmux
 , vte
 , wrapGAppsHook
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
@@ -45,6 +46,8 @@ stdenv.mkDerivation rec {
     runHook postFixup
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.germinal;
+
   meta = with lib; {
     description = "A minimal terminal emulator";
     homepage = "https://github.com/Keruspe/Germinal";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/gnome-console/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/gnome-console/default.nix
new file mode 100644
index 000000000000..9b4b460550ff
--- /dev/null
+++ b/nixpkgs/pkgs/applications/terminal-emulators/gnome-console/default.nix
@@ -0,0 +1,69 @@
+{ lib
+, stdenv
+, fetchurl
+, gettext
+, gnome
+, libgtop
+, gtk3
+, libhandy
+, pcre2
+, vte
+, appstream-glib
+, desktop-file-utils
+, git
+, meson
+, ninja
+, pkg-config
+, python3
+, sassc
+, wrapGAppsHook
+, nixosTests
+}:
+
+stdenv.mkDerivation rec {
+  pname = "gnome-console";
+  version = "42.beta";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/gnome-console/${lib.versions.major version}/${pname}-${version}.tar.xz";
+    sha256 = "Lq/shyAhDcwB5HqpihvGx2+xwVU2Xax7/NerFwR36DQ=";
+  };
+
+  buildInputs = [
+    gettext
+    libgtop
+    gnome.nautilus
+    gtk3
+    libhandy
+    pcre2
+    vte
+  ];
+
+  nativeBuildInputs = [
+    appstream-glib
+    desktop-file-utils
+    git
+    meson
+    ninja
+    pkg-config
+    python3
+    sassc
+    wrapGAppsHook
+  ];
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+    };
+  };
+
+  passthru.tests.test = nixosTests.terminal-emulators.kgx;
+
+  meta = with lib; {
+    description = "Simple user-friendly terminal emulator for the GNOME desktop";
+    homepage = "https://gitlab.gnome.org/GNOME/console";
+    license = licenses.gpl3Plus;
+    maintainers = teams.gnome.members ++ (with maintainers; [ zhaofengli ]);
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/guake/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/guake/default.nix
index 8c4c6b383d56..cc2dc5c55d61 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/guake/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/guake/default.nix
@@ -10,6 +10,7 @@
 , libutempter
 , vte
 , libwnck
+, nixosTests
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -66,6 +67,8 @@ python3.pkgs.buildPythonApplication rec {
     gappsWrapperArgs+=(--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libutempter ]}")
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.guake;
+
   meta = with lib; {
     description = "Drop-down terminal for GNOME";
     homepage = "http://guake-project.org";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/hyper/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/hyper/default.nix
index a2b3d13b36a8..485c1dead14c 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/hyper/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/hyper/default.nix
@@ -2,7 +2,7 @@
 , freetype, fontconfig, dbus, libXi, libXcursor, libXdamage, libXrandr, libXcomposite
 , libXext, libXfixes, libXrender, libX11, libXtst, libXScrnSaver, libxcb, nss, nspr
 , alsa-lib, cups, expat, udev, libpulseaudio, at-spi2-atk, at-spi2-core, libxshmfence
-, libdrm, libxkbcommon, mesa }:
+, libdrm, libxkbcommon, mesa, nixosTests}:
 
 let
   libPath = lib.makeLibraryPath [
@@ -43,6 +43,8 @@ stdenv.mkDerivation rec {
       --replace "/opt/Hyper/hyper" "hyper"
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.hyper;
+
   dontPatchELF = true;
   meta = with lib; {
     description = "A terminal built on web technologies";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/kermit-terminal/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/kermit-terminal/default.nix
index 8a5a78564149..da5342aa683f 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/kermit-terminal/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/kermit-terminal/default.nix
@@ -6,6 +6,7 @@
 , pcre
 , pkg-config
 , vte
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
@@ -31,6 +32,8 @@ stdenv.mkDerivation rec {
     vte
   ];
 
+  passthru.tests.test = nixosTests.terminal-emulators.kermit;
+
   meta = with lib; {
     homepage = "https://github.com/orhun/kermit";
     description = "A VTE-based, simple and froggy terminal emulator";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/kgx/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/kgx/default.nix
deleted file mode 100644
index dc5c651d50a5..000000000000
--- a/nixpkgs/pkgs/applications/terminal-emulators/kgx/default.nix
+++ /dev/null
@@ -1,76 +0,0 @@
-{ lib
-, stdenv
-, genericBranding ? false
-, fetchFromGitLab
-, gettext
-, gnome
-, libgtop
-, gtk3
-, libhandy
-, pcre2
-, vte
-, appstream-glib
-, desktop-file-utils
-, git
-, meson
-, ninja
-, pkg-config
-, python3
-, sassc
-, wrapGAppsHook
-}:
-
-stdenv.mkDerivation {
-  pname = "kgx";
-  version = "unstable-2021-03-13";
-
-  src = fetchFromGitLab {
-    domain = "gitlab.gnome.org";
-    owner = "ZanderBrown";
-    repo = "kgx";
-    rev = "105adb6a8d09418a3ce622442aef6ae623dee787";
-    sha256 = "0m34y0nbcfkyicb40iv0iqaq6f9r3f66w43lr803j3351nxqvcz2";
-  };
-
-  buildInputs = [
-    gettext
-    libgtop
-    gnome.nautilus
-    gtk3
-    libhandy
-    pcre2
-    vte
-  ];
-
-  nativeBuildInputs = [
-    appstream-glib
-    desktop-file-utils
-    git
-    meson
-    ninja
-    pkg-config
-    python3
-    sassc
-    wrapGAppsHook
-  ];
-
-  mesonFlags = lib.optional genericBranding "-Dgeneric=true";
-
-  postPatch = ''
-    chmod +x build-aux/meson/postinstall.py
-    patchShebangs build-aux/meson/postinstall.py
-  '';
-
-  preFixup = ''
-    substituteInPlace $out/share/applications/org.gnome.zbrown.KingsCross.desktop \
-      --replace "Exec=kgx" "Exec=$out/bin/kgx"
-  '';
-
-  meta = with lib; {
-    description = "Simple user-friendly terminal emulator for the GNOME desktop";
-    homepage = "https://gitlab.gnome.org/ZanderBrown/kgx";
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ zhaofengli ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/kitty/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/kitty/default.nix
index 1e6db04dd76d..d06c6d937c11 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/kitty/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/kitty/default.nix
@@ -22,6 +22,7 @@
 , zsh
 , fish
 , fetchpatch
+, nixosTests
 }:
 
 with python3Packages;
@@ -176,6 +177,8 @@ buildPythonApplication rec {
     runHook postInstall
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.kitty;
+
   meta = with lib; {
     homepage = "https://github.com/kovidgoyal/kitty";
     description = "A modern, hackable, featureful, OpenGL based terminal emulator";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/lxterminal/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/lxterminal/default.nix
index 25495a686834..13f4e3c4119e 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/lxterminal/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/lxterminal/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, automake, autoconf, intltool, pkg-config, gtk3, vte, wrapGAppsHook
-, libxslt, docbook_xml_dtd_412, docbook_xsl, libxml2, findXMLCatalogs
+, libxslt, docbook_xml_dtd_412, docbook_xsl, libxml2, findXMLCatalogs, nixosTests
 }:
 
 stdenv.mkDerivation rec {
@@ -35,6 +35,8 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
+  passthru.tests.test = nixosTests.terminal-emulators.lxterminal;
+
   meta = {
     description = "The standard terminal emulator of LXDE";
     longDescription = ''
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/mlterm/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/mlterm/default.nix
index d84aa984a33b..056a24138441 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/mlterm/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/mlterm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, pkg-config, autoconf, makeDesktopItem
+{ stdenv, lib, fetchFromGitHub, pkg-config, autoconf, makeDesktopItem, nixosTests
 , libX11, gdk-pixbuf, cairo, libXft, gtk3, vte
 , harfbuzz #substituting glyphs with opentype fonts
 , fribidi, m17n_lib #bidi and encoding
@@ -110,6 +110,8 @@ stdenv.mkDerivation rec {
     startupNotify = false;
   };
 
+  passthru.tests.test = nixosTests.terminal-emulators.mlterm;
+
   meta = with lib; {
     description = "Multi Lingual TERMinal emulator";
     homepage = "http://mlterm.sourceforge.net/";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/mrxvt/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/mrxvt/default.nix
index ba6c6ab87c15..006616bd944c 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/mrxvt/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/mrxvt/default.nix
@@ -10,6 +10,7 @@
 , freetype
 , pkg-config
 , which
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
@@ -38,6 +39,8 @@ stdenv.mkDerivation rec {
     NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${freetype.dev}/include/freetype2";
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.mrxvt;
+
   meta = with lib; {
     description = "Lightweight multitabbed feature-rich X11 terminal emulator";
     longDescription = "
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/roxterm/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/roxterm/default.nix
index 3e4454726b66..7444a8627b79 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/roxterm/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/roxterm/default.nix
@@ -1,7 +1,7 @@
 { at-spi2-core, cmake, dbus, dbus-glib, docbook_xsl, libepoxy, fetchFromGitHub
 , glib, gtk3, harfbuzz, libXdmcp, libXtst, libpthreadstubs
 , libselinux, libsepol, libtasn1, libxkbcommon, libxslt, p11-kit, pcre2
-, pkg-config, lib, stdenv, util-linuxMinimal, vte, wrapGAppsHook, xmlto
+, pkg-config, lib, stdenv, util-linuxMinimal, vte, wrapGAppsHook, xmlto, nixosTests
 }:
 
 stdenv.mkDerivation rec {
@@ -23,6 +23,8 @@ stdenv.mkDerivation rec {
       libsepol libxkbcommon libepoxy at-spi2-core libXtst libtasn1 p11-kit
     ];
 
+  passthru.tests.test = nixosTests.terminal-emulators.roxterm;
+
   meta = with lib; {
     homepage = "https://github.com/realh/roxterm";
     license = licenses.gpl3;
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-font-size/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-font-size/default.nix
index 88dae0a34ff5..7824fa2a814b 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-font-size/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode-plugins/urxvt-font-size/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub, xrdb, xlsfonts }:
 
 stdenv.mkDerivation rec {
-  name = "urxvt-font-size";
+  pname = "urxvt-font-size";
   version = "1.3";
 
   src = fetchFromGitHub {
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode/default.nix
index 1ca84149fdd7..0eccceb5a4f6 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode/default.nix
@@ -7,6 +7,7 @@
 , gdkPixbufSupport ? true
 , unicode3Support  ? true
 , emojiSupport     ? false
+, nixosTests
 }:
 
 let
@@ -102,6 +103,8 @@ stdenv.mkDerivation {
     cp -r ${desktopItem}/share/applications/ $out/share/
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.urxvt;
+
   meta = {
     inherit description;
     homepage = "http://software.schmorp.de/pkg/rxvt-unicode.html";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode/wrapper.nix b/nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode/wrapper.nix
index 5255d40b9ce2..9fe78e30ae3d 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode/wrapper.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/rxvt-unicode/wrapper.nix
@@ -5,6 +5,7 @@
 , rxvt-unicode-unwrapped
 , rxvt-unicode-plugins
 , perlPackages
+, nixosTests
 , configure ? { availablePlugins, ... }:
   { plugins = builtins.attrValues availablePlugins;
     extraDeps = [ ];
@@ -51,7 +52,10 @@ let
             --suffix-each URXVT_PERL_LIB ':' "$out/lib/urxvt/perl"
         '';
 
-        passthru.plugins = plugins;
+        passthru = {
+          plugins = plugins;
+          tests.test = nixosTests.terminal-emulators.urxvt;
+        };
       };
 
 in
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/sakura/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/sakura/default.nix
index 8434c233ad4b..52b35ad38ae7 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/sakura/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/sakura/default.nix
@@ -9,6 +9,7 @@
 , perl
 , pkg-config
 , vte
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
@@ -43,6 +44,8 @@ stdenv.mkDerivation rec {
       --suffix XDG_DATA_DIRS : ${gtk3}/share/gsettings-schemas/${gtk3.name}/
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.sakura;
+
   meta = with lib; {
     homepage = "https://www.pleyades.net/david/projects/sakura";
     description = "A terminal emulator based on GTK and VTE";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/st/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/st/default.nix
index 35baec9d0e44..efbdc040589f 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/st/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/st/default.nix
@@ -11,6 +11,7 @@
 , conf ? null
 , patches ? [ ]
 , extraLibs ? [ ]
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
@@ -55,6 +56,8 @@ stdenv.mkDerivation rec {
 
   installFlags = [ "PREFIX=$(out)" ];
 
+  passthru.tests.test = nixosTests.terminal-emulators.st;
+
   meta = with lib; {
     homepage = "https://st.suckless.org/";
     description = "Simple Terminal for X from Suckless.org Community";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/stupidterm/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/stupidterm/default.nix
index 554d210fbdea..279af55254e0 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/stupidterm/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/stupidterm/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, vte, gtk, pcre2 }:
+{ lib, stdenv, fetchFromGitHub, pkg-config, vte, gtk, pcre2, nixosTests }:
 
 stdenv.mkDerivation {
   pname = "stupidterm";
@@ -26,6 +26,8 @@ stdenv.mkDerivation {
       --replace "Exec=st" "Exec=$out/bin/stupidterm"
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.stupidterm;
+
   meta = with lib; {
     description = "Simple wrapper around the VTE terminal emulator widget for GTK";
     homepage = "https://github.com/esmil/stupidterm";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/terminator/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/terminator/default.nix
index 67c7196e24da..04d4af0ccaf0 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/terminator/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/terminator/default.nix
@@ -9,6 +9,7 @@
 , libnotify
 , wrapGAppsHook
 , vte
+, nixosTests
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -62,6 +63,8 @@ python3.pkgs.buildPythonApplication rec {
     makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.terminator;
+
   meta = with lib; {
     description = "Terminal emulator with support for tiling and tabs";
     longDescription = ''
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/termite/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/termite/default.nix
index 96fd3409dc7a..2b05ecdc7221 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/termite/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/termite/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, vte, gtk3, ncurses, pcre2, wrapGAppsHook }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, vte, gtk3, ncurses, pcre2, wrapGAppsHook, nixosTests }:
 
 let
 
@@ -57,7 +57,10 @@ in stdenv.mkDerivation rec {
 
   outputs = [ "out" "terminfo" ];
 
-  passthru = { inherit vte-ng; };
+  passthru = {
+    inherit vte-ng;
+    tests = nixosTests.terminal-emulators.termite;
+  };
 
   postInstall = ''
     mkdir -p $terminfo/share
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/termonad/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/termonad/default.nix
index 6a1dd0bec398..efddfa454668 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/termonad/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/termonad/default.nix
@@ -1,9 +1,10 @@
-{ stdenv, haskellPackages, makeWrapper, packages ? (pkgSet: []) }:
+{ stdenv, haskellPackages, makeWrapper, packages ? (pkgSet: []), nixosTests }:
 
 let
   termonadEnv = haskellPackages.ghcWithPackages (self: [ self.termonad ] ++ packages self);
 in stdenv.mkDerivation {
-  name = "termonad-with-packages-${termonadEnv.version}";
+  pname = "termonad-with-packages";
+  inherit (termonadEnv) version;
 
   nativeBuildInputs = [ makeWrapper ];
 
@@ -17,6 +18,8 @@ in stdenv.mkDerivation {
   preferLocalBuild = true;
   allowSubstitutes = false;
 
+  passthru.tests.test = nixosTests.terminal-emulators.termonad;
+
   meta = haskellPackages.termonad.meta // {
     mainProgram = "termonad";
   };
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/tilda/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/tilda/default.nix
index 1ea50cfff7a1..01cc4f527a91 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/tilda/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/tilda/default.nix
@@ -9,6 +9,7 @@
 , pcre2
 , vte
 , makeWrapper
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
@@ -42,6 +43,8 @@ stdenv.mkDerivation rec {
         --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.tilda;
+
   meta = with lib; {
     description = "A Gtk based drop down terminal for Linux and Unix";
     homepage = "https://github.com/lanoxx/tilda/";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/tilix/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/tilix/default.nix
index 0538a2060aec..917b179490c6 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/tilix/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/tilix/default.nix
@@ -17,6 +17,7 @@
 , wrapGAppsHook
 , libunwind
 , appstream
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
@@ -66,6 +67,8 @@ stdenv.mkDerivation rec {
       --replace "Exec=tilix" "Exec=$out/bin/tilix"
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.tilix;
+
   meta = with lib; {
     description = "Tiling terminal emulator following the Gnome Human Interface Guidelines";
     homepage = "https://gnunn1.github.io/tilix-web";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/wayst/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/wayst/default.nix
index f3751e39881d..eeb258f48c49 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/wayst/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/wayst/default.nix
@@ -2,6 +2,7 @@
 , lib
 , fetchFromGitHub
 , pkg-config
+, nixosTests
 , freetype
 , fontconfig
 , libGL
@@ -78,6 +79,8 @@ stdenv.mkDerivation rec {
     install -D icons/wayst.svg $out/share/icons/hicolor/scalable/apps/wayst.svg
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.wayst;
+
   meta = with lib; {
     description = "A simple terminal emulator";
     mainProgram = "wayst";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/wezterm/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/wezterm/default.nix
index fc12b1addf6f..6d1276035c13 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/wezterm/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/wezterm/default.nix
@@ -22,11 +22,12 @@
 , Cocoa
 , Foundation
 , libiconv
+, nixosTests
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "wezterm";
-  version = "20220101-133340-7edc5b5a";
+  version = "20220319-142410-0fcdea07";
 
   outputs = [ "out" "terminfo" ];
 
@@ -35,7 +36,7 @@ rustPlatform.buildRustPackage rec {
     repo = pname;
     rev = version;
     fetchSubmodules = true;
-    sha256 = "sha256-UZCvKbZdZ7K4RtvVLmr44M612tqd4rkrjF2tys0JHNM=";
+    sha256 = "sha256-KmIlfzSbVY003WesodN5srJ7qEQaU93izmrZW1MobCo=";
   };
 
   postPatch = ''
@@ -45,7 +46,7 @@ rustPlatform.buildRustPackage rec {
     rm -r wezterm-ssh/tests
   '';
 
-  cargoSha256 = "1imil15n9mf1r71qdp4cb4q7kzrrc2cspml0d54825yqaq8vjhsc";
+  cargoSha256 = "sha256-+Iu6/pd14O1QIsLkHe7fTP30XyI+8J0GiRY8cnRPS5I=";
 
   nativeBuildInputs = [
     pkg-config
@@ -99,6 +100,8 @@ rustPlatform.buildRustPackage rec {
     ln -s $out/bin/{wezterm,wezterm-mux-server,wezterm-gui,strip-ansi-escapes} "$OUT_APP"
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.wezterm;
+
   meta = with lib; {
     description = "A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust";
     homepage = "https://wezfurlong.org/wezterm";
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/xterm/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/xterm/default.nix
index 0f9bc33a907a..278332ca6a36 100644
--- a/nixpkgs/pkgs/applications/terminal-emulators/xterm/default.nix
+++ b/nixpkgs/pkgs/applications/terminal-emulators/xterm/default.nix
@@ -4,14 +4,14 @@
 
 stdenv.mkDerivation rec {
   pname = "xterm";
-  version = "371";
+  version = "372";
 
   src = fetchurl {
     urls = [
       "ftp://ftp.invisible-island.net/xterm/${pname}-${version}.tgz"
       "https://invisible-mirror.net/archives/xterm/${pname}-${version}.tgz"
     ];
-    sha256 = "MviIJ3sZ4o68CjESv/AAYHwHvtBnnKoL7rs2+crUhPU=";
+    sha256 = "xtCBJ8skCcOgS8rlWbcCUZbtdwu3vyZjCry0XZX2CrE=";
   };
 
   strictDeps = true;
@@ -76,7 +76,10 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    tests = { inherit (nixosTests) xterm; };
+    tests = {
+      customTest = nixosTests.xterm;
+      standardTest = nixosTests.terminal-emulators.xterm;
+    };
 
     updateScript = let
       # Tags that end in letters are unstable
diff --git a/nixpkgs/pkgs/applications/version-management/bcompare/default.nix b/nixpkgs/pkgs/applications/version-management/bcompare/default.nix
index f3bd18eb32bd..57adae69db03 100644
--- a/nixpkgs/pkgs/applications/version-management/bcompare/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/bcompare/default.nix
@@ -4,19 +4,19 @@
 
 let
   pname = "bcompare";
-  version = "4.4.0.25886";
+  version = "4.4.2.26348";
 
   throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
 
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://www.scootersoftware.com/${pname}-${version}_amd64.deb";
-      sha256 = "sha256-zQZrCjXzoOZ5o5M4t1n5/HhGoGTcZSj5rlf9Uz9UZko=";
+      sha256 = "sha256-GotORErgPs7IPXATbBfIisDCNwp8csl7pDSwV77FylA=";
     };
 
     x86_64-darwin = fetchurl {
       url = "https://www.scootersoftware.com/BCompareOSX-${version}.zip";
-      sha256 = "sha256-dez30a1sp+4XuBBYhu07Vpn1+AUmX0Ni7aad7hy2ajQ=";
+      sha256 = "sha256-XqmtW2EGyFmOzCooXczP3mtMN5UVQCCx7DJnVDlzAko=";
     };
 
     aarch64-darwin = srcs.x86_64-darwin;
diff --git a/nixpkgs/pkgs/applications/version-management/fnc/default.nix b/nixpkgs/pkgs/applications/version-management/fnc/default.nix
new file mode 100644
index 000000000000..1e234dea5e3e
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/fnc/default.nix
@@ -0,0 +1,40 @@
+{ lib, fetchurl, stdenv, zlib, ncurses, libiconv }:
+
+stdenv.mkDerivation rec {
+  pname = "fnc";
+  version = "0.10";
+
+  src = fetchurl {
+    url = "https://fnc.bsdbox.org/tarball/${version}/fnc-${version}.tar.gz";
+    sha256 = "1phqxh0afky7q2qmhgjlsq1awbv4254yd8wpzxlww4p7a57cp0lk";
+  };
+
+  buildInputs = [ libiconv ncurses zlib ];
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  preInstall = ''
+    mkdir -p $out/bin
+  '';
+
+  doInstallCheck = true;
+
+  installCheckPhase = ''
+    runHook preInstallCheck
+    test "$($out/bin/fnc --version)" = '${pname} ${version}'
+    runHook postInstallCheck
+  '';
+
+  meta = with lib; {
+    description = "Interactive ncurses browser for Fossil repositories";
+    longDescription = ''
+      An interactive ncurses browser for Fossil repositories.
+
+      fnc uses libfossil to create a fossil ui experience in the terminal.
+    '';
+    homepage = "https://fnc.bsdbox.org";
+    license = licenses.isc;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ abbe ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/version-management/gerrit/default.nix b/nixpkgs/pkgs/applications/version-management/gerrit/default.nix
index 20b8c3c04d1c..ea785bab49bf 100644
--- a/nixpkgs/pkgs/applications/version-management/gerrit/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/gerrit/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gerrit";
-  version = "3.4.1";
+  version = "3.5.1";
 
   src = fetchurl {
     url = "https://gerrit-releases.storage.googleapis.com/gerrit-${version}.war";
-    sha256 = "sha256-pHomYKYpV60SIKLoST5y9i3FprMV1VGy+5GjhpRhBUo=";
+    sha256 = "3fb5de878b6470dc8ef65ce22f2709cb8baecb5f16d89497dfaa33a0f33f7920";
   };
 
   buildCommand = ''
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/bfg-repo-cleaner/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/bfg-repo-cleaner/default.nix
index 42ac2ed4508f..7de53c7c541f 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/bfg-repo-cleaner/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/bfg-repo-cleaner/default.nix
@@ -1,50 +1,46 @@
 { lib, stdenv, fetchurl, jre, makeWrapper }:
 
-let
+stdenv.mkDerivation rec {
+  pname = "bfg-repo-cleaner";
   version = "1.13.0";
-  jarName = "bfg-${version}.jar";
-  mavenUrl = "mirror://maven/com/madgag/bfg/${version}/${jarName}";
-in
-  stdenv.mkDerivation {
-    inherit version jarName;
-
-    name = "bfg-repo-cleaner-${version}";
-
-    src = fetchurl {
-      url = mavenUrl;
-      sha256 = "1kn84rsvms1v5l1j2xgrk7dc7mnsmxkc6sqd94mnim22vnwvl8mz";
-    };
 
-    nativeBuildInputs = [ makeWrapper ];
-    buildInputs = [ jre ];
-
-    dontUnpack = true;
+  jarName = "bfg-${version}.jar";
 
-    installPhase = ''
-      mkdir -p $out/share/java
-      mkdir -p $out/bin
-      cp $src $out/share/java/$jarName
-      makeWrapper "${jre}/bin/java" $out/bin/bfg --add-flags "-cp $out/share/java/$jarName com.madgag.git.bfg.cli.Main"
+  src = fetchurl {
+    url = "mirror://maven/com/madgag/bfg/${version}/${jarName}";
+    sha256 = "1kn84rsvms1v5l1j2xgrk7dc7mnsmxkc6sqd94mnim22vnwvl8mz";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ jre ];
+
+  dontUnpack = true;
+
+  installPhase = ''
+    mkdir -p $out/share/java
+    mkdir -p $out/bin
+    cp $src $out/share/java/$jarName
+    makeWrapper "${jre}/bin/java" $out/bin/bfg --add-flags "-cp $out/share/java/$jarName com.madgag.git.bfg.cli.Main"
+  '';
+
+  meta = with lib; {
+    homepage = "https://rtyley.github.io/bfg-repo-cleaner/";
+    # Descriptions taken with minor modification from the homepage of bfg-repo-cleaner
+    description = "Removes large or troublesome blobs in a git repository like git-filter-branch does, but faster";
+    longDescription = ''
+      The BFG is a simpler, faster alternative to git-filter-branch for
+      cleansing bad data out of your Git repository history, in particular removing
+      crazy big files and removing passwords, credentials, and other private data.
+
+      The git-filter-branch command is enormously powerful and can do things
+      that the BFG can't - but the BFG is much better for the tasks above, because
+      it's faster (10-720x), simpler (dedicated to just removing things), and
+      beautiful (can use Scala instead of bash to script customizations).
     '';
+    license = licenses.gpl3;
+    maintainers = [ maintainers.changlinli ];
+    platforms = platforms.unix;
+    downloadPage = "https://mvnrepository.com/artifact/com.madgag/bfg/${version}";
+  };
 
-    meta = with lib; {
-      homepage = "https://rtyley.github.io/bfg-repo-cleaner/";
-      # Descriptions taken with minor modification from the homepage of bfg-repo-cleaner
-      description = "Removes large or troublesome blobs in a git repository like git-filter-branch does, but faster";
-      longDescription = ''
-        The BFG is a simpler, faster alternative to git-filter-branch for
-        cleansing bad data out of your Git repository history, in particular removing
-        crazy big files and removing passwords, credentials, and other private data.
-
-        The git-filter-branch command is enormously powerful and can do things
-        that the BFG can't - but the BFG is much better for the tasks above, because
-        it's faster (10-720x), simpler (dedicated to just removing things), and
-        beautiful (can use Scala instead of bash to script customizations).
-      '';
-      license = licenses.gpl3;
-      maintainers = [ maintainers.changlinli ];
-      platforms = platforms.unix;
-      downloadPage = "https://mvnrepository.com/artifact/com.madgag/bfg/${version}";
-    };
-
-  }
+}
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/common.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/common.nix
index f0e3e4a29d81..d6b787315b8d 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/common.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/common.nix
@@ -1,5 +1,5 @@
 { pname, version, src, gitSrc, buildInputs ? []
-, homepage, repo, description, maintainers
+, homepage, description, maintainers
 }:
 
 { lib, stdenv, openssl, zlib, asciidoc, libxml2, libxslt
@@ -70,7 +70,6 @@ stdenv.mkDerivation {
 
   meta = {
     inherit homepage description;
-    repositories.git = repo;
     license = lib.licenses.gpl2;
     platforms = lib.platforms.linux;
     maintainers = maintainers ++ (with lib.maintainers; [ qyliss ]);
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/default.nix
index 7d84b286d5f1..f6a0af102303 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/default.nix
@@ -20,7 +20,6 @@ callPackage (import ./common.nix rec {
   buildInputs = [ luajit ];
 
   homepage = "https://git.zx2c4.com/cgit/about/";
-  repo = "git://git.zx2c4.com/cgit";
   description = "Web frontend for git repositories";
   maintainers = with lib.maintainers; [ bjornfor ];
 }) {}
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/pink.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/pink.nix
index 2719bc122530..75e99a06b1d8 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/pink.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/cgit/pink.nix
@@ -18,7 +18,6 @@ callPackage (import ./common.nix rec {
   };
 
   homepage = "https://git.causal.agency/cgit-pink/about/";
-  repo = "https://git.causal.agency/cgit-pink";
   description = "cgit fork aiming for better maintenance";
   maintainers = with lib.maintainers; [ qyliss sternenseemann ];
 }) {}
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/darcs-to-git/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/darcs-to-git/default.nix
index f4b7d38bebcf..895e4610f4fc 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/darcs-to-git/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/darcs-to-git/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, fetchgit, ruby, gnugrep, diffutils, git, darcs }:
+{ lib, stdenv, fetchFromGitHub, ruby, gnugrep, diffutils, git, darcs }:
 
 stdenv.mkDerivation {
   pname = "darcs-to-git";
   version = "2015-06-04";
 
-  src = fetchgit {
-    url = "git://github.com/purcell/darcs-to-git.git";
+  src = fetchFromGitHub {
+    owner = "purcell";
+    repo = "darcs-to-git";
     rev = "e5fee32495908fe0f7d700644c7b37347b7a0a5b";
-    sha256 = "0lxcx0x0m1cv2j4x9ykpjf6r2zg6lh5rya016x93vkmlzxm3f0ji";
+    sha256 = "sha256-UQI3av+0zj1SNwEonwuk5n2RjZN3+tSJFJuFCjrorFM=";
   };
 
   patchPhase = let
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/gh/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/gh/default.nix
index 5d96929282f9..36b813f547e0 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/gh/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/gh/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gh";
-  version = "2.5.2";
+  version = "2.6.0";
 
   src = fetchFromGitHub {
     owner = "cli";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-60XEc0V8stbl+JozTqu8yO37K1NXX/X2xFkcO9p/QNY=";
+    sha256 = "sha256-NvVm/deO4LSIl5TSziqsrGt9atCXjt4UZ/VJfmX3i4c=";
   };
 
-  vendorSha256 = "sha256-aMD4a+jwCINcHV/z5UyTF+o3BzN9wviz+kLwDys9/BI=";
+  vendorSha256 = "sha256-pBjg6WyD61+Bl3ttcpl/b9XoWBCi7cDvE8NPaZGu7Aw=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/default.nix
index 6d3b65547330..c32d29f2561a 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/default.nix
@@ -1,16 +1,16 @@
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "git-annex-remote-b2";
-  version = "20151212-${lib.strings.substring 0 7 rev}";
-  rev = "4db46b9fc9ef7b3f4851c2a6b061cb8f90f553ba";
+  version = "unstable-2015-12-12";
 
   goPackagePath = "github.com/encryptio/git-annex-remote-b2";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/encryptio/git-annex-remote-b2";
-    sha256 = "1139rzdvlj3hanqsccfinprvrzf4qjc5n4f0r21jp9j24yhjs6j2";
+  src = fetchFromGitHub {
+    owner = "encryptio";
+    repo = "git-annex-remote-b2";
+    rev = "4db46b9fc9ef7b3f4851c2a6b061cb8f90f553ba";
+    sha256 = "sha256-QhotoSdCpiuDyMARW5jExP2887XRMaaxVXBIutvPaYQ=";
   };
 
   goDeps = ./deps.nix;
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-branchless/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-branchless/default.nix
index 8cedd24be052..19f794e6c916 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-branchless/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-branchless/default.nix
@@ -15,16 +15,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "git-branchless";
-  version = "0.3.9";
+  version = "0.3.10";
 
   src = fetchFromGitHub {
     owner = "arxanas";
     repo = "git-branchless";
     rev = "v${version}";
-    sha256 = "sha256-SEmIZy8ql1MxcFR6zeif03DVha/SRZHajVwt3QOBBYU=";
+    sha256 = "sha256-TLqAU1/olSS59Zeb+2m9Jq19EYTO1TnbKPYciHPKO2A=";
   };
 
-  cargoSha256 = "sha256-mKfPxU1JoN/xLdPdwy3vo1M0qF9ag0T4Ls4dfvHn6Pc=";
+  cargoSha256 = "sha256-sA4KWGW4bxGUkotTWHUcRqcoaUJsSUCTK8hUkKiRcnY=";
 
   nativeBuildInputs = [ pkg-config ];
 
@@ -39,8 +39,8 @@ rustPlatform.buildRustPackage rec {
   ];
 
   preCheck = ''
-    export PATH_TO_GIT=${git}/bin/git
-    export GIT_EXEC_PATH=$(${git}/bin/git --exec-path)
+    export TEST_GIT=${git}/bin/git
+    export TEST_GIT_EXEC_PATH=$(${git}/bin/git --exec-path)
   '';
   # FIXME: these tests deadlock when run in the Nix sandbox
   checkFlags = [
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-secret/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-secret/default.nix
index e3845af8926d..4c50836cfdb2 100644
--- a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-secret/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-secret/default.nix
@@ -1,14 +1,11 @@
 { stdenv, lib, fetchFromGitHub, makeWrapper, git, gnupg, gawk }:
 
-let
+stdenv.mkDerivation rec {
+  pname = "git-secret";
   version = "0.4.0";
-  repo = "git-secret";
-
-in stdenv.mkDerivation {
-  name = "${repo}-${version}";
 
   src = fetchFromGitHub {
-    inherit repo;
+    repo = "git-secret";
     owner = "sobolevn";
     rev = "v${version}";
     sha256 = "sha256-Mtuj+e/yCDr4XkmYkWUFJB3cqOT5yOMOq9P/QJV1S80=";
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/git-team/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-team/default.nix
new file mode 100644
index 000000000000..3fac0dc9791b
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/git-team/default.nix
@@ -0,0 +1,31 @@
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
+buildGoModule rec {
+  pname = "git-team";
+  version = "1.7.0";
+
+  src = fetchFromGitHub {
+    owner = "hekmekk";
+    repo = "git-team";
+    rev = "v${version}";
+    sha256 = "0nl5j64b61jw4bkf29y51svjbndmqqrqx96yaip4vjzj2dx9ywm4";
+  };
+
+  vendorSha256 = "sha256-xJMWPDuqoNtCCUnKuUvwlYztyrej1uZttC0NsDvYnXI=";
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  postInstall = ''
+    go run main.go --generate-man-page > ${pname}.1
+    installManPage ${pname}.1
+
+    # Currently only bash completions are provided
+    installShellCompletion --cmd git-team --bash <($out/bin/git-team completion bash)
+  '';
+
+  meta = with lib; {
+    description = "Command line interface for managing and enhancing git commit messages with co-authors";
+    homepage = "https://github.com/hekmekk/git-team";
+    license = licenses.mit;
+    maintainers = with maintainers; [ lockejan ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/version-management/git-and-tools/hut/default.nix b/nixpkgs/pkgs/applications/version-management/git-and-tools/hut/default.nix
new file mode 100644
index 000000000000..ad0c02aa2e0d
--- /dev/null
+++ b/nixpkgs/pkgs/applications/version-management/git-and-tools/hut/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, buildGoModule
+, fetchFromSourcehut
+, scdoc
+, unstableGitUpdater
+}:
+
+buildGoModule {
+  pname = "hut";
+  version = "unstable-2022-03-02";
+
+  src = fetchFromSourcehut {
+    owner = "~emersion";
+    repo = "hut";
+    rev = "55ad2fbd9ceeeb9e7dc203c15476fa785f1209e0";
+    sha256 = "sha256-j2IVwCm7iq3JKccPL8noRBhqw+V+4qfcpAwV65xhZk0=";
+  };
+
+  vendorSha256 = "sha256-zdQvk0M1a+Y90pnhqIpKxLJnlVJqMoSycewTep2Oux4=";
+
+  nativeBuildInputs = [
+    scdoc
+  ];
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  postBuild = ''
+    make $makeFlags completions doc/hut.1
+  '';
+
+  preInstall = ''
+    make $makeFlags install
+  '';
+
+  passthru.updateScript = unstableGitUpdater { };
+
+  meta = with lib; {
+    homepage = "https://sr.ht/~emersion/hut/";
+    description = "A CLI tool for Sourcehut / sr.ht";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fgaz ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/version-management/gitea/default.nix b/nixpkgs/pkgs/applications/version-management/gitea/default.nix
index 37000982d8e4..840937c190f0 100644
--- a/nixpkgs/pkgs/applications/version-management/gitea/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/gitea/default.nix
@@ -16,12 +16,12 @@ with lib;
 
 buildGoPackage rec {
   pname = "gitea";
-  version = "1.16.3";
+  version = "1.16.5";
 
   # not fetching directly from the git repo, because that lacks several vendor files for the web UI
   src = fetchurl {
     url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
-    sha256 = "sha256-kT87CV/P1MUBLRetzYdIsIGVDjp9F6zmD2ovmcmy4Ys=";
+    sha256 = "sha256-2aqy6DV8oaIur/syg1bk41Wo+FGk3m+05+tUyoDwGHs=";
   };
 
   unpackPhase = ''
diff --git a/nixpkgs/pkgs/applications/version-management/gitkraken/default.nix b/nixpkgs/pkgs/applications/version-management/gitkraken/default.nix
index 2cdc29365356..52ad060c990d 100644
--- a/nixpkgs/pkgs/applications/version-management/gitkraken/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/gitkraken/default.nix
@@ -11,24 +11,24 @@ with lib;
 let
   curlWithGnuTls = curl.override { gnutlsSupport = true; opensslSupport = false; };
   pname = "gitkraken";
-  version = "8.3.0";
+  version = "8.3.3";
 
   throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
 
   srcs = {
     x86_64-linux = fetchzip {
       url = "https://release.axocdn.com/linux/GitKraken-v${version}.tar.gz";
-      sha256 = "sha256-iAXw6+KCyfyabyJvBQ5cLNEMNbsELL9sQaZkzZL7+/w=";
+      sha256 = "185msrpa33w40prc88n5m0g12wh8r6szj56iikk4ps6kwr6wamy7";
     };
 
     x86_64-darwin = fetchzip {
       url = "https://release.axocdn.com/darwin/GitKraken-v${version}.zip";
-      sha256 = "sha256-Spgx5JQ/AENYdvkl7+YnBaNk/VI9DdyN17ABfxanfZ4=";
+      sha256 = "0iam5ni8imajxhcv12zib6m475i6czllmqy512r1wmzw9zbilf43";
     };
 
     aarch64-darwin = fetchzip {
       url = "https://release.axocdn.com/darwin-arm64/GitKraken-v${version}.zip";
-      sha256 = "sha256-PJ4/R1pHbfoSBHhIyiqcGoE13FSWQapxj4Lq+ZdcYCQ=";
+      sha256 = "12af421r4d8s4l5j54xyd3x8pa72nbilass95v0y3b0wgsi35g0z";
     };
   };
 
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/data.json b/nixpkgs/pkgs/applications/version-management/gitlab/data.json
index 462ff47afd7c..bd524c622d6f 100644
--- a/nixpkgs/pkgs/applications/version-management/gitlab/data.json
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/data.json
@@ -1,14 +1,14 @@
 {
-  "version": "14.8.2",
-  "repo_hash": "1pl528qxsbg75l5nny7cw8hcsd0zs50hhn0ngdrf3gjpd6y7pzcc",
-  "yarn_hash": "0dlhslkhiha4jyfzm0k8i9cgwdk12r5m67i2rznxbrkl38gk9c1x",
+  "version": "14.9.1",
+  "repo_hash": "0jkhvglisaj3h9ls8q8wrxnnp4xp3zggc8vmwg6jqqjsmbpi332h",
+  "yarn_hash": "1bq1ka0nlb2nkjx70qpwpm8x6crbkfj0c8m39pwwc42j8wn10r9g",
   "owner": "gitlab-org",
   "repo": "gitlab",
-  "rev": "v14.8.2-ee",
+  "rev": "v14.9.1-ee",
   "passthru": {
-    "GITALY_SERVER_VERSION": "14.8.2",
-    "GITLAB_PAGES_VERSION": "1.54.0",
-    "GITLAB_SHELL_VERSION": "13.23.2",
-    "GITLAB_WORKHORSE_VERSION": "14.8.2"
+    "GITALY_SERVER_VERSION": "14.9.1",
+    "GITLAB_PAGES_VERSION": "1.56.0",
+    "GITLAB_SHELL_VERSION": "13.24.0",
+    "GITLAB_WORKHORSE_VERSION": "14.9.1"
   }
 }
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix
index b5a05dde1b4b..d8ab7f36b39c 100644
--- a/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitaly/default.nix
@@ -11,7 +11,7 @@ let
     gemdir = ./.;
   };
 
-  version = "14.8.2";
+  version = "14.9.1";
   gitaly_package = "gitlab.com/gitlab-org/gitaly/v${lib.versions.major version}";
 in
 
@@ -23,10 +23,10 @@ buildGoModule {
     owner = "gitlab-org";
     repo = "gitaly";
     rev = "v${version}";
-    sha256 = "sha256-GgQscKxxYpvzU2M99gmvGj0HM/oD+2Ke24FRzUxv6HM=";
+    sha256 = "sha256-mk6JZuu6b2r/OqRI4ZUf8AV/ObRKhTIQT9bQE8sH894=";
   };
 
-  vendorSha256 = "sha256-Qw9/nlo1eB5dPcldXe9doy4QA4DDVUDad3o4kbdNu34=";
+  vendorSha256 = "sha256-kEjgWA/Task23PScPYrqdDu3vdVR/FJl7OilUug/Bds=";
 
   passthru = {
     inherit rubyEnv;
@@ -41,7 +41,7 @@ buildGoModule {
 
   postInstall = ''
     mkdir -p $ruby
-    cp -rv $src/ruby/{bin,lib,proto,git-hooks} $ruby
+    cp -rv $src/ruby/{bin,lib,proto} $ruby
     mv $out/bin/gitaly-git2go $out/bin/gitaly-git2go-${version}
   '';
 
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix
index 99ad72a26644..971ef2af955c 100644
--- a/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix
@@ -2,12 +2,12 @@
 
 buildGoModule rec {
   pname = "gitlab-shell";
-  version = "13.23.2";
+  version = "13.24.0";
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-shell";
     rev = "v${version}";
-    sha256 = "sha256-aee+Tn81o1iK1Xm5et6lKUN8//lyGh3NGs96Mwg4nFc=";
+    sha256 = "sha256-/SH1YNmZr/NuCvyL6tmyTj1C2LUuxldeHwmJHWKPz2M=";
   };
 
   buildInputs = [ ruby ];
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
index 76273acdff25..e16d7f75bf69 100644
--- a/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -5,7 +5,7 @@ in
 buildGoModule rec {
   pname = "gitlab-workhorse";
 
-  version = "14.8.2";
+  version = "14.9.1";
 
   src = fetchFromGitLab {
     owner = data.owner;
@@ -16,7 +16,7 @@ buildGoModule rec {
 
   sourceRoot = "source/workhorse";
 
-  vendorSha256 = "sha256-ps/MjNY2woHrfcsNZTurnO2TbasWdS3LiuPUfVD2Ypc=";
+  vendorSha256 = "sha256-ubuMuO8tDjdVZWehsmsJqUgvmySIBJ15D9GHZFzApFw=";
   buildInputs = [ git ];
   ldflags = [ "-X main.Version=${version}" ];
   doCheck = false;
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
index 4ae8b33569f2..fd469fd8bcc7 100644
--- a/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
@@ -11,6 +11,8 @@ gem 'responders', '~> 3.0'
 
 gem 'sprockets', '~> 3.7.0'
 
+gem 'view_component', '~> 2.50.0'
+
 # Default values for AR models
 gem 'default_value_for', '~> 3.4.0'
 
@@ -153,7 +155,7 @@ gem 'html-pipeline', '~> 2.13.2'
 gem 'deckar01-task_list', '2.3.1'
 gem 'gitlab-markup', '~> 1.8.0'
 gem 'github-markup', '~> 1.7.0', require: 'github/markup'
-gem 'commonmarker', '~> 0.23.2'
+gem 'commonmarker', '~> 0.23.4'
 gem 'kramdown', '~> 2.3.1'
 gem 'RedCloth', '~> 4.3.2'
 gem 'rdoc', '~> 6.3.2'
@@ -290,7 +292,7 @@ gem 'autoprefixer-rails', '10.2.5.1'
 gem 'terser', '1.0.2'
 
 gem 'addressable', '~> 2.8'
-gem 'tanuki_emoji', '~> 0.5'
+gem 'tanuki_emoji', '~> 0.6'
 gem 'gon', '~> 6.4.0'
 gem 'request_store', '~> 1.5'
 gem 'base32', '~> 0.3.0'
@@ -302,6 +304,9 @@ gem 'rack-attack', '~> 6.3.0'
 
 # Sentry integration
 gem 'sentry-raven', '~> 3.1'
+gem 'sentry-ruby', '~> 5.1.1'
+gem 'sentry-rails', '~> 5.1.1'
+gem 'sentry-sidekiq', '~> 5.1.1'
 
 # PostgreSQL query parsing
 #
@@ -374,7 +379,7 @@ group :development, :test do
   gem 'spring', '~> 2.1.0'
   gem 'spring-commands-rspec', '~> 1.0.4'
 
-  gem 'gitlab-styles', '~> 6.6.0', require: false
+  gem 'gitlab-styles', '~> 7.0.0', require: false
 
   gem 'haml_lint', '~> 0.36.0', require: false
   gem 'bundler-audit', '~> 0.7.0.1', require: false
@@ -393,14 +398,16 @@ group :development, :test do
   gem 'parallel', '~> 1.19', require: false
 
   gem 'test_file_finder', '~> 0.1.3'
+
+  gem 'sigdump', '~> 0.2.4', require: 'sigdump/setup'
 end
 
 group :development, :test, :danger do
-  gem 'gitlab-dangerfiles', '~> 2.8.0', require: false
+  gem 'gitlab-dangerfiles', '~> 2.11.0', require: false
 end
 
 group :development, :test, :coverage do
-  gem 'simplecov', '~> 0.18.5', require: false
+  gem 'simplecov', '~> 0.21', require: false
   gem 'simplecov-lcov', '~> 0.8.0', require: false
   gem 'simplecov-cobertura', '~> 1.3.1', require: false
   gem 'undercover', '~> 0.4.4', require: false
@@ -418,6 +425,7 @@ group :test do
   gem 'fuubar', '~> 2.2.0'
   gem 'rspec-retry', '~> 0.6.1'
   gem 'rspec_profiling', '~> 0.0.6'
+  gem 'rspec-benchmark', '~> 0.6.0'
   gem 'rspec-parameterized', require: false
 
   gem 'capybara', '~> 3.35.3'
@@ -473,7 +481,7 @@ gem 'ssh_data', '~> 1.2'
 gem 'spamcheck', '~> 0.1.0'
 
 # Gitaly GRPC protocol definitions
-gem 'gitaly', '~> 14.8.0.pre.rc1'
+gem 'gitaly', '~> 14.9.0.pre.rc4'
 
 # KAS GRPC protocol definitions
 gem 'kas-grpc', '~> 0.0.2'
@@ -534,4 +542,4 @@ gem 'ipaddress', '~> 0.8.3'
 
 gem 'parslet', '~> 1.8'
 
-gem 'ipynbdiff', '0.3.8'
+gem 'ipynbdiff', '0.4.4'
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
index a7f75fb0e269..da4987d35dcd 100644
--- a/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
@@ -132,8 +132,11 @@ GEM
     bcrypt (3.1.16)
     benchmark (0.1.1)
     benchmark-ips (2.3.0)
+    benchmark-malloc (0.2.0)
     benchmark-memory (0.1.2)
       memory_profiler (~> 0.9)
+    benchmark-perf (0.6.0)
+    benchmark-trend (0.4.0)
     better_errors (2.9.1)
       coderay (>= 1.0.0)
       erubi (>= 1.0.0)
@@ -192,7 +195,7 @@ GEM
       open4 (~> 1.3)
     coderay (1.1.3)
     colored2 (3.1.2)
-    commonmarker (0.23.2)
+    commonmarker (0.23.4)
     concurrent-ruby (1.1.9)
     connection_pool (2.2.5)
     contracts (0.11.0)
@@ -214,7 +217,7 @@ GEM
     css_parser (1.7.0)
       addressable
     daemons (1.3.1)
-    danger (8.4.2)
+    danger (8.4.5)
       claide (~> 1.0)
       claide-plugins (>= 0.9.2)
       colored2 (~> 3.1)
@@ -231,6 +234,7 @@ GEM
       danger
       gitlab (~> 4.2, >= 4.2.0)
     database_cleaner (1.7.0)
+    dead_end (3.1.1)
     deckar01-task_list (2.3.1)
       html-pipeline
     declarative (0.0.20)
@@ -240,13 +244,15 @@ GEM
       activerecord (>= 3.2.0, < 7.0)
     deprecation_toolkit (1.5.1)
       activesupport (>= 4.2)
-    derailed_benchmarks (1.8.1)
+    derailed_benchmarks (2.1.1)
       benchmark-ips (~> 2)
+      dead_end
       get_process_mem (~> 0)
       heapy (~> 0)
-      memory_profiler (~> 0)
-      mini_histogram (>= 0.2.1)
+      memory_profiler (>= 0, < 2)
+      mini_histogram (>= 0.3.0)
       rack (>= 1)
+      rack-test
       rake (> 10, < 14)
       ruby-statistics (>= 2.1)
       thor (>= 0.19, < 2)
@@ -268,7 +274,7 @@ GEM
     diffy (3.3.0)
     discordrb-webhooks (3.4.2)
       rest-client (>= 2.0.0)
-    docile (1.3.2)
+    docile (1.4.0)
     domain_name (0.5.20190701)
       unf (>= 0.0.5, < 1.0.0)
     doorkeeper (5.5.0.rc2)
@@ -365,7 +371,7 @@ GEM
     fast_blank (1.0.0)
     fast_gettext (2.1.0)
     ffaker (2.10.0)
-    ffi (1.15.3)
+    ffi (1.15.5)
     ffi-compiler (1.0.1)
       ffi (>= 1.0.0)
       rake
@@ -428,7 +434,7 @@ GEM
       ruby-progressbar (~> 1.4)
     fuzzyurl (0.9.0)
     gemoji (3.0.1)
-    get_process_mem (0.2.5)
+    get_process_mem (0.2.7)
       ffi (~> 1.0)
     gettext (3.3.6)
       locale (>= 2.0.5)
@@ -442,7 +448,7 @@ GEM
       rails (>= 3.2.0)
     git (1.7.0)
       rchardet (~> 1.8)
-    gitaly (14.8.0.pre.rc1)
+    gitaly (14.9.0.pre.rc4)
       grpc (~> 1.0)
     github-markup (1.7.0)
     gitlab (4.16.1)
@@ -450,8 +456,8 @@ GEM
       terminal-table (~> 1.5, >= 1.5.1)
     gitlab-chronic (0.10.5)
       numerizer (~> 0.2)
-    gitlab-dangerfiles (2.8.0)
-      danger (>= 8.3.1)
+    gitlab-dangerfiles (2.11.0)
+      danger (>= 8.4.5)
       danger-gitlab (>= 8.0.0)
     gitlab-experiment (0.7.0)
       activesupport (>= 3.0)
@@ -488,7 +494,7 @@ GEM
       openid_connect (~> 1.2)
     gitlab-sidekiq-fetcher (0.8.0)
       sidekiq (~> 6.1)
-    gitlab-styles (6.6.0)
+    gitlab-styles (7.0.0)
       rubocop (~> 0.91, >= 0.91.1)
       rubocop-gitlab-security (~> 0.1.1)
       rubocop-graphql (~> 0.10)
@@ -632,7 +638,7 @@ GEM
       mime-types (~> 3.0)
       multi_xml (>= 0.5.2)
     httpclient (2.8.3)
-    i18n (1.9.1)
+    i18n (1.10.0)
       concurrent-ruby (~> 1.0)
     i18n_data (0.8.0)
     icalendar (2.4.1)
@@ -641,9 +647,9 @@ GEM
     invisible_captcha (1.1.0)
       rails (>= 4.2)
     ipaddress (0.8.3)
-    ipynbdiff (0.3.8)
-      diffy (= 3.3.0)
-      json (= 2.5.1)
+    ipynbdiff (0.4.4)
+      diffy (~> 3.3)
+      json (~> 2.5, >= 2.5.1)
     jaeger-client (1.1.0)
       opentracing (~> 0.3)
       thrift
@@ -1052,6 +1058,11 @@ GEM
       rspec-core (~> 3.10.0)
       rspec-expectations (~> 3.10.0)
       rspec-mocks (~> 3.10.0)
+    rspec-benchmark (0.6.0)
+      benchmark-malloc (~> 0.2)
+      benchmark-perf (~> 0.6)
+      benchmark-trend (~> 0.4)
+      rspec (>= 3.0)
     rspec-core (3.10.1)
       rspec-support (~> 3.10.0)
     rspec-expectations (3.10.1)
@@ -1097,7 +1108,7 @@ GEM
       parser (>= 2.7.1.5)
     rubocop-gitlab-security (0.1.1)
       rubocop (>= 0.51)
-    rubocop-graphql (0.10.3)
+    rubocop-graphql (0.13.0)
       rubocop (>= 0.87, < 2)
     rubocop-performance (1.9.2)
       rubocop (>= 0.90.0, < 2.0)
@@ -1118,7 +1129,7 @@ GEM
     ruby-saml (1.13.0)
       nokogiri (>= 1.10.5)
       rexml
-    ruby-statistics (2.1.2)
+    ruby-statistics (3.0.0)
     ruby2_keywords (0.0.4)
     ruby_parser (3.15.0)
       sexp_processor (~> 4.9)
@@ -1156,8 +1167,19 @@ GEM
     selenium-webdriver (3.142.7)
       childprocess (>= 0.5, < 4.0)
       rubyzip (>= 1.2.2)
+    sentry-rails (5.1.1)
+      railties (>= 5.0)
+      sentry-ruby-core (~> 5.1.1)
     sentry-raven (3.1.2)
       faraday (>= 1.0)
+    sentry-ruby (5.1.1)
+      concurrent-ruby (~> 1.0, >= 1.0.2)
+      sentry-ruby-core (= 5.1.1)
+    sentry-ruby-core (5.1.1)
+      concurrent-ruby
+    sentry-sidekiq (5.1.1)
+      sentry-ruby-core (~> 5.1.1)
+      sidekiq (>= 3.0)
     set (1.0.1)
     settingslogic (2.0.9)
     sexp_processor (4.15.1)
@@ -1171,19 +1193,22 @@ GEM
     sidekiq-cron (1.2.0)
       fugit (~> 1.1)
       sidekiq (>= 4.2.1)
+    sigdump (0.2.4)
     signet (0.14.0)
       addressable (~> 2.3)
       faraday (>= 0.17.3, < 2.0)
       jwt (>= 1.5, < 3.0)
       multi_json (~> 1.10)
     simple_po_parser (1.1.2)
-    simplecov (0.18.5)
+    simplecov (0.21.2)
       docile (~> 1.1)
       simplecov-html (~> 0.11)
+      simplecov_json_formatter (~> 0.1)
     simplecov-cobertura (1.3.1)
       simplecov (~> 0.8)
     simplecov-html (0.12.3)
     simplecov-lcov (0.8.0)
+    simplecov_json_formatter (0.1.4)
     sixarm_ruby_unaccent (1.2.0)
     slack-messenger (2.3.4)
     snowplow-tracker (0.6.1)
@@ -1242,7 +1267,7 @@ GEM
     sys-filesystem (1.4.3)
       ffi (~> 1.1)
     sysexits (1.2.0)
-    tanuki_emoji (0.5.0)
+    tanuki_emoji (0.6.0)
     temple (0.8.2)
     terminal-table (1.8.0)
       unicode-display_width (~> 1.1, >= 1.1.1)
@@ -1256,7 +1281,7 @@ GEM
       daemons (~> 1.0, >= 1.0.9)
       eventmachine (~> 1.0, >= 1.0.4)
       rack (>= 1, < 3)
-    thor (1.1.0)
+    thor (1.2.1)
     thrift (0.14.0)
     tilt (2.0.10)
     timecop (0.9.1)
@@ -1330,6 +1355,9 @@ GEM
       activerecord (>= 3.0)
       activesupport (>= 3.0)
     version_sorter (2.2.4)
+    view_component (2.50.0)
+      activesupport (>= 5.0.0, < 8.0)
+      method_source (~> 1.0)
     vmstat (2.3.0)
     warden (1.2.8)
       rack (>= 2.0.6)
@@ -1408,7 +1436,7 @@ DEPENDENCIES
   capybara-screenshot (~> 1.0.22)
   carrierwave (~> 1.3)
   charlock_holmes (~> 0.7.7)
-  commonmarker (~> 0.23.2)
+  commonmarker (~> 0.23.4)
   concurrent-ruby (~> 1.1)
   connection_pool (~> 2.0)
   countries (~> 3.0)
@@ -1456,10 +1484,10 @@ DEPENDENCIES
   gettext (~> 3.3)
   gettext_i18n_rails (~> 1.8.0)
   gettext_i18n_rails_js (~> 1.3)
-  gitaly (~> 14.8.0.pre.rc1)
+  gitaly (~> 14.9.0.pre.rc4)
   github-markup (~> 1.7.0)
   gitlab-chronic (~> 0.10.5)
-  gitlab-dangerfiles (~> 2.8.0)
+  gitlab-dangerfiles (~> 2.11.0)
   gitlab-experiment (~> 0.7.0)
   gitlab-fog-azure-rm (~> 1.2.0)
   gitlab-labkit (~> 0.22.0)
@@ -1470,7 +1498,7 @@ DEPENDENCIES
   gitlab-net-dns (~> 0.9.1)
   gitlab-omniauth-openid-connect (~> 0.9.0)
   gitlab-sidekiq-fetcher (= 0.8.0)
-  gitlab-styles (~> 6.6.0)
+  gitlab-styles (~> 7.0.0)
   gitlab_chronic_duration (~> 0.10.6.2)
   gitlab_omniauth-ldap (~> 2.1.1)
   gon (~> 6.4.0)
@@ -1500,7 +1528,7 @@ DEPENDENCIES
   icalendar
   invisible_captcha (~> 1.1.0)
   ipaddress (~> 0.8.3)
-  ipynbdiff (= 0.3.8)
+  ipynbdiff (= 0.4.4)
   jira-ruby (~> 2.1.4)
   js_regex (~> 3.7)
   json (~> 2.5.1)
@@ -1588,6 +1616,7 @@ DEPENDENCIES
   rexml (~> 3.2.5)
   rouge (~> 3.27.0)
   rqrcode-rails3 (~> 0.1.7)
+  rspec-benchmark (~> 0.6.0)
   rspec-parameterized
   rspec-rails (~> 5.0.1)
   rspec-retry (~> 0.6.1)
@@ -1606,13 +1635,17 @@ DEPENDENCIES
   sd_notify (~> 0.1.0)
   seed-fu (~> 2.3.7)
   selenium-webdriver (~> 3.142)
+  sentry-rails (~> 5.1.1)
   sentry-raven (~> 3.1)
+  sentry-ruby (~> 5.1.1)
+  sentry-sidekiq (~> 5.1.1)
   settingslogic (~> 2.0.9)
   shoulda-matchers (~> 4.0.1)
   sidekiq (~> 6.4)
   sidekiq-cron (~> 1.2)
+  sigdump (~> 0.2.4)
   simple_po_parser (~> 1.1.2)
-  simplecov (~> 0.18.5)
+  simplecov (~> 0.21)
   simplecov-cobertura (~> 1.3.1)
   simplecov-lcov (~> 0.8.0)
   slack-messenger (~> 2.3.4)
@@ -1627,7 +1660,7 @@ DEPENDENCIES
   stackprof (~> 0.2.15)
   state_machines-activerecord (~> 0.8.0)
   sys-filesystem (~> 1.4.3)
-  tanuki_emoji (~> 0.5)
+  tanuki_emoji (~> 0.6)
   terser (= 1.0.2)
   test-prof (~> 1.0.7)
   test_file_finder (~> 0.1.3)
@@ -1644,6 +1677,7 @@ DEPENDENCIES
   valid_email (~> 0.1)
   validates_hostname (~> 1.0.11)
   version_sorter (~> 2.2.4)
+  view_component (~> 2.50.0)
   vmstat (~> 2.3.0)
   warning (~> 1.2.0)
   webauthn (~> 2.3)
@@ -1653,4 +1687,4 @@ DEPENDENCIES
   yajl-ruby (~> 1.4.1)
 
 BUNDLED WITH
-   2.3.6
+   2.3.9
diff --git a/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
index 0a2d8394e007..5fc9a183a8b9 100644
--- a/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
+++ b/nixpkgs/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
@@ -499,6 +499,16 @@
     };
     version = "2.3.0";
   };
+  benchmark-malloc = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0svyac8alxbmip6b9rp34wq5lcimdaapjkaqdw1385i66l28ziip";
+      type = "gem";
+    };
+    version = "0.2.0";
+  };
   benchmark-memory = {
     dependencies = ["memory_profiler"];
     groups = ["default"];
@@ -510,6 +520,26 @@
     };
     version = "0.1.2";
   };
+  benchmark-perf = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08cngwnwk2h6cdxx3dyckxcg7d0yi3pm83c26kfzkq1xkyah2azy";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  benchmark-trend = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10axhj80jan0b7c77hm0aj2yxv0dh9clfy4pppxvxfj3yjlh4nny";
+      type = "gem";
+    };
+    version = "0.4.0";
+  };
   better_errors = {
     dependencies = ["coderay" "erubi" "rack"];
     groups = ["development"];
@@ -784,10 +814,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0sshs8mvjgk73sfz3bi9apq0p99kfj7n9bg1cyldl4yyy2z05prs";
+      sha256 = "1kn7x7smqsk0x2iq17dbbaay0qimmgza8wbdlrs66dvn0l2wpncm";
       type = "gem";
     };
-    version = "0.23.2";
+    version = "0.23.4";
   };
   concurrent-ruby = {
     groups = ["default" "development" "test"];
@@ -921,10 +951,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07mxkgksgilfipd97rgfhx7c421j1fx7rk6lf0k18bkccyg1r8vn";
+      sha256 = "1bmbqxscz0whc3kf5622ffp83k96h0vx71bhb5rzi3zzmg6b4vkl";
       type = "gem";
     };
-    version = "8.4.2";
+    version = "8.4.5";
   };
   danger-gitlab = {
     dependencies = ["danger" "gitlab"];
@@ -947,6 +977,16 @@
     };
     version = "1.7.0";
   };
+  dead_end = {
+    groups = ["default" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nrg9cwy21iwzl1djp1hamy24q3pfhvvrjqi9q0bwj81gizxy48h";
+      type = "gem";
+    };
+    version = "3.1.1";
+  };
   deckar01-task_list = {
     dependencies = ["html-pipeline"];
     groups = ["default"];
@@ -1011,15 +1051,15 @@
     version = "1.5.1";
   };
   derailed_benchmarks = {
-    dependencies = ["benchmark-ips" "get_process_mem" "heapy" "memory_profiler" "mini_histogram" "rack" "rake" "ruby-statistics" "thor"];
+    dependencies = ["benchmark-ips" "dead_end" "get_process_mem" "heapy" "memory_profiler" "mini_histogram" "rack" "rack-test" "rake" "ruby-statistics" "thor"];
     groups = ["test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05nryqr18w61dyk9amajh7chn07zxardxnywayyis72kmd8f9q29";
+      sha256 = "1cxaqvfhm8xpv3hvpwn7y4g5315zzf5gsdffdkm1bisjviwvmc15";
       type = "gem";
     };
-    version = "1.8.1";
+    version = "2.1.1";
   };
   device_detector = {
     groups = ["default"];
@@ -1095,14 +1135,14 @@
     version = "3.4.2";
   };
   docile = {
-    groups = ["default" "development" "test"];
+    groups = ["coverage" "default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0qrwiyagxzl8zlx3dafb0ay8l14ib7imb2rsmx70i5cp420v8gif";
+      sha256 = "1lxqxgq71rqwj1lpl9q1mbhhhhhhdkkj7my341f2889pwayk85sz";
       type = "gem";
     };
-    version = "1.3.2";
+    version = "1.4.0";
   };
   domain_name = {
     dependencies = ["unf"];
@@ -1594,10 +1634,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wgvaclp4h9y8zkrgz8p2hqkrgr4j7kz0366mik0970w532cbmcq";
+      sha256 = "1862ydmclzy1a0cjbvm8dz7847d9rch495ib0zb64y84d3xd4bkg";
       type = "gem";
     };
-    version = "1.15.3";
+    version = "1.15.5";
   };
   ffi-compiler = {
     dependencies = ["ffi" "rake"];
@@ -1817,14 +1857,14 @@
   };
   get_process_mem = {
     dependencies = ["ffi"];
-    groups = ["default" "puma" "unicorn"];
+    groups = ["default" "puma" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1q7pivp9z9pdxc2ha32q7x9zgqy8m9jf87g6n5mvi5l6knxya8sh";
+      sha256 = "1fkyyyxjcx4iigm8vhraa629k2lxa1npsv4015y82snx84v3rzaa";
       type = "gem";
     };
-    version = "0.2.5";
+    version = "0.2.7";
   };
   gettext = {
     dependencies = ["locale" "text"];
@@ -1876,10 +1916,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0dl80qvyl1jbcc1iabpja3pnsrfag92h25c2r3vqn3bd0x9q4iwc";
+      sha256 = "13yq0ln40iy0wjapdg5phkqgr2bbdfk3xccyr1828yxpgkd44716";
       type = "gem";
     };
-    version = "14.8.0.pre.rc1";
+    version = "14.9.0.pre.rc4";
   };
   github-markup = {
     groups = ["default"];
@@ -1919,10 +1959,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xd7sgl5iwxq2mvx7ql1wpciqrnj2z1ycjxm5ddrdi4kcl9f94z4";
+      sha256 = "1in56r2mdi6ghwx4nxvfihb2sg73xhnpw0w42wc5f57wwy6m1s24";
       type = "gem";
     };
-    version = "2.8.0";
+    version = "2.11.0";
   };
   gitlab-experiment = {
     dependencies = ["activesupport" "request_store"];
@@ -2036,10 +2076,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1xs7v0sj3j4d5yflfn8n5azh5qwxsrc432q7v4nckg9irwqj99js";
+      sha256 = "10fmvx2vx2v0mbwv5d4wcpc2iyp5y8lwxn9hjpzkk5bvxkk4c493";
       type = "gem";
     };
-    version = "6.6.0";
+    version = "7.0.0";
   };
   gitlab_chronic_duration = {
     dependencies = ["numerizer"];
@@ -2520,10 +2560,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nancdgq51wk3c1pkxps0rkjsfdwnkx60hzkm947m5rzsz8b2sw8";
+      sha256 = "0b2qyvnk4yynlg17ymkq4g5xgr275637fhl1mjh0valw3cb1fhhg";
       type = "gem";
     };
-    version = "1.9.1";
+    version = "1.10.0";
   };
   i18n_data = {
     groups = ["default"];
@@ -2583,10 +2623,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0raj4xwp2dz1xrzcpqqdp5ygfpjdy7jx28ziqg9f73hf850j90d1";
+      sha256 = "0cgrr3pc0y11gas6k2js33qghj7rpdh99vavda712wbq3hz42jx2";
       type = "gem";
     };
-    version = "0.3.8";
+    version = "0.4.4";
   };
   jaeger-client = {
     dependencies = ["opentracing" "thrift"];
@@ -4468,6 +4508,17 @@
     };
     version = "3.10.0";
   };
+  rspec-benchmark = {
+    dependencies = ["benchmark-malloc" "benchmark-perf" "benchmark-trend" "rspec"];
+    groups = ["test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1kyn7p409n75ikb7z9v3dbzjyyinkwi88f66alj9lnf2gssss50h";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
   rspec-core = {
     dependencies = ["rspec-support"];
     groups = ["default" "development" "test"];
@@ -4605,10 +4656,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hvm17hm7xjqcfn70c7h3rrz2y2mrazqmkp5ains08j0zd39x7rh";
+      sha256 = "18md69dkz0s5xm93c4psmvy4c0nx3a7yi61vfjn46cw6yk54fm7b";
       type = "gem";
     };
-    version = "0.10.3";
+    version = "0.13.0";
   };
   rubocop-performance = {
     dependencies = ["rubocop" "rubocop-ast"];
@@ -4697,14 +4748,14 @@
     version = "1.13.0";
   };
   ruby-statistics = {
-    groups = ["default"];
+    groups = ["default" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xmd9dk1fcmii38apwn3py00qfqxd5yzylafm49n24plzwv913nh";
+      sha256 = "10fwxwhby6n1q1k61bic2s0mddlfwb9x7a7306vir4s60cvh20v1";
       type = "gem";
     };
-    version = "2.1.2";
+    version = "3.0.0";
   };
   ruby2_keywords = {
     groups = ["danger" "default" "development" "test"];
@@ -4896,6 +4947,17 @@
     };
     version = "3.142.7";
   };
+  sentry-rails = {
+    dependencies = ["railties" "sentry-ruby-core"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zv5db0wrvs4gjgrqz7fzpihgil1p9b8hm4bmf25ihyxfskz0vlh";
+      type = "gem";
+    };
+    version = "5.1.1";
+  };
   sentry-raven = {
     dependencies = ["faraday"];
     groups = ["default"];
@@ -4907,6 +4969,39 @@
     };
     version = "3.1.2";
   };
+  sentry-ruby = {
+    dependencies = ["concurrent-ruby" "sentry-ruby-core"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09f1zkc99m1z89qf40bd2ik4fdkchm5h5rb77bz2zhn1f8xmcjaf";
+      type = "gem";
+    };
+    version = "5.1.1";
+  };
+  sentry-ruby-core = {
+    dependencies = ["concurrent-ruby"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "012xra6f9b9y00wvnd2vks5kw3wrjaz3flm692j8sd3qxs8xhbhm";
+      type = "gem";
+    };
+    version = "5.1.1";
+  };
+  sentry-sidekiq = {
+    dependencies = ["sentry-ruby-core" "sidekiq"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1byig501hvjyc3y0x5x0w3h0k3c6lw9j10f3kxx7z8zvfy2n3hz4";
+      type = "gem";
+    };
+    version = "5.1.1";
+  };
   set = {
     groups = ["default"];
     platforms = [];
@@ -4980,6 +5075,16 @@
     };
     version = "1.2.0";
   };
+  sigdump = {
+    groups = ["development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mqf06iw7rymv54y7rgbmfi6ppddgjjmxzi3hrw658n1amp1gwhb";
+      type = "gem";
+    };
+    version = "0.2.4";
+  };
   signet = {
     dependencies = ["addressable" "faraday" "jwt" "multi_json"];
     groups = ["default"];
@@ -5002,15 +5107,15 @@
     version = "1.1.2";
   };
   simplecov = {
-    dependencies = ["docile" "simplecov-html"];
-    groups = ["development" "test"];
+    dependencies = ["docile" "simplecov-html" "simplecov_json_formatter"];
+    groups = ["coverage" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ycx5q699ycbjhp28sjbkrd62vwxlrb7fh4v2m7sjsp2qhi6cf6r";
+      sha256 = "1hrv046jll6ad1s964gsmcq4hvkr3zzr6jc7z1mns22mvfpbc3cr";
       type = "gem";
     };
-    version = "0.18.5";
+    version = "0.21.2";
   };
   simplecov-cobertura = {
     dependencies = ["simplecov"];
@@ -5043,6 +5148,16 @@
     };
     version = "0.8.0";
   };
+  simplecov_json_formatter = {
+    groups = ["coverage" "default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0a5l0733hj7sk51j81ykfmlk2vd5vaijlq9d5fn165yyx3xii52j";
+      type = "gem";
+    };
+    version = "0.1.4";
+  };
   sixarm_ruby_unaccent = {
     groups = ["default"];
     platforms = [];
@@ -5290,10 +5405,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1qw0qa3xz4h3izwl5qsvmg5vvfsfjhmv4mdxaw1v1w1qgp7j7gws";
+      sha256 = "0an1311bpyhd9kzak1qpd4jks336i47gbvx3zdrnn1rdxppimsac";
       type = "gem";
     };
-    version = "0.5.0";
+    version = "0.6.0";
   };
   temple = {
     groups = ["default" "development" "test"];
@@ -5374,10 +5489,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18yhlvmfya23cs3pvhr1qy38y41b6mhr5q9vwv5lrgk16wmf3jna";
+      sha256 = "0inl77jh4ia03jw3iqm5ipr76ghal3hyjrd6r8zqsswwvi9j2xdi";
       type = "gem";
     };
-    version = "1.1.0";
+    version = "1.2.1";
   };
   thrift = {
     groups = ["default"];
@@ -5736,6 +5851,17 @@
     };
     version = "2.2.4";
   };
+  view_component = {
+    dependencies = ["activesupport" "method_source"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1syhbmnrqklahqaaac13jx6rwpc6z210f53apwglngp2xdibxkf1";
+      type = "gem";
+    };
+    version = "2.50.0";
+  };
   vmstat = {
     groups = ["default"];
     platforms = [];
diff --git a/nixpkgs/pkgs/applications/version-management/gogs/default.nix b/nixpkgs/pkgs/applications/version-management/gogs/default.nix
index 3f9d8442ea44..cf0622a6b0ec 100644
--- a/nixpkgs/pkgs/applications/version-management/gogs/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/gogs/default.nix
@@ -8,13 +8,13 @@ with lib;
 
 buildGoModule rec {
   pname = "gogs";
-  version = "0.12.4";
+  version = "0.12.5";
 
   src = fetchFromGitHub {
     owner = "gogs";
     repo = "gogs";
     rev = "v${version}";
-    sha256 = "sha256-t2aXRYCr54sqXwv6cJHDf1z1z94SqJM0WQRd2ejc7XY=";
+    sha256 = "sha256-I3kFRKgVMGMKgHU5VEeNai8FseN/ea6MzEP94AR2Zfo=";
   };
 
   vendorSha256 = "sha256-3dT5D+oDd0mpJp/cP53TQcRUkmqh6g3sRBWWAUqhaAo=";
diff --git a/nixpkgs/pkgs/applications/version-management/got/default.nix b/nixpkgs/pkgs/applications/version-management/got/default.nix
index c62b680b3f59..9e444fb3b39e 100644
--- a/nixpkgs/pkgs/applications/version-management/got/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/got/default.nix
@@ -2,12 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "got";
-  version = "0.67";
+  version = "0.68.1";
 
   src = fetchurl {
-    url =
-      "https://gameoftrees.org/releases/portable/got-portable-${version}.tar.gz";
-    sha256 = "sha256-37Ncljw2tibVRrynDlbxk7d5IS+5QypNFvKIkZ5JvME=";
+    url = "https://gameoftrees.org/releases/portable/got-portable-${version}.tar.gz";
+    sha256 = "122wignzrhsw00mfnh7mxcxvjyp9rk73yxzfyvmg7f5kmb0hng35";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/applications/version-management/meld/default.nix b/nixpkgs/pkgs/applications/version-management/meld/default.nix
index bef284ea5344..462744641e3b 100644
--- a/nixpkgs/pkgs/applications/version-management/meld/default.nix
+++ b/nixpkgs/pkgs/applications/version-management/meld/default.nix
@@ -1,5 +1,6 @@
 { lib
 , fetchurl
+, fetchpatch
 , gettext
 , itstool
 , python3
@@ -27,6 +28,16 @@ python3.pkgs.buildPythonApplication rec {
     sha256 = "cP6Y65Ms4h1nFw47D2pzF+gT6GLemJM+pROYLpoDMgI=";
   };
 
+  patches = [
+    # Pull upstream fix for meson-0.60:
+    #  https://gitlab.gnome.org/GNOME/meld/-/merge_requests/78
+    (fetchpatch {
+      name = "meson-0.60.patch";
+      url  = "https://gitlab.gnome.org/GNOME/meld/-/commit/cc7746c141d976a4779cf868774fae1fe7627a6d.patch";
+      sha256 = "sha256-4uJZyF00Z6svzrOebByZV1hutCZRkIQYC4rUxQr5fdQ=";
+    })
+  ];
+
   nativeBuildInputs = [
     meson
     ninja
diff --git a/nixpkgs/pkgs/applications/video/ani-cli/default.nix b/nixpkgs/pkgs/applications/video/ani-cli/default.nix
new file mode 100644
index 000000000000..6883587b4b81
--- /dev/null
+++ b/nixpkgs/pkgs/applications/video/ani-cli/default.nix
@@ -0,0 +1,44 @@
+{ fetchFromGitHub
+, makeWrapper
+, stdenvNoCC
+, lib
+, gnugrep
+, gnused
+, curl
+, openssl
+, mpv
+, aria2
+}:
+
+stdenvNoCC.mkDerivation rec {
+  pname = "ani-cli";
+  version = "1.9";
+
+  src = fetchFromGitHub {
+    owner = "pystardust";
+    repo = "ani-cli";
+    rev = "v${version}";
+    sha256 = "sha256-oYiq3Mnuhba5NELJXqVN3gY/d0RfQIqW13YtdcmYKK4=";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm755 ani-cli $out/bin/ani-cli
+
+    wrapProgram $out/bin/ani-cli \
+      --prefix PATH : ${lib.makeBinPath [ gnugrep gnused curl openssl mpv aria2 ]}
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/pystardust/ani-cli";
+    description = "A cli tool to browse and play anime";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ skykanin ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/video/byzanz/default.nix b/nixpkgs/pkgs/applications/video/byzanz/default.nix
index a9eee05d238f..2919cb10ca3f 100644
--- a/nixpkgs/pkgs/applications/video/byzanz/default.nix
+++ b/nixpkgs/pkgs/applications/video/byzanz/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   pname = "byzanz";
 
   src = fetchgit {
-    url = "git://github.com/GNOME/byzanz";
+    url = "https://gitlab.gnome.org/Archive/byzanz";
     rev = "1875a7f6a3903b83f6b1d666965800f47db9286a";
     sha256 = "0a72fw2mxl8vdcdnzy0bwis4jk28pd7nc8qgr4vhyw5pd48dynvh";
   };
diff --git a/nixpkgs/pkgs/applications/video/corrscope/default.nix b/nixpkgs/pkgs/applications/video/corrscope/default.nix
index 0e1d377be28e..1c7855c7c073 100644
--- a/nixpkgs/pkgs/applications/video/corrscope/default.nix
+++ b/nixpkgs/pkgs/applications/video/corrscope/default.nix
@@ -2,7 +2,6 @@
 , mkDerivationWith
 , python3Packages
 , fetchFromGitHub
-, fetchpatch
 , wrapQtAppsHook
 , ffmpeg
 , qtbase
@@ -10,25 +9,16 @@
 
 mkDerivationWith python3Packages.buildPythonApplication rec {
   pname = "corrscope";
-  version = "0.7.1";
+  version = "0.8.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "corrscope";
     repo = "corrscope";
     rev = version;
-    sha256 = "0c9kmrw6pcda68li04b5j2kmsgdw1q463qlc32wn96zn9hl82v6m";
+    sha256 = "1wdla4ryif1ss37aqi61lcvzddvf568wyh5s3xv1lrryh4al9vpd";
   };
 
-  patches = [
-    # Remove when bumping past 0.7.1
-    (fetchpatch {
-      name = "0001-Use-poetry-core.patch";
-      url = "https://github.com/corrscope/corrscope/commit/d40d1846dd54b8bccd7b8055d6aece48aacbb943.patch";
-      sha256 = "0xxsbmxdbh3agfm6ww3rpa7ab0ysppan490w0gaqwmwzrxmmdljv";
-    })
-  ];
-
   nativeBuildInputs = [
     wrapQtAppsHook
   ] ++ (with python3Packages; [
@@ -48,8 +38,10 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
     matplotlib
     numpy
     packaging
+    qtpy
     pyqt5
     ruamel-yaml
+    colorspacious
   ];
 
   dontWrapQtApps = true;
diff --git a/nixpkgs/pkgs/applications/video/filebot/default.nix b/nixpkgs/pkgs/applications/video/filebot/default.nix
index d80384f7b26a..df435d03d09d 100644
--- a/nixpkgs/pkgs/applications/video/filebot/default.nix
+++ b/nixpkgs/pkgs/applications/video/filebot/default.nix
@@ -10,11 +10,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "filebot";
-  version = "4.9.5";
+  version = "4.9.6";
 
   src = fetchurl {
-    url = "https://web.archive.org/web/20220226124706/https://get.filebot.net/filebot/FileBot_${version}/FileBot_${version}-portable.tar.xz";
-    sha256 = "sha256-LNvfAueDMd2TedK6bqnNG+J/4YhhbmUca9iyUkoUNkE=";
+    url = "https://web.archive.org/web/20220305095926/https://get.filebot.net/filebot/FileBot_${version}/FileBot_${version}-portable.tar.xz";
+    sha256 = "sha256-3j0WmmamE9KUNwjOVZvrdFH5dS/9FHSdbLfcAsOzQOo=";
   };
 
   unpackPhase = "tar xvf $src";
diff --git a/nixpkgs/pkgs/applications/video/freetube/default.nix b/nixpkgs/pkgs/applications/video/freetube/default.nix
index 8b90704a535d..c93be6b63834 100644
--- a/nixpkgs/pkgs/applications/video/freetube/default.nix
+++ b/nixpkgs/pkgs/applications/video/freetube/default.nix
@@ -23,11 +23,11 @@ stdenv.mkDerivation rec {
   installPhase = ''
     runHook preInstall
 
-    mkdir -p $out/bin $out/share/${pname} $out/share/applications
+    mkdir -p $out/bin $out/share/${pname} $out/share/applications $out/share/icons/hicolor/scalable/apps
 
     cp -a ${appimageContents}/{locales,resources} $out/share/${pname}
     cp -a ${appimageContents}/freetube.desktop $out/share/applications/${pname}.desktop
-    cp -a ${appimageContents}/usr/share/icons $out/share
+    cp -a ${appimageContents}/usr/share/icons/hicolor/scalable/freetube.svg $out/share/icons/hicolor/scalable/apps
 
     substituteInPlace $out/share/applications/${pname}.desktop \
       --replace 'Exec=AppRun' 'Exec=${pname}'
diff --git a/nixpkgs/pkgs/applications/video/gpu-screen-recorder/default.nix b/nixpkgs/pkgs/applications/video/gpu-screen-recorder/default.nix
new file mode 100644
index 000000000000..be02bb5c690e
--- /dev/null
+++ b/nixpkgs/pkgs/applications/video/gpu-screen-recorder/default.nix
@@ -0,0 +1,50 @@
+{ stdenv, lib, fetchgit, makeWrapper, pkg-config, cudatoolkit, glew, libX11
+, libXcomposite, glfw, libpulseaudio, ffmpeg }:
+
+stdenv.mkDerivation rec {
+  pname = "gpu-screen-recorder";
+  version = "1.0.0";
+
+  src = fetchgit {
+    url = "https://repo.dec05eba.com/gpu-screen-recorder";
+    rev = "36fd4516db06bcb192e49055319d1778bbed0322";
+    sha256 = "sha256-hYEHM4FOYcPmQ5Yxh520PKy8HiD+G0xv9hrn8SmA07w=";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    makeWrapper
+  ];
+
+  buildInputs = [
+    glew
+    libX11
+    libXcomposite
+    glfw
+    libpulseaudio
+    ffmpeg
+  ];
+
+  postPatch = ''
+    substituteInPlace ./build.sh \
+      --replace '/opt/cuda/targets/x86_64-linux/include' '${cudatoolkit}/targets/x86_64-linux/include' \
+      --replace '/usr/lib64/libcuda.so' '${cudatoolkit}/targets/x86_64-linux/lib/stubs/libcuda.so'
+  '';
+
+  buildPhase = ''
+    ./build.sh
+  '';
+
+  installPhase = ''
+    install -Dt $out/bin/ gpu-screen-recorder
+    wrapProgram $out/bin/gpu-screen-recorder --prefix LD_LIBRARY_PATH : /run/opengl-driver/lib
+  '';
+
+  meta = with lib; {
+    description = "A screen recorder that has minimal impact on system performance by recording a window using the GPU only";
+    homepage = "https://git.dec05eba.com/gpu-screen-recorder/about/";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ babbaj ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/video/gpu-screen-recorder/fix-nvfbc-check.patch b/nixpkgs/pkgs/applications/video/gpu-screen-recorder/fix-nvfbc-check.patch
new file mode 100644
index 000000000000..bd0d7111c80a
--- /dev/null
+++ b/nixpkgs/pkgs/applications/video/gpu-screen-recorder/fix-nvfbc-check.patch
@@ -0,0 +1,38 @@
+diff --git a/build.sh b/build.sh
+index 05603db..8c38b31 100755
+--- a/build.sh
++++ b/build.sh
+@@ -2,5 +2,5 @@
+ 
+ dependencies="gtk+-3.0 x11 xrandr libpulse"
+ includes="$(pkg-config --cflags $dependencies)"
+-libs="$(pkg-config --libs $dependencies)"
++libs="$(pkg-config --libs $dependencies) -ldl"
+ g++ -o gpu-screen-recorder-gtk -O2 src/main.cpp -s $includes $libs
+diff --git a/src/main.cpp b/src/main.cpp
+index ae2078f..9dcdce1 100644
+--- a/src/main.cpp
++++ b/src/main.cpp
+@@ -15,6 +15,7 @@
+ #include <pwd.h>
+ #include <libgen.h>
+ #include <functional>
++#include <dlfcn.h>
+ 
+ typedef struct {
+     Display *display;
+@@ -830,7 +831,13 @@ static void audio_input_change_callback(GtkComboBox *widget, gpointer userdata)
+ }
+ 
+ static bool is_nv_fbc_installed() {
+-    return access("/usr/lib/libnvidia-fbc.so.1", F_OK) == 0 || access("/usr/local/lib/libnvidia-fbc.so.1", F_OK) == 0;
++    auto handle = dlopen("libnvidia-fbc.so.1", RTLD_LAZY);
++    if (handle) {
++        dlclose(handle);
++        return true;
++    } else {
++        return false;
++    }
+ }
+ 
+ static GtkWidget* create_common_settings_page(GtkStack *stack, GtkApplication *app) {
diff --git a/nixpkgs/pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix b/nixpkgs/pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix
new file mode 100644
index 000000000000..6bfb425f0af9
--- /dev/null
+++ b/nixpkgs/pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix
@@ -0,0 +1,46 @@
+{ stdenv, lib, fetchgit, pkg-config, makeWrapper, gtk3, libX11, libXrandr
+, libpulseaudio, gpu-screen-recorder }:
+
+stdenv.mkDerivation rec {
+  pname = "gpu-screen-recorder-gtk";
+  version = "0.1.0";
+
+  src = fetchgit {
+    url = "https://repo.dec05eba.com/gpu-screen-recorder-gtk";
+    rev = "4c317abd0531f8e155fbbbcd32850bbeebbf2ead";
+    sha256 = "sha256-5W6qmUMP31ndRDxMHuQ/XnZysPQgaie0vVlMTzfODU4=";
+  };
+
+  patches = [ ./fix-nvfbc-check.patch ];
+
+  nativeBuildInputs = [
+    pkg-config
+    makeWrapper
+  ];
+
+  buildInputs = [
+    gtk3
+    libX11
+    libXrandr
+    libpulseaudio
+  ];
+
+  buildPhase = ''
+    ./build.sh
+  '';
+
+  installPhase = ''
+    install -Dt $out/bin/ gpu-screen-recorder-gtk
+    install -Dt $out/share/applications/ gpu-screen-recorder-gtk.desktop
+
+    wrapProgram $out/bin/gpu-screen-recorder-gtk --prefix PATH : ${lib.makeBinPath [ gpu-screen-recorder ]}
+  '';
+
+  meta = with lib; {
+    description = "GTK frontend for gpu-screen-recorder.";
+    homepage = "https://git.dec05eba.com/gpu-screen-recorder-gtk/about/";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ babbaj ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/video/lbry/default.nix b/nixpkgs/pkgs/applications/video/lbry/default.nix
index 460b0a176688..ea69ea547df8 100644
--- a/nixpkgs/pkgs/applications/video/lbry/default.nix
+++ b/nixpkgs/pkgs/applications/video/lbry/default.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "lbry-desktop";
-  version = "0.52.4";
+  version = "0.52.5";
 in appimageTools.wrapAppImage rec {
   name = "${pname}-${version}";
 
@@ -12,7 +12,7 @@ in appimageTools.wrapAppImage rec {
     src = fetchurl {
       url = "https://github.com/lbryio/lbry-desktop/releases/download/v${version}/LBRY_${version}.AppImage";
       # Gotten from latest-linux.yml
-      sha512 = "TWRFCVktSKs5PORtm8FvM6qNWuiL/1HN98ilr1busVUGvain0QXGZwB/Dzvsox1c+X9VofUdapzozSOT6r58qw==";
+      sha512 = "i0t1Ygf3el7Brh6TA804V6n5r5UczvOPxAdhyJ7Gvvg9VqN1+QXB6hsqF4jYTW3jcKxvorVALwrFDVezBTPv5g==";
     };
   };
 
diff --git a/nixpkgs/pkgs/applications/video/mkvtoolnix/default.nix b/nixpkgs/pkgs/applications/video/mkvtoolnix/default.nix
index 0928c7617f90..137731312b0e 100644
--- a/nixpkgs/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/nixpkgs/pkgs/applications/video/mkvtoolnix/default.nix
@@ -47,13 +47,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "mkvtoolnix";
-  version = "65.0.0";
+  version = "66.0.0";
 
   src = fetchFromGitLab {
     owner = "mbunkus";
     repo = "mkvtoolnix";
     rev = "release-${version}";
-    sha256 = "1zphcpfrzic9ialx3xxi2ywzxnllys667vy140bgdshzr798sg2p";
+    sha256 = "sha256-JTPayZhV3Z+o1v+TbHp9SGMAZk1oEzMdNhk67BYB75A=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/applications/video/mpv/scripts/vr-reversal.nix b/nixpkgs/pkgs/applications/video/mpv/scripts/vr-reversal.nix
new file mode 100644
index 000000000000..4c4aacef31dc
--- /dev/null
+++ b/nixpkgs/pkgs/applications/video/mpv/scripts/vr-reversal.nix
@@ -0,0 +1,35 @@
+{ lib, stdenvNoCC, fetchFromGitHub, ffmpeg }:
+
+stdenvNoCC.mkDerivation rec {
+  pname = "vr-reversal";
+  version = "1.1";
+
+  src = fetchFromGitHub {
+    owner = "dfaker";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1wn2ngcvn7wcsl3kmj782x5q9130qw951lj6ilrkafp6q6zscpqr";
+  };
+
+  dontBuild = true;
+
+  # reset_rot is only available in ffmpeg 5.0, see 5bcc61ce87922ecccaaa0bd303a7e195929859a8
+  postPatch = lib.optionalString (lib.versionOlder ffmpeg.version "5.0") ''
+    substituteInPlace 360plugin.lua --replace ":reset_rot=1:" ":"
+  '';
+
+  installPhase = ''
+    mkdir -p $out/share/mpv/scripts
+    cp -r 360plugin.lua $out/share/mpv/scripts/
+  '';
+
+  passthru.scriptName = "360plugin.lua";
+
+  meta = with lib; {
+    description = "Script for mpv to play VR video with optional saving of head tracking data.";
+    homepage = "https://github.com/dfaker/VR-reversal";
+    license = licenses.unlicense;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ schnusch ];
+  };
+}
diff --git a/nixpkgs/pkgs/applications/video/natron/default.nix b/nixpkgs/pkgs/applications/video/natron/default.nix
index ea8a801d1954..82eaa30bba3e 100644
--- a/nixpkgs/pkgs/applications/video/natron/default.nix
+++ b/nixpkgs/pkgs/applications/video/natron/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, qt4, pkg-config, boost, expat, cairo, python2Packages,
   cmake, flex, bison, pango, librsvg, librevenge, libxml2, libcdr, libzip,
-  poppler, imagemagick, openexr, ffmpeg_3, opencolorio_1, openimageio,
+  poppler, imagemagick, openexr, ffmpeg, opencolorio_1, openimageio,
   qmake4Hook, libpng, libGL, lndir, libraw, openjpeg, libwebp, fetchFromGitHub }:
 
 let
@@ -74,7 +74,7 @@ let
       sha256 = "OQg6a5wNy9TFFySjmgd1subvXRxY/ZnSOCkaoUo+ZaA=";
       nativeBuildInputs = [ pkg-config ];
       buildInputs = [
-        libpng ffmpeg_3 openexr opencolorio_1 openimageio boost libGL
+        libpng ffmpeg openexr opencolorio_1 openimageio boost libGL
         seexpr libraw openjpeg libwebp
       ];
     })
@@ -135,5 +135,6 @@ stdenv.mkDerivation {
     license = lib.licenses.gpl2;
     maintainers = [ maintainers.puffnfresh ];
     platforms = platforms.linux;
+    broken = true; # Last evaluated on Hydra on 2021-05-18
   };
 }
diff --git a/nixpkgs/pkgs/applications/video/p2pvc/default.nix b/nixpkgs/pkgs/applications/video/p2pvc/default.nix
index 35dceddf224e..f64af16709f6 100644
--- a/nixpkgs/pkgs/applications/video/p2pvc/default.nix
+++ b/nixpkgs/pkgs/applications/video/p2pvc/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, pkg-config, fetchFromGitHub, opencv2, ncurses, portaudio }:
 
 stdenv.mkDerivation {
-  name = "p2pvc";
+  pname = "p2pvc";
+  version = "unstable-2015-02-12";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ opencv2 ncurses portaudio ];
diff --git a/nixpkgs/pkgs/applications/video/pitivi/default.nix b/nixpkgs/pkgs/applications/video/pitivi/default.nix
index f22dd77b332a..7ae463b98730 100644
--- a/nixpkgs/pkgs/applications/video/pitivi/default.nix
+++ b/nixpkgs/pkgs/applications/video/pitivi/default.nix
@@ -12,6 +12,7 @@
 , libpeas
 , librsvg
 , gnome
+, gnome-desktop
 , libnotify
 , gsound
 , meson
@@ -52,7 +53,7 @@ python3Packages.buildPythonApplication rec {
     gtk3
     libpeas
     librsvg
-    gnome.gnome-desktop
+    gnome-desktop
     gsound
     gnome.adwaita-icon-theme
     gsettings-desktop-schemas
diff --git a/nixpkgs/pkgs/applications/video/qmplay2/default.nix b/nixpkgs/pkgs/applications/video/qmplay2/default.nix
index 9621b8864c9a..12864d3b40af 100644
--- a/nixpkgs/pkgs/applications/video/qmplay2/default.nix
+++ b/nixpkgs/pkgs/applications/video/qmplay2/default.nix
@@ -22,13 +22,13 @@
 }:
 stdenv.mkDerivation rec {
   pname = "qmplay2";
-  version = "21.12.24";
+  version = "22.03.19";
 
   src = fetchFromGitHub {
     owner = "zaps166";
     repo = "QMPlay2";
     rev = version;
-    sha256 = "sha256-SHReKh+M1rgSIiweYFgVvwMeKWeQD52S4KxEiTsyHrI=";
+    sha256 = "sha256-+EIv74dMm0zxZcCfa5wR6FJNJl5Xaes+/dCRQEBqFeo=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/applications/video/smplayer/default.nix b/nixpkgs/pkgs/applications/video/smplayer/default.nix
index 6d4e0f18d6fb..eecb3a6b9749 100644
--- a/nixpkgs/pkgs/applications/video/smplayer/default.nix
+++ b/nixpkgs/pkgs/applications/video/smplayer/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "smplayer";
-  version = "21.10.0";
+  version = "22.2.0";
 
   src = fetchFromGitHub {
     owner = "smplayer-dev";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-p6036c8KX3GCINmkjHZlDLgHhLKri+t2WNWzP4KsSI8=";
+    hash = "sha256-7DMvIqW3vzjVzJPyjbXuHHcf1T6EFcf/a/mVYqa3XS8=";
   };
 
   nativeBuildInputs = [
@@ -22,7 +22,9 @@ stdenv.mkDerivation rec {
     wrapQtAppsHook
   ];
 
-  buildInputs = [ qtscript ];
+  buildInputs = [
+    qtscript
+  ];
 
   dontUseQmakeConfigure = true;
 
diff --git a/nixpkgs/pkgs/applications/video/yuview/default.nix b/nixpkgs/pkgs/applications/video/yuview/default.nix
new file mode 100644
index 000000000000..440782a8b70a
--- /dev/null
+++ b/nixpkgs/pkgs/applications/video/yuview/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, qmake
+, wrapQtAppsHook
+}:
+
+stdenv.mkDerivation rec {
+  pname = "yuview";
+  version = "2.12.1";
+
+  src = fetchFromGitHub {
+    owner = "IENT";
+    repo = "YUView";
+    rev = "v${version}";
+    sha256 = "sha256-BQnlq6TBxGbwqn6lAZGBo4+2HeXdFYL33LKqKSXMvdY=";
+  };
+
+  nativeBuildInputs = [ qmake wrapQtAppsHook ];
+
+  patches = [ ./disable_version_check.patch ];
+
+  enableParallelBuilding = true;
+
+  meta = with lib; {
+    homepage = "https://ient.github.io/YUView";
+    description = "YUV Viewer and Analysis Tool";
+    longDescription = ''
+      YUView is a Qt based YUV player with an advanced analytic toolset for
+      Linux, Windows and Mac. At its core, YUView is a powerful YUV player that
+      can open and show almost any YUV format. With its simple interface it is
+      easy to navigate through sequences and inspect details and a side by side
+      and comparison view can help to spot differences between two sequences. A
+      sophisticated statistics renderer can overlay the video with supplemental
+      information. More features include playlists, support for visual tests and
+      presentations, support of compressed formats (through libde265 and
+      FFmpeg), support for raw RGB files as well as image files and image
+      sequences, and many more. Further information can be found in the YUV help
+      in the application itself or in our wiki.
+    '';
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ leixb ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/video/yuview/disable_version_check.patch b/nixpkgs/pkgs/applications/video/yuview/disable_version_check.patch
new file mode 100644
index 000000000000..c13cb9e9b5bd
--- /dev/null
+++ b/nixpkgs/pkgs/applications/video/yuview/disable_version_check.patch
@@ -0,0 +1,15 @@
+diff --git a/YUViewLib/src/common/Typedef.h b/YUViewLib/src/common/Typedef.h
+--- a/YUViewLib/src/common/Typedef.h
++++ b/YUViewLib/src/common/Typedef.h
+@@ -212,12 +212,7 @@ private:
+ #define YUVIEW_VERSION "Unknown"
+ #endif
+ 
+-#ifndef YUVIEW_HASH
+ #define VERSION_CHECK 0
+-#define YUVIEW_HASH 0
+-#else
+-#define VERSION_CHECK 1
+-#endif
+ 
+ #define MAX_RECENT_FILES 10
diff --git a/nixpkgs/pkgs/applications/virtualization/OVMF/default.nix b/nixpkgs/pkgs/applications/virtualization/OVMF/default.nix
index 7adcd328add7..843cebe7d6ba 100644
--- a/nixpkgs/pkgs/applications/virtualization/OVMF/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/OVMF/default.nix
@@ -22,7 +22,8 @@ let
 in
 
 edk2.mkDerivation projectDscPath {
-  name = "OVMF-${version}";
+  pname = "OVMF";
+  inherit version;
 
   outputs = [ "out" "fd" ];
 
diff --git a/nixpkgs/pkgs/applications/virtualization/containerd/1.4.nix b/nixpkgs/pkgs/applications/virtualization/containerd/1.4.nix
deleted file mode 100644
index 92c7ab0b2fd6..000000000000
--- a/nixpkgs/pkgs/applications/virtualization/containerd/1.4.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-{ lib
-, fetchFromGitHub
-, buildGoPackage
-, btrfs-progs
-, go-md2man
-, installShellFiles
-, util-linux
-, nixosTests
-}:
-
-buildGoPackage rec {
-  pname = "containerd";
-  version = "1.4.11";
-
-  src = fetchFromGitHub {
-    owner = "containerd";
-    repo = "containerd";
-    rev = "v${version}";
-    sha256 = "sha256-mUagr1/LqTCFvshWuiSMxsqdRqjzogt2tZ0uwR7ZVAs=";
-  };
-
-  goPackagePath = "github.com/containerd/containerd";
-  outputs = [ "out" "man" ];
-
-  nativeBuildInputs = [ go-md2man installShellFiles util-linux ];
-
-  buildInputs = [ btrfs-progs ];
-
-  buildPhase = ''
-    cd go/src/${goPackagePath}
-    patchShebangs .
-    make binaries man "VERSION=v${version}" "REVISION=${src.rev}"
-  '';
-
-  installPhase = ''
-    install -Dm555 bin/* -t $out/bin
-    installManPage man/*.[1-9]
-    installShellCompletion --bash contrib/autocomplete/ctr
-    installShellCompletion --zsh --name _ctr contrib/autocomplete/zsh_autocomplete
-  '';
-
-  passthru.tests = { inherit (nixosTests) docker; };
-
-  meta = with lib; {
-    homepage = "https://containerd.io/";
-    description = "A daemon to control runC";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/nixpkgs/pkgs/applications/virtualization/containerd/default.nix b/nixpkgs/pkgs/applications/virtualization/containerd/default.nix
index 281f1f246126..367f43deb809 100644
--- a/nixpkgs/pkgs/applications/virtualization/containerd/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/containerd/default.nix
@@ -10,13 +10,13 @@
 
 buildGoModule rec {
   pname = "containerd";
-  version = "1.6.1";
+  version = "1.6.2";
 
   src = fetchFromGitHub {
     owner = "containerd";
     repo = "containerd";
     rev = "v${version}";
-    sha256 = "sha256-NOFDUOypq/1ePM8rdK2cDnH1LsSZJ7eQOzDc5h4/PvY=";
+    sha256 = "sha256-l/9jOvZ4nn/wy+XPRoT1lojfGvPEXhPz2FJjLpZ/EE8=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/applications/virtualization/cri-o/default.nix b/nixpkgs/pkgs/applications/virtualization/cri-o/default.nix
index 87b91196f882..b6d238d599ee 100644
--- a/nixpkgs/pkgs/applications/virtualization/cri-o/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/cri-o/default.nix
@@ -15,13 +15,13 @@
 
 buildGoModule rec {
   pname = "cri-o";
-  version = "1.23.1";
+  version = "1.23.2";
 
   src = fetchFromGitHub {
     owner = "cri-o";
     repo = "cri-o";
     rev = "v${version}";
-    sha256 = "sha256-A59Bgt0u8jzpTijT5vcO8JREL7Elx1mWnwddAuRHn5c=";
+    sha256 = "sha256-sjeYWBcal6RtoUZd6orQ+237Fz80vQKx5vocFMq4l7U=";
   };
   vendorSha256 = null;
 
diff --git a/nixpkgs/pkgs/applications/virtualization/crosvm/Cargo.lock b/nixpkgs/pkgs/applications/virtualization/crosvm/Cargo.lock
new file mode 100644
index 000000000000..3746d87cf0af
--- /dev/null
+++ b/nixpkgs/pkgs/applications/virtualization/crosvm/Cargo.lock
@@ -0,0 +1,1491 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "aarch64"
+version = "0.1.0"
+dependencies = [
+ "arch",
+ "base",
+ "data_model",
+ "devices",
+ "hypervisor",
+ "kernel_cmdline",
+ "kvm",
+ "kvm_sys",
+ "libc",
+ "minijail",
+ "remain",
+ "resources",
+ "sync",
+ "thiserror",
+ "vm_control",
+ "vm_memory",
+]
+
+[[package]]
+name = "acpi_tables"
+version = "0.1.0"
+dependencies = [
+ "data_model",
+ "tempfile",
+]
+
+[[package]]
+name = "android_log-sys"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85965b6739a430150bdd138e2374a98af0c3ee0d030b3bb7fc3bddff58d0102e"
+
+[[package]]
+name = "anyhow"
+version = "1.0.56"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4361135be9122e0870de935d7c439aef945b9f9ddd4199a553b5270b49c82a27"
+
+[[package]]
+name = "arch"
+version = "0.1.0"
+dependencies = [
+ "acpi_tables",
+ "base",
+ "devices",
+ "gdbstub_arch",
+ "hypervisor",
+ "kernel_cmdline",
+ "libc",
+ "minijail",
+ "power_monitor",
+ "remain",
+ "resources",
+ "sync",
+ "thiserror",
+ "vm_control",
+ "vm_memory",
+]
+
+[[package]]
+name = "argh"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dbb41d85d92dfab96cb95ab023c265c5e4261bb956c0fb49ca06d90c570f1958"
+dependencies = [
+ "argh_derive",
+ "argh_shared",
+]
+
+[[package]]
+name = "argh_derive"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "be69f70ef5497dd6ab331a50bd95c6ac6b8f7f17a7967838332743fbd58dc3b5"
+dependencies = [
+ "argh_shared",
+ "heck",
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "argh_shared"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e6f8c380fa28aa1b36107cd97f0196474bb7241bb95a453c5c01a15ac74b2eac"
+
+[[package]]
+name = "assertions"
+version = "0.1.0"
+
+[[package]]
+name = "async-task"
+version = "4.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "30696a84d817107fc028e049980e09d5e140e8da8f1caeb17e8e950658a3cea9"
+
+[[package]]
+name = "async-trait"
+version = "0.1.52"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "061a7acccaa286c011ddc30970520b98fa40e00c9d644633fb26b5fc63a265e3"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "audio_streams"
+version = "0.1.0"
+dependencies = [
+ "async-trait",
+ "cros_async",
+ "remain",
+ "sync",
+ "thiserror",
+]
+
+[[package]]
+name = "autocfg"
+version = "0.1.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0dde43e75fd43e8a1bf86103336bc699aa8d17ad1be60c76c0bdfd4828e19b78"
+dependencies = [
+ "autocfg 1.1.0",
+]
+
+[[package]]
+name = "autocfg"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+
+[[package]]
+name = "base"
+version = "0.1.0"
+dependencies = [
+ "audio_streams",
+ "cros_async",
+ "data_model",
+ "libc",
+ "remain",
+ "serde",
+ "serde_json",
+ "smallvec",
+ "sync",
+ "sys_util",
+ "thiserror",
+]
+
+[[package]]
+name = "bit_field"
+version = "0.1.0"
+dependencies = [
+ "bit_field_derive",
+]
+
+[[package]]
+name = "bit_field_derive"
+version = "0.1.0"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "bitflags"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+[[package]]
+name = "cc"
+version = "1.0.73"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
+
+[[package]]
+name = "cfg-if"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "cloudabi"
+version = "0.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
+dependencies = [
+ "bitflags",
+]
+
+[[package]]
+name = "crc32fast"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+dependencies = [
+ "cfg-if 1.0.0",
+]
+
+[[package]]
+name = "cros_async"
+version = "0.1.0"
+dependencies = [
+ "async-task",
+ "async-trait",
+ "data_model",
+ "futures",
+ "intrusive-collections",
+ "io_uring",
+ "libc",
+ "once_cell",
+ "paste",
+ "pin-utils",
+ "remain",
+ "slab",
+ "sync",
+ "sys_util",
+ "thiserror",
+]
+
+[[package]]
+name = "cros_fuzz"
+version = "0.1.0"
+dependencies = [
+ "rand_core 0.4.2",
+]
+
+[[package]]
+name = "crosvm"
+version = "0.1.0"
+dependencies = [
+ "aarch64",
+ "acpi_tables",
+ "anyhow",
+ "arch",
+ "assertions",
+ "audio_streams",
+ "base",
+ "bit_field",
+ "crosvm_plugin",
+ "data_model",
+ "devices",
+ "disk",
+ "enumn",
+ "gdbstub",
+ "gdbstub_arch",
+ "hypervisor",
+ "kernel_cmdline",
+ "kernel_loader",
+ "kvm",
+ "kvm_sys",
+ "libc",
+ "libcras",
+ "minijail",
+ "net_util",
+ "p9",
+ "protobuf",
+ "protos",
+ "remain",
+ "resources",
+ "rutabaga_gfx",
+ "scudo",
+ "serde_json",
+ "sync",
+ "tempfile",
+ "thiserror",
+ "vhost",
+ "vm_control",
+ "vm_memory",
+ "x86_64",
+]
+
+[[package]]
+name = "crosvm-fuzz"
+version = "0.0.1"
+dependencies = [
+ "base",
+ "cros_fuzz",
+ "data_model",
+ "devices",
+ "disk",
+ "fuse",
+ "hypervisor",
+ "kernel_loader",
+ "libc",
+ "rand",
+ "tempfile",
+ "usb_util",
+ "vm_memory",
+]
+
+[[package]]
+name = "crosvm_control"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "libc",
+ "vm_control",
+]
+
+[[package]]
+name = "crosvm_plugin"
+version = "0.17.0"
+dependencies = [
+ "base",
+ "kvm",
+ "kvm_sys",
+ "libc",
+ "protobuf",
+ "protos",
+]
+
+[[package]]
+name = "data_model"
+version = "0.1.0"
+dependencies = [
+ "assertions",
+ "libc",
+ "remain",
+ "serde",
+ "thiserror",
+]
+
+[[package]]
+name = "dbus"
+version = "0.9.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "de0a745c25b32caa56b82a3950f5fec7893a960f4c10ca3b02060b0c38d8c2ce"
+dependencies = [
+ "libc",
+ "libdbus-sys",
+ "winapi",
+]
+
+[[package]]
+name = "devices"
+version = "0.1.0"
+dependencies = [
+ "acpi_tables",
+ "anyhow",
+ "argh",
+ "async-task",
+ "audio_streams",
+ "base",
+ "bit_field",
+ "cros_async",
+ "data_model",
+ "dbus",
+ "disk",
+ "enumn",
+ "fuse",
+ "futures",
+ "gpu_display",
+ "hypervisor",
+ "kvm_sys",
+ "libc",
+ "libcras",
+ "libvda",
+ "linux_input_sys",
+ "minijail",
+ "net_sys",
+ "net_util",
+ "once_cell",
+ "p9",
+ "power_monitor",
+ "protobuf",
+ "protos",
+ "remain",
+ "resources",
+ "rutabaga_gfx",
+ "serde",
+ "serde_json",
+ "smallvec",
+ "sync",
+ "sys_util",
+ "system_api",
+ "tempfile",
+ "thiserror",
+ "tpm2",
+ "usb_util",
+ "vfio_sys",
+ "vhost",
+ "virtio_sys",
+ "vm_control",
+ "vm_memory",
+ "vmm_vhost",
+]
+
+[[package]]
+name = "disk"
+version = "0.1.0"
+dependencies = [
+ "async-trait",
+ "base",
+ "crc32fast",
+ "cros_async",
+ "data_model",
+ "futures",
+ "libc",
+ "protobuf",
+ "protos",
+ "remain",
+ "tempfile",
+ "thiserror",
+ "uuid",
+ "vm_memory",
+]
+
+[[package]]
+name = "downcast-rs"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"
+
+[[package]]
+name = "either"
+version = "1.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
+
+[[package]]
+name = "enumn"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4e58b112d5099aa0857c5d05f0eacab86406dd8c0f85fe5d320a13256d29ecf4"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "fastrand"
+version = "1.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c3fcf0cee53519c866c09b5de1f6c56ff9d647101f81c1964fa632e148896cdf"
+dependencies = [
+ "instant",
+]
+
+[[package]]
+name = "fuchsia-cprng"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
+
+[[package]]
+name = "fuse"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "bitflags",
+ "data_model",
+ "enumn",
+ "libc",
+ "remain",
+ "thiserror",
+]
+
+[[package]]
+name = "futures"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f73fe65f54d1e12b726f517d3e2135ca3125a437b6d998caf1962961f7172d9e"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "futures-sink",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
+name = "futures-channel"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010"
+dependencies = [
+ "futures-core",
+ "futures-sink",
+]
+
+[[package]]
+name = "futures-core"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3"
+
+[[package]]
+name = "futures-io"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b"
+
+[[package]]
+name = "futures-macro"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "futures-sink"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868"
+
+[[package]]
+name = "futures-task"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a"
+
+[[package]]
+name = "futures-util"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "futures-macro",
+ "futures-sink",
+ "futures-task",
+ "memchr",
+ "pin-project-lite",
+ "pin-utils",
+ "slab",
+]
+
+[[package]]
+name = "gdbstub"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7e135587d3f6eee6fa02c4ba174270c2337424e6d852c156942c0840b3c0f5cc"
+dependencies = [
+ "cfg-if 0.1.10",
+ "log",
+ "managed",
+ "num-traits",
+ "paste",
+]
+
+[[package]]
+name = "gdbstub_arch"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e358b9c0e1468eae66099062e47bb502849308b987b74b5e72f1936397c33c16"
+dependencies = [
+ "gdbstub",
+ "num-traits",
+]
+
+[[package]]
+name = "getrandom"
+version = "0.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d39cd93900197114fa1fcb7ae84ca742095eed9442088988ae74fa744e930e77"
+dependencies = [
+ "cfg-if 1.0.0",
+ "libc",
+ "wasi",
+]
+
+[[package]]
+name = "gpu_display"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "cc",
+ "data_model",
+ "libc",
+ "linux_input_sys",
+ "pkg-config",
+ "remain",
+ "thiserror",
+]
+
+[[package]]
+name = "heck"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
+dependencies = [
+ "unicode-segmentation",
+]
+
+[[package]]
+name = "hypervisor"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "bit_field",
+ "data_model",
+ "downcast-rs",
+ "enumn",
+ "kvm",
+ "kvm_sys",
+ "libc",
+ "serde",
+ "sync",
+ "vm_memory",
+]
+
+[[package]]
+name = "instant"
+version = "0.1.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
+dependencies = [
+ "cfg-if 1.0.0",
+]
+
+[[package]]
+name = "integration_tests"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "arch",
+ "base",
+ "crosvm",
+ "libc",
+ "tempfile",
+]
+
+[[package]]
+name = "intrusive-collections"
+version = "0.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fb484b70a4ebad7f571bf84e9cd06b5bfb6a7e4db0c36e13dd1570c6b449c10d"
+dependencies = [
+ "memoffset",
+]
+
+[[package]]
+name = "io_uring"
+version = "0.1.0"
+dependencies = [
+ "data_model",
+ "libc",
+ "remain",
+ "sync",
+ "sys_util",
+ "thiserror",
+]
+
+[[package]]
+name = "itoa"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35"
+
+[[package]]
+name = "kernel_cmdline"
+version = "0.1.0"
+dependencies = [
+ "libc",
+ "remain",
+ "thiserror",
+]
+
+[[package]]
+name = "kernel_loader"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "data_model",
+ "libc",
+ "remain",
+ "tempfile",
+ "thiserror",
+ "vm_memory",
+]
+
+[[package]]
+name = "kvm"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "data_model",
+ "kvm_sys",
+ "libc",
+ "sync",
+ "vm_memory",
+]
+
+[[package]]
+name = "kvm_sys"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "data_model",
+ "libc",
+]
+
+[[package]]
+name = "lazy_static"
+version = "1.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+[[package]]
+name = "libc"
+version = "0.2.120"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad5c14e80759d0939d013e6ca49930e59fc53dd8e5009132f76240c179380c09"
+
+[[package]]
+name = "libcras"
+version = "0.1.0"
+
+[[package]]
+name = "libdbus-sys"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c185b5b7ad900923ef3a8ff594083d4d9b5aea80bb4f32b8342363138c0d456b"
+dependencies = [
+ "pkg-config",
+]
+
+[[package]]
+name = "libvda"
+version = "0.1.0"
+dependencies = [
+ "enumn",
+ "libc",
+ "pkg-config",
+]
+
+[[package]]
+name = "linux_input_sys"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "data_model",
+ "libc",
+]
+
+[[package]]
+name = "log"
+version = "0.4.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
+dependencies = [
+ "cfg-if 1.0.0",
+]
+
+[[package]]
+name = "managed"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0ca88d725a0a943b096803bd34e73a4437208b6077654cc4ecb2947a5f91618d"
+
+[[package]]
+name = "memchr"
+version = "2.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
+
+[[package]]
+name = "memoffset"
+version = "0.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa"
+dependencies = [
+ "autocfg 1.1.0",
+]
+
+[[package]]
+name = "minijail"
+version = "0.2.3"
+dependencies = [
+ "libc",
+ "minijail-sys",
+]
+
+[[package]]
+name = "minijail-sys"
+version = "0.0.13"
+dependencies = [
+ "libc",
+ "pkg-config",
+ "which",
+]
+
+[[package]]
+name = "net_sys"
+version = "0.1.0"
+dependencies = [
+ "base",
+]
+
+[[package]]
+name = "net_util"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "cros_async",
+ "data_model",
+ "libc",
+ "net_sys",
+ "remain",
+ "thiserror",
+]
+
+[[package]]
+name = "num-traits"
+version = "0.2.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
+dependencies = [
+ "autocfg 1.1.0",
+]
+
+[[package]]
+name = "once_cell"
+version = "1.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87f3e037eac156d1775da914196f0f37741a274155e34a0b7e427c35d2a2ecb9"
+
+[[package]]
+name = "p9"
+version = "0.1.0"
+dependencies = [
+ "libc",
+ "sys_util",
+ "wire_format_derive",
+]
+
+[[package]]
+name = "paste"
+version = "1.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0744126afe1a6dd7f394cb50a716dbe086cb06e255e53d8d0185d82828358fb5"
+
+[[package]]
+name = "pin-project-lite"
+version = "0.2.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e280fbe77cc62c91527259e9442153f4688736748d24660126286329742b4c6c"
+
+[[package]]
+name = "pin-utils"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+
+[[package]]
+name = "pkg-config"
+version = "0.3.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "58893f751c9b0412871a09abd62ecd2a00298c6c83befa223ef98c52aef40cbe"
+
+[[package]]
+name = "poll_token_derive"
+version = "0.1.0"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "power_monitor"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "dbus",
+ "protobuf",
+ "protoc-rust",
+ "remain",
+ "thiserror",
+]
+
+[[package]]
+name = "proc-macro2"
+version = "1.0.36"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029"
+dependencies = [
+ "unicode-xid",
+]
+
+[[package]]
+name = "protobuf"
+version = "2.27.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cf7e6d18738ecd0902d30d1ad232c9125985a3422929b16c65517b38adc14f96"
+
+[[package]]
+name = "protobuf-codegen"
+version = "2.27.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aec1632b7c8f2e620343439a7dfd1f3c47b18906c4be58982079911482b5d707"
+dependencies = [
+ "protobuf",
+]
+
+[[package]]
+name = "protoc"
+version = "2.27.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c2ef1dc036942fac2470fdb8a911f125404ee9129e9e807f3d12d8589001a38f"
+dependencies = [
+ "log",
+ "which",
+]
+
+[[package]]
+name = "protoc-rust"
+version = "2.27.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a9e315121c8e7e21396e940a3d27f92280a6d28e3931213bf6cbfea76c5cc94"
+dependencies = [
+ "protobuf",
+ "protobuf-codegen",
+ "protoc",
+ "tempfile",
+]
+
+[[package]]
+name = "protos"
+version = "0.1.0"
+dependencies = [
+ "kvm_sys",
+ "protobuf",
+ "protoc-rust",
+]
+
+[[package]]
+name = "qcow_utils"
+version = "0.1.0"
+dependencies = [
+ "argh",
+ "base",
+ "disk",
+ "libc",
+]
+
+[[package]]
+name = "quote"
+version = "1.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "864d3e96a899863136fc6e99f3d7cae289dafe43bf2c5ac19b70df7210c0a145"
+dependencies = [
+ "proc-macro2",
+]
+
+[[package]]
+name = "rand"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
+dependencies = [
+ "autocfg 0.1.8",
+ "libc",
+ "rand_chacha",
+ "rand_core 0.4.2",
+ "rand_hc",
+ "rand_isaac",
+ "rand_jitter",
+ "rand_os",
+ "rand_pcg",
+ "rand_xorshift",
+ "winapi",
+]
+
+[[package]]
+name = "rand_chacha"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
+dependencies = [
+ "autocfg 0.1.8",
+ "rand_core 0.3.1",
+]
+
+[[package]]
+name = "rand_core"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
+dependencies = [
+ "rand_core 0.4.2",
+]
+
+[[package]]
+name = "rand_core"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
+
+[[package]]
+name = "rand_hc"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
+dependencies = [
+ "rand_core 0.3.1",
+]
+
+[[package]]
+name = "rand_isaac"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
+dependencies = [
+ "rand_core 0.3.1",
+]
+
+[[package]]
+name = "rand_jitter"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
+dependencies = [
+ "libc",
+ "rand_core 0.4.2",
+ "winapi",
+]
+
+[[package]]
+name = "rand_os"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
+dependencies = [
+ "cloudabi",
+ "fuchsia-cprng",
+ "libc",
+ "rand_core 0.4.2",
+ "rdrand",
+ "winapi",
+]
+
+[[package]]
+name = "rand_pcg"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
+dependencies = [
+ "autocfg 0.1.8",
+ "rand_core 0.4.2",
+]
+
+[[package]]
+name = "rand_xorshift"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
+dependencies = [
+ "rand_core 0.3.1",
+]
+
+[[package]]
+name = "rdrand"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
+dependencies = [
+ "rand_core 0.3.1",
+]
+
+[[package]]
+name = "redox_syscall"
+version = "0.2.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8380fe0152551244f0747b1bf41737e0f8a74f97a14ccefd1148187271634f3c"
+dependencies = [
+ "bitflags",
+]
+
+[[package]]
+name = "remain"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "70ba1e78fa68412cb93ef642fd4d20b9a941be49ee9333875ebaf13112673ea7"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "remove_dir_all"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "resources"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "libc",
+ "remain",
+ "serde",
+ "thiserror",
+]
+
+[[package]]
+name = "rutabaga_gfx"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "base",
+ "data_model",
+ "libc",
+ "pkg-config",
+ "remain",
+ "sync",
+ "thiserror",
+]
+
+[[package]]
+name = "rutabaga_gfx_ffi"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "data_model",
+ "libc",
+ "rutabaga_gfx",
+]
+
+[[package]]
+name = "ryu"
+version = "1.0.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f"
+
+[[package]]
+name = "scudo"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a043122e575636c0e47121917446b4f40803fc6defd8797369e7d2d47086d8e3"
+dependencies = [
+ "libc",
+ "scudo-sys",
+]
+
+[[package]]
+name = "scudo-sys"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7aedac72a22df5e73d23abf6b26a9b124a3e10f0e5cc74b9aa8121c7e14cf106"
+dependencies = [
+ "cc",
+ "libc",
+]
+
+[[package]]
+name = "serde"
+version = "1.0.136"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789"
+dependencies = [
+ "serde_derive",
+]
+
+[[package]]
+name = "serde_derive"
+version = "1.0.136"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "serde_json"
+version = "1.0.79"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e8d9fa5c3b304765ce1fd9c4c8a3de2c8db365a5b91be52f186efc675681d95"
+dependencies = [
+ "itoa",
+ "ryu",
+ "serde",
+]
+
+[[package]]
+name = "slab"
+version = "0.4.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5"
+
+[[package]]
+name = "smallvec"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83"
+
+[[package]]
+name = "syn"
+version = "1.0.88"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ebd69e719f31e88618baa1eaa6ee2de5c9a1c004f1e9ecdb58e8352a13f20a01"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-xid",
+]
+
+[[package]]
+name = "sync"
+version = "0.1.0"
+
+[[package]]
+name = "sys_util"
+version = "0.1.0"
+dependencies = [
+ "android_log-sys",
+ "data_model",
+ "libc",
+ "poll_token_derive",
+ "remain",
+ "serde",
+ "serde_json",
+ "sync",
+ "tempfile",
+ "thiserror",
+]
+
+[[package]]
+name = "system_api"
+version = "0.1.0"
+
+[[package]]
+name = "tempfile"
+version = "3.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4"
+dependencies = [
+ "cfg-if 1.0.0",
+ "fastrand",
+ "libc",
+ "redox_syscall",
+ "remove_dir_all",
+ "winapi",
+]
+
+[[package]]
+name = "thiserror"
+version = "1.0.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "854babe52e4df1653706b98fcfc05843010039b406875930a70e4d9644e5c417"
+dependencies = [
+ "thiserror-impl",
+]
+
+[[package]]
+name = "thiserror-impl"
+version = "1.0.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aa32fd3f627f367fe16f893e2597ae3c05020f8bba2666a4e6ea73d377e5714b"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "tpm2"
+version = "0.1.0"
+dependencies = [
+ "tpm2-sys",
+]
+
+[[package]]
+name = "tpm2-sys"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "pkg-config",
+]
+
+[[package]]
+name = "unicode-segmentation"
+version = "1.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99"
+
+[[package]]
+name = "unicode-xid"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
+
+[[package]]
+name = "usb_sys"
+version = "0.1.0"
+dependencies = [
+ "base",
+]
+
+[[package]]
+name = "usb_util"
+version = "0.1.0"
+dependencies = [
+ "assertions",
+ "base",
+ "data_model",
+ "libc",
+ "remain",
+ "thiserror",
+ "usb_sys",
+]
+
+[[package]]
+name = "uuid"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7"
+dependencies = [
+ "getrandom",
+]
+
+[[package]]
+name = "vfio_sys"
+version = "0.1.0"
+dependencies = [
+ "base",
+]
+
+[[package]]
+name = "vhost"
+version = "0.1.0"
+dependencies = [
+ "assertions",
+ "base",
+ "libc",
+ "net_util",
+ "remain",
+ "thiserror",
+ "virtio_sys",
+ "vm_memory",
+]
+
+[[package]]
+name = "virtio_sys"
+version = "0.1.0"
+dependencies = [
+ "base",
+]
+
+[[package]]
+name = "vm_control"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "data_model",
+ "gdbstub_arch",
+ "hypervisor",
+ "libc",
+ "remain",
+ "resources",
+ "rutabaga_gfx",
+ "serde",
+ "serde_json",
+ "sync",
+ "thiserror",
+ "vm_memory",
+]
+
+[[package]]
+name = "vm_memory"
+version = "0.1.0"
+dependencies = [
+ "base",
+ "bitflags",
+ "cros_async",
+ "data_model",
+ "libc",
+ "remain",
+ "thiserror",
+]
+
+[[package]]
+name = "vmm_vhost"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "bitflags",
+ "data_model",
+ "libc",
+ "remain",
+ "sys_util",
+ "tempfile",
+ "thiserror",
+]
+
+[[package]]
+name = "wasi"
+version = "0.10.2+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
+
+[[package]]
+name = "which"
+version = "4.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2a5a7e487e921cf220206864a94a89b6c6905bfc19f1057fa26a4cb360e5c1d2"
+dependencies = [
+ "either",
+ "lazy_static",
+ "libc",
+]
+
+[[package]]
+name = "winapi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+dependencies = [
+ "winapi-i686-pc-windows-gnu",
+ "winapi-x86_64-pc-windows-gnu",
+]
+
+[[package]]
+name = "winapi-i686-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+[[package]]
+name = "winapi-x86_64-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
+[[package]]
+name = "wire_format_derive"
+version = "0.1.0"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "x86_64"
+version = "0.1.0"
+dependencies = [
+ "acpi_tables",
+ "arch",
+ "assertions",
+ "base",
+ "data_model",
+ "devices",
+ "gdbstub_arch",
+ "hypervisor",
+ "kernel_cmdline",
+ "kernel_loader",
+ "libc",
+ "minijail",
+ "remain",
+ "resources",
+ "sync",
+ "thiserror",
+ "vm_control",
+ "vm_memory",
+]
diff --git a/nixpkgs/pkgs/applications/virtualization/crosvm/default.nix b/nixpkgs/pkgs/applications/virtualization/crosvm/default.nix
index 697741e21f14..2afbe123b55b 100644
--- a/nixpkgs/pkgs/applications/virtualization/crosvm/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/crosvm/default.nix
@@ -1,5 +1,6 @@
-{ stdenv, lib, rustPlatform, fetchgit, runCommand, symlinkJoin
-, pkg-config, minijail, dtc, libusb1, libcap, linux
+{ stdenv, lib, rustPlatform, fetchgit
+, pkg-config, wayland-scanner, libcap, minijail, wayland, wayland-protocols
+, linux
 }:
 
 let
@@ -11,55 +12,26 @@ let
     else if isx86_64 then "x86_64"
     else throw "no seccomp policy files available for host platform";
 
-  crosvmSrc = fetchgit {
-    inherit (upstreamInfo.components."chromiumos/platform/crosvm")
-      url rev sha256 fetchSubmodules;
-  };
-
-  adhdSrc = fetchgit {
-    inherit (upstreamInfo.components."chromiumos/third_party/adhd")
-      url rev sha256 fetchSubmodules;
-  };
-
 in
 
   rustPlatform.buildRustPackage rec {
     pname = "crosvm";
     inherit (upstreamInfo) version;
 
-    unpackPhase = ''
-      runHook preUnpack
-
-      mkdir -p chromiumos/platform chromiumos/third_party
-
-      pushd chromiumos/platform
-      unpackFile ${crosvmSrc}
-      mv ${crosvmSrc.name} crosvm
-      popd
-
-      pushd chromiumos/third_party
-      unpackFile ${adhdSrc}
-      mv ${adhdSrc.name} adhd
-      popd
-
-      chmod -R u+w -- "$sourceRoot"
-
-      runHook postUnpack
-    '';
-
-    sourceRoot = "chromiumos/platform/crosvm";
+    src = fetchgit (builtins.removeAttrs upstreamInfo.src [ "date" "path" ]);
 
     patches = [
       ./default-seccomp-policy-dir.diff
     ];
 
-    cargoSha256 = "0aax0slg59afbyn3ygswwap2anv11k6sr9hfpysb4f8rvymvx7hd";
+    cargoLock.lockFile = ./Cargo.lock;
 
-    nativeBuildInputs = [ pkg-config ];
+    nativeBuildInputs = [ pkg-config wayland-scanner ];
 
-    buildInputs = [ dtc libcap libusb1 minijail ];
+    buildInputs = [ libcap minijail wayland wayland-protocols ];
 
     postPatch = ''
+      cp ${./Cargo.lock} Cargo.lock
       sed -i "s|/usr/share/policy/crosvm/|$out/share/policy/|g" \
              seccomp/*/*.policy
     '';
@@ -77,11 +49,7 @@ in
       lib.optionalString (stdenv.buildPlatform == stdenv.hostPlatform)
         "${linux}/${stdenv.hostPlatform.linux-kernel.target}";
 
-    passthru = {
-      inherit adhdSrc;
-      src = crosvmSrc;
-      updateScript = ./update.py;
-    };
+    passthru.updateScript = ./update.py;
 
     meta = with lib; {
       description = "A secure virtual machine monitor for KVM";
diff --git a/nixpkgs/pkgs/applications/virtualization/crosvm/update.py b/nixpkgs/pkgs/applications/virtualization/crosvm/update.py
index 29e68b9f5790..6e36e524b78d 100755
--- a/nixpkgs/pkgs/applications/virtualization/crosvm/update.py
+++ b/nixpkgs/pkgs/applications/virtualization/crosvm/update.py
@@ -12,9 +12,7 @@ from lxml import etree
 from lxml.etree import HTMLParser
 from urllib.request import urlopen
 
-# ChromiumOS components required to build crosvm.
-components = ['chromiumos/platform/crosvm', 'chromiumos/third_party/adhd']
-
+git_path = 'chromiumos/platform/crosvm'
 git_root = 'https://chromium.googlesource.com/'
 manifest_versions = f'{git_root}chromiumos/manifest-versions'
 buildspecs_url = f'{manifest_versions}/+/refs/heads/master/full/buildspecs/'
@@ -54,32 +52,27 @@ with urlopen(f'{buildspecs_url}{chrome_major_version}/?format=TEXT') as resp:
     buildspecs.sort(reverse=True)
     buildspec = splitext(buildspecs[0])[0]
 
-revisions = {}
-
-# Read the buildspec, and extract the git revisions for each component.
+# Read the buildspec, and extract the git revision.
 with urlopen(f'{buildspecs_url}{chrome_major_version}/{buildspec}.xml?format=TEXT') as resp:
     xml = base64.decodebytes(resp.read())
     root = etree.fromstring(xml)
-    for project in root.findall('project'):
-        revisions[project.get('name')] = project.get('revision')
+    revision = root.find(f'./project[@name="{git_path}"]').get('revision')
 
 # Initialize the data that will be output from this script.  Leave the
 # rc number in buildspec so nobody else is subject to the same level
 # of confusion I have been.
-data = {'version': f'{chrome_major_version}.{buildspec}', 'components': {}}
-
-# Fill in the 'components' dictionary with the output from
-# nix-prefetch-git, which can be passed straight to fetchGit when
-# imported by Nix.
-for component in components:
-    argv = ['nix-prefetch-git',
-            '--url', git_root + component,
-            '--rev', revisions[component]]
+data = {'version': f'{chrome_major_version}.{buildspec}'}
 
-    output = subprocess.check_output(argv)
-    data['components'][component] = json.loads(output.decode('utf-8'))
+# Fill in the 'src' key with the output from nix-prefetch-git, which
+# can be passed straight to fetchGit when imported by Nix.
+argv = ['nix-prefetch-git',
+        '--fetch-submodules',
+        '--url', git_root + git_path,
+        '--rev', revision]
+output = subprocess.check_output(argv)
+data['src'] = json.loads(output.decode('utf-8'))
 
-# Find the path to crosvm's default.nix, so the srcs data can be
+# Find the path to crosvm's default.nix, so the src data can be
 # written into the same directory.
 argv = ['nix-instantiate', '--eval', '--json', '-A', 'crosvm.meta.position']
 position = json.loads(subprocess.check_output(argv).decode('utf-8'))
diff --git a/nixpkgs/pkgs/applications/virtualization/crosvm/upstream-info.json b/nixpkgs/pkgs/applications/virtualization/crosvm/upstream-info.json
index bb9cc8841b4a..437e8f418699 100644
--- a/nixpkgs/pkgs/applications/virtualization/crosvm/upstream-info.json
+++ b/nixpkgs/pkgs/applications/virtualization/crosvm/upstream-info.json
@@ -1,23 +1,14 @@
 {
-  "version": "81.12871.0.0-rc1",
-  "components": {
-    "chromiumos/platform/crosvm": {
-      "url": "https://chromium.googlesource.com/chromiumos/platform/crosvm",
-      "rev": "8b8c01e1ad31718932491e4aee63f56109a138e2",
-      "date": "2020-01-25T02:28:10+00:00",
-      "sha256": "1qmf1k06pwynh15c3nr9m6v90z2pkk930xniwvlvbvnazrk4rllg",
-      "fetchSubmodules": false,
-      "deepClone": false,
-      "leaveDotGit": false
-    },
-    "chromiumos/third_party/adhd": {
-      "url": "https://chromium.googlesource.com/chromiumos/third_party/adhd",
-      "rev": "f361d5b02623274723bff251dafa1e2a2887b013",
-      "date": "2020-01-23T18:37:46+00:00",
-      "sha256": "1p8iwjwgmcgmzri03ik2jaid8l0ch0bzn6z9z64dix1hlrvrlliw",
-      "fetchSubmodules": false,
-      "deepClone": false,
-      "leaveDotGit": false
-    }
+  "version": "99.14468.0.0-rc1",
+  "src": {
+    "url": "https://chromium.googlesource.com/chromiumos/platform/crosvm",
+    "rev": "410ea3a1980bfe96968a7dfb7a7d203d43b186b2",
+    "date": "2022-01-11T00:01:17-08:00",
+    "path": "/nix/store/y2rpzh1any8c4nwnwkvir7241kbcj8fn-crosvm-410ea3a",
+    "sha256": "1bgwndh2f60ka1f8c8yqnqqkra510ai9miyfvvm0b3dnsdpy77kd",
+    "fetchLFS": false,
+    "fetchSubmodules": true,
+    "deepClone": false,
+    "leaveDotGit": false
   }
 }
diff --git a/nixpkgs/pkgs/applications/virtualization/crun/default.nix b/nixpkgs/pkgs/applications/virtualization/crun/default.nix
index 07e0cb6c533d..5855eee63792 100644
--- a/nixpkgs/pkgs/applications/virtualization/crun/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/crun/default.nix
@@ -38,13 +38,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "crun";
-  version = "1.4.3";
+  version = "1.4.4";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = pname;
     rev = version;
-    sha256 = "sha256-5q8HirGOPsbaJ7JoLa4DRYkZX3kucWOZ633nzx4zVhg=";
+    sha256 = "sha256-ITUj905ZSdCH0mcw8tubyVKqI6p/oNcC4OW7/NbkR5o=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/applications/virtualization/distrobox/default.nix b/nixpkgs/pkgs/applications/virtualization/distrobox/default.nix
index 8e9ea890a9b6..e67509c54f85 100644
--- a/nixpkgs/pkgs/applications/virtualization/distrobox/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/distrobox/default.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "distrobox";
-  version = "1.2.13";
+  version = "1.2.14";
 
   src = fetchFromGitHub {
     owner = "89luca89";
     repo = pname;
     rev = version;
-    sha256 = "047mrhsfi88mgwylnnyxg6xa7hjjrajn2pf7vfmb6161myqybvfy";
+    sha256 = "sha256-gHKyuIL4K/SLBJw8xNuPdNifDcHI91AFTiHaiv38gus=";
   };
 
   dontConfigure = true;
diff --git a/nixpkgs/pkgs/applications/virtualization/docker-slim/default.nix b/nixpkgs/pkgs/applications/virtualization/docker-slim/default.nix
index 3bc0f225de6e..a7261dac6d1f 100644
--- a/nixpkgs/pkgs/applications/virtualization/docker-slim/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/docker-slim/default.nix
@@ -6,7 +6,7 @@
 
 buildGoPackage rec {
   pname = "docker-slim";
-  version = "1.37.4";
+  version = "1.37.5";
 
   goPackagePath = "github.com/docker-slim/docker-slim";
 
@@ -14,7 +14,7 @@ buildGoPackage rec {
     owner = "docker-slim";
     repo = "docker-slim";
     rev = version;
-    sha256 = "sha256-iz1V+wcrJf0grOe81kwbXPBqnvXpHnh7IMDdugaUOH0=";
+    sha256 = "sha256-MBs0ybBXsanNFt6R7+ZYvtCh7iHE3FtWXE9uy9tbrE4=";
   };
 
   subPackages = [ "cmd/docker-slim" "cmd/docker-slim-sensor" ];
diff --git a/nixpkgs/pkgs/applications/virtualization/docker/buildx.nix b/nixpkgs/pkgs/applications/virtualization/docker/buildx.nix
index 440d094b4301..9b440963f4ae 100644
--- a/nixpkgs/pkgs/applications/virtualization/docker/buildx.nix
+++ b/nixpkgs/pkgs/applications/virtualization/docker/buildx.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "docker-buildx";
-  version = "0.8.0";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     owner = "docker";
     repo = "buildx";
     rev = "v${version}";
-    sha256 = "sha256-PSqVe4m2na6BjNxIKKZG1ja6zEzwI2AwgJlaMfaW2EM=";
+    sha256 = "sha256-NJNFjzbiBcmXcBF1k0qybv5LnkaQ+1ehSfF18CC85JY=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/applications/virtualization/docker/compose.nix b/nixpkgs/pkgs/applications/virtualization/docker/compose.nix
index e2a3f1e1077d..59a9a7606ef1 100644
--- a/nixpkgs/pkgs/applications/virtualization/docker/compose.nix
+++ b/nixpkgs/pkgs/applications/virtualization/docker/compose.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "docker-compose";
-  version = "2.3.3";
+  version = "2.3.4";
 
   src = fetchFromGitHub {
     owner = "docker";
     repo = "compose";
     rev = "v${version}";
-    sha256 = "sha256-PFR7EcRkqn/d6gYlMNN36nRIslYEN0JFSbFU9niGc+Y=";
+    sha256 = "sha256-ZFnrfGM2LUZZC8IPPCh3GS95jz7NGraOlr3wQaw5K0k=";
   };
 
-  vendorSha256 = "sha256-L6PNKK1ID7ZVX/4sG72wn9ZjWlx0lsNuiBc/EtCN03E=";
+  vendorSha256 = "sha256-Y2rE5/XLmQLqBA8xiCd9v30gTaO9qbiBFa4jKucKU6M=";
 
   ldflags = [ "-X github.com/docker/compose/v2/internal.Version=${version}" "-s" "-w" ];
 
diff --git a/nixpkgs/pkgs/applications/virtualization/docker/default.nix b/nixpkgs/pkgs/applications/virtualization/docker/default.nix
index 462ebb556f1d..ef9050f47d96 100644
--- a/nixpkgs/pkgs/applications/virtualization/docker/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/docker/default.nix
@@ -10,9 +10,9 @@ rec {
       , containerdRev, containerdSha256
       , tiniRev, tiniSha256, buildxSupport ? true, composeSupport ? true
       # package dependencies
-      , stdenv, fetchFromGitHub, buildGoPackage
+      , stdenv, fetchFromGitHub, fetchpatch, buildGoPackage
       , makeWrapper, installShellFiles, pkg-config, glibc
-      , go-md2man, go, containerd_1_4, runc, docker-proxy, tini, libtool
+      , go-md2man, go, containerd, runc, docker-proxy, tini, libtool
       , sqlite, iproute2, lvm2, systemd, docker-buildx, docker-compose_2
       , btrfs-progs, iptables, e2fsprogs, xz, util-linux, xfsprogs, git
       , procps, libseccomp, rootlesskit, slirp4netns, fuse-overlayfs
@@ -33,7 +33,7 @@ rec {
       patches = [];
     });
 
-    docker-containerd = containerd_1_4.overrideAttrs (oldAttrs: {
+    docker-containerd = containerd.overrideAttrs (oldAttrs: {
       name = "docker-containerd-${version}";
       inherit version;
       src = fetchFromGitHub {
@@ -79,6 +79,16 @@ rec {
 
       extraUserPath = optionals (stdenv.isLinux && !clientOnly) (makeBinPath [ rootlesskit slirp4netns fuse-overlayfs ]);
 
+      patches = [
+        # This patch incorporates code from a PR fixing using buildkit with the ZFS graph driver.
+        # It could be removed when a version incorporating this patch is released.
+        (fetchpatch {
+          name = "buildkit-zfs.patch";
+          url = "https://github.com/moby/moby/pull/43136.patch";
+          sha256 = "1WZfpVnnqFwLMYqaHLploOodls0gHF8OCp7MrM26iX8=";
+        })
+      ];
+
       postPatch = ''
         patchShebangs hack/make.sh hack/make/
       '';
@@ -233,20 +243,20 @@ rec {
   # Get revisions from
   # https://github.com/moby/moby/tree/${version}/hack/dockerfile/install/*
   docker_20_10 = callPackage dockerGen rec {
-    version = "20.10.12";
+    version = "20.10.14";
     rev = "v${version}";
-    sha256 = "sha256-nU6grb2lSW7BY7w9aAXwVbGp9TyO2ZxnJaxAi0wbk/c=";
+    sha256 = "sha256-eDwgqFx4io++SMOjhxMxVzqzcOgOnv6Xe/qmmPCvZts=";
     moby-src = fetchFromGitHub {
       owner = "moby";
       repo = "moby";
       rev = "v${version}";
-      sha256 = "sha256-qizzK1qJNRGFisahE3iAzZTNW/HmledlMNxcJCMQSJ4=";
+      sha256 = "sha256-I5oxpFLH789I2Sb29OXDaM4fCbQT/KvPq0DYcAVp0aI=";
     };
-    runcRev = "v1.0.2";
-    runcSha256 = "1bpckghjah0rczciw1a1ab8z718lb2d3k4mjm4zb45lpm3njmrcp";
-    containerdRev = "v1.4.12";
-    containerdSha256 = "sha256-g30kshXyGVew5tVaXFAOQUOYvvo0JBqIj1YaC5nTiS8=";
-    tiniRev = "v0.19.0"; # v0.19.0
-    tiniSha256 = "1h20i3wwlbd8x4jr2gz68hgklh0lb0jj7y5xk1wvr8y58fip1rdn";
+    runcRev = "v1.0.3";
+    runcSha256 = "sha256-Tl/JKbIpao+FCjngPzaVkxse50zo3XQ9Mg/AdkblMcI=";
+    containerdRev = "v1.5.11";
+    containerdSha256 = "sha256-YzFtv6DIjImSK0SywxhZrEeEmCnHTceAi3pfwnPubKg=";
+    tiniRev = "v0.19.0";
+    tiniSha256 = "sha256-ZDKu/8yE5G0RYFJdhgmCdN3obJNyRWv6K/Gd17zc1sI=";
   };
 }
diff --git a/nixpkgs/pkgs/applications/virtualization/docker/gc.nix b/nixpkgs/pkgs/applications/virtualization/docker/gc.nix
index 52ca54501d75..0736516ee7d2 100644
--- a/nixpkgs/pkgs/applications/virtualization/docker/gc.nix
+++ b/nixpkgs/pkgs/applications/virtualization/docker/gc.nix
@@ -3,13 +3,13 @@
 with lib;
 
 stdenv.mkDerivation rec {
-  name = "docker-gc-${rev}";
-  rev = "b0cc52aa3da2e2ac0080794e0be6e674b1f063fc";
+  pname = "docker-gc";
+  version = "unstable-2015-10-5";
 
   src = fetchFromGitHub {
-    inherit rev;
     owner = "spotify";
     repo = "docker-gc";
+    rev = "b0cc52aa3da2e2ac0080794e0be6e674b1f063fc";
     sha256 = "07wf9yn0f771xkm3x12946x5rp83hxjkd70xgfgy35zvj27wskzm";
   };
 
diff --git a/nixpkgs/pkgs/applications/virtualization/docker/proxy.nix b/nixpkgs/pkgs/applications/virtualization/docker/proxy.nix
index a247e2cecfaf..6038a129e2a1 100644
--- a/nixpkgs/pkgs/applications/virtualization/docker/proxy.nix
+++ b/nixpkgs/pkgs/applications/virtualization/docker/proxy.nix
@@ -1,13 +1,13 @@
 { lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
-  name = "docker-proxy-${rev}";
-  rev = "fa125a3512ee0f6187721c88582bf8c4378bd4d7";
+  pname = "docker-proxy";
+  version = "unstable-2020-12-15";
 
   src = fetchFromGitHub {
-    inherit rev;
     owner = "docker";
     repo = "libnetwork";
+    rev = "fa125a3512ee0f6187721c88582bf8c4378bd4d7";
     sha256 = "1r47y0gww3j7fas4kgiqbhrz5fazsx1c6sxnccdfhj8fzik77s9y";
   };
 
diff --git a/nixpkgs/pkgs/applications/virtualization/gvisor/containerd-shim.nix b/nixpkgs/pkgs/applications/virtualization/gvisor/containerd-shim.nix
index c8610b73865b..612ef0f4b536 100644
--- a/nixpkgs/pkgs/applications/virtualization/gvisor/containerd-shim.nix
+++ b/nixpkgs/pkgs/applications/virtualization/gvisor/containerd-shim.nix
@@ -1,8 +1,8 @@
 { lib, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
-  name = "gvisor-containerd-shim-${version}";
-  version = "2019-10-09";
+  pname = "gvisor-containerd-shim";
+  version = "unstable-2019-10-09";
 
   src = fetchFromGitHub {
     owner  = "google";
diff --git a/nixpkgs/pkgs/applications/virtualization/gvisor/default.nix b/nixpkgs/pkgs/applications/virtualization/gvisor/default.nix
index 4cd043d4eb6d..cf6f2102e6ac 100644
--- a/nixpkgs/pkgs/applications/virtualization/gvisor/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/gvisor/default.nix
@@ -52,7 +52,7 @@ let
   };
 
 in buildBazelPackage rec {
-  name = "gvisor-${version}";
+  pname = "gvisor";
   version = "20210518.0";
 
   src = fetchFromGitHub {
diff --git a/nixpkgs/pkgs/applications/virtualization/lima/default.nix b/nixpkgs/pkgs/applications/virtualization/lima/default.nix
index 7feea9b4a348..db3ed3500e34 100644
--- a/nixpkgs/pkgs/applications/virtualization/lima/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/lima/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "lima";
-  version = "0.9.0";
+  version = "0.9.2";
 
   src = fetchFromGitHub {
     owner = "lima-vm";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-jbWz4HVYR3OEze2fFgG6Tg4p50IL0NStmaa8+GUPkNw=";
+    sha256 = "sha256-GS/mzBoVL78U7vMxkbnQfb89U640w8YdA8YhPH4Iwrc=";
   };
 
-  vendorSha256 = "sha256-RX8HfeDVvLUX4Ez2ma04gTl+8+lM7WGNSpmFNnf+5Xs=";
+  vendorSha256 = "sha256-funVyM0RhDzGQPyzsABzXu3ETPYJwRosqkQreGBADZc=";
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
 
diff --git a/nixpkgs/pkgs/applications/virtualization/podman-tui/default.nix b/nixpkgs/pkgs/applications/virtualization/podman-tui/default.nix
index cfeee8a8718d..7a8ed6fed284 100644
--- a/nixpkgs/pkgs/applications/virtualization/podman-tui/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/podman-tui/default.nix
@@ -4,17 +4,20 @@
 , buildGoModule
 , btrfs-progs
 , gpgme
+, libassuan
 , lvm2
+, testVersion
+, podman-tui
 }:
 buildGoModule rec {
   pname = "podman-tui";
-  version = "0.1.0";
+  version = "0.2.0";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "podman-tui";
     rev = "v${version}";
-    sha256 = "sha256-qPQSu6l1WkX6sddVr5h1DqKQCyw6vy8S6lXC/ZO4DL8=";
+    sha256 = "sha256-y5bFr31CQ4JES6tjvThyy7qmoKFC59uwtDMG5r+r8K4=";
   };
 
   vendorSha256 = null;
@@ -24,12 +27,17 @@ buildGoModule rec {
   buildInputs = [
     btrfs-progs
     gpgme
+    libassuan
     lvm2
   ];
 
   ldflags = [ "-s" "-w" ];
 
-  subPackages = [ "." ];
+  passthru.tests.version = testVersion {
+    package = podman-tui;
+    command = "podman-tui version";
+    version = "v${version}";
+  };
 
   meta = with lib; {
     homepage = "https://github.com/containers/podman-tui";
diff --git a/nixpkgs/pkgs/applications/virtualization/qemu/default.nix b/nixpkgs/pkgs/applications/virtualization/qemu/default.nix
index 2b183dd48d02..8f22e499d359 100644
--- a/nixpkgs/pkgs/applications/virtualization/qemu/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/qemu/default.nix
@@ -136,6 +136,15 @@ stdenv.mkDerivation rec {
       url = "https://gitlab.com/qemu-project/qemu/-/commit/d3671fd972cd185a6923433aa4802f54d8b62112.patch";
       sha256 = "sha256-GUh5o7mbFTm/dm6CqcGdoMlC+YrV8RlcEwu/mxrfTzo=";
     })
+    # The next two commits are to make Linux v5.17 work on aarch64-darwin. These are included in QEMU v7.
+    (fetchpatch {
+      url = "https://gitlab.com/qemu-project/qemu/-/commit/ad99f64f1cfff7c5e7af0e697523d9b7e45423b6.patch";
+      sha256 = "sha256-e6WtfQIPEiXhWucd5ab7UIoccbWEAv3bwksn4hR85CY=";
+    })
+    (fetchpatch {
+      url = "https://gitlab.com/qemu-project/qemu/-/commit/7f6c295cdfeaa229c360cac9a36e4e595aa902ae.patch";
+      sha256 = "sha256-mORtgfU1CYQFKO5UrXgM9cJyZxeF2bz8iAoq0UlFQeY=";
+    })
     ./allow-virtfs-on-darwin.patch
     # QEMU upstream does not demand compatibility to pre-10.13, so 9p-darwin
     # support on nix requires utimensat fallback. The patch adding this fallback
diff --git a/nixpkgs/pkgs/applications/virtualization/qemu/utils.nix b/nixpkgs/pkgs/applications/virtualization/qemu/utils.nix
index 90783039a1a0..d9a88bf545b3 100644
--- a/nixpkgs/pkgs/applications/virtualization/qemu/utils.nix
+++ b/nixpkgs/pkgs/applications/virtualization/qemu/utils.nix
@@ -1,8 +1,8 @@
 { stdenv, installShellFiles, qemu }:
 
 stdenv.mkDerivation rec {
-  name = "qemu-utils-${version}";
-  version = qemu.version;
+  pname = "qemu-utils";
+  inherit (qemu) version;
 
   nativeBuildInputs = [ installShellFiles ];
   buildInputs = [ qemu ];
diff --git a/nixpkgs/pkgs/applications/virtualization/runc/default.nix b/nixpkgs/pkgs/applications/virtualization/runc/default.nix
index 0dd3da4b37c6..e295a51637a7 100644
--- a/nixpkgs/pkgs/applications/virtualization/runc/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/runc/default.nix
@@ -16,13 +16,13 @@
 
 buildGoModule rec {
   pname = "runc";
-  version = "1.1.0";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "opencontainers";
     repo = "runc";
     rev = "v${version}";
-    sha256 = "sha256-svLxxfiRDLWkdRuHXaDyH5Ta6qmptI8z+s41iZKgbWM=";
+    sha256 = "sha256-6g2km+Y45INo2MTWMFFQFhfF8DAR5Su+YrJS8k3LYBY=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/applications/virtualization/singularity/default.nix b/nixpkgs/pkgs/applications/virtualization/singularity/default.nix
index 6589cccfe2f9..5ec5b19ce042 100644
--- a/nixpkgs/pkgs/applications/virtualization/singularity/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/singularity/default.nix
@@ -15,11 +15,11 @@ with lib;
 
 buildGoPackage rec {
   pname = "singularity";
-  version = "3.8.6";
+  version = "3.8.7";
 
   src = fetchurl {
     url = "https://github.com/hpcng/singularity/releases/download/v${version}/singularity-${version}.tar.gz";
-    sha256 = "sha256-u1o7dnCsnHpLPOWyyfPWtb5g4hsI0zjJ39q7eyqZ9Sg=";
+    sha256 = "sha256-Myny5YP4SoNDyywDgKHWy86vrn0eYztcvK33FD6shZs=";
   };
 
   goPackagePath = "github.com/sylabs/singularity";
diff --git a/nixpkgs/pkgs/applications/virtualization/spike/default.nix b/nixpkgs/pkgs/applications/virtualization/spike/default.nix
index 7db42c71092f..cc2489356c5d 100644
--- a/nixpkgs/pkgs/applications/virtualization/spike/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/spike/default.nix
@@ -1,11 +1,12 @@
-{ lib, stdenv, fetchgit, dtc, fetchpatch, pkgsCross }:
+{ lib, stdenv, fetchFromGitHub, dtc, fetchpatch, pkgsCross }:
 
 stdenv.mkDerivation rec {
   pname = "spike";
   version = "1.0.0";
 
-  src = fetchgit {
-    url = "https://github.com/riscv/riscv-isa-sim.git";
+  src = fetchFromGitHub {
+    owner = "riscv";
+    repo = "riscv-isa-sim";
     rev = "v${version}";
     sha256 = "1hcl01nj96s3rkz4mrq747s5lkw81lgdjdimb8b1b9h8qnida7ww";
   };
diff --git a/nixpkgs/pkgs/applications/virtualization/virt-viewer/default.nix b/nixpkgs/pkgs/applications/virtualization/virt-viewer/default.nix
index 29e05a069ce7..86474da9ee61 100644
--- a/nixpkgs/pkgs/applications/virtualization/virt-viewer/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/virt-viewer/default.nix
@@ -35,12 +35,11 @@ assert spiceSupport -> (
 with lib;
 
 stdenv.mkDerivation rec {
-  baseName = "virt-viewer";
+  pname = "virt-viewer";
   version = "11.0";
-  name = "${baseName}-${version}";
 
   src = fetchurl {
-    url = "http://virt-manager.org/download/sources/${baseName}/${name}.tar.xz";
+    url = "https://releases.pagure.org/virt-viewer/virt-viewer-${version}.tar.xz";
     sha256 = "sha256-pD+iMlxMHHelyMmAZaww7wURohrJjlkPIjQIabrZq9A=";
   };
 
diff --git a/nixpkgs/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix b/nixpkgs/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
index ad22fc4cc9f5..865dcad157bd 100644
--- a/nixpkgs/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
+++ b/nixpkgs/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
@@ -162,5 +162,6 @@ in stdenv.mkDerivation rec {
     license = "GPL";
     maintainers = [ lib.maintainers.sander ];
     platforms = lib.platforms.linux;
+    broken = kernel.kernelAtLeast "5.17";
   };
 }
diff --git a/nixpkgs/pkgs/applications/window-managers/btops/default.nix b/nixpkgs/pkgs/applications/window-managers/btops/default.nix
index 5f107337ee44..a837c435204a 100644
--- a/nixpkgs/pkgs/applications/window-managers/btops/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/btops/default.nix
@@ -1,5 +1,4 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "btops";
@@ -7,10 +6,11 @@ buildGoPackage rec {
 
   goPackagePath = "github.com/cmschuetz/btops";
 
-  src = fetchgit {
-    url = "https://github.com/cmschuetz/btops.git";
+  src = fetchFromGitHub {
+    owner = "cmschuetz";
+    repo = "btops";
     rev = version;
-    sha256 = "1ilidvpy7gz49zqp6rf0q7wjrc3r0brdrcp4r5f6i6p9cwybqkbq";
+    sha256 = "sha256-eE28PGfpmmhcyeSy3PICebAs+cHAZXPxT+S/4+9ukcY=";
   };
 
   goDeps = ./deps.nix;
diff --git a/nixpkgs/pkgs/applications/window-managers/clfswm/default.nix b/nixpkgs/pkgs/applications/window-managers/clfswm/default.nix
index 1c6f92a38f29..9984e8788460 100644
--- a/nixpkgs/pkgs/applications/window-managers/clfswm/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/clfswm/default.nix
@@ -2,11 +2,12 @@
 , makeWrapper }:
 
 stdenv.mkDerivation {
-  name = "clfswm";
+  pname = "clfswm";
+  version = "unstable-2016-11-12";
 
   src = fetchgit {
     url = "https://gitlab.common-lisp.net/clfswm/clfswm.git";
-    rev = "refs/heads/master";
+    rev = "3c7721dba6339ebb4f8c8d7ce2341740fa86f837";
     sha256 = "0hynzh3a1zr719cxfb0k4cvh5lskzs616hwn7p942isyvhwzhynd";
   };
 
diff --git a/nixpkgs/pkgs/applications/window-managers/i3/status-rust.nix b/nixpkgs/pkgs/applications/window-managers/i3/status-rust.nix
index 89da6b6b11e8..ed518d8eb2e8 100644
--- a/nixpkgs/pkgs/applications/window-managers/i3/status-rust.nix
+++ b/nixpkgs/pkgs/applications/window-managers/i3/status-rust.nix
@@ -15,16 +15,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "i3status-rust";
-  version = "0.21.7";
+  version = "0.21.8";
 
   src = fetchFromGitHub {
     owner = "greshake";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-2fh1/7/or++AzvkJfwXD07UiyX8U8CIEe+qXc5S82mM=";
+    sha256 = "sha256-l0XfitQSmSkivEg8+XcA/+bWdy/wzIpii/Npc4p8kUw=";
   };
 
-  cargoSha256 = "sha256-ERBxY0PBQOvAVeWCRcB7rApTLjtHxa0KMV4qGlU/j/Q=";
+  cargoSha256 = "sha256-2rJ9ZZHK1acJu6r6EjuoolLJZMdBsbKgN1DNvGM7deA=";
 
   nativeBuildInputs = [ pkg-config makeWrapper ];
 
diff --git a/nixpkgs/pkgs/applications/window-managers/i3/wsr.nix b/nixpkgs/pkgs/applications/window-managers/i3/wsr.nix
index 6af5717916bf..68ae959c2631 100644
--- a/nixpkgs/pkgs/applications/window-managers/i3/wsr.nix
+++ b/nixpkgs/pkgs/applications/window-managers/i3/wsr.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "i3wsr";
-  version = "2.0.1";
+  version = "2.1.1";
 
   src = fetchFromGitHub {
     owner = "roosta";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-JzQWfC0kmnMArpIAE5fgb3YLmXktSCH5aUdrQH9pCbo=";
+    sha256 = "sha256-Mq4TpQDiIYePUS3EwBfOe2+QmvF6+WEDK12WahbuhSU=";
   };
 
-  cargoSha256 = "sha256-ZvSdJLaw1nfaqpTBKIiHiXvNFSZhsmLk0PBrV6ykv/w=";
+  cargoSha256 = "sha256-hybvzHwHM0rQwgZfQpww/w9wQDW5h9P2KSjpAScVTBo=";
 
   nativeBuildInputs = [ python3 ];
   buildInputs = [ libxcb ];
diff --git a/nixpkgs/pkgs/applications/window-managers/phosh/default.nix b/nixpkgs/pkgs/applications/window-managers/phosh/default.nix
index 2c01a37aa43c..77a65eef6671 100644
--- a/nixpkgs/pkgs/applications/window-managers/phosh/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/phosh/default.nix
@@ -14,6 +14,7 @@
 , glib
 , gtk3
 , gnome
+, gnome-desktop
 , gcr
 , pam
 , systemd
@@ -30,7 +31,7 @@
 
 stdenv.mkDerivation rec {
   pname = "phosh";
-  version = "0.15.0";
+  version = "0.16.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
@@ -39,7 +40,7 @@ stdenv.mkDerivation rec {
     repo = pname;
     rev = "v${version}";
     fetchSubmodules = true; # including gvc and libcall-ui which are designated as subprojects
-    sha256 = "sha256-ZEfYjgSaj4vVdfgdIcg0PWwlFX90PIm5wvdn9P/8tvo=";
+    sha256 = "sha256-nxQYVWUXT1fNgOTRB3iWCLWYI/STk8vtguTbPPNTHdg=";
   };
 
   nativeBuildInputs = [
@@ -63,7 +64,7 @@ stdenv.mkDerivation rec {
     networkmanager
     polkit
     gnome.gnome-control-center
-    gnome.gnome-desktop
+    gnome-desktop
     gnome.gnome-session
     gtk3
     pam
@@ -108,8 +109,6 @@ stdenv.mkDerivation rec {
   postFixup = ''
     mkdir -p $out/share/wayland-sessions
     ln -s $out/share/applications/sm.puri.Phosh.desktop $out/share/wayland-sessions/
-    # The OSK0.desktop points to a dummy stub that's not needed
-    rm $out/share/applications/sm.puri.OSK0.desktop
   '';
 
   passthru = {
diff --git a/nixpkgs/pkgs/applications/window-managers/qtile/default.nix b/nixpkgs/pkgs/applications/window-managers/qtile/default.nix
index 4a48225d8013..d0bec27e215a 100644
--- a/nixpkgs/pkgs/applications/window-managers/qtile/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/qtile/default.nix
@@ -1,15 +1,28 @@
-{ lib, fetchFromGitHub, python3, python3Packages, mypy, glib, pango, pkg-config, xcbutilcursor }:
+{ lib
+, fetchFromGitHub
+, python3
+, python3Packages
+, mypy
+, glib
+, pango
+, pkg-config
+, libinput
+, libxkbcommon
+, wayland
+, wlroots
+, xcbutilcursor
+}:
 
 let
   unwrapped = python3Packages.buildPythonPackage rec {
     pname = "qtile";
-    version = "0.20.0";
+    version = "0.21.0";
 
     src = fetchFromGitHub {
       owner = "qtile";
       repo = "qtile";
       rev = "v${version}";
-      sha256 = "TRmul3t//izJRdViTvxFz29JZeGYsWc7WsJjagQ35nw=";
+      sha256 = "3QCI1TZIh1LcWuklVQkqgR1MQphi6CzZKc1UZcytV0k=";
     };
 
     patches = [
@@ -48,6 +61,13 @@ let
       xkbcommon
     ];
 
+    buildInputs = [
+      libinput
+      wayland
+      wlroots
+      libxkbcommon
+    ];
+
     # for `qtile check`, needs `stubtest` and `mypy` commands
     makeWrapperArgs = [
       "--suffix PATH : ${lib.makeBinPath [ mypy ]}"
diff --git a/nixpkgs/pkgs/applications/window-managers/taffybar/default.nix b/nixpkgs/pkgs/applications/window-managers/taffybar/default.nix
index 7d9e5f9c1cb0..2afb6e505c33 100644
--- a/nixpkgs/pkgs/applications/window-managers/taffybar/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/taffybar/default.nix
@@ -5,7 +5,8 @@ let
     self.taffybar
   ] ++ packages self);
 in stdenv.mkDerivation {
-  name = "taffybar-with-packages-${taffybarEnv.version}";
+  pname = "taffybar-with-packages";
+  inherit (taffybarEnv) version;
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/nixpkgs/pkgs/applications/window-managers/xmonad/wrapper.nix b/nixpkgs/pkgs/applications/window-managers/xmonad/wrapper.nix
index f5c9f12a23f6..409bf73c893f 100644
--- a/nixpkgs/pkgs/applications/window-managers/xmonad/wrapper.nix
+++ b/nixpkgs/pkgs/applications/window-managers/xmonad/wrapper.nix
@@ -3,7 +3,8 @@
 let
 xmonadEnv = ghcWithPackages (self: [ self.xmonad ] ++ packages self);
 in stdenv.mkDerivation {
-  name = "xmonad-with-packages-${xmonadEnv.version}";
+  pname = "xmonad-with-packages";
+  inherit (xmonadEnv) version;
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/nixpkgs/pkgs/build-support/build-fhs-userenv-bubblewrap/env.nix b/nixpkgs/pkgs/build-support/build-fhs-userenv-bubblewrap/env.nix
index d0f88df44537..a36008d752bd 100644
--- a/nixpkgs/pkgs/build-support/build-fhs-userenv-bubblewrap/env.nix
+++ b/nixpkgs/pkgs/build-support/build-fhs-userenv-bubblewrap/env.nix
@@ -59,6 +59,9 @@ let
     export PATH="/run/wrappers/bin:/usr/bin:/usr/sbin:$PATH"
     export TZDIR='/etc/zoneinfo'
 
+    # XDG_DATA_DIRS is used by pressure-vessel (steam proton) and vulkan loaders to find the corresponding icd
+    export XDG_DATA_DIRS=$XDG_DATA_DIRS''${XDG_DATA_DIRS:+:}/run/opengl-driver/share:/run/opengl-driver-32/share
+
     # Force compilers and other tools to look in default search paths
     unset NIX_ENFORCE_PURITY
     export NIX_CC_WRAPPER_TARGET_HOST_${stdenv.cc.suffixSalt}=1
@@ -97,18 +100,21 @@ let
       if [[ -d  $out/share/gsettings-schemas/ ]]; then
           # Recreate the standard schemas directory if its a symlink to make it writable
           if [[ -L $out/share/glib-2.0 ]]; then
-              ln -s $(readlink $out/share/glib-2.0) $out/share/glib-2.0.old
-              rm -rf $out/share/glib-2.0
+              target=$(readlink $out/share/glib-2.0)
+              rm $out/share/glib-2.0
+              mkdir $out/share/glib-2.0
+              ln -fs $target/* $out/share/glib-2.0
           fi
 
-          mkdir -p $out/share/glib-2.0/schemas
-
-          # symlink any schema files or overrides to the standard schema directory
-          if [[ -e $out/share/glib-2.0.old/schemas ]]; then
-              ln -fs $out/share/glib-2.0.old/schemas/*.xml $out/share/glib-2.0/schemas
-              ln -fs $out/share/glib-2.0.old/schemas/*.gsettings-schemas.override $out/share/glib-2.0/schemas
+          if [[ -L $out/share/glib-2.0/schemas ]]; then
+              target=$(readlink $out/share/glib-2.0/schemas)
+              rm $out/share/glib-2.0/schemas
+              mkdir $out/share/glib-2.0/schemas
+              ln -fs $target/* $out/share/glib-2.0/schemas
           fi
 
+          mkdir -p $out/share/glib-2.0/schemas
+
           for d in $out/share/gsettings-schemas/*; do
               # Force symlink, in case there are duplicates
               ln -fs $d/glib-2.0/schemas/*.xml $out/share/glib-2.0/schemas
diff --git a/nixpkgs/pkgs/build-support/build-fhs-userenv/env.nix b/nixpkgs/pkgs/build-support/build-fhs-userenv/env.nix
index 7251500f76c5..09457caecb86 100644
--- a/nixpkgs/pkgs/build-support/build-fhs-userenv/env.nix
+++ b/nixpkgs/pkgs/build-support/build-fhs-userenv/env.nix
@@ -60,6 +60,9 @@ let
     export PATH="/run/wrappers/bin:/usr/bin:/usr/sbin:$PATH"
     export TZDIR='/etc/zoneinfo'
 
+    # XDG_DATA_DIRS is used by pressure-vessel (steam proton) and vulkan loaders to find the corresponding icd
+    export XDG_DATA_DIRS=$XDG_DATA_DIRS''${XDG_DATA_DIRS:+:}/run/opengl-driver/share:/run/opengl-driver-32/share
+
     # Force compilers and other tools to look in default search paths
     unset NIX_ENFORCE_PURITY
     export NIX_CC_WRAPPER_TARGET_HOST_${stdenv.cc.suffixSalt}=1
@@ -138,18 +141,21 @@ let
       if [[ -d  $out/share/gsettings-schemas/ ]]; then
           # Recreate the standard schemas directory if its a symlink to make it writable
           if [[ -L $out/share/glib-2.0 ]]; then
-              ln -s $(readlink $out/share/glib-2.0) $out/share/glib-2.0.old
-              rm -rf $out/share/glib-2.0
+              target=$(readlink $out/share/glib-2.0)
+              rm $out/share/glib-2.0
+              mkdir $out/share/glib-2.0
+              ln -fs $target/* $out/share/glib-2.0
           fi
 
-          mkdir -p $out/share/glib-2.0/schemas
-
-          # symlink any schema files or overrides to the standard schema directory
-          if [[ -e $out/share/glib-2.0.old/schemas ]]; then
-              ln -fs $out/share/glib-2.0.old/schemas/*.xml $out/share/glib-2.0/schemas
-              ln -fs $out/share/glib-2.0.old/schemas/*.gsettings-schemas.override $out/share/glib-2.0/schemas
+          if [[ -L $out/share/glib-2.0/schemas ]]; then
+              target=$(readlink $out/share/glib-2.0/schemas)
+              rm $out/share/glib-2.0/schemas
+              mkdir $out/share/glib-2.0/schemas
+              ln -fs $target/* $out/share/glib-2.0/schemas
           fi
 
+          mkdir -p $out/share/glib-2.0/schemas
+
           for d in $out/share/gsettings-schemas/*; do
               # Force symlink, in case there are duplicates
               ln -fs $d/glib-2.0/schemas/*.xml $out/share/glib-2.0/schemas
diff --git a/nixpkgs/pkgs/build-support/fetchipfs/default.nix b/nixpkgs/pkgs/build-support/fetchipfs/default.nix
index 7a66999ec569..0cbb094d6003 100644
--- a/nixpkgs/pkgs/build-support/fetchipfs/default.nix
+++ b/nixpkgs/pkgs/build-support/fetchipfs/default.nix
@@ -17,8 +17,6 @@
 , preferLocalBuild ? true
 }:
 
-assert sha512 != "" -> builtins.compareVersions "1.11" builtins.nixVersion <= 0;
-
 let
 
   hasHash = (outputHash != "" && outputHashAlgo != "")
diff --git a/nixpkgs/pkgs/build-support/fetchpatch/default.nix b/nixpkgs/pkgs/build-support/fetchpatch/default.nix
index 6e25b2d6ecc5..d46162c97ff4 100644
--- a/nixpkgs/pkgs/build-support/fetchpatch/default.nix
+++ b/nixpkgs/pkgs/build-support/fetchpatch/default.nix
@@ -9,7 +9,8 @@ let
   # 0.3.4 would change hashes: https://github.com/NixOS/nixpkgs/issues/25154
   patchutils = buildPackages.patchutils_0_3_3;
 in
-{ stripLen ? 0
+{ relative ? null
+, stripLen ? 0
 , extraPrefix ? null
 , excludes ? []
 , includes ? []
@@ -17,7 +18,18 @@ in
 , postFetch ? ""
 , ...
 }@args:
-
+let
+  args' = if relative != null then {
+    stripLen = 1 + lib.length (lib.splitString "/" relative) + stripLen;
+    extraPrefix = if extraPrefix != null then extraPrefix else "";
+  } else {
+    inherit stripLen extraPrefix;
+  };
+in let
+  inherit (args') stripLen extraPrefix;
+in
+lib.throwIfNot (excludes == [] || includes == [])
+  "fetchpatch: cannot use excludes and includes simultaneously"
 fetchurl ({
   postFetch = ''
     tmpfile="$TMPDIR/patch"
@@ -27,17 +39,19 @@ fetchurl ({
       exit 1
     fi
 
-    "${patchutils}/bin/lsdiff" "$out" \
-      | sort -u | sed -e 's/[*?]/\\&/g' \
-      | xargs -I{} \
-        "${patchutils}/bin/filterdiff" \
-        --include={} \
-        --strip=${toString stripLen} \
-        ${lib.optionalString (extraPrefix != null) ''
-           --addoldprefix=a/${extraPrefix} \
-           --addnewprefix=b/${extraPrefix} \
-        ''} \
-        --clean "$out" > "$tmpfile"
+    "${patchutils}/bin/lsdiff" \
+      ${lib.optionalString (relative != null) "-p1 -i ${lib.escapeShellArg relative}/'*'"} \
+      "$out" \
+    | sort -u | sed -e 's/[*?]/\\&/g' \
+    | xargs -I{} \
+      "${patchutils}/bin/filterdiff" \
+      --include={} \
+      --strip=${toString stripLen} \
+      ${lib.optionalString (extraPrefix != null) ''
+          --addoldprefix=a/${lib.escapeShellArg extraPrefix} \
+          --addnewprefix=b/${lib.escapeShellArg extraPrefix} \
+      ''} \
+      --clean "$out" > "$tmpfile"
 
     if [ ! -s "$tmpfile" ]; then
       echo "error: Normalized patch '$tmpfile' is empty (while the fetched file was not)!" 1>&2
@@ -64,5 +78,6 @@ fetchurl ({
     ${patchutils}/bin/interdiff "$out" /dev/null > "$tmpfile"
     mv "$tmpfile" "$out"
   '' + postFetch;
-  meta.broken = excludes != [] && includes != [];
-} // builtins.removeAttrs args ["stripLen" "extraPrefix" "excludes" "includes" "revert" "postFetch"])
+} // builtins.removeAttrs args [
+  "relative" "stripLen" "extraPrefix" "excludes" "includes" "revert" "postFetch"
+])
diff --git a/nixpkgs/pkgs/build-support/fetchpatch/tests.nix b/nixpkgs/pkgs/build-support/fetchpatch/tests.nix
index 4240b325d656..ff2b81bf3a1d 100644
--- a/nixpkgs/pkgs/build-support/fetchpatch/tests.nix
+++ b/nixpkgs/pkgs/build-support/fetchpatch/tests.nix
@@ -5,4 +5,20 @@
     url = "https://github.com/facebook/zstd/pull/2724/commits/e1f85dbca3a0ed5ef06c8396912a0914db8dea6a.patch";
     sha256 = "sha256-PuYAqnJWAE+L9bsroOnnBGJhERW8LHrGSLtIEkKU9vg=";
   };
+
+  relative = invalidateFetcherByDrvHash fetchpatch {
+    url = "https://github.com/boostorg/math/commit/7d482f6ebc356e6ec455ccb5f51a23971bf6ce5b.patch";
+    relative = "include";
+    sha256 = "sha256-KlmIbixcds6GyKYt1fx5BxDIrU7msrgDdYo9Va/KJR4=";
+  };
+
+  full = invalidateFetcherByDrvHash fetchpatch {
+    url = "https://github.com/boostorg/math/commit/7d482f6ebc356e6ec455ccb5f51a23971bf6ce5b.patch";
+    relative = "test";
+    stripLen = 1;
+    extraPrefix = "foo/bar/";
+    excludes = [ "foo/bar/bernoulli_no_atomic_mp.cpp" ];
+    revert = true;
+    sha256 = "sha256-+UKmEbr2rIAweCav/hR/7d4ZrYV84ht/domTrHtm8sM=";
+  };
 }
diff --git a/nixpkgs/pkgs/build-support/fetchurl/default.nix b/nixpkgs/pkgs/build-support/fetchurl/default.nix
index 776089dab999..dcab471fc839 100644
--- a/nixpkgs/pkgs/build-support/fetchurl/default.nix
+++ b/nixpkgs/pkgs/build-support/fetchurl/default.nix
@@ -100,8 +100,6 @@ in
 , nativeBuildInputs ? [ ]
 }:
 
-assert sha512 != "" -> builtins.compareVersions "1.11" builtins.nixVersion <= 0;
-
 let
   urls_ =
     if urls != [] && url == "" then
diff --git a/nixpkgs/pkgs/build-support/make-darwin-bundle/write-darwin-bundle.nix b/nixpkgs/pkgs/build-support/make-darwin-bundle/write-darwin-bundle.nix
index d21e0475e2df..fde977c3636b 100644
--- a/nixpkgs/pkgs/build-support/make-darwin-bundle/write-darwin-bundle.nix
+++ b/nixpkgs/pkgs/build-support/make-darwin-bundle/write-darwin-bundle.nix
@@ -5,6 +5,7 @@ let
     CFBundleDevelopmentRegion = "English";
     CFBundleExecutable = "$name";
     CFBundleIconFile = "$icon";
+    CFBundleIconFiles = [ "$icon" ];
     CFBundleIdentifier = "org.nixos.$name";
     CFBundleInfoDictionaryVersion = "6.0";
     CFBundleName = "$name";
@@ -25,11 +26,8 @@ in writeScriptBin "write-darwin-bundle" ''
 ${pListText}
 EOF
 
-  if [[ $squircle != 0 && $squircle != "false" ]]; then
-    sed  "
-      s|CFBundleIconFile|CFBundleIconFiles|;
-      s|<string>$icon</string>|<array><string>$icon</string></array>|
-    " -i "$plist"
+  if [[ $squircle == 0 || $squircle == "false" ]]; then
+    sed  '/CFBundleIconFiles/,\|</array>|d' -i "$plist"
   fi
 
     cat > "$prefix/Applications/$name.app/Contents/MacOS/$name" <<EOF
diff --git a/nixpkgs/pkgs/build-support/nix-gitignore/default.nix b/nixpkgs/pkgs/build-support/nix-gitignore/default.nix
index 497dcb0660b0..d55465302e44 100644
--- a/nixpkgs/pkgs/build-support/nix-gitignore/default.nix
+++ b/nixpkgs/pkgs/build-support/nix-gitignore/default.nix
@@ -12,11 +12,6 @@ with builtins;
 let
   debug = a: trace a a;
   last = l: elemAt l ((length l) - 1);
-
-  throwIfOldNix = let required = "2.0"; in
-    if compareVersions nixVersion required == -1
-    then throw "nix (v${nixVersion} =< v${required}) is too old for nix-gitignore"
-    else true;
 in rec {
   # [["good/relative/source/file" true] ["bad.tmpfile" false]] -> root -> path
   filterPattern = patterns: root:
@@ -31,7 +26,6 @@ in rec {
 
   # string -> [[regex bool]]
   gitignoreToPatterns = gitignore:
-    assert throwIfOldNix;
     let
       # ignore -> bool
       isComment = i: (match "^(#.*|$)" i) != null;
diff --git a/nixpkgs/pkgs/build-support/ocaml/dune.nix b/nixpkgs/pkgs/build-support/ocaml/dune.nix
index 18e8784cfab3..f82bac7d199d 100644
--- a/nixpkgs/pkgs/build-support/ocaml/dune.nix
+++ b/nixpkgs/pkgs/build-support/ocaml/dune.nix
@@ -1,8 +1,11 @@
-{ lib, stdenv, ocaml, findlib, dune_1, dune_2 }:
+{ lib, stdenv, ocaml, findlib, dune_1, dune_2, dune_3 }:
 
 { pname, version, nativeBuildInputs ? [], enableParallelBuilding ? true, ... }@args:
 
-let Dune = if args.useDune2 or true then dune_2 else dune_1; in
+let Dune =
+  let dune-version = args . duneVersion or (if args.useDune2 or true then "2" else "1"); in
+  { "1" = dune_1; "2" = dune_2; "3" = dune_3; }."${dune-version}"
+; in
 
 if (args ? minimumOCamlVersion && ! lib.versionAtLeast ocaml.version args.minimumOCamlVersion) ||
    (args ? minimalOCamlVersion && ! lib.versionAtLeast ocaml.version args.minimalOCamlVersion)
@@ -31,7 +34,7 @@ stdenv.mkDerivation ({
     runHook postInstall
   '';
 
-} // (builtins.removeAttrs args [ "minimalOCamlVersion" ]) // {
+} // (builtins.removeAttrs args [ "minimalOCamlVersion" "duneVersion" ]) // {
 
   name = "ocaml${ocaml.version}-${pname}-${version}";
 
diff --git a/nixpkgs/pkgs/build-support/rust/import-cargo-lock.nix b/nixpkgs/pkgs/build-support/rust/import-cargo-lock.nix
index fd3608741ea3..e571c01f95c5 100644
--- a/nixpkgs/pkgs/build-support/rust/import-cargo-lock.nix
+++ b/nixpkgs/pkgs/build-support/rust/import-cargo-lock.nix
@@ -128,8 +128,13 @@ let
 
         # If the target package is in a workspace, or if it's the top-level
         # crate, we should find the crate path using `cargo metadata`.
-        crateCargoTOML=$(${cargo}/bin/cargo metadata --format-version 1 --no-deps --manifest-path $tree/Cargo.toml | \
+        # Some packages do not have a Cargo.toml at the top-level,
+        # but only in nested directories.
+        # Only check the top-level Cargo.toml, if it actually exists
+        if [[ -f $tree/Cargo.toml ]]; then
+          crateCargoTOML=$(${cargo}/bin/cargo metadata --format-version 1 --no-deps --manifest-path $tree/Cargo.toml | \
           ${jq}/bin/jq -r '.packages[] | select(.name == "${pkg.name}") | .manifest_path')
+        fi
 
         # If the repository is not a workspace the package might be in a subdirectory.
         if [[ -z $crateCargoTOML ]]; then
diff --git a/nixpkgs/pkgs/build-support/setup-hooks/desktop-to-darwin-bundle.sh b/nixpkgs/pkgs/build-support/setup-hooks/desktop-to-darwin-bundle.sh
index b2e2738cb6ec..d54af90b6888 100644
--- a/nixpkgs/pkgs/build-support/setup-hooks/desktop-to-darwin-bundle.sh
+++ b/nixpkgs/pkgs/build-support/setup-hooks/desktop-to-darwin-bundle.sh
@@ -18,7 +18,9 @@ convertIconTheme() {
     local -r iconName=$3
     local -r theme=${4:-hicolor}
 
-    local -ra iconSizes=(16 32 48 128 256 512)
+    # Sizes based on archived Apple documentation:
+    # https://developer.apple.com/design/human-interface-guidelines/macos/icons-and-images/app-icon#app-icon-sizes
+    local -ra iconSizes=(16 32 128 256 512)
     local -ra scales=([1]="" [2]="@2")
 
     # Based loosely on the algorithm at:
@@ -31,13 +33,6 @@ convertIconTheme() {
         local scaleSuffix=${scales[$scale]}
         local exactSize=${iconSize}x${iconSize}${scaleSuffix}
 
-        if [[ $exactSize = '48x48@2' ]]; then
-            # macOS does not support a 2x scale variant of 48x48 icons
-            # See: https://en.wikipedia.org/wiki/Apple_Icon_Image_format#Icon_types
-            echo "unsupported"
-            return 0
-        fi
-
         local -a validSizes=(
             ${exactSize}
             $((iconSize + 1))x$((iconSize + 1))${scaleSuffix}
@@ -55,8 +50,10 @@ convertIconTheme() {
                     else
                         echo "threshold $icon"
                     fi
-                    return 0
+                elif [[ -a $icon ]]; then
+                  echo "fallback $icon"
                 fi
+                return 0
             done
         done
         echo "scalable"
@@ -106,6 +103,17 @@ convertIconTheme() {
             scalableIcon=('-')
         fi
 
+        # Tri-state variable, NONE means no icons have been found, an empty
+        # icns file will be generated, not sure that's necessary because macOS
+        # will default to a generic icon if no icon can be found.
+        #
+        # OTHER means an appropriate icon was found.
+        #
+        # Any other value is a path to an icon file that isn't scalable or
+        # within the threshold. This is used as a fallback in case no better
+        # icon can be found and will be scaled as much as
+        # necessary to result in appropriate icon sizes.
+        local foundIcon=NONE
         for iconSize in "${iconSizes[@]}"; do
             for scale in "${!scales[@]}"; do
                 local iconResult=$(findIcon $iconSize $scale)
@@ -117,6 +125,7 @@ convertIconTheme() {
                     fixed)
                         local density=$((72 * scale))x$((72 * scale))
                         magick convert -density "$density" -units PixelsPerInch "$icon" "$result"
+                        foundIcon=OTHER
                         ;;
                     threshold)
                         # Synthesize an icon of the exact size if a scalable icon is available
@@ -124,21 +133,38 @@ convertIconTheme() {
                         if ! synthesizeIcon "${scalableIcon[0]}" "$result" "$iconSize" "$scale"; then
                             resizeIcon "$icon" "$result" "$iconSize" "$scale"
                         fi
+                        foundIcon=OTHER
                         ;;
                     scalable)
                         synthesizeIcon "${scalableIcon[0]}" "$result" "$iconSize" "$scale" || true
+                        foundIcon=OTHER
+                        ;;
+                    fallback)
+                        # Use the largest size available to scale to
+                        # appropriate sizes.
+                        if [[ $foundIcon != OTHER ]]; then
+                          foundIcon=$icon
+                        fi
                         ;;
                     *)
                         ;;
                 esac
             done
         done
+        if [[ $foundIcon != NONE && $foundIcon != OTHER ]]; then
+            # Ideally we'd only resize to whatever the closest sizes are,
+            # starting from whatever icon sizes are available.
+            for iconSize in 16 32 128 256 512; do
+              local result=${resultdir}/${iconSize}x${iconSize}.png
+              resizeIcon "$foundIcon" "$result" "$iconSize" 1
+            done
+        fi
         echo "$resultdir"
     }
 
     iconsdir=$(getIcons "$sharePath" "apps/${iconName}" "$theme")
-    if [[ ! -z "$(ls -1 "$iconsdir/"*)" ]]; then
-        icnsutil compose "$out/${iconName}.icns" "$iconsdir/"*
+    if [[ -n "$(ls -1 "$iconsdir/"*)" ]]; then
+        icnsutil compose --toc "$out/${iconName}.icns" "$iconsdir/"*
     else
         echo "Warning: no icons were found. Creating an empty icon for ${iconName}.icns."
         touch "$out/${iconName}.icns"
diff --git a/nixpkgs/pkgs/data/documentation/gnome-user-docs/default.nix b/nixpkgs/pkgs/data/documentation/gnome-user-docs/default.nix
index 23dfd975bf74..db177006a3dd 100644
--- a/nixpkgs/pkgs/data/documentation/gnome-user-docs/default.nix
+++ b/nixpkgs/pkgs/data/documentation/gnome-user-docs/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-user-docs";
-  version = "41.2";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-user-docs/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "0xcIld06i7EXyfFIoLs/tJDRr3ExxEFod7G7/sWROVo=";
+    sha256 = "srJ9oEEAu90vTw5bw48tBW2V+jZWcgFj9kNqMWfV6QU=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/data/documentation/man-pages/default.nix b/nixpkgs/pkgs/data/documentation/man-pages/default.nix
index 60a7e3f229f5..5b33714fc258 100644
--- a/nixpkgs/pkgs/data/documentation/man-pages/default.nix
+++ b/nixpkgs/pkgs/data/documentation/man-pages/default.nix
@@ -24,7 +24,6 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Linux development manual pages";
     homepage = "https://www.kernel.org/doc/man-pages/";
-    repositories.git = "https://git.kernel.org/pub/scm/docs/man-pages/man-pages";
     license = licenses.gpl2Plus;
     platforms = with platforms; unix;
     priority = 30; # if a package comes with its own man page, prefer it
diff --git a/nixpkgs/pkgs/data/documentation/std-man-pages/default.nix b/nixpkgs/pkgs/data/documentation/std-man-pages/default.nix
index a2f9f005eb93..c9ce9c2bf764 100644
--- a/nixpkgs/pkgs/data/documentation/std-man-pages/default.nix
+++ b/nixpkgs/pkgs/data/documentation/std-man-pages/default.nix
@@ -1,10 +1,11 @@
 { stdenv, lib, fetchurl }:
 
-stdenv.mkDerivation {
-  name = "std-man-pages-4.4.0";
+stdenv.mkDerivation rec {
+  pname = "std-man-pages";
+  version = "4.4.0";
 
   src = fetchurl {
-    url = "mirror://gcc/libstdc++/doxygen/libstdc++-man.4.4.0.tar.bz2";
+    url = "mirror://gcc/libstdc++/doxygen/libstdc++-man.${version}.tar.bz2";
     sha256 = "0153py77ll759jacq41dp2z2ksr08pdcfic0rwjd6pr84dk89y9v";
   };
 
diff --git a/nixpkgs/pkgs/data/fonts/borg-sans-mono/default.nix b/nixpkgs/pkgs/data/fonts/borg-sans-mono/default.nix
new file mode 100644
index 000000000000..57b0a23bf7bc
--- /dev/null
+++ b/nixpkgs/pkgs/data/fonts/borg-sans-mono/default.nix
@@ -0,0 +1,26 @@
+{ lib, fetchzip }:
+
+let
+  pname = "borg-sans-mono";
+  version = "0.2.0";
+in
+fetchzip {
+  name = "${pname}-${version}";
+
+  # https://github.com/marnen/borg-sans-mono/issues/19
+  url = "https://github.com/marnen/borg-sans-mono/files/107663/BorgSansMono.ttf.zip";
+  sha256 = "1gz4ab0smw76ih5cs2l3n92c77nv7ld5zghq42avjsfhxrc2n5ri";
+
+  postFetch = ''
+    mkdir -p $out/share/fonts
+    unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype
+  '';
+
+  meta = with lib; {
+    description = "Droid Sans Mono Slashed + Hasklig-style ligatures";
+    homepage = "https://github.com/marnen/borg-sans-mono";
+    license = licenses.asl20;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ atila ];
+  };
+}
diff --git a/nixpkgs/pkgs/data/fonts/dancing-script/default.nix b/nixpkgs/pkgs/data/fonts/dancing-script/default.nix
new file mode 100644
index 000000000000..5129f4bc5a5e
--- /dev/null
+++ b/nixpkgs/pkgs/data/fonts/dancing-script/default.nix
@@ -0,0 +1,27 @@
+{ lib, fetchFromGitHub }:
+
+let
+  pname = "dancing-script";
+  version = "2.0";
+in fetchFromGitHub {
+  name = "${pname}-${version}";
+
+  owner = "impallari";
+  repo = "DancingScript";
+  rev = "f7f54bc1b8836601dae8696666bfacd306f77e34";
+  sha256 = "dfFvh8h+oMhAQL9XKMrNr07VUkdQdxAsA8+q27KWWCA=";
+
+  postFetch = ''
+    tar xf $downloadedFile --strip=1
+    install -m444 -Dt $out/share/fonts/truetype fonts/ttf/*.ttf
+  '';
+
+  meta = with lib; {
+    description = "Dancing Script";
+    longDescription = "A lively casual script where the letters bounce and change size slightly.";
+    homepage = "https://github.com/impallari/DancingScript";
+    license = licenses.ofl;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ wdavidw ];
+  };
+}
diff --git a/nixpkgs/pkgs/data/fonts/lxgw-wenkai/default.nix b/nixpkgs/pkgs/data/fonts/lxgw-wenkai/default.nix
index 0d328e0a8de0..a5ead2274b80 100644
--- a/nixpkgs/pkgs/data/fonts/lxgw-wenkai/default.nix
+++ b/nixpkgs/pkgs/data/fonts/lxgw-wenkai/default.nix
@@ -1,6 +1,6 @@
 { lib, fetchzip }:
 
-let version = "1.210"; in
+let version = "1.222"; in
 fetchzip {
   name = "lxgw-wenkai-${version}";
   url = "https://github.com/lxgw/LxgwWenKai/releases/download/v${version}/lxgw-wenkai-v${version}.tar.gz";
@@ -11,7 +11,7 @@ fetchzip {
     cp *.ttf $out/share/fonts/truetype
   '';
 
-  sha256 = "n8vnkoOJuUO4Gh+GUInZ/HJK5t4pD7MrPPaxDyH+0Qw=";
+  sha256 = "sha256-u2NTEYZrotOHktc2R5RWMFqeZ775/IpYJSUBO6PWijM=";
 
   meta = with lib; {
     homepage = "https://lxgw.github.io/";
diff --git a/nixpkgs/pkgs/data/fonts/mplus-outline-fonts/default.nix b/nixpkgs/pkgs/data/fonts/mplus-outline-fonts/default.nix
index 75e8899e664a..d9cfadd5f088 100644
--- a/nixpkgs/pkgs/data/fonts/mplus-outline-fonts/default.nix
+++ b/nixpkgs/pkgs/data/fonts/mplus-outline-fonts/default.nix
@@ -1,25 +1,45 @@
-{ lib, fetchzip }:
+{ lib, fetchzip, fetchFromGitHub }:
 
-let
-  version = "063a";
-in fetchzip {
-  name = "mplus-${version}";
+let pname = "mplus-outline-fonts";
+in {
+  osdnRelease = fetchzip {
+    name = "${pname}-osdn";
+    url = "mirror://osdn/mplus-fonts/62344/mplus-TESTFLIGHT-063a.tar.xz";
+    sha256 = "16jirhkjs46ac8cdk2w4xkpv989gmz7i8gnrq9bck13rbil7wlzr";
+    postFetch = ''
+      mkdir -p $out/share/fonts/truetype/${pname}
+      tar xvJf $downloadedFile
+      mv */*.ttf $out/share/fonts/truetype/${pname}
+    '';
 
-  url = "mirror://osdn/mplus-fonts/62344/mplus-TESTFLIGHT-${version}.tar.xz";
-
-  postFetch = ''
-    tar -xJf $downloadedFile --strip-components=1
-    mkdir -p $out/share/fonts/truetype
-    cp *.ttf $out/share/fonts/truetype
-  '';
+    meta = with lib; {
+      description = "M+ Outline Fonts (legacy OSDN release)";
+      homepage = "https://mplus-fonts.osdn.jp";
+      maintainers = with maintainers; [ henrytill uakci ];
+      platforms = platforms.all;
+      license = licenses.mit;
+    };
+  };
 
-  sha256 = "1khbkch2r96ppifc93bmy1v047pgciyhfmcjb98ggncp5ix885xz";
+  githubRelease = fetchFromGitHub {
+    name = "${pname}-github";
+    owner = "coz-m";
+    repo = "MPLUS_FONTS";
+    rev = "336fec4e9e7c1e61bd22b82e6364686121cf3932";
+    sha256 = "1ha92hyzcfbbq682c50k8clbhigc09rcb9mxjzjwqfj9rfp348id";
+    postFetch = ''
+      mkdir -p $out/share/fonts/{truetype,opentype}/${pname}
+      tar xvzf $downloadedFile
+      mv */fonts/ttf/* $out/share/fonts/truetype/${pname}
+      mv */fonts/otf/* $out/share/fonts/opentype/${pname}
+    '';
 
-  meta = with lib; {
-    description = "M+ Outline Fonts";
-    homepage = "https://mplus-fonts.osdn.jp/about-en.html";
-    license = licenses.mit;
-    maintainers = with maintainers; [ henrytill ];
-    platforms = platforms.all;
+    meta = with lib; {
+      description = "M+ Outline Fonts (GitHub release)";
+      homepage = "https://mplusfonts.github.io";
+      maintainers = with maintainers; [ henrytill uakci ];
+      platforms = platforms.all;
+      license = licenses.ofl;
+    };
   };
 }
diff --git a/nixpkgs/pkgs/data/fonts/rictydiminished-with-firacode/default.nix b/nixpkgs/pkgs/data/fonts/rictydiminished-with-firacode/default.nix
index ceed83070040..c8d8ca42f9e4 100644
--- a/nixpkgs/pkgs/data/fonts/rictydiminished-with-firacode/default.nix
+++ b/nixpkgs/pkgs/data/fonts/rictydiminished-with-firacode/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, fetchgit, fontforge, python3 }:
+{ lib, stdenv, fetchFromGitHub, fontforge, python3 }:
 
 stdenv.mkDerivation rec {
   pname = "rictydiminished-with-firacode";
   version = "1.2.2";
 
-  src = fetchgit {
-    url = "https://github.com/hakatashi/RictyDiminished-with-FiraCode.git";
+  src = fetchFromGitHub {
+    owner = "hakatashi";
+    repo = "RictyDiminished-with-FiraCode";
     rev = version;
-    sha256 = "0khnbp1y5xrd77gfb2b19mzi3ll07im3d0rlbciwbq0cn347f25p";
+    sha256 = "sha256-twh3yLAM4MUjWzSDNmo8gNIRf01hieXeOS334sNdFk4=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/data/fonts/sarasa-gothic/default.nix b/nixpkgs/pkgs/data/fonts/sarasa-gothic/default.nix
index efd58b348dcd..57c356136748 100644
--- a/nixpkgs/pkgs/data/fonts/sarasa-gothic/default.nix
+++ b/nixpkgs/pkgs/data/fonts/sarasa-gothic/default.nix
@@ -1,14 +1,14 @@
 { lib, fetchurl, libarchive }:
 
 let
-  version = "0.36.0";
+  version = "0.36.1";
 in fetchurl {
   name = "sarasa-gothic-${version}";
 
   # Use the 'ttc' files here for a smaller closure size.
   # (Using 'ttf' files gives a closure size about 15x larger, as of November 2021.)
   url = "https://github.com/be5invis/Sarasa-Gothic/releases/download/v${version}/sarasa-gothic-ttc-${version}.7z";
-  sha256 = "sha256-ENBF7dVFp9lrGGRwNIB0Yg7y1F5XbVivgD2e9pLZQwQ=";
+  sha256 = "sha256-w8PVDvbnHFZF7/X4EzO0IJsEKMC7c+GPng1sn8Q8G14=";
 
   recursiveHash = true;
   downloadToTemp = true;
diff --git a/nixpkgs/pkgs/data/fonts/twitter-color-emoji/default.nix b/nixpkgs/pkgs/data/fonts/twitter-color-emoji/default.nix
index 6cceee558a94..92c01b427e2d 100644
--- a/nixpkgs/pkgs/data/fonts/twitter-color-emoji/default.nix
+++ b/nixpkgs/pkgs/data/fonts/twitter-color-emoji/default.nix
@@ -14,14 +14,14 @@
 }:
 
 let
-  version = "13.0.2";
+  version = "14.0.0";
 
   twemojiSrc = fetchFromGitHub {
     name = "twemoji";
     owner = "twitter";
     repo = "twemoji";
     rev = "v${version}";
-    sha256 = "069pyq09jfzwp3xla8vmhbyyam32x2iyp0s29xcxlkj22p99bg6d";
+    sha256 = "sha256-ar6rBYudMIMngMVe/IowDV3X8wA77JBA6g0x/M7YLMg=";
   };
 
   pythonEnv =
diff --git a/nixpkgs/pkgs/data/fonts/vazir-fonts/default.nix b/nixpkgs/pkgs/data/fonts/vazir-fonts/default.nix
index b2c4f1faa3c5..b8885298c084 100755
--- a/nixpkgs/pkgs/data/fonts/vazir-fonts/default.nix
+++ b/nixpkgs/pkgs/data/fonts/vazir-fonts/default.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "vazir-fonts";
-  version = "30.1.0";
+  version = "32.0.0";
 in fetchFromGitHub {
   name = "${pname}-${version}";
 
@@ -14,7 +14,7 @@ in fetchFromGitHub {
     tar xf $downloadedFile --strip=1
     find . -name '*.ttf' -exec install -m444 -Dt $out/share/fonts/truetype {} \;
   '';
-  sha256 = "sha256-J1l6rBFgaXFtGnK0pH7GbaYTt5TI/OevjZrXmaEgkB4=";
+  sha256 = "sha256-Uy8hgBtCcTLwXu9FkLN1WavUfP74Jf53ChxVGS3UBVM=";
 
   meta = with lib; {
     homepage = "https://github.com/rastikerdar/vazir-font";
diff --git a/nixpkgs/pkgs/data/icons/faba-icon-theme/default.nix b/nixpkgs/pkgs/data/icons/faba-icon-theme/default.nix
index 6ccd4c4622fa..1119e248522a 100644
--- a/nixpkgs/pkgs/data/icons/faba-icon-theme/default.nix
+++ b/nixpkgs/pkgs/data/icons/faba-icon-theme/default.nix
@@ -1,13 +1,12 @@
 { lib, stdenv, fetchFromGitHub, meson, ninja, python3, gtk3, pantheon, gnome-icon-theme, hicolor-icon-theme }:
 
 stdenv.mkDerivation rec {
-  name = "${package-name}-${version}";
-  package-name = "faba-icon-theme";
+  pname = "faba-icon-theme";
   version = "4.3";
 
   src = fetchFromGitHub {
     owner = "moka-project";
-    repo = package-name;
+    repo = "faba-icon-theme";
     rev = "v${version}";
     sha256 = "0xh6ppr73p76z60ym49b4d0liwdc96w41cc5p07d48hxjsa6qd6n";
   };
diff --git a/nixpkgs/pkgs/data/icons/flat-remix-icon-theme/default.nix b/nixpkgs/pkgs/data/icons/flat-remix-icon-theme/default.nix
index 69e18beec32d..a72321ea304c 100644
--- a/nixpkgs/pkgs/data/icons/flat-remix-icon-theme/default.nix
+++ b/nixpkgs/pkgs/data/icons/flat-remix-icon-theme/default.nix
@@ -1,14 +1,14 @@
-{ lib, stdenv, fetchFromGitHub, gtk3, breeze-icons, pantheon, gnome-icon-theme, hicolor-icon-theme }:
+{ lib, stdenvNoCC, fetchFromGitHub, gtk3, breeze-icons, pantheon, gnome-icon-theme, hicolor-icon-theme }:
 
-stdenv.mkDerivation rec  {
+stdenvNoCC.mkDerivation rec  {
   pname = "flat-remix-icon-theme";
-  version = "20211106";
+  version = "20220304";
 
   src = fetchFromGitHub {
     owner = "daniruiz";
     repo = "flat-remix";
     rev = version;
-    sha256 = "1dlz88bg764zzd0s3yqci4m1awhwdrrql9l9plsjjzgdx9r7ndmf";
+    sha256 = "sha256-SE3e3lPGLw6gONVQD8Joj6KNnXC/UygT0fy0AgH8us8=";
   };
 
   nativeBuildInputs = [
@@ -36,7 +36,8 @@ stdenv.mkDerivation rec  {
   meta = with lib; {
     description = "Flat remix is a pretty simple icon theme inspired on material design";
     homepage = "https://drasite.com/flat-remix";
-    license = with licenses; [ gpl3 ];
+    license = with licenses; [ gpl3Only ];
+    # breeze-icons and pantheon.elementary-icon-theme dependencies are restricted to linux
     platforms = platforms.linux;
     maintainers = with maintainers; [ mschneider ];
   };
diff --git a/nixpkgs/pkgs/data/icons/humanity-icon-theme/default.nix b/nixpkgs/pkgs/data/icons/humanity-icon-theme/default.nix
index 12e2d0a06d62..87ec255d9d4a 100644
--- a/nixpkgs/pkgs/data/icons/humanity-icon-theme/default.nix
+++ b/nixpkgs/pkgs/data/icons/humanity-icon-theme/default.nix
@@ -1,12 +1,12 @@
-{ lib, stdenv, fetchurl, gtk3, gnome, hicolor-icon-theme }:
+{ lib, stdenvNoCC, fetchurl, gtk3, gnome, hicolor-icon-theme }:
 
-stdenv.mkDerivation rec {
+stdenvNoCC.mkDerivation rec {
   pname = "humanity-icon-theme";
-  version = "0.6.15";
+  version = "0.6.16";
 
   src = fetchurl {
     url = "https://launchpad.net/ubuntu/+archive/primary/+files/${pname}_${version}.tar.xz";
-    sha256 = "19ja47468s3jfabvakq9wknyfclfr31a9vd11p3mhapfq8jv9g4x";
+    sha256 = "sha256-AyHl4zMyFE2/5Cui3Y/SB1yEUuyafDdybFPrafo4Ki0=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/data/icons/kora-icon-theme/default.nix b/nixpkgs/pkgs/data/icons/kora-icon-theme/default.nix
index 8df63a75ad8d..01572e797612 100644
--- a/nixpkgs/pkgs/data/icons/kora-icon-theme/default.nix
+++ b/nixpkgs/pkgs/data/icons/kora-icon-theme/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec  {
   pname = "kora-icon-theme";
-  version = "1.5.0";
+  version = "1.5.1";
 
   src = fetchFromGitHub  {
     owner = "bikass";
     repo = "kora";
     rev = "v${version}";
-    sha256 = "sha256-kUgNj7KuxsQ/BvQ0ORl3xzEm9gv69+2PS0Bgv8i/S9U=";
+    sha256 = "sha256-3TKjd2Lblb+/zFq7rkdgnD1dJU3kis7QZi7Ui74IWzA=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/data/icons/tango-icon-theme/default.nix b/nixpkgs/pkgs/data/icons/tango-icon-theme/default.nix
index 09d0875ca8a3..9e6b0666a118 100644
--- a/nixpkgs/pkgs/data/icons/tango-icon-theme/default.nix
+++ b/nixpkgs/pkgs/data/icons/tango-icon-theme/default.nix
@@ -3,10 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "tango-icon-theme-0.8.90";
+  pname = "tango-icon-theme";
+  version = "0.8.90";
 
   src = fetchurl {
-    url = "http://tango.freedesktop.org/releases/${name}.tar.gz";
+    url = "http://tango.freedesktop.org/releases/tango-icon-theme-${version}.tar.gz";
     sha256 = "13n8cpml71w6zfm2jz5fa7r1z18qlzk4gv07r6n1in2p5l1xi63f";
   };
 
diff --git a/nixpkgs/pkgs/data/icons/whitesur-icon-theme/default.nix b/nixpkgs/pkgs/data/icons/whitesur-icon-theme/default.nix
index 27465b828a61..c20a3dfe1950 100644
--- a/nixpkgs/pkgs/data/icons/whitesur-icon-theme/default.nix
+++ b/nixpkgs/pkgs/data/icons/whitesur-icon-theme/default.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "Whitesur-icon-theme";
-  version = "2021-11-08";
+  version = "2022-03-18";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "LZ0GLJFUUvzsPhU2sBkfy5mPpQHuPzYhbumwFKnogoA=";
+    sha256 = "iHLxZqcDLUo62J67MwZ72CSvsHHiI9/Jk31KwkgIPr4=";
   };
 
   nativeBuildInputs = [ gtk3 ];
diff --git a/nixpkgs/pkgs/data/misc/brise/default.nix b/nixpkgs/pkgs/data/misc/brise/default.nix
index f4e1a6d2905f..45f86f6be21c 100644
--- a/nixpkgs/pkgs/data/misc/brise/default.nix
+++ b/nixpkgs/pkgs/data/misc/brise/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub, librime }:
 
 stdenv.mkDerivation {
-  name = "brise-unstable-2017-09-16";
+  pname = "brise";
+  version = "unstable-2017-09-16";
 
   src = fetchFromGitHub {
     owner = "rime";
diff --git a/nixpkgs/pkgs/data/misc/miscfiles/default.nix b/nixpkgs/pkgs/data/misc/miscfiles/default.nix
index 783dc29ecb2d..ad58e5bd7b79 100644
--- a/nixpkgs/pkgs/data/misc/miscfiles/default.nix
+++ b/nixpkgs/pkgs/data/misc/miscfiles/default.nix
@@ -1,10 +1,11 @@
 {lib, stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "miscfiles-1.5";
+  pname = "miscfiles";
+  version = "1.5";
 
   src = fetchurl {
-    url = "mirror://gnu/miscfiles/${name}.tar.gz";
+    url = "mirror://gnu/miscfiles/miscfiles-${version}.tar.gz";
     sha256 = "005588vfrwx8ghsdv9p7zczj9lbc9a3r4m5aphcaqv8gif4siaka";
   };
 
diff --git a/nixpkgs/pkgs/data/misc/mobile-broadband-provider-info/default.nix b/nixpkgs/pkgs/data/misc/mobile-broadband-provider-info/default.nix
index 51598a53d50a..234016175d26 100644
--- a/nixpkgs/pkgs/data/misc/mobile-broadband-provider-info/default.nix
+++ b/nixpkgs/pkgs/data/misc/mobile-broadband-provider-info/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mobile-broadband-provider-info";
-  version = "20210805";
+  version = "20220315";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-a/ihVY6lVBr7xve0QV50zJ9aqYKbE07Ks+8ch0ElaLw=";
+    sha256 = "sha256-H82sctF52xQnl4Nm9wG+HDx1Nf1aZYvFzIKCR8b2RcY=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/data/misc/shared-desktop-ontologies/default.nix b/nixpkgs/pkgs/data/misc/shared-desktop-ontologies/default.nix
index 88f9eec8fcad..fd797d8d63f0 100644
--- a/nixpkgs/pkgs/data/misc/shared-desktop-ontologies/default.nix
+++ b/nixpkgs/pkgs/data/misc/shared-desktop-ontologies/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, cmake }:
 
 stdenv.mkDerivation rec {
-  name = "shared-desktop-ontologies-0.11.0";
+  pname = "shared-desktop-ontologies";
+  version = "0.11.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/oscaf/${name}.tar.bz2";
+    url = "mirror://sourceforge/oscaf/shared-desktop-ontologies-${version}.tar.bz2";
     sha256 = "1m5vnijg7rnwg41vig2ckg632dlczzdab1gsq51g4x7m9k1fdbw2";
   };
 
diff --git a/nixpkgs/pkgs/data/misc/v2ray-domain-list-community/default.nix b/nixpkgs/pkgs/data/misc/v2ray-domain-list-community/default.nix
index 1115edabcec7..d6fe1a100e7f 100644
--- a/nixpkgs/pkgs/data/misc/v2ray-domain-list-community/default.nix
+++ b/nixpkgs/pkgs/data/misc/v2ray-domain-list-community/default.nix
@@ -3,12 +3,12 @@
 let
   generator = pkgsBuildBuild.buildGoModule rec {
     pname = "v2ray-domain-list-community";
-    version = "20220201175515";
+    version = "20220324104603";
     src = fetchFromGitHub {
       owner = "v2fly";
       repo = "domain-list-community";
       rev = version;
-      sha256 = "sha256-vgw6i8djBQDV+fmkVe5CuKMwES/PXGoVe8cTgB5tflo=";
+      sha256 = "sha256-Bd/jwHZ+6cg/cgVggyFI+Nc0FZ9qxI5Rk+y7SmGB08M=";
     };
     vendorSha256 = "sha256-QUbnUnxG1tsNbR49HTl55aiLkBM/ae9mCtzWeN4Ju78=";
     meta = with lib; {
diff --git a/nixpkgs/pkgs/data/misc/v2ray-geoip/default.nix b/nixpkgs/pkgs/data/misc/v2ray-geoip/default.nix
index b92014b30e06..1e0d35d52000 100644
--- a/nixpkgs/pkgs/data/misc/v2ray-geoip/default.nix
+++ b/nixpkgs/pkgs/data/misc/v2ray-geoip/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "v2ray-geoip";
-  version = "202203100039";
+  version = "202203240042";
 
   src = fetchFromGitHub {
     owner = "v2fly";
     repo = "geoip";
-    rev = "564c2c8de36d3680a1d5f209d6bb05e4f3f70dfc";
-    sha256 = "sha256-JPpzIppgKQox8T6VC/kzhpLy+YAcuHdH5L6zqciOXow=";
+    rev = "d7ff77f883216595a4b6674e9507f305195dcda3";
+    sha256 = "sha256-wSm24nXz4QIM8e7Z8d08NjluLaBWEdl09FNAL3GR9so=";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/data/soundfonts/generaluser/default.nix b/nixpkgs/pkgs/data/soundfonts/generaluser/default.nix
new file mode 100644
index 000000000000..5191199e6471
--- /dev/null
+++ b/nixpkgs/pkgs/data/soundfonts/generaluser/default.nix
@@ -0,0 +1,25 @@
+{ lib, stdenv, fetchzip }:
+
+stdenv.mkDerivation rec {
+  pname = "generaluser";
+  version = "1.471";
+
+  # we can't use fetchurl since stdenv does not handle unpacking *.zip's by default.
+  src = fetchzip {
+    # Linked on http://www.schristiancollins.com/generaluser.php:
+    url = "https://www.dropbox.com/s/4x27l49kxcwamp5/GeneralUser_GS_${version}.zip";
+    sha256 = "sha256-lwUlWubXiVZ8fijKuNF54YQjT0uigjNAbjKaNjmC51s=";
+  };
+
+  installPhase = ''
+    install -Dm644 GeneralUser*.sf2 $out/share/soundfonts/GeneralUser-GS.sf2
+  '';
+
+  meta = with lib; {
+    description = "a SoundFont bank featuring 259 instrument presets and 11 drum kits";
+    homepage = "http://www.schristiancollins.com/generaluser.php";
+    license = licenses.generaluser;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ ckie ];
+  };
+}
diff --git a/nixpkgs/pkgs/data/themes/arc/default.nix b/nixpkgs/pkgs/data/themes/arc/default.nix
index ea18da119c7e..11e76c202764 100644
--- a/nixpkgs/pkgs/data/themes/arc/default.nix
+++ b/nixpkgs/pkgs/data/themes/arc/default.nix
@@ -3,36 +3,33 @@
 , sassc
 , meson
 , ninja
-, pkg-config
-, gtk3
 , glib
 , gnome
 , gtk-engine-murrine
-, optipng
 , inkscape
 , cinnamon
+, makeFontsConf
+, python3
 }:
 
 stdenv.mkDerivation rec {
   pname = "arc-theme";
-  version = "20211018";
+  version = "20220223";
 
   src = fetchFromGitHub {
     owner = "jnsh";
     repo = pname;
     rev = version;
-    sha256 = "1rrxm5b7l8kq1h0lm08ck54xljzm8w573mxx904n3rhdg3ri9d63";
+    sha256 = "sha256-qsZdXDNxT1/gIlkUsC1cfVrULApC+dHreBXXjVTJQiA=";
   };
 
   nativeBuildInputs = [
     meson
     ninja
-    pkg-config
     sassc
-    optipng
     inkscape
-    gtk3
     glib # for glib-compile-resources
+    python3
   ];
 
   propagatedUserEnvPkgs = [
@@ -40,17 +37,23 @@ stdenv.mkDerivation rec {
     gtk-engine-murrine
   ];
 
+  postPatch = ''
+    patchShebangs meson/install-file.py
+  '';
+
   preBuild = ''
     # Shut up inkscape's warnings about creating profile directory
-    export HOME="$NIX_BUILD_ROOT"
+    export HOME="$TMPDIR"
   '';
 
+  # Fontconfig error: Cannot load default config file: No such file: (null)
+  FONTCONFIG_FILE = makeFontsConf { fontDirectories = [ ]; };
+
   mesonFlags = [
-    "-Dthemes=cinnamon,gnome-shell,gtk2,gtk3,plank,xfwm,metacity"
-    "-Dvariants=light,darker,dark,lighter"
+    # "-Dthemes=cinnamon,gnome-shell,gtk2,gtk3,plank,xfwm,metacity"
+    # "-Dvariants=light,darker,dark,lighter"
     "-Dcinnamon_version=${cinnamon.cinnamon-common.version}"
     "-Dgnome_shell_version=${gnome.gnome-shell.version}"
-    "-Dgtk3_version=${gtk3.version}"
     # You will need to patch gdm to make use of this.
     "-Dgnome_shell_gresource=true"
   ];
diff --git a/nixpkgs/pkgs/data/themes/dracula-theme/default.nix b/nixpkgs/pkgs/data/themes/dracula-theme/default.nix
index cb6fc84723f2..326e004070b3 100644
--- a/nixpkgs/pkgs/data/themes/dracula-theme/default.nix
+++ b/nixpkgs/pkgs/data/themes/dracula-theme/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/themes/${themeName}
-    cp -a {assets,cinnamon,gnome-shell,gtk-2.0,gtk-3.0,gtk-3.20,index.theme,metacity-1,unity,xfwm4} $out/share/themes/${themeName}
+    cp -a {assets,cinnamon,gnome-shell,gtk-2.0,gtk-3.0,gtk-3.20,gtk-4.0,index.theme,metacity-1,unity,xfwm4} $out/share/themes/${themeName}
 
     cp -a kde/{color-schemes,plasma} $out/share/
     cp -a kde/kvantum $out/share/Kvantum
diff --git a/nixpkgs/pkgs/data/themes/flat-remix-gtk/default.nix b/nixpkgs/pkgs/data/themes/flat-remix-gtk/default.nix
index fec900a2d7e7..ec76d48457c5 100644
--- a/nixpkgs/pkgs/data/themes/flat-remix-gtk/default.nix
+++ b/nixpkgs/pkgs/data/themes/flat-remix-gtk/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flat-remix-gtk";
-  version = "20220310";
+  version = "20220321";
 
   src = fetchFromGitHub {
     owner = "daniruiz";
     repo = pname;
     rev = version;
-    sha256 = "sha256-fKkqMGb1UopjM7hTTury1I3oD5AlHqKP+WLmgAZIQxo=";
+    sha256 = "sha256-QFG/jh3tPO0eflyDQaC1PJL/SavYD/W6rYp26Rxe/2E=";
   };
 
   dontBuild = true;
diff --git a/nixpkgs/pkgs/data/themes/graphite-gtk-theme/default.nix b/nixpkgs/pkgs/data/themes/graphite-gtk-theme/default.nix
index 0c9bae8ac31e..132e2e9c3762 100644
--- a/nixpkgs/pkgs/data/themes/graphite-gtk-theme/default.nix
+++ b/nixpkgs/pkgs/data/themes/graphite-gtk-theme/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenvNoCC
 , fetchFromGitHub
+, gitUpdater
 , gnome-themes-extra
 , gtk-engine-murrine
 , jdupes
@@ -21,18 +22,18 @@ in
 lib.checkListOfEnum "${pname}: theme variants" [ "default" "purple" "pink" "red" "orange" "yellow" "green" "teal" "blue" "all" ] themeVariants
 lib.checkListOfEnum "${pname}: color variants" [ "standard" "light" "dark" ] colorVariants
 lib.checkListOfEnum "${pname}: size variants" [ "standard" "compact" ] sizeVariants
-lib.checkListOfEnum "${pname}: tweaks" [ "nord" "black" "midblack" "rimless" "normal" ] tweaks
+lib.checkListOfEnum "${pname}: tweaks" [ "nord" "black" "dark" "rimless" "normal" ] tweaks
 lib.checkListOfEnum "${pname}: grub screens" [ "1080p" "2k" "4k" ] grubScreens
 
-stdenvNoCC.mkDerivation {
+stdenvNoCC.mkDerivation rec {
   inherit pname;
-  version = "unstable-2022-02-04";
+  version = "2022-03-22";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = "7ab6a1b7eda81e914405a9931408b1d5c73e6891";
-    sha256 = "09xixd6cz2iyyyg6vskyk0wj2mahfsg21dlfcvi862h8w01hg9lr";
+    sha256 = "maYHA+AICoPiZo62IJ52UFUhOZh+6m2e9z6Kz0zrsSc=";
   };
 
   nativeBuildInputs = [
@@ -85,6 +86,8 @@ stdenvNoCC.mkDerivation {
     runHook postInstall
   '';
 
+  passthru.updateScript = gitUpdater { inherit pname version; };
+
   meta = with lib; {
     description = "Flat Gtk+ theme based on Elegant Design";
     homepage = "https://github.com/vinceliuice/Graphite-gtk-theme";
diff --git a/nixpkgs/pkgs/data/themes/greybird/default.nix b/nixpkgs/pkgs/data/themes/greybird/default.nix
index 06496ea9be14..a52c0d0357bc 100644
--- a/nixpkgs/pkgs/data/themes/greybird/default.nix
+++ b/nixpkgs/pkgs/data/themes/greybird/default.nix
@@ -1,14 +1,25 @@
-{ lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config, sassc, gdk-pixbuf, librsvg, gtk-engine-murrine }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, meson
+, ninja
+, pkg-config
+, sassc
+, gdk-pixbuf
+, librsvg
+, gtk-engine-murrine
+, gitUpdater
+}:
 
 stdenv.mkDerivation rec {
   pname = "greybird";
-  version = "3.22.15";
+  version = "3.23.1";
 
   src = fetchFromGitHub {
     owner = "shimmerproject";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1fk66fxy2lif9ngazlgkpsziw216i4b1ld2zm97cadf7n97376g9";
+    sha256 = "hfi2TBRrZTSN43tYKMPvb/dWwwUE7RakKTMBziHnCWA=";
   };
 
   nativeBuildInputs = [
@@ -27,6 +38,8 @@ stdenv.mkDerivation rec {
     gtk-engine-murrine
   ];
 
+  passthru.updateScript = gitUpdater { inherit pname version; rev-prefix = "v"; };
+
   meta = with lib; {
     description = "Grey and blue theme from the Shimmer Project for GTK-based environments";
     homepage = "https://github.com/shimmerproject/Greybird";
diff --git a/nixpkgs/pkgs/data/themes/kwin-decorations/kde-rounded-corners/default.nix b/nixpkgs/pkgs/data/themes/kwin-decorations/kde-rounded-corners/default.nix
index 06b0e32d1b7a..b77c136e4067 100644
--- a/nixpkgs/pkgs/data/themes/kwin-decorations/kde-rounded-corners/default.nix
+++ b/nixpkgs/pkgs/data/themes/kwin-decorations/kde-rounded-corners/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "kde-rounded-corners";
-  version = "unstable-2021-11-06";
+  version = "0.1.1";
 
   src = fetchFromGitHub {
     owner = "matinlotfali";
     repo = "KDE-Rounded-Corners";
-    rev = "8ad8f5f5eff9d1625abc57cb24dc484d51f0e1bd";
-    sha256 = "0xbskf7jd03d2invfz1nnfc82klzvc784snw539n4kn6c6rc381p";
+    rev = "v${version}";
+    hash = "sha256-cXpJabeOHnat7OljtRzduUdOaA6Z3z6vV3aBKwiIrR0=";
   };
 
   postConfigure = ''
diff --git a/nixpkgs/pkgs/data/themes/yaru/default.nix b/nixpkgs/pkgs/data/themes/yaru/default.nix
index eb62da715ce9..67762e747f4a 100644
--- a/nixpkgs/pkgs/data/themes/yaru/default.nix
+++ b/nixpkgs/pkgs/data/themes/yaru/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "yaru";
-  version = "22.04.1";
+  version = "22.04.2";
 
   src = fetchFromGitHub {
     owner = "ubuntu";
     repo = "yaru";
     rev = version;
-    sha256 = "sha256-5mB5eTIPw4CqYSQm675MKbRwsYLpg+5WJrLDkbc6nKs=";
+    sha256 = "sha256-oW5OOJPhC3OB3GIQWTQxPgqE7p4bAO1TyVbyKUHnyD0=";
   };
 
   nativeBuildInputs = [ meson sassc pkg-config glib ninja python3 ];
diff --git a/nixpkgs/pkgs/desktops/arcan/arcan/clone-sources.nix b/nixpkgs/pkgs/desktops/arcan/arcan/clone-sources.nix
index 2ade63e70bfa..c7c6bebb704a 100644
--- a/nixpkgs/pkgs/desktops/arcan/arcan/clone-sources.nix
+++ b/nixpkgs/pkgs/desktops/arcan/arcan/clone-sources.nix
@@ -11,7 +11,7 @@
     rev = "94cb3a2eb96b3f17a1a3bd0e6f7da97c0e1d8f57";
     sha256 = "sha256-LzjqunX/T8khF2UjPlPYiQOwMGem8MqPYneR2LdZ5Fg=";
   };
-  libuvc-src = fetchgit {
+  libuvc-src = fetchFromGitHub {
     owner = "libuvc";
     repo = "libuvc";
     rev = "b2b01ae6a2875d05c99eb256bb15815018d6e837";
diff --git a/nixpkgs/pkgs/desktops/arcan/durden/default.nix b/nixpkgs/pkgs/desktops/arcan/durden/default.nix
index b5fc02127ece..46012d69d2dd 100644
--- a/nixpkgs/pkgs/desktops/arcan/durden/default.nix
+++ b/nixpkgs/pkgs/desktops/arcan/durden/default.nix
@@ -5,15 +5,19 @@
 
 stdenv.mkDerivation rec {
   pname = "durden";
-  version = "0.6.1+date=2021-10-17";
+  version = "0.6.1+date=2022-03-11";
 
   src = fetchFromGitHub {
     owner = "letoram";
     repo = pname;
-    rev = "5fb8b0f9bc2952ed9cf7dc20a1c5c0cc44c02ff1";
-    hash = "sha256-+EIsrCkMe9MrUQOCh0R+rsDg/Rqs3iQWO0GZCgZQ+No=";
+    rev = "fec2a1051500df28becce188d932645743091efa";
+    hash = "sha256-uZ7oTnkWG3P/4ETgn6MQ9v47mRAJnvyzglQS7jlabPA=";
   };
 
+  dontConfigure = true;
+
+  dontBuild = true;
+
   installPhase = ''
     runHook preInstall
 
diff --git a/nixpkgs/pkgs/desktops/arcan/pipeworld/default.nix b/nixpkgs/pkgs/desktops/arcan/pipeworld/default.nix
index fa1a09230d9d..09f809aa4718 100644
--- a/nixpkgs/pkgs/desktops/arcan/pipeworld/default.nix
+++ b/nixpkgs/pkgs/desktops/arcan/pipeworld/default.nix
@@ -5,15 +5,19 @@
 
 stdenv.mkDerivation rec {
   pname = "pipeworld";
-  version = "0.pre+date=2021-11-26";
+  version = "0.pre+date=2021-12-03";
 
   src = fetchFromGitHub {
     owner = "letoram";
     repo = pname;
-    rev = "9f816db154ca5c54af952ad11c2186ccac5bdd2d";
-    hash = "sha256-uwnrRsMP0RLEGr2mEVQ6kEtV/c6t5qSCHY0ynywPzkw=";
+    rev = "c653414670cafb0c73a57492aa3d9510460b16a9";
+    hash = "sha256-XuAsuTC+P6yoNlDnsT2fiWoqKW+1JKc9NF+Vn/ta0pk=";
   };
 
+  dontConfigure = true;
+
+  dontBuild = true;
+
   installPhase = ''
     runHook preInstall
 
diff --git a/nixpkgs/pkgs/desktops/arcan/prio/default.nix b/nixpkgs/pkgs/desktops/arcan/prio/default.nix
index 34443baa8017..406aea740fc4 100644
--- a/nixpkgs/pkgs/desktops/arcan/prio/default.nix
+++ b/nixpkgs/pkgs/desktops/arcan/prio/default.nix
@@ -5,7 +5,7 @@
 
 stdenv.mkDerivation rec {
   pname = "prio";
-  version = "0.pre+unstable=2018-09-13";
+  version = "0.pre+date=2018-09-13";
 
   src = fetchFromGitHub {
     owner = "letoram";
@@ -14,6 +14,10 @@ stdenv.mkDerivation rec {
     hash = "sha256-Idv/duEYmDk/rO+TI8n+FY3VFDtUEh8C292jh12BJuM=";
   };
 
+  dontConfigure = true;
+
+  dontBuild = true;
+
   installPhase = ''
     runHook preInstall
 
diff --git a/nixpkgs/pkgs/desktops/arcan/xarcan/default.nix b/nixpkgs/pkgs/desktops/arcan/xarcan/default.nix
index d72bf4ad5bb3..0668754d6aa4 100644
--- a/nixpkgs/pkgs/desktops/arcan/xarcan/default.nix
+++ b/nixpkgs/pkgs/desktops/arcan/xarcan/default.nix
@@ -38,23 +38,15 @@
 
 stdenv.mkDerivation rec {
   pname = "xarcan";
-  version = "0.6.0+unstable=2021-06-14";
+  version = "0.6.0+date=2021-08-26";
 
   src = fetchFromGitHub {
     owner = "letoram";
     repo = pname;
-    rev = "98d28a5f2c6860bb191fbc1c9e577c18e4c9a9b7";
-    hash = "sha256-UTIVDKnYD/q0K6G7NJUKh1tHcqnsuiJ/cQxWuPMJ2G4=";
+    rev = "e40f0176e495ffdad6e7405c58378df6532eb70d";
+    hash = "sha256-T+1oL7P5MTDkeSfW6OXc1OgfZ8E6e/4YRonf1eXcfIA=";
   };
 
-  patches = [
-    # fix build with meson 0.60
-    (fetchpatch {
-      url = "https://github.com/letoram/xarcan/commit/b67e514dbb59bffc23b75d47ca7f24e96c4aeb05.patch";
-      sha256 = "sha256-tSQmNy1Id6nDIN+03dc1+rEEF8fMq0yJBiscNM60xic=";
-    })
-  ];
-
   nativeBuildInputs = [
     meson
     ninja
@@ -122,6 +114,6 @@ stdenv.mkDerivation rec {
     '';
     license = licenses.mit;
     maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.all;
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/desktops/enlightenment/terminology/default.nix b/nixpkgs/pkgs/desktops/enlightenment/terminology/default.nix
index a2e4f717f481..7b3ffe2f1124 100644
--- a/nixpkgs/pkgs/desktops/enlightenment/terminology/default.nix
+++ b/nixpkgs/pkgs/desktops/enlightenment/terminology/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, python3, efl }:
+{ lib, stdenv, fetchurl, meson, ninja, pkg-config, python3, efl, nixosTests }:
 
 stdenv.mkDerivation rec {
   pname = "terminology";
@@ -24,6 +24,8 @@ stdenv.mkDerivation rec {
     patchShebangs data/colorschemes/*.py
   '';
 
+  passthru.tests.test = nixosTests.terminal-emulators.terminology;
+
   meta = with lib; {
     description = "Powerful terminal emulator based on EFL";
     homepage = "https://www.enlightenment.org/about-terminology";
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/file-roller/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/file-roller/default.nix
index c4c489dae08e..df8e9548c35e 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/file-roller/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/file-roller/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchurl
-, fetchpatch
 , desktop-file-utils
 , gettext
 , glibcLocales
@@ -17,33 +16,23 @@
 , glib
 , gnome
 , gtk3
+, libhandy
 , json-glib
 , libarchive
 , libnotify
 , nautilus
-, pantheon
 , unzip
-, withPantheon ? false
 }:
 
 stdenv.mkDerivation rec {
   pname = "file-roller";
-  version = "3.40.0";
+  version = "3.42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "039w1dcpa5ypmv6sm634alk9vbcdkyvy595vkh5gn032jsiqca2a";
+    sha256 = "HEOObVPsEP9PLrWyLXu/KKfCqElXq2SnUcHN88UjAsc=";
   };
 
-  patches = lib.optionals withPantheon [
-    # Make this respect dark mode settings from Pantheon
-    # https://github.com/elementary/fileroller/
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/elementary/fileroller/f183eac36c68c9c9441e72294d4e305cf5fe36ed/fr-application-prefers-color-scheme.patch";
-      sha256 = "sha256-d/sqf4Oen9UrzYqru7Ck15o/6g6WfxRDH/iAGFXgYAA=";
-    })
-  ];
-
   LANG = "en_US.UTF-8"; # postinstall.py
 
   nativeBuildInputs = [
@@ -65,12 +54,11 @@ stdenv.mkDerivation rec {
     glib
     gnome.adwaita-icon-theme
     gtk3
+    libhandy
     json-glib
     libarchive
     libnotify
     nautilus
-  ] ++ lib.optionals withPantheon [
-    pantheon.granite
   ];
 
   PKG_CONFIG_LIBNAUTILUS_EXTENSION_EXTENSIONDIR = "${placeholder "out"}/lib/nautilus/extensions-3.0";
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/ghex/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/ghex/default.nix
index d12c8f61017c..1ec3c9dfdf27 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/ghex/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/ghex/default.nix
@@ -1,7 +1,9 @@
 { stdenv
 , lib
 , fetchurl
+, fetchpatch
 , pkg-config
+, gi-docgen
 , meson
 , ninja
 , python3
@@ -11,23 +13,38 @@
 , gettext
 , itstool
 , libxml2
-, gtk3
+, gtk4
 , glib
 , atk
+, gobject-introspection
 , wrapGAppsHook
 }:
 
 stdenv.mkDerivation rec {
   pname = "ghex";
-  version = "3.41.1";
+  version = "4.beta.1";
 
-  outputs = [ "out" "dev" ];
+  outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/ghex/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "i3nPAJ6uXEfK0KtT4hmcOm+y86thh381m+1SR3DuYfc=";
+    url = "mirror://gnome/sources/ghex/${version}/${pname}-${version}.tar.xz";
+    sha256 = "sBS/9cY++uHLGCbLeex8ZW697JJn3dK+HaM6tHBdwJ4=";
   };
 
+  patches = [
+    # Fix build with -Werror=format-security
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/ghex/-/commit/3d35359f3a12b6abb4a3d8a12a0f39b7221be408.patch";
+      sha256 = "4z9nUd+/eBOUGwl3MErse+FKLzGqtWKwkIzej57CnYk=";
+    })
+    # Build devhelp index.
+    # https://gitlab.gnome.org/GNOME/ghex/-/merge_requests/25
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/ghex/-/commit/b26a7b1135ea2fe956a9bc0669b3b6ed818716c3.patch";
+      sha256 = "nYjjxds9GNWkW/RhXEe5zJzPF4TnLMsCELEqYR4dXTk=";
+    })
+  ];
+
   nativeBuildInputs = [
     desktop-file-utils
     gettext
@@ -35,12 +52,14 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
+    gi-docgen
     python3
+    gobject-introspection
     wrapGAppsHook
   ];
 
   buildInputs = [
-    gtk3
+    gtk4
     atk
     glib
   ];
@@ -50,9 +69,18 @@ stdenv.mkDerivation rec {
     desktop-file-utils
   ];
 
+  mesonFlags = [
+    "-Dgtk_doc=true"
+  ];
+
   postPatch = ''
-     chmod +x meson_post_install.py
-     patchShebangs meson_post_install.py
+    chmod +x meson_post_install.py
+    patchShebangs meson_post_install.py
+  '';
+
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
   '';
 
   passthru = {
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-boxes/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-boxes/default.nix
index 29b08aa3c1ed..7853a80f073d 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-boxes/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-boxes/default.nix
@@ -55,11 +55,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-boxes";
-  version = "41.3";
+  version = "42.0.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "m4QGgNHnOG/d/WoVrU3Q8s2ljv6BjPVHg3tGrovw4Yk=";
+    sha256 = "GuIS/4mZFVQuxTtU2VtozfJx2VjPUSzcP+3Hgixu4SM=";
   };
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-calendar/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-calendar/default.nix
index db353165c28d..10267a6c8701 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-calendar/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-calendar/default.nix
@@ -1,47 +1,32 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
-, libdazzle
+, wrapGAppsHook4
 , libgweather
 , geoclue2
 , geocode-glib
-, python3
 , gettext
 , libxml2
 , gnome
-, gtk3
+, gtk4
 , evolution-data-server
+, libical
 , libsoup
 , glib
-, gnome-online-accounts
 , gsettings-desktop-schemas
-, libhandy
-, adwaita-icon-theme
+, libadwaita
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-calendar";
-  version = "41.2";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "lWsvGQMiZRxn/mZyI4lviqWs8ztwraWjsFpTYb2mYRo=";
-  };
-
-  patches = [
-    # https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/84
-    # A refactor has caused the PR patch to drift enough to need rebasing
-    ./gtk_image_reset_crash.patch
-  ];
-
-  passthru = {
-    updateScript = gnome.updateScript {
-      packageName = pname;
-      attrPath = "gnome.${pname}";
-    };
+    sha256 = "tj9z9VAy/BOQRC+UzfazyrnJHHdN3S5cYez+ydLF6ao=";
   };
 
   nativeBuildInputs = [
@@ -50,35 +35,34 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     libxml2
-    wrapGAppsHook
-    python3
+    wrapGAppsHook4
   ];
 
   buildInputs = [
-    gtk3
-    evolution-data-server
+    gtk4
+    evolution-data-server # waiting for GTK4 port
+    libical
     libsoup
     glib
-    gnome-online-accounts
-    libdazzle
     libgweather
     geoclue2
     geocode-glib
     gsettings-desktop-schemas
-    adwaita-icon-theme
-    libhandy
+    libadwaita
   ];
 
-  postPatch = ''
-    chmod +x build-aux/meson/meson_post_install.py # patchShebangs requires executable file
-    patchShebangs build-aux/meson/meson_post_install.py
-  '';
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      attrPath = "gnome.${pname}";
+    };
+  };
 
   meta = with lib; {
     homepage = "https://wiki.gnome.org/Apps/Calendar";
     description = "Simple and beautiful calendar application for GNOME";
     maintainers = teams.gnome.members;
-    license = licenses.gpl3;
+    license = licenses.gpl3Plus;
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-calendar/gtk_image_reset_crash.patch b/nixpkgs/pkgs/desktops/gnome/apps/gnome-calendar/gtk_image_reset_crash.patch
deleted file mode 100644
index 5065295b57b7..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-calendar/gtk_image_reset_crash.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/src/gui/views/gcal-year-view.c b/src/gui/views/gcal-year-view.c
-index ac32a8f9..532425c1 100644
---- a/src/gui/views/gcal-year-view.c
-+++ b/src/gui/views/gcal-year-view.c
-@@ -2158,7 +2158,11 @@ update_weather (GcalYearView *self)
-   if (!updated)
-     {
-       gtk_label_set_text (self->temp_label, "");
--      gtk_image_clear (self->weather_icon);
-+      /* FIXME: This should never be NULL, but it somehow is.
-+       * https://gitlab.gnome.org/GNOME/gnome-calendar/issues/299
-+       */
-+      if (self->weather_icon != NULL)
-+        gtk_image_clear (self->weather_icon);
-     }
- }
- 
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-characters/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-characters/default.nix
index 960a3320472d..b43e0cdecadf 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-characters/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-characters/default.nix
@@ -7,26 +7,26 @@
 , gettext
 , gnome
 , glib
-, gtk3
+, gtk4
 , pango
-, wrapGAppsHook
+, wrapGAppsHook4
 , python3
+, desktop-file-utils
 , gobject-introspection
 , gjs
 , libunistring
-, libhandy
+, libadwaita
 , gsettings-desktop-schemas
-, adwaita-icon-theme
 , gnome-desktop
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-characters";
-  version = "41.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-characters/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "0yw6mimfwn0fij8zncjb4rg8bnazd1z47rmzq85lk6807nlyqag1";
+    sha256 = "XaD/uBb4prRPMDdEyoJ6NAgBGMHJONjXmvF7f+Z5gPg=";
   };
 
   nativeBuildInputs = [
@@ -36,39 +36,39 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     python3
-    wrapGAppsHook
+    desktop-file-utils
+    wrapGAppsHook4
   ];
 
 
   buildInputs = [
-    adwaita-icon-theme
     gjs
     glib
     gnome-desktop # for typelib
     gsettings-desktop-schemas
-    gtk3
+    gtk4
     libunistring
-    libhandy
+    libadwaita
     pango
   ];
 
   postPatch = ''
     chmod +x meson_post_install.py # patchShebangs requires executable file
     patchShebangs meson_post_install.py
+
+    # https://gitlab.gnome.org/GNOME/gnome-characters/-/merge_requests/70
+    substituteInPlace meson_post_install.py \
+      --replace "gtk-update-icon-cache" "gtk4-update-icon-cache"
   '';
 
   dontWrapGApps = true;
 
-  # Fixes https://github.com/NixOS/nixpkgs/issues/31168
   postFixup = ''
-    for file in $out/share/org.gnome.Characters/org.gnome.Characters \
-       $out/share/org.gnome.Characters/org.gnome.Characters.BackgroundService
-    do
-      sed -e $"2iimports.package._findEffectiveEntryPointName = () => \'$(basename $file)\' " \
-        -i $file
-
-      wrapGApp "$file"
-    done
+    # Fixes https://github.com/NixOS/nixpkgs/issues/31168
+    file="$out/share/org.gnome.Characters/org.gnome.Characters"
+    sed -e $"2iimports.package._findEffectiveEntryPointName = () => \'$(basename $file)\' " \
+      -i $file
+    wrapGApp "$file"
   '';
 
   passthru = {
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-clocks/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-clocks/default.nix
index 2e8ec02bd845..3c57c6272e84 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-clocks/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-clocks/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
 , meson
 , ninja
@@ -7,35 +8,34 @@
 , wrapGAppsHook
 , itstool
 , desktop-file-utils
-, vala
+, vala_0_56
 , gobject-introspection
 , libxml2
-, gtk3
+, gtk4
 , glib
 , gsound
 , sound-theme-freedesktop
 , gsettings-desktop-schemas
-, adwaita-icon-theme
 , gnome-desktop
 , geocode-glib
 , gnome
 , gdk-pixbuf
 , geoclue2
 , libgweather
-, libhandy
+, libadwaita
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-clocks";
-  version = "41.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-clocks/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "34yLBKuS+mGPXe5RGFce+fyeilt5XqAKNcbcZ3ywLaw=";
+    sha256 = "DnEY20oDLjzqMhLZjLuCjWt88i/gXgxfyLORxqPdb+A=";
   };
 
   nativeBuildInputs = [
-    vala
+    vala_0_56
     meson
     ninja
     pkg-config
@@ -48,17 +48,16 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    gtk3
+    gtk4
     glib
     gsettings-desktop-schemas
     gdk-pixbuf
-    adwaita-icon-theme
     gnome-desktop
     geocode-glib
     geoclue2
     libgweather
     gsound
-    libhandy
+    libadwaita
   ];
 
   preFixup = ''
@@ -81,7 +80,7 @@ stdenv.mkDerivation rec {
     homepage = "https://wiki.gnome.org/Apps/Clocks";
     description = "Clock application designed for GNOME 3";
     maintainers = teams.gnome.members;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-connections/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-connections/default.nix
index 83e88059f806..b8517a833b00 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-connections/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-connections/default.nix
@@ -4,7 +4,7 @@
 , meson
 , ninja
 , pkg-config
-, vala
+, vala_0_56
 , gettext
 , itstool
 , python3
@@ -14,6 +14,7 @@
 , glib
 , gtk3
 , libhandy
+, libsecret
 , libxml2
 , gtk-vnc
 , gtk-frdp
@@ -22,18 +23,18 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-connections";
-  version = "41.2";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    hash = "sha256-WrmUKPPOn4qDdDK2e3XbxSi5U6QpOotWVE34g0b+VxM=";
+    hash = "sha256-L3s5u0OPS2oM3Jn2JjGpXbI+W7JC7Gg5pMlQKchwJO0=";
   };
 
   nativeBuildInputs = [
     meson
     ninja
     pkg-config
-    vala
+    vala_0_56
     gettext
     itstool
     python3
@@ -48,6 +49,7 @@ stdenv.mkDerivation rec {
     gtk-vnc
     gtk3
     libhandy
+    libsecret
     libxml2
     gtk-frdp
   ];
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-maps/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-maps/default.nix
index 5d90cefdff39..0efb5faa3c71 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-maps/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-maps/default.nix
@@ -1,5 +1,7 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
+, fetchpatch
 , meson
 , ninja
 , gettext
@@ -29,13 +31,22 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-maps";
-  version = "41.4";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-40CxP0b+C31bD48BQTKR3c2HDHSlw4+iTKwfWF5wOT4=";
+    sha256 = "sha256-BUSG03dAc3BqdqmBQXl40VG+O3Ik1yN3W74xbvoked8=";
   };
 
+  patches = [
+    # Do not pin to GWeather 3.0, the used API did not change in 4.0.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-maps/-/commit/759d3087b70341b2c5f1af575ce44338d926690e.patch";
+      sha256 = "Qp9Hta00TLf2lOb9+g9vnPoK17mP3eHpCG2i1ewaw+w=";
+      revert = true;
+    })
+  ];
+
   doCheck = true;
 
   nativeBuildInputs = [
@@ -78,7 +89,7 @@ stdenv.mkDerivation rec {
     # entry point to the wrapped binary we get back to a wrapped
     # binary.
     substituteInPlace "data/org.gnome.Maps.service.in" \
-        --replace "Exec=@pkgdatadir@/org.gnome.Maps" \
+        --replace "Exec=@pkgdatadir@/@app-id@" \
                   "Exec=$out/bin/gnome-maps"
   '';
 
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-music/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-music/default.nix
index 96ec321fa4a9..4676710bfc61 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-music/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-music/default.nix
@@ -15,7 +15,7 @@
 , grilo
 , grilo-plugins
 , pkg-config
-, gtk3
+, gtk4
 , pango
 , glib
 , desktop-file-utils
@@ -23,21 +23,20 @@
 , itstool
 , gnome
 , gst_all_1
-, libdazzle
 , libsoup
-, libhandy
+, libadwaita
 , gsettings-desktop-schemas
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "gnome-music";
-  version = "41.0";
+  version = "42.0";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "1llz2aqa3n3ivwl7i09pgylsbgrfzb872vcj1k7pvivxm1kkbcb9";
+    sha256 = "nWgZj5hSveD4NFhLlqgSiX0xDLcXKLak8Ji8spsZxdA=";
   };
 
   nativeBuildInputs = [
@@ -54,7 +53,7 @@ python3.pkgs.buildPythonApplication rec {
   ];
 
   buildInputs = [
-    gtk3
+    gtk4
     pango
     glib
     libmediaart
@@ -66,9 +65,8 @@ python3.pkgs.buildPythonApplication rec {
     grilo
     grilo-plugins
     libnotify
-    libdazzle
     libsoup
-    libhandy
+    libadwaita
     gsettings-desktop-schemas
     tracker
   ] ++ (with gst_all_1; [
@@ -85,13 +83,6 @@ python3.pkgs.buildPythonApplication rec {
     pygobject3
   ];
 
-  postPatch = ''
-    for f in meson_post_conf.py meson_post_install.py; do
-      chmod +x $f
-      patchShebangs $f
-    done
-  '';
-
   # Prevent double wrapping, let the Python wrapper use the args in preFixup.
   dontWrapGApps = true;
 
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-notes/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-notes/default.nix
index 6af206069e29..0ecd1e2ef6fd 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-notes/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-notes/default.nix
@@ -1,8 +1,10 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , meson
 , ninja
 , gettext
 , fetchurl
+, fetchpatch
 , pkg-config
 , wrapGAppsHook
 , itstool
@@ -32,6 +34,15 @@ stdenv.mkDerivation rec {
     sha256 = "1gvvb2klkzbmyzwkjgmscdiqcl8lyz9b0rxb4igjz079csq6z805";
   };
 
+  patches = [
+    # Fix build with meson 0.61
+    # data/appdata/meson.build:3:5: ERROR: Function does not take positional arguments.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-notes/-/commit/994af76ce5144062d55d141129bf6bf5fab002ee.patch";
+      sha256 = "sha256-z7dPOLZzaqvdqUIDy6+V3dKossRbG0EDjBu2oJCF6b4=";
+    })
+  ];
+
   doCheck = true;
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix
index 29f7aa6e9ee4..cd7259c3ae95 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
 , pkg-config
 , gettext
@@ -6,7 +7,7 @@
 , wrapGAppsHook
 , gjs
 , glib
-, gtk3
+, gtk4
 , gdk-pixbuf
 , gst_all_1
 , gnome
@@ -14,16 +15,16 @@
 , ninja
 , python3
 , desktop-file-utils
-, libhandy
+, libadwaita
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-sound-recorder";
-  version = "40.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "00b55vsfzx877b7mj744abzjws7zclz71wbvh0axsrbl9l84ranl";
+    sha256 = "TAjDFSgvPr96LabyDg/58McdqlIp/NL+C1wKqqoG8K0=";
   };
 
   nativeBuildInputs = [
@@ -40,9 +41,9 @@ stdenv.mkDerivation rec {
   buildInputs = [
     gjs
     glib
-    gtk3
+    gtk4
     gdk-pixbuf
-    libhandy
+    libadwaita
   ] ++ (with gst_all_1; [
     gstreamer
     gst-plugins-base
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix
index 22f9ac176aad..ac065aaaec7e 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix
@@ -23,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-text-editor";
-  version = "41.1";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-text-editor/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-YZ7FINbgkF1DEWcCTkPc4Nv2o0Xy1IaTUB1w3HYm+GE=";
+    sha256 = "sha256-DjIUDuHBNChWO81feE5h7iL/0a0n2MAig7Q1ioHfq1A=";
   };
 
   nativeBuildInputs = [
@@ -53,14 +53,6 @@ stdenv.mkDerivation rec {
     pcre
   ];
 
-  postPatch = ''
-    chmod +x build-aux/meson/postinstall.py
-    patchShebangs build-aux/meson/postinstall.py
-    substituteInPlace build-aux/meson/postinstall.py \
-      --replace "gtk-update-icon-cache" "gtk4-update-icon-cache"
-  '';
-
-
   passthru = {
     updateScript = gnome.updateScript {
       packageName = "gnome-text-editor";
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/gnome-weather/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/gnome-weather/default.nix
index aa192a6a3b65..b7921322d994 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/gnome-weather/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/gnome-weather/default.nix
@@ -3,8 +3,8 @@
 , fetchurl
 , pkg-config
 , gnome
-, gtk3
-, libhandy
+, gtk4
+, libadwaita
 , wrapGAppsHook
 , gjs
 , gobject-introspection
@@ -12,18 +12,17 @@
 , meson
 , ninja
 , geoclue2
-, gnome-desktop
 , python3
 , gsettings-desktop-schemas
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-weather";
-  version = "41.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-weather/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "1vidwq768xnrnr24jcfbpwjczz7vm5zmaiv41nb75q4p8avlwqg5";
+    sha256 = "V57mkdhT5bs/9Q6Me0P4Wundfls6ZJ4CwlSi2bgHtGU=";
   };
 
   nativeBuildInputs = [
@@ -35,11 +34,10 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    gtk3
-    libhandy
+    gtk4
+    libadwaita
     gjs
     gobject-introspection
-    gnome-desktop
     libgweather
     gnome.adwaita-icon-theme
     geoclue2
@@ -70,7 +68,7 @@ stdenv.mkDerivation rec {
     homepage = "https://wiki.gnome.org/Apps/Weather";
     description = "Access current weather conditions and forecasts";
     maintainers = teams.gnome.members;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/desktops/gnome/apps/polari/default.nix b/nixpkgs/pkgs/desktops/gnome/apps/polari/default.nix
index f207307588a1..c734a5c5c828 100644
--- a/nixpkgs/pkgs/desktops/gnome/apps/polari/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/apps/polari/default.nix
@@ -1,15 +1,40 @@
-{ lib, stdenv, itstool, fetchurl, gdk-pixbuf, adwaita-icon-theme
-, telepathy-glib, gjs, meson, ninja, gettext, telepathy-idle, libxml2, desktop-file-utils
-, pkg-config, gtk4, gtk3, glib, libsecret, libsoup, webkitgtk, gobject-introspection, appstream-glib
-, gnome, wrapGAppsHook4, telepathy-logger, gspell, gsettings-desktop-schemas }:
+{ stdenv
+, lib
+, itstool
+, fetchurl
+, gdk-pixbuf
+, telepathy-glib
+, gjs
+, meson
+, ninja
+, gettext
+, telepathy-idle
+, libxml2
+, desktop-file-utils
+, pkg-config
+, gtk4
+, libadwaita
+, gtk3
+, glib
+, libsecret
+, libsoup
+, webkitgtk
+, gobject-introspection
+, appstream-glib
+, gnome
+, wrapGAppsHook4
+, telepathy-logger
+, gspell
+, gsettings-desktop-schemas
+}:
 
 stdenv.mkDerivation rec {
   pname = "polari";
-  version = "41.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "o7BfgWYDcMZ8lCtvRLKYx7eIFv6zjJJuwiEr3iLqQOs=";
+    sha256 = "WPFbv1tCwLASPv3td1cR07DyRJl1cwlAOMpVZGHgSTw=";
   };
 
   patches = [
@@ -19,16 +44,38 @@ stdenv.mkDerivation rec {
     ./make-thumbnailer-wrappable.patch
   ];
 
-  propagatedUserEnvPkgs = [ telepathy-idle telepathy-logger ];
+  propagatedUserEnvPkgs = [
+    telepathy-idle
+    telepathy-logger
+  ];
 
   nativeBuildInputs = [
-    meson ninja pkg-config itstool gettext wrapGAppsHook4 libxml2
-    desktop-file-utils gobject-introspection appstream-glib
+    meson
+    ninja
+    pkg-config
+    itstool
+    gettext
+    wrapGAppsHook4
+    libxml2
+    desktop-file-utils
+    gobject-introspection
+    appstream-glib
   ];
 
   buildInputs = [
-    gtk4 gtk3 glib adwaita-icon-theme gsettings-desktop-schemas
-    telepathy-glib telepathy-logger gjs gspell gdk-pixbuf libsecret libsoup webkitgtk
+    gtk4
+    libadwaita
+    gtk3 # for thumbnailer
+    glib
+    gsettings-desktop-schemas
+    telepathy-glib
+    telepathy-logger
+    gjs
+    gspell
+    gdk-pixbuf
+    libsecret
+    libsoup
+    webkitgtk # for thumbnailer
   ];
 
   postFixup = ''
@@ -46,7 +93,7 @@ stdenv.mkDerivation rec {
     homepage = "https://wiki.gnome.org/Apps/Polari";
     description = "IRC chat client designed to integrate with the GNOME desktop";
     maintainers = teams.gnome.members;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix b/nixpkgs/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix
index c7c85779d3fb..b3c9e1ea62ae 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "adwaita-icon-theme";
-  version = "41.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/adwaita-icon-theme/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "71M52MNfytXRBIG3BICAPw+iCz08vDOSOPys7q7gHro=";
+    sha256 = "XoW1rcje5maQD8rycbpxf33LnQoD2W2uCPnL0n4YseA=";
   };
 
   # For convenience, we can specify adwaita-icon-theme only in packages
diff --git a/nixpkgs/pkgs/desktops/gnome/core/baobab/default.nix b/nixpkgs/pkgs/desktops/gnome/core/baobab/default.nix
index 40ea18b1af1e..7c463e8ed283 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/baobab/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/baobab/default.nix
@@ -8,22 +8,22 @@
 , ninja
 , pkg-config
 , python3
-, gtk3
-, libhandy
+, gtk4
+, libadwaita
 , glib
 , libxml2
-, wrapGAppsHook
+, wrapGAppsHook4
 , itstool
 , gnome
 }:
 
 stdenv.mkDerivation rec {
   pname = "baobab";
-  version = "41.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "ytYnjS3MgMhLVxBapbtY2KMM6Y1vq9dnUZ3bhshX6FU=";
+    sha256 = "Sxqr5rqxWCs/6nmigpvOfyQVu25QYvJTV67t1TF6UNw=";
   };
 
   nativeBuildInputs = [
@@ -37,21 +37,27 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
-    # Prevents “error: Package `libhandy-1' not found in specified Vala API
+    wrapGAppsHook4
+    # Prevents “error: Package `libadwaita-1' not found in specified Vala API
     # directories or GObject-Introspection GIR directories” with strictDeps,
     # even though it should only be a runtime dependency.
-    libhandy
+    libadwaita
   ];
 
   buildInputs = [
-    gtk3
-    libhandy
+    gtk4
+    libadwaita
     glib
   ];
 
   doCheck = true;
 
+  postPatch = ''
+    # https://gitlab.gnome.org/GNOME/baobab/-/merge_requests/40
+    substituteInPlace build-aux/post-install.py \
+      --replace "gtk-update-icon-cache" "gtk4-update-icon-cache"
+  '';
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/nixpkgs/pkgs/desktops/gnome/core/eog/default.nix b/nixpkgs/pkgs/desktops/gnome/core/eog/default.nix
index cdde96ae43b9..08baf9022f71 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/eog/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/eog/default.nix
@@ -1,6 +1,6 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchurl
-, fetchpatch
 , meson
 , ninja
 , gettext
@@ -12,9 +12,9 @@
 , libportal-gtk3
 , gnome
 , gtk3
+, libhandy
 , glib
 , gsettings-desktop-schemas
-, adwaita-icon-theme
 , gnome-desktop
 , lcms2
 , gdk-pixbuf
@@ -24,27 +24,20 @@
 , librsvg
 , libexif
 , gobject-introspection
-, python3
+, gi-docgen
 }:
 
 stdenv.mkDerivation rec {
   pname = "eog";
-  version = "41.1";
+  version = "42.0";
+
+  outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-huG5ujnaz3QiavpFermDtBJTuJ9he/VBOcrQiS0C2Kk=";
+    sha256 = "sha256-+zW/tRZ6QhIfWae5t6wNdbvQUXua/W2Rgx6E01c13fg=";
   };
 
-  patches = [
-    # Fix build with latest libportal
-    # https://gitlab.gnome.org/GNOME/eog/-/merge_requests/115
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/eog/-/commit/a06e6325907e136678b0bbe7058c25d688034afd.patch";
-      sha256 = "ttcsfHubfmIbxA51YLnxXDagLLNutXYmoQyMQ4sHRak=";
-    })
-  ];
-
   nativeBuildInputs = [
     meson
     ninja
@@ -52,15 +45,16 @@ stdenv.mkDerivation rec {
     gettext
     itstool
     wrapGAppsHook
-    libxml2
+    libxml2 # for xmllint for xml-stripblanks
     gobject-introspection
-    python3
+    gi-docgen
   ];
 
   buildInputs = [
     libjpeg
     libportal-gtk3
     gtk3
+    libhandy
     gdk-pixbuf
     glib
     libpeas
@@ -71,13 +65,11 @@ stdenv.mkDerivation rec {
     exempi
     gsettings-desktop-schemas
     shared-mime-info
-    adwaita-icon-theme
   ];
 
-  postPatch = ''
-    chmod +x meson_post_install.py
-    patchShebangs meson_post_install.py
-  '';
+  mesonFlags = [
+    "-Dgtk_doc=true"
+  ];
 
   preFixup = ''
     gappsWrapperArgs+=(
@@ -88,6 +80,11 @@ stdenv.mkDerivation rec {
     )
   '';
 
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
+  '';
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/nixpkgs/pkgs/desktops/gnome/core/epiphany/default.nix b/nixpkgs/pkgs/desktops/gnome/core/epiphany/default.nix
index eb8caa4f1eff..43b3eb2ee2fc 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/epiphany/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/epiphany/default.nix
@@ -11,7 +11,6 @@
 , icu
 , wrapGAppsHook
 , gnome
-, pantheon
 , libportal-gtk3
 , libxml2
 , libxslt
@@ -41,37 +40,23 @@
 
 stdenv.mkDerivation rec {
   pname = "epiphany";
-  version = "41.3";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "ugEmjuVPMY39rC4B66OKP8lpQMHL9kDtJhOuKfi8ua0=";
+    sha256 = "Pb+owA5Ft/ROGCTQHw/r6DcHtfuTMMJhFz9ot/A81eM=";
   };
 
   patches = lib.optionals withPantheon [
     # Pantheon specific patches for epiphany
     # https://github.com/elementary/browser
     #
-    # Make this respect dark mode settings from Pantheon
-    # https://github.com/elementary/browser/pull/21
-    # https://github.com/elementary/browser/pull/41
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/elementary/browser/cc17559a7ac6effe593712b4f3d0bbefde6e3b62/dark-style.patch";
-      sha256 = "sha256-RzMUc9P51UN3tRFefzRtMniXR9duOOmLj5eu5gL2TEQ=";
-    })
     # Patch to unlink nav buttons
     # https://github.com/elementary/browser/pull/18
     (fetchpatch {
       url = "https://raw.githubusercontent.com/elementary/browser/cc17559a7ac6effe593712b4f3d0bbefde6e3b62/navigation-buttons.patch";
       sha256 = "sha256-G1/JUjn/8DyO9sgL/5Kq205KbTOs4EMi4Vf3cJ8FHXU=";
     })
-  ] ++ [
-    # Fix build with latest libportal
-    # https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1051
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/epiphany/-/commit/84474398f6e59266b73170838219aa896729ce93.patch";
-      sha256 = "SeiLTo3FcOxuml5sJX9GqyGdyGf1jm1A76SOI0JJvoo=";
-    })
   ];
 
   nativeBuildInputs = [
@@ -94,7 +79,6 @@ stdenv.mkDerivation rec {
     glib
     glib-networking
     gnome-desktop
-    gnome.adwaita-icon-theme
     gst_all_1.gst-libav
     gst_all_1.gst-plugins-bad
     gst_all_1.gst-plugins-base
@@ -117,8 +101,6 @@ stdenv.mkDerivation rec {
     p11-kit
     sqlite
     webkitgtk
-  ] ++ lib.optionals withPantheon [
-    pantheon.granite
   ];
 
   # Tests need an X display
diff --git a/nixpkgs/pkgs/desktops/gnome/core/evince/default.nix b/nixpkgs/pkgs/desktops/gnome/core/evince/default.nix
index d7001853fa6c..18451ce239f7 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/evince/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/evince/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchurl
-, fetchpatch
 , meson
 , ninja
 , pkg-config
@@ -32,42 +31,27 @@
 , gsettings-desktop-schemas
 , gnome-desktop
 , dbus
-, pantheon
 , python3
 , texlive
-, t1lib
 , gst_all_1
-, gtk-doc
-, docbook-xsl-nons
-, docbook_xml_dtd_43
+, gi-docgen
 , supportMultimedia ? true # PDF multimedia
 , libgxps
 , supportXPS ? true # Open XML Paper Specification via libgxps
-, withPantheon ? false
 , withLibsecret ? true
 }:
 
 stdenv.mkDerivation rec {
   pname = "evince";
-  version = "41.4";
+  version = "42.1";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/evince/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "/yRSQPIwkivsMqTXsKHZGyR6g9E0hPmbdANdUesjITA=";
+    sha256 = "skdnuz1RA7TjWw4VzwM9viSI+IcAzdiC0ipDre7C6Ao=";
   };
 
-  patches = lib.optionals withPantheon [
-    # Make this respect dark mode settings from Pantheon
-    # https://github.com/elementary/evince/pull/21
-    # https://github.com/elementary/evince/pull/31
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/elementary/evince/c8364019ee2c2dffd2a1bccf79b8f4e526aa22af/dark-style.patch";
-      sha256 = "sha256-nKELRXnM6gMRTGmWdO1Qqlo9ciy+4HOK5z2CYOoi2Lo=";
-    })
-  ];
-
   postPatch = ''
     chmod +x meson_post_install.py
     patchShebangs meson_post_install.py
@@ -75,11 +59,9 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     appstream
-    docbook-xsl-nons
-    docbook_xml_dtd_43
     gettext
     gobject-introspection
-    gtk-doc
+    gi-docgen
     itstool
     meson
     ninja
@@ -108,7 +90,6 @@ stdenv.mkDerivation rec {
     libxml2
     pango
     poppler
-    t1lib
     texlive.bin.core # kpathsea for DVI support
   ] ++ lib.optionals withLibsecret [
     libsecret
@@ -121,9 +102,7 @@ stdenv.mkDerivation rec {
     gst-plugins-bad
     gst-plugins-ugly
     gst-libav
-  ]) ++ lib.optionals withPantheon [
-    pantheon.granite
-  ];
+  ]);
 
   mesonFlags = [
     "-Dnautilus=false"
@@ -140,6 +119,11 @@ stdenv.mkDerivation rec {
     gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share")
   '';
 
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
+  '';
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/default.nix b/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/default.nix
index b7ba12be1356..e43fe60eb7e9 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/default.nix
@@ -1,18 +1,57 @@
-{ fetchurl, lib, stdenv, substituteAll, pkg-config, gnome, python3, gobject-introspection
-, intltool, libsoup, libxml2, libsecret, icu, sqlite, tzdata, libcanberra-gtk3, gcr, p11-kit
-, db, nspr, nss, libical, gperf, wrapGAppsHook, glib-networking, pcre, vala, cmake, ninja
-, libkrb5, openldap, webkitgtk, libaccounts-glib, json-glib, glib, gtk3, libphonenumber
-, gnome-online-accounts, libgweather, libgdata, gsettings-desktop-schemas, boost, protobuf }:
+{ stdenv
+, lib
+, fetchurl
+, substituteAll
+, pkg-config
+, gnome
+, python3
+, gobject-introspection
+, gettext
+, libsoup
+, libxml2
+, libsecret
+, icu
+, sqlite
+, tzdata
+, libcanberra-gtk3
+, gcr
+, p11-kit
+, db
+, nspr
+, nss
+, libical
+, gperf
+, wrapGAppsHook
+, glib-networking
+, pcre
+, vala
+, cmake
+, ninja
+, libkrb5
+, openldap
+, webkitgtk
+, libaccounts-glib
+, json-glib
+, glib
+, gtk3
+, libphonenumber
+, gnome-online-accounts
+, libgweather
+, libgdata
+, gsettings-desktop-schemas
+, boost
+, protobuf
+}:
 
 stdenv.mkDerivation rec {
   pname = "evolution-data-server";
-  version = "3.42.4";
+  version = "3.44.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/evolution-data-server/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "fftBs+bAWBHUSajeTfx3q5sZ+O3yCzL92FeRhmIm0lI=";
+    sha256 = "DYiBtcUeG5F2GxlF2yZKRqq/VKc+6hyo9EiyB4FdWC4=";
   };
 
   patches = [
@@ -23,19 +62,47 @@ stdenv.mkDerivation rec {
   ];
 
   prePatch = ''
-    substitute ${./hardcode-gsettings.patch} hardcode-gsettings.patch --subst-var-by ESD_GSETTINGS_PATH ${glib.makeSchemaPath "$out" "${pname}-${version}"} \
+    substitute ${./hardcode-gsettings.patch} hardcode-gsettings.patch \
+      --subst-var-by ESD_GSETTINGS_PATH ${glib.makeSchemaPath "$out" "${pname}-${version}"} \
       --subst-var-by GDS_GSETTINGS_PATH ${glib.getSchemaPath gsettings-desktop-schemas}
     patches="$patches $PWD/hardcode-gsettings.patch"
   '';
 
   nativeBuildInputs = [
-    cmake ninja pkg-config intltool python3 gperf wrapGAppsHook gobject-introspection vala
+    cmake
+    ninja
+    pkg-config
+    gettext
+    python3
+    gperf
+    wrapGAppsHook
+    gobject-introspection
+    vala
   ];
+
   buildInputs = [
-    glib libsoup libxml2 gtk3 gnome-online-accounts
-    gcr p11-kit libgweather libgdata libaccounts-glib json-glib
-    icu sqlite libkrb5 openldap webkitgtk glib-networking
-    libcanberra-gtk3 pcre libphonenumber boost protobuf
+    glib
+    libsoup
+    libxml2
+    gtk3
+    gnome-online-accounts
+    gcr
+    p11-kit
+    libgweather
+    libgdata
+    libaccounts-glib
+    json-glib
+    icu
+    sqlite
+    libkrb5
+    openldap
+    webkitgtk
+    glib-networking
+    libcanberra-gtk3
+    pcre
+    libphonenumber
+    boost
+    protobuf
   ];
 
   propagatedBuildInputs = [
@@ -55,6 +122,7 @@ stdenv.mkDerivation rec {
     "-DCMAKE_SKIP_BUILD_RPATH=OFF"
     "-DINCLUDE_INSTALL_DIR=${placeholder "dev"}/include"
     "-DWITH_PHONENUMBER=ON"
+    "-DWITH_GWEATHER4=ON"
   ];
 
   passthru = {
@@ -67,7 +135,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Unified backend for programs that work with contacts, tasks, and calendar information";
     homepage = "https://wiki.gnome.org/Apps/Evolution";
-    license = licenses.lgpl2;
+    license = licenses.lgpl2Plus;
     maintainers = teams.gnome.members;
     platforms = platforms.linux;
   };
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gdm/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gdm/default.nix
index 6b51d11adfed..990f1bef2119 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gdm/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gdm/default.nix
@@ -19,6 +19,7 @@
 , gtk3
 , libcanberra-gtk3
 , pam
+, libgudev
 , libselinux
 , keyutils
 , audit
@@ -43,13 +44,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gdm";
-  version = "41.3";
+  version = "42.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gdm/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "uwtlCnzqkPCaMyhPvQKXUxVAfvwY6BQAmFLRvK00N9Q=";
+    sha256 = "oyisl2k3vsF5lx/weCmhJGuYznJBgcEorjKguketOFU=";
   };
 
   mesonFlags = [
@@ -83,6 +84,7 @@ stdenv.mkDerivation rec {
     keyutils
     libX11
     libcanberra-gtk3
+    libgudev
     libselinux
     pam
     plymouth
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix
index 89a49e4cecb3..ba70570b1f85 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix
@@ -1,16 +1,18 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gnome, gettext }:
+{ stdenv
+, lib
+, fetchurl
+, meson
+, ninja
+, gnome
+}:
 
 stdenv.mkDerivation rec {
   pname = "gnome-backgrounds";
-  version = "41.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-backgrounds/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "HaGsDSYb7fD80shbSAvGVQXiPPUfEUMSbA03cX5pMUU=";
-  };
-
-  passthru = {
-    updateScript = gnome.updateScript { packageName = "gnome-backgrounds"; attrPath = "gnome.gnome-backgrounds"; };
+    sha256 = "TH/hoJ9FnF93GJpZglJPzgXYiJRJVdZ5kQ8jRgbBKV0=";
   };
 
   patches = [
@@ -20,9 +22,22 @@ stdenv.mkDerivation rec {
     ./stable-dir.patch
   ];
 
-  nativeBuildInputs = [ meson ninja pkg-config gettext ];
+  nativeBuildInputs = [
+    meson
+    ninja
+  ];
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = "gnome-backgrounds";
+      attrPath = "gnome.gnome-backgrounds";
+    };
+  };
 
   meta = with lib; {
+    description = "Default wallpaper set for GNOME";
+    homepage = "https://gitlab.gnome.org/GNOME/gnome-backgrounds";
+    license = licenses.cc-by-sa-30;
     platforms = platforms.unix;
     maintainers = teams.gnome.members;
   };
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix
index 901dbc21e9ef..7d8fc2bc8674 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix
@@ -5,15 +5,17 @@
 , meson
 , ninja
 , pkg-config
-, gtk3
+, gtk4
+, libadwaita
 , gettext
 , glib
 , udev
+, upower
 , itstool
 , libxml2
 , wrapGAppsHook
 , libnotify
-, libcanberra-gtk3
+, gsound
 , gobject-introspection
 , gtk-doc
 , docbook-xsl-nons
@@ -24,14 +26,14 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-bluetooth";
-  version = "3.34.5";
+  version = "42.0";
 
   # TODO: split out "lib"
   outputs = [ "out" "dev" "devdoc" "man" ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1a9ynlwwkb3wpg293ym517vmrkk63y809mmcv9a21k5yr199x53c";
+    url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
+    sha256 = "PR4nIGc7yaJCYZ3F0jH9bndsGKSdop9DzcQzBVrbAXA=";
   };
 
   nativeBuildInputs = [
@@ -51,24 +53,19 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     glib
-    gtk3
+    gtk4
+    libadwaita
     udev
+    upower
     libnotify
-    libcanberra-gtk3
-    gnome.adwaita-icon-theme
+    gsound
     gsettings-desktop-schemas
   ];
 
   mesonFlags = [
-    "-Dicon_update=false"
     "-Dgtk_doc=true"
   ];
 
-  postPatch = ''
-    chmod +x meson_post_install.py # patchShebangs requires executable file
-    patchShebangs meson_post_install.py
-  '';
-
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
@@ -77,7 +74,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = with lib; {
-    homepage = "https://help.gnome.org/users/gnome-bluetooth/stable/index.html.en";
+    homepage = "https://gitlab.gnome.org/GNOME/gnome-bluetooth";
     description = "Application that lets you manage Bluetooth in the GNOME desktop";
     maintainers = teams.gnome.members;
     license = licenses.gpl2Plus;
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-calculator/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-calculator/default.nix
index 6a7a8ccec06b..889155f19a6d 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-calculator/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-calculator/default.nix
@@ -8,29 +8,28 @@
 , fetchurl
 , pkg-config
 , libxml2
-, gtk3
+, gtk4
 , glib
-, gtksourceview4
+, gtksourceview5
 , wrapGAppsHook
 , gobject-introspection
-, python3
 , gnome
 , mpfr
 , gmp
 , libsoup
 , libmpc
-, libhandy
+, libadwaita
 , gsettings-desktop-schemas
 , libgee
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-calculator";
-  version = "41.1";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-calculator/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "AmdhSv2yXTi3hBG0Lrq3vFDBtjQMxJu2jA5DLX3fijQ=";
+    sha256 = "pTWhTr6ljmkaS1oIUlau0GCiw/BzhKw6PQGDIzKifko=";
   };
 
   nativeBuildInputs = [
@@ -41,32 +40,25 @@ stdenv.mkDerivation rec {
     gettext
     itstool
     wrapGAppsHook
-    python3
     gobject-introspection # for finding vapi files
   ];
 
   buildInputs = [
-    gtk3
+    gtk4
     glib
     libxml2
-    gtksourceview4
+    gtksourceview5
     mpfr
     gmp
-    gnome.adwaita-icon-theme
     libgee
     gsettings-desktop-schemas
     libsoup
     libmpc
-    libhandy
+    libadwaita
   ];
 
   doCheck = true;
 
-  postPatch = ''
-    chmod +x meson_post_install.py # patchShebangs requires executable file
-    patchShebangs meson_post_install.py
-  '';
-
   preCheck = ''
     # Currency conversion test tries to store currency data in $HOME/.cache.
     export HOME=$TMPDIR
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-contacts/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-contacts/default.nix
index 1c16c3dd35ea..fac22f0b5785 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-contacts/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-contacts/default.nix
@@ -1,18 +1,16 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , gettext
 , fetchurl
 , evolution-data-server
 , pkg-config
 , libxslt
-, docbook_xsl
+, docbook-xsl-nons
 , docbook_xml_dtd_42
-, python3
-, gtk3
+, desktop-file-utils
+, gtk4
 , glib
-, cheese
-, libchamplain
-, clutter-gtk
-, geocode-glib
+, libportal
 , gnome-desktop
 , gnome-online-accounts
 , wrapGAppsHook
@@ -23,17 +21,17 @@
 , vala
 , meson
 , ninja
-, libhandy
+, libadwaita
 , gsettings-desktop-schemas
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-contacts";
-  version = "41.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-contacts/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "Y+MUm10UdbeiaYAFu191DzyApzVxcWDjnfjP3+v8zfA=";
+    sha256 = "iALDj9wj9SjawSj1O9zx9sow4OHGhIxCzWyEpeIsUhY=";
   };
 
   propagatedUserEnvPkgs = [
@@ -47,34 +45,25 @@ stdenv.mkDerivation rec {
     vala
     gettext
     libxslt
-    docbook_xsl
+    docbook-xsl-nons
     docbook_xml_dtd_42
-    python3
+    desktop-file-utils
     wrapGAppsHook
   ];
 
   buildInputs = [
-    gtk3
+    gtk4
     glib
+    libportal
     evolution-data-server
     gsettings-desktop-schemas
     folks
     gnome-desktop
-    libhandy
+    libadwaita
     libxml2
     gnome-online-accounts
-    cheese
-    gnome.adwaita-icon-theme
-    libchamplain
-    clutter-gtk
-    geocode-glib
   ];
 
-  postPatch = ''
-    chmod +x build-aux/meson_post_install.py
-    patchShebangs build-aux/meson_post_install.py
-  '';
-
   doCheck = true;
 
   passthru = {
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/default.nix
index f68977e52dd0..c7da1e43a15c 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/default.nix
@@ -2,13 +2,11 @@
 , lib
 , stdenv
 , substituteAll
+, fetchpatch
 , accountsservice
 , adwaita-icon-theme
-, cheese
-, clutter
-, clutter-gtk
 , colord
-, colord-gtk
+, colord-gtk4
 , cups
 , docbook-xsl-nons
 , fontconfig
@@ -26,19 +24,17 @@
 , gnome
 , gsettings-desktop-schemas
 , gsound
-, gtk3
+, gtk4
 , ibus
-, libcanberra-gtk3
 , libgnomekbd
 , libgtop
 , libgudev
-, libhandy
+, libadwaita
 , libkrb5
 , libpulseaudio
 , libpwquality
 , librsvg
 , libsecret
-, libsoup
 , libwacom
 , libxml2
 , libxslt
@@ -47,7 +43,7 @@
 , mutter
 , networkmanager
 , networkmanagerapplet
-, libnma
+, libnma-gtk4
 , ninja
 , pkg-config
 , polkit
@@ -68,11 +64,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-control-center";
-  version = "41.4";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-1tsMTLcIV77PSKxQB/ErX2O51dfoDqfuV9O+USZp98k=";
+    sha256 = "sha256-BzLvp8QXHOCg7UEGWAtM41pXsQFSwOo20jkTSRN3fto=";
   };
 
   patches = [
@@ -83,6 +79,13 @@ stdenv.mkDerivation rec {
       inherit glibc libgnomekbd tzdata;
       inherit cups networkmanagerapplet;
     })
+
+    # Fix Online Accounts configuration on X11
+    # https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1272
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-control-center/-/commit/7fe322b9cedae313cd9af6f403eab9bfc6027674.patch";
+      sha256 = "cv1abqv0Kbfkfu7mZzEaZKXPE85yVBcQbjNHW+8ODFE=";
+    })
   ];
 
   nativeBuildInputs = [
@@ -100,11 +103,8 @@ stdenv.mkDerivation rec {
   buildInputs = [
     accountsservice
     adwaita-icon-theme
-    cheese
-    clutter
-    clutter-gtk
     colord
-    colord-gtk
+    colord-gtk4
     libepoxy
     fontconfig
     gdk-pixbuf
@@ -119,19 +119,17 @@ stdenv.mkDerivation rec {
     gnome-user-share # optional, sharing panel
     gsettings-desktop-schemas
     gsound
-    gtk3
+    gtk4
     ibus
-    libcanberra-gtk3
     libgtop
     libgudev
-    libhandy
+    libadwaita
     libkrb5
-    libnma
+    libnma-gtk4
     libpulseaudio
     libpwquality
     librsvg
     libsecret
-    libsoup
     libwacom
     libxml2
     modemmanager
@@ -145,9 +143,19 @@ stdenv.mkDerivation rec {
     upower
   ];
 
-  postPatch = ''
-    chmod +x build-aux/meson/meson_post_install.py # patchShebangs requires executable file
-    patchShebangs build-aux/meson/meson_post_install.py
+  # postPatch = ''
+  #   scriptsToPatch=(
+  #     build-aux/meson/meson_post_install.py
+  #     build-aux/meson/find_xdg_file.py
+  #   )
+  #   # # patchShebangs requires executable file
+  #   # chmod +x "''${scriptsToPatch[@]}"
+  #   # patchShebangs "''${scriptsToPatch[@]}"
+  # '';
+
+  preConfigure = ''
+    # For ITS rules
+    addToSearchPath "XDG_DATA_DIRS" "${polkit.out}/share"
   '';
 
   preFixup = ''
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-dictionary/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-dictionary/default.nix
index a399c4e85377..6cdb8831c48f 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-dictionary/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-dictionary/default.nix
@@ -1,6 +1,24 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, desktop-file-utils, appstream-glib, libxslt
-, libxml2, gettext, itstool, wrapGAppsHook, docbook_xsl, docbook_xml_dtd_43
-, gnome, gtk3, glib, gsettings-desktop-schemas }:
+{ stdenv
+, lib
+, fetchurl
+, fetchpatch
+, meson
+, ninja
+, pkg-config
+, desktop-file-utils
+, appstream-glib
+, libxslt
+, libxml2
+, gettext
+, itstool
+, wrapGAppsHook
+, docbook_xsl
+, docbook_xml_dtd_43
+, gnome
+, gtk3
+, glib
+, gsettings-desktop-schemas
+}:
 
 stdenv.mkDerivation rec {
   pname = "gnome-dictionary";
@@ -11,13 +29,44 @@ stdenv.mkDerivation rec {
     sha256 = "1d8dhcfys788vv27v34i3s3x3jdvdi2kqn2a5p8c937a9hm0qr9f";
   };
 
-  doCheck = true;
+  patches = [
+    # Fix test dependencies with meson 0.57, can be removed on next bump
+    # We need to explicitly depend on the generated files.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-dictionary/-/commit/87c026cfe4acbcfc62d15950f88a71d8d9678c7e.patch";
+      sha256 = "tKesWeOK3OqOxrXm4dZvCZHHdTD7AQbYDjtYDCsLd3A=";
+    })
+    # Fix build with meson 0.61, can be removed on next bump
+    # data/appdata/meson.build:3:5: ERROR: Function does not take positional arguments.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-dictionary/-/commit/cf3f8a67cd6f3059c555ed9cf0f5fba10abb7f68.patch";
+      sha256 = "cIRM6ACqsnEo2JWYvr6EBye5o0BudugZMShCe1U5hz8=";
+    })
+  ];
 
   nativeBuildInputs = [
-    meson ninja pkg-config wrapGAppsHook libxml2 gettext itstool
-    desktop-file-utils appstream-glib libxslt docbook_xsl docbook_xml_dtd_43
+    meson
+    ninja
+    pkg-config
+    wrapGAppsHook
+    libxml2
+    gettext
+    itstool
+    desktop-file-utils
+    appstream-glib
+    libxslt
+    docbook_xsl
+    docbook_xml_dtd_43
+  ];
+
+  buildInputs = [
+    gtk3
+    glib
+    gsettings-desktop-schemas
+    gnome.adwaita-icon-theme
   ];
-  buildInputs = [ gtk3 glib gsettings-desktop-schemas gnome.adwaita-icon-theme ];
+
+  doCheck = true;
 
   passthru = {
     updateScript = gnome.updateScript {
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix
index 5f3ef81d905a..89502c8d8830 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix
@@ -27,11 +27,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-disk-utility";
-  version = "41.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-disk-utility/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-h0PJj9ZWBi74YpM+/jDFvkxrMi7ALu4VTscNCO0Ild8=";
+    sha256 = "sha256-G2VkRU1nQmMiyzv8WlVYZTv8ff7qKuCCWx0IYp8BCQs=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix
index 4ba915df2dbd..397f0b9838f1 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix
@@ -1,20 +1,47 @@
-{ lib, stdenv, meson, ninja, gettext, fetchurl
-, pkg-config, gtk3, glib, libxml2, gnome-desktop, adwaita-icon-theme, libhandy
-, wrapGAppsHook, gnome, harfbuzz }:
+{ lib
+, stdenv
+, meson
+, ninja
+, gettext
+, fetchurl
+, pkg-config
+, gtk4
+, glib
+, libxml2
+, gnome-desktop
+, libadwaita
+, wrapGAppsHook4
+, gnome
+, harfbuzz
+}:
 
 stdenv.mkDerivation rec {
   pname = "gnome-font-viewer";
-  version = "41.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-font-viewer/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "XdQQMxvgcOTgNDl/J1SYDgc4UdUKIRny+/lq3G/i6HY=";
+    sha256 = "z6K43/8hoQWhoCHa36IT8TYn5qF5p3x7Wf3O2sqEjcw=";
   };
 
   doCheck = true;
 
-  nativeBuildInputs = [ meson ninja pkg-config gettext wrapGAppsHook libxml2 ];
-  buildInputs = [ gtk3 glib gnome-desktop adwaita-icon-theme harfbuzz libhandy ];
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    gettext
+    wrapGAppsHook4
+    libxml2
+  ];
+
+  buildInputs = [
+    gtk4
+    glib
+    gnome-desktop
+    harfbuzz
+    libadwaita
+  ];
 
   # Do not run meson-postinstall.sh
   preConfigure = "sed -i '2,$ d'  meson-postinstall.sh";
@@ -28,8 +55,9 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Program that can preview fonts and create thumbnails for fonts";
+    homepage = "https://gitlab.gnome.org/GNOME/gnome-font-viewer";
     maintainers = teams.gnome.members;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix
index 2d5be438c3e2..7f6724ce63ae 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix
@@ -27,6 +27,7 @@
 , polkit
 , webkitgtk
 , systemd
+, libhandy
 , libnma
 , tzdata
 , libgnomekbd
@@ -35,11 +36,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-initial-setup";
-  version = "41.4";
+  version = "42.0.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "luzS2252xROxjGBtwmK7UjIoxKrtvtageBHlaP1dtkI=";
+    sha256 = "/PQ/L75NwEw6wq5QVjP+se8w2nDKleq8YeIAaxkuXlU=";
   };
 
   patches = [
@@ -72,6 +73,7 @@ stdenv.mkDerivation rec {
     json-glib
     krb5
     libgweather
+    libhandy
     libnma
     libpwquality
     librest
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-keyring/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-keyring/default.nix
index 8c9815509e2d..afbec6f8c5d1 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-keyring/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-keyring/default.nix
@@ -5,7 +5,7 @@
 , dbus
 , libgcrypt
 , pam
-, python2
+, python3
 , glib
 , libxslt
 , gettext
@@ -51,8 +51,7 @@ stdenv.mkDerivation rec {
     p11-kit
   ];
 
-  # In 3.20.1, tests do not support Python 3
-  checkInputs = [ dbus python2 ];
+  checkInputs = [ dbus python3 ];
 
   configureFlags = [
     "--with-pkcs11-config=${placeholder "out"}/etc/pkcs11/" # installation directories
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix
index 0f35b15bee9c..61252d60814c 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix
@@ -7,6 +7,8 @@
 , python3
 , wrapGAppsHook
 , glib
+, libepoxy
+, libdrm
 , nv-codec-headers-11
 , pipewire
 , systemd
@@ -17,16 +19,20 @@
 , gdk-pixbuf
 , freerdp
 , fuse3
+, mesa
+, libgudev
+, xvfb-run
+, dbus
 , gnome
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-remote-desktop";
-  version = "41.2";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    hash = "sha256-EBUeabZIwiR8XjPZou9Bn04DfuWyuuSebtasp36xulg=";
+    hash = "sha256-s9wrt1x4Pe2quWqNu6wW3ZqhOebTooo9s+pAxgRluY8=";
   };
 
   nativeBuildInputs = [
@@ -43,6 +49,8 @@ stdenv.mkDerivation rec {
     fuse3
     gdk-pixbuf # For libnotify
     glib
+    libepoxy
+    libdrm
     nv-codec-headers-11
     libnotify
     libsecret
@@ -50,17 +58,35 @@ stdenv.mkDerivation rec {
     libxkbcommon
     pipewire
     systemd
-  ];
+  ] ++ checkInputs;
 
-  postPatch = ''
-    chmod +x meson_post_install.py # patchShebangs requires executable file
-    patchShebangs meson_post_install.py
-  '';
+  checkInputs = [
+    mesa # for gbm
+    libgudev
+    xvfb-run
+    python3.pkgs.dbus-python
+    python3.pkgs.pygobject3
+    dbus # for dbus-run-session
+  ];
 
   mesonFlags = [
     "-Dsystemd_user_unit_dir=${placeholder "out"}/lib/systemd/user"
   ];
 
+  # Too deep of a rabbit hole.
+  doCheck = false;
+
+  postPatch = ''
+    chmod +x meson_post_install.py # patchShebangs requires executable file
+    patchShebangs \
+      tests/vnc-test-runner.sh \
+      tests/run-vnc-tests.py \
+      meson_post_install.py
+
+    substituteInPlace tests/vnc-test-runner.sh \
+      --replace "dbus-run-session" "dbus-run-session --config-file=${dbus}/share/dbus-1/session.conf"
+  '';
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-session/ctl.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-session/ctl.nix
index 7ee9e156e5bb..09fc80bf9ef8 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-session/ctl.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-session/ctl.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-session-ctl";
-  version = "41.3";
+  version = "42.0";
 
   src = fetchFromGitHub {
     owner = "nix-community";
     repo = pname;
     rev = version;
-    hash = "sha256-aC0tkTf2lgCRlcbFj1FEOVBm3YUuP+8Yz98W3ZjUydg=";
+    hash = "sha256-XGJVmlxqbJ/1frbzn2TI7BJm449xeLk43xMMqFsLYko=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-session/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-session/default.nix
index 3c6903b2b01b..43bf56eb1fc8 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-session/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-session/default.nix
@@ -30,13 +30,13 @@
 stdenv.mkDerivation rec {
   pname = "gnome-session";
   # Also bump ./ctl.nix when bumping major version.
-  version = "41.3";
+  version = "42.0";
 
   outputs = [ "out" "sessions" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-session/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "7koikFP1ImJAVIiWCTNbiFKHz2e73g3J/YgrAeybWzk=";
+    sha256 = "PMoGBTq2gpJpIJUafalfjMbXLadMaCxG0KBlMzKWnKo=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix
index aae01577a881..8ab848a7dfa8 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchpatch
 , substituteAll
 , fetchurl
@@ -70,10 +71,28 @@ stdenv.mkDerivation rec {
     })
 
     # Fix build with new meson
+    # plugins/power/meson.build:78:7: ERROR: Function does not take positional arguments.
+    # https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/merge_requests/283
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/afa7e4bb9c519e2daf500a6079088669500768c0.patch";
+      sha256 = "8wxJIKPoZyfs1t0zAsb5SVCdt297NUiGmXIBNI6hbCQ=";
+    })
+    # meson.build:86:3: ERROR: The `==` operator of str does not accept objects of type bool (True)
+    # https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/merge_requests/249
     (fetchpatch {
       url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/28e28e9e598342c897ae5ca350d0da6f4aea057b.diff";
       sha256 = "U+suR7wYjLWPqmkJpHm6pPOWL7sjL6GhIFX8MHrBRAY=";
     })
+
+    # Port to gweather4
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/66cae69ad82cfc59435016fba737ce046ffb7e66.patch";
+      sha256 = "zf8/rkKdQQFNV/qx/jo4kx1KoLl7SUSu4/T1OBGrZ4c=";
+    })
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/f390e6e9d56ce7d3e3a725b8204d81c0b6240515.patch";
+      sha256 = "8mfnlhkSF9ogjVWE+IESzRQzrxHQSwUWsq5OLBM08iM=";
+    })
   ];
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix
index 307de72cc4f0..03698f865d65 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix
@@ -42,11 +42,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-settings-daemon";
-  version = "41.0";
+  version = "42.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-settings-daemon/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "5spjYfvR3qst4aHjkNTxQWfPR7HFR9u4tlpdielmOIQ=";
+    sha256 = "7WWFGuVK3NWKJMhoN9Yk/GoUvYSrIulN9Ao6TP0Z/9s=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix
index aa61bd91c297..1083fe111066 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extensions";
-  version = "41.2";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-shell-extensions/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "rZuoL0y9BHJpc7XoevrRiv2qMjhgoK8+ckDzp00iLxk=";
+    sha256 = "PuZbdbGv2LzKCioD2psohHh+1A4leogdmqbvfIcnYC8=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix
index 3b89ceb78172..1ad36f7e96b7 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix
@@ -46,6 +46,7 @@
 , evolution-data-server
 , gtk3
 , gtk4
+, libadwaita
 , sassc
 , systemd
 , pipewire
@@ -66,13 +67,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "gnome-shell";
-  version = "41.4";
+  version = "42.0";
 
   outputs = [ "out" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-shell/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "x+73SvMEZJwDuG25m9C6x1oBH7/2d0yO41WD282tivQ=";
+    sha256 = "M9QE+zyTud5CmE8BEKKWnWpKckfCf+f14kxn7P7HUJQ=";
   };
 
   patches = [
@@ -118,7 +119,6 @@ stdenv.mkDerivation rec {
     sassc
     desktop-file-utils
     libxslt.bin
-    python3
     asciidoc
   ];
 
@@ -142,6 +142,7 @@ stdenv.mkDerivation rec {
     libical
     gtk3
     gtk4
+    libadwaita
     gdm
     geoclue2
     adwaita-icon-theme
@@ -169,6 +170,9 @@ stdenv.mkDerivation rec {
     bash-completion
     gnome-autoar
     json-glib
+
+    # for tools
+    pythonEnv
   ];
 
   mesonFlags = [
@@ -177,14 +181,9 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     patchShebangs src/data-to-c.pl
-    chmod +x meson/postinstall.py
-    patchShebangs meson/postinstall.py
 
     # We can generate it ourselves.
     rm -f man/gnome-shell.1
-
-    substituteInPlace src/gnome-shell-extension-tool.in --replace "@PYTHON@" "${pythonEnv}/bin/python"
-    substituteInPlace src/gnome-shell-perf-tool.in --replace "@PYTHON@" "${pythonEnv}/bin/python"
   '';
 
   preFixup = ''
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch
index bc494caea9dd..5ce4a2fd46d7 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch
@@ -1,7 +1,7 @@
 diff --git a/js/dbusServices/dbus-service.in b/js/dbusServices/dbus-service.in
 old mode 100644
 new mode 100755
-index 524166102..100b81a63
+index 524166102..6d0722a1c
 --- a/js/dbusServices/dbus-service.in
 +++ b/js/dbusServices/dbus-service.in
 @@ -1,3 +1,9 @@
@@ -24,18 +24,18 @@ index 3b0d09abe..4fd4bb66d 100644
 -Exec=@gjs@ @pkgdatadir@/@service@
 +Exec=@pkgdatadir@/@service@
 diff --git a/js/dbusServices/meson.build b/js/dbusServices/meson.build
-index c749f45dc..11bcb0c9e 100644
+index eb941ed90..552051e5a 100644
 --- a/js/dbusServices/meson.build
 +++ b/js/dbusServices/meson.build
 @@ -2,6 +2,7 @@ launcherconf = configuration_data()
  launcherconf.set('PACKAGE_NAME', meson.project_name())
  launcherconf.set('prefix', prefix)
  launcherconf.set('libdir', libdir)
-+launcherconf.set('gjs', gjs.path())
++launcherconf.set('gjs', gjs.full_path())
  
  dbus_services = {
    'org.gnome.Shell.Extensions': 'extensions',
-@@ -11,16 +12,17 @@ dbus_services = {
+@@ -18,16 +19,17 @@ endif
  config_dir = '@0@/..'.format(meson.current_build_dir())
  
  foreach service, dir : dbus_services
@@ -51,7 +51,7 @@ index c749f45dc..11bcb0c9e 100644
  
    serviceconf = configuration_data()
    serviceconf.set('service', service)
--  serviceconf.set('gjs', gjs.path())
+-  serviceconf.set('gjs', gjs.full_path())
    serviceconf.set('pkgdatadir', pkgdatadir)
  
    configure_file(
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix
index aa9058ad410a..e89f616680c7 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix
@@ -13,7 +13,7 @@
 , glib
 , appstream
 , libsoup
-, libhandy
+, libadwaita
 , polkit
 , isocodes
 , gspell
@@ -21,7 +21,7 @@
 , gobject-introspection
 , flatpak
 , fwupd
-, gtk3
+, gtk4
 , gsettings-desktop-schemas
 , gnome-desktop
 , libxmlb
@@ -42,11 +42,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gnome-software";
-  version = "41.4";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-software/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "evhzzkcs8racUbyevGG4Nt+8z9b0Jwbj7TqpCaruxGU=";
+    sha256 = "QsaF4u95li6zCo6VjHA8mh899zFQQiOgYos7Yk733B4=";
   };
 
   patches = [
@@ -73,12 +73,12 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    gtk3
+    gtk4
     glib
     packagekit
     appstream
     libsoup
-    libhandy
+    libadwaita
     gsettings-desktop-schemas
     gnome-desktop
     gspell
@@ -97,6 +97,8 @@ stdenv.mkDerivation rec {
     "-Dgudev=false"
     # FIXME: package malcontent parental controls
     "-Dmalcontent=false"
+    # Needs flatpak to upgrade
+    "-Dsoup2=true"
   ] ++ lib.optionals (!withFwupd) [
     "-Dfwupd=false"
   ];
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix
index d373d6f358c6..5d24a23e4118 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix
@@ -12,7 +12,6 @@
 , wrapGAppsHook
 , meson
 , ninja
-, python3
 , gsettings-desktop-schemas
 , itstool
 , gnome
@@ -24,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-system-monitor";
-  version = "41.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-system-monitor/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "x/xExhlJt5SwKJlo67vMDBX4z8PZ5Fv6qB7UXBITnl8=";
+    sha256 = "EyOdIgMiAaIr0pgzxXW2hIFnANLeFooVMCI1d8XAddw=";
   };
 
   nativeBuildInputs = [
@@ -38,7 +37,6 @@ stdenv.mkDerivation rec {
     wrapGAppsHook
     meson
     ninja
-    python3
   ];
 
   buildInputs = [
@@ -58,12 +56,6 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  postPatch = ''
-    chmod +x meson_post_install.py # patchShebangs requires executable file
-    patchShebangs meson_post_install.py
-    sed -i '/gtk-update-icon-cache/s/^/#/' meson_post_install.py
-  '';
-
   passthru = {
     updateScript = gnome.updateScript {
       packageName = "gnome-system-monitor";
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-terminal/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-terminal/default.nix
index 69fb69261f98..85918f0e31c0 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-terminal/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-terminal/default.nix
@@ -23,15 +23,16 @@
 , pcre2
 , libxslt
 , docbook-xsl-nons
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-terminal";
-  version = "3.42.2";
+  version = "3.44.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-terminal/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "ipyOXvejpzskapR+EZC7COyYk1r4YM8LOqL79GBoF6A=";
+    sha256 = "qpZxie62CUWebApGigHqcMuMRTDaHVALLT9PxDi4/io=";
   };
 
   nativeBuildInputs = [
@@ -82,6 +83,8 @@ stdenv.mkDerivation rec {
     };
   };
 
+  passthru.tests.test = nixosTests.terminal-emulators.gnome-terminal;
+
   meta = with lib; {
     description = "The GNOME Terminal Emulator";
     homepage = "https://wiki.gnome.org/Apps/Terminal";
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-tour/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-tour/default.nix
index c496ceee6ed1..cbb33c2b2308 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-tour/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-tour/default.nix
@@ -6,7 +6,7 @@
 , ninja
 , fetchurl
 , pkg-config
-, gtk3
+, gtk4
 , glib
 , gdk-pixbuf
 , desktop-file-utils
@@ -14,7 +14,7 @@
 , wrapGAppsHook
 , python3
 , gnome
-, libhandy
+, libadwaita
 , librsvg
 , rustc
 , cargo
@@ -22,11 +22,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-tour";
-  version = "40.1";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    hash = "sha256-rYYS110B7qY8WcmY65KOvm75mEZgYbn8H97IKF02M5g=";
+    hash = "sha256-/PGsaJBX2oZZaXDsPag1VSHApy6VBj6wWdX+5N6oL08=";
   };
 
   cargoVendorDir = "vendor";
@@ -49,16 +49,11 @@ stdenv.mkDerivation rec {
   buildInputs = [
     gdk-pixbuf
     glib
-    gtk3
-    libhandy
+    gtk4
+    libadwaita
     librsvg
   ];
 
-  postPatch = ''
-    chmod +x build-aux/meson_post_install.py
-    patchShebangs build-aux/meson_post_install.py
-  '';
-
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-user-share/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-user-share/default.nix
index bab13a6ccd19..4c33b76b0124 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-user-share/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-user-share/default.nix
@@ -35,6 +35,11 @@ stdenv.mkDerivation rec {
       url = "https://gitlab.gnome.org/GNOME/gnome-user-share/commit/8772980d4732c15505b15dccff2ca3c97e96d49d.patch";
       sha256 = "03clzhrx72pq1cbmg2y24hvw4i1xsvrg9ip113fi5bc3w4gcji7p";
     })
+    # fix compilation with meson >=0.61
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-user-share/-/commit/c31b0a8f33b95c0077cd5ee2102a71a49bee8abe.patch";
+      hash = "sha256-kH+cPBmSErWxsw+IyyjWgENi4I3ZcKjSA9+em8u4DYs=";
+    })
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gucharmap/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gucharmap/default.nix
index 7d15e6b41ef6..3dc08e66357a 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gucharmap/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/gucharmap/default.nix
@@ -7,7 +7,7 @@
 , pkg-config
 , python3
 , gtk3
-, adwaita-icon-theme
+, pcre2
 , glib
 , desktop-file-utils
 , gtk-doc
@@ -45,7 +45,7 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "gucharmap";
-  version = "14.0.0";
+  version = "14.0.2";
 
   outputs = [ "out" "lib" "dev" "devdoc" ];
 
@@ -54,7 +54,7 @@ in stdenv.mkDerivation rec {
     owner = "GNOME";
     repo = pname;
     rev = version;
-    sha256 = "sha256-d283zVRH42NZNq+vGmItN3ZBrRrl9gpYDco7osm3RoY=";
+    sha256 = "sha256-gyOm/S0ae0kX4AFUiglqyGRGB8C/KUuaG/dr/Wf1ug0=";
   };
 
   nativeBuildInputs = [
@@ -79,7 +79,7 @@ in stdenv.mkDerivation rec {
     gtk3
     glib
     gsettings-desktop-schemas
-    adwaita-icon-theme
+    pcre2
   ];
 
   mesonFlags = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/mutter/default.nix b/nixpkgs/pkgs/desktops/gnome/core/mutter/default.nix
index d0b8a7537e29..9f3925d0ce50 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/mutter/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/mutter/default.nix
@@ -46,13 +46,13 @@
 
 let self = stdenv.mkDerivation rec {
   pname = "mutter";
-  version = "41.4";
+  version = "42.0";
 
   outputs = [ "out" "dev" "man" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/mutter/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "VYgmlQZKpvA4XNH39/qywqLtLJrsePV4+qB/UgnKUpw=";
+    sha256 = "0eJARGt/jNij/52q4zbByQFhk7p+B2nHml5sA4SQIuU=";
   };
 
   patches = [
@@ -136,7 +136,7 @@ let self = stdenv.mkDerivation rec {
   PKG_CONFIG_UDEV_UDEVDIR = "${placeholder "out"}/lib/udev";
 
   passthru = {
-    libdir = "${self}/lib/mutter-9";
+    libdir = "${self}/lib/mutter-10";
 
     tests = {
       libdirExists = runCommand "mutter-libdir-exists" {} ''
diff --git a/nixpkgs/pkgs/desktops/gnome/core/nautilus/default.nix b/nixpkgs/pkgs/desktops/gnome/core/nautilus/default.nix
index 3f61f55db1dc..b3665e46fa43 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/nautilus/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/nautilus/default.nix
@@ -1,6 +1,6 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchurl
-, fetchpatch
 , meson
 , ninja
 , pkg-config
@@ -19,7 +19,6 @@
 , libnotify
 , libexif
 , libseccomp
-, exempi
 , librsvg
 , tracker
 , tracker-miners
@@ -35,13 +34,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nautilus";
-  version = "41.2";
+  version = "42.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "hyKFscQKbuQYzile0RX1Qn2nCQfYItlbz1FnXVSYgis=";
+    sha256 = "PJBPM7otKgeIkr7ir3FITNYIkjzXjsfooVF7whVRE9U=";
   };
 
   patches = [
@@ -53,17 +52,6 @@ stdenv.mkDerivation rec {
       src = ./fix-paths.patch;
       inherit tracker;
     })
-
-    # Fix build with latest libportal
-    # https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/749
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/nautilus/-/commit/55cfd66ccca391fc144f5863ff6bfc1f3b137e2d.patch";
-      sha256 = "xSb9l7xxEYpAwmdmeWT/t7Z9Ck3DPtsODzbReQW/Q70=";
-      excludes = [
-        "build-aux/flatpak/org.gnome.Nautilus.json"
-        "build-aux/flatpak/org.gnome.Nautilus.yml"
-      ];
-    })
   ];
 
   nativeBuildInputs = [
@@ -79,7 +67,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    exempi
     gexiv2
     glib-networking
     gnome-desktop
diff --git a/nixpkgs/pkgs/desktops/gnome/core/simple-scan/default.nix b/nixpkgs/pkgs/desktops/gnome/core/simple-scan/default.nix
index 0865fbb5aca7..dd96e254109d 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/simple-scan/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/simple-scan/default.nix
@@ -25,11 +25,11 @@
 
 stdenv.mkDerivation rec {
   pname = "simple-scan";
-  version = "40.7";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-fFUYUsta99NKqYn4rV7ePL4xgoz43VrsKytv3NGsPVM=";
+    sha256 = "sha256-rB+Fev0LyIl90gRQI618VxPlzu/KVrCzzF6aR5UylYY=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/totem/default.nix b/nixpkgs/pkgs/desktops/gnome/core/totem/default.nix
index 0178c04b53ca..44e1319f8d4a 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/totem/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/totem/default.nix
@@ -4,8 +4,6 @@
 , ninja
 , gettext
 , gst_all_1
-, clutter-gtk
-, clutter-gst
 , python3Packages
 , shared-mime-info
 , pkg-config
@@ -21,6 +19,7 @@
 , grilo
 , grilo-plugins
 , libpeas
+, libhandy
 , adwaita-icon-theme
 , gnome-desktop
 , gsettings-desktop-schemas
@@ -30,11 +29,11 @@
 
 stdenv.mkDerivation rec {
   pname = "totem";
-  version = "3.38.2";
+  version = "42.0";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/totem/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "/OVi4rJsvPwMZ4U43MgfncFc5g1aie5DWJB79jQwTEA=";
+    url = "mirror://gnome/sources/totem/${lib.versions.major version}/${pname}-${version}.tar.xz";
+    sha256 = "SvBJHduV34szruOZ06UPnHqxfeiNOvYzVlZ8+I9X5qs=";
   };
 
   nativeBuildInputs = [
@@ -53,17 +52,16 @@ stdenv.mkDerivation rec {
     gtk3
     glib
     grilo
-    clutter-gtk
-    clutter-gst
     totem-pl-parser
     grilo-plugins
     gst_all_1.gstreamer
     gst_all_1.gst-plugins-base
-    gst_all_1.gst-plugins-good
+    (gst_all_1.gst-plugins-good.override { gtkSupport = true; })
     gst_all_1.gst-plugins-bad
     gst_all_1.gst-plugins-ugly
     gst_all_1.gst-libav
     libpeas
+    libhandy
     shared-mime-info
     gdk-pixbuf
     libxml2
diff --git a/nixpkgs/pkgs/desktops/gnome/core/yelp-xsl/default.nix b/nixpkgs/pkgs/desktops/gnome/core/yelp-xsl/default.nix
index 6fac906e4ba9..3398e8ddd571 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/yelp-xsl/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/yelp-xsl/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   pname = "yelp-xsl";
-  version = "41.1";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/yelp-xsl/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-DW2zesLvgSSD4BBHA/H6nPAy6eCVal8cOvvMI3kfilQ=";
+    sha256 = "sha256-KbJzzAvRbvtumDRDgD8en9wDUR5cT/Y0j9MKYE1NyEY=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/gnome/core/yelp/default.nix b/nixpkgs/pkgs/desktops/gnome/core/yelp/default.nix
index be858a19487d..4ae54200d09c 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/yelp/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/core/yelp/default.nix
@@ -5,6 +5,7 @@
 , webkitgtk
 , pkg-config
 , gtk3
+, libhandy
 , glib
 , gnome
 , sqlite
@@ -17,11 +18,11 @@
 
 stdenv.mkDerivation rec {
   pname = "yelp";
-  version = "41.2";
+  version = "42.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/yelp/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-sAvwM/At15ttPyVQMccd+NbtOOVSyHC485GjdHJMQ8U=";
+    sha256 = "sha256-JbEUarhUmIilqNoGf2O0cLDw+AC2roicrNEU0B1xO0E=";
   };
 
   nativeBuildInputs = [
@@ -33,6 +34,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     gtk3
+    libhandy
     glib
     webkitgtk
     sqlite
diff --git a/nixpkgs/pkgs/desktops/gnome/default.nix b/nixpkgs/pkgs/desktops/gnome/default.nix
index 9e02b80d9f7f..729a6bd16ca8 100644
--- a/nixpkgs/pkgs/desktops/gnome/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/default.nix
@@ -58,8 +58,6 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   gnome-common = callPackage ./core/gnome-common { };
 
-  gnome-desktop = callPackage ./core/gnome-desktop { };
-
   gnome-dictionary = callPackage ./core/gnome-dictionary { };
 
   gnome-disk-utility = callPackage ./core/gnome-disk-utility { };
@@ -281,6 +279,7 @@ lib.makeScope pkgs.newScope (self: with self; {
 }) // lib.optionalAttrs (config.allowAliases or true) {
 #### Legacy aliases. They need to be outside the scope or they will shadow the attributes from parent scope.
 
+  gnome-desktop = pkgs.gnome-desktop; # added 2022-03-16
   libgnome-games-support = pkgs.libgnome-games-support; # added 2022-02-19
 
   bijiben = throw "The ‘gnome.bijiben’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-notes’ directly."; # added 2018-09-26
@@ -289,7 +288,7 @@ lib.makeScope pkgs.newScope (self: with self; {
   glib_networking = throw "The ‘gnome.glib_networking’ alias was removed on 2022-01-13. Please use ‘pkgs.glib-networking’ directly."; # added 2018-02-25
   gnome_common = throw "The ‘gnome.gnome_common’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-common’ directly."; # added 2018-02-25
   gnome_control_center = throw "The ‘gnome.gnome_control_center’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-control-center’ directly."; # added 2018-02-25
-  gnome_desktop = throw "The ‘gnome.gnome_desktop’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-desktop’ directly."; # added 2018-02-25
+  gnome_desktop = throw "The ‘gnome.gnome_desktop’ alias was removed on 2022-01-13. Please use pkgs.gnome-desktop’ directly."; # added 2018-02-25
   gnome_keyring = throw "The ‘gnome.gnome_keyring’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-keyring’ directly."; # added 2018-02-25
   gnome_online_accounts = throw "The ‘gnome.gnome_online_accounts’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-online-accounts’ directly."; # added 2018-02-25
   gnome_session = throw "The ‘gnome.gnome_session’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-session’ directly."; # added 2018-02-25
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/collisions.json b/nixpkgs/pkgs/desktops/gnome/extensions/collisions.json
index b43673a13422..d337348e8fd6 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/collisions.json
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/collisions.json
@@ -43,6 +43,10 @@
     "gnome-trash": [
       "gnome-trash@gnome-trash.b00f.gitlab.com",
       "gnome-trash@b00f.github.io"
+    ],
+    "volume-scroller": [
+      "volume_scroller@trflynn89.pm.me",
+      "volume_scroller@noskoski"
     ]
   },
   "40": {
@@ -98,6 +102,10 @@
     "wireguard-indicator": [
       "wireguard-indicator@gregos.me",
       "wireguard-indicator@atareao.es"
+    ],
+    "volume-scroller": [
+      "volume_scroller@trflynn89.pm.me",
+      "volume_scroller@noskoski"
     ]
   },
   "41": {
@@ -129,5 +137,6 @@
       "floatingDock@sun.wxg@gmail.com",
       "floating-dock@nandoferreira_prof@hotmail.com"
     ]
-  }
+  },
+  "42": {}
 }
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/default.nix
index e2f9bb2c2d9c..d01c28be92c6 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/default.nix
@@ -58,8 +58,9 @@ in rec {
   gnome38Extensions = mapUuidNames (produceExtensionsList "38");
   gnome40Extensions = mapUuidNames (produceExtensionsList "40");
   gnome41Extensions = mapUuidNames (produceExtensionsList "41");
+  gnome42Extensions = mapUuidNames (produceExtensionsList "42");
 
-  gnomeExtensions = lib.trivial.pipe (gnome40Extensions // gnome41Extensions) [
+  gnomeExtensions = lib.trivial.pipe (gnome40Extensions // gnome41Extensions // gnome42Extensions) [
     # Apply some custom patches for automatically packaged extensions
     (callPackage ./extensionOverrides.nix {})
     # Add all manually packaged extensions
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/extensionOverrides.nix b/nixpkgs/pkgs/desktops/gnome/extensions/extensionOverrides.nix
index bc659b9a4438..b1c762a018f4 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/extensionOverrides.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/extensionOverrides.nix
@@ -3,8 +3,15 @@
 , gjs
 , gnome
 , gobject-introspection
+, hddtemp
+, liquidctl
+, lm_sensors
+, netcat-gnu
+, nvme-cli
+, procps
 , pulseaudio
 , python3
+, smartmontools
 , substituteAll
 , touchegg
 , vte
@@ -51,6 +58,17 @@ super: lib.trivial.pipe super [
     '';
   }))
 
+  (patchExtension "freon@UshakovVasilii_Github.yahoo.com" (old: {
+    patches = [
+      (substituteAll {
+        src = ./extensionOverridesPatches/freon_at_UshakovVasilii_Github.yahoo.com.patch;
+        inherit hddtemp liquidctl lm_sensors procps smartmontools;
+        netcat = netcat-gnu;
+        nvmecli = nvme-cli;
+      })
+    ];
+  }))
+
   (patchExtension "gnome-shell-screenshot@ttll.de" (old: {
     # Requires gjs
     # https://github.com/NixOS/nixpkgs/issues/136112
@@ -61,6 +79,16 @@ super: lib.trivial.pipe super [
     '';
   }))
 
+  (patchExtension "screen-autorotate@kosmospredanie.yandex.ru" (old: {
+    # Requires gjs
+    # https://github.com/NixOS/nixpkgs/issues/164865
+    postPatch = ''
+      for file in *.js; do
+        substituteInPlace $file --replace "gjs" "${gjs}/bin/gjs"
+      done
+    '';
+  }))
+
   (patchExtension "shell-volume-mixer@derhofbauer.at" (old: {
     patches = [
       (substituteAll {
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/freon/fix_paths.patch b/nixpkgs/pkgs/desktops/gnome/extensions/extensionOverridesPatches/freon_at_UshakovVasilii_Github.yahoo.com.patch
index b1be13e8ff58..da2e940ba017 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/freon/fix_paths.patch
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/extensionOverridesPatches/freon_at_UshakovVasilii_Github.yahoo.com.patch
@@ -1,7 +1,7 @@
-diff --git a/freon@UshakovVasilii_Github.yahoo.com/hddtempUtil.js b/freon@UshakovVasilii_Github.yahoo.com/hddtempUtil.js
+diff --git a/hddtempUtil.js b/hddtempUtil.js
 index e5d1d6d..856654b 100644
---- a/freon@UshakovVasilii_Github.yahoo.com/hddtempUtil.js
-+++ b/freon@UshakovVasilii_Github.yahoo.com/hddtempUtil.js
+--- a/hddtempUtil.js
++++ b/hddtempUtil.js
 @@ -7,7 +7,7 @@ var HddtempUtil = class extends CommandLineUtil.CommandLineUtil {
  
      constructor() {
@@ -31,10 +31,10 @@ index e5d1d6d..856654b 100644
              if(output.length)
                  pid = Number(output.trim());
          }
-diff --git a/freon@UshakovVasilii_Github.yahoo.com/liquidctlUtil.js b/freon@UshakovVasilii_Github.yahoo.com/liquidctlUtil.js
+diff --git a/liquidctlUtil.js b/liquidctlUtil.js
 index 766bf62..7cd4e94 100644
---- a/freon@UshakovVasilii_Github.yahoo.com/liquidctlUtil.js
-+++ b/freon@UshakovVasilii_Github.yahoo.com/liquidctlUtil.js
+--- a/liquidctlUtil.js
++++ b/liquidctlUtil.js
 @@ -8,7 +8,7 @@ const commandLineUtil = Me.imports.commandLineUtil;
  var LiquidctlUtil = class extends commandLineUtil.CommandLineUtil {
      constructor() {
@@ -44,10 +44,10 @@ index 766bf62..7cd4e94 100644
          this._argv = path ? [path, 'status', '--json'] : null;
      }
  
-diff --git a/freon@UshakovVasilii_Github.yahoo.com/nvmecliUtil.js b/freon@UshakovVasilii_Github.yahoo.com/nvmecliUtil.js
+diff --git a/nvmecliUtil.js b/nvmecliUtil.js
 index ae2ea93..2349b9e 100644
---- a/freon@UshakovVasilii_Github.yahoo.com/nvmecliUtil.js
-+++ b/freon@UshakovVasilii_Github.yahoo.com/nvmecliUtil.js
+--- a/nvmecliUtil.js
++++ b/nvmecliUtil.js
 @@ -3,7 +3,7 @@ const GLib = imports.gi.GLib;
  const Me = imports.misc.extensionUtils.getCurrentExtension();
  
@@ -57,10 +57,10 @@ index ae2ea93..2349b9e 100644
      return JSON.parse(GLib.spawn_command_line_sync(`${nvme} ${argv} -o json`)[1].toString())
  }
  
-diff --git a/freon@UshakovVasilii_Github.yahoo.com/sensorsUtil.js b/freon@UshakovVasilii_Github.yahoo.com/sensorsUtil.js
+diff --git a/sensorsUtil.js b/sensorsUtil.js
 index 62fa580..c017748 100644
---- a/freon@UshakovVasilii_Github.yahoo.com/sensorsUtil.js
-+++ b/freon@UshakovVasilii_Github.yahoo.com/sensorsUtil.js
+--- a/sensorsUtil.js
++++ b/sensorsUtil.js
 @@ -7,7 +7,7 @@ var SensorsUtil = class extends CommandLineUtil.CommandLineUtil {
  
      constructor() {
@@ -70,10 +70,10 @@ index 62fa580..c017748 100644
          // -A: Do not show adapter -j: JSON output
          this._argv = path ? [path, '-A', '-j'] : null;
      }
-diff --git a/freon@UshakovVasilii_Github.yahoo.com/smartctlUtil.js b/freon@UshakovVasilii_Github.yahoo.com/smartctlUtil.js
+diff --git a/smartctlUtil.js b/smartctlUtil.js
 index 03d469b..6057a3b 100644
---- a/freon@UshakovVasilii_Github.yahoo.com/smartctlUtil.js
-+++ b/freon@UshakovVasilii_Github.yahoo.com/smartctlUtil.js
+--- a/smartctlUtil.js
++++ b/smartctlUtil.js
 @@ -3,7 +3,7 @@ const GLib = imports.gi.GLib;
  const Me = imports.misc.extensionUtils.getCurrentExtension();
  const ByteArray = imports.byteArray;
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/extensionRenames.nix b/nixpkgs/pkgs/desktops/gnome/extensions/extensionRenames.nix
index a90673ebeb8e..5a3eb74db1c3 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/extensionRenames.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/extensionRenames.nix
@@ -55,6 +55,9 @@
   "extension-list@tu.berry" = "extension-list";
   "screen-lock@garciabaameiro.com" = "screen-lock"; # Don't know why they got 'extension-list' as slug
 
+  "volume_scroller@trflynn89.pm.me" = "volume-scroller";
+  "volume_scroller@noskoski" = "volume-scroller-2";
+
   # ####### GNOME 3.38 #######
 
   "bottompanel@tmoer93" = "bottompanel";
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/extensions.json b/nixpkgs/pkgs/desktops/gnome/extensions/extensions.json
index adf110fcd6bd..941c5c929a2f 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/extensions.json
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/extensions.json
@@ -1,19 +1,19 @@
 [ {"uuid": "Move_Clock@rmy.pobox.com", "name": "Frippery Move Clock", "pname": "move-clock", "description": "Move clock to left of status menu button", "link": "https://extensions.gnome.org/extension/2/move-clock/", "shell_version_map": {"38": {"version": "22", "sha256": "085ardkmrxz6rzh48frpb5z8mjlilqk037gjr84dr39gj9dkb81z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgY2xvY2sgdG8gbGVmdCBvZiBzdGF0dXMgbWVudSBidXR0b24iLAogICJuYW1lIjogIkZyaXBwZXJ5IE1vdmUgQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHA6Ly9mcmlwcGVyeS5vcmcvZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAiTW92ZV9DbG9ja0BybXkucG9ib3guY29tIiwKICAidmVyc2lvbiI6IDIyCn0="}, "40": {"version": "25", "sha256": "06bjswh450dwgns6kycgrzq3c4cf4ja57mraw8f7rlgzqrwlj3ci", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgY2xvY2sgdG8gbGVmdCBvZiBzdGF0dXMgbWVudSBidXR0b24iLAogICJuYW1lIjogIkZyaXBwZXJ5IE1vdmUgQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cDovL2ZyaXBwZXJ5Lm9yZy9leHRlbnNpb25zIiwKICAidXVpZCI6ICJNb3ZlX0Nsb2NrQHJteS5wb2JveC5jb20iLAogICJ2ZXJzaW9uIjogMjUKfQ=="}, "41": {"version": "25", "sha256": "06bjswh450dwgns6kycgrzq3c4cf4ja57mraw8f7rlgzqrwlj3ci", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgY2xvY2sgdG8gbGVmdCBvZiBzdGF0dXMgbWVudSBidXR0b24iLAogICJuYW1lIjogIkZyaXBwZXJ5IE1vdmUgQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cDovL2ZyaXBwZXJ5Lm9yZy9leHRlbnNpb25zIiwKICAidXVpZCI6ICJNb3ZlX0Nsb2NrQHJteS5wb2JveC5jb20iLAogICJ2ZXJzaW9uIjogMjUKfQ=="}}}
 , {"uuid": "Bottom_Panel@rmy.pobox.com", "name": "Frippery Bottom Panel", "pname": "bottom-panel", "description": "Add a bottom panel to the shell", "link": "https://extensions.gnome.org/extension/3/bottom-panel/", "shell_version_map": {"38": {"version": "49", "sha256": "09gsbnj564z8f7m593iv8j7s6f32230k0ikfsl1dlv1jsfpfn8zv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGJvdHRvbSBwYW5lbCB0byB0aGUgc2hlbGwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcmlwcGVyeS1ib3R0b20tcGFuZWwiLAogICJuYW1lIjogIkZyaXBwZXJ5IEJvdHRvbSBQYW5lbCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkuYm90dG9tLXBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwOi8vZnJpcHBlcnkub3JnL2V4dGVuc2lvbnMiLAogICJ1dWlkIjogIkJvdHRvbV9QYW5lbEBybXkucG9ib3guY29tIiwKICAidmVyc2lvbiI6IDQ5Cn0="}, "40": {"version": "58", "sha256": "1b69fx42mzc1fhi6c4xv8vyz7mrj551jaf0dbz4vif0g8c83sdc1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGJvdHRvbSBwYW5lbCB0byB0aGUgc2hlbGwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcmlwcGVyeS1ib3R0b20tcGFuZWwiLAogICJuYW1lIjogIkZyaXBwZXJ5IEJvdHRvbSBQYW5lbCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkuYm90dG9tLXBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHA6Ly9mcmlwcGVyeS5vcmcvZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAiQm90dG9tX1BhbmVsQHJteS5wb2JveC5jb20iLAogICJ2ZXJzaW9uIjogNTgKfQ=="}, "41": {"version": "58", "sha256": "1b69fx42mzc1fhi6c4xv8vyz7mrj551jaf0dbz4vif0g8c83sdc1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGJvdHRvbSBwYW5lbCB0byB0aGUgc2hlbGwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcmlwcGVyeS1ib3R0b20tcGFuZWwiLAogICJuYW1lIjogIkZyaXBwZXJ5IEJvdHRvbSBQYW5lbCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkuYm90dG9tLXBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHA6Ly9mcmlwcGVyeS5vcmcvZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAiQm90dG9tX1BhbmVsQHJteS5wb2JveC5jb20iLAogICJ2ZXJzaW9uIjogNTgKfQ=="}}}
 , {"uuid": "Panel_Favorites@rmy.pobox.com", "name": "Frippery Panel Favorites", "pname": "panel-favorites", "description": "Add launchers for Favorites to the panel", "link": "https://extensions.gnome.org/extension/4/panel-favorites/", "shell_version_map": {"38": {"version": "39", "sha256": "0jqysp82rhckdlgn1jhf1n6sqqphv97m9dri5pjiqjggvm4ls80j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBsYXVuY2hlcnMgZm9yIEZhdm9yaXRlcyB0byB0aGUgcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcmlwcGVyeS1wYW5lbC1mYXZvcml0ZXMiLAogICJuYW1lIjogIkZyaXBwZXJ5IFBhbmVsIEZhdm9yaXRlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkucGFuZWwtZmF2b3JpdGVzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2ZyaXBwZXJ5Lm9yZy9leHRlbnNpb25zIiwKICAidXVpZCI6ICJQYW5lbF9GYXZvcml0ZXNAcm15LnBvYm94LmNvbSIsCiAgInZlcnNpb24iOiAzOQp9"}, "40": {"version": "43", "sha256": "1nic3ds6y8gbrihfbqm9q62258rvrrv0prnkrbg5kx37bbnl2z5v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBsYXVuY2hlcnMgZm9yIEZhdm9yaXRlcyB0byB0aGUgcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcmlwcGVyeS1wYW5lbC1mYXZvcml0ZXMiLAogICJuYW1lIjogIkZyaXBwZXJ5IFBhbmVsIEZhdm9yaXRlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkucGFuZWwtZmF2b3JpdGVzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZnJpcHBlcnkub3JnL2V4dGVuc2lvbnMiLAogICJ1dWlkIjogIlBhbmVsX0Zhdm9yaXRlc0BybXkucG9ib3guY29tIiwKICAidmVyc2lvbiI6IDQzCn0="}, "41": {"version": "43", "sha256": "1nic3ds6y8gbrihfbqm9q62258rvrrv0prnkrbg5kx37bbnl2z5v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBsYXVuY2hlcnMgZm9yIEZhdm9yaXRlcyB0byB0aGUgcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcmlwcGVyeS1wYW5lbC1mYXZvcml0ZXMiLAogICJuYW1lIjogIkZyaXBwZXJ5IFBhbmVsIEZhdm9yaXRlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkucGFuZWwtZmF2b3JpdGVzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZnJpcHBlcnkub3JnL2V4dGVuc2lvbnMiLAogICJ1dWlkIjogIlBhbmVsX0Zhdm9yaXRlc0BybXkucG9ib3guY29tIiwKICAidmVyc2lvbiI6IDQzCn0="}}}
-, {"uuid": "apps-menu@gnome-shell-extensions.gcampax.github.com", "name": "Applications Menu", "pname": "applications-menu", "description": "Add a category-based menu for applications.\nThis extension is part of Classic Mode and is officially supported by GNOME. Please do not report bugs using the form below, use GNOME's GitLab instance instead.", "link": "https://extensions.gnome.org/extension/6/applications-menu/", "shell_version_map": {"38": {"version": "46", "sha256": "1l5fliypxq3s3b6crv7rc6nl741m7hw48dwl0g7vi3yxyw0vyc0x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGNhdGVnb3J5LWJhc2VkIG1lbnUgZm9yIGFwcGxpY2F0aW9ucy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImFwcHMtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkFwcGxpY2F0aW9ucyBNZW51IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlMjAwMkBiay5ydSIsCiAgICAiZGViYXJzaGlyQGdub21lLm9yZyIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJhcHBzLW1lbnVAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDYKfQ=="}, "40": {"version": "48", "sha256": "0whi4ir3hvz6gby57331hv0a80ssz1b746pj79v43cm15djlsbhv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGNhdGVnb3J5LWJhc2VkIG1lbnUgZm9yIGFwcGxpY2F0aW9ucy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImFwcHMtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkFwcGxpY2F0aW9ucyBNZW51IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlMjAwMkBiay5ydSIsCiAgICAiZGViYXJzaGlyQGdub21lLm9yZyIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAiYXBwcy1tZW51QGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ4Cn0="}, "41": {"version": "50", "sha256": "1x71mysa80n5nlfk79xgcz6k40qmw02g78pqjsvdinxsqlxi9ak6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGNhdGVnb3J5LWJhc2VkIG1lbnUgZm9yIGFwcGxpY2F0aW9ucy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImFwcHMtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1hcHBzLW1lbnUiLAogICJuYW1lIjogIkFwcGxpY2F0aW9ucyBNZW51IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlMjAwMkBiay5ydSIsCiAgICAiZGViYXJzaGlyQGdub21lLm9yZyIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwcy1tZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImFwcHMtbWVudUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1MAp9"}}}
-, {"uuid": "drive-menu@gnome-shell-extensions.gcampax.github.com", "name": "Removable Drive Menu", "pname": "removable-drive-menu", "description": "A status menu for accessing and unmounting removable devices.", "link": "https://extensions.gnome.org/extension/7/removable-drive-menu/", "shell_version_map": {"38": {"version": "45", "sha256": "1f5a9md2gxbl65shbdm498y5dwhhqdpj96gvf2m81ad7gsgxzliv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIG1lbnUgZm9yIGFjY2Vzc2luZyBhbmQgdW5tb3VudGluZyByZW1vdmFibGUgZGV2aWNlcy4iLAogICJleHRlbnNpb24taWQiOiAiZHJpdmUtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlJlbW92YWJsZSBEcml2ZSBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRyaXZlLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJkcml2ZS1tZW51QGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ1Cn0="}, "40": {"version": "47", "sha256": "0sa694y58jx4yhjb16i25d6h1z5d8vzamwpqlrfs35g0bq93ri5s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIG1lbnUgZm9yIGFjY2Vzc2luZyBhbmQgdW5tb3VudGluZyByZW1vdmFibGUgZGV2aWNlcy4iLAogICJleHRlbnNpb24taWQiOiAiZHJpdmUtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlJlbW92YWJsZSBEcml2ZSBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRyaXZlLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAiZHJpdmUtbWVudUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Nwp9"}, "41": {"version": "50", "sha256": "1gwi4xwwjps5mm412nck6nqbvcvll2n3h48wc74p9yi34fpr31dq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIG1lbnUgZm9yIGFjY2Vzc2luZyBhbmQgdW5tb3VudGluZyByZW1vdmFibGUgZGV2aWNlcy4iLAogICJleHRlbnNpb24taWQiOiAiZHJpdmUtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1kcml2ZS1tZW51IiwKICAibmFtZSI6ICJSZW1vdmFibGUgRHJpdmUgTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kcml2ZS1tZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImRyaXZlLW1lbnVAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNTAKfQ=="}}}
-, {"uuid": "places-menu@gnome-shell-extensions.gcampax.github.com", "name": "Places Status Indicator", "pname": "places-status-indicator", "description": "Add a menu for quickly navigating places in the system.\nThis extension is part of Classic Mode and is officially supported by GNOME. Please do not report bugs using the form below, use GNOME's GitLab instance instead.", "link": "https://extensions.gnome.org/extension/8/places-status-indicator/", "shell_version_map": {"38": {"version": "48", "sha256": "05m8nkg2km72iwnmadx6f4br8qnzqagp78mlhz8r2z6hp19nqsh5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIG1lbnUgZm9yIHF1aWNrbHkgbmF2aWdhdGluZyBwbGFjZXMgaW4gdGhlIHN5c3RlbS5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogInBsYWNlcy1tZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiUGxhY2VzIFN0YXR1cyBJbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucGxhY2VzLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJwbGFjZXMtbWVudUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0OAp9"}, "40": {"version": "51", "sha256": "159356lnwhxb2d52na679m0wdrsxw89x7m4zkq0kglf01cf8my65", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIG1lbnUgZm9yIHF1aWNrbHkgbmF2aWdhdGluZyBwbGFjZXMgaW4gdGhlIHN5c3RlbS5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogInBsYWNlcy1tZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiUGxhY2VzIFN0YXR1cyBJbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucGxhY2VzLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAicGxhY2VzLW1lbnVAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNTEKfQ=="}, "41": {"version": "53", "sha256": "0ycb0lgxmal2knz06f8sz638pyq5a14qg5x2cxx76m6ypqwv75h0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIG1lbnUgZm9yIHF1aWNrbHkgbmF2aWdhdGluZyBwbGFjZXMgaW4gdGhlIHN5c3RlbS5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogInBsYWNlcy1tZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXBsYWNlcy1tZW51IiwKICAibmFtZSI6ICJQbGFjZXMgU3RhdHVzIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wbGFjZXMtbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJwbGFjZXMtbWVudUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Mwp9"}}}
-, {"uuid": "windowsNavigator@gnome-shell-extensions.gcampax.github.com", "name": "windowNavigator", "pname": "windownavigator", "description": "Allow keyboard selection of windows and workspaces in overlay mode. <Ctrl>number selects a workspace, and <Alt>number selects a window.", "link": "https://extensions.gnome.org/extension/10/windownavigator/", "shell_version_map": {"38": {"version": "49", "sha256": "1rzfnssk0iw1ysaya79ksghikkr1rpm41h2w39cz142fby6kip2d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IGtleWJvYXJkIHNlbGVjdGlvbiBvZiB3aW5kb3dzIGFuZCB3b3Jrc3BhY2VzIGluIG92ZXJsYXkgbW9kZS4gPEN0cmw+bnVtYmVyIHNlbGVjdHMgYSB3b3Jrc3BhY2UsIGFuZCA8QWx0Pm51bWJlciBzZWxlY3RzIGEgd2luZG93LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3dzTmF2aWdhdG9yIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAid2luZG93TmF2aWdhdG9yIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInphc3BpcmVAcmFtYmxlci5ydSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53aW5kb3dzTmF2aWdhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93c05hdmlnYXRvckBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0OQp9"}, "40": {"version": "54", "sha256": "0y41w3lxbnhb709n7ynq21nhhc9p4j6fvyjzfw0aw8ysjc8f54iv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IGtleWJvYXJkIHNlbGVjdGlvbiBvZiB3aW5kb3dzIGFuZCB3b3Jrc3BhY2VzIGluIG92ZXJsYXkgbW9kZS4gPEN0cmw+bnVtYmVyIHNlbGVjdHMgYSB3b3Jrc3BhY2UsIGFuZCA8QWx0Pm51bWJlciBzZWxlY3RzIGEgd2luZG93LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3dzTmF2aWdhdG9yIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAid2luZG93TmF2aWdhdG9yIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInphc3BpcmVAcmFtYmxlci5ydSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53aW5kb3dzTmF2aWdhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIndpbmRvd3NOYXZpZ2F0b3JAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNTQKfQ=="}, "41": {"version": "56", "sha256": "0k404ig42y94j9ysfyvzk0ca5r7f70digwjyjf2cn3py72bs0slg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IGtleWJvYXJkIHNlbGVjdGlvbiBvZiB3aW5kb3dzIGFuZCB3b3Jrc3BhY2VzIGluIG92ZXJsYXkgbW9kZS4gPEN0cmw+bnVtYmVyIHNlbGVjdHMgYSB3b3Jrc3BhY2UsIGFuZCA8QWx0Pm51bWJlciBzZWxlY3RzIGEgd2luZG93LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3dzTmF2aWdhdG9yIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXdpbmRvd3NOYXZpZ2F0b3IiLAogICJuYW1lIjogIndpbmRvd05hdmlnYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJ6YXNwaXJlQHJhbWJsZXIucnUiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2luZG93c05hdmlnYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJ3aW5kb3dzTmF2aWdhdG9yQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDU2Cn0="}}}
+, {"uuid": "apps-menu@gnome-shell-extensions.gcampax.github.com", "name": "Applications Menu", "pname": "applications-menu", "description": "Add a category-based menu for applications.\nThis extension is part of Classic Mode and is officially supported by GNOME. Please do not report bugs using the form below, use GNOME's GitLab instance instead.", "link": "https://extensions.gnome.org/extension/6/applications-menu/", "shell_version_map": {"38": {"version": "46", "sha256": "1l5fliypxq3s3b6crv7rc6nl741m7hw48dwl0g7vi3yxyw0vyc0x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGNhdGVnb3J5LWJhc2VkIG1lbnUgZm9yIGFwcGxpY2F0aW9ucy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImFwcHMtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkFwcGxpY2F0aW9ucyBNZW51IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlMjAwMkBiay5ydSIsCiAgICAiZGViYXJzaGlyQGdub21lLm9yZyIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJhcHBzLW1lbnVAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDYKfQ=="}, "40": {"version": "48", "sha256": "0whi4ir3hvz6gby57331hv0a80ssz1b746pj79v43cm15djlsbhv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGNhdGVnb3J5LWJhc2VkIG1lbnUgZm9yIGFwcGxpY2F0aW9ucy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImFwcHMtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkFwcGxpY2F0aW9ucyBNZW51IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlMjAwMkBiay5ydSIsCiAgICAiZGViYXJzaGlyQGdub21lLm9yZyIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAiYXBwcy1tZW51QGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ4Cn0="}, "41": {"version": "50", "sha256": "1x71mysa80n5nlfk79xgcz6k40qmw02g78pqjsvdinxsqlxi9ak6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGNhdGVnb3J5LWJhc2VkIG1lbnUgZm9yIGFwcGxpY2F0aW9ucy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImFwcHMtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1hcHBzLW1lbnUiLAogICJuYW1lIjogIkFwcGxpY2F0aW9ucyBNZW51IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlMjAwMkBiay5ydSIsCiAgICAiZGViYXJzaGlyQGdub21lLm9yZyIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwcy1tZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImFwcHMtbWVudUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1MAp9"}, "42": {"version": "51", "sha256": "016ngp84g47p904kk9jzfn5mkpy774fj7h70v53dlqc9s7c58r6s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGNhdGVnb3J5LWJhc2VkIG1lbnUgZm9yIGFwcGxpY2F0aW9ucy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImFwcHMtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1hcHBzLW1lbnUiLAogICJuYW1lIjogIkFwcGxpY2F0aW9ucyBNZW51IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlMjAwMkBiay5ydSIsCiAgICAiZGViYXJzaGlyQGdub21lLm9yZyIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwcy1tZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImFwcHMtbWVudUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1MQp9"}}}
+, {"uuid": "drive-menu@gnome-shell-extensions.gcampax.github.com", "name": "Removable Drive Menu", "pname": "removable-drive-menu", "description": "A status menu for accessing and unmounting removable devices.", "link": "https://extensions.gnome.org/extension/7/removable-drive-menu/", "shell_version_map": {"38": {"version": "45", "sha256": "1f5a9md2gxbl65shbdm498y5dwhhqdpj96gvf2m81ad7gsgxzliv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIG1lbnUgZm9yIGFjY2Vzc2luZyBhbmQgdW5tb3VudGluZyByZW1vdmFibGUgZGV2aWNlcy4iLAogICJleHRlbnNpb24taWQiOiAiZHJpdmUtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlJlbW92YWJsZSBEcml2ZSBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRyaXZlLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJkcml2ZS1tZW51QGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ1Cn0="}, "40": {"version": "47", "sha256": "0sa694y58jx4yhjb16i25d6h1z5d8vzamwpqlrfs35g0bq93ri5s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIG1lbnUgZm9yIGFjY2Vzc2luZyBhbmQgdW5tb3VudGluZyByZW1vdmFibGUgZGV2aWNlcy4iLAogICJleHRlbnNpb24taWQiOiAiZHJpdmUtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlJlbW92YWJsZSBEcml2ZSBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRyaXZlLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAiZHJpdmUtbWVudUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Nwp9"}, "41": {"version": "50", "sha256": "1gwi4xwwjps5mm412nck6nqbvcvll2n3h48wc74p9yi34fpr31dq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIG1lbnUgZm9yIGFjY2Vzc2luZyBhbmQgdW5tb3VudGluZyByZW1vdmFibGUgZGV2aWNlcy4iLAogICJleHRlbnNpb24taWQiOiAiZHJpdmUtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1kcml2ZS1tZW51IiwKICAibmFtZSI6ICJSZW1vdmFibGUgRHJpdmUgTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kcml2ZS1tZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImRyaXZlLW1lbnVAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNTAKfQ=="}, "42": {"version": "51", "sha256": "1mjxrmlcrn1c9plcmvs4pgmm13jxc7c7v3s4d3xbl2bp096878dc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIG1lbnUgZm9yIGFjY2Vzc2luZyBhbmQgdW5tb3VudGluZyByZW1vdmFibGUgZGV2aWNlcy4iLAogICJleHRlbnNpb24taWQiOiAiZHJpdmUtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1kcml2ZS1tZW51IiwKICAibmFtZSI6ICJSZW1vdmFibGUgRHJpdmUgTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kcml2ZS1tZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImRyaXZlLW1lbnVAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNTEKfQ=="}}}
+, {"uuid": "places-menu@gnome-shell-extensions.gcampax.github.com", "name": "Places Status Indicator", "pname": "places-status-indicator", "description": "Add a menu for quickly navigating places in the system.\nThis extension is part of Classic Mode and is officially supported by GNOME. Please do not report bugs using the form below, use GNOME's GitLab instance instead.", "link": "https://extensions.gnome.org/extension/8/places-status-indicator/", "shell_version_map": {"38": {"version": "48", "sha256": "05m8nkg2km72iwnmadx6f4br8qnzqagp78mlhz8r2z6hp19nqsh5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIG1lbnUgZm9yIHF1aWNrbHkgbmF2aWdhdGluZyBwbGFjZXMgaW4gdGhlIHN5c3RlbS5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogInBsYWNlcy1tZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiUGxhY2VzIFN0YXR1cyBJbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucGxhY2VzLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJwbGFjZXMtbWVudUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0OAp9"}, "40": {"version": "51", "sha256": "159356lnwhxb2d52na679m0wdrsxw89x7m4zkq0kglf01cf8my65", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIG1lbnUgZm9yIHF1aWNrbHkgbmF2aWdhdGluZyBwbGFjZXMgaW4gdGhlIHN5c3RlbS5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogInBsYWNlcy1tZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiUGxhY2VzIFN0YXR1cyBJbmRpY2F0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucGxhY2VzLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAicGxhY2VzLW1lbnVAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNTEKfQ=="}, "41": {"version": "53", "sha256": "0ycb0lgxmal2knz06f8sz638pyq5a14qg5x2cxx76m6ypqwv75h0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIG1lbnUgZm9yIHF1aWNrbHkgbmF2aWdhdGluZyBwbGFjZXMgaW4gdGhlIHN5c3RlbS5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogInBsYWNlcy1tZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXBsYWNlcy1tZW51IiwKICAibmFtZSI6ICJQbGFjZXMgU3RhdHVzIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wbGFjZXMtbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJwbGFjZXMtbWVudUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Mwp9"}, "42": {"version": "54", "sha256": "1sfifdzglmn5x3qxs9k0dn4rwislsyzvp2w3dn47x26mvc90zb90", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIG1lbnUgZm9yIHF1aWNrbHkgbmF2aWdhdGluZyBwbGFjZXMgaW4gdGhlIHN5c3RlbS5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogInBsYWNlcy1tZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXBsYWNlcy1tZW51IiwKICAibmFtZSI6ICJQbGFjZXMgU3RhdHVzIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wbGFjZXMtbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJwbGFjZXMtbWVudUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1NAp9"}}}
+, {"uuid": "windowsNavigator@gnome-shell-extensions.gcampax.github.com", "name": "windowNavigator", "pname": "windownavigator", "description": "Allow keyboard selection of windows and workspaces in overlay mode. <Ctrl>number selects a workspace, and <Alt>number selects a window.", "link": "https://extensions.gnome.org/extension/10/windownavigator/", "shell_version_map": {"38": {"version": "49", "sha256": "1rzfnssk0iw1ysaya79ksghikkr1rpm41h2w39cz142fby6kip2d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IGtleWJvYXJkIHNlbGVjdGlvbiBvZiB3aW5kb3dzIGFuZCB3b3Jrc3BhY2VzIGluIG92ZXJsYXkgbW9kZS4gPEN0cmw+bnVtYmVyIHNlbGVjdHMgYSB3b3Jrc3BhY2UsIGFuZCA8QWx0Pm51bWJlciBzZWxlY3RzIGEgd2luZG93LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3dzTmF2aWdhdG9yIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAid2luZG93TmF2aWdhdG9yIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInphc3BpcmVAcmFtYmxlci5ydSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53aW5kb3dzTmF2aWdhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93c05hdmlnYXRvckBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0OQp9"}, "40": {"version": "54", "sha256": "0y41w3lxbnhb709n7ynq21nhhc9p4j6fvyjzfw0aw8ysjc8f54iv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IGtleWJvYXJkIHNlbGVjdGlvbiBvZiB3aW5kb3dzIGFuZCB3b3Jrc3BhY2VzIGluIG92ZXJsYXkgbW9kZS4gPEN0cmw+bnVtYmVyIHNlbGVjdHMgYSB3b3Jrc3BhY2UsIGFuZCA8QWx0Pm51bWJlciBzZWxlY3RzIGEgd2luZG93LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3dzTmF2aWdhdG9yIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAid2luZG93TmF2aWdhdG9yIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInphc3BpcmVAcmFtYmxlci5ydSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53aW5kb3dzTmF2aWdhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIndpbmRvd3NOYXZpZ2F0b3JAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNTQKfQ=="}, "41": {"version": "56", "sha256": "0k404ig42y94j9ysfyvzk0ca5r7f70digwjyjf2cn3py72bs0slg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IGtleWJvYXJkIHNlbGVjdGlvbiBvZiB3aW5kb3dzIGFuZCB3b3Jrc3BhY2VzIGluIG92ZXJsYXkgbW9kZS4gPEN0cmw+bnVtYmVyIHNlbGVjdHMgYSB3b3Jrc3BhY2UsIGFuZCA8QWx0Pm51bWJlciBzZWxlY3RzIGEgd2luZG93LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3dzTmF2aWdhdG9yIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXdpbmRvd3NOYXZpZ2F0b3IiLAogICJuYW1lIjogIndpbmRvd05hdmlnYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJ6YXNwaXJlQHJhbWJsZXIucnUiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2luZG93c05hdmlnYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJ3aW5kb3dzTmF2aWdhdG9yQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDU2Cn0="}, "42": {"version": "57", "sha256": "1w3rf6y7l2qgg4ya8cqlj8a6wf8l4yqfjlh17mpmi6gmfzsxplnf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IGtleWJvYXJkIHNlbGVjdGlvbiBvZiB3aW5kb3dzIGFuZCB3b3Jrc3BhY2VzIGluIG92ZXJsYXkgbW9kZS4gPEN0cmw+bnVtYmVyIHNlbGVjdHMgYSB3b3Jrc3BhY2UsIGFuZCA8QWx0Pm51bWJlciBzZWxlY3RzIGEgd2luZG93LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3dzTmF2aWdhdG9yIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXdpbmRvd3NOYXZpZ2F0b3IiLAogICJuYW1lIjogIndpbmRvd05hdmlnYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJ6YXNwaXJlQHJhbWJsZXIucnUiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2luZG93c05hdmlnYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJ3aW5kb3dzTmF2aWdhdG9yQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDU3Cn0="}}}
 , {"uuid": "Applications_Menu@rmy.pobox.com", "name": "Frippery Applications Menu", "pname": "applications-menu", "description": "Replace Activities button with an Applications menu", "link": "https://extensions.gnome.org/extension/13/applications-menu/", "shell_version_map": {"38": {"version": "45", "sha256": "0kg9dq1ssa11xizb31kcq3p724qzm1cmf30wriqffj043n5nd125", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgQWN0aXZpdGllcyBidXR0b24gd2l0aCBhbiBBcHBsaWNhdGlvbnMgbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImZyaXBwZXJ5LWFwcGxpY2F0aW9ucy1tZW51IiwKICAibmFtZSI6ICJGcmlwcGVyeSBBcHBsaWNhdGlvbnMgTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkuYXBwbGljYXRpb25zLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHA6Ly9mcmlwcGVyeS5vcmcvZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAiQXBwbGljYXRpb25zX01lbnVAcm15LnBvYm94LmNvbSIsCiAgInZlcnNpb24iOiA0NQp9"}, "40": {"version": "48", "sha256": "1dpgifdf5jk5mz67q8plxrd3952p0a3jzfg3yxxdhb00mdp26azr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgQWN0aXZpdGllcyBidXR0b24gd2l0aCBhbiBBcHBsaWNhdGlvbnMgbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImZyaXBwZXJ5LWFwcGxpY2F0aW9ucy1tZW51IiwKICAibmFtZSI6ICJGcmlwcGVyeSBBcHBsaWNhdGlvbnMgTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkuYXBwbGljYXRpb25zLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cDovL2ZyaXBwZXJ5Lm9yZy9leHRlbnNpb25zIiwKICAidXVpZCI6ICJBcHBsaWNhdGlvbnNfTWVudUBybXkucG9ib3guY29tIiwKICAidmVyc2lvbiI6IDQ4Cn0="}, "41": {"version": "48", "sha256": "1dpgifdf5jk5mz67q8plxrd3952p0a3jzfg3yxxdhb00mdp26azr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgQWN0aXZpdGllcyBidXR0b24gd2l0aCBhbiBBcHBsaWNhdGlvbnMgbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImZyaXBwZXJ5LWFwcGxpY2F0aW9ucy1tZW51IiwKICAibmFtZSI6ICJGcmlwcGVyeSBBcHBsaWNhdGlvbnMgTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZnJpcHBlcnkuYXBwbGljYXRpb25zLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cDovL2ZyaXBwZXJ5Lm9yZy9leHRlbnNpb25zIiwKICAidXVpZCI6ICJBcHBsaWNhdGlvbnNfTWVudUBybXkucG9ib3guY29tIiwKICAidmVyc2lvbiI6IDQ4Cn0="}}}
-, {"uuid": "auto-move-windows@gnome-shell-extensions.gcampax.github.com", "name": "Auto Move Windows", "pname": "auto-move-windows", "description": "Move applications to specific workspaces when they create windows.", "link": "https://extensions.gnome.org/extension/16/auto-move-windows/", "shell_version_map": {"38": {"version": "44", "sha256": "05lmpmyzaawxh3kn030a8sanq7p6g87zfh7nzxfvgi8nbpygd59q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgYXBwbGljYXRpb25zIHRvIHNwZWNpZmljIHdvcmtzcGFjZXMgd2hlbiB0aGV5IGNyZWF0ZSB3aW5kb3dzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJhdXRvLW1vdmUtd2luZG93cyIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkF1dG8gTW92ZSBXaW5kb3dzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJhbGVzc2FuZHJvLmNyaXNtYW5pQGdtYWlsLmNvbSIsCiAgICAidGhvbWFzLmJvdWZmb25AZ21haWwuY29tIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hdXRvLW1vdmUtd2luZG93cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImF1dG8tbW92ZS13aW5kb3dzQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ0Cn0="}, "40": {"version": "46", "sha256": "1hr0z7r0mg1xg9b41d71lqbyra813yrl8i80kin0dmwrcx8xqs8m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgYXBwbGljYXRpb25zIHRvIHNwZWNpZmljIHdvcmtzcGFjZXMgd2hlbiB0aGV5IGNyZWF0ZSB3aW5kb3dzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJhdXRvLW1vdmUtd2luZG93cyIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkF1dG8gTW92ZSBXaW5kb3dzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJhbGVzc2FuZHJvLmNyaXNtYW5pQGdtYWlsLmNvbSIsCiAgICAidGhvbWFzLmJvdWZmb25AZ21haWwuY29tIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hdXRvLW1vdmUtd2luZG93cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJhdXRvLW1vdmUtd2luZG93c0Bnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Ngp9"}, "41": {"version": "48", "sha256": "1sbxdz0dly2y0zdy5cla3avsnazvw9w31244yjgq1a7zq3dyd2jw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgYXBwbGljYXRpb25zIHRvIHNwZWNpZmljIHdvcmtzcGFjZXMgd2hlbiB0aGV5IGNyZWF0ZSB3aW5kb3dzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJhdXRvLW1vdmUtd2luZG93cyIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1hdXRvLW1vdmUtd2luZG93cyIsCiAgIm5hbWUiOiAiQXV0byBNb3ZlIFdpbmRvd3MiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImFsZXNzYW5kcm8uY3Jpc21hbmlAZ21haWwuY29tIiwKICAgICJ0aG9tYXMuYm91ZmZvbkBnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmF1dG8tbW92ZS13aW5kb3dzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImF1dG8tbW92ZS13aW5kb3dzQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ4Cn0="}}}
-, {"uuid": "native-window-placement@gnome-shell-extensions.gcampax.github.com", "name": "Native Window Placement", "pname": "native-window-placement", "description": "Arrange windows in overview in a more compact way.", "link": "https://extensions.gnome.org/extension/18/native-window-placement/", "shell_version_map": {"38": {"version": "45", "sha256": "15vhdcfrfbsinp0m1jfygjl4djccafhvgwc1rsi321jvykqhajmm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBpbiBvdmVydmlldyBpbiBhIG1vcmUgY29tcGFjdCB3YXkuIiwKICAiZXh0ZW5zaW9uLWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTmF0aXZlIFdpbmRvdyBQbGFjZW1lbnQiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgIndlcG1hc2NoZGFAZ214LmRlIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5uYXRpdmUtd2luZG93LXBsYWNlbWVudCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50QGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ1Cn0="}, "40": {"version": "47", "sha256": "1v424l1svrmw5yikxgbi1j14xx307dg9zy21f34rv2il8bf72vk4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBpbiBvdmVydmlldyBpbiBhIG1vcmUgY29tcGFjdCB3YXkuIiwKICAiZXh0ZW5zaW9uLWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTmF0aXZlIFdpbmRvdyBQbGFjZW1lbnQiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgIndlcG1hc2NoZGFAZ214LmRlIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5uYXRpdmUtd2luZG93LXBsYWNlbWVudCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJuYXRpdmUtd2luZG93LXBsYWNlbWVudEBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Nwp9"}, "41": {"version": "49", "sha256": "12yr2pc1qra962lyadryw64naq6pd30haja38g0svcqj84smqb46", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBpbiBvdmVydmlldyBpbiBhIG1vcmUgY29tcGFjdCB3YXkuIiwKICAiZXh0ZW5zaW9uLWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAibmFtZSI6ICJOYXRpdmUgV2luZG93IFBsYWNlbWVudCIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAid2VwbWFzY2hkYUBnbXguZGUiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50QGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ5Cn0="}}}
-, {"uuid": "user-theme@gnome-shell-extensions.gcampax.github.com", "name": "User Themes", "pname": "user-themes", "description": "Load shell themes from user directory.", "link": "https://extensions.gnome.org/extension/19/user-themes/", "shell_version_map": {"38": {"version": "42", "sha256": "0jykwcd8pmvr03dm2vala6nzzhi9i83c11svgx8wymfvxr5qrya8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJVc2VyIFRoZW1lcyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiam9obi5zdG93ZXJzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlci10aGVtZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogInVzZXItdGhlbWVAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDIKfQ=="}, "40": {"version": "46", "sha256": "07gbzvbnxah5bws5vc6sivw43j0rgm23n6vsp4a64z7s8s2ay7sm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJVc2VyIFRoZW1lcyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiam9obi5zdG93ZXJzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlci10aGVtZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJ1c2VyLXRoZW1lQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ2Cn0="}, "41": {"version": "48", "sha256": "0bbm4vbyrp9n3mmqwbhpb6f7dmlx23x1avnp8pilw4p1wr03p7h8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tdXNlci10aGVtZSIsCiAgIm5hbWUiOiAiVXNlciBUaGVtZXMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAidXNlci10aGVtZUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0OAp9"}}}
-, {"uuid": "workspace-indicator@gnome-shell-extensions.gcampax.github.com", "name": "Workspace Indicator", "pname": "workspace-indicator", "description": "Put an indicator on the panel signaling in which workspace you are, and give you the possibility of switching to another one.", "link": "https://extensions.gnome.org/extension/21/workspace-indicator/", "shell_version_map": {"38": {"version": "45", "sha256": "16y7zhlsj0qjwwj78fvcr81m7081i2y30gwjm35qahr3j0gfrk16", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJXb3Jrc3BhY2UgSW5kaWNhdG9yIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlcmljay5yZWRAZ21haWwuY29tIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid29ya3NwYWNlLWluZGljYXRvckBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0NQp9"}, "40": {"version": "49", "sha256": "0483k1scq0lwfpg3i3yww7kfzv0qwlp6aqyikkacivh0nkq6v2iy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJXb3Jrc3BhY2UgSW5kaWNhdG9yIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlcmljay5yZWRAZ21haWwuY29tIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3JAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDkKfQ=="}, "41": {"version": "51", "sha256": "1s2mkk41vq9nrlsw26317zh592l59y7cldfmkd3f0d4j2mdiy8bw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24td29ya3NwYWNlLWluZGljYXRvciIsCiAgIm5hbWUiOiAiV29ya3NwYWNlIEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiZXJpY2sucmVkQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud29ya3NwYWNlLWluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2UtaW5kaWNhdG9yQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUxCn0="}}}
-, {"uuid": "gTile@vibou", "name": "gTile", "pname": "gtile", "description": "Tile windows on a grid.", "link": "https://extensions.gnome.org/extension/28/gtile/", "shell_version_map": {"38": {"version": "48", "sha256": "10lldk59j2sfdhcxj8dw83bhc1jkm2343h8yxb2v722qhkz1bhhm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nVGlsZS9nVGlsZS9ibG9iL21hc3Rlci9SRUFETUUubWQiLAogICJ1dWlkIjogImdUaWxlQHZpYm91IiwKICAidmVyc2lvbiI6IDQ4Cn0="}, "40": {"version": "48", "sha256": "10lldk59j2sfdhcxj8dw83bhc1jkm2343h8yxb2v722qhkz1bhhm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nVGlsZS9nVGlsZS9ibG9iL21hc3Rlci9SRUFETUUubWQiLAogICJ1dWlkIjogImdUaWxlQHZpYm91IiwKICAidmVyc2lvbiI6IDQ4Cn0="}, "41": {"version": "48", "sha256": "10lldk59j2sfdhcxj8dw83bhc1jkm2343h8yxb2v722qhkz1bhhm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nVGlsZS9nVGlsZS9ibG9iL21hc3Rlci9SRUFETUUubWQiLAogICJ1dWlkIjogImdUaWxlQHZpYm91IiwKICAidmVyc2lvbiI6IDQ4Cn0="}}}
-, {"uuid": "lockkeys@vaina.lt", "name": "Lock Keys", "pname": "lock-keys", "description": "Numlock & Capslock status on the panel. Gnome version 3.30 and earlier users please install 44 version of the extension https://extensions.gnome.org/download-extension/lockkeys%40vaina.lt.shell-extension.zip?version_tag=26229 ", "link": "https://extensions.gnome.org/extension/36/lock-keys/", "shell_version_map": {"38": {"version": "45", "sha256": "08g4gng7ik6y27yl4s8cbk9k5k89xlkgi02jwximjvqnrsp0r5sg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYXp5c21hc3Rlci9nbm9tZS1zaGVsbC1leHRlbnNpb24tbG9ja2tleXMiLAogICJ1dWlkIjogImxvY2trZXlzQHZhaW5hLmx0IiwKICAidmVyc2lvbiI6IDQ1Cn0="}, "40": {"version": "45", "sha256": "08g4gng7ik6y27yl4s8cbk9k5k89xlkgi02jwximjvqnrsp0r5sg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYXp5c21hc3Rlci9nbm9tZS1zaGVsbC1leHRlbnNpb24tbG9ja2tleXMiLAogICJ1dWlkIjogImxvY2trZXlzQHZhaW5hLmx0IiwKICAidmVyc2lvbiI6IDQ1Cn0="}, "41": {"version": "45", "sha256": "08g4gng7ik6y27yl4s8cbk9k5k89xlkgi02jwximjvqnrsp0r5sg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rYXp5c21hc3Rlci9nbm9tZS1zaGVsbC1leHRlbnNpb24tbG9ja2tleXMiLAogICJ1dWlkIjogImxvY2trZXlzQHZhaW5hLmx0IiwKICAidmVyc2lvbiI6IDQ1Cn0="}}}
+, {"uuid": "auto-move-windows@gnome-shell-extensions.gcampax.github.com", "name": "Auto Move Windows", "pname": "auto-move-windows", "description": "Move applications to specific workspaces when they create windows.", "link": "https://extensions.gnome.org/extension/16/auto-move-windows/", "shell_version_map": {"38": {"version": "44", "sha256": "05lmpmyzaawxh3kn030a8sanq7p6g87zfh7nzxfvgi8nbpygd59q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgYXBwbGljYXRpb25zIHRvIHNwZWNpZmljIHdvcmtzcGFjZXMgd2hlbiB0aGV5IGNyZWF0ZSB3aW5kb3dzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJhdXRvLW1vdmUtd2luZG93cyIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkF1dG8gTW92ZSBXaW5kb3dzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJhbGVzc2FuZHJvLmNyaXNtYW5pQGdtYWlsLmNvbSIsCiAgICAidGhvbWFzLmJvdWZmb25AZ21haWwuY29tIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hdXRvLW1vdmUtd2luZG93cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImF1dG8tbW92ZS13aW5kb3dzQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ0Cn0="}, "40": {"version": "46", "sha256": "1hr0z7r0mg1xg9b41d71lqbyra813yrl8i80kin0dmwrcx8xqs8m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgYXBwbGljYXRpb25zIHRvIHNwZWNpZmljIHdvcmtzcGFjZXMgd2hlbiB0aGV5IGNyZWF0ZSB3aW5kb3dzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJhdXRvLW1vdmUtd2luZG93cyIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkF1dG8gTW92ZSBXaW5kb3dzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJhbGVzc2FuZHJvLmNyaXNtYW5pQGdtYWlsLmNvbSIsCiAgICAidGhvbWFzLmJvdWZmb25AZ21haWwuY29tIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hdXRvLW1vdmUtd2luZG93cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJhdXRvLW1vdmUtd2luZG93c0Bnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Ngp9"}, "41": {"version": "48", "sha256": "1sbxdz0dly2y0zdy5cla3avsnazvw9w31244yjgq1a7zq3dyd2jw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgYXBwbGljYXRpb25zIHRvIHNwZWNpZmljIHdvcmtzcGFjZXMgd2hlbiB0aGV5IGNyZWF0ZSB3aW5kb3dzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJhdXRvLW1vdmUtd2luZG93cyIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1hdXRvLW1vdmUtd2luZG93cyIsCiAgIm5hbWUiOiAiQXV0byBNb3ZlIFdpbmRvd3MiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImFsZXNzYW5kcm8uY3Jpc21hbmlAZ21haWwuY29tIiwKICAgICJ0aG9tYXMuYm91ZmZvbkBnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmF1dG8tbW92ZS13aW5kb3dzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImF1dG8tbW92ZS13aW5kb3dzQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ4Cn0="}, "42": {"version": "49", "sha256": "031ppsjqv3y81wcjjsm14rqfh0l7vvaavy01hlqfyglpk8vlfvml", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgYXBwbGljYXRpb25zIHRvIHNwZWNpZmljIHdvcmtzcGFjZXMgd2hlbiB0aGV5IGNyZWF0ZSB3aW5kb3dzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJhdXRvLW1vdmUtd2luZG93cyIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1hdXRvLW1vdmUtd2luZG93cyIsCiAgIm5hbWUiOiAiQXV0byBNb3ZlIFdpbmRvd3MiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImFsZXNzYW5kcm8uY3Jpc21hbmlAZ21haWwuY29tIiwKICAgICJ0aG9tYXMuYm91ZmZvbkBnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmF1dG8tbW92ZS13aW5kb3dzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImF1dG8tbW92ZS13aW5kb3dzQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ5Cn0="}}}
+, {"uuid": "native-window-placement@gnome-shell-extensions.gcampax.github.com", "name": "Native Window Placement", "pname": "native-window-placement", "description": "Arrange windows in overview in a more compact way.", "link": "https://extensions.gnome.org/extension/18/native-window-placement/", "shell_version_map": {"38": {"version": "45", "sha256": "15vhdcfrfbsinp0m1jfygjl4djccafhvgwc1rsi321jvykqhajmm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBpbiBvdmVydmlldyBpbiBhIG1vcmUgY29tcGFjdCB3YXkuIiwKICAiZXh0ZW5zaW9uLWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTmF0aXZlIFdpbmRvdyBQbGFjZW1lbnQiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgIndlcG1hc2NoZGFAZ214LmRlIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5uYXRpdmUtd2luZG93LXBsYWNlbWVudCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50QGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ1Cn0="}, "40": {"version": "47", "sha256": "1v424l1svrmw5yikxgbi1j14xx307dg9zy21f34rv2il8bf72vk4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBpbiBvdmVydmlldyBpbiBhIG1vcmUgY29tcGFjdCB3YXkuIiwKICAiZXh0ZW5zaW9uLWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTmF0aXZlIFdpbmRvdyBQbGFjZW1lbnQiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgIndlcG1hc2NoZGFAZ214LmRlIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5uYXRpdmUtd2luZG93LXBsYWNlbWVudCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJuYXRpdmUtd2luZG93LXBsYWNlbWVudEBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Nwp9"}, "41": {"version": "49", "sha256": "12yr2pc1qra962lyadryw64naq6pd30haja38g0svcqj84smqb46", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBpbiBvdmVydmlldyBpbiBhIG1vcmUgY29tcGFjdCB3YXkuIiwKICAiZXh0ZW5zaW9uLWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAibmFtZSI6ICJOYXRpdmUgV2luZG93IFBsYWNlbWVudCIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAid2VwbWFzY2hkYUBnbXguZGUiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50QGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ5Cn0="}, "42": {"version": "50", "sha256": "0zqqisd0k81i0ydrbr1qrw1gdfs0p5y75dbqcsixn0srf5995xvm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd2luZG93cyBpbiBvdmVydmlldyBpbiBhIG1vcmUgY29tcGFjdCB3YXkuIiwKICAiZXh0ZW5zaW9uLWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAibmFtZSI6ICJOYXRpdmUgV2luZG93IFBsYWNlbWVudCIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAid2VwbWFzY2hkYUBnbXguZGUiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIm5hdGl2ZS13aW5kb3ctcGxhY2VtZW50QGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUwCn0="}}}
+, {"uuid": "user-theme@gnome-shell-extensions.gcampax.github.com", "name": "User Themes", "pname": "user-themes", "description": "Load shell themes from user directory.", "link": "https://extensions.gnome.org/extension/19/user-themes/", "shell_version_map": {"38": {"version": "42", "sha256": "0jykwcd8pmvr03dm2vala6nzzhi9i83c11svgx8wymfvxr5qrya8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJVc2VyIFRoZW1lcyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiam9obi5zdG93ZXJzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlci10aGVtZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogInVzZXItdGhlbWVAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDIKfQ=="}, "40": {"version": "46", "sha256": "07gbzvbnxah5bws5vc6sivw43j0rgm23n6vsp4a64z7s8s2ay7sm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJVc2VyIFRoZW1lcyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiam9obi5zdG93ZXJzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlci10aGVtZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJ1c2VyLXRoZW1lQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ2Cn0="}, "41": {"version": "48", "sha256": "0bbm4vbyrp9n3mmqwbhpb6f7dmlx23x1avnp8pilw4p1wr03p7h8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tdXNlci10aGVtZSIsCiAgIm5hbWUiOiAiVXNlciBUaGVtZXMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAidXNlci10aGVtZUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0OAp9"}, "42": {"version": "49", "sha256": "0ykaw2602iixn87fc65h6vwxzlcjidpp9hpcsmf66r0f6xibgpah", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgc2hlbGwgdGhlbWVzIGZyb20gdXNlciBkaXJlY3RvcnkuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tdXNlci10aGVtZSIsCiAgIm5hbWUiOiAiVXNlciBUaGVtZXMiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAidXNlci10aGVtZUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0OQp9"}}}
+, {"uuid": "workspace-indicator@gnome-shell-extensions.gcampax.github.com", "name": "Workspace Indicator", "pname": "workspace-indicator", "description": "Put an indicator on the panel signaling in which workspace you are, and give you the possibility of switching to another one.", "link": "https://extensions.gnome.org/extension/21/workspace-indicator/", "shell_version_map": {"38": {"version": "45", "sha256": "16y7zhlsj0qjwwj78fvcr81m7081i2y30gwjm35qahr3j0gfrk16", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJXb3Jrc3BhY2UgSW5kaWNhdG9yIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlcmljay5yZWRAZ21haWwuY29tIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid29ya3NwYWNlLWluZGljYXRvckBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0NQp9"}, "40": {"version": "49", "sha256": "0483k1scq0lwfpg3i3yww7kfzv0qwlp6aqyikkacivh0nkq6v2iy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJXb3Jrc3BhY2UgSW5kaWNhdG9yIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJlcmljay5yZWRAZ21haWwuY29tIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3JAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDkKfQ=="}, "41": {"version": "51", "sha256": "1s2mkk41vq9nrlsw26317zh592l59y7cldfmkd3f0d4j2mdiy8bw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24td29ya3NwYWNlLWluZGljYXRvciIsCiAgIm5hbWUiOiAiV29ya3NwYWNlIEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiZXJpY2sucmVkQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud29ya3NwYWNlLWluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2UtaW5kaWNhdG9yQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUxCn0="}, "42": {"version": "52", "sha256": "1i0jm0k3rjk97283p0iv0nx2cclij0kx7dqb35a7kd2pxh89jn8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBhbiBpbmRpY2F0b3Igb24gdGhlIHBhbmVsIHNpZ25hbGluZyBpbiB3aGljaCB3b3Jrc3BhY2UgeW91IGFyZSwgYW5kIGdpdmUgeW91IHRoZSBwb3NzaWJpbGl0eSBvZiBzd2l0Y2hpbmcgdG8gYW5vdGhlciBvbmUuIiwKICAiZXh0ZW5zaW9uLWlkIjogIndvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24td29ya3NwYWNlLWluZGljYXRvciIsCiAgIm5hbWUiOiAiV29ya3NwYWNlIEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiZXJpY2sucmVkQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud29ya3NwYWNlLWluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2UtaW5kaWNhdG9yQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUyCn0="}}}
+, {"uuid": "gTile@vibou", "name": "gTile", "pname": "gtile", "description": "Tile windows on a grid.", "link": "https://extensions.gnome.org/extension/28/gtile/", "shell_version_map": {"38": {"version": "50", "sha256": "0qqbkhj3j5ysv74gbcp9b5jspqyzs5daijd830nf3vgj9hg5l7pd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ1RpbGUiLAogICJ1dWlkIjogImdUaWxlQHZpYm91IiwKICAidmVyc2lvbiI6IDUwCn0="}, "40": {"version": "50", "sha256": "0qqbkhj3j5ysv74gbcp9b5jspqyzs5daijd830nf3vgj9hg5l7pd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ1RpbGUiLAogICJ1dWlkIjogImdUaWxlQHZpYm91IiwKICAidmVyc2lvbiI6IDUwCn0="}, "41": {"version": "50", "sha256": "0qqbkhj3j5ysv74gbcp9b5jspqyzs5daijd830nf3vgj9hg5l7pd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ1RpbGUiLAogICJ1dWlkIjogImdUaWxlQHZpYm91IiwKICAidmVyc2lvbiI6IDUwCn0="}, "42": {"version": "50", "sha256": "0qqbkhj3j5ysv74gbcp9b5jspqyzs5daijd830nf3vgj9hg5l7pd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyBvbiBhIGdyaWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RpbGVAdmlib3UiLAogICJuYW1lIjogImdUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmd0aWxlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ1RpbGUiLAogICJ1dWlkIjogImdUaWxlQHZpYm91IiwKICAidmVyc2lvbiI6IDUwCn0="}}}
+, {"uuid": "lockkeys@vaina.lt", "name": "Lock Keys", "pname": "lock-keys", "description": "Numlock & Capslock status on the panel. Gnome version 3.30 and earlier users please install 44 version of the extension https://extensions.gnome.org/download-extension/lockkeys%40vaina.lt.shell-extension.zip?version_tag=26229 ", "link": "https://extensions.gnome.org/extension/36/lock-keys/", "shell_version_map": {"38": {"version": "47", "sha256": "1lsnmf6lsp92g1clxl190hx30p03a11w4hs3m9v0pav12cq8agfi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2F6eXNtYXN0ZXIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxvY2trZXlzIiwKICAidXVpZCI6ICJsb2Nra2V5c0B2YWluYS5sdCIsCiAgInZlcnNpb24iOiA0Nwp9"}, "40": {"version": "47", "sha256": "1lsnmf6lsp92g1clxl190hx30p03a11w4hs3m9v0pav12cq8agfi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2F6eXNtYXN0ZXIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxvY2trZXlzIiwKICAidXVpZCI6ICJsb2Nra2V5c0B2YWluYS5sdCIsCiAgInZlcnNpb24iOiA0Nwp9"}, "41": {"version": "47", "sha256": "1lsnmf6lsp92g1clxl190hx30p03a11w4hs3m9v0pav12cq8agfi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2F6eXNtYXN0ZXIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxvY2trZXlzIiwKICAidXVpZCI6ICJsb2Nra2V5c0B2YWluYS5sdCIsCiAgInZlcnNpb24iOiA0Nwp9"}, "42": {"version": "47", "sha256": "1lsnmf6lsp92g1clxl190hx30p03a11w4hs3m9v0pav12cq8agfi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgJiBDYXBzbG9jayBzdGF0dXMgb24gdGhlIHBhbmVsLiBHbm9tZSB2ZXJzaW9uIDMuMzAgYW5kIGVhcmxpZXIgdXNlcnMgcGxlYXNlIGluc3RhbGwgNDQgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZG93bmxvYWQtZXh0ZW5zaW9uL2xvY2trZXlzJTQwdmFpbmEubHQuc2hlbGwtZXh0ZW5zaW9uLnppcD92ZXJzaW9uX3RhZz0yNjIyOSAiLAogICJuYW1lIjogIkxvY2sgS2V5cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSwgUmFwaGFcdTAwZWJsIFJvY2hldCwgTHVpeiBOaWNrZWwsIEplc3NlLCBEdVx1MDE2MWFuIEthemlrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va2F6eXNtYXN0ZXIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxvY2trZXlzIiwKICAidXVpZCI6ICJsb2Nra2V5c0B2YWluYS5sdCIsCiAgInZlcnNpb24iOiA0Nwp9"}}}
 , {"uuid": "putWindow@clemens.lab21.org", "name": "Put Windows", "pname": "put-windows", "description": "Fully customizable replacement for the old compiz put plugin. \n * Move windows to left/right side, bottom/top, center or corner \n * Move window to other screen \n * Select focused window using the keyboard \n * Application based window placement \n\n Please check github if your gnome-shell version is not supported", "link": "https://extensions.gnome.org/extension/39/put-windows/", "shell_version_map": {"38": {"version": "32", "sha256": "1n4hk2sqdbcn25lxk02vljc9xxbidragimvc4b6dj2m72625lx67", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGx5IGN1c3RvbWl6YWJsZSByZXBsYWNlbWVudCBmb3IgdGhlIG9sZCBjb21waXogcHV0IHBsdWdpbi4gXG4gKiBNb3ZlIHdpbmRvd3MgdG8gbGVmdC9yaWdodCBzaWRlLCBib3R0b20vdG9wLCBjZW50ZXIgb3IgY29ybmVyIFxuICogTW92ZSB3aW5kb3cgdG8gb3RoZXIgc2NyZWVuIFxuICogU2VsZWN0IGZvY3VzZWQgd2luZG93IHVzaW5nIHRoZSBrZXlib2FyZCBcbiAqIEFwcGxpY2F0aW9uIGJhc2VkIHdpbmRvdyBwbGFjZW1lbnQgXG5cbiBQbGVhc2UgY2hlY2sgZ2l0aHViIGlmIHlvdXIgZ25vbWUtc2hlbGwgdmVyc2lvbiBpcyBub3Qgc3VwcG9ydGVkIiwKICAiZ2V0dGV4dC1kb21haW4iOiAicHV0V2luZG93IiwKICAibmFtZSI6ICJQdXQgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vcmctbGFiMjEtcHV0d2luZG93IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVnZXN0aS9nbm9tZS1zaGVsbC1leHRlbnNpb25zLW5lZ2VzdGkiLAogICJ1dWlkIjogInB1dFdpbmRvd0BjbGVtZW5zLmxhYjIxLm9yZyIsCiAgInZlcnNpb24iOiAzMgp9"}}}
-, {"uuid": "permanent-notifications@bonzini.gnu.org", "name": "Permanent notifications", "pname": "permanent-notifications", "description": "Keep notifications on the message tray until clicked", "link": "https://extensions.gnome.org/extension/41/permanent-notifications/", "shell_version_map": {"40": {"version": "7", "sha256": "1zlxvn9c4ydpvkja6vpyvif21rfi1y86rzi0iqms5mk8in4cgx41", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgbm90aWZpY2F0aW9ucyBvbiB0aGUgbWVzc2FnZSB0cmF5IHVudGlsIGNsaWNrZWQiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlBlcm1hbmVudCBub3RpZmljYXRpb25zIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJib256aW5pQGdudS5vcmciCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIiLAogICAgIjMuMi4xIiwKICAgICIzLjQiLAogICAgIjMuMy45MCIsCiAgICAiMy4zLjkxIiwKICAgICIzLjMuOTIiLAogICAgIjMuNiIsCiAgICAiMy40LjEiLAogICAgIjMuMy45MyIsCiAgICAiMy4zLjk0IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JvbnppbmkvZ25vbWUtc2hlbGwtcGVybWFuZW50LW5vdGlmaWNhdGlvbnMiLAogICJ1dWlkIjogInBlcm1hbmVudC1ub3RpZmljYXRpb25zQGJvbnppbmkuZ251Lm9yZyIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "1zlxvn9c4ydpvkja6vpyvif21rfi1y86rzi0iqms5mk8in4cgx41", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgbm90aWZpY2F0aW9ucyBvbiB0aGUgbWVzc2FnZSB0cmF5IHVudGlsIGNsaWNrZWQiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlBlcm1hbmVudCBub3RpZmljYXRpb25zIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJib256aW5pQGdudS5vcmciCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIiLAogICAgIjMuMi4xIiwKICAgICIzLjQiLAogICAgIjMuMy45MCIsCiAgICAiMy4zLjkxIiwKICAgICIzLjMuOTIiLAogICAgIjMuNiIsCiAgICAiMy40LjEiLAogICAgIjMuMy45MyIsCiAgICAiMy4zLjk0IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JvbnppbmkvZ25vbWUtc2hlbGwtcGVybWFuZW50LW5vdGlmaWNhdGlvbnMiLAogICJ1dWlkIjogInBlcm1hbmVudC1ub3RpZmljYXRpb25zQGJvbnppbmkuZ251Lm9yZyIsCiAgInZlcnNpb24iOiA3Cn0="}}}
+, {"uuid": "permanent-notifications@bonzini.gnu.org", "name": "Permanent notifications", "pname": "permanent-notifications", "description": "Keep notifications on the message tray until clicked", "link": "https://extensions.gnome.org/extension/41/permanent-notifications/", "shell_version_map": {"40": {"version": "8", "sha256": "13s0h7b9216xi7p6lsnipsm0lrxzr2dc94nm87fn580m43gx24lk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgbm90aWZpY2F0aW9ucyBvbiB0aGUgbWVzc2FnZSB0cmF5IHVudGlsIGNsaWNrZWQiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlBlcm1hbmVudCBub3RpZmljYXRpb25zIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJib256aW5pQGdudS5vcmciCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIiLAogICAgIjMuMi4xIiwKICAgICIzLjQiLAogICAgIjMuMy45MCIsCiAgICAiMy4zLjkxIiwKICAgICIzLjMuOTIiLAogICAgIjMuNiIsCiAgICAiMy40LjEiLAogICAgIjMuMy45MyIsCiAgICAiMy4zLjk0IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ib256aW5pL2dub21lLXNoZWxsLXBlcm1hbmVudC1ub3RpZmljYXRpb25zIiwKICAidXVpZCI6ICJwZXJtYW5lbnQtbm90aWZpY2F0aW9uc0Bib256aW5pLmdudS5vcmciLAogICJ2ZXJzaW9uIjogOAp9"}, "41": {"version": "8", "sha256": "13s0h7b9216xi7p6lsnipsm0lrxzr2dc94nm87fn580m43gx24lk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgbm90aWZpY2F0aW9ucyBvbiB0aGUgbWVzc2FnZSB0cmF5IHVudGlsIGNsaWNrZWQiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlBlcm1hbmVudCBub3RpZmljYXRpb25zIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJib256aW5pQGdudS5vcmciCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIiLAogICAgIjMuMi4xIiwKICAgICIzLjQiLAogICAgIjMuMy45MCIsCiAgICAiMy4zLjkxIiwKICAgICIzLjMuOTIiLAogICAgIjMuNiIsCiAgICAiMy40LjEiLAogICAgIjMuMy45MyIsCiAgICAiMy4zLjk0IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ib256aW5pL2dub21lLXNoZWxsLXBlcm1hbmVudC1ub3RpZmljYXRpb25zIiwKICAidXVpZCI6ICJwZXJtYW5lbnQtbm90aWZpY2F0aW9uc0Bib256aW5pLmdudS5vcmciLAogICJ2ZXJzaW9uIjogOAp9"}, "42": {"version": "8", "sha256": "13s0h7b9216xi7p6lsnipsm0lrxzr2dc94nm87fn580m43gx24lk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgbm90aWZpY2F0aW9ucyBvbiB0aGUgbWVzc2FnZSB0cmF5IHVudGlsIGNsaWNrZWQiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlBlcm1hbmVudCBub3RpZmljYXRpb25zIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJib256aW5pQGdudS5vcmciCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIiLAogICAgIjMuMi4xIiwKICAgICIzLjQiLAogICAgIjMuMy45MCIsCiAgICAiMy4zLjkxIiwKICAgICIzLjMuOTIiLAogICAgIjMuNiIsCiAgICAiMy40LjEiLAogICAgIjMuMy45MyIsCiAgICAiMy4zLjk0IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ib256aW5pL2dub21lLXNoZWxsLXBlcm1hbmVudC1ub3RpZmljYXRpb25zIiwKICAidXVpZCI6ICJwZXJtYW5lbnQtbm90aWZpY2F0aW9uc0Bib256aW5pLmdudS5vcmciLAogICJ2ZXJzaW9uIjogOAp9"}}}
 , {"uuid": "gnome-shell-trash-extension", "name": "Trash", "pname": "trash", "description": "A Trash button for the GNOME shell panel", "link": "https://extensions.gnome.org/extension/48/trash/", "shell_version_map": {"38": {"version": "18", "sha256": "1cysvxrgi7lnig7d8blhqqbxz0phd4fvn7nww6zpihjnw32rvm4z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgVHJhc2ggYnV0dG9uIGZvciB0aGUgR05PTUUgc2hlbGwgcGFuZWwiLAogICJsb2NhbGVkaXIiOiAibG9jYWxlIiwKICAibmFtZSI6ICJUcmFzaCIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiQXhlbCB2b24gQmVydG9sZGkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9iZXJ0b2xkaWEvZ25vbWUtc2hlbGwtdHJhc2gtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJnbm9tZS1zaGVsbC10cmFzaC1leHRlbnNpb24iLAogICJ2ZXJzaW9uIjogMTgKfQ=="}}}
 , {"uuid": "RecentItems@bananenfisch.net", "name": "Recent Items", "pname": "recent-items", "description": "Adds an icon for recently used items at the top panel; clear list by click; left click: open file, right click: open containing folder; Settings for: number of items, number of items under \"more\" and blacklisting options are defined at the top of extension.js (see https://github.com/bananenfisch/RecentItems for more infos).", "link": "https://extensions.gnome.org/extension/72/recent-items/", "shell_version_map": {"40": {"version": "20", "sha256": "0ys8lanv0xxbwfmqkfvdqvhbnv4vfjpzvpqjj11c1lxbv4wp2mbj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gaWNvbiBmb3IgcmVjZW50bHkgdXNlZCBpdGVtcyBhdCB0aGUgdG9wIHBhbmVsOyBjbGVhciBsaXN0IGJ5IGNsaWNrOyBsZWZ0IGNsaWNrOiBvcGVuIGZpbGUsIHJpZ2h0IGNsaWNrOiBvcGVuIGNvbnRhaW5pbmcgZm9sZGVyOyBTZXR0aW5ncyBmb3I6IG51bWJlciBvZiBpdGVtcywgbnVtYmVyIG9mIGl0ZW1zIHVuZGVyIFwibW9yZVwiIGFuZCBibGFja2xpc3Rpbmcgb3B0aW9ucyBhcmUgZGVmaW5lZCBhdCB0aGUgdG9wIG9mIGV4dGVuc2lvbi5qcyAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9iYW5hbmVuZmlzY2gvUmVjZW50SXRlbXMgZm9yIG1vcmUgaW5mb3MpLiIsCiAgIm5hbWUiOiAiUmVjZW50IEl0ZW1zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHA6Ly93d3cuYmFuYW5lbmZpc2NoLm5ldC9nbm9tZSIsCiAgInV1aWQiOiAiUmVjZW50SXRlbXNAYmFuYW5lbmZpc2NoLm5ldCIsCiAgInZlcnNpb24iOiAyMAp9"}, "41": {"version": "20", "sha256": "0ys8lanv0xxbwfmqkfvdqvhbnv4vfjpzvpqjj11c1lxbv4wp2mbj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gaWNvbiBmb3IgcmVjZW50bHkgdXNlZCBpdGVtcyBhdCB0aGUgdG9wIHBhbmVsOyBjbGVhciBsaXN0IGJ5IGNsaWNrOyBsZWZ0IGNsaWNrOiBvcGVuIGZpbGUsIHJpZ2h0IGNsaWNrOiBvcGVuIGNvbnRhaW5pbmcgZm9sZGVyOyBTZXR0aW5ncyBmb3I6IG51bWJlciBvZiBpdGVtcywgbnVtYmVyIG9mIGl0ZW1zIHVuZGVyIFwibW9yZVwiIGFuZCBibGFja2xpc3Rpbmcgb3B0aW9ucyBhcmUgZGVmaW5lZCBhdCB0aGUgdG9wIG9mIGV4dGVuc2lvbi5qcyAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9iYW5hbmVuZmlzY2gvUmVjZW50SXRlbXMgZm9yIG1vcmUgaW5mb3MpLiIsCiAgIm5hbWUiOiAiUmVjZW50IEl0ZW1zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHA6Ly93d3cuYmFuYW5lbmZpc2NoLm5ldC9nbm9tZSIsCiAgInV1aWQiOiAiUmVjZW50SXRlbXNAYmFuYW5lbmZpc2NoLm5ldCIsCiAgInZlcnNpb24iOiAyMAp9"}}}
 , {"uuid": "lockscreen@sri.ramkrishna.me", "name": "Lock Screen", "pname": "lock-screen", "description": "Add lock icon to the panel and lock the screen instead of using ctrl-alt-l", "link": "https://extensions.gnome.org/extension/83/lock-screen/", "shell_version_map": {"40": {"version": "13", "sha256": "1zlc6m3mai884mkgyg4mwvb7dc3wwpgysbkpfqw35cxpxf7chfk2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBsb2NrIGljb24gdG8gdGhlIHBhbmVsIGFuZCBsb2NrIHRoZSBzY3JlZW4gaW5zdGVhZCBvZiB1c2luZyBjdHJsLWFsdC1sIiwKICAibmFtZSI6ICJMb2NrIFNjcmVlbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NyYW1rcmlzaG5hL2dub21lMy1leHRlbnNpb25zIiwKICAidXVpZCI6ICJsb2Nrc2NyZWVuQHNyaS5yYW1rcmlzaG5hLm1lIiwKICAidmVyc2lvbiI6IDEzCn0="}}}
@@ -22,7 +22,7 @@
 , {"uuid": "favorites@cvine.org", "name": "Favorites Menu", "pname": "favorites-menu", "description": "Provide panel menu for favorites", "link": "https://extensions.gnome.org/extension/115/favorites-menu/", "shell_version_map": {"40": {"version": "15", "sha256": "02s0p33dcr6wrxivjd47rwb42whqc6qswr3qdvd7p6jym4zddbi2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgcGFuZWwgbWVudSBmb3IgZmF2b3JpdGVzIiwKICAibmFtZSI6ICJGYXZvcml0ZXMgTWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHA6Ly93d3cuY3ZpbmUucGx1cy5jb20vZmF2b3JpdGVzL2luZGV4Lmh0bWwiLAogICJ1dWlkIjogImZhdm9yaXRlc0BjdmluZS5vcmciLAogICJ2ZXJzaW9uIjogMTUKfQ=="}, "41": {"version": "17", "sha256": "1xbm8d4669j727fw3cm5lmdkfq46xwavsiivr7s9l0nnmnafjzbh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgcGFuZWwgbWVudSBmb3IgZmF2b3JpdGVzIiwKICAibmFtZSI6ICJGYXZvcml0ZXMgTWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHA6Ly93d3cuY3ZpbmUucGx1cy5jb20vZmF2b3JpdGVzL2luZGV4Lmh0bWwiLAogICJ1dWlkIjogImZhdm9yaXRlc0BjdmluZS5vcmciLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
 , {"uuid": "system-monitor@paradoxxx.zero.gmail.com", "name": "system-monitor", "pname": "system-monitor", "description": "Display system information in GNOME Shell status bar, such as memory, CPU, disk and battery usages, network rates…", "link": "https://extensions.gnome.org/extension/120/system-monitor/", "shell_version_map": {"40": {"version": "40", "sha256": "05xmpbwwjzax5y7p7a492k6mmv9rjiyinnrfkzrzm16yncn3mbvj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgc3lzdGVtIGluZm9ybWF0aW9uIGluIEdOT01FIFNoZWxsIHN0YXR1cyBiYXIsIHN1Y2ggYXMgbWVtb3J5LCBDUFUsIGRpc2sgYW5kIGJhdHRlcnkgdXNhZ2VzLCBuZXR3b3JrIHJhdGVzXHUyMDI2IiwKICAiZ2V0dGV4dC1kb21haW4iOiAic3lzdGVtLW1vbml0b3IiLAogICJuYW1lIjogInN5c3RlbS1tb25pdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN5c3RlbS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3BhcmFkb3h4eHplcm8vZ25vbWUtc2hlbGwtc3lzdGVtLW1vbml0b3ItYXBwbGV0IiwKICAidXVpZCI6ICJzeXN0ZW0tbW9uaXRvckBwYXJhZG94eHguemVyby5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNDAKfQ=="}}}
 , {"uuid": "Fuzzy_Clock@dallagi", "name": "Fuzzy Clock", "pname": "fuzzy-clock", "description": "A human-readable clock for the gnome-shell panel", "link": "https://extensions.gnome.org/extension/202/fuzzy-clock/", "shell_version_map": {"38": {"version": "9", "sha256": "1cga3192balji63zmbbyixb4r53j48zhil4hnv57l3b25k4rmk0i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgaHVtYW4tcmVhZGFibGUgY2xvY2sgZm9yIHRoZSBnbm9tZS1zaGVsbCBwYW5lbCIsCiAgIm5hbWUiOiAiRnV6enkgQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kYWxsYWdpL2dub21lLXNoZWxsLWZ1enp5LWNsb2NrIiwKICAidXVpZCI6ICJGdXp6eV9DbG9ja0BkYWxsYWdpIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
-, {"uuid": "PersianCalendar@oxygenws.com", "name": "Persian Calendar", "pname": "persian-calendar", "description": "Shows Persian date in the top panel.\n\nIt shows:\n1- Persian calendar\n2- It can show, today is a holiday or not!\n3- Show notification onDayChanged!\n4- Date converter between Persian, Gregorian and Lunar Hijri\n5- Events:\n5-1- Official solar events.\n5-2- Official lunar events.\n5-3- Official international events.\n5-4- Traditional Persian events.\n5-5- Persian personages.\n\nPlease \"rate\" here and \"star\" the project in GitHub.\nPlease open an issue in GitHub if you've found something or have an idea!", "link": "https://extensions.gnome.org/extension/240/persian-calendar/", "shell_version_map": {"38": {"version": "73", "sha256": "14p27d2h58jam7h97y06safsc2c8rwmjy74nak5w9cv7s0wx4kar", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIFBlcnNpYW4gZGF0ZSBpbiB0aGUgdG9wIHBhbmVsLlxuXG5JdCBzaG93czpcbjEtIFBlcnNpYW4gY2FsZW5kYXJcbjItIEl0IGNhbiBzaG93LCB0b2RheSBpcyBhIGhvbGlkYXkgb3Igbm90IVxuMy0gU2hvdyBub3RpZmljYXRpb24gb25EYXlDaGFuZ2VkIVxuNC0gRGF0ZSBjb252ZXJ0ZXIgYmV0d2VlbiBQZXJzaWFuLCBHcmVnb3JpYW4gYW5kIEx1bmFyIEhpanJpXG41LSBFdmVudHM6XG41LTEtIE9mZmljaWFsIHNvbGFyIGV2ZW50cy5cbjUtMi0gT2ZmaWNpYWwgbHVuYXIgZXZlbnRzLlxuNS0zLSBPZmZpY2lhbCBpbnRlcm5hdGlvbmFsIGV2ZW50cy5cbjUtNC0gVHJhZGl0aW9uYWwgUGVyc2lhbiBldmVudHMuXG41LTUtIFBlcnNpYW4gcGVyc29uYWdlcy5cblxuUGxlYXNlIFwicmF0ZVwiIGhlcmUgYW5kIFwic3RhclwiIHRoZSBwcm9qZWN0IGluIEdpdEh1Yi5cblBsZWFzZSBvcGVuIGFuIGlzc3VlIGluIEdpdEh1YiBpZiB5b3UndmUgZm91bmQgc29tZXRoaW5nIG9yIGhhdmUgYW4gaWRlYSEiLAogICJuYW1lIjogIlBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIk9taWQgTW90dGFnaGkgUmFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb21pZC9QZXJzaWFuLUNhbGVuZGFyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiUGVyc2lhbkNhbGVuZGFyQG94eWdlbndzLmNvbSIsCiAgInZlcnNpb24iOiA3Mwp9"}, "40": {"version": "92", "sha256": "1cjiy8gswqlc95277yszihy8nr3n5w33amy1167fyfl1gfsr0k6i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIFBlcnNpYW4gZGF0ZSBpbiB0aGUgdG9wIHBhbmVsLlxuXG5JdCBzaG93czpcbjEtIFBlcnNpYW4gY2FsZW5kYXJcbjItIEl0IGNhbiBzaG93LCB0b2RheSBpcyBhIGhvbGlkYXkgb3Igbm90IVxuMy0gU2hvdyBub3RpZmljYXRpb24gb25EYXlDaGFuZ2VkIVxuNC0gRGF0ZSBjb252ZXJ0ZXIgYmV0d2VlbiBQZXJzaWFuLCBHcmVnb3JpYW4gYW5kIEx1bmFyIEhpanJpXG41LSBFdmVudHM6XG41LTEtIE9mZmljaWFsIHNvbGFyIGV2ZW50cy5cbjUtMi0gT2ZmaWNpYWwgbHVuYXIgZXZlbnRzLlxuNS0zLSBPZmZpY2lhbCBpbnRlcm5hdGlvbmFsIGV2ZW50cy5cbjUtNC0gVHJhZGl0aW9uYWwgUGVyc2lhbiBldmVudHMuXG41LTUtIFBlcnNpYW4gcGVyc29uYWdlcy5cblxuUGxlYXNlIFwicmF0ZVwiIGhlcmUgYW5kIFwic3RhclwiIHRoZSBwcm9qZWN0IGluIEdpdEh1Yi5cblBsZWFzZSBvcGVuIGFuIGlzc3VlIGluIEdpdEh1YiBpZiB5b3UndmUgZm91bmQgc29tZXRoaW5nIG9yIGhhdmUgYW4gaWRlYSEiLAogICJuYW1lIjogIlBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIk9taWQgTW90dGFnaGkgUmFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb21pZC9QZXJzaWFuLUNhbGVuZGFyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiUGVyc2lhbkNhbGVuZGFyQG94eWdlbndzLmNvbSIsCiAgInZlcnNpb24iOiA5Mgp9"}, "41": {"version": "92", "sha256": "1cjiy8gswqlc95277yszihy8nr3n5w33amy1167fyfl1gfsr0k6i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIFBlcnNpYW4gZGF0ZSBpbiB0aGUgdG9wIHBhbmVsLlxuXG5JdCBzaG93czpcbjEtIFBlcnNpYW4gY2FsZW5kYXJcbjItIEl0IGNhbiBzaG93LCB0b2RheSBpcyBhIGhvbGlkYXkgb3Igbm90IVxuMy0gU2hvdyBub3RpZmljYXRpb24gb25EYXlDaGFuZ2VkIVxuNC0gRGF0ZSBjb252ZXJ0ZXIgYmV0d2VlbiBQZXJzaWFuLCBHcmVnb3JpYW4gYW5kIEx1bmFyIEhpanJpXG41LSBFdmVudHM6XG41LTEtIE9mZmljaWFsIHNvbGFyIGV2ZW50cy5cbjUtMi0gT2ZmaWNpYWwgbHVuYXIgZXZlbnRzLlxuNS0zLSBPZmZpY2lhbCBpbnRlcm5hdGlvbmFsIGV2ZW50cy5cbjUtNC0gVHJhZGl0aW9uYWwgUGVyc2lhbiBldmVudHMuXG41LTUtIFBlcnNpYW4gcGVyc29uYWdlcy5cblxuUGxlYXNlIFwicmF0ZVwiIGhlcmUgYW5kIFwic3RhclwiIHRoZSBwcm9qZWN0IGluIEdpdEh1Yi5cblBsZWFzZSBvcGVuIGFuIGlzc3VlIGluIEdpdEh1YiBpZiB5b3UndmUgZm91bmQgc29tZXRoaW5nIG9yIGhhdmUgYW4gaWRlYSEiLAogICJuYW1lIjogIlBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIk9taWQgTW90dGFnaGkgUmFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb21pZC9QZXJzaWFuLUNhbGVuZGFyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiUGVyc2lhbkNhbGVuZGFyQG94eWdlbndzLmNvbSIsCiAgInZlcnNpb24iOiA5Mgp9"}}}
+, {"uuid": "PersianCalendar@oxygenws.com", "name": "Persian Calendar", "pname": "persian-calendar", "description": "Shows Persian date in the top panel.\n\nIt shows:\n1- Persian calendar\n2- It can show, today is a holiday or not!\n3- Show notification onDayChanged!\n4- Date converter between Persian, Gregorian and Lunar Hijri\n5- Events:\n5-1- Official solar events.\n5-2- Official lunar events.\n5-3- Official international events.\n5-4- Traditional Persian events.\n5-5- Persian personages.\n\nPlease \"rate\" here and \"star\" the project in GitHub.\nPlease open an issue in GitHub if you've found something or have an idea!", "link": "https://extensions.gnome.org/extension/240/persian-calendar/", "shell_version_map": {"38": {"version": "73", "sha256": "14p27d2h58jam7h97y06safsc2c8rwmjy74nak5w9cv7s0wx4kar", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIFBlcnNpYW4gZGF0ZSBpbiB0aGUgdG9wIHBhbmVsLlxuXG5JdCBzaG93czpcbjEtIFBlcnNpYW4gY2FsZW5kYXJcbjItIEl0IGNhbiBzaG93LCB0b2RheSBpcyBhIGhvbGlkYXkgb3Igbm90IVxuMy0gU2hvdyBub3RpZmljYXRpb24gb25EYXlDaGFuZ2VkIVxuNC0gRGF0ZSBjb252ZXJ0ZXIgYmV0d2VlbiBQZXJzaWFuLCBHcmVnb3JpYW4gYW5kIEx1bmFyIEhpanJpXG41LSBFdmVudHM6XG41LTEtIE9mZmljaWFsIHNvbGFyIGV2ZW50cy5cbjUtMi0gT2ZmaWNpYWwgbHVuYXIgZXZlbnRzLlxuNS0zLSBPZmZpY2lhbCBpbnRlcm5hdGlvbmFsIGV2ZW50cy5cbjUtNC0gVHJhZGl0aW9uYWwgUGVyc2lhbiBldmVudHMuXG41LTUtIFBlcnNpYW4gcGVyc29uYWdlcy5cblxuUGxlYXNlIFwicmF0ZVwiIGhlcmUgYW5kIFwic3RhclwiIHRoZSBwcm9qZWN0IGluIEdpdEh1Yi5cblBsZWFzZSBvcGVuIGFuIGlzc3VlIGluIEdpdEh1YiBpZiB5b3UndmUgZm91bmQgc29tZXRoaW5nIG9yIGhhdmUgYW4gaWRlYSEiLAogICJuYW1lIjogIlBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIk9taWQgTW90dGFnaGkgUmFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb21pZC9QZXJzaWFuLUNhbGVuZGFyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiUGVyc2lhbkNhbGVuZGFyQG94eWdlbndzLmNvbSIsCiAgInZlcnNpb24iOiA3Mwp9"}, "40": {"version": "92", "sha256": "1cjiy8gswqlc95277yszihy8nr3n5w33amy1167fyfl1gfsr0k6i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIFBlcnNpYW4gZGF0ZSBpbiB0aGUgdG9wIHBhbmVsLlxuXG5JdCBzaG93czpcbjEtIFBlcnNpYW4gY2FsZW5kYXJcbjItIEl0IGNhbiBzaG93LCB0b2RheSBpcyBhIGhvbGlkYXkgb3Igbm90IVxuMy0gU2hvdyBub3RpZmljYXRpb24gb25EYXlDaGFuZ2VkIVxuNC0gRGF0ZSBjb252ZXJ0ZXIgYmV0d2VlbiBQZXJzaWFuLCBHcmVnb3JpYW4gYW5kIEx1bmFyIEhpanJpXG41LSBFdmVudHM6XG41LTEtIE9mZmljaWFsIHNvbGFyIGV2ZW50cy5cbjUtMi0gT2ZmaWNpYWwgbHVuYXIgZXZlbnRzLlxuNS0zLSBPZmZpY2lhbCBpbnRlcm5hdGlvbmFsIGV2ZW50cy5cbjUtNC0gVHJhZGl0aW9uYWwgUGVyc2lhbiBldmVudHMuXG41LTUtIFBlcnNpYW4gcGVyc29uYWdlcy5cblxuUGxlYXNlIFwicmF0ZVwiIGhlcmUgYW5kIFwic3RhclwiIHRoZSBwcm9qZWN0IGluIEdpdEh1Yi5cblBsZWFzZSBvcGVuIGFuIGlzc3VlIGluIEdpdEh1YiBpZiB5b3UndmUgZm91bmQgc29tZXRoaW5nIG9yIGhhdmUgYW4gaWRlYSEiLAogICJuYW1lIjogIlBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIk9taWQgTW90dGFnaGkgUmFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb21pZC9QZXJzaWFuLUNhbGVuZGFyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiUGVyc2lhbkNhbGVuZGFyQG94eWdlbndzLmNvbSIsCiAgInZlcnNpb24iOiA5Mgp9"}, "41": {"version": "92", "sha256": "1cjiy8gswqlc95277yszihy8nr3n5w33amy1167fyfl1gfsr0k6i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIFBlcnNpYW4gZGF0ZSBpbiB0aGUgdG9wIHBhbmVsLlxuXG5JdCBzaG93czpcbjEtIFBlcnNpYW4gY2FsZW5kYXJcbjItIEl0IGNhbiBzaG93LCB0b2RheSBpcyBhIGhvbGlkYXkgb3Igbm90IVxuMy0gU2hvdyBub3RpZmljYXRpb24gb25EYXlDaGFuZ2VkIVxuNC0gRGF0ZSBjb252ZXJ0ZXIgYmV0d2VlbiBQZXJzaWFuLCBHcmVnb3JpYW4gYW5kIEx1bmFyIEhpanJpXG41LSBFdmVudHM6XG41LTEtIE9mZmljaWFsIHNvbGFyIGV2ZW50cy5cbjUtMi0gT2ZmaWNpYWwgbHVuYXIgZXZlbnRzLlxuNS0zLSBPZmZpY2lhbCBpbnRlcm5hdGlvbmFsIGV2ZW50cy5cbjUtNC0gVHJhZGl0aW9uYWwgUGVyc2lhbiBldmVudHMuXG41LTUtIFBlcnNpYW4gcGVyc29uYWdlcy5cblxuUGxlYXNlIFwicmF0ZVwiIGhlcmUgYW5kIFwic3RhclwiIHRoZSBwcm9qZWN0IGluIEdpdEh1Yi5cblBsZWFzZSBvcGVuIGFuIGlzc3VlIGluIEdpdEh1YiBpZiB5b3UndmUgZm91bmQgc29tZXRoaW5nIG9yIGhhdmUgYW4gaWRlYSEiLAogICJuYW1lIjogIlBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIk9taWQgTW90dGFnaGkgUmFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb21pZC9QZXJzaWFuLUNhbGVuZGFyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiUGVyc2lhbkNhbGVuZGFyQG94eWdlbndzLmNvbSIsCiAgInZlcnNpb24iOiA5Mgp9"}, "42": {"version": "92", "sha256": "1cjiy8gswqlc95277yszihy8nr3n5w33amy1167fyfl1gfsr0k6i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIFBlcnNpYW4gZGF0ZSBpbiB0aGUgdG9wIHBhbmVsLlxuXG5JdCBzaG93czpcbjEtIFBlcnNpYW4gY2FsZW5kYXJcbjItIEl0IGNhbiBzaG93LCB0b2RheSBpcyBhIGhvbGlkYXkgb3Igbm90IVxuMy0gU2hvdyBub3RpZmljYXRpb24gb25EYXlDaGFuZ2VkIVxuNC0gRGF0ZSBjb252ZXJ0ZXIgYmV0d2VlbiBQZXJzaWFuLCBHcmVnb3JpYW4gYW5kIEx1bmFyIEhpanJpXG41LSBFdmVudHM6XG41LTEtIE9mZmljaWFsIHNvbGFyIGV2ZW50cy5cbjUtMi0gT2ZmaWNpYWwgbHVuYXIgZXZlbnRzLlxuNS0zLSBPZmZpY2lhbCBpbnRlcm5hdGlvbmFsIGV2ZW50cy5cbjUtNC0gVHJhZGl0aW9uYWwgUGVyc2lhbiBldmVudHMuXG41LTUtIFBlcnNpYW4gcGVyc29uYWdlcy5cblxuUGxlYXNlIFwicmF0ZVwiIGhlcmUgYW5kIFwic3RhclwiIHRoZSBwcm9qZWN0IGluIEdpdEh1Yi5cblBsZWFzZSBvcGVuIGFuIGlzc3VlIGluIEdpdEh1YiBpZiB5b3UndmUgZm91bmQgc29tZXRoaW5nIG9yIGhhdmUgYW4gaWRlYSEiLAogICJuYW1lIjogIlBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIk9taWQgTW90dGFnaGkgUmFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb21pZC9QZXJzaWFuLUNhbGVuZGFyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiUGVyc2lhbkNhbGVuZGFyQG94eWdlbndzLmNvbSIsCiAgInZlcnNpb24iOiA5Mgp9"}}}
 , {"uuid": "kimpanel@kde.org", "name": "Input Method Panel", "pname": "kimpanel", "description": "Input Method Panel using KDE's kimpanel protocol for Gnome-Shell", "link": "https://extensions.gnome.org/extension/261/kimpanel/", "shell_version_map": {"38": {"version": "59", "sha256": "0rh2in9cm9khvmhhzyyw98z6bwvv95v59zcapkjpd7kbs38hqdw2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklucHV0IE1ldGhvZCBQYW5lbCB1c2luZyBLREUncyBraW1wYW5lbCBwcm90b2NvbCBmb3IgR25vbWUtU2hlbGwiLAogICJleHRlbnNpb24taWQiOiAia2ltcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zLWtpbXBhbmVsIiwKICAibG9jYWxlIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJJbnB1dCBNZXRob2QgUGFuZWwiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMua2ltcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS93ZW5neHQvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWtpbXBhbmVsIiwKICAidXVpZCI6ICJraW1wYW5lbEBrZGUub3JnIiwKICAidmVyc2lvbiI6IDU5Cn0="}, "40": {"version": "69", "sha256": "0dyaxcfj2jcmy253b5hmi8kfrz9x3faqm7akyf7aawk2c047y21k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklucHV0IE1ldGhvZCBQYW5lbCB1c2luZyBLREUncyBraW1wYW5lbCBwcm90b2NvbCBmb3IgR25vbWUtU2hlbGwiLAogICJleHRlbnNpb24taWQiOiAia2ltcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zLWtpbXBhbmVsIiwKICAibG9jYWxlIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJJbnB1dCBNZXRob2QgUGFuZWwiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMua2ltcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dlbmd4dC9nbm9tZS1zaGVsbC1leHRlbnNpb24ta2ltcGFuZWwiLAogICJ1dWlkIjogImtpbXBhbmVsQGtkZS5vcmciLAogICJ2ZXJzaW9uIjogNjkKfQ=="}, "41": {"version": "69", "sha256": "0dyaxcfj2jcmy253b5hmi8kfrz9x3faqm7akyf7aawk2c047y21k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklucHV0IE1ldGhvZCBQYW5lbCB1c2luZyBLREUncyBraW1wYW5lbCBwcm90b2NvbCBmb3IgR25vbWUtU2hlbGwiLAogICJleHRlbnNpb24taWQiOiAia2ltcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zLWtpbXBhbmVsIiwKICAibG9jYWxlIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJJbnB1dCBNZXRob2QgUGFuZWwiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMua2ltcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3dlbmd4dC9nbm9tZS1zaGVsbC1leHRlbnNpb24ta2ltcGFuZWwiLAogICJ1dWlkIjogImtpbXBhbmVsQGtkZS5vcmciLAogICJ2ZXJzaW9uIjogNjkKfQ=="}}}
 , {"uuid": "impatience@gfxmonk.net", "name": "Impatience", "pname": "impatience", "description": "Speed up the gnome-shell animation speed", "link": "https://extensions.gnome.org/extension/277/impatience/", "shell_version_map": {"40": {"version": "17", "sha256": "10zjxf8swp3n34q3mdid4ni109r1274c2iyd8nmwzyzsi11a14dj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNwZWVkIHVwIHRoZSBnbm9tZS1zaGVsbCBhbmltYXRpb24gc3BlZWQiLAogICJuYW1lIjogIkltcGF0aWVuY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dmeG1vbmsubmV0L2Rpc3QvMGluc3RhbGwvZ25vbWUtc2hlbGwtaW1wYXRpZW5jZS54bWwiLAogICJ1dWlkIjogImltcGF0aWVuY2VAZ2Z4bW9uay5uZXQiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "41": {"version": "17", "sha256": "10zjxf8swp3n34q3mdid4ni109r1274c2iyd8nmwzyzsi11a14dj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNwZWVkIHVwIHRoZSBnbm9tZS1zaGVsbCBhbmltYXRpb24gc3BlZWQiLAogICJuYW1lIjogIkltcGF0aWVuY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dmeG1vbmsubmV0L2Rpc3QvMGluc3RhbGwvZ25vbWUtc2hlbGwtaW1wYXRpZW5jZS54bWwiLAogICJ1dWlkIjogImltcGF0aWVuY2VAZ2Z4bW9uay5uZXQiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
 , {"uuid": "windowoverlay-icons@sustmidown.centrum.cz", "name": "WindowOverlay Icons", "pname": "windowoverlay-icons", "description": "Add application icons to window overview", "link": "https://extensions.gnome.org/extension/302/windowoverlay-icons/", "shell_version_map": {"38": {"version": "37", "sha256": "108a5i5v62a9i61av5pib3b0hcpmb6pw3np7c29jfngs25n14wd3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhcHBsaWNhdGlvbiBpY29ucyB0byB3aW5kb3cgb3ZlcnZpZXciLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3aW5kb3dvdmVybGF5LWljb25zIiwKICAibmFtZSI6ICJXaW5kb3dPdmVybGF5IEljb25zIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndpbmRvd292ZXJsYXktaWNvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdXN0bWkvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXdpbmRvd292ZXJsYXktaWNvbnMiLAogICJ1dWlkIjogIndpbmRvd292ZXJsYXktaWNvbnNAc3VzdG1pZG93bi5jZW50cnVtLmN6IiwKICAidmVyc2lvbiI6IDM3Cn0="}}}
@@ -36,27 +36,27 @@
 , {"uuid": "caffeine@patapon.info", "name": "Caffeine", "pname": "caffeine", "description": "Disable the screensaver and auto suspend", "link": "https://extensions.gnome.org/extension/517/caffeine/", "shell_version_map": {"38": {"version": "37", "sha256": "05g1910jcwkjl9gmvnk57ip20sbzy09mk4v6q2fm0pg8398v0vhf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgdGhlIHNjcmVlbnNhdmVyIGFuZCBhdXRvIHN1c3BlbmQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tY2FmZmVpbmUiLAogICJuYW1lIjogIkNhZmZlaW5lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNhZmZlaW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZW9ucGF0YXBvbi9nbm9tZS1zaGVsbC1leHRlbnNpb24tY2FmZmVpbmUiLAogICJ1dWlkIjogImNhZmZlaW5lQHBhdGFwb24uaW5mbyIsCiAgInZlcnNpb24iOiAzNwp9"}, "40": {"version": "40", "sha256": "1rza4ppzcimh6qmg14srawv16vas4lbcw4njxjigl29d9qf43sdr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgdGhlIHNjcmVlbnNhdmVyIGFuZCBhdXRvIHN1c3BlbmQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tY2FmZmVpbmUiLAogICJuYW1lIjogIkNhZmZlaW5lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNhZmZlaW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lb25wYXRhcG9uL2dub21lLXNoZWxsLWV4dGVuc2lvbi1jYWZmZWluZSIsCiAgInV1aWQiOiAiY2FmZmVpbmVAcGF0YXBvbi5pbmZvIiwKICAidmVyc2lvbiI6IDQwCn0="}, "41": {"version": "40", "sha256": "1rza4ppzcimh6qmg14srawv16vas4lbcw4njxjigl29d9qf43sdr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgdGhlIHNjcmVlbnNhdmVyIGFuZCBhdXRvIHN1c3BlbmQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tY2FmZmVpbmUiLAogICJuYW1lIjogIkNhZmZlaW5lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNhZmZlaW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lb25wYXRhcG9uL2dub21lLXNoZWxsLWV4dGVuc2lvbi1jYWZmZWluZSIsCiAgInV1aWQiOiAiY2FmZmVpbmVAcGF0YXBvbi5pbmZvIiwKICAidmVyc2lvbiI6IDQwCn0="}}}
 , {"uuid": "backslide@codeisland.org", "name": "BackSlide", "pname": "backslide", "description": "Automatic background-image (wallpaper) slideshow for Gnome Shell", "link": "https://extensions.gnome.org/extension/543/backslide/", "shell_version_map": {"38": {"version": "18", "sha256": "1vm4w61cksj9ya5z4xcy7h96bk0wwi5njp0lyhnqa8j2fgsq5iin", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpYyBiYWNrZ3JvdW5kLWltYWdlICh3YWxscGFwZXIpIHNsaWRlc2hvdyBmb3IgR25vbWUgU2hlbGwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiYWNrc2xpZGUiLAogICJuYW1lIjogIkJhY2tTbGlkZSIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJMdWthcyBLbnV0aCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9iaXRidWNrZXQub3JnL0x1a2FzS251dGgvYmFja3NsaWRlIiwKICAidXVpZCI6ICJiYWNrc2xpZGVAY29kZWlzbGFuZC5vcmciLAogICJ2ZXJzaW9uIjogMTgKfQ=="}, "40": {"version": "24", "sha256": "0an1w35sbv5w7826xa3k8nl8hc3krxkzc8nhvgcp48z75n2wdksl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpYyBiYWNrZ3JvdW5kLWltYWdlICh3YWxscGFwZXIpIHNsaWRlc2hvdyBmb3IgR25vbWUgU2hlbGwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiYWNrc2xpZGUiLAogICJuYW1lIjogIkJhY2tTbGlkZSIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJMdWthcyBLbnV0aCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2JpdGJ1Y2tldC5vcmcvTHVrYXNLbnV0aC9iYWNrc2xpZGUiLAogICJ1dWlkIjogImJhY2tzbGlkZUBjb2RlaXNsYW5kLm9yZyIsCiAgInZlcnNpb24iOiAyNAp9"}, "41": {"version": "24", "sha256": "0an1w35sbv5w7826xa3k8nl8hc3krxkzc8nhvgcp48z75n2wdksl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpYyBiYWNrZ3JvdW5kLWltYWdlICh3YWxscGFwZXIpIHNsaWRlc2hvdyBmb3IgR25vbWUgU2hlbGwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiYWNrc2xpZGUiLAogICJuYW1lIjogIkJhY2tTbGlkZSIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJMdWthcyBLbnV0aCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2JpdGJ1Y2tldC5vcmcvTHVrYXNLbnV0aC9iYWNrc2xpZGUiLAogICJ1dWlkIjogImJhY2tzbGlkZUBjb2RlaXNsYW5kLm9yZyIsCiAgInZlcnNpb24iOiAyNAp9"}}}
 , {"uuid": "historymanager-prefix-search@sustmidown.centrum.cz", "name": "HistoryManager Prefix Search", "pname": "historymanager-prefix-search", "description": "Use PageUp and PageDown to move in HistoryManager (eg. RunCommand, Looking Glass) according to prefix", "link": "https://extensions.gnome.org/extension/544/historymanager-prefix-search/", "shell_version_map": {"40": {"version": "14", "sha256": "1n6gac80xrk6lhlj29zb03h62ia0a66va0i9pmjgqbg3bs74yds0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVzZSBQYWdlVXAgYW5kIFBhZ2VEb3duIHRvIG1vdmUgaW4gSGlzdG9yeU1hbmFnZXIgKGVnLiBSdW5Db21tYW5kLCBMb29raW5nIEdsYXNzKSBhY2NvcmRpbmcgdG8gcHJlZml4IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGlzdG9yeW1hbmFnZXItcHJlZml4LXNlYXJjaCIsCiAgIm5hbWUiOiAiSGlzdG9yeU1hbmFnZXIgUHJlZml4IFNlYXJjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5oaXN0b3J5bWFuYWdlci1wcmVmaXgtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjYiLAogICAgIjMuOCIsCiAgICAiMy43LjMiLAogICAgIjMuMTAiLAogICAgIjMuMTIiLAogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3VzdG1pL2dub21lLXNoZWxsLWV4dGVuc2lvbi1oaXN0b3J5bWFuYWdlci1wcmVmaXgtc2VhcmNoIiwKICAidXVpZCI6ICJoaXN0b3J5bWFuYWdlci1wcmVmaXgtc2VhcmNoQHN1c3RtaWRvd24uY2VudHJ1bS5jeiIsCiAgInZlcnNpb24iOiAxNAp9"}}}
-, {"uuid": "hidetopbar@mathieu.bidon.ca", "name": "Hide Top Bar", "pname": "hide-top-bar", "description": "Hides the top bar, except in overview. However, there is an option to show the panel whenever the mouse pointer approaches the edge of the screen. And if \"intellihide\" is enabled, the panel only hides when a window takes the space.\n\n- Press backspace to remove keyboard shortcut.\n- Log off and on again when there is an error after upgrading.", "link": "https://extensions.gnome.org/extension/545/hide-top-bar/", "shell_version_map": {"38": {"version": "103", "sha256": "04218z37d7zpl9hp9rs25g5vdzhjpdb04pj8m01hmcjmbqaf3b0m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21sdXRmeS9oaWRldG9wYmFyIiwKICAidXVpZCI6ICJoaWRldG9wYmFyQG1hdGhpZXUuYmlkb24uY2EiLAogICJ2ZXJzaW9uIjogMTAzCn0="}, "40": {"version": "103", "sha256": "04218z37d7zpl9hp9rs25g5vdzhjpdb04pj8m01hmcjmbqaf3b0m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21sdXRmeS9oaWRldG9wYmFyIiwKICAidXVpZCI6ICJoaWRldG9wYmFyQG1hdGhpZXUuYmlkb24uY2EiLAogICJ2ZXJzaW9uIjogMTAzCn0="}, "41": {"version": "103", "sha256": "04218z37d7zpl9hp9rs25g5vdzhjpdb04pj8m01hmcjmbqaf3b0m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21sdXRmeS9oaWRldG9wYmFyIiwKICAidXVpZCI6ICJoaWRldG9wYmFyQG1hdGhpZXUuYmlkb24uY2EiLAogICJ2ZXJzaW9uIjogMTAzCn0="}}}
+, {"uuid": "hidetopbar@mathieu.bidon.ca", "name": "Hide Top Bar", "pname": "hide-top-bar", "description": "Hides the top bar, except in overview. However, there is an option to show the panel whenever the mouse pointer approaches the edge of the screen. And if \"intellihide\" is enabled, the panel only hides when a window takes the space.\n\n- Press backspace to remove keyboard shortcut.\n- Log off and on again when there is an error after upgrading.", "link": "https://extensions.gnome.org/extension/545/hide-top-bar/", "shell_version_map": {"38": {"version": "104", "sha256": "1d8jlcmcmaq90a2m3j1vhhamxiykfviasqb27xnmk4ghviwxdgqs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21sdXRmeS9oaWRldG9wYmFyIiwKICAidXVpZCI6ICJoaWRldG9wYmFyQG1hdGhpZXUuYmlkb24uY2EiLAogICJ2ZXJzaW9uIjogMTA0Cn0="}, "40": {"version": "104", "sha256": "1d8jlcmcmaq90a2m3j1vhhamxiykfviasqb27xnmk4ghviwxdgqs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21sdXRmeS9oaWRldG9wYmFyIiwKICAidXVpZCI6ICJoaWRldG9wYmFyQG1hdGhpZXUuYmlkb24uY2EiLAogICJ2ZXJzaW9uIjogMTA0Cn0="}, "41": {"version": "104", "sha256": "1d8jlcmcmaq90a2m3j1vhhamxiykfviasqb27xnmk4ghviwxdgqs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21sdXRmeS9oaWRldG9wYmFyIiwKICAidXVpZCI6ICJoaWRldG9wYmFyQG1hdGhpZXUuYmlkb24uY2EiLAogICJ2ZXJzaW9uIjogMTA0Cn0="}, "42": {"version": "104", "sha256": "1d8jlcmcmaq90a2m3j1vhhamxiykfviasqb27xnmk4ghviwxdgqs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSB0b3AgYmFyLCBleGNlcHQgaW4gb3ZlcnZpZXcuIEhvd2V2ZXIsIHRoZXJlIGlzIGFuIG9wdGlvbiB0byBzaG93IHRoZSBwYW5lbCB3aGVuZXZlciB0aGUgbW91c2UgcG9pbnRlciBhcHByb2FjaGVzIHRoZSBlZGdlIG9mIHRoZSBzY3JlZW4uIEFuZCBpZiBcImludGVsbGloaWRlXCIgaXMgZW5hYmxlZCwgdGhlIHBhbmVsIG9ubHkgaGlkZXMgd2hlbiBhIHdpbmRvdyB0YWtlcyB0aGUgc3BhY2UuXG5cbi0gUHJlc3MgYmFja3NwYWNlIHRvIHJlbW92ZSBrZXlib2FyZCBzaG9ydGN1dC5cbi0gTG9nIG9mZiBhbmQgb24gYWdhaW4gd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBhZnRlciB1cGdyYWRpbmcuIiwKICAibmFtZSI6ICJIaWRlIFRvcCBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaGlkZXRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21sdXRmeS9oaWRldG9wYmFyIiwKICAidXVpZCI6ICJoaWRldG9wYmFyQG1hdGhpZXUuYmlkb24uY2EiLAogICJ2ZXJzaW9uIjogMTA0Cn0="}}}
 , {"uuid": "hdate@hatul.info", "name": "Gnome HDate", "pname": "gnome-hdate", "description": "Show Hebrew Date in the Panel.\nRequires libhdate-glib", "link": "https://extensions.gnome.org/extension/554/gnome-hdate/", "shell_version_map": {"40": {"version": "20", "sha256": "1aj5ry3g93wx1crn8rr2jm9vbz07kz0r7qc6sr2vj352bgjzrlbf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgSGVicmV3IERhdGUgaW4gdGhlIFBhbmVsLlxuUmVxdWlyZXMgbGliaGRhdGUtZ2xpYiIsCiAgIm5hbWUiOiAiR25vbWUgSERhdGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMiIsCiAgICAiMy40IiwKICAgICIzLjYiLAogICAgIjMuOCIsCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW1pYWQvZ25vbWUtaGRhdGUiLAogICJ1dWlkIjogImhkYXRlQGhhdHVsLmluZm8iLAogICJ2ZXJzaW9uIjogMjAKfQ=="}, "41": {"version": "20", "sha256": "1aj5ry3g93wx1crn8rr2jm9vbz07kz0r7qc6sr2vj352bgjzrlbf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgSGVicmV3IERhdGUgaW4gdGhlIFBhbmVsLlxuUmVxdWlyZXMgbGliaGRhdGUtZ2xpYiIsCiAgIm5hbWUiOiAiR25vbWUgSERhdGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMiIsCiAgICAiMy40IiwKICAgICIzLjYiLAogICAgIjMuOCIsCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW1pYWQvZ25vbWUtaGRhdGUiLAogICJ1dWlkIjogImhkYXRlQGhhdHVsLmluZm8iLAogICJ2ZXJzaW9uIjogMjAKfQ=="}}}
-, {"uuid": "todo.txt@bart.libert.gmail.com", "name": "Todo.txt", "pname": "todotxt", "description": "A Gnome shell interface for todo.txt. \n\nTodo.txt is a future-proof syntax for tasks (not made by me), for more info: http://todotxt.com/\n\nSome examples:\nTask: Basic task\n(A) Task: High priority task\nTask @project +context: Task is part of project and has a certain context\nx 2013-08-22 Task: Task was completed on the 22nd of August\n\nFor more info about the syntax: https://github.com/ginatrapani/todo.txt-cli/wiki/The-Todo.txt-Format\n\nQuick start:\nWhen you first enable the extension, chances are high you'll see a [X] in your top panel. If you click the [X], you will be able to choose between creating the necessary files automatically or selecting your own existing files to be used with the extension.\n\nPlease use the issue tracker on the homepage to report bugs and/or file feature requests, this makes tracking easier for me. Thanks!\n\nSee the included CHANGELOG.md for info about changes between different versions, or see it online: https://gitlab.com/bartl/todo-txt-gnome-shell-extension/raw/master/CHANGELOG.md", "link": "https://extensions.gnome.org/extension/570/todotxt/", "shell_version_map": {"38": {"version": "33", "sha256": "1spq0i8w9xw8zgq3niqzs2dslg01l0gsbcys26p8lpydz0dsy7xa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vYmFydGwvdG9kby10eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3Jhdy9tYXN0ZXIvQ0hBTkdFTE9HLm1kIiwKICAibmFtZSI6ICJUb2RvLnR4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2JhcnRsL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidG9kby50eHRAYmFydC5saWJlcnQuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDMzCn0="}, "40": {"version": "35", "sha256": "18vc11nls6giskq94kw48kbcx399706rglaqsmla4yvix0jkd8lz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vYmFydGwvdG9kby10eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3Jhdy9tYXN0ZXIvQ0hBTkdFTE9HLm1kIiwKICAibmFtZSI6ICJUb2RvLnR4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9iYXJ0bC90b2RvLXR4dC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogInRvZG8udHh0QGJhcnQubGliZXJ0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzNQp9"}, "41": {"version": "36", "sha256": "1pnw1fm38zxacjyz31vw9wfdmk1h6i4grxzi3n1nlz23gpkn3df3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vYmFydGwvdG9kby10eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3Jhdy9tYXN0ZXIvQ0hBTkdFTE9HLm1kIiwKICAibmFtZSI6ICJUb2RvLnR4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9iYXJ0bC90b2RvLXR4dC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogInRvZG8udHh0QGJhcnQubGliZXJ0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzNgp9"}}}
+, {"uuid": "todo.txt@bart.libert.gmail.com", "name": "Todo.txt", "pname": "todotxt", "description": "A Gnome shell interface for todo.txt. \n\nTodo.txt is a future-proof syntax for tasks (not made by me), for more info: http://todotxt.com/\n\nSome examples:\nTask: Basic task\n(A) Task: High priority task\nTask @project +context: Task is part of project and has a certain context\nx 2013-08-22 Task: Task was completed on the 22nd of August\n\nFor more info about the syntax: https://github.com/ginatrapani/todo.txt-cli/wiki/The-Todo.txt-Format\n\nQuick start:\nWhen you first enable the extension, chances are high you'll see a [X] in your top panel. If you click the [X], you will be able to choose between creating the necessary files automatically or selecting your own existing files to be used with the extension.\n\nPlease use the issue tracker on the homepage to report bugs and/or file feature requests, this makes tracking easier for me. Thanks!\n\nSee the included CHANGELOG.md for info about changes between different versions, or see it online: https://gitlab.com/bartl/todo-txt-gnome-shell-extension/raw/master/CHANGELOG.md", "link": "https://extensions.gnome.org/extension/570/todotxt/", "shell_version_map": {"38": {"version": "33", "sha256": "1spq0i8w9xw8zgq3niqzs2dslg01l0gsbcys26p8lpydz0dsy7xa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vYmFydGwvdG9kby10eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3Jhdy9tYXN0ZXIvQ0hBTkdFTE9HLm1kIiwKICAibmFtZSI6ICJUb2RvLnR4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2JhcnRsL3RvZG8tdHh0LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidG9kby50eHRAYmFydC5saWJlcnQuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDMzCn0="}, "40": {"version": "35", "sha256": "18vc11nls6giskq94kw48kbcx399706rglaqsmla4yvix0jkd8lz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vYmFydGwvdG9kby10eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3Jhdy9tYXN0ZXIvQ0hBTkdFTE9HLm1kIiwKICAibmFtZSI6ICJUb2RvLnR4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9iYXJ0bC90b2RvLXR4dC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogInRvZG8udHh0QGJhcnQubGliZXJ0LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzNQp9"}, "41": {"version": "37", "sha256": "0nixk7nwn987qrkmcbf5lkq2yj4ijq4hszmhz7fqrvvhlivp8xix", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vYmFydGwvdG9kby10eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3Jhdy9tYXN0ZXIvQ0hBTkdFTE9HLm1kIiwKICAibmFtZSI6ICJUb2RvLnR4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYmFydGwvdG9kby10eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ0b2RvLnR4dEBiYXJ0LmxpYmVydC5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzcKfQ=="}, "42": {"version": "37", "sha256": "0nixk7nwn987qrkmcbf5lkq2yj4ijq4hszmhz7fqrvvhlivp8xix", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgaW50ZXJmYWNlIGZvciB0b2RvLnR4dC4gXG5cblRvZG8udHh0IGlzIGEgZnV0dXJlLXByb29mIHN5bnRheCBmb3IgdGFza3MgKG5vdCBtYWRlIGJ5IG1lKSwgZm9yIG1vcmUgaW5mbzogaHR0cDovL3RvZG90eHQuY29tL1xuXG5Tb21lIGV4YW1wbGVzOlxuVGFzazogQmFzaWMgdGFza1xuKEEpIFRhc2s6IEhpZ2ggcHJpb3JpdHkgdGFza1xuVGFzayBAcHJvamVjdCArY29udGV4dDogVGFzayBpcyBwYXJ0IG9mIHByb2plY3QgYW5kIGhhcyBhIGNlcnRhaW4gY29udGV4dFxueCAyMDEzLTA4LTIyIFRhc2s6IFRhc2sgd2FzIGNvbXBsZXRlZCBvbiB0aGUgMjJuZCBvZiBBdWd1c3RcblxuRm9yIG1vcmUgaW5mbyBhYm91dCB0aGUgc3ludGF4OiBodHRwczovL2dpdGh1Yi5jb20vZ2luYXRyYXBhbmkvdG9kby50eHQtY2xpL3dpa2kvVGhlLVRvZG8udHh0LUZvcm1hdFxuXG5RdWljayBzdGFydDpcbldoZW4geW91IGZpcnN0IGVuYWJsZSB0aGUgZXh0ZW5zaW9uLCBjaGFuY2VzIGFyZSBoaWdoIHlvdSdsbCBzZWUgYSBbWF0gaW4geW91ciB0b3AgcGFuZWwuIElmIHlvdSBjbGljayB0aGUgW1hdLCB5b3Ugd2lsbCBiZSBhYmxlIHRvIGNob29zZSBiZXR3ZWVuIGNyZWF0aW5nIHRoZSBuZWNlc3NhcnkgZmlsZXMgYXV0b21hdGljYWxseSBvciBzZWxlY3RpbmcgeW91ciBvd24gZXhpc3RpbmcgZmlsZXMgdG8gYmUgdXNlZCB3aXRoIHRoZSBleHRlbnNpb24uXG5cblBsZWFzZSB1c2UgdGhlIGlzc3VlIHRyYWNrZXIgb24gdGhlIGhvbWVwYWdlIHRvIHJlcG9ydCBidWdzIGFuZC9vciBmaWxlIGZlYXR1cmUgcmVxdWVzdHMsIHRoaXMgbWFrZXMgdHJhY2tpbmcgZWFzaWVyIGZvciBtZS4gVGhhbmtzIVxuXG5TZWUgdGhlIGluY2x1ZGVkIENIQU5HRUxPRy5tZCBmb3IgaW5mbyBhYm91dCBjaGFuZ2VzIGJldHdlZW4gZGlmZmVyZW50IHZlcnNpb25zLCBvciBzZWUgaXQgb25saW5lOiBodHRwczovL2dpdGxhYi5jb20vYmFydGwvdG9kby10eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uL3Jhdy9tYXN0ZXIvQ0hBTkdFTE9HLm1kIiwKICAibmFtZSI6ICJUb2RvLnR4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYmFydGwvdG9kby10eHQtZ25vbWUtc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ0b2RvLnR4dEBiYXJ0LmxpYmVydC5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzcKfQ=="}}}
 , {"uuid": "text_translator@awamper.gmail.com", "name": "Text Translator", "pname": "text-translator", "description": "** Needs the package translate-shell **\nTranslation of the text by different translators (currently Google.Translate, Yandex.Translate).\nShortcuts:\nSuper+T - open translator dialog.\nSuper+Shift+T - open translator dialog and translate text from clipboard.\nSuper+Alt+T - open translator dialog and translate from primary selection.\nCtrl+Enter+ - Translate text.\nCtrl+Shift+C - copy translated text to clipboard.\nCtrl+S - swap languages.\nCtrl+D - reset languages to default\nTab+ - toggle transliteration of result text.", "link": "https://extensions.gnome.org/extension/593/text-translator/", "shell_version_map": {"38": {"version": "36", "sha256": "1idzgg4vb791k5dryjvznr6mfwfx59vlgabw2n3spysbwvjv2a48", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIioqIE5lZWRzIHRoZSBwYWNrYWdlIHRyYW5zbGF0ZS1zaGVsbCAqKlxuVHJhbnNsYXRpb24gb2YgdGhlIHRleHQgYnkgZGlmZmVyZW50IHRyYW5zbGF0b3JzIChjdXJyZW50bHkgR29vZ2xlLlRyYW5zbGF0ZSwgWWFuZGV4LlRyYW5zbGF0ZSkuXG5TaG9ydGN1dHM6XG5TdXBlcitUIC0gb3BlbiB0cmFuc2xhdG9yIGRpYWxvZy5cblN1cGVyK1NoaWZ0K1QgLSBvcGVuIHRyYW5zbGF0b3IgZGlhbG9nIGFuZCB0cmFuc2xhdGUgdGV4dCBmcm9tIGNsaXBib2FyZC5cblN1cGVyK0FsdCtUIC0gb3BlbiB0cmFuc2xhdG9yIGRpYWxvZyBhbmQgdHJhbnNsYXRlIGZyb20gcHJpbWFyeSBzZWxlY3Rpb24uXG5DdHJsK0VudGVyKyAtIFRyYW5zbGF0ZSB0ZXh0LlxuQ3RybCtTaGlmdCtDIC0gY29weSB0cmFuc2xhdGVkIHRleHQgdG8gY2xpcGJvYXJkLlxuQ3RybCtTIC0gc3dhcCBsYW5ndWFnZXMuXG5DdHJsK0QgLSByZXNldCBsYW5ndWFnZXMgdG8gZGVmYXVsdFxuVGFiKyAtIHRvZ2dsZSB0cmFuc2xpdGVyYXRpb24gb2YgcmVzdWx0IHRleHQuIiwKICAibmFtZSI6ICJUZXh0IFRyYW5zbGF0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGV4dC10cmFuc2xhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ3Vmb2UvdGV4dC10cmFuc2xhdG9yIiwKICAidXVpZCI6ICJ0ZXh0X3RyYW5zbGF0b3JAYXdhbXBlci5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzYKfQ=="}}}
 , {"uuid": "autohide-battery@sitnik.ru", "name": "Autohide Battery", "pname": "autohide-battery", "description": "Hide battery icon in top panel, if battery is fully charged and AC is connected", "link": "https://extensions.gnome.org/extension/595/autohide-battery/", "shell_version_map": {"40": {"version": "23", "sha256": "1kxcb301ql1q3vyswnwgq8rmdyxj6zrngah2rwrbiy1wjz726xg0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgYmF0dGVyeSBpY29uIGluIHRvcCBwYW5lbCwgaWYgYmF0dGVyeSBpcyBmdWxseSBjaGFyZ2VkIGFuZCBBQyBpcyBjb25uZWN0ZWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhdXRvaGlkZS1iYXR0ZXJ5IiwKICAibmFtZSI6ICJBdXRvaGlkZSBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9haS9hdXRvaGlkZS1iYXR0ZXJ5IiwKICAidXVpZCI6ICJhdXRvaGlkZS1iYXR0ZXJ5QHNpdG5pay5ydSIsCiAgInZlcnNpb24iOiAyMwp9"}, "41": {"version": "23", "sha256": "1kxcb301ql1q3vyswnwgq8rmdyxj6zrngah2rwrbiy1wjz726xg0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgYmF0dGVyeSBpY29uIGluIHRvcCBwYW5lbCwgaWYgYmF0dGVyeSBpcyBmdWxseSBjaGFyZ2VkIGFuZCBBQyBpcyBjb25uZWN0ZWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhdXRvaGlkZS1iYXR0ZXJ5IiwKICAibmFtZSI6ICJBdXRvaGlkZSBCYXR0ZXJ5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9haS9hdXRvaGlkZS1iYXR0ZXJ5IiwKICAidXVpZCI6ICJhdXRvaGlkZS1iYXR0ZXJ5QHNpdG5pay5ydSIsCiAgInZlcnNpb24iOiAyMwp9"}}}
-, {"uuid": "launch-new-instance@gnome-shell-extensions.gcampax.github.com", "name": "Launch new instance", "pname": "launch-new-instance", "description": "Always launch a new instance when clicking in the dash or the application view.\nThis extension is part of Classic Mode and is officially supported by GNOME. Please do not report bugs using the form below, use GNOME's GitLab instance instead.", "link": "https://extensions.gnome.org/extension/600/launch-new-instance/", "shell_version_map": {"38": {"version": "29", "sha256": "0qb1ajjwm076zxsd314n7f5vl72ih7j4h9y84bqwb9cxa53mp4g4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJMYXVuY2ggbmV3IGluc3RhbmNlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJsYXVuY2gtbmV3LWluc3RhbmNlQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDI5Cn0="}, "40": {"version": "31", "sha256": "0c667wdrpfd8bh2wygglzk1bp63z6xvknhj2rhw8v3vlmhpn8994", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJMYXVuY2ggbmV3IGluc3RhbmNlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAibGF1bmNoLW5ldy1pbnN0YW5jZUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzMQp9"}, "41": {"version": "33", "sha256": "1z2kjrqaziw5v5sig92kng302w3pdkkkcl7dlhwjqlgfhkhpdxlm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGF1bmNoLW5ldy1pbnN0YW5jZSIsCiAgIm5hbWUiOiAiTGF1bmNoIG5ldyBpbnN0YW5jZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5sYXVuY2gtbmV3LWluc3RhbmNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2VAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzMKfQ=="}}}
-, {"uuid": "window-list@gnome-shell-extensions.gcampax.github.com", "name": "Window List", "pname": "window-list", "description": "Display a window list at the bottom of the screen.\nThis extension is part of Classic Mode and is officially supported by GNOME. Please do not report bugs using the form below, use GNOME's GitLab instance instead.", "link": "https://extensions.gnome.org/extension/602/window-list/", "shell_version_map": {"38": {"version": "34", "sha256": "06jww5sv3a32plbvnl1xch10y19q807dx6zn6z5gwpvq8n0nvnx3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIldpbmRvdyBMaXN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndpbmRvdy1saXN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}, "40": {"version": "41", "sha256": "16vf0b3wqr5s6fqxqlz3ly28nkvsv3ygvfk1sqxgrpqnw823x8bl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi13aW5kb3ctbGlzdCIsCiAgIm5hbWUiOiAiV2luZG93IExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2luZG93LWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDEKfQ=="}, "41": {"version": "42", "sha256": "1jhgnzlrpnbhqx4rkr9nf7yrwdbc9h6n46aindfpp7kdgv2spymi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi13aW5kb3ctbGlzdCIsCiAgIm5hbWUiOiAiV2luZG93IExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2luZG93LWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDIKfQ=="}}}
+, {"uuid": "launch-new-instance@gnome-shell-extensions.gcampax.github.com", "name": "Launch new instance", "pname": "launch-new-instance", "description": "Always launch a new instance when clicking in the dash or the application view.\nThis extension is part of Classic Mode and is officially supported by GNOME. Please do not report bugs using the form below, use GNOME's GitLab instance instead.", "link": "https://extensions.gnome.org/extension/600/launch-new-instance/", "shell_version_map": {"38": {"version": "29", "sha256": "0qb1ajjwm076zxsd314n7f5vl72ih7j4h9y84bqwb9cxa53mp4g4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJMYXVuY2ggbmV3IGluc3RhbmNlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAidXVpZCI6ICJsYXVuY2gtbmV3LWluc3RhbmNlQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDI5Cn0="}, "40": {"version": "31", "sha256": "0c667wdrpfd8bh2wygglzk1bp63z6xvknhj2rhw8v3vlmhpn8994", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJMYXVuY2ggbmV3IGluc3RhbmNlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAibGF1bmNoLW5ldy1pbnN0YW5jZUBnbm9tZS1zaGVsbC1leHRlbnNpb25zLmdjYW1wYXguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAzMQp9"}, "41": {"version": "33", "sha256": "1z2kjrqaziw5v5sig92kng302w3pdkkkcl7dlhwjqlgfhkhpdxlm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGF1bmNoLW5ldy1pbnN0YW5jZSIsCiAgIm5hbWUiOiAiTGF1bmNoIG5ldyBpbnN0YW5jZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5sYXVuY2gtbmV3LWluc3RhbmNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2VAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "42": {"version": "34", "sha256": "1vx1dbb8sq5ss3ilqah92nja6ivqnijywj2wkg29akz8ijbss19f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBsYXVuY2ggYSBuZXcgaW5zdGFuY2Ugd2hlbiBjbGlja2luZyBpbiB0aGUgZGFzaCBvciB0aGUgYXBwbGljYXRpb24gdmlldy5cblRoaXMgZXh0ZW5zaW9uIGlzIHBhcnQgb2YgQ2xhc3NpYyBNb2RlIGFuZCBpcyBvZmZpY2lhbGx5IHN1cHBvcnRlZCBieSBHTk9NRS4gUGxlYXNlIGRvIG5vdCByZXBvcnQgYnVncyB1c2luZyB0aGUgZm9ybSBiZWxvdywgdXNlIEdOT01FJ3MgR2l0TGFiIGluc3RhbmNlIGluc3RlYWQuIiwKICAiZXh0ZW5zaW9uLWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2UiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGF1bmNoLW5ldy1pbnN0YW5jZSIsCiAgIm5hbWUiOiAiTGF1bmNoIG5ldyBpbnN0YW5jZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5sYXVuY2gtbmV3LWluc3RhbmNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogImxhdW5jaC1uZXctaW5zdGFuY2VAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}}}
+, {"uuid": "window-list@gnome-shell-extensions.gcampax.github.com", "name": "Window List", "pname": "window-list", "description": "Display a window list at the bottom of the screen.\nThis extension is part of Classic Mode and is officially supported by GNOME. Please do not report bugs using the form below, use GNOME's GitLab instance instead.", "link": "https://extensions.gnome.org/extension/602/window-list/", "shell_version_map": {"38": {"version": "34", "sha256": "06jww5sv3a32plbvnl1xch10y19q807dx6zn6z5gwpvq8n0nvnx3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIldpbmRvdyBMaXN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndpbmRvdy1saXN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}, "40": {"version": "41", "sha256": "16vf0b3wqr5s6fqxqlz3ly28nkvsv3ygvfk1sqxgrpqnw823x8bl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi13aW5kb3ctbGlzdCIsCiAgIm5hbWUiOiAiV2luZG93IExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2luZG93LWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDEKfQ=="}, "41": {"version": "42", "sha256": "1jhgnzlrpnbhqx4rkr9nf7yrwdbc9h6n46aindfpp7kdgv2spymi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi13aW5kb3ctbGlzdCIsCiAgIm5hbWUiOiAiV2luZG93IExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2luZG93LWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDIKfQ=="}, "42": {"version": "43", "sha256": "1dslg2dn48jqjd8mh2bcxrzp98skf1wgfhygw3l9fjaw41jvv1jv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgYSB3aW5kb3cgbGlzdCBhdCB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uXG5UaGlzIGV4dGVuc2lvbiBpcyBwYXJ0IG9mIENsYXNzaWMgTW9kZSBhbmQgaXMgb2ZmaWNpYWxseSBzdXBwb3J0ZWQgYnkgR05PTUUuIFBsZWFzZSBkbyBub3QgcmVwb3J0IGJ1Z3MgdXNpbmcgdGhlIGZvcm0gYmVsb3csIHVzZSBHTk9NRSdzIEdpdExhYiBpbnN0YW5jZSBpbnN0ZWFkLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aW5kb3ctbGlzdCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi13aW5kb3ctbGlzdCIsCiAgIm5hbWUiOiAiV2luZG93IExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2luZG93LWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAid2luZG93LWxpc3RAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDMKfQ=="}}}
 , {"uuid": "MultiClock@mibus.org", "name": "MultiClock", "pname": "multiclock", "description": "A clock for showing a second timezone in the panel.", "link": "https://extensions.gnome.org/extension/605/multiclock/", "shell_version_map": {"40": {"version": "8", "sha256": "1pp1cnmpix668mrywpv6mkyb45lw7f6cwibjl6bc7cgb01hkzd53", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgY2xvY2sgZm9yIHNob3dpbmcgYSBzZWNvbmQgdGltZXpvbmUgaW4gdGhlIHBhbmVsLiIsCiAgIm5hbWUiOiAiTXVsdGlDbG9jayIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5taWJ1c011bHRpQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9taWJ1cy9NdWx0aUNsb2NrIiwKICAidXVpZCI6ICJNdWx0aUNsb2NrQG1pYnVzLm9yZyIsCiAgInZlcnNpb24iOiA4Cn0="}}}
-, {"uuid": "appindicatorsupport@rgcjonas.gmail.com", "name": "AppIndicator and KStatusNotifierItem Support", "pname": "appindicator-support", "description": "Adds AppIndicator, KStatusNotifierItem and legacy Tray icons support to the Shell", "link": "https://extensions.gnome.org/extension/615/appindicator-support/", "shell_version_map": {"38": {"version": "42", "sha256": "0141f3y8vhk3q9v0w295hb5j679rh04isqnmsnihmsjdnw61b7fx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgQXBwSW5kaWNhdG9yLCBLU3RhdHVzTm90aWZpZXJJdGVtIGFuZCBsZWdhY3kgVHJheSBpY29ucyBzdXBwb3J0IHRvIHRoZSBTaGVsbCIsCiAgImdldHRleHQtZG9tYWluIjogIkFwcEluZGljYXRvckV4dGVuc2lvbiIsCiAgIm5hbWUiOiAiQXBwSW5kaWNhdG9yIGFuZCBLU3RhdHVzTm90aWZpZXJJdGVtIFN1cHBvcnQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdWJ1bnR1L2dub21lLXNoZWxsLWV4dGVuc2lvbi1hcHBpbmRpY2F0b3IiLAogICJ1dWlkIjogImFwcGluZGljYXRvcnN1cHBvcnRAcmdjam9uYXMuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQyCn0="}, "40": {"version": "42", "sha256": "0141f3y8vhk3q9v0w295hb5j679rh04isqnmsnihmsjdnw61b7fx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgQXBwSW5kaWNhdG9yLCBLU3RhdHVzTm90aWZpZXJJdGVtIGFuZCBsZWdhY3kgVHJheSBpY29ucyBzdXBwb3J0IHRvIHRoZSBTaGVsbCIsCiAgImdldHRleHQtZG9tYWluIjogIkFwcEluZGljYXRvckV4dGVuc2lvbiIsCiAgIm5hbWUiOiAiQXBwSW5kaWNhdG9yIGFuZCBLU3RhdHVzTm90aWZpZXJJdGVtIFN1cHBvcnQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdWJ1bnR1L2dub21lLXNoZWxsLWV4dGVuc2lvbi1hcHBpbmRpY2F0b3IiLAogICJ1dWlkIjogImFwcGluZGljYXRvcnN1cHBvcnRAcmdjam9uYXMuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQyCn0="}, "41": {"version": "42", "sha256": "0141f3y8vhk3q9v0w295hb5j679rh04isqnmsnihmsjdnw61b7fx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgQXBwSW5kaWNhdG9yLCBLU3RhdHVzTm90aWZpZXJJdGVtIGFuZCBsZWdhY3kgVHJheSBpY29ucyBzdXBwb3J0IHRvIHRoZSBTaGVsbCIsCiAgImdldHRleHQtZG9tYWluIjogIkFwcEluZGljYXRvckV4dGVuc2lvbiIsCiAgIm5hbWUiOiAiQXBwSW5kaWNhdG9yIGFuZCBLU3RhdHVzTm90aWZpZXJJdGVtIFN1cHBvcnQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdWJ1bnR1L2dub21lLXNoZWxsLWV4dGVuc2lvbi1hcHBpbmRpY2F0b3IiLAogICJ1dWlkIjogImFwcGluZGljYXRvcnN1cHBvcnRAcmdjam9uYXMuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQyCn0="}}}
+, {"uuid": "appindicatorsupport@rgcjonas.gmail.com", "name": "AppIndicator and KStatusNotifierItem Support", "pname": "appindicator-support", "description": "Adds AppIndicator, KStatusNotifierItem and legacy Tray icons support to the Shell", "link": "https://extensions.gnome.org/extension/615/appindicator-support/", "shell_version_map": {"38": {"version": "42", "sha256": "0141f3y8vhk3q9v0w295hb5j679rh04isqnmsnihmsjdnw61b7fx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgQXBwSW5kaWNhdG9yLCBLU3RhdHVzTm90aWZpZXJJdGVtIGFuZCBsZWdhY3kgVHJheSBpY29ucyBzdXBwb3J0IHRvIHRoZSBTaGVsbCIsCiAgImdldHRleHQtZG9tYWluIjogIkFwcEluZGljYXRvckV4dGVuc2lvbiIsCiAgIm5hbWUiOiAiQXBwSW5kaWNhdG9yIGFuZCBLU3RhdHVzTm90aWZpZXJJdGVtIFN1cHBvcnQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdWJ1bnR1L2dub21lLXNoZWxsLWV4dGVuc2lvbi1hcHBpbmRpY2F0b3IiLAogICJ1dWlkIjogImFwcGluZGljYXRvcnN1cHBvcnRAcmdjam9uYXMuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQyCn0="}, "40": {"version": "42", "sha256": "0141f3y8vhk3q9v0w295hb5j679rh04isqnmsnihmsjdnw61b7fx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgQXBwSW5kaWNhdG9yLCBLU3RhdHVzTm90aWZpZXJJdGVtIGFuZCBsZWdhY3kgVHJheSBpY29ucyBzdXBwb3J0IHRvIHRoZSBTaGVsbCIsCiAgImdldHRleHQtZG9tYWluIjogIkFwcEluZGljYXRvckV4dGVuc2lvbiIsCiAgIm5hbWUiOiAiQXBwSW5kaWNhdG9yIGFuZCBLU3RhdHVzTm90aWZpZXJJdGVtIFN1cHBvcnQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdWJ1bnR1L2dub21lLXNoZWxsLWV4dGVuc2lvbi1hcHBpbmRpY2F0b3IiLAogICJ1dWlkIjogImFwcGluZGljYXRvcnN1cHBvcnRAcmdjam9uYXMuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQyCn0="}, "41": {"version": "42", "sha256": "0141f3y8vhk3q9v0w295hb5j679rh04isqnmsnihmsjdnw61b7fx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgQXBwSW5kaWNhdG9yLCBLU3RhdHVzTm90aWZpZXJJdGVtIGFuZCBsZWdhY3kgVHJheSBpY29ucyBzdXBwb3J0IHRvIHRoZSBTaGVsbCIsCiAgImdldHRleHQtZG9tYWluIjogIkFwcEluZGljYXRvckV4dGVuc2lvbiIsCiAgIm5hbWUiOiAiQXBwSW5kaWNhdG9yIGFuZCBLU3RhdHVzTm90aWZpZXJJdGVtIFN1cHBvcnQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdWJ1bnR1L2dub21lLXNoZWxsLWV4dGVuc2lvbi1hcHBpbmRpY2F0b3IiLAogICJ1dWlkIjogImFwcGluZGljYXRvcnN1cHBvcnRAcmdjam9uYXMuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQyCn0="}, "42": {"version": "42", "sha256": "0141f3y8vhk3q9v0w295hb5j679rh04isqnmsnihmsjdnw61b7fx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgQXBwSW5kaWNhdG9yLCBLU3RhdHVzTm90aWZpZXJJdGVtIGFuZCBsZWdhY3kgVHJheSBpY29ucyBzdXBwb3J0IHRvIHRoZSBTaGVsbCIsCiAgImdldHRleHQtZG9tYWluIjogIkFwcEluZGljYXRvckV4dGVuc2lvbiIsCiAgIm5hbWUiOiAiQXBwSW5kaWNhdG9yIGFuZCBLU3RhdHVzTm90aWZpZXJJdGVtIFN1cHBvcnQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdWJ1bnR1L2dub21lLXNoZWxsLWV4dGVuc2lvbi1hcHBpbmRpY2F0b3IiLAogICJ1dWlkIjogImFwcGluZGljYXRvcnN1cHBvcnRAcmdjam9uYXMuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQyCn0="}}}
 , {"uuid": "bitcoin-markets@ottoallmendinger.github.com", "name": "Bitcoin Markets", "pname": "bitcoin-markets", "description": "Display info on various crypto-currency exchanges.", "link": "https://extensions.gnome.org/extension/648/bitcoin-markets/", "shell_version_map": {"38": {"version": "57", "sha256": "1dbrkr49gi93nps610afvw2q68d1ialkhxsxd0waa8xgwjxwzyxd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgaW5mbyBvbiB2YXJpb3VzIGNyeXB0by1jdXJyZW5jeSBleGNoYW5nZXMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtYml0Y29pbi1tYXJrZXRzIiwKICAiZ2l0LXZlcnNpb24iOiAidjU3IiwKICAibmFtZSI6ICJCaXRjb2luIE1hcmtldHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYml0Y29pbi1tYXJrZXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vT3R0b0FsbG1lbmRpbmdlci9nbm9tZS1zaGVsbC1iaXRjb2luLW1hcmtldHMvIiwKICAidXVpZCI6ICJiaXRjb2luLW1hcmtldHNAb3R0b2FsbG1lbmRpbmdlci5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDU3Cn0="}, "40": {"version": "65", "sha256": "10jg1ixk0zfb67licr807wf68bzsdiv9fb9j40xjg49li72c6hrf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgaW5mbyBvbiB2YXJpb3VzIGNyeXB0by1jdXJyZW5jeSBleGNoYW5nZXMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtYml0Y29pbi1tYXJrZXRzIiwKICAiZ2l0LXZlcnNpb24iOiAidjY1IiwKICAibmFtZSI6ICJCaXRjb2luIE1hcmtldHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYml0Y29pbi1tYXJrZXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9PdHRvQWxsbWVuZGluZ2VyL2dub21lLXNoZWxsLWJpdGNvaW4tbWFya2V0cy8iLAogICJ1dWlkIjogImJpdGNvaW4tbWFya2V0c0BvdHRvYWxsbWVuZGluZ2VyLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNjUKfQ=="}, "41": {"version": "65", "sha256": "10jg1ixk0zfb67licr807wf68bzsdiv9fb9j40xjg49li72c6hrf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgaW5mbyBvbiB2YXJpb3VzIGNyeXB0by1jdXJyZW5jeSBleGNoYW5nZXMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtYml0Y29pbi1tYXJrZXRzIiwKICAiZ2l0LXZlcnNpb24iOiAidjY1IiwKICAibmFtZSI6ICJCaXRjb2luIE1hcmtldHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYml0Y29pbi1tYXJrZXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9PdHRvQWxsbWVuZGluZ2VyL2dub21lLXNoZWxsLWJpdGNvaW4tbWFya2V0cy8iLAogICJ1dWlkIjogImJpdGNvaW4tbWFya2V0c0BvdHRvYWxsbWVuZGluZ2VyLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNjUKfQ=="}}}
 , {"uuid": "ShellTile@emasab.it", "name": "ShellTile", "pname": "shelltile", "description": "A tiling window extension for GNOME Shell. Just move a window to the edges of the screen to create a tiling, otherwise move a window over another one, holding down the Control key. Grouped windows minimize, resize, raise and change workspace together. Move or maximize a window to remove it from the group.", "link": "https://extensions.gnome.org/extension/657/shelltile/", "shell_version_map": {"38": {"version": "65", "sha256": "0kb7crng8lmkcjjxzd7ma2x0x43rg4j5ygvvpiq5z2j15rx8bcg4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgdGlsaW5nIHdpbmRvdyBleHRlbnNpb24gZm9yIEdOT01FIFNoZWxsLiBKdXN0IG1vdmUgYSB3aW5kb3cgdG8gdGhlIGVkZ2VzIG9mIHRoZSBzY3JlZW4gdG8gY3JlYXRlIGEgdGlsaW5nLCBvdGhlcndpc2UgbW92ZSBhIHdpbmRvdyBvdmVyIGFub3RoZXIgb25lLCBob2xkaW5nIGRvd24gdGhlIENvbnRyb2wga2V5LiBHcm91cGVkIHdpbmRvd3MgbWluaW1pemUsIHJlc2l6ZSwgcmFpc2UgYW5kIGNoYW5nZSB3b3Jrc3BhY2UgdG9nZXRoZXIuIE1vdmUgb3IgbWF4aW1pemUgYSB3aW5kb3cgdG8gcmVtb3ZlIGl0IGZyb20gdGhlIGdyb3VwLiIsCiAgImdldHRleHQtZG9tYWluIjogInNoZWxsdGlsZSIsCiAgIm5hbWUiOiAiU2hlbGxUaWxlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNoZWxsdGlsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy42IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjMuMTIiLAogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lbWFzYWIvc2hlbGx0aWxlIiwKICAidXVpZCI6ICJTaGVsbFRpbGVAZW1hc2FiLml0IiwKICAidmVyc2lvbiI6IDY1Cn0="}}}
-, {"uuid": "lunarcal@ailin.nemui", "name": "Lunar Calendar 农历", "pname": "lunar-calendar", "description": "Display Chinese Lunar Calendar in panel\n\n⚠⚠⚠ dependency: typelib-1_0-LunarDate-3_0 / gir1.2-lunar-date-2.0", "link": "https://extensions.gnome.org/extension/675/lunar-calendar/", "shell_version_map": {"38": {"version": "25", "sha256": "1pj439wdsqpxim6p4d0y09v40kdjga908hagxfyvq0fzjykc51rn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNyZWF0b3IiOiAiTmVpIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSBDaGluZXNlIEx1bmFyIENhbGVuZGFyIGluIHBhbmVsXG5cblx1MjZhMFx1MjZhMFx1MjZhMCBkZXBlbmRlbmN5OiB0eXBlbGliLTFfMC1MdW5hckRhdGUtM18wIC8gZ2lyMS4yLWx1bmFyLWRhdGUtMi4wIiwKICAibmFtZSI6ICJMdW5hciBDYWxlbmRhciBcdTUxOWNcdTUzODYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubHVuYXItY2FsZW5kYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibHVuYXJjYWxAYWlsaW4ubmVtdWkiLAogICJ2ZXJzaW9uIjogMjUKfQ=="}, "40": {"version": "27", "sha256": "159iiyw0sblq8jwkm1qfcakgdy3rvk07vzz8q6yj2davp64wpg5n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNyZWF0b3IiOiAiTmVpIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSBDaGluZXNlIEx1bmFyIENhbGVuZGFyIGluIHBhbmVsXG5cblx1MjZhMFx1MjZhMFx1MjZhMCBkZXBlbmRlbmN5OiB0eXBlbGliLTFfMC1MdW5hckRhdGUtM18wIC8gZ2lyMS4yLWx1bmFyLWRhdGUtMi4wIiwKICAibmFtZSI6ICJMdW5hciBDYWxlbmRhciBcdTUxOWNcdTUzODYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubHVuYXItY2FsZW5kYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJsdW5hcmNhbEBhaWxpbi5uZW11aSIsCiAgInZlcnNpb24iOiAyNwp9"}, "41": {"version": "27", "sha256": "159iiyw0sblq8jwkm1qfcakgdy3rvk07vzz8q6yj2davp64wpg5n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNyZWF0b3IiOiAiTmVpIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSBDaGluZXNlIEx1bmFyIENhbGVuZGFyIGluIHBhbmVsXG5cblx1MjZhMFx1MjZhMFx1MjZhMCBkZXBlbmRlbmN5OiB0eXBlbGliLTFfMC1MdW5hckRhdGUtM18wIC8gZ2lyMS4yLWx1bmFyLWRhdGUtMi4wIiwKICAibmFtZSI6ICJMdW5hciBDYWxlbmRhciBcdTUxOWNcdTUzODYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubHVuYXItY2FsZW5kYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJsdW5hcmNhbEBhaWxpbi5uZW11aSIsCiAgInZlcnNpb24iOiAyNwp9"}}}
+, {"uuid": "lunarcal@ailin.nemui", "name": "Lunar Calendar 农历", "pname": "lunar-calendar", "description": "Display Chinese Lunar Calendar in panel\n\n⚠⚠⚠ dependency: typelib-1_0-LunarDate-3_0 / gir1.2-lunar-date-2.0", "link": "https://extensions.gnome.org/extension/675/lunar-calendar/", "shell_version_map": {"38": {"version": "25", "sha256": "1pj439wdsqpxim6p4d0y09v40kdjga908hagxfyvq0fzjykc51rn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNyZWF0b3IiOiAiTmVpIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSBDaGluZXNlIEx1bmFyIENhbGVuZGFyIGluIHBhbmVsXG5cblx1MjZhMFx1MjZhMFx1MjZhMCBkZXBlbmRlbmN5OiB0eXBlbGliLTFfMC1MdW5hckRhdGUtM18wIC8gZ2lyMS4yLWx1bmFyLWRhdGUtMi4wIiwKICAibmFtZSI6ICJMdW5hciBDYWxlbmRhciBcdTUxOWNcdTUzODYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubHVuYXItY2FsZW5kYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibHVuYXJjYWxAYWlsaW4ubmVtdWkiLAogICJ2ZXJzaW9uIjogMjUKfQ=="}, "40": {"version": "28", "sha256": "068y5dy81ykmxy3cxi45xq0a0jg061fp22x9zhd4965kmvzqiq4g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNyZWF0b3IiOiAiTmVpIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSBDaGluZXNlIEx1bmFyIENhbGVuZGFyIGluIHBhbmVsXG5cblx1MjZhMFx1MjZhMFx1MjZhMCBkZXBlbmRlbmN5OiB0eXBlbGliLTFfMC1MdW5hckRhdGUtM18wIC8gZ2lyMS4yLWx1bmFyLWRhdGUtMi4wIiwKICAibmFtZSI6ICJMdW5hciBDYWxlbmRhciBcdTUxOWNcdTUzODYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubHVuYXItY2FsZW5kYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibHVuYXJjYWxAYWlsaW4ubmVtdWkiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}, "41": {"version": "28", "sha256": "068y5dy81ykmxy3cxi45xq0a0jg061fp22x9zhd4965kmvzqiq4g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNyZWF0b3IiOiAiTmVpIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSBDaGluZXNlIEx1bmFyIENhbGVuZGFyIGluIHBhbmVsXG5cblx1MjZhMFx1MjZhMFx1MjZhMCBkZXBlbmRlbmN5OiB0eXBlbGliLTFfMC1MdW5hckRhdGUtM18wIC8gZ2lyMS4yLWx1bmFyLWRhdGUtMi4wIiwKICAibmFtZSI6ICJMdW5hciBDYWxlbmRhciBcdTUxOWNcdTUzODYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubHVuYXItY2FsZW5kYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibHVuYXJjYWxAYWlsaW4ubmVtdWkiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}, "42": {"version": "28", "sha256": "068y5dy81ykmxy3cxi45xq0a0jg061fp22x9zhd4965kmvzqiq4g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNyZWF0b3IiOiAiTmVpIiwKICAiZGVzY3JpcHRpb24iOiAiRGlzcGxheSBDaGluZXNlIEx1bmFyIENhbGVuZGFyIGluIHBhbmVsXG5cblx1MjZhMFx1MjZhMFx1MjZhMCBkZXBlbmRlbmN5OiB0eXBlbGliLTFfMC1MdW5hckRhdGUtM18wIC8gZ2lyMS4yLWx1bmFyLWRhdGUtMi4wIiwKICAibmFtZSI6ICJMdW5hciBDYWxlbmRhciBcdTUxOWNcdTUzODYiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubHVuYXItY2FsZW5kYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibHVuYXJjYWxAYWlsaW4ubmVtdWkiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}}}
 , {"uuid": "EasyScreenCast@iacopodeenosee.gmail.com", "name": "EasyScreenCast", "pname": "easyscreencast", "description": "This extension simplifies the use of the video recording function integrated in gnome shell, allows quickly to change the various settings of the desktop recording.\n\nSOURCE CODE -&gt;  https://github.com/EasyScreenCast/EasyScreenCast\n\nVIDEO -&gt;  https://youtu.be/81E9AruraKU\n\n**NOTICE**\nif an error occurs during the update is recommended to reload GNOME Shell (Alt + F2, 'r') and reload the extension's installation page.", "link": "https://extensions.gnome.org/extension/690/easyscreencast/", "shell_version_map": {"38": {"version": "41", "sha256": "04zs03xbidfkhr8l0pi4p7jmri9z7sg729739jmv17lvi3nb0k8l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHNpbXBsaWZpZXMgdGhlIHVzZSBvZiB0aGUgdmlkZW8gcmVjb3JkaW5nIGZ1bmN0aW9uIGludGVncmF0ZWQgaW4gZ25vbWUgc2hlbGwsIGFsbG93cyBxdWlja2x5IHRvIGNoYW5nZSB0aGUgdmFyaW91cyBzZXR0aW5ncyBvZiB0aGUgZGVza3RvcCByZWNvcmRpbmcuXG5cblNPVVJDRSBDT0RFIC0mZ3Q7ICBodHRwczovL2dpdGh1Yi5jb20vRWFzeVNjcmVlbkNhc3QvRWFzeVNjcmVlbkNhc3RcblxuVklERU8gLSZndDsgIGh0dHBzOi8veW91dHUuYmUvODFFOUFydXJhS1VcblxuKipOT1RJQ0UqKlxuaWYgYW4gZXJyb3Igb2NjdXJzIGR1cmluZyB0aGUgdXBkYXRlIGlzIHJlY29tbWVuZGVkIHRvIHJlbG9hZCBHTk9NRSBTaGVsbCAoQWx0ICsgRjIsICdyJykgYW5kIHJlbG9hZCB0aGUgZXh0ZW5zaW9uJ3MgaW5zdGFsbGF0aW9uIHBhZ2UuIiwKICAibmFtZSI6ICJFYXN5U2NyZWVuQ2FzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRWFzeVNjcmVlbkNhc3QvRWFzeVNjcmVlbkNhc3QiLAogICJ1dWlkIjogIkVhc3lTY3JlZW5DYXN0QGlhY29wb2RlZW5vc2VlLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0MQp9"}, "40": {"version": "41", "sha256": "04zs03xbidfkhr8l0pi4p7jmri9z7sg729739jmv17lvi3nb0k8l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHNpbXBsaWZpZXMgdGhlIHVzZSBvZiB0aGUgdmlkZW8gcmVjb3JkaW5nIGZ1bmN0aW9uIGludGVncmF0ZWQgaW4gZ25vbWUgc2hlbGwsIGFsbG93cyBxdWlja2x5IHRvIGNoYW5nZSB0aGUgdmFyaW91cyBzZXR0aW5ncyBvZiB0aGUgZGVza3RvcCByZWNvcmRpbmcuXG5cblNPVVJDRSBDT0RFIC0mZ3Q7ICBodHRwczovL2dpdGh1Yi5jb20vRWFzeVNjcmVlbkNhc3QvRWFzeVNjcmVlbkNhc3RcblxuVklERU8gLSZndDsgIGh0dHBzOi8veW91dHUuYmUvODFFOUFydXJhS1VcblxuKipOT1RJQ0UqKlxuaWYgYW4gZXJyb3Igb2NjdXJzIGR1cmluZyB0aGUgdXBkYXRlIGlzIHJlY29tbWVuZGVkIHRvIHJlbG9hZCBHTk9NRSBTaGVsbCAoQWx0ICsgRjIsICdyJykgYW5kIHJlbG9hZCB0aGUgZXh0ZW5zaW9uJ3MgaW5zdGFsbGF0aW9uIHBhZ2UuIiwKICAibmFtZSI6ICJFYXN5U2NyZWVuQ2FzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRWFzeVNjcmVlbkNhc3QvRWFzeVNjcmVlbkNhc3QiLAogICJ1dWlkIjogIkVhc3lTY3JlZW5DYXN0QGlhY29wb2RlZW5vc2VlLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0MQp9"}, "41": {"version": "41", "sha256": "04zs03xbidfkhr8l0pi4p7jmri9z7sg729739jmv17lvi3nb0k8l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHNpbXBsaWZpZXMgdGhlIHVzZSBvZiB0aGUgdmlkZW8gcmVjb3JkaW5nIGZ1bmN0aW9uIGludGVncmF0ZWQgaW4gZ25vbWUgc2hlbGwsIGFsbG93cyBxdWlja2x5IHRvIGNoYW5nZSB0aGUgdmFyaW91cyBzZXR0aW5ncyBvZiB0aGUgZGVza3RvcCByZWNvcmRpbmcuXG5cblNPVVJDRSBDT0RFIC0mZ3Q7ICBodHRwczovL2dpdGh1Yi5jb20vRWFzeVNjcmVlbkNhc3QvRWFzeVNjcmVlbkNhc3RcblxuVklERU8gLSZndDsgIGh0dHBzOi8veW91dHUuYmUvODFFOUFydXJhS1VcblxuKipOT1RJQ0UqKlxuaWYgYW4gZXJyb3Igb2NjdXJzIGR1cmluZyB0aGUgdXBkYXRlIGlzIHJlY29tbWVuZGVkIHRvIHJlbG9hZCBHTk9NRSBTaGVsbCAoQWx0ICsgRjIsICdyJykgYW5kIHJlbG9hZCB0aGUgZXh0ZW5zaW9uJ3MgaW5zdGFsbGF0aW9uIHBhZ2UuIiwKICAibmFtZSI6ICJFYXN5U2NyZWVuQ2FzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRWFzeVNjcmVlbkNhc3QvRWFzeVNjcmVlbkNhc3QiLAogICJ1dWlkIjogIkVhc3lTY3JlZW5DYXN0QGlhY29wb2RlZW5vc2VlLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0MQp9"}}}
 , {"uuid": "scroll-workspaces@gfxmonk.net", "name": "Top Panel Workspace Scroll", "pname": "top-panel-workspace-scroll", "description": "Change workspaces by scrolling over the top panel", "link": "https://extensions.gnome.org/extension/701/top-panel-workspace-scroll/", "shell_version_map": {"40": {"version": "29", "sha256": "022pkhylbxwcppsfgs0znk6pr7j160w7l7dm517ksip59zifa7mk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB3b3Jrc3BhY2VzIGJ5IHNjcm9sbGluZyBvdmVyIHRoZSB0b3AgcGFuZWwiLAogICJuYW1lIjogIlRvcCBQYW5lbCBXb3Jrc3BhY2UgU2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJ0aW1AZ2Z4bW9uay5uZXQiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5ldC5nZnhtb25rLnNjcm9sbC13b3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nZnhtb25rL2dub21lLXNoZWxsLXNjcm9sbC13b3Jrc3BhY2VzIiwKICAidXVpZCI6ICJzY3JvbGwtd29ya3NwYWNlc0BnZnhtb25rLm5ldCIsCiAgInZlcnNpb24iOiAyOQp9"}, "41": {"version": "29", "sha256": "022pkhylbxwcppsfgs0znk6pr7j160w7l7dm517ksip59zifa7mk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB3b3Jrc3BhY2VzIGJ5IHNjcm9sbGluZyBvdmVyIHRoZSB0b3AgcGFuZWwiLAogICJuYW1lIjogIlRvcCBQYW5lbCBXb3Jrc3BhY2UgU2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJ0aW1AZ2Z4bW9uay5uZXQiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5ldC5nZnhtb25rLnNjcm9sbC13b3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nZnhtb25rL2dub21lLXNoZWxsLXNjcm9sbC13b3Jrc3BhY2VzIiwKICAidXVpZCI6ICJzY3JvbGwtd29ya3NwYWNlc0BnZnhtb25rLm5ldCIsCiAgInZlcnNpb24iOiAyOQp9"}}}
 , {"uuid": "all-windows@ezix.org", "name": "All Windows", "pname": "all-windows", "description": "List open windows of all workspaces", "link": "https://extensions.gnome.org/extension/704/all-windows/", "shell_version_map": {"40": {"version": "13", "sha256": "19cxrgxpim2dca6llbi8cr34hjx3pab2i4687803r96cp2hsg07l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpc3Qgb3BlbiB3aW5kb3dzIG9mIGFsbCB3b3Jrc3BhY2VzIiwKICAibmFtZSI6ICJBbGwgV2luZG93cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbHlvbmVsL2FsbC13aW5kb3dzIiwKICAidXVpZCI6ICJhbGwtd2luZG93c0Bleml4Lm9yZyIsCiAgInZlcnNpb24iOiAxMwp9"}, "41": {"version": "13", "sha256": "19cxrgxpim2dca6llbi8cr34hjx3pab2i4687803r96cp2hsg07l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpc3Qgb3BlbiB3aW5kb3dzIG9mIGFsbCB3b3Jrc3BhY2VzIiwKICAibmFtZSI6ICJBbGwgV2luZG93cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbHlvbmVsL2FsbC13aW5kb3dzIiwKICAidXVpZCI6ICJhbGwtd2luZG93c0Bleml4Lm9yZyIsCiAgInZlcnNpb24iOiAxMwp9"}}}
 , {"uuid": "panel-osd@berend.de.schouwer.gmail.com", "name": "Panel OSD", "pname": "panel-osd", "description": "Configuring where on the (main) screen notifications will appear, instead of just above the message tray", "link": "https://extensions.gnome.org/extension/708/panel-osd/", "shell_version_map": {"38": {"version": "39", "sha256": "109qlcckx5z8fwndpr86r2bfggyh4akmi6lqi0ki7gr9bfigdqnv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbmZpZ3VyaW5nIHdoZXJlIG9uIHRoZSAobWFpbikgc2NyZWVuIG5vdGlmaWNhdGlvbnMgd2lsbCBhcHBlYXIsIGluc3RlYWQgb2YganVzdCBhYm92ZSB0aGUgbWVzc2FnZSB0cmF5IiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJQYW5lbCBPU0QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTAiLAogICAgIjMuMTIiLAogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qZW5zbG9keS9nbm9tZS1zaGVsbC1leHRlbnNpb24tcGFuZWwtb3NkIiwKICAidXVpZCI6ICJwYW5lbC1vc2RAYmVyZW5kLmRlLnNjaG91d2VyLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzOQp9"}, "40": {"version": "40", "sha256": "0hskvmdnqjihixaxhb7a7apsx0203zmymm5j6ncb2al928p795yx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbmZpZ3VyaW5nIHdoZXJlIG9uIHRoZSAobWFpbikgc2NyZWVuIG5vdGlmaWNhdGlvbnMgd2lsbCBhcHBlYXIsIGluc3RlYWQgb2YganVzdCBhYm92ZSB0aGUgbWVzc2FnZSB0cmF5IiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJQYW5lbCBPU0QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vamVuc2xvZHkvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXBhbmVsLW9zZCIsCiAgInV1aWQiOiAicGFuZWwtb3NkQGJlcmVuZC5kZS5zY2hvdXdlci5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNDAKfQ=="}}}
-, {"uuid": "pixel-saver@deadalnix.me", "name": "Pixel Saver", "pname": "pixel-saver", "description": "Pixel Saver is designed to save pixel by fusing activity bar and title bar in a natural way.", "link": "https://extensions.gnome.org/extension/723/pixel-saver/", "shell_version_map": {"38": {"version": "25", "sha256": "10bzd0vdqm398xwyj2bn5klxmaazwh39clwp1069qszsxmw0lr86", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBpeGVsIFNhdmVyIGlzIGRlc2lnbmVkIHRvIHNhdmUgcGl4ZWwgYnkgZnVzaW5nIGFjdGl2aXR5IGJhciBhbmQgdGl0bGUgYmFyIGluIGEgbmF0dXJhbCB3YXkuIiwKICAibmFtZSI6ICJQaXhlbCBTYXZlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIsCiAgICAiNDAuMSIsCiAgICAiNDAuMiIsCiAgICAiNDAuMyIsCiAgICAiNDEuMCIsCiAgICAiNDEuMSIsCiAgICAiNDEuMiIsCiAgICAiNDEuMyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RlYWRhbG5peC9waXhlbC1zYXZlciIsCiAgInV1aWQiOiAicGl4ZWwtc2F2ZXJAZGVhZGFsbml4Lm1lIiwKICAidmVyc2lvbiI6IDI1Cn0="}, "40": {"version": "25", "sha256": "10bzd0vdqm398xwyj2bn5klxmaazwh39clwp1069qszsxmw0lr86", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBpeGVsIFNhdmVyIGlzIGRlc2lnbmVkIHRvIHNhdmUgcGl4ZWwgYnkgZnVzaW5nIGFjdGl2aXR5IGJhciBhbmQgdGl0bGUgYmFyIGluIGEgbmF0dXJhbCB3YXkuIiwKICAibmFtZSI6ICJQaXhlbCBTYXZlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIsCiAgICAiNDAuMSIsCiAgICAiNDAuMiIsCiAgICAiNDAuMyIsCiAgICAiNDEuMCIsCiAgICAiNDEuMSIsCiAgICAiNDEuMiIsCiAgICAiNDEuMyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RlYWRhbG5peC9waXhlbC1zYXZlciIsCiAgInV1aWQiOiAicGl4ZWwtc2F2ZXJAZGVhZGFsbml4Lm1lIiwKICAidmVyc2lvbiI6IDI1Cn0="}, "41": {"version": "25", "sha256": "10bzd0vdqm398xwyj2bn5klxmaazwh39clwp1069qszsxmw0lr86", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBpeGVsIFNhdmVyIGlzIGRlc2lnbmVkIHRvIHNhdmUgcGl4ZWwgYnkgZnVzaW5nIGFjdGl2aXR5IGJhciBhbmQgdGl0bGUgYmFyIGluIGEgbmF0dXJhbCB3YXkuIiwKICAibmFtZSI6ICJQaXhlbCBTYXZlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIsCiAgICAiNDAuMSIsCiAgICAiNDAuMiIsCiAgICAiNDAuMyIsCiAgICAiNDEuMCIsCiAgICAiNDEuMSIsCiAgICAiNDEuMiIsCiAgICAiNDEuMyIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RlYWRhbG5peC9waXhlbC1zYXZlciIsCiAgInV1aWQiOiAicGl4ZWwtc2F2ZXJAZGVhZGFsbml4Lm1lIiwKICAidmVyc2lvbiI6IDI1Cn0="}}}
+, {"uuid": "pixel-saver@deadalnix.me", "name": "Pixel Saver", "pname": "pixel-saver", "description": "Pixel Saver is designed to save pixel by fusing activity bar and title bar in a natural way", "link": "https://extensions.gnome.org/extension/723/pixel-saver/", "shell_version_map": {"38": {"version": "26", "sha256": "1i284r5443cypw7jq31rrbc4f075piaq872331qnrrynv4s1k8cn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBpeGVsIFNhdmVyIGlzIGRlc2lnbmVkIHRvIHNhdmUgcGl4ZWwgYnkgZnVzaW5nIGFjdGl2aXR5IGJhciBhbmQgdGl0bGUgYmFyIGluIGEgbmF0dXJhbCB3YXkiLAogICJuYW1lIjogIlBpeGVsIFNhdmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MC4xIiwKICAgICI0MC4yIiwKICAgICI0MC4zIiwKICAgICI0MS4wIiwKICAgICI0Mi4wIiwKICAgICI0MS4xIiwKICAgICI0MS4yIiwKICAgICI0MS4zIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVhZGFsbml4L3BpeGVsLXNhdmVyIiwKICAidXVpZCI6ICJwaXhlbC1zYXZlckBkZWFkYWxuaXgubWUiLAogICJ2ZXJzaW9uIjogMjYKfQ=="}, "40": {"version": "26", "sha256": "1i284r5443cypw7jq31rrbc4f075piaq872331qnrrynv4s1k8cn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBpeGVsIFNhdmVyIGlzIGRlc2lnbmVkIHRvIHNhdmUgcGl4ZWwgYnkgZnVzaW5nIGFjdGl2aXR5IGJhciBhbmQgdGl0bGUgYmFyIGluIGEgbmF0dXJhbCB3YXkiLAogICJuYW1lIjogIlBpeGVsIFNhdmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MC4xIiwKICAgICI0MC4yIiwKICAgICI0MC4zIiwKICAgICI0MS4wIiwKICAgICI0Mi4wIiwKICAgICI0MS4xIiwKICAgICI0MS4yIiwKICAgICI0MS4zIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVhZGFsbml4L3BpeGVsLXNhdmVyIiwKICAidXVpZCI6ICJwaXhlbC1zYXZlckBkZWFkYWxuaXgubWUiLAogICJ2ZXJzaW9uIjogMjYKfQ=="}, "41": {"version": "26", "sha256": "1i284r5443cypw7jq31rrbc4f075piaq872331qnrrynv4s1k8cn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBpeGVsIFNhdmVyIGlzIGRlc2lnbmVkIHRvIHNhdmUgcGl4ZWwgYnkgZnVzaW5nIGFjdGl2aXR5IGJhciBhbmQgdGl0bGUgYmFyIGluIGEgbmF0dXJhbCB3YXkiLAogICJuYW1lIjogIlBpeGVsIFNhdmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MC4xIiwKICAgICI0MC4yIiwKICAgICI0MC4zIiwKICAgICI0MS4wIiwKICAgICI0Mi4wIiwKICAgICI0MS4xIiwKICAgICI0MS4yIiwKICAgICI0MS4zIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVhZGFsbml4L3BpeGVsLXNhdmVyIiwKICAidXVpZCI6ICJwaXhlbC1zYXZlckBkZWFkYWxuaXgubWUiLAogICJ2ZXJzaW9uIjogMjYKfQ=="}, "42": {"version": "26", "sha256": "1i284r5443cypw7jq31rrbc4f075piaq872331qnrrynv4s1k8cn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBpeGVsIFNhdmVyIGlzIGRlc2lnbmVkIHRvIHNhdmUgcGl4ZWwgYnkgZnVzaW5nIGFjdGl2aXR5IGJhciBhbmQgdGl0bGUgYmFyIGluIGEgbmF0dXJhbCB3YXkiLAogICJuYW1lIjogIlBpeGVsIFNhdmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MC4xIiwKICAgICI0MC4yIiwKICAgICI0MC4zIiwKICAgICI0MS4wIiwKICAgICI0Mi4wIiwKICAgICI0MS4xIiwKICAgICI0MS4yIiwKICAgICI0MS4zIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVhZGFsbml4L3BpeGVsLXNhdmVyIiwKICAidXVpZCI6ICJwaXhlbC1zYXZlckBkZWFkYWxuaXgubWUiLAogICJ2ZXJzaW9uIjogMjYKfQ=="}}}
 , {"uuid": "breakreminder@danielfalk22.gmail.com", "name": "Break Reminder", "pname": "break-reminder", "description": "Get a reminder to take a break", "link": "https://extensions.gnome.org/extension/734/break-reminder/", "shell_version_map": {"38": {"version": "6", "sha256": "0k21wj98ldx52m7s8sgndqziqnn7n0g2j45lsi31kfjydhyj3dmk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdldCBhIHJlbWluZGVyIHRvIHRha2UgYSBicmVhayIsCiAgIm5hbWUiOiAiQnJlYWsgUmVtaW5kZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kYW5pZWxmYWxrL2dub21lM2JyZWFrcmVtaW5kZXIiLAogICJ1dWlkIjogImJyZWFrcmVtaW5kZXJAZGFuaWVsZmFsazIyLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA2Cn0="}}}
 , {"uuid": "Hide_Activities@shay.shayel.org", "name": "Hide Activities Button", "pname": "hide-activities-button", "description": "Hides the Activities button from the status bar (the hot corner and keyboard shortcut keeps working). To disable top left hot corner use 'No Topleft Hot Corner' extension — https://extensions.gnome.org/extension/118/no-topleft-hot-corner/ .", "link": "https://extensions.gnome.org/extension/744/hide-activities-button/", "shell_version_map": {"38": {"version": "12", "sha256": "0z7p6xl6axckl6f0gyqaya3l5i4d9mnzkqdylpfhywswb5idabra", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBmcm9tIHRoZSBzdGF0dXMgYmFyICh0aGUgaG90IGNvcm5lciBhbmQga2V5Ym9hcmQgc2hvcnRjdXQga2VlcHMgd29ya2luZykuIFRvIGRpc2FibGUgdG9wIGxlZnQgaG90IGNvcm5lciB1c2UgJ05vIFRvcGxlZnQgSG90IENvcm5lcicgZXh0ZW5zaW9uIFx1MjAxNCBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTgvbm8tdG9wbGVmdC1ob3QtY29ybmVyLyAuIiwKICAibmFtZSI6ICJIaWRlIEFjdGl2aXRpZXMgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiSGlkZV9BY3Rpdml0aWVzQHNoYXkuc2hheWVsLm9yZyIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "0z7p6xl6axckl6f0gyqaya3l5i4d9mnzkqdylpfhywswb5idabra", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBmcm9tIHRoZSBzdGF0dXMgYmFyICh0aGUgaG90IGNvcm5lciBhbmQga2V5Ym9hcmQgc2hvcnRjdXQga2VlcHMgd29ya2luZykuIFRvIGRpc2FibGUgdG9wIGxlZnQgaG90IGNvcm5lciB1c2UgJ05vIFRvcGxlZnQgSG90IENvcm5lcicgZXh0ZW5zaW9uIFx1MjAxNCBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTgvbm8tdG9wbGVmdC1ob3QtY29ybmVyLyAuIiwKICAibmFtZSI6ICJIaWRlIEFjdGl2aXRpZXMgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiSGlkZV9BY3Rpdml0aWVzQHNoYXkuc2hheWVsLm9yZyIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "0z7p6xl6axckl6f0gyqaya3l5i4d9mnzkqdylpfhywswb5idabra", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGVzIHRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBmcm9tIHRoZSBzdGF0dXMgYmFyICh0aGUgaG90IGNvcm5lciBhbmQga2V5Ym9hcmQgc2hvcnRjdXQga2VlcHMgd29ya2luZykuIFRvIGRpc2FibGUgdG9wIGxlZnQgaG90IGNvcm5lciB1c2UgJ05vIFRvcGxlZnQgSG90IENvcm5lcicgZXh0ZW5zaW9uIFx1MjAxNCBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTgvbm8tdG9wbGVmdC1ob3QtY29ybmVyLyAuIiwKICAibmFtZSI6ICJIaWRlIEFjdGl2aXRpZXMgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiSGlkZV9BY3Rpdml0aWVzQHNoYXkuc2hheWVsLm9yZyIsCiAgInZlcnNpb24iOiAxMgp9"}}}
 , {"uuid": "openweather-extension@jenslody.de", "name": "OpenWeather", "pname": "openweather", "description": "Weather extension to display weather information from https://openweathermap.org/ or https://darksky.net for almost all locations in the world.\nFor openweathermap.org, you can either use the extensions default-key or register at https://openweathermap.org/appid and set the appropriate switch in the preferences dialog to \"off\".\nFor Dark Sky you have to register at https://darksky.net/dev/register and get a personal API-key.\n\nSince version 29 this extensions uses coordinates to store the locations and makes the names editable to support multiple weather-providers!\nIf you update from versions prior to 29 to 29 or greater (with darksky.net - support) you have to recreate your locations.", "link": "https://extensions.gnome.org/extension/750/openweather/", "shell_version_map": {"38": {"version": "105", "sha256": "0xqz924fxy201b0d9l8xn4ykwbsvgazrbc85mbjcqk4laizyn82a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldlYXRoZXIgZXh0ZW5zaW9uIHRvIGRpc3BsYXkgd2VhdGhlciBpbmZvcm1hdGlvbiBmcm9tIGh0dHBzOi8vb3BlbndlYXRoZXJtYXAub3JnLyBvciBodHRwczovL2Rhcmtza3kubmV0IGZvciBhbG1vc3QgYWxsIGxvY2F0aW9ucyBpbiB0aGUgd29ybGQuXG5Gb3Igb3BlbndlYXRoZXJtYXAub3JnLCB5b3UgY2FuIGVpdGhlciB1c2UgdGhlIGV4dGVuc2lvbnMgZGVmYXVsdC1rZXkgb3IgcmVnaXN0ZXIgYXQgaHR0cHM6Ly9vcGVud2VhdGhlcm1hcC5vcmcvYXBwaWQgYW5kIHNldCB0aGUgYXBwcm9wcmlhdGUgc3dpdGNoIGluIHRoZSBwcmVmZXJlbmNlcyBkaWFsb2cgdG8gXCJvZmZcIi5cbkZvciBEYXJrIFNreSB5b3UgaGF2ZSB0byByZWdpc3RlciBhdCBodHRwczovL2Rhcmtza3kubmV0L2Rldi9yZWdpc3RlciBhbmQgZ2V0IGEgcGVyc29uYWwgQVBJLWtleS5cblxuU2luY2UgdmVyc2lvbiAyOSB0aGlzIGV4dGVuc2lvbnMgdXNlcyBjb29yZGluYXRlcyB0byBzdG9yZSB0aGUgbG9jYXRpb25zIGFuZCBtYWtlcyB0aGUgbmFtZXMgZWRpdGFibGUgdG8gc3VwcG9ydCBtdWx0aXBsZSB3ZWF0aGVyLXByb3ZpZGVycyFcbklmIHlvdSB1cGRhdGUgZnJvbSB2ZXJzaW9ucyBwcmlvciB0byAyOSB0byAyOSBvciBncmVhdGVyICh3aXRoIGRhcmtza3kubmV0IC0gc3VwcG9ydCkgeW91IGhhdmUgdG8gcmVjcmVhdGUgeW91ciBsb2NhdGlvbnMuIiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJPcGVuV2VhdGhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2plbnNsb2R5L2dub21lLXNoZWxsLWV4dGVuc2lvbi1vcGVud2VhdGhlciIsCiAgInV1aWQiOiAib3BlbndlYXRoZXItZXh0ZW5zaW9uQGplbnNsb2R5LmRlIiwKICAidmVyc2lvbiI6IDEwNQp9"}, "40": {"version": "106", "sha256": "0xs7xd7rfy6lb4izmgsn9lwijbm93l3cpm6avy5jh19jlpq18nkv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldlYXRoZXIgZXh0ZW5zaW9uIHRvIGRpc3BsYXkgd2VhdGhlciBpbmZvcm1hdGlvbiBmcm9tIGh0dHBzOi8vb3BlbndlYXRoZXJtYXAub3JnLyBvciBodHRwczovL2Rhcmtza3kubmV0IGZvciBhbG1vc3QgYWxsIGxvY2F0aW9ucyBpbiB0aGUgd29ybGQuXG5Gb3Igb3BlbndlYXRoZXJtYXAub3JnLCB5b3UgY2FuIGVpdGhlciB1c2UgdGhlIGV4dGVuc2lvbnMgZGVmYXVsdC1rZXkgb3IgcmVnaXN0ZXIgYXQgaHR0cHM6Ly9vcGVud2VhdGhlcm1hcC5vcmcvYXBwaWQgYW5kIHNldCB0aGUgYXBwcm9wcmlhdGUgc3dpdGNoIGluIHRoZSBwcmVmZXJlbmNlcyBkaWFsb2cgdG8gXCJvZmZcIi5cbkZvciBEYXJrIFNreSB5b3UgaGF2ZSB0byByZWdpc3RlciBhdCBodHRwczovL2Rhcmtza3kubmV0L2Rldi9yZWdpc3RlciBhbmQgZ2V0IGEgcGVyc29uYWwgQVBJLWtleS5cblxuU2luY2UgdmVyc2lvbiAyOSB0aGlzIGV4dGVuc2lvbnMgdXNlcyBjb29yZGluYXRlcyB0byBzdG9yZSB0aGUgbG9jYXRpb25zIGFuZCBtYWtlcyB0aGUgbmFtZXMgZWRpdGFibGUgdG8gc3VwcG9ydCBtdWx0aXBsZSB3ZWF0aGVyLXByb3ZpZGVycyFcbklmIHlvdSB1cGRhdGUgZnJvbSB2ZXJzaW9ucyBwcmlvciB0byAyOSB0byAyOSBvciBncmVhdGVyICh3aXRoIGRhcmtza3kubmV0IC0gc3VwcG9ydCkgeW91IGhhdmUgdG8gcmVjcmVhdGUgeW91ciBsb2NhdGlvbnMuIiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJPcGVuV2VhdGhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qZW5zbG9keS9nbm9tZS1zaGVsbC1leHRlbnNpb24tb3BlbndlYXRoZXIiLAogICJ1dWlkIjogIm9wZW53ZWF0aGVyLWV4dGVuc2lvbkBqZW5zbG9keS5kZSIsCiAgInZlcnNpb24iOiAxMDYKfQ=="}}}
-, {"uuid": "audio-output-switcher@anduchs", "name": "Audio Output Switcher", "pname": "audio-output-switcher", "description": "Adds a switch for choosing audio output to the system menu.", "link": "https://extensions.gnome.org/extension/751/audio-output-switcher/", "shell_version_map": {"38": {"version": "18", "sha256": "1f1crfhqs310bdhv15bhp16ljlcnxbif84fa18pkl00h2lhlyy9q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vYWRheGkvYXVkaW8tb3V0cHV0LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhdWRpby1vdXRwdXQtc3dpdGNoZXJAYW5kdWNocyIsCiAgInZlcnNpb24iOiAxOAp9"}, "40": {"version": "18", "sha256": "1f1crfhqs310bdhv15bhp16ljlcnxbif84fa18pkl00h2lhlyy9q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vYWRheGkvYXVkaW8tb3V0cHV0LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhdWRpby1vdXRwdXQtc3dpdGNoZXJAYW5kdWNocyIsCiAgInZlcnNpb24iOiAxOAp9"}, "41": {"version": "18", "sha256": "1f1crfhqs310bdhv15bhp16ljlcnxbif84fa18pkl00h2lhlyy9q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vYWRheGkvYXVkaW8tb3V0cHV0LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhdWRpby1vdXRwdXQtc3dpdGNoZXJAYW5kdWNocyIsCiAgInZlcnNpb24iOiAxOAp9"}}}
+, {"uuid": "audio-output-switcher@anduchs", "name": "Audio Output Switcher", "pname": "audio-output-switcher", "description": "Adds a switch for choosing audio output to the system menu.", "link": "https://extensions.gnome.org/extension/751/audio-output-switcher/", "shell_version_map": {"38": {"version": "19", "sha256": "02z1smlc0k308sr462l9pwf2gsldqdzjalbc364i4b7286qyakxc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHA6Ly9naXRodWIuY29tL2FkYXhpL2F1ZGlvLW91dHB1dC1zd2l0Y2hlciIsCiAgInV1aWQiOiAiYXVkaW8tb3V0cHV0LXN3aXRjaGVyQGFuZHVjaHMiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "40": {"version": "19", "sha256": "02z1smlc0k308sr462l9pwf2gsldqdzjalbc364i4b7286qyakxc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHA6Ly9naXRodWIuY29tL2FkYXhpL2F1ZGlvLW91dHB1dC1zd2l0Y2hlciIsCiAgInV1aWQiOiAiYXVkaW8tb3V0cHV0LXN3aXRjaGVyQGFuZHVjaHMiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "41": {"version": "19", "sha256": "02z1smlc0k308sr462l9pwf2gsldqdzjalbc364i4b7286qyakxc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHA6Ly9naXRodWIuY29tL2FkYXhpL2F1ZGlvLW91dHB1dC1zd2l0Y2hlciIsCiAgInV1aWQiOiAiYXVkaW8tb3V0cHV0LXN3aXRjaGVyQGFuZHVjaHMiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "42": {"version": "19", "sha256": "02z1smlc0k308sr462l9pwf2gsldqdzjalbc364i4b7286qyakxc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBzd2l0Y2ggZm9yIGNob29zaW5nIGF1ZGlvIG91dHB1dCB0byB0aGUgc3lzdGVtIG1lbnUuIiwKICAibmFtZSI6ICJBdWRpbyBPdXRwdXQgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHA6Ly9naXRodWIuY29tL2FkYXhpL2F1ZGlvLW91dHB1dC1zd2l0Y2hlciIsCiAgInV1aWQiOiAiYXVkaW8tb3V0cHV0LXN3aXRjaGVyQGFuZHVjaHMiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}}}
 , {"uuid": "hibernate-status@dromi", "name": "Hibernate Status Button", "pname": "hibernate-status-button", "description": "Adds a Hibernate button in Status menu. Using Alt modifier, you can also select Hybrid Sleep instead.", "link": "https://extensions.gnome.org/extension/755/hibernate-status-button/", "shell_version_map": {"38": {"version": "27", "sha256": "0yqzg2nz040vsv0ilwkjkza03qxns18gq4055gq0c3k051jy6d4v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBIaWJlcm5hdGUgYnV0dG9uIGluIFN0YXR1cyBtZW51LiBVc2luZyBBbHQgbW9kaWZpZXIsIHlvdSBjYW4gYWxzbyBzZWxlY3QgSHlicmlkIFNsZWVwIGluc3RlYWQuIiwKICAibmFtZSI6ICJIaWJlcm5hdGUgU3RhdHVzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FyZWxhbmdlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1oaWJlcm5hdGUtc3RhdHVzIiwKICAidXVpZCI6ICJoaWJlcm5hdGUtc3RhdHVzQGRyb21pIiwKICAidmVyc2lvbiI6IDI3Cn0="}, "40": {"version": "32", "sha256": "1jx687q54n14vyn8mmlzq6yrhg5ksda3cph26wzzdhd7nz940rv7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBIaWJlcm5hdGUgYnV0dG9uIGluIFN0YXR1cyBtZW51LiBVc2luZyBBbHQgbW9kaWZpZXIsIHlvdSBjYW4gYWxzbyBzZWxlY3QgSHlicmlkIFNsZWVwIGluc3RlYWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlLXN0YXR1cy1idXR0b24iLAogICJuYW1lIjogIkhpYmVybmF0ZSBTdGF0dXMgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hcmVsYW5nZS9nbm9tZS1zaGVsbC1leHRlbnNpb24taGliZXJuYXRlLXN0YXR1cyIsCiAgInV1aWQiOiAiaGliZXJuYXRlLXN0YXR1c0Bkcm9taSIsCiAgInZlcnNpb24iOiAzMgp9"}, "41": {"version": "32", "sha256": "1jx687q54n14vyn8mmlzq6yrhg5ksda3cph26wzzdhd7nz940rv7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBIaWJlcm5hdGUgYnV0dG9uIGluIFN0YXR1cyBtZW51LiBVc2luZyBBbHQgbW9kaWZpZXIsIHlvdSBjYW4gYWxzbyBzZWxlY3QgSHlicmlkIFNsZWVwIGluc3RlYWQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlLXN0YXR1cy1idXR0b24iLAogICJuYW1lIjogIkhpYmVybmF0ZSBTdGF0dXMgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hcmVsYW5nZS9nbm9tZS1zaGVsbC1leHRlbnNpb24taGliZXJuYXRlLXN0YXR1cyIsCiAgInV1aWQiOiAiaGliZXJuYXRlLXN0YXR1c0Bkcm9taSIsCiAgInZlcnNpb24iOiAzMgp9"}}}
 , {"uuid": "minimizeall@scharlessantos.org", "name": "Minimize All", "pname": "minimize-all", "description": "Minimize all windows in current workspace", "link": "https://extensions.gnome.org/extension/760/minimize-all/", "shell_version_map": {"38": {"version": "20", "sha256": "15v6h4wcznrylip57spjdkz0jk6y7hcp47607pj0yx5dmxjaws86", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIGFsbCB3aW5kb3dzIGluIGN1cnJlbnQgd29ya3NwYWNlIiwKICAibmFtZSI6ICJNaW5pbWl6ZSBBbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vc2NoYXJsZXNzYW50b3MvbWluaW1pemVhbGwiLAogICJ1dWlkIjogIm1pbmltaXplYWxsQHNjaGFybGVzc2FudG9zLm9yZyIsCiAgInZlcnNpb24iOiAyMAp9"}, "40": {"version": "20", "sha256": "15v6h4wcznrylip57spjdkz0jk6y7hcp47607pj0yx5dmxjaws86", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIGFsbCB3aW5kb3dzIGluIGN1cnJlbnQgd29ya3NwYWNlIiwKICAibmFtZSI6ICJNaW5pbWl6ZSBBbGwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vc2NoYXJsZXNzYW50b3MvbWluaW1pemVhbGwiLAogICJ1dWlkIjogIm1pbmltaXplYWxsQHNjaGFybGVzc2FudG9zLm9yZyIsCiAgInZlcnNpb24iOiAyMAp9"}}}
 , {"uuid": "fq@megh", "name": "Force Quit", "pname": "force-quit", "description": "Adds a force quit button.\nOn accidental click, right click or press [ESC] to undo.\nCustomize position by tweaking line 50 of extension.js\n\nUPDATE: No longer depends on xkill and should work on Wayland", "link": "https://extensions.gnome.org/extension/770/force-quit/", "shell_version_map": {"38": {"version": "18", "sha256": "07ygqdzgq8q8bmsrpy4wbwgm8n5syhk0gw2pzn62ismaxkr7fqi3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBmb3JjZSBxdWl0IGJ1dHRvbi5cbk9uIGFjY2lkZW50YWwgY2xpY2ssIHJpZ2h0IGNsaWNrIG9yIHByZXNzIFtFU0NdIHRvIHVuZG8uXG5DdXN0b21pemUgcG9zaXRpb24gYnkgdHdlYWtpbmcgbGluZSA1MCBvZiBleHRlbnNpb24uanNcblxuVVBEQVRFOiBObyBsb25nZXIgZGVwZW5kcyBvbiB4a2lsbCBhbmQgc2hvdWxkIHdvcmsgb24gV2F5bGFuZCIsCiAgIm5hbWUiOiAiRm9yY2UgUXVpdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tZWdocHJraC9mb3JjZS1xdWl0LyIsCiAgInV1aWQiOiAiZnFAbWVnaCIsCiAgInZlcnNpb24iOiAxOAp9"}, "40": {"version": "21", "sha256": "0gx6vxzg8kqlqa2z5i9dazwy2bd1yfbg8ms7g84ri9hn1064l8g2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBmb3JjZSBxdWl0IGJ1dHRvbi5cbk9uIGFjY2lkZW50YWwgY2xpY2ssIHJpZ2h0IGNsaWNrIG9yIHByZXNzIFtFU0NdIHRvIHVuZG8uXG5DdXN0b21pemUgcG9zaXRpb24gYnkgdHdlYWtpbmcgbGluZSA1MCBvZiBleHRlbnNpb24uanNcblxuVVBEQVRFOiBObyBsb25nZXIgZGVwZW5kcyBvbiB4a2lsbCBhbmQgc2hvdWxkIHdvcmsgb24gV2F5bGFuZCIsCiAgIm5hbWUiOiAiRm9yY2UgUXVpdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWVnaHBya2gvZm9yY2UtcXVpdC8iLAogICJ1dWlkIjogImZxQG1lZ2giLAogICJ2ZXJzaW9uIjogMjEKfQ=="}, "41": {"version": "21", "sha256": "0gx6vxzg8kqlqa2z5i9dazwy2bd1yfbg8ms7g84ri9hn1064l8g2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBmb3JjZSBxdWl0IGJ1dHRvbi5cbk9uIGFjY2lkZW50YWwgY2xpY2ssIHJpZ2h0IGNsaWNrIG9yIHByZXNzIFtFU0NdIHRvIHVuZG8uXG5DdXN0b21pemUgcG9zaXRpb24gYnkgdHdlYWtpbmcgbGluZSA1MCBvZiBleHRlbnNpb24uanNcblxuVVBEQVRFOiBObyBsb25nZXIgZGVwZW5kcyBvbiB4a2lsbCBhbmQgc2hvdWxkIHdvcmsgb24gV2F5bGFuZCIsCiAgIm5hbWUiOiAiRm9yY2UgUXVpdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWVnaHBya2gvZm9yY2UtcXVpdC8iLAogICJ1dWlkIjogImZxQG1lZ2giLAogICJ2ZXJzaW9uIjogMjEKfQ=="}}}
@@ -66,7 +66,7 @@
 , {"uuid": "ShutdownTimer@neumann", "name": "ShutdownTimer", "pname": "shutdowntimer", "description": "Shutdown/suspend the device after a specific time.\n\nMaximum timer value und default slider position can be modified in the settings.", "link": "https://extensions.gnome.org/extension/792/shutdowntimer/", "shell_version_map": {"38": {"version": "34", "sha256": "1glzjcdv90w5mx0xqj57i0s3qgazr5dcdcin1kwb5mqvc362dd68", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3N1c3BlbmQgdGhlIGRldmljZSBhZnRlciBhIHNwZWNpZmljIHRpbWUuXG5cbk1heGltdW0gdGltZXIgdmFsdWUgdW5kIGRlZmF1bHQgc2xpZGVyIHBvc2l0aW9uIGNhbiBiZSBtb2RpZmllZCBpbiB0aGUgc2V0dGluZ3MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiU2h1dGRvd25UaW1lciIsCiAgIm5hbWUiOiAiU2h1dGRvd25UaW1lciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV0ZG93bnRpbWVyLW5ldW1hbm4iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25ldW1hbm4tZC9TaHV0ZG93blRpbWVyIiwKICAidXVpZCI6ICJTaHV0ZG93blRpbWVyQG5ldW1hbm4iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}, "40": {"version": "34", "sha256": "1glzjcdv90w5mx0xqj57i0s3qgazr5dcdcin1kwb5mqvc362dd68", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3N1c3BlbmQgdGhlIGRldmljZSBhZnRlciBhIHNwZWNpZmljIHRpbWUuXG5cbk1heGltdW0gdGltZXIgdmFsdWUgdW5kIGRlZmF1bHQgc2xpZGVyIHBvc2l0aW9uIGNhbiBiZSBtb2RpZmllZCBpbiB0aGUgc2V0dGluZ3MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiU2h1dGRvd25UaW1lciIsCiAgIm5hbWUiOiAiU2h1dGRvd25UaW1lciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV0ZG93bnRpbWVyLW5ldW1hbm4iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25ldW1hbm4tZC9TaHV0ZG93blRpbWVyIiwKICAidXVpZCI6ICJTaHV0ZG93blRpbWVyQG5ldW1hbm4iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}, "41": {"version": "34", "sha256": "1glzjcdv90w5mx0xqj57i0s3qgazr5dcdcin1kwb5mqvc362dd68", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3N1c3BlbmQgdGhlIGRldmljZSBhZnRlciBhIHNwZWNpZmljIHRpbWUuXG5cbk1heGltdW0gdGltZXIgdmFsdWUgdW5kIGRlZmF1bHQgc2xpZGVyIHBvc2l0aW9uIGNhbiBiZSBtb2RpZmllZCBpbiB0aGUgc2V0dGluZ3MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiU2h1dGRvd25UaW1lciIsCiAgIm5hbWUiOiAiU2h1dGRvd25UaW1lciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV0ZG93bnRpbWVyLW5ldW1hbm4iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25ldW1hbm4tZC9TaHV0ZG93blRpbWVyIiwKICAidXVpZCI6ICJTaHV0ZG93blRpbWVyQG5ldW1hbm4iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}}}
 , {"uuid": "hide-dash@xenatt.github.com", "name": "Hide Dash X", "pname": "hide-dash", "description": "Hide the dash from the activities overview.", "link": "https://extensions.gnome.org/extension/805/hide-dash/", "shell_version_map": {"38": {"version": "10", "sha256": "059cy18awzv9qyn803zjyxiznacnf6pai8px2mb9mrbyf98153xz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdGhlIGRhc2ggZnJvbSB0aGUgYWN0aXZpdGllcyBvdmVydmlldy4iLAogICJuYW1lIjogIkhpZGUgRGFzaCBYIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInphY2JhcnRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0VkZW5ob2Zlci9NaW5pbWFsaXNtLUdub21lLVNoZWxsIiwKICAidXVpZCI6ICJoaWRlLWRhc2hAeGVuYXR0LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTAKfQ=="}}}
 , {"uuid": "hide-workspace@xenatt.github.com", "name": "Hide Workspace Thumbnails", "pname": "hide-workspace-thumbnails", "description": "Hide workspace thumbnails from the overview. But don't worry they are still present and one can switch between them like usual with e.g. shortcuts..", "link": "https://extensions.gnome.org/extension/808/hide-workspace-thumbnails/", "shell_version_map": {"40": {"version": "16", "sha256": "0443zyqr2hwq5fj3h8zch8iav83xzj4bqn1k6qd5f2z46kvzj611", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgd29ya3NwYWNlIHRodW1ibmFpbHMgZnJvbSB0aGUgb3ZlcnZpZXcuIEJ1dCBkb24ndCB3b3JyeSB0aGV5IGFyZSBzdGlsbCBwcmVzZW50IGFuZCBvbmUgY2FuIHN3aXRjaCBiZXR3ZWVuIHRoZW0gbGlrZSB1c3VhbCB3aXRoIGUuZy4gc2hvcnRjdXRzLi4iLAogICJuYW1lIjogIkhpZGUgV29ya3NwYWNlIFRodW1ibmFpbHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTAiLAogICAgIjMuMTIiLAogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRWRlbmhvZmVyL01pbmltYWxpc20tR25vbWUtU2hlbGwiLAogICJ1dWlkIjogImhpZGUtd29ya3NwYWNlQHhlbmF0dC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE2Cn0="}}}
-, {"uuid": "keyman@dpoetzsch.github.com", "name": "KeyMan", "pname": "keyman", "description": "Access passwords from the gnome keyring in a convenient way:\nSimply search for your password and copy it to clipboad by clicking it. After a certain amount of time it will be removed automatically (default is 5 seconds). As this only works if the keyrings are unlocked, this extension also provides easy access to lock/unlock keyrings.", "link": "https://extensions.gnome.org/extension/819/keyman/", "shell_version_map": {"40": {"version": "20", "sha256": "1wd76bdnzs7mxwwyvffw0fm8r8chsblz3dinpwiyc5d5kmlnyv5v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFjY2VzcyBwYXNzd29yZHMgZnJvbSB0aGUgZ25vbWUga2V5cmluZyBpbiBhIGNvbnZlbmllbnQgd2F5OlxuU2ltcGx5IHNlYXJjaCBmb3IgeW91ciBwYXNzd29yZCBhbmQgY29weSBpdCB0byBjbGlwYm9hZCBieSBjbGlja2luZyBpdC4gQWZ0ZXIgYSBjZXJ0YWluIGFtb3VudCBvZiB0aW1lIGl0IHdpbGwgYmUgcmVtb3ZlZCBhdXRvbWF0aWNhbGx5IChkZWZhdWx0IGlzIDUgc2Vjb25kcykuIEFzIHRoaXMgb25seSB3b3JrcyBpZiB0aGUga2V5cmluZ3MgYXJlIHVubG9ja2VkLCB0aGlzIGV4dGVuc2lvbiBhbHNvIHByb3ZpZGVzIGVhc3kgYWNjZXNzIHRvIGxvY2svdW5sb2NrIGtleXJpbmdzLiIsCiAgIm5hbWUiOiAiS2V5TWFuIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJrZXltYW5AcG9laGUuZGUiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmtleW1hbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kcG9ldHpzY2gva2V5bWFuIiwKICAidXVpZCI6ICJrZXltYW5AZHBvZXR6c2NoLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjAKfQ=="}}}
+, {"uuid": "keyman@dpoetzsch.github.com", "name": "KeyMan", "pname": "keyman", "description": "Access passwords from the gnome keyring in a convenient way:\nSimply search for your password and copy it to clipboad by clicking it. After a certain amount of time it will be removed automatically (default is 5 seconds). As this only works if the keyrings are unlocked, this extension also provides easy access to lock/unlock keyrings.", "link": "https://extensions.gnome.org/extension/819/keyman/", "shell_version_map": {"40": {"version": "20", "sha256": "1wd76bdnzs7mxwwyvffw0fm8r8chsblz3dinpwiyc5d5kmlnyv5v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFjY2VzcyBwYXNzd29yZHMgZnJvbSB0aGUgZ25vbWUga2V5cmluZyBpbiBhIGNvbnZlbmllbnQgd2F5OlxuU2ltcGx5IHNlYXJjaCBmb3IgeW91ciBwYXNzd29yZCBhbmQgY29weSBpdCB0byBjbGlwYm9hZCBieSBjbGlja2luZyBpdC4gQWZ0ZXIgYSBjZXJ0YWluIGFtb3VudCBvZiB0aW1lIGl0IHdpbGwgYmUgcmVtb3ZlZCBhdXRvbWF0aWNhbGx5IChkZWZhdWx0IGlzIDUgc2Vjb25kcykuIEFzIHRoaXMgb25seSB3b3JrcyBpZiB0aGUga2V5cmluZ3MgYXJlIHVubG9ja2VkLCB0aGlzIGV4dGVuc2lvbiBhbHNvIHByb3ZpZGVzIGVhc3kgYWNjZXNzIHRvIGxvY2svdW5sb2NrIGtleXJpbmdzLiIsCiAgIm5hbWUiOiAiS2V5TWFuIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJrZXltYW5AcG9laGUuZGUiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmtleW1hbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kcG9ldHpzY2gva2V5bWFuIiwKICAidXVpZCI6ICJrZXltYW5AZHBvZXR6c2NoLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjAKfQ=="}, "41": {"version": "22", "sha256": "0ijqdsmz6mid30cav7is9ypl0862y2d877zagr75cnq3jshplfbj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFjY2VzcyBwYXNzd29yZHMgZnJvbSB0aGUgZ25vbWUga2V5cmluZyBpbiBhIGNvbnZlbmllbnQgd2F5OlxuU2ltcGx5IHNlYXJjaCBmb3IgeW91ciBwYXNzd29yZCBhbmQgY29weSBpdCB0byBjbGlwYm9hZCBieSBjbGlja2luZyBpdC4gQWZ0ZXIgYSBjZXJ0YWluIGFtb3VudCBvZiB0aW1lIGl0IHdpbGwgYmUgcmVtb3ZlZCBhdXRvbWF0aWNhbGx5IChkZWZhdWx0IGlzIDUgc2Vjb25kcykuIEFzIHRoaXMgb25seSB3b3JrcyBpZiB0aGUga2V5cmluZ3MgYXJlIHVubG9ja2VkLCB0aGlzIGV4dGVuc2lvbiBhbHNvIHByb3ZpZGVzIGVhc3kgYWNjZXNzIHRvIGxvY2svdW5sb2NrIGtleXJpbmdzLiIsCiAgIm5hbWUiOiAiS2V5TWFuIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJrZXltYW5AcG9laGUuZGUiCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmtleW1hbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kcG9ldHpzY2gva2V5bWFuIiwKICAidXVpZCI6ICJrZXltYW5AZHBvZXR6c2NoLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}}}
 , {"uuid": "time_tracker_jsnjack@gmail.com", "name": "Time Tracker", "pname": "time-tracker", "description": "Helps track time", "link": "https://extensions.gnome.org/extension/823/time-tracker/", "shell_version_map": {"40": {"version": "23", "sha256": "1q1jh3s6k6pmjssjmhzajmcr1qxdz4854fyfja0vbwcvxd6a8ff2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhlbHBzIHRyYWNrIHRpbWUiLAogICJuYW1lIjogIlRpbWUgVHJhY2tlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50aW1lLXRyYWNrZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2pzbmphY2svdGltZS10cmFja2VyLyIsCiAgInV1aWQiOiAidGltZV90cmFja2VyX2pzbmphY2tAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDIzCn0="}, "41": {"version": "23", "sha256": "1q1jh3s6k6pmjssjmhzajmcr1qxdz4854fyfja0vbwcvxd6a8ff2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhlbHBzIHRyYWNrIHRpbWUiLAogICJuYW1lIjogIlRpbWUgVHJhY2tlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50aW1lLXRyYWNrZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2pzbmphY2svdGltZS10cmFja2VyLyIsCiAgInV1aWQiOiAidGltZV90cmFja2VyX2pzbmphY2tAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDIzCn0="}}}
 , {"uuid": "pwcalc@thilomaurer.de", "name": "Password Calculator", "pname": "password-calculator", "description": "This extension calculates strong passwords for each alias from your single secret. No need to remember dozens of passwords any longer. No need for a password manager any longer. Full freedom in choosing aliases and secret, e.g. alias: \"username@google.com#2014\", secret: \"saFe⚿in漢字\". Recent aliases are kept in a easily accessible drop-down. You may choose between HMAC_SHA1 and SHA1. The formula is as simple as \"[secret][alias]\" → SHA1 → BASE64 ", "link": "https://extensions.gnome.org/extension/825/password-calculator/", "shell_version_map": {"40": {"version": "24", "sha256": "1kcapf1hm7zibjjpfq1qas76xvgvf77snyxm0wy8f35h8g42wc20", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGNhbGN1bGF0ZXMgc3Ryb25nIHBhc3N3b3JkcyBmb3IgZWFjaCBhbGlhcyBmcm9tIHlvdXIgc2luZ2xlIHNlY3JldC4gTm8gbmVlZCB0byByZW1lbWJlciBkb3plbnMgb2YgcGFzc3dvcmRzIGFueSBsb25nZXIuIE5vIG5lZWQgZm9yIGEgcGFzc3dvcmQgbWFuYWdlciBhbnkgbG9uZ2VyLiBGdWxsIGZyZWVkb20gaW4gY2hvb3NpbmcgYWxpYXNlcyBhbmQgc2VjcmV0LCBlLmcuIGFsaWFzOiBcInVzZXJuYW1lQGdvb2dsZS5jb20jMjAxNFwiLCBzZWNyZXQ6IFwic2FGZVx1MjZiZmluXHU2ZjIyXHU1YjU3XCIuIFJlY2VudCBhbGlhc2VzIGFyZSBrZXB0IGluIGEgZWFzaWx5IGFjY2Vzc2libGUgZHJvcC1kb3duLiBZb3UgbWF5IGNob29zZSBiZXR3ZWVuIEhNQUNfU0hBMSBhbmQgU0hBMS4gVGhlIGZvcm11bGEgaXMgYXMgc2ltcGxlIGFzIFwiW3NlY3JldF1bYWxpYXNdXCIgXHUyMTkyIFNIQTEgXHUyMTkyIEJBU0U2NCAiLAogICJuYW1lIjogIlBhc3N3b3JkIENhbGN1bGF0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMucHdjYWxjIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RoaWxvbWF1cmVyL3B3Y2FsYyIsCiAgInV1aWQiOiAicHdjYWxjQHRoaWxvbWF1cmVyLmRlIiwKICAidmVyc2lvbiI6IDI0Cn0="}}}
 , {"uuid": "SwitchFocusType@romano.rgtti.com", "name": "Switch Focus Type", "pname": "switch-focus-type", "description": "Toggle between focus-follow-mouse and click-to-focus mode", "link": "https://extensions.gnome.org/extension/827/switch-focus-type/", "shell_version_map": {"38": {"version": "7", "sha256": "0fza40yd5ba53725pm82w43r368zams0kci59cddsh2nf8iqkk2y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSBiZXR3ZWVuIGZvY3VzLWZvbGxvdy1tb3VzZSBhbmQgY2xpY2stdG8tZm9jdXMgbW9kZSIsCiAgIm5hbWUiOiAiU3dpdGNoIEZvY3VzIFR5cGUiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIlJvbWFubyBHaWFubmV0dGkgPHJvbWFuby5naWFubmV0dGlAZ21haWwuY29tPiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUm1hbm8vZ3NlLXN3aXRjaC1mb2N1cy1tb2RlIiwKICAidXVpZCI6ICJTd2l0Y2hGb2N1c1R5cGVAcm9tYW5vLnJndHRpLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "0fza40yd5ba53725pm82w43r368zams0kci59cddsh2nf8iqkk2y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSBiZXR3ZWVuIGZvY3VzLWZvbGxvdy1tb3VzZSBhbmQgY2xpY2stdG8tZm9jdXMgbW9kZSIsCiAgIm5hbWUiOiAiU3dpdGNoIEZvY3VzIFR5cGUiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIlJvbWFubyBHaWFubmV0dGkgPHJvbWFuby5naWFubmV0dGlAZ21haWwuY29tPiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUm1hbm8vZ3NlLXN3aXRjaC1mb2N1cy1tb2RlIiwKICAidXVpZCI6ICJTd2l0Y2hGb2N1c1R5cGVAcm9tYW5vLnJndHRpLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "0fza40yd5ba53725pm82w43r368zams0kci59cddsh2nf8iqkk2y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSBiZXR3ZWVuIGZvY3VzLWZvbGxvdy1tb3VzZSBhbmQgY2xpY2stdG8tZm9jdXMgbW9kZSIsCiAgIm5hbWUiOiAiU3dpdGNoIEZvY3VzIFR5cGUiLAogICJvcmlnaW5hbC1hdXRob3JzIjogIlJvbWFubyBHaWFubmV0dGkgPHJvbWFuby5naWFubmV0dGlAZ21haWwuY29tPiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUm1hbm8vZ3NlLXN3aXRjaC1mb2N1cy1tb2RlIiwKICAidXVpZCI6ICJTd2l0Y2hGb2N1c1R5cGVAcm9tYW5vLnJndHRpLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}}}
@@ -74,7 +74,7 @@
 , {"uuid": "freon@UshakovVasilii_Github.yahoo.com", "name": "Freon", "pname": "freon", "description": "Shows CPU temperature, disk temperature, video card temperature (NVIDIA/Catalyst/Bumblebee&NVIDIA), voltage and fan RPM (forked from xtranophilist/gnome-shell-extension-sensors)", "link": "https://extensions.gnome.org/extension/841/freon/", "shell_version_map": {"38": {"version": "43", "sha256": "06jj01flj6iyx93aqz8ipzijnrammp6xqpgqwxfh0pf2clr6nwrq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIENQVSB0ZW1wZXJhdHVyZSwgZGlzayB0ZW1wZXJhdHVyZSwgdmlkZW8gY2FyZCB0ZW1wZXJhdHVyZSAoTlZJRElBL0NhdGFseXN0L0J1bWJsZWJlZSZOVklESUEpLCB2b2x0YWdlIGFuZCBmYW4gUlBNIChmb3JrZWQgZnJvbSB4dHJhbm9waGlsaXN0L2dub21lLXNoZWxsLWV4dGVuc2lvbi1zZW5zb3JzKSIsCiAgImdldHRleHQtZG9tYWluIjogImZyZW9uIiwKICAibmFtZSI6ICJGcmVvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mcmVvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1VzaGFrb3ZWYXNpbGlpL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mcmVvbiIsCiAgInV1aWQiOiAiZnJlb25AVXNoYWtvdlZhc2lsaWlfR2l0aHViLnlhaG9vLmNvbSIsCiAgInZlcnNpb24iOiA0Mwp9"}, "40": {"version": "45", "sha256": "129gpr57qj8c8180hzzszvkvylgg1i6ql4hwf45v49s3q17lrilh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIENQVSB0ZW1wZXJhdHVyZSwgZGlzayB0ZW1wZXJhdHVyZSwgdmlkZW8gY2FyZCB0ZW1wZXJhdHVyZSAoTlZJRElBL0NhdGFseXN0L0J1bWJsZWJlZSZOVklESUEpLCB2b2x0YWdlIGFuZCBmYW4gUlBNIChmb3JrZWQgZnJvbSB4dHJhbm9waGlsaXN0L2dub21lLXNoZWxsLWV4dGVuc2lvbi1zZW5zb3JzKSIsCiAgImdldHRleHQtZG9tYWluIjogImZyZW9uIiwKICAibmFtZSI6ICJGcmVvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mcmVvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vVXNoYWtvdlZhc2lsaWkvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWZyZW9uIiwKICAidXVpZCI6ICJmcmVvbkBVc2hha292VmFzaWxpaV9HaXRodWIueWFob28uY29tIiwKICAidmVyc2lvbiI6IDQ1Cn0="}, "41": {"version": "45", "sha256": "129gpr57qj8c8180hzzszvkvylgg1i6ql4hwf45v49s3q17lrilh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIENQVSB0ZW1wZXJhdHVyZSwgZGlzayB0ZW1wZXJhdHVyZSwgdmlkZW8gY2FyZCB0ZW1wZXJhdHVyZSAoTlZJRElBL0NhdGFseXN0L0J1bWJsZWJlZSZOVklESUEpLCB2b2x0YWdlIGFuZCBmYW4gUlBNIChmb3JrZWQgZnJvbSB4dHJhbm9waGlsaXN0L2dub21lLXNoZWxsLWV4dGVuc2lvbi1zZW5zb3JzKSIsCiAgImdldHRleHQtZG9tYWluIjogImZyZW9uIiwKICAibmFtZSI6ICJGcmVvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mcmVvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vVXNoYWtvdlZhc2lsaWkvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWZyZW9uIiwKICAidXVpZCI6ICJmcmVvbkBVc2hha292VmFzaWxpaV9HaXRodWIueWFob28uY29tIiwKICAidmVyc2lvbiI6IDQ1Cn0="}}}
 , {"uuid": "shell-volume-mixer@derhofbauer.at", "name": "Volume Mixer", "pname": "volume-mixer", "description": "Applet allowing separate configuration of PulseAudio mixers.\n\nShell Volume Mixer is an extension for GNOME Shell allowing separate configuration of PulseAudio devices and output switches. It features a profile switcher to quickly switch between pinned profiles and devices.\n\nMiddle mouse click on a slider mutes the selected stream.\n\nPlease file bugs and feature requests on the GitHub page.", "link": "https://extensions.gnome.org/extension/858/volume-mixer/", "shell_version_map": {"38": {"version": "39", "sha256": "1cnyapjvqri5k5m4nbcmbcx97b4akwv32h7ddav2ipahqh1lqqzj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxldCBhbGxvd2luZyBzZXBhcmF0ZSBjb25maWd1cmF0aW9uIG9mIFB1bHNlQXVkaW8gbWl4ZXJzLlxuXG5TaGVsbCBWb2x1bWUgTWl4ZXIgaXMgYW4gZXh0ZW5zaW9uIGZvciBHTk9NRSBTaGVsbCBhbGxvd2luZyBzZXBhcmF0ZSBjb25maWd1cmF0aW9uIG9mIFB1bHNlQXVkaW8gZGV2aWNlcyBhbmQgb3V0cHV0IHN3aXRjaGVzLiBJdCBmZWF0dXJlcyBhIHByb2ZpbGUgc3dpdGNoZXIgdG8gcXVpY2tseSBzd2l0Y2ggYmV0d2VlbiBwaW5uZWQgcHJvZmlsZXMgYW5kIGRldmljZXMuXG5cbk1pZGRsZSBtb3VzZSBjbGljayBvbiBhIHNsaWRlciBtdXRlcyB0aGUgc2VsZWN0ZWQgc3RyZWFtLlxuXG5QbGVhc2UgZmlsZSBidWdzIGFuZCBmZWF0dXJlIHJlcXVlc3RzIG9uIHRoZSBHaXRIdWIgcGFnZS4iLAogICJuYW1lIjogIlZvbHVtZSBNaXhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FsZWhvL2dub21lLXNoZWxsLXZvbHVtZS1taXhlciIsCiAgInV1aWQiOiAic2hlbGwtdm9sdW1lLW1peGVyQGRlcmhvZmJhdWVyLmF0IiwKICAidmVyc2lvbiI6IDM5Cn0="}, "40": {"version": "40", "sha256": "1s4jzq1iy006k3m0r28qiayb46135y71qqv583k1sn9sppda5b4d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxldCBhbGxvd2luZyBzZXBhcmF0ZSBjb25maWd1cmF0aW9uIG9mIFB1bHNlQXVkaW8gbWl4ZXJzLlxuXG5TaGVsbCBWb2x1bWUgTWl4ZXIgaXMgYW4gZXh0ZW5zaW9uIGZvciBHTk9NRSBTaGVsbCBhbGxvd2luZyBzZXBhcmF0ZSBjb25maWd1cmF0aW9uIG9mIFB1bHNlQXVkaW8gZGV2aWNlcyBhbmQgb3V0cHV0IHN3aXRjaGVzLiBJdCBmZWF0dXJlcyBhIHByb2ZpbGUgc3dpdGNoZXIgdG8gcXVpY2tseSBzd2l0Y2ggYmV0d2VlbiBwaW5uZWQgcHJvZmlsZXMgYW5kIGRldmljZXMuXG5cbk1pZGRsZSBtb3VzZSBjbGljayBvbiBhIHNsaWRlciBtdXRlcyB0aGUgc2VsZWN0ZWQgc3RyZWFtLlxuXG5QbGVhc2UgZmlsZSBidWdzIGFuZCBmZWF0dXJlIHJlcXVlc3RzIG9uIHRoZSBHaXRIdWIgcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zLXNoZWxsLXZvbHVtZS1taXhlciIsCiAgIm5hbWUiOiAiVm9sdW1lIE1peGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNoZWxsLXZvbHVtZS1taXhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGVoby9nbm9tZS1zaGVsbC12b2x1bWUtbWl4ZXIiLAogICJ1dWlkIjogInNoZWxsLXZvbHVtZS1taXhlckBkZXJob2ZiYXVlci5hdCIsCiAgInZlcnNpb24iOiA0MAp9"}, "41": {"version": "44", "sha256": "0pbw1w3y9clq1pmxkblsp85kw5h8znhjf223bplqhjb74g89v80z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxldCBhbGxvd2luZyBzZXBhcmF0ZSBjb25maWd1cmF0aW9uIG9mIFB1bHNlQXVkaW8gbWl4ZXJzLlxuXG5TaGVsbCBWb2x1bWUgTWl4ZXIgaXMgYW4gZXh0ZW5zaW9uIGZvciBHTk9NRSBTaGVsbCBhbGxvd2luZyBzZXBhcmF0ZSBjb25maWd1cmF0aW9uIG9mIFB1bHNlQXVkaW8gZGV2aWNlcyBhbmQgb3V0cHV0IHN3aXRjaGVzLiBJdCBmZWF0dXJlcyBhIHByb2ZpbGUgc3dpdGNoZXIgdG8gcXVpY2tseSBzd2l0Y2ggYmV0d2VlbiBwaW5uZWQgcHJvZmlsZXMgYW5kIGRldmljZXMuXG5cbk1pZGRsZSBtb3VzZSBjbGljayBvbiBhIHNsaWRlciBtdXRlcyB0aGUgc2VsZWN0ZWQgc3RyZWFtLlxuXG5QbGVhc2UgZmlsZSBidWdzIGFuZCBmZWF0dXJlIHJlcXVlc3RzIG9uIHRoZSBHaXRIdWIgcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zLXNoZWxsLXZvbHVtZS1taXhlciIsCiAgIm5hbWUiOiAiVm9sdW1lIE1peGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNoZWxsLXZvbHVtZS1taXhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGVoby9nbm9tZS1zaGVsbC12b2x1bWUtbWl4ZXIiLAogICJ1dWlkIjogInNoZWxsLXZvbHVtZS1taXhlckBkZXJob2ZiYXVlci5hdCIsCiAgInZlcnNpb24iOiA0NAp9"}}}
 , {"uuid": "FRC@jcdubacq.dubacq.fr", "name": "French Republican Calendar", "pname": "french-republican-calendar", "description": "Displays the French Republican Calendar in the top panel", "link": "https://extensions.gnome.org/extension/874/french-republican-calendar/", "shell_version_map": {"38": {"version": "11", "sha256": "13mypljavdmy6rj00cphnkjiimdxw1hzj7mhzlq8m99x5h8d9ahg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHRoZSBGcmVuY2ggUmVwdWJsaWNhbiBDYWxlbmRhciBpbiB0aGUgdG9wIHBhbmVsIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiRlJDIiwKICAibmFtZSI6ICJGcmVuY2ggUmVwdWJsaWNhbiBDYWxlbmRhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOC4xIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJGUkNAamNkdWJhY3EuZHViYWNxLmZyIiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "11", "sha256": "13mypljavdmy6rj00cphnkjiimdxw1hzj7mhzlq8m99x5h8d9ahg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHRoZSBGcmVuY2ggUmVwdWJsaWNhbiBDYWxlbmRhciBpbiB0aGUgdG9wIHBhbmVsIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiRlJDIiwKICAibmFtZSI6ICJGcmVuY2ggUmVwdWJsaWNhbiBDYWxlbmRhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOC4xIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJGUkNAamNkdWJhY3EuZHViYWNxLmZyIiwKICAidmVyc2lvbiI6IDExCn0="}}}
-, {"uuid": "screenshot-window-sizer@gnome-shell-extensions.gcampax.github.com", "name": "Screenshot Window Sizer", "pname": "screenshot-window-sizer", "description": "Resize windows for GNOME Software screenshots", "link": "https://extensions.gnome.org/extension/881/screenshot-window-sizer/", "shell_version_map": {"38": {"version": "22", "sha256": "18b8f2agv397pdyaicx2qirqfnm0swbnspw43kb2hr0jn8lkzz1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlc2l6ZSB3aW5kb3dzIGZvciBHTk9NRSBTb2Z0d2FyZSBzY3JlZW5zaG90cyIsCiAgImV4dGVuc2lvbi1pZCI6ICJzY3JlZW5zaG90LXdpbmRvdy1zaXplciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlNjcmVlbnNob3QgV2luZG93IFNpemVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNjcmVlbnNob3Qtd2luZG93LXNpemVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAic2NyZWVuc2hvdC13aW5kb3ctc2l6ZXJAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "40": {"version": "25", "sha256": "0pdf76kf6z7m9wvqsy36v1r02zfk8pgkpf21im2cq9x4qwh9gkf2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlc2l6ZSB3aW5kb3dzIGZvciBHTk9NRSBTb2Z0d2FyZSBzY3JlZW5zaG90cyIsCiAgImV4dGVuc2lvbi1pZCI6ICJzY3JlZW5zaG90LXdpbmRvdy1zaXplciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlNjcmVlbnNob3QgV2luZG93IFNpemVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNjcmVlbnNob3Qtd2luZG93LXNpemVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogInNjcmVlbnNob3Qtd2luZG93LXNpemVyQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDI1Cn0="}, "41": {"version": "27", "sha256": "0hwnrmbn8aciwbdw9rffrjg5md93bkrvfp8a4gmzrp6v946fd05p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlc2l6ZSB3aW5kb3dzIGZvciBHTk9NRSBTb2Z0d2FyZSBzY3JlZW5zaG90cyIsCiAgImV4dGVuc2lvbi1pZCI6ICJzY3JlZW5zaG90LXdpbmRvdy1zaXplciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1zY3JlZW5zaG90LXdpbmRvdy1zaXplciIsCiAgIm5hbWUiOiAiU2NyZWVuc2hvdCBXaW5kb3cgU2l6ZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2NyZWVuc2hvdC13aW5kb3ctc2l6ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAic2NyZWVuc2hvdC13aW5kb3ctc2l6ZXJAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjcKfQ=="}}}
+, {"uuid": "screenshot-window-sizer@gnome-shell-extensions.gcampax.github.com", "name": "Screenshot Window Sizer", "pname": "screenshot-window-sizer", "description": "Resize windows for GNOME Software screenshots", "link": "https://extensions.gnome.org/extension/881/screenshot-window-sizer/", "shell_version_map": {"38": {"version": "22", "sha256": "18b8f2agv397pdyaicx2qirqfnm0swbnspw43kb2hr0jn8lkzz1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlc2l6ZSB3aW5kb3dzIGZvciBHTk9NRSBTb2Z0d2FyZSBzY3JlZW5zaG90cyIsCiAgImV4dGVuc2lvbi1pZCI6ICJzY3JlZW5zaG90LXdpbmRvdy1zaXplciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlNjcmVlbnNob3QgV2luZG93IFNpemVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNjcmVlbnNob3Qtd2luZG93LXNpemVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAic2NyZWVuc2hvdC13aW5kb3ctc2l6ZXJAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "40": {"version": "25", "sha256": "0pdf76kf6z7m9wvqsy36v1r02zfk8pgkpf21im2cq9x4qwh9gkf2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlc2l6ZSB3aW5kb3dzIGZvciBHTk9NRSBTb2Z0d2FyZSBzY3JlZW5zaG90cyIsCiAgImV4dGVuc2lvbi1pZCI6ICJzY3JlZW5zaG90LXdpbmRvdy1zaXplciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlNjcmVlbnNob3QgV2luZG93IFNpemVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNjcmVlbnNob3Qtd2luZG93LXNpemVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ1dWlkIjogInNjcmVlbnNob3Qtd2luZG93LXNpemVyQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDI1Cn0="}, "41": {"version": "27", "sha256": "0hwnrmbn8aciwbdw9rffrjg5md93bkrvfp8a4gmzrp6v946fd05p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlc2l6ZSB3aW5kb3dzIGZvciBHTk9NRSBTb2Z0d2FyZSBzY3JlZW5zaG90cyIsCiAgImV4dGVuc2lvbi1pZCI6ICJzY3JlZW5zaG90LXdpbmRvdy1zaXplciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1zY3JlZW5zaG90LXdpbmRvdy1zaXplciIsCiAgIm5hbWUiOiAiU2NyZWVuc2hvdCBXaW5kb3cgU2l6ZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2NyZWVuc2hvdC13aW5kb3ctc2l6ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAic2NyZWVuc2hvdC13aW5kb3ctc2l6ZXJAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjcKfQ=="}, "42": {"version": "28", "sha256": "1b675z6jb1g5kq2qav7b6wajjw9z7zlkh5z0p99cmh7vhz60q3sy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlc2l6ZSB3aW5kb3dzIGZvciBHTk9NRSBTb2Z0d2FyZSBzY3JlZW5zaG90cyIsCiAgImV4dGVuc2lvbi1pZCI6ICJzY3JlZW5zaG90LXdpbmRvdy1zaXplciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1zY3JlZW5zaG90LXdpbmRvdy1zaXplciIsCiAgIm5hbWUiOiAiU2NyZWVuc2hvdCBXaW5kb3cgU2l6ZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2NyZWVuc2hvdC13aW5kb3ctc2l6ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAic2NyZWVuc2hvdC13aW5kb3ctc2l6ZXJAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5nY2FtcGF4LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjgKfQ=="}}}
 , {"uuid": "mailnag@pulb.github.com", "name": "Mailnag", "pname": "mailnag", "description": "Mail indicator (GMail, IMAP, POP) for GNOME.\n\nPlease note that this extension requires the mailnag daemon.\nInstall it from your distros package repositories or get it here:\nhttps://github.com/pulb/mailnag\n\nPlease also note that this version of the extension does not support avatars (as shown in the screenshot).\nIf you like to have avatar support install this extension from your distros package repositories or get a package from here:\nhttps://github.com/pulb/mailnag-gnome-shell\n\nIMPORTANT:\nI do not get notifications for user comments. Please always report bugs here:\nhttps://github.com/pulb/mailnag-gnome-shell/issues", "link": "https://extensions.gnome.org/extension/886/mailnag/", "shell_version_map": {"38": {"version": "20", "sha256": "15n816y34qlc7va72q75ngzw1my3n5j7xhg9a6dc0g8q4dd0g2r9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1haWwgaW5kaWNhdG9yIChHTWFpbCwgSU1BUCwgUE9QKSBmb3IgR05PTUUuXG5cblBsZWFzZSBub3RlIHRoYXQgdGhpcyBleHRlbnNpb24gcmVxdWlyZXMgdGhlIG1haWxuYWcgZGFlbW9uLlxuSW5zdGFsbCBpdCBmcm9tIHlvdXIgZGlzdHJvcyBwYWNrYWdlIHJlcG9zaXRvcmllcyBvciBnZXQgaXQgaGVyZTpcbmh0dHBzOi8vZ2l0aHViLmNvbS9wdWxiL21haWxuYWdcblxuUGxlYXNlIGFsc28gbm90ZSB0aGF0IHRoaXMgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGRvZXMgbm90IHN1cHBvcnQgYXZhdGFycyAoYXMgc2hvd24gaW4gdGhlIHNjcmVlbnNob3QpLlxuSWYgeW91IGxpa2UgdG8gaGF2ZSBhdmF0YXIgc3VwcG9ydCBpbnN0YWxsIHRoaXMgZXh0ZW5zaW9uIGZyb20geW91ciBkaXN0cm9zIHBhY2thZ2UgcmVwb3NpdG9yaWVzIG9yIGdldCBhIHBhY2thZ2UgZnJvbSBoZXJlOlxuaHR0cHM6Ly9naXRodWIuY29tL3B1bGIvbWFpbG5hZy1nbm9tZS1zaGVsbFxuXG5JTVBPUlRBTlQ6XG5JIGRvIG5vdCBnZXQgbm90aWZpY2F0aW9ucyBmb3IgdXNlciBjb21tZW50cy4gUGxlYXNlIGFsd2F5cyByZXBvcnQgYnVncyBoZXJlOlxuaHR0cHM6Ly9naXRodWIuY29tL3B1bGIvbWFpbG5hZy1nbm9tZS1zaGVsbC9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJtYWlsbmFnLWdub21lLXNoZWxsIiwKICAibmFtZSI6ICJNYWlsbmFnIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1haWxuYWciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAibWFpbG5hZ0BwdWxiLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjAKfQ=="}, "40": {"version": "21", "sha256": "060lmc6jacjv1p4a6n7c3l0kmfskq012pgrf2gar0kf49lqrp665", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1haWwgaW5kaWNhdG9yIChHTWFpbCwgSU1BUCwgUE9QKSBmb3IgR05PTUUuXG5cblBsZWFzZSBub3RlIHRoYXQgdGhpcyBleHRlbnNpb24gcmVxdWlyZXMgdGhlIG1haWxuYWcgZGFlbW9uLlxuSW5zdGFsbCBpdCBmcm9tIHlvdXIgZGlzdHJvcyBwYWNrYWdlIHJlcG9zaXRvcmllcyBvciBnZXQgaXQgaGVyZTpcbmh0dHBzOi8vZ2l0aHViLmNvbS9wdWxiL21haWxuYWdcblxuUGxlYXNlIGFsc28gbm90ZSB0aGF0IHRoaXMgdmVyc2lvbiBvZiB0aGUgZXh0ZW5zaW9uIGRvZXMgbm90IHN1cHBvcnQgYXZhdGFycyAoYXMgc2hvd24gaW4gdGhlIHNjcmVlbnNob3QpLlxuSWYgeW91IGxpa2UgdG8gaGF2ZSBhdmF0YXIgc3VwcG9ydCBpbnN0YWxsIHRoaXMgZXh0ZW5zaW9uIGZyb20geW91ciBkaXN0cm9zIHBhY2thZ2UgcmVwb3NpdG9yaWVzIG9yIGdldCBhIHBhY2thZ2UgZnJvbSBoZXJlOlxuaHR0cHM6Ly9naXRodWIuY29tL3B1bGIvbWFpbG5hZy1nbm9tZS1zaGVsbFxuXG5JTVBPUlRBTlQ6XG5JIGRvIG5vdCBnZXQgbm90aWZpY2F0aW9ucyBmb3IgdXNlciBjb21tZW50cy4gUGxlYXNlIGFsd2F5cyByZXBvcnQgYnVncyBoZXJlOlxuaHR0cHM6Ly9naXRodWIuY29tL3B1bGIvbWFpbG5hZy1nbm9tZS1zaGVsbC9pc3N1ZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJtYWlsbmFnLWdub21lLXNoZWxsIiwKICAibmFtZSI6ICJNYWlsbmFnIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1haWxuYWciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm1haWxuYWdAcHVsYi5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIxCn0="}}}
 , {"uuid": "mmod-panel@mmogp.com", "name": "MMOD Panel", "pname": "mmod-panel", "description": "Upgrades the Topbar in Gnome3, creating a customizable panel and providing options for fine-tuning your Desktop Experience.\n\nFeatures include:\n▸ Set comfort levels to provide theme support and fine-tune the overall look and feel of the panel.\n▸ Set the location/position of the panel (bottom by default).\n▸ Add a button to the panel in place of the activities link, using an icon of your preference.\n▸ Auto-hide the panel when not active/in-focus (makes use of pressure/gesture for showing the panel).\n▸ Display and manage your favorites/running apps directly on the panel.\n▸ Move the date menu to the aggregate/tray area.\n▸ Access and manage your extension preferences directly from the aggregate menu.\n▸ Customize behavior of the overview and panel(hot-corners/animations/effects) to suit your preferences.\n▸ More to come soon!\n\nThis project is loosely based on the Panel Settings extension:\nhttps://github.com/eddiefullmetal/gnome-shell-extensions/tree/master/panelSettings%40eddiefullmetal.gr\n\nSadly, Panel Settings has not seen any maintenance in years, though this is why I decided to create MMOD Panel.\n\nI also took inspiration from the following Gnome extensions: System-Monitor, Taskbar, and DashToDock.\n\nFor those of you who are wondering, the theme used in the screen shot is the Zukitwo-Dark-Shell Shell Theme; \neverything else is default Gnome on Debian Buster. However, the author of the aforementioned shell theme has \nchanged the name for various reasons to Ciliora-Prima-Shell - which can be found here:\n\n  http://gnome-look.org/content/show.php?content=165096\n\nFor Gnome-Shell: 3.10, 3.12, 3.12.2, 3.14, 3.14.4, 3.16, 3.16.2, 3.18, 3.20, 3.22, 3.24, 3.26, 3.26.2, 3.28, 3.30, 3.32, 3.34, 3.35, 3.35.91, 3.36, 3.36.3, 3.36.4, 3.36.6, 3.38, 3.38.2, 40.0, 40.5, 41.0 (since version 12.0.0) f\nRik <rik@mmod.co>\n\nGerman Translation(s) for MMOD-Panel courtesy of Jonius Zeidler <jonatan_zeidler@gmx.de>\n\nSource Repository: https://gitlab.com/mmod/mmod-panel/\n", "link": "https://extensions.gnome.org/extension/898/mmod-panel/", "shell_version_map": {"38": {"version": "12", "sha256": "00sr6dcn7z5a8p9zq2xvvdac828m8f0akz3skb9sb9v8jay0m0hr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZ3JhZGVzIHRoZSBUb3BiYXIgaW4gR25vbWUzLCBjcmVhdGluZyBhIGN1c3RvbWl6YWJsZSBwYW5lbCBhbmQgcHJvdmlkaW5nIG9wdGlvbnMgZm9yIGZpbmUtdHVuaW5nIHlvdXIgRGVza3RvcCBFeHBlcmllbmNlLlxuXG5GZWF0dXJlcyBpbmNsdWRlOlxuXHUyNWI4IFNldCBjb21mb3J0IGxldmVscyB0byBwcm92aWRlIHRoZW1lIHN1cHBvcnQgYW5kIGZpbmUtdHVuZSB0aGUgb3ZlcmFsbCBsb29rIGFuZCBmZWVsIG9mIHRoZSBwYW5lbC5cblx1MjViOCBTZXQgdGhlIGxvY2F0aW9uL3Bvc2l0aW9uIG9mIHRoZSBwYW5lbCAoYm90dG9tIGJ5IGRlZmF1bHQpLlxuXHUyNWI4IEFkZCBhIGJ1dHRvbiB0byB0aGUgcGFuZWwgaW4gcGxhY2Ugb2YgdGhlIGFjdGl2aXRpZXMgbGluaywgdXNpbmcgYW4gaWNvbiBvZiB5b3VyIHByZWZlcmVuY2UuXG5cdTI1YjggQXV0by1oaWRlIHRoZSBwYW5lbCB3aGVuIG5vdCBhY3RpdmUvaW4tZm9jdXMgKG1ha2VzIHVzZSBvZiBwcmVzc3VyZS9nZXN0dXJlIGZvciBzaG93aW5nIHRoZSBwYW5lbCkuXG5cdTI1YjggRGlzcGxheSBhbmQgbWFuYWdlIHlvdXIgZmF2b3JpdGVzL3J1bm5pbmcgYXBwcyBkaXJlY3RseSBvbiB0aGUgcGFuZWwuXG5cdTI1YjggTW92ZSB0aGUgZGF0ZSBtZW51IHRvIHRoZSBhZ2dyZWdhdGUvdHJheSBhcmVhLlxuXHUyNWI4IEFjY2VzcyBhbmQgbWFuYWdlIHlvdXIgZXh0ZW5zaW9uIHByZWZlcmVuY2VzIGRpcmVjdGx5IGZyb20gdGhlIGFnZ3JlZ2F0ZSBtZW51LlxuXHUyNWI4IEN1c3RvbWl6ZSBiZWhhdmlvciBvZiB0aGUgb3ZlcnZpZXcgYW5kIHBhbmVsKGhvdC1jb3JuZXJzL2FuaW1hdGlvbnMvZWZmZWN0cykgdG8gc3VpdCB5b3VyIHByZWZlcmVuY2VzLlxuXHUyNWI4IE1vcmUgdG8gY29tZSBzb29uIVxuXG5UaGlzIHByb2plY3QgaXMgbG9vc2VseSBiYXNlZCBvbiB0aGUgUGFuZWwgU2V0dGluZ3MgZXh0ZW5zaW9uOlxuaHR0cHM6Ly9naXRodWIuY29tL2VkZGllZnVsbG1ldGFsL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdHJlZS9tYXN0ZXIvcGFuZWxTZXR0aW5ncyU0MGVkZGllZnVsbG1ldGFsLmdyXG5cblNhZGx5LCBQYW5lbCBTZXR0aW5ncyBoYXMgbm90IHNlZW4gYW55IG1haW50ZW5hbmNlIGluIHllYXJzLCB0aG91Z2ggdGhpcyBpcyB3aHkgSSBkZWNpZGVkIHRvIGNyZWF0ZSBNTU9EIFBhbmVsLlxuXG5JIGFsc28gdG9vayBpbnNwaXJhdGlvbiBmcm9tIHRoZSBmb2xsb3dpbmcgR25vbWUgZXh0ZW5zaW9uczogU3lzdGVtLU1vbml0b3IsIFRhc2tiYXIsIGFuZCBEYXNoVG9Eb2NrLlxuXG5Gb3IgdGhvc2Ugb2YgeW91IHdobyBhcmUgd29uZGVyaW5nLCB0aGUgdGhlbWUgdXNlZCBpbiB0aGUgc2NyZWVuIHNob3QgaXMgdGhlIFp1a2l0d28tRGFyay1TaGVsbCBTaGVsbCBUaGVtZTsgXG5ldmVyeXRoaW5nIGVsc2UgaXMgZGVmYXVsdCBHbm9tZSBvbiBEZWJpYW4gQnVzdGVyLiBIb3dldmVyLCB0aGUgYXV0aG9yIG9mIHRoZSBhZm9yZW1lbnRpb25lZCBzaGVsbCB0aGVtZSBoYXMgXG5jaGFuZ2VkIHRoZSBuYW1lIGZvciB2YXJpb3VzIHJlYXNvbnMgdG8gQ2lsaW9yYS1QcmltYS1TaGVsbCAtIHdoaWNoIGNhbiBiZSBmb3VuZCBoZXJlOlxuXG4gIGh0dHA6Ly9nbm9tZS1sb29rLm9yZy9jb250ZW50L3Nob3cucGhwP2NvbnRlbnQ9MTY1MDk2XG5cbkZvciBHbm9tZS1TaGVsbDogMy4xMCwgMy4xMiwgMy4xMi4yLCAzLjE0LCAzLjE0LjQsIDMuMTYsIDMuMTYuMiwgMy4xOCwgMy4yMCwgMy4yMiwgMy4yNCwgMy4yNiwgMy4yNi4yLCAzLjI4LCAzLjMwLCAzLjMyLCAzLjM0LCAzLjM1LCAzLjM1LjkxLCAzLjM2LCAzLjM2LjMsIDMuMzYuNCwgMy4zNi42LCAzLjM4LCAzLjM4LjIsIDQwLjAsIDQwLjUsIDQxLjAgKHNpbmNlIHZlcnNpb24gMTIuMC4wKSBmXG5SaWsgPHJpa0BtbW9kLmNvPlxuXG5HZXJtYW4gVHJhbnNsYXRpb24ocykgZm9yIE1NT0QtUGFuZWwgY291cnRlc3kgb2YgSm9uaXVzIFplaWRsZXIgPGpvbmF0YW5femVpZGxlckBnbXguZGU+XG5cblNvdXJjZSBSZXBvc2l0b3J5OiBodHRwczovL2dpdGxhYi5jb20vbW1vZC9tbW9kLXBhbmVsL1xuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibW1vZC1wYW5lbCIsCiAgIm5hbWUiOiAiTU1PRCBQYW5lbCIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJyaWtAbW1vZC5jbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiMy4zNi4zIiwKICAgICIzLjM2LjQiLAogICAgIjMuMzYuNiIsCiAgICAiMy4zOC4yIiwKICAgICI0MC4wIiwKICAgICI0MS4wIiwKICAgICI0MC41IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vbW1vZC9tbW9kLXBhbmVsLyIsCiAgInV1aWQiOiAibW1vZC1wYW5lbEBtbW9ncC5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "40": {"version": "12", "sha256": "00sr6dcn7z5a8p9zq2xvvdac828m8f0akz3skb9sb9v8jay0m0hr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZ3JhZGVzIHRoZSBUb3BiYXIgaW4gR25vbWUzLCBjcmVhdGluZyBhIGN1c3RvbWl6YWJsZSBwYW5lbCBhbmQgcHJvdmlkaW5nIG9wdGlvbnMgZm9yIGZpbmUtdHVuaW5nIHlvdXIgRGVza3RvcCBFeHBlcmllbmNlLlxuXG5GZWF0dXJlcyBpbmNsdWRlOlxuXHUyNWI4IFNldCBjb21mb3J0IGxldmVscyB0byBwcm92aWRlIHRoZW1lIHN1cHBvcnQgYW5kIGZpbmUtdHVuZSB0aGUgb3ZlcmFsbCBsb29rIGFuZCBmZWVsIG9mIHRoZSBwYW5lbC5cblx1MjViOCBTZXQgdGhlIGxvY2F0aW9uL3Bvc2l0aW9uIG9mIHRoZSBwYW5lbCAoYm90dG9tIGJ5IGRlZmF1bHQpLlxuXHUyNWI4IEFkZCBhIGJ1dHRvbiB0byB0aGUgcGFuZWwgaW4gcGxhY2Ugb2YgdGhlIGFjdGl2aXRpZXMgbGluaywgdXNpbmcgYW4gaWNvbiBvZiB5b3VyIHByZWZlcmVuY2UuXG5cdTI1YjggQXV0by1oaWRlIHRoZSBwYW5lbCB3aGVuIG5vdCBhY3RpdmUvaW4tZm9jdXMgKG1ha2VzIHVzZSBvZiBwcmVzc3VyZS9nZXN0dXJlIGZvciBzaG93aW5nIHRoZSBwYW5lbCkuXG5cdTI1YjggRGlzcGxheSBhbmQgbWFuYWdlIHlvdXIgZmF2b3JpdGVzL3J1bm5pbmcgYXBwcyBkaXJlY3RseSBvbiB0aGUgcGFuZWwuXG5cdTI1YjggTW92ZSB0aGUgZGF0ZSBtZW51IHRvIHRoZSBhZ2dyZWdhdGUvdHJheSBhcmVhLlxuXHUyNWI4IEFjY2VzcyBhbmQgbWFuYWdlIHlvdXIgZXh0ZW5zaW9uIHByZWZlcmVuY2VzIGRpcmVjdGx5IGZyb20gdGhlIGFnZ3JlZ2F0ZSBtZW51LlxuXHUyNWI4IEN1c3RvbWl6ZSBiZWhhdmlvciBvZiB0aGUgb3ZlcnZpZXcgYW5kIHBhbmVsKGhvdC1jb3JuZXJzL2FuaW1hdGlvbnMvZWZmZWN0cykgdG8gc3VpdCB5b3VyIHByZWZlcmVuY2VzLlxuXHUyNWI4IE1vcmUgdG8gY29tZSBzb29uIVxuXG5UaGlzIHByb2plY3QgaXMgbG9vc2VseSBiYXNlZCBvbiB0aGUgUGFuZWwgU2V0dGluZ3MgZXh0ZW5zaW9uOlxuaHR0cHM6Ly9naXRodWIuY29tL2VkZGllZnVsbG1ldGFsL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdHJlZS9tYXN0ZXIvcGFuZWxTZXR0aW5ncyU0MGVkZGllZnVsbG1ldGFsLmdyXG5cblNhZGx5LCBQYW5lbCBTZXR0aW5ncyBoYXMgbm90IHNlZW4gYW55IG1haW50ZW5hbmNlIGluIHllYXJzLCB0aG91Z2ggdGhpcyBpcyB3aHkgSSBkZWNpZGVkIHRvIGNyZWF0ZSBNTU9EIFBhbmVsLlxuXG5JIGFsc28gdG9vayBpbnNwaXJhdGlvbiBmcm9tIHRoZSBmb2xsb3dpbmcgR25vbWUgZXh0ZW5zaW9uczogU3lzdGVtLU1vbml0b3IsIFRhc2tiYXIsIGFuZCBEYXNoVG9Eb2NrLlxuXG5Gb3IgdGhvc2Ugb2YgeW91IHdobyBhcmUgd29uZGVyaW5nLCB0aGUgdGhlbWUgdXNlZCBpbiB0aGUgc2NyZWVuIHNob3QgaXMgdGhlIFp1a2l0d28tRGFyay1TaGVsbCBTaGVsbCBUaGVtZTsgXG5ldmVyeXRoaW5nIGVsc2UgaXMgZGVmYXVsdCBHbm9tZSBvbiBEZWJpYW4gQnVzdGVyLiBIb3dldmVyLCB0aGUgYXV0aG9yIG9mIHRoZSBhZm9yZW1lbnRpb25lZCBzaGVsbCB0aGVtZSBoYXMgXG5jaGFuZ2VkIHRoZSBuYW1lIGZvciB2YXJpb3VzIHJlYXNvbnMgdG8gQ2lsaW9yYS1QcmltYS1TaGVsbCAtIHdoaWNoIGNhbiBiZSBmb3VuZCBoZXJlOlxuXG4gIGh0dHA6Ly9nbm9tZS1sb29rLm9yZy9jb250ZW50L3Nob3cucGhwP2NvbnRlbnQ9MTY1MDk2XG5cbkZvciBHbm9tZS1TaGVsbDogMy4xMCwgMy4xMiwgMy4xMi4yLCAzLjE0LCAzLjE0LjQsIDMuMTYsIDMuMTYuMiwgMy4xOCwgMy4yMCwgMy4yMiwgMy4yNCwgMy4yNiwgMy4yNi4yLCAzLjI4LCAzLjMwLCAzLjMyLCAzLjM0LCAzLjM1LCAzLjM1LjkxLCAzLjM2LCAzLjM2LjMsIDMuMzYuNCwgMy4zNi42LCAzLjM4LCAzLjM4LjIsIDQwLjAsIDQwLjUsIDQxLjAgKHNpbmNlIHZlcnNpb24gMTIuMC4wKSBmXG5SaWsgPHJpa0BtbW9kLmNvPlxuXG5HZXJtYW4gVHJhbnNsYXRpb24ocykgZm9yIE1NT0QtUGFuZWwgY291cnRlc3kgb2YgSm9uaXVzIFplaWRsZXIgPGpvbmF0YW5femVpZGxlckBnbXguZGU+XG5cblNvdXJjZSBSZXBvc2l0b3J5OiBodHRwczovL2dpdGxhYi5jb20vbW1vZC9tbW9kLXBhbmVsL1xuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibW1vZC1wYW5lbCIsCiAgIm5hbWUiOiAiTU1PRCBQYW5lbCIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJyaWtAbW1vZC5jbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiMy4zNi4zIiwKICAgICIzLjM2LjQiLAogICAgIjMuMzYuNiIsCiAgICAiMy4zOC4yIiwKICAgICI0MC4wIiwKICAgICI0MS4wIiwKICAgICI0MC41IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vbW1vZC9tbW9kLXBhbmVsLyIsCiAgInV1aWQiOiAibW1vZC1wYW5lbEBtbW9ncC5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "41": {"version": "12", "sha256": "00sr6dcn7z5a8p9zq2xvvdac828m8f0akz3skb9sb9v8jay0m0hr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZ3JhZGVzIHRoZSBUb3BiYXIgaW4gR25vbWUzLCBjcmVhdGluZyBhIGN1c3RvbWl6YWJsZSBwYW5lbCBhbmQgcHJvdmlkaW5nIG9wdGlvbnMgZm9yIGZpbmUtdHVuaW5nIHlvdXIgRGVza3RvcCBFeHBlcmllbmNlLlxuXG5GZWF0dXJlcyBpbmNsdWRlOlxuXHUyNWI4IFNldCBjb21mb3J0IGxldmVscyB0byBwcm92aWRlIHRoZW1lIHN1cHBvcnQgYW5kIGZpbmUtdHVuZSB0aGUgb3ZlcmFsbCBsb29rIGFuZCBmZWVsIG9mIHRoZSBwYW5lbC5cblx1MjViOCBTZXQgdGhlIGxvY2F0aW9uL3Bvc2l0aW9uIG9mIHRoZSBwYW5lbCAoYm90dG9tIGJ5IGRlZmF1bHQpLlxuXHUyNWI4IEFkZCBhIGJ1dHRvbiB0byB0aGUgcGFuZWwgaW4gcGxhY2Ugb2YgdGhlIGFjdGl2aXRpZXMgbGluaywgdXNpbmcgYW4gaWNvbiBvZiB5b3VyIHByZWZlcmVuY2UuXG5cdTI1YjggQXV0by1oaWRlIHRoZSBwYW5lbCB3aGVuIG5vdCBhY3RpdmUvaW4tZm9jdXMgKG1ha2VzIHVzZSBvZiBwcmVzc3VyZS9nZXN0dXJlIGZvciBzaG93aW5nIHRoZSBwYW5lbCkuXG5cdTI1YjggRGlzcGxheSBhbmQgbWFuYWdlIHlvdXIgZmF2b3JpdGVzL3J1bm5pbmcgYXBwcyBkaXJlY3RseSBvbiB0aGUgcGFuZWwuXG5cdTI1YjggTW92ZSB0aGUgZGF0ZSBtZW51IHRvIHRoZSBhZ2dyZWdhdGUvdHJheSBhcmVhLlxuXHUyNWI4IEFjY2VzcyBhbmQgbWFuYWdlIHlvdXIgZXh0ZW5zaW9uIHByZWZlcmVuY2VzIGRpcmVjdGx5IGZyb20gdGhlIGFnZ3JlZ2F0ZSBtZW51LlxuXHUyNWI4IEN1c3RvbWl6ZSBiZWhhdmlvciBvZiB0aGUgb3ZlcnZpZXcgYW5kIHBhbmVsKGhvdC1jb3JuZXJzL2FuaW1hdGlvbnMvZWZmZWN0cykgdG8gc3VpdCB5b3VyIHByZWZlcmVuY2VzLlxuXHUyNWI4IE1vcmUgdG8gY29tZSBzb29uIVxuXG5UaGlzIHByb2plY3QgaXMgbG9vc2VseSBiYXNlZCBvbiB0aGUgUGFuZWwgU2V0dGluZ3MgZXh0ZW5zaW9uOlxuaHR0cHM6Ly9naXRodWIuY29tL2VkZGllZnVsbG1ldGFsL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdHJlZS9tYXN0ZXIvcGFuZWxTZXR0aW5ncyU0MGVkZGllZnVsbG1ldGFsLmdyXG5cblNhZGx5LCBQYW5lbCBTZXR0aW5ncyBoYXMgbm90IHNlZW4gYW55IG1haW50ZW5hbmNlIGluIHllYXJzLCB0aG91Z2ggdGhpcyBpcyB3aHkgSSBkZWNpZGVkIHRvIGNyZWF0ZSBNTU9EIFBhbmVsLlxuXG5JIGFsc28gdG9vayBpbnNwaXJhdGlvbiBmcm9tIHRoZSBmb2xsb3dpbmcgR25vbWUgZXh0ZW5zaW9uczogU3lzdGVtLU1vbml0b3IsIFRhc2tiYXIsIGFuZCBEYXNoVG9Eb2NrLlxuXG5Gb3IgdGhvc2Ugb2YgeW91IHdobyBhcmUgd29uZGVyaW5nLCB0aGUgdGhlbWUgdXNlZCBpbiB0aGUgc2NyZWVuIHNob3QgaXMgdGhlIFp1a2l0d28tRGFyay1TaGVsbCBTaGVsbCBUaGVtZTsgXG5ldmVyeXRoaW5nIGVsc2UgaXMgZGVmYXVsdCBHbm9tZSBvbiBEZWJpYW4gQnVzdGVyLiBIb3dldmVyLCB0aGUgYXV0aG9yIG9mIHRoZSBhZm9yZW1lbnRpb25lZCBzaGVsbCB0aGVtZSBoYXMgXG5jaGFuZ2VkIHRoZSBuYW1lIGZvciB2YXJpb3VzIHJlYXNvbnMgdG8gQ2lsaW9yYS1QcmltYS1TaGVsbCAtIHdoaWNoIGNhbiBiZSBmb3VuZCBoZXJlOlxuXG4gIGh0dHA6Ly9nbm9tZS1sb29rLm9yZy9jb250ZW50L3Nob3cucGhwP2NvbnRlbnQ9MTY1MDk2XG5cbkZvciBHbm9tZS1TaGVsbDogMy4xMCwgMy4xMiwgMy4xMi4yLCAzLjE0LCAzLjE0LjQsIDMuMTYsIDMuMTYuMiwgMy4xOCwgMy4yMCwgMy4yMiwgMy4yNCwgMy4yNiwgMy4yNi4yLCAzLjI4LCAzLjMwLCAzLjMyLCAzLjM0LCAzLjM1LCAzLjM1LjkxLCAzLjM2LCAzLjM2LjMsIDMuMzYuNCwgMy4zNi42LCAzLjM4LCAzLjM4LjIsIDQwLjAsIDQwLjUsIDQxLjAgKHNpbmNlIHZlcnNpb24gMTIuMC4wKSBmXG5SaWsgPHJpa0BtbW9kLmNvPlxuXG5HZXJtYW4gVHJhbnNsYXRpb24ocykgZm9yIE1NT0QtUGFuZWwgY291cnRlc3kgb2YgSm9uaXVzIFplaWRsZXIgPGpvbmF0YW5femVpZGxlckBnbXguZGU+XG5cblNvdXJjZSBSZXBvc2l0b3J5OiBodHRwczovL2dpdGxhYi5jb20vbW1vZC9tbW9kLXBhbmVsL1xuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibW1vZC1wYW5lbCIsCiAgIm5hbWUiOiAiTU1PRCBQYW5lbCIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJyaWtAbW1vZC5jbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiMy4zNi4zIiwKICAgICIzLjM2LjQiLAogICAgIjMuMzYuNiIsCiAgICAiMy4zOC4yIiwKICAgICI0MC4wIiwKICAgICI0MS4wIiwKICAgICI0MC41IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vbW1vZC9tbW9kLXBhbmVsLyIsCiAgInV1aWQiOiAibW1vZC1wYW5lbEBtbW9ncC5jb20iLAogICJ2ZXJzaW9uIjogMTIKfQ=="}}}
 , {"uuid": "modern-calc@kaer", "name": "Modern Calc", "pname": "modern-calc", "description": "A full featured calculator for gnome-shell.", "link": "https://extensions.gnome.org/extension/900/modern-calc/", "shell_version_map": {"38": {"version": "11", "sha256": "0f0fmldcr8ywghp8w61wvi2qb29yc82xmgkqb7khj14zgv4l6apw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZnVsbCBmZWF0dXJlZCBjYWxjdWxhdG9yIGZvciBnbm9tZS1zaGVsbC4iLAogICJuYW1lIjogIk1vZGVybiBDYWxjIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIkthZXIgKHRoZS50aGluLmtpbmcud2F5KzIwMTRAZ21haWwuY29tKSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tb2Rlcm4tY2FsYyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thZXIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW1vZGVybi1jYWxjIiwKICAidXVpZCI6ICJtb2Rlcm4tY2FsY0BrYWVyIiwKICAidmVyc2lvbiI6IDExCn0="}}}
@@ -87,18 +87,18 @@
 , {"uuid": "synaptic-button@fthx", "name": "Synaptic Button", "pname": "synaptic-button", "description": "Button that directly starts Synaptic package manager.\n\n For snap management without Snap Store, consider Snap Manager extension.", "link": "https://extensions.gnome.org/extension/938/synaptic-button/", "shell_version_map": {"38": {"version": "4", "sha256": "0wdi35qz5rxs4fvcxlrvlyslrspsgfkryvh0na9vakbvhpmv7skv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJ1dHRvbiB0aGF0IGRpcmVjdGx5IHN0YXJ0cyBTeW5hcHRpYyBwYWNrYWdlIG1hbmFnZXIuXG5cbiBGb3Igc25hcCBtYW5hZ2VtZW50IHdpdGhvdXQgU25hcCBTdG9yZSwgY29uc2lkZXIgU25hcCBNYW5hZ2VyIGV4dGVuc2lvbi4iLAogICJuYW1lIjogIlN5bmFwdGljIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvc3luYXB0aWMtYnV0dG9uIiwKICAidXVpZCI6ICJzeW5hcHRpYy1idXR0b25AZnRoeCIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "workspace_scroll@squgeim.com.np", "name": "Workspace Scroll", "pname": "workspace-scroll", "description": "Just scroll anywhere in the top panel to change the workspace.", "link": "https://extensions.gnome.org/extension/943/workspace-scroll/", "shell_version_map": {"40": {"version": "6", "sha256": "0pglhzy81zh9wwcmh1ynygkghq64s948k9qaa9vr3k514bq8b8n0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkp1c3Qgc2Nyb2xsIGFueXdoZXJlIGluIHRoZSB0b3AgcGFuZWwgdG8gY2hhbmdlIHRoZSB3b3Jrc3BhY2UuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2UgU2Nyb2xsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIiwKICAgICI0MC4xIiwKICAgICI0MC4yIiwKICAgICI0MC4zIiwKICAgICI0MS4wIiwKICAgICI0MC4xMCIsCiAgICAiNDAuNSIsCiAgICAiNDAuMTEiLAogICAgIjQwLjkiLAogICAgIjQwLjgiLAogICAgIjQwLjciLAogICAgIjQwLjYiLAogICAgIjQwLjQiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zcXVnZWltL1dvcmtzcGFjZS1TY3JvbGwiLAogICJ1dWlkIjogIndvcmtzcGFjZV9zY3JvbGxAc3F1Z2VpbS5jb20ubnAiLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "0pglhzy81zh9wwcmh1ynygkghq64s948k9qaa9vr3k514bq8b8n0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkp1c3Qgc2Nyb2xsIGFueXdoZXJlIGluIHRoZSB0b3AgcGFuZWwgdG8gY2hhbmdlIHRoZSB3b3Jrc3BhY2UuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2UgU2Nyb2xsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIiwKICAgICI0MC4xIiwKICAgICI0MC4yIiwKICAgICI0MC4zIiwKICAgICI0MS4wIiwKICAgICI0MC4xMCIsCiAgICAiNDAuNSIsCiAgICAiNDAuMTEiLAogICAgIjQwLjkiLAogICAgIjQwLjgiLAogICAgIjQwLjciLAogICAgIjQwLjYiLAogICAgIjQwLjQiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zcXVnZWltL1dvcmtzcGFjZS1TY3JvbGwiLAogICJ1dWlkIjogIndvcmtzcGFjZV9zY3JvbGxAc3F1Z2VpbS5jb20ubnAiLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "cpupower@mko-sl.de", "name": "CPU Power Manager", "pname": "cpu-power-manager", "description": "Manage your CPU's frequency scaling driver", "link": "https://extensions.gnome.org/extension/945/cpu-power-manager/", "shell_version_map": {"38": {"version": "26", "sha256": "0w4py02s4xw3acl6iy7bamkbzd728ha908pjg5h9hjivqfbipd90", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSB5b3VyIENQVSdzIGZyZXF1ZW5jeSBzY2FsaW5nIGRyaXZlciIsCiAgImxvY2FsZWRpciI6ICIvdXNyL2xvY2FsL3NoYXJlL2xvY2FsZSIsCiAgIm5hbWUiOiAiQ1BVIFBvd2VyIE1hbmFnZXIiLAogICJzY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3B1cG93ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVpbnN0YXBlbC9jcHVwb3dlciIsCiAgInV1aWQiOiAiY3B1cG93ZXJAbWtvLXNsLmRlIiwKICAidmVyc2lvbiI6IDI2Cn0="}, "40": {"version": "26", "sha256": "0w4py02s4xw3acl6iy7bamkbzd728ha908pjg5h9hjivqfbipd90", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSB5b3VyIENQVSdzIGZyZXF1ZW5jeSBzY2FsaW5nIGRyaXZlciIsCiAgImxvY2FsZWRpciI6ICIvdXNyL2xvY2FsL3NoYXJlL2xvY2FsZSIsCiAgIm5hbWUiOiAiQ1BVIFBvd2VyIE1hbmFnZXIiLAogICJzY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3B1cG93ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVpbnN0YXBlbC9jcHVwb3dlciIsCiAgInV1aWQiOiAiY3B1cG93ZXJAbWtvLXNsLmRlIiwKICAidmVyc2lvbiI6IDI2Cn0="}}}
-, {"uuid": "world_clock_lite@ailin.nemui", "name": "Panel World Clock (Lite)", "pname": "panel-world-clock-lite", "description": "A world clock for the panel\n\nInstall gnome-clocks to get started!\nHint: Eiðar has the same time as UTC\n\nGnome ≤3.14? https://extensions.gnome.org/extension/697/panel-world-clock/", "link": "https://extensions.gnome.org/extension/946/panel-world-clock-lite/", "shell_version_map": {"38": {"version": "11", "sha256": "0sg76mlvyy0m6yqv6qrmyizhjd54qp8knra3z0sna1xxg0i51d42", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd29ybGQgY2xvY2sgZm9yIHRoZSBwYW5lbFxuXG5JbnN0YWxsIGdub21lLWNsb2NrcyB0byBnZXQgc3RhcnRlZCFcbkhpbnQ6IEVpXHUwMGYwYXIgaGFzIHRoZSBzYW1lIHRpbWUgYXMgVVRDXG5cbkdub21lIFx1MjI2NDMuMTQ/IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzY5Ny9wYW5lbC13b3JsZC1jbG9jay8iLAogICJuYW1lIjogIlBhbmVsIFdvcmxkIENsb2NrIChMaXRlKSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3JsZC1jbG9jayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3b3JsZF9jbG9ja19saXRlQGFpbGluLm5lbXVpIiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "16", "sha256": "1yn28nhqkdpcr0s53wmxb4x9vnpbdz1mxaibkkdz5mnkzc9mz91g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd29ybGQgY2xvY2sgZm9yIHRoZSBwYW5lbFxuXG5JbnN0YWxsIGdub21lLWNsb2NrcyB0byBnZXQgc3RhcnRlZCFcbkhpbnQ6IEVpXHUwMGYwYXIgaGFzIHRoZSBzYW1lIHRpbWUgYXMgVVRDXG5cbkdub21lIFx1MjI2NDMuMTQ/IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzY5Ny9wYW5lbC13b3JsZC1jbG9jay8iLAogICJuYW1lIjogIlBhbmVsIFdvcmxkIENsb2NrIChMaXRlKSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3JsZC1jbG9jayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIndvcmxkX2Nsb2NrX2xpdGVAYWlsaW4ubmVtdWkiLAogICJ2ZXJzaW9uIjogMTYKfQ=="}, "41": {"version": "16", "sha256": "1yn28nhqkdpcr0s53wmxb4x9vnpbdz1mxaibkkdz5mnkzc9mz91g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd29ybGQgY2xvY2sgZm9yIHRoZSBwYW5lbFxuXG5JbnN0YWxsIGdub21lLWNsb2NrcyB0byBnZXQgc3RhcnRlZCFcbkhpbnQ6IEVpXHUwMGYwYXIgaGFzIHRoZSBzYW1lIHRpbWUgYXMgVVRDXG5cbkdub21lIFx1MjI2NDMuMTQ/IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzY5Ny9wYW5lbC13b3JsZC1jbG9jay8iLAogICJuYW1lIjogIlBhbmVsIFdvcmxkIENsb2NrIChMaXRlKSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3JsZC1jbG9jayIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIndvcmxkX2Nsb2NrX2xpdGVAYWlsaW4ubmVtdWkiLAogICJ2ZXJzaW9uIjogMTYKfQ=="}}}
+, {"uuid": "world_clock_lite@ailin.nemui", "name": "Panel World Clock (Lite)", "pname": "panel-world-clock-lite", "description": "A world clock for the panel\n\nInstall gnome-clocks to get started! (Flatpak or Snap versions NOT supported) \n\nGnome ≤3.14? https://extensions.gnome.org/extension/697/panel-world-clock/", "link": "https://extensions.gnome.org/extension/946/panel-world-clock-lite/", "shell_version_map": {"38": {"version": "11", "sha256": "0a6347p8s9iw1007yc7vlm3hy399prfvqm28ziy8wb8wmj5xd9rn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd29ybGQgY2xvY2sgZm9yIHRoZSBwYW5lbFxuXG5JbnN0YWxsIGdub21lLWNsb2NrcyB0byBnZXQgc3RhcnRlZCEgKEZsYXRwYWsgb3IgU25hcCB2ZXJzaW9ucyBOT1Qgc3VwcG9ydGVkKSBcblxuR25vbWUgXHUyMjY0My4xND8gaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNjk3L3BhbmVsLXdvcmxkLWNsb2NrLyIsCiAgIm5hbWUiOiAiUGFuZWwgV29ybGQgQ2xvY2sgKExpdGUpIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmxkLWNsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIndvcmxkX2Nsb2NrX2xpdGVAYWlsaW4ubmVtdWkiLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "40": {"version": "17", "sha256": "1v1s3rcjava822dg4a6syx0apl77vsh7d6n44xy8nq7738s0v6pw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd29ybGQgY2xvY2sgZm9yIHRoZSBwYW5lbFxuXG5JbnN0YWxsIGdub21lLWNsb2NrcyB0byBnZXQgc3RhcnRlZCEgKEZsYXRwYWsgb3IgU25hcCB2ZXJzaW9ucyBOT1Qgc3VwcG9ydGVkKSBcblxuR25vbWUgXHUyMjY0My4xND8gaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNjk3L3BhbmVsLXdvcmxkLWNsb2NrLyIsCiAgIm5hbWUiOiAiUGFuZWwgV29ybGQgQ2xvY2sgKExpdGUpIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmxkLWNsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIndvcmxkX2Nsb2NrX2xpdGVAYWlsaW4ubmVtdWkiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "41": {"version": "17", "sha256": "1v1s3rcjava822dg4a6syx0apl77vsh7d6n44xy8nq7738s0v6pw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd29ybGQgY2xvY2sgZm9yIHRoZSBwYW5lbFxuXG5JbnN0YWxsIGdub21lLWNsb2NrcyB0byBnZXQgc3RhcnRlZCEgKEZsYXRwYWsgb3IgU25hcCB2ZXJzaW9ucyBOT1Qgc3VwcG9ydGVkKSBcblxuR25vbWUgXHUyMjY0My4xND8gaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNjk3L3BhbmVsLXdvcmxkLWNsb2NrLyIsCiAgIm5hbWUiOiAiUGFuZWwgV29ybGQgQ2xvY2sgKExpdGUpIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmxkLWNsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIndvcmxkX2Nsb2NrX2xpdGVAYWlsaW4ubmVtdWkiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "42": {"version": "17", "sha256": "1v1s3rcjava822dg4a6syx0apl77vsh7d6n44xy8nq7738s0v6pw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgd29ybGQgY2xvY2sgZm9yIHRoZSBwYW5lbFxuXG5JbnN0YWxsIGdub21lLWNsb2NrcyB0byBnZXQgc3RhcnRlZCEgKEZsYXRwYWsgb3IgU25hcCB2ZXJzaW9ucyBOT1Qgc3VwcG9ydGVkKSBcblxuR25vbWUgXHUyMjY0My4xND8gaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNjk3L3BhbmVsLXdvcmxkLWNsb2NrLyIsCiAgIm5hbWUiOiAiUGFuZWwgV29ybGQgQ2xvY2sgKExpdGUpIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmxkLWNsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIndvcmxkX2Nsb2NrX2xpdGVAYWlsaW4ubmVtdWkiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
 , {"uuid": "dim-on-battery@nailfarmer.nailfarmer.com", "name": "Dim On Battery Power", "pname": "dim-on-battery-power", "description": "Automatically dims the screen when the machine is running on battery power.", "link": "https://extensions.gnome.org/extension/947/dim-on-battery-power/", "shell_version_map": {"38": {"version": "26", "sha256": "0nh8z4by722b9f11lk8akgwz1d8dm1v4r4129lbbvfm2qgg2f1mi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgZGltcyB0aGUgc2NyZWVuIHdoZW4gdGhlIG1hY2hpbmUgaXMgcnVubmluZyBvbiBiYXR0ZXJ5IHBvd2VyLiIsCiAgIm5hbWUiOiAiRGltIE9uIEJhdHRlcnkgUG93ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL25haWxmYXJtZXIvZ25vbWUtc2hlbGwtZGltLW9uLWJhdHRlcnktZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJkaW0tb24tYmF0dGVyeUBuYWlsZmFybWVyLm5haWxmYXJtZXIuY29tIiwKICAidmVyc2lvbiI6IDI2Cn0="}, "40": {"version": "26", "sha256": "0nh8z4by722b9f11lk8akgwz1d8dm1v4r4129lbbvfm2qgg2f1mi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgZGltcyB0aGUgc2NyZWVuIHdoZW4gdGhlIG1hY2hpbmUgaXMgcnVubmluZyBvbiBiYXR0ZXJ5IHBvd2VyLiIsCiAgIm5hbWUiOiAiRGltIE9uIEJhdHRlcnkgUG93ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL25haWxmYXJtZXIvZ25vbWUtc2hlbGwtZGltLW9uLWJhdHRlcnktZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJkaW0tb24tYmF0dGVyeUBuYWlsZmFybWVyLm5haWxmYXJtZXIuY29tIiwKICAidmVyc2lvbiI6IDI2Cn0="}, "41": {"version": "26", "sha256": "0nh8z4by722b9f11lk8akgwz1d8dm1v4r4129lbbvfm2qgg2f1mi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgZGltcyB0aGUgc2NyZWVuIHdoZW4gdGhlIG1hY2hpbmUgaXMgcnVubmluZyBvbiBiYXR0ZXJ5IHBvd2VyLiIsCiAgIm5hbWUiOiAiRGltIE9uIEJhdHRlcnkgUG93ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL25haWxmYXJtZXIvZ25vbWUtc2hlbGwtZGltLW9uLWJhdHRlcnktZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJkaW0tb24tYmF0dGVyeUBuYWlsZmFybWVyLm5haWxmYXJtZXIuY29tIiwKICAidmVyc2lvbiI6IDI2Cn0="}}}
 , {"uuid": "bottompanel@tmoer93", "name": "BottomPanel", "pname": "bottompanel", "description": "Moves the GNOME panel to the bottom of the screen\n\nSource here: https://github.com/Thoma5/gnome-shell-extension-bottompanel", "link": "https://extensions.gnome.org/extension/949/bottompanel/", "shell_version_map": {"38": {"version": "11", "sha256": "0r4z1pww6w8q0f7gzsmc363hd2178r40ifsppyigj67mwwik3mkq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRoZSBHTk9NRSBwYW5lbCB0byB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW5cblxuU291cmNlIGhlcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9UaG9tYTUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWJvdHRvbXBhbmVsIiwKICAibmFtZSI6ICJCb3R0b21QYW5lbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJib3R0b21wYW5lbEB0bW9lcjkzIiwKICAidmVyc2lvbiI6IDExCn0="}}}
 , {"uuid": "dejadup-backup@fthx", "name": "Déjà Dup Backup Button", "pname": "deja-dup-backup-button", "description": "Button that directly starts Déjà Dup backup, following Déjà Dup backup settings.\n\n It simply runs 'deja-dup --backup' and shows Déjà Dup window during backup.", "link": "https://extensions.gnome.org/extension/955/deja-dup-backup-button/", "shell_version_map": {"38": {"version": "7", "sha256": "1d5xl18297zlw6g6jqwvwf32yiiqbz7jqyb4pz691d8ngqvvlwpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJ1dHRvbiB0aGF0IGRpcmVjdGx5IHN0YXJ0cyBEXHUwMGU5alx1MDBlMCBEdXAgYmFja3VwLCBmb2xsb3dpbmcgRFx1MDBlOWpcdTAwZTAgRHVwIGJhY2t1cCBzZXR0aW5ncy5cblxuIEl0IHNpbXBseSBydW5zICdkZWphLWR1cCAtLWJhY2t1cCcgYW5kIHNob3dzIERcdTAwZTlqXHUwMGUwIER1cCB3aW5kb3cgZHVyaW5nIGJhY2t1cC4iLAogICJuYW1lIjogIkRcdTAwZTlqXHUwMGUwIER1cCBCYWNrdXAgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvZGVqYWR1cC1iYWNrdXAiLAogICJ1dWlkIjogImRlamFkdXAtYmFja3VwQGZ0aHgiLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "7", "sha256": "1d5xl18297zlw6g6jqwvwf32yiiqbz7jqyb4pz691d8ngqvvlwpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJ1dHRvbiB0aGF0IGRpcmVjdGx5IHN0YXJ0cyBEXHUwMGU5alx1MDBlMCBEdXAgYmFja3VwLCBmb2xsb3dpbmcgRFx1MDBlOWpcdTAwZTAgRHVwIGJhY2t1cCBzZXR0aW5ncy5cblxuIEl0IHNpbXBseSBydW5zICdkZWphLWR1cCAtLWJhY2t1cCcgYW5kIHNob3dzIERcdTAwZTlqXHUwMGUwIER1cCB3aW5kb3cgZHVyaW5nIGJhY2t1cC4iLAogICJuYW1lIjogIkRcdTAwZTlqXHUwMGUwIER1cCBCYWNrdXAgQnV0dG9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvZGVqYWR1cC1iYWNrdXAiLAogICJ1dWlkIjogImRlamFkdXAtYmFja3VwQGZ0aHgiLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"uuid": "ISS_Above@mcepl.cepl.eu", "name": "ISS Above", "pname": "iss-above", "description": "Shows an icon when ISS is above you (+- 1000km)", "link": "https://extensions.gnome.org/extension/956/iss-above/", "shell_version_map": {"40": {"version": "4", "sha256": "00r5clklx8wbwdqyniz1lxf864jk71q7j36icq6jkp65v8av5cjn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGFuIGljb24gd2hlbiBJU1MgaXMgYWJvdmUgeW91ICgrLSAxMDAwa20pIiwKICAibmFtZSI6ICJJU1MgQWJvdmUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vbWNlcGwvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLUlTU19BYm92ZS8iLAogICJ1dWlkIjogIklTU19BYm92ZUBtY2VwbC5jZXBsLmV1IiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "switcher@landau.fi", "name": "Switcher", "pname": "switcher", "description": "Switch windows or launch applications quickly by typing\n\nUse the configured global hotkey (Super+w by default) to open a list of current windows. Type a part of the name or title of the application window you want to activate and hit enter or click on the item you wish to activate. You can use the arrow keys to navigate among the filtered selection and type several space separated search terms to filter further. If your search matches launchable apps, those are shown in the list too. Use Esc or click anywhere outside the switcher to cancel.\n\nYou can customize the look and feel and functionality in the preferences.", "link": "https://extensions.gnome.org/extension/973/switcher/", "shell_version_map": {"38": {"version": "32", "sha256": "188bfj4b0kslja757fc70xhjqj5blk2jcdjfd2pvm6g2cxslfjg6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIGxhdW5jaCBhcHBsaWNhdGlvbnMgcXVpY2tseSBieSB0eXBpbmdcblxuVXNlIHRoZSBjb25maWd1cmVkIGdsb2JhbCBob3RrZXkgKFN1cGVyK3cgYnkgZGVmYXVsdCkgdG8gb3BlbiBhIGxpc3Qgb2YgY3VycmVudCB3aW5kb3dzLiBUeXBlIGEgcGFydCBvZiB0aGUgbmFtZSBvciB0aXRsZSBvZiB0aGUgYXBwbGljYXRpb24gd2luZG93IHlvdSB3YW50IHRvIGFjdGl2YXRlIGFuZCBoaXQgZW50ZXIgb3IgY2xpY2sgb24gdGhlIGl0ZW0geW91IHdpc2ggdG8gYWN0aXZhdGUuIFlvdSBjYW4gdXNlIHRoZSBhcnJvdyBrZXlzIHRvIG5hdmlnYXRlIGFtb25nIHRoZSBmaWx0ZXJlZCBzZWxlY3Rpb24gYW5kIHR5cGUgc2V2ZXJhbCBzcGFjZSBzZXBhcmF0ZWQgc2VhcmNoIHRlcm1zIHRvIGZpbHRlciBmdXJ0aGVyLiBJZiB5b3VyIHNlYXJjaCBtYXRjaGVzIGxhdW5jaGFibGUgYXBwcywgdGhvc2UgYXJlIHNob3duIGluIHRoZSBsaXN0IHRvby4gVXNlIEVzYyBvciBjbGljayBhbnl3aGVyZSBvdXRzaWRlIHRoZSBzd2l0Y2hlciB0byBjYW5jZWwuXG5cbllvdSBjYW4gY3VzdG9taXplIHRoZSBsb29rIGFuZCBmZWVsIGFuZCBmdW5jdGlvbmFsaXR5IGluIHRoZSBwcmVmZXJlbmNlcy4iLAogICJuYW1lIjogIlN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFuaWVsbGFuZGF1L3N3aXRjaGVyIiwKICAidXVpZCI6ICJzd2l0Y2hlckBsYW5kYXUuZmkiLAogICJ2ZXJzaW9uIjogMzIKfQ=="}, "40": {"version": "33", "sha256": "1dk91bvmjqr4hrsldb6ikvrd6ihk5flbg8wfhfnmq4c18kynsv9i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIGxhdW5jaCBhcHBsaWNhdGlvbnMgcXVpY2tseSBieSB0eXBpbmdcblxuVXNlIHRoZSBjb25maWd1cmVkIGdsb2JhbCBob3RrZXkgKFN1cGVyK3cgYnkgZGVmYXVsdCkgdG8gb3BlbiBhIGxpc3Qgb2YgY3VycmVudCB3aW5kb3dzLiBUeXBlIGEgcGFydCBvZiB0aGUgbmFtZSBvciB0aXRsZSBvZiB0aGUgYXBwbGljYXRpb24gd2luZG93IHlvdSB3YW50IHRvIGFjdGl2YXRlIGFuZCBoaXQgZW50ZXIgb3IgY2xpY2sgb24gdGhlIGl0ZW0geW91IHdpc2ggdG8gYWN0aXZhdGUuIFlvdSBjYW4gdXNlIHRoZSBhcnJvdyBrZXlzIHRvIG5hdmlnYXRlIGFtb25nIHRoZSBmaWx0ZXJlZCBzZWxlY3Rpb24gYW5kIHR5cGUgc2V2ZXJhbCBzcGFjZSBzZXBhcmF0ZWQgc2VhcmNoIHRlcm1zIHRvIGZpbHRlciBmdXJ0aGVyLiBJZiB5b3VyIHNlYXJjaCBtYXRjaGVzIGxhdW5jaGFibGUgYXBwcywgdGhvc2UgYXJlIHNob3duIGluIHRoZSBsaXN0IHRvby4gVXNlIEVzYyBvciBjbGljayBhbnl3aGVyZSBvdXRzaWRlIHRoZSBzd2l0Y2hlciB0byBjYW5jZWwuXG5cbllvdSBjYW4gY3VzdG9taXplIHRoZSBsb29rIGFuZCBmZWVsIGFuZCBmdW5jdGlvbmFsaXR5IGluIHRoZSBwcmVmZXJlbmNlcy4iLAogICJuYW1lIjogIlN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RhbmllbGxhbmRhdS9zd2l0Y2hlciIsCiAgInV1aWQiOiAic3dpdGNoZXJAbGFuZGF1LmZpIiwKICAidmVyc2lvbiI6IDMzCn0="}, "41": {"version": "34", "sha256": "1bgj8w7qlz4kv70k6rjmm5f5rygn2n5fp0rd29jj1wfm50hfvzg1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIGxhdW5jaCBhcHBsaWNhdGlvbnMgcXVpY2tseSBieSB0eXBpbmdcblxuVXNlIHRoZSBjb25maWd1cmVkIGdsb2JhbCBob3RrZXkgKFN1cGVyK3cgYnkgZGVmYXVsdCkgdG8gb3BlbiBhIGxpc3Qgb2YgY3VycmVudCB3aW5kb3dzLiBUeXBlIGEgcGFydCBvZiB0aGUgbmFtZSBvciB0aXRsZSBvZiB0aGUgYXBwbGljYXRpb24gd2luZG93IHlvdSB3YW50IHRvIGFjdGl2YXRlIGFuZCBoaXQgZW50ZXIgb3IgY2xpY2sgb24gdGhlIGl0ZW0geW91IHdpc2ggdG8gYWN0aXZhdGUuIFlvdSBjYW4gdXNlIHRoZSBhcnJvdyBrZXlzIHRvIG5hdmlnYXRlIGFtb25nIHRoZSBmaWx0ZXJlZCBzZWxlY3Rpb24gYW5kIHR5cGUgc2V2ZXJhbCBzcGFjZSBzZXBhcmF0ZWQgc2VhcmNoIHRlcm1zIHRvIGZpbHRlciBmdXJ0aGVyLiBJZiB5b3VyIHNlYXJjaCBtYXRjaGVzIGxhdW5jaGFibGUgYXBwcywgdGhvc2UgYXJlIHNob3duIGluIHRoZSBsaXN0IHRvby4gVXNlIEVzYyBvciBjbGljayBhbnl3aGVyZSBvdXRzaWRlIHRoZSBzd2l0Y2hlciB0byBjYW5jZWwuXG5cbllvdSBjYW4gY3VzdG9taXplIHRoZSBsb29rIGFuZCBmZWVsIGFuZCBmdW5jdGlvbmFsaXR5IGluIHRoZSBwcmVmZXJlbmNlcy4iLAogICJuYW1lIjogIlN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RhbmllbGxhbmRhdS9zd2l0Y2hlciIsCiAgInV1aWQiOiAic3dpdGNoZXJAbGFuZGF1LmZpIiwKICAidmVyc2lvbiI6IDM0Cn0="}}}
 , {"uuid": "keyboard_modifiers_status@sneetsher", "name": "Keyboard Modifiers Status", "pname": "keyboard-modifiers-status", "description": "Shows keyboard modifiers status. It's useful when sticky keys are active.", "link": "https://extensions.gnome.org/extension/975/keyboard-modifiers-status/", "shell_version_map": {"38": {"version": "13", "sha256": "0wfwy67r53ilp96yig70nf75a4bxd7cmn8gbnqlpin8virv66kfh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGtleWJvYXJkIG1vZGlmaWVycyBzdGF0dXMuIEl0J3MgdXNlZnVsIHdoZW4gc3RpY2t5IGtleXMgYXJlIGFjdGl2ZS4iLAogICJuYW1lIjogIktleWJvYXJkIE1vZGlmaWVycyBTdGF0dXMiLAogICJvcmlnaW5hbC1hdXRob3IiOiAic25lZXRzaGVyQGxvY2FsaG9zdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc25lZXRzaGVyL0tleWJvYXJkLU1vZGlmaWVycy1TdGF0dXMiLAogICJ1dWlkIjogImtleWJvYXJkX21vZGlmaWVyc19zdGF0dXNAc25lZXRzaGVyIiwKICAidmVyc2lvbiI6IDEzCn0="}, "40": {"version": "13", "sha256": "0wfwy67r53ilp96yig70nf75a4bxd7cmn8gbnqlpin8virv66kfh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGtleWJvYXJkIG1vZGlmaWVycyBzdGF0dXMuIEl0J3MgdXNlZnVsIHdoZW4gc3RpY2t5IGtleXMgYXJlIGFjdGl2ZS4iLAogICJuYW1lIjogIktleWJvYXJkIE1vZGlmaWVycyBTdGF0dXMiLAogICJvcmlnaW5hbC1hdXRob3IiOiAic25lZXRzaGVyQGxvY2FsaG9zdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc25lZXRzaGVyL0tleWJvYXJkLU1vZGlmaWVycy1TdGF0dXMiLAogICJ1dWlkIjogImtleWJvYXJkX21vZGlmaWVyc19zdGF0dXNAc25lZXRzaGVyIiwKICAidmVyc2lvbiI6IDEzCn0="}, "41": {"version": "13", "sha256": "0wfwy67r53ilp96yig70nf75a4bxd7cmn8gbnqlpin8virv66kfh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGtleWJvYXJkIG1vZGlmaWVycyBzdGF0dXMuIEl0J3MgdXNlZnVsIHdoZW4gc3RpY2t5IGtleXMgYXJlIGFjdGl2ZS4iLAogICJuYW1lIjogIktleWJvYXJkIE1vZGlmaWVycyBTdGF0dXMiLAogICJvcmlnaW5hbC1hdXRob3IiOiAic25lZXRzaGVyQGxvY2FsaG9zdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc25lZXRzaGVyL0tleWJvYXJkLU1vZGlmaWVycy1TdGF0dXMiLAogICJ1dWlkIjogImtleWJvYXJkX21vZGlmaWVyc19zdGF0dXNAc25lZXRzaGVyIiwKICAidmVyc2lvbiI6IDEzCn0="}}}
-, {"uuid": "harddiskled@bijidroid.gmail.com", "name": "Harddisk LED", "pname": "harddisk-led", "description": "Show harddisk activity (IO speed read/write and LED). Click to change modes", "link": "https://extensions.gnome.org/extension/988/harddisk-led/", "shell_version_map": {"38": {"version": "29", "sha256": "0yzvkbbkhzqlq6kdnfmfv9p7ypybmz6hyy6ksgya63ql084780j2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgaGFyZGRpc2sgYWN0aXZpdHkgKElPIHNwZWVkIHJlYWQvd3JpdGUgYW5kIExFRCkuIENsaWNrIHRvIGNoYW5nZSBtb2RlcyIsCiAgIm5hbWUiOiAiSGFyZGRpc2sgTEVEIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL2hhcmRkaXNrbGVkIiwKICAidXVpZCI6ICJoYXJkZGlza2xlZEBiaWppZHJvaWQuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI5Cn0="}, "40": {"version": "29", "sha256": "0yzvkbbkhzqlq6kdnfmfv9p7ypybmz6hyy6ksgya63ql084780j2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgaGFyZGRpc2sgYWN0aXZpdHkgKElPIHNwZWVkIHJlYWQvd3JpdGUgYW5kIExFRCkuIENsaWNrIHRvIGNoYW5nZSBtb2RlcyIsCiAgIm5hbWUiOiAiSGFyZGRpc2sgTEVEIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL2hhcmRkaXNrbGVkIiwKICAidXVpZCI6ICJoYXJkZGlza2xlZEBiaWppZHJvaWQuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI5Cn0="}, "41": {"version": "29", "sha256": "0yzvkbbkhzqlq6kdnfmfv9p7ypybmz6hyy6ksgya63ql084780j2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgaGFyZGRpc2sgYWN0aXZpdHkgKElPIHNwZWVkIHJlYWQvd3JpdGUgYW5kIExFRCkuIENsaWNrIHRvIGNoYW5nZSBtb2RlcyIsCiAgIm5hbWUiOiAiSGFyZGRpc2sgTEVEIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL2hhcmRkaXNrbGVkIiwKICAidXVpZCI6ICJoYXJkZGlza2xlZEBiaWppZHJvaWQuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI5Cn0="}}}
+, {"uuid": "harddiskled@bijidroid.gmail.com", "name": "Harddisk LED", "pname": "harddisk-led", "description": "Show harddisk activity (IO speed read/write and LED). Click to change modes", "link": "https://extensions.gnome.org/extension/988/harddisk-led/", "shell_version_map": {"38": {"version": "29", "sha256": "0yzvkbbkhzqlq6kdnfmfv9p7ypybmz6hyy6ksgya63ql084780j2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgaGFyZGRpc2sgYWN0aXZpdHkgKElPIHNwZWVkIHJlYWQvd3JpdGUgYW5kIExFRCkuIENsaWNrIHRvIGNoYW5nZSBtb2RlcyIsCiAgIm5hbWUiOiAiSGFyZGRpc2sgTEVEIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL2hhcmRkaXNrbGVkIiwKICAidXVpZCI6ICJoYXJkZGlza2xlZEBiaWppZHJvaWQuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI5Cn0="}, "40": {"version": "29", "sha256": "0yzvkbbkhzqlq6kdnfmfv9p7ypybmz6hyy6ksgya63ql084780j2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgaGFyZGRpc2sgYWN0aXZpdHkgKElPIHNwZWVkIHJlYWQvd3JpdGUgYW5kIExFRCkuIENsaWNrIHRvIGNoYW5nZSBtb2RlcyIsCiAgIm5hbWUiOiAiSGFyZGRpc2sgTEVEIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL2hhcmRkaXNrbGVkIiwKICAidXVpZCI6ICJoYXJkZGlza2xlZEBiaWppZHJvaWQuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI5Cn0="}, "41": {"version": "29", "sha256": "0yzvkbbkhzqlq6kdnfmfv9p7ypybmz6hyy6ksgya63ql084780j2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgaGFyZGRpc2sgYWN0aXZpdHkgKElPIHNwZWVkIHJlYWQvd3JpdGUgYW5kIExFRCkuIENsaWNrIHRvIGNoYW5nZSBtb2RlcyIsCiAgIm5hbWUiOiAiSGFyZGRpc2sgTEVEIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL2hhcmRkaXNrbGVkIiwKICAidXVpZCI6ICJoYXJkZGlza2xlZEBiaWppZHJvaWQuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI5Cn0="}, "42": {"version": "25", "sha256": "0gywazb991p8ngwhz9q4baifhhdi32ajxh82w9hr6y6437s8a1rs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgaGFyZGRpc2sgYWN0aXZpdHkgKElPIHNwZWVkIHJlYWQvd3JpdGUgYW5kIExFRCkuIENsaWNrIHRvIGNoYW5nZSBtb2RlcyIsCiAgIm5hbWUiOiAiSGFyZGRpc2sgTEVEIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIsCiAgICAiNDQiLAogICAgIjQ1IiwKICAgICI0NiIsCiAgICAiNDciLAogICAgIjQ4IiwKICAgICI0OSIsCiAgICAiNTAiLAogICAgIjUxIiwKICAgICI1MiIsCiAgICAiNTMiLAogICAgIjU0IiwKICAgICI1NSIsCiAgICAiNTYiLAogICAgIjU3IiwKICAgICI1OCIsCiAgICAiNTkiLAogICAgIjYwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmlqaS9oYXJkZGlza2xlZCIsCiAgInV1aWQiOiAiaGFyZGRpc2tsZWRAYmlqaWRyb2lkLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyNQp9"}}}
 , {"uuid": "syncthingicon@jay.strict@posteo.de", "name": "Syncthing Icon", "pname": "syncthing-icon", "description": "Display Syncthing Icon in Top Bar", "link": "https://extensions.gnome.org/extension/989/syncthing-icon/", "shell_version_map": {"40": {"version": "33", "sha256": "0lg2k9p033w9dff5g16xai9rvjmw85qvhrx17dw8f228nfm93fik", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgU3luY3RoaW5nIEljb24gaW4gVG9wIEJhciIsCiAgIm5hbWUiOiAiU3luY3RoaW5nIEljb24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3luY3RoaW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qYXlzdHJpY3Rvci9nbm9tZS1zaGVsbC1leHRlbnNpb24tc3luY3RoaW5nIiwKICAidXVpZCI6ICJzeW5jdGhpbmdpY29uQGpheS5zdHJpY3RAcG9zdGVvLmRlIiwKICAidmVyc2lvbiI6IDMzCn0="}, "41": {"version": "33", "sha256": "0lg2k9p033w9dff5g16xai9rvjmw85qvhrx17dw8f228nfm93fik", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgU3luY3RoaW5nIEljb24gaW4gVG9wIEJhciIsCiAgIm5hbWUiOiAiU3luY3RoaW5nIEljb24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3luY3RoaW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qYXlzdHJpY3Rvci9nbm9tZS1zaGVsbC1leHRlbnNpb24tc3luY3RoaW5nIiwKICAidXVpZCI6ICJzeW5jdGhpbmdpY29uQGpheS5zdHJpY3RAcG9zdGVvLmRlIiwKICAidmVyc2lvbiI6IDMzCn0="}}}
 , {"uuid": "window-search-provider@quelltexter.org", "name": "Window Search Provider", "pname": "window-search-provider", "description": "Provide active windows as search results in overview", "link": "https://extensions.gnome.org/extension/1001/window-search-provider/", "shell_version_map": {"38": {"version": "2", "sha256": "030s38akm3fw7nq9v4wfgzhw716b51l2z3szns0gcwc0gx5zpfjv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgYWN0aXZlIHdpbmRvd3MgYXMgc2VhcmNoIHJlc3VsdHMgaW4gb3ZlcnZpZXciLAogICJuYW1lIjogIldpbmRvdyBTZWFyY2ggUHJvdmlkZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjMuNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rbG9yZW56L2dub21lLXNoZWxsLXdpbmRvdy1zZWFyY2gtcHJvdmlkZXIiLAogICJ1dWlkIjogIndpbmRvdy1zZWFyY2gtcHJvdmlkZXJAcXVlbGx0ZXh0ZXIub3JnIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "windowIsReady_Remover@nunofarruca@gmail.com", "name": "Window Is Ready - Notification Remover", "pname": "window-is-ready-notification-remover", "description": "Removes window is ready Notification", "link": "https://extensions.gnome.org/extension/1007/window-is-ready-notification-remover/", "shell_version_map": {"38": {"version": "13", "sha256": "1wxhdbvra0sc22wja9pcrsj5q4ny4iy4d7axlqh7yvm00zp72f3g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZXMgd2luZG93IGlzIHJlYWR5IE5vdGlmaWNhdGlvbiIsCiAgImxpY2Vuc2UiOiAiQXBhY2hlLTIuMCIsCiAgIm5hbWUiOiAiV2luZG93IElzIFJlYWR5IC0gTm90aWZpY2F0aW9uIFJlbW92ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL251bm9mYXJydWNhL1dpbmRvd0lzUmVhZHlfUmVtb3ZlciIsCiAgInV1aWQiOiAid2luZG93SXNSZWFkeV9SZW1vdmVyQG51bm9mYXJydWNhQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}, "40": {"version": "13", "sha256": "1wxhdbvra0sc22wja9pcrsj5q4ny4iy4d7axlqh7yvm00zp72f3g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZXMgd2luZG93IGlzIHJlYWR5IE5vdGlmaWNhdGlvbiIsCiAgImxpY2Vuc2UiOiAiQXBhY2hlLTIuMCIsCiAgIm5hbWUiOiAiV2luZG93IElzIFJlYWR5IC0gTm90aWZpY2F0aW9uIFJlbW92ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL251bm9mYXJydWNhL1dpbmRvd0lzUmVhZHlfUmVtb3ZlciIsCiAgInV1aWQiOiAid2luZG93SXNSZWFkeV9SZW1vdmVyQG51bm9mYXJydWNhQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}, "41": {"version": "13", "sha256": "1wxhdbvra0sc22wja9pcrsj5q4ny4iy4d7axlqh7yvm00zp72f3g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZXMgd2luZG93IGlzIHJlYWR5IE5vdGlmaWNhdGlvbiIsCiAgImxpY2Vuc2UiOiAiQXBhY2hlLTIuMCIsCiAgIm5hbWUiOiAiV2luZG93IElzIFJlYWR5IC0gTm90aWZpY2F0aW9uIFJlbW92ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL251bm9mYXJydWNhL1dpbmRvd0lzUmVhZHlfUmVtb3ZlciIsCiAgInV1aWQiOiAid2luZG93SXNSZWFkeV9SZW1vdmVyQG51bm9mYXJydWNhQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}}}
-, {"uuid": "arch-update@RaphaelRochet", "name": "Arch Linux Updates Indicator", "pname": "archlinux-updates-indicator", "description": "Update indicator for Arch Linux and GNOME Shell.\n** Note : you now need to install the package pacman-contrib to use the checkupdates script. **\n  Can support AUR or other distros by changing command used to check for and apply updates.\n See README about Gnome42 Console", "link": "https://extensions.gnome.org/extension/1010/archlinux-updates-indicator/", "shell_version_map": {"38": {"version": "39", "sha256": "0cm66wacw6qpf0lpd38hnic1ydjg11za6pq1bprpm5r3sdl7bmhg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZGF0ZSBpbmRpY2F0b3IgZm9yIEFyY2ggTGludXggYW5kIEdOT01FIFNoZWxsLlxuKiogTm90ZSA6IHlvdSBub3cgbmVlZCB0byBpbnN0YWxsIHRoZSBwYWNrYWdlIHBhY21hbi1jb250cmliIHRvIHVzZSB0aGUgY2hlY2t1cGRhdGVzIHNjcmlwdC4gKipcbiAgQ2FuIHN1cHBvcnQgQVVSIG9yIG90aGVyIGRpc3Ryb3MgYnkgY2hhbmdpbmcgY29tbWFuZCB1c2VkIHRvIGNoZWNrIGZvciBhbmQgYXBwbHkgdXBkYXRlcy5cbiBTZWUgUkVBRE1FIGFib3V0IEdub21lNDIgQ29uc29sZSIsCiAgIm5hbWUiOiAiQXJjaCBMaW51eCBVcGRhdGVzIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNi4xIiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUmFwaGFlbFJvY2hldC9hcmNoLXVwZGF0ZSIsCiAgInV1aWQiOiAiYXJjaC11cGRhdGVAUmFwaGFlbFJvY2hldCIsCiAgInZlcnNpb24iOiAzOQp9"}, "40": {"version": "47", "sha256": "1c7fl0s2izqfw74fnnw44qrsd56l0vj51bd5lk9l3mfcxi6c2sk1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZGF0ZSBpbmRpY2F0b3IgZm9yIEFyY2ggTGludXggYW5kIEdOT01FIFNoZWxsLlxuKiogTm90ZSA6IHlvdSBub3cgbmVlZCB0byBpbnN0YWxsIHRoZSBwYWNrYWdlIHBhY21hbi1jb250cmliIHRvIHVzZSB0aGUgY2hlY2t1cGRhdGVzIHNjcmlwdC4gKipcbiAgQ2FuIHN1cHBvcnQgQVVSIG9yIG90aGVyIGRpc3Ryb3MgYnkgY2hhbmdpbmcgY29tbWFuZCB1c2VkIHRvIGNoZWNrIGZvciBhbmQgYXBwbHkgdXBkYXRlcy5cbiBTZWUgUkVBRE1FIGFib3V0IEdub21lNDIgQ29uc29sZSIsCiAgIm5hbWUiOiAiQXJjaCBMaW51eCBVcGRhdGVzIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JhcGhhZWxSb2NoZXQvYXJjaC11cGRhdGUiLAogICJ1dWlkIjogImFyY2gtdXBkYXRlQFJhcGhhZWxSb2NoZXQiLAogICJ2ZXJzaW9uIjogNDcKfQ=="}, "41": {"version": "47", "sha256": "1c7fl0s2izqfw74fnnw44qrsd56l0vj51bd5lk9l3mfcxi6c2sk1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZGF0ZSBpbmRpY2F0b3IgZm9yIEFyY2ggTGludXggYW5kIEdOT01FIFNoZWxsLlxuKiogTm90ZSA6IHlvdSBub3cgbmVlZCB0byBpbnN0YWxsIHRoZSBwYWNrYWdlIHBhY21hbi1jb250cmliIHRvIHVzZSB0aGUgY2hlY2t1cGRhdGVzIHNjcmlwdC4gKipcbiAgQ2FuIHN1cHBvcnQgQVVSIG9yIG90aGVyIGRpc3Ryb3MgYnkgY2hhbmdpbmcgY29tbWFuZCB1c2VkIHRvIGNoZWNrIGZvciBhbmQgYXBwbHkgdXBkYXRlcy5cbiBTZWUgUkVBRE1FIGFib3V0IEdub21lNDIgQ29uc29sZSIsCiAgIm5hbWUiOiAiQXJjaCBMaW51eCBVcGRhdGVzIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JhcGhhZWxSb2NoZXQvYXJjaC11cGRhdGUiLAogICJ1dWlkIjogImFyY2gtdXBkYXRlQFJhcGhhZWxSb2NoZXQiLAogICJ2ZXJzaW9uIjogNDcKfQ=="}}}
+, {"uuid": "arch-update@RaphaelRochet", "name": "Arch Linux Updates Indicator", "pname": "archlinux-updates-indicator", "description": "Update indicator for Arch Linux and GNOME Shell.\n** Note : you now need to install the package pacman-contrib to use the checkupdates script. **\n  Can support AUR or other distros by changing command used to check for and apply updates.\n See README about Gnome42 Console", "link": "https://extensions.gnome.org/extension/1010/archlinux-updates-indicator/", "shell_version_map": {"38": {"version": "39", "sha256": "0cm66wacw6qpf0lpd38hnic1ydjg11za6pq1bprpm5r3sdl7bmhg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZGF0ZSBpbmRpY2F0b3IgZm9yIEFyY2ggTGludXggYW5kIEdOT01FIFNoZWxsLlxuKiogTm90ZSA6IHlvdSBub3cgbmVlZCB0byBpbnN0YWxsIHRoZSBwYWNrYWdlIHBhY21hbi1jb250cmliIHRvIHVzZSB0aGUgY2hlY2t1cGRhdGVzIHNjcmlwdC4gKipcbiAgQ2FuIHN1cHBvcnQgQVVSIG9yIG90aGVyIGRpc3Ryb3MgYnkgY2hhbmdpbmcgY29tbWFuZCB1c2VkIHRvIGNoZWNrIGZvciBhbmQgYXBwbHkgdXBkYXRlcy5cbiBTZWUgUkVBRE1FIGFib3V0IEdub21lNDIgQ29uc29sZSIsCiAgIm5hbWUiOiAiQXJjaCBMaW51eCBVcGRhdGVzIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNi4xIiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUmFwaGFlbFJvY2hldC9hcmNoLXVwZGF0ZSIsCiAgInV1aWQiOiAiYXJjaC11cGRhdGVAUmFwaGFlbFJvY2hldCIsCiAgInZlcnNpb24iOiAzOQp9"}, "40": {"version": "47", "sha256": "1c7fl0s2izqfw74fnnw44qrsd56l0vj51bd5lk9l3mfcxi6c2sk1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZGF0ZSBpbmRpY2F0b3IgZm9yIEFyY2ggTGludXggYW5kIEdOT01FIFNoZWxsLlxuKiogTm90ZSA6IHlvdSBub3cgbmVlZCB0byBpbnN0YWxsIHRoZSBwYWNrYWdlIHBhY21hbi1jb250cmliIHRvIHVzZSB0aGUgY2hlY2t1cGRhdGVzIHNjcmlwdC4gKipcbiAgQ2FuIHN1cHBvcnQgQVVSIG9yIG90aGVyIGRpc3Ryb3MgYnkgY2hhbmdpbmcgY29tbWFuZCB1c2VkIHRvIGNoZWNrIGZvciBhbmQgYXBwbHkgdXBkYXRlcy5cbiBTZWUgUkVBRE1FIGFib3V0IEdub21lNDIgQ29uc29sZSIsCiAgIm5hbWUiOiAiQXJjaCBMaW51eCBVcGRhdGVzIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JhcGhhZWxSb2NoZXQvYXJjaC11cGRhdGUiLAogICJ1dWlkIjogImFyY2gtdXBkYXRlQFJhcGhhZWxSb2NoZXQiLAogICJ2ZXJzaW9uIjogNDcKfQ=="}, "41": {"version": "47", "sha256": "1c7fl0s2izqfw74fnnw44qrsd56l0vj51bd5lk9l3mfcxi6c2sk1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZGF0ZSBpbmRpY2F0b3IgZm9yIEFyY2ggTGludXggYW5kIEdOT01FIFNoZWxsLlxuKiogTm90ZSA6IHlvdSBub3cgbmVlZCB0byBpbnN0YWxsIHRoZSBwYWNrYWdlIHBhY21hbi1jb250cmliIHRvIHVzZSB0aGUgY2hlY2t1cGRhdGVzIHNjcmlwdC4gKipcbiAgQ2FuIHN1cHBvcnQgQVVSIG9yIG90aGVyIGRpc3Ryb3MgYnkgY2hhbmdpbmcgY29tbWFuZCB1c2VkIHRvIGNoZWNrIGZvciBhbmQgYXBwbHkgdXBkYXRlcy5cbiBTZWUgUkVBRE1FIGFib3V0IEdub21lNDIgQ29uc29sZSIsCiAgIm5hbWUiOiAiQXJjaCBMaW51eCBVcGRhdGVzIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JhcGhhZWxSb2NoZXQvYXJjaC11cGRhdGUiLAogICJ1dWlkIjogImFyY2gtdXBkYXRlQFJhcGhhZWxSb2NoZXQiLAogICJ2ZXJzaW9uIjogNDcKfQ=="}, "42": {"version": "47", "sha256": "1c7fl0s2izqfw74fnnw44qrsd56l0vj51bd5lk9l3mfcxi6c2sk1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZGF0ZSBpbmRpY2F0b3IgZm9yIEFyY2ggTGludXggYW5kIEdOT01FIFNoZWxsLlxuKiogTm90ZSA6IHlvdSBub3cgbmVlZCB0byBpbnN0YWxsIHRoZSBwYWNrYWdlIHBhY21hbi1jb250cmliIHRvIHVzZSB0aGUgY2hlY2t1cGRhdGVzIHNjcmlwdC4gKipcbiAgQ2FuIHN1cHBvcnQgQVVSIG9yIG90aGVyIGRpc3Ryb3MgYnkgY2hhbmdpbmcgY29tbWFuZCB1c2VkIHRvIGNoZWNrIGZvciBhbmQgYXBwbHkgdXBkYXRlcy5cbiBTZWUgUkVBRE1FIGFib3V0IEdub21lNDIgQ29uc29sZSIsCiAgIm5hbWUiOiAiQXJjaCBMaW51eCBVcGRhdGVzIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JhcGhhZWxSb2NoZXQvYXJjaC11cGRhdGUiLAogICJ1dWlkIjogImFyY2gtdXBkYXRlQFJhcGhhZWxSb2NoZXQiLAogICJ2ZXJzaW9uIjogNDcKfQ=="}}}
 , {"uuid": "dynamic-panel-transparency@rockon999.github.io", "name": "Dynamic Panel Transparency", "pname": "dynamic-panel-transparency", "description": "Miss dynamic panel transparency in 3.32 and up? Try the original dynamic panel with much more customization! This extension will fade your top panel to nothingness when there are no maximized windows present! Never again will the panel be abruptly darkened.\n\nMay be incompatible with some extensions that make extensive changes to the panel.\n\nIf your theme isn't working correctly with this extension enable 'Remove Excessive Panel Styling' in the Background section of preferences. This particularly impacts the default *Ubuntu* theme!", "link": "https://extensions.gnome.org/extension/1011/dynamic-panel-transparency/", "shell_version_map": {"38": {"version": "34", "sha256": "10w5kvmspy4rp4jnwx0rj2crbdyi1lxv81vhi8zx490fhwgmlkvl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pc3MgZHluYW1pYyBwYW5lbCB0cmFuc3BhcmVuY3kgaW4gMy4zMiBhbmQgdXA/IFRyeSB0aGUgb3JpZ2luYWwgZHluYW1pYyBwYW5lbCB3aXRoIG11Y2ggbW9yZSBjdXN0b21pemF0aW9uISBUaGlzIGV4dGVuc2lvbiB3aWxsIGZhZGUgeW91ciB0b3AgcGFuZWwgdG8gbm90aGluZ25lc3Mgd2hlbiB0aGVyZSBhcmUgbm8gbWF4aW1pemVkIHdpbmRvd3MgcHJlc2VudCEgTmV2ZXIgYWdhaW4gd2lsbCB0aGUgcGFuZWwgYmUgYWJydXB0bHkgZGFya2VuZWQuXG5cbk1heSBiZSBpbmNvbXBhdGlibGUgd2l0aCBzb21lIGV4dGVuc2lvbnMgdGhhdCBtYWtlIGV4dGVuc2l2ZSBjaGFuZ2VzIHRvIHRoZSBwYW5lbC5cblxuSWYgeW91ciB0aGVtZSBpc24ndCB3b3JraW5nIGNvcnJlY3RseSB3aXRoIHRoaXMgZXh0ZW5zaW9uIGVuYWJsZSAnUmVtb3ZlIEV4Y2Vzc2l2ZSBQYW5lbCBTdHlsaW5nJyBpbiB0aGUgQmFja2dyb3VuZCBzZWN0aW9uIG9mIHByZWZlcmVuY2VzLiBUaGlzIHBhcnRpY3VsYXJseSBpbXBhY3RzIHRoZSBkZWZhdWx0ICpVYnVudHUqIHRoZW1lISIsCiAgImdldHRleHQtZG9tYWluIjogImR5bmFtaWMtcGFuZWwtdHJhbnNwYXJlbmN5IiwKICAibmFtZSI6ICJEeW5hbWljIFBhbmVsIFRyYW5zcGFyZW5jeSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5keW5hbWljLXBhbmVsLXRyYW5zcGFyZW5jeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V3bHNoL2R5bmFtaWMtcGFuZWwtdHJhbnNwYXJlbmN5LyIsCiAgInV1aWQiOiAiZHluYW1pYy1wYW5lbC10cmFuc3BhcmVuY3lAcm9ja29uOTk5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAzNAp9"}, "40": {"version": "35", "sha256": "1znc564xd7n4k2klfc0kkip6hmadqdsa50p0sq0717h407m9p0vx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pc3MgZHluYW1pYyBwYW5lbCB0cmFuc3BhcmVuY3kgaW4gMy4zMiBhbmQgdXA/IFRyeSB0aGUgb3JpZ2luYWwgZHluYW1pYyBwYW5lbCB3aXRoIG11Y2ggbW9yZSBjdXN0b21pemF0aW9uISBUaGlzIGV4dGVuc2lvbiB3aWxsIGZhZGUgeW91ciB0b3AgcGFuZWwgdG8gbm90aGluZ25lc3Mgd2hlbiB0aGVyZSBhcmUgbm8gbWF4aW1pemVkIHdpbmRvd3MgcHJlc2VudCEgTmV2ZXIgYWdhaW4gd2lsbCB0aGUgcGFuZWwgYmUgYWJydXB0bHkgZGFya2VuZWQuXG5cbk1heSBiZSBpbmNvbXBhdGlibGUgd2l0aCBzb21lIGV4dGVuc2lvbnMgdGhhdCBtYWtlIGV4dGVuc2l2ZSBjaGFuZ2VzIHRvIHRoZSBwYW5lbC5cblxuSWYgeW91ciB0aGVtZSBpc24ndCB3b3JraW5nIGNvcnJlY3RseSB3aXRoIHRoaXMgZXh0ZW5zaW9uIGVuYWJsZSAnUmVtb3ZlIEV4Y2Vzc2l2ZSBQYW5lbCBTdHlsaW5nJyBpbiB0aGUgQmFja2dyb3VuZCBzZWN0aW9uIG9mIHByZWZlcmVuY2VzLiBUaGlzIHBhcnRpY3VsYXJseSBpbXBhY3RzIHRoZSBkZWZhdWx0ICpVYnVudHUqIHRoZW1lISIsCiAgImdldHRleHQtZG9tYWluIjogImR5bmFtaWMtcGFuZWwtdHJhbnNwYXJlbmN5IiwKICAibmFtZSI6ICJEeW5hbWljIFBhbmVsIFRyYW5zcGFyZW5jeSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5keW5hbWljLXBhbmVsLXRyYW5zcGFyZW5jeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ld2xzaC9keW5hbWljLXBhbmVsLXRyYW5zcGFyZW5jeS8iLAogICJ1dWlkIjogImR5bmFtaWMtcGFuZWwtdHJhbnNwYXJlbmN5QHJvY2tvbjk5OS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMzUKfQ=="}}}
 , {"uuid": "icinga-checker@sosulski.net", "name": "Icinga checker", "pname": "icinga-checker", "description": "Icinga/Nagios checker", "link": "https://extensions.gnome.org/extension/1029/icinga-checker/", "shell_version_map": {"38": {"version": "12", "sha256": "194vk0i02zvsxaxw9iq63xjhdld729vrq8wwbl6i0p89xp1mcqcr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkljaW5nYS9OYWdpb3MgY2hlY2tlciIsCiAgImV4dGVuc2lvbi1pZCI6ICJpY2luZ2EtY2hlY2tlciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkljaW5nYSBjaGVja2VyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInBhd2VsQHNvc3Vsc2tpLm5ldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pY2luZ2EtY2hlY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImljaW5nYS1jaGVja2VyQHNvc3Vsc2tpLm5ldCIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "194vk0i02zvsxaxw9iq63xjhdld729vrq8wwbl6i0p89xp1mcqcr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkljaW5nYS9OYWdpb3MgY2hlY2tlciIsCiAgImV4dGVuc2lvbi1pZCI6ICJpY2luZ2EtY2hlY2tlciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkljaW5nYSBjaGVja2VyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInBhd2VsQHNvc3Vsc2tpLm5ldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pY2luZ2EtY2hlY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImljaW5nYS1jaGVja2VyQHNvc3Vsc2tpLm5ldCIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "194vk0i02zvsxaxw9iq63xjhdld729vrq8wwbl6i0p89xp1mcqcr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkljaW5nYS9OYWdpb3MgY2hlY2tlciIsCiAgImV4dGVuc2lvbi1pZCI6ICJpY2luZ2EtY2hlY2tlciIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIkljaW5nYSBjaGVja2VyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogInBhd2VsQHNvc3Vsc2tpLm5ldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pY2luZ2EtY2hlY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImljaW5nYS1jaGVja2VyQHNvc3Vsc2tpLm5ldCIsCiAgInZlcnNpb24iOiAxMgp9"}}}
 , {"uuid": "taskwhisperer-extension@infinicode.de", "name": "TaskWhisperer", "pname": "taskwhisperer", "description": "Taskwhisperer is a extension for TaskWarrior Application https://taskwarrior.org. It is to display upcoming tasks and task details as well as to create and modify them.\n", "link": "https://extensions.gnome.org/extension/1039/taskwhisperer/", "shell_version_map": {"38": {"version": "20", "sha256": "067z3j2px4rz5yspfjx2s6p5j4l1svxllclahnf3zmv1nlbhzq8a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2t3aGlzcGVyZXIgaXMgYSBleHRlbnNpb24gZm9yIFRhc2tXYXJyaW9yIEFwcGxpY2F0aW9uIGh0dHBzOi8vdGFza3dhcnJpb3Iub3JnLiBJdCBpcyB0byBkaXNwbGF5IHVwY29taW5nIHRhc2tzIGFuZCB0YXNrIGRldGFpbHMgYXMgd2VsbCBhcyB0byBjcmVhdGUgYW5kIG1vZGlmeSB0aGVtLlxuIiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJUYXNrV2hpc3BlcmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMvdGFza3doaXNwZXJlciIsCiAgInV1aWQiOiAidGFza3doaXNwZXJlci1leHRlbnNpb25AaW5maW5pY29kZS5kZSIsCiAgInZlcnNpb24iOiAyMAp9"}, "40": {"version": "20", "sha256": "067z3j2px4rz5yspfjx2s6p5j4l1svxllclahnf3zmv1nlbhzq8a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2t3aGlzcGVyZXIgaXMgYSBleHRlbnNpb24gZm9yIFRhc2tXYXJyaW9yIEFwcGxpY2F0aW9uIGh0dHBzOi8vdGFza3dhcnJpb3Iub3JnLiBJdCBpcyB0byBkaXNwbGF5IHVwY29taW5nIHRhc2tzIGFuZCB0YXNrIGRldGFpbHMgYXMgd2VsbCBhcyB0byBjcmVhdGUgYW5kIG1vZGlmeSB0aGVtLlxuIiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJUYXNrV2hpc3BlcmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMvdGFza3doaXNwZXJlciIsCiAgInV1aWQiOiAidGFza3doaXNwZXJlci1leHRlbnNpb25AaW5maW5pY29kZS5kZSIsCiAgInZlcnNpb24iOiAyMAp9"}}}
@@ -111,7 +111,7 @@
 , {"uuid": "applications-overview-tooltip@RaphaelRochet", "name": "Applications Overview Tooltip", "pname": "applications-overview-tooltip", "description": "Shows a tooltip over applications icons on applications overview with application name and/or description.", "link": "https://extensions.gnome.org/extension/1071/applications-overview-tooltip/", "shell_version_map": {"38": {"version": "11", "sha256": "0alvg0l46hls3jz3a5ic21fgbjbg0kv0nn0pkknzsgjfw5mmwz69", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgdG9vbHRpcCBvdmVyIGFwcGxpY2F0aW9ucyBpY29ucyBvbiBhcHBsaWNhdGlvbnMgb3ZlcnZpZXcgd2l0aCBhcHBsaWNhdGlvbiBuYW1lIGFuZC9vciBkZXNjcmlwdGlvbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhcHBsaWNhdGlvbnMtb3ZlcnZpZXctdG9vbHRpcCIsCiAgIm5hbWUiOiAiQXBwbGljYXRpb25zIE92ZXJ2aWV3IFRvb2x0aXAiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwbGljYXRpb25zLW92ZXJ2aWV3LXRvb2x0aXAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9SYXBoYWVsUm9jaGV0L2FwcGxpY2F0aW9ucy1vdmVydmlldy10b29sdGlwIiwKICAidXVpZCI6ICJhcHBsaWNhdGlvbnMtb3ZlcnZpZXctdG9vbHRpcEBSYXBoYWVsUm9jaGV0IiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "14", "sha256": "1vv5hvmg987vp8rdyvfff089h99m8xqrhyfbrgbipgy7862yf6lq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgdG9vbHRpcCBvdmVyIGFwcGxpY2F0aW9ucyBpY29ucyBvbiBhcHBsaWNhdGlvbnMgb3ZlcnZpZXcgd2l0aCBhcHBsaWNhdGlvbiBuYW1lIGFuZC9vciBkZXNjcmlwdGlvbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhcHBsaWNhdGlvbnMtb3ZlcnZpZXctdG9vbHRpcCIsCiAgIm5hbWUiOiAiQXBwbGljYXRpb25zIE92ZXJ2aWV3IFRvb2x0aXAiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwbGljYXRpb25zLW92ZXJ2aWV3LXRvb2x0aXAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JhcGhhZWxSb2NoZXQvYXBwbGljYXRpb25zLW92ZXJ2aWV3LXRvb2x0aXAiLAogICJ1dWlkIjogImFwcGxpY2F0aW9ucy1vdmVydmlldy10b29sdGlwQFJhcGhhZWxSb2NoZXQiLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "41": {"version": "14", "sha256": "1vv5hvmg987vp8rdyvfff089h99m8xqrhyfbrgbipgy7862yf6lq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgdG9vbHRpcCBvdmVyIGFwcGxpY2F0aW9ucyBpY29ucyBvbiBhcHBsaWNhdGlvbnMgb3ZlcnZpZXcgd2l0aCBhcHBsaWNhdGlvbiBuYW1lIGFuZC9vciBkZXNjcmlwdGlvbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhcHBsaWNhdGlvbnMtb3ZlcnZpZXctdG9vbHRpcCIsCiAgIm5hbWUiOiAiQXBwbGljYXRpb25zIE92ZXJ2aWV3IFRvb2x0aXAiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXBwbGljYXRpb25zLW92ZXJ2aWV3LXRvb2x0aXAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1JhcGhhZWxSb2NoZXQvYXBwbGljYXRpb25zLW92ZXJ2aWV3LXRvb2x0aXAiLAogICJ1dWlkIjogImFwcGxpY2F0aW9ucy1vdmVydmlldy10b29sdGlwQFJhcGhhZWxSb2NoZXQiLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
 , {"uuid": "TwitchLive_Panel@extensions.maweki.de", "name": "TwitchLive Panel", "pname": "twitchlive-panel", "description": "A panel showing whether your favorite Twitch.tv streamers are streaming.\n\nCycles through the online streamers if multiples are configured. Click on the panel and then on streamer's name to launch the stream with a custom command (your browser or some other application).\n\nNeeds curl and mogrify to fully support streamer logos. For an extension version compatible with shell version 3.30 or earlier visit our github page.", "link": "https://extensions.gnome.org/extension/1078/twitchlive-panel/", "shell_version_map": {"40": {"version": "37", "sha256": "0g1s5f3si8hlgf3m033c1c9fxydhs3wcykf4rr1pkzd54q6a8vq9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgcGFuZWwgc2hvd2luZyB3aGV0aGVyIHlvdXIgZmF2b3JpdGUgVHdpdGNoLnR2IHN0cmVhbWVycyBhcmUgc3RyZWFtaW5nLlxuXG5DeWNsZXMgdGhyb3VnaCB0aGUgb25saW5lIHN0cmVhbWVycyBpZiBtdWx0aXBsZXMgYXJlIGNvbmZpZ3VyZWQuIENsaWNrIG9uIHRoZSBwYW5lbCBhbmQgdGhlbiBvbiBzdHJlYW1lcidzIG5hbWUgdG8gbGF1bmNoIHRoZSBzdHJlYW0gd2l0aCBhIGN1c3RvbSBjb21tYW5kICh5b3VyIGJyb3dzZXIgb3Igc29tZSBvdGhlciBhcHBsaWNhdGlvbikuXG5cbk5lZWRzIGN1cmwgYW5kIG1vZ3JpZnkgdG8gZnVsbHkgc3VwcG9ydCBzdHJlYW1lciBsb2dvcy4gRm9yIGFuIGV4dGVuc2lvbiB2ZXJzaW9uIGNvbXBhdGlibGUgd2l0aCBzaGVsbCB2ZXJzaW9uIDMuMzAgb3IgZWFybGllciB2aXNpdCBvdXIgZ2l0aHViIHBhZ2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidHdpdGNobGl2ZSIsCiAgIm5hbWUiOiAiVHdpdGNoTGl2ZSBQYW5lbCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50d2l0Y2hsaXZlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYXdla2kvdHdpdGNobGl2ZS1leHRlbnNpb24iLAogICJ1dWlkIjogIlR3aXRjaExpdmVfUGFuZWxAZXh0ZW5zaW9ucy5tYXdla2kuZGUiLAogICJ2ZXJzaW9uIjogMzcKfQ=="}, "41": {"version": "37", "sha256": "0g1s5f3si8hlgf3m033c1c9fxydhs3wcykf4rr1pkzd54q6a8vq9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgcGFuZWwgc2hvd2luZyB3aGV0aGVyIHlvdXIgZmF2b3JpdGUgVHdpdGNoLnR2IHN0cmVhbWVycyBhcmUgc3RyZWFtaW5nLlxuXG5DeWNsZXMgdGhyb3VnaCB0aGUgb25saW5lIHN0cmVhbWVycyBpZiBtdWx0aXBsZXMgYXJlIGNvbmZpZ3VyZWQuIENsaWNrIG9uIHRoZSBwYW5lbCBhbmQgdGhlbiBvbiBzdHJlYW1lcidzIG5hbWUgdG8gbGF1bmNoIHRoZSBzdHJlYW0gd2l0aCBhIGN1c3RvbSBjb21tYW5kICh5b3VyIGJyb3dzZXIgb3Igc29tZSBvdGhlciBhcHBsaWNhdGlvbikuXG5cbk5lZWRzIGN1cmwgYW5kIG1vZ3JpZnkgdG8gZnVsbHkgc3VwcG9ydCBzdHJlYW1lciBsb2dvcy4gRm9yIGFuIGV4dGVuc2lvbiB2ZXJzaW9uIGNvbXBhdGlibGUgd2l0aCBzaGVsbCB2ZXJzaW9uIDMuMzAgb3IgZWFybGllciB2aXNpdCBvdXIgZ2l0aHViIHBhZ2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidHdpdGNobGl2ZSIsCiAgIm5hbWUiOiAiVHdpdGNoTGl2ZSBQYW5lbCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50d2l0Y2hsaXZlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYXdla2kvdHdpdGNobGl2ZS1leHRlbnNpb24iLAogICJ1dWlkIjogIlR3aXRjaExpdmVfUGFuZWxAZXh0ZW5zaW9ucy5tYXdla2kuZGUiLAogICJ2ZXJzaW9uIjogMzcKfQ=="}}}
 , {"uuid": "cpufreq@konkor", "name": "cpufreq", "pname": "cpufreq", "description": "System Monitor and Power Manager.\n\nThis is a lightweight system monitor and power management tool. It needs root permission to able changing governors.\n\nFeatures:\n⚫ Compatible with many hardware architectures;\n⚫ CPU Frequency monitoring;\n⚫ CPU Governor management;\n⚫ CPU Frequency speed limits;\n⚫ CPU Boost supporting;\n⚫ CPU Core Power on/off;\n⚫ Saving/Restoring settings...\n\nFor more information and how-to see README.md", "link": "https://extensions.gnome.org/extension/1082/cpufreq/", "shell_version_map": {"38": {"version": "51", "sha256": "1i6lwb82j21qx38gxy1rdv2bgn2rh6qf9hswasbf26g9k3ay3w1n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5c3RlbSBNb25pdG9yIGFuZCBQb3dlciBNYW5hZ2VyLlxuXG5UaGlzIGlzIGEgbGlnaHR3ZWlnaHQgc3lzdGVtIG1vbml0b3IgYW5kIHBvd2VyIG1hbmFnZW1lbnQgdG9vbC4gSXQgbmVlZHMgcm9vdCBwZXJtaXNzaW9uIHRvIGFibGUgY2hhbmdpbmcgZ292ZXJub3JzLlxuXG5GZWF0dXJlczpcblx1MjZhYiBDb21wYXRpYmxlIHdpdGggbWFueSBoYXJkd2FyZSBhcmNoaXRlY3R1cmVzO1xuXHUyNmFiIENQVSBGcmVxdWVuY3kgbW9uaXRvcmluZztcblx1MjZhYiBDUFUgR292ZXJub3IgbWFuYWdlbWVudDtcblx1MjZhYiBDUFUgRnJlcXVlbmN5IHNwZWVkIGxpbWl0cztcblx1MjZhYiBDUFUgQm9vc3Qgc3VwcG9ydGluZztcblx1MjZhYiBDUFUgQ29yZSBQb3dlciBvbi9vZmY7XG5cdTI2YWIgU2F2aW5nL1Jlc3RvcmluZyBzZXR0aW5ncy4uLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgaG93LXRvIHNlZSBSRUFETUUubWQiLAogICJuYW1lIjogImNwdWZyZXEiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3B1ZnJlcSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va29ua29yL2NwdWZyZXEiLAogICJ1dWlkIjogImNwdWZyZXFAa29ua29yIiwKICAidmVyc2lvbiI6IDUxCn0="}, "40": {"version": "51", "sha256": "1i6lwb82j21qx38gxy1rdv2bgn2rh6qf9hswasbf26g9k3ay3w1n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5c3RlbSBNb25pdG9yIGFuZCBQb3dlciBNYW5hZ2VyLlxuXG5UaGlzIGlzIGEgbGlnaHR3ZWlnaHQgc3lzdGVtIG1vbml0b3IgYW5kIHBvd2VyIG1hbmFnZW1lbnQgdG9vbC4gSXQgbmVlZHMgcm9vdCBwZXJtaXNzaW9uIHRvIGFibGUgY2hhbmdpbmcgZ292ZXJub3JzLlxuXG5GZWF0dXJlczpcblx1MjZhYiBDb21wYXRpYmxlIHdpdGggbWFueSBoYXJkd2FyZSBhcmNoaXRlY3R1cmVzO1xuXHUyNmFiIENQVSBGcmVxdWVuY3kgbW9uaXRvcmluZztcblx1MjZhYiBDUFUgR292ZXJub3IgbWFuYWdlbWVudDtcblx1MjZhYiBDUFUgRnJlcXVlbmN5IHNwZWVkIGxpbWl0cztcblx1MjZhYiBDUFUgQm9vc3Qgc3VwcG9ydGluZztcblx1MjZhYiBDUFUgQ29yZSBQb3dlciBvbi9vZmY7XG5cdTI2YWIgU2F2aW5nL1Jlc3RvcmluZyBzZXR0aW5ncy4uLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgaG93LXRvIHNlZSBSRUFETUUubWQiLAogICJuYW1lIjogImNwdWZyZXEiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3B1ZnJlcSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va29ua29yL2NwdWZyZXEiLAogICJ1dWlkIjogImNwdWZyZXFAa29ua29yIiwKICAidmVyc2lvbiI6IDUxCn0="}, "41": {"version": "51", "sha256": "1i6lwb82j21qx38gxy1rdv2bgn2rh6qf9hswasbf26g9k3ay3w1n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5c3RlbSBNb25pdG9yIGFuZCBQb3dlciBNYW5hZ2VyLlxuXG5UaGlzIGlzIGEgbGlnaHR3ZWlnaHQgc3lzdGVtIG1vbml0b3IgYW5kIHBvd2VyIG1hbmFnZW1lbnQgdG9vbC4gSXQgbmVlZHMgcm9vdCBwZXJtaXNzaW9uIHRvIGFibGUgY2hhbmdpbmcgZ292ZXJub3JzLlxuXG5GZWF0dXJlczpcblx1MjZhYiBDb21wYXRpYmxlIHdpdGggbWFueSBoYXJkd2FyZSBhcmNoaXRlY3R1cmVzO1xuXHUyNmFiIENQVSBGcmVxdWVuY3kgbW9uaXRvcmluZztcblx1MjZhYiBDUFUgR292ZXJub3IgbWFuYWdlbWVudDtcblx1MjZhYiBDUFUgRnJlcXVlbmN5IHNwZWVkIGxpbWl0cztcblx1MjZhYiBDUFUgQm9vc3Qgc3VwcG9ydGluZztcblx1MjZhYiBDUFUgQ29yZSBQb3dlciBvbi9vZmY7XG5cdTI2YWIgU2F2aW5nL1Jlc3RvcmluZyBzZXR0aW5ncy4uLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgaG93LXRvIHNlZSBSRUFETUUubWQiLAogICJuYW1lIjogImNwdWZyZXEiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3B1ZnJlcSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va29ua29yL2NwdWZyZXEiLAogICJ1dWlkIjogImNwdWZyZXFAa29ua29yIiwKICAidmVyc2lvbiI6IDUxCn0="}}}
-, {"uuid": "simplenetspeed@biji.extension", "name": "Simple net speed", "pname": "simple-net-speed", "description": "Simply showing network speed. Left click to change modes:\n\n1. Total net speed in bits per second\n2. Total net speed in Bytes per second\n3. Up & down speed in bits per second\n4. Up & down speed in Bytes per second\n5. Total of downloaded in Bytes (Right click to reset counter)\n\nMiddle click to change font size", "link": "https://extensions.gnome.org/extension/1085/simple-net-speed/", "shell_version_map": {"38": {"version": "25", "sha256": "1lvz86mafjpsjwypy24py369wwf5pbrgqgx1yg9yiwxy9jzsqy9k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBzaG93aW5nIG5ldHdvcmsgc3BlZWQuIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzOlxuXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gYml0cyBwZXIgc2Vjb25kXG4yLiBUb3RhbCBuZXQgc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuMy4gVXAgJiBkb3duIHNwZWVkIGluIGJpdHMgcGVyIHNlY29uZFxuNC4gVXAgJiBkb3duIHNwZWVkIGluIEJ5dGVzIHBlciBzZWNvbmRcbjUuIFRvdGFsIG9mIGRvd25sb2FkZWQgaW4gQnl0ZXMgKFJpZ2h0IGNsaWNrIHRvIHJlc2V0IGNvdW50ZXIpXG5cbk1pZGRsZSBjbGljayB0byBjaGFuZ2UgZm9udCBzaXplIiwKICAibmFtZSI6ICJTaW1wbGUgbmV0IHNwZWVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL3NpbXBsZW5ldHNwZWVkIiwKICAidXVpZCI6ICJzaW1wbGVuZXRzcGVlZEBiaWppLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyNQp9"}, "40": {"version": "25", "sha256": "1lvz86mafjpsjwypy24py369wwf5pbrgqgx1yg9yiwxy9jzsqy9k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBzaG93aW5nIG5ldHdvcmsgc3BlZWQuIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzOlxuXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gYml0cyBwZXIgc2Vjb25kXG4yLiBUb3RhbCBuZXQgc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuMy4gVXAgJiBkb3duIHNwZWVkIGluIGJpdHMgcGVyIHNlY29uZFxuNC4gVXAgJiBkb3duIHNwZWVkIGluIEJ5dGVzIHBlciBzZWNvbmRcbjUuIFRvdGFsIG9mIGRvd25sb2FkZWQgaW4gQnl0ZXMgKFJpZ2h0IGNsaWNrIHRvIHJlc2V0IGNvdW50ZXIpXG5cbk1pZGRsZSBjbGljayB0byBjaGFuZ2UgZm9udCBzaXplIiwKICAibmFtZSI6ICJTaW1wbGUgbmV0IHNwZWVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL3NpbXBsZW5ldHNwZWVkIiwKICAidXVpZCI6ICJzaW1wbGVuZXRzcGVlZEBiaWppLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyNQp9"}, "41": {"version": "25", "sha256": "1lvz86mafjpsjwypy24py369wwf5pbrgqgx1yg9yiwxy9jzsqy9k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBzaG93aW5nIG5ldHdvcmsgc3BlZWQuIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzOlxuXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gYml0cyBwZXIgc2Vjb25kXG4yLiBUb3RhbCBuZXQgc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuMy4gVXAgJiBkb3duIHNwZWVkIGluIGJpdHMgcGVyIHNlY29uZFxuNC4gVXAgJiBkb3duIHNwZWVkIGluIEJ5dGVzIHBlciBzZWNvbmRcbjUuIFRvdGFsIG9mIGRvd25sb2FkZWQgaW4gQnl0ZXMgKFJpZ2h0IGNsaWNrIHRvIHJlc2V0IGNvdW50ZXIpXG5cbk1pZGRsZSBjbGljayB0byBjaGFuZ2UgZm9udCBzaXplIiwKICAibmFtZSI6ICJTaW1wbGUgbmV0IHNwZWVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL3NpbXBsZW5ldHNwZWVkIiwKICAidXVpZCI6ICJzaW1wbGVuZXRzcGVlZEBiaWppLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyNQp9"}}}
+, {"uuid": "simplenetspeed@biji.extension", "name": "Simple net speed", "pname": "simple-net-speed", "description": "Simply showing network speed. Left click to change modes:\n\n1. Total net speed in bits per second\n2. Total net speed in Bytes per second\n3. Up & down speed in bits per second\n4. Up & down speed in Bytes per second\n5. Total of downloaded in Bytes (Right click to reset counter)\n\nMiddle click to change font size", "link": "https://extensions.gnome.org/extension/1085/simple-net-speed/", "shell_version_map": {"38": {"version": "25", "sha256": "1lvz86mafjpsjwypy24py369wwf5pbrgqgx1yg9yiwxy9jzsqy9k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBzaG93aW5nIG5ldHdvcmsgc3BlZWQuIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzOlxuXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gYml0cyBwZXIgc2Vjb25kXG4yLiBUb3RhbCBuZXQgc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuMy4gVXAgJiBkb3duIHNwZWVkIGluIGJpdHMgcGVyIHNlY29uZFxuNC4gVXAgJiBkb3duIHNwZWVkIGluIEJ5dGVzIHBlciBzZWNvbmRcbjUuIFRvdGFsIG9mIGRvd25sb2FkZWQgaW4gQnl0ZXMgKFJpZ2h0IGNsaWNrIHRvIHJlc2V0IGNvdW50ZXIpXG5cbk1pZGRsZSBjbGljayB0byBjaGFuZ2UgZm9udCBzaXplIiwKICAibmFtZSI6ICJTaW1wbGUgbmV0IHNwZWVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL3NpbXBsZW5ldHNwZWVkIiwKICAidXVpZCI6ICJzaW1wbGVuZXRzcGVlZEBiaWppLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyNQp9"}, "40": {"version": "25", "sha256": "1lvz86mafjpsjwypy24py369wwf5pbrgqgx1yg9yiwxy9jzsqy9k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBzaG93aW5nIG5ldHdvcmsgc3BlZWQuIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzOlxuXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gYml0cyBwZXIgc2Vjb25kXG4yLiBUb3RhbCBuZXQgc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuMy4gVXAgJiBkb3duIHNwZWVkIGluIGJpdHMgcGVyIHNlY29uZFxuNC4gVXAgJiBkb3duIHNwZWVkIGluIEJ5dGVzIHBlciBzZWNvbmRcbjUuIFRvdGFsIG9mIGRvd25sb2FkZWQgaW4gQnl0ZXMgKFJpZ2h0IGNsaWNrIHRvIHJlc2V0IGNvdW50ZXIpXG5cbk1pZGRsZSBjbGljayB0byBjaGFuZ2UgZm9udCBzaXplIiwKICAibmFtZSI6ICJTaW1wbGUgbmV0IHNwZWVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL3NpbXBsZW5ldHNwZWVkIiwKICAidXVpZCI6ICJzaW1wbGVuZXRzcGVlZEBiaWppLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyNQp9"}, "41": {"version": "25", "sha256": "1lvz86mafjpsjwypy24py369wwf5pbrgqgx1yg9yiwxy9jzsqy9k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBzaG93aW5nIG5ldHdvcmsgc3BlZWQuIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzOlxuXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gYml0cyBwZXIgc2Vjb25kXG4yLiBUb3RhbCBuZXQgc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuMy4gVXAgJiBkb3duIHNwZWVkIGluIGJpdHMgcGVyIHNlY29uZFxuNC4gVXAgJiBkb3duIHNwZWVkIGluIEJ5dGVzIHBlciBzZWNvbmRcbjUuIFRvdGFsIG9mIGRvd25sb2FkZWQgaW4gQnl0ZXMgKFJpZ2h0IGNsaWNrIHRvIHJlc2V0IGNvdW50ZXIpXG5cbk1pZGRsZSBjbGljayB0byBjaGFuZ2UgZm9udCBzaXplIiwKICAibmFtZSI6ICJTaW1wbGUgbmV0IHNwZWVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iaWppL3NpbXBsZW5ldHNwZWVkIiwKICAidXVpZCI6ICJzaW1wbGVuZXRzcGVlZEBiaWppLmV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiAyNQp9"}, "42": {"version": "21", "sha256": "1zi8lc57zih2b98837lsms0msl9xhnmzng0facq3wr53g9ick4df", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBseSBzaG93aW5nIG5ldHdvcmsgc3BlZWQuIExlZnQgY2xpY2sgdG8gY2hhbmdlIG1vZGVzOlxuXG4xLiBUb3RhbCBuZXQgc3BlZWQgaW4gYml0cyBwZXIgc2Vjb25kXG4yLiBUb3RhbCBuZXQgc3BlZWQgaW4gQnl0ZXMgcGVyIHNlY29uZFxuMy4gVXAgJiBkb3duIHNwZWVkIGluIGJpdHMgcGVyIHNlY29uZFxuNC4gVXAgJiBkb3duIHNwZWVkIGluIEJ5dGVzIHBlciBzZWNvbmRcbjUuIFRvdGFsIG9mIGRvd25sb2FkZWQgaW4gQnl0ZXMgKFJpZ2h0IGNsaWNrIHRvIHJlc2V0IGNvdW50ZXIpXG5cbk1pZGRsZSBjbGljayB0byBjaGFuZ2UgZm9udCBzaXplIiwKICAibmFtZSI6ICJTaW1wbGUgbmV0IHNwZWVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIiwKICAgICI0MyIsCiAgICAiNDQiLAogICAgIjQ1IiwKICAgICI0NiIsCiAgICAiNDciLAogICAgIjQ4IiwKICAgICI0OSIsCiAgICAiNTAiLAogICAgIjUxIiwKICAgICI1MiIsCiAgICAiNTMiLAogICAgIjU0IiwKICAgICI1NSIsCiAgICAiNTYiLAogICAgIjU3IiwKICAgICI1OCIsCiAgICAiNTkiLAogICAgIjYwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmlqaS9zaW1wbGVuZXRzcGVlZCIsCiAgInV1aWQiOiAic2ltcGxlbmV0c3BlZWRAYmlqaS5leHRlbnNpb24iLAogICJ2ZXJzaW9uIjogMjEKfQ=="}}}
 , {"uuid": "gnome-shell-go-to-last-workspace@github.com", "name": "Go To Last Workspace", "pname": "go-to-last-workspace", "description": "Quickly toggle between two workspaces with one key", "link": "https://extensions.gnome.org/extension/1089/go-to-last-workspace/", "shell_version_map": {"38": {"version": "7", "sha256": "19jyrfhniz65xfrwzpph4i33mwpbfshy5bc79vxd5fy4qa0p6scp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrbHkgdG9nZ2xlIGJldHdlZW4gdHdvIHdvcmtzcGFjZXMgd2l0aCBvbmUga2V5IiwKICAibmFtZSI6ICJHbyBUbyBMYXN0IFdvcmtzcGFjZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nby10by1sYXN0LXdvcmtzcGFjZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hcmphbi9nbm9tZS1zaGVsbC1nby10by1sYXN0LXdvcmtzcGFjZSIsCiAgInV1aWQiOiAiZ25vbWUtc2hlbGwtZ28tdG8tbGFzdC13b3Jrc3BhY2VAZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "19jyrfhniz65xfrwzpph4i33mwpbfshy5bc79vxd5fy4qa0p6scp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrbHkgdG9nZ2xlIGJldHdlZW4gdHdvIHdvcmtzcGFjZXMgd2l0aCBvbmUga2V5IiwKICAibmFtZSI6ICJHbyBUbyBMYXN0IFdvcmtzcGFjZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nby10by1sYXN0LXdvcmtzcGFjZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hcmphbi9nbm9tZS1zaGVsbC1nby10by1sYXN0LXdvcmtzcGFjZSIsCiAgInV1aWQiOiAiZ25vbWUtc2hlbGwtZ28tdG8tbGFzdC13b3Jrc3BhY2VAZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "KeepAwake@jepfa.de", "name": "Keep awake!", "pname": "keep-awake", "description": "Keep your computer awake! Forbid your computer to activate sceensaver, turn off the screen or suspend when it is idle for a while. Click the indicator icon (in the taskbar) once to keep your computer awake for the session. Click again to enable persistance of this setting between restarts (indicated by a small lock icon on the indicator). Switch off by clicking again.", "link": "https://extensions.gnome.org/extension/1097/keep-awake/", "shell_version_map": {"38": {"version": "6", "sha256": "1lmwq4ng14jvpzd3fnwc8bilvyigya46d8il8m16g1596p3hikdk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgeW91ciBjb21wdXRlciBhd2FrZSEgRm9yYmlkIHlvdXIgY29tcHV0ZXIgdG8gYWN0aXZhdGUgc2NlZW5zYXZlciwgdHVybiBvZmYgdGhlIHNjcmVlbiBvciBzdXNwZW5kIHdoZW4gaXQgaXMgaWRsZSBmb3IgYSB3aGlsZS4gQ2xpY2sgdGhlIGluZGljYXRvciBpY29uIChpbiB0aGUgdGFza2Jhcikgb25jZSB0byBrZWVwIHlvdXIgY29tcHV0ZXIgYXdha2UgZm9yIHRoZSBzZXNzaW9uLiBDbGljayBhZ2FpbiB0byBlbmFibGUgcGVyc2lzdGFuY2Ugb2YgdGhpcyBzZXR0aW5nIGJldHdlZW4gcmVzdGFydHMgKGluZGljYXRlZCBieSBhIHNtYWxsIGxvY2sgaWNvbiBvbiB0aGUgaW5kaWNhdG9yKS4gU3dpdGNoIG9mZiBieSBjbGlja2luZyBhZ2Fpbi4iLAogICJuYW1lIjogIktlZXAgYXdha2UhIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLktlZXBBd2FrZUBqZXBmYS5kZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy40IiwKICAgICIzLjYiLAogICAgIjMuOCIsCiAgICAiMy4xMCIsCiAgICAiMy4xMiIsCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2plbnNwZmFobC9LZWVwQXdha2UiLAogICJ1dWlkIjogIktlZXBBd2FrZUBqZXBmYS5kZSIsCiAgInZlcnNpb24iOiA2Cn0="}}}
 , {"uuid": "todolist@tomMoral.org", "name": "Section Todo List", "pname": "section-todo-list", "description": "Manage todo list with an applet\n\n* Add and remove task on your list in different sections.\n* Click an item to rename it.\n* Access the extension using Hot-Key (default: Ctrl+Space)\n", "link": "https://extensions.gnome.org/extension/1104/section-todo-list/", "shell_version_map": {"38": {"version": "11", "sha256": "02b5gccsx6ifgv2jyrniwagdf09jg7lvwzwlgm11qbrv7w7bn0qp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSB0b2RvIGxpc3Qgd2l0aCBhbiBhcHBsZXRcblxuKiBBZGQgYW5kIHJlbW92ZSB0YXNrIG9uIHlvdXIgbGlzdCBpbiBkaWZmZXJlbnQgc2VjdGlvbnMuXG4qIENsaWNrIGFuIGl0ZW0gdG8gcmVuYW1lIGl0LlxuKiBBY2Nlc3MgdGhlIGV4dGVuc2lvbiB1c2luZyBIb3QtS2V5IChkZWZhdWx0OiBDdHJsK1NwYWNlKVxuIiwKICAibmFtZSI6ICJTZWN0aW9uIFRvZG8gTGlzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90b21Nb3JhbC9Ub0RvTGlzdCIsCiAgInV1aWQiOiAidG9kb2xpc3RAdG9tTW9yYWwub3JnIiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "11", "sha256": "02b5gccsx6ifgv2jyrniwagdf09jg7lvwzwlgm11qbrv7w7bn0qp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSB0b2RvIGxpc3Qgd2l0aCBhbiBhcHBsZXRcblxuKiBBZGQgYW5kIHJlbW92ZSB0YXNrIG9uIHlvdXIgbGlzdCBpbiBkaWZmZXJlbnQgc2VjdGlvbnMuXG4qIENsaWNrIGFuIGl0ZW0gdG8gcmVuYW1lIGl0LlxuKiBBY2Nlc3MgdGhlIGV4dGVuc2lvbiB1c2luZyBIb3QtS2V5IChkZWZhdWx0OiBDdHJsK1NwYWNlKVxuIiwKICAibmFtZSI6ICJTZWN0aW9uIFRvZG8gTGlzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90b21Nb3JhbC9Ub0RvTGlzdCIsCiAgInV1aWQiOiAidG9kb2xpc3RAdG9tTW9yYWwub3JnIiwKICAidmVyc2lvbiI6IDExCn0="}}}
@@ -129,7 +129,7 @@
 , {"uuid": "shutdown-timer-gnome-shell-extension", "name": "ShutdownTimer", "pname": "shutdowntimer", "description": "Allows to shutdown, restart and suspend computer after selected amount of time or in selected time.", "link": "https://extensions.gnome.org/extension/1152/shutdowntimer/", "shell_version_map": {"40": {"version": "9", "sha256": "1y69lv3mq66xxfxabngnbb104d26i05cyhmx3dqf4kyf1kd6jqvx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBzaHV0ZG93biwgcmVzdGFydCBhbmQgc3VzcGVuZCBjb21wdXRlciBhZnRlciBzZWxlY3RlZCBhbW91bnQgb2YgdGltZSBvciBpbiBzZWxlY3RlZCB0aW1lLiIsCiAgImdldHRleHQtZG9tYWluIjogIkF1dG9tYXRpY1NodXRkb3duVGltZXIiLAogICJuYW1lIjogIlNodXRkb3duVGltZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYXV0b21hdGljLXNodXRkb3duLXRpbWVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21rcmFqbmFrL3NodXRkb3duLXRpbWVyLWdub21lLXNoZWxsLWV4dGVuc2lvbi8iLAogICJ1dWlkIjogInNodXRkb3duLXRpbWVyLWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInZlcnNpb24iOiA5Cn0="}}}
 , {"uuid": "dash-to-panel@jderose9.github.com", "name": "Dash to Panel", "pname": "dash-to-panel", "description": "An icon taskbar for the Gnome Shell. This extension moves the dash into the gnome main panel so that the application launchers and system tray are combined into a single panel, similar to that found in KDE Plasma and Windows 7+. A separate dock is no longer needed for easy access to running and favorited applications.\n\nFor a more traditional experience, you may also want to use Tweak Tool to enable Windows > Titlebar Buttons > Minimize & Maximize.\n\nFor the best support, please report any issues on Github. Dash-to-panel is developed and maintained by @jderose9 and @charlesg99.", "link": "https://extensions.gnome.org/extension/1160/dash-to-panel/", "shell_version_map": {"38": {"version": "42", "sha256": "052adrf5dv1qfrpkp1wivp8a8vfi851japvx16gy779shfzq0n2a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gdGFza2JhciBmb3IgdGhlIEdub21lIFNoZWxsLiBUaGlzIGV4dGVuc2lvbiBtb3ZlcyB0aGUgZGFzaCBpbnRvIHRoZSBnbm9tZSBtYWluIHBhbmVsIHNvIHRoYXQgdGhlIGFwcGxpY2F0aW9uIGxhdW5jaGVycyBhbmQgc3lzdGVtIHRyYXkgYXJlIGNvbWJpbmVkIGludG8gYSBzaW5nbGUgcGFuZWwsIHNpbWlsYXIgdG8gdGhhdCBmb3VuZCBpbiBLREUgUGxhc21hIGFuZCBXaW5kb3dzIDcrLiBBIHNlcGFyYXRlIGRvY2sgaXMgbm8gbG9uZ2VyIG5lZWRlZCBmb3IgZWFzeSBhY2Nlc3MgdG8gcnVubmluZyBhbmQgZmF2b3JpdGVkIGFwcGxpY2F0aW9ucy5cblxuRm9yIGEgbW9yZSB0cmFkaXRpb25hbCBleHBlcmllbmNlLCB5b3UgbWF5IGFsc28gd2FudCB0byB1c2UgVHdlYWsgVG9vbCB0byBlbmFibGUgV2luZG93cyA+IFRpdGxlYmFyIEJ1dHRvbnMgPiBNaW5pbWl6ZSAmIE1heGltaXplLlxuXG5Gb3IgdGhlIGJlc3Qgc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIG9uIEdpdGh1Yi4gRGFzaC10by1wYW5lbCBpcyBkZXZlbG9wZWQgYW5kIG1haW50YWluZWQgYnkgQGpkZXJvc2U5IGFuZCBAY2hhcmxlc2c5OS4iLAogICJleHRlbnNpb24taWQiOiAiZGFzaC10by1wYW5lbCIsCiAgImdldHRleHQtZG9tYWluIjogImRhc2gtdG8tcGFuZWwiLAogICJuYW1lIjogIkRhc2ggdG8gUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qZGVyb3NlOS9kYXNoLXRvLXBhbmVsIiwKICAidXVpZCI6ICJkYXNoLXRvLXBhbmVsQGpkZXJvc2U5LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNDIKfQ=="}, "40": {"version": "44", "sha256": "0kjs01h1ncx9r56pfggw0psqpi1hm0p32bpq08inpzc2wr7ilyfs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gdGFza2JhciBmb3IgdGhlIEdub21lIFNoZWxsLiBUaGlzIGV4dGVuc2lvbiBtb3ZlcyB0aGUgZGFzaCBpbnRvIHRoZSBnbm9tZSBtYWluIHBhbmVsIHNvIHRoYXQgdGhlIGFwcGxpY2F0aW9uIGxhdW5jaGVycyBhbmQgc3lzdGVtIHRyYXkgYXJlIGNvbWJpbmVkIGludG8gYSBzaW5nbGUgcGFuZWwsIHNpbWlsYXIgdG8gdGhhdCBmb3VuZCBpbiBLREUgUGxhc21hIGFuZCBXaW5kb3dzIDcrLiBBIHNlcGFyYXRlIGRvY2sgaXMgbm8gbG9uZ2VyIG5lZWRlZCBmb3IgZWFzeSBhY2Nlc3MgdG8gcnVubmluZyBhbmQgZmF2b3JpdGVkIGFwcGxpY2F0aW9ucy5cblxuRm9yIGEgbW9yZSB0cmFkaXRpb25hbCBleHBlcmllbmNlLCB5b3UgbWF5IGFsc28gd2FudCB0byB1c2UgVHdlYWsgVG9vbCB0byBlbmFibGUgV2luZG93cyA+IFRpdGxlYmFyIEJ1dHRvbnMgPiBNaW5pbWl6ZSAmIE1heGltaXplLlxuXG5Gb3IgdGhlIGJlc3Qgc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIG9uIEdpdGh1Yi4gRGFzaC10by1wYW5lbCBpcyBkZXZlbG9wZWQgYW5kIG1haW50YWluZWQgYnkgQGpkZXJvc2U5IGFuZCBAY2hhcmxlc2c5OS4iLAogICJleHRlbnNpb24taWQiOiAiZGFzaC10by1wYW5lbCIsCiAgImdldHRleHQtZG9tYWluIjogImRhc2gtdG8tcGFuZWwiLAogICJuYW1lIjogIkRhc2ggdG8gUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vamRlcm9zZTkvZGFzaC10by1wYW5lbCIsCiAgInV1aWQiOiAiZGFzaC10by1wYW5lbEBqZGVyb3NlOS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ0Cn0="}, "41": {"version": "45", "sha256": "1md7006ba93p1d6br2bf7qwkf5kbmmwphws0gnmpz18if2q8xd2g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gdGFza2JhciBmb3IgdGhlIEdub21lIFNoZWxsLiBUaGlzIGV4dGVuc2lvbiBtb3ZlcyB0aGUgZGFzaCBpbnRvIHRoZSBnbm9tZSBtYWluIHBhbmVsIHNvIHRoYXQgdGhlIGFwcGxpY2F0aW9uIGxhdW5jaGVycyBhbmQgc3lzdGVtIHRyYXkgYXJlIGNvbWJpbmVkIGludG8gYSBzaW5nbGUgcGFuZWwsIHNpbWlsYXIgdG8gdGhhdCBmb3VuZCBpbiBLREUgUGxhc21hIGFuZCBXaW5kb3dzIDcrLiBBIHNlcGFyYXRlIGRvY2sgaXMgbm8gbG9uZ2VyIG5lZWRlZCBmb3IgZWFzeSBhY2Nlc3MgdG8gcnVubmluZyBhbmQgZmF2b3JpdGVkIGFwcGxpY2F0aW9ucy5cblxuRm9yIGEgbW9yZSB0cmFkaXRpb25hbCBleHBlcmllbmNlLCB5b3UgbWF5IGFsc28gd2FudCB0byB1c2UgVHdlYWsgVG9vbCB0byBlbmFibGUgV2luZG93cyA+IFRpdGxlYmFyIEJ1dHRvbnMgPiBNaW5pbWl6ZSAmIE1heGltaXplLlxuXG5Gb3IgdGhlIGJlc3Qgc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIG9uIEdpdGh1Yi4gRGFzaC10by1wYW5lbCBpcyBkZXZlbG9wZWQgYW5kIG1haW50YWluZWQgYnkgQGpkZXJvc2U5IGFuZCBAY2hhcmxlc2c5OS4iLAogICJleHRlbnNpb24taWQiOiAiZGFzaC10by1wYW5lbCIsCiAgImdldHRleHQtZG9tYWluIjogImRhc2gtdG8tcGFuZWwiLAogICJuYW1lIjogIkRhc2ggdG8gUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vamRlcm9zZTkvZGFzaC10by1wYW5lbCIsCiAgInV1aWQiOiAiZGFzaC10by1wYW5lbEBqZGVyb3NlOS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQ1Cn0="}}}
 , {"uuid": "emoji-selector@maestroschan.fr", "name": "Emoji Selector", "pname": "emoji-selector", "description": "This extension provides a parametrable popup menu displaying most emojis, clicking on an emoji copies it to the clipboard. An appropriate font like 'Twitter Color Emoji' or 'JoyPixels Color' should be installed on your system for a better visual result.", "link": "https://extensions.gnome.org/extension/1162/emoji-selector/", "shell_version_map": {"38": {"version": "20", "sha256": "1i6py149m46xig5a0ry7y5v887nlzw644mw72gcr2hkfsn8b0gnd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHByb3ZpZGVzIGEgcGFyYW1ldHJhYmxlIHBvcHVwIG1lbnUgZGlzcGxheWluZyBtb3N0IGVtb2ppcywgY2xpY2tpbmcgb24gYW4gZW1vamkgY29waWVzIGl0IHRvIHRoZSBjbGlwYm9hcmQuIEFuIGFwcHJvcHJpYXRlIGZvbnQgbGlrZSAnVHdpdHRlciBDb2xvciBFbW9qaScgb3IgJ0pveVBpeGVscyBDb2xvcicgc2hvdWxkIGJlIGluc3RhbGxlZCBvbiB5b3VyIHN5c3RlbSBmb3IgYSBiZXR0ZXIgdmlzdWFsIHJlc3VsdC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJlbW9qaS1zZWxlY3RvciIsCiAgIm5hbWUiOiAiRW1vamkgU2VsZWN0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZW1vamktc2VsZWN0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYW9zY2hhbnovZW1vamktc2VsZWN0b3ItZm9yLWdub21lIiwKICAidXVpZCI6ICJlbW9qaS1zZWxlY3RvckBtYWVzdHJvc2NoYW4uZnIiLAogICJ2ZXJzaW9uIjogMjAKfQ=="}}}
-, {"uuid": "gnome-kinit@bonzini.gnu.org", "name": "Kerberos login", "pname": "kerberos-login", "description": "Provide a system menu item to renew Kerberos tickets", "link": "https://extensions.gnome.org/extension/1165/kerberos-login/", "shell_version_map": {"40": {"version": "4", "sha256": "12r1ydal7yxz8ybz1nbxpg51vsf6paqm6fsiy6bx3ndbqh98iiiw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgYSBzeXN0ZW0gbWVudSBpdGVtIHRvIHJlbmV3IEtlcmJlcm9zIHRpY2tldHMiLAogICJuYW1lIjogIktlcmJlcm9zIGxvZ2luIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyLjIiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJnbm9tZS1raW5pdEBib256aW5pLmdudS5vcmciLAogICJ2ZXJzaW9uIjogNAp9"}, "41": {"version": "4", "sha256": "12r1ydal7yxz8ybz1nbxpg51vsf6paqm6fsiy6bx3ndbqh98iiiw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgYSBzeXN0ZW0gbWVudSBpdGVtIHRvIHJlbmV3IEtlcmJlcm9zIHRpY2tldHMiLAogICJuYW1lIjogIktlcmJlcm9zIGxvZ2luIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyLjIiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJnbm9tZS1raW5pdEBib256aW5pLmdudS5vcmciLAogICJ2ZXJzaW9uIjogNAp9"}}}
+, {"uuid": "gnome-kinit@bonzini.gnu.org", "name": "Kerberos login", "pname": "kerberos-login", "description": "Provide a system menu item to renew Kerberos tickets", "link": "https://extensions.gnome.org/extension/1165/kerberos-login/", "shell_version_map": {"40": {"version": "5", "sha256": "08rp128drriv5929lwwv9yy77yhn1arfc6snwsipibaby0c5jvsf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgYSBzeXN0ZW0gbWVudSBpdGVtIHRvIHJlbmV3IEtlcmJlcm9zIHRpY2tldHMiLAogICJuYW1lIjogIktlcmJlcm9zIGxvZ2luIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyLjIiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZ25vbWUta2luaXRAYm9uemluaS5nbnUub3JnIiwKICAidmVyc2lvbiI6IDUKfQ=="}, "41": {"version": "5", "sha256": "08rp128drriv5929lwwv9yy77yhn1arfc6snwsipibaby0c5jvsf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgYSBzeXN0ZW0gbWVudSBpdGVtIHRvIHJlbmV3IEtlcmJlcm9zIHRpY2tldHMiLAogICJuYW1lIjogIktlcmJlcm9zIGxvZ2luIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyLjIiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZ25vbWUta2luaXRAYm9uemluaS5nbnUub3JnIiwKICAidmVyc2lvbiI6IDUKfQ=="}, "42": {"version": "5", "sha256": "08rp128drriv5929lwwv9yy77yhn1arfc6snwsipibaby0c5jvsf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgYSBzeXN0ZW0gbWVudSBpdGVtIHRvIHJlbmV3IEtlcmJlcm9zIHRpY2tldHMiLAogICJuYW1lIjogIktlcmJlcm9zIGxvZ2luIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyLjIiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZ25vbWUta2luaXRAYm9uemluaS5nbnUub3JnIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"uuid": "calculator-button@amivaleo", "name": "Calculator Button", "pname": "calculator-button", "description": "A button to easily open gnome-calculator.\n Credits to extensions.gnome.org/extension/939/display-button/\n\nv10:\n1 - added support for gnome 3.38\n2 - added support for flatpak version of gnome-calculator", "link": "https://extensions.gnome.org/extension/1168/calculator-button/", "shell_version_map": {"38": {"version": "10", "sha256": "1c6b53im6xj4yaf4skvchvgipxfjs2yh3i5r75cw9avnw7imnwk6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYnV0dG9uIHRvIGVhc2lseSBvcGVuIGdub21lLWNhbGN1bGF0b3IuXG4gQ3JlZGl0cyB0byBleHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vOTM5L2Rpc3BsYXktYnV0dG9uL1xuXG52MTA6XG4xIC0gYWRkZWQgc3VwcG9ydCBmb3IgZ25vbWUgMy4zOFxuMiAtIGFkZGVkIHN1cHBvcnQgZm9yIGZsYXRwYWsgdmVyc2lvbiBvZiBnbm9tZS1jYWxjdWxhdG9yIiwKICAibmFtZSI6ICJDYWxjdWxhdG9yIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FtaXZhbGVvL0NhbGN1bGF0b3ItQnV0dG9uIiwKICAidXVpZCI6ICJjYWxjdWxhdG9yLWJ1dHRvbkBhbWl2YWxlbyIsCiAgInZlcnNpb24iOiAxMAp9"}}}
 , {"uuid": "screenshotlocations.timur@linux.com", "name": "Screenshot Locations", "pname": "screenshot-locations", "description": "Change the default GNOME screenshot directory", "link": "https://extensions.gnome.org/extension/1179/screenshot-locations/", "shell_version_map": {"38": {"version": "7", "sha256": "0ymb4m8fgxgi964fdfdqwgjw95qbcm906zgqmyqxgd4ggip3mn47", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRhdGEtZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNjcmVlbnNob3Rsb2NhdGlvbnMuZGF0YS5ncmVzb3VyY2UiLAogICJkZXNjcmlwdGlvbiI6ICJDaGFuZ2UgdGhlIGRlZmF1bHQgR05PTUUgc2NyZWVuc2hvdCBkaXJlY3RvcnkiLAogICJuYW1lIjogIlNjcmVlbnNob3QgTG9jYXRpb25zIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNjcmVlbnNob3Rsb2NhdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vY29kZWJlcmcub3JnL2tpeXVpL2dub21lLXNoZWxsLXNjcmVlbnNob3Rsb2NhdGlvbnMtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJzY3JlZW5zaG90bG9jYXRpb25zLnRpbXVyQGxpbnV4LmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "8", "sha256": "0cxsq1zzmgn6q32wbdfw9hai62li92dwvwnzq2pdbskp9qm6v7nd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgZGVmYXVsdCBHTk9NRSBzY3JlZW5zaG90IGRpcmVjdG9yeSIsCiAgImdldHRleHQtZG9tYWluIjogInNjcmVlbnNob3Rsb2NhdGlvbnMudGltdXJAbGludXguY29tIiwKICAibmFtZSI6ICJTY3JlZW5zaG90IExvY2F0aW9ucyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zY3JlZW5zaG90bG9jYXRpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9jb2RlYmVyZy5vcmcva2l5dWkvZ25vbWUtc2hlbGwtc2NyZWVuc2hvdGxvY2F0aW9ucy1leHRlbnNpb24iLAogICJ1dWlkIjogInNjcmVlbnNob3Rsb2NhdGlvbnMudGltdXJAbGludXguY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"uuid": "utcclock@injcristianrojas.github.com", "name": "UTCClock", "pname": "utcclock", "description": "UTC clock for the top bar. For GNOME 40+", "link": "https://extensions.gnome.org/extension/1183/utcclock/", "shell_version_map": {"38": {"version": "24", "sha256": "1gmj8479a7yvxb3yh76yjs9n7bav3qp4fkr9hg7197qch0rirhlr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVUQyBjbG9jayBmb3IgdGhlIHRvcCBiYXIuIEZvciBHTk9NRSA0MCsiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJVVENDbG9jayIsCiAgIm5hbWUiOiAiVVRDQ2xvY2siLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXRjY2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pbmpjcmlzdGlhbnJvamFzL1VUQ0Nsb2NrIiwKICAidXVpZCI6ICJ1dGNjbG9ja0BpbmpjcmlzdGlhbnJvamFzLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMjQKfQ=="}, "40": {"version": "27", "sha256": "0jgrbsn2aqq5zxm553v16ydyzmbwa4ymqfr93mgz1br52clnjj2k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVUQyBjbG9jayBmb3IgdGhlIHRvcCBiYXIuIEZvciBHTk9NRSA0MCsiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJVVENDbG9jayIsCiAgIm5hbWUiOiAiVVRDQ2xvY2siLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXRjY2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2luamNyaXN0aWFucm9qYXMvVVRDQ2xvY2siLAogICJ1dWlkIjogInV0Y2Nsb2NrQGluamNyaXN0aWFucm9qYXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyNwp9"}, "41": {"version": "27", "sha256": "0jgrbsn2aqq5zxm553v16ydyzmbwa4ymqfr93mgz1br52clnjj2k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVUQyBjbG9jayBmb3IgdGhlIHRvcCBiYXIuIEZvciBHTk9NRSA0MCsiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJVVENDbG9jayIsCiAgIm5hbWUiOiAiVVRDQ2xvY2siLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXRjY2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2luamNyaXN0aWFucm9qYXMvVVRDQ2xvY2siLAogICJ1dWlkIjogInV0Y2Nsb2NrQGluamNyaXN0aWFucm9qYXMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyNwp9"}}}
@@ -139,7 +139,7 @@
 , {"uuid": "SystemMenu@jonnius.github.com", "name": "System Menu", "pname": "system-menu", "description": "System menu with usefull shortcuts", "link": "https://extensions.gnome.org/extension/1204/system-menu/", "shell_version_map": {"38": {"version": "5", "sha256": "10zfr3fhqvq0fxqjzqmnxmhmdw5xcw9m5k3jm1apcjqnm38r896w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5c3RlbSBtZW51IHdpdGggdXNlZnVsbCBzaG9ydGN1dHMiLAogICJuYW1lIjogIlN5c3RlbSBNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLlN5c3RlbU1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHA6Ly9naXRodWIuY29tL2pvbm5pdXMvZ25vbWUtc3lzdGVtLW1lbnUiLAogICJ1dWlkIjogIlN5c3RlbU1lbnVAam9ubml1cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"uuid": "undecorate@sun.wxg@gmail.com", "name": "Undecorate Window", "pname": "undecorate", "description": "Add undecorate item in window menu. Use ALT+Space to show window menu.", "link": "https://extensions.gnome.org/extension/1208/undecorate/", "shell_version_map": {"40": {"version": "5", "sha256": "1vmpzk2vwyi5lywfzcpd350h3p09p9l5bkg7bza6b1w904lfd51n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB1bmRlY29yYXRlIGl0ZW0gaW4gd2luZG93IG1lbnUuIFVzZSBBTFQrU3BhY2UgdG8gc2hvdyB3aW5kb3cgbWVudS4iLAogICJuYW1lIjogIlVuZGVjb3JhdGUgV2luZG93IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJzdW4ud3hnQGdtYWlsLmNvbSIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdW5kZWNvcmF0ZSIsCiAgInV1aWQiOiAidW5kZWNvcmF0ZUBzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "1vmpzk2vwyi5lywfzcpd350h3p09p9l5bkg7bza6b1w904lfd51n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB1bmRlY29yYXRlIGl0ZW0gaW4gd2luZG93IG1lbnUuIFVzZSBBTFQrU3BhY2UgdG8gc2hvdyB3aW5kb3cgbWVudS4iLAogICJuYW1lIjogIlVuZGVjb3JhdGUgV2luZG93IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJzdW4ud3hnQGdtYWlsLmNvbSIKICBdLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdW5kZWNvcmF0ZSIsCiAgInV1aWQiOiAidW5kZWNvcmF0ZUBzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "rcd@criztovyl.space", "name": "Right Click Down", "pname": "right-click-down", "description": "Moves windows one workspace down by right-clicking them in the overview.", "link": "https://extensions.gnome.org/extension/1210/right-click-down/", "shell_version_map": {"38": {"version": "3", "sha256": "1vh9capapzbbwg2zlw9iphdk48q6fqk0qsmaylvsvw59xc7f9bia", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHdpbmRvd3Mgb25lIHdvcmtzcGFjZSBkb3duIGJ5IHJpZ2h0LWNsaWNraW5nIHRoZW0gaW4gdGhlIG92ZXJ2aWV3LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJyY2QiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbmlvbnMtcmlnaHQtY2xpY2stZG93biIsCiAgIm5hbWUiOiAiUmlnaHQgQ2xpY2sgRG93biIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yaWdodC1jbGljay1kb3duIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4LjAiLAogICAgIjMuMzguMSIsCiAgICAiMy4zOC4yIiwKICAgICI0MC5hbHBoYSIsCiAgICAiNDAuYWxwaGEiLAogICAgIjMuMzguMyIsCiAgICAiMy4zNy45MiIsCiAgICAiMy4zNy45MSIsCiAgICAiMy4zNy45MCIsCiAgICAiMy4zNy4zIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vY3JpenRvdnlsL2dub21lLXJpZ2h0LWNsaWNrLWRvd24iLAogICJ1dWlkIjogInJjZEBjcml6dG92eWwuc3BhY2UiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "1vh9capapzbbwg2zlw9iphdk48q6fqk0qsmaylvsvw59xc7f9bia", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHdpbmRvd3Mgb25lIHdvcmtzcGFjZSBkb3duIGJ5IHJpZ2h0LWNsaWNraW5nIHRoZW0gaW4gdGhlIG92ZXJ2aWV3LiIsCiAgImV4dGVuc2lvbi1pZCI6ICJyY2QiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbmlvbnMtcmlnaHQtY2xpY2stZG93biIsCiAgIm5hbWUiOiAiUmlnaHQgQ2xpY2sgRG93biIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yaWdodC1jbGljay1kb3duIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4LjAiLAogICAgIjMuMzguMSIsCiAgICAiMy4zOC4yIiwKICAgICI0MC5hbHBoYSIsCiAgICAiNDAuYWxwaGEiLAogICAgIjMuMzguMyIsCiAgICAiMy4zNy45MiIsCiAgICAiMy4zNy45MSIsCiAgICAiMy4zNy45MCIsCiAgICAiMy4zNy4zIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vY3JpenRvdnlsL2dub21lLXJpZ2h0LWNsaWNrLWRvd24iLAogICJ1dWlkIjogInJjZEBjcml6dG92eWwuc3BhY2UiLAogICJ2ZXJzaW9uIjogMwp9"}}}
-, {"uuid": "printers@linux-man.org", "name": "Printers", "pname": "printers", "description": "Manage Jobs and Printers. Required package: cups-bsd", "link": "https://extensions.gnome.org/extension/1218/printers/", "shell_version_map": {"38": {"version": "12", "sha256": "1q2k5b4z159nfr5mn4ah8fz9x8dq35x5sz99s8yhalbkb0ba0d1p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBKb2JzIGFuZCBQcmludGVycy4gUmVxdWlyZWQgcGFja2FnZTogY3Vwcy1ic2QiLAogICJleHRlbnNpb24taWQiOiAicHJpbnRlcnMiLAogICJuYW1lIjogIlByaW50ZXJzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqb2FvLmNhbGRhcy5sb3Blc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaW50ZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGludXgtbWFuL2dub21lLXNoZWxsLWV4dGVuc2lvbi1wcmludGVycyIsCiAgInV1aWQiOiAicHJpbnRlcnNAbGludXgtbWFuLm9yZyIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "18", "sha256": "0ymwfkcb7d20lv5wvsqsbh1n5c6cn90iy8g49fnmaja8gm5wazd6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBKb2JzIGFuZCBQcmludGVycy4gUmVxdWlyZWQgcGFja2FnZTogY3Vwcy1ic2QiLAogICJleHRlbnNpb24taWQiOiAicHJpbnRlcnMiLAogICJuYW1lIjogIlByaW50ZXJzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqb2FvLmNhbGRhcy5sb3Blc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaW50ZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGludXgtbWFuL2dub21lLXNoZWxsLWV4dGVuc2lvbi1wcmludGVycyIsCiAgInV1aWQiOiAicHJpbnRlcnNAbGludXgtbWFuLm9yZyIsCiAgInZlcnNpb24iOiAxOAp9"}, "41": {"version": "18", "sha256": "0ymwfkcb7d20lv5wvsqsbh1n5c6cn90iy8g49fnmaja8gm5wazd6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBKb2JzIGFuZCBQcmludGVycy4gUmVxdWlyZWQgcGFja2FnZTogY3Vwcy1ic2QiLAogICJleHRlbnNpb24taWQiOiAicHJpbnRlcnMiLAogICJuYW1lIjogIlByaW50ZXJzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqb2FvLmNhbGRhcy5sb3Blc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaW50ZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGludXgtbWFuL2dub21lLXNoZWxsLWV4dGVuc2lvbi1wcmludGVycyIsCiAgInV1aWQiOiAicHJpbnRlcnNAbGludXgtbWFuLm9yZyIsCiAgInZlcnNpb24iOiAxOAp9"}}}
+, {"uuid": "printers@linux-man.org", "name": "Printers", "pname": "printers", "description": "Manage Jobs and Printers. Required package: cups-bsd", "link": "https://extensions.gnome.org/extension/1218/printers/", "shell_version_map": {"38": {"version": "12", "sha256": "1q2k5b4z159nfr5mn4ah8fz9x8dq35x5sz99s8yhalbkb0ba0d1p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBKb2JzIGFuZCBQcmludGVycy4gUmVxdWlyZWQgcGFja2FnZTogY3Vwcy1ic2QiLAogICJleHRlbnNpb24taWQiOiAicHJpbnRlcnMiLAogICJuYW1lIjogIlByaW50ZXJzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqb2FvLmNhbGRhcy5sb3Blc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaW50ZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGludXgtbWFuL2dub21lLXNoZWxsLWV4dGVuc2lvbi1wcmludGVycyIsCiAgInV1aWQiOiAicHJpbnRlcnNAbGludXgtbWFuLm9yZyIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "18", "sha256": "0ymwfkcb7d20lv5wvsqsbh1n5c6cn90iy8g49fnmaja8gm5wazd6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBKb2JzIGFuZCBQcmludGVycy4gUmVxdWlyZWQgcGFja2FnZTogY3Vwcy1ic2QiLAogICJleHRlbnNpb24taWQiOiAicHJpbnRlcnMiLAogICJuYW1lIjogIlByaW50ZXJzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqb2FvLmNhbGRhcy5sb3Blc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaW50ZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGludXgtbWFuL2dub21lLXNoZWxsLWV4dGVuc2lvbi1wcmludGVycyIsCiAgInV1aWQiOiAicHJpbnRlcnNAbGludXgtbWFuLm9yZyIsCiAgInZlcnNpb24iOiAxOAp9"}, "41": {"version": "18", "sha256": "0ymwfkcb7d20lv5wvsqsbh1n5c6cn90iy8g49fnmaja8gm5wazd6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBKb2JzIGFuZCBQcmludGVycy4gUmVxdWlyZWQgcGFja2FnZTogY3Vwcy1ic2QiLAogICJleHRlbnNpb24taWQiOiAicHJpbnRlcnMiLAogICJuYW1lIjogIlByaW50ZXJzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqb2FvLmNhbGRhcy5sb3Blc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaW50ZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGludXgtbWFuL2dub21lLXNoZWxsLWV4dGVuc2lvbi1wcmludGVycyIsCiAgInV1aWQiOiAicHJpbnRlcnNAbGludXgtbWFuLm9yZyIsCiAgInZlcnNpb24iOiAxOAp9"}, "42": {"version": "18", "sha256": "0ymwfkcb7d20lv5wvsqsbh1n5c6cn90iy8g49fnmaja8gm5wazd6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBKb2JzIGFuZCBQcmludGVycy4gUmVxdWlyZWQgcGFja2FnZTogY3Vwcy1ic2QiLAogICJleHRlbnNpb24taWQiOiAicHJpbnRlcnMiLAogICJuYW1lIjogIlByaW50ZXJzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqb2FvLmNhbGRhcy5sb3Blc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaW50ZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGludXgtbWFuL2dub21lLXNoZWxsLWV4dGVuc2lvbi1wcmludGVycyIsCiAgInV1aWQiOiAicHJpbnRlcnNAbGludXgtbWFuLm9yZyIsCiAgInZlcnNpb24iOiAxOAp9"}}}
 , {"uuid": "move-osd-windows@maestroschan.fr", "name": "Move OSD Windows", "pname": "move-osd-windows", "description": "Change the position of OSD windows (sound & luminosity popups).", "link": "https://extensions.gnome.org/extension/1220/move-osd-windows/", "shell_version_map": {"38": {"version": "3", "sha256": "1nmvbx7qbr9a9al5wirnsfwn4qb1qbql2w9f7fpajipasill9hkd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgcG9zaXRpb24gb2YgT1NEIHdpbmRvd3MgKHNvdW5kICYgbHVtaW5vc2l0eSBwb3B1cHMpLiIsCiAgImdldHRleHQtZG9tYWluIjogIm1vdmUtb3NkLXdpbmRvd3MiLAogICJuYW1lIjogIk1vdmUgT1NEIFdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYWVzdHJvc2NoYW4vTW92ZS1PU0QtV2luZG93cy1HTk9NRS1FeHRlbnNpb24iLAogICJ1dWlkIjogIm1vdmUtb3NkLXdpbmRvd3NAbWFlc3Ryb3NjaGFuLmZyIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 , {"uuid": "arc-menu@linxgem33.com", "name": "Arc Menu", "pname": "arc-menu", "description": "## UNMAINTAINED ##\n\nThe original version of Arc Menu and all attached repositories apart from the disaster recovery branch will no longer receive updates or further development.\n\nKind Regards - LinxGem33 (Andy C)", "link": "https://extensions.gnome.org/extension/1228/arc-menu/", "shell_version_map": {"38": {"version": "49", "sha256": "0x1kr339qarkviinf13s6ih01ssdh321nw8ncnnrq7ihqpzysf8z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiMjIFVOTUFJTlRBSU5FRCAjI1xuXG5UaGUgb3JpZ2luYWwgdmVyc2lvbiBvZiBBcmMgTWVudSBhbmQgYWxsIGF0dGFjaGVkIHJlcG9zaXRvcmllcyBhcGFydCBmcm9tIHRoZSBkaXNhc3RlciByZWNvdmVyeSBicmFuY2ggd2lsbCBubyBsb25nZXIgcmVjZWl2ZSB1cGRhdGVzIG9yIGZ1cnRoZXIgZGV2ZWxvcG1lbnQuXG5cbktpbmQgUmVnYXJkcyAtIExpbnhHZW0zMyAoQW5keSBDKSIsCiAgImV4dGVuc2lvbi1pZCI6ICJhcmMtbWVudSIsCiAgImdldHRleHQtZG9tYWluIjogImFyYy1tZW51IiwKICAibmFtZSI6ICJBcmMgTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hcmMtbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL0xpbnhHZW0zMy9BcmMtTWVudSIsCiAgInV1aWQiOiAiYXJjLW1lbnVAbGlueGdlbTMzLmNvbSIsCiAgInZlcnNpb24iOiA0OQp9"}}}
 , {"uuid": "GmailMessageTray@shuming0207.gmail.com", "name": "Gnome Email Notifications", "pname": "gmail-message-tray", "description": "Shows Gmail and Outlook notifications in Gnome Message Tray using Gnome Online Accounts\n", "link": "https://extensions.gnome.org/extension/1230/gmail-message-tray/", "shell_version_map": {"40": {"version": "22", "sha256": "1hsjqhm0gb7iisg3drwyav166w8zvbfbsdwr47v997xf4mfaycbn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIEdtYWlsIGFuZCBPdXRsb29rIG5vdGlmaWNhdGlvbnMgaW4gR25vbWUgTWVzc2FnZSBUcmF5IHVzaW5nIEdub21lIE9ubGluZSBBY2NvdW50c1xuIiwKICAibmFtZSI6ICJHbm9tZSBFbWFpbCBOb3RpZmljYXRpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NodW1pbmdjaC9nbm9tZS1lbWFpbC1ub3RpZmljYXRpb25zIiwKICAidXVpZCI6ICJHbWFpbE1lc3NhZ2VUcmF5QHNodW1pbmcwMjA3LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}, "41": {"version": "24", "sha256": "0vldilmp2vzfl99fw0ainnlj9sz0a95zjlqnzybsz7dasin39i9z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIEdtYWlsIGFuZCBPdXRsb29rIG5vdGlmaWNhdGlvbnMgaW4gR25vbWUgTWVzc2FnZSBUcmF5IHVzaW5nIEdub21lIE9ubGluZSBBY2NvdW50c1xuIiwKICAibmFtZSI6ICJHbm9tZSBFbWFpbCBOb3RpZmljYXRpb25zIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NodW1pbmdjaC9nbm9tZS1lbWFpbC1ub3RpZmljYXRpb25zIiwKICAidXVpZCI6ICJHbWFpbE1lc3NhZ2VUcmF5QHNodW1pbmcwMjA3LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyNAp9"}}}
@@ -148,7 +148,7 @@
 , {"uuid": "SomaFm-Radio@alireza6677.gmail.com", "name": "SomaFM internet radio", "pname": "somafm-internet-radio", "description": "Listen to SomaFm free internet radio in your GNOME desktop\n\n* Featues:\n- 32+ Channels\n- Volume slider\n- Favorites menu\n- Good sound quality\n- Supports most gnome-shell versions\n- Channel logos\n\n* Requirements:\n- Gstreamer and plugins:\nYou need to install 'gstreamer' and multimedia codecs/plugins for your distro.", "link": "https://extensions.gnome.org/extension/1237/somafm-internet-radio/", "shell_version_map": {"38": {"version": "29", "sha256": "07l6sa58azf3sav6858q48cbqazavq9bflfxdn0p9ys29h6mf50c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpc3RlbiB0byBTb21hRm0gZnJlZSBpbnRlcm5ldCByYWRpbyBpbiB5b3VyIEdOT01FIGRlc2t0b3BcblxuKiBGZWF0dWVzOlxuLSAzMisgQ2hhbm5lbHNcbi0gVm9sdW1lIHNsaWRlclxuLSBGYXZvcml0ZXMgbWVudVxuLSBHb29kIHNvdW5kIHF1YWxpdHlcbi0gU3VwcG9ydHMgbW9zdCBnbm9tZS1zaGVsbCB2ZXJzaW9uc1xuLSBDaGFubmVsIGxvZ29zXG5cbiogUmVxdWlyZW1lbnRzOlxuLSBHc3RyZWFtZXIgYW5kIHBsdWdpbnM6XG5Zb3UgbmVlZCB0byBpbnN0YWxsICdnc3RyZWFtZXInIGFuZCBtdWx0aW1lZGlhIGNvZGVjcy9wbHVnaW5zIGZvciB5b3VyIGRpc3Ryby4iLAogICJuYW1lIjogIlNvbWFGTSBpbnRlcm5ldCByYWRpbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vVGhlV2VpcmREZXYvc29tYWZtLXJhZGlvLWdub21lLWV4dCIsCiAgInV1aWQiOiAiU29tYUZtLVJhZGlvQGFsaXJlemE2Njc3LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyOQp9"}, "40": {"version": "29", "sha256": "07l6sa58azf3sav6858q48cbqazavq9bflfxdn0p9ys29h6mf50c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpc3RlbiB0byBTb21hRm0gZnJlZSBpbnRlcm5ldCByYWRpbyBpbiB5b3VyIEdOT01FIGRlc2t0b3BcblxuKiBGZWF0dWVzOlxuLSAzMisgQ2hhbm5lbHNcbi0gVm9sdW1lIHNsaWRlclxuLSBGYXZvcml0ZXMgbWVudVxuLSBHb29kIHNvdW5kIHF1YWxpdHlcbi0gU3VwcG9ydHMgbW9zdCBnbm9tZS1zaGVsbCB2ZXJzaW9uc1xuLSBDaGFubmVsIGxvZ29zXG5cbiogUmVxdWlyZW1lbnRzOlxuLSBHc3RyZWFtZXIgYW5kIHBsdWdpbnM6XG5Zb3UgbmVlZCB0byBpbnN0YWxsICdnc3RyZWFtZXInIGFuZCBtdWx0aW1lZGlhIGNvZGVjcy9wbHVnaW5zIGZvciB5b3VyIGRpc3Ryby4iLAogICJuYW1lIjogIlNvbWFGTSBpbnRlcm5ldCByYWRpbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cDovL2dpdGh1Yi5jb20vVGhlV2VpcmREZXYvc29tYWZtLXJhZGlvLWdub21lLWV4dCIsCiAgInV1aWQiOiAiU29tYUZtLVJhZGlvQGFsaXJlemE2Njc3LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyOQp9"}}}
 , {"uuid": "timepp@zagortenay333", "name": "Time ++", "pname": "time", "description": "A todo.txt manager, time tracker, timer, stopwatch, pomodoro, and alarm clock", "link": "https://extensions.gnome.org/extension/1238/time/", "shell_version_map": {"38": {"version": "155", "sha256": "1v71hlwrw9kbxfvka5w8cfqmvcjw3k9xjdwhwlk4i4q5k6kgjih3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNhY2hlLWZpbGUtZm9ybWF0LXZlcnNpb24iOiB7CiAgICAiYWxhcm1zIjogMywKICAgICJwb21vZG9ybyI6IDMsCiAgICAic3RvcHdhdGNoIjogNCwKICAgICJ0aW1lciI6IDMsCiAgICAidG9kbyI6IDEwCiAgfSwKICAiZGVzY3JpcHRpb24iOiAiQSB0b2RvLnR4dCBtYW5hZ2VyLCB0aW1lIHRyYWNrZXIsIHRpbWVyLCBzdG9wd2F0Y2gsIHBvbW9kb3JvLCBhbmQgYWxhcm0gY2xvY2siLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ0aW1lcHAiLAogICJpc3N1ZXNfdXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzL3RpbWVwcF9fZ25vbWUvaXNzdWVzIiwKICAibmFtZSI6ICJUaW1lICsrIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInRyYW5zbGF0aW9uc191cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3phZ29ydGVuYXkzMzMvdGltZXBwX19nbm9tZS90cmVlL21hc3Rlci9kYXRhL3BvX2ZpbGVzIiwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzL3RpbWVwcF9fZ25vbWUiLAogICJ1dWlkIjogInRpbWVwcEB6YWdvcnRlbmF5MzMzIiwKICAidmVyc2lvbiI6IDE1NQp9"}, "40": {"version": "163", "sha256": "0qb28jgpqz4nrigx2vjpsv2wfbnvkfk9rrc6aqgmh1mhhw3f7wfa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNhY2hlLWZpbGUtZm9ybWF0LXZlcnNpb24iOiB7CiAgICAiYWxhcm1zIjogMywKICAgICJwb21vZG9ybyI6IDMsCiAgICAic3RvcHdhdGNoIjogNCwKICAgICJ0aW1lciI6IDMsCiAgICAidG9kbyI6IDEwCiAgfSwKICAiZGVzY3JpcHRpb24iOiAiQSB0b2RvLnR4dCBtYW5hZ2VyLCB0aW1lIHRyYWNrZXIsIHRpbWVyLCBzdG9wd2F0Y2gsIHBvbW9kb3JvLCBhbmQgYWxhcm0gY2xvY2siLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ0aW1lcHAiLAogICJpc3N1ZXNfdXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzL3RpbWVwcF9fZ25vbWUvaXNzdWVzIiwKICAibmFtZSI6ICJUaW1lICsrIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidHJhbnNsYXRpb25zX3VybCI6ICJodHRwczovL2dpdGh1Yi5jb20vemFnb3J0ZW5heTMzMy90aW1lcHBfX2dub21lL3RyZWUvbWFzdGVyL2RhdGEvcG9fZmlsZXMiLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3phZ29ydGVuYXkzMzMvdGltZXBwX19nbm9tZSIsCiAgInV1aWQiOiAidGltZXBwQHphZ29ydGVuYXkzMzMiLAogICJ2ZXJzaW9uIjogMTYzCn0="}, "41": {"version": "163", "sha256": "0qb28jgpqz4nrigx2vjpsv2wfbnvkfk9rrc6aqgmh1mhhw3f7wfa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNhY2hlLWZpbGUtZm9ybWF0LXZlcnNpb24iOiB7CiAgICAiYWxhcm1zIjogMywKICAgICJwb21vZG9ybyI6IDMsCiAgICAic3RvcHdhdGNoIjogNCwKICAgICJ0aW1lciI6IDMsCiAgICAidG9kbyI6IDEwCiAgfSwKICAiZGVzY3JpcHRpb24iOiAiQSB0b2RvLnR4dCBtYW5hZ2VyLCB0aW1lIHRyYWNrZXIsIHRpbWVyLCBzdG9wd2F0Y2gsIHBvbW9kb3JvLCBhbmQgYWxhcm0gY2xvY2siLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ0aW1lcHAiLAogICJpc3N1ZXNfdXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzL3RpbWVwcF9fZ25vbWUvaXNzdWVzIiwKICAibmFtZSI6ICJUaW1lICsrIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImh0dHBzOi8vZ2l0aHViLmNvbS96YWdvcnRlbmF5MzMzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidHJhbnNsYXRpb25zX3VybCI6ICJodHRwczovL2dpdGh1Yi5jb20vemFnb3J0ZW5heTMzMy90aW1lcHBfX2dub21lL3RyZWUvbWFzdGVyL2RhdGEvcG9fZmlsZXMiLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3phZ29ydGVuYXkzMzMvdGltZXBwX19nbm9tZSIsCiAgInV1aWQiOiAidGltZXBwQHphZ29ydGVuYXkzMzMiLAogICJ2ZXJzaW9uIjogMTYzCn0="}}}
 , {"uuid": "obmin@konkor", "name": "Obmin", "pname": "obmin", "description": "One-Click File Sharing for your network.\nObmin is lightweight HTTP(S) File Server for GNU/Linux systems.\n\nFeatures:\n⚫ Easy installation.\n⚫ Easy setup just choose file(s) locations and tune Obmin on.\n⚫ Doesn't require ROOT privileges.\n⚫ Doesn't require any special client side installation.\n⚫ HTTP transfer protocol available everywhere Linux, OSX, Windows, Android, iOS so.\n⚫ More ...\n\nFor more information and how-to see README.md", "link": "https://extensions.gnome.org/extension/1254/obmin/", "shell_version_map": {"38": {"version": "25", "sha256": "14liv381k2gdgcsgaqsarfg0ycrg0whhq0jzzzdzvnk9vs8jdni8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk9uZS1DbGljayBGaWxlIFNoYXJpbmcgZm9yIHlvdXIgbmV0d29yay5cbk9ibWluIGlzIGxpZ2h0d2VpZ2h0IEhUVFAoUykgRmlsZSBTZXJ2ZXIgZm9yIEdOVS9MaW51eCBzeXN0ZW1zLlxuXG5GZWF0dXJlczpcblx1MjZhYiBFYXN5IGluc3RhbGxhdGlvbi5cblx1MjZhYiBFYXN5IHNldHVwIGp1c3QgY2hvb3NlIGZpbGUocykgbG9jYXRpb25zIGFuZCB0dW5lIE9ibWluIG9uLlxuXHUyNmFiIERvZXNuJ3QgcmVxdWlyZSBST09UIHByaXZpbGVnZXMuXG5cdTI2YWIgRG9lc24ndCByZXF1aXJlIGFueSBzcGVjaWFsIGNsaWVudCBzaWRlIGluc3RhbGxhdGlvbi5cblx1MjZhYiBIVFRQIHRyYW5zZmVyIHByb3RvY29sIGF2YWlsYWJsZSBldmVyeXdoZXJlIExpbnV4LCBPU1gsIFdpbmRvd3MsIEFuZHJvaWQsIGlPUyBzby5cblx1MjZhYiBNb3JlIC4uLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgaG93LXRvIHNlZSBSRUFETUUubWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zLW9ibWluIiwKICAibmFtZSI6ICJPYm1pbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vYm1pbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zMiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL29ibWluLmdpdGh1Yi5pbyIsCiAgInV1aWQiOiAib2JtaW5Aa29ua29yIiwKICAidmVyc2lvbiI6IDI1Cn0="}, "40": {"version": "25", "sha256": "14liv381k2gdgcsgaqsarfg0ycrg0whhq0jzzzdzvnk9vs8jdni8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk9uZS1DbGljayBGaWxlIFNoYXJpbmcgZm9yIHlvdXIgbmV0d29yay5cbk9ibWluIGlzIGxpZ2h0d2VpZ2h0IEhUVFAoUykgRmlsZSBTZXJ2ZXIgZm9yIEdOVS9MaW51eCBzeXN0ZW1zLlxuXG5GZWF0dXJlczpcblx1MjZhYiBFYXN5IGluc3RhbGxhdGlvbi5cblx1MjZhYiBFYXN5IHNldHVwIGp1c3QgY2hvb3NlIGZpbGUocykgbG9jYXRpb25zIGFuZCB0dW5lIE9ibWluIG9uLlxuXHUyNmFiIERvZXNuJ3QgcmVxdWlyZSBST09UIHByaXZpbGVnZXMuXG5cdTI2YWIgRG9lc24ndCByZXF1aXJlIGFueSBzcGVjaWFsIGNsaWVudCBzaWRlIGluc3RhbGxhdGlvbi5cblx1MjZhYiBIVFRQIHRyYW5zZmVyIHByb3RvY29sIGF2YWlsYWJsZSBldmVyeXdoZXJlIExpbnV4LCBPU1gsIFdpbmRvd3MsIEFuZHJvaWQsIGlPUyBzby5cblx1MjZhYiBNb3JlIC4uLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgaG93LXRvIHNlZSBSRUFETUUubWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zLW9ibWluIiwKICAibmFtZSI6ICJPYm1pbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vYm1pbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zMiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL29ibWluLmdpdGh1Yi5pbyIsCiAgInV1aWQiOiAib2JtaW5Aa29ua29yIiwKICAidmVyc2lvbiI6IDI1Cn0="}, "41": {"version": "25", "sha256": "14liv381k2gdgcsgaqsarfg0ycrg0whhq0jzzzdzvnk9vs8jdni8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk9uZS1DbGljayBGaWxlIFNoYXJpbmcgZm9yIHlvdXIgbmV0d29yay5cbk9ibWluIGlzIGxpZ2h0d2VpZ2h0IEhUVFAoUykgRmlsZSBTZXJ2ZXIgZm9yIEdOVS9MaW51eCBzeXN0ZW1zLlxuXG5GZWF0dXJlczpcblx1MjZhYiBFYXN5IGluc3RhbGxhdGlvbi5cblx1MjZhYiBFYXN5IHNldHVwIGp1c3QgY2hvb3NlIGZpbGUocykgbG9jYXRpb25zIGFuZCB0dW5lIE9ibWluIG9uLlxuXHUyNmFiIERvZXNuJ3QgcmVxdWlyZSBST09UIHByaXZpbGVnZXMuXG5cdTI2YWIgRG9lc24ndCByZXF1aXJlIGFueSBzcGVjaWFsIGNsaWVudCBzaWRlIGluc3RhbGxhdGlvbi5cblx1MjZhYiBIVFRQIHRyYW5zZmVyIHByb3RvY29sIGF2YWlsYWJsZSBldmVyeXdoZXJlIExpbnV4LCBPU1gsIFdpbmRvd3MsIEFuZHJvaWQsIGlPUyBzby5cblx1MjZhYiBNb3JlIC4uLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgaG93LXRvIHNlZSBSRUFETUUubWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zLW9ibWluIiwKICAibmFtZSI6ICJPYm1pbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vYm1pbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xNCIsCiAgICAiMy4xNiIsCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zMiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL29ibWluLmdpdGh1Yi5pbyIsCiAgInV1aWQiOiAib2JtaW5Aa29ua29yIiwKICAidmVyc2lvbiI6IDI1Cn0="}}}
-, {"uuid": "BingWallpaper@ineffable-gmail.com", "name": "Bing Wallpaper", "pname": "bing-wallpaper-changer", "description": "Lightweight GNOME shell extension to set your wallpaper to today's Microsoft Bing image of the day (the image you see when you visit Bing.com).\n\n *Disclaimer*: this extension is unofficial and not affiliated with Bing or Microsoft in any way. Images are protected by copyright and are licensed only for use as wallpapers.\n\nThis extension is based extensively on the NASA APOD extension by Elinvention (https://github.com/Elinvention) and inspired by Bing Desktop Wallpaper Changer by Utkarsh Gupta (https://github.com/UtkarshGpta).\n\nFeatures:\n* Fetches Bing wallpaper of the day and sets as both lock screen and desktop wallpaper (user selectable on GNOME versions that support it)\n* Optionally force a specific region (i.e. locale)\n* UHD supported resolutions\n* Only attempts to download wallpapers when they have been updated\n* Doesn't poll continuously - only once per day and on startup (schedules a refresh when Bing is due to update)\n *NEW: random mode\n *NEW: select wallpaper from previously downloaded images\n* English (en), German (de), Dutch (nl), Italian (it), Polish (pl), Chinese (zh_CN), French (fr_FR), Portuguese (pt, pt_BR), Russian (ru_RU), Spanish (es), Korean (ko, ko_KR, ko_KP), Indonesian (id), Catalan (ca), Norwegian Bokmål (nb) & Nynorsk (ni), Swedish (sv), Arabic (ar), Hungarian (hu) and Finnish (fi_FI) - a HUGE thanks to the translators\n\nAlways restart GNOME after manually updating extensions. Please report bugs to the GitHub page below:", "link": "https://extensions.gnome.org/extension/1262/bing-wallpaper-changer/", "shell_version_map": {"38": {"version": "37", "sha256": "1v01vkvphqjr7c2gh61p84jwvr8yj91rnhjgdgi8jv06fwcvnja0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gdG9kYXkncyBNaWNyb3NvZnQgQmluZyBpbWFnZSBvZiB0aGUgZGF5ICh0aGUgaW1hZ2UgeW91IHNlZSB3aGVuIHlvdSB2aXNpdCBCaW5nLmNvbSkuXG5cbiAqRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggQmluZyBvciBNaWNyb3NvZnQgaW4gYW55IHdheS4gSW1hZ2VzIGFyZSBwcm90ZWN0ZWQgYnkgY29weXJpZ2h0IGFuZCBhcmUgbGljZW5zZWQgb25seSBmb3IgdXNlIGFzIHdhbGxwYXBlcnMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGJhc2VkIGV4dGVuc2l2ZWx5IG9uIHRoZSBOQVNBIEFQT0QgZXh0ZW5zaW9uIGJ5IEVsaW52ZW50aW9uIChodHRwczovL2dpdGh1Yi5jb20vRWxpbnZlbnRpb24pIGFuZCBpbnNwaXJlZCBieSBCaW5nIERlc2t0b3AgV2FsbHBhcGVyIENoYW5nZXIgYnkgVXRrYXJzaCBHdXB0YSAoaHR0cHM6Ly9naXRodWIuY29tL1V0a2Fyc2hHcHRhKS5cblxuRmVhdHVyZXM6XG4qIEZldGNoZXMgQmluZyB3YWxscGFwZXIgb2YgdGhlIGRheSBhbmQgc2V0cyBhcyBib3RoIGxvY2sgc2NyZWVuIGFuZCBkZXNrdG9wIHdhbGxwYXBlciAodXNlciBzZWxlY3RhYmxlIG9uIEdOT01FIHZlcnNpb25zIHRoYXQgc3VwcG9ydCBpdClcbiogT3B0aW9uYWxseSBmb3JjZSBhIHNwZWNpZmljIHJlZ2lvbiAoaS5lLiBsb2NhbGUpXG4qIFVIRCBzdXBwb3J0ZWQgcmVzb2x1dGlvbnNcbiogT25seSBhdHRlbXB0cyB0byBkb3dubG9hZCB3YWxscGFwZXJzIHdoZW4gdGhleSBoYXZlIGJlZW4gdXBkYXRlZFxuKiBEb2Vzbid0IHBvbGwgY29udGludW91c2x5IC0gb25seSBvbmNlIHBlciBkYXkgYW5kIG9uIHN0YXJ0dXAgKHNjaGVkdWxlcyBhIHJlZnJlc2ggd2hlbiBCaW5nIGlzIGR1ZSB0byB1cGRhdGUpXG4gKk5FVzogcmFuZG9tIG1vZGVcbiAqTkVXOiBzZWxlY3Qgd2FsbHBhcGVyIGZyb20gcHJldmlvdXNseSBkb3dubG9hZGVkIGltYWdlc1xuKiBFbmdsaXNoIChlbiksIEdlcm1hbiAoZGUpLCBEdXRjaCAobmwpLCBJdGFsaWFuIChpdCksIFBvbGlzaCAocGwpLCBDaGluZXNlICh6aF9DTiksIEZyZW5jaCAoZnJfRlIpLCBQb3J0dWd1ZXNlIChwdCwgcHRfQlIpLCBSdXNzaWFuIChydV9SVSksIFNwYW5pc2ggKGVzKSwgS29yZWFuIChrbywga29fS1IsIGtvX0tQKSwgSW5kb25lc2lhbiAoaWQpLCBDYXRhbGFuIChjYSksIE5vcndlZ2lhbiBCb2ttXHUwMGU1bCAobmIpICYgTnlub3JzayAobmkpLCBTd2VkaXNoIChzdiksIEFyYWJpYyAoYXIpLCBIdW5nYXJpYW4gKGh1KSBhbmQgRmlubmlzaCAoZmlfRkkpIC0gYSBIVUdFIHRoYW5rcyB0byB0aGUgdHJhbnNsYXRvcnNcblxuQWx3YXlzIHJlc3RhcnQgR05PTUUgYWZ0ZXIgbWFudWFsbHkgdXBkYXRpbmcgZXh0ZW5zaW9ucy4gUGxlYXNlIHJlcG9ydCBidWdzIHRvIHRoZSBHaXRIdWIgcGFnZSBiZWxvdzoiLAogICJuYW1lIjogIkJpbmcgV2FsbHBhcGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJpbmd3YWxscGFwZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25lZmZvL2Jpbmctd2FsbHBhcGVyLWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiQmluZ1dhbGxwYXBlckBpbmVmZmFibGUtZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDM3Cn0="}, "40": {"version": "37", "sha256": "1v01vkvphqjr7c2gh61p84jwvr8yj91rnhjgdgi8jv06fwcvnja0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gdG9kYXkncyBNaWNyb3NvZnQgQmluZyBpbWFnZSBvZiB0aGUgZGF5ICh0aGUgaW1hZ2UgeW91IHNlZSB3aGVuIHlvdSB2aXNpdCBCaW5nLmNvbSkuXG5cbiAqRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggQmluZyBvciBNaWNyb3NvZnQgaW4gYW55IHdheS4gSW1hZ2VzIGFyZSBwcm90ZWN0ZWQgYnkgY29weXJpZ2h0IGFuZCBhcmUgbGljZW5zZWQgb25seSBmb3IgdXNlIGFzIHdhbGxwYXBlcnMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGJhc2VkIGV4dGVuc2l2ZWx5IG9uIHRoZSBOQVNBIEFQT0QgZXh0ZW5zaW9uIGJ5IEVsaW52ZW50aW9uIChodHRwczovL2dpdGh1Yi5jb20vRWxpbnZlbnRpb24pIGFuZCBpbnNwaXJlZCBieSBCaW5nIERlc2t0b3AgV2FsbHBhcGVyIENoYW5nZXIgYnkgVXRrYXJzaCBHdXB0YSAoaHR0cHM6Ly9naXRodWIuY29tL1V0a2Fyc2hHcHRhKS5cblxuRmVhdHVyZXM6XG4qIEZldGNoZXMgQmluZyB3YWxscGFwZXIgb2YgdGhlIGRheSBhbmQgc2V0cyBhcyBib3RoIGxvY2sgc2NyZWVuIGFuZCBkZXNrdG9wIHdhbGxwYXBlciAodXNlciBzZWxlY3RhYmxlIG9uIEdOT01FIHZlcnNpb25zIHRoYXQgc3VwcG9ydCBpdClcbiogT3B0aW9uYWxseSBmb3JjZSBhIHNwZWNpZmljIHJlZ2lvbiAoaS5lLiBsb2NhbGUpXG4qIFVIRCBzdXBwb3J0ZWQgcmVzb2x1dGlvbnNcbiogT25seSBhdHRlbXB0cyB0byBkb3dubG9hZCB3YWxscGFwZXJzIHdoZW4gdGhleSBoYXZlIGJlZW4gdXBkYXRlZFxuKiBEb2Vzbid0IHBvbGwgY29udGludW91c2x5IC0gb25seSBvbmNlIHBlciBkYXkgYW5kIG9uIHN0YXJ0dXAgKHNjaGVkdWxlcyBhIHJlZnJlc2ggd2hlbiBCaW5nIGlzIGR1ZSB0byB1cGRhdGUpXG4gKk5FVzogcmFuZG9tIG1vZGVcbiAqTkVXOiBzZWxlY3Qgd2FsbHBhcGVyIGZyb20gcHJldmlvdXNseSBkb3dubG9hZGVkIGltYWdlc1xuKiBFbmdsaXNoIChlbiksIEdlcm1hbiAoZGUpLCBEdXRjaCAobmwpLCBJdGFsaWFuIChpdCksIFBvbGlzaCAocGwpLCBDaGluZXNlICh6aF9DTiksIEZyZW5jaCAoZnJfRlIpLCBQb3J0dWd1ZXNlIChwdCwgcHRfQlIpLCBSdXNzaWFuIChydV9SVSksIFNwYW5pc2ggKGVzKSwgS29yZWFuIChrbywga29fS1IsIGtvX0tQKSwgSW5kb25lc2lhbiAoaWQpLCBDYXRhbGFuIChjYSksIE5vcndlZ2lhbiBCb2ttXHUwMGU1bCAobmIpICYgTnlub3JzayAobmkpLCBTd2VkaXNoIChzdiksIEFyYWJpYyAoYXIpLCBIdW5nYXJpYW4gKGh1KSBhbmQgRmlubmlzaCAoZmlfRkkpIC0gYSBIVUdFIHRoYW5rcyB0byB0aGUgdHJhbnNsYXRvcnNcblxuQWx3YXlzIHJlc3RhcnQgR05PTUUgYWZ0ZXIgbWFudWFsbHkgdXBkYXRpbmcgZXh0ZW5zaW9ucy4gUGxlYXNlIHJlcG9ydCBidWdzIHRvIHRoZSBHaXRIdWIgcGFnZSBiZWxvdzoiLAogICJuYW1lIjogIkJpbmcgV2FsbHBhcGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJpbmd3YWxscGFwZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25lZmZvL2Jpbmctd2FsbHBhcGVyLWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiQmluZ1dhbGxwYXBlckBpbmVmZmFibGUtZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDM3Cn0="}, "41": {"version": "37", "sha256": "1v01vkvphqjr7c2gh61p84jwvr8yj91rnhjgdgi8jv06fwcvnja0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gdG9kYXkncyBNaWNyb3NvZnQgQmluZyBpbWFnZSBvZiB0aGUgZGF5ICh0aGUgaW1hZ2UgeW91IHNlZSB3aGVuIHlvdSB2aXNpdCBCaW5nLmNvbSkuXG5cbiAqRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggQmluZyBvciBNaWNyb3NvZnQgaW4gYW55IHdheS4gSW1hZ2VzIGFyZSBwcm90ZWN0ZWQgYnkgY29weXJpZ2h0IGFuZCBhcmUgbGljZW5zZWQgb25seSBmb3IgdXNlIGFzIHdhbGxwYXBlcnMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGJhc2VkIGV4dGVuc2l2ZWx5IG9uIHRoZSBOQVNBIEFQT0QgZXh0ZW5zaW9uIGJ5IEVsaW52ZW50aW9uIChodHRwczovL2dpdGh1Yi5jb20vRWxpbnZlbnRpb24pIGFuZCBpbnNwaXJlZCBieSBCaW5nIERlc2t0b3AgV2FsbHBhcGVyIENoYW5nZXIgYnkgVXRrYXJzaCBHdXB0YSAoaHR0cHM6Ly9naXRodWIuY29tL1V0a2Fyc2hHcHRhKS5cblxuRmVhdHVyZXM6XG4qIEZldGNoZXMgQmluZyB3YWxscGFwZXIgb2YgdGhlIGRheSBhbmQgc2V0cyBhcyBib3RoIGxvY2sgc2NyZWVuIGFuZCBkZXNrdG9wIHdhbGxwYXBlciAodXNlciBzZWxlY3RhYmxlIG9uIEdOT01FIHZlcnNpb25zIHRoYXQgc3VwcG9ydCBpdClcbiogT3B0aW9uYWxseSBmb3JjZSBhIHNwZWNpZmljIHJlZ2lvbiAoaS5lLiBsb2NhbGUpXG4qIFVIRCBzdXBwb3J0ZWQgcmVzb2x1dGlvbnNcbiogT25seSBhdHRlbXB0cyB0byBkb3dubG9hZCB3YWxscGFwZXJzIHdoZW4gdGhleSBoYXZlIGJlZW4gdXBkYXRlZFxuKiBEb2Vzbid0IHBvbGwgY29udGludW91c2x5IC0gb25seSBvbmNlIHBlciBkYXkgYW5kIG9uIHN0YXJ0dXAgKHNjaGVkdWxlcyBhIHJlZnJlc2ggd2hlbiBCaW5nIGlzIGR1ZSB0byB1cGRhdGUpXG4gKk5FVzogcmFuZG9tIG1vZGVcbiAqTkVXOiBzZWxlY3Qgd2FsbHBhcGVyIGZyb20gcHJldmlvdXNseSBkb3dubG9hZGVkIGltYWdlc1xuKiBFbmdsaXNoIChlbiksIEdlcm1hbiAoZGUpLCBEdXRjaCAobmwpLCBJdGFsaWFuIChpdCksIFBvbGlzaCAocGwpLCBDaGluZXNlICh6aF9DTiksIEZyZW5jaCAoZnJfRlIpLCBQb3J0dWd1ZXNlIChwdCwgcHRfQlIpLCBSdXNzaWFuIChydV9SVSksIFNwYW5pc2ggKGVzKSwgS29yZWFuIChrbywga29fS1IsIGtvX0tQKSwgSW5kb25lc2lhbiAoaWQpLCBDYXRhbGFuIChjYSksIE5vcndlZ2lhbiBCb2ttXHUwMGU1bCAobmIpICYgTnlub3JzayAobmkpLCBTd2VkaXNoIChzdiksIEFyYWJpYyAoYXIpLCBIdW5nYXJpYW4gKGh1KSBhbmQgRmlubmlzaCAoZmlfRkkpIC0gYSBIVUdFIHRoYW5rcyB0byB0aGUgdHJhbnNsYXRvcnNcblxuQWx3YXlzIHJlc3RhcnQgR05PTUUgYWZ0ZXIgbWFudWFsbHkgdXBkYXRpbmcgZXh0ZW5zaW9ucy4gUGxlYXNlIHJlcG9ydCBidWdzIHRvIHRoZSBHaXRIdWIgcGFnZSBiZWxvdzoiLAogICJuYW1lIjogIkJpbmcgV2FsbHBhcGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJpbmd3YWxscGFwZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25lZmZvL2Jpbmctd2FsbHBhcGVyLWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiQmluZ1dhbGxwYXBlckBpbmVmZmFibGUtZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDM3Cn0="}}}
+, {"uuid": "BingWallpaper@ineffable-gmail.com", "name": "Bing Wallpaper", "pname": "bing-wallpaper-changer", "description": "Lightweight GNOME shell extension to set your wallpaper to today's Microsoft Bing image of the day (the image you see when you visit Bing.com).\n\n *Disclaimer*: this extension is unofficial and not affiliated with Bing or Microsoft in any way. Images are protected by copyright and are licensed only for use as wallpapers.\n\nThis extension is based extensively on the NASA APOD extension by Elinvention (https://github.com/Elinvention) and inspired by Bing Desktop Wallpaper Changer by Utkarsh Gupta (https://github.com/UtkarshGpta).\n\nFeatures:\n* Fetches Bing wallpaper of the day and sets as both lock screen and desktop wallpaper (user selectable on GNOME versions that support it)\n* Optionally force a specific region (i.e. locale)\n* UHD supported resolutions\n* Only attempts to download wallpapers when they have been updated\n* Doesn't poll continuously - only once per day and on startup (schedules a refresh when Bing is due to update)\n *NEW: random mode\n *NEW: select wallpaper from previously downloaded images\n* English (en), German (de), Dutch (nl), Italian (it), Polish (pl), Chinese (zh_CN), French (fr_FR), Portuguese (pt, pt_BR), Russian (ru_RU), Spanish (es), Korean (ko, ko_KR, ko_KP), Indonesian (id), Catalan (ca), Norwegian Bokmål (nb) & Nynorsk (ni), Swedish (sv), Arabic (ar), Hungarian (hu) and Finnish (fi_FI) - a HUGE thanks to the translators\n\nAlways restart GNOME after manually updating extensions. Please report bugs to the GitHub page below:", "link": "https://extensions.gnome.org/extension/1262/bing-wallpaper-changer/", "shell_version_map": {"38": {"version": "39", "sha256": "098z2pz1hg11nhkjxxkcmg83g76qyx3ggpyn2xma1mfalv6b6fyr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gdG9kYXkncyBNaWNyb3NvZnQgQmluZyBpbWFnZSBvZiB0aGUgZGF5ICh0aGUgaW1hZ2UgeW91IHNlZSB3aGVuIHlvdSB2aXNpdCBCaW5nLmNvbSkuXG5cbiAqRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggQmluZyBvciBNaWNyb3NvZnQgaW4gYW55IHdheS4gSW1hZ2VzIGFyZSBwcm90ZWN0ZWQgYnkgY29weXJpZ2h0IGFuZCBhcmUgbGljZW5zZWQgb25seSBmb3IgdXNlIGFzIHdhbGxwYXBlcnMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGJhc2VkIGV4dGVuc2l2ZWx5IG9uIHRoZSBOQVNBIEFQT0QgZXh0ZW5zaW9uIGJ5IEVsaW52ZW50aW9uIChodHRwczovL2dpdGh1Yi5jb20vRWxpbnZlbnRpb24pIGFuZCBpbnNwaXJlZCBieSBCaW5nIERlc2t0b3AgV2FsbHBhcGVyIENoYW5nZXIgYnkgVXRrYXJzaCBHdXB0YSAoaHR0cHM6Ly9naXRodWIuY29tL1V0a2Fyc2hHcHRhKS5cblxuRmVhdHVyZXM6XG4qIEZldGNoZXMgQmluZyB3YWxscGFwZXIgb2YgdGhlIGRheSBhbmQgc2V0cyBhcyBib3RoIGxvY2sgc2NyZWVuIGFuZCBkZXNrdG9wIHdhbGxwYXBlciAodXNlciBzZWxlY3RhYmxlIG9uIEdOT01FIHZlcnNpb25zIHRoYXQgc3VwcG9ydCBpdClcbiogT3B0aW9uYWxseSBmb3JjZSBhIHNwZWNpZmljIHJlZ2lvbiAoaS5lLiBsb2NhbGUpXG4qIFVIRCBzdXBwb3J0ZWQgcmVzb2x1dGlvbnNcbiogT25seSBhdHRlbXB0cyB0byBkb3dubG9hZCB3YWxscGFwZXJzIHdoZW4gdGhleSBoYXZlIGJlZW4gdXBkYXRlZFxuKiBEb2Vzbid0IHBvbGwgY29udGludW91c2x5IC0gb25seSBvbmNlIHBlciBkYXkgYW5kIG9uIHN0YXJ0dXAgKHNjaGVkdWxlcyBhIHJlZnJlc2ggd2hlbiBCaW5nIGlzIGR1ZSB0byB1cGRhdGUpXG4gKk5FVzogcmFuZG9tIG1vZGVcbiAqTkVXOiBzZWxlY3Qgd2FsbHBhcGVyIGZyb20gcHJldmlvdXNseSBkb3dubG9hZGVkIGltYWdlc1xuKiBFbmdsaXNoIChlbiksIEdlcm1hbiAoZGUpLCBEdXRjaCAobmwpLCBJdGFsaWFuIChpdCksIFBvbGlzaCAocGwpLCBDaGluZXNlICh6aF9DTiksIEZyZW5jaCAoZnJfRlIpLCBQb3J0dWd1ZXNlIChwdCwgcHRfQlIpLCBSdXNzaWFuIChydV9SVSksIFNwYW5pc2ggKGVzKSwgS29yZWFuIChrbywga29fS1IsIGtvX0tQKSwgSW5kb25lc2lhbiAoaWQpLCBDYXRhbGFuIChjYSksIE5vcndlZ2lhbiBCb2ttXHUwMGU1bCAobmIpICYgTnlub3JzayAobmkpLCBTd2VkaXNoIChzdiksIEFyYWJpYyAoYXIpLCBIdW5nYXJpYW4gKGh1KSBhbmQgRmlubmlzaCAoZmlfRkkpIC0gYSBIVUdFIHRoYW5rcyB0byB0aGUgdHJhbnNsYXRvcnNcblxuQWx3YXlzIHJlc3RhcnQgR05PTUUgYWZ0ZXIgbWFudWFsbHkgdXBkYXRpbmcgZXh0ZW5zaW9ucy4gUGxlYXNlIHJlcG9ydCBidWdzIHRvIHRoZSBHaXRIdWIgcGFnZSBiZWxvdzoiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJCaW5nV2FsbHBhcGVyIiwKICAibmFtZSI6ICJCaW5nIFdhbGxwYXBlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iaW5nd2FsbHBhcGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVmZm8vYmluZy13YWxscGFwZXItZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJCaW5nV2FsbHBhcGVyQGluZWZmYWJsZS1nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzkKfQ=="}, "40": {"version": "39", "sha256": "098z2pz1hg11nhkjxxkcmg83g76qyx3ggpyn2xma1mfalv6b6fyr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gdG9kYXkncyBNaWNyb3NvZnQgQmluZyBpbWFnZSBvZiB0aGUgZGF5ICh0aGUgaW1hZ2UgeW91IHNlZSB3aGVuIHlvdSB2aXNpdCBCaW5nLmNvbSkuXG5cbiAqRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggQmluZyBvciBNaWNyb3NvZnQgaW4gYW55IHdheS4gSW1hZ2VzIGFyZSBwcm90ZWN0ZWQgYnkgY29weXJpZ2h0IGFuZCBhcmUgbGljZW5zZWQgb25seSBmb3IgdXNlIGFzIHdhbGxwYXBlcnMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGJhc2VkIGV4dGVuc2l2ZWx5IG9uIHRoZSBOQVNBIEFQT0QgZXh0ZW5zaW9uIGJ5IEVsaW52ZW50aW9uIChodHRwczovL2dpdGh1Yi5jb20vRWxpbnZlbnRpb24pIGFuZCBpbnNwaXJlZCBieSBCaW5nIERlc2t0b3AgV2FsbHBhcGVyIENoYW5nZXIgYnkgVXRrYXJzaCBHdXB0YSAoaHR0cHM6Ly9naXRodWIuY29tL1V0a2Fyc2hHcHRhKS5cblxuRmVhdHVyZXM6XG4qIEZldGNoZXMgQmluZyB3YWxscGFwZXIgb2YgdGhlIGRheSBhbmQgc2V0cyBhcyBib3RoIGxvY2sgc2NyZWVuIGFuZCBkZXNrdG9wIHdhbGxwYXBlciAodXNlciBzZWxlY3RhYmxlIG9uIEdOT01FIHZlcnNpb25zIHRoYXQgc3VwcG9ydCBpdClcbiogT3B0aW9uYWxseSBmb3JjZSBhIHNwZWNpZmljIHJlZ2lvbiAoaS5lLiBsb2NhbGUpXG4qIFVIRCBzdXBwb3J0ZWQgcmVzb2x1dGlvbnNcbiogT25seSBhdHRlbXB0cyB0byBkb3dubG9hZCB3YWxscGFwZXJzIHdoZW4gdGhleSBoYXZlIGJlZW4gdXBkYXRlZFxuKiBEb2Vzbid0IHBvbGwgY29udGludW91c2x5IC0gb25seSBvbmNlIHBlciBkYXkgYW5kIG9uIHN0YXJ0dXAgKHNjaGVkdWxlcyBhIHJlZnJlc2ggd2hlbiBCaW5nIGlzIGR1ZSB0byB1cGRhdGUpXG4gKk5FVzogcmFuZG9tIG1vZGVcbiAqTkVXOiBzZWxlY3Qgd2FsbHBhcGVyIGZyb20gcHJldmlvdXNseSBkb3dubG9hZGVkIGltYWdlc1xuKiBFbmdsaXNoIChlbiksIEdlcm1hbiAoZGUpLCBEdXRjaCAobmwpLCBJdGFsaWFuIChpdCksIFBvbGlzaCAocGwpLCBDaGluZXNlICh6aF9DTiksIEZyZW5jaCAoZnJfRlIpLCBQb3J0dWd1ZXNlIChwdCwgcHRfQlIpLCBSdXNzaWFuIChydV9SVSksIFNwYW5pc2ggKGVzKSwgS29yZWFuIChrbywga29fS1IsIGtvX0tQKSwgSW5kb25lc2lhbiAoaWQpLCBDYXRhbGFuIChjYSksIE5vcndlZ2lhbiBCb2ttXHUwMGU1bCAobmIpICYgTnlub3JzayAobmkpLCBTd2VkaXNoIChzdiksIEFyYWJpYyAoYXIpLCBIdW5nYXJpYW4gKGh1KSBhbmQgRmlubmlzaCAoZmlfRkkpIC0gYSBIVUdFIHRoYW5rcyB0byB0aGUgdHJhbnNsYXRvcnNcblxuQWx3YXlzIHJlc3RhcnQgR05PTUUgYWZ0ZXIgbWFudWFsbHkgdXBkYXRpbmcgZXh0ZW5zaW9ucy4gUGxlYXNlIHJlcG9ydCBidWdzIHRvIHRoZSBHaXRIdWIgcGFnZSBiZWxvdzoiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJCaW5nV2FsbHBhcGVyIiwKICAibmFtZSI6ICJCaW5nIFdhbGxwYXBlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iaW5nd2FsbHBhcGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVmZm8vYmluZy13YWxscGFwZXItZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJCaW5nV2FsbHBhcGVyQGluZWZmYWJsZS1nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzkKfQ=="}, "41": {"version": "39", "sha256": "098z2pz1hg11nhkjxxkcmg83g76qyx3ggpyn2xma1mfalv6b6fyr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gdG9kYXkncyBNaWNyb3NvZnQgQmluZyBpbWFnZSBvZiB0aGUgZGF5ICh0aGUgaW1hZ2UgeW91IHNlZSB3aGVuIHlvdSB2aXNpdCBCaW5nLmNvbSkuXG5cbiAqRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggQmluZyBvciBNaWNyb3NvZnQgaW4gYW55IHdheS4gSW1hZ2VzIGFyZSBwcm90ZWN0ZWQgYnkgY29weXJpZ2h0IGFuZCBhcmUgbGljZW5zZWQgb25seSBmb3IgdXNlIGFzIHdhbGxwYXBlcnMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGJhc2VkIGV4dGVuc2l2ZWx5IG9uIHRoZSBOQVNBIEFQT0QgZXh0ZW5zaW9uIGJ5IEVsaW52ZW50aW9uIChodHRwczovL2dpdGh1Yi5jb20vRWxpbnZlbnRpb24pIGFuZCBpbnNwaXJlZCBieSBCaW5nIERlc2t0b3AgV2FsbHBhcGVyIENoYW5nZXIgYnkgVXRrYXJzaCBHdXB0YSAoaHR0cHM6Ly9naXRodWIuY29tL1V0a2Fyc2hHcHRhKS5cblxuRmVhdHVyZXM6XG4qIEZldGNoZXMgQmluZyB3YWxscGFwZXIgb2YgdGhlIGRheSBhbmQgc2V0cyBhcyBib3RoIGxvY2sgc2NyZWVuIGFuZCBkZXNrdG9wIHdhbGxwYXBlciAodXNlciBzZWxlY3RhYmxlIG9uIEdOT01FIHZlcnNpb25zIHRoYXQgc3VwcG9ydCBpdClcbiogT3B0aW9uYWxseSBmb3JjZSBhIHNwZWNpZmljIHJlZ2lvbiAoaS5lLiBsb2NhbGUpXG4qIFVIRCBzdXBwb3J0ZWQgcmVzb2x1dGlvbnNcbiogT25seSBhdHRlbXB0cyB0byBkb3dubG9hZCB3YWxscGFwZXJzIHdoZW4gdGhleSBoYXZlIGJlZW4gdXBkYXRlZFxuKiBEb2Vzbid0IHBvbGwgY29udGludW91c2x5IC0gb25seSBvbmNlIHBlciBkYXkgYW5kIG9uIHN0YXJ0dXAgKHNjaGVkdWxlcyBhIHJlZnJlc2ggd2hlbiBCaW5nIGlzIGR1ZSB0byB1cGRhdGUpXG4gKk5FVzogcmFuZG9tIG1vZGVcbiAqTkVXOiBzZWxlY3Qgd2FsbHBhcGVyIGZyb20gcHJldmlvdXNseSBkb3dubG9hZGVkIGltYWdlc1xuKiBFbmdsaXNoIChlbiksIEdlcm1hbiAoZGUpLCBEdXRjaCAobmwpLCBJdGFsaWFuIChpdCksIFBvbGlzaCAocGwpLCBDaGluZXNlICh6aF9DTiksIEZyZW5jaCAoZnJfRlIpLCBQb3J0dWd1ZXNlIChwdCwgcHRfQlIpLCBSdXNzaWFuIChydV9SVSksIFNwYW5pc2ggKGVzKSwgS29yZWFuIChrbywga29fS1IsIGtvX0tQKSwgSW5kb25lc2lhbiAoaWQpLCBDYXRhbGFuIChjYSksIE5vcndlZ2lhbiBCb2ttXHUwMGU1bCAobmIpICYgTnlub3JzayAobmkpLCBTd2VkaXNoIChzdiksIEFyYWJpYyAoYXIpLCBIdW5nYXJpYW4gKGh1KSBhbmQgRmlubmlzaCAoZmlfRkkpIC0gYSBIVUdFIHRoYW5rcyB0byB0aGUgdHJhbnNsYXRvcnNcblxuQWx3YXlzIHJlc3RhcnQgR05PTUUgYWZ0ZXIgbWFudWFsbHkgdXBkYXRpbmcgZXh0ZW5zaW9ucy4gUGxlYXNlIHJlcG9ydCBidWdzIHRvIHRoZSBHaXRIdWIgcGFnZSBiZWxvdzoiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJCaW5nV2FsbHBhcGVyIiwKICAibmFtZSI6ICJCaW5nIFdhbGxwYXBlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iaW5nd2FsbHBhcGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVmZm8vYmluZy13YWxscGFwZXItZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJCaW5nV2FsbHBhcGVyQGluZWZmYWJsZS1nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzkKfQ=="}, "42": {"version": "39", "sha256": "098z2pz1hg11nhkjxxkcmg83g76qyx3ggpyn2xma1mfalv6b6fyr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gdG9kYXkncyBNaWNyb3NvZnQgQmluZyBpbWFnZSBvZiB0aGUgZGF5ICh0aGUgaW1hZ2UgeW91IHNlZSB3aGVuIHlvdSB2aXNpdCBCaW5nLmNvbSkuXG5cbiAqRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggQmluZyBvciBNaWNyb3NvZnQgaW4gYW55IHdheS4gSW1hZ2VzIGFyZSBwcm90ZWN0ZWQgYnkgY29weXJpZ2h0IGFuZCBhcmUgbGljZW5zZWQgb25seSBmb3IgdXNlIGFzIHdhbGxwYXBlcnMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGJhc2VkIGV4dGVuc2l2ZWx5IG9uIHRoZSBOQVNBIEFQT0QgZXh0ZW5zaW9uIGJ5IEVsaW52ZW50aW9uIChodHRwczovL2dpdGh1Yi5jb20vRWxpbnZlbnRpb24pIGFuZCBpbnNwaXJlZCBieSBCaW5nIERlc2t0b3AgV2FsbHBhcGVyIENoYW5nZXIgYnkgVXRrYXJzaCBHdXB0YSAoaHR0cHM6Ly9naXRodWIuY29tL1V0a2Fyc2hHcHRhKS5cblxuRmVhdHVyZXM6XG4qIEZldGNoZXMgQmluZyB3YWxscGFwZXIgb2YgdGhlIGRheSBhbmQgc2V0cyBhcyBib3RoIGxvY2sgc2NyZWVuIGFuZCBkZXNrdG9wIHdhbGxwYXBlciAodXNlciBzZWxlY3RhYmxlIG9uIEdOT01FIHZlcnNpb25zIHRoYXQgc3VwcG9ydCBpdClcbiogT3B0aW9uYWxseSBmb3JjZSBhIHNwZWNpZmljIHJlZ2lvbiAoaS5lLiBsb2NhbGUpXG4qIFVIRCBzdXBwb3J0ZWQgcmVzb2x1dGlvbnNcbiogT25seSBhdHRlbXB0cyB0byBkb3dubG9hZCB3YWxscGFwZXJzIHdoZW4gdGhleSBoYXZlIGJlZW4gdXBkYXRlZFxuKiBEb2Vzbid0IHBvbGwgY29udGludW91c2x5IC0gb25seSBvbmNlIHBlciBkYXkgYW5kIG9uIHN0YXJ0dXAgKHNjaGVkdWxlcyBhIHJlZnJlc2ggd2hlbiBCaW5nIGlzIGR1ZSB0byB1cGRhdGUpXG4gKk5FVzogcmFuZG9tIG1vZGVcbiAqTkVXOiBzZWxlY3Qgd2FsbHBhcGVyIGZyb20gcHJldmlvdXNseSBkb3dubG9hZGVkIGltYWdlc1xuKiBFbmdsaXNoIChlbiksIEdlcm1hbiAoZGUpLCBEdXRjaCAobmwpLCBJdGFsaWFuIChpdCksIFBvbGlzaCAocGwpLCBDaGluZXNlICh6aF9DTiksIEZyZW5jaCAoZnJfRlIpLCBQb3J0dWd1ZXNlIChwdCwgcHRfQlIpLCBSdXNzaWFuIChydV9SVSksIFNwYW5pc2ggKGVzKSwgS29yZWFuIChrbywga29fS1IsIGtvX0tQKSwgSW5kb25lc2lhbiAoaWQpLCBDYXRhbGFuIChjYSksIE5vcndlZ2lhbiBCb2ttXHUwMGU1bCAobmIpICYgTnlub3JzayAobmkpLCBTd2VkaXNoIChzdiksIEFyYWJpYyAoYXIpLCBIdW5nYXJpYW4gKGh1KSBhbmQgRmlubmlzaCAoZmlfRkkpIC0gYSBIVUdFIHRoYW5rcyB0byB0aGUgdHJhbnNsYXRvcnNcblxuQWx3YXlzIHJlc3RhcnQgR05PTUUgYWZ0ZXIgbWFudWFsbHkgdXBkYXRpbmcgZXh0ZW5zaW9ucy4gUGxlYXNlIHJlcG9ydCBidWdzIHRvIHRoZSBHaXRIdWIgcGFnZSBiZWxvdzoiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJCaW5nV2FsbHBhcGVyIiwKICAibmFtZSI6ICJCaW5nIFdhbGxwYXBlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iaW5nd2FsbHBhcGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVmZm8vYmluZy13YWxscGFwZXItZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJCaW5nV2FsbHBhcGVyQGluZWZmYWJsZS1nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzkKfQ=="}}}
 , {"uuid": "gnomesome@chwick.github.com", "name": "Gnomesome", "pname": "gnomesome", "description": "Tiling window manager with awesome keybindings", "link": "https://extensions.gnome.org/extension/1268/gnomesome/", "shell_version_map": {"38": {"version": "15", "sha256": "1dn67is3qk80xxfkc2pd43jrsyylmsprd7v3axvl677wdjgaq83z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyB3aW5kb3cgbWFuYWdlciB3aXRoIGF3ZXNvbWUga2V5YmluZGluZ3MiLAogICJuYW1lIjogIkdub21lc29tZSIsCiAgInNldHRpbmdzLWtleWJpbmRpbmdzIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdub21lc29tZS5rZXliaW5kaW5ncyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Nod2ljay9nbm9tZXNvbWUiLAogICJ1dWlkIjogImdub21lc29tZUBjaHdpY2suZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxNQp9"}}}
 , {"uuid": "gnome-vagrant-indicator@gnome-shell-exstensions.fffilo.github.com", "name": "GNOME Vagrant Indicator", "pname": "gnome-vagrant-indicator", "description": "Easily manage your vagrant machines from status area", "link": "https://extensions.gnome.org/extension/1269/gnome-vagrant-indicator/", "shell_version_map": {"40": {"version": "14", "sha256": "194kfjbv8wc4krxcdazm03c0rnzz11n5xa0m11zq3nczw9pasvwf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVhc2lseSBtYW5hZ2UgeW91ciB2YWdyYW50IG1hY2hpbmVzIGZyb20gc3RhdHVzIGFyZWEiLAogICJkZXNjcmlwdGlvbi1odG1sIjogIkluc3BpcmVkIGJ5IDxhIGhyZWY9XCJodHRwczovL2dpdGh1Yi5jb20vY2FuZGlkdGltL3ZhZ3JhbnQtYXBwaW5kaWNhdG9yXCI+dmdhcHBsZXQ8L2E+LFxuPGI+R05PTUUgVmFncmFudCBJbmRpY2F0b3I8L2I+IGxldHMgeW91IGVhc2lseSBtYW5hZ2UgeW91ciB2YWdyYW50IG1hY2hpbmVzIGZyb20gc3RhdHVzIGFyZWEuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtdmFncmFudC1pbmRpY2F0b3IiLAogICJsaWNlbnNlIjogIkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYzLjAiLAogICJsaWNlbnNlLWh0bWwiOiAiVGhpcyBwcm9ncmFtIGNvbWVzIHdpdGggQUJTT0xVVEVMWSBOTyBXQVJSQU5UWS5cblNlZSB0aGUgPGEgaHJlZj1cImh0dHBzOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTMuMC5odG1sXCI+R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMDwvYT4gZm9yIGRldGFpbHMuIiwKICAibmFtZSI6ICJHTk9NRSBWYWdyYW50IEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJGcmFuam8gRmlsbyA8ZmZmaWxvNjY2QGdtYWlsLmNvbT4iLAogICJvcmlnaW5hbC1hdXRob3ItaHRtbCI6ICJGcmFuam8gRmlsbyA8YSBocmVmPVwibWFpbHRvOmZmZmlsbzY2NkBnbWFpbC5jb21cIj4mbHQ7ZmZmaWxvNjY2QGdtYWlsLmNvbSZndDs8L2E+IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdub21lLXZhZ3JhbnQtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2ZmZmlsby9nbm9tZS12YWdyYW50LWluZGljYXRvciIsCiAgInV1aWQiOiAiZ25vbWUtdmFncmFudC1pbmRpY2F0b3JAZ25vbWUtc2hlbGwtZXhzdGVuc2lvbnMuZmZmaWxvLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
 , {"uuid": "prime-indicator@gnome-shell-exstensions.fffilo.github.com", "name": "Prime Indicator", "pname": "prime-indicator", "description": "Intel/NVIDIA GPU Switch", "link": "https://extensions.gnome.org/extension/1275/prime-indicator/", "shell_version_map": {"40": {"version": "9", "sha256": "144qshljqc680w296w49fbfdf63zggl1in12y7dfmhra5ph4mk3n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVsL05WSURJQSBHUFUgU3dpdGNoIiwKICAiZGVzY3JpcHRpb24taHRtbCI6ICJHTk9NRSBzaGVsbCBleHRlbnNpb24gdGhhdCBhZGRzIEludGVsL05WSURJQSBHUFUgc3dpdGNoIHRvIGFnZ3JlZ2F0ZSBtZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogInByaW1lLWluZGljYXRvciIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIlByaW1lIEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJGcmFuam8gRmlsbyA8ZmZmaWxvNjY2QGdtYWlsLmNvbT4iLAogICJvcmlnaW5hbC1hdXRob3ItaHRtbCI6ICJGcmFuam8gRmlsbyAmbHQ7PGEgaHJlZj1cIm1haWx0bzpmZmZpbG82NjZAZ21haWwuY29tXCI+ZmZmaWxvNjY2QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnByaW1lLWluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mZmZpbG8vcHJpbWUtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJwcmltZS1pbmRpY2F0b3JAZ25vbWUtc2hlbGwtZXhzdGVuc2lvbnMuZmZmaWxvLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}}}
@@ -156,9 +156,9 @@
 , {"uuid": "fuzzy-clock@keepawayfromfire.co.uk", "name": "Fuzzy Clock", "pname": "fuzzy-clock", "description": "Make the top bar clock fuzzy", "link": "https://extensions.gnome.org/extension/1281/fuzzy-clock/", "shell_version_map": {"38": {"version": "4", "sha256": "1dvpkwkzagw23fhvmz9ncjldmhlv4493gn08r6rqslp4hqlmwqfy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIHRvcCBiYXIgY2xvY2sgZnV6enkiLAogICJuYW1lIjogIkZ1enp5IENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MS4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ2otTWFsb25lL0Z1enp5LUNsb2NrIiwKICAidXVpZCI6ICJmdXp6eS1jbG9ja0BrZWVwYXdheWZyb21maXJlLmNvLnVrIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "1dvpkwkzagw23fhvmz9ncjldmhlv4493gn08r6rqslp4hqlmwqfy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIHRvcCBiYXIgY2xvY2sgZnV6enkiLAogICJuYW1lIjogIkZ1enp5IENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MS4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ2otTWFsb25lL0Z1enp5LUNsb2NrIiwKICAidXVpZCI6ICJmdXp6eS1jbG9ja0BrZWVwYXdheWZyb21maXJlLmNvLnVrIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "1dvpkwkzagw23fhvmz9ncjldmhlv4493gn08r6rqslp4hqlmwqfy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIHRvcCBiYXIgY2xvY2sgZnV6enkiLAogICJuYW1lIjogIkZ1enp5IENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MS4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ2otTWFsb25lL0Z1enp5LUNsb2NrIiwKICAidXVpZCI6ICJmdXp6eS1jbG9ja0BrZWVwYXdheWZyb21maXJlLmNvLnVrIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "ds4battery@slie.ru", "name": "Dual Shock 4 battery percentage", "pname": "dual-shock-4-battery-percentage", "description": "Show DS4/DS3 battery remaining power percentage at the top panel", "link": "https://extensions.gnome.org/extension/1283/dual-shock-4-battery-percentage/", "shell_version_map": {"38": {"version": "7", "sha256": "0yb1j3hlza96zbd82gjc7wyjqkj5vjzcaj8l5n8xhfrdi7icxf6j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgRFM0L0RTMyBiYXR0ZXJ5IHJlbWFpbmluZyBwb3dlciBwZXJjZW50YWdlIGF0IHRoZSB0b3AgcGFuZWwiLAogICJuYW1lIjogIkR1YWwgU2hvY2sgNCBiYXR0ZXJ5IHBlcmNlbnRhZ2UiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgIm1lQHNsaWUucnUiCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdGhhbmtqdXJhL2RzNGJhdHRlcnkiLAogICJ1dWlkIjogImRzNGJhdHRlcnlAc2xpZS5ydSIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "0yb1j3hlza96zbd82gjc7wyjqkj5vjzcaj8l5n8xhfrdi7icxf6j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgRFM0L0RTMyBiYXR0ZXJ5IHJlbWFpbmluZyBwb3dlciBwZXJjZW50YWdlIGF0IHRoZSB0b3AgcGFuZWwiLAogICJuYW1lIjogIkR1YWwgU2hvY2sgNCBiYXR0ZXJ5IHBlcmNlbnRhZ2UiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgIm1lQHNsaWUucnUiCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdGhhbmtqdXJhL2RzNGJhdHRlcnkiLAogICJ1dWlkIjogImRzNGJhdHRlcnlAc2xpZS5ydSIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "hotel-manager@hardpixel.eu", "name": "Hotel Manager", "pname": "hotel-manager", "description": "Hotel Manager allows to start and stop the Hotel daemon and your development servers via a menu in the status area.", "link": "https://extensions.gnome.org/extension/1285/hotel-manager/", "shell_version_map": {"38": {"version": "14", "sha256": "0ag9rbfcaw2naa1qg92dl0pclb0d3lx1bsra83cdcx6m853mff6k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhvdGVsIE1hbmFnZXIgYWxsb3dzIHRvIHN0YXJ0IGFuZCBzdG9wIHRoZSBIb3RlbCBkYWVtb24gYW5kIHlvdXIgZGV2ZWxvcG1lbnQgc2VydmVycyB2aWEgYSBtZW51IGluIHRoZSBzdGF0dXMgYXJlYS4iLAogICJuYW1lIjogIkhvdGVsIE1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hhcmRwaXhlbC9ob3RlbC1tYW5hZ2VyIiwKICAidXVpZCI6ICJob3RlbC1tYW5hZ2VyQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiAxNAp9"}, "40": {"version": "14", "sha256": "0ag9rbfcaw2naa1qg92dl0pclb0d3lx1bsra83cdcx6m853mff6k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhvdGVsIE1hbmFnZXIgYWxsb3dzIHRvIHN0YXJ0IGFuZCBzdG9wIHRoZSBIb3RlbCBkYWVtb24gYW5kIHlvdXIgZGV2ZWxvcG1lbnQgc2VydmVycyB2aWEgYSBtZW51IGluIHRoZSBzdGF0dXMgYXJlYS4iLAogICJuYW1lIjogIkhvdGVsIE1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hhcmRwaXhlbC9ob3RlbC1tYW5hZ2VyIiwKICAidXVpZCI6ICJob3RlbC1tYW5hZ2VyQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiAxNAp9"}, "41": {"version": "14", "sha256": "0ag9rbfcaw2naa1qg92dl0pclb0d3lx1bsra83cdcx6m853mff6k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhvdGVsIE1hbmFnZXIgYWxsb3dzIHRvIHN0YXJ0IGFuZCBzdG9wIHRoZSBIb3RlbCBkYWVtb24gYW5kIHlvdXIgZGV2ZWxvcG1lbnQgc2VydmVycyB2aWEgYSBtZW51IGluIHRoZSBzdGF0dXMgYXJlYS4iLAogICJuYW1lIjogIkhvdGVsIE1hbmFnZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hhcmRwaXhlbC9ob3RlbC1tYW5hZ2VyIiwKICAidXVpZCI6ICJob3RlbC1tYW5hZ2VyQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiAxNAp9"}}}
-, {"uuid": "unite@hardpixel.eu", "name": "Unite", "pname": "unite", "description": "Unite is a GNOME Shell extension which makes a few layout tweaks to the top panel and removes window decorations to make it look like Ubuntu Unity Shell.\n\n- Adds window buttons to the top panel for maximized windows.\n- Shows current window title in the app menu for maximized windows.\n- Removes titlebars on maximized windows.\n- Hides window controls on maximized windows with headerbars.\n- Moves the date to the right, reduces panel spacing and removes dropdown arrows.\n- Moves legacy tray icons to the top panel.\n- Moves notifications to the right.\n- Hides activities button.\n- Adds desktop name to the top panel.\n\nThis extension depends on some Xorg utilities. To install them:\n- Debian/Ubuntu: apt install x11-utils\n- Fedora/RHEL: dnf install xprop\n- Fedora Silverblue: rpm-ostree install xprop\n- Arch: pacman -S xorg-xprop\n\n*Settings are provided to enable/disable or customize the available tweaks.\n* Since version 2 applications on wayland with client side decorations are supported using CSS.", "link": "https://extensions.gnome.org/extension/1287/unite/", "shell_version_map": {"38": {"version": "59", "sha256": "1a0cn11c09wa2rxw18f86z8zm33bp496xi1yjl5amw7zx9ki6sl5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuaXRlIGlzIGEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIHdoaWNoIG1ha2VzIGEgZmV3IGxheW91dCB0d2Vha3MgdG8gdGhlIHRvcCBwYW5lbCBhbmQgcmVtb3ZlcyB3aW5kb3cgZGVjb3JhdGlvbnMgdG8gbWFrZSBpdCBsb29rIGxpa2UgVWJ1bnR1IFVuaXR5IFNoZWxsLlxuXG4tIEFkZHMgd2luZG93IGJ1dHRvbnMgdG8gdGhlIHRvcCBwYW5lbCBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFNob3dzIGN1cnJlbnQgd2luZG93IHRpdGxlIGluIHRoZSBhcHAgbWVudSBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFJlbW92ZXMgdGl0bGViYXJzIG9uIG1heGltaXplZCB3aW5kb3dzLlxuLSBIaWRlcyB3aW5kb3cgY29udHJvbHMgb24gbWF4aW1pemVkIHdpbmRvd3Mgd2l0aCBoZWFkZXJiYXJzLlxuLSBNb3ZlcyB0aGUgZGF0ZSB0byB0aGUgcmlnaHQsIHJlZHVjZXMgcGFuZWwgc3BhY2luZyBhbmQgcmVtb3ZlcyBkcm9wZG93biBhcnJvd3MuXG4tIE1vdmVzIGxlZ2FjeSB0cmF5IGljb25zIHRvIHRoZSB0b3AgcGFuZWwuXG4tIE1vdmVzIG5vdGlmaWNhdGlvbnMgdG8gdGhlIHJpZ2h0LlxuLSBIaWRlcyBhY3Rpdml0aWVzIGJ1dHRvbi5cbi0gQWRkcyBkZXNrdG9wIG5hbWUgdG8gdGhlIHRvcCBwYW5lbC5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBzb21lIFhvcmcgdXRpbGl0aWVzLiBUbyBpbnN0YWxsIHRoZW06XG4tIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuLSBGZWRvcmEvUkhFTDogZG5mIGluc3RhbGwgeHByb3Bcbi0gRmVkb3JhIFNpbHZlcmJsdWU6IHJwbS1vc3RyZWUgaW5zdGFsbCB4cHJvcFxuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIG9yIGN1c3RvbWl6ZSB0aGUgYXZhaWxhYmxlIHR3ZWFrcy5cbiogU2luY2UgdmVyc2lvbiAyIGFwcGxpY2F0aW9ucyBvbiB3YXlsYW5kIHdpdGggY2xpZW50IHNpZGUgZGVjb3JhdGlvbnMgYXJlIHN1cHBvcnRlZCB1c2luZyBDU1MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidW5pdGUiLAogICJuYW1lIjogIlVuaXRlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVuaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvdW5pdGUtc2hlbGwiLAogICJ1dWlkIjogInVuaXRlQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiA1OQp9"}, "40": {"version": "59", "sha256": "1a0cn11c09wa2rxw18f86z8zm33bp496xi1yjl5amw7zx9ki6sl5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuaXRlIGlzIGEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIHdoaWNoIG1ha2VzIGEgZmV3IGxheW91dCB0d2Vha3MgdG8gdGhlIHRvcCBwYW5lbCBhbmQgcmVtb3ZlcyB3aW5kb3cgZGVjb3JhdGlvbnMgdG8gbWFrZSBpdCBsb29rIGxpa2UgVWJ1bnR1IFVuaXR5IFNoZWxsLlxuXG4tIEFkZHMgd2luZG93IGJ1dHRvbnMgdG8gdGhlIHRvcCBwYW5lbCBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFNob3dzIGN1cnJlbnQgd2luZG93IHRpdGxlIGluIHRoZSBhcHAgbWVudSBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFJlbW92ZXMgdGl0bGViYXJzIG9uIG1heGltaXplZCB3aW5kb3dzLlxuLSBIaWRlcyB3aW5kb3cgY29udHJvbHMgb24gbWF4aW1pemVkIHdpbmRvd3Mgd2l0aCBoZWFkZXJiYXJzLlxuLSBNb3ZlcyB0aGUgZGF0ZSB0byB0aGUgcmlnaHQsIHJlZHVjZXMgcGFuZWwgc3BhY2luZyBhbmQgcmVtb3ZlcyBkcm9wZG93biBhcnJvd3MuXG4tIE1vdmVzIGxlZ2FjeSB0cmF5IGljb25zIHRvIHRoZSB0b3AgcGFuZWwuXG4tIE1vdmVzIG5vdGlmaWNhdGlvbnMgdG8gdGhlIHJpZ2h0LlxuLSBIaWRlcyBhY3Rpdml0aWVzIGJ1dHRvbi5cbi0gQWRkcyBkZXNrdG9wIG5hbWUgdG8gdGhlIHRvcCBwYW5lbC5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBzb21lIFhvcmcgdXRpbGl0aWVzLiBUbyBpbnN0YWxsIHRoZW06XG4tIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuLSBGZWRvcmEvUkhFTDogZG5mIGluc3RhbGwgeHByb3Bcbi0gRmVkb3JhIFNpbHZlcmJsdWU6IHJwbS1vc3RyZWUgaW5zdGFsbCB4cHJvcFxuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIG9yIGN1c3RvbWl6ZSB0aGUgYXZhaWxhYmxlIHR3ZWFrcy5cbiogU2luY2UgdmVyc2lvbiAyIGFwcGxpY2F0aW9ucyBvbiB3YXlsYW5kIHdpdGggY2xpZW50IHNpZGUgZGVjb3JhdGlvbnMgYXJlIHN1cHBvcnRlZCB1c2luZyBDU1MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidW5pdGUiLAogICJuYW1lIjogIlVuaXRlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVuaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvdW5pdGUtc2hlbGwiLAogICJ1dWlkIjogInVuaXRlQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiA1OQp9"}, "41": {"version": "59", "sha256": "1a0cn11c09wa2rxw18f86z8zm33bp496xi1yjl5amw7zx9ki6sl5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuaXRlIGlzIGEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIHdoaWNoIG1ha2VzIGEgZmV3IGxheW91dCB0d2Vha3MgdG8gdGhlIHRvcCBwYW5lbCBhbmQgcmVtb3ZlcyB3aW5kb3cgZGVjb3JhdGlvbnMgdG8gbWFrZSBpdCBsb29rIGxpa2UgVWJ1bnR1IFVuaXR5IFNoZWxsLlxuXG4tIEFkZHMgd2luZG93IGJ1dHRvbnMgdG8gdGhlIHRvcCBwYW5lbCBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFNob3dzIGN1cnJlbnQgd2luZG93IHRpdGxlIGluIHRoZSBhcHAgbWVudSBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFJlbW92ZXMgdGl0bGViYXJzIG9uIG1heGltaXplZCB3aW5kb3dzLlxuLSBIaWRlcyB3aW5kb3cgY29udHJvbHMgb24gbWF4aW1pemVkIHdpbmRvd3Mgd2l0aCBoZWFkZXJiYXJzLlxuLSBNb3ZlcyB0aGUgZGF0ZSB0byB0aGUgcmlnaHQsIHJlZHVjZXMgcGFuZWwgc3BhY2luZyBhbmQgcmVtb3ZlcyBkcm9wZG93biBhcnJvd3MuXG4tIE1vdmVzIGxlZ2FjeSB0cmF5IGljb25zIHRvIHRoZSB0b3AgcGFuZWwuXG4tIE1vdmVzIG5vdGlmaWNhdGlvbnMgdG8gdGhlIHJpZ2h0LlxuLSBIaWRlcyBhY3Rpdml0aWVzIGJ1dHRvbi5cbi0gQWRkcyBkZXNrdG9wIG5hbWUgdG8gdGhlIHRvcCBwYW5lbC5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBzb21lIFhvcmcgdXRpbGl0aWVzLiBUbyBpbnN0YWxsIHRoZW06XG4tIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuLSBGZWRvcmEvUkhFTDogZG5mIGluc3RhbGwgeHByb3Bcbi0gRmVkb3JhIFNpbHZlcmJsdWU6IHJwbS1vc3RyZWUgaW5zdGFsbCB4cHJvcFxuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIG9yIGN1c3RvbWl6ZSB0aGUgYXZhaWxhYmxlIHR3ZWFrcy5cbiogU2luY2UgdmVyc2lvbiAyIGFwcGxpY2F0aW9ucyBvbiB3YXlsYW5kIHdpdGggY2xpZW50IHNpZGUgZGVjb3JhdGlvbnMgYXJlIHN1cHBvcnRlZCB1c2luZyBDU1MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidW5pdGUiLAogICJuYW1lIjogIlVuaXRlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVuaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvdW5pdGUtc2hlbGwiLAogICJ1dWlkIjogInVuaXRlQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiA1OQp9"}}}
+, {"uuid": "unite@hardpixel.eu", "name": "Unite", "pname": "unite", "description": "Unite is a GNOME Shell extension which makes a few layout tweaks to the top panel and removes window decorations to make it look like Ubuntu Unity Shell.\n\n- Adds window buttons to the top panel for maximized windows.\n- Shows current window title in the app menu for maximized windows.\n- Removes titlebars on maximized windows.\n- Hides window controls on maximized windows with headerbars.\n- Moves the date to the right, reduces panel spacing and removes dropdown arrows.\n- Moves legacy tray icons to the top panel.\n- Moves notifications to the right.\n- Hides activities button.\n- Adds desktop name to the top panel.\n\nThis extension depends on some Xorg utilities. To install them:\n- Debian/Ubuntu: apt install x11-utils\n- Fedora/RHEL: dnf install xprop\n- Fedora Silverblue: rpm-ostree install xprop\n- Arch: pacman -S xorg-xprop\n\n*Settings are provided to enable/disable or customize the available tweaks.\n* Since version 2 applications on wayland with client side decorations are supported using CSS.", "link": "https://extensions.gnome.org/extension/1287/unite/", "shell_version_map": {"38": {"version": "61", "sha256": "1852f9wmzpcpbgdpwx8p2f04i0jnpkzw18rh1cxsw407xskvs6gg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuaXRlIGlzIGEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIHdoaWNoIG1ha2VzIGEgZmV3IGxheW91dCB0d2Vha3MgdG8gdGhlIHRvcCBwYW5lbCBhbmQgcmVtb3ZlcyB3aW5kb3cgZGVjb3JhdGlvbnMgdG8gbWFrZSBpdCBsb29rIGxpa2UgVWJ1bnR1IFVuaXR5IFNoZWxsLlxuXG4tIEFkZHMgd2luZG93IGJ1dHRvbnMgdG8gdGhlIHRvcCBwYW5lbCBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFNob3dzIGN1cnJlbnQgd2luZG93IHRpdGxlIGluIHRoZSBhcHAgbWVudSBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFJlbW92ZXMgdGl0bGViYXJzIG9uIG1heGltaXplZCB3aW5kb3dzLlxuLSBIaWRlcyB3aW5kb3cgY29udHJvbHMgb24gbWF4aW1pemVkIHdpbmRvd3Mgd2l0aCBoZWFkZXJiYXJzLlxuLSBNb3ZlcyB0aGUgZGF0ZSB0byB0aGUgcmlnaHQsIHJlZHVjZXMgcGFuZWwgc3BhY2luZyBhbmQgcmVtb3ZlcyBkcm9wZG93biBhcnJvd3MuXG4tIE1vdmVzIGxlZ2FjeSB0cmF5IGljb25zIHRvIHRoZSB0b3AgcGFuZWwuXG4tIE1vdmVzIG5vdGlmaWNhdGlvbnMgdG8gdGhlIHJpZ2h0LlxuLSBIaWRlcyBhY3Rpdml0aWVzIGJ1dHRvbi5cbi0gQWRkcyBkZXNrdG9wIG5hbWUgdG8gdGhlIHRvcCBwYW5lbC5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBzb21lIFhvcmcgdXRpbGl0aWVzLiBUbyBpbnN0YWxsIHRoZW06XG4tIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuLSBGZWRvcmEvUkhFTDogZG5mIGluc3RhbGwgeHByb3Bcbi0gRmVkb3JhIFNpbHZlcmJsdWU6IHJwbS1vc3RyZWUgaW5zdGFsbCB4cHJvcFxuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIG9yIGN1c3RvbWl6ZSB0aGUgYXZhaWxhYmxlIHR3ZWFrcy5cbiogU2luY2UgdmVyc2lvbiAyIGFwcGxpY2F0aW9ucyBvbiB3YXlsYW5kIHdpdGggY2xpZW50IHNpZGUgZGVjb3JhdGlvbnMgYXJlIHN1cHBvcnRlZCB1c2luZyBDU1MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidW5pdGUiLAogICJuYW1lIjogIlVuaXRlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVuaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGFyZHBpeGVsL3VuaXRlLXNoZWxsIiwKICAidXVpZCI6ICJ1bml0ZUBoYXJkcGl4ZWwuZXUiLAogICJ2ZXJzaW9uIjogNjEKfQ=="}, "40": {"version": "61", "sha256": "1852f9wmzpcpbgdpwx8p2f04i0jnpkzw18rh1cxsw407xskvs6gg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuaXRlIGlzIGEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIHdoaWNoIG1ha2VzIGEgZmV3IGxheW91dCB0d2Vha3MgdG8gdGhlIHRvcCBwYW5lbCBhbmQgcmVtb3ZlcyB3aW5kb3cgZGVjb3JhdGlvbnMgdG8gbWFrZSBpdCBsb29rIGxpa2UgVWJ1bnR1IFVuaXR5IFNoZWxsLlxuXG4tIEFkZHMgd2luZG93IGJ1dHRvbnMgdG8gdGhlIHRvcCBwYW5lbCBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFNob3dzIGN1cnJlbnQgd2luZG93IHRpdGxlIGluIHRoZSBhcHAgbWVudSBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFJlbW92ZXMgdGl0bGViYXJzIG9uIG1heGltaXplZCB3aW5kb3dzLlxuLSBIaWRlcyB3aW5kb3cgY29udHJvbHMgb24gbWF4aW1pemVkIHdpbmRvd3Mgd2l0aCBoZWFkZXJiYXJzLlxuLSBNb3ZlcyB0aGUgZGF0ZSB0byB0aGUgcmlnaHQsIHJlZHVjZXMgcGFuZWwgc3BhY2luZyBhbmQgcmVtb3ZlcyBkcm9wZG93biBhcnJvd3MuXG4tIE1vdmVzIGxlZ2FjeSB0cmF5IGljb25zIHRvIHRoZSB0b3AgcGFuZWwuXG4tIE1vdmVzIG5vdGlmaWNhdGlvbnMgdG8gdGhlIHJpZ2h0LlxuLSBIaWRlcyBhY3Rpdml0aWVzIGJ1dHRvbi5cbi0gQWRkcyBkZXNrdG9wIG5hbWUgdG8gdGhlIHRvcCBwYW5lbC5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBzb21lIFhvcmcgdXRpbGl0aWVzLiBUbyBpbnN0YWxsIHRoZW06XG4tIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuLSBGZWRvcmEvUkhFTDogZG5mIGluc3RhbGwgeHByb3Bcbi0gRmVkb3JhIFNpbHZlcmJsdWU6IHJwbS1vc3RyZWUgaW5zdGFsbCB4cHJvcFxuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIG9yIGN1c3RvbWl6ZSB0aGUgYXZhaWxhYmxlIHR3ZWFrcy5cbiogU2luY2UgdmVyc2lvbiAyIGFwcGxpY2F0aW9ucyBvbiB3YXlsYW5kIHdpdGggY2xpZW50IHNpZGUgZGVjb3JhdGlvbnMgYXJlIHN1cHBvcnRlZCB1c2luZyBDU1MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidW5pdGUiLAogICJuYW1lIjogIlVuaXRlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVuaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGFyZHBpeGVsL3VuaXRlLXNoZWxsIiwKICAidXVpZCI6ICJ1bml0ZUBoYXJkcGl4ZWwuZXUiLAogICJ2ZXJzaW9uIjogNjEKfQ=="}, "41": {"version": "61", "sha256": "1852f9wmzpcpbgdpwx8p2f04i0jnpkzw18rh1cxsw407xskvs6gg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuaXRlIGlzIGEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIHdoaWNoIG1ha2VzIGEgZmV3IGxheW91dCB0d2Vha3MgdG8gdGhlIHRvcCBwYW5lbCBhbmQgcmVtb3ZlcyB3aW5kb3cgZGVjb3JhdGlvbnMgdG8gbWFrZSBpdCBsb29rIGxpa2UgVWJ1bnR1IFVuaXR5IFNoZWxsLlxuXG4tIEFkZHMgd2luZG93IGJ1dHRvbnMgdG8gdGhlIHRvcCBwYW5lbCBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFNob3dzIGN1cnJlbnQgd2luZG93IHRpdGxlIGluIHRoZSBhcHAgbWVudSBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFJlbW92ZXMgdGl0bGViYXJzIG9uIG1heGltaXplZCB3aW5kb3dzLlxuLSBIaWRlcyB3aW5kb3cgY29udHJvbHMgb24gbWF4aW1pemVkIHdpbmRvd3Mgd2l0aCBoZWFkZXJiYXJzLlxuLSBNb3ZlcyB0aGUgZGF0ZSB0byB0aGUgcmlnaHQsIHJlZHVjZXMgcGFuZWwgc3BhY2luZyBhbmQgcmVtb3ZlcyBkcm9wZG93biBhcnJvd3MuXG4tIE1vdmVzIGxlZ2FjeSB0cmF5IGljb25zIHRvIHRoZSB0b3AgcGFuZWwuXG4tIE1vdmVzIG5vdGlmaWNhdGlvbnMgdG8gdGhlIHJpZ2h0LlxuLSBIaWRlcyBhY3Rpdml0aWVzIGJ1dHRvbi5cbi0gQWRkcyBkZXNrdG9wIG5hbWUgdG8gdGhlIHRvcCBwYW5lbC5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBzb21lIFhvcmcgdXRpbGl0aWVzLiBUbyBpbnN0YWxsIHRoZW06XG4tIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuLSBGZWRvcmEvUkhFTDogZG5mIGluc3RhbGwgeHByb3Bcbi0gRmVkb3JhIFNpbHZlcmJsdWU6IHJwbS1vc3RyZWUgaW5zdGFsbCB4cHJvcFxuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIG9yIGN1c3RvbWl6ZSB0aGUgYXZhaWxhYmxlIHR3ZWFrcy5cbiogU2luY2UgdmVyc2lvbiAyIGFwcGxpY2F0aW9ucyBvbiB3YXlsYW5kIHdpdGggY2xpZW50IHNpZGUgZGVjb3JhdGlvbnMgYXJlIHN1cHBvcnRlZCB1c2luZyBDU1MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidW5pdGUiLAogICJuYW1lIjogIlVuaXRlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVuaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGFyZHBpeGVsL3VuaXRlLXNoZWxsIiwKICAidXVpZCI6ICJ1bml0ZUBoYXJkcGl4ZWwuZXUiLAogICJ2ZXJzaW9uIjogNjEKfQ=="}, "42": {"version": "61", "sha256": "1852f9wmzpcpbgdpwx8p2f04i0jnpkzw18rh1cxsw407xskvs6gg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuaXRlIGlzIGEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIHdoaWNoIG1ha2VzIGEgZmV3IGxheW91dCB0d2Vha3MgdG8gdGhlIHRvcCBwYW5lbCBhbmQgcmVtb3ZlcyB3aW5kb3cgZGVjb3JhdGlvbnMgdG8gbWFrZSBpdCBsb29rIGxpa2UgVWJ1bnR1IFVuaXR5IFNoZWxsLlxuXG4tIEFkZHMgd2luZG93IGJ1dHRvbnMgdG8gdGhlIHRvcCBwYW5lbCBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFNob3dzIGN1cnJlbnQgd2luZG93IHRpdGxlIGluIHRoZSBhcHAgbWVudSBmb3IgbWF4aW1pemVkIHdpbmRvd3MuXG4tIFJlbW92ZXMgdGl0bGViYXJzIG9uIG1heGltaXplZCB3aW5kb3dzLlxuLSBIaWRlcyB3aW5kb3cgY29udHJvbHMgb24gbWF4aW1pemVkIHdpbmRvd3Mgd2l0aCBoZWFkZXJiYXJzLlxuLSBNb3ZlcyB0aGUgZGF0ZSB0byB0aGUgcmlnaHQsIHJlZHVjZXMgcGFuZWwgc3BhY2luZyBhbmQgcmVtb3ZlcyBkcm9wZG93biBhcnJvd3MuXG4tIE1vdmVzIGxlZ2FjeSB0cmF5IGljb25zIHRvIHRoZSB0b3AgcGFuZWwuXG4tIE1vdmVzIG5vdGlmaWNhdGlvbnMgdG8gdGhlIHJpZ2h0LlxuLSBIaWRlcyBhY3Rpdml0aWVzIGJ1dHRvbi5cbi0gQWRkcyBkZXNrdG9wIG5hbWUgdG8gdGhlIHRvcCBwYW5lbC5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBzb21lIFhvcmcgdXRpbGl0aWVzLiBUbyBpbnN0YWxsIHRoZW06XG4tIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuLSBGZWRvcmEvUkhFTDogZG5mIGluc3RhbGwgeHByb3Bcbi0gRmVkb3JhIFNpbHZlcmJsdWU6IHJwbS1vc3RyZWUgaW5zdGFsbCB4cHJvcFxuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIG9yIGN1c3RvbWl6ZSB0aGUgYXZhaWxhYmxlIHR3ZWFrcy5cbiogU2luY2UgdmVyc2lvbiAyIGFwcGxpY2F0aW9ucyBvbiB3YXlsYW5kIHdpdGggY2xpZW50IHNpZGUgZGVjb3JhdGlvbnMgYXJlIHN1cHBvcnRlZCB1c2luZyBDU1MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidW5pdGUiLAogICJuYW1lIjogIlVuaXRlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVuaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGFyZHBpeGVsL3VuaXRlLXNoZWxsIiwKICAidXVpZCI6ICJ1bml0ZUBoYXJkcGl4ZWwuZXUiLAogICJ2ZXJzaW9uIjogNjEKfQ=="}}}
 , {"uuid": "GoogleEarthWallpaper@neffo.github.com", "name": "Google Earth View wallpaper", "pname": "google-earth-wallpaper", "description": "Lightweight GNOME shell extension to set your wallpaper to a random photo from the curated Google Earth View collection (2600+ photos).\n\n*Disclaimer*: this extension is unofficial and not affiliated with Google in any way. Images are protected by copyright and are licensed only for use as wallpapers.\n\nSee also my other extension, Bing Wallpaper Changer (https://github.com/neffo/bing-wallpaper-gnome-extension).\n\nFeatures:\n* Fetches a random Google Earth wallpaper and sets as both lock screen and desktop wallpaper\n* User selectable refresh intervals (default is once per day)\n* View location on Google Maps, Bing Maps, Gnome Maps, OpenStreetMaps\n*  German, Dutch and Chinese translations\n\nPlease report any bugs or suggestions to extension GitHub page below.", "link": "https://extensions.gnome.org/extension/1295/google-earth-wallpaper/", "shell_version_map": {"38": {"version": "13", "sha256": "0s8xf16fxzizvpwg3lky0gkvsh732rh84wayj9nq3vq71ph2g4jz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gYSByYW5kb20gcGhvdG8gZnJvbSB0aGUgY3VyYXRlZCBHb29nbGUgRWFydGggVmlldyBjb2xsZWN0aW9uICgyNjAwKyBwaG90b3MpLlxuXG4qRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggR29vZ2xlIGluIGFueSB3YXkuIEltYWdlcyBhcmUgcHJvdGVjdGVkIGJ5IGNvcHlyaWdodCBhbmQgYXJlIGxpY2Vuc2VkIG9ubHkgZm9yIHVzZSBhcyB3YWxscGFwZXJzLlxuXG5TZWUgYWxzbyBteSBvdGhlciBleHRlbnNpb24sIEJpbmcgV2FsbHBhcGVyIENoYW5nZXIgKGh0dHBzOi8vZ2l0aHViLmNvbS9uZWZmby9iaW5nLXdhbGxwYXBlci1nbm9tZS1leHRlbnNpb24pLlxuXG5GZWF0dXJlczpcbiogRmV0Y2hlcyBhIHJhbmRvbSBHb29nbGUgRWFydGggd2FsbHBhcGVyIGFuZCBzZXRzIGFzIGJvdGggbG9jayBzY3JlZW4gYW5kIGRlc2t0b3Agd2FsbHBhcGVyXG4qIFVzZXIgc2VsZWN0YWJsZSByZWZyZXNoIGludGVydmFscyAoZGVmYXVsdCBpcyBvbmNlIHBlciBkYXkpXG4qIFZpZXcgbG9jYXRpb24gb24gR29vZ2xlIE1hcHMsIEJpbmcgTWFwcywgR25vbWUgTWFwcywgT3BlblN0cmVldE1hcHNcbiogIEdlcm1hbiwgRHV0Y2ggYW5kIENoaW5lc2UgdHJhbnNsYXRpb25zXG5cblBsZWFzZSByZXBvcnQgYW55IGJ1Z3Mgb3Igc3VnZ2VzdGlvbnMgdG8gZXh0ZW5zaW9uIEdpdEh1YiBwYWdlIGJlbG93LiIsCiAgIm5hbWUiOiAiR29vZ2xlIEVhcnRoIFZpZXcgd2FsbHBhcGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdvb2dsZWVhcnRod2FsbHBhcGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9uZWZmby9lYXJ0aC12aWV3LXdhbGxwYXBlci1nbm9tZS1leHRlbnNpb24iLAogICJ1dWlkIjogIkdvb2dsZUVhcnRoV2FsbHBhcGVyQG5lZmZvLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "40": {"version": "13", "sha256": "0s8xf16fxzizvpwg3lky0gkvsh732rh84wayj9nq3vq71ph2g4jz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gYSByYW5kb20gcGhvdG8gZnJvbSB0aGUgY3VyYXRlZCBHb29nbGUgRWFydGggVmlldyBjb2xsZWN0aW9uICgyNjAwKyBwaG90b3MpLlxuXG4qRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggR29vZ2xlIGluIGFueSB3YXkuIEltYWdlcyBhcmUgcHJvdGVjdGVkIGJ5IGNvcHlyaWdodCBhbmQgYXJlIGxpY2Vuc2VkIG9ubHkgZm9yIHVzZSBhcyB3YWxscGFwZXJzLlxuXG5TZWUgYWxzbyBteSBvdGhlciBleHRlbnNpb24sIEJpbmcgV2FsbHBhcGVyIENoYW5nZXIgKGh0dHBzOi8vZ2l0aHViLmNvbS9uZWZmby9iaW5nLXdhbGxwYXBlci1nbm9tZS1leHRlbnNpb24pLlxuXG5GZWF0dXJlczpcbiogRmV0Y2hlcyBhIHJhbmRvbSBHb29nbGUgRWFydGggd2FsbHBhcGVyIGFuZCBzZXRzIGFzIGJvdGggbG9jayBzY3JlZW4gYW5kIGRlc2t0b3Agd2FsbHBhcGVyXG4qIFVzZXIgc2VsZWN0YWJsZSByZWZyZXNoIGludGVydmFscyAoZGVmYXVsdCBpcyBvbmNlIHBlciBkYXkpXG4qIFZpZXcgbG9jYXRpb24gb24gR29vZ2xlIE1hcHMsIEJpbmcgTWFwcywgR25vbWUgTWFwcywgT3BlblN0cmVldE1hcHNcbiogIEdlcm1hbiwgRHV0Y2ggYW5kIENoaW5lc2UgdHJhbnNsYXRpb25zXG5cblBsZWFzZSByZXBvcnQgYW55IGJ1Z3Mgb3Igc3VnZ2VzdGlvbnMgdG8gZXh0ZW5zaW9uIEdpdEh1YiBwYWdlIGJlbG93LiIsCiAgIm5hbWUiOiAiR29vZ2xlIEVhcnRoIFZpZXcgd2FsbHBhcGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdvb2dsZWVhcnRod2FsbHBhcGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9uZWZmby9lYXJ0aC12aWV3LXdhbGxwYXBlci1nbm9tZS1leHRlbnNpb24iLAogICJ1dWlkIjogIkdvb2dsZUVhcnRoV2FsbHBhcGVyQG5lZmZvLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "41": {"version": "13", "sha256": "0s8xf16fxzizvpwg3lky0gkvsh732rh84wayj9nq3vq71ph2g4jz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IEdOT01FIHNoZWxsIGV4dGVuc2lvbiB0byBzZXQgeW91ciB3YWxscGFwZXIgdG8gYSByYW5kb20gcGhvdG8gZnJvbSB0aGUgY3VyYXRlZCBHb29nbGUgRWFydGggVmlldyBjb2xsZWN0aW9uICgyNjAwKyBwaG90b3MpLlxuXG4qRGlzY2xhaW1lcio6IHRoaXMgZXh0ZW5zaW9uIGlzIHVub2ZmaWNpYWwgYW5kIG5vdCBhZmZpbGlhdGVkIHdpdGggR29vZ2xlIGluIGFueSB3YXkuIEltYWdlcyBhcmUgcHJvdGVjdGVkIGJ5IGNvcHlyaWdodCBhbmQgYXJlIGxpY2Vuc2VkIG9ubHkgZm9yIHVzZSBhcyB3YWxscGFwZXJzLlxuXG5TZWUgYWxzbyBteSBvdGhlciBleHRlbnNpb24sIEJpbmcgV2FsbHBhcGVyIENoYW5nZXIgKGh0dHBzOi8vZ2l0aHViLmNvbS9uZWZmby9iaW5nLXdhbGxwYXBlci1nbm9tZS1leHRlbnNpb24pLlxuXG5GZWF0dXJlczpcbiogRmV0Y2hlcyBhIHJhbmRvbSBHb29nbGUgRWFydGggd2FsbHBhcGVyIGFuZCBzZXRzIGFzIGJvdGggbG9jayBzY3JlZW4gYW5kIGRlc2t0b3Agd2FsbHBhcGVyXG4qIFVzZXIgc2VsZWN0YWJsZSByZWZyZXNoIGludGVydmFscyAoZGVmYXVsdCBpcyBvbmNlIHBlciBkYXkpXG4qIFZpZXcgbG9jYXRpb24gb24gR29vZ2xlIE1hcHMsIEJpbmcgTWFwcywgR25vbWUgTWFwcywgT3BlblN0cmVldE1hcHNcbiogIEdlcm1hbiwgRHV0Y2ggYW5kIENoaW5lc2UgdHJhbnNsYXRpb25zXG5cblBsZWFzZSByZXBvcnQgYW55IGJ1Z3Mgb3Igc3VnZ2VzdGlvbnMgdG8gZXh0ZW5zaW9uIEdpdEh1YiBwYWdlIGJlbG93LiIsCiAgIm5hbWUiOiAiR29vZ2xlIEVhcnRoIFZpZXcgd2FsbHBhcGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdvb2dsZWVhcnRod2FsbHBhcGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9uZWZmby9lYXJ0aC12aWV3LXdhbGxwYXBlci1nbm9tZS1leHRlbnNpb24iLAogICJ1dWlkIjogIkdvb2dsZUVhcnRoV2FsbHBhcGVyQG5lZmZvLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
-, {"uuid": "gsconnect@andyholmes.github.io", "name": "GSConnect", "pname": "gsconnect", "description": "GSConnect is a complete implementation of KDE Connect especially for GNOME Shell with Nautilus, Chrome and Firefox integration. It does not rely on the KDE Connect desktop application and will not work with it installed.\n\nKDE Connect allows devices to securely share content like notifications or files and other features like SMS messaging and remote control. The KDE Connect team has applications for Linux, BSD, Android, Sailfish and Windows.\n\nPlease report issues on Github!", "link": "https://extensions.gnome.org/extension/1319/gsconnect/", "shell_version_map": {"38": {"version": "45", "sha256": "11hpgh2bhizdrgl4xc5iszsi6jxb9j80lph74226rnw6pi2nc19f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdTQ29ubmVjdCBpcyBhIGNvbXBsZXRlIGltcGxlbWVudGF0aW9uIG9mIEtERSBDb25uZWN0IGVzcGVjaWFsbHkgZm9yIEdOT01FIFNoZWxsIHdpdGggTmF1dGlsdXMsIENocm9tZSBhbmQgRmlyZWZveCBpbnRlZ3JhdGlvbi4gSXQgZG9lcyBub3QgcmVseSBvbiB0aGUgS0RFIENvbm5lY3QgZGVza3RvcCBhcHBsaWNhdGlvbiBhbmQgd2lsbCBub3Qgd29yayB3aXRoIGl0IGluc3RhbGxlZC5cblxuS0RFIENvbm5lY3QgYWxsb3dzIGRldmljZXMgdG8gc2VjdXJlbHkgc2hhcmUgY29udGVudCBsaWtlIG5vdGlmaWNhdGlvbnMgb3IgZmlsZXMgYW5kIG90aGVyIGZlYXR1cmVzIGxpa2UgU01TIG1lc3NhZ2luZyBhbmQgcmVtb3RlIGNvbnRyb2wuIFRoZSBLREUgQ29ubmVjdCB0ZWFtIGhhcyBhcHBsaWNhdGlvbnMgZm9yIExpbnV4LCBCU0QsIEFuZHJvaWQsIFNhaWxmaXNoIGFuZCBXaW5kb3dzLlxuXG5QbGVhc2UgcmVwb3J0IGlzc3VlcyBvbiBHaXRodWIhIiwKICAibmFtZSI6ICJHU0Nvbm5lY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbmR5aG9sbWVzL2dub21lLXNoZWxsLWV4dGVuc2lvbi1nc2Nvbm5lY3Qvd2lraSIsCiAgInV1aWQiOiAiZ3Njb25uZWN0QGFuZHlob2xtZXMuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQ1Cn0="}, "40": {"version": "47", "sha256": "0s6a762n4r0fcvsi2a27qaxs0b4z12grqrq7sqj4vb498xyx14qv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdTQ29ubmVjdCBpcyBhIGNvbXBsZXRlIGltcGxlbWVudGF0aW9uIG9mIEtERSBDb25uZWN0IGVzcGVjaWFsbHkgZm9yIEdOT01FIFNoZWxsIHdpdGggTmF1dGlsdXMsIENocm9tZSBhbmQgRmlyZWZveCBpbnRlZ3JhdGlvbi4gSXQgZG9lcyBub3QgcmVseSBvbiB0aGUgS0RFIENvbm5lY3QgZGVza3RvcCBhcHBsaWNhdGlvbiBhbmQgd2lsbCBub3Qgd29yayB3aXRoIGl0IGluc3RhbGxlZC5cblxuS0RFIENvbm5lY3QgYWxsb3dzIGRldmljZXMgdG8gc2VjdXJlbHkgc2hhcmUgY29udGVudCBsaWtlIG5vdGlmaWNhdGlvbnMgb3IgZmlsZXMgYW5kIG90aGVyIGZlYXR1cmVzIGxpa2UgU01TIG1lc3NhZ2luZyBhbmQgcmVtb3RlIGNvbnRyb2wuIFRoZSBLREUgQ29ubmVjdCB0ZWFtIGhhcyBhcHBsaWNhdGlvbnMgZm9yIExpbnV4LCBCU0QsIEFuZHJvaWQsIFNhaWxmaXNoIGFuZCBXaW5kb3dzLlxuXG5QbGVhc2UgcmVwb3J0IGlzc3VlcyBvbiBHaXRodWIhIiwKICAibmFtZSI6ICJHU0Nvbm5lY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW5keWhvbG1lcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tZ3Njb25uZWN0L3dpa2kiLAogICJ1dWlkIjogImdzY29ubmVjdEBhbmR5aG9sbWVzLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA0Nwp9"}, "41": {"version": "48", "sha256": "1mgwmnzkqlmlccw7z1f7bvn7ixp22kln52l2qy55553m59yxsswj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdTQ29ubmVjdCBpcyBhIGNvbXBsZXRlIGltcGxlbWVudGF0aW9uIG9mIEtERSBDb25uZWN0IGVzcGVjaWFsbHkgZm9yIEdOT01FIFNoZWxsIHdpdGggTmF1dGlsdXMsIENocm9tZSBhbmQgRmlyZWZveCBpbnRlZ3JhdGlvbi4gSXQgZG9lcyBub3QgcmVseSBvbiB0aGUgS0RFIENvbm5lY3QgZGVza3RvcCBhcHBsaWNhdGlvbiBhbmQgd2lsbCBub3Qgd29yayB3aXRoIGl0IGluc3RhbGxlZC5cblxuS0RFIENvbm5lY3QgYWxsb3dzIGRldmljZXMgdG8gc2VjdXJlbHkgc2hhcmUgY29udGVudCBsaWtlIG5vdGlmaWNhdGlvbnMgb3IgZmlsZXMgYW5kIG90aGVyIGZlYXR1cmVzIGxpa2UgU01TIG1lc3NhZ2luZyBhbmQgcmVtb3RlIGNvbnRyb2wuIFRoZSBLREUgQ29ubmVjdCB0ZWFtIGhhcyBhcHBsaWNhdGlvbnMgZm9yIExpbnV4LCBCU0QsIEFuZHJvaWQsIFNhaWxmaXNoIGFuZCBXaW5kb3dzLlxuXG5QbGVhc2UgcmVwb3J0IGlzc3VlcyBvbiBHaXRodWIhIiwKICAibmFtZSI6ICJHU0Nvbm5lY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW5keWhvbG1lcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tZ3Njb25uZWN0L3dpa2kiLAogICJ1dWlkIjogImdzY29ubmVjdEBhbmR5aG9sbWVzLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA0OAp9"}}}
+, {"uuid": "gsconnect@andyholmes.github.io", "name": "GSConnect", "pname": "gsconnect", "description": "GSConnect is a complete implementation of KDE Connect especially for GNOME Shell with Nautilus, Chrome and Firefox integration. It does not rely on the KDE Connect desktop application and will not work with it installed.\n\nKDE Connect allows devices to securely share content like notifications or files and other features like SMS messaging and remote control. The KDE Connect team has applications for Linux, BSD, Android, Sailfish and Windows.\n\nPlease report issues on Github!", "link": "https://extensions.gnome.org/extension/1319/gsconnect/", "shell_version_map": {"38": {"version": "51", "sha256": "00mb2w724526gs0jskav00bc0y5dq1qybzczlahgc2znykqf1x8l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdTQ29ubmVjdCBpcyBhIGNvbXBsZXRlIGltcGxlbWVudGF0aW9uIG9mIEtERSBDb25uZWN0IGVzcGVjaWFsbHkgZm9yIEdOT01FIFNoZWxsIHdpdGggTmF1dGlsdXMsIENocm9tZSBhbmQgRmlyZWZveCBpbnRlZ3JhdGlvbi4gSXQgZG9lcyBub3QgcmVseSBvbiB0aGUgS0RFIENvbm5lY3QgZGVza3RvcCBhcHBsaWNhdGlvbiBhbmQgd2lsbCBub3Qgd29yayB3aXRoIGl0IGluc3RhbGxlZC5cblxuS0RFIENvbm5lY3QgYWxsb3dzIGRldmljZXMgdG8gc2VjdXJlbHkgc2hhcmUgY29udGVudCBsaWtlIG5vdGlmaWNhdGlvbnMgb3IgZmlsZXMgYW5kIG90aGVyIGZlYXR1cmVzIGxpa2UgU01TIG1lc3NhZ2luZyBhbmQgcmVtb3RlIGNvbnRyb2wuIFRoZSBLREUgQ29ubmVjdCB0ZWFtIGhhcyBhcHBsaWNhdGlvbnMgZm9yIExpbnV4LCBCU0QsIEFuZHJvaWQsIFNhaWxmaXNoIGFuZCBXaW5kb3dzLlxuXG5QbGVhc2UgcmVwb3J0IGlzc3VlcyBvbiBHaXRodWIhIiwKICAibmFtZSI6ICJHU0Nvbm5lY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9HU0Nvbm5lY3QvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWdzY29ubmVjdC93aWtpIiwKICAidXVpZCI6ICJnc2Nvbm5lY3RAYW5keWhvbG1lcy5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNTEKfQ=="}, "40": {"version": "47", "sha256": "0795yd6j8z2rgcv3fc8y2i4cnl4c8mni512jf776cfk745j5ck6p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdTQ29ubmVjdCBpcyBhIGNvbXBsZXRlIGltcGxlbWVudGF0aW9uIG9mIEtERSBDb25uZWN0IGVzcGVjaWFsbHkgZm9yIEdOT01FIFNoZWxsIHdpdGggTmF1dGlsdXMsIENocm9tZSBhbmQgRmlyZWZveCBpbnRlZ3JhdGlvbi4gSXQgZG9lcyBub3QgcmVseSBvbiB0aGUgS0RFIENvbm5lY3QgZGVza3RvcCBhcHBsaWNhdGlvbiBhbmQgd2lsbCBub3Qgd29yayB3aXRoIGl0IGluc3RhbGxlZC5cblxuS0RFIENvbm5lY3QgYWxsb3dzIGRldmljZXMgdG8gc2VjdXJlbHkgc2hhcmUgY29udGVudCBsaWtlIG5vdGlmaWNhdGlvbnMgb3IgZmlsZXMgYW5kIG90aGVyIGZlYXR1cmVzIGxpa2UgU01TIG1lc3NhZ2luZyBhbmQgcmVtb3RlIGNvbnRyb2wuIFRoZSBLREUgQ29ubmVjdCB0ZWFtIGhhcyBhcHBsaWNhdGlvbnMgZm9yIExpbnV4LCBCU0QsIEFuZHJvaWQsIFNhaWxmaXNoIGFuZCBXaW5kb3dzLlxuXG5QbGVhc2UgcmVwb3J0IGlzc3VlcyBvbiBHaXRodWIhIiwKICAibmFtZSI6ICJHU0Nvbm5lY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vR1NDb25uZWN0L2dub21lLXNoZWxsLWV4dGVuc2lvbi1nc2Nvbm5lY3Qvd2lraSIsCiAgInV1aWQiOiAiZ3Njb25uZWN0QGFuZHlob2xtZXMuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQ3Cn0="}, "41": {"version": "49", "sha256": "15dh5qn9bmizgq9mcbk7nbja2arnc1bd9fvkkvhqm4kf4zlzf018", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdTQ29ubmVjdCBpcyBhIGNvbXBsZXRlIGltcGxlbWVudGF0aW9uIG9mIEtERSBDb25uZWN0IGVzcGVjaWFsbHkgZm9yIEdOT01FIFNoZWxsIHdpdGggTmF1dGlsdXMsIENocm9tZSBhbmQgRmlyZWZveCBpbnRlZ3JhdGlvbi4gSXQgZG9lcyBub3QgcmVseSBvbiB0aGUgS0RFIENvbm5lY3QgZGVza3RvcCBhcHBsaWNhdGlvbiBhbmQgd2lsbCBub3Qgd29yayB3aXRoIGl0IGluc3RhbGxlZC5cblxuS0RFIENvbm5lY3QgYWxsb3dzIGRldmljZXMgdG8gc2VjdXJlbHkgc2hhcmUgY29udGVudCBsaWtlIG5vdGlmaWNhdGlvbnMgb3IgZmlsZXMgYW5kIG90aGVyIGZlYXR1cmVzIGxpa2UgU01TIG1lc3NhZ2luZyBhbmQgcmVtb3RlIGNvbnRyb2wuIFRoZSBLREUgQ29ubmVjdCB0ZWFtIGhhcyBhcHBsaWNhdGlvbnMgZm9yIExpbnV4LCBCU0QsIEFuZHJvaWQsIFNhaWxmaXNoIGFuZCBXaW5kb3dzLlxuXG5QbGVhc2UgcmVwb3J0IGlzc3VlcyBvbiBHaXRodWIhIiwKICAibmFtZSI6ICJHU0Nvbm5lY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vR1NDb25uZWN0L2dub21lLXNoZWxsLWV4dGVuc2lvbi1nc2Nvbm5lY3Qvd2lraSIsCiAgInV1aWQiOiAiZ3Njb25uZWN0QGFuZHlob2xtZXMuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQ5Cn0="}, "42": {"version": "50", "sha256": "1px9dm4zrn79zgvdc05mppi3jh09sjmkw07pbxrb8yhix3lhzal4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdTQ29ubmVjdCBpcyBhIGNvbXBsZXRlIGltcGxlbWVudGF0aW9uIG9mIEtERSBDb25uZWN0IGVzcGVjaWFsbHkgZm9yIEdOT01FIFNoZWxsIHdpdGggTmF1dGlsdXMsIENocm9tZSBhbmQgRmlyZWZveCBpbnRlZ3JhdGlvbi4gSXQgZG9lcyBub3QgcmVseSBvbiB0aGUgS0RFIENvbm5lY3QgZGVza3RvcCBhcHBsaWNhdGlvbiBhbmQgd2lsbCBub3Qgd29yayB3aXRoIGl0IGluc3RhbGxlZC5cblxuS0RFIENvbm5lY3QgYWxsb3dzIGRldmljZXMgdG8gc2VjdXJlbHkgc2hhcmUgY29udGVudCBsaWtlIG5vdGlmaWNhdGlvbnMgb3IgZmlsZXMgYW5kIG90aGVyIGZlYXR1cmVzIGxpa2UgU01TIG1lc3NhZ2luZyBhbmQgcmVtb3RlIGNvbnRyb2wuIFRoZSBLREUgQ29ubmVjdCB0ZWFtIGhhcyBhcHBsaWNhdGlvbnMgZm9yIExpbnV4LCBCU0QsIEFuZHJvaWQsIFNhaWxmaXNoIGFuZCBXaW5kb3dzLlxuXG5QbGVhc2UgcmVwb3J0IGlzc3VlcyBvbiBHaXRodWIhIiwKICAibmFtZSI6ICJHU0Nvbm5lY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vR1NDb25uZWN0L2dub21lLXNoZWxsLWV4dGVuc2lvbi1nc2Nvbm5lY3Qvd2lraSIsCiAgInV1aWQiOiAiZ3Njb25uZWN0QGFuZHlob2xtZXMuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDUwCn0="}}}
 , {"uuid": "nvidiautil@ethanwharris", "name": "NVIDIA GPU Stats Tool", "pname": "nvidia-gpu-stats-tool", "description": "Shows NVIDIA GPU stats in the toolbar. Requires nvidia-settings or nvidia-smi. Includes Bumblebee support.", "link": "https://extensions.gnome.org/extension/1320/nvidia-gpu-stats-tool/", "shell_version_map": {"38": {"version": "8", "sha256": "12yi2kcq2rm1ddb8djjlffvk6dhpfd996wjhwdf4jch1r85r8a30", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIE5WSURJQSBHUFUgc3RhdHMgaW4gdGhlIHRvb2xiYXIuIFJlcXVpcmVzIG52aWRpYS1zZXR0aW5ncyBvciBudmlkaWEtc21pLiBJbmNsdWRlcyBCdW1ibGViZWUgc3VwcG9ydC4iLAogICJuYW1lIjogIk5WSURJQSBHUFUgU3RhdHMgVG9vbCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5udmlkaWF1dGlsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXRoYW53aGFycmlzL2dub21lLW52aWRpYS1leHRlbnNpb24iLAogICJ1dWlkIjogIm52aWRpYXV0aWxAZXRoYW53aGFycmlzIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"uuid": "pause-night-light@tijnschuurmans.nl", "name": "Pause Night Light", "pname": "pause-night-light", "description": "Disable Night Light for 10 seconds. This short interruption allows you to scan a colour code (e.g. Crontosign) from your screen.", "link": "https://extensions.gnome.org/extension/1327/pause-night-light/", "shell_version_map": {"40": {"version": "8", "sha256": "1j4yywvmwplbyjjwp79rxmfgsf7kv67v0d9rhbg6bnqw04bq91ki", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgTmlnaHQgTGlnaHQgZm9yIDEwIHNlY29uZHMuIFRoaXMgc2hvcnQgaW50ZXJydXB0aW9uIGFsbG93cyB5b3UgdG8gc2NhbiBhIGNvbG91ciBjb2RlIChlLmcuIENyb250b3NpZ24pIGZyb20geW91ciBzY3JlZW4uIiwKICAibmFtZSI6ICJQYXVzZSBOaWdodCBMaWdodCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNiIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Rpam4vcGF1c2UtbmlnaHQtbGlnaHQiLAogICJ1dWlkIjogInBhdXNlLW5pZ2h0LWxpZ2h0QHRpam5zY2h1dXJtYW5zLm5sIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"uuid": "disableworkspaceanim@owilliams.mixxx.org", "name": "Disable Workspace Switch Animation", "pname": "disable-workspace-switch-animation", "description": "Makes switching between workspaces instant without disabling other animations", "link": "https://extensions.gnome.org/extension/1328/disable-workspace-switch-animation/", "shell_version_map": {"38": {"version": "4", "sha256": "0yy5yddzaswfl5yv19layls3g2nwfj47x5zg131f43y7abgp7z4l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHN3aXRjaGluZyBiZXR3ZWVuIHdvcmtzcGFjZXMgaW5zdGFudCB3aXRob3V0IGRpc2FibGluZyBvdGhlciBhbmltYXRpb25zIiwKICAibmFtZSI6ICJEaXNhYmxlIFdvcmtzcGFjZSBTd2l0Y2ggQW5pbWF0aW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImRpc2FibGV3b3Jrc3BhY2VhbmltQG93aWxsaWFtcy5taXh4eC5vcmciLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "5", "sha256": "1w7gxcgz5729vwfw3ih2ha4y3r07cgqh1kykqfnrhraqrjd4zvfc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHN3aXRjaGluZyBiZXR3ZWVuIHdvcmtzcGFjZXMgaW5zdGFudCB3aXRob3V0IGRpc2FibGluZyBvdGhlciBhbmltYXRpb25zIiwKICAibmFtZSI6ICJEaXNhYmxlIFdvcmtzcGFjZSBTd2l0Y2ggQW5pbWF0aW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZGlzYWJsZXdvcmtzcGFjZWFuaW1Ab3dpbGxpYW1zLm1peHh4Lm9yZyIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "1w7gxcgz5729vwfw3ih2ha4y3r07cgqh1kykqfnrhraqrjd4zvfc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHN3aXRjaGluZyBiZXR3ZWVuIHdvcmtzcGFjZXMgaW5zdGFudCB3aXRob3V0IGRpc2FibGluZyBvdGhlciBhbmltYXRpb25zIiwKICAibmFtZSI6ICJEaXNhYmxlIFdvcmtzcGFjZSBTd2l0Y2ggQW5pbWF0aW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZGlzYWJsZXdvcmtzcGFjZWFuaW1Ab3dpbGxpYW1zLm1peHh4Lm9yZyIsCiAgInZlcnNpb24iOiA1Cn0="}}}
@@ -170,27 +170,27 @@
 , {"uuid": "notes@maestroschan.fr", "name": "Notes", "pname": "notes", "description": "Sticky notes for the GNOME Shell desktop.", "link": "https://extensions.gnome.org/extension/1357/notes/", "shell_version_map": {"38": {"version": "22", "sha256": "0svx60711cphswiigd1sswczk17cjxr7gr3davk4krkhya04llp1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0aWNreSBub3RlcyBmb3IgdGhlIEdOT01FIFNoZWxsIGRlc2t0b3AuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibm90ZXMtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJOb3RlcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ub3Rlcy1leHRlbnNpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYW9zY2hhbnovbm90ZXMtZXh0ZW5zaW9uLWdub21lIiwKICAidXVpZCI6ICJub3Rlc0BtYWVzdHJvc2NoYW4uZnIiLAogICJ2ZXJzaW9uIjogMjIKfQ=="}}}
 , {"uuid": "slinger@gfxmonk.net", "name": "slinger", "pname": "slinger", "description": "Sling windows around efficiently", "link": "https://extensions.gnome.org/extension/1372/slinger/", "shell_version_map": {"40": {"version": "7", "sha256": "1hpzcslqln0yz4kv216z8qqq9639sh1awp6q8c33d7jp11ydwhlj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaW5nIHdpbmRvd3MgYXJvdW5kIGVmZmljaWVudGx5IiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2xpbmdlciIsCiAgIm5hbWUiOiAic2xpbmdlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90aW1iZXJ0c29uL3NsaW5nZXIiLAogICJ1dWlkIjogInNsaW5nZXJAZ2Z4bW9uay5uZXQiLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"uuid": "unix-timestamp-clock@se1exin.github.com", "name": "Unix Timestamp Clock", "pname": "unix-timestamp-clock", "description": "Show the current unix timestamp as a clock in the top bar.\n\nCopy-paste currently shown timestamp (left mouse button) or current timestamp (any other mouse button) to clipboard", "link": "https://extensions.gnome.org/extension/1375/unix-timestamp-clock/", "shell_version_map": {"38": {"version": "5", "sha256": "11awssml3n1kza1inny4j89bkmgpldzcglwa26pyr432i4la0jh6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIGN1cnJlbnQgdW5peCB0aW1lc3RhbXAgYXMgYSBjbG9jayBpbiB0aGUgdG9wIGJhci5cblxuQ29weS1wYXN0ZSBjdXJyZW50bHkgc2hvd24gdGltZXN0YW1wIChsZWZ0IG1vdXNlIGJ1dHRvbikgb3IgY3VycmVudCB0aW1lc3RhbXAgKGFueSBvdGhlciBtb3VzZSBidXR0b24pIHRvIGNsaXBib2FyZCIsCiAgIm5hbWUiOiAiVW5peCBUaW1lc3RhbXAgQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zZTFleGluL3VuaXgtdGltZXN0YW1wLWNsb2NrIiwKICAidXVpZCI6ICJ1bml4LXRpbWVzdGFtcC1jbG9ja0BzZTFleGluLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "11awssml3n1kza1inny4j89bkmgpldzcglwa26pyr432i4la0jh6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIGN1cnJlbnQgdW5peCB0aW1lc3RhbXAgYXMgYSBjbG9jayBpbiB0aGUgdG9wIGJhci5cblxuQ29weS1wYXN0ZSBjdXJyZW50bHkgc2hvd24gdGltZXN0YW1wIChsZWZ0IG1vdXNlIGJ1dHRvbikgb3IgY3VycmVudCB0aW1lc3RhbXAgKGFueSBvdGhlciBtb3VzZSBidXR0b24pIHRvIGNsaXBib2FyZCIsCiAgIm5hbWUiOiAiVW5peCBUaW1lc3RhbXAgQ2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zZTFleGluL3VuaXgtdGltZXN0YW1wLWNsb2NrIiwKICAidXVpZCI6ICJ1bml4LXRpbWVzdGFtcC1jbG9ja0BzZTFleGluLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}}}
-, {"uuid": "mprisindicatorbutton@JasonLG1979.github.io", "name": "Mpris Indicator Button", "pname": "mpris-indicator-button", "description": "A full featured MPRIS indicator.", "link": "https://extensions.gnome.org/extension/1379/mpris-indicator-button/", "shell_version_map": {"38": {"version": "20", "sha256": "0srkykxh1g9i3cih0rqkbwhbnylpx6qh0f6h2bzzmkpw4algf2ch", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZnVsbCBmZWF0dXJlZCBNUFJJUyBpbmRpY2F0b3IuIiwKICAibmFtZSI6ICJNcHJpcyBJbmRpY2F0b3IgQnV0dG9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIkphc29uTEcxOTc5QGdpdGh1Yi5pbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0phc29uTEcxOTc5L2dub21lLXNoZWxsLWV4dGVuc2lvbi1tcHJpcy1pbmRpY2F0b3ItYnV0dG9uLyIsCiAgInV1aWQiOiAibXByaXNpbmRpY2F0b3JidXR0b25ASmFzb25MRzE5NzkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDIwCn0="}, "40": {"version": "20", "sha256": "0srkykxh1g9i3cih0rqkbwhbnylpx6qh0f6h2bzzmkpw4algf2ch", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZnVsbCBmZWF0dXJlZCBNUFJJUyBpbmRpY2F0b3IuIiwKICAibmFtZSI6ICJNcHJpcyBJbmRpY2F0b3IgQnV0dG9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIkphc29uTEcxOTc5QGdpdGh1Yi5pbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0phc29uTEcxOTc5L2dub21lLXNoZWxsLWV4dGVuc2lvbi1tcHJpcy1pbmRpY2F0b3ItYnV0dG9uLyIsCiAgInV1aWQiOiAibXByaXNpbmRpY2F0b3JidXR0b25ASmFzb25MRzE5NzkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDIwCn0="}, "41": {"version": "20", "sha256": "0srkykxh1g9i3cih0rqkbwhbnylpx6qh0f6h2bzzmkpw4algf2ch", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZnVsbCBmZWF0dXJlZCBNUFJJUyBpbmRpY2F0b3IuIiwKICAibmFtZSI6ICJNcHJpcyBJbmRpY2F0b3IgQnV0dG9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIkphc29uTEcxOTc5QGdpdGh1Yi5pbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0phc29uTEcxOTc5L2dub21lLXNoZWxsLWV4dGVuc2lvbi1tcHJpcy1pbmRpY2F0b3ItYnV0dG9uLyIsCiAgInV1aWQiOiAibXByaXNpbmRpY2F0b3JidXR0b25ASmFzb25MRzE5NzkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDIwCn0="}}}
+, {"uuid": "mprisindicatorbutton@JasonLG1979.github.io", "name": "Mpris Indicator Button", "pname": "mpris-indicator-button", "description": "A full featured MPRIS indicator.", "link": "https://extensions.gnome.org/extension/1379/mpris-indicator-button/", "shell_version_map": {"38": {"version": "20", "sha256": "0srkykxh1g9i3cih0rqkbwhbnylpx6qh0f6h2bzzmkpw4algf2ch", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZnVsbCBmZWF0dXJlZCBNUFJJUyBpbmRpY2F0b3IuIiwKICAibmFtZSI6ICJNcHJpcyBJbmRpY2F0b3IgQnV0dG9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIkphc29uTEcxOTc5QGdpdGh1Yi5pbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0phc29uTEcxOTc5L2dub21lLXNoZWxsLWV4dGVuc2lvbi1tcHJpcy1pbmRpY2F0b3ItYnV0dG9uLyIsCiAgInV1aWQiOiAibXByaXNpbmRpY2F0b3JidXR0b25ASmFzb25MRzE5NzkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDIwCn0="}, "40": {"version": "20", "sha256": "0srkykxh1g9i3cih0rqkbwhbnylpx6qh0f6h2bzzmkpw4algf2ch", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZnVsbCBmZWF0dXJlZCBNUFJJUyBpbmRpY2F0b3IuIiwKICAibmFtZSI6ICJNcHJpcyBJbmRpY2F0b3IgQnV0dG9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIkphc29uTEcxOTc5QGdpdGh1Yi5pbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0phc29uTEcxOTc5L2dub21lLXNoZWxsLWV4dGVuc2lvbi1tcHJpcy1pbmRpY2F0b3ItYnV0dG9uLyIsCiAgInV1aWQiOiAibXByaXNpbmRpY2F0b3JidXR0b25ASmFzb25MRzE5NzkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDIwCn0="}, "41": {"version": "20", "sha256": "0srkykxh1g9i3cih0rqkbwhbnylpx6qh0f6h2bzzmkpw4algf2ch", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZnVsbCBmZWF0dXJlZCBNUFJJUyBpbmRpY2F0b3IuIiwKICAibmFtZSI6ICJNcHJpcyBJbmRpY2F0b3IgQnV0dG9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIkphc29uTEcxOTc5QGdpdGh1Yi5pbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0phc29uTEcxOTc5L2dub21lLXNoZWxsLWV4dGVuc2lvbi1tcHJpcy1pbmRpY2F0b3ItYnV0dG9uLyIsCiAgInV1aWQiOiAibXByaXNpbmRpY2F0b3JidXR0b25ASmFzb25MRzE5NzkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDIwCn0="}, "42": {"version": "20", "sha256": "0srkykxh1g9i3cih0rqkbwhbnylpx6qh0f6h2bzzmkpw4algf2ch", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZnVsbCBmZWF0dXJlZCBNUFJJUyBpbmRpY2F0b3IuIiwKICAibmFtZSI6ICJNcHJpcyBJbmRpY2F0b3IgQnV0dG9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIkphc29uTEcxOTc5QGdpdGh1Yi5pbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0phc29uTEcxOTc5L2dub21lLXNoZWxsLWV4dGVuc2lvbi1tcHJpcy1pbmRpY2F0b3ItYnV0dG9uLyIsCiAgInV1aWQiOiAibXByaXNpbmRpY2F0b3JidXR0b25ASmFzb25MRzE5NzkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDIwCn0="}}}
 , {"uuid": "weatherintheclock@JasonLG1979.github.io", "name": "Weather In The Clock", "pname": "weather-in-the-clock", "description": "Display the current Weather in the Clock. GNOME Weather is required for this extension to function.", "link": "https://extensions.gnome.org/extension/1380/weather-in-the-clock/", "shell_version_map": {"38": {"version": "7", "sha256": "02aszdk2iswlqwkwi83gi69qzw0jwhill66qacrc7gg59mpfpq3b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGhlIGN1cnJlbnQgV2VhdGhlciBpbiB0aGUgQ2xvY2suIEdOT01FIFdlYXRoZXIgaXMgcmVxdWlyZWQgZm9yIHRoaXMgZXh0ZW5zaW9uIHRvIGZ1bmN0aW9uLiIsCiAgIm5hbWUiOiAiV2VhdGhlciBJbiBUaGUgQ2xvY2siLAogICJvcmlnaW5hbC1hdXRob3IiOiAiSmFzb25MRzE5NzlAZ2l0aHViLmlvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0phc29uTEcxOTc5L2dub21lLXNoZWxsLWV4dGVuc2lvbi13ZWF0aGVyLWluLXRoZS1jbG9jay8iLAogICJ1dWlkIjogIndlYXRoZXJpbnRoZWNsb2NrQEphc29uTEcxOTc5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "02aszdk2iswlqwkwi83gi69qzw0jwhill66qacrc7gg59mpfpq3b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGhlIGN1cnJlbnQgV2VhdGhlciBpbiB0aGUgQ2xvY2suIEdOT01FIFdlYXRoZXIgaXMgcmVxdWlyZWQgZm9yIHRoaXMgZXh0ZW5zaW9uIHRvIGZ1bmN0aW9uLiIsCiAgIm5hbWUiOiAiV2VhdGhlciBJbiBUaGUgQ2xvY2siLAogICJvcmlnaW5hbC1hdXRob3IiOiAiSmFzb25MRzE5NzlAZ2l0aHViLmlvIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0phc29uTEcxOTc5L2dub21lLXNoZWxsLWV4dGVuc2lvbi13ZWF0aGVyLWluLXRoZS1jbG9jay8iLAogICJ1dWlkIjogIndlYXRoZXJpbnRoZWNsb2NrQEphc29uTEcxOTc5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "LyricsFinder@alireza6677.gmail.com", "name": "Lyrics Finder", "pname": "lyrics-finder", "description": "Finding lyrics has never been easier\nJust play some music!\n\nIf you want to report a bug please don't forget to mention:\n- Gnome shell version\n- Your Linux distro\n- Extension version\n- Error messages (If you see any)\n", "link": "https://extensions.gnome.org/extension/1383/lyrics-finder/", "shell_version_map": {"40": {"version": "14", "sha256": "1x9d3npil0wgf44p276dslw5adw4gziij03r0jlw174yy87mn2lw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpbmRpbmcgbHlyaWNzIGhhcyBuZXZlciBiZWVuIGVhc2llclxuSnVzdCBwbGF5IHNvbWUgbXVzaWMhXG5cbklmIHlvdSB3YW50IHRvIHJlcG9ydCBhIGJ1ZyBwbGVhc2UgZG9uJ3QgZm9yZ2V0IHRvIG1lbnRpb246XG4tIEdub21lIHNoZWxsIHZlcnNpb25cbi0gWW91ciBMaW51eCBkaXN0cm9cbi0gRXh0ZW5zaW9uIHZlcnNpb25cbi0gRXJyb3IgbWVzc2FnZXMgKElmIHlvdSBzZWUgYW55KVxuIiwKICAibmFtZSI6ICJMeXJpY3MgRmluZGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmx5cmljcy1maW5kZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHA6Ly9naXRodWIuY29tL1RoZVdlaXJkRGV2L2x5cmljcy1maW5kZXItZ25vbWUtZXh0IiwKICAidXVpZCI6ICJMeXJpY3NGaW5kZXJAYWxpcmV6YTY2NzcuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDE0Cn0="}}}
 , {"uuid": "NotificationCounter@coolllsk", "name": "Notification Counter", "pname": "notification-counter", "description": "Shows number of notifications in queue.", "link": "https://extensions.gnome.org/extension/1386/notification-counter/", "shell_version_map": {"40": {"version": "4", "sha256": "0lld50jlnqgrm66030s6djy1gs5wd29l5l2is6mwqzxm8kypxpx7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIG51bWJlciBvZiBub3RpZmljYXRpb25zIGluIHF1ZXVlLiIsCiAgIm5hbWUiOiAiTm90aWZpY2F0aW9uIENvdW50ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdmtyaXphbi9Ob3RpZmljYXRpb25Db3VudGVyIiwKICAidXVpZCI6ICJOb3RpZmljYXRpb25Db3VudGVyQGNvb2xsbHNrIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "you2ber@konkor", "name": "you2ber", "pname": "you2ber", "description": "Gnome Youtube Downloader\n\n Simple helper for youtube-dl project. It allows you to save locally desired media content without any browser extensions. Just copy URL address of a media content to the clipboard and select desired quality profile or custom format for the item in the extension menu to store it.\n * Required the installation of ffmpeg (youtube-dl dependency for media manipulation)\n\nFor more information and how-to see README.md", "link": "https://extensions.gnome.org/extension/1392/you2ber/", "shell_version_map": {"40": {"version": "10", "sha256": "0dx5x22imwagx2j07xnayvd7zgsk7cyby7gh4jl935ndxmdp05fc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIFlvdXR1YmUgRG93bmxvYWRlclxuXG4gU2ltcGxlIGhlbHBlciBmb3IgeW91dHViZS1kbCBwcm9qZWN0LiBJdCBhbGxvd3MgeW91IHRvIHNhdmUgbG9jYWxseSBkZXNpcmVkIG1lZGlhIGNvbnRlbnQgd2l0aG91dCBhbnkgYnJvd3NlciBleHRlbnNpb25zLiBKdXN0IGNvcHkgVVJMIGFkZHJlc3Mgb2YgYSBtZWRpYSBjb250ZW50IHRvIHRoZSBjbGlwYm9hcmQgYW5kIHNlbGVjdCBkZXNpcmVkIHF1YWxpdHkgcHJvZmlsZSBvciBjdXN0b20gZm9ybWF0IGZvciB0aGUgaXRlbSBpbiB0aGUgZXh0ZW5zaW9uIG1lbnUgdG8gc3RvcmUgaXQuXG4gKiBSZXF1aXJlZCB0aGUgaW5zdGFsbGF0aW9uIG9mIGZmbXBlZyAoeW91dHViZS1kbCBkZXBlbmRlbmN5IGZvciBtZWRpYSBtYW5pcHVsYXRpb24pXG5cbkZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCBob3ctdG8gc2VlIFJFQURNRS5tZCIsCiAgIm5hbWUiOiAieW91MmJlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcua29ua29yLnlvdTJiZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzIiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va29ua29yL3lvdTJiZXIiLAogICJ1dWlkIjogInlvdTJiZXJAa29ua29yIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
 , {"uuid": "files-view@argonauta.framagit.org", "name": "Files View", "pname": "files-view", "description": "", "link": "https://extensions.gnome.org/extension/1395/files-view/", "shell_version_map": {"38": {"version": "11", "sha256": "0367kzrpzbx1b2l1m68n2pmazlsy4207a1anvyr2n1a4xpq3vwb0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiIsCiAgImdldHRleHQtZG9tYWluIjogImZpbGVzLXZpZXciLAogICJuYW1lIjogIkZpbGVzIFZpZXciLAogICJyZWNlbnRseS1vcGVuLXBlcnNpc3RlbnQtZmlsZW5hbWUiOiAicmVjZW50bHktb3Blbi1mb2xkZXJzLWZpbGVzLXZpZXctZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLmpzb24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZmlsZXMtdmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4xOCIsCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJmaWxlcy12aWV3QGFyZ29uYXV0YS5mcmFtYWdpdC5vcmciLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
 , {"uuid": "bluetooth-quick-connect@bjarosze.gmail.com", "name": "Bluetooth Quick Connect", "pname": "bluetooth-quick-connect", "description": "Allow to connect to paired devices from gnome control panel.\n", "link": "https://extensions.gnome.org/extension/1401/bluetooth-quick-connect/", "shell_version_map": {"38": {"version": "16", "sha256": "1fkx12xx1m8pchyfvq0vmyd21m79s9s0jw4ackqg1nqcpwyqd1c3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNvbm5lY3QgdG8gcGFpcmVkIGRldmljZXMgZnJvbSBnbm9tZSBjb250cm9sIHBhbmVsLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJuYW1lIjogIkJsdWV0b290aCBRdWljayBDb25uZWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYmphcm9zemUvZ25vbWUtYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJ1dWlkIjogImJsdWV0b290aC1xdWljay1jb25uZWN0QGJqYXJvc3plLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxNgp9"}, "40": {"version": "26", "sha256": "1yg5prjxi4zg98bm0ni44qg037iybvpjr8jg4kr5l82vxxf6bvk1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNvbm5lY3QgdG8gcGFpcmVkIGRldmljZXMgZnJvbSBnbm9tZSBjb250cm9sIHBhbmVsLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJuYW1lIjogIkJsdWV0b290aCBRdWljayBDb25uZWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iamFyb3N6ZS9nbm9tZS1ibHVldG9vdGgtcXVpY2stY29ubmVjdCIsCiAgInV1aWQiOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3RAYmphcm9zemUuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI2Cn0="}, "41": {"version": "26", "sha256": "1yg5prjxi4zg98bm0ni44qg037iybvpjr8jg4kr5l82vxxf6bvk1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93IHRvIGNvbm5lY3QgdG8gcGFpcmVkIGRldmljZXMgZnJvbSBnbm9tZSBjb250cm9sIHBhbmVsLlxuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3QiLAogICJuYW1lIjogIkJsdWV0b290aCBRdWljayBDb25uZWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aC1xdWljay1jb25uZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iamFyb3N6ZS9nbm9tZS1ibHVldG9vdGgtcXVpY2stY29ubmVjdCIsCiAgInV1aWQiOiAiYmx1ZXRvb3RoLXF1aWNrLWNvbm5lY3RAYmphcm9zemUuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDI2Cn0="}}}
-, {"uuid": "syspeek-gs@gs.eros2.info", "name": "SysPeek-GS", "pname": "syspeek-gs", "description": "Minimalistic CPU load monitor widget inspired by SysPeek indicator", "link": "https://extensions.gnome.org/extension/1409/syspeek-gs/", "shell_version_map": {"38": {"version": "8", "sha256": "0f4xwh74icf2hs6cg59d5drq89pwcb1hhr96m4k58gvqswfgxi00", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS9zeXNwZWVrLWdzIiwKICAidXVpZCI6ICJzeXNwZWVrLWdzQGdzLmVyb3MyLmluZm8iLAogICJ2ZXJzaW9uIjogOAp9"}, "40": {"version": "8", "sha256": "0f4xwh74icf2hs6cg59d5drq89pwcb1hhr96m4k58gvqswfgxi00", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS9zeXNwZWVrLWdzIiwKICAidXVpZCI6ICJzeXNwZWVrLWdzQGdzLmVyb3MyLmluZm8iLAogICJ2ZXJzaW9uIjogOAp9"}, "41": {"version": "8", "sha256": "0f4xwh74icf2hs6cg59d5drq89pwcb1hhr96m4k58gvqswfgxi00", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS9zeXNwZWVrLWdzIiwKICAidXVpZCI6ICJzeXNwZWVrLWdzQGdzLmVyb3MyLmluZm8iLAogICJ2ZXJzaW9uIjogOAp9"}}}
-, {"uuid": "discrete-brightness@gs.eros2.info", "name": "Discrete brightness", "pname": "discrete-brightness", "description": "Discrete brightness indicator change brightness in discrete steps, unlike default smooth brightness bar in Gnome Shell", "link": "https://extensions.gnome.org/extension/1410/discrete-brightness/", "shell_version_map": {"38": {"version": "6", "sha256": "0j7nxjkx6qgnggwy8jx5cy9qjn2rxgmbjjvadwkxh0rqk2mcvfq1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZSBicmlnaHRuZXNzIGluIGRpc2NyZXRlIHN0ZXBzLCB1bmxpa2UgZGVmYXVsdCBzbW9vdGggYnJpZ2h0bmVzcyBiYXIgaW4gR25vbWUgU2hlbGwiLAogICJuYW1lIjogIkRpc2NyZXRlIGJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vZGlzY3JldGUtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAiZGlzY3JldGUtYnJpZ2h0bmVzc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "6", "sha256": "0j7nxjkx6qgnggwy8jx5cy9qjn2rxgmbjjvadwkxh0rqk2mcvfq1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZSBicmlnaHRuZXNzIGluIGRpc2NyZXRlIHN0ZXBzLCB1bmxpa2UgZGVmYXVsdCBzbW9vdGggYnJpZ2h0bmVzcyBiYXIgaW4gR25vbWUgU2hlbGwiLAogICJuYW1lIjogIkRpc2NyZXRlIGJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vZGlzY3JldGUtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAiZGlzY3JldGUtYnJpZ2h0bmVzc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "41": {"version": "6", "sha256": "0j7nxjkx6qgnggwy8jx5cy9qjn2rxgmbjjvadwkxh0rqk2mcvfq1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZSBicmlnaHRuZXNzIGluIGRpc2NyZXRlIHN0ZXBzLCB1bmxpa2UgZGVmYXVsdCBzbW9vdGggYnJpZ2h0bmVzcyBiYXIgaW4gR25vbWUgU2hlbGwiLAogICJuYW1lIjogIkRpc2NyZXRlIGJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vZGlzY3JldGUtYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAiZGlzY3JldGUtYnJpZ2h0bmVzc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
+, {"uuid": "syspeek-gs@gs.eros2.info", "name": "SysPeek-GS", "pname": "syspeek-gs", "description": "Minimalistic CPU load monitor widget inspired by SysPeek indicator", "link": "https://extensions.gnome.org/extension/1409/syspeek-gs/", "shell_version_map": {"38": {"version": "10", "sha256": "1hv65wfhd24i773pngr4s5if9n0ailb1lmn9dk01b93nhcxdbynf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vc3lzcGVlay1ncyIsCiAgInV1aWQiOiAic3lzcGVlay1nc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "10", "sha256": "1hv65wfhd24i773pngr4s5if9n0ailb1lmn9dk01b93nhcxdbynf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vc3lzcGVlay1ncyIsCiAgInV1aWQiOiAic3lzcGVlay1nc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "1hv65wfhd24i773pngr4s5if9n0ailb1lmn9dk01b93nhcxdbynf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vc3lzcGVlay1ncyIsCiAgInV1aWQiOiAic3lzcGVlay1nc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDEwCn0="}, "42": {"version": "10", "sha256": "1hv65wfhd24i773pngr4s5if9n0ailb1lmn9dk01b93nhcxdbynf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltYWxpc3RpYyBDUFUgbG9hZCBtb25pdG9yIHdpZGdldCBpbnNwaXJlZCBieSBTeXNQZWVrIGluZGljYXRvciIsCiAgIm5hbWUiOiAiU3lzUGVlay1HUyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2V1Z2VuZS1yb20vc3lzcGVlay1ncyIsCiAgInV1aWQiOiAic3lzcGVlay1nc0Bncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
+, {"uuid": "discrete-brightness@gs.eros2.info", "name": "Discrete brightness", "pname": "discrete-brightness", "description": "Discrete brightness indicator change brightness in discrete steps, unlike default smooth brightness bar in Gnome Shell", "link": "https://extensions.gnome.org/extension/1410/discrete-brightness/", "shell_version_map": {"38": {"version": "7", "sha256": "0kn8c4zm9d7n56qg5wmj8q3cqqhrzd2h2jj6r7x718gyv84m14mv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZSBicmlnaHRuZXNzIGluIGRpc2NyZXRlIHN0ZXBzLCB1bmxpa2UgZGVmYXVsdCBzbW9vdGggYnJpZ2h0bmVzcyBiYXIgaW4gR25vbWUgU2hlbGwiLAogICJuYW1lIjogIkRpc2NyZXRlIGJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL2Rpc2NyZXRlLWJyaWdodG5lc3MiLAogICJ1dWlkIjogImRpc2NyZXRlLWJyaWdodG5lc3NAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "0kn8c4zm9d7n56qg5wmj8q3cqqhrzd2h2jj6r7x718gyv84m14mv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZSBicmlnaHRuZXNzIGluIGRpc2NyZXRlIHN0ZXBzLCB1bmxpa2UgZGVmYXVsdCBzbW9vdGggYnJpZ2h0bmVzcyBiYXIgaW4gR25vbWUgU2hlbGwiLAogICJuYW1lIjogIkRpc2NyZXRlIGJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL2Rpc2NyZXRlLWJyaWdodG5lc3MiLAogICJ1dWlkIjogImRpc2NyZXRlLWJyaWdodG5lc3NAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "0kn8c4zm9d7n56qg5wmj8q3cqqhrzd2h2jj6r7x718gyv84m14mv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZSBicmlnaHRuZXNzIGluIGRpc2NyZXRlIHN0ZXBzLCB1bmxpa2UgZGVmYXVsdCBzbW9vdGggYnJpZ2h0bmVzcyBiYXIgaW4gR25vbWUgU2hlbGwiLAogICJuYW1lIjogIkRpc2NyZXRlIGJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL2Rpc2NyZXRlLWJyaWdodG5lc3MiLAogICJ1dWlkIjogImRpc2NyZXRlLWJyaWdodG5lc3NAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiA3Cn0="}, "42": {"version": "7", "sha256": "0kn8c4zm9d7n56qg5wmj8q3cqqhrzd2h2jj6r7x718gyv84m14mv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2NyZXRlIGJyaWdodG5lc3MgaW5kaWNhdG9yIGNoYW5nZSBicmlnaHRuZXNzIGluIGRpc2NyZXRlIHN0ZXBzLCB1bmxpa2UgZGVmYXVsdCBzbW9vdGggYnJpZ2h0bmVzcyBiYXIgaW4gR25vbWUgU2hlbGwiLAogICJuYW1lIjogIkRpc2NyZXRlIGJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL2Rpc2NyZXRlLWJyaWdodG5lc3MiLAogICJ1dWlkIjogImRpc2NyZXRlLWJyaWdodG5lc3NAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "quake-mode@repsac-by.github.com", "name": "quake-mode", "pname": "quake-mode", "description": "Drop-down mode for any application", "link": "https://extensions.gnome.org/extension/1411/quake-mode/", "shell_version_map": {"38": {"version": "3", "sha256": "17498v2jw85fhrsldvgnj3x01h00wqarsp9zqp6ym4h7syzbjxrw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRyb3AtZG93biBtb2RlIGZvciBhbnkgYXBwbGljYXRpb24iLAogICJuYW1lIjogInF1YWtlLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yZXBzYWMtYnkvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXF1YWtlLW1vZGUiLAogICJ1dWlkIjogInF1YWtlLW1vZGVAcmVwc2FjLWJ5LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "5", "sha256": "07vhkpgck80facrds1zy6c6hk10fb06yhj1x5gay1vykv7msnqi7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRyb3AtZG93biBtb2RlIGZvciBhbnkgYXBwbGljYXRpb24iLAogICJuYW1lIjogInF1YWtlLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JlcHNhYy1ieS9nbm9tZS1zaGVsbC1leHRlbnNpb24tcXVha2UtbW9kZSIsCiAgInV1aWQiOiAicXVha2UtbW9kZUByZXBzYWMtYnkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "07vhkpgck80facrds1zy6c6hk10fb06yhj1x5gay1vykv7msnqi7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRyb3AtZG93biBtb2RlIGZvciBhbnkgYXBwbGljYXRpb24iLAogICJuYW1lIjogInF1YWtlLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JlcHNhYy1ieS9nbm9tZS1zaGVsbC1leHRlbnNpb24tcXVha2UtbW9kZSIsCiAgInV1aWQiOiAicXVha2UtbW9kZUByZXBzYWMtYnkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "unblank@sun.wxg@gmail.com", "name": "Unblank lock screen", "pname": "unblank", "description": "Unblank lock screen.", "link": "https://extensions.gnome.org/extension/1414/unblank/", "shell_version_map": {"38": {"version": "20", "sha256": "0fb2vbjgl93a0maw9wxw1x47ndfg40gf087rmfk7lgxr8b6vp9si", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuYmxhbmsgbG9jayBzY3JlZW4uIiwKICAibmFtZSI6ICJVbmJsYW5rIGxvY2sgc2NyZWVuIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdW5ibGFuayIsCiAgInV1aWQiOiAidW5ibGFua0BzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyMAp9"}, "40": {"version": "22", "sha256": "1kb7l1q7dvz5z5xrmhgm48jabblh81n8cm34ck711psy4rv1ljy2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuYmxhbmsgbG9jayBzY3JlZW4uIiwKICAibmFtZSI6ICJVbmJsYW5rIGxvY2sgc2NyZWVuIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXVuYmxhbmsiLAogICJ1dWlkIjogInVuYmxhbmtAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "41": {"version": "26", "sha256": "1ifjqawnnksnfhh05yxpzz7jk3nz3sd3rzdg12i6g35kf7w0gmln", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVuYmxhbmsgbG9jayBzY3JlZW4uIiwKICAibmFtZSI6ICJVbmJsYW5rIGxvY2sgc2NyZWVuIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXVuYmxhbmsiLAogICJ1dWlkIjogInVuYmxhbmtAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjYKfQ=="}}}
-, {"uuid": "vbox-applet@gs.eros2.info", "name": "VirtualBox applet", "pname": "virtualbox-applet", "description": "Provide menu to run VirtualBox machines and switch between running VMs", "link": "https://extensions.gnome.org/extension/1415/virtualbox-applet/", "shell_version_map": {"38": {"version": "9", "sha256": "1dpda9g9nknjbc7wfzhdahly3w3mvqw6r4qqdrhylsc3kqq858ay", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL3Zib3gtYXBwbGV0IiwKICAidXVpZCI6ICJ2Ym94LWFwcGxldEBncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "40": {"version": "9", "sha256": "1dpda9g9nknjbc7wfzhdahly3w3mvqw6r4qqdrhylsc3kqq858ay", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL3Zib3gtYXBwbGV0IiwKICAidXVpZCI6ICJ2Ym94LWFwcGxldEBncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "41": {"version": "9", "sha256": "1dpda9g9nknjbc7wfzhdahly3w3mvqw6r4qqdrhylsc3kqq858ay", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ldWdlbmUtcm9tL3Zib3gtYXBwbGV0IiwKICAidXVpZCI6ICJ2Ym94LWFwcGxldEBncy5lcm9zMi5pbmZvIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
+, {"uuid": "vbox-applet@gs.eros2.info", "name": "VirtualBox applet", "pname": "virtualbox-applet", "description": "Provide menu to run VirtualBox machines and switch between running VMs", "link": "https://extensions.gnome.org/extension/1415/virtualbox-applet/", "shell_version_map": {"38": {"version": "11", "sha256": "0sw84xiz1r2i0iza76ybywd9mcw0npgls08hzms4kl4fpbd1g3ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS92Ym94LWFwcGxldCIsCiAgInV1aWQiOiAidmJveC1hcHBsZXRAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}, "40": {"version": "11", "sha256": "0sw84xiz1r2i0iza76ybywd9mcw0npgls08hzms4kl4fpbd1g3ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS92Ym94LWFwcGxldCIsCiAgInV1aWQiOiAidmJveC1hcHBsZXRAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "0sw84xiz1r2i0iza76ybywd9mcw0npgls08hzms4kl4fpbd1g3ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS92Ym94LWFwcGxldCIsCiAgInV1aWQiOiAidmJveC1hcHBsZXRAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}, "42": {"version": "11", "sha256": "0sw84xiz1r2i0iza76ybywd9mcw0npgls08hzms4kl4fpbd1g3ym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgbWVudSB0byBydW4gVmlydHVhbEJveCBtYWNoaW5lcyBhbmQgc3dpdGNoIGJldHdlZW4gcnVubmluZyBWTXMiLAogICJuYW1lIjogIlZpcnR1YWxCb3ggYXBwbGV0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnZib3gtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZXVnZW5lLXJvbS92Ym94LWFwcGxldCIsCiAgInV1aWQiOiAidmJveC1hcHBsZXRAZ3MuZXJvczIuaW5mbyIsCiAgInZlcnNpb24iOiAxMQp9"}}}
 , {"uuid": "stocks@infinicode.de", "name": "Stocks Extension", "pname": "stocks-extension", "description": "Stocks Extension brings stock quotes to your GNOME Shell Panel", "link": "https://extensions.gnome.org/extension/1422/stocks-extension/", "shell_version_map": {"38": {"version": "19", "sha256": "1414cksayqpv0w0q632yi33ifqlwyfggwf684aci6qj81fs644y2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0b2NrcyBFeHRlbnNpb24gYnJpbmdzIHN0b2NrIHF1b3RlcyB0byB5b3VyIEdOT01FIFNoZWxsIFBhbmVsIiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJTdG9ja3MgRXh0ZW5zaW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMvc3RvY2tzLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAic3RvY2tzQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "40": {"version": "19", "sha256": "1414cksayqpv0w0q632yi33ifqlwyfggwf684aci6qj81fs644y2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0b2NrcyBFeHRlbnNpb24gYnJpbmdzIHN0b2NrIHF1b3RlcyB0byB5b3VyIEdOT01FIFNoZWxsIFBhbmVsIiwKICAibG9jYWxlZGlyIjogIi91c3IvbG9jYWwvc2hhcmUvbG9jYWxlIiwKICAibmFtZSI6ICJTdG9ja3MgRXh0ZW5zaW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMvc3RvY2tzLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAic3RvY2tzQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}}}
 , {"uuid": "showtime@xenlism.github.io", "name": "Showtime  - Desktop Widget", "pname": "showtime", "description": "Date &amp;amp;amp;amp;amp;amp;amp; Clock Desktop Widget\n\nMove Widget by Press Super + Drag Widget\nhttps://github.com/xenlism/showtime", "link": "https://extensions.gnome.org/extension/1429/showtime/", "shell_version_map": {"38": {"version": "4", "sha256": "12k6spjhg2ykgh5x3mily0dps450pyj9vyv1bay5w919y9swplaf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRhdGUgJmFtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDsgQ2xvY2sgRGVza3RvcCBXaWRnZXRcblxuTW92ZSBXaWRnZXQgYnkgUHJlc3MgU3VwZXIgKyBEcmFnIFdpZGdldFxuaHR0cHM6Ly9naXRodWIuY29tL3hlbmxpc20vc2hvd3RpbWUiLAogICJuYW1lIjogIlNob3d0aW1lICAtIERlc2t0b3AgV2lkZ2V0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNob3d0aW1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20veGVubGlzbS9zaG93dGltZSIsCiAgInV1aWQiOiAic2hvd3RpbWVAeGVubGlzbS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "5", "sha256": "0p10as2k6lkh3vj5860hvmj98by18ih8r2k7y36iqrxqpl3s8fd4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRhdGUgJmFtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDsgQ2xvY2sgRGVza3RvcCBXaWRnZXRcblxuTW92ZSBXaWRnZXQgYnkgUHJlc3MgU3VwZXIgKyBEcmFnIFdpZGdldFxuaHR0cHM6Ly9naXRodWIuY29tL3hlbmxpc20vc2hvd3RpbWUiLAogICJuYW1lIjogIlNob3d0aW1lICAtIERlc2t0b3AgV2lkZ2V0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNob3d0aW1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3hlbmxpc20vc2hvd3RpbWUiLAogICJ1dWlkIjogInNob3d0aW1lQHhlbmxpc20uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"uuid": "Current_screen_only_for_Alternate_Tab@bourcereau.fr", "name": "Current screen only on window switcher", "pname": "current-screen-only-for-alternate-tab", "description": "Limits the windows shown on the switcher to those of the current monitor", "link": "https://extensions.gnome.org/extension/1437/current-screen-only-for-alternate-tab/", "shell_version_map": {"40": {"version": "8", "sha256": "0x4idd6ba55qxsnx8fplgamdjj0f2hmv2sv2vbn3m3wavd4n0w27", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpbWl0cyB0aGUgd2luZG93cyBzaG93biBvbiB0aGUgc3dpdGNoZXIgdG8gdGhvc2Ugb2YgdGhlIGN1cnJlbnQgbW9uaXRvciIsCiAgIm5hbWUiOiAiQ3VycmVudCBzY3JlZW4gb25seSBvbiB3aW5kb3cgc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzIiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21tYWkvQ3VycmVudF9zY3JlZW5fb25seV9vbl93aW5kb3dfc3dpdGNoZXIiLAogICJ1dWlkIjogIkN1cnJlbnRfc2NyZWVuX29ubHlfZm9yX0FsdGVybmF0ZV9UYWJAYm91cmNlcmVhdS5mciIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "0x4idd6ba55qxsnx8fplgamdjj0f2hmv2sv2vbn3m3wavd4n0w27", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpbWl0cyB0aGUgd2luZG93cyBzaG93biBvbiB0aGUgc3dpdGNoZXIgdG8gdGhvc2Ugb2YgdGhlIGN1cnJlbnQgbW9uaXRvciIsCiAgIm5hbWUiOiAiQ3VycmVudCBzY3JlZW4gb25seSBvbiB3aW5kb3cgc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzIiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21tYWkvQ3VycmVudF9zY3JlZW5fb25seV9vbl93aW5kb3dfc3dpdGNoZXIiLAogICJ1dWlkIjogIkN1cnJlbnRfc2NyZWVuX29ubHlfZm9yX0FsdGVybmF0ZV9UYWJAYm91cmNlcmVhdS5mciIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"uuid": "kube_config@vvbogdanov87.gmail.com", "name": "Kube Config", "pname": "kube-config", "description": "Switches kube config context", "link": "https://extensions.gnome.org/extension/1442/kube-config/", "shell_version_map": {"40": {"version": "14", "sha256": "125gbiim4d3kpycjncvqmxqgz3i1c15kkyx2rmgkc2wpzx0gyc6i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaGVzIGt1YmUgY29uZmlnIGNvbnRleHQiLAogICJuYW1lIjogIkt1YmUgQ29uZmlnIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmt1YmUtY29uZmlnIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92dmJvZ2Rhbm92ODcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWt1YmVjb25maWciLAogICJ1dWlkIjogImt1YmVfY29uZmlnQHZ2Ym9nZGFub3Y4Ny5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "41": {"version": "14", "sha256": "125gbiim4d3kpycjncvqmxqgz3i1c15kkyx2rmgkc2wpzx0gyc6i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaGVzIGt1YmUgY29uZmlnIGNvbnRleHQiLAogICJuYW1lIjogIkt1YmUgQ29uZmlnIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmt1YmUtY29uZmlnIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92dmJvZ2Rhbm92ODcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWt1YmVjb25maWciLAogICJ1dWlkIjogImt1YmVfY29uZmlnQHZ2Ym9nZGFub3Y4Ny5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
-, {"uuid": "transparent-window-moving@noobsai.github.com", "name": "Transparent Window Moving", "pname": "transparent-window-moving", "description": "Makes the window semi-transparent when moving or resizing", "link": "https://extensions.gnome.org/extension/1446/transparent-window-moving/", "shell_version_map": {"38": {"version": "6", "sha256": "0vllnrscjaqx77wb44803q6n3wk590dxacjfsw7ympbgqhikzc0p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHRoZSB3aW5kb3cgc2VtaS10cmFuc3BhcmVudCB3aGVuIG1vdmluZyBvciByZXNpemluZyIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiVHJhbnNwYXJlbnQgV2luZG93IE1vdmluZyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTm9vYnNhaS90cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nQG5vb2JzYWkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA2Cn0="}, "40": {"version": "10", "sha256": "1cygayp1kaykm7ldsdbn6qpxi80ddipvlhl6i89sca33yrwisz3n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHRoZSB3aW5kb3cgc2VtaS10cmFuc3BhcmVudCB3aGVuIG1vdmluZyBvciByZXNpemluZyIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiVHJhbnNwYXJlbnQgV2luZG93IE1vdmluZyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTm9vYnNhaS90cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nQG5vb2JzYWkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "1cygayp1kaykm7ldsdbn6qpxi80ddipvlhl6i89sca33yrwisz3n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHRoZSB3aW5kb3cgc2VtaS10cmFuc3BhcmVudCB3aGVuIG1vdmluZyBvciByZXNpemluZyIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiVHJhbnNwYXJlbnQgV2luZG93IE1vdmluZyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTm9vYnNhaS90cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nQG5vb2JzYWkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMAp9"}}}
+, {"uuid": "transparent-window-moving@noobsai.github.com", "name": "Transparent Window Moving", "pname": "transparent-window-moving", "description": "Makes the window semi-transparent when moving or resizing", "link": "https://extensions.gnome.org/extension/1446/transparent-window-moving/", "shell_version_map": {"38": {"version": "6", "sha256": "0vllnrscjaqx77wb44803q6n3wk590dxacjfsw7ympbgqhikzc0p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHRoZSB3aW5kb3cgc2VtaS10cmFuc3BhcmVudCB3aGVuIG1vdmluZyBvciByZXNpemluZyIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiVHJhbnNwYXJlbnQgV2luZG93IE1vdmluZyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTm9vYnNhaS90cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nQG5vb2JzYWkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA2Cn0="}, "40": {"version": "10", "sha256": "1cygayp1kaykm7ldsdbn6qpxi80ddipvlhl6i89sca33yrwisz3n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHRoZSB3aW5kb3cgc2VtaS10cmFuc3BhcmVudCB3aGVuIG1vdmluZyBvciByZXNpemluZyIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiVHJhbnNwYXJlbnQgV2luZG93IE1vdmluZyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTm9vYnNhaS90cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nQG5vb2JzYWkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "1cygayp1kaykm7ldsdbn6qpxi80ddipvlhl6i89sca33yrwisz3n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHRoZSB3aW5kb3cgc2VtaS10cmFuc3BhcmVudCB3aGVuIG1vdmluZyBvciByZXNpemluZyIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiVHJhbnNwYXJlbnQgV2luZG93IE1vdmluZyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTm9vYnNhaS90cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nQG5vb2JzYWkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMAp9"}, "42": {"version": "10", "sha256": "1cygayp1kaykm7ldsdbn6qpxi80ddipvlhl6i89sca33yrwisz3n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHRoZSB3aW5kb3cgc2VtaS10cmFuc3BhcmVudCB3aGVuIG1vdmluZyBvciByZXNpemluZyIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiVHJhbnNwYXJlbnQgV2luZG93IE1vdmluZyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTm9vYnNhaS90cmFuc3BhcmVudC13aW5kb3ctbW92aW5nIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC13aW5kb3ctbW92aW5nQG5vb2JzYWkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMAp9"}}}
 , {"uuid": "transparent-window@pbxqdown.github.com", "name": "Transparent Window", "pname": "transparent-window", "description": "Change the opacity of windows by compiz-style shortcut Alt+scroll.\nYou can customize hotkey in Preference page if Alt key doesn't work.", "link": "https://extensions.gnome.org/extension/1454/transparent-window/", "shell_version_map": {"38": {"version": "7", "sha256": "09nhn8f7d8c1kp8hgw49y0d9165ckvgn6my339k0pzga02d277a6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgb3BhY2l0eSBvZiB3aW5kb3dzIGJ5IGNvbXBpei1zdHlsZSBzaG9ydGN1dCBBbHQrc2Nyb2xsLlxuWW91IGNhbiBjdXN0b21pemUgaG90a2V5IGluIFByZWZlcmVuY2UgcGFnZSBpZiBBbHQga2V5IGRvZXNuJ3Qgd29yay4iLAogICJuYW1lIjogIlRyYW5zcGFyZW50IFdpbmRvdyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5UcmFuc3BhcmVudFdpbmRvdyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOC4xIiwKICAgICIzLjM2LjEiLAogICAgIjMuMzguMSIsCiAgICAiMy4zOC40IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcGJ4cWRvd24vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRyYW5zcGFyZW50LXdpbmRvdyIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtd2luZG93QHBieHFkb3duLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"uuid": "miniview@thesecretaryofwar.com", "name": "Miniview", "pname": "miniview", "description": "Shows a mini preview of another window (like picture-in-picture on a TV)\n- Left-mouse drag: move preview window\n- Right-mouse drag (or ctrl + left mouse drag): resize preview window\n- Scroll wheel: change target window\n- Double click: raise target window\n- Shift + F12: toggle preview window (this can be changed or disabled in preferences)\n- Ctrl + scroll wheel: adjust opacity", "link": "https://extensions.gnome.org/extension/1459/miniview/", "shell_version_map": {"38": {"version": "13", "sha256": "0nf2jxd9kvw7nzb992730xidg7kf4iywy8yr5mj9152bi2nmblz6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgbWluaSBwcmV2aWV3IG9mIGFub3RoZXIgd2luZG93IChsaWtlIHBpY3R1cmUtaW4tcGljdHVyZSBvbiBhIFRWKVxuLSBMZWZ0LW1vdXNlIGRyYWc6IG1vdmUgcHJldmlldyB3aW5kb3dcbi0gUmlnaHQtbW91c2UgZHJhZyAob3IgY3RybCArIGxlZnQgbW91c2UgZHJhZyk6IHJlc2l6ZSBwcmV2aWV3IHdpbmRvd1xuLSBTY3JvbGwgd2hlZWw6IGNoYW5nZSB0YXJnZXQgd2luZG93XG4tIERvdWJsZSBjbGljazogcmFpc2UgdGFyZ2V0IHdpbmRvd1xuLSBTaGlmdCArIEYxMjogdG9nZ2xlIHByZXZpZXcgd2luZG93ICh0aGlzIGNhbiBiZSBjaGFuZ2VkIG9yIGRpc2FibGVkIGluIHByZWZlcmVuY2VzKVxuLSBDdHJsICsgc2Nyb2xsIHdoZWVsOiBhZGp1c3Qgb3BhY2l0eSIsCiAgImV4dGVuc2lvbi1pZCI6ICJtaW5pdmlldyIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIk1pbml2aWV3IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJ0aGVzZWNyZXRhcnlvZndhckBnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1pbml2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaWFtbGVtZWMvbWluaXZpZXciLAogICJ1dWlkIjogIm1pbml2aWV3QHRoZXNlY3JldGFyeW9md2FyLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}, "40": {"version": "12", "sha256": "0p26h4dgxja8iww5mjzxzwmr2fx0hz8wphxqal14xm83k1nsl4ih", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgbWluaSBwcmV2aWV3IG9mIGFub3RoZXIgd2luZG93IChsaWtlIHBpY3R1cmUtaW4tcGljdHVyZSBvbiBhIFRWKVxuLSBMZWZ0LW1vdXNlIGRyYWc6IG1vdmUgcHJldmlldyB3aW5kb3dcbi0gUmlnaHQtbW91c2UgZHJhZyAob3IgY3RybCArIGxlZnQgbW91c2UgZHJhZyk6IHJlc2l6ZSBwcmV2aWV3IHdpbmRvd1xuLSBTY3JvbGwgd2hlZWw6IGNoYW5nZSB0YXJnZXQgd2luZG93XG4tIERvdWJsZSBjbGljazogcmFpc2UgdGFyZ2V0IHdpbmRvd1xuLSBTaGlmdCArIEYxMjogdG9nZ2xlIHByZXZpZXcgd2luZG93ICh0aGlzIGNhbiBiZSBjaGFuZ2VkIG9yIGRpc2FibGVkIGluIHByZWZlcmVuY2VzKVxuLSBDdHJsICsgc2Nyb2xsIHdoZWVsOiBhZGp1c3Qgb3BhY2l0eSIsCiAgImV4dGVuc2lvbi1pZCI6ICJtaW5pdmlldyIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIk1pbml2aWV3IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJ0aGVzZWNyZXRhcnlvZndhckBnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1pbml2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC5hbHBoYSIsCiAgICAiNDAuYmV0YSIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaWFtbGVtZWMvbWluaXZpZXciLAogICJ1dWlkIjogIm1pbml2aWV3QHRoZXNlY3JldGFyeW9md2FyLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "0p26h4dgxja8iww5mjzxzwmr2fx0hz8wphxqal14xm83k1nsl4ih", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgbWluaSBwcmV2aWV3IG9mIGFub3RoZXIgd2luZG93IChsaWtlIHBpY3R1cmUtaW4tcGljdHVyZSBvbiBhIFRWKVxuLSBMZWZ0LW1vdXNlIGRyYWc6IG1vdmUgcHJldmlldyB3aW5kb3dcbi0gUmlnaHQtbW91c2UgZHJhZyAob3IgY3RybCArIGxlZnQgbW91c2UgZHJhZyk6IHJlc2l6ZSBwcmV2aWV3IHdpbmRvd1xuLSBTY3JvbGwgd2hlZWw6IGNoYW5nZSB0YXJnZXQgd2luZG93XG4tIERvdWJsZSBjbGljazogcmFpc2UgdGFyZ2V0IHdpbmRvd1xuLSBTaGlmdCArIEYxMjogdG9nZ2xlIHByZXZpZXcgd2luZG93ICh0aGlzIGNhbiBiZSBjaGFuZ2VkIG9yIGRpc2FibGVkIGluIHByZWZlcmVuY2VzKVxuLSBDdHJsICsgc2Nyb2xsIHdoZWVsOiBhZGp1c3Qgb3BhY2l0eSIsCiAgImV4dGVuc2lvbi1pZCI6ICJtaW5pdmlldyIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIk1pbml2aWV3IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJ0aGVzZWNyZXRhcnlvZndhckBnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1pbml2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC5hbHBoYSIsCiAgICAiNDAuYmV0YSIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaWFtbGVtZWMvbWluaXZpZXciLAogICJ1dWlkIjogIm1pbml2aWV3QHRoZXNlY3JldGFyeW9md2FyLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
-, {"uuid": "Vitals@CoreCoding.com", "name": "Vitals", "pname": "vitals", "description": "A glimpse into your computer's temperature, voltage, fan speed, memory usage, processor load, system resources, network speed and storage stats. This is a one stop shop to monitor all of your vital sensors. Uses asynchronous polling to provide a smooth user experience. Feature requests or bugs? Please use GitHub.", "link": "https://extensions.gnome.org/extension/1460/vitals/", "shell_version_map": {"38": {"version": "51", "sha256": "1ww56zlb3jrd3nlbnf0cm5vmfd2y44sp1k79ifzwp06b545kksc5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY29yZWNvZGluZy9WaXRhbHMiLAogICJ1dWlkIjogIlZpdGFsc0BDb3JlQ29kaW5nLmNvbSIsCiAgInZlcnNpb24iOiA1MQp9"}, "40": {"version": "51", "sha256": "1ww56zlb3jrd3nlbnf0cm5vmfd2y44sp1k79ifzwp06b545kksc5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY29yZWNvZGluZy9WaXRhbHMiLAogICJ1dWlkIjogIlZpdGFsc0BDb3JlQ29kaW5nLmNvbSIsCiAgInZlcnNpb24iOiA1MQp9"}, "41": {"version": "51", "sha256": "1ww56zlb3jrd3nlbnf0cm5vmfd2y44sp1k79ifzwp06b545kksc5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY29yZWNvZGluZy9WaXRhbHMiLAogICJ1dWlkIjogIlZpdGFsc0BDb3JlQ29kaW5nLmNvbSIsCiAgInZlcnNpb24iOiA1MQp9"}}}
-, {"uuid": "panel-date-format@keiii.github.com", "name": "Panel Date Format", "pname": "panel-date-format", "description": "Allows to customize the date format on the panel.", "link": "https://extensions.gnome.org/extension/1462/panel-date-format/", "shell_version_map": {"40": {"version": "7", "sha256": "0afqf8hkmg1fmnz0nn6jq6k7yl7vs69w0malqhf1bqfsn5w7ksdw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIlBhbmVsIERhdGUgRm9ybWF0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vS0VJSUkvZ25vbWUtc2hlbGwtcGFuZWwtZGF0ZS1mb3JtYXQiLAogICJ1dWlkIjogInBhbmVsLWRhdGUtZm9ybWF0QGtlaWlpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "41": {"version": "7", "sha256": "0afqf8hkmg1fmnz0nn6jq6k7yl7vs69w0malqhf1bqfsn5w7ksdw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIlBhbmVsIERhdGUgRm9ybWF0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vS0VJSUkvZ25vbWUtc2hlbGwtcGFuZWwtZGF0ZS1mb3JtYXQiLAogICJ1dWlkIjogInBhbmVsLWRhdGUtZm9ybWF0QGtlaWlpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
+, {"uuid": "Vitals@CoreCoding.com", "name": "Vitals", "pname": "vitals", "description": "A glimpse into your computer's temperature, voltage, fan speed, memory usage, processor load, system resources, network speed and storage stats. This is a one stop shop to monitor all of your vital sensors. Uses asynchronous polling to provide a smooth user experience. Feature requests or bugs? Please use GitHub.", "link": "https://extensions.gnome.org/extension/1460/vitals/", "shell_version_map": {"38": {"version": "52", "sha256": "07v6g5yg3pzzghja1yvzgafvzw8mn9zfydx3mxk8phixbkj93cdn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY29yZWNvZGluZy9WaXRhbHMiLAogICJ1dWlkIjogIlZpdGFsc0BDb3JlQ29kaW5nLmNvbSIsCiAgInZlcnNpb24iOiA1Mgp9"}, "40": {"version": "52", "sha256": "07v6g5yg3pzzghja1yvzgafvzw8mn9zfydx3mxk8phixbkj93cdn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY29yZWNvZGluZy9WaXRhbHMiLAogICJ1dWlkIjogIlZpdGFsc0BDb3JlQ29kaW5nLmNvbSIsCiAgInZlcnNpb24iOiA1Mgp9"}, "41": {"version": "52", "sha256": "07v6g5yg3pzzghja1yvzgafvzw8mn9zfydx3mxk8phixbkj93cdn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY29yZWNvZGluZy9WaXRhbHMiLAogICJ1dWlkIjogIlZpdGFsc0BDb3JlQ29kaW5nLmNvbSIsCiAgInZlcnNpb24iOiA1Mgp9"}, "42": {"version": "52", "sha256": "07v6g5yg3pzzghja1yvzgafvzw8mn9zfydx3mxk8phixbkj93cdn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ2xpbXBzZSBpbnRvIHlvdXIgY29tcHV0ZXIncyB0ZW1wZXJhdHVyZSwgdm9sdGFnZSwgZmFuIHNwZWVkLCBtZW1vcnkgdXNhZ2UsIHByb2Nlc3NvciBsb2FkLCBzeXN0ZW0gcmVzb3VyY2VzLCBuZXR3b3JrIHNwZWVkIGFuZCBzdG9yYWdlIHN0YXRzLiBUaGlzIGlzIGEgb25lIHN0b3Agc2hvcCB0byBtb25pdG9yIGFsbCBvZiB5b3VyIHZpdGFsIHNlbnNvcnMuIFVzZXMgYXN5bmNocm9ub3VzIHBvbGxpbmcgdG8gcHJvdmlkZSBhIHNtb290aCB1c2VyIGV4cGVyaWVuY2UuIEZlYXR1cmUgcmVxdWVzdHMgb3IgYnVncz8gUGxlYXNlIHVzZSBHaXRIdWIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidml0YWxzIiwKICAibmFtZSI6ICJWaXRhbHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudml0YWxzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY29yZWNvZGluZy9WaXRhbHMiLAogICJ1dWlkIjogIlZpdGFsc0BDb3JlQ29kaW5nLmNvbSIsCiAgInZlcnNpb24iOiA1Mgp9"}}}
+, {"uuid": "panel-date-format@keiii.github.com", "name": "Panel Date Format", "pname": "panel-date-format", "description": "Allows to customize the date format on the panel.", "link": "https://extensions.gnome.org/extension/1462/panel-date-format/", "shell_version_map": {"40": {"version": "7", "sha256": "0afqf8hkmg1fmnz0nn6jq6k7yl7vs69w0malqhf1bqfsn5w7ksdw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIlBhbmVsIERhdGUgRm9ybWF0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vS0VJSUkvZ25vbWUtc2hlbGwtcGFuZWwtZGF0ZS1mb3JtYXQiLAogICJ1dWlkIjogInBhbmVsLWRhdGUtZm9ybWF0QGtlaWlpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "41": {"version": "7", "sha256": "0afqf8hkmg1fmnz0nn6jq6k7yl7vs69w0malqhf1bqfsn5w7ksdw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIlBhbmVsIERhdGUgRm9ybWF0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vS0VJSUkvZ25vbWUtc2hlbGwtcGFuZWwtZGF0ZS1mb3JtYXQiLAogICJ1dWlkIjogInBhbmVsLWRhdGUtZm9ybWF0QGtlaWlpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "42": {"version": "7", "sha256": "0afqf8hkmg1fmnz0nn6jq6k7yl7vs69w0malqhf1bqfsn5w7ksdw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIlBhbmVsIERhdGUgRm9ybWF0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vS0VJSUkvZ25vbWUtc2hlbGwtcGFuZWwtZGF0ZS1mb3JtYXQiLAogICJ1dWlkIjogInBhbmVsLWRhdGUtZm9ybWF0QGtlaWlpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"uuid": "desktop-icons@csoriano", "name": "Desktop Icons", "pname": "desktop-icons", "description": "Add icons to the desktop", "link": "https://extensions.gnome.org/extension/1465/desktop-icons/", "shell_version_map": {"38": {"version": "19", "sha256": "01qdh1kigl3ck1mzgha1a9218lpam5b54ai72mpvr64gkaax2mcv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBpY29ucyB0byB0aGUgZGVza3RvcCIsCiAgIm5hbWUiOiAiRGVza3RvcCBJY29ucyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvV29ybGQvU2hlbGxFeHRlbnNpb25zL2Rlc2t0b3AtaWNvbnMiLAogICJ1dWlkIjogImRlc2t0b3AtaWNvbnNAY3Nvcmlhbm8iLAogICJ2ZXJzaW9uIjogMTkKfQ=="}}}
 , {"uuid": "fullbattery@categulario.tk", "name": "Full Battery indicator", "pname": "full-battery-indicator", "description": "Notifies when battery is full", "link": "https://extensions.gnome.org/extension/1466/full-battery-indicator/", "shell_version_map": {"38": {"version": "4", "sha256": "167d84phf68fi5bg9fvm4l7l8jq7k86a80adm0l56ngqygxqsyy8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vdGlmaWVzIHdoZW4gYmF0dGVyeSBpcyBmdWxsIiwKICAibmFtZSI6ICJGdWxsIEJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjMyIiwKICAgICIzLjI4LjMiLAogICAgIjMuMzQuNCIsCiAgICAiMy4zNi4wIiwKICAgICIzLjM4IiwKICAgICI0MC4zIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY2F0ZWd1bGFyaW8vZnVsbC1iYXR0ZXJ5LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZnVsbGJhdHRlcnlAY2F0ZWd1bGFyaW8udGsiLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "167d84phf68fi5bg9fvm4l7l8jq7k86a80adm0l56ngqygxqsyy8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vdGlmaWVzIHdoZW4gYmF0dGVyeSBpcyBmdWxsIiwKICAibmFtZSI6ICJGdWxsIEJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjMyIiwKICAgICIzLjI4LjMiLAogICAgIjMuMzQuNCIsCiAgICAiMy4zNi4wIiwKICAgICIzLjM4IiwKICAgICI0MC4zIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY2F0ZWd1bGFyaW8vZnVsbC1iYXR0ZXJ5LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZnVsbGJhdHRlcnlAY2F0ZWd1bGFyaW8udGsiLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "rdesktop-menu@bastien.git.geekwu.org", "name": "Rdesktop launcher", "pname": "rdesktop-launcher", "description": "Add a servers status menu for quickly running rdesktop", "link": "https://extensions.gnome.org/extension/1467/rdesktop-launcher/", "shell_version_map": {"38": {"version": "13", "sha256": "10mmyanmwhk3l5q0db1lrd5qwl1yj4i6n66syi3ii8dvlwx1xg55", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHNlcnZlcnMgc3RhdHVzIG1lbnUgZm9yIHF1aWNrbHkgcnVubmluZyByZGVza3RvcCIsCiAgImV4dGVuc2lvbi1pZCI6ICJyZGVza3RvcC1tZW51IiwKICAibmFtZSI6ICJSZGVza3RvcCBsYXVuY2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdC5nZWVrd3Uub3JnL2Jhc3RpZW4vcmRlc2t0b3AtbWVudSIsCiAgInV1aWQiOiAicmRlc2t0b3AtbWVudUBiYXN0aWVuLmdpdC5nZWVrd3Uub3JnIiwKICAidmVyc2lvbiI6IDEzCn0="}, "40": {"version": "13", "sha256": "10mmyanmwhk3l5q0db1lrd5qwl1yj4i6n66syi3ii8dvlwx1xg55", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHNlcnZlcnMgc3RhdHVzIG1lbnUgZm9yIHF1aWNrbHkgcnVubmluZyByZGVza3RvcCIsCiAgImV4dGVuc2lvbi1pZCI6ICJyZGVza3RvcC1tZW51IiwKICAibmFtZSI6ICJSZGVza3RvcCBsYXVuY2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdC5nZWVrd3Uub3JnL2Jhc3RpZW4vcmRlc2t0b3AtbWVudSIsCiAgInV1aWQiOiAicmRlc2t0b3AtbWVudUBiYXN0aWVuLmdpdC5nZWVrd3Uub3JnIiwKICAidmVyc2lvbiI6IDEzCn0="}, "41": {"version": "13", "sha256": "10mmyanmwhk3l5q0db1lrd5qwl1yj4i6n66syi3ii8dvlwx1xg55", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHNlcnZlcnMgc3RhdHVzIG1lbnUgZm9yIHF1aWNrbHkgcnVubmluZyByZGVza3RvcCIsCiAgImV4dGVuc2lvbi1pZCI6ICJyZGVza3RvcC1tZW51IiwKICAibmFtZSI6ICJSZGVza3RvcCBsYXVuY2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdC5nZWVrd3Uub3JnL2Jhc3RpZW4vcmRlc2t0b3AtbWVudSIsCiAgInV1aWQiOiAicmRlc2t0b3AtbWVudUBiYXN0aWVuLmdpdC5nZWVrd3Uub3JnIiwKICAidmVyc2lvbiI6IDEzCn0="}}}
@@ -198,13 +198,13 @@
 , {"uuid": "batime@martin.zurowietz.de", "name": "Battery Time", "pname": "battery-time", "description": "Show the remaining time until fully charged/discharged instead of the battery charge in percent in the panel.", "link": "https://extensions.gnome.org/extension/1475/battery-time/", "shell_version_map": {"40": {"version": "10", "sha256": "0kfajnbkg7xgqsqhkxl111j21k3jr35yxbylip6iryyxjmsxx5bl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIHJlbWFpbmluZyB0aW1lIHVudGlsIGZ1bGx5IGNoYXJnZWQvZGlzY2hhcmdlZCBpbnN0ZWFkIG9mIHRoZSBiYXR0ZXJ5IGNoYXJnZSBpbiBwZXJjZW50IGluIHRoZSBwYW5lbC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiYXRpbWUiLAogICJuYW1lIjogIkJhdHRlcnkgVGltZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iYXRpbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL216dXIvZ25vbWUtc2hlbGwtYmF0aW1lIiwKICAidXVpZCI6ICJiYXRpbWVAbWFydGluLnp1cm93aWV0ei5kZSIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "0kfajnbkg7xgqsqhkxl111j21k3jr35yxbylip6iryyxjmsxx5bl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIHJlbWFpbmluZyB0aW1lIHVudGlsIGZ1bGx5IGNoYXJnZWQvZGlzY2hhcmdlZCBpbnN0ZWFkIG9mIHRoZSBiYXR0ZXJ5IGNoYXJnZSBpbiBwZXJjZW50IGluIHRoZSBwYW5lbC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiYXRpbWUiLAogICJuYW1lIjogIkJhdHRlcnkgVGltZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iYXRpbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL216dXIvZ25vbWUtc2hlbGwtYmF0aW1lIiwKICAidXVpZCI6ICJiYXRpbWVAbWFydGluLnp1cm93aWV0ei5kZSIsCiAgInZlcnNpb24iOiAxMAp9"}}}
 , {"uuid": "unlockDialogBackground@sun.wxg@gmail.com", "name": "Lock screen background", "pname": "unlock-dialog-background", "description": "Change lock screen background.\nIf you use Ubuntu, install package gir1.2-clutter-1.0 first.", "link": "https://extensions.gnome.org/extension/1476/unlock-dialog-background/", "shell_version_map": {"38": {"version": "18", "sha256": "1j9m4qkd0i6l4nxwpxjwvp3nh0zifpzvp0xwp4cqqlr2flb6lwps", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSBsb2NrIHNjcmVlbiBiYWNrZ3JvdW5kLlxuSWYgeW91IHVzZSBVYnVudHUsIGluc3RhbGwgcGFja2FnZSBnaXIxLjItY2x1dHRlci0xLjAgZmlyc3QuIiwKICAibmFtZSI6ICJMb2NrIHNjcmVlbiBiYWNrZ3JvdW5kIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiMy4zNi40IiwKICAgICIzLjM2LjUiLAogICAgIjMuMzYuNiIsCiAgICAiMy4zNi43IiwKICAgICIzLjM2LjgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXVubG9ja0RpYWxvZ0JhY2tncm91bmQiLAogICJ1dWlkIjogInVubG9ja0RpYWxvZ0JhY2tncm91bmRAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTgKfQ=="}, "40": {"version": "20", "sha256": "1gin7mpafmx8h177alhhlrjqpq5354napc0jqaj4l4f7ynzn4843", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSBsb2NrIHNjcmVlbiBiYWNrZ3JvdW5kLlxuSWYgeW91IHVzZSBVYnVudHUsIGluc3RhbGwgcGFja2FnZSBnaXIxLjItY2x1dHRlci0xLjAgZmlyc3QuIiwKICAibmFtZSI6ICJMb2NrIHNjcmVlbiBiYWNrZ3JvdW5kIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXVubG9ja0RpYWxvZ0JhY2tncm91bmQiLAogICJ1dWlkIjogInVubG9ja0RpYWxvZ0JhY2tncm91bmRAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjAKfQ=="}, "41": {"version": "23", "sha256": "0j4mhrdmkwwsf52lcqbl0ln7rl3s64nb24862gahs26y4kpbaiv3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSBsb2NrIHNjcmVlbiBiYWNrZ3JvdW5kLlxuSWYgeW91IHVzZSBVYnVudHUsIGluc3RhbGwgcGFja2FnZSBnaXIxLjItY2x1dHRlci0xLjAgZmlyc3QuIiwKICAibmFtZSI6ICJMb2NrIHNjcmVlbiBiYWNrZ3JvdW5kIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXVubG9ja0RpYWxvZ0JhY2tncm91bmQiLAogICJ1dWlkIjogInVubG9ja0RpYWxvZ0JhY2tncm91bmRAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjMKfQ=="}}}
 , {"uuid": "wsmatrix@martin.zurowietz.de", "name": "Workspace Matrix", "pname": "workspace-matrix", "description": "Arrange workspaces in a two dimensional grid with workspace thumbnails.", "link": "https://extensions.gnome.org/extension/1485/workspace-matrix/", "shell_version_map": {"38": {"version": "27", "sha256": "0b76x0li5a8x42l67ykbw34k4cfmbxqvz36zighhfw4qmxsc36cr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd29ya3NwYWNlcyBpbiBhIHR3byBkaW1lbnNpb25hbCBncmlkIHdpdGggd29ya3NwYWNlIHRodW1ibmFpbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid3NtYXRyaXgiLAogICJrZXliaW5kaW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgta2V5YmluZGluZ3MiLAogICJuYW1lIjogIldvcmtzcGFjZSBNYXRyaXgiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgtc2V0dGluZ3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tenVyL2dub21lLXNoZWxsLXdzbWF0cml4IiwKICAidXVpZCI6ICJ3c21hdHJpeEBtYXJ0aW4uenVyb3dpZXR6LmRlIiwKICAidmVyc2lvbiI6IDI3Cn0="}, "40": {"version": "33", "sha256": "1pfq2sgz3h97xyqnxjzzjij3abd6132xjibhl2y3423ylwqg5xf8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd29ya3NwYWNlcyBpbiBhIHR3byBkaW1lbnNpb25hbCBncmlkIHdpdGggd29ya3NwYWNlIHRodW1ibmFpbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid3NtYXRyaXgiLAogICJrZXliaW5kaW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgta2V5YmluZGluZ3MiLAogICJuYW1lIjogIldvcmtzcGFjZSBNYXRyaXgiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgtc2V0dGluZ3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL216dXIvZ25vbWUtc2hlbGwtd3NtYXRyaXgiLAogICJ1dWlkIjogIndzbWF0cml4QG1hcnRpbi56dXJvd2lldHouZGUiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "41": {"version": "33", "sha256": "1pfq2sgz3h97xyqnxjzzjij3abd6132xjibhl2y3423ylwqg5xf8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFycmFuZ2Ugd29ya3NwYWNlcyBpbiBhIHR3byBkaW1lbnNpb25hbCBncmlkIHdpdGggd29ya3NwYWNlIHRodW1ibmFpbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid3NtYXRyaXgiLAogICJrZXliaW5kaW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgta2V5YmluZGluZ3MiLAogICJuYW1lIjogIldvcmtzcGFjZSBNYXRyaXgiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud3NtYXRyaXgtc2V0dGluZ3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL216dXIvZ25vbWUtc2hlbGwtd3NtYXRyaXgiLAogICJ1dWlkIjogIndzbWF0cml4QG1hcnRpbi56dXJvd2lldHouZGUiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}}}
-, {"uuid": "extensions-sync@elhan.io", "name": "Extensions Sync", "pname": "extensions-sync", "description": "Sync all extensions and their configurations across all gnome instances", "link": "https://extensions.gnome.org/extension/1486/extensions-sync/", "shell_version_map": {"38": {"version": "12", "sha256": "0yb0brjnqvvlqpdyh841qwh3q2d02vi1an0s93gb2b6kagy1g7zd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmMgYWxsIGV4dGVuc2lvbnMgYW5kIHRoZWlyIGNvbmZpZ3VyYXRpb25zIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFuY2VzIiwKICAibmFtZSI6ICJFeHRlbnNpb25zIFN5bmMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9ucy1zeW5jIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb2FlL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtc3luYyIsCiAgInV1aWQiOiAiZXh0ZW5zaW9ucy1zeW5jQGVsaGFuLmlvIiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "16", "sha256": "1bl8la3yg94mmzqh28n47kznaaivfbnxm3dwb71ddsr6gaf3n5p2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmMgYWxsIGV4dGVuc2lvbnMgYW5kIHRoZWlyIGNvbmZpZ3VyYXRpb25zIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFuY2VzIiwKICAibmFtZSI6ICJFeHRlbnNpb25zIFN5bmMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9ucy1zeW5jIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9vYWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy1zeW5jIiwKICAidXVpZCI6ICJleHRlbnNpb25zLXN5bmNAZWxoYW4uaW8iLAogICJ2ZXJzaW9uIjogMTYKfQ=="}, "41": {"version": "16", "sha256": "1bl8la3yg94mmzqh28n47kznaaivfbnxm3dwb71ddsr6gaf3n5p2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmMgYWxsIGV4dGVuc2lvbnMgYW5kIHRoZWlyIGNvbmZpZ3VyYXRpb25zIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFuY2VzIiwKICAibmFtZSI6ICJFeHRlbnNpb25zIFN5bmMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9ucy1zeW5jIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9vYWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy1zeW5jIiwKICAidXVpZCI6ICJleHRlbnNpb25zLXN5bmNAZWxoYW4uaW8iLAogICJ2ZXJzaW9uIjogMTYKfQ=="}}}
+, {"uuid": "extensions-sync@elhan.io", "name": "Extensions Sync", "pname": "extensions-sync", "description": "Sync all extensions and their configurations across all gnome instances", "link": "https://extensions.gnome.org/extension/1486/extensions-sync/", "shell_version_map": {"38": {"version": "12", "sha256": "0yb0brjnqvvlqpdyh841qwh3q2d02vi1an0s93gb2b6kagy1g7zd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmMgYWxsIGV4dGVuc2lvbnMgYW5kIHRoZWlyIGNvbmZpZ3VyYXRpb25zIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFuY2VzIiwKICAibmFtZSI6ICJFeHRlbnNpb25zIFN5bmMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9ucy1zeW5jIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb2FlL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtc3luYyIsCiAgInV1aWQiOiAiZXh0ZW5zaW9ucy1zeW5jQGVsaGFuLmlvIiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "17", "sha256": "0ssnci70lrvn1f909ldwffm3ssrc45pscdi17ncj8fjjcb9wwf09", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmMgYWxsIGV4dGVuc2lvbnMgYW5kIHRoZWlyIGNvbmZpZ3VyYXRpb25zIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFuY2VzIiwKICAibmFtZSI6ICJFeHRlbnNpb25zIFN5bmMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9ucy1zeW5jIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb2FlL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtc3luYyIsCiAgInV1aWQiOiAiZXh0ZW5zaW9ucy1zeW5jQGVsaGFuLmlvIiwKICAidmVyc2lvbiI6IDE3Cn0="}, "41": {"version": "17", "sha256": "0ssnci70lrvn1f909ldwffm3ssrc45pscdi17ncj8fjjcb9wwf09", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmMgYWxsIGV4dGVuc2lvbnMgYW5kIHRoZWlyIGNvbmZpZ3VyYXRpb25zIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFuY2VzIiwKICAibmFtZSI6ICJFeHRlbnNpb25zIFN5bmMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9ucy1zeW5jIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb2FlL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtc3luYyIsCiAgInV1aWQiOiAiZXh0ZW5zaW9ucy1zeW5jQGVsaGFuLmlvIiwKICAidmVyc2lvbiI6IDE3Cn0="}, "42": {"version": "17", "sha256": "0ssnci70lrvn1f909ldwffm3ssrc45pscdi17ncj8fjjcb9wwf09", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN5bmMgYWxsIGV4dGVuc2lvbnMgYW5kIHRoZWlyIGNvbmZpZ3VyYXRpb25zIGFjcm9zcyBhbGwgZ25vbWUgaW5zdGFuY2VzIiwKICAibmFtZSI6ICJFeHRlbnNpb25zIFN5bmMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9ucy1zeW5jIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vb2FlL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtc3luYyIsCiAgInV1aWQiOiAiZXh0ZW5zaW9ucy1zeW5jQGVsaGFuLmlvIiwKICAidmVyc2lvbiI6IDE3Cn0="}}}
 , {"uuid": "containers@royg", "name": "Containers", "pname": "containers", "description": "Manage podman containers through a gnome-shell menu", "link": "https://extensions.gnome.org/extension/1500/containers/", "shell_version_map": {"40": {"version": "19", "sha256": "16z5978jwpf6cbasnfdi5w8s9dx929r8yh7a4dsrd5isnrnyi22x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBwb2RtYW4gY29udGFpbmVycyB0aHJvdWdoIGEgZ25vbWUtc2hlbGwgbWVudSIsCiAgIm5hbWUiOiAiQ29udGFpbmVycyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmdvbGFuZ2gvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNvbnRhaW5lcnMiLAogICJ1dWlkIjogImNvbnRhaW5lcnNAcm95ZyIsCiAgInZlcnNpb24iOiAxOQp9"}, "41": {"version": "19", "sha256": "16z5978jwpf6cbasnfdi5w8s9dx929r8yh7a4dsrd5isnrnyi22x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBwb2RtYW4gY29udGFpbmVycyB0aHJvdWdoIGEgZ25vbWUtc2hlbGwgbWVudSIsCiAgIm5hbWUiOiAiQ29udGFpbmVycyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmdvbGFuZ2gvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNvbnRhaW5lcnMiLAogICJ1dWlkIjogImNvbnRhaW5lcnNAcm95ZyIsCiAgInZlcnNpb24iOiAxOQp9"}}}
 , {"uuid": "fullscreenworkspace@satran.in", "name": "Fullscreen On New Workspace", "pname": "fullscreen-on-new-workspace", "description": "Move window to a new workspace when you maximize or make it fullscreen.", "link": "https://extensions.gnome.org/extension/1502/fullscreen-on-new-workspace/", "shell_version_map": {"38": {"version": "6", "sha256": "1lyfn0p9djdkmhaxj9f95jf6iknb688d81ls3ycf667i4jk5qnrq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgd2luZG93IHRvIGEgbmV3IHdvcmtzcGFjZSB3aGVuIHlvdSBtYXhpbWl6ZSBvciBtYWtlIGl0IGZ1bGxzY3JlZW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZnVsbHNjcmVlbndvcmtzcGFjZSIsCiAgIm5hbWUiOiAiRnVsbHNjcmVlbiBPbiBOZXcgV29ya3NwYWNlIiwKICAic2NoZW1hLWlkIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZ1bGxzY3JlZW53b3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NhdHJhbi9mdWxsc2NyZWVud29ya3NwYWNlLXNhdHJhbi5pbiIsCiAgInV1aWQiOiAiZnVsbHNjcmVlbndvcmtzcGFjZUBzYXRyYW4uaW4iLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "1lyfn0p9djdkmhaxj9f95jf6iknb688d81ls3ycf667i4jk5qnrq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgd2luZG93IHRvIGEgbmV3IHdvcmtzcGFjZSB3aGVuIHlvdSBtYXhpbWl6ZSBvciBtYWtlIGl0IGZ1bGxzY3JlZW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZnVsbHNjcmVlbndvcmtzcGFjZSIsCiAgIm5hbWUiOiAiRnVsbHNjcmVlbiBPbiBOZXcgV29ya3NwYWNlIiwKICAic2NoZW1hLWlkIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZ1bGxzY3JlZW53b3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NhdHJhbi9mdWxsc2NyZWVud29ya3NwYWNlLXNhdHJhbi5pbiIsCiAgInV1aWQiOiAiZnVsbHNjcmVlbndvcmtzcGFjZUBzYXRyYW4uaW4iLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "1lyfn0p9djdkmhaxj9f95jf6iknb688d81ls3ycf667i4jk5qnrq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgd2luZG93IHRvIGEgbmV3IHdvcmtzcGFjZSB3aGVuIHlvdSBtYXhpbWl6ZSBvciBtYWtlIGl0IGZ1bGxzY3JlZW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZnVsbHNjcmVlbndvcmtzcGFjZSIsCiAgIm5hbWUiOiAiRnVsbHNjcmVlbiBPbiBOZXcgV29ya3NwYWNlIiwKICAic2NoZW1hLWlkIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZ1bGxzY3JlZW53b3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NhdHJhbi9mdWxsc2NyZWVud29ya3NwYWNlLXNhdHJhbi5pbiIsCiAgInV1aWQiOiAiZnVsbHNjcmVlbndvcmtzcGFjZUBzYXRyYW4uaW4iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "tray-icons@zhangkaizhao.com", "name": "Tray Icons", "pname": "tray-icons", "description": "Tray icons", "link": "https://extensions.gnome.org/extension/1503/tray-icons/", "shell_version_map": {"38": {"version": "6", "sha256": "0q5kk8yp7cg61d4hcimrxrghsq7v8qaxjbmzvkj5apbg4cmz3s7v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYXkgaWNvbnMiLAogICJuYW1lIjogIlRyYXkgSWNvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIuMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3poYW5na2Fpemhhby9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJheS1pY29ucyIsCiAgInV1aWQiOiAidHJheS1pY29uc0B6aGFuZ2thaXpoYW8uY29tIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "6", "sha256": "0q5kk8yp7cg61d4hcimrxrghsq7v8qaxjbmzvkj5apbg4cmz3s7v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYXkgaWNvbnMiLAogICJuYW1lIjogIlRyYXkgSWNvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIuMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3poYW5na2Fpemhhby9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJheS1pY29ucyIsCiAgInV1aWQiOiAidHJheS1pY29uc0B6aGFuZ2thaXpoYW8uY29tIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"uuid": "new-mail-indicator@fthx", "name": "New Mail Indicator", "pname": "new-mail-indicator", "description": "An icon beside the date in the topbar to show if there are unread emails when running your default email client.\n\n It checks the notifications in the message tray related to a new mail, no extra configuration needed, very light extension. Click on the icon does toggle your email client window.*** Do not disable the notifications of your default email client! *** It is not a standalone mail checker, you need your email client to be running. *** Please check that the xdg-utils package is installed.\n\n Email clients verified at the moment are: Thunderbird, Evolution, Geary, Mailspring. Please ask to add the client, including special packaging (snap/flatpak), that you need. If you report an error, please provide at least the distribution and the email client you use through the GitHub link.\n\n For persistent notifications only, see: https://extensions.gnome.org/extension/3951/persistent-email-notifications .", "link": "https://extensions.gnome.org/extension/1505/new-mail-indicator/", "shell_version_map": {"38": {"version": "33", "sha256": "1azppcny8f70ish2p1gzmyf0dy4ycj5x8ccwb1c73m452ac561vm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gYmVzaWRlIHRoZSBkYXRlIGluIHRoZSB0b3BiYXIgdG8gc2hvdyBpZiB0aGVyZSBhcmUgdW5yZWFkIGVtYWlscyB3aGVuIHJ1bm5pbmcgeW91ciBkZWZhdWx0IGVtYWlsIGNsaWVudC5cblxuIEl0IGNoZWNrcyB0aGUgbm90aWZpY2F0aW9ucyBpbiB0aGUgbWVzc2FnZSB0cmF5IHJlbGF0ZWQgdG8gYSBuZXcgbWFpbCwgbm8gZXh0cmEgY29uZmlndXJhdGlvbiBuZWVkZWQsIHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBDbGljayBvbiB0aGUgaWNvbiBkb2VzIHRvZ2dsZSB5b3VyIGVtYWlsIGNsaWVudCB3aW5kb3cuKioqIERvIG5vdCBkaXNhYmxlIHRoZSBub3RpZmljYXRpb25zIG9mIHlvdXIgZGVmYXVsdCBlbWFpbCBjbGllbnQhICoqKiBJdCBpcyBub3QgYSBzdGFuZGFsb25lIG1haWwgY2hlY2tlciwgeW91IG5lZWQgeW91ciBlbWFpbCBjbGllbnQgdG8gYmUgcnVubmluZy4gKioqIFBsZWFzZSBjaGVjayB0aGF0IHRoZSB4ZGctdXRpbHMgcGFja2FnZSBpcyBpbnN0YWxsZWQuXG5cbiBFbWFpbCBjbGllbnRzIHZlcmlmaWVkIGF0IHRoZSBtb21lbnQgYXJlOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZy4gUGxlYXNlIGFzayB0byBhZGQgdGhlIGNsaWVudCwgaW5jbHVkaW5nIHNwZWNpYWwgcGFja2FnaW5nIChzbmFwL2ZsYXRwYWspLCB0aGF0IHlvdSBuZWVkLiBJZiB5b3UgcmVwb3J0IGFuIGVycm9yLCBwbGVhc2UgcHJvdmlkZSBhdCBsZWFzdCB0aGUgZGlzdHJpYnV0aW9uIGFuZCB0aGUgZW1haWwgY2xpZW50IHlvdSB1c2UgdGhyb3VnaCB0aGUgR2l0SHViIGxpbmsuXG5cbiBGb3IgcGVyc2lzdGVudCBub3RpZmljYXRpb25zIG9ubHksIHNlZTogaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzk1MS9wZXJzaXN0ZW50LWVtYWlsLW5vdGlmaWNhdGlvbnMgLiIsCiAgIm5hbWUiOiAiTmV3IE1haWwgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L25ldy1tYWlsLWluZGljYXRvciIsCiAgInV1aWQiOiAibmV3LW1haWwtaW5kaWNhdG9yQGZ0aHgiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "40": {"version": "33", "sha256": "1azppcny8f70ish2p1gzmyf0dy4ycj5x8ccwb1c73m452ac561vm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gYmVzaWRlIHRoZSBkYXRlIGluIHRoZSB0b3BiYXIgdG8gc2hvdyBpZiB0aGVyZSBhcmUgdW5yZWFkIGVtYWlscyB3aGVuIHJ1bm5pbmcgeW91ciBkZWZhdWx0IGVtYWlsIGNsaWVudC5cblxuIEl0IGNoZWNrcyB0aGUgbm90aWZpY2F0aW9ucyBpbiB0aGUgbWVzc2FnZSB0cmF5IHJlbGF0ZWQgdG8gYSBuZXcgbWFpbCwgbm8gZXh0cmEgY29uZmlndXJhdGlvbiBuZWVkZWQsIHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBDbGljayBvbiB0aGUgaWNvbiBkb2VzIHRvZ2dsZSB5b3VyIGVtYWlsIGNsaWVudCB3aW5kb3cuKioqIERvIG5vdCBkaXNhYmxlIHRoZSBub3RpZmljYXRpb25zIG9mIHlvdXIgZGVmYXVsdCBlbWFpbCBjbGllbnQhICoqKiBJdCBpcyBub3QgYSBzdGFuZGFsb25lIG1haWwgY2hlY2tlciwgeW91IG5lZWQgeW91ciBlbWFpbCBjbGllbnQgdG8gYmUgcnVubmluZy4gKioqIFBsZWFzZSBjaGVjayB0aGF0IHRoZSB4ZGctdXRpbHMgcGFja2FnZSBpcyBpbnN0YWxsZWQuXG5cbiBFbWFpbCBjbGllbnRzIHZlcmlmaWVkIGF0IHRoZSBtb21lbnQgYXJlOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZy4gUGxlYXNlIGFzayB0byBhZGQgdGhlIGNsaWVudCwgaW5jbHVkaW5nIHNwZWNpYWwgcGFja2FnaW5nIChzbmFwL2ZsYXRwYWspLCB0aGF0IHlvdSBuZWVkLiBJZiB5b3UgcmVwb3J0IGFuIGVycm9yLCBwbGVhc2UgcHJvdmlkZSBhdCBsZWFzdCB0aGUgZGlzdHJpYnV0aW9uIGFuZCB0aGUgZW1haWwgY2xpZW50IHlvdSB1c2UgdGhyb3VnaCB0aGUgR2l0SHViIGxpbmsuXG5cbiBGb3IgcGVyc2lzdGVudCBub3RpZmljYXRpb25zIG9ubHksIHNlZTogaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzk1MS9wZXJzaXN0ZW50LWVtYWlsLW5vdGlmaWNhdGlvbnMgLiIsCiAgIm5hbWUiOiAiTmV3IE1haWwgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L25ldy1tYWlsLWluZGljYXRvciIsCiAgInV1aWQiOiAibmV3LW1haWwtaW5kaWNhdG9yQGZ0aHgiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}, "41": {"version": "33", "sha256": "1azppcny8f70ish2p1gzmyf0dy4ycj5x8ccwb1c73m452ac561vm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGljb24gYmVzaWRlIHRoZSBkYXRlIGluIHRoZSB0b3BiYXIgdG8gc2hvdyBpZiB0aGVyZSBhcmUgdW5yZWFkIGVtYWlscyB3aGVuIHJ1bm5pbmcgeW91ciBkZWZhdWx0IGVtYWlsIGNsaWVudC5cblxuIEl0IGNoZWNrcyB0aGUgbm90aWZpY2F0aW9ucyBpbiB0aGUgbWVzc2FnZSB0cmF5IHJlbGF0ZWQgdG8gYSBuZXcgbWFpbCwgbm8gZXh0cmEgY29uZmlndXJhdGlvbiBuZWVkZWQsIHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBDbGljayBvbiB0aGUgaWNvbiBkb2VzIHRvZ2dsZSB5b3VyIGVtYWlsIGNsaWVudCB3aW5kb3cuKioqIERvIG5vdCBkaXNhYmxlIHRoZSBub3RpZmljYXRpb25zIG9mIHlvdXIgZGVmYXVsdCBlbWFpbCBjbGllbnQhICoqKiBJdCBpcyBub3QgYSBzdGFuZGFsb25lIG1haWwgY2hlY2tlciwgeW91IG5lZWQgeW91ciBlbWFpbCBjbGllbnQgdG8gYmUgcnVubmluZy4gKioqIFBsZWFzZSBjaGVjayB0aGF0IHRoZSB4ZGctdXRpbHMgcGFja2FnZSBpcyBpbnN0YWxsZWQuXG5cbiBFbWFpbCBjbGllbnRzIHZlcmlmaWVkIGF0IHRoZSBtb21lbnQgYXJlOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZy4gUGxlYXNlIGFzayB0byBhZGQgdGhlIGNsaWVudCwgaW5jbHVkaW5nIHNwZWNpYWwgcGFja2FnaW5nIChzbmFwL2ZsYXRwYWspLCB0aGF0IHlvdSBuZWVkLiBJZiB5b3UgcmVwb3J0IGFuIGVycm9yLCBwbGVhc2UgcHJvdmlkZSBhdCBsZWFzdCB0aGUgZGlzdHJpYnV0aW9uIGFuZCB0aGUgZW1haWwgY2xpZW50IHlvdSB1c2UgdGhyb3VnaCB0aGUgR2l0SHViIGxpbmsuXG5cbiBGb3IgcGVyc2lzdGVudCBub3RpZmljYXRpb25zIG9ubHksIHNlZTogaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzk1MS9wZXJzaXN0ZW50LWVtYWlsLW5vdGlmaWNhdGlvbnMgLiIsCiAgIm5hbWUiOiAiTmV3IE1haWwgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L25ldy1tYWlsLWluZGljYXRvciIsCiAgInV1aWQiOiAibmV3LW1haWwtaW5kaWNhdG9yQGZ0aHgiLAogICJ2ZXJzaW9uIjogMzMKfQ=="}}}
 , {"uuid": "drop-down-terminal-x@bigbn.pro", "name": "Drop Down Terminal X", "pname": "drop-down-terminal-x", "description": "THIS EXTENSION IS NO LONGER SUPPORTED.\n\nIf you are looking for an alternative please look at that https://extensions.gnome.org/extension/3780/ddterm \nawesome extension.\n\nA GNOME Shell drop down terminal with extra feautures.\n \nSpecial thanks to:\n- Osman Alperen Elhan (https://github.com/oae)\n- Balder Claassen (https://github.com/balderclaassen)\n- Adrien Pyke (https://github.com/kufii)\n- Alan J Carvajal (https://github.com/ajcarvajal)\n- Massimo Mund (https://github.com/masmu)\n- Jakub Żywiec (https://github.com/jakubzet)\n- Mattias Eriksson (https://github.com/snaggen)\n- Henry78 (https://github.com/Henry78)\n- Maxim Toropov (https://github.com/MaxMaxoff)\nfor active contribution.\n\nBased on original extension \"gs-extensions-drop-down-terminal\" from Stéphane Démurget (https://github.com/zzrough)", "link": "https://extensions.gnome.org/extension/1509/drop-down-terminal-x/", "shell_version_map": {"38": {"version": "17", "sha256": "1k90g6bndw1xr56k7lwlxyw89aqbl47spkfmj1lq224z83w6hzdw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRISVMgRVhURU5TSU9OIElTIE5PIExPTkdFUiBTVVBQT1JURUQuXG5cbklmIHlvdSBhcmUgbG9va2luZyBmb3IgYW4gYWx0ZXJuYXRpdmUgcGxlYXNlIGxvb2sgYXQgdGhhdCBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8zNzgwL2RkdGVybSBcbmF3ZXNvbWUgZXh0ZW5zaW9uLlxuXG5BIEdOT01FIFNoZWxsIGRyb3AgZG93biB0ZXJtaW5hbCB3aXRoIGV4dHJhIGZlYXV0dXJlcy5cbiBcblNwZWNpYWwgdGhhbmtzIHRvOlxuLSBPc21hbiBBbHBlcmVuIEVsaGFuIChodHRwczovL2dpdGh1Yi5jb20vb2FlKVxuLSBCYWxkZXIgQ2xhYXNzZW4gKGh0dHBzOi8vZ2l0aHViLmNvbS9iYWxkZXJjbGFhc3Nlbilcbi0gQWRyaWVuIFB5a2UgKGh0dHBzOi8vZ2l0aHViLmNvbS9rdWZpaSlcbi0gQWxhbiBKIENhcnZhamFsIChodHRwczovL2dpdGh1Yi5jb20vYWpjYXJ2YWphbClcbi0gTWFzc2ltbyBNdW5kIChodHRwczovL2dpdGh1Yi5jb20vbWFzbXUpXG4tIEpha3ViIFx1MDE3Ynl3aWVjIChodHRwczovL2dpdGh1Yi5jb20vamFrdWJ6ZXQpXG4tIE1hdHRpYXMgRXJpa3Nzb24gKGh0dHBzOi8vZ2l0aHViLmNvbS9zbmFnZ2VuKVxuLSBIZW5yeTc4IChodHRwczovL2dpdGh1Yi5jb20vSGVucnk3OClcbi0gTWF4aW0gVG9yb3BvdiAoaHR0cHM6Ly9naXRodWIuY29tL01heE1heG9mZilcbmZvciBhY3RpdmUgY29udHJpYnV0aW9uLlxuXG5CYXNlZCBvbiBvcmlnaW5hbCBleHRlbnNpb24gXCJncy1leHRlbnNpb25zLWRyb3AtZG93bi10ZXJtaW5hbFwiIGZyb20gU3RcdTAwZTlwaGFuZSBEXHUwMGU5bXVyZ2V0IChodHRwczovL2dpdGh1Yi5jb20venpyb3VnaCkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkcm9wLWRvd24tdGVybWluYWwteCIsCiAgImlkIjogImRyb3AtZG93bi10ZXJtaW5hbC14IiwKICAibmFtZSI6ICJEcm9wIERvd24gVGVybWluYWwgWCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOC4wIiwKICAgICIzLjI4LjEiLAogICAgIjMuMjguMiIsCiAgICAiMy4zMC4wIiwKICAgICIzLjMwLjEiLAogICAgIjMuMzAuMiIsCiAgICAiMy4zMi4wIiwKICAgICIzLjMyLjEiLAogICAgIjMuMzIuMiIsCiAgICAiMy4zNC4wIiwKICAgICIzLjM0LjQiLAogICAgIjMuMzYuMCIsCiAgICAiMy4zNi4xIiwKICAgICIzLjM2LjIiLAogICAgIjMuMzguMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JpZ2JuL2dzLWV4dGVuc2lvbnMtZHJvcC1kb3duLXRlcm1pbmFsIiwKICAidXVpZCI6ICJkcm9wLWRvd24tdGVybWluYWwteEBiaWdibi5wcm8iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
-, {"uuid": "Rounded_Corners@lennart-k", "name": "Rounded Corners", "pname": "rounded-corners", "description": "Creates rounded corners for every monitor", "link": "https://extensions.gnome.org/extension/1514/rounded-corners/", "shell_version_map": {"38": {"version": "5", "sha256": "1lli47bjlrr5g3548jjvvvbbml6g0sg5mm6py9j7kjcgg84sscnc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGVubmFydC1rL2dub21lLXJvdW5kZWQtY29ybmVycyIsCiAgInV1aWQiOiAiUm91bmRlZF9Db3JuZXJzQGxlbm5hcnQtayIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "7", "sha256": "11accb4w8cx3gfrrs2x15h53arjkpqk566cp24c3k32alvqx1jgs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xlbm5hcnQtay9nbm9tZS1yb3VuZGVkLWNvcm5lcnMiLAogICJ1dWlkIjogIlJvdW5kZWRfQ29ybmVyc0BsZW5uYXJ0LWsiLAogICJ2ZXJzaW9uIjogNwp9"}, "41": {"version": "7", "sha256": "11accb4w8cx3gfrrs2x15h53arjkpqk566cp24c3k32alvqx1jgs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xlbm5hcnQtay9nbm9tZS1yb3VuZGVkLWNvcm5lcnMiLAogICJ1dWlkIjogIlJvdW5kZWRfQ29ybmVyc0BsZW5uYXJ0LWsiLAogICJ2ZXJzaW9uIjogNwp9"}}}
+, {"uuid": "Rounded_Corners@lennart-k", "name": "Rounded Corners", "pname": "rounded-corners", "description": "Creates rounded corners for every monitor", "link": "https://extensions.gnome.org/extension/1514/rounded-corners/", "shell_version_map": {"38": {"version": "4", "sha256": "0pvbnv97g2mjbklszxvp6df50iw9kyr1ssfza8ia9779x5zq9bk9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sZW5uYXJ0LWsvZ25vbWUtcm91bmRlZC1jb3JuZXJzIiwKICAidXVpZCI6ICJSb3VuZGVkX0Nvcm5lcnNAbGVubmFydC1rIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "7", "sha256": "11accb4w8cx3gfrrs2x15h53arjkpqk566cp24c3k32alvqx1jgs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xlbm5hcnQtay9nbm9tZS1yb3VuZGVkLWNvcm5lcnMiLAogICJ1dWlkIjogIlJvdW5kZWRfQ29ybmVyc0BsZW5uYXJ0LWsiLAogICJ2ZXJzaW9uIjogNwp9"}, "41": {"version": "7", "sha256": "11accb4w8cx3gfrrs2x15h53arjkpqk566cp24c3k32alvqx1jgs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgcm91bmRlZCBjb3JuZXJzIGZvciBldmVyeSBtb25pdG9yIiwKICAibmFtZSI6ICJSb3VuZGVkIENvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xlbm5hcnQtay9nbm9tZS1yb3VuZGVkLWNvcm5lcnMiLAogICJ1dWlkIjogIlJvdW5kZWRfQ29ybmVyc0BsZW5uYXJ0LWsiLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"uuid": "scrovol@andyholmes.github.io", "name": "Scrovol", "pname": "scrovol", "description": "Change the volume by scrolling anywhere on the System Tray.\n\nWith this extension, you can scroll over Night Light, WiFi, Volume, Battery or any other icon in the system status tray to change the volume, instead of just the Volume icon.", "link": "https://extensions.gnome.org/extension/1519/scrovol/", "shell_version_map": {"40": {"version": "4", "sha256": "1md52ygz481nvhq00bkq2ymby7f647cfvw4wx1wqkwp7b796d59c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgdm9sdW1lIGJ5IHNjcm9sbGluZyBhbnl3aGVyZSBvbiB0aGUgU3lzdGVtIFRyYXkuXG5cbldpdGggdGhpcyBleHRlbnNpb24sIHlvdSBjYW4gc2Nyb2xsIG92ZXIgTmlnaHQgTGlnaHQsIFdpRmksIFZvbHVtZSwgQmF0dGVyeSBvciBhbnkgb3RoZXIgaWNvbiBpbiB0aGUgc3lzdGVtIHN0YXR1cyB0cmF5IHRvIGNoYW5nZSB0aGUgdm9sdW1lLCBpbnN0ZWFkIG9mIGp1c3QgdGhlIFZvbHVtZSBpY29uLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJzY3Jvdm9sIiwKICAibmFtZSI6ICJTY3Jvdm9sIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYW5keWhvbG1lcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tc2Nyb3ZvbC8iLAogICJ1dWlkIjogInNjcm92b2xAYW5keWhvbG1lcy5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "notification-center@Selenium-H", "name": "Notification Center", "pname": "notification-centerselenium-h", "description": "Detach notification center to top panel and customizations.Please reset the extension after updating.\nThe Extension will stop when upgraded to an incompatible version.\nIn that case an Update tab is created to easily reset the extension.\nA Reset button is also always present in Preferences option in the Top Right Application menu of the extension preferences window.", "link": "https://extensions.gnome.org/extension/1526/notification-centerselenium-h/", "shell_version_map": {"38": {"version": "24", "sha256": "1449kl7fss2fyj1ks8ra3qy60jvn5fcl1iyv813s8vdkkp5dv8a2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiRGV0YWNoIG5vdGlmaWNhdGlvbiBjZW50ZXIgdG8gdG9wIHBhbmVsIGFuZCBjdXN0b21pemF0aW9ucy4iLAogICJkZXNjcmlwdGlvbiI6ICJEZXRhY2ggbm90aWZpY2F0aW9uIGNlbnRlciB0byB0b3AgcGFuZWwgYW5kIGN1c3RvbWl6YXRpb25zLlBsZWFzZSByZXNldCB0aGUgZXh0ZW5zaW9uIGFmdGVyIHVwZGF0aW5nLlxuVGhlIEV4dGVuc2lvbiB3aWxsIHN0b3Agd2hlbiB1cGdyYWRlZCB0byBhbiBpbmNvbXBhdGlibGUgdmVyc2lvbi5cbkluIHRoYXQgY2FzZSBhbiBVcGRhdGUgdGFiIGlzIGNyZWF0ZWQgdG8gZWFzaWx5IHJlc2V0IHRoZSBleHRlbnNpb24uXG5BIFJlc2V0IGJ1dHRvbiBpcyBhbHNvIGFsd2F5cyBwcmVzZW50IGluIFByZWZlcmVuY2VzIG9wdGlvbiBpbiB0aGUgVG9wIFJpZ2h0IEFwcGxpY2F0aW9uIG1lbnUgb2YgdGhlIGV4dGVuc2lvbiBwcmVmZXJlbmNlcyB3aW5kb3cuIiwKICAibmFtZSI6ICJOb3RpZmljYXRpb24gQ2VudGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5vdGlmaWNhdGlvbi1jZW50ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInN0YXR1cyI6ICIiLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NlbGVuaXVtLUgvTm90aWZpY2F0aW9uLUNlbnRlciIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uLWNlbnRlckBTZWxlbml1bS1IIiwKICAidmVyc2lvbiI6IDI0Cn0="}, "40": {"version": "24", "sha256": "1449kl7fss2fyj1ks8ra3qy60jvn5fcl1iyv813s8vdkkp5dv8a2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiRGV0YWNoIG5vdGlmaWNhdGlvbiBjZW50ZXIgdG8gdG9wIHBhbmVsIGFuZCBjdXN0b21pemF0aW9ucy4iLAogICJkZXNjcmlwdGlvbiI6ICJEZXRhY2ggbm90aWZpY2F0aW9uIGNlbnRlciB0byB0b3AgcGFuZWwgYW5kIGN1c3RvbWl6YXRpb25zLlBsZWFzZSByZXNldCB0aGUgZXh0ZW5zaW9uIGFmdGVyIHVwZGF0aW5nLlxuVGhlIEV4dGVuc2lvbiB3aWxsIHN0b3Agd2hlbiB1cGdyYWRlZCB0byBhbiBpbmNvbXBhdGlibGUgdmVyc2lvbi5cbkluIHRoYXQgY2FzZSBhbiBVcGRhdGUgdGFiIGlzIGNyZWF0ZWQgdG8gZWFzaWx5IHJlc2V0IHRoZSBleHRlbnNpb24uXG5BIFJlc2V0IGJ1dHRvbiBpcyBhbHNvIGFsd2F5cyBwcmVzZW50IGluIFByZWZlcmVuY2VzIG9wdGlvbiBpbiB0aGUgVG9wIFJpZ2h0IEFwcGxpY2F0aW9uIG1lbnUgb2YgdGhlIGV4dGVuc2lvbiBwcmVmZXJlbmNlcyB3aW5kb3cuIiwKICAibmFtZSI6ICJOb3RpZmljYXRpb24gQ2VudGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5vdGlmaWNhdGlvbi1jZW50ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInN0YXR1cyI6ICIiLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NlbGVuaXVtLUgvTm90aWZpY2F0aW9uLUNlbnRlciIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uLWNlbnRlckBTZWxlbml1bS1IIiwKICAidmVyc2lvbiI6IDI0Cn0="}}}
 , {"uuid": "lockkeys@fawtytoo", "name": "Lock Keys", "pname": "lock-keys", "description": "Numlock and Capslock status on the panel. Icons are auto hidden. Simplified with no menus, notifications or settings.\n\nWayland is only supported for Gnome Shell 3.38.", "link": "https://extensions.gnome.org/extension/1532/lock-keys/", "shell_version_map": {"38": {"version": "13", "sha256": "0a444cxwnbgp45w84lq4x3b81kx0vldiixsc2kh3mijqh3rca9vr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgYW5kIENhcHNsb2NrIHN0YXR1cyBvbiB0aGUgcGFuZWwuIEljb25zIGFyZSBhdXRvIGhpZGRlbi4gU2ltcGxpZmllZCB3aXRoIG5vIG1lbnVzLCBub3RpZmljYXRpb25zIG9yIHNldHRpbmdzLlxuXG5XYXlsYW5kIGlzIG9ubHkgc3VwcG9ydGVkIGZvciBHbm9tZSBTaGVsbCAzLjM4LiIsCiAgIm5hbWUiOiAiTG9jayBLZXlzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJTdGV2ZSBDbGFyaywgS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImxvY2trZXlzQGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDEzCn0="}, "40": {"version": "13", "sha256": "0a444cxwnbgp45w84lq4x3b81kx0vldiixsc2kh3mijqh3rca9vr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgYW5kIENhcHNsb2NrIHN0YXR1cyBvbiB0aGUgcGFuZWwuIEljb25zIGFyZSBhdXRvIGhpZGRlbi4gU2ltcGxpZmllZCB3aXRoIG5vIG1lbnVzLCBub3RpZmljYXRpb25zIG9yIHNldHRpbmdzLlxuXG5XYXlsYW5kIGlzIG9ubHkgc3VwcG9ydGVkIGZvciBHbm9tZSBTaGVsbCAzLjM4LiIsCiAgIm5hbWUiOiAiTG9jayBLZXlzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJTdGV2ZSBDbGFyaywgS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImxvY2trZXlzQGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDEzCn0="}, "41": {"version": "13", "sha256": "0a444cxwnbgp45w84lq4x3b81kx0vldiixsc2kh3mijqh3rca9vr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk51bWxvY2sgYW5kIENhcHNsb2NrIHN0YXR1cyBvbiB0aGUgcGFuZWwuIEljb25zIGFyZSBhdXRvIGhpZGRlbi4gU2ltcGxpZmllZCB3aXRoIG5vIG1lbnVzLCBub3RpZmljYXRpb25zIG9yIHNldHRpbmdzLlxuXG5XYXlsYW5kIGlzIG9ubHkgc3VwcG9ydGVkIGZvciBHbm9tZSBTaGVsbCAzLjM4LiIsCiAgIm5hbWUiOiAiTG9jayBLZXlzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJTdGV2ZSBDbGFyaywgS2F6aW1pZXJhcyBWYWluYSwgUGllcnJlIE9zc21hbiwgZXJndWlsbGUsIGpvbm5pdXMsIFBoaWxpcHAgV29sZmVyLCBNYXJpdXN6IExpc293c2tpLCBDcmlzdGlhbiBCZXJvaXphLCB3YXJtc3VuMDIyMCwgUmFzbXVzIEthaiwgUGFibG8gTWFydGluLUdvbWV6IEJvdXNrYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImxvY2trZXlzQGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDEzCn0="}}}
@@ -217,18 +217,18 @@
 , {"uuid": "panelScroll@sun.wxg@gmail.com", "name": "panel scroll", "pname": "panel-scroll", "description": "Switch windows or workspace by mouse scroll on the panel.\nPointer on left of panel, switch windows.\nPointer on right of panel, switch workspaces.", "link": "https://extensions.gnome.org/extension/1616/panel-scroll/", "shell_version_map": {"38": {"version": "10", "sha256": "1llw16wszrkrrzrlyd1ppw8kn1cqp2z4irzi9q7v2nr47hrk14kd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIHdvcmtzcGFjZSBieSBtb3VzZSBzY3JvbGwgb24gdGhlIHBhbmVsLlxuUG9pbnRlciBvbiBsZWZ0IG9mIHBhbmVsLCBzd2l0Y2ggd2luZG93cy5cblBvaW50ZXIgb24gcmlnaHQgb2YgcGFuZWwsIHN3aXRjaCB3b3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAicGFuZWwgc2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tcGFuZWxTY3JvbGwiLAogICJ1dWlkIjogInBhbmVsU2Nyb2xsQHN1bi53eGdAZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "15", "sha256": "0q4yvmkri1wzhav1va25ffcpw8c4882dgifkwnzmg9fgv0i3vgh3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIHdvcmtzcGFjZSBieSBtb3VzZSBzY3JvbGwgb24gdGhlIHBhbmVsLlxuUG9pbnRlciBvbiBsZWZ0IG9mIHBhbmVsLCBzd2l0Y2ggd2luZG93cy5cblBvaW50ZXIgb24gcmlnaHQgb2YgcGFuZWwsIHN3aXRjaCB3b3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAicGFuZWwgc2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3Vud3hnL2dub21lLXNoZWxsLWV4dGVuc2lvbi1wYW5lbFNjcm9sbCIsCiAgInV1aWQiOiAicGFuZWxTY3JvbGxAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}, "41": {"version": "15", "sha256": "0q4yvmkri1wzhav1va25ffcpw8c4882dgifkwnzmg9fgv0i3vgh3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB3aW5kb3dzIG9yIHdvcmtzcGFjZSBieSBtb3VzZSBzY3JvbGwgb24gdGhlIHBhbmVsLlxuUG9pbnRlciBvbiBsZWZ0IG9mIHBhbmVsLCBzd2l0Y2ggd2luZG93cy5cblBvaW50ZXIgb24gcmlnaHQgb2YgcGFuZWwsIHN3aXRjaCB3b3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAicGFuZWwgc2Nyb2xsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3Vud3hnL2dub21lLXNoZWxsLWV4dGVuc2lvbi1wYW5lbFNjcm9sbCIsCiAgInV1aWQiOiAicGFuZWxTY3JvbGxAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}}}
 , {"uuid": "soft-brightness@fifi.org", "name": "Soft brightness", "pname": "soft-brightness", "description": "Add or override the brightness slider to change the brightness via an alpha layer (and optionally stop using or cooperate with the exising backlight, if present).\nEither internal, external or all monitors can be dimmed.\nSee the GitHub page for details.\n\nNote that this extension will keep running on the lock screen, as you'd also want the brightness setting to apply to the lock screen as well. Please report on GitHub if this gives you any trouble.", "link": "https://extensions.gnome.org/extension/1625/soft-brightness/", "shell_version_map": {"38": {"version": "29", "sha256": "1bkcjlax2s6ly68lpc53axxrmsicdkqg8kjr91n02nlqjdxsaz6b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBvciBvdmVycmlkZSB0aGUgYnJpZ2h0bmVzcyBzbGlkZXIgdG8gY2hhbmdlIHRoZSBicmlnaHRuZXNzIHZpYSBhbiBhbHBoYSBsYXllciAoYW5kIG9wdGlvbmFsbHkgc3RvcCB1c2luZyBvciBjb29wZXJhdGUgd2l0aCB0aGUgZXhpc2luZyBiYWNrbGlnaHQsIGlmIHByZXNlbnQpLlxuRWl0aGVyIGludGVybmFsLCBleHRlcm5hbCBvciBhbGwgbW9uaXRvcnMgY2FuIGJlIGRpbW1lZC5cblNlZSB0aGUgR2l0SHViIHBhZ2UgZm9yIGRldGFpbHMuXG5cbk5vdGUgdGhhdCB0aGlzIGV4dGVuc2lvbiB3aWxsIGtlZXAgcnVubmluZyBvbiB0aGUgbG9jayBzY3JlZW4sIGFzIHlvdSdkIGFsc28gd2FudCB0aGUgYnJpZ2h0bmVzcyBzZXR0aW5nIHRvIGFwcGx5IHRvIHRoZSBsb2NrIHNjcmVlbiBhcyB3ZWxsLiBQbGVhc2UgcmVwb3J0IG9uIEdpdEh1YiBpZiB0aGlzIGdpdmVzIHlvdSBhbnkgdHJvdWJsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzb2Z0LWJyaWdodG5lc3MiLAogICJuYW1lIjogIlNvZnQgYnJpZ2h0bmVzcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zb2Z0LWJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzMuOTAiLAogICAgIjMuMzYiLAogICAgIjMuMzUuMSIsCiAgICAiMy4zNS45MiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvc29mdC1icmlnaHRuZXNzIiwKICAidXVpZCI6ICJzb2Z0LWJyaWdodG5lc3NAZmlmaS5vcmciLAogICJ2Y3NfcmV2aXNpb24iOiAidjI5LTAtZ2JiMTA1ZTQiLAogICJ2ZXJzaW9uIjogMjkKfQ=="}, "40": {"version": "29", "sha256": "1bkcjlax2s6ly68lpc53axxrmsicdkqg8kjr91n02nlqjdxsaz6b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBvciBvdmVycmlkZSB0aGUgYnJpZ2h0bmVzcyBzbGlkZXIgdG8gY2hhbmdlIHRoZSBicmlnaHRuZXNzIHZpYSBhbiBhbHBoYSBsYXllciAoYW5kIG9wdGlvbmFsbHkgc3RvcCB1c2luZyBvciBjb29wZXJhdGUgd2l0aCB0aGUgZXhpc2luZyBiYWNrbGlnaHQsIGlmIHByZXNlbnQpLlxuRWl0aGVyIGludGVybmFsLCBleHRlcm5hbCBvciBhbGwgbW9uaXRvcnMgY2FuIGJlIGRpbW1lZC5cblNlZSB0aGUgR2l0SHViIHBhZ2UgZm9yIGRldGFpbHMuXG5cbk5vdGUgdGhhdCB0aGlzIGV4dGVuc2lvbiB3aWxsIGtlZXAgcnVubmluZyBvbiB0aGUgbG9jayBzY3JlZW4sIGFzIHlvdSdkIGFsc28gd2FudCB0aGUgYnJpZ2h0bmVzcyBzZXR0aW5nIHRvIGFwcGx5IHRvIHRoZSBsb2NrIHNjcmVlbiBhcyB3ZWxsLiBQbGVhc2UgcmVwb3J0IG9uIEdpdEh1YiBpZiB0aGlzIGdpdmVzIHlvdSBhbnkgdHJvdWJsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzb2Z0LWJyaWdodG5lc3MiLAogICJuYW1lIjogIlNvZnQgYnJpZ2h0bmVzcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zb2Z0LWJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzMuOTAiLAogICAgIjMuMzYiLAogICAgIjMuMzUuMSIsCiAgICAiMy4zNS45MiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvc29mdC1icmlnaHRuZXNzIiwKICAidXVpZCI6ICJzb2Z0LWJyaWdodG5lc3NAZmlmaS5vcmciLAogICJ2Y3NfcmV2aXNpb24iOiAidjI5LTAtZ2JiMTA1ZTQiLAogICJ2ZXJzaW9uIjogMjkKfQ=="}, "41": {"version": "29", "sha256": "1bkcjlax2s6ly68lpc53axxrmsicdkqg8kjr91n02nlqjdxsaz6b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBvciBvdmVycmlkZSB0aGUgYnJpZ2h0bmVzcyBzbGlkZXIgdG8gY2hhbmdlIHRoZSBicmlnaHRuZXNzIHZpYSBhbiBhbHBoYSBsYXllciAoYW5kIG9wdGlvbmFsbHkgc3RvcCB1c2luZyBvciBjb29wZXJhdGUgd2l0aCB0aGUgZXhpc2luZyBiYWNrbGlnaHQsIGlmIHByZXNlbnQpLlxuRWl0aGVyIGludGVybmFsLCBleHRlcm5hbCBvciBhbGwgbW9uaXRvcnMgY2FuIGJlIGRpbW1lZC5cblNlZSB0aGUgR2l0SHViIHBhZ2UgZm9yIGRldGFpbHMuXG5cbk5vdGUgdGhhdCB0aGlzIGV4dGVuc2lvbiB3aWxsIGtlZXAgcnVubmluZyBvbiB0aGUgbG9jayBzY3JlZW4sIGFzIHlvdSdkIGFsc28gd2FudCB0aGUgYnJpZ2h0bmVzcyBzZXR0aW5nIHRvIGFwcGx5IHRvIHRoZSBsb2NrIHNjcmVlbiBhcyB3ZWxsLiBQbGVhc2UgcmVwb3J0IG9uIEdpdEh1YiBpZiB0aGlzIGdpdmVzIHlvdSBhbnkgdHJvdWJsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzb2Z0LWJyaWdodG5lc3MiLAogICJuYW1lIjogIlNvZnQgYnJpZ2h0bmVzcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zb2Z0LWJyaWdodG5lc3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzMuOTAiLAogICAgIjMuMzYiLAogICAgIjMuMzUuMSIsCiAgICAiMy4zNS45MiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvc29mdC1icmlnaHRuZXNzIiwKICAidXVpZCI6ICJzb2Z0LWJyaWdodG5lc3NAZmlmaS5vcmciLAogICJ2Y3NfcmV2aXNpb24iOiAidjI5LTAtZ2JiMTA1ZTQiLAogICJ2ZXJzaW9uIjogMjkKfQ=="}}}
 , {"uuid": "Resource_Monitor@Ory0n", "name": "Resource Monitor", "pname": "resource-monitor", "description": "Monitor the use of system resources like cpu, ram, disk, network and display them in gnome shell top bar.", "link": "https://extensions.gnome.org/extension/1634/resource-monitor/", "shell_version_map": {"38": {"version": "14", "sha256": "0mg6b54cinplc4i3kzn6p397a8flyivcyzg30pnfq7phhgpcnxwj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJHaXVzZXBwZSBTaWx2ZXN0cm8iLAogICJkZXNjcmlwdGlvbiI6ICJNb25pdG9yIHRoZSB1c2Ugb2Ygc3lzdGVtIHJlc291cmNlcyBsaWtlIGNwdSwgcmFtLCBkaXNrLCBuZXR3b3JrIGFuZCBkaXNwbGF5IHRoZW0gaW4gZ25vbWUgc2hlbGwgdG9wIGJhci4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjb20tZ2l0aHViLU9yeTBuLVJlc291cmNlX01vbml0b3IiLAogICJuYW1lIjogIlJlc291cmNlIE1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAiY29tLmdpdGh1Yi5Pcnkwbi5SZXNvdXJjZV9Nb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vMHJ5MG4vUmVzb3VyY2VfTW9uaXRvci8iLAogICJ1dWlkIjogIlJlc291cmNlX01vbml0b3JAT3J5MG4iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "40": {"version": "16", "sha256": "0jpamw200p1q0g7h1llvaq3hrqijgzkp7apgyvbgw8mg529q3xyj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJHaXVzZXBwZSBTaWx2ZXN0cm8iLAogICJkZXNjcmlwdGlvbiI6ICJNb25pdG9yIHRoZSB1c2Ugb2Ygc3lzdGVtIHJlc291cmNlcyBsaWtlIGNwdSwgcmFtLCBkaXNrLCBuZXR3b3JrIGFuZCBkaXNwbGF5IHRoZW0gaW4gZ25vbWUgc2hlbGwgdG9wIGJhci4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjb20tZ2l0aHViLU9yeTBuLVJlc291cmNlX01vbml0b3IiLAogICJuYW1lIjogIlJlc291cmNlIE1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAiY29tLmdpdGh1Yi5Pcnkwbi5SZXNvdXJjZV9Nb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS8wcnkwbi9SZXNvdXJjZV9Nb25pdG9yLyIsCiAgInV1aWQiOiAiUmVzb3VyY2VfTW9uaXRvckBPcnkwbiIsCiAgInZlcnNpb24iOiAxNgp9"}, "41": {"version": "16", "sha256": "0jpamw200p1q0g7h1llvaq3hrqijgzkp7apgyvbgw8mg529q3xyj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJHaXVzZXBwZSBTaWx2ZXN0cm8iLAogICJkZXNjcmlwdGlvbiI6ICJNb25pdG9yIHRoZSB1c2Ugb2Ygc3lzdGVtIHJlc291cmNlcyBsaWtlIGNwdSwgcmFtLCBkaXNrLCBuZXR3b3JrIGFuZCBkaXNwbGF5IHRoZW0gaW4gZ25vbWUgc2hlbGwgdG9wIGJhci4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjb20tZ2l0aHViLU9yeTBuLVJlc291cmNlX01vbml0b3IiLAogICJuYW1lIjogIlJlc291cmNlIE1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAiY29tLmdpdGh1Yi5Pcnkwbi5SZXNvdXJjZV9Nb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS8wcnkwbi9SZXNvdXJjZV9Nb25pdG9yLyIsCiAgInV1aWQiOiAiUmVzb3VyY2VfTW9uaXRvckBPcnkwbiIsCiAgInZlcnNpb24iOiAxNgp9"}}}
-, {"uuid": "tweaks-system-menu@extensions.gnome-shell.fifi.org", "name": "Tweaks & Extensions in System Menu", "pname": "tweaks-in-system-menu", "description": "Put Gnome Tweaks and Extensions (on Shell 40 and later) in the System menu.", "link": "https://extensions.gnome.org/extension/1653/tweaks-in-system-menu/", "shell_version_map": {"38": {"version": "17", "sha256": "0qhl6a3999clrghkllgw9xnh8n963dzmsacvqnj7h4znzjhixkdl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBHbm9tZSBUd2Vha3MgYW5kIEV4dGVuc2lvbnMgKG9uIFNoZWxsIDQwIGFuZCBsYXRlcikgaW4gdGhlIFN5c3RlbSBtZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogInR3ZWFrcy1zeXN0ZW0tbWVudSIsCiAgIm5hbWUiOiAiVHdlYWtzICYgRXh0ZW5zaW9ucyBpbiBTeXN0ZW0gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzUuOTIiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0YtaS1mL3R3ZWFrcy1zeXN0ZW0tbWVudSIsCiAgInV1aWQiOiAidHdlYWtzLXN5c3RlbS1tZW51QGV4dGVuc2lvbnMuZ25vbWUtc2hlbGwuZmlmaS5vcmciLAogICJ2Y3NfcmV2aXNpb24iOiAidjE3LTAtZ2IzMWYxZGUiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "40": {"version": "17", "sha256": "0qhl6a3999clrghkllgw9xnh8n963dzmsacvqnj7h4znzjhixkdl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBHbm9tZSBUd2Vha3MgYW5kIEV4dGVuc2lvbnMgKG9uIFNoZWxsIDQwIGFuZCBsYXRlcikgaW4gdGhlIFN5c3RlbSBtZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogInR3ZWFrcy1zeXN0ZW0tbWVudSIsCiAgIm5hbWUiOiAiVHdlYWtzICYgRXh0ZW5zaW9ucyBpbiBTeXN0ZW0gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzUuOTIiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0YtaS1mL3R3ZWFrcy1zeXN0ZW0tbWVudSIsCiAgInV1aWQiOiAidHdlYWtzLXN5c3RlbS1tZW51QGV4dGVuc2lvbnMuZ25vbWUtc2hlbGwuZmlmaS5vcmciLAogICJ2Y3NfcmV2aXNpb24iOiAidjE3LTAtZ2IzMWYxZGUiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "41": {"version": "17", "sha256": "0qhl6a3999clrghkllgw9xnh8n963dzmsacvqnj7h4znzjhixkdl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBHbm9tZSBUd2Vha3MgYW5kIEV4dGVuc2lvbnMgKG9uIFNoZWxsIDQwIGFuZCBsYXRlcikgaW4gdGhlIFN5c3RlbSBtZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogInR3ZWFrcy1zeXN0ZW0tbWVudSIsCiAgIm5hbWUiOiAiVHdlYWtzICYgRXh0ZW5zaW9ucyBpbiBTeXN0ZW0gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzUuOTIiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0YtaS1mL3R3ZWFrcy1zeXN0ZW0tbWVudSIsCiAgInV1aWQiOiAidHdlYWtzLXN5c3RlbS1tZW51QGV4dGVuc2lvbnMuZ25vbWUtc2hlbGwuZmlmaS5vcmciLAogICJ2Y3NfcmV2aXNpb24iOiAidjE3LTAtZ2IzMWYxZGUiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
+, {"uuid": "tweaks-system-menu@extensions.gnome-shell.fifi.org", "name": "Tweaks & Extensions in System Menu", "pname": "tweaks-in-system-menu", "description": "Put Gnome Tweaks and Extensions (on Shell 40 and later) in the System menu.", "link": "https://extensions.gnome.org/extension/1653/tweaks-in-system-menu/", "shell_version_map": {"38": {"version": "18", "sha256": "0wzpzn3pq05p9qqibb0436kckgh4y16xcm3wgr7xmxx68zpd87p4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBHbm9tZSBUd2Vha3MgYW5kIEV4dGVuc2lvbnMgKG9uIFNoZWxsIDQwIGFuZCBsYXRlcikgaW4gdGhlIFN5c3RlbSBtZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogInR3ZWFrcy1zeXN0ZW0tbWVudSIsCiAgIm5hbWUiOiAiVHdlYWtzICYgRXh0ZW5zaW9ucyBpbiBTeXN0ZW0gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzUuOTIiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9GLWktZi90d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJ1dWlkIjogInR3ZWFrcy1zeXN0ZW0tbWVudUBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxOC0wLWczMTE4ZmI4IiwKICAidmVyc2lvbiI6IDE4Cn0="}, "40": {"version": "18", "sha256": "0wzpzn3pq05p9qqibb0436kckgh4y16xcm3wgr7xmxx68zpd87p4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBHbm9tZSBUd2Vha3MgYW5kIEV4dGVuc2lvbnMgKG9uIFNoZWxsIDQwIGFuZCBsYXRlcikgaW4gdGhlIFN5c3RlbSBtZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogInR3ZWFrcy1zeXN0ZW0tbWVudSIsCiAgIm5hbWUiOiAiVHdlYWtzICYgRXh0ZW5zaW9ucyBpbiBTeXN0ZW0gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzUuOTIiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9GLWktZi90d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJ1dWlkIjogInR3ZWFrcy1zeXN0ZW0tbWVudUBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxOC0wLWczMTE4ZmI4IiwKICAidmVyc2lvbiI6IDE4Cn0="}, "41": {"version": "18", "sha256": "0wzpzn3pq05p9qqibb0436kckgh4y16xcm3wgr7xmxx68zpd87p4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBHbm9tZSBUd2Vha3MgYW5kIEV4dGVuc2lvbnMgKG9uIFNoZWxsIDQwIGFuZCBsYXRlcikgaW4gdGhlIFN5c3RlbSBtZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogInR3ZWFrcy1zeXN0ZW0tbWVudSIsCiAgIm5hbWUiOiAiVHdlYWtzICYgRXh0ZW5zaW9ucyBpbiBTeXN0ZW0gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzUuOTIiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9GLWktZi90d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJ1dWlkIjogInR3ZWFrcy1zeXN0ZW0tbWVudUBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxOC0wLWczMTE4ZmI4IiwKICAidmVyc2lvbiI6IDE4Cn0="}, "42": {"version": "18", "sha256": "0wzpzn3pq05p9qqibb0436kckgh4y16xcm3wgr7xmxx68zpd87p4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1dCBHbm9tZSBUd2Vha3MgYW5kIEV4dGVuc2lvbnMgKG9uIFNoZWxsIDQwIGFuZCBsYXRlcikgaW4gdGhlIFN5c3RlbSBtZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogInR3ZWFrcy1zeXN0ZW0tbWVudSIsCiAgIm5hbWUiOiAiVHdlYWtzICYgRXh0ZW5zaW9ucyBpbiBTeXN0ZW0gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzUuOTIiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9GLWktZi90d2Vha3Mtc3lzdGVtLW1lbnUiLAogICJ1dWlkIjogInR3ZWFrcy1zeXN0ZW0tbWVudUBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxOC0wLWczMTE4ZmI4IiwKICAidmVyc2lvbiI6IDE4Cn0="}}}
 , {"uuid": "topiconsfix@aleskva@devnullmail.com", "name": "TopIconsFix", "pname": "topiconsfix", "description": "Shows legacy tray icons on top – the fixed version of https://extensions.gnome.org/extension/495/topicons/", "link": "https://extensions.gnome.org/extension/1674/topiconsfix/", "shell_version_map": {"38": {"version": "12", "sha256": "1zxihxmbc2hx6f8whv8mqzbl55k3wdgw108q97kadf9v67gpcp0n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGxlZ2FjeSB0cmF5IGljb25zIG9uIHRvcCBcdTIwMTMgdGhlIGZpeGVkIHZlcnNpb24gb2YgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDk1L3RvcGljb25zLyIsCiAgIm5hbWUiOiAiVG9wSWNvbnNGaXgiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ0b3BpY29uc2ZpeEBhbGVza3ZhQGRldm51bGxtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "1zxihxmbc2hx6f8whv8mqzbl55k3wdgw108q97kadf9v67gpcp0n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGxlZ2FjeSB0cmF5IGljb25zIG9uIHRvcCBcdTIwMTMgdGhlIGZpeGVkIHZlcnNpb24gb2YgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDk1L3RvcGljb25zLyIsCiAgIm5hbWUiOiAiVG9wSWNvbnNGaXgiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ0b3BpY29uc2ZpeEBhbGVza3ZhQGRldm51bGxtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "1zxihxmbc2hx6f8whv8mqzbl55k3wdgw108q97kadf9v67gpcp0n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGxlZ2FjeSB0cmF5IGljb25zIG9uIHRvcCBcdTIwMTMgdGhlIGZpeGVkIHZlcnNpb24gb2YgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDk1L3RvcGljb25zLyIsCiAgIm5hbWUiOiAiVG9wSWNvbnNGaXgiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ0b3BpY29uc2ZpeEBhbGVza3ZhQGRldm51bGxtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
 , {"uuid": "animation-tweaks@Selenium-H", "name": "Animation Tweaks", "pname": "animation-tweaks", "description": "Add animations to different items and customize them.\n\nPlease reset the extension after updating.\nThe Extension will stop when upgraded to an incompatible version.\nIn that case an Update tab is created to easily reset the extension.\nA Reset menu entry is also always present in in the Top Right Application menu of the extension preferences window.\nA Default shortcut combination of Super Key + t is provided to disable the extension.\n\nSome effects might not work properly on wayland, for which an option to integrate with wayland is provided on Integrations tab.\nHowever, some animations might not work properly.\n\nTo manage effect Delay time enable Show delay time in preferences Window from Top Right Application menu -> Preferences\nand reopen preferences.", "link": "https://extensions.gnome.org/extension/1680/animation-tweaks/", "shell_version_map": {"38": {"version": "18", "sha256": "07niv7biy9yxmxdg498kqypyqva6y8slm3gmn70dpx9f9ng8ya55", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiQWRkIGFuaW1hdGlvbnMgdG8gZGlmZmVyZW50IGl0ZW1zIGFuZCBjdXN0b21pemUgdGhlbS4iLAogICJkZXNjcmlwdGlvbiI6ICJBZGQgYW5pbWF0aW9ucyB0byBkaWZmZXJlbnQgaXRlbXMgYW5kIGN1c3RvbWl6ZSB0aGVtLlxuXG5QbGVhc2UgcmVzZXQgdGhlIGV4dGVuc2lvbiBhZnRlciB1cGRhdGluZy5cblRoZSBFeHRlbnNpb24gd2lsbCBzdG9wIHdoZW4gdXBncmFkZWQgdG8gYW4gaW5jb21wYXRpYmxlIHZlcnNpb24uXG5JbiB0aGF0IGNhc2UgYW4gVXBkYXRlIHRhYiBpcyBjcmVhdGVkIHRvIGVhc2lseSByZXNldCB0aGUgZXh0ZW5zaW9uLlxuQSBSZXNldCBtZW51IGVudHJ5IGlzIGFsc28gYWx3YXlzIHByZXNlbnQgaW4gaW4gdGhlIFRvcCBSaWdodCBBcHBsaWNhdGlvbiBtZW51IG9mIHRoZSBleHRlbnNpb24gcHJlZmVyZW5jZXMgd2luZG93LlxuQSBEZWZhdWx0IHNob3J0Y3V0IGNvbWJpbmF0aW9uIG9mIFN1cGVyIEtleSArIHQgaXMgcHJvdmlkZWQgdG8gZGlzYWJsZSB0aGUgZXh0ZW5zaW9uLlxuXG5Tb21lIGVmZmVjdHMgbWlnaHQgbm90IHdvcmsgcHJvcGVybHkgb24gd2F5bGFuZCwgZm9yIHdoaWNoIGFuIG9wdGlvbiB0byBpbnRlZ3JhdGUgd2l0aCB3YXlsYW5kIGlzIHByb3ZpZGVkIG9uIEludGVncmF0aW9ucyB0YWIuXG5Ib3dldmVyLCBzb21lIGFuaW1hdGlvbnMgbWlnaHQgbm90IHdvcmsgcHJvcGVybHkuXG5cblRvIG1hbmFnZSBlZmZlY3QgRGVsYXkgdGltZSBlbmFibGUgU2hvdyBkZWxheSB0aW1lIGluIHByZWZlcmVuY2VzIFdpbmRvdyBmcm9tIFRvcCBSaWdodCBBcHBsaWNhdGlvbiBtZW51IC0+IFByZWZlcmVuY2VzXG5hbmQgcmVvcGVuIHByZWZlcmVuY2VzLiIsCiAgIm5hbWUiOiAiQW5pbWF0aW9uIFR3ZWFrcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInN0YXR1cyI6ICIiLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NlbGVuaXVtLUgvQW5pbWF0aW9uLVR3ZWFrcyIsCiAgInV1aWQiOiAiYW5pbWF0aW9uLXR3ZWFrc0BTZWxlbml1bS1IIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "40": {"version": "18", "sha256": "07niv7biy9yxmxdg498kqypyqva6y8slm3gmn70dpx9f9ng8ya55", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiQWRkIGFuaW1hdGlvbnMgdG8gZGlmZmVyZW50IGl0ZW1zIGFuZCBjdXN0b21pemUgdGhlbS4iLAogICJkZXNjcmlwdGlvbiI6ICJBZGQgYW5pbWF0aW9ucyB0byBkaWZmZXJlbnQgaXRlbXMgYW5kIGN1c3RvbWl6ZSB0aGVtLlxuXG5QbGVhc2UgcmVzZXQgdGhlIGV4dGVuc2lvbiBhZnRlciB1cGRhdGluZy5cblRoZSBFeHRlbnNpb24gd2lsbCBzdG9wIHdoZW4gdXBncmFkZWQgdG8gYW4gaW5jb21wYXRpYmxlIHZlcnNpb24uXG5JbiB0aGF0IGNhc2UgYW4gVXBkYXRlIHRhYiBpcyBjcmVhdGVkIHRvIGVhc2lseSByZXNldCB0aGUgZXh0ZW5zaW9uLlxuQSBSZXNldCBtZW51IGVudHJ5IGlzIGFsc28gYWx3YXlzIHByZXNlbnQgaW4gaW4gdGhlIFRvcCBSaWdodCBBcHBsaWNhdGlvbiBtZW51IG9mIHRoZSBleHRlbnNpb24gcHJlZmVyZW5jZXMgd2luZG93LlxuQSBEZWZhdWx0IHNob3J0Y3V0IGNvbWJpbmF0aW9uIG9mIFN1cGVyIEtleSArIHQgaXMgcHJvdmlkZWQgdG8gZGlzYWJsZSB0aGUgZXh0ZW5zaW9uLlxuXG5Tb21lIGVmZmVjdHMgbWlnaHQgbm90IHdvcmsgcHJvcGVybHkgb24gd2F5bGFuZCwgZm9yIHdoaWNoIGFuIG9wdGlvbiB0byBpbnRlZ3JhdGUgd2l0aCB3YXlsYW5kIGlzIHByb3ZpZGVkIG9uIEludGVncmF0aW9ucyB0YWIuXG5Ib3dldmVyLCBzb21lIGFuaW1hdGlvbnMgbWlnaHQgbm90IHdvcmsgcHJvcGVybHkuXG5cblRvIG1hbmFnZSBlZmZlY3QgRGVsYXkgdGltZSBlbmFibGUgU2hvdyBkZWxheSB0aW1lIGluIHByZWZlcmVuY2VzIFdpbmRvdyBmcm9tIFRvcCBSaWdodCBBcHBsaWNhdGlvbiBtZW51IC0+IFByZWZlcmVuY2VzXG5hbmQgcmVvcGVuIHByZWZlcmVuY2VzLiIsCiAgIm5hbWUiOiAiQW5pbWF0aW9uIFR3ZWFrcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInN0YXR1cyI6ICIiLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NlbGVuaXVtLUgvQW5pbWF0aW9uLVR3ZWFrcyIsCiAgInV1aWQiOiAiYW5pbWF0aW9uLXR3ZWFrc0BTZWxlbml1bS1IIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "41": {"version": "18", "sha256": "07niv7biy9yxmxdg498kqypyqva6y8slm3gmn70dpx9f9ng8ya55", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiQWRkIGFuaW1hdGlvbnMgdG8gZGlmZmVyZW50IGl0ZW1zIGFuZCBjdXN0b21pemUgdGhlbS4iLAogICJkZXNjcmlwdGlvbiI6ICJBZGQgYW5pbWF0aW9ucyB0byBkaWZmZXJlbnQgaXRlbXMgYW5kIGN1c3RvbWl6ZSB0aGVtLlxuXG5QbGVhc2UgcmVzZXQgdGhlIGV4dGVuc2lvbiBhZnRlciB1cGRhdGluZy5cblRoZSBFeHRlbnNpb24gd2lsbCBzdG9wIHdoZW4gdXBncmFkZWQgdG8gYW4gaW5jb21wYXRpYmxlIHZlcnNpb24uXG5JbiB0aGF0IGNhc2UgYW4gVXBkYXRlIHRhYiBpcyBjcmVhdGVkIHRvIGVhc2lseSByZXNldCB0aGUgZXh0ZW5zaW9uLlxuQSBSZXNldCBtZW51IGVudHJ5IGlzIGFsc28gYWx3YXlzIHByZXNlbnQgaW4gaW4gdGhlIFRvcCBSaWdodCBBcHBsaWNhdGlvbiBtZW51IG9mIHRoZSBleHRlbnNpb24gcHJlZmVyZW5jZXMgd2luZG93LlxuQSBEZWZhdWx0IHNob3J0Y3V0IGNvbWJpbmF0aW9uIG9mIFN1cGVyIEtleSArIHQgaXMgcHJvdmlkZWQgdG8gZGlzYWJsZSB0aGUgZXh0ZW5zaW9uLlxuXG5Tb21lIGVmZmVjdHMgbWlnaHQgbm90IHdvcmsgcHJvcGVybHkgb24gd2F5bGFuZCwgZm9yIHdoaWNoIGFuIG9wdGlvbiB0byBpbnRlZ3JhdGUgd2l0aCB3YXlsYW5kIGlzIHByb3ZpZGVkIG9uIEludGVncmF0aW9ucyB0YWIuXG5Ib3dldmVyLCBzb21lIGFuaW1hdGlvbnMgbWlnaHQgbm90IHdvcmsgcHJvcGVybHkuXG5cblRvIG1hbmFnZSBlZmZlY3QgRGVsYXkgdGltZSBlbmFibGUgU2hvdyBkZWxheSB0aW1lIGluIHByZWZlcmVuY2VzIFdpbmRvdyBmcm9tIFRvcCBSaWdodCBBcHBsaWNhdGlvbiBtZW51IC0+IFByZWZlcmVuY2VzXG5hbmQgcmVvcGVuIHByZWZlcmVuY2VzLiIsCiAgIm5hbWUiOiAiQW5pbWF0aW9uIFR3ZWFrcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInN0YXR1cyI6ICIiLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NlbGVuaXVtLUgvQW5pbWF0aW9uLVR3ZWFrcyIsCiAgInV1aWQiOiAiYW5pbWF0aW9uLXR3ZWFrc0BTZWxlbml1bS1IIiwKICAidmVyc2lvbiI6IDE4Cn0="}}}
 , {"uuid": "drawOnYourScreen@abakkk.framagit.org", "name": "Draw On You Screen", "pname": "draw-on-you-screen", "description": "", "link": "https://extensions.gnome.org/extension/1683/draw-on-you-screen/", "shell_version_map": {"38": {"version": "11", "sha256": "0kbgngcb2n234snnavbm8giwi6zhvr48bs0qy4f511d52l2wyawy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRhdGEtZGlyIjogImRyYXdPbllvdXJTY3JlZW4iLAogICJkZXNjcmlwdGlvbiI6ICIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkcmF3LW9uLXlvdXItc2NyZWVuIiwKICAibmFtZSI6ICJEcmF3IE9uIFlvdSBTY3JlZW4iLAogICJwZXJzaXN0ZW50LWZpbGUtbmFtZSI6ICJwZXJzaXN0ZW50IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRyYXctb24teW91ci1zY3JlZW4iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAic3ZnLWZpbGUtbmFtZSI6ICJEcmF3T25Zb3VyU2NyZWVuIiwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZHJhd09uWW91clNjcmVlbkBhYmFra2suZnJhbWFnaXQub3JnIiwKICAidmVyc2lvbiI6IDExCn0="}}}
 , {"uuid": "Always-Show-Titles-In-Overview@gmail.com", "name": "Always Show Titles In Overview", "pname": "always-show-titles-in-overview", "description": "Customize Gnome 3 overview.\n\n- Always show titles of all window thumbnails\n- Show/hide app icons\n- App icon position: Bottom, Center\n- Show/hide the app icon when a window is in fullscreen mode\n- Tweak the window thumbnail active size increment (from 5 to 60, the default is 15)\n- Show/hide the background\n- Hide/show icons for Video/TV players, like SMPlayer \n\n", "link": "https://extensions.gnome.org/extension/1689/always-show-titles-in-overview/", "shell_version_map": {"38": {"version": "10", "sha256": "1vnbj1li9ci5n25b49swxps9zqajgr10vfgv5lcn9f9brzm373fp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6ZSBHbm9tZSAzIG92ZXJ2aWV3LlxuXG4tIEFsd2F5cyBzaG93IHRpdGxlcyBvZiBhbGwgd2luZG93IHRodW1ibmFpbHNcbi0gU2hvdy9oaWRlIGFwcCBpY29uc1xuLSBBcHAgaWNvbiBwb3NpdGlvbjogQm90dG9tLCBDZW50ZXJcbi0gU2hvdy9oaWRlIHRoZSBhcHAgaWNvbiB3aGVuIGEgd2luZG93IGlzIGluIGZ1bGxzY3JlZW4gbW9kZVxuLSBUd2VhayB0aGUgd2luZG93IHRodW1ibmFpbCBhY3RpdmUgc2l6ZSBpbmNyZW1lbnQgKGZyb20gNSB0byA2MCwgdGhlIGRlZmF1bHQgaXMgMTUpXG4tIFNob3cvaGlkZSB0aGUgYmFja2dyb3VuZFxuLSBIaWRlL3Nob3cgaWNvbnMgZm9yIFZpZGVvL1RWIHBsYXllcnMsIGxpa2UgU01QbGF5ZXIgXG5cbiIsCiAgIm5hbWUiOiAiQWx3YXlzIFNob3cgVGl0bGVzIEluIE92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmxwc3VnZS9BbHdheXMtU2hvdy1UaXRsZXMtSW4tT3ZlcnZpZXciLAogICJ1dWlkIjogIkFsd2F5cy1TaG93LVRpdGxlcy1Jbi1PdmVydmlld0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "40": {"version": "19", "sha256": "01b9cqjwh0i5xf31ri28va4ax775lw5cymsd73ghlzp69p35yc4n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6ZSBHbm9tZSAzIG92ZXJ2aWV3LlxuXG4tIEFsd2F5cyBzaG93IHRpdGxlcyBvZiBhbGwgd2luZG93IHRodW1ibmFpbHNcbi0gU2hvdy9oaWRlIGFwcCBpY29uc1xuLSBBcHAgaWNvbiBwb3NpdGlvbjogQm90dG9tLCBDZW50ZXJcbi0gU2hvdy9oaWRlIHRoZSBhcHAgaWNvbiB3aGVuIGEgd2luZG93IGlzIGluIGZ1bGxzY3JlZW4gbW9kZVxuLSBUd2VhayB0aGUgd2luZG93IHRodW1ibmFpbCBhY3RpdmUgc2l6ZSBpbmNyZW1lbnQgKGZyb20gNSB0byA2MCwgdGhlIGRlZmF1bHQgaXMgMTUpXG4tIFNob3cvaGlkZSB0aGUgYmFja2dyb3VuZFxuLSBIaWRlL3Nob3cgaWNvbnMgZm9yIFZpZGVvL1RWIHBsYXllcnMsIGxpa2UgU01QbGF5ZXIgXG5cbiIsCiAgIm5hbWUiOiAiQWx3YXlzIFNob3cgVGl0bGVzIEluIE92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ubHBzdWdlL0Fsd2F5cy1TaG93LVRpdGxlcy1Jbi1PdmVydmlldyIsCiAgInV1aWQiOiAiQWx3YXlzLVNob3ctVGl0bGVzLUluLU92ZXJ2aWV3QGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxOQp9"}, "41": {"version": "19", "sha256": "01b9cqjwh0i5xf31ri28va4ax775lw5cymsd73ghlzp69p35yc4n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6ZSBHbm9tZSAzIG92ZXJ2aWV3LlxuXG4tIEFsd2F5cyBzaG93IHRpdGxlcyBvZiBhbGwgd2luZG93IHRodW1ibmFpbHNcbi0gU2hvdy9oaWRlIGFwcCBpY29uc1xuLSBBcHAgaWNvbiBwb3NpdGlvbjogQm90dG9tLCBDZW50ZXJcbi0gU2hvdy9oaWRlIHRoZSBhcHAgaWNvbiB3aGVuIGEgd2luZG93IGlzIGluIGZ1bGxzY3JlZW4gbW9kZVxuLSBUd2VhayB0aGUgd2luZG93IHRodW1ibmFpbCBhY3RpdmUgc2l6ZSBpbmNyZW1lbnQgKGZyb20gNSB0byA2MCwgdGhlIGRlZmF1bHQgaXMgMTUpXG4tIFNob3cvaGlkZSB0aGUgYmFja2dyb3VuZFxuLSBIaWRlL3Nob3cgaWNvbnMgZm9yIFZpZGVvL1RWIHBsYXllcnMsIGxpa2UgU01QbGF5ZXIgXG5cbiIsCiAgIm5hbWUiOiAiQWx3YXlzIFNob3cgVGl0bGVzIEluIE92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ubHBzdWdlL0Fsd2F5cy1TaG93LVRpdGxlcy1Jbi1PdmVydmlldyIsCiAgInV1aWQiOiAiQWx3YXlzLVNob3ctVGl0bGVzLUluLU92ZXJ2aWV3QGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxOQp9"}}}
 , {"uuid": "overview-navigation@nathanielsimard.github.com", "name": "Overview Navigation", "pname": "overview-navigation", "description": "This extension aims to make Gnome Shell easier to navigate using only the keyboard. It is inspired by the vim plugins of Firefox and Chrome.", "link": "https://extensions.gnome.org/extension/1702/overview-navigation/", "shell_version_map": {"38": {"version": "14", "sha256": "10i2j0klcyi22qakmw1f338ldc87w54a0jlg1bwq84ifflmnm8nq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFpbXMgdG8gbWFrZSBHbm9tZSBTaGVsbCBlYXNpZXIgdG8gbmF2aWdhdGUgdXNpbmcgb25seSB0aGUga2V5Ym9hcmQuIEl0IGlzIGluc3BpcmVkIGJ5IHRoZSB2aW0gcGx1Z2lucyBvZiBGaXJlZm94IGFuZCBDaHJvbWUuIiwKICAibmFtZSI6ICJPdmVydmlldyBOYXZpZ2F0aW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm92ZXJ2aWV3LW5hdmlnYXRpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9uYXRoYW5pZWxzaW1hcmQvb3ZlcnZpZXctbmF2aWdhdGlvbiIsCiAgInV1aWQiOiAib3ZlcnZpZXctbmF2aWdhdGlvbkBuYXRoYW5pZWxzaW1hcmQuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxNAp9"}, "40": {"version": "15", "sha256": "03ah1cx6kjw7698b9wwhz7ag8pag15g8zkxzfrsrcmving9syynd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFpbXMgdG8gbWFrZSBHbm9tZSBTaGVsbCBlYXNpZXIgdG8gbmF2aWdhdGUgdXNpbmcgb25seSB0aGUga2V5Ym9hcmQuIEl0IGlzIGluc3BpcmVkIGJ5IHRoZSB2aW0gcGx1Z2lucyBvZiBGaXJlZm94IGFuZCBDaHJvbWUuIiwKICAibmFtZSI6ICJPdmVydmlldyBOYXZpZ2F0aW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm92ZXJ2aWV3LW5hdmlnYXRpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmF0aGFuaWVsc2ltYXJkL292ZXJ2aWV3LW5hdmlnYXRpb24iLAogICJ1dWlkIjogIm92ZXJ2aWV3LW5hdmlnYXRpb25AbmF0aGFuaWVsc2ltYXJkLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}, "41": {"version": "16", "sha256": "1qdqbsrmxnvx01hlaq17nps124xah1rkqvr0rpxms7f3klkgkw0d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFpbXMgdG8gbWFrZSBHbm9tZSBTaGVsbCBlYXNpZXIgdG8gbmF2aWdhdGUgdXNpbmcgb25seSB0aGUga2V5Ym9hcmQuIEl0IGlzIGluc3BpcmVkIGJ5IHRoZSB2aW0gcGx1Z2lucyBvZiBGaXJlZm94IGFuZCBDaHJvbWUuIiwKICAibmFtZSI6ICJPdmVydmlldyBOYXZpZ2F0aW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm92ZXJ2aWV3LW5hdmlnYXRpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmF0aGFuaWVsc2ltYXJkL292ZXJ2aWV3LW5hdmlnYXRpb24iLAogICJ1dWlkIjogIm92ZXJ2aWV3LW5hdmlnYXRpb25AbmF0aGFuaWVsc2ltYXJkLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTYKfQ=="}}}
 , {"uuid": "transparent-top-bar@zhanghai.me", "name": "Transparent Top Bar", "pname": "transparent-top-bar", "description": "Bring back the transparent top bar when free-floating in GNOME Shell 3.32.\n\nThis basically comes from the feature implementation removed in GNOME Shell 3.32, and I modified the code a bit to make it an extension. Enjoy!", "link": "https://extensions.gnome.org/extension/1708/transparent-top-bar/", "shell_version_map": {"38": {"version": "9", "sha256": "0i34ns1rm2iis9mvbyjvckb0l1b0zzzczzan7591y8lqfjplsmzr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIGJhY2sgdGhlIHRyYW5zcGFyZW50IHRvcCBiYXIgd2hlbiBmcmVlLWZsb2F0aW5nIGluIEdOT01FIFNoZWxsIDMuMzIuXG5cblRoaXMgYmFzaWNhbGx5IGNvbWVzIGZyb20gdGhlIGZlYXR1cmUgaW1wbGVtZW50YXRpb24gcmVtb3ZlZCBpbiBHTk9NRSBTaGVsbCAzLjMyLCBhbmQgSSBtb2RpZmllZCB0aGUgY29kZSBhIGJpdCB0byBtYWtlIGl0IGFuIGV4dGVuc2lvbi4gRW5qb3khIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3poYW5naGFpL2dub21lLXNoZWxsLWV4dGVuc2lvbi10cmFuc3BhcmVudC10b3AtYmFyIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC10b3AtYmFyQHpoYW5naGFpLm1lIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "40": {"version": "13", "sha256": "1ppsii29lv4jaqdrjrav3j19ynv7kwl7mf7pn27lsgiga25n4wyh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIGJhY2sgdGhlIHRyYW5zcGFyZW50IHRvcCBiYXIgd2hlbiBmcmVlLWZsb2F0aW5nIGluIEdOT01FIFNoZWxsIDMuMzIuXG5cblRoaXMgYmFzaWNhbGx5IGNvbWVzIGZyb20gdGhlIGZlYXR1cmUgaW1wbGVtZW50YXRpb24gcmVtb3ZlZCBpbiBHTk9NRSBTaGVsbCAzLjMyLCBhbmQgSSBtb2RpZmllZCB0aGUgY29kZSBhIGJpdCB0byBtYWtlIGl0IGFuIGV4dGVuc2lvbi4gRW5qb3khIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96aGFuZ2hhaS9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhciIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtdG9wLWJhckB6aGFuZ2hhaS5tZSIsCiAgInZlcnNpb24iOiAxMwp9"}, "41": {"version": "13", "sha256": "1ppsii29lv4jaqdrjrav3j19ynv7kwl7mf7pn27lsgiga25n4wyh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIGJhY2sgdGhlIHRyYW5zcGFyZW50IHRvcCBiYXIgd2hlbiBmcmVlLWZsb2F0aW5nIGluIEdOT01FIFNoZWxsIDMuMzIuXG5cblRoaXMgYmFzaWNhbGx5IGNvbWVzIGZyb20gdGhlIGZlYXR1cmUgaW1wbGVtZW50YXRpb24gcmVtb3ZlZCBpbiBHTk9NRSBTaGVsbCAzLjMyLCBhbmQgSSBtb2RpZmllZCB0aGUgY29kZSBhIGJpdCB0byBtYWtlIGl0IGFuIGV4dGVuc2lvbi4gRW5qb3khIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS96aGFuZ2hhaS9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhciIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtdG9wLWJhckB6aGFuZ2hhaS5tZSIsCiAgInZlcnNpb24iOiAxMwp9"}}}
-, {"uuid": "ssh-search-provider@extensions.gnome-shell.fifi.org", "name": "SSH Search Provider Reborn", "pname": "ssh-search-provider-reborn", "description": "Provide SSH search results in overview.\n\nThis is a fork of the original \"SSH Search Provider\", updated to work with newer Gnome-Shells.", "link": "https://extensions.gnome.org/extension/1714/ssh-search-provider-reborn/", "shell_version_map": {"38": {"version": "10", "sha256": "00b7arbds38bybh3f8w8jk2nglfkwkq2van2nzhqhzscklll0k0f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgU1NIIHNlYXJjaCByZXN1bHRzIGluIG92ZXJ2aWV3LlxuXG5UaGlzIGlzIGEgZm9yayBvZiB0aGUgb3JpZ2luYWwgXCJTU0ggU2VhcmNoIFByb3ZpZGVyXCIsIHVwZGF0ZWQgdG8gd29yayB3aXRoIG5ld2VyIEdub21lLVNoZWxscy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAibmFtZSI6ICJTU0ggU2VhcmNoIFByb3ZpZGVyIFJlYm9ybiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9GLWktZi9zc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAidXVpZCI6ICJzc2gtc2VhcmNoLXByb3ZpZGVyQGV4dGVuc2lvbnMuZ25vbWUtc2hlbGwuZmlmaS5vcmciLAogICJ2Y3NfcmV2aXNpb24iOiAidjEwLTAtZ2E4ZDA0YjIiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "40": {"version": "10", "sha256": "00b7arbds38bybh3f8w8jk2nglfkwkq2van2nzhqhzscklll0k0f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgU1NIIHNlYXJjaCByZXN1bHRzIGluIG92ZXJ2aWV3LlxuXG5UaGlzIGlzIGEgZm9yayBvZiB0aGUgb3JpZ2luYWwgXCJTU0ggU2VhcmNoIFByb3ZpZGVyXCIsIHVwZGF0ZWQgdG8gd29yayB3aXRoIG5ld2VyIEdub21lLVNoZWxscy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAibmFtZSI6ICJTU0ggU2VhcmNoIFByb3ZpZGVyIFJlYm9ybiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9GLWktZi9zc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAidXVpZCI6ICJzc2gtc2VhcmNoLXByb3ZpZGVyQGV4dGVuc2lvbnMuZ25vbWUtc2hlbGwuZmlmaS5vcmciLAogICJ2Y3NfcmV2aXNpb24iOiAidjEwLTAtZ2E4ZDA0YjIiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "41": {"version": "10", "sha256": "00b7arbds38bybh3f8w8jk2nglfkwkq2van2nzhqhzscklll0k0f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgU1NIIHNlYXJjaCByZXN1bHRzIGluIG92ZXJ2aWV3LlxuXG5UaGlzIGlzIGEgZm9yayBvZiB0aGUgb3JpZ2luYWwgXCJTU0ggU2VhcmNoIFByb3ZpZGVyXCIsIHVwZGF0ZWQgdG8gd29yayB3aXRoIG5ld2VyIEdub21lLVNoZWxscy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAibmFtZSI6ICJTU0ggU2VhcmNoIFByb3ZpZGVyIFJlYm9ybiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9GLWktZi9zc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAidXVpZCI6ICJzc2gtc2VhcmNoLXByb3ZpZGVyQGV4dGVuc2lvbnMuZ25vbWUtc2hlbGwuZmlmaS5vcmciLAogICJ2Y3NfcmV2aXNpb24iOiAidjEwLTAtZ2E4ZDA0YjIiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}}}
-, {"uuid": "weeks-start-on-monday@extensions.gnome-shell.fifi.org", "name": "Weeks Start on Monday Again...", "pname": "weeks-start-on-monday-again", "description": "... or maybe not, and that's why the start day is configurable in the preferences.\n\nThis is an updated version of the \"Weeks Start on Monday\" extension for newer Gnome Shells.", "link": "https://extensions.gnome.org/extension/1720/weeks-start-on-monday-again/", "shell_version_map": {"38": {"version": "11", "sha256": "00gjfnhl6hpx5g3hjh50dciwjxhcmw5b4vqb6azjlg71nwjm9a3j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIi4uLiBvciBtYXliZSBub3QsIGFuZCB0aGF0J3Mgd2h5IHRoZSBzdGFydCBkYXkgaXMgY29uZmlndXJhYmxlIGluIHRoZSBwcmVmZXJlbmNlcy5cblxuVGhpcyBpcyBhbiB1cGRhdGVkIHZlcnNpb24gb2YgdGhlIFwiV2Vla3MgU3RhcnQgb24gTW9uZGF5XCIgZXh0ZW5zaW9uIGZvciBuZXdlciBHbm9tZSBTaGVsbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAibmFtZSI6ICJXZWVrcyBTdGFydCBvbiBNb25kYXkgQWdhaW4uLi4iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9GLWktZi93ZWVrcy1zdGFydC1vbi1tb25kYXkiLAogICJ1dWlkIjogIndlZWtzLXN0YXJ0LW9uLW1vbmRheUBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxMS0wLWc2OTc1ZGNkIiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "11", "sha256": "00gjfnhl6hpx5g3hjh50dciwjxhcmw5b4vqb6azjlg71nwjm9a3j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIi4uLiBvciBtYXliZSBub3QsIGFuZCB0aGF0J3Mgd2h5IHRoZSBzdGFydCBkYXkgaXMgY29uZmlndXJhYmxlIGluIHRoZSBwcmVmZXJlbmNlcy5cblxuVGhpcyBpcyBhbiB1cGRhdGVkIHZlcnNpb24gb2YgdGhlIFwiV2Vla3MgU3RhcnQgb24gTW9uZGF5XCIgZXh0ZW5zaW9uIGZvciBuZXdlciBHbm9tZSBTaGVsbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAibmFtZSI6ICJXZWVrcyBTdGFydCBvbiBNb25kYXkgQWdhaW4uLi4iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9GLWktZi93ZWVrcy1zdGFydC1vbi1tb25kYXkiLAogICJ1dWlkIjogIndlZWtzLXN0YXJ0LW9uLW1vbmRheUBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxMS0wLWc2OTc1ZGNkIiwKICAidmVyc2lvbiI6IDExCn0="}, "41": {"version": "11", "sha256": "00gjfnhl6hpx5g3hjh50dciwjxhcmw5b4vqb6azjlg71nwjm9a3j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIi4uLiBvciBtYXliZSBub3QsIGFuZCB0aGF0J3Mgd2h5IHRoZSBzdGFydCBkYXkgaXMgY29uZmlndXJhYmxlIGluIHRoZSBwcmVmZXJlbmNlcy5cblxuVGhpcyBpcyBhbiB1cGRhdGVkIHZlcnNpb24gb2YgdGhlIFwiV2Vla3MgU3RhcnQgb24gTW9uZGF5XCIgZXh0ZW5zaW9uIGZvciBuZXdlciBHbm9tZSBTaGVsbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAibmFtZSI6ICJXZWVrcyBTdGFydCBvbiBNb25kYXkgQWdhaW4uLi4iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9GLWktZi93ZWVrcy1zdGFydC1vbi1tb25kYXkiLAogICJ1dWlkIjogIndlZWtzLXN0YXJ0LW9uLW1vbmRheUBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxMS0wLWc2OTc1ZGNkIiwKICAidmVyc2lvbiI6IDExCn0="}}}
+, {"uuid": "ssh-search-provider@extensions.gnome-shell.fifi.org", "name": "SSH Search Provider Reborn", "pname": "ssh-search-provider-reborn", "description": "Provide SSH search results in overview.\n\nThis is a fork of the original \"SSH Search Provider\", updated to work with newer Gnome-Shells.", "link": "https://extensions.gnome.org/extension/1714/ssh-search-provider-reborn/", "shell_version_map": {"38": {"version": "11", "sha256": "1dyzkbzy2lg2h3ixz1i86hbrh69irw70whbrl8vw0m5yypfm15wm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgU1NIIHNlYXJjaCByZXN1bHRzIGluIG92ZXJ2aWV3LlxuXG5UaGlzIGlzIGEgZm9yayBvZiB0aGUgb3JpZ2luYWwgXCJTU0ggU2VhcmNoIFByb3ZpZGVyXCIsIHVwZGF0ZWQgdG8gd29yayB3aXRoIG5ld2VyIEdub21lLVNoZWxscy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAibmFtZSI6ICJTU0ggU2VhcmNoIFByb3ZpZGVyIFJlYm9ybiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvc3NoLXNlYXJjaC1wcm92aWRlciIsCiAgInV1aWQiOiAic3NoLXNlYXJjaC1wcm92aWRlckBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxMS0wLWc2M2M0NjZjIiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "11", "sha256": "1dyzkbzy2lg2h3ixz1i86hbrh69irw70whbrl8vw0m5yypfm15wm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgU1NIIHNlYXJjaCByZXN1bHRzIGluIG92ZXJ2aWV3LlxuXG5UaGlzIGlzIGEgZm9yayBvZiB0aGUgb3JpZ2luYWwgXCJTU0ggU2VhcmNoIFByb3ZpZGVyXCIsIHVwZGF0ZWQgdG8gd29yayB3aXRoIG5ld2VyIEdub21lLVNoZWxscy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAibmFtZSI6ICJTU0ggU2VhcmNoIFByb3ZpZGVyIFJlYm9ybiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvc3NoLXNlYXJjaC1wcm92aWRlciIsCiAgInV1aWQiOiAic3NoLXNlYXJjaC1wcm92aWRlckBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxMS0wLWc2M2M0NjZjIiwKICAidmVyc2lvbiI6IDExCn0="}, "41": {"version": "11", "sha256": "1dyzkbzy2lg2h3ixz1i86hbrh69irw70whbrl8vw0m5yypfm15wm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgU1NIIHNlYXJjaCByZXN1bHRzIGluIG92ZXJ2aWV3LlxuXG5UaGlzIGlzIGEgZm9yayBvZiB0aGUgb3JpZ2luYWwgXCJTU0ggU2VhcmNoIFByb3ZpZGVyXCIsIHVwZGF0ZWQgdG8gd29yayB3aXRoIG5ld2VyIEdub21lLVNoZWxscy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAibmFtZSI6ICJTU0ggU2VhcmNoIFByb3ZpZGVyIFJlYm9ybiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvc3NoLXNlYXJjaC1wcm92aWRlciIsCiAgInV1aWQiOiAic3NoLXNlYXJjaC1wcm92aWRlckBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxMS0wLWc2M2M0NjZjIiwKICAidmVyc2lvbiI6IDExCn0="}, "42": {"version": "11", "sha256": "1dyzkbzy2lg2h3ixz1i86hbrh69irw70whbrl8vw0m5yypfm15wm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByb3ZpZGUgU1NIIHNlYXJjaCByZXN1bHRzIGluIG92ZXJ2aWV3LlxuXG5UaGlzIGlzIGEgZm9yayBvZiB0aGUgb3JpZ2luYWwgXCJTU0ggU2VhcmNoIFByb3ZpZGVyXCIsIHVwZGF0ZWQgdG8gd29yayB3aXRoIG5ld2VyIEdub21lLVNoZWxscy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAibmFtZSI6ICJTU0ggU2VhcmNoIFByb3ZpZGVyIFJlYm9ybiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zc2gtc2VhcmNoLXByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvc3NoLXNlYXJjaC1wcm92aWRlciIsCiAgInV1aWQiOiAic3NoLXNlYXJjaC1wcm92aWRlckBleHRlbnNpb25zLmdub21lLXNoZWxsLmZpZmkub3JnIiwKICAidmNzX3JldmlzaW9uIjogInYxMS0wLWc2M2M0NjZjIiwKICAidmVyc2lvbiI6IDExCn0="}}}
+, {"uuid": "weeks-start-on-monday@extensions.gnome-shell.fifi.org", "name": "Weeks Start on Monday Again...", "pname": "weeks-start-on-monday-again", "description": "... or maybe not, and that's why the start day is configurable in the preferences.\n\nThis is an updated version of the \"Weeks Start on Monday\" extension for newer Gnome Shells.", "link": "https://extensions.gnome.org/extension/1720/weeks-start-on-monday-again/", "shell_version_map": {"38": {"version": "12", "sha256": "1xfl3kid3nymarf696271ixsdxd6vvhadrh5lmp46k11s0dds64m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIi4uLiBvciBtYXliZSBub3QsIGFuZCB0aGF0J3Mgd2h5IHRoZSBzdGFydCBkYXkgaXMgY29uZmlndXJhYmxlIGluIHRoZSBwcmVmZXJlbmNlcy5cblxuVGhpcyBpcyBhbiB1cGRhdGVkIHZlcnNpb24gb2YgdGhlIFwiV2Vla3MgU3RhcnQgb24gTW9uZGF5XCIgZXh0ZW5zaW9uIGZvciBuZXdlciBHbm9tZSBTaGVsbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAibmFtZSI6ICJXZWVrcyBTdGFydCBvbiBNb25kYXkgQWdhaW4uLi4iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvd2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAidXVpZCI6ICJ3ZWVrcy1zdGFydC1vbi1tb25kYXlAZXh0ZW5zaW9ucy5nbm9tZS1zaGVsbC5maWZpLm9yZyIsCiAgInZjc19yZXZpc2lvbiI6ICJ2MTItMC1nOTI1NzQxZSIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "1xfl3kid3nymarf696271ixsdxd6vvhadrh5lmp46k11s0dds64m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIi4uLiBvciBtYXliZSBub3QsIGFuZCB0aGF0J3Mgd2h5IHRoZSBzdGFydCBkYXkgaXMgY29uZmlndXJhYmxlIGluIHRoZSBwcmVmZXJlbmNlcy5cblxuVGhpcyBpcyBhbiB1cGRhdGVkIHZlcnNpb24gb2YgdGhlIFwiV2Vla3MgU3RhcnQgb24gTW9uZGF5XCIgZXh0ZW5zaW9uIGZvciBuZXdlciBHbm9tZSBTaGVsbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAibmFtZSI6ICJXZWVrcyBTdGFydCBvbiBNb25kYXkgQWdhaW4uLi4iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvd2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAidXVpZCI6ICJ3ZWVrcy1zdGFydC1vbi1tb25kYXlAZXh0ZW5zaW9ucy5nbm9tZS1zaGVsbC5maWZpLm9yZyIsCiAgInZjc19yZXZpc2lvbiI6ICJ2MTItMC1nOTI1NzQxZSIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "1xfl3kid3nymarf696271ixsdxd6vvhadrh5lmp46k11s0dds64m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIi4uLiBvciBtYXliZSBub3QsIGFuZCB0aGF0J3Mgd2h5IHRoZSBzdGFydCBkYXkgaXMgY29uZmlndXJhYmxlIGluIHRoZSBwcmVmZXJlbmNlcy5cblxuVGhpcyBpcyBhbiB1cGRhdGVkIHZlcnNpb24gb2YgdGhlIFwiV2Vla3MgU3RhcnQgb24gTW9uZGF5XCIgZXh0ZW5zaW9uIGZvciBuZXdlciBHbm9tZSBTaGVsbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAibmFtZSI6ICJXZWVrcyBTdGFydCBvbiBNb25kYXkgQWdhaW4uLi4iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvd2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAidXVpZCI6ICJ3ZWVrcy1zdGFydC1vbi1tb25kYXlAZXh0ZW5zaW9ucy5nbm9tZS1zaGVsbC5maWZpLm9yZyIsCiAgInZjc19yZXZpc2lvbiI6ICJ2MTItMC1nOTI1NzQxZSIsCiAgInZlcnNpb24iOiAxMgp9"}, "42": {"version": "12", "sha256": "1xfl3kid3nymarf696271ixsdxd6vvhadrh5lmp46k11s0dds64m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIi4uLiBvciBtYXliZSBub3QsIGFuZCB0aGF0J3Mgd2h5IHRoZSBzdGFydCBkYXkgaXMgY29uZmlndXJhYmxlIGluIHRoZSBwcmVmZXJlbmNlcy5cblxuVGhpcyBpcyBhbiB1cGRhdGVkIHZlcnNpb24gb2YgdGhlIFwiV2Vla3MgU3RhcnQgb24gTW9uZGF5XCIgZXh0ZW5zaW9uIGZvciBuZXdlciBHbm9tZSBTaGVsbHMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAibmFtZSI6ICJXZWVrcyBTdGFydCBvbiBNb25kYXkgQWdhaW4uLi4iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMud2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjMzLjkwIiwKICAgICIzLjM2IiwKICAgICIzLjM1LjkyIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRi1pLWYvd2Vla3Mtc3RhcnQtb24tbW9uZGF5IiwKICAidXVpZCI6ICJ3ZWVrcy1zdGFydC1vbi1tb25kYXlAZXh0ZW5zaW9ucy5nbm9tZS1zaGVsbC5maWZpLm9yZyIsCiAgInZjc19yZXZpc2lvbiI6ICJ2MTItMC1nOTI1NzQxZSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
 , {"uuid": "wintile@nowsci.com", "name": "WinTile: Windows 10 window tiling for GNOME", "pname": "wintile-windows-10-window-tiling-for-gnome", "description": "[NOTE] When upgrading to V7, you may get an ERROR. Log out and back in and V7 will begin to work.\n\nWinTile is a hotkey driven window tiling system for GNOME that imitates the standard Win-Arrow keys of Windows 10, allowing you to maximize, maximize to sides, or 1/4 sized to corner across a single or multiple monitors using just Super+Arrow.\n\nAs of v3, WinTile also supports:\n- 2, 3, or 4 columns for standard or ultrawide monitors\n- Top/bottom half support\n- Mouse preview and snapping for placing windows\n- Toggling of 'maximize' mode, which adds/removes GNOME animations\n\nAs of v6, supports installs in GNOME 3.38+\n\nAs of v7, supports installs in GNOME 40+", "link": "https://extensions.gnome.org/extension/1723/wintile-windows-10-window-tiling-for-gnome/", "shell_version_map": {"38": {"version": "7", "sha256": "1nx0psgaj33ipfsnxinvz2vjmdhhvms0bqdflhmkbh1003m6103x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIltOT1RFXSBXaGVuIHVwZ3JhZGluZyB0byBWNywgeW91IG1heSBnZXQgYW4gRVJST1IuIExvZyBvdXQgYW5kIGJhY2sgaW4gYW5kIFY3IHdpbGwgYmVnaW4gdG8gd29yay5cblxuV2luVGlsZSBpcyBhIGhvdGtleSBkcml2ZW4gd2luZG93IHRpbGluZyBzeXN0ZW0gZm9yIEdOT01FIHRoYXQgaW1pdGF0ZXMgdGhlIHN0YW5kYXJkIFdpbi1BcnJvdyBrZXlzIG9mIFdpbmRvd3MgMTAsIGFsbG93aW5nIHlvdSB0byBtYXhpbWl6ZSwgbWF4aW1pemUgdG8gc2lkZXMsIG9yIDEvNCBzaXplZCB0byBjb3JuZXIgYWNyb3NzIGEgc2luZ2xlIG9yIG11bHRpcGxlIG1vbml0b3JzIHVzaW5nIGp1c3QgU3VwZXIrQXJyb3cuXG5cbkFzIG9mIHYzLCBXaW5UaWxlIGFsc28gc3VwcG9ydHM6XG4tIDIsIDMsIG9yIDQgY29sdW1ucyBmb3Igc3RhbmRhcmQgb3IgdWx0cmF3aWRlIG1vbml0b3JzXG4tIFRvcC9ib3R0b20gaGFsZiBzdXBwb3J0XG4tIE1vdXNlIHByZXZpZXcgYW5kIHNuYXBwaW5nIGZvciBwbGFjaW5nIHdpbmRvd3Ncbi0gVG9nZ2xpbmcgb2YgJ21heGltaXplJyBtb2RlLCB3aGljaCBhZGRzL3JlbW92ZXMgR05PTUUgYW5pbWF0aW9uc1xuXG5BcyBvZiB2Niwgc3VwcG9ydHMgaW5zdGFsbHMgaW4gR05PTUUgMy4zOCtcblxuQXMgb2YgdjcsIHN1cHBvcnRzIGluc3RhbGxzIGluIEdOT01FIDQwKyIsCiAgIm5hbWUiOiAiV2luVGlsZTogV2luZG93cyAxMCB3aW5kb3cgdGlsaW5nIGZvciBHTk9NRSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Ztc3RyYXQvd2ludGlsZSIsCiAgInV1aWQiOiAid2ludGlsZUBub3dzY2kuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "1nx0psgaj33ipfsnxinvz2vjmdhhvms0bqdflhmkbh1003m6103x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIltOT1RFXSBXaGVuIHVwZ3JhZGluZyB0byBWNywgeW91IG1heSBnZXQgYW4gRVJST1IuIExvZyBvdXQgYW5kIGJhY2sgaW4gYW5kIFY3IHdpbGwgYmVnaW4gdG8gd29yay5cblxuV2luVGlsZSBpcyBhIGhvdGtleSBkcml2ZW4gd2luZG93IHRpbGluZyBzeXN0ZW0gZm9yIEdOT01FIHRoYXQgaW1pdGF0ZXMgdGhlIHN0YW5kYXJkIFdpbi1BcnJvdyBrZXlzIG9mIFdpbmRvd3MgMTAsIGFsbG93aW5nIHlvdSB0byBtYXhpbWl6ZSwgbWF4aW1pemUgdG8gc2lkZXMsIG9yIDEvNCBzaXplZCB0byBjb3JuZXIgYWNyb3NzIGEgc2luZ2xlIG9yIG11bHRpcGxlIG1vbml0b3JzIHVzaW5nIGp1c3QgU3VwZXIrQXJyb3cuXG5cbkFzIG9mIHYzLCBXaW5UaWxlIGFsc28gc3VwcG9ydHM6XG4tIDIsIDMsIG9yIDQgY29sdW1ucyBmb3Igc3RhbmRhcmQgb3IgdWx0cmF3aWRlIG1vbml0b3JzXG4tIFRvcC9ib3R0b20gaGFsZiBzdXBwb3J0XG4tIE1vdXNlIHByZXZpZXcgYW5kIHNuYXBwaW5nIGZvciBwbGFjaW5nIHdpbmRvd3Ncbi0gVG9nZ2xpbmcgb2YgJ21heGltaXplJyBtb2RlLCB3aGljaCBhZGRzL3JlbW92ZXMgR05PTUUgYW5pbWF0aW9uc1xuXG5BcyBvZiB2Niwgc3VwcG9ydHMgaW5zdGFsbHMgaW4gR05PTUUgMy4zOCtcblxuQXMgb2YgdjcsIHN1cHBvcnRzIGluc3RhbGxzIGluIEdOT01FIDQwKyIsCiAgIm5hbWUiOiAiV2luVGlsZTogV2luZG93cyAxMCB3aW5kb3cgdGlsaW5nIGZvciBHTk9NRSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Ztc3RyYXQvd2ludGlsZSIsCiAgInV1aWQiOiAid2ludGlsZUBub3dzY2kuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "focusli@armonge.info", "name": "Focusli", "pname": "focusli", "description": "Improve focus and increase your productive by listening to different sounds", "link": "https://extensions.gnome.org/extension/1726/focusli/", "shell_version_map": {"40": {"version": "7", "sha256": "0061krhxrp5wrqi4dflmd8anw3szqq335y2z2ka48pf662vkp7km", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkltcHJvdmUgZm9jdXMgYW5kIGluY3JlYXNlIHlvdXIgcHJvZHVjdGl2ZSBieSBsaXN0ZW5pbmcgdG8gZGlmZmVyZW50IHNvdW5kcyIsCiAgIm5hbWUiOiAiRm9jdXNsaSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hcm1vbmdlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1mb2N1c2xpIiwKICAidXVpZCI6ICJmb2N1c2xpQGFybW9uZ2UuaW5mbyIsCiAgInZlcnNpb24iOiA3Cn0="}}}
-, {"uuid": "gtktitlebar@velitasali.github.io", "name": "GTK Title Bar", "pname": "gtk-title-bar", "description": "Remove title bars for non-GTK apps with minimal interference with the default workflow", "link": "https://extensions.gnome.org/extension/1732/gtk-title-bar/", "shell_version_map": {"40": {"version": "10", "sha256": "100mb5ga559jcv0f3a7drcki682vpgnkl8p1hga7w8mbckkybwkx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aXRsZSBiYXJzIGZvciBub24tR1RLIGFwcHMgd2l0aCBtaW5pbWFsIGludGVyZmVyZW5jZSB3aXRoIHRoZSBkZWZhdWx0IHdvcmtmbG93IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RrdGl0bGViYXIiLAogICJuYW1lIjogIkdUSyBUaXRsZSBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ3RrdGl0bGViYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92ZWxpdGFzYWxpL2d0a3RpdGxlYmFyIiwKICAidXVpZCI6ICJndGt0aXRsZWJhckB2ZWxpdGFzYWxpLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "100mb5ga559jcv0f3a7drcki682vpgnkl8p1hga7w8mbckkybwkx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aXRsZSBiYXJzIGZvciBub24tR1RLIGFwcHMgd2l0aCBtaW5pbWFsIGludGVyZmVyZW5jZSB3aXRoIHRoZSBkZWZhdWx0IHdvcmtmbG93IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RrdGl0bGViYXIiLAogICJuYW1lIjogIkdUSyBUaXRsZSBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ3RrdGl0bGViYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92ZWxpdGFzYWxpL2d0a3RpdGxlYmFyIiwKICAidXVpZCI6ICJndGt0aXRsZWJhckB2ZWxpdGFzYWxpLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}}}
+, {"uuid": "gtktitlebar@velitasali.github.io", "name": "GTK Title Bar", "pname": "gtk-title-bar", "description": "Remove title bars for non-GTK apps with minimal interference with the default workflow", "link": "https://extensions.gnome.org/extension/1732/gtk-title-bar/", "shell_version_map": {"40": {"version": "10", "sha256": "100mb5ga559jcv0f3a7drcki682vpgnkl8p1hga7w8mbckkybwkx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aXRsZSBiYXJzIGZvciBub24tR1RLIGFwcHMgd2l0aCBtaW5pbWFsIGludGVyZmVyZW5jZSB3aXRoIHRoZSBkZWZhdWx0IHdvcmtmbG93IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RrdGl0bGViYXIiLAogICJuYW1lIjogIkdUSyBUaXRsZSBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ3RrdGl0bGViYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92ZWxpdGFzYWxpL2d0a3RpdGxlYmFyIiwKICAidXVpZCI6ICJndGt0aXRsZWJhckB2ZWxpdGFzYWxpLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "100mb5ga559jcv0f3a7drcki682vpgnkl8p1hga7w8mbckkybwkx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aXRsZSBiYXJzIGZvciBub24tR1RLIGFwcHMgd2l0aCBtaW5pbWFsIGludGVyZmVyZW5jZSB3aXRoIHRoZSBkZWZhdWx0IHdvcmtmbG93IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RrdGl0bGViYXIiLAogICJuYW1lIjogIkdUSyBUaXRsZSBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ3RrdGl0bGViYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92ZWxpdGFzYWxpL2d0a3RpdGxlYmFyIiwKICAidXVpZCI6ICJndGt0aXRsZWJhckB2ZWxpdGFzYWxpLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}, "42": {"version": "10", "sha256": "100mb5ga559jcv0f3a7drcki682vpgnkl8p1hga7w8mbckkybwkx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aXRsZSBiYXJzIGZvciBub24tR1RLIGFwcHMgd2l0aCBtaW5pbWFsIGludGVyZmVyZW5jZSB3aXRoIHRoZSBkZWZhdWx0IHdvcmtmbG93IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3RrdGl0bGViYXIiLAogICJuYW1lIjogIkdUSyBUaXRsZSBCYXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ3RrdGl0bGViYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92ZWxpdGFzYWxpL2d0a3RpdGxlYmFyIiwKICAidXVpZCI6ICJndGt0aXRsZWJhckB2ZWxpdGFzYWxpLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}}}
 , {"uuid": "quicklists@maestroschan.fr", "name": "Quicklists", "pname": "quicklists", "description": "Add dynamic quicklists to app icons, such as file manager bookmarks and recent files.", "link": "https://extensions.gnome.org/extension/1747/quicklists/", "shell_version_map": {"38": {"version": "7", "sha256": "1cck1k1kf116z85m5fby0hhaa7fplhryv0nv1pdc3h8200i39580", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBkeW5hbWljIHF1aWNrbGlzdHMgdG8gYXBwIGljb25zLCBzdWNoIGFzIGZpbGUgbWFuYWdlciBib29rbWFya3MgYW5kIHJlY2VudCBmaWxlcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJxdWlja2xpc3RzIiwKICAibmFtZSI6ICJRdWlja2xpc3RzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnF1aWNrbGlzdHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tYW9zY2hhbnovcXVpY2tsaXN0cy1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogInF1aWNrbGlzdHNAbWFlc3Ryb3NjaGFuLmZyIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "lan-ip-address@mrhuber.com", "name": "LAN IP Address", "pname": "lan-ip-address", "description": "Show LAN IP address on GNOME panel. Do not show loopback addresses (127.0.0.0/8) or Docker networks.", "link": "https://extensions.gnome.org/extension/1762/lan-ip-address/", "shell_version_map": {"38": {"version": "8", "sha256": "0l81fiznq3q7q2m0ryjcmba9kzqhf0a7hq8j2sahr49acd6ih9wq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgTEFOIElQIGFkZHJlc3Mgb24gR05PTUUgcGFuZWwuIERvIG5vdCBzaG93IGxvb3BiYWNrIGFkZHJlc3NlcyAoMTI3LjAuMC4wLzgpIG9yIERvY2tlciBuZXR3b3Jrcy4iLAogICJuYW1lIjogIkxBTiBJUCBBZGRyZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3Nob2xpdGgvZ25vbWUtZXh0ZW5zaW9uLWxhbi1pcC1hZGRyZXNzIiwKICAidXVpZCI6ICJsYW4taXAtYWRkcmVzc0Btcmh1YmVyLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "8", "sha256": "0l81fiznq3q7q2m0ryjcmba9kzqhf0a7hq8j2sahr49acd6ih9wq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgTEFOIElQIGFkZHJlc3Mgb24gR05PTUUgcGFuZWwuIERvIG5vdCBzaG93IGxvb3BiYWNrIGFkZHJlc3NlcyAoMTI3LjAuMC4wLzgpIG9yIERvY2tlciBuZXR3b3Jrcy4iLAogICJuYW1lIjogIkxBTiBJUCBBZGRyZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3Nob2xpdGgvZ25vbWUtZXh0ZW5zaW9uLWxhbi1pcC1hZGRyZXNzIiwKICAidXVpZCI6ICJsYW4taXAtYWRkcmVzc0Btcmh1YmVyLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "0l81fiznq3q7q2m0ryjcmba9kzqhf0a7hq8j2sahr49acd6ih9wq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgTEFOIElQIGFkZHJlc3Mgb24gR05PTUUgcGFuZWwuIERvIG5vdCBzaG93IGxvb3BiYWNrIGFkZHJlc3NlcyAoMTI3LjAuMC4wLzgpIG9yIERvY2tlciBuZXR3b3Jrcy4iLAogICJuYW1lIjogIkxBTiBJUCBBZGRyZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3Nob2xpdGgvZ25vbWUtZXh0ZW5zaW9uLWxhbi1pcC1hZGRyZXNzIiwKICAidXVpZCI6ICJsYW4taXAtYWRkcmVzc0Btcmh1YmVyLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"uuid": "TransparentTopbar@enrico.sorio.net", "name": "Transparent Topbar", "pname": "transparent-topbar", "description": "Transparent Topbar with Multi monitors support", "link": "https://extensions.gnome.org/extension/1765/transparent-topbar/", "shell_version_map": {"38": {"version": "2", "sha256": "0rv7ddwrsmk7zrwyf2fkjhiv38pm4h0ijx1mppwji7vgvips0602", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zcGFyZW50IFRvcGJhciB3aXRoIE11bHRpIG1vbml0b3JzIHN1cHBvcnQiLAogICJuYW1lIjogIlRyYW5zcGFyZW50IFRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiVHJhbnNwYXJlbnRUb3BiYXJAZW5yaWNvLnNvcmlvLm5ldCIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "0rv7ddwrsmk7zrwyf2fkjhiv38pm4h0ijx1mppwji7vgvips0602", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zcGFyZW50IFRvcGJhciB3aXRoIE11bHRpIG1vbml0b3JzIHN1cHBvcnQiLAogICJuYW1lIjogIlRyYW5zcGFyZW50IFRvcGJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiVHJhbnNwYXJlbnRUb3BiYXJAZW5yaWNvLnNvcmlvLm5ldCIsCiAgInZlcnNpb24iOiAyCn0="}}}
@@ -237,7 +237,7 @@
 , {"uuid": "dict@sun.wxg@gmail.com", "name": "Screen word translate", "pname": "screen-word-translate", "description": "Translate word on the screen.\nDefault web address is translate.google.com, you can add the web address for your own language. Also you can contribute your web address to my github repo.\nUse hotkey Ctrl+Alt+j to toggle the function.\nUse hotkey Ctrl+Alt+o to show popup window", "link": "https://extensions.gnome.org/extension/1849/screen-word-translate/", "shell_version_map": {"38": {"version": "32", "sha256": "0wh9d0siggr49bfcx1308xx8rxc58nadnhp3mjj53i6fvja3cx62", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zbGF0ZSB3b3JkIG9uIHRoZSBzY3JlZW4uXG5EZWZhdWx0IHdlYiBhZGRyZXNzIGlzIHRyYW5zbGF0ZS5nb29nbGUuY29tLCB5b3UgY2FuIGFkZCB0aGUgd2ViIGFkZHJlc3MgZm9yIHlvdXIgb3duIGxhbmd1YWdlLiBBbHNvIHlvdSBjYW4gY29udHJpYnV0ZSB5b3VyIHdlYiBhZGRyZXNzIHRvIG15IGdpdGh1YiByZXBvLlxuVXNlIGhvdGtleSBDdHJsK0FsdCtqIHRvIHRvZ2dsZSB0aGUgZnVuY3Rpb24uXG5Vc2UgaG90a2V5IEN0cmwrQWx0K28gdG8gc2hvdyBwb3B1cCB3aW5kb3ciLAogICJuYW1lIjogIlNjcmVlbiB3b3JkIHRyYW5zbGF0ZSIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAic3VuLnd4Z0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdW53eGcvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWRpY3QiLAogICJ1dWlkIjogImRpY3RAc3VuLnd4Z0BnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMzIKfQ=="}, "40": {"version": "38", "sha256": "19rpi2hqznwzngzw9zsar00mhmqav8v7wbij4r7cai4jgvmk8459", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zbGF0ZSB3b3JkIG9uIHRoZSBzY3JlZW4uXG5EZWZhdWx0IHdlYiBhZGRyZXNzIGlzIHRyYW5zbGF0ZS5nb29nbGUuY29tLCB5b3UgY2FuIGFkZCB0aGUgd2ViIGFkZHJlc3MgZm9yIHlvdXIgb3duIGxhbmd1YWdlLiBBbHNvIHlvdSBjYW4gY29udHJpYnV0ZSB5b3VyIHdlYiBhZGRyZXNzIHRvIG15IGdpdGh1YiByZXBvLlxuVXNlIGhvdGtleSBDdHJsK0FsdCtqIHRvIHRvZ2dsZSB0aGUgZnVuY3Rpb24uXG5Vc2UgaG90a2V5IEN0cmwrQWx0K28gdG8gc2hvdyBwb3B1cCB3aW5kb3ciLAogICJuYW1lIjogIlNjcmVlbiB3b3JkIHRyYW5zbGF0ZSIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAic3VuLnd4Z0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tZGljdCIsCiAgInV1aWQiOiAiZGljdEBzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzOAp9"}, "41": {"version": "38", "sha256": "19rpi2hqznwzngzw9zsar00mhmqav8v7wbij4r7cai4jgvmk8459", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zbGF0ZSB3b3JkIG9uIHRoZSBzY3JlZW4uXG5EZWZhdWx0IHdlYiBhZGRyZXNzIGlzIHRyYW5zbGF0ZS5nb29nbGUuY29tLCB5b3UgY2FuIGFkZCB0aGUgd2ViIGFkZHJlc3MgZm9yIHlvdXIgb3duIGxhbmd1YWdlLiBBbHNvIHlvdSBjYW4gY29udHJpYnV0ZSB5b3VyIHdlYiBhZGRyZXNzIHRvIG15IGdpdGh1YiByZXBvLlxuVXNlIGhvdGtleSBDdHJsK0FsdCtqIHRvIHRvZ2dsZSB0aGUgZnVuY3Rpb24uXG5Vc2UgaG90a2V5IEN0cmwrQWx0K28gdG8gc2hvdyBwb3B1cCB3aW5kb3ciLAogICJuYW1lIjogIlNjcmVlbiB3b3JkIHRyYW5zbGF0ZSIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAic3VuLnd4Z0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N1bnd4Zy9nbm9tZS1zaGVsbC1leHRlbnNpb24tZGljdCIsCiAgInV1aWQiOiAiZGljdEBzdW4ud3hnQGdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzOAp9"}}}
 , {"uuid": "gamemode@christian.kellner.me", "name": "GameMode", "pname": "gamemode", "description": "Status indicator for GameMode", "link": "https://extensions.gnome.org/extension/1852/gamemode/", "shell_version_map": {"38": {"version": "6", "sha256": "05256a7rcw1db983w557cpl5vilkb0wg82xpja91j2lqnp7als5l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0YXR1cyBpbmRpY2F0b3IgZm9yIEdhbWVNb2RlIiwKICAiZXh0ZW5zaW9uLWlkIjogImdhbWVtb2RlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ2FtZW1vZGUtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJHYW1lTW9kZSIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJja2VsbG5lckByZWRoYXQuY29tIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdhbWVtb2RlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9naWNtby9nYW1lbW9kZS1leHRlbnNpb24iLAogICJ1dWlkIjogImdhbWVtb2RlQGNocmlzdGlhbi5rZWxsbmVyLm1lIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "6", "sha256": "05256a7rcw1db983w557cpl5vilkb0wg82xpja91j2lqnp7als5l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0YXR1cyBpbmRpY2F0b3IgZm9yIEdhbWVNb2RlIiwKICAiZXh0ZW5zaW9uLWlkIjogImdhbWVtb2RlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ2FtZW1vZGUtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJHYW1lTW9kZSIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJja2VsbG5lckByZWRoYXQuY29tIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdhbWVtb2RlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9naWNtby9nYW1lbW9kZS1leHRlbnNpb24iLAogICJ1dWlkIjogImdhbWVtb2RlQGNocmlzdGlhbi5rZWxsbmVyLm1lIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "41": {"version": "6", "sha256": "05256a7rcw1db983w557cpl5vilkb0wg82xpja91j2lqnp7als5l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN0YXR1cyBpbmRpY2F0b3IgZm9yIEdhbWVNb2RlIiwKICAiZXh0ZW5zaW9uLWlkIjogImdhbWVtb2RlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ2FtZW1vZGUtZXh0ZW5zaW9uIiwKICAibmFtZSI6ICJHYW1lTW9kZSIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJja2VsbG5lckByZWRoYXQuY29tIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdhbWVtb2RlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9naWNtby9nYW1lbW9kZS1leHRlbnNpb24iLAogICJ1dWlkIjogImdhbWVtb2RlQGNocmlzdGlhbi5rZWxsbmVyLm1lIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"uuid": "unredirect@vaina.lt", "name": "Disable unredirect fullscreen windows", "pname": "disable-unredirect-fullscreen-windows", "description": "Disables unredirect fullscreen windows in gnome-shell", "link": "https://extensions.gnome.org/extension/1873/disable-unredirect-fullscreen-windows/", "shell_version_map": {"38": {"version": "4", "sha256": "114536ils1avmwzqxf41q78wg50ynpiyq9kiw7smbxnx6l4pds0q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGVzIHVucmVkaXJlY3QgZnVsbHNjcmVlbiB3aW5kb3dzIGluIGdub21lLXNoZWxsIiwKICAibmFtZSI6ICJEaXNhYmxlIHVucmVkaXJlY3QgZnVsbHNjcmVlbiB3aW5kb3dzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJLYXppbWllcmFzIFZhaW5hIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIiLAogICAgIjMuNCIsCiAgICAiMy42IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjMuMTIiLAogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMzAiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thenlzbWFzdGVyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1kaXNhYmxlLXVucmVkaXJlY3QiLAogICJ1dWlkIjogInVucmVkaXJlY3RAdmFpbmEubHQiLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "114536ils1avmwzqxf41q78wg50ynpiyq9kiw7smbxnx6l4pds0q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGVzIHVucmVkaXJlY3QgZnVsbHNjcmVlbiB3aW5kb3dzIGluIGdub21lLXNoZWxsIiwKICAibmFtZSI6ICJEaXNhYmxlIHVucmVkaXJlY3QgZnVsbHNjcmVlbiB3aW5kb3dzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJLYXppbWllcmFzIFZhaW5hIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIiLAogICAgIjMuNCIsCiAgICAiMy42IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjMuMTIiLAogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMzAiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thenlzbWFzdGVyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1kaXNhYmxlLXVucmVkaXJlY3QiLAogICJ1dWlkIjogInVucmVkaXJlY3RAdmFpbmEubHQiLAogICJ2ZXJzaW9uIjogNAp9"}, "41": {"version": "4", "sha256": "114536ils1avmwzqxf41q78wg50ynpiyq9kiw7smbxnx6l4pds0q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGVzIHVucmVkaXJlY3QgZnVsbHNjcmVlbiB3aW5kb3dzIGluIGdub21lLXNoZWxsIiwKICAibmFtZSI6ICJEaXNhYmxlIHVucmVkaXJlY3QgZnVsbHNjcmVlbiB3aW5kb3dzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJLYXppbWllcmFzIFZhaW5hIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIiLAogICAgIjMuNCIsCiAgICAiMy42IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjMuMTIiLAogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMzAiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thenlzbWFzdGVyL2dub21lLXNoZWxsLWV4dGVuc2lvbi1kaXNhYmxlLXVucmVkaXJlY3QiLAogICJ1dWlkIjogInVucmVkaXJlY3RAdmFpbmEubHQiLAogICJ2ZXJzaW9uIjogNAp9"}}}
-, {"uuid": "krypto@sereneblue", "name": "krypto", "pname": "krypto", "description": "Cryptocurrency utility", "link": "https://extensions.gnome.org/extension/1913/krypto/", "shell_version_map": {"38": {"version": "5", "sha256": "0pmga4iqpm0i853lgqfhvnkxhji8m79pk9hgf24lvbpv8alkxzz3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyeXB0b2N1cnJlbmN5IHV0aWxpdHkiLAogICJuYW1lIjogImtyeXB0byIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NlcmVuZWJsdWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWtyeXB0byIsCiAgInV1aWQiOiAia3J5cHRvQHNlcmVuZWJsdWUiLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "17", "sha256": "0s6xv3ndjj2bhliyp9rxkxk3sqbbiff1x886ca03j5f8ywcg7x7i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyeXB0b2N1cnJlbmN5IHV0aWxpdHkiLAogICJuYW1lIjogImtyeXB0byIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NlcmVuZWJsdWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWtyeXB0byIsCiAgInV1aWQiOiAia3J5cHRvQHNlcmVuZWJsdWUiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "41": {"version": "17", "sha256": "0s6xv3ndjj2bhliyp9rxkxk3sqbbiff1x886ca03j5f8ywcg7x7i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyeXB0b2N1cnJlbmN5IHV0aWxpdHkiLAogICJuYW1lIjogImtyeXB0byIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NlcmVuZWJsdWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWtyeXB0byIsCiAgInV1aWQiOiAia3J5cHRvQHNlcmVuZWJsdWUiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
+, {"uuid": "krypto@sereneblue", "name": "krypto", "pname": "krypto", "description": "Cryptocurrency utility", "link": "https://extensions.gnome.org/extension/1913/krypto/", "shell_version_map": {"38": {"version": "5", "sha256": "0pmga4iqpm0i853lgqfhvnkxhji8m79pk9hgf24lvbpv8alkxzz3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyeXB0b2N1cnJlbmN5IHV0aWxpdHkiLAogICJuYW1lIjogImtyeXB0byIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NlcmVuZWJsdWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWtyeXB0byIsCiAgInV1aWQiOiAia3J5cHRvQHNlcmVuZWJsdWUiLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "17", "sha256": "0s6xv3ndjj2bhliyp9rxkxk3sqbbiff1x886ca03j5f8ywcg7x7i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyeXB0b2N1cnJlbmN5IHV0aWxpdHkiLAogICJuYW1lIjogImtyeXB0byIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NlcmVuZWJsdWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWtyeXB0byIsCiAgInV1aWQiOiAia3J5cHRvQHNlcmVuZWJsdWUiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "41": {"version": "17", "sha256": "0s6xv3ndjj2bhliyp9rxkxk3sqbbiff1x886ca03j5f8ywcg7x7i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyeXB0b2N1cnJlbmN5IHV0aWxpdHkiLAogICJuYW1lIjogImtyeXB0byIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NlcmVuZWJsdWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWtyeXB0byIsCiAgInV1aWQiOiAia3J5cHRvQHNlcmVuZWJsdWUiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "42": {"version": "17", "sha256": "0s6xv3ndjj2bhliyp9rxkxk3sqbbiff1x886ca03j5f8ywcg7x7i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyeXB0b2N1cnJlbmN5IHV0aWxpdHkiLAogICJuYW1lIjogImtyeXB0byIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3NlcmVuZWJsdWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWtyeXB0byIsCiAgInV1aWQiOiAia3J5cHRvQHNlcmVuZWJsdWUiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
 , {"uuid": "cmus-status@yagreg7.gmail.com", "name": "cmus status", "pname": "cmus-status", "description": "Shows cmus status", "link": "https://extensions.gnome.org/extension/1934/cmus-status/", "shell_version_map": {"38": {"version": "8", "sha256": "1a6b10kirzbjlllcnffznjlljicah172kpvs0p8rmwhcpn88i8hx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGNtdXMgc3RhdHVzIiwKICAibmFtZSI6ICJjbXVzIHN0YXR1cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jbXVzLXN0YXR1cy5nc2NoZW1hLnhtbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0dyZWdUaGVNYWRNb25rL2dub21lLWNtdXMtc3RhdHVzIiwKICAidXVpZCI6ICJjbXVzLXN0YXR1c0B5YWdyZWc3LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "10", "sha256": "0a1g8l2w46nky88db7vjpv3iz87jk967vfm3vnvi7rw9wqphkn9z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGNtdXMgc3RhdHVzIiwKICAibmFtZSI6ICJjbXVzIHN0YXR1cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jbXVzLXN0YXR1cy5nc2NoZW1hLnhtbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vR3JlZ1RoZU1hZE1vbmsvZ25vbWUtY211cy1zdGF0dXMiLAogICJ1dWlkIjogImNtdXMtc3RhdHVzQHlhZ3JlZzcuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "0a1g8l2w46nky88db7vjpv3iz87jk967vfm3vnvi7rw9wqphkn9z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGNtdXMgc3RhdHVzIiwKICAibmFtZSI6ICJjbXVzIHN0YXR1cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jbXVzLXN0YXR1cy5nc2NoZW1hLnhtbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vR3JlZ1RoZU1hZE1vbmsvZ25vbWUtY211cy1zdGF0dXMiLAogICJ1dWlkIjogImNtdXMtc3RhdHVzQHlhZ3JlZzcuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
 , {"uuid": "no-title-bar@jonaspoehler.de", "name": "No Title Bar - Forked", "pname": "no-title-bar-forked", "description": "No Title Bar removes the title bar from non-GTK applications and moves the window title and buttons to the top panel.\n\nTitlebars are also hidden for Wayland-native clients that don't use CSD. Some of the options may be incompatible with this. For issues on Wayland please visit github!\n\nThis is a fork of https://extensions.gnome.org/extension/1267/no-title-bar/ with added compatibility for Gnome 3.32+.\n\nThis extension depends on some Xorg utilities. To install them:\n\n⚫ Debian/Ubuntu: apt install x11-utils\n⚫ Fedora/RHEL: dnf install xorg-x11-utils\n⚫ Arch: pacman -S xorg-xprop", "link": "https://extensions.gnome.org/extension/2015/no-title-bar-forked/", "shell_version_map": {"38": {"version": "5", "sha256": "0kch8yra13813gg3wa90lm57skqshmj3j1147lrqwhl9va9rk4q6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vIFRpdGxlIEJhciByZW1vdmVzIHRoZSB0aXRsZSBiYXIgZnJvbSBub24tR1RLIGFwcGxpY2F0aW9ucyBhbmQgbW92ZXMgdGhlIHdpbmRvdyB0aXRsZSBhbmQgYnV0dG9ucyB0byB0aGUgdG9wIHBhbmVsLlxuXG5UaXRsZWJhcnMgYXJlIGFsc28gaGlkZGVuIGZvciBXYXlsYW5kLW5hdGl2ZSBjbGllbnRzIHRoYXQgZG9uJ3QgdXNlIENTRC4gU29tZSBvZiB0aGUgb3B0aW9ucyBtYXkgYmUgaW5jb21wYXRpYmxlIHdpdGggdGhpcy4gRm9yIGlzc3VlcyBvbiBXYXlsYW5kIHBsZWFzZSB2aXNpdCBnaXRodWIhXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzEyNjcvbm8tdGl0bGUtYmFyLyB3aXRoIGFkZGVkIGNvbXBhdGliaWxpdHkgZm9yIEdub21lIDMuMzIrLlxuXG5UaGlzIGV4dGVuc2lvbiBkZXBlbmRzIG9uIHNvbWUgWG9yZyB1dGlsaXRpZXMuIFRvIGluc3RhbGwgdGhlbTpcblxuXHUyNmFiIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuXHUyNmFiIEZlZG9yYS9SSEVMOiBkbmYgaW5zdGFsbCB4b3JnLXgxMS11dGlsc1xuXHUyNmFiIEFyY2g6IHBhY21hbiAtUyB4b3JnLXhwcm9wIiwKICAibmFtZSI6ICJObyBUaXRsZSBCYXIgLSBGb3JrZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wb2VobGVyai9uby10aXRsZS1iYXIiLAogICJ1dWlkIjogIm5vLXRpdGxlLWJhckBqb25hc3BvZWhsZXIuZGUiLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "6", "sha256": "1plnj999qynsfvab6s01rfrdvw6m0s19b4zirhmlqrpax9vjl3zm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vIFRpdGxlIEJhciByZW1vdmVzIHRoZSB0aXRsZSBiYXIgZnJvbSBub24tR1RLIGFwcGxpY2F0aW9ucyBhbmQgbW92ZXMgdGhlIHdpbmRvdyB0aXRsZSBhbmQgYnV0dG9ucyB0byB0aGUgdG9wIHBhbmVsLlxuXG5UaXRsZWJhcnMgYXJlIGFsc28gaGlkZGVuIGZvciBXYXlsYW5kLW5hdGl2ZSBjbGllbnRzIHRoYXQgZG9uJ3QgdXNlIENTRC4gU29tZSBvZiB0aGUgb3B0aW9ucyBtYXkgYmUgaW5jb21wYXRpYmxlIHdpdGggdGhpcy4gRm9yIGlzc3VlcyBvbiBXYXlsYW5kIHBsZWFzZSB2aXNpdCBnaXRodWIhXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzEyNjcvbm8tdGl0bGUtYmFyLyB3aXRoIGFkZGVkIGNvbXBhdGliaWxpdHkgZm9yIEdub21lIDMuMzIrLlxuXG5UaGlzIGV4dGVuc2lvbiBkZXBlbmRzIG9uIHNvbWUgWG9yZyB1dGlsaXRpZXMuIFRvIGluc3RhbGwgdGhlbTpcblxuXHUyNmFiIERlYmlhbi9VYnVudHU6IGFwdCBpbnN0YWxsIHgxMS11dGlsc1xuXHUyNmFiIEZlZG9yYS9SSEVMOiBkbmYgaW5zdGFsbCB4b3JnLXgxMS11dGlsc1xuXHUyNmFiIEFyY2g6IHBhY21hbiAtUyB4b3JnLXhwcm9wIiwKICAibmFtZSI6ICJObyBUaXRsZSBCYXIgLSBGb3JrZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcG9laGxlcmovbm8tdGl0bGUtYmFyIiwKICAidXVpZCI6ICJuby10aXRsZS1iYXJAam9uYXNwb2VobGVyLmRlIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"uuid": "application_view_when_empty@fawtytoo", "name": "Show Application View When Workspace Empty", "pname": "show-application-view-when-workspace-empty", "description": "Shows the application view when the workspace is or becomes empty, such as switching to an empty workspace, when all windows on a workspace are closed, or after login. Starting applications or switching to a workspace with open windows will hide the application view if it's showing.\nFrom version 22, this extension waits for any window closing animation to complete (if enabled) before showing the application view.", "link": "https://extensions.gnome.org/extension/2036/show-application-view-when-workspace-empty/", "shell_version_map": {"38": {"version": "24", "sha256": "1g8c9pz8i35kap730ly0h3lzz2qrzc9057zw9mpcwqkqkp6v1aw4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSBhcHBsaWNhdGlvbiB2aWV3IHdoZW4gdGhlIHdvcmtzcGFjZSBpcyBvciBiZWNvbWVzIGVtcHR5LCBzdWNoIGFzIHN3aXRjaGluZyB0byBhbiBlbXB0eSB3b3Jrc3BhY2UsIHdoZW4gYWxsIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2UgYXJlIGNsb3NlZCwgb3IgYWZ0ZXIgbG9naW4uIFN0YXJ0aW5nIGFwcGxpY2F0aW9ucyBvciBzd2l0Y2hpbmcgdG8gYSB3b3Jrc3BhY2Ugd2l0aCBvcGVuIHdpbmRvd3Mgd2lsbCBoaWRlIHRoZSBhcHBsaWNhdGlvbiB2aWV3IGlmIGl0J3Mgc2hvd2luZy5cbkZyb20gdmVyc2lvbiAyMiwgdGhpcyBleHRlbnNpb24gd2FpdHMgZm9yIGFueSB3aW5kb3cgY2xvc2luZyBhbmltYXRpb24gdG8gY29tcGxldGUgKGlmIGVuYWJsZWQpIGJlZm9yZSBzaG93aW5nIHRoZSBhcHBsaWNhdGlvbiB2aWV3LiIsCiAgIm5hbWUiOiAiU2hvdyBBcHBsaWNhdGlvbiBWaWV3IFdoZW4gV29ya3NwYWNlIEVtcHR5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mYXd0eXRvby9TaG93LUFwcGxpY2F0aW9uLVZpZXctV2hlbi1Xb3Jrc3BhY2UtRW1wdHkiLAogICJ1dWlkIjogImFwcGxpY2F0aW9uX3ZpZXdfd2hlbl9lbXB0eUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAyNAp9"}, "40": {"version": "24", "sha256": "1g8c9pz8i35kap730ly0h3lzz2qrzc9057zw9mpcwqkqkp6v1aw4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSBhcHBsaWNhdGlvbiB2aWV3IHdoZW4gdGhlIHdvcmtzcGFjZSBpcyBvciBiZWNvbWVzIGVtcHR5LCBzdWNoIGFzIHN3aXRjaGluZyB0byBhbiBlbXB0eSB3b3Jrc3BhY2UsIHdoZW4gYWxsIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2UgYXJlIGNsb3NlZCwgb3IgYWZ0ZXIgbG9naW4uIFN0YXJ0aW5nIGFwcGxpY2F0aW9ucyBvciBzd2l0Y2hpbmcgdG8gYSB3b3Jrc3BhY2Ugd2l0aCBvcGVuIHdpbmRvd3Mgd2lsbCBoaWRlIHRoZSBhcHBsaWNhdGlvbiB2aWV3IGlmIGl0J3Mgc2hvd2luZy5cbkZyb20gdmVyc2lvbiAyMiwgdGhpcyBleHRlbnNpb24gd2FpdHMgZm9yIGFueSB3aW5kb3cgY2xvc2luZyBhbmltYXRpb24gdG8gY29tcGxldGUgKGlmIGVuYWJsZWQpIGJlZm9yZSBzaG93aW5nIHRoZSBhcHBsaWNhdGlvbiB2aWV3LiIsCiAgIm5hbWUiOiAiU2hvdyBBcHBsaWNhdGlvbiBWaWV3IFdoZW4gV29ya3NwYWNlIEVtcHR5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mYXd0eXRvby9TaG93LUFwcGxpY2F0aW9uLVZpZXctV2hlbi1Xb3Jrc3BhY2UtRW1wdHkiLAogICJ1dWlkIjogImFwcGxpY2F0aW9uX3ZpZXdfd2hlbl9lbXB0eUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAyNAp9"}, "41": {"version": "24", "sha256": "1g8c9pz8i35kap730ly0h3lzz2qrzc9057zw9mpcwqkqkp6v1aw4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSBhcHBsaWNhdGlvbiB2aWV3IHdoZW4gdGhlIHdvcmtzcGFjZSBpcyBvciBiZWNvbWVzIGVtcHR5LCBzdWNoIGFzIHN3aXRjaGluZyB0byBhbiBlbXB0eSB3b3Jrc3BhY2UsIHdoZW4gYWxsIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2UgYXJlIGNsb3NlZCwgb3IgYWZ0ZXIgbG9naW4uIFN0YXJ0aW5nIGFwcGxpY2F0aW9ucyBvciBzd2l0Y2hpbmcgdG8gYSB3b3Jrc3BhY2Ugd2l0aCBvcGVuIHdpbmRvd3Mgd2lsbCBoaWRlIHRoZSBhcHBsaWNhdGlvbiB2aWV3IGlmIGl0J3Mgc2hvd2luZy5cbkZyb20gdmVyc2lvbiAyMiwgdGhpcyBleHRlbnNpb24gd2FpdHMgZm9yIGFueSB3aW5kb3cgY2xvc2luZyBhbmltYXRpb24gdG8gY29tcGxldGUgKGlmIGVuYWJsZWQpIGJlZm9yZSBzaG93aW5nIHRoZSBhcHBsaWNhdGlvbiB2aWV3LiIsCiAgIm5hbWUiOiAiU2hvdyBBcHBsaWNhdGlvbiBWaWV3IFdoZW4gV29ya3NwYWNlIEVtcHR5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mYXd0eXRvby9TaG93LUFwcGxpY2F0aW9uLVZpZXctV2hlbi1Xb3Jrc3BhY2UtRW1wdHkiLAogICJ1dWlkIjogImFwcGxpY2F0aW9uX3ZpZXdfd2hlbl9lbXB0eUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAyNAp9"}}}
@@ -248,12 +248,12 @@
 , {"uuid": "horizontal-workspaces@gnome-shell-extensions.gcampax.github.com", "name": "Horizontal workspaces", "pname": "horizontal-workspaces", "description": "Use a horizontal workspace layout", "link": "https://extensions.gnome.org/extension/2141/horizontal-workspaces/", "shell_version_map": {"38": {"version": "5", "sha256": "0kbqcrs96v72yk0rf8jghy1a31651fyvgpi97yp46n4wmvc41vk7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVzZSBhIGhvcml6b250YWwgd29ya3NwYWNlIGxheW91dCIsCiAgImV4dGVuc2lvbi1pZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb25zIiwKICAibmFtZSI6ICJIb3Jpem9udGFsIHdvcmtzcGFjZXMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaG9yaXpvbnRhbC13b3Jrc3BhY2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgInV1aWQiOiAiaG9yaXpvbnRhbC13b3Jrc3BhY2VzQGdub21lLXNoZWxsLWV4dGVuc2lvbnMuZ2NhbXBheC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"uuid": "threefingerwindowmove@do.sch.dev.gmail.com", "name": "Three Finger Window Move", "pname": "three-finger-window-move", "description": "Allows moving windows around with a three finger trackpad gesture (Wayland only)", "link": "https://extensions.gnome.org/extension/2164/three-finger-window-move/", "shell_version_map": {"38": {"version": "7", "sha256": "1m7vwr6s6w297b0x0bmnj8fs2hl73pbys6m93lnb9inh5pmgiv1p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyBtb3Zpbmcgd2luZG93cyBhcm91bmQgd2l0aCBhIHRocmVlIGZpbmdlciB0cmFja3BhZCBnZXN0dXJlIChXYXlsYW5kIG9ubHkpIiwKICAibmFtZSI6ICJUaHJlZSBGaW5nZXIgV2luZG93IE1vdmUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kby1zY2gvZ25vbWUtc2hlbGwtdG91Y2hwYWQtd2luZG93LW1vdmUiLAogICJ1dWlkIjogInRocmVlZmluZ2Vyd2luZG93bW92ZUBkby5zY2guZGV2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "spotify-ad-block@danigm.net", "name": "Mute spotify ads", "pname": "mute-spotify-ads", "description": "Mute spotify ads", "link": "https://extensions.gnome.org/extension/2176/mute-spotify-ads/", "shell_version_map": {"38": {"version": "12", "sha256": "1hlayym3nnj5i547ffr1vcpjvzjqpzsmz7diqwgii99xr0qqy8dh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJuYW1lIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RhbmlnbS9zcG90aWZ5LWFkLWJsb2NrZXIiLAogICJ1dWlkIjogInNwb3RpZnktYWQtYmxvY2tAZGFuaWdtLm5ldCIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "1hlayym3nnj5i547ffr1vcpjvzjqpzsmz7diqwgii99xr0qqy8dh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJuYW1lIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RhbmlnbS9zcG90aWZ5LWFkLWJsb2NrZXIiLAogICJ1dWlkIjogInNwb3RpZnktYWQtYmxvY2tAZGFuaWdtLm5ldCIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "1hlayym3nnj5i547ffr1vcpjvzjqpzsmz7diqwgii99xr0qqy8dh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJuYW1lIjogIk11dGUgc3BvdGlmeSBhZHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RhbmlnbS9zcG90aWZ5LWFkLWJsb2NrZXIiLAogICJ1dWlkIjogInNwb3RpZnktYWQtYmxvY2tAZGFuaWdtLm5ldCIsCiAgInZlcnNpb24iOiAxMgp9"}}}
-, {"uuid": "noannoyance@daase.net", "name": "NoAnnoyance v2", "pname": "noannoyance", "description": "Another extension, that removes the 'Window is ready' notification and puts the window into focus. In contrast to all the other extensions, this uses ES6 syntax and is actively maintained.", "link": "https://extensions.gnome.org/extension/2182/noannoyance/", "shell_version_map": {"38": {"version": "12", "sha256": "1wr1wxmaxb569m3wsfdhs0jdpq1zqx3bkk6dgn9iswbbr060bnd0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0Jqb2VybkRhYXNlL25vYW5ub3lhbmNlIiwKICAidXVpZCI6ICJub2Fubm95YW5jZUBkYWFzZS5uZXQiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "40": {"version": "12", "sha256": "1wr1wxmaxb569m3wsfdhs0jdpq1zqx3bkk6dgn9iswbbr060bnd0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0Jqb2VybkRhYXNlL25vYW5ub3lhbmNlIiwKICAidXVpZCI6ICJub2Fubm95YW5jZUBkYWFzZS5uZXQiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "41": {"version": "12", "sha256": "1wr1wxmaxb569m3wsfdhs0jdpq1zqx3bkk6dgn9iswbbr060bnd0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0Jqb2VybkRhYXNlL25vYW5ub3lhbmNlIiwKICAidXVpZCI6ICJub2Fubm95YW5jZUBkYWFzZS5uZXQiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}}}
+, {"uuid": "noannoyance@daase.net", "name": "NoAnnoyance v2", "pname": "noannoyance", "description": "Another extension, that removes the 'Window is ready' notification and puts the window into focus. In contrast to all the other extensions, this uses ES6 syntax and is actively maintained.", "link": "https://extensions.gnome.org/extension/2182/noannoyance/", "shell_version_map": {"38": {"version": "12", "sha256": "1wr1wxmaxb569m3wsfdhs0jdpq1zqx3bkk6dgn9iswbbr060bnd0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0Jqb2VybkRhYXNlL25vYW5ub3lhbmNlIiwKICAidXVpZCI6ICJub2Fubm95YW5jZUBkYWFzZS5uZXQiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "40": {"version": "12", "sha256": "1wr1wxmaxb569m3wsfdhs0jdpq1zqx3bkk6dgn9iswbbr060bnd0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0Jqb2VybkRhYXNlL25vYW5ub3lhbmNlIiwKICAidXVpZCI6ICJub2Fubm95YW5jZUBkYWFzZS5uZXQiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "41": {"version": "12", "sha256": "1wr1wxmaxb569m3wsfdhs0jdpq1zqx3bkk6dgn9iswbbr060bnd0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0Jqb2VybkRhYXNlL25vYW5ub3lhbmNlIiwKICAidXVpZCI6ICJub2Fubm95YW5jZUBkYWFzZS5uZXQiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "42": {"version": "12", "sha256": "1wr1wxmaxb569m3wsfdhs0jdpq1zqx3bkk6dgn9iswbbr060bnd0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uLCB0aGF0IHJlbW92ZXMgdGhlICdXaW5kb3cgaXMgcmVhZHknIG5vdGlmaWNhdGlvbiBhbmQgcHV0cyB0aGUgd2luZG93IGludG8gZm9jdXMuIEluIGNvbnRyYXN0IHRvIGFsbCB0aGUgb3RoZXIgZXh0ZW5zaW9ucywgdGhpcyB1c2VzIEVTNiBzeW50YXggYW5kIGlzIGFjdGl2ZWx5IG1haW50YWluZWQuIiwKICAibmFtZSI6ICJOb0Fubm95YW5jZSB2MiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0Jqb2VybkRhYXNlL25vYW5ub3lhbmNlIiwKICAidXVpZCI6ICJub2Fubm95YW5jZUBkYWFzZS5uZXQiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}}}
 , {"uuid": "vim-altTab@kokong.info", "name": "VIM Alt-Tab", "pname": "vim-alt-tab", "description": "Add the ability to switch between windows and applications using vim-like keypresses (h, j, k, l)", "link": "https://extensions.gnome.org/extension/2212/vim-alt-tab/", "shell_version_map": {"38": {"version": "5", "sha256": "0r69cnr4r1vwny8jxc6yymmmiyy5fac4634r8kr0k5b7j1y6f0cw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgYWJpbGl0eSB0byBzd2l0Y2ggYmV0d2VlbiB3aW5kb3dzIGFuZCBhcHBsaWNhdGlvbnMgdXNpbmcgdmltLWxpa2Uga2V5cHJlc3NlcyAoaCwgaiwgaywgbCkiLAogICJleHRlbnNpb24taWQiOiAidmltLWFsdHRhYiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlZJTSBBbHQtVGFiIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqd0BiYXJnc3Rlbi5vcmciLAogICAgInRob21hcy5ib3VmZm9uQGdtYWlsLmNvbSIsCiAgICAia29rb0Brb2tvbmcuaW5mbyIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudmltLWFsdHRhYiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va29rby1uZy92aW0tYWx0VGFiIiwKICAidXVpZCI6ICJ2aW0tYWx0VGFiQGtva29uZy5pbmZvIiwKICAidmVyc2lvbiI6IDUKfQ=="}, "40": {"version": "5", "sha256": "0r69cnr4r1vwny8jxc6yymmmiyy5fac4634r8kr0k5b7j1y6f0cw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgYWJpbGl0eSB0byBzd2l0Y2ggYmV0d2VlbiB3aW5kb3dzIGFuZCBhcHBsaWNhdGlvbnMgdXNpbmcgdmltLWxpa2Uga2V5cHJlc3NlcyAoaCwgaiwgaywgbCkiLAogICJleHRlbnNpb24taWQiOiAidmltLWFsdHRhYiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlZJTSBBbHQtVGFiIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqd0BiYXJnc3Rlbi5vcmciLAogICAgInRob21hcy5ib3VmZm9uQGdtYWlsLmNvbSIsCiAgICAia29rb0Brb2tvbmcuaW5mbyIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudmltLWFsdHRhYiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va29rby1uZy92aW0tYWx0VGFiIiwKICAidXVpZCI6ICJ2aW0tYWx0VGFiQGtva29uZy5pbmZvIiwKICAidmVyc2lvbiI6IDUKfQ=="}, "41": {"version": "5", "sha256": "0r69cnr4r1vwny8jxc6yymmmiyy5fac4634r8kr0k5b7j1y6f0cw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCB0aGUgYWJpbGl0eSB0byBzd2l0Y2ggYmV0d2VlbiB3aW5kb3dzIGFuZCBhcHBsaWNhdGlvbnMgdXNpbmcgdmltLWxpa2Uga2V5cHJlc3NlcyAoaCwgaiwgaywgbCkiLAogICJleHRlbnNpb24taWQiOiAidmltLWFsdHRhYiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIlZJTSBBbHQtVGFiIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJqd0BiYXJnc3Rlbi5vcmciLAogICAgInRob21hcy5ib3VmZm9uQGdtYWlsLmNvbSIsCiAgICAia29rb0Brb2tvbmcuaW5mbyIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudmltLWFsdHRhYiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20va29rby1uZy92aW0tYWx0VGFiIiwKICAidXVpZCI6ICJ2aW0tYWx0VGFiQGtva29uZy5pbmZvIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"uuid": "easy_docker_containers@red.software.systems", "name": "Easy Docker Containers", "pname": "easy-docker-containers", "description": "A GNOME Shell extension (GNOME Panel applet) to be able to generally control your available Docker containers.", "link": "https://extensions.gnome.org/extension/2224/easy-docker-containers/", "shell_version_map": {"38": {"version": "13", "sha256": "1hq6ispaq7vyn8vigacbwv58hrishb1g09vhffwsldahx4iz4pnj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9SZWRTb2Z0d2FyZVN5c3RlbXMvZWFzeV9kb2NrZXJfY29udGFpbmVycyIsCiAgInV1aWQiOiAiZWFzeV9kb2NrZXJfY29udGFpbmVyc0ByZWQuc29mdHdhcmUuc3lzdGVtcyIsCiAgInZlcnNpb24iOiAxMwp9"}, "40": {"version": "13", "sha256": "1hq6ispaq7vyn8vigacbwv58hrishb1g09vhffwsldahx4iz4pnj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9SZWRTb2Z0d2FyZVN5c3RlbXMvZWFzeV9kb2NrZXJfY29udGFpbmVycyIsCiAgInV1aWQiOiAiZWFzeV9kb2NrZXJfY29udGFpbmVyc0ByZWQuc29mdHdhcmUuc3lzdGVtcyIsCiAgInZlcnNpb24iOiAxMwp9"}, "41": {"version": "13", "sha256": "1hq6ispaq7vyn8vigacbwv58hrishb1g09vhffwsldahx4iz4pnj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIGJlIGFibGUgdG8gZ2VuZXJhbGx5IGNvbnRyb2wgeW91ciBhdmFpbGFibGUgRG9ja2VyIGNvbnRhaW5lcnMuIiwKICAibmFtZSI6ICJFYXN5IERvY2tlciBDb250YWluZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9SZWRTb2Z0d2FyZVN5c3RlbXMvZWFzeV9kb2NrZXJfY29udGFpbmVycyIsCiAgInV1aWQiOiAiZWFzeV9kb2NrZXJfY29udGFpbmVyc0ByZWQuc29mdHdhcmUuc3lzdGVtcyIsCiAgInZlcnNpb24iOiAxMwp9"}}}
-, {"uuid": "nightthemeswitcher@romainvigier.fr", "name": "Night Theme Switcher", "pname": "night-theme-switcher", "description": "Make your desktop easy on the eye, day and night.\n\nAutomatically toggle the color scheme between light and dark, switch backgrounds and run custom commands at sunset and sunrise.\n\nSupports Night Light, Location Services, manual schedule and on-demand switch modes.\n", "link": "https://extensions.gnome.org/extension/2236/night-theme-switcher/", "shell_version_map": {"38": {"version": "46", "sha256": "138rih3y78qppl5mg86509d6y49s41g3lj74zb5sy6wszv7pv7fi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgeW91ciBkZXNrdG9wIGVhc3kgb24gdGhlIGV5ZSwgZGF5IGFuZCBuaWdodC5cblxuQXV0b21hdGljYWxseSB0b2dnbGUgdGhlIGNvbG9yIHNjaGVtZSBiZXR3ZWVuIGxpZ2h0IGFuZCBkYXJrLCBzd2l0Y2ggYmFja2dyb3VuZHMgYW5kIHJ1biBjdXN0b20gY29tbWFuZHMgYXQgc3Vuc2V0IGFuZCBzdW5yaXNlLlxuXG5TdXBwb3J0cyBOaWdodCBMaWdodCwgTG9jYXRpb24gU2VydmljZXMsIG1hbnVhbCBzY2hlZHVsZSBhbmQgb24tZGVtYW5kIHN3aXRjaCBtb2Rlcy5cbiIsCiAgImdldHRleHQtZG9tYWluIjogIm5pZ2h0dGhlbWVzd2l0Y2hlckByb21haW52aWdpZXIuZnIiLAogICJuYW1lIjogIk5pZ2h0IFRoZW1lIFN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5pZ2h0dGhlbWVzd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9uaWdodHRoZW1lc3dpdGNoZXIucm9tYWludmlnaWVyLmZyIiwKICAidXVpZCI6ICJuaWdodHRoZW1lc3dpdGNoZXJAcm9tYWludmlnaWVyLmZyIiwKICAidmVyc2lvbiI6IDQ2Cn0="}, "40": {"version": "51", "sha256": "0q71z47bszijdg00d5mq3sc9ziliik4iqzm4qg22gc9cyz95c9v4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgeW91ciBkZXNrdG9wIGVhc3kgb24gdGhlIGV5ZSwgZGF5IGFuZCBuaWdodC5cblxuQXV0b21hdGljYWxseSB0b2dnbGUgdGhlIGNvbG9yIHNjaGVtZSBiZXR3ZWVuIGxpZ2h0IGFuZCBkYXJrLCBzd2l0Y2ggYmFja2dyb3VuZHMgYW5kIHJ1biBjdXN0b20gY29tbWFuZHMgYXQgc3Vuc2V0IGFuZCBzdW5yaXNlLlxuXG5TdXBwb3J0cyBOaWdodCBMaWdodCwgTG9jYXRpb24gU2VydmljZXMsIG1hbnVhbCBzY2hlZHVsZSBhbmQgb24tZGVtYW5kIHN3aXRjaCBtb2Rlcy5cbiIsCiAgImdldHRleHQtZG9tYWluIjogIm5pZ2h0dGhlbWVzd2l0Y2hlckByb21haW52aWdpZXIuZnIiLAogICJuYW1lIjogIk5pZ2h0IFRoZW1lIFN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5pZ2h0dGhlbWVzd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vbmlnaHR0aGVtZXN3aXRjaGVyLnJvbWFpbnZpZ2llci5mciIsCiAgInV1aWQiOiAibmlnaHR0aGVtZXN3aXRjaGVyQHJvbWFpbnZpZ2llci5mciIsCiAgInZlcnNpb24iOiA1MQp9"}, "41": {"version": "55", "sha256": "1946qhpgyxf73czkqjs9b2ggj93ibgxvi9drj0d71gyws3j7h2l3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgeW91ciBkZXNrdG9wIGVhc3kgb24gdGhlIGV5ZSwgZGF5IGFuZCBuaWdodC5cblxuQXV0b21hdGljYWxseSB0b2dnbGUgdGhlIGNvbG9yIHNjaGVtZSBiZXR3ZWVuIGxpZ2h0IGFuZCBkYXJrLCBzd2l0Y2ggYmFja2dyb3VuZHMgYW5kIHJ1biBjdXN0b20gY29tbWFuZHMgYXQgc3Vuc2V0IGFuZCBzdW5yaXNlLlxuXG5TdXBwb3J0cyBOaWdodCBMaWdodCwgTG9jYXRpb24gU2VydmljZXMsIG1hbnVhbCBzY2hlZHVsZSBhbmQgb24tZGVtYW5kIHN3aXRjaCBtb2Rlcy5cbiIsCiAgImdldHRleHQtZG9tYWluIjogIm5pZ2h0dGhlbWVzd2l0Y2hlckByb21haW52aWdpZXIuZnIiLAogICJuYW1lIjogIk5pZ2h0IFRoZW1lIFN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5pZ2h0dGhlbWVzd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vbmlnaHR0aGVtZXN3aXRjaGVyLnJvbWFpbnZpZ2llci5mciIsCiAgInV1aWQiOiAibmlnaHR0aGVtZXN3aXRjaGVyQHJvbWFpbnZpZ2llci5mciIsCiAgInZlcnNpb24iOiA1NQp9"}}}
+, {"uuid": "nightthemeswitcher@romainvigier.fr", "name": "Night Theme Switcher", "pname": "night-theme-switcher", "description": "Make your desktop easy on the eye, day and night.\n\nAutomatically toggle the color scheme between light and dark, switch backgrounds and run custom commands at sunset and sunrise.\n\nSupports Night Light, Location Services, manual schedule and on-demand switch modes.", "link": "https://extensions.gnome.org/extension/2236/night-theme-switcher/", "shell_version_map": {"38": {"version": "46", "sha256": "0x3mggffn6ydfkv09gwq62wgkm8zga214616jp60mpwp4ly0xphm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgeW91ciBkZXNrdG9wIGVhc3kgb24gdGhlIGV5ZSwgZGF5IGFuZCBuaWdodC5cblxuQXV0b21hdGljYWxseSB0b2dnbGUgdGhlIGNvbG9yIHNjaGVtZSBiZXR3ZWVuIGxpZ2h0IGFuZCBkYXJrLCBzd2l0Y2ggYmFja2dyb3VuZHMgYW5kIHJ1biBjdXN0b20gY29tbWFuZHMgYXQgc3Vuc2V0IGFuZCBzdW5yaXNlLlxuXG5TdXBwb3J0cyBOaWdodCBMaWdodCwgTG9jYXRpb24gU2VydmljZXMsIG1hbnVhbCBzY2hlZHVsZSBhbmQgb24tZGVtYW5kIHN3aXRjaCBtb2Rlcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJuaWdodHRoZW1lc3dpdGNoZXJAcm9tYWludmlnaWVyLmZyIiwKICAibmFtZSI6ICJOaWdodCBUaGVtZSBTd2l0Y2hlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5uaWdodHRoZW1lc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vbmlnaHR0aGVtZXN3aXRjaGVyLnJvbWFpbnZpZ2llci5mciIsCiAgInV1aWQiOiAibmlnaHR0aGVtZXN3aXRjaGVyQHJvbWFpbnZpZ2llci5mciIsCiAgInZlcnNpb24iOiA0Ngp9"}, "40": {"version": "51", "sha256": "1pnljdl2syh0lv2ih2ps2im2pnyzkwsbzsvv3f8q7zf669jxca9g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgeW91ciBkZXNrdG9wIGVhc3kgb24gdGhlIGV5ZSwgZGF5IGFuZCBuaWdodC5cblxuQXV0b21hdGljYWxseSB0b2dnbGUgdGhlIGNvbG9yIHNjaGVtZSBiZXR3ZWVuIGxpZ2h0IGFuZCBkYXJrLCBzd2l0Y2ggYmFja2dyb3VuZHMgYW5kIHJ1biBjdXN0b20gY29tbWFuZHMgYXQgc3Vuc2V0IGFuZCBzdW5yaXNlLlxuXG5TdXBwb3J0cyBOaWdodCBMaWdodCwgTG9jYXRpb24gU2VydmljZXMsIG1hbnVhbCBzY2hlZHVsZSBhbmQgb24tZGVtYW5kIHN3aXRjaCBtb2Rlcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJuaWdodHRoZW1lc3dpdGNoZXJAcm9tYWludmlnaWVyLmZyIiwKICAibmFtZSI6ICJOaWdodCBUaGVtZSBTd2l0Y2hlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5uaWdodHRoZW1lc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL25pZ2h0dGhlbWVzd2l0Y2hlci5yb21haW52aWdpZXIuZnIiLAogICJ1dWlkIjogIm5pZ2h0dGhlbWVzd2l0Y2hlckByb21haW52aWdpZXIuZnIiLAogICJ2ZXJzaW9uIjogNTEKfQ=="}, "41": {"version": "55", "sha256": "151lwn6qlh1b91f9c58s7xw5jd7ygvqpr68299qqgn7hvjg0qh6z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgeW91ciBkZXNrdG9wIGVhc3kgb24gdGhlIGV5ZSwgZGF5IGFuZCBuaWdodC5cblxuQXV0b21hdGljYWxseSB0b2dnbGUgdGhlIGNvbG9yIHNjaGVtZSBiZXR3ZWVuIGxpZ2h0IGFuZCBkYXJrLCBzd2l0Y2ggYmFja2dyb3VuZHMgYW5kIHJ1biBjdXN0b20gY29tbWFuZHMgYXQgc3Vuc2V0IGFuZCBzdW5yaXNlLlxuXG5TdXBwb3J0cyBOaWdodCBMaWdodCwgTG9jYXRpb24gU2VydmljZXMsIG1hbnVhbCBzY2hlZHVsZSBhbmQgb24tZGVtYW5kIHN3aXRjaCBtb2Rlcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJuaWdodHRoZW1lc3dpdGNoZXJAcm9tYWludmlnaWVyLmZyIiwKICAibmFtZSI6ICJOaWdodCBUaGVtZSBTd2l0Y2hlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5uaWdodHRoZW1lc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL25pZ2h0dGhlbWVzd2l0Y2hlci5yb21haW52aWdpZXIuZnIiLAogICJ1dWlkIjogIm5pZ2h0dGhlbWVzd2l0Y2hlckByb21haW52aWdpZXIuZnIiLAogICJ2ZXJzaW9uIjogNTUKfQ=="}, "42": {"version": "60", "sha256": "1ichrz2458wvn7vjsz8sylnvinb3w2scrmb9rg32gg1lby7czvnz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgeW91ciBkZXNrdG9wIGVhc3kgb24gdGhlIGV5ZSwgZGF5IGFuZCBuaWdodC5cblxuQXV0b21hdGljYWxseSB0b2dnbGUgdGhlIGNvbG9yIHNjaGVtZSBiZXR3ZWVuIGxpZ2h0IGFuZCBkYXJrLCBzd2l0Y2ggYmFja2dyb3VuZHMgYW5kIHJ1biBjdXN0b20gY29tbWFuZHMgYXQgc3Vuc2V0IGFuZCBzdW5yaXNlLlxuXG5TdXBwb3J0cyBOaWdodCBMaWdodCwgTG9jYXRpb24gU2VydmljZXMsIG1hbnVhbCBzY2hlZHVsZSBhbmQgb24tZGVtYW5kIHN3aXRjaCBtb2Rlcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJuaWdodHRoZW1lc3dpdGNoZXJAcm9tYWludmlnaWVyLmZyIiwKICAibmFtZSI6ICJOaWdodCBUaGVtZSBTd2l0Y2hlciIsCiAgInNlc3Npb24tbW9kZXMiOiBbCiAgICAidW5sb2NrLWRpYWxvZyIsCiAgICAidXNlciIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmlnaHR0aGVtZXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9uaWdodHRoZW1lc3dpdGNoZXIucm9tYWludmlnaWVyLmZyIiwKICAidXVpZCI6ICJuaWdodHRoZW1lc3dpdGNoZXJAcm9tYWludmlnaWVyLmZyIiwKICAidmVyc2lvbiI6IDYwCn0="}}}
 , {"uuid": "binaryclock@vancha.march", "name": "binaryclock", "pname": "binaryclock", "description": "adds a binary clock to the gnome bar", "link": "https://extensions.gnome.org/extension/2284/binaryclock/", "shell_version_map": {"38": {"version": "6", "sha256": "1bvzlqfhwlk1sh9q3538yipjwzgndd4wnn2l8wc3sshb93ggvpg6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFkZHMgYSBiaW5hcnkgY2xvY2sgdG8gdGhlIGdub21lIGJhciIsCiAgIm5hbWUiOiAiYmluYXJ5Y2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzQiLAogICAgIjMuMzIuMiIsCiAgICAiMy4zOCIsCiAgICAiMy4zNi43IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZhbmNoYS9nbm9tZVNoZWxsQmluYXJ5Q2xvY2svIiwKICAidXVpZCI6ICJiaW5hcnljbG9ja0B2YW5jaGEubWFyY2giLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "1bvzlqfhwlk1sh9q3538yipjwzgndd4wnn2l8wc3sshb93ggvpg6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFkZHMgYSBiaW5hcnkgY2xvY2sgdG8gdGhlIGdub21lIGJhciIsCiAgIm5hbWUiOiAiYmluYXJ5Y2xvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzQiLAogICAgIjMuMzIuMiIsCiAgICAiMy4zOCIsCiAgICAiMy4zNi43IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZhbmNoYS9nbm9tZVNoZWxsQmluYXJ5Q2xvY2svIiwKICAidXVpZCI6ICJiaW5hcnljbG9ja0B2YW5jaGEubWFyY2giLAogICJ2ZXJzaW9uIjogNgp9"}}}
-, {"uuid": "lgbutton@glerro.gnome.gitlab.io", "name": "Looking Glass Button", "pname": "looking-glass-button", "description": "Toggle the Looking Glass visibility by clicking on a panel icon.\n\nAnd from version 4 left clicking on the icon show a menu with new features like Restart Gnome Shell (not available on Wayland), Reload Theme, Open Extension Folder and Open Theme Folder (the last two require that xdg-open is installed).\n\nVersion 4 also drop the compatibility with Gnome Shell 3.30.", "link": "https://extensions.gnome.org/extension/2296/looking-glass-button/", "shell_version_map": {"38": {"version": "8", "sha256": "0rkk1mivq0drvpjbg89gi7plpaza71r08cyvkymygwwi2sfwpy9l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB0aGUgTG9va2luZyBHbGFzcyB2aXNpYmlsaXR5IGJ5IGNsaWNraW5nIG9uIGEgcGFuZWwgaWNvbi5cblxuQW5kIGZyb20gdmVyc2lvbiA0IGxlZnQgY2xpY2tpbmcgb24gdGhlIGljb24gc2hvdyBhIG1lbnUgd2l0aCBuZXcgZmVhdHVyZXMgbGlrZSBSZXN0YXJ0IEdub21lIFNoZWxsIChub3QgYXZhaWxhYmxlIG9uIFdheWxhbmQpLCBSZWxvYWQgVGhlbWUsIE9wZW4gRXh0ZW5zaW9uIEZvbGRlciBhbmQgT3BlbiBUaGVtZSBGb2xkZXIgKHRoZSBsYXN0IHR3byByZXF1aXJlIHRoYXQgeGRnLW9wZW4gaXMgaW5zdGFsbGVkKS5cblxuVmVyc2lvbiA0IGFsc28gZHJvcCB0aGUgY29tcGF0aWJpbGl0eSB3aXRoIEdub21lIFNoZWxsIDMuMzAuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAibmFtZSI6ICJMb29raW5nIEdsYXNzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2dsZXJyby9nbm9tZS1zaGVsbC1leHRlbnNpb24tbGdidXR0b24iLAogICJ1dWlkIjogImxnYnV0dG9uQGdsZXJyby5nbm9tZS5naXRsYWIuaW8iLAogICJ2ZXJzaW9uIjogOAp9"}, "40": {"version": "8", "sha256": "0rkk1mivq0drvpjbg89gi7plpaza71r08cyvkymygwwi2sfwpy9l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB0aGUgTG9va2luZyBHbGFzcyB2aXNpYmlsaXR5IGJ5IGNsaWNraW5nIG9uIGEgcGFuZWwgaWNvbi5cblxuQW5kIGZyb20gdmVyc2lvbiA0IGxlZnQgY2xpY2tpbmcgb24gdGhlIGljb24gc2hvdyBhIG1lbnUgd2l0aCBuZXcgZmVhdHVyZXMgbGlrZSBSZXN0YXJ0IEdub21lIFNoZWxsIChub3QgYXZhaWxhYmxlIG9uIFdheWxhbmQpLCBSZWxvYWQgVGhlbWUsIE9wZW4gRXh0ZW5zaW9uIEZvbGRlciBhbmQgT3BlbiBUaGVtZSBGb2xkZXIgKHRoZSBsYXN0IHR3byByZXF1aXJlIHRoYXQgeGRnLW9wZW4gaXMgaW5zdGFsbGVkKS5cblxuVmVyc2lvbiA0IGFsc28gZHJvcCB0aGUgY29tcGF0aWJpbGl0eSB3aXRoIEdub21lIFNoZWxsIDMuMzAuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAibmFtZSI6ICJMb29raW5nIEdsYXNzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2dsZXJyby9nbm9tZS1zaGVsbC1leHRlbnNpb24tbGdidXR0b24iLAogICJ1dWlkIjogImxnYnV0dG9uQGdsZXJyby5nbm9tZS5naXRsYWIuaW8iLAogICJ2ZXJzaW9uIjogOAp9"}, "41": {"version": "8", "sha256": "0rkk1mivq0drvpjbg89gi7plpaza71r08cyvkymygwwi2sfwpy9l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB0aGUgTG9va2luZyBHbGFzcyB2aXNpYmlsaXR5IGJ5IGNsaWNraW5nIG9uIGEgcGFuZWwgaWNvbi5cblxuQW5kIGZyb20gdmVyc2lvbiA0IGxlZnQgY2xpY2tpbmcgb24gdGhlIGljb24gc2hvdyBhIG1lbnUgd2l0aCBuZXcgZmVhdHVyZXMgbGlrZSBSZXN0YXJ0IEdub21lIFNoZWxsIChub3QgYXZhaWxhYmxlIG9uIFdheWxhbmQpLCBSZWxvYWQgVGhlbWUsIE9wZW4gRXh0ZW5zaW9uIEZvbGRlciBhbmQgT3BlbiBUaGVtZSBGb2xkZXIgKHRoZSBsYXN0IHR3byByZXF1aXJlIHRoYXQgeGRnLW9wZW4gaXMgaW5zdGFsbGVkKS5cblxuVmVyc2lvbiA0IGFsc28gZHJvcCB0aGUgY29tcGF0aWJpbGl0eSB3aXRoIEdub21lIFNoZWxsIDMuMzAuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAibmFtZSI6ICJMb29raW5nIEdsYXNzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2dsZXJyby9nbm9tZS1zaGVsbC1leHRlbnNpb24tbGdidXR0b24iLAogICJ1dWlkIjogImxnYnV0dG9uQGdsZXJyby5nbm9tZS5naXRsYWIuaW8iLAogICJ2ZXJzaW9uIjogOAp9"}}}
+, {"uuid": "lgbutton@glerro.gnome.gitlab.io", "name": "Looking Glass Button", "pname": "looking-glass-button", "description": "Toggle the Looking Glass visibility by clicking on a panel icon.\n\nAnd from version 4 left clicking on the icon show a menu with new features like Restart Gnome Shell (not available on Wayland), Reload Theme, Open Extension Folder and Open Theme Folder (the last two require that xdg-open is installed).\n\nVersion 4 also drop the compatibility with Gnome Shell 3.30.", "link": "https://extensions.gnome.org/extension/2296/looking-glass-button/", "shell_version_map": {"38": {"version": "8", "sha256": "0rkk1mivq0drvpjbg89gi7plpaza71r08cyvkymygwwi2sfwpy9l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB0aGUgTG9va2luZyBHbGFzcyB2aXNpYmlsaXR5IGJ5IGNsaWNraW5nIG9uIGEgcGFuZWwgaWNvbi5cblxuQW5kIGZyb20gdmVyc2lvbiA0IGxlZnQgY2xpY2tpbmcgb24gdGhlIGljb24gc2hvdyBhIG1lbnUgd2l0aCBuZXcgZmVhdHVyZXMgbGlrZSBSZXN0YXJ0IEdub21lIFNoZWxsIChub3QgYXZhaWxhYmxlIG9uIFdheWxhbmQpLCBSZWxvYWQgVGhlbWUsIE9wZW4gRXh0ZW5zaW9uIEZvbGRlciBhbmQgT3BlbiBUaGVtZSBGb2xkZXIgKHRoZSBsYXN0IHR3byByZXF1aXJlIHRoYXQgeGRnLW9wZW4gaXMgaW5zdGFsbGVkKS5cblxuVmVyc2lvbiA0IGFsc28gZHJvcCB0aGUgY29tcGF0aWJpbGl0eSB3aXRoIEdub21lIFNoZWxsIDMuMzAuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAibmFtZSI6ICJMb29raW5nIEdsYXNzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2dsZXJyby9nbm9tZS1zaGVsbC1leHRlbnNpb24tbGdidXR0b24iLAogICJ1dWlkIjogImxnYnV0dG9uQGdsZXJyby5nbm9tZS5naXRsYWIuaW8iLAogICJ2ZXJzaW9uIjogOAp9"}, "40": {"version": "8", "sha256": "0rkk1mivq0drvpjbg89gi7plpaza71r08cyvkymygwwi2sfwpy9l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB0aGUgTG9va2luZyBHbGFzcyB2aXNpYmlsaXR5IGJ5IGNsaWNraW5nIG9uIGEgcGFuZWwgaWNvbi5cblxuQW5kIGZyb20gdmVyc2lvbiA0IGxlZnQgY2xpY2tpbmcgb24gdGhlIGljb24gc2hvdyBhIG1lbnUgd2l0aCBuZXcgZmVhdHVyZXMgbGlrZSBSZXN0YXJ0IEdub21lIFNoZWxsIChub3QgYXZhaWxhYmxlIG9uIFdheWxhbmQpLCBSZWxvYWQgVGhlbWUsIE9wZW4gRXh0ZW5zaW9uIEZvbGRlciBhbmQgT3BlbiBUaGVtZSBGb2xkZXIgKHRoZSBsYXN0IHR3byByZXF1aXJlIHRoYXQgeGRnLW9wZW4gaXMgaW5zdGFsbGVkKS5cblxuVmVyc2lvbiA0IGFsc28gZHJvcCB0aGUgY29tcGF0aWJpbGl0eSB3aXRoIEdub21lIFNoZWxsIDMuMzAuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAibmFtZSI6ICJMb29raW5nIEdsYXNzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2dsZXJyby9nbm9tZS1zaGVsbC1leHRlbnNpb24tbGdidXR0b24iLAogICJ1dWlkIjogImxnYnV0dG9uQGdsZXJyby5nbm9tZS5naXRsYWIuaW8iLAogICJ2ZXJzaW9uIjogOAp9"}, "41": {"version": "8", "sha256": "0rkk1mivq0drvpjbg89gi7plpaza71r08cyvkymygwwi2sfwpy9l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB0aGUgTG9va2luZyBHbGFzcyB2aXNpYmlsaXR5IGJ5IGNsaWNraW5nIG9uIGEgcGFuZWwgaWNvbi5cblxuQW5kIGZyb20gdmVyc2lvbiA0IGxlZnQgY2xpY2tpbmcgb24gdGhlIGljb24gc2hvdyBhIG1lbnUgd2l0aCBuZXcgZmVhdHVyZXMgbGlrZSBSZXN0YXJ0IEdub21lIFNoZWxsIChub3QgYXZhaWxhYmxlIG9uIFdheWxhbmQpLCBSZWxvYWQgVGhlbWUsIE9wZW4gRXh0ZW5zaW9uIEZvbGRlciBhbmQgT3BlbiBUaGVtZSBGb2xkZXIgKHRoZSBsYXN0IHR3byByZXF1aXJlIHRoYXQgeGRnLW9wZW4gaXMgaW5zdGFsbGVkKS5cblxuVmVyc2lvbiA0IGFsc28gZHJvcCB0aGUgY29tcGF0aWJpbGl0eSB3aXRoIEdub21lIFNoZWxsIDMuMzAuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAibmFtZSI6ICJMb29raW5nIEdsYXNzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2dsZXJyby9nbm9tZS1zaGVsbC1leHRlbnNpb24tbGdidXR0b24iLAogICJ1dWlkIjogImxnYnV0dG9uQGdsZXJyby5nbm9tZS5naXRsYWIuaW8iLAogICJ2ZXJzaW9uIjogOAp9"}, "42": {"version": "8", "sha256": "0rkk1mivq0drvpjbg89gi7plpaza71r08cyvkymygwwi2sfwpy9l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB0aGUgTG9va2luZyBHbGFzcyB2aXNpYmlsaXR5IGJ5IGNsaWNraW5nIG9uIGEgcGFuZWwgaWNvbi5cblxuQW5kIGZyb20gdmVyc2lvbiA0IGxlZnQgY2xpY2tpbmcgb24gdGhlIGljb24gc2hvdyBhIG1lbnUgd2l0aCBuZXcgZmVhdHVyZXMgbGlrZSBSZXN0YXJ0IEdub21lIFNoZWxsIChub3QgYXZhaWxhYmxlIG9uIFdheWxhbmQpLCBSZWxvYWQgVGhlbWUsIE9wZW4gRXh0ZW5zaW9uIEZvbGRlciBhbmQgT3BlbiBUaGVtZSBGb2xkZXIgKHRoZSBsYXN0IHR3byByZXF1aXJlIHRoYXQgeGRnLW9wZW4gaXMgaW5zdGFsbGVkKS5cblxuVmVyc2lvbiA0IGFsc28gZHJvcCB0aGUgY29tcGF0aWJpbGl0eSB3aXRoIEdub21lIFNoZWxsIDMuMzAuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWxnYnV0dG9uIiwKICAibmFtZSI6ICJMb29raW5nIEdsYXNzIEJ1dHRvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2dsZXJyby9nbm9tZS1zaGVsbC1leHRlbnNpb24tbGdidXR0b24iLAogICJ1dWlkIjogImxnYnV0dG9uQGdsZXJyby5nbm9tZS5naXRsYWIuaW8iLAogICJ2ZXJzaW9uIjogOAp9"}}}
 , {"uuid": "tp_wattmeter@gistart", "name": "tp_wattmeter", "pname": "tp_wattmeter", "description": "Shows battery power consumption of ThinkPad laptops", "link": "https://extensions.gnome.org/extension/2308/tp_wattmeter/", "shell_version_map": {"40": {"version": "4", "sha256": "1v8rw7msfy2d8nwnppdpci62sl6iw8973z5gsl8024awl27ni38z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGJhdHRlcnkgcG93ZXIgY29uc3VtcHRpb24gb2YgVGhpbmtQYWQgbGFwdG9wcyIsCiAgIm5hbWUiOiAidHBfd2F0dG1ldGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2LjAiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9naXN0YXJ0L3RwX3dhdHRtZXRlciIsCiAgInV1aWQiOiAidHBfd2F0dG1ldGVyQGdpc3RhcnQiLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "Denon_AVR_controler@sylter.fr", "name": "Denon AVR controler", "pname": "denon-avr-controler", "description": "Control a Denon audio video receiver through the network.\n- on/off switch\n- volume adjustment", "link": "https://extensions.gnome.org/extension/2371/denon-avr-controler/", "shell_version_map": {"38": {"version": "4", "sha256": "0c8ky3v70arnblix717jz9fsksr42673as9nmzfyh2p2h1zm03wq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgYSBEZW5vbiBhdWRpbyB2aWRlbyByZWNlaXZlciB0aHJvdWdoIHRoZSBuZXR3b3JrLlxuLSBvbi9vZmYgc3dpdGNoXG4tIHZvbHVtZSBhZGp1c3RtZW50IiwKICAibmFtZSI6ICJEZW5vbiBBVlIgY29udHJvbGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2ZyYW1hZ2l0Lm9yZy9zeWx0ZXIvZGVub24tYXZyLWNvbnRyb2xlciIsCiAgInV1aWQiOiAiRGVub25fQVZSX2NvbnRyb2xlckBzeWx0ZXIuZnIiLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "hide-universal-access@akiirui.github.io", "name": "Hide Universal Access", "pname": "hide-universal-access", "description": "Hide Universal Access icon from the status bar", "link": "https://extensions.gnome.org/extension/2398/hide-universal-access/", "shell_version_map": {"38": {"version": "10", "sha256": "08sjlxfw19905lbxc8jkb3z8m5kqq7gfxcd57w64wb5xhpwrf379", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyBpY29uIGZyb20gdGhlIHN0YXR1cyBiYXIiLAogICJuYW1lIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWtpaXJ1aS9oaWRlLXVuaXZlcnNhbC1hY2Nlc3MiLAogICJ1dWlkIjogImhpZGUtdW5pdmVyc2FsLWFjY2Vzc0Bha2lpcnVpLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}, "40": {"version": "10", "sha256": "08sjlxfw19905lbxc8jkb3z8m5kqq7gfxcd57w64wb5xhpwrf379", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyBpY29uIGZyb20gdGhlIHN0YXR1cyBiYXIiLAogICJuYW1lIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWtpaXJ1aS9oaWRlLXVuaXZlcnNhbC1hY2Nlc3MiLAogICJ1dWlkIjogImhpZGUtdW5pdmVyc2FsLWFjY2Vzc0Bha2lpcnVpLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "08sjlxfw19905lbxc8jkb3z8m5kqq7gfxcd57w64wb5xhpwrf379", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyBpY29uIGZyb20gdGhlIHN0YXR1cyBiYXIiLAogICJuYW1lIjogIkhpZGUgVW5pdmVyc2FsIEFjY2VzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWtpaXJ1aS9oaWRlLXVuaXZlcnNhbC1hY2Nlc3MiLAogICJ1dWlkIjogImhpZGUtdW5pdmVyc2FsLWFjY2Vzc0Bha2lpcnVpLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}}}
@@ -268,24 +268,24 @@
 , {"uuid": "gnordvpn-local@isopolito", "name": "gNordVPN-Local", "pname": "gnordvpn-local", "description": "A Gnome extension that shows the NordVPN status in the top bar and provides the ability to configure certain aspects of the connection.", "link": "https://extensions.gnome.org/extension/2569/gnordvpn-local/", "shell_version_map": {"38": {"version": "9", "sha256": "103ddz7n14n4ahks90w60sqgq8w07mpjqln5va7kxnjh3rdwlk3s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgZXh0ZW5zaW9uIHRoYXQgc2hvd3MgdGhlIE5vcmRWUE4gc3RhdHVzIGluIHRoZSB0b3AgYmFyIGFuZCBwcm92aWRlcyB0aGUgYWJpbGl0eSB0byBjb25maWd1cmUgY2VydGFpbiBhc3BlY3RzIG9mIHRoZSBjb25uZWN0aW9uLiIsCiAgIm5hbWUiOiAiZ05vcmRWUE4tTG9jYWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICIzLjM4LjQiLAogICAgIjQwLjUiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Jc29wb2xpdG8vZ05vcmRWUE4tTG9jYWwiLAogICJ1dWlkIjogImdub3JkdnBuLWxvY2FsQGlzb3BvbGl0byIsCiAgInZlcnNpb24iOiA5Cn0="}, "40": {"version": "9", "sha256": "103ddz7n14n4ahks90w60sqgq8w07mpjqln5va7kxnjh3rdwlk3s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgZXh0ZW5zaW9uIHRoYXQgc2hvd3MgdGhlIE5vcmRWUE4gc3RhdHVzIGluIHRoZSB0b3AgYmFyIGFuZCBwcm92aWRlcyB0aGUgYWJpbGl0eSB0byBjb25maWd1cmUgY2VydGFpbiBhc3BlY3RzIG9mIHRoZSBjb25uZWN0aW9uLiIsCiAgIm5hbWUiOiAiZ05vcmRWUE4tTG9jYWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICIzLjM4LjQiLAogICAgIjQwLjUiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Jc29wb2xpdG8vZ05vcmRWUE4tTG9jYWwiLAogICJ1dWlkIjogImdub3JkdnBuLWxvY2FsQGlzb3BvbGl0byIsCiAgInZlcnNpb24iOiA5Cn0="}}}
 , {"uuid": "fully-transparent-top-bar@aunetx", "name": "Smart transparent topbar", "pname": "fully-transparent-top-bar", "description": "Permits to change topbar's look and feel when free-floating.\n\nIf you have issues or recommandations, you can tell me on github so I can see them!", "link": "https://extensions.gnome.org/extension/2588/fully-transparent-top-bar/", "shell_version_map": {"38": {"version": "11", "sha256": "1mksqaxw7jzzdghzii1bhhkbsccxb23qa69f3x6hg32ig9qi762x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBlcm1pdHMgdG8gY2hhbmdlIHRvcGJhcidzIGxvb2sgYW5kIGZlZWwgd2hlbiBmcmVlLWZsb2F0aW5nLlxuXG5JZiB5b3UgaGF2ZSBpc3N1ZXMgb3IgcmVjb21tYW5kYXRpb25zLCB5b3UgY2FuIHRlbGwgbWUgb24gZ2l0aHViIHNvIEkgY2FuIHNlZSB0aGVtISIsCiAgIm5hbWUiOiAiU21hcnQgdHJhbnNwYXJlbnQgdG9wYmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXVuZXR4L2dub21lLXNoZWxsLWV4dGVuc2lvbi10cmFuc3BhcmVudC10b3AtYmFyIiwKICAidXVpZCI6ICJmdWxseS10cmFuc3BhcmVudC10b3AtYmFyQGF1bmV0eCIsCiAgInZlcnNpb24iOiAxMQp9"}}}
 , {"uuid": "always-indicator@martin.zurowietz.de", "name": "Always Indicator", "pname": "always-indicator", "description": "Always show the new messages indicator on new messages. Features: 1) New message indicator is always shown if there are notifications. 2) The color of the indicator can be customized. 3) If 'do not disturb' is active, the icon is displayed in the custom color if there are notifications.", "link": "https://extensions.gnome.org/extension/2594/always-indicator/", "shell_version_map": {"40": {"version": "7", "sha256": "1hryk0ispnxpfmfskj29nii72vwbaly4bcb4idyg2z3c1c71qhdy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBzaG93IHRoZSBuZXcgbWVzc2FnZXMgaW5kaWNhdG9yIG9uIG5ldyBtZXNzYWdlcy4gRmVhdHVyZXM6IDEpIE5ldyBtZXNzYWdlIGluZGljYXRvciBpcyBhbHdheXMgc2hvd24gaWYgdGhlcmUgYXJlIG5vdGlmaWNhdGlvbnMuIDIpIFRoZSBjb2xvciBvZiB0aGUgaW5kaWNhdG9yIGNhbiBiZSBjdXN0b21pemVkLiAzKSBJZiAnZG8gbm90IGRpc3R1cmInIGlzIGFjdGl2ZSwgdGhlIGljb24gaXMgZGlzcGxheWVkIGluIHRoZSBjdXN0b20gY29sb3IgaWYgdGhlcmUgYXJlIG5vdGlmaWNhdGlvbnMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYWx3YXlzLWluZGljYXRvciIsCiAgIm5hbWUiOiAiQWx3YXlzIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hbHdheXMtaW5kaWNhdG9yLXNldHRpbmdzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tenVyL2dub21lLXNoZWxsLWFsd2F5cy1pbmRpY2F0b3IiLAogICJ1dWlkIjogImFsd2F5cy1pbmRpY2F0b3JAbWFydGluLnp1cm93aWV0ei5kZSIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "1hryk0ispnxpfmfskj29nii72vwbaly4bcb4idyg2z3c1c71qhdy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBzaG93IHRoZSBuZXcgbWVzc2FnZXMgaW5kaWNhdG9yIG9uIG5ldyBtZXNzYWdlcy4gRmVhdHVyZXM6IDEpIE5ldyBtZXNzYWdlIGluZGljYXRvciBpcyBhbHdheXMgc2hvd24gaWYgdGhlcmUgYXJlIG5vdGlmaWNhdGlvbnMuIDIpIFRoZSBjb2xvciBvZiB0aGUgaW5kaWNhdG9yIGNhbiBiZSBjdXN0b21pemVkLiAzKSBJZiAnZG8gbm90IGRpc3R1cmInIGlzIGFjdGl2ZSwgdGhlIGljb24gaXMgZGlzcGxheWVkIGluIHRoZSBjdXN0b20gY29sb3IgaWYgdGhlcmUgYXJlIG5vdGlmaWNhdGlvbnMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYWx3YXlzLWluZGljYXRvciIsCiAgIm5hbWUiOiAiQWx3YXlzIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hbHdheXMtaW5kaWNhdG9yLXNldHRpbmdzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tenVyL2dub21lLXNoZWxsLWFsd2F5cy1pbmRpY2F0b3IiLAogICJ1dWlkIjogImFsd2F5cy1pbmRpY2F0b3JAbWFydGluLnp1cm93aWV0ei5kZSIsCiAgInZlcnNpb24iOiA3Cn0="}}}
-, {"uuid": "eruption-profile-switcher@x3n0m0rph59.org", "name": "Eruption Profile Switcher", "pname": "eruption-profile-switcher", "description": "Runtime profile switcher for the Eruption Linux input and LED driver for keyboards, mice and other devices", "link": "https://extensions.gnome.org/extension/2621/eruption-profile-switcher/", "shell_version_map": {"38": {"version": "15", "sha256": "1jy9m2inx8jjwsy666hg67i7d8py2ar4drn2i8si7d80cba45al4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJ1bnRpbWUgcHJvZmlsZSBzd2l0Y2hlciBmb3IgdGhlIEVydXB0aW9uIExpbnV4IGlucHV0IGFuZCBMRUQgZHJpdmVyIGZvciBrZXlib2FyZHMsIG1pY2UgYW5kIG90aGVyIGRldmljZXMiLAogICJuYW1lIjogIkVydXB0aW9uIFByb2ZpbGUgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLmJldGEiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vWDNuMG0wcnBoNTkvZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlciIsCiAgInV1aWQiOiAiZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlckB4M24wbTBycGg1OS5vcmciLAogICJ2ZXJzaW9uIjogMTUKfQ=="}, "40": {"version": "20", "sha256": "0mfy34n9gqa1k8sw6b1xcsxygvjnjqnd88bs49jd6l7hwisyns15", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJ1bnRpbWUgcHJvZmlsZSBzd2l0Y2hlciBmb3IgdGhlIEVydXB0aW9uIExpbnV4IGlucHV0IGFuZCBMRUQgZHJpdmVyIGZvciBrZXlib2FyZHMsIG1pY2UgYW5kIG90aGVyIGRldmljZXMiLAogICJuYW1lIjogIkVydXB0aW9uIFByb2ZpbGUgU3dpdGNoZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuYmV0YSIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vWDNuMG0wcnBoNTkvZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlciIsCiAgInV1aWQiOiAiZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlckB4M24wbTBycGg1OS5vcmciLAogICJ2ZXJzaW9uIjogMjAKfQ=="}, "41": {"version": "20", "sha256": "0mfy34n9gqa1k8sw6b1xcsxygvjnjqnd88bs49jd6l7hwisyns15", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJ1bnRpbWUgcHJvZmlsZSBzd2l0Y2hlciBmb3IgdGhlIEVydXB0aW9uIExpbnV4IGlucHV0IGFuZCBMRUQgZHJpdmVyIGZvciBrZXlib2FyZHMsIG1pY2UgYW5kIG90aGVyIGRldmljZXMiLAogICJuYW1lIjogIkVydXB0aW9uIFByb2ZpbGUgU3dpdGNoZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuYmV0YSIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vWDNuMG0wcnBoNTkvZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlciIsCiAgInV1aWQiOiAiZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlckB4M24wbTBycGg1OS5vcmciLAogICJ2ZXJzaW9uIjogMjAKfQ=="}}}
+, {"uuid": "eruption-profile-switcher@x3n0m0rph59.org", "name": "Eruption Profile Switcher", "pname": "eruption-profile-switcher", "description": "Runtime profile switcher for the Eruption Linux input and LED driver for keyboards, mice and other devices", "link": "https://extensions.gnome.org/extension/2621/eruption-profile-switcher/", "shell_version_map": {"38": {"version": "15", "sha256": "1jy9m2inx8jjwsy666hg67i7d8py2ar4drn2i8si7d80cba45al4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJ1bnRpbWUgcHJvZmlsZSBzd2l0Y2hlciBmb3IgdGhlIEVydXB0aW9uIExpbnV4IGlucHV0IGFuZCBMRUQgZHJpdmVyIGZvciBrZXlib2FyZHMsIG1pY2UgYW5kIG90aGVyIGRldmljZXMiLAogICJuYW1lIjogIkVydXB0aW9uIFByb2ZpbGUgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLmJldGEiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vWDNuMG0wcnBoNTkvZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlciIsCiAgInV1aWQiOiAiZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlckB4M24wbTBycGg1OS5vcmciLAogICJ2ZXJzaW9uIjogMTUKfQ=="}, "40": {"version": "24", "sha256": "1nnzwk3p89hc765y7xym5xghadr4b2iq2gzzk2acj07fli8f60n2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJ1bnRpbWUgcHJvZmlsZSBzd2l0Y2hlciBmb3IgdGhlIEVydXB0aW9uIExpbnV4IGlucHV0IGFuZCBMRUQgZHJpdmVyIGZvciBrZXlib2FyZHMsIG1pY2UgYW5kIG90aGVyIGRldmljZXMiLAogICJuYW1lIjogIkVydXB0aW9uIFByb2ZpbGUgU3dpdGNoZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuYmV0YSIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vWDNuMG0wcnBoNTkvZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlciIsCiAgInV1aWQiOiAiZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlckB4M24wbTBycGg1OS5vcmciLAogICJ2ZXJzaW9uIjogMjQKfQ=="}, "41": {"version": "24", "sha256": "1nnzwk3p89hc765y7xym5xghadr4b2iq2gzzk2acj07fli8f60n2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJ1bnRpbWUgcHJvZmlsZSBzd2l0Y2hlciBmb3IgdGhlIEVydXB0aW9uIExpbnV4IGlucHV0IGFuZCBMRUQgZHJpdmVyIGZvciBrZXlib2FyZHMsIG1pY2UgYW5kIG90aGVyIGRldmljZXMiLAogICJuYW1lIjogIkVydXB0aW9uIFByb2ZpbGUgU3dpdGNoZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAuYmV0YSIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vWDNuMG0wcnBoNTkvZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlciIsCiAgInV1aWQiOiAiZXJ1cHRpb24tcHJvZmlsZS1zd2l0Y2hlckB4M24wbTBycGg1OS5vcmciLAogICJ2ZXJzaW9uIjogMjQKfQ=="}}}
 , {"uuid": "nbfcindicator@mgokcaykdev.gmail.com", "name": "Nbfc Indicator", "pname": "nbfc-indicator", "description": "Notebook Fan Control Indicator for Gnome Shell", "link": "https://extensions.gnome.org/extension/2624/nbfc-indicator/", "shell_version_map": {"40": {"version": "7", "sha256": "0hp7giwdcsk8p442q0x9214dv59ziyjswli6mccyb8v814k3p8ic", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vdGVib29rIEZhbiBDb250cm9sIEluZGljYXRvciBmb3IgR25vbWUgU2hlbGwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJuYmZjaW5kaWNhdG9yIiwKICAibmFtZSI6ICJOYmZjIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5uYmZjaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL01Hb2tjYXlLL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtbmJmY2luZGljYXRvciIsCiAgInV1aWQiOiAibmJmY2luZGljYXRvckBtZ29rY2F5a2Rldi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
-, {"uuid": "user-id-in-top-panel@fthx", "name": "User id in top panel", "pname": "user-id-in-top-panel", "description": "Add ( user name :: user id @ host ) in top panel.", "link": "https://extensions.gnome.org/extension/2633/user-id-in-top-panel/", "shell_version_map": {"38": {"version": "6", "sha256": "16s1782mzb5ckshsy86ac9xj5xfk15hwzvzk4cfiimphfvkkw8x4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCAoIHVzZXIgbmFtZSA6OiB1c2VyIGlkIEAgaG9zdCApIGluIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIlVzZXIgaWQgaW4gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJmdGh4IgogIF0sCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ1c2VyLWlkLWluLXRvcC1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "6", "sha256": "16s1782mzb5ckshsy86ac9xj5xfk15hwzvzk4cfiimphfvkkw8x4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCAoIHVzZXIgbmFtZSA6OiB1c2VyIGlkIEAgaG9zdCApIGluIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIlVzZXIgaWQgaW4gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJmdGh4IgogIF0sCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ1c2VyLWlkLWluLXRvcC1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDYKfQ=="}, "41": {"version": "6", "sha256": "16s1782mzb5ckshsy86ac9xj5xfk15hwzvzk4cfiimphfvkkw8x4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCAoIHVzZXIgbmFtZSA6OiB1c2VyIGlkIEAgaG9zdCApIGluIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIlVzZXIgaWQgaW4gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJmdGh4IgogIF0sCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ1c2VyLWlkLWluLXRvcC1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
+, {"uuid": "user-id-in-top-panel@fthx", "name": "User id in top panel", "pname": "user-id-in-top-panel", "description": "Add ( user name :: user id @ host ) in top panel.", "link": "https://extensions.gnome.org/extension/2633/user-id-in-top-panel/", "shell_version_map": {"38": {"version": "6", "sha256": "16s1782mzb5ckshsy86ac9xj5xfk15hwzvzk4cfiimphfvkkw8x4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCAoIHVzZXIgbmFtZSA6OiB1c2VyIGlkIEAgaG9zdCApIGluIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIlVzZXIgaWQgaW4gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJmdGh4IgogIF0sCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ1c2VyLWlkLWluLXRvcC1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "6", "sha256": "16s1782mzb5ckshsy86ac9xj5xfk15hwzvzk4cfiimphfvkkw8x4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCAoIHVzZXIgbmFtZSA6OiB1c2VyIGlkIEAgaG9zdCApIGluIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIlVzZXIgaWQgaW4gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJmdGh4IgogIF0sCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ1c2VyLWlkLWluLXRvcC1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDYKfQ=="}, "41": {"version": "6", "sha256": "16s1782mzb5ckshsy86ac9xj5xfk15hwzvzk4cfiimphfvkkw8x4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCAoIHVzZXIgbmFtZSA6OiB1c2VyIGlkIEAgaG9zdCApIGluIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIlVzZXIgaWQgaW4gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJmdGh4IgogIF0sCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ1c2VyLWlkLWluLXRvcC1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDYKfQ=="}, "42": {"version": "6", "sha256": "16s1782mzb5ckshsy86ac9xj5xfk15hwzvzk4cfiimphfvkkw8x4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCAoIHVzZXIgbmFtZSA6OiB1c2VyIGlkIEAgaG9zdCApIGluIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIlVzZXIgaWQgaW4gdG9wIHBhbmVsIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJmdGh4IgogIF0sCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ1c2VyLWlkLWluLXRvcC1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"uuid": "hide-minimized@danigm.net", "name": "Hide minimized", "pname": "hide-minimized", "description": "Hide minimized in overview", "link": "https://extensions.gnome.org/extension/2639/hide-minimized/", "shell_version_map": {"38": {"version": "4", "sha256": "0v2vrm3p5czzvs2kc8dh3h1ijh7i8x6z2b9gdvqbfny45g7blfaa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgbWluaW1pemVkIGluIG92ZXJ2aWV3IiwKICAibmFtZSI6ICJIaWRlIG1pbmltaXplZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFuaWdtL2hpZGUtbWluaW1pemVkIiwKICAidXVpZCI6ICJoaWRlLW1pbmltaXplZEBkYW5pZ20ubmV0IiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "0v2vrm3p5czzvs2kc8dh3h1ijh7i8x6z2b9gdvqbfny45g7blfaa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgbWluaW1pemVkIGluIG92ZXJ2aWV3IiwKICAibmFtZSI6ICJIaWRlIG1pbmltaXplZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFuaWdtL2hpZGUtbWluaW1pemVkIiwKICAidXVpZCI6ICJoaWRlLW1pbmltaXplZEBkYW5pZ20ubmV0IiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "0v2vrm3p5czzvs2kc8dh3h1ijh7i8x6z2b9gdvqbfny45g7blfaa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgbWluaW1pemVkIGluIG92ZXJ2aWV3IiwKICAibmFtZSI6ICJIaWRlIG1pbmltaXplZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFuaWdtL2hpZGUtbWluaW1pemVkIiwKICAidXVpZCI6ICJoaWRlLW1pbmltaXplZEBkYW5pZ20ubmV0IiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "display-brightness-ddcutil@themightydeity.github.com", "name": "Brightness control using ddcutil", "pname": "brightness-control-using-ddcutil", "description": "Brightness control for all the monitors detected by ddcutil\nThis tool uses ddcutil as backend for communication with your display.\n\nUpdated 2022-Jan-05: There are multiple ways of listing the control sliders, either in top bar or in system menu, with or without value labels.\n\nRead setup instructions from: https://github.com/daitj/gnome-display-brightness-ddcutil/blob/master/README.md", "link": "https://extensions.gnome.org/extension/2645/brightness-control-using-ddcutil/", "shell_version_map": {"38": {"version": "10", "sha256": "0r8l1iipfxrsmmch0pgi9jpxk58cqn93igs1cp8sx73l1cxr5ik4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaWdodG5lc3MgY29udHJvbCBmb3IgYWxsIHRoZSBtb25pdG9ycyBkZXRlY3RlZCBieSBkZGN1dGlsXG5UaGlzIHRvb2wgdXNlcyBkZGN1dGlsIGFzIGJhY2tlbmQgZm9yIGNvbW11bmljYXRpb24gd2l0aCB5b3VyIGRpc3BsYXkuXG5cblVwZGF0ZWQgMjAyMi1KYW4tMDU6IFRoZXJlIGFyZSBtdWx0aXBsZSB3YXlzIG9mIGxpc3RpbmcgdGhlIGNvbnRyb2wgc2xpZGVycywgZWl0aGVyIGluIHRvcCBiYXIgb3IgaW4gc3lzdGVtIG1lbnUsIHdpdGggb3Igd2l0aG91dCB2YWx1ZSBsYWJlbHMuXG5cblJlYWQgc2V0dXAgaW5zdHJ1Y3Rpb25zIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9kYWl0ai9nbm9tZS1kaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbC9ibG9iL21hc3Rlci9SRUFETUUubWQiLAogICJuYW1lIjogIkJyaWdodG5lc3MgY29udHJvbCB1c2luZyBkZGN1dGlsIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRpc3BsYXktYnJpZ2h0bmVzcy1kZGN1dGlsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGFpdGovZ25vbWUtZGlzcGxheS1icmlnaHRuZXNzLWRkY3V0aWwiLAogICJ1dWlkIjogImRpc3BsYXktYnJpZ2h0bmVzcy1kZGN1dGlsQHRoZW1pZ2h0eWRlaXR5LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "40": {"version": "28", "sha256": "0bb27sraknlqbdpavf0hrwcz4kl4bmrkc70491g9fbfhvr37jyq3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaWdodG5lc3MgY29udHJvbCBmb3IgYWxsIHRoZSBtb25pdG9ycyBkZXRlY3RlZCBieSBkZGN1dGlsXG5UaGlzIHRvb2wgdXNlcyBkZGN1dGlsIGFzIGJhY2tlbmQgZm9yIGNvbW11bmljYXRpb24gd2l0aCB5b3VyIGRpc3BsYXkuXG5cblVwZGF0ZWQgMjAyMi1KYW4tMDU6IFRoZXJlIGFyZSBtdWx0aXBsZSB3YXlzIG9mIGxpc3RpbmcgdGhlIGNvbnRyb2wgc2xpZGVycywgZWl0aGVyIGluIHRvcCBiYXIgb3IgaW4gc3lzdGVtIG1lbnUsIHdpdGggb3Igd2l0aG91dCB2YWx1ZSBsYWJlbHMuXG5cblJlYWQgc2V0dXAgaW5zdHJ1Y3Rpb25zIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9kYWl0ai9nbm9tZS1kaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbC9ibG9iL21hc3Rlci9SRUFETUUubWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbCIsCiAgIm5hbWUiOiAiQnJpZ2h0bmVzcyBjb250cm9sIHVzaW5nIGRkY3V0aWwiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGlzcGxheS1icmlnaHRuZXNzLWRkY3V0aWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RhaXRqL2dub21lLWRpc3BsYXktYnJpZ2h0bmVzcy1kZGN1dGlsIiwKICAidXVpZCI6ICJkaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbEB0aGVtaWdodHlkZWl0eS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDI4Cn0="}, "41": {"version": "28", "sha256": "0bb27sraknlqbdpavf0hrwcz4kl4bmrkc70491g9fbfhvr37jyq3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaWdodG5lc3MgY29udHJvbCBmb3IgYWxsIHRoZSBtb25pdG9ycyBkZXRlY3RlZCBieSBkZGN1dGlsXG5UaGlzIHRvb2wgdXNlcyBkZGN1dGlsIGFzIGJhY2tlbmQgZm9yIGNvbW11bmljYXRpb24gd2l0aCB5b3VyIGRpc3BsYXkuXG5cblVwZGF0ZWQgMjAyMi1KYW4tMDU6IFRoZXJlIGFyZSBtdWx0aXBsZSB3YXlzIG9mIGxpc3RpbmcgdGhlIGNvbnRyb2wgc2xpZGVycywgZWl0aGVyIGluIHRvcCBiYXIgb3IgaW4gc3lzdGVtIG1lbnUsIHdpdGggb3Igd2l0aG91dCB2YWx1ZSBsYWJlbHMuXG5cblJlYWQgc2V0dXAgaW5zdHJ1Y3Rpb25zIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9kYWl0ai9nbm9tZS1kaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbC9ibG9iL21hc3Rlci9SRUFETUUubWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbCIsCiAgIm5hbWUiOiAiQnJpZ2h0bmVzcyBjb250cm9sIHVzaW5nIGRkY3V0aWwiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGlzcGxheS1icmlnaHRuZXNzLWRkY3V0aWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RhaXRqL2dub21lLWRpc3BsYXktYnJpZ2h0bmVzcy1kZGN1dGlsIiwKICAidXVpZCI6ICJkaXNwbGF5LWJyaWdodG5lc3MtZGRjdXRpbEB0aGVtaWdodHlkZWl0eS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDI4Cn0="}}}
 , {"uuid": "timezones@masquerade-circus.net", "name": "Timezones extension", "pname": "timezones-extension", "description": "Show multiple clocks in the panel. For those who need more than one additional clock.", "link": "https://extensions.gnome.org/extension/2657/timezones-extension/", "shell_version_map": {"38": {"version": "2", "sha256": "0vkqwrn0kvmng003h26zvzd5ym4h971hvcspb5iq7042lhxxc2hf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgbXVsdGlwbGUgY2xvY2tzIGluIHRoZSBwYW5lbC4gRm9yIHRob3NlIHdobyBuZWVkIG1vcmUgdGhhbiBvbmUgYWRkaXRpb25hbCBjbG9jay4iLAogICJuYW1lIjogIlRpbWV6b25lcyBleHRlbnNpb24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAidGltZXpvbmVzQG1hc3F1ZXJhZGUtY2lyY3VzLm5ldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWFzcXVlcmFkZS1DaXJjdXMvZ25vbWUtdGltZXpvbmVzLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidGltZXpvbmVzQG1hc3F1ZXJhZGUtY2lyY3VzLm5ldCIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "0vkqwrn0kvmng003h26zvzd5ym4h971hvcspb5iq7042lhxxc2hf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgbXVsdGlwbGUgY2xvY2tzIGluIHRoZSBwYW5lbC4gRm9yIHRob3NlIHdobyBuZWVkIG1vcmUgdGhhbiBvbmUgYWRkaXRpb25hbCBjbG9jay4iLAogICJuYW1lIjogIlRpbWV6b25lcyBleHRlbnNpb24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAidGltZXpvbmVzQG1hc3F1ZXJhZGUtY2lyY3VzLm5ldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWFzcXVlcmFkZS1DaXJjdXMvZ25vbWUtdGltZXpvbmVzLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidGltZXpvbmVzQG1hc3F1ZXJhZGUtY2lyY3VzLm5ldCIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "0vkqwrn0kvmng003h26zvzd5ym4h971hvcspb5iq7042lhxxc2hf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgbXVsdGlwbGUgY2xvY2tzIGluIHRoZSBwYW5lbC4gRm9yIHRob3NlIHdobyBuZWVkIG1vcmUgdGhhbiBvbmUgYWRkaXRpb25hbCBjbG9jay4iLAogICJuYW1lIjogIlRpbWV6b25lcyBleHRlbnNpb24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAidGltZXpvbmVzQG1hc3F1ZXJhZGUtY2lyY3VzLm5ldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWFzcXVlcmFkZS1DaXJjdXMvZ25vbWUtdGltZXpvbmVzLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidGltZXpvbmVzQG1hc3F1ZXJhZGUtY2lyY3VzLm5ldCIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "transparent-panel@fthx", "name": "Ubuntu-like Panel", "pname": "transparent-panel", "description": "Panel: transparent, straight, reduced height, non-bold fonts. Nothing more.\n\nLooks roughly like Ubuntu session's panel (Yaru). You can easily modify the transparency level through the CSS stylesheet in the extensions's folder.", "link": "https://extensions.gnome.org/extension/2660/transparent-panel/", "shell_version_map": {"40": {"version": "3", "sha256": "042cbxdvh4nxv72dd6ikm37brgb2wc1yaxsznyavjwr53awjbbzm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBhbmVsOiB0cmFuc3BhcmVudCwgc3RyYWlnaHQsIHJlZHVjZWQgaGVpZ2h0LCBub24tYm9sZCBmb250cy4gTm90aGluZyBtb3JlLlxuXG5Mb29rcyByb3VnaGx5IGxpa2UgVWJ1bnR1IHNlc3Npb24ncyBwYW5lbCAoWWFydSkuIFlvdSBjYW4gZWFzaWx5IG1vZGlmeSB0aGUgdHJhbnNwYXJlbmN5IGxldmVsIHRocm91Z2ggdGhlIENTUyBzdHlsZXNoZWV0IGluIHRoZSBleHRlbnNpb25zJ3MgZm9sZGVyLiIsCiAgIm5hbWUiOiAiVWJ1bnR1LWxpa2UgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "042cbxdvh4nxv72dd6ikm37brgb2wc1yaxsznyavjwr53awjbbzm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBhbmVsOiB0cmFuc3BhcmVudCwgc3RyYWlnaHQsIHJlZHVjZWQgaGVpZ2h0LCBub24tYm9sZCBmb250cy4gTm90aGluZyBtb3JlLlxuXG5Mb29rcyByb3VnaGx5IGxpa2UgVWJ1bnR1IHNlc3Npb24ncyBwYW5lbCAoWWFydSkuIFlvdSBjYW4gZWFzaWx5IG1vZGlmeSB0aGUgdHJhbnNwYXJlbmN5IGxldmVsIHRocm91Z2ggdGhlIENTUyBzdHlsZXNoZWV0IGluIHRoZSBleHRlbnNpb25zJ3MgZm9sZGVyLiIsCiAgIm5hbWUiOiAiVWJ1bnR1LWxpa2UgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
+, {"uuid": "transparent-panel@fthx", "name": "Ubuntu-like Panel", "pname": "transparent-panel", "description": "Panel: transparent, straight, reduced height, non-bold fonts. Nothing more.\n\nLooks roughly like Ubuntu session's panel (Yaru). You can easily modify the transparency level through the CSS stylesheet in the extensions's folder.", "link": "https://extensions.gnome.org/extension/2660/transparent-panel/", "shell_version_map": {"40": {"version": "3", "sha256": "042cbxdvh4nxv72dd6ikm37brgb2wc1yaxsznyavjwr53awjbbzm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBhbmVsOiB0cmFuc3BhcmVudCwgc3RyYWlnaHQsIHJlZHVjZWQgaGVpZ2h0LCBub24tYm9sZCBmb250cy4gTm90aGluZyBtb3JlLlxuXG5Mb29rcyByb3VnaGx5IGxpa2UgVWJ1bnR1IHNlc3Npb24ncyBwYW5lbCAoWWFydSkuIFlvdSBjYW4gZWFzaWx5IG1vZGlmeSB0aGUgdHJhbnNwYXJlbmN5IGxldmVsIHRocm91Z2ggdGhlIENTUyBzdHlsZXNoZWV0IGluIHRoZSBleHRlbnNpb25zJ3MgZm9sZGVyLiIsCiAgIm5hbWUiOiAiVWJ1bnR1LWxpa2UgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "042cbxdvh4nxv72dd6ikm37brgb2wc1yaxsznyavjwr53awjbbzm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBhbmVsOiB0cmFuc3BhcmVudCwgc3RyYWlnaHQsIHJlZHVjZWQgaGVpZ2h0LCBub24tYm9sZCBmb250cy4gTm90aGluZyBtb3JlLlxuXG5Mb29rcyByb3VnaGx5IGxpa2UgVWJ1bnR1IHNlc3Npb24ncyBwYW5lbCAoWWFydSkuIFlvdSBjYW4gZWFzaWx5IG1vZGlmeSB0aGUgdHJhbnNwYXJlbmN5IGxldmVsIHRocm91Z2ggdGhlIENTUyBzdHlsZXNoZWV0IGluIHRoZSBleHRlbnNpb25zJ3MgZm9sZGVyLiIsCiAgIm5hbWUiOiAiVWJ1bnR1LWxpa2UgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC1wYW5lbEBmdGh4IiwKICAidmVyc2lvbiI6IDMKfQ=="}, "42": {"version": "4", "sha256": "1af8hyfvrpl7slqc1sdnc82zkrqrrvw16qw47qqxfdiybyk7381z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBhbmVsOiB0cmFuc3BhcmVudCwgc3RyYWlnaHQsIHJlZHVjZWQgaGVpZ2h0LCBub24tYm9sZCBmb250cy4gTm90aGluZyBtb3JlLlxuXG5Mb29rcyByb3VnaGx5IGxpa2UgVWJ1bnR1IHNlc3Npb24ncyBwYW5lbCAoWWFydSkuIFlvdSBjYW4gZWFzaWx5IG1vZGlmeSB0aGUgdHJhbnNwYXJlbmN5IGxldmVsIHRocm91Z2ggdGhlIENTUyBzdHlsZXNoZWV0IGluIHRoZSBleHRlbnNpb25zJ3MgZm9sZGVyLiIsCiAgIm5hbWUiOiAiVWJ1bnR1LWxpa2UgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInRyYW5zcGFyZW50LXBhbmVsQGZ0aHgiLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "mounter@heartmire", "name": "Mounter", "pname": "mounter", "description": "Mount and umount fstab entries with 'noauto,user' options.\n\n/etc/fstab example that will be picked up and listed by the extension:\n192.168.1.1:/mnt/data/users/martin  /mnt/server-martin  nfs  noauto,user,noatime,rw  0  0\n\nToggle the menu with the shortcut: CTRL + ALT + m", "link": "https://extensions.gnome.org/extension/2666/mounter/", "shell_version_map": {"38": {"version": "5", "sha256": "13nxnpiv8f9bzxqgv3iinb92ib9zk3jmmx273acs25lcjcw8v6l0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdW50IGFuZCB1bW91bnQgZnN0YWIgZW50cmllcyB3aXRoICdub2F1dG8sdXNlcicgb3B0aW9ucy5cblxuL2V0Yy9mc3RhYiBleGFtcGxlIHRoYXQgd2lsbCBiZSBwaWNrZWQgdXAgYW5kIGxpc3RlZCBieSB0aGUgZXh0ZW5zaW9uOlxuMTkyLjE2OC4xLjE6L21udC9kYXRhL3VzZXJzL21hcnRpbiAgL21udC9zZXJ2ZXItbWFydGluICBuZnMgIG5vYXV0byx1c2VyLG5vYXRpbWUscncgIDAgIDBcblxuVG9nZ2xlIHRoZSBtZW51IHdpdGggdGhlIHNob3J0Y3V0OiBDVFJMICsgQUxUICsgbSIsCiAgIm5hbWUiOiAiTW91bnRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tb3VudGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9tYXJ0aW5oamFydG15ci9nbm9tZS1zaGVsbC1leHRlbnNpb24tbW91bnRlciIsCiAgInV1aWQiOiAibW91bnRlckBoZWFydG1pcmUiLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "13nxnpiv8f9bzxqgv3iinb92ib9zk3jmmx273acs25lcjcw8v6l0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdW50IGFuZCB1bW91bnQgZnN0YWIgZW50cmllcyB3aXRoICdub2F1dG8sdXNlcicgb3B0aW9ucy5cblxuL2V0Yy9mc3RhYiBleGFtcGxlIHRoYXQgd2lsbCBiZSBwaWNrZWQgdXAgYW5kIGxpc3RlZCBieSB0aGUgZXh0ZW5zaW9uOlxuMTkyLjE2OC4xLjE6L21udC9kYXRhL3VzZXJzL21hcnRpbiAgL21udC9zZXJ2ZXItbWFydGluICBuZnMgIG5vYXV0byx1c2VyLG5vYXRpbWUscncgIDAgIDBcblxuVG9nZ2xlIHRoZSBtZW51IHdpdGggdGhlIHNob3J0Y3V0OiBDVFJMICsgQUxUICsgbSIsCiAgIm5hbWUiOiAiTW91bnRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tb3VudGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9tYXJ0aW5oamFydG15ci9nbm9tZS1zaGVsbC1leHRlbnNpb24tbW91bnRlciIsCiAgInV1aWQiOiAibW91bnRlckBoZWFydG1pcmUiLAogICJ2ZXJzaW9uIjogNQp9"}, "41": {"version": "5", "sha256": "13nxnpiv8f9bzxqgv3iinb92ib9zk3jmmx273acs25lcjcw8v6l0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdW50IGFuZCB1bW91bnQgZnN0YWIgZW50cmllcyB3aXRoICdub2F1dG8sdXNlcicgb3B0aW9ucy5cblxuL2V0Yy9mc3RhYiBleGFtcGxlIHRoYXQgd2lsbCBiZSBwaWNrZWQgdXAgYW5kIGxpc3RlZCBieSB0aGUgZXh0ZW5zaW9uOlxuMTkyLjE2OC4xLjE6L21udC9kYXRhL3VzZXJzL21hcnRpbiAgL21udC9zZXJ2ZXItbWFydGluICBuZnMgIG5vYXV0byx1c2VyLG5vYXRpbWUscncgIDAgIDBcblxuVG9nZ2xlIHRoZSBtZW51IHdpdGggdGhlIHNob3J0Y3V0OiBDVFJMICsgQUxUICsgbSIsCiAgIm5hbWUiOiAiTW91bnRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tb3VudGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9tYXJ0aW5oamFydG15ci9nbm9tZS1zaGVsbC1leHRlbnNpb24tbW91bnRlciIsCiAgInV1aWQiOiAibW91bnRlckBoZWFydG1pcmUiLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "simple-task-bar@fthx", "name": "Simple Task Bar", "pname": "simple-task-bar", "description": "*** Superseeded by https://extensions.gnome.org/extension/4000/babar. ***\n\nTask bar in the top panel, tasks on all workspaces.\n\n Basic actions, nothing more : activate, minimize, switch, per-desktop overview. Some settings through GNOME Extensions manager, thanks @leleat.\n\n This extension can hide the Activities button and makes the Places Menu extension's label become a folder icon.\n\n This extension is *light* and should *not interfere* with GNOME Shell behaviour+logic. If you want more, please consider installing Dash to Panel.", "link": "https://extensions.gnome.org/extension/2672/simple-task-bar/", "shell_version_map": {"38": {"version": "33", "sha256": "0rsvfymmnljqikarihmgs2fdi14pclfdhwrsz06zxzxd6nvmj4x1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIioqKiBTdXBlcnNlZWRlZCBieSBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi80MDAwL2JhYmFyLiAqKipcblxuVGFzayBiYXIgaW4gdGhlIHRvcCBwYW5lbCwgdGFza3Mgb24gYWxsIHdvcmtzcGFjZXMuXG5cbiBCYXNpYyBhY3Rpb25zLCBub3RoaW5nIG1vcmUgOiBhY3RpdmF0ZSwgbWluaW1pemUsIHN3aXRjaCwgcGVyLWRlc2t0b3Agb3ZlcnZpZXcuIFNvbWUgc2V0dGluZ3MgdGhyb3VnaCBHTk9NRSBFeHRlbnNpb25zIG1hbmFnZXIsIHRoYW5rcyBAbGVsZWF0LlxuXG4gVGhpcyBleHRlbnNpb24gY2FuIGhpZGUgdGhlIEFjdGl2aXRpZXMgYnV0dG9uIGFuZCBtYWtlcyB0aGUgUGxhY2VzIE1lbnUgZXh0ZW5zaW9uJ3MgbGFiZWwgYmVjb21lIGEgZm9sZGVyIGljb24uXG5cbiBUaGlzIGV4dGVuc2lvbiBpcyAqbGlnaHQqIGFuZCBzaG91bGQgKm5vdCBpbnRlcmZlcmUqIHdpdGggR05PTUUgU2hlbGwgYmVoYXZpb3VyK2xvZ2ljLiBJZiB5b3Ugd2FudCBtb3JlLCBwbGVhc2UgY29uc2lkZXIgaW5zdGFsbGluZyBEYXNoIHRvIFBhbmVsLiIsCiAgIm5hbWUiOiAiU2ltcGxlIFRhc2sgQmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9zaW1wbGUtdGFzay1iYXIiLAogICJ1dWlkIjogInNpbXBsZS10YXNrLWJhckBmdGh4IiwKICAidmVyc2lvbiI6IDMzCn0="}}}
-, {"uuid": "minimize-shelf@etenil", "name": "Minimize Shelf", "pname": "minimize-shelf", "description": "Minimize shelf in the top panel, with minimized windows of the current workspace.\nThis extension is light and should not interfere with GNOME Shell behaviour+logic.", "link": "https://extensions.gnome.org/extension/2735/minimize-shelf/", "shell_version_map": {"40": {"version": "10", "sha256": "0kslw9nikb6nza9axvw0salkdx2nx1bpgfrlznprw7xf43x2dqyd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIHNoZWxmIGluIHRoZSB0b3AgcGFuZWwsIHdpdGggbWluaW1pemVkIHdpbmRvd3Mgb2YgdGhlIGN1cnJlbnQgd29ya3NwYWNlLlxuVGhpcyBleHRlbnNpb24gaXMgbGlnaHQgYW5kIHNob3VsZCBub3QgaW50ZXJmZXJlIHdpdGggR05PTUUgU2hlbGwgYmVoYXZpb3VyK2xvZ2ljLiIsCiAgIm5hbWUiOiAiTWluaW1pemUgU2hlbGYiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iYXRpc3Rlby9taW5pbWl6ZS1zaGVsZiIsCiAgInV1aWQiOiAibWluaW1pemUtc2hlbGZAZXRlbmlsIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "0kslw9nikb6nza9axvw0salkdx2nx1bpgfrlznprw7xf43x2dqyd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIHNoZWxmIGluIHRoZSB0b3AgcGFuZWwsIHdpdGggbWluaW1pemVkIHdpbmRvd3Mgb2YgdGhlIGN1cnJlbnQgd29ya3NwYWNlLlxuVGhpcyBleHRlbnNpb24gaXMgbGlnaHQgYW5kIHNob3VsZCBub3QgaW50ZXJmZXJlIHdpdGggR05PTUUgU2hlbGwgYmVoYXZpb3VyK2xvZ2ljLiIsCiAgIm5hbWUiOiAiTWluaW1pemUgU2hlbGYiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iYXRpc3Rlby9taW5pbWl6ZS1zaGVsZiIsCiAgInV1aWQiOiAibWluaW1pemUtc2hlbGZAZXRlbmlsIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
-, {"uuid": "remove-alt-tab-delay@daase.net", "name": "Remove Alt+Tab Delay v2", "pname": "remove-alttab-delay-v2", "description": "Another extension that removes the 0.15 second popup delay in switcher pop-ups. This extension is actively maintained. It fixes at least this known issue: https://gitlab.gnome.org/GNOME/mutter/issues/888.", "link": "https://extensions.gnome.org/extension/2741/remove-alttab-delay-v2/", "shell_version_map": {"38": {"version": "7", "sha256": "0zzckr3w5547ja42pq4gyfqkvd7xfnh5pwsbdqbxrdjd5d0sh7rv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uIHRoYXQgcmVtb3ZlcyB0aGUgMC4xNSBzZWNvbmQgcG9wdXAgZGVsYXkgaW4gc3dpdGNoZXIgcG9wLXVwcy4gVGhpcyBleHRlbnNpb24gaXMgYWN0aXZlbHkgbWFpbnRhaW5lZC4gSXQgZml4ZXMgYXQgbGVhc3QgdGhpcyBrbm93biBpc3N1ZTogaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL211dHRlci9pc3N1ZXMvODg4LiIsCiAgIm5hbWUiOiAiUmVtb3ZlIEFsdCtUYWIgRGVsYXkgdjIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9yZW1vdmUtYWx0LXRhYi1kZWxheSIsCiAgInV1aWQiOiAicmVtb3ZlLWFsdC10YWItZGVsYXlAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0zzckr3w5547ja42pq4gyfqkvd7xfnh5pwsbdqbxrdjd5d0sh7rv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uIHRoYXQgcmVtb3ZlcyB0aGUgMC4xNSBzZWNvbmQgcG9wdXAgZGVsYXkgaW4gc3dpdGNoZXIgcG9wLXVwcy4gVGhpcyBleHRlbnNpb24gaXMgYWN0aXZlbHkgbWFpbnRhaW5lZC4gSXQgZml4ZXMgYXQgbGVhc3QgdGhpcyBrbm93biBpc3N1ZTogaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL211dHRlci9pc3N1ZXMvODg4LiIsCiAgIm5hbWUiOiAiUmVtb3ZlIEFsdCtUYWIgRGVsYXkgdjIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9yZW1vdmUtYWx0LXRhYi1kZWxheSIsCiAgInV1aWQiOiAicmVtb3ZlLWFsdC10YWItZGVsYXlAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "0zzckr3w5547ja42pq4gyfqkvd7xfnh5pwsbdqbxrdjd5d0sh7rv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uIHRoYXQgcmVtb3ZlcyB0aGUgMC4xNSBzZWNvbmQgcG9wdXAgZGVsYXkgaW4gc3dpdGNoZXIgcG9wLXVwcy4gVGhpcyBleHRlbnNpb24gaXMgYWN0aXZlbHkgbWFpbnRhaW5lZC4gSXQgZml4ZXMgYXQgbGVhc3QgdGhpcyBrbm93biBpc3N1ZTogaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL211dHRlci9pc3N1ZXMvODg4LiIsCiAgIm5hbWUiOiAiUmVtb3ZlIEFsdCtUYWIgRGVsYXkgdjIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9yZW1vdmUtYWx0LXRhYi1kZWxheSIsCiAgInV1aWQiOiAicmVtb3ZlLWFsdC10YWItZGVsYXlAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
+, {"uuid": "minimize-shelf@etenil", "name": "Minimize Shelf", "pname": "minimize-shelf", "description": "Minimize shelf in the top panel, with minimized windows of the current workspace.\nThis extension is light and should not interfere with GNOME Shell behaviour+logic.", "link": "https://extensions.gnome.org/extension/2735/minimize-shelf/", "shell_version_map": {"40": {"version": "10", "sha256": "0kslw9nikb6nza9axvw0salkdx2nx1bpgfrlznprw7xf43x2dqyd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIHNoZWxmIGluIHRoZSB0b3AgcGFuZWwsIHdpdGggbWluaW1pemVkIHdpbmRvd3Mgb2YgdGhlIGN1cnJlbnQgd29ya3NwYWNlLlxuVGhpcyBleHRlbnNpb24gaXMgbGlnaHQgYW5kIHNob3VsZCBub3QgaW50ZXJmZXJlIHdpdGggR05PTUUgU2hlbGwgYmVoYXZpb3VyK2xvZ2ljLiIsCiAgIm5hbWUiOiAiTWluaW1pemUgU2hlbGYiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iYXRpc3Rlby9taW5pbWl6ZS1zaGVsZiIsCiAgInV1aWQiOiAibWluaW1pemUtc2hlbGZAZXRlbmlsIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "0kslw9nikb6nza9axvw0salkdx2nx1bpgfrlznprw7xf43x2dqyd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIHNoZWxmIGluIHRoZSB0b3AgcGFuZWwsIHdpdGggbWluaW1pemVkIHdpbmRvd3Mgb2YgdGhlIGN1cnJlbnQgd29ya3NwYWNlLlxuVGhpcyBleHRlbnNpb24gaXMgbGlnaHQgYW5kIHNob3VsZCBub3QgaW50ZXJmZXJlIHdpdGggR05PTUUgU2hlbGwgYmVoYXZpb3VyK2xvZ2ljLiIsCiAgIm5hbWUiOiAiTWluaW1pemUgU2hlbGYiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iYXRpc3Rlby9taW5pbWl6ZS1zaGVsZiIsCiAgInV1aWQiOiAibWluaW1pemUtc2hlbGZAZXRlbmlsIiwKICAidmVyc2lvbiI6IDEwCn0="}, "42": {"version": "10", "sha256": "0kslw9nikb6nza9axvw0salkdx2nx1bpgfrlznprw7xf43x2dqyd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplIHNoZWxmIGluIHRoZSB0b3AgcGFuZWwsIHdpdGggbWluaW1pemVkIHdpbmRvd3Mgb2YgdGhlIGN1cnJlbnQgd29ya3NwYWNlLlxuVGhpcyBleHRlbnNpb24gaXMgbGlnaHQgYW5kIHNob3VsZCBub3QgaW50ZXJmZXJlIHdpdGggR05PTUUgU2hlbGwgYmVoYXZpb3VyK2xvZ2ljLiIsCiAgIm5hbWUiOiAiTWluaW1pemUgU2hlbGYiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iYXRpc3Rlby9taW5pbWl6ZS1zaGVsZiIsCiAgInV1aWQiOiAibWluaW1pemUtc2hlbGZAZXRlbmlsIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
+, {"uuid": "remove-alt-tab-delay@daase.net", "name": "Remove Alt+Tab Delay v2", "pname": "remove-alttab-delay-v2", "description": "Another extension that removes the 0.15 second popup delay in switcher pop-ups. This extension is actively maintained. It fixes at least this known issue: https://gitlab.gnome.org/GNOME/mutter/issues/888.", "link": "https://extensions.gnome.org/extension/2741/remove-alttab-delay-v2/", "shell_version_map": {"38": {"version": "7", "sha256": "0zzckr3w5547ja42pq4gyfqkvd7xfnh5pwsbdqbxrdjd5d0sh7rv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uIHRoYXQgcmVtb3ZlcyB0aGUgMC4xNSBzZWNvbmQgcG9wdXAgZGVsYXkgaW4gc3dpdGNoZXIgcG9wLXVwcy4gVGhpcyBleHRlbnNpb24gaXMgYWN0aXZlbHkgbWFpbnRhaW5lZC4gSXQgZml4ZXMgYXQgbGVhc3QgdGhpcyBrbm93biBpc3N1ZTogaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL211dHRlci9pc3N1ZXMvODg4LiIsCiAgIm5hbWUiOiAiUmVtb3ZlIEFsdCtUYWIgRGVsYXkgdjIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9yZW1vdmUtYWx0LXRhYi1kZWxheSIsCiAgInV1aWQiOiAicmVtb3ZlLWFsdC10YWItZGVsYXlAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0zzckr3w5547ja42pq4gyfqkvd7xfnh5pwsbdqbxrdjd5d0sh7rv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uIHRoYXQgcmVtb3ZlcyB0aGUgMC4xNSBzZWNvbmQgcG9wdXAgZGVsYXkgaW4gc3dpdGNoZXIgcG9wLXVwcy4gVGhpcyBleHRlbnNpb24gaXMgYWN0aXZlbHkgbWFpbnRhaW5lZC4gSXQgZml4ZXMgYXQgbGVhc3QgdGhpcyBrbm93biBpc3N1ZTogaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL211dHRlci9pc3N1ZXMvODg4LiIsCiAgIm5hbWUiOiAiUmVtb3ZlIEFsdCtUYWIgRGVsYXkgdjIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9yZW1vdmUtYWx0LXRhYi1kZWxheSIsCiAgInV1aWQiOiAicmVtb3ZlLWFsdC10YWItZGVsYXlAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "0zzckr3w5547ja42pq4gyfqkvd7xfnh5pwsbdqbxrdjd5d0sh7rv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uIHRoYXQgcmVtb3ZlcyB0aGUgMC4xNSBzZWNvbmQgcG9wdXAgZGVsYXkgaW4gc3dpdGNoZXIgcG9wLXVwcy4gVGhpcyBleHRlbnNpb24gaXMgYWN0aXZlbHkgbWFpbnRhaW5lZC4gSXQgZml4ZXMgYXQgbGVhc3QgdGhpcyBrbm93biBpc3N1ZTogaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL211dHRlci9pc3N1ZXMvODg4LiIsCiAgIm5hbWUiOiAiUmVtb3ZlIEFsdCtUYWIgRGVsYXkgdjIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9yZW1vdmUtYWx0LXRhYi1kZWxheSIsCiAgInV1aWQiOiAicmVtb3ZlLWFsdC10YWItZGVsYXlAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "42": {"version": "7", "sha256": "0zzckr3w5547ja42pq4gyfqkvd7xfnh5pwsbdqbxrdjd5d0sh7rv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFub3RoZXIgZXh0ZW5zaW9uIHRoYXQgcmVtb3ZlcyB0aGUgMC4xNSBzZWNvbmQgcG9wdXAgZGVsYXkgaW4gc3dpdGNoZXIgcG9wLXVwcy4gVGhpcyBleHRlbnNpb24gaXMgYWN0aXZlbHkgbWFpbnRhaW5lZC4gSXQgZml4ZXMgYXQgbGVhc3QgdGhpcyBrbm93biBpc3N1ZTogaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL211dHRlci9pc3N1ZXMvODg4LiIsCiAgIm5hbWUiOiAiUmVtb3ZlIEFsdCtUYWIgRGVsYXkgdjIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Cam9lcm5EYWFzZS9yZW1vdmUtYWx0LXRhYi1kZWxheSIsCiAgInV1aWQiOiAicmVtb3ZlLWFsdC10YWItZGVsYXlAZGFhc2UubmV0IiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "corona-tracker@lachhebo.github.io", "name": "corona-tracker", "pname": "corona-tracker", "description": "A GNOME Shell extension (GNOME Panel applet) to notify you every day with information about the COVID-19 virus spread.", "link": "https://extensions.gnome.org/extension/2767/corona-tracker/", "shell_version_map": {"38": {"version": "14", "sha256": "12mnlkh2l23wdx6m28x332lhqd0yq16zhfnmdhk6bzma7wq73sxa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIG5vdGlmeSB5b3UgZXZlcnkgZGF5IHdpdGggaW5mb3JtYXRpb24gYWJvdXQgdGhlIENPVklELTE5IHZpcnVzIHNwcmVhZC4iLAogICJuYW1lIjogImNvcm9uYS10cmFja2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xhY2hoZWJvL2Nvcm9uYS10cmFja2VyIiwKICAidXVpZCI6ICJjb3JvbmEtdHJhY2tlckBsYWNoaGViby5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "40": {"version": "14", "sha256": "12mnlkh2l23wdx6m28x332lhqd0yq16zhfnmdhk6bzma7wq73sxa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgZXh0ZW5zaW9uIChHTk9NRSBQYW5lbCBhcHBsZXQpIHRvIG5vdGlmeSB5b3UgZXZlcnkgZGF5IHdpdGggaW5mb3JtYXRpb24gYWJvdXQgdGhlIENPVklELTE5IHZpcnVzIHNwcmVhZC4iLAogICJuYW1lIjogImNvcm9uYS10cmFja2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xhY2hoZWJvL2Nvcm9uYS10cmFja2VyIiwKICAidXVpZCI6ICJjb3JvbmEtdHJhY2tlckBsYWNoaGViby5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
 , {"uuid": "gnome-trash@gnome-trash.b00f.gitlab.com", "name": "Gnome Trash - UNMAINTAINED", "pname": "gnome-trash", "description": "MOVED HERE:\n\nhttps://github.com/b00f/gnome-trash", "link": "https://extensions.gnome.org/extension/2773/gnome-trash/", "shell_version_map": {"38": {"version": "13", "sha256": "1z7da74nvl4wvy6ckv55xkl3sc5qzcv6lz5k6bdfa0xcshifhl6h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1PVkVEIEhFUkU6XG5cbmh0dHBzOi8vZ2l0aHViLmNvbS9iMDBmL2dub21lLXRyYXNoIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtdHJhc2giLAogICJuYW1lIjogIkdub21lIFRyYXNoIC0gVU5NQUlOVEFJTkVEIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYjAwZi9nbm9tZS10cmFzaCIsCiAgInV1aWQiOiAiZ25vbWUtdHJhc2hAZ25vbWUtdHJhc2guYjAwZi5naXRsYWIuY29tIiwKICAidmVyc2lvbiI6IDEzCn0="}}}
 , {"uuid": "customgestures@raushankumar27.github.com", "name": "Custom 3 Finger Gestures", "pname": "custom-3-finger-gestures", "description": "3 Finger touchpad gestures into gnome-shell", "link": "https://extensions.gnome.org/extension/2781/custom-3-finger-gestures/", "shell_version_map": {"38": {"version": "7", "sha256": "1a51rlf5fjlzlm2y3cv1ncf4glqa48rkpi0z1b8hd5m1fzgdx6m9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIjMgRmluZ2VyIHRvdWNocGFkIGdlc3R1cmVzIGludG8gZ25vbWUtc2hlbGwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjdXN0b21nZXN0dXJlcyIsCiAgIm5hbWUiOiAiQ3VzdG9tIDMgRmluZ2VyIEdlc3R1cmVzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmN1c3RvbWdlc3R1cmVzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmF1c2hhbmt1bWFyMjcvY3VzdG9tZ2VzdHVyZSIsCiAgInV1aWQiOiAiY3VzdG9tZ2VzdHVyZXNAcmF1c2hhbmt1bWFyMjcuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "overview-improved@human.experience", "name": "Overview Improved", "pname": "overview-improved", "description": "Improved, more Unity like overview\n\n* Dash-To-Dock or Ubuntu Dock integration creates Unity-like experience showing windows of specific type\n* Windows search in overview\nConfigurable keybinding (Super+w) to trigger current window overlay\n* Clicking empty space in overview closes\n* Do not show overview when showing application on multiple monitors\n* Multi Monitors Add-On Overview integration\n\nCaveat: may clash with other extensions that modify overview experience", "link": "https://extensions.gnome.org/extension/2802/overview-improved/", "shell_version_map": {"38": {"version": "8", "sha256": "0pzk6kzhbm15rmd540gv2sc0yqbiv31lil4ra3k5k7cpnr9ipsy6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkltcHJvdmVkLCBtb3JlIFVuaXR5IGxpa2Ugb3ZlcnZpZXdcblxuKiBEYXNoLVRvLURvY2sgb3IgVWJ1bnR1IERvY2sgaW50ZWdyYXRpb24gY3JlYXRlcyBVbml0eS1saWtlIGV4cGVyaWVuY2Ugc2hvd2luZyB3aW5kb3dzIG9mIHNwZWNpZmljIHR5cGVcbiogV2luZG93cyBzZWFyY2ggaW4gb3ZlcnZpZXdcbkNvbmZpZ3VyYWJsZSBrZXliaW5kaW5nIChTdXBlcit3KSB0byB0cmlnZ2VyIGN1cnJlbnQgd2luZG93IG92ZXJsYXlcbiogQ2xpY2tpbmcgZW1wdHkgc3BhY2UgaW4gb3ZlcnZpZXcgY2xvc2VzXG4qIERvIG5vdCBzaG93IG92ZXJ2aWV3IHdoZW4gc2hvd2luZyBhcHBsaWNhdGlvbiBvbiBtdWx0aXBsZSBtb25pdG9yc1xuKiBNdWx0aSBNb25pdG9ycyBBZGQtT24gT3ZlcnZpZXcgaW50ZWdyYXRpb25cblxuQ2F2ZWF0OiBtYXkgY2xhc2ggd2l0aCBvdGhlciBleHRlbnNpb25zIHRoYXQgbW9kaWZ5IG92ZXJ2aWV3IGV4cGVyaWVuY2UiLAogICJuYW1lIjogIk92ZXJ2aWV3IEltcHJvdmVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm92ZXJ2aWV3LWltcHJvdmVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2NvZGViZXJnLm9yZy9odW1hbi5leHBlcmllbmNlL2dub21lLXNoZWxsLW92ZXJ2aWV3LWltcHJvdmVkIiwKICAidXVpZCI6ICJvdmVydmlldy1pbXByb3ZlZEBodW1hbi5leHBlcmllbmNlIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"uuid": "brightnesspanelmenuindicator@do.sch.dev.gmail.com", "name": "Brightness Panel Menu Indicator", "pname": "brightness-panel-menu-indicator", "description": "If a backlight device is available, this extension shows a brightness indicator on panel menu, that allows changing brightness through scrolling on it. Useful, when using ddcci-driver-linux on a desktop PC without native keyboard buttons to change brightness.", "link": "https://extensions.gnome.org/extension/2808/brightness-panel-menu-indicator/", "shell_version_map": {"38": {"version": "4", "sha256": "14c6klkpi0y6lxi0vkpgq86kjwf2ckkjl80530sybqfbfvbcffvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RvLXNjaC9nbm9tZS1zaGVsbC1icmlnaHRuZXNzLXBhbmVsLW1lbnUtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJicmlnaHRuZXNzcGFuZWxtZW51aW5kaWNhdG9yQGRvLnNjaC5kZXYuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "14c6klkpi0y6lxi0vkpgq86kjwf2ckkjl80530sybqfbfvbcffvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RvLXNjaC9nbm9tZS1zaGVsbC1icmlnaHRuZXNzLXBhbmVsLW1lbnUtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJicmlnaHRuZXNzcGFuZWxtZW51aW5kaWNhdG9yQGRvLnNjaC5kZXYuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "14c6klkpi0y6lxi0vkpgq86kjwf2ckkjl80530sybqfbfvbcffvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIklmIGEgYmFja2xpZ2h0IGRldmljZSBpcyBhdmFpbGFibGUsIHRoaXMgZXh0ZW5zaW9uIHNob3dzIGEgYnJpZ2h0bmVzcyBpbmRpY2F0b3Igb24gcGFuZWwgbWVudSwgdGhhdCBhbGxvd3MgY2hhbmdpbmcgYnJpZ2h0bmVzcyB0aHJvdWdoIHNjcm9sbGluZyBvbiBpdC4gVXNlZnVsLCB3aGVuIHVzaW5nIGRkY2NpLWRyaXZlci1saW51eCBvbiBhIGRlc2t0b3AgUEMgd2l0aG91dCBuYXRpdmUga2V5Ym9hcmQgYnV0dG9ucyB0byBjaGFuZ2UgYnJpZ2h0bmVzcy4iLAogICJuYW1lIjogIkJyaWdodG5lc3MgUGFuZWwgTWVudSBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RvLXNjaC9nbm9tZS1zaGVsbC1icmlnaHRuZXNzLXBhbmVsLW1lbnUtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJicmlnaHRuZXNzcGFuZWxtZW51aW5kaWNhdG9yQGRvLnNjaC5kZXYuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "crypto@alipirpiran.github", "name": "Crypto Price Tracker", "pname": "crypto-price-tracker", "description": "Simple extension to track price of Crypto Currencies\n\nadd coins by Binance symbols, for example: \"BTCUSDT\"\ncomplete list on binance: https://www.binance.com/indexSpa.html", "link": "https://extensions.gnome.org/extension/2817/crypto-price-tracker/", "shell_version_map": {"40": {"version": "13", "sha256": "1kiq0h3vyw9nvc6al0w892khmc99bmaafb21rm6zin6qpm22dz7r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdG8gdHJhY2sgcHJpY2Ugb2YgQ3J5cHRvIEN1cnJlbmNpZXNcblxuYWRkIGNvaW5zIGJ5IEJpbmFuY2Ugc3ltYm9scywgZm9yIGV4YW1wbGU6IFwiQlRDVVNEVFwiXG5jb21wbGV0ZSBsaXN0IG9uIGJpbmFuY2U6IGh0dHBzOi8vd3d3LmJpbmFuY2UuY29tL2luZGV4U3BhLmh0bWwiLAogICJuYW1lIjogIkNyeXB0byBQcmljZSBUcmFja2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNyeXB0by10cmFja2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FsaXBpcnBpcmFuL0NyeXB0by1QcmljZS1UcmFja2VyLWZvci1Hbm9tZS1TaGVsbCIsCiAgInV1aWQiOiAiY3J5cHRvQGFsaXBpcnBpcmFuLmdpdGh1YiIsCiAgInZlcnNpb24iOiAxMwp9"}}}
-, {"uuid": "ibus-tweaker@tuberry.github.com", "name": "IBus Tweaker", "pname": "ibus-tweaker", "description": "Tweaker of IBus for orientation, theme, font, input mode and clipboard history\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/2820/ibus-tweaker/", "shell_version_map": {"38": {"version": "28", "sha256": "1ahhcq8hpxkdvq1fp8gd8qp1cfsgqsm9swn4ph9kyrzr7j8jvc3k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250LCBpbnB1dCBtb2RlIGFuZCBjbGlwYm9hcmQgaGlzdG9yeVxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpYnVzLXR3ZWFrZXIiLAogICJuYW1lIjogIklCdXMgVHdlYWtlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pYnVzLXR3ZWFrZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2lidXMtdHdlYWtlciIsCiAgInV1aWQiOiAiaWJ1cy10d2Vha2VyQHR1YmVycnkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyOAp9"}, "40": {"version": "34", "sha256": "0fs0hlxdnhssx9vcghbicg1fn3clws9q2f3nzdi4virpm8wksf3f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250LCBpbnB1dCBtb2RlIGFuZCBjbGlwYm9hcmQgaGlzdG9yeVxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpYnVzLXR3ZWFrZXIiLAogICJuYW1lIjogIklCdXMgVHdlYWtlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pYnVzLXR3ZWFrZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9pYnVzLXR3ZWFrZXIiLAogICJ1dWlkIjogImlidXMtdHdlYWtlckB0dWJlcnJ5LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}, "41": {"version": "36", "sha256": "0f819v8n1rvvwrir7qf8fp0bvn5zk899lpc4dr8f9jk9g8w57q7d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250LCBpbnB1dCBtb2RlIGFuZCBjbGlwYm9hcmQgaGlzdG9yeVxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24taWJ1cy10d2Vha2VyIiwKICAibmFtZSI6ICJJQnVzIFR3ZWFrZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaWJ1cy10d2Vha2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvaWJ1cy10d2Vha2VyIiwKICAidXVpZCI6ICJpYnVzLXR3ZWFrZXJAdHViZXJyeS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDM2Cn0="}}}
+, {"uuid": "ibus-tweaker@tuberry.github.com", "name": "IBus Tweaker", "pname": "ibus-tweaker", "description": "Tweaker of IBus for orientation, theme, font, input mode and clipboard history\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/2820/ibus-tweaker/", "shell_version_map": {"38": {"version": "28", "sha256": "1ahhcq8hpxkdvq1fp8gd8qp1cfsgqsm9swn4ph9kyrzr7j8jvc3k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250LCBpbnB1dCBtb2RlIGFuZCBjbGlwYm9hcmQgaGlzdG9yeVxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpYnVzLXR3ZWFrZXIiLAogICJuYW1lIjogIklCdXMgVHdlYWtlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pYnVzLXR3ZWFrZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2lidXMtdHdlYWtlciIsCiAgInV1aWQiOiAiaWJ1cy10d2Vha2VyQHR1YmVycnkuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyOAp9"}, "40": {"version": "34", "sha256": "0fs0hlxdnhssx9vcghbicg1fn3clws9q2f3nzdi4virpm8wksf3f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250LCBpbnB1dCBtb2RlIGFuZCBjbGlwYm9hcmQgaGlzdG9yeVxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpYnVzLXR3ZWFrZXIiLAogICJuYW1lIjogIklCdXMgVHdlYWtlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5pYnVzLXR3ZWFrZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9pYnVzLXR3ZWFrZXIiLAogICJ1dWlkIjogImlidXMtdHdlYWtlckB0dWJlcnJ5LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMzQKfQ=="}, "41": {"version": "36", "sha256": "0f819v8n1rvvwrir7qf8fp0bvn5zk899lpc4dr8f9jk9g8w57q7d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250LCBpbnB1dCBtb2RlIGFuZCBjbGlwYm9hcmQgaGlzdG9yeVxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24taWJ1cy10d2Vha2VyIiwKICAibmFtZSI6ICJJQnVzIFR3ZWFrZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaWJ1cy10d2Vha2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvaWJ1cy10d2Vha2VyIiwKICAidXVpZCI6ICJpYnVzLXR3ZWFrZXJAdHViZXJyeS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDM2Cn0="}, "42": {"version": "38", "sha256": "0crdw1z2yan0mbc36v8vw0iinqbv4lyqzsvdyhz8zsi9q4asrlg6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrZXIgb2YgSUJ1cyBmb3Igb3JpZW50YXRpb24sIHRoZW1lLCBmb250LCBpbnB1dCBtb2RlIGFuZCBjbGlwYm9hcmQgaGlzdG9yeVxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24taWJ1cy10d2Vha2VyIiwKICAibmFtZSI6ICJJQnVzIFR3ZWFrZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaWJ1cy10d2Vha2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvaWJ1cy10d2Vha2VyIiwKICAidXVpZCI6ICJpYnVzLXR3ZWFrZXJAdHViZXJyeS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDM4Cn0="}}}
 , {"uuid": "generic-monitor@gnome-shell-extensions", "name": "Generic Monitor", "pname": "generic-monitor", "description": "Display text & icon on systray using DBUS", "link": "https://extensions.gnome.org/extension/2826/generic-monitor/", "shell_version_map": {"38": {"version": "9", "sha256": "1gryq7agphzkcfnf3q4x4azp1d0wa0pim8xasddmdgk922qfb41q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGV4dCAmIGljb24gb24gc3lzdHJheSB1c2luZyBEQlVTIiwKICAibmFtZSI6ICJHZW5lcmljIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cDovL2luZGVmZXJvLnNvdXRhZGUuZnIvcC9nZW5lcmljbW9uaXRvciIsCiAgInV1aWQiOiAiZ2VuZXJpYy1tb25pdG9yQGdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ2ZXJzaW9uIjogOQp9"}, "40": {"version": "9", "sha256": "1gryq7agphzkcfnf3q4x4azp1d0wa0pim8xasddmdgk922qfb41q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGV4dCAmIGljb24gb24gc3lzdHJheSB1c2luZyBEQlVTIiwKICAibmFtZSI6ICJHZW5lcmljIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cDovL2luZGVmZXJvLnNvdXRhZGUuZnIvcC9nZW5lcmljbW9uaXRvciIsCiAgInV1aWQiOiAiZ2VuZXJpYy1tb25pdG9yQGdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ2ZXJzaW9uIjogOQp9"}, "41": {"version": "9", "sha256": "1gryq7agphzkcfnf3q4x4azp1d0wa0pim8xasddmdgk922qfb41q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGV4dCAmIGljb24gb24gc3lzdHJheSB1c2luZyBEQlVTIiwKICAibmFtZSI6ICJHZW5lcmljIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cDovL2luZGVmZXJvLnNvdXRhZGUuZnIvcC9nZW5lcmljbW9uaXRvciIsCiAgInV1aWQiOiAiZ2VuZXJpYy1tb25pdG9yQGdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJ2ZXJzaW9uIjogOQp9"}}}
 , {"uuid": "hide-keyboard-layout@sitnik.ru", "name": "Hide Keyboard Layout", "pname": "hide-keyboard-layout", "description": "Hide keyboard layout indicator in status bar", "link": "https://extensions.gnome.org/extension/2848/hide-keyboard-layout/", "shell_version_map": {"38": {"version": "3", "sha256": "06l7x3nhrabiii93zgpxv4qyd525sxxn687x6lraxqlx1i824qzd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUga2V5Ym9hcmQgbGF5b3V0IGluZGljYXRvciBpbiBzdGF0dXMgYmFyIiwKICAibmFtZSI6ICJIaWRlIEtleWJvYXJkIExheW91dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWkvaGlkZS1rZXlib2FyZC1sYXlvdXQiLAogICJ1dWlkIjogImhpZGUta2V5Ym9hcmQtbGF5b3V0QHNpdG5pay5ydSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "06l7x3nhrabiii93zgpxv4qyd525sxxn687x6lraxqlx1i824qzd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUga2V5Ym9hcmQgbGF5b3V0IGluZGljYXRvciBpbiBzdGF0dXMgYmFyIiwKICAibmFtZSI6ICJIaWRlIEtleWJvYXJkIExheW91dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWkvaGlkZS1rZXlib2FyZC1sYXlvdXQiLAogICJ1dWlkIjogImhpZGUta2V5Ym9hcmQtbGF5b3V0QHNpdG5pay5ydSIsCiAgInZlcnNpb24iOiAzCn0="}, "41": {"version": "3", "sha256": "06l7x3nhrabiii93zgpxv4qyd525sxxn687x6lraxqlx1i824qzd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUga2V5Ym9hcmQgbGF5b3V0IGluZGljYXRvciBpbiBzdGF0dXMgYmFyIiwKICAibmFtZSI6ICJIaWRlIEtleWJvYXJkIExheW91dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWkvaGlkZS1rZXlib2FyZC1sYXlvdXQiLAogICJ1dWlkIjogImhpZGUta2V5Ym9hcmQtbGF5b3V0QHNpdG5pay5ydSIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "poweroff-button-on-topbar@darknico.com", "name": "Poweroff Button on Topbar", "pname": "poweroff-button-on-topbar", "description": "Add poweroff button on topbar", "link": "https://extensions.gnome.org/extension/2851/poweroff-button-on-topbar/", "shell_version_map": {"38": {"version": "4", "sha256": "1x3d68pflicccxiqlwiflxrw5xnnw4096bdh7hypi40jdw3b5njz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBwb3dlcm9mZiBidXR0b24gb24gdG9wYmFyIiwKICAibmFtZSI6ICJQb3dlcm9mZiBCdXR0b24gb24gVG9wYmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0RhcmtuaWNvL0dOT01FLVNoZWxsLUV4dGVuc2lvbnMiLAogICJ1dWlkIjogInBvd2Vyb2ZmLWJ1dHRvbi1vbi10b3BiYXJAZGFya25pY28uY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "1x3d68pflicccxiqlwiflxrw5xnnw4096bdh7hypi40jdw3b5njz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBwb3dlcm9mZiBidXR0b24gb24gdG9wYmFyIiwKICAibmFtZSI6ICJQb3dlcm9mZiBCdXR0b24gb24gVG9wYmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0RhcmtuaWNvL0dOT01FLVNoZWxsLUV4dGVuc2lvbnMiLAogICJ1dWlkIjogInBvd2Vyb2ZmLWJ1dHRvbi1vbi10b3BiYXJAZGFya25pY28uY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
@@ -293,39 +293,39 @@
 , {"uuid": "activities_icons@fawtytoo", "name": "Activities Icons", "pname": "activities-icons", "description": "The Activities button becomes 2 icons for selecting either Applications or Workspaces in the overview. Selecting the same view again will hide the overview.\nScrolling on the icons allows switching windows on a workspace or cycling through the Workspaces.", "link": "https://extensions.gnome.org/extension/2872/activities-icons/", "shell_version_map": {"38": {"version": "8", "sha256": "048ckyp65iv7hcb1qq4c1qfp9hwxh2fagn87hmzmvi5km14l0dba", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBiZWNvbWVzIDIgaWNvbnMgZm9yIHNlbGVjdGluZyBlaXRoZXIgQXBwbGljYXRpb25zIG9yIFdvcmtzcGFjZXMgaW4gdGhlIG92ZXJ2aWV3LiBTZWxlY3RpbmcgdGhlIHNhbWUgdmlldyBhZ2FpbiB3aWxsIGhpZGUgdGhlIG92ZXJ2aWV3LlxuU2Nyb2xsaW5nIG9uIHRoZSBpY29ucyBhbGxvd3Mgc3dpdGNoaW5nIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2Ugb3IgY3ljbGluZyB0aHJvdWdoIHRoZSBXb3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAiQWN0aXZpdGllcyBJY29ucyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmF3dHl0b28vYWN0aXZpdGllcy1pY29ucyIsCiAgInV1aWQiOiAiYWN0aXZpdGllc19pY29uc0BmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "8", "sha256": "048ckyp65iv7hcb1qq4c1qfp9hwxh2fagn87hmzmvi5km14l0dba", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBiZWNvbWVzIDIgaWNvbnMgZm9yIHNlbGVjdGluZyBlaXRoZXIgQXBwbGljYXRpb25zIG9yIFdvcmtzcGFjZXMgaW4gdGhlIG92ZXJ2aWV3LiBTZWxlY3RpbmcgdGhlIHNhbWUgdmlldyBhZ2FpbiB3aWxsIGhpZGUgdGhlIG92ZXJ2aWV3LlxuU2Nyb2xsaW5nIG9uIHRoZSBpY29ucyBhbGxvd3Mgc3dpdGNoaW5nIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2Ugb3IgY3ljbGluZyB0aHJvdWdoIHRoZSBXb3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAiQWN0aXZpdGllcyBJY29ucyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmF3dHl0b28vYWN0aXZpdGllcy1pY29ucyIsCiAgInV1aWQiOiAiYWN0aXZpdGllc19pY29uc0BmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "048ckyp65iv7hcb1qq4c1qfp9hwxh2fagn87hmzmvi5km14l0dba", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBBY3Rpdml0aWVzIGJ1dHRvbiBiZWNvbWVzIDIgaWNvbnMgZm9yIHNlbGVjdGluZyBlaXRoZXIgQXBwbGljYXRpb25zIG9yIFdvcmtzcGFjZXMgaW4gdGhlIG92ZXJ2aWV3LiBTZWxlY3RpbmcgdGhlIHNhbWUgdmlldyBhZ2FpbiB3aWxsIGhpZGUgdGhlIG92ZXJ2aWV3LlxuU2Nyb2xsaW5nIG9uIHRoZSBpY29ucyBhbGxvd3Mgc3dpdGNoaW5nIHdpbmRvd3Mgb24gYSB3b3Jrc3BhY2Ugb3IgY3ljbGluZyB0aHJvdWdoIHRoZSBXb3Jrc3BhY2VzLiIsCiAgIm5hbWUiOiAiQWN0aXZpdGllcyBJY29ucyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmF3dHl0b28vYWN0aXZpdGllcy1pY29ucyIsCiAgInV1aWQiOiAiYWN0aXZpdGllc19pY29uc0BmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"uuid": "transparent_panel@fawtytoo", "name": "Transparent Top Panel", "pname": "transparent-top-panel", "description": "Totally transparent top panel in the Overview.\nAlso adds drop shadows to text and icons for those using GS 3.38.", "link": "https://extensions.gnome.org/extension/2878/transparent-top-panel/", "shell_version_map": {"38": {"version": "10", "sha256": "01bb054zf774pzb35di5z6y0bxrhr1fykhfk6rzmkb8izbfqciql", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvdGFsbHkgdHJhbnNwYXJlbnQgdG9wIHBhbmVsIGluIHRoZSBPdmVydmlldy5cbkFsc28gYWRkcyBkcm9wIHNoYWRvd3MgdG8gdGV4dCBhbmQgaWNvbnMgZm9yIHRob3NlIHVzaW5nIEdTIDMuMzguIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudF9wYW5lbEBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAxMAp9"}, "40": {"version": "10", "sha256": "01bb054zf774pzb35di5z6y0bxrhr1fykhfk6rzmkb8izbfqciql", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvdGFsbHkgdHJhbnNwYXJlbnQgdG9wIHBhbmVsIGluIHRoZSBPdmVydmlldy5cbkFsc28gYWRkcyBkcm9wIHNoYWRvd3MgdG8gdGV4dCBhbmQgaWNvbnMgZm9yIHRob3NlIHVzaW5nIEdTIDMuMzguIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudF9wYW5lbEBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "01bb054zf774pzb35di5z6y0bxrhr1fykhfk6rzmkb8izbfqciql", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvdGFsbHkgdHJhbnNwYXJlbnQgdG9wIHBhbmVsIGluIHRoZSBPdmVydmlldy5cbkFsc28gYWRkcyBkcm9wIHNoYWRvd3MgdG8gdGV4dCBhbmQgaWNvbnMgZm9yIHRob3NlIHVzaW5nIEdTIDMuMzguIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudF9wYW5lbEBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAxMAp9"}}}
 , {"uuid": "overview_full_bright@fawtytoo", "name": "Overview Full Bright", "pname": "overview-full-bright", "description": "Shows the Overview in full brightness and without the vignette.\n\nNOTE: This will not be developed beyond GS 3.38.", "link": "https://extensions.gnome.org/extension/2884/overview-full-bright/", "shell_version_map": {"38": {"version": "4", "sha256": "1dm5h1kl40lsly9a80ch4mfi67ppwd7dgg4idx8vrcx5iksnzxil", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSBPdmVydmlldyBpbiBmdWxsIGJyaWdodG5lc3MgYW5kIHdpdGhvdXQgdGhlIHZpZ25ldHRlLlxuXG5OT1RFOiBUaGlzIHdpbGwgbm90IGJlIGRldmVsb3BlZCBiZXlvbmQgR1MgMy4zOC4iLAogICJuYW1lIjogIk92ZXJ2aWV3IEZ1bGwgQnJpZ2h0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm92ZXJ2aWV3X2Z1bGxfYnJpZ2h0QGZhd3R5dG9vIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
-, {"uuid": "trayIconsReloaded@selfmade.pl", "name": "Tray Icons: Reloaded", "pname": "tray-icons-reloaded", "description": "Tray Icons Reloaded is a GNOME Shell extension which bring back Tray Icons to top panel, with additional features.\n\n>>> Read compatibility note on GitHub there is also bug reporting <<<", "link": "https://extensions.gnome.org/extension/2890/tray-icons-reloaded/", "shell_version_map": {"38": {"version": "11", "sha256": "19icczlk4j8a1fdl19lqzinx9l82lwnvj5q8xaazvgm4yicxmh4b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYXkgSWNvbnMgUmVsb2FkZWQgaXMgYSBHTk9NRSBTaGVsbCBleHRlbnNpb24gd2hpY2ggYnJpbmcgYmFjayBUcmF5IEljb25zIHRvIHRvcCBwYW5lbCwgd2l0aCBhZGRpdGlvbmFsIGZlYXR1cmVzLlxuXG4+Pj4gUmVhZCBjb21wYXRpYmlsaXR5IG5vdGUgb24gR2l0SHViIHRoZXJlIGlzIGFsc28gYnVnIHJlcG9ydGluZyA8PDwiLAogICJuYW1lIjogIlRyYXkgSWNvbnM6IFJlbG9hZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRyYXlJY29uc1JlbG9hZGVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWFydGluUEwvVHJheS1JY29ucy1SZWxvYWRlZCIsCiAgInV1aWQiOiAidHJheUljb25zUmVsb2FkZWRAc2VsZm1hZGUucGwiLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "40": {"version": "16", "sha256": "0bwpxfc2wjvv254fnr05q3cvs1r0jw0fdj7n8b20vdwry48n30vb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYXkgSWNvbnMgUmVsb2FkZWQgaXMgYSBHTk9NRSBTaGVsbCBleHRlbnNpb24gd2hpY2ggYnJpbmcgYmFjayBUcmF5IEljb25zIHRvIHRvcCBwYW5lbCwgd2l0aCBhZGRpdGlvbmFsIGZlYXR1cmVzLlxuXG4+Pj4gUmVhZCBjb21wYXRpYmlsaXR5IG5vdGUgb24gR2l0SHViIHRoZXJlIGlzIGFsc28gYnVnIHJlcG9ydGluZyA8PDwiLAogICJuYW1lIjogIlRyYXkgSWNvbnM6IFJlbG9hZGVkIiwKICAib3Blbi1ibGFja2xpc3QiOiBbCiAgICAiRWxlY3Ryb24iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRyYXlJY29uc1JlbG9hZGVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL01hcnRpblBML1RyYXktSWNvbnMtUmVsb2FkZWQiLAogICJ1dWlkIjogInRyYXlJY29uc1JlbG9hZGVkQHNlbGZtYWRlLnBsIiwKICAidmVyc2lvbiI6IDE2Cn0="}, "41": {"version": "21", "sha256": "1h9wbslnwhy5zxw7qgvxzlar82wbhmd19cbixfmnk0xfml11gvjb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYXkgSWNvbnMgUmVsb2FkZWQgaXMgYSBHTk9NRSBTaGVsbCBleHRlbnNpb24gd2hpY2ggYnJpbmcgYmFjayBUcmF5IEljb25zIHRvIHRvcCBwYW5lbCwgd2l0aCBhZGRpdGlvbmFsIGZlYXR1cmVzLlxuXG4+Pj4gUmVhZCBjb21wYXRpYmlsaXR5IG5vdGUgb24gR2l0SHViIHRoZXJlIGlzIGFsc28gYnVnIHJlcG9ydGluZyA8PDwiLAogICJuYW1lIjogIlRyYXkgSWNvbnM6IFJlbG9hZGVkIiwKICAib3Blbi1ibGFja2xpc3QiOiBbCiAgICAiRWxlY3Ryb24iLAogICAgIllhZCIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudHJheUljb25zUmVsb2FkZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWFydGluUEwvVHJheS1JY29ucy1SZWxvYWRlZCIsCiAgInV1aWQiOiAidHJheUljb25zUmVsb2FkZWRAc2VsZm1hZGUucGwiLAogICJ2ZXJzaW9uIjogMjEKfQ=="}}}
-, {"uuid": "messagingmenu@lauinger-clan.de", "name": "Messaging Menu", "pname": "messaging-menu", "description": "A Messaging Menu for the Gnome Shell. All Email and Chat Applications in one Place.", "link": "https://extensions.gnome.org/extension/2896/messaging-menu/", "shell_version_map": {"38": {"version": "4", "sha256": "1xa0hyvs2aw1z7kg5gcsgh2pjn7b13zhps98j4xpwfiv6zm0sa73", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTWVzc2FnaW5nIE1lbnUgZm9yIHRoZSBHbm9tZSBTaGVsbC4gQWxsIEVtYWlsIGFuZCBDaGF0IEFwcGxpY2F0aW9ucyBpbiBvbmUgUGxhY2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTWVzc2FnaW5nIE1lbnUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAic2luaXN0ZXJzdHVmIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1lc3NhZ2luZ21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DaHJpc0xhdWluZ2VyNzcvbWVzc2FnaW5nbWVudSIsCiAgInV1aWQiOiAibWVzc2FnaW5nbWVudUBsYXVpbmdlci1jbGFuLmRlIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "10", "sha256": "1aynp04pxp3wbjxf264y731sk7cgas9y494b1ca4y9mk85d8w2qz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTWVzc2FnaW5nIE1lbnUgZm9yIHRoZSBHbm9tZSBTaGVsbC4gQWxsIEVtYWlsIGFuZCBDaGF0IEFwcGxpY2F0aW9ucyBpbiBvbmUgUGxhY2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibWVzc2FnaW5nbWVudSIsCiAgIm5hbWUiOiAiTWVzc2FnaW5nIE1lbnUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAic2luaXN0ZXJzdHVmIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1lc3NhZ2luZ21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DaHJpc0xhdWluZ2VyNzcvbWVzc2FnaW5nbWVudSIsCiAgInV1aWQiOiAibWVzc2FnaW5nbWVudUBsYXVpbmdlci1jbGFuLmRlIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "1aynp04pxp3wbjxf264y731sk7cgas9y494b1ca4y9mk85d8w2qz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTWVzc2FnaW5nIE1lbnUgZm9yIHRoZSBHbm9tZSBTaGVsbC4gQWxsIEVtYWlsIGFuZCBDaGF0IEFwcGxpY2F0aW9ucyBpbiBvbmUgUGxhY2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibWVzc2FnaW5nbWVudSIsCiAgIm5hbWUiOiAiTWVzc2FnaW5nIE1lbnUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAic2luaXN0ZXJzdHVmIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1lc3NhZ2luZ21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DaHJpc0xhdWluZ2VyNzcvbWVzc2FnaW5nbWVudSIsCiAgInV1aWQiOiAibWVzc2FnaW5nbWVudUBsYXVpbmdlci1jbGFuLmRlIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
-, {"uuid": "SettingsCenter@lauinger-clan.de", "name": "SettingsCenter", "pname": "settingscenter", "description": "Settings Center is a customizable drop-down menu for quickly launching frequently used apps in Gnome:Shell via the user/aggregate menu. Originally created by XES.\n\nv10: fix for older versions, i havent tested this on anything below 3.10, v9: minor cleanup, now has an icon for the main menu entry. \n\nSettings shortcuts : gnome-tweak-tool, dconf-editor, gconf-editor, gnome-session-properties, gnome-shell-extension-prefs, seahorse and nvidia-settings. You can add your own\n\nOriginal source : http://svn.xesnet.fr/gnomeextensions (3.8 replace Settings code credit IsacDaavid)\n\nCredit to @peaceseeker for updating this with a working repo, i do wish it could have been pushed to me but my blank repo was deleted as it was stale, i failed to push to git before going back to work around 1.5 years ago and i hadn't been active enough to notice anything other than emails(these things help people!)", "link": "https://extensions.gnome.org/extension/2899/settingscenter/", "shell_version_map": {"38": {"version": "2", "sha256": "150x8xp9xm28scw5lcmxq7xcfa17wbzy2y381xsv0mv0b03kvyqy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldHRpbmdzIENlbnRlciBpcyBhIGN1c3RvbWl6YWJsZSBkcm9wLWRvd24gbWVudSBmb3IgcXVpY2tseSBsYXVuY2hpbmcgZnJlcXVlbnRseSB1c2VkIGFwcHMgaW4gR25vbWU6U2hlbGwgdmlhIHRoZSB1c2VyL2FnZ3JlZ2F0ZSBtZW51LiBPcmlnaW5hbGx5IGNyZWF0ZWQgYnkgWEVTLlxuXG52MTA6IGZpeCBmb3Igb2xkZXIgdmVyc2lvbnMsIGkgaGF2ZW50IHRlc3RlZCB0aGlzIG9uIGFueXRoaW5nIGJlbG93IDMuMTAsIHY5OiBtaW5vciBjbGVhbnVwLCBub3cgaGFzIGFuIGljb24gZm9yIHRoZSBtYWluIG1lbnUgZW50cnkuIFxuXG5TZXR0aW5ncyBzaG9ydGN1dHMgOiBnbm9tZS10d2Vhay10b29sLCBkY29uZi1lZGl0b3IsIGdjb25mLWVkaXRvciwgZ25vbWUtc2Vzc2lvbi1wcm9wZXJ0aWVzLCBnbm9tZS1zaGVsbC1leHRlbnNpb24tcHJlZnMsIHNlYWhvcnNlIGFuZCBudmlkaWEtc2V0dGluZ3MuIFlvdSBjYW4gYWRkIHlvdXIgb3duXG5cbk9yaWdpbmFsIHNvdXJjZSA6IGh0dHA6Ly9zdm4ueGVzbmV0LmZyL2dub21lZXh0ZW5zaW9ucyAoMy44IHJlcGxhY2UgU2V0dGluZ3MgY29kZSBjcmVkaXQgSXNhY0RhYXZpZClcblxuQ3JlZGl0IHRvIEBwZWFjZXNlZWtlciBmb3IgdXBkYXRpbmcgdGhpcyB3aXRoIGEgd29ya2luZyByZXBvLCBpIGRvIHdpc2ggaXQgY291bGQgaGF2ZSBiZWVuIHB1c2hlZCB0byBtZSBidXQgbXkgYmxhbmsgcmVwbyB3YXMgZGVsZXRlZCBhcyBpdCB3YXMgc3RhbGUsIGkgZmFpbGVkIHRvIHB1c2ggdG8gZ2l0IGJlZm9yZSBnb2luZyBiYWNrIHRvIHdvcmsgYXJvdW5kIDEuNSB5ZWFycyBhZ28gYW5kIGkgaGFkbid0IGJlZW4gYWN0aXZlIGVub3VnaCB0byBub3RpY2UgYW55dGhpbmcgb3RoZXIgdGhhbiBlbWFpbHModGhlc2UgdGhpbmdzIGhlbHAgcGVvcGxlISkiLAogICJsb2NhbGUiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlNldHRpbmdzQ2VudGVyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIlhlcywgbDMwMGx2bCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy40IiwKICAgICIzLjYiLAogICAgIjMuNS40IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjMuMTIiLAogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DaHJpc0xhdWluZ2VyNzcvWEVTLVNldHRpbmdzLUNlbnRlci1FeHRlbnNpb24iLAogICJ1dWlkIjogIlNldHRpbmdzQ2VudGVyQGxhdWluZ2VyLWNsYW4uZGUiLAogICJ2ZXJzaW9uIjogMgp9"}, "40": {"version": "9", "sha256": "1687rhzy0ckpfph1x7ga05wmg6515p5y5yd5sq585hc8y2bclp7m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldHRpbmdzIENlbnRlciBpcyBhIGN1c3RvbWl6YWJsZSBkcm9wLWRvd24gbWVudSBmb3IgcXVpY2tseSBsYXVuY2hpbmcgZnJlcXVlbnRseSB1c2VkIGFwcHMgaW4gR25vbWU6U2hlbGwgdmlhIHRoZSB1c2VyL2FnZ3JlZ2F0ZSBtZW51LiBPcmlnaW5hbGx5IGNyZWF0ZWQgYnkgWEVTLlxuXG52MTA6IGZpeCBmb3Igb2xkZXIgdmVyc2lvbnMsIGkgaGF2ZW50IHRlc3RlZCB0aGlzIG9uIGFueXRoaW5nIGJlbG93IDMuMTAsIHY5OiBtaW5vciBjbGVhbnVwLCBub3cgaGFzIGFuIGljb24gZm9yIHRoZSBtYWluIG1lbnUgZW50cnkuIFxuXG5TZXR0aW5ncyBzaG9ydGN1dHMgOiBnbm9tZS10d2Vhay10b29sLCBkY29uZi1lZGl0b3IsIGdjb25mLWVkaXRvciwgZ25vbWUtc2Vzc2lvbi1wcm9wZXJ0aWVzLCBnbm9tZS1zaGVsbC1leHRlbnNpb24tcHJlZnMsIHNlYWhvcnNlIGFuZCBudmlkaWEtc2V0dGluZ3MuIFlvdSBjYW4gYWRkIHlvdXIgb3duXG5cbk9yaWdpbmFsIHNvdXJjZSA6IGh0dHA6Ly9zdm4ueGVzbmV0LmZyL2dub21lZXh0ZW5zaW9ucyAoMy44IHJlcGxhY2UgU2V0dGluZ3MgY29kZSBjcmVkaXQgSXNhY0RhYXZpZClcblxuQ3JlZGl0IHRvIEBwZWFjZXNlZWtlciBmb3IgdXBkYXRpbmcgdGhpcyB3aXRoIGEgd29ya2luZyByZXBvLCBpIGRvIHdpc2ggaXQgY291bGQgaGF2ZSBiZWVuIHB1c2hlZCB0byBtZSBidXQgbXkgYmxhbmsgcmVwbyB3YXMgZGVsZXRlZCBhcyBpdCB3YXMgc3RhbGUsIGkgZmFpbGVkIHRvIHB1c2ggdG8gZ2l0IGJlZm9yZSBnb2luZyBiYWNrIHRvIHdvcmsgYXJvdW5kIDEuNSB5ZWFycyBhZ28gYW5kIGkgaGFkbid0IGJlZW4gYWN0aXZlIGVub3VnaCB0byBub3RpY2UgYW55dGhpbmcgb3RoZXIgdGhhbiBlbWFpbHModGhlc2UgdGhpbmdzIGhlbHAgcGVvcGxlISkiLAogICJsb2NhbGUiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlNldHRpbmdzQ2VudGVyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIlhlcywgbDMwMGx2bCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NocmlzTGF1aW5nZXI3Ny9YRVMtU2V0dGluZ3MtQ2VudGVyLUV4dGVuc2lvbiIsCiAgInV1aWQiOiAiU2V0dGluZ3NDZW50ZXJAbGF1aW5nZXItY2xhbi5kZSIsCiAgInZlcnNpb24iOiA5Cn0="}, "41": {"version": "9", "sha256": "1687rhzy0ckpfph1x7ga05wmg6515p5y5yd5sq585hc8y2bclp7m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldHRpbmdzIENlbnRlciBpcyBhIGN1c3RvbWl6YWJsZSBkcm9wLWRvd24gbWVudSBmb3IgcXVpY2tseSBsYXVuY2hpbmcgZnJlcXVlbnRseSB1c2VkIGFwcHMgaW4gR25vbWU6U2hlbGwgdmlhIHRoZSB1c2VyL2FnZ3JlZ2F0ZSBtZW51LiBPcmlnaW5hbGx5IGNyZWF0ZWQgYnkgWEVTLlxuXG52MTA6IGZpeCBmb3Igb2xkZXIgdmVyc2lvbnMsIGkgaGF2ZW50IHRlc3RlZCB0aGlzIG9uIGFueXRoaW5nIGJlbG93IDMuMTAsIHY5OiBtaW5vciBjbGVhbnVwLCBub3cgaGFzIGFuIGljb24gZm9yIHRoZSBtYWluIG1lbnUgZW50cnkuIFxuXG5TZXR0aW5ncyBzaG9ydGN1dHMgOiBnbm9tZS10d2Vhay10b29sLCBkY29uZi1lZGl0b3IsIGdjb25mLWVkaXRvciwgZ25vbWUtc2Vzc2lvbi1wcm9wZXJ0aWVzLCBnbm9tZS1zaGVsbC1leHRlbnNpb24tcHJlZnMsIHNlYWhvcnNlIGFuZCBudmlkaWEtc2V0dGluZ3MuIFlvdSBjYW4gYWRkIHlvdXIgb3duXG5cbk9yaWdpbmFsIHNvdXJjZSA6IGh0dHA6Ly9zdm4ueGVzbmV0LmZyL2dub21lZXh0ZW5zaW9ucyAoMy44IHJlcGxhY2UgU2V0dGluZ3MgY29kZSBjcmVkaXQgSXNhY0RhYXZpZClcblxuQ3JlZGl0IHRvIEBwZWFjZXNlZWtlciBmb3IgdXBkYXRpbmcgdGhpcyB3aXRoIGEgd29ya2luZyByZXBvLCBpIGRvIHdpc2ggaXQgY291bGQgaGF2ZSBiZWVuIHB1c2hlZCB0byBtZSBidXQgbXkgYmxhbmsgcmVwbyB3YXMgZGVsZXRlZCBhcyBpdCB3YXMgc3RhbGUsIGkgZmFpbGVkIHRvIHB1c2ggdG8gZ2l0IGJlZm9yZSBnb2luZyBiYWNrIHRvIHdvcmsgYXJvdW5kIDEuNSB5ZWFycyBhZ28gYW5kIGkgaGFkbid0IGJlZW4gYWN0aXZlIGVub3VnaCB0byBub3RpY2UgYW55dGhpbmcgb3RoZXIgdGhhbiBlbWFpbHModGhlc2UgdGhpbmdzIGhlbHAgcGVvcGxlISkiLAogICJsb2NhbGUiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlNldHRpbmdzQ2VudGVyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIlhlcywgbDMwMGx2bCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NocmlzTGF1aW5nZXI3Ny9YRVMtU2V0dGluZ3MtQ2VudGVyLUV4dGVuc2lvbiIsCiAgInV1aWQiOiAiU2V0dGluZ3NDZW50ZXJAbGF1aW5nZXItY2xhbi5kZSIsCiAgInZlcnNpb24iOiA5Cn0="}}}
+, {"uuid": "trayIconsReloaded@selfmade.pl", "name": "Tray Icons: Reloaded", "pname": "tray-icons-reloaded", "description": "Tray Icons Reloaded is a GNOME Shell extension which bring back Tray Icons to top panel, with additional features.\n\n>>> Read compatibility note on GitHub there is also bug reporting <<<", "link": "https://extensions.gnome.org/extension/2890/tray-icons-reloaded/", "shell_version_map": {"38": {"version": "11", "sha256": "19icczlk4j8a1fdl19lqzinx9l82lwnvj5q8xaazvgm4yicxmh4b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYXkgSWNvbnMgUmVsb2FkZWQgaXMgYSBHTk9NRSBTaGVsbCBleHRlbnNpb24gd2hpY2ggYnJpbmcgYmFjayBUcmF5IEljb25zIHRvIHRvcCBwYW5lbCwgd2l0aCBhZGRpdGlvbmFsIGZlYXR1cmVzLlxuXG4+Pj4gUmVhZCBjb21wYXRpYmlsaXR5IG5vdGUgb24gR2l0SHViIHRoZXJlIGlzIGFsc28gYnVnIHJlcG9ydGluZyA8PDwiLAogICJuYW1lIjogIlRyYXkgSWNvbnM6IFJlbG9hZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRyYXlJY29uc1JlbG9hZGVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWFydGluUEwvVHJheS1JY29ucy1SZWxvYWRlZCIsCiAgInV1aWQiOiAidHJheUljb25zUmVsb2FkZWRAc2VsZm1hZGUucGwiLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "40": {"version": "16", "sha256": "0bwpxfc2wjvv254fnr05q3cvs1r0jw0fdj7n8b20vdwry48n30vb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYXkgSWNvbnMgUmVsb2FkZWQgaXMgYSBHTk9NRSBTaGVsbCBleHRlbnNpb24gd2hpY2ggYnJpbmcgYmFjayBUcmF5IEljb25zIHRvIHRvcCBwYW5lbCwgd2l0aCBhZGRpdGlvbmFsIGZlYXR1cmVzLlxuXG4+Pj4gUmVhZCBjb21wYXRpYmlsaXR5IG5vdGUgb24gR2l0SHViIHRoZXJlIGlzIGFsc28gYnVnIHJlcG9ydGluZyA8PDwiLAogICJuYW1lIjogIlRyYXkgSWNvbnM6IFJlbG9hZGVkIiwKICAib3Blbi1ibGFja2xpc3QiOiBbCiAgICAiRWxlY3Ryb24iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRyYXlJY29uc1JlbG9hZGVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL01hcnRpblBML1RyYXktSWNvbnMtUmVsb2FkZWQiLAogICJ1dWlkIjogInRyYXlJY29uc1JlbG9hZGVkQHNlbGZtYWRlLnBsIiwKICAidmVyc2lvbiI6IDE2Cn0="}, "41": {"version": "22", "sha256": "116vy94imzaicqpmh13ynixqx7fgybpgzcnss6k8zwk3m0m13hqg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYXkgSWNvbnMgUmVsb2FkZWQgaXMgYSBHTk9NRSBTaGVsbCBleHRlbnNpb24gd2hpY2ggYnJpbmcgYmFjayBUcmF5IEljb25zIHRvIHRvcCBwYW5lbCwgd2l0aCBhZGRpdGlvbmFsIGZlYXR1cmVzLlxuXG4+Pj4gUmVhZCBjb21wYXRpYmlsaXR5IG5vdGUgb24gR2l0SHViIHRoZXJlIGlzIGFsc28gYnVnIHJlcG9ydGluZyA8PDwiLAogICJuYW1lIjogIlRyYXkgSWNvbnM6IFJlbG9hZGVkIiwKICAib3Blbi1ibGFja2xpc3QiOiBbCiAgICAiRWxlY3Ryb24iLAogICAgIllhZCIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudHJheUljb25zUmVsb2FkZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWFydGluUEwvVHJheS1JY29ucy1SZWxvYWRlZCIsCiAgInV1aWQiOiAidHJheUljb25zUmVsb2FkZWRAc2VsZm1hZGUucGwiLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "42": {"version": "23", "sha256": "1q9qbvqzz8kjmakj6y1zx2xhlq63yp9vawcpxngi8m8q6vj7wmrb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYXkgSWNvbnMgUmVsb2FkZWQgaXMgYSBHTk9NRSBTaGVsbCBleHRlbnNpb24gd2hpY2ggYnJpbmcgYmFjayBUcmF5IEljb25zIHRvIHRvcCBwYW5lbCwgd2l0aCBhZGRpdGlvbmFsIGZlYXR1cmVzLlxuXG4+Pj4gUmVhZCBjb21wYXRpYmlsaXR5IG5vdGUgb24gR2l0SHViIHRoZXJlIGlzIGFsc28gYnVnIHJlcG9ydGluZyA8PDwiLAogICJuYW1lIjogIlRyYXkgSWNvbnM6IFJlbG9hZGVkIiwKICAib3Blbi1ibGFja2xpc3QiOiBbCiAgICAiRWxlY3Ryb24iLAogICAgIllhZCIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudHJheUljb25zUmVsb2FkZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWFydGluUEwvVHJheS1JY29ucy1SZWxvYWRlZCIsCiAgInV1aWQiOiAidHJheUljb25zUmVsb2FkZWRAc2VsZm1hZGUucGwiLAogICJ2ZXJzaW9uIjogMjMKfQ=="}}}
+, {"uuid": "messagingmenu@lauinger-clan.de", "name": "Messaging Menu", "pname": "messaging-menu", "description": "A Messaging Menu for the Gnome Shell. All Email and Chat Applications in one Place.", "link": "https://extensions.gnome.org/extension/2896/messaging-menu/", "shell_version_map": {"38": {"version": "4", "sha256": "1xa0hyvs2aw1z7kg5gcsgh2pjn7b13zhps98j4xpwfiv6zm0sa73", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTWVzc2FnaW5nIE1lbnUgZm9yIHRoZSBHbm9tZSBTaGVsbC4gQWxsIEVtYWlsIGFuZCBDaGF0IEFwcGxpY2F0aW9ucyBpbiBvbmUgUGxhY2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiTWVzc2FnaW5nIE1lbnUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAic2luaXN0ZXJzdHVmIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1lc3NhZ2luZ21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DaHJpc0xhdWluZ2VyNzcvbWVzc2FnaW5nbWVudSIsCiAgInV1aWQiOiAibWVzc2FnaW5nbWVudUBsYXVpbmdlci1jbGFuLmRlIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "11", "sha256": "0jywlzqaw7ag4s9bwpg9g641h8j7psfj9csnhl5phrychky45xbh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTWVzc2FnaW5nIE1lbnUgZm9yIHRoZSBHbm9tZSBTaGVsbC4gQWxsIEVtYWlsIGFuZCBDaGF0IEFwcGxpY2F0aW9ucyBpbiBvbmUgUGxhY2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibWVzc2FnaW5nbWVudSIsCiAgIm5hbWUiOiAiTWVzc2FnaW5nIE1lbnUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAic2luaXN0ZXJzdHVmIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1lc3NhZ2luZ21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DaHJpc0xhdWluZ2VyNzcvbWVzc2FnaW5nbWVudSIsCiAgInV1aWQiOiAibWVzc2FnaW5nbWVudUBsYXVpbmdlci1jbGFuLmRlIiwKICAidmVyc2lvbiI6IDExCn0="}, "41": {"version": "11", "sha256": "0jywlzqaw7ag4s9bwpg9g641h8j7psfj9csnhl5phrychky45xbh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTWVzc2FnaW5nIE1lbnUgZm9yIHRoZSBHbm9tZSBTaGVsbC4gQWxsIEVtYWlsIGFuZCBDaGF0IEFwcGxpY2F0aW9ucyBpbiBvbmUgUGxhY2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibWVzc2FnaW5nbWVudSIsCiAgIm5hbWUiOiAiTWVzc2FnaW5nIE1lbnUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAic2luaXN0ZXJzdHVmIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1lc3NhZ2luZ21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DaHJpc0xhdWluZ2VyNzcvbWVzc2FnaW5nbWVudSIsCiAgInV1aWQiOiAibWVzc2FnaW5nbWVudUBsYXVpbmdlci1jbGFuLmRlIiwKICAidmVyc2lvbiI6IDExCn0="}, "42": {"version": "11", "sha256": "0jywlzqaw7ag4s9bwpg9g641h8j7psfj9csnhl5phrychky45xbh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgTWVzc2FnaW5nIE1lbnUgZm9yIHRoZSBHbm9tZSBTaGVsbC4gQWxsIEVtYWlsIGFuZCBDaGF0IEFwcGxpY2F0aW9ucyBpbiBvbmUgUGxhY2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibWVzc2FnaW5nbWVudSIsCiAgIm5hbWUiOiAiTWVzc2FnaW5nIE1lbnUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAic2luaXN0ZXJzdHVmIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1lc3NhZ2luZ21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DaHJpc0xhdWluZ2VyNzcvbWVzc2FnaW5nbWVudSIsCiAgInV1aWQiOiAibWVzc2FnaW5nbWVudUBsYXVpbmdlci1jbGFuLmRlIiwKICAidmVyc2lvbiI6IDExCn0="}}}
+, {"uuid": "SettingsCenter@lauinger-clan.de", "name": "SettingsCenter", "pname": "settingscenter", "description": "Settings Center is a customizable drop-down menu for quickly launching frequently used apps in Gnome:Shell via the user/aggregate menu. Originally created by XES.\n\nv10: fix for older versions, i havent tested this on anything below 3.10, v9: minor cleanup, now has an icon for the main menu entry. \n\nSettings shortcuts : gnome-tweak-tool, dconf-editor, gconf-editor, gnome-session-properties, gnome-shell-extension-prefs, seahorse and nvidia-settings. You can add your own\n\nOriginal source : http://svn.xesnet.fr/gnomeextensions (3.8 replace Settings code credit IsacDaavid)\n\nCredit to @peaceseeker for updating this with a working repo, i do wish it could have been pushed to me but my blank repo was deleted as it was stale, i failed to push to git before going back to work around 1.5 years ago and i hadn't been active enough to notice anything other than emails(these things help people!)", "link": "https://extensions.gnome.org/extension/2899/settingscenter/", "shell_version_map": {"38": {"version": "2", "sha256": "150x8xp9xm28scw5lcmxq7xcfa17wbzy2y381xsv0mv0b03kvyqy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldHRpbmdzIENlbnRlciBpcyBhIGN1c3RvbWl6YWJsZSBkcm9wLWRvd24gbWVudSBmb3IgcXVpY2tseSBsYXVuY2hpbmcgZnJlcXVlbnRseSB1c2VkIGFwcHMgaW4gR25vbWU6U2hlbGwgdmlhIHRoZSB1c2VyL2FnZ3JlZ2F0ZSBtZW51LiBPcmlnaW5hbGx5IGNyZWF0ZWQgYnkgWEVTLlxuXG52MTA6IGZpeCBmb3Igb2xkZXIgdmVyc2lvbnMsIGkgaGF2ZW50IHRlc3RlZCB0aGlzIG9uIGFueXRoaW5nIGJlbG93IDMuMTAsIHY5OiBtaW5vciBjbGVhbnVwLCBub3cgaGFzIGFuIGljb24gZm9yIHRoZSBtYWluIG1lbnUgZW50cnkuIFxuXG5TZXR0aW5ncyBzaG9ydGN1dHMgOiBnbm9tZS10d2Vhay10b29sLCBkY29uZi1lZGl0b3IsIGdjb25mLWVkaXRvciwgZ25vbWUtc2Vzc2lvbi1wcm9wZXJ0aWVzLCBnbm9tZS1zaGVsbC1leHRlbnNpb24tcHJlZnMsIHNlYWhvcnNlIGFuZCBudmlkaWEtc2V0dGluZ3MuIFlvdSBjYW4gYWRkIHlvdXIgb3duXG5cbk9yaWdpbmFsIHNvdXJjZSA6IGh0dHA6Ly9zdm4ueGVzbmV0LmZyL2dub21lZXh0ZW5zaW9ucyAoMy44IHJlcGxhY2UgU2V0dGluZ3MgY29kZSBjcmVkaXQgSXNhY0RhYXZpZClcblxuQ3JlZGl0IHRvIEBwZWFjZXNlZWtlciBmb3IgdXBkYXRpbmcgdGhpcyB3aXRoIGEgd29ya2luZyByZXBvLCBpIGRvIHdpc2ggaXQgY291bGQgaGF2ZSBiZWVuIHB1c2hlZCB0byBtZSBidXQgbXkgYmxhbmsgcmVwbyB3YXMgZGVsZXRlZCBhcyBpdCB3YXMgc3RhbGUsIGkgZmFpbGVkIHRvIHB1c2ggdG8gZ2l0IGJlZm9yZSBnb2luZyBiYWNrIHRvIHdvcmsgYXJvdW5kIDEuNSB5ZWFycyBhZ28gYW5kIGkgaGFkbid0IGJlZW4gYWN0aXZlIGVub3VnaCB0byBub3RpY2UgYW55dGhpbmcgb3RoZXIgdGhhbiBlbWFpbHModGhlc2UgdGhpbmdzIGhlbHAgcGVvcGxlISkiLAogICJsb2NhbGUiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlNldHRpbmdzQ2VudGVyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIlhlcywgbDMwMGx2bCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy40IiwKICAgICIzLjYiLAogICAgIjMuNS40IiwKICAgICIzLjgiLAogICAgIjMuMTAiLAogICAgIjMuMTIiLAogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9DaHJpc0xhdWluZ2VyNzcvWEVTLVNldHRpbmdzLUNlbnRlci1FeHRlbnNpb24iLAogICJ1dWlkIjogIlNldHRpbmdzQ2VudGVyQGxhdWluZ2VyLWNsYW4uZGUiLAogICJ2ZXJzaW9uIjogMgp9"}, "40": {"version": "9", "sha256": "1687rhzy0ckpfph1x7ga05wmg6515p5y5yd5sq585hc8y2bclp7m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldHRpbmdzIENlbnRlciBpcyBhIGN1c3RvbWl6YWJsZSBkcm9wLWRvd24gbWVudSBmb3IgcXVpY2tseSBsYXVuY2hpbmcgZnJlcXVlbnRseSB1c2VkIGFwcHMgaW4gR25vbWU6U2hlbGwgdmlhIHRoZSB1c2VyL2FnZ3JlZ2F0ZSBtZW51LiBPcmlnaW5hbGx5IGNyZWF0ZWQgYnkgWEVTLlxuXG52MTA6IGZpeCBmb3Igb2xkZXIgdmVyc2lvbnMsIGkgaGF2ZW50IHRlc3RlZCB0aGlzIG9uIGFueXRoaW5nIGJlbG93IDMuMTAsIHY5OiBtaW5vciBjbGVhbnVwLCBub3cgaGFzIGFuIGljb24gZm9yIHRoZSBtYWluIG1lbnUgZW50cnkuIFxuXG5TZXR0aW5ncyBzaG9ydGN1dHMgOiBnbm9tZS10d2Vhay10b29sLCBkY29uZi1lZGl0b3IsIGdjb25mLWVkaXRvciwgZ25vbWUtc2Vzc2lvbi1wcm9wZXJ0aWVzLCBnbm9tZS1zaGVsbC1leHRlbnNpb24tcHJlZnMsIHNlYWhvcnNlIGFuZCBudmlkaWEtc2V0dGluZ3MuIFlvdSBjYW4gYWRkIHlvdXIgb3duXG5cbk9yaWdpbmFsIHNvdXJjZSA6IGh0dHA6Ly9zdm4ueGVzbmV0LmZyL2dub21lZXh0ZW5zaW9ucyAoMy44IHJlcGxhY2UgU2V0dGluZ3MgY29kZSBjcmVkaXQgSXNhY0RhYXZpZClcblxuQ3JlZGl0IHRvIEBwZWFjZXNlZWtlciBmb3IgdXBkYXRpbmcgdGhpcyB3aXRoIGEgd29ya2luZyByZXBvLCBpIGRvIHdpc2ggaXQgY291bGQgaGF2ZSBiZWVuIHB1c2hlZCB0byBtZSBidXQgbXkgYmxhbmsgcmVwbyB3YXMgZGVsZXRlZCBhcyBpdCB3YXMgc3RhbGUsIGkgZmFpbGVkIHRvIHB1c2ggdG8gZ2l0IGJlZm9yZSBnb2luZyBiYWNrIHRvIHdvcmsgYXJvdW5kIDEuNSB5ZWFycyBhZ28gYW5kIGkgaGFkbid0IGJlZW4gYWN0aXZlIGVub3VnaCB0byBub3RpY2UgYW55dGhpbmcgb3RoZXIgdGhhbiBlbWFpbHModGhlc2UgdGhpbmdzIGhlbHAgcGVvcGxlISkiLAogICJsb2NhbGUiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlNldHRpbmdzQ2VudGVyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIlhlcywgbDMwMGx2bCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NocmlzTGF1aW5nZXI3Ny9YRVMtU2V0dGluZ3MtQ2VudGVyLUV4dGVuc2lvbiIsCiAgInV1aWQiOiAiU2V0dGluZ3NDZW50ZXJAbGF1aW5nZXItY2xhbi5kZSIsCiAgInZlcnNpb24iOiA5Cn0="}, "41": {"version": "9", "sha256": "1687rhzy0ckpfph1x7ga05wmg6515p5y5yd5sq585hc8y2bclp7m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldHRpbmdzIENlbnRlciBpcyBhIGN1c3RvbWl6YWJsZSBkcm9wLWRvd24gbWVudSBmb3IgcXVpY2tseSBsYXVuY2hpbmcgZnJlcXVlbnRseSB1c2VkIGFwcHMgaW4gR25vbWU6U2hlbGwgdmlhIHRoZSB1c2VyL2FnZ3JlZ2F0ZSBtZW51LiBPcmlnaW5hbGx5IGNyZWF0ZWQgYnkgWEVTLlxuXG52MTA6IGZpeCBmb3Igb2xkZXIgdmVyc2lvbnMsIGkgaGF2ZW50IHRlc3RlZCB0aGlzIG9uIGFueXRoaW5nIGJlbG93IDMuMTAsIHY5OiBtaW5vciBjbGVhbnVwLCBub3cgaGFzIGFuIGljb24gZm9yIHRoZSBtYWluIG1lbnUgZW50cnkuIFxuXG5TZXR0aW5ncyBzaG9ydGN1dHMgOiBnbm9tZS10d2Vhay10b29sLCBkY29uZi1lZGl0b3IsIGdjb25mLWVkaXRvciwgZ25vbWUtc2Vzc2lvbi1wcm9wZXJ0aWVzLCBnbm9tZS1zaGVsbC1leHRlbnNpb24tcHJlZnMsIHNlYWhvcnNlIGFuZCBudmlkaWEtc2V0dGluZ3MuIFlvdSBjYW4gYWRkIHlvdXIgb3duXG5cbk9yaWdpbmFsIHNvdXJjZSA6IGh0dHA6Ly9zdm4ueGVzbmV0LmZyL2dub21lZXh0ZW5zaW9ucyAoMy44IHJlcGxhY2UgU2V0dGluZ3MgY29kZSBjcmVkaXQgSXNhY0RhYXZpZClcblxuQ3JlZGl0IHRvIEBwZWFjZXNlZWtlciBmb3IgdXBkYXRpbmcgdGhpcyB3aXRoIGEgd29ya2luZyByZXBvLCBpIGRvIHdpc2ggaXQgY291bGQgaGF2ZSBiZWVuIHB1c2hlZCB0byBtZSBidXQgbXkgYmxhbmsgcmVwbyB3YXMgZGVsZXRlZCBhcyBpdCB3YXMgc3RhbGUsIGkgZmFpbGVkIHRvIHB1c2ggdG8gZ2l0IGJlZm9yZSBnb2luZyBiYWNrIHRvIHdvcmsgYXJvdW5kIDEuNSB5ZWFycyBhZ28gYW5kIGkgaGFkbid0IGJlZW4gYWN0aXZlIGVub3VnaCB0byBub3RpY2UgYW55dGhpbmcgb3RoZXIgdGhhbiBlbWFpbHModGhlc2UgdGhpbmdzIGhlbHAgcGVvcGxlISkiLAogICJsb2NhbGUiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlNldHRpbmdzQ2VudGVyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIlhlcywgbDMwMGx2bCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NocmlzTGF1aW5nZXI3Ny9YRVMtU2V0dGluZ3MtQ2VudGVyLUV4dGVuc2lvbiIsCiAgInV1aWQiOiAiU2V0dGluZ3NDZW50ZXJAbGF1aW5nZXItY2xhbi5kZSIsCiAgInZlcnNpb24iOiA5Cn0="}, "42": {"version": "9", "sha256": "1687rhzy0ckpfph1x7ga05wmg6515p5y5yd5sq585hc8y2bclp7m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldHRpbmdzIENlbnRlciBpcyBhIGN1c3RvbWl6YWJsZSBkcm9wLWRvd24gbWVudSBmb3IgcXVpY2tseSBsYXVuY2hpbmcgZnJlcXVlbnRseSB1c2VkIGFwcHMgaW4gR25vbWU6U2hlbGwgdmlhIHRoZSB1c2VyL2FnZ3JlZ2F0ZSBtZW51LiBPcmlnaW5hbGx5IGNyZWF0ZWQgYnkgWEVTLlxuXG52MTA6IGZpeCBmb3Igb2xkZXIgdmVyc2lvbnMsIGkgaGF2ZW50IHRlc3RlZCB0aGlzIG9uIGFueXRoaW5nIGJlbG93IDMuMTAsIHY5OiBtaW5vciBjbGVhbnVwLCBub3cgaGFzIGFuIGljb24gZm9yIHRoZSBtYWluIG1lbnUgZW50cnkuIFxuXG5TZXR0aW5ncyBzaG9ydGN1dHMgOiBnbm9tZS10d2Vhay10b29sLCBkY29uZi1lZGl0b3IsIGdjb25mLWVkaXRvciwgZ25vbWUtc2Vzc2lvbi1wcm9wZXJ0aWVzLCBnbm9tZS1zaGVsbC1leHRlbnNpb24tcHJlZnMsIHNlYWhvcnNlIGFuZCBudmlkaWEtc2V0dGluZ3MuIFlvdSBjYW4gYWRkIHlvdXIgb3duXG5cbk9yaWdpbmFsIHNvdXJjZSA6IGh0dHA6Ly9zdm4ueGVzbmV0LmZyL2dub21lZXh0ZW5zaW9ucyAoMy44IHJlcGxhY2UgU2V0dGluZ3MgY29kZSBjcmVkaXQgSXNhY0RhYXZpZClcblxuQ3JlZGl0IHRvIEBwZWFjZXNlZWtlciBmb3IgdXBkYXRpbmcgdGhpcyB3aXRoIGEgd29ya2luZyByZXBvLCBpIGRvIHdpc2ggaXQgY291bGQgaGF2ZSBiZWVuIHB1c2hlZCB0byBtZSBidXQgbXkgYmxhbmsgcmVwbyB3YXMgZGVsZXRlZCBhcyBpdCB3YXMgc3RhbGUsIGkgZmFpbGVkIHRvIHB1c2ggdG8gZ2l0IGJlZm9yZSBnb2luZyBiYWNrIHRvIHdvcmsgYXJvdW5kIDEuNSB5ZWFycyBhZ28gYW5kIGkgaGFkbid0IGJlZW4gYWN0aXZlIGVub3VnaCB0byBub3RpY2UgYW55dGhpbmcgb3RoZXIgdGhhbiBlbWFpbHModGhlc2UgdGhpbmdzIGhlbHAgcGVvcGxlISkiLAogICJsb2NhbGUiOiAiL3Vzci9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIlNldHRpbmdzQ2VudGVyIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIlhlcywgbDMwMGx2bCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0NocmlzTGF1aW5nZXI3Ny9YRVMtU2V0dGluZ3MtQ2VudGVyLUV4dGVuc2lvbiIsCiAgInV1aWQiOiAiU2V0dGluZ3NDZW50ZXJAbGF1aW5nZXItY2xhbi5kZSIsCiAgInZlcnNpb24iOiA5Cn0="}}}
 , {"uuid": "auto-mute-toggle@garotosopa.github.io", "name": "Auto-mute toggle", "pname": "auto-mute-toggle", "description": "Toggle whether to auto-mute speakers when headphones are plugged in.", "link": "https://extensions.gnome.org/extension/2905/auto-mute-toggle/", "shell_version_map": {"40": {"version": "6", "sha256": "1lyh51gvsh9ydip77vjj8rigjiah97lh8gp91jcpqblwx69fs3dk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSB3aGV0aGVyIHRvIGF1dG8tbXV0ZSBzcGVha2VycyB3aGVuIGhlYWRwaG9uZXMgYXJlIHBsdWdnZWQgaW4uIiwKICAibmFtZSI6ICJBdXRvLW11dGUgdG9nZ2xlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dhcm90b3NvcGEvZ3NlLWF1dG8tbXV0ZS10b2dnbGUiLAogICJ1dWlkIjogImF1dG8tbXV0ZS10b2dnbGVAZ2Fyb3Rvc29wYS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "optimus-manager-indicator@andr3slelouch.github.com", "name": "Optimus Manager Indicator", "pname": "optimus-manager-indicator", "description": "Intel/Hybrid/NVIDIA GPU Switch Note: The GPU mode activated doesn't show up in the options, by example: When you turn on the PC you are gonna be in Intel mode so Intel option is not gonna be shown. Note: Optimus Manager Indicator is made(for the moment) for Arch based distributions with optimus-manager.", "link": "https://extensions.gnome.org/extension/2908/optimus-manager-indicator/", "shell_version_map": {"38": {"version": "5", "sha256": "1mqgnwfdbd2460ngkkq6wiswvb9bvwgm5n32j7jgvn1xhb3mqn58", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVsL0h5YnJpZC9OVklESUEgR1BVIFN3aXRjaCBOb3RlOiBUaGUgR1BVIG1vZGUgYWN0aXZhdGVkIGRvZXNuJ3Qgc2hvdyB1cCBpbiB0aGUgb3B0aW9ucywgYnkgZXhhbXBsZTogV2hlbiB5b3UgdHVybiBvbiB0aGUgUEMgeW91IGFyZSBnb25uYSBiZSBpbiBJbnRlbCBtb2RlIHNvIEludGVsIG9wdGlvbiBpcyBub3QgZ29ubmEgYmUgc2hvd24uIE5vdGU6IE9wdGltdXMgTWFuYWdlciBJbmRpY2F0b3IgaXMgbWFkZShmb3IgdGhlIG1vbWVudCkgZm9yIEFyY2ggYmFzZWQgZGlzdHJpYnV0aW9ucyB3aXRoIG9wdGltdXMtbWFuYWdlci4iLAogICJuYW1lIjogIk9wdGltdXMgTWFuYWdlciBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbmRyM3NsZWxvdWNoL09wdGltdXMtTWFuYWdlci1JbmRpY2F0b3IiLAogICJ1dWlkIjogIm9wdGltdXMtbWFuYWdlci1pbmRpY2F0b3JAYW5kcjNzbGVsb3VjaC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}, "40": {"version": "5", "sha256": "1mqgnwfdbd2460ngkkq6wiswvb9bvwgm5n32j7jgvn1xhb3mqn58", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVsL0h5YnJpZC9OVklESUEgR1BVIFN3aXRjaCBOb3RlOiBUaGUgR1BVIG1vZGUgYWN0aXZhdGVkIGRvZXNuJ3Qgc2hvdyB1cCBpbiB0aGUgb3B0aW9ucywgYnkgZXhhbXBsZTogV2hlbiB5b3UgdHVybiBvbiB0aGUgUEMgeW91IGFyZSBnb25uYSBiZSBpbiBJbnRlbCBtb2RlIHNvIEludGVsIG9wdGlvbiBpcyBub3QgZ29ubmEgYmUgc2hvd24uIE5vdGU6IE9wdGltdXMgTWFuYWdlciBJbmRpY2F0b3IgaXMgbWFkZShmb3IgdGhlIG1vbWVudCkgZm9yIEFyY2ggYmFzZWQgZGlzdHJpYnV0aW9ucyB3aXRoIG9wdGltdXMtbWFuYWdlci4iLAogICJuYW1lIjogIk9wdGltdXMgTWFuYWdlciBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLjAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbmRyM3NsZWxvdWNoL09wdGltdXMtTWFuYWdlci1JbmRpY2F0b3IiLAogICJ1dWlkIjogIm9wdGltdXMtbWFuYWdlci1pbmRpY2F0b3JAYW5kcjNzbGVsb3VjaC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"uuid": "BringOutSubmenuOfPowerOffLogoutButton@pratap.fastmail.fm", "name": "Bring Out Submenu Of Power Off/Logout Button", "pname": "bring-out-submenu-of-power-offlogout-button", "description": "Bring Out Submenu Of Power Off/Logout Button and Rearrange the Order of System Menu.", "link": "https://extensions.gnome.org/extension/2917/bring-out-submenu-of-power-offlogout-button/", "shell_version_map": {"38": {"version": "27", "sha256": "0dfslg3vk1g5fah9jdrp3jjdvymk34ac5ms3v6iamp38aji0d6y8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIE91dCBTdWJtZW51IE9mIFBvd2VyIE9mZi9Mb2dvdXQgQnV0dG9uIGFuZCBSZWFycmFuZ2UgdGhlIE9yZGVyIG9mIFN5c3RlbSBNZW51LiIsCiAgIm5hbWUiOiAiQnJpbmcgT3V0IFN1Ym1lbnUgT2YgUG93ZXIgT2ZmL0xvZ291dCBCdXR0b24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYnJuZ291dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUFJBVEFQLUtVTUFSL0JyaW5nLU91dC1TdWJtZW51LW9mLVBvd2VyLU9mZi1Mb2dvdXQiLAogICJ1dWlkIjogIkJyaW5nT3V0U3VibWVudU9mUG93ZXJPZmZMb2dvdXRCdXR0b25AcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDI3Cn0="}, "40": {"version": "27", "sha256": "0dfslg3vk1g5fah9jdrp3jjdvymk34ac5ms3v6iamp38aji0d6y8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIE91dCBTdWJtZW51IE9mIFBvd2VyIE9mZi9Mb2dvdXQgQnV0dG9uIGFuZCBSZWFycmFuZ2UgdGhlIE9yZGVyIG9mIFN5c3RlbSBNZW51LiIsCiAgIm5hbWUiOiAiQnJpbmcgT3V0IFN1Ym1lbnUgT2YgUG93ZXIgT2ZmL0xvZ291dCBCdXR0b24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYnJuZ291dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUFJBVEFQLUtVTUFSL0JyaW5nLU91dC1TdWJtZW51LW9mLVBvd2VyLU9mZi1Mb2dvdXQiLAogICJ1dWlkIjogIkJyaW5nT3V0U3VibWVudU9mUG93ZXJPZmZMb2dvdXRCdXR0b25AcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDI3Cn0="}, "41": {"version": "27", "sha256": "0dfslg3vk1g5fah9jdrp3jjdvymk34ac5ms3v6iamp38aji0d6y8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5nIE91dCBTdWJtZW51IE9mIFBvd2VyIE9mZi9Mb2dvdXQgQnV0dG9uIGFuZCBSZWFycmFuZ2UgdGhlIE9yZGVyIG9mIFN5c3RlbSBNZW51LiIsCiAgIm5hbWUiOiAiQnJpbmcgT3V0IFN1Ym1lbnUgT2YgUG93ZXIgT2ZmL0xvZ291dCBCdXR0b24iLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYnJuZ291dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUFJBVEFQLUtVTUFSL0JyaW5nLU91dC1TdWJtZW51LW9mLVBvd2VyLU9mZi1Mb2dvdXQiLAogICJ1dWlkIjogIkJyaW5nT3V0U3VibWVudU9mUG93ZXJPZmZMb2dvdXRCdXR0b25AcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDI3Cn0="}}}
 , {"uuid": "batterytimepercentagecompact@sagrland.de", "name": "Battery Time (Percentage) Compact", "pname": "battery-time-percentage-compact", "description": "Shows the remaining time until fully charged/discharged as well as percentage of battery charge in the panel.", "link": "https://extensions.gnome.org/extension/2929/battery-time-percentage-compact/", "shell_version_map": {"38": {"version": "5", "sha256": "1ybq8k2nv1ym6dr9lkimrpbi9fhs2pnrm27382wpfly7qq1nflg9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSByZW1haW5pbmcgdGltZSB1bnRpbCBmdWxseSBjaGFyZ2VkL2Rpc2NoYXJnZWQgYXMgd2VsbCBhcyBwZXJjZW50YWdlIG9mIGJhdHRlcnkgY2hhcmdlIGluIHRoZSBwYW5lbC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiYXR0ZXJ5dGltZXBlcmNlbnRhZ2Vjb21wYWN0IiwKICAibmFtZSI6ICJCYXR0ZXJ5IFRpbWUgKFBlcmNlbnRhZ2UpIENvbXBhY3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmF0dGVyeXRpbWVwZXJjZW50YWdlY29tcGFjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2FHckxhbmQvZ25vbWUtc2hlbGwtYmF0dGVyeS10aW1lLXBlcmNlbnRhZ2UtY29tcGFjdCIsCiAgInV1aWQiOiAiYmF0dGVyeXRpbWVwZXJjZW50YWdlY29tcGFjdEBzYWdybGFuZC5kZSIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "1ybq8k2nv1ym6dr9lkimrpbi9fhs2pnrm27382wpfly7qq1nflg9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSByZW1haW5pbmcgdGltZSB1bnRpbCBmdWxseSBjaGFyZ2VkL2Rpc2NoYXJnZWQgYXMgd2VsbCBhcyBwZXJjZW50YWdlIG9mIGJhdHRlcnkgY2hhcmdlIGluIHRoZSBwYW5lbC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiYXR0ZXJ5dGltZXBlcmNlbnRhZ2Vjb21wYWN0IiwKICAibmFtZSI6ICJCYXR0ZXJ5IFRpbWUgKFBlcmNlbnRhZ2UpIENvbXBhY3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmF0dGVyeXRpbWVwZXJjZW50YWdlY29tcGFjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2FHckxhbmQvZ25vbWUtc2hlbGwtYmF0dGVyeS10aW1lLXBlcmNlbnRhZ2UtY29tcGFjdCIsCiAgInV1aWQiOiAiYmF0dGVyeXRpbWVwZXJjZW50YWdlY29tcGFjdEBzYWdybGFuZC5kZSIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "1ybq8k2nv1ym6dr9lkimrpbi9fhs2pnrm27382wpfly7qq1nflg9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIHRoZSByZW1haW5pbmcgdGltZSB1bnRpbCBmdWxseSBjaGFyZ2VkL2Rpc2NoYXJnZWQgYXMgd2VsbCBhcyBwZXJjZW50YWdlIG9mIGJhdHRlcnkgY2hhcmdlIGluIHRoZSBwYW5lbC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiYXR0ZXJ5dGltZXBlcmNlbnRhZ2Vjb21wYWN0IiwKICAibmFtZSI6ICJCYXR0ZXJ5IFRpbWUgKFBlcmNlbnRhZ2UpIENvbXBhY3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmF0dGVyeXRpbWVwZXJjZW50YWdlY29tcGFjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2FHckxhbmQvZ25vbWUtc2hlbGwtYmF0dGVyeS10aW1lLXBlcmNlbnRhZ2UtY29tcGFjdCIsCiAgInV1aWQiOiAiYmF0dGVyeXRpbWVwZXJjZW50YWdlY29tcGFjdEBzYWdybGFuZC5kZSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
-, {"uuid": "executor@raujonas.github.io", "name": "Executor", "pname": "executor", "description": "Execute multiple shell commands periodically with separate intervals and display the output in gnome top bar.", "link": "https://extensions.gnome.org/extension/2932/executor/", "shell_version_map": {"38": {"version": "17", "sha256": "1g24qy5cai3kvl929mhr0hgqmknddbklncmjpj7fabr02fjsbprv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4ZWN1dGUgbXVsdGlwbGUgc2hlbGwgY29tbWFuZHMgcGVyaW9kaWNhbGx5IHdpdGggc2VwYXJhdGUgaW50ZXJ2YWxzIGFuZCBkaXNwbGF5IHRoZSBvdXRwdXQgaW4gZ25vbWUgdG9wIGJhci4iLAogICJuYW1lIjogIkV4ZWN1dG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwLjIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JhdWpvbmFzL2V4ZWN1dG9yIiwKICAidXVpZCI6ICJleGVjdXRvckByYXVqb25hcy5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "40": {"version": "17", "sha256": "1g24qy5cai3kvl929mhr0hgqmknddbklncmjpj7fabr02fjsbprv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4ZWN1dGUgbXVsdGlwbGUgc2hlbGwgY29tbWFuZHMgcGVyaW9kaWNhbGx5IHdpdGggc2VwYXJhdGUgaW50ZXJ2YWxzIGFuZCBkaXNwbGF5IHRoZSBvdXRwdXQgaW4gZ25vbWUgdG9wIGJhci4iLAogICJuYW1lIjogIkV4ZWN1dG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwLjIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JhdWpvbmFzL2V4ZWN1dG9yIiwKICAidXVpZCI6ICJleGVjdXRvckByYXVqb25hcy5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "41": {"version": "17", "sha256": "1g24qy5cai3kvl929mhr0hgqmknddbklncmjpj7fabr02fjsbprv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4ZWN1dGUgbXVsdGlwbGUgc2hlbGwgY29tbWFuZHMgcGVyaW9kaWNhbGx5IHdpdGggc2VwYXJhdGUgaW50ZXJ2YWxzIGFuZCBkaXNwbGF5IHRoZSBvdXRwdXQgaW4gZ25vbWUgdG9wIGJhci4iLAogICJuYW1lIjogIkV4ZWN1dG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwLjIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3JhdWpvbmFzL2V4ZWN1dG9yIiwKICAidXVpZCI6ICJleGVjdXRvckByYXVqb25hcy5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
+, {"uuid": "executor@raujonas.github.io", "name": "Executor", "pname": "executor", "description": "Execute multiple shell commands periodically with separate intervals and display the output in gnome top bar.", "link": "https://extensions.gnome.org/extension/2932/executor/", "shell_version_map": {"38": {"version": "18", "sha256": "0qrpjz455jx4kd82y9wkmdl6mj46kpknbs2bh4fjm5jlvrjb92ak", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4ZWN1dGUgbXVsdGlwbGUgc2hlbGwgY29tbWFuZHMgcGVyaW9kaWNhbGx5IHdpdGggc2VwYXJhdGUgaW50ZXJ2YWxzIGFuZCBkaXNwbGF5IHRoZSBvdXRwdXQgaW4gZ25vbWUgdG9wIGJhci4iLAogICJuYW1lIjogIkV4ZWN1dG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwLjIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yYXVqb25hcy9leGVjdXRvciIsCiAgInV1aWQiOiAiZXhlY3V0b3JAcmF1am9uYXMuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "40": {"version": "18", "sha256": "0qrpjz455jx4kd82y9wkmdl6mj46kpknbs2bh4fjm5jlvrjb92ak", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4ZWN1dGUgbXVsdGlwbGUgc2hlbGwgY29tbWFuZHMgcGVyaW9kaWNhbGx5IHdpdGggc2VwYXJhdGUgaW50ZXJ2YWxzIGFuZCBkaXNwbGF5IHRoZSBvdXRwdXQgaW4gZ25vbWUgdG9wIGJhci4iLAogICJuYW1lIjogIkV4ZWN1dG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwLjIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yYXVqb25hcy9leGVjdXRvciIsCiAgInV1aWQiOiAiZXhlY3V0b3JAcmF1am9uYXMuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "41": {"version": "18", "sha256": "0qrpjz455jx4kd82y9wkmdl6mj46kpknbs2bh4fjm5jlvrjb92ak", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4ZWN1dGUgbXVsdGlwbGUgc2hlbGwgY29tbWFuZHMgcGVyaW9kaWNhbGx5IHdpdGggc2VwYXJhdGUgaW50ZXJ2YWxzIGFuZCBkaXNwbGF5IHRoZSBvdXRwdXQgaW4gZ25vbWUgdG9wIGJhci4iLAogICJuYW1lIjogIkV4ZWN1dG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwLjIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yYXVqb25hcy9leGVjdXRvciIsCiAgInV1aWQiOiAiZXhlY3V0b3JAcmF1am9uYXMuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "42": {"version": "18", "sha256": "0qrpjz455jx4kd82y9wkmdl6mj46kpknbs2bh4fjm5jlvrjb92ak", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4ZWN1dGUgbXVsdGlwbGUgc2hlbGwgY29tbWFuZHMgcGVyaW9kaWNhbGx5IHdpdGggc2VwYXJhdGUgaW50ZXJ2YWxzIGFuZCBkaXNwbGF5IHRoZSBvdXRwdXQgaW4gZ25vbWUgdG9wIGJhci4iLAogICJuYW1lIjogIkV4ZWN1dG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwLjIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9yYXVqb25hcy9leGVjdXRvciIsCiAgInV1aWQiOiAiZXhlY3V0b3JAcmF1am9uYXMuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDE4Cn0="}}}
 , {"uuid": "ControlBlurEffectOnLockScreen@pratap.fastmail.fm", "name": "Control Blur Effect On Lock Screen", "pname": "control-blur-effect-on-lock-screen", "description": "Control the Blur Effect On Lock Screen.", "link": "https://extensions.gnome.org/extension/2935/control-blur-effect-on-lock-screen/", "shell_version_map": {"38": {"version": "14", "sha256": "176qxx2zykzzjq2xf8sf1c83r1skaxa2mzmp51v8bq3vbbxp0wij", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdGhlIEJsdXIgRWZmZWN0IE9uIExvY2sgU2NyZWVuLiIsCiAgIm5hbWUiOiAiQ29udHJvbCBCbHVyIEVmZmVjdCBPbiBMb2NrIFNjcmVlbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BSQVRBUC1LVU1BUi9Db250cm9sX0JsdXJfRWZmZWN0X09uX0xvY2tfU2NyZWVuIiwKICAidXVpZCI6ICJDb250cm9sQmx1ckVmZmVjdE9uTG9ja1NjcmVlbkBwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "40": {"version": "17", "sha256": "1n8442n54hwjx1z4qww5mvb3w5v322d9zc78wm0kx378p4s3shsq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdGhlIEJsdXIgRWZmZWN0IE9uIExvY2sgU2NyZWVuLiIsCiAgIm5hbWUiOiAiQ29udHJvbCBCbHVyIEVmZmVjdCBPbiBMb2NrIFNjcmVlbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUFJBVEFQLUtVTUFSL0NvbnRyb2xfQmx1cl9FZmZlY3RfT25fTG9ja19TY3JlZW4iLAogICJ1dWlkIjogIkNvbnRyb2xCbHVyRWZmZWN0T25Mb2NrU2NyZWVuQHByYXRhcC5mYXN0bWFpbC5mbSIsCiAgInZlcnNpb24iOiAxNwp9"}, "41": {"version": "17", "sha256": "1n8442n54hwjx1z4qww5mvb3w5v322d9zc78wm0kx378p4s3shsq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdGhlIEJsdXIgRWZmZWN0IE9uIExvY2sgU2NyZWVuLiIsCiAgIm5hbWUiOiAiQ29udHJvbCBCbHVyIEVmZmVjdCBPbiBMb2NrIFNjcmVlbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUFJBVEFQLUtVTUFSL0NvbnRyb2xfQmx1cl9FZmZlY3RfT25fTG9ja19TY3JlZW4iLAogICJ1dWlkIjogIkNvbnRyb2xCbHVyRWZmZWN0T25Mb2NrU2NyZWVuQHByYXRhcC5mYXN0bWFpbC5mbSIsCiAgInZlcnNpb24iOiAxNwp9"}}}
 , {"uuid": "compiz-alike-windows-effect@hermes83.github.com", "name": "Compiz alike windows effect", "pname": "compiz-alike-windows-effect", "description": "Wobbly windows effect inspired by the Compiz ones\n\nNB\nIn case of update error please restart Gnome Shell (on Xorg press ALT+F2 then write r and press enter, on Wayland end the session and log in again)\n\n-----------------------------------\n ALTERNATIVE\n-----------------------------------\nalternative extension to obtain an effect more similar to the original:\nhttps://extensions.gnome.org/extension/3210/compiz-windows-effect/", "link": "https://extensions.gnome.org/extension/2950/compiz-alike-windows-effect/", "shell_version_map": {"38": {"version": "22", "sha256": "0zkc9lcirqg224m46jjz2vapfg4lg9x7s0h0kvv57rfmkhrxcgbg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvYmJseSB3aW5kb3dzIGVmZmVjdCBpbnNwaXJlZCBieSB0aGUgQ29tcGl6IG9uZXNcblxuTkJcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIEFMVEVSTkFUSVZFXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuYWx0ZXJuYXRpdmUgZXh0ZW5zaW9uIHRvIG9idGFpbiBhbiBlZmZlY3QgbW9yZSBzaW1pbGFyIHRvIHRoZSBvcmlnaW5hbDpcbmh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzMyMTAvY29tcGl6LXdpbmRvd3MtZWZmZWN0LyIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIHdpbmRvd3MgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotYWxpa2Utd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei1hbGlrZS13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIyCn0="}, "40": {"version": "22", "sha256": "0zkc9lcirqg224m46jjz2vapfg4lg9x7s0h0kvv57rfmkhrxcgbg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvYmJseSB3aW5kb3dzIGVmZmVjdCBpbnNwaXJlZCBieSB0aGUgQ29tcGl6IG9uZXNcblxuTkJcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIEFMVEVSTkFUSVZFXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuYWx0ZXJuYXRpdmUgZXh0ZW5zaW9uIHRvIG9idGFpbiBhbiBlZmZlY3QgbW9yZSBzaW1pbGFyIHRvIHRoZSBvcmlnaW5hbDpcbmh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzMyMTAvY29tcGl6LXdpbmRvd3MtZWZmZWN0LyIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIHdpbmRvd3MgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotYWxpa2Utd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei1hbGlrZS13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIyCn0="}, "41": {"version": "22", "sha256": "0zkc9lcirqg224m46jjz2vapfg4lg9x7s0h0kvv57rfmkhrxcgbg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvYmJseSB3aW5kb3dzIGVmZmVjdCBpbnNwaXJlZCBieSB0aGUgQ29tcGl6IG9uZXNcblxuTkJcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIEFMVEVSTkFUSVZFXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuYWx0ZXJuYXRpdmUgZXh0ZW5zaW9uIHRvIG9idGFpbiBhbiBlZmZlY3QgbW9yZSBzaW1pbGFyIHRvIHRoZSBvcmlnaW5hbDpcbmh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzMyMTAvY29tcGl6LXdpbmRvd3MtZWZmZWN0LyIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIHdpbmRvd3MgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotYWxpa2Utd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei1hbGlrZS13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIyCn0="}}}
-, {"uuid": "light-dict@tuberry.github.io", "name": "Light Dict", "pname": "light-dict", "description": "Lightweight extension for on-the-fly manipulation to primary selections, especially optimized for Dictionary lookups.\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/2959/light-dict/", "shell_version_map": {"38": {"version": "47", "sha256": "1l36l9qmcz7c6i81w5fv083bg01qsgz681c2lan8f87hqdipl4r7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3Igb24tdGhlLWZseSBtYW5pcHVsYXRpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb25zLCBlc3BlY2lhbGx5IG9wdGltaXplZCBmb3IgRGljdGlvbmFyeSBsb29rdXBzLlxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsaWdodC1kaWN0IiwKICAibmFtZSI6ICJMaWdodCBEaWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxpZ2h0LWRpY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2xpZ2h0LWRpY3QiLAogICJ1dWlkIjogImxpZ2h0LWRpY3RAdHViZXJyeS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNDcKfQ=="}, "40": {"version": "58", "sha256": "0x3rk3p2vlyd2n23jlmwqfc1akbbjfhyn9w1v44byw1nfc3b0n8z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3Igb24tdGhlLWZseSBtYW5pcHVsYXRpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb25zLCBlc3BlY2lhbGx5IG9wdGltaXplZCBmb3IgRGljdGlvbmFyeSBsb29rdXBzLlxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGlnaHQtZGljdCIsCiAgIm5hbWUiOiAiTGlnaHQgRGljdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5saWdodC1kaWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvbGlnaHQtZGljdCIsCiAgInV1aWQiOiAibGlnaHQtZGljdEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA1OAp9"}, "41": {"version": "65", "sha256": "1hjaw62pxrpgismg6dhxqp04qhk1d4xkwlgzymmra7d428qjnxf2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3Igb24tdGhlLWZseSBtYW5pcHVsYXRpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb25zLCBlc3BlY2lhbGx5IG9wdGltaXplZCBmb3IgRGljdGlvbmFyeSBsb29rdXBzLlxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGlnaHQtZGljdCIsCiAgIm5hbWUiOiAiTGlnaHQgRGljdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5saWdodC1kaWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvbGlnaHQtZGljdCIsCiAgInV1aWQiOiAibGlnaHQtZGljdEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA2NQp9"}}}
-, {"uuid": "InternetSpeedMeter@alshakib.dev", "name": "Internet Speed Meter", "pname": "internet-speed-meter", "description": "Simple and minimal internet speed meter extension for gnome shell", "link": "https://extensions.gnome.org/extension/2980/internet-speed-meter/", "shell_version_map": {"38": {"version": "10", "sha256": "0q6cdiswixzg0j5ndjmqcxv6jznzsgjh0zplgsnfw42n2mzvmw32", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsU2hha2liL0ludGVybmV0U3BlZWRNZXRlciIsCiAgInV1aWQiOiAiSW50ZXJuZXRTcGVlZE1ldGVyQGFsc2hha2liLmRldiIsCiAgInZlcnNpb24iOiAxMAp9"}, "40": {"version": "10", "sha256": "0q6cdiswixzg0j5ndjmqcxv6jznzsgjh0zplgsnfw42n2mzvmw32", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsU2hha2liL0ludGVybmV0U3BlZWRNZXRlciIsCiAgInV1aWQiOiAiSW50ZXJuZXRTcGVlZE1ldGVyQGFsc2hha2liLmRldiIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "0q6cdiswixzg0j5ndjmqcxv6jznzsgjh0zplgsnfw42n2mzvmw32", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsU2hha2liL0ludGVybmV0U3BlZWRNZXRlciIsCiAgInV1aWQiOiAiSW50ZXJuZXRTcGVlZE1ldGVyQGFsc2hha2liLmRldiIsCiAgInZlcnNpb24iOiAxMAp9"}}}
+, {"uuid": "light-dict@tuberry.github.io", "name": "Light Dict", "pname": "light-dict", "description": "Lightweight extension for on-the-fly manipulation to primary selections, especially optimized for Dictionary lookups.\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/2959/light-dict/", "shell_version_map": {"38": {"version": "47", "sha256": "1l36l9qmcz7c6i81w5fv083bg01qsgz681c2lan8f87hqdipl4r7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3Igb24tdGhlLWZseSBtYW5pcHVsYXRpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb25zLCBlc3BlY2lhbGx5IG9wdGltaXplZCBmb3IgRGljdGlvbmFyeSBsb29rdXBzLlxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsaWdodC1kaWN0IiwKICAibmFtZSI6ICJMaWdodCBEaWN0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxpZ2h0LWRpY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2xpZ2h0LWRpY3QiLAogICJ1dWlkIjogImxpZ2h0LWRpY3RAdHViZXJyeS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNDcKfQ=="}, "40": {"version": "58", "sha256": "0x3rk3p2vlyd2n23jlmwqfc1akbbjfhyn9w1v44byw1nfc3b0n8z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3Igb24tdGhlLWZseSBtYW5pcHVsYXRpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb25zLCBlc3BlY2lhbGx5IG9wdGltaXplZCBmb3IgRGljdGlvbmFyeSBsb29rdXBzLlxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGlnaHQtZGljdCIsCiAgIm5hbWUiOiAiTGlnaHQgRGljdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5saWdodC1kaWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvbGlnaHQtZGljdCIsCiAgInV1aWQiOiAibGlnaHQtZGljdEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA1OAp9"}, "41": {"version": "65", "sha256": "1hjaw62pxrpgismg6dhxqp04qhk1d4xkwlgzymmra7d428qjnxf2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3Igb24tdGhlLWZseSBtYW5pcHVsYXRpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb25zLCBlc3BlY2lhbGx5IG9wdGltaXplZCBmb3IgRGljdGlvbmFyeSBsb29rdXBzLlxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGlnaHQtZGljdCIsCiAgIm5hbWUiOiAiTGlnaHQgRGljdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5saWdodC1kaWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvbGlnaHQtZGljdCIsCiAgInV1aWQiOiAibGlnaHQtZGljdEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA2NQp9"}, "42": {"version": "67", "sha256": "05nxmlsik60nmci7x1zvdfwjymab10ikb4pdgq4cmpim3mrpp3xn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpZ2h0d2VpZ2h0IGV4dGVuc2lvbiBmb3Igb24tdGhlLWZseSBtYW5pcHVsYXRpb24gdG8gcHJpbWFyeSBzZWxlY3Rpb25zLCBlc3BlY2lhbGx5IG9wdGltaXplZCBmb3IgRGljdGlvbmFyeSBsb29rdXBzLlxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tbGlnaHQtZGljdCIsCiAgIm5hbWUiOiAiTGlnaHQgRGljdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5saWdodC1kaWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvbGlnaHQtZGljdCIsCiAgInV1aWQiOiAibGlnaHQtZGljdEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA2Nwp9"}}}
+, {"uuid": "InternetSpeedMeter@alshakib.dev", "name": "Internet Speed Meter", "pname": "internet-speed-meter", "description": "Simple and minimal internet speed meter extension for gnome shell", "link": "https://extensions.gnome.org/extension/2980/internet-speed-meter/", "shell_version_map": {"38": {"version": "10", "sha256": "0q6cdiswixzg0j5ndjmqcxv6jznzsgjh0zplgsnfw42n2mzvmw32", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsU2hha2liL0ludGVybmV0U3BlZWRNZXRlciIsCiAgInV1aWQiOiAiSW50ZXJuZXRTcGVlZE1ldGVyQGFsc2hha2liLmRldiIsCiAgInZlcnNpb24iOiAxMAp9"}, "40": {"version": "10", "sha256": "0q6cdiswixzg0j5ndjmqcxv6jznzsgjh0zplgsnfw42n2mzvmw32", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsU2hha2liL0ludGVybmV0U3BlZWRNZXRlciIsCiAgInV1aWQiOiAiSW50ZXJuZXRTcGVlZE1ldGVyQGFsc2hha2liLmRldiIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "0q6cdiswixzg0j5ndjmqcxv6jznzsgjh0zplgsnfw42n2mzvmw32", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsU2hha2liL0ludGVybmV0U3BlZWRNZXRlciIsCiAgInV1aWQiOiAiSW50ZXJuZXRTcGVlZE1ldGVyQGFsc2hha2liLmRldiIsCiAgInZlcnNpb24iOiAxMAp9"}, "42": {"version": "10", "sha256": "0q6cdiswixzg0j5ndjmqcxv6jznzsgjh0zplgsnfw42n2mzvmw32", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBhbmQgbWluaW1hbCBpbnRlcm5ldCBzcGVlZCBtZXRlciBleHRlbnNpb24gZm9yIGdub21lIHNoZWxsIiwKICAibmFtZSI6ICJJbnRlcm5ldCBTcGVlZCBNZXRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yMCIsCiAgICAiMy4yMiIsCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FsU2hha2liL0ludGVybmV0U3BlZWRNZXRlciIsCiAgInV1aWQiOiAiSW50ZXJuZXRTcGVlZE1ldGVyQGFsc2hha2liLmRldiIsCiAgInZlcnNpb24iOiAxMAp9"}}}
 , {"uuid": "IP-Finder@linxgem33.com", "name": "IP Finder", "pname": "ip-finder", "description": "Displays useful information about your public IP Address\n\nIP Finder displays information about your public IP address, hostname, country, AS Block, as well as  a map tile of your Geolocation and country flag,  this extension is Also Useful for informational purposes to monitor VPN changes and public network IP Addresses.\n\n=====================\nIP Finder can monitor in real time\n=====================\n*Wireguard connections\n*OpenVPN connections\n*IPV4/6 connections\n*Proxy connections\n*VPN vendor applications\n*Manual static IP changes\n\n====================\nIP Finder has added security\n====================\nNewly developed revised code base using open technologies and using API's for Public IP and Map Tile image locations using GET requests over HTTPS for a added layer of encrypted  Security, Please see source code for more details.\n\n====================\nCompatible GNOME shell - 3.36 and newer.", "link": "https://extensions.gnome.org/extension/2983/ip-finder/", "shell_version_map": {"38": {"version": "7", "sha256": "0qnmmg8q6xdv0rg90rzimqzsnggnsq2x8nmz998x59q2ik67kqgq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHVzZWZ1bCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBBZGRyZXNzXG5cbklQIEZpbmRlciBkaXNwbGF5cyBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBhZGRyZXNzLCBob3N0bmFtZSwgY291bnRyeSwgQVMgQmxvY2ssIGFzIHdlbGwgYXMgIGEgbWFwIHRpbGUgb2YgeW91ciBHZW9sb2NhdGlvbiBhbmQgY291bnRyeSBmbGFnLCAgdGhpcyBleHRlbnNpb24gaXMgQWxzbyBVc2VmdWwgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgdG8gbW9uaXRvciBWUE4gY2hhbmdlcyBhbmQgcHVibGljIG5ldHdvcmsgSVAgQWRkcmVzc2VzLlxuXG49PT09PT09PT09PT09PT09PT09PT1cbklQIEZpbmRlciBjYW4gbW9uaXRvciBpbiByZWFsIHRpbWVcbj09PT09PT09PT09PT09PT09PT09PVxuKldpcmVndWFyZCBjb25uZWN0aW9uc1xuKk9wZW5WUE4gY29ubmVjdGlvbnNcbipJUFY0LzYgY29ubmVjdGlvbnNcbipQcm94eSBjb25uZWN0aW9uc1xuKlZQTiB2ZW5kb3IgYXBwbGljYXRpb25zXG4qTWFudWFsIHN0YXRpYyBJUCBjaGFuZ2VzXG5cbj09PT09PT09PT09PT09PT09PT09XG5JUCBGaW5kZXIgaGFzIGFkZGVkIHNlY3VyaXR5XG49PT09PT09PT09PT09PT09PT09PVxuTmV3bHkgZGV2ZWxvcGVkIHJldmlzZWQgY29kZSBiYXNlIHVzaW5nIG9wZW4gdGVjaG5vbG9naWVzIGFuZCB1c2luZyBBUEkncyBmb3IgUHVibGljIElQIGFuZCBNYXAgVGlsZSBpbWFnZSBsb2NhdGlvbnMgdXNpbmcgR0VUIHJlcXVlc3RzIG92ZXIgSFRUUFMgZm9yIGEgYWRkZWQgbGF5ZXIgb2YgZW5jcnlwdGVkICBTZWN1cml0eSwgUGxlYXNlIHNlZSBzb3VyY2UgY29kZSBmb3IgbW9yZSBkZXRhaWxzLlxuXG49PT09PT09PT09PT09PT09PT09PVxuQ29tcGF0aWJsZSBHTk9NRSBzaGVsbCAtIDMuMzYgYW5kIG5ld2VyLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJpcC1maW5kZXIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpcC1maW5kZXIiLAogICJuYW1lIjogIklQIEZpbmRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wdWJsaWMtaXAtYWRkcmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL0xpbnhHZW0zMy9JUC1GaW5kZXIiLAogICJ1dWlkIjogIklQLUZpbmRlckBsaW54Z2VtMzMuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "9", "sha256": "1iglj9l7c69ics43r675w4azc7x680n21vfr6jkdha8j47a79sn3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHVzZWZ1bCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBBZGRyZXNzXG5cbklQIEZpbmRlciBkaXNwbGF5cyBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBhZGRyZXNzLCBob3N0bmFtZSwgY291bnRyeSwgQVMgQmxvY2ssIGFzIHdlbGwgYXMgIGEgbWFwIHRpbGUgb2YgeW91ciBHZW9sb2NhdGlvbiBhbmQgY291bnRyeSBmbGFnLCAgdGhpcyBleHRlbnNpb24gaXMgQWxzbyBVc2VmdWwgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgdG8gbW9uaXRvciBWUE4gY2hhbmdlcyBhbmQgcHVibGljIG5ldHdvcmsgSVAgQWRkcmVzc2VzLlxuXG49PT09PT09PT09PT09PT09PT09PT1cbklQIEZpbmRlciBjYW4gbW9uaXRvciBpbiByZWFsIHRpbWVcbj09PT09PT09PT09PT09PT09PT09PVxuKldpcmVndWFyZCBjb25uZWN0aW9uc1xuKk9wZW5WUE4gY29ubmVjdGlvbnNcbipJUFY0LzYgY29ubmVjdGlvbnNcbipQcm94eSBjb25uZWN0aW9uc1xuKlZQTiB2ZW5kb3IgYXBwbGljYXRpb25zXG4qTWFudWFsIHN0YXRpYyBJUCBjaGFuZ2VzXG5cbj09PT09PT09PT09PT09PT09PT09XG5JUCBGaW5kZXIgaGFzIGFkZGVkIHNlY3VyaXR5XG49PT09PT09PT09PT09PT09PT09PVxuTmV3bHkgZGV2ZWxvcGVkIHJldmlzZWQgY29kZSBiYXNlIHVzaW5nIG9wZW4gdGVjaG5vbG9naWVzIGFuZCB1c2luZyBBUEkncyBmb3IgUHVibGljIElQIGFuZCBNYXAgVGlsZSBpbWFnZSBsb2NhdGlvbnMgdXNpbmcgR0VUIHJlcXVlc3RzIG92ZXIgSFRUUFMgZm9yIGEgYWRkZWQgbGF5ZXIgb2YgZW5jcnlwdGVkICBTZWN1cml0eSwgUGxlYXNlIHNlZSBzb3VyY2UgY29kZSBmb3IgbW9yZSBkZXRhaWxzLlxuXG49PT09PT09PT09PT09PT09PT09PVxuQ29tcGF0aWJsZSBHTk9NRSBzaGVsbCAtIDMuMzYgYW5kIG5ld2VyLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJpcC1maW5kZXIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpcC1maW5kZXIiLAogICJuYW1lIjogIklQIEZpbmRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wdWJsaWMtaXAtYWRkcmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vTGlueEdlbTMzL0lQLUZpbmRlciIsCiAgInV1aWQiOiAiSVAtRmluZGVyQGxpbnhnZW0zMy5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}, "41": {"version": "9", "sha256": "1iglj9l7c69ics43r675w4azc7x680n21vfr6jkdha8j47a79sn3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHVzZWZ1bCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBBZGRyZXNzXG5cbklQIEZpbmRlciBkaXNwbGF5cyBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHB1YmxpYyBJUCBhZGRyZXNzLCBob3N0bmFtZSwgY291bnRyeSwgQVMgQmxvY2ssIGFzIHdlbGwgYXMgIGEgbWFwIHRpbGUgb2YgeW91ciBHZW9sb2NhdGlvbiBhbmQgY291bnRyeSBmbGFnLCAgdGhpcyBleHRlbnNpb24gaXMgQWxzbyBVc2VmdWwgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgdG8gbW9uaXRvciBWUE4gY2hhbmdlcyBhbmQgcHVibGljIG5ldHdvcmsgSVAgQWRkcmVzc2VzLlxuXG49PT09PT09PT09PT09PT09PT09PT1cbklQIEZpbmRlciBjYW4gbW9uaXRvciBpbiByZWFsIHRpbWVcbj09PT09PT09PT09PT09PT09PT09PVxuKldpcmVndWFyZCBjb25uZWN0aW9uc1xuKk9wZW5WUE4gY29ubmVjdGlvbnNcbipJUFY0LzYgY29ubmVjdGlvbnNcbipQcm94eSBjb25uZWN0aW9uc1xuKlZQTiB2ZW5kb3IgYXBwbGljYXRpb25zXG4qTWFudWFsIHN0YXRpYyBJUCBjaGFuZ2VzXG5cbj09PT09PT09PT09PT09PT09PT09XG5JUCBGaW5kZXIgaGFzIGFkZGVkIHNlY3VyaXR5XG49PT09PT09PT09PT09PT09PT09PVxuTmV3bHkgZGV2ZWxvcGVkIHJldmlzZWQgY29kZSBiYXNlIHVzaW5nIG9wZW4gdGVjaG5vbG9naWVzIGFuZCB1c2luZyBBUEkncyBmb3IgUHVibGljIElQIGFuZCBNYXAgVGlsZSBpbWFnZSBsb2NhdGlvbnMgdXNpbmcgR0VUIHJlcXVlc3RzIG92ZXIgSFRUUFMgZm9yIGEgYWRkZWQgbGF5ZXIgb2YgZW5jcnlwdGVkICBTZWN1cml0eSwgUGxlYXNlIHNlZSBzb3VyY2UgY29kZSBmb3IgbW9yZSBkZXRhaWxzLlxuXG49PT09PT09PT09PT09PT09PT09PVxuQ29tcGF0aWJsZSBHTk9NRSBzaGVsbCAtIDMuMzYgYW5kIG5ld2VyLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJpcC1maW5kZXIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpcC1maW5kZXIiLAogICJuYW1lIjogIklQIEZpbmRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wdWJsaWMtaXAtYWRkcmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vTGlueEdlbTMzL0lQLUZpbmRlciIsCiAgInV1aWQiOiAiSVAtRmluZGVyQGxpbnhnZW0zMy5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}}}
-, {"uuid": "runcat@kolesnikov.se", "name": "RunCat", "pname": "runcat", "description": "The cat tells you the CPU usage by running speed", "link": "https://extensions.gnome.org/extension/2986/runcat/", "shell_version_map": {"38": {"version": "17", "sha256": "19fkadmqndwpw5q5ab4mym7whc0cfs2vl6xh533z7p2rg2hxfslx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS93aW4wZXJyL2dub21lLXJ1bmNhdCIsCiAgInV1aWQiOiAicnVuY2F0QGtvbGVzbmlrb3Yuc2UiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "40": {"version": "17", "sha256": "19fkadmqndwpw5q5ab4mym7whc0cfs2vl6xh533z7p2rg2hxfslx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS93aW4wZXJyL2dub21lLXJ1bmNhdCIsCiAgInV1aWQiOiAicnVuY2F0QGtvbGVzbmlrb3Yuc2UiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "41": {"version": "17", "sha256": "19fkadmqndwpw5q5ab4mym7whc0cfs2vl6xh533z7p2rg2hxfslx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS93aW4wZXJyL2dub21lLXJ1bmNhdCIsCiAgInV1aWQiOiAicnVuY2F0QGtvbGVzbmlrb3Yuc2UiLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
+, {"uuid": "runcat@kolesnikov.se", "name": "RunCat", "pname": "runcat", "description": "The cat tells you the CPU usage by running speed", "link": "https://extensions.gnome.org/extension/2986/runcat/", "shell_version_map": {"38": {"version": "18", "sha256": "142qhz0ry330gcj9wg2hwa83d9xlsnrcajj0d9c4xaar9mhqc22d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd2luMGVyci9nbm9tZS1ydW5jYXQiLAogICJ1dWlkIjogInJ1bmNhdEBrb2xlc25pa292LnNlIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "40": {"version": "18", "sha256": "142qhz0ry330gcj9wg2hwa83d9xlsnrcajj0d9c4xaar9mhqc22d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd2luMGVyci9nbm9tZS1ydW5jYXQiLAogICJ1dWlkIjogInJ1bmNhdEBrb2xlc25pa292LnNlIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "41": {"version": "18", "sha256": "142qhz0ry330gcj9wg2hwa83d9xlsnrcajj0d9c4xaar9mhqc22d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd2luMGVyci9nbm9tZS1ydW5jYXQiLAogICJ1dWlkIjogInJ1bmNhdEBrb2xlc25pa292LnNlIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "42": {"version": "18", "sha256": "142qhz0ry330gcj9wg2hwa83d9xlsnrcajj0d9c4xaar9mhqc22d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBjYXQgdGVsbHMgeW91IHRoZSBDUFUgdXNhZ2UgYnkgcnVubmluZyBzcGVlZCIsCiAgIm5hbWUiOiAiUnVuQ2F0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vd2luMGVyci9nbm9tZS1ydW5jYXQiLAogICJ1dWlkIjogInJ1bmNhdEBrb2xlc25pa292LnNlIiwKICAidmVyc2lvbiI6IDE4Cn0="}}}
 , {"uuid": "bowser-gnome@kronosoul.xyz", "name": "Bowser Gnome Extension", "pname": "bowser-gnome-extension", "description": "Create rules to open specific websites in specific web browsers for links clicked in any application on your computer. (emails, chat etc)", "link": "https://extensions.gnome.org/extension/2989/bowser-gnome-extension/", "shell_version_map": {"38": {"version": "10", "sha256": "0y41xz4j24lc50ai8dcvl1l773ral59ixcpvkjq1l82x7baq60pk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImFwcGxpY2F0aW9uLWlkIjogIm9yZy5rcm9ub3NvdWwuQm93c2VyIiwKICAiZGVzY3JpcHRpb24iOiAiQ3JlYXRlIHJ1bGVzIHRvIG9wZW4gc3BlY2lmaWMgd2Vic2l0ZXMgaW4gc3BlY2lmaWMgd2ViIGJyb3dzZXJzIGZvciBsaW5rcyBjbGlja2VkIGluIGFueSBhcHBsaWNhdGlvbiBvbiB5b3VyIGNvbXB1dGVyLiAoZW1haWxzLCBjaGF0IGV0YykiLAogICJleHRlbnNpb24taWQiOiAiYm93c2VyLWdub21lIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYm93c2VyLWdub21lIiwKICAibmFtZSI6ICJCb3dzZXIgR25vbWUgRXh0ZW5zaW9uIiwKICAib3JpZ2luYWwtYXV0aG9yIjogImFkbWluQGtyb25vc291bC54eXoiLAogICJyZXNvdXJjZS1wYXRoIjogIi9vcmcva3Jvbm9zb3VsL0Jvd3Nlci8iLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy9Cb3dzZXIvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLkJvd3NlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsaXBrL2Jvd3Nlci1nbm9tZSIsCiAgInV1aWQiOiAiYm93c2VyLWdub21lQGtyb25vc291bC54eXoiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}}}
 , {"uuid": "ideapad@laurento.frittella", "name": "IdeaPad", "pname": "ideapad", "description": "Lenovo IdeaPad goodies for Gnome Shell\n\nAt the moment the extension only provides an easy and user-friendly way to toggle battery conservation mode available on Levono Ideapad laptops and visually get its current state.\n\nConfiguration needed! Please check the instruction on the homepage.", "link": "https://extensions.gnome.org/extension/2992/ideapad/", "shell_version_map": {"38": {"version": "10", "sha256": "0qmgvdhv1s16av3n1nhr366mkx0zci6z9h60yfkk88yk17k3d244", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxlbm92byBJZGVhUGFkIGdvb2RpZXMgZm9yIEdub21lIFNoZWxsXG5cbkF0IHRoZSBtb21lbnQgdGhlIGV4dGVuc2lvbiBvbmx5IHByb3ZpZGVzIGFuIGVhc3kgYW5kIHVzZXItZnJpZW5kbHkgd2F5IHRvIHRvZ2dsZSBiYXR0ZXJ5IGNvbnNlcnZhdGlvbiBtb2RlIGF2YWlsYWJsZSBvbiBMZXZvbm8gSWRlYXBhZCBsYXB0b3BzIGFuZCB2aXN1YWxseSBnZXQgaXRzIGN1cnJlbnQgc3RhdGUuXG5cbkNvbmZpZ3VyYXRpb24gbmVlZGVkISBQbGVhc2UgY2hlY2sgdGhlIGluc3RydWN0aW9uIG9uIHRoZSBob21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpZGVhcGFkIiwKICAibmFtZSI6ICJJZGVhUGFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sYXVyZW50by9nbm9tZS1zaGVsbC1leHRlbnNpb24taWRlYXBhZCIsCiAgInV1aWQiOiAiaWRlYXBhZEBsYXVyZW50by5mcml0dGVsbGEiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "40": {"version": "10", "sha256": "0qmgvdhv1s16av3n1nhr366mkx0zci6z9h60yfkk88yk17k3d244", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxlbm92byBJZGVhUGFkIGdvb2RpZXMgZm9yIEdub21lIFNoZWxsXG5cbkF0IHRoZSBtb21lbnQgdGhlIGV4dGVuc2lvbiBvbmx5IHByb3ZpZGVzIGFuIGVhc3kgYW5kIHVzZXItZnJpZW5kbHkgd2F5IHRvIHRvZ2dsZSBiYXR0ZXJ5IGNvbnNlcnZhdGlvbiBtb2RlIGF2YWlsYWJsZSBvbiBMZXZvbm8gSWRlYXBhZCBsYXB0b3BzIGFuZCB2aXN1YWxseSBnZXQgaXRzIGN1cnJlbnQgc3RhdGUuXG5cbkNvbmZpZ3VyYXRpb24gbmVlZGVkISBQbGVhc2UgY2hlY2sgdGhlIGluc3RydWN0aW9uIG9uIHRoZSBob21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpZGVhcGFkIiwKICAibmFtZSI6ICJJZGVhUGFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sYXVyZW50by9nbm9tZS1zaGVsbC1leHRlbnNpb24taWRlYXBhZCIsCiAgInV1aWQiOiAiaWRlYXBhZEBsYXVyZW50by5mcml0dGVsbGEiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "41": {"version": "10", "sha256": "0qmgvdhv1s16av3n1nhr366mkx0zci6z9h60yfkk88yk17k3d244", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxlbm92byBJZGVhUGFkIGdvb2RpZXMgZm9yIEdub21lIFNoZWxsXG5cbkF0IHRoZSBtb21lbnQgdGhlIGV4dGVuc2lvbiBvbmx5IHByb3ZpZGVzIGFuIGVhc3kgYW5kIHVzZXItZnJpZW5kbHkgd2F5IHRvIHRvZ2dsZSBiYXR0ZXJ5IGNvbnNlcnZhdGlvbiBtb2RlIGF2YWlsYWJsZSBvbiBMZXZvbm8gSWRlYXBhZCBsYXB0b3BzIGFuZCB2aXN1YWxseSBnZXQgaXRzIGN1cnJlbnQgc3RhdGUuXG5cbkNvbmZpZ3VyYXRpb24gbmVlZGVkISBQbGVhc2UgY2hlY2sgdGhlIGluc3RydWN0aW9uIG9uIHRoZSBob21lcGFnZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJpZGVhcGFkIiwKICAibmFtZSI6ICJJZGVhUGFkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sYXVyZW50by9nbm9tZS1zaGVsbC1leHRlbnNpb24taWRlYXBhZCIsCiAgInV1aWQiOiAiaWRlYXBhZEBsYXVyZW50by5mcml0dGVsbGEiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}}}
-, {"uuid": "system-monitor-next@paradoxxx.zero.gmail.com", "name": "system-monitor-next", "pname": "system-monitor-next", "description": "Display system information in GNOME Shell status bar, such as memory, CPU, disk and battery usages, network rates…\n\nThis fork of paradoxxxzero/gnome-shell-system-monitor-applet is for packaging purposes only. This extension is built and updated continuously with the upstream master branch.\n\nThis is preferable for users on bleeding edge distributions that prefer not to wait for a stable release from the main repo. Of course, since we're releasing directly from master some instability is inevitable.\n\nIf you get an error after updating, try restarting Gnome Shell with Alt-F2 then 'r'.", "link": "https://extensions.gnome.org/extension/3010/system-monitor-next/", "shell_version_map": {"40": {"version": "39", "sha256": "1nbn2h4izwbbajpyx65n8rhvcpc56irdz6736pg2apzkmkvhqqj5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgc3lzdGVtIGluZm9ybWF0aW9uIGluIEdOT01FIFNoZWxsIHN0YXR1cyBiYXIsIHN1Y2ggYXMgbWVtb3J5LCBDUFUsIGRpc2sgYW5kIGJhdHRlcnkgdXNhZ2VzLCBuZXR3b3JrIHJhdGVzXHUyMDI2XG5cblRoaXMgZm9yayBvZiBwYXJhZG94eHh6ZXJvL2dub21lLXNoZWxsLXN5c3RlbS1tb25pdG9yLWFwcGxldCBpcyBmb3IgcGFja2FnaW5nIHB1cnBvc2VzIG9ubHkuIFRoaXMgZXh0ZW5zaW9uIGlzIGJ1aWx0IGFuZCB1cGRhdGVkIGNvbnRpbnVvdXNseSB3aXRoIHRoZSB1cHN0cmVhbSBtYXN0ZXIgYnJhbmNoLlxuXG5UaGlzIGlzIHByZWZlcmFibGUgZm9yIHVzZXJzIG9uIGJsZWVkaW5nIGVkZ2UgZGlzdHJpYnV0aW9ucyB0aGF0IHByZWZlciBub3QgdG8gd2FpdCBmb3IgYSBzdGFibGUgcmVsZWFzZSBmcm9tIHRoZSBtYWluIHJlcG8uIE9mIGNvdXJzZSwgc2luY2Ugd2UncmUgcmVsZWFzaW5nIGRpcmVjdGx5IGZyb20gbWFzdGVyIHNvbWUgaW5zdGFiaWxpdHkgaXMgaW5ldml0YWJsZS5cblxuSWYgeW91IGdldCBhbiBlcnJvciBhZnRlciB1cGRhdGluZywgdHJ5IHJlc3RhcnRpbmcgR25vbWUgU2hlbGwgd2l0aCBBbHQtRjIgdGhlbiAncicuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic3lzdGVtLW1vbml0b3IiLAogICJuYW1lIjogInN5c3RlbS1tb25pdG9yLW5leHQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3lzdGVtLW1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tZ2FsZ3MvZ25vbWUtc2hlbGwtc3lzdGVtLW1vbml0b3ItYXBwbGV0IiwKICAidXVpZCI6ICJzeXN0ZW0tbW9uaXRvci1uZXh0QHBhcmFkb3h4eC56ZXJvLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzOQp9"}, "41": {"version": "39", "sha256": "1nbn2h4izwbbajpyx65n8rhvcpc56irdz6736pg2apzkmkvhqqj5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgc3lzdGVtIGluZm9ybWF0aW9uIGluIEdOT01FIFNoZWxsIHN0YXR1cyBiYXIsIHN1Y2ggYXMgbWVtb3J5LCBDUFUsIGRpc2sgYW5kIGJhdHRlcnkgdXNhZ2VzLCBuZXR3b3JrIHJhdGVzXHUyMDI2XG5cblRoaXMgZm9yayBvZiBwYXJhZG94eHh6ZXJvL2dub21lLXNoZWxsLXN5c3RlbS1tb25pdG9yLWFwcGxldCBpcyBmb3IgcGFja2FnaW5nIHB1cnBvc2VzIG9ubHkuIFRoaXMgZXh0ZW5zaW9uIGlzIGJ1aWx0IGFuZCB1cGRhdGVkIGNvbnRpbnVvdXNseSB3aXRoIHRoZSB1cHN0cmVhbSBtYXN0ZXIgYnJhbmNoLlxuXG5UaGlzIGlzIHByZWZlcmFibGUgZm9yIHVzZXJzIG9uIGJsZWVkaW5nIGVkZ2UgZGlzdHJpYnV0aW9ucyB0aGF0IHByZWZlciBub3QgdG8gd2FpdCBmb3IgYSBzdGFibGUgcmVsZWFzZSBmcm9tIHRoZSBtYWluIHJlcG8uIE9mIGNvdXJzZSwgc2luY2Ugd2UncmUgcmVsZWFzaW5nIGRpcmVjdGx5IGZyb20gbWFzdGVyIHNvbWUgaW5zdGFiaWxpdHkgaXMgaW5ldml0YWJsZS5cblxuSWYgeW91IGdldCBhbiBlcnJvciBhZnRlciB1cGRhdGluZywgdHJ5IHJlc3RhcnRpbmcgR25vbWUgU2hlbGwgd2l0aCBBbHQtRjIgdGhlbiAncicuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic3lzdGVtLW1vbml0b3IiLAogICJuYW1lIjogInN5c3RlbS1tb25pdG9yLW5leHQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3lzdGVtLW1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tZ2FsZ3MvZ25vbWUtc2hlbGwtc3lzdGVtLW1vbml0b3ItYXBwbGV0IiwKICAidXVpZCI6ICJzeXN0ZW0tbW9uaXRvci1uZXh0QHBhcmFkb3h4eC56ZXJvLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzOQp9"}}}
-, {"uuid": "user-theme-x@tuberry.github.io", "name": "User Themes X", "pname": "user-themes-x", "description": "Customizable user-theme with user stylesheet and dark theme auto-switch support\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/3019/user-themes-x/", "shell_version_map": {"38": {"version": "21", "sha256": "08992jny17mbw3gvlfwzgis1ld3wfkkd5fwdyq2c4s6l412fr0mz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6YWJsZSB1c2VyLXRoZW1lIHdpdGggdXNlciBzdHlsZXNoZWV0IGFuZCBkYXJrIHRoZW1lIGF1dG8tc3dpdGNoIHN1cHBvcnRcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUteCIsCiAgImdldHRleHQtZG9tYWluIjogInVzZXItdGhlbWUteCIsCiAgIm5hbWUiOiAiVXNlciBUaGVtZXMgWCIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiam9obi5zdG93ZXJzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlci10aGVtZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvdXNlci10aGVtZS14IiwKICAidXVpZCI6ICJ1c2VyLXRoZW1lLXhAdHViZXJyeS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMjEKfQ=="}, "40": {"version": "24", "sha256": "12scyi48nfbrl2bvhq4rwdcj7vyvpdc86sa8iw1fg3y0cw6vlvq6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6YWJsZSB1c2VyLXRoZW1lIHdpdGggdXNlciBzdHlsZXNoZWV0IGFuZCBkYXJrIHRoZW1lIGF1dG8tc3dpdGNoIHN1cHBvcnRcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUteCIsCiAgImdldHRleHQtZG9tYWluIjogInVzZXItdGhlbWUteCIsCiAgIm5hbWUiOiAiVXNlciBUaGVtZXMgWCIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiam9obi5zdG93ZXJzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlci10aGVtZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3VzZXItdGhlbWUteCIsCiAgInV1aWQiOiAidXNlci10aGVtZS14QHR1YmVycnkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDI0Cn0="}, "41": {"version": "25", "sha256": "101y4msarf1dglh0g4wybz4dx8zsz2yg8ny2q5rz3xy1cjj8ac5a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6YWJsZSB1c2VyLXRoZW1lIHdpdGggdXNlciBzdHlsZXNoZWV0IGFuZCBkYXJrIHRoZW1lIGF1dG8tc3dpdGNoIHN1cHBvcnRcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUteCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi11c2VyLXRoZW1lLXgiLAogICJuYW1lIjogIlVzZXIgVGhlbWVzIFgiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS91c2VyLXRoZW1lLXgiLAogICJ1dWlkIjogInVzZXItdGhlbWUteEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAyNQp9"}}}
+, {"uuid": "system-monitor-next@paradoxxx.zero.gmail.com", "name": "system-monitor-next", "pname": "system-monitor-next", "description": "Display system information in GNOME Shell status bar, such as memory, CPU, disk and battery usages, network rates…\n\nThis fork of paradoxxxzero/gnome-shell-system-monitor-applet is for packaging purposes only. This extension is built and updated continuously with the upstream master branch.\n\nThis is preferable for users on bleeding edge distributions that prefer not to wait for a stable release from the main repo. Of course, since we're releasing directly from master some instability is inevitable.\n\nIf you get an error after updating, try restarting Gnome Shell with Alt-F2 then 'r'.", "link": "https://extensions.gnome.org/extension/3010/system-monitor-next/", "shell_version_map": {"40": {"version": "39", "sha256": "1nbn2h4izwbbajpyx65n8rhvcpc56irdz6736pg2apzkmkvhqqj5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgc3lzdGVtIGluZm9ybWF0aW9uIGluIEdOT01FIFNoZWxsIHN0YXR1cyBiYXIsIHN1Y2ggYXMgbWVtb3J5LCBDUFUsIGRpc2sgYW5kIGJhdHRlcnkgdXNhZ2VzLCBuZXR3b3JrIHJhdGVzXHUyMDI2XG5cblRoaXMgZm9yayBvZiBwYXJhZG94eHh6ZXJvL2dub21lLXNoZWxsLXN5c3RlbS1tb25pdG9yLWFwcGxldCBpcyBmb3IgcGFja2FnaW5nIHB1cnBvc2VzIG9ubHkuIFRoaXMgZXh0ZW5zaW9uIGlzIGJ1aWx0IGFuZCB1cGRhdGVkIGNvbnRpbnVvdXNseSB3aXRoIHRoZSB1cHN0cmVhbSBtYXN0ZXIgYnJhbmNoLlxuXG5UaGlzIGlzIHByZWZlcmFibGUgZm9yIHVzZXJzIG9uIGJsZWVkaW5nIGVkZ2UgZGlzdHJpYnV0aW9ucyB0aGF0IHByZWZlciBub3QgdG8gd2FpdCBmb3IgYSBzdGFibGUgcmVsZWFzZSBmcm9tIHRoZSBtYWluIHJlcG8uIE9mIGNvdXJzZSwgc2luY2Ugd2UncmUgcmVsZWFzaW5nIGRpcmVjdGx5IGZyb20gbWFzdGVyIHNvbWUgaW5zdGFiaWxpdHkgaXMgaW5ldml0YWJsZS5cblxuSWYgeW91IGdldCBhbiBlcnJvciBhZnRlciB1cGRhdGluZywgdHJ5IHJlc3RhcnRpbmcgR25vbWUgU2hlbGwgd2l0aCBBbHQtRjIgdGhlbiAncicuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic3lzdGVtLW1vbml0b3IiLAogICJuYW1lIjogInN5c3RlbS1tb25pdG9yLW5leHQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3lzdGVtLW1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tZ2FsZ3MvZ25vbWUtc2hlbGwtc3lzdGVtLW1vbml0b3ItYXBwbGV0IiwKICAidXVpZCI6ICJzeXN0ZW0tbW9uaXRvci1uZXh0QHBhcmFkb3h4eC56ZXJvLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzOQp9"}, "41": {"version": "39", "sha256": "1nbn2h4izwbbajpyx65n8rhvcpc56irdz6736pg2apzkmkvhqqj5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgc3lzdGVtIGluZm9ybWF0aW9uIGluIEdOT01FIFNoZWxsIHN0YXR1cyBiYXIsIHN1Y2ggYXMgbWVtb3J5LCBDUFUsIGRpc2sgYW5kIGJhdHRlcnkgdXNhZ2VzLCBuZXR3b3JrIHJhdGVzXHUyMDI2XG5cblRoaXMgZm9yayBvZiBwYXJhZG94eHh6ZXJvL2dub21lLXNoZWxsLXN5c3RlbS1tb25pdG9yLWFwcGxldCBpcyBmb3IgcGFja2FnaW5nIHB1cnBvc2VzIG9ubHkuIFRoaXMgZXh0ZW5zaW9uIGlzIGJ1aWx0IGFuZCB1cGRhdGVkIGNvbnRpbnVvdXNseSB3aXRoIHRoZSB1cHN0cmVhbSBtYXN0ZXIgYnJhbmNoLlxuXG5UaGlzIGlzIHByZWZlcmFibGUgZm9yIHVzZXJzIG9uIGJsZWVkaW5nIGVkZ2UgZGlzdHJpYnV0aW9ucyB0aGF0IHByZWZlciBub3QgdG8gd2FpdCBmb3IgYSBzdGFibGUgcmVsZWFzZSBmcm9tIHRoZSBtYWluIHJlcG8uIE9mIGNvdXJzZSwgc2luY2Ugd2UncmUgcmVsZWFzaW5nIGRpcmVjdGx5IGZyb20gbWFzdGVyIHNvbWUgaW5zdGFiaWxpdHkgaXMgaW5ldml0YWJsZS5cblxuSWYgeW91IGdldCBhbiBlcnJvciBhZnRlciB1cGRhdGluZywgdHJ5IHJlc3RhcnRpbmcgR25vbWUgU2hlbGwgd2l0aCBBbHQtRjIgdGhlbiAncicuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic3lzdGVtLW1vbml0b3IiLAogICJuYW1lIjogInN5c3RlbS1tb25pdG9yLW5leHQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3lzdGVtLW1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tZ2FsZ3MvZ25vbWUtc2hlbGwtc3lzdGVtLW1vbml0b3ItYXBwbGV0IiwKICAidXVpZCI6ICJzeXN0ZW0tbW9uaXRvci1uZXh0QHBhcmFkb3h4eC56ZXJvLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzOQp9"}, "42": {"version": "39", "sha256": "1nbn2h4izwbbajpyx65n8rhvcpc56irdz6736pg2apzkmkvhqqj5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgc3lzdGVtIGluZm9ybWF0aW9uIGluIEdOT01FIFNoZWxsIHN0YXR1cyBiYXIsIHN1Y2ggYXMgbWVtb3J5LCBDUFUsIGRpc2sgYW5kIGJhdHRlcnkgdXNhZ2VzLCBuZXR3b3JrIHJhdGVzXHUyMDI2XG5cblRoaXMgZm9yayBvZiBwYXJhZG94eHh6ZXJvL2dub21lLXNoZWxsLXN5c3RlbS1tb25pdG9yLWFwcGxldCBpcyBmb3IgcGFja2FnaW5nIHB1cnBvc2VzIG9ubHkuIFRoaXMgZXh0ZW5zaW9uIGlzIGJ1aWx0IGFuZCB1cGRhdGVkIGNvbnRpbnVvdXNseSB3aXRoIHRoZSB1cHN0cmVhbSBtYXN0ZXIgYnJhbmNoLlxuXG5UaGlzIGlzIHByZWZlcmFibGUgZm9yIHVzZXJzIG9uIGJsZWVkaW5nIGVkZ2UgZGlzdHJpYnV0aW9ucyB0aGF0IHByZWZlciBub3QgdG8gd2FpdCBmb3IgYSBzdGFibGUgcmVsZWFzZSBmcm9tIHRoZSBtYWluIHJlcG8uIE9mIGNvdXJzZSwgc2luY2Ugd2UncmUgcmVsZWFzaW5nIGRpcmVjdGx5IGZyb20gbWFzdGVyIHNvbWUgaW5zdGFiaWxpdHkgaXMgaW5ldml0YWJsZS5cblxuSWYgeW91IGdldCBhbiBlcnJvciBhZnRlciB1cGRhdGluZywgdHJ5IHJlc3RhcnRpbmcgR25vbWUgU2hlbGwgd2l0aCBBbHQtRjIgdGhlbiAncicuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic3lzdGVtLW1vbml0b3IiLAogICJuYW1lIjogInN5c3RlbS1tb25pdG9yLW5leHQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3lzdGVtLW1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tZ2FsZ3MvZ25vbWUtc2hlbGwtc3lzdGVtLW1vbml0b3ItYXBwbGV0IiwKICAidXVpZCI6ICJzeXN0ZW0tbW9uaXRvci1uZXh0QHBhcmFkb3h4eC56ZXJvLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAzOQp9"}}}
+, {"uuid": "user-theme-x@tuberry.github.io", "name": "User Themes X", "pname": "user-themes-x", "description": "Customizable user-theme with user stylesheet and dark theme auto-switch support\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/3019/user-themes-x/", "shell_version_map": {"38": {"version": "21", "sha256": "08992jny17mbw3gvlfwzgis1ld3wfkkd5fwdyq2c4s6l412fr0mz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6YWJsZSB1c2VyLXRoZW1lIHdpdGggdXNlciBzdHlsZXNoZWV0IGFuZCBkYXJrIHRoZW1lIGF1dG8tc3dpdGNoIHN1cHBvcnRcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUteCIsCiAgImdldHRleHQtZG9tYWluIjogInVzZXItdGhlbWUteCIsCiAgIm5hbWUiOiAiVXNlciBUaGVtZXMgWCIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiam9obi5zdG93ZXJzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlci10aGVtZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvdXNlci10aGVtZS14IiwKICAidXVpZCI6ICJ1c2VyLXRoZW1lLXhAdHViZXJyeS5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMjEKfQ=="}, "40": {"version": "24", "sha256": "12scyi48nfbrl2bvhq4rwdcj7vyvpdc86sa8iw1fg3y0cw6vlvq6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6YWJsZSB1c2VyLXRoZW1lIHdpdGggdXNlciBzdHlsZXNoZWV0IGFuZCBkYXJrIHRoZW1lIGF1dG8tc3dpdGNoIHN1cHBvcnRcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUteCIsCiAgImdldHRleHQtZG9tYWluIjogInVzZXItdGhlbWUteCIsCiAgIm5hbWUiOiAiVXNlciBUaGVtZXMgWCIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAiam9obi5zdG93ZXJzQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudXNlci10aGVtZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3VzZXItdGhlbWUteCIsCiAgInV1aWQiOiAidXNlci10aGVtZS14QHR1YmVycnkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDI0Cn0="}, "41": {"version": "25", "sha256": "101y4msarf1dglh0g4wybz4dx8zsz2yg8ny2q5rz3xy1cjj8ac5a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6YWJsZSB1c2VyLXRoZW1lIHdpdGggdXNlciBzdHlsZXNoZWV0IGFuZCBkYXJrIHRoZW1lIGF1dG8tc3dpdGNoIHN1cHBvcnRcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUteCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi11c2VyLXRoZW1lLXgiLAogICJuYW1lIjogIlVzZXIgVGhlbWVzIFgiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS91c2VyLXRoZW1lLXgiLAogICJ1dWlkIjogInVzZXItdGhlbWUteEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAyNQp9"}, "42": {"version": "28", "sha256": "0bszimlk03j49v9f8ab6kv3chg8p29zg6ms3l1nvicdifxyp534g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6YWJsZSB1c2VyLXRoZW1lIHdpdGggdXNlciBzdHlsZXNoZWV0IGFuZCBkYXJrIHRoZW1lIGF1dG8tc3dpdGNoIHN1cHBvcnRcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZXh0ZW5zaW9uLWlkIjogInVzZXItdGhlbWUteCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi11c2VyLXRoZW1lLXgiLAogICJuYW1lIjogIlVzZXIgVGhlbWVzIFgiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImpvaG4uc3Rvd2Vyc0BnbWFpbC5jb20iCiAgXSwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZXItdGhlbWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS91c2VyLXRoZW1lLXgiLAogICJ1dWlkIjogInVzZXItdGhlbWUteEB0dWJlcnJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAyOAp9"}}}
 , {"uuid": "app_view_text@fawtytoo", "name": "Application View Text", "pname": "application-view-text", "description": "The text in the Application view can be hard to read on a light coloured background. This extension makes the text bolder with a drop shadow.\nAlso improves the visibility of the app running dot.", "link": "https://extensions.gnome.org/extension/3028/application-view-text/", "shell_version_map": {"38": {"version": "7", "sha256": "1dnf1rqg27y1c50sfmqcnswac93lkgml1hdaalq6lfzm8pbnpx0d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSB0ZXh0IGluIHRoZSBBcHBsaWNhdGlvbiB2aWV3IGNhbiBiZSBoYXJkIHRvIHJlYWQgb24gYSBsaWdodCBjb2xvdXJlZCBiYWNrZ3JvdW5kLiBUaGlzIGV4dGVuc2lvbiBtYWtlcyB0aGUgdGV4dCBib2xkZXIgd2l0aCBhIGRyb3Agc2hhZG93LlxuQWxzbyBpbXByb3ZlcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgYXBwIHJ1bm5pbmcgZG90LiIsCiAgIm5hbWUiOiAiQXBwbGljYXRpb24gVmlldyBUZXh0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYXBwX3ZpZXdfdGV4dEBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "1dnf1rqg27y1c50sfmqcnswac93lkgml1hdaalq6lfzm8pbnpx0d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSB0ZXh0IGluIHRoZSBBcHBsaWNhdGlvbiB2aWV3IGNhbiBiZSBoYXJkIHRvIHJlYWQgb24gYSBsaWdodCBjb2xvdXJlZCBiYWNrZ3JvdW5kLiBUaGlzIGV4dGVuc2lvbiBtYWtlcyB0aGUgdGV4dCBib2xkZXIgd2l0aCBhIGRyb3Agc2hhZG93LlxuQWxzbyBpbXByb3ZlcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgYXBwIHJ1bm5pbmcgZG90LiIsCiAgIm5hbWUiOiAiQXBwbGljYXRpb24gVmlldyBUZXh0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYXBwX3ZpZXdfdGV4dEBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "1dnf1rqg27y1c50sfmqcnswac93lkgml1hdaalq6lfzm8pbnpx0d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSB0ZXh0IGluIHRoZSBBcHBsaWNhdGlvbiB2aWV3IGNhbiBiZSBoYXJkIHRvIHJlYWQgb24gYSBsaWdodCBjb2xvdXJlZCBiYWNrZ3JvdW5kLiBUaGlzIGV4dGVuc2lvbiBtYWtlcyB0aGUgdGV4dCBib2xkZXIgd2l0aCBhIGRyb3Agc2hhZG93LlxuQWxzbyBpbXByb3ZlcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgYXBwIHJ1bm5pbmcgZG90LiIsCiAgIm5hbWUiOiAiQXBwbGljYXRpb24gVmlldyBUZXh0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYXBwX3ZpZXdfdGV4dEBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "vpn-snx-indicator@als.kz", "name": "VPN and SNX Indicator", "pname": "vpn-and-snx-indicator", "description": "A status indicator for a VPN and SNX(Check Point) connection.", "link": "https://extensions.gnome.org/extension/3049/vpn-and-snx-indicator/", "shell_version_map": {"38": {"version": "8", "sha256": "1mns39frrabpfdvmc7jcqxrlxs1mnjimdwa69hv5lawf0r498h9g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIGluZGljYXRvciBmb3IgYSBWUE4gYW5kIFNOWChDaGVjayBQb2ludCkgY29ubmVjdGlvbi4iLAogICJuYW1lIjogIlZQTiBhbmQgU05YIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNi4wIiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWxleGV5bG92Y2hpa292L3Zwbi1pbmRpY2F0b3Itc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ2cG4tc254LWluZGljYXRvckBhbHMua3oiLAogICJ2ZXJzaW9uIjogOAp9"}, "40": {"version": "8", "sha256": "1mns39frrabpfdvmc7jcqxrlxs1mnjimdwa69hv5lawf0r498h9g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIGluZGljYXRvciBmb3IgYSBWUE4gYW5kIFNOWChDaGVjayBQb2ludCkgY29ubmVjdGlvbi4iLAogICJuYW1lIjogIlZQTiBhbmQgU05YIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNi4wIiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWxleGV5bG92Y2hpa292L3Zwbi1pbmRpY2F0b3Itc2hlbGwtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ2cG4tc254LWluZGljYXRvckBhbHMua3oiLAogICJ2ZXJzaW9uIjogOAp9"}}}
 , {"uuid": "vlan-switcher@darcato.github.io", "name": "VLAN Switcher", "pname": "vlan-switcher", "description": "Activate and deactivate VLAN connections from the system panel.", "link": "https://extensions.gnome.org/extension/3061/vlan-switcher/", "shell_version_map": {"38": {"version": "2", "sha256": "10qly2cldlrca96akywhw0cg5rmihh5b2mqs6sfrrincmnf0vnfw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFjdGl2YXRlIGFuZCBkZWFjdGl2YXRlIFZMQU4gY29ubmVjdGlvbnMgZnJvbSB0aGUgc3lzdGVtIHBhbmVsLiIsCiAgIm5hbWUiOiAiVkxBTiBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kYXJjYXRvL2dub21lLXZsYW4tc3dpdGNoZXIiLAogICJ1dWlkIjogInZsYW4tc3dpdGNoZXJAZGFyY2F0by5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMgp9"}, "40": {"version": "2", "sha256": "10qly2cldlrca96akywhw0cg5rmihh5b2mqs6sfrrincmnf0vnfw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFjdGl2YXRlIGFuZCBkZWFjdGl2YXRlIFZMQU4gY29ubmVjdGlvbnMgZnJvbSB0aGUgc3lzdGVtIHBhbmVsLiIsCiAgIm5hbWUiOiAiVkxBTiBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9kYXJjYXRvL2dub21lLXZsYW4tc3dpdGNoZXIiLAogICJ1dWlkIjogInZsYW4tc3dpdGNoZXJAZGFyY2F0by5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"uuid": "ssss@tu.berry", "name": "Simple Subscriber", "pname": "ss-subscriber", "description": "Simple shadowsocks subscriber (SSD only), yet another proxy switcher for GNOME Shell\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/3073/ss-subscriber/", "shell_version_map": {"38": {"version": "18", "sha256": "03gryl577559h2l1s3adi5gxa8ivp454p4lq7jng1db6smlpj95a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBHTk9NRSBTaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzcy1zdWJzY3JpYmVyIiwKICAibmFtZSI6ICJTaW1wbGUgU3Vic2NyaWJlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zcy1zdWJzY3JpYmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9zcy1zdWJzY3JpYmVyIiwKICAidXVpZCI6ICJzc3NzQHR1LmJlcnJ5IiwKICAidmVyc2lvbiI6IDE4Cn0="}, "40": {"version": "20", "sha256": "075d00xsbmr4qs554p2anddhkmgcx7xd4nn8prgmf4wpyfk87552", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBHTk9NRSBTaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzcy1zdWJzY3JpYmVyIiwKICAibmFtZSI6ICJTaW1wbGUgU3Vic2NyaWJlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zcy1zdWJzY3JpYmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvc3Mtc3Vic2NyaWJlciIsCiAgInV1aWQiOiAic3Nzc0B0dS5iZXJyeSIsCiAgInZlcnNpb24iOiAyMAp9"}, "41": {"version": "21", "sha256": "06ybzk62fbi88iqssl4pw0amsbcp09pnw99wxanh2jlvaakqgday", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBHTk9NRSBTaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc3Mtc3Vic2NyaWJlciIsCiAgIm5hbWUiOiAiU2ltcGxlIFN1YnNjcmliZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3Mtc3Vic2NyaWJlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3NzLXN1YnNjcmliZXIiLAogICJ1dWlkIjogInNzc3NAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMjEKfQ=="}}}
-, {"uuid": "extension-list@tu.berry", "name": "Extension List", "pname": "extension-list", "description": "Simple GNOME Shell extension manager in the top panel\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/3088/extension-list/", "shell_version_map": {"38": {"version": "25", "sha256": "0cwabswbb5p0z156488ag095h558hf541650vfnjgw4nas7v2ccx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBTaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVuc2lvbi1saXN0IiwKICAibmFtZSI6ICJFeHRlbnNpb24gTGlzdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5leHRlbnNpb24tbGlzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvZXh0ZW5zaW9uLWxpc3QiLAogICJ1dWlkIjogImV4dGVuc2lvbi1saXN0QHR1LmJlcnJ5IiwKICAidmVyc2lvbiI6IDI1Cn0="}, "40": {"version": "27", "sha256": "0m13qzzbbx5rnq8a9xn09nvr3dy9zqkp8y9529y12250wyjafl1p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBTaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVuc2lvbi1saXN0IiwKICAibmFtZSI6ICJFeHRlbnNpb24gTGlzdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5leHRlbnNpb24tbGlzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2V4dGVuc2lvbi1saXN0IiwKICAidXVpZCI6ICJleHRlbnNpb24tbGlzdEB0dS5iZXJyeSIsCiAgInZlcnNpb24iOiAyNwp9"}, "41": {"version": "29", "sha256": "1yl2b9phvrgsdpkwqjfqpaqi2xcj5bcd4zabqkrfwngqsg17s85j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBTaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1leHRlbnNpb24tbGlzdCIsCiAgIm5hbWUiOiAiRXh0ZW5zaW9uIExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9uLWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9leHRlbnNpb24tbGlzdCIsCiAgInV1aWQiOiAiZXh0ZW5zaW9uLWxpc3RAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMjkKfQ=="}}}
+, {"uuid": "ssss@tu.berry", "name": "Simple Subscriber", "pname": "ss-subscriber", "description": "Simple shadowsocks subscriber (SSD only), yet another proxy switcher for GNOME Shell\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/3073/ss-subscriber/", "shell_version_map": {"38": {"version": "18", "sha256": "03gryl577559h2l1s3adi5gxa8ivp454p4lq7jng1db6smlpj95a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBHTk9NRSBTaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzcy1zdWJzY3JpYmVyIiwKICAibmFtZSI6ICJTaW1wbGUgU3Vic2NyaWJlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zcy1zdWJzY3JpYmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9zcy1zdWJzY3JpYmVyIiwKICAidXVpZCI6ICJzc3NzQHR1LmJlcnJ5IiwKICAidmVyc2lvbiI6IDE4Cn0="}, "40": {"version": "20", "sha256": "075d00xsbmr4qs554p2anddhkmgcx7xd4nn8prgmf4wpyfk87552", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBHTk9NRSBTaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzcy1zdWJzY3JpYmVyIiwKICAibmFtZSI6ICJTaW1wbGUgU3Vic2NyaWJlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zcy1zdWJzY3JpYmVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvc3Mtc3Vic2NyaWJlciIsCiAgInV1aWQiOiAic3Nzc0B0dS5iZXJyeSIsCiAgInZlcnNpb24iOiAyMAp9"}, "41": {"version": "21", "sha256": "06ybzk62fbi88iqssl4pw0amsbcp09pnw99wxanh2jlvaakqgday", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBHTk9NRSBTaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc3Mtc3Vic2NyaWJlciIsCiAgIm5hbWUiOiAiU2ltcGxlIFN1YnNjcmliZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3Mtc3Vic2NyaWJlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3NzLXN1YnNjcmliZXIiLAogICJ1dWlkIjogInNzc3NAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMjEKfQ=="}, "42": {"version": "23", "sha256": "078111h68zv03n6i4yw9jgdn9idxb91qpami64xl5g1rc75sc91w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBzaGFkb3dzb2NrcyBzdWJzY3JpYmVyIChTU0Qgb25seSksIHlldCBhbm90aGVyIHByb3h5IHN3aXRjaGVyIGZvciBHTk9NRSBTaGVsbFxuXG5Gb3Igc3VwcG9ydCwgcGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHZpYSB0aGUgaG9tZXBhZ2UgbGluayBiZWxvdy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1zaGVsbC1leHRlbnNpb24tc3Mtc3Vic2NyaWJlciIsCiAgIm5hbWUiOiAiU2ltcGxlIFN1YnNjcmliZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc3Mtc3Vic2NyaWJlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3NzLXN1YnNjcmliZXIiLAogICJ1dWlkIjogInNzc3NAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMjMKfQ=="}}}
+, {"uuid": "extension-list@tu.berry", "name": "Extension List", "pname": "extension-list", "description": "Simple GNOME Shell extension manager in the top panel\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/3088/extension-list/", "shell_version_map": {"38": {"version": "25", "sha256": "0cwabswbb5p0z156488ag095h558hf541650vfnjgw4nas7v2ccx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBTaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVuc2lvbi1saXN0IiwKICAibmFtZSI6ICJFeHRlbnNpb24gTGlzdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5leHRlbnNpb24tbGlzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvZXh0ZW5zaW9uLWxpc3QiLAogICJ1dWlkIjogImV4dGVuc2lvbi1saXN0QHR1LmJlcnJ5IiwKICAidmVyc2lvbiI6IDI1Cn0="}, "40": {"version": "27", "sha256": "0m13qzzbbx5rnq8a9xn09nvr3dy9zqkp8y9529y12250wyjafl1p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBTaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImV4dGVuc2lvbi1saXN0IiwKICAibmFtZSI6ICJFeHRlbnNpb24gTGlzdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5leHRlbnNpb24tbGlzdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2V4dGVuc2lvbi1saXN0IiwKICAidXVpZCI6ICJleHRlbnNpb24tbGlzdEB0dS5iZXJyeSIsCiAgInZlcnNpb24iOiAyNwp9"}, "41": {"version": "29", "sha256": "1yl2b9phvrgsdpkwqjfqpaqi2xcj5bcd4zabqkrfwngqsg17s85j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBTaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1leHRlbnNpb24tbGlzdCIsCiAgIm5hbWUiOiAiRXh0ZW5zaW9uIExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9uLWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9leHRlbnNpb24tbGlzdCIsCiAgInV1aWQiOiAiZXh0ZW5zaW9uLWxpc3RAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMjkKfQ=="}, "42": {"version": "30", "sha256": "1hnidb1f6cawfhmkql4y8kz3rq0ibqcfk678yz1n12l2gp3vvvz3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBTaGVsbCBleHRlbnNpb24gbWFuYWdlciBpbiB0aGUgdG9wIHBhbmVsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1leHRlbnNpb24tbGlzdCIsCiAgIm5hbWUiOiAiRXh0ZW5zaW9uIExpc3QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZXh0ZW5zaW9uLWxpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9leHRlbnNpb24tbGlzdCIsCiAgInV1aWQiOiAiZXh0ZW5zaW9uLWxpc3RAdHUuYmVycnkiLAogICJ2ZXJzaW9uIjogMzAKfQ=="}}}
 , {"uuid": "MaximizeToEmptyWorkspace-extension@kaisersite.de", "name": "Maximize To Empty Workspace", "pname": "maximize-to-empty-workspace", "description": "New and maximized windows will be moved to empty workspaces.\nSupports multiple monitors.", "link": "https://extensions.gnome.org/extension/3100/maximize-to-empty-workspace/", "shell_version_map": {"38": {"version": "10", "sha256": "05gi4r8wq8bnb1b5476w5h737swg0rdkm7fq1g2l2c9hg0h9r007", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thaXNlcmFjbS9nbm9tZS1zaGVsbC1leHRlbnNpb24tbWF4aW1pemUtdG8tZW1wdHktd29ya3NwYWNlIiwKICAidXVpZCI6ICJNYXhpbWl6ZVRvRW1wdHlXb3Jrc3BhY2UtZXh0ZW5zaW9uQGthaXNlcnNpdGUuZGUiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "40": {"version": "10", "sha256": "05gi4r8wq8bnb1b5476w5h737swg0rdkm7fq1g2l2c9hg0h9r007", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thaXNlcmFjbS9nbm9tZS1zaGVsbC1leHRlbnNpb24tbWF4aW1pemUtdG8tZW1wdHktd29ya3NwYWNlIiwKICAidXVpZCI6ICJNYXhpbWl6ZVRvRW1wdHlXb3Jrc3BhY2UtZXh0ZW5zaW9uQGthaXNlcnNpdGUuZGUiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}, "41": {"version": "10", "sha256": "05gi4r8wq8bnb1b5476w5h737swg0rdkm7fq1g2l2c9hg0h9r007", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldyBhbmQgbWF4aW1pemVkIHdpbmRvd3Mgd2lsbCBiZSBtb3ZlZCB0byBlbXB0eSB3b3Jrc3BhY2VzLlxuU3VwcG9ydHMgbXVsdGlwbGUgbW9uaXRvcnMuIiwKICAibmFtZSI6ICJNYXhpbWl6ZSBUbyBFbXB0eSBXb3Jrc3BhY2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thaXNlcmFjbS9nbm9tZS1zaGVsbC1leHRlbnNpb24tbWF4aW1pemUtdG8tZW1wdHktd29ya3NwYWNlIiwKICAidXVpZCI6ICJNYXhpbWl6ZVRvRW1wdHlXb3Jrc3BhY2UtZXh0ZW5zaW9uQGthaXNlcnNpdGUuZGUiLAogICJ2ZXJzaW9uIjogMTAKfQ=="}}}
 , {"uuid": "eye-extended@als.kz", "name": "Eye and Mouse Extended", "pname": "eye-extended", "description": "Adds an eye to the indicator bar that follows your cursor \nYou can also display the mouse indicator, perhaps it will help you with the problem of displaying the mouse cursor in Skype", "link": "https://extensions.gnome.org/extension/3139/eye-extended/", "shell_version_map": {"38": {"version": "9", "sha256": "1y2bgk2kww0g3f1d93s1w15g5xihjbipq40wr08f41jr8l53v9ay", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gZXllIHRvIHRoZSBpbmRpY2F0b3IgYmFyIHRoYXQgZm9sbG93cyB5b3VyIGN1cnNvciBcbllvdSBjYW4gYWxzbyBkaXNwbGF5IHRoZSBtb3VzZSBpbmRpY2F0b3IsIHBlcmhhcHMgaXQgd2lsbCBoZWxwIHlvdSB3aXRoIHRoZSBwcm9ibGVtIG9mIGRpc3BsYXlpbmcgdGhlIG1vdXNlIGN1cnNvciBpbiBTa3lwZSIsCiAgImdldHRleHQtZG9tYWluIjogIkV5ZUV4dGVuZGVkIiwKICAibmFtZSI6ICJFeWUgYW5kIE1vdXNlIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImt6LmFscy5leWUtZXh0ZW5kZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYuMCIsCiAgICAiMy4zOC4wIiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGV4ZXlsb3ZjaGlrb3YvZXllLWV4dGVuZGVkLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZXllLWV4dGVuZGVkQGFscy5reiIsCiAgInZlcnNpb24iOiA5Cn0="}, "40": {"version": "9", "sha256": "1y2bgk2kww0g3f1d93s1w15g5xihjbipq40wr08f41jr8l53v9ay", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gZXllIHRvIHRoZSBpbmRpY2F0b3IgYmFyIHRoYXQgZm9sbG93cyB5b3VyIGN1cnNvciBcbllvdSBjYW4gYWxzbyBkaXNwbGF5IHRoZSBtb3VzZSBpbmRpY2F0b3IsIHBlcmhhcHMgaXQgd2lsbCBoZWxwIHlvdSB3aXRoIHRoZSBwcm9ibGVtIG9mIGRpc3BsYXlpbmcgdGhlIG1vdXNlIGN1cnNvciBpbiBTa3lwZSIsCiAgImdldHRleHQtZG9tYWluIjogIkV5ZUV4dGVuZGVkIiwKICAibmFtZSI6ICJFeWUgYW5kIE1vdXNlIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImt6LmFscy5leWUtZXh0ZW5kZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYuMCIsCiAgICAiMy4zOC4wIiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGV4ZXlsb3ZjaGlrb3YvZXllLWV4dGVuZGVkLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZXllLWV4dGVuZGVkQGFscy5reiIsCiAgInZlcnNpb24iOiA5Cn0="}, "41": {"version": "9", "sha256": "1y2bgk2kww0g3f1d93s1w15g5xihjbipq40wr08f41jr8l53v9ay", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gZXllIHRvIHRoZSBpbmRpY2F0b3IgYmFyIHRoYXQgZm9sbG93cyB5b3VyIGN1cnNvciBcbllvdSBjYW4gYWxzbyBkaXNwbGF5IHRoZSBtb3VzZSBpbmRpY2F0b3IsIHBlcmhhcHMgaXQgd2lsbCBoZWxwIHlvdSB3aXRoIHRoZSBwcm9ibGVtIG9mIGRpc3BsYXlpbmcgdGhlIG1vdXNlIGN1cnNvciBpbiBTa3lwZSIsCiAgImdldHRleHQtZG9tYWluIjogIkV5ZUV4dGVuZGVkIiwKICAibmFtZSI6ICJFeWUgYW5kIE1vdXNlIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImt6LmFscy5leWUtZXh0ZW5kZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYuMCIsCiAgICAiMy4zOC4wIiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGV4ZXlsb3ZjaGlrb3YvZXllLWV4dGVuZGVkLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiZXllLWV4dGVuZGVkQGFscy5reiIsCiAgInZlcnNpb24iOiA5Cn0="}}}
-, {"uuid": "wireguard-indicator@gregos.me", "name": "Wireguard Indicator", "pname": "wireguard-indicator", "description": "Enable, disable, and view details of Wireguard.\nDeveloped by Gregos-Winus.", "link": "https://extensions.gnome.org/extension/3160/wireguard-indicator/", "shell_version_map": {"38": {"version": "4", "sha256": "1r12pw550v3h5f6zxl0psnsx031b5c7sj374f9h078lwqs85wb8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGdyZWdvcy5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "1r12pw550v3h5f6zxl0psnsx031b5c7sj374f9h078lwqs85wb8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGdyZWdvcy5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "1r12pw550v3h5f6zxl0psnsx031b5c7sj374f9h078lwqs85wb8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGdyZWdvcy5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
-, {"uuid": "blur-my-shell@aunetx", "name": "Blur my Shell", "pname": "blur-my-shell", "description": "Adds a blur look to different parts of the GNOME Shell, including the top panel, dash and overview.\n\nYou can support my work by sponsoring me on:\n- github: https://github.com/sponsors/aunetx\n- ko-fi: https://ko-fi.com/aunetx", "link": "https://extensions.gnome.org/extension/3193/blur-my-shell/", "shell_version_map": {"38": {"version": "22", "sha256": "03vvxjdk7dfzx1crr5axp9qf4gg9lsh043zddcir8sj64m3mkz2r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eCIsCiAgIm5hbWUiOiAiQmx1ciBteSBTaGVsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "40": {"version": "28", "sha256": "1b1vz0ixns3ssbfkyijjvmdf29j1sqig58wdsmixfgsl48ql9d56", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eCIsCiAgIm5hbWUiOiAiQmx1ciBteSBTaGVsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}, "41": {"version": "28", "sha256": "1b1vz0ixns3ssbfkyijjvmdf29j1sqig58wdsmixfgsl48ql9d56", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eCIsCiAgIm5hbWUiOiAiQmx1ciBteSBTaGVsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}}}
+, {"uuid": "wireguard-indicator@gregos.me", "name": "Wireguard Indicator", "pname": "wireguard-indicator", "description": "Enable, disable, and view details of Wireguard.\nDeveloped by Gregos-Winus.", "link": "https://extensions.gnome.org/extension/3160/wireguard-indicator/", "shell_version_map": {"38": {"version": "4", "sha256": "1r12pw550v3h5f6zxl0psnsx031b5c7sj374f9h078lwqs85wb8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGdyZWdvcy5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "1r12pw550v3h5f6zxl0psnsx031b5c7sj374f9h078lwqs85wb8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGdyZWdvcy5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "1r12pw550v3h5f6zxl0psnsx031b5c7sj374f9h078lwqs85wb8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGdyZWdvcy5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}, "42": {"version": "4", "sha256": "1r12pw550v3h5f6zxl0psnsx031b5c7sj374f9h078lwqs85wb8w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSwgZGlzYWJsZSwgYW5kIHZpZXcgZGV0YWlscyBvZiBXaXJlZ3VhcmQuXG5EZXZlbG9wZWQgYnkgR3JlZ29zLVdpbnVzLiIsCiAgIm5hbWUiOiAiV2lyZWd1YXJkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGdyZWdvcy5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"uuid": "blur-my-shell@aunetx", "name": "Blur my Shell", "pname": "blur-my-shell", "description": "Adds a blur look to different parts of the GNOME Shell, including the top panel, dash and overview.\n\nYou can support my work by sponsoring me on:\n- github: https://github.com/sponsors/aunetx\n- ko-fi: https://ko-fi.com/aunetx", "link": "https://extensions.gnome.org/extension/3193/blur-my-shell/", "shell_version_map": {"38": {"version": "22", "sha256": "03vvxjdk7dfzx1crr5axp9qf4gg9lsh043zddcir8sj64m3mkz2r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eCIsCiAgIm5hbWUiOiAiQmx1ciBteSBTaGVsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogMjIKfQ=="}, "40": {"version": "28", "sha256": "1b1vz0ixns3ssbfkyijjvmdf29j1sqig58wdsmixfgsl48ql9d56", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eCIsCiAgIm5hbWUiOiAiQmx1ciBteSBTaGVsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}, "41": {"version": "28", "sha256": "1b1vz0ixns3ssbfkyijjvmdf29j1sqig58wdsmixfgsl48ql9d56", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eCIsCiAgIm5hbWUiOiAiQmx1ciBteSBTaGVsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}, "42": {"version": "28", "sha256": "1b1vz0ixns3ssbfkyijjvmdf29j1sqig58wdsmixfgsl48ql9d56", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBibHVyIGxvb2sgdG8gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBHTk9NRSBTaGVsbCwgaW5jbHVkaW5nIHRoZSB0b3AgcGFuZWwsIGRhc2ggYW5kIG92ZXJ2aWV3LlxuXG5Zb3UgY2FuIHN1cHBvcnQgbXkgd29yayBieSBzcG9uc29yaW5nIG1lIG9uOlxuLSBnaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9zcG9uc29ycy9hdW5ldHhcbi0ga28tZmk6IGh0dHBzOi8va28tZmkuY29tL2F1bmV0eCIsCiAgIm5hbWUiOiAiQmx1ciBteSBTaGVsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F1bmV0eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tYmx1ci1teS1zaGVsbCIsCiAgInV1aWQiOiAiYmx1ci1teS1zaGVsbEBhdW5ldHgiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}}}
 , {"uuid": "escape-overview@raelgc", "name": "ESCape Overview", "pname": "escape-overview", "description": "Close the Overview with a single ESC press when searchbox is empty.\n\nThe default gnome-shell behaviour is, during first ESC press, clean the searchbox, then second ESC press get back to Activities overview and then third ESC press will finally close the overview.", "link": "https://extensions.gnome.org/extension/3204/escape-overview/", "shell_version_map": {"38": {"version": "4", "sha256": "1yzba3d57s57wvviyr1gm1k5l15lnm7krhdcq6gv8gd5c80l3f02", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBPdmVydmlldyB3aXRoIGEgc2luZ2xlIEVTQyBwcmVzcyB3aGVuIHNlYXJjaGJveCBpcyBlbXB0eS5cblxuVGhlIGRlZmF1bHQgZ25vbWUtc2hlbGwgYmVoYXZpb3VyIGlzLCBkdXJpbmcgZmlyc3QgRVNDIHByZXNzLCBjbGVhbiB0aGUgc2VhcmNoYm94LCB0aGVuIHNlY29uZCBFU0MgcHJlc3MgZ2V0IGJhY2sgdG8gQWN0aXZpdGllcyBvdmVydmlldyBhbmQgdGhlbiB0aGlyZCBFU0MgcHJlc3Mgd2lsbCBmaW5hbGx5IGNsb3NlIHRoZSBvdmVydmlldy4iLAogICJuYW1lIjogIkVTQ2FwZSBPdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmFlbGdjL2VzY2FwZS1vdmVydmlldyIsCiAgInV1aWQiOiAiZXNjYXBlLW92ZXJ2aWV3QHJhZWxnYyIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "1yzba3d57s57wvviyr1gm1k5l15lnm7krhdcq6gv8gd5c80l3f02", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBPdmVydmlldyB3aXRoIGEgc2luZ2xlIEVTQyBwcmVzcyB3aGVuIHNlYXJjaGJveCBpcyBlbXB0eS5cblxuVGhlIGRlZmF1bHQgZ25vbWUtc2hlbGwgYmVoYXZpb3VyIGlzLCBkdXJpbmcgZmlyc3QgRVNDIHByZXNzLCBjbGVhbiB0aGUgc2VhcmNoYm94LCB0aGVuIHNlY29uZCBFU0MgcHJlc3MgZ2V0IGJhY2sgdG8gQWN0aXZpdGllcyBvdmVydmlldyBhbmQgdGhlbiB0aGlyZCBFU0MgcHJlc3Mgd2lsbCBmaW5hbGx5IGNsb3NlIHRoZSBvdmVydmlldy4iLAogICJuYW1lIjogIkVTQ2FwZSBPdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmFlbGdjL2VzY2FwZS1vdmVydmlldyIsCiAgInV1aWQiOiAiZXNjYXBlLW92ZXJ2aWV3QHJhZWxnYyIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "1yzba3d57s57wvviyr1gm1k5l15lnm7krhdcq6gv8gd5c80l3f02", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBPdmVydmlldyB3aXRoIGEgc2luZ2xlIEVTQyBwcmVzcyB3aGVuIHNlYXJjaGJveCBpcyBlbXB0eS5cblxuVGhlIGRlZmF1bHQgZ25vbWUtc2hlbGwgYmVoYXZpb3VyIGlzLCBkdXJpbmcgZmlyc3QgRVNDIHByZXNzLCBjbGVhbiB0aGUgc2VhcmNoYm94LCB0aGVuIHNlY29uZCBFU0MgcHJlc3MgZ2V0IGJhY2sgdG8gQWN0aXZpdGllcyBvdmVydmlldyBhbmQgdGhlbiB0aGlyZCBFU0MgcHJlc3Mgd2lsbCBmaW5hbGx5IGNsb3NlIHRoZSBvdmVydmlldy4iLAogICJuYW1lIjogIkVTQ2FwZSBPdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmFlbGdjL2VzY2FwZS1vdmVydmlldyIsCiAgInV1aWQiOiAiZXNjYXBlLW92ZXJ2aWV3QHJhZWxnYyIsCiAgInZlcnNpb24iOiA0Cn0="}}}
-, {"uuid": "compiz-windows-effect@hermes83.github.com", "name": "Compiz windows effect", "pname": "compiz-windows-effect", "description": "Compiz wobbly windows effect thanks to libanimation engine.\n\nThe use of the \"js engine\" option NOT requires any external library, orherwise you need to install the LIBANIMATION library patched for Gnome Shell: \nhttps://github.com/hermes83/libanimation\n\nNB:\nIn case of update error please restart Gnome Shell (on Xorg press ALT+F2 then write r and press enter, on Wayland end the session and log in again)\n\n-----------------------------------\n  Video\n-----------------------------------\nhttps://youtu.be/G8bAVIB9A7A", "link": "https://extensions.gnome.org/extension/3210/compiz-windows-effect/", "shell_version_map": {"38": {"version": "12", "sha256": "10jdlgjbk2xa1qkk7hq4g17lbjdp5bk3pxwrf5irfdjix05l1zpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGxpYmFuaW1hdGlvbiBlbmdpbmUuXG5cblRoZSB1c2Ugb2YgdGhlIFwianMgZW5naW5lXCIgb3B0aW9uIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeSwgb3JoZXJ3aXNlIHlvdSBuZWVkIHRvIGluc3RhbGwgdGhlIExJQkFOSU1BVElPTiBsaWJyYXJ5IHBhdGNoZWQgZm9yIEdub21lIFNoZWxsOiBcbmh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9saWJhbmltYXRpb25cblxuTkI6XG5JbiBjYXNlIG9mIHVwZGF0ZSBlcnJvciBwbGVhc2UgcmVzdGFydCBHbm9tZSBTaGVsbCAob24gWG9yZyBwcmVzcyBBTFQrRjIgdGhlbiB3cml0ZSByIGFuZCBwcmVzcyBlbnRlciwgb24gV2F5bGFuZCBlbmQgdGhlIHNlc3Npb24gYW5kIGxvZyBpbiBhZ2FpbilcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgVmlkZW9cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5odHRwczovL3lvdXR1LmJlL0c4YkFWSUI5QTdBIiwKICAibmFtZSI6ICJDb21waXogd2luZG93cyBlZmZlY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "12", "sha256": "10jdlgjbk2xa1qkk7hq4g17lbjdp5bk3pxwrf5irfdjix05l1zpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGxpYmFuaW1hdGlvbiBlbmdpbmUuXG5cblRoZSB1c2Ugb2YgdGhlIFwianMgZW5naW5lXCIgb3B0aW9uIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeSwgb3JoZXJ3aXNlIHlvdSBuZWVkIHRvIGluc3RhbGwgdGhlIExJQkFOSU1BVElPTiBsaWJyYXJ5IHBhdGNoZWQgZm9yIEdub21lIFNoZWxsOiBcbmh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9saWJhbmltYXRpb25cblxuTkI6XG5JbiBjYXNlIG9mIHVwZGF0ZSBlcnJvciBwbGVhc2UgcmVzdGFydCBHbm9tZSBTaGVsbCAob24gWG9yZyBwcmVzcyBBTFQrRjIgdGhlbiB3cml0ZSByIGFuZCBwcmVzcyBlbnRlciwgb24gV2F5bGFuZCBlbmQgdGhlIHNlc3Npb24gYW5kIGxvZyBpbiBhZ2FpbilcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgVmlkZW9cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5odHRwczovL3lvdXR1LmJlL0c4YkFWSUI5QTdBIiwKICAibmFtZSI6ICJDb21waXogd2luZG93cyBlZmZlY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEyCn0="}, "41": {"version": "12", "sha256": "10jdlgjbk2xa1qkk7hq4g17lbjdp5bk3pxwrf5irfdjix05l1zpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGxpYmFuaW1hdGlvbiBlbmdpbmUuXG5cblRoZSB1c2Ugb2YgdGhlIFwianMgZW5naW5lXCIgb3B0aW9uIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeSwgb3JoZXJ3aXNlIHlvdSBuZWVkIHRvIGluc3RhbGwgdGhlIExJQkFOSU1BVElPTiBsaWJyYXJ5IHBhdGNoZWQgZm9yIEdub21lIFNoZWxsOiBcbmh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9saWJhbmltYXRpb25cblxuTkI6XG5JbiBjYXNlIG9mIHVwZGF0ZSBlcnJvciBwbGVhc2UgcmVzdGFydCBHbm9tZSBTaGVsbCAob24gWG9yZyBwcmVzcyBBTFQrRjIgdGhlbiB3cml0ZSByIGFuZCBwcmVzcyBlbnRlciwgb24gV2F5bGFuZCBlbmQgdGhlIHNlc3Npb24gYW5kIGxvZyBpbiBhZ2FpbilcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgVmlkZW9cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5odHRwczovL3lvdXR1LmJlL0c4YkFWSUI5QTdBIiwKICAibmFtZSI6ICJDb21waXogd2luZG93cyBlZmZlY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEyCn0="}}}
+, {"uuid": "compiz-windows-effect@hermes83.github.com", "name": "Compiz windows effect", "pname": "compiz-windows-effect", "description": "Compiz wobbly windows effect thanks to libanimation engine.\n\nThe use of the \"js engine\" option NOT requires any external library, orherwise you need to install the LIBANIMATION library patched for Gnome Shell: \nhttps://github.com/hermes83/libanimation\n\nNB:\nIn case of update error please restart Gnome Shell (on Xorg press ALT+F2 then write r and press enter, on Wayland end the session and log in again)\n\n-----------------------------------\n  Video\n-----------------------------------\nhttps://youtu.be/G8bAVIB9A7A", "link": "https://extensions.gnome.org/extension/3210/compiz-windows-effect/", "shell_version_map": {"38": {"version": "12", "sha256": "10jdlgjbk2xa1qkk7hq4g17lbjdp5bk3pxwrf5irfdjix05l1zpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGxpYmFuaW1hdGlvbiBlbmdpbmUuXG5cblRoZSB1c2Ugb2YgdGhlIFwianMgZW5naW5lXCIgb3B0aW9uIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeSwgb3JoZXJ3aXNlIHlvdSBuZWVkIHRvIGluc3RhbGwgdGhlIExJQkFOSU1BVElPTiBsaWJyYXJ5IHBhdGNoZWQgZm9yIEdub21lIFNoZWxsOiBcbmh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9saWJhbmltYXRpb25cblxuTkI6XG5JbiBjYXNlIG9mIHVwZGF0ZSBlcnJvciBwbGVhc2UgcmVzdGFydCBHbm9tZSBTaGVsbCAob24gWG9yZyBwcmVzcyBBTFQrRjIgdGhlbiB3cml0ZSByIGFuZCBwcmVzcyBlbnRlciwgb24gV2F5bGFuZCBlbmQgdGhlIHNlc3Npb24gYW5kIGxvZyBpbiBhZ2FpbilcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgVmlkZW9cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5odHRwczovL3lvdXR1LmJlL0c4YkFWSUI5QTdBIiwKICAibmFtZSI6ICJDb21waXogd2luZG93cyBlZmZlY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEyCn0="}, "40": {"version": "12", "sha256": "10jdlgjbk2xa1qkk7hq4g17lbjdp5bk3pxwrf5irfdjix05l1zpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGxpYmFuaW1hdGlvbiBlbmdpbmUuXG5cblRoZSB1c2Ugb2YgdGhlIFwianMgZW5naW5lXCIgb3B0aW9uIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeSwgb3JoZXJ3aXNlIHlvdSBuZWVkIHRvIGluc3RhbGwgdGhlIExJQkFOSU1BVElPTiBsaWJyYXJ5IHBhdGNoZWQgZm9yIEdub21lIFNoZWxsOiBcbmh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9saWJhbmltYXRpb25cblxuTkI6XG5JbiBjYXNlIG9mIHVwZGF0ZSBlcnJvciBwbGVhc2UgcmVzdGFydCBHbm9tZSBTaGVsbCAob24gWG9yZyBwcmVzcyBBTFQrRjIgdGhlbiB3cml0ZSByIGFuZCBwcmVzcyBlbnRlciwgb24gV2F5bGFuZCBlbmQgdGhlIHNlc3Npb24gYW5kIGxvZyBpbiBhZ2FpbilcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgVmlkZW9cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5odHRwczovL3lvdXR1LmJlL0c4YkFWSUI5QTdBIiwKICAibmFtZSI6ICJDb21waXogd2luZG93cyBlZmZlY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEyCn0="}, "41": {"version": "12", "sha256": "10jdlgjbk2xa1qkk7hq4g17lbjdp5bk3pxwrf5irfdjix05l1zpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGxpYmFuaW1hdGlvbiBlbmdpbmUuXG5cblRoZSB1c2Ugb2YgdGhlIFwianMgZW5naW5lXCIgb3B0aW9uIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeSwgb3JoZXJ3aXNlIHlvdSBuZWVkIHRvIGluc3RhbGwgdGhlIExJQkFOSU1BVElPTiBsaWJyYXJ5IHBhdGNoZWQgZm9yIEdub21lIFNoZWxsOiBcbmh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9saWJhbmltYXRpb25cblxuTkI6XG5JbiBjYXNlIG9mIHVwZGF0ZSBlcnJvciBwbGVhc2UgcmVzdGFydCBHbm9tZSBTaGVsbCAob24gWG9yZyBwcmVzcyBBTFQrRjIgdGhlbiB3cml0ZSByIGFuZCBwcmVzcyBlbnRlciwgb24gV2F5bGFuZCBlbmQgdGhlIHNlc3Npb24gYW5kIGxvZyBpbiBhZ2FpbilcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgVmlkZW9cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5odHRwczovL3lvdXR1LmJlL0c4YkFWSUI5QTdBIiwKICAibmFtZSI6ICJDb21waXogd2luZG93cyBlZmZlY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEyCn0="}, "42": {"version": "12", "sha256": "10jdlgjbk2xa1qkk7hq4g17lbjdp5bk3pxwrf5irfdjix05l1zpp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbXBpeiB3b2JibHkgd2luZG93cyBlZmZlY3QgdGhhbmtzIHRvIGxpYmFuaW1hdGlvbiBlbmdpbmUuXG5cblRoZSB1c2Ugb2YgdGhlIFwianMgZW5naW5lXCIgb3B0aW9uIE5PVCByZXF1aXJlcyBhbnkgZXh0ZXJuYWwgbGlicmFyeSwgb3JoZXJ3aXNlIHlvdSBuZWVkIHRvIGluc3RhbGwgdGhlIExJQkFOSU1BVElPTiBsaWJyYXJ5IHBhdGNoZWQgZm9yIEdub21lIFNoZWxsOiBcbmh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9saWJhbmltYXRpb25cblxuTkI6XG5JbiBjYXNlIG9mIHVwZGF0ZSBlcnJvciBwbGVhc2UgcmVzdGFydCBHbm9tZSBTaGVsbCAob24gWG9yZyBwcmVzcyBBTFQrRjIgdGhlbiB3cml0ZSByIGFuZCBwcmVzcyBlbnRlciwgb24gV2F5bGFuZCBlbmQgdGhlIHNlc3Npb24gYW5kIGxvZyBpbiBhZ2FpbilcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgVmlkZW9cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5odHRwczovL3lvdXR1LmJlL0c4YkFWSUI5QTdBIiwKICAibmFtZSI6ICJDb21waXogd2luZG93cyBlZmZlY3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oZXJtZXM4My9jb21waXotd2luZG93cy1lZmZlY3QiLAogICJ1dWlkIjogImNvbXBpei13aW5kb3dzLWVmZmVjdEBoZXJtZXM4My5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEyCn0="}}}
 , {"uuid": "EndSessionTimer@pratap.fastmail.fm", "name": "End Session Timer", "pname": "end-session-timer", "description": "Set End Session Timer between 5 to 60 Seconds", "link": "https://extensions.gnome.org/extension/3216/end-session-timer/", "shell_version_map": {"38": {"version": "7", "sha256": "0c3wfx1iksb67fq3hm8cprhwb2f6xykkr4fv4y4drf78f15sh5gm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldCBFbmQgU2Vzc2lvbiBUaW1lciBiZXR3ZWVuIDUgdG8gNjAgU2Vjb25kcyIsCiAgIm5hbWUiOiAiRW5kIFNlc3Npb24gVGltZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiRW5kU2Vzc2lvblRpbWVyQHByYXRhcC5mYXN0bWFpbC5mbSIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "8", "sha256": "0mm9g2ldl2lw52plx3hpbaniqlci1c10q9blkbdpwcmyv53z1dq4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldCBFbmQgU2Vzc2lvbiBUaW1lciBiZXR3ZWVuIDUgdG8gNjAgU2Vjb25kcyIsCiAgIm5hbWUiOiAiRW5kIFNlc3Npb24gVGltZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIkVuZFNlc3Npb25UaW1lckBwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogOAp9"}}}
 , {"uuid": "block-caribou-36@lxylxy123456.ercli.dev", "name": "Block Caribou 36", "pname": "block-caribou-36", "description": "Blocks caribou (the on screen keyboard) from popping up when you use a touchscreen. Even if it's disabled in the accessibility services menu. Continuation of keringar's work. Tested on GNOME Shell version 3.36 - 41 on Fedora 32 - 35. For a higher version see https://github.com/lxylxy123456/cariboublocker#installing-on-high-gnome-shell-version .", "link": "https://extensions.gnome.org/extension/3222/block-caribou-36/", "shell_version_map": {"40": {"version": "4", "sha256": "1bnkwdsmsjr7x9cx31lfzs3dnfqzmdy8cq1zc26hgpvchd02ac60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsb2NrcyBjYXJpYm91ICh0aGUgb24gc2NyZWVuIGtleWJvYXJkKSBmcm9tIHBvcHBpbmcgdXAgd2hlbiB5b3UgdXNlIGEgdG91Y2hzY3JlZW4uIEV2ZW4gaWYgaXQncyBkaXNhYmxlZCBpbiB0aGUgYWNjZXNzaWJpbGl0eSBzZXJ2aWNlcyBtZW51LiBDb250aW51YXRpb24gb2Yga2VyaW5nYXIncyB3b3JrLiBUZXN0ZWQgb24gR05PTUUgU2hlbGwgdmVyc2lvbiAzLjM2IC0gNDEgb24gRmVkb3JhIDMyIC0gMzUuIEZvciBhIGhpZ2hlciB2ZXJzaW9uIHNlZSBodHRwczovL2dpdGh1Yi5jb20vbHh5bHh5MTIzNDU2L2Nhcmlib3VibG9ja2VyI2luc3RhbGxpbmctb24taGlnaC1nbm9tZS1zaGVsbC12ZXJzaW9uIC4iLAogICJuYW1lIjogIkJsb2NrIENhcmlib3UgMzYiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2x4eWx4eTEyMzQ1Ni9jYXJpYm91YmxvY2tlciIsCiAgInV1aWQiOiAiYmxvY2stY2FyaWJvdS0zNkBseHlseHkxMjM0NTYuZXJjbGkuZGV2IiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "1bnkwdsmsjr7x9cx31lfzs3dnfqzmdy8cq1zc26hgpvchd02ac60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsb2NrcyBjYXJpYm91ICh0aGUgb24gc2NyZWVuIGtleWJvYXJkKSBmcm9tIHBvcHBpbmcgdXAgd2hlbiB5b3UgdXNlIGEgdG91Y2hzY3JlZW4uIEV2ZW4gaWYgaXQncyBkaXNhYmxlZCBpbiB0aGUgYWNjZXNzaWJpbGl0eSBzZXJ2aWNlcyBtZW51LiBDb250aW51YXRpb24gb2Yga2VyaW5nYXIncyB3b3JrLiBUZXN0ZWQgb24gR05PTUUgU2hlbGwgdmVyc2lvbiAzLjM2IC0gNDEgb24gRmVkb3JhIDMyIC0gMzUuIEZvciBhIGhpZ2hlciB2ZXJzaW9uIHNlZSBodHRwczovL2dpdGh1Yi5jb20vbHh5bHh5MTIzNDU2L2Nhcmlib3VibG9ja2VyI2luc3RhbGxpbmctb24taGlnaC1nbm9tZS1zaGVsbC12ZXJzaW9uIC4iLAogICJuYW1lIjogIkJsb2NrIENhcmlib3UgMzYiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2x4eWx4eTEyMzQ1Ni9jYXJpYm91YmxvY2tlciIsCiAgInV1aWQiOiAiYmxvY2stY2FyaWJvdS0zNkBseHlseHkxMjM0NTYuZXJjbGkuZGV2IiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
-, {"uuid": "unmaximize_double_click@gonza.gmail.com", "name": "Unmaximize Double Click Panel", "pname": "unmaximize-double-click-panel", "description": "Unmaximize the current window on double click on the top panel. You can also maximize horizontally and vertically with middle and right click.", "link": "https://extensions.gnome.org/extension/3228/unmaximize-double-click-panel/", "shell_version_map": {"38": {"version": "4", "sha256": "1qb3qwjndl08g7r7lgdzszcxlqsx5rb749y8hg1qdzyp48nifj8q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVubWF4aW1pemUgdGhlIGN1cnJlbnQgd2luZG93IG9uIGRvdWJsZSBjbGljayBvbiB0aGUgdG9wIHBhbmVsLiBZb3UgY2FuIGFsc28gbWF4aW1pemUgaG9yaXpvbnRhbGx5IGFuZCB2ZXJ0aWNhbGx5IHdpdGggbWlkZGxlIGFuZCByaWdodCBjbGljay4iLAogICJuYW1lIjogIlVubWF4aW1pemUgRG91YmxlIENsaWNrIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nb256YWFyY3IvdW5tYXhpbWl6ZS1nbm9tZS1leHQiLAogICJ1dWlkIjogInVubWF4aW1pemVfZG91YmxlX2NsaWNrQGdvbnphLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "1qb3qwjndl08g7r7lgdzszcxlqsx5rb749y8hg1qdzyp48nifj8q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVubWF4aW1pemUgdGhlIGN1cnJlbnQgd2luZG93IG9uIGRvdWJsZSBjbGljayBvbiB0aGUgdG9wIHBhbmVsLiBZb3UgY2FuIGFsc28gbWF4aW1pemUgaG9yaXpvbnRhbGx5IGFuZCB2ZXJ0aWNhbGx5IHdpdGggbWlkZGxlIGFuZCByaWdodCBjbGljay4iLAogICJuYW1lIjogIlVubWF4aW1pemUgRG91YmxlIENsaWNrIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nb256YWFyY3IvdW5tYXhpbWl6ZS1nbm9tZS1leHQiLAogICJ1dWlkIjogInVubWF4aW1pemVfZG91YmxlX2NsaWNrQGdvbnphLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "1qb3qwjndl08g7r7lgdzszcxlqsx5rb749y8hg1qdzyp48nifj8q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVubWF4aW1pemUgdGhlIGN1cnJlbnQgd2luZG93IG9uIGRvdWJsZSBjbGljayBvbiB0aGUgdG9wIHBhbmVsLiBZb3UgY2FuIGFsc28gbWF4aW1pemUgaG9yaXpvbnRhbGx5IGFuZCB2ZXJ0aWNhbGx5IHdpdGggbWlkZGxlIGFuZCByaWdodCBjbGljay4iLAogICJuYW1lIjogIlVubWF4aW1pemUgRG91YmxlIENsaWNrIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nb256YWFyY3IvdW5tYXhpbWl6ZS1nbm9tZS1leHQiLAogICJ1dWlkIjogInVubWF4aW1pemVfZG91YmxlX2NsaWNrQGdvbnphLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
-, {"uuid": "unity-like-appswitcher@gonza.com", "name": "Unity-like App Switcher", "pname": "unity-like-app-switcher", "description": "A bigger and more colourfull AppSwitcher", "link": "https://extensions.gnome.org/extension/3231/unity-like-app-switcher/", "shell_version_map": {"38": {"version": "7", "sha256": "18f33cf088ali1hqj1a1knr4ygkrwyp6gyhp2lf0vd7c2wlp1z8f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYmlnZ2VyIGFuZCBtb3JlIGNvbG91cmZ1bGwgQXBwU3dpdGNoZXIiLAogICJuYW1lIjogIlVuaXR5LWxpa2UgQXBwIFN3aXRjaGVyIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJnb256YSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0eS13aW5kb3ctc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dvbnphYXJjci91bml0eS1saWtlLXN3aXRjaGVyLWdub21lLWV4dCIsCiAgInV1aWQiOiAidW5pdHktbGlrZS1hcHBzd2l0Y2hlckBnb256YS5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "7", "sha256": "18f33cf088ali1hqj1a1knr4ygkrwyp6gyhp2lf0vd7c2wlp1z8f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYmlnZ2VyIGFuZCBtb3JlIGNvbG91cmZ1bGwgQXBwU3dpdGNoZXIiLAogICJuYW1lIjogIlVuaXR5LWxpa2UgQXBwIFN3aXRjaGVyIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJnb256YSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0eS13aW5kb3ctc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dvbnphYXJjci91bml0eS1saWtlLXN3aXRjaGVyLWdub21lLWV4dCIsCiAgInV1aWQiOiAidW5pdHktbGlrZS1hcHBzd2l0Y2hlckBnb256YS5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "41": {"version": "7", "sha256": "18f33cf088ali1hqj1a1knr4ygkrwyp6gyhp2lf0vd7c2wlp1z8f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYmlnZ2VyIGFuZCBtb3JlIGNvbG91cmZ1bGwgQXBwU3dpdGNoZXIiLAogICJuYW1lIjogIlVuaXR5LWxpa2UgQXBwIFN3aXRjaGVyIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJnb256YSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0eS13aW5kb3ctc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dvbnphYXJjci91bml0eS1saWtlLXN3aXRjaGVyLWdub21lLWV4dCIsCiAgInV1aWQiOiAidW5pdHktbGlrZS1hcHBzd2l0Y2hlckBnb256YS5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
+, {"uuid": "unmaximize_double_click@gonza.gmail.com", "name": "Unmaximize Double Click Panel", "pname": "unmaximize-double-click-panel", "description": "Unmaximize the current window on double click on the top panel. You can also maximize horizontally and vertically with middle and right click.", "link": "https://extensions.gnome.org/extension/3228/unmaximize-double-click-panel/", "shell_version_map": {"38": {"version": "5", "sha256": "1frrdzf5c5pn259ibz3fncgh8jgjjdkhy4ymb08h0klkfncgjgkh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVubWF4aW1pemUgdGhlIGN1cnJlbnQgd2luZG93IG9uIGRvdWJsZSBjbGljayBvbiB0aGUgdG9wIHBhbmVsLiBZb3UgY2FuIGFsc28gbWF4aW1pemUgaG9yaXpvbnRhbGx5IGFuZCB2ZXJ0aWNhbGx5IHdpdGggbWlkZGxlIGFuZCByaWdodCBjbGljay4iLAogICJuYW1lIjogIlVubWF4aW1pemUgRG91YmxlIENsaWNrIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29uemFhcmNyL3VubWF4aW1pemUtZ25vbWUtZXh0IiwKICAidXVpZCI6ICJ1bm1heGltaXplX2RvdWJsZV9jbGlja0Bnb256YS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "1frrdzf5c5pn259ibz3fncgh8jgjjdkhy4ymb08h0klkfncgjgkh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVubWF4aW1pemUgdGhlIGN1cnJlbnQgd2luZG93IG9uIGRvdWJsZSBjbGljayBvbiB0aGUgdG9wIHBhbmVsLiBZb3UgY2FuIGFsc28gbWF4aW1pemUgaG9yaXpvbnRhbGx5IGFuZCB2ZXJ0aWNhbGx5IHdpdGggbWlkZGxlIGFuZCByaWdodCBjbGljay4iLAogICJuYW1lIjogIlVubWF4aW1pemUgRG91YmxlIENsaWNrIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29uemFhcmNyL3VubWF4aW1pemUtZ25vbWUtZXh0IiwKICAidXVpZCI6ICJ1bm1heGltaXplX2RvdWJsZV9jbGlja0Bnb256YS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "41": {"version": "5", "sha256": "1frrdzf5c5pn259ibz3fncgh8jgjjdkhy4ymb08h0klkfncgjgkh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVubWF4aW1pemUgdGhlIGN1cnJlbnQgd2luZG93IG9uIGRvdWJsZSBjbGljayBvbiB0aGUgdG9wIHBhbmVsLiBZb3UgY2FuIGFsc28gbWF4aW1pemUgaG9yaXpvbnRhbGx5IGFuZCB2ZXJ0aWNhbGx5IHdpdGggbWlkZGxlIGFuZCByaWdodCBjbGljay4iLAogICJuYW1lIjogIlVubWF4aW1pemUgRG91YmxlIENsaWNrIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29uemFhcmNyL3VubWF4aW1pemUtZ25vbWUtZXh0IiwKICAidXVpZCI6ICJ1bm1heGltaXplX2RvdWJsZV9jbGlja0Bnb256YS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "42": {"version": "5", "sha256": "1frrdzf5c5pn259ibz3fncgh8jgjjdkhy4ymb08h0klkfncgjgkh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVubWF4aW1pemUgdGhlIGN1cnJlbnQgd2luZG93IG9uIGRvdWJsZSBjbGljayBvbiB0aGUgdG9wIHBhbmVsLiBZb3UgY2FuIGFsc28gbWF4aW1pemUgaG9yaXpvbnRhbGx5IGFuZCB2ZXJ0aWNhbGx5IHdpdGggbWlkZGxlIGFuZCByaWdodCBjbGljay4iLAogICJuYW1lIjogIlVubWF4aW1pemUgRG91YmxlIENsaWNrIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29uemFhcmNyL3VubWF4aW1pemUtZ25vbWUtZXh0IiwKICAidXVpZCI6ICJ1bm1heGltaXplX2RvdWJsZV9jbGlja0Bnb256YS5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}}}
+, {"uuid": "unity-like-appswitcher@gonza.com", "name": "Unity-like App Switcher", "pname": "unity-like-app-switcher", "description": "A bigger and more colourfull AppSwitcher", "link": "https://extensions.gnome.org/extension/3231/unity-like-app-switcher/", "shell_version_map": {"38": {"version": "11", "sha256": "17bgnl10ycb8mrw0g2f8vi3fkbjh8n9f52w243mkdi4kcwjqpgwa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYmlnZ2VyIGFuZCBtb3JlIGNvbG91cmZ1bGwgQXBwU3dpdGNoZXIiLAogICJuYW1lIjogIlVuaXR5LWxpa2UgQXBwIFN3aXRjaGVyIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJnb256YSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0eS13aW5kb3ctc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nb256YWFyY3IvdW5pdHktbGlrZS1zd2l0Y2hlci1nbm9tZS1leHQiLAogICJ1dWlkIjogInVuaXR5LWxpa2UtYXBwc3dpdGNoZXJAZ29uemEuY29tIiwKICAidmVyc2lvbiI6IDExCn0="}, "40": {"version": "11", "sha256": "17bgnl10ycb8mrw0g2f8vi3fkbjh8n9f52w243mkdi4kcwjqpgwa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYmlnZ2VyIGFuZCBtb3JlIGNvbG91cmZ1bGwgQXBwU3dpdGNoZXIiLAogICJuYW1lIjogIlVuaXR5LWxpa2UgQXBwIFN3aXRjaGVyIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJnb256YSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0eS13aW5kb3ctc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nb256YWFyY3IvdW5pdHktbGlrZS1zd2l0Y2hlci1nbm9tZS1leHQiLAogICJ1dWlkIjogInVuaXR5LWxpa2UtYXBwc3dpdGNoZXJAZ29uemEuY29tIiwKICAidmVyc2lvbiI6IDExCn0="}, "41": {"version": "11", "sha256": "17bgnl10ycb8mrw0g2f8vi3fkbjh8n9f52w243mkdi4kcwjqpgwa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYmlnZ2VyIGFuZCBtb3JlIGNvbG91cmZ1bGwgQXBwU3dpdGNoZXIiLAogICJuYW1lIjogIlVuaXR5LWxpa2UgQXBwIFN3aXRjaGVyIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJnb256YSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0eS13aW5kb3ctc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nb256YWFyY3IvdW5pdHktbGlrZS1zd2l0Y2hlci1nbm9tZS1leHQiLAogICJ1dWlkIjogInVuaXR5LWxpa2UtYXBwc3dpdGNoZXJAZ29uemEuY29tIiwKICAidmVyc2lvbiI6IDExCn0="}, "42": {"version": "11", "sha256": "17bgnl10ycb8mrw0g2f8vi3fkbjh8n9f52w243mkdi4kcwjqpgwa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgYmlnZ2VyIGFuZCBtb3JlIGNvbG91cmZ1bGwgQXBwU3dpdGNoZXIiLAogICJuYW1lIjogIlVuaXR5LWxpa2UgQXBwIFN3aXRjaGVyIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJnb256YSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy51bml0eS13aW5kb3ctc3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nb256YWFyY3IvdW5pdHktbGlrZS1zd2l0Y2hlci1nbm9tZS1leHQiLAogICJ1dWlkIjogInVuaXR5LWxpa2UtYXBwc3dpdGNoZXJAZ29uemEuY29tIiwKICAidmVyc2lvbiI6IDExCn0="}}}
 , {"uuid": "add-to-desktop@tommimon.github.com", "name": "Add to Desktop", "pname": "add-to-desktop", "description": "An easy way to create desktop app shortcut in gnome", "link": "https://extensions.gnome.org/extension/3240/add-to-desktop/", "shell_version_map": {"38": {"version": "5", "sha256": "0kchr5daz3s4q18s6aphfyb50wglmlgmjnh3i9ka6d219r0srh64", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGVhc3kgd2F5IHRvIGNyZWF0ZSBkZXNrdG9wIGFwcCBzaG9ydGN1dCBpbiBnbm9tZSIsCiAgIm5hbWUiOiAiQWRkIHRvIERlc2t0b3AiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLmJldGEiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vVG9tbWltb24vYWRkLXRvLWRlc2t0b3AiLAogICJ1dWlkIjogImFkZC10by1kZXNrdG9wQHRvbW1pbW9uLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "0kchr5daz3s4q18s6aphfyb50wglmlgmjnh3i9ka6d219r0srh64", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGVhc3kgd2F5IHRvIGNyZWF0ZSBkZXNrdG9wIGFwcCBzaG9ydGN1dCBpbiBnbm9tZSIsCiAgIm5hbWUiOiAiQWRkIHRvIERlc2t0b3AiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwLmJldGEiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vVG9tbWltb24vYWRkLXRvLWRlc2t0b3AiLAogICJ1dWlkIjogImFkZC10by1kZXNrdG9wQHRvbW1pbW9uLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "41": {"version": "6", "sha256": "04vk49629c9fhvix04h8r3mbnqyncvyzdkbm7bh3wyjhghnczbps", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuIGVhc3kgd2F5IHRvIGNyZWF0ZSBkZXNrdG9wIGFwcCBzaG9ydGN1dCBpbiBnbm9tZSIsCiAgIm5hbWUiOiAiQWRkIHRvIERlc2t0b3AiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vVG9tbWltb24vYWRkLXRvLWRlc2t0b3AiLAogICJ1dWlkIjogImFkZC10by1kZXNrdG9wQHRvbW1pbW9uLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "wifi-power-management-toggle@rthery", "name": "Wi-Fi Power Management Toggle", "pname": "wi-fi-power-management-toggle", "description": "Add a toggle to limit Wi-Fi power consumption (when supported by the card) in Gnome System Menu.", "link": "https://extensions.gnome.org/extension/3258/wi-fi-power-management-toggle/", "shell_version_map": {"38": {"version": "2", "sha256": "009r1pswkmisfw0zghk2cawx4qw6av5yldbnw7fcla13qpyj90zh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHRvZ2dsZSB0byBsaW1pdCBXaS1GaSBwb3dlciBjb25zdW1wdGlvbiAod2hlbiBzdXBwb3J0ZWQgYnkgdGhlIGNhcmQpIGluIEdub21lIFN5c3RlbSBNZW51LiIsCiAgIm5hbWUiOiAiV2ktRmkgUG93ZXIgTWFuYWdlbWVudCBUb2dnbGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3J0aGVyeS9nbm9tZS1zaGVsbC1leHRlbnNpb24td2lmaS1wb3dlci1tYW5hZ2VtZW50LXRvZ2dsZSIsCiAgInV1aWQiOiAid2lmaS1wb3dlci1tYW5hZ2VtZW50LXRvZ2dsZUBydGhlcnkiLAogICJ2ZXJzaW9uIjogMgp9"}, "40": {"version": "2", "sha256": "009r1pswkmisfw0zghk2cawx4qw6av5yldbnw7fcla13qpyj90zh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHRvZ2dsZSB0byBsaW1pdCBXaS1GaSBwb3dlciBjb25zdW1wdGlvbiAod2hlbiBzdXBwb3J0ZWQgYnkgdGhlIGNhcmQpIGluIEdub21lIFN5c3RlbSBNZW51LiIsCiAgIm5hbWUiOiAiV2ktRmkgUG93ZXIgTWFuYWdlbWVudCBUb2dnbGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3J0aGVyeS9nbm9tZS1zaGVsbC1leHRlbnNpb24td2lmaS1wb3dlci1tYW5hZ2VtZW50LXRvZ2dsZSIsCiAgInV1aWQiOiAid2lmaS1wb3dlci1tYW5hZ2VtZW50LXRvZ2dsZUBydGhlcnkiLAogICJ2ZXJzaW9uIjogMgp9"}, "41": {"version": "2", "sha256": "009r1pswkmisfw0zghk2cawx4qw6av5yldbnw7fcla13qpyj90zh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHRvZ2dsZSB0byBsaW1pdCBXaS1GaSBwb3dlciBjb25zdW1wdGlvbiAod2hlbiBzdXBwb3J0ZWQgYnkgdGhlIGNhcmQpIGluIEdub21lIFN5c3RlbSBNZW51LiIsCiAgIm5hbWUiOiAiV2ktRmkgUG93ZXIgTWFuYWdlbWVudCBUb2dnbGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3J0aGVyeS9nbm9tZS1zaGVsbC1leHRlbnNpb24td2lmaS1wb3dlci1tYW5hZ2VtZW50LXRvZ2dsZSIsCiAgInV1aWQiOiAid2lmaS1wb3dlci1tYW5hZ2VtZW50LXRvZ2dsZUBydGhlcnkiLAogICJ2ZXJzaW9uIjogMgp9"}}}
 , {"uuid": "touchpad_window_switcher@gonza.com", "name": "Touchpad Window Switcher", "pname": "tocuhpad-window-switcher", "description": "3 fingers window switcher. To make it work on Xorg check the service on github.\n\nUp - down: toggle between overview and show desktop (Needs Super+D shorcut to be set on Xorg. Set it with `gsettings set org.gnome.desktop.wm.keybindings show-desktop '<Super>d'`).\n\nYou can also change windows by going to the overview (up) and moving to the left and right, and choosing the window with down. The overview is modified so it’s shown in chronological order.\n", "link": "https://extensions.gnome.org/extension/3294/tocuhpad-window-switcher/", "shell_version_map": {"38": {"version": "8", "sha256": "1x016p30z0pci3qlhpmfqrsgy0vwcfxqladny66ppbb32qisbkac", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIjMgZmluZ2VycyB3aW5kb3cgc3dpdGNoZXIuIFRvIG1ha2UgaXQgd29yayBvbiBYb3JnIGNoZWNrIHRoZSBzZXJ2aWNlIG9uIGdpdGh1Yi5cblxuVXAgLSBkb3duOiB0b2dnbGUgYmV0d2VlbiBvdmVydmlldyBhbmQgc2hvdyBkZXNrdG9wIChOZWVkcyBTdXBlcitEIHNob3JjdXQgdG8gYmUgc2V0IG9uIFhvcmcuIFNldCBpdCB3aXRoIGBnc2V0dGluZ3Mgc2V0IG9yZy5nbm9tZS5kZXNrdG9wLndtLmtleWJpbmRpbmdzIHNob3ctZGVza3RvcCAnPFN1cGVyPmQnYCkuXG5cbllvdSBjYW4gYWxzbyBjaGFuZ2Ugd2luZG93cyBieSBnb2luZyB0byB0aGUgb3ZlcnZpZXcgKHVwKSBhbmQgbW92aW5nIHRvIHRoZSBsZWZ0IGFuZCByaWdodCwgYW5kIGNob29zaW5nIHRoZSB3aW5kb3cgd2l0aCBkb3duLiBUaGUgb3ZlcnZpZXcgaXMgbW9kaWZpZWQgc28gaXRcdTIwMTlzIHNob3duIGluIGNocm9ub2xvZ2ljYWwgb3JkZXIuXG4iLAogICJuYW1lIjogIlRvdWNocGFkIFdpbmRvdyBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dvbnphYXJjci90b3VjaHBhZC13aW5kb3ctc3dpdGNoZXItZ25vbWUtZXh0IiwKICAidXVpZCI6ICJ0b3VjaHBhZF93aW5kb3dfc3dpdGNoZXJAZ29uemEuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
@@ -334,26 +334,26 @@
 , {"uuid": "material-shell@papyelgringo", "name": "Material Shell", "pname": "material-shell", "description": "A modern desktop interface for Linux - packaged as an extension for GNOME Shell. Improve your user experience and get rid of the anarchy of traditional desktop workflows. Designed to simplify navigation and reduce the need to manipulate windows in order to improve productivity. It's meant to be 100% predictable and bring the benefits of tools coveted by professionals to everyone.", "link": "https://extensions.gnome.org/extension/3357/material-shell/", "shell_version_map": {"38": {"version": "12", "sha256": "1rjybqlgbjmflg21cm7js2gjzvdhw14lpzncpzwf18rh4mp2adnr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJpbmRpbmdzIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1hdGVyaWFsc2hlbGwuYmluZGluZ3MiLAogICJkZXNjcmlwdGlvbiI6ICJBIG1vZGVybiBkZXNrdG9wIGludGVyZmFjZSBmb3IgTGludXggLSBwYWNrYWdlZCBhcyBhbiBleHRlbnNpb24gZm9yIEdOT01FIFNoZWxsLiBJbXByb3ZlIHlvdXIgdXNlciBleHBlcmllbmNlIGFuZCBnZXQgcmlkIG9mIHRoZSBhbmFyY2h5IG9mIHRyYWRpdGlvbmFsIGRlc2t0b3Agd29ya2Zsb3dzLiBEZXNpZ25lZCB0byBzaW1wbGlmeSBuYXZpZ2F0aW9uIGFuZCByZWR1Y2UgdGhlIG5lZWQgdG8gbWFuaXB1bGF0ZSB3aW5kb3dzIGluIG9yZGVyIHRvIGltcHJvdmUgcHJvZHVjdGl2aXR5LiBJdCdzIG1lYW50IHRvIGJlIDEwMCUgcHJlZGljdGFibGUgYW5kIGJyaW5nIHRoZSBiZW5lZml0cyBvZiB0b29scyBjb3ZldGVkIGJ5IHByb2Zlc3Npb25hbHMgdG8gZXZlcnlvbmUuIiwKICAibGF5b3V0cyI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tYXRlcmlhbHNoZWxsLmxheW91dHMiLAogICJuYW1lIjogIk1hdGVyaWFsIFNoZWxsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInRoZW1lIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1hdGVyaWFsc2hlbGwudGhlbWUiLAogICJ0d2Vha3MiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubWF0ZXJpYWxzaGVsbC50d2Vha3MiLAogICJ1cmwiOiAiaHR0cHM6Ly9tYXRlcmlhbC1zaGVsbC5jb20iLAogICJ1dWlkIjogIm1hdGVyaWFsLXNoZWxsQHBhcHllbGdyaW5nbyIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "18", "sha256": "1qnldrad5kkm2km4qdkwagp8m2x30bq56jzaba01h6j7mgw90ai6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJpbmRpbmdzIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1hdGVyaWFsc2hlbGwuYmluZGluZ3MiLAogICJkZXNjcmlwdGlvbiI6ICJBIG1vZGVybiBkZXNrdG9wIGludGVyZmFjZSBmb3IgTGludXggLSBwYWNrYWdlZCBhcyBhbiBleHRlbnNpb24gZm9yIEdOT01FIFNoZWxsLiBJbXByb3ZlIHlvdXIgdXNlciBleHBlcmllbmNlIGFuZCBnZXQgcmlkIG9mIHRoZSBhbmFyY2h5IG9mIHRyYWRpdGlvbmFsIGRlc2t0b3Agd29ya2Zsb3dzLiBEZXNpZ25lZCB0byBzaW1wbGlmeSBuYXZpZ2F0aW9uIGFuZCByZWR1Y2UgdGhlIG5lZWQgdG8gbWFuaXB1bGF0ZSB3aW5kb3dzIGluIG9yZGVyIHRvIGltcHJvdmUgcHJvZHVjdGl2aXR5LiBJdCdzIG1lYW50IHRvIGJlIDEwMCUgcHJlZGljdGFibGUgYW5kIGJyaW5nIHRoZSBiZW5lZml0cyBvZiB0b29scyBjb3ZldGVkIGJ5IHByb2Zlc3Npb25hbHMgdG8gZXZlcnlvbmUuIiwKICAibGF5b3V0cyI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tYXRlcmlhbHNoZWxsLmxheW91dHMiLAogICJuYW1lIjogIk1hdGVyaWFsIFNoZWxsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidGhlbWUiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubWF0ZXJpYWxzaGVsbC50aGVtZSIsCiAgInR3ZWFrcyI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tYXRlcmlhbHNoZWxsLnR3ZWFrcyIsCiAgInVybCI6ICJodHRwczovL21hdGVyaWFsLXNoZWxsLmNvbSIsCiAgInV1aWQiOiAibWF0ZXJpYWwtc2hlbGxAcGFweWVsZ3JpbmdvIiwKICAidmVyc2lvbiI6IDE4Cn0="}, "41": {"version": "18", "sha256": "1qnldrad5kkm2km4qdkwagp8m2x30bq56jzaba01h6j7mgw90ai6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJpbmRpbmdzIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm1hdGVyaWFsc2hlbGwuYmluZGluZ3MiLAogICJkZXNjcmlwdGlvbiI6ICJBIG1vZGVybiBkZXNrdG9wIGludGVyZmFjZSBmb3IgTGludXggLSBwYWNrYWdlZCBhcyBhbiBleHRlbnNpb24gZm9yIEdOT01FIFNoZWxsLiBJbXByb3ZlIHlvdXIgdXNlciBleHBlcmllbmNlIGFuZCBnZXQgcmlkIG9mIHRoZSBhbmFyY2h5IG9mIHRyYWRpdGlvbmFsIGRlc2t0b3Agd29ya2Zsb3dzLiBEZXNpZ25lZCB0byBzaW1wbGlmeSBuYXZpZ2F0aW9uIGFuZCByZWR1Y2UgdGhlIG5lZWQgdG8gbWFuaXB1bGF0ZSB3aW5kb3dzIGluIG9yZGVyIHRvIGltcHJvdmUgcHJvZHVjdGl2aXR5LiBJdCdzIG1lYW50IHRvIGJlIDEwMCUgcHJlZGljdGFibGUgYW5kIGJyaW5nIHRoZSBiZW5lZml0cyBvZiB0b29scyBjb3ZldGVkIGJ5IHByb2Zlc3Npb25hbHMgdG8gZXZlcnlvbmUuIiwKICAibGF5b3V0cyI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tYXRlcmlhbHNoZWxsLmxheW91dHMiLAogICJuYW1lIjogIk1hdGVyaWFsIFNoZWxsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidGhlbWUiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubWF0ZXJpYWxzaGVsbC50aGVtZSIsCiAgInR3ZWFrcyI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5tYXRlcmlhbHNoZWxsLnR3ZWFrcyIsCiAgInVybCI6ICJodHRwczovL21hdGVyaWFsLXNoZWxsLmNvbSIsCiAgInV1aWQiOiAibWF0ZXJpYWwtc2hlbGxAcGFweWVsZ3JpbmdvIiwKICAidmVyc2lvbiI6IDE4Cn0="}}}
 , {"uuid": "proxyprofiles@massamany.github.com", "name": "Proxy Profiles", "pname": "proxy-profiles", "description": "Swich easily between several proxy profiles.", "link": "https://extensions.gnome.org/extension/3379/proxy-profiles/", "shell_version_map": {"38": {"version": "5", "sha256": "1b2mabrvpkadxc6v5fczamh2hqh7va2990k10awxy18c0vm3p5kw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aWNoIGVhc2lseSBiZXR3ZWVuIHNldmVyYWwgcHJveHkgcHJvZmlsZXMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAicHJveHlwcm9maWxlcyIsCiAgIm5hbWUiOiAiUHJveHkgUHJvZmlsZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWFzc2FtYW55L3Byb3h5cHJvZmlsZXMiLAogICJ1dWlkIjogInByb3h5cHJvZmlsZXNAbWFzc2FtYW55LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "1b2mabrvpkadxc6v5fczamh2hqh7va2990k10awxy18c0vm3p5kw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aWNoIGVhc2lseSBiZXR3ZWVuIHNldmVyYWwgcHJveHkgcHJvZmlsZXMuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAicHJveHlwcm9maWxlcyIsCiAgIm5hbWUiOiAiUHJveHkgUHJvZmlsZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWFzc2FtYW55L3Byb3h5cHJvZmlsZXMiLAogICJ1dWlkIjogInByb3h5cHJvZmlsZXNAbWFzc2FtYW55LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "galaxy-buds-battery@pemmoura", "name": "Galaxy Buds Battery", "pname": "galaxy-buds-battery", "description": "Galaxy Buds battery indicator.", "link": "https://extensions.gnome.org/extension/3383/galaxy-buds-battery/", "shell_version_map": {"38": {"version": "6", "sha256": "1f25mc5idqaw3v9b2xffiij9y0pcrl8msz85p8cz2x5l2r3sc7wm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdhbGF4eSBCdWRzIGJhdHRlcnkgaW5kaWNhdG9yLiIsCiAgIm5hbWUiOiAiR2FsYXh5IEJ1ZHMgQmF0dGVyeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3BlbW1vdXJhL2dhbGF4eWJ1ZHMtZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJnYWxheHktYnVkcy1iYXR0ZXJ5QHBlbW1vdXJhIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
-, {"uuid": "color-picker@tuberry", "name": "Color Picker", "pname": "color-picker", "description": "Simple color picker for gnome shell\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/3396/color-picker/", "shell_version_map": {"38": {"version": "20", "sha256": "1ss4r8dpa7smxbyz41rw3wl1gy20bvy89xdvwfz6zfhv3db5vl86", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBjb2xvciBwaWNrZXIgZm9yIGdub21lIHNoZWxsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImNvbG9yLXBpY2tlciIsCiAgIm5hbWUiOiAiQ29sb3IgUGlja2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNvbG9yLXBpY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvY29sb3ItcGlja2VyIiwKICAidXVpZCI6ICJjb2xvci1waWNrZXJAdHViZXJyeSIsCiAgInZlcnNpb24iOiAyMAp9"}, "40": {"version": "25", "sha256": "0lx4bs7yfqkphb5cwmakl6xjf14q89m0yn70a882drakfhzgnagw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBjb2xvciBwaWNrZXIgZm9yIGdub21lIHNoZWxsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImNvbG9yLXBpY2tlciIsCiAgIm5hbWUiOiAiQ29sb3IgUGlja2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNvbG9yLXBpY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2NvbG9yLXBpY2tlciIsCiAgInV1aWQiOiAiY29sb3ItcGlja2VyQHR1YmVycnkiLAogICJ2ZXJzaW9uIjogMjUKfQ=="}, "41": {"version": "27", "sha256": "1scc0cgdzrg9rmpr090myrsxhfgp03aqld9jh4grqbfza6lrz4jd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBjb2xvciBwaWNrZXIgZm9yIGdub21lIHNoZWxsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1jb2xvci1waWNrZXIiLAogICJuYW1lIjogIkNvbG9yIFBpY2tlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jb2xvci1waWNrZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9jb2xvci1waWNrZXIiLAogICJ1dWlkIjogImNvbG9yLXBpY2tlckB0dWJlcnJ5IiwKICAidmVyc2lvbiI6IDI3Cn0="}}}
+, {"uuid": "color-picker@tuberry", "name": "Color Picker", "pname": "color-picker", "description": "Simple color picker for gnome shell\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/3396/color-picker/", "shell_version_map": {"38": {"version": "20", "sha256": "1ss4r8dpa7smxbyz41rw3wl1gy20bvy89xdvwfz6zfhv3db5vl86", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBjb2xvciBwaWNrZXIgZm9yIGdub21lIHNoZWxsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImNvbG9yLXBpY2tlciIsCiAgIm5hbWUiOiAiQ29sb3IgUGlja2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNvbG9yLXBpY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvY29sb3ItcGlja2VyIiwKICAidXVpZCI6ICJjb2xvci1waWNrZXJAdHViZXJyeSIsCiAgInZlcnNpb24iOiAyMAp9"}, "40": {"version": "25", "sha256": "0lx4bs7yfqkphb5cwmakl6xjf14q89m0yn70a882drakfhzgnagw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBjb2xvciBwaWNrZXIgZm9yIGdub21lIHNoZWxsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImNvbG9yLXBpY2tlciIsCiAgIm5hbWUiOiAiQ29sb3IgUGlja2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNvbG9yLXBpY2tlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2NvbG9yLXBpY2tlciIsCiAgInV1aWQiOiAiY29sb3ItcGlja2VyQHR1YmVycnkiLAogICJ2ZXJzaW9uIjogMjUKfQ=="}, "41": {"version": "27", "sha256": "1scc0cgdzrg9rmpr090myrsxhfgp03aqld9jh4grqbfza6lrz4jd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBjb2xvciBwaWNrZXIgZm9yIGdub21lIHNoZWxsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1jb2xvci1waWNrZXIiLAogICJuYW1lIjogIkNvbG9yIFBpY2tlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jb2xvci1waWNrZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9jb2xvci1waWNrZXIiLAogICJ1dWlkIjogImNvbG9yLXBpY2tlckB0dWJlcnJ5IiwKICAidmVyc2lvbiI6IDI3Cn0="}, "42": {"version": "29", "sha256": "1hkjym4nkx3d984bm2j7lppg9k837vbm50wb65z1rjnm872r4vk8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBjb2xvciBwaWNrZXIgZm9yIGdub21lIHNoZWxsXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1jb2xvci1waWNrZXIiLAogICJuYW1lIjogIkNvbG9yIFBpY2tlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jb2xvci1waWNrZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9jb2xvci1waWNrZXIiLAogICJ1dWlkIjogImNvbG9yLXBpY2tlckB0dWJlcnJ5IiwKICAidmVyc2lvbiI6IDI5Cn0="}}}
 , {"uuid": "yaru-remix-theme-toggle@muqtxdir.me", "name": "Yaru remix theme toggle", "pname": "yaru-remix-theme-toggle", "description": "Switches GTK3, Gnome-shell, cursor and icon themes to Yaru-remix variants", "link": "https://extensions.gnome.org/extension/3402/yaru-remix-theme-toggle/", "shell_version_map": {"38": {"version": "2", "sha256": "04dh163dshjnq3fa1y5kbkgl94q4cifvffq6i2pr4zd1v7d4zrf6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvcnMiOiBbCiAgICAibXVxdGFkaXI1NTU1QGdtYWlsLmNvbSIKICBdLAogICJkZXNjcmlwdGlvbiI6ICJTd2l0Y2hlcyBHVEszLCBHbm9tZS1zaGVsbCwgY3Vyc29yIGFuZCBpY29uIHRoZW1lcyB0byBZYXJ1LXJlbWl4IHZhcmlhbnRzIiwKICAibmFtZSI6ICJZYXJ1IHJlbWl4IHRoZW1lIHRvZ2dsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL011cXR4ZGlyL3lhcnUtcmVtaXgtdGhlbWUtdG9nZ2xlIiwKICAidXVpZCI6ICJ5YXJ1LXJlbWl4LXRoZW1lLXRvZ2dsZUBtdXF0eGRpci5tZSIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "ascii_emoji_buckets@HarshKhandeparkar", "name": "ASCII Emoji Buckets", "pname": "ascii-emoji-buckets", "description": "Buckets of ASCII emojis for your messaging pleasure. A fork of Emoji Buckets.", "link": "https://extensions.gnome.org/extension/3408/ascii-emoji-buckets/", "shell_version_map": {"38": {"version": "9", "sha256": "1srqsjzcywywlhapaca41v4pc99w503m5532g6cc6qwz9f2r4w5h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJ1Y2tldHMgb2YgQVNDSUkgZW1vamlzIGZvciB5b3VyIG1lc3NhZ2luZyBwbGVhc3VyZS4gQSBmb3JrIG9mIEVtb2ppIEJ1Y2tldHMuIiwKICAibmFtZSI6ICJBU0NJSSBFbW9qaSBCdWNrZXRzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFzY2lpLWVtb2ppLWJ1Y2tldHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjMuMzguMSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0hhcnNoS2hhbmRlcGFya2FyL2dub21lLWFzY2lpLWVtb2ppLWJ1Y2tldHMiLAogICJ1dWlkIjogImFzY2lpX2Vtb2ppX2J1Y2tldHNASGFyc2hLaGFuZGVwYXJrYXIiLAogICJ2ZXJzaW9uIjogOQp9"}}}
 , {"uuid": "user-stylesheet@tomaszgasior.pl", "name": "User style sheet & font", "pname": "user-stylesheet-font", "description": "Load custom style sheet from ~/.config/gnome-shell/gnome-shell.css. Use GTK font family and font size from GNOME Tweaks in GNOME Shell.", "link": "https://extensions.gnome.org/extension/3414/user-stylesheet-font/", "shell_version_map": {"38": {"version": "4", "sha256": "1ibmhj1ixw063r7p8fwnanf4k21k8vxmll78ydqia5gdwkv79i8a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgY3VzdG9tIHN0eWxlIHNoZWV0IGZyb20gfi8uY29uZmlnL2dub21lLXNoZWxsL2dub21lLXNoZWxsLmNzcy4gVXNlIEdUSyBmb250IGZhbWlseSBhbmQgZm9udCBzaXplIGZyb20gR05PTUUgVHdlYWtzIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiVXNlciBzdHlsZSBzaGVldCAmIGZvbnQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1RvbWFzekdhc2lvci9nbm9tZS1zaGVsbC11c2VyLXN0eWxlc2hlZXQtYW5kLWZvbnQiLAogICJ1dWlkIjogInVzZXItc3R5bGVzaGVldEB0b21hc3pnYXNpb3IucGwiLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "1ibmhj1ixw063r7p8fwnanf4k21k8vxmll78ydqia5gdwkv79i8a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgY3VzdG9tIHN0eWxlIHNoZWV0IGZyb20gfi8uY29uZmlnL2dub21lLXNoZWxsL2dub21lLXNoZWxsLmNzcy4gVXNlIEdUSyBmb250IGZhbWlseSBhbmQgZm9udCBzaXplIGZyb20gR05PTUUgVHdlYWtzIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiVXNlciBzdHlsZSBzaGVldCAmIGZvbnQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1RvbWFzekdhc2lvci9nbm9tZS1zaGVsbC11c2VyLXN0eWxlc2hlZXQtYW5kLWZvbnQiLAogICJ1dWlkIjogInVzZXItc3R5bGVzaGVldEB0b21hc3pnYXNpb3IucGwiLAogICJ2ZXJzaW9uIjogNAp9"}, "41": {"version": "4", "sha256": "1ibmhj1ixw063r7p8fwnanf4k21k8vxmll78ydqia5gdwkv79i8a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvYWQgY3VzdG9tIHN0eWxlIHNoZWV0IGZyb20gfi8uY29uZmlnL2dub21lLXNoZWxsL2dub21lLXNoZWxsLmNzcy4gVXNlIEdUSyBmb250IGZhbWlseSBhbmQgZm9udCBzaXplIGZyb20gR05PTUUgVHdlYWtzIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiVXNlciBzdHlsZSBzaGVldCAmIGZvbnQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjgiLAogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1RvbWFzekdhc2lvci9nbm9tZS1zaGVsbC11c2VyLXN0eWxlc2hlZXQtYW5kLWZvbnQiLAogICJ1dWlkIjogInVzZXItc3R5bGVzaGVldEB0b21hc3pnYXNpb3IucGwiLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "wg-indicator@dpf12110.gmail.com", "name": "WG Indicator", "pname": "wg-indicator", "description": "A status indicator for Wireguard connections.", "link": "https://extensions.gnome.org/extension/3418/wg-indicator/", "shell_version_map": {"40": {"version": "13", "sha256": "126n9gbvh1yshbvx74af01f7jyrjr4p0299x9ki171d1f40djrvs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIGluZGljYXRvciBmb3IgV2lyZWd1YXJkIGNvbm5lY3Rpb25zLiIsCiAgIm5hbWUiOiAiV0cgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyLjEiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N5bmMxMjExL3dnLWluZGljYXRvciIsCiAgInV1aWQiOiAid2ctaW5kaWNhdG9yQGRwZjEyMTEwLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}, "41": {"version": "13", "sha256": "126n9gbvh1yshbvx74af01f7jyrjr4p0299x9ki171d1f40djrvs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIGluZGljYXRvciBmb3IgV2lyZWd1YXJkIGNvbm5lY3Rpb25zLiIsCiAgIm5hbWUiOiAiV0cgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjIyLjEiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N5bmMxMjExL3dnLWluZGljYXRvciIsCiAgInV1aWQiOiAid2ctaW5kaWNhdG9yQGRwZjEyMTEwLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMwp9"}}}
-, {"uuid": "flypie@schneegans.github.com", "name": "Fly-Pie", "pname": "fly-pie", "description": "A marking menu which can be used to launch applications, simulate hotkeys, open URLs and much more.", "link": "https://extensions.gnome.org/extension/3433/fly-pie/", "shell_version_map": {"38": {"version": "14", "sha256": "09bhaqjrjmdgabqiagsqc1166hjniq5yhfla1glhn6pr8ymhyh4l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgbWFya2luZyBtZW51IHdoaWNoIGNhbiBiZSB1c2VkIHRvIGxhdW5jaCBhcHBsaWNhdGlvbnMsIHNpbXVsYXRlIGhvdGtleXMsIG9wZW4gVVJMcyBhbmQgbXVjaCBtb3JlLiIsCiAgImdldHRleHQtZG9tYWluIjogImZseXBpZSIsCiAgIm5hbWUiOiAiRmx5LVBpZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mbHlwaWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0ZseS1QaWUiLAogICJ1dWlkIjogImZseXBpZUBzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "40": {"version": "14", "sha256": "09bhaqjrjmdgabqiagsqc1166hjniq5yhfla1glhn6pr8ymhyh4l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgbWFya2luZyBtZW51IHdoaWNoIGNhbiBiZSB1c2VkIHRvIGxhdW5jaCBhcHBsaWNhdGlvbnMsIHNpbXVsYXRlIGhvdGtleXMsIG9wZW4gVVJMcyBhbmQgbXVjaCBtb3JlLiIsCiAgImdldHRleHQtZG9tYWluIjogImZseXBpZSIsCiAgIm5hbWUiOiAiRmx5LVBpZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mbHlwaWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0ZseS1QaWUiLAogICJ1dWlkIjogImZseXBpZUBzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "41": {"version": "14", "sha256": "09bhaqjrjmdgabqiagsqc1166hjniq5yhfla1glhn6pr8ymhyh4l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgbWFya2luZyBtZW51IHdoaWNoIGNhbiBiZSB1c2VkIHRvIGxhdW5jaCBhcHBsaWNhdGlvbnMsIHNpbXVsYXRlIGhvdGtleXMsIG9wZW4gVVJMcyBhbmQgbXVjaCBtb3JlLiIsCiAgImdldHRleHQtZG9tYWluIjogImZseXBpZSIsCiAgIm5hbWUiOiAiRmx5LVBpZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mbHlwaWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0ZseS1QaWUiLAogICJ1dWlkIjogImZseXBpZUBzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
+, {"uuid": "flypie@schneegans.github.com", "name": "Fly-Pie", "pname": "fly-pie", "description": "A marking menu which can be used to launch applications, simulate hotkeys, open URLs and much more.", "link": "https://extensions.gnome.org/extension/3433/fly-pie/", "shell_version_map": {"38": {"version": "14", "sha256": "09bhaqjrjmdgabqiagsqc1166hjniq5yhfla1glhn6pr8ymhyh4l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgbWFya2luZyBtZW51IHdoaWNoIGNhbiBiZSB1c2VkIHRvIGxhdW5jaCBhcHBsaWNhdGlvbnMsIHNpbXVsYXRlIGhvdGtleXMsIG9wZW4gVVJMcyBhbmQgbXVjaCBtb3JlLiIsCiAgImdldHRleHQtZG9tYWluIjogImZseXBpZSIsCiAgIm5hbWUiOiAiRmx5LVBpZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mbHlwaWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0ZseS1QaWUiLAogICJ1dWlkIjogImZseXBpZUBzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "40": {"version": "14", "sha256": "09bhaqjrjmdgabqiagsqc1166hjniq5yhfla1glhn6pr8ymhyh4l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgbWFya2luZyBtZW51IHdoaWNoIGNhbiBiZSB1c2VkIHRvIGxhdW5jaCBhcHBsaWNhdGlvbnMsIHNpbXVsYXRlIGhvdGtleXMsIG9wZW4gVVJMcyBhbmQgbXVjaCBtb3JlLiIsCiAgImdldHRleHQtZG9tYWluIjogImZseXBpZSIsCiAgIm5hbWUiOiAiRmx5LVBpZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mbHlwaWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0ZseS1QaWUiLAogICJ1dWlkIjogImZseXBpZUBzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "41": {"version": "14", "sha256": "09bhaqjrjmdgabqiagsqc1166hjniq5yhfla1glhn6pr8ymhyh4l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgbWFya2luZyBtZW51IHdoaWNoIGNhbiBiZSB1c2VkIHRvIGxhdW5jaCBhcHBsaWNhdGlvbnMsIHNpbXVsYXRlIGhvdGtleXMsIG9wZW4gVVJMcyBhbmQgbXVjaCBtb3JlLiIsCiAgImdldHRleHQtZG9tYWluIjogImZseXBpZSIsCiAgIm5hbWUiOiAiRmx5LVBpZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mbHlwaWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0ZseS1QaWUiLAogICJ1dWlkIjogImZseXBpZUBzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "42": {"version": "14", "sha256": "09bhaqjrjmdgabqiagsqc1166hjniq5yhfla1glhn6pr8ymhyh4l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgbWFya2luZyBtZW51IHdoaWNoIGNhbiBiZSB1c2VkIHRvIGxhdW5jaCBhcHBsaWNhdGlvbnMsIHNpbXVsYXRlIGhvdGtleXMsIG9wZW4gVVJMcyBhbmQgbXVjaCBtb3JlLiIsCiAgImdldHRleHQtZG9tYWluIjogImZseXBpZSIsCiAgIm5hbWUiOiAiRmx5LVBpZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5mbHlwaWUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0ZseS1QaWUiLAogICJ1dWlkIjogImZseXBpZUBzY2huZWVnYW5zLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
 , {"uuid": "jiggle@jeffchannell.com", "name": "Jiggle", "pname": "jiggle", "description": "Jiggle is a Gnome Shell extension that highlights the cursor position when the mouse is moved rapidly.", "link": "https://extensions.gnome.org/extension/3438/jiggle/", "shell_version_map": {"38": {"version": "8", "sha256": "0f5zwvcqz648sn11nl49r0ki6zy5c2hp4imgba0dlc02fags7pxz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkppZ2dsZSBpcyBhIEdub21lIFNoZWxsIGV4dGVuc2lvbiB0aGF0IGhpZ2hsaWdodHMgdGhlIGN1cnNvciBwb3NpdGlvbiB3aGVuIHRoZSBtb3VzZSBpcyBtb3ZlZCByYXBpZGx5LiIsCiAgIm5hbWUiOiAiSmlnZ2xlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2LjMiLAogICAgIjMuMzguMSIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2plZmZjaGFubmVsbC9qaWdnbGUiLAogICJ1dWlkIjogImppZ2dsZUBqZWZmY2hhbm5lbGwuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "40": {"version": "8", "sha256": "0f5zwvcqz648sn11nl49r0ki6zy5c2hp4imgba0dlc02fags7pxz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkppZ2dsZSBpcyBhIEdub21lIFNoZWxsIGV4dGVuc2lvbiB0aGF0IGhpZ2hsaWdodHMgdGhlIGN1cnNvciBwb3NpdGlvbiB3aGVuIHRoZSBtb3VzZSBpcyBtb3ZlZCByYXBpZGx5LiIsCiAgIm5hbWUiOiAiSmlnZ2xlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2LjMiLAogICAgIjMuMzguMSIsCiAgICAiNDAuMCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2plZmZjaGFubmVsbC9qaWdnbGUiLAogICJ1dWlkIjogImppZ2dsZUBqZWZmY2hhbm5lbGwuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"uuid": "showtime-horizontal@xenlism.github.io", "name": "Showtime Horizontal - Desktop Widget", "pname": "showtime-horizontal", "description": "Horizontal Style Date &amp; Clock Widget base on Budgie Desktop Widget", "link": "https://extensions.gnome.org/extension/3442/showtime-horizontal/", "shell_version_map": {"38": {"version": "5", "sha256": "1rdf1alxfyi29wnz2bzm20j9k5q8sn3a6d4si841cjbhmvqdcqhj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhvcml6b250YWwgU3R5bGUgRGF0ZSAmYW1wOyBDbG9jayBXaWRnZXQgYmFzZSBvbiBCdWRnaWUgRGVza3RvcCBXaWRnZXQiLAogICJleHRlbnNpb24taWQiOiAic2hvd3RpbWUtaG9yaXpvbnRhbCIsCiAgIm5hbWUiOiAiU2hvd3RpbWUgSG9yaXpvbnRhbCAtIERlc2t0b3AgV2lkZ2V0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNob3d0aW1lLWhvcml6b250YWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS94ZW5saXNtL3Nob3d0aW1lIiwKICAidXVpZCI6ICJzaG93dGltZS1ob3Jpem9udGFsQHhlbmxpc20uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDUKfQ=="}, "40": {"version": "6", "sha256": "1zy7lkkmcjxkc30hys98s0xlmi93cyc6jz6qx7zfv1v7w03iw3ld", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhvcml6b250YWwgU3R5bGUgRGF0ZSAmYW1wOyBDbG9jayBXaWRnZXQgYmFzZSBvbiBCdWRnaWUgRGVza3RvcCBXaWRnZXQiLAogICJleHRlbnNpb24taWQiOiAic2hvd3RpbWUtaG9yaXpvbnRhbCIsCiAgIm5hbWUiOiAiU2hvd3RpbWUgSG9yaXpvbnRhbCAtIERlc2t0b3AgV2lkZ2V0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNob3d0aW1lLWhvcml6b250YWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20veGVubGlzbS9zaG93dGltZSIsCiAgInV1aWQiOiAic2hvd3RpbWUtaG9yaXpvbnRhbEB4ZW5saXNtLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA2Cn0="}}}
 , {"uuid": "display-switcher@iyadk.com", "name": "Display Switcher 2", "pname": "display-switcher", "description": "This extension allows you to toggle between display modes quickly using Super + I.  You can switch between Extended, Primary, Clone, and Secondary Only modes quickly.  Selecting Extended mode multiple times will flip your secondary monitor's relative position to the primary (to the left or right of it).  This extension was originally developed by Lucas Diedrich - https://extensions.gnome.org/extension/1030/display-switcher/ and has been adapted to support Gnome Shell's v3.36.", "link": "https://extensions.gnome.org/extension/3459/display-switcher/", "shell_version_map": {"38": {"version": "2", "sha256": "13vb68xfmcx525yk2vgfny6xvi06nzv103an5zab90hvmj6ggzlj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGFsbG93cyB5b3UgdG8gdG9nZ2xlIGJldHdlZW4gZGlzcGxheSBtb2RlcyBxdWlja2x5IHVzaW5nIFN1cGVyICsgSS4gIFlvdSBjYW4gc3dpdGNoIGJldHdlZW4gRXh0ZW5kZWQsIFByaW1hcnksIENsb25lLCBhbmQgU2Vjb25kYXJ5IE9ubHkgbW9kZXMgcXVpY2tseS4gIFNlbGVjdGluZyBFeHRlbmRlZCBtb2RlIG11bHRpcGxlIHRpbWVzIHdpbGwgZmxpcCB5b3VyIHNlY29uZGFyeSBtb25pdG9yJ3MgcmVsYXRpdmUgcG9zaXRpb24gdG8gdGhlIHByaW1hcnkgKHRvIHRoZSBsZWZ0IG9yIHJpZ2h0IG9mIGl0KS4gIFRoaXMgZXh0ZW5zaW9uIHdhcyBvcmlnaW5hbGx5IGRldmVsb3BlZCBieSBMdWNhcyBEaWVkcmljaCAtIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzEwMzAvZGlzcGxheS1zd2l0Y2hlci8gYW5kIGhhcyBiZWVuIGFkYXB0ZWQgdG8gc3VwcG9ydCBHbm9tZSBTaGVsbCdzIHYzLjM2LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1kaXNwbGF5LXN3aXRjaGVyIiwKICAibmFtZSI6ICJEaXNwbGF5IFN3aXRjaGVyIDIiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiTHVjYXMgRGllZHJpY2giLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGlzcGxheS1zd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2l5YWRrYW5kYWxhZnQvZ25vbWUtZGlzcGxheS1zd2l0Y2hlciIsCiAgInV1aWQiOiAiZGlzcGxheS1zd2l0Y2hlckBpeWFkay5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}}}
 , {"uuid": "panel-date-format@atareao.es", "name": "Panel Date Format", "pname": "panel-date-format", "description": "Allows to customize the date format on the panel.", "link": "https://extensions.gnome.org/extension/3465/panel-date-format/", "shell_version_map": {"40": {"version": "5", "sha256": "1x6f55d650mnw57fds70bdy9n2h5v7hmb43fsah33m4h4rk1svnc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyB0byBjdXN0b21pemUgdGhlIGRhdGUgZm9ybWF0IG9uIHRoZSBwYW5lbC4iLAogICJleHRlbnNpb24taWQiOiAicGFuZWwtZGF0ZS1mb3JtYXRAYXRhcmVhby5lcyIsCiAgImdldHRleHQtZG9tYWluIjogInBhbmVsLWRhdGUtZm9ybWF0QGF0YXJlYW8uZXMiLAogICJpY29uIjogInBhbmVsLWRhdGUtZm9ybWF0IiwKICAibmFtZSI6ICJQYW5lbCBEYXRlIEZvcm1hdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJlcy5hdGFyZWFvLnBhbmVsLWRhdGUtZm9ybWF0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2F0YXJlYW8vcGFuZWwtZGF0ZS1mb3JtYXQiLAogICJ1dWlkIjogInBhbmVsLWRhdGUtZm9ybWF0QGF0YXJlYW8uZXMiLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "myHiddenTopBar@lendoK.github.com", "name": "myHiddenTopBar", "pname": "myhiddentopbar", "description": "really hides the toppanel", "link": "https://extensions.gnome.org/extension/3481/myhiddentopbar/", "shell_version_map": {"38": {"version": "2", "sha256": "1vrj1ih0rvds9xng0i4n2cah9akm2j2vhma3a7zjyvljxmw82w5x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInJlYWxseSBoaWRlcyB0aGUgdG9wcGFuZWwiLAogICJuYW1lIjogIm15SGlkZGVuVG9wQmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm15SGlkZGVuVG9wQmFyQGxlbmRvSy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "3", "sha256": "0fl9rcdxn2l2lpc8fhcbvzm9lx0i12674kk15rpgbzfj8xn26qkw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInJlYWxseSBoaWRlcyB0aGUgdG9wcGFuZWwiLAogICJuYW1lIjogIm15SGlkZGVuVG9wQmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm15SGlkZGVuVG9wQmFyQGxlbmRvSy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "5", "sha256": "01b5d3bza10mcy0dj662dp1lk2if7pl71q3cfr7zwyk1fkkraizy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInJlYWxseSBoaWRlcyB0aGUgdG9wcGFuZWwiLAogICJuYW1lIjogIm15SGlkZGVuVG9wQmFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJteUhpZGRlblRvcEJhckBsZW5kb0suZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "big-avatar@gustavoperedo.org", "name": "Big Avatar", "pname": "big-avatar", "description": "Adds your user avatar and name to the menu panel. Big thanks to: db0x and 'I like 'em curvy' extension developer", "link": "https://extensions.gnome.org/extension/3488/big-avatar/", "shell_version_map": {"38": {"version": "6", "sha256": "1p278iaqfl39kimk3041wvzvmgag8dr2q1bmka3n7srkd2n71vlf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgeW91ciB1c2VyIGF2YXRhciBhbmQgbmFtZSB0byB0aGUgbWVudSBwYW5lbC4gQmlnIHRoYW5rcyB0bzogZGIweCBhbmQgJ0kgbGlrZSAnZW0gY3VydnknIGV4dGVuc2lvbiBkZXZlbG9wZXIiLAogICJleHRlbnNpb24taWQiOiAiYmlnLWF2YXRhciIsCiAgIm5hbWUiOiAiQmlnIEF2YXRhciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iaWctYXZhdGFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vR3VzdGF2b1BlcmVkby9CaWctQXZhdGFyLUdub21lLVNoZWxsLUV4dGVuc2lvbiIsCiAgInV1aWQiOiAiYmlnLWF2YXRhckBndXN0YXZvcGVyZWRvLm9yZyIsCiAgInZlcnNpb24iOiA2Cn0="}, "40": {"version": "11", "sha256": "1ajh11619r8v6mvkmv142ivykd5b20jx64ca8fxhicfn6i6di923", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgeW91ciB1c2VyIGF2YXRhciBhbmQgbmFtZSB0byB0aGUgbWVudSBwYW5lbC4gQmlnIHRoYW5rcyB0bzogZGIweCBhbmQgJ0kgbGlrZSAnZW0gY3VydnknIGV4dGVuc2lvbiBkZXZlbG9wZXIiLAogICJleHRlbnNpb24taWQiOiAiYmlnLWF2YXRhciIsCiAgIm5hbWUiOiAiQmlnIEF2YXRhciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iaWctYXZhdGFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0d1c3Rhdm9QZXJlZG8vQmlnLUF2YXRhci1Hbm9tZS1TaGVsbC1FeHRlbnNpb24iLAogICJ1dWlkIjogImJpZy1hdmF0YXJAZ3VzdGF2b3BlcmVkby5vcmciLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
-, {"uuid": "volume-mixer@evermiss.net", "name": "Application Volume Mixer", "pname": "application-volume-mixer", "description": "Control volume output per-application", "link": "https://extensions.gnome.org/extension/3499/application-volume-mixer/", "shell_version_map": {"38": {"version": "10", "sha256": "1rw73vgim4lkliy7prn3mfyc2jzk0yi72maf74iybk9kqpyiv5wp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdm9sdW1lIG91dHB1dCBwZXItYXBwbGljYXRpb24iLAogICJuYW1lIjogIkFwcGxpY2F0aW9uIFZvbHVtZSBNaXhlciIsCiAgIm9yZ2luYWwtYXV0aG9yIjogIm15bWluZHN0b3JtQGV2ZXJtaXNzLm5ldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL215bWluZHN0b3JtL2dub21lLXZvbHVtZS1taXhlciIsCiAgInV1aWQiOiAidm9sdW1lLW1peGVyQGV2ZXJtaXNzLm5ldCIsCiAgInZlcnNpb24iOiAxMAp9"}, "40": {"version": "10", "sha256": "1rw73vgim4lkliy7prn3mfyc2jzk0yi72maf74iybk9kqpyiv5wp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdm9sdW1lIG91dHB1dCBwZXItYXBwbGljYXRpb24iLAogICJuYW1lIjogIkFwcGxpY2F0aW9uIFZvbHVtZSBNaXhlciIsCiAgIm9yZ2luYWwtYXV0aG9yIjogIm15bWluZHN0b3JtQGV2ZXJtaXNzLm5ldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL215bWluZHN0b3JtL2dub21lLXZvbHVtZS1taXhlciIsCiAgInV1aWQiOiAidm9sdW1lLW1peGVyQGV2ZXJtaXNzLm5ldCIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "1rw73vgim4lkliy7prn3mfyc2jzk0yi72maf74iybk9kqpyiv5wp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdm9sdW1lIG91dHB1dCBwZXItYXBwbGljYXRpb24iLAogICJuYW1lIjogIkFwcGxpY2F0aW9uIFZvbHVtZSBNaXhlciIsCiAgIm9yZ2luYWwtYXV0aG9yIjogIm15bWluZHN0b3JtQGV2ZXJtaXNzLm5ldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL215bWluZHN0b3JtL2dub21lLXZvbHVtZS1taXhlciIsCiAgInV1aWQiOiAidm9sdW1lLW1peGVyQGV2ZXJtaXNzLm5ldCIsCiAgInZlcnNpb24iOiAxMAp9"}}}
+, {"uuid": "volume-mixer@evermiss.net", "name": "Application Volume Mixer", "pname": "application-volume-mixer", "description": "Control volume output per-application", "link": "https://extensions.gnome.org/extension/3499/application-volume-mixer/", "shell_version_map": {"38": {"version": "10", "sha256": "1rw73vgim4lkliy7prn3mfyc2jzk0yi72maf74iybk9kqpyiv5wp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdm9sdW1lIG91dHB1dCBwZXItYXBwbGljYXRpb24iLAogICJuYW1lIjogIkFwcGxpY2F0aW9uIFZvbHVtZSBNaXhlciIsCiAgIm9yZ2luYWwtYXV0aG9yIjogIm15bWluZHN0b3JtQGV2ZXJtaXNzLm5ldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL215bWluZHN0b3JtL2dub21lLXZvbHVtZS1taXhlciIsCiAgInV1aWQiOiAidm9sdW1lLW1peGVyQGV2ZXJtaXNzLm5ldCIsCiAgInZlcnNpb24iOiAxMAp9"}, "40": {"version": "10", "sha256": "1rw73vgim4lkliy7prn3mfyc2jzk0yi72maf74iybk9kqpyiv5wp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdm9sdW1lIG91dHB1dCBwZXItYXBwbGljYXRpb24iLAogICJuYW1lIjogIkFwcGxpY2F0aW9uIFZvbHVtZSBNaXhlciIsCiAgIm9yZ2luYWwtYXV0aG9yIjogIm15bWluZHN0b3JtQGV2ZXJtaXNzLm5ldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL215bWluZHN0b3JtL2dub21lLXZvbHVtZS1taXhlciIsCiAgInV1aWQiOiAidm9sdW1lLW1peGVyQGV2ZXJtaXNzLm5ldCIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "1rw73vgim4lkliy7prn3mfyc2jzk0yi72maf74iybk9kqpyiv5wp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdm9sdW1lIG91dHB1dCBwZXItYXBwbGljYXRpb24iLAogICJuYW1lIjogIkFwcGxpY2F0aW9uIFZvbHVtZSBNaXhlciIsCiAgIm9yZ2luYWwtYXV0aG9yIjogIm15bWluZHN0b3JtQGV2ZXJtaXNzLm5ldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL215bWluZHN0b3JtL2dub21lLXZvbHVtZS1taXhlciIsCiAgInV1aWQiOiAidm9sdW1lLW1peGVyQGV2ZXJtaXNzLm5ldCIsCiAgInZlcnNpb24iOiAxMAp9"}, "42": {"version": "10", "sha256": "1rw73vgim4lkliy7prn3mfyc2jzk0yi72maf74iybk9kqpyiv5wp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdm9sdW1lIG91dHB1dCBwZXItYXBwbGljYXRpb24iLAogICJuYW1lIjogIkFwcGxpY2F0aW9uIFZvbHVtZSBNaXhlciIsCiAgIm9yZ2luYWwtYXV0aG9yIjogIm15bWluZHN0b3JtQGV2ZXJtaXNzLm5ldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL215bWluZHN0b3JtL2dub21lLXZvbHVtZS1taXhlciIsCiAgInV1aWQiOiAidm9sdW1lLW1peGVyQGV2ZXJtaXNzLm5ldCIsCiAgInZlcnNpb24iOiAxMAp9"}}}
 , {"uuid": "creative-control@sau.li", "name": "Creative Sound Blaster control", "pname": "creative-sound-blaster-control", "description": "Control Creative Sound Blaster", "link": "https://extensions.gnome.org/extension/3505/creative-sound-blaster-control/", "shell_version_map": {"38": {"version": "2", "sha256": "0pqps21c2p8fqndy9hd77j979h0wjbw0yzbmv6jmwk7rskv6zysg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgQ3JlYXRpdmUgU291bmQgQmxhc3RlciIsCiAgIm5hbWUiOiAiQ3JlYXRpdmUgU291bmQgQmxhc3RlciBjb250cm9sIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaXNhdWwzMi9nbm9tZS1zaGVsbC1leHRlbnNpb24tY3JlYXRpdmUtY29udHJvbCIsCiAgInV1aWQiOiAiY3JlYXRpdmUtY29udHJvbEBzYXUubGkiLAogICJ2ZXJzaW9uIjogMgp9"}}}
 , {"uuid": "day-night-wallpaper@swapnilmadavi.github.io", "name": "Day Night Wallpaper", "pname": "day-night-wallpaper", "description": "Set separate wallpapers for day and night time.", "link": "https://extensions.gnome.org/extension/3512/day-night-wallpaper/", "shell_version_map": {"38": {"version": "2", "sha256": "082wrffxsa6qnp120ghlvhkb3isnnf9qizxfk6bbgqbzcvsax059", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldCBzZXBhcmF0ZSB3YWxscGFwZXJzIGZvciBkYXkgYW5kIG5pZ2h0IHRpbWUuIiwKICAibmFtZSI6ICJEYXkgTmlnaHQgV2FsbHBhcGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRheS1uaWdodC13YWxscGFwZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zd2FwbmlsbWFkYXZpL2RheS1uaWdodC13YWxscGFwZXItZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJkYXktbmlnaHQtd2FsbHBhcGVyQHN3YXBuaWxtYWRhdmkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "transparent-shell@siroj42.github.io", "name": "Transparent Shell", "pname": "transparent-shell", "description": "Make the main shell components (Top bar, dash, search box) transparent.", "link": "https://extensions.gnome.org/extension/3518/transparent-shell/", "shell_version_map": {"38": {"version": "6", "sha256": "109c5w2p7w9arfy4wrqmyyi7vd5fwdr8n2cz250bpxiij6zq140k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIG1haW4gc2hlbGwgY29tcG9uZW50cyAoVG9wIGJhciwgZGFzaCwgc2VhcmNoIGJveCkgdHJhbnNwYXJlbnQuIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBTaGVsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1Npcm9qNDIvZ25vbWUtZXh0ZW5zaW9uLXRyYW5zcGFyZW50LXNoZWxsIiwKICAidXVpZCI6ICJ0cmFuc3BhcmVudC1zaGVsbEBzaXJvajQyLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA2Cn0="}, "40": {"version": "7", "sha256": "0nzx401vvzn8n9xnkd13v5jim0l7zd01p1lf0lbgydrr8gh67i95", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIG1haW4gc2hlbGwgY29tcG9uZW50cyAoVG9wIGJhciwgZGFzaCwgc2VhcmNoIGJveCkgdHJhbnNwYXJlbnQuIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBTaGVsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TaXJvajQyL2dub21lLWV4dGVuc2lvbi10cmFuc3BhcmVudC1zaGVsbCIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtc2hlbGxAc2lyb2o0Mi5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"uuid": "true-color-invert@jackkenney", "name": "True Color Invert", "pname": "true-color-invert", "description": "Inverts the color of individual windows so they are hue-preserved.\nDefault shortcut is Super+I", "link": "https://extensions.gnome.org/extension/3530/true-color-invert/", "shell_version_map": {"38": {"version": "8", "sha256": "0l8sz8w8l6cmkn19sg34gmbh79sx49jdx1gk8xzh7yyxgqxhayzl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludmVydHMgdGhlIGNvbG9yIG9mIGluZGl2aWR1YWwgd2luZG93cyBzbyB0aGV5IGFyZSBodWUtcHJlc2VydmVkLlxuRGVmYXVsdCBzaG9ydGN1dCBpcyBTdXBlcitJIiwKICAibmFtZSI6ICJUcnVlIENvbG9yIEludmVydCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cnVlLWNvbG9yLWludmVydCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vamFja2tlbm5leS9nbm9tZS10cnVlLWNvbG9yLWludmVydCIsCiAgInV1aWQiOiAidHJ1ZS1jb2xvci1pbnZlcnRAamFja2tlbm5leSIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "8", "sha256": "0l8sz8w8l6cmkn19sg34gmbh79sx49jdx1gk8xzh7yyxgqxhayzl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludmVydHMgdGhlIGNvbG9yIG9mIGluZGl2aWR1YWwgd2luZG93cyBzbyB0aGV5IGFyZSBodWUtcHJlc2VydmVkLlxuRGVmYXVsdCBzaG9ydGN1dCBpcyBTdXBlcitJIiwKICAibmFtZSI6ICJUcnVlIENvbG9yIEludmVydCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cnVlLWNvbG9yLWludmVydCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vamFja2tlbm5leS9nbm9tZS10cnVlLWNvbG9yLWludmVydCIsCiAgInV1aWQiOiAidHJ1ZS1jb2xvci1pbnZlcnRAamFja2tlbm5leSIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "0l8sz8w8l6cmkn19sg34gmbh79sx49jdx1gk8xzh7yyxgqxhayzl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludmVydHMgdGhlIGNvbG9yIG9mIGluZGl2aWR1YWwgd2luZG93cyBzbyB0aGV5IGFyZSBodWUtcHJlc2VydmVkLlxuRGVmYXVsdCBzaG9ydGN1dCBpcyBTdXBlcitJIiwKICAibmFtZSI6ICJUcnVlIENvbG9yIEludmVydCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50cnVlLWNvbG9yLWludmVydCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vamFja2tlbm5leS9nbm9tZS10cnVlLWNvbG9yLWludmVydCIsCiAgInV1aWQiOiAidHJ1ZS1jb2xvci1pbnZlcnRAamFja2tlbm5leSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"uuid": "gitlab-extension@infinicode.de", "name": "GitLab Extension", "pname": "gitlab-extension", "description": "GitLab extension utilizes the official GitLab API to provide a comfortable overview about your projects, commits & pipelines.\n", "link": "https://extensions.gnome.org/extension/3535/gitlab-extension/", "shell_version_map": {"38": {"version": "4", "sha256": "04hclkbj95alqv9lq5qa5dnf7wb8ssd08q0lzd9wxzw95hiqcvwd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdExhYiBleHRlbnNpb24gdXRpbGl6ZXMgdGhlIG9mZmljaWFsIEdpdExhYiBBUEkgdG8gcHJvdmlkZSBhIGNvbWZvcnRhYmxlIG92ZXJ2aWV3IGFib3V0IHlvdXIgcHJvamVjdHMsIGNvbW1pdHMgJiBwaXBlbGluZXMuXG4iLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIkdpdExhYiBFeHRlbnNpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY2luYXRpYy9naXRsYWItZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJnaXRsYWItZXh0ZW5zaW9uQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "04hclkbj95alqv9lq5qa5dnf7wb8ssd08q0lzd9wxzw95hiqcvwd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdExhYiBleHRlbnNpb24gdXRpbGl6ZXMgdGhlIG9mZmljaWFsIEdpdExhYiBBUEkgdG8gcHJvdmlkZSBhIGNvbWZvcnRhYmxlIG92ZXJ2aWV3IGFib3V0IHlvdXIgcHJvamVjdHMsIGNvbW1pdHMgJiBwaXBlbGluZXMuXG4iLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIkdpdExhYiBFeHRlbnNpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY2luYXRpYy9naXRsYWItZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJnaXRsYWItZXh0ZW5zaW9uQGluZmluaWNvZGUuZGUiLAogICJ2ZXJzaW9uIjogNAp9"}}}
-, {"uuid": "downfall@torculus.github.com", "name": "DownFall", "pname": "downfall", "description": "Moves text of your choice across the screen. Can simulate leaves, snow, fireworks, ufos, and more!", "link": "https://extensions.gnome.org/extension/3539/downfall/", "shell_version_map": {"38": {"version": "19", "sha256": "0dmkjqmn2x7bg7fndq4fdvllhpzd3in39z2ykm1g6f0zyv4gq2i0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIiwKICAibmFtZSI6ICJEb3duRmFsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvcmN1bHVzL0Rvd25GYWxsIiwKICAidXVpZCI6ICJkb3duZmFsbEB0b3JjdWx1cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "40": {"version": "19", "sha256": "0dmkjqmn2x7bg7fndq4fdvllhpzd3in39z2ykm1g6f0zyv4gq2i0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIiwKICAibmFtZSI6ICJEb3duRmFsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvcmN1bHVzL0Rvd25GYWxsIiwKICAidXVpZCI6ICJkb3duZmFsbEB0b3JjdWx1cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "41": {"version": "19", "sha256": "0dmkjqmn2x7bg7fndq4fdvllhpzd3in39z2ykm1g6f0zyv4gq2i0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIiwKICAibmFtZSI6ICJEb3duRmFsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvcmN1bHVzL0Rvd25GYWxsIiwKICAidXVpZCI6ICJkb3duZmFsbEB0b3JjdWx1cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}}}
-, {"uuid": "time-awareness@gnome-extensions.kapranoff.ru", "name": "Time Awareness", "pname": "time-awareness", "description": "Tracks the time you have been actively using your computer", "link": "https://extensions.gnome.org/extension/3556/time-awareness/", "shell_version_map": {"38": {"version": "7", "sha256": "0a9a7524ddwb2hxf3q5amgbd57fy17m994vj3gbkddk7mp8m06a7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3NyLmh0L35rYXBwYS9nbm9tZS1zaGVsbC10aW1lLWF3YXJlbmVzcy8iLAogICJ1dWlkIjogInRpbWUtYXdhcmVuZXNzQGdub21lLWV4dGVuc2lvbnMua2FwcmFub2ZmLnJ1IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0a9a7524ddwb2hxf3q5amgbd57fy17m994vj3gbkddk7mp8m06a7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3NyLmh0L35rYXBwYS9nbm9tZS1zaGVsbC10aW1lLWF3YXJlbmVzcy8iLAogICJ1dWlkIjogInRpbWUtYXdhcmVuZXNzQGdub21lLWV4dGVuc2lvbnMua2FwcmFub2ZmLnJ1IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "0a9a7524ddwb2hxf3q5amgbd57fy17m994vj3gbkddk7mp8m06a7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3NyLmh0L35rYXBwYS9nbm9tZS1zaGVsbC10aW1lLWF3YXJlbmVzcy8iLAogICJ1dWlkIjogInRpbWUtYXdhcmVuZXNzQGdub21lLWV4dGVuc2lvbnMua2FwcmFub2ZmLnJ1IiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
+, {"uuid": "downfall@torculus.github.com", "name": "DownFall", "pname": "downfall", "description": "Moves text of your choice across the screen. Can simulate leaves, snow, fireworks, ufos, and more!", "link": "https://extensions.gnome.org/extension/3539/downfall/", "shell_version_map": {"38": {"version": "19", "sha256": "0dmkjqmn2x7bg7fndq4fdvllhpzd3in39z2ykm1g6f0zyv4gq2i0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIiwKICAibmFtZSI6ICJEb3duRmFsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvcmN1bHVzL0Rvd25GYWxsIiwKICAidXVpZCI6ICJkb3duZmFsbEB0b3JjdWx1cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "40": {"version": "19", "sha256": "0dmkjqmn2x7bg7fndq4fdvllhpzd3in39z2ykm1g6f0zyv4gq2i0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIiwKICAibmFtZSI6ICJEb3duRmFsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvcmN1bHVzL0Rvd25GYWxsIiwKICAidXVpZCI6ICJkb3duZmFsbEB0b3JjdWx1cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "41": {"version": "19", "sha256": "0dmkjqmn2x7bg7fndq4fdvllhpzd3in39z2ykm1g6f0zyv4gq2i0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIiwKICAibmFtZSI6ICJEb3duRmFsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvcmN1bHVzL0Rvd25GYWxsIiwKICAidXVpZCI6ICJkb3duZmFsbEB0b3JjdWx1cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "42": {"version": "19", "sha256": "0dmkjqmn2x7bg7fndq4fdvllhpzd3in39z2ykm1g6f0zyv4gq2i0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRleHQgb2YgeW91ciBjaG9pY2UgYWNyb3NzIHRoZSBzY3JlZW4uIENhbiBzaW11bGF0ZSBsZWF2ZXMsIHNub3csIGZpcmV3b3JrcywgdWZvcywgYW5kIG1vcmUhIiwKICAibmFtZSI6ICJEb3duRmFsbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RvcmN1bHVzL0Rvd25GYWxsIiwKICAidXVpZCI6ICJkb3duZmFsbEB0b3JjdWx1cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE5Cn0="}}}
+, {"uuid": "time-awareness@gnome-extensions.kapranoff.ru", "name": "Time Awareness", "pname": "time-awareness", "description": "Tracks the time you have been actively using your computer", "link": "https://extensions.gnome.org/extension/3556/time-awareness/", "shell_version_map": {"38": {"version": "7", "sha256": "0a9a7524ddwb2hxf3q5amgbd57fy17m994vj3gbkddk7mp8m06a7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3NyLmh0L35rYXBwYS9nbm9tZS1zaGVsbC10aW1lLWF3YXJlbmVzcy8iLAogICJ1dWlkIjogInRpbWUtYXdhcmVuZXNzQGdub21lLWV4dGVuc2lvbnMua2FwcmFub2ZmLnJ1IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0a9a7524ddwb2hxf3q5amgbd57fy17m994vj3gbkddk7mp8m06a7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3NyLmh0L35rYXBwYS9nbm9tZS1zaGVsbC10aW1lLWF3YXJlbmVzcy8iLAogICJ1dWlkIjogInRpbWUtYXdhcmVuZXNzQGdub21lLWV4dGVuc2lvbnMua2FwcmFub2ZmLnJ1IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "0a9a7524ddwb2hxf3q5amgbd57fy17m994vj3gbkddk7mp8m06a7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3NyLmh0L35rYXBwYS9nbm9tZS1zaGVsbC10aW1lLWF3YXJlbmVzcy8iLAogICJ1dWlkIjogInRpbWUtYXdhcmVuZXNzQGdub21lLWV4dGVuc2lvbnMua2FwcmFub2ZmLnJ1IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "42": {"version": "7", "sha256": "0a9a7524ddwb2hxf3q5amgbd57fy17m994vj3gbkddk7mp8m06a7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYWNrcyB0aGUgdGltZSB5b3UgaGF2ZSBiZWVuIGFjdGl2ZWx5IHVzaW5nIHlvdXIgY29tcHV0ZXIiLAogICJuYW1lIjogIlRpbWUgQXdhcmVuZXNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL3NyLmh0L35rYXBwYS9nbm9tZS1zaGVsbC10aW1lLWF3YXJlbmVzcy8iLAogICJ1dWlkIjogInRpbWUtYXdhcmVuZXNzQGdub21lLWV4dGVuc2lvbnMua2FwcmFub2ZmLnJ1IiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "mullvadindicator@pobega.github.com", "name": "Mullvad Indicator", "pname": "mullvad-indicator", "description": "Mullvad connection status indicator", "link": "https://extensions.gnome.org/extension/3560/mullvad-indicator/", "shell_version_map": {"38": {"version": "4", "sha256": "05vcb7g51byvnk7bzajb1i7knj4zwjiksia97wabk41a2bagc4jc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11bGx2YWQgY29ubmVjdGlvbiBzdGF0dXMgaW5kaWNhdG9yIiwKICAibmFtZSI6ICJNdWxsdmFkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUG9iZWdhL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tdWxsdmFkLWluZGljYXRvciIsCiAgInV1aWQiOiAibXVsbHZhZGluZGljYXRvckBwb2JlZ2EuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "05vcb7g51byvnk7bzajb1i7knj4zwjiksia97wabk41a2bagc4jc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11bGx2YWQgY29ubmVjdGlvbiBzdGF0dXMgaW5kaWNhdG9yIiwKICAibmFtZSI6ICJNdWxsdmFkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUG9iZWdhL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tdWxsdmFkLWluZGljYXRvciIsCiAgInV1aWQiOiAibXVsbHZhZGluZGljYXRvckBwb2JlZ2EuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "05vcb7g51byvnk7bzajb1i7knj4zwjiksia97wabk41a2bagc4jc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk11bGx2YWQgY29ubmVjdGlvbiBzdGF0dXMgaW5kaWNhdG9yIiwKICAibmFtZSI6ICJNdWxsdmFkIEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUG9iZWdhL2dub21lLXNoZWxsLWV4dGVuc2lvbi1tdWxsdmFkLWluZGljYXRvciIsCiAgInV1aWQiOiAibXVsbHZhZGluZGljYXRvckBwb2JlZ2EuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "task-widget@juozasmiskinis.gitlab.io", "name": "Task Widget", "pname": "task-widget", "description": "Display tasks next to the calendar widget.\n\nVisit our Wiki page for more information and troubleshooting.", "link": "https://extensions.gnome.org/extension/3569/task-widget/", "shell_version_map": {"38": {"version": "11", "sha256": "0bn43w6smfihr220k6abazq6lwd5qc3xyrl9crh9m6m09c0x7hln", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJjb2ZmZWUiOiAiaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9uYnh3ZnBtIiwKICAiZGVwZW5kZW5jaWVzIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzL0luc3RhbGxhdGlvbiIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGFza3MgbmV4dCB0byB0aGUgY2FsZW5kYXIgd2lkZ2V0LlxuXG5WaXNpdCBvdXIgV2lraSBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCB0cm91Ymxlc2hvb3RpbmcuIiwKICAiZXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3Rhc2std2lkZ2V0IiwKICAiZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhc2std2lkZ2V0LmdyZXNvdXJjZSIsCiAgImxpYmVyYXBheSI6ICJodHRwczovL2xpYmVyYXBheS5jb20vam9hc2lzLyIsCiAgImxvY2FsZSI6ICJ1c2VyLXNwZWNpZmljIiwKICAibmFtZSI6ICJUYXNrIFdpZGdldCIsCiAgInBheXBhbCI6ICJodHRwczovL3BheXBhbC5tZS9qbWlza2luaXMiLAogICJzY2hlbWFzIjogInVzZXItc3BlY2lmaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQiLAogICJ1dWlkIjogInRhc2std2lkZ2V0QGp1b3phc21pc2tpbmlzLmdpdGxhYi5pbyIsCiAgInZlcnNpb24iOiAxMSwKICAid2lraSI6ICJodHRwczovL2dpdGxhYi5jb20vam1pc2tpbmlzL2dub21lLXNoZWxsLWV4dGVuc2lvbi10YXNrLXdpZGdldC93aWtpcyIKfQ=="}, "40": {"version": "11", "sha256": "0bn43w6smfihr220k6abazq6lwd5qc3xyrl9crh9m6m09c0x7hln", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJjb2ZmZWUiOiAiaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9uYnh3ZnBtIiwKICAiZGVwZW5kZW5jaWVzIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzL0luc3RhbGxhdGlvbiIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGFza3MgbmV4dCB0byB0aGUgY2FsZW5kYXIgd2lkZ2V0LlxuXG5WaXNpdCBvdXIgV2lraSBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCB0cm91Ymxlc2hvb3RpbmcuIiwKICAiZXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3Rhc2std2lkZ2V0IiwKICAiZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhc2std2lkZ2V0LmdyZXNvdXJjZSIsCiAgImxpYmVyYXBheSI6ICJodHRwczovL2xpYmVyYXBheS5jb20vam9hc2lzLyIsCiAgImxvY2FsZSI6ICJ1c2VyLXNwZWNpZmljIiwKICAibmFtZSI6ICJUYXNrIFdpZGdldCIsCiAgInBheXBhbCI6ICJodHRwczovL3BheXBhbC5tZS9qbWlza2luaXMiLAogICJzY2hlbWFzIjogInVzZXItc3BlY2lmaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQiLAogICJ1dWlkIjogInRhc2std2lkZ2V0QGp1b3phc21pc2tpbmlzLmdpdGxhYi5pbyIsCiAgInZlcnNpb24iOiAxMSwKICAid2lraSI6ICJodHRwczovL2dpdGxhYi5jb20vam1pc2tpbmlzL2dub21lLXNoZWxsLWV4dGVuc2lvbi10YXNrLXdpZGdldC93aWtpcyIKfQ=="}, "41": {"version": "11", "sha256": "0bn43w6smfihr220k6abazq6lwd5qc3xyrl9crh9m6m09c0x7hln", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImJhc2UiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGFzay13aWRnZXQiLAogICJjb2ZmZWUiOiAiaHR0cHM6Ly93d3cuYnV5bWVhY29mZmVlLmNvbS9uYnh3ZnBtIiwKICAiZGVwZW5kZW5jaWVzIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qbWlza2luaXMvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRhc2std2lkZ2V0L3dpa2lzL0luc3RhbGxhdGlvbiIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgdGFza3MgbmV4dCB0byB0aGUgY2FsZW5kYXIgd2lkZ2V0LlxuXG5WaXNpdCBvdXIgV2lraSBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCB0cm91Ymxlc2hvb3RpbmcuIiwKICAiZXBhdGgiOiAiL29yZy9nbm9tZS9zaGVsbC9leHRlbnNpb25zL3Rhc2std2lkZ2V0IiwKICAiZ3Jlc291cmNlIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRhc2std2lkZ2V0LmdyZXNvdXJjZSIsCiAgImxpYmVyYXBheSI6ICJodHRwczovL2xpYmVyYXBheS5jb20vam9hc2lzLyIsCiAgImxvY2FsZSI6ICJ1c2VyLXNwZWNpZmljIiwKICAibmFtZSI6ICJUYXNrIFdpZGdldCIsCiAgInBheXBhbCI6ICJodHRwczovL3BheXBhbC5tZS9qbWlza2luaXMiLAogICJzY2hlbWFzIjogInVzZXItc3BlY2lmaWMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2ptaXNraW5pcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdGFzay13aWRnZXQiLAogICJ1dWlkIjogInRhc2std2lkZ2V0QGp1b3phc21pc2tpbmlzLmdpdGxhYi5pbyIsCiAgInZlcnNpb24iOiAxMSwKICAid2lraSI6ICJodHRwczovL2dpdGxhYi5jb20vam1pc2tpbmlzL2dub21lLXNoZWxsLWV4dGVuc2lvbi10YXNrLXdpZGdldC93aWtpcyIKfQ=="}}}
 , {"uuid": "air-quality@mcardillo55", "name": "Air Quality", "pname": "air-quality", "description": "View local air quality from PurpleAir in the top bar", "link": "https://extensions.gnome.org/extension/3574/air-quality/", "shell_version_map": {"40": {"version": "2", "sha256": "037hbbb6z3gj818hqxqq96yszd1hka57pn4gj9f5kps7ak5hca4l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZpZXcgbG9jYWwgYWlyIHF1YWxpdHkgZnJvbSBQdXJwbGVBaXIgaW4gdGhlIHRvcCBiYXIiLAogICJuYW1lIjogIkFpciBRdWFsaXR5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21jYXJkaWxsbzU1L2dub21lLXNoZWxsLWV4dGVuc2lvbi1haXItcXVhbGl0eSIsCiAgInV1aWQiOiAiYWlyLXF1YWxpdHlAbWNhcmRpbGxvNTUiLAogICJ2ZXJzaW9uIjogMgp9"}}}
@@ -363,7 +363,7 @@
 , {"uuid": "wireguard-indicator@atareao.es", "name": "WireGuard Indicator", "pname": "wireguard-indicator", "description": "Manage WireGuard VPN from Desktop", "link": "https://extensions.gnome.org/extension/3612/wireguard-indicator/", "shell_version_map": {"40": {"version": "6", "sha256": "0qddl83x30y6jqm4nyjk6faklmv7cii2czmgmagcyllgkh0simav", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBXaXJlR3VhcmQgVlBOIGZyb20gRGVza3RvcCIsCiAgImV4dGVuc2lvbi1pZCI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGF0YXJlYW8uZXMiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3aXJlZ3VhcmQtaW5kaWNhdG9yQGF0YXJlYW8uZXMiLAogICJpY29uIjogIndpcmVndWFyZC1pY29uIiwKICAibmFtZSI6ICJXaXJlR3VhcmQgSW5kaWNhdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogImVzLmF0YXJlYW8ud2lyZWd1YXJkLWluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdGFyZWFvL3dpcmVndWFyZC1pbmRpY2F0b3IiLAogICJ1dWlkIjogIndpcmVndWFyZC1pbmRpY2F0b3JAYXRhcmVhby5lcyIsCiAgInZlcnNpb24iOiA2Cn0="}}}
 , {"uuid": "shamsi-calendar@gnome.scr.ir", "name": "Iranian Persian Calendar", "pname": "shamsi-calendar", "description": "تقویم هجری شمسی،قمری و میلادی در میز‌کار گنوم لینوکس\nقابلیت نمایش اوقات شرعی و پخش اذان\nدرج تعطیلی‌ها و مناسبت‌های رسمی تقویم\nزبان کاملاً فارسی\nتاریخ قمری هلالی ایران\nسازگار با اکثر نسخه‌های گنوم\nدر حال توسعه...\n\nShows Persian + Islamic + Gregorian date in the panel of gnome.\n\nIt shows:\n1- Persian calendar\n2- It can show, today is holiday or not!\n3- Show notification onDayChanged!\n4- Date converter between Persian, Gregorian and Lunar Hijri(Islamic)\n5- Show calendar Events.\n6- Show PrayTimes and play sound (Azan).\n\nPlease \"rate\" here and \"star\" project in GitHub.\nPlease open an issue in GitHub if you found something or have an idea!\nگزارش مشکلات:\nhttps://github.com/SCR-IR/gnome-shamsi-calendar/issues", "link": "https://extensions.gnome.org/extension/3618/shamsi-calendar/", "shell_version_map": {"38": {"version": "16", "sha256": "1aqhj1lmwqy6wlbd105bl85grs749q4hilsz253n45s25jjzw5p8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1MDYyYVx1MDY0Mlx1MDY0OFx1MDZjY1x1MDY0NSBcdTA2NDdcdTA2MmNcdTA2MzFcdTA2Y2MgXHUwNjM0XHUwNjQ1XHUwNjMzXHUwNmNjXHUwNjBjXHUwNjQyXHUwNjQ1XHUwNjMxXHUwNmNjIFx1MDY0OCBcdTA2NDVcdTA2Y2NcdTA2NDRcdTA2MjdcdTA2MmZcdTA2Y2MgXHUwNjJmXHUwNjMxIFx1MDY0NVx1MDZjY1x1MDYzMlx1MjAwY1x1MDZhOVx1MDYyN1x1MDYzMSBcdTA2YWZcdTA2NDZcdTA2NDhcdTA2NDUgXHUwNjQ0XHUwNmNjXHUwNjQ2XHUwNjQ4XHUwNmE5XHUwNjMzXG5cdTA2NDJcdTA2MjdcdTA2MjhcdTA2NDRcdTA2Y2NcdTA2MmEgXHUwNjQ2XHUwNjQ1XHUwNjI3XHUwNmNjXHUwNjM0IFx1MDYyN1x1MDY0OFx1MDY0Mlx1MDYyN1x1MDYyYSBcdTA2MzRcdTA2MzFcdTA2MzlcdTA2Y2MgXHUwNjQ4IFx1MDY3ZVx1MDYyZVx1MDYzNCBcdTA2MjdcdTA2MzBcdTA2MjdcdTA2NDZcblx1MDYyZlx1MDYzMVx1MDYyYyBcdTA2MmFcdTA2MzlcdTA2MzdcdTA2Y2NcdTA2NDRcdTA2Y2NcdTIwMGNcdTA2NDdcdTA2MjcgXHUwNjQ4IFx1MDY0NVx1MDY0Nlx1MDYyN1x1MDYzM1x1MDYyOFx1MDYyYVx1MjAwY1x1MDY0N1x1MDYyN1x1MDZjYyBcdTA2MzFcdTA2MzNcdTA2NDVcdTA2Y2MgXHUwNjJhXHUwNjQyXHUwNjQ4XHUwNmNjXHUwNjQ1XG5cdTA2MzJcdTA2MjhcdTA2MjdcdTA2NDYgXHUwNmE5XHUwNjI3XHUwNjQ1XHUwNjQ0XHUwNjI3XHUwNjRiIFx1MDY0MVx1MDYyN1x1MDYzMVx1MDYzM1x1MDZjY1xuXHUwNjJhXHUwNjI3XHUwNjMxXHUwNmNjXHUwNjJlIFx1MDY0Mlx1MDY0NVx1MDYzMVx1MDZjYyBcdTA2NDdcdTA2NDRcdTA2MjdcdTA2NDRcdTA2Y2MgXHUwNjI3XHUwNmNjXHUwNjMxXHUwNjI3XHUwNjQ2XG5cdTA2MzNcdTA2MjdcdTA2MzJcdTA2YWZcdTA2MjdcdTA2MzEgXHUwNjI4XHUwNjI3IFx1MDYyN1x1MDZhOVx1MDYyYlx1MDYzMSBcdTA2NDZcdTA2MzNcdTA2MmVcdTA2NDdcdTIwMGNcdTA2NDdcdTA2MjdcdTA2Y2MgXHUwNmFmXHUwNjQ2XHUwNjQ4XHUwNjQ1XG5cdTA2MmZcdTA2MzEgXHUwNjJkXHUwNjI3XHUwNjQ0IFx1MDYyYVx1MDY0OFx1MDYzM1x1MDYzOVx1MDY0Ny4uLlxuXG5TaG93cyBQZXJzaWFuICsgSXNsYW1pYyArIEdyZWdvcmlhbiBkYXRlIGluIHRoZSBwYW5lbCBvZiBnbm9tZS5cblxuSXQgc2hvd3M6XG4xLSBQZXJzaWFuIGNhbGVuZGFyXG4yLSBJdCBjYW4gc2hvdywgdG9kYXkgaXMgaG9saWRheSBvciBub3QhXG4zLSBTaG93IG5vdGlmaWNhdGlvbiBvbkRheUNoYW5nZWQhXG40LSBEYXRlIGNvbnZlcnRlciBiZXR3ZWVuIFBlcnNpYW4sIEdyZWdvcmlhbiBhbmQgTHVuYXIgSGlqcmkoSXNsYW1pYylcbjUtIFNob3cgY2FsZW5kYXIgRXZlbnRzLlxuNi0gU2hvdyBQcmF5VGltZXMgYW5kIHBsYXkgc291bmQgKEF6YW4pLlxuXG5QbGVhc2UgXCJyYXRlXCIgaGVyZSBhbmQgXCJzdGFyXCIgcHJvamVjdCBpbiBHaXRIdWIuXG5QbGVhc2Ugb3BlbiBhbiBpc3N1ZSBpbiBHaXRIdWIgaWYgeW91IGZvdW5kIHNvbWV0aGluZyBvciBoYXZlIGFuIGlkZWEhXG5cdTA2YWZcdTA2MzJcdTA2MjdcdTA2MzFcdTA2MzQgXHUwNjQ1XHUwNjM0XHUwNmE5XHUwNjQ0XHUwNjI3XHUwNjJhOlxuaHR0cHM6Ly9naXRodWIuY29tL1NDUi1JUi9nbm9tZS1zaGFtc2ktY2FsZW5kYXIvaXNzdWVzIiwKICAibmFtZSI6ICJJcmFuaWFuIFBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogImpkZi5zY3IuaXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Njci1pci9nbm9tZS1zaGFtc2ktY2FsZW5kYXIiLAogICJ1dWlkIjogInNoYW1zaS1jYWxlbmRhckBnbm9tZS5zY3IuaXIiLAogICJ2ZXJzaW9uIjogMTYKfQ=="}, "40": {"version": "16", "sha256": "1aqhj1lmwqy6wlbd105bl85grs749q4hilsz253n45s25jjzw5p8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1MDYyYVx1MDY0Mlx1MDY0OFx1MDZjY1x1MDY0NSBcdTA2NDdcdTA2MmNcdTA2MzFcdTA2Y2MgXHUwNjM0XHUwNjQ1XHUwNjMzXHUwNmNjXHUwNjBjXHUwNjQyXHUwNjQ1XHUwNjMxXHUwNmNjIFx1MDY0OCBcdTA2NDVcdTA2Y2NcdTA2NDRcdTA2MjdcdTA2MmZcdTA2Y2MgXHUwNjJmXHUwNjMxIFx1MDY0NVx1MDZjY1x1MDYzMlx1MjAwY1x1MDZhOVx1MDYyN1x1MDYzMSBcdTA2YWZcdTA2NDZcdTA2NDhcdTA2NDUgXHUwNjQ0XHUwNmNjXHUwNjQ2XHUwNjQ4XHUwNmE5XHUwNjMzXG5cdTA2NDJcdTA2MjdcdTA2MjhcdTA2NDRcdTA2Y2NcdTA2MmEgXHUwNjQ2XHUwNjQ1XHUwNjI3XHUwNmNjXHUwNjM0IFx1MDYyN1x1MDY0OFx1MDY0Mlx1MDYyN1x1MDYyYSBcdTA2MzRcdTA2MzFcdTA2MzlcdTA2Y2MgXHUwNjQ4IFx1MDY3ZVx1MDYyZVx1MDYzNCBcdTA2MjdcdTA2MzBcdTA2MjdcdTA2NDZcblx1MDYyZlx1MDYzMVx1MDYyYyBcdTA2MmFcdTA2MzlcdTA2MzdcdTA2Y2NcdTA2NDRcdTA2Y2NcdTIwMGNcdTA2NDdcdTA2MjcgXHUwNjQ4IFx1MDY0NVx1MDY0Nlx1MDYyN1x1MDYzM1x1MDYyOFx1MDYyYVx1MjAwY1x1MDY0N1x1MDYyN1x1MDZjYyBcdTA2MzFcdTA2MzNcdTA2NDVcdTA2Y2MgXHUwNjJhXHUwNjQyXHUwNjQ4XHUwNmNjXHUwNjQ1XG5cdTA2MzJcdTA2MjhcdTA2MjdcdTA2NDYgXHUwNmE5XHUwNjI3XHUwNjQ1XHUwNjQ0XHUwNjI3XHUwNjRiIFx1MDY0MVx1MDYyN1x1MDYzMVx1MDYzM1x1MDZjY1xuXHUwNjJhXHUwNjI3XHUwNjMxXHUwNmNjXHUwNjJlIFx1MDY0Mlx1MDY0NVx1MDYzMVx1MDZjYyBcdTA2NDdcdTA2NDRcdTA2MjdcdTA2NDRcdTA2Y2MgXHUwNjI3XHUwNmNjXHUwNjMxXHUwNjI3XHUwNjQ2XG5cdTA2MzNcdTA2MjdcdTA2MzJcdTA2YWZcdTA2MjdcdTA2MzEgXHUwNjI4XHUwNjI3IFx1MDYyN1x1MDZhOVx1MDYyYlx1MDYzMSBcdTA2NDZcdTA2MzNcdTA2MmVcdTA2NDdcdTIwMGNcdTA2NDdcdTA2MjdcdTA2Y2MgXHUwNmFmXHUwNjQ2XHUwNjQ4XHUwNjQ1XG5cdTA2MmZcdTA2MzEgXHUwNjJkXHUwNjI3XHUwNjQ0IFx1MDYyYVx1MDY0OFx1MDYzM1x1MDYzOVx1MDY0Ny4uLlxuXG5TaG93cyBQZXJzaWFuICsgSXNsYW1pYyArIEdyZWdvcmlhbiBkYXRlIGluIHRoZSBwYW5lbCBvZiBnbm9tZS5cblxuSXQgc2hvd3M6XG4xLSBQZXJzaWFuIGNhbGVuZGFyXG4yLSBJdCBjYW4gc2hvdywgdG9kYXkgaXMgaG9saWRheSBvciBub3QhXG4zLSBTaG93IG5vdGlmaWNhdGlvbiBvbkRheUNoYW5nZWQhXG40LSBEYXRlIGNvbnZlcnRlciBiZXR3ZWVuIFBlcnNpYW4sIEdyZWdvcmlhbiBhbmQgTHVuYXIgSGlqcmkoSXNsYW1pYylcbjUtIFNob3cgY2FsZW5kYXIgRXZlbnRzLlxuNi0gU2hvdyBQcmF5VGltZXMgYW5kIHBsYXkgc291bmQgKEF6YW4pLlxuXG5QbGVhc2UgXCJyYXRlXCIgaGVyZSBhbmQgXCJzdGFyXCIgcHJvamVjdCBpbiBHaXRIdWIuXG5QbGVhc2Ugb3BlbiBhbiBpc3N1ZSBpbiBHaXRIdWIgaWYgeW91IGZvdW5kIHNvbWV0aGluZyBvciBoYXZlIGFuIGlkZWEhXG5cdTA2YWZcdTA2MzJcdTA2MjdcdTA2MzFcdTA2MzQgXHUwNjQ1XHUwNjM0XHUwNmE5XHUwNjQ0XHUwNjI3XHUwNjJhOlxuaHR0cHM6Ly9naXRodWIuY29tL1NDUi1JUi9nbm9tZS1zaGFtc2ktY2FsZW5kYXIvaXNzdWVzIiwKICAibmFtZSI6ICJJcmFuaWFuIFBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogImpkZi5zY3IuaXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Njci1pci9nbm9tZS1zaGFtc2ktY2FsZW5kYXIiLAogICJ1dWlkIjogInNoYW1zaS1jYWxlbmRhckBnbm9tZS5zY3IuaXIiLAogICJ2ZXJzaW9uIjogMTYKfQ=="}, "41": {"version": "16", "sha256": "1aqhj1lmwqy6wlbd105bl85grs749q4hilsz253n45s25jjzw5p8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1MDYyYVx1MDY0Mlx1MDY0OFx1MDZjY1x1MDY0NSBcdTA2NDdcdTA2MmNcdTA2MzFcdTA2Y2MgXHUwNjM0XHUwNjQ1XHUwNjMzXHUwNmNjXHUwNjBjXHUwNjQyXHUwNjQ1XHUwNjMxXHUwNmNjIFx1MDY0OCBcdTA2NDVcdTA2Y2NcdTA2NDRcdTA2MjdcdTA2MmZcdTA2Y2MgXHUwNjJmXHUwNjMxIFx1MDY0NVx1MDZjY1x1MDYzMlx1MjAwY1x1MDZhOVx1MDYyN1x1MDYzMSBcdTA2YWZcdTA2NDZcdTA2NDhcdTA2NDUgXHUwNjQ0XHUwNmNjXHUwNjQ2XHUwNjQ4XHUwNmE5XHUwNjMzXG5cdTA2NDJcdTA2MjdcdTA2MjhcdTA2NDRcdTA2Y2NcdTA2MmEgXHUwNjQ2XHUwNjQ1XHUwNjI3XHUwNmNjXHUwNjM0IFx1MDYyN1x1MDY0OFx1MDY0Mlx1MDYyN1x1MDYyYSBcdTA2MzRcdTA2MzFcdTA2MzlcdTA2Y2MgXHUwNjQ4IFx1MDY3ZVx1MDYyZVx1MDYzNCBcdTA2MjdcdTA2MzBcdTA2MjdcdTA2NDZcblx1MDYyZlx1MDYzMVx1MDYyYyBcdTA2MmFcdTA2MzlcdTA2MzdcdTA2Y2NcdTA2NDRcdTA2Y2NcdTIwMGNcdTA2NDdcdTA2MjcgXHUwNjQ4IFx1MDY0NVx1MDY0Nlx1MDYyN1x1MDYzM1x1MDYyOFx1MDYyYVx1MjAwY1x1MDY0N1x1MDYyN1x1MDZjYyBcdTA2MzFcdTA2MzNcdTA2NDVcdTA2Y2MgXHUwNjJhXHUwNjQyXHUwNjQ4XHUwNmNjXHUwNjQ1XG5cdTA2MzJcdTA2MjhcdTA2MjdcdTA2NDYgXHUwNmE5XHUwNjI3XHUwNjQ1XHUwNjQ0XHUwNjI3XHUwNjRiIFx1MDY0MVx1MDYyN1x1MDYzMVx1MDYzM1x1MDZjY1xuXHUwNjJhXHUwNjI3XHUwNjMxXHUwNmNjXHUwNjJlIFx1MDY0Mlx1MDY0NVx1MDYzMVx1MDZjYyBcdTA2NDdcdTA2NDRcdTA2MjdcdTA2NDRcdTA2Y2MgXHUwNjI3XHUwNmNjXHUwNjMxXHUwNjI3XHUwNjQ2XG5cdTA2MzNcdTA2MjdcdTA2MzJcdTA2YWZcdTA2MjdcdTA2MzEgXHUwNjI4XHUwNjI3IFx1MDYyN1x1MDZhOVx1MDYyYlx1MDYzMSBcdTA2NDZcdTA2MzNcdTA2MmVcdTA2NDdcdTIwMGNcdTA2NDdcdTA2MjdcdTA2Y2MgXHUwNmFmXHUwNjQ2XHUwNjQ4XHUwNjQ1XG5cdTA2MmZcdTA2MzEgXHUwNjJkXHUwNjI3XHUwNjQ0IFx1MDYyYVx1MDY0OFx1MDYzM1x1MDYzOVx1MDY0Ny4uLlxuXG5TaG93cyBQZXJzaWFuICsgSXNsYW1pYyArIEdyZWdvcmlhbiBkYXRlIGluIHRoZSBwYW5lbCBvZiBnbm9tZS5cblxuSXQgc2hvd3M6XG4xLSBQZXJzaWFuIGNhbGVuZGFyXG4yLSBJdCBjYW4gc2hvdywgdG9kYXkgaXMgaG9saWRheSBvciBub3QhXG4zLSBTaG93IG5vdGlmaWNhdGlvbiBvbkRheUNoYW5nZWQhXG40LSBEYXRlIGNvbnZlcnRlciBiZXR3ZWVuIFBlcnNpYW4sIEdyZWdvcmlhbiBhbmQgTHVuYXIgSGlqcmkoSXNsYW1pYylcbjUtIFNob3cgY2FsZW5kYXIgRXZlbnRzLlxuNi0gU2hvdyBQcmF5VGltZXMgYW5kIHBsYXkgc291bmQgKEF6YW4pLlxuXG5QbGVhc2UgXCJyYXRlXCIgaGVyZSBhbmQgXCJzdGFyXCIgcHJvamVjdCBpbiBHaXRIdWIuXG5QbGVhc2Ugb3BlbiBhbiBpc3N1ZSBpbiBHaXRIdWIgaWYgeW91IGZvdW5kIHNvbWV0aGluZyBvciBoYXZlIGFuIGlkZWEhXG5cdTA2YWZcdTA2MzJcdTA2MjdcdTA2MzFcdTA2MzQgXHUwNjQ1XHUwNjM0XHUwNmE5XHUwNjQ0XHUwNjI3XHUwNjJhOlxuaHR0cHM6Ly9naXRodWIuY29tL1NDUi1JUi9nbm9tZS1zaGFtc2ktY2FsZW5kYXIvaXNzdWVzIiwKICAibmFtZSI6ICJJcmFuaWFuIFBlcnNpYW4gQ2FsZW5kYXIiLAogICJvcmlnaW5hbC1hdXRob3JzIjogImpkZi5zY3IuaXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Njci1pci9nbm9tZS1zaGFtc2ktY2FsZW5kYXIiLAogICJ1dWlkIjogInNoYW1zaS1jYWxlbmRhckBnbm9tZS5zY3IuaXIiLAogICJ2ZXJzaW9uIjogMTYKfQ=="}}}
 , {"uuid": "tunnel-indicator@atareao.es", "name": "Tunnel Indicator", "pname": "tunnel-indicator", "description": "Manage SSH Tunnels from Desktop", "link": "https://extensions.gnome.org/extension/3622/tunnel-indicator/", "shell_version_map": {"40": {"version": "2", "sha256": "0ma4a711mgjxyhy4d21p2m7wvbnmmwlfdsf6xk9i36ranjcqs9as", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hbmFnZSBTU0ggVHVubmVscyBmcm9tIERlc2t0b3AiLAogICJleHRlbnNpb24taWQiOiAidHVubmVsLWluZGljYXRvckBhdGFyZWFvLmVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAidHVubmVsLWluZGljYXRvckBhdGFyZWFvLmVzIiwKICAiaWNvbiI6ICJ0dW5uZWwtaWNvbiIsCiAgIm5hbWUiOiAiVHVubmVsIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJlcy5hdGFyZWFvLnR1bm5lbC1pbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXRhcmVhby90dW5uZWwtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJ0dW5uZWwtaW5kaWNhdG9yQGF0YXJlYW8uZXMiLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"uuid": "arcmenu@arcmenu.com", "name": "ArcMenu", "pname": "arcmenu", "description": "Application Menu for GNOME, with various layouts to choose from!\n\nSupports GNOME shell 3.36, 3.38, 40, and 41.\n\nFor older GNOME shell versions visit https://extensions.gnome.org/extension/1228/arc-menu/\n\nCommon solutions for ERROR message:\n-Restart your GNOME session after updating ArcMenu.\n-Install one of the following packages: 'gir1.2-gmenu-3.0' or 'gnome-menus'\n\nGeneral Help:\n-Visit https://gitlab.com/arcmenu/ArcMenu/-/wikis/home\n\nPlease report all bugs or issues at https://gitlab.com/arcmenu/ArcMenu", "link": "https://extensions.gnome.org/extension/3628/arcmenu/", "shell_version_map": {"38": {"version": "17", "sha256": "0llq0zkvgxarr30s304n1ilidbwc0kx4l2impby5y2sdsvr7zafv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIE1lbnUgZm9yIEdOT01FLCB3aXRoIHZhcmlvdXMgbGF5b3V0cyB0byBjaG9vc2UgZnJvbSFcblxuU3VwcG9ydHMgR05PTUUgc2hlbGwgMy4zNiwgMy4zOCwgNDAsIGFuZCA0MS5cblxuRm9yIG9sZGVyIEdOT01FIHNoZWxsIHZlcnNpb25zIHZpc2l0IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzEyMjgvYXJjLW1lbnUvXG5cbkNvbW1vbiBzb2x1dGlvbnMgZm9yIEVSUk9SIG1lc3NhZ2U6XG4tUmVzdGFydCB5b3VyIEdOT01FIHNlc3Npb24gYWZ0ZXIgdXBkYXRpbmcgQXJjTWVudS5cbi1JbnN0YWxsIG9uZSBvZiB0aGUgZm9sbG93aW5nIHBhY2thZ2VzOiAnZ2lyMS4yLWdtZW51LTMuMCcgb3IgJ2dub21lLW1lbnVzJ1xuXG5HZW5lcmFsIEhlbHA6XG4tVmlzaXQgaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudS8tL3dpa2lzL2hvbWVcblxuUGxlYXNlIHJlcG9ydCBhbGwgYnVncyBvciBpc3N1ZXMgYXQgaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudSIsCiAgImV4dGVuc2lvbi1pZCI6ICJhcmNtZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYXJjbWVudSIsCiAgIm5hbWUiOiAiQXJjTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hcmNtZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51IiwKICAidXVpZCI6ICJhcmNtZW51QGFyY21lbnUuY29tIiwKICAidmVyc2lvbiI6IDE3Cn0="}, "40": {"version": "24", "sha256": "138ppya5gpf279lyxks0j5xl4plmfg43rp8y6037amb2ik8nca1q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIE1lbnUgZm9yIEdOT01FLCB3aXRoIHZhcmlvdXMgbGF5b3V0cyB0byBjaG9vc2UgZnJvbSFcblxuU3VwcG9ydHMgR05PTUUgc2hlbGwgMy4zNiwgMy4zOCwgNDAsIGFuZCA0MS5cblxuRm9yIG9sZGVyIEdOT01FIHNoZWxsIHZlcnNpb25zIHZpc2l0IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzEyMjgvYXJjLW1lbnUvXG5cbkNvbW1vbiBzb2x1dGlvbnMgZm9yIEVSUk9SIG1lc3NhZ2U6XG4tUmVzdGFydCB5b3VyIEdOT01FIHNlc3Npb24gYWZ0ZXIgdXBkYXRpbmcgQXJjTWVudS5cbi1JbnN0YWxsIG9uZSBvZiB0aGUgZm9sbG93aW5nIHBhY2thZ2VzOiAnZ2lyMS4yLWdtZW51LTMuMCcgb3IgJ2dub21lLW1lbnVzJ1xuXG5HZW5lcmFsIEhlbHA6XG4tVmlzaXQgaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudS8tL3dpa2lzL2hvbWVcblxuUGxlYXNlIHJlcG9ydCBhbGwgYnVncyBvciBpc3N1ZXMgYXQgaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudSIsCiAgImV4dGVuc2lvbi1pZCI6ICJhcmNtZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYXJjbWVudSIsCiAgIm5hbWUiOiAiQXJjTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hcmNtZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUiLAogICJ1dWlkIjogImFyY21lbnVAYXJjbWVudS5jb20iLAogICJ2ZXJzaW9uIjogMjQKfQ=="}, "41": {"version": "24", "sha256": "138ppya5gpf279lyxks0j5xl4plmfg43rp8y6037amb2ik8nca1q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcGxpY2F0aW9uIE1lbnUgZm9yIEdOT01FLCB3aXRoIHZhcmlvdXMgbGF5b3V0cyB0byBjaG9vc2UgZnJvbSFcblxuU3VwcG9ydHMgR05PTUUgc2hlbGwgMy4zNiwgMy4zOCwgNDAsIGFuZCA0MS5cblxuRm9yIG9sZGVyIEdOT01FIHNoZWxsIHZlcnNpb25zIHZpc2l0IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzEyMjgvYXJjLW1lbnUvXG5cbkNvbW1vbiBzb2x1dGlvbnMgZm9yIEVSUk9SIG1lc3NhZ2U6XG4tUmVzdGFydCB5b3VyIEdOT01FIHNlc3Npb24gYWZ0ZXIgdXBkYXRpbmcgQXJjTWVudS5cbi1JbnN0YWxsIG9uZSBvZiB0aGUgZm9sbG93aW5nIHBhY2thZ2VzOiAnZ2lyMS4yLWdtZW51LTMuMCcgb3IgJ2dub21lLW1lbnVzJ1xuXG5HZW5lcmFsIEhlbHA6XG4tVmlzaXQgaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudS8tL3dpa2lzL2hvbWVcblxuUGxlYXNlIHJlcG9ydCBhbGwgYnVncyBvciBpc3N1ZXMgYXQgaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudSIsCiAgImV4dGVuc2lvbi1pZCI6ICJhcmNtZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYXJjbWVudSIsCiAgIm5hbWUiOiAiQXJjTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hcmNtZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUiLAogICJ1dWlkIjogImFyY21lbnVAYXJjbWVudS5jb20iLAogICJ2ZXJzaW9uIjogMjQKfQ=="}}}
+, {"uuid": "arcmenu@arcmenu.com", "name": "ArcMenu", "pname": "arcmenu", "description": "ArcMenu is an application menu for GNOME Shell, designed to provide a more familiar user experience and workflow.\n\nFeatures include: numerous menu layouts to choose from, built in GNOME search, quick access to system shortcuts, and much more!\n\nCommon solutions for ERROR message:\n - Restart your GNOME session after updating ArcMenu.\n - Install one of the following packages: 'gir1.2-gmenu-3.0' or 'gnome-menus'\n\nGeneral Help:\n - Visit https://gitlab.com/arcmenu/ArcMenu/-/wikis/home\n\nPlease report all bugs or issues at https://gitlab.com/arcmenu/ArcMenu", "link": "https://extensions.gnome.org/extension/3628/arcmenu/", "shell_version_map": {"38": {"version": "17", "sha256": "14waq244pzfcbs2vd63s87x29hb61nvrwx50yikx4q6k01w35v83", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFyY01lbnUgaXMgYW4gYXBwbGljYXRpb24gbWVudSBmb3IgR05PTUUgU2hlbGwsIGRlc2lnbmVkIHRvIHByb3ZpZGUgYSBtb3JlIGZhbWlsaWFyIHVzZXIgZXhwZXJpZW5jZSBhbmQgd29ya2Zsb3cuXG5cbkZlYXR1cmVzIGluY2x1ZGU6IG51bWVyb3VzIG1lbnUgbGF5b3V0cyB0byBjaG9vc2UgZnJvbSwgYnVpbHQgaW4gR05PTUUgc2VhcmNoLCBxdWljayBhY2Nlc3MgdG8gc3lzdGVtIHNob3J0Y3V0cywgYW5kIG11Y2ggbW9yZSFcblxuQ29tbW9uIHNvbHV0aW9ucyBmb3IgRVJST1IgbWVzc2FnZTpcbiAtIFJlc3RhcnQgeW91ciBHTk9NRSBzZXNzaW9uIGFmdGVyIHVwZGF0aW5nIEFyY01lbnUuXG4gLSBJbnN0YWxsIG9uZSBvZiB0aGUgZm9sbG93aW5nIHBhY2thZ2VzOiAnZ2lyMS4yLWdtZW51LTMuMCcgb3IgJ2dub21lLW1lbnVzJ1xuXG5HZW5lcmFsIEhlbHA6XG4gLSBWaXNpdCBodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51Ly0vd2lraXMvaG9tZVxuXG5QbGVhc2UgcmVwb3J0IGFsbCBidWdzIG9yIGlzc3VlcyBhdCBodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51IiwKICAiZXh0ZW5zaW9uLWlkIjogImFyY21lbnUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhcmNtZW51IiwKICAibmFtZSI6ICJBcmNNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFyY21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9hcmNtZW51L0FyY01lbnUiLAogICJ1dWlkIjogImFyY21lbnVAYXJjbWVudS5jb20iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "40": {"version": "27", "sha256": "11jf6jlfaff479z1in3vnjxz19bfjczrhlix90y2w61kvs708g88", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFyY01lbnUgaXMgYW4gYXBwbGljYXRpb24gbWVudSBmb3IgR05PTUUgU2hlbGwsIGRlc2lnbmVkIHRvIHByb3ZpZGUgYSBtb3JlIGZhbWlsaWFyIHVzZXIgZXhwZXJpZW5jZSBhbmQgd29ya2Zsb3cuXG5cbkZlYXR1cmVzIGluY2x1ZGU6IG51bWVyb3VzIG1lbnUgbGF5b3V0cyB0byBjaG9vc2UgZnJvbSwgYnVpbHQgaW4gR05PTUUgc2VhcmNoLCBxdWljayBhY2Nlc3MgdG8gc3lzdGVtIHNob3J0Y3V0cywgYW5kIG11Y2ggbW9yZSFcblxuQ29tbW9uIHNvbHV0aW9ucyBmb3IgRVJST1IgbWVzc2FnZTpcbiAtIFJlc3RhcnQgeW91ciBHTk9NRSBzZXNzaW9uIGFmdGVyIHVwZGF0aW5nIEFyY01lbnUuXG4gLSBJbnN0YWxsIG9uZSBvZiB0aGUgZm9sbG93aW5nIHBhY2thZ2VzOiAnZ2lyMS4yLWdtZW51LTMuMCcgb3IgJ2dub21lLW1lbnVzJ1xuXG5HZW5lcmFsIEhlbHA6XG4gLSBWaXNpdCBodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51Ly0vd2lraXMvaG9tZVxuXG5QbGVhc2UgcmVwb3J0IGFsbCBidWdzIG9yIGlzc3VlcyBhdCBodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51IiwKICAiZXh0ZW5zaW9uLWlkIjogImFyY21lbnUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhcmNtZW51IiwKICAibmFtZSI6ICJBcmNNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFyY21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudSIsCiAgInV1aWQiOiAiYXJjbWVudUBhcmNtZW51LmNvbSIsCiAgInZlcnNpb24iOiAyNwp9"}, "41": {"version": "27", "sha256": "11jf6jlfaff479z1in3vnjxz19bfjczrhlix90y2w61kvs708g88", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFyY01lbnUgaXMgYW4gYXBwbGljYXRpb24gbWVudSBmb3IgR05PTUUgU2hlbGwsIGRlc2lnbmVkIHRvIHByb3ZpZGUgYSBtb3JlIGZhbWlsaWFyIHVzZXIgZXhwZXJpZW5jZSBhbmQgd29ya2Zsb3cuXG5cbkZlYXR1cmVzIGluY2x1ZGU6IG51bWVyb3VzIG1lbnUgbGF5b3V0cyB0byBjaG9vc2UgZnJvbSwgYnVpbHQgaW4gR05PTUUgc2VhcmNoLCBxdWljayBhY2Nlc3MgdG8gc3lzdGVtIHNob3J0Y3V0cywgYW5kIG11Y2ggbW9yZSFcblxuQ29tbW9uIHNvbHV0aW9ucyBmb3IgRVJST1IgbWVzc2FnZTpcbiAtIFJlc3RhcnQgeW91ciBHTk9NRSBzZXNzaW9uIGFmdGVyIHVwZGF0aW5nIEFyY01lbnUuXG4gLSBJbnN0YWxsIG9uZSBvZiB0aGUgZm9sbG93aW5nIHBhY2thZ2VzOiAnZ2lyMS4yLWdtZW51LTMuMCcgb3IgJ2dub21lLW1lbnVzJ1xuXG5HZW5lcmFsIEhlbHA6XG4gLSBWaXNpdCBodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51Ly0vd2lraXMvaG9tZVxuXG5QbGVhc2UgcmVwb3J0IGFsbCBidWdzIG9yIGlzc3VlcyBhdCBodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51IiwKICAiZXh0ZW5zaW9uLWlkIjogImFyY21lbnUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhcmNtZW51IiwKICAibmFtZSI6ICJBcmNNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFyY21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2FyY21lbnUvQXJjTWVudSIsCiAgInV1aWQiOiAiYXJjbWVudUBhcmNtZW51LmNvbSIsCiAgInZlcnNpb24iOiAyNwp9"}, "42": {"version": "28", "sha256": "1j1zj320zr4ga08526plpyr9yv1hwim2cp153shfc11dc1w3nf58", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFyY01lbnUgaXMgYW4gYXBwbGljYXRpb24gbWVudSBmb3IgR05PTUUgU2hlbGwsIGRlc2lnbmVkIHRvIHByb3ZpZGUgYSBtb3JlIGZhbWlsaWFyIHVzZXIgZXhwZXJpZW5jZSBhbmQgd29ya2Zsb3cuXG5cbkZlYXR1cmVzIGluY2x1ZGU6IG51bWVyb3VzIG1lbnUgbGF5b3V0cyB0byBjaG9vc2UgZnJvbSwgYnVpbHQgaW4gR05PTUUgc2VhcmNoLCBxdWljayBhY2Nlc3MgdG8gc3lzdGVtIHNob3J0Y3V0cywgYW5kIG11Y2ggbW9yZSFcblxuQ29tbW9uIHNvbHV0aW9ucyBmb3IgRVJST1IgbWVzc2FnZTpcbiAtIFJlc3RhcnQgeW91ciBHTk9NRSBzZXNzaW9uIGFmdGVyIHVwZGF0aW5nIEFyY01lbnUuXG4gLSBJbnN0YWxsIG9uZSBvZiB0aGUgZm9sbG93aW5nIHBhY2thZ2VzOiAnZ2lyMS4yLWdtZW51LTMuMCcgb3IgJ2dub21lLW1lbnVzJ1xuXG5HZW5lcmFsIEhlbHA6XG4gLSBWaXNpdCBodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51Ly0vd2lraXMvaG9tZVxuXG5QbGVhc2UgcmVwb3J0IGFsbCBidWdzIG9yIGlzc3VlcyBhdCBodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51IiwKICAiZXh0ZW5zaW9uLWlkIjogImFyY21lbnUiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJhcmNtZW51IiwKICAibmFtZSI6ICJBcmNNZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFyY21lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYXJjbWVudS9BcmNNZW51IiwKICAidXVpZCI6ICJhcmNtZW51QGFyY21lbnUuY29tIiwKICAidmVyc2lvbiI6IDI4Cn0="}}}
 , {"uuid": "fixedimelist@alynx.one", "name": "Fixed IME List", "pname": "fixed-ime-list", "description": "Make the IME list in fixed sequence instead of MRU.", "link": "https://extensions.gnome.org/extension/3663/fixed-ime-list/", "shell_version_map": {"38": {"version": "6", "sha256": "0v99flnb23cjv32wr7r077q29jvgs7j5fjx6dc6qm2n04f1qiibz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIElNRSBsaXN0IGluIGZpeGVkIHNlcXVlbmNlIGluc3RlYWQgb2YgTVJVLiIsCiAgIm5hbWUiOiAiRml4ZWQgSU1FIExpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQWx5bnhaaG91L2dub21lLXNoZWxsLWV4dGVuc2lvbi1maXhlZC1pbWUtbGlzdC8iLAogICJ1dWlkIjogImZpeGVkaW1lbGlzdEBhbHlueC5vbmUiLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "0v99flnb23cjv32wr7r077q29jvgs7j5fjx6dc6qm2n04f1qiibz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIElNRSBsaXN0IGluIGZpeGVkIHNlcXVlbmNlIGluc3RlYWQgb2YgTVJVLiIsCiAgIm5hbWUiOiAiRml4ZWQgSU1FIExpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQWx5bnhaaG91L2dub21lLXNoZWxsLWV4dGVuc2lvbi1maXhlZC1pbWUtbGlzdC8iLAogICJ1dWlkIjogImZpeGVkaW1lbGlzdEBhbHlueC5vbmUiLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "topindicatorapp@quiro9.com", "name": "Top Indicator App", "pname": "top-indicator-app", "description": "This extension is 'appindicators' from ubuntu, renamed 'top indicator app' under the terms of the GPL v2 +. it is the extension itself that Ubuntu offers as a native experience on your system, but so you can install it in other distros since the current one in gnome-extensions is empty.I will offer stable updates when possible.", "link": "https://extensions.gnome.org/extension/3681/top-indicator-app/", "shell_version_map": {"38": {"version": "2", "sha256": "12r4fxgsgd7jn001vlzqrsd86ci62zxk0b9p3bkdqh6g5hj3la35", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGlzICdhcHBpbmRpY2F0b3JzJyBmcm9tIHVidW50dSwgcmVuYW1lZCAndG9wIGluZGljYXRvciBhcHAnIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR1BMIHYyICsuIGl0IGlzIHRoZSBleHRlbnNpb24gaXRzZWxmIHRoYXQgVWJ1bnR1IG9mZmVycyBhcyBhIG5hdGl2ZSBleHBlcmllbmNlIG9uIHlvdXIgc3lzdGVtLCBidXQgc28geW91IGNhbiBpbnN0YWxsIGl0IGluIG90aGVyIGRpc3Ryb3Mgc2luY2UgdGhlIGN1cnJlbnQgb25lIGluIGdub21lLWV4dGVuc2lvbnMgaXMgZW1wdHkuSSB3aWxsIG9mZmVyIHN0YWJsZSB1cGRhdGVzIHdoZW4gcG9zc2libGUuIiwKICAibmFtZSI6ICJUb3AgSW5kaWNhdG9yIEFwcCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3VidW50dS9nbm9tZS1zaGVsbC1leHRlbnNpb24tYXBwaW5kaWNhdG9yIiwKICAidXVpZCI6ICJ0b3BpbmRpY2F0b3JhcHBAcXVpcm85LmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "reorder-workspaces@jer.dev", "name": "Reorder Workspaces", "pname": "reorder-workspaces", "description": "Move workspaces up or down in the overview with Alt+Up/Alt+Down", "link": "https://extensions.gnome.org/extension/3685/reorder-workspaces/", "shell_version_map": {"38": {"version": "6", "sha256": "1f0hl2dzl75dwcv8jzx3rk1laqd9y9m32g219nvbhsmk8rjxfc31", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgd29ya3NwYWNlcyB1cCBvciBkb3duIGluIHRoZSBvdmVydmlldyB3aXRoIEFsdCtVcC9BbHQrRG93biIsCiAgIm5hbWUiOiAiUmVvcmRlciBXb3Jrc3BhY2VzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnJlb3JkZXItd29ya3NwYWNlcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2plcmVtaWFobWVnZWwvZ25vbWUtcmVvcmRlci13b3Jrc3BhY2VzIiwKICAidXVpZCI6ICJyZW9yZGVyLXdvcmtzcGFjZXNAamVyLmRldiIsCiAgInZlcnNpb24iOiA2Cn0="}}}
@@ -377,8 +377,8 @@
 , {"uuid": "floating-dock@nandoferreira_prof@hotmail.com", "name": "Floating Dock", "pname": "floating-dock", "description": "A Custom Floating Dock fork, now you can change the margin and border radius of the dock.", "link": "https://extensions.gnome.org/extension/3730/floating-dock/", "shell_version_map": {"38": {"version": "1", "sha256": "0giksm5fvrj412v8xnf2hi4s0yi2mqd9prd84npv8jxkfv78y414", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgQ3VzdG9tIEZsb2F0aW5nIERvY2sgZm9yaywgbm93IHlvdSBjYW4gY2hhbmdlIHRoZSBtYXJnaW4gYW5kIGJvcmRlciByYWRpdXMgb2YgdGhlIGRvY2suIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZmxvYXRpbmdkb2NrIiwKICAibmFtZSI6ICJGbG9hdGluZyBEb2NrIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIm5hbmRvZmVycmVpcmFfcHJvZkBob3RtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Zlci1tb3JlaXJhL2Zsb2F0aW5nLWRvY2siLAogICJ1dWlkIjogImZsb2F0aW5nLWRvY2tAbmFuZG9mZXJyZWlyYV9wcm9mQGhvdG1haWwuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}, "40": {"version": "4", "sha256": "0ca22s5vbs6d32ppikmg0xcf5335qmighq6cpvly51q44hlqjamg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgQ3VzdG9tIEZsb2F0aW5nIERvY2sgZm9yaywgbm93IHlvdSBjYW4gY2hhbmdlIHRoZSBtYXJnaW4gYW5kIGJvcmRlciByYWRpdXMgb2YgdGhlIGRvY2suIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZmxvYXRpbmdkb2NrIiwKICAibmFtZSI6ICJGbG9hdGluZyBEb2NrIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIm1pY3hneEBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Zlci1tb3JlaXJhL2Zsb2F0aW5nLWRvY2siLAogICJ1dWlkIjogImZsb2F0aW5nLWRvY2tAbmFuZG9mZXJyZWlyYV9wcm9mQGhvdG1haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "0ca22s5vbs6d32ppikmg0xcf5335qmighq6cpvly51q44hlqjamg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgQ3VzdG9tIEZsb2F0aW5nIERvY2sgZm9yaywgbm93IHlvdSBjYW4gY2hhbmdlIHRoZSBtYXJnaW4gYW5kIGJvcmRlciByYWRpdXMgb2YgdGhlIGRvY2suIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZmxvYXRpbmdkb2NrIiwKICAibmFtZSI6ICJGbG9hdGluZyBEb2NrIiwKICAib3JpZ2luYWwtYXV0aG9yIjogIm1pY3hneEBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Zlci1tb3JlaXJhL2Zsb2F0aW5nLWRvY2siLAogICJ1dWlkIjogImZsb2F0aW5nLWRvY2tAbmFuZG9mZXJyZWlyYV9wcm9mQGhvdG1haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "tiling-assistant@leleat-on-github", "name": "Tiling Assistant", "pname": "tiling-assistant", "description": "Expand GNOME's 2 column tiling and add a Windows-snap-assist-inspired popup...", "link": "https://extensions.gnome.org/extension/3733/tiling-assistant/", "shell_version_map": {"38": {"version": "23", "sha256": "1b9hpll26ggwhw4f52wgflzjfqksmyfy5wyg1rpz41lr1dmva8vk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4cGFuZCBHTk9NRSdzIDIgY29sdW1uIHRpbGluZyBhbmQgYWRkIGEgV2luZG93cy1zbmFwLWFzc2lzdC1pbnNwaXJlZCBwb3B1cC4uLiIsCiAgIm5hbWUiOiAiVGlsaW5nIEFzc2lzdGFudCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTGVsZWF0L1RpbGluZy1Bc3Npc3RhbnQiLAogICJ1dWlkIjogInRpbGluZy1hc3Npc3RhbnRAbGVsZWF0LW9uLWdpdGh1YiIsCiAgInZlcnNpb24iOiAyMwp9"}, "40": {"version": "32", "sha256": "14kvgygfia1961i4v933bg7j2l4mzy7hv7f53sc5giwpmcsj3b5v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4cGFuZCBHTk9NRSdzIDIgY29sdW1uIHRpbGluZyBhbmQgYWRkIGEgV2luZG93cy1zbmFwLWFzc2lzdC1pbnNwaXJlZCBwb3B1cC4uLiIsCiAgIm5hbWUiOiAiVGlsaW5nIEFzc2lzdGFudCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50aWxpbmctYXNzaXN0YW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MZWxlYXQvVGlsaW5nLUFzc2lzdGFudCIsCiAgInV1aWQiOiAidGlsaW5nLWFzc2lzdGFudEBsZWxlYXQtb24tZ2l0aHViIiwKICAidmVyc2lvbiI6IDMyCn0="}, "41": {"version": "32", "sha256": "14kvgygfia1961i4v933bg7j2l4mzy7hv7f53sc5giwpmcsj3b5v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4cGFuZCBHTk9NRSdzIDIgY29sdW1uIHRpbGluZyBhbmQgYWRkIGEgV2luZG93cy1zbmFwLWFzc2lzdC1pbnNwaXJlZCBwb3B1cC4uLiIsCiAgIm5hbWUiOiAiVGlsaW5nIEFzc2lzdGFudCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy50aWxpbmctYXNzaXN0YW50IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MZWxlYXQvVGlsaW5nLUFzc2lzdGFudCIsCiAgInV1aWQiOiAidGlsaW5nLWFzc2lzdGFudEBsZWxlYXQtb24tZ2l0aHViIiwKICAidmVyc2lvbiI6IDMyCn0="}}}
 , {"uuid": "airpods-battery-status@ju.wtf", "name": "Airpods Battery status", "pname": "airpods-battery-status", "description": "Show Airpods battery level in top bar\n\n/!\\ Needs AirStatus to work: https://github.com/delphiki/AirStatus", "link": "https://extensions.gnome.org/extension/3736/airpods-battery-status/", "shell_version_map": {"38": {"version": "6", "sha256": "1ahvqcmcy3n8h66svryi77pm4n86qrcpkqilv5n3avv5bxn3v5d0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgQWlycG9kcyBiYXR0ZXJ5IGxldmVsIGluIHRvcCBiYXJcblxuLyFcXCBOZWVkcyBBaXJTdGF0dXMgdG8gd29yazogaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL0FpclN0YXR1cyIsCiAgIm5hbWUiOiAiQWlycG9kcyBCYXR0ZXJ5IHN0YXR1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVscGhpa2kvZ25vbWUtYWlycG9kcy1iYXR0ZXJ5LXN0YXR1cyIsCiAgInV1aWQiOiAiYWlycG9kcy1iYXR0ZXJ5LXN0YXR1c0BqdS53dGYiLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "1ahvqcmcy3n8h66svryi77pm4n86qrcpkqilv5n3avv5bxn3v5d0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgQWlycG9kcyBiYXR0ZXJ5IGxldmVsIGluIHRvcCBiYXJcblxuLyFcXCBOZWVkcyBBaXJTdGF0dXMgdG8gd29yazogaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL0FpclN0YXR1cyIsCiAgIm5hbWUiOiAiQWlycG9kcyBCYXR0ZXJ5IHN0YXR1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVscGhpa2kvZ25vbWUtYWlycG9kcy1iYXR0ZXJ5LXN0YXR1cyIsCiAgInV1aWQiOiAiYWlycG9kcy1iYXR0ZXJ5LXN0YXR1c0BqdS53dGYiLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "1ahvqcmcy3n8h66svryi77pm4n86qrcpkqilv5n3avv5bxn3v5d0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgQWlycG9kcyBiYXR0ZXJ5IGxldmVsIGluIHRvcCBiYXJcblxuLyFcXCBOZWVkcyBBaXJTdGF0dXMgdG8gd29yazogaHR0cHM6Ly9naXRodWIuY29tL2RlbHBoaWtpL0FpclN0YXR1cyIsCiAgIm5hbWUiOiAiQWlycG9kcyBCYXR0ZXJ5IHN0YXR1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGVscGhpa2kvZ25vbWUtYWlycG9kcy1iYXR0ZXJ5LXN0YXR1cyIsCiAgInV1aWQiOiAiYWlycG9kcy1iYXR0ZXJ5LXN0YXR1c0BqdS53dGYiLAogICJ2ZXJzaW9uIjogNgp9"}}}
-, {"uuid": "hue-lights@chlumskyvaclav.gmail.com", "name": "Hue Lights", "pname": "hue-lights", "description": "Glory to Ukraine! 🇺🇦 This extension controls Philips Hue compatible lights using Philips Hue Bridge on your local network, it also allows controlling Philips Hue Sync Box. If you are experiencing an error on the upgrade, please log out and log in again.", "link": "https://extensions.gnome.org/extension/3737/hue-lights/", "shell_version_map": {"38": {"version": "20", "sha256": "1iffi76fwnwxnnc08k0wwh4k2dy1lan4kdnwx54wblj04q3vcs48", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdsb3J5IHRvIFVrcmFpbmUhIFx1ZDgzY1x1ZGRmYVx1ZDgzY1x1ZGRlNiBUaGlzIGV4dGVuc2lvbiBjb250cm9scyBQaGlsaXBzIEh1ZSBjb21wYXRpYmxlIGxpZ2h0cyB1c2luZyBQaGlsaXBzIEh1ZSBCcmlkZ2Ugb24geW91ciBsb2NhbCBuZXR3b3JrLCBpdCBhbHNvIGFsbG93cyBjb250cm9sbGluZyBQaGlsaXBzIEh1ZSBTeW5jIEJveC4gSWYgeW91IGFyZSBleHBlcmllbmNpbmcgYW4gZXJyb3Igb24gdGhlIHVwZ3JhZGUsIHBsZWFzZSBsb2cgb3V0IGFuZCBsb2cgaW4gYWdhaW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaHVlLWxpZ2h0cyIsCiAgIm5hbWUiOiAiSHVlIExpZ2h0cyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZjaGx1bS9odWUtbGlnaHRzIiwKICAidXVpZCI6ICJodWUtbGlnaHRzQGNobHVtc2t5dmFjbGF2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyMAp9"}, "40": {"version": "20", "sha256": "1iffi76fwnwxnnc08k0wwh4k2dy1lan4kdnwx54wblj04q3vcs48", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdsb3J5IHRvIFVrcmFpbmUhIFx1ZDgzY1x1ZGRmYVx1ZDgzY1x1ZGRlNiBUaGlzIGV4dGVuc2lvbiBjb250cm9scyBQaGlsaXBzIEh1ZSBjb21wYXRpYmxlIGxpZ2h0cyB1c2luZyBQaGlsaXBzIEh1ZSBCcmlkZ2Ugb24geW91ciBsb2NhbCBuZXR3b3JrLCBpdCBhbHNvIGFsbG93cyBjb250cm9sbGluZyBQaGlsaXBzIEh1ZSBTeW5jIEJveC4gSWYgeW91IGFyZSBleHBlcmllbmNpbmcgYW4gZXJyb3Igb24gdGhlIHVwZ3JhZGUsIHBsZWFzZSBsb2cgb3V0IGFuZCBsb2cgaW4gYWdhaW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaHVlLWxpZ2h0cyIsCiAgIm5hbWUiOiAiSHVlIExpZ2h0cyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZjaGx1bS9odWUtbGlnaHRzIiwKICAidXVpZCI6ICJodWUtbGlnaHRzQGNobHVtc2t5dmFjbGF2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyMAp9"}, "41": {"version": "20", "sha256": "1iffi76fwnwxnnc08k0wwh4k2dy1lan4kdnwx54wblj04q3vcs48", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdsb3J5IHRvIFVrcmFpbmUhIFx1ZDgzY1x1ZGRmYVx1ZDgzY1x1ZGRlNiBUaGlzIGV4dGVuc2lvbiBjb250cm9scyBQaGlsaXBzIEh1ZSBjb21wYXRpYmxlIGxpZ2h0cyB1c2luZyBQaGlsaXBzIEh1ZSBCcmlkZ2Ugb24geW91ciBsb2NhbCBuZXR3b3JrLCBpdCBhbHNvIGFsbG93cyBjb250cm9sbGluZyBQaGlsaXBzIEh1ZSBTeW5jIEJveC4gSWYgeW91IGFyZSBleHBlcmllbmNpbmcgYW4gZXJyb3Igb24gdGhlIHVwZ3JhZGUsIHBsZWFzZSBsb2cgb3V0IGFuZCBsb2cgaW4gYWdhaW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaHVlLWxpZ2h0cyIsCiAgIm5hbWUiOiAiSHVlIExpZ2h0cyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZjaGx1bS9odWUtbGlnaHRzIiwKICAidXVpZCI6ICJodWUtbGlnaHRzQGNobHVtc2t5dmFjbGF2LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyMAp9"}}}
-, {"uuid": "compiz-alike-magic-lamp-effect@hermes83.github.com", "name": "Compiz alike magic lamp effect", "pname": "compiz-alike-magic-lamp-effect", "description": "Magic lamp effect inspired by the Compiz ones\n\nNB:\nIn case of update error please restart Gnome Shell (on Xorg press ALT+F2 then write r and press enter, on Wayland end the session and log in again)", "link": "https://extensions.gnome.org/extension/3740/compiz-alike-magic-lamp-effect/", "shell_version_map": {"38": {"version": "11", "sha256": "1ffki7rmdxrz3xr285jnlyxp1a4h6h4q17y4dj3c8p64hy145yyp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGVybWVzODMvY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0IiwKICAidXVpZCI6ICJjb21waXotYWxpa2UtbWFnaWMtbGFtcC1lZmZlY3RAaGVybWVzODMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}, "40": {"version": "11", "sha256": "1ffki7rmdxrz3xr285jnlyxp1a4h6h4q17y4dj3c8p64hy145yyp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGVybWVzODMvY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0IiwKICAidXVpZCI6ICJjb21waXotYWxpa2UtbWFnaWMtbGFtcC1lZmZlY3RAaGVybWVzODMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "1ffki7rmdxrz3xr285jnlyxp1a4h6h4q17y4dj3c8p64hy145yyp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGVybWVzODMvY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0IiwKICAidXVpZCI6ICJjb21waXotYWxpa2UtbWFnaWMtbGFtcC1lZmZlY3RAaGVybWVzODMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}}}
+, {"uuid": "hue-lights@chlumskyvaclav.gmail.com", "name": "Hue Lights", "pname": "hue-lights", "description": "🇺🇦 Glory to Ukraine! This extension controls Philips Hue compatible lights using Philips Hue Bridge on your local network, it also allows controlling Philips Hue Sync Box. If you are experiencing an error on the upgrade, please log out and log in again.", "link": "https://extensions.gnome.org/extension/3737/hue-lights/", "shell_version_map": {"38": {"version": "21", "sha256": "07bkkj0aaz6p8ych9dij772r67p7ga8pxf8ln3gqvs674ra5w3y7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1ZDgzY1x1ZGRmYVx1ZDgzY1x1ZGRlNiBHbG9yeSB0byBVa3JhaW5lISBUaGlzIGV4dGVuc2lvbiBjb250cm9scyBQaGlsaXBzIEh1ZSBjb21wYXRpYmxlIGxpZ2h0cyB1c2luZyBQaGlsaXBzIEh1ZSBCcmlkZ2Ugb24geW91ciBsb2NhbCBuZXR3b3JrLCBpdCBhbHNvIGFsbG93cyBjb250cm9sbGluZyBQaGlsaXBzIEh1ZSBTeW5jIEJveC4gSWYgeW91IGFyZSBleHBlcmllbmNpbmcgYW4gZXJyb3Igb24gdGhlIHVwZ3JhZGUsIHBsZWFzZSBsb2cgb3V0IGFuZCBsb2cgaW4gYWdhaW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaHVlLWxpZ2h0cyIsCiAgIm5hbWUiOiAiSHVlIExpZ2h0cyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjEKfQ=="}, "40": {"version": "21", "sha256": "07bkkj0aaz6p8ych9dij772r67p7ga8pxf8ln3gqvs674ra5w3y7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1ZDgzY1x1ZGRmYVx1ZDgzY1x1ZGRlNiBHbG9yeSB0byBVa3JhaW5lISBUaGlzIGV4dGVuc2lvbiBjb250cm9scyBQaGlsaXBzIEh1ZSBjb21wYXRpYmxlIGxpZ2h0cyB1c2luZyBQaGlsaXBzIEh1ZSBCcmlkZ2Ugb24geW91ciBsb2NhbCBuZXR3b3JrLCBpdCBhbHNvIGFsbG93cyBjb250cm9sbGluZyBQaGlsaXBzIEh1ZSBTeW5jIEJveC4gSWYgeW91IGFyZSBleHBlcmllbmNpbmcgYW4gZXJyb3Igb24gdGhlIHVwZ3JhZGUsIHBsZWFzZSBsb2cgb3V0IGFuZCBsb2cgaW4gYWdhaW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaHVlLWxpZ2h0cyIsCiAgIm5hbWUiOiAiSHVlIExpZ2h0cyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjEKfQ=="}, "41": {"version": "21", "sha256": "07bkkj0aaz6p8ych9dij772r67p7ga8pxf8ln3gqvs674ra5w3y7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1ZDgzY1x1ZGRmYVx1ZDgzY1x1ZGRlNiBHbG9yeSB0byBVa3JhaW5lISBUaGlzIGV4dGVuc2lvbiBjb250cm9scyBQaGlsaXBzIEh1ZSBjb21wYXRpYmxlIGxpZ2h0cyB1c2luZyBQaGlsaXBzIEh1ZSBCcmlkZ2Ugb24geW91ciBsb2NhbCBuZXR3b3JrLCBpdCBhbHNvIGFsbG93cyBjb250cm9sbGluZyBQaGlsaXBzIEh1ZSBTeW5jIEJveC4gSWYgeW91IGFyZSBleHBlcmllbmNpbmcgYW4gZXJyb3Igb24gdGhlIHVwZ3JhZGUsIHBsZWFzZSBsb2cgb3V0IGFuZCBsb2cgaW4gYWdhaW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaHVlLWxpZ2h0cyIsCiAgIm5hbWUiOiAiSHVlIExpZ2h0cyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjEKfQ=="}, "42": {"version": "21", "sha256": "07bkkj0aaz6p8ych9dij772r67p7ga8pxf8ln3gqvs674ra5w3y7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1ZDgzY1x1ZGRmYVx1ZDgzY1x1ZGRlNiBHbG9yeSB0byBVa3JhaW5lISBUaGlzIGV4dGVuc2lvbiBjb250cm9scyBQaGlsaXBzIEh1ZSBjb21wYXRpYmxlIGxpZ2h0cyB1c2luZyBQaGlsaXBzIEh1ZSBCcmlkZ2Ugb24geW91ciBsb2NhbCBuZXR3b3JrLCBpdCBhbHNvIGFsbG93cyBjb250cm9sbGluZyBQaGlsaXBzIEh1ZSBTeW5jIEJveC4gSWYgeW91IGFyZSBleHBlcmllbmNpbmcgYW4gZXJyb3Igb24gdGhlIHVwZ3JhZGUsIHBsZWFzZSBsb2cgb3V0IGFuZCBsb2cgaW4gYWdhaW4uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaHVlLWxpZ2h0cyIsCiAgIm5hbWUiOiAiSHVlIExpZ2h0cyIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92Y2hsdW0vaHVlLWxpZ2h0cyIsCiAgInV1aWQiOiAiaHVlLWxpZ2h0c0BjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMjEKfQ=="}}}
+, {"uuid": "compiz-alike-magic-lamp-effect@hermes83.github.com", "name": "Compiz alike magic lamp effect", "pname": "compiz-alike-magic-lamp-effect", "description": "Magic lamp effect inspired by the Compiz ones\n\nNB:\nIn case of update error please restart Gnome Shell (on Xorg press ALT+F2 then write r and press enter, on Wayland end the session and log in again)", "link": "https://extensions.gnome.org/extension/3740/compiz-alike-magic-lamp-effect/", "shell_version_map": {"38": {"version": "11", "sha256": "1ffki7rmdxrz3xr285jnlyxp1a4h6h4q17y4dj3c8p64hy145yyp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGVybWVzODMvY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0IiwKICAidXVpZCI6ICJjb21waXotYWxpa2UtbWFnaWMtbGFtcC1lZmZlY3RAaGVybWVzODMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}, "40": {"version": "11", "sha256": "1ffki7rmdxrz3xr285jnlyxp1a4h6h4q17y4dj3c8p64hy145yyp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGVybWVzODMvY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0IiwKICAidXVpZCI6ICJjb21waXotYWxpa2UtbWFnaWMtbGFtcC1lZmZlY3RAaGVybWVzODMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "1ffki7rmdxrz3xr285jnlyxp1a4h6h4q17y4dj3c8p64hy145yyp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGVybWVzODMvY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0IiwKICAidXVpZCI6ICJjb21waXotYWxpa2UtbWFnaWMtbGFtcC1lZmZlY3RAaGVybWVzODMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}, "42": {"version": "11", "sha256": "1ffki7rmdxrz3xr285jnlyxp1a4h6h4q17y4dj3c8p64hy145yyp", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1hZ2ljIGxhbXAgZWZmZWN0IGluc3BpcmVkIGJ5IHRoZSBDb21waXogb25lc1xuXG5OQjpcbkluIGNhc2Ugb2YgdXBkYXRlIGVycm9yIHBsZWFzZSByZXN0YXJ0IEdub21lIFNoZWxsIChvbiBYb3JnIHByZXNzIEFMVCtGMiB0aGVuIHdyaXRlIHIgYW5kIHByZXNzIGVudGVyLCBvbiBXYXlsYW5kIGVuZCB0aGUgc2Vzc2lvbiBhbmQgbG9nIGluIGFnYWluKSIsCiAgIm5hbWUiOiAiQ29tcGl6IGFsaWtlIG1hZ2ljIGxhbXAgZWZmZWN0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGVybWVzODMvY29tcGl6LWFsaWtlLW1hZ2ljLWxhbXAtZWZmZWN0IiwKICAidXVpZCI6ICJjb21waXotYWxpa2UtbWFnaWMtbGFtcC1lZmZlY3RAaGVybWVzODMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMQp9"}}}
 , {"uuid": "latency-monitor@gitlab.labsatho.me", "name": "Latency Monitor", "pname": "latency-monitor", "description": "A simple extension for displaying latency information using pings in GNOME Shell.", "link": "https://extensions.gnome.org/extension/3746/latency-monitor/", "shell_version_map": {"38": {"version": "6", "sha256": "0k2y1qrq7irkn2c72pk4c5x4fwzaxkfp3jj7qvhzih6zmkifdzcd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIGV4dGVuc2lvbiBmb3IgZGlzcGxheWluZyBsYXRlbmN5IGluZm9ybWF0aW9uIHVzaW5nIHBpbmdzIGluIEdOT01FIFNoZWxsLiIsCiAgIm5hbWUiOiAiTGF0ZW5jeSBNb25pdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmxhdGVuY3ktbW9uaXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3dhbGthZndhbGthL2dub21lLXNoZWxsLWV4dGVuc2lvbi1sYXRlbmN5LW1vbml0b3IiLAogICJ1dWlkIjogImxhdGVuY3ktbW9uaXRvckBnaXRsYWIubGFic2F0aG8ubWUiLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "the-circles-widget@xenlism.github.io", "name": "The Circles - Desktop Widget", "pname": "the-circles-desktop-widget", "description": "Show System Infomations on Desktop as Circles Desktop Widget\n\nmore info \nhttps://www.linuxuprising.com/2020/11/display-clock-ram-and-cpu-usage-as.html", "link": "https://extensions.gnome.org/extension/3748/the-circles-desktop-widget/", "shell_version_map": {"38": {"version": "6", "sha256": "0kxync9gdjgcfq3vfhf5z0065n30jw5y5jl00hdgarsh4pkbji04", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgU3lzdGVtIEluZm9tYXRpb25zIG9uIERlc2t0b3AgYXMgQ2lyY2xlcyBEZXNrdG9wIFdpZGdldFxuXG5tb3JlIGluZm8gXG5odHRwczovL3d3dy5saW51eHVwcmlzaW5nLmNvbS8yMDIwLzExL2Rpc3BsYXktY2xvY2stcmFtLWFuZC1jcHUtdXNhZ2UtYXMuaHRtbCIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0aGUtY2lyY2xlcy13aWRnZXQiLAogICJuYW1lIjogIlRoZSBDaXJjbGVzIC0gRGVza3RvcCBXaWRnZXQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGhlLWNpcmNsZXMtd2lkZ2V0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20veGVubGlzbS9zaG93dGltZSIsCiAgInV1aWQiOiAidGhlLWNpcmNsZXMtd2lkZ2V0QHhlbmxpc20uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "12", "sha256": "0ngn00y97dqv667z47xahfv53dlb2asm0jbk9harlv4516jdrg0s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgU3lzdGVtIEluZm9tYXRpb25zIG9uIERlc2t0b3AgYXMgQ2lyY2xlcyBEZXNrdG9wIFdpZGdldFxuXG5tb3JlIGluZm8gXG5odHRwczovL3d3dy5saW51eHVwcmlzaW5nLmNvbS8yMDIwLzExL2Rpc3BsYXktY2xvY2stcmFtLWFuZC1jcHUtdXNhZ2UtYXMuaHRtbCIsCiAgImV4dGVuc2lvbi1pZCI6ICJ0aGUtY2lyY2xlcy13aWRnZXQiLAogICJuYW1lIjogIlRoZSBDaXJjbGVzIC0gRGVza3RvcCBXaWRnZXQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGhlLWNpcmNsZXMtd2lkZ2V0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3hlbmxpc20vc2hvd3RpbWUiLAogICJ1dWlkIjogInRoZS1jaXJjbGVzLXdpZGdldEB4ZW5saXNtLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMgp9"}}}
 , {"uuid": "overview_cleaner@gonza.com", "name": "Cleaner Overview", "pname": "cleaner-overview", "description": "Makes all the windows in the overview the same height and orders them by last recent used.", "link": "https://extensions.gnome.org/extension/3759/cleaner-overview/", "shell_version_map": {"38": {"version": "3", "sha256": "16xljs0ym9cp7lxa36ls7p4z79s7h9q7azg32pvhflylx4bsyv2c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIGFsbCB0aGUgd2luZG93cyBpbiB0aGUgb3ZlcnZpZXcgdGhlIHNhbWUgaGVpZ2h0IGFuZCBvcmRlcnMgdGhlbSBieSBsYXN0IHJlY2VudCB1c2VkLiIsCiAgIm5hbWUiOiAiQ2xlYW5lciBPdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29uemFhcmNyL3RvdWNocGFkLXdpbmRvdy1zd2l0Y2hlci1nbm9tZS1leHQvYmxvYi9tYXN0ZXIvdG91Y2hwYWRfd2luZG93X3N3aXRjaGVyJTQwZ29uemEuY29tL292ZXJ2aWV3Q2xlYW5lci5qcyIsCiAgInV1aWQiOiAib3ZlcnZpZXdfY2xlYW5lckBnb256YS5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "16xljs0ym9cp7lxa36ls7p4z79s7h9q7azg32pvhflylx4bsyv2c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIGFsbCB0aGUgd2luZG93cyBpbiB0aGUgb3ZlcnZpZXcgdGhlIHNhbWUgaGVpZ2h0IGFuZCBvcmRlcnMgdGhlbSBieSBsYXN0IHJlY2VudCB1c2VkLiIsCiAgIm5hbWUiOiAiQ2xlYW5lciBPdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29uemFhcmNyL3RvdWNocGFkLXdpbmRvdy1zd2l0Y2hlci1nbm9tZS1leHQvYmxvYi9tYXN0ZXIvdG91Y2hwYWRfd2luZG93X3N3aXRjaGVyJTQwZ29uemEuY29tL292ZXJ2aWV3Q2xlYW5lci5qcyIsCiAgInV1aWQiOiAib3ZlcnZpZXdfY2xlYW5lckBnb256YS5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "16xljs0ym9cp7lxa36ls7p4z79s7h9q7azg32pvhflylx4bsyv2c", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIGFsbCB0aGUgd2luZG93cyBpbiB0aGUgb3ZlcnZpZXcgdGhlIHNhbWUgaGVpZ2h0IGFuZCBvcmRlcnMgdGhlbSBieSBsYXN0IHJlY2VudCB1c2VkLiIsCiAgIm5hbWUiOiAiQ2xlYW5lciBPdmVydmlldyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29uemFhcmNyL3RvdWNocGFkLXdpbmRvdy1zd2l0Y2hlci1nbm9tZS1leHQvYmxvYi9tYXN0ZXIvdG91Y2hwYWRfd2luZG93X3N3aXRjaGVyJTQwZ29uemEuY29tL292ZXJ2aWV3Q2xlYW5lci5qcyIsCiAgInV1aWQiOiAib3ZlcnZpZXdfY2xlYW5lckBnb256YS5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}}}
@@ -392,21 +392,21 @@
 , {"uuid": "wacom-indicator@fthx", "name": "Wacom Indicator", "pname": "wacom-indicator", "description": "Wacom tablet indicator in the top bar: connection state and power level.\n\n On click: open GNOME Settings Wacom section. On hover or every minute: update connection state and power level.\n\n Settings (in extension.js file headers): show/hide model label, refresh delay, update/do nothing on indicator hover, show/hide if disconnected.", "link": "https://extensions.gnome.org/extension/3809/wacom-indicator/", "shell_version_map": {"38": {"version": "7", "sha256": "1sda66n1s3d28jd98xcznw5ljv10iwndpcbq7bfm5hqzrk8zimid", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldhY29tIHRhYmxldCBpbmRpY2F0b3IgaW4gdGhlIHRvcCBiYXI6IGNvbm5lY3Rpb24gc3RhdGUgYW5kIHBvd2VyIGxldmVsLlxuXG4gT24gY2xpY2s6IG9wZW4gR05PTUUgU2V0dGluZ3MgV2Fjb20gc2VjdGlvbi4gT24gaG92ZXIgb3IgZXZlcnkgbWludXRlOiB1cGRhdGUgY29ubmVjdGlvbiBzdGF0ZSBhbmQgcG93ZXIgbGV2ZWwuXG5cbiBTZXR0aW5ncyAoaW4gZXh0ZW5zaW9uLmpzIGZpbGUgaGVhZGVycyk6IHNob3cvaGlkZSBtb2RlbCBsYWJlbCwgcmVmcmVzaCBkZWxheSwgdXBkYXRlL2RvIG5vdGhpbmcgb24gaW5kaWNhdG9yIGhvdmVyLCBzaG93L2hpZGUgaWYgZGlzY29ubmVjdGVkLiIsCiAgIm5hbWUiOiAiV2Fjb20gSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvd2Fjb20taW5kaWNhdG9yIiwKICAidXVpZCI6ICJ3YWNvbS1pbmRpY2F0b3JAZnRoeCIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "1sda66n1s3d28jd98xcznw5ljv10iwndpcbq7bfm5hqzrk8zimid", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldhY29tIHRhYmxldCBpbmRpY2F0b3IgaW4gdGhlIHRvcCBiYXI6IGNvbm5lY3Rpb24gc3RhdGUgYW5kIHBvd2VyIGxldmVsLlxuXG4gT24gY2xpY2s6IG9wZW4gR05PTUUgU2V0dGluZ3MgV2Fjb20gc2VjdGlvbi4gT24gaG92ZXIgb3IgZXZlcnkgbWludXRlOiB1cGRhdGUgY29ubmVjdGlvbiBzdGF0ZSBhbmQgcG93ZXIgbGV2ZWwuXG5cbiBTZXR0aW5ncyAoaW4gZXh0ZW5zaW9uLmpzIGZpbGUgaGVhZGVycyk6IHNob3cvaGlkZSBtb2RlbCBsYWJlbCwgcmVmcmVzaCBkZWxheSwgdXBkYXRlL2RvIG5vdGhpbmcgb24gaW5kaWNhdG9yIGhvdmVyLCBzaG93L2hpZGUgaWYgZGlzY29ubmVjdGVkLiIsCiAgIm5hbWUiOiAiV2Fjb20gSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvd2Fjb20taW5kaWNhdG9yIiwKICAidXVpZCI6ICJ3YWNvbS1pbmRpY2F0b3JAZnRoeCIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "hibernate@dafne.rocks", "name": "System Action - Hibernate", "pname": "system-action-hibernate", "description": "A GNOME extension that adds the option to hibernate amongst other system actions", "link": "https://extensions.gnome.org/extension/3814/system-action-hibernate/", "shell_version_map": {"38": {"version": "8", "sha256": "1rriknzx54f4wlfjm6wrcy9s86vchi5n3p3qp8lx52dsv36a22an", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRoYXQgYWRkcyB0aGUgb3B0aW9uIHRvIGhpYmVybmF0ZSBhbW9uZ3N0IG90aGVyIHN5c3RlbSBhY3Rpb25zIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlQGRhZm5lLnJvY2tzIiwKICAibmFtZSI6ICJTeXN0ZW0gQWN0aW9uIC0gSGliZXJuYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2NvZGViZXJnLm9yZy9raXl1aS9nbm9tZS1zaGVsbC1oaWJlcm5hdGUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJoaWJlcm5hdGVAZGFmbmUucm9ja3MiLAogICJ2ZXJzaW9uIjogOAp9"}, "40": {"version": "8", "sha256": "1rriknzx54f4wlfjm6wrcy9s86vchi5n3p3qp8lx52dsv36a22an", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgZXh0ZW5zaW9uIHRoYXQgYWRkcyB0aGUgb3B0aW9uIHRvIGhpYmVybmF0ZSBhbW9uZ3N0IG90aGVyIHN5c3RlbSBhY3Rpb25zIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiaGliZXJuYXRlQGRhZm5lLnJvY2tzIiwKICAibmFtZSI6ICJTeXN0ZW0gQWN0aW9uIC0gSGliZXJuYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2NvZGViZXJnLm9yZy9raXl1aS9nbm9tZS1zaGVsbC1oaWJlcm5hdGUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJoaWJlcm5hdGVAZGFmbmUucm9ja3MiLAogICJ2ZXJzaW9uIjogOAp9"}}}
 , {"uuid": "click-to-close-overview@l3nn4rt.github.io", "name": "Click to close overview", "pname": "click-to-close-overview", "description": "Close the overview by clicking empty space.", "link": "https://extensions.gnome.org/extension/3826/click-to-close-overview/", "shell_version_map": {"38": {"version": "3", "sha256": "17xd3k1xpsn8ma6f11f4sr26y5xbcs3hiw7lv1qqrn80lyjj2vz1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS4iLAogICJuYW1lIjogIkNsaWNrIHRvIGNsb3NlIG92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbDNubjRydC9jbGljay10by1jbG9zZS1vdmVydmlldyIsCiAgInV1aWQiOiAiY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXdAbDNubjRydC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "5", "sha256": "1h12bhqac4zyvsj6xbjr7hnyah3bnbbx0r8ihblkw5l7a67ix1ih", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS4iLAogICJuYW1lIjogIkNsaWNrIHRvIGNsb3NlIG92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sM25uNHJ0L2NsaWNrLXRvLWNsb3NlLW92ZXJ2aWV3IiwKICAidXVpZCI6ICJjbGljay10by1jbG9zZS1vdmVydmlld0BsM25uNHJ0LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "1h12bhqac4zyvsj6xbjr7hnyah3bnbbx0r8ihblkw5l7a67ix1ih", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBieSBjbGlja2luZyBlbXB0eSBzcGFjZS4iLAogICJuYW1lIjogIkNsaWNrIHRvIGNsb3NlIG92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sM25uNHJ0L2NsaWNrLXRvLWNsb3NlLW92ZXJ2aWV3IiwKICAidXVpZCI6ICJjbGljay10by1jbG9zZS1vdmVydmlld0BsM25uNHJ0LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA1Cn0="}}}
-, {"uuid": "just-perfection-desktop@just-perfection", "name": "Just Perfection", "pname": "just-perfection", "description": "Tweak Tool to Customize GNOME Shell, Change the Behavior and Disable UI Elements\n\n- Accessibility Menu Visibility\n- Activities Button Icon Visibility\n- Activities button Visibility\n- Always Show Workspace Switcher on Dynamic Workspaces (40, 41)\n- Animation Speed or Disable it\n- App Gesture (3.36, 3.38)\n- Applications Button Visibility\n- App Menu Icon Visibility\n- App Menu Visibility\n- Background Menu Visibility\n- Clock Menu Position\n- Clock Menu Visibility\n- Dash Icon Size\n- Dash Visibility\n- Disable Type to Search\n- Double Super Key to App Grid\n- GNOME Shell Theme Override\n- Hot Corner (3.36, 3.38, 40)\n- Keyboard Layout Visibility\n- Notification Banner Position\n- OSD Visibility\n- Panel Arrow Visibility(3.36, 3.38)\n- Panel Button Padding Size\n- Panel Height\n- Panel icon size \n- Panel Indicator Padding Size\n- Panel Notification icon Visibility\n- Panel Position\n- Panel Round Corner Size (3.36, 3.38, 40, 41)\n- Panel Visibility\n- Panel Visibility in Overview\n- Power Icon Visibility\n- Ripple Box\n- Search Visibility\n- Startup Status(40, 41)\n- System Menu (Aggregate Menu) Visibility\n- Weather Visibility\n- Window Demands Attention Focus\n- Window Picker Caption Visibility\n- Window Picker Close Button Visibility\n- Window Picker Icon(40, 41)\n- Workspace Background Corner Size in Overview(40, 41)\n- Workspace Popup Visibility\n- Workspaces in app grid Visibility (40, 41)\n- Workspace Switcher Size (40, 41)\n- Workspace Switcher Visibility\n- Workspace Wraparound\n- World Clock Visibility", "link": "https://extensions.gnome.org/extension/3843/just-perfection/", "shell_version_map": {"38": {"version": "19", "sha256": "03rw7lwzd481ynrgc3vhnhjnw7vyrjcfn80cy7af8dmvlqcx0299", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIFRvb2wgdG8gQ3VzdG9taXplIEdOT01FIFNoZWxsLCBDaGFuZ2UgdGhlIEJlaGF2aW9yIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cbi0gQWNjZXNzaWJpbGl0eSBNZW51IFZpc2liaWxpdHlcbi0gQWN0aXZpdGllcyBCdXR0b24gSWNvbiBWaXNpYmlsaXR5XG4tIEFjdGl2aXRpZXMgYnV0dG9uIFZpc2liaWxpdHlcbi0gQWx3YXlzIFNob3cgV29ya3NwYWNlIFN3aXRjaGVyIG9uIER5bmFtaWMgV29ya3NwYWNlcyAoNDAsIDQxKVxuLSBBbmltYXRpb24gU3BlZWQgb3IgRGlzYWJsZSBpdFxuLSBBcHAgR2VzdHVyZSAoMy4zNiwgMy4zOClcbi0gQXBwbGljYXRpb25zIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIEFwcCBNZW51IEljb24gVmlzaWJpbGl0eVxuLSBBcHAgTWVudSBWaXNpYmlsaXR5XG4tIEJhY2tncm91bmQgTWVudSBWaXNpYmlsaXR5XG4tIENsb2NrIE1lbnUgUG9zaXRpb25cbi0gQ2xvY2sgTWVudSBWaXNpYmlsaXR5XG4tIERhc2ggSWNvbiBTaXplXG4tIERhc2ggVmlzaWJpbGl0eVxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIERvdWJsZSBTdXBlciBLZXkgdG8gQXBwIEdyaWRcbi0gR05PTUUgU2hlbGwgVGhlbWUgT3ZlcnJpZGVcbi0gSG90IENvcm5lciAoMy4zNiwgMy4zOCwgNDApXG4tIEtleWJvYXJkIExheW91dCBWaXNpYmlsaXR5XG4tIE5vdGlmaWNhdGlvbiBCYW5uZXIgUG9zaXRpb25cbi0gT1NEIFZpc2liaWxpdHlcbi0gUGFuZWwgQXJyb3cgVmlzaWJpbGl0eSgzLjM2LCAzLjM4KVxuLSBQYW5lbCBCdXR0b24gUGFkZGluZyBTaXplXG4tIFBhbmVsIEhlaWdodFxuLSBQYW5lbCBpY29uIHNpemUgXG4tIFBhbmVsIEluZGljYXRvciBQYWRkaW5nIFNpemVcbi0gUGFuZWwgTm90aWZpY2F0aW9uIGljb24gVmlzaWJpbGl0eVxuLSBQYW5lbCBQb3NpdGlvblxuLSBQYW5lbCBSb3VuZCBDb3JuZXIgU2l6ZSAoMy4zNiwgMy4zOCwgNDAsIDQxKVxuLSBQYW5lbCBWaXNpYmlsaXR5XG4tIFBhbmVsIFZpc2liaWxpdHkgaW4gT3ZlcnZpZXdcbi0gUG93ZXIgSWNvbiBWaXNpYmlsaXR5XG4tIFJpcHBsZSBCb3hcbi0gU2VhcmNoIFZpc2liaWxpdHlcbi0gU3RhcnR1cCBTdGF0dXMoNDAsIDQxKVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpIFZpc2liaWxpdHlcbi0gV2VhdGhlciBWaXNpYmlsaXR5XG4tIFdpbmRvdyBEZW1hbmRzIEF0dGVudGlvbiBGb2N1c1xuLSBXaW5kb3cgUGlja2VyIENhcHRpb24gVmlzaWJpbGl0eVxuLSBXaW5kb3cgUGlja2VyIENsb3NlIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIFdpbmRvdyBQaWNrZXIgSWNvbig0MCwgNDEpXG4tIFdvcmtzcGFjZSBCYWNrZ3JvdW5kIENvcm5lciBTaXplIGluIE92ZXJ2aWV3KDQwLCA0MSlcbi0gV29ya3NwYWNlIFBvcHVwIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlcyBpbiBhcHAgZ3JpZCBWaXNpYmlsaXR5ICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBTaXplICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBWaXNpYmlsaXR5XG4tIFdvcmtzcGFjZSBXcmFwYXJvdW5kXG4tIFdvcmxkIENsb2NrIFZpc2liaWxpdHkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJqdXN0LXBlcmZlY3Rpb24iLAogICJuYW1lIjogIkp1c3QgUGVyZmVjdGlvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5qdXN0LXBlcmZlY3Rpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "40": {"version": "19", "sha256": "03rw7lwzd481ynrgc3vhnhjnw7vyrjcfn80cy7af8dmvlqcx0299", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIFRvb2wgdG8gQ3VzdG9taXplIEdOT01FIFNoZWxsLCBDaGFuZ2UgdGhlIEJlaGF2aW9yIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cbi0gQWNjZXNzaWJpbGl0eSBNZW51IFZpc2liaWxpdHlcbi0gQWN0aXZpdGllcyBCdXR0b24gSWNvbiBWaXNpYmlsaXR5XG4tIEFjdGl2aXRpZXMgYnV0dG9uIFZpc2liaWxpdHlcbi0gQWx3YXlzIFNob3cgV29ya3NwYWNlIFN3aXRjaGVyIG9uIER5bmFtaWMgV29ya3NwYWNlcyAoNDAsIDQxKVxuLSBBbmltYXRpb24gU3BlZWQgb3IgRGlzYWJsZSBpdFxuLSBBcHAgR2VzdHVyZSAoMy4zNiwgMy4zOClcbi0gQXBwbGljYXRpb25zIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIEFwcCBNZW51IEljb24gVmlzaWJpbGl0eVxuLSBBcHAgTWVudSBWaXNpYmlsaXR5XG4tIEJhY2tncm91bmQgTWVudSBWaXNpYmlsaXR5XG4tIENsb2NrIE1lbnUgUG9zaXRpb25cbi0gQ2xvY2sgTWVudSBWaXNpYmlsaXR5XG4tIERhc2ggSWNvbiBTaXplXG4tIERhc2ggVmlzaWJpbGl0eVxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIERvdWJsZSBTdXBlciBLZXkgdG8gQXBwIEdyaWRcbi0gR05PTUUgU2hlbGwgVGhlbWUgT3ZlcnJpZGVcbi0gSG90IENvcm5lciAoMy4zNiwgMy4zOCwgNDApXG4tIEtleWJvYXJkIExheW91dCBWaXNpYmlsaXR5XG4tIE5vdGlmaWNhdGlvbiBCYW5uZXIgUG9zaXRpb25cbi0gT1NEIFZpc2liaWxpdHlcbi0gUGFuZWwgQXJyb3cgVmlzaWJpbGl0eSgzLjM2LCAzLjM4KVxuLSBQYW5lbCBCdXR0b24gUGFkZGluZyBTaXplXG4tIFBhbmVsIEhlaWdodFxuLSBQYW5lbCBpY29uIHNpemUgXG4tIFBhbmVsIEluZGljYXRvciBQYWRkaW5nIFNpemVcbi0gUGFuZWwgTm90aWZpY2F0aW9uIGljb24gVmlzaWJpbGl0eVxuLSBQYW5lbCBQb3NpdGlvblxuLSBQYW5lbCBSb3VuZCBDb3JuZXIgU2l6ZSAoMy4zNiwgMy4zOCwgNDAsIDQxKVxuLSBQYW5lbCBWaXNpYmlsaXR5XG4tIFBhbmVsIFZpc2liaWxpdHkgaW4gT3ZlcnZpZXdcbi0gUG93ZXIgSWNvbiBWaXNpYmlsaXR5XG4tIFJpcHBsZSBCb3hcbi0gU2VhcmNoIFZpc2liaWxpdHlcbi0gU3RhcnR1cCBTdGF0dXMoNDAsIDQxKVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpIFZpc2liaWxpdHlcbi0gV2VhdGhlciBWaXNpYmlsaXR5XG4tIFdpbmRvdyBEZW1hbmRzIEF0dGVudGlvbiBGb2N1c1xuLSBXaW5kb3cgUGlja2VyIENhcHRpb24gVmlzaWJpbGl0eVxuLSBXaW5kb3cgUGlja2VyIENsb3NlIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIFdpbmRvdyBQaWNrZXIgSWNvbig0MCwgNDEpXG4tIFdvcmtzcGFjZSBCYWNrZ3JvdW5kIENvcm5lciBTaXplIGluIE92ZXJ2aWV3KDQwLCA0MSlcbi0gV29ya3NwYWNlIFBvcHVwIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlcyBpbiBhcHAgZ3JpZCBWaXNpYmlsaXR5ICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBTaXplICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBWaXNpYmlsaXR5XG4tIFdvcmtzcGFjZSBXcmFwYXJvdW5kXG4tIFdvcmxkIENsb2NrIFZpc2liaWxpdHkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJqdXN0LXBlcmZlY3Rpb24iLAogICJuYW1lIjogIkp1c3QgUGVyZmVjdGlvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5qdXN0LXBlcmZlY3Rpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "41": {"version": "19", "sha256": "03rw7lwzd481ynrgc3vhnhjnw7vyrjcfn80cy7af8dmvlqcx0299", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIFRvb2wgdG8gQ3VzdG9taXplIEdOT01FIFNoZWxsLCBDaGFuZ2UgdGhlIEJlaGF2aW9yIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cbi0gQWNjZXNzaWJpbGl0eSBNZW51IFZpc2liaWxpdHlcbi0gQWN0aXZpdGllcyBCdXR0b24gSWNvbiBWaXNpYmlsaXR5XG4tIEFjdGl2aXRpZXMgYnV0dG9uIFZpc2liaWxpdHlcbi0gQWx3YXlzIFNob3cgV29ya3NwYWNlIFN3aXRjaGVyIG9uIER5bmFtaWMgV29ya3NwYWNlcyAoNDAsIDQxKVxuLSBBbmltYXRpb24gU3BlZWQgb3IgRGlzYWJsZSBpdFxuLSBBcHAgR2VzdHVyZSAoMy4zNiwgMy4zOClcbi0gQXBwbGljYXRpb25zIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIEFwcCBNZW51IEljb24gVmlzaWJpbGl0eVxuLSBBcHAgTWVudSBWaXNpYmlsaXR5XG4tIEJhY2tncm91bmQgTWVudSBWaXNpYmlsaXR5XG4tIENsb2NrIE1lbnUgUG9zaXRpb25cbi0gQ2xvY2sgTWVudSBWaXNpYmlsaXR5XG4tIERhc2ggSWNvbiBTaXplXG4tIERhc2ggVmlzaWJpbGl0eVxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIERvdWJsZSBTdXBlciBLZXkgdG8gQXBwIEdyaWRcbi0gR05PTUUgU2hlbGwgVGhlbWUgT3ZlcnJpZGVcbi0gSG90IENvcm5lciAoMy4zNiwgMy4zOCwgNDApXG4tIEtleWJvYXJkIExheW91dCBWaXNpYmlsaXR5XG4tIE5vdGlmaWNhdGlvbiBCYW5uZXIgUG9zaXRpb25cbi0gT1NEIFZpc2liaWxpdHlcbi0gUGFuZWwgQXJyb3cgVmlzaWJpbGl0eSgzLjM2LCAzLjM4KVxuLSBQYW5lbCBCdXR0b24gUGFkZGluZyBTaXplXG4tIFBhbmVsIEhlaWdodFxuLSBQYW5lbCBpY29uIHNpemUgXG4tIFBhbmVsIEluZGljYXRvciBQYWRkaW5nIFNpemVcbi0gUGFuZWwgTm90aWZpY2F0aW9uIGljb24gVmlzaWJpbGl0eVxuLSBQYW5lbCBQb3NpdGlvblxuLSBQYW5lbCBSb3VuZCBDb3JuZXIgU2l6ZSAoMy4zNiwgMy4zOCwgNDAsIDQxKVxuLSBQYW5lbCBWaXNpYmlsaXR5XG4tIFBhbmVsIFZpc2liaWxpdHkgaW4gT3ZlcnZpZXdcbi0gUG93ZXIgSWNvbiBWaXNpYmlsaXR5XG4tIFJpcHBsZSBCb3hcbi0gU2VhcmNoIFZpc2liaWxpdHlcbi0gU3RhcnR1cCBTdGF0dXMoNDAsIDQxKVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpIFZpc2liaWxpdHlcbi0gV2VhdGhlciBWaXNpYmlsaXR5XG4tIFdpbmRvdyBEZW1hbmRzIEF0dGVudGlvbiBGb2N1c1xuLSBXaW5kb3cgUGlja2VyIENhcHRpb24gVmlzaWJpbGl0eVxuLSBXaW5kb3cgUGlja2VyIENsb3NlIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIFdpbmRvdyBQaWNrZXIgSWNvbig0MCwgNDEpXG4tIFdvcmtzcGFjZSBCYWNrZ3JvdW5kIENvcm5lciBTaXplIGluIE92ZXJ2aWV3KDQwLCA0MSlcbi0gV29ya3NwYWNlIFBvcHVwIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlcyBpbiBhcHAgZ3JpZCBWaXNpYmlsaXR5ICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBTaXplICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBWaXNpYmlsaXR5XG4tIFdvcmtzcGFjZSBXcmFwYXJvdW5kXG4tIFdvcmxkIENsb2NrIFZpc2liaWxpdHkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJqdXN0LXBlcmZlY3Rpb24iLAogICJuYW1lIjogIkp1c3QgUGVyZmVjdGlvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5qdXN0LXBlcmZlY3Rpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMTkKfQ=="}}}
+, {"uuid": "just-perfection-desktop@just-perfection", "name": "Just Perfection", "pname": "just-perfection", "description": "Tweak Tool to Customize GNOME Shell, Change the Behavior and Disable UI Elements\n\n- Accessibility Menu Visibility\n- Activities Button Icon Visibility\n- Activities button Visibility\n- Always Show Workspace Switcher on Dynamic Workspaces (40, 41)\n- Animation Speed or Disable it\n- App Gesture (3.36, 3.38)\n- Applications Button Visibility\n- App Menu Icon Visibility\n- App Menu Visibility\n- Background Menu Visibility\n- Clock Menu Position\n- Clock Menu Visibility\n- Dash Icon Size\n- Dash Visibility\n- Disable Type to Search\n- Double Super Key to App Grid\n- GNOME Shell Theme Override\n- Hot Corner (3.36, 3.38, 40)\n- Keyboard Layout Visibility\n- Notification Banner Position\n- OSD Visibility\n- Panel Arrow Visibility(3.36, 3.38)\n- Panel Button Padding Size\n- Panel Height\n- Panel icon size \n- Panel Indicator Padding Size\n- Panel Notification icon Visibility\n- Panel Position\n- Panel Round Corner Size (3.36, 3.38, 40, 41)\n- Panel Visibility\n- Panel Visibility in Overview\n- Power Icon Visibility\n- Ripple Box\n- Search Visibility\n- Startup Status(40, 41)\n- System Menu (Aggregate Menu) Visibility\n- Weather Visibility\n- Window Demands Attention Focus\n- Window Picker Caption Visibility\n- Window Picker Close Button Visibility\n- Window Picker Icon(40, 41)\n- Workspace Background Corner Size in Overview(40, 41)\n- Workspace Popup Visibility\n- Workspaces in app grid Visibility (40, 41)\n- Workspace Switcher Size (40, 41)\n- Workspace Switcher Visibility\n- Workspace Wraparound\n- World Clock Visibility", "link": "https://extensions.gnome.org/extension/3843/just-perfection/", "shell_version_map": {"38": {"version": "19", "sha256": "03rw7lwzd481ynrgc3vhnhjnw7vyrjcfn80cy7af8dmvlqcx0299", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIFRvb2wgdG8gQ3VzdG9taXplIEdOT01FIFNoZWxsLCBDaGFuZ2UgdGhlIEJlaGF2aW9yIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cbi0gQWNjZXNzaWJpbGl0eSBNZW51IFZpc2liaWxpdHlcbi0gQWN0aXZpdGllcyBCdXR0b24gSWNvbiBWaXNpYmlsaXR5XG4tIEFjdGl2aXRpZXMgYnV0dG9uIFZpc2liaWxpdHlcbi0gQWx3YXlzIFNob3cgV29ya3NwYWNlIFN3aXRjaGVyIG9uIER5bmFtaWMgV29ya3NwYWNlcyAoNDAsIDQxKVxuLSBBbmltYXRpb24gU3BlZWQgb3IgRGlzYWJsZSBpdFxuLSBBcHAgR2VzdHVyZSAoMy4zNiwgMy4zOClcbi0gQXBwbGljYXRpb25zIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIEFwcCBNZW51IEljb24gVmlzaWJpbGl0eVxuLSBBcHAgTWVudSBWaXNpYmlsaXR5XG4tIEJhY2tncm91bmQgTWVudSBWaXNpYmlsaXR5XG4tIENsb2NrIE1lbnUgUG9zaXRpb25cbi0gQ2xvY2sgTWVudSBWaXNpYmlsaXR5XG4tIERhc2ggSWNvbiBTaXplXG4tIERhc2ggVmlzaWJpbGl0eVxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIERvdWJsZSBTdXBlciBLZXkgdG8gQXBwIEdyaWRcbi0gR05PTUUgU2hlbGwgVGhlbWUgT3ZlcnJpZGVcbi0gSG90IENvcm5lciAoMy4zNiwgMy4zOCwgNDApXG4tIEtleWJvYXJkIExheW91dCBWaXNpYmlsaXR5XG4tIE5vdGlmaWNhdGlvbiBCYW5uZXIgUG9zaXRpb25cbi0gT1NEIFZpc2liaWxpdHlcbi0gUGFuZWwgQXJyb3cgVmlzaWJpbGl0eSgzLjM2LCAzLjM4KVxuLSBQYW5lbCBCdXR0b24gUGFkZGluZyBTaXplXG4tIFBhbmVsIEhlaWdodFxuLSBQYW5lbCBpY29uIHNpemUgXG4tIFBhbmVsIEluZGljYXRvciBQYWRkaW5nIFNpemVcbi0gUGFuZWwgTm90aWZpY2F0aW9uIGljb24gVmlzaWJpbGl0eVxuLSBQYW5lbCBQb3NpdGlvblxuLSBQYW5lbCBSb3VuZCBDb3JuZXIgU2l6ZSAoMy4zNiwgMy4zOCwgNDAsIDQxKVxuLSBQYW5lbCBWaXNpYmlsaXR5XG4tIFBhbmVsIFZpc2liaWxpdHkgaW4gT3ZlcnZpZXdcbi0gUG93ZXIgSWNvbiBWaXNpYmlsaXR5XG4tIFJpcHBsZSBCb3hcbi0gU2VhcmNoIFZpc2liaWxpdHlcbi0gU3RhcnR1cCBTdGF0dXMoNDAsIDQxKVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpIFZpc2liaWxpdHlcbi0gV2VhdGhlciBWaXNpYmlsaXR5XG4tIFdpbmRvdyBEZW1hbmRzIEF0dGVudGlvbiBGb2N1c1xuLSBXaW5kb3cgUGlja2VyIENhcHRpb24gVmlzaWJpbGl0eVxuLSBXaW5kb3cgUGlja2VyIENsb3NlIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIFdpbmRvdyBQaWNrZXIgSWNvbig0MCwgNDEpXG4tIFdvcmtzcGFjZSBCYWNrZ3JvdW5kIENvcm5lciBTaXplIGluIE92ZXJ2aWV3KDQwLCA0MSlcbi0gV29ya3NwYWNlIFBvcHVwIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlcyBpbiBhcHAgZ3JpZCBWaXNpYmlsaXR5ICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBTaXplICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBWaXNpYmlsaXR5XG4tIFdvcmtzcGFjZSBXcmFwYXJvdW5kXG4tIFdvcmxkIENsb2NrIFZpc2liaWxpdHkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJqdXN0LXBlcmZlY3Rpb24iLAogICJuYW1lIjogIkp1c3QgUGVyZmVjdGlvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5qdXN0LXBlcmZlY3Rpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "40": {"version": "19", "sha256": "03rw7lwzd481ynrgc3vhnhjnw7vyrjcfn80cy7af8dmvlqcx0299", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIFRvb2wgdG8gQ3VzdG9taXplIEdOT01FIFNoZWxsLCBDaGFuZ2UgdGhlIEJlaGF2aW9yIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cbi0gQWNjZXNzaWJpbGl0eSBNZW51IFZpc2liaWxpdHlcbi0gQWN0aXZpdGllcyBCdXR0b24gSWNvbiBWaXNpYmlsaXR5XG4tIEFjdGl2aXRpZXMgYnV0dG9uIFZpc2liaWxpdHlcbi0gQWx3YXlzIFNob3cgV29ya3NwYWNlIFN3aXRjaGVyIG9uIER5bmFtaWMgV29ya3NwYWNlcyAoNDAsIDQxKVxuLSBBbmltYXRpb24gU3BlZWQgb3IgRGlzYWJsZSBpdFxuLSBBcHAgR2VzdHVyZSAoMy4zNiwgMy4zOClcbi0gQXBwbGljYXRpb25zIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIEFwcCBNZW51IEljb24gVmlzaWJpbGl0eVxuLSBBcHAgTWVudSBWaXNpYmlsaXR5XG4tIEJhY2tncm91bmQgTWVudSBWaXNpYmlsaXR5XG4tIENsb2NrIE1lbnUgUG9zaXRpb25cbi0gQ2xvY2sgTWVudSBWaXNpYmlsaXR5XG4tIERhc2ggSWNvbiBTaXplXG4tIERhc2ggVmlzaWJpbGl0eVxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIERvdWJsZSBTdXBlciBLZXkgdG8gQXBwIEdyaWRcbi0gR05PTUUgU2hlbGwgVGhlbWUgT3ZlcnJpZGVcbi0gSG90IENvcm5lciAoMy4zNiwgMy4zOCwgNDApXG4tIEtleWJvYXJkIExheW91dCBWaXNpYmlsaXR5XG4tIE5vdGlmaWNhdGlvbiBCYW5uZXIgUG9zaXRpb25cbi0gT1NEIFZpc2liaWxpdHlcbi0gUGFuZWwgQXJyb3cgVmlzaWJpbGl0eSgzLjM2LCAzLjM4KVxuLSBQYW5lbCBCdXR0b24gUGFkZGluZyBTaXplXG4tIFBhbmVsIEhlaWdodFxuLSBQYW5lbCBpY29uIHNpemUgXG4tIFBhbmVsIEluZGljYXRvciBQYWRkaW5nIFNpemVcbi0gUGFuZWwgTm90aWZpY2F0aW9uIGljb24gVmlzaWJpbGl0eVxuLSBQYW5lbCBQb3NpdGlvblxuLSBQYW5lbCBSb3VuZCBDb3JuZXIgU2l6ZSAoMy4zNiwgMy4zOCwgNDAsIDQxKVxuLSBQYW5lbCBWaXNpYmlsaXR5XG4tIFBhbmVsIFZpc2liaWxpdHkgaW4gT3ZlcnZpZXdcbi0gUG93ZXIgSWNvbiBWaXNpYmlsaXR5XG4tIFJpcHBsZSBCb3hcbi0gU2VhcmNoIFZpc2liaWxpdHlcbi0gU3RhcnR1cCBTdGF0dXMoNDAsIDQxKVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpIFZpc2liaWxpdHlcbi0gV2VhdGhlciBWaXNpYmlsaXR5XG4tIFdpbmRvdyBEZW1hbmRzIEF0dGVudGlvbiBGb2N1c1xuLSBXaW5kb3cgUGlja2VyIENhcHRpb24gVmlzaWJpbGl0eVxuLSBXaW5kb3cgUGlja2VyIENsb3NlIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIFdpbmRvdyBQaWNrZXIgSWNvbig0MCwgNDEpXG4tIFdvcmtzcGFjZSBCYWNrZ3JvdW5kIENvcm5lciBTaXplIGluIE92ZXJ2aWV3KDQwLCA0MSlcbi0gV29ya3NwYWNlIFBvcHVwIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlcyBpbiBhcHAgZ3JpZCBWaXNpYmlsaXR5ICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBTaXplICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBWaXNpYmlsaXR5XG4tIFdvcmtzcGFjZSBXcmFwYXJvdW5kXG4tIFdvcmxkIENsb2NrIFZpc2liaWxpdHkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJqdXN0LXBlcmZlY3Rpb24iLAogICJuYW1lIjogIkp1c3QgUGVyZmVjdGlvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5qdXN0LXBlcmZlY3Rpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "41": {"version": "19", "sha256": "03rw7lwzd481ynrgc3vhnhjnw7vyrjcfn80cy7af8dmvlqcx0299", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIFRvb2wgdG8gQ3VzdG9taXplIEdOT01FIFNoZWxsLCBDaGFuZ2UgdGhlIEJlaGF2aW9yIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cbi0gQWNjZXNzaWJpbGl0eSBNZW51IFZpc2liaWxpdHlcbi0gQWN0aXZpdGllcyBCdXR0b24gSWNvbiBWaXNpYmlsaXR5XG4tIEFjdGl2aXRpZXMgYnV0dG9uIFZpc2liaWxpdHlcbi0gQWx3YXlzIFNob3cgV29ya3NwYWNlIFN3aXRjaGVyIG9uIER5bmFtaWMgV29ya3NwYWNlcyAoNDAsIDQxKVxuLSBBbmltYXRpb24gU3BlZWQgb3IgRGlzYWJsZSBpdFxuLSBBcHAgR2VzdHVyZSAoMy4zNiwgMy4zOClcbi0gQXBwbGljYXRpb25zIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIEFwcCBNZW51IEljb24gVmlzaWJpbGl0eVxuLSBBcHAgTWVudSBWaXNpYmlsaXR5XG4tIEJhY2tncm91bmQgTWVudSBWaXNpYmlsaXR5XG4tIENsb2NrIE1lbnUgUG9zaXRpb25cbi0gQ2xvY2sgTWVudSBWaXNpYmlsaXR5XG4tIERhc2ggSWNvbiBTaXplXG4tIERhc2ggVmlzaWJpbGl0eVxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIERvdWJsZSBTdXBlciBLZXkgdG8gQXBwIEdyaWRcbi0gR05PTUUgU2hlbGwgVGhlbWUgT3ZlcnJpZGVcbi0gSG90IENvcm5lciAoMy4zNiwgMy4zOCwgNDApXG4tIEtleWJvYXJkIExheW91dCBWaXNpYmlsaXR5XG4tIE5vdGlmaWNhdGlvbiBCYW5uZXIgUG9zaXRpb25cbi0gT1NEIFZpc2liaWxpdHlcbi0gUGFuZWwgQXJyb3cgVmlzaWJpbGl0eSgzLjM2LCAzLjM4KVxuLSBQYW5lbCBCdXR0b24gUGFkZGluZyBTaXplXG4tIFBhbmVsIEhlaWdodFxuLSBQYW5lbCBpY29uIHNpemUgXG4tIFBhbmVsIEluZGljYXRvciBQYWRkaW5nIFNpemVcbi0gUGFuZWwgTm90aWZpY2F0aW9uIGljb24gVmlzaWJpbGl0eVxuLSBQYW5lbCBQb3NpdGlvblxuLSBQYW5lbCBSb3VuZCBDb3JuZXIgU2l6ZSAoMy4zNiwgMy4zOCwgNDAsIDQxKVxuLSBQYW5lbCBWaXNpYmlsaXR5XG4tIFBhbmVsIFZpc2liaWxpdHkgaW4gT3ZlcnZpZXdcbi0gUG93ZXIgSWNvbiBWaXNpYmlsaXR5XG4tIFJpcHBsZSBCb3hcbi0gU2VhcmNoIFZpc2liaWxpdHlcbi0gU3RhcnR1cCBTdGF0dXMoNDAsIDQxKVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpIFZpc2liaWxpdHlcbi0gV2VhdGhlciBWaXNpYmlsaXR5XG4tIFdpbmRvdyBEZW1hbmRzIEF0dGVudGlvbiBGb2N1c1xuLSBXaW5kb3cgUGlja2VyIENhcHRpb24gVmlzaWJpbGl0eVxuLSBXaW5kb3cgUGlja2VyIENsb3NlIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIFdpbmRvdyBQaWNrZXIgSWNvbig0MCwgNDEpXG4tIFdvcmtzcGFjZSBCYWNrZ3JvdW5kIENvcm5lciBTaXplIGluIE92ZXJ2aWV3KDQwLCA0MSlcbi0gV29ya3NwYWNlIFBvcHVwIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlcyBpbiBhcHAgZ3JpZCBWaXNpYmlsaXR5ICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBTaXplICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBWaXNpYmlsaXR5XG4tIFdvcmtzcGFjZSBXcmFwYXJvdW5kXG4tIFdvcmxkIENsb2NrIFZpc2liaWxpdHkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJqdXN0LXBlcmZlY3Rpb24iLAogICJuYW1lIjogIkp1c3QgUGVyZmVjdGlvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5qdXN0LXBlcmZlY3Rpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "42": {"version": "19", "sha256": "03rw7lwzd481ynrgc3vhnhjnw7vyrjcfn80cy7af8dmvlqcx0299", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR3ZWFrIFRvb2wgdG8gQ3VzdG9taXplIEdOT01FIFNoZWxsLCBDaGFuZ2UgdGhlIEJlaGF2aW9yIGFuZCBEaXNhYmxlIFVJIEVsZW1lbnRzXG5cbi0gQWNjZXNzaWJpbGl0eSBNZW51IFZpc2liaWxpdHlcbi0gQWN0aXZpdGllcyBCdXR0b24gSWNvbiBWaXNpYmlsaXR5XG4tIEFjdGl2aXRpZXMgYnV0dG9uIFZpc2liaWxpdHlcbi0gQWx3YXlzIFNob3cgV29ya3NwYWNlIFN3aXRjaGVyIG9uIER5bmFtaWMgV29ya3NwYWNlcyAoNDAsIDQxKVxuLSBBbmltYXRpb24gU3BlZWQgb3IgRGlzYWJsZSBpdFxuLSBBcHAgR2VzdHVyZSAoMy4zNiwgMy4zOClcbi0gQXBwbGljYXRpb25zIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIEFwcCBNZW51IEljb24gVmlzaWJpbGl0eVxuLSBBcHAgTWVudSBWaXNpYmlsaXR5XG4tIEJhY2tncm91bmQgTWVudSBWaXNpYmlsaXR5XG4tIENsb2NrIE1lbnUgUG9zaXRpb25cbi0gQ2xvY2sgTWVudSBWaXNpYmlsaXR5XG4tIERhc2ggSWNvbiBTaXplXG4tIERhc2ggVmlzaWJpbGl0eVxuLSBEaXNhYmxlIFR5cGUgdG8gU2VhcmNoXG4tIERvdWJsZSBTdXBlciBLZXkgdG8gQXBwIEdyaWRcbi0gR05PTUUgU2hlbGwgVGhlbWUgT3ZlcnJpZGVcbi0gSG90IENvcm5lciAoMy4zNiwgMy4zOCwgNDApXG4tIEtleWJvYXJkIExheW91dCBWaXNpYmlsaXR5XG4tIE5vdGlmaWNhdGlvbiBCYW5uZXIgUG9zaXRpb25cbi0gT1NEIFZpc2liaWxpdHlcbi0gUGFuZWwgQXJyb3cgVmlzaWJpbGl0eSgzLjM2LCAzLjM4KVxuLSBQYW5lbCBCdXR0b24gUGFkZGluZyBTaXplXG4tIFBhbmVsIEhlaWdodFxuLSBQYW5lbCBpY29uIHNpemUgXG4tIFBhbmVsIEluZGljYXRvciBQYWRkaW5nIFNpemVcbi0gUGFuZWwgTm90aWZpY2F0aW9uIGljb24gVmlzaWJpbGl0eVxuLSBQYW5lbCBQb3NpdGlvblxuLSBQYW5lbCBSb3VuZCBDb3JuZXIgU2l6ZSAoMy4zNiwgMy4zOCwgNDAsIDQxKVxuLSBQYW5lbCBWaXNpYmlsaXR5XG4tIFBhbmVsIFZpc2liaWxpdHkgaW4gT3ZlcnZpZXdcbi0gUG93ZXIgSWNvbiBWaXNpYmlsaXR5XG4tIFJpcHBsZSBCb3hcbi0gU2VhcmNoIFZpc2liaWxpdHlcbi0gU3RhcnR1cCBTdGF0dXMoNDAsIDQxKVxuLSBTeXN0ZW0gTWVudSAoQWdncmVnYXRlIE1lbnUpIFZpc2liaWxpdHlcbi0gV2VhdGhlciBWaXNpYmlsaXR5XG4tIFdpbmRvdyBEZW1hbmRzIEF0dGVudGlvbiBGb2N1c1xuLSBXaW5kb3cgUGlja2VyIENhcHRpb24gVmlzaWJpbGl0eVxuLSBXaW5kb3cgUGlja2VyIENsb3NlIEJ1dHRvbiBWaXNpYmlsaXR5XG4tIFdpbmRvdyBQaWNrZXIgSWNvbig0MCwgNDEpXG4tIFdvcmtzcGFjZSBCYWNrZ3JvdW5kIENvcm5lciBTaXplIGluIE92ZXJ2aWV3KDQwLCA0MSlcbi0gV29ya3NwYWNlIFBvcHVwIFZpc2liaWxpdHlcbi0gV29ya3NwYWNlcyBpbiBhcHAgZ3JpZCBWaXNpYmlsaXR5ICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBTaXplICg0MCwgNDEpXG4tIFdvcmtzcGFjZSBTd2l0Y2hlciBWaXNpYmlsaXR5XG4tIFdvcmtzcGFjZSBXcmFwYXJvdW5kXG4tIFdvcmxkIENsb2NrIFZpc2liaWxpdHkiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJqdXN0LXBlcmZlY3Rpb24iLAogICJuYW1lIjogIkp1c3QgUGVyZmVjdGlvbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5qdXN0LXBlcmZlY3Rpb24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9qcmFobWF0emFkZWgvanVzdC1wZXJmZWN0aW9uIiwKICAidXVpZCI6ICJqdXN0LXBlcmZlY3Rpb24tZGVza3RvcEBqdXN0LXBlcmZlY3Rpb24iLAogICJ2ZXJzaW9uIjogMTkKfQ=="}}}
 , {"uuid": "workspaces-bar@fthx", "name": "Workspaces Bar", "pname": "workspaces-bar", "description": "Replace 'Activities' button by all current workspaces buttons. Switch workspace or toggle overview by clicking on these buttons.\n\n You can use names for workspaces: there are two ways for that. 1) Edit the string array 'org.gnome.desktop.wm.preferences.workspace-names' gsettings key (through dconf editor, e.g.). 2) Use official GNOME extension Workspaces Indicator's settings. You don't have to write a long enough list: numbers are displayed if no workspace name is defined.", "link": "https://extensions.gnome.org/extension/3851/workspaces-bar/", "shell_version_map": {"38": {"version": "12", "sha256": "1rskz8llic5g8cix4mb6iha9v789fg6yn2i25zj0ywb9qn063ld5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgJ0FjdGl2aXRpZXMnIGJ1dHRvbiBieSBhbGwgY3VycmVudCB3b3Jrc3BhY2VzIGJ1dHRvbnMuIFN3aXRjaCB3b3Jrc3BhY2Ugb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2VzIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC93b3Jrc3BhY2VzLWJhciIsCiAgInV1aWQiOiAid29ya3NwYWNlcy1iYXJAZnRoeCIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "1rskz8llic5g8cix4mb6iha9v789fg6yn2i25zj0ywb9qn063ld5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgJ0FjdGl2aXRpZXMnIGJ1dHRvbiBieSBhbGwgY3VycmVudCB3b3Jrc3BhY2VzIGJ1dHRvbnMuIFN3aXRjaCB3b3Jrc3BhY2Ugb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2VzIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC93b3Jrc3BhY2VzLWJhciIsCiAgInV1aWQiOiAid29ya3NwYWNlcy1iYXJAZnRoeCIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "1rskz8llic5g8cix4mb6iha9v789fg6yn2i25zj0ywb9qn063ld5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlcGxhY2UgJ0FjdGl2aXRpZXMnIGJ1dHRvbiBieSBhbGwgY3VycmVudCB3b3Jrc3BhY2VzIGJ1dHRvbnMuIFN3aXRjaCB3b3Jrc3BhY2Ugb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuIiwKICAibmFtZSI6ICJXb3Jrc3BhY2VzIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC93b3Jrc3BhY2VzLWJhciIsCiAgInV1aWQiOiAid29ya3NwYWNlcy1iYXJAZnRoeCIsCiAgInZlcnNpb24iOiAxMgp9"}}}
 , {"uuid": "scanlines-effect@muratcileli.com", "name": "Scanlines Effect", "pname": "scanlines-effect", "description": "Retro monitor / CRT TV effect.", "link": "https://extensions.gnome.org/extension/3860/scanlines-effect/", "shell_version_map": {"38": {"version": "1", "sha256": "1xcsd700s9hkqmrqlv56ldiya2jk0d46j8k4a4i3m9c6k40c5z7v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJldHJvIG1vbml0b3IgLyBDUlQgVFYgZWZmZWN0LiIsCiAgIm5hbWUiOiAiU2NhbmxpbmVzIEVmZmVjdCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJjb20ubXVyYXRjaWxlbGkuc2NhbmxpbmVzLWVmZmVjdCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL211cmF0LWNpbGVsaS9nbm9tZS1zaGVsbC1leHRlbnNpb24tc2NhbmxpbmVzLWVmZmVjdCIsCiAgInV1aWQiOiAic2NhbmxpbmVzLWVmZmVjdEBtdXJhdGNpbGVsaS5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "workspaces-thumbnails-applet@blogdron", "name": "Workspaces Thumbnails Applet", "pname": "workspaces-thumbnails-applet", "description": "Notice!\n\nThis is a fork of the extension https://extensions.gnome.org/extension/2557/workspaces-thumbnails/ It hasn't been updated in a long time, but it only needs a small fix to work. Until the author fixes the problem, I will keep this fork. Please, if you have the opportunity to contact the author of the original extension, let him fix the problem for himself.\n\n\nPut an indicator on the panel showing all the workspaces thumbnails, allowing to switch between them or moving windows to another workspace.\n\n This is a very tiny fork of the original (GNOME official extension) Workspace Indicator, allowing to use it like when the Horizontal Workspaces extension is activated. The vertical workspaces layout is not modified; the workspaces layout is horizontal only in the top panel and the workspaces switcher in the overview is still showed. Please note that any global bug should be reported against the Workspace Indicator extension. https://extensions.gnome.org/extension/21/workspace-indicator", "link": "https://extensions.gnome.org/extension/3872/workspaces-thumbnails-applet/", "shell_version_map": {"38": {"version": "1", "sha256": "02823b6rfnibb0mhnx848pdxc3birw2aqp8607wjf93mvy5388hm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vdGljZSFcblxuVGhpcyBpcyBhIGZvcmsgb2YgdGhlIGV4dGVuc2lvbiBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8yNTU3L3dvcmtzcGFjZXMtdGh1bWJuYWlscy8gSXQgaGFzbid0IGJlZW4gdXBkYXRlZCBpbiBhIGxvbmcgdGltZSwgYnV0IGl0IG9ubHkgbmVlZHMgYSBzbWFsbCBmaXggdG8gd29yay4gVW50aWwgdGhlIGF1dGhvciBmaXhlcyB0aGUgcHJvYmxlbSwgSSB3aWxsIGtlZXAgdGhpcyBmb3JrLiBQbGVhc2UsIGlmIHlvdSBoYXZlIHRoZSBvcHBvcnR1bml0eSB0byBjb250YWN0IHRoZSBhdXRob3Igb2YgdGhlIG9yaWdpbmFsIGV4dGVuc2lvbiwgbGV0IGhpbSBmaXggdGhlIHByb2JsZW0gZm9yIGhpbXNlbGYuXG5cblxuUHV0IGFuIGluZGljYXRvciBvbiB0aGUgcGFuZWwgc2hvd2luZyBhbGwgdGhlIHdvcmtzcGFjZXMgdGh1bWJuYWlscywgYWxsb3dpbmcgdG8gc3dpdGNoIGJldHdlZW4gdGhlbSBvciBtb3Zpbmcgd2luZG93cyB0byBhbm90aGVyIHdvcmtzcGFjZS5cblxuIFRoaXMgaXMgYSB2ZXJ5IHRpbnkgZm9yayBvZiB0aGUgb3JpZ2luYWwgKEdOT01FIG9mZmljaWFsIGV4dGVuc2lvbikgV29ya3NwYWNlIEluZGljYXRvciwgYWxsb3dpbmcgdG8gdXNlIGl0IGxpa2Ugd2hlbiB0aGUgSG9yaXpvbnRhbCBXb3Jrc3BhY2VzIGV4dGVuc2lvbiBpcyBhY3RpdmF0ZWQuIFRoZSB2ZXJ0aWNhbCB3b3Jrc3BhY2VzIGxheW91dCBpcyBub3QgbW9kaWZpZWQ7IHRoZSB3b3Jrc3BhY2VzIGxheW91dCBpcyBob3Jpem9udGFsIG9ubHkgaW4gdGhlIHRvcCBwYW5lbCBhbmQgdGhlIHdvcmtzcGFjZXMgc3dpdGNoZXIgaW4gdGhlIG92ZXJ2aWV3IGlzIHN0aWxsIHNob3dlZC4gUGxlYXNlIG5vdGUgdGhhdCBhbnkgZ2xvYmFsIGJ1ZyBzaG91bGQgYmUgcmVwb3J0ZWQgYWdhaW5zdCB0aGUgV29ya3NwYWNlIEluZGljYXRvciBleHRlbnNpb24uIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzIxL3dvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJleHRlbnNpb24taWQiOiAid29ya3NwYWNlcy10aHVtYm5haWxzLWFwcGxldCIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbnMiLAogICJuYW1lIjogIldvcmtzcGFjZXMgVGh1bWJuYWlscyBBcHBsZXQiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImZ0aHgiLAogICAgImJsb2dkcm9uIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy53b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIndvcmtzcGFjZXMtdGh1bWJuYWlscy1hcHBsZXRAYmxvZ2Ryb24iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "simple-monitor@fcaballerop.github.io", "name": "Simple monitor", "pname": "simple-monitor", "description": "It cases stuttering in videos for some users, this extension is not being updated.\nA simple panel button that shows CPU and RAM memory usage. Clicking shows the top 10 processes using CPU and memory.", "link": "https://extensions.gnome.org/extension/3891/simple-monitor/", "shell_version_map": {"38": {"version": "5", "sha256": "1gff73ddb7yinxzdqq1cliqf1xlav16j31wlc7nsnl899zj0cd5j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkl0IGNhc2VzIHN0dXR0ZXJpbmcgaW4gdmlkZW9zIGZvciBzb21lIHVzZXJzLCB0aGlzIGV4dGVuc2lvbiBpcyBub3QgYmVpbmcgdXBkYXRlZC5cbkEgc2ltcGxlIHBhbmVsIGJ1dHRvbiB0aGF0IHNob3dzIENQVSBhbmQgUkFNIG1lbW9yeSB1c2FnZS4gQ2xpY2tpbmcgc2hvd3MgdGhlIHRvcCAxMCBwcm9jZXNzZXMgdXNpbmcgQ1BVIGFuZCBtZW1vcnkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZXhhbXBsZSIsCiAgIm5hbWUiOiAiU2ltcGxlIG1vbml0b3IiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc21vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic2ltcGxlLW1vbml0b3JAZmNhYmFsbGVyb3AuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"uuid": "NetworkSpeed@m0hithreddy", "name": "Network Speed", "pname": "network-speed", "description": "Highly customizable Network Speed Monitor.\n\nQuick install: \n\n/bin/bash -c \"$(curl -sL https://git.io/JkFoh)\"\n\nWhat's in this extension:\n\n* Preference Menu to customize the extension.\n* Five configurable network speed modes.\n   1. Total net speed in [g, m, k]b/s.\n   2. Total net speed in [G, M, K]B/s.\n   3. Up and down the speed in [g, m, k]b/s.\n   4. Up and down the speed in [G, M, K]B/s.\n   5. Total Downloaded in [G, M, K]B.\n* Extension color can be customizable.\n* Option to show upload speed first in modes 3 and 4.\n* Align the extension horizontally or vertically.\n* Different font sizes.\n* Option to autohide the extension, when idle.\n\nMouse click events on the extension:\n\n* Left click: Cycle through the modes.\n* Right-click in the first four modes: Toggle the visibility of total downloaded.\n* Right-click in the fifth mode: Reset total downloaded.\n* Four consecutive right-clicks: Toggle the horizontal/vertical alignment.\n* Middle click: Cycle through the font sizes.\n\nThanks to bijignome of creating the extension. Special thanks to prateekmedia for giving rebirth to the extension.\n\nWhat I added:\n\n* Revamping the whole codebase to create a roadmap for many feature additions.\n* Color customizations, Upload speed first, AutoHide.\n* Adopted Make build system to manage the extension (for developers).\n* Quick install method.", "link": "https://extensions.gnome.org/extension/3896/network-speed/", "shell_version_map": {"38": {"version": "1", "sha256": "0029mjirbg2hdk1ms95p29hmf8ahvfjyrsw9079nbds9p7za9f9n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZ2hseSBjdXN0b21pemFibGUgTmV0d29yayBTcGVlZCBNb25pdG9yLlxuXG5RdWljayBpbnN0YWxsOiBcblxuL2Jpbi9iYXNoIC1jIFwiJChjdXJsIC1zTCBodHRwczovL2dpdC5pby9Ka0ZvaClcIlxuXG5XaGF0J3MgaW4gdGhpcyBleHRlbnNpb246XG5cbiogUHJlZmVyZW5jZSBNZW51IHRvIGN1c3RvbWl6ZSB0aGUgZXh0ZW5zaW9uLlxuKiBGaXZlIGNvbmZpZ3VyYWJsZSBuZXR3b3JrIHNwZWVkIG1vZGVzLlxuICAgMS4gVG90YWwgbmV0IHNwZWVkIGluIFtnLCBtLCBrXWIvcy5cbiAgIDIuIFRvdGFsIG5ldCBzcGVlZCBpbiBbRywgTSwgS11CL3MuXG4gICAzLiBVcCBhbmQgZG93biB0aGUgc3BlZWQgaW4gW2csIG0sIGtdYi9zLlxuICAgNC4gVXAgYW5kIGRvd24gdGhlIHNwZWVkIGluIFtHLCBNLCBLXUIvcy5cbiAgIDUuIFRvdGFsIERvd25sb2FkZWQgaW4gW0csIE0sIEtdQi5cbiogRXh0ZW5zaW9uIGNvbG9yIGNhbiBiZSBjdXN0b21pemFibGUuXG4qIE9wdGlvbiB0byBzaG93IHVwbG9hZCBzcGVlZCBmaXJzdCBpbiBtb2RlcyAzIGFuZCA0LlxuKiBBbGlnbiB0aGUgZXh0ZW5zaW9uIGhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5LlxuKiBEaWZmZXJlbnQgZm9udCBzaXplcy5cbiogT3B0aW9uIHRvIGF1dG9oaWRlIHRoZSBleHRlbnNpb24sIHdoZW4gaWRsZS5cblxuTW91c2UgY2xpY2sgZXZlbnRzIG9uIHRoZSBleHRlbnNpb246XG5cbiogTGVmdCBjbGljazogQ3ljbGUgdGhyb3VnaCB0aGUgbW9kZXMuXG4qIFJpZ2h0LWNsaWNrIGluIHRoZSBmaXJzdCBmb3VyIG1vZGVzOiBUb2dnbGUgdGhlIHZpc2liaWxpdHkgb2YgdG90YWwgZG93bmxvYWRlZC5cbiogUmlnaHQtY2xpY2sgaW4gdGhlIGZpZnRoIG1vZGU6IFJlc2V0IHRvdGFsIGRvd25sb2FkZWQuXG4qIEZvdXIgY29uc2VjdXRpdmUgcmlnaHQtY2xpY2tzOiBUb2dnbGUgdGhlIGhvcml6b250YWwvdmVydGljYWwgYWxpZ25tZW50LlxuKiBNaWRkbGUgY2xpY2s6IEN5Y2xlIHRocm91Z2ggdGhlIGZvbnQgc2l6ZXMuXG5cblRoYW5rcyB0byBiaWppZ25vbWUgb2YgY3JlYXRpbmcgdGhlIGV4dGVuc2lvbi4gU3BlY2lhbCB0aGFua3MgdG8gcHJhdGVla21lZGlhIGZvciBnaXZpbmcgcmViaXJ0aCB0byB0aGUgZXh0ZW5zaW9uLlxuXG5XaGF0IEkgYWRkZWQ6XG5cbiogUmV2YW1waW5nIHRoZSB3aG9sZSBjb2RlYmFzZSB0byBjcmVhdGUgYSByb2FkbWFwIGZvciBtYW55IGZlYXR1cmUgYWRkaXRpb25zLlxuKiBDb2xvciBjdXN0b21pemF0aW9ucywgVXBsb2FkIHNwZWVkIGZpcnN0LCBBdXRvSGlkZS5cbiogQWRvcHRlZCBNYWtlIGJ1aWxkIHN5c3RlbSB0byBtYW5hZ2UgdGhlIGV4dGVuc2lvbiAoZm9yIGRldmVsb3BlcnMpLlxuKiBRdWljayBpbnN0YWxsIG1ldGhvZC4iLAogICJuYW1lIjogIk5ldHdvcmsgU3BlZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMTQiLAogICAgIjMuMTYiLAogICAgIjMuMTgiLAogICAgIjMuMjAiLAogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tMGhpdGhyZWRkeS9OZXR3b3JrU3BlZWQiLAogICJ1dWlkIjogIk5ldHdvcmtTcGVlZEBtMGhpdGhyZWRkeSIsCiAgInZlcnNpb24iOiAxCn0="}}}
 , {"uuid": "eye-extended-fix@als.kz", "name": "Eye and Mouse Extended", "pname": "eye-and-mouse-extended", "description": "Adds an eye to the indicator bar that follows your cursor \nYou can also display the mouse indicator, perhaps it will help you with the problem of displaying the mouse cursor in Skype. Import fix of original extension https://github.com/alexeylovchikov/eye-extended-shell-extension", "link": "https://extensions.gnome.org/extension/3902/eye-and-mouse-extended/", "shell_version_map": {"38": {"version": "1", "sha256": "1yxs70vlxyf4ns0nd37fl85lp188j84662lsl2l16rdm39w2c2wf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gZXllIHRvIHRoZSBpbmRpY2F0b3IgYmFyIHRoYXQgZm9sbG93cyB5b3VyIGN1cnNvciBcbllvdSBjYW4gYWxzbyBkaXNwbGF5IHRoZSBtb3VzZSBpbmRpY2F0b3IsIHBlcmhhcHMgaXQgd2lsbCBoZWxwIHlvdSB3aXRoIHRoZSBwcm9ibGVtIG9mIGRpc3BsYXlpbmcgdGhlIG1vdXNlIGN1cnNvciBpbiBTa3lwZS4gSW1wb3J0IGZpeCBvZiBvcmlnaW5hbCBleHRlbnNpb24gaHR0cHM6Ly9naXRodWIuY29tL2FsZXhleWxvdmNoaWtvdi9leWUtZXh0ZW5kZWQtc2hlbGwtZXh0ZW5zaW9uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiRXllRXh0ZW5kZWQiLAogICJuYW1lIjogIkV5ZSBhbmQgTW91c2UgRXh0ZW5kZWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAia3ouYWxzLmV5ZS1leHRlbmRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOC4xIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaXBlYWNvY2tzL2V5ZS1leHRlbmRlZC1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogImV5ZS1leHRlbmRlZC1maXhAYWxzLmt6IiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
-, {"uuid": "RemoveAppMenu@Dragon8oy.com", "name": "Remove App Menu", "pname": "remove-app-menu", "description": "Remove the application menu from the top bar", "link": "https://extensions.gnome.org/extension/3906/remove-app-menu/", "shell_version_map": {"38": {"version": "8", "sha256": "0sjiiyr56b4vj75kn4mi8zj3vx0i1gsxk50n9h0bbxxmhjagz6cg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aGUgYXBwbGljYXRpb24gbWVudSBmcm9tIHRoZSB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgQXBwIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N0dWFydGhheWh1cnN0L3JlbW92ZS1hcHAtbWVudS1leHRlbnNpb24iLAogICJ1dWlkIjogIlJlbW92ZUFwcE1lbnVARHJhZ29uOG95LmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "8", "sha256": "0sjiiyr56b4vj75kn4mi8zj3vx0i1gsxk50n9h0bbxxmhjagz6cg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aGUgYXBwbGljYXRpb24gbWVudSBmcm9tIHRoZSB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgQXBwIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N0dWFydGhheWh1cnN0L3JlbW92ZS1hcHAtbWVudS1leHRlbnNpb24iLAogICJ1dWlkIjogIlJlbW92ZUFwcE1lbnVARHJhZ29uOG95LmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "0sjiiyr56b4vj75kn4mi8zj3vx0i1gsxk50n9h0bbxxmhjagz6cg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aGUgYXBwbGljYXRpb24gbWVudSBmcm9tIHRoZSB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgQXBwIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3N0dWFydGhheWh1cnN0L3JlbW92ZS1hcHAtbWVudS1leHRlbnNpb24iLAogICJ1dWlkIjogIlJlbW92ZUFwcE1lbnVARHJhZ29uOG95LmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
+, {"uuid": "RemoveAppMenu@Dragon8oy.com", "name": "Remove App Menu", "pname": "remove-app-menu", "description": "Remove the application menu from the top bar", "link": "https://extensions.gnome.org/extension/3906/remove-app-menu/", "shell_version_map": {"38": {"version": "9", "sha256": "17w1vgx2hl8lv5vh3hsck2gad9z2g9bvz2x252zvq9f4pg9dx9cj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aGUgYXBwbGljYXRpb24gbWVudSBmcm9tIHRoZSB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgQXBwIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9yZW1vdmUtYXBwLW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJSZW1vdmVBcHBNZW51QERyYWdvbjhveS5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}, "40": {"version": "9", "sha256": "17w1vgx2hl8lv5vh3hsck2gad9z2g9bvz2x252zvq9f4pg9dx9cj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aGUgYXBwbGljYXRpb24gbWVudSBmcm9tIHRoZSB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgQXBwIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9yZW1vdmUtYXBwLW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJSZW1vdmVBcHBNZW51QERyYWdvbjhveS5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}, "41": {"version": "9", "sha256": "17w1vgx2hl8lv5vh3hsck2gad9z2g9bvz2x252zvq9f4pg9dx9cj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aGUgYXBwbGljYXRpb24gbWVudSBmcm9tIHRoZSB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgQXBwIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9yZW1vdmUtYXBwLW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJSZW1vdmVBcHBNZW51QERyYWdvbjhveS5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}, "42": {"version": "9", "sha256": "17w1vgx2hl8lv5vh3hsck2gad9z2g9bvz2x252zvq9f4pg9dx9cj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSB0aGUgYXBwbGljYXRpb24gbWVudSBmcm9tIHRoZSB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgQXBwIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9yZW1vdmUtYXBwLW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJSZW1vdmVBcHBNZW51QERyYWdvbjhveS5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}}}
 , {"uuid": "snow@endlessos.org", "name": "Snow", "pname": "snow", "description": "Let it snow", "link": "https://extensions.gnome.org/extension/3912/snow/", "shell_version_map": {"38": {"version": "4", "sha256": "08sm2vxzrfb72yvncg7qzj4k5smbc1lfm750xh2pwipyzxl841gy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldCBpdCBzbm93IiwKICAibmFtZSI6ICJTbm93IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic25vd0BlbmRsZXNzb3Mub3JnIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "08sm2vxzrfb72yvncg7qzj4k5smbc1lfm750xh2pwipyzxl841gy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldCBpdCBzbm93IiwKICAibmFtZSI6ICJTbm93IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic25vd0BlbmRsZXNzb3Mub3JnIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "08sm2vxzrfb72yvncg7qzj4k5smbc1lfm750xh2pwipyzxl841gy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxldCBpdCBzbm93IiwKICAibmFtZSI6ICJTbm93IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic25vd0BlbmRsZXNzb3Mub3JnIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "sticky-terminal@fthx", "name": "Sticky Terminal", "pname": "sticky-terminal", "description": "Toggle a sticky GNOME terminal window. Your terminal window will always be in foreground while you use another app.\n\nA button in panel allows to toggle the visibility of the terminal. Window is resizeable.\n\nYou can easily change it to default another terminal app or another app. Some other settings. See comments in extension.js file.", "link": "https://extensions.gnome.org/extension/3915/sticky-terminal/", "shell_version_map": {"38": {"version": "2", "sha256": "0j65ihfhama6scp2b8qbqr1h4gamy4v0w1ygxrfglhvl3jhjm5zz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSBhIHN0aWNreSBHTk9NRSB0ZXJtaW5hbCB3aW5kb3cuIFlvdXIgdGVybWluYWwgd2luZG93IHdpbGwgYWx3YXlzIGJlIGluIGZvcmVncm91bmQgd2hpbGUgeW91IHVzZSBhbm90aGVyIGFwcC5cblxuQSBidXR0b24gaW4gcGFuZWwgYWxsb3dzIHRvIHRvZ2dsZSB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgdGVybWluYWwuIFdpbmRvdyBpcyByZXNpemVhYmxlLlxuXG5Zb3UgY2FuIGVhc2lseSBjaGFuZ2UgaXQgdG8gZGVmYXVsdCBhbm90aGVyIHRlcm1pbmFsIGFwcCBvciBhbm90aGVyIGFwcC4gU29tZSBvdGhlciBzZXR0aW5ncy4gU2VlIGNvbW1lbnRzIGluIGV4dGVuc2lvbi5qcyBmaWxlLiIsCiAgIm5hbWUiOiAiU3RpY2t5IFRlcm1pbmFsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9zdGlja3ktdGVybWluYWwiLAogICJ1dWlkIjogInN0aWNreS10ZXJtaW5hbEBmdGh4IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "sticky-r-terminal@fthx", "name": "Sticky R Terminal", "pname": "sticky-r-terminal", "description": "Toggle a sticky R terminal window. Your R window will always be in foreground while you use another app.\n\nYou can easily change it to default another terminal app or another app. Some other settings. See comments in extension.js file. Same extension only running a terminal: https://extensions.gnome.org/extension/3915/sticky-terminal . You can use it with R if this extension does not work for your R installation setup.\n\nKeywords: stat, stats, statistics, statistical, r-cran.", "link": "https://extensions.gnome.org/extension/3916/sticky-r-terminal/", "shell_version_map": {"38": {"version": "1", "sha256": "17x84g6fb785jmcl5jz41nw4rgzaad48mc5zllh5b3a485731f0s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSBhIHN0aWNreSBSIHRlcm1pbmFsIHdpbmRvdy4gWW91ciBSIHdpbmRvdyB3aWxsIGFsd2F5cyBiZSBpbiBmb3JlZ3JvdW5kIHdoaWxlIHlvdSB1c2UgYW5vdGhlciBhcHAuXG5cbllvdSBjYW4gZWFzaWx5IGNoYW5nZSBpdCB0byBkZWZhdWx0IGFub3RoZXIgdGVybWluYWwgYXBwIG9yIGFub3RoZXIgYXBwLiBTb21lIG90aGVyIHNldHRpbmdzLiBTZWUgY29tbWVudHMgaW4gZXh0ZW5zaW9uLmpzIGZpbGUuIFNhbWUgZXh0ZW5zaW9uIG9ubHkgcnVubmluZyBhIHRlcm1pbmFsOiBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8zOTE1L3N0aWNreS10ZXJtaW5hbCAuIFlvdSBjYW4gdXNlIGl0IHdpdGggUiBpZiB0aGlzIGV4dGVuc2lvbiBkb2VzIG5vdCB3b3JrIGZvciB5b3VyIFIgaW5zdGFsbGF0aW9uIHNldHVwLlxuXG5LZXl3b3Jkczogc3RhdCwgc3RhdHMsIHN0YXRpc3RpY3MsIHN0YXRpc3RpY2FsLCByLWNyYW4uIiwKICAibmFtZSI6ICJTdGlja3kgUiBUZXJtaW5hbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvc3RpY2t5LXItdGVybWluYWwiLAogICJ1dWlkIjogInN0aWNreS1yLXRlcm1pbmFsQGZ0aHgiLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "onedrive@diegobazzanella.com", "name": "One Drive", "pname": "one-drive", "description": "One Drive extension", "link": "https://extensions.gnome.org/extension/3919/one-drive/", "shell_version_map": {"38": {"version": "4", "sha256": "0h37rr9hw6azrlf465ngl7w7miii9bm4sh33wkr0x8q51rz62ydd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk9uZSBEcml2ZSBleHRlbnNpb24iLAogICJuYW1lIjogIk9uZSBEcml2ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2RiYXp6YS9vbmVEcml2ZSIsCiAgInV1aWQiOiAib25lZHJpdmVAZGllZ29iYXp6YW5lbGxhLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "snowy@exposedcat", "name": "Snowy", "pname": "snowy", "description": "Make you festive mood with falling snow on your GNOME DE system", "link": "https://extensions.gnome.org/extension/3921/snowy/", "shell_version_map": {"40": {"version": "12", "sha256": "17y10r06dmfilbax4f55jxn2xxsjfbykrijxc4b96p3szi69110r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgeW91IGZlc3RpdmUgbW9vZCB3aXRoIGZhbGxpbmcgc25vdyBvbiB5b3VyIEdOT01FIERFIHN5c3RlbSIsCiAgIm5hbWUiOiAiU25vd3kiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0V4cG9zZWRDYXQvc25vd3kiLAogICJ1dWlkIjogInNub3d5QGV4cG9zZWRjYXQiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "41": {"version": "12", "sha256": "17y10r06dmfilbax4f55jxn2xxsjfbykrijxc4b96p3szi69110r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgeW91IGZlc3RpdmUgbW9vZCB3aXRoIGZhbGxpbmcgc25vdyBvbiB5b3VyIEdOT01FIERFIHN5c3RlbSIsCiAgIm5hbWUiOiAiU25vd3kiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0V4cG9zZWRDYXQvc25vd3kiLAogICJ1dWlkIjogInNub3d5QGV4cG9zZWRjYXQiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}}}
 , {"uuid": "focus@scaryrawr.github.io", "name": "Focus", "pname": "focus", "description": "Transparent inactive windows", "link": "https://extensions.gnome.org/extension/3924/focus/", "shell_version_map": {"38": {"version": "7", "sha256": "01sh4wxnizgszwggrkp5l5j7iiayrz1wys06hnrq03014kgkd829", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zcGFyZW50IGluYWN0aXZlIHdpbmRvd3MiLAogICJuYW1lIjogIkZvY3VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MC5iZXRhIiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zY2FyeXJhd3IvZ25vbWUtZm9jdXMiLAogICJ1dWlkIjogImZvY3VzQHNjYXJ5cmF3ci5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "7", "sha256": "01sh4wxnizgszwggrkp5l5j7iiayrz1wys06hnrq03014kgkd829", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zcGFyZW50IGluYWN0aXZlIHdpbmRvd3MiLAogICJuYW1lIjogIkZvY3VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MC5iZXRhIiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zY2FyeXJhd3IvZ25vbWUtZm9jdXMiLAogICJ1dWlkIjogImZvY3VzQHNjYXJ5cmF3ci5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNwp9"}, "41": {"version": "7", "sha256": "01sh4wxnizgszwggrkp5l5j7iiayrz1wys06hnrq03014kgkd829", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zcGFyZW50IGluYWN0aXZlIHdpbmRvd3MiLAogICJuYW1lIjogIkZvY3VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MC5iZXRhIiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zY2FyeXJhd3IvZ25vbWUtZm9jdXMiLAogICJ1dWlkIjogImZvY3VzQHNjYXJ5cmF3ci5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNwp9"}}}
-, {"uuid": "autoselectheadset@josephlbarnett.github.com", "name": "Auto select headset", "pname": "auto-select-headset", "description": "Auto selects headsets when possible instead of showing a dialog", "link": "https://extensions.gnome.org/extension/3928/auto-select-headset/", "shell_version_map": {"38": {"version": "3", "sha256": "097q3xgkm5g75vjy76v9y8q7n5jb1wvxv2ffvj1f0nk0ag7y909d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG8gc2VsZWN0cyBoZWFkc2V0cyB3aGVuIHBvc3NpYmxlIGluc3RlYWQgb2Ygc2hvd2luZyBhIGRpYWxvZyIsCiAgIm5hbWUiOiAiQXV0byBzZWxlY3QgaGVhZHNldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qb3NlcGhsYmFybmV0dC9hdXRvc2VsZWN0aGVhZHNldC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogImF1dG9zZWxlY3RoZWFkc2V0QGpvc2VwaGxiYXJuZXR0LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "097q3xgkm5g75vjy76v9y8q7n5jb1wvxv2ffvj1f0nk0ag7y909d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG8gc2VsZWN0cyBoZWFkc2V0cyB3aGVuIHBvc3NpYmxlIGluc3RlYWQgb2Ygc2hvd2luZyBhIGRpYWxvZyIsCiAgIm5hbWUiOiAiQXV0byBzZWxlY3QgaGVhZHNldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qb3NlcGhsYmFybmV0dC9hdXRvc2VsZWN0aGVhZHNldC1nbm9tZS1zaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogImF1dG9zZWxlY3RoZWFkc2V0QGpvc2VwaGxiYXJuZXR0LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}}}
+, {"uuid": "autoselectheadset@josephlbarnett.github.com", "name": "Auto select headset", "pname": "auto-select-headset", "description": "Auto selects headsets when possible instead of showing a dialog", "link": "https://extensions.gnome.org/extension/3928/auto-select-headset/", "shell_version_map": {"38": {"version": "5", "sha256": "1lzn5ah6djggb8qcj9r70fmnvs5dpd342f5izx1scpk6h48rna8q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG8gc2VsZWN0cyBoZWFkc2V0cyB3aGVuIHBvc3NpYmxlIGluc3RlYWQgb2Ygc2hvd2luZyBhIGRpYWxvZyIsCiAgIm5hbWUiOiAiQXV0byBzZWxlY3QgaGVhZHNldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2pvc2VwaGxiYXJuZXR0L2F1dG9zZWxlY3RoZWFkc2V0LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiYXV0b3NlbGVjdGhlYWRzZXRAam9zZXBobGJhcm5ldHQuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "1lzn5ah6djggb8qcj9r70fmnvs5dpd342f5izx1scpk6h48rna8q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG8gc2VsZWN0cyBoZWFkc2V0cyB3aGVuIHBvc3NpYmxlIGluc3RlYWQgb2Ygc2hvd2luZyBhIGRpYWxvZyIsCiAgIm5hbWUiOiAiQXV0byBzZWxlY3QgaGVhZHNldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2pvc2VwaGxiYXJuZXR0L2F1dG9zZWxlY3RoZWFkc2V0LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiYXV0b3NlbGVjdGhlYWRzZXRAam9zZXBobGJhcm5ldHQuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "1lzn5ah6djggb8qcj9r70fmnvs5dpd342f5izx1scpk6h48rna8q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG8gc2VsZWN0cyBoZWFkc2V0cyB3aGVuIHBvc3NpYmxlIGluc3RlYWQgb2Ygc2hvd2luZyBhIGRpYWxvZyIsCiAgIm5hbWUiOiAiQXV0byBzZWxlY3QgaGVhZHNldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2pvc2VwaGxiYXJuZXR0L2F1dG9zZWxlY3RoZWFkc2V0LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiYXV0b3NlbGVjdGhlYWRzZXRAam9zZXBobGJhcm5ldHQuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}, "42": {"version": "5", "sha256": "1lzn5ah6djggb8qcj9r70fmnvs5dpd342f5izx1scpk6h48rna8q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG8gc2VsZWN0cyBoZWFkc2V0cyB3aGVuIHBvc3NpYmxlIGluc3RlYWQgb2Ygc2hvd2luZyBhIGRpYWxvZyIsCiAgIm5hbWUiOiAiQXV0byBzZWxlY3QgaGVhZHNldCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2pvc2VwaGxiYXJuZXR0L2F1dG9zZWxlY3RoZWFkc2V0LWdub21lLXNoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiYXV0b3NlbGVjdGhlYWRzZXRAam9zZXBobGJhcm5ldHQuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "toggle-night-light@cansozbir.github.io", "name": "Toggle Night Light", "pname": "toggle-night-light", "description": "This extension lets you toggle night-light from the top-bar by clicking it.", "link": "https://extensions.gnome.org/extension/3933/toggle-night-light/", "shell_version_map": {"38": {"version": "5", "sha256": "1r7mjixc2r8p5cmgk94sbj7gsx9xfx5sfnaxa01prqrpd3pqlhzv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGxldHMgeW91IHRvZ2dsZSBuaWdodC1saWdodCBmcm9tIHRoZSB0b3AtYmFyIGJ5IGNsaWNraW5nIGl0LiIsCiAgIm5hbWUiOiAiVG9nZ2xlIE5pZ2h0IExpZ2h0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jYW5zb3piaXIvZ25vbWUtc2hlbGwtdG9nZ2xlLW5pZ2h0LWxpZ2h0LWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidG9nZ2xlLW5pZ2h0LWxpZ2h0QGNhbnNvemJpci5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "1r7mjixc2r8p5cmgk94sbj7gsx9xfx5sfnaxa01prqrpd3pqlhzv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGxldHMgeW91IHRvZ2dsZSBuaWdodC1saWdodCBmcm9tIHRoZSB0b3AtYmFyIGJ5IGNsaWNraW5nIGl0LiIsCiAgIm5hbWUiOiAiVG9nZ2xlIE5pZ2h0IExpZ2h0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jYW5zb3piaXIvZ25vbWUtc2hlbGwtdG9nZ2xlLW5pZ2h0LWxpZ2h0LWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidG9nZ2xlLW5pZ2h0LWxpZ2h0QGNhbnNvemJpci5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNQp9"}, "41": {"version": "5", "sha256": "1r7mjixc2r8p5cmgk94sbj7gsx9xfx5sfnaxa01prqrpd3pqlhzv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGxldHMgeW91IHRvZ2dsZSBuaWdodC1saWdodCBmcm9tIHRoZSB0b3AtYmFyIGJ5IGNsaWNraW5nIGl0LiIsCiAgIm5hbWUiOiAiVG9nZ2xlIE5pZ2h0IExpZ2h0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jYW5zb3piaXIvZ25vbWUtc2hlbGwtdG9nZ2xlLW5pZ2h0LWxpZ2h0LWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidG9nZ2xlLW5pZ2h0LWxpZ2h0QGNhbnNvemJpci5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "adwaita-theme-switcher@fthx", "name": "Adwaita Theme Switcher", "pname": "adwaita-theme-switcher", "description": "Button in panel: switch between Adwaita dark and light themes.", "link": "https://extensions.gnome.org/extension/3936/adwaita-theme-switcher/", "shell_version_map": {"38": {"version": "4", "sha256": "0015j3vqwvb0fs2n90lz0i66f23nr7mmvqzgwnsah46x8lkm2kpr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJ1dHRvbiBpbiBwYW5lbDogc3dpdGNoIGJldHdlZW4gQWR3YWl0YSBkYXJrIGFuZCBsaWdodCB0aGVtZXMuIiwKICAibmFtZSI6ICJBZHdhaXRhIFRoZW1lIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2Fkd2FpdGEtdGhlbWUtc3dpdGNoZXIiLAogICJ1dWlkIjogImFkd2FpdGEtdGhlbWUtc3dpdGNoZXJAZnRoeCIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "0015j3vqwvb0fs2n90lz0i66f23nr7mmvqzgwnsah46x8lkm2kpr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJ1dHRvbiBpbiBwYW5lbDogc3dpdGNoIGJldHdlZW4gQWR3YWl0YSBkYXJrIGFuZCBsaWdodCB0aGVtZXMuIiwKICAibmFtZSI6ICJBZHdhaXRhIFRoZW1lIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2Fkd2FpdGEtdGhlbWUtc3dpdGNoZXIiLAogICJ1dWlkIjogImFkd2FpdGEtdGhlbWUtc3dpdGNoZXJAZnRoeCIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "0015j3vqwvb0fs2n90lz0i66f23nr7mmvqzgwnsah46x8lkm2kpr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJ1dHRvbiBpbiBwYW5lbDogc3dpdGNoIGJldHdlZW4gQWR3YWl0YSBkYXJrIGFuZCBsaWdodCB0aGVtZXMuIiwKICAibmFtZSI6ICJBZHdhaXRhIFRoZW1lIFN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2Fkd2FpdGEtdGhlbWUtc3dpdGNoZXIiLAogICJ1dWlkIjogImFkd2FpdGEtdGhlbWUtc3dpdGNoZXJAZnRoeCIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "fnlock-switch-tp-comp-usb-kb@goloshubov.github.io", "name": "FnLock switch (ThinkPad Compact USB Keyboard) ", "pname": "fnlock-switch-thinkpad-compact-usb-keyboard", "description": "FnLock switch for Lenovo ThinkPad Compact USB Keyboard ", "link": "https://extensions.gnome.org/extension/3939/fnlock-switch-thinkpad-compact-usb-keyboard/", "shell_version_map": {"38": {"version": "4", "sha256": "1nybwgfp354zn1z1lkl3wvvz2zddk6nbm9n2h5f5gbp58vhl8mw4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZuTG9jayBzd2l0Y2ggZm9yIExlbm92byBUaGlua1BhZCBDb21wYWN0IFVTQiBLZXlib2FyZCAiLAogICJuYW1lIjogIkZuTG9jayBzd2l0Y2ggKFRoaW5rUGFkIENvbXBhY3QgVVNCIEtleWJvYXJkKSAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dvbG9zaHVib3YvZm5sb2NrLXN3aXRjaC10cC1jb21wLXVzYi1rYiIsCiAgInV1aWQiOiAiZm5sb2NrLXN3aXRjaC10cC1jb21wLXVzYi1rYkBnb2xvc2h1Ym92LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "1nybwgfp354zn1z1lkl3wvvz2zddk6nbm9n2h5f5gbp58vhl8mw4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZuTG9jayBzd2l0Y2ggZm9yIExlbm92byBUaGlua1BhZCBDb21wYWN0IFVTQiBLZXlib2FyZCAiLAogICJuYW1lIjogIkZuTG9jayBzd2l0Y2ggKFRoaW5rUGFkIENvbXBhY3QgVVNCIEtleWJvYXJkKSAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dvbG9zaHVib3YvZm5sb2NrLXN3aXRjaC10cC1jb21wLXVzYi1rYiIsCiAgInV1aWQiOiAiZm5sb2NrLXN3aXRjaC10cC1jb21wLXVzYi1rYkBnb2xvc2h1Ym92LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "1nybwgfp354zn1z1lkl3wvvz2zddk6nbm9n2h5f5gbp58vhl8mw4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZuTG9jayBzd2l0Y2ggZm9yIExlbm92byBUaGlua1BhZCBDb21wYWN0IFVTQiBLZXlib2FyZCAiLAogICJuYW1lIjogIkZuTG9jayBzd2l0Y2ggKFRoaW5rUGFkIENvbXBhY3QgVVNCIEtleWJvYXJkKSAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dvbG9zaHVib3YvZm5sb2NrLXN3aXRjaC10cC1jb21wLXVzYi1rYiIsCiAgInV1aWQiOiAiZm5sb2NrLXN3aXRjaC10cC1jb21wLXVzYi1rYkBnb2xvc2h1Ym92LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA0Cn0="}}}
@@ -415,29 +415,29 @@
 , {"uuid": "persistent-email-notifications@fthx", "name": "Persistent Email Notifications", "pname": "persistent-email-notifications", "description": "Never hide a new mail notification, except if you close it.\n\nVery very light extension. Email clients supported: Thunderbird, Evolution, Geary, Mailspring, TypeApp, BlueMail. Please ask for another email client if needed.", "link": "https://extensions.gnome.org/extension/3951/persistent-email-notifications/", "shell_version_map": {"38": {"version": "3", "sha256": "06m6fhs50vlrwkgdk6cvkcl5f155a1w8szs1g9pzryf8mmldgmdd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldmVyIGhpZGUgYSBuZXcgbWFpbCBub3RpZmljYXRpb24sIGV4Y2VwdCBpZiB5b3UgY2xvc2UgaXQuXG5cblZlcnkgdmVyeSBsaWdodCBleHRlbnNpb24uIEVtYWlsIGNsaWVudHMgc3VwcG9ydGVkOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZywgVHlwZUFwcCwgQmx1ZU1haWwuIFBsZWFzZSBhc2sgZm9yIGFub3RoZXIgZW1haWwgY2xpZW50IGlmIG5lZWRlZC4iLAogICJuYW1lIjogIlBlcnNpc3RlbnQgRW1haWwgTm90aWZpY2F0aW9ucyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L3BlcnNpc3RlbnQtZW1haWwtbm90aWZpY2F0aW9ucyIsCiAgInV1aWQiOiAicGVyc2lzdGVudC1lbWFpbC1ub3RpZmljYXRpb25zQGZ0aHgiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "06m6fhs50vlrwkgdk6cvkcl5f155a1w8szs1g9pzryf8mmldgmdd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5ldmVyIGhpZGUgYSBuZXcgbWFpbCBub3RpZmljYXRpb24sIGV4Y2VwdCBpZiB5b3UgY2xvc2UgaXQuXG5cblZlcnkgdmVyeSBsaWdodCBleHRlbnNpb24uIEVtYWlsIGNsaWVudHMgc3VwcG9ydGVkOiBUaHVuZGVyYmlyZCwgRXZvbHV0aW9uLCBHZWFyeSwgTWFpbHNwcmluZywgVHlwZUFwcCwgQmx1ZU1haWwuIFBsZWFzZSBhc2sgZm9yIGFub3RoZXIgZW1haWwgY2xpZW50IGlmIG5lZWRlZC4iLAogICJuYW1lIjogIlBlcnNpc3RlbnQgRW1haWwgTm90aWZpY2F0aW9ucyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L3BlcnNpc3RlbnQtZW1haWwtbm90aWZpY2F0aW9ucyIsCiAgInV1aWQiOiAicGVyc2lzdGVudC1lbWFpbC1ub3RpZmljYXRpb25zQGZ0aHgiLAogICJ2ZXJzaW9uIjogMwp9"}}}
 , {"uuid": "horizontal-workspace-indicator@tty2.io", "name": "Workspace indicator", "pname": "workspace-indicator", "description": "Workspace indicator shows the amount of opened workspaces and highlights the current one using unicode characters.\n\nYou can use it as an indicator only but widget is clickable. Left button click: move to left, right click: move right.\n\nYou can change the widgets position with preferences. The widget can be pinned to right corner (status area) default, center (data time area) and left corner (activities area).\n\nThere could be an error with the extension after update. The solution is to logout and login again.", "link": "https://extensions.gnome.org/extension/3952/workspace-indicator/", "shell_version_map": {"38": {"version": "9", "sha256": "1zzgxr6iq8c3drpd2n9hqly5pv827qpfy2kbjyzzzgxcvz5002df", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuXG5cbllvdSBjYW4gY2hhbmdlIHRoZSB3aWRnZXRzIHBvc2l0aW9uIHdpdGggcHJlZmVyZW5jZXMuIFRoZSB3aWRnZXQgY2FuIGJlIHBpbm5lZCB0byByaWdodCBjb3JuZXIgKHN0YXR1cyBhcmVhKSBkZWZhdWx0LCBjZW50ZXIgKGRhdGEgdGltZSBhcmVhKSBhbmQgbGVmdCBjb3JuZXIgKGFjdGl2aXRpZXMgYXJlYSkuXG5cblRoZXJlIGNvdWxkIGJlIGFuIGVycm9yIHdpdGggdGhlIGV4dGVuc2lvbiBhZnRlciB1cGRhdGUuIFRoZSBzb2x1dGlvbiBpcyB0byBsb2dvdXQgYW5kIGxvZ2luIGFnYWluLiIsCiAgIm5hbWUiOiAiV29ya3NwYWNlIGluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHR5Mi9ob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImhvcml6b250YWwtd29ya3NwYWNlLWluZGljYXRvckB0dHkyLmlvIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "40": {"version": "11", "sha256": "1y2ykdqcifhmps9lqpcpkpp8a7vfs5n48y9y9cm0pflxn6zzdqsb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuXG5cbllvdSBjYW4gY2hhbmdlIHRoZSB3aWRnZXRzIHBvc2l0aW9uIHdpdGggcHJlZmVyZW5jZXMuIFRoZSB3aWRnZXQgY2FuIGJlIHBpbm5lZCB0byByaWdodCBjb3JuZXIgKHN0YXR1cyBhcmVhKSBkZWZhdWx0LCBjZW50ZXIgKGRhdGEgdGltZSBhcmVhKSBhbmQgbGVmdCBjb3JuZXIgKGFjdGl2aXRpZXMgYXJlYSkuXG5cblRoZXJlIGNvdWxkIGJlIGFuIGVycm9yIHdpdGggdGhlIGV4dGVuc2lvbiBhZnRlciB1cGRhdGUuIFRoZSBzb2x1dGlvbiBpcyB0byBsb2dvdXQgYW5kIGxvZ2luIGFnYWluLiIsCiAgIm5hbWUiOiAiV29ya3NwYWNlIGluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R0eTIvaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3JAdHR5Mi5pbyIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "1y2ykdqcifhmps9lqpcpkpp8a7vfs5n48y9y9cm0pflxn6zzdqsb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBpbmRpY2F0b3Igc2hvd3MgdGhlIGFtb3VudCBvZiBvcGVuZWQgd29ya3NwYWNlcyBhbmQgaGlnaGxpZ2h0cyB0aGUgY3VycmVudCBvbmUgdXNpbmcgdW5pY29kZSBjaGFyYWN0ZXJzLlxuXG5Zb3UgY2FuIHVzZSBpdCBhcyBhbiBpbmRpY2F0b3Igb25seSBidXQgd2lkZ2V0IGlzIGNsaWNrYWJsZS4gTGVmdCBidXR0b24gY2xpY2s6IG1vdmUgdG8gbGVmdCwgcmlnaHQgY2xpY2s6IG1vdmUgcmlnaHQuXG5cbllvdSBjYW4gY2hhbmdlIHRoZSB3aWRnZXRzIHBvc2l0aW9uIHdpdGggcHJlZmVyZW5jZXMuIFRoZSB3aWRnZXQgY2FuIGJlIHBpbm5lZCB0byByaWdodCBjb3JuZXIgKHN0YXR1cyBhcmVhKSBkZWZhdWx0LCBjZW50ZXIgKGRhdGEgdGltZSBhcmVhKSBhbmQgbGVmdCBjb3JuZXIgKGFjdGl2aXRpZXMgYXJlYSkuXG5cblRoZXJlIGNvdWxkIGJlIGFuIGVycm9yIHdpdGggdGhlIGV4dGVuc2lvbiBhZnRlciB1cGRhdGUuIFRoZSBzb2x1dGlvbiBpcyB0byBsb2dvdXQgYW5kIGxvZ2luIGFnYWluLiIsCiAgIm5hbWUiOiAiV29ya3NwYWNlIGluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R0eTIvaG9yaXpvbnRhbC13b3Jrc3BhY2UtaW5kaWNhdG9yIiwKICAidXVpZCI6ICJob3Jpem9udGFsLXdvcmtzcGFjZS1pbmRpY2F0b3JAdHR5Mi5pbyIsCiAgInZlcnNpb24iOiAxMQp9"}}}
 , {"uuid": "kitchentimer@blackjackshellac.ca", "name": "Kitchen Timer", "pname": "kitchen-timer", "description": "General purpose timer extension for Gnome Shell\n\nPlease report issues on github\n\nIf updating the extension reports an ERROR, it should work after the next reboot or if you logout and login again.", "link": "https://extensions.gnome.org/extension/3955/kitchen-timer/", "shell_version_map": {"38": {"version": "28", "sha256": "0k1ahswl2ipjz1v1z1j96lndbk26rgfr2ra2g78lvzjiv6j42sdf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdlbmVyYWwgcHVycG9zZSB0aW1lciBleHRlbnNpb24gZm9yIEdub21lIFNoZWxsXG5cblBsZWFzZSByZXBvcnQgaXNzdWVzIG9uIGdpdGh1YlxuXG5JZiB1cGRhdGluZyB0aGUgZXh0ZW5zaW9uIHJlcG9ydHMgYW4gRVJST1IsIGl0IHNob3VsZCB3b3JrIGFmdGVyIHRoZSBuZXh0IHJlYm9vdCBvciBpZiB5b3UgbG9nb3V0IGFuZCBsb2dpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJraXRjaGVuLXRpbWVyLWJsYWNramFja3NoZWxsYWMiLAogICJuYW1lIjogIktpdGNoZW4gVGltZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMua2l0Y2hlbi10aW1lci1ibGFja2phY2tzaGVsbGFjIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsYWNramFja3NoZWxsYWMva2l0Y2hlblRpbWVyIiwKICAidXVpZCI6ICJraXRjaGVudGltZXJAYmxhY2tqYWNrc2hlbGxhYy5jYSIsCiAgInZlcnNpb24iOiAyOAp9"}, "40": {"version": "28", "sha256": "0k1ahswl2ipjz1v1z1j96lndbk26rgfr2ra2g78lvzjiv6j42sdf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdlbmVyYWwgcHVycG9zZSB0aW1lciBleHRlbnNpb24gZm9yIEdub21lIFNoZWxsXG5cblBsZWFzZSByZXBvcnQgaXNzdWVzIG9uIGdpdGh1YlxuXG5JZiB1cGRhdGluZyB0aGUgZXh0ZW5zaW9uIHJlcG9ydHMgYW4gRVJST1IsIGl0IHNob3VsZCB3b3JrIGFmdGVyIHRoZSBuZXh0IHJlYm9vdCBvciBpZiB5b3UgbG9nb3V0IGFuZCBsb2dpbiBhZ2Fpbi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJraXRjaGVuLXRpbWVyLWJsYWNramFja3NoZWxsYWMiLAogICJuYW1lIjogIktpdGNoZW4gVGltZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMua2l0Y2hlbi10aW1lci1ibGFja2phY2tzaGVsbGFjIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2JsYWNramFja3NoZWxsYWMva2l0Y2hlblRpbWVyIiwKICAidXVpZCI6ICJraXRjaGVudGltZXJAYmxhY2tqYWNrc2hlbGxhYy5jYSIsCiAgInZlcnNpb24iOiAyOAp9"}}}
-, {"uuid": "gnome-fuzzy-app-search@gnome-shell-extensions.Czarlie.gitlab.com", "name": "GNOME Fuzzy App Search", "pname": "gnome-fuzzy-app-search", "description": "Fuzzy application search results for Gnome Search", "link": "https://extensions.gnome.org/extension/3956/gnome-fuzzy-app-search/", "shell_version_map": {"38": {"version": "11", "sha256": "188kyjh437q2vljfqaiqhssg1b7asmh0d3jmxy3507xvya6hkrgf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9DemFybGllL2dub21lLWZ1enp5LWFwcC1zZWFyY2giLAogICJ1dWlkIjogImdub21lLWZ1enp5LWFwcC1zZWFyY2hAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5DemFybGllLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "40": {"version": "11", "sha256": "188kyjh437q2vljfqaiqhssg1b7asmh0d3jmxy3507xvya6hkrgf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9DemFybGllL2dub21lLWZ1enp5LWFwcC1zZWFyY2giLAogICJ1dWlkIjogImdub21lLWZ1enp5LWFwcC1zZWFyY2hAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5DemFybGllLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "41": {"version": "11", "sha256": "188kyjh437q2vljfqaiqhssg1b7asmh0d3jmxy3507xvya6hkrgf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9DemFybGllL2dub21lLWZ1enp5LWFwcC1zZWFyY2giLAogICJ1dWlkIjogImdub21lLWZ1enp5LWFwcC1zZWFyY2hAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5DemFybGllLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
+, {"uuid": "gnome-fuzzy-app-search@gnome-shell-extensions.Czarlie.gitlab.com", "name": "GNOME Fuzzy App Search", "pname": "gnome-fuzzy-app-search", "description": "Fuzzy application search results for Gnome Search", "link": "https://extensions.gnome.org/extension/3956/gnome-fuzzy-app-search/", "shell_version_map": {"38": {"version": "13", "sha256": "0q553m2yjwxsygxjj2nc4wrg4xbf5cnakdyxfgnxvgywkh1mv8dh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9DemFybGllL2dub21lLWZ1enp5LWFwcC1zZWFyY2giLAogICJ1dWlkIjogImdub21lLWZ1enp5LWFwcC1zZWFyY2hAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5DemFybGllLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "40": {"version": "13", "sha256": "0q553m2yjwxsygxjj2nc4wrg4xbf5cnakdyxfgnxvgywkh1mv8dh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9DemFybGllL2dub21lLWZ1enp5LWFwcC1zZWFyY2giLAogICJ1dWlkIjogImdub21lLWZ1enp5LWFwcC1zZWFyY2hAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5DemFybGllLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "41": {"version": "13", "sha256": "0q553m2yjwxsygxjj2nc4wrg4xbf5cnakdyxfgnxvgywkh1mv8dh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvciI6ICJDemFybGllIDxsZWVlNDlAZ21haWwuY29tPiIsCiAgImF1dGhvci1odG1sIjogIkN6YXJsaWUgJmx0OzxhIGhyZWY9XCJtYWlsdG86bGVlZTQ5Ljd4N0BnbWFpbC5jb21cIj5sZWVlNDkuN3g3QGdtYWlsLmNvbTwvYT4mZ3Q7IiwKICAiZGVzY3JpcHRpb24iOiAiRnV6enkgYXBwbGljYXRpb24gc2VhcmNoIHJlc3VsdHMgZm9yIEdub21lIFNlYXJjaCIsCiAgImRlc2NyaXB0aW9uLWh0bWwiOiAiPGEgaHJlZj1cImh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FwcHJveGltYXRlX3N0cmluZ19tYXRjaGluZ1wiPkZ1enp5PC9hPiBhcHBsaWNhdGlvbiBzZWFyY2ggcmVzdWx0cyBmb3IgPGEgaHJlZj1cImh0dHBzOi8vZGV2ZWxvcGVyLmdub21lLm9yZy9TZWFyY2hQcm92aWRlci9cIj5Hbm9tZSBTZWFyY2g8L2E+LiIsCiAgImVtYWlsIjogImxlZWU0OS43eDdAZ21haWwuY29tIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtZnV6enktYXBwLXNlYXJjaCIsCiAgImxpY2Vuc2UiOiAiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjMuMCIsCiAgImxpY2Vuc2UtaHRtbCI6ICJUaGlzIHByb2dyYW0gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZLlxuU2VlIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMy4wLmh0bWxcIj5HTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2My4wPC9hPiBmb3IgZGV0YWlscy4iLAogICJuYW1lIjogIkdOT01FIEZ1enp5IEFwcCBTZWFyY2giLAogICJvcmlnaW5hbC1hdXRob3IiOiAiRnJhbmpvIEZpbG8gPGZmZmlsbzY2NkBnbWFpbC5jb20+IiwKICAib3JpZ2luYWwtYXV0aG9yLWh0bWwiOiAiRnJhbmpvIEZpbG8gJmx0OzxhIGhyZWY9XCJtYWlsdG86ZmZmaWxvNjY2QGdtYWlsLmNvbVwiPmZmZmlsbzY2NkBnbWFpbC5jb208L2E+Jmd0OyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1mdXp6eS1hcHAtc2VhcmNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9DemFybGllL2dub21lLWZ1enp5LWFwcC1zZWFyY2giLAogICJ1dWlkIjogImdub21lLWZ1enp5LWFwcC1zZWFyY2hAZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5DemFybGllLmdpdGxhYi5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
 , {"uuid": "e-ink-mode@fujimo-t.github.io", "name": "E Ink Mode", "pname": "e-ink-mode", "description": "Make desktop suitable for E Ink monitors.\n\nUnmaintenanced.\nPlease migrate to theme:\nhttps://github.com/fujimo-t/gnome-shell-theme-e-ink\nSee below to detail:\nhttps://github.com/fujimo-t/gnome-shell-extension-e-ink-mode/issues/3#issuecomment-1019159171", "link": "https://extensions.gnome.org/extension/3957/e-ink-mode/", "shell_version_map": {"40": {"version": "3", "sha256": "0khqna60a0vblygriiky0jzg92ib8i44i6wkr8s3vxi0bcfa2zhm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgZGVza3RvcCBzdWl0YWJsZSBmb3IgRSBJbmsgbW9uaXRvcnMuXG5cblVubWFpbnRlbmFuY2VkLlxuUGxlYXNlIG1pZ3JhdGUgdG8gdGhlbWU6XG5odHRwczovL2dpdGh1Yi5jb20vZnVqaW1vLXQvZ25vbWUtc2hlbGwtdGhlbWUtZS1pbmtcblNlZSBiZWxvdyB0byBkZXRhaWw6XG5odHRwczovL2dpdGh1Yi5jb20vZnVqaW1vLXQvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWUtaW5rLW1vZGUvaXNzdWVzLzMjaXNzdWVjb21tZW50LTEwMTkxNTkxNzEiLAogICJuYW1lIjogIkUgSW5rIE1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnVqaW1vLXQvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWUtaW5rLW1vZGUiLAogICJ1dWlkIjogImUtaW5rLW1vZGVAZnVqaW1vLXQuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "transparent-top-bar@ftpix.com", "name": "Transparent Top Bar (Adjustable transparency)", "pname": "transparent-top-bar-adjustable-transparency", "description": "Fork of: https://github.com/zhanghai/gnome-shell-extension-transparent-top-bar\n\nBring back the transparent top bar in GNOME Shell with adjustable transparency.\n\nDoes not work well with custom shell themes.", "link": "https://extensions.gnome.org/extension/3960/transparent-top-bar-adjustable-transparency/", "shell_version_map": {"38": {"version": "5", "sha256": "09mym8h6lpb53b18c72vzl2y7myl1xg1lyg9jryf3nijna9adnr9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2Y6IGh0dHBzOi8vZ2l0aHViLmNvbS96aGFuZ2hhaS9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhclxuXG5CcmluZyBiYWNrIHRoZSB0cmFuc3BhcmVudCB0b3AgYmFyIGluIEdOT01FIFNoZWxsIHdpdGggYWRqdXN0YWJsZSB0cmFuc3BhcmVuY3kuXG5cbkRvZXMgbm90IHdvcmsgd2VsbCB3aXRoIGN1c3RvbSBzaGVsbCB0aGVtZXMuIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIChBZGp1c3RhYmxlIHRyYW5zcGFyZW5jeSkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGFtYXJpb3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRyYW5zcGFyZW50LXRvcC1iYXIiLAogICJ1dWlkIjogInRyYW5zcGFyZW50LXRvcC1iYXJAZnRwaXguY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}, "40": {"version": "11", "sha256": "1illvhj3916g081cd42lx108fssg5m60w118ihj19qqkvpdq96gw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2Y6IGh0dHBzOi8vZ2l0aHViLmNvbS96aGFuZ2hhaS9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhclxuXG5CcmluZyBiYWNrIHRoZSB0cmFuc3BhcmVudCB0b3AgYmFyIGluIEdOT01FIFNoZWxsIHdpdGggYWRqdXN0YWJsZSB0cmFuc3BhcmVuY3kuXG5cbkRvZXMgbm90IHdvcmsgd2VsbCB3aXRoIGN1c3RvbSBzaGVsbCB0aGVtZXMuIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIChBZGp1c3RhYmxlIHRyYW5zcGFyZW5jeSkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sYW1hcmlvcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhciIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtdG9wLWJhckBmdHBpeC5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "41": {"version": "11", "sha256": "1illvhj3916g081cd42lx108fssg5m60w118ihj19qqkvpdq96gw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2Y6IGh0dHBzOi8vZ2l0aHViLmNvbS96aGFuZ2hhaS9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhclxuXG5CcmluZyBiYWNrIHRoZSB0cmFuc3BhcmVudCB0b3AgYmFyIGluIEdOT01FIFNoZWxsIHdpdGggYWRqdXN0YWJsZSB0cmFuc3BhcmVuY3kuXG5cbkRvZXMgbm90IHdvcmsgd2VsbCB3aXRoIGN1c3RvbSBzaGVsbCB0aGVtZXMuIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIChBZGp1c3RhYmxlIHRyYW5zcGFyZW5jeSkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sYW1hcmlvcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhciIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtdG9wLWJhckBmdHBpeC5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
+, {"uuid": "transparent-top-bar@ftpix.com", "name": "Transparent Top Bar (Adjustable transparency)", "pname": "transparent-top-bar-adjustable-transparency", "description": "Fork of: https://github.com/zhanghai/gnome-shell-extension-transparent-top-bar\n\nBring back the transparent top bar in GNOME Shell with adjustable transparency.\n\nDoes not work well with custom shell themes.", "link": "https://extensions.gnome.org/extension/3960/transparent-top-bar-adjustable-transparency/", "shell_version_map": {"38": {"version": "5", "sha256": "09mym8h6lpb53b18c72vzl2y7myl1xg1lyg9jryf3nijna9adnr9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2Y6IGh0dHBzOi8vZ2l0aHViLmNvbS96aGFuZ2hhaS9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhclxuXG5CcmluZyBiYWNrIHRoZSB0cmFuc3BhcmVudCB0b3AgYmFyIGluIEdOT01FIFNoZWxsIHdpdGggYWRqdXN0YWJsZSB0cmFuc3BhcmVuY3kuXG5cbkRvZXMgbm90IHdvcmsgd2VsbCB3aXRoIGN1c3RvbSBzaGVsbCB0aGVtZXMuIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIChBZGp1c3RhYmxlIHRyYW5zcGFyZW5jeSkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbGFtYXJpb3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXRyYW5zcGFyZW50LXRvcC1iYXIiLAogICJ1dWlkIjogInRyYW5zcGFyZW50LXRvcC1iYXJAZnRwaXguY29tIiwKICAidmVyc2lvbiI6IDUKfQ=="}, "40": {"version": "11", "sha256": "1illvhj3916g081cd42lx108fssg5m60w118ihj19qqkvpdq96gw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2Y6IGh0dHBzOi8vZ2l0aHViLmNvbS96aGFuZ2hhaS9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhclxuXG5CcmluZyBiYWNrIHRoZSB0cmFuc3BhcmVudCB0b3AgYmFyIGluIEdOT01FIFNoZWxsIHdpdGggYWRqdXN0YWJsZSB0cmFuc3BhcmVuY3kuXG5cbkRvZXMgbm90IHdvcmsgd2VsbCB3aXRoIGN1c3RvbSBzaGVsbCB0aGVtZXMuIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIChBZGp1c3RhYmxlIHRyYW5zcGFyZW5jeSkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sYW1hcmlvcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhciIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtdG9wLWJhckBmdHBpeC5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "41": {"version": "11", "sha256": "1illvhj3916g081cd42lx108fssg5m60w118ihj19qqkvpdq96gw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2Y6IGh0dHBzOi8vZ2l0aHViLmNvbS96aGFuZ2hhaS9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhclxuXG5CcmluZyBiYWNrIHRoZSB0cmFuc3BhcmVudCB0b3AgYmFyIGluIEdOT01FIFNoZWxsIHdpdGggYWRqdXN0YWJsZSB0cmFuc3BhcmVuY3kuXG5cbkRvZXMgbm90IHdvcmsgd2VsbCB3aXRoIGN1c3RvbSBzaGVsbCB0aGVtZXMuIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIChBZGp1c3RhYmxlIHRyYW5zcGFyZW5jeSkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sYW1hcmlvcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhciIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtdG9wLWJhckBmdHBpeC5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "42": {"version": "11", "sha256": "1illvhj3916g081cd42lx108fssg5m60w118ihj19qqkvpdq96gw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2Y6IGh0dHBzOi8vZ2l0aHViLmNvbS96aGFuZ2hhaS9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhclxuXG5CcmluZyBiYWNrIHRoZSB0cmFuc3BhcmVudCB0b3AgYmFyIGluIEdOT01FIFNoZWxsIHdpdGggYWRqdXN0YWJsZSB0cmFuc3BhcmVuY3kuXG5cbkRvZXMgbm90IHdvcmsgd2VsbCB3aXRoIGN1c3RvbSBzaGVsbCB0aGVtZXMuIiwKICAibmFtZSI6ICJUcmFuc3BhcmVudCBUb3AgQmFyIChBZGp1c3RhYmxlIHRyYW5zcGFyZW5jeSkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sYW1hcmlvcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhciIsCiAgInV1aWQiOiAidHJhbnNwYXJlbnQtdG9wLWJhckBmdHBpeC5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
 , {"uuid": "improved-workspace-indicator@michaelaquilina.github.io", "name": "Improved Workspace Indicator", "pname": "improved-workspace-indicator", "description": "Slightly improved workspace indicator that shows both current and in use workspaces similar to i3/sway", "link": "https://extensions.gnome.org/extension/3968/improved-workspace-indicator/", "shell_version_map": {"38": {"version": "10", "sha256": "077acz5i10jvnqc0kf0yivlzq40xz03jb9gacpr8rm9my0yvdlp6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWdodGx5IGltcHJvdmVkIHdvcmtzcGFjZSBpbmRpY2F0b3IgdGhhdCBzaG93cyBib3RoIGN1cnJlbnQgYW5kIGluIHVzZSB3b3Jrc3BhY2VzIHNpbWlsYXIgdG8gaTMvc3dheSIsCiAgIm5hbWUiOiAiSW1wcm92ZWQgV29ya3NwYWNlIEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAibWljaGFlbGFxdWlsaW5hQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaW1wcm92ZWQtd29ya3NwYWNlLWluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWljaGFlbEFxdWlsaW5hL2ltcHJvdmVkLXdvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImltcHJvdmVkLXdvcmtzcGFjZS1pbmRpY2F0b3JAbWljaGFlbGFxdWlsaW5hLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}, "40": {"version": "10", "sha256": "077acz5i10jvnqc0kf0yivlzq40xz03jb9gacpr8rm9my0yvdlp6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWdodGx5IGltcHJvdmVkIHdvcmtzcGFjZSBpbmRpY2F0b3IgdGhhdCBzaG93cyBib3RoIGN1cnJlbnQgYW5kIGluIHVzZSB3b3Jrc3BhY2VzIHNpbWlsYXIgdG8gaTMvc3dheSIsCiAgIm5hbWUiOiAiSW1wcm92ZWQgV29ya3NwYWNlIEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAibWljaGFlbGFxdWlsaW5hQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaW1wcm92ZWQtd29ya3NwYWNlLWluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWljaGFlbEFxdWlsaW5hL2ltcHJvdmVkLXdvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImltcHJvdmVkLXdvcmtzcGFjZS1pbmRpY2F0b3JAbWljaGFlbGFxdWlsaW5hLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "077acz5i10jvnqc0kf0yivlzq40xz03jb9gacpr8rm9my0yvdlp6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWdodGx5IGltcHJvdmVkIHdvcmtzcGFjZSBpbmRpY2F0b3IgdGhhdCBzaG93cyBib3RoIGN1cnJlbnQgYW5kIGluIHVzZSB3b3Jrc3BhY2VzIHNpbWlsYXIgdG8gaTMvc3dheSIsCiAgIm5hbWUiOiAiSW1wcm92ZWQgV29ya3NwYWNlIEluZGljYXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiBbCiAgICAibWljaGFlbGFxdWlsaW5hQGdtYWlsLmNvbSIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaW1wcm92ZWQtd29ya3NwYWNlLWluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWljaGFlbEFxdWlsaW5hL2ltcHJvdmVkLXdvcmtzcGFjZS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImltcHJvdmVkLXdvcmtzcGFjZS1pbmRpY2F0b3JAbWljaGFlbGFxdWlsaW5hLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}}}
 , {"uuid": "gnome4synology@psasse.gmx.de", "name": "Movie Search provider for Synology®", "pname": "gnome-movie-search-provider-for-synology", "description": "search provider for movie titles on Synology® NAS including offline search (yet to come)", "link": "https://extensions.gnome.org/extension/3969/gnome-movie-search-provider-for-synology/", "shell_version_map": {"40": {"version": "14", "sha256": "133jgh7s8mdc4dbcwr623yyrpfb8nv96iggsk2kb18lkw2rcf3xi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInNlYXJjaCBwcm92aWRlciBmb3IgbW92aWUgdGl0bGVzIG9uIFN5bm9sb2d5XHUwMGFlIE5BUyBpbmNsdWRpbmcgb2ZmbGluZSBzZWFyY2ggKHlldCB0byBjb21lKSIsCiAgIm5hbWUiOiAiTW92aWUgU2VhcmNoIHByb3ZpZGVyIGZvciBTeW5vbG9neVx1MDBhZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wc2Fzc2U3Mi9tb3ZpZXM0c3lub2xvZ3kiLAogICJ1dWlkIjogImdub21lNHN5bm9sb2d5QHBzYXNzZS5nbXguZGUiLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
 , {"uuid": "guillotine@fopdoodle.net", "name": "Guillotine", "pname": "guillotine", "description": "Guillotine is a gnome extension designed for efficiently carrying out executions of commands from a customizable menu. Simply speaking: it is a highly customizable menu that enables you to launch commands and toggle services.", "link": "https://extensions.gnome.org/extension/3981/guillotine/", "shell_version_map": {"38": {"version": "3", "sha256": "0r171an47d1fdhzwiq7kg59hasibmcvvcsv9z9xd1kh5jahzmam5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkd1aWxsb3RpbmUgaXMgYSBnbm9tZSBleHRlbnNpb24gZGVzaWduZWQgZm9yIGVmZmljaWVudGx5IGNhcnJ5aW5nIG91dCBleGVjdXRpb25zIG9mIGNvbW1hbmRzIGZyb20gYSBjdXN0b21pemFibGUgbWVudS4gU2ltcGx5IHNwZWFraW5nOiBpdCBpcyBhIGhpZ2hseSBjdXN0b21pemFibGUgbWVudSB0aGF0IGVuYWJsZXMgeW91IHRvIGxhdW5jaCBjb21tYW5kcyBhbmQgdG9nZ2xlIHNlcnZpY2VzLiIsCiAgIm5hbWUiOiAiR3VpbGxvdGluZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ndWlsbG90aW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vZW50ZTc2L2d1aWxsb3RpbmUvIiwKICAidXVpZCI6ICJndWlsbG90aW5lQGZvcGRvb2RsZS5uZXQiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "13", "sha256": "15mva65wi2wjy3wb7l71v9qag3wrswifrh53kx6nf8dkqpqir03y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkd1aWxsb3RpbmUgaXMgYSBnbm9tZSBleHRlbnNpb24gZGVzaWduZWQgZm9yIGVmZmljaWVudGx5IGNhcnJ5aW5nIG91dCBleGVjdXRpb25zIG9mIGNvbW1hbmRzIGZyb20gYSBjdXN0b21pemFibGUgbWVudS4gU2ltcGx5IHNwZWFraW5nOiBpdCBpcyBhIGhpZ2hseSBjdXN0b21pemFibGUgbWVudSB0aGF0IGVuYWJsZXMgeW91IHRvIGxhdW5jaCBjb21tYW5kcyBhbmQgdG9nZ2xlIHNlcnZpY2VzLiIsCiAgIm5hbWUiOiAiR3VpbGxvdGluZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ndWlsbG90aW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9lbnRlNzYvZ3VpbGxvdGluZS8iLAogICJ1dWlkIjogImd1aWxsb3RpbmVAZm9wZG9vZGxlLm5ldCIsCiAgInZlcnNpb24iOiAxMwp9"}, "41": {"version": "13", "sha256": "15mva65wi2wjy3wb7l71v9qag3wrswifrh53kx6nf8dkqpqir03y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkd1aWxsb3RpbmUgaXMgYSBnbm9tZSBleHRlbnNpb24gZGVzaWduZWQgZm9yIGVmZmljaWVudGx5IGNhcnJ5aW5nIG91dCBleGVjdXRpb25zIG9mIGNvbW1hbmRzIGZyb20gYSBjdXN0b21pemFibGUgbWVudS4gU2ltcGx5IHNwZWFraW5nOiBpdCBpcyBhIGhpZ2hseSBjdXN0b21pemFibGUgbWVudSB0aGF0IGVuYWJsZXMgeW91IHRvIGxhdW5jaCBjb21tYW5kcyBhbmQgdG9nZ2xlIHNlcnZpY2VzLiIsCiAgIm5hbWUiOiAiR3VpbGxvdGluZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5ndWlsbG90aW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9lbnRlNzYvZ3VpbGxvdGluZS8iLAogICJ1dWlkIjogImd1aWxsb3RpbmVAZm9wZG9vZGxlLm5ldCIsCiAgInZlcnNpb24iOiAxMwp9"}}}
-, {"uuid": "shuzhi@tuberry", "name": "Shu Zhi", "pname": "shu-zhi", "description": "Wallpaper generation extension for GNOME Shell, inspired by Jizhi\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/3985/shu-zhi/", "shell_version_map": {"38": {"version": "7", "sha256": "1yk39q1ydv7kmb8shi4cp7pf5zvpmj99gjl9svack4773dj9rrwi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldhbGxwYXBlciBnZW5lcmF0aW9uIGV4dGVuc2lvbiBmb3IgR05PTUUgU2hlbGwsIGluc3BpcmVkIGJ5IEppemhpXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogInNodXpoaSIsCiAgIm5hbWUiOiAiU2h1IFpoaSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV6aGkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3NodXpoaSIsCiAgInV1aWQiOiAic2h1emhpQHR1YmVycnkiLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "17", "sha256": "1n0ajmm6d7y6kify6k9g3j2kc3ass9s7zyif5jhr1djzsi6knpq0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldhbGxwYXBlciBnZW5lcmF0aW9uIGV4dGVuc2lvbiBmb3IgR05PTUUgU2hlbGwsIGluc3BpcmVkIGJ5IEppemhpXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1zaHV6aGkiLAogICJuYW1lIjogIlNodSBaaGkiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2h1emhpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvc2h1emhpIiwKICAidXVpZCI6ICJzaHV6aGlAdHViZXJyeSIsCiAgInZlcnNpb24iOiAxNwp9"}, "41": {"version": "19", "sha256": "1ib82yf7gh97hygbrxccpsh75jpg65rp834vygi25kyf0b8fykff", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldhbGxwYXBlciBnZW5lcmF0aW9uIGV4dGVuc2lvbiBmb3IgR05PTUUgU2hlbGwsIGluc3BpcmVkIGJ5IEppemhpXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1zaHV6aGkiLAogICJuYW1lIjogIlNodSBaaGkiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2h1emhpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvc2h1emhpIiwKICAidXVpZCI6ICJzaHV6aGlAdHViZXJyeSIsCiAgInZlcnNpb24iOiAxOQp9"}}}
+, {"uuid": "shuzhi@tuberry", "name": "Shu Zhi", "pname": "shu-zhi", "description": "Wallpaper generation extension for GNOME Shell, inspired by Jizhi\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/3985/shu-zhi/", "shell_version_map": {"38": {"version": "7", "sha256": "1yk39q1ydv7kmb8shi4cp7pf5zvpmj99gjl9svack4773dj9rrwi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldhbGxwYXBlciBnZW5lcmF0aW9uIGV4dGVuc2lvbiBmb3IgR05PTUUgU2hlbGwsIGluc3BpcmVkIGJ5IEppemhpXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogInNodXpoaSIsCiAgIm5hbWUiOiAiU2h1IFpoaSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV6aGkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L3NodXpoaSIsCiAgInV1aWQiOiAic2h1emhpQHR1YmVycnkiLAogICJ2ZXJzaW9uIjogNwp9"}, "40": {"version": "17", "sha256": "1n0ajmm6d7y6kify6k9g3j2kc3ass9s7zyif5jhr1djzsi6knpq0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldhbGxwYXBlciBnZW5lcmF0aW9uIGV4dGVuc2lvbiBmb3IgR05PTUUgU2hlbGwsIGluc3BpcmVkIGJ5IEppemhpXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1zaHV6aGkiLAogICJuYW1lIjogIlNodSBaaGkiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2h1emhpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvc2h1emhpIiwKICAidXVpZCI6ICJzaHV6aGlAdHViZXJyeSIsCiAgInZlcnNpb24iOiAxNwp9"}, "41": {"version": "19", "sha256": "1ib82yf7gh97hygbrxccpsh75jpg65rp834vygi25kyf0b8fykff", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldhbGxwYXBlciBnZW5lcmF0aW9uIGV4dGVuc2lvbiBmb3IgR05PTUUgU2hlbGwsIGluc3BpcmVkIGJ5IEppemhpXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1zaHV6aGkiLAogICJuYW1lIjogIlNodSBaaGkiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2h1emhpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvc2h1emhpIiwKICAidXVpZCI6ICJzaHV6aGlAdHViZXJyeSIsCiAgInZlcnNpb24iOiAxOQp9"}, "42": {"version": "21", "sha256": "1pbldn51jjfq45d3bl7nfciff1mn3krl7dhiwp9hqrp3hchlassd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldhbGxwYXBlciBnZW5lcmF0aW9uIGV4dGVuc2lvbiBmb3IgR05PTUUgU2hlbGwsIGluc3BpcmVkIGJ5IEppemhpXG5cbkZvciBzdXBwb3J0LCBwbGVhc2UgcmVwb3J0IGFueSBpc3N1ZXMgdmlhIHRoZSBob21lcGFnZSBsaW5rIGJlbG93LiIsCiAgImdldHRleHQtZG9tYWluIjogImdub21lLXNoZWxsLWV4dGVuc2lvbi1zaHV6aGkiLAogICJuYW1lIjogIlNodSBaaGkiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2h1emhpIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvc2h1emhpIiwKICAidXVpZCI6ICJzaHV6aGlAdHViZXJyeSIsCiAgInZlcnNpb24iOiAyMQp9"}}}
 , {"uuid": "zilence@apankowski.github.com", "name": "Zilence", "pname": "zilence", "description": "Turns off notifications while sharing screen during a Zoom call", "link": "https://extensions.gnome.org/extension/3988/zilence/", "shell_version_map": {"38": {"version": "2", "sha256": "0ffpwwhx4pn8dfpcbi6yvxvaybwfxklyw5ig9ns71ydckzvn1n9y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1pdCI6ICIyYzdiZjFhNDJlMTFkODM4YTU2NGE2NWQ4MzY5YTgwNjM3M2I2NjdiIiwKICAiZGVzY3JpcHRpb24iOiAiVHVybnMgb2ZmIG5vdGlmaWNhdGlvbnMgd2hpbGUgc2hhcmluZyBzY3JlZW4gZHVyaW5nIGEgWm9vbSBjYWxsIiwKICAibmFtZSI6ICJaaWxlbmNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXBhbmtvd3NraS96aWxlbmNlIiwKICAidXVpZCI6ICJ6aWxlbmNlQGFwYW5rb3dza2kuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "bluetooth-battery@michalw.github.com", "name": "Bluetooth battery indicator", "pname": "bluetooth-battery", "description": "Bluetooth battery indicator", "link": "https://extensions.gnome.org/extension/3991/bluetooth-battery/", "shell_version_map": {"38": {"version": "19", "sha256": "17wnkw6js16ivbpkizj9ph55nj2z2wcdj73c2yh4lvyifpks54ih", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsdWV0b290aCBiYXR0ZXJ5IGluZGljYXRvciIsCiAgImdldHRleHQtZG9tYWluIjogImJsdWV0b290aF9iYXR0ZXJ5X2luZGljYXRvciIsCiAgIm5hbWUiOiAiQmx1ZXRvb3RoIGJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aF9iYXR0ZXJ5X2luZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWljaGFsVy9nbm9tZS1ibHVldG9vdGgtYmF0dGVyeS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJsdWV0b290aC1iYXR0ZXJ5QG1pY2hhbHcuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxOQp9"}, "40": {"version": "19", "sha256": "17wnkw6js16ivbpkizj9ph55nj2z2wcdj73c2yh4lvyifpks54ih", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsdWV0b290aCBiYXR0ZXJ5IGluZGljYXRvciIsCiAgImdldHRleHQtZG9tYWluIjogImJsdWV0b290aF9iYXR0ZXJ5X2luZGljYXRvciIsCiAgIm5hbWUiOiAiQmx1ZXRvb3RoIGJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aF9iYXR0ZXJ5X2luZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWljaGFsVy9nbm9tZS1ibHVldG9vdGgtYmF0dGVyeS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJsdWV0b290aC1iYXR0ZXJ5QG1pY2hhbHcuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxOQp9"}, "41": {"version": "19", "sha256": "17wnkw6js16ivbpkizj9ph55nj2z2wcdj73c2yh4lvyifpks54ih", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsdWV0b290aCBiYXR0ZXJ5IGluZGljYXRvciIsCiAgImdldHRleHQtZG9tYWluIjogImJsdWV0b290aF9iYXR0ZXJ5X2luZGljYXRvciIsCiAgIm5hbWUiOiAiQmx1ZXRvb3RoIGJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aF9iYXR0ZXJ5X2luZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWljaGFsVy9nbm9tZS1ibHVldG9vdGgtYmF0dGVyeS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJsdWV0b290aC1iYXR0ZXJ5QG1pY2hhbHcuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxOQp9"}}}
+, {"uuid": "bluetooth-battery@michalw.github.com", "name": "Bluetooth battery indicator", "pname": "bluetooth-battery", "description": "Bluetooth battery indicator", "link": "https://extensions.gnome.org/extension/3991/bluetooth-battery/", "shell_version_map": {"38": {"version": "22", "sha256": "0gl179krab1s8szxsm498n0hlfm914fi4p2skxsfb8056brz9j1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsdWV0b290aCBiYXR0ZXJ5IGluZGljYXRvciIsCiAgImdldHRleHQtZG9tYWluIjogImJsdWV0b290aF9iYXR0ZXJ5X2luZGljYXRvciIsCiAgIm5hbWUiOiAiQmx1ZXRvb3RoIGJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aF9iYXR0ZXJ5X2luZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWljaGFsVy9nbm9tZS1ibHVldG9vdGgtYmF0dGVyeS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJsdWV0b290aC1iYXR0ZXJ5QG1pY2hhbHcuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}, "40": {"version": "22", "sha256": "0gl179krab1s8szxsm498n0hlfm914fi4p2skxsfb8056brz9j1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsdWV0b290aCBiYXR0ZXJ5IGluZGljYXRvciIsCiAgImdldHRleHQtZG9tYWluIjogImJsdWV0b290aF9iYXR0ZXJ5X2luZGljYXRvciIsCiAgIm5hbWUiOiAiQmx1ZXRvb3RoIGJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aF9iYXR0ZXJ5X2luZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWljaGFsVy9nbm9tZS1ibHVldG9vdGgtYmF0dGVyeS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJsdWV0b290aC1iYXR0ZXJ5QG1pY2hhbHcuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}, "41": {"version": "22", "sha256": "0gl179krab1s8szxsm498n0hlfm914fi4p2skxsfb8056brz9j1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJsdWV0b290aCBiYXR0ZXJ5IGluZGljYXRvciIsCiAgImdldHRleHQtZG9tYWluIjogImJsdWV0b290aF9iYXR0ZXJ5X2luZGljYXRvciIsCiAgIm5hbWUiOiAiQmx1ZXRvb3RoIGJhdHRlcnkgaW5kaWNhdG9yIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmJsdWV0b290aF9iYXR0ZXJ5X2luZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWljaGFsVy9nbm9tZS1ibHVldG9vdGgtYmF0dGVyeS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImJsdWV0b290aC1iYXR0ZXJ5QG1pY2hhbHcuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAyMgp9"}}}
 , {"uuid": "gnome-extension-all-ip-addresses@havekes.eu", "name": "All IP Addresses", "pname": "all-ip-addresses", "description": "Show IP addresses for LAN, WAN IPv6 and VPN in the GNOME panel. Click on the address to cycle trough different interfaces.", "link": "https://extensions.gnome.org/extension/3994/all-ip-addresses/", "shell_version_map": {"38": {"version": "3", "sha256": "1s08inwbr9g50g275sxsjggqgwh59gz664ay944ngn755vnr9y1p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgSVAgYWRkcmVzc2VzIGZvciBMQU4sIFdBTiBJUHY2IGFuZCBWUE4gaW4gdGhlIEdOT01FIHBhbmVsLiBDbGljayBvbiB0aGUgYWRkcmVzcyB0byBjeWNsZSB0cm91Z2ggZGlmZmVyZW50IGludGVyZmFjZXMuIiwKICAibmFtZSI6ICJBbGwgSVAgQWRkcmVzc2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9waGF2ZWtlcy9nbm9tZS1leHRlbnNpb24tYWxsLWlwLWFkZHJlc3NlcyIsCiAgInV1aWQiOiAiZ25vbWUtZXh0ZW5zaW9uLWFsbC1pcC1hZGRyZXNzZXNAaGF2ZWtlcy5ldSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "1s08inwbr9g50g275sxsjggqgwh59gz664ay944ngn755vnr9y1p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgSVAgYWRkcmVzc2VzIGZvciBMQU4sIFdBTiBJUHY2IGFuZCBWUE4gaW4gdGhlIEdOT01FIHBhbmVsLiBDbGljayBvbiB0aGUgYWRkcmVzcyB0byBjeWNsZSB0cm91Z2ggZGlmZmVyZW50IGludGVyZmFjZXMuIiwKICAibmFtZSI6ICJBbGwgSVAgQWRkcmVzc2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9waGF2ZWtlcy9nbm9tZS1leHRlbnNpb24tYWxsLWlwLWFkZHJlc3NlcyIsCiAgInV1aWQiOiAiZ25vbWUtZXh0ZW5zaW9uLWFsbC1pcC1hZGRyZXNzZXNAaGF2ZWtlcy5ldSIsCiAgInZlcnNpb24iOiAzCn0="}, "41": {"version": "3", "sha256": "1s08inwbr9g50g275sxsjggqgwh59gz664ay944ngn755vnr9y1p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgSVAgYWRkcmVzc2VzIGZvciBMQU4sIFdBTiBJUHY2IGFuZCBWUE4gaW4gdGhlIEdOT01FIHBhbmVsLiBDbGljayBvbiB0aGUgYWRkcmVzcyB0byBjeWNsZSB0cm91Z2ggZGlmZmVyZW50IGludGVyZmFjZXMuIiwKICAibmFtZSI6ICJBbGwgSVAgQWRkcmVzc2VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9waGF2ZWtlcy9nbm9tZS1leHRlbnNpb24tYWxsLWlwLWFkZHJlc3NlcyIsCiAgInV1aWQiOiAiZ25vbWUtZXh0ZW5zaW9uLWFsbC1pcC1hZGRyZXNzZXNAaGF2ZWtlcy5ldSIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "app-grid-tweaks@Selenium-H", "name": "App Grid Tweaks", "pname": "app-grid-tweaks", "description": "Customize the application grid view.\n\nSet the rows, columns and the app icon size for a particular configuration to work.\nIf the screen space is out numbered, reduce the icon size to fit all the rows and columns.\nOr reduce the number of rows and columns.\n\nPress the Refresh button on the left of header bar to apply changes", "link": "https://extensions.gnome.org/extension/3997/app-grid-tweaks/", "shell_version_map": {"38": {"version": "4", "sha256": "17hriwcwhkjp3n20q7bm7iylr8862ghvnagf2xk0ci2hxwwbyc92", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiQ3VzdG9taXplIHRoZSBhcHBsaWNhdGlvbiBncmlkIHZpZXcuIiwKICAiZGVzY3JpcHRpb24iOiAiQ3VzdG9taXplIHRoZSBhcHBsaWNhdGlvbiBncmlkIHZpZXcuXG5cblNldCB0aGUgcm93cywgY29sdW1ucyBhbmQgdGhlIGFwcCBpY29uIHNpemUgZm9yIGEgcGFydGljdWxhciBjb25maWd1cmF0aW9uIHRvIHdvcmsuXG5JZiB0aGUgc2NyZWVuIHNwYWNlIGlzIG91dCBudW1iZXJlZCwgcmVkdWNlIHRoZSBpY29uIHNpemUgdG8gZml0IGFsbCB0aGUgcm93cyBhbmQgY29sdW1ucy5cbk9yIHJlZHVjZSB0aGUgbnVtYmVyIG9mIHJvd3MgYW5kIGNvbHVtbnMuXG5cblByZXNzIHRoZSBSZWZyZXNoIGJ1dHRvbiBvbiB0aGUgbGVmdCBvZiBoZWFkZXIgYmFyIHRvIGFwcGx5IGNoYW5nZXMiLAogICJuYW1lIjogIkFwcCBHcmlkIFR3ZWFrcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hcHAtZ3JpZC10d2Vha3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJzdGF0dXMiOiAiIiwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TZWxlbml1bS1IL0FwcC1HcmlkLVR3ZWFrcyIsCiAgInV1aWQiOiAiYXBwLWdyaWQtdHdlYWtzQFNlbGVuaXVtLUgiLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "17hriwcwhkjp3n20q7bm7iylr8862ghvnagf2xk0ci2hxwwbyc92", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiQ3VzdG9taXplIHRoZSBhcHBsaWNhdGlvbiBncmlkIHZpZXcuIiwKICAiZGVzY3JpcHRpb24iOiAiQ3VzdG9taXplIHRoZSBhcHBsaWNhdGlvbiBncmlkIHZpZXcuXG5cblNldCB0aGUgcm93cywgY29sdW1ucyBhbmQgdGhlIGFwcCBpY29uIHNpemUgZm9yIGEgcGFydGljdWxhciBjb25maWd1cmF0aW9uIHRvIHdvcmsuXG5JZiB0aGUgc2NyZWVuIHNwYWNlIGlzIG91dCBudW1iZXJlZCwgcmVkdWNlIHRoZSBpY29uIHNpemUgdG8gZml0IGFsbCB0aGUgcm93cyBhbmQgY29sdW1ucy5cbk9yIHJlZHVjZSB0aGUgbnVtYmVyIG9mIHJvd3MgYW5kIGNvbHVtbnMuXG5cblByZXNzIHRoZSBSZWZyZXNoIGJ1dHRvbiBvbiB0aGUgbGVmdCBvZiBoZWFkZXIgYmFyIHRvIGFwcGx5IGNoYW5nZXMiLAogICJuYW1lIjogIkFwcCBHcmlkIFR3ZWFrcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hcHAtZ3JpZC10d2Vha3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJzdGF0dXMiOiAiIiwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TZWxlbml1bS1IL0FwcC1HcmlkLVR3ZWFrcyIsCiAgInV1aWQiOiAiYXBwLWdyaWQtdHdlYWtzQFNlbGVuaXVtLUgiLAogICJ2ZXJzaW9uIjogNAp9"}, "41": {"version": "4", "sha256": "17hriwcwhkjp3n20q7bm7iylr8862ghvnagf2xk0ci2hxwwbyc92", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiQ3VzdG9taXplIHRoZSBhcHBsaWNhdGlvbiBncmlkIHZpZXcuIiwKICAiZGVzY3JpcHRpb24iOiAiQ3VzdG9taXplIHRoZSBhcHBsaWNhdGlvbiBncmlkIHZpZXcuXG5cblNldCB0aGUgcm93cywgY29sdW1ucyBhbmQgdGhlIGFwcCBpY29uIHNpemUgZm9yIGEgcGFydGljdWxhciBjb25maWd1cmF0aW9uIHRvIHdvcmsuXG5JZiB0aGUgc2NyZWVuIHNwYWNlIGlzIG91dCBudW1iZXJlZCwgcmVkdWNlIHRoZSBpY29uIHNpemUgdG8gZml0IGFsbCB0aGUgcm93cyBhbmQgY29sdW1ucy5cbk9yIHJlZHVjZSB0aGUgbnVtYmVyIG9mIHJvd3MgYW5kIGNvbHVtbnMuXG5cblByZXNzIHRoZSBSZWZyZXNoIGJ1dHRvbiBvbiB0aGUgbGVmdCBvZiBoZWFkZXIgYmFyIHRvIGFwcGx5IGNoYW5nZXMiLAogICJuYW1lIjogIkFwcCBHcmlkIFR3ZWFrcyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5hcHAtZ3JpZC10d2Vha3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJzdGF0dXMiOiAiIiwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TZWxlbml1bS1IL0FwcC1HcmlkLVR3ZWFrcyIsCiAgInV1aWQiOiAiYXBwLWdyaWQtdHdlYWtzQFNlbGVuaXVtLUgiLAogICJ2ZXJzaW9uIjogNAp9"}}}
-, {"uuid": "babar@fthx", "name": "BaBar Task Bar", "pname": "babar", "description": "Task bar. App grid, favorites, workspaces and tasks in panel. Light extension.\n\n Replace 'Activities' button by all current workspaces and apps buttons. Switch workspace/app or toggle overview by clicking on these buttons. Drag and drop favorite, task, dash item or app grid item to any workspace (you cannot reorder tasks inside a workspace). Persistent window preview with right-click (right-click again or click on preview to close it). You can move this preview anywhere. Change 'Places' label to an icon. Settings in preferences UI.\n\n You can use names for workspaces: there are two ways for that. 1) Edit the string array 'org.gnome.desktop.wm.preferences.workspace-names' gsettings key (through dconf editor, e.g.). 2) Use official GNOME extension Workspaces Indicator's settings. You don't have to write a long enough list: numbers are displayed if no workspace name is defined.\n\n Changelog: https://github.com/fthx/babar/issues/2", "link": "https://extensions.gnome.org/extension/4000/babar/", "shell_version_map": {"38": {"version": "58", "sha256": "0sgsz9skc0d3rx9lap6g8fnmb5ki4ylr8s5f8yk5wkpvzvh3gkgy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBQZXJzaXN0ZW50IHdpbmRvdyBwcmV2aWV3IHdpdGggcmlnaHQtY2xpY2sgKHJpZ2h0LWNsaWNrIGFnYWluIG9yIGNsaWNrIG9uIHByZXZpZXcgdG8gY2xvc2UgaXQpLiBZb3UgY2FuIG1vdmUgdGhpcyBwcmV2aWV3IGFueXdoZXJlLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gU2V0dGluZ3MgaW4gcHJlZmVyZW5jZXMgVUkuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuXG5cbiBDaGFuZ2Vsb2c6IGh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyL2lzc3Vlcy8yIiwKICAibmFtZSI6ICJCYUJhciBUYXNrIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXIiLAogICJ1dWlkIjogImJhYmFyQGZ0aHgiLAogICJ2ZXJzaW9uIjogNTgKfQ=="}, "40": {"version": "58", "sha256": "0sgsz9skc0d3rx9lap6g8fnmb5ki4ylr8s5f8yk5wkpvzvh3gkgy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBQZXJzaXN0ZW50IHdpbmRvdyBwcmV2aWV3IHdpdGggcmlnaHQtY2xpY2sgKHJpZ2h0LWNsaWNrIGFnYWluIG9yIGNsaWNrIG9uIHByZXZpZXcgdG8gY2xvc2UgaXQpLiBZb3UgY2FuIG1vdmUgdGhpcyBwcmV2aWV3IGFueXdoZXJlLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gU2V0dGluZ3MgaW4gcHJlZmVyZW5jZXMgVUkuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuXG5cbiBDaGFuZ2Vsb2c6IGh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyL2lzc3Vlcy8yIiwKICAibmFtZSI6ICJCYUJhciBUYXNrIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXIiLAogICJ1dWlkIjogImJhYmFyQGZ0aHgiLAogICJ2ZXJzaW9uIjogNTgKfQ=="}, "41": {"version": "58", "sha256": "0sgsz9skc0d3rx9lap6g8fnmb5ki4ylr8s5f8yk5wkpvzvh3gkgy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBQZXJzaXN0ZW50IHdpbmRvdyBwcmV2aWV3IHdpdGggcmlnaHQtY2xpY2sgKHJpZ2h0LWNsaWNrIGFnYWluIG9yIGNsaWNrIG9uIHByZXZpZXcgdG8gY2xvc2UgaXQpLiBZb3UgY2FuIG1vdmUgdGhpcyBwcmV2aWV3IGFueXdoZXJlLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gU2V0dGluZ3MgaW4gcHJlZmVyZW5jZXMgVUkuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuXG5cbiBDaGFuZ2Vsb2c6IGh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyL2lzc3Vlcy8yIiwKICAibmFtZSI6ICJCYUJhciBUYXNrIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXIiLAogICJ1dWlkIjogImJhYmFyQGZ0aHgiLAogICJ2ZXJzaW9uIjogNTgKfQ=="}}}
+, {"uuid": "babar@fthx", "name": "BaBar Task Bar", "pname": "babar", "description": "Task bar. App grid, favorites, workspaces and tasks in panel. Light extension.\n\n Replace 'Activities' button by all current workspaces and apps buttons. Switch workspace/app or toggle overview by clicking on these buttons. Drag and drop favorite, task, dash item or app grid item to any workspace (you cannot reorder tasks inside a workspace). Persistent window preview with right-click (right-click again or click on preview to close it). You can move this preview anywhere. Change 'Places' label to an icon. Settings in preferences UI.\n\n You can use names for workspaces: there are two ways for that. 1) Edit the string array 'org.gnome.desktop.wm.preferences.workspace-names' gsettings key (through dconf editor, e.g.). 2) Use official GNOME extension Workspaces Indicator's settings. You don't have to write a long enough list: numbers are displayed if no workspace name is defined.\n\n Changelog: https://github.com/fthx/babar/issues/2", "link": "https://extensions.gnome.org/extension/4000/babar/", "shell_version_map": {"38": {"version": "58", "sha256": "0sgsz9skc0d3rx9lap6g8fnmb5ki4ylr8s5f8yk5wkpvzvh3gkgy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBQZXJzaXN0ZW50IHdpbmRvdyBwcmV2aWV3IHdpdGggcmlnaHQtY2xpY2sgKHJpZ2h0LWNsaWNrIGFnYWluIG9yIGNsaWNrIG9uIHByZXZpZXcgdG8gY2xvc2UgaXQpLiBZb3UgY2FuIG1vdmUgdGhpcyBwcmV2aWV3IGFueXdoZXJlLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gU2V0dGluZ3MgaW4gcHJlZmVyZW5jZXMgVUkuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuXG5cbiBDaGFuZ2Vsb2c6IGh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyL2lzc3Vlcy8yIiwKICAibmFtZSI6ICJCYUJhciBUYXNrIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXIiLAogICJ1dWlkIjogImJhYmFyQGZ0aHgiLAogICJ2ZXJzaW9uIjogNTgKfQ=="}, "40": {"version": "58", "sha256": "0sgsz9skc0d3rx9lap6g8fnmb5ki4ylr8s5f8yk5wkpvzvh3gkgy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBQZXJzaXN0ZW50IHdpbmRvdyBwcmV2aWV3IHdpdGggcmlnaHQtY2xpY2sgKHJpZ2h0LWNsaWNrIGFnYWluIG9yIGNsaWNrIG9uIHByZXZpZXcgdG8gY2xvc2UgaXQpLiBZb3UgY2FuIG1vdmUgdGhpcyBwcmV2aWV3IGFueXdoZXJlLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gU2V0dGluZ3MgaW4gcHJlZmVyZW5jZXMgVUkuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuXG5cbiBDaGFuZ2Vsb2c6IGh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyL2lzc3Vlcy8yIiwKICAibmFtZSI6ICJCYUJhciBUYXNrIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXIiLAogICJ1dWlkIjogImJhYmFyQGZ0aHgiLAogICJ2ZXJzaW9uIjogNTgKfQ=="}, "41": {"version": "58", "sha256": "0sgsz9skc0d3rx9lap6g8fnmb5ki4ylr8s5f8yk5wkpvzvh3gkgy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBQZXJzaXN0ZW50IHdpbmRvdyBwcmV2aWV3IHdpdGggcmlnaHQtY2xpY2sgKHJpZ2h0LWNsaWNrIGFnYWluIG9yIGNsaWNrIG9uIHByZXZpZXcgdG8gY2xvc2UgaXQpLiBZb3UgY2FuIG1vdmUgdGhpcyBwcmV2aWV3IGFueXdoZXJlLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gU2V0dGluZ3MgaW4gcHJlZmVyZW5jZXMgVUkuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuXG5cbiBDaGFuZ2Vsb2c6IGh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyL2lzc3Vlcy8yIiwKICAibmFtZSI6ICJCYUJhciBUYXNrIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXIiLAogICJ1dWlkIjogImJhYmFyQGZ0aHgiLAogICJ2ZXJzaW9uIjogNTgKfQ=="}, "42": {"version": "58", "sha256": "0sgsz9skc0d3rx9lap6g8fnmb5ki4ylr8s5f8yk5wkpvzvh3gkgy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBQZXJzaXN0ZW50IHdpbmRvdyBwcmV2aWV3IHdpdGggcmlnaHQtY2xpY2sgKHJpZ2h0LWNsaWNrIGFnYWluIG9yIGNsaWNrIG9uIHByZXZpZXcgdG8gY2xvc2UgaXQpLiBZb3UgY2FuIG1vdmUgdGhpcyBwcmV2aWV3IGFueXdoZXJlLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gU2V0dGluZ3MgaW4gcHJlZmVyZW5jZXMgVUkuXG5cbiBZb3UgY2FuIHVzZSBuYW1lcyBmb3Igd29ya3NwYWNlczogdGhlcmUgYXJlIHR3byB3YXlzIGZvciB0aGF0LiAxKSBFZGl0IHRoZSBzdHJpbmcgYXJyYXkgJ29yZy5nbm9tZS5kZXNrdG9wLndtLnByZWZlcmVuY2VzLndvcmtzcGFjZS1uYW1lcycgZ3NldHRpbmdzIGtleSAodGhyb3VnaCBkY29uZiBlZGl0b3IsIGUuZy4pLiAyKSBVc2Ugb2ZmaWNpYWwgR05PTUUgZXh0ZW5zaW9uIFdvcmtzcGFjZXMgSW5kaWNhdG9yJ3Mgc2V0dGluZ3MuIFlvdSBkb24ndCBoYXZlIHRvIHdyaXRlIGEgbG9uZyBlbm91Z2ggbGlzdDogbnVtYmVycyBhcmUgZGlzcGxheWVkIGlmIG5vIHdvcmtzcGFjZSBuYW1lIGlzIGRlZmluZWQuXG5cbiBDaGFuZ2Vsb2c6IGh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2JhYmFyL2lzc3Vlcy8yIiwKICAibmFtZSI6ICJCYUJhciBUYXNrIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXIiLAogICJ1dWlkIjogImJhYmFyQGZ0aHgiLAogICJ2ZXJzaW9uIjogNTgKfQ=="}}}
 , {"uuid": "kitsch@fopdoodle.net", "name": "Kitsch", "pname": "kitsch", "description": "Kitsch is a collection of cheap, popular, and marketable improvements to Gnome. One could consider it applying a cosmetic surgery to Gnome.\n\nKitsch can easily be configured and offers the following features:\n- remove application menu from the top bar\n- remove the activity button from the top bar\n- periodically change the background picture\n\nThis extension does not come with any button on the panel. Visit the website for a documentation.", "link": "https://extensions.gnome.org/extension/4001/kitsch/", "shell_version_map": {"38": {"version": "2", "sha256": "16zwz0p4f8zizr14k4jmdixgnjd0a67d0i3w6clrqgfl49cpdcdv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktpdHNjaCBpcyBhIGNvbGxlY3Rpb24gb2YgY2hlYXAsIHBvcHVsYXIsIGFuZCBtYXJrZXRhYmxlIGltcHJvdmVtZW50cyB0byBHbm9tZS4gT25lIGNvdWxkIGNvbnNpZGVyIGl0IGFwcGx5aW5nIGEgY29zbWV0aWMgc3VyZ2VyeSB0byBHbm9tZS5cblxuS2l0c2NoIGNhbiBlYXNpbHkgYmUgY29uZmlndXJlZCBhbmQgb2ZmZXJzIHRoZSBmb2xsb3dpbmcgZmVhdHVyZXM6XG4tIHJlbW92ZSBhcHBsaWNhdGlvbiBtZW51IGZyb20gdGhlIHRvcCBiYXJcbi0gcmVtb3ZlIHRoZSBhY3Rpdml0eSBidXR0b24gZnJvbSB0aGUgdG9wIGJhclxuLSBwZXJpb2RpY2FsbHkgY2hhbmdlIHRoZSBiYWNrZ3JvdW5kIHBpY3R1cmVcblxuVGhpcyBleHRlbnNpb24gZG9lcyBub3QgY29tZSB3aXRoIGFueSBidXR0b24gb24gdGhlIHBhbmVsLiBWaXNpdCB0aGUgd2Vic2l0ZSBmb3IgYSBkb2N1bWVudGF0aW9uLiIsCiAgIm5hbWUiOiAiS2l0c2NoIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmtpdHNjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VudGU3Ni9raXRzY2gvIiwKICAidXVpZCI6ICJraXRzY2hAZm9wZG9vZGxlLm5ldCIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "5", "sha256": "1bbbdhf73sv240bid4s604g6r8axd40ph2yyf23z5fpj3679g2xr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktpdHNjaCBpcyBhIGNvbGxlY3Rpb24gb2YgY2hlYXAsIHBvcHVsYXIsIGFuZCBtYXJrZXRhYmxlIGltcHJvdmVtZW50cyB0byBHbm9tZS4gT25lIGNvdWxkIGNvbnNpZGVyIGl0IGFwcGx5aW5nIGEgY29zbWV0aWMgc3VyZ2VyeSB0byBHbm9tZS5cblxuS2l0c2NoIGNhbiBlYXNpbHkgYmUgY29uZmlndXJlZCBhbmQgb2ZmZXJzIHRoZSBmb2xsb3dpbmcgZmVhdHVyZXM6XG4tIHJlbW92ZSBhcHBsaWNhdGlvbiBtZW51IGZyb20gdGhlIHRvcCBiYXJcbi0gcmVtb3ZlIHRoZSBhY3Rpdml0eSBidXR0b24gZnJvbSB0aGUgdG9wIGJhclxuLSBwZXJpb2RpY2FsbHkgY2hhbmdlIHRoZSBiYWNrZ3JvdW5kIHBpY3R1cmVcblxuVGhpcyBleHRlbnNpb24gZG9lcyBub3QgY29tZSB3aXRoIGFueSBidXR0b24gb24gdGhlIHBhbmVsLiBWaXNpdCB0aGUgd2Vic2l0ZSBmb3IgYSBkb2N1bWVudGF0aW9uLiIsCiAgIm5hbWUiOiAiS2l0c2NoIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmtpdHNjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lbnRlNzYva2l0c2NoLyIsCiAgInV1aWQiOiAia2l0c2NoQGZvcGRvb2RsZS5uZXQiLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "gnome-visuals-top-bar@evendanan.net", "name": "Top Bar Visuals - transparent and blur", "pname": "top-bar-visuals-transparent-and-blur", "description": "Fork of: https://github.com/lamarios/gnome-shell-extension-transparent-top-bar\n\nBring back the adjustable transparency top bar (panel) in GNOME Shell and add blur while at it.\n\nDoes not work well with custom shell themes.", "link": "https://extensions.gnome.org/extension/4003/top-bar-visuals-transparent-and-blur/", "shell_version_map": {"38": {"version": "2", "sha256": "0h1qx7bh4gb3xkc8g8byynfa3imxkx332kh88pm4g9zaa20fxzwr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2Y6IGh0dHBzOi8vZ2l0aHViLmNvbS9sYW1hcmlvcy9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhclxuXG5CcmluZyBiYWNrIHRoZSBhZGp1c3RhYmxlIHRyYW5zcGFyZW5jeSB0b3AgYmFyIChwYW5lbCkgaW4gR05PTUUgU2hlbGwgYW5kIGFkZCBibHVyIHdoaWxlIGF0IGl0LlxuXG5Eb2VzIG5vdCB3b3JrIHdlbGwgd2l0aCBjdXN0b20gc2hlbGwgdGhlbWVzLiIsCiAgIm5hbWUiOiAiVG9wIEJhciBWaXN1YWxzIC0gdHJhbnNwYXJlbnQgYW5kIGJsdXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9tZW5ueS9nbm9tZS1zaGVsbC1leHRlbnNpb24tdHJhbnNwYXJlbnQtdG9wLWJhciIsCiAgInV1aWQiOiAiZ25vbWUtdmlzdWFscy10b3AtYmFyQGV2ZW5kYW5hbi5uZXQiLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"uuid": "desktop-lyric@tuberry", "name": "Desktop Lyric", "pname": "desktop-lyric", "description": "Show the lyric of playing songs on the desktop\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/4006/desktop-lyric/", "shell_version_map": {"38": {"version": "3", "sha256": "1fxlszj21ppdl5k2x2samggxlnay5bqly604szv1sjsnfriqzz3k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIGx5cmljIG9mIHBsYXlpbmcgc29uZ3Mgb24gdGhlIGRlc2t0b3BcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGVza3RvcC1seXJpYyIsCiAgIm5hbWUiOiAiRGVza3RvcCBMeXJpYyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kZXNrdG9wLWx5cmljIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9kZXNrdG9wLWx5cmljIiwKICAidXVpZCI6ICJkZXNrdG9wLWx5cmljQHR1YmVycnkiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "7", "sha256": "1dd8i7845fshc2d04fgzjr1chrnwsfr7qyjjki1svw36mx1qsjm2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIGx5cmljIG9mIHBsYXlpbmcgc29uZ3Mgb24gdGhlIGRlc2t0b3BcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGVza3RvcC1seXJpYyIsCiAgIm5hbWUiOiAiRGVza3RvcCBMeXJpYyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kZXNrdG9wLWx5cmljIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvZGVza3RvcC1seXJpYyIsCiAgInV1aWQiOiAiZGVza3RvcC1seXJpY0B0dWJlcnJ5IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "12", "sha256": "056cdiw7rlqpxkmca3f1aic7wr9dppvhp1z7wfxl905xn21p9pqf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIGx5cmljIG9mIHBsYXlpbmcgc29uZ3Mgb24gdGhlIGRlc2t0b3BcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWRlc2t0b3AtbHlyaWMiLAogICJuYW1lIjogIkRlc2t0b3AgTHlyaWMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGVza3RvcC1seXJpYyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2Rlc2t0b3AtbHlyaWMiLAogICJ1dWlkIjogImRlc2t0b3AtbHlyaWNAdHViZXJyeSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
+, {"uuid": "desktop-lyric@tuberry", "name": "Desktop Lyric", "pname": "desktop-lyric", "description": "Show the lyric of playing songs on the desktop\n\nFor support, please report any issues via the homepage link below.", "link": "https://extensions.gnome.org/extension/4006/desktop-lyric/", "shell_version_map": {"38": {"version": "3", "sha256": "1fxlszj21ppdl5k2x2samggxlnay5bqly604szv1sjsnfriqzz3k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIGx5cmljIG9mIHBsYXlpbmcgc29uZ3Mgb24gdGhlIGRlc2t0b3BcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGVza3RvcC1seXJpYyIsCiAgIm5hbWUiOiAiRGVza3RvcCBMeXJpYyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kZXNrdG9wLWx5cmljIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdHViZXJyeS9kZXNrdG9wLWx5cmljIiwKICAidXVpZCI6ICJkZXNrdG9wLWx5cmljQHR1YmVycnkiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "7", "sha256": "1dd8i7845fshc2d04fgzjr1chrnwsfr7qyjjki1svw36mx1qsjm2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIGx5cmljIG9mIHBsYXlpbmcgc29uZ3Mgb24gdGhlIGRlc2t0b3BcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGVza3RvcC1seXJpYyIsCiAgIm5hbWUiOiAiRGVza3RvcCBMeXJpYyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kZXNrdG9wLWx5cmljIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3R1YmVycnkvZGVza3RvcC1seXJpYyIsCiAgInV1aWQiOiAiZGVza3RvcC1seXJpY0B0dWJlcnJ5IiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "12", "sha256": "056cdiw7rlqpxkmca3f1aic7wr9dppvhp1z7wfxl905xn21p9pqf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIGx5cmljIG9mIHBsYXlpbmcgc29uZ3Mgb24gdGhlIGRlc2t0b3BcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWRlc2t0b3AtbHlyaWMiLAogICJuYW1lIjogIkRlc2t0b3AgTHlyaWMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGVza3RvcC1seXJpYyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2Rlc2t0b3AtbHlyaWMiLAogICJ1dWlkIjogImRlc2t0b3AtbHlyaWNAdHViZXJyeSIsCiAgInZlcnNpb24iOiAxMgp9"}, "42": {"version": "13", "sha256": "0j23i2gl956r2wffqky5vg6ca24gn3hkibhrhsvkqd87g90cjdq6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIGx5cmljIG9mIHBsYXlpbmcgc29uZ3Mgb24gdGhlIGRlc2t0b3BcblxuRm9yIHN1cHBvcnQsIHBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB2aWEgdGhlIGhvbWVwYWdlIGxpbmsgYmVsb3cuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWRlc2t0b3AtbHlyaWMiLAogICJuYW1lIjogIkRlc2t0b3AgTHlyaWMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZGVza3RvcC1seXJpYyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90dWJlcnJ5L2Rlc2t0b3AtbHlyaWMiLAogICJ1dWlkIjogImRlc2t0b3AtbHlyaWNAdHViZXJyeSIsCiAgInZlcnNpb24iOiAxMwp9"}}}
 , {"uuid": "alttab-mod@leleat-on-github", "name": "AltTab Mod", "pname": "alttab-mod", "description": "Alt/Super+Tab can also be navigated with WASD and hjkl. Q just closes the selected item and only the first window will be raised on app activation. Optionally, only show windows from the current workspace or monitor and remove the slight popup delay.", "link": "https://extensions.gnome.org/extension/4007/alttab-mod/", "shell_version_map": {"38": {"version": "6", "sha256": "069086j1855s0zrawx49h40l3qmzbsjl0n58wr74lxfk1s6sirww", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsdC9TdXBlcitUYWIgY2FuIGFsc28gYmUgbmF2aWdhdGVkIHdpdGggV0FTRCBhbmQgaGprbC4gUSBqdXN0IGNsb3NlcyB0aGUgc2VsZWN0ZWQgaXRlbSBhbmQgb25seSB0aGUgZmlyc3Qgd2luZG93IHdpbGwgYmUgcmFpc2VkIG9uIGFwcCBhY3RpdmF0aW9uLiBPcHRpb25hbGx5LCBvbmx5IHNob3cgd2luZG93cyBmcm9tIHRoZSBjdXJyZW50IHdvcmtzcGFjZSBvciBtb25pdG9yIGFuZCByZW1vdmUgdGhlIHNsaWdodCBwb3B1cCBkZWxheS4iLAogICJuYW1lIjogIkFsdFRhYiBNb2QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0xlbGVhdC9BbHRUYWItTW9kIiwKICAidXVpZCI6ICJhbHR0YWItbW9kQGxlbGVhdC1vbi1naXRodWIiLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "7", "sha256": "1qnbga30wvsj6xny7ajvy8y6c4vm3cpwz3zkm5njr2d0qg4svsq0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsdC9TdXBlcitUYWIgY2FuIGFsc28gYmUgbmF2aWdhdGVkIHdpdGggV0FTRCBhbmQgaGprbC4gUSBqdXN0IGNsb3NlcyB0aGUgc2VsZWN0ZWQgaXRlbSBhbmQgb25seSB0aGUgZmlyc3Qgd2luZG93IHdpbGwgYmUgcmFpc2VkIG9uIGFwcCBhY3RpdmF0aW9uLiBPcHRpb25hbGx5LCBvbmx5IHNob3cgd2luZG93cyBmcm9tIHRoZSBjdXJyZW50IHdvcmtzcGFjZSBvciBtb25pdG9yIGFuZCByZW1vdmUgdGhlIHNsaWdodCBwb3B1cCBkZWxheS4iLAogICJuYW1lIjogIkFsdFRhYiBNb2QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWx0VGFiLW1vZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTGVsZWF0L0FsdFRhYi1Nb2QiLAogICJ1dWlkIjogImFsdHRhYi1tb2RAbGVsZWF0LW9uLWdpdGh1YiIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "1qnbga30wvsj6xny7ajvy8y6c4vm3cpwz3zkm5njr2d0qg4svsq0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsdC9TdXBlcitUYWIgY2FuIGFsc28gYmUgbmF2aWdhdGVkIHdpdGggV0FTRCBhbmQgaGprbC4gUSBqdXN0IGNsb3NlcyB0aGUgc2VsZWN0ZWQgaXRlbSBhbmQgb25seSB0aGUgZmlyc3Qgd2luZG93IHdpbGwgYmUgcmFpc2VkIG9uIGFwcCBhY3RpdmF0aW9uLiBPcHRpb25hbGx5LCBvbmx5IHNob3cgd2luZG93cyBmcm9tIHRoZSBjdXJyZW50IHdvcmtzcGFjZSBvciBtb25pdG9yIGFuZCByZW1vdmUgdGhlIHNsaWdodCBwb3B1cCBkZWxheS4iLAogICJuYW1lIjogIkFsdFRhYiBNb2QiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWx0VGFiLW1vZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTGVsZWF0L0FsdFRhYi1Nb2QiLAogICJ1dWlkIjogImFsdHRhYi1tb2RAbGVsZWF0LW9uLWdpdGh1YiIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "personalize@Selenium-H", "name": "Personalize", "pname": "personalize", "description": "Personalize the looks of GNOME Desktop.\n\nSet the theme variant, window corner curvature and select accent color.\nThe Colors section contains colors generated from the selected accent color.\nThe color generation is not accurate. However, individual colors can be customised.\n\nNot all settings are applied automatically.\nPress Refresh button on the left of the headerbar to reload the extension \n\nCurrently, only Adwaita theme is supported. Also, Adwaita and Adwaita-dark gtk-2 themes\nmust be installed for the extension to work properly. Not all widgets are themed perfectly.", "link": "https://extensions.gnome.org/extension/4010/personalize/", "shell_version_map": {"38": {"version": "1", "sha256": "1rgh2zq7086ymf0222pbrx5n8q11v3f45095w4x3ikw7k12j9s0n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImNvbW1lbnQiOiAiUGVyc29uYWxpemUgR05PTUUgdGhlbWUgYW5kIGN1c3RvbWl6ZSB0aGVtLiIsCiAgImRlc2NyaXB0aW9uIjogIlBlcnNvbmFsaXplIHRoZSBsb29rcyBvZiBHTk9NRSBEZXNrdG9wLlxuXG5TZXQgdGhlIHRoZW1lIHZhcmlhbnQsIHdpbmRvdyBjb3JuZXIgY3VydmF0dXJlIGFuZCBzZWxlY3QgYWNjZW50IGNvbG9yLlxuVGhlIENvbG9ycyBzZWN0aW9uIGNvbnRhaW5zIGNvbG9ycyBnZW5lcmF0ZWQgZnJvbSB0aGUgc2VsZWN0ZWQgYWNjZW50IGNvbG9yLlxuVGhlIGNvbG9yIGdlbmVyYXRpb24gaXMgbm90IGFjY3VyYXRlLiBIb3dldmVyLCBpbmRpdmlkdWFsIGNvbG9ycyBjYW4gYmUgY3VzdG9taXNlZC5cblxuTm90IGFsbCBzZXR0aW5ncyBhcmUgYXBwbGllZCBhdXRvbWF0aWNhbGx5LlxuUHJlc3MgUmVmcmVzaCBidXR0b24gb24gdGhlIGxlZnQgb2YgdGhlIGhlYWRlcmJhciB0byByZWxvYWQgdGhlIGV4dGVuc2lvbiBcblxuQ3VycmVudGx5LCBvbmx5IEFkd2FpdGEgdGhlbWUgaXMgc3VwcG9ydGVkLiBBbHNvLCBBZHdhaXRhIGFuZCBBZHdhaXRhLWRhcmsgZ3RrLTIgdGhlbWVzXG5tdXN0IGJlIGluc3RhbGxlZCBmb3IgdGhlIGV4dGVuc2lvbiB0byB3b3JrIHByb3Blcmx5LiBOb3QgYWxsIHdpZGdldHMgYXJlIHRoZW1lZCBwZXJmZWN0bHkuIiwKICAibmFtZSI6ICJQZXJzb25hbGl6ZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wZXJzb25hbGl6ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJzdGF0dXMiOiAiICIsCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2VsZW5pdW0tSC9QZXJzb25hbGl6ZSIsCiAgInV1aWQiOiAicGVyc29uYWxpemVAU2VsZW5pdW0tSCIsCiAgInZlcnNpb24iOiAxCn0="}}}
-, {"uuid": "gnomebedtime@ionutbortis.gmail.com", "name": "Bedtime Mode", "pname": "gnome-bedtime", "description": "Hey Gnome, it's bedtime! Converts to grayscale the entire Gnome workspace by using a smooth transition. Best to use during evening/night.\n\nThis behaviour is similar to Android's bedtime mode which converts the phone screen to grayscale. It should somewhat make your device less appealing and limit the usage of it before bedtime. On my side, at least, it still requires a fair amount of self control in order to make that happen.\n\nThe extension has a nice Settings UI where you can customize it to your liking:\n- Set an automatic schedule for turning on/off the Bedtime Mode\n- Add an On Demand button to Top Bar or System Menu to manually toggle the mode\n- Control the On Demand button visibility, appearance and position in Top Bar\n- Choose another color preset and intensity, if you prefer a different color scheme\n- Change color intensity on the fly by scrolling over the On Demand button in Top Bar\n\nMulti language support is also available, please check the GitHub page if you want to help with the translations. So far, the extension is fully translated to Spanish, Dutch, German, Romanian and English.\n\nIf you want to use a keyboard shortcut in order to toggle the Bedtime Mode then you can use this command for the shortcut:\n\nbash -c 'schema_id=org.gnome.shell.extensions.bedtime-mode; schema_dir=~/.local/share/gnome-shell/extensions/gnomebedtime@ionutbortis.gmail.com/schemas/; if [[ $(gsettings --schemadir $schema_dir get $schema_id bedtime-mode-active) == \"true\" ]]; then turn_on=false; else turn_on=true; fi; gsettings --schemadir $schema_dir set $schema_id bedtime-mode-active $turn_on;'\n", "link": "https://extensions.gnome.org/extension/4012/gnome-bedtime/", "shell_version_map": {"38": {"version": "8", "sha256": "11ay06wgi8mq4n6il16rq06pmpy70apmjw0s521bw94vpvhw64kd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhleSBHbm9tZSwgaXQncyBiZWR0aW1lISBDb252ZXJ0cyB0byBncmF5c2NhbGUgdGhlIGVudGlyZSBHbm9tZSB3b3Jrc3BhY2UgYnkgdXNpbmcgYSBzbW9vdGggdHJhbnNpdGlvbi4gQmVzdCB0byB1c2UgZHVyaW5nIGV2ZW5pbmcvbmlnaHQuXG5cblRoaXMgYmVoYXZpb3VyIGlzIHNpbWlsYXIgdG8gQW5kcm9pZCdzIGJlZHRpbWUgbW9kZSB3aGljaCBjb252ZXJ0cyB0aGUgcGhvbmUgc2NyZWVuIHRvIGdyYXlzY2FsZS4gSXQgc2hvdWxkIHNvbWV3aGF0IG1ha2UgeW91ciBkZXZpY2UgbGVzcyBhcHBlYWxpbmcgYW5kIGxpbWl0IHRoZSB1c2FnZSBvZiBpdCBiZWZvcmUgYmVkdGltZS4gT24gbXkgc2lkZSwgYXQgbGVhc3QsIGl0IHN0aWxsIHJlcXVpcmVzIGEgZmFpciBhbW91bnQgb2Ygc2VsZiBjb250cm9sIGluIG9yZGVyIHRvIG1ha2UgdGhhdCBoYXBwZW4uXG5cblRoZSBleHRlbnNpb24gaGFzIGEgbmljZSBTZXR0aW5ncyBVSSB3aGVyZSB5b3UgY2FuIGN1c3RvbWl6ZSBpdCB0byB5b3VyIGxpa2luZzpcbi0gU2V0IGFuIGF1dG9tYXRpYyBzY2hlZHVsZSBmb3IgdHVybmluZyBvbi9vZmYgdGhlIEJlZHRpbWUgTW9kZVxuLSBBZGQgYW4gT24gRGVtYW5kIGJ1dHRvbiB0byBUb3AgQmFyIG9yIFN5c3RlbSBNZW51IHRvIG1hbnVhbGx5IHRvZ2dsZSB0aGUgbW9kZVxuLSBDb250cm9sIHRoZSBPbiBEZW1hbmQgYnV0dG9uIHZpc2liaWxpdHksIGFwcGVhcmFuY2UgYW5kIHBvc2l0aW9uIGluIFRvcCBCYXJcbi0gQ2hvb3NlIGFub3RoZXIgY29sb3IgcHJlc2V0IGFuZCBpbnRlbnNpdHksIGlmIHlvdSBwcmVmZXIgYSBkaWZmZXJlbnQgY29sb3Igc2NoZW1lXG4tIENoYW5nZSBjb2xvciBpbnRlbnNpdHkgb24gdGhlIGZseSBieSBzY3JvbGxpbmcgb3ZlciB0aGUgT24gRGVtYW5kIGJ1dHRvbiBpbiBUb3AgQmFyXG5cbk11bHRpIGxhbmd1YWdlIHN1cHBvcnQgaXMgYWxzbyBhdmFpbGFibGUsIHBsZWFzZSBjaGVjayB0aGUgR2l0SHViIHBhZ2UgaWYgeW91IHdhbnQgdG8gaGVscCB3aXRoIHRoZSB0cmFuc2xhdGlvbnMuIFNvIGZhciwgdGhlIGV4dGVuc2lvbiBpcyBmdWxseSB0cmFuc2xhdGVkIHRvIFNwYW5pc2gsIER1dGNoLCBHZXJtYW4sIFJvbWFuaWFuIGFuZCBFbmdsaXNoLlxuXG5JZiB5b3Ugd2FudCB0byB1c2UgYSBrZXlib2FyZCBzaG9ydGN1dCBpbiBvcmRlciB0byB0b2dnbGUgdGhlIEJlZHRpbWUgTW9kZSB0aGVuIHlvdSBjYW4gdXNlIHRoaXMgY29tbWFuZCBmb3IgdGhlIHNob3J0Y3V0OlxuXG5iYXNoIC1jICdzY2hlbWFfaWQ9b3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmVkdGltZS1tb2RlOyBzY2hlbWFfZGlyPX4vLmxvY2FsL3NoYXJlL2dub21lLXNoZWxsL2V4dGVuc2lvbnMvZ25vbWViZWR0aW1lQGlvbnV0Ym9ydGlzLmdtYWlsLmNvbS9zY2hlbWFzLzsgaWYgW1sgJChnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgZ2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSkgPT0gXCJ0cnVlXCIgXV07IHRoZW4gdHVybl9vbj1mYWxzZTsgZWxzZSB0dXJuX29uPXRydWU7IGZpOyBnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgc2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSAkdHVybl9vbjsnXG4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiZWR0aW1lLW1vZGUiLAogICJuYW1lIjogIkJlZHRpbWUgTW9kZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iZWR0aW1lLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pb251dGJvcnRpcy9nbm9tZS1iZWR0aW1lLW1vZGUiLAogICJ1dWlkIjogImdub21lYmVkdGltZUBpb251dGJvcnRpcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}, "40": {"version": "8", "sha256": "11ay06wgi8mq4n6il16rq06pmpy70apmjw0s521bw94vpvhw64kd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhleSBHbm9tZSwgaXQncyBiZWR0aW1lISBDb252ZXJ0cyB0byBncmF5c2NhbGUgdGhlIGVudGlyZSBHbm9tZSB3b3Jrc3BhY2UgYnkgdXNpbmcgYSBzbW9vdGggdHJhbnNpdGlvbi4gQmVzdCB0byB1c2UgZHVyaW5nIGV2ZW5pbmcvbmlnaHQuXG5cblRoaXMgYmVoYXZpb3VyIGlzIHNpbWlsYXIgdG8gQW5kcm9pZCdzIGJlZHRpbWUgbW9kZSB3aGljaCBjb252ZXJ0cyB0aGUgcGhvbmUgc2NyZWVuIHRvIGdyYXlzY2FsZS4gSXQgc2hvdWxkIHNvbWV3aGF0IG1ha2UgeW91ciBkZXZpY2UgbGVzcyBhcHBlYWxpbmcgYW5kIGxpbWl0IHRoZSB1c2FnZSBvZiBpdCBiZWZvcmUgYmVkdGltZS4gT24gbXkgc2lkZSwgYXQgbGVhc3QsIGl0IHN0aWxsIHJlcXVpcmVzIGEgZmFpciBhbW91bnQgb2Ygc2VsZiBjb250cm9sIGluIG9yZGVyIHRvIG1ha2UgdGhhdCBoYXBwZW4uXG5cblRoZSBleHRlbnNpb24gaGFzIGEgbmljZSBTZXR0aW5ncyBVSSB3aGVyZSB5b3UgY2FuIGN1c3RvbWl6ZSBpdCB0byB5b3VyIGxpa2luZzpcbi0gU2V0IGFuIGF1dG9tYXRpYyBzY2hlZHVsZSBmb3IgdHVybmluZyBvbi9vZmYgdGhlIEJlZHRpbWUgTW9kZVxuLSBBZGQgYW4gT24gRGVtYW5kIGJ1dHRvbiB0byBUb3AgQmFyIG9yIFN5c3RlbSBNZW51IHRvIG1hbnVhbGx5IHRvZ2dsZSB0aGUgbW9kZVxuLSBDb250cm9sIHRoZSBPbiBEZW1hbmQgYnV0dG9uIHZpc2liaWxpdHksIGFwcGVhcmFuY2UgYW5kIHBvc2l0aW9uIGluIFRvcCBCYXJcbi0gQ2hvb3NlIGFub3RoZXIgY29sb3IgcHJlc2V0IGFuZCBpbnRlbnNpdHksIGlmIHlvdSBwcmVmZXIgYSBkaWZmZXJlbnQgY29sb3Igc2NoZW1lXG4tIENoYW5nZSBjb2xvciBpbnRlbnNpdHkgb24gdGhlIGZseSBieSBzY3JvbGxpbmcgb3ZlciB0aGUgT24gRGVtYW5kIGJ1dHRvbiBpbiBUb3AgQmFyXG5cbk11bHRpIGxhbmd1YWdlIHN1cHBvcnQgaXMgYWxzbyBhdmFpbGFibGUsIHBsZWFzZSBjaGVjayB0aGUgR2l0SHViIHBhZ2UgaWYgeW91IHdhbnQgdG8gaGVscCB3aXRoIHRoZSB0cmFuc2xhdGlvbnMuIFNvIGZhciwgdGhlIGV4dGVuc2lvbiBpcyBmdWxseSB0cmFuc2xhdGVkIHRvIFNwYW5pc2gsIER1dGNoLCBHZXJtYW4sIFJvbWFuaWFuIGFuZCBFbmdsaXNoLlxuXG5JZiB5b3Ugd2FudCB0byB1c2UgYSBrZXlib2FyZCBzaG9ydGN1dCBpbiBvcmRlciB0byB0b2dnbGUgdGhlIEJlZHRpbWUgTW9kZSB0aGVuIHlvdSBjYW4gdXNlIHRoaXMgY29tbWFuZCBmb3IgdGhlIHNob3J0Y3V0OlxuXG5iYXNoIC1jICdzY2hlbWFfaWQ9b3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmVkdGltZS1tb2RlOyBzY2hlbWFfZGlyPX4vLmxvY2FsL3NoYXJlL2dub21lLXNoZWxsL2V4dGVuc2lvbnMvZ25vbWViZWR0aW1lQGlvbnV0Ym9ydGlzLmdtYWlsLmNvbS9zY2hlbWFzLzsgaWYgW1sgJChnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgZ2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSkgPT0gXCJ0cnVlXCIgXV07IHRoZW4gdHVybl9vbj1mYWxzZTsgZWxzZSB0dXJuX29uPXRydWU7IGZpOyBnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgc2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSAkdHVybl9vbjsnXG4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiZWR0aW1lLW1vZGUiLAogICJuYW1lIjogIkJlZHRpbWUgTW9kZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iZWR0aW1lLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pb251dGJvcnRpcy9nbm9tZS1iZWR0aW1lLW1vZGUiLAogICJ1dWlkIjogImdub21lYmVkdGltZUBpb251dGJvcnRpcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}, "41": {"version": "8", "sha256": "11ay06wgi8mq4n6il16rq06pmpy70apmjw0s521bw94vpvhw64kd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhleSBHbm9tZSwgaXQncyBiZWR0aW1lISBDb252ZXJ0cyB0byBncmF5c2NhbGUgdGhlIGVudGlyZSBHbm9tZSB3b3Jrc3BhY2UgYnkgdXNpbmcgYSBzbW9vdGggdHJhbnNpdGlvbi4gQmVzdCB0byB1c2UgZHVyaW5nIGV2ZW5pbmcvbmlnaHQuXG5cblRoaXMgYmVoYXZpb3VyIGlzIHNpbWlsYXIgdG8gQW5kcm9pZCdzIGJlZHRpbWUgbW9kZSB3aGljaCBjb252ZXJ0cyB0aGUgcGhvbmUgc2NyZWVuIHRvIGdyYXlzY2FsZS4gSXQgc2hvdWxkIHNvbWV3aGF0IG1ha2UgeW91ciBkZXZpY2UgbGVzcyBhcHBlYWxpbmcgYW5kIGxpbWl0IHRoZSB1c2FnZSBvZiBpdCBiZWZvcmUgYmVkdGltZS4gT24gbXkgc2lkZSwgYXQgbGVhc3QsIGl0IHN0aWxsIHJlcXVpcmVzIGEgZmFpciBhbW91bnQgb2Ygc2VsZiBjb250cm9sIGluIG9yZGVyIHRvIG1ha2UgdGhhdCBoYXBwZW4uXG5cblRoZSBleHRlbnNpb24gaGFzIGEgbmljZSBTZXR0aW5ncyBVSSB3aGVyZSB5b3UgY2FuIGN1c3RvbWl6ZSBpdCB0byB5b3VyIGxpa2luZzpcbi0gU2V0IGFuIGF1dG9tYXRpYyBzY2hlZHVsZSBmb3IgdHVybmluZyBvbi9vZmYgdGhlIEJlZHRpbWUgTW9kZVxuLSBBZGQgYW4gT24gRGVtYW5kIGJ1dHRvbiB0byBUb3AgQmFyIG9yIFN5c3RlbSBNZW51IHRvIG1hbnVhbGx5IHRvZ2dsZSB0aGUgbW9kZVxuLSBDb250cm9sIHRoZSBPbiBEZW1hbmQgYnV0dG9uIHZpc2liaWxpdHksIGFwcGVhcmFuY2UgYW5kIHBvc2l0aW9uIGluIFRvcCBCYXJcbi0gQ2hvb3NlIGFub3RoZXIgY29sb3IgcHJlc2V0IGFuZCBpbnRlbnNpdHksIGlmIHlvdSBwcmVmZXIgYSBkaWZmZXJlbnQgY29sb3Igc2NoZW1lXG4tIENoYW5nZSBjb2xvciBpbnRlbnNpdHkgb24gdGhlIGZseSBieSBzY3JvbGxpbmcgb3ZlciB0aGUgT24gRGVtYW5kIGJ1dHRvbiBpbiBUb3AgQmFyXG5cbk11bHRpIGxhbmd1YWdlIHN1cHBvcnQgaXMgYWxzbyBhdmFpbGFibGUsIHBsZWFzZSBjaGVjayB0aGUgR2l0SHViIHBhZ2UgaWYgeW91IHdhbnQgdG8gaGVscCB3aXRoIHRoZSB0cmFuc2xhdGlvbnMuIFNvIGZhciwgdGhlIGV4dGVuc2lvbiBpcyBmdWxseSB0cmFuc2xhdGVkIHRvIFNwYW5pc2gsIER1dGNoLCBHZXJtYW4sIFJvbWFuaWFuIGFuZCBFbmdsaXNoLlxuXG5JZiB5b3Ugd2FudCB0byB1c2UgYSBrZXlib2FyZCBzaG9ydGN1dCBpbiBvcmRlciB0byB0b2dnbGUgdGhlIEJlZHRpbWUgTW9kZSB0aGVuIHlvdSBjYW4gdXNlIHRoaXMgY29tbWFuZCBmb3IgdGhlIHNob3J0Y3V0OlxuXG5iYXNoIC1jICdzY2hlbWFfaWQ9b3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmVkdGltZS1tb2RlOyBzY2hlbWFfZGlyPX4vLmxvY2FsL3NoYXJlL2dub21lLXNoZWxsL2V4dGVuc2lvbnMvZ25vbWViZWR0aW1lQGlvbnV0Ym9ydGlzLmdtYWlsLmNvbS9zY2hlbWFzLzsgaWYgW1sgJChnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgZ2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSkgPT0gXCJ0cnVlXCIgXV07IHRoZW4gdHVybl9vbj1mYWxzZTsgZWxzZSB0dXJuX29uPXRydWU7IGZpOyBnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgc2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSAkdHVybl9vbjsnXG4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiZWR0aW1lLW1vZGUiLAogICJuYW1lIjogIkJlZHRpbWUgTW9kZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iZWR0aW1lLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pb251dGJvcnRpcy9nbm9tZS1iZWR0aW1lLW1vZGUiLAogICJ1dWlkIjogImdub21lYmVkdGltZUBpb251dGJvcnRpcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}}}
+, {"uuid": "gnomebedtime@ionutbortis.gmail.com", "name": "Bedtime Mode", "pname": "gnome-bedtime", "description": "Hey Gnome, it's bedtime! Converts to grayscale the entire Gnome workspace by using a smooth transition. Best to use during evening/night.\n\nThis behaviour is similar to Android's bedtime mode which converts the phone screen to grayscale. It should somewhat make your device less appealing and limit the usage of it before bedtime. On my side, at least, it still requires a fair amount of self control in order to make that happen.\n\nThe extension has a nice Settings UI where you can customize it to your liking:\n- Set an automatic schedule for turning on/off the Bedtime Mode\n- Add an On Demand button to Top Bar or System Menu to manually toggle the mode\n- Control the On Demand button visibility, appearance and position in Top Bar\n- Choose another color preset and intensity, if you prefer a different color scheme\n- Change color intensity on the fly by scrolling over the On Demand button in Top Bar\n\nMulti language support is also available, please check the GitHub page if you want to help with the translations. So far, the extension is fully translated to Spanish, Dutch, German, Romanian and English.\n\nIf you want to use a keyboard shortcut in order to toggle the Bedtime Mode then you can use this command for the shortcut:\n\nbash -c 'schema_id=org.gnome.shell.extensions.bedtime-mode; schema_dir=~/.local/share/gnome-shell/extensions/gnomebedtime@ionutbortis.gmail.com/schemas/; if [[ $(gsettings --schemadir $schema_dir get $schema_id bedtime-mode-active) == \"true\" ]]; then turn_on=false; else turn_on=true; fi; gsettings --schemadir $schema_dir set $schema_id bedtime-mode-active $turn_on;'\n", "link": "https://extensions.gnome.org/extension/4012/gnome-bedtime/", "shell_version_map": {"38": {"version": "8", "sha256": "11ay06wgi8mq4n6il16rq06pmpy70apmjw0s521bw94vpvhw64kd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhleSBHbm9tZSwgaXQncyBiZWR0aW1lISBDb252ZXJ0cyB0byBncmF5c2NhbGUgdGhlIGVudGlyZSBHbm9tZSB3b3Jrc3BhY2UgYnkgdXNpbmcgYSBzbW9vdGggdHJhbnNpdGlvbi4gQmVzdCB0byB1c2UgZHVyaW5nIGV2ZW5pbmcvbmlnaHQuXG5cblRoaXMgYmVoYXZpb3VyIGlzIHNpbWlsYXIgdG8gQW5kcm9pZCdzIGJlZHRpbWUgbW9kZSB3aGljaCBjb252ZXJ0cyB0aGUgcGhvbmUgc2NyZWVuIHRvIGdyYXlzY2FsZS4gSXQgc2hvdWxkIHNvbWV3aGF0IG1ha2UgeW91ciBkZXZpY2UgbGVzcyBhcHBlYWxpbmcgYW5kIGxpbWl0IHRoZSB1c2FnZSBvZiBpdCBiZWZvcmUgYmVkdGltZS4gT24gbXkgc2lkZSwgYXQgbGVhc3QsIGl0IHN0aWxsIHJlcXVpcmVzIGEgZmFpciBhbW91bnQgb2Ygc2VsZiBjb250cm9sIGluIG9yZGVyIHRvIG1ha2UgdGhhdCBoYXBwZW4uXG5cblRoZSBleHRlbnNpb24gaGFzIGEgbmljZSBTZXR0aW5ncyBVSSB3aGVyZSB5b3UgY2FuIGN1c3RvbWl6ZSBpdCB0byB5b3VyIGxpa2luZzpcbi0gU2V0IGFuIGF1dG9tYXRpYyBzY2hlZHVsZSBmb3IgdHVybmluZyBvbi9vZmYgdGhlIEJlZHRpbWUgTW9kZVxuLSBBZGQgYW4gT24gRGVtYW5kIGJ1dHRvbiB0byBUb3AgQmFyIG9yIFN5c3RlbSBNZW51IHRvIG1hbnVhbGx5IHRvZ2dsZSB0aGUgbW9kZVxuLSBDb250cm9sIHRoZSBPbiBEZW1hbmQgYnV0dG9uIHZpc2liaWxpdHksIGFwcGVhcmFuY2UgYW5kIHBvc2l0aW9uIGluIFRvcCBCYXJcbi0gQ2hvb3NlIGFub3RoZXIgY29sb3IgcHJlc2V0IGFuZCBpbnRlbnNpdHksIGlmIHlvdSBwcmVmZXIgYSBkaWZmZXJlbnQgY29sb3Igc2NoZW1lXG4tIENoYW5nZSBjb2xvciBpbnRlbnNpdHkgb24gdGhlIGZseSBieSBzY3JvbGxpbmcgb3ZlciB0aGUgT24gRGVtYW5kIGJ1dHRvbiBpbiBUb3AgQmFyXG5cbk11bHRpIGxhbmd1YWdlIHN1cHBvcnQgaXMgYWxzbyBhdmFpbGFibGUsIHBsZWFzZSBjaGVjayB0aGUgR2l0SHViIHBhZ2UgaWYgeW91IHdhbnQgdG8gaGVscCB3aXRoIHRoZSB0cmFuc2xhdGlvbnMuIFNvIGZhciwgdGhlIGV4dGVuc2lvbiBpcyBmdWxseSB0cmFuc2xhdGVkIHRvIFNwYW5pc2gsIER1dGNoLCBHZXJtYW4sIFJvbWFuaWFuIGFuZCBFbmdsaXNoLlxuXG5JZiB5b3Ugd2FudCB0byB1c2UgYSBrZXlib2FyZCBzaG9ydGN1dCBpbiBvcmRlciB0byB0b2dnbGUgdGhlIEJlZHRpbWUgTW9kZSB0aGVuIHlvdSBjYW4gdXNlIHRoaXMgY29tbWFuZCBmb3IgdGhlIHNob3J0Y3V0OlxuXG5iYXNoIC1jICdzY2hlbWFfaWQ9b3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmVkdGltZS1tb2RlOyBzY2hlbWFfZGlyPX4vLmxvY2FsL3NoYXJlL2dub21lLXNoZWxsL2V4dGVuc2lvbnMvZ25vbWViZWR0aW1lQGlvbnV0Ym9ydGlzLmdtYWlsLmNvbS9zY2hlbWFzLzsgaWYgW1sgJChnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgZ2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSkgPT0gXCJ0cnVlXCIgXV07IHRoZW4gdHVybl9vbj1mYWxzZTsgZWxzZSB0dXJuX29uPXRydWU7IGZpOyBnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgc2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSAkdHVybl9vbjsnXG4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiZWR0aW1lLW1vZGUiLAogICJuYW1lIjogIkJlZHRpbWUgTW9kZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iZWR0aW1lLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pb251dGJvcnRpcy9nbm9tZS1iZWR0aW1lLW1vZGUiLAogICJ1dWlkIjogImdub21lYmVkdGltZUBpb251dGJvcnRpcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}, "40": {"version": "8", "sha256": "11ay06wgi8mq4n6il16rq06pmpy70apmjw0s521bw94vpvhw64kd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhleSBHbm9tZSwgaXQncyBiZWR0aW1lISBDb252ZXJ0cyB0byBncmF5c2NhbGUgdGhlIGVudGlyZSBHbm9tZSB3b3Jrc3BhY2UgYnkgdXNpbmcgYSBzbW9vdGggdHJhbnNpdGlvbi4gQmVzdCB0byB1c2UgZHVyaW5nIGV2ZW5pbmcvbmlnaHQuXG5cblRoaXMgYmVoYXZpb3VyIGlzIHNpbWlsYXIgdG8gQW5kcm9pZCdzIGJlZHRpbWUgbW9kZSB3aGljaCBjb252ZXJ0cyB0aGUgcGhvbmUgc2NyZWVuIHRvIGdyYXlzY2FsZS4gSXQgc2hvdWxkIHNvbWV3aGF0IG1ha2UgeW91ciBkZXZpY2UgbGVzcyBhcHBlYWxpbmcgYW5kIGxpbWl0IHRoZSB1c2FnZSBvZiBpdCBiZWZvcmUgYmVkdGltZS4gT24gbXkgc2lkZSwgYXQgbGVhc3QsIGl0IHN0aWxsIHJlcXVpcmVzIGEgZmFpciBhbW91bnQgb2Ygc2VsZiBjb250cm9sIGluIG9yZGVyIHRvIG1ha2UgdGhhdCBoYXBwZW4uXG5cblRoZSBleHRlbnNpb24gaGFzIGEgbmljZSBTZXR0aW5ncyBVSSB3aGVyZSB5b3UgY2FuIGN1c3RvbWl6ZSBpdCB0byB5b3VyIGxpa2luZzpcbi0gU2V0IGFuIGF1dG9tYXRpYyBzY2hlZHVsZSBmb3IgdHVybmluZyBvbi9vZmYgdGhlIEJlZHRpbWUgTW9kZVxuLSBBZGQgYW4gT24gRGVtYW5kIGJ1dHRvbiB0byBUb3AgQmFyIG9yIFN5c3RlbSBNZW51IHRvIG1hbnVhbGx5IHRvZ2dsZSB0aGUgbW9kZVxuLSBDb250cm9sIHRoZSBPbiBEZW1hbmQgYnV0dG9uIHZpc2liaWxpdHksIGFwcGVhcmFuY2UgYW5kIHBvc2l0aW9uIGluIFRvcCBCYXJcbi0gQ2hvb3NlIGFub3RoZXIgY29sb3IgcHJlc2V0IGFuZCBpbnRlbnNpdHksIGlmIHlvdSBwcmVmZXIgYSBkaWZmZXJlbnQgY29sb3Igc2NoZW1lXG4tIENoYW5nZSBjb2xvciBpbnRlbnNpdHkgb24gdGhlIGZseSBieSBzY3JvbGxpbmcgb3ZlciB0aGUgT24gRGVtYW5kIGJ1dHRvbiBpbiBUb3AgQmFyXG5cbk11bHRpIGxhbmd1YWdlIHN1cHBvcnQgaXMgYWxzbyBhdmFpbGFibGUsIHBsZWFzZSBjaGVjayB0aGUgR2l0SHViIHBhZ2UgaWYgeW91IHdhbnQgdG8gaGVscCB3aXRoIHRoZSB0cmFuc2xhdGlvbnMuIFNvIGZhciwgdGhlIGV4dGVuc2lvbiBpcyBmdWxseSB0cmFuc2xhdGVkIHRvIFNwYW5pc2gsIER1dGNoLCBHZXJtYW4sIFJvbWFuaWFuIGFuZCBFbmdsaXNoLlxuXG5JZiB5b3Ugd2FudCB0byB1c2UgYSBrZXlib2FyZCBzaG9ydGN1dCBpbiBvcmRlciB0byB0b2dnbGUgdGhlIEJlZHRpbWUgTW9kZSB0aGVuIHlvdSBjYW4gdXNlIHRoaXMgY29tbWFuZCBmb3IgdGhlIHNob3J0Y3V0OlxuXG5iYXNoIC1jICdzY2hlbWFfaWQ9b3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmVkdGltZS1tb2RlOyBzY2hlbWFfZGlyPX4vLmxvY2FsL3NoYXJlL2dub21lLXNoZWxsL2V4dGVuc2lvbnMvZ25vbWViZWR0aW1lQGlvbnV0Ym9ydGlzLmdtYWlsLmNvbS9zY2hlbWFzLzsgaWYgW1sgJChnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgZ2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSkgPT0gXCJ0cnVlXCIgXV07IHRoZW4gdHVybl9vbj1mYWxzZTsgZWxzZSB0dXJuX29uPXRydWU7IGZpOyBnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgc2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSAkdHVybl9vbjsnXG4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiZWR0aW1lLW1vZGUiLAogICJuYW1lIjogIkJlZHRpbWUgTW9kZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iZWR0aW1lLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pb251dGJvcnRpcy9nbm9tZS1iZWR0aW1lLW1vZGUiLAogICJ1dWlkIjogImdub21lYmVkdGltZUBpb251dGJvcnRpcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}, "41": {"version": "8", "sha256": "11ay06wgi8mq4n6il16rq06pmpy70apmjw0s521bw94vpvhw64kd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhleSBHbm9tZSwgaXQncyBiZWR0aW1lISBDb252ZXJ0cyB0byBncmF5c2NhbGUgdGhlIGVudGlyZSBHbm9tZSB3b3Jrc3BhY2UgYnkgdXNpbmcgYSBzbW9vdGggdHJhbnNpdGlvbi4gQmVzdCB0byB1c2UgZHVyaW5nIGV2ZW5pbmcvbmlnaHQuXG5cblRoaXMgYmVoYXZpb3VyIGlzIHNpbWlsYXIgdG8gQW5kcm9pZCdzIGJlZHRpbWUgbW9kZSB3aGljaCBjb252ZXJ0cyB0aGUgcGhvbmUgc2NyZWVuIHRvIGdyYXlzY2FsZS4gSXQgc2hvdWxkIHNvbWV3aGF0IG1ha2UgeW91ciBkZXZpY2UgbGVzcyBhcHBlYWxpbmcgYW5kIGxpbWl0IHRoZSB1c2FnZSBvZiBpdCBiZWZvcmUgYmVkdGltZS4gT24gbXkgc2lkZSwgYXQgbGVhc3QsIGl0IHN0aWxsIHJlcXVpcmVzIGEgZmFpciBhbW91bnQgb2Ygc2VsZiBjb250cm9sIGluIG9yZGVyIHRvIG1ha2UgdGhhdCBoYXBwZW4uXG5cblRoZSBleHRlbnNpb24gaGFzIGEgbmljZSBTZXR0aW5ncyBVSSB3aGVyZSB5b3UgY2FuIGN1c3RvbWl6ZSBpdCB0byB5b3VyIGxpa2luZzpcbi0gU2V0IGFuIGF1dG9tYXRpYyBzY2hlZHVsZSBmb3IgdHVybmluZyBvbi9vZmYgdGhlIEJlZHRpbWUgTW9kZVxuLSBBZGQgYW4gT24gRGVtYW5kIGJ1dHRvbiB0byBUb3AgQmFyIG9yIFN5c3RlbSBNZW51IHRvIG1hbnVhbGx5IHRvZ2dsZSB0aGUgbW9kZVxuLSBDb250cm9sIHRoZSBPbiBEZW1hbmQgYnV0dG9uIHZpc2liaWxpdHksIGFwcGVhcmFuY2UgYW5kIHBvc2l0aW9uIGluIFRvcCBCYXJcbi0gQ2hvb3NlIGFub3RoZXIgY29sb3IgcHJlc2V0IGFuZCBpbnRlbnNpdHksIGlmIHlvdSBwcmVmZXIgYSBkaWZmZXJlbnQgY29sb3Igc2NoZW1lXG4tIENoYW5nZSBjb2xvciBpbnRlbnNpdHkgb24gdGhlIGZseSBieSBzY3JvbGxpbmcgb3ZlciB0aGUgT24gRGVtYW5kIGJ1dHRvbiBpbiBUb3AgQmFyXG5cbk11bHRpIGxhbmd1YWdlIHN1cHBvcnQgaXMgYWxzbyBhdmFpbGFibGUsIHBsZWFzZSBjaGVjayB0aGUgR2l0SHViIHBhZ2UgaWYgeW91IHdhbnQgdG8gaGVscCB3aXRoIHRoZSB0cmFuc2xhdGlvbnMuIFNvIGZhciwgdGhlIGV4dGVuc2lvbiBpcyBmdWxseSB0cmFuc2xhdGVkIHRvIFNwYW5pc2gsIER1dGNoLCBHZXJtYW4sIFJvbWFuaWFuIGFuZCBFbmdsaXNoLlxuXG5JZiB5b3Ugd2FudCB0byB1c2UgYSBrZXlib2FyZCBzaG9ydGN1dCBpbiBvcmRlciB0byB0b2dnbGUgdGhlIEJlZHRpbWUgTW9kZSB0aGVuIHlvdSBjYW4gdXNlIHRoaXMgY29tbWFuZCBmb3IgdGhlIHNob3J0Y3V0OlxuXG5iYXNoIC1jICdzY2hlbWFfaWQ9b3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmVkdGltZS1tb2RlOyBzY2hlbWFfZGlyPX4vLmxvY2FsL3NoYXJlL2dub21lLXNoZWxsL2V4dGVuc2lvbnMvZ25vbWViZWR0aW1lQGlvbnV0Ym9ydGlzLmdtYWlsLmNvbS9zY2hlbWFzLzsgaWYgW1sgJChnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgZ2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSkgPT0gXCJ0cnVlXCIgXV07IHRoZW4gdHVybl9vbj1mYWxzZTsgZWxzZSB0dXJuX29uPXRydWU7IGZpOyBnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgc2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSAkdHVybl9vbjsnXG4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiZWR0aW1lLW1vZGUiLAogICJuYW1lIjogIkJlZHRpbWUgTW9kZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iZWR0aW1lLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pb251dGJvcnRpcy9nbm9tZS1iZWR0aW1lLW1vZGUiLAogICJ1dWlkIjogImdub21lYmVkdGltZUBpb251dGJvcnRpcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}, "42": {"version": "8", "sha256": "11ay06wgi8mq4n6il16rq06pmpy70apmjw0s521bw94vpvhw64kd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhleSBHbm9tZSwgaXQncyBiZWR0aW1lISBDb252ZXJ0cyB0byBncmF5c2NhbGUgdGhlIGVudGlyZSBHbm9tZSB3b3Jrc3BhY2UgYnkgdXNpbmcgYSBzbW9vdGggdHJhbnNpdGlvbi4gQmVzdCB0byB1c2UgZHVyaW5nIGV2ZW5pbmcvbmlnaHQuXG5cblRoaXMgYmVoYXZpb3VyIGlzIHNpbWlsYXIgdG8gQW5kcm9pZCdzIGJlZHRpbWUgbW9kZSB3aGljaCBjb252ZXJ0cyB0aGUgcGhvbmUgc2NyZWVuIHRvIGdyYXlzY2FsZS4gSXQgc2hvdWxkIHNvbWV3aGF0IG1ha2UgeW91ciBkZXZpY2UgbGVzcyBhcHBlYWxpbmcgYW5kIGxpbWl0IHRoZSB1c2FnZSBvZiBpdCBiZWZvcmUgYmVkdGltZS4gT24gbXkgc2lkZSwgYXQgbGVhc3QsIGl0IHN0aWxsIHJlcXVpcmVzIGEgZmFpciBhbW91bnQgb2Ygc2VsZiBjb250cm9sIGluIG9yZGVyIHRvIG1ha2UgdGhhdCBoYXBwZW4uXG5cblRoZSBleHRlbnNpb24gaGFzIGEgbmljZSBTZXR0aW5ncyBVSSB3aGVyZSB5b3UgY2FuIGN1c3RvbWl6ZSBpdCB0byB5b3VyIGxpa2luZzpcbi0gU2V0IGFuIGF1dG9tYXRpYyBzY2hlZHVsZSBmb3IgdHVybmluZyBvbi9vZmYgdGhlIEJlZHRpbWUgTW9kZVxuLSBBZGQgYW4gT24gRGVtYW5kIGJ1dHRvbiB0byBUb3AgQmFyIG9yIFN5c3RlbSBNZW51IHRvIG1hbnVhbGx5IHRvZ2dsZSB0aGUgbW9kZVxuLSBDb250cm9sIHRoZSBPbiBEZW1hbmQgYnV0dG9uIHZpc2liaWxpdHksIGFwcGVhcmFuY2UgYW5kIHBvc2l0aW9uIGluIFRvcCBCYXJcbi0gQ2hvb3NlIGFub3RoZXIgY29sb3IgcHJlc2V0IGFuZCBpbnRlbnNpdHksIGlmIHlvdSBwcmVmZXIgYSBkaWZmZXJlbnQgY29sb3Igc2NoZW1lXG4tIENoYW5nZSBjb2xvciBpbnRlbnNpdHkgb24gdGhlIGZseSBieSBzY3JvbGxpbmcgb3ZlciB0aGUgT24gRGVtYW5kIGJ1dHRvbiBpbiBUb3AgQmFyXG5cbk11bHRpIGxhbmd1YWdlIHN1cHBvcnQgaXMgYWxzbyBhdmFpbGFibGUsIHBsZWFzZSBjaGVjayB0aGUgR2l0SHViIHBhZ2UgaWYgeW91IHdhbnQgdG8gaGVscCB3aXRoIHRoZSB0cmFuc2xhdGlvbnMuIFNvIGZhciwgdGhlIGV4dGVuc2lvbiBpcyBmdWxseSB0cmFuc2xhdGVkIHRvIFNwYW5pc2gsIER1dGNoLCBHZXJtYW4sIFJvbWFuaWFuIGFuZCBFbmdsaXNoLlxuXG5JZiB5b3Ugd2FudCB0byB1c2UgYSBrZXlib2FyZCBzaG9ydGN1dCBpbiBvcmRlciB0byB0b2dnbGUgdGhlIEJlZHRpbWUgTW9kZSB0aGVuIHlvdSBjYW4gdXNlIHRoaXMgY29tbWFuZCBmb3IgdGhlIHNob3J0Y3V0OlxuXG5iYXNoIC1jICdzY2hlbWFfaWQ9b3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYmVkdGltZS1tb2RlOyBzY2hlbWFfZGlyPX4vLmxvY2FsL3NoYXJlL2dub21lLXNoZWxsL2V4dGVuc2lvbnMvZ25vbWViZWR0aW1lQGlvbnV0Ym9ydGlzLmdtYWlsLmNvbS9zY2hlbWFzLzsgaWYgW1sgJChnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgZ2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSkgPT0gXCJ0cnVlXCIgXV07IHRoZW4gdHVybl9vbj1mYWxzZTsgZWxzZSB0dXJuX29uPXRydWU7IGZpOyBnc2V0dGluZ3MgLS1zY2hlbWFkaXIgJHNjaGVtYV9kaXIgc2V0ICRzY2hlbWFfaWQgYmVkdGltZS1tb2RlLWFjdGl2ZSAkdHVybl9vbjsnXG4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJiZWR0aW1lLW1vZGUiLAogICJuYW1lIjogIkJlZHRpbWUgTW9kZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5iZWR0aW1lLW1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pb251dGJvcnRpcy9nbm9tZS1iZWR0aW1lLW1vZGUiLAogICJ1dWlkIjogImdub21lYmVkdGltZUBpb251dGJvcnRpcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogOAp9"}}}
 , {"uuid": "spotify-controller@koolskateguy89", "name": "Spotify Controller", "pname": "spotify-controller", "description": "Control Spotify from the topbar!\n\nCredit to Marcus Heine (https://github.com/mheine) for most of the code in this extension.", "link": "https://extensions.gnome.org/extension/4013/spotify-controller/", "shell_version_map": {"38": {"version": "8", "sha256": "08wdv54rkp18b4b6152b55jqc9b0j37pr8rvh0ixl7wsdmkxga4r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgU3BvdGlmeSBmcm9tIHRoZSB0b3BiYXIhXG5cbkNyZWRpdCB0byBNYXJjdXMgSGVpbmUgKGh0dHBzOi8vZ2l0aHViLmNvbS9taGVpbmUpIGZvciBtb3N0IG9mIHRoZSBjb2RlIGluIHRoaXMgZXh0ZW5zaW9uLiIsCiAgIm5hbWUiOiAiU3BvdGlmeSBDb250cm9sbGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNwb3RpZnktY29udHJvbGxlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rb29sc2thdGVndXk4OS9nbm9tZS1zaGVsbC1leHRlbnNpb24tc3BvdGlmeS1jb250cm9sbGVyIiwKICAidXVpZCI6ICJzcG90aWZ5LWNvbnRyb2xsZXJAa29vbHNrYXRlZ3V5ODkiLAogICJ2ZXJzaW9uIjogOAp9"}, "40": {"version": "8", "sha256": "08wdv54rkp18b4b6152b55jqc9b0j37pr8rvh0ixl7wsdmkxga4r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgU3BvdGlmeSBmcm9tIHRoZSB0b3BiYXIhXG5cbkNyZWRpdCB0byBNYXJjdXMgSGVpbmUgKGh0dHBzOi8vZ2l0aHViLmNvbS9taGVpbmUpIGZvciBtb3N0IG9mIHRoZSBjb2RlIGluIHRoaXMgZXh0ZW5zaW9uLiIsCiAgIm5hbWUiOiAiU3BvdGlmeSBDb250cm9sbGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNwb3RpZnktY29udHJvbGxlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9rb29sc2thdGVndXk4OS9nbm9tZS1zaGVsbC1leHRlbnNpb24tc3BvdGlmeS1jb250cm9sbGVyIiwKICAidXVpZCI6ICJzcG90aWZ5LWNvbnRyb2xsZXJAa29vbHNrYXRlZ3V5ODkiLAogICJ2ZXJzaW9uIjogOAp9"}}}
 , {"uuid": "transparentwindows.mdirshad07", "name": "Transparent Window", "pname": "transparent-window", "description": "Change the opacity of windows by compiz-style shortcut Alt+scroll.\nYou can customize hotkey in Preference page if Alt key doesn't work.", "link": "https://extensions.gnome.org/extension/4016/transparent-window/", "shell_version_map": {"38": {"version": "2", "sha256": "12d8ad0s3b2cd8gczsa2l2x5wf3rag9xfr12ljw2jlrzf99vnr70", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZSB0aGUgb3BhY2l0eSBvZiB3aW5kb3dzIGJ5IGNvbXBpei1zdHlsZSBzaG9ydGN1dCBBbHQrc2Nyb2xsLlxuWW91IGNhbiBjdXN0b21pemUgaG90a2V5IGluIFByZWZlcmVuY2UgcGFnZSBpZiBBbHQga2V5IGRvZXNuJ3Qgd29yay4iLAogICJuYW1lIjogIlRyYW5zcGFyZW50IFdpbmRvdyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5UcmFuc3BhcmVudFdpbmRvdyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOC4xIiwKICAgICIzLjM2LjEiLAogICAgIjMuMzguMSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3BieHFkb3duL2dub21lLXNoZWxsLWV4dGVuc2lvbi10cmFuc3BhcmVudC13aW5kb3ciLAogICJ1dWlkIjogInRyYW5zcGFyZW50d2luZG93cy5tZGlyc2hhZDA3IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "wandering-pixel@justinrdonnelly.github.com", "name": "Wandering Pixel", "pname": "wandering-pixel", "description": "Slide 1 pixel back and forth in the top bar as a workaround for various bugs in GNOME Shell and/or Mutter.", "link": "https://extensions.gnome.org/extension/4028/wandering-pixel/", "shell_version_map": {"38": {"version": "4", "sha256": "03hq51krmqm43vkrm3fpvy5da0y75wfpkjhfnch1cz5y3112d13q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWRlIDEgcGl4ZWwgYmFjayBhbmQgZm9ydGggaW4gdGhlIHRvcCBiYXIgYXMgYSB3b3JrYXJvdW5kIGZvciB2YXJpb3VzIGJ1Z3MgaW4gR05PTUUgU2hlbGwgYW5kL29yIE11dHRlci4iLAogICJuYW1lIjogIldhbmRlcmluZyBQaXhlbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vanVzdGlucmRvbm5lbGx5L3dhbmRlcmluZy1waXhlbCIsCiAgInV1aWQiOiAid2FuZGVyaW5nLXBpeGVsQGp1c3RpbnJkb25uZWxseS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "03hq51krmqm43vkrm3fpvy5da0y75wfpkjhfnch1cz5y3112d13q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWRlIDEgcGl4ZWwgYmFjayBhbmQgZm9ydGggaW4gdGhlIHRvcCBiYXIgYXMgYSB3b3JrYXJvdW5kIGZvciB2YXJpb3VzIGJ1Z3MgaW4gR05PTUUgU2hlbGwgYW5kL29yIE11dHRlci4iLAogICJuYW1lIjogIldhbmRlcmluZyBQaXhlbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vanVzdGlucmRvbm5lbGx5L3dhbmRlcmluZy1waXhlbCIsCiAgInV1aWQiOiAid2FuZGVyaW5nLXBpeGVsQGp1c3RpbnJkb25uZWxseS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "03hq51krmqm43vkrm3fpvy5da0y75wfpkjhfnch1cz5y3112d13q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNsaWRlIDEgcGl4ZWwgYmFjayBhbmQgZm9ydGggaW4gdGhlIHRvcCBiYXIgYXMgYSB3b3JrYXJvdW5kIGZvciB2YXJpb3VzIGJ1Z3MgaW4gR05PTUUgU2hlbGwgYW5kL29yIE11dHRlci4iLAogICJuYW1lIjogIldhbmRlcmluZyBQaXhlbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vanVzdGlucmRvbm5lbGx5L3dhbmRlcmluZy1waXhlbCIsCiAgInV1aWQiOiAid2FuZGVyaW5nLXBpeGVsQGp1c3RpbnJkb25uZWxseS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "screenshot-directory@fawtytoo", "name": "Screenshot Directory", "pname": "screenshot-directory", "description": "The default screenshot directory is ~/Pictures. This extension changes that to use whatever is set if you used the Gnome Screenshot app. This can be found in the dconf setting: /org/gnome/gnome-screenshot/last-save-directory. If that directory doesn't exist, the extension will use the Home directory instead.\n\nNote: If the dconf setting doesn't exist, you need to install the Gnome Screenshot app.\n\nThe idea was taken from the extension: Screenshot Locations.", "link": "https://extensions.gnome.org/extension/4031/screenshot-directory/", "shell_version_map": {"38": {"version": "7", "sha256": "0ll7s1ydlqiz8h8yawflxcd6drxjsxwbqansxnb4jwyd41mr9rxi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBkZWZhdWx0IHNjcmVlbnNob3QgZGlyZWN0b3J5IGlzIH4vUGljdHVyZXMuIFRoaXMgZXh0ZW5zaW9uIGNoYW5nZXMgdGhhdCB0byB1c2Ugd2hhdGV2ZXIgaXMgc2V0IGlmIHlvdSB1c2VkIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC4gVGhpcyBjYW4gYmUgZm91bmQgaW4gdGhlIGRjb25mIHNldHRpbmc6IC9vcmcvZ25vbWUvZ25vbWUtc2NyZWVuc2hvdC9sYXN0LXNhdmUtZGlyZWN0b3J5LiBJZiB0aGF0IGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0LCB0aGUgZXh0ZW5zaW9uIHdpbGwgdXNlIHRoZSBIb21lIGRpcmVjdG9yeSBpbnN0ZWFkLlxuXG5Ob3RlOiBJZiB0aGUgZGNvbmYgc2V0dGluZyBkb2Vzbid0IGV4aXN0LCB5b3UgbmVlZCB0byBpbnN0YWxsIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC5cblxuVGhlIGlkZWEgd2FzIHRha2VuIGZyb20gdGhlIGV4dGVuc2lvbjogU2NyZWVuc2hvdCBMb2NhdGlvbnMuIiwKICAibmFtZSI6ICJTY3JlZW5zaG90IERpcmVjdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInV1aWQiOiAic2NyZWVuc2hvdC1kaXJlY3RvcnlAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogNwp9Cg=="}, "40": {"version": "7", "sha256": "0ll7s1ydlqiz8h8yawflxcd6drxjsxwbqansxnb4jwyd41mr9rxi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBkZWZhdWx0IHNjcmVlbnNob3QgZGlyZWN0b3J5IGlzIH4vUGljdHVyZXMuIFRoaXMgZXh0ZW5zaW9uIGNoYW5nZXMgdGhhdCB0byB1c2Ugd2hhdGV2ZXIgaXMgc2V0IGlmIHlvdSB1c2VkIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC4gVGhpcyBjYW4gYmUgZm91bmQgaW4gdGhlIGRjb25mIHNldHRpbmc6IC9vcmcvZ25vbWUvZ25vbWUtc2NyZWVuc2hvdC9sYXN0LXNhdmUtZGlyZWN0b3J5LiBJZiB0aGF0IGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0LCB0aGUgZXh0ZW5zaW9uIHdpbGwgdXNlIHRoZSBIb21lIGRpcmVjdG9yeSBpbnN0ZWFkLlxuXG5Ob3RlOiBJZiB0aGUgZGNvbmYgc2V0dGluZyBkb2Vzbid0IGV4aXN0LCB5b3UgbmVlZCB0byBpbnN0YWxsIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC5cblxuVGhlIGlkZWEgd2FzIHRha2VuIGZyb20gdGhlIGV4dGVuc2lvbjogU2NyZWVuc2hvdCBMb2NhdGlvbnMuIiwKICAibmFtZSI6ICJTY3JlZW5zaG90IERpcmVjdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInV1aWQiOiAic2NyZWVuc2hvdC1kaXJlY3RvcnlAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogNwp9Cg=="}, "41": {"version": "7", "sha256": "0ll7s1ydlqiz8h8yawflxcd6drxjsxwbqansxnb4jwyd41mr9rxi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBkZWZhdWx0IHNjcmVlbnNob3QgZGlyZWN0b3J5IGlzIH4vUGljdHVyZXMuIFRoaXMgZXh0ZW5zaW9uIGNoYW5nZXMgdGhhdCB0byB1c2Ugd2hhdGV2ZXIgaXMgc2V0IGlmIHlvdSB1c2VkIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC4gVGhpcyBjYW4gYmUgZm91bmQgaW4gdGhlIGRjb25mIHNldHRpbmc6IC9vcmcvZ25vbWUvZ25vbWUtc2NyZWVuc2hvdC9sYXN0LXNhdmUtZGlyZWN0b3J5LiBJZiB0aGF0IGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0LCB0aGUgZXh0ZW5zaW9uIHdpbGwgdXNlIHRoZSBIb21lIGRpcmVjdG9yeSBpbnN0ZWFkLlxuXG5Ob3RlOiBJZiB0aGUgZGNvbmYgc2V0dGluZyBkb2Vzbid0IGV4aXN0LCB5b3UgbmVlZCB0byBpbnN0YWxsIHRoZSBHbm9tZSBTY3JlZW5zaG90IGFwcC5cblxuVGhlIGlkZWEgd2FzIHRha2VuIGZyb20gdGhlIGV4dGVuc2lvbjogU2NyZWVuc2hvdCBMb2NhdGlvbnMuIiwKICAibmFtZSI6ICJTY3JlZW5zaG90IERpcmVjdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInV1aWQiOiAic2NyZWVuc2hvdC1kaXJlY3RvcnlAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogNwp9Cg=="}}}
-, {"uuid": "x11gestures@joseexposito.github.io", "name": "X11 Gestures", "pname": "x11-gestures", "description": "Enable GNOME Shell multi-touch gestures on X11.\nRequires Touchégg https://github.com/JoseExposito/touchegg#readme", "link": "https://extensions.gnome.org/extension/4033/x11-gestures/", "shell_version_map": {"38": {"version": "13", "sha256": "1fp2wx763cdvlbr4aa69c3ljdzzkngmzp9qf9gf11nrrxbkraaw0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0pvc2VFeHBvc2l0by9nbm9tZS1zaGVsbC1leHRlbnNpb24teDExZ2VzdHVyZXMiLAogICJ1dWlkIjogIngxMWdlc3R1cmVzQGpvc2VleHBvc2l0by5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "40": {"version": "13", "sha256": "1fp2wx763cdvlbr4aa69c3ljdzzkngmzp9qf9gf11nrrxbkraaw0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0pvc2VFeHBvc2l0by9nbm9tZS1zaGVsbC1leHRlbnNpb24teDExZ2VzdHVyZXMiLAogICJ1dWlkIjogIngxMWdlc3R1cmVzQGpvc2VleHBvc2l0by5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "41": {"version": "13", "sha256": "1fp2wx763cdvlbr4aa69c3ljdzzkngmzp9qf9gf11nrrxbkraaw0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0pvc2VFeHBvc2l0by9nbm9tZS1zaGVsbC1leHRlbnNpb24teDExZ2VzdHVyZXMiLAogICJ1dWlkIjogIngxMWdlc3R1cmVzQGpvc2VleHBvc2l0by5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
+, {"uuid": "x11gestures@joseexposito.github.io", "name": "X11 Gestures", "pname": "x11-gestures", "description": "Enable GNOME Shell multi-touch gestures on X11.\nRequires Touchégg https://github.com/JoseExposito/touchegg#readme", "link": "https://extensions.gnome.org/extension/4033/x11-gestures/", "shell_version_map": {"38": {"version": "14", "sha256": "17jnh27fj32sbmxilbjzl6lra5rgmsbnk0s4s6f3d0ahrxmn6x1d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXgxMWdlc3R1cmVzIiwKICAidXVpZCI6ICJ4MTFnZXN0dXJlc0Bqb3NlZXhwb3NpdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "40": {"version": "14", "sha256": "17jnh27fj32sbmxilbjzl6lra5rgmsbnk0s4s6f3d0ahrxmn6x1d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXgxMWdlc3R1cmVzIiwKICAidXVpZCI6ICJ4MTFnZXN0dXJlc0Bqb3NlZXhwb3NpdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "41": {"version": "14", "sha256": "17jnh27fj32sbmxilbjzl6lra5rgmsbnk0s4s6f3d0ahrxmn6x1d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXgxMWdlc3R1cmVzIiwKICAidXVpZCI6ICJ4MTFnZXN0dXJlc0Bqb3NlZXhwb3NpdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "42": {"version": "14", "sha256": "17jnh27fj32sbmxilbjzl6lra5rgmsbnk0s4s6f3d0ahrxmn6x1d", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBHTk9NRSBTaGVsbCBtdWx0aS10b3VjaCBnZXN0dXJlcyBvbiBYMTEuXG5SZXF1aXJlcyBUb3VjaFx1MDBlOWdnIGh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vdG91Y2hlZ2cjcmVhZG1lIiwKICAibmFtZSI6ICJYMTEgR2VzdHVyZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9Kb3NlRXhwb3NpdG8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXgxMWdlc3R1cmVzIiwKICAidXVpZCI6ICJ4MTFnZXN0dXJlc0Bqb3NlZXhwb3NpdG8uZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDE0Cn0="}}}
 , {"uuid": "get-out-of-the-way@michaelmob.com", "name": "Get Out Of The Way!", "pname": "get-out-of-the-way", "description": "Push 'Always-on-Top' windows out of the way of the focused window.", "link": "https://extensions.gnome.org/extension/4034/get-out-of-the-way/", "shell_version_map": {"38": {"version": "1", "sha256": "1jpjqi2l6wjn9zbgpck04gm9vbspi066chby1j6k9km6dwljfbk7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlB1c2ggJ0Fsd2F5cy1vbi1Ub3AnIHdpbmRvd3Mgb3V0IG9mIHRoZSB3YXkgb2YgdGhlIGZvY3VzZWQgd2luZG93LiIsCiAgIm5hbWUiOiAiR2V0IE91dCBPZiBUaGUgV2F5ISIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJnZXQtb3V0LW9mLXRoZS13YXlAbWljaGFlbG1vYi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "VPNStatus@jesusalc@intuivo.com", "name": "VPNStatus Indicator", "pname": "vpnstatus-indicator", "description": "displays the current state of VPNStatus VPN\n\nchecks, if /proc/net/route contains entries for device nmcli?, this is the VPNStatus network device.\n", "link": "https://extensions.gnome.org/extension/4039/vpnstatus-indicator/", "shell_version_map": {"38": {"version": "1", "sha256": "1y4ym6lpwfi03rc6186yjc7mns01q5nrwiqizghls7hiyfg3kqrn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImRpc3BsYXlzIHRoZSBjdXJyZW50IHN0YXRlIG9mIFZQTlN0YXR1cyBWUE5cblxuY2hlY2tzLCBpZiAvcHJvYy9uZXQvcm91dGUgY29udGFpbnMgZW50cmllcyBmb3IgZGV2aWNlIG5tY2xpPywgdGhpcyBpcyB0aGUgVlBOU3RhdHVzIG5ldHdvcmsgZGV2aWNlLlxuIiwKICAibmFtZSI6ICJWUE5TdGF0dXMgSW5kaWNhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIlZQTlN0YXR1c0BqZXN1c2FsY0BpbnR1aXZvLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}}}
 , {"uuid": "switchtwolayouts@qtmax.dev", "name": "Switch Two Layouts", "pname": "switch-two-layouts", "description": "This extension makes XKB shortcuts to switch keyboard layouts (such as Caps Lock, Ctrl+Shift, etc.) cycle between the two first layouts. The other ones still can be selected via the menu or using GNOME's shortcuts (Super+Space, Shift+Super+Space). It's useful when you have two primary layouts and more additional, which are used more rarely.", "link": "https://extensions.gnome.org/extension/4042/switch-two-layouts/", "shell_version_map": {"38": {"version": "3", "sha256": "0lzr3nx55842w7x60kx20fm8p07gz9gxh1lkqk9sic2784cbydsc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIG1ha2VzIFhLQiBzaG9ydGN1dHMgdG8gc3dpdGNoIGtleWJvYXJkIGxheW91dHMgKHN1Y2ggYXMgQ2FwcyBMb2NrLCBDdHJsK1NoaWZ0LCBldGMuKSBjeWNsZSBiZXR3ZWVuIHRoZSB0d28gZmlyc3QgbGF5b3V0cy4gVGhlIG90aGVyIG9uZXMgc3RpbGwgY2FuIGJlIHNlbGVjdGVkIHZpYSB0aGUgbWVudSBvciB1c2luZyBHTk9NRSdzIHNob3J0Y3V0cyAoU3VwZXIrU3BhY2UsIFNoaWZ0K1N1cGVyK1NwYWNlKS4gSXQncyB1c2VmdWwgd2hlbiB5b3UgaGF2ZSB0d28gcHJpbWFyeSBsYXlvdXRzIGFuZCBtb3JlIGFkZGl0aW9uYWwsIHdoaWNoIGFyZSB1c2VkIG1vcmUgcmFyZWx5LiIsCiAgIm5hbWUiOiAiU3dpdGNoIFR3byBMYXlvdXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic3dpdGNodHdvbGF5b3V0c0BxdG1heC5kZXYiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "0lzr3nx55842w7x60kx20fm8p07gz9gxh1lkqk9sic2784cbydsc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIG1ha2VzIFhLQiBzaG9ydGN1dHMgdG8gc3dpdGNoIGtleWJvYXJkIGxheW91dHMgKHN1Y2ggYXMgQ2FwcyBMb2NrLCBDdHJsK1NoaWZ0LCBldGMuKSBjeWNsZSBiZXR3ZWVuIHRoZSB0d28gZmlyc3QgbGF5b3V0cy4gVGhlIG90aGVyIG9uZXMgc3RpbGwgY2FuIGJlIHNlbGVjdGVkIHZpYSB0aGUgbWVudSBvciB1c2luZyBHTk9NRSdzIHNob3J0Y3V0cyAoU3VwZXIrU3BhY2UsIFNoaWZ0K1N1cGVyK1NwYWNlKS4gSXQncyB1c2VmdWwgd2hlbiB5b3UgaGF2ZSB0d28gcHJpbWFyeSBsYXlvdXRzIGFuZCBtb3JlIGFkZGl0aW9uYWwsIHdoaWNoIGFyZSB1c2VkIG1vcmUgcmFyZWx5LiIsCiAgIm5hbWUiOiAiU3dpdGNoIFR3byBMYXlvdXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic3dpdGNodHdvbGF5b3V0c0BxdG1heC5kZXYiLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "0lzr3nx55842w7x60kx20fm8p07gz9gxh1lkqk9sic2784cbydsc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIG1ha2VzIFhLQiBzaG9ydGN1dHMgdG8gc3dpdGNoIGtleWJvYXJkIGxheW91dHMgKHN1Y2ggYXMgQ2FwcyBMb2NrLCBDdHJsK1NoaWZ0LCBldGMuKSBjeWNsZSBiZXR3ZWVuIHRoZSB0d28gZmlyc3QgbGF5b3V0cy4gVGhlIG90aGVyIG9uZXMgc3RpbGwgY2FuIGJlIHNlbGVjdGVkIHZpYSB0aGUgbWVudSBvciB1c2luZyBHTk9NRSdzIHNob3J0Y3V0cyAoU3VwZXIrU3BhY2UsIFNoaWZ0K1N1cGVyK1NwYWNlKS4gSXQncyB1c2VmdWwgd2hlbiB5b3UgaGF2ZSB0d28gcHJpbWFyeSBsYXlvdXRzIGFuZCBtb3JlIGFkZGl0aW9uYWwsIHdoaWNoIGFyZSB1c2VkIG1vcmUgcmFyZWx5LiIsCiAgIm5hbWUiOiAiU3dpdGNoIFR3byBMYXlvdXRzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic3dpdGNodHdvbGF5b3V0c0BxdG1heC5kZXYiLAogICJ2ZXJzaW9uIjogMwp9"}}}
@@ -458,26 +458,26 @@
 , {"uuid": "notifications_to_file@fawtytoo", "name": "Notifications To File", "pname": "notifications-to-file", "description": "Notifications are appended to a file in $HOME/.notifications/ with one file created per day.\nEntries show the following information:\nTimestamp\nWhether the banner was shown\nThe urgency\nThe title\nBanner text", "link": "https://extensions.gnome.org/extension/4093/notifications-to-file/", "shell_version_map": {"38": {"version": "3", "sha256": "09idm84il85jsciz1fsrj66jj59dyx8mkcms627smb77jz0928py", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vdGlmaWNhdGlvbnMgYXJlIGFwcGVuZGVkIHRvIGEgZmlsZSBpbiAkSE9NRS8ubm90aWZpY2F0aW9ucy8gd2l0aCBvbmUgZmlsZSBjcmVhdGVkIHBlciBkYXkuXG5FbnRyaWVzIHNob3cgdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbjpcblRpbWVzdGFtcFxuV2hldGhlciB0aGUgYmFubmVyIHdhcyBzaG93blxuVGhlIHVyZ2VuY3lcblRoZSB0aXRsZVxuQmFubmVyIHRleHQiLAogICJuYW1lIjogIk5vdGlmaWNhdGlvbnMgVG8gRmlsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm5vdGlmaWNhdGlvbnNfdG9fZmlsZUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "09idm84il85jsciz1fsrj66jj59dyx8mkcms627smb77jz0928py", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vdGlmaWNhdGlvbnMgYXJlIGFwcGVuZGVkIHRvIGEgZmlsZSBpbiAkSE9NRS8ubm90aWZpY2F0aW9ucy8gd2l0aCBvbmUgZmlsZSBjcmVhdGVkIHBlciBkYXkuXG5FbnRyaWVzIHNob3cgdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbjpcblRpbWVzdGFtcFxuV2hldGhlciB0aGUgYmFubmVyIHdhcyBzaG93blxuVGhlIHVyZ2VuY3lcblRoZSB0aXRsZVxuQmFubmVyIHRleHQiLAogICJuYW1lIjogIk5vdGlmaWNhdGlvbnMgVG8gRmlsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm5vdGlmaWNhdGlvbnNfdG9fZmlsZUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAzCn0="}, "41": {"version": "3", "sha256": "09idm84il85jsciz1fsrj66jj59dyx8mkcms627smb77jz0928py", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vdGlmaWNhdGlvbnMgYXJlIGFwcGVuZGVkIHRvIGEgZmlsZSBpbiAkSE9NRS8ubm90aWZpY2F0aW9ucy8gd2l0aCBvbmUgZmlsZSBjcmVhdGVkIHBlciBkYXkuXG5FbnRyaWVzIHNob3cgdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbjpcblRpbWVzdGFtcFxuV2hldGhlciB0aGUgYmFubmVyIHdhcyBzaG93blxuVGhlIHVyZ2VuY3lcblRoZSB0aXRsZVxuQmFubmVyIHRleHQiLAogICJuYW1lIjogIk5vdGlmaWNhdGlvbnMgVG8gRmlsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm5vdGlmaWNhdGlvbnNfdG9fZmlsZUBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "change_desktop_background_when_empty@fawtytoo", "name": "Change Desktop Background When Workspace Empty", "pname": "change-desktop-background-when-workspace-empty", "description": "Changes the desktop background when the workspace is or becomes empty, such as switching to an empty workspace, when all windows on a workspace are closed, or after login.\nNo folder needs to be set explicitly, as it will use the folder that the current background is in.", "link": "https://extensions.gnome.org/extension/4096/change-desktop-background-when-workspace-empty/", "shell_version_map": {"38": {"version": "13", "sha256": "09ynllxj1r4s9dh782srigzpnjzda49wlr2lj71k2g2w807vdv60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZXMgdGhlIGRlc2t0b3AgYmFja2dyb3VuZCB3aGVuIHRoZSB3b3Jrc3BhY2UgaXMgb3IgYmVjb21lcyBlbXB0eSwgc3VjaCBhcyBzd2l0Y2hpbmcgdG8gYW4gZW1wdHkgd29ya3NwYWNlLCB3aGVuIGFsbCB3aW5kb3dzIG9uIGEgd29ya3NwYWNlIGFyZSBjbG9zZWQsIG9yIGFmdGVyIGxvZ2luLlxuTm8gZm9sZGVyIG5lZWRzIHRvIGJlIHNldCBleHBsaWNpdGx5LCBhcyBpdCB3aWxsIHVzZSB0aGUgZm9sZGVyIHRoYXQgdGhlIGN1cnJlbnQgYmFja2dyb3VuZCBpcyBpbi4iLAogICJuYW1lIjogIkNoYW5nZSBEZXNrdG9wIEJhY2tncm91bmQgV2hlbiBXb3Jrc3BhY2UgRW1wdHkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJjaGFuZ2VfZGVza3RvcF9iYWNrZ3JvdW5kX3doZW5fZW1wdHlAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "40": {"version": "13", "sha256": "09ynllxj1r4s9dh782srigzpnjzda49wlr2lj71k2g2w807vdv60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZXMgdGhlIGRlc2t0b3AgYmFja2dyb3VuZCB3aGVuIHRoZSB3b3Jrc3BhY2UgaXMgb3IgYmVjb21lcyBlbXB0eSwgc3VjaCBhcyBzd2l0Y2hpbmcgdG8gYW4gZW1wdHkgd29ya3NwYWNlLCB3aGVuIGFsbCB3aW5kb3dzIG9uIGEgd29ya3NwYWNlIGFyZSBjbG9zZWQsIG9yIGFmdGVyIGxvZ2luLlxuTm8gZm9sZGVyIG5lZWRzIHRvIGJlIHNldCBleHBsaWNpdGx5LCBhcyBpdCB3aWxsIHVzZSB0aGUgZm9sZGVyIHRoYXQgdGhlIGN1cnJlbnQgYmFja2dyb3VuZCBpcyBpbi4iLAogICJuYW1lIjogIkNoYW5nZSBEZXNrdG9wIEJhY2tncm91bmQgV2hlbiBXb3Jrc3BhY2UgRW1wdHkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJjaGFuZ2VfZGVza3RvcF9iYWNrZ3JvdW5kX3doZW5fZW1wdHlAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "41": {"version": "13", "sha256": "09ynllxj1r4s9dh782srigzpnjzda49wlr2lj71k2g2w807vdv60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZXMgdGhlIGRlc2t0b3AgYmFja2dyb3VuZCB3aGVuIHRoZSB3b3Jrc3BhY2UgaXMgb3IgYmVjb21lcyBlbXB0eSwgc3VjaCBhcyBzd2l0Y2hpbmcgdG8gYW4gZW1wdHkgd29ya3NwYWNlLCB3aGVuIGFsbCB3aW5kb3dzIG9uIGEgd29ya3NwYWNlIGFyZSBjbG9zZWQsIG9yIGFmdGVyIGxvZ2luLlxuTm8gZm9sZGVyIG5lZWRzIHRvIGJlIHNldCBleHBsaWNpdGx5LCBhcyBpdCB3aWxsIHVzZSB0aGUgZm9sZGVyIHRoYXQgdGhlIGN1cnJlbnQgYmFja2dyb3VuZCBpcyBpbi4iLAogICJuYW1lIjogIkNoYW5nZSBEZXNrdG9wIEJhY2tncm91bmQgV2hlbiBXb3Jrc3BhY2UgRW1wdHkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJjaGFuZ2VfZGVza3RvcF9iYWNrZ3JvdW5kX3doZW5fZW1wdHlAZmF3dHl0b28iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
 , {"uuid": "translate-clipboard@lsnow.github.io", "name": "Translate clipboard", "pname": "translate-clipboard", "description": "Translate clipboard text", "link": "https://extensions.gnome.org/extension/4097/translate-clipboard/", "shell_version_map": {"38": {"version": "1", "sha256": "071x3q6y7s8qx4i3lis79g5nc68ld8ln5q8qgc713nvjgfsg05hs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zbGF0ZSBjbGlwYm9hcmQgdGV4dCIsCiAgIm5hbWUiOiAiVHJhbnNsYXRlIGNsaXBib2FyZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xzbm93L3RyYW5zbGF0ZS1jbGlwYm9hcmQiLAogICJ1dWlkIjogInRyYW5zbGF0ZS1jbGlwYm9hcmRAbHNub3cuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDEKfQ=="}, "40": {"version": "15", "sha256": "0src5bifp77iiznszp9j0xygfarsm2qa0rwy4axvbag9bs3ym42v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zbGF0ZSBjbGlwYm9hcmQgdGV4dCIsCiAgIm5hbWUiOiAiVHJhbnNsYXRlIGNsaXBib2FyZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MS4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbHNub3cvdHJhbnNsYXRlLWNsaXBib2FyZCIsCiAgInV1aWQiOiAidHJhbnNsYXRlLWNsaXBib2FyZEBsc25vdy5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}, "41": {"version": "15", "sha256": "0src5bifp77iiznszp9j0xygfarsm2qa0rwy4axvbag9bs3ym42v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zbGF0ZSBjbGlwYm9hcmQgdGV4dCIsCiAgIm5hbWUiOiAiVHJhbnNsYXRlIGNsaXBib2FyZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MS4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbHNub3cvdHJhbnNsYXRlLWNsaXBib2FyZCIsCiAgInV1aWQiOiAidHJhbnNsYXRlLWNsaXBib2FyZEBsc25vdy5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}}}
-, {"uuid": "no-overview@fthx", "name": "No overview at start-up", "pname": "no-overview", "description": "No overview at start-up. For GNOME Shell 40+.", "link": "https://extensions.gnome.org/extension/4099/no-overview/", "shell_version_map": {"40": {"version": "11", "sha256": "15abz4w5n4md1b0f7c403hiyifslgw7dw2jlhzpn47r7k7giwpdk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vIG92ZXJ2aWV3IGF0IHN0YXJ0LXVwLiBGb3IgR05PTUUgU2hlbGwgNDArLiIsCiAgIm5hbWUiOiAiTm8gb3ZlcnZpZXcgYXQgc3RhcnQtdXAiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImZ0aHgiCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9uby1vdmVydmlldyIsCiAgInV1aWQiOiAibm8tb3ZlcnZpZXdAZnRoeCIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "15abz4w5n4md1b0f7c403hiyifslgw7dw2jlhzpn47r7k7giwpdk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vIG92ZXJ2aWV3IGF0IHN0YXJ0LXVwLiBGb3IgR05PTUUgU2hlbGwgNDArLiIsCiAgIm5hbWUiOiAiTm8gb3ZlcnZpZXcgYXQgc3RhcnQtdXAiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImZ0aHgiCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9uby1vdmVydmlldyIsCiAgInV1aWQiOiAibm8tb3ZlcnZpZXdAZnRoeCIsCiAgInZlcnNpb24iOiAxMQp9"}}}
+, {"uuid": "no-overview@fthx", "name": "No overview at start-up", "pname": "no-overview", "description": "No overview at start-up. For GNOME Shell 40+.", "link": "https://extensions.gnome.org/extension/4099/no-overview/", "shell_version_map": {"40": {"version": "11", "sha256": "15abz4w5n4md1b0f7c403hiyifslgw7dw2jlhzpn47r7k7giwpdk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vIG92ZXJ2aWV3IGF0IHN0YXJ0LXVwLiBGb3IgR05PTUUgU2hlbGwgNDArLiIsCiAgIm5hbWUiOiAiTm8gb3ZlcnZpZXcgYXQgc3RhcnQtdXAiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImZ0aHgiCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9uby1vdmVydmlldyIsCiAgInV1aWQiOiAibm8tb3ZlcnZpZXdAZnRoeCIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "15abz4w5n4md1b0f7c403hiyifslgw7dw2jlhzpn47r7k7giwpdk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vIG92ZXJ2aWV3IGF0IHN0YXJ0LXVwLiBGb3IgR05PTUUgU2hlbGwgNDArLiIsCiAgIm5hbWUiOiAiTm8gb3ZlcnZpZXcgYXQgc3RhcnQtdXAiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImZ0aHgiCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9uby1vdmVydmlldyIsCiAgInV1aWQiOiAibm8tb3ZlcnZpZXdAZnRoeCIsCiAgInZlcnNpb24iOiAxMQp9"}, "42": {"version": "11", "sha256": "15abz4w5n4md1b0f7c403hiyifslgw7dw2jlhzpn47r7k7giwpdk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk5vIG92ZXJ2aWV3IGF0IHN0YXJ0LXVwLiBGb3IgR05PTUUgU2hlbGwgNDArLiIsCiAgIm5hbWUiOiAiTm8gb3ZlcnZpZXcgYXQgc3RhcnQtdXAiLAogICJvcmlnaW5hbC1hdXRob3JzIjogWwogICAgImZ0aHgiCiAgXSwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9uby1vdmVydmlldyIsCiAgInV1aWQiOiAibm8tb3ZlcnZpZXdAZnRoeCIsCiAgInZlcnNpb24iOiAxMQp9"}}}
 , {"uuid": "notification-position@drugo.dev", "name": "Notification Banner Position", "pname": "notification-banner-position", "description": "Changes position of the notification banner from the default to the right side of the screen.", "link": "https://extensions.gnome.org/extension/4105/notification-banner-position/", "shell_version_map": {"38": {"version": "5", "sha256": "0svmx8767hpbmmvm2m90ksqbxqij5f3k5bamz05p73czqk58dizy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZXMgcG9zaXRpb24gb2YgdGhlIG5vdGlmaWNhdGlvbiBiYW5uZXIgZnJvbSB0aGUgZGVmYXVsdCB0byB0aGUgcmlnaHQgc2lkZSBvZiB0aGUgc2NyZWVuLiIsCiAgIm5hbWUiOiAiTm90aWZpY2F0aW9uIEJhbm5lciBQb3NpdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYnJ1bm9kcnVnb3dpY2svbm90aWZpY2F0aW9uLXBvc2l0aW9uLWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uLXBvc2l0aW9uQGRydWdvLmRldiIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "0svmx8767hpbmmvm2m90ksqbxqij5f3k5bamz05p73czqk58dizy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZXMgcG9zaXRpb24gb2YgdGhlIG5vdGlmaWNhdGlvbiBiYW5uZXIgZnJvbSB0aGUgZGVmYXVsdCB0byB0aGUgcmlnaHQgc2lkZSBvZiB0aGUgc2NyZWVuLiIsCiAgIm5hbWUiOiAiTm90aWZpY2F0aW9uIEJhbm5lciBQb3NpdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYnJ1bm9kcnVnb3dpY2svbm90aWZpY2F0aW9uLXBvc2l0aW9uLWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uLXBvc2l0aW9uQGRydWdvLmRldiIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "0svmx8767hpbmmvm2m90ksqbxqij5f3k5bamz05p73czqk58dizy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYW5nZXMgcG9zaXRpb24gb2YgdGhlIG5vdGlmaWNhdGlvbiBiYW5uZXIgZnJvbSB0aGUgZGVmYXVsdCB0byB0aGUgcmlnaHQgc2lkZSBvZiB0aGUgc2NyZWVuLiIsCiAgIm5hbWUiOiAiTm90aWZpY2F0aW9uIEJhbm5lciBQb3NpdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYnJ1bm9kcnVnb3dpY2svbm90aWZpY2F0aW9uLXBvc2l0aW9uLWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAibm90aWZpY2F0aW9uLXBvc2l0aW9uQGRydWdvLmRldiIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "volume_scroller@trflynn89.pm.me", "name": "Volume Scroller", "pname": "volume-scroller", "description": "Scroll up or down in the Top Bar to adjust volume.", "link": "https://extensions.gnome.org/extension/4109/volume-scroller/", "shell_version_map": {"38": {"version": "5", "sha256": "035gkl1g3k3jqmksgmh2aip3v4k8kkbc6gdnndg6lnhz6czn9c12", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNjcm9sbCB1cCBvciBkb3duIGluIHRoZSBUb3AgQmFyIHRvIGFkanVzdCB2b2x1bWUuIiwKICAibmFtZSI6ICJWb2x1bWUgU2Nyb2xsZXIiLAogICJvcmlnaW5hbC1hdXRob3IiOiAidHJmbHlubjg5QHBtLm1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RyZmx5bm44OS9nbm9tZS1zaGVsbC12b2x1bWUtc2Nyb2xsZXIiLAogICJ1dWlkIjogInZvbHVtZV9zY3JvbGxlckB0cmZseW5uODkucG0ubWUiLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "035gkl1g3k3jqmksgmh2aip3v4k8kkbc6gdnndg6lnhz6czn9c12", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNjcm9sbCB1cCBvciBkb3duIGluIHRoZSBUb3AgQmFyIHRvIGFkanVzdCB2b2x1bWUuIiwKICAibmFtZSI6ICJWb2x1bWUgU2Nyb2xsZXIiLAogICJvcmlnaW5hbC1hdXRob3IiOiAidHJmbHlubjg5QHBtLm1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3RyZmx5bm44OS9nbm9tZS1zaGVsbC12b2x1bWUtc2Nyb2xsZXIiLAogICJ1dWlkIjogInZvbHVtZV9zY3JvbGxlckB0cmZseW5uODkucG0ubWUiLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "Mock-Universal-Menu@zacharygough", "name": "Mock Universal Menu", "pname": "mock-universal-menu", "description": "Creates a Mock Apple Menu (THIS DOES NOTHING WHEN CLICKED)", "link": "https://extensions.gnome.org/extension/4111/mock-universal-menu/", "shell_version_map": {"40": {"version": "5", "sha256": "0irq4aamfdvnsjcb9cj4grp7z0s2rg5dv349v095ss7n7jxcmdx2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgYSBNb2NrIEFwcGxlIE1lbnUgKFRISVMgRE9FUyBOT1RISU5HIFdIRU4gQ0xJQ0tFRCkiLAogICJuYW1lIjogIk1vY2sgVW5pdmVyc2FsIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1phbnktWmFjaGFyeTEvTW9jay1Vbml2ZXJzYWwtTWVudSIsCiAgInV1aWQiOiAiTW9jay1Vbml2ZXJzYWwtTWVudUB6YWNoYXJ5Z291Z2giLAogICJ2ZXJzaW9uIjogNQp9"}, "41": {"version": "5", "sha256": "0irq4aamfdvnsjcb9cj4grp7z0s2rg5dv349v095ss7n7jxcmdx2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNyZWF0ZXMgYSBNb2NrIEFwcGxlIE1lbnUgKFRISVMgRE9FUyBOT1RISU5HIFdIRU4gQ0xJQ0tFRCkiLAogICJuYW1lIjogIk1vY2sgVW5pdmVyc2FsIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1phbnktWmFjaGFyeTEvTW9jay1Vbml2ZXJzYWwtTWVudSIsCiAgInV1aWQiOiAiTW9jay1Vbml2ZXJzYWwtTWVudUB6YWNoYXJ5Z291Z2giLAogICJ2ZXJzaW9uIjogNQp9"}}}
-, {"uuid": "customize-ibus@hollowman.ml", "name": "Customize IBus", "pname": "customize-ibus", "description": "Full customization of appearance, behavior, system tray and input source indicator for IBus\n\nSupport Customization of:\n* Candidate Box Orientation\n* Candidate Box Animation\n* Right-click Candidate Box to Switch the Input Mode or Open the Tray Menu\n* Scroll on Candidate Box to Switch among Pages or Candidates\n* Fix Candidate Box to Not Follow the Caret and Set Fixed Position\n* Candidate Box Font\n* Input Mode Remember and Auto-switch by APP\n* Change Candidate Box Opacity\n* Fix IME List Order\n* Drag Candidate Box to Reposition\n* Show or Hide Candidate Box Page Buttons\n* System Tray Menus and Interaction Settings\n* * Show or Hide Tray Icon\n* * Directly Click Tray Icon to Switch Input Mode\n* * Add Additional Menu\n* Input Source Indicator Appearance and Interaction Settings\n* * Enable Indicator\n* * Only Indicate when Switching Input Mode\n* * Only Indicate when Using ASCII Input Mode\n* * Not Indicate when Using Single Mode IME\n* * Right-click Indicator to Hide\n* * Scroll on Indicator to Switch Input Mode\n* * Indicator Animation\n* * Customize Font\n* * Left-click Indicator to Drag to Move Indicator or Switch Input Mode\n* * Change Opacity\n* * Enable Indicator Show Delay and Configure Showing Timeout\n* * Enable Auto-hide Indicator and Configure Auto-hide Timeout\n* Theme (Stylesheet Provided or Extracted from GNOME Shell Themes, Refer to Help Instructions in Extension for More)\n* Candidate Box Background and its Displaying Style\n* Theme and Background Picture Follow GNOME Night Light Mode\n\nUser Guide: https://hollowmansblog.wordpress.com/2021/08/21/customize-ibus-user-guide/\n\n深度定制 IBus 的外观、行为、系统托盘以及输入指示\n\n支持自定义:\n* 候选框方向\n* 候选框动画\n* 右键单击候选框以切换输入源或打开任务栏菜单\n* 候选框上滚动以切换页面或候选词\n* 固定候选框使其不跟随光标以及设定固定位置\n* 候选框字体\n* 输入模式根据应用记忆并自动切换\n* 更改候选框透明度\n* 固定输入法列表顺序\n* 拖拽移动候选框\n* 显示或隐藏候选框调页按钮\n* 系统任务栏托盘显示和交互设置\n* * 显示或隐藏托盘图标\n* * 直接点击托盘图标切换输入源\n* * 添加额外菜单\n* 输入源指示器及其显示和交互设置\n* * 启用指示器\n* * 仅在切换输入法时指示\n* * 仅在英文输入时指示\n* * 使用单模式输入法时不指示\n* * 右击指示器来将其隐藏\n* * 指示器上滚动来切换输入源\n* * 指示器显示动画\n* * 自定义字体\n* * 左击指示器以拖拽移动或者切换输入源\n* * 更改透明度\n* * 启用延时显示以及配置显示时延\n* * 启用自动隐藏以及配置自动隐藏时延\n* 皮肤样式主题(提供的或者从GNOME Shell主题中提取的样式表,参见扩展的帮助部分来获取更多指导)\n* 候选框背景图片及其显示样式\n* 主题和背景图片跟随GNOME夜灯\n\n使用指南:https://blog.csdn.net/qq_18572023/article/details/116331601", "link": "https://extensions.gnome.org/extension/4112/customize-ibus/", "shell_version_map": {"38": {"version": "82", "sha256": "1rn0zskj5s7xp11p8sbgybghngqyf5chs469w51vn8n24k4bgdp6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGwgY3VzdG9taXphdGlvbiBvZiBhcHBlYXJhbmNlLCBiZWhhdmlvciwgc3lzdGVtIHRyYXkgYW5kIGlucHV0IHNvdXJjZSBpbmRpY2F0b3IgZm9yIElCdXNcblxuU3VwcG9ydCBDdXN0b21pemF0aW9uIG9mOlxuKiBDYW5kaWRhdGUgQm94IE9yaWVudGF0aW9uXG4qIENhbmRpZGF0ZSBCb3ggQW5pbWF0aW9uXG4qIFJpZ2h0LWNsaWNrIENhbmRpZGF0ZSBCb3ggdG8gU3dpdGNoIHRoZSBJbnB1dCBNb2RlIG9yIE9wZW4gdGhlIFRyYXkgTWVudVxuKiBTY3JvbGwgb24gQ2FuZGlkYXRlIEJveCB0byBTd2l0Y2ggYW1vbmcgUGFnZXMgb3IgQ2FuZGlkYXRlc1xuKiBGaXggQ2FuZGlkYXRlIEJveCB0byBOb3QgRm9sbG93IHRoZSBDYXJldCBhbmQgU2V0IEZpeGVkIFBvc2l0aW9uXG4qIENhbmRpZGF0ZSBCb3ggRm9udFxuKiBJbnB1dCBNb2RlIFJlbWVtYmVyIGFuZCBBdXRvLXN3aXRjaCBieSBBUFBcbiogQ2hhbmdlIENhbmRpZGF0ZSBCb3ggT3BhY2l0eVxuKiBGaXggSU1FIExpc3QgT3JkZXJcbiogRHJhZyBDYW5kaWRhdGUgQm94IHRvIFJlcG9zaXRpb25cbiogU2hvdyBvciBIaWRlIENhbmRpZGF0ZSBCb3ggUGFnZSBCdXR0b25zXG4qIFN5c3RlbSBUcmF5IE1lbnVzIGFuZCBJbnRlcmFjdGlvbiBTZXR0aW5nc1xuKiAqIFNob3cgb3IgSGlkZSBUcmF5IEljb25cbiogKiBEaXJlY3RseSBDbGljayBUcmF5IEljb24gdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBBZGQgQWRkaXRpb25hbCBNZW51XG4qIElucHV0IFNvdXJjZSBJbmRpY2F0b3IgQXBwZWFyYW5jZSBhbmQgSW50ZXJhY3Rpb24gU2V0dGluZ3NcbiogKiBFbmFibGUgSW5kaWNhdG9yXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFN3aXRjaGluZyBJbnB1dCBNb2RlXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFVzaW5nIEFTQ0lJIElucHV0IE1vZGVcbiogKiBOb3QgSW5kaWNhdGUgd2hlbiBVc2luZyBTaW5nbGUgTW9kZSBJTUVcbiogKiBSaWdodC1jbGljayBJbmRpY2F0b3IgdG8gSGlkZVxuKiAqIFNjcm9sbCBvbiBJbmRpY2F0b3IgdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBJbmRpY2F0b3IgQW5pbWF0aW9uXG4qICogQ3VzdG9taXplIEZvbnRcbiogKiBMZWZ0LWNsaWNrIEluZGljYXRvciB0byBEcmFnIHRvIE1vdmUgSW5kaWNhdG9yIG9yIFN3aXRjaCBJbnB1dCBNb2RlXG4qICogQ2hhbmdlIE9wYWNpdHlcbiogKiBFbmFibGUgSW5kaWNhdG9yIFNob3cgRGVsYXkgYW5kIENvbmZpZ3VyZSBTaG93aW5nIFRpbWVvdXRcbiogKiBFbmFibGUgQXV0by1oaWRlIEluZGljYXRvciBhbmQgQ29uZmlndXJlIEF1dG8taGlkZSBUaW1lb3V0XG4qIFRoZW1lIChTdHlsZXNoZWV0IFByb3ZpZGVkIG9yIEV4dHJhY3RlZCBmcm9tIEdOT01FIFNoZWxsIFRoZW1lcywgUmVmZXIgdG8gSGVscCBJbnN0cnVjdGlvbnMgaW4gRXh0ZW5zaW9uIGZvciBNb3JlKVxuKiBDYW5kaWRhdGUgQm94IEJhY2tncm91bmQgYW5kIGl0cyBEaXNwbGF5aW5nIFN0eWxlXG4qIFRoZW1lIGFuZCBCYWNrZ3JvdW5kIFBpY3R1cmUgRm9sbG93IEdOT01FIE5pZ2h0IExpZ2h0IE1vZGVcblxuVXNlciBHdWlkZTogaHR0cHM6Ly9ob2xsb3dtYW5zYmxvZy53b3JkcHJlc3MuY29tLzIwMjEvMDgvMjEvY3VzdG9taXplLWlidXMtdXNlci1ndWlkZS9cblxuXHU2ZGYxXHU1ZWE2XHU1YjlhXHU1MjM2IElCdXMgXHU3Njg0XHU1OTE2XHU4OWMyXHUzMDAxXHU4ODRjXHU0ZTNhXHUzMDAxXHU3Y2ZiXHU3ZWRmXHU2MjU4XHU3NmQ4XHU0ZWU1XHU1M2NhXHU4ZjkzXHU1MTY1XHU2MzA3XHU3OTNhXG5cblx1NjUyZlx1NjMwMVx1ODFlYVx1NWI5YVx1NGU0OVx1ZmYxYVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTY1YjlcdTU0MTFcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU1MmE4XHU3NTNiXG4qIFx1NTNmM1x1OTUyZVx1NTM1NVx1NTFmYlx1NTAxOVx1OTAwOVx1Njg0Nlx1NGVlNVx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFx1NjIxNlx1NjI1M1x1NWYwMFx1NGVmYlx1NTJhMVx1NjgwZlx1ODNkY1x1NTM1NVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTRlMGFcdTZlZGFcdTUyYThcdTRlZTVcdTUyMDdcdTYzNjJcdTk4NzVcdTk3NjJcdTYyMTZcdTUwMTlcdTkwMDlcdThiY2RcbiogXHU1NmZhXHU1YjlhXHU1MDE5XHU5MDA5XHU2ODQ2XHU0ZjdmXHU1MTc2XHU0ZTBkXHU4ZGRmXHU5NjhmXHU1MTQ5XHU2ODA3XHU0ZWU1XHU1M2NhXHU4YmJlXHU1YjlhXHU1NmZhXHU1YjlhXHU0ZjRkXHU3ZjZlXG4qIFx1NTAxOVx1OTAwOVx1Njg0Nlx1NWI1N1x1NGY1M1xuKiBcdThmOTNcdTUxNjVcdTZhMjFcdTVmMGZcdTY4MzlcdTYzNmVcdTVlOTRcdTc1MjhcdThiYjBcdTVmYzZcdTVlNzZcdTgxZWFcdTUyYThcdTUyMDdcdTYzNjJcbiogXHU2NmY0XHU2NTM5XHU1MDE5XHU5MDA5XHU2ODQ2XHU5MDBmXHU2NjBlXHU1ZWE2XG4qIFx1NTZmYVx1NWI5YVx1OGY5M1x1NTE2NVx1NmNkNVx1NTIxN1x1ODg2OFx1OTg3YVx1NWU4ZlxuKiBcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTUwMTlcdTkwMDlcdTY4NDZcbiogXHU2NjNlXHU3OTNhXHU2MjE2XHU5NjkwXHU4NWNmXHU1MDE5XHU5MDA5XHU2ODQ2XHU4YzAzXHU5ODc1XHU2MzA5XHU5NGFlXG4qIFx1N2NmYlx1N2VkZlx1NGVmYlx1NTJhMVx1NjgwZlx1NjI1OFx1NzZkOFx1NjYzZVx1NzkzYVx1NTQ4Y1x1NGVhNFx1NGU5Mlx1OGJiZVx1N2Y2ZVxuKiAqIFx1NjYzZVx1NzkzYVx1NjIxNlx1OTY5MFx1ODVjZlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1xuKiAqIFx1NzZmNFx1NjNhNVx1NzBiOVx1NTFmYlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1x1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFxuKiAqIFx1NmRmYlx1NTJhMFx1OTg5ZFx1NTkxNlx1ODNkY1x1NTM1NVxuKiBcdThmOTNcdTUxNjVcdTZlOTBcdTYzMDdcdTc5M2FcdTU2NjhcdTUzY2FcdTUxNzZcdTY2M2VcdTc5M2FcdTU0OGNcdTRlYTRcdTRlOTJcdThiYmVcdTdmNmVcbiogKiBcdTU0MmZcdTc1MjhcdTYzMDdcdTc5M2FcdTU2NjhcbiogKiBcdTRlYzVcdTU3MjhcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRlYzVcdTU3MjhcdTgyZjFcdTY1ODdcdThmOTNcdTUxNjVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRmN2ZcdTc1MjhcdTUzNTVcdTZhMjFcdTVmMGZcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTRlMGRcdTYzMDdcdTc5M2FcbiogKiBcdTUzZjNcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTY3NjVcdTVjMDZcdTUxNzZcdTk2OTBcdTg1Y2ZcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTRlMGFcdTZlZGFcdTUyYThcdTY3NjVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTY2M2VcdTc5M2FcdTUyYThcdTc1M2JcbiogKiBcdTgxZWFcdTViOWFcdTRlNDlcdTViNTdcdTRmNTNcbiogKiBcdTVkZTZcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTRlZTVcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTYyMTZcdTgwMDVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTY2ZjRcdTY1MzlcdTkwMGZcdTY2MGVcdTVlYTZcbiogKiBcdTU0MmZcdTc1MjhcdTVlZjZcdTY1ZjZcdTY2M2VcdTc5M2FcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTY2M2VcdTc5M2FcdTY1ZjZcdTVlZjZcbiogKiBcdTU0MmZcdTc1MjhcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTY1ZjZcdTVlZjZcbiogXHU3NmFlXHU4MGE0XHU2ODM3XHU1ZjBmXHU0ZTNiXHU5ODk4XHVmZjA4XHU2M2QwXHU0ZjliXHU3Njg0XHU2MjE2XHU4MDA1XHU0ZWNlR05PTUUgU2hlbGxcdTRlM2JcdTk4OThcdTRlMmRcdTYzZDBcdTUzZDZcdTc2ODRcdTY4MzdcdTVmMGZcdTg4NjhcdWZmMGNcdTUzYzJcdTg5YzFcdTYyNjlcdTVjNTVcdTc2ODRcdTVlMmVcdTUyYTlcdTkwZThcdTUyMDZcdTY3NjVcdTgzYjdcdTUzZDZcdTY2ZjRcdTU5MWFcdTYzMDdcdTViZmNcdWZmMDlcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU4MGNjXHU2NjZmXHU1NmZlXHU3MjQ3XHU1M2NhXHU1MTc2XHU2NjNlXHU3OTNhXHU2ODM3XHU1ZjBmXG4qIFx1NGUzYlx1OTg5OFx1NTQ4Y1x1ODBjY1x1NjY2Zlx1NTZmZVx1NzI0N1x1OGRkZlx1OTY4ZkdOT01FXHU1OTFjXHU3MDZmXG5cblx1NGY3Zlx1NzUyOFx1NjMwN1x1NTM1N1x1ZmYxYWh0dHBzOi8vYmxvZy5jc2RuLm5ldC9xcV8xODU3MjAyMy9hcnRpY2xlL2RldGFpbHMvMTE2MzMxNjAxIiwKICAiZXh0ZW5zaW9uLWlkIjogImN1c3RvbWl6ZS1pYnVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY3VzdG9taXplLWlidXMiLAogICJuYW1lIjogIkN1c3RvbWl6ZSBJQnVzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJob2xsb3dtYW5Ab3BlbnN1c2Uub3JnIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jdXN0b21pemUtaWJ1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29wZW5TVVNFL0N1c3RvbWl6ZS1JQnVzIiwKICAidXVpZCI6ICJjdXN0b21pemUtaWJ1c0Bob2xsb3dtYW4ubWwiLAogICJ2ZXJzaW9uIjogODIKfQ=="}, "40": {"version": "82", "sha256": "1rn0zskj5s7xp11p8sbgybghngqyf5chs469w51vn8n24k4bgdp6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGwgY3VzdG9taXphdGlvbiBvZiBhcHBlYXJhbmNlLCBiZWhhdmlvciwgc3lzdGVtIHRyYXkgYW5kIGlucHV0IHNvdXJjZSBpbmRpY2F0b3IgZm9yIElCdXNcblxuU3VwcG9ydCBDdXN0b21pemF0aW9uIG9mOlxuKiBDYW5kaWRhdGUgQm94IE9yaWVudGF0aW9uXG4qIENhbmRpZGF0ZSBCb3ggQW5pbWF0aW9uXG4qIFJpZ2h0LWNsaWNrIENhbmRpZGF0ZSBCb3ggdG8gU3dpdGNoIHRoZSBJbnB1dCBNb2RlIG9yIE9wZW4gdGhlIFRyYXkgTWVudVxuKiBTY3JvbGwgb24gQ2FuZGlkYXRlIEJveCB0byBTd2l0Y2ggYW1vbmcgUGFnZXMgb3IgQ2FuZGlkYXRlc1xuKiBGaXggQ2FuZGlkYXRlIEJveCB0byBOb3QgRm9sbG93IHRoZSBDYXJldCBhbmQgU2V0IEZpeGVkIFBvc2l0aW9uXG4qIENhbmRpZGF0ZSBCb3ggRm9udFxuKiBJbnB1dCBNb2RlIFJlbWVtYmVyIGFuZCBBdXRvLXN3aXRjaCBieSBBUFBcbiogQ2hhbmdlIENhbmRpZGF0ZSBCb3ggT3BhY2l0eVxuKiBGaXggSU1FIExpc3QgT3JkZXJcbiogRHJhZyBDYW5kaWRhdGUgQm94IHRvIFJlcG9zaXRpb25cbiogU2hvdyBvciBIaWRlIENhbmRpZGF0ZSBCb3ggUGFnZSBCdXR0b25zXG4qIFN5c3RlbSBUcmF5IE1lbnVzIGFuZCBJbnRlcmFjdGlvbiBTZXR0aW5nc1xuKiAqIFNob3cgb3IgSGlkZSBUcmF5IEljb25cbiogKiBEaXJlY3RseSBDbGljayBUcmF5IEljb24gdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBBZGQgQWRkaXRpb25hbCBNZW51XG4qIElucHV0IFNvdXJjZSBJbmRpY2F0b3IgQXBwZWFyYW5jZSBhbmQgSW50ZXJhY3Rpb24gU2V0dGluZ3NcbiogKiBFbmFibGUgSW5kaWNhdG9yXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFN3aXRjaGluZyBJbnB1dCBNb2RlXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFVzaW5nIEFTQ0lJIElucHV0IE1vZGVcbiogKiBOb3QgSW5kaWNhdGUgd2hlbiBVc2luZyBTaW5nbGUgTW9kZSBJTUVcbiogKiBSaWdodC1jbGljayBJbmRpY2F0b3IgdG8gSGlkZVxuKiAqIFNjcm9sbCBvbiBJbmRpY2F0b3IgdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBJbmRpY2F0b3IgQW5pbWF0aW9uXG4qICogQ3VzdG9taXplIEZvbnRcbiogKiBMZWZ0LWNsaWNrIEluZGljYXRvciB0byBEcmFnIHRvIE1vdmUgSW5kaWNhdG9yIG9yIFN3aXRjaCBJbnB1dCBNb2RlXG4qICogQ2hhbmdlIE9wYWNpdHlcbiogKiBFbmFibGUgSW5kaWNhdG9yIFNob3cgRGVsYXkgYW5kIENvbmZpZ3VyZSBTaG93aW5nIFRpbWVvdXRcbiogKiBFbmFibGUgQXV0by1oaWRlIEluZGljYXRvciBhbmQgQ29uZmlndXJlIEF1dG8taGlkZSBUaW1lb3V0XG4qIFRoZW1lIChTdHlsZXNoZWV0IFByb3ZpZGVkIG9yIEV4dHJhY3RlZCBmcm9tIEdOT01FIFNoZWxsIFRoZW1lcywgUmVmZXIgdG8gSGVscCBJbnN0cnVjdGlvbnMgaW4gRXh0ZW5zaW9uIGZvciBNb3JlKVxuKiBDYW5kaWRhdGUgQm94IEJhY2tncm91bmQgYW5kIGl0cyBEaXNwbGF5aW5nIFN0eWxlXG4qIFRoZW1lIGFuZCBCYWNrZ3JvdW5kIFBpY3R1cmUgRm9sbG93IEdOT01FIE5pZ2h0IExpZ2h0IE1vZGVcblxuVXNlciBHdWlkZTogaHR0cHM6Ly9ob2xsb3dtYW5zYmxvZy53b3JkcHJlc3MuY29tLzIwMjEvMDgvMjEvY3VzdG9taXplLWlidXMtdXNlci1ndWlkZS9cblxuXHU2ZGYxXHU1ZWE2XHU1YjlhXHU1MjM2IElCdXMgXHU3Njg0XHU1OTE2XHU4OWMyXHUzMDAxXHU4ODRjXHU0ZTNhXHUzMDAxXHU3Y2ZiXHU3ZWRmXHU2MjU4XHU3NmQ4XHU0ZWU1XHU1M2NhXHU4ZjkzXHU1MTY1XHU2MzA3XHU3OTNhXG5cblx1NjUyZlx1NjMwMVx1ODFlYVx1NWI5YVx1NGU0OVx1ZmYxYVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTY1YjlcdTU0MTFcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU1MmE4XHU3NTNiXG4qIFx1NTNmM1x1OTUyZVx1NTM1NVx1NTFmYlx1NTAxOVx1OTAwOVx1Njg0Nlx1NGVlNVx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFx1NjIxNlx1NjI1M1x1NWYwMFx1NGVmYlx1NTJhMVx1NjgwZlx1ODNkY1x1NTM1NVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTRlMGFcdTZlZGFcdTUyYThcdTRlZTVcdTUyMDdcdTYzNjJcdTk4NzVcdTk3NjJcdTYyMTZcdTUwMTlcdTkwMDlcdThiY2RcbiogXHU1NmZhXHU1YjlhXHU1MDE5XHU5MDA5XHU2ODQ2XHU0ZjdmXHU1MTc2XHU0ZTBkXHU4ZGRmXHU5NjhmXHU1MTQ5XHU2ODA3XHU0ZWU1XHU1M2NhXHU4YmJlXHU1YjlhXHU1NmZhXHU1YjlhXHU0ZjRkXHU3ZjZlXG4qIFx1NTAxOVx1OTAwOVx1Njg0Nlx1NWI1N1x1NGY1M1xuKiBcdThmOTNcdTUxNjVcdTZhMjFcdTVmMGZcdTY4MzlcdTYzNmVcdTVlOTRcdTc1MjhcdThiYjBcdTVmYzZcdTVlNzZcdTgxZWFcdTUyYThcdTUyMDdcdTYzNjJcbiogXHU2NmY0XHU2NTM5XHU1MDE5XHU5MDA5XHU2ODQ2XHU5MDBmXHU2NjBlXHU1ZWE2XG4qIFx1NTZmYVx1NWI5YVx1OGY5M1x1NTE2NVx1NmNkNVx1NTIxN1x1ODg2OFx1OTg3YVx1NWU4ZlxuKiBcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTUwMTlcdTkwMDlcdTY4NDZcbiogXHU2NjNlXHU3OTNhXHU2MjE2XHU5NjkwXHU4NWNmXHU1MDE5XHU5MDA5XHU2ODQ2XHU4YzAzXHU5ODc1XHU2MzA5XHU5NGFlXG4qIFx1N2NmYlx1N2VkZlx1NGVmYlx1NTJhMVx1NjgwZlx1NjI1OFx1NzZkOFx1NjYzZVx1NzkzYVx1NTQ4Y1x1NGVhNFx1NGU5Mlx1OGJiZVx1N2Y2ZVxuKiAqIFx1NjYzZVx1NzkzYVx1NjIxNlx1OTY5MFx1ODVjZlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1xuKiAqIFx1NzZmNFx1NjNhNVx1NzBiOVx1NTFmYlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1x1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFxuKiAqIFx1NmRmYlx1NTJhMFx1OTg5ZFx1NTkxNlx1ODNkY1x1NTM1NVxuKiBcdThmOTNcdTUxNjVcdTZlOTBcdTYzMDdcdTc5M2FcdTU2NjhcdTUzY2FcdTUxNzZcdTY2M2VcdTc5M2FcdTU0OGNcdTRlYTRcdTRlOTJcdThiYmVcdTdmNmVcbiogKiBcdTU0MmZcdTc1MjhcdTYzMDdcdTc5M2FcdTU2NjhcbiogKiBcdTRlYzVcdTU3MjhcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRlYzVcdTU3MjhcdTgyZjFcdTY1ODdcdThmOTNcdTUxNjVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRmN2ZcdTc1MjhcdTUzNTVcdTZhMjFcdTVmMGZcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTRlMGRcdTYzMDdcdTc5M2FcbiogKiBcdTUzZjNcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTY3NjVcdTVjMDZcdTUxNzZcdTk2OTBcdTg1Y2ZcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTRlMGFcdTZlZGFcdTUyYThcdTY3NjVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTY2M2VcdTc5M2FcdTUyYThcdTc1M2JcbiogKiBcdTgxZWFcdTViOWFcdTRlNDlcdTViNTdcdTRmNTNcbiogKiBcdTVkZTZcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTRlZTVcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTYyMTZcdTgwMDVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTY2ZjRcdTY1MzlcdTkwMGZcdTY2MGVcdTVlYTZcbiogKiBcdTU0MmZcdTc1MjhcdTVlZjZcdTY1ZjZcdTY2M2VcdTc5M2FcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTY2M2VcdTc5M2FcdTY1ZjZcdTVlZjZcbiogKiBcdTU0MmZcdTc1MjhcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTY1ZjZcdTVlZjZcbiogXHU3NmFlXHU4MGE0XHU2ODM3XHU1ZjBmXHU0ZTNiXHU5ODk4XHVmZjA4XHU2M2QwXHU0ZjliXHU3Njg0XHU2MjE2XHU4MDA1XHU0ZWNlR05PTUUgU2hlbGxcdTRlM2JcdTk4OThcdTRlMmRcdTYzZDBcdTUzZDZcdTc2ODRcdTY4MzdcdTVmMGZcdTg4NjhcdWZmMGNcdTUzYzJcdTg5YzFcdTYyNjlcdTVjNTVcdTc2ODRcdTVlMmVcdTUyYTlcdTkwZThcdTUyMDZcdTY3NjVcdTgzYjdcdTUzZDZcdTY2ZjRcdTU5MWFcdTYzMDdcdTViZmNcdWZmMDlcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU4MGNjXHU2NjZmXHU1NmZlXHU3MjQ3XHU1M2NhXHU1MTc2XHU2NjNlXHU3OTNhXHU2ODM3XHU1ZjBmXG4qIFx1NGUzYlx1OTg5OFx1NTQ4Y1x1ODBjY1x1NjY2Zlx1NTZmZVx1NzI0N1x1OGRkZlx1OTY4ZkdOT01FXHU1OTFjXHU3MDZmXG5cblx1NGY3Zlx1NzUyOFx1NjMwN1x1NTM1N1x1ZmYxYWh0dHBzOi8vYmxvZy5jc2RuLm5ldC9xcV8xODU3MjAyMy9hcnRpY2xlL2RldGFpbHMvMTE2MzMxNjAxIiwKICAiZXh0ZW5zaW9uLWlkIjogImN1c3RvbWl6ZS1pYnVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY3VzdG9taXplLWlidXMiLAogICJuYW1lIjogIkN1c3RvbWl6ZSBJQnVzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJob2xsb3dtYW5Ab3BlbnN1c2Uub3JnIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jdXN0b21pemUtaWJ1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29wZW5TVVNFL0N1c3RvbWl6ZS1JQnVzIiwKICAidXVpZCI6ICJjdXN0b21pemUtaWJ1c0Bob2xsb3dtYW4ubWwiLAogICJ2ZXJzaW9uIjogODIKfQ=="}, "41": {"version": "82", "sha256": "1rn0zskj5s7xp11p8sbgybghngqyf5chs469w51vn8n24k4bgdp6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGwgY3VzdG9taXphdGlvbiBvZiBhcHBlYXJhbmNlLCBiZWhhdmlvciwgc3lzdGVtIHRyYXkgYW5kIGlucHV0IHNvdXJjZSBpbmRpY2F0b3IgZm9yIElCdXNcblxuU3VwcG9ydCBDdXN0b21pemF0aW9uIG9mOlxuKiBDYW5kaWRhdGUgQm94IE9yaWVudGF0aW9uXG4qIENhbmRpZGF0ZSBCb3ggQW5pbWF0aW9uXG4qIFJpZ2h0LWNsaWNrIENhbmRpZGF0ZSBCb3ggdG8gU3dpdGNoIHRoZSBJbnB1dCBNb2RlIG9yIE9wZW4gdGhlIFRyYXkgTWVudVxuKiBTY3JvbGwgb24gQ2FuZGlkYXRlIEJveCB0byBTd2l0Y2ggYW1vbmcgUGFnZXMgb3IgQ2FuZGlkYXRlc1xuKiBGaXggQ2FuZGlkYXRlIEJveCB0byBOb3QgRm9sbG93IHRoZSBDYXJldCBhbmQgU2V0IEZpeGVkIFBvc2l0aW9uXG4qIENhbmRpZGF0ZSBCb3ggRm9udFxuKiBJbnB1dCBNb2RlIFJlbWVtYmVyIGFuZCBBdXRvLXN3aXRjaCBieSBBUFBcbiogQ2hhbmdlIENhbmRpZGF0ZSBCb3ggT3BhY2l0eVxuKiBGaXggSU1FIExpc3QgT3JkZXJcbiogRHJhZyBDYW5kaWRhdGUgQm94IHRvIFJlcG9zaXRpb25cbiogU2hvdyBvciBIaWRlIENhbmRpZGF0ZSBCb3ggUGFnZSBCdXR0b25zXG4qIFN5c3RlbSBUcmF5IE1lbnVzIGFuZCBJbnRlcmFjdGlvbiBTZXR0aW5nc1xuKiAqIFNob3cgb3IgSGlkZSBUcmF5IEljb25cbiogKiBEaXJlY3RseSBDbGljayBUcmF5IEljb24gdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBBZGQgQWRkaXRpb25hbCBNZW51XG4qIElucHV0IFNvdXJjZSBJbmRpY2F0b3IgQXBwZWFyYW5jZSBhbmQgSW50ZXJhY3Rpb24gU2V0dGluZ3NcbiogKiBFbmFibGUgSW5kaWNhdG9yXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFN3aXRjaGluZyBJbnB1dCBNb2RlXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFVzaW5nIEFTQ0lJIElucHV0IE1vZGVcbiogKiBOb3QgSW5kaWNhdGUgd2hlbiBVc2luZyBTaW5nbGUgTW9kZSBJTUVcbiogKiBSaWdodC1jbGljayBJbmRpY2F0b3IgdG8gSGlkZVxuKiAqIFNjcm9sbCBvbiBJbmRpY2F0b3IgdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBJbmRpY2F0b3IgQW5pbWF0aW9uXG4qICogQ3VzdG9taXplIEZvbnRcbiogKiBMZWZ0LWNsaWNrIEluZGljYXRvciB0byBEcmFnIHRvIE1vdmUgSW5kaWNhdG9yIG9yIFN3aXRjaCBJbnB1dCBNb2RlXG4qICogQ2hhbmdlIE9wYWNpdHlcbiogKiBFbmFibGUgSW5kaWNhdG9yIFNob3cgRGVsYXkgYW5kIENvbmZpZ3VyZSBTaG93aW5nIFRpbWVvdXRcbiogKiBFbmFibGUgQXV0by1oaWRlIEluZGljYXRvciBhbmQgQ29uZmlndXJlIEF1dG8taGlkZSBUaW1lb3V0XG4qIFRoZW1lIChTdHlsZXNoZWV0IFByb3ZpZGVkIG9yIEV4dHJhY3RlZCBmcm9tIEdOT01FIFNoZWxsIFRoZW1lcywgUmVmZXIgdG8gSGVscCBJbnN0cnVjdGlvbnMgaW4gRXh0ZW5zaW9uIGZvciBNb3JlKVxuKiBDYW5kaWRhdGUgQm94IEJhY2tncm91bmQgYW5kIGl0cyBEaXNwbGF5aW5nIFN0eWxlXG4qIFRoZW1lIGFuZCBCYWNrZ3JvdW5kIFBpY3R1cmUgRm9sbG93IEdOT01FIE5pZ2h0IExpZ2h0IE1vZGVcblxuVXNlciBHdWlkZTogaHR0cHM6Ly9ob2xsb3dtYW5zYmxvZy53b3JkcHJlc3MuY29tLzIwMjEvMDgvMjEvY3VzdG9taXplLWlidXMtdXNlci1ndWlkZS9cblxuXHU2ZGYxXHU1ZWE2XHU1YjlhXHU1MjM2IElCdXMgXHU3Njg0XHU1OTE2XHU4OWMyXHUzMDAxXHU4ODRjXHU0ZTNhXHUzMDAxXHU3Y2ZiXHU3ZWRmXHU2MjU4XHU3NmQ4XHU0ZWU1XHU1M2NhXHU4ZjkzXHU1MTY1XHU2MzA3XHU3OTNhXG5cblx1NjUyZlx1NjMwMVx1ODFlYVx1NWI5YVx1NGU0OVx1ZmYxYVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTY1YjlcdTU0MTFcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU1MmE4XHU3NTNiXG4qIFx1NTNmM1x1OTUyZVx1NTM1NVx1NTFmYlx1NTAxOVx1OTAwOVx1Njg0Nlx1NGVlNVx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFx1NjIxNlx1NjI1M1x1NWYwMFx1NGVmYlx1NTJhMVx1NjgwZlx1ODNkY1x1NTM1NVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTRlMGFcdTZlZGFcdTUyYThcdTRlZTVcdTUyMDdcdTYzNjJcdTk4NzVcdTk3NjJcdTYyMTZcdTUwMTlcdTkwMDlcdThiY2RcbiogXHU1NmZhXHU1YjlhXHU1MDE5XHU5MDA5XHU2ODQ2XHU0ZjdmXHU1MTc2XHU0ZTBkXHU4ZGRmXHU5NjhmXHU1MTQ5XHU2ODA3XHU0ZWU1XHU1M2NhXHU4YmJlXHU1YjlhXHU1NmZhXHU1YjlhXHU0ZjRkXHU3ZjZlXG4qIFx1NTAxOVx1OTAwOVx1Njg0Nlx1NWI1N1x1NGY1M1xuKiBcdThmOTNcdTUxNjVcdTZhMjFcdTVmMGZcdTY4MzlcdTYzNmVcdTVlOTRcdTc1MjhcdThiYjBcdTVmYzZcdTVlNzZcdTgxZWFcdTUyYThcdTUyMDdcdTYzNjJcbiogXHU2NmY0XHU2NTM5XHU1MDE5XHU5MDA5XHU2ODQ2XHU5MDBmXHU2NjBlXHU1ZWE2XG4qIFx1NTZmYVx1NWI5YVx1OGY5M1x1NTE2NVx1NmNkNVx1NTIxN1x1ODg2OFx1OTg3YVx1NWU4ZlxuKiBcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTUwMTlcdTkwMDlcdTY4NDZcbiogXHU2NjNlXHU3OTNhXHU2MjE2XHU5NjkwXHU4NWNmXHU1MDE5XHU5MDA5XHU2ODQ2XHU4YzAzXHU5ODc1XHU2MzA5XHU5NGFlXG4qIFx1N2NmYlx1N2VkZlx1NGVmYlx1NTJhMVx1NjgwZlx1NjI1OFx1NzZkOFx1NjYzZVx1NzkzYVx1NTQ4Y1x1NGVhNFx1NGU5Mlx1OGJiZVx1N2Y2ZVxuKiAqIFx1NjYzZVx1NzkzYVx1NjIxNlx1OTY5MFx1ODVjZlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1xuKiAqIFx1NzZmNFx1NjNhNVx1NzBiOVx1NTFmYlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1x1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFxuKiAqIFx1NmRmYlx1NTJhMFx1OTg5ZFx1NTkxNlx1ODNkY1x1NTM1NVxuKiBcdThmOTNcdTUxNjVcdTZlOTBcdTYzMDdcdTc5M2FcdTU2NjhcdTUzY2FcdTUxNzZcdTY2M2VcdTc5M2FcdTU0OGNcdTRlYTRcdTRlOTJcdThiYmVcdTdmNmVcbiogKiBcdTU0MmZcdTc1MjhcdTYzMDdcdTc5M2FcdTU2NjhcbiogKiBcdTRlYzVcdTU3MjhcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRlYzVcdTU3MjhcdTgyZjFcdTY1ODdcdThmOTNcdTUxNjVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRmN2ZcdTc1MjhcdTUzNTVcdTZhMjFcdTVmMGZcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTRlMGRcdTYzMDdcdTc5M2FcbiogKiBcdTUzZjNcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTY3NjVcdTVjMDZcdTUxNzZcdTk2OTBcdTg1Y2ZcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTRlMGFcdTZlZGFcdTUyYThcdTY3NjVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTY2M2VcdTc5M2FcdTUyYThcdTc1M2JcbiogKiBcdTgxZWFcdTViOWFcdTRlNDlcdTViNTdcdTRmNTNcbiogKiBcdTVkZTZcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTRlZTVcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTYyMTZcdTgwMDVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTY2ZjRcdTY1MzlcdTkwMGZcdTY2MGVcdTVlYTZcbiogKiBcdTU0MmZcdTc1MjhcdTVlZjZcdTY1ZjZcdTY2M2VcdTc5M2FcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTY2M2VcdTc5M2FcdTY1ZjZcdTVlZjZcbiogKiBcdTU0MmZcdTc1MjhcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTY1ZjZcdTVlZjZcbiogXHU3NmFlXHU4MGE0XHU2ODM3XHU1ZjBmXHU0ZTNiXHU5ODk4XHVmZjA4XHU2M2QwXHU0ZjliXHU3Njg0XHU2MjE2XHU4MDA1XHU0ZWNlR05PTUUgU2hlbGxcdTRlM2JcdTk4OThcdTRlMmRcdTYzZDBcdTUzZDZcdTc2ODRcdTY4MzdcdTVmMGZcdTg4NjhcdWZmMGNcdTUzYzJcdTg5YzFcdTYyNjlcdTVjNTVcdTc2ODRcdTVlMmVcdTUyYTlcdTkwZThcdTUyMDZcdTY3NjVcdTgzYjdcdTUzZDZcdTY2ZjRcdTU5MWFcdTYzMDdcdTViZmNcdWZmMDlcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU4MGNjXHU2NjZmXHU1NmZlXHU3MjQ3XHU1M2NhXHU1MTc2XHU2NjNlXHU3OTNhXHU2ODM3XHU1ZjBmXG4qIFx1NGUzYlx1OTg5OFx1NTQ4Y1x1ODBjY1x1NjY2Zlx1NTZmZVx1NzI0N1x1OGRkZlx1OTY4ZkdOT01FXHU1OTFjXHU3MDZmXG5cblx1NGY3Zlx1NzUyOFx1NjMwN1x1NTM1N1x1ZmYxYWh0dHBzOi8vYmxvZy5jc2RuLm5ldC9xcV8xODU3MjAyMy9hcnRpY2xlL2RldGFpbHMvMTE2MzMxNjAxIiwKICAiZXh0ZW5zaW9uLWlkIjogImN1c3RvbWl6ZS1pYnVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY3VzdG9taXplLWlidXMiLAogICJuYW1lIjogIkN1c3RvbWl6ZSBJQnVzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJob2xsb3dtYW5Ab3BlbnN1c2Uub3JnIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jdXN0b21pemUtaWJ1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29wZW5TVVNFL0N1c3RvbWl6ZS1JQnVzIiwKICAidXVpZCI6ICJjdXN0b21pemUtaWJ1c0Bob2xsb3dtYW4ubWwiLAogICJ2ZXJzaW9uIjogODIKfQ=="}}}
+, {"uuid": "customize-ibus@hollowman.ml", "name": "Customize IBus", "pname": "customize-ibus", "description": "Full customization of appearance, behavior, system tray and input source indicator for IBus\n\nSupport Customization of:\n* Candidate Box Orientation\n* Candidate Box Animation\n* Right-click Candidate Box to Switch the Input Mode or Open the Tray Menu\n* Scroll on Candidate Box to Switch among Pages or Candidates\n* Fix Candidate Box to Not Follow the Caret and Set Fixed Position\n* Candidate Box Font\n* Input Mode Remember and Auto-switch by APP\n* Change Candidate Box Opacity\n* Fix IME List Order\n* Drag Candidate Box to Reposition\n* Show or Hide Candidate Box Page Buttons\n* System Tray Menus and Interaction Settings\n* * Show or Hide Tray Icon\n* * Directly Click Tray Icon to Switch Input Mode\n* * Add Additional Menu\n* Input Source Indicator Appearance and Interaction Settings\n* * Enable Indicator\n* * Only Indicate when Switching Input Mode\n* * Only Indicate when Using ASCII Input Mode\n* * Not Indicate when Using Single Mode IME\n* * Right-click Indicator to Hide\n* * Scroll on Indicator to Switch Input Mode\n* * Indicator Animation\n* * Customize Font\n* * Left-click Indicator to Drag to Move Indicator or Switch Input Mode\n* * Change Opacity\n* * Enable Indicator Show Delay and Configure Showing Timeout\n* * Enable Auto-hide Indicator and Configure Auto-hide Timeout\n* Theme (Stylesheet Provided or Extracted from GNOME Shell Themes, Refer to Help Instructions in Extension for More)\n* Candidate Box Background and its Displaying Style\n* Theme and Background Picture Follow GNOME Night Light Mode\n\nUser Guide: https://hollowmansblog.wordpress.com/2021/08/21/customize-ibus-user-guide/\n\n深度定制 IBus 的外观、行为、系统托盘以及输入指示\n\n支持自定义:\n* 候选框方向\n* 候选框动画\n* 右键单击候选框以切换输入源或打开任务栏菜单\n* 候选框上滚动以切换页面或候选词\n* 固定候选框使其不跟随光标以及设定固定位置\n* 候选框字体\n* 输入模式根据应用记忆并自动切换\n* 更改候选框透明度\n* 固定输入法列表顺序\n* 拖拽移动候选框\n* 显示或隐藏候选框调页按钮\n* 系统任务栏托盘显示和交互设置\n* * 显示或隐藏托盘图标\n* * 直接点击托盘图标切换输入源\n* * 添加额外菜单\n* 输入源指示器及其显示和交互设置\n* * 启用指示器\n* * 仅在切换输入法时指示\n* * 仅在英文输入时指示\n* * 使用单模式输入法时不指示\n* * 右击指示器来将其隐藏\n* * 指示器上滚动来切换输入源\n* * 指示器显示动画\n* * 自定义字体\n* * 左击指示器以拖拽移动或者切换输入源\n* * 更改透明度\n* * 启用延时显示以及配置显示时延\n* * 启用自动隐藏以及配置自动隐藏时延\n* 皮肤样式主题(提供的或者从GNOME Shell主题中提取的样式表,参见扩展的帮助部分来获取更多指导)\n* 候选框背景图片及其显示样式\n* 主题和背景图片跟随GNOME夜灯\n\n使用指南:https://blog.csdn.net/qq_18572023/article/details/116331601", "link": "https://extensions.gnome.org/extension/4112/customize-ibus/", "shell_version_map": {"38": {"version": "82", "sha256": "1rn0zskj5s7xp11p8sbgybghngqyf5chs469w51vn8n24k4bgdp6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGwgY3VzdG9taXphdGlvbiBvZiBhcHBlYXJhbmNlLCBiZWhhdmlvciwgc3lzdGVtIHRyYXkgYW5kIGlucHV0IHNvdXJjZSBpbmRpY2F0b3IgZm9yIElCdXNcblxuU3VwcG9ydCBDdXN0b21pemF0aW9uIG9mOlxuKiBDYW5kaWRhdGUgQm94IE9yaWVudGF0aW9uXG4qIENhbmRpZGF0ZSBCb3ggQW5pbWF0aW9uXG4qIFJpZ2h0LWNsaWNrIENhbmRpZGF0ZSBCb3ggdG8gU3dpdGNoIHRoZSBJbnB1dCBNb2RlIG9yIE9wZW4gdGhlIFRyYXkgTWVudVxuKiBTY3JvbGwgb24gQ2FuZGlkYXRlIEJveCB0byBTd2l0Y2ggYW1vbmcgUGFnZXMgb3IgQ2FuZGlkYXRlc1xuKiBGaXggQ2FuZGlkYXRlIEJveCB0byBOb3QgRm9sbG93IHRoZSBDYXJldCBhbmQgU2V0IEZpeGVkIFBvc2l0aW9uXG4qIENhbmRpZGF0ZSBCb3ggRm9udFxuKiBJbnB1dCBNb2RlIFJlbWVtYmVyIGFuZCBBdXRvLXN3aXRjaCBieSBBUFBcbiogQ2hhbmdlIENhbmRpZGF0ZSBCb3ggT3BhY2l0eVxuKiBGaXggSU1FIExpc3QgT3JkZXJcbiogRHJhZyBDYW5kaWRhdGUgQm94IHRvIFJlcG9zaXRpb25cbiogU2hvdyBvciBIaWRlIENhbmRpZGF0ZSBCb3ggUGFnZSBCdXR0b25zXG4qIFN5c3RlbSBUcmF5IE1lbnVzIGFuZCBJbnRlcmFjdGlvbiBTZXR0aW5nc1xuKiAqIFNob3cgb3IgSGlkZSBUcmF5IEljb25cbiogKiBEaXJlY3RseSBDbGljayBUcmF5IEljb24gdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBBZGQgQWRkaXRpb25hbCBNZW51XG4qIElucHV0IFNvdXJjZSBJbmRpY2F0b3IgQXBwZWFyYW5jZSBhbmQgSW50ZXJhY3Rpb24gU2V0dGluZ3NcbiogKiBFbmFibGUgSW5kaWNhdG9yXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFN3aXRjaGluZyBJbnB1dCBNb2RlXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFVzaW5nIEFTQ0lJIElucHV0IE1vZGVcbiogKiBOb3QgSW5kaWNhdGUgd2hlbiBVc2luZyBTaW5nbGUgTW9kZSBJTUVcbiogKiBSaWdodC1jbGljayBJbmRpY2F0b3IgdG8gSGlkZVxuKiAqIFNjcm9sbCBvbiBJbmRpY2F0b3IgdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBJbmRpY2F0b3IgQW5pbWF0aW9uXG4qICogQ3VzdG9taXplIEZvbnRcbiogKiBMZWZ0LWNsaWNrIEluZGljYXRvciB0byBEcmFnIHRvIE1vdmUgSW5kaWNhdG9yIG9yIFN3aXRjaCBJbnB1dCBNb2RlXG4qICogQ2hhbmdlIE9wYWNpdHlcbiogKiBFbmFibGUgSW5kaWNhdG9yIFNob3cgRGVsYXkgYW5kIENvbmZpZ3VyZSBTaG93aW5nIFRpbWVvdXRcbiogKiBFbmFibGUgQXV0by1oaWRlIEluZGljYXRvciBhbmQgQ29uZmlndXJlIEF1dG8taGlkZSBUaW1lb3V0XG4qIFRoZW1lIChTdHlsZXNoZWV0IFByb3ZpZGVkIG9yIEV4dHJhY3RlZCBmcm9tIEdOT01FIFNoZWxsIFRoZW1lcywgUmVmZXIgdG8gSGVscCBJbnN0cnVjdGlvbnMgaW4gRXh0ZW5zaW9uIGZvciBNb3JlKVxuKiBDYW5kaWRhdGUgQm94IEJhY2tncm91bmQgYW5kIGl0cyBEaXNwbGF5aW5nIFN0eWxlXG4qIFRoZW1lIGFuZCBCYWNrZ3JvdW5kIFBpY3R1cmUgRm9sbG93IEdOT01FIE5pZ2h0IExpZ2h0IE1vZGVcblxuVXNlciBHdWlkZTogaHR0cHM6Ly9ob2xsb3dtYW5zYmxvZy53b3JkcHJlc3MuY29tLzIwMjEvMDgvMjEvY3VzdG9taXplLWlidXMtdXNlci1ndWlkZS9cblxuXHU2ZGYxXHU1ZWE2XHU1YjlhXHU1MjM2IElCdXMgXHU3Njg0XHU1OTE2XHU4OWMyXHUzMDAxXHU4ODRjXHU0ZTNhXHUzMDAxXHU3Y2ZiXHU3ZWRmXHU2MjU4XHU3NmQ4XHU0ZWU1XHU1M2NhXHU4ZjkzXHU1MTY1XHU2MzA3XHU3OTNhXG5cblx1NjUyZlx1NjMwMVx1ODFlYVx1NWI5YVx1NGU0OVx1ZmYxYVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTY1YjlcdTU0MTFcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU1MmE4XHU3NTNiXG4qIFx1NTNmM1x1OTUyZVx1NTM1NVx1NTFmYlx1NTAxOVx1OTAwOVx1Njg0Nlx1NGVlNVx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFx1NjIxNlx1NjI1M1x1NWYwMFx1NGVmYlx1NTJhMVx1NjgwZlx1ODNkY1x1NTM1NVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTRlMGFcdTZlZGFcdTUyYThcdTRlZTVcdTUyMDdcdTYzNjJcdTk4NzVcdTk3NjJcdTYyMTZcdTUwMTlcdTkwMDlcdThiY2RcbiogXHU1NmZhXHU1YjlhXHU1MDE5XHU5MDA5XHU2ODQ2XHU0ZjdmXHU1MTc2XHU0ZTBkXHU4ZGRmXHU5NjhmXHU1MTQ5XHU2ODA3XHU0ZWU1XHU1M2NhXHU4YmJlXHU1YjlhXHU1NmZhXHU1YjlhXHU0ZjRkXHU3ZjZlXG4qIFx1NTAxOVx1OTAwOVx1Njg0Nlx1NWI1N1x1NGY1M1xuKiBcdThmOTNcdTUxNjVcdTZhMjFcdTVmMGZcdTY4MzlcdTYzNmVcdTVlOTRcdTc1MjhcdThiYjBcdTVmYzZcdTVlNzZcdTgxZWFcdTUyYThcdTUyMDdcdTYzNjJcbiogXHU2NmY0XHU2NTM5XHU1MDE5XHU5MDA5XHU2ODQ2XHU5MDBmXHU2NjBlXHU1ZWE2XG4qIFx1NTZmYVx1NWI5YVx1OGY5M1x1NTE2NVx1NmNkNVx1NTIxN1x1ODg2OFx1OTg3YVx1NWU4ZlxuKiBcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTUwMTlcdTkwMDlcdTY4NDZcbiogXHU2NjNlXHU3OTNhXHU2MjE2XHU5NjkwXHU4NWNmXHU1MDE5XHU5MDA5XHU2ODQ2XHU4YzAzXHU5ODc1XHU2MzA5XHU5NGFlXG4qIFx1N2NmYlx1N2VkZlx1NGVmYlx1NTJhMVx1NjgwZlx1NjI1OFx1NzZkOFx1NjYzZVx1NzkzYVx1NTQ4Y1x1NGVhNFx1NGU5Mlx1OGJiZVx1N2Y2ZVxuKiAqIFx1NjYzZVx1NzkzYVx1NjIxNlx1OTY5MFx1ODVjZlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1xuKiAqIFx1NzZmNFx1NjNhNVx1NzBiOVx1NTFmYlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1x1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFxuKiAqIFx1NmRmYlx1NTJhMFx1OTg5ZFx1NTkxNlx1ODNkY1x1NTM1NVxuKiBcdThmOTNcdTUxNjVcdTZlOTBcdTYzMDdcdTc5M2FcdTU2NjhcdTUzY2FcdTUxNzZcdTY2M2VcdTc5M2FcdTU0OGNcdTRlYTRcdTRlOTJcdThiYmVcdTdmNmVcbiogKiBcdTU0MmZcdTc1MjhcdTYzMDdcdTc5M2FcdTU2NjhcbiogKiBcdTRlYzVcdTU3MjhcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRlYzVcdTU3MjhcdTgyZjFcdTY1ODdcdThmOTNcdTUxNjVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRmN2ZcdTc1MjhcdTUzNTVcdTZhMjFcdTVmMGZcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTRlMGRcdTYzMDdcdTc5M2FcbiogKiBcdTUzZjNcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTY3NjVcdTVjMDZcdTUxNzZcdTk2OTBcdTg1Y2ZcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTRlMGFcdTZlZGFcdTUyYThcdTY3NjVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTY2M2VcdTc5M2FcdTUyYThcdTc1M2JcbiogKiBcdTgxZWFcdTViOWFcdTRlNDlcdTViNTdcdTRmNTNcbiogKiBcdTVkZTZcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTRlZTVcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTYyMTZcdTgwMDVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTY2ZjRcdTY1MzlcdTkwMGZcdTY2MGVcdTVlYTZcbiogKiBcdTU0MmZcdTc1MjhcdTVlZjZcdTY1ZjZcdTY2M2VcdTc5M2FcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTY2M2VcdTc5M2FcdTY1ZjZcdTVlZjZcbiogKiBcdTU0MmZcdTc1MjhcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTY1ZjZcdTVlZjZcbiogXHU3NmFlXHU4MGE0XHU2ODM3XHU1ZjBmXHU0ZTNiXHU5ODk4XHVmZjA4XHU2M2QwXHU0ZjliXHU3Njg0XHU2MjE2XHU4MDA1XHU0ZWNlR05PTUUgU2hlbGxcdTRlM2JcdTk4OThcdTRlMmRcdTYzZDBcdTUzZDZcdTc2ODRcdTY4MzdcdTVmMGZcdTg4NjhcdWZmMGNcdTUzYzJcdTg5YzFcdTYyNjlcdTVjNTVcdTc2ODRcdTVlMmVcdTUyYTlcdTkwZThcdTUyMDZcdTY3NjVcdTgzYjdcdTUzZDZcdTY2ZjRcdTU5MWFcdTYzMDdcdTViZmNcdWZmMDlcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU4MGNjXHU2NjZmXHU1NmZlXHU3MjQ3XHU1M2NhXHU1MTc2XHU2NjNlXHU3OTNhXHU2ODM3XHU1ZjBmXG4qIFx1NGUzYlx1OTg5OFx1NTQ4Y1x1ODBjY1x1NjY2Zlx1NTZmZVx1NzI0N1x1OGRkZlx1OTY4ZkdOT01FXHU1OTFjXHU3MDZmXG5cblx1NGY3Zlx1NzUyOFx1NjMwN1x1NTM1N1x1ZmYxYWh0dHBzOi8vYmxvZy5jc2RuLm5ldC9xcV8xODU3MjAyMy9hcnRpY2xlL2RldGFpbHMvMTE2MzMxNjAxIiwKICAiZXh0ZW5zaW9uLWlkIjogImN1c3RvbWl6ZS1pYnVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY3VzdG9taXplLWlidXMiLAogICJuYW1lIjogIkN1c3RvbWl6ZSBJQnVzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJob2xsb3dtYW5Ab3BlbnN1c2Uub3JnIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jdXN0b21pemUtaWJ1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29wZW5TVVNFL0N1c3RvbWl6ZS1JQnVzIiwKICAidXVpZCI6ICJjdXN0b21pemUtaWJ1c0Bob2xsb3dtYW4ubWwiLAogICJ2ZXJzaW9uIjogODIKfQ=="}, "40": {"version": "82", "sha256": "1rn0zskj5s7xp11p8sbgybghngqyf5chs469w51vn8n24k4bgdp6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGwgY3VzdG9taXphdGlvbiBvZiBhcHBlYXJhbmNlLCBiZWhhdmlvciwgc3lzdGVtIHRyYXkgYW5kIGlucHV0IHNvdXJjZSBpbmRpY2F0b3IgZm9yIElCdXNcblxuU3VwcG9ydCBDdXN0b21pemF0aW9uIG9mOlxuKiBDYW5kaWRhdGUgQm94IE9yaWVudGF0aW9uXG4qIENhbmRpZGF0ZSBCb3ggQW5pbWF0aW9uXG4qIFJpZ2h0LWNsaWNrIENhbmRpZGF0ZSBCb3ggdG8gU3dpdGNoIHRoZSBJbnB1dCBNb2RlIG9yIE9wZW4gdGhlIFRyYXkgTWVudVxuKiBTY3JvbGwgb24gQ2FuZGlkYXRlIEJveCB0byBTd2l0Y2ggYW1vbmcgUGFnZXMgb3IgQ2FuZGlkYXRlc1xuKiBGaXggQ2FuZGlkYXRlIEJveCB0byBOb3QgRm9sbG93IHRoZSBDYXJldCBhbmQgU2V0IEZpeGVkIFBvc2l0aW9uXG4qIENhbmRpZGF0ZSBCb3ggRm9udFxuKiBJbnB1dCBNb2RlIFJlbWVtYmVyIGFuZCBBdXRvLXN3aXRjaCBieSBBUFBcbiogQ2hhbmdlIENhbmRpZGF0ZSBCb3ggT3BhY2l0eVxuKiBGaXggSU1FIExpc3QgT3JkZXJcbiogRHJhZyBDYW5kaWRhdGUgQm94IHRvIFJlcG9zaXRpb25cbiogU2hvdyBvciBIaWRlIENhbmRpZGF0ZSBCb3ggUGFnZSBCdXR0b25zXG4qIFN5c3RlbSBUcmF5IE1lbnVzIGFuZCBJbnRlcmFjdGlvbiBTZXR0aW5nc1xuKiAqIFNob3cgb3IgSGlkZSBUcmF5IEljb25cbiogKiBEaXJlY3RseSBDbGljayBUcmF5IEljb24gdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBBZGQgQWRkaXRpb25hbCBNZW51XG4qIElucHV0IFNvdXJjZSBJbmRpY2F0b3IgQXBwZWFyYW5jZSBhbmQgSW50ZXJhY3Rpb24gU2V0dGluZ3NcbiogKiBFbmFibGUgSW5kaWNhdG9yXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFN3aXRjaGluZyBJbnB1dCBNb2RlXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFVzaW5nIEFTQ0lJIElucHV0IE1vZGVcbiogKiBOb3QgSW5kaWNhdGUgd2hlbiBVc2luZyBTaW5nbGUgTW9kZSBJTUVcbiogKiBSaWdodC1jbGljayBJbmRpY2F0b3IgdG8gSGlkZVxuKiAqIFNjcm9sbCBvbiBJbmRpY2F0b3IgdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBJbmRpY2F0b3IgQW5pbWF0aW9uXG4qICogQ3VzdG9taXplIEZvbnRcbiogKiBMZWZ0LWNsaWNrIEluZGljYXRvciB0byBEcmFnIHRvIE1vdmUgSW5kaWNhdG9yIG9yIFN3aXRjaCBJbnB1dCBNb2RlXG4qICogQ2hhbmdlIE9wYWNpdHlcbiogKiBFbmFibGUgSW5kaWNhdG9yIFNob3cgRGVsYXkgYW5kIENvbmZpZ3VyZSBTaG93aW5nIFRpbWVvdXRcbiogKiBFbmFibGUgQXV0by1oaWRlIEluZGljYXRvciBhbmQgQ29uZmlndXJlIEF1dG8taGlkZSBUaW1lb3V0XG4qIFRoZW1lIChTdHlsZXNoZWV0IFByb3ZpZGVkIG9yIEV4dHJhY3RlZCBmcm9tIEdOT01FIFNoZWxsIFRoZW1lcywgUmVmZXIgdG8gSGVscCBJbnN0cnVjdGlvbnMgaW4gRXh0ZW5zaW9uIGZvciBNb3JlKVxuKiBDYW5kaWRhdGUgQm94IEJhY2tncm91bmQgYW5kIGl0cyBEaXNwbGF5aW5nIFN0eWxlXG4qIFRoZW1lIGFuZCBCYWNrZ3JvdW5kIFBpY3R1cmUgRm9sbG93IEdOT01FIE5pZ2h0IExpZ2h0IE1vZGVcblxuVXNlciBHdWlkZTogaHR0cHM6Ly9ob2xsb3dtYW5zYmxvZy53b3JkcHJlc3MuY29tLzIwMjEvMDgvMjEvY3VzdG9taXplLWlidXMtdXNlci1ndWlkZS9cblxuXHU2ZGYxXHU1ZWE2XHU1YjlhXHU1MjM2IElCdXMgXHU3Njg0XHU1OTE2XHU4OWMyXHUzMDAxXHU4ODRjXHU0ZTNhXHUzMDAxXHU3Y2ZiXHU3ZWRmXHU2MjU4XHU3NmQ4XHU0ZWU1XHU1M2NhXHU4ZjkzXHU1MTY1XHU2MzA3XHU3OTNhXG5cblx1NjUyZlx1NjMwMVx1ODFlYVx1NWI5YVx1NGU0OVx1ZmYxYVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTY1YjlcdTU0MTFcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU1MmE4XHU3NTNiXG4qIFx1NTNmM1x1OTUyZVx1NTM1NVx1NTFmYlx1NTAxOVx1OTAwOVx1Njg0Nlx1NGVlNVx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFx1NjIxNlx1NjI1M1x1NWYwMFx1NGVmYlx1NTJhMVx1NjgwZlx1ODNkY1x1NTM1NVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTRlMGFcdTZlZGFcdTUyYThcdTRlZTVcdTUyMDdcdTYzNjJcdTk4NzVcdTk3NjJcdTYyMTZcdTUwMTlcdTkwMDlcdThiY2RcbiogXHU1NmZhXHU1YjlhXHU1MDE5XHU5MDA5XHU2ODQ2XHU0ZjdmXHU1MTc2XHU0ZTBkXHU4ZGRmXHU5NjhmXHU1MTQ5XHU2ODA3XHU0ZWU1XHU1M2NhXHU4YmJlXHU1YjlhXHU1NmZhXHU1YjlhXHU0ZjRkXHU3ZjZlXG4qIFx1NTAxOVx1OTAwOVx1Njg0Nlx1NWI1N1x1NGY1M1xuKiBcdThmOTNcdTUxNjVcdTZhMjFcdTVmMGZcdTY4MzlcdTYzNmVcdTVlOTRcdTc1MjhcdThiYjBcdTVmYzZcdTVlNzZcdTgxZWFcdTUyYThcdTUyMDdcdTYzNjJcbiogXHU2NmY0XHU2NTM5XHU1MDE5XHU5MDA5XHU2ODQ2XHU5MDBmXHU2NjBlXHU1ZWE2XG4qIFx1NTZmYVx1NWI5YVx1OGY5M1x1NTE2NVx1NmNkNVx1NTIxN1x1ODg2OFx1OTg3YVx1NWU4ZlxuKiBcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTUwMTlcdTkwMDlcdTY4NDZcbiogXHU2NjNlXHU3OTNhXHU2MjE2XHU5NjkwXHU4NWNmXHU1MDE5XHU5MDA5XHU2ODQ2XHU4YzAzXHU5ODc1XHU2MzA5XHU5NGFlXG4qIFx1N2NmYlx1N2VkZlx1NGVmYlx1NTJhMVx1NjgwZlx1NjI1OFx1NzZkOFx1NjYzZVx1NzkzYVx1NTQ4Y1x1NGVhNFx1NGU5Mlx1OGJiZVx1N2Y2ZVxuKiAqIFx1NjYzZVx1NzkzYVx1NjIxNlx1OTY5MFx1ODVjZlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1xuKiAqIFx1NzZmNFx1NjNhNVx1NzBiOVx1NTFmYlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1x1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFxuKiAqIFx1NmRmYlx1NTJhMFx1OTg5ZFx1NTkxNlx1ODNkY1x1NTM1NVxuKiBcdThmOTNcdTUxNjVcdTZlOTBcdTYzMDdcdTc5M2FcdTU2NjhcdTUzY2FcdTUxNzZcdTY2M2VcdTc5M2FcdTU0OGNcdTRlYTRcdTRlOTJcdThiYmVcdTdmNmVcbiogKiBcdTU0MmZcdTc1MjhcdTYzMDdcdTc5M2FcdTU2NjhcbiogKiBcdTRlYzVcdTU3MjhcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRlYzVcdTU3MjhcdTgyZjFcdTY1ODdcdThmOTNcdTUxNjVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRmN2ZcdTc1MjhcdTUzNTVcdTZhMjFcdTVmMGZcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTRlMGRcdTYzMDdcdTc5M2FcbiogKiBcdTUzZjNcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTY3NjVcdTVjMDZcdTUxNzZcdTk2OTBcdTg1Y2ZcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTRlMGFcdTZlZGFcdTUyYThcdTY3NjVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTY2M2VcdTc5M2FcdTUyYThcdTc1M2JcbiogKiBcdTgxZWFcdTViOWFcdTRlNDlcdTViNTdcdTRmNTNcbiogKiBcdTVkZTZcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTRlZTVcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTYyMTZcdTgwMDVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTY2ZjRcdTY1MzlcdTkwMGZcdTY2MGVcdTVlYTZcbiogKiBcdTU0MmZcdTc1MjhcdTVlZjZcdTY1ZjZcdTY2M2VcdTc5M2FcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTY2M2VcdTc5M2FcdTY1ZjZcdTVlZjZcbiogKiBcdTU0MmZcdTc1MjhcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTY1ZjZcdTVlZjZcbiogXHU3NmFlXHU4MGE0XHU2ODM3XHU1ZjBmXHU0ZTNiXHU5ODk4XHVmZjA4XHU2M2QwXHU0ZjliXHU3Njg0XHU2MjE2XHU4MDA1XHU0ZWNlR05PTUUgU2hlbGxcdTRlM2JcdTk4OThcdTRlMmRcdTYzZDBcdTUzZDZcdTc2ODRcdTY4MzdcdTVmMGZcdTg4NjhcdWZmMGNcdTUzYzJcdTg5YzFcdTYyNjlcdTVjNTVcdTc2ODRcdTVlMmVcdTUyYTlcdTkwZThcdTUyMDZcdTY3NjVcdTgzYjdcdTUzZDZcdTY2ZjRcdTU5MWFcdTYzMDdcdTViZmNcdWZmMDlcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU4MGNjXHU2NjZmXHU1NmZlXHU3MjQ3XHU1M2NhXHU1MTc2XHU2NjNlXHU3OTNhXHU2ODM3XHU1ZjBmXG4qIFx1NGUzYlx1OTg5OFx1NTQ4Y1x1ODBjY1x1NjY2Zlx1NTZmZVx1NzI0N1x1OGRkZlx1OTY4ZkdOT01FXHU1OTFjXHU3MDZmXG5cblx1NGY3Zlx1NzUyOFx1NjMwN1x1NTM1N1x1ZmYxYWh0dHBzOi8vYmxvZy5jc2RuLm5ldC9xcV8xODU3MjAyMy9hcnRpY2xlL2RldGFpbHMvMTE2MzMxNjAxIiwKICAiZXh0ZW5zaW9uLWlkIjogImN1c3RvbWl6ZS1pYnVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY3VzdG9taXplLWlidXMiLAogICJuYW1lIjogIkN1c3RvbWl6ZSBJQnVzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJob2xsb3dtYW5Ab3BlbnN1c2Uub3JnIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jdXN0b21pemUtaWJ1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29wZW5TVVNFL0N1c3RvbWl6ZS1JQnVzIiwKICAidXVpZCI6ICJjdXN0b21pemUtaWJ1c0Bob2xsb3dtYW4ubWwiLAogICJ2ZXJzaW9uIjogODIKfQ=="}, "41": {"version": "82", "sha256": "1rn0zskj5s7xp11p8sbgybghngqyf5chs469w51vn8n24k4bgdp6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGwgY3VzdG9taXphdGlvbiBvZiBhcHBlYXJhbmNlLCBiZWhhdmlvciwgc3lzdGVtIHRyYXkgYW5kIGlucHV0IHNvdXJjZSBpbmRpY2F0b3IgZm9yIElCdXNcblxuU3VwcG9ydCBDdXN0b21pemF0aW9uIG9mOlxuKiBDYW5kaWRhdGUgQm94IE9yaWVudGF0aW9uXG4qIENhbmRpZGF0ZSBCb3ggQW5pbWF0aW9uXG4qIFJpZ2h0LWNsaWNrIENhbmRpZGF0ZSBCb3ggdG8gU3dpdGNoIHRoZSBJbnB1dCBNb2RlIG9yIE9wZW4gdGhlIFRyYXkgTWVudVxuKiBTY3JvbGwgb24gQ2FuZGlkYXRlIEJveCB0byBTd2l0Y2ggYW1vbmcgUGFnZXMgb3IgQ2FuZGlkYXRlc1xuKiBGaXggQ2FuZGlkYXRlIEJveCB0byBOb3QgRm9sbG93IHRoZSBDYXJldCBhbmQgU2V0IEZpeGVkIFBvc2l0aW9uXG4qIENhbmRpZGF0ZSBCb3ggRm9udFxuKiBJbnB1dCBNb2RlIFJlbWVtYmVyIGFuZCBBdXRvLXN3aXRjaCBieSBBUFBcbiogQ2hhbmdlIENhbmRpZGF0ZSBCb3ggT3BhY2l0eVxuKiBGaXggSU1FIExpc3QgT3JkZXJcbiogRHJhZyBDYW5kaWRhdGUgQm94IHRvIFJlcG9zaXRpb25cbiogU2hvdyBvciBIaWRlIENhbmRpZGF0ZSBCb3ggUGFnZSBCdXR0b25zXG4qIFN5c3RlbSBUcmF5IE1lbnVzIGFuZCBJbnRlcmFjdGlvbiBTZXR0aW5nc1xuKiAqIFNob3cgb3IgSGlkZSBUcmF5IEljb25cbiogKiBEaXJlY3RseSBDbGljayBUcmF5IEljb24gdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBBZGQgQWRkaXRpb25hbCBNZW51XG4qIElucHV0IFNvdXJjZSBJbmRpY2F0b3IgQXBwZWFyYW5jZSBhbmQgSW50ZXJhY3Rpb24gU2V0dGluZ3NcbiogKiBFbmFibGUgSW5kaWNhdG9yXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFN3aXRjaGluZyBJbnB1dCBNb2RlXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFVzaW5nIEFTQ0lJIElucHV0IE1vZGVcbiogKiBOb3QgSW5kaWNhdGUgd2hlbiBVc2luZyBTaW5nbGUgTW9kZSBJTUVcbiogKiBSaWdodC1jbGljayBJbmRpY2F0b3IgdG8gSGlkZVxuKiAqIFNjcm9sbCBvbiBJbmRpY2F0b3IgdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBJbmRpY2F0b3IgQW5pbWF0aW9uXG4qICogQ3VzdG9taXplIEZvbnRcbiogKiBMZWZ0LWNsaWNrIEluZGljYXRvciB0byBEcmFnIHRvIE1vdmUgSW5kaWNhdG9yIG9yIFN3aXRjaCBJbnB1dCBNb2RlXG4qICogQ2hhbmdlIE9wYWNpdHlcbiogKiBFbmFibGUgSW5kaWNhdG9yIFNob3cgRGVsYXkgYW5kIENvbmZpZ3VyZSBTaG93aW5nIFRpbWVvdXRcbiogKiBFbmFibGUgQXV0by1oaWRlIEluZGljYXRvciBhbmQgQ29uZmlndXJlIEF1dG8taGlkZSBUaW1lb3V0XG4qIFRoZW1lIChTdHlsZXNoZWV0IFByb3ZpZGVkIG9yIEV4dHJhY3RlZCBmcm9tIEdOT01FIFNoZWxsIFRoZW1lcywgUmVmZXIgdG8gSGVscCBJbnN0cnVjdGlvbnMgaW4gRXh0ZW5zaW9uIGZvciBNb3JlKVxuKiBDYW5kaWRhdGUgQm94IEJhY2tncm91bmQgYW5kIGl0cyBEaXNwbGF5aW5nIFN0eWxlXG4qIFRoZW1lIGFuZCBCYWNrZ3JvdW5kIFBpY3R1cmUgRm9sbG93IEdOT01FIE5pZ2h0IExpZ2h0IE1vZGVcblxuVXNlciBHdWlkZTogaHR0cHM6Ly9ob2xsb3dtYW5zYmxvZy53b3JkcHJlc3MuY29tLzIwMjEvMDgvMjEvY3VzdG9taXplLWlidXMtdXNlci1ndWlkZS9cblxuXHU2ZGYxXHU1ZWE2XHU1YjlhXHU1MjM2IElCdXMgXHU3Njg0XHU1OTE2XHU4OWMyXHUzMDAxXHU4ODRjXHU0ZTNhXHUzMDAxXHU3Y2ZiXHU3ZWRmXHU2MjU4XHU3NmQ4XHU0ZWU1XHU1M2NhXHU4ZjkzXHU1MTY1XHU2MzA3XHU3OTNhXG5cblx1NjUyZlx1NjMwMVx1ODFlYVx1NWI5YVx1NGU0OVx1ZmYxYVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTY1YjlcdTU0MTFcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU1MmE4XHU3NTNiXG4qIFx1NTNmM1x1OTUyZVx1NTM1NVx1NTFmYlx1NTAxOVx1OTAwOVx1Njg0Nlx1NGVlNVx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFx1NjIxNlx1NjI1M1x1NWYwMFx1NGVmYlx1NTJhMVx1NjgwZlx1ODNkY1x1NTM1NVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTRlMGFcdTZlZGFcdTUyYThcdTRlZTVcdTUyMDdcdTYzNjJcdTk4NzVcdTk3NjJcdTYyMTZcdTUwMTlcdTkwMDlcdThiY2RcbiogXHU1NmZhXHU1YjlhXHU1MDE5XHU5MDA5XHU2ODQ2XHU0ZjdmXHU1MTc2XHU0ZTBkXHU4ZGRmXHU5NjhmXHU1MTQ5XHU2ODA3XHU0ZWU1XHU1M2NhXHU4YmJlXHU1YjlhXHU1NmZhXHU1YjlhXHU0ZjRkXHU3ZjZlXG4qIFx1NTAxOVx1OTAwOVx1Njg0Nlx1NWI1N1x1NGY1M1xuKiBcdThmOTNcdTUxNjVcdTZhMjFcdTVmMGZcdTY4MzlcdTYzNmVcdTVlOTRcdTc1MjhcdThiYjBcdTVmYzZcdTVlNzZcdTgxZWFcdTUyYThcdTUyMDdcdTYzNjJcbiogXHU2NmY0XHU2NTM5XHU1MDE5XHU5MDA5XHU2ODQ2XHU5MDBmXHU2NjBlXHU1ZWE2XG4qIFx1NTZmYVx1NWI5YVx1OGY5M1x1NTE2NVx1NmNkNVx1NTIxN1x1ODg2OFx1OTg3YVx1NWU4ZlxuKiBcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTUwMTlcdTkwMDlcdTY4NDZcbiogXHU2NjNlXHU3OTNhXHU2MjE2XHU5NjkwXHU4NWNmXHU1MDE5XHU5MDA5XHU2ODQ2XHU4YzAzXHU5ODc1XHU2MzA5XHU5NGFlXG4qIFx1N2NmYlx1N2VkZlx1NGVmYlx1NTJhMVx1NjgwZlx1NjI1OFx1NzZkOFx1NjYzZVx1NzkzYVx1NTQ4Y1x1NGVhNFx1NGU5Mlx1OGJiZVx1N2Y2ZVxuKiAqIFx1NjYzZVx1NzkzYVx1NjIxNlx1OTY5MFx1ODVjZlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1xuKiAqIFx1NzZmNFx1NjNhNVx1NzBiOVx1NTFmYlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1x1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFxuKiAqIFx1NmRmYlx1NTJhMFx1OTg5ZFx1NTkxNlx1ODNkY1x1NTM1NVxuKiBcdThmOTNcdTUxNjVcdTZlOTBcdTYzMDdcdTc5M2FcdTU2NjhcdTUzY2FcdTUxNzZcdTY2M2VcdTc5M2FcdTU0OGNcdTRlYTRcdTRlOTJcdThiYmVcdTdmNmVcbiogKiBcdTU0MmZcdTc1MjhcdTYzMDdcdTc5M2FcdTU2NjhcbiogKiBcdTRlYzVcdTU3MjhcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRlYzVcdTU3MjhcdTgyZjFcdTY1ODdcdThmOTNcdTUxNjVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRmN2ZcdTc1MjhcdTUzNTVcdTZhMjFcdTVmMGZcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTRlMGRcdTYzMDdcdTc5M2FcbiogKiBcdTUzZjNcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTY3NjVcdTVjMDZcdTUxNzZcdTk2OTBcdTg1Y2ZcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTRlMGFcdTZlZGFcdTUyYThcdTY3NjVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTY2M2VcdTc5M2FcdTUyYThcdTc1M2JcbiogKiBcdTgxZWFcdTViOWFcdTRlNDlcdTViNTdcdTRmNTNcbiogKiBcdTVkZTZcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTRlZTVcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTYyMTZcdTgwMDVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTY2ZjRcdTY1MzlcdTkwMGZcdTY2MGVcdTVlYTZcbiogKiBcdTU0MmZcdTc1MjhcdTVlZjZcdTY1ZjZcdTY2M2VcdTc5M2FcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTY2M2VcdTc5M2FcdTY1ZjZcdTVlZjZcbiogKiBcdTU0MmZcdTc1MjhcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTY1ZjZcdTVlZjZcbiogXHU3NmFlXHU4MGE0XHU2ODM3XHU1ZjBmXHU0ZTNiXHU5ODk4XHVmZjA4XHU2M2QwXHU0ZjliXHU3Njg0XHU2MjE2XHU4MDA1XHU0ZWNlR05PTUUgU2hlbGxcdTRlM2JcdTk4OThcdTRlMmRcdTYzZDBcdTUzZDZcdTc2ODRcdTY4MzdcdTVmMGZcdTg4NjhcdWZmMGNcdTUzYzJcdTg5YzFcdTYyNjlcdTVjNTVcdTc2ODRcdTVlMmVcdTUyYTlcdTkwZThcdTUyMDZcdTY3NjVcdTgzYjdcdTUzZDZcdTY2ZjRcdTU5MWFcdTYzMDdcdTViZmNcdWZmMDlcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU4MGNjXHU2NjZmXHU1NmZlXHU3MjQ3XHU1M2NhXHU1MTc2XHU2NjNlXHU3OTNhXHU2ODM3XHU1ZjBmXG4qIFx1NGUzYlx1OTg5OFx1NTQ4Y1x1ODBjY1x1NjY2Zlx1NTZmZVx1NzI0N1x1OGRkZlx1OTY4ZkdOT01FXHU1OTFjXHU3MDZmXG5cblx1NGY3Zlx1NzUyOFx1NjMwN1x1NTM1N1x1ZmYxYWh0dHBzOi8vYmxvZy5jc2RuLm5ldC9xcV8xODU3MjAyMy9hcnRpY2xlL2RldGFpbHMvMTE2MzMxNjAxIiwKICAiZXh0ZW5zaW9uLWlkIjogImN1c3RvbWl6ZS1pYnVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY3VzdG9taXplLWlidXMiLAogICJuYW1lIjogIkN1c3RvbWl6ZSBJQnVzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJob2xsb3dtYW5Ab3BlbnN1c2Uub3JnIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jdXN0b21pemUtaWJ1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29wZW5TVVNFL0N1c3RvbWl6ZS1JQnVzIiwKICAidXVpZCI6ICJjdXN0b21pemUtaWJ1c0Bob2xsb3dtYW4ubWwiLAogICJ2ZXJzaW9uIjogODIKfQ=="}, "42": {"version": "82", "sha256": "1rn0zskj5s7xp11p8sbgybghngqyf5chs469w51vn8n24k4bgdp6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGwgY3VzdG9taXphdGlvbiBvZiBhcHBlYXJhbmNlLCBiZWhhdmlvciwgc3lzdGVtIHRyYXkgYW5kIGlucHV0IHNvdXJjZSBpbmRpY2F0b3IgZm9yIElCdXNcblxuU3VwcG9ydCBDdXN0b21pemF0aW9uIG9mOlxuKiBDYW5kaWRhdGUgQm94IE9yaWVudGF0aW9uXG4qIENhbmRpZGF0ZSBCb3ggQW5pbWF0aW9uXG4qIFJpZ2h0LWNsaWNrIENhbmRpZGF0ZSBCb3ggdG8gU3dpdGNoIHRoZSBJbnB1dCBNb2RlIG9yIE9wZW4gdGhlIFRyYXkgTWVudVxuKiBTY3JvbGwgb24gQ2FuZGlkYXRlIEJveCB0byBTd2l0Y2ggYW1vbmcgUGFnZXMgb3IgQ2FuZGlkYXRlc1xuKiBGaXggQ2FuZGlkYXRlIEJveCB0byBOb3QgRm9sbG93IHRoZSBDYXJldCBhbmQgU2V0IEZpeGVkIFBvc2l0aW9uXG4qIENhbmRpZGF0ZSBCb3ggRm9udFxuKiBJbnB1dCBNb2RlIFJlbWVtYmVyIGFuZCBBdXRvLXN3aXRjaCBieSBBUFBcbiogQ2hhbmdlIENhbmRpZGF0ZSBCb3ggT3BhY2l0eVxuKiBGaXggSU1FIExpc3QgT3JkZXJcbiogRHJhZyBDYW5kaWRhdGUgQm94IHRvIFJlcG9zaXRpb25cbiogU2hvdyBvciBIaWRlIENhbmRpZGF0ZSBCb3ggUGFnZSBCdXR0b25zXG4qIFN5c3RlbSBUcmF5IE1lbnVzIGFuZCBJbnRlcmFjdGlvbiBTZXR0aW5nc1xuKiAqIFNob3cgb3IgSGlkZSBUcmF5IEljb25cbiogKiBEaXJlY3RseSBDbGljayBUcmF5IEljb24gdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBBZGQgQWRkaXRpb25hbCBNZW51XG4qIElucHV0IFNvdXJjZSBJbmRpY2F0b3IgQXBwZWFyYW5jZSBhbmQgSW50ZXJhY3Rpb24gU2V0dGluZ3NcbiogKiBFbmFibGUgSW5kaWNhdG9yXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFN3aXRjaGluZyBJbnB1dCBNb2RlXG4qICogT25seSBJbmRpY2F0ZSB3aGVuIFVzaW5nIEFTQ0lJIElucHV0IE1vZGVcbiogKiBOb3QgSW5kaWNhdGUgd2hlbiBVc2luZyBTaW5nbGUgTW9kZSBJTUVcbiogKiBSaWdodC1jbGljayBJbmRpY2F0b3IgdG8gSGlkZVxuKiAqIFNjcm9sbCBvbiBJbmRpY2F0b3IgdG8gU3dpdGNoIElucHV0IE1vZGVcbiogKiBJbmRpY2F0b3IgQW5pbWF0aW9uXG4qICogQ3VzdG9taXplIEZvbnRcbiogKiBMZWZ0LWNsaWNrIEluZGljYXRvciB0byBEcmFnIHRvIE1vdmUgSW5kaWNhdG9yIG9yIFN3aXRjaCBJbnB1dCBNb2RlXG4qICogQ2hhbmdlIE9wYWNpdHlcbiogKiBFbmFibGUgSW5kaWNhdG9yIFNob3cgRGVsYXkgYW5kIENvbmZpZ3VyZSBTaG93aW5nIFRpbWVvdXRcbiogKiBFbmFibGUgQXV0by1oaWRlIEluZGljYXRvciBhbmQgQ29uZmlndXJlIEF1dG8taGlkZSBUaW1lb3V0XG4qIFRoZW1lIChTdHlsZXNoZWV0IFByb3ZpZGVkIG9yIEV4dHJhY3RlZCBmcm9tIEdOT01FIFNoZWxsIFRoZW1lcywgUmVmZXIgdG8gSGVscCBJbnN0cnVjdGlvbnMgaW4gRXh0ZW5zaW9uIGZvciBNb3JlKVxuKiBDYW5kaWRhdGUgQm94IEJhY2tncm91bmQgYW5kIGl0cyBEaXNwbGF5aW5nIFN0eWxlXG4qIFRoZW1lIGFuZCBCYWNrZ3JvdW5kIFBpY3R1cmUgRm9sbG93IEdOT01FIE5pZ2h0IExpZ2h0IE1vZGVcblxuVXNlciBHdWlkZTogaHR0cHM6Ly9ob2xsb3dtYW5zYmxvZy53b3JkcHJlc3MuY29tLzIwMjEvMDgvMjEvY3VzdG9taXplLWlidXMtdXNlci1ndWlkZS9cblxuXHU2ZGYxXHU1ZWE2XHU1YjlhXHU1MjM2IElCdXMgXHU3Njg0XHU1OTE2XHU4OWMyXHUzMDAxXHU4ODRjXHU0ZTNhXHUzMDAxXHU3Y2ZiXHU3ZWRmXHU2MjU4XHU3NmQ4XHU0ZWU1XHU1M2NhXHU4ZjkzXHU1MTY1XHU2MzA3XHU3OTNhXG5cblx1NjUyZlx1NjMwMVx1ODFlYVx1NWI5YVx1NGU0OVx1ZmYxYVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTY1YjlcdTU0MTFcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU1MmE4XHU3NTNiXG4qIFx1NTNmM1x1OTUyZVx1NTM1NVx1NTFmYlx1NTAxOVx1OTAwOVx1Njg0Nlx1NGVlNVx1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFx1NjIxNlx1NjI1M1x1NWYwMFx1NGVmYlx1NTJhMVx1NjgwZlx1ODNkY1x1NTM1NVxuKiBcdTUwMTlcdTkwMDlcdTY4NDZcdTRlMGFcdTZlZGFcdTUyYThcdTRlZTVcdTUyMDdcdTYzNjJcdTk4NzVcdTk3NjJcdTYyMTZcdTUwMTlcdTkwMDlcdThiY2RcbiogXHU1NmZhXHU1YjlhXHU1MDE5XHU5MDA5XHU2ODQ2XHU0ZjdmXHU1MTc2XHU0ZTBkXHU4ZGRmXHU5NjhmXHU1MTQ5XHU2ODA3XHU0ZWU1XHU1M2NhXHU4YmJlXHU1YjlhXHU1NmZhXHU1YjlhXHU0ZjRkXHU3ZjZlXG4qIFx1NTAxOVx1OTAwOVx1Njg0Nlx1NWI1N1x1NGY1M1xuKiBcdThmOTNcdTUxNjVcdTZhMjFcdTVmMGZcdTY4MzlcdTYzNmVcdTVlOTRcdTc1MjhcdThiYjBcdTVmYzZcdTVlNzZcdTgxZWFcdTUyYThcdTUyMDdcdTYzNjJcbiogXHU2NmY0XHU2NTM5XHU1MDE5XHU5MDA5XHU2ODQ2XHU5MDBmXHU2NjBlXHU1ZWE2XG4qIFx1NTZmYVx1NWI5YVx1OGY5M1x1NTE2NVx1NmNkNVx1NTIxN1x1ODg2OFx1OTg3YVx1NWU4ZlxuKiBcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTUwMTlcdTkwMDlcdTY4NDZcbiogXHU2NjNlXHU3OTNhXHU2MjE2XHU5NjkwXHU4NWNmXHU1MDE5XHU5MDA5XHU2ODQ2XHU4YzAzXHU5ODc1XHU2MzA5XHU5NGFlXG4qIFx1N2NmYlx1N2VkZlx1NGVmYlx1NTJhMVx1NjgwZlx1NjI1OFx1NzZkOFx1NjYzZVx1NzkzYVx1NTQ4Y1x1NGVhNFx1NGU5Mlx1OGJiZVx1N2Y2ZVxuKiAqIFx1NjYzZVx1NzkzYVx1NjIxNlx1OTY5MFx1ODVjZlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1xuKiAqIFx1NzZmNFx1NjNhNVx1NzBiOVx1NTFmYlx1NjI1OFx1NzZkOFx1NTZmZVx1NjgwN1x1NTIwN1x1NjM2Mlx1OGY5M1x1NTE2NVx1NmU5MFxuKiAqIFx1NmRmYlx1NTJhMFx1OTg5ZFx1NTkxNlx1ODNkY1x1NTM1NVxuKiBcdThmOTNcdTUxNjVcdTZlOTBcdTYzMDdcdTc5M2FcdTU2NjhcdTUzY2FcdTUxNzZcdTY2M2VcdTc5M2FcdTU0OGNcdTRlYTRcdTRlOTJcdThiYmVcdTdmNmVcbiogKiBcdTU0MmZcdTc1MjhcdTYzMDdcdTc5M2FcdTU2NjhcbiogKiBcdTRlYzVcdTU3MjhcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRlYzVcdTU3MjhcdTgyZjFcdTY1ODdcdThmOTNcdTUxNjVcdTY1ZjZcdTYzMDdcdTc5M2FcbiogKiBcdTRmN2ZcdTc1MjhcdTUzNTVcdTZhMjFcdTVmMGZcdThmOTNcdTUxNjVcdTZjZDVcdTY1ZjZcdTRlMGRcdTYzMDdcdTc5M2FcbiogKiBcdTUzZjNcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTY3NjVcdTVjMDZcdTUxNzZcdTk2OTBcdTg1Y2ZcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTRlMGFcdTZlZGFcdTUyYThcdTY3NjVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTYzMDdcdTc5M2FcdTU2NjhcdTY2M2VcdTc5M2FcdTUyYThcdTc1M2JcbiogKiBcdTgxZWFcdTViOWFcdTRlNDlcdTViNTdcdTRmNTNcbiogKiBcdTVkZTZcdTUxZmJcdTYzMDdcdTc5M2FcdTU2NjhcdTRlZTVcdTYyZDZcdTYyZmRcdTc5ZmJcdTUyYThcdTYyMTZcdTgwMDVcdTUyMDdcdTYzNjJcdThmOTNcdTUxNjVcdTZlOTBcbiogKiBcdTY2ZjRcdTY1MzlcdTkwMGZcdTY2MGVcdTVlYTZcbiogKiBcdTU0MmZcdTc1MjhcdTVlZjZcdTY1ZjZcdTY2M2VcdTc5M2FcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTY2M2VcdTc5M2FcdTY1ZjZcdTVlZjZcbiogKiBcdTU0MmZcdTc1MjhcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTRlZTVcdTUzY2FcdTkxNGRcdTdmNmVcdTgxZWFcdTUyYThcdTk2OTBcdTg1Y2ZcdTY1ZjZcdTVlZjZcbiogXHU3NmFlXHU4MGE0XHU2ODM3XHU1ZjBmXHU0ZTNiXHU5ODk4XHVmZjA4XHU2M2QwXHU0ZjliXHU3Njg0XHU2MjE2XHU4MDA1XHU0ZWNlR05PTUUgU2hlbGxcdTRlM2JcdTk4OThcdTRlMmRcdTYzZDBcdTUzZDZcdTc2ODRcdTY4MzdcdTVmMGZcdTg4NjhcdWZmMGNcdTUzYzJcdTg5YzFcdTYyNjlcdTVjNTVcdTc2ODRcdTVlMmVcdTUyYTlcdTkwZThcdTUyMDZcdTY3NjVcdTgzYjdcdTUzZDZcdTY2ZjRcdTU5MWFcdTYzMDdcdTViZmNcdWZmMDlcbiogXHU1MDE5XHU5MDA5XHU2ODQ2XHU4MGNjXHU2NjZmXHU1NmZlXHU3MjQ3XHU1M2NhXHU1MTc2XHU2NjNlXHU3OTNhXHU2ODM3XHU1ZjBmXG4qIFx1NGUzYlx1OTg5OFx1NTQ4Y1x1ODBjY1x1NjY2Zlx1NTZmZVx1NzI0N1x1OGRkZlx1OTY4ZkdOT01FXHU1OTFjXHU3MDZmXG5cblx1NGY3Zlx1NzUyOFx1NjMwN1x1NTM1N1x1ZmYxYWh0dHBzOi8vYmxvZy5jc2RuLm5ldC9xcV8xODU3MjAyMy9hcnRpY2xlL2RldGFpbHMvMTE2MzMxNjAxIiwKICAiZXh0ZW5zaW9uLWlkIjogImN1c3RvbWl6ZS1pYnVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY3VzdG9taXplLWlidXMiLAogICJuYW1lIjogIkN1c3RvbWl6ZSBJQnVzIiwKICAib3JpZ2luYWwtYXV0aG9ycyI6IFsKICAgICJob2xsb3dtYW5Ab3BlbnN1c2Uub3JnIgogIF0sCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jdXN0b21pemUtaWJ1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAuMCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL29wZW5TVVNFL0N1c3RvbWl6ZS1JQnVzIiwKICAidXVpZCI6ICJjdXN0b21pemUtaWJ1c0Bob2xsb3dtYW4ubWwiLAogICJ2ZXJzaW9uIjogODIKfQ=="}}}
 , {"uuid": "fildemGMenu@gonza.com", "name": "Fildem global menu", "pname": "fildem-global-menu", "description": "Global menu for Gnome", "link": "https://extensions.gnome.org/extension/4114/fildem-global-menu/", "shell_version_map": {"38": {"version": "2", "sha256": "0776vx09b1nxf6j5w9gmzg1gmzijh1mpsnfzv41svbfqyfc8zv2w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdsb2JhbCBtZW51IGZvciBHbm9tZSIsCiAgIm5hbWUiOiAiRmlsZGVtIGdsb2JhbCBtZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZpbGRlbS1nbG9iYWwtbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29uemFhcmNyL0ZpbGRlbSIsCiAgInV1aWQiOiAiZmlsZGVtR01lbnVAZ29uemEuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "0776vx09b1nxf6j5w9gmzg1gmzijh1mpsnfzv41svbfqyfc8zv2w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdsb2JhbCBtZW51IGZvciBHbm9tZSIsCiAgIm5hbWUiOiAiRmlsZGVtIGdsb2JhbCBtZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZpbGRlbS1nbG9iYWwtbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29uemFhcmNyL0ZpbGRlbSIsCiAgInV1aWQiOiAiZmlsZGVtR01lbnVAZ29uemEuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "0776vx09b1nxf6j5w9gmzg1gmzijh1mpsnfzv41svbfqyfc8zv2w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdsb2JhbCBtZW51IGZvciBHbm9tZSIsCiAgIm5hbWUiOiAiRmlsZGVtIGdsb2JhbCBtZW51IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZpbGRlbS1nbG9iYWwtbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ29uemFhcmNyL0ZpbGRlbSIsCiAgInV1aWQiOiAiZmlsZGVtR01lbnVAZ29uemEuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "remove-panel@sulincix", "name": "RemovePanel", "pname": "removepanel", "description": "remove top panel from gnome-shell", "link": "https://extensions.gnome.org/extension/4118/removepanel/", "shell_version_map": {"38": {"version": "5", "sha256": "022cznjpi2a3ld31cjk1942cyc4r6s6k58ik5qd49xh8wl8y2b3z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInJlbW92ZSB0b3AgcGFuZWwgZnJvbSBnbm9tZS1zaGVsbCIsCiAgIm5hbWUiOiAiUmVtb3ZlUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJyZW1vdmUtcGFuZWxAc3VsaW5jaXgiLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "022cznjpi2a3ld31cjk1942cyc4r6s6k58ik5qd49xh8wl8y2b3z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInJlbW92ZSB0b3AgcGFuZWwgZnJvbSBnbm9tZS1zaGVsbCIsCiAgIm5hbWUiOiAiUmVtb3ZlUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJyZW1vdmUtcGFuZWxAc3VsaW5jaXgiLAogICJ2ZXJzaW9uIjogNQp9"}, "41": {"version": "5", "sha256": "022cznjpi2a3ld31cjk1942cyc4r6s6k58ik5qd49xh8wl8y2b3z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogInJlbW92ZSB0b3AgcGFuZWwgZnJvbSBnbm9tZS1zaGVsbCIsCiAgIm5hbWUiOiAiUmVtb3ZlUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJyZW1vdmUtcGFuZWxAc3VsaW5jaXgiLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "bottom-triggers-activities@papjul", "name": "Bottom triggers Activities overview", "pname": "bottom-triggers-activities-overview", "description": "DEPRECATION NOTICE: No longer maintained. Please migrate to another extension such as Hot Edge https://extensions.gnome.org/extension/4222/hot-edge/\n\nAllows to toggle Activities overview when the mouse reaches the bottom edge of the screen.\nPLEASE report your bugs to the extension homepage link below. I cannot reply to you if you write a review here.\n\nThis is a fork of Dash to Dock focusing only on doing this, it adds support for Gnome Shell 40 and is mainly aimed at Gnome Shell 40 users to reduce mouse travel.\n\nI may backport fixes from upstream, but I don't intend to add any new feature and may not fix any bug if I'm not affected/cannot reproduce. However, I will accept pull requests that keep the extension in the KISS principle. It could be adding a prefs UI for toggle delay and edge(s) triggered, or supporting multiple monitors.\n\nYou can customize the following parameters from the constructor of extension.js:\n        this._position = St.Side.BOTTOM;\n        this._toggleDelay = 0.25;", "link": "https://extensions.gnome.org/extension/4120/bottom-triggers-activities-overview/", "shell_version_map": {"38": {"version": "2", "sha256": "1q1ahz612w2fzbvky8ydwns2kykbj2vqcr5ddyncg16lhrfzx9vq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRFUFJFQ0FUSU9OIE5PVElDRTogTm8gbG9uZ2VyIG1haW50YWluZWQuIFBsZWFzZSBtaWdyYXRlIHRvIGFub3RoZXIgZXh0ZW5zaW9uIHN1Y2ggYXMgSG90IEVkZ2UgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDIyMi9ob3QtZWRnZS9cblxuQWxsb3dzIHRvIHRvZ2dsZSBBY3Rpdml0aWVzIG92ZXJ2aWV3IHdoZW4gdGhlIG1vdXNlIHJlYWNoZXMgdGhlIGJvdHRvbSBlZGdlIG9mIHRoZSBzY3JlZW4uXG5QTEVBU0UgcmVwb3J0IHlvdXIgYnVncyB0byB0aGUgZXh0ZW5zaW9uIGhvbWVwYWdlIGxpbmsgYmVsb3cuIEkgY2Fubm90IHJlcGx5IHRvIHlvdSBpZiB5b3Ugd3JpdGUgYSByZXZpZXcgaGVyZS5cblxuVGhpcyBpcyBhIGZvcmsgb2YgRGFzaCB0byBEb2NrIGZvY3VzaW5nIG9ubHkgb24gZG9pbmcgdGhpcywgaXQgYWRkcyBzdXBwb3J0IGZvciBHbm9tZSBTaGVsbCA0MCBhbmQgaXMgbWFpbmx5IGFpbWVkIGF0IEdub21lIFNoZWxsIDQwIHVzZXJzIHRvIHJlZHVjZSBtb3VzZSB0cmF2ZWwuXG5cbkkgbWF5IGJhY2twb3J0IGZpeGVzIGZyb20gdXBzdHJlYW0sIGJ1dCBJIGRvbid0IGludGVuZCB0byBhZGQgYW55IG5ldyBmZWF0dXJlIGFuZCBtYXkgbm90IGZpeCBhbnkgYnVnIGlmIEknbSBub3QgYWZmZWN0ZWQvY2Fubm90IHJlcHJvZHVjZS4gSG93ZXZlciwgSSB3aWxsIGFjY2VwdCBwdWxsIHJlcXVlc3RzIHRoYXQga2VlcCB0aGUgZXh0ZW5zaW9uIGluIHRoZSBLSVNTIHByaW5jaXBsZS4gSXQgY291bGQgYmUgYWRkaW5nIGEgcHJlZnMgVUkgZm9yIHRvZ2dsZSBkZWxheSBhbmQgZWRnZShzKSB0cmlnZ2VyZWQsIG9yIHN1cHBvcnRpbmcgbXVsdGlwbGUgbW9uaXRvcnMuXG5cbllvdSBjYW4gY3VzdG9taXplIHRoZSBmb2xsb3dpbmcgcGFyYW1ldGVycyBmcm9tIHRoZSBjb25zdHJ1Y3RvciBvZiBleHRlbnNpb24uanM6XG4gICAgICAgIHRoaXMuX3Bvc2l0aW9uID0gU3QuU2lkZS5CT1RUT007XG4gICAgICAgIHRoaXMuX3RvZ2dsZURlbGF5ID0gMC4yNTsiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJib3R0b210cmlnZ2Vyc2FjdGl2aXRpZXMiLAogICJuYW1lIjogIkJvdHRvbSB0cmlnZ2VycyBBY3Rpdml0aWVzIG92ZXJ2aWV3IiwKICAib3JpZ2luYWwtYXV0aG9yIjogInBhcGp1bCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wYXBqdWwvYm90dG9tLXRyaWdnZXJzLWFjdGl2aXRpZXMiLAogICJ1dWlkIjogImJvdHRvbS10cmlnZ2Vycy1hY3Rpdml0aWVzQHBhcGp1bCIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "1q1ahz612w2fzbvky8ydwns2kykbj2vqcr5ddyncg16lhrfzx9vq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRFUFJFQ0FUSU9OIE5PVElDRTogTm8gbG9uZ2VyIG1haW50YWluZWQuIFBsZWFzZSBtaWdyYXRlIHRvIGFub3RoZXIgZXh0ZW5zaW9uIHN1Y2ggYXMgSG90IEVkZ2UgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDIyMi9ob3QtZWRnZS9cblxuQWxsb3dzIHRvIHRvZ2dsZSBBY3Rpdml0aWVzIG92ZXJ2aWV3IHdoZW4gdGhlIG1vdXNlIHJlYWNoZXMgdGhlIGJvdHRvbSBlZGdlIG9mIHRoZSBzY3JlZW4uXG5QTEVBU0UgcmVwb3J0IHlvdXIgYnVncyB0byB0aGUgZXh0ZW5zaW9uIGhvbWVwYWdlIGxpbmsgYmVsb3cuIEkgY2Fubm90IHJlcGx5IHRvIHlvdSBpZiB5b3Ugd3JpdGUgYSByZXZpZXcgaGVyZS5cblxuVGhpcyBpcyBhIGZvcmsgb2YgRGFzaCB0byBEb2NrIGZvY3VzaW5nIG9ubHkgb24gZG9pbmcgdGhpcywgaXQgYWRkcyBzdXBwb3J0IGZvciBHbm9tZSBTaGVsbCA0MCBhbmQgaXMgbWFpbmx5IGFpbWVkIGF0IEdub21lIFNoZWxsIDQwIHVzZXJzIHRvIHJlZHVjZSBtb3VzZSB0cmF2ZWwuXG5cbkkgbWF5IGJhY2twb3J0IGZpeGVzIGZyb20gdXBzdHJlYW0sIGJ1dCBJIGRvbid0IGludGVuZCB0byBhZGQgYW55IG5ldyBmZWF0dXJlIGFuZCBtYXkgbm90IGZpeCBhbnkgYnVnIGlmIEknbSBub3QgYWZmZWN0ZWQvY2Fubm90IHJlcHJvZHVjZS4gSG93ZXZlciwgSSB3aWxsIGFjY2VwdCBwdWxsIHJlcXVlc3RzIHRoYXQga2VlcCB0aGUgZXh0ZW5zaW9uIGluIHRoZSBLSVNTIHByaW5jaXBsZS4gSXQgY291bGQgYmUgYWRkaW5nIGEgcHJlZnMgVUkgZm9yIHRvZ2dsZSBkZWxheSBhbmQgZWRnZShzKSB0cmlnZ2VyZWQsIG9yIHN1cHBvcnRpbmcgbXVsdGlwbGUgbW9uaXRvcnMuXG5cbllvdSBjYW4gY3VzdG9taXplIHRoZSBmb2xsb3dpbmcgcGFyYW1ldGVycyBmcm9tIHRoZSBjb25zdHJ1Y3RvciBvZiBleHRlbnNpb24uanM6XG4gICAgICAgIHRoaXMuX3Bvc2l0aW9uID0gU3QuU2lkZS5CT1RUT007XG4gICAgICAgIHRoaXMuX3RvZ2dsZURlbGF5ID0gMC4yNTsiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJib3R0b210cmlnZ2Vyc2FjdGl2aXRpZXMiLAogICJuYW1lIjogIkJvdHRvbSB0cmlnZ2VycyBBY3Rpdml0aWVzIG92ZXJ2aWV3IiwKICAib3JpZ2luYWwtYXV0aG9yIjogInBhcGp1bCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9wYXBqdWwvYm90dG9tLXRyaWdnZXJzLWFjdGl2aXRpZXMiLAogICJ1dWlkIjogImJvdHRvbS10cmlnZ2Vycy1hY3Rpdml0aWVzQHBhcGp1bCIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "gnome-shell-Google-search-provider@MrNinso", "name": "Google Search Provider", "pname": "google-search-provider", "description": "Add Google search to Gnome Shell Search \n TODO: \n - Add google suggestions (For now using duckduckGo suggestions)", "link": "https://extensions.gnome.org/extension/4132/google-search-provider/", "shell_version_map": {"38": {"version": "6", "sha256": "1pk1a6k21a1yj78rkwkx0r91lyjybjvfncymhl1hbzzyq0fxqy82", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBHb29nbGUgc2VhcmNoIHRvIEdub21lIFNoZWxsIFNlYXJjaCBcbiBUT0RPOiBcbiAtIEFkZCBnb29nbGUgc3VnZ2VzdGlvbnMgKEZvciBub3cgdXNpbmcgZHVja2R1Y2tHbyBzdWdnZXN0aW9ucykiLAogICJuYW1lIjogIkdvb2dsZSBTZWFyY2ggUHJvdmlkZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ29vZ2xlLXNlYXJjaC1wcm92aWRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTXJOaW5zby9nbm9tZS1zaGVsbC1nb29nbGUtc2VhcmNoLXByb3ZpZGVyIiwKICAidXVpZCI6ICJnbm9tZS1zaGVsbC1Hb29nbGUtc2VhcmNoLXByb3ZpZGVyQE1yTmluc28iLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "1pk1a6k21a1yj78rkwkx0r91lyjybjvfncymhl1hbzzyq0fxqy82", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBHb29nbGUgc2VhcmNoIHRvIEdub21lIFNoZWxsIFNlYXJjaCBcbiBUT0RPOiBcbiAtIEFkZCBnb29nbGUgc3VnZ2VzdGlvbnMgKEZvciBub3cgdXNpbmcgZHVja2R1Y2tHbyBzdWdnZXN0aW9ucykiLAogICJuYW1lIjogIkdvb2dsZSBTZWFyY2ggUHJvdmlkZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ29vZ2xlLXNlYXJjaC1wcm92aWRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTXJOaW5zby9nbm9tZS1zaGVsbC1nb29nbGUtc2VhcmNoLXByb3ZpZGVyIiwKICAidXVpZCI6ICJnbm9tZS1zaGVsbC1Hb29nbGUtc2VhcmNoLXByb3ZpZGVyQE1yTmluc28iLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "1pk1a6k21a1yj78rkwkx0r91lyjybjvfncymhl1hbzzyq0fxqy82", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBHb29nbGUgc2VhcmNoIHRvIEdub21lIFNoZWxsIFNlYXJjaCBcbiBUT0RPOiBcbiAtIEFkZCBnb29nbGUgc3VnZ2VzdGlvbnMgKEZvciBub3cgdXNpbmcgZHVja2R1Y2tHbyBzdWdnZXN0aW9ucykiLAogICJuYW1lIjogIkdvb2dsZSBTZWFyY2ggUHJvdmlkZXIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuZ29vZ2xlLXNlYXJjaC1wcm92aWRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTXJOaW5zby9nbm9tZS1zaGVsbC1nb29nbGUtc2VhcmNoLXByb3ZpZGVyIiwKICAidXVpZCI6ICJnbm9tZS1zaGVsbC1Hb29nbGUtc2VhcmNoLXByb3ZpZGVyQE1yTmluc28iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "disable-menu-switching@selfmade.pl", "name": "Disable Menu Switching", "pname": "disable-menu-switching", "description": "Disable changing menu on hover another panel button.", "link": "https://extensions.gnome.org/extension/4133/disable-menu-switching/", "shell_version_map": {"40": {"version": "3", "sha256": "12879vn6knafdcphg3wwbpbram5hrw79v68z9c9d5z4f9k781ksq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgY2hhbmdpbmcgbWVudSBvbiBob3ZlciBhbm90aGVyIHBhbmVsIGJ1dHRvbi4iLAogICJuYW1lIjogIkRpc2FibGUgTWVudSBTd2l0Y2hpbmciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWFydGluUEwvRGlzYWJsZS1NZW51LVN3aXRjaGluZyIsCiAgInV1aWQiOiAiZGlzYWJsZS1tZW51LXN3aXRjaGluZ0BzZWxmbWFkZS5wbCIsCiAgInZlcnNpb24iOiAzCn0="}, "41": {"version": "4", "sha256": "0fnzlmr12l8y689p6kclm3yd3b653jl9f1bhhy7652c1b4g515m0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGUgY2hhbmdpbmcgbWVudSBvbiBob3ZlciBhbm90aGVyIHBhbmVsIGJ1dHRvbi4iLAogICJuYW1lIjogIkRpc2FibGUgTWVudSBTd2l0Y2hpbmciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTWFydGluUEwvRGlzYWJsZS1NZW51LVN3aXRjaGluZyIsCiAgInV1aWQiOiAiZGlzYWJsZS1tZW51LXN3aXRjaGluZ0BzZWxmbWFkZS5wbCIsCiAgInZlcnNpb24iOiA0Cn0="}}}
-, {"uuid": "espresso@coadmunkee.github.com", "name": "Espresso", "pname": "espresso", "description": "Control when to disable the usual auto suspend and screensaver functionality and optionally Night Light as well. Options to show as an icon in the top panel, enable when a fullscreen app is running, restore state across reboots, provide notifications, enable when specific app are running, pause Night Light when Espresso is enabled or only when specific apps are running. Espresso also supports docking stations with options to enable when charging or when docked to external monitors.\n\nEspresso is a fork of the Caffeine extension.\n\nPlease leave feedback or report issues through the Extension Homepage", "link": "https://extensions.gnome.org/extension/4135/espresso/", "shell_version_map": {"40": {"version": "6", "sha256": "0crkisqgrqh7lgls9mh59hziajkzwn08mcpcifmd8gr95qvrdmgv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgd2hlbiB0byBkaXNhYmxlIHRoZSB1c3VhbCBhdXRvIHN1c3BlbmQgYW5kIHNjcmVlbnNhdmVyIGZ1bmN0aW9uYWxpdHkgYW5kIG9wdGlvbmFsbHkgTmlnaHQgTGlnaHQgYXMgd2VsbC4gT3B0aW9ucyB0byBzaG93IGFzIGFuIGljb24gaW4gdGhlIHRvcCBwYW5lbCwgZW5hYmxlIHdoZW4gYSBmdWxsc2NyZWVuIGFwcCBpcyBydW5uaW5nLCByZXN0b3JlIHN0YXRlIGFjcm9zcyByZWJvb3RzLCBwcm92aWRlIG5vdGlmaWNhdGlvbnMsIGVuYWJsZSB3aGVuIHNwZWNpZmljIGFwcCBhcmUgcnVubmluZywgcGF1c2UgTmlnaHQgTGlnaHQgd2hlbiBFc3ByZXNzbyBpcyBlbmFibGVkIG9yIG9ubHkgd2hlbiBzcGVjaWZpYyBhcHBzIGFyZSBydW5uaW5nLiBFc3ByZXNzbyBhbHNvIHN1cHBvcnRzIGRvY2tpbmcgc3RhdGlvbnMgd2l0aCBvcHRpb25zIHRvIGVuYWJsZSB3aGVuIGNoYXJnaW5nIG9yIHdoZW4gZG9ja2VkIHRvIGV4dGVybmFsIG1vbml0b3JzLlxuXG5Fc3ByZXNzbyBpcyBhIGZvcmsgb2YgdGhlIENhZmZlaW5lIGV4dGVuc2lvbi5cblxuUGxlYXNlIGxlYXZlIGZlZWRiYWNrIG9yIHJlcG9ydCBpc3N1ZXMgdGhyb3VnaCB0aGUgRXh0ZW5zaW9uIEhvbWVwYWdlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAibmFtZSI6ICJFc3ByZXNzbyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5lc3ByZXNzbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvYWRtdW5rZWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAidXVpZCI6ICJlc3ByZXNzb0Bjb2FkbXVua2VlLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "0crkisqgrqh7lgls9mh59hziajkzwn08mcpcifmd8gr95qvrdmgv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgd2hlbiB0byBkaXNhYmxlIHRoZSB1c3VhbCBhdXRvIHN1c3BlbmQgYW5kIHNjcmVlbnNhdmVyIGZ1bmN0aW9uYWxpdHkgYW5kIG9wdGlvbmFsbHkgTmlnaHQgTGlnaHQgYXMgd2VsbC4gT3B0aW9ucyB0byBzaG93IGFzIGFuIGljb24gaW4gdGhlIHRvcCBwYW5lbCwgZW5hYmxlIHdoZW4gYSBmdWxsc2NyZWVuIGFwcCBpcyBydW5uaW5nLCByZXN0b3JlIHN0YXRlIGFjcm9zcyByZWJvb3RzLCBwcm92aWRlIG5vdGlmaWNhdGlvbnMsIGVuYWJsZSB3aGVuIHNwZWNpZmljIGFwcCBhcmUgcnVubmluZywgcGF1c2UgTmlnaHQgTGlnaHQgd2hlbiBFc3ByZXNzbyBpcyBlbmFibGVkIG9yIG9ubHkgd2hlbiBzcGVjaWZpYyBhcHBzIGFyZSBydW5uaW5nLiBFc3ByZXNzbyBhbHNvIHN1cHBvcnRzIGRvY2tpbmcgc3RhdGlvbnMgd2l0aCBvcHRpb25zIHRvIGVuYWJsZSB3aGVuIGNoYXJnaW5nIG9yIHdoZW4gZG9ja2VkIHRvIGV4dGVybmFsIG1vbml0b3JzLlxuXG5Fc3ByZXNzbyBpcyBhIGZvcmsgb2YgdGhlIENhZmZlaW5lIGV4dGVuc2lvbi5cblxuUGxlYXNlIGxlYXZlIGZlZWRiYWNrIG9yIHJlcG9ydCBpc3N1ZXMgdGhyb3VnaCB0aGUgRXh0ZW5zaW9uIEhvbWVwYWdlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAibmFtZSI6ICJFc3ByZXNzbyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5lc3ByZXNzbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvYWRtdW5rZWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAidXVpZCI6ICJlc3ByZXNzb0Bjb2FkbXVua2VlLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}}}
+, {"uuid": "espresso@coadmunkee.github.com", "name": "Espresso", "pname": "espresso", "description": "Control when to disable the usual auto suspend and screensaver functionality and optionally Night Light as well. Options to show as an icon in the top panel, enable when a fullscreen app is running, restore state across reboots, provide notifications, enable when specific app are running, pause Night Light when Espresso is enabled or only when specific apps are running. Espresso also supports docking stations with options to enable when charging or when docked to external monitors.\n\nEspresso is a fork of the Caffeine extension.\n\nPlease leave feedback or report issues through the Extension Homepage", "link": "https://extensions.gnome.org/extension/4135/espresso/", "shell_version_map": {"40": {"version": "6", "sha256": "0crkisqgrqh7lgls9mh59hziajkzwn08mcpcifmd8gr95qvrdmgv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgd2hlbiB0byBkaXNhYmxlIHRoZSB1c3VhbCBhdXRvIHN1c3BlbmQgYW5kIHNjcmVlbnNhdmVyIGZ1bmN0aW9uYWxpdHkgYW5kIG9wdGlvbmFsbHkgTmlnaHQgTGlnaHQgYXMgd2VsbC4gT3B0aW9ucyB0byBzaG93IGFzIGFuIGljb24gaW4gdGhlIHRvcCBwYW5lbCwgZW5hYmxlIHdoZW4gYSBmdWxsc2NyZWVuIGFwcCBpcyBydW5uaW5nLCByZXN0b3JlIHN0YXRlIGFjcm9zcyByZWJvb3RzLCBwcm92aWRlIG5vdGlmaWNhdGlvbnMsIGVuYWJsZSB3aGVuIHNwZWNpZmljIGFwcCBhcmUgcnVubmluZywgcGF1c2UgTmlnaHQgTGlnaHQgd2hlbiBFc3ByZXNzbyBpcyBlbmFibGVkIG9yIG9ubHkgd2hlbiBzcGVjaWZpYyBhcHBzIGFyZSBydW5uaW5nLiBFc3ByZXNzbyBhbHNvIHN1cHBvcnRzIGRvY2tpbmcgc3RhdGlvbnMgd2l0aCBvcHRpb25zIHRvIGVuYWJsZSB3aGVuIGNoYXJnaW5nIG9yIHdoZW4gZG9ja2VkIHRvIGV4dGVybmFsIG1vbml0b3JzLlxuXG5Fc3ByZXNzbyBpcyBhIGZvcmsgb2YgdGhlIENhZmZlaW5lIGV4dGVuc2lvbi5cblxuUGxlYXNlIGxlYXZlIGZlZWRiYWNrIG9yIHJlcG9ydCBpc3N1ZXMgdGhyb3VnaCB0aGUgRXh0ZW5zaW9uIEhvbWVwYWdlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAibmFtZSI6ICJFc3ByZXNzbyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5lc3ByZXNzbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvYWRtdW5rZWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAidXVpZCI6ICJlc3ByZXNzb0Bjb2FkbXVua2VlLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "0crkisqgrqh7lgls9mh59hziajkzwn08mcpcifmd8gr95qvrdmgv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgd2hlbiB0byBkaXNhYmxlIHRoZSB1c3VhbCBhdXRvIHN1c3BlbmQgYW5kIHNjcmVlbnNhdmVyIGZ1bmN0aW9uYWxpdHkgYW5kIG9wdGlvbmFsbHkgTmlnaHQgTGlnaHQgYXMgd2VsbC4gT3B0aW9ucyB0byBzaG93IGFzIGFuIGljb24gaW4gdGhlIHRvcCBwYW5lbCwgZW5hYmxlIHdoZW4gYSBmdWxsc2NyZWVuIGFwcCBpcyBydW5uaW5nLCByZXN0b3JlIHN0YXRlIGFjcm9zcyByZWJvb3RzLCBwcm92aWRlIG5vdGlmaWNhdGlvbnMsIGVuYWJsZSB3aGVuIHNwZWNpZmljIGFwcCBhcmUgcnVubmluZywgcGF1c2UgTmlnaHQgTGlnaHQgd2hlbiBFc3ByZXNzbyBpcyBlbmFibGVkIG9yIG9ubHkgd2hlbiBzcGVjaWZpYyBhcHBzIGFyZSBydW5uaW5nLiBFc3ByZXNzbyBhbHNvIHN1cHBvcnRzIGRvY2tpbmcgc3RhdGlvbnMgd2l0aCBvcHRpb25zIHRvIGVuYWJsZSB3aGVuIGNoYXJnaW5nIG9yIHdoZW4gZG9ja2VkIHRvIGV4dGVybmFsIG1vbml0b3JzLlxuXG5Fc3ByZXNzbyBpcyBhIGZvcmsgb2YgdGhlIENhZmZlaW5lIGV4dGVuc2lvbi5cblxuUGxlYXNlIGxlYXZlIGZlZWRiYWNrIG9yIHJlcG9ydCBpc3N1ZXMgdGhyb3VnaCB0aGUgRXh0ZW5zaW9uIEhvbWVwYWdlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAibmFtZSI6ICJFc3ByZXNzbyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5lc3ByZXNzbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvYWRtdW5rZWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAidXVpZCI6ICJlc3ByZXNzb0Bjb2FkbXVua2VlLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}, "42": {"version": "6", "sha256": "0crkisqgrqh7lgls9mh59hziajkzwn08mcpcifmd8gr95qvrdmgv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgd2hlbiB0byBkaXNhYmxlIHRoZSB1c3VhbCBhdXRvIHN1c3BlbmQgYW5kIHNjcmVlbnNhdmVyIGZ1bmN0aW9uYWxpdHkgYW5kIG9wdGlvbmFsbHkgTmlnaHQgTGlnaHQgYXMgd2VsbC4gT3B0aW9ucyB0byBzaG93IGFzIGFuIGljb24gaW4gdGhlIHRvcCBwYW5lbCwgZW5hYmxlIHdoZW4gYSBmdWxsc2NyZWVuIGFwcCBpcyBydW5uaW5nLCByZXN0b3JlIHN0YXRlIGFjcm9zcyByZWJvb3RzLCBwcm92aWRlIG5vdGlmaWNhdGlvbnMsIGVuYWJsZSB3aGVuIHNwZWNpZmljIGFwcCBhcmUgcnVubmluZywgcGF1c2UgTmlnaHQgTGlnaHQgd2hlbiBFc3ByZXNzbyBpcyBlbmFibGVkIG9yIG9ubHkgd2hlbiBzcGVjaWZpYyBhcHBzIGFyZSBydW5uaW5nLiBFc3ByZXNzbyBhbHNvIHN1cHBvcnRzIGRvY2tpbmcgc3RhdGlvbnMgd2l0aCBvcHRpb25zIHRvIGVuYWJsZSB3aGVuIGNoYXJnaW5nIG9yIHdoZW4gZG9ja2VkIHRvIGV4dGVybmFsIG1vbml0b3JzLlxuXG5Fc3ByZXNzbyBpcyBhIGZvcmsgb2YgdGhlIENhZmZlaW5lIGV4dGVuc2lvbi5cblxuUGxlYXNlIGxlYXZlIGZlZWRiYWNrIG9yIHJlcG9ydCBpc3N1ZXMgdGhyb3VnaCB0aGUgRXh0ZW5zaW9uIEhvbWVwYWdlIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAibmFtZSI6ICJFc3ByZXNzbyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5lc3ByZXNzbyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NvYWRtdW5rZWUvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWVzcHJlc3NvIiwKICAidXVpZCI6ICJlc3ByZXNzb0Bjb2FkbXVua2VlLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "salat-dz@salat-dz.com", "name": "Salat Dz", "pname": "salat-dz", "description": "Show next salat using Salat Dz API", "link": "https://extensions.gnome.org/extension/4136/salat-dz/", "shell_version_map": {"38": {"version": "1", "sha256": "1kga5w2yp375h6lj3fmzr1agg43phyj5f45d7hjv04c405d32p8s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgbmV4dCBzYWxhdCB1c2luZyBTYWxhdCBEeiBBUEkiLAogICJuYW1lIjogIlNhbGF0IER6IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL3NhbGF0LnB5dGhvbmFueXdoZXJlLmNvbSIsCiAgInV1aWQiOiAic2FsYXQtZHpAc2FsYXQtZHouY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"uuid": "user-at-host@cmm.github.com", "name": "Add user@host to top panel", "pname": "add-userhost-to-panel", "description": "Adds user@host to the top panel, on the left.\n\nNothing fancy, no support -- fork at will, the thing is very simple.", "link": "https://extensions.gnome.org/extension/4141/add-userhost-to-panel/", "shell_version_map": {"38": {"version": "6", "sha256": "0ypil2vcv0fx10gh8q3slvf2mbqf8y53mzrb2irxdbqjkn4mdnax", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgdXNlckBob3N0IHRvIHRoZSB0b3AgcGFuZWwsIG9uIHRoZSBsZWZ0LlxuXG5Ob3RoaW5nIGZhbmN5LCBubyBzdXBwb3J0IC0tIGZvcmsgYXQgd2lsbCwgdGhlIHRoaW5nIGlzIHZlcnkgc2ltcGxlLiIsCiAgIm5hbWUiOiAiQWRkIHVzZXJAaG9zdCB0byB0b3AgcGFuZWwiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiZGFuZGFtYW45NiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY21tL2dub21lLXVzZXItYXQtaG9zdCIsCiAgInV1aWQiOiAidXNlci1hdC1ob3N0QGNtbS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "40": {"version": "6", "sha256": "0ypil2vcv0fx10gh8q3slvf2mbqf8y53mzrb2irxdbqjkn4mdnax", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgdXNlckBob3N0IHRvIHRoZSB0b3AgcGFuZWwsIG9uIHRoZSBsZWZ0LlxuXG5Ob3RoaW5nIGZhbmN5LCBubyBzdXBwb3J0IC0tIGZvcmsgYXQgd2lsbCwgdGhlIHRoaW5nIGlzIHZlcnkgc2ltcGxlLiIsCiAgIm5hbWUiOiAiQWRkIHVzZXJAaG9zdCB0byB0b3AgcGFuZWwiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiZGFuZGFtYW45NiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY21tL2dub21lLXVzZXItYXQtaG9zdCIsCiAgInV1aWQiOiAidXNlci1hdC1ob3N0QGNtbS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "41": {"version": "6", "sha256": "0ypil2vcv0fx10gh8q3slvf2mbqf8y53mzrb2irxdbqjkn4mdnax", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgdXNlckBob3N0IHRvIHRoZSB0b3AgcGFuZWwsIG9uIHRoZSBsZWZ0LlxuXG5Ob3RoaW5nIGZhbmN5LCBubyBzdXBwb3J0IC0tIGZvcmsgYXQgd2lsbCwgdGhlIHRoaW5nIGlzIHZlcnkgc2ltcGxlLiIsCiAgIm5hbWUiOiAiQWRkIHVzZXJAaG9zdCB0byB0b3AgcGFuZWwiLAogICJvcmlnaW5hbC1hdXRob3IiOiAiZGFuZGFtYW45NiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vY21tL2dub21lLXVzZXItYXQtaG9zdCIsCiAgInV1aWQiOiAidXNlci1hdC1ob3N0QGNtbS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
 , {"uuid": "vertical-overview@RensAlthuis.github.com", "name": "Vertical overview", "pname": "vertical-overview", "description": "Bringing back vertically stacked workspaces", "link": "https://extensions.gnome.org/extension/4144/vertical-overview/", "shell_version_map": {"40": {"version": "8", "sha256": "0h865ipn97k9yrj4r0qhfdj2vnwk92720ahim22sw86605ljc77z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5naW5nIGJhY2sgdmVydGljYWxseSBzdGFja2VkIHdvcmtzcGFjZXMiLAogICJuYW1lIjogIlZlcnRpY2FsIG92ZXJ2aWV3IiwKICAib3JpZ2luYWwtYXV0aG9yIjogInJlbnMuYWx0aHVpc0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ2ZXJ0aWNhbC1vdmVydmlld0BSZW5zQWx0aHVpcy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "41": {"version": "8", "sha256": "0h865ipn97k9yrj4r0qhfdj2vnwk92720ahim22sw86605ljc77z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkJyaW5naW5nIGJhY2sgdmVydGljYWxseSBzdGFja2VkIHdvcmtzcGFjZXMiLAogICJuYW1lIjogIlZlcnRpY2FsIG92ZXJ2aWV3IiwKICAib3JpZ2luYWwtYXV0aG9yIjogInJlbnMuYWx0aHVpc0BnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ2ZXJ0aWNhbC1vdmVydmlld0BSZW5zQWx0aHVpcy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
 , {"uuid": "workspace-isolated_app-switcher@lestibournes", "name": "Workspace-Isolated App-Switcher", "pname": "workspace-isolated-app-switcher", "description": "App-Switcher modification that shows only the apps that are running on the current workspace. Fork of App-Switcher Current Workspace First by fawtytoo.", "link": "https://extensions.gnome.org/extension/4145/workspace-isolated-app-switcher/", "shell_version_map": {"38": {"version": "1", "sha256": "0bcf8l1sb73f0ggvavkfjk10s67k7w4f3yr0s9inil6z8pbk7bsr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFwcC1Td2l0Y2hlciBtb2RpZmljYXRpb24gdGhhdCBzaG93cyBvbmx5IHRoZSBhcHBzIHRoYXQgYXJlIHJ1bm5pbmcgb24gdGhlIGN1cnJlbnQgd29ya3NwYWNlLiBGb3JrIG9mIEFwcC1Td2l0Y2hlciBDdXJyZW50IFdvcmtzcGFjZSBGaXJzdCBieSBmYXd0eXRvby4iLAogICJuYW1lIjogIldvcmtzcGFjZS1Jc29sYXRlZCBBcHAtU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMjIiLAogICAgIjMuMjQiLAogICAgIjMuMjYiLAogICAgIjMuMjgiLAogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAid29ya3NwYWNlLWlzb2xhdGVkX2FwcC1zd2l0Y2hlckBsZXN0aWJvdXJuZXMiLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "kubectl@infinicode.de", "name": "Kubectl Extension", "pname": "kubectl-extension", "description": "Quick panel access to kubernetes resources utilizing kubectl CLI", "link": "https://extensions.gnome.org/extension/4147/kubectl-extension/", "shell_version_map": {"38": {"version": "4", "sha256": "1lcmkyns6s4nv9ag9h80vs4cxrjxw907b3bxzqvs7ig9s1h41rqm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrIHBhbmVsIGFjY2VzcyB0byBrdWJlcm5ldGVzIHJlc291cmNlcyB1dGlsaXppbmcga3ViZWN0bCBDTEkiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIkt1YmVjdGwgRXh0ZW5zaW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMva3ViZWN0bC1leHRlbnNpb24iLAogICJ1dWlkIjogImt1YmVjdGxAaW5maW5pY29kZS5kZSIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "1lcmkyns6s4nv9ag9h80vs4cxrjxw907b3bxzqvs7ig9s1h41rqm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrIHBhbmVsIGFjY2VzcyB0byBrdWJlcm5ldGVzIHJlc291cmNlcyB1dGlsaXppbmcga3ViZWN0bCBDTEkiLAogICJsb2NhbGVkaXIiOiAiL3Vzci9sb2NhbC9zaGFyZS9sb2NhbGUiLAogICJuYW1lIjogIkt1YmVjdGwgRXh0ZW5zaW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2NpbmF0aWMva3ViZWN0bC1leHRlbnNpb24iLAogICJ1dWlkIjogImt1YmVjdGxAaW5maW5pY29kZS5kZSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "alwaysshowworkspacethumbnails@alynx.one", "name": "Always Show Workspace Thumbnails", "pname": "always-show-workspace-thumbnails", "description": "Always show workspace thumbnails even there is only one workspace.", "link": "https://extensions.gnome.org/extension/4156/always-show-workspace-thumbnails/", "shell_version_map": {"40": {"version": "3", "sha256": "08z8ij9cj198g7cw3mr9spy1pirqhxkhmqwhg2vysql9bwhc3w1q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBzaG93IHdvcmtzcGFjZSB0aHVtYm5haWxzIGV2ZW4gdGhlcmUgaXMgb25seSBvbmUgd29ya3NwYWNlLiIsCiAgIm5hbWUiOiAiQWx3YXlzIFNob3cgV29ya3NwYWNlIFRodW1ibmFpbHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FseW54WmhvdS9nbm9tZS1zaGVsbC1leHRlbnNpb24tYWx3YXlzLXNob3ctd29ya3NwYWNlLXRodW1ibmFpbHMvIiwKICAidXVpZCI6ICJhbHdheXNzaG93d29ya3NwYWNldGh1bWJuYWlsc0BhbHlueC5vbmUiLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "08z8ij9cj198g7cw3mr9spy1pirqhxkhmqwhg2vysql9bwhc3w1q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsd2F5cyBzaG93IHdvcmtzcGFjZSB0aHVtYm5haWxzIGV2ZW4gdGhlcmUgaXMgb25seSBvbmUgd29ya3NwYWNlLiIsCiAgIm5hbWUiOiAiQWx3YXlzIFNob3cgV29ya3NwYWNlIFRodW1ibmFpbHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0FseW54WmhvdS9nbm9tZS1zaGVsbC1leHRlbnNpb24tYWx3YXlzLXNob3ctd29ya3NwYWNlLXRodW1ibmFpbHMvIiwKICAidXVpZCI6ICJhbHdheXNzaG93d29ya3NwYWNldGh1bWJuYWlsc0BhbHlueC5vbmUiLAogICJ2ZXJzaW9uIjogMwp9"}}}
-, {"uuid": "gnome-ui-tune@itstime.tech", "name": "Gnome 4x UI Improvements", "pname": "gnome-40-ui-improvements", "description": "Tunes gnome 40/41/42's Overview UI to make it more usable.\n\nChanges:\n- Search textbox is hidden by default and shown only when user begins to type-to-search\n- Scale of workspaces' thumbnails increased 2x\n- Restores wallpaper on workspaces' thumbnails. No more gray background\n- Show workspaces' thumbnails even when there is only one workspace\n- Firefox's PIP (picture in picture) window is now displayed on the overview screen\n\nAll modifications can be disabled in the extension's settings.\n\nATTENTION!\nAfter extension update, gnome-shell restart is required:\nX11: Alt+F2 => r\nWayland: logout => login", "link": "https://extensions.gnome.org/extension/4158/gnome-40-ui-improvements/", "shell_version_map": {"40": {"version": "8", "sha256": "1fdh5gmsan5i3jqlfnmhd4df9lldxnr13ajqimmkhv22nk6mazw7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR1bmVzIGdub21lIDQwLzQxLzQyJ3MgT3ZlcnZpZXcgVUkgdG8gbWFrZSBpdCBtb3JlIHVzYWJsZS5cblxuQ2hhbmdlczpcbi0gU2VhcmNoIHRleHRib3ggaXMgaGlkZGVuIGJ5IGRlZmF1bHQgYW5kIHNob3duIG9ubHkgd2hlbiB1c2VyIGJlZ2lucyB0byB0eXBlLXRvLXNlYXJjaFxuLSBTY2FsZSBvZiB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGluY3JlYXNlZCAyeFxuLSBSZXN0b3JlcyB3YWxscGFwZXIgb24gd29ya3NwYWNlcycgdGh1bWJuYWlscy4gTm8gbW9yZSBncmF5IGJhY2tncm91bmRcbi0gU2hvdyB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGV2ZW4gd2hlbiB0aGVyZSBpcyBvbmx5IG9uZSB3b3Jrc3BhY2Vcbi0gRmlyZWZveCdzIFBJUCAocGljdHVyZSBpbiBwaWN0dXJlKSB3aW5kb3cgaXMgbm93IGRpc3BsYXllZCBvbiB0aGUgb3ZlcnZpZXcgc2NyZWVuXG5cbkFsbCBtb2RpZmljYXRpb25zIGNhbiBiZSBkaXNhYmxlZCBpbiB0aGUgZXh0ZW5zaW9uJ3Mgc2V0dGluZ3MuXG5cbkFUVEVOVElPTiFcbkFmdGVyIGV4dGVuc2lvbiB1cGRhdGUsIGdub21lLXNoZWxsIHJlc3RhcnQgaXMgcmVxdWlyZWQ6XG5YMTE6IEFsdCtGMiA9PiByXG5XYXlsYW5kOiBsb2dvdXQgPT4gbG9naW4iLAogICJuYW1lIjogIkdub21lIDR4IFVJIEltcHJvdmVtZW50cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS11aS10dW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXh4YXB5L2dub21lLXVpLXR1bmUiLAogICJ1dWlkIjogImdub21lLXVpLXR1bmVAaXRzdGltZS50ZWNoIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "41": {"version": "8", "sha256": "1fdh5gmsan5i3jqlfnmhd4df9lldxnr13ajqimmkhv22nk6mazw7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR1bmVzIGdub21lIDQwLzQxLzQyJ3MgT3ZlcnZpZXcgVUkgdG8gbWFrZSBpdCBtb3JlIHVzYWJsZS5cblxuQ2hhbmdlczpcbi0gU2VhcmNoIHRleHRib3ggaXMgaGlkZGVuIGJ5IGRlZmF1bHQgYW5kIHNob3duIG9ubHkgd2hlbiB1c2VyIGJlZ2lucyB0byB0eXBlLXRvLXNlYXJjaFxuLSBTY2FsZSBvZiB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGluY3JlYXNlZCAyeFxuLSBSZXN0b3JlcyB3YWxscGFwZXIgb24gd29ya3NwYWNlcycgdGh1bWJuYWlscy4gTm8gbW9yZSBncmF5IGJhY2tncm91bmRcbi0gU2hvdyB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGV2ZW4gd2hlbiB0aGVyZSBpcyBvbmx5IG9uZSB3b3Jrc3BhY2Vcbi0gRmlyZWZveCdzIFBJUCAocGljdHVyZSBpbiBwaWN0dXJlKSB3aW5kb3cgaXMgbm93IGRpc3BsYXllZCBvbiB0aGUgb3ZlcnZpZXcgc2NyZWVuXG5cbkFsbCBtb2RpZmljYXRpb25zIGNhbiBiZSBkaXNhYmxlZCBpbiB0aGUgZXh0ZW5zaW9uJ3Mgc2V0dGluZ3MuXG5cbkFUVEVOVElPTiFcbkFmdGVyIGV4dGVuc2lvbiB1cGRhdGUsIGdub21lLXNoZWxsIHJlc3RhcnQgaXMgcmVxdWlyZWQ6XG5YMTE6IEFsdCtGMiA9PiByXG5XYXlsYW5kOiBsb2dvdXQgPT4gbG9naW4iLAogICJuYW1lIjogIkdub21lIDR4IFVJIEltcHJvdmVtZW50cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS11aS10dW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXh4YXB5L2dub21lLXVpLXR1bmUiLAogICJ1dWlkIjogImdub21lLXVpLXR1bmVAaXRzdGltZS50ZWNoIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
+, {"uuid": "gnome-ui-tune@itstime.tech", "name": "Gnome 4x UI Improvements", "pname": "gnome-40-ui-improvements", "description": "Tunes gnome 40/41/42's Overview UI to make it more usable.\n\nChanges:\n- Search textbox is hidden by default and shown only when user begins to type-to-search\n- Scale of workspaces' thumbnails increased 2x\n- Restores wallpaper on workspaces' thumbnails. No more gray background\n- Show workspaces' thumbnails even when there is only one workspace\n- Firefox's PIP (picture in picture) window is now displayed on the overview screen\n\nAll modifications can be disabled in the extension's settings.\n\nATTENTION!\nAfter extension update, gnome-shell restart is required:\nX11: Alt+F2 => r\nWayland: logout => login", "link": "https://extensions.gnome.org/extension/4158/gnome-40-ui-improvements/", "shell_version_map": {"40": {"version": "9", "sha256": "1712psni5pnqi99pgk27aan3iw5v6z8pv7qszgjkwl6ckzjijcnx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR1bmVzIGdub21lIDQwLzQxLzQyJ3MgT3ZlcnZpZXcgVUkgdG8gbWFrZSBpdCBtb3JlIHVzYWJsZS5cblxuQ2hhbmdlczpcbi0gU2VhcmNoIHRleHRib3ggaXMgaGlkZGVuIGJ5IGRlZmF1bHQgYW5kIHNob3duIG9ubHkgd2hlbiB1c2VyIGJlZ2lucyB0byB0eXBlLXRvLXNlYXJjaFxuLSBTY2FsZSBvZiB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGluY3JlYXNlZCAyeFxuLSBSZXN0b3JlcyB3YWxscGFwZXIgb24gd29ya3NwYWNlcycgdGh1bWJuYWlscy4gTm8gbW9yZSBncmF5IGJhY2tncm91bmRcbi0gU2hvdyB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGV2ZW4gd2hlbiB0aGVyZSBpcyBvbmx5IG9uZSB3b3Jrc3BhY2Vcbi0gRmlyZWZveCdzIFBJUCAocGljdHVyZSBpbiBwaWN0dXJlKSB3aW5kb3cgaXMgbm93IGRpc3BsYXllZCBvbiB0aGUgb3ZlcnZpZXcgc2NyZWVuXG5cbkFsbCBtb2RpZmljYXRpb25zIGNhbiBiZSBkaXNhYmxlZCBpbiB0aGUgZXh0ZW5zaW9uJ3Mgc2V0dGluZ3MuXG5cbkFUVEVOVElPTiFcbkFmdGVyIGV4dGVuc2lvbiB1cGRhdGUsIGdub21lLXNoZWxsIHJlc3RhcnQgaXMgcmVxdWlyZWQ6XG5YMTE6IEFsdCtGMiA9PiByXG5XYXlsYW5kOiBsb2dvdXQgPT4gbG9naW4iLAogICJuYW1lIjogIkdub21lIDR4IFVJIEltcHJvdmVtZW50cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS11aS10dW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXh4YXB5L2dub21lLXVpLXR1bmUiLAogICJ1dWlkIjogImdub21lLXVpLXR1bmVAaXRzdGltZS50ZWNoIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "41": {"version": "9", "sha256": "1712psni5pnqi99pgk27aan3iw5v6z8pv7qszgjkwl6ckzjijcnx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR1bmVzIGdub21lIDQwLzQxLzQyJ3MgT3ZlcnZpZXcgVUkgdG8gbWFrZSBpdCBtb3JlIHVzYWJsZS5cblxuQ2hhbmdlczpcbi0gU2VhcmNoIHRleHRib3ggaXMgaGlkZGVuIGJ5IGRlZmF1bHQgYW5kIHNob3duIG9ubHkgd2hlbiB1c2VyIGJlZ2lucyB0byB0eXBlLXRvLXNlYXJjaFxuLSBTY2FsZSBvZiB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGluY3JlYXNlZCAyeFxuLSBSZXN0b3JlcyB3YWxscGFwZXIgb24gd29ya3NwYWNlcycgdGh1bWJuYWlscy4gTm8gbW9yZSBncmF5IGJhY2tncm91bmRcbi0gU2hvdyB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGV2ZW4gd2hlbiB0aGVyZSBpcyBvbmx5IG9uZSB3b3Jrc3BhY2Vcbi0gRmlyZWZveCdzIFBJUCAocGljdHVyZSBpbiBwaWN0dXJlKSB3aW5kb3cgaXMgbm93IGRpc3BsYXllZCBvbiB0aGUgb3ZlcnZpZXcgc2NyZWVuXG5cbkFsbCBtb2RpZmljYXRpb25zIGNhbiBiZSBkaXNhYmxlZCBpbiB0aGUgZXh0ZW5zaW9uJ3Mgc2V0dGluZ3MuXG5cbkFUVEVOVElPTiFcbkFmdGVyIGV4dGVuc2lvbiB1cGRhdGUsIGdub21lLXNoZWxsIHJlc3RhcnQgaXMgcmVxdWlyZWQ6XG5YMTE6IEFsdCtGMiA9PiByXG5XYXlsYW5kOiBsb2dvdXQgPT4gbG9naW4iLAogICJuYW1lIjogIkdub21lIDR4IFVJIEltcHJvdmVtZW50cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS11aS10dW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXh4YXB5L2dub21lLXVpLXR1bmUiLAogICJ1dWlkIjogImdub21lLXVpLXR1bmVAaXRzdGltZS50ZWNoIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "42": {"version": "9", "sha256": "1712psni5pnqi99pgk27aan3iw5v6z8pv7qszgjkwl6ckzjijcnx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlR1bmVzIGdub21lIDQwLzQxLzQyJ3MgT3ZlcnZpZXcgVUkgdG8gbWFrZSBpdCBtb3JlIHVzYWJsZS5cblxuQ2hhbmdlczpcbi0gU2VhcmNoIHRleHRib3ggaXMgaGlkZGVuIGJ5IGRlZmF1bHQgYW5kIHNob3duIG9ubHkgd2hlbiB1c2VyIGJlZ2lucyB0byB0eXBlLXRvLXNlYXJjaFxuLSBTY2FsZSBvZiB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGluY3JlYXNlZCAyeFxuLSBSZXN0b3JlcyB3YWxscGFwZXIgb24gd29ya3NwYWNlcycgdGh1bWJuYWlscy4gTm8gbW9yZSBncmF5IGJhY2tncm91bmRcbi0gU2hvdyB3b3Jrc3BhY2VzJyB0aHVtYm5haWxzIGV2ZW4gd2hlbiB0aGVyZSBpcyBvbmx5IG9uZSB3b3Jrc3BhY2Vcbi0gRmlyZWZveCdzIFBJUCAocGljdHVyZSBpbiBwaWN0dXJlKSB3aW5kb3cgaXMgbm93IGRpc3BsYXllZCBvbiB0aGUgb3ZlcnZpZXcgc2NyZWVuXG5cbkFsbCBtb2RpZmljYXRpb25zIGNhbiBiZSBkaXNhYmxlZCBpbiB0aGUgZXh0ZW5zaW9uJ3Mgc2V0dGluZ3MuXG5cbkFUVEVOVElPTiFcbkFmdGVyIGV4dGVuc2lvbiB1cGRhdGUsIGdub21lLXNoZWxsIHJlc3RhcnQgaXMgcmVxdWlyZWQ6XG5YMTE6IEFsdCtGMiA9PiByXG5XYXlsYW5kOiBsb2dvdXQgPT4gbG9naW4iLAogICJuYW1lIjogIkdub21lIDR4IFVJIEltcHJvdmVtZW50cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS11aS10dW5lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXh4YXB5L2dub21lLXVpLXR1bmUiLAogICJ1dWlkIjogImdub21lLXVpLXR1bmVAaXRzdGltZS50ZWNoIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
 , {"uuid": "monitor-window-switcher@thefungusrocket.com", "name": "Monitor window switcher", "pname": "monitor-window-switcher", "description": "Improves the window switcher on dual (or more) monitor setups", "link": "https://extensions.gnome.org/extension/4164/monitor-window-switcher/", "shell_version_map": {"38": {"version": "6", "sha256": "0pazjbi0aikpnvnfxyamqy70xi1xclydyxdkf908c6ybwnc5956z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkltcHJvdmVzIHRoZSB3aW5kb3cgc3dpdGNoZXIgb24gZHVhbCAob3IgbW9yZSkgbW9uaXRvciBzZXR1cHMiLAogICJuYW1lIjogIk1vbml0b3Igd2luZG93IHN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nZWR6ZXBwZWxpbi9tb25pdG9yLXdpbmRvdy1zd2l0Y2hlciIsCiAgInV1aWQiOiAibW9uaXRvci13aW5kb3ctc3dpdGNoZXJAdGhlZnVuZ3Vzcm9ja2V0LmNvbSIsCiAgInZlcnNpb24iOiA2Cn0="}, "40": {"version": "6", "sha256": "0pazjbi0aikpnvnfxyamqy70xi1xclydyxdkf908c6ybwnc5956z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkltcHJvdmVzIHRoZSB3aW5kb3cgc3dpdGNoZXIgb24gZHVhbCAob3IgbW9yZSkgbW9uaXRvciBzZXR1cHMiLAogICJuYW1lIjogIk1vbml0b3Igd2luZG93IHN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nZWR6ZXBwZWxpbi9tb25pdG9yLXdpbmRvdy1zd2l0Y2hlciIsCiAgInV1aWQiOiAibW9uaXRvci13aW5kb3ctc3dpdGNoZXJAdGhlZnVuZ3Vzcm9ja2V0LmNvbSIsCiAgInZlcnNpb24iOiA2Cn0="}, "41": {"version": "6", "sha256": "0pazjbi0aikpnvnfxyamqy70xi1xclydyxdkf908c6ybwnc5956z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkltcHJvdmVzIHRoZSB3aW5kb3cgc3dpdGNoZXIgb24gZHVhbCAob3IgbW9yZSkgbW9uaXRvciBzZXR1cHMiLAogICJuYW1lIjogIk1vbml0b3Igd2luZG93IHN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9nZWR6ZXBwZWxpbi9tb25pdG9yLXdpbmRvdy1zd2l0Y2hlciIsCiAgInV1aWQiOiAibW9uaXRvci13aW5kb3ctc3dpdGNoZXJAdGhlZnVuZ3Vzcm9ja2V0LmNvbSIsCiAgInZlcnNpb24iOiA2Cn0="}}}
-, {"uuid": "custom-hot-corners-extended@G-dH.github.com", "name": "Custom Hot Corners - Extended", "pname": "custom-hot-corners-extended", "description": "Give a function to any corner or edge of your monitors and expand your keyboard capabilities.\nMouse pointer pressure, clicks and scrolls over the corners/edges or keyboard shortcuts can trigger any of dozens of built-in actions that helps you navigate and control your desktop environment or your own shell commands.\n\nThis extension is a big collection of actions that allows you navigate and control the Gnome Shell environment and windows and launch applications and scripts not only through the corners and edges of your monitors, but also using the custom keyboard shortcuts.\nSignificant part of available actions are visual adjustments (contrast, brightness, opacity) and color filters (red, green, desaturate, lightness and color inversions) , including correction filters for colorblind users and cb simulation filters for developers.\n\nRestart your Gnome Shell after each update of the extension to load new code, and reload this site to get rid of the error message, before you post a bug report.\nPlease report bugs/issues on GitHub linked below and add output from these two commands:\njournalctl /usr/bin/gnome-shell --since \"2 days ago\" | grep corners-extended\njournalctl /usr/bin/gjs --since \"2 days ago\" | grep corners-extended\n\nkeywords: overview, app grid, command, brightness, contrast, transparent, opacity, color effect, invert lightness, color tint, color blind filter, simulation, desaturate, night lights, dark theme, volume, mute, magnifier, zoom, screen keyboard, reader, large text, force close, kill -9, show desktop, reorder workspace, window thumbnail / preview, looking glass, custom menu, window, workspace, switcher, hide panel", "link": "https://extensions.gnome.org/extension/4167/custom-hot-corners-extended/", "shell_version_map": {"38": {"version": "15", "sha256": "1qmaxd7z2fwn51nhgaki07kgi0v3rmz7nx71fhg2vz4d66ypg4ff", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdmUgYSBmdW5jdGlvbiB0byBhbnkgY29ybmVyIG9yIGVkZ2Ugb2YgeW91ciBtb25pdG9ycyBhbmQgZXhwYW5kIHlvdXIga2V5Ym9hcmQgY2FwYWJpbGl0aWVzLlxuTW91c2UgcG9pbnRlciBwcmVzc3VyZSwgY2xpY2tzIGFuZCBzY3JvbGxzIG92ZXIgdGhlIGNvcm5lcnMvZWRnZXMgb3Iga2V5Ym9hcmQgc2hvcnRjdXRzIGNhbiB0cmlnZ2VyIGFueSBvZiBkb3plbnMgb2YgYnVpbHQtaW4gYWN0aW9ucyB0aGF0IGhlbHBzIHlvdSBuYXZpZ2F0ZSBhbmQgY29udHJvbCB5b3VyIGRlc2t0b3AgZW52aXJvbm1lbnQgb3IgeW91ciBvd24gc2hlbGwgY29tbWFuZHMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGEgYmlnIGNvbGxlY3Rpb24gb2YgYWN0aW9ucyB0aGF0IGFsbG93cyB5b3UgbmF2aWdhdGUgYW5kIGNvbnRyb2wgdGhlIEdub21lIFNoZWxsIGVudmlyb25tZW50IGFuZCB3aW5kb3dzIGFuZCBsYXVuY2ggYXBwbGljYXRpb25zIGFuZCBzY3JpcHRzIG5vdCBvbmx5IHRocm91Z2ggdGhlIGNvcm5lcnMgYW5kIGVkZ2VzIG9mIHlvdXIgbW9uaXRvcnMsIGJ1dCBhbHNvIHVzaW5nIHRoZSBjdXN0b20ga2V5Ym9hcmQgc2hvcnRjdXRzLlxuU2lnbmlmaWNhbnQgcGFydCBvZiBhdmFpbGFibGUgYWN0aW9ucyBhcmUgdmlzdWFsIGFkanVzdG1lbnRzIChjb250cmFzdCwgYnJpZ2h0bmVzcywgb3BhY2l0eSkgYW5kIGNvbG9yIGZpbHRlcnMgKHJlZCwgZ3JlZW4sIGRlc2F0dXJhdGUsIGxpZ2h0bmVzcyBhbmQgY29sb3IgaW52ZXJzaW9ucykgLCBpbmNsdWRpbmcgY29ycmVjdGlvbiBmaWx0ZXJzIGZvciBjb2xvcmJsaW5kIHVzZXJzIGFuZCBjYiBzaW11bGF0aW9uIGZpbHRlcnMgZm9yIGRldmVsb3BlcnMuXG5cblJlc3RhcnQgeW91ciBHbm9tZSBTaGVsbCBhZnRlciBlYWNoIHVwZGF0ZSBvZiB0aGUgZXh0ZW5zaW9uIHRvIGxvYWQgbmV3IGNvZGUsIGFuZCByZWxvYWQgdGhpcyBzaXRlIHRvIGdldCByaWQgb2YgdGhlIGVycm9yIG1lc3NhZ2UsIGJlZm9yZSB5b3UgcG9zdCBhIGJ1ZyByZXBvcnQuXG5QbGVhc2UgcmVwb3J0IGJ1Z3MvaXNzdWVzIG9uIEdpdEh1YiBsaW5rZWQgYmVsb3cgYW5kIGFkZCBvdXRwdXQgZnJvbSB0aGVzZSB0d28gY29tbWFuZHM6XG5qb3VybmFsY3RsIC91c3IvYmluL2dub21lLXNoZWxsIC0tc2luY2UgXCIyIGRheXMgYWdvXCIgfCBncmVwIGNvcm5lcnMtZXh0ZW5kZWRcbmpvdXJuYWxjdGwgL3Vzci9iaW4vZ2pzIC0tc2luY2UgXCIyIGRheXMgYWdvXCIgfCBncmVwIGNvcm5lcnMtZXh0ZW5kZWRcblxua2V5d29yZHM6IG92ZXJ2aWV3LCBhcHAgZ3JpZCwgY29tbWFuZCwgYnJpZ2h0bmVzcywgY29udHJhc3QsIHRyYW5zcGFyZW50LCBvcGFjaXR5LCBjb2xvciBlZmZlY3QsIGludmVydCBsaWdodG5lc3MsIGNvbG9yIHRpbnQsIGNvbG9yIGJsaW5kIGZpbHRlciwgc2ltdWxhdGlvbiwgZGVzYXR1cmF0ZSwgbmlnaHQgbGlnaHRzLCBkYXJrIHRoZW1lLCB2b2x1bWUsIG11dGUsIG1hZ25pZmllciwgem9vbSwgc2NyZWVuIGtleWJvYXJkLCByZWFkZXIsIGxhcmdlIHRleHQsIGZvcmNlIGNsb3NlLCBraWxsIC05LCBzaG93IGRlc2t0b3AsIHJlb3JkZXIgd29ya3NwYWNlLCB3aW5kb3cgdGh1bWJuYWlsIC8gcHJldmlldywgbG9va2luZyBnbGFzcywgY3VzdG9tIG1lbnUsIHdpbmRvdywgd29ya3NwYWNlLCBzd2l0Y2hlciwgaGlkZSBwYW5lbCIsCiAgImdldHRleHQtZG9tYWluIjogImN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZCIsCiAgIm5hbWUiOiAiQ3VzdG9tIEhvdCBDb3JuZXJzIC0gRXh0ZW5kZWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3VzdG9tLWhvdC1jb3JuZXJzLWV4dGVuZGVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9jdXN0b20taG90LWNvcm5lcnMvdHJlZS9nZGgiLAogICJ1dWlkIjogImN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZEBHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}, "40": {"version": "15", "sha256": "1qmaxd7z2fwn51nhgaki07kgi0v3rmz7nx71fhg2vz4d66ypg4ff", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdmUgYSBmdW5jdGlvbiB0byBhbnkgY29ybmVyIG9yIGVkZ2Ugb2YgeW91ciBtb25pdG9ycyBhbmQgZXhwYW5kIHlvdXIga2V5Ym9hcmQgY2FwYWJpbGl0aWVzLlxuTW91c2UgcG9pbnRlciBwcmVzc3VyZSwgY2xpY2tzIGFuZCBzY3JvbGxzIG92ZXIgdGhlIGNvcm5lcnMvZWRnZXMgb3Iga2V5Ym9hcmQgc2hvcnRjdXRzIGNhbiB0cmlnZ2VyIGFueSBvZiBkb3plbnMgb2YgYnVpbHQtaW4gYWN0aW9ucyB0aGF0IGhlbHBzIHlvdSBuYXZpZ2F0ZSBhbmQgY29udHJvbCB5b3VyIGRlc2t0b3AgZW52aXJvbm1lbnQgb3IgeW91ciBvd24gc2hlbGwgY29tbWFuZHMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGEgYmlnIGNvbGxlY3Rpb24gb2YgYWN0aW9ucyB0aGF0IGFsbG93cyB5b3UgbmF2aWdhdGUgYW5kIGNvbnRyb2wgdGhlIEdub21lIFNoZWxsIGVudmlyb25tZW50IGFuZCB3aW5kb3dzIGFuZCBsYXVuY2ggYXBwbGljYXRpb25zIGFuZCBzY3JpcHRzIG5vdCBvbmx5IHRocm91Z2ggdGhlIGNvcm5lcnMgYW5kIGVkZ2VzIG9mIHlvdXIgbW9uaXRvcnMsIGJ1dCBhbHNvIHVzaW5nIHRoZSBjdXN0b20ga2V5Ym9hcmQgc2hvcnRjdXRzLlxuU2lnbmlmaWNhbnQgcGFydCBvZiBhdmFpbGFibGUgYWN0aW9ucyBhcmUgdmlzdWFsIGFkanVzdG1lbnRzIChjb250cmFzdCwgYnJpZ2h0bmVzcywgb3BhY2l0eSkgYW5kIGNvbG9yIGZpbHRlcnMgKHJlZCwgZ3JlZW4sIGRlc2F0dXJhdGUsIGxpZ2h0bmVzcyBhbmQgY29sb3IgaW52ZXJzaW9ucykgLCBpbmNsdWRpbmcgY29ycmVjdGlvbiBmaWx0ZXJzIGZvciBjb2xvcmJsaW5kIHVzZXJzIGFuZCBjYiBzaW11bGF0aW9uIGZpbHRlcnMgZm9yIGRldmVsb3BlcnMuXG5cblJlc3RhcnQgeW91ciBHbm9tZSBTaGVsbCBhZnRlciBlYWNoIHVwZGF0ZSBvZiB0aGUgZXh0ZW5zaW9uIHRvIGxvYWQgbmV3IGNvZGUsIGFuZCByZWxvYWQgdGhpcyBzaXRlIHRvIGdldCByaWQgb2YgdGhlIGVycm9yIG1lc3NhZ2UsIGJlZm9yZSB5b3UgcG9zdCBhIGJ1ZyByZXBvcnQuXG5QbGVhc2UgcmVwb3J0IGJ1Z3MvaXNzdWVzIG9uIEdpdEh1YiBsaW5rZWQgYmVsb3cgYW5kIGFkZCBvdXRwdXQgZnJvbSB0aGVzZSB0d28gY29tbWFuZHM6XG5qb3VybmFsY3RsIC91c3IvYmluL2dub21lLXNoZWxsIC0tc2luY2UgXCIyIGRheXMgYWdvXCIgfCBncmVwIGNvcm5lcnMtZXh0ZW5kZWRcbmpvdXJuYWxjdGwgL3Vzci9iaW4vZ2pzIC0tc2luY2UgXCIyIGRheXMgYWdvXCIgfCBncmVwIGNvcm5lcnMtZXh0ZW5kZWRcblxua2V5d29yZHM6IG92ZXJ2aWV3LCBhcHAgZ3JpZCwgY29tbWFuZCwgYnJpZ2h0bmVzcywgY29udHJhc3QsIHRyYW5zcGFyZW50LCBvcGFjaXR5LCBjb2xvciBlZmZlY3QsIGludmVydCBsaWdodG5lc3MsIGNvbG9yIHRpbnQsIGNvbG9yIGJsaW5kIGZpbHRlciwgc2ltdWxhdGlvbiwgZGVzYXR1cmF0ZSwgbmlnaHQgbGlnaHRzLCBkYXJrIHRoZW1lLCB2b2x1bWUsIG11dGUsIG1hZ25pZmllciwgem9vbSwgc2NyZWVuIGtleWJvYXJkLCByZWFkZXIsIGxhcmdlIHRleHQsIGZvcmNlIGNsb3NlLCBraWxsIC05LCBzaG93IGRlc2t0b3AsIHJlb3JkZXIgd29ya3NwYWNlLCB3aW5kb3cgdGh1bWJuYWlsIC8gcHJldmlldywgbG9va2luZyBnbGFzcywgY3VzdG9tIG1lbnUsIHdpbmRvdywgd29ya3NwYWNlLCBzd2l0Y2hlciwgaGlkZSBwYW5lbCIsCiAgImdldHRleHQtZG9tYWluIjogImN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZCIsCiAgIm5hbWUiOiAiQ3VzdG9tIEhvdCBDb3JuZXJzIC0gRXh0ZW5kZWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3VzdG9tLWhvdC1jb3JuZXJzLWV4dGVuZGVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9jdXN0b20taG90LWNvcm5lcnMvdHJlZS9nZGgiLAogICJ1dWlkIjogImN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZEBHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}, "41": {"version": "15", "sha256": "1qmaxd7z2fwn51nhgaki07kgi0v3rmz7nx71fhg2vz4d66ypg4ff", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdmUgYSBmdW5jdGlvbiB0byBhbnkgY29ybmVyIG9yIGVkZ2Ugb2YgeW91ciBtb25pdG9ycyBhbmQgZXhwYW5kIHlvdXIga2V5Ym9hcmQgY2FwYWJpbGl0aWVzLlxuTW91c2UgcG9pbnRlciBwcmVzc3VyZSwgY2xpY2tzIGFuZCBzY3JvbGxzIG92ZXIgdGhlIGNvcm5lcnMvZWRnZXMgb3Iga2V5Ym9hcmQgc2hvcnRjdXRzIGNhbiB0cmlnZ2VyIGFueSBvZiBkb3plbnMgb2YgYnVpbHQtaW4gYWN0aW9ucyB0aGF0IGhlbHBzIHlvdSBuYXZpZ2F0ZSBhbmQgY29udHJvbCB5b3VyIGRlc2t0b3AgZW52aXJvbm1lbnQgb3IgeW91ciBvd24gc2hlbGwgY29tbWFuZHMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGEgYmlnIGNvbGxlY3Rpb24gb2YgYWN0aW9ucyB0aGF0IGFsbG93cyB5b3UgbmF2aWdhdGUgYW5kIGNvbnRyb2wgdGhlIEdub21lIFNoZWxsIGVudmlyb25tZW50IGFuZCB3aW5kb3dzIGFuZCBsYXVuY2ggYXBwbGljYXRpb25zIGFuZCBzY3JpcHRzIG5vdCBvbmx5IHRocm91Z2ggdGhlIGNvcm5lcnMgYW5kIGVkZ2VzIG9mIHlvdXIgbW9uaXRvcnMsIGJ1dCBhbHNvIHVzaW5nIHRoZSBjdXN0b20ga2V5Ym9hcmQgc2hvcnRjdXRzLlxuU2lnbmlmaWNhbnQgcGFydCBvZiBhdmFpbGFibGUgYWN0aW9ucyBhcmUgdmlzdWFsIGFkanVzdG1lbnRzIChjb250cmFzdCwgYnJpZ2h0bmVzcywgb3BhY2l0eSkgYW5kIGNvbG9yIGZpbHRlcnMgKHJlZCwgZ3JlZW4sIGRlc2F0dXJhdGUsIGxpZ2h0bmVzcyBhbmQgY29sb3IgaW52ZXJzaW9ucykgLCBpbmNsdWRpbmcgY29ycmVjdGlvbiBmaWx0ZXJzIGZvciBjb2xvcmJsaW5kIHVzZXJzIGFuZCBjYiBzaW11bGF0aW9uIGZpbHRlcnMgZm9yIGRldmVsb3BlcnMuXG5cblJlc3RhcnQgeW91ciBHbm9tZSBTaGVsbCBhZnRlciBlYWNoIHVwZGF0ZSBvZiB0aGUgZXh0ZW5zaW9uIHRvIGxvYWQgbmV3IGNvZGUsIGFuZCByZWxvYWQgdGhpcyBzaXRlIHRvIGdldCByaWQgb2YgdGhlIGVycm9yIG1lc3NhZ2UsIGJlZm9yZSB5b3UgcG9zdCBhIGJ1ZyByZXBvcnQuXG5QbGVhc2UgcmVwb3J0IGJ1Z3MvaXNzdWVzIG9uIEdpdEh1YiBsaW5rZWQgYmVsb3cgYW5kIGFkZCBvdXRwdXQgZnJvbSB0aGVzZSB0d28gY29tbWFuZHM6XG5qb3VybmFsY3RsIC91c3IvYmluL2dub21lLXNoZWxsIC0tc2luY2UgXCIyIGRheXMgYWdvXCIgfCBncmVwIGNvcm5lcnMtZXh0ZW5kZWRcbmpvdXJuYWxjdGwgL3Vzci9iaW4vZ2pzIC0tc2luY2UgXCIyIGRheXMgYWdvXCIgfCBncmVwIGNvcm5lcnMtZXh0ZW5kZWRcblxua2V5d29yZHM6IG92ZXJ2aWV3LCBhcHAgZ3JpZCwgY29tbWFuZCwgYnJpZ2h0bmVzcywgY29udHJhc3QsIHRyYW5zcGFyZW50LCBvcGFjaXR5LCBjb2xvciBlZmZlY3QsIGludmVydCBsaWdodG5lc3MsIGNvbG9yIHRpbnQsIGNvbG9yIGJsaW5kIGZpbHRlciwgc2ltdWxhdGlvbiwgZGVzYXR1cmF0ZSwgbmlnaHQgbGlnaHRzLCBkYXJrIHRoZW1lLCB2b2x1bWUsIG11dGUsIG1hZ25pZmllciwgem9vbSwgc2NyZWVuIGtleWJvYXJkLCByZWFkZXIsIGxhcmdlIHRleHQsIGZvcmNlIGNsb3NlLCBraWxsIC05LCBzaG93IGRlc2t0b3AsIHJlb3JkZXIgd29ya3NwYWNlLCB3aW5kb3cgdGh1bWJuYWlsIC8gcHJldmlldywgbG9va2luZyBnbGFzcywgY3VzdG9tIG1lbnUsIHdpbmRvdywgd29ya3NwYWNlLCBzd2l0Y2hlciwgaGlkZSBwYW5lbCIsCiAgImdldHRleHQtZG9tYWluIjogImN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZCIsCiAgIm5hbWUiOiAiQ3VzdG9tIEhvdCBDb3JuZXJzIC0gRXh0ZW5kZWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY3VzdG9tLWhvdC1jb3JuZXJzLWV4dGVuZGVkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9jdXN0b20taG90LWNvcm5lcnMvdHJlZS9nZGgiLAogICJ1dWlkIjogImN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZEBHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}}}
+, {"uuid": "custom-hot-corners-extended@G-dH.github.com", "name": "Custom Hot Corners - Extended", "pname": "custom-hot-corners-extended", "description": "Give a function to any corner or edge of your monitors and expand your keyboard capabilities.\nMouse pointer pressure, clicks and scrolls over the corners/edges or keyboard shortcuts can trigger any of dozens of built-in actions that helps you navigate and control your desktop environment or your own shell commands.\n\nThis extension is a big collection of actions that allows you navigate and control the Gnome Shell environment and windows and launch applications and scripts not only through the corners and edges of your monitors, but also using the custom keyboard shortcuts.\nSignificant part of available actions are visual adjustments (contrast, brightness, opacity) and color filters (red, green, desaturate, lightness and color inversions) , including correction filters for colorblind users and cb simulation filters for developers.\n\nRestart your Gnome Shell after each update of the extension to load new code, and reload this site to get rid of the error message, before you post a bug report.\nPlease report bugs/issues on GitHub linked below.\n\nkeywords: overview, app grid, command, brightness, contrast, transparent, opacity, color effect, invert lightness, color tint, color blind filter, simulation, desaturate, night lights, dark theme, volume, mute, magnifier, zoom, screen keyboard, reader, large text, force close, kill -9, show desktop, reorder workspace, window thumbnail / preview, looking glass, custom menu, window, workspace, switcher, hide panel", "link": "https://extensions.gnome.org/extension/4167/custom-hot-corners-extended/", "shell_version_map": {"38": {"version": "15", "sha256": "1sx830zkf5w00d9j5kw1l8hk3mpm35ifqd250jbhaag0b3j2bqy5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdmUgYSBmdW5jdGlvbiB0byBhbnkgY29ybmVyIG9yIGVkZ2Ugb2YgeW91ciBtb25pdG9ycyBhbmQgZXhwYW5kIHlvdXIga2V5Ym9hcmQgY2FwYWJpbGl0aWVzLlxuTW91c2UgcG9pbnRlciBwcmVzc3VyZSwgY2xpY2tzIGFuZCBzY3JvbGxzIG92ZXIgdGhlIGNvcm5lcnMvZWRnZXMgb3Iga2V5Ym9hcmQgc2hvcnRjdXRzIGNhbiB0cmlnZ2VyIGFueSBvZiBkb3plbnMgb2YgYnVpbHQtaW4gYWN0aW9ucyB0aGF0IGhlbHBzIHlvdSBuYXZpZ2F0ZSBhbmQgY29udHJvbCB5b3VyIGRlc2t0b3AgZW52aXJvbm1lbnQgb3IgeW91ciBvd24gc2hlbGwgY29tbWFuZHMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGEgYmlnIGNvbGxlY3Rpb24gb2YgYWN0aW9ucyB0aGF0IGFsbG93cyB5b3UgbmF2aWdhdGUgYW5kIGNvbnRyb2wgdGhlIEdub21lIFNoZWxsIGVudmlyb25tZW50IGFuZCB3aW5kb3dzIGFuZCBsYXVuY2ggYXBwbGljYXRpb25zIGFuZCBzY3JpcHRzIG5vdCBvbmx5IHRocm91Z2ggdGhlIGNvcm5lcnMgYW5kIGVkZ2VzIG9mIHlvdXIgbW9uaXRvcnMsIGJ1dCBhbHNvIHVzaW5nIHRoZSBjdXN0b20ga2V5Ym9hcmQgc2hvcnRjdXRzLlxuU2lnbmlmaWNhbnQgcGFydCBvZiBhdmFpbGFibGUgYWN0aW9ucyBhcmUgdmlzdWFsIGFkanVzdG1lbnRzIChjb250cmFzdCwgYnJpZ2h0bmVzcywgb3BhY2l0eSkgYW5kIGNvbG9yIGZpbHRlcnMgKHJlZCwgZ3JlZW4sIGRlc2F0dXJhdGUsIGxpZ2h0bmVzcyBhbmQgY29sb3IgaW52ZXJzaW9ucykgLCBpbmNsdWRpbmcgY29ycmVjdGlvbiBmaWx0ZXJzIGZvciBjb2xvcmJsaW5kIHVzZXJzIGFuZCBjYiBzaW11bGF0aW9uIGZpbHRlcnMgZm9yIGRldmVsb3BlcnMuXG5cblJlc3RhcnQgeW91ciBHbm9tZSBTaGVsbCBhZnRlciBlYWNoIHVwZGF0ZSBvZiB0aGUgZXh0ZW5zaW9uIHRvIGxvYWQgbmV3IGNvZGUsIGFuZCByZWxvYWQgdGhpcyBzaXRlIHRvIGdldCByaWQgb2YgdGhlIGVycm9yIG1lc3NhZ2UsIGJlZm9yZSB5b3UgcG9zdCBhIGJ1ZyByZXBvcnQuXG5QbGVhc2UgcmVwb3J0IGJ1Z3MvaXNzdWVzIG9uIEdpdEh1YiBsaW5rZWQgYmVsb3cuXG5cbmtleXdvcmRzOiBvdmVydmlldywgYXBwIGdyaWQsIGNvbW1hbmQsIGJyaWdodG5lc3MsIGNvbnRyYXN0LCB0cmFuc3BhcmVudCwgb3BhY2l0eSwgY29sb3IgZWZmZWN0LCBpbnZlcnQgbGlnaHRuZXNzLCBjb2xvciB0aW50LCBjb2xvciBibGluZCBmaWx0ZXIsIHNpbXVsYXRpb24sIGRlc2F0dXJhdGUsIG5pZ2h0IGxpZ2h0cywgZGFyayB0aGVtZSwgdm9sdW1lLCBtdXRlLCBtYWduaWZpZXIsIHpvb20sIHNjcmVlbiBrZXlib2FyZCwgcmVhZGVyLCBsYXJnZSB0ZXh0LCBmb3JjZSBjbG9zZSwga2lsbCAtOSwgc2hvdyBkZXNrdG9wLCByZW9yZGVyIHdvcmtzcGFjZSwgd2luZG93IHRodW1ibmFpbCAvIHByZXZpZXcsIGxvb2tpbmcgZ2xhc3MsIGN1c3RvbSBtZW51LCB3aW5kb3csIHdvcmtzcGFjZSwgc3dpdGNoZXIsIGhpZGUgcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjdXN0b20taG90LWNvcm5lcnMtZXh0ZW5kZWQiLAogICJuYW1lIjogIkN1c3RvbSBIb3QgQ29ybmVycyAtIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvY3VzdG9tLWhvdC1jb3JuZXJzL3RyZWUvZ2RoIiwKICAidXVpZCI6ICJjdXN0b20taG90LWNvcm5lcnMtZXh0ZW5kZWRARy1kSC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE1Cn0="}, "40": {"version": "15", "sha256": "1sx830zkf5w00d9j5kw1l8hk3mpm35ifqd250jbhaag0b3j2bqy5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdmUgYSBmdW5jdGlvbiB0byBhbnkgY29ybmVyIG9yIGVkZ2Ugb2YgeW91ciBtb25pdG9ycyBhbmQgZXhwYW5kIHlvdXIga2V5Ym9hcmQgY2FwYWJpbGl0aWVzLlxuTW91c2UgcG9pbnRlciBwcmVzc3VyZSwgY2xpY2tzIGFuZCBzY3JvbGxzIG92ZXIgdGhlIGNvcm5lcnMvZWRnZXMgb3Iga2V5Ym9hcmQgc2hvcnRjdXRzIGNhbiB0cmlnZ2VyIGFueSBvZiBkb3plbnMgb2YgYnVpbHQtaW4gYWN0aW9ucyB0aGF0IGhlbHBzIHlvdSBuYXZpZ2F0ZSBhbmQgY29udHJvbCB5b3VyIGRlc2t0b3AgZW52aXJvbm1lbnQgb3IgeW91ciBvd24gc2hlbGwgY29tbWFuZHMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGEgYmlnIGNvbGxlY3Rpb24gb2YgYWN0aW9ucyB0aGF0IGFsbG93cyB5b3UgbmF2aWdhdGUgYW5kIGNvbnRyb2wgdGhlIEdub21lIFNoZWxsIGVudmlyb25tZW50IGFuZCB3aW5kb3dzIGFuZCBsYXVuY2ggYXBwbGljYXRpb25zIGFuZCBzY3JpcHRzIG5vdCBvbmx5IHRocm91Z2ggdGhlIGNvcm5lcnMgYW5kIGVkZ2VzIG9mIHlvdXIgbW9uaXRvcnMsIGJ1dCBhbHNvIHVzaW5nIHRoZSBjdXN0b20ga2V5Ym9hcmQgc2hvcnRjdXRzLlxuU2lnbmlmaWNhbnQgcGFydCBvZiBhdmFpbGFibGUgYWN0aW9ucyBhcmUgdmlzdWFsIGFkanVzdG1lbnRzIChjb250cmFzdCwgYnJpZ2h0bmVzcywgb3BhY2l0eSkgYW5kIGNvbG9yIGZpbHRlcnMgKHJlZCwgZ3JlZW4sIGRlc2F0dXJhdGUsIGxpZ2h0bmVzcyBhbmQgY29sb3IgaW52ZXJzaW9ucykgLCBpbmNsdWRpbmcgY29ycmVjdGlvbiBmaWx0ZXJzIGZvciBjb2xvcmJsaW5kIHVzZXJzIGFuZCBjYiBzaW11bGF0aW9uIGZpbHRlcnMgZm9yIGRldmVsb3BlcnMuXG5cblJlc3RhcnQgeW91ciBHbm9tZSBTaGVsbCBhZnRlciBlYWNoIHVwZGF0ZSBvZiB0aGUgZXh0ZW5zaW9uIHRvIGxvYWQgbmV3IGNvZGUsIGFuZCByZWxvYWQgdGhpcyBzaXRlIHRvIGdldCByaWQgb2YgdGhlIGVycm9yIG1lc3NhZ2UsIGJlZm9yZSB5b3UgcG9zdCBhIGJ1ZyByZXBvcnQuXG5QbGVhc2UgcmVwb3J0IGJ1Z3MvaXNzdWVzIG9uIEdpdEh1YiBsaW5rZWQgYmVsb3cuXG5cbmtleXdvcmRzOiBvdmVydmlldywgYXBwIGdyaWQsIGNvbW1hbmQsIGJyaWdodG5lc3MsIGNvbnRyYXN0LCB0cmFuc3BhcmVudCwgb3BhY2l0eSwgY29sb3IgZWZmZWN0LCBpbnZlcnQgbGlnaHRuZXNzLCBjb2xvciB0aW50LCBjb2xvciBibGluZCBmaWx0ZXIsIHNpbXVsYXRpb24sIGRlc2F0dXJhdGUsIG5pZ2h0IGxpZ2h0cywgZGFyayB0aGVtZSwgdm9sdW1lLCBtdXRlLCBtYWduaWZpZXIsIHpvb20sIHNjcmVlbiBrZXlib2FyZCwgcmVhZGVyLCBsYXJnZSB0ZXh0LCBmb3JjZSBjbG9zZSwga2lsbCAtOSwgc2hvdyBkZXNrdG9wLCByZW9yZGVyIHdvcmtzcGFjZSwgd2luZG93IHRodW1ibmFpbCAvIHByZXZpZXcsIGxvb2tpbmcgZ2xhc3MsIGN1c3RvbSBtZW51LCB3aW5kb3csIHdvcmtzcGFjZSwgc3dpdGNoZXIsIGhpZGUgcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjdXN0b20taG90LWNvcm5lcnMtZXh0ZW5kZWQiLAogICJuYW1lIjogIkN1c3RvbSBIb3QgQ29ybmVycyAtIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvY3VzdG9tLWhvdC1jb3JuZXJzL3RyZWUvZ2RoIiwKICAidXVpZCI6ICJjdXN0b20taG90LWNvcm5lcnMtZXh0ZW5kZWRARy1kSC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE1Cn0="}, "41": {"version": "15", "sha256": "1sx830zkf5w00d9j5kw1l8hk3mpm35ifqd250jbhaag0b3j2bqy5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdmUgYSBmdW5jdGlvbiB0byBhbnkgY29ybmVyIG9yIGVkZ2Ugb2YgeW91ciBtb25pdG9ycyBhbmQgZXhwYW5kIHlvdXIga2V5Ym9hcmQgY2FwYWJpbGl0aWVzLlxuTW91c2UgcG9pbnRlciBwcmVzc3VyZSwgY2xpY2tzIGFuZCBzY3JvbGxzIG92ZXIgdGhlIGNvcm5lcnMvZWRnZXMgb3Iga2V5Ym9hcmQgc2hvcnRjdXRzIGNhbiB0cmlnZ2VyIGFueSBvZiBkb3plbnMgb2YgYnVpbHQtaW4gYWN0aW9ucyB0aGF0IGhlbHBzIHlvdSBuYXZpZ2F0ZSBhbmQgY29udHJvbCB5b3VyIGRlc2t0b3AgZW52aXJvbm1lbnQgb3IgeW91ciBvd24gc2hlbGwgY29tbWFuZHMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGEgYmlnIGNvbGxlY3Rpb24gb2YgYWN0aW9ucyB0aGF0IGFsbG93cyB5b3UgbmF2aWdhdGUgYW5kIGNvbnRyb2wgdGhlIEdub21lIFNoZWxsIGVudmlyb25tZW50IGFuZCB3aW5kb3dzIGFuZCBsYXVuY2ggYXBwbGljYXRpb25zIGFuZCBzY3JpcHRzIG5vdCBvbmx5IHRocm91Z2ggdGhlIGNvcm5lcnMgYW5kIGVkZ2VzIG9mIHlvdXIgbW9uaXRvcnMsIGJ1dCBhbHNvIHVzaW5nIHRoZSBjdXN0b20ga2V5Ym9hcmQgc2hvcnRjdXRzLlxuU2lnbmlmaWNhbnQgcGFydCBvZiBhdmFpbGFibGUgYWN0aW9ucyBhcmUgdmlzdWFsIGFkanVzdG1lbnRzIChjb250cmFzdCwgYnJpZ2h0bmVzcywgb3BhY2l0eSkgYW5kIGNvbG9yIGZpbHRlcnMgKHJlZCwgZ3JlZW4sIGRlc2F0dXJhdGUsIGxpZ2h0bmVzcyBhbmQgY29sb3IgaW52ZXJzaW9ucykgLCBpbmNsdWRpbmcgY29ycmVjdGlvbiBmaWx0ZXJzIGZvciBjb2xvcmJsaW5kIHVzZXJzIGFuZCBjYiBzaW11bGF0aW9uIGZpbHRlcnMgZm9yIGRldmVsb3BlcnMuXG5cblJlc3RhcnQgeW91ciBHbm9tZSBTaGVsbCBhZnRlciBlYWNoIHVwZGF0ZSBvZiB0aGUgZXh0ZW5zaW9uIHRvIGxvYWQgbmV3IGNvZGUsIGFuZCByZWxvYWQgdGhpcyBzaXRlIHRvIGdldCByaWQgb2YgdGhlIGVycm9yIG1lc3NhZ2UsIGJlZm9yZSB5b3UgcG9zdCBhIGJ1ZyByZXBvcnQuXG5QbGVhc2UgcmVwb3J0IGJ1Z3MvaXNzdWVzIG9uIEdpdEh1YiBsaW5rZWQgYmVsb3cuXG5cbmtleXdvcmRzOiBvdmVydmlldywgYXBwIGdyaWQsIGNvbW1hbmQsIGJyaWdodG5lc3MsIGNvbnRyYXN0LCB0cmFuc3BhcmVudCwgb3BhY2l0eSwgY29sb3IgZWZmZWN0LCBpbnZlcnQgbGlnaHRuZXNzLCBjb2xvciB0aW50LCBjb2xvciBibGluZCBmaWx0ZXIsIHNpbXVsYXRpb24sIGRlc2F0dXJhdGUsIG5pZ2h0IGxpZ2h0cywgZGFyayB0aGVtZSwgdm9sdW1lLCBtdXRlLCBtYWduaWZpZXIsIHpvb20sIHNjcmVlbiBrZXlib2FyZCwgcmVhZGVyLCBsYXJnZSB0ZXh0LCBmb3JjZSBjbG9zZSwga2lsbCAtOSwgc2hvdyBkZXNrdG9wLCByZW9yZGVyIHdvcmtzcGFjZSwgd2luZG93IHRodW1ibmFpbCAvIHByZXZpZXcsIGxvb2tpbmcgZ2xhc3MsIGN1c3RvbSBtZW51LCB3aW5kb3csIHdvcmtzcGFjZSwgc3dpdGNoZXIsIGhpZGUgcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjdXN0b20taG90LWNvcm5lcnMtZXh0ZW5kZWQiLAogICJuYW1lIjogIkN1c3RvbSBIb3QgQ29ybmVycyAtIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvY3VzdG9tLWhvdC1jb3JuZXJzL3RyZWUvZ2RoIiwKICAidXVpZCI6ICJjdXN0b20taG90LWNvcm5lcnMtZXh0ZW5kZWRARy1kSC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE1Cn0="}, "42": {"version": "15", "sha256": "1sx830zkf5w00d9j5kw1l8hk3mpm35ifqd250jbhaag0b3j2bqy5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdpdmUgYSBmdW5jdGlvbiB0byBhbnkgY29ybmVyIG9yIGVkZ2Ugb2YgeW91ciBtb25pdG9ycyBhbmQgZXhwYW5kIHlvdXIga2V5Ym9hcmQgY2FwYWJpbGl0aWVzLlxuTW91c2UgcG9pbnRlciBwcmVzc3VyZSwgY2xpY2tzIGFuZCBzY3JvbGxzIG92ZXIgdGhlIGNvcm5lcnMvZWRnZXMgb3Iga2V5Ym9hcmQgc2hvcnRjdXRzIGNhbiB0cmlnZ2VyIGFueSBvZiBkb3plbnMgb2YgYnVpbHQtaW4gYWN0aW9ucyB0aGF0IGhlbHBzIHlvdSBuYXZpZ2F0ZSBhbmQgY29udHJvbCB5b3VyIGRlc2t0b3AgZW52aXJvbm1lbnQgb3IgeW91ciBvd24gc2hlbGwgY29tbWFuZHMuXG5cblRoaXMgZXh0ZW5zaW9uIGlzIGEgYmlnIGNvbGxlY3Rpb24gb2YgYWN0aW9ucyB0aGF0IGFsbG93cyB5b3UgbmF2aWdhdGUgYW5kIGNvbnRyb2wgdGhlIEdub21lIFNoZWxsIGVudmlyb25tZW50IGFuZCB3aW5kb3dzIGFuZCBsYXVuY2ggYXBwbGljYXRpb25zIGFuZCBzY3JpcHRzIG5vdCBvbmx5IHRocm91Z2ggdGhlIGNvcm5lcnMgYW5kIGVkZ2VzIG9mIHlvdXIgbW9uaXRvcnMsIGJ1dCBhbHNvIHVzaW5nIHRoZSBjdXN0b20ga2V5Ym9hcmQgc2hvcnRjdXRzLlxuU2lnbmlmaWNhbnQgcGFydCBvZiBhdmFpbGFibGUgYWN0aW9ucyBhcmUgdmlzdWFsIGFkanVzdG1lbnRzIChjb250cmFzdCwgYnJpZ2h0bmVzcywgb3BhY2l0eSkgYW5kIGNvbG9yIGZpbHRlcnMgKHJlZCwgZ3JlZW4sIGRlc2F0dXJhdGUsIGxpZ2h0bmVzcyBhbmQgY29sb3IgaW52ZXJzaW9ucykgLCBpbmNsdWRpbmcgY29ycmVjdGlvbiBmaWx0ZXJzIGZvciBjb2xvcmJsaW5kIHVzZXJzIGFuZCBjYiBzaW11bGF0aW9uIGZpbHRlcnMgZm9yIGRldmVsb3BlcnMuXG5cblJlc3RhcnQgeW91ciBHbm9tZSBTaGVsbCBhZnRlciBlYWNoIHVwZGF0ZSBvZiB0aGUgZXh0ZW5zaW9uIHRvIGxvYWQgbmV3IGNvZGUsIGFuZCByZWxvYWQgdGhpcyBzaXRlIHRvIGdldCByaWQgb2YgdGhlIGVycm9yIG1lc3NhZ2UsIGJlZm9yZSB5b3UgcG9zdCBhIGJ1ZyByZXBvcnQuXG5QbGVhc2UgcmVwb3J0IGJ1Z3MvaXNzdWVzIG9uIEdpdEh1YiBsaW5rZWQgYmVsb3cuXG5cbmtleXdvcmRzOiBvdmVydmlldywgYXBwIGdyaWQsIGNvbW1hbmQsIGJyaWdodG5lc3MsIGNvbnRyYXN0LCB0cmFuc3BhcmVudCwgb3BhY2l0eSwgY29sb3IgZWZmZWN0LCBpbnZlcnQgbGlnaHRuZXNzLCBjb2xvciB0aW50LCBjb2xvciBibGluZCBmaWx0ZXIsIHNpbXVsYXRpb24sIGRlc2F0dXJhdGUsIG5pZ2h0IGxpZ2h0cywgZGFyayB0aGVtZSwgdm9sdW1lLCBtdXRlLCBtYWduaWZpZXIsIHpvb20sIHNjcmVlbiBrZXlib2FyZCwgcmVhZGVyLCBsYXJnZSB0ZXh0LCBmb3JjZSBjbG9zZSwga2lsbCAtOSwgc2hvdyBkZXNrdG9wLCByZW9yZGVyIHdvcmtzcGFjZSwgd2luZG93IHRodW1ibmFpbCAvIHByZXZpZXcsIGxvb2tpbmcgZ2xhc3MsIGN1c3RvbSBtZW51LCB3aW5kb3csIHdvcmtzcGFjZSwgc3dpdGNoZXIsIGhpZGUgcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjdXN0b20taG90LWNvcm5lcnMtZXh0ZW5kZWQiLAogICJuYW1lIjogIkN1c3RvbSBIb3QgQ29ybmVycyAtIEV4dGVuZGVkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmN1c3RvbS1ob3QtY29ybmVycy1leHRlbmRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvY3VzdG9tLWhvdC1jb3JuZXJzL3RyZWUvZ2RoIiwKICAidXVpZCI6ICJjdXN0b20taG90LWNvcm5lcnMtZXh0ZW5kZWRARy1kSC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDE1Cn0="}}}
 , {"uuid": "hass-gshell@geoph9-on-github", "name": "Home Assistant Extension", "pname": "home-assistant-extension", "description": "A simple gnome shell extension for Home Assistant. Check the README on github for additional help!\n\nMain points:\n- You need to provide the url of your hass, a long live access token obtained from your profile page (on your hass web instance) and the entity ids of the entities you want to have as togglable.\n- In order to add some local temperature/humidity sensor, you may also provide a temperature and/or a humidity entity id (which should match the corresponding ids of your hass instance).", "link": "https://extensions.gnome.org/extension/4170/home-assistant-extension/", "shell_version_map": {"38": {"version": "3", "sha256": "04p2hvxyyc1zv441sv0l1dcxbdvzqp46mii3zvw0nhq8jg5pz8rr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIGdub21lIHNoZWxsIGV4dGVuc2lvbiBmb3IgSG9tZSBBc3Npc3RhbnQuIENoZWNrIHRoZSBSRUFETUUgb24gZ2l0aHViIGZvciBhZGRpdGlvbmFsIGhlbHAhXG5cbk1haW4gcG9pbnRzOlxuLSBZb3UgbmVlZCB0byBwcm92aWRlIHRoZSB1cmwgb2YgeW91ciBoYXNzLCBhIGxvbmcgbGl2ZSBhY2Nlc3MgdG9rZW4gb2J0YWluZWQgZnJvbSB5b3VyIHByb2ZpbGUgcGFnZSAob24geW91ciBoYXNzIHdlYiBpbnN0YW5jZSkgYW5kIHRoZSBlbnRpdHkgaWRzIG9mIHRoZSBlbnRpdGllcyB5b3Ugd2FudCB0byBoYXZlIGFzIHRvZ2dsYWJsZS5cbi0gSW4gb3JkZXIgdG8gYWRkIHNvbWUgbG9jYWwgdGVtcGVyYXR1cmUvaHVtaWRpdHkgc2Vuc29yLCB5b3UgbWF5IGFsc28gcHJvdmlkZSBhIHRlbXBlcmF0dXJlIGFuZC9vciBhIGh1bWlkaXR5IGVudGl0eSBpZCAod2hpY2ggc2hvdWxkIG1hdGNoIHRoZSBjb3JyZXNwb25kaW5nIGlkcyBvZiB5b3VyIGhhc3MgaW5zdGFuY2UpLiIsCiAgIm5hbWUiOiAiSG9tZSBBc3Npc3RhbnQgRXh0ZW5zaW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmhhc3MtZGF0YSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dlb3BoOS9oYXNzLWdzaGVsbC1leHRlbnNpb24iLAogICJ1dWlkIjogImhhc3MtZ3NoZWxsQGdlb3BoOS1vbi1naXRodWIiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "6", "sha256": "1wajx49ci9146wi10z2nvhgc1iw7mfqp8a8z5gr708f90vfy93lc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIGdub21lIHNoZWxsIGV4dGVuc2lvbiBmb3IgSG9tZSBBc3Npc3RhbnQuIENoZWNrIHRoZSBSRUFETUUgb24gZ2l0aHViIGZvciBhZGRpdGlvbmFsIGhlbHAhXG5cbk1haW4gcG9pbnRzOlxuLSBZb3UgbmVlZCB0byBwcm92aWRlIHRoZSB1cmwgb2YgeW91ciBoYXNzLCBhIGxvbmcgbGl2ZSBhY2Nlc3MgdG9rZW4gb2J0YWluZWQgZnJvbSB5b3VyIHByb2ZpbGUgcGFnZSAob24geW91ciBoYXNzIHdlYiBpbnN0YW5jZSkgYW5kIHRoZSBlbnRpdHkgaWRzIG9mIHRoZSBlbnRpdGllcyB5b3Ugd2FudCB0byBoYXZlIGFzIHRvZ2dsYWJsZS5cbi0gSW4gb3JkZXIgdG8gYWRkIHNvbWUgbG9jYWwgdGVtcGVyYXR1cmUvaHVtaWRpdHkgc2Vuc29yLCB5b3UgbWF5IGFsc28gcHJvdmlkZSBhIHRlbXBlcmF0dXJlIGFuZC9vciBhIGh1bWlkaXR5IGVudGl0eSBpZCAod2hpY2ggc2hvdWxkIG1hdGNoIHRoZSBjb3JyZXNwb25kaW5nIGlkcyBvZiB5b3VyIGhhc3MgaW5zdGFuY2UpLiIsCiAgIm5hbWUiOiAiSG9tZSBBc3Npc3RhbnQgRXh0ZW5zaW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmhhc3MtZGF0YSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ2VvcGg5L2hhc3MtZ3NoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiaGFzcy1nc2hlbGxAZ2VvcGg5LW9uLWdpdGh1YiIsCiAgInZlcnNpb24iOiA2Cn0="}, "41": {"version": "6", "sha256": "1wajx49ci9146wi10z2nvhgc1iw7mfqp8a8z5gr708f90vfy93lc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIGdub21lIHNoZWxsIGV4dGVuc2lvbiBmb3IgSG9tZSBBc3Npc3RhbnQuIENoZWNrIHRoZSBSRUFETUUgb24gZ2l0aHViIGZvciBhZGRpdGlvbmFsIGhlbHAhXG5cbk1haW4gcG9pbnRzOlxuLSBZb3UgbmVlZCB0byBwcm92aWRlIHRoZSB1cmwgb2YgeW91ciBoYXNzLCBhIGxvbmcgbGl2ZSBhY2Nlc3MgdG9rZW4gb2J0YWluZWQgZnJvbSB5b3VyIHByb2ZpbGUgcGFnZSAob24geW91ciBoYXNzIHdlYiBpbnN0YW5jZSkgYW5kIHRoZSBlbnRpdHkgaWRzIG9mIHRoZSBlbnRpdGllcyB5b3Ugd2FudCB0byBoYXZlIGFzIHRvZ2dsYWJsZS5cbi0gSW4gb3JkZXIgdG8gYWRkIHNvbWUgbG9jYWwgdGVtcGVyYXR1cmUvaHVtaWRpdHkgc2Vuc29yLCB5b3UgbWF5IGFsc28gcHJvdmlkZSBhIHRlbXBlcmF0dXJlIGFuZC9vciBhIGh1bWlkaXR5IGVudGl0eSBpZCAod2hpY2ggc2hvdWxkIG1hdGNoIHRoZSBjb3JyZXNwb25kaW5nIGlkcyBvZiB5b3VyIGhhc3MgaW5zdGFuY2UpLiIsCiAgIm5hbWUiOiAiSG9tZSBBc3Npc3RhbnQgRXh0ZW5zaW9uIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmhhc3MtZGF0YSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ2VvcGg5L2hhc3MtZ3NoZWxsLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiaGFzcy1nc2hlbGxAZ2VvcGg5LW9uLWdpdGh1YiIsCiAgInZlcnNpb24iOiA2Cn0="}}}
 , {"uuid": "clear-top-bar@superterran.net", "name": "Clear Top Bar", "pname": "clear-top-bar", "description": "Fully transparent topbar, pairs with the zhanghai transparent top bar extension to make bar opaque when window is maximized", "link": "https://extensions.gnome.org/extension/4173/clear-top-bar/", "shell_version_map": {"40": {"version": "5", "sha256": "12msvdg82rj34v338vsxqimy1p35isvl4db8k1sjq23ln1b6jak2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGx5IHRyYW5zcGFyZW50IHRvcGJhciwgcGFpcnMgd2l0aCB0aGUgemhhbmdoYWkgdHJhbnNwYXJlbnQgdG9wIGJhciBleHRlbnNpb24gdG8gbWFrZSBiYXIgb3BhcXVlIHdoZW4gd2luZG93IGlzIG1heGltaXplZCIsCiAgIm5hbWUiOiAiQ2xlYXIgVG9wIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3VwZXJ0ZXJyYW4vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNsZWFyLXRvcC1iYXIiLAogICJ1dWlkIjogImNsZWFyLXRvcC1iYXJAc3VwZXJ0ZXJyYW4ubmV0IiwKICAidmVyc2lvbiI6IDUKfQ=="}, "41": {"version": "5", "sha256": "12msvdg82rj34v338vsxqimy1p35isvl4db8k1sjq23ln1b6jak2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZ1bGx5IHRyYW5zcGFyZW50IHRvcGJhciwgcGFpcnMgd2l0aCB0aGUgemhhbmdoYWkgdHJhbnNwYXJlbnQgdG9wIGJhciBleHRlbnNpb24gdG8gbWFrZSBiYXIgb3BhcXVlIHdoZW4gd2luZG93IGlzIG1heGltaXplZCIsCiAgIm5hbWUiOiAiQ2xlYXIgVG9wIEJhciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3VwZXJ0ZXJyYW4vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWNsZWFyLXRvcC1iYXIiLAogICJ1dWlkIjogImNsZWFyLXRvcC1iYXJAc3VwZXJ0ZXJyYW4ubmV0IiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"uuid": "systemd-manager@hardpixel.eu", "name": "Systemd Manager", "pname": "systemd-manager", "description": "Toggle systemd services on/off from a popup menu in the top gnome panel. Can be used to start services like apache2, mysql, postgres. It uses `pkexec' to run `sytemctl'. If you want to start services without entering a password you have to polkit policy file. An example policy file can be found in the github repository.", "link": "https://extensions.gnome.org/extension/4174/systemd-manager/", "shell_version_map": {"38": {"version": "5", "sha256": "1df0xz4m2ysqk3bk7kqjjh04qwsffwc04jgihmid4whd3n2kglk5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSBzeXN0ZW1kIHNlcnZpY2VzIG9uL29mZiBmcm9tIGEgcG9wdXAgbWVudSBpbiB0aGUgdG9wIGdub21lIHBhbmVsLiBDYW4gYmUgdXNlZCB0byBzdGFydCBzZXJ2aWNlcyBsaWtlIGFwYWNoZTIsIG15c3FsLCBwb3N0Z3Jlcy4gSXQgdXNlcyBgcGtleGVjJyB0byBydW4gYHN5dGVtY3RsJy4gSWYgeW91IHdhbnQgdG8gc3RhcnQgc2VydmljZXMgd2l0aG91dCBlbnRlcmluZyBhIHBhc3N3b3JkIHlvdSBoYXZlIHRvIHBvbGtpdCBwb2xpY3kgZmlsZS4gQW4gZXhhbXBsZSBwb2xpY3kgZmlsZSBjYW4gYmUgZm91bmQgaW4gdGhlIGdpdGh1YiByZXBvc2l0b3J5LiIsCiAgImdldHRleHQtZG9tYWluIjogInN5c3RlbWQtbWFuYWdlciIsCiAgIm5hbWUiOiAiU3lzdGVtZCBNYW5hZ2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN5c3RlbWQtbWFuYWdlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGFyZHBpeGVsL3N5c3RlbWQtbWFuYWdlciIsCiAgInV1aWQiOiAic3lzdGVtZC1tYW5hZ2VyQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiA1Cn0="}, "40": {"version": "5", "sha256": "1df0xz4m2ysqk3bk7kqjjh04qwsffwc04jgihmid4whd3n2kglk5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSBzeXN0ZW1kIHNlcnZpY2VzIG9uL29mZiBmcm9tIGEgcG9wdXAgbWVudSBpbiB0aGUgdG9wIGdub21lIHBhbmVsLiBDYW4gYmUgdXNlZCB0byBzdGFydCBzZXJ2aWNlcyBsaWtlIGFwYWNoZTIsIG15c3FsLCBwb3N0Z3Jlcy4gSXQgdXNlcyBgcGtleGVjJyB0byBydW4gYHN5dGVtY3RsJy4gSWYgeW91IHdhbnQgdG8gc3RhcnQgc2VydmljZXMgd2l0aG91dCBlbnRlcmluZyBhIHBhc3N3b3JkIHlvdSBoYXZlIHRvIHBvbGtpdCBwb2xpY3kgZmlsZS4gQW4gZXhhbXBsZSBwb2xpY3kgZmlsZSBjYW4gYmUgZm91bmQgaW4gdGhlIGdpdGh1YiByZXBvc2l0b3J5LiIsCiAgImdldHRleHQtZG9tYWluIjogInN5c3RlbWQtbWFuYWdlciIsCiAgIm5hbWUiOiAiU3lzdGVtZCBNYW5hZ2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN5c3RlbWQtbWFuYWdlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGFyZHBpeGVsL3N5c3RlbWQtbWFuYWdlciIsCiAgInV1aWQiOiAic3lzdGVtZC1tYW5hZ2VyQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "1df0xz4m2ysqk3bk7kqjjh04qwsffwc04jgihmid4whd3n2kglk5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvZ2dsZSBzeXN0ZW1kIHNlcnZpY2VzIG9uL29mZiBmcm9tIGEgcG9wdXAgbWVudSBpbiB0aGUgdG9wIGdub21lIHBhbmVsLiBDYW4gYmUgdXNlZCB0byBzdGFydCBzZXJ2aWNlcyBsaWtlIGFwYWNoZTIsIG15c3FsLCBwb3N0Z3Jlcy4gSXQgdXNlcyBgcGtleGVjJyB0byBydW4gYHN5dGVtY3RsJy4gSWYgeW91IHdhbnQgdG8gc3RhcnQgc2VydmljZXMgd2l0aG91dCBlbnRlcmluZyBhIHBhc3N3b3JkIHlvdSBoYXZlIHRvIHBvbGtpdCBwb2xpY3kgZmlsZS4gQW4gZXhhbXBsZSBwb2xpY3kgZmlsZSBjYW4gYmUgZm91bmQgaW4gdGhlIGdpdGh1YiByZXBvc2l0b3J5LiIsCiAgImdldHRleHQtZG9tYWluIjogInN5c3RlbWQtbWFuYWdlciIsCiAgIm5hbWUiOiAiU3lzdGVtZCBNYW5hZ2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnN5c3RlbWQtbWFuYWdlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaGFyZHBpeGVsL3N5c3RlbWQtbWFuYWdlciIsCiAgInV1aWQiOiAic3lzdGVtZC1tYW5hZ2VyQGhhcmRwaXhlbC5ldSIsCiAgInZlcnNpb24iOiA1Cn0="}}}
@@ -488,9 +488,9 @@
 , {"uuid": "dash-to-plank@hardpixel.eu", "name": "Dash to Plank", "pname": "dash-to-plank", "description": "GNOME Shell integration for Plank, the simplest dock on the planet. To use this extension, you must have Plank installed on your system.\n\nThis extension depends on Plank. To install it:\n- Debian/Ubuntu: apt install plank\n- Fedora/RHEL: dnf install plank\n- Arch: pacman -S plank\n\n** This extension does NOT WORK on WAYLAND.", "link": "https://extensions.gnome.org/extension/4198/dash-to-plank/", "shell_version_map": {"38": {"version": "12", "sha256": "14pjbqjgg9aksjgk6mm1hkxn08qpzxiimy5qsfcrkjp31qjldan3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdOT01FIFNoZWxsIGludGVncmF0aW9uIGZvciBQbGFuaywgdGhlIHNpbXBsZXN0IGRvY2sgb24gdGhlIHBsYW5ldC4gVG8gdXNlIHRoaXMgZXh0ZW5zaW9uLCB5b3UgbXVzdCBoYXZlIFBsYW5rIGluc3RhbGxlZCBvbiB5b3VyIHN5c3RlbS5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBQbGFuay4gVG8gaW5zdGFsbCBpdDpcbi0gRGViaWFuL1VidW50dTogYXB0IGluc3RhbGwgcGxhbmtcbi0gRmVkb3JhL1JIRUw6IGRuZiBpbnN0YWxsIHBsYW5rXG4tIEFyY2g6IHBhY21hbiAtUyBwbGFua1xuXG4qKiBUaGlzIGV4dGVuc2lvbiBkb2VzIE5PVCBXT1JLIG9uIFdBWUxBTkQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaC10by1wbGFuayIsCiAgIm5hbWUiOiAiRGFzaCB0byBQbGFuayIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXNoLXRvLXBsYW5rIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvZGFzaC10by1wbGFuayIsCiAgInV1aWQiOiAiZGFzaC10by1wbGFua0BoYXJkcGl4ZWwuZXUiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "40": {"version": "12", "sha256": "14pjbqjgg9aksjgk6mm1hkxn08qpzxiimy5qsfcrkjp31qjldan3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdOT01FIFNoZWxsIGludGVncmF0aW9uIGZvciBQbGFuaywgdGhlIHNpbXBsZXN0IGRvY2sgb24gdGhlIHBsYW5ldC4gVG8gdXNlIHRoaXMgZXh0ZW5zaW9uLCB5b3UgbXVzdCBoYXZlIFBsYW5rIGluc3RhbGxlZCBvbiB5b3VyIHN5c3RlbS5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBQbGFuay4gVG8gaW5zdGFsbCBpdDpcbi0gRGViaWFuL1VidW50dTogYXB0IGluc3RhbGwgcGxhbmtcbi0gRmVkb3JhL1JIRUw6IGRuZiBpbnN0YWxsIHBsYW5rXG4tIEFyY2g6IHBhY21hbiAtUyBwbGFua1xuXG4qKiBUaGlzIGV4dGVuc2lvbiBkb2VzIE5PVCBXT1JLIG9uIFdBWUxBTkQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaC10by1wbGFuayIsCiAgIm5hbWUiOiAiRGFzaCB0byBQbGFuayIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXNoLXRvLXBsYW5rIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvZGFzaC10by1wbGFuayIsCiAgInV1aWQiOiAiZGFzaC10by1wbGFua0BoYXJkcGl4ZWwuZXUiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}, "41": {"version": "12", "sha256": "14pjbqjgg9aksjgk6mm1hkxn08qpzxiimy5qsfcrkjp31qjldan3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdOT01FIFNoZWxsIGludGVncmF0aW9uIGZvciBQbGFuaywgdGhlIHNpbXBsZXN0IGRvY2sgb24gdGhlIHBsYW5ldC4gVG8gdXNlIHRoaXMgZXh0ZW5zaW9uLCB5b3UgbXVzdCBoYXZlIFBsYW5rIGluc3RhbGxlZCBvbiB5b3VyIHN5c3RlbS5cblxuVGhpcyBleHRlbnNpb24gZGVwZW5kcyBvbiBQbGFuay4gVG8gaW5zdGFsbCBpdDpcbi0gRGViaWFuL1VidW50dTogYXB0IGluc3RhbGwgcGxhbmtcbi0gRmVkb3JhL1JIRUw6IGRuZiBpbnN0YWxsIHBsYW5rXG4tIEFyY2g6IHBhY21hbiAtUyBwbGFua1xuXG4qKiBUaGlzIGV4dGVuc2lvbiBkb2VzIE5PVCBXT1JLIG9uIFdBWUxBTkQuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZGFzaC10by1wbGFuayIsCiAgIm5hbWUiOiAiRGFzaCB0byBQbGFuayIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXNoLXRvLXBsYW5rIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJkcGl4ZWwvZGFzaC10by1wbGFuayIsCiAgInV1aWQiOiAiZGFzaC10by1wbGFua0BoYXJkcGl4ZWwuZXUiLAogICJ2ZXJzaW9uIjogMTIKfQ=="}}}
 , {"uuid": "rrc@ogarcia.me", "name": "Remove Rounded Corners", "pname": "remove-rounded-corners", "description": "Removes rounded corners from main panel or top bar", "link": "https://extensions.gnome.org/extension/4201/remove-rounded-corners/", "shell_version_map": {"40": {"version": "5", "sha256": "1rj9wxa0mazkr29ggwqx0r043cskpw7r4clgvpiw18psrn148c8f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZXMgcm91bmRlZCBjb3JuZXJzIGZyb20gbWFpbiBwYW5lbCBvciB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgUm91bmRlZCBDb3JuZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9vZ2FyY2lhL3JlbW92ZS1yb3VuZGVkLWNvcm5lcnMiLAogICJ1dWlkIjogInJyY0BvZ2FyY2lhLm1lIiwKICAidmVyc2lvbiI6IDUKfQ=="}, "41": {"version": "5", "sha256": "1rj9wxa0mazkr29ggwqx0r043cskpw7r4clgvpiw18psrn148c8f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZXMgcm91bmRlZCBjb3JuZXJzIGZyb20gbWFpbiBwYW5lbCBvciB0b3AgYmFyIiwKICAibmFtZSI6ICJSZW1vdmUgUm91bmRlZCBDb3JuZXJzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9vZ2FyY2lhL3JlbW92ZS1yb3VuZGVkLWNvcm5lcnMiLAogICJ1dWlkIjogInJyY0BvZ2FyY2lhLm1lIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
 , {"uuid": "private-switcher@dziban.com", "name": "Private Switcher", "pname": "private-switcher", "description": "Simple extension that allows you do have independent app switcher (alt-tab) for each workspace.", "link": "https://extensions.gnome.org/extension/4204/private-switcher/", "shell_version_map": {"38": {"version": "1", "sha256": "1awjnic8zca2f6viah2l4ai0pyfdyisxna9ys1zzpya11rwj6jk7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdGhhdCBhbGxvd3MgeW91IGRvIGhhdmUgaW5kZXBlbmRlbnQgYXBwIHN3aXRjaGVyIChhbHQtdGFiKSBmb3IgZWFjaCB3b3Jrc3BhY2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAicHJpdmF0ZS1zd2l0Y2hlciIsCiAgIm5hbWUiOiAiUHJpdmF0ZSBTd2l0Y2hlciIsCiAgInNjaGVtYS1pZCI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wcml2YXRlLXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC5iZXRhIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tIiwKICAidXVpZCI6ICJwcml2YXRlLXN3aXRjaGVyQGR6aWJhbi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}, "40": {"version": "1", "sha256": "1awjnic8zca2f6viah2l4ai0pyfdyisxna9ys1zzpya11rwj6jk7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdGhhdCBhbGxvd3MgeW91IGRvIGhhdmUgaW5kZXBlbmRlbnQgYXBwIHN3aXRjaGVyIChhbHQtdGFiKSBmb3IgZWFjaCB3b3Jrc3BhY2UuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAicHJpdmF0ZS1zd2l0Y2hlciIsCiAgIm5hbWUiOiAiUHJpdmF0ZSBTd2l0Y2hlciIsCiAgInNjaGVtYS1pZCI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wcml2YXRlLXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MC5iZXRhIiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tIiwKICAidXVpZCI6ICJwcml2YXRlLXN3aXRjaGVyQGR6aWJhbi5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
-, {"uuid": "colosseum@sereneblue", "name": "Colosseum", "pname": "colosseum", "description": "View live scores for your favorite sports teams.", "link": "https://extensions.gnome.org/extension/4207/colosseum/", "shell_version_map": {"40": {"version": "8", "sha256": "19fpqqmln8fmnv1g7cms63h2kiwqspknmxf3vm03as9bi8ajs47y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZpZXcgbGl2ZSBzY29yZXMgZm9yIHlvdXIgZmF2b3JpdGUgc3BvcnRzIHRlYW1zLiIsCiAgIm5hbWUiOiAiQ29sb3NzZXVtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2VyZW5lYmx1ZS9nbm9tZS1zaGVsbC1leHRlbnNpb24tY29sb3NzZXVtIiwKICAidXVpZCI6ICJjb2xvc3NldW1Ac2VyZW5lYmx1ZSIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "19fpqqmln8fmnv1g7cms63h2kiwqspknmxf3vm03as9bi8ajs47y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZpZXcgbGl2ZSBzY29yZXMgZm9yIHlvdXIgZmF2b3JpdGUgc3BvcnRzIHRlYW1zLiIsCiAgIm5hbWUiOiAiQ29sb3NzZXVtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2VyZW5lYmx1ZS9nbm9tZS1zaGVsbC1leHRlbnNpb24tY29sb3NzZXVtIiwKICAidXVpZCI6ICJjb2xvc3NldW1Ac2VyZW5lYmx1ZSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
+, {"uuid": "colosseum@sereneblue", "name": "Colosseum", "pname": "colosseum", "description": "View live scores for your favorite sports teams.", "link": "https://extensions.gnome.org/extension/4207/colosseum/", "shell_version_map": {"40": {"version": "9", "sha256": "1lkccmr32l58pb7fb566jy3wg1v7hr2x0w6zdwv5ys8fxgrjaq6r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZpZXcgbGl2ZSBzY29yZXMgZm9yIHlvdXIgZmF2b3JpdGUgc3BvcnRzIHRlYW1zLiIsCiAgIm5hbWUiOiAiQ29sb3NzZXVtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2VyZW5lYmx1ZS9nbm9tZS1zaGVsbC1leHRlbnNpb24tY29sb3NzZXVtIiwKICAidXVpZCI6ICJjb2xvc3NldW1Ac2VyZW5lYmx1ZSIsCiAgInZlcnNpb24iOiA5Cn0="}, "41": {"version": "9", "sha256": "1lkccmr32l58pb7fb566jy3wg1v7hr2x0w6zdwv5ys8fxgrjaq6r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZpZXcgbGl2ZSBzY29yZXMgZm9yIHlvdXIgZmF2b3JpdGUgc3BvcnRzIHRlYW1zLiIsCiAgIm5hbWUiOiAiQ29sb3NzZXVtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2VyZW5lYmx1ZS9nbm9tZS1zaGVsbC1leHRlbnNpb24tY29sb3NzZXVtIiwKICAidXVpZCI6ICJjb2xvc3NldW1Ac2VyZW5lYmx1ZSIsCiAgInZlcnNpb24iOiA5Cn0="}, "42": {"version": "9", "sha256": "1lkccmr32l58pb7fb566jy3wg1v7hr2x0w6zdwv5ys8fxgrjaq6r", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlZpZXcgbGl2ZSBzY29yZXMgZm9yIHlvdXIgZmF2b3JpdGUgc3BvcnRzIHRlYW1zLiIsCiAgIm5hbWUiOiAiQ29sb3NzZXVtIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2VyZW5lYmx1ZS9nbm9tZS1zaGVsbC1leHRlbnNpb24tY29sb3NzZXVtIiwKICAidXVpZCI6ICJjb2xvc3NldW1Ac2VyZW5lYmx1ZSIsCiAgInZlcnNpb24iOiA5Cn0="}}}
 , {"uuid": "gnome-plat-workspace@stonegate.me", "name": "Gnome 40 Flat Workspace", "pname": "gnome-40-plat-workspace", "description": "Remove shadow for workspace background in gnome 40.\nSource code https://github.com/stonega/gnome-extension-flat-workspace", "link": "https://extensions.gnome.org/extension/4215/gnome-40-plat-workspace/", "shell_version_map": {"40": {"version": "3", "sha256": "0ly2dab9c0l7w1axnqs7xk2szd5jm2ifgniz2snw5mwkr5pw76nb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSBzaGFkb3cgZm9yIHdvcmtzcGFjZSBiYWNrZ3JvdW5kIGluIGdub21lIDQwLlxuU291cmNlIGNvZGUgaHR0cHM6Ly9naXRodWIuY29tL3N0b25lZ2EvZ25vbWUtZXh0ZW5zaW9uLWZsYXQtd29ya3NwYWNlIiwKICAibmFtZSI6ICJHbm9tZSA0MCBGbGF0IFdvcmtzcGFjZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nbm9tZS1wbGF0LXdvcmtzcGFjZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZ25vbWUtcGxhdC13b3Jrc3BhY2VAc3RvbmVnYXRlLm1lIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "hotedge@jonathan.jdoda.ca", "name": "Hot Edge", "pname": "hot-edge", "description": "Add a hot edge that activates the overview to the bottom of the screen. This minimizes the pointer travel required to access the dash when using the new GNOME Shell 40 overview layout.\n\nNow with preference dialog!\n\nYou can find more documentation at https://github.com/jdoda/hotedge/blob/main/README.md and report issues at https://github.com/jdoda/hotedge/issues .", "link": "https://extensions.gnome.org/extension/4222/hot-edge/", "shell_version_map": {"40": {"version": "14", "sha256": "0b0l1qfjkql7xzp5qkqixmdr6rmfdz7i7y319qqwn31mwslrc1nl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGhvdCBlZGdlIHRoYXQgYWN0aXZhdGVzIHRoZSBvdmVydmlldyB0byB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uIFRoaXMgbWluaW1pemVzIHRoZSBwb2ludGVyIHRyYXZlbCByZXF1aXJlZCB0byBhY2Nlc3MgdGhlIGRhc2ggd2hlbiB1c2luZyB0aGUgbmV3IEdOT01FIFNoZWxsIDQwIG92ZXJ2aWV3IGxheW91dC5cblxuTm93IHdpdGggcHJlZmVyZW5jZSBkaWFsb2chXG5cbllvdSBjYW4gZmluZCBtb3JlIGRvY3VtZW50YXRpb24gYXQgaHR0cHM6Ly9naXRodWIuY29tL2pkb2RhL2hvdGVkZ2UvYmxvYi9tYWluL1JFQURNRS5tZCBhbmQgcmVwb3J0IGlzc3VlcyBhdCBodHRwczovL2dpdGh1Yi5jb20vamRvZGEvaG90ZWRnZS9pc3N1ZXMgLiIsCiAgIm5hbWUiOiAiSG90IEVkZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qZG9kYS9ob3RlZGdlIiwKICAidXVpZCI6ICJob3RlZGdlQGpvbmF0aGFuLmpkb2RhLmNhIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "41": {"version": "14", "sha256": "0b0l1qfjkql7xzp5qkqixmdr6rmfdz7i7y319qqwn31mwslrc1nl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGhvdCBlZGdlIHRoYXQgYWN0aXZhdGVzIHRoZSBvdmVydmlldyB0byB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uIFRoaXMgbWluaW1pemVzIHRoZSBwb2ludGVyIHRyYXZlbCByZXF1aXJlZCB0byBhY2Nlc3MgdGhlIGRhc2ggd2hlbiB1c2luZyB0aGUgbmV3IEdOT01FIFNoZWxsIDQwIG92ZXJ2aWV3IGxheW91dC5cblxuTm93IHdpdGggcHJlZmVyZW5jZSBkaWFsb2chXG5cbllvdSBjYW4gZmluZCBtb3JlIGRvY3VtZW50YXRpb24gYXQgaHR0cHM6Ly9naXRodWIuY29tL2pkb2RhL2hvdGVkZ2UvYmxvYi9tYWluL1JFQURNRS5tZCBhbmQgcmVwb3J0IGlzc3VlcyBhdCBodHRwczovL2dpdGh1Yi5jb20vamRvZGEvaG90ZWRnZS9pc3N1ZXMgLiIsCiAgIm5hbWUiOiAiSG90IEVkZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qZG9kYS9ob3RlZGdlIiwKICAidXVpZCI6ICJob3RlZGdlQGpvbmF0aGFuLmpkb2RhLmNhIiwKICAidmVyc2lvbiI6IDE0Cn0="}}}
+, {"uuid": "hotedge@jonathan.jdoda.ca", "name": "Hot Edge", "pname": "hot-edge", "description": "Add a hot edge that activates the overview to the bottom of the screen. This minimizes the pointer travel required to access the dash when using the new GNOME Shell 40 overview layout.\n\nNow with preference dialog!\n\nYou can find more documentation at https://github.com/jdoda/hotedge/blob/main/README.md and report issues at https://github.com/jdoda/hotedge/issues .", "link": "https://extensions.gnome.org/extension/4222/hot-edge/", "shell_version_map": {"40": {"version": "14", "sha256": "0b0l1qfjkql7xzp5qkqixmdr6rmfdz7i7y319qqwn31mwslrc1nl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGhvdCBlZGdlIHRoYXQgYWN0aXZhdGVzIHRoZSBvdmVydmlldyB0byB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uIFRoaXMgbWluaW1pemVzIHRoZSBwb2ludGVyIHRyYXZlbCByZXF1aXJlZCB0byBhY2Nlc3MgdGhlIGRhc2ggd2hlbiB1c2luZyB0aGUgbmV3IEdOT01FIFNoZWxsIDQwIG92ZXJ2aWV3IGxheW91dC5cblxuTm93IHdpdGggcHJlZmVyZW5jZSBkaWFsb2chXG5cbllvdSBjYW4gZmluZCBtb3JlIGRvY3VtZW50YXRpb24gYXQgaHR0cHM6Ly9naXRodWIuY29tL2pkb2RhL2hvdGVkZ2UvYmxvYi9tYWluL1JFQURNRS5tZCBhbmQgcmVwb3J0IGlzc3VlcyBhdCBodHRwczovL2dpdGh1Yi5jb20vamRvZGEvaG90ZWRnZS9pc3N1ZXMgLiIsCiAgIm5hbWUiOiAiSG90IEVkZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qZG9kYS9ob3RlZGdlIiwKICAidXVpZCI6ICJob3RlZGdlQGpvbmF0aGFuLmpkb2RhLmNhIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "41": {"version": "14", "sha256": "0b0l1qfjkql7xzp5qkqixmdr6rmfdz7i7y319qqwn31mwslrc1nl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGhvdCBlZGdlIHRoYXQgYWN0aXZhdGVzIHRoZSBvdmVydmlldyB0byB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uIFRoaXMgbWluaW1pemVzIHRoZSBwb2ludGVyIHRyYXZlbCByZXF1aXJlZCB0byBhY2Nlc3MgdGhlIGRhc2ggd2hlbiB1c2luZyB0aGUgbmV3IEdOT01FIFNoZWxsIDQwIG92ZXJ2aWV3IGxheW91dC5cblxuTm93IHdpdGggcHJlZmVyZW5jZSBkaWFsb2chXG5cbllvdSBjYW4gZmluZCBtb3JlIGRvY3VtZW50YXRpb24gYXQgaHR0cHM6Ly9naXRodWIuY29tL2pkb2RhL2hvdGVkZ2UvYmxvYi9tYWluL1JFQURNRS5tZCBhbmQgcmVwb3J0IGlzc3VlcyBhdCBodHRwczovL2dpdGh1Yi5jb20vamRvZGEvaG90ZWRnZS9pc3N1ZXMgLiIsCiAgIm5hbWUiOiAiSG90IEVkZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qZG9kYS9ob3RlZGdlIiwKICAidXVpZCI6ICJob3RlZGdlQGpvbmF0aGFuLmpkb2RhLmNhIiwKICAidmVyc2lvbiI6IDE0Cn0="}, "42": {"version": "14", "sha256": "0b0l1qfjkql7xzp5qkqixmdr6rmfdz7i7y319qqwn31mwslrc1nl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGhvdCBlZGdlIHRoYXQgYWN0aXZhdGVzIHRoZSBvdmVydmlldyB0byB0aGUgYm90dG9tIG9mIHRoZSBzY3JlZW4uIFRoaXMgbWluaW1pemVzIHRoZSBwb2ludGVyIHRyYXZlbCByZXF1aXJlZCB0byBhY2Nlc3MgdGhlIGRhc2ggd2hlbiB1c2luZyB0aGUgbmV3IEdOT01FIFNoZWxsIDQwIG92ZXJ2aWV3IGxheW91dC5cblxuTm93IHdpdGggcHJlZmVyZW5jZSBkaWFsb2chXG5cbllvdSBjYW4gZmluZCBtb3JlIGRvY3VtZW50YXRpb24gYXQgaHR0cHM6Ly9naXRodWIuY29tL2pkb2RhL2hvdGVkZ2UvYmxvYi9tYWluL1JFQURNRS5tZCBhbmQgcmVwb3J0IGlzc3VlcyBhdCBodHRwczovL2dpdGh1Yi5jb20vamRvZGEvaG90ZWRnZS9pc3N1ZXMgLiIsCiAgIm5hbWUiOiAiSG90IEVkZ2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qZG9kYS9ob3RlZGdlIiwKICAidXVpZCI6ICJob3RlZGdlQGpvbmF0aGFuLmpkb2RhLmNhIiwKICAidmVyc2lvbiI6IDE0Cn0="}}}
 , {"uuid": "gnome-citeurl-search-provider@raindrum.github.io", "name": "Legal Citation Search", "pname": "gnome-citeurl-search-provider", "description": "This extension lets you look up U.S. state and federal laws and court cases by typing citations (like \"42 USC 1983\" or \"U.S. Constitution Art. I, Sec. 3\") into the search bar.\nBy default, the search supports the U.S. Code and federal constitution, as well as nearly all codified state laws and constitutions, among other sources of law. You can also add more types of citation by following the instructions on the GitHub page.", "link": "https://extensions.gnome.org/extension/4225/gnome-citeurl-search-provider/", "shell_version_map": {"38": {"version": "6", "sha256": "024d98642smciv5n2vc4l2f8rglfrv180paj1g2rrq9k4pvg6yym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGxldHMgeW91IGxvb2sgdXAgVS5TLiBzdGF0ZSBhbmQgZmVkZXJhbCBsYXdzIGFuZCBjb3VydCBjYXNlcyBieSB0eXBpbmcgY2l0YXRpb25zIChsaWtlIFwiNDIgVVNDIDE5ODNcIiBvciBcIlUuUy4gQ29uc3RpdHV0aW9uIEFydC4gSSwgU2VjLiAzXCIpIGludG8gdGhlIHNlYXJjaCBiYXIuXG5CeSBkZWZhdWx0LCB0aGUgc2VhcmNoIHN1cHBvcnRzIHRoZSBVLlMuIENvZGUgYW5kIGZlZGVyYWwgY29uc3RpdHV0aW9uLCBhcyB3ZWxsIGFzIG5lYXJseSBhbGwgY29kaWZpZWQgc3RhdGUgbGF3cyBhbmQgY29uc3RpdHV0aW9ucywgYW1vbmcgb3RoZXIgc291cmNlcyBvZiBsYXcuIFlvdSBjYW4gYWxzbyBhZGQgbW9yZSB0eXBlcyBvZiBjaXRhdGlvbiBieSBmb2xsb3dpbmcgdGhlIGluc3RydWN0aW9ucyBvbiB0aGUgR2l0SHViIHBhZ2UuIiwKICAibmFtZSI6ICJMZWdhbCBDaXRhdGlvbiBTZWFyY2giLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY2l0ZXVybC1zZWFyY2gtcHJvdmlkZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmFpbmRydW0vZ25vbWUtY2l0ZXVybC1zZWFyY2gtcHJvdmlkZXIiLAogICJ1dWlkIjogImdub21lLWNpdGV1cmwtc2VhcmNoLXByb3ZpZGVyQHJhaW5kcnVtLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA2Cn0="}, "40": {"version": "6", "sha256": "024d98642smciv5n2vc4l2f8rglfrv180paj1g2rrq9k4pvg6yym", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIGxldHMgeW91IGxvb2sgdXAgVS5TLiBzdGF0ZSBhbmQgZmVkZXJhbCBsYXdzIGFuZCBjb3VydCBjYXNlcyBieSB0eXBpbmcgY2l0YXRpb25zIChsaWtlIFwiNDIgVVNDIDE5ODNcIiBvciBcIlUuUy4gQ29uc3RpdHV0aW9uIEFydC4gSSwgU2VjLiAzXCIpIGludG8gdGhlIHNlYXJjaCBiYXIuXG5CeSBkZWZhdWx0LCB0aGUgc2VhcmNoIHN1cHBvcnRzIHRoZSBVLlMuIENvZGUgYW5kIGZlZGVyYWwgY29uc3RpdHV0aW9uLCBhcyB3ZWxsIGFzIG5lYXJseSBhbGwgY29kaWZpZWQgc3RhdGUgbGF3cyBhbmQgY29uc3RpdHV0aW9ucywgYW1vbmcgb3RoZXIgc291cmNlcyBvZiBsYXcuIFlvdSBjYW4gYWxzbyBhZGQgbW9yZSB0eXBlcyBvZiBjaXRhdGlvbiBieSBmb2xsb3dpbmcgdGhlIGluc3RydWN0aW9ucyBvbiB0aGUgR2l0SHViIHBhZ2UuIiwKICAibmFtZSI6ICJMZWdhbCBDaXRhdGlvbiBTZWFyY2giLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuY2l0ZXVybC1zZWFyY2gtcHJvdmlkZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmFpbmRydW0vZ25vbWUtY2l0ZXVybC1zZWFyY2gtcHJvdmlkZXIiLAogICJ1dWlkIjogImdub21lLWNpdGV1cmwtc2VhcmNoLXByb3ZpZGVyQHJhaW5kcnVtLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiA2Cn0="}}}
 , {"uuid": "wireless-hid@chlumskyvaclav.gmail.com", "name": "Wireless HID", "pname": "wireless-hid", "description": "This extension shows the battery of the wireless keyboards, mice, and game controllers in percentages and colors. Multiple devices are supported.", "link": "https://extensions.gnome.org/extension/4228/wireless-hid/", "shell_version_map": {"38": {"version": "4", "sha256": "09qws1w9d6ik18c2fkhwfrxiallx4bq2k6wnlc7d2fvrfdm32kqn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHNob3dzIHRoZSBiYXR0ZXJ5IG9mIHRoZSB3aXJlbGVzcyBrZXlib2FyZHMsIG1pY2UsIGFuZCBnYW1lIGNvbnRyb2xsZXJzIGluIHBlcmNlbnRhZ2VzIGFuZCBjb2xvcnMuIE11bHRpcGxlIGRldmljZXMgYXJlIHN1cHBvcnRlZC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3aXJlbGVzcy1oaWQiLAogICJuYW1lIjogIldpcmVsZXNzIEhJRCIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZjaGx1bS93aXJlbGVzcy1oaWQiLAogICJ1dWlkIjogIndpcmVsZXNzLWhpZEBjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "09qws1w9d6ik18c2fkhwfrxiallx4bq2k6wnlc7d2fvrfdm32kqn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHNob3dzIHRoZSBiYXR0ZXJ5IG9mIHRoZSB3aXJlbGVzcyBrZXlib2FyZHMsIG1pY2UsIGFuZCBnYW1lIGNvbnRyb2xsZXJzIGluIHBlcmNlbnRhZ2VzIGFuZCBjb2xvcnMuIE11bHRpcGxlIGRldmljZXMgYXJlIHN1cHBvcnRlZC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3aXJlbGVzcy1oaWQiLAogICJuYW1lIjogIldpcmVsZXNzIEhJRCIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZjaGx1bS93aXJlbGVzcy1oaWQiLAogICJ1dWlkIjogIndpcmVsZXNzLWhpZEBjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNAp9"}, "41": {"version": "4", "sha256": "09qws1w9d6ik18c2fkhwfrxiallx4bq2k6wnlc7d2fvrfdm32kqn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHNob3dzIHRoZSBiYXR0ZXJ5IG9mIHRoZSB3aXJlbGVzcyBrZXlib2FyZHMsIG1pY2UsIGFuZCBnYW1lIGNvbnRyb2xsZXJzIGluIHBlcmNlbnRhZ2VzIGFuZCBjb2xvcnMuIE11bHRpcGxlIGRldmljZXMgYXJlIHN1cHBvcnRlZC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ3aXJlbGVzcy1oaWQiLAogICJuYW1lIjogIldpcmVsZXNzIEhJRCIsCiAgIm9yaWdpbmFsLWF1dGhvciI6ICJjaGx1bXNreXZhY2xhdkBnbWFpbC5jb20iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3ZjaGx1bS93aXJlbGVzcy1oaWQiLAogICJ1dWlkIjogIndpcmVsZXNzLWhpZEBjaGx1bXNreXZhY2xhdi5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "better-osd@hllvc", "name": "Better OSD - Gnome 40", "pname": "better-osd-gnome-40", "description": "Customize your OSD popups. Move, resize, set delay and transparency!", "link": "https://extensions.gnome.org/extension/4231/better-osd-gnome-40/", "shell_version_map": {"40": {"version": "6", "sha256": "0945xh7a607x3f9796gi3l5zylqa8gj1pnw44hcaak5sc6zpahgv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6ZSB5b3VyIE9TRCBwb3B1cHMuIE1vdmUsIHJlc2l6ZSwgc2V0IGRlbGF5IGFuZCB0cmFuc3BhcmVuY3khIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmV0dGVyLW9zZCIsCiAgIm5hbWUiOiAiQmV0dGVyIE9TRCAtIEdub21lIDQwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQxLjEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9obGx2Yy9iZXR0ZXItb3NkIiwKICAidXVpZCI6ICJiZXR0ZXItb3NkQGhsbHZjIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "41": {"version": "6", "sha256": "0945xh7a607x3f9796gi3l5zylqa8gj1pnw44hcaak5sc6zpahgv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkN1c3RvbWl6ZSB5b3VyIE9TRCBwb3B1cHMuIE1vdmUsIHJlc2l6ZSwgc2V0IGRlbGF5IGFuZCB0cmFuc3BhcmVuY3khIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiYmV0dGVyLW9zZCIsCiAgIm5hbWUiOiAiQmV0dGVyIE9TRCAtIEdub21lIDQwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQxLjEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9obGx2Yy9iZXR0ZXItb3NkIiwKICAidXVpZCI6ICJiZXR0ZXItb3NkQGhsbHZjIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
@@ -505,7 +505,7 @@
 , {"uuid": "rippleremove@slippinggitty", "name": "Ripple Remove", "pname": "ripple-remove", "description": "Removes the ripple effect from the Activities hot corner", "link": "https://extensions.gnome.org/extension/4264/ripple-remove/", "shell_version_map": {"40": {"version": "1", "sha256": "1dnk8nfnv5hp8c11fzhn5vscicij4lk9i1vz25fz6sjc3rn1a9pq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZXMgdGhlIHJpcHBsZSBlZmZlY3QgZnJvbSB0aGUgQWN0aXZpdGllcyBob3QgY29ybmVyIiwKICAibmFtZSI6ICJSaXBwbGUgUmVtb3ZlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5zbGlwcGluZ2l0dHkucmlwcGxlcmVtb3ZlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJyaXBwbGVyZW1vdmVAc2xpcHBpbmdnaXR0eSIsCiAgInZlcnNpb24iOiAxCn0="}}}
 , {"uuid": "quickmenu@slippinggitty", "name": "Quick Menu [DEAD]", "pname": "quick-menu", "description": "This is a fork of fedoramenu (which is a fork of Big Sur Menu by fausto) that scrubs references of Fedora by replacing the icon with the GNOME logo.\n\nQuick Menu is a panel applet similar to the Apple menu found on macOS.\n\nEDIT: This extension's purpose is dead. Check out Tofu Menu, which is fedoramenu, but with the ability to change the icon. https://extensions.gnome.org/extension/4272/tofu-menu/", "link": "https://extensions.gnome.org/extension/4266/quick-menu/", "shell_version_map": {"40": {"version": "1", "sha256": "1qla029n79366a7xvg2d9v0wa7272bqj40ggvbjrfsbd8x066aca", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgaXMgYSBmb3JrIG9mIGZlZG9yYW1lbnUgKHdoaWNoIGlzIGEgZm9yayBvZiBCaWcgU3VyIE1lbnUgYnkgZmF1c3RvKSB0aGF0IHNjcnVicyByZWZlcmVuY2VzIG9mIEZlZG9yYSBieSByZXBsYWNpbmcgdGhlIGljb24gd2l0aCB0aGUgR05PTUUgbG9nby5cblxuUXVpY2sgTWVudSBpcyBhIHBhbmVsIGFwcGxldCBzaW1pbGFyIHRvIHRoZSBBcHBsZSBtZW51IGZvdW5kIG9uIG1hY09TLlxuXG5FRElUOiBUaGlzIGV4dGVuc2lvbidzIHB1cnBvc2UgaXMgZGVhZC4gQ2hlY2sgb3V0IFRvZnUgTWVudSwgd2hpY2ggaXMgZmVkb3JhbWVudSwgYnV0IHdpdGggdGhlIGFiaWxpdHkgdG8gY2hhbmdlIHRoZSBpY29uLiBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi80MjcyL3RvZnUtbWVudS8iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJxdWljay1tZW51IiwKICAibmFtZSI6ICJRdWljayBNZW51IFtERUFEXSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuc2xpcHBpbmdpdHR5LnF1aWNrLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2xpcHBpbmdHaXR0eS9xdWlja21lbnUiLAogICJ1dWlkIjogInF1aWNrbWVudUBzbGlwcGluZ2dpdHR5IiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"uuid": "show-desktop-applet@valent-in", "name": "Show Desktop Applet", "pname": "show-desktop-applet", "description": "Minimize/unminimize all open windows with a single click.\n\nForked from https://extensions.gnome.org/extension/1194/show-desktop-button/\n\nFeatures:\n- Windows-like behavior\n- Can be placed at the end of panel\n- Hotkey support (can be activated in settings)", "link": "https://extensions.gnome.org/extension/4267/show-desktop-applet/", "shell_version_map": {"38": {"version": "3", "sha256": "1cm3mfcijjgm9wy2m5hvc6q4ra4b4nqpwl8zhvpf2gxp7vrg4l2y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplL3VubWluaW1pemUgYWxsIG9wZW4gd2luZG93cyB3aXRoIGEgc2luZ2xlIGNsaWNrLlxuXG5Gb3JrZWQgZnJvbSBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTk0L3Nob3ctZGVza3RvcC1idXR0b24vXG5cbkZlYXR1cmVzOlxuLSBXaW5kb3dzLWxpa2UgYmVoYXZpb3Jcbi0gQ2FuIGJlIHBsYWNlZCBhdCB0aGUgZW5kIG9mIHBhbmVsXG4tIEhvdGtleSBzdXBwb3J0IChjYW4gYmUgYWN0aXZhdGVkIGluIHNldHRpbmdzKSIsCiAgImV4dGVuc2lvbi1pZCI6ICJzaG93LWRlc2t0b3AtYXBwbGV0IiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2hvdy1kZXNrdG9wLWFwcGxldCIsCiAgImxvY2FsZWRpciI6ICIvdXNyL3NoYXJlL2xvY2FsZSIsCiAgIm5hbWUiOiAiU2hvdyBEZXNrdG9wIEFwcGxldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaG93LWRlc2t0b3AtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9WYWxlbnQtaW4vU2hvdy1EZXNrdG9wLUFwcGxldCIsCiAgInV1aWQiOiAic2hvdy1kZXNrdG9wLWFwcGxldEB2YWxlbnQtaW4iLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "1cm3mfcijjgm9wy2m5hvc6q4ra4b4nqpwl8zhvpf2gxp7vrg4l2y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplL3VubWluaW1pemUgYWxsIG9wZW4gd2luZG93cyB3aXRoIGEgc2luZ2xlIGNsaWNrLlxuXG5Gb3JrZWQgZnJvbSBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTk0L3Nob3ctZGVza3RvcC1idXR0b24vXG5cbkZlYXR1cmVzOlxuLSBXaW5kb3dzLWxpa2UgYmVoYXZpb3Jcbi0gQ2FuIGJlIHBsYWNlZCBhdCB0aGUgZW5kIG9mIHBhbmVsXG4tIEhvdGtleSBzdXBwb3J0IChjYW4gYmUgYWN0aXZhdGVkIGluIHNldHRpbmdzKSIsCiAgImV4dGVuc2lvbi1pZCI6ICJzaG93LWRlc2t0b3AtYXBwbGV0IiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2hvdy1kZXNrdG9wLWFwcGxldCIsCiAgImxvY2FsZWRpciI6ICIvdXNyL3NoYXJlL2xvY2FsZSIsCiAgIm5hbWUiOiAiU2hvdyBEZXNrdG9wIEFwcGxldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaG93LWRlc2t0b3AtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9WYWxlbnQtaW4vU2hvdy1EZXNrdG9wLUFwcGxldCIsCiAgInV1aWQiOiAic2hvdy1kZXNrdG9wLWFwcGxldEB2YWxlbnQtaW4iLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "1cm3mfcijjgm9wy2m5hvc6q4ra4b4nqpwl8zhvpf2gxp7vrg4l2y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1pbmltaXplL3VubWluaW1pemUgYWxsIG9wZW4gd2luZG93cyB3aXRoIGEgc2luZ2xlIGNsaWNrLlxuXG5Gb3JrZWQgZnJvbSBodHRwczovL2V4dGVuc2lvbnMuZ25vbWUub3JnL2V4dGVuc2lvbi8xMTk0L3Nob3ctZGVza3RvcC1idXR0b24vXG5cbkZlYXR1cmVzOlxuLSBXaW5kb3dzLWxpa2UgYmVoYXZpb3Jcbi0gQ2FuIGJlIHBsYWNlZCBhdCB0aGUgZW5kIG9mIHBhbmVsXG4tIEhvdGtleSBzdXBwb3J0IChjYW4gYmUgYWN0aXZhdGVkIGluIHNldHRpbmdzKSIsCiAgImV4dGVuc2lvbi1pZCI6ICJzaG93LWRlc2t0b3AtYXBwbGV0IiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2hvdy1kZXNrdG9wLWFwcGxldCIsCiAgImxvY2FsZWRpciI6ICIvdXNyL3NoYXJlL2xvY2FsZSIsCiAgIm5hbWUiOiAiU2hvdyBEZXNrdG9wIEFwcGxldCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaG93LWRlc2t0b3AtYXBwbGV0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9WYWxlbnQtaW4vU2hvdy1EZXNrdG9wLUFwcGxldCIsCiAgInV1aWQiOiAic2hvdy1kZXNrdG9wLWFwcGxldEB2YWxlbnQtaW4iLAogICJ2ZXJzaW9uIjogMwp9"}}}
-, {"uuid": "AlphabeticalAppGrid@stuarthayhurst", "name": "Alphabetical App Grid", "pname": "alphabetical-app-grid", "description": "Restore the alphabetical ordering of the app grid", "link": "https://extensions.gnome.org/extension/4269/alphabetical-app-grid/", "shell_version_map": {"38": {"version": "19", "sha256": "00j9s61g8p5llsx917p57nmjmg064ly2nl5rzzl8xr5g73mcck80", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlYnVnIjogZmFsc2UsCiAgImRlc2NyaXB0aW9uIjogIlJlc3RvcmUgdGhlIGFscGhhYmV0aWNhbCBvcmRlcmluZyBvZiB0aGUgYXBwIGdyaWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAibmFtZSI6ICJBbHBoYWJldGljYWwgQXBwIEdyaWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWxwaGFiZXRpY2FsLWFwcC1ncmlkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9hbHBoYWJldGljYWwtZ3JpZC1leHRlbnNpb24iLAogICJ1dWlkIjogIkFscGhhYmV0aWNhbEFwcEdyaWRAc3R1YXJ0aGF5aHVyc3QiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "40": {"version": "19", "sha256": "00j9s61g8p5llsx917p57nmjmg064ly2nl5rzzl8xr5g73mcck80", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlYnVnIjogZmFsc2UsCiAgImRlc2NyaXB0aW9uIjogIlJlc3RvcmUgdGhlIGFscGhhYmV0aWNhbCBvcmRlcmluZyBvZiB0aGUgYXBwIGdyaWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAibmFtZSI6ICJBbHBoYWJldGljYWwgQXBwIEdyaWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWxwaGFiZXRpY2FsLWFwcC1ncmlkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9hbHBoYWJldGljYWwtZ3JpZC1leHRlbnNpb24iLAogICJ1dWlkIjogIkFscGhhYmV0aWNhbEFwcEdyaWRAc3R1YXJ0aGF5aHVyc3QiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}, "41": {"version": "19", "sha256": "00j9s61g8p5llsx917p57nmjmg064ly2nl5rzzl8xr5g73mcck80", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlYnVnIjogZmFsc2UsCiAgImRlc2NyaXB0aW9uIjogIlJlc3RvcmUgdGhlIGFscGhhYmV0aWNhbCBvcmRlcmluZyBvZiB0aGUgYXBwIGdyaWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAibmFtZSI6ICJBbHBoYWJldGljYWwgQXBwIEdyaWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWxwaGFiZXRpY2FsLWFwcC1ncmlkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9hbHBoYWJldGljYWwtZ3JpZC1leHRlbnNpb24iLAogICJ1dWlkIjogIkFscGhhYmV0aWNhbEFwcEdyaWRAc3R1YXJ0aGF5aHVyc3QiLAogICJ2ZXJzaW9uIjogMTkKfQ=="}}}
+, {"uuid": "AlphabeticalAppGrid@stuarthayhurst", "name": "Alphabetical App Grid", "pname": "alphabetical-app-grid", "description": "Restore the alphabetical ordering of the app grid", "link": "https://extensions.gnome.org/extension/4269/alphabetical-app-grid/", "shell_version_map": {"38": {"version": "20", "sha256": "1yb8v4qld98mnvx77m8xfm49jdnm636j5z7p0mkgjbg586f67dmi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlYnVnIjogZmFsc2UsCiAgImRlc2NyaXB0aW9uIjogIlJlc3RvcmUgdGhlIGFscGhhYmV0aWNhbCBvcmRlcmluZyBvZiB0aGUgYXBwIGdyaWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAibmFtZSI6ICJBbHBoYWJldGljYWwgQXBwIEdyaWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWxwaGFiZXRpY2FsLWFwcC1ncmlkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3R1YXJ0aGF5aHVyc3QvYWxwaGFiZXRpY2FsLWdyaWQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAidmVyc2lvbiI6IDIwCn0="}, "40": {"version": "20", "sha256": "1yb8v4qld98mnvx77m8xfm49jdnm636j5z7p0mkgjbg586f67dmi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlYnVnIjogZmFsc2UsCiAgImRlc2NyaXB0aW9uIjogIlJlc3RvcmUgdGhlIGFscGhhYmV0aWNhbCBvcmRlcmluZyBvZiB0aGUgYXBwIGdyaWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAibmFtZSI6ICJBbHBoYWJldGljYWwgQXBwIEdyaWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWxwaGFiZXRpY2FsLWFwcC1ncmlkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3R1YXJ0aGF5aHVyc3QvYWxwaGFiZXRpY2FsLWdyaWQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAidmVyc2lvbiI6IDIwCn0="}, "41": {"version": "20", "sha256": "1yb8v4qld98mnvx77m8xfm49jdnm636j5z7p0mkgjbg586f67dmi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlYnVnIjogZmFsc2UsCiAgImRlc2NyaXB0aW9uIjogIlJlc3RvcmUgdGhlIGFscGhhYmV0aWNhbCBvcmRlcmluZyBvZiB0aGUgYXBwIGdyaWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAibmFtZSI6ICJBbHBoYWJldGljYWwgQXBwIEdyaWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWxwaGFiZXRpY2FsLWFwcC1ncmlkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3R1YXJ0aGF5aHVyc3QvYWxwaGFiZXRpY2FsLWdyaWQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAidmVyc2lvbiI6IDIwCn0="}, "42": {"version": "20", "sha256": "1yb8v4qld98mnvx77m8xfm49jdnm636j5z7p0mkgjbg586f67dmi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlYnVnIjogZmFsc2UsCiAgImRlc2NyaXB0aW9uIjogIlJlc3RvcmUgdGhlIGFscGhhYmV0aWNhbCBvcmRlcmluZyBvZiB0aGUgYXBwIGdyaWQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAibmFtZSI6ICJBbHBoYWJldGljYWwgQXBwIEdyaWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuYWxwaGFiZXRpY2FsLWFwcC1ncmlkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3R1YXJ0aGF5aHVyc3QvYWxwaGFiZXRpY2FsLWdyaWQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJBbHBoYWJldGljYWxBcHBHcmlkQHN0dWFydGhheWh1cnN0IiwKICAidmVyc2lvbiI6IDIwCn0="}}}
 , {"uuid": "tofumenu@tofu", "name": "Tofu Menu", "pname": "tofu-menu", "description": "Quick access menu for the GNOME panel with options that help ease the workflow for newcomers and power users alike.\n\nhttps://github.com/tofutech/tofumenu", "link": "https://extensions.gnome.org/extension/4272/tofu-menu/", "shell_version_map": {"40": {"version": "2", "sha256": "05ndbjvvz0v1y8iq6ngqylz4z1ld6q5ibhkr5dh24wqc4wiky30v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrIGFjY2VzcyBtZW51IGZvciB0aGUgR05PTUUgcGFuZWwgd2l0aCBvcHRpb25zIHRoYXQgaGVscCBlYXNlIHRoZSB3b3JrZmxvdyBmb3IgbmV3Y29tZXJzIGFuZCBwb3dlciB1c2VycyBhbGlrZS5cblxuaHR0cHM6Ly9naXRodWIuY29tL3RvZnV0ZWNoL3RvZnVtZW51IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZmVkb3JhLW1lbnUiLAogICJuYW1lIjogIlRvZnUgTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcudG9mdS5mZWRvcmEtbWVudSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidG9mdW1lbnVAdG9mdSIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "cryptostash@filidorwiese.nl", "name": "CryptoStash", "pname": "cryptostash", "description": "Keep an eye on the real time value of your crypto coins collections.\n\nYou can create multiple \"stashes\" (portfolios) of coins and monitor the accumulated value in USD or EUR. Or if you prefer, you can simply track the current value of your favorite coin.", "link": "https://extensions.gnome.org/extension/4276/cryptostash/", "shell_version_map": {"38": {"version": "4", "sha256": "0n1452ky1dppcxazgqxv5jc91l4piwp64rmc9b41ak3792j1sgbw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImF1dGhvcl91cmwiOiAiaHR0cHM6Ly9maWxpZG9yd2llc2UubmwiLAogICJkZXNjcmlwdGlvbiI6ICJLZWVwIGFuIGV5ZSBvbiB0aGUgcmVhbCB0aW1lIHZhbHVlIG9mIHlvdXIgY3J5cHRvIGNvaW5zIGNvbGxlY3Rpb25zLlxuXG5Zb3UgY2FuIGNyZWF0ZSBtdWx0aXBsZSBcInN0YXNoZXNcIiAocG9ydGZvbGlvcykgb2YgY29pbnMgYW5kIG1vbml0b3IgdGhlIGFjY3VtdWxhdGVkIHZhbHVlIGluIFVTRCBvciBFVVIuIE9yIGlmIHlvdSBwcmVmZXIsIHlvdSBjYW4gc2ltcGx5IHRyYWNrIHRoZSBjdXJyZW50IHZhbHVlIG9mIHlvdXIgZmF2b3JpdGUgY29pbi4iLAogICJuYW1lIjogIkNyeXB0b1N0YXNoIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmNyeXB0by1zdGFzaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ0YWciOiAxLjMsCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmlsaWRvcndpZXNlL2dub21lLXNoZWxsLWNyeXB0by1zdGFzaCIsCiAgInV1aWQiOiAiY3J5cHRvc3Rhc2hAZmlsaWRvcndpZXNlLm5sIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "xmlfix@pwall.github.com", "name": "XML-Fix", "pname": "xml-fix", "description": "Fixes the XML-Codes displaying instead of the characters on notifications.", "link": "https://extensions.gnome.org/extension/4279/xml-fix/", "shell_version_map": {"38": {"version": "2", "sha256": "1c9qa3ky873hkckylsbv0s7q9bmsnia7h8mlc36i7xz7h1ml6fpx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpeGVzIHRoZSBYTUwtQ29kZXMgZGlzcGxheWluZyBpbnN0ZWFkIG9mIHRoZSBjaGFyYWN0ZXJzIG9uIG5vdGlmaWNhdGlvbnMuIiwKICAibmFtZSI6ICJYTUwtRml4IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUFdhbGwyMjIyL1hNTEZpeCIsCiAgInV1aWQiOiAieG1sZml4QHB3YWxsLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}}}
@@ -518,10 +518,10 @@
 , {"uuid": "user-pics@comfy", "name": "User Pics", "pname": "user-pics", "description": "lucasalveslm's User Account Image for gnome-shell 3.38", "link": "https://extensions.gnome.org/extension/4301/user-pics/", "shell_version_map": {"38": {"version": "3", "sha256": "1rv6x551dm3hynfkm291b4c552j9d6q89ixmrq0x97xgw75n14fx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImx1Y2FzYWx2ZXNsbSdzIFVzZXIgQWNjb3VudCBJbWFnZSBmb3IgZ25vbWUtc2hlbGwgMy4zOCIsCiAgIm5hbWUiOiAiVXNlciBQaWNzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInVzZXItcGljc0Bjb21meSIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "screendarker@yingshaoxo.github.com", "name": "Screen Darker", "pname": "screen-darker", "description": "Help you do a switch between a darker screen and brighter screen by one click.", "link": "https://extensions.gnome.org/extension/4304/screen-darker/", "shell_version_map": {"38": {"version": "1", "sha256": "1zlncw0y5crq6n0slhq1f9npzvkkcyh0187z88mzycr55nl4rsx8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhlbHAgeW91IGRvIGEgc3dpdGNoIGJldHdlZW4gYSBkYXJrZXIgc2NyZWVuIGFuZCBicmlnaHRlciBzY3JlZW4gYnkgb25lIGNsaWNrLiIsCiAgIm5hbWUiOiAiU2NyZWVuIERhcmtlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3lpbmdzaGFveG8vZ25vbWUtc2hlbGwtc2NyZWVuLWRhcmtlciIsCiAgInV1aWQiOiAic2NyZWVuZGFya2VyQHlpbmdzaGFveG8uZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}}}
 , {"uuid": "umi-coin-rate@exposedcat", "name": "UMI Coin Rate [Unmaintained]", "pname": "umi-coin-rate", "description": "", "link": "https://extensions.gnome.org/extension/4307/umi-coin-rate/", "shell_version_map": {"38": {"version": "5", "sha256": "0rhprnxnsmy834lkc2vmp0zgbj1ngc3bq7m3yac4vd3g40r015nk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiIsCiAgIm5hbWUiOiAiVU1JIENvaW4gUmF0ZSBbVW5tYWludGFpbmVkXSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidW1pLWNvaW4tcmF0ZUBleHBvc2VkY2F0IiwKICAidmVyc2lvbiI6IDUKfQ=="}, "40": {"version": "5", "sha256": "0rhprnxnsmy834lkc2vmp0zgbj1ngc3bq7m3yac4vd3g40r015nk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiIsCiAgIm5hbWUiOiAiVU1JIENvaW4gUmF0ZSBbVW5tYWludGFpbmVkXSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidW1pLWNvaW4tcmF0ZUBleHBvc2VkY2F0IiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
-, {"uuid": "network-stats@gnome.noroadsleft.xyz", "name": "Network Stats", "pname": "network-stats", "description": "Displays internet upload speed, download speed, bandwidth, data usage. \n\n visit github page for instructions, suggestions and feature requests. \n\n ERROR while updating extension ? restart your system or reload gnome shell. Alt + F2  then  r + Enter", "link": "https://extensions.gnome.org/extension/4308/network-stats/", "shell_version_map": {"38": {"version": "10", "sha256": "1kmbaja0nhqjayjcy6rnm2wqzv1gw3divd7d15nanbh0igmwm32a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGludGVybmV0IHVwbG9hZCBzcGVlZCwgZG93bmxvYWQgc3BlZWQsIGJhbmR3aWR0aCwgZGF0YSB1c2FnZS4gXG5cbiB2aXNpdCBnaXRodWIgcGFnZSBmb3IgaW5zdHJ1Y3Rpb25zLCBzdWdnZXN0aW9ucyBhbmQgZmVhdHVyZSByZXF1ZXN0cy4gXG5cbiBFUlJPUiB3aGlsZSB1cGRhdGluZyBleHRlbnNpb24gPyByZXN0YXJ0IHlvdXIgc3lzdGVtIG9yIHJlbG9hZCBnbm9tZSBzaGVsbC4gQWx0ICsgRjIgIHRoZW4gIHIgKyBFbnRlciIsCiAgImdldHRleHQtZG9tYWluIjogIm5ldHdvcmstc3RhdHMiLAogICJuYW1lIjogIk5ldHdvcmsgU3RhdHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmV0d29yay1zdGF0cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ub3JvYWRzbGVmdDAwMC9nbm9tZS1uZXR3b3JrLXN0YXRzIiwKICAidXVpZCI6ICJuZXR3b3JrLXN0YXRzQGdub21lLm5vcm9hZHNsZWZ0Lnh5eiIsCiAgInZlcnNpb24iOiAxMAp9"}, "40": {"version": "10", "sha256": "1kmbaja0nhqjayjcy6rnm2wqzv1gw3divd7d15nanbh0igmwm32a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGludGVybmV0IHVwbG9hZCBzcGVlZCwgZG93bmxvYWQgc3BlZWQsIGJhbmR3aWR0aCwgZGF0YSB1c2FnZS4gXG5cbiB2aXNpdCBnaXRodWIgcGFnZSBmb3IgaW5zdHJ1Y3Rpb25zLCBzdWdnZXN0aW9ucyBhbmQgZmVhdHVyZSByZXF1ZXN0cy4gXG5cbiBFUlJPUiB3aGlsZSB1cGRhdGluZyBleHRlbnNpb24gPyByZXN0YXJ0IHlvdXIgc3lzdGVtIG9yIHJlbG9hZCBnbm9tZSBzaGVsbC4gQWx0ICsgRjIgIHRoZW4gIHIgKyBFbnRlciIsCiAgImdldHRleHQtZG9tYWluIjogIm5ldHdvcmstc3RhdHMiLAogICJuYW1lIjogIk5ldHdvcmsgU3RhdHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmV0d29yay1zdGF0cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ub3JvYWRzbGVmdDAwMC9nbm9tZS1uZXR3b3JrLXN0YXRzIiwKICAidXVpZCI6ICJuZXR3b3JrLXN0YXRzQGdub21lLm5vcm9hZHNsZWZ0Lnh5eiIsCiAgInZlcnNpb24iOiAxMAp9"}}}
+, {"uuid": "network-stats@gnome.noroadsleft.xyz", "name": "Network Stats", "pname": "network-stats", "description": "Displays internet upload speed, download speed, bandwidth, data usage. \n\n visit github page for instructions, suggestions and feature requests. \n\n ERROR while updating extension ? restart your system or reload gnome shell. Alt + F2  then  r + Enter", "link": "https://extensions.gnome.org/extension/4308/network-stats/", "shell_version_map": {"38": {"version": "13", "sha256": "1h1gpgcxqx8iilk4dm9708f3p94qv7adz42pgg08njhh9fabapxa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGludGVybmV0IHVwbG9hZCBzcGVlZCwgZG93bmxvYWQgc3BlZWQsIGJhbmR3aWR0aCwgZGF0YSB1c2FnZS4gXG5cbiB2aXNpdCBnaXRodWIgcGFnZSBmb3IgaW5zdHJ1Y3Rpb25zLCBzdWdnZXN0aW9ucyBhbmQgZmVhdHVyZSByZXF1ZXN0cy4gXG5cbiBFUlJPUiB3aGlsZSB1cGRhdGluZyBleHRlbnNpb24gPyByZXN0YXJ0IHlvdXIgc3lzdGVtIG9yIHJlbG9hZCBnbm9tZSBzaGVsbC4gQWx0ICsgRjIgIHRoZW4gIHIgKyBFbnRlciIsCiAgImdldHRleHQtZG9tYWluIjogIm5ldHdvcmstc3RhdHMiLAogICJuYW1lIjogIk5ldHdvcmsgU3RhdHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmV0d29yay1zdGF0cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbm9yb2Fkc2xlZnQwMDAvZ25vbWUtbmV0d29yay1zdGF0cyIsCiAgInV1aWQiOiAibmV0d29yay1zdGF0c0Bnbm9tZS5ub3JvYWRzbGVmdC54eXoiLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "40": {"version": "13", "sha256": "1h1gpgcxqx8iilk4dm9708f3p94qv7adz42pgg08njhh9fabapxa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGludGVybmV0IHVwbG9hZCBzcGVlZCwgZG93bmxvYWQgc3BlZWQsIGJhbmR3aWR0aCwgZGF0YSB1c2FnZS4gXG5cbiB2aXNpdCBnaXRodWIgcGFnZSBmb3IgaW5zdHJ1Y3Rpb25zLCBzdWdnZXN0aW9ucyBhbmQgZmVhdHVyZSByZXF1ZXN0cy4gXG5cbiBFUlJPUiB3aGlsZSB1cGRhdGluZyBleHRlbnNpb24gPyByZXN0YXJ0IHlvdXIgc3lzdGVtIG9yIHJlbG9hZCBnbm9tZSBzaGVsbC4gQWx0ICsgRjIgIHRoZW4gIHIgKyBFbnRlciIsCiAgImdldHRleHQtZG9tYWluIjogIm5ldHdvcmstc3RhdHMiLAogICJuYW1lIjogIk5ldHdvcmsgU3RhdHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmV0d29yay1zdGF0cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbm9yb2Fkc2xlZnQwMDAvZ25vbWUtbmV0d29yay1zdGF0cyIsCiAgInV1aWQiOiAibmV0d29yay1zdGF0c0Bnbm9tZS5ub3JvYWRzbGVmdC54eXoiLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "41": {"version": "13", "sha256": "1h1gpgcxqx8iilk4dm9708f3p94qv7adz42pgg08njhh9fabapxa", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGludGVybmV0IHVwbG9hZCBzcGVlZCwgZG93bmxvYWQgc3BlZWQsIGJhbmR3aWR0aCwgZGF0YSB1c2FnZS4gXG5cbiB2aXNpdCBnaXRodWIgcGFnZSBmb3IgaW5zdHJ1Y3Rpb25zLCBzdWdnZXN0aW9ucyBhbmQgZmVhdHVyZSByZXF1ZXN0cy4gXG5cbiBFUlJPUiB3aGlsZSB1cGRhdGluZyBleHRlbnNpb24gPyByZXN0YXJ0IHlvdXIgc3lzdGVtIG9yIHJlbG9hZCBnbm9tZSBzaGVsbC4gQWx0ICsgRjIgIHRoZW4gIHIgKyBFbnRlciIsCiAgImdldHRleHQtZG9tYWluIjogIm5ldHdvcmstc3RhdHMiLAogICJuYW1lIjogIk5ldHdvcmsgU3RhdHMiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubmV0d29yay1zdGF0cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4yNCIsCiAgICAiMy4yNiIsCiAgICAiMy4yOCIsCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbm9yb2Fkc2xlZnQwMDAvZ25vbWUtbmV0d29yay1zdGF0cyIsCiAgInV1aWQiOiAibmV0d29yay1zdGF0c0Bnbm9tZS5ub3JvYWRzbGVmdC54eXoiLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
 , {"uuid": "screen-lock@garciabaameiro.com", "name": "Screen lock", "pname": "extension-list", "description": "Simple gnome shell extension to use xscreensaver in top panel", "link": "https://extensions.gnome.org/extension/4311/extension-list/", "shell_version_map": {"40": {"version": "1", "sha256": "1jas7pcn3a28fnfs3azrbiqf22gx337js6if8v8vsb15994pbak6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBnbm9tZSBzaGVsbCBleHRlbnNpb24gdG8gdXNlIHhzY3JlZW5zYXZlciBpbiB0b3AgcGFuZWwiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJzY3JlZW4tbG9jayIsCiAgIm5hbWUiOiAiU2NyZWVuIGxvY2siLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2NyZWVuLWxvY2siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vU2F3eWVyMTMvc2NyZWVuLWxvY2siLAogICJ1dWlkIjogInNjcmVlbi1sb2NrQGdhcmNpYWJhYW1laXJvLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}}}
 , {"uuid": "force-show-osk@bruh.ltd", "name": "Force Show OSK", "pname": "force-show-osk", "description": "Show the on-screen keyboard regardless of whether the touch mode is enabled", "link": "https://extensions.gnome.org/extension/4316/force-show-osk/", "shell_version_map": {"40": {"version": "3", "sha256": "0p2v36bliaa6i85b4r0g38ih9fidn95dwmyhc3dygvynjzvvv56b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIG9uLXNjcmVlbiBrZXlib2FyZCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIHRvdWNoIG1vZGUgaXMgZW5hYmxlZCIsCiAgIm5hbWUiOiAiRm9yY2UgU2hvdyBPU0siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2tpcmJ5a2V2aW5zb24vZm9yY2Utc2hvdy1vc2siLAogICJ1dWlkIjogImZvcmNlLXNob3ctb3NrQGJydWgubHRkIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "0p2v36bliaa6i85b4r0g38ih9fidn95dwmyhc3dygvynjzvvv56b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgdGhlIG9uLXNjcmVlbiBrZXlib2FyZCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIHRvdWNoIG1vZGUgaXMgZW5hYmxlZCIsCiAgIm5hbWUiOiAiRm9yY2UgU2hvdyBPU0siLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2tpcmJ5a2V2aW5zb24vZm9yY2Utc2hvdy1vc2siLAogICJ1dWlkIjogImZvcmNlLXNob3ctb3NrQGJydWgubHRkIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "asusctl-gex@asus-linux.org", "name": "asusctl-gex", "pname": "asusctl-gex", "description": "asusctl-gex is a frontend for some functionalities of asusctl and supergfxctl that were born inside the asus-linux.org community.\n\nasusctl is not required\nsupergfxctl is required if you have a dual GPU laptop and want to switch between various GPU modes. It is tested on a variaty of laptops including Intel / Nvidia, AMD / Nvidia, Intel / AMD and AMD / AMD GPU combinations.\n\nTo learn more about it, please have a look at:\nhttps://gitlab.com/asus-linux/asusctl\nhttps://gitlab.com/asus-linux/supergfxctl\nhttps://gitlab.com/asus-linux/asusctl-gex\n\nhttps://asus-linux.org/", "link": "https://extensions.gnome.org/extension/4320/asusctl-gex/", "shell_version_map": {"40": {"version": "9", "sha256": "0ivnw4bw494l5zi82yap54zd035kvr4pg6rfkz7ivwccf3y0gfzg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFzdXNjdGwtZ2V4IGlzIGEgZnJvbnRlbmQgZm9yIHNvbWUgZnVuY3Rpb25hbGl0aWVzIG9mIGFzdXNjdGwgYW5kIHN1cGVyZ2Z4Y3RsIHRoYXQgd2VyZSBib3JuIGluc2lkZSB0aGUgYXN1cy1saW51eC5vcmcgY29tbXVuaXR5LlxuXG5hc3VzY3RsIGlzIG5vdCByZXF1aXJlZFxuc3VwZXJnZnhjdGwgaXMgcmVxdWlyZWQgaWYgeW91IGhhdmUgYSBkdWFsIEdQVSBsYXB0b3AgYW5kIHdhbnQgdG8gc3dpdGNoIGJldHdlZW4gdmFyaW91cyBHUFUgbW9kZXMuIEl0IGlzIHRlc3RlZCBvbiBhIHZhcmlhdHkgb2YgbGFwdG9wcyBpbmNsdWRpbmcgSW50ZWwgLyBOdmlkaWEsIEFNRCAvIE52aWRpYSwgSW50ZWwgLyBBTUQgYW5kIEFNRCAvIEFNRCBHUFUgY29tYmluYXRpb25zLlxuXG5UbyBsZWFybiBtb3JlIGFib3V0IGl0LCBwbGVhc2UgaGF2ZSBhIGxvb2sgYXQ6XG5odHRwczovL2dpdGxhYi5jb20vYXN1cy1saW51eC9hc3VzY3RsXG5odHRwczovL2dpdGxhYi5jb20vYXN1cy1saW51eC9zdXBlcmdmeGN0bFxuaHR0cHM6Ly9naXRsYWIuY29tL2FzdXMtbGludXgvYXN1c2N0bC1nZXhcblxuaHR0cHM6Ly9hc3VzLWxpbnV4Lm9yZy8iLAogICJuYW1lIjogImFzdXNjdGwtZ2V4IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFzdXNjdGwtZ2V4IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFzdXNjdGwtZ2V4QGFzdXMtbGludXgub3JnIiwKICAidXVpZC1kZXYiOiAiYXN1c2N0bC1nZXgtZGV2QGFzdXMtbGludXgub3JnIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "41": {"version": "9", "sha256": "0ivnw4bw494l5zi82yap54zd035kvr4pg6rfkz7ivwccf3y0gfzg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFzdXNjdGwtZ2V4IGlzIGEgZnJvbnRlbmQgZm9yIHNvbWUgZnVuY3Rpb25hbGl0aWVzIG9mIGFzdXNjdGwgYW5kIHN1cGVyZ2Z4Y3RsIHRoYXQgd2VyZSBib3JuIGluc2lkZSB0aGUgYXN1cy1saW51eC5vcmcgY29tbXVuaXR5LlxuXG5hc3VzY3RsIGlzIG5vdCByZXF1aXJlZFxuc3VwZXJnZnhjdGwgaXMgcmVxdWlyZWQgaWYgeW91IGhhdmUgYSBkdWFsIEdQVSBsYXB0b3AgYW5kIHdhbnQgdG8gc3dpdGNoIGJldHdlZW4gdmFyaW91cyBHUFUgbW9kZXMuIEl0IGlzIHRlc3RlZCBvbiBhIHZhcmlhdHkgb2YgbGFwdG9wcyBpbmNsdWRpbmcgSW50ZWwgLyBOdmlkaWEsIEFNRCAvIE52aWRpYSwgSW50ZWwgLyBBTUQgYW5kIEFNRCAvIEFNRCBHUFUgY29tYmluYXRpb25zLlxuXG5UbyBsZWFybiBtb3JlIGFib3V0IGl0LCBwbGVhc2UgaGF2ZSBhIGxvb2sgYXQ6XG5odHRwczovL2dpdGxhYi5jb20vYXN1cy1saW51eC9hc3VzY3RsXG5odHRwczovL2dpdGxhYi5jb20vYXN1cy1saW51eC9zdXBlcmdmeGN0bFxuaHR0cHM6Ly9naXRsYWIuY29tL2FzdXMtbGludXgvYXN1c2N0bC1nZXhcblxuaHR0cHM6Ly9hc3VzLWxpbnV4Lm9yZy8iLAogICJuYW1lIjogImFzdXNjdGwtZ2V4IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFzdXNjdGwtZ2V4IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFzdXNjdGwtZ2V4QGFzdXMtbGludXgub3JnIiwKICAidXVpZC1kZXYiOiAiYXN1c2N0bC1nZXgtZGV2QGFzdXMtbGludXgub3JnIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
+, {"uuid": "asusctl-gex@asus-linux.org", "name": "asusctl-gex", "pname": "asusctl-gex", "description": "asusctl-gex is a frontend for some functionalities of asusctl and supergfxctl that were born inside the asus-linux.org community.\n\nasusctl is not required\nsupergfxctl is required if you have a dual GPU laptop and want to switch between various GPU modes. It is tested on a variaty of laptops including Intel / Nvidia, AMD / Nvidia, Intel / AMD and AMD / AMD GPU combinations.\n\nTo learn more about it, please have a look at:\nhttps://gitlab.com/asus-linux/asusctl\nhttps://gitlab.com/asus-linux/supergfxctl\nhttps://gitlab.com/asus-linux/asusctl-gex\n\nhttps://asus-linux.org/", "link": "https://extensions.gnome.org/extension/4320/asusctl-gex/", "shell_version_map": {"40": {"version": "9", "sha256": "0ivnw4bw494l5zi82yap54zd035kvr4pg6rfkz7ivwccf3y0gfzg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFzdXNjdGwtZ2V4IGlzIGEgZnJvbnRlbmQgZm9yIHNvbWUgZnVuY3Rpb25hbGl0aWVzIG9mIGFzdXNjdGwgYW5kIHN1cGVyZ2Z4Y3RsIHRoYXQgd2VyZSBib3JuIGluc2lkZSB0aGUgYXN1cy1saW51eC5vcmcgY29tbXVuaXR5LlxuXG5hc3VzY3RsIGlzIG5vdCByZXF1aXJlZFxuc3VwZXJnZnhjdGwgaXMgcmVxdWlyZWQgaWYgeW91IGhhdmUgYSBkdWFsIEdQVSBsYXB0b3AgYW5kIHdhbnQgdG8gc3dpdGNoIGJldHdlZW4gdmFyaW91cyBHUFUgbW9kZXMuIEl0IGlzIHRlc3RlZCBvbiBhIHZhcmlhdHkgb2YgbGFwdG9wcyBpbmNsdWRpbmcgSW50ZWwgLyBOdmlkaWEsIEFNRCAvIE52aWRpYSwgSW50ZWwgLyBBTUQgYW5kIEFNRCAvIEFNRCBHUFUgY29tYmluYXRpb25zLlxuXG5UbyBsZWFybiBtb3JlIGFib3V0IGl0LCBwbGVhc2UgaGF2ZSBhIGxvb2sgYXQ6XG5odHRwczovL2dpdGxhYi5jb20vYXN1cy1saW51eC9hc3VzY3RsXG5odHRwczovL2dpdGxhYi5jb20vYXN1cy1saW51eC9zdXBlcmdmeGN0bFxuaHR0cHM6Ly9naXRsYWIuY29tL2FzdXMtbGludXgvYXN1c2N0bC1nZXhcblxuaHR0cHM6Ly9hc3VzLWxpbnV4Lm9yZy8iLAogICJuYW1lIjogImFzdXNjdGwtZ2V4IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFzdXNjdGwtZ2V4IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFzdXNjdGwtZ2V4QGFzdXMtbGludXgub3JnIiwKICAidXVpZC1kZXYiOiAiYXN1c2N0bC1nZXgtZGV2QGFzdXMtbGludXgub3JnIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "41": {"version": "9", "sha256": "0ivnw4bw494l5zi82yap54zd035kvr4pg6rfkz7ivwccf3y0gfzg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFzdXNjdGwtZ2V4IGlzIGEgZnJvbnRlbmQgZm9yIHNvbWUgZnVuY3Rpb25hbGl0aWVzIG9mIGFzdXNjdGwgYW5kIHN1cGVyZ2Z4Y3RsIHRoYXQgd2VyZSBib3JuIGluc2lkZSB0aGUgYXN1cy1saW51eC5vcmcgY29tbXVuaXR5LlxuXG5hc3VzY3RsIGlzIG5vdCByZXF1aXJlZFxuc3VwZXJnZnhjdGwgaXMgcmVxdWlyZWQgaWYgeW91IGhhdmUgYSBkdWFsIEdQVSBsYXB0b3AgYW5kIHdhbnQgdG8gc3dpdGNoIGJldHdlZW4gdmFyaW91cyBHUFUgbW9kZXMuIEl0IGlzIHRlc3RlZCBvbiBhIHZhcmlhdHkgb2YgbGFwdG9wcyBpbmNsdWRpbmcgSW50ZWwgLyBOdmlkaWEsIEFNRCAvIE52aWRpYSwgSW50ZWwgLyBBTUQgYW5kIEFNRCAvIEFNRCBHUFUgY29tYmluYXRpb25zLlxuXG5UbyBsZWFybiBtb3JlIGFib3V0IGl0LCBwbGVhc2UgaGF2ZSBhIGxvb2sgYXQ6XG5odHRwczovL2dpdGxhYi5jb20vYXN1cy1saW51eC9hc3VzY3RsXG5odHRwczovL2dpdGxhYi5jb20vYXN1cy1saW51eC9zdXBlcmdmeGN0bFxuaHR0cHM6Ly9naXRsYWIuY29tL2FzdXMtbGludXgvYXN1c2N0bC1nZXhcblxuaHR0cHM6Ly9hc3VzLWxpbnV4Lm9yZy8iLAogICJuYW1lIjogImFzdXNjdGwtZ2V4IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFzdXNjdGwtZ2V4IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFzdXNjdGwtZ2V4QGFzdXMtbGludXgub3JnIiwKICAidXVpZC1kZXYiOiAiYXN1c2N0bC1nZXgtZGV2QGFzdXMtbGludXgub3JnIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "42": {"version": "9", "sha256": "0ivnw4bw494l5zi82yap54zd035kvr4pg6rfkz7ivwccf3y0gfzg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFzdXNjdGwtZ2V4IGlzIGEgZnJvbnRlbmQgZm9yIHNvbWUgZnVuY3Rpb25hbGl0aWVzIG9mIGFzdXNjdGwgYW5kIHN1cGVyZ2Z4Y3RsIHRoYXQgd2VyZSBib3JuIGluc2lkZSB0aGUgYXN1cy1saW51eC5vcmcgY29tbXVuaXR5LlxuXG5hc3VzY3RsIGlzIG5vdCByZXF1aXJlZFxuc3VwZXJnZnhjdGwgaXMgcmVxdWlyZWQgaWYgeW91IGhhdmUgYSBkdWFsIEdQVSBsYXB0b3AgYW5kIHdhbnQgdG8gc3dpdGNoIGJldHdlZW4gdmFyaW91cyBHUFUgbW9kZXMuIEl0IGlzIHRlc3RlZCBvbiBhIHZhcmlhdHkgb2YgbGFwdG9wcyBpbmNsdWRpbmcgSW50ZWwgLyBOdmlkaWEsIEFNRCAvIE52aWRpYSwgSW50ZWwgLyBBTUQgYW5kIEFNRCAvIEFNRCBHUFUgY29tYmluYXRpb25zLlxuXG5UbyBsZWFybiBtb3JlIGFib3V0IGl0LCBwbGVhc2UgaGF2ZSBhIGxvb2sgYXQ6XG5odHRwczovL2dpdGxhYi5jb20vYXN1cy1saW51eC9hc3VzY3RsXG5odHRwczovL2dpdGxhYi5jb20vYXN1cy1saW51eC9zdXBlcmdmeGN0bFxuaHR0cHM6Ly9naXRsYWIuY29tL2FzdXMtbGludXgvYXN1c2N0bC1nZXhcblxuaHR0cHM6Ly9hc3VzLWxpbnV4Lm9yZy8iLAogICJuYW1lIjogImFzdXNjdGwtZ2V4IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFzdXNjdGwtZ2V4IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFzdXNjdGwtZ2V4QGFzdXMtbGludXgub3JnIiwKICAidXVpZC1kZXYiOiAiYXN1c2N0bC1nZXgtZGV2QGFzdXMtbGludXgub3JnIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
 , {"uuid": "hide-activities-button@nmingori.gnome-shell-extensions.org", "name": "Hide Activities Button", "pname": "hide-activities-button", "description": "Hide Activities Button on the top panel. For Gnome 40 or 3.6+", "link": "https://extensions.gnome.org/extension/4325/hide-activities-button/", "shell_version_map": {"38": {"version": "1", "sha256": "0644h9cqy07h1fgr9wcjp4agvszrcpk6f0yr725hxfil600k5m9b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgQWN0aXZpdGllcyBCdXR0b24gb24gdGhlIHRvcCBwYW5lbC4gRm9yIEdub21lIDQwIG9yIDMuNisiLAogICJuYW1lIjogIkhpZGUgQWN0aXZpdGllcyBCdXR0b24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuNiIsCiAgICAiMy44IiwKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25taW5nb3JpL2dub21lLWhpZGUtYWN0aXRpdmllcy1idXR0b24iLAogICJ1dWlkIjogImhpZGUtYWN0aXZpdGllcy1idXR0b25Abm1pbmdvcmkuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5vcmciLAogICJ2ZXJzaW9uIjogMQp9"}, "40": {"version": "1", "sha256": "0644h9cqy07h1fgr9wcjp4agvszrcpk6f0yr725hxfil600k5m9b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgQWN0aXZpdGllcyBCdXR0b24gb24gdGhlIHRvcCBwYW5lbC4gRm9yIEdub21lIDQwIG9yIDMuNisiLAogICJuYW1lIjogIkhpZGUgQWN0aXZpdGllcyBCdXR0b24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuNiIsCiAgICAiMy44IiwKICAgICIzLjEwIiwKICAgICIzLjEyIiwKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL25taW5nb3JpL2dub21lLWhpZGUtYWN0aXRpdmllcy1idXR0b24iLAogICJ1dWlkIjogImhpZGUtYWN0aXZpdGllcy1idXR0b25Abm1pbmdvcmkuZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy5vcmciLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "apt-shortcuts@rx1310", "name": "Shortcuts for APT", "pname": "shortcuts-for-apt", "description": "A small extension that adds buttons to the panel to check for APT updates through the terminal without entering commands.", "link": "https://extensions.gnome.org/extension/4328/shortcuts-for-apt/", "shell_version_map": {"38": {"version": "2", "sha256": "1dagzbryg85hgdksxqb90j6ia1b4rfpm46jihviivc8jz1iqb6f0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc21hbGwgZXh0ZW5zaW9uIHRoYXQgYWRkcyBidXR0b25zIHRvIHRoZSBwYW5lbCB0byBjaGVjayBmb3IgQVBUIHVwZGF0ZXMgdGhyb3VnaCB0aGUgdGVybWluYWwgd2l0aG91dCBlbnRlcmluZyBjb21tYW5kcy4iLAogICJuYW1lIjogIlNob3J0Y3V0cyBmb3IgQVBUIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3J4MTMxMC9nbm9tZS1leHRlbnNpb25fYXB0dXBkYXRlIiwKICAidXVpZCI6ICJhcHQtc2hvcnRjdXRzQHJ4MTMxMCIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "1dagzbryg85hgdksxqb90j6ia1b4rfpm46jihviivc8jz1iqb6f0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc21hbGwgZXh0ZW5zaW9uIHRoYXQgYWRkcyBidXR0b25zIHRvIHRoZSBwYW5lbCB0byBjaGVjayBmb3IgQVBUIHVwZGF0ZXMgdGhyb3VnaCB0aGUgdGVybWluYWwgd2l0aG91dCBlbnRlcmluZyBjb21tYW5kcy4iLAogICJuYW1lIjogIlNob3J0Y3V0cyBmb3IgQVBUIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3J4MTMxMC9nbm9tZS1leHRlbnNpb25fYXB0dXBkYXRlIiwKICAidXVpZCI6ICJhcHQtc2hvcnRjdXRzQHJ4MTMxMCIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "ideapad-mode@annexhack.inceptive.ru", "name": "ideapad mode", "pname": "ideapad-mode", "description": "Chargning mode indicator for laptops. Allows to switch the charging mode from conservative or healthy to normal mode. Indicates also which mode you are using now. Works on Lenovo Slim 7.\n\nPlease Report Problems or issues on Gitlab at:\n\nhttps://gitlab.com/annexhack/conservation-mode-lenovo", "link": "https://extensions.gnome.org/extension/4331/ideapad-mode/", "shell_version_map": {"40": {"version": "3", "sha256": "0hd0rqkrly27c2bqg7403ng192blrcidb2hrykx4i170i2x604fv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYXJnbmluZyBtb2RlIGluZGljYXRvciBmb3IgbGFwdG9wcy4gQWxsb3dzIHRvIHN3aXRjaCB0aGUgY2hhcmdpbmcgbW9kZSBmcm9tIGNvbnNlcnZhdGl2ZSBvciBoZWFsdGh5IHRvIG5vcm1hbCBtb2RlLiBJbmRpY2F0ZXMgYWxzbyB3aGljaCBtb2RlIHlvdSBhcmUgdXNpbmcgbm93LiBXb3JrcyBvbiBMZW5vdm8gU2xpbSA3LlxuXG5QbGVhc2UgUmVwb3J0IFByb2JsZW1zIG9yIGlzc3VlcyBvbiBHaXRsYWIgYXQ6XG5cbmh0dHBzOi8vZ2l0bGFiLmNvbS9hbm5leGhhY2svY29uc2VydmF0aW9uLW1vZGUtbGVub3ZvIiwKICAibmFtZSI6ICJpZGVhcGFkIG1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2FubmV4aGFjay9jb25zZXJ2YXRpb24tbW9kZS1sZW5vdm8iLAogICJ1dWlkIjogImlkZWFwYWQtbW9kZUBhbm5leGhhY2suaW5jZXB0aXZlLnJ1IiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "0hd0rqkrly27c2bqg7403ng192blrcidb2hrykx4i170i2x604fv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNoYXJnbmluZyBtb2RlIGluZGljYXRvciBmb3IgbGFwdG9wcy4gQWxsb3dzIHRvIHN3aXRjaCB0aGUgY2hhcmdpbmcgbW9kZSBmcm9tIGNvbnNlcnZhdGl2ZSBvciBoZWFsdGh5IHRvIG5vcm1hbCBtb2RlLiBJbmRpY2F0ZXMgYWxzbyB3aGljaCBtb2RlIHlvdSBhcmUgdXNpbmcgbm93LiBXb3JrcyBvbiBMZW5vdm8gU2xpbSA3LlxuXG5QbGVhc2UgUmVwb3J0IFByb2JsZW1zIG9yIGlzc3VlcyBvbiBHaXRsYWIgYXQ6XG5cbmh0dHBzOi8vZ2l0bGFiLmNvbS9hbm5leGhhY2svY29uc2VydmF0aW9uLW1vZGUtbGVub3ZvIiwKICAibmFtZSI6ICJpZGVhcGFkIG1vZGUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL2FubmV4aGFjay9jb25zZXJ2YXRpb24tbW9kZS1sZW5vdm8iLAogICJ1dWlkIjogImlkZWFwYWQtbW9kZUBhbm5leGhhY2suaW5jZXB0aXZlLnJ1IiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
@@ -537,7 +537,7 @@
 , {"uuid": "fullscreen-avoider@noobsai.github.com", "name": "Fullscreen Avoider", "pname": "fullscreen-avoider", "description": "Moves the top panel to the secondary monitor if the primary is in fullscreen", "link": "https://extensions.gnome.org/extension/4362/fullscreen-avoider/", "shell_version_map": {"38": {"version": "4", "sha256": "10vm28p2xpvwhzyjw1yfpgsbhahg1w673n73kq9ndx5vlnf9fji9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRoZSB0b3AgcGFuZWwgdG8gdGhlIHNlY29uZGFyeSBtb25pdG9yIGlmIHRoZSBwcmltYXJ5IGlzIGluIGZ1bGxzY3JlZW4iLAogICJleHRlbnNpb24taWQiOiAiZnVsbHNjcmVlbi1hdm9pZGVyIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiRnVsbHNjcmVlbiBBdm9pZGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZ1bGxzY3JlZW4tYXZvaWRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL05vb2JzYWkvZnVsbHNjcmVlbi1hdm9pZGVyIiwKICAidXVpZCI6ICJmdWxsc2NyZWVuLWF2b2lkZXJAbm9vYnNhaS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "6", "sha256": "04vlmrwlv58ps3v0flc2m8l18q52kz3yyk6yh9i543aiknprm40x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRoZSB0b3AgcGFuZWwgdG8gdGhlIHNlY29uZGFyeSBtb25pdG9yIGlmIHRoZSBwcmltYXJ5IGlzIGluIGZ1bGxzY3JlZW4iLAogICJleHRlbnNpb24taWQiOiAiZnVsbHNjcmVlbi1hdm9pZGVyIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiRnVsbHNjcmVlbiBBdm9pZGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZ1bGxzY3JlZW4tYXZvaWRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTm9vYnNhaS9mdWxsc2NyZWVuLWF2b2lkZXIiLAogICJ1dWlkIjogImZ1bGxzY3JlZW4tYXZvaWRlckBub29ic2FpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "04vlmrwlv58ps3v0flc2m8l18q52kz3yyk6yh9i543aiknprm40x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHRoZSB0b3AgcGFuZWwgdG8gdGhlIHNlY29uZGFyeSBtb25pdG9yIGlmIHRoZSBwcmltYXJ5IGlzIGluIGZ1bGxzY3JlZW4iLAogICJleHRlbnNpb24taWQiOiAiZnVsbHNjcmVlbi1hdm9pZGVyIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucyIsCiAgIm5hbWUiOiAiRnVsbHNjcmVlbiBBdm9pZGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZ1bGxzY3JlZW4tYXZvaWRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTm9vYnNhaS9mdWxsc2NyZWVuLWF2b2lkZXIiLAogICJ1dWlkIjogImZ1bGxzY3JlZW4tYXZvaWRlckBub29ic2FpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "shell-isw@zamraky.cz", "name": "MSI Fan Control", "pname": "msi-fan-control", "description": "Use isw to change MSI laptop fan settings", "link": "https://extensions.gnome.org/extension/4363/msi-fan-control/", "shell_version_map": {"38": {"version": "1", "sha256": "0pl9dxwkw47r4c0f5sxjhh8bxl82r0sjlwsji7pwypkb6m0hh342", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVzZSBpc3cgdG8gY2hhbmdlIE1TSSBsYXB0b3AgZmFuIHNldHRpbmdzIiwKICAibmFtZSI6ICJNU0kgRmFuIENvbnRyb2wiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic2hlbGwtaXN3QHphbXJha3kuY3oiLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "vertical-window-list@student.gitlab.com", "name": "Vertical Window List", "pname": "vertical-window-list", "description": "Displays opened windows in vertical panel with productivity perks\n\n- left click to open favorites/activate window\n- right click to close\n- middle click to rename\n- drag-and-drop to re-arrange\n- Alt-Tab to cycle\n- adjust panel width, transparency and icon size in extension settings", "link": "https://extensions.gnome.org/extension/4369/vertical-window-list/", "shell_version_map": {"40": {"version": "7", "sha256": "1gakw5c0gjygj61h9lhd3s7vg14vry055qnxrrdvm6vaingkzqhr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIG9wZW5lZCB3aW5kb3dzIGluIHZlcnRpY2FsIHBhbmVsIHdpdGggcHJvZHVjdGl2aXR5IHBlcmtzXG5cbi0gbGVmdCBjbGljayB0byBvcGVuIGZhdm9yaXRlcy9hY3RpdmF0ZSB3aW5kb3dcbi0gcmlnaHQgY2xpY2sgdG8gY2xvc2Vcbi0gbWlkZGxlIGNsaWNrIHRvIHJlbmFtZVxuLSBkcmFnLWFuZC1kcm9wIHRvIHJlLWFycmFuZ2Vcbi0gQWx0LVRhYiB0byBjeWNsZVxuLSBhZGp1c3QgcGFuZWwgd2lkdGgsIHRyYW5zcGFyZW5jeSBhbmQgaWNvbiBzaXplIGluIGV4dGVuc2lvbiBzZXR0aW5ncyIsCiAgIm5hbWUiOiAiVmVydGljYWwgV2luZG93IExpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3N0dWRlbnQvdmVydGljYWwtd2luZG93LWxpc3QiLAogICJ1dWlkIjogInZlcnRpY2FsLXdpbmRvdy1saXN0QHN0dWRlbnQuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "1gakw5c0gjygj61h9lhd3s7vg14vry055qnxrrdvm6vaingkzqhr", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIG9wZW5lZCB3aW5kb3dzIGluIHZlcnRpY2FsIHBhbmVsIHdpdGggcHJvZHVjdGl2aXR5IHBlcmtzXG5cbi0gbGVmdCBjbGljayB0byBvcGVuIGZhdm9yaXRlcy9hY3RpdmF0ZSB3aW5kb3dcbi0gcmlnaHQgY2xpY2sgdG8gY2xvc2Vcbi0gbWlkZGxlIGNsaWNrIHRvIHJlbmFtZVxuLSBkcmFnLWFuZC1kcm9wIHRvIHJlLWFycmFuZ2Vcbi0gQWx0LVRhYiB0byBjeWNsZVxuLSBhZGp1c3QgcGFuZWwgd2lkdGgsIHRyYW5zcGFyZW5jeSBhbmQgaWNvbiBzaXplIGluIGV4dGVuc2lvbiBzZXR0aW5ncyIsCiAgIm5hbWUiOiAiVmVydGljYWwgV2luZG93IExpc3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3N0dWRlbnQvdmVydGljYWwtd2luZG93LWxpc3QiLAogICJ1dWlkIjogInZlcnRpY2FsLXdpbmRvdy1saXN0QHN0dWRlbnQuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}}}
-, {"uuid": "ShutdownTimer@deminder", "name": "Shutdown Timer", "pname": "shutdowntimer", "description": "Shutdown/reboot/suspend the device after a specific time or wake with a rtc alarm.\n\nThe screen saver will not interrupt the timer. A privileged control script may be installed to control shutdown and rtcwake as user. Additionally, a check command may be configured before shutdown.", "link": "https://extensions.gnome.org/extension/4372/shutdowntimer/", "shell_version_map": {"38": {"version": "19", "sha256": "1lgq1gmwqz8a55bqblg973ypw45a9zr3zgn7rrarcfgzx3ncj332", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3JlYm9vdC9zdXNwZW5kIHRoZSBkZXZpY2UgYWZ0ZXIgYSBzcGVjaWZpYyB0aW1lIG9yIHdha2Ugd2l0aCBhIHJ0YyBhbGFybS5cblxuVGhlIHNjcmVlbiBzYXZlciB3aWxsIG5vdCBpbnRlcnJ1cHQgdGhlIHRpbWVyLiBBIHByaXZpbGVnZWQgY29udHJvbCBzY3JpcHQgbWF5IGJlIGluc3RhbGxlZCB0byBjb250cm9sIHNodXRkb3duIGFuZCBydGN3YWtlIGFzIHVzZXIuIEFkZGl0aW9uYWxseSwgYSBjaGVjayBjb21tYW5kIG1heSBiZSBjb25maWd1cmVkIGJlZm9yZSBzaHV0ZG93bi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJTaHV0ZG93blRpbWVyIiwKICAibmFtZSI6ICJTaHV0ZG93biBUaW1lciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV0ZG93bnRpbWVyLWRlbWluZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9EZW1pbmRlci9TaHV0ZG93blRpbWVyIiwKICAidXVpZCI6ICJTaHV0ZG93blRpbWVyQGRlbWluZGVyIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "40": {"version": "19", "sha256": "1lgq1gmwqz8a55bqblg973ypw45a9zr3zgn7rrarcfgzx3ncj332", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3JlYm9vdC9zdXNwZW5kIHRoZSBkZXZpY2UgYWZ0ZXIgYSBzcGVjaWZpYyB0aW1lIG9yIHdha2Ugd2l0aCBhIHJ0YyBhbGFybS5cblxuVGhlIHNjcmVlbiBzYXZlciB3aWxsIG5vdCBpbnRlcnJ1cHQgdGhlIHRpbWVyLiBBIHByaXZpbGVnZWQgY29udHJvbCBzY3JpcHQgbWF5IGJlIGluc3RhbGxlZCB0byBjb250cm9sIHNodXRkb3duIGFuZCBydGN3YWtlIGFzIHVzZXIuIEFkZGl0aW9uYWxseSwgYSBjaGVjayBjb21tYW5kIG1heSBiZSBjb25maWd1cmVkIGJlZm9yZSBzaHV0ZG93bi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJTaHV0ZG93blRpbWVyIiwKICAibmFtZSI6ICJTaHV0ZG93biBUaW1lciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV0ZG93bnRpbWVyLWRlbWluZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9EZW1pbmRlci9TaHV0ZG93blRpbWVyIiwKICAidXVpZCI6ICJTaHV0ZG93blRpbWVyQGRlbWluZGVyIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "41": {"version": "19", "sha256": "1lgq1gmwqz8a55bqblg973ypw45a9zr3zgn7rrarcfgzx3ncj332", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3JlYm9vdC9zdXNwZW5kIHRoZSBkZXZpY2UgYWZ0ZXIgYSBzcGVjaWZpYyB0aW1lIG9yIHdha2Ugd2l0aCBhIHJ0YyBhbGFybS5cblxuVGhlIHNjcmVlbiBzYXZlciB3aWxsIG5vdCBpbnRlcnJ1cHQgdGhlIHRpbWVyLiBBIHByaXZpbGVnZWQgY29udHJvbCBzY3JpcHQgbWF5IGJlIGluc3RhbGxlZCB0byBjb250cm9sIHNodXRkb3duIGFuZCBydGN3YWtlIGFzIHVzZXIuIEFkZGl0aW9uYWxseSwgYSBjaGVjayBjb21tYW5kIG1heSBiZSBjb25maWd1cmVkIGJlZm9yZSBzaHV0ZG93bi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJTaHV0ZG93blRpbWVyIiwKICAibmFtZSI6ICJTaHV0ZG93biBUaW1lciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV0ZG93bnRpbWVyLWRlbWluZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9EZW1pbmRlci9TaHV0ZG93blRpbWVyIiwKICAidXVpZCI6ICJTaHV0ZG93blRpbWVyQGRlbWluZGVyIiwKICAidmVyc2lvbiI6IDE5Cn0="}}}
+, {"uuid": "ShutdownTimer@deminder", "name": "Shutdown Timer", "pname": "shutdowntimer", "description": "Shutdown/reboot/suspend the device after a specific time or wake with a rtc alarm.\n\nThe screen-saver will not interrupt the timer. A privileged control script may be installed to control shutdown and rtcwake as user. Additionally, a check command may be configured before shutdown.", "link": "https://extensions.gnome.org/extension/4372/shutdowntimer/", "shell_version_map": {"38": {"version": "19", "sha256": "1jagvd6a4xw0vm18qi6czfglp16bywms1y55vii2dwvb1xlm4sjz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3JlYm9vdC9zdXNwZW5kIHRoZSBkZXZpY2UgYWZ0ZXIgYSBzcGVjaWZpYyB0aW1lIG9yIHdha2Ugd2l0aCBhIHJ0YyBhbGFybS5cblxuVGhlIHNjcmVlbi1zYXZlciB3aWxsIG5vdCBpbnRlcnJ1cHQgdGhlIHRpbWVyLiBBIHByaXZpbGVnZWQgY29udHJvbCBzY3JpcHQgbWF5IGJlIGluc3RhbGxlZCB0byBjb250cm9sIHNodXRkb3duIGFuZCBydGN3YWtlIGFzIHVzZXIuIEFkZGl0aW9uYWxseSwgYSBjaGVjayBjb21tYW5kIG1heSBiZSBjb25maWd1cmVkIGJlZm9yZSBzaHV0ZG93bi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJTaHV0ZG93blRpbWVyIiwKICAibmFtZSI6ICJTaHV0ZG93biBUaW1lciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV0ZG93bnRpbWVyLWRlbWluZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9EZW1pbmRlci9TaHV0ZG93blRpbWVyIiwKICAidXVpZCI6ICJTaHV0ZG93blRpbWVyQGRlbWluZGVyIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "40": {"version": "19", "sha256": "1jagvd6a4xw0vm18qi6czfglp16bywms1y55vii2dwvb1xlm4sjz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3JlYm9vdC9zdXNwZW5kIHRoZSBkZXZpY2UgYWZ0ZXIgYSBzcGVjaWZpYyB0aW1lIG9yIHdha2Ugd2l0aCBhIHJ0YyBhbGFybS5cblxuVGhlIHNjcmVlbi1zYXZlciB3aWxsIG5vdCBpbnRlcnJ1cHQgdGhlIHRpbWVyLiBBIHByaXZpbGVnZWQgY29udHJvbCBzY3JpcHQgbWF5IGJlIGluc3RhbGxlZCB0byBjb250cm9sIHNodXRkb3duIGFuZCBydGN3YWtlIGFzIHVzZXIuIEFkZGl0aW9uYWxseSwgYSBjaGVjayBjb21tYW5kIG1heSBiZSBjb25maWd1cmVkIGJlZm9yZSBzaHV0ZG93bi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJTaHV0ZG93blRpbWVyIiwKICAibmFtZSI6ICJTaHV0ZG93biBUaW1lciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV0ZG93bnRpbWVyLWRlbWluZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9EZW1pbmRlci9TaHV0ZG93blRpbWVyIiwKICAidXVpZCI6ICJTaHV0ZG93blRpbWVyQGRlbWluZGVyIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "41": {"version": "19", "sha256": "1jagvd6a4xw0vm18qi6czfglp16bywms1y55vii2dwvb1xlm4sjz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3JlYm9vdC9zdXNwZW5kIHRoZSBkZXZpY2UgYWZ0ZXIgYSBzcGVjaWZpYyB0aW1lIG9yIHdha2Ugd2l0aCBhIHJ0YyBhbGFybS5cblxuVGhlIHNjcmVlbi1zYXZlciB3aWxsIG5vdCBpbnRlcnJ1cHQgdGhlIHRpbWVyLiBBIHByaXZpbGVnZWQgY29udHJvbCBzY3JpcHQgbWF5IGJlIGluc3RhbGxlZCB0byBjb250cm9sIHNodXRkb3duIGFuZCBydGN3YWtlIGFzIHVzZXIuIEFkZGl0aW9uYWxseSwgYSBjaGVjayBjb21tYW5kIG1heSBiZSBjb25maWd1cmVkIGJlZm9yZSBzaHV0ZG93bi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJTaHV0ZG93blRpbWVyIiwKICAibmFtZSI6ICJTaHV0ZG93biBUaW1lciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zaHV0ZG93bnRpbWVyLWRlbWluZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9EZW1pbmRlci9TaHV0ZG93blRpbWVyIiwKICAidXVpZCI6ICJTaHV0ZG93blRpbWVyQGRlbWluZGVyIiwKICAidmVyc2lvbiI6IDE5Cn0="}, "42": {"version": "22", "sha256": "0g9qb52i8bbi5sqadarmc8sfgicryjjw13ys8q6nlhvqb4albmqc", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNodXRkb3duL3JlYm9vdC9zdXNwZW5kIHRoZSBkZXZpY2UgYWZ0ZXIgYSBzcGVjaWZpYyB0aW1lIG9yIHdha2Ugd2l0aCBhIHJ0YyBhbGFybS5cblxuVGhlIHNjcmVlbi1zYXZlciB3aWxsIG5vdCBpbnRlcnJ1cHQgdGhlIHRpbWVyLiBBIHByaXZpbGVnZWQgY29udHJvbCBzY3JpcHQgbWF5IGJlIGluc3RhbGxlZCB0byBjb250cm9sIHNodXRkb3duIGFuZCBydGN3YWtlIGFzIHVzZXIuIEFkZGl0aW9uYWxseSwgYSBjaGVjayBjb21tYW5kIG1heSBiZSBjb25maWd1cmVkIGJlZm9yZSBzaHV0ZG93bi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJTaHV0ZG93blRpbWVyIiwKICAibmFtZSI6ICJTaHV0ZG93biBUaW1lciIsCiAgInNlc3Npb24tbW9kZXMiOiBbCiAgICAidXNlciIsCiAgICAidW5sb2NrLWRpYWxvZyIKICBdLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuc2h1dGRvd250aW1lci1kZW1pbmRlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9EZW1pbmRlci9TaHV0ZG93blRpbWVyIiwKICAidXVpZCI6ICJTaHV0ZG93blRpbWVyQGRlbWluZGVyIiwKICAidmVyc2lvbiI6IDIyCn0="}}}
 , {"uuid": "docker_status2@gpouilloux", "name": "Docker Integration", "pname": "docker-integration", "description": "A status menu for managing docker containers.", "link": "https://extensions.gnome.org/extension/4374/docker-integration/", "shell_version_map": {"40": {"version": "1", "sha256": "1ia763h3wbc3d3p9ddb1b9rg5f486y5x3m2k4pblq9f9ca9cjrdy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc3RhdHVzIG1lbnUgZm9yIG1hbmFnaW5nIGRvY2tlciBjb250YWluZXJzLiIsCiAgIm5hbWUiOiAiRG9ja2VyIEludGVncmF0aW9uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjE0IiwKICAgICIzLjE2IiwKICAgICIzLjE4IiwKICAgICIzLjIwIiwKICAgICIzLjIyIiwKICAgICIzLjI0IiwKICAgICIzLjI2IiwKICAgICIzLjI4IiwKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICI0MC4wIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZ3BvdWlsbG91eC9nbm9tZS1zaGVsbC1leHRlbnNpb24tZG9ja2VyIiwKICAidXVpZCI6ICJkb2NrZXJfc3RhdHVzMkBncG91aWxsb3V4IiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"uuid": "bifocals@shiznatix", "name": "Bifocals", "pname": "bifocals", "description": "Gnome extension adding more window management keyboard shortcuts.\n\n* Left / right 'view split' anchoring cycles through 3 sizes: 1/3, 1/2, and 2/3 of the current screen width.\n*Adds 'mid screen' of centering the window with 3/4 screen height and width.", "link": "https://extensions.gnome.org/extension/4375/bifocals/", "shell_version_map": {"38": {"version": "1", "sha256": "02j0if3bwaws0svaz98054jznrx9pj8zkhy4avsnnhchv2dwmgdi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIGV4dGVuc2lvbiBhZGRpbmcgbW9yZSB3aW5kb3cgbWFuYWdlbWVudCBrZXlib2FyZCBzaG9ydGN1dHMuXG5cbiogTGVmdCAvIHJpZ2h0ICd2aWV3IHNwbGl0JyBhbmNob3JpbmcgY3ljbGVzIHRocm91Z2ggMyBzaXplczogMS8zLCAxLzIsIGFuZCAyLzMgb2YgdGhlIGN1cnJlbnQgc2NyZWVuIHdpZHRoLlxuKkFkZHMgJ21pZCBzY3JlZW4nIG9mIGNlbnRlcmluZyB0aGUgd2luZG93IHdpdGggMy80IHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoLiIsCiAgIm5hbWUiOiAiQmlmb2NhbHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2hpem5hdGl4L2JpZm9jYWxzLWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiYmlmb2NhbHNAc2hpem5hdGl4IiwKICAidmVyc2lvbiI6IDEKfQ=="}, "40": {"version": "1", "sha256": "02j0if3bwaws0svaz98054jznrx9pj8zkhy4avsnnhchv2dwmgdi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIGV4dGVuc2lvbiBhZGRpbmcgbW9yZSB3aW5kb3cgbWFuYWdlbWVudCBrZXlib2FyZCBzaG9ydGN1dHMuXG5cbiogTGVmdCAvIHJpZ2h0ICd2aWV3IHNwbGl0JyBhbmNob3JpbmcgY3ljbGVzIHRocm91Z2ggMyBzaXplczogMS8zLCAxLzIsIGFuZCAyLzMgb2YgdGhlIGN1cnJlbnQgc2NyZWVuIHdpZHRoLlxuKkFkZHMgJ21pZCBzY3JlZW4nIG9mIGNlbnRlcmluZyB0aGUgd2luZG93IHdpdGggMy80IHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoLiIsCiAgIm5hbWUiOiAiQmlmb2NhbHMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2hpem5hdGl4L2JpZm9jYWxzLWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiYmlmb2NhbHNAc2hpem5hdGl4IiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"uuid": "kubectl-context@bernot.dev", "name": "kubectl context", "pname": "kubectl-context", "description": "Displays kubectl current-context", "link": "https://extensions.gnome.org/extension/4377/kubectl-context/", "shell_version_map": {"38": {"version": "1", "sha256": "1040dy3m5bpbqqgc60a3l5ia4g0cddfvd8iwiwxm4f7hbi9kksk8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIGt1YmVjdGwgY3VycmVudC1jb250ZXh0IiwKICAibmFtZSI6ICJrdWJlY3RsIGNvbnRleHQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iZXJub3QtZGV2L2t1YmVjdGwtY29udGV4dCIsCiAgInV1aWQiOiAia3ViZWN0bC1jb250ZXh0QGJlcm5vdC5kZXYiLAogICJ2ZXJzaW9uIjogMQp9"}}}
@@ -551,10 +551,10 @@
 , {"uuid": "replaceActivitiesText@pratap.fastmail.fm", "name": "Replace Activities Text", "pname": "replace-activities-text", "description": "A Simple Extension to Change 'Activities' Label with Logo and Text.\nYou can Keep Either\n1. Logo or\n2. Text or\n3. Both or\n4. None at all", "link": "https://extensions.gnome.org/extension/4405/replace-activities-text/", "shell_version_map": {"38": {"version": "8", "sha256": "04adx4043d3ni510h44pi3gr0k15a4n0zwr4k5fxisr4yjl1510w", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgU2ltcGxlIEV4dGVuc2lvbiB0byBDaGFuZ2UgJ0FjdGl2aXRpZXMnIExhYmVsIHdpdGggTG9nbyBhbmQgVGV4dC5cbllvdSBjYW4gS2VlcCBFaXRoZXJcbjEuIExvZ28gb3JcbjIuIFRleHQgb3JcbjMuIEJvdGggb3JcbjQuIE5vbmUgYXQgYWxsIiwKICAibmFtZSI6ICJSZXBsYWNlIEFjdGl2aXRpZXMgVGV4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BSQVRBUC1LVU1BUi9BY3Rpdml0aWVzVGV4dCIsCiAgInV1aWQiOiAicmVwbGFjZUFjdGl2aXRpZXNUZXh0QHByYXRhcC5mYXN0bWFpbC5mbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "10", "sha256": "0fkpphd6ly5n7fybrla1a31sqg10cdll44ilz1vc1achphmbxlk6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgU2ltcGxlIEV4dGVuc2lvbiB0byBDaGFuZ2UgJ0FjdGl2aXRpZXMnIExhYmVsIHdpdGggTG9nbyBhbmQgVGV4dC5cbllvdSBjYW4gS2VlcCBFaXRoZXJcbjEuIExvZ28gb3JcbjIuIFRleHQgb3JcbjMuIEJvdGggb3JcbjQuIE5vbmUgYXQgYWxsIiwKICAibmFtZSI6ICJSZXBsYWNlIEFjdGl2aXRpZXMgVGV4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUFJBVEFQLUtVTUFSL0FjdGl2aXRpZXNUZXh0IiwKICAidXVpZCI6ICJyZXBsYWNlQWN0aXZpdGllc1RleHRAcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "0fkpphd6ly5n7fybrla1a31sqg10cdll44ilz1vc1achphmbxlk6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgU2ltcGxlIEV4dGVuc2lvbiB0byBDaGFuZ2UgJ0FjdGl2aXRpZXMnIExhYmVsIHdpdGggTG9nbyBhbmQgVGV4dC5cbllvdSBjYW4gS2VlcCBFaXRoZXJcbjEuIExvZ28gb3JcbjIuIFRleHQgb3JcbjMuIEJvdGggb3JcbjQuIE5vbmUgYXQgYWxsIiwKICAibmFtZSI6ICJSZXBsYWNlIEFjdGl2aXRpZXMgVGV4dCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vUFJBVEFQLUtVTUFSL0FjdGl2aXRpZXNUZXh0IiwKICAidXVpZCI6ICJyZXBsYWNlQWN0aXZpdGllc1RleHRAcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
 , {"uuid": "appMenuIcon@pratap.fastmail.fm", "name": "Colored Application Menu Icon", "pname": "app-menu-icon-remove-symbolic", "description": "Remove Symbolic Icons and Saturation Effect for App Menu Icon", "link": "https://extensions.gnome.org/extension/4408/app-menu-icon-remove-symbolic/", "shell_version_map": {"38": {"version": "2", "sha256": "1ggj4c7knbsjwg7n1g7sqjz188ivlihsq8p2a8jd71iw49b917cj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSBTeW1ib2xpYyBJY29ucyBhbmQgU2F0dXJhdGlvbiBFZmZlY3QgZm9yIEFwcCBNZW51IEljb24iLAogICJuYW1lIjogIkNvbG9yZWQgQXBwbGljYXRpb24gTWVudSBJY29uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYXBwTWVudUljb25AcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "1ggj4c7knbsjwg7n1g7sqjz188ivlihsq8p2a8jd71iw49b917cj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSBTeW1ib2xpYyBJY29ucyBhbmQgU2F0dXJhdGlvbiBFZmZlY3QgZm9yIEFwcCBNZW51IEljb24iLAogICJuYW1lIjogIkNvbG9yZWQgQXBwbGljYXRpb24gTWVudSBJY29uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYXBwTWVudUljb25AcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "1ggj4c7knbsjwg7n1g7sqjz188ivlihsq8p2a8jd71iw49b917cj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJlbW92ZSBTeW1ib2xpYyBJY29ucyBhbmQgU2F0dXJhdGlvbiBFZmZlY3QgZm9yIEFwcCBNZW51IEljb24iLAogICJuYW1lIjogIkNvbG9yZWQgQXBwbGljYXRpb24gTWVudSBJY29uIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYXBwTWVudUljb25AcHJhdGFwLmZhc3RtYWlsLmZtIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "gnome-trash@b00f.github.io", "name": "Gnome Trash", "pname": "gnome-trash", "description": "A gnome shell extension to manage your home trash. You can manage trash items from the panel and open or empty the trash.", "link": "https://extensions.gnome.org/extension/4410/gnome-trash/", "shell_version_map": {"38": {"version": "3", "sha256": "03pyala1i21izg5rl4qqh5bxk36fp8d52bs9ggrik2kav420xhhk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ25vbWUgc2hlbGwgZXh0ZW5zaW9uIHRvIG1hbmFnZSB5b3VyIGhvbWUgdHJhc2guIFlvdSBjYW4gbWFuYWdlIHRyYXNoIGl0ZW1zIGZyb20gdGhlIHBhbmVsIGFuZCBvcGVuIG9yIGVtcHR5IHRoZSB0cmFzaC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS10cmFzaCIsCiAgIm5hbWUiOiAiR25vbWUgVHJhc2giLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9iMDBmL2dub21lLXRyYXNoIiwKICAidXVpZCI6ICJnbm9tZS10cmFzaEBiMDBmLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "6", "sha256": "0hkpkpxd1xpg0rsvf007wzc6s6sx1gsycl6hg69fa5bqf451r0db", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ25vbWUgc2hlbGwgZXh0ZW5zaW9uIHRvIG1hbmFnZSB5b3VyIGhvbWUgdHJhc2guIFlvdSBjYW4gbWFuYWdlIHRyYXNoIGl0ZW1zIGZyb20gdGhlIHBhbmVsIGFuZCBvcGVuIG9yIGVtcHR5IHRoZSB0cmFzaC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS10cmFzaCIsCiAgIm5hbWUiOiAiR25vbWUgVHJhc2giLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2IwMGYvZ25vbWUtdHJhc2giLAogICJ1dWlkIjogImdub21lLXRyYXNoQGIwMGYuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDYKfQ=="}, "41": {"version": "6", "sha256": "0hkpkpxd1xpg0rsvf007wzc6s6sx1gsycl6hg69fa5bqf451r0db", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ25vbWUgc2hlbGwgZXh0ZW5zaW9uIHRvIG1hbmFnZSB5b3VyIGhvbWUgdHJhc2guIFlvdSBjYW4gbWFuYWdlIHRyYXNoIGl0ZW1zIGZyb20gdGhlIHBhbmVsIGFuZCBvcGVuIG9yIGVtcHR5IHRoZSB0cmFzaC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS10cmFzaCIsCiAgIm5hbWUiOiAiR25vbWUgVHJhc2giLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2IwMGYvZ25vbWUtdHJhc2giLAogICJ1dWlkIjogImdub21lLXRyYXNoQGIwMGYuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDYKfQ=="}}}
-, {"uuid": "advanced-alt-tab@G-dH.github.com", "name": "AATWS - Advanced Alt-Tab Window Switcher", "pname": "advanced-alttab-window-switcher", "description": "Highly customizable replacement for the Alt/Super+Tab window/app switchers that offers 'type to search' mode, various filtering and sorting options, workspace and monitor navigation, configurable hotkeys for navigation and window/app control and an app launcher.\nAATWS is compatible with Custom Hot Corners - Extended extension, allows to configure any mouse button and scroll wheel and can be used as a mouse controlled 'dock'.\n\nNote that GNOME has 3 built-in window switcher popups and this extension replaces all of them. The first one is grouping windows by applications and is used as default in vanilla GNOME distributions. The second one offers window list and the third one windows of the currently focused application. You can set keyboard shortcuts for all the switchers in the Gnome Settings.\n\nFollow the link below for more information and bug reports.\n\nKeywords: alttab, search, find, window search, popup delay, applications, apps, dock, monitor, thumbnail, preview, move windows, launch app, switch, VIM.", "link": "https://extensions.gnome.org/extension/4412/advanced-alttab-window-switcher/", "shell_version_map": {"38": {"version": "12", "sha256": "05v1libn5prmmlshkiylmipkmqvyhkv986fr8fsmgapb98r000wb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZ2hseSBjdXN0b21pemFibGUgcmVwbGFjZW1lbnQgZm9yIHRoZSBBbHQvU3VwZXIrVGFiIHdpbmRvdy9hcHAgc3dpdGNoZXJzIHRoYXQgb2ZmZXJzICd0eXBlIHRvIHNlYXJjaCcgbW9kZSwgdmFyaW91cyBmaWx0ZXJpbmcgYW5kIHNvcnRpbmcgb3B0aW9ucywgd29ya3NwYWNlIGFuZCBtb25pdG9yIG5hdmlnYXRpb24sIGNvbmZpZ3VyYWJsZSBob3RrZXlzIGZvciBuYXZpZ2F0aW9uIGFuZCB3aW5kb3cvYXBwIGNvbnRyb2wgYW5kIGFuIGFwcCBsYXVuY2hlci5cbkFBVFdTIGlzIGNvbXBhdGlibGUgd2l0aCBDdXN0b20gSG90IENvcm5lcnMgLSBFeHRlbmRlZCBleHRlbnNpb24sIGFsbG93cyB0byBjb25maWd1cmUgYW55IG1vdXNlIGJ1dHRvbiBhbmQgc2Nyb2xsIHdoZWVsIGFuZCBjYW4gYmUgdXNlZCBhcyBhIG1vdXNlIGNvbnRyb2xsZWQgJ2RvY2snLlxuXG5Ob3RlIHRoYXQgR05PTUUgaGFzIDMgYnVpbHQtaW4gd2luZG93IHN3aXRjaGVyIHBvcHVwcyBhbmQgdGhpcyBleHRlbnNpb24gcmVwbGFjZXMgYWxsIG9mIHRoZW0uIFRoZSBmaXJzdCBvbmUgaXMgZ3JvdXBpbmcgd2luZG93cyBieSBhcHBsaWNhdGlvbnMgYW5kIGlzIHVzZWQgYXMgZGVmYXVsdCBpbiB2YW5pbGxhIEdOT01FIGRpc3RyaWJ1dGlvbnMuIFRoZSBzZWNvbmQgb25lIG9mZmVycyB3aW5kb3cgbGlzdCBhbmQgdGhlIHRoaXJkIG9uZSB3aW5kb3dzIG9mIHRoZSBjdXJyZW50bHkgZm9jdXNlZCBhcHBsaWNhdGlvbi4gWW91IGNhbiBzZXQga2V5Ym9hcmQgc2hvcnRjdXRzIGZvciBhbGwgdGhlIHN3aXRjaGVycyBpbiB0aGUgR25vbWUgU2V0dGluZ3MuXG5cbkZvbGxvdyB0aGUgbGluayBiZWxvdyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgYnVnIHJlcG9ydHMuXG5cbktleXdvcmRzOiBhbHR0YWIsIHNlYXJjaCwgZmluZCwgd2luZG93IHNlYXJjaCwgcG9wdXAgZGVsYXksIGFwcGxpY2F0aW9ucywgYXBwcywgZG9jaywgbW9uaXRvciwgdGh1bWJuYWlsLCBwcmV2aWV3LCBtb3ZlIHdpbmRvd3MsIGxhdW5jaCBhcHAsIHN3aXRjaCwgVklNLiIsCiAgImdldHRleHQtZG9tYWluIjogImFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAibmFtZSI6ICJBQVRXUyAtIEFkdmFuY2VkIEFsdC1UYWIgV2luZG93IFN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9hZHZhbmNlZC1hbHR0YWItd2luZG93LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhZHZhbmNlZC1hbHQtdGFiQEctZEguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "05v1libn5prmmlshkiylmipkmqvyhkv986fr8fsmgapb98r000wb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZ2hseSBjdXN0b21pemFibGUgcmVwbGFjZW1lbnQgZm9yIHRoZSBBbHQvU3VwZXIrVGFiIHdpbmRvdy9hcHAgc3dpdGNoZXJzIHRoYXQgb2ZmZXJzICd0eXBlIHRvIHNlYXJjaCcgbW9kZSwgdmFyaW91cyBmaWx0ZXJpbmcgYW5kIHNvcnRpbmcgb3B0aW9ucywgd29ya3NwYWNlIGFuZCBtb25pdG9yIG5hdmlnYXRpb24sIGNvbmZpZ3VyYWJsZSBob3RrZXlzIGZvciBuYXZpZ2F0aW9uIGFuZCB3aW5kb3cvYXBwIGNvbnRyb2wgYW5kIGFuIGFwcCBsYXVuY2hlci5cbkFBVFdTIGlzIGNvbXBhdGlibGUgd2l0aCBDdXN0b20gSG90IENvcm5lcnMgLSBFeHRlbmRlZCBleHRlbnNpb24sIGFsbG93cyB0byBjb25maWd1cmUgYW55IG1vdXNlIGJ1dHRvbiBhbmQgc2Nyb2xsIHdoZWVsIGFuZCBjYW4gYmUgdXNlZCBhcyBhIG1vdXNlIGNvbnRyb2xsZWQgJ2RvY2snLlxuXG5Ob3RlIHRoYXQgR05PTUUgaGFzIDMgYnVpbHQtaW4gd2luZG93IHN3aXRjaGVyIHBvcHVwcyBhbmQgdGhpcyBleHRlbnNpb24gcmVwbGFjZXMgYWxsIG9mIHRoZW0uIFRoZSBmaXJzdCBvbmUgaXMgZ3JvdXBpbmcgd2luZG93cyBieSBhcHBsaWNhdGlvbnMgYW5kIGlzIHVzZWQgYXMgZGVmYXVsdCBpbiB2YW5pbGxhIEdOT01FIGRpc3RyaWJ1dGlvbnMuIFRoZSBzZWNvbmQgb25lIG9mZmVycyB3aW5kb3cgbGlzdCBhbmQgdGhlIHRoaXJkIG9uZSB3aW5kb3dzIG9mIHRoZSBjdXJyZW50bHkgZm9jdXNlZCBhcHBsaWNhdGlvbi4gWW91IGNhbiBzZXQga2V5Ym9hcmQgc2hvcnRjdXRzIGZvciBhbGwgdGhlIHN3aXRjaGVycyBpbiB0aGUgR25vbWUgU2V0dGluZ3MuXG5cbkZvbGxvdyB0aGUgbGluayBiZWxvdyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgYnVnIHJlcG9ydHMuXG5cbktleXdvcmRzOiBhbHR0YWIsIHNlYXJjaCwgZmluZCwgd2luZG93IHNlYXJjaCwgcG9wdXAgZGVsYXksIGFwcGxpY2F0aW9ucywgYXBwcywgZG9jaywgbW9uaXRvciwgdGh1bWJuYWlsLCBwcmV2aWV3LCBtb3ZlIHdpbmRvd3MsIGxhdW5jaCBhcHAsIHN3aXRjaCwgVklNLiIsCiAgImdldHRleHQtZG9tYWluIjogImFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAibmFtZSI6ICJBQVRXUyAtIEFkdmFuY2VkIEFsdC1UYWIgV2luZG93IFN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9hZHZhbmNlZC1hbHR0YWItd2luZG93LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhZHZhbmNlZC1hbHQtdGFiQEctZEguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "05v1libn5prmmlshkiylmipkmqvyhkv986fr8fsmgapb98r000wb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZ2hseSBjdXN0b21pemFibGUgcmVwbGFjZW1lbnQgZm9yIHRoZSBBbHQvU3VwZXIrVGFiIHdpbmRvdy9hcHAgc3dpdGNoZXJzIHRoYXQgb2ZmZXJzICd0eXBlIHRvIHNlYXJjaCcgbW9kZSwgdmFyaW91cyBmaWx0ZXJpbmcgYW5kIHNvcnRpbmcgb3B0aW9ucywgd29ya3NwYWNlIGFuZCBtb25pdG9yIG5hdmlnYXRpb24sIGNvbmZpZ3VyYWJsZSBob3RrZXlzIGZvciBuYXZpZ2F0aW9uIGFuZCB3aW5kb3cvYXBwIGNvbnRyb2wgYW5kIGFuIGFwcCBsYXVuY2hlci5cbkFBVFdTIGlzIGNvbXBhdGlibGUgd2l0aCBDdXN0b20gSG90IENvcm5lcnMgLSBFeHRlbmRlZCBleHRlbnNpb24sIGFsbG93cyB0byBjb25maWd1cmUgYW55IG1vdXNlIGJ1dHRvbiBhbmQgc2Nyb2xsIHdoZWVsIGFuZCBjYW4gYmUgdXNlZCBhcyBhIG1vdXNlIGNvbnRyb2xsZWQgJ2RvY2snLlxuXG5Ob3RlIHRoYXQgR05PTUUgaGFzIDMgYnVpbHQtaW4gd2luZG93IHN3aXRjaGVyIHBvcHVwcyBhbmQgdGhpcyBleHRlbnNpb24gcmVwbGFjZXMgYWxsIG9mIHRoZW0uIFRoZSBmaXJzdCBvbmUgaXMgZ3JvdXBpbmcgd2luZG93cyBieSBhcHBsaWNhdGlvbnMgYW5kIGlzIHVzZWQgYXMgZGVmYXVsdCBpbiB2YW5pbGxhIEdOT01FIGRpc3RyaWJ1dGlvbnMuIFRoZSBzZWNvbmQgb25lIG9mZmVycyB3aW5kb3cgbGlzdCBhbmQgdGhlIHRoaXJkIG9uZSB3aW5kb3dzIG9mIHRoZSBjdXJyZW50bHkgZm9jdXNlZCBhcHBsaWNhdGlvbi4gWW91IGNhbiBzZXQga2V5Ym9hcmQgc2hvcnRjdXRzIGZvciBhbGwgdGhlIHN3aXRjaGVycyBpbiB0aGUgR25vbWUgU2V0dGluZ3MuXG5cbkZvbGxvdyB0aGUgbGluayBiZWxvdyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgYnVnIHJlcG9ydHMuXG5cbktleXdvcmRzOiBhbHR0YWIsIHNlYXJjaCwgZmluZCwgd2luZG93IHNlYXJjaCwgcG9wdXAgZGVsYXksIGFwcGxpY2F0aW9ucywgYXBwcywgZG9jaywgbW9uaXRvciwgdGh1bWJuYWlsLCBwcmV2aWV3LCBtb3ZlIHdpbmRvd3MsIGxhdW5jaCBhcHAsIHN3aXRjaCwgVklNLiIsCiAgImdldHRleHQtZG9tYWluIjogImFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAibmFtZSI6ICJBQVRXUyAtIEFkdmFuY2VkIEFsdC1UYWIgV2luZG93IFN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9hZHZhbmNlZC1hbHR0YWItd2luZG93LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhZHZhbmNlZC1hbHQtdGFiQEctZEguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
+, {"uuid": "advanced-alt-tab@G-dH.github.com", "name": "AATWS - Advanced Alt-Tab Window Switcher", "pname": "advanced-alttab-window-switcher", "description": "Highly customizable replacement for the Alt/Super+Tab window/app switchers that offers 'type to search' mode, various filtering and sorting options, workspace and monitor navigation, configurable hotkeys for navigation and window/app control and an app launcher.\nAATWS is compatible with Custom Hot Corners - Extended extension, allows to configure any mouse button and scroll wheel and can be used as a mouse controlled 'dock'.\n\nNote that GNOME has 3 built-in window switcher popups and this extension replaces all of them. The first one is grouping windows by applications and is used as default in vanilla GNOME distributions. The second one offers window list and the third one windows of the currently focused application. You can set keyboard shortcuts for all the switchers in the Gnome Settings.\n\nFollow the link below for more information and bug reports.\n\nKeywords: alttab, search, find, window search, popup delay, applications, apps, dock, monitor, thumbnail, preview, move windows, launch app, switch, VIM.", "link": "https://extensions.gnome.org/extension/4412/advanced-alttab-window-switcher/", "shell_version_map": {"38": {"version": "12", "sha256": "05v1libn5prmmlshkiylmipkmqvyhkv986fr8fsmgapb98r000wb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZ2hseSBjdXN0b21pemFibGUgcmVwbGFjZW1lbnQgZm9yIHRoZSBBbHQvU3VwZXIrVGFiIHdpbmRvdy9hcHAgc3dpdGNoZXJzIHRoYXQgb2ZmZXJzICd0eXBlIHRvIHNlYXJjaCcgbW9kZSwgdmFyaW91cyBmaWx0ZXJpbmcgYW5kIHNvcnRpbmcgb3B0aW9ucywgd29ya3NwYWNlIGFuZCBtb25pdG9yIG5hdmlnYXRpb24sIGNvbmZpZ3VyYWJsZSBob3RrZXlzIGZvciBuYXZpZ2F0aW9uIGFuZCB3aW5kb3cvYXBwIGNvbnRyb2wgYW5kIGFuIGFwcCBsYXVuY2hlci5cbkFBVFdTIGlzIGNvbXBhdGlibGUgd2l0aCBDdXN0b20gSG90IENvcm5lcnMgLSBFeHRlbmRlZCBleHRlbnNpb24sIGFsbG93cyB0byBjb25maWd1cmUgYW55IG1vdXNlIGJ1dHRvbiBhbmQgc2Nyb2xsIHdoZWVsIGFuZCBjYW4gYmUgdXNlZCBhcyBhIG1vdXNlIGNvbnRyb2xsZWQgJ2RvY2snLlxuXG5Ob3RlIHRoYXQgR05PTUUgaGFzIDMgYnVpbHQtaW4gd2luZG93IHN3aXRjaGVyIHBvcHVwcyBhbmQgdGhpcyBleHRlbnNpb24gcmVwbGFjZXMgYWxsIG9mIHRoZW0uIFRoZSBmaXJzdCBvbmUgaXMgZ3JvdXBpbmcgd2luZG93cyBieSBhcHBsaWNhdGlvbnMgYW5kIGlzIHVzZWQgYXMgZGVmYXVsdCBpbiB2YW5pbGxhIEdOT01FIGRpc3RyaWJ1dGlvbnMuIFRoZSBzZWNvbmQgb25lIG9mZmVycyB3aW5kb3cgbGlzdCBhbmQgdGhlIHRoaXJkIG9uZSB3aW5kb3dzIG9mIHRoZSBjdXJyZW50bHkgZm9jdXNlZCBhcHBsaWNhdGlvbi4gWW91IGNhbiBzZXQga2V5Ym9hcmQgc2hvcnRjdXRzIGZvciBhbGwgdGhlIHN3aXRjaGVycyBpbiB0aGUgR25vbWUgU2V0dGluZ3MuXG5cbkZvbGxvdyB0aGUgbGluayBiZWxvdyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgYnVnIHJlcG9ydHMuXG5cbktleXdvcmRzOiBhbHR0YWIsIHNlYXJjaCwgZmluZCwgd2luZG93IHNlYXJjaCwgcG9wdXAgZGVsYXksIGFwcGxpY2F0aW9ucywgYXBwcywgZG9jaywgbW9uaXRvciwgdGh1bWJuYWlsLCBwcmV2aWV3LCBtb3ZlIHdpbmRvd3MsIGxhdW5jaCBhcHAsIHN3aXRjaCwgVklNLiIsCiAgImdldHRleHQtZG9tYWluIjogImFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAibmFtZSI6ICJBQVRXUyAtIEFkdmFuY2VkIEFsdC1UYWIgV2luZG93IFN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9hZHZhbmNlZC1hbHR0YWItd2luZG93LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhZHZhbmNlZC1hbHQtdGFiQEctZEguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "05v1libn5prmmlshkiylmipkmqvyhkv986fr8fsmgapb98r000wb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZ2hseSBjdXN0b21pemFibGUgcmVwbGFjZW1lbnQgZm9yIHRoZSBBbHQvU3VwZXIrVGFiIHdpbmRvdy9hcHAgc3dpdGNoZXJzIHRoYXQgb2ZmZXJzICd0eXBlIHRvIHNlYXJjaCcgbW9kZSwgdmFyaW91cyBmaWx0ZXJpbmcgYW5kIHNvcnRpbmcgb3B0aW9ucywgd29ya3NwYWNlIGFuZCBtb25pdG9yIG5hdmlnYXRpb24sIGNvbmZpZ3VyYWJsZSBob3RrZXlzIGZvciBuYXZpZ2F0aW9uIGFuZCB3aW5kb3cvYXBwIGNvbnRyb2wgYW5kIGFuIGFwcCBsYXVuY2hlci5cbkFBVFdTIGlzIGNvbXBhdGlibGUgd2l0aCBDdXN0b20gSG90IENvcm5lcnMgLSBFeHRlbmRlZCBleHRlbnNpb24sIGFsbG93cyB0byBjb25maWd1cmUgYW55IG1vdXNlIGJ1dHRvbiBhbmQgc2Nyb2xsIHdoZWVsIGFuZCBjYW4gYmUgdXNlZCBhcyBhIG1vdXNlIGNvbnRyb2xsZWQgJ2RvY2snLlxuXG5Ob3RlIHRoYXQgR05PTUUgaGFzIDMgYnVpbHQtaW4gd2luZG93IHN3aXRjaGVyIHBvcHVwcyBhbmQgdGhpcyBleHRlbnNpb24gcmVwbGFjZXMgYWxsIG9mIHRoZW0uIFRoZSBmaXJzdCBvbmUgaXMgZ3JvdXBpbmcgd2luZG93cyBieSBhcHBsaWNhdGlvbnMgYW5kIGlzIHVzZWQgYXMgZGVmYXVsdCBpbiB2YW5pbGxhIEdOT01FIGRpc3RyaWJ1dGlvbnMuIFRoZSBzZWNvbmQgb25lIG9mZmVycyB3aW5kb3cgbGlzdCBhbmQgdGhlIHRoaXJkIG9uZSB3aW5kb3dzIG9mIHRoZSBjdXJyZW50bHkgZm9jdXNlZCBhcHBsaWNhdGlvbi4gWW91IGNhbiBzZXQga2V5Ym9hcmQgc2hvcnRjdXRzIGZvciBhbGwgdGhlIHN3aXRjaGVycyBpbiB0aGUgR25vbWUgU2V0dGluZ3MuXG5cbkZvbGxvdyB0aGUgbGluayBiZWxvdyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgYnVnIHJlcG9ydHMuXG5cbktleXdvcmRzOiBhbHR0YWIsIHNlYXJjaCwgZmluZCwgd2luZG93IHNlYXJjaCwgcG9wdXAgZGVsYXksIGFwcGxpY2F0aW9ucywgYXBwcywgZG9jaywgbW9uaXRvciwgdGh1bWJuYWlsLCBwcmV2aWV3LCBtb3ZlIHdpbmRvd3MsIGxhdW5jaCBhcHAsIHN3aXRjaCwgVklNLiIsCiAgImdldHRleHQtZG9tYWluIjogImFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAibmFtZSI6ICJBQVRXUyAtIEFkdmFuY2VkIEFsdC1UYWIgV2luZG93IFN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9hZHZhbmNlZC1hbHR0YWItd2luZG93LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhZHZhbmNlZC1hbHQtdGFiQEctZEguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "05v1libn5prmmlshkiylmipkmqvyhkv986fr8fsmgapb98r000wb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZ2hseSBjdXN0b21pemFibGUgcmVwbGFjZW1lbnQgZm9yIHRoZSBBbHQvU3VwZXIrVGFiIHdpbmRvdy9hcHAgc3dpdGNoZXJzIHRoYXQgb2ZmZXJzICd0eXBlIHRvIHNlYXJjaCcgbW9kZSwgdmFyaW91cyBmaWx0ZXJpbmcgYW5kIHNvcnRpbmcgb3B0aW9ucywgd29ya3NwYWNlIGFuZCBtb25pdG9yIG5hdmlnYXRpb24sIGNvbmZpZ3VyYWJsZSBob3RrZXlzIGZvciBuYXZpZ2F0aW9uIGFuZCB3aW5kb3cvYXBwIGNvbnRyb2wgYW5kIGFuIGFwcCBsYXVuY2hlci5cbkFBVFdTIGlzIGNvbXBhdGlibGUgd2l0aCBDdXN0b20gSG90IENvcm5lcnMgLSBFeHRlbmRlZCBleHRlbnNpb24sIGFsbG93cyB0byBjb25maWd1cmUgYW55IG1vdXNlIGJ1dHRvbiBhbmQgc2Nyb2xsIHdoZWVsIGFuZCBjYW4gYmUgdXNlZCBhcyBhIG1vdXNlIGNvbnRyb2xsZWQgJ2RvY2snLlxuXG5Ob3RlIHRoYXQgR05PTUUgaGFzIDMgYnVpbHQtaW4gd2luZG93IHN3aXRjaGVyIHBvcHVwcyBhbmQgdGhpcyBleHRlbnNpb24gcmVwbGFjZXMgYWxsIG9mIHRoZW0uIFRoZSBmaXJzdCBvbmUgaXMgZ3JvdXBpbmcgd2luZG93cyBieSBhcHBsaWNhdGlvbnMgYW5kIGlzIHVzZWQgYXMgZGVmYXVsdCBpbiB2YW5pbGxhIEdOT01FIGRpc3RyaWJ1dGlvbnMuIFRoZSBzZWNvbmQgb25lIG9mZmVycyB3aW5kb3cgbGlzdCBhbmQgdGhlIHRoaXJkIG9uZSB3aW5kb3dzIG9mIHRoZSBjdXJyZW50bHkgZm9jdXNlZCBhcHBsaWNhdGlvbi4gWW91IGNhbiBzZXQga2V5Ym9hcmQgc2hvcnRjdXRzIGZvciBhbGwgdGhlIHN3aXRjaGVycyBpbiB0aGUgR25vbWUgU2V0dGluZ3MuXG5cbkZvbGxvdyB0aGUgbGluayBiZWxvdyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgYnVnIHJlcG9ydHMuXG5cbktleXdvcmRzOiBhbHR0YWIsIHNlYXJjaCwgZmluZCwgd2luZG93IHNlYXJjaCwgcG9wdXAgZGVsYXksIGFwcGxpY2F0aW9ucywgYXBwcywgZG9jaywgbW9uaXRvciwgdGh1bWJuYWlsLCBwcmV2aWV3LCBtb3ZlIHdpbmRvd3MsIGxhdW5jaCBhcHAsIHN3aXRjaCwgVklNLiIsCiAgImdldHRleHQtZG9tYWluIjogImFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAibmFtZSI6ICJBQVRXUyAtIEFkdmFuY2VkIEFsdC1UYWIgV2luZG93IFN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9hZHZhbmNlZC1hbHR0YWItd2luZG93LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhZHZhbmNlZC1hbHQtdGFiQEctZEguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "42": {"version": "12", "sha256": "05v1libn5prmmlshkiylmipkmqvyhkv986fr8fsmgapb98r000wb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZ2hseSBjdXN0b21pemFibGUgcmVwbGFjZW1lbnQgZm9yIHRoZSBBbHQvU3VwZXIrVGFiIHdpbmRvdy9hcHAgc3dpdGNoZXJzIHRoYXQgb2ZmZXJzICd0eXBlIHRvIHNlYXJjaCcgbW9kZSwgdmFyaW91cyBmaWx0ZXJpbmcgYW5kIHNvcnRpbmcgb3B0aW9ucywgd29ya3NwYWNlIGFuZCBtb25pdG9yIG5hdmlnYXRpb24sIGNvbmZpZ3VyYWJsZSBob3RrZXlzIGZvciBuYXZpZ2F0aW9uIGFuZCB3aW5kb3cvYXBwIGNvbnRyb2wgYW5kIGFuIGFwcCBsYXVuY2hlci5cbkFBVFdTIGlzIGNvbXBhdGlibGUgd2l0aCBDdXN0b20gSG90IENvcm5lcnMgLSBFeHRlbmRlZCBleHRlbnNpb24sIGFsbG93cyB0byBjb25maWd1cmUgYW55IG1vdXNlIGJ1dHRvbiBhbmQgc2Nyb2xsIHdoZWVsIGFuZCBjYW4gYmUgdXNlZCBhcyBhIG1vdXNlIGNvbnRyb2xsZWQgJ2RvY2snLlxuXG5Ob3RlIHRoYXQgR05PTUUgaGFzIDMgYnVpbHQtaW4gd2luZG93IHN3aXRjaGVyIHBvcHVwcyBhbmQgdGhpcyBleHRlbnNpb24gcmVwbGFjZXMgYWxsIG9mIHRoZW0uIFRoZSBmaXJzdCBvbmUgaXMgZ3JvdXBpbmcgd2luZG93cyBieSBhcHBsaWNhdGlvbnMgYW5kIGlzIHVzZWQgYXMgZGVmYXVsdCBpbiB2YW5pbGxhIEdOT01FIGRpc3RyaWJ1dGlvbnMuIFRoZSBzZWNvbmQgb25lIG9mZmVycyB3aW5kb3cgbGlzdCBhbmQgdGhlIHRoaXJkIG9uZSB3aW5kb3dzIG9mIHRoZSBjdXJyZW50bHkgZm9jdXNlZCBhcHBsaWNhdGlvbi4gWW91IGNhbiBzZXQga2V5Ym9hcmQgc2hvcnRjdXRzIGZvciBhbGwgdGhlIHN3aXRjaGVycyBpbiB0aGUgR25vbWUgU2V0dGluZ3MuXG5cbkZvbGxvdyB0aGUgbGluayBiZWxvdyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhbmQgYnVnIHJlcG9ydHMuXG5cbktleXdvcmRzOiBhbHR0YWIsIHNlYXJjaCwgZmluZCwgd2luZG93IHNlYXJjaCwgcG9wdXAgZGVsYXksIGFwcGxpY2F0aW9ucywgYXBwcywgZG9jaywgbW9uaXRvciwgdGh1bWJuYWlsLCBwcmV2aWV3LCBtb3ZlIHdpbmRvd3MsIGxhdW5jaCBhcHAsIHN3aXRjaCwgVklNLiIsCiAgImdldHRleHQtZG9tYWluIjogImFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAibmFtZSI6ICJBQVRXUyAtIEFkdmFuY2VkIEFsdC1UYWIgV2luZG93IFN3aXRjaGVyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFkdmFuY2VkLWFsdC10YWItd2luZG93LXN3aXRjaGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vRy1kSC9hZHZhbmNlZC1hbHR0YWItd2luZG93LXN3aXRjaGVyIiwKICAidXVpZCI6ICJhZHZhbmNlZC1hbHQtdGFiQEctZEguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
 , {"uuid": "improvedosk@nick-shmyrev.dev", "name": "Improved OSK", "pname": "improved-osk", "description": "Makes Gnome's onscreen keyboard more useable with e.g. more keys.\nThis extension is a fork of https://extensions.gnome.org/extension/3330/improved-onscreen-keyboard/ by SebastianLuebke.", "link": "https://extensions.gnome.org/extension/4413/improved-osk/", "shell_version_map": {"38": {"version": "7", "sha256": "06niqzicxp8i9ivznblf2qgwl924h77ld3cz8qgl4x8hl0bb6q0l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIEdub21lJ3Mgb25zY3JlZW4ga2V5Ym9hcmQgbW9yZSB1c2VhYmxlIHdpdGggZS5nLiBtb3JlIGtleXMuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzMzMC9pbXByb3ZlZC1vbnNjcmVlbi1rZXlib2FyZC8gYnkgU2ViYXN0aWFuTHVlYmtlLiIsCiAgIm5hbWUiOiAiSW1wcm92ZWQgT1NLIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrLXNobXlyZXYvaW1wcm92ZWQtb3NrLWdub21lLWV4dCIsCiAgInV1aWQiOiAiaW1wcm92ZWRvc2tAbmljay1zaG15cmV2LmRldiIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "06niqzicxp8i9ivznblf2qgwl924h77ld3cz8qgl4x8hl0bb6q0l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIEdub21lJ3Mgb25zY3JlZW4ga2V5Ym9hcmQgbW9yZSB1c2VhYmxlIHdpdGggZS5nLiBtb3JlIGtleXMuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzMzMC9pbXByb3ZlZC1vbnNjcmVlbi1rZXlib2FyZC8gYnkgU2ViYXN0aWFuTHVlYmtlLiIsCiAgIm5hbWUiOiAiSW1wcm92ZWQgT1NLIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrLXNobXlyZXYvaW1wcm92ZWQtb3NrLWdub21lLWV4dCIsCiAgInV1aWQiOiAiaW1wcm92ZWRvc2tAbmljay1zaG15cmV2LmRldiIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "06niqzicxp8i9ivznblf2qgwl924h77ld3cz8qgl4x8hl0bb6q0l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIEdub21lJ3Mgb25zY3JlZW4ga2V5Ym9hcmQgbW9yZSB1c2VhYmxlIHdpdGggZS5nLiBtb3JlIGtleXMuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vMzMzMC9pbXByb3ZlZC1vbnNjcmVlbi1rZXlib2FyZC8gYnkgU2ViYXN0aWFuTHVlYmtlLiIsCiAgIm5hbWUiOiAiSW1wcm92ZWQgT1NLIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrLXNobXlyZXYvaW1wcm92ZWQtb3NrLWdub21lLWV4dCIsCiAgInV1aWQiOiAiaW1wcm92ZWRvc2tAbmljay1zaG15cmV2LmRldiIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "fedora-update@pepe386", "name": "Fedora Linux Updates Indicator", "pname": "fedora-linux-updates-indicator", "description": "Update indicator for Fedora Linux and GNOME Shell.", "link": "https://extensions.gnome.org/extension/4415/fedora-linux-updates-indicator/", "shell_version_map": {"40": {"version": "4", "sha256": "1pmh16ijc9p34qx7019z1imswnxzf9mbbbh7vg5i1acy2dgb3vfw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZGF0ZSBpbmRpY2F0b3IgZm9yIEZlZG9yYSBMaW51eCBhbmQgR05PTUUgU2hlbGwuIiwKICAibmFtZSI6ICJGZWRvcmEgTGludXggVXBkYXRlcyBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3BlcGUzODYvZmVkb3JhLXVwZGF0ZSIsCiAgInV1aWQiOiAiZmVkb3JhLXVwZGF0ZUBwZXBlMzg2IiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "1pmh16ijc9p34qx7019z1imswnxzf9mbbbh7vg5i1acy2dgb3vfw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVwZGF0ZSBpbmRpY2F0b3IgZm9yIEZlZG9yYSBMaW51eCBhbmQgR05PTUUgU2hlbGwuIiwKICAibmFtZSI6ICJGZWRvcmEgTGludXggVXBkYXRlcyBJbmRpY2F0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3BlcGUzODYvZmVkb3JhLXVwZGF0ZSIsCiAgInV1aWQiOiAiZmVkb3JhLXVwZGF0ZUBwZXBlMzg2IiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
-, {"uuid": "readingstrip@lupantano.gihthub", "name": "Reading Strip", "pname": "reading-strip", "description": "It is a extension for Gnome-Shell with an equivalent function to a reading guide on the computer, that's really useful for people with dyslexia.", "link": "https://extensions.gnome.org/extension/4419/reading-strip/", "shell_version_map": {"40": {"version": "12", "sha256": "1xqiainrvipkw2yrzihvbghbshrw0bcxx2wc3wqaxxfa04ziiv7s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkl0IGlzIGEgZXh0ZW5zaW9uIGZvciBHbm9tZS1TaGVsbCB3aXRoIGFuIGVxdWl2YWxlbnQgZnVuY3Rpb24gdG8gYSByZWFkaW5nIGd1aWRlIG9uIHRoZSBjb21wdXRlciwgdGhhdCdzIHJlYWxseSB1c2VmdWwgZm9yIHBlb3BsZSB3aXRoIGR5c2xleGlhLiIsCiAgIm5hbWUiOiAiUmVhZGluZyBTdHJpcCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZWFkaW5nc3RyaXAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2x1cGFudGFuby9yZWFkaW5nc3RyaXAiLAogICJ1dWlkIjogInJlYWRpbmdzdHJpcEBsdXBhbnRhbm8uZ2lodGh1YiIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "1xqiainrvipkw2yrzihvbghbshrw0bcxx2wc3wqaxxfa04ziiv7s", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkl0IGlzIGEgZXh0ZW5zaW9uIGZvciBHbm9tZS1TaGVsbCB3aXRoIGFuIGVxdWl2YWxlbnQgZnVuY3Rpb24gdG8gYSByZWFkaW5nIGd1aWRlIG9uIHRoZSBjb21wdXRlciwgdGhhdCdzIHJlYWxseSB1c2VmdWwgZm9yIHBlb3BsZSB3aXRoIGR5c2xleGlhLiIsCiAgIm5hbWUiOiAiUmVhZGluZyBTdHJpcCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZWFkaW5nc3RyaXAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2x1cGFudGFuby9yZWFkaW5nc3RyaXAiLAogICJ1dWlkIjogInJlYWRpbmdzdHJpcEBsdXBhbnRhbm8uZ2lodGh1YiIsCiAgInZlcnNpb24iOiAxMgp9"}}}
+, {"uuid": "readingstrip@lupantano.gihthub", "name": "Reading Strip", "pname": "reading-strip", "description": "It is a extension for Gnome-Shell with an equivalent function to a reading guide on the computer, that's really useful for people with dyslexia.", "link": "https://extensions.gnome.org/extension/4419/reading-strip/", "shell_version_map": {"40": {"version": "15", "sha256": "0lqd5xhq9f60lrsw51z33mlxzfh8qbw2k0sgvi405jmz4q4gna69", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkl0IGlzIGEgZXh0ZW5zaW9uIGZvciBHbm9tZS1TaGVsbCB3aXRoIGFuIGVxdWl2YWxlbnQgZnVuY3Rpb24gdG8gYSByZWFkaW5nIGd1aWRlIG9uIHRoZSBjb21wdXRlciwgdGhhdCdzIHJlYWxseSB1c2VmdWwgZm9yIHBlb3BsZSB3aXRoIGR5c2xleGlhLiIsCiAgIm5hbWUiOiAiUmVhZGluZyBTdHJpcCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZWFkaW5nc3RyaXAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sdXBhbnRhbm8vcmVhZGluZ3N0cmlwIiwKICAidXVpZCI6ICJyZWFkaW5nc3RyaXBAbHVwYW50YW5vLmdpaHRodWIiLAogICJ2ZXJzaW9uIjogMTUKfQ=="}, "41": {"version": "15", "sha256": "0lqd5xhq9f60lrsw51z33mlxzfh8qbw2k0sgvi405jmz4q4gna69", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkl0IGlzIGEgZXh0ZW5zaW9uIGZvciBHbm9tZS1TaGVsbCB3aXRoIGFuIGVxdWl2YWxlbnQgZnVuY3Rpb24gdG8gYSByZWFkaW5nIGd1aWRlIG9uIHRoZSBjb21wdXRlciwgdGhhdCdzIHJlYWxseSB1c2VmdWwgZm9yIHBlb3BsZSB3aXRoIGR5c2xleGlhLiIsCiAgIm5hbWUiOiAiUmVhZGluZyBTdHJpcCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZWFkaW5nc3RyaXAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sdXBhbnRhbm8vcmVhZGluZ3N0cmlwIiwKICAidXVpZCI6ICJyZWFkaW5nc3RyaXBAbHVwYW50YW5vLmdpaHRodWIiLAogICJ2ZXJzaW9uIjogMTUKfQ=="}, "42": {"version": "15", "sha256": "0lqd5xhq9f60lrsw51z33mlxzfh8qbw2k0sgvi405jmz4q4gna69", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkl0IGlzIGEgZXh0ZW5zaW9uIGZvciBHbm9tZS1TaGVsbCB3aXRoIGFuIGVxdWl2YWxlbnQgZnVuY3Rpb24gdG8gYSByZWFkaW5nIGd1aWRlIG9uIHRoZSBjb21wdXRlciwgdGhhdCdzIHJlYWxseSB1c2VmdWwgZm9yIHBlb3BsZSB3aXRoIGR5c2xleGlhLiIsCiAgIm5hbWUiOiAiUmVhZGluZyBTdHJpcCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yZWFkaW5nc3RyaXAiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9sdXBhbnRhbm8vcmVhZGluZ3N0cmlwIiwKICAidXVpZCI6ICJyZWFkaW5nc3RyaXBAbHVwYW50YW5vLmdpaHRodWIiLAogICJ2ZXJzaW9uIjogMTUKfQ=="}}}
 , {"uuid": "gnome-clipboard@b00f.github.io", "name": "Gnome Clipboard", "pname": "gnome-clipboard", "description": "A gnome shell extension to manage your clipboard.", "link": "https://extensions.gnome.org/extension/4422/gnome-clipboard/", "shell_version_map": {"38": {"version": "8", "sha256": "1zgymry549c6pmj1c0f6gvpyyfj0z93fwbhhxa67fx3nf95gb3kv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ25vbWUgc2hlbGwgZXh0ZW5zaW9uIHRvIG1hbmFnZSB5b3VyIGNsaXBib2FyZC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1jbGlwYm9hcmQiLAogICJuYW1lIjogIkdub21lIENsaXBib2FyZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2IwMGYvZ25vbWUtY2xpcGJvYXJkIiwKICAidXVpZCI6ICJnbm9tZS1jbGlwYm9hcmRAYjAwZi5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogOAp9"}, "40": {"version": "10", "sha256": "193n38mi38pr07cch1ma5rpkdkk6jkf37m3yfrhmndcqb6brm6i0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ25vbWUgc2hlbGwgZXh0ZW5zaW9uIHRvIG1hbmFnZSB5b3VyIGNsaXBib2FyZC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1jbGlwYm9hcmQiLAogICJuYW1lIjogIkdub21lIENsaXBib2FyZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYjAwZi9nbm9tZS1jbGlwYm9hcmQiLAogICJ1dWlkIjogImdub21lLWNsaXBib2FyZEBiMDBmLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "193n38mi38pr07cch1ma5rpkdkk6jkf37m3yfrhmndcqb6brm6i0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZ25vbWUgc2hlbGwgZXh0ZW5zaW9uIHRvIG1hbmFnZSB5b3VyIGNsaXBib2FyZC4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJnbm9tZS1jbGlwYm9hcmQiLAogICJuYW1lIjogIkdub21lIENsaXBib2FyZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYjAwZi9nbm9tZS1jbGlwYm9hcmQiLAogICJ1dWlkIjogImdub21lLWNsaXBib2FyZEBiMDBmLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxMAp9"}}}
 , {"uuid": "thanatophobia@yatx.one", "name": "Thanatophobia", "pname": "thanatophobia", "description": "Displays your age in real time. \r\n\r\nGreat source of motivation according to terror management theory!", "link": "https://extensions.gnome.org/extension/4425/thanatophobia/", "shell_version_map": {"40": {"version": "7", "sha256": "0r7j13mgr5fd0v3q1ncmwj7mb5wg8yrxxr0hda197728lmwq0i8x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHlvdXIgYWdlIGluIHJlYWwgdGltZS4gXHJcblxyXG5HcmVhdCBzb3VyY2Ugb2YgbW90aXZhdGlvbiBhY2NvcmRpbmcgdG8gdGVycm9yIG1hbmFnZW1lbnQgdGhlb3J5ISIsCiAgIm5hbWUiOiAiVGhhbmF0b3Bob2JpYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdGlvbnN2ZXJyeWZ1bC90aGFuYXRvcGhvYmlhIiwKICAidXVpZCI6ICJ0aGFuYXRvcGhvYmlhQHlhdHgub25lIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "0r7j13mgr5fd0v3q1ncmwj7mb5wg8yrxxr0hda197728lmwq0i8x", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHlvdXIgYWdlIGluIHJlYWwgdGltZS4gXHJcblxyXG5HcmVhdCBzb3VyY2Ugb2YgbW90aXZhdGlvbiBhY2NvcmRpbmcgdG8gdGVycm9yIG1hbmFnZW1lbnQgdGhlb3J5ISIsCiAgIm5hbWUiOiAiVGhhbmF0b3Bob2JpYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdGlvbnN2ZXJyeWZ1bC90aGFuYXRvcGhvYmlhIiwKICAidXVpZCI6ICJ0aGFuYXRvcGhvYmlhQHlhdHgub25lIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "typewriter-kb@zzzheka97.gmail.com", "name": "Typewriter Keyboard", "pname": "typewriter-keyboard", "description": "Add a typewriter effect to your keyboard.\n \nThis extension is based on typewriter-kb application \n(https://github.com/ZhekehZ/linux-typewriter-kb), which \nis required to run the extension, but is not part of it.\n \n-------------------------------------------\nIcons made by Freepik from www.flaticon.com", "link": "https://extensions.gnome.org/extension/4427/typewriter-keyboard/", "shell_version_map": {"38": {"version": "2", "sha256": "1zmlmijkm6sgpp00qbrwnxmd4q5dfh07g9w9nynq3ciwxs9fjnai", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHR5cGV3cml0ZXIgZWZmZWN0IHRvIHlvdXIga2V5Ym9hcmQuXG4gXG5UaGlzIGV4dGVuc2lvbiBpcyBiYXNlZCBvbiB0eXBld3JpdGVyLWtiIGFwcGxpY2F0aW9uIFxuKGh0dHBzOi8vZ2l0aHViLmNvbS9aaGVrZWhaL2xpbnV4LXR5cGV3cml0ZXIta2IpLCB3aGljaCBcbmlzIHJlcXVpcmVkIHRvIHJ1biB0aGUgZXh0ZW5zaW9uLCBidXQgaXMgbm90IHBhcnQgb2YgaXQuXG4gXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5JY29ucyBtYWRlIGJ5IEZyZWVwaWsgZnJvbSB3d3cuZmxhdGljb24uY29tIiwKICAibmFtZSI6ICJUeXBld3JpdGVyIEtleWJvYXJkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInR5cGV3cml0ZXIta2JAenp6aGVrYTk3LmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
@@ -562,7 +562,7 @@
 , {"uuid": "wizlight@iabhilashjoshi", "name": "Wiz Light", "pname": "wiz-light", "description": "Control Wiz Connected Lights Through Gnome Shell\n\nRequirements:\n        #Wiz enabled smart bulb\n        #python3  (To install  use command \"sudo apt install python3\")\n        #pywizlight (To install use command \"pip3 install pywizlight\")\n\nTo Use go to the location where extension is installed (usually stored in \"~/.local/share/gnome-shell/extensions\") and change IP address in extension.js file to your smart bulb's IP address and then extension should work.", "link": "https://extensions.gnome.org/extension/4436/wiz-light/", "shell_version_map": {"38": {"version": "4", "sha256": "0pby93ivqz2ymdskyjp6ajc2c588dbpq7vjj7b7d8mc03hvkap5z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgV2l6IENvbm5lY3RlZCBMaWdodHMgVGhyb3VnaCBHbm9tZSBTaGVsbFxuXG5SZXF1aXJlbWVudHM6XG4gICAgICAgICNXaXogZW5hYmxlZCBzbWFydCBidWxiXG4gICAgICAgICNweXRob24zICAoVG8gaW5zdGFsbCAgdXNlIGNvbW1hbmQgXCJzdWRvIGFwdCBpbnN0YWxsIHB5dGhvbjNcIilcbiAgICAgICAgI3B5d2l6bGlnaHQgKFRvIGluc3RhbGwgdXNlIGNvbW1hbmQgXCJwaXAzIGluc3RhbGwgcHl3aXpsaWdodFwiKVxuXG5UbyBVc2UgZ28gdG8gdGhlIGxvY2F0aW9uIHdoZXJlIGV4dGVuc2lvbiBpcyBpbnN0YWxsZWQgKHVzdWFsbHkgc3RvcmVkIGluIFwifi8ubG9jYWwvc2hhcmUvZ25vbWUtc2hlbGwvZXh0ZW5zaW9uc1wiKSBhbmQgY2hhbmdlIElQIGFkZHJlc3MgaW4gZXh0ZW5zaW9uLmpzIGZpbGUgdG8geW91ciBzbWFydCBidWxiJ3MgSVAgYWRkcmVzcyBhbmQgdGhlbiBleHRlbnNpb24gc2hvdWxkIHdvcmsuIiwKICAibmFtZSI6ICJXaXogTGlnaHQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbHBoYXNwZWFyL1dpei1MaWdodCIsCiAgInV1aWQiOiAid2l6bGlnaHRAaWFiaGlsYXNoam9zaGkiLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "gSnap@micahosborne", "name": "gSnap", "pname": "gsnap", "description": "Organize windows in customizable snap zones like FancyZones on windows.", "link": "https://extensions.gnome.org/extension/4442/gsnap/", "shell_version_map": {"40": {"version": "6", "sha256": "1sm3kmc4i5m9jimly95bf39p5vjl2rnavkkkiiqq0blk725fsa2j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk9yZ2FuaXplIHdpbmRvd3MgaW4gY3VzdG9taXphYmxlIHNuYXAgem9uZXMgbGlrZSBGYW5jeVpvbmVzIG9uIHdpbmRvd3MuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZ3NuYXBAbWljYWhvc2Jvcm5lIiwKICAibmFtZSI6ICJnU25hcCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5nc25hcCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9taWNhaG9zYm9ybmUvZ1NuYXAiLAogICJ1dWlkIjogImdTbmFwQG1pY2Fob3Nib3JuZSIsCiAgInZlcnNpb24iOiA2Cn0="}}}
 , {"uuid": "appswitcheronlyoncurrentworkspace@ermesonsampaio.com", "name": "Alt + Tab only on current workspace", "pname": "alt-tab-only-on-current-workspace", "description": "Force alt + tab to switch only in the current workspace.", "link": "https://extensions.gnome.org/extension/4443/alt-tab-only-on-current-workspace/", "shell_version_map": {"40": {"version": "3", "sha256": "1jl7gi45gz9fliggkwdg44rdqcirh6qxfkvc639vbw2sgmpbmcvw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmNlIGFsdCArIHRhYiB0byBzd2l0Y2ggb25seSBpbiB0aGUgY3VycmVudCB3b3Jrc3BhY2UuIiwKICAibmFtZSI6ICJBbHQgKyBUYWIgb25seSBvbiBjdXJyZW50IHdvcmtzcGFjZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lcm1lc29uc2FtcGFpby9hcHAtc3dpdGNoZXItb25seS1vbi1jdXJyZW50LXdvcmtzcGFjZSIsCiAgInV1aWQiOiAiYXBwc3dpdGNoZXJvbmx5b25jdXJyZW50d29ya3NwYWNlQGVybWVzb25zYW1wYWlvLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
-, {"uuid": "logomenu@aryan_k", "name": "Logo Menu", "pname": "logo-menu", "description": "Logo Menu - Menu similar to Apple's macOS menu for the GNOME Desktop\nThis extension gives a simple menu along with the ability to get the icon of your distro on top left part of the panel for a great look.\nThe Icon can be customized through settings, it has both Linux and BSD logos.\nfor more screenshots, visit GitHub.\n\nThe default Terminal and Software center can also be changed.\n\nThis extension is a fork of - https://github.com/tofutech/tofumenu\n\nThe original project is no more supported thus I made this.", "link": "https://extensions.gnome.org/extension/4451/logo-menu/", "shell_version_map": {"38": {"version": "10", "sha256": "0d7xmiyj07d8sfw6fsvj5i8pjkmn5m44l0lh0hvbaxsk9h72gj00", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvZ28gTWVudSAtIE1lbnUgc2ltaWxhciB0byBBcHBsZSdzIG1hY09TIG1lbnUgZm9yIHRoZSBHTk9NRSBEZXNrdG9wXG5UaGlzIGV4dGVuc2lvbiBnaXZlcyBhIHNpbXBsZSBtZW51IGFsb25nIHdpdGggdGhlIGFiaWxpdHkgdG8gZ2V0IHRoZSBpY29uIG9mIHlvdXIgZGlzdHJvIG9uIHRvcCBsZWZ0IHBhcnQgb2YgdGhlIHBhbmVsIGZvciBhIGdyZWF0IGxvb2suXG5UaGUgSWNvbiBjYW4gYmUgY3VzdG9taXplZCB0aHJvdWdoIHNldHRpbmdzLCBpdCBoYXMgYm90aCBMaW51eCBhbmQgQlNEIGxvZ29zLlxuZm9yIG1vcmUgc2NyZWVuc2hvdHMsIHZpc2l0IEdpdEh1Yi5cblxuVGhlIGRlZmF1bHQgVGVybWluYWwgYW5kIFNvZnR3YXJlIGNlbnRlciBjYW4gYWxzbyBiZSBjaGFuZ2VkLlxuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgLSBodHRwczovL2dpdGh1Yi5jb20vdG9mdXRlY2gvdG9mdW1lbnVcblxuVGhlIG9yaWdpbmFsIHByb2plY3QgaXMgbm8gbW9yZSBzdXBwb3J0ZWQgdGh1cyBJIG1hZGUgdGhpcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsb2dvLW1lbnUiLAogICJuYW1lIjogIkxvZ28gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuYXJ5YW5fay5sb2dvLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BcnlhbjIwL0xvZ29tZW51IiwKICAidXVpZCI6ICJsb2dvbWVudUBhcnlhbl9rIiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "10", "sha256": "0d7xmiyj07d8sfw6fsvj5i8pjkmn5m44l0lh0hvbaxsk9h72gj00", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvZ28gTWVudSAtIE1lbnUgc2ltaWxhciB0byBBcHBsZSdzIG1hY09TIG1lbnUgZm9yIHRoZSBHTk9NRSBEZXNrdG9wXG5UaGlzIGV4dGVuc2lvbiBnaXZlcyBhIHNpbXBsZSBtZW51IGFsb25nIHdpdGggdGhlIGFiaWxpdHkgdG8gZ2V0IHRoZSBpY29uIG9mIHlvdXIgZGlzdHJvIG9uIHRvcCBsZWZ0IHBhcnQgb2YgdGhlIHBhbmVsIGZvciBhIGdyZWF0IGxvb2suXG5UaGUgSWNvbiBjYW4gYmUgY3VzdG9taXplZCB0aHJvdWdoIHNldHRpbmdzLCBpdCBoYXMgYm90aCBMaW51eCBhbmQgQlNEIGxvZ29zLlxuZm9yIG1vcmUgc2NyZWVuc2hvdHMsIHZpc2l0IEdpdEh1Yi5cblxuVGhlIGRlZmF1bHQgVGVybWluYWwgYW5kIFNvZnR3YXJlIGNlbnRlciBjYW4gYWxzbyBiZSBjaGFuZ2VkLlxuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgLSBodHRwczovL2dpdGh1Yi5jb20vdG9mdXRlY2gvdG9mdW1lbnVcblxuVGhlIG9yaWdpbmFsIHByb2plY3QgaXMgbm8gbW9yZSBzdXBwb3J0ZWQgdGh1cyBJIG1hZGUgdGhpcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsb2dvLW1lbnUiLAogICJuYW1lIjogIkxvZ28gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuYXJ5YW5fay5sb2dvLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BcnlhbjIwL0xvZ29tZW51IiwKICAidXVpZCI6ICJsb2dvbWVudUBhcnlhbl9rIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "0d7xmiyj07d8sfw6fsvj5i8pjkmn5m44l0lh0hvbaxsk9h72gj00", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvZ28gTWVudSAtIE1lbnUgc2ltaWxhciB0byBBcHBsZSdzIG1hY09TIG1lbnUgZm9yIHRoZSBHTk9NRSBEZXNrdG9wXG5UaGlzIGV4dGVuc2lvbiBnaXZlcyBhIHNpbXBsZSBtZW51IGFsb25nIHdpdGggdGhlIGFiaWxpdHkgdG8gZ2V0IHRoZSBpY29uIG9mIHlvdXIgZGlzdHJvIG9uIHRvcCBsZWZ0IHBhcnQgb2YgdGhlIHBhbmVsIGZvciBhIGdyZWF0IGxvb2suXG5UaGUgSWNvbiBjYW4gYmUgY3VzdG9taXplZCB0aHJvdWdoIHNldHRpbmdzLCBpdCBoYXMgYm90aCBMaW51eCBhbmQgQlNEIGxvZ29zLlxuZm9yIG1vcmUgc2NyZWVuc2hvdHMsIHZpc2l0IEdpdEh1Yi5cblxuVGhlIGRlZmF1bHQgVGVybWluYWwgYW5kIFNvZnR3YXJlIGNlbnRlciBjYW4gYWxzbyBiZSBjaGFuZ2VkLlxuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgLSBodHRwczovL2dpdGh1Yi5jb20vdG9mdXRlY2gvdG9mdW1lbnVcblxuVGhlIG9yaWdpbmFsIHByb2plY3QgaXMgbm8gbW9yZSBzdXBwb3J0ZWQgdGh1cyBJIG1hZGUgdGhpcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsb2dvLW1lbnUiLAogICJuYW1lIjogIkxvZ28gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuYXJ5YW5fay5sb2dvLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BcnlhbjIwL0xvZ29tZW51IiwKICAidXVpZCI6ICJsb2dvbWVudUBhcnlhbl9rIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
+, {"uuid": "logomenu@aryan_k", "name": "Logo Menu", "pname": "logo-menu", "description": "Logo Menu - Menu similar to Apple's macOS menu for the GNOME Desktop\nThis extension gives a simple menu along with the ability to get the icon of your distro on top left part of the panel for a great look.\nThe Icon can be customized through settings, it has both Linux and BSD logos.\nfor more screenshots, visit GitHub.\n\nThe default Terminal and Software center can also be changed.\n\nThis extension is a fork of - https://github.com/tofutech/tofumenu\n\nThe original project is no more supported thus I made this.", "link": "https://extensions.gnome.org/extension/4451/logo-menu/", "shell_version_map": {"38": {"version": "10", "sha256": "0d7xmiyj07d8sfw6fsvj5i8pjkmn5m44l0lh0hvbaxsk9h72gj00", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvZ28gTWVudSAtIE1lbnUgc2ltaWxhciB0byBBcHBsZSdzIG1hY09TIG1lbnUgZm9yIHRoZSBHTk9NRSBEZXNrdG9wXG5UaGlzIGV4dGVuc2lvbiBnaXZlcyBhIHNpbXBsZSBtZW51IGFsb25nIHdpdGggdGhlIGFiaWxpdHkgdG8gZ2V0IHRoZSBpY29uIG9mIHlvdXIgZGlzdHJvIG9uIHRvcCBsZWZ0IHBhcnQgb2YgdGhlIHBhbmVsIGZvciBhIGdyZWF0IGxvb2suXG5UaGUgSWNvbiBjYW4gYmUgY3VzdG9taXplZCB0aHJvdWdoIHNldHRpbmdzLCBpdCBoYXMgYm90aCBMaW51eCBhbmQgQlNEIGxvZ29zLlxuZm9yIG1vcmUgc2NyZWVuc2hvdHMsIHZpc2l0IEdpdEh1Yi5cblxuVGhlIGRlZmF1bHQgVGVybWluYWwgYW5kIFNvZnR3YXJlIGNlbnRlciBjYW4gYWxzbyBiZSBjaGFuZ2VkLlxuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgLSBodHRwczovL2dpdGh1Yi5jb20vdG9mdXRlY2gvdG9mdW1lbnVcblxuVGhlIG9yaWdpbmFsIHByb2plY3QgaXMgbm8gbW9yZSBzdXBwb3J0ZWQgdGh1cyBJIG1hZGUgdGhpcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsb2dvLW1lbnUiLAogICJuYW1lIjogIkxvZ28gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuYXJ5YW5fay5sb2dvLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BcnlhbjIwL0xvZ29tZW51IiwKICAidXVpZCI6ICJsb2dvbWVudUBhcnlhbl9rIiwKICAidmVyc2lvbiI6IDEwCn0="}, "40": {"version": "10", "sha256": "0d7xmiyj07d8sfw6fsvj5i8pjkmn5m44l0lh0hvbaxsk9h72gj00", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvZ28gTWVudSAtIE1lbnUgc2ltaWxhciB0byBBcHBsZSdzIG1hY09TIG1lbnUgZm9yIHRoZSBHTk9NRSBEZXNrdG9wXG5UaGlzIGV4dGVuc2lvbiBnaXZlcyBhIHNpbXBsZSBtZW51IGFsb25nIHdpdGggdGhlIGFiaWxpdHkgdG8gZ2V0IHRoZSBpY29uIG9mIHlvdXIgZGlzdHJvIG9uIHRvcCBsZWZ0IHBhcnQgb2YgdGhlIHBhbmVsIGZvciBhIGdyZWF0IGxvb2suXG5UaGUgSWNvbiBjYW4gYmUgY3VzdG9taXplZCB0aHJvdWdoIHNldHRpbmdzLCBpdCBoYXMgYm90aCBMaW51eCBhbmQgQlNEIGxvZ29zLlxuZm9yIG1vcmUgc2NyZWVuc2hvdHMsIHZpc2l0IEdpdEh1Yi5cblxuVGhlIGRlZmF1bHQgVGVybWluYWwgYW5kIFNvZnR3YXJlIGNlbnRlciBjYW4gYWxzbyBiZSBjaGFuZ2VkLlxuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgLSBodHRwczovL2dpdGh1Yi5jb20vdG9mdXRlY2gvdG9mdW1lbnVcblxuVGhlIG9yaWdpbmFsIHByb2plY3QgaXMgbm8gbW9yZSBzdXBwb3J0ZWQgdGh1cyBJIG1hZGUgdGhpcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsb2dvLW1lbnUiLAogICJuYW1lIjogIkxvZ28gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuYXJ5YW5fay5sb2dvLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BcnlhbjIwL0xvZ29tZW51IiwKICAidXVpZCI6ICJsb2dvbWVudUBhcnlhbl9rIiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "0d7xmiyj07d8sfw6fsvj5i8pjkmn5m44l0lh0hvbaxsk9h72gj00", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvZ28gTWVudSAtIE1lbnUgc2ltaWxhciB0byBBcHBsZSdzIG1hY09TIG1lbnUgZm9yIHRoZSBHTk9NRSBEZXNrdG9wXG5UaGlzIGV4dGVuc2lvbiBnaXZlcyBhIHNpbXBsZSBtZW51IGFsb25nIHdpdGggdGhlIGFiaWxpdHkgdG8gZ2V0IHRoZSBpY29uIG9mIHlvdXIgZGlzdHJvIG9uIHRvcCBsZWZ0IHBhcnQgb2YgdGhlIHBhbmVsIGZvciBhIGdyZWF0IGxvb2suXG5UaGUgSWNvbiBjYW4gYmUgY3VzdG9taXplZCB0aHJvdWdoIHNldHRpbmdzLCBpdCBoYXMgYm90aCBMaW51eCBhbmQgQlNEIGxvZ29zLlxuZm9yIG1vcmUgc2NyZWVuc2hvdHMsIHZpc2l0IEdpdEh1Yi5cblxuVGhlIGRlZmF1bHQgVGVybWluYWwgYW5kIFNvZnR3YXJlIGNlbnRlciBjYW4gYWxzbyBiZSBjaGFuZ2VkLlxuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgLSBodHRwczovL2dpdGh1Yi5jb20vdG9mdXRlY2gvdG9mdW1lbnVcblxuVGhlIG9yaWdpbmFsIHByb2plY3QgaXMgbm8gbW9yZSBzdXBwb3J0ZWQgdGh1cyBJIG1hZGUgdGhpcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsb2dvLW1lbnUiLAogICJuYW1lIjogIkxvZ28gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuYXJ5YW5fay5sb2dvLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BcnlhbjIwL0xvZ29tZW51IiwKICAidXVpZCI6ICJsb2dvbWVudUBhcnlhbl9rIiwKICAidmVyc2lvbiI6IDEwCn0="}, "42": {"version": "10", "sha256": "0d7xmiyj07d8sfw6fsvj5i8pjkmn5m44l0lh0hvbaxsk9h72gj00", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxvZ28gTWVudSAtIE1lbnUgc2ltaWxhciB0byBBcHBsZSdzIG1hY09TIG1lbnUgZm9yIHRoZSBHTk9NRSBEZXNrdG9wXG5UaGlzIGV4dGVuc2lvbiBnaXZlcyBhIHNpbXBsZSBtZW51IGFsb25nIHdpdGggdGhlIGFiaWxpdHkgdG8gZ2V0IHRoZSBpY29uIG9mIHlvdXIgZGlzdHJvIG9uIHRvcCBsZWZ0IHBhcnQgb2YgdGhlIHBhbmVsIGZvciBhIGdyZWF0IGxvb2suXG5UaGUgSWNvbiBjYW4gYmUgY3VzdG9taXplZCB0aHJvdWdoIHNldHRpbmdzLCBpdCBoYXMgYm90aCBMaW51eCBhbmQgQlNEIGxvZ29zLlxuZm9yIG1vcmUgc2NyZWVuc2hvdHMsIHZpc2l0IEdpdEh1Yi5cblxuVGhlIGRlZmF1bHQgVGVybWluYWwgYW5kIFNvZnR3YXJlIGNlbnRlciBjYW4gYWxzbyBiZSBjaGFuZ2VkLlxuXG5UaGlzIGV4dGVuc2lvbiBpcyBhIGZvcmsgb2YgLSBodHRwczovL2dpdGh1Yi5jb20vdG9mdXRlY2gvdG9mdW1lbnVcblxuVGhlIG9yaWdpbmFsIHByb2plY3QgaXMgbm8gbW9yZSBzdXBwb3J0ZWQgdGh1cyBJIG1hZGUgdGhpcy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJsb2dvLW1lbnUiLAogICJuYW1lIjogIkxvZ28gTWVudSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuYXJ5YW5fay5sb2dvLW1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzAiLAogICAgIjMuMzQiLAogICAgIjMuMzIiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9BcnlhbjIwL0xvZ29tZW51IiwKICAidXVpZCI6ICJsb2dvbWVudUBhcnlhbl9rIiwKICAidmVyc2lvbiI6IDEwCn0="}}}
 , {"uuid": "rog-manager@rog", "name": "Rog Asus Manager", "pname": "rog-asus-manager", "description": "Asus ROG manager", "link": "https://extensions.gnome.org/extension/4452/rog-asus-manager/", "shell_version_map": {"38": {"version": "4", "sha256": "194k3qzjd05rki20ww0nv8001aiyp4ih9abv82g64058x8rmnff5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFzdXMgUk9HIG1hbmFnZXIiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJyb2ctbWFuYWdlciIsCiAgIm5hbWUiOiAiUm9nIEFzdXMgTWFuYWdlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5yb2dtYW5hZ2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYWxlamFuZHJvLW1vdXJhcy9yb2ctbWFuYWdlciIsCiAgInV1aWQiOiAicm9nLW1hbmFnZXJAcm9nIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "titlebar-screenshot@jmaargh.github.com", "name": "Titlebar Screenshot", "pname": "titlebar-screenshot", "description": "Take screenshots by right-clicking on window titlebars.\n\nVarious configuration options include screenshots can be taken to the clipboard, to a file, or by opening the interactive tool.\n\nAll feedback and bug reports to Issues on the github page.", "link": "https://extensions.gnome.org/extension/4458/titlebar-screenshot/", "shell_version_map": {"38": {"version": "3", "sha256": "1vhphrjq2vyzlknfl3i7f8i3v9f8jcrpwiz26sigklmv3bmzb059", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRha2Ugc2NyZWVuc2hvdHMgYnkgcmlnaHQtY2xpY2tpbmcgb24gd2luZG93IHRpdGxlYmFycy5cblxuVmFyaW91cyBjb25maWd1cmF0aW9uIG9wdGlvbnMgaW5jbHVkZSBzY3JlZW5zaG90cyBjYW4gYmUgdGFrZW4gdG8gdGhlIGNsaXBib2FyZCwgdG8gYSBmaWxlLCBvciBieSBvcGVuaW5nIHRoZSBpbnRlcmFjdGl2ZSB0b29sLlxuXG5BbGwgZmVlZGJhY2sgYW5kIGJ1ZyByZXBvcnRzIHRvIElzc3VlcyBvbiB0aGUgZ2l0aHViIHBhZ2UuIiwKICAibmFtZSI6ICJUaXRsZWJhciBTY3JlZW5zaG90IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRpdGxlYmFyLXNjcmVlbnNob3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vam1hYXJnaC90aXRsZWJhci1zY3JlZW5zaG90LWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidGl0bGViYXItc2NyZWVuc2hvdEBqbWFhcmdoLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "1vhphrjq2vyzlknfl3i7f8i3v9f8jcrpwiz26sigklmv3bmzb059", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRha2Ugc2NyZWVuc2hvdHMgYnkgcmlnaHQtY2xpY2tpbmcgb24gd2luZG93IHRpdGxlYmFycy5cblxuVmFyaW91cyBjb25maWd1cmF0aW9uIG9wdGlvbnMgaW5jbHVkZSBzY3JlZW5zaG90cyBjYW4gYmUgdGFrZW4gdG8gdGhlIGNsaXBib2FyZCwgdG8gYSBmaWxlLCBvciBieSBvcGVuaW5nIHRoZSBpbnRlcmFjdGl2ZSB0b29sLlxuXG5BbGwgZmVlZGJhY2sgYW5kIGJ1ZyByZXBvcnRzIHRvIElzc3VlcyBvbiB0aGUgZ2l0aHViIHBhZ2UuIiwKICAibmFtZSI6ICJUaXRsZWJhciBTY3JlZW5zaG90IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRpdGxlYmFyLXNjcmVlbnNob3QiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vam1hYXJnaC90aXRsZWJhci1zY3JlZW5zaG90LWdub21lLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidGl0bGViYXItc2NyZWVuc2hvdEBqbWFhcmdoLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}}}
 , {"uuid": "expandable-notifications@kaan.g.inam.org", "name": "Expandable Notifications", "pname": "expandable-notifications", "description": "Makes the notifications in the notification list expandable. Using gsettings, you can choose between three modes: AUTO, ARROW and CRITICAL.\n\nAUTO will expand the notifications in the notification list automatically. \nARROW adds an arrow that lets you choose what to expand or unexpand. \nCRITICAL is similar to arrow, but expands notifications with the urgency critical automatically. \n\nFor more information and an example command to change the mode, I recommend to look at the repository.\"\n\nThe old repository has been deleted, however I reposted the extension on GitHub.", "link": "https://extensions.gnome.org/extension/4463/expandable-notifications/", "shell_version_map": {"40": {"version": "8", "sha256": "04i0hxsv41wfxg8z590mgn2klma47mgcz7qr52ca2llpd4dkrjj5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHRoZSBub3RpZmljYXRpb25zIGluIHRoZSBub3RpZmljYXRpb24gbGlzdCBleHBhbmRhYmxlLiBVc2luZyBnc2V0dGluZ3MsIHlvdSBjYW4gY2hvb3NlIGJldHdlZW4gdGhyZWUgbW9kZXM6IEFVVE8sIEFSUk9XIGFuZCBDUklUSUNBTC5cblxuQVVUTyB3aWxsIGV4cGFuZCB0aGUgbm90aWZpY2F0aW9ucyBpbiB0aGUgbm90aWZpY2F0aW9uIGxpc3QgYXV0b21hdGljYWxseS4gXG5BUlJPVyBhZGRzIGFuIGFycm93IHRoYXQgbGV0cyB5b3UgY2hvb3NlIHdoYXQgdG8gZXhwYW5kIG9yIHVuZXhwYW5kLiBcbkNSSVRJQ0FMIGlzIHNpbWlsYXIgdG8gYXJyb3csIGJ1dCBleHBhbmRzIG5vdGlmaWNhdGlvbnMgd2l0aCB0aGUgdXJnZW5jeSBjcml0aWNhbCBhdXRvbWF0aWNhbGx5LiBcblxuRm9yIG1vcmUgaW5mb3JtYXRpb24gYW5kIGFuIGV4YW1wbGUgY29tbWFuZCB0byBjaGFuZ2UgdGhlIG1vZGUsIEkgcmVjb21tZW5kIHRvIGxvb2sgYXQgdGhlIHJlcG9zaXRvcnkuXCJcblxuVGhlIG9sZCByZXBvc2l0b3J5IGhhcyBiZWVuIGRlbGV0ZWQsIGhvd2V2ZXIgSSByZXBvc3RlZCB0aGUgZXh0ZW5zaW9uIG9uIEdpdEh1Yi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJleHBhbmRhYmxlLW5vdGlmaWNhdGlvbnMiLAogICJuYW1lIjogIkV4cGFuZGFibGUgTm90aWZpY2F0aW9ucyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5leHBhbmRhYmxlLW5vdGlmaWNhdGlvbnMtc2V0dGluZ3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thYW5naW5hbS9leHBhbmRhYmxlLW5vdGlmaWNhdGlvbnMiLAogICJ1dWlkIjogImV4cGFuZGFibGUtbm90aWZpY2F0aW9uc0BrYWFuLmcuaW5hbS5vcmciLAogICJ2ZXJzaW9uIjogOAp9"}, "41": {"version": "8", "sha256": "04i0hxsv41wfxg8z590mgn2klma47mgcz7qr52ca2llpd4dkrjj5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2VzIHRoZSBub3RpZmljYXRpb25zIGluIHRoZSBub3RpZmljYXRpb24gbGlzdCBleHBhbmRhYmxlLiBVc2luZyBnc2V0dGluZ3MsIHlvdSBjYW4gY2hvb3NlIGJldHdlZW4gdGhyZWUgbW9kZXM6IEFVVE8sIEFSUk9XIGFuZCBDUklUSUNBTC5cblxuQVVUTyB3aWxsIGV4cGFuZCB0aGUgbm90aWZpY2F0aW9ucyBpbiB0aGUgbm90aWZpY2F0aW9uIGxpc3QgYXV0b21hdGljYWxseS4gXG5BUlJPVyBhZGRzIGFuIGFycm93IHRoYXQgbGV0cyB5b3UgY2hvb3NlIHdoYXQgdG8gZXhwYW5kIG9yIHVuZXhwYW5kLiBcbkNSSVRJQ0FMIGlzIHNpbWlsYXIgdG8gYXJyb3csIGJ1dCBleHBhbmRzIG5vdGlmaWNhdGlvbnMgd2l0aCB0aGUgdXJnZW5jeSBjcml0aWNhbCBhdXRvbWF0aWNhbGx5LiBcblxuRm9yIG1vcmUgaW5mb3JtYXRpb24gYW5kIGFuIGV4YW1wbGUgY29tbWFuZCB0byBjaGFuZ2UgdGhlIG1vZGUsIEkgcmVjb21tZW5kIHRvIGxvb2sgYXQgdGhlIHJlcG9zaXRvcnkuXCJcblxuVGhlIG9sZCByZXBvc2l0b3J5IGhhcyBiZWVuIGRlbGV0ZWQsIGhvd2V2ZXIgSSByZXBvc3RlZCB0aGUgZXh0ZW5zaW9uIG9uIEdpdEh1Yi4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJleHBhbmRhYmxlLW5vdGlmaWNhdGlvbnMiLAogICJuYW1lIjogIkV4cGFuZGFibGUgTm90aWZpY2F0aW9ucyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5leHBhbmRhYmxlLW5vdGlmaWNhdGlvbnMtc2V0dGluZ3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2thYW5naW5hbS9leHBhbmRhYmxlLW5vdGlmaWNhdGlvbnMiLAogICJ1dWlkIjogImV4cGFuZGFibGUtbm90aWZpY2F0aW9uc0BrYWFuLmcuaW5hbS5vcmciLAogICJ2ZXJzaW9uIjogOAp9"}}}
@@ -574,10 +574,10 @@
 , {"uuid": "netspeed@alynx.one", "name": "Net Speed", "pname": "net-speed", "description": "Show current net speed on panel.", "link": "https://extensions.gnome.org/extension/4478/net-speed/", "shell_version_map": {"40": {"version": "2", "sha256": "0j48ai7nqkpr0ymypsicdp7nw59hx9rgya8qws58wx56q9bznl69", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBuZXQgc3BlZWQgb24gcGFuZWwuIiwKICAibmFtZSI6ICJOZXQgU3BlZWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogIm5ldHNwZWVkQGFseW54Lm9uZSIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "forge@jmmaranan.com", "name": "Forge", "pname": "forge", "description": "Tiling and window manager for GNOME\n\nMAJOR CHANGES\n\n - New Tabbed Tiling Implementation via St.Widget.\n - New style declarations will reset the custom stylesheets for users when updating. Old styles will be backed up as $HOME/.config/forge/stylesheet/forge/stylesheet.css.bak.\n\n Please report bugs/issues on https://github.com/jmmaranan/forge/issues", "link": "https://extensions.gnome.org/extension/4481/forge/", "shell_version_map": {"38": {"version": "38", "sha256": "0hniflq2x8b1cwh5imlwbbmb703jd46w8828xng6gbw966l093cf", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbk1BSk9SIENIQU5HRVNcblxuIC0gTmV3IFRhYmJlZCBUaWxpbmcgSW1wbGVtZW50YXRpb24gdmlhIFN0LldpZGdldC5cbiAtIE5ldyBzdHlsZSBkZWNsYXJhdGlvbnMgd2lsbCByZXNldCB0aGUgY3VzdG9tIHN0eWxlc2hlZXRzIGZvciB1c2VycyB3aGVuIHVwZGF0aW5nLiBPbGQgc3R5bGVzIHdpbGwgYmUgYmFja2VkIHVwIGFzICRIT01FLy5jb25maWcvZm9yZ2Uvc3R5bGVzaGVldC9mb3JnZS9zdHlsZXNoZWV0LmNzcy5iYWsuXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MvaXNzdWVzIG9uIGh0dHBzOi8vZ2l0aHViLmNvbS9qbW1hcmFuYW4vZm9yZ2UvaXNzdWVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZm9yZ2UiLAogICJuYW1lIjogIkZvcmdlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZvcmdlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vam1tYXJhbmFuL2ZvcmdlIiwKICAidXVpZCI6ICJmb3JnZUBqbW1hcmFuYW4uY29tIiwKICAidmVyc2lvbiI6IDM4Cn0="}, "40": {"version": "44", "sha256": "138nmvjlpc2gszbnav5kp649mhhp7fhk9c4y9jqlsc7rzjcy7kzv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbk1BSk9SIENIQU5HRVNcblxuIC0gTmV3IFRhYmJlZCBUaWxpbmcgSW1wbGVtZW50YXRpb24gdmlhIFN0LldpZGdldC5cbiAtIE5ldyBzdHlsZSBkZWNsYXJhdGlvbnMgd2lsbCByZXNldCB0aGUgY3VzdG9tIHN0eWxlc2hlZXRzIGZvciB1c2VycyB3aGVuIHVwZGF0aW5nLiBPbGQgc3R5bGVzIHdpbGwgYmUgYmFja2VkIHVwIGFzICRIT01FLy5jb25maWcvZm9yZ2Uvc3R5bGVzaGVldC9mb3JnZS9zdHlsZXNoZWV0LmNzcy5iYWsuXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MvaXNzdWVzIG9uIGh0dHBzOi8vZ2l0aHViLmNvbS9qbW1hcmFuYW4vZm9yZ2UvaXNzdWVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZm9yZ2UiLAogICJuYW1lIjogIkZvcmdlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZvcmdlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qbW1hcmFuYW4vZm9yZ2UiLAogICJ1dWlkIjogImZvcmdlQGptbWFyYW5hbi5jb20iLAogICJ2ZXJzaW9uIjogNDQKfQ=="}, "41": {"version": "44", "sha256": "138nmvjlpc2gszbnav5kp649mhhp7fhk9c4y9jqlsc7rzjcy7kzv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGluZyBhbmQgd2luZG93IG1hbmFnZXIgZm9yIEdOT01FXG5cbk1BSk9SIENIQU5HRVNcblxuIC0gTmV3IFRhYmJlZCBUaWxpbmcgSW1wbGVtZW50YXRpb24gdmlhIFN0LldpZGdldC5cbiAtIE5ldyBzdHlsZSBkZWNsYXJhdGlvbnMgd2lsbCByZXNldCB0aGUgY3VzdG9tIHN0eWxlc2hlZXRzIGZvciB1c2VycyB3aGVuIHVwZGF0aW5nLiBPbGQgc3R5bGVzIHdpbGwgYmUgYmFja2VkIHVwIGFzICRIT01FLy5jb25maWcvZm9yZ2Uvc3R5bGVzaGVldC9mb3JnZS9zdHlsZXNoZWV0LmNzcy5iYWsuXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MvaXNzdWVzIG9uIGh0dHBzOi8vZ2l0aHViLmNvbS9qbW1hcmFuYW4vZm9yZ2UvaXNzdWVzIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiZm9yZ2UiLAogICJuYW1lIjogIkZvcmdlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZvcmdlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9qbW1hcmFuYW4vZm9yZ2UiLAogICJ1dWlkIjogImZvcmdlQGptbWFyYW5hbi5jb20iLAogICJ2ZXJzaW9uIjogNDQKfQ=="}}}
 , {"uuid": "autonightlight@zefty.github.io", "name": "Auto Night Light", "pname": "auto-night-light", "description": "Automatically adjust night light", "link": "https://extensions.gnome.org/extension/4482/auto-night-light/", "shell_version_map": {"38": {"version": "7", "sha256": "0v76v4z82agn1ay8c0mb2jgnzjf1h9kcp13jhvypcigalfq9qp4n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgYWRqdXN0IG5pZ2h0IGxpZ2h0IiwKICAibmFtZSI6ICJBdXRvIE5pZ2h0IExpZ2h0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9aZWZ0eS9BdXRvTmlnaHRMaWdodCIsCiAgInV1aWQiOiAiYXV0b25pZ2h0bGlnaHRAemVmdHkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "0v76v4z82agn1ay8c0mb2jgnzjf1h9kcp13jhvypcigalfq9qp4n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgYWRqdXN0IG5pZ2h0IGxpZ2h0IiwKICAibmFtZSI6ICJBdXRvIE5pZ2h0IExpZ2h0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9aZWZ0eS9BdXRvTmlnaHRMaWdodCIsCiAgInV1aWQiOiAiYXV0b25pZ2h0bGlnaHRAemVmdHkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "0v76v4z82agn1ay8c0mb2jgnzjf1h9kcp13jhvypcigalfq9qp4n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgYWRqdXN0IG5pZ2h0IGxpZ2h0IiwKICAibmFtZSI6ICJBdXRvIE5pZ2h0IExpZ2h0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9aZWZ0eS9BdXRvTmlnaHRMaWdodCIsCiAgInV1aWQiOiAiYXV0b25pZ2h0bGlnaHRAemVmdHkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
-, {"uuid": "favourites-in-appgrid@harshadgavali.gitlab.org", "name": "Favourites in AppGrid", "pname": "favourites-in-appgrid", "description": "Keep favourite applications in AppGrid", "link": "https://extensions.gnome.org/extension/4485/favourites-in-appgrid/", "shell_version_map": {"40": {"version": "1", "sha256": "1zcbs36kcmw50wgxkqn22abh8g1nx17p48vbpzk5x2842mn8shaz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgZmF2b3VyaXRlIGFwcGxpY2F0aW9ucyBpbiBBcHBHcmlkIiwKICAibmFtZSI6ICJGYXZvdXJpdGVzIGluIEFwcEdyaWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2hhcnNoYWRnYXZhbGkvZmF2b3VyaXRlcy1pbi1hcHBncmlkLyIsCiAgInV1aWQiOiAiZmF2b3VyaXRlcy1pbi1hcHBncmlkQGhhcnNoYWRnYXZhbGkuZ2l0bGFiLm9yZyIsCiAgInZlcnNpb24iOiAxCn0="}, "41": {"version": "1", "sha256": "1zcbs36kcmw50wgxkqn22abh8g1nx17p48vbpzk5x2842mn8shaz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgZmF2b3VyaXRlIGFwcGxpY2F0aW9ucyBpbiBBcHBHcmlkIiwKICAibmFtZSI6ICJGYXZvdXJpdGVzIGluIEFwcEdyaWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL2hhcnNoYWRnYXZhbGkvZmF2b3VyaXRlcy1pbi1hcHBncmlkLyIsCiAgInV1aWQiOiAiZmF2b3VyaXRlcy1pbi1hcHBncmlkQGhhcnNoYWRnYXZhbGkuZ2l0bGFiLm9yZyIsCiAgInZlcnNpb24iOiAxCn0="}}}
+, {"uuid": "favourites-in-appgrid@harshadgavali.gitlab.org", "name": "Favourites in AppGrid", "pname": "favourites-in-appgrid", "description": "Keep favourite applications in AppGrid", "link": "https://extensions.gnome.org/extension/4485/favourites-in-appgrid/", "shell_version_map": {"40": {"version": "2", "sha256": "0cbz05qmn0i7c3591c5h5znq4fp90xc9dz1jdaj213pybynqdphl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgZmF2b3VyaXRlIGFwcGxpY2F0aW9ucyBpbiBBcHBHcmlkIiwKICAibmFtZSI6ICJGYXZvdXJpdGVzIGluIEFwcEdyaWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9oYXJzaGFkZ2F2YWxpL2Zhdm91cml0ZXMtaW4tYXBwZ3JpZC8iLAogICJ1dWlkIjogImZhdm91cml0ZXMtaW4tYXBwZ3JpZEBoYXJzaGFkZ2F2YWxpLmdpdGxhYi5vcmciLAogICJ2ZXJzaW9uIjogMgp9"}, "41": {"version": "2", "sha256": "0cbz05qmn0i7c3591c5h5znq4fp90xc9dz1jdaj213pybynqdphl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgZmF2b3VyaXRlIGFwcGxpY2F0aW9ucyBpbiBBcHBHcmlkIiwKICAibmFtZSI6ICJGYXZvdXJpdGVzIGluIEFwcEdyaWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9oYXJzaGFkZ2F2YWxpL2Zhdm91cml0ZXMtaW4tYXBwZ3JpZC8iLAogICJ1dWlkIjogImZhdm91cml0ZXMtaW4tYXBwZ3JpZEBoYXJzaGFkZ2F2YWxpLmdpdGxhYi5vcmciLAogICJ2ZXJzaW9uIjogMgp9"}, "42": {"version": "2", "sha256": "0cbz05qmn0i7c3591c5h5znq4fp90xc9dz1jdaj213pybynqdphl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIktlZXAgZmF2b3VyaXRlIGFwcGxpY2F0aW9ucyBpbiBBcHBHcmlkIiwKICAibmFtZSI6ICJGYXZvdXJpdGVzIGluIEFwcEdyaWQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9oYXJzaGFkZ2F2YWxpL2Zhdm91cml0ZXMtaW4tYXBwZ3JpZC8iLAogICJ1dWlkIjogImZhdm91cml0ZXMtaW4tYXBwZ3JpZEBoYXJzaGFkZ2F2YWxpLmdpdGxhYi5vcmciLAogICJ2ZXJzaW9uIjogMgp9"}}}
 , {"uuid": "dark-variant@hardpixel.eu", "name": "Dark Variant", "pname": "dark-variant", "description": "Enable dark window decorations on applications. This extension is not compatible with applications that use Client Side Decorations (CSD).\n\nThis extension depends on some Xorg utilities. To install them:\n- Debian/Ubuntu: apt install x11-utils\n- Fedora/RHEL: dnf install xorg-x11-utils\n- Arch: pacman -S xorg-xprop\n\n*Settings are provided to enable/disable applications.", "link": "https://extensions.gnome.org/extension/4488/dark-variant/", "shell_version_map": {"40": {"version": "3", "sha256": "08ywrbcqzijfw9hxlxn56j0dbavq413sbf2qlf6xpc9mi825jhin", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBkYXJrIHdpbmRvdyBkZWNvcmF0aW9ucyBvbiBhcHBsaWNhdGlvbnMuIFRoaXMgZXh0ZW5zaW9uIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggYXBwbGljYXRpb25zIHRoYXQgdXNlIENsaWVudCBTaWRlIERlY29yYXRpb25zIChDU0QpLlxuXG5UaGlzIGV4dGVuc2lvbiBkZXBlbmRzIG9uIHNvbWUgWG9yZyB1dGlsaXRpZXMuIFRvIGluc3RhbGwgdGhlbTpcbi0gRGViaWFuL1VidW50dTogYXB0IGluc3RhbGwgeDExLXV0aWxzXG4tIEZlZG9yYS9SSEVMOiBkbmYgaW5zdGFsbCB4b3JnLXgxMS11dGlsc1xuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIGFwcGxpY2F0aW9ucy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkYXJrLXZhcmlhbnQiLAogICJuYW1lIjogIkRhcmsgVmFyaWFudCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXJrLXZhcmlhbnQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hhcmRwaXhlbC9kYXJrLXZhcmlhbnQiLAogICJ1dWlkIjogImRhcmstdmFyaWFudEBoYXJkcGl4ZWwuZXUiLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "08ywrbcqzijfw9hxlxn56j0dbavq413sbf2qlf6xpc9mi825jhin", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZSBkYXJrIHdpbmRvdyBkZWNvcmF0aW9ucyBvbiBhcHBsaWNhdGlvbnMuIFRoaXMgZXh0ZW5zaW9uIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggYXBwbGljYXRpb25zIHRoYXQgdXNlIENsaWVudCBTaWRlIERlY29yYXRpb25zIChDU0QpLlxuXG5UaGlzIGV4dGVuc2lvbiBkZXBlbmRzIG9uIHNvbWUgWG9yZyB1dGlsaXRpZXMuIFRvIGluc3RhbGwgdGhlbTpcbi0gRGViaWFuL1VidW50dTogYXB0IGluc3RhbGwgeDExLXV0aWxzXG4tIEZlZG9yYS9SSEVMOiBkbmYgaW5zdGFsbCB4b3JnLXgxMS11dGlsc1xuLSBBcmNoOiBwYWNtYW4gLVMgeG9yZy14cHJvcFxuXG4qU2V0dGluZ3MgYXJlIHByb3ZpZGVkIHRvIGVuYWJsZS9kaXNhYmxlIGFwcGxpY2F0aW9ucy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJkYXJrLXZhcmlhbnQiLAogICJuYW1lIjogIkRhcmsgVmFyaWFudCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXJrLXZhcmlhbnQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2hhcmRwaXhlbC9kYXJrLXZhcmlhbnQiLAogICJ1dWlkIjogImRhcmstdmFyaWFudEBoYXJkcGl4ZWwuZXUiLAogICJ2ZXJzaW9uIjogMwp9"}}}
-, {"uuid": "PrivacyMenu@stuarthayhurst", "name": "Privacy Settings Menu", "pname": "privacy-settings-menu", "description": "Add a privacy menu to the top bar for quick access to privacy settings", "link": "https://extensions.gnome.org/extension/4491/privacy-settings-menu/", "shell_version_map": {"38": {"version": "4", "sha256": "1kdkm032xz72cycaj85q1yjb7s6bv3srysp4sn69phclldyg6bhx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBTZXR0aW5ncyBNZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA0Cn0="}, "40": {"version": "4", "sha256": "1kdkm032xz72cycaj85q1yjb7s6bv3srysp4sn69phclldyg6bhx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBTZXR0aW5ncyBNZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "1kdkm032xz72cycaj85q1yjb7s6bv3srysp4sn69phclldyg6bhx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBTZXR0aW5ncyBNZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9zdHVhcnRoYXlodXJzdC9wcml2YWN5LW1lbnUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgInZlcnNpb24iOiA0Cn0="}}}
-, {"uuid": "hide-panel-lite@fthx", "name": "Hide Panel Lite", "pname": "hide-panel-light-version-without-hot-corner", "description": "Hide top panel except in overview.\n\nFor those who don't need a hot corner (e.g. running GNOME 40+ with three fingers gestures). Very very light extension. No options, no bugs. ;-)", "link": "https://extensions.gnome.org/extension/4496/hide-panel-light-version-without-hot-corner/", "shell_version_map": {"38": {"version": "2", "sha256": "13kwd7sh0w34881wwaqvv0mchd7ym7av5s658jcrq2n8n2zma4xi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy5cblxuRm9yIHRob3NlIHdobyBkb24ndCBuZWVkIGEgaG90IGNvcm5lciAoZS5nLiBydW5uaW5nIEdOT01FIDQwKyB3aXRoIHRocmVlIGZpbmdlcnMgZ2VzdHVyZXMpLiBWZXJ5IHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBObyBvcHRpb25zLCBubyBidWdzLiA7LSkiLAogICJuYW1lIjogIkhpZGUgUGFuZWwgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbC1saXRlIiwKICAidXVpZCI6ICJoaWRlLXBhbmVsLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "13kwd7sh0w34881wwaqvv0mchd7ym7av5s658jcrq2n8n2zma4xi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy5cblxuRm9yIHRob3NlIHdobyBkb24ndCBuZWVkIGEgaG90IGNvcm5lciAoZS5nLiBydW5uaW5nIEdOT01FIDQwKyB3aXRoIHRocmVlIGZpbmdlcnMgZ2VzdHVyZXMpLiBWZXJ5IHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBObyBvcHRpb25zLCBubyBidWdzLiA7LSkiLAogICJuYW1lIjogIkhpZGUgUGFuZWwgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbC1saXRlIiwKICAidXVpZCI6ICJoaWRlLXBhbmVsLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "13kwd7sh0w34881wwaqvv0mchd7ym7av5s658jcrq2n8n2zma4xi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy5cblxuRm9yIHRob3NlIHdobyBkb24ndCBuZWVkIGEgaG90IGNvcm5lciAoZS5nLiBydW5uaW5nIEdOT01FIDQwKyB3aXRoIHRocmVlIGZpbmdlcnMgZ2VzdHVyZXMpLiBWZXJ5IHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBObyBvcHRpb25zLCBubyBidWdzLiA7LSkiLAogICJuYW1lIjogIkhpZGUgUGFuZWwgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbC1saXRlIiwKICAidXVpZCI6ICJoaWRlLXBhbmVsLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"uuid": "PrivacyMenu@stuarthayhurst", "name": "Privacy Settings Menu", "pname": "privacy-settings-menu", "description": "Add a privacy menu to the top bar for quick access to privacy settings", "link": "https://extensions.gnome.org/extension/4491/privacy-settings-menu/", "shell_version_map": {"38": {"version": "5", "sha256": "1x6rza2gv7qchkv75cpcy8jx7nl5f8dg5wrjvawvqv4h0kdlcgc9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBTZXR0aW5ncyBNZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3R1YXJ0aGF5aHVyc3QvcHJpdmFjeS1tZW51LWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiUHJpdmFjeU1lbnVAc3R1YXJ0aGF5aHVyc3QiLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "1x6rza2gv7qchkv75cpcy8jx7nl5f8dg5wrjvawvqv4h0kdlcgc9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBTZXR0aW5ncyBNZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3R1YXJ0aGF5aHVyc3QvcHJpdmFjeS1tZW51LWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiUHJpdmFjeU1lbnVAc3R1YXJ0aGF5aHVyc3QiLAogICJ2ZXJzaW9uIjogNQp9"}, "41": {"version": "5", "sha256": "1x6rza2gv7qchkv75cpcy8jx7nl5f8dg5wrjvawvqv4h0kdlcgc9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBTZXR0aW5ncyBNZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3R1YXJ0aGF5aHVyc3QvcHJpdmFjeS1tZW51LWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiUHJpdmFjeU1lbnVAc3R1YXJ0aGF5aHVyc3QiLAogICJ2ZXJzaW9uIjogNQp9"}, "42": {"version": "5", "sha256": "1x6rza2gv7qchkv75cpcy8jx7nl5f8dg5wrjvawvqv4h0kdlcgc9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHByaXZhY3kgbWVudSB0byB0aGUgdG9wIGJhciBmb3IgcXVpY2sgYWNjZXNzIHRvIHByaXZhY3kgc2V0dGluZ3MiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJQcml2YWN5TWVudUBzdHVhcnRoYXlodXJzdCIsCiAgIm5hbWUiOiAiUHJpdmFjeSBTZXR0aW5ncyBNZW51IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc3R1YXJ0aGF5aHVyc3QvcHJpdmFjeS1tZW51LWV4dGVuc2lvbiIsCiAgInV1aWQiOiAiUHJpdmFjeU1lbnVAc3R1YXJ0aGF5aHVyc3QiLAogICJ2ZXJzaW9uIjogNQp9"}}}
+, {"uuid": "hide-panel-lite@fthx", "name": "Hide Panel Lite", "pname": "hide-panel-light-version-without-hot-corner", "description": "Hide top panel except in overview.\n\nFor those who don't need a hot corner (e.g. running GNOME 40+ with three fingers gestures). Very very light extension. No options, no bugs. ;-)", "link": "https://extensions.gnome.org/extension/4496/hide-panel-light-version-without-hot-corner/", "shell_version_map": {"38": {"version": "2", "sha256": "13kwd7sh0w34881wwaqvv0mchd7ym7av5s658jcrq2n8n2zma4xi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy5cblxuRm9yIHRob3NlIHdobyBkb24ndCBuZWVkIGEgaG90IGNvcm5lciAoZS5nLiBydW5uaW5nIEdOT01FIDQwKyB3aXRoIHRocmVlIGZpbmdlcnMgZ2VzdHVyZXMpLiBWZXJ5IHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBObyBvcHRpb25zLCBubyBidWdzLiA7LSkiLAogICJuYW1lIjogIkhpZGUgUGFuZWwgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbC1saXRlIiwKICAidXVpZCI6ICJoaWRlLXBhbmVsLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "13kwd7sh0w34881wwaqvv0mchd7ym7av5s658jcrq2n8n2zma4xi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy5cblxuRm9yIHRob3NlIHdobyBkb24ndCBuZWVkIGEgaG90IGNvcm5lciAoZS5nLiBydW5uaW5nIEdOT01FIDQwKyB3aXRoIHRocmVlIGZpbmdlcnMgZ2VzdHVyZXMpLiBWZXJ5IHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBObyBvcHRpb25zLCBubyBidWdzLiA7LSkiLAogICJuYW1lIjogIkhpZGUgUGFuZWwgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbC1saXRlIiwKICAidXVpZCI6ICJoaWRlLXBhbmVsLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "13kwd7sh0w34881wwaqvv0mchd7ym7av5s658jcrq2n8n2zma4xi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy5cblxuRm9yIHRob3NlIHdobyBkb24ndCBuZWVkIGEgaG90IGNvcm5lciAoZS5nLiBydW5uaW5nIEdOT01FIDQwKyB3aXRoIHRocmVlIGZpbmdlcnMgZ2VzdHVyZXMpLiBWZXJ5IHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBObyBvcHRpb25zLCBubyBidWdzLiA7LSkiLAogICJuYW1lIjogIkhpZGUgUGFuZWwgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbC1saXRlIiwKICAidXVpZCI6ICJoaWRlLXBhbmVsLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "42": {"version": "2", "sha256": "13kwd7sh0w34881wwaqvv0mchd7ym7av5s658jcrq2n8n2zma4xi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgdG9wIHBhbmVsIGV4Y2VwdCBpbiBvdmVydmlldy5cblxuRm9yIHRob3NlIHdobyBkb24ndCBuZWVkIGEgaG90IGNvcm5lciAoZS5nLiBydW5uaW5nIEdOT01FIDQwKyB3aXRoIHRocmVlIGZpbmdlcnMgZ2VzdHVyZXMpLiBWZXJ5IHZlcnkgbGlnaHQgZXh0ZW5zaW9uLiBObyBvcHRpb25zLCBubyBidWdzLiA7LSkiLAogICJuYW1lIjogIkhpZGUgUGFuZWwgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvaGlkZS1wYW5lbC1saXRlIiwKICAidXVpZCI6ICJoaWRlLXBhbmVsLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "ssm-gnome@lgiki.net", "name": "Simple System Monitor", "pname": "simple-system-monitor", "description": "Show current CPU usage, memory usage and net speed on panel.\nFor best experience, please use monospaced font.\n\nThis is a fork of https://extensions.gnome.org/extension/4478/net-speed/.", "link": "https://extensions.gnome.org/extension/4506/simple-system-monitor/", "shell_version_map": {"38": {"version": "7", "sha256": "034ajnkdj3npjzlj3n8glxanjnhv12904sshkbjjrx6swmklcqs3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBDUFUgdXNhZ2UsIG1lbW9yeSB1c2FnZSBhbmQgbmV0IHNwZWVkIG9uIHBhbmVsLlxuRm9yIGJlc3QgZXhwZXJpZW5jZSwgcGxlYXNlIHVzZSBtb25vc3BhY2VkIGZvbnQuXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ0NzgvbmV0LXNwZWVkLy4iLAogICJuYW1lIjogIlNpbXBsZSBTeXN0ZW0gTW9uaXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTEdpa2kvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNpbXBsZS1zeXN0ZW0tbW9uaXRvciIsCiAgInV1aWQiOiAic3NtLWdub21lQGxnaWtpLm5ldCIsCiAgInZlcnNpb24iOiA3Cn0="}, "40": {"version": "7", "sha256": "034ajnkdj3npjzlj3n8glxanjnhv12904sshkbjjrx6swmklcqs3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBDUFUgdXNhZ2UsIG1lbW9yeSB1c2FnZSBhbmQgbmV0IHNwZWVkIG9uIHBhbmVsLlxuRm9yIGJlc3QgZXhwZXJpZW5jZSwgcGxlYXNlIHVzZSBtb25vc3BhY2VkIGZvbnQuXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ0NzgvbmV0LXNwZWVkLy4iLAogICJuYW1lIjogIlNpbXBsZSBTeXN0ZW0gTW9uaXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTEdpa2kvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNpbXBsZS1zeXN0ZW0tbW9uaXRvciIsCiAgInV1aWQiOiAic3NtLWdub21lQGxnaWtpLm5ldCIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "034ajnkdj3npjzlj3n8glxanjnhv12904sshkbjjrx6swmklcqs3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3cgY3VycmVudCBDUFUgdXNhZ2UsIG1lbW9yeSB1c2FnZSBhbmQgbmV0IHNwZWVkIG9uIHBhbmVsLlxuRm9yIGJlc3QgZXhwZXJpZW5jZSwgcGxlYXNlIHVzZSBtb25vc3BhY2VkIGZvbnQuXG5cblRoaXMgaXMgYSBmb3JrIG9mIGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzQ0NzgvbmV0LXNwZWVkLy4iLAogICJuYW1lIjogIlNpbXBsZSBTeXN0ZW0gTW9uaXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vTEdpa2kvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNpbXBsZS1zeXN0ZW0tbW9uaXRvciIsCiAgInV1aWQiOiAic3NtLWdub21lQGxnaWtpLm5ldCIsCiAgInZlcnNpb24iOiA3Cn0="}}}
 , {"uuid": "unredirect@aunetx", "name": "Disable unredirect fullscreen windows", "pname": "disable-unredirect-fullscreen-windows", "description": "Disables unredirect fullscreen windows in gnome-shell to prevent artifacts when in fullscreen.\n\nThis version makes sure the unredirect option is not re-enabled automatically by the shell.", "link": "https://extensions.gnome.org/extension/4509/disable-unredirect-fullscreen-windows/", "shell_version_map": {"40": {"version": "3", "sha256": "1mgvpzzfdzn5qsxwz5911a8qgq0r34az6xpmqr72ksx6yf13l85z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGVzIHVucmVkaXJlY3QgZnVsbHNjcmVlbiB3aW5kb3dzIGluIGdub21lLXNoZWxsIHRvIHByZXZlbnQgYXJ0aWZhY3RzIHdoZW4gaW4gZnVsbHNjcmVlbi5cblxuVGhpcyB2ZXJzaW9uIG1ha2VzIHN1cmUgdGhlIHVucmVkaXJlY3Qgb3B0aW9uIGlzIG5vdCByZS1lbmFibGVkIGF1dG9tYXRpY2FsbHkgYnkgdGhlIHNoZWxsLiIsCiAgIm5hbWUiOiAiRGlzYWJsZSB1bnJlZGlyZWN0IGZ1bGxzY3JlZW4gd2luZG93cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXVuZXR4L2dub21lLXNoZWxsLWV4dGVuc2lvbi1kaXNhYmxlLXVucmVkaXJlY3QiLAogICJ1dWlkIjogInVucmVkaXJlY3RAYXVuZXR4IiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "1mgvpzzfdzn5qsxwz5911a8qgq0r34az6xpmqr72ksx6yf13l85z", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2FibGVzIHVucmVkaXJlY3QgZnVsbHNjcmVlbiB3aW5kb3dzIGluIGdub21lLXNoZWxsIHRvIHByZXZlbnQgYXJ0aWZhY3RzIHdoZW4gaW4gZnVsbHNjcmVlbi5cblxuVGhpcyB2ZXJzaW9uIG1ha2VzIHN1cmUgdGhlIHVucmVkaXJlY3Qgb3B0aW9uIGlzIG5vdCByZS1lbmFibGVkIGF1dG9tYXRpY2FsbHkgYnkgdGhlIHNoZWxsLiIsCiAgIm5hbWUiOiAiRGlzYWJsZSB1bnJlZGlyZWN0IGZ1bGxzY3JlZW4gd2luZG93cyIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiS2F6aW1pZXJhcyBWYWluYSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXVuZXR4L2dub21lLXNoZWxsLWV4dGVuc2lvbi1kaXNhYmxlLXVucmVkaXJlY3QiLAogICJ1dWlkIjogInVucmVkaXJlY3RAYXVuZXR4IiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 , {"uuid": "nepali-date@biplab", "name": "Nepali Date", "pname": "nepali-calendar", "description": "Shows nepali date on the panel.", "link": "https://extensions.gnome.org/extension/4518/nepali-calendar/", "shell_version_map": {"40": {"version": "11", "sha256": "1g4zdhypy553wbdq0pnxva05ab6p3dv5dp4jcw8vrf8f0kblxxa5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIG5lcGFsaSBkYXRlIG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIk5lcGFsaSBEYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9CaXBsYWItRHV0dGEvTmVwYWxpX0RhdGUiLAogICJ1dWlkIjogIm5lcGFsaS1kYXRlQGJpcGxhYiIsCiAgInZlcnNpb24iOiAxMQp9"}, "41": {"version": "11", "sha256": "1g4zdhypy553wbdq0pnxva05ab6p3dv5dp4jcw8vrf8f0kblxxa5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIG5lcGFsaSBkYXRlIG9uIHRoZSBwYW5lbC4iLAogICJuYW1lIjogIk5lcGFsaSBEYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9CaXBsYWItRHV0dGEvTmVwYWxpX0RhdGUiLAogICJ1dWlkIjogIm5lcGFsaS1kYXRlQGJpcGxhYiIsCiAgInZlcnNpb24iOiAxMQp9"}}}
@@ -597,11 +597,11 @@
 , {"uuid": "pcalc@mgeck64.github.com", "name": "Panel Calculator", "pname": "panel-calculator", "description": "A text-based calculator that lives on the gnome panel, out of the way of your work.", "link": "https://extensions.gnome.org/extension/4567/panel-calculator/", "shell_version_map": {"38": {"version": "6", "sha256": "0rr98m2l20165mf8dcc2gwizqmksczkpbk8sqwhsppkvx6racz1m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgdGV4dC1iYXNlZCBjYWxjdWxhdG9yIHRoYXQgbGl2ZXMgb24gdGhlIGdub21lIHBhbmVsLCBvdXQgb2YgdGhlIHdheSBvZiB5b3VyIHdvcmsuIiwKICAibmFtZSI6ICJQYW5lbCBDYWxjdWxhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21nZWNrNjQvcGNhbGMtbWdlY2s2NC5naXRodWIuY29tIiwKICAidXVpZCI6ICJwY2FsY0BtZ2VjazY0LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}, "40": {"version": "6", "sha256": "0rr98m2l20165mf8dcc2gwizqmksczkpbk8sqwhsppkvx6racz1m", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgdGV4dC1iYXNlZCBjYWxjdWxhdG9yIHRoYXQgbGl2ZXMgb24gdGhlIGdub21lIHBhbmVsLCBvdXQgb2YgdGhlIHdheSBvZiB5b3VyIHdvcmsuIiwKICAibmFtZSI6ICJQYW5lbCBDYWxjdWxhdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21nZWNrNjQvcGNhbGMtbWdlY2s2NC5naXRodWIuY29tIiwKICAidXVpZCI6ICJwY2FsY0BtZ2VjazY0LmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "zfs-status-monitor@chris.hubick.com", "name": "ZFS Status Monitor", "pname": "zfs-status-monitor", "description": "Display status of ZFS filesystem pools currently present on the system, updating every 60 seconds.", "link": "https://extensions.gnome.org/extension/4568/zfs-status-monitor/", "shell_version_map": {"40": {"version": "1", "sha256": "07g6b3y2dpvb41qd0j5rkakxpvyfgwnwcqzfr00h6zfvrx32nnp0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgc3RhdHVzIG9mIFpGUyBmaWxlc3lzdGVtIHBvb2xzIGN1cnJlbnRseSBwcmVzZW50IG9uIHRoZSBzeXN0ZW0sIHVwZGF0aW5nIGV2ZXJ5IDYwIHNlY29uZHMuIiwKICAibmFtZSI6ICJaRlMgU3RhdHVzIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2h1Ymljay9nbm9tZS1zaGVsbC1leHRlbnNpb24temZzLXN0YXR1cy1tb25pdG9yIiwKICAidXVpZCI6ICJ6ZnMtc3RhdHVzLW1vbml0b3JAY2hyaXMuaHViaWNrLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}, "41": {"version": "1", "sha256": "07g6b3y2dpvb41qd0j5rkakxpvyfgwnwcqzfr00h6zfvrx32nnp0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgc3RhdHVzIG9mIFpGUyBmaWxlc3lzdGVtIHBvb2xzIGN1cnJlbnRseSBwcmVzZW50IG9uIHRoZSBzeXN0ZW0sIHVwZGF0aW5nIGV2ZXJ5IDYwIHNlY29uZHMuIiwKICAibmFtZSI6ICJaRlMgU3RhdHVzIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2h1Ymljay9nbm9tZS1zaGVsbC1leHRlbnNpb24temZzLXN0YXR1cy1tb25pdG9yIiwKICAidXVpZCI6ICJ6ZnMtc3RhdHVzLW1vbml0b3JAY2hyaXMuaHViaWNrLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}}}
 , {"uuid": "dollar@dotpyc.com", "name": "Dollar", "pname": "dollar", "description": "Cotações do (USD Dólar Americano) convertido para (BRL Real Brasileiro).\n\nAs atualizações são recebidas a cada 30 segundos e utiliza como base informações disponiblizadas pela API AwesomeAPI, que pode ser consultada diretamente acessando o endereço eletronico https://docs.awesomeapi.com.br.", "link": "https://extensions.gnome.org/extension/4573/dollar/", "shell_version_map": {"38": {"version": "2", "sha256": "0100dspvm8ryqday9dqm76ykc9n9sikv3098yn6a92kpz9kgxacm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvdGFcdTAwZTdcdTAwZjVlcyBkbyAoVVNEIERcdTAwZjNsYXIgQW1lcmljYW5vKSBjb252ZXJ0aWRvIHBhcmEgKEJSTCBSZWFsIEJyYXNpbGVpcm8pLlxuXG5BcyBhdHVhbGl6YVx1MDBlN1x1MDBmNWVzIHNcdTAwZTNvIHJlY2ViaWRhcyBhIGNhZGEgMzAgc2VndW5kb3MgZSB1dGlsaXphIGNvbW8gYmFzZSBpbmZvcm1hXHUwMGU3XHUwMGY1ZXMgZGlzcG9uaWJsaXphZGFzIHBlbGEgQVBJIEF3ZXNvbWVBUEksIHF1ZSBwb2RlIHNlciBjb25zdWx0YWRhIGRpcmV0YW1lbnRlIGFjZXNzYW5kbyBvIGVuZGVyZVx1MDBlN28gZWxldHJvbmljbyBodHRwczovL2RvY3MuYXdlc29tZWFwaS5jb20uYnIuIiwKICAibmFtZSI6ICJEb2xsYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21pY2hhZWxkZW1hdHRvcy9kb2xsYXItZG90cHljLmNvbSIsCiAgInV1aWQiOiAiZG9sbGFyQGRvdHB5Yy5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}, "40": {"version": "2", "sha256": "0100dspvm8ryqday9dqm76ykc9n9sikv3098yn6a92kpz9kgxacm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvdGFcdTAwZTdcdTAwZjVlcyBkbyAoVVNEIERcdTAwZjNsYXIgQW1lcmljYW5vKSBjb252ZXJ0aWRvIHBhcmEgKEJSTCBSZWFsIEJyYXNpbGVpcm8pLlxuXG5BcyBhdHVhbGl6YVx1MDBlN1x1MDBmNWVzIHNcdTAwZTNvIHJlY2ViaWRhcyBhIGNhZGEgMzAgc2VndW5kb3MgZSB1dGlsaXphIGNvbW8gYmFzZSBpbmZvcm1hXHUwMGU3XHUwMGY1ZXMgZGlzcG9uaWJsaXphZGFzIHBlbGEgQVBJIEF3ZXNvbWVBUEksIHF1ZSBwb2RlIHNlciBjb25zdWx0YWRhIGRpcmV0YW1lbnRlIGFjZXNzYW5kbyBvIGVuZGVyZVx1MDBlN28gZWxldHJvbmljbyBodHRwczovL2RvY3MuYXdlc29tZWFwaS5jb20uYnIuIiwKICAibmFtZSI6ICJEb2xsYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21pY2hhZWxkZW1hdHRvcy9kb2xsYXItZG90cHljLmNvbSIsCiAgInV1aWQiOiAiZG9sbGFyQGRvdHB5Yy5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}, "41": {"version": "2", "sha256": "0100dspvm8ryqday9dqm76ykc9n9sikv3098yn6a92kpz9kgxacm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvdGFcdTAwZTdcdTAwZjVlcyBkbyAoVVNEIERcdTAwZjNsYXIgQW1lcmljYW5vKSBjb252ZXJ0aWRvIHBhcmEgKEJSTCBSZWFsIEJyYXNpbGVpcm8pLlxuXG5BcyBhdHVhbGl6YVx1MDBlN1x1MDBmNWVzIHNcdTAwZTNvIHJlY2ViaWRhcyBhIGNhZGEgMzAgc2VndW5kb3MgZSB1dGlsaXphIGNvbW8gYmFzZSBpbmZvcm1hXHUwMGU3XHUwMGY1ZXMgZGlzcG9uaWJsaXphZGFzIHBlbGEgQVBJIEF3ZXNvbWVBUEksIHF1ZSBwb2RlIHNlciBjb25zdWx0YWRhIGRpcmV0YW1lbnRlIGFjZXNzYW5kbyBvIGVuZGVyZVx1MDBlN28gZWxldHJvbmljbyBodHRwczovL2RvY3MuYXdlc29tZWFwaS5jb20uYnIuIiwKICAibmFtZSI6ICJEb2xsYXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21pY2hhZWxkZW1hdHRvcy9kb2xsYXItZG90cHljLmNvbSIsCiAgInV1aWQiOiAiZG9sbGFyQGRvdHB5Yy5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"uuid": "activate_gnome@isjerryxiao", "name": "Activate Gnome", "pname": "activate_gnome", "description": "Shows Activate Gnome watermark on your screen.", "link": "https://extensions.gnome.org/extension/4574/activate_gnome/", "shell_version_map": {"40": {"version": "3", "sha256": "1hmadwwzm6m9vg4wxz6lvalh9bvi2fnhzjyg9f4whzb5zp8klc4p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIEFjdGl2YXRlIEdub21lIHdhdGVybWFyayBvbiB5b3VyIHNjcmVlbi4iLAogICJuYW1lIjogIkFjdGl2YXRlIEdub21lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFjdGl2YXRlX2dub21lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pc2plcnJ5eGlhby9nbm9tZS1zaGVsbC1leHRlbnNpb24tYWN0aXZhdGUtZ25vbWUiLAogICJ1dWlkIjogImFjdGl2YXRlX2dub21lQGlzamVycnl4aWFvIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "1hmadwwzm6m9vg4wxz6lvalh9bvi2fnhzjyg9f4whzb5zp8klc4p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIEFjdGl2YXRlIEdub21lIHdhdGVybWFyayBvbiB5b3VyIHNjcmVlbi4iLAogICJuYW1lIjogIkFjdGl2YXRlIEdub21lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFjdGl2YXRlX2dub21lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pc2plcnJ5eGlhby9nbm9tZS1zaGVsbC1leHRlbnNpb24tYWN0aXZhdGUtZ25vbWUiLAogICJ1dWlkIjogImFjdGl2YXRlX2dub21lQGlzamVycnl4aWFvIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "huawei-wmi@apps.sdore.me", "name": "Huawei WMI controls", "pname": "huawei-wmi-controls", "description": "Control various Huawei and Honor laptops WMI functions, such as battery protection, Fn-lock and keyboard backlight (just not yet).\n\nNote: needs https://github.com/qu1x/huawei-wmi udev rules (or similar) to work.", "link": "https://extensions.gnome.org/extension/4580/huawei-wmi-controls/", "shell_version_map": {"40": {"version": "2", "sha256": "10pzh853nlw5xyws6qa5iqkrac9n42zf73y2jyyg6lmgpkxvzqsg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdmFyaW91cyBIdWF3ZWkgYW5kIEhvbm9yIGxhcHRvcHMgV01JIGZ1bmN0aW9ucywgc3VjaCBhcyBiYXR0ZXJ5IHByb3RlY3Rpb24sIEZuLWxvY2sgYW5kIGtleWJvYXJkIGJhY2tsaWdodCAoanVzdCBub3QgeWV0KS5cblxuTm90ZTogbmVlZHMgaHR0cHM6Ly9naXRodWIuY29tL3F1MXgvaHVhd2VpLXdtaSB1ZGV2IHJ1bGVzIChvciBzaW1pbGFyKSB0byB3b3JrLiIsCiAgIm5hbWUiOiAiSHVhd2VpIFdNSSBjb250cm9scyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2FwcHMuc2RvcmUubWUvZ25vbWUtZXh0ZW5zaW9uLWh1YXdlaS13bWkiLAogICJ1dWlkIjogImh1YXdlaS13bWlAYXBwcy5zZG9yZS5tZSIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "10pzh853nlw5xyws6qa5iqkrac9n42zf73y2jyyg6lmgpkxvzqsg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdmFyaW91cyBIdWF3ZWkgYW5kIEhvbm9yIGxhcHRvcHMgV01JIGZ1bmN0aW9ucywgc3VjaCBhcyBiYXR0ZXJ5IHByb3RlY3Rpb24sIEZuLWxvY2sgYW5kIGtleWJvYXJkIGJhY2tsaWdodCAoanVzdCBub3QgeWV0KS5cblxuTm90ZTogbmVlZHMgaHR0cHM6Ly9naXRodWIuY29tL3F1MXgvaHVhd2VpLXdtaSB1ZGV2IHJ1bGVzIChvciBzaW1pbGFyKSB0byB3b3JrLiIsCiAgIm5hbWUiOiAiSHVhd2VpIFdNSSBjb250cm9scyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2FwcHMuc2RvcmUubWUvZ25vbWUtZXh0ZW5zaW9uLWh1YXdlaS13bWkiLAogICJ1dWlkIjogImh1YXdlaS13bWlAYXBwcy5zZG9yZS5tZSIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"uuid": "activate_gnome@isjerryxiao", "name": "Activate Gnome", "pname": "activate_gnome", "description": "Shows Activate Gnome watermark on your screen.", "link": "https://extensions.gnome.org/extension/4574/activate_gnome/", "shell_version_map": {"40": {"version": "5", "sha256": "1jng0xwqchvan08klq8i6rziwi1fn7spfzh151fv1n56fxay48f8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIEFjdGl2YXRlIEdub21lIHdhdGVybWFyayBvbiB5b3VyIHNjcmVlbi4iLAogICJuYW1lIjogIkFjdGl2YXRlIEdub21lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFjdGl2YXRlX2dub21lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaXNqZXJyeXhpYW8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWFjdGl2YXRlLWdub21lIiwKICAidXVpZCI6ICJhY3RpdmF0ZV9nbm9tZUBpc2plcnJ5eGlhbyIsCiAgInZlcnNpb24iOiA1Cn0="}, "41": {"version": "5", "sha256": "1jng0xwqchvan08klq8i6rziwi1fn7spfzh151fv1n56fxay48f8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIEFjdGl2YXRlIEdub21lIHdhdGVybWFyayBvbiB5b3VyIHNjcmVlbi4iLAogICJuYW1lIjogIkFjdGl2YXRlIEdub21lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFjdGl2YXRlX2dub21lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaXNqZXJyeXhpYW8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWFjdGl2YXRlLWdub21lIiwKICAidXVpZCI6ICJhY3RpdmF0ZV9nbm9tZUBpc2plcnJ5eGlhbyIsCiAgInZlcnNpb24iOiA1Cn0="}, "42": {"version": "5", "sha256": "1jng0xwqchvan08klq8i6rziwi1fn7spfzh151fv1n56fxay48f8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIEFjdGl2YXRlIEdub21lIHdhdGVybWFyayBvbiB5b3VyIHNjcmVlbi4iLAogICJuYW1lIjogIkFjdGl2YXRlIEdub21lIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmFjdGl2YXRlX2dub21lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vaXNqZXJyeXhpYW8vZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWFjdGl2YXRlLWdub21lIiwKICAidXVpZCI6ICJhY3RpdmF0ZV9nbm9tZUBpc2plcnJ5eGlhbyIsCiAgInZlcnNpb24iOiA1Cn0="}}}
+, {"uuid": "huawei-wmi@apps.sdore.me", "name": "Huawei WMI controls", "pname": "huawei-wmi-controls", "description": "Control various Huawei and Honor laptops WMI functions, such as battery protection, Fn-lock, power unlock and keyboard backlight.\n\nSee repository for requirements:", "link": "https://extensions.gnome.org/extension/4580/huawei-wmi-controls/", "shell_version_map": {"40": {"version": "4", "sha256": "1dpkgs0zifbq09pmsqirr1ndh2yd8x8z4gzzjpv0mazvxpqlzdm2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdmFyaW91cyBIdWF3ZWkgYW5kIEhvbm9yIGxhcHRvcHMgV01JIGZ1bmN0aW9ucywgc3VjaCBhcyBiYXR0ZXJ5IHByb3RlY3Rpb24sIEZuLWxvY2ssIHBvd2VyIHVubG9jayBhbmQga2V5Ym9hcmQgYmFja2xpZ2h0LlxuXG5TZWUgcmVwb3NpdG9yeSBmb3IgcmVxdWlyZW1lbnRzOiIsCiAgIm5hbWUiOiAiSHVhd2VpIFdNSSBjb250cm9scyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2FwcHMuc2RvcmUubWUvZ25vbWUtZXh0ZW5zaW9uLWh1YXdlaS13bWkiLAogICJ1dWlkIjogImh1YXdlaS13bWlAYXBwcy5zZG9yZS5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "1dpkgs0zifbq09pmsqirr1ndh2yd8x8z4gzzjpv0mazvxpqlzdm2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgdmFyaW91cyBIdWF3ZWkgYW5kIEhvbm9yIGxhcHRvcHMgV01JIGZ1bmN0aW9ucywgc3VjaCBhcyBiYXR0ZXJ5IHByb3RlY3Rpb24sIEZuLWxvY2ssIHBvd2VyIHVubG9jayBhbmQga2V5Ym9hcmQgYmFja2xpZ2h0LlxuXG5TZWUgcmVwb3NpdG9yeSBmb3IgcmVxdWlyZW1lbnRzOiIsCiAgIm5hbWUiOiAiSHVhd2VpIFdNSSBjb250cm9scyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2FwcHMuc2RvcmUubWUvZ25vbWUtZXh0ZW5zaW9uLWh1YXdlaS13bWkiLAogICJ1dWlkIjogImh1YXdlaS13bWlAYXBwcy5zZG9yZS5tZSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "username-hotname@it-und-entwicklung-fg.de", "name": "Username and Hostname to panel", "pname": "username-and-hostname-to-panel", "description": "Adds your avatar icon, user displayname und username to the menu panel. Also it adds the hostname to the left of the panel.", "link": "https://extensions.gnome.org/extension/4583/username-and-hostname-to-panel/", "shell_version_map": {"38": {"version": "4", "sha256": "0v98gymiw2pdczvndrvj3lsyhwi8ps0jldry1ykm9aghb05s13gx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgeW91ciBhdmF0YXIgaWNvbiwgdXNlciBkaXNwbGF5bmFtZSB1bmQgdXNlcm5hbWUgdG8gdGhlIG1lbnUgcGFuZWwuIEFsc28gaXQgYWRkcyB0aGUgaG9zdG5hbWUgdG8gdGhlIGxlZnQgb2YgdGhlIHBhbmVsLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ1c2VybmFtZS1ob3RuYW1lIiwKICAibmFtZSI6ICJVc2VybmFtZSBhbmQgSG9zdG5hbWUgdG8gcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2l0LWVudHdpY2tsdW5nLWZnL1VzZXJuYW1lLWFuZC1Ib3N0bmFtZSIsCiAgInV1aWQiOiAidXNlcm5hbWUtaG90bmFtZUBpdC11bmQtZW50d2lja2x1bmctZmcuZGUiLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "0v98gymiw2pdczvndrvj3lsyhwi8ps0jldry1ykm9aghb05s13gx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgeW91ciBhdmF0YXIgaWNvbiwgdXNlciBkaXNwbGF5bmFtZSB1bmQgdXNlcm5hbWUgdG8gdGhlIG1lbnUgcGFuZWwuIEFsc28gaXQgYWRkcyB0aGUgaG9zdG5hbWUgdG8gdGhlIGxlZnQgb2YgdGhlIHBhbmVsLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ1c2VybmFtZS1ob3RuYW1lIiwKICAibmFtZSI6ICJVc2VybmFtZSBhbmQgSG9zdG5hbWUgdG8gcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2l0LWVudHdpY2tsdW5nLWZnL1VzZXJuYW1lLWFuZC1Ib3N0bmFtZSIsCiAgInV1aWQiOiAidXNlcm5hbWUtaG90bmFtZUBpdC11bmQtZW50d2lja2x1bmctZmcuZGUiLAogICJ2ZXJzaW9uIjogNAp9"}, "41": {"version": "4", "sha256": "0v98gymiw2pdczvndrvj3lsyhwi8ps0jldry1ykm9aghb05s13gx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgeW91ciBhdmF0YXIgaWNvbiwgdXNlciBkaXNwbGF5bmFtZSB1bmQgdXNlcm5hbWUgdG8gdGhlIG1lbnUgcGFuZWwuIEFsc28gaXQgYWRkcyB0aGUgaG9zdG5hbWUgdG8gdGhlIGxlZnQgb2YgdGhlIHBhbmVsLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJ1c2VybmFtZS1ob3RuYW1lIiwKICAibmFtZSI6ICJVc2VybmFtZSBhbmQgSG9zdG5hbWUgdG8gcGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2l0LWVudHdpY2tsdW5nLWZnL1VzZXJuYW1lLWFuZC1Ib3N0bmFtZSIsCiAgInV1aWQiOiAidXNlcm5hbWUtaG90bmFtZUBpdC11bmQtZW50d2lja2x1bmctZmcuZGUiLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "InternetSpeedMonitor@Rishu", "name": "Internet Speed Monitor", "pname": "internet-speed-monitor", "description": "Extension to Monitor Internet Speed and Daily Data Usage minimally.\n\nNew update for shell version 3.34+ : Added option to choose what to display in settings menu", "link": "https://extensions.gnome.org/extension/4585/internet-speed-monitor/", "shell_version_map": {"38": {"version": "5", "sha256": "0v4za9lcc7p861vyrnwwza1sizgzj2nv3yz1aixlsbq22d7zf0ac", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4dGVuc2lvbiB0byBNb25pdG9yIEludGVybmV0IFNwZWVkIGFuZCBEYWlseSBEYXRhIFVzYWdlIG1pbmltYWxseS5cblxuTmV3IHVwZGF0ZSBmb3Igc2hlbGwgdmVyc2lvbiAzLjM0KyA6IEFkZGVkIG9wdGlvbiB0byBjaG9vc2Ugd2hhdCB0byBkaXNwbGF5IGluIHNldHRpbmdzIG1lbnUiLAogICJuYW1lIjogIkludGVybmV0IFNwZWVkIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Jpc2h1aW5maW5pdHkvSW50ZXJuZXRTcGVlZE1vbml0b3IiLAogICJ1dWlkIjogIkludGVybmV0U3BlZWRNb25pdG9yQFJpc2h1IiwKICAidmVyc2lvbiI6IDUKfQ=="}, "40": {"version": "5", "sha256": "0v4za9lcc7p861vyrnwwza1sizgzj2nv3yz1aixlsbq22d7zf0ac", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4dGVuc2lvbiB0byBNb25pdG9yIEludGVybmV0IFNwZWVkIGFuZCBEYWlseSBEYXRhIFVzYWdlIG1pbmltYWxseS5cblxuTmV3IHVwZGF0ZSBmb3Igc2hlbGwgdmVyc2lvbiAzLjM0KyA6IEFkZGVkIG9wdGlvbiB0byBjaG9vc2Ugd2hhdCB0byBkaXNwbGF5IGluIHNldHRpbmdzIG1lbnUiLAogICJuYW1lIjogIkludGVybmV0IFNwZWVkIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Jpc2h1aW5maW5pdHkvSW50ZXJuZXRTcGVlZE1vbml0b3IiLAogICJ1dWlkIjogIkludGVybmV0U3BlZWRNb25pdG9yQFJpc2h1IiwKICAidmVyc2lvbiI6IDUKfQ=="}, "41": {"version": "5", "sha256": "0v4za9lcc7p861vyrnwwza1sizgzj2nv3yz1aixlsbq22d7zf0ac", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkV4dGVuc2lvbiB0byBNb25pdG9yIEludGVybmV0IFNwZWVkIGFuZCBEYWlseSBEYXRhIFVzYWdlIG1pbmltYWxseS5cblxuTmV3IHVwZGF0ZSBmb3Igc2hlbGwgdmVyc2lvbiAzLjM0KyA6IEFkZGVkIG9wdGlvbiB0byBjaG9vc2Ugd2hhdCB0byBkaXNwbGF5IGluIHNldHRpbmdzIG1lbnUiLAogICJuYW1lIjogIkludGVybmV0IFNwZWVkIE1vbml0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzQiLAogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Jpc2h1aW5maW5pdHkvSW50ZXJuZXRTcGVlZE1vbml0b3IiLAogICJ1dWlkIjogIkludGVybmV0U3BlZWRNb25pdG9yQFJpc2h1IiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
-, {"uuid": "simulate-switching-workspaces-on-active-monitor@micheledaros.com", "name": "Switch workspaces on active monitor", "pname": "switch-workspaces-on-active-monitor", "description": "Simulates switching the workspace on the active monitor only. Ctrl+Alt+q switches to the previous workspace, Ctrl+Alt+a switches to the next", "link": "https://extensions.gnome.org/extension/4586/switch-workspaces-on-active-monitor/", "shell_version_map": {"38": {"version": "7", "sha256": "13wm1xq452ik57mxx3v9h56dlhhjng326kw2cqgj365h7k6bjs99", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXVsYXRlcyBzd2l0Y2hpbmcgdGhlIHdvcmtzcGFjZSBvbiB0aGUgYWN0aXZlIG1vbml0b3Igb25seS4gQ3RybCtBbHQrcSBzd2l0Y2hlcyB0byB0aGUgcHJldmlvdXMgd29ya3NwYWNlLCBDdHJsK0FsdCthIHN3aXRjaGVzIHRvIHRoZSBuZXh0IiwKICAibmFtZSI6ICJTd2l0Y2ggd29ya3NwYWNlcyBvbiBhY3RpdmUgbW9uaXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiZGFyb3NtaWNAZ21haWwuY29tIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNpbXVsYXRlLXN3aXRjaGluZy13b3Jrc3BhY2VzLW9uLWFjdGl2ZS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9taWNoZWxlZGFyb3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNpbXVsYXRlLXN3aXRjaGluZy13b3Jrc3BhY2VzLW9uLWFjdGl2ZS1tb25pdG9yIiwKICAidXVpZCI6ICJzaW11bGF0ZS1zd2l0Y2hpbmctd29ya3NwYWNlcy1vbi1hY3RpdmUtbW9uaXRvckBtaWNoZWxlZGFyb3MuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "40": {"version": "7", "sha256": "13wm1xq452ik57mxx3v9h56dlhhjng326kw2cqgj365h7k6bjs99", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXVsYXRlcyBzd2l0Y2hpbmcgdGhlIHdvcmtzcGFjZSBvbiB0aGUgYWN0aXZlIG1vbml0b3Igb25seS4gQ3RybCtBbHQrcSBzd2l0Y2hlcyB0byB0aGUgcHJldmlvdXMgd29ya3NwYWNlLCBDdHJsK0FsdCthIHN3aXRjaGVzIHRvIHRoZSBuZXh0IiwKICAibmFtZSI6ICJTd2l0Y2ggd29ya3NwYWNlcyBvbiBhY3RpdmUgbW9uaXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiZGFyb3NtaWNAZ21haWwuY29tIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNpbXVsYXRlLXN3aXRjaGluZy13b3Jrc3BhY2VzLW9uLWFjdGl2ZS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9taWNoZWxlZGFyb3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNpbXVsYXRlLXN3aXRjaGluZy13b3Jrc3BhY2VzLW9uLWFjdGl2ZS1tb25pdG9yIiwKICAidXVpZCI6ICJzaW11bGF0ZS1zd2l0Y2hpbmctd29ya3NwYWNlcy1vbi1hY3RpdmUtbW9uaXRvckBtaWNoZWxlZGFyb3MuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}, "41": {"version": "7", "sha256": "13wm1xq452ik57mxx3v9h56dlhhjng326kw2cqgj365h7k6bjs99", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXVsYXRlcyBzd2l0Y2hpbmcgdGhlIHdvcmtzcGFjZSBvbiB0aGUgYWN0aXZlIG1vbml0b3Igb25seS4gQ3RybCtBbHQrcSBzd2l0Y2hlcyB0byB0aGUgcHJldmlvdXMgd29ya3NwYWNlLCBDdHJsK0FsdCthIHN3aXRjaGVzIHRvIHRoZSBuZXh0IiwKICAibmFtZSI6ICJTd2l0Y2ggd29ya3NwYWNlcyBvbiBhY3RpdmUgbW9uaXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiZGFyb3NtaWNAZ21haWwuY29tIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNpbXVsYXRlLXN3aXRjaGluZy13b3Jrc3BhY2VzLW9uLWFjdGl2ZS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9taWNoZWxlZGFyb3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLXNpbXVsYXRlLXN3aXRjaGluZy13b3Jrc3BhY2VzLW9uLWFjdGl2ZS1tb25pdG9yIiwKICAidXVpZCI6ICJzaW11bGF0ZS1zd2l0Y2hpbmctd29ya3NwYWNlcy1vbi1hY3RpdmUtbW9uaXRvckBtaWNoZWxlZGFyb3MuY29tIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
+, {"uuid": "simulate-switching-workspaces-on-active-monitor@micheledaros.com", "name": "Switch workspaces on active monitor", "pname": "switch-workspaces-on-active-monitor", "description": "Simulates switching the workspace on the active monitor only. Ctrl+Alt+q switches to the previous workspace, Ctrl+Alt+a switches to the next", "link": "https://extensions.gnome.org/extension/4586/switch-workspaces-on-active-monitor/", "shell_version_map": {"38": {"version": "8", "sha256": "1yakh03r6qz08994bigzr9m5qqgm9ab2c02s1rab5rwym0a4d0vq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXVsYXRlcyBzd2l0Y2hpbmcgdGhlIHdvcmtzcGFjZSBvbiB0aGUgYWN0aXZlIG1vbml0b3Igb25seS4gQ3RybCtBbHQrcSBzd2l0Y2hlcyB0byB0aGUgcHJldmlvdXMgd29ya3NwYWNlLCBDdHJsK0FsdCthIHN3aXRjaGVzIHRvIHRoZSBuZXh0IiwKICAibmFtZSI6ICJTd2l0Y2ggd29ya3NwYWNlcyBvbiBhY3RpdmUgbW9uaXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiZGFyb3NtaWNAZ21haWwuY29tIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNpbXVsYXRlLXN3aXRjaGluZy13b3Jrc3BhY2VzLW9uLWFjdGl2ZS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWljaGVsZWRhcm9zL2dub21lLXNoZWxsLWV4dGVuc2lvbi1zaW11bGF0ZS1zd2l0Y2hpbmctd29ya3NwYWNlcy1vbi1hY3RpdmUtbW9uaXRvciIsCiAgInV1aWQiOiAic2ltdWxhdGUtc3dpdGNoaW5nLXdvcmtzcGFjZXMtb24tYWN0aXZlLW1vbml0b3JAbWljaGVsZWRhcm9zLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "40": {"version": "8", "sha256": "1yakh03r6qz08994bigzr9m5qqgm9ab2c02s1rab5rwym0a4d0vq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXVsYXRlcyBzd2l0Y2hpbmcgdGhlIHdvcmtzcGFjZSBvbiB0aGUgYWN0aXZlIG1vbml0b3Igb25seS4gQ3RybCtBbHQrcSBzd2l0Y2hlcyB0byB0aGUgcHJldmlvdXMgd29ya3NwYWNlLCBDdHJsK0FsdCthIHN3aXRjaGVzIHRvIHRoZSBuZXh0IiwKICAibmFtZSI6ICJTd2l0Y2ggd29ya3NwYWNlcyBvbiBhY3RpdmUgbW9uaXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiZGFyb3NtaWNAZ21haWwuY29tIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNpbXVsYXRlLXN3aXRjaGluZy13b3Jrc3BhY2VzLW9uLWFjdGl2ZS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWljaGVsZWRhcm9zL2dub21lLXNoZWxsLWV4dGVuc2lvbi1zaW11bGF0ZS1zd2l0Y2hpbmctd29ya3NwYWNlcy1vbi1hY3RpdmUtbW9uaXRvciIsCiAgInV1aWQiOiAic2ltdWxhdGUtc3dpdGNoaW5nLXdvcmtzcGFjZXMtb24tYWN0aXZlLW1vbml0b3JAbWljaGVsZWRhcm9zLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "41": {"version": "8", "sha256": "1yakh03r6qz08994bigzr9m5qqgm9ab2c02s1rab5rwym0a4d0vq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXVsYXRlcyBzd2l0Y2hpbmcgdGhlIHdvcmtzcGFjZSBvbiB0aGUgYWN0aXZlIG1vbml0b3Igb25seS4gQ3RybCtBbHQrcSBzd2l0Y2hlcyB0byB0aGUgcHJldmlvdXMgd29ya3NwYWNlLCBDdHJsK0FsdCthIHN3aXRjaGVzIHRvIHRoZSBuZXh0IiwKICAibmFtZSI6ICJTd2l0Y2ggd29ya3NwYWNlcyBvbiBhY3RpdmUgbW9uaXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiZGFyb3NtaWNAZ21haWwuY29tIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNpbXVsYXRlLXN3aXRjaGluZy13b3Jrc3BhY2VzLW9uLWFjdGl2ZS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWljaGVsZWRhcm9zL2dub21lLXNoZWxsLWV4dGVuc2lvbi1zaW11bGF0ZS1zd2l0Y2hpbmctd29ya3NwYWNlcy1vbi1hY3RpdmUtbW9uaXRvciIsCiAgInV1aWQiOiAic2ltdWxhdGUtc3dpdGNoaW5nLXdvcmtzcGFjZXMtb24tYWN0aXZlLW1vbml0b3JAbWljaGVsZWRhcm9zLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}, "42": {"version": "8", "sha256": "1yakh03r6qz08994bigzr9m5qqgm9ab2c02s1rab5rwym0a4d0vq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXVsYXRlcyBzd2l0Y2hpbmcgdGhlIHdvcmtzcGFjZSBvbiB0aGUgYWN0aXZlIG1vbml0b3Igb25seS4gQ3RybCtBbHQrcSBzd2l0Y2hlcyB0byB0aGUgcHJldmlvdXMgd29ya3NwYWNlLCBDdHJsK0FsdCthIHN3aXRjaGVzIHRvIHRoZSBuZXh0IiwKICAibmFtZSI6ICJTd2l0Y2ggd29ya3NwYWNlcyBvbiBhY3RpdmUgbW9uaXRvciIsCiAgIm9yaWdpbmFsLWF1dGhvcnMiOiAiZGFyb3NtaWNAZ21haWwuY29tIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNpbXVsYXRlLXN3aXRjaGluZy13b3Jrc3BhY2VzLW9uLWFjdGl2ZS1tb25pdG9yIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWljaGVsZWRhcm9zL2dub21lLXNoZWxsLWV4dGVuc2lvbi1zaW11bGF0ZS1zd2l0Y2hpbmctd29ya3NwYWNlcy1vbi1hY3RpdmUtbW9uaXRvciIsCiAgInV1aWQiOiAic2ltdWxhdGUtc3dpdGNoaW5nLXdvcmtzcGFjZXMtb24tYWN0aXZlLW1vbml0b3JAbWljaGVsZWRhcm9zLmNvbSIsCiAgInZlcnNpb24iOiA4Cn0="}}}
 , {"uuid": "newworkspaceshortcut@barnix.io", "name": "New Workspace Shortcut", "pname": "new-workspace-shortcut", "description": "This extension will enable the following:\n\nMove-window-to-new-workspace Shortcut:\nUse a shortcut to move the in-focus window to a new workspace on the right of your current workspace: Super + Alt + Shift + n\nOr to the left / backward: Super + Alt + Shift + b\n\nNew-empty-workspace Shortcut:\nUse a shortcut to create an empty workspace on the right: Super + Alt + n\nOr to the left / backward: Super + Alt + b\n\nReorder-workspace Shortcut:\nUse a shortcut to move an entire workspace left or right of the current workspace: Ctl + Super + Left or Ctl + Super + Right\nBy default, this shorcut with automatically trigger the Overview to provide a limited form of visual feedback. However, this preference can be changed via the extension's Settings panel.\n\nThese shortcuts are created to work logically with the vanilla gnome shortcuts including change-workspace (Super + ALT + Left/Right) and move-window-to-next-workspace (Shift + Super + ALT + Left/Right).", "link": "https://extensions.gnome.org/extension/4597/new-workspace-shortcut/", "shell_version_map": {"41": {"version": "5", "sha256": "0anj72nb9wf80xyhymzr0v97v6hkpi95nmpmpajg5a3w05dz8y7n", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHdpbGwgZW5hYmxlIHRoZSBmb2xsb3dpbmc6XG5cbk1vdmUtd2luZG93LXRvLW5ldy13b3Jrc3BhY2UgU2hvcnRjdXQ6XG5Vc2UgYSBzaG9ydGN1dCB0byBtb3ZlIHRoZSBpbi1mb2N1cyB3aW5kb3cgdG8gYSBuZXcgd29ya3NwYWNlIG9uIHRoZSByaWdodCBvZiB5b3VyIGN1cnJlbnQgd29ya3NwYWNlOiBTdXBlciArIEFsdCArIFNoaWZ0ICsgblxuT3IgdG8gdGhlIGxlZnQgLyBiYWNrd2FyZDogU3VwZXIgKyBBbHQgKyBTaGlmdCArIGJcblxuTmV3LWVtcHR5LXdvcmtzcGFjZSBTaG9ydGN1dDpcblVzZSBhIHNob3J0Y3V0IHRvIGNyZWF0ZSBhbiBlbXB0eSB3b3Jrc3BhY2Ugb24gdGhlIHJpZ2h0OiBTdXBlciArIEFsdCArIG5cbk9yIHRvIHRoZSBsZWZ0IC8gYmFja3dhcmQ6IFN1cGVyICsgQWx0ICsgYlxuXG5SZW9yZGVyLXdvcmtzcGFjZSBTaG9ydGN1dDpcblVzZSBhIHNob3J0Y3V0IHRvIG1vdmUgYW4gZW50aXJlIHdvcmtzcGFjZSBsZWZ0IG9yIHJpZ2h0IG9mIHRoZSBjdXJyZW50IHdvcmtzcGFjZTogQ3RsICsgU3VwZXIgKyBMZWZ0IG9yIEN0bCArIFN1cGVyICsgUmlnaHRcbkJ5IGRlZmF1bHQsIHRoaXMgc2hvcmN1dCB3aXRoIGF1dG9tYXRpY2FsbHkgdHJpZ2dlciB0aGUgT3ZlcnZpZXcgdG8gcHJvdmlkZSBhIGxpbWl0ZWQgZm9ybSBvZiB2aXN1YWwgZmVlZGJhY2suIEhvd2V2ZXIsIHRoaXMgcHJlZmVyZW5jZSBjYW4gYmUgY2hhbmdlZCB2aWEgdGhlIGV4dGVuc2lvbidzIFNldHRpbmdzIHBhbmVsLlxuXG5UaGVzZSBzaG9ydGN1dHMgYXJlIGNyZWF0ZWQgdG8gd29yayBsb2dpY2FsbHkgd2l0aCB0aGUgdmFuaWxsYSBnbm9tZSBzaG9ydGN1dHMgaW5jbHVkaW5nIGNoYW5nZS13b3Jrc3BhY2UgKFN1cGVyICsgQUxUICsgTGVmdC9SaWdodCkgYW5kIG1vdmUtd2luZG93LXRvLW5leHQtd29ya3NwYWNlIChTaGlmdCArIFN1cGVyICsgQUxUICsgTGVmdC9SaWdodCkuIiwKICAibmFtZSI6ICJOZXcgV29ya3NwYWNlIFNob3J0Y3V0IiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLm5ld3dvcmtzcGFjZXNob3J0Y3V0IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Jhcm5zY290dC9uZXd3b3Jrc3BhY2VzaG9ydGN1dC1iYXJuaXguaW8iLAogICJ1dWlkIjogIm5ld3dvcmtzcGFjZXNob3J0Y3V0QGJhcm5peC5pbyIsCiAgInZlcnNpb24iOiA1Cn0="}}}
 , {"uuid": "p.stonham@switcheroo.org", "name": "Switcheroo", "pname": "switcheroo", "description": "Switch to the first window with the title x\n\nA very small extension to allow you to switch windows via gdbus. This is particularly useful if you are using wayland as utilities such as wmctrl won't work.\n\nSince Gnome 41 removed org.gnome.Shell.Eval for security reasons, if you ever used a command such as:\n\ngdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval\"var mw = global.get_window_actors().map(w=&gt;w.meta_window).find(mw=&gt;mw.get_title().includes('Firefox'));mw &amp;&amp; mw.activate(0)\"\n\nthis can now be replaced with:\n\ngdbus call --session --dest org.gnome.Shell --object-path /org/switcheroo/Switcheroo --method org.switcheroo.Switcheroo.Set Firefox\n\nThis can then be assigned to a shortcut key in Gnome settings or called programmatically.", "link": "https://extensions.gnome.org/extension/4600/switcheroo/", "shell_version_map": {"41": {"version": "3", "sha256": "0pfjhx8pm26zpizazd2pbpfqsr8vwc6znrm1cbf4ydcyvfxsnwwh", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCB0byB0aGUgZmlyc3Qgd2luZG93IHdpdGggdGhlIHRpdGxlIHhcblxuQSB2ZXJ5IHNtYWxsIGV4dGVuc2lvbiB0byBhbGxvdyB5b3UgdG8gc3dpdGNoIHdpbmRvd3MgdmlhIGdkYnVzLiBUaGlzIGlzIHBhcnRpY3VsYXJseSB1c2VmdWwgaWYgeW91IGFyZSB1c2luZyB3YXlsYW5kIGFzIHV0aWxpdGllcyBzdWNoIGFzIHdtY3RybCB3b24ndCB3b3JrLlxuXG5TaW5jZSBHbm9tZSA0MSByZW1vdmVkIG9yZy5nbm9tZS5TaGVsbC5FdmFsIGZvciBzZWN1cml0eSByZWFzb25zLCBpZiB5b3UgZXZlciB1c2VkIGEgY29tbWFuZCBzdWNoIGFzOlxuXG5nZGJ1cyBjYWxsIC0tc2Vzc2lvbiAtLWRlc3Qgb3JnLmdub21lLlNoZWxsIC0tb2JqZWN0LXBhdGggL29yZy9nbm9tZS9TaGVsbCAtLW1ldGhvZCBvcmcuZ25vbWUuU2hlbGwuRXZhbFwidmFyIG13ID0gZ2xvYmFsLmdldF93aW5kb3dfYWN0b3JzKCkubWFwKHc9Jmd0O3cubWV0YV93aW5kb3cpLmZpbmQobXc9Jmd0O213LmdldF90aXRsZSgpLmluY2x1ZGVzKCdGaXJlZm94JykpO213ICZhbXA7JmFtcDsgbXcuYWN0aXZhdGUoMClcIlxuXG50aGlzIGNhbiBub3cgYmUgcmVwbGFjZWQgd2l0aDpcblxuZ2RidXMgY2FsbCAtLXNlc3Npb24gLS1kZXN0IG9yZy5nbm9tZS5TaGVsbCAtLW9iamVjdC1wYXRoIC9vcmcvc3dpdGNoZXJvby9Td2l0Y2hlcm9vIC0tbWV0aG9kIG9yZy5zd2l0Y2hlcm9vLlN3aXRjaGVyb28uU2V0IEZpcmVmb3hcblxuVGhpcyBjYW4gdGhlbiBiZSBhc3NpZ25lZCB0byBhIHNob3J0Y3V0IGtleSBpbiBHbm9tZSBzZXR0aW5ncyBvciBjYWxsZWQgcHJvZ3JhbW1hdGljYWxseS4iLAogICJuYW1lIjogIlN3aXRjaGVyb28iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInAuc3RvbmhhbUBzd2l0Y2hlcm9vLm9yZyIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "sane-airplane-mode@kippi", "name": "Sane Airplane Mode", "pname": "sane-airplane-mode", "description": "Make airplane mode sane again! This extension gives you better control over the airplane mode. \nHint: With this extension you can also turn off the annoying \"Bluetooth gets turned on when I disable airplane mode\" behaviour.", "link": "https://extensions.gnome.org/extension/4604/sane-airplane-mode/", "shell_version_map": {"40": {"version": "7", "sha256": "0y79lqhc4ps7nhzpm0jwcpmy8y5pq4fz06jdxsiplfp6x95kkbny", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgYWlycGxhbmUgbW9kZSBzYW5lIGFnYWluISBUaGlzIGV4dGVuc2lvbiBnaXZlcyB5b3UgYmV0dGVyIGNvbnRyb2wgb3ZlciB0aGUgYWlycGxhbmUgbW9kZS4gXG5IaW50OiBXaXRoIHRoaXMgZXh0ZW5zaW9uIHlvdSBjYW4gYWxzbyB0dXJuIG9mZiB0aGUgYW5ub3lpbmcgXCJCbHVldG9vdGggZ2V0cyB0dXJuZWQgb24gd2hlbiBJIGRpc2FibGUgYWlycGxhbmUgbW9kZVwiIGJlaGF2aW91ci4iLAogICJuYW1lIjogIlNhbmUgQWlycGxhbmUgTW9kZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20veEtpcHBpL2dub21lLXNoZWxsLWV4dGVuc2lvbi1zYW5lLWFpcnBsYW5lLW1vZGUiLAogICJ1dWlkIjogInNhbmUtYWlycGxhbmUtbW9kZUBraXBwaSIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "0y79lqhc4ps7nhzpm0jwcpmy8y5pq4fz06jdxsiplfp6x95kkbny", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgYWlycGxhbmUgbW9kZSBzYW5lIGFnYWluISBUaGlzIGV4dGVuc2lvbiBnaXZlcyB5b3UgYmV0dGVyIGNvbnRyb2wgb3ZlciB0aGUgYWlycGxhbmUgbW9kZS4gXG5IaW50OiBXaXRoIHRoaXMgZXh0ZW5zaW9uIHlvdSBjYW4gYWxzbyB0dXJuIG9mZiB0aGUgYW5ub3lpbmcgXCJCbHVldG9vdGggZ2V0cyB0dXJuZWQgb24gd2hlbiBJIGRpc2FibGUgYWlycGxhbmUgbW9kZVwiIGJlaGF2aW91ci4iLAogICJuYW1lIjogIlNhbmUgQWlycGxhbmUgTW9kZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20veEtpcHBpL2dub21lLXNoZWxsLWV4dGVuc2lvbi1zYW5lLWFpcnBsYW5lLW1vZGUiLAogICJ1dWlkIjogInNhbmUtYWlycGxhbmUtbW9kZUBraXBwaSIsCiAgInZlcnNpb24iOiA3Cn0="}}}
@@ -616,7 +616,7 @@
 , {"uuid": "cryptowatch@d0x2f.github.com", "name": "CryptoWatch", "pname": "cryptowatch", "description": "Display live crypto portfolio balances.", "link": "https://extensions.gnome.org/extension/4633/cryptowatch/", "shell_version_map": {"40": {"version": "7", "sha256": "0wrvkj0ls103wzxbx8xsl79srmg5rfy046nr1nkrf83h06dn65pv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgbGl2ZSBjcnlwdG8gcG9ydGZvbGlvIGJhbGFuY2VzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJjcnlwdG93YXRjaCIsCiAgImdldHRleHQtZG9tYWluIjogImNyeXB0b3dhdGNoIiwKICAibmFtZSI6ICJDcnlwdG9XYXRjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jcnlwdG93YXRjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZDB4MmYvQ3J5cHRvV2F0Y2giLAogICJ1dWlkIjogImNyeXB0b3dhdGNoQGQweDJmLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "41": {"version": "7", "sha256": "0wrvkj0ls103wzxbx8xsl79srmg5rfy046nr1nkrf83h06dn65pv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXkgbGl2ZSBjcnlwdG8gcG9ydGZvbGlvIGJhbGFuY2VzLiIsCiAgImV4dGVuc2lvbi1pZCI6ICJjcnlwdG93YXRjaCIsCiAgImdldHRleHQtZG9tYWluIjogImNyeXB0b3dhdGNoIiwKICAibmFtZSI6ICJDcnlwdG9XYXRjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jcnlwdG93YXRjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZDB4MmYvQ3J5cHRvV2F0Y2giLAogICJ1dWlkIjogImNyeXB0b3dhdGNoQGQweDJmLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
 , {"uuid": "mousefollowsfocus@matthes.biz", "name": "Mouse Follows Focus", "pname": "mouse-follows-focus", "description": "Are you a power-user?\nDo you like using Super+1,2,3 to access your favorite apps?\nAre you annoyed that you have to manually move your mouse between screens because it can't keep up with your keyboard shortcuts?\nThen this extension is for you!\n\nThis simple GNOME shell extension does the opposite of the 'focus follows mouse' setting. It makes the mouse follow your keyboard focus. Whenever you focus a window, if the cursor isn't already in it, it will jump to the windows center, making it easy to interact with it.", "link": "https://extensions.gnome.org/extension/4642/mouse-follows-focus/", "shell_version_map": {"41": {"version": "4", "sha256": "1zsy76sab87s74p30sxdp1cki1w956gm0sw27anpx1z6yih50rdv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFyZSB5b3UgYSBwb3dlci11c2VyP1xuRG8geW91IGxpa2UgdXNpbmcgU3VwZXIrMSwyLDMgdG8gYWNjZXNzIHlvdXIgZmF2b3JpdGUgYXBwcz9cbkFyZSB5b3UgYW5ub3llZCB0aGF0IHlvdSBoYXZlIHRvIG1hbnVhbGx5IG1vdmUgeW91ciBtb3VzZSBiZXR3ZWVuIHNjcmVlbnMgYmVjYXVzZSBpdCBjYW4ndCBrZWVwIHVwIHdpdGggeW91ciBrZXlib2FyZCBzaG9ydGN1dHM/XG5UaGVuIHRoaXMgZXh0ZW5zaW9uIGlzIGZvciB5b3UhXG5cblRoaXMgc2ltcGxlIEdOT01FIHNoZWxsIGV4dGVuc2lvbiBkb2VzIHRoZSBvcHBvc2l0ZSBvZiB0aGUgJ2ZvY3VzIGZvbGxvd3MgbW91c2UnIHNldHRpbmcuIEl0IG1ha2VzIHRoZSBtb3VzZSBmb2xsb3cgeW91ciBrZXlib2FyZCBmb2N1cy4gV2hlbmV2ZXIgeW91IGZvY3VzIGEgd2luZG93LCBpZiB0aGUgY3Vyc29yIGlzbid0IGFscmVhZHkgaW4gaXQsIGl0IHdpbGwganVtcCB0byB0aGUgd2luZG93cyBjZW50ZXIsIG1ha2luZyBpdCBlYXN5IHRvIGludGVyYWN0IHdpdGggaXQuIiwKICAibmFtZSI6ICJNb3VzZSBGb2xsb3dzIEZvY3VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0xlb25NYXR0aGVzL21vdXNlZm9sbG93c2ZvY3VzIiwKICAidXVpZCI6ICJtb3VzZWZvbGxvd3Nmb2N1c0BtYXR0aGVzLmJpeiIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "gnome-extension-pass-search-provider.lavrov.github.com", "name": "Pass Search Provider", "pname": "pass-search-provider", "description": "Shows matching pass entries in gnome search", "link": "https://extensions.gnome.org/extension/4645/pass-search-provider/", "shell_version_map": {"40": {"version": "6", "sha256": "06msk4zds1q6jjdw6g7akbsiyfz0avwvydpykcylhhc9ribzsncn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIG1hdGNoaW5nIHBhc3MgZW50cmllcyBpbiBnbm9tZSBzZWFyY2giLAogICJuYW1lIjogIlBhc3MgU2VhcmNoIFByb3ZpZGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2xhdnJvdi9nbm9tZS1leHRlbnNpb24tcGFzcy1zZWFyY2gtcHJvdmlkZXIiLAogICJ1dWlkIjogImdub21lLWV4dGVuc2lvbi1wYXNzLXNlYXJjaC1wcm92aWRlci5sYXZyb3YuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiA2Cn0="}}}
-, {"uuid": "desktop-cube@schneegans.github.com", "name": "Desktop Cube", "pname": "desktop-cube", "description": "Indulge in nostalgia with useless 3D effects.", "link": "https://extensions.gnome.org/extension/4648/desktop-cube/", "shell_version_map": {"40": {"version": "8", "sha256": "1n4kj6a6zfw7i4djslqcnrk3813kfhg7q4l4bnaxqaqjwxap5zby", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NjaG5lZWdhbnMvRGVza3RvcC1DdWJlIiwKICAidXVpZCI6ICJkZXNrdG9wLWN1YmVAc2NobmVlZ2Fucy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "41": {"version": "8", "sha256": "1n4kj6a6zfw7i4djslqcnrk3813kfhg7q4l4bnaxqaqjwxap5zby", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NjaG5lZWdhbnMvRGVza3RvcC1DdWJlIiwKICAidXVpZCI6ICJkZXNrdG9wLWN1YmVAc2NobmVlZ2Fucy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
+, {"uuid": "desktop-cube@schneegans.github.com", "name": "Desktop Cube", "pname": "desktop-cube", "description": "Indulge in nostalgia with useless 3D effects.", "link": "https://extensions.gnome.org/extension/4648/desktop-cube/", "shell_version_map": {"40": {"version": "9", "sha256": "0ijp96f1xyr7md04v5ls9pn7i7i0pibvrn60fsm71jl0f8i9v6i7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NjaG5lZWdhbnMvRGVza3RvcC1DdWJlIiwKICAidXVpZCI6ICJkZXNrdG9wLWN1YmVAc2NobmVlZ2Fucy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "41": {"version": "9", "sha256": "0ijp96f1xyr7md04v5ls9pn7i7i0pibvrn60fsm71jl0f8i9v6i7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NjaG5lZWdhbnMvRGVza3RvcC1DdWJlIiwKICAidXVpZCI6ICJkZXNrdG9wLWN1YmVAc2NobmVlZ2Fucy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "42": {"version": "9", "sha256": "0ijp96f1xyr7md04v5ls9pn7i7i0pibvrn60fsm71jl0f8i9v6i7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZHVsZ2UgaW4gbm9zdGFsZ2lhIHdpdGggdXNlbGVzcyAzRCBlZmZlY3RzLiIsCiAgImdldHRleHQtZG9tYWluIjogImRlc2t0b3AtY3ViZSIsCiAgIm5hbWUiOiAiRGVza3RvcCBDdWJlIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmRlc2t0b3AtY3ViZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NjaG5lZWdhbnMvRGVza3RvcC1DdWJlIiwKICAidXVpZCI6ICJkZXNrdG9wLWN1YmVAc2NobmVlZ2Fucy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
 , {"uuid": "notification-banner-reloaded@marcinjakubowski.github.com", "name": "Notification Banner Reloaded", "pname": "notification-banner-reloaded", "description": "Configure notification banner position and animation to your liking", "link": "https://extensions.gnome.org/extension/4651/notification-banner-reloaded/", "shell_version_map": {"40": {"version": "3", "sha256": "0bpk2s1q6r7bzq8cxyga7dy90liwhmlpga74l9zigr2m9p8kp97p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbmZpZ3VyZSBub3RpZmljYXRpb24gYmFubmVyIHBvc2l0aW9uIGFuZCBhbmltYXRpb24gdG8geW91ciBsaWtpbmciLAogICJuYW1lIjogIk5vdGlmaWNhdGlvbiBCYW5uZXIgUmVsb2FkZWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubm90aWZpY2F0aW9uLWJhbm5lci1yZWxvYWRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWFyY2luamFrdWJvd3NraS9ub3RpZmljYXRpb24tcG9zaXRpb24tcmVsb2FkZWQiLAogICJ1dWlkIjogIm5vdGlmaWNhdGlvbi1iYW5uZXItcmVsb2FkZWRAbWFyY2luamFrdWJvd3NraS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "0bpk2s1q6r7bzq8cxyga7dy90liwhmlpga74l9zigr2m9p8kp97p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbmZpZ3VyZSBub3RpZmljYXRpb24gYmFubmVyIHBvc2l0aW9uIGFuZCBhbmltYXRpb24gdG8geW91ciBsaWtpbmciLAogICJuYW1lIjogIk5vdGlmaWNhdGlvbiBCYW5uZXIgUmVsb2FkZWQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubm90aWZpY2F0aW9uLWJhbm5lci1yZWxvYWRlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWFyY2luamFrdWJvd3NraS9ub3RpZmljYXRpb24tcG9zaXRpb24tcmVsb2FkZWQiLAogICJ1dWlkIjogIm5vdGlmaWNhdGlvbi1iYW5uZXItcmVsb2FkZWRAbWFyY2luamFrdWJvd3NraS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 , {"uuid": "gnome-extension-brightness@bruno.englert.gitlab.com", "name": "Adjust Display Brightness", "pname": "adjust-display-brightness", "description": "Simple GNOME extension to control displays' brightness via DDC. It requires ddcutil to be installed, I2C permissions for non-root users configured.", "link": "https://extensions.gnome.org/extension/4652/adjust-display-brightness/", "shell_version_map": {"40": {"version": "20", "sha256": "0ldlghrlvlifqpnjpysacahfm4v504k7vhzrvay6w36w8v0yadav", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBleHRlbnNpb24gdG8gY29udHJvbCBkaXNwbGF5cycgYnJpZ2h0bmVzcyB2aWEgRERDLiBJdCByZXF1aXJlcyBkZGN1dGlsIHRvIGJlIGluc3RhbGxlZCwgSTJDIHBlcm1pc3Npb25zIGZvciBub24tcm9vdCB1c2VycyBjb25maWd1cmVkLiIsCiAgIm5hbWUiOiAiQWRqdXN0IERpc3BsYXkgQnJpZ2h0bmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYnJ1bm8uZW5nbGVydC9nbm9tZS1leHRlbnNpb24tYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAiZ25vbWUtZXh0ZW5zaW9uLWJyaWdodG5lc3NAYnJ1bm8uZW5nbGVydC5naXRsYWIuY29tIiwKICAidmVyc2lvbiI6IDIwCn0="}, "41": {"version": "20", "sha256": "0ldlghrlvlifqpnjpysacahfm4v504k7vhzrvay6w36w8v0yadav", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBHTk9NRSBleHRlbnNpb24gdG8gY29udHJvbCBkaXNwbGF5cycgYnJpZ2h0bmVzcyB2aWEgRERDLiBJdCByZXF1aXJlcyBkZGN1dGlsIHRvIGJlIGluc3RhbGxlZCwgSTJDIHBlcm1pc3Npb25zIGZvciBub24tcm9vdCB1c2VycyBjb25maWd1cmVkLiIsCiAgIm5hbWUiOiAiQWRqdXN0IERpc3BsYXkgQnJpZ2h0bmVzcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vYnJ1bm8uZW5nbGVydC9nbm9tZS1leHRlbnNpb24tYnJpZ2h0bmVzcyIsCiAgInV1aWQiOiAiZ25vbWUtZXh0ZW5zaW9uLWJyaWdodG5lc3NAYnJ1bm8uZW5nbGVydC5naXRsYWIuY29tIiwKICAidmVyc2lvbiI6IDIwCn0="}}}
 , {"uuid": "date-menu-formatter@marcinjakubowski.github.com", "name": "Date Menu Formatter", "pname": "date-menu-formatter", "description": "Allows customization of the date display in the panel.\n\nMight be especially useful if you're using a horizontal panel which does not at all work well with the default date display.\n\nCHANGELOG\nVersion 5: added support for multiple Dash To Panel panels\nVersion 6: fixed issues on earlier Gnome Shell versions", "link": "https://extensions.gnome.org/extension/4655/date-menu-formatter/", "shell_version_map": {"40": {"version": "6", "sha256": "0w2qy8hr569hq66dnpq5ajii66wrmpdxhr7ws0kj992f0nlrs78i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyBjdXN0b21pemF0aW9uIG9mIHRoZSBkYXRlIGRpc3BsYXkgaW4gdGhlIHBhbmVsLlxuXG5NaWdodCBiZSBlc3BlY2lhbGx5IHVzZWZ1bCBpZiB5b3UncmUgdXNpbmcgYSBob3Jpem9udGFsIHBhbmVsIHdoaWNoIGRvZXMgbm90IGF0IGFsbCB3b3JrIHdlbGwgd2l0aCB0aGUgZGVmYXVsdCBkYXRlIGRpc3BsYXkuXG5cbkNIQU5HRUxPR1xuVmVyc2lvbiA1OiBhZGRlZCBzdXBwb3J0IGZvciBtdWx0aXBsZSBEYXNoIFRvIFBhbmVsIHBhbmVsc1xuVmVyc2lvbiA2OiBmaXhlZCBpc3N1ZXMgb24gZWFybGllciBHbm9tZSBTaGVsbCB2ZXJzaW9ucyIsCiAgIm5hbWUiOiAiRGF0ZSBNZW51IEZvcm1hdHRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXRlLW1lbnUtZm9ybWF0dGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZGF0ZS1tZW51LWZvcm1hdHRlckBtYXJjaW5qYWt1Ym93c2tpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}, "41": {"version": "6", "sha256": "0w2qy8hr569hq66dnpq5ajii66wrmpdxhr7ws0kj992f0nlrs78i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsbG93cyBjdXN0b21pemF0aW9uIG9mIHRoZSBkYXRlIGRpc3BsYXkgaW4gdGhlIHBhbmVsLlxuXG5NaWdodCBiZSBlc3BlY2lhbGx5IHVzZWZ1bCBpZiB5b3UncmUgdXNpbmcgYSBob3Jpem9udGFsIHBhbmVsIHdoaWNoIGRvZXMgbm90IGF0IGFsbCB3b3JrIHdlbGwgd2l0aCB0aGUgZGVmYXVsdCBkYXRlIGRpc3BsYXkuXG5cbkNIQU5HRUxPR1xuVmVyc2lvbiA1OiBhZGRlZCBzdXBwb3J0IGZvciBtdWx0aXBsZSBEYXNoIFRvIFBhbmVsIHBhbmVsc1xuVmVyc2lvbiA2OiBmaXhlZCBpc3N1ZXMgb24gZWFybGllciBHbm9tZSBTaGVsbCB2ZXJzaW9ucyIsCiAgIm5hbWUiOiAiRGF0ZSBNZW51IEZvcm1hdHRlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5kYXRlLW1lbnUtZm9ybWF0dGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZGF0ZS1tZW51LWZvcm1hdHRlckBtYXJjaW5qYWt1Ym93c2tpLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogNgp9"}}}
@@ -627,8 +627,8 @@
 , {"uuid": "cloudflare-warp-gnome@harshan01", "name": "Cloudflare 1.1.1.1 WARP Switcher", "pname": "cloudflare-1111-warp-switcher", "description": "Unofficial Cloudflare 1.1.1.1 WARP Switcher extension for GNOME shell", "link": "https://extensions.gnome.org/extension/4670/cloudflare-1111-warp-switcher/", "shell_version_map": {"38": {"version": "2", "sha256": "0r4m8ga3l31gbi3pxvpnc4w98ik4ixn609hj1nqj3c95f3ld97z3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVub2ZmaWNpYWwgQ2xvdWRmbGFyZSAxLjEuMS4xIFdBUlAgU3dpdGNoZXIgZXh0ZW5zaW9uIGZvciBHTk9NRSBzaGVsbCIsCiAgIm5hbWUiOiAiQ2xvdWRmbGFyZSAxLjEuMS4xIFdBUlAgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSGFyc2hhbjAxL0Nsb3VkZmxhcmUtV0FSUC1HTk9NRS1Td2l0Y2hlciIsCiAgInV1aWQiOiAiY2xvdWRmbGFyZS13YXJwLWdub21lQGhhcnNoYW4wMSIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "0r4m8ga3l31gbi3pxvpnc4w98ik4ixn609hj1nqj3c95f3ld97z3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlVub2ZmaWNpYWwgQ2xvdWRmbGFyZSAxLjEuMS4xIFdBUlAgU3dpdGNoZXIgZXh0ZW5zaW9uIGZvciBHTk9NRSBzaGVsbCIsCiAgIm5hbWUiOiAiQ2xvdWRmbGFyZSAxLjEuMS4xIFdBUlAgU3dpdGNoZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vSGFyc2hhbjAxL0Nsb3VkZmxhcmUtV0FSUC1HTk9NRS1Td2l0Y2hlciIsCiAgInV1aWQiOiAiY2xvdWRmbGFyZS13YXJwLWdub21lQGhhcnNoYW4wMSIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "alt-tab-move-mouse@buzztaiki.github.com", "name": "Alt-Tab Move Mouse", "pname": "alt-tab-move-mouse", "description": "Move mouse pointer onto active window after Alt-Tab. This extension is workaround of some sloppy focus problems", "link": "https://extensions.gnome.org/extension/4673/alt-tab-move-mouse/", "shell_version_map": {"40": {"version": "1", "sha256": "0dl2v61v2iqnf1qk7dsi60bm68kk4kc16jbrk9knw4ys8n35bxy3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgbW91c2UgcG9pbnRlciBvbnRvIGFjdGl2ZSB3aW5kb3cgYWZ0ZXIgQWx0LVRhYi4gVGhpcyBleHRlbnNpb24gaXMgd29ya2Fyb3VuZCBvZiBzb21lIHNsb3BweSBmb2N1cyBwcm9ibGVtcyIsCiAgIm5hbWUiOiAiQWx0LVRhYiBNb3ZlIE1vdXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9idXp6dGFpa2kvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWFsdC10YWItbW92ZS1tb3VzZSIsCiAgInV1aWQiOiAiYWx0LXRhYi1tb3ZlLW1vdXNlQGJ1enp0YWlraS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}, "41": {"version": "1", "sha256": "0dl2v61v2iqnf1qk7dsi60bm68kk4kc16jbrk9knw4ys8n35bxy3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmUgbW91c2UgcG9pbnRlciBvbnRvIGFjdGl2ZSB3aW5kb3cgYWZ0ZXIgQWx0LVRhYi4gVGhpcyBleHRlbnNpb24gaXMgd29ya2Fyb3VuZCBvZiBzb21lIHNsb3BweSBmb2N1cyBwcm9ibGVtcyIsCiAgIm5hbWUiOiAiQWx0LVRhYiBNb3ZlIE1vdXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9idXp6dGFpa2kvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWFsdC10YWItbW92ZS1tb3VzZSIsCiAgInV1aWQiOiAiYWx0LXRhYi1tb3ZlLW1vdXNlQGJ1enp0YWlraS5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"uuid": "Server@sven.kramer", "name": "Server", "pname": "server", "description": "A simple Indicator that shows my home-server status (online / offline) on the main panel. Furthermore a wake on lan can be triggered. For WOL functionality, its necessary that you have 'wakeonlan' installed. This extension is only tested with Gnome 40+. Didnt test it yet with older versions.", "link": "https://extensions.gnome.org/extension/4676/server/", "shell_version_map": {"38": {"version": "3", "sha256": "1dcy5kw5797wjjdg85hc16vh82c3xjs2xdn3m573rqs3fjayy507", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIEluZGljYXRvciB0aGF0IHNob3dzIG15IGhvbWUtc2VydmVyIHN0YXR1cyAob25saW5lIC8gb2ZmbGluZSkgb24gdGhlIG1haW4gcGFuZWwuIEZ1cnRoZXJtb3JlIGEgd2FrZSBvbiBsYW4gY2FuIGJlIHRyaWdnZXJlZC4gRm9yIFdPTCBmdW5jdGlvbmFsaXR5LCBpdHMgbmVjZXNzYXJ5IHRoYXQgeW91IGhhdmUgJ3dha2VvbmxhbicgaW5zdGFsbGVkLiBUaGlzIGV4dGVuc2lvbiBpcyBvbmx5IHRlc3RlZCB3aXRoIEdub21lIDQwKy4gRGlkbnQgdGVzdCBpdCB5ZXQgd2l0aCBvbGRlciB2ZXJzaW9ucy4iLAogICJuYW1lIjogIlNlcnZlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5TZXJ2ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJTZXJ2ZXJAc3Zlbi5rcmFtZXIiLAogICJ2ZXJzaW9uIjogMwp9"}, "40": {"version": "3", "sha256": "1dcy5kw5797wjjdg85hc16vh82c3xjs2xdn3m573rqs3fjayy507", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIEluZGljYXRvciB0aGF0IHNob3dzIG15IGhvbWUtc2VydmVyIHN0YXR1cyAob25saW5lIC8gb2ZmbGluZSkgb24gdGhlIG1haW4gcGFuZWwuIEZ1cnRoZXJtb3JlIGEgd2FrZSBvbiBsYW4gY2FuIGJlIHRyaWdnZXJlZC4gRm9yIFdPTCBmdW5jdGlvbmFsaXR5LCBpdHMgbmVjZXNzYXJ5IHRoYXQgeW91IGhhdmUgJ3dha2VvbmxhbicgaW5zdGFsbGVkLiBUaGlzIGV4dGVuc2lvbiBpcyBvbmx5IHRlc3RlZCB3aXRoIEdub21lIDQwKy4gRGlkbnQgdGVzdCBpdCB5ZXQgd2l0aCBvbGRlciB2ZXJzaW9ucy4iLAogICJuYW1lIjogIlNlcnZlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5TZXJ2ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJTZXJ2ZXJAc3Zlbi5rcmFtZXIiLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "1dcy5kw5797wjjdg85hc16vh82c3xjs2xdn3m573rqs3fjayy507", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc2ltcGxlIEluZGljYXRvciB0aGF0IHNob3dzIG15IGhvbWUtc2VydmVyIHN0YXR1cyAob25saW5lIC8gb2ZmbGluZSkgb24gdGhlIG1haW4gcGFuZWwuIEZ1cnRoZXJtb3JlIGEgd2FrZSBvbiBsYW4gY2FuIGJlIHRyaWdnZXJlZC4gRm9yIFdPTCBmdW5jdGlvbmFsaXR5LCBpdHMgbmVjZXNzYXJ5IHRoYXQgeW91IGhhdmUgJ3dha2VvbmxhbicgaW5zdGFsbGVkLiBUaGlzIGV4dGVuc2lvbiBpcyBvbmx5IHRlc3RlZCB3aXRoIEdub21lIDQwKy4gRGlkbnQgdGVzdCBpdCB5ZXQgd2l0aCBvbGRlciB2ZXJzaW9ucy4iLAogICJuYW1lIjogIlNlcnZlciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5TZXJ2ZXIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJTZXJ2ZXJAc3Zlbi5rcmFtZXIiLAogICJ2ZXJzaW9uIjogMwp9"}}}
-, {"uuid": "burn-my-windows@schneegans.github.com", "name": "Burn My Windows", "pname": "burn-my-windows", "description": "Disintegrate your windows with style.", "link": "https://extensions.gnome.org/extension/4679/burn-my-windows/", "shell_version_map": {"38": {"version": "12", "sha256": "0h40gzbm1kf3mm6xsdibjkbwhgy7vjqyp3nnjs97apfz99pm5a60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2ludGVncmF0ZSB5b3VyIHdpbmRvd3Mgd2l0aCBzdHlsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJidXJuLW15LXdpbmRvd3MiLAogICJuYW1lIjogIkJ1cm4gTXkgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idXJuLW15LXdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0J1cm4tTXktV2luZG93cyIsCiAgInV1aWQiOiAiYnVybi1teS13aW5kb3dzQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "0h40gzbm1kf3mm6xsdibjkbwhgy7vjqyp3nnjs97apfz99pm5a60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2ludGVncmF0ZSB5b3VyIHdpbmRvd3Mgd2l0aCBzdHlsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJidXJuLW15LXdpbmRvd3MiLAogICJuYW1lIjogIkJ1cm4gTXkgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idXJuLW15LXdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0J1cm4tTXktV2luZG93cyIsCiAgInV1aWQiOiAiYnVybi1teS13aW5kb3dzQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "0h40gzbm1kf3mm6xsdibjkbwhgy7vjqyp3nnjs97apfz99pm5a60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2ludGVncmF0ZSB5b3VyIHdpbmRvd3Mgd2l0aCBzdHlsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJidXJuLW15LXdpbmRvd3MiLAogICJuYW1lIjogIkJ1cm4gTXkgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idXJuLW15LXdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0J1cm4tTXktV2luZG93cyIsCiAgInV1aWQiOiAiYnVybi1teS13aW5kb3dzQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
-, {"uuid": "babar-lite@fthx", "name": "BaBar Lite", "pname": "babar-task-bar-lite-for-gnome-40", "description": "Task bar. App grid, favorites, workspaces and tasks in panel. Light extension.\n\n Replace 'Activities' button by all current workspaces and apps buttons. Switch workspace/app or toggle overview by clicking on these buttons. Drag and drop favorite, task, dash item or app grid item to any workspace (you cannot reorder tasks inside a workspace). Change 'Places' label to an icon. No settings, use BaBar classic for that.\n\n You can use names for workspaces: there are two ways for that. 1) Edit the string array 'org.gnome.desktop.wm.preferences.workspace-names' gsettings key (through dconf editor, e.g.). 2) Use official GNOME extension Workspaces Indicator's settings. You don't have to write a long enough list: numbers are displayed if no workspace name is defined.", "link": "https://extensions.gnome.org/extension/4681/babar-task-bar-lite-for-gnome-40/", "shell_version_map": {"40": {"version": "2", "sha256": "01m48bwpn1as90ahpnl9ari3s2bj8423032nw12ac45wwcnb9yvj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gTm8gc2V0dGluZ3MsIHVzZSBCYUJhciBjbGFzc2ljIGZvciB0aGF0LlxuXG4gWW91IGNhbiB1c2UgbmFtZXMgZm9yIHdvcmtzcGFjZXM6IHRoZXJlIGFyZSB0d28gd2F5cyBmb3IgdGhhdC4gMSkgRWRpdCB0aGUgc3RyaW5nIGFycmF5ICdvcmcuZ25vbWUuZGVza3RvcC53bS5wcmVmZXJlbmNlcy53b3Jrc3BhY2UtbmFtZXMnIGdzZXR0aW5ncyBrZXkgKHRocm91Z2ggZGNvbmYgZWRpdG9yLCBlLmcuKS4gMikgVXNlIG9mZmljaWFsIEdOT01FIGV4dGVuc2lvbiBXb3Jrc3BhY2VzIEluZGljYXRvcidzIHNldHRpbmdzLiBZb3UgZG9uJ3QgaGF2ZSB0byB3cml0ZSBhIGxvbmcgZW5vdWdoIGxpc3Q6IG51bWJlcnMgYXJlIGRpc3BsYXllZCBpZiBubyB3b3Jrc3BhY2UgbmFtZSBpcyBkZWZpbmVkLiIsCiAgIm5hbWUiOiAiQmFCYXIgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXItbGl0ZSIsCiAgInV1aWQiOiAiYmFiYXItbGl0ZUBmdGh4IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "01m48bwpn1as90ahpnl9ari3s2bj8423032nw12ac45wwcnb9yvj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gTm8gc2V0dGluZ3MsIHVzZSBCYUJhciBjbGFzc2ljIGZvciB0aGF0LlxuXG4gWW91IGNhbiB1c2UgbmFtZXMgZm9yIHdvcmtzcGFjZXM6IHRoZXJlIGFyZSB0d28gd2F5cyBmb3IgdGhhdC4gMSkgRWRpdCB0aGUgc3RyaW5nIGFycmF5ICdvcmcuZ25vbWUuZGVza3RvcC53bS5wcmVmZXJlbmNlcy53b3Jrc3BhY2UtbmFtZXMnIGdzZXR0aW5ncyBrZXkgKHRocm91Z2ggZGNvbmYgZWRpdG9yLCBlLmcuKS4gMikgVXNlIG9mZmljaWFsIEdOT01FIGV4dGVuc2lvbiBXb3Jrc3BhY2VzIEluZGljYXRvcidzIHNldHRpbmdzLiBZb3UgZG9uJ3QgaGF2ZSB0byB3cml0ZSBhIGxvbmcgZW5vdWdoIGxpc3Q6IG51bWJlcnMgYXJlIGRpc3BsYXllZCBpZiBubyB3b3Jrc3BhY2UgbmFtZSBpcyBkZWZpbmVkLiIsCiAgIm5hbWUiOiAiQmFCYXIgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXItbGl0ZSIsCiAgInV1aWQiOiAiYmFiYXItbGl0ZUBmdGh4IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
+, {"uuid": "burn-my-windows@schneegans.github.com", "name": "Burn My Windows", "pname": "burn-my-windows", "description": "Disintegrate your windows with style.", "link": "https://extensions.gnome.org/extension/4679/burn-my-windows/", "shell_version_map": {"38": {"version": "12", "sha256": "0h40gzbm1kf3mm6xsdibjkbwhgy7vjqyp3nnjs97apfz99pm5a60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2ludGVncmF0ZSB5b3VyIHdpbmRvd3Mgd2l0aCBzdHlsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJidXJuLW15LXdpbmRvd3MiLAogICJuYW1lIjogIkJ1cm4gTXkgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idXJuLW15LXdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0J1cm4tTXktV2luZG93cyIsCiAgInV1aWQiOiAiYnVybi1teS13aW5kb3dzQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "40": {"version": "12", "sha256": "0h40gzbm1kf3mm6xsdibjkbwhgy7vjqyp3nnjs97apfz99pm5a60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2ludGVncmF0ZSB5b3VyIHdpbmRvd3Mgd2l0aCBzdHlsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJidXJuLW15LXdpbmRvd3MiLAogICJuYW1lIjogIkJ1cm4gTXkgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idXJuLW15LXdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0J1cm4tTXktV2luZG93cyIsCiAgInV1aWQiOiAiYnVybi1teS13aW5kb3dzQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "41": {"version": "12", "sha256": "0h40gzbm1kf3mm6xsdibjkbwhgy7vjqyp3nnjs97apfz99pm5a60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2ludGVncmF0ZSB5b3VyIHdpbmRvd3Mgd2l0aCBzdHlsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJidXJuLW15LXdpbmRvd3MiLAogICJuYW1lIjogIkJ1cm4gTXkgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idXJuLW15LXdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0J1cm4tTXktV2luZG93cyIsCiAgInV1aWQiOiAiYnVybi1teS13aW5kb3dzQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}, "42": {"version": "12", "sha256": "0h40gzbm1kf3mm6xsdibjkbwhgy7vjqyp3nnjs97apfz99pm5a60", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc2ludGVncmF0ZSB5b3VyIHdpbmRvd3Mgd2l0aCBzdHlsZS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJidXJuLW15LXdpbmRvd3MiLAogICJuYW1lIjogIkJ1cm4gTXkgV2luZG93cyIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5idXJuLW15LXdpbmRvd3MiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TY2huZWVnYW5zL0J1cm4tTXktV2luZG93cyIsCiAgInV1aWQiOiAiYnVybi1teS13aW5kb3dzQHNjaG5lZWdhbnMuZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxMgp9"}}}
+, {"uuid": "babar-lite@fthx", "name": "BaBar Lite", "pname": "babar-task-bar-lite-for-gnome-40", "description": "Task bar. App grid, favorites, workspaces and tasks in panel. Light extension.\n\n Replace 'Activities' button by all current workspaces and apps buttons. Switch workspace/app or toggle overview by clicking on these buttons. Drag and drop favorite, task, dash item or app grid item to any workspace (you cannot reorder tasks inside a workspace). Change 'Places' label to an icon. No settings, use BaBar classic for that.\n\n You can use names for workspaces: there are two ways for that. 1) Edit the string array 'org.gnome.desktop.wm.preferences.workspace-names' gsettings key (through dconf editor, e.g.). 2) Use official GNOME extension Workspaces Indicator's settings. You don't have to write a long enough list: numbers are displayed if no workspace name is defined.", "link": "https://extensions.gnome.org/extension/4681/babar-task-bar-lite-for-gnome-40/", "shell_version_map": {"40": {"version": "2", "sha256": "01m48bwpn1as90ahpnl9ari3s2bj8423032nw12ac45wwcnb9yvj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gTm8gc2V0dGluZ3MsIHVzZSBCYUJhciBjbGFzc2ljIGZvciB0aGF0LlxuXG4gWW91IGNhbiB1c2UgbmFtZXMgZm9yIHdvcmtzcGFjZXM6IHRoZXJlIGFyZSB0d28gd2F5cyBmb3IgdGhhdC4gMSkgRWRpdCB0aGUgc3RyaW5nIGFycmF5ICdvcmcuZ25vbWUuZGVza3RvcC53bS5wcmVmZXJlbmNlcy53b3Jrc3BhY2UtbmFtZXMnIGdzZXR0aW5ncyBrZXkgKHRocm91Z2ggZGNvbmYgZWRpdG9yLCBlLmcuKS4gMikgVXNlIG9mZmljaWFsIEdOT01FIGV4dGVuc2lvbiBXb3Jrc3BhY2VzIEluZGljYXRvcidzIHNldHRpbmdzLiBZb3UgZG9uJ3QgaGF2ZSB0byB3cml0ZSBhIGxvbmcgZW5vdWdoIGxpc3Q6IG51bWJlcnMgYXJlIGRpc3BsYXllZCBpZiBubyB3b3Jrc3BhY2UgbmFtZSBpcyBkZWZpbmVkLiIsCiAgIm5hbWUiOiAiQmFCYXIgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXItbGl0ZSIsCiAgInV1aWQiOiAiYmFiYXItbGl0ZUBmdGh4IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "01m48bwpn1as90ahpnl9ari3s2bj8423032nw12ac45wwcnb9yvj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gTm8gc2V0dGluZ3MsIHVzZSBCYUJhciBjbGFzc2ljIGZvciB0aGF0LlxuXG4gWW91IGNhbiB1c2UgbmFtZXMgZm9yIHdvcmtzcGFjZXM6IHRoZXJlIGFyZSB0d28gd2F5cyBmb3IgdGhhdC4gMSkgRWRpdCB0aGUgc3RyaW5nIGFycmF5ICdvcmcuZ25vbWUuZGVza3RvcC53bS5wcmVmZXJlbmNlcy53b3Jrc3BhY2UtbmFtZXMnIGdzZXR0aW5ncyBrZXkgKHRocm91Z2ggZGNvbmYgZWRpdG9yLCBlLmcuKS4gMikgVXNlIG9mZmljaWFsIEdOT01FIGV4dGVuc2lvbiBXb3Jrc3BhY2VzIEluZGljYXRvcidzIHNldHRpbmdzLiBZb3UgZG9uJ3QgaGF2ZSB0byB3cml0ZSBhIGxvbmcgZW5vdWdoIGxpc3Q6IG51bWJlcnMgYXJlIGRpc3BsYXllZCBpZiBubyB3b3Jrc3BhY2UgbmFtZSBpcyBkZWZpbmVkLiIsCiAgIm5hbWUiOiAiQmFCYXIgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXItbGl0ZSIsCiAgInV1aWQiOiAiYmFiYXItbGl0ZUBmdGh4IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "42": {"version": "2", "sha256": "01m48bwpn1as90ahpnl9ari3s2bj8423032nw12ac45wwcnb9yvj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRhc2sgYmFyLiBBcHAgZ3JpZCwgZmF2b3JpdGVzLCB3b3Jrc3BhY2VzIGFuZCB0YXNrcyBpbiBwYW5lbC4gTGlnaHQgZXh0ZW5zaW9uLlxuXG4gUmVwbGFjZSAnQWN0aXZpdGllcycgYnV0dG9uIGJ5IGFsbCBjdXJyZW50IHdvcmtzcGFjZXMgYW5kIGFwcHMgYnV0dG9ucy4gU3dpdGNoIHdvcmtzcGFjZS9hcHAgb3IgdG9nZ2xlIG92ZXJ2aWV3IGJ5IGNsaWNraW5nIG9uIHRoZXNlIGJ1dHRvbnMuIERyYWcgYW5kIGRyb3AgZmF2b3JpdGUsIHRhc2ssIGRhc2ggaXRlbSBvciBhcHAgZ3JpZCBpdGVtIHRvIGFueSB3b3Jrc3BhY2UgKHlvdSBjYW5ub3QgcmVvcmRlciB0YXNrcyBpbnNpZGUgYSB3b3Jrc3BhY2UpLiBDaGFuZ2UgJ1BsYWNlcycgbGFiZWwgdG8gYW4gaWNvbi4gTm8gc2V0dGluZ3MsIHVzZSBCYUJhciBjbGFzc2ljIGZvciB0aGF0LlxuXG4gWW91IGNhbiB1c2UgbmFtZXMgZm9yIHdvcmtzcGFjZXM6IHRoZXJlIGFyZSB0d28gd2F5cyBmb3IgdGhhdC4gMSkgRWRpdCB0aGUgc3RyaW5nIGFycmF5ICdvcmcuZ25vbWUuZGVza3RvcC53bS5wcmVmZXJlbmNlcy53b3Jrc3BhY2UtbmFtZXMnIGdzZXR0aW5ncyBrZXkgKHRocm91Z2ggZGNvbmYgZWRpdG9yLCBlLmcuKS4gMikgVXNlIG9mZmljaWFsIEdOT01FIGV4dGVuc2lvbiBXb3Jrc3BhY2VzIEluZGljYXRvcidzIHNldHRpbmdzLiBZb3UgZG9uJ3QgaGF2ZSB0byB3cml0ZSBhIGxvbmcgZW5vdWdoIGxpc3Q6IG51bWJlcnMgYXJlIGRpc3BsYXllZCBpZiBubyB3b3Jrc3BhY2UgbmFtZSBpcyBkZWZpbmVkLiIsCiAgIm5hbWUiOiAiQmFCYXIgTGl0ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvYmFiYXItbGl0ZSIsCiAgInV1aWQiOiAiYmFiYXItbGl0ZUBmdGh4IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "useless-gaps@pimsnel.com", "name": "Useless Gaps", "pname": "useless-gaps", "description": "For aesthetic purposes adds useless gaps around tiled and maximized windows", "link": "https://extensions.gnome.org/extension/4684/useless-gaps/", "shell_version_map": {"38": {"version": "5", "sha256": "1nd5xxwvf2wxm863029xwij99v6zdpbw86465i5kdrxrgwsgcn9q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvciBhZXN0aGV0aWMgcHVycG9zZXMgYWRkcyB1c2VsZXNzIGdhcHMgYXJvdW5kIHRpbGVkIGFuZCBtYXhpbWl6ZWQgd2luZG93cyIsCiAgImdldHRleHQtZG9tYWluIjogInVzZWxlc3MtZ2FwcyIsCiAgIm5hbWUiOiAiVXNlbGVzcyBHYXBzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZWxlc3MtZ2FwcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWlwbWlwL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtdXNlbGVzcy1nYXBzIiwKICAidXVpZCI6ICJ1c2VsZXNzLWdhcHNAcGltc25lbC5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "40": {"version": "5", "sha256": "1nd5xxwvf2wxm863029xwij99v6zdpbw86465i5kdrxrgwsgcn9q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvciBhZXN0aGV0aWMgcHVycG9zZXMgYWRkcyB1c2VsZXNzIGdhcHMgYXJvdW5kIHRpbGVkIGFuZCBtYXhpbWl6ZWQgd2luZG93cyIsCiAgImdldHRleHQtZG9tYWluIjogInVzZWxlc3MtZ2FwcyIsCiAgIm5hbWUiOiAiVXNlbGVzcyBHYXBzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZWxlc3MtZ2FwcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWlwbWlwL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtdXNlbGVzcy1nYXBzIiwKICAidXVpZCI6ICJ1c2VsZXNzLWdhcHNAcGltc25lbC5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}, "41": {"version": "5", "sha256": "1nd5xxwvf2wxm863029xwij99v6zdpbw86465i5kdrxrgwsgcn9q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvciBhZXN0aGV0aWMgcHVycG9zZXMgYWRkcyB1c2VsZXNzIGdhcHMgYXJvdW5kIHRpbGVkIGFuZCBtYXhpbWl6ZWQgd2luZG93cyIsCiAgImdldHRleHQtZG9tYWluIjogInVzZWxlc3MtZ2FwcyIsCiAgIm5hbWUiOiAiVXNlbGVzcyBHYXBzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnVzZWxlc3MtZ2FwcyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWlwbWlwL2dub21lLXNoZWxsLWV4dGVuc2lvbnMtdXNlbGVzcy1nYXBzIiwKICAidXVpZCI6ICJ1c2VsZXNzLWdhcHNAcGltc25lbC5jb20iLAogICJ2ZXJzaW9uIjogNQp9"}}}
 , {"uuid": "serverstatus@footeware.ca", "name": "Server Status Indicator", "pname": "server-status-indicator", "description": "Indicator displaying status of entered web server urls, green for up, red for down.", "link": "https://extensions.gnome.org/extension/4687/server-status-indicator/", "shell_version_map": {"40": {"version": "7", "sha256": "16csdmbvjcahvkihq3gw4rympyc80jjchf68p1hwvcx338pdx8ga", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluZGljYXRvciBkaXNwbGF5aW5nIHN0YXR1cyBvZiBlbnRlcmVkIHdlYiBzZXJ2ZXIgdXJscywgZ3JlZW4gZm9yIHVwLCByZWQgZm9yIGRvd24uIiwKICAibmFtZSI6ICJTZXJ2ZXIgU3RhdHVzIEluZGljYXRvciIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5zZXJ2ZXJzdGF0dXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vQ3JhaWdGb290ZS9jYS5mb290ZXdhcmUuZ25vbWVzaGVsbC5zZXJ2ZXJzdGF0dXMuZ2l0IiwKICAidXVpZCI6ICJzZXJ2ZXJzdGF0dXNAZm9vdGV3YXJlLmNhIiwKICAidmVyc2lvbiI6IDcKfQ=="}}}
 , {"uuid": "focus-follows-workspace@christopher.luebbemeier.gmail.com", "name": "Focus Follows Workspace", "pname": "focus-follows-workspace", "description": "Focus the primary monitor after switching workspaces via keyboard.\n\nThis extension is meant to be used with a multi-monitor setup with the setting \"Workspaces on primary display only\". It enables quick switching to an application on a given workspace via keyboard by preventing the focus from being restored to a window on a secondary monitor.", "link": "https://extensions.gnome.org/extension/4688/focus-follows-workspace/", "shell_version_map": {"41": {"version": "1", "sha256": "1xllg9wp7phrqa9897m9al740k60v01zird49vwwm24wzpmyby9k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvY3VzIHRoZSBwcmltYXJ5IG1vbml0b3IgYWZ0ZXIgc3dpdGNoaW5nIHdvcmtzcGFjZXMgdmlhIGtleWJvYXJkLlxuXG5UaGlzIGV4dGVuc2lvbiBpcyBtZWFudCB0byBiZSB1c2VkIHdpdGggYSBtdWx0aS1tb25pdG9yIHNldHVwIHdpdGggdGhlIHNldHRpbmcgXCJXb3Jrc3BhY2VzIG9uIHByaW1hcnkgZGlzcGxheSBvbmx5XCIuIEl0IGVuYWJsZXMgcXVpY2sgc3dpdGNoaW5nIHRvIGFuIGFwcGxpY2F0aW9uIG9uIGEgZ2l2ZW4gd29ya3NwYWNlIHZpYSBrZXlib2FyZCBieSBwcmV2ZW50aW5nIHRoZSBmb2N1cyBmcm9tIGJlaW5nIHJlc3RvcmVkIHRvIGEgd2luZG93IG9uIGEgc2Vjb25kYXJ5IG1vbml0b3IuIiwKICAibmFtZSI6ICJGb2N1cyBGb2xsb3dzIFdvcmtzcGFjZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jaHJpc3RvcGhlci1sL2ZvY3VzLWZvbGxvd3Mtd29ya3NwYWNlIiwKICAidXVpZCI6ICJmb2N1cy1mb2xsb3dzLXdvcmtzcGFjZUBjaHJpc3RvcGhlci5sdWViYmVtZWllci5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMQp9"}}}
@@ -636,63 +636,73 @@
 , {"uuid": "roundedSystemMenuButtons@pratap.fastmail.fm", "name": "Rounded System Menu Buttons", "pname": "rounded-system-menu-buttons", "description": "Rounded System Menu Buttons", "link": "https://extensions.gnome.org/extension/4693/rounded-system-menu-buttons/", "shell_version_map": {"38": {"version": "17", "sha256": "1cwjyw4sc4i4vdm458qdnjzvmiqyz9vscicwarsd9cvik57p44f5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJvdW5kZWQgU3lzdGVtIE1lbnUgQnV0dG9ucyIsCiAgIm5hbWUiOiAiUm91bmRlZCBTeXN0ZW0gTWVudSBCdXR0b25zIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnJvdW5kLXN5c3RlbS1tZW51LWJ1dHRvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BSQVRBUC1LVU1BUi9yb3VuZGVkLXN5c3RlbS1tZW51LWJ1dHRvbnMiLAogICJ1dWlkIjogInJvdW5kZWRTeXN0ZW1NZW51QnV0dG9uc0BwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "40": {"version": "17", "sha256": "1cwjyw4sc4i4vdm458qdnjzvmiqyz9vscicwarsd9cvik57p44f5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJvdW5kZWQgU3lzdGVtIE1lbnUgQnV0dG9ucyIsCiAgIm5hbWUiOiAiUm91bmRlZCBTeXN0ZW0gTWVudSBCdXR0b25zIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnJvdW5kLXN5c3RlbS1tZW51LWJ1dHRvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BSQVRBUC1LVU1BUi9yb3VuZGVkLXN5c3RlbS1tZW51LWJ1dHRvbnMiLAogICJ1dWlkIjogInJvdW5kZWRTeXN0ZW1NZW51QnV0dG9uc0BwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}, "41": {"version": "17", "sha256": "1cwjyw4sc4i4vdm458qdnjzvmiqyz9vscicwarsd9cvik57p44f5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJvdW5kZWQgU3lzdGVtIE1lbnUgQnV0dG9ucyIsCiAgIm5hbWUiOiAiUm91bmRlZCBTeXN0ZW0gTWVudSBCdXR0b25zIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnJvdW5kLXN5c3RlbS1tZW51LWJ1dHRvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1BSQVRBUC1LVU1BUi9yb3VuZGVkLXN5c3RlbS1tZW51LWJ1dHRvbnMiLAogICJ1dWlkIjogInJvdW5kZWRTeXN0ZW1NZW51QnV0dG9uc0BwcmF0YXAuZmFzdG1haWwuZm0iLAogICJ2ZXJzaW9uIjogMTcKfQ=="}}}
 , {"uuid": "static-background@denizaksimsek.com", "name": "Static background in overview", "pname": "static-background-in-overview", "description": "The background, always clearly visible.", "link": "https://extensions.gnome.org/extension/4696/static-background-in-overview/", "shell_version_map": {"40": {"version": "2", "sha256": "1wr4xp0jj74fjp4yjizyvy1qvmbaclk59cjjhwigxh3glkgdy8ph", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBiYWNrZ3JvdW5kLCBhbHdheXMgY2xlYXJseSB2aXNpYmxlLiIsCiAgIm5hbWUiOiAiU3RhdGljIGJhY2tncm91bmQgaW4gb3ZlcnZpZXciLAogICJvcmlnaW5hbC1hdXRob3IiOiAicmVucy5hbHRodWlzQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZHo0ay9nbm9tZS1zdGF0aWMtYmFja2dyb3VuZCIsCiAgInV1aWQiOiAic3RhdGljLWJhY2tncm91bmRAZGVuaXpha3NpbXNlay5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}, "41": {"version": "2", "sha256": "1wr4xp0jj74fjp4yjizyvy1qvmbaclk59cjjhwigxh3glkgdy8ph", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoZSBiYWNrZ3JvdW5kLCBhbHdheXMgY2xlYXJseSB2aXNpYmxlLiIsCiAgIm5hbWUiOiAiU3RhdGljIGJhY2tncm91bmQgaW4gb3ZlcnZpZXciLAogICJvcmlnaW5hbC1hdXRob3IiOiAicmVucy5hbHRodWlzQGdtYWlsLmNvbSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZHo0ay9nbm9tZS1zdGF0aWMtYmFja2dyb3VuZCIsCiAgInV1aWQiOiAic3RhdGljLWJhY2tncm91bmRAZGVuaXpha3NpbXNlay5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}}}
 , {"uuid": "highlight-focus@pimsnel.com", "name": "Highlight Focus", "pname": "highlight-focus", "description": "Highlights the focussed window with a temporary border", "link": "https://extensions.gnome.org/extension/4699/highlight-focus/", "shell_version_map": {"38": {"version": "2", "sha256": "1mdmwhlrdpfw3zw66575kd8xc0isgw0gnx3qq3f5d70c8wk7ijhx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZ2hsaWdodHMgdGhlIGZvY3Vzc2VkIHdpbmRvdyB3aXRoIGEgdGVtcG9yYXJ5IGJvcmRlciIsCiAgIm5hbWUiOiAiSGlnaGxpZ2h0IEZvY3VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9taXBtaXAvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy1oaWdobGlnaHQtZm9jdXMiLAogICJ1dWlkIjogImhpZ2hsaWdodC1mb2N1c0BwaW1zbmVsLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "1mdmwhlrdpfw3zw66575kd8xc0isgw0gnx3qq3f5d70c8wk7ijhx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZ2hsaWdodHMgdGhlIGZvY3Vzc2VkIHdpbmRvdyB3aXRoIGEgdGVtcG9yYXJ5IGJvcmRlciIsCiAgIm5hbWUiOiAiSGlnaGxpZ2h0IEZvY3VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9taXBtaXAvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy1oaWdobGlnaHQtZm9jdXMiLAogICJ1dWlkIjogImhpZ2hsaWdodC1mb2N1c0BwaW1zbmVsLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "1mdmwhlrdpfw3zw66575kd8xc0isgw0gnx3qq3f5d70c8wk7ijhx", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZ2hsaWdodHMgdGhlIGZvY3Vzc2VkIHdpbmRvdyB3aXRoIGEgdGVtcG9yYXJ5IGJvcmRlciIsCiAgIm5hbWUiOiAiSGlnaGxpZ2h0IEZvY3VzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9taXBtaXAvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy1oaWdobGlnaHQtZm9jdXMiLAogICJ1dWlkIjogImhpZ2hsaWdodC1mb2N1c0BwaW1zbmVsLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "awesome-tiles@velitasali.com", "name": "Awesome Tiles", "pname": "awesome-tiles", "description": "Tile windows using keyboard shortcuts.", "link": "https://extensions.gnome.org/extension/4702/awesome-tiles/", "shell_version_map": {"40": {"version": "4", "sha256": "18im4m362yp5cv03j1acb4nqs496dz2nxxiy7zirf4qzd98hsh29", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyB1c2luZyBrZXlib2FyZCBzaG9ydGN1dHMuIiwKICAibmFtZSI6ICJBd2Vzb21lIFRpbGVzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmF3ZXNvbWUtdGlsZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92ZWxpdGFzYWxpL2dub21lLWF3ZXNvbWUtdGlsZXMtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJhd2Vzb21lLXRpbGVzQHZlbGl0YXNhbGkuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "18im4m362yp5cv03j1acb4nqs496dz2nxxiy7zirf4qzd98hsh29", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyB1c2luZyBrZXlib2FyZCBzaG9ydGN1dHMuIiwKICAibmFtZSI6ICJBd2Vzb21lIFRpbGVzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmF3ZXNvbWUtdGlsZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92ZWxpdGFzYWxpL2dub21lLWF3ZXNvbWUtdGlsZXMtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJhd2Vzb21lLXRpbGVzQHZlbGl0YXNhbGkuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
-, {"uuid": "dock-from-dash@fthx", "name": "Dock from Dash", "pname": "dock-from-dash", "description": "Dock for GNOME Shell 40+. Does use native GNOME Shell Dash. Very light extension.\n\n Hover the bottom of your screen and GNOME Shell dash will appear without overview and will hide when you leave the dash. Native GNOME Shell click behavior is modified: minimize if one window is open, overview if many windows are open.\n\n There are some variables you can easily set in extension.js code (opacity, timeouts...). There will be no preferences UI.\n\n Please report bugs through GitHub.", "link": "https://extensions.gnome.org/extension/4703/dock-from-dash/", "shell_version_map": {"40": {"version": "28", "sha256": "1g579jnhlx1fi768f98pmp4lv1vsaw9nvg8100ba5jx3f9ckfa0y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRvY2sgZm9yIEdOT01FIFNoZWxsIDQwKy4gRG9lcyB1c2UgbmF0aXZlIEdOT01FIFNoZWxsIERhc2guIFZlcnkgbGlnaHQgZXh0ZW5zaW9uLlxuXG4gSG92ZXIgdGhlIGJvdHRvbSBvZiB5b3VyIHNjcmVlbiBhbmQgR05PTUUgU2hlbGwgZGFzaCB3aWxsIGFwcGVhciB3aXRob3V0IG92ZXJ2aWV3IGFuZCB3aWxsIGhpZGUgd2hlbiB5b3UgbGVhdmUgdGhlIGRhc2guIE5hdGl2ZSBHTk9NRSBTaGVsbCBjbGljayBiZWhhdmlvciBpcyBtb2RpZmllZDogbWluaW1pemUgaWYgb25lIHdpbmRvdyBpcyBvcGVuLCBvdmVydmlldyBpZiBtYW55IHdpbmRvd3MgYXJlIG9wZW4uXG5cbiBUaGVyZSBhcmUgc29tZSB2YXJpYWJsZXMgeW91IGNhbiBlYXNpbHkgc2V0IGluIGV4dGVuc2lvbi5qcyBjb2RlIChvcGFjaXR5LCB0aW1lb3V0cy4uLikuIFRoZXJlIHdpbGwgYmUgbm8gcHJlZmVyZW5jZXMgVUkuXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEb2NrIGZyb20gRGFzaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvZG9jay1mcm9tLWRhc2giLAogICJ1dWlkIjogImRvY2stZnJvbS1kYXNoQGZ0aHgiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}, "41": {"version": "28", "sha256": "1g579jnhlx1fi768f98pmp4lv1vsaw9nvg8100ba5jx3f9ckfa0y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRvY2sgZm9yIEdOT01FIFNoZWxsIDQwKy4gRG9lcyB1c2UgbmF0aXZlIEdOT01FIFNoZWxsIERhc2guIFZlcnkgbGlnaHQgZXh0ZW5zaW9uLlxuXG4gSG92ZXIgdGhlIGJvdHRvbSBvZiB5b3VyIHNjcmVlbiBhbmQgR05PTUUgU2hlbGwgZGFzaCB3aWxsIGFwcGVhciB3aXRob3V0IG92ZXJ2aWV3IGFuZCB3aWxsIGhpZGUgd2hlbiB5b3UgbGVhdmUgdGhlIGRhc2guIE5hdGl2ZSBHTk9NRSBTaGVsbCBjbGljayBiZWhhdmlvciBpcyBtb2RpZmllZDogbWluaW1pemUgaWYgb25lIHdpbmRvdyBpcyBvcGVuLCBvdmVydmlldyBpZiBtYW55IHdpbmRvd3MgYXJlIG9wZW4uXG5cbiBUaGVyZSBhcmUgc29tZSB2YXJpYWJsZXMgeW91IGNhbiBlYXNpbHkgc2V0IGluIGV4dGVuc2lvbi5qcyBjb2RlIChvcGFjaXR5LCB0aW1lb3V0cy4uLikuIFRoZXJlIHdpbGwgYmUgbm8gcHJlZmVyZW5jZXMgVUkuXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEb2NrIGZyb20gRGFzaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvZG9jay1mcm9tLWRhc2giLAogICJ1dWlkIjogImRvY2stZnJvbS1kYXNoQGZ0aHgiLAogICJ2ZXJzaW9uIjogMjgKfQ=="}}}
+, {"uuid": "awesome-tiles@velitasali.com", "name": "Awesome Tiles", "pname": "awesome-tiles", "description": "Tile windows using keyboard shortcuts.", "link": "https://extensions.gnome.org/extension/4702/awesome-tiles/", "shell_version_map": {"40": {"version": "4", "sha256": "18im4m362yp5cv03j1acb4nqs496dz2nxxiy7zirf4qzd98hsh29", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyB1c2luZyBrZXlib2FyZCBzaG9ydGN1dHMuIiwKICAibmFtZSI6ICJBd2Vzb21lIFRpbGVzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmF3ZXNvbWUtdGlsZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92ZWxpdGFzYWxpL2dub21lLWF3ZXNvbWUtdGlsZXMtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJhd2Vzb21lLXRpbGVzQHZlbGl0YXNhbGkuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "18im4m362yp5cv03j1acb4nqs496dz2nxxiy7zirf4qzd98hsh29", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyB1c2luZyBrZXlib2FyZCBzaG9ydGN1dHMuIiwKICAibmFtZSI6ICJBd2Vzb21lIFRpbGVzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmF3ZXNvbWUtdGlsZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92ZWxpdGFzYWxpL2dub21lLWF3ZXNvbWUtdGlsZXMtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJhd2Vzb21lLXRpbGVzQHZlbGl0YXNhbGkuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "42": {"version": "4", "sha256": "18im4m362yp5cv03j1acb4nqs496dz2nxxiy7zirf4qzd98hsh29", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRpbGUgd2luZG93cyB1c2luZyBrZXlib2FyZCBzaG9ydGN1dHMuIiwKICAibmFtZSI6ICJBd2Vzb21lIFRpbGVzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmF3ZXNvbWUtdGlsZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS92ZWxpdGFzYWxpL2dub21lLWF3ZXNvbWUtdGlsZXMtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJhd2Vzb21lLXRpbGVzQHZlbGl0YXNhbGkuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
+, {"uuid": "dock-from-dash@fthx", "name": "Dock from Dash", "pname": "dock-from-dash", "description": "Dock for GNOME Shell 40+. Does use native GNOME Shell Dash. Very light extension.\n\n Hover the bottom of your screen and GNOME Shell dash will appear without overview and will hide when you leave the dash. Native GNOME Shell click behavior is modified: minimize if one window is open, overview if many windows are open.\n\n There are some variables you can easily set in extension.js code (opacity, timeouts...). There will be no preferences UI.\n\n Please report bugs through GitHub.", "link": "https://extensions.gnome.org/extension/4703/dock-from-dash/", "shell_version_map": {"40": {"version": "30", "sha256": "0j31s6h9a8igrip4apliyciqwhzg3yrb5yn9m2qyq4kpqi4sq2zz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRvY2sgZm9yIEdOT01FIFNoZWxsIDQwKy4gRG9lcyB1c2UgbmF0aXZlIEdOT01FIFNoZWxsIERhc2guIFZlcnkgbGlnaHQgZXh0ZW5zaW9uLlxuXG4gSG92ZXIgdGhlIGJvdHRvbSBvZiB5b3VyIHNjcmVlbiBhbmQgR05PTUUgU2hlbGwgZGFzaCB3aWxsIGFwcGVhciB3aXRob3V0IG92ZXJ2aWV3IGFuZCB3aWxsIGhpZGUgd2hlbiB5b3UgbGVhdmUgdGhlIGRhc2guIE5hdGl2ZSBHTk9NRSBTaGVsbCBjbGljayBiZWhhdmlvciBpcyBtb2RpZmllZDogbWluaW1pemUgaWYgb25lIHdpbmRvdyBpcyBvcGVuLCBvdmVydmlldyBpZiBtYW55IHdpbmRvd3MgYXJlIG9wZW4uXG5cbiBUaGVyZSBhcmUgc29tZSB2YXJpYWJsZXMgeW91IGNhbiBlYXNpbHkgc2V0IGluIGV4dGVuc2lvbi5qcyBjb2RlIChvcGFjaXR5LCB0aW1lb3V0cy4uLikuIFRoZXJlIHdpbGwgYmUgbm8gcHJlZmVyZW5jZXMgVUkuXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEb2NrIGZyb20gRGFzaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvZG9jay1mcm9tLWRhc2giLAogICJ1dWlkIjogImRvY2stZnJvbS1kYXNoQGZ0aHgiLAogICJ2ZXJzaW9uIjogMzAKfQ=="}, "41": {"version": "30", "sha256": "0j31s6h9a8igrip4apliyciqwhzg3yrb5yn9m2qyq4kpqi4sq2zz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRvY2sgZm9yIEdOT01FIFNoZWxsIDQwKy4gRG9lcyB1c2UgbmF0aXZlIEdOT01FIFNoZWxsIERhc2guIFZlcnkgbGlnaHQgZXh0ZW5zaW9uLlxuXG4gSG92ZXIgdGhlIGJvdHRvbSBvZiB5b3VyIHNjcmVlbiBhbmQgR05PTUUgU2hlbGwgZGFzaCB3aWxsIGFwcGVhciB3aXRob3V0IG92ZXJ2aWV3IGFuZCB3aWxsIGhpZGUgd2hlbiB5b3UgbGVhdmUgdGhlIGRhc2guIE5hdGl2ZSBHTk9NRSBTaGVsbCBjbGljayBiZWhhdmlvciBpcyBtb2RpZmllZDogbWluaW1pemUgaWYgb25lIHdpbmRvdyBpcyBvcGVuLCBvdmVydmlldyBpZiBtYW55IHdpbmRvd3MgYXJlIG9wZW4uXG5cbiBUaGVyZSBhcmUgc29tZSB2YXJpYWJsZXMgeW91IGNhbiBlYXNpbHkgc2V0IGluIGV4dGVuc2lvbi5qcyBjb2RlIChvcGFjaXR5LCB0aW1lb3V0cy4uLikuIFRoZXJlIHdpbGwgYmUgbm8gcHJlZmVyZW5jZXMgVUkuXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEb2NrIGZyb20gRGFzaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvZG9jay1mcm9tLWRhc2giLAogICJ1dWlkIjogImRvY2stZnJvbS1kYXNoQGZ0aHgiLAogICJ2ZXJzaW9uIjogMzAKfQ=="}, "42": {"version": "30", "sha256": "0j31s6h9a8igrip4apliyciqwhzg3yrb5yn9m2qyq4kpqi4sq2zz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRvY2sgZm9yIEdOT01FIFNoZWxsIDQwKy4gRG9lcyB1c2UgbmF0aXZlIEdOT01FIFNoZWxsIERhc2guIFZlcnkgbGlnaHQgZXh0ZW5zaW9uLlxuXG4gSG92ZXIgdGhlIGJvdHRvbSBvZiB5b3VyIHNjcmVlbiBhbmQgR05PTUUgU2hlbGwgZGFzaCB3aWxsIGFwcGVhciB3aXRob3V0IG92ZXJ2aWV3IGFuZCB3aWxsIGhpZGUgd2hlbiB5b3UgbGVhdmUgdGhlIGRhc2guIE5hdGl2ZSBHTk9NRSBTaGVsbCBjbGljayBiZWhhdmlvciBpcyBtb2RpZmllZDogbWluaW1pemUgaWYgb25lIHdpbmRvdyBpcyBvcGVuLCBvdmVydmlldyBpZiBtYW55IHdpbmRvd3MgYXJlIG9wZW4uXG5cbiBUaGVyZSBhcmUgc29tZSB2YXJpYWJsZXMgeW91IGNhbiBlYXNpbHkgc2V0IGluIGV4dGVuc2lvbi5qcyBjb2RlIChvcGFjaXR5LCB0aW1lb3V0cy4uLikuIFRoZXJlIHdpbGwgYmUgbm8gcHJlZmVyZW5jZXMgVUkuXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEb2NrIGZyb20gRGFzaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2Z0aHgvZG9jay1mcm9tLWRhc2giLAogICJ1dWlkIjogImRvY2stZnJvbS1kYXNoQGZ0aHgiLAogICJ2ZXJzaW9uIjogMzAKfQ=="}}}
 , {"uuid": "another-window-session-manager@gmail.com", "name": "Another Window Session Manager", "pname": "another-window-session-manager", "description": "Close and save open windows. And restore the saved windows. Most importantly, it supports both X11 and Wayland!\n\nFeatures:\n- Close open windows\n- Save open windows\n- Restore saved open windows\n- Restore window state, including Always on Top, Always on Visible Workspace and maximization\n- Restore window workspace, size and position\n- Move windows to their own workspace according to a saved session\n- Support multi-monitor\n- Trash saved session\n- Search saved session by the session name fuzzily", "link": "https://extensions.gnome.org/extension/4709/another-window-session-manager/", "shell_version_map": {"40": {"version": "11", "sha256": "0d1d0178nvcxvsay1wqm5wclfhs7a2g500xmh3khmvc981pg83j4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIGFuZCBzYXZlIG9wZW4gd2luZG93cy4gQW5kIHJlc3RvcmUgdGhlIHNhdmVkIHdpbmRvd3MuIE1vc3QgaW1wb3J0YW50bHksIGl0IHN1cHBvcnRzIGJvdGggWDExIGFuZCBXYXlsYW5kIVxuXG5GZWF0dXJlczpcbi0gQ2xvc2Ugb3BlbiB3aW5kb3dzXG4tIFNhdmUgb3BlbiB3aW5kb3dzXG4tIFJlc3RvcmUgc2F2ZWQgb3BlbiB3aW5kb3dzXG4tIFJlc3RvcmUgd2luZG93IHN0YXRlLCBpbmNsdWRpbmcgQWx3YXlzIG9uIFRvcCwgQWx3YXlzIG9uIFZpc2libGUgV29ya3NwYWNlIGFuZCBtYXhpbWl6YXRpb25cbi0gUmVzdG9yZSB3aW5kb3cgd29ya3NwYWNlLCBzaXplIGFuZCBwb3NpdGlvblxuLSBNb3ZlIHdpbmRvd3MgdG8gdGhlaXIgb3duIHdvcmtzcGFjZSBhY2NvcmRpbmcgdG8gYSBzYXZlZCBzZXNzaW9uXG4tIFN1cHBvcnQgbXVsdGktbW9uaXRvclxuLSBUcmFzaCBzYXZlZCBzZXNzaW9uXG4tIFNlYXJjaCBzYXZlZCBzZXNzaW9uIGJ5IHRoZSBzZXNzaW9uIG5hbWUgZnV6emlseSIsCiAgIm5hbWUiOiAiQW5vdGhlciBXaW5kb3cgU2Vzc2lvbiBNYW5hZ2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ubHBzdWdlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1hbm90aGVyLXdpbmRvdy1zZXNzaW9uLW1hbmFnZXIiLAogICJ1dWlkIjogImFub3RoZXItd2luZG93LXNlc3Npb24tbWFuYWdlckBnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "41": {"version": "11", "sha256": "0d1d0178nvcxvsay1wqm5wclfhs7a2g500xmh3khmvc981pg83j4", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIGFuZCBzYXZlIG9wZW4gd2luZG93cy4gQW5kIHJlc3RvcmUgdGhlIHNhdmVkIHdpbmRvd3MuIE1vc3QgaW1wb3J0YW50bHksIGl0IHN1cHBvcnRzIGJvdGggWDExIGFuZCBXYXlsYW5kIVxuXG5GZWF0dXJlczpcbi0gQ2xvc2Ugb3BlbiB3aW5kb3dzXG4tIFNhdmUgb3BlbiB3aW5kb3dzXG4tIFJlc3RvcmUgc2F2ZWQgb3BlbiB3aW5kb3dzXG4tIFJlc3RvcmUgd2luZG93IHN0YXRlLCBpbmNsdWRpbmcgQWx3YXlzIG9uIFRvcCwgQWx3YXlzIG9uIFZpc2libGUgV29ya3NwYWNlIGFuZCBtYXhpbWl6YXRpb25cbi0gUmVzdG9yZSB3aW5kb3cgd29ya3NwYWNlLCBzaXplIGFuZCBwb3NpdGlvblxuLSBNb3ZlIHdpbmRvd3MgdG8gdGhlaXIgb3duIHdvcmtzcGFjZSBhY2NvcmRpbmcgdG8gYSBzYXZlZCBzZXNzaW9uXG4tIFN1cHBvcnQgbXVsdGktbW9uaXRvclxuLSBUcmFzaCBzYXZlZCBzZXNzaW9uXG4tIFNlYXJjaCBzYXZlZCBzZXNzaW9uIGJ5IHRoZSBzZXNzaW9uIG5hbWUgZnV6emlseSIsCiAgIm5hbWUiOiAiQW5vdGhlciBXaW5kb3cgU2Vzc2lvbiBNYW5hZ2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ubHBzdWdlL2dub21lLXNoZWxsLWV4dGVuc2lvbi1hbm90aGVyLXdpbmRvdy1zZXNzaW9uLW1hbmFnZXIiLAogICJ1dWlkIjogImFub3RoZXItd2luZG93LXNlc3Npb24tbWFuYWdlckBnbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
 , {"uuid": "prevent-double-empty-window@silliewous.nl", "name": "Prevent double empty window", "pname": "prevent-double-empty-window", "description": "Set MIN_NUMBER_WORKSPACES to 1 so there is only one empty workspace when there are no windows open.\n\nhttps://gitlab.com/g3786/prevent-double-empty-window", "link": "https://extensions.gnome.org/extension/4711/prevent-double-empty-window/", "shell_version_map": {"40": {"version": "1", "sha256": "18f1pflvv4sw1r182rrjz2jdy1ym1ipm5lid2sm518h8c3iiabb2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNldCBNSU5fTlVNQkVSX1dPUktTUEFDRVMgdG8gMSBzbyB0aGVyZSBpcyBvbmx5IG9uZSBlbXB0eSB3b3Jrc3BhY2Ugd2hlbiB0aGVyZSBhcmUgbm8gd2luZG93cyBvcGVuLlxuXG5odHRwczovL2dpdGxhYi5jb20vZzM3ODYvcHJldmVudC1kb3VibGUtZW1wdHktd2luZG93IiwKICAibmFtZSI6ICJQcmV2ZW50IGRvdWJsZSBlbXB0eSB3aW5kb3ciLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogInByZXZlbnQtZG91YmxlLWVtcHR5LXdpbmRvd0BzaWxsaWV3b3VzLm5sIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"uuid": "display-ddc-brightness-volume@sagrland.de", "name": "Display DDC Brightness Volume", "pname": "display-ddc-brightness-volume", "description": "Control external displays' brightness and audio volume via DDC. It requires ddcutil to be installed and i2c permissions for non-root users.", "link": "https://extensions.gnome.org/extension/4712/display-ddc-brightness-volume/", "shell_version_map": {"40": {"version": "1", "sha256": "1pad0q2a04lak6601vj2qz029g86l9r5m65bf0m97b21fd46a9s8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgZXh0ZXJuYWwgZGlzcGxheXMnIGJyaWdodG5lc3MgYW5kIGF1ZGlvIHZvbHVtZSB2aWEgRERDLiBJdCByZXF1aXJlcyBkZGN1dGlsIHRvIGJlIGluc3RhbGxlZCBhbmQgaTJjIHBlcm1pc3Npb25zIGZvciBub24tcm9vdCB1c2Vycy4iLAogICJuYW1lIjogIkRpc3BsYXkgRERDIEJyaWdodG5lc3MgVm9sdW1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TYUdyTGFuZC9nbm9tZS1zaGVsbC1kaXNwbGF5LWRkYy1icmlnaHRuZXNzLXZvbHVtZS8iLAogICJ1dWlkIjogImRpc3BsYXktZGRjLWJyaWdodG5lc3Mtdm9sdW1lQHNhZ3JsYW5kLmRlIiwKICAidmVyc2lvbiI6IDEKfQ=="}, "41": {"version": "1", "sha256": "1pad0q2a04lak6601vj2qz029g86l9r5m65bf0m97b21fd46a9s8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnRyb2wgZXh0ZXJuYWwgZGlzcGxheXMnIGJyaWdodG5lc3MgYW5kIGF1ZGlvIHZvbHVtZSB2aWEgRERDLiBJdCByZXF1aXJlcyBkZGN1dGlsIHRvIGJlIGluc3RhbGxlZCBhbmQgaTJjIHBlcm1pc3Npb25zIGZvciBub24tcm9vdCB1c2Vycy4iLAogICJuYW1lIjogIkRpc3BsYXkgRERDIEJyaWdodG5lc3MgVm9sdW1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9TYUdyTGFuZC9nbm9tZS1zaGVsbC1kaXNwbGF5LWRkYy1icmlnaHRuZXNzLXZvbHVtZS8iLAogICJ1dWlkIjogImRpc3BsYXktZGRjLWJyaWdodG5lc3Mtdm9sdW1lQHNhZ3JsYW5kLmRlIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"uuid": "disable_hover@fawtytoo", "name": "Disable Hover On App & Window Switcher Popups", "pname": "disable-hover-on-app-window-switcher-popups", "description": "Prevents the mouse cursor interfering with either the App Switcher or the Window Switcher popups. For those users that like to use the keyboard only with these switchers.\nNote: It doesn't prevent mouse clicks.\n\nThese are the switcher popups that are invoked from keyboard shortcuts, e.g. Alt+Tab or Super+Tab.", "link": "https://extensions.gnome.org/extension/4714/disable-hover-on-app-window-switcher-popups/", "shell_version_map": {"38": {"version": "1", "sha256": "1h3ja9wjj5lxb2qb1p95si9q3hz2j5rj193jg1dxgjkgjkiprpjk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByZXZlbnRzIHRoZSBtb3VzZSBjdXJzb3IgaW50ZXJmZXJpbmcgd2l0aCBlaXRoZXIgdGhlIEFwcCBTd2l0Y2hlciBvciB0aGUgV2luZG93IFN3aXRjaGVyIHBvcHVwcy4gRm9yIHRob3NlIHVzZXJzIHRoYXQgbGlrZSB0byB1c2UgdGhlIGtleWJvYXJkIG9ubHkgd2l0aCB0aGVzZSBzd2l0Y2hlcnMuXG5Ob3RlOiBJdCBkb2Vzbid0IHByZXZlbnQgbW91c2UgY2xpY2tzLlxuXG5UaGVzZSBhcmUgdGhlIHN3aXRjaGVyIHBvcHVwcyB0aGF0IGFyZSBpbnZva2VkIGZyb20ga2V5Ym9hcmQgc2hvcnRjdXRzLCBlLmcuIEFsdCtUYWIgb3IgU3VwZXIrVGFiLiIsCiAgIm5hbWUiOiAiRGlzYWJsZSBIb3ZlciBPbiBBcHAgJiBXaW5kb3cgU3dpdGNoZXIgUG9wdXBzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZGlzYWJsZV9ob3ZlckBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAxCn0="}, "40": {"version": "1", "sha256": "1h3ja9wjj5lxb2qb1p95si9q3hz2j5rj193jg1dxgjkgjkiprpjk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByZXZlbnRzIHRoZSBtb3VzZSBjdXJzb3IgaW50ZXJmZXJpbmcgd2l0aCBlaXRoZXIgdGhlIEFwcCBTd2l0Y2hlciBvciB0aGUgV2luZG93IFN3aXRjaGVyIHBvcHVwcy4gRm9yIHRob3NlIHVzZXJzIHRoYXQgbGlrZSB0byB1c2UgdGhlIGtleWJvYXJkIG9ubHkgd2l0aCB0aGVzZSBzd2l0Y2hlcnMuXG5Ob3RlOiBJdCBkb2Vzbid0IHByZXZlbnQgbW91c2UgY2xpY2tzLlxuXG5UaGVzZSBhcmUgdGhlIHN3aXRjaGVyIHBvcHVwcyB0aGF0IGFyZSBpbnZva2VkIGZyb20ga2V5Ym9hcmQgc2hvcnRjdXRzLCBlLmcuIEFsdCtUYWIgb3IgU3VwZXIrVGFiLiIsCiAgIm5hbWUiOiAiRGlzYWJsZSBIb3ZlciBPbiBBcHAgJiBXaW5kb3cgU3dpdGNoZXIgUG9wdXBzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZGlzYWJsZV9ob3ZlckBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAxCn0="}, "41": {"version": "1", "sha256": "1h3ja9wjj5lxb2qb1p95si9q3hz2j5rj193jg1dxgjkgjkiprpjk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlByZXZlbnRzIHRoZSBtb3VzZSBjdXJzb3IgaW50ZXJmZXJpbmcgd2l0aCBlaXRoZXIgdGhlIEFwcCBTd2l0Y2hlciBvciB0aGUgV2luZG93IFN3aXRjaGVyIHBvcHVwcy4gRm9yIHRob3NlIHVzZXJzIHRoYXQgbGlrZSB0byB1c2UgdGhlIGtleWJvYXJkIG9ubHkgd2l0aCB0aGVzZSBzd2l0Y2hlcnMuXG5Ob3RlOiBJdCBkb2Vzbid0IHByZXZlbnQgbW91c2UgY2xpY2tzLlxuXG5UaGVzZSBhcmUgdGhlIHN3aXRjaGVyIHBvcHVwcyB0aGF0IGFyZSBpbnZva2VkIGZyb20ga2V5Ym9hcmQgc2hvcnRjdXRzLCBlLmcuIEFsdCtUYWIgb3IgU3VwZXIrVGFiLiIsCiAgIm5hbWUiOiAiRGlzYWJsZSBIb3ZlciBPbiBBcHAgJiBXaW5kb3cgU3dpdGNoZXIgUG9wdXBzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZGlzYWJsZV9ob3ZlckBmYXd0eXRvbyIsCiAgInZlcnNpb24iOiAxCn0="}}}
-, {"uuid": "countdown-timer@eexpss.gmail.com", "name": "Countdown & Timer", "pname": "countdown-timer", "description": "Countdown in minutes, or enter text containing HH:MM format to set the Timer.", "link": "https://extensions.gnome.org/extension/4720/countdown-timer/", "shell_version_map": {"40": {"version": "9", "sha256": "08va385j93b9d1n8w7b3sia656abl4x25ka1kff4kzg0rd0b74c8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvdW50ZG93biBpbiBtaW51dGVzLCBvciBlbnRlciB0ZXh0IGNvbnRhaW5pbmcgSEg6TU0gZm9ybWF0IHRvIHNldCB0aGUgVGltZXIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY291bnRkb3duLXRpbWVyIiwKICAibmFtZSI6ICJDb3VudGRvd24gJiBUaW1lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNvdW50ZG93bi10aW1lci8iLAogICJ1dWlkIjogImNvdW50ZG93bi10aW1lckBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "41": {"version": "9", "sha256": "08va385j93b9d1n8w7b3sia656abl4x25ka1kff4kzg0rd0b74c8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvdW50ZG93biBpbiBtaW51dGVzLCBvciBlbnRlciB0ZXh0IGNvbnRhaW5pbmcgSEg6TU0gZm9ybWF0IHRvIHNldCB0aGUgVGltZXIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY291bnRkb3duLXRpbWVyIiwKICAibmFtZSI6ICJDb3VudGRvd24gJiBUaW1lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNvdW50ZG93bi10aW1lci8iLAogICJ1dWlkIjogImNvdW50ZG93bi10aW1lckBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
+, {"uuid": "countdown-timer@eexpss.gmail.com", "name": "Countdown & Timer", "pname": "countdown-timer", "description": "Countdown in minutes, or enter text containing HH:MM format to set the Timer.", "link": "https://extensions.gnome.org/extension/4720/countdown-timer/", "shell_version_map": {"40": {"version": "9", "sha256": "08va385j93b9d1n8w7b3sia656abl4x25ka1kff4kzg0rd0b74c8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvdW50ZG93biBpbiBtaW51dGVzLCBvciBlbnRlciB0ZXh0IGNvbnRhaW5pbmcgSEg6TU0gZm9ybWF0IHRvIHNldCB0aGUgVGltZXIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY291bnRkb3duLXRpbWVyIiwKICAibmFtZSI6ICJDb3VudGRvd24gJiBUaW1lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNvdW50ZG93bi10aW1lci8iLAogICJ1dWlkIjogImNvdW50ZG93bi10aW1lckBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "41": {"version": "9", "sha256": "08va385j93b9d1n8w7b3sia656abl4x25ka1kff4kzg0rd0b74c8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvdW50ZG93biBpbiBtaW51dGVzLCBvciBlbnRlciB0ZXh0IGNvbnRhaW5pbmcgSEg6TU0gZm9ybWF0IHRvIHNldCB0aGUgVGltZXIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY291bnRkb3duLXRpbWVyIiwKICAibmFtZSI6ICJDb3VudGRvd24gJiBUaW1lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNvdW50ZG93bi10aW1lci8iLAogICJ1dWlkIjogImNvdW50ZG93bi10aW1lckBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}, "42": {"version": "9", "sha256": "08va385j93b9d1n8w7b3sia656abl4x25ka1kff4kzg0rd0b74c8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvdW50ZG93biBpbiBtaW51dGVzLCBvciBlbnRlciB0ZXh0IGNvbnRhaW5pbmcgSEg6TU0gZm9ybWF0IHRvIHNldCB0aGUgVGltZXIuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY291bnRkb3duLXRpbWVyIiwKICAibmFtZSI6ICJDb3VudGRvd24gJiBUaW1lciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNvdW50ZG93bi10aW1lci8iLAogICJ1dWlkIjogImNvdW50ZG93bi10aW1lckBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDkKfQ=="}}}
 , {"uuid": "workspace-dry-names@benmoussatmouad.github.io", "name": "Worksapce Dry Names", "pname": "worksapce-dry-names", "description": "Workspace dry-names is a simple gnome extension that enables tags for desktop workspaces. It shows text labels on the left side of the main panel with randomly generated cities names (or an other category of names). Names can also be modified.\n\nhttps://github.com/benmoussatMouad/gnome-workspace-dry-names.git", "link": "https://extensions.gnome.org/extension/4721/worksapce-dry-names/", "shell_version_map": {"38": {"version": "1", "sha256": "0ljprv3ar01p1y24p6j7hc8g7afca7ir0b2zyapjpzndz7mv1zcl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBkcnktbmFtZXMgaXMgYSBzaW1wbGUgZ25vbWUgZXh0ZW5zaW9uIHRoYXQgZW5hYmxlcyB0YWdzIGZvciBkZXNrdG9wIHdvcmtzcGFjZXMuIEl0IHNob3dzIHRleHQgbGFiZWxzIG9uIHRoZSBsZWZ0IHNpZGUgb2YgdGhlIG1haW4gcGFuZWwgd2l0aCByYW5kb21seSBnZW5lcmF0ZWQgY2l0aWVzIG5hbWVzIChvciBhbiBvdGhlciBjYXRlZ29yeSBvZiBuYW1lcykuIE5hbWVzIGNhbiBhbHNvIGJlIG1vZGlmaWVkLlxuXG5odHRwczovL2dpdGh1Yi5jb20vYmVubW91c3NhdE1vdWFkL2dub21lLXdvcmtzcGFjZS1kcnktbmFtZXMuZ2l0IiwKICAibmFtZSI6ICJXb3Jrc2FwY2UgRHJ5IE5hbWVzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmtzcGFjZS1kcnktbmFtZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2UtZHJ5LW5hbWVzQGJlbm1vdXNzYXRtb3VhZC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMQp9"}, "40": {"version": "1", "sha256": "0ljprv3ar01p1y24p6j7hc8g7afca7ir0b2zyapjpzndz7mv1zcl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBkcnktbmFtZXMgaXMgYSBzaW1wbGUgZ25vbWUgZXh0ZW5zaW9uIHRoYXQgZW5hYmxlcyB0YWdzIGZvciBkZXNrdG9wIHdvcmtzcGFjZXMuIEl0IHNob3dzIHRleHQgbGFiZWxzIG9uIHRoZSBsZWZ0IHNpZGUgb2YgdGhlIG1haW4gcGFuZWwgd2l0aCByYW5kb21seSBnZW5lcmF0ZWQgY2l0aWVzIG5hbWVzIChvciBhbiBvdGhlciBjYXRlZ29yeSBvZiBuYW1lcykuIE5hbWVzIGNhbiBhbHNvIGJlIG1vZGlmaWVkLlxuXG5odHRwczovL2dpdGh1Yi5jb20vYmVubW91c3NhdE1vdWFkL2dub21lLXdvcmtzcGFjZS1kcnktbmFtZXMuZ2l0IiwKICAibmFtZSI6ICJXb3Jrc2FwY2UgRHJ5IE5hbWVzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmtzcGFjZS1kcnktbmFtZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2UtZHJ5LW5hbWVzQGJlbm1vdXNzYXRtb3VhZC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMQp9"}, "41": {"version": "1", "sha256": "0ljprv3ar01p1y24p6j7hc8g7afca7ir0b2zyapjpzndz7mv1zcl", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIldvcmtzcGFjZSBkcnktbmFtZXMgaXMgYSBzaW1wbGUgZ25vbWUgZXh0ZW5zaW9uIHRoYXQgZW5hYmxlcyB0YWdzIGZvciBkZXNrdG9wIHdvcmtzcGFjZXMuIEl0IHNob3dzIHRleHQgbGFiZWxzIG9uIHRoZSBsZWZ0IHNpZGUgb2YgdGhlIG1haW4gcGFuZWwgd2l0aCByYW5kb21seSBnZW5lcmF0ZWQgY2l0aWVzIG5hbWVzIChvciBhbiBvdGhlciBjYXRlZ29yeSBvZiBuYW1lcykuIE5hbWVzIGNhbiBhbHNvIGJlIG1vZGlmaWVkLlxuXG5odHRwczovL2dpdGh1Yi5jb20vYmVubW91c3NhdE1vdWFkL2dub21lLXdvcmtzcGFjZS1kcnktbmFtZXMuZ2l0IiwKICAibmFtZSI6ICJXb3Jrc2FwY2UgRHJ5IE5hbWVzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmtzcGFjZS1kcnktbmFtZXMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2UtZHJ5LW5hbWVzQGJlbm1vdXNzYXRtb3VhZC5naXRodWIuaW8iLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "window-calls@domandoman.xyz", "name": "Window Calls", "pname": "window-calls", "description": "Add new dbus call for windows to get windows list and some of theirs properties", "link": "https://extensions.gnome.org/extension/4724/window-calls/", "shell_version_map": {"41": {"version": "2", "sha256": "02z265maw4a0rkw5y4an2j7spjqif44nxf47q5qr6cwnvmfpw6ci", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBuZXcgZGJ1cyBjYWxsIGZvciB3aW5kb3dzIHRvIGdldCB3aW5kb3dzIGxpc3QgYW5kIHNvbWUgb2YgdGhlaXJzIHByb3BlcnRpZXMiLAogICJuYW1lIjogIldpbmRvdyBDYWxscyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9pY2t5aWNreS93aW5kb3ctY2FsbHMiLAogICJ1dWlkIjogIndpbmRvdy1jYWxsc0Bkb21hbmRvbWFuLnh5eiIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "primary_input_on_lockscreen@sagidayan.com", "name": "Primary Input on LockScreen", "pname": "primary-input-on-lockscreen", "description": "Automatically change input layout to primary on lock screen", "link": "https://extensions.gnome.org/extension/4727/primary-input-on-lockscreen/", "shell_version_map": {"40": {"version": "2", "sha256": "0m1hk3hhr5y4i7fk3x2pc9ln6rjlq7y9fvcv3imygs3w5q1bx1ll", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgY2hhbmdlIGlucHV0IGxheW91dCB0byBwcmltYXJ5IG9uIGxvY2sgc2NyZWVuIiwKICAibmFtZSI6ICJQcmltYXJ5IElucHV0IG9uIExvY2tTY3JlZW4iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3NhZ2lkYXlhbi9wcmltYXJ5LWlucHV0LW9uLWxvY2tzY3JlZW4iLAogICJ1dWlkIjogInByaW1hcnlfaW5wdXRfb25fbG9ja3NjcmVlbkBzYWdpZGF5YW4uY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "0m1hk3hhr5y4i7fk3x2pc9ln6rjlq7y9fvcv3imygs3w5q1bx1ll", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkF1dG9tYXRpY2FsbHkgY2hhbmdlIGlucHV0IGxheW91dCB0byBwcmltYXJ5IG9uIGxvY2sgc2NyZWVuIiwKICAibmFtZSI6ICJQcmltYXJ5IElucHV0IG9uIExvY2tTY3JlZW4iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL3NhZ2lkYXlhbi9wcmltYXJ5LWlucHV0LW9uLWxvY2tzY3JlZW4iLAogICJ1dWlkIjogInByaW1hcnlfaW5wdXRfb25fbG9ja3NjcmVlbkBzYWdpZGF5YW4uY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
-, {"uuid": "browser-tabs@com.github.harshadgavali", "name": "Browser tabs", "pname": "browser-tabs", "description": "Search provider for browser tabs\n\nSee following github link for installing browser extension and host app for searches to appear!", "link": "https://extensions.gnome.org/extension/4733/browser-tabs/", "shell_version_map": {"40": {"version": "4", "sha256": "1ag30ai0frxbw3s67ir1i5jdxpzx52b9rp47sqpnjcqw46xc97b6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlYXJjaCBwcm92aWRlciBmb3IgYnJvd3NlciB0YWJzXG5cblNlZSBmb2xsb3dpbmcgZ2l0aHViIGxpbmsgZm9yIGluc3RhbGxpbmcgYnJvd3NlciBleHRlbnNpb24gYW5kIGhvc3QgYXBwIGZvciBzZWFyY2hlcyB0byBhcHBlYXIhIiwKICAibmFtZSI6ICJCcm93c2VyIHRhYnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJzaGFkZ2F2YWxpL3NlYXJjaHByb3ZpZGVyLWZvci1icm93c2VyLXRhYnMuZ2l0LyIsCiAgInV1aWQiOiAiYnJvd3Nlci10YWJzQGNvbS5naXRodWIuaGFyc2hhZGdhdmFsaSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "1ag30ai0frxbw3s67ir1i5jdxpzx52b9rp47sqpnjcqw46xc97b6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlYXJjaCBwcm92aWRlciBmb3IgYnJvd3NlciB0YWJzXG5cblNlZSBmb2xsb3dpbmcgZ2l0aHViIGxpbmsgZm9yIGluc3RhbGxpbmcgYnJvd3NlciBleHRlbnNpb24gYW5kIGhvc3QgYXBwIGZvciBzZWFyY2hlcyB0byBhcHBlYXIhIiwKICAibmFtZSI6ICJCcm93c2VyIHRhYnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJzaGFkZ2F2YWxpL3NlYXJjaHByb3ZpZGVyLWZvci1icm93c2VyLXRhYnMuZ2l0LyIsCiAgInV1aWQiOiAiYnJvd3Nlci10YWJzQGNvbS5naXRodWIuaGFyc2hhZGdhdmFsaSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"uuid": "browser-tabs@com.github.harshadgavali", "name": "Browser tabs", "pname": "browser-tabs", "description": "Search provider for browser tabs\n\nSee following github link for installing browser extension and host app for searches to appear!", "link": "https://extensions.gnome.org/extension/4733/browser-tabs/", "shell_version_map": {"40": {"version": "4", "sha256": "1ag30ai0frxbw3s67ir1i5jdxpzx52b9rp47sqpnjcqw46xc97b6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlYXJjaCBwcm92aWRlciBmb3IgYnJvd3NlciB0YWJzXG5cblNlZSBmb2xsb3dpbmcgZ2l0aHViIGxpbmsgZm9yIGluc3RhbGxpbmcgYnJvd3NlciBleHRlbnNpb24gYW5kIGhvc3QgYXBwIGZvciBzZWFyY2hlcyB0byBhcHBlYXIhIiwKICAibmFtZSI6ICJCcm93c2VyIHRhYnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJzaGFkZ2F2YWxpL3NlYXJjaHByb3ZpZGVyLWZvci1icm93c2VyLXRhYnMuZ2l0LyIsCiAgInV1aWQiOiAiYnJvd3Nlci10YWJzQGNvbS5naXRodWIuaGFyc2hhZGdhdmFsaSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "1ag30ai0frxbw3s67ir1i5jdxpzx52b9rp47sqpnjcqw46xc97b6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlYXJjaCBwcm92aWRlciBmb3IgYnJvd3NlciB0YWJzXG5cblNlZSBmb2xsb3dpbmcgZ2l0aHViIGxpbmsgZm9yIGluc3RhbGxpbmcgYnJvd3NlciBleHRlbnNpb24gYW5kIGhvc3QgYXBwIGZvciBzZWFyY2hlcyB0byBhcHBlYXIhIiwKICAibmFtZSI6ICJCcm93c2VyIHRhYnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJzaGFkZ2F2YWxpL3NlYXJjaHByb3ZpZGVyLWZvci1icm93c2VyLXRhYnMuZ2l0LyIsCiAgInV1aWQiOiAiYnJvd3Nlci10YWJzQGNvbS5naXRodWIuaGFyc2hhZGdhdmFsaSIsCiAgInZlcnNpb24iOiA0Cn0="}, "42": {"version": "4", "sha256": "1ag30ai0frxbw3s67ir1i5jdxpzx52b9rp47sqpnjcqw46xc97b6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNlYXJjaCBwcm92aWRlciBmb3IgYnJvd3NlciB0YWJzXG5cblNlZSBmb2xsb3dpbmcgZ2l0aHViIGxpbmsgZm9yIGluc3RhbGxpbmcgYnJvd3NlciBleHRlbnNpb24gYW5kIGhvc3QgYXBwIGZvciBzZWFyY2hlcyB0byBhcHBlYXIhIiwKICAibmFtZSI6ICJCcm93c2VyIHRhYnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9oYXJzaGFkZ2F2YWxpL3NlYXJjaHByb3ZpZGVyLWZvci1icm93c2VyLXRhYnMuZ2l0LyIsCiAgInV1aWQiOiAiYnJvd3Nlci10YWJzQGNvbS5naXRodWIuaGFyc2hhZGdhdmFsaSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "smart-auto-move@khimaros.com", "name": "Smart Auto Move", "pname": "smart-auto-move", "description": "Smart Auto Move learns the size and position of your application windows and restores them to the correct place on subsequent launches. Supports Wayland.\n\nNOTE: Optimized for use with static workspaces. For more control, can be set to default IGNORE and then selectively RESTORE only desired apps.", "link": "https://extensions.gnome.org/extension/4736/smart-auto-move/", "shell_version_map": {"41": {"version": "15", "sha256": "1i5czxzkhd3h19q4din4psj6swl8s7fjlb93blz0zvj6y6mx948g", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNtYXJ0IEF1dG8gTW92ZSBsZWFybnMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIHlvdXIgYXBwbGljYXRpb24gd2luZG93cyBhbmQgcmVzdG9yZXMgdGhlbSB0byB0aGUgY29ycmVjdCBwbGFjZSBvbiBzdWJzZXF1ZW50IGxhdW5jaGVzLiBTdXBwb3J0cyBXYXlsYW5kLlxuXG5OT1RFOiBPcHRpbWl6ZWQgZm9yIHVzZSB3aXRoIHN0YXRpYyB3b3Jrc3BhY2VzLiBGb3IgbW9yZSBjb250cm9sLCBjYW4gYmUgc2V0IHRvIGRlZmF1bHQgSUdOT1JFIGFuZCB0aGVuIHNlbGVjdGl2ZWx5IFJFU1RPUkUgb25seSBkZXNpcmVkIGFwcHMuIiwKICAibmFtZSI6ICJTbWFydCBBdXRvIE1vdmUiLAogICJvcmlnaW5hbC1hdXRob3IiOiAia2hpbWFyb3MiLAogICJzZXR0aW5ncy1wYXRoIjogIi9vcmcvZ25vbWUvc2hlbGwvZXh0ZW5zaW9ucy9zbWFydC1hdXRvLW1vdmUvIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnNtYXJ0LWF1dG8tbW92ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9raGltYXJvcy9zbWFydC1hdXRvLW1vdmUiLAogICJ1dWlkIjogInNtYXJ0LWF1dG8tbW92ZUBraGltYXJvcy5jb20iLAogICJ2ZXJzaW9uIjogMTUKfQ=="}}}
-, {"uuid": "hplip-menu2@grizzlysmit.smit.id.au", "name": "Alternate Menu for Hplip2", "pname": "alternate-menu-for-hplip2", "description": "control your hp printers by calling the device manager hp-toolbox, also some useful links\nMotivation: the hp-systray doesn't work reliably under gnome shell\nyou need to have installed hplip in order to use this\nChoice of using a printer icon or a hp_logo.png if it's installed in the same place as mine on Ubuntu\nyou could use symbolic links to fake the path.\nThis is a replacement for the old \"Alternate Menu for Hplip\" which doesn't work under the new Gome-Shell I have cleaned it up a bit and it has a few new menu's but it is still basically the same thing.\n Added even more menus all most all system settings ones.\n\nNote: the menu will be too big if your resolution is way too low like 800x600 I have no soln for this just now.", "link": "https://extensions.gnome.org/extension/4739/alternate-menu-for-hplip2/", "shell_version_map": {"40": {"version": "3", "sha256": "034dh32qhq2gzkbhfsyrsp4nh642nhp2y9lrvnnk8391185s229q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLlxuVGhpcyBpcyBhIHJlcGxhY2VtZW50IGZvciB0aGUgb2xkIFwiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwXCIgd2hpY2ggZG9lc24ndCB3b3JrIHVuZGVyIHRoZSBuZXcgR29tZS1TaGVsbCBJIGhhdmUgY2xlYW5lZCBpdCB1cCBhIGJpdCBhbmQgaXQgaGFzIGEgZmV3IG5ldyBtZW51J3MgYnV0IGl0IGlzIHN0aWxsIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZy5cbiBBZGRlZCBldmVuIG1vcmUgbWVudXMgYWxsIG1vc3QgYWxsIHN5c3RlbSBzZXR0aW5ncyBvbmVzLlxuXG5Ob3RlOiB0aGUgbWVudSB3aWxsIGJlIHRvbyBiaWcgaWYgeW91ciByZXNvbHV0aW9uIGlzIHdheSB0b28gbG93IGxpa2UgODAweDYwMCBJIGhhdmUgbm8gc29sbiBmb3IgdGhpcyBqdXN0IG5vdy4iLAogICJuYW1lIjogIkFsdGVybmF0ZSBNZW51IGZvciBIcGxpcDIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaHBsaXAtbWVudTIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dyaXp6bHlzbWl0L2hwbGlwLW1lbnUyLWdyaXp6bHlzbWl0LnNtaXQuaWQuYXUiLAogICJ1dWlkIjogImhwbGlwLW1lbnUyQGdyaXp6bHlzbWl0LnNtaXQuaWQuYXUiLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "034dh32qhq2gzkbhfsyrsp4nh642nhp2y9lrvnnk8391185s229q", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLlxuVGhpcyBpcyBhIHJlcGxhY2VtZW50IGZvciB0aGUgb2xkIFwiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwXCIgd2hpY2ggZG9lc24ndCB3b3JrIHVuZGVyIHRoZSBuZXcgR29tZS1TaGVsbCBJIGhhdmUgY2xlYW5lZCBpdCB1cCBhIGJpdCBhbmQgaXQgaGFzIGEgZmV3IG5ldyBtZW51J3MgYnV0IGl0IGlzIHN0aWxsIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZy5cbiBBZGRlZCBldmVuIG1vcmUgbWVudXMgYWxsIG1vc3QgYWxsIHN5c3RlbSBzZXR0aW5ncyBvbmVzLlxuXG5Ob3RlOiB0aGUgbWVudSB3aWxsIGJlIHRvbyBiaWcgaWYgeW91ciByZXNvbHV0aW9uIGlzIHdheSB0b28gbG93IGxpa2UgODAweDYwMCBJIGhhdmUgbm8gc29sbiBmb3IgdGhpcyBqdXN0IG5vdy4iLAogICJuYW1lIjogIkFsdGVybmF0ZSBNZW51IGZvciBIcGxpcDIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaHBsaXAtbWVudTIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2dyaXp6bHlzbWl0L2hwbGlwLW1lbnUyLWdyaXp6bHlzbWl0LnNtaXQuaWQuYXUiLAogICJ1dWlkIjogImhwbGlwLW1lbnUyQGdyaXp6bHlzbWl0LnNtaXQuaWQuYXUiLAogICJ2ZXJzaW9uIjogMwp9"}}}
-, {"uuid": "dash-from-panel@fthx", "name": "Dash from Panel", "pname": "dash-from-panel", "description": "Top dock for GNOME 40+. Hover top panel and GNOME Shell dash appears without overview.\n\n Does use native GNOME Shell Dash. Very light extension.\n\n Please report bugs through GitHub.", "link": "https://extensions.gnome.org/extension/4741/dash-from-panel/", "shell_version_map": {"40": {"version": "1", "sha256": "1ba7pk05f3s4z32pargrfcsg7b84jx8g0avl71q6xzj1syinlsb1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvcCBkb2NrIGZvciBHTk9NRSA0MCsuIEhvdmVyIHRvcCBwYW5lbCBhbmQgR05PTUUgU2hlbGwgZGFzaCBhcHBlYXJzIHdpdGhvdXQgb3ZlcnZpZXcuXG5cbiBEb2VzIHVzZSBuYXRpdmUgR05PTUUgU2hlbGwgRGFzaC4gVmVyeSBsaWdodCBleHRlbnNpb24uXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEYXNoIGZyb20gUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2Rhc2gtZnJvbS1wYW5lbCIsCiAgInV1aWQiOiAiZGFzaC1mcm9tLXBhbmVsQGZ0aHgiLAogICJ2ZXJzaW9uIjogMQp9"}, "41": {"version": "1", "sha256": "1ba7pk05f3s4z32pargrfcsg7b84jx8g0avl71q6xzj1syinlsb1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvcCBkb2NrIGZvciBHTk9NRSA0MCsuIEhvdmVyIHRvcCBwYW5lbCBhbmQgR05PTUUgU2hlbGwgZGFzaCBhcHBlYXJzIHdpdGhvdXQgb3ZlcnZpZXcuXG5cbiBEb2VzIHVzZSBuYXRpdmUgR05PTUUgU2hlbGwgRGFzaC4gVmVyeSBsaWdodCBleHRlbnNpb24uXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEYXNoIGZyb20gUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2Rhc2gtZnJvbS1wYW5lbCIsCiAgInV1aWQiOiAiZGFzaC1mcm9tLXBhbmVsQGZ0aHgiLAogICJ2ZXJzaW9uIjogMQp9"}}}
-, {"uuid": "clip-translator@eexpss.gmail.com", "name": "Clip Translator", "pname": "clip-translator", "description": "Translate from Clipboard content", "link": "https://extensions.gnome.org/extension/4744/clip-translator/", "shell_version_map": {"40": {"version": "13", "sha256": "1nfky8hv1yddpqbc94a3ydigni8c6h6pkcpf416a3pw2b78rxm4h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zbGF0ZSBmcm9tIENsaXBib2FyZCBjb250ZW50IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY2xpcC10cmFuc2xhdG9yIiwKICAibmFtZSI6ICJDbGlwIFRyYW5zbGF0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lZXhwcmVzcy9nbm9tZS1zaGVsbC1jbGlwLXRyYW5zbGF0b3IiLAogICJ1dWlkIjogImNsaXAtdHJhbnNsYXRvckBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEzCn0="}, "41": {"version": "13", "sha256": "1nfky8hv1yddpqbc94a3ydigni8c6h6pkcpf416a3pw2b78rxm4h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRyYW5zbGF0ZSBmcm9tIENsaXBib2FyZCBjb250ZW50IiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY2xpcC10cmFuc2xhdG9yIiwKICAibmFtZSI6ICJDbGlwIFRyYW5zbGF0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lZXhwcmVzcy9nbm9tZS1zaGVsbC1jbGlwLXRyYW5zbGF0b3IiLAogICJ1dWlkIjogImNsaXAtdHJhbnNsYXRvckBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEzCn0="}}}
+, {"uuid": "hplip-menu2@grizzlysmit.smit.id.au", "name": "Alternate Menu for Hplip2", "pname": "alternate-menu-for-hplip2", "description": "control your hp printers by calling the device manager hp-toolbox, also some useful links\nMotivation: the hp-systray doesn't work reliably under gnome shell\nyou need to have installed hplip in order to use this\nChoice of using a printer icon or a hp_logo.png if it's installed in the same place as mine on Ubuntu\nyou could use symbolic links to fake the path.\nThis is a replacement for the old \"Alternate Menu for Hplip\" which doesn't work under the new Gome-Shell I have cleaned it up a bit and it has a few new menu's but it is still basically the same thing.\n Added even more menus all most all system settings ones.\n\nNote: the menu will be too big if your resolution is way too low like 800x600 I have no soln for this just now.", "link": "https://extensions.gnome.org/extension/4739/alternate-menu-for-hplip2/", "shell_version_map": {"40": {"version": "4", "sha256": "1l1b0ybii5ilvk1x4jdr70wbvl3k4jw53yxapmkj2naskq1gasb3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLlxuVGhpcyBpcyBhIHJlcGxhY2VtZW50IGZvciB0aGUgb2xkIFwiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwXCIgd2hpY2ggZG9lc24ndCB3b3JrIHVuZGVyIHRoZSBuZXcgR29tZS1TaGVsbCBJIGhhdmUgY2xlYW5lZCBpdCB1cCBhIGJpdCBhbmQgaXQgaGFzIGEgZmV3IG5ldyBtZW51J3MgYnV0IGl0IGlzIHN0aWxsIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZy5cbiBBZGRlZCBldmVuIG1vcmUgbWVudXMgYWxsIG1vc3QgYWxsIHN5c3RlbSBzZXR0aW5ncyBvbmVzLlxuXG5Ob3RlOiB0aGUgbWVudSB3aWxsIGJlIHRvbyBiaWcgaWYgeW91ciByZXNvbHV0aW9uIGlzIHdheSB0b28gbG93IGxpa2UgODAweDYwMCBJIGhhdmUgbm8gc29sbiBmb3IgdGhpcyBqdXN0IG5vdy4iLAogICJuYW1lIjogIkFsdGVybmF0ZSBNZW51IGZvciBIcGxpcDIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaHBsaXAtbWVudTIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ncml6emx5c21pdC9ocGxpcC1tZW51Mi1ncml6emx5c21pdC5zbWl0LmlkLmF1IiwKICAidXVpZCI6ICJocGxpcC1tZW51MkBncml6emx5c21pdC5zbWl0LmlkLmF1IiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "1l1b0ybii5ilvk1x4jdr70wbvl3k4jw53yxapmkj2naskq1gasb3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLlxuVGhpcyBpcyBhIHJlcGxhY2VtZW50IGZvciB0aGUgb2xkIFwiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwXCIgd2hpY2ggZG9lc24ndCB3b3JrIHVuZGVyIHRoZSBuZXcgR29tZS1TaGVsbCBJIGhhdmUgY2xlYW5lZCBpdCB1cCBhIGJpdCBhbmQgaXQgaGFzIGEgZmV3IG5ldyBtZW51J3MgYnV0IGl0IGlzIHN0aWxsIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZy5cbiBBZGRlZCBldmVuIG1vcmUgbWVudXMgYWxsIG1vc3QgYWxsIHN5c3RlbSBzZXR0aW5ncyBvbmVzLlxuXG5Ob3RlOiB0aGUgbWVudSB3aWxsIGJlIHRvbyBiaWcgaWYgeW91ciByZXNvbHV0aW9uIGlzIHdheSB0b28gbG93IGxpa2UgODAweDYwMCBJIGhhdmUgbm8gc29sbiBmb3IgdGhpcyBqdXN0IG5vdy4iLAogICJuYW1lIjogIkFsdGVybmF0ZSBNZW51IGZvciBIcGxpcDIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaHBsaXAtbWVudTIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ncml6emx5c21pdC9ocGxpcC1tZW51Mi1ncml6emx5c21pdC5zbWl0LmlkLmF1IiwKICAidXVpZCI6ICJocGxpcC1tZW51MkBncml6emx5c21pdC5zbWl0LmlkLmF1IiwKICAidmVyc2lvbiI6IDQKfQ=="}, "42": {"version": "4", "sha256": "1l1b0ybii5ilvk1x4jdr70wbvl3k4jw53yxapmkj2naskq1gasb3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImNvbnRyb2wgeW91ciBocCBwcmludGVycyBieSBjYWxsaW5nIHRoZSBkZXZpY2UgbWFuYWdlciBocC10b29sYm94LCBhbHNvIHNvbWUgdXNlZnVsIGxpbmtzXG5Nb3RpdmF0aW9uOiB0aGUgaHAtc3lzdHJheSBkb2Vzbid0IHdvcmsgcmVsaWFibHkgdW5kZXIgZ25vbWUgc2hlbGxcbnlvdSBuZWVkIHRvIGhhdmUgaW5zdGFsbGVkIGhwbGlwIGluIG9yZGVyIHRvIHVzZSB0aGlzXG5DaG9pY2Ugb2YgdXNpbmcgYSBwcmludGVyIGljb24gb3IgYSBocF9sb2dvLnBuZyBpZiBpdCdzIGluc3RhbGxlZCBpbiB0aGUgc2FtZSBwbGFjZSBhcyBtaW5lIG9uIFVidW50dVxueW91IGNvdWxkIHVzZSBzeW1ib2xpYyBsaW5rcyB0byBmYWtlIHRoZSBwYXRoLlxuVGhpcyBpcyBhIHJlcGxhY2VtZW50IGZvciB0aGUgb2xkIFwiQWx0ZXJuYXRlIE1lbnUgZm9yIEhwbGlwXCIgd2hpY2ggZG9lc24ndCB3b3JrIHVuZGVyIHRoZSBuZXcgR29tZS1TaGVsbCBJIGhhdmUgY2xlYW5lZCBpdCB1cCBhIGJpdCBhbmQgaXQgaGFzIGEgZmV3IG5ldyBtZW51J3MgYnV0IGl0IGlzIHN0aWxsIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZy5cbiBBZGRlZCBldmVuIG1vcmUgbWVudXMgYWxsIG1vc3QgYWxsIHN5c3RlbSBzZXR0aW5ncyBvbmVzLlxuXG5Ob3RlOiB0aGUgbWVudSB3aWxsIGJlIHRvbyBiaWcgaWYgeW91ciByZXNvbHV0aW9uIGlzIHdheSB0b28gbG93IGxpa2UgODAweDYwMCBJIGhhdmUgbm8gc29sbiBmb3IgdGhpcyBqdXN0IG5vdy4iLAogICJuYW1lIjogIkFsdGVybmF0ZSBNZW51IGZvciBIcGxpcDIiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMuaHBsaXAtbWVudTIiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ncml6emx5c21pdC9ocGxpcC1tZW51Mi1ncml6emx5c21pdC5zbWl0LmlkLmF1IiwKICAidXVpZCI6ICJocGxpcC1tZW51MkBncml6emx5c21pdC5zbWl0LmlkLmF1IiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
+, {"uuid": "dash-from-panel@fthx", "name": "Dash from Panel", "pname": "dash-from-panel", "description": "Top dock for GNOME 40+. Hover top panel and GNOME Shell dash appears without overview.\n\n Does use native GNOME Shell Dash. Very light extension.\n\n Please report bugs through GitHub.", "link": "https://extensions.gnome.org/extension/4741/dash-from-panel/", "shell_version_map": {"40": {"version": "1", "sha256": "1ba7pk05f3s4z32pargrfcsg7b84jx8g0avl71q6xzj1syinlsb1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvcCBkb2NrIGZvciBHTk9NRSA0MCsuIEhvdmVyIHRvcCBwYW5lbCBhbmQgR05PTUUgU2hlbGwgZGFzaCBhcHBlYXJzIHdpdGhvdXQgb3ZlcnZpZXcuXG5cbiBEb2VzIHVzZSBuYXRpdmUgR05PTUUgU2hlbGwgRGFzaC4gVmVyeSBsaWdodCBleHRlbnNpb24uXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEYXNoIGZyb20gUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2Rhc2gtZnJvbS1wYW5lbCIsCiAgInV1aWQiOiAiZGFzaC1mcm9tLXBhbmVsQGZ0aHgiLAogICJ2ZXJzaW9uIjogMQp9"}, "41": {"version": "1", "sha256": "1ba7pk05f3s4z32pargrfcsg7b84jx8g0avl71q6xzj1syinlsb1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvcCBkb2NrIGZvciBHTk9NRSA0MCsuIEhvdmVyIHRvcCBwYW5lbCBhbmQgR05PTUUgU2hlbGwgZGFzaCBhcHBlYXJzIHdpdGhvdXQgb3ZlcnZpZXcuXG5cbiBEb2VzIHVzZSBuYXRpdmUgR05PTUUgU2hlbGwgRGFzaC4gVmVyeSBsaWdodCBleHRlbnNpb24uXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEYXNoIGZyb20gUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2Rhc2gtZnJvbS1wYW5lbCIsCiAgInV1aWQiOiAiZGFzaC1mcm9tLXBhbmVsQGZ0aHgiLAogICJ2ZXJzaW9uIjogMQp9"}, "42": {"version": "1", "sha256": "1ba7pk05f3s4z32pargrfcsg7b84jx8g0avl71q6xzj1syinlsb1", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRvcCBkb2NrIGZvciBHTk9NRSA0MCsuIEhvdmVyIHRvcCBwYW5lbCBhbmQgR05PTUUgU2hlbGwgZGFzaCBhcHBlYXJzIHdpdGhvdXQgb3ZlcnZpZXcuXG5cbiBEb2VzIHVzZSBuYXRpdmUgR05PTUUgU2hlbGwgRGFzaC4gVmVyeSBsaWdodCBleHRlbnNpb24uXG5cbiBQbGVhc2UgcmVwb3J0IGJ1Z3MgdGhyb3VnaCBHaXRIdWIuIiwKICAibmFtZSI6ICJEYXNoIGZyb20gUGFuZWwiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9mdGh4L2Rhc2gtZnJvbS1wYW5lbCIsCiAgInV1aWQiOiAiZGFzaC1mcm9tLXBhbmVsQGZ0aHgiLAogICJ2ZXJzaW9uIjogMQp9"}}}
+, {"uuid": "clip-translator@eexpss.gmail.com", "name": "Clip Translator", "pname": "clip-translator", "description": "* Translate from Clipboard content", "link": "https://extensions.gnome.org/extension/4744/clip-translator/", "shell_version_map": {"40": {"version": "13", "sha256": "08jfqm96vz8xf52z60d5dhpgb1s9lc6fx8ii1gjwfmzq14k8ycha", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogVHJhbnNsYXRlIGZyb20gQ2xpcGJvYXJkIGNvbnRlbnQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjbGlwLXRyYW5zbGF0b3IiLAogICJuYW1lIjogIkNsaXAgVHJhbnNsYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNsaXAtdHJhbnNsYXRvciIsCiAgInV1aWQiOiAiY2xpcC10cmFuc2xhdG9yQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "41": {"version": "13", "sha256": "08jfqm96vz8xf52z60d5dhpgb1s9lc6fx8ii1gjwfmzq14k8ycha", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogVHJhbnNsYXRlIGZyb20gQ2xpcGJvYXJkIGNvbnRlbnQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjbGlwLXRyYW5zbGF0b3IiLAogICJuYW1lIjogIkNsaXAgVHJhbnNsYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNsaXAtdHJhbnNsYXRvciIsCiAgInV1aWQiOiAiY2xpcC10cmFuc2xhdG9yQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}, "42": {"version": "13", "sha256": "08jfqm96vz8xf52z60d5dhpgb1s9lc6fx8ii1gjwfmzq14k8ycha", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogVHJhbnNsYXRlIGZyb20gQ2xpcGJvYXJkIGNvbnRlbnQiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjbGlwLXRyYW5zbGF0b3IiLAogICJuYW1lIjogIkNsaXAgVHJhbnNsYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNsaXAtdHJhbnNsYXRvciIsCiAgInV1aWQiOiAiY2xpcC10cmFuc2xhdG9yQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTMKfQ=="}}}
 , {"uuid": "hidedate@hidedate.com", "name": "Hide Date", "pname": "hide-date", "description": "hides date and clocks", "link": "https://extensions.gnome.org/extension/4747/hide-date/", "shell_version_map": {"38": {"version": "3", "sha256": "1k0dbq26lnc2dj6w0jmjv2xyih405k02w9c7m220nspbwhspzpw6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImhpZGVzIGRhdGUgYW5kIGNsb2NrcyIsCiAgIm5hbWUiOiAiSGlkZSBEYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9idXNyYWNhZ2xpeWFuL0dub21lLUV4dGVuc2lvbi1FeGFtcGxlcy90cmVlL21haW4vaGlkZWRhdGUlNDBoaWRlZGF0ZS5jb20iLAogICJ1dWlkIjogImhpZGVkYXRlQGhpZGVkYXRlLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "1k0dbq26lnc2dj6w0jmjv2xyih405k02w9c7m220nspbwhspzpw6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImhpZGVzIGRhdGUgYW5kIGNsb2NrcyIsCiAgIm5hbWUiOiAiSGlkZSBEYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9idXNyYWNhZ2xpeWFuL0dub21lLUV4dGVuc2lvbi1FeGFtcGxlcy90cmVlL21haW4vaGlkZWRhdGUlNDBoaWRlZGF0ZS5jb20iLAogICJ1dWlkIjogImhpZGVkYXRlQGhpZGVkYXRlLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "41": {"version": "3", "sha256": "1k0dbq26lnc2dj6w0jmjv2xyih405k02w9c7m220nspbwhspzpw6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImhpZGVzIGRhdGUgYW5kIGNsb2NrcyIsCiAgIm5hbWUiOiAiSGlkZSBEYXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9idXNyYWNhZ2xpeWFuL0dub21lLUV4dGVuc2lvbi1FeGFtcGxlcy90cmVlL21haW4vaGlkZWRhdGUlNDBoaWRlZGF0ZS5jb20iLAogICJ1dWlkIjogImhpZGVkYXRlQGhpZGVkYXRlLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "toggleimwheel@mijorus.it", "name": "Toggle imwheel", "pname": "toggle-imwheel", "description": "This simple extension wants to mitigate the lack of a dedicated mouse wheel control on most of the modern linux distributions. Many are using imwheel as a temporary fix; however, if you are using laptop, you might want to have two different settings for the touchpad and the mouse. \n This extension will add an icon in the top bar which lets you toggle imwheel between two custom settings.\n\n\nhttps://github.com/mijorus/toggle-imwheel", "link": "https://extensions.gnome.org/extension/4748/toggle-imwheel/", "shell_version_map": {"40": {"version": "2", "sha256": "1fjqap51g7gy3jra7r1qq4j61iifx13l5lj8sw2csbvzliacsr62", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgc2ltcGxlIGV4dGVuc2lvbiB3YW50cyB0byBtaXRpZ2F0ZSB0aGUgbGFjayBvZiBhIGRlZGljYXRlZCBtb3VzZSB3aGVlbCBjb250cm9sIG9uIG1vc3Qgb2YgdGhlIG1vZGVybiBsaW51eCBkaXN0cmlidXRpb25zLiBNYW55IGFyZSB1c2luZyBpbXdoZWVsIGFzIGEgdGVtcG9yYXJ5IGZpeDsgaG93ZXZlciwgaWYgeW91IGFyZSB1c2luZyBsYXB0b3AsIHlvdSBtaWdodCB3YW50IHRvIGhhdmUgdHdvIGRpZmZlcmVudCBzZXR0aW5ncyBmb3IgdGhlIHRvdWNocGFkIGFuZCB0aGUgbW91c2UuIFxuIFRoaXMgZXh0ZW5zaW9uIHdpbGwgYWRkIGFuIGljb24gaW4gdGhlIHRvcCBiYXIgd2hpY2ggbGV0cyB5b3UgdG9nZ2xlIGltd2hlZWwgYmV0d2VlbiB0d28gY3VzdG9tIHNldHRpbmdzLlxuXG5cbmh0dHBzOi8vZ2l0aHViLmNvbS9taWpvcnVzL3RvZ2dsZS1pbXdoZWVsIiwKICAibmFtZSI6ICJUb2dnbGUgaW13aGVlbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidG9nZ2xlaW13aGVlbEBtaWpvcnVzLml0IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "yakuake-extension@kde.org", "name": "Yakuake", "pname": "yakuake", "description": "A Gnome shell extension to use Yakuake on Gnome. Adds a global shortcut to show/hide yakuake and makes the console appear focussed.", "link": "https://extensions.gnome.org/extension/4757/yakuake/", "shell_version_map": {"40": {"version": "4", "sha256": "0rdrcbsscchvi8i9f6c9sjgnn4546i33l0q135jvav7c1a6bb9mq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgZXh0ZW5zaW9uIHRvIHVzZSBZYWt1YWtlIG9uIEdub21lLiBBZGRzIGEgZ2xvYmFsIHNob3J0Y3V0IHRvIHNob3cvaGlkZSB5YWt1YWtlIGFuZCBtYWtlcyB0aGUgY29uc29sZSBhcHBlYXIgZm9jdXNzZWQuIiwKICAibmFtZSI6ICJZYWt1YWtlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGJlcnR2YWthL3lha3Vha2UtZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ5YWt1YWtlLWV4dGVuc2lvbkBrZGUub3JnIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "0rdrcbsscchvi8i9f6c9sjgnn4546i33l0q135jvav7c1a6bb9mq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR25vbWUgc2hlbGwgZXh0ZW5zaW9uIHRvIHVzZSBZYWt1YWtlIG9uIEdub21lLiBBZGRzIGEgZ2xvYmFsIHNob3J0Y3V0IHRvIHNob3cvaGlkZSB5YWt1YWtlIGFuZCBtYWtlcyB0aGUgY29uc29sZSBhcHBlYXIgZm9jdXNzZWQuIiwKICAibmFtZSI6ICJZYWt1YWtlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGJlcnR2YWthL3lha3Vha2UtZ25vbWUtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ5YWt1YWtlLWV4dGVuc2lvbkBrZGUub3JnIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
-, {"uuid": "dnf-shotcuts@rx1310", "name": "Shortcuts for DNF", "pname": "shortcuts-for-dnf", "description": "A small extension that adds buttons to the panel to check for DNF updates through the terminal without entering commands.", "link": "https://extensions.gnome.org/extension/4758/shortcuts-for-dnf/", "shell_version_map": {"38": {"version": "4", "sha256": "0hknf92ijxg6xcadk7sac3qvlc8lpyf80013vkmzai7bbbbcypsm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc21hbGwgZXh0ZW5zaW9uIHRoYXQgYWRkcyBidXR0b25zIHRvIHRoZSBwYW5lbCB0byBjaGVjayBmb3IgRE5GIHVwZGF0ZXMgdGhyb3VnaCB0aGUgdGVybWluYWwgd2l0aG91dCBlbnRlcmluZyBjb21tYW5kcy4iLAogICJuYW1lIjogIlNob3J0Y3V0cyBmb3IgRE5GIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcngxMzEwL2dub21lLWV4dGVuc2lvbl9hcHR1cGRhdGUiLAogICJ1dWlkIjogImRuZi1zaG90Y3V0c0ByeDEzMTAiLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "0hknf92ijxg6xcadk7sac3qvlc8lpyf80013vkmzai7bbbbcypsm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc21hbGwgZXh0ZW5zaW9uIHRoYXQgYWRkcyBidXR0b25zIHRvIHRoZSBwYW5lbCB0byBjaGVjayBmb3IgRE5GIHVwZGF0ZXMgdGhyb3VnaCB0aGUgdGVybWluYWwgd2l0aG91dCBlbnRlcmluZyBjb21tYW5kcy4iLAogICJuYW1lIjogIlNob3J0Y3V0cyBmb3IgRE5GIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcngxMzEwL2dub21lLWV4dGVuc2lvbl9hcHR1cGRhdGUiLAogICJ1dWlkIjogImRuZi1zaG90Y3V0c0ByeDEzMTAiLAogICJ2ZXJzaW9uIjogNAp9"}, "41": {"version": "4", "sha256": "0hknf92ijxg6xcadk7sac3qvlc8lpyf80013vkmzai7bbbbcypsm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc21hbGwgZXh0ZW5zaW9uIHRoYXQgYWRkcyBidXR0b25zIHRvIHRoZSBwYW5lbCB0byBjaGVjayBmb3IgRE5GIHVwZGF0ZXMgdGhyb3VnaCB0aGUgdGVybWluYWwgd2l0aG91dCBlbnRlcmluZyBjb21tYW5kcy4iLAogICJuYW1lIjogIlNob3J0Y3V0cyBmb3IgRE5GIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcngxMzEwL2dub21lLWV4dGVuc2lvbl9hcHR1cGRhdGUiLAogICJ1dWlkIjogImRuZi1zaG90Y3V0c0ByeDEzMTAiLAogICJ2ZXJzaW9uIjogNAp9"}}}
+, {"uuid": "dnf-shotcuts@rx1310", "name": "Shortcuts for DNF", "pname": "shortcuts-for-dnf", "description": "A small extension that adds buttons to the panel to check for DNF updates through the terminal without entering commands.", "link": "https://extensions.gnome.org/extension/4758/shortcuts-for-dnf/", "shell_version_map": {"38": {"version": "4", "sha256": "0hknf92ijxg6xcadk7sac3qvlc8lpyf80013vkmzai7bbbbcypsm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc21hbGwgZXh0ZW5zaW9uIHRoYXQgYWRkcyBidXR0b25zIHRvIHRoZSBwYW5lbCB0byBjaGVjayBmb3IgRE5GIHVwZGF0ZXMgdGhyb3VnaCB0aGUgdGVybWluYWwgd2l0aG91dCBlbnRlcmluZyBjb21tYW5kcy4iLAogICJuYW1lIjogIlNob3J0Y3V0cyBmb3IgRE5GIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcngxMzEwL2dub21lLWV4dGVuc2lvbl9hcHR1cGRhdGUiLAogICJ1dWlkIjogImRuZi1zaG90Y3V0c0ByeDEzMTAiLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "0hknf92ijxg6xcadk7sac3qvlc8lpyf80013vkmzai7bbbbcypsm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc21hbGwgZXh0ZW5zaW9uIHRoYXQgYWRkcyBidXR0b25zIHRvIHRoZSBwYW5lbCB0byBjaGVjayBmb3IgRE5GIHVwZGF0ZXMgdGhyb3VnaCB0aGUgdGVybWluYWwgd2l0aG91dCBlbnRlcmluZyBjb21tYW5kcy4iLAogICJuYW1lIjogIlNob3J0Y3V0cyBmb3IgRE5GIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcngxMzEwL2dub21lLWV4dGVuc2lvbl9hcHR1cGRhdGUiLAogICJ1dWlkIjogImRuZi1zaG90Y3V0c0ByeDEzMTAiLAogICJ2ZXJzaW9uIjogNAp9"}, "41": {"version": "4", "sha256": "0hknf92ijxg6xcadk7sac3qvlc8lpyf80013vkmzai7bbbbcypsm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc21hbGwgZXh0ZW5zaW9uIHRoYXQgYWRkcyBidXR0b25zIHRvIHRoZSBwYW5lbCB0byBjaGVjayBmb3IgRE5GIHVwZGF0ZXMgdGhyb3VnaCB0aGUgdGVybWluYWwgd2l0aG91dCBlbnRlcmluZyBjb21tYW5kcy4iLAogICJuYW1lIjogIlNob3J0Y3V0cyBmb3IgRE5GIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcngxMzEwL2dub21lLWV4dGVuc2lvbl9hcHR1cGRhdGUiLAogICJ1dWlkIjogImRuZi1zaG90Y3V0c0ByeDEzMTAiLAogICJ2ZXJzaW9uIjogNAp9"}, "42": {"version": "4", "sha256": "0hknf92ijxg6xcadk7sac3qvlc8lpyf80013vkmzai7bbbbcypsm", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgc21hbGwgZXh0ZW5zaW9uIHRoYXQgYWRkcyBidXR0b25zIHRvIHRoZSBwYW5lbCB0byBjaGVjayBmb3IgRE5GIHVwZGF0ZXMgdGhyb3VnaCB0aGUgdGVybWluYWwgd2l0aG91dCBlbnRlcmluZyBjb21tYW5kcy4iLAogICJuYW1lIjogIlNob3J0Y3V0cyBmb3IgRE5GIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcngxMzEwL2dub21lLWV4dGVuc2lvbl9hcHR1cGRhdGUiLAogICJ1dWlkIjogImRuZi1zaG90Y3V0c0ByeDEzMTAiLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "speedbackground@luke.vader", "name": "Speed background", "pname": "speed-background", "description": "Increase how often Gnome will check the background.", "link": "https://extensions.gnome.org/extension/4761/speed-background/", "shell_version_map": {"41": {"version": "4", "sha256": "1dkmnkrag8fgyfdda4f9bpvsrkvx8h8xfb6wm83dyra1z8jq82fs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkluY3JlYXNlIGhvdyBvZnRlbiBHbm9tZSB3aWxsIGNoZWNrIHRoZSBiYWNrZ3JvdW5kLiIsCiAgIm5hbWUiOiAiU3BlZWQgYmFja2dyb3VuZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9MdWtlVmFkZXItSVYvZ25vbWUtc3BlZWQtYmFja2dyb3VuZC1leHRlbnNpb24vIiwKICAidXVpZCI6ICJzcGVlZGJhY2tncm91bmRAbHVrZS52YWRlciIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "bottom-panel@sulincix", "name": "Bottom Panel", "pname": "bottompanel", "description": "move top panel to bottom", "link": "https://extensions.gnome.org/extension/4764/bottompanel/", "shell_version_map": {"38": {"version": "2", "sha256": "0xfmhgd9pgbwjwclf5v9gbhr5mhkh5yl5cxb5wbj9gi20ppl8366", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIm1vdmUgdG9wIHBhbmVsIHRvIGJvdHRvbSIsCiAgIm5hbWUiOiAiQm90dG9tIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYm90dG9tLXBhbmVsQHN1bGluY2l4IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "0xfmhgd9pgbwjwclf5v9gbhr5mhkh5yl5cxb5wbj9gi20ppl8366", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIm1vdmUgdG9wIHBhbmVsIHRvIGJvdHRvbSIsCiAgIm5hbWUiOiAiQm90dG9tIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYm90dG9tLXBhbmVsQHN1bGluY2l4IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "0xfmhgd9pgbwjwclf5v9gbhr5mhkh5yl5cxb5wbj9gi20ppl8366", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIm1vdmUgdG9wIHBhbmVsIHRvIGJvdHRvbSIsCiAgIm5hbWUiOiAiQm90dG9tIFBhbmVsIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjMwIiwKICAgICIzLjM0IiwKICAgICIzLjMyIiwKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiYm90dG9tLXBhbmVsQHN1bGluY2l4IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "FuzzyClock@johngoetz", "name": "Fuzzy Clock", "pname": "fuzzy-clock", "description": "A human-readable (english) clock for the gnome-shell panel", "link": "https://extensions.gnome.org/extension/4771/fuzzy-clock/", "shell_version_map": {"40": {"version": "2", "sha256": "18y8r6f0czadrpamrribqq6rvwa57hpdpffpy864vqp7kq6i6s0l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgaHVtYW4tcmVhZGFibGUgKGVuZ2xpc2gpIGNsb2NrIGZvciB0aGUgZ25vbWUtc2hlbGwgcGFuZWwiLAogICJuYW1lIjogIkZ1enp5IENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qb2huZ29ldHovRnV6enlDbG9jayIsCiAgInV1aWQiOiAiRnV6enlDbG9ja0Bqb2huZ29ldHoiLAogICJ2ZXJzaW9uIjogMgp9"}, "41": {"version": "2", "sha256": "18y8r6f0czadrpamrribqq6rvwa57hpdpffpy864vqp7kq6i6s0l", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgaHVtYW4tcmVhZGFibGUgKGVuZ2xpc2gpIGNsb2NrIGZvciB0aGUgZ25vbWUtc2hlbGwgcGFuZWwiLAogICJuYW1lIjogIkZ1enp5IENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9qb2huZ29ldHovRnV6enlDbG9jayIsCiAgInV1aWQiOiAiRnV6enlDbG9ja0Bqb2huZ29ldHoiLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"uuid": "clip-note@eexpss.gmail.com", "name": "Clip Note", "pname": "clip-note", "description": "Save clip contents to multiple notes with separate tags. Notes locate at ~/.local/share/clip-note/. Dots in filename means splited tags.", "link": "https://extensions.gnome.org/extension/4774/clip-note/", "shell_version_map": {"40": {"version": "11", "sha256": "0bfpxlvyibcpd7vi1a65r5awggmh8i9yc705mfb6vpm92ry7iny3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNhdmUgY2xpcCBjb250ZW50cyB0byBtdWx0aXBsZSBub3RlcyB3aXRoIHNlcGFyYXRlIHRhZ3MuIE5vdGVzIGxvY2F0ZSBhdCB+Ly5sb2NhbC9zaGFyZS9jbGlwLW5vdGUvLiBEb3RzIGluIGZpbGVuYW1lIG1lYW5zIHNwbGl0ZWQgdGFncy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjbGlwLW5vdGUiLAogICJuYW1lIjogIkNsaXAgTm90ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNsaXAtbm90ZSIsCiAgInV1aWQiOiAiY2xpcC1ub3RlQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "41": {"version": "11", "sha256": "0bfpxlvyibcpd7vi1a65r5awggmh8i9yc705mfb6vpm92ry7iny3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNhdmUgY2xpcCBjb250ZW50cyB0byBtdWx0aXBsZSBub3RlcyB3aXRoIHNlcGFyYXRlIHRhZ3MuIE5vdGVzIGxvY2F0ZSBhdCB+Ly5sb2NhbC9zaGFyZS9jbGlwLW5vdGUvLiBEb3RzIGluIGZpbGVuYW1lIG1lYW5zIHNwbGl0ZWQgdGFncy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjbGlwLW5vdGUiLAogICJuYW1lIjogIkNsaXAgTm90ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNsaXAtbm90ZSIsCiAgInV1aWQiOiAiY2xpcC1ub3RlQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
+, {"uuid": "clip-note@eexpss.gmail.com", "name": "Clip Note", "pname": "clip-note", "description": "Save clip contents to multiple notes with separate tags. Notes locate at ~/.local/share/clip-note/. Dots in filename means splited tags.", "link": "https://extensions.gnome.org/extension/4774/clip-note/", "shell_version_map": {"40": {"version": "11", "sha256": "0bfpxlvyibcpd7vi1a65r5awggmh8i9yc705mfb6vpm92ry7iny3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNhdmUgY2xpcCBjb250ZW50cyB0byBtdWx0aXBsZSBub3RlcyB3aXRoIHNlcGFyYXRlIHRhZ3MuIE5vdGVzIGxvY2F0ZSBhdCB+Ly5sb2NhbC9zaGFyZS9jbGlwLW5vdGUvLiBEb3RzIGluIGZpbGVuYW1lIG1lYW5zIHNwbGl0ZWQgdGFncy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjbGlwLW5vdGUiLAogICJuYW1lIjogIkNsaXAgTm90ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNsaXAtbm90ZSIsCiAgInV1aWQiOiAiY2xpcC1ub3RlQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "41": {"version": "11", "sha256": "0bfpxlvyibcpd7vi1a65r5awggmh8i9yc705mfb6vpm92ry7iny3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNhdmUgY2xpcCBjb250ZW50cyB0byBtdWx0aXBsZSBub3RlcyB3aXRoIHNlcGFyYXRlIHRhZ3MuIE5vdGVzIGxvY2F0ZSBhdCB+Ly5sb2NhbC9zaGFyZS9jbGlwLW5vdGUvLiBEb3RzIGluIGZpbGVuYW1lIG1lYW5zIHNwbGl0ZWQgdGFncy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjbGlwLW5vdGUiLAogICJuYW1lIjogIkNsaXAgTm90ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNsaXAtbm90ZSIsCiAgInV1aWQiOiAiY2xpcC1ub3RlQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}, "42": {"version": "11", "sha256": "0bfpxlvyibcpd7vi1a65r5awggmh8i9yc705mfb6vpm92ry7iny3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNhdmUgY2xpcCBjb250ZW50cyB0byBtdWx0aXBsZSBub3RlcyB3aXRoIHNlcGFyYXRlIHRhZ3MuIE5vdGVzIGxvY2F0ZSBhdCB+Ly5sb2NhbC9zaGFyZS9jbGlwLW5vdGUvLiBEb3RzIGluIGZpbGVuYW1lIG1lYW5zIHNwbGl0ZWQgdGFncy4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJjbGlwLW5vdGUiLAogICJuYW1lIjogIkNsaXAgTm90ZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLWNsaXAtbm90ZSIsCiAgInV1aWQiOiAiY2xpcC1ub3RlQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTEKfQ=="}}}
 , {"uuid": "ssh-tray@mario.cardia.com.br", "name": "SSH Tray", "pname": "ssh-tray", "description": "Simple SSH extension to allow you to connect to your hosts at ~/.ssh/config and ~/ssh/know_hosts file from Gnome top bar.", "link": "https://extensions.gnome.org/extension/4779/ssh-tray/", "shell_version_map": {"41": {"version": "1", "sha256": "1c7ndcv3bnsc95sijdkq39fshybpaq9fqdk3gvwm1lx40r1ibgih", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBTU0ggZXh0ZW5zaW9uIHRvIGFsbG93IHlvdSB0byBjb25uZWN0IHRvIHlvdXIgaG9zdHMgYXQgfi8uc3NoL2NvbmZpZyBhbmQgfi9zc2gva25vd19ob3N0cyBmaWxlIGZyb20gR25vbWUgdG9wIGJhci4iLAogICJuYW1lIjogIlNTSCBUcmF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJzc2gtdHJheUBtYXJpby5jYXJkaWEuY29tLmJyIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 , {"uuid": "glasa@lyrahgames.github.io", "name": "Glasa", "pname": "glasa", "description": "This extension puts an icon in the panel consisting of two comic-like eyes following the cursor.", "link": "https://extensions.gnome.org/extension/4780/glasa/", "shell_version_map": {"38": {"version": "2", "sha256": "0j45y91xal9vpk5iznkxydhq4dw55hvwqyfhvq48i5zlzxfirrvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHB1dHMgYW4gaWNvbiBpbiB0aGUgcGFuZWwgY29uc2lzdGluZyBvZiB0d28gY29taWMtbGlrZSBleWVzIGZvbGxvd2luZyB0aGUgY3Vyc29yLiIsCiAgIm5hbWUiOiAiR2xhc2EiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2x5cmFoZ2FtZXMvZ25vbWUtZXh0ZW5zaW9uLWdsYXNhIiwKICAidXVpZCI6ICJnbGFzYUBseXJhaGdhbWVzLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "0j45y91xal9vpk5iznkxydhq4dw55hvwqyfhvq48i5zlzxfirrvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHB1dHMgYW4gaWNvbiBpbiB0aGUgcGFuZWwgY29uc2lzdGluZyBvZiB0d28gY29taWMtbGlrZSBleWVzIGZvbGxvd2luZyB0aGUgY3Vyc29yLiIsCiAgIm5hbWUiOiAiR2xhc2EiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2x5cmFoZ2FtZXMvZ25vbWUtZXh0ZW5zaW9uLWdsYXNhIiwKICAidXVpZCI6ICJnbGFzYUBseXJhaGdhbWVzLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "0j45y91xal9vpk5iznkxydhq4dw55hvwqyfhvq48i5zlzxfirrvn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRoaXMgZXh0ZW5zaW9uIHB1dHMgYW4gaWNvbiBpbiB0aGUgcGFuZWwgY29uc2lzdGluZyBvZiB0d28gY29taWMtbGlrZSBleWVzIGZvbGxvd2luZyB0aGUgY3Vyc29yLiIsCiAgIm5hbWUiOiAiR2xhc2EiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzYiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2x5cmFoZ2FtZXMvZ25vbWUtZXh0ZW5zaW9uLWdsYXNhIiwKICAidXVpZCI6ICJnbGFzYUBseXJhaGdhbWVzLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "avatar@pawel.swiszcz.com", "name": "Avatar", "pname": "avatar", "description": "Adds an avatar to the panel. Controllability: shades, buttons (turn notifications on/off, sleep, off), visibility of username and hostname", "link": "https://extensions.gnome.org/extension/4782/avatar/", "shell_version_map": {"41": {"version": "9", "sha256": "0xhn3yl7h3n1jdnk8r8srfwpx6xcjxpp7m65cqi36kzs3h1zq6yn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYW4gYXZhdGFyIHRvIHRoZSBwYW5lbC4gQ29udHJvbGxhYmlsaXR5OiBzaGFkZXMsIGJ1dHRvbnMgKHR1cm4gbm90aWZpY2F0aW9ucyBvbi9vZmYsIHNsZWVwLCBvZmYpLCB2aXNpYmlsaXR5IG9mIHVzZXJuYW1lIGFuZCBob3N0bmFtZSIsCiAgIm5hbWUiOiAiQXZhdGFyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Bhd2Vsc3dpc3pjei9BdmF0YXItR25vbWUtU2hlbGwtRXh0ZW5zaW9uIiwKICAidXVpZCI6ICJhdmF0YXJAcGF3ZWwuc3dpc3pjei5jb20iLAogICJ2ZXJzaW9uIjogOQp9"}}}
 , {"uuid": "default-workspace@mateusrodcosta.com", "name": "Default Workspace", "pname": "default-workspace", "description": "Switches to the specified workspace on login.\nUseful for fixed number of workspace setups where the first workspace isn't the main one.", "link": "https://extensions.gnome.org/extension/4783/default-workspace/", "shell_version_map": {"40": {"version": "2", "sha256": "05s1bzh917vv3j7xfx2gljwfzxkb9lsvp8zgcgch75hfvywvpgb9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaGVzIHRvIHRoZSBzcGVjaWZpZWQgd29ya3NwYWNlIG9uIGxvZ2luLlxuVXNlZnVsIGZvciBmaXhlZCBudW1iZXIgb2Ygd29ya3NwYWNlIHNldHVwcyB3aGVyZSB0aGUgZmlyc3Qgd29ya3NwYWNlIGlzbid0IHRoZSBtYWluIG9uZS4iLAogICJuYW1lIjogIkRlZmF1bHQgV29ya3NwYWNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYXRldXNSb2RDb3N0YS9nbm9tZS1zaGVsbC1leHRlbnNpb24tZGVmYXVsdC13b3Jrc3BhY2UiLAogICJ1dWlkIjogImRlZmF1bHQtd29ya3NwYWNlQG1hdGV1c3JvZGNvc3RhLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "05s1bzh917vv3j7xfx2gljwfzxkb9lsvp8zgcgch75hfvywvpgb9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaGVzIHRvIHRoZSBzcGVjaWZpZWQgd29ya3NwYWNlIG9uIGxvZ2luLlxuVXNlZnVsIGZvciBmaXhlZCBudW1iZXIgb2Ygd29ya3NwYWNlIHNldHVwcyB3aGVyZSB0aGUgZmlyc3Qgd29ya3NwYWNlIGlzbid0IHRoZSBtYWluIG9uZS4iLAogICJuYW1lIjogIkRlZmF1bHQgV29ya3NwYWNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYXRldXNSb2RDb3N0YS9nbm9tZS1zaGVsbC1leHRlbnNpb24tZGVmYXVsdC13b3Jrc3BhY2UiLAogICJ1dWlkIjogImRlZmF1bHQtd29ya3NwYWNlQG1hdGV1c3JvZGNvc3RhLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "alt-mouse@eexpss.gmail.com", "name": "Alt Mouse", "pname": "alt-mouse", "description": "Alt + Mouse control window, Detailed instructions are on the home page.", "link": "https://extensions.gnome.org/extension/4786/alt-mouse/", "shell_version_map": {"40": {"version": "8", "sha256": "0v1q4y6mbr1s2k1k8jiix4k9r57h1rb6v5jpzwj6g9asfrr3p0cn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsdCArIE1vdXNlIGNvbnRyb2wgd2luZG93LCBEZXRhaWxlZCBpbnN0cnVjdGlvbnMgYXJlIG9uIHRoZSBob21lIHBhZ2UuIiwKICAibmFtZSI6ICJBbHQgTW91c2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lZXhwcmVzcy9nbm9tZS1zaGVsbC1hbHQtbW91c2UiLAogICJ1dWlkIjogImFsdC1tb3VzZUBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}, "41": {"version": "8", "sha256": "0v1q4y6mbr1s2k1k8jiix4k9r57h1rb6v5jpzwj6g9asfrr3p0cn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFsdCArIE1vdXNlIGNvbnRyb2wgd2luZG93LCBEZXRhaWxlZCBpbnN0cnVjdGlvbnMgYXJlIG9uIHRoZSBob21lIHBhZ2UuIiwKICAibmFtZSI6ICJBbHQgTW91c2UiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lZXhwcmVzcy9nbm9tZS1zaGVsbC1hbHQtbW91c2UiLAogICJ1dWlkIjogImFsdC1tb3VzZUBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
+, {"uuid": "alt-mouse@eexpss.gmail.com", "name": "Alt Mouse", "pname": "alt-mouse", "description": "* Alt + Mouse control window, Detailed instructions are on the home page and an alt-mouse-diagram.png in extension directory. Disable desktop BackgroundMenu, Disable Panel dragMode, Add a gap at right screen edge. Add Top-Left and Top-Right corner as hot coner.", "link": "https://extensions.gnome.org/extension/4786/alt-mouse/", "shell_version_map": {"40": {"version": "10", "sha256": "1rm3z9n34w2hivg8mggfvj5l9frwk39kc92nkis2a208wq57p21k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogQWx0ICsgTW91c2UgY29udHJvbCB3aW5kb3csIERldGFpbGVkIGluc3RydWN0aW9ucyBhcmUgb24gdGhlIGhvbWUgcGFnZSBhbmQgYW4gYWx0LW1vdXNlLWRpYWdyYW0ucG5nIGluIGV4dGVuc2lvbiBkaXJlY3RvcnkuIERpc2FibGUgZGVza3RvcCBCYWNrZ3JvdW5kTWVudSwgRGlzYWJsZSBQYW5lbCBkcmFnTW9kZSwgQWRkIGEgZ2FwIGF0IHJpZ2h0IHNjcmVlbiBlZGdlLiBBZGQgVG9wLUxlZnQgYW5kIFRvcC1SaWdodCBjb3JuZXIgYXMgaG90IGNvbmVyLiIsCiAgIm5hbWUiOiAiQWx0IE1vdXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtYWx0LW1vdXNlIiwKICAidXVpZCI6ICJhbHQtbW91c2VAZWV4cHNzLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMAp9"}, "41": {"version": "10", "sha256": "1rm3z9n34w2hivg8mggfvj5l9frwk39kc92nkis2a208wq57p21k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogQWx0ICsgTW91c2UgY29udHJvbCB3aW5kb3csIERldGFpbGVkIGluc3RydWN0aW9ucyBhcmUgb24gdGhlIGhvbWUgcGFnZSBhbmQgYW4gYWx0LW1vdXNlLWRpYWdyYW0ucG5nIGluIGV4dGVuc2lvbiBkaXJlY3RvcnkuIERpc2FibGUgZGVza3RvcCBCYWNrZ3JvdW5kTWVudSwgRGlzYWJsZSBQYW5lbCBkcmFnTW9kZSwgQWRkIGEgZ2FwIGF0IHJpZ2h0IHNjcmVlbiBlZGdlLiBBZGQgVG9wLUxlZnQgYW5kIFRvcC1SaWdodCBjb3JuZXIgYXMgaG90IGNvbmVyLiIsCiAgIm5hbWUiOiAiQWx0IE1vdXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtYWx0LW1vdXNlIiwKICAidXVpZCI6ICJhbHQtbW91c2VAZWV4cHNzLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMAp9"}, "42": {"version": "10", "sha256": "1rm3z9n34w2hivg8mggfvj5l9frwk39kc92nkis2a208wq57p21k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogQWx0ICsgTW91c2UgY29udHJvbCB3aW5kb3csIERldGFpbGVkIGluc3RydWN0aW9ucyBhcmUgb24gdGhlIGhvbWUgcGFnZSBhbmQgYW4gYWx0LW1vdXNlLWRpYWdyYW0ucG5nIGluIGV4dGVuc2lvbiBkaXJlY3RvcnkuIERpc2FibGUgZGVza3RvcCBCYWNrZ3JvdW5kTWVudSwgRGlzYWJsZSBQYW5lbCBkcmFnTW9kZSwgQWRkIGEgZ2FwIGF0IHJpZ2h0IHNjcmVlbiBlZGdlLiBBZGQgVG9wLUxlZnQgYW5kIFRvcC1SaWdodCBjb3JuZXIgYXMgaG90IGNvbmVyLiIsCiAgIm5hbWUiOiAiQWx0IE1vdXNlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtYWx0LW1vdXNlIiwKICAidXVpZCI6ICJhbHQtbW91c2VAZWV4cHNzLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAxMAp9"}}}
 , {"uuid": "workspace-switcher-manager@G-dH.github.com", "name": "Workspace Switcher Manager", "pname": "workspace-switcher-manager", "description": "Make the workspace switcher popup useful! Customize your workspace switcher behavior and content, dimensions, position, orientation and colors of its popup indicator.\n\n- all GNOME workspace related options at one place\n- adds ws switcher Wraparoud and Ignore Last (empty) Workspace options\n- allows to disable or customize switcher popup\n- allows adding content to the workspace switcher popup - Workspace Name, Current Application Name, Workspace Index\n- ws switcher popup appearance customization includes position on screen, timings, size, colors , orientation", "link": "https://extensions.gnome.org/extension/4788/workspace-switcher-manager/", "shell_version_map": {"38": {"version": "2", "sha256": "1zxsi1pclxm01y0mj2hs5xa6j401k9fl85d4z592667gshnr9y0f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIHdvcmtzcGFjZSBzd2l0Y2hlciBwb3B1cCB1c2VmdWwhIEN1c3RvbWl6ZSB5b3VyIHdvcmtzcGFjZSBzd2l0Y2hlciBiZWhhdmlvciBhbmQgY29udGVudCwgZGltZW5zaW9ucywgcG9zaXRpb24sIG9yaWVudGF0aW9uIGFuZCBjb2xvcnMgb2YgaXRzIHBvcHVwIGluZGljYXRvci5cblxuLSBhbGwgR05PTUUgd29ya3NwYWNlIHJlbGF0ZWQgb3B0aW9ucyBhdCBvbmUgcGxhY2Vcbi0gYWRkcyB3cyBzd2l0Y2hlciBXcmFwYXJvdWQgYW5kIElnbm9yZSBMYXN0IChlbXB0eSkgV29ya3NwYWNlIG9wdGlvbnNcbi0gYWxsb3dzIHRvIGRpc2FibGUgb3IgY3VzdG9taXplIHN3aXRjaGVyIHBvcHVwXG4tIGFsbG93cyBhZGRpbmcgY29udGVudCB0byB0aGUgd29ya3NwYWNlIHN3aXRjaGVyIHBvcHVwIC0gV29ya3NwYWNlIE5hbWUsIEN1cnJlbnQgQXBwbGljYXRpb24gTmFtZSwgV29ya3NwYWNlIEluZGV4XG4tIHdzIHN3aXRjaGVyIHBvcHVwIGFwcGVhcmFuY2UgY3VzdG9taXphdGlvbiBpbmNsdWRlcyBwb3NpdGlvbiBvbiBzY3JlZW4sIHRpbWluZ3MsIHNpemUsIGNvbG9ycyAsIG9yaWVudGF0aW9uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid29ya3NwYWNlLXN3aXRjaGVyLW1hbmFnZXIiLAogICJuYW1lIjogIldvcmtzcGFjZSBTd2l0Y2hlciBNYW5hZ2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmtzcGFjZS1zd2l0Y2hlci1tYW5hZ2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9HLWRIL3dvcmtzcGFjZS1zd2l0Y2hlci1tYW5hZ2VyIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2Utc3dpdGNoZXItbWFuYWdlckBHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}, "40": {"version": "2", "sha256": "1zxsi1pclxm01y0mj2hs5xa6j401k9fl85d4z592667gshnr9y0f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIHdvcmtzcGFjZSBzd2l0Y2hlciBwb3B1cCB1c2VmdWwhIEN1c3RvbWl6ZSB5b3VyIHdvcmtzcGFjZSBzd2l0Y2hlciBiZWhhdmlvciBhbmQgY29udGVudCwgZGltZW5zaW9ucywgcG9zaXRpb24sIG9yaWVudGF0aW9uIGFuZCBjb2xvcnMgb2YgaXRzIHBvcHVwIGluZGljYXRvci5cblxuLSBhbGwgR05PTUUgd29ya3NwYWNlIHJlbGF0ZWQgb3B0aW9ucyBhdCBvbmUgcGxhY2Vcbi0gYWRkcyB3cyBzd2l0Y2hlciBXcmFwYXJvdWQgYW5kIElnbm9yZSBMYXN0IChlbXB0eSkgV29ya3NwYWNlIG9wdGlvbnNcbi0gYWxsb3dzIHRvIGRpc2FibGUgb3IgY3VzdG9taXplIHN3aXRjaGVyIHBvcHVwXG4tIGFsbG93cyBhZGRpbmcgY29udGVudCB0byB0aGUgd29ya3NwYWNlIHN3aXRjaGVyIHBvcHVwIC0gV29ya3NwYWNlIE5hbWUsIEN1cnJlbnQgQXBwbGljYXRpb24gTmFtZSwgV29ya3NwYWNlIEluZGV4XG4tIHdzIHN3aXRjaGVyIHBvcHVwIGFwcGVhcmFuY2UgY3VzdG9taXphdGlvbiBpbmNsdWRlcyBwb3NpdGlvbiBvbiBzY3JlZW4sIHRpbWluZ3MsIHNpemUsIGNvbG9ycyAsIG9yaWVudGF0aW9uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid29ya3NwYWNlLXN3aXRjaGVyLW1hbmFnZXIiLAogICJuYW1lIjogIldvcmtzcGFjZSBTd2l0Y2hlciBNYW5hZ2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmtzcGFjZS1zd2l0Y2hlci1tYW5hZ2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9HLWRIL3dvcmtzcGFjZS1zd2l0Y2hlci1tYW5hZ2VyIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2Utc3dpdGNoZXItbWFuYWdlckBHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}, "41": {"version": "2", "sha256": "1zxsi1pclxm01y0mj2hs5xa6j401k9fl85d4z592667gshnr9y0f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIHdvcmtzcGFjZSBzd2l0Y2hlciBwb3B1cCB1c2VmdWwhIEN1c3RvbWl6ZSB5b3VyIHdvcmtzcGFjZSBzd2l0Y2hlciBiZWhhdmlvciBhbmQgY29udGVudCwgZGltZW5zaW9ucywgcG9zaXRpb24sIG9yaWVudGF0aW9uIGFuZCBjb2xvcnMgb2YgaXRzIHBvcHVwIGluZGljYXRvci5cblxuLSBhbGwgR05PTUUgd29ya3NwYWNlIHJlbGF0ZWQgb3B0aW9ucyBhdCBvbmUgcGxhY2Vcbi0gYWRkcyB3cyBzd2l0Y2hlciBXcmFwYXJvdWQgYW5kIElnbm9yZSBMYXN0IChlbXB0eSkgV29ya3NwYWNlIG9wdGlvbnNcbi0gYWxsb3dzIHRvIGRpc2FibGUgb3IgY3VzdG9taXplIHN3aXRjaGVyIHBvcHVwXG4tIGFsbG93cyBhZGRpbmcgY29udGVudCB0byB0aGUgd29ya3NwYWNlIHN3aXRjaGVyIHBvcHVwIC0gV29ya3NwYWNlIE5hbWUsIEN1cnJlbnQgQXBwbGljYXRpb24gTmFtZSwgV29ya3NwYWNlIEluZGV4XG4tIHdzIHN3aXRjaGVyIHBvcHVwIGFwcGVhcmFuY2UgY3VzdG9taXphdGlvbiBpbmNsdWRlcyBwb3NpdGlvbiBvbiBzY3JlZW4sIHRpbWluZ3MsIHNpemUsIGNvbG9ycyAsIG9yaWVudGF0aW9uIiwKICAiZ2V0dGV4dC1kb21haW4iOiAid29ya3NwYWNlLXN3aXRjaGVyLW1hbmFnZXIiLAogICJuYW1lIjogIldvcmtzcGFjZSBTd2l0Y2hlciBNYW5hZ2VyIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLndvcmtzcGFjZS1zd2l0Y2hlci1tYW5hZ2VyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9HLWRIL3dvcmtzcGFjZS1zd2l0Y2hlci1tYW5hZ2VyIiwKICAidXVpZCI6ICJ3b3Jrc3BhY2Utc3dpdGNoZXItbWFuYWdlckBHLWRILmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"uuid": "compare@eexpss.gmail.com", "name": "Compare or Open", "pname": "compare-filedir-from-clip", "description": "Copy/Select two Dirs/Files from anywhere such as `nautilus` or `gnome-terminal`, and then compare them (use `meld`) or open with Ctrl-O or open with context-menu.", "link": "https://extensions.gnome.org/extension/4789/compare-filedir-from-clip/", "shell_version_map": {"40": {"version": "13", "sha256": "04ps81aqn3vinlqwcp5pacj77cmbrhaz6wsby0c7v9yc1cjcazvz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvcHkvU2VsZWN0IHR3byBEaXJzL0ZpbGVzIGZyb20gYW55d2hlcmUgc3VjaCBhcyBgbmF1dGlsdXNgIG9yIGBnbm9tZS10ZXJtaW5hbGAsIGFuZCB0aGVuIGNvbXBhcmUgdGhlbSAodXNlIGBtZWxkYCkgb3Igb3BlbiB3aXRoIEN0cmwtTyBvciBvcGVuIHdpdGggY29udGV4dC1tZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogImNvbXBhcmUiLAogICJuYW1lIjogIkNvbXBhcmUgb3IgT3BlbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jb21wYXJlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY29tcGFyZSIsCiAgInV1aWQiOiAiY29tcGFyZUBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEzCn0="}, "41": {"version": "13", "sha256": "04ps81aqn3vinlqwcp5pacj77cmbrhaz6wsby0c7v9yc1cjcazvz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvcHkvU2VsZWN0IHR3byBEaXJzL0ZpbGVzIGZyb20gYW55d2hlcmUgc3VjaCBhcyBgbmF1dGlsdXNgIG9yIGBnbm9tZS10ZXJtaW5hbGAsIGFuZCB0aGVuIGNvbXBhcmUgdGhlbSAodXNlIGBtZWxkYCkgb3Igb3BlbiB3aXRoIEN0cmwtTyBvciBvcGVuIHdpdGggY29udGV4dC1tZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogImNvbXBhcmUiLAogICJuYW1lIjogIkNvbXBhcmUgb3IgT3BlbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jb21wYXJlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY29tcGFyZSIsCiAgInV1aWQiOiAiY29tcGFyZUBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEzCn0="}}}
+, {"uuid": "compare@eexpss.gmail.com", "name": "Compare or Open", "pname": "compare-filedir-from-clip", "description": "Copy/Select two Dirs/Files from anywhere such as `nautilus` or `gnome-terminal`, and then compare them (use `meld`) or open with Ctrl-O or open with context-menu.", "link": "https://extensions.gnome.org/extension/4789/compare-filedir-from-clip/", "shell_version_map": {"40": {"version": "13", "sha256": "04ps81aqn3vinlqwcp5pacj77cmbrhaz6wsby0c7v9yc1cjcazvz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvcHkvU2VsZWN0IHR3byBEaXJzL0ZpbGVzIGZyb20gYW55d2hlcmUgc3VjaCBhcyBgbmF1dGlsdXNgIG9yIGBnbm9tZS10ZXJtaW5hbGAsIGFuZCB0aGVuIGNvbXBhcmUgdGhlbSAodXNlIGBtZWxkYCkgb3Igb3BlbiB3aXRoIEN0cmwtTyBvciBvcGVuIHdpdGggY29udGV4dC1tZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogImNvbXBhcmUiLAogICJuYW1lIjogIkNvbXBhcmUgb3IgT3BlbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jb21wYXJlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY29tcGFyZSIsCiAgInV1aWQiOiAiY29tcGFyZUBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEzCn0="}, "41": {"version": "13", "sha256": "04ps81aqn3vinlqwcp5pacj77cmbrhaz6wsby0c7v9yc1cjcazvz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvcHkvU2VsZWN0IHR3byBEaXJzL0ZpbGVzIGZyb20gYW55d2hlcmUgc3VjaCBhcyBgbmF1dGlsdXNgIG9yIGBnbm9tZS10ZXJtaW5hbGAsIGFuZCB0aGVuIGNvbXBhcmUgdGhlbSAodXNlIGBtZWxkYCkgb3Igb3BlbiB3aXRoIEN0cmwtTyBvciBvcGVuIHdpdGggY29udGV4dC1tZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogImNvbXBhcmUiLAogICJuYW1lIjogIkNvbXBhcmUgb3IgT3BlbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jb21wYXJlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY29tcGFyZSIsCiAgInV1aWQiOiAiY29tcGFyZUBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEzCn0="}, "42": {"version": "13", "sha256": "04ps81aqn3vinlqwcp5pacj77cmbrhaz6wsby0c7v9yc1cjcazvz", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvcHkvU2VsZWN0IHR3byBEaXJzL0ZpbGVzIGZyb20gYW55d2hlcmUgc3VjaCBhcyBgbmF1dGlsdXNgIG9yIGBnbm9tZS10ZXJtaW5hbGAsIGFuZCB0aGVuIGNvbXBhcmUgdGhlbSAodXNlIGBtZWxkYCkgb3Igb3BlbiB3aXRoIEN0cmwtTyBvciBvcGVuIHdpdGggY29udGV4dC1tZW51LiIsCiAgImdldHRleHQtZG9tYWluIjogImNvbXBhcmUiLAogICJuYW1lIjogIkNvbXBhcmUgb3IgT3BlbiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5jb21wYXJlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY29tcGFyZSIsCiAgInV1aWQiOiAiY29tcGFyZUBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEzCn0="}}}
 , {"uuid": "freq-boost-switch@metal03326", "name": "Frequency Boost Switch", "pname": "frequency-boost-switch", "description": "Add a toggle to enable/disable CPU frequency boost in Gnome Power Profiles menu.\n\nMain features:\n\n- Toggle Frequency Boost from the same place you set power profile\n- Toggle Frequency Boost regardless of the set power profile\n- Lightweight (no service is installed) 1 3\n- Option to set on boot (Persist) 2 3\n- Translation (currently only English and Bulgarian)\n\n1 Asks for permission every time user flips the switch\n2 Will prompt user for permission 5s after login, if boost needs to be changed\n3 Permission prompt can be removed by adding Polkit rules. Check extension preferences.\n\nRequirements:\n\n- GNOME >= 41 (power profiles menu doesn't exist before that)\n- power-profiles-daemon (power profiles menu doesn't show if not installed and enabled)\n- pkexec (needed to ask the user for permissions)\n\nAll tests are done on Fedora.\n\nIf you have any issues, please first check FAQ (https://gitlab.com/metal03326/gnome-frequency-boost-switch#faq) and if that doesn't help, open an issue (https://gitlab.com/metal03326/gnome-frequency-boost-switch/-/issues)", "link": "https://extensions.gnome.org/extension/4792/frequency-boost-switch/", "shell_version_map": {"41": {"version": "3", "sha256": "0cw3npc3ypp0cpzy0k2iim748dc7d4abkfmkd9cs6h27g9wgmfk6", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIHRvZ2dsZSB0byBlbmFibGUvZGlzYWJsZSBDUFUgZnJlcXVlbmN5IGJvb3N0IGluIEdub21lIFBvd2VyIFByb2ZpbGVzIG1lbnUuXG5cbk1haW4gZmVhdHVyZXM6XG5cbi0gVG9nZ2xlIEZyZXF1ZW5jeSBCb29zdCBmcm9tIHRoZSBzYW1lIHBsYWNlIHlvdSBzZXQgcG93ZXIgcHJvZmlsZVxuLSBUb2dnbGUgRnJlcXVlbmN5IEJvb3N0IHJlZ2FyZGxlc3Mgb2YgdGhlIHNldCBwb3dlciBwcm9maWxlXG4tIExpZ2h0d2VpZ2h0IChubyBzZXJ2aWNlIGlzIGluc3RhbGxlZCkgMSAzXG4tIE9wdGlvbiB0byBzZXQgb24gYm9vdCAoUGVyc2lzdCkgMiAzXG4tIFRyYW5zbGF0aW9uIChjdXJyZW50bHkgb25seSBFbmdsaXNoIGFuZCBCdWxnYXJpYW4pXG5cbjEgQXNrcyBmb3IgcGVybWlzc2lvbiBldmVyeSB0aW1lIHVzZXIgZmxpcHMgdGhlIHN3aXRjaFxuMiBXaWxsIHByb21wdCB1c2VyIGZvciBwZXJtaXNzaW9uIDVzIGFmdGVyIGxvZ2luLCBpZiBib29zdCBuZWVkcyB0byBiZSBjaGFuZ2VkXG4zIFBlcm1pc3Npb24gcHJvbXB0IGNhbiBiZSByZW1vdmVkIGJ5IGFkZGluZyBQb2xraXQgcnVsZXMuIENoZWNrIGV4dGVuc2lvbiBwcmVmZXJlbmNlcy5cblxuUmVxdWlyZW1lbnRzOlxuXG4tIEdOT01FID49IDQxIChwb3dlciBwcm9maWxlcyBtZW51IGRvZXNuJ3QgZXhpc3QgYmVmb3JlIHRoYXQpXG4tIHBvd2VyLXByb2ZpbGVzLWRhZW1vbiAocG93ZXIgcHJvZmlsZXMgbWVudSBkb2Vzbid0IHNob3cgaWYgbm90IGluc3RhbGxlZCBhbmQgZW5hYmxlZClcbi0gcGtleGVjIChuZWVkZWQgdG8gYXNrIHRoZSB1c2VyIGZvciBwZXJtaXNzaW9ucylcblxuQWxsIHRlc3RzIGFyZSBkb25lIG9uIEZlZG9yYS5cblxuSWYgeW91IGhhdmUgYW55IGlzc3VlcywgcGxlYXNlIGZpcnN0IGNoZWNrIEZBUSAoaHR0cHM6Ly9naXRsYWIuY29tL21ldGFsMDMzMjYvZ25vbWUtZnJlcXVlbmN5LWJvb3N0LXN3aXRjaCNmYXEpIGFuZCBpZiB0aGF0IGRvZXNuJ3QgaGVscCwgb3BlbiBhbiBpc3N1ZSAoaHR0cHM6Ly9naXRsYWIuY29tL21ldGFsMDMzMjYvZ25vbWUtZnJlcXVlbmN5LWJvb3N0LXN3aXRjaC8tL2lzc3VlcykiLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJmcmVxLWJvb3N0LXN3aXRjaEBtZXRhbDAzMzI2IiwKICAibmFtZSI6ICJGcmVxdWVuY3kgQm9vc3QgU3dpdGNoIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmZyZXEtYm9vc3Qtc3dpdGNoIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL21ldGFsMDMzMjYvZ25vbWUtZnJlcXVlbmN5LWJvb3N0LXN3aXRjaCIsCiAgInV1aWQiOiAiZnJlcS1ib29zdC1zd2l0Y2hAbWV0YWwwMzMyNiIsCiAgInZlcnNpb24iOiAzCn0="}}}
 , {"uuid": "pop-launcher-super-key@ManeLippert", "name": "Pop Launcher Super-Key", "pname": "pop-launcher-super-key", "description": "Fork of Pop COSMIC: Binds Pop Launcher on Super-Key when Pop COSMIC Extension is disabled", "link": "https://extensions.gnome.org/extension/4797/pop-launcher-super-key/", "shell_version_map": {"38": {"version": "3", "sha256": "04bln8wkn0s6di03qqxa7bzclb2p8w5ic4mbmh31ar041plzj778", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2YgUG9wIENPU01JQzogQmluZHMgUG9wIExhdW5jaGVyIG9uIFN1cGVyLUtleSB3aGVuIFBvcCBDT1NNSUMgRXh0ZW5zaW9uIGlzIGRpc2FibGVkIiwKICAibmFtZSI6ICJQb3AgTGF1bmNoZXIgU3VwZXItS2V5IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJTeXN0ZW03NiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wb3AtbGF1bmNoZXItc3VwZXIta2V5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYW5lTGlwcGVydC9wb3AtbGF1bmNoZXItc3VwZXIta2V5IiwKICAidXVpZCI6ICJwb3AtbGF1bmNoZXItc3VwZXIta2V5QE1hbmVMaXBwZXJ0IiwKICAidmVyc2lvbiI6IDMKfQ=="}, "40": {"version": "3", "sha256": "04bln8wkn0s6di03qqxa7bzclb2p8w5ic4mbmh31ar041plzj778", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2YgUG9wIENPU01JQzogQmluZHMgUG9wIExhdW5jaGVyIG9uIFN1cGVyLUtleSB3aGVuIFBvcCBDT1NNSUMgRXh0ZW5zaW9uIGlzIGRpc2FibGVkIiwKICAibmFtZSI6ICJQb3AgTGF1bmNoZXIgU3VwZXItS2V5IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJTeXN0ZW03NiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wb3AtbGF1bmNoZXItc3VwZXIta2V5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYW5lTGlwcGVydC9wb3AtbGF1bmNoZXItc3VwZXIta2V5IiwKICAidXVpZCI6ICJwb3AtbGF1bmNoZXItc3VwZXIta2V5QE1hbmVMaXBwZXJ0IiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "04bln8wkn0s6di03qqxa7bzclb2p8w5ic4mbmh31ar041plzj778", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZvcmsgb2YgUG9wIENPU01JQzogQmluZHMgUG9wIExhdW5jaGVyIG9uIFN1cGVyLUtleSB3aGVuIFBvcCBDT1NNSUMgRXh0ZW5zaW9uIGlzIGRpc2FibGVkIiwKICAibmFtZSI6ICJQb3AgTGF1bmNoZXIgU3VwZXItS2V5IiwKICAib3JpZ2luYWwtYXV0aG9ycyI6ICJTeXN0ZW03NiIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5wb3AtbGF1bmNoZXItc3VwZXIta2V5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9NYW5lTGlwcGVydC9wb3AtbGF1bmNoZXItc3VwZXIta2V5IiwKICAidXVpZCI6ICJwb3AtbGF1bmNoZXItc3VwZXIta2V5QE1hbmVMaXBwZXJ0IiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "thinkpad-battery-threshold@marcosdalvarez.org", "name": "Thinkpad Battery Threshold", "pname": "thinkpad-battery-threshold", "description": "Enable/Disable battery threshold on Lenovo Thinkpad laptops (If available)\n\nTo check if the function is available, see if the files 'charge_control_start_threshold' and 'charge_control_end_threshold' (valid alternatives: 'charge_start_threshold' and 'charge_stop_threshold') exist in the /sys/class/power_supply/BAT0 directory, also you must have permissions to read and write (in case you do not have write permissions, the root password will be requested to modify the values).", "link": "https://extensions.gnome.org/extension/4798/thinkpad-battery-threshold/", "shell_version_map": {"41": {"version": "5", "sha256": "1pj5hxmmx91fq2bbfli5q3l3fqv677add6h1nijznj9fc9mlvxiv", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZS9EaXNhYmxlIGJhdHRlcnkgdGhyZXNob2xkIG9uIExlbm92byBUaGlua3BhZCBsYXB0b3BzIChJZiBhdmFpbGFibGUpXG5cblRvIGNoZWNrIGlmIHRoZSBmdW5jdGlvbiBpcyBhdmFpbGFibGUsIHNlZSBpZiB0aGUgZmlsZXMgJ2NoYXJnZV9jb250cm9sX3N0YXJ0X3RocmVzaG9sZCcgYW5kICdjaGFyZ2VfY29udHJvbF9lbmRfdGhyZXNob2xkJyAodmFsaWQgYWx0ZXJuYXRpdmVzOiAnY2hhcmdlX3N0YXJ0X3RocmVzaG9sZCcgYW5kICdjaGFyZ2Vfc3RvcF90aHJlc2hvbGQnKSBleGlzdCBpbiB0aGUgL3N5cy9jbGFzcy9wb3dlcl9zdXBwbHkvQkFUMCBkaXJlY3RvcnksIGFsc28geW91IG11c3QgaGF2ZSBwZXJtaXNzaW9ucyB0byByZWFkIGFuZCB3cml0ZSAoaW4gY2FzZSB5b3UgZG8gbm90IGhhdmUgd3JpdGUgcGVybWlzc2lvbnMsIHRoZSByb290IHBhc3N3b3JkIHdpbGwgYmUgcmVxdWVzdGVkIHRvIG1vZGlmeSB0aGUgdmFsdWVzKS4iLAogICJnZXR0ZXh0LWRvbWFpbiI6ICJ0aGlua3BhZC1iYXR0ZXJ5LXRocmVzaG9sZEBtYXJjb3NkYWx2YXJlei5vcmciLAogICJuYW1lIjogIlRoaW5rcGFkIEJhdHRlcnkgVGhyZXNob2xkIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnRoaW5rcGFkLWJhdHRlcnktdGhyZXNob2xkIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL21hcmNvc2RhbHZhcmV6L3RoaW5rcGFkLWJhdHRlcnktdGhyZXNob2xkLWV4dGVuc2lvbiIsCiAgInV1aWQiOiAidGhpbmtwYWQtYmF0dGVyeS10aHJlc2hvbGRAbWFyY29zZGFsdmFyZXoub3JnIiwKICAidmVyc2lvbiI6IDUKfQ=="}}}
+, {"uuid": "thinkpad-battery-threshold@marcosdalvarez.org", "name": "Thinkpad Battery Threshold", "pname": "thinkpad-battery-threshold", "description": "Enable/Disable battery threshold on Lenovo Thinkpad laptops (If available)\n\nTo check if the function is available, see if the files 'charge_control_start_threshold' and 'charge_control_end_threshold' (valid alternatives: 'charge_start_threshold' and 'charge_stop_threshold') exist in the /sys/class/power_supply/BAT0 directory, also you must have permissions to read and write (in case you do not have write permissions, the root password will be requested to modify the values).\n\nv6: Added option to control second battery (dock) thresholds. Try this! I don't have a dock!!!", "link": "https://extensions.gnome.org/extension/4798/thinkpad-battery-threshold/", "shell_version_map": {"41": {"version": "6", "sha256": "146jpic7zyap68z2q6qw81n6lpgcx5sy55i06j1qiazv0x3rv9zd", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkVuYWJsZS9EaXNhYmxlIGJhdHRlcnkgdGhyZXNob2xkIG9uIExlbm92byBUaGlua3BhZCBsYXB0b3BzIChJZiBhdmFpbGFibGUpXG5cblRvIGNoZWNrIGlmIHRoZSBmdW5jdGlvbiBpcyBhdmFpbGFibGUsIHNlZSBpZiB0aGUgZmlsZXMgJ2NoYXJnZV9jb250cm9sX3N0YXJ0X3RocmVzaG9sZCcgYW5kICdjaGFyZ2VfY29udHJvbF9lbmRfdGhyZXNob2xkJyAodmFsaWQgYWx0ZXJuYXRpdmVzOiAnY2hhcmdlX3N0YXJ0X3RocmVzaG9sZCcgYW5kICdjaGFyZ2Vfc3RvcF90aHJlc2hvbGQnKSBleGlzdCBpbiB0aGUgL3N5cy9jbGFzcy9wb3dlcl9zdXBwbHkvQkFUMCBkaXJlY3RvcnksIGFsc28geW91IG11c3QgaGF2ZSBwZXJtaXNzaW9ucyB0byByZWFkIGFuZCB3cml0ZSAoaW4gY2FzZSB5b3UgZG8gbm90IGhhdmUgd3JpdGUgcGVybWlzc2lvbnMsIHRoZSByb290IHBhc3N3b3JkIHdpbGwgYmUgcmVxdWVzdGVkIHRvIG1vZGlmeSB0aGUgdmFsdWVzKS5cblxudjY6IEFkZGVkIG9wdGlvbiB0byBjb250cm9sIHNlY29uZCBiYXR0ZXJ5IChkb2NrKSB0aHJlc2hvbGRzLiBUcnkgdGhpcyEgSSBkb24ndCBoYXZlIGEgZG9jayEhISIsCiAgImdldHRleHQtZG9tYWluIjogInRoaW5rcGFkLWJhdHRlcnktdGhyZXNob2xkQG1hcmNvc2RhbHZhcmV6Lm9yZyIsCiAgIm5hbWUiOiAiVGhpbmtwYWQgQmF0dGVyeSBUaHJlc2hvbGQiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMudGhpbmtwYWQtYmF0dGVyeS10aHJlc2hvbGQiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vbWFyY29zZGFsdmFyZXovdGhpbmtwYWQtYmF0dGVyeS10aHJlc2hvbGQtZXh0ZW5zaW9uIiwKICAidXVpZCI6ICJ0aGlua3BhZC1iYXR0ZXJ5LXRocmVzaG9sZEBtYXJjb3NkYWx2YXJlei5vcmciLAogICJ2ZXJzaW9uIjogNgp9"}}}
 , {"uuid": "lock-screen-message@advendradeswanta.gitlab.com", "name": "Lock Screen Message", "pname": "lock-screen-message", "description": "Simple extension that let's you add your message to the lock screen (unlockDialog)", "link": "https://extensions.gnome.org/extension/4801/lock-screen-message/", "shell_version_map": {"40": {"version": "2", "sha256": "12q3z5wdbbg9sa570ig5sw6qk70ykhy5zsx7ygvi2zgla52v0hq9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdGhhdCBsZXQncyB5b3UgYWRkIHlvdXIgbWVzc2FnZSB0byB0aGUgbG9jayBzY3JlZW4gKHVubG9ja0RpYWxvZykiLAogICJuYW1lIjogIkxvY2sgU2NyZWVuIE1lc3NhZ2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubG9jay1zY3JlZW4tbWVzc2FnZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vQWR2ZW5kcmFEZXN3YW50YS9sb2NrLXNjcmVlbi1tZXNzYWdlIiwKICAidXVpZCI6ICJsb2NrLXNjcmVlbi1tZXNzYWdlQGFkdmVuZHJhZGVzd2FudGEuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "12q3z5wdbbg9sa570ig5sw6qk70ykhy5zsx7ygvi2zgla52v0hq9", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNpbXBsZSBleHRlbnNpb24gdGhhdCBsZXQncyB5b3UgYWRkIHlvdXIgbWVzc2FnZSB0byB0aGUgbG9jayBzY3JlZW4gKHVubG9ja0RpYWxvZykiLAogICJuYW1lIjogIkxvY2sgU2NyZWVuIE1lc3NhZ2UiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMubG9jay1zY3JlZW4tbWVzc2FnZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGxhYi5jb20vQWR2ZW5kcmFEZXN3YW50YS9sb2NrLXNjcmVlbi1tZXNzYWdlIiwKICAidXVpZCI6ICJsb2NrLXNjcmVlbi1tZXNzYWdlQGFkdmVuZHJhZGVzd2FudGEuZ2l0bGFiLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
-, {"uuid": "panel-corners@aunetx", "name": "Panel corners", "pname": "panel-corners", "description": "A GNOME shell extension to keep the old topbar corners, which were removed for GNOME 42. It also allows you to customize the rounded corners, even if you use GNOME 40 or 41.\n\nIt is widely based on already existing gnome-shell code, and on a merge request by Alexander Mikhaylenko: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1328", "link": "https://extensions.gnome.org/extension/4805/panel-corners/", "shell_version_map": {"40": {"version": "3", "sha256": "0piacfxwa5ca5cnvrz0s8pqykfixynmvvdmh1rznfsh407v1kw1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgc2hlbGwgZXh0ZW5zaW9uIHRvIGtlZXAgdGhlIG9sZCB0b3BiYXIgY29ybmVycywgd2hpY2ggd2VyZSByZW1vdmVkIGZvciBHTk9NRSA0Mi4gSXQgYWxzbyBhbGxvd3MgeW91IHRvIGN1c3RvbWl6ZSB0aGUgcm91bmRlZCBjb3JuZXJzLCBldmVuIGlmIHlvdSB1c2UgR05PTUUgNDAgb3IgNDEuXG5cbkl0IGlzIHdpZGVseSBiYXNlZCBvbiBhbHJlYWR5IGV4aXN0aW5nIGdub21lLXNoZWxsIGNvZGUsIGFuZCBvbiBhIG1lcmdlIHJlcXVlc3QgYnkgQWxleGFuZGVyIE1pa2hheWxlbmtvOiBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwvLS9tZXJnZV9yZXF1ZXN0cy8xMzI4IiwKICAibmFtZSI6ICJQYW5lbCBjb3JuZXJzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWNvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdW5ldHgvcGFuZWwtY29ybmVycyIsCiAgInV1aWQiOiAicGFuZWwtY29ybmVyc0BhdW5ldHgiLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "0piacfxwa5ca5cnvrz0s8pqykfixynmvvdmh1rznfsh407v1kw1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgc2hlbGwgZXh0ZW5zaW9uIHRvIGtlZXAgdGhlIG9sZCB0b3BiYXIgY29ybmVycywgd2hpY2ggd2VyZSByZW1vdmVkIGZvciBHTk9NRSA0Mi4gSXQgYWxzbyBhbGxvd3MgeW91IHRvIGN1c3RvbWl6ZSB0aGUgcm91bmRlZCBjb3JuZXJzLCBldmVuIGlmIHlvdSB1c2UgR05PTUUgNDAgb3IgNDEuXG5cbkl0IGlzIHdpZGVseSBiYXNlZCBvbiBhbHJlYWR5IGV4aXN0aW5nIGdub21lLXNoZWxsIGNvZGUsIGFuZCBvbiBhIG1lcmdlIHJlcXVlc3QgYnkgQWxleGFuZGVyIE1pa2hheWxlbmtvOiBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwvLS9tZXJnZV9yZXF1ZXN0cy8xMzI4IiwKICAibmFtZSI6ICJQYW5lbCBjb3JuZXJzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWNvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdW5ldHgvcGFuZWwtY29ybmVycyIsCiAgInV1aWQiOiAicGFuZWwtY29ybmVyc0BhdW5ldHgiLAogICJ2ZXJzaW9uIjogMwp9"}}}
+, {"uuid": "panel-corners@aunetx", "name": "Panel corners", "pname": "panel-corners", "description": "A GNOME shell extension to keep the old topbar corners, which were removed for GNOME 42. It also allows you to customize the rounded corners, even if you use GNOME 40 or 41.\n\nIt is widely based on already existing gnome-shell code, and on a merge request by Alexander Mikhaylenko: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1328", "link": "https://extensions.gnome.org/extension/4805/panel-corners/", "shell_version_map": {"40": {"version": "3", "sha256": "0piacfxwa5ca5cnvrz0s8pqykfixynmvvdmh1rznfsh407v1kw1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgc2hlbGwgZXh0ZW5zaW9uIHRvIGtlZXAgdGhlIG9sZCB0b3BiYXIgY29ybmVycywgd2hpY2ggd2VyZSByZW1vdmVkIGZvciBHTk9NRSA0Mi4gSXQgYWxzbyBhbGxvd3MgeW91IHRvIGN1c3RvbWl6ZSB0aGUgcm91bmRlZCBjb3JuZXJzLCBldmVuIGlmIHlvdSB1c2UgR05PTUUgNDAgb3IgNDEuXG5cbkl0IGlzIHdpZGVseSBiYXNlZCBvbiBhbHJlYWR5IGV4aXN0aW5nIGdub21lLXNoZWxsIGNvZGUsIGFuZCBvbiBhIG1lcmdlIHJlcXVlc3QgYnkgQWxleGFuZGVyIE1pa2hheWxlbmtvOiBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwvLS9tZXJnZV9yZXF1ZXN0cy8xMzI4IiwKICAibmFtZSI6ICJQYW5lbCBjb3JuZXJzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWNvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdW5ldHgvcGFuZWwtY29ybmVycyIsCiAgInV1aWQiOiAicGFuZWwtY29ybmVyc0BhdW5ldHgiLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "0piacfxwa5ca5cnvrz0s8pqykfixynmvvdmh1rznfsh407v1kw1v", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgc2hlbGwgZXh0ZW5zaW9uIHRvIGtlZXAgdGhlIG9sZCB0b3BiYXIgY29ybmVycywgd2hpY2ggd2VyZSByZW1vdmVkIGZvciBHTk9NRSA0Mi4gSXQgYWxzbyBhbGxvd3MgeW91IHRvIGN1c3RvbWl6ZSB0aGUgcm91bmRlZCBjb3JuZXJzLCBldmVuIGlmIHlvdSB1c2UgR05PTUUgNDAgb3IgNDEuXG5cbkl0IGlzIHdpZGVseSBiYXNlZCBvbiBhbHJlYWR5IGV4aXN0aW5nIGdub21lLXNoZWxsIGNvZGUsIGFuZCBvbiBhIG1lcmdlIHJlcXVlc3QgYnkgQWxleGFuZGVyIE1pa2hheWxlbmtvOiBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwvLS9tZXJnZV9yZXF1ZXN0cy8xMzI4IiwKICAibmFtZSI6ICJQYW5lbCBjb3JuZXJzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWNvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hdW5ldHgvcGFuZWwtY29ybmVycyIsCiAgInV1aWQiOiAicGFuZWwtY29ybmVyc0BhdW5ldHgiLAogICJ2ZXJzaW9uIjogMwp9"}, "42": {"version": "4", "sha256": "13mc18sds1z0ij1x8plx5d4b4mk4zkwx3hngh3z2ib7db8la7wdw", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgc2hlbGwgZXh0ZW5zaW9uIHRvIGtlZXAgdGhlIG9sZCB0b3BiYXIgY29ybmVycywgd2hpY2ggd2VyZSByZW1vdmVkIGZvciBHTk9NRSA0Mi4gSXQgYWxzbyBhbGxvd3MgeW91IHRvIGN1c3RvbWl6ZSB0aGUgcm91bmRlZCBjb3JuZXJzLCBldmVuIGlmIHlvdSB1c2UgR05PTUUgNDAgb3IgNDEuXG5cbkl0IGlzIHdpZGVseSBiYXNlZCBvbiBhbHJlYWR5IGV4aXN0aW5nIGdub21lLXNoZWxsIGNvZGUsIGFuZCBvbiBhIG1lcmdlIHJlcXVlc3QgYnkgQWxleGFuZGVyIE1pa2hheWxlbmtvOiBodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2hlbGwvLS9tZXJnZV9yZXF1ZXN0cy8xMzI4IiwKICAibmFtZSI6ICJQYW5lbCBjb3JuZXJzIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLnBhbmVsLWNvcm5lcnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vYXVuZXR4L3BhbmVsLWNvcm5lcnMiLAogICJ1dWlkIjogInBhbmVsLWNvcm5lcnNAYXVuZXR4IiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "WhatWatch@Zappo-II.github.io", "name": "What Watch", "pname": "what-watch", "description": "Shows a customizeable analog desktop clock.\nPlease visit the GitHub repository for documentation and to report any issues.", "link": "https://extensions.gnome.org/extension/4806/what-watch/", "shell_version_map": {"38": {"version": "4", "sha256": "1cd9cci0nhpif104x7lc3i5xiqlsnlr0xg764gj0p3hrn0bf9icj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgY3VzdG9taXplYWJsZSBhbmFsb2cgZGVza3RvcCBjbG9jay5cblBsZWFzZSB2aXNpdCB0aGUgR2l0SHViIHJlcG9zaXRvcnkgZm9yIGRvY3VtZW50YXRpb24gYW5kIHRvIHJlcG9ydCBhbnkgaXNzdWVzLiIsCiAgIm5hbWUiOiAiV2hhdCBXYXRjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy56YXBwb2lpLndoYXR3YXRjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vWmFwcG8tSUkvV2hhdFdhdGNoIiwKICAidXVpZCI6ICJXaGF0V2F0Y2hAWmFwcG8tSUkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "40": {"version": "4", "sha256": "1cd9cci0nhpif104x7lc3i5xiqlsnlr0xg764gj0p3hrn0bf9icj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgY3VzdG9taXplYWJsZSBhbmFsb2cgZGVza3RvcCBjbG9jay5cblBsZWFzZSB2aXNpdCB0aGUgR2l0SHViIHJlcG9zaXRvcnkgZm9yIGRvY3VtZW50YXRpb24gYW5kIHRvIHJlcG9ydCBhbnkgaXNzdWVzLiIsCiAgIm5hbWUiOiAiV2hhdCBXYXRjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy56YXBwb2lpLndoYXR3YXRjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vWmFwcG8tSUkvV2hhdFdhdGNoIiwKICAidXVpZCI6ICJXaGF0V2F0Y2hAWmFwcG8tSUkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "1cd9cci0nhpif104x7lc3i5xiqlsnlr0xg764gj0p3hrn0bf9icj", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGEgY3VzdG9taXplYWJsZSBhbmFsb2cgZGVza3RvcCBjbG9jay5cblBsZWFzZSB2aXNpdCB0aGUgR2l0SHViIHJlcG9zaXRvcnkgZm9yIGRvY3VtZW50YXRpb24gYW5kIHRvIHJlcG9ydCBhbnkgaXNzdWVzLiIsCiAgIm5hbWUiOiAiV2hhdCBXYXRjaCIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy56YXBwb2lpLndoYXR3YXRjaCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vWmFwcG8tSUkvV2hhdFdhdGNoIiwKICAidXVpZCI6ICJXaGF0V2F0Y2hAWmFwcG8tSUkuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
-, {"uuid": "cairo@eexpss.gmail.com", "name": "Cairo Clock", "pname": "cairo-clock", "description": "Cairo Clock. \n Click the clock face to set the alarm, click the center circle to enable the alarm.\n Alt + click on main icon, background of icon become green, this enable Popup per hour function. \n Ctrl + click on main icon, can test the alarm effect.\n In case of alarm, the clock will swing dynamically.", "link": "https://extensions.gnome.org/extension/4809/cairo-clock/", "shell_version_map": {"40": {"version": "14", "sha256": "11bp05rjzw24gccjvkmysdjq8s8b3cdkanzfhp3yf617ndplf0ic", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNhaXJvIENsb2NrLiBcbiBDbGljayB0aGUgY2xvY2sgZmFjZSB0byBzZXQgdGhlIGFsYXJtLCBjbGljayB0aGUgY2VudGVyIGNpcmNsZSB0byBlbmFibGUgdGhlIGFsYXJtLlxuIEFsdCArIGNsaWNrIG9uIG1haW4gaWNvbiwgYmFja2dyb3VuZCBvZiBpY29uIGJlY29tZSBncmVlbiwgdGhpcyBlbmFibGUgUG9wdXAgcGVyIGhvdXIgZnVuY3Rpb24uIFxuIEN0cmwgKyBjbGljayBvbiBtYWluIGljb24sIGNhbiB0ZXN0IHRoZSBhbGFybSBlZmZlY3QuXG4gSW4gY2FzZSBvZiBhbGFybSwgdGhlIGNsb2NrIHdpbGwgc3dpbmcgZHluYW1pY2FsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY2Fpcm8tY2xvY2siLAogICJuYW1lIjogIkNhaXJvIENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY2Fpcm8iLAogICJ1dWlkIjogImNhaXJvQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}, "41": {"version": "14", "sha256": "11bp05rjzw24gccjvkmysdjq8s8b3cdkanzfhp3yf617ndplf0ic", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNhaXJvIENsb2NrLiBcbiBDbGljayB0aGUgY2xvY2sgZmFjZSB0byBzZXQgdGhlIGFsYXJtLCBjbGljayB0aGUgY2VudGVyIGNpcmNsZSB0byBlbmFibGUgdGhlIGFsYXJtLlxuIEFsdCArIGNsaWNrIG9uIG1haW4gaWNvbiwgYmFja2dyb3VuZCBvZiBpY29uIGJlY29tZSBncmVlbiwgdGhpcyBlbmFibGUgUG9wdXAgcGVyIGhvdXIgZnVuY3Rpb24uIFxuIEN0cmwgKyBjbGljayBvbiBtYWluIGljb24sIGNhbiB0ZXN0IHRoZSBhbGFybSBlZmZlY3QuXG4gSW4gY2FzZSBvZiBhbGFybSwgdGhlIGNsb2NrIHdpbGwgc3dpbmcgZHluYW1pY2FsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY2Fpcm8tY2xvY2siLAogICJuYW1lIjogIkNhaXJvIENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY2Fpcm8iLAogICJ1dWlkIjogImNhaXJvQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTQKfQ=="}}}
+, {"uuid": "cairo@eexpss.gmail.com", "name": "Cairo Clock", "pname": "cairo-clock", "description": "Cairo Clock. \n Click the clock face to set the alarm, click the center circle to enable the alarm.\n Alt + click on main icon, background of icon become green, this enable Popup per hour function. \n Ctrl + click on main icon, can test the alarm effect.\n In case of alarm, the clock will swing dynamically.", "link": "https://extensions.gnome.org/extension/4809/cairo-clock/", "shell_version_map": {"40": {"version": "16", "sha256": "0m0b30frbs4667vavr6y5sy7zfg5fsa38qa2140ij8wqcznz9m7b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNhaXJvIENsb2NrLiBcbiBDbGljayB0aGUgY2xvY2sgZmFjZSB0byBzZXQgdGhlIGFsYXJtLCBjbGljayB0aGUgY2VudGVyIGNpcmNsZSB0byBlbmFibGUgdGhlIGFsYXJtLlxuIEFsdCArIGNsaWNrIG9uIG1haW4gaWNvbiwgYmFja2dyb3VuZCBvZiBpY29uIGJlY29tZSBncmVlbiwgdGhpcyBlbmFibGUgUG9wdXAgcGVyIGhvdXIgZnVuY3Rpb24uIFxuIEN0cmwgKyBjbGljayBvbiBtYWluIGljb24sIGNhbiB0ZXN0IHRoZSBhbGFybSBlZmZlY3QuXG4gSW4gY2FzZSBvZiBhbGFybSwgdGhlIGNsb2NrIHdpbGwgc3dpbmcgZHluYW1pY2FsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY2Fpcm8tY2xvY2siLAogICJuYW1lIjogIkNhaXJvIENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY2Fpcm8iLAogICJ1dWlkIjogImNhaXJvQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTYKfQ=="}, "41": {"version": "16", "sha256": "0m0b30frbs4667vavr6y5sy7zfg5fsa38qa2140ij8wqcznz9m7b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNhaXJvIENsb2NrLiBcbiBDbGljayB0aGUgY2xvY2sgZmFjZSB0byBzZXQgdGhlIGFsYXJtLCBjbGljayB0aGUgY2VudGVyIGNpcmNsZSB0byBlbmFibGUgdGhlIGFsYXJtLlxuIEFsdCArIGNsaWNrIG9uIG1haW4gaWNvbiwgYmFja2dyb3VuZCBvZiBpY29uIGJlY29tZSBncmVlbiwgdGhpcyBlbmFibGUgUG9wdXAgcGVyIGhvdXIgZnVuY3Rpb24uIFxuIEN0cmwgKyBjbGljayBvbiBtYWluIGljb24sIGNhbiB0ZXN0IHRoZSBhbGFybSBlZmZlY3QuXG4gSW4gY2FzZSBvZiBhbGFybSwgdGhlIGNsb2NrIHdpbGwgc3dpbmcgZHluYW1pY2FsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY2Fpcm8tY2xvY2siLAogICJuYW1lIjogIkNhaXJvIENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY2Fpcm8iLAogICJ1dWlkIjogImNhaXJvQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTYKfQ=="}, "42": {"version": "16", "sha256": "0m0b30frbs4667vavr6y5sy7zfg5fsa38qa2140ij8wqcznz9m7b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNhaXJvIENsb2NrLiBcbiBDbGljayB0aGUgY2xvY2sgZmFjZSB0byBzZXQgdGhlIGFsYXJtLCBjbGljayB0aGUgY2VudGVyIGNpcmNsZSB0byBlbmFibGUgdGhlIGFsYXJtLlxuIEFsdCArIGNsaWNrIG9uIG1haW4gaWNvbiwgYmFja2dyb3VuZCBvZiBpY29uIGJlY29tZSBncmVlbiwgdGhpcyBlbmFibGUgUG9wdXAgcGVyIGhvdXIgZnVuY3Rpb24uIFxuIEN0cmwgKyBjbGljayBvbiBtYWluIGljb24sIGNhbiB0ZXN0IHRoZSBhbGFybSBlZmZlY3QuXG4gSW4gY2FzZSBvZiBhbGFybSwgdGhlIGNsb2NrIHdpbGwgc3dpbmcgZHluYW1pY2FsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAiY2Fpcm8tY2xvY2siLAogICJuYW1lIjogIkNhaXJvIENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtY2Fpcm8iLAogICJ1dWlkIjogImNhaXJvQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMTYKfQ=="}}}
 , {"uuid": "WallpaperSwitcher@Rishu", "name": "Wallpaper Switcher", "pname": "wallpaper-switcher", "description": "Takes in the path of the folder containing wallpapers. Changes the wallpaper after given time interval. Option to switch them randomly or sequentially.", "link": "https://extensions.gnome.org/extension/4812/wallpaper-switcher/", "shell_version_map": {"38": {"version": "2", "sha256": "12biy68q57ayqxqbr8x0m4nnibrn94kb6y2rk7ly38y0qy31096a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRha2VzIGluIHRoZSBwYXRoIG9mIHRoZSBmb2xkZXIgY29udGFpbmluZyB3YWxscGFwZXJzLiBDaGFuZ2VzIHRoZSB3YWxscGFwZXIgYWZ0ZXIgZ2l2ZW4gdGltZSBpbnRlcnZhbC4gT3B0aW9uIHRvIHN3aXRjaCB0aGVtIHJhbmRvbWx5IG9yIHNlcXVlbnRpYWxseS4iLAogICJuYW1lIjogIldhbGxwYXBlciBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmlzaHVpbmZpbml0eS9XYWxscGFwZXJTd2l0Y2hlciIsCiAgInV1aWQiOiAiV2FsbHBhcGVyU3dpdGNoZXJAUmlzaHUiLAogICJ2ZXJzaW9uIjogMgp9"}, "40": {"version": "2", "sha256": "12biy68q57ayqxqbr8x0m4nnibrn94kb6y2rk7ly38y0qy31096a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRha2VzIGluIHRoZSBwYXRoIG9mIHRoZSBmb2xkZXIgY29udGFpbmluZyB3YWxscGFwZXJzLiBDaGFuZ2VzIHRoZSB3YWxscGFwZXIgYWZ0ZXIgZ2l2ZW4gdGltZSBpbnRlcnZhbC4gT3B0aW9uIHRvIHN3aXRjaCB0aGVtIHJhbmRvbWx5IG9yIHNlcXVlbnRpYWxseS4iLAogICJuYW1lIjogIldhbGxwYXBlciBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmlzaHVpbmZpbml0eS9XYWxscGFwZXJTd2l0Y2hlciIsCiAgInV1aWQiOiAiV2FsbHBhcGVyU3dpdGNoZXJAUmlzaHUiLAogICJ2ZXJzaW9uIjogMgp9"}, "41": {"version": "2", "sha256": "12biy68q57ayqxqbr8x0m4nnibrn94kb6y2rk7ly38y0qy31096a", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlRha2VzIGluIHRoZSBwYXRoIG9mIHRoZSBmb2xkZXIgY29udGFpbmluZyB3YWxscGFwZXJzLiBDaGFuZ2VzIHRoZSB3YWxscGFwZXIgYWZ0ZXIgZ2l2ZW4gdGltZSBpbnRlcnZhbC4gT3B0aW9uIHRvIHN3aXRjaCB0aGVtIHJhbmRvbWx5IG9yIHNlcXVlbnRpYWxseS4iLAogICJuYW1lIjogIldhbGxwYXBlciBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNCIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vcmlzaHVpbmZpbml0eS9XYWxscGFwZXJTd2l0Y2hlciIsCiAgInV1aWQiOiAiV2FsbHBhcGVyU3dpdGNoZXJAUmlzaHUiLAogICJ2ZXJzaW9uIjogMgp9"}}}
 , {"uuid": "areustatus@carissimi.eu", "name": "AREU Status", "pname": "areu-status", "description": "Displays the number of ambulances that are in a mission in Lombardy, Italy", "link": "https://extensions.gnome.org/extension/4814/areu-status/", "shell_version_map": {"38": {"version": "2", "sha256": "1jycm5xgzp1ph4h9j9m5ki0rn5wabh6gwblc1bc3fn6bx1zplymy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHRoZSBudW1iZXIgb2YgYW1idWxhbmNlcyB0aGF0IGFyZSBpbiBhIG1pc3Npb24gaW4gTG9tYmFyZHksIEl0YWx5IiwKICAibmFtZSI6ICJBUkVVIFN0YXR1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vci1jYXJpc3NpbWkvYXJldS1zdGF0dXMtZ25vbWUiLAogICJ1dWlkIjogImFyZXVzdGF0dXNAY2FyaXNzaW1pLmV1IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "1jycm5xgzp1ph4h9j9m5ki0rn5wabh6gwblc1bc3fn6bx1zplymy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHRoZSBudW1iZXIgb2YgYW1idWxhbmNlcyB0aGF0IGFyZSBpbiBhIG1pc3Npb24gaW4gTG9tYmFyZHksIEl0YWx5IiwKICAibmFtZSI6ICJBUkVVIFN0YXR1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vci1jYXJpc3NpbWkvYXJldS1zdGF0dXMtZ25vbWUiLAogICJ1dWlkIjogImFyZXVzdGF0dXNAY2FyaXNzaW1pLmV1IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "1jycm5xgzp1ph4h9j9m5ki0rn5wabh6gwblc1bc3fn6bx1zplymy", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRpc3BsYXlzIHRoZSBudW1iZXIgb2YgYW1idWxhbmNlcyB0aGF0IGFyZSBpbiBhIG1pc3Npb24gaW4gTG9tYmFyZHksIEl0YWx5IiwKICAibmFtZSI6ICJBUkVVIFN0YXR1cyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zMCIsCiAgICAiMy4zNCIsCiAgICAiMy4zMiIsCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vci1jYXJpc3NpbWkvYXJldS1zdGF0dXMtZ25vbWUiLAogICJ1dWlkIjogImFyZXVzdGF0dXNAY2FyaXNzaW1pLmV1IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "colorful-battery-indicator@aneruam", "name": "Colorful Battery Indicator", "pname": "colorful-battery-indicator", "description": "Make the color of the battery indicator change with the level of battery charge.", "link": "https://extensions.gnome.org/extension/4817/colorful-battery-indicator/", "shell_version_map": {"38": {"version": "4", "sha256": "0ypm2scrfffk6pl9plk7h8p7bnw0n29a1xyf9r4xdgb32j2fvs3k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIGNvbG9yIG9mIHRoZSBiYXR0ZXJ5IGluZGljYXRvciBjaGFuZ2Ugd2l0aCB0aGUgbGV2ZWwgb2YgYmF0dGVyeSBjaGFyZ2UuIiwKICAibmFtZSI6ICJDb2xvcmZ1bCBCYXR0ZXJ5IEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbmVydWEvZ25vbWUtY29sb3JmdWwtYmF0dGVyeS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImNvbG9yZnVsLWJhdHRlcnktaW5kaWNhdG9yQGFuZXJ1YW0iLAogICJ2ZXJzaW9uIjogNAp9"}, "40": {"version": "4", "sha256": "0ypm2scrfffk6pl9plk7h8p7bnw0n29a1xyf9r4xdgb32j2fvs3k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1ha2UgdGhlIGNvbG9yIG9mIHRoZSBiYXR0ZXJ5IGluZGljYXRvciBjaGFuZ2Ugd2l0aCB0aGUgbGV2ZWwgb2YgYmF0dGVyeSBjaGFyZ2UuIiwKICAibmFtZSI6ICJDb2xvcmZ1bCBCYXR0ZXJ5IEluZGljYXRvciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9hbmVydWEvZ25vbWUtY29sb3JmdWwtYmF0dGVyeS1pbmRpY2F0b3IiLAogICJ1dWlkIjogImNvbG9yZnVsLWJhdHRlcnktaW5kaWNhdG9yQGFuZXJ1YW0iLAogICJ2ZXJzaW9uIjogNAp9"}}}
 , {"uuid": "inactivity@fedeantuna.github.io", "name": "Inactivity", "pname": "inactivity", "description": "Hide Activities Button on the top panel.", "link": "https://extensions.gnome.org/extension/4818/inactivity/", "shell_version_map": {"41": {"version": "1", "sha256": "1qc16xhgp2wachcxw9ivf8r4nai2k0xj9vph8k0zvc0shwkpjzag", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkhpZGUgQWN0aXZpdGllcyBCdXR0b24gb24gdGhlIHRvcCBwYW5lbC4iLAogICJuYW1lIjogIkluYWN0aXZpdHkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZmVkZWFudHVuYS9pbmFjdGl2aXR5IiwKICAidXVpZCI6ICJpbmFjdGl2aXR5QGZlZGVhbnR1bmEuZ2l0aHViLmlvIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
-, {"uuid": "m3u8-play@eexpss.gmail.com", "name": "M3U8 Play", "pname": "m3u8-play", "description": "M3U8 Play. Search and select to play (use `ffplay/ffmpeg`). `m3u8` files need put into `~/.local/share/m3u8-play/`", "link": "https://extensions.gnome.org/extension/4824/m3u8-play/", "shell_version_map": {"40": {"version": "7", "sha256": "0b6dl4sgcp72wb4981vdpxfwv4cvnxpymijx4mwwxn0qxp4dqwa8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk0zVTggUGxheS4gU2VhcmNoIGFuZCBzZWxlY3QgdG8gcGxheSAodXNlIGBmZnBsYXkvZmZtcGVnYCkuIGBtM3U4YCBmaWxlcyBuZWVkIHB1dCBpbnRvIGB+Ly5sb2NhbC9zaGFyZS9tM3U4LXBsYXkvYCIsCiAgImdldHRleHQtZG9tYWluIjogIm0zdTgtcGxheSIsCiAgIm5hbWUiOiAiTTNVOCBQbGF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtbTN1OC1wbGF5LyIsCiAgInV1aWQiOiAibTN1OC1wbGF5QGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}, "41": {"version": "7", "sha256": "0b6dl4sgcp72wb4981vdpxfwv4cvnxpymijx4mwwxn0qxp4dqwa8", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk0zVTggUGxheS4gU2VhcmNoIGFuZCBzZWxlY3QgdG8gcGxheSAodXNlIGBmZnBsYXkvZmZtcGVnYCkuIGBtM3U4YCBmaWxlcyBuZWVkIHB1dCBpbnRvIGB+Ly5sb2NhbC9zaGFyZS9tM3U4LXBsYXkvYCIsCiAgImdldHRleHQtZG9tYWluIjogIm0zdTgtcGxheSIsCiAgIm5hbWUiOiAiTTNVOCBQbGF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtbTN1OC1wbGF5LyIsCiAgInV1aWQiOiAibTN1OC1wbGF5QGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogNwp9"}}}
-, {"uuid": "gnome-edge-gap@necropolina", "name": "Edge Gap", "pname": "edge-gap", "description": "add configurable-width gaps around the edge of your screen", "link": "https://extensions.gnome.org/extension/4827/edge-gap/", "shell_version_map": {"40": {"version": "3", "sha256": "12shbvqdj6834lvw23s9z4f3ayhvma363yvzga0m85x0fzs6bna5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFkZCBjb25maWd1cmFibGUtd2lkdGggZ2FwcyBhcm91bmQgdGhlIGVkZ2Ugb2YgeW91ciBzY3JlZW4iLAogICJuYW1lIjogIkVkZ2UgR2FwIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdub21lLWVkZ2UtZ2FwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVjcm9wb2xpbmEvZ25vbWUtZWRnZS1nYXAiLAogICJ1dWlkIjogImdub21lLWVkZ2UtZ2FwQG5lY3JvcG9saW5hIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "12shbvqdj6834lvw23s9z4f3ayhvma363yvzga0m85x0fzs6bna5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFkZCBjb25maWd1cmFibGUtd2lkdGggZ2FwcyBhcm91bmQgdGhlIGVkZ2Ugb2YgeW91ciBzY3JlZW4iLAogICJuYW1lIjogIkVkZ2UgR2FwIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdub21lLWVkZ2UtZ2FwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVjcm9wb2xpbmEvZ25vbWUtZWRnZS1nYXAiLAogICJ1dWlkIjogImdub21lLWVkZ2UtZ2FwQG5lY3JvcG9saW5hIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
-, {"uuid": "overview-keyboard-navigation@G-dH.github.com", "name": "Overview Keyboard Navigation Fix", "pname": "overview-keyboard-navigation-fix", "description": "Fix for GNOME Shell 40 and 41 that initiates keyboard navigation in the Activities overview and App Grid by pressing Tab or Arrow keys. It also changes Esc key behavior in the App Grid view - Esc closes the Overview instead of activating Windows Overview.", "link": "https://extensions.gnome.org/extension/4830/overview-keyboard-navigation-fix/", "shell_version_map": {"40": {"version": "2", "sha256": "12l9j8rcs61j1l375nm7dxbhhs3qw4y5i0hsdxcpq9jn7880y4f3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpeCBmb3IgR05PTUUgU2hlbGwgNDAgYW5kIDQxIHRoYXQgaW5pdGlhdGVzIGtleWJvYXJkIG5hdmlnYXRpb24gaW4gdGhlIEFjdGl2aXRpZXMgb3ZlcnZpZXcgYW5kIEFwcCBHcmlkIGJ5IHByZXNzaW5nIFRhYiBvciBBcnJvdyBrZXlzLiBJdCBhbHNvIGNoYW5nZXMgRXNjIGtleSBiZWhhdmlvciBpbiB0aGUgQXBwIEdyaWQgdmlldyAtIEVzYyBjbG9zZXMgdGhlIE92ZXJ2aWV3IGluc3RlYWQgb2YgYWN0aXZhdGluZyBXaW5kb3dzIE92ZXJ2aWV3LiIsCiAgImdldHRleHQtZG9tYWluIjogIm92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb24tZml4IiwKICAibmFtZSI6ICJPdmVydmlldyBLZXlib2FyZCBOYXZpZ2F0aW9uIEZpeCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb24iLAogICJ1dWlkIjogIm92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb25ARy1kSC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "12l9j8rcs61j1l375nm7dxbhhs3qw4y5i0hsdxcpq9jn7880y4f3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpeCBmb3IgR05PTUUgU2hlbGwgNDAgYW5kIDQxIHRoYXQgaW5pdGlhdGVzIGtleWJvYXJkIG5hdmlnYXRpb24gaW4gdGhlIEFjdGl2aXRpZXMgb3ZlcnZpZXcgYW5kIEFwcCBHcmlkIGJ5IHByZXNzaW5nIFRhYiBvciBBcnJvdyBrZXlzLiBJdCBhbHNvIGNoYW5nZXMgRXNjIGtleSBiZWhhdmlvciBpbiB0aGUgQXBwIEdyaWQgdmlldyAtIEVzYyBjbG9zZXMgdGhlIE92ZXJ2aWV3IGluc3RlYWQgb2YgYWN0aXZhdGluZyBXaW5kb3dzIE92ZXJ2aWV3LiIsCiAgImdldHRleHQtZG9tYWluIjogIm92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb24tZml4IiwKICAibmFtZSI6ICJPdmVydmlldyBLZXlib2FyZCBOYXZpZ2F0aW9uIEZpeCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb24iLAogICJ1dWlkIjogIm92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb25ARy1kSC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
+, {"uuid": "m3u8-play@eexpss.gmail.com", "name": "M3U8 Play", "pname": "m3u8-play", "description": "* M3U8 Play. Search and select to play (use `ffplay/ffmpeg`). `m3u8` files need put into `~/.local/share/m3u8-play/`", "link": "https://extensions.gnome.org/extension/4824/m3u8-play/", "shell_version_map": {"40": {"version": "7", "sha256": "0vqnmpcd6aqqq5g206288ziqzbdv6vcbg61ki6lvgg6j0in5bc83", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogTTNVOCBQbGF5LiBTZWFyY2ggYW5kIHNlbGVjdCB0byBwbGF5ICh1c2UgYGZmcGxheS9mZm1wZWdgKS4gYG0zdThgIGZpbGVzIG5lZWQgcHV0IGludG8gYH4vLmxvY2FsL3NoYXJlL20zdTgtcGxheS9gIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibTN1OC1wbGF5IiwKICAibmFtZSI6ICJNM1U4IFBsYXkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lZXhwcmVzcy9nbm9tZS1zaGVsbC1tM3U4LXBsYXkvIiwKICAidXVpZCI6ICJtM3U4LXBsYXlAZWV4cHNzLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}, "41": {"version": "7", "sha256": "0vqnmpcd6aqqq5g206288ziqzbdv6vcbg61ki6lvgg6j0in5bc83", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogTTNVOCBQbGF5LiBTZWFyY2ggYW5kIHNlbGVjdCB0byBwbGF5ICh1c2UgYGZmcGxheS9mZm1wZWdgKS4gYG0zdThgIGZpbGVzIG5lZWQgcHV0IGludG8gYH4vLmxvY2FsL3NoYXJlL20zdTgtcGxheS9gIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibTN1OC1wbGF5IiwKICAibmFtZSI6ICJNM1U4IFBsYXkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lZXhwcmVzcy9nbm9tZS1zaGVsbC1tM3U4LXBsYXkvIiwKICAidXVpZCI6ICJtM3U4LXBsYXlAZWV4cHNzLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}, "42": {"version": "7", "sha256": "0vqnmpcd6aqqq5g206288ziqzbdv6vcbg61ki6lvgg6j0in5bc83", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogTTNVOCBQbGF5LiBTZWFyY2ggYW5kIHNlbGVjdCB0byBwbGF5ICh1c2UgYGZmcGxheS9mZm1wZWdgKS4gYG0zdThgIGZpbGVzIG5lZWQgcHV0IGludG8gYH4vLmxvY2FsL3NoYXJlL20zdTgtcGxheS9gIiwKICAiZ2V0dGV4dC1kb21haW4iOiAibTN1OC1wbGF5IiwKICAibmFtZSI6ICJNM1U4IFBsYXkiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIsCiAgICAiNDIiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9lZXhwcmVzcy9nbm9tZS1zaGVsbC1tM3U4LXBsYXkvIiwKICAidXVpZCI6ICJtM3U4LXBsYXlAZWV4cHNzLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA3Cn0="}}}
+, {"uuid": "gnome-edge-gap@necropolina", "name": "Edge Gap", "pname": "edge-gap", "description": "add configurable-width gaps around the edge of your screen", "link": "https://extensions.gnome.org/extension/4827/edge-gap/", "shell_version_map": {"40": {"version": "3", "sha256": "12shbvqdj6834lvw23s9z4f3ayhvma363yvzga0m85x0fzs6bna5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFkZCBjb25maWd1cmFibGUtd2lkdGggZ2FwcyBhcm91bmQgdGhlIGVkZ2Ugb2YgeW91ciBzY3JlZW4iLAogICJuYW1lIjogIkVkZ2UgR2FwIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdub21lLWVkZ2UtZ2FwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVjcm9wb2xpbmEvZ25vbWUtZWRnZS1nYXAiLAogICJ1dWlkIjogImdub21lLWVkZ2UtZ2FwQG5lY3JvcG9saW5hIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "12shbvqdj6834lvw23s9z4f3ayhvma363yvzga0m85x0fzs6bna5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFkZCBjb25maWd1cmFibGUtd2lkdGggZ2FwcyBhcm91bmQgdGhlIGVkZ2Ugb2YgeW91ciBzY3JlZW4iLAogICJuYW1lIjogIkVkZ2UgR2FwIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdub21lLWVkZ2UtZ2FwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVjcm9wb2xpbmEvZ25vbWUtZWRnZS1nYXAiLAogICJ1dWlkIjogImdub21lLWVkZ2UtZ2FwQG5lY3JvcG9saW5hIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "42": {"version": "3", "sha256": "12shbvqdj6834lvw23s9z4f3ayhvma363yvzga0m85x0fzs6bna5", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogImFkZCBjb25maWd1cmFibGUtd2lkdGggZ2FwcyBhcm91bmQgdGhlIGVkZ2Ugb2YgeW91ciBzY3JlZW4iLAogICJuYW1lIjogIkVkZ2UgR2FwIiwKICAic2V0dGluZ3Mtc2NoZW1hIjogIm9yZy5nbm9tZS5zaGVsbC5leHRlbnNpb25zLmdub21lLWVkZ2UtZ2FwIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbmVjcm9wb2xpbmEvZ25vbWUtZWRnZS1nYXAiLAogICJ1dWlkIjogImdub21lLWVkZ2UtZ2FwQG5lY3JvcG9saW5hIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
+, {"uuid": "overview-keyboard-navigation@G-dH.github.com", "name": "Overview Keyboard Navigation Fix", "pname": "overview-keyboard-navigation-fix", "description": "Fix for GNOME Shell 40 and 41 that initiates keyboard navigation in the Activities overview and App Grid by pressing Tab or Arrow keys. It also changes Esc key behavior in the App Grid view - Esc closes the Overview instead of activating Windows Overview.", "link": "https://extensions.gnome.org/extension/4830/overview-keyboard-navigation-fix/", "shell_version_map": {"40": {"version": "2", "sha256": "12l9j8rcs61j1l375nm7dxbhhs3qw4y5i0hsdxcpq9jn7880y4f3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpeCBmb3IgR05PTUUgU2hlbGwgNDAgYW5kIDQxIHRoYXQgaW5pdGlhdGVzIGtleWJvYXJkIG5hdmlnYXRpb24gaW4gdGhlIEFjdGl2aXRpZXMgb3ZlcnZpZXcgYW5kIEFwcCBHcmlkIGJ5IHByZXNzaW5nIFRhYiBvciBBcnJvdyBrZXlzLiBJdCBhbHNvIGNoYW5nZXMgRXNjIGtleSBiZWhhdmlvciBpbiB0aGUgQXBwIEdyaWQgdmlldyAtIEVzYyBjbG9zZXMgdGhlIE92ZXJ2aWV3IGluc3RlYWQgb2YgYWN0aXZhdGluZyBXaW5kb3dzIE92ZXJ2aWV3LiIsCiAgImdldHRleHQtZG9tYWluIjogIm92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb24tZml4IiwKICAibmFtZSI6ICJPdmVydmlldyBLZXlib2FyZCBOYXZpZ2F0aW9uIEZpeCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb24iLAogICJ1dWlkIjogIm92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb25ARy1kSC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "12l9j8rcs61j1l375nm7dxbhhs3qw4y5i0hsdxcpq9jn7880y4f3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpeCBmb3IgR05PTUUgU2hlbGwgNDAgYW5kIDQxIHRoYXQgaW5pdGlhdGVzIGtleWJvYXJkIG5hdmlnYXRpb24gaW4gdGhlIEFjdGl2aXRpZXMgb3ZlcnZpZXcgYW5kIEFwcCBHcmlkIGJ5IHByZXNzaW5nIFRhYiBvciBBcnJvdyBrZXlzLiBJdCBhbHNvIGNoYW5nZXMgRXNjIGtleSBiZWhhdmlvciBpbiB0aGUgQXBwIEdyaWQgdmlldyAtIEVzYyBjbG9zZXMgdGhlIE92ZXJ2aWV3IGluc3RlYWQgb2YgYWN0aXZhdGluZyBXaW5kb3dzIE92ZXJ2aWV3LiIsCiAgImdldHRleHQtZG9tYWluIjogIm92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb24tZml4IiwKICAibmFtZSI6ICJPdmVydmlldyBLZXlib2FyZCBOYXZpZ2F0aW9uIEZpeCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb24iLAogICJ1dWlkIjogIm92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb25ARy1kSC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "42": {"version": "2", "sha256": "12l9j8rcs61j1l375nm7dxbhhs3qw4y5i0hsdxcpq9jn7880y4f3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkZpeCBmb3IgR05PTUUgU2hlbGwgNDAgYW5kIDQxIHRoYXQgaW5pdGlhdGVzIGtleWJvYXJkIG5hdmlnYXRpb24gaW4gdGhlIEFjdGl2aXRpZXMgb3ZlcnZpZXcgYW5kIEFwcCBHcmlkIGJ5IHByZXNzaW5nIFRhYiBvciBBcnJvdyBrZXlzLiBJdCBhbHNvIGNoYW5nZXMgRXNjIGtleSBiZWhhdmlvciBpbiB0aGUgQXBwIEdyaWQgdmlldyAtIEVzYyBjbG9zZXMgdGhlIE92ZXJ2aWV3IGluc3RlYWQgb2YgYWN0aXZhdGluZyBXaW5kb3dzIE92ZXJ2aWV3LiIsCiAgImdldHRleHQtZG9tYWluIjogIm92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb24tZml4IiwKICAibmFtZSI6ICJPdmVydmlldyBLZXlib2FyZCBOYXZpZ2F0aW9uIEZpeCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0ctZEgvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLW92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb24iLAogICJ1dWlkIjogIm92ZXJ2aWV3LWtleWJvYXJkLW5hdmlnYXRpb25ARy1kSC5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "all-windows-srwp@jkavery.github.io", "name": "All Windows + Save/Restore Window Positions", "pname": "all-windows-saverestore-window-positions", "description": "List open windows of all workspaces, plus Save/Restore window positions (run automatically on Suspend/Resume, a workaround for Ubuntu bug #1778983).", "link": "https://extensions.gnome.org/extension/4833/all-windows-saverestore-window-positions/", "shell_version_map": {"40": {"version": "1", "sha256": "1ppgrvmf7lxzqig02p80bh3laxx8bhq6harza82qm8djj62g6kkk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkxpc3Qgb3BlbiB3aW5kb3dzIG9mIGFsbCB3b3Jrc3BhY2VzLCBwbHVzIFNhdmUvUmVzdG9yZSB3aW5kb3cgcG9zaXRpb25zIChydW4gYXV0b21hdGljYWxseSBvbiBTdXNwZW5kL1Jlc3VtZSwgYSB3b3JrYXJvdW5kIGZvciBVYnVudHUgYnVnICMxNzc4OTgzKS4iLAogICJuYW1lIjogIkFsbCBXaW5kb3dzICsgU2F2ZS9SZXN0b3JlIFdpbmRvdyBQb3NpdGlvbnMiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vamthdmVyeS9hbGwtd2luZG93cyIsCiAgInV1aWQiOiAiYWxsLXdpbmRvd3Mtc3J3cEBqa2F2ZXJ5LmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAxCn0="}}}
-, {"uuid": "clipboard-history@alexsaveau.dev", "name": "Clipboard History", "pname": "clipboard-history", "description": "Gnome Clipboard History is a Gnome extension that saves items you've copied into an easily accessible, searchable history panel.\n\ntags: clipboard manager", "link": "https://extensions.gnome.org/extension/4839/clipboard-history/", "shell_version_map": {"40": {"version": "8", "sha256": "14fkqp17diivwkmzs5b2h2rp7nd24vm7wckadxisxg23wd6yw5ba", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIENsaXBib2FyZCBIaXN0b3J5IGlzIGEgR25vbWUgZXh0ZW5zaW9uIHRoYXQgc2F2ZXMgaXRlbXMgeW91J3ZlIGNvcGllZCBpbnRvIGFuIGVhc2lseSBhY2Nlc3NpYmxlLCBzZWFyY2hhYmxlIGhpc3RvcnkgcGFuZWwuXG5cbnRhZ3M6IGNsaXBib2FyZCBtYW5hZ2VyIiwKICAibmFtZSI6ICJDbGlwYm9hcmQgSGlzdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NVUEVSQ0lMRVgvZ25vbWUtY2xpcGJvYXJkLWhpc3RvcnkiLAogICJ1dWlkIjogImNsaXBib2FyZC1oaXN0b3J5QGFsZXhzYXZlYXUuZGV2IiwKICAidmVyc2lvbiI6IDgKfQ=="}, "41": {"version": "8", "sha256": "14fkqp17diivwkmzs5b2h2rp7nd24vm7wckadxisxg23wd6yw5ba", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIENsaXBib2FyZCBIaXN0b3J5IGlzIGEgR25vbWUgZXh0ZW5zaW9uIHRoYXQgc2F2ZXMgaXRlbXMgeW91J3ZlIGNvcGllZCBpbnRvIGFuIGVhc2lseSBhY2Nlc3NpYmxlLCBzZWFyY2hhYmxlIGhpc3RvcnkgcGFuZWwuXG5cbnRhZ3M6IGNsaXBib2FyZCBtYW5hZ2VyIiwKICAibmFtZSI6ICJDbGlwYm9hcmQgSGlzdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NVUEVSQ0lMRVgvZ25vbWUtY2xpcGJvYXJkLWhpc3RvcnkiLAogICJ1dWlkIjogImNsaXBib2FyZC1oaXN0b3J5QGFsZXhzYXZlYXUuZGV2IiwKICAidmVyc2lvbiI6IDgKfQ=="}}}
+, {"uuid": "clipboard-history@alexsaveau.dev", "name": "Clipboard History", "pname": "clipboard-history", "description": "Gnome Clipboard History is a Gnome extension that saves items you've copied into an easily accessible, searchable history panel.", "link": "https://extensions.gnome.org/extension/4839/clipboard-history/", "shell_version_map": {"40": {"version": "10", "sha256": "1cg1l3l9ixyszzckhahyy1zhzyzhzzjajdgm9vsyjwlzdp5ljk2h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIENsaXBib2FyZCBIaXN0b3J5IGlzIGEgR25vbWUgZXh0ZW5zaW9uIHRoYXQgc2F2ZXMgaXRlbXMgeW91J3ZlIGNvcGllZCBpbnRvIGFuIGVhc2lseSBhY2Nlc3NpYmxlLCBzZWFyY2hhYmxlIGhpc3RvcnkgcGFuZWwuIiwKICAibmFtZSI6ICJDbGlwYm9hcmQgSGlzdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NVUEVSQ0lMRVgvZ25vbWUtY2xpcGJvYXJkLWhpc3RvcnkiLAogICJ1dWlkIjogImNsaXBib2FyZC1oaXN0b3J5QGFsZXhzYXZlYXUuZGV2IiwKICAidmVyc2lvbiI6IDEwCn0="}, "41": {"version": "10", "sha256": "1cg1l3l9ixyszzckhahyy1zhzyzhzzjajdgm9vsyjwlzdp5ljk2h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIENsaXBib2FyZCBIaXN0b3J5IGlzIGEgR25vbWUgZXh0ZW5zaW9uIHRoYXQgc2F2ZXMgaXRlbXMgeW91J3ZlIGNvcGllZCBpbnRvIGFuIGVhc2lseSBhY2Nlc3NpYmxlLCBzZWFyY2hhYmxlIGhpc3RvcnkgcGFuZWwuIiwKICAibmFtZSI6ICJDbGlwYm9hcmQgSGlzdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NVUEVSQ0lMRVgvZ25vbWUtY2xpcGJvYXJkLWhpc3RvcnkiLAogICJ1dWlkIjogImNsaXBib2FyZC1oaXN0b3J5QGFsZXhzYXZlYXUuZGV2IiwKICAidmVyc2lvbiI6IDEwCn0="}, "42": {"version": "10", "sha256": "1cg1l3l9ixyszzckhahyy1zhzyzhzzjajdgm9vsyjwlzdp5ljk2h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkdub21lIENsaXBib2FyZCBIaXN0b3J5IGlzIGEgR25vbWUgZXh0ZW5zaW9uIHRoYXQgc2F2ZXMgaXRlbXMgeW91J3ZlIGNvcGllZCBpbnRvIGFuIGVhc2lseSBhY2Nlc3NpYmxlLCBzZWFyY2hhYmxlIGhpc3RvcnkgcGFuZWwuIiwKICAibmFtZSI6ICJDbGlwYm9hcmQgSGlzdG9yeSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL1NVUEVSQ0lMRVgvZ25vbWUtY2xpcGJvYXJkLWhpc3RvcnkiLAogICJ1dWlkIjogImNsaXBib2FyZC1oaXN0b3J5QGFsZXhzYXZlYXUuZGV2IiwKICAidmVyc2lvbiI6IDEwCn0="}}}
 , {"uuid": "strongdm@andybrown668.github.com", "name": "StrongDM", "pname": "strongdm", "description": "Access StrongDM resources", "link": "https://extensions.gnome.org/extension/4841/strongdm/", "shell_version_map": {"40": {"version": "1", "sha256": "0bk75y3i8f82bmv20vnhar37yni6ydlcdixc89npc9iiyj1a5mwg", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFjY2VzcyBTdHJvbmdETSByZXNvdXJjZXMiLAogICJuYW1lIjogIlN0cm9uZ0RNIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FuZHlicm93bjY2OC9zdHJvbmdkbS1nbm9tZS1zaGVsbC1leHRlbnNpb24uZ2l0IiwKICAidXVpZCI6ICJzdHJvbmdkbUBhbmR5YnJvd242NjguZ2l0aHViLmNvbSIsCiAgInZlcnNpb24iOiAxCn0="}}}
 , {"uuid": "pop-theme-switcher@dimitris47", "name": "Pop Theme Switcher", "pname": "pop-theme-switcher", "description": "Switch between Pop dark and light themes. It is a fork of adwaita-theme-switcher (https://github.com/fthx/adwaita-theme-switcher).", "link": "https://extensions.gnome.org/extension/4844/pop-theme-switcher/", "shell_version_map": {"38": {"version": "2", "sha256": "0z28xmqdbhvx6cvs4r2rrlyg3r22y5rldlm7dir5hjwyad1qwar2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCBiZXR3ZWVuIFBvcCBkYXJrIGFuZCBsaWdodCB0aGVtZXMuIEl0IGlzIGEgZm9yayBvZiBhZHdhaXRhLXRoZW1lLXN3aXRjaGVyIChodHRwczovL2dpdGh1Yi5jb20vZnRoeC9hZHdhaXRhLXRoZW1lLXN3aXRjaGVyKS4iLAogICJuYW1lIjogIlBvcCBUaGVtZSBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGltaXRyaXM0Ny9wb3AtdGhlbWUtc3dpdGNoZXIiLAogICJ1dWlkIjogInBvcC10aGVtZS1zd2l0Y2hlckBkaW1pdHJpczQ3IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "0z28xmqdbhvx6cvs4r2rrlyg3r22y5rldlm7dir5hjwyad1qwar2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCBiZXR3ZWVuIFBvcCBkYXJrIGFuZCBsaWdodCB0aGVtZXMuIEl0IGlzIGEgZm9yayBvZiBhZHdhaXRhLXRoZW1lLXN3aXRjaGVyIChodHRwczovL2dpdGh1Yi5jb20vZnRoeC9hZHdhaXRhLXRoZW1lLXN3aXRjaGVyKS4iLAogICJuYW1lIjogIlBvcCBUaGVtZSBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGltaXRyaXM0Ny9wb3AtdGhlbWUtc3dpdGNoZXIiLAogICJ1dWlkIjogInBvcC10aGVtZS1zd2l0Y2hlckBkaW1pdHJpczQ3IiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "0z28xmqdbhvx6cvs4r2rrlyg3r22y5rldlm7dir5hjwyad1qwar2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlN3aXRjaCBiZXR3ZWVuIFBvcCBkYXJrIGFuZCBsaWdodCB0aGVtZXMuIEl0IGlzIGEgZm9yayBvZiBhZHdhaXRhLXRoZW1lLXN3aXRjaGVyIChodHRwczovL2dpdGh1Yi5jb20vZnRoeC9hZHdhaXRhLXRoZW1lLXN3aXRjaGVyKS4iLAogICJuYW1lIjogIlBvcCBUaGVtZSBTd2l0Y2hlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZGltaXRyaXM0Ny9wb3AtdGhlbWUtc3dpdGNoZXIiLAogICJ1dWlkIjogInBvcC10aGVtZS1zd2l0Y2hlckBkaW1pdHJpczQ3IiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "dash-to-dock-toggle@kavoyaa.github.com", "name": "Dash to Dock Toggle", "pname": "dash-to-dock-toggle", "description": "Adds a button to top panel to switch Dash to Dock mode between \"always visible\" and \"autohide\".\n\n(Works only with the Dash-to-Dock extension)", "link": "https://extensions.gnome.org/extension/4845/dash-to-dock-toggle/", "shell_version_map": {"40": {"version": "2", "sha256": "0fy9wv78qhipsy5rqdbygi74ycgryvqm98svmpbzhbgg3rb8mdxs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZHMgYSBidXR0b24gdG8gdG9wIHBhbmVsIHRvIHN3aXRjaCBEYXNoIHRvIERvY2sgbW9kZSBiZXR3ZWVuIFwiYWx3YXlzIHZpc2libGVcIiBhbmQgXCJhdXRvaGlkZVwiLlxuXG4oV29ya3Mgb25seSB3aXRoIHRoZSBEYXNoLXRvLURvY2sgZXh0ZW5zaW9uKSIsCiAgIm5hbWUiOiAiRGFzaCB0byBEb2NrIFRvZ2dsZSIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAiZGFzaC10by1kb2NrLXRvZ2dsZUBrYXZveWFhLmdpdGh1Yi5jb20iLAogICJ2ZXJzaW9uIjogMgp9"}}}
-, {"uuid": "open@eexpss.gmail.com", "name": "Open Anywhere", "pname": "open-anywhere", "description": "Copy / Select a full path file / directory name, or incomplete path, or pure file name. Open a context menu to let you choose how to open it, or press Ctrl-Shift-O directlly.", "link": "https://extensions.gnome.org/extension/4848/open-anywhere/", "shell_version_map": {"40": {"version": "4", "sha256": "14y0i53ppagfs6xzyfa4p14rlg10p3wqjymqicdwbb2flcmg46h0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvcHkgLyBTZWxlY3QgYSBmdWxsIHBhdGggZmlsZSAvIGRpcmVjdG9yeSBuYW1lLCBvciBpbmNvbXBsZXRlIHBhdGgsIG9yIHB1cmUgZmlsZSBuYW1lLiBPcGVuIGEgY29udGV4dCBtZW51IHRvIGxldCB5b3UgY2hvb3NlIGhvdyB0byBvcGVuIGl0LCBvciBwcmVzcyBDdHJsLVNoaWZ0LU8gZGlyZWN0bGx5LiIsCiAgImdldHRleHQtZG9tYWluIjogIm9wZW4iLAogICJuYW1lIjogIk9wZW4gQW55d2hlcmUiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMub3BlbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLW9wZW4iLAogICJ1dWlkIjogIm9wZW5AZWV4cHNzLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "14y0i53ppagfs6xzyfa4p14rlg10p3wqjymqicdwbb2flcmg46h0", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvcHkgLyBTZWxlY3QgYSBmdWxsIHBhdGggZmlsZSAvIGRpcmVjdG9yeSBuYW1lLCBvciBpbmNvbXBsZXRlIHBhdGgsIG9yIHB1cmUgZmlsZSBuYW1lLiBPcGVuIGEgY29udGV4dCBtZW51IHRvIGxldCB5b3UgY2hvb3NlIGhvdyB0byBvcGVuIGl0LCBvciBwcmVzcyBDdHJsLVNoaWZ0LU8gZGlyZWN0bGx5LiIsCiAgImdldHRleHQtZG9tYWluIjogIm9wZW4iLAogICJuYW1lIjogIk9wZW4gQW55d2hlcmUiLAogICJzZXR0aW5ncy1zY2hlbWEiOiAib3JnLmdub21lLnNoZWxsLmV4dGVuc2lvbnMub3BlbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2VleHByZXNzL2dub21lLXNoZWxsLW9wZW4iLAogICJ1dWlkIjogIm9wZW5AZWV4cHNzLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
+, {"uuid": "open@eexpss.gmail.com", "name": "Open Anywhere", "pname": "open-anywhere", "description": "* Copy / Select a full path file / directory name, or incomplete path, or pure file name. Open a context menu to let you choose how to open it, or press Ctrl-Shift-O directlly.", "link": "https://extensions.gnome.org/extension/4848/open-anywhere/", "shell_version_map": {"40": {"version": "4", "sha256": "1bgja2rrggli16k991m88hbr54rj570ryp3if8kqcs75hn2cgf0b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogQ29weSAvIFNlbGVjdCBhIGZ1bGwgcGF0aCBmaWxlIC8gZGlyZWN0b3J5IG5hbWUsIG9yIGluY29tcGxldGUgcGF0aCwgb3IgcHVyZSBmaWxlIG5hbWUuIE9wZW4gYSBjb250ZXh0IG1lbnUgdG8gbGV0IHlvdSBjaG9vc2UgaG93IHRvIG9wZW4gaXQsIG9yIHByZXNzIEN0cmwtU2hpZnQtTyBkaXJlY3RsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAib3BlbiIsCiAgIm5hbWUiOiAiT3BlbiBBbnl3aGVyZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vcGVuIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtb3BlbiIsCiAgInV1aWQiOiAib3BlbkBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "41": {"version": "4", "sha256": "1bgja2rrggli16k991m88hbr54rj570ryp3if8kqcs75hn2cgf0b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogQ29weSAvIFNlbGVjdCBhIGZ1bGwgcGF0aCBmaWxlIC8gZGlyZWN0b3J5IG5hbWUsIG9yIGluY29tcGxldGUgcGF0aCwgb3IgcHVyZSBmaWxlIG5hbWUuIE9wZW4gYSBjb250ZXh0IG1lbnUgdG8gbGV0IHlvdSBjaG9vc2UgaG93IHRvIG9wZW4gaXQsIG9yIHByZXNzIEN0cmwtU2hpZnQtTyBkaXJlY3RsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAib3BlbiIsCiAgIm5hbWUiOiAiT3BlbiBBbnl3aGVyZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vcGVuIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtb3BlbiIsCiAgInV1aWQiOiAib3BlbkBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}, "42": {"version": "4", "sha256": "1bgja2rrggli16k991m88hbr54rj570ryp3if8kqcs75hn2cgf0b", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogQ29weSAvIFNlbGVjdCBhIGZ1bGwgcGF0aCBmaWxlIC8gZGlyZWN0b3J5IG5hbWUsIG9yIGluY29tcGxldGUgcGF0aCwgb3IgcHVyZSBmaWxlIG5hbWUuIE9wZW4gYSBjb250ZXh0IG1lbnUgdG8gbGV0IHlvdSBjaG9vc2UgaG93IHRvIG9wZW4gaXQsIG9yIHByZXNzIEN0cmwtU2hpZnQtTyBkaXJlY3RsbHkuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAib3BlbiIsCiAgIm5hbWUiOiAiT3BlbiBBbnl3aGVyZSIsCiAgInNldHRpbmdzLXNjaGVtYSI6ICJvcmcuZ25vbWUuc2hlbGwuZXh0ZW5zaW9ucy5vcGVuIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZWV4cHJlc3MvZ25vbWUtc2hlbGwtb3BlbiIsCiAgInV1aWQiOiAib3BlbkBlZXhwc3MuZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDQKfQ=="}}}
 , {"uuid": "command-menu@arunk140.com", "name": "Command Menu", "pname": "command-menu", "description": "A GNOME Shell Extension to manage shortcuts in Top Bar (Inspired by Shuttle and SSHMenu). Edit the .commands.json file to add your own shortcuts.\n\nSample Config in the README - https://github.com/arunk140/gnome-command-menu/blob/main/README.md", "link": "https://extensions.gnome.org/extension/4850/command-menu/", "shell_version_map": {"40": {"version": "3", "sha256": "0sf063fkwfjnp56406hirsiadmpv79za162k80n82pl6r837qw1p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgRXh0ZW5zaW9uIHRvIG1hbmFnZSBzaG9ydGN1dHMgaW4gVG9wIEJhciAoSW5zcGlyZWQgYnkgU2h1dHRsZSBhbmQgU1NITWVudSkuIEVkaXQgdGhlIC5jb21tYW5kcy5qc29uIGZpbGUgdG8gYWRkIHlvdXIgb3duIHNob3J0Y3V0cy5cblxuU2FtcGxlIENvbmZpZyBpbiB0aGUgUkVBRE1FIC0gaHR0cHM6Ly9naXRodWIuY29tL2FydW5rMTQwL2dub21lLWNvbW1hbmQtbWVudS9ibG9iL21haW4vUkVBRE1FLm1kIiwKICAibmFtZSI6ICJDb21tYW5kIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FydW5rMTQwL2dub21lLWNvbW1hbmQtbWVudSIsCiAgInV1aWQiOiAiY29tbWFuZC1tZW51QGFydW5rMTQwLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}, "41": {"version": "3", "sha256": "0sf063fkwfjnp56406hirsiadmpv79za162k80n82pl6r837qw1p", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgR05PTUUgU2hlbGwgRXh0ZW5zaW9uIHRvIG1hbmFnZSBzaG9ydGN1dHMgaW4gVG9wIEJhciAoSW5zcGlyZWQgYnkgU2h1dHRsZSBhbmQgU1NITWVudSkuIEVkaXQgdGhlIC5jb21tYW5kcy5qc29uIGZpbGUgdG8gYWRkIHlvdXIgb3duIHNob3J0Y3V0cy5cblxuU2FtcGxlIENvbmZpZyBpbiB0aGUgUkVBRE1FIC0gaHR0cHM6Ly9naXRodWIuY29tL2FydW5rMTQwL2dub21lLWNvbW1hbmQtbWVudS9ibG9iL21haW4vUkVBRE1FLm1kIiwKICAibmFtZSI6ICJDb21tYW5kIE1lbnUiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL2FydW5rMTQwL2dub21lLWNvbW1hbmQtbWVudSIsCiAgInV1aWQiOiAiY29tbWFuZC1tZW51QGFydW5rMTQwLmNvbSIsCiAgInZlcnNpb24iOiAzCn0="}}}
-, {"uuid": "s76-scheduler@mattjakeman.com", "name": "System76 Scheduler", "pname": "system76-scheduler", "description": "Integrates with System76 Scheduler to prioritise foreground processes.\nNote: system76-scheduler must be installed separately!\nThis extension is not affiliated with nor supported by System76.", "link": "https://extensions.gnome.org/extension/4854/system76-scheduler/", "shell_version_map": {"40": {"version": "2", "sha256": "0sa3skad3vxbiqq9cy74r6s2nfadxjnjwyl9hnp4p9qwnr5qiwhq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVncmF0ZXMgd2l0aCBTeXN0ZW03NiBTY2hlZHVsZXIgdG8gcHJpb3JpdGlzZSBmb3JlZ3JvdW5kIHByb2Nlc3Nlcy5cbk5vdGU6IHN5c3RlbTc2LXNjaGVkdWxlciBtdXN0IGJlIGluc3RhbGxlZCBzZXBhcmF0ZWx5IVxuVGhpcyBleHRlbnNpb24gaXMgbm90IGFmZmlsaWF0ZWQgd2l0aCBub3Igc3VwcG9ydGVkIGJ5IFN5c3RlbTc2LiIsCiAgIm5hbWUiOiAiU3lzdGVtNzYgU2NoZWR1bGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWpha2VtYW4vczc2LXNjaGVkdWxlci1wbHVnaW4vIiwKICAidXVpZCI6ICJzNzYtc2NoZWR1bGVyQG1hdHRqYWtlbWFuLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "0sa3skad3vxbiqq9cy74r6s2nfadxjnjwyl9hnp4p9qwnr5qiwhq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVncmF0ZXMgd2l0aCBTeXN0ZW03NiBTY2hlZHVsZXIgdG8gcHJpb3JpdGlzZSBmb3JlZ3JvdW5kIHByb2Nlc3Nlcy5cbk5vdGU6IHN5c3RlbTc2LXNjaGVkdWxlciBtdXN0IGJlIGluc3RhbGxlZCBzZXBhcmF0ZWx5IVxuVGhpcyBleHRlbnNpb24gaXMgbm90IGFmZmlsaWF0ZWQgd2l0aCBub3Igc3VwcG9ydGVkIGJ5IFN5c3RlbTc2LiIsCiAgIm5hbWUiOiAiU3lzdGVtNzYgU2NoZWR1bGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWpha2VtYW4vczc2LXNjaGVkdWxlci1wbHVnaW4vIiwKICAidXVpZCI6ICJzNzYtc2NoZWR1bGVyQG1hdHRqYWtlbWFuLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"uuid": "s76-scheduler@mattjakeman.com", "name": "System76 Scheduler", "pname": "system76-scheduler", "description": "Integrates with System76 Scheduler to prioritise foreground processes.\nNote: system76-scheduler must be installed separately!\nThis extension is not affiliated with nor supported by System76.", "link": "https://extensions.gnome.org/extension/4854/system76-scheduler/", "shell_version_map": {"40": {"version": "2", "sha256": "0sa3skad3vxbiqq9cy74r6s2nfadxjnjwyl9hnp4p9qwnr5qiwhq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVncmF0ZXMgd2l0aCBTeXN0ZW03NiBTY2hlZHVsZXIgdG8gcHJpb3JpdGlzZSBmb3JlZ3JvdW5kIHByb2Nlc3Nlcy5cbk5vdGU6IHN5c3RlbTc2LXNjaGVkdWxlciBtdXN0IGJlIGluc3RhbGxlZCBzZXBhcmF0ZWx5IVxuVGhpcyBleHRlbnNpb24gaXMgbm90IGFmZmlsaWF0ZWQgd2l0aCBub3Igc3VwcG9ydGVkIGJ5IFN5c3RlbTc2LiIsCiAgIm5hbWUiOiAiU3lzdGVtNzYgU2NoZWR1bGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWpha2VtYW4vczc2LXNjaGVkdWxlci1wbHVnaW4vIiwKICAidXVpZCI6ICJzNzYtc2NoZWR1bGVyQG1hdHRqYWtlbWFuLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "0sa3skad3vxbiqq9cy74r6s2nfadxjnjwyl9hnp4p9qwnr5qiwhq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVncmF0ZXMgd2l0aCBTeXN0ZW03NiBTY2hlZHVsZXIgdG8gcHJpb3JpdGlzZSBmb3JlZ3JvdW5kIHByb2Nlc3Nlcy5cbk5vdGU6IHN5c3RlbTc2LXNjaGVkdWxlciBtdXN0IGJlIGluc3RhbGxlZCBzZXBhcmF0ZWx5IVxuVGhpcyBleHRlbnNpb24gaXMgbm90IGFmZmlsaWF0ZWQgd2l0aCBub3Igc3VwcG9ydGVkIGJ5IFN5c3RlbTc2LiIsCiAgIm5hbWUiOiAiU3lzdGVtNzYgU2NoZWR1bGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWpha2VtYW4vczc2LXNjaGVkdWxlci1wbHVnaW4vIiwKICAidXVpZCI6ICJzNzYtc2NoZWR1bGVyQG1hdHRqYWtlbWFuLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}, "42": {"version": "2", "sha256": "0sa3skad3vxbiqq9cy74r6s2nfadxjnjwyl9hnp4p9qwnr5qiwhq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVncmF0ZXMgd2l0aCBTeXN0ZW03NiBTY2hlZHVsZXIgdG8gcHJpb3JpdGlzZSBmb3JlZ3JvdW5kIHByb2Nlc3Nlcy5cbk5vdGU6IHN5c3RlbTc2LXNjaGVkdWxlciBtdXN0IGJlIGluc3RhbGxlZCBzZXBhcmF0ZWx5IVxuVGhpcyBleHRlbnNpb24gaXMgbm90IGFmZmlsaWF0ZWQgd2l0aCBub3Igc3VwcG9ydGVkIGJ5IFN5c3RlbTc2LiIsCiAgIm5hbWUiOiAiU3lzdGVtNzYgU2NoZWR1bGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWpha2VtYW4vczc2LXNjaGVkdWxlci1wbHVnaW4vIiwKICAidXVpZCI6ICJzNzYtc2NoZWR1bGVyQG1hdHRqYWtlbWFuLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "quarterwindows@troyready.com", "name": "Quarter Windows", "pname": "quarter-windows", "description": "Add additional window management shortcuts.\n\nSee extension homepage for list of shortcuts and commands to customize them.", "link": "https://extensions.gnome.org/extension/4857/quarter-windows/", "shell_version_map": {"41": {"version": "2", "sha256": "00yiqgswcl3psijxi46sb8bxqfxb1a9i93frb90a5292a0x7lmzi", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhZGRpdGlvbmFsIHdpbmRvdyBtYW5hZ2VtZW50IHNob3J0Y3V0cy5cblxuU2VlIGV4dGVuc2lvbiBob21lcGFnZSBmb3IgbGlzdCBvZiBzaG9ydGN1dHMgYW5kIGNvbW1hbmRzIHRvIGN1c3RvbWl6ZSB0aGVtLiIsCiAgIm5hbWUiOiAiUXVhcnRlciBXaW5kb3dzIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Ryb3lyZWFkeS9xdWFydGVyd2luZG93cyIsCiAgInV1aWQiOiAicXVhcnRlcndpbmRvd3NAdHJveXJlYWR5LmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
 , {"uuid": "batt_consumption_wattmetter@wennaspeedy", "name": "Battery Consumption Watt Meter", "pname": "bat_consumption_wattmeter", "description": "Shows actual charging/discharging consumption (+/-) in Watt next to battery percentage level.\nEnable percentage label when disabled.\nSync reload set to 4 seconds.\nNo consumption info when battery is full.", "link": "https://extensions.gnome.org/extension/4862/bat_consumption_wattmeter/", "shell_version_map": {"40": {"version": "4", "sha256": "0sx8pszlig69wha6xj8ll4l1kwi8avxhi148fq55r0z25yz6pq27", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGFjdHVhbCBjaGFyZ2luZy9kaXNjaGFyZ2luZyBjb25zdW1wdGlvbiAoKy8tKSBpbiBXYXR0IG5leHQgdG8gYmF0dGVyeSBwZXJjZW50YWdlIGxldmVsLlxuRW5hYmxlIHBlcmNlbnRhZ2UgbGFiZWwgd2hlbiBkaXNhYmxlZC5cblN5bmMgcmVsb2FkIHNldCB0byA0IHNlY29uZHMuXG5ObyBjb25zdW1wdGlvbiBpbmZvIHdoZW4gYmF0dGVyeSBpcyBmdWxsLiIsCiAgIm5hbWUiOiAiQmF0dGVyeSBDb25zdW1wdGlvbiBXYXR0IE1ldGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS93ZW5uYXNwZWVkeS9iYXR0X2NvbnN1bXB0aW9uX3dhdHRtZXR0ZXIiLAogICJ1dWlkIjogImJhdHRfY29uc3VtcHRpb25fd2F0dG1ldHRlckB3ZW5uYXNwZWVkeSIsCiAgInZlcnNpb24iOiA0Cn0="}, "41": {"version": "4", "sha256": "0sx8pszlig69wha6xj8ll4l1kwi8avxhi148fq55r0z25yz6pq27", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNob3dzIGFjdHVhbCBjaGFyZ2luZy9kaXNjaGFyZ2luZyBjb25zdW1wdGlvbiAoKy8tKSBpbiBXYXR0IG5leHQgdG8gYmF0dGVyeSBwZXJjZW50YWdlIGxldmVsLlxuRW5hYmxlIHBlcmNlbnRhZ2UgbGFiZWwgd2hlbiBkaXNhYmxlZC5cblN5bmMgcmVsb2FkIHNldCB0byA0IHNlY29uZHMuXG5ObyBjb25zdW1wdGlvbiBpbmZvIHdoZW4gYmF0dGVyeSBpcyBmdWxsLiIsCiAgIm5hbWUiOiAiQmF0dGVyeSBDb25zdW1wdGlvbiBXYXR0IE1ldGVyIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS93ZW5uYXNwZWVkeS9iYXR0X2NvbnN1bXB0aW9uX3dhdHRtZXR0ZXIiLAogICJ1dWlkIjogImJhdHRfY29uc3VtcHRpb25fd2F0dG1ldHRlckB3ZW5uYXNwZWVkeSIsCiAgInZlcnNpb24iOiA0Cn0="}}}
 , {"uuid": "tl@l.pnx.me", "name": "tl Integration", "pname": "pnx-time-logger", "description": "Integration for github.com/larowlan/tl", "link": "https://extensions.gnome.org/extension/4866/pnx-time-logger/", "shell_version_map": {"41": {"version": "1", "sha256": "06bf9hl0xdxmpyhh0qk2zbfhx8m2gw1fwfym9rv1znh1m9ymjr8h", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkludGVncmF0aW9uIGZvciBnaXRodWIuY29tL2xhcm93bGFuL3RsIiwKICAibmFtZSI6ICJ0bCBJbnRlZ3JhdGlvbiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zNiIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAidGxAbC5wbngubWUiLAogICJ2ZXJzaW9uIjogMQp9"}}}
 , {"uuid": "dollar-pkr@shoaibzs.github.com", "name": "Dollar-PKR", "pname": "dollar-pkr", "description": "(USD US Dollar) converted to (PKR Pakistan Rs). Updates are received every 30 seconds and are based on information provided by AwesomeAPI API, which can be consulted directly by accessing the address https://docs.awesomeapi.com.br. (based on michael.mattos's Dollar https://extensions.gnome.org/extension/4573/dollar/)", "link": "https://extensions.gnome.org/extension/4869/dollar-pkr/", "shell_version_map": {"38": {"version": "2", "sha256": "09cb6f7v3j3zfanzblj9x4wj6bpnca3v9yjfh3kjz5zl3lxy8gqs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIihVU0QgVVMgRG9sbGFyKSBjb252ZXJ0ZWQgdG8gKFBLUiBQYWtpc3RhbiBScykuIFVwZGF0ZXMgYXJlIHJlY2VpdmVkIGV2ZXJ5IDMwIHNlY29uZHMgYW5kIGFyZSBiYXNlZCBvbiBpbmZvcm1hdGlvbiBwcm92aWRlZCBieSBBd2Vzb21lQVBJIEFQSSwgd2hpY2ggY2FuIGJlIGNvbnN1bHRlZCBkaXJlY3RseSBieSBhY2Nlc3NpbmcgdGhlIGFkZHJlc3MgaHR0cHM6Ly9kb2NzLmF3ZXNvbWVhcGkuY29tLmJyLiAoYmFzZWQgb24gbWljaGFlbC5tYXR0b3MncyBEb2xsYXIgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDU3My9kb2xsYXIvKSIsCiAgIm5hbWUiOiAiRG9sbGFyLVBLUiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2hvYWlienMvZG9sbGFyLXBrciIsCiAgInV1aWQiOiAiZG9sbGFyLXBrckBzaG9haWJ6cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "40": {"version": "2", "sha256": "09cb6f7v3j3zfanzblj9x4wj6bpnca3v9yjfh3kjz5zl3lxy8gqs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIihVU0QgVVMgRG9sbGFyKSBjb252ZXJ0ZWQgdG8gKFBLUiBQYWtpc3RhbiBScykuIFVwZGF0ZXMgYXJlIHJlY2VpdmVkIGV2ZXJ5IDMwIHNlY29uZHMgYW5kIGFyZSBiYXNlZCBvbiBpbmZvcm1hdGlvbiBwcm92aWRlZCBieSBBd2Vzb21lQVBJIEFQSSwgd2hpY2ggY2FuIGJlIGNvbnN1bHRlZCBkaXJlY3RseSBieSBhY2Nlc3NpbmcgdGhlIGFkZHJlc3MgaHR0cHM6Ly9kb2NzLmF3ZXNvbWVhcGkuY29tLmJyLiAoYmFzZWQgb24gbWljaGFlbC5tYXR0b3MncyBEb2xsYXIgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDU3My9kb2xsYXIvKSIsCiAgIm5hbWUiOiAiRG9sbGFyLVBLUiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2hvYWlienMvZG9sbGFyLXBrciIsCiAgInV1aWQiOiAiZG9sbGFyLXBrckBzaG9haWJ6cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}, "41": {"version": "2", "sha256": "09cb6f7v3j3zfanzblj9x4wj6bpnca3v9yjfh3kjz5zl3lxy8gqs", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIihVU0QgVVMgRG9sbGFyKSBjb252ZXJ0ZWQgdG8gKFBLUiBQYWtpc3RhbiBScykuIFVwZGF0ZXMgYXJlIHJlY2VpdmVkIGV2ZXJ5IDMwIHNlY29uZHMgYW5kIGFyZSBiYXNlZCBvbiBpbmZvcm1hdGlvbiBwcm92aWRlZCBieSBBd2Vzb21lQVBJIEFQSSwgd2hpY2ggY2FuIGJlIGNvbnN1bHRlZCBkaXJlY3RseSBieSBhY2Nlc3NpbmcgdGhlIGFkZHJlc3MgaHR0cHM6Ly9kb2NzLmF3ZXNvbWVhcGkuY29tLmJyLiAoYmFzZWQgb24gbWljaGFlbC5tYXR0b3MncyBEb2xsYXIgaHR0cHM6Ly9leHRlbnNpb25zLmdub21lLm9yZy9leHRlbnNpb24vNDU3My9kb2xsYXIvKSIsCiAgIm5hbWUiOiAiRG9sbGFyLVBLUiIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiMy4zOCIsCiAgICAiNDAiLAogICAgIjQxIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vc2hvYWlienMvZG9sbGFyLXBrciIsCiAgInV1aWQiOiAiZG9sbGFyLXBrckBzaG9haWJ6cy5naXRodWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
 , {"uuid": "dozenalclock@mble.dk", "name": "Dozenal Clock", "pname": "dozenal-clock", "description": "Converts the clock to a dozenal one", "link": "https://extensions.gnome.org/extension/4877/dozenal-clock/", "shell_version_map": {"38": {"version": "3", "sha256": "1p7bsv89k3pz16kcjldmdnsilwc3jx1v419nvn5vj7n2xg4zvk0j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnZlcnRzIHRoZSBjbG9jayB0byBhIGRvemVuYWwgb25lIiwKICAibmFtZSI6ICJEb3plbmFsIENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4LjEiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL21ibGVkL2RvemVuYWwtY2xvY2stZ25vbWUiLAogICJ1dWlkIjogImRvemVuYWxjbG9ja0BtYmxlLmRrIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "40": {"version": "3", "sha256": "1p7bsv89k3pz16kcjldmdnsilwc3jx1v419nvn5vj7n2xg4zvk0j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnZlcnRzIHRoZSBjbG9jayB0byBhIGRvemVuYWwgb25lIiwKICAibmFtZSI6ICJEb3plbmFsIENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4LjEiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL21ibGVkL2RvemVuYWwtY2xvY2stZ25vbWUiLAogICJ1dWlkIjogImRvemVuYWxjbG9ja0BtYmxlLmRrIiwKICAidmVyc2lvbiI6IDMKfQ=="}, "41": {"version": "3", "sha256": "1p7bsv89k3pz16kcjldmdnsilwc3jx1v419nvn5vj7n2xg4zvk0j", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNvbnZlcnRzIHRoZSBjbG9jayB0byBhIGRvemVuYWwgb25lIiwKICAibmFtZSI6ICJEb3plbmFsIENsb2NrIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjI4LjEiLAogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRsYWIuY29tL21ibGVkL2RvemVuYWwtY2xvY2stZ25vbWUiLAogICJ1dWlkIjogImRvemVuYWxjbG9ja0BtYmxlLmRrIiwKICAidmVyc2lvbiI6IDMKfQ=="}}}
 , {"uuid": "wattmeter-forked@clementherve.fr", "name": "wattmeter-forked", "pname": "wattmeter-forked", "description": "A fork of the Wattmeter extension by blackBriar, compatible with gnome 40. Original version: https://extensions.gnome.org/extension/1867/wattmeter/", "link": "https://extensions.gnome.org/extension/4886/wattmeter-forked/", "shell_version_map": {"40": {"version": "3", "sha256": "0hg6faz9j1vvxx8dyjhwx8nc2c0zbwxi9gdg2nhx839kyl3bk9kn", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkEgZm9yayBvZiB0aGUgV2F0dG1ldGVyIGV4dGVuc2lvbiBieSBibGFja0JyaWFyLCBjb21wYXRpYmxlIHdpdGggZ25vbWUgNDAuIE9yaWdpbmFsIHZlcnNpb246IGh0dHBzOi8vZXh0ZW5zaW9ucy5nbm9tZS5vcmcvZXh0ZW5zaW9uLzE4Njcvd2F0dG1ldGVyLyIsCiAgIm5hbWUiOiAid2F0dG1ldGVyLWZvcmtlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9jbGVtZW50aGVydmUvd2F0dG1ldGVyLWZvcmtlZCIsCiAgInV1aWQiOiAid2F0dG1ldGVyLWZvcmtlZEBjbGVtZW50aGVydmUuZnIiLAogICJ2ZXJzaW9uIjogMwp9"}}}
-, {"uuid": "snap-manager-lite@fthx", "name": "Snap Manager Lite", "pname": "snap-manager-lite", "description": "Popup menu in the top bar to easily manage usual snap tasks (list, changes, refresh, remove, install...).\n\n No update notification at session start-up: use Snap Manager extension for that.\n\n All the results of actions are displayed in GNOME Terminal, so you can exactly know what you are doing and what is processing. Very light extension, no background process, no periodic background task.\n\n You can disable snaps auto updates for a limited time (up to one month, renewable), consequently be notified of snap updates and manually install them.\n\n This is not an official Ubuntu/Canonical extension.", "link": "https://extensions.gnome.org/extension/4889/snap-manager-lite/", "shell_version_map": {"38": {"version": "2", "sha256": "19x72pjbyqnk871680v88c40brq33ap99xv32wk9dknmiaa5bfd3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBvcHVwIG1lbnUgaW4gdGhlIHRvcCBiYXIgdG8gZWFzaWx5IG1hbmFnZSB1c3VhbCBzbmFwIHRhc2tzIChsaXN0LCBjaGFuZ2VzLCByZWZyZXNoLCByZW1vdmUsIGluc3RhbGwuLi4pLlxuXG4gTm8gdXBkYXRlIG5vdGlmaWNhdGlvbiBhdCBzZXNzaW9uIHN0YXJ0LXVwOiB1c2UgU25hcCBNYW5hZ2VyIGV4dGVuc2lvbiBmb3IgdGhhdC5cblxuIEFsbCB0aGUgcmVzdWx0cyBvZiBhY3Rpb25zIGFyZSBkaXNwbGF5ZWQgaW4gR05PTUUgVGVybWluYWwsIHNvIHlvdSBjYW4gZXhhY3RseSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBhbmQgd2hhdCBpcyBwcm9jZXNzaW5nLiBWZXJ5IGxpZ2h0IGV4dGVuc2lvbiwgbm8gYmFja2dyb3VuZCBwcm9jZXNzLCBubyBwZXJpb2RpYyBiYWNrZ3JvdW5kIHRhc2suXG5cbiBZb3UgY2FuIGRpc2FibGUgc25hcHMgYXV0byB1cGRhdGVzIGZvciBhIGxpbWl0ZWQgdGltZSAodXAgdG8gb25lIG1vbnRoLCByZW5ld2FibGUpLCBjb25zZXF1ZW50bHkgYmUgbm90aWZpZWQgb2Ygc25hcCB1cGRhdGVzIGFuZCBtYW51YWxseSBpbnN0YWxsIHRoZW0uXG5cbiBUaGlzIGlzIG5vdCBhbiBvZmZpY2lhbCBVYnVudHUvQ2Fub25pY2FsIGV4dGVuc2lvbi4iLAogICJuYW1lIjogIlNuYXAgTWFuYWdlciBMaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9zbmFwLW1hbmFnZXItbGl0ZSIsCiAgInV1aWQiOiAic25hcC1tYW5hZ2VyLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "19x72pjbyqnk871680v88c40brq33ap99xv32wk9dknmiaa5bfd3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBvcHVwIG1lbnUgaW4gdGhlIHRvcCBiYXIgdG8gZWFzaWx5IG1hbmFnZSB1c3VhbCBzbmFwIHRhc2tzIChsaXN0LCBjaGFuZ2VzLCByZWZyZXNoLCByZW1vdmUsIGluc3RhbGwuLi4pLlxuXG4gTm8gdXBkYXRlIG5vdGlmaWNhdGlvbiBhdCBzZXNzaW9uIHN0YXJ0LXVwOiB1c2UgU25hcCBNYW5hZ2VyIGV4dGVuc2lvbiBmb3IgdGhhdC5cblxuIEFsbCB0aGUgcmVzdWx0cyBvZiBhY3Rpb25zIGFyZSBkaXNwbGF5ZWQgaW4gR05PTUUgVGVybWluYWwsIHNvIHlvdSBjYW4gZXhhY3RseSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBhbmQgd2hhdCBpcyBwcm9jZXNzaW5nLiBWZXJ5IGxpZ2h0IGV4dGVuc2lvbiwgbm8gYmFja2dyb3VuZCBwcm9jZXNzLCBubyBwZXJpb2RpYyBiYWNrZ3JvdW5kIHRhc2suXG5cbiBZb3UgY2FuIGRpc2FibGUgc25hcHMgYXV0byB1cGRhdGVzIGZvciBhIGxpbWl0ZWQgdGltZSAodXAgdG8gb25lIG1vbnRoLCByZW5ld2FibGUpLCBjb25zZXF1ZW50bHkgYmUgbm90aWZpZWQgb2Ygc25hcCB1cGRhdGVzIGFuZCBtYW51YWxseSBpbnN0YWxsIHRoZW0uXG5cbiBUaGlzIGlzIG5vdCBhbiBvZmZpY2lhbCBVYnVudHUvQ2Fub25pY2FsIGV4dGVuc2lvbi4iLAogICJuYW1lIjogIlNuYXAgTWFuYWdlciBMaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9zbmFwLW1hbmFnZXItbGl0ZSIsCiAgInV1aWQiOiAic25hcC1tYW5hZ2VyLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "19x72pjbyqnk871680v88c40brq33ap99xv32wk9dknmiaa5bfd3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBvcHVwIG1lbnUgaW4gdGhlIHRvcCBiYXIgdG8gZWFzaWx5IG1hbmFnZSB1c3VhbCBzbmFwIHRhc2tzIChsaXN0LCBjaGFuZ2VzLCByZWZyZXNoLCByZW1vdmUsIGluc3RhbGwuLi4pLlxuXG4gTm8gdXBkYXRlIG5vdGlmaWNhdGlvbiBhdCBzZXNzaW9uIHN0YXJ0LXVwOiB1c2UgU25hcCBNYW5hZ2VyIGV4dGVuc2lvbiBmb3IgdGhhdC5cblxuIEFsbCB0aGUgcmVzdWx0cyBvZiBhY3Rpb25zIGFyZSBkaXNwbGF5ZWQgaW4gR05PTUUgVGVybWluYWwsIHNvIHlvdSBjYW4gZXhhY3RseSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBhbmQgd2hhdCBpcyBwcm9jZXNzaW5nLiBWZXJ5IGxpZ2h0IGV4dGVuc2lvbiwgbm8gYmFja2dyb3VuZCBwcm9jZXNzLCBubyBwZXJpb2RpYyBiYWNrZ3JvdW5kIHRhc2suXG5cbiBZb3UgY2FuIGRpc2FibGUgc25hcHMgYXV0byB1cGRhdGVzIGZvciBhIGxpbWl0ZWQgdGltZSAodXAgdG8gb25lIG1vbnRoLCByZW5ld2FibGUpLCBjb25zZXF1ZW50bHkgYmUgbm90aWZpZWQgb2Ygc25hcCB1cGRhdGVzIGFuZCBtYW51YWxseSBpbnN0YWxsIHRoZW0uXG5cbiBUaGlzIGlzIG5vdCBhbiBvZmZpY2lhbCBVYnVudHUvQ2Fub25pY2FsIGV4dGVuc2lvbi4iLAogICJuYW1lIjogIlNuYXAgTWFuYWdlciBMaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9zbmFwLW1hbmFnZXItbGl0ZSIsCiAgInV1aWQiOiAic25hcC1tYW5hZ2VyLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"uuid": "Hitokoto@teaper.dev", "name": "Hitokoto", "pname": "hitokoto", "description": "一言短句", "link": "https://extensions.gnome.org/extension/4887/hitokoto/", "shell_version_map": {"41": {"version": "1", "sha256": "1dmsrgxnajwifc5wlrqhcddyf10a5m94wycnx5411j538607v83k", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlx1NGUwMFx1OGEwMFx1NzdlZFx1NTNlNSIsCiAgIm5hbWUiOiAiSGl0b2tvdG8iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQxLjEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90ZWFwZXIvZ25vbWUtc2hlbGwtZXh0ZW5zaW9uLWhpdG9rb3RvIiwKICAidXVpZCI6ICJIaXRva290b0B0ZWFwZXIuZGV2IiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
+, {"uuid": "snap-manager-lite@fthx", "name": "Snap Manager Lite", "pname": "snap-manager-lite", "description": "Popup menu in the top bar to easily manage usual snap tasks (list, changes, refresh, remove, install...).\n\n No update notification at session start-up: use Snap Manager extension for that.\n\n All the results of actions are displayed in GNOME Terminal, so you can exactly know what you are doing and what is processing. Very light extension, no background process, no periodic background task.\n\n You can disable snaps auto updates for a limited time (up to one month, renewable), consequently be notified of snap updates and manually install them.\n\n This is not an official Ubuntu/Canonical extension.", "link": "https://extensions.gnome.org/extension/4889/snap-manager-lite/", "shell_version_map": {"38": {"version": "2", "sha256": "19x72pjbyqnk871680v88c40brq33ap99xv32wk9dknmiaa5bfd3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBvcHVwIG1lbnUgaW4gdGhlIHRvcCBiYXIgdG8gZWFzaWx5IG1hbmFnZSB1c3VhbCBzbmFwIHRhc2tzIChsaXN0LCBjaGFuZ2VzLCByZWZyZXNoLCByZW1vdmUsIGluc3RhbGwuLi4pLlxuXG4gTm8gdXBkYXRlIG5vdGlmaWNhdGlvbiBhdCBzZXNzaW9uIHN0YXJ0LXVwOiB1c2UgU25hcCBNYW5hZ2VyIGV4dGVuc2lvbiBmb3IgdGhhdC5cblxuIEFsbCB0aGUgcmVzdWx0cyBvZiBhY3Rpb25zIGFyZSBkaXNwbGF5ZWQgaW4gR05PTUUgVGVybWluYWwsIHNvIHlvdSBjYW4gZXhhY3RseSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBhbmQgd2hhdCBpcyBwcm9jZXNzaW5nLiBWZXJ5IGxpZ2h0IGV4dGVuc2lvbiwgbm8gYmFja2dyb3VuZCBwcm9jZXNzLCBubyBwZXJpb2RpYyBiYWNrZ3JvdW5kIHRhc2suXG5cbiBZb3UgY2FuIGRpc2FibGUgc25hcHMgYXV0byB1cGRhdGVzIGZvciBhIGxpbWl0ZWQgdGltZSAodXAgdG8gb25lIG1vbnRoLCByZW5ld2FibGUpLCBjb25zZXF1ZW50bHkgYmUgbm90aWZpZWQgb2Ygc25hcCB1cGRhdGVzIGFuZCBtYW51YWxseSBpbnN0YWxsIHRoZW0uXG5cbiBUaGlzIGlzIG5vdCBhbiBvZmZpY2lhbCBVYnVudHUvQ2Fub25pY2FsIGV4dGVuc2lvbi4iLAogICJuYW1lIjogIlNuYXAgTWFuYWdlciBMaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9zbmFwLW1hbmFnZXItbGl0ZSIsCiAgInV1aWQiOiAic25hcC1tYW5hZ2VyLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "40": {"version": "2", "sha256": "19x72pjbyqnk871680v88c40brq33ap99xv32wk9dknmiaa5bfd3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBvcHVwIG1lbnUgaW4gdGhlIHRvcCBiYXIgdG8gZWFzaWx5IG1hbmFnZSB1c3VhbCBzbmFwIHRhc2tzIChsaXN0LCBjaGFuZ2VzLCByZWZyZXNoLCByZW1vdmUsIGluc3RhbGwuLi4pLlxuXG4gTm8gdXBkYXRlIG5vdGlmaWNhdGlvbiBhdCBzZXNzaW9uIHN0YXJ0LXVwOiB1c2UgU25hcCBNYW5hZ2VyIGV4dGVuc2lvbiBmb3IgdGhhdC5cblxuIEFsbCB0aGUgcmVzdWx0cyBvZiBhY3Rpb25zIGFyZSBkaXNwbGF5ZWQgaW4gR05PTUUgVGVybWluYWwsIHNvIHlvdSBjYW4gZXhhY3RseSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBhbmQgd2hhdCBpcyBwcm9jZXNzaW5nLiBWZXJ5IGxpZ2h0IGV4dGVuc2lvbiwgbm8gYmFja2dyb3VuZCBwcm9jZXNzLCBubyBwZXJpb2RpYyBiYWNrZ3JvdW5kIHRhc2suXG5cbiBZb3UgY2FuIGRpc2FibGUgc25hcHMgYXV0byB1cGRhdGVzIGZvciBhIGxpbWl0ZWQgdGltZSAodXAgdG8gb25lIG1vbnRoLCByZW5ld2FibGUpLCBjb25zZXF1ZW50bHkgYmUgbm90aWZpZWQgb2Ygc25hcCB1cGRhdGVzIGFuZCBtYW51YWxseSBpbnN0YWxsIHRoZW0uXG5cbiBUaGlzIGlzIG5vdCBhbiBvZmZpY2lhbCBVYnVudHUvQ2Fub25pY2FsIGV4dGVuc2lvbi4iLAogICJuYW1lIjogIlNuYXAgTWFuYWdlciBMaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9zbmFwLW1hbmFnZXItbGl0ZSIsCiAgInV1aWQiOiAic25hcC1tYW5hZ2VyLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "41": {"version": "2", "sha256": "19x72pjbyqnk871680v88c40brq33ap99xv32wk9dknmiaa5bfd3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBvcHVwIG1lbnUgaW4gdGhlIHRvcCBiYXIgdG8gZWFzaWx5IG1hbmFnZSB1c3VhbCBzbmFwIHRhc2tzIChsaXN0LCBjaGFuZ2VzLCByZWZyZXNoLCByZW1vdmUsIGluc3RhbGwuLi4pLlxuXG4gTm8gdXBkYXRlIG5vdGlmaWNhdGlvbiBhdCBzZXNzaW9uIHN0YXJ0LXVwOiB1c2UgU25hcCBNYW5hZ2VyIGV4dGVuc2lvbiBmb3IgdGhhdC5cblxuIEFsbCB0aGUgcmVzdWx0cyBvZiBhY3Rpb25zIGFyZSBkaXNwbGF5ZWQgaW4gR05PTUUgVGVybWluYWwsIHNvIHlvdSBjYW4gZXhhY3RseSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBhbmQgd2hhdCBpcyBwcm9jZXNzaW5nLiBWZXJ5IGxpZ2h0IGV4dGVuc2lvbiwgbm8gYmFja2dyb3VuZCBwcm9jZXNzLCBubyBwZXJpb2RpYyBiYWNrZ3JvdW5kIHRhc2suXG5cbiBZb3UgY2FuIGRpc2FibGUgc25hcHMgYXV0byB1cGRhdGVzIGZvciBhIGxpbWl0ZWQgdGltZSAodXAgdG8gb25lIG1vbnRoLCByZW5ld2FibGUpLCBjb25zZXF1ZW50bHkgYmUgbm90aWZpZWQgb2Ygc25hcCB1cGRhdGVzIGFuZCBtYW51YWxseSBpbnN0YWxsIHRoZW0uXG5cbiBUaGlzIGlzIG5vdCBhbiBvZmZpY2lhbCBVYnVudHUvQ2Fub25pY2FsIGV4dGVuc2lvbi4iLAogICJuYW1lIjogIlNuYXAgTWFuYWdlciBMaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9zbmFwLW1hbmFnZXItbGl0ZSIsCiAgInV1aWQiOiAic25hcC1tYW5hZ2VyLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}, "42": {"version": "2", "sha256": "19x72pjbyqnk871680v88c40brq33ap99xv32wk9dknmiaa5bfd3", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlBvcHVwIG1lbnUgaW4gdGhlIHRvcCBiYXIgdG8gZWFzaWx5IG1hbmFnZSB1c3VhbCBzbmFwIHRhc2tzIChsaXN0LCBjaGFuZ2VzLCByZWZyZXNoLCByZW1vdmUsIGluc3RhbGwuLi4pLlxuXG4gTm8gdXBkYXRlIG5vdGlmaWNhdGlvbiBhdCBzZXNzaW9uIHN0YXJ0LXVwOiB1c2UgU25hcCBNYW5hZ2VyIGV4dGVuc2lvbiBmb3IgdGhhdC5cblxuIEFsbCB0aGUgcmVzdWx0cyBvZiBhY3Rpb25zIGFyZSBkaXNwbGF5ZWQgaW4gR05PTUUgVGVybWluYWwsIHNvIHlvdSBjYW4gZXhhY3RseSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBhbmQgd2hhdCBpcyBwcm9jZXNzaW5nLiBWZXJ5IGxpZ2h0IGV4dGVuc2lvbiwgbm8gYmFja2dyb3VuZCBwcm9jZXNzLCBubyBwZXJpb2RpYyBiYWNrZ3JvdW5kIHRhc2suXG5cbiBZb3UgY2FuIGRpc2FibGUgc25hcHMgYXV0byB1cGRhdGVzIGZvciBhIGxpbWl0ZWQgdGltZSAodXAgdG8gb25lIG1vbnRoLCByZW5ld2FibGUpLCBjb25zZXF1ZW50bHkgYmUgbm90aWZpZWQgb2Ygc25hcCB1cGRhdGVzIGFuZCBtYW51YWxseSBpbnN0YWxsIHRoZW0uXG5cbiBUaGlzIGlzIG5vdCBhbiBvZmZpY2lhbCBVYnVudHUvQ2Fub25pY2FsIGV4dGVuc2lvbi4iLAogICJuYW1lIjogIlNuYXAgTWFuYWdlciBMaXRlIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vZnRoeC9zbmFwLW1hbmFnZXItbGl0ZSIsCiAgInV1aWQiOiAic25hcC1tYW5hZ2VyLWxpdGVAZnRoeCIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"uuid": "move-panel@lzbz.gitlab.com", "name": "Move Panel", "pname": "move-panel", "description": "Moves panel to secondary monitor on startup, without changing the primary display. Only works on Wayland.", "link": "https://extensions.gnome.org/extension/4890/move-panel/", "shell_version_map": {"41": {"version": "2", "sha256": "1rr585an3ryfyyfcvkj8g2d76vqk6kr1qr8yzbm7z0aava16syzb", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIk1vdmVzIHBhbmVsIHRvIHNlY29uZGFyeSBtb25pdG9yIG9uIHN0YXJ0dXAsIHdpdGhvdXQgY2hhbmdpbmcgdGhlIHByaW1hcnkgZGlzcGxheS4gT25seSB3b3JrcyBvbiBXYXlsYW5kLiIsCiAgIm5hbWUiOiAiTW92ZSBQYW5lbCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0bGFiLmNvbS9semJ6L21vdmUtcGFuZWwiLAogICJ1dWlkIjogIm1vdmUtcGFuZWxAbHpiei5naXRsYWIuY29tIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
+, {"uuid": "usable-overview@mechtifs", "name": "Usable Overview", "pname": "usable-overview", "description": "Right clicking when activating the top-left hot corner brings up the application grid. It makes way more sense than moving your cursor all  the way down the screen then click that stinky icon.", "link": "https://extensions.gnome.org/extension/4895/usable-overview/", "shell_version_map": {"40": {"version": "1", "sha256": "0pkjsgw8f5m2a9wzph5fim6g4ky842qi5ncfxi5nbcdm7y6gj74f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJpZ2h0IGNsaWNraW5nIHdoZW4gYWN0aXZhdGluZyB0aGUgdG9wLWxlZnQgaG90IGNvcm5lciBicmluZ3MgdXAgdGhlIGFwcGxpY2F0aW9uIGdyaWQuIEl0IG1ha2VzIHdheSBtb3JlIHNlbnNlIHRoYW4gbW92aW5nIHlvdXIgY3Vyc29yIGFsbCAgdGhlIHdheSBkb3duIHRoZSBzY3JlZW4gdGhlbiBjbGljayB0aGF0IHN0aW5reSBpY29uLiIsCiAgIm5hbWUiOiAiVXNhYmxlIE92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWVjaHRpZnMvdXNhYmxlLW92ZXJ2aWV3IiwKICAidXVpZCI6ICJ1c2FibGUtb3ZlcnZpZXdAbWVjaHRpZnMiLAogICJ2ZXJzaW9uIjogMQp9"}, "41": {"version": "1", "sha256": "0pkjsgw8f5m2a9wzph5fim6g4ky842qi5ncfxi5nbcdm7y6gj74f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJpZ2h0IGNsaWNraW5nIHdoZW4gYWN0aXZhdGluZyB0aGUgdG9wLWxlZnQgaG90IGNvcm5lciBicmluZ3MgdXAgdGhlIGFwcGxpY2F0aW9uIGdyaWQuIEl0IG1ha2VzIHdheSBtb3JlIHNlbnNlIHRoYW4gbW92aW5nIHlvdXIgY3Vyc29yIGFsbCAgdGhlIHdheSBkb3duIHRoZSBzY3JlZW4gdGhlbiBjbGljayB0aGF0IHN0aW5reSBpY29uLiIsCiAgIm5hbWUiOiAiVXNhYmxlIE92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWVjaHRpZnMvdXNhYmxlLW92ZXJ2aWV3IiwKICAidXVpZCI6ICJ1c2FibGUtb3ZlcnZpZXdAbWVjaHRpZnMiLAogICJ2ZXJzaW9uIjogMQp9"}, "42": {"version": "1", "sha256": "0pkjsgw8f5m2a9wzph5fim6g4ky842qi5ncfxi5nbcdm7y6gj74f", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlJpZ2h0IGNsaWNraW5nIHdoZW4gYWN0aXZhdGluZyB0aGUgdG9wLWxlZnQgaG90IGNvcm5lciBicmluZ3MgdXAgdGhlIGFwcGxpY2F0aW9uIGdyaWQuIEl0IG1ha2VzIHdheSBtb3JlIHNlbnNlIHRoYW4gbW92aW5nIHlvdXIgY3Vyc29yIGFsbCAgdGhlIHdheSBkb3duIHRoZSBzY3JlZW4gdGhlbiBjbGljayB0aGF0IHN0aW5reSBpY29uLiIsCiAgIm5hbWUiOiAiVXNhYmxlIE92ZXJ2aWV3IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MCIsCiAgICAiNDEiLAogICAgIjQyIgogIF0sCiAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vbWVjaHRpZnMvdXNhYmxlLW92ZXJ2aWV3IiwKICAidXVpZCI6ICJ1c2FibGUtb3ZlcnZpZXdAbWVjaHRpZnMiLAogICJ2ZXJzaW9uIjogMQp9"}}}
+, {"uuid": "overview-clicking@mechtifs", "name": "Overview Clicking", "pname": "overview-clicking", "description": "Close the overview or show up application grid by left/right clicking empty space. Forked from click-to-close-overview@l3nn4rt.github.io.", "link": "https://extensions.gnome.org/extension/4898/overview-clicking/", "shell_version_map": {"40": {"version": "1", "sha256": "10f08rn9m66ynrs5jsgxg4qzrimcjdslgs36s8fgcblr5r31kw8i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBvciBzaG93IHVwIGFwcGxpY2F0aW9uIGdyaWQgYnkgbGVmdC9yaWdodCBjbGlja2luZyBlbXB0eSBzcGFjZS4gRm9ya2VkIGZyb20gY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXdAbDNubjRydC5naXRodWIuaW8uIiwKICAibmFtZSI6ICJPdmVydmlldyBDbGlja2luZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21lY2h0aWZzL292ZXJ2aWV3LWNsaWNraW5nIiwKICAidXVpZCI6ICJvdmVydmlldy1jbGlja2luZ0BtZWNodGlmcyIsCiAgInZlcnNpb24iOiAxCn0="}, "41": {"version": "1", "sha256": "10f08rn9m66ynrs5jsgxg4qzrimcjdslgs36s8fgcblr5r31kw8i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBvciBzaG93IHVwIGFwcGxpY2F0aW9uIGdyaWQgYnkgbGVmdC9yaWdodCBjbGlja2luZyBlbXB0eSBzcGFjZS4gRm9ya2VkIGZyb20gY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXdAbDNubjRydC5naXRodWIuaW8uIiwKICAibmFtZSI6ICJPdmVydmlldyBDbGlja2luZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21lY2h0aWZzL292ZXJ2aWV3LWNsaWNraW5nIiwKICAidXVpZCI6ICJvdmVydmlldy1jbGlja2luZ0BtZWNodGlmcyIsCiAgInZlcnNpb24iOiAxCn0="}, "42": {"version": "1", "sha256": "10f08rn9m66ynrs5jsgxg4qzrimcjdslgs36s8fgcblr5r31kw8i", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkNsb3NlIHRoZSBvdmVydmlldyBvciBzaG93IHVwIGFwcGxpY2F0aW9uIGdyaWQgYnkgbGVmdC9yaWdodCBjbGlja2luZyBlbXB0eSBzcGFjZS4gRm9ya2VkIGZyb20gY2xpY2stdG8tY2xvc2Utb3ZlcnZpZXdAbDNubjRydC5naXRodWIuaW8uIiwKICAibmFtZSI6ICJPdmVydmlldyBDbGlja2luZyIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL21lY2h0aWZzL292ZXJ2aWV3LWNsaWNraW5nIiwKICAidXVpZCI6ICJvdmVydmlldy1jbGlja2luZ0BtZWNodGlmcyIsCiAgInZlcnNpb24iOiAxCn0="}}}
+, {"uuid": "speed@eexpss.gmail.com", "name": "Screen Net Speed", "pname": "screen-net-speed", "description": "* Animation net speed show on the screen. You can click it to have fun and pass the time. Can be turned on / off at any time.", "link": "https://extensions.gnome.org/extension/4901/screen-net-speed/", "shell_version_map": {"40": {"version": "2", "sha256": "0ypq91cdl5jjf8l59w6yrp8068w69ykd3y366b5vnq8h75ikrd3y", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIiogQW5pbWF0aW9uIG5ldCBzcGVlZCBzaG93IG9uIHRoZSBzY3JlZW4uIFlvdSBjYW4gY2xpY2sgaXQgdG8gaGF2ZSBmdW4gYW5kIHBhc3MgdGhlIHRpbWUuIENhbiBiZSB0dXJuZWQgb24gLyBvZmYgYXQgYW55IHRpbWUuIiwKICAiZ2V0dGV4dC1kb21haW4iOiAic2NyZWVuLW5ldC1zcGVlZCIsCiAgIm5hbWUiOiAiU2NyZWVuIE5ldCBTcGVlZCIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiCiAgXSwKICAidXJsIjogIiIsCiAgInV1aWQiOiAic3BlZWRAZWV4cHNzLmdtYWlsLmNvbSIsCiAgInZlcnNpb24iOiAyCn0="}}}
+, {"uuid": "addshutbutton@jerom@olika.ovh", "name": "Add Shutdown Button", "pname": "add-shutdown-button", "description": "Add a button power off", "link": "https://extensions.gnome.org/extension/4905/add-shutdown-button/", "shell_version_map": {"40": {"version": "2", "sha256": "1yq7cakknjq7inzg1bq6z4isivj25vkml89vmv4913fparvsx7n2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFkZCBhIGJ1dHRvbiBwb3dlciBvZmYiLAogICJuYW1lIjogIkFkZCBTaHV0ZG93biBCdXR0b24iLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjQwIgogIF0sCiAgInVybCI6ICIiLAogICJ1dWlkIjogImFkZHNodXRidXR0b25AamVyb21Ab2xpa2Eub3ZoIiwKICAidmVyc2lvbiI6IDIKfQ=="}}}
+, {"uuid": "eepresetselector@ulville.github.io", "name": "EasyEffects Preset Selector", "pname": "easyeffects-preset-selector", "description": "Quickly show and load EasyEffects Presets", "link": "https://extensions.gnome.org/extension/4907/easyeffects-preset-selector/", "shell_version_map": {"38": {"version": "3", "sha256": "09fa3hv3jjcl1c200kw4qg9m0rkwf6pf516rmhypzz8xw8ylcsl7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrbHkgc2hvdyBhbmQgbG9hZCBFYXN5RWZmZWN0cyBQcmVzZXRzIiwKICAibmFtZSI6ICJFYXN5RWZmZWN0cyBQcmVzZXQgU2VsZWN0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3VsdmlsbGUvZWVwcmVzZXRzZWxlY3RvciIsCiAgInV1aWQiOiAiZWVwcmVzZXRzZWxlY3RvckB1bHZpbGxlLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAzCn0="}, "40": {"version": "3", "sha256": "09fa3hv3jjcl1c200kw4qg9m0rkwf6pf516rmhypzz8xw8ylcsl7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrbHkgc2hvdyBhbmQgbG9hZCBFYXN5RWZmZWN0cyBQcmVzZXRzIiwKICAibmFtZSI6ICJFYXN5RWZmZWN0cyBQcmVzZXQgU2VsZWN0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3VsdmlsbGUvZWVwcmVzZXRzZWxlY3RvciIsCiAgInV1aWQiOiAiZWVwcmVzZXRzZWxlY3RvckB1bHZpbGxlLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAzCn0="}, "41": {"version": "3", "sha256": "09fa3hv3jjcl1c200kw4qg9m0rkwf6pf516rmhypzz8xw8ylcsl7", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlF1aWNrbHkgc2hvdyBhbmQgbG9hZCBFYXN5RWZmZWN0cyBQcmVzZXRzIiwKICAibmFtZSI6ICJFYXN5RWZmZWN0cyBQcmVzZXQgU2VsZWN0b3IiLAogICJzaGVsbC12ZXJzaW9uIjogWwogICAgIjMuMzgiLAogICAgIjQwIiwKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL3VsdmlsbGUvZWVwcmVzZXRzZWxlY3RvciIsCiAgInV1aWQiOiAiZWVwcmVzZXRzZWxlY3RvckB1bHZpbGxlLmdpdGh1Yi5pbyIsCiAgInZlcnNpb24iOiAzCn0="}}}
+, {"uuid": "volume_scroller@noskoski", "name": "Volume Scroller", "pname": "volume-scroller", "description": "Scroll up or down in the Top Bar to adjust volume.", "link": "https://extensions.gnome.org/extension/4916/volume-scroller/", "shell_version_map": {"38": {"version": "1", "sha256": "1v6h7mjsflysczrbqfkycfiswmpvn8wyz96farpj9z19cdy379q2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNjcm9sbCB1cCBvciBkb3duIGluIHRoZSBUb3AgQmFyIHRvIGFkanVzdCB2b2x1bWUuIiwKICAibmFtZSI6ICJWb2x1bWUgU2Nyb2xsZXIiLAogICJvcmlnaW5hbC1hdXRob3IiOiAidHJmbHlubjg5QHBtLm1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ub3Nrb3NraS9nbm9tZS1zaGVsbC12b2x1bWUtc2Nyb2xsZXIiLAogICJ1dWlkIjogInZvbHVtZV9zY3JvbGxlckBub3Nrb3NraSIsCiAgInZlcnNpb24iOiAxCn0="}, "40": {"version": "1", "sha256": "1v6h7mjsflysczrbqfkycfiswmpvn8wyz96farpj9z19cdy379q2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNjcm9sbCB1cCBvciBkb3duIGluIHRoZSBUb3AgQmFyIHRvIGFkanVzdCB2b2x1bWUuIiwKICAibmFtZSI6ICJWb2x1bWUgU2Nyb2xsZXIiLAogICJvcmlnaW5hbC1hdXRob3IiOiAidHJmbHlubjg5QHBtLm1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ub3Nrb3NraS9nbm9tZS1zaGVsbC12b2x1bWUtc2Nyb2xsZXIiLAogICJ1dWlkIjogInZvbHVtZV9zY3JvbGxlckBub3Nrb3NraSIsCiAgInZlcnNpb24iOiAxCn0="}, "41": {"version": "1", "sha256": "1v6h7mjsflysczrbqfkycfiswmpvn8wyz96farpj9z19cdy379q2", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIlNjcm9sbCB1cCBvciBkb3duIGluIHRoZSBUb3AgQmFyIHRvIGFkanVzdCB2b2x1bWUuIiwKICAibmFtZSI6ICJWb2x1bWUgU2Nyb2xsZXIiLAogICJvcmlnaW5hbC1hdXRob3IiOiAidHJmbHlubjg5QHBtLm1lIiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICIzLjM2IiwKICAgICIzLjM4IiwKICAgICI0MCIsCiAgICAiNDEiCiAgXSwKICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS9ub3Nrb3NraS9nbm9tZS1zaGVsbC12b2x1bWUtc2Nyb2xsZXIiLAogICJ1dWlkIjogInZvbHVtZV9zY3JvbGxlckBub3Nrb3NraSIsCiAgInZlcnNpb24iOiAxCn0="}}}
+, {"uuid": "weather@eexpss.gmail.com", "name": "Weather", "pname": "weather", "description": "Animation Weather. \nMouse 1: show weather\nMouse 2: refresh weather\nMouse 3: dismiss\nScrollUp: increase day\nScrollDown: decrease day\nYou need to fill in the correct longitude and latitude in the coord.json file.", "link": "https://extensions.gnome.org/extension/4919/weather/", "shell_version_map": {"40": {"version": "3", "sha256": "17fc87vppdzs29qvknlnwrll1c5j0x9m2jsap086p4g5lzyxqrqq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGlvbiBXZWF0aGVyLiBcbk1vdXNlIDE6IHNob3cgd2VhdGhlclxuTW91c2UgMjogcmVmcmVzaCB3ZWF0aGVyXG5Nb3VzZSAzOiBkaXNtaXNzXG5TY3JvbGxVcDogaW5jcmVhc2UgZGF5XG5TY3JvbGxEb3duOiBkZWNyZWFzZSBkYXlcbllvdSBuZWVkIHRvIGZpbGwgaW4gdGhlIGNvcnJlY3QgbG9uZ2l0dWRlIGFuZCBsYXRpdHVkZSBpbiB0aGUgY29vcmQuanNvbiBmaWxlLiIsCiAgIm5hbWUiOiAiV2VhdGhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3ZWF0aGVyQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "41": {"version": "3", "sha256": "17fc87vppdzs29qvknlnwrll1c5j0x9m2jsap086p4g5lzyxqrqq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGlvbiBXZWF0aGVyLiBcbk1vdXNlIDE6IHNob3cgd2VhdGhlclxuTW91c2UgMjogcmVmcmVzaCB3ZWF0aGVyXG5Nb3VzZSAzOiBkaXNtaXNzXG5TY3JvbGxVcDogaW5jcmVhc2UgZGF5XG5TY3JvbGxEb3duOiBkZWNyZWFzZSBkYXlcbllvdSBuZWVkIHRvIGZpbGwgaW4gdGhlIGNvcnJlY3QgbG9uZ2l0dWRlIGFuZCBsYXRpdHVkZSBpbiB0aGUgY29vcmQuanNvbiBmaWxlLiIsCiAgIm5hbWUiOiAiV2VhdGhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3ZWF0aGVyQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}, "42": {"version": "3", "sha256": "17fc87vppdzs29qvknlnwrll1c5j0x9m2jsap086p4g5lzyxqrqq", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkFuaW1hdGlvbiBXZWF0aGVyLiBcbk1vdXNlIDE6IHNob3cgd2VhdGhlclxuTW91c2UgMjogcmVmcmVzaCB3ZWF0aGVyXG5Nb3VzZSAzOiBkaXNtaXNzXG5TY3JvbGxVcDogaW5jcmVhc2UgZGF5XG5TY3JvbGxEb3duOiBkZWNyZWFzZSBkYXlcbllvdSBuZWVkIHRvIGZpbGwgaW4gdGhlIGNvcnJlY3QgbG9uZ2l0dWRlIGFuZCBsYXRpdHVkZSBpbiB0aGUgY29vcmQuanNvbiBmaWxlLiIsCiAgIm5hbWUiOiAiV2VhdGhlciIsCiAgInNoZWxsLXZlcnNpb24iOiBbCiAgICAiNDAiLAogICAgIjQxIiwKICAgICI0MiIKICBdLAogICJ1cmwiOiAiIiwKICAidXVpZCI6ICJ3ZWF0aGVyQGVleHBzcy5nbWFpbC5jb20iLAogICJ2ZXJzaW9uIjogMwp9"}}}
+, {"uuid": "whiteborder@aaronbpaden.gmail.com", "name": "White Border Overlay", "pname": "white-border-overlay", "description": "Draw a white border around the desktop to enable (hopefully) universal application support for the Sinden Lightgun.", "link": "https://extensions.gnome.org/extension/4922/white-border-overlay/", "shell_version_map": {"41": {"version": "1", "sha256": "000sk4a2db3r7yx6dxpxv9parh0gpsanif1zlmz2xr69hbl48hwk", "metadata": "ewogICJfZ2VuZXJhdGVkIjogIkdlbmVyYXRlZCBieSBTd2VldFRvb3RoLCBkbyBub3QgZWRpdCIsCiAgImRlc2NyaXB0aW9uIjogIkRyYXcgYSB3aGl0ZSBib3JkZXIgYXJvdW5kIHRoZSBkZXNrdG9wIHRvIGVuYWJsZSAoaG9wZWZ1bGx5KSB1bml2ZXJzYWwgYXBwbGljYXRpb24gc3VwcG9ydCBmb3IgdGhlIFNpbmRlbiBMaWdodGd1bi4iLAogICJuYW1lIjogIldoaXRlIEJvcmRlciBPdmVybGF5IiwKICAic2hlbGwtdmVyc2lvbiI6IFsKICAgICI0MSIKICBdLAogICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29tL0Fhcm9uQlBhZGVuL3doaXRlYm9yZGVyLWFhcm9uYnBhZGVuLmdtYWlsLmNvbSIsCiAgInV1aWQiOiAid2hpdGVib3JkZXJAYWFyb25icGFkZW4uZ21haWwuY29tIiwKICAidmVyc2lvbiI6IDEKfQ=="}}}
 ]
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/freon/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/freon/default.nix
deleted file mode 100644
index 90909608052b..000000000000
--- a/nixpkgs/pkgs/desktops/gnome/extensions/freon/default.nix
+++ /dev/null
@@ -1,61 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, glib
-, substituteAll
-, hddtemp
-, liquidctl
-, lm_sensors
-, netcat-gnu
-, nvme-cli
-, procps
-, smartmontools
-}:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-freon";
-  version = "45";
-
-  passthru = {
-    extensionUuid = "freon@UshakovVasilii_Github.yahoo.com";
-    extensionPortalSlug = "freon";
-  };
-
-  src = fetchFromGitHub {
-    owner = "UshakovVasilii";
-    repo = "gnome-shell-extension-freon";
-    rev = "EGO-${version}";
-    sha256 = "sha256-tPb7SzHSwvz7VV+kZTmcw1eAdtL1J7FJ3BOtg4Us8jc=";
-  };
-
-  nativeBuildInputs = [ glib ];
-
-  patches = [
-    (substituteAll {
-      src = ./fix_paths.patch;
-      inherit hddtemp liquidctl lm_sensors procps smartmontools;
-      netcat = netcat-gnu;
-      nvmecli = nvme-cli;
-    })
-  ];
-
-  buildPhase = ''
-    runHook preBuild
-    glib-compile-schemas --strict --targetdir="freon@UshakovVasilii_Github.yahoo.com/schemas" "freon@UshakovVasilii_Github.yahoo.com/schemas"
-    runHook postBuild
-  '';
-
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/share/gnome-shell/extensions
-    cp -r "freon@UshakovVasilii_Github.yahoo.com" $out/share/gnome-shell/extensions
-    runHook postInstall
-  '';
-
-  meta = with lib; {
-    description = "GNOME Shell extension for displaying CPU, GPU, disk temperatures, voltage and fan RPM in the top panel";
-    license = licenses.gpl2;
-    maintainers = with maintainers; [ justinas ];
-    homepage = "https://github.com/UshakovVasilii/gnome-shell-extension-freon";
-  };
-}
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/gsconnect/default.nix b/nixpkgs/pkgs/desktops/gnome/extensions/gsconnect/default.nix
index 2d3d2415db24..5f915a4b5af8 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/gsconnect/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/gsconnect/default.nix
@@ -19,15 +19,15 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-gsconnect";
-  version = "48";
+  version = "50";
 
   outputs = [ "out" "installedTests" ];
 
   src = fetchFromGitHub {
-    owner = "andyholmes";
+    owner = "GSConnect";
     repo = "gnome-shell-extension-gsconnect";
     rev = "v${version}";
-    sha256 = "sha256-cKEFTF8DnQIQAXVW9NvE34mUqueQP/OtxTzMUy1dT5U=";
+    hash = "sha256-uUpdjBsVeS99AYDpGlXP9fMqGxWj+XfVubNoGJs76G0=";
   };
 
   patches = [
@@ -111,7 +111,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "KDE Connect implementation for Gnome Shell";
-    homepage = "https://github.com/andyholmes/gnome-shell-extension-gsconnect/wiki";
+    homepage = "https://github.com/GSConnect/gnome-shell-extension-gsconnect/wiki";
     license = licenses.gpl2Plus;
     maintainers = teams.gnome.members;
     platforms = platforms.linux;
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/manuallyPackaged.nix b/nixpkgs/pkgs/desktops/gnome/extensions/manuallyPackaged.nix
index 1ed840670643..6e2f1f6f2620 100644
--- a/nixpkgs/pkgs/desktops/gnome/extensions/manuallyPackaged.nix
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/manuallyPackaged.nix
@@ -6,7 +6,6 @@
   "drop-down-terminal@gs-extensions.zzrough.org" = callPackage ./drop-down-terminal { };
   "EasyScreenCast@iacopodeenosee.gmail.com" = callPackage ./EasyScreenCast { };
   "emoji-selector@maestroschan.fr" = callPackage ./emoji-selector { };
-  "freon@UshakovVasilii_Github.yahoo.com" = callPackage ./freon { };
   "gsconnect@andyholmes.github.io" = callPackage ./gsconnect { };
   "icon-hider@kalnitsky.org" = callPackage ./icon-hider { };
   "impatience@gfxmonk.net" = callPackage ./impatience { };
diff --git a/nixpkgs/pkgs/desktops/gnome/extensions/update-extensions.py b/nixpkgs/pkgs/desktops/gnome/extensions/update-extensions.py
index 0582d3ca942d..d1fdfc1f1a53 100755
--- a/nixpkgs/pkgs/desktops/gnome/extensions/update-extensions.py
+++ b/nixpkgs/pkgs/desktops/gnome/extensions/update-extensions.py
@@ -18,6 +18,7 @@ supported_versions = {
     "38": "3.38",
     "40": "40",
     "41": "41",
+    "42": "42",
 }
 
 
diff --git a/nixpkgs/pkgs/desktops/gnome/games/aisleriot/default.nix b/nixpkgs/pkgs/desktops/gnome/games/aisleriot/default.nix
index 21e38c548e98..5a7446862bdc 100644
--- a/nixpkgs/pkgs/desktops/gnome/games/aisleriot/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/games/aisleriot/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchFromGitLab
 , nix-update-script
 , pkg-config
@@ -9,8 +10,7 @@
 , librsvg
 , libxml2
 , desktop-file-utils
-, pysolfc
-, guile
+, guile_3_0
 , libcanberra-gtk3
 , ninja
 , appstream-glib
@@ -19,14 +19,14 @@
 
 stdenv.mkDerivation rec {
   pname = "aisleriot";
-  version = "3.22.20";
+  version = "3.22.21";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "GNOME";
     repo = pname;
     rev = version;
-    sha256 = "sha256-5xFwlhT9qjtvNDQ8kfGd2BeK2KcJDzpfsEC8z4Ei3ns=";
+    sha256 = "sha256-dpzuePxSoJcwUlj314r5G9A8aF1Yz49r+DxNTfA8/Ks=";
   };
 
   nativeBuildInputs = [
@@ -44,9 +44,8 @@ stdenv.mkDerivation rec {
   buildInputs = [
     gtk3
     librsvg
-    guile
+    guile_3_0
     libcanberra-gtk3
-    pysolfc
   ];
 
   prePatch = ''
diff --git a/nixpkgs/pkgs/desktops/gnome/games/gnome-chess/default.nix b/nixpkgs/pkgs/desktops/gnome/games/gnome-chess/default.nix
index e47e77d9c0ab..5690355a0ce2 100644
--- a/nixpkgs/pkgs/desktops/gnome/games/gnome-chess/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/games/gnome-chess/default.nix
@@ -14,16 +14,17 @@
 , gnome
 , glib
 , gtk4
+, libadwaita
 , librsvg
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-chess";
-  version = "41.1";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-chess/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "62GYhlljlrQDOj8oo8LjAEtU6+Gzi0DWQiwXufLMF9A=";
+    sha256 = "Eq9Uk6YiBaxrt0VA8KhYQT2okolmo0boVDMLQdc7w5M=";
   };
 
   nativeBuildInputs = [
@@ -42,8 +43,8 @@ stdenv.mkDerivation rec {
   buildInputs = [
     glib
     gtk4
+    libadwaita
     librsvg
-    gnome.adwaita-icon-theme
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/desktops/gnome/games/gnome-mahjongg/default.nix b/nixpkgs/pkgs/desktops/gnome/games/gnome-mahjongg/default.nix
index 7ef68e470e1d..698741ba8366 100644
--- a/nixpkgs/pkgs/desktops/gnome/games/gnome-mahjongg/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/games/gnome-mahjongg/default.nix
@@ -1,6 +1,20 @@
-{ lib, stdenv, fetchurl, pkg-config, gnome, gtk3, wrapGAppsHook
-, librsvg, gettext, itstool, libxml2
-, meson, ninja, glib, vala, desktop-file-utils
+{ stdenv
+, lib
+, fetchurl
+, fetchpatch
+, pkg-config
+, gnome
+, gtk3
+, wrapGAppsHook
+, librsvg
+, gettext
+, itstool
+, libxml2
+, meson
+, ninja
+, glib
+, vala
+, desktop-file-utils
 }:
 
 stdenv.mkDerivation rec {
@@ -12,12 +26,30 @@ stdenv.mkDerivation rec {
     sha256 = "144ia3zn9rhwa1xbdkvsz6m0dsysl6mxvqw9bnrlh845hmyy9cfj";
   };
 
+  patches = [
+    # Fix build with meson 0.61
+    # data/meson.build:24:0: ERROR: Function does not take positional arguments.
+    # data/meson.build:45:0: ERROR: Function does not take positional arguments.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-mahjongg/-/commit/a2037b0747163601a5d5b57856d037eecf3a4db7.patch";
+      sha256 = "Wcder6Y9H6c1f8I+IPDvST3umaCU21HgxfXn809JDz0=";
+    })
+  ];
+
   nativeBuildInputs = [
-    meson ninja vala desktop-file-utils
-    pkg-config gnome.adwaita-icon-theme
-    libxml2 itstool gettext wrapGAppsHook
+    meson
+    ninja
+    vala
+    desktop-file-utils
+    pkg-config
+    gnome.adwaita-icon-theme
+    libxml2
+    itstool
+    gettext
+    wrapGAppsHook
     glib # for glib-compile-schemas
   ];
+
   buildInputs = [
     glib
     gtk3
diff --git a/nixpkgs/pkgs/desktops/gnome/games/gnome-sudoku/default.nix b/nixpkgs/pkgs/desktops/gnome/games/gnome-sudoku/default.nix
index 1431a6179493..87e7c467d04c 100644
--- a/nixpkgs/pkgs/desktops/gnome/games/gnome-sudoku/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/games/gnome-sudoku/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-sudoku";
-  version = "40.2";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-sudoku/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "NhIFMePHE5WB6jgA+/48KzFpTEQBRezIl6w05WLXVKM=";
+    sha256 = "HS603bgCa0Q2Rc81hbjfEkTjgo7hwHUYBSslmeHFwo8=";
   };
 
   nativeBuildInputs = [ meson ninja vala pkg-config gobject-introspection gettext itstool libxml2 python3 desktop-file-utils wrapGAppsHook ];
diff --git a/nixpkgs/pkgs/desktops/gnome/games/gnome-tetravex/default.nix b/nixpkgs/pkgs/desktops/gnome/games/gnome-tetravex/default.nix
index a1cdf98d9a15..6578bf7c0589 100644
--- a/nixpkgs/pkgs/desktops/gnome/games/gnome-tetravex/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/games/gnome-tetravex/default.nix
@@ -1,6 +1,19 @@
-{ lib, stdenv, fetchurl, pkg-config, gnome, gtk3, wrapGAppsHook
-, libxml2, gettext, itstool, meson, ninja, python3
-, vala, desktop-file-utils
+{ stdenv
+, lib
+, fetchurl
+, fetchpatch
+, pkg-config
+, gnome
+, gtk3
+, wrapGAppsHook
+, libxml2
+, gettext
+, itstool
+, meson
+, ninja
+, python3
+, vala
+, desktop-file-utils
 }:
 
 stdenv.mkDerivation rec {
@@ -12,14 +25,31 @@ stdenv.mkDerivation rec {
     sha256 = "06wihvqp2p52zd2dnknsc3rii69qib4a30yp15h558xrg44z3k8z";
   };
 
-  passthru = {
-    updateScript = gnome.updateScript { packageName = "gnome-tetravex"; attrPath = "gnome.gnome-tetravex"; };
-  };
+  patches = [
+    # Fix build with meson 0.61
+    # data/meson.build:37:0: ERROR: Function does not take positional arguments.
+    # data/meson.build:59:0: ERROR: Function does not take positional arguments.
+    # Taken from https://gitlab.gnome.org/GNOME/gnome-tetravex/-/merge_requests/20
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-tetravex/-/commit/80912d06f5e588f6aca966fa516103275e58d94e.patch";
+      sha256 = "2+nFw5sJzbInibKaq3J10Ufbl3CnZWlgnUtzRTZ5G0I=";
+    })
+  ];
 
   nativeBuildInputs = [
-    wrapGAppsHook itstool libxml2 gnome.adwaita-icon-theme
-    pkg-config gettext meson ninja python3 vala desktop-file-utils
+    wrapGAppsHook
+    itstool
+    libxml2
+    gnome.adwaita-icon-theme
+    pkg-config
+    gettext
+    meson
+    ninja
+    python3
+    vala
+    desktop-file-utils
   ];
+
   buildInputs = [
     gtk3
   ];
@@ -29,6 +59,13 @@ stdenv.mkDerivation rec {
     patchShebangs build-aux/meson_post_install.py
   '';
 
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = "gnome-tetravex";
+      attrPath = "gnome.gnome-tetravex";
+    };
+  };
+
   meta = with lib; {
     homepage = "https://wiki.gnome.org/Apps/Tetravex";
     description = "Complete the puzzle by matching numbered tiles";
diff --git a/nixpkgs/pkgs/desktops/gnome/games/hitori/default.nix b/nixpkgs/pkgs/desktops/gnome/games/hitori/default.nix
index 15759c681984..bb210c2fffb1 100644
--- a/nixpkgs/pkgs/desktops/gnome/games/hitori/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/games/hitori/default.nix
@@ -1,5 +1,7 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
+, fetchpatch
 , meson
 , ninja
 , pkg-config
@@ -25,6 +27,15 @@ stdenv.mkDerivation rec {
     sha256 = "99cQPLBjP7ATcwExqYw646IWK5+5SZ/H8ZUS1YG/ZWk=";
   };
 
+  patches = [
+    # Fix build with meson 0.61
+    # data/meson.build:3:0: ERROR: Function does not take positional arguments.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/hitori/-/commit/d25728e122f1d7b985029a5ba96810c3e57c27f7.patch";
+      sha256 = "LwBpFFr+vLacLTpto7PwvO1p2lku6epyEv9YZvUvW+g=";
+    })
+  ];
+
   nativeBuildInputs = [
     meson
     ninja
diff --git a/nixpkgs/pkgs/desktops/gnome/games/tali/default.nix b/nixpkgs/pkgs/desktops/gnome/games/tali/default.nix
index 936fe62c259b..c12853e5daee 100644
--- a/nixpkgs/pkgs/desktops/gnome/games/tali/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/games/tali/default.nix
@@ -20,11 +20,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tali";
-  version = "40.5";
+  version = "40.6";
 
   src = fetchurl {
     url = "mirror://gnome/sources/tali/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "Y6CcVeRqGhl1a/XglXyvmUMA+tq9umvaYC5mjfzfcSI=";
+    sha256 = "g/ugR+3s0ZbTBxmnDi9NCYa7Jswr1flVoKkgDqY/BhI=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/gnome/misc/gitg/default.nix b/nixpkgs/pkgs/desktops/gnome/misc/gitg/default.nix
index e29464556ec0..31e6bd7f2ed1 100644
--- a/nixpkgs/pkgs/desktops/gnome/misc/gitg/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/misc/gitg/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchurl
+, fetchpatch
 , vala
 , gettext
 , pkg-config
@@ -36,6 +37,15 @@ stdenv.mkDerivation rec {
     sha256 = "f7Ybn7EPuqVI0j1wZbq9cq1j5iHeVYQMBlzm45hsRik=";
   };
 
+  patches = [
+    # Fix build with meson 0.61
+    # data/meson.build:8:5: ERROR: Function does not take positional arguments.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gitg/-/commit/1978973b12848741b08695ec2020bac98584d636.patch";
+      sha256 = "sha256-RzaGPGGiKMgjy0waFqt48rV2yWBGZgC3kHehhVhxktk=";
+    })
+  ];
+
   nativeBuildInputs = [
     gobject-introspection
     gettext
diff --git a/nixpkgs/pkgs/desktops/gnome/misc/gnome-applets/default.nix b/nixpkgs/pkgs/desktops/gnome/misc/gnome-applets/default.nix
index 2cdafcc23b30..a03b356c21f3 100644
--- a/nixpkgs/pkgs/desktops/gnome/misc/gnome-applets/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/misc/gnome-applets/default.nix
@@ -23,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-applets";
-  version = "3.42.0";
+  version = "3.44.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "/RaXR7kv7/Rs05/mLyPd+WZ8EAaPRigDOF0TjvxIedQ=";
+    sha256 = "MDlifKknGeSAWH1yT0aXEJw9Em7BUPFPOy4Gkk2576c=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/gnome/misc/gnome-flashback/default.nix b/nixpkgs/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
index 9e796670aa02..34d2b6eea3c2 100644
--- a/nixpkgs/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
@@ -30,7 +30,7 @@
 }:
 let
   pname = "gnome-flashback";
-  version = "3.42.1";
+  version = "3.44.0";
 
   # From data/sessions/Makefile.am
   requiredComponentsCommon = enableGnomePanel:
@@ -61,7 +61,7 @@ let
 
     src = fetchurl {
       url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${name}.tar.xz";
-      sha256 = "sha256:0kl4m05whm03m2v0y3jd69lghkggn8s0hxdhvchcas7jmhh940n8";
+      sha256 = "sha256-HfCDgSfGJG7s2J0cUP+I/IKr9t47MGjlLd5JWkK9VQo=";
     };
 
     # make .desktop Execs absolute
diff --git a/nixpkgs/pkgs/desktops/gnome/misc/gnome-panel/default.nix b/nixpkgs/pkgs/desktops/gnome/misc/gnome-panel/default.nix
index aa472230e9cd..139e161352a1 100644
--- a/nixpkgs/pkgs/desktops/gnome/misc/gnome-panel/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/misc/gnome-panel/default.nix
@@ -23,13 +23,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-panel";
-  version = "3.42.0";
+  version = "3.44.0";
 
   outputs = [ "out" "dev" "man" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    hash = "sha256-rqjA78LtuiDpetRpUXnNCiU45kwpBHAsyMWU6OCJhwM=";
+    hash = "sha256-mWVfddAxh2wTDtI8TaIsCZ57zEBIsCVaPDo7vHh7Mao=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix b/nixpkgs/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
index 0725af81c0a1..5643741aceb4 100644
--- a/nixpkgs/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
@@ -6,6 +6,7 @@
 , gettext
 , glib
 , gnome
+, gnome-desktop
 , gobject-introspection
 , gsettings-desktop-schemas
 , gtk3
@@ -20,13 +21,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "gnome-tweaks";
-  version = "40.10";
+  version = "42.beta";
   format = "other";
   strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "z/07M6OZV3+7RJHOj70C9UxZJPEFbzARTo1CApDvI/w=";
+    sha256 = "g/RMwdyK3HcM2tcXtAPLmmzDwN5Q445vHmeLQ0Aa2Gg=";
   };
 
   nativeBuildInputs = [
@@ -43,7 +44,7 @@ python3Packages.buildPythonApplication rec {
   buildInputs = [
     gdk-pixbuf
     glib
-    gnome.gnome-desktop
+    gnome-desktop
     gnome.gnome-settings-daemon
     gnome.gnome-shell
     # Makes it possible to select user themes through the `user-theme` extension
diff --git a/nixpkgs/pkgs/desktops/gnome/misc/gpaste/default.nix b/nixpkgs/pkgs/desktops/gnome/misc/gpaste/default.nix
index f593fbbd6535..ba42a8028369 100644
--- a/nixpkgs/pkgs/desktops/gnome/misc/gpaste/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/misc/gpaste/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchFromGitHub
 , fetchpatch
 , appstream-glib
@@ -7,6 +8,8 @@
 , glib
 , gobject-introspection
 , gtk3
+, gtk4
+, libadwaita
 , meson
 , mutter
 , ninja
@@ -17,14 +20,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "3.42.6";
+  version = "42.1";
   pname = "gpaste";
 
   src = fetchFromGitHub {
     owner = "Keruspe";
     repo = "GPaste";
     rev = "v${version}";
-    sha256 = "sha256-dCeNWdHj3bBGJR1VpJtQjSn601Vdl3f9FjHAPB2wuhE=";
+    sha256 = "sha256-A5NZ4NiPVZUr7vPdDuNywLsLrejZ4SCg7+3//ZNRmLY=";
   };
 
   patches = [
@@ -38,7 +41,7 @@ stdenv.mkDerivation rec {
       --subst-var-by typelibPath "${placeholder "out"}/lib/girepository-1.0"
     substituteInPlace src/gnome-shell/prefs.js \
       --subst-var-by typelibPath "${placeholder "out"}/lib/girepository-1.0"
-    substituteInPlace src/libgpaste/settings/gpaste-settings.c \
+    substituteInPlace src/libgpaste/gpaste/gpaste-settings.c \
       --subst-var-by gschemasCompiled ${glib.makeSchemaPath (placeholder "out") "${pname}-${version}"}
   '';
 
@@ -57,6 +60,8 @@ stdenv.mkDerivation rec {
     gjs
     glib
     gtk3
+    gtk4
+    libadwaita
     mutter
     pango
   ];
diff --git a/nixpkgs/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch b/nixpkgs/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch
index 46e30ce2e2cb..2ec807b61c05 100644
--- a/nixpkgs/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch
+++ b/nixpkgs/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch
@@ -1,3 +1,5 @@
+diff --git a/src/gnome-shell/extension.js b/src/gnome-shell/extension.js
+index c8773fd6..9efbed67 100644
 --- a/src/gnome-shell/extension.js
 +++ b/src/gnome-shell/extension.js
 @@ -6,6 +6,8 @@
@@ -8,21 +10,25 @@
 +
  imports.gi.versions.Clutter = Config.LIBMUTTER_API_VERSION;
  imports.gi.versions.GLib = '2.0';
- imports.gi.versions.GPaste = '1.0';
+ imports.gi.versions.GPaste = '2';
+diff --git a/src/gnome-shell/prefs.js b/src/gnome-shell/prefs.js
+index 32244ab2..74b85572 100644
 --- a/src/gnome-shell/prefs.js
 +++ b/src/gnome-shell/prefs.js
 @@ -6,6 +6,8 @@
  
- const Gettext = imports.gettext;
+ imports.gi.versions.GPasteGtk = '4';
  
 +imports.gi.GIRepository.Repository.prepend_search_path('@typelibPath@');
 +
- //const { GPaste } = imports.gi;
- 
  const ExtensionUtils = imports.misc.extensionUtils;
---- a/src/libgpaste/settings/gpaste-settings.c
-+++ b/src/libgpaste/settings/gpaste-settings.c
-@@ -1013,7 +1013,11 @@
+ 
+ const { GPasteGtk } = imports.gi;
+diff --git a/src/libgpaste/gpaste/gpaste-settings.c b/src/libgpaste/gpaste/gpaste-settings.c
+index 7e53eb64..57c399fc 100644
+--- a/src/libgpaste/gpaste/gpaste-settings.c
++++ b/src/libgpaste/gpaste/gpaste-settings.c
+@@ -1013,7 +1013,11 @@ create_g_settings (void)
      }
      else
      {
diff --git a/nixpkgs/pkgs/desktops/gnome/misc/metacity/default.nix b/nixpkgs/pkgs/desktops/gnome/misc/metacity/default.nix
index 8dcef7922659..ef3e31f1032f 100644
--- a/nixpkgs/pkgs/desktops/gnome/misc/metacity/default.nix
+++ b/nixpkgs/pkgs/desktops/gnome/misc/metacity/default.nix
@@ -18,11 +18,11 @@
 
 stdenv.mkDerivation rec {
   pname = "metacity";
-  version = "3.42.0";
+  version = "3.44.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "2J1nnc/tm17vGPBuLcszp6tUPVOzWPqJzmVZPCMe7rw=";
+    sha256 = "GcPF150hcfRbqg9jLMiZX4YHvxIxoWAUQ5usm6Flp8A=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
index 15bc1941af3f..5d5134d38d29 100644
--- a/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
@@ -22,11 +22,16 @@ mkDerivation rec {
     sha256 = "1hb04zgpalxv6da3myf1dxsbjix15dczzfq8a24g5dg2zfhwpx21";
   };
 
-  # Nix clang on darwin identifies as 'Clang', not 'AppleClang'
-  # Without this, dependants fail to link.
   postPatch = ''
+    # Nix clang on darwin identifies as 'Clang', not 'AppleClang'
+    # Without this, dependants fail to link.
     substituteInPlace cmake/modules/LXQtCompilerSettings.cmake \
       --replace AppleClang Clang
+
+    # GLib 2.72 moved the file from gio-unix-2.0 to gio-2.0.
+    # https://github.com/lxqt/lxqt-build-tools/pull/74
+    substituteInPlace cmake/find-modules/FindGLIB.cmake \
+      --replace gio/gunixconnection.h gio/gunixfdlist.h
   '';
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/lxqt/obconf-qt/default.nix b/nixpkgs/pkgs/desktops/lxqt/obconf-qt/default.nix
index 18d3f9899b41..db27bfbbd3f4 100644
--- a/nixpkgs/pkgs/desktops/lxqt/obconf-qt/default.nix
+++ b/nixpkgs/pkgs/desktops/lxqt/obconf-qt/default.nix
@@ -15,13 +15,13 @@
 
 mkDerivation rec {
   pname = "obconf-qt";
-  version = "0.16.1";
+  version = "0.16.2";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    sha256 = "1nw2r3h7ynmygpslnzjn40vvickd988nm31wy2b645xcck89q4rm";
+    sha256 = "zxwQfKowgpLjfxSV2t7Ly8o7DFqoIxi60zIVCcKDQWo=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/desktops/lxqt/qterminal/default.nix b/nixpkgs/pkgs/desktops/lxqt/qterminal/default.nix
index e93e404762a2..9412506385b3 100644
--- a/nixpkgs/pkgs/desktops/lxqt/qterminal/default.nix
+++ b/nixpkgs/pkgs/desktops/lxqt/qterminal/default.nix
@@ -8,6 +8,7 @@
 , qttools
 , qtx11extras
 , lxqtUpdateScript
+, nixosTests
 }:
 
 mkDerivation rec {
@@ -35,6 +36,8 @@ mkDerivation rec {
 
   passthru.updateScript = lxqtUpdateScript { inherit pname version src; };
 
+  passthru.tests.test = nixosTests.terminal-emulators.qterminal;
+
   meta = with lib; {
     homepage = "https://github.com/lxqt/qterminal";
     description = "A lightweight Qt-based terminal emulator";
diff --git a/nixpkgs/pkgs/desktops/mate/mate-backgrounds/default.nix b/nixpkgs/pkgs/desktops/mate/mate-backgrounds/default.nix
index 9384d49e2a3d..3076a7170cbf 100644
--- a/nixpkgs/pkgs/desktops/mate/mate-backgrounds/default.nix
+++ b/nixpkgs/pkgs/desktops/mate/mate-backgrounds/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, meson, ninja, gettext, mateUpdateScript }:
+{ lib, stdenv, fetchurl, fetchpatch, meson, ninja, gettext, mateUpdateScript }:
 
 stdenv.mkDerivation rec {
   pname = "mate-backgrounds";
@@ -9,6 +9,15 @@ stdenv.mkDerivation rec {
     sha256 = "0379hngy3ap1r5kmqvmzs9r710k2c9nal2ps3hq765df4ir15j8d";
   };
 
+  patches = [
+    # Fix build with meson 0.61, can be removed on next update.
+    # https://github.com/mate-desktop/mate-backgrounds/pull/39
+    (fetchpatch {
+      url = "https://github.com/mate-desktop/mate-backgrounds/commit/0096e237d420e6247a75a1c6940a818e309ac2a7.patch";
+      sha256 = "HEF8VWunFO+NCG18fZA7lbE2l8pc6Z3jcD+rSZ1Jsqg=";
+    })
+  ];
+
   nativeBuildInputs = [
     gettext
     meson
diff --git a/nixpkgs/pkgs/desktops/mate/mate-terminal/default.nix b/nixpkgs/pkgs/desktops/mate/mate-terminal/default.nix
index 19fa5697f969..fcae87a869ee 100644
--- a/nixpkgs/pkgs/desktops/mate/mate-terminal/default.nix
+++ b/nixpkgs/pkgs/desktops/mate/mate-terminal/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, gettext, itstool, libxml2, mate-desktop, dconf, vte, pcre2, wrapGAppsHook, mateUpdateScript }:
+{ lib, stdenv, fetchurl, pkg-config, gettext, itstool, libxml2, mate-desktop, dconf, vte, pcre2, wrapGAppsHook, mateUpdateScript, nixosTests }:
 
 stdenv.mkDerivation rec {
   pname = "mate-terminal";
@@ -28,6 +28,8 @@ stdenv.mkDerivation rec {
 
   passthru.updateScript = mateUpdateScript { inherit pname version; };
 
+  passthru.tests.test = nixosTests.terminal-emulators.mate-terminal;
+
   meta = with lib; {
     description = "MATE desktop terminal emulator";
     homepage = "https://mate-desktop.org";
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/appcenter/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/appcenter/default.nix
index 93c10d072928..bfbfb6d53d3d 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/appcenter/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/appcenter/default.nix
@@ -5,7 +5,6 @@
 , appstream-glib
 , dbus
 , desktop-file-utils
-, elementary-icon-theme
 , fetchFromGitHub
 , fetchpatch
 , flatpak
@@ -65,7 +64,6 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     appstream
-    elementary-icon-theme
     flatpak
     glib
     granite
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix
index 2356d362f6b6..703913998a45 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix
@@ -13,7 +13,6 @@
 , granite
 , libgee
 , libhandy
-, elementary-icon-theme
 , appstream
 , wrapGAppsHook
 }:
@@ -42,7 +41,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    elementary-icon-theme
     granite
     gtk3
     libgee
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix
index 70b092d3f2c3..f3bd37b00e06 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix
@@ -11,7 +11,6 @@
 , vala
 , wrapGAppsHook
 , clutter
-, elementary-icon-theme
 , evolution-data-server
 , folks
 , geoclue2
@@ -48,7 +47,6 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     clutter
-    elementary-icon-theme
     evolution-data-server
     folks
     geoclue2
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-camera/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-camera/default.nix
index 94bbc69047dd..31dfa369818f 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-camera/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-camera/default.nix
@@ -13,7 +13,6 @@
 , python3
 , vala
 , wrapGAppsHook
-, elementary-icon-theme
 , glib
 , granite
 , gst_all_1
@@ -57,7 +56,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    elementary-icon-theme
     glib
     granite
     gtk3
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-code/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-code/default.nix
index 4087168feb06..f1cd335459e7 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-code/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-code/default.nix
@@ -13,7 +13,6 @@
 , vala
 , wrapGAppsHook
 , editorconfig-core-c
-, elementary-icon-theme
 , granite
 , gtk3
 , gtksourceview4
@@ -61,7 +60,6 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     editorconfig-core-c
-    elementary-icon-theme
     granite
     gtk3
     gtksourceview4
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix
index 6d9fe808d8d3..f589f4234ca5 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-feedback/default.nix
@@ -13,7 +13,6 @@
 , granite
 , libgee
 , libhandy
-, elementary-icon-theme
 , gettext
 , wrapGAppsHook
 , appstream
@@ -51,7 +50,6 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     appstream
-    elementary-icon-theme
     granite
     gtk3
     libgee
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-files/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-files/default.nix
index 4314e74d5af8..9147324b8867 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-files/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-files/default.nix
@@ -22,7 +22,6 @@
 , sqlite
 , zeitgeist
 , glib-networking
-, elementary-icon-theme
 , libcloudproviders
 , libgit2-glib
 , wrapGAppsHook
@@ -57,7 +56,6 @@ stdenv.mkDerivation rec {
   buildInputs = [
     bamf
     elementary-dock
-    elementary-icon-theme
     glib
     granite
     gtk3
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/default.nix
index 4a003d6c5abc..e56f85005de7 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-mail/default.nix
@@ -17,7 +17,6 @@
 , libgdata
 , sqlite
 , granite
-, elementary-icon-theme
 , evolution-data-server
 , appstream
 , wrapGAppsHook
@@ -57,7 +56,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    elementary-icon-theme
     evolution-data-server
     folks
     granite
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-music/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-music/default.nix
index 843830427761..f43234faa405 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-music/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-music/default.nix
@@ -10,7 +10,6 @@
 , python3
 , vala
 , wrapGAppsHook
-, elementary-icon-theme
 , glib
 , granite
 , gst_all_1
@@ -61,7 +60,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    elementary-icon-theme
     glib
     granite
     gtk3
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-photos/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-photos/default.nix
index e5a8523014db..48cfda3df76d 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-photos/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-photos/default.nix
@@ -28,7 +28,6 @@
 , libwebp
 , appstream
 , wrapGAppsHook
-, elementary-icon-theme
 }:
 
 stdenv.mkDerivation rec {
@@ -63,7 +62,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    elementary-icon-theme
     geocode-glib
     gexiv2
     granite
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix
index 7629da0f734f..48a68860dd94 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix
@@ -14,7 +14,6 @@
 , libgee
 , libhandy
 , libcanberra
-, elementary-icon-theme
 , wrapGAppsHook
 }:
 
@@ -49,7 +48,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    elementary-icon-theme
     granite
     gtk3
     libcanberra
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-tasks/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-tasks/default.nix
index f220db8868de..c101e57e1ace 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-tasks/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-tasks/default.nix
@@ -11,7 +11,6 @@
 , vala
 , wrapGAppsHook
 , clutter-gtk
-, elementary-icon-theme
 , evolution-data-server
 , granite
 , geoclue2
@@ -48,7 +47,6 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     clutter-gtk
-    elementary-icon-theme
     evolution-data-server
     granite
     geoclue2
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
index e796a2a344a9..fe6e5a40fa4d 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
@@ -16,7 +16,6 @@
 , libnotify
 , vte
 , libgee
-, elementary-icon-theme
 , appstream
 , pcre2
 , wrapGAppsHook
@@ -55,7 +54,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    elementary-icon-theme
     granite
     gtk3
     libgee
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-videos/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-videos/default.nix
index cb1ea291225b..d4c03a076579 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/elementary-videos/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/elementary-videos/default.nix
@@ -15,7 +15,6 @@
 , clutter-gst
 , clutter-gtk
 , gst_all_1
-, elementary-icon-theme
 , wrapGAppsHook
 }:
 
@@ -43,7 +42,6 @@ stdenv.mkDerivation rec {
   buildInputs = [
     clutter-gst
     clutter-gtk
-    elementary-icon-theme
     granite
     gtk3
     libgee
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/sideload/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/sideload/default.nix
index 6069fb854781..11ce2048ae41 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/sideload/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/sideload/default.nix
@@ -2,7 +2,6 @@
 , stdenv
 , desktop-file-utils
 , nix-update-script
-, elementary-icon-theme
 , fetchFromGitHub
 , flatpak
 , gettext
@@ -43,7 +42,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    elementary-icon-theme
     flatpak
     glib
     granite
diff --git a/nixpkgs/pkgs/desktops/pantheon/apps/switchboard/default.nix b/nixpkgs/pkgs/desktops/pantheon/apps/switchboard/default.nix
index 209fa1202f3b..ee43903a00a1 100644
--- a/nixpkgs/pkgs/desktops/pantheon/apps/switchboard/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/apps/switchboard/default.nix
@@ -13,7 +13,6 @@
 , libhandy
 , granite
 , gettext
-, elementary-icon-theme
 , wrapGAppsHook
 }:
 
@@ -39,7 +38,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    elementary-icon-theme
     granite
     gtk3
     libgee
diff --git a/nixpkgs/pkgs/desktops/pantheon/default.nix b/nixpkgs/pkgs/desktops/pantheon/default.nix
index 29192a4dd80a..a3d5f873cbcb 100644
--- a/nixpkgs/pkgs/desktops/pantheon/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/default.nix
@@ -83,10 +83,6 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   epiphany = pkgs.epiphany.override { withPantheon = true; };
 
-  evince = pkgs.evince.override { withPantheon = true; };
-
-  file-roller = pkgs.gnome.file-roller.override { withPantheon = true; };
-
   sideload = callPackage ./apps/sideload { };
 
   #### DESKTOP
@@ -109,9 +105,7 @@ lib.makeScope pkgs.newScope (self: with self; {
     inherit (gnome) file-roller;
   };
 
-  gala = callPackage ./desktop/gala {
-    inherit (gnome) gnome-desktop;
-  };
+  gala = callPackage ./desktop/gala { };
 
   gnome-bluetooth-contract = callPackage ./desktop/gnome-bluetooth-contract {
     inherit (gnome) gnome-bluetooth;
@@ -199,9 +193,7 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   switchboard-plug-onlineaccounts = callPackage ./apps/switchboard-plugs/onlineaccounts { };
 
-  switchboard-plug-pantheon-shell = callPackage ./apps/switchboard-plugs/pantheon-shell {
-    inherit (gnome) gnome-desktop;
-  };
+  switchboard-plug-pantheon-shell = callPackage ./apps/switchboard-plugs/pantheon-shell { };
 
   switchboard-plug-power = callPackage ./apps/switchboard-plugs/power { };
 
@@ -246,8 +238,12 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   elementary-screenshot-tool = throw "The ‘pantheon.elementary-screenshot-tool’ alias was removed on 2022-02-02, please use ‘pantheon.elementary-screenshot’ directly."; # added 2021-07-21
 
+  evince = pkgs.gnome.evince; # added 2022-03-18
+
   extra-elementary-contracts = throw "extra-elementary-contracts has been removed as all contracts have been upstreamed."; # added 2021-12-01
 
+  file-roller = pkgs.gnome.file-roller; # added 2022-03-12
+
   notes-up = throw "The ‘pantheon.notes-up’ alias was removed on 2022-02-02, please use ‘pkgs.notes-up’ directly."; # added 2021-12-18
 
 }
diff --git a/nixpkgs/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix b/nixpkgs/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix
index 45a8f119ee05..06fbfdc078e2 100644
--- a/nixpkgs/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix
@@ -60,7 +60,6 @@ stdenv.mkDerivation rec {
   buildInputs = [
     accountsservice
     clutter-gtk # else we get could not generate cargs for mutter-clutter-2
-    elementary-gtk-theme
     elementary-icon-theme
     gnome-settings-daemon
     gdk-pixbuf
@@ -91,8 +90,11 @@ stdenv.mkDerivation rec {
       # for the compositor
       --prefix PATH : "$out/bin"
 
-      # the theme is hardcoded
+      # the GTK theme is hardcoded
       --prefix XDG_DATA_DIRS : "${elementary-gtk-theme}/share"
+
+      # the icon theme is hardcoded
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
     )
   '';
 
diff --git a/nixpkgs/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix b/nixpkgs/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix
index 3355ee09299f..fa4ff7edf12e 100644
--- a/nixpkgs/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix
@@ -13,7 +13,6 @@
 , glib
 , granite
 , libgee
-, elementary-icon-theme
 , elementary-settings-daemon
 , gettext
 , libhandy
@@ -56,7 +55,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    elementary-icon-theme
     elementary-settings-daemon # settings schema
     glib
     granite
diff --git a/nixpkgs/pkgs/desktops/pantheon/desktop/elementary-shortcut-overlay/default.nix b/nixpkgs/pkgs/desktops/pantheon/desktop/elementary-shortcut-overlay/default.nix
index 1d4a1cb74146..3cf7cd365f16 100644
--- a/nixpkgs/pkgs/desktops/pantheon/desktop/elementary-shortcut-overlay/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/desktop/elementary-shortcut-overlay/default.nix
@@ -14,7 +14,6 @@
 , granite
 , libgee
 , libhandy
-, elementary-icon-theme
 , wrapGAppsHook
 }:
 
@@ -49,7 +48,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    elementary-icon-theme
     glib
     granite
     gtk3
diff --git a/nixpkgs/pkgs/desktops/pantheon/desktop/gala/default.nix b/nixpkgs/pkgs/desktops/pantheon/desktop/gala/default.nix
index 5a5af9ca5b98..75447adf4a26 100644
--- a/nixpkgs/pkgs/desktops/pantheon/desktop/gala/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/desktop/gala/default.nix
@@ -19,7 +19,6 @@
 , gnome-desktop
 , mutter
 , clutter
-, elementary-icon-theme
 , gnome-settings-daemon
 , wrapGAppsHook
 , gexiv2
@@ -67,7 +66,6 @@ stdenv.mkDerivation rec {
   buildInputs = [
     bamf
     clutter
-    elementary-icon-theme
     gnome-settings-daemon
     gexiv2
     gnome-desktop
diff --git a/nixpkgs/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix b/nixpkgs/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix
index e1a25eea4a63..190514392098 100644
--- a/nixpkgs/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix
@@ -49,5 +49,8 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Plus;
     maintainers = teams.pantheon.members;
     platforms = platforms.linux;
+    # sendto device selection is removed in gnome-bluetooth 42
+    # https://github.com/elementary/gnome-bluetooth-contract/issues/1
+    broken = true;
   };
 }
diff --git a/nixpkgs/pkgs/desktops/pantheon/desktop/wingpanel/default.nix b/nixpkgs/pkgs/desktops/pantheon/desktop/wingpanel/default.nix
index 2e3f51b4a6a6..b996fdfdd6e5 100644
--- a/nixpkgs/pkgs/desktops/pantheon/desktop/wingpanel/default.nix
+++ b/nixpkgs/pkgs/desktops/pantheon/desktop/wingpanel/default.nix
@@ -46,7 +46,6 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    elementary-gtk-theme
     elementary-icon-theme
     gala
     granite
@@ -64,8 +63,11 @@ stdenv.mkDerivation rec {
 
   preFixup = ''
     gappsWrapperArgs+=(
-      # this theme is required
+      # this GTK theme is required
       --prefix XDG_DATA_DIRS : "${elementary-gtk-theme}/share"
+
+      # the icon theme is required
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
     )
   '';
 
diff --git a/nixpkgs/pkgs/desktops/plasma-5/3rdparty/addons/bismuth/default.nix b/nixpkgs/pkgs/desktops/plasma-5/3rdparty/addons/bismuth/default.nix
index ecd28b496da3..cfa58c0078ea 100644
--- a/nixpkgs/pkgs/desktops/plasma-5/3rdparty/addons/bismuth/default.nix
+++ b/nixpkgs/pkgs/desktops/plasma-5/3rdparty/addons/bismuth/default.nix
@@ -12,13 +12,13 @@
 
 mkDerivation rec {
   pname = "bismuth";
-  version = "2.3.0";
+  version = "3.0.0";
 
   src = fetchFromGitHub {
     owner = "Bismuth-Forge";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-b+dlBv1M4//oeCGM2qrQ3s6z2yLql6eQWNqId3JB3Z4=";
+    sha256 = "sha256-6kSqZtJijQBqvYcyAoSRLl/RxgUubst2SJw/adiBIj4=";
   };
 
   cmakeFlags = [
diff --git a/nixpkgs/pkgs/desktops/plasma-5/default.nix b/nixpkgs/pkgs/desktops/plasma-5/default.nix
index 0b713902358c..54534f63f7d1 100644
--- a/nixpkgs/pkgs/desktops/plasma-5/default.nix
+++ b/nixpkgs/pkgs/desktops/plasma-5/default.nix
@@ -133,10 +133,10 @@ let
       milou = callPackage ./milou.nix {};
       oxygen = callPackage ./oxygen.nix {};
       plasma-browser-integration = callPackage ./plasma-browser-integration.nix {};
-      plasma-phone-components = callPackage ./plasma-phone-components {};
       plasma-desktop = callPackage ./plasma-desktop {};
       plasma-disks = callPackage ./plasma-disks.nix {};
       plasma-integration = callPackage ./plasma-integration {};
+      plasma-mobile = callPackage ./plasma-mobile {};
       plasma-nano = callPackage ./plasma-nano {};
       plasma-nm = callPackage ./plasma-nm {};
       plasma-pa = callPackage ./plasma-pa.nix { inherit gconf; };
@@ -168,6 +168,7 @@ let
 
     } // lib.optionalAttrs (config.allowAliases or true) {
       ksysguard = throw "ksysguard has been replaced with plasma-systemmonitor";
+      plasma-phone-components = throw "'plasma-phone-components' has been renamed to/replaced by 'plasma-mobile'";
     };
 in
 lib.makeScope libsForQt5.newScope packages
diff --git a/nixpkgs/pkgs/desktops/plasma-5/fetch.sh b/nixpkgs/pkgs/desktops/plasma-5/fetch.sh
index 44b96e8beb9d..f517cc6371f2 100644
--- a/nixpkgs/pkgs/desktops/plasma-5/fetch.sh
+++ b/nixpkgs/pkgs/desktops/plasma-5/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( https://download.kde.org/stable/plasma/5.24.0/ -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/plasma/5.24.3/ -A '*.tar.xz' )
diff --git a/nixpkgs/pkgs/desktops/plasma-5/plasma-phone-components/default.nix b/nixpkgs/pkgs/desktops/plasma-5/plasma-mobile/default.nix
index ed0f434025d2..be628de65408 100644
--- a/nixpkgs/pkgs/desktops/plasma-5/plasma-phone-components/default.nix
+++ b/nixpkgs/pkgs/desktops/plasma-5/plasma-mobile/default.nix
@@ -7,7 +7,7 @@
 
   kdeclarative, kdelibs4support, kpeople, kconfig, krunner, kinit, kwayland, kwin,
   plasma-framework, telepathy, libphonenumber, protobuf, libqofono, modemmanager-qt,
-  plasma-workspace,
+  networkmanager-qt, plasma-workspace,
   maliit-framework, maliit-keyboard,
 
   qtwayland, qttools
@@ -16,14 +16,14 @@
 let inherit (lib) getBin getLib; in
 
 mkDerivation {
-  pname = "plasma-phone-components";
+  pname = "plasma-mobile";
 
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   buildInputs = [
     appstream libdbusmenu pam wayland
     kdeclarative kdelibs4support kpeople kconfig krunner kinit kwayland kwin
     plasma-framework telepathy libphonenumber protobuf libqofono modemmanager-qt
-    maliit-framework maliit-keyboard
+    networkmanager-qt maliit-framework maliit-keyboard
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/desktops/plasma-5/plasma-systemmonitor.nix b/nixpkgs/pkgs/desktops/plasma-5/plasma-systemmonitor.nix
index da5ad45df9cb..80a54c93d58b 100644
--- a/nixpkgs/pkgs/desktops/plasma-5/plasma-systemmonitor.nix
+++ b/nixpkgs/pkgs/desktops/plasma-5/plasma-systemmonitor.nix
@@ -11,6 +11,9 @@
 , kitemviews
 , knewstuff
 , libksysguard
+, kquickcharts
+, ksystemstats
+, qqc2-desktop-style
 , qtbase
 }:
 
@@ -27,5 +30,8 @@ mkDerivation {
     knewstuff
     kiconthemes
     libksysguard
+    kquickcharts
+    ksystemstats
+    qqc2-desktop-style
   ];
 }
diff --git a/nixpkgs/pkgs/desktops/plasma-5/plasma-workspace/0001-startkde.patch b/nixpkgs/pkgs/desktops/plasma-5/plasma-workspace/0001-startkde.patch
index e00d8b4a5c9d..8254f7b4c403 100644
--- a/nixpkgs/pkgs/desktops/plasma-5/plasma-workspace/0001-startkde.patch
+++ b/nixpkgs/pkgs/desktops/plasma-5/plasma-workspace/0001-startkde.patch
@@ -71,10 +71,10 @@ index 008fdfcaf..72468f21c 100644
  }
  
  void cleanupPlasmaEnvironment(const std::optional<QProcessEnvironment> &oldSystemdEnvironment)
-@@ -500,7 +500,7 @@ QProcess *setupKSplash()
-         KConfigGroup ksplashCfg = cfg.group("KSplash");
+@@ -501,7 +501,7 @@ QProcess *setupKSplash()
          if (ksplashCfg.readEntry("Engine", QStringLiteral("KSplashQML")) == QLatin1String("KSplashQML")) {
              p = new QProcess;
+             p->setProcessChannelMode(QProcess::ForwardedChannels);
 -            p->start(QStringLiteral("ksplashqml"), {ksplashCfg.readEntry("Theme", QStringLiteral("Breeze"))});
 +            p->start(QStringLiteral(CMAKE_INSTALL_FULL_BINDIR "/ksplashqml"), {ksplashCfg.readEntry("Theme", QStringLiteral("Breeze"))});
          }
diff --git a/nixpkgs/pkgs/desktops/plasma-5/srcs.nix b/nixpkgs/pkgs/desktops/plasma-5/srcs.nix
index c5da337d10d6..e98a769f60fe 100644
--- a/nixpkgs/pkgs/desktops/plasma-5/srcs.nix
+++ b/nixpkgs/pkgs/desktops/plasma-5/srcs.nix
@@ -4,435 +4,427 @@
 
 {
   bluedevil = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/bluedevil-5.24.0.tar.xz";
-      sha256 = "128br83hkxxrb6wca3d1racygdnfgk3r5md1gcjvgwb0gpy6bnzp";
-      name = "bluedevil-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/bluedevil-5.24.3.tar.xz";
+      sha256 = "1hlyqhn14yq7960zfjwjygkpkvbmrlsanm1g1wrr7dwbmrp5dlcx";
+      name = "bluedevil-5.24.3.tar.xz";
     };
   };
   breeze = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/breeze-5.24.0.tar.xz";
-      sha256 = "08b3hihz98z7kdybb0y1b74q1dn511ga81qqqxzlfirgpp8c9f9q";
-      name = "breeze-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/breeze-5.24.3.tar.xz";
+      sha256 = "0h19m6wmhjw8v6ys47kgzcb0h2nb9w2fcjzypnvmkvbjbkjr53sb";
+      name = "breeze-5.24.3.tar.xz";
     };
   };
   breeze-grub = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/breeze-grub-5.24.0.tar.xz";
-      sha256 = "0p0pzmsd6scssyxcm9n58mp7fc9vz1lg4n7c1ch4bqragih1gnlr";
-      name = "breeze-grub-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/breeze-grub-5.24.3.tar.xz";
+      sha256 = "15cpmqp7klp4dhcil3i78iff4kjasfx273v36ml8y05hm8w0igjq";
+      name = "breeze-grub-5.24.3.tar.xz";
     };
   };
   breeze-gtk = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/breeze-gtk-5.24.0.tar.xz";
-      sha256 = "090cczxc1ciic6wghz3p21gpfdwnc8pjcvq6wn7bfkp1i3r5mihp";
-      name = "breeze-gtk-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/breeze-gtk-5.24.3.tar.xz";
+      sha256 = "1922s17mh4ifaqbf4b7p6yj8pwd6z3qwpbf21j1fqhmdk4pvn499";
+      name = "breeze-gtk-5.24.3.tar.xz";
     };
   };
   breeze-plymouth = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/breeze-plymouth-5.24.0.tar.xz";
-      sha256 = "1qqpwgp1yy3p1s0z21xwds6wx4z8daibkgk1bynj73cx7a2wch9g";
-      name = "breeze-plymouth-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/breeze-plymouth-5.24.3.tar.xz";
+      sha256 = "0nkf0ll4hcawmkd7nrh8gcf6hhbl0ajxiz2azf9njab9pv2lcz1j";
+      name = "breeze-plymouth-5.24.3.tar.xz";
     };
   };
   discover = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/discover-5.24.0.tar.xz";
-      sha256 = "0dbfvqana31wqharsbyb8rcrw1w6l9x1g6p02aqwiph0inkrz20q";
-      name = "discover-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/discover-5.24.3.tar.xz";
+      sha256 = "097m5njz86vi4innap1mvizas60r1qcrdzdgsid1hd6p5a92rwca";
+      name = "discover-5.24.3.tar.xz";
     };
   };
   drkonqi = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/drkonqi-5.24.0.tar.xz";
-      sha256 = "1ismgg7rcxijkprn4sci15wn4w2gmdn0fdbgvzxdcrqaf4g6qc3s";
-      name = "drkonqi-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/drkonqi-5.24.3.tar.xz";
+      sha256 = "1n6psvr3washk796zrc8ag011fwy677h2mdkw9ijx8dhrk80br0k";
+      name = "drkonqi-5.24.3.tar.xz";
     };
   };
   kactivitymanagerd = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kactivitymanagerd-5.24.0.tar.xz";
-      sha256 = "12dvgm3ilyqlxzm8209b7g42nfk0ahfzizs3pbmi18zapjszcsps";
-      name = "kactivitymanagerd-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kactivitymanagerd-5.24.3.tar.xz";
+      sha256 = "0qxf3j36dj1yklnl27znsi9qdjmn6nr779cnzms38x76dq9kxblw";
+      name = "kactivitymanagerd-5.24.3.tar.xz";
     };
   };
   kde-cli-tools = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kde-cli-tools-5.24.0.tar.xz";
-      sha256 = "0l8a4ysz1cqwdh3c20q51qamwh58vvs8yzb5jdvbp8bahsyyc4mr";
-      name = "kde-cli-tools-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kde-cli-tools-5.24.3.tar.xz";
+      sha256 = "00z8yxic5ibk05x8c25dsc4ijvk6yv0aw1iyfhnpnzmdwdydlr7y";
+      name = "kde-cli-tools-5.24.3.tar.xz";
     };
   };
-  kde-gtk-config = {
-    version = "5.24.0";
+  kdecoration = {
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kde-gtk-config-5.24.0.tar.xz";
-      sha256 = "024pglycz2kbp9npnvbx5qpkz9381wyyp6xkalqynzr9gy58syrx";
-      name = "kde-gtk-config-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kdecoration-5.24.3.tar.xz";
+      sha256 = "0dpnaf5myn1h368cnkq9g6xfm1sqmyam6bxyidbd5j3dyy1kvz5v";
+      name = "kdecoration-5.24.3.tar.xz";
     };
   };
-  kdecoration = {
-    version = "5.24.0";
+  kde-gtk-config = {
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kdecoration-5.24.0.tar.xz";
-      sha256 = "0xl8892w49z11k9mxgh7lp8a4l1x8wldmaij82kd1vnh9sxvb3f3";
-      name = "kdecoration-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kde-gtk-config-5.24.3.tar.xz";
+      sha256 = "0p50kf34csdrgck1y09d3lnz0r9ly0ca4778achrc59yr4qcsjzv";
+      name = "kde-gtk-config-5.24.3.tar.xz";
     };
   };
   kdeplasma-addons = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kdeplasma-addons-5.24.0.tar.xz";
-      sha256 = "0q8yf0gz4gjn1kyf545i8fpsn2dpy48qhjpm8ssp3ywv6s2abjxn";
-      name = "kdeplasma-addons-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kdeplasma-addons-5.24.3.tar.xz";
+      sha256 = "0g7jcvd6abnlzz9ibnc7phzm58pn6dv3795w4hhy47738jkhizl6";
+      name = "kdeplasma-addons-5.24.3.tar.xz";
     };
   };
   kgamma5 = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kgamma5-5.24.0.tar.xz";
-      sha256 = "07w7l25snpi98j5bxg3zri5lsymabnli6h9d5w0qx0c19wzjwayl";
-      name = "kgamma5-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kgamma5-5.24.3.tar.xz";
+      sha256 = "0rwqvz14a50s43p74n19v1zzd9y8f2lylfappxmhrdyxmbgkpnk6";
+      name = "kgamma5-5.24.3.tar.xz";
     };
   };
   khotkeys = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/khotkeys-5.24.0.tar.xz";
-      sha256 = "0gjdwdzg5vybalima8jnwrprqj0rnxmzds0x8w707nb9ypz4k7k6";
-      name = "khotkeys-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/khotkeys-5.24.3.tar.xz";
+      sha256 = "1jxg91rpz09sh13fz270pxfw40qdy6p50j5xw7cpnyqlk2l5zx0p";
+      name = "khotkeys-5.24.3.tar.xz";
     };
   };
   kinfocenter = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kinfocenter-5.24.0.tar.xz";
-      sha256 = "09fq69q4300ppi1y9pp8s4h1bbai1p5qsz384bb445pjvwsyn6nf";
-      name = "kinfocenter-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kinfocenter-5.24.3.tar.xz";
+      sha256 = "08z2044bl0v4ydlx2chv849y6m4py0yd4lnw76sycd14lnvsrxfj";
+      name = "kinfocenter-5.24.3.tar.xz";
     };
   };
   kmenuedit = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kmenuedit-5.24.0.tar.xz";
-      sha256 = "0bjiqdw4wqi5vpkn98wjjz23x6k47lvxac8nyxs8ddd9i8mlklij";
-      name = "kmenuedit-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kmenuedit-5.24.3.tar.xz";
+      sha256 = "1yivrdix4jiycfbw9g6pzx8zkmdq4g8g51ndc7sy3r0qxzgx1icb";
+      name = "kmenuedit-5.24.3.tar.xz";
     };
   };
   kscreen = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kscreen-5.24.0.tar.xz";
-      sha256 = "19kqvvgj209ri035ldzn1k5l36l54rvagsnfzhw61v8rd9r6r02x";
-      name = "kscreen-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kscreen-5.24.3.tar.xz";
+      sha256 = "1wjbd33h8473v8i5qxdccxrsv04v6jyd7scrqdxqaln9n8ylp08f";
+      name = "kscreen-5.24.3.tar.xz";
     };
   };
   kscreenlocker = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kscreenlocker-5.24.0.tar.xz";
-      sha256 = "0d827h5br27sdd925brljb1mwnkzj739g5q0k8xkw9f9q9bxk8l8";
-      name = "kscreenlocker-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kscreenlocker-5.24.3.tar.xz";
+      sha256 = "1dh3z55hwakj11ffn2fm79vnlw7gcg1nkcxbxvcdcpq84ahpq583";
+      name = "kscreenlocker-5.24.3.tar.xz";
     };
   };
   ksshaskpass = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/ksshaskpass-5.24.0.tar.xz";
-      sha256 = "1xiw25imhmkcikp746q9s393djmkdpkh9jb7h1diwwhambnimy6d";
-      name = "ksshaskpass-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/ksshaskpass-5.24.3.tar.xz";
+      sha256 = "0ivq9nyyqm1rrm6ck26jlsh8qv9q98dz5qwvcnpgpmxb3mr1dgiv";
+      name = "ksshaskpass-5.24.3.tar.xz";
     };
   };
   ksystemstats = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/ksystemstats-5.24.0.tar.xz";
-      sha256 = "1182dfcg1av9329g9p9ll64yiwyxm46kczakxb3vj4d2ajaclzm1";
-      name = "ksystemstats-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/ksystemstats-5.24.3.tar.xz";
+      sha256 = "03ikpd3m0qk8cb92g63i7q9c8bks7ggf1pmmig559cmg7gbknc2c";
+      name = "ksystemstats-5.24.3.tar.xz";
     };
   };
   kwallet-pam = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kwallet-pam-5.24.0.tar.xz";
-      sha256 = "0jzi2rcwxxjp3lg8cywp96ysnwm51a0m9pdwk8z7n3v1ncr2p38q";
-      name = "kwallet-pam-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kwallet-pam-5.24.3.tar.xz";
+      sha256 = "0zxdrpjq8sg3qw2gfkvjs567b41labi940cq4qrix395v7251p9k";
+      name = "kwallet-pam-5.24.3.tar.xz";
     };
   };
   kwayland-integration = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kwayland-integration-5.24.0.tar.xz";
-      sha256 = "1yq9cjb8xcvqr747p5hm8xxg4rn6mahchd5c2camv3qrjbqm8ll6";
-      name = "kwayland-integration-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kwayland-integration-5.24.3.tar.xz";
+      sha256 = "1kq5vrrplbdxri8610h89apfz07a6xi1gnlvmr8gbsvas5zicvwz";
+      name = "kwayland-integration-5.24.3.tar.xz";
     };
   };
   kwayland-server = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kwayland-server-5.24.0.tar.xz";
-      sha256 = "1zbi4c14zvjwkxxqlg80mv749ybnkmcdvn72irmrzbbf4g1z7k32";
-      name = "kwayland-server-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kwayland-server-5.24.3.tar.xz";
+      sha256 = "0fq61qk3cp4xg9759ylqqw5ncx9s7kayjf0bilg5m725bfhj02sn";
+      name = "kwayland-server-5.24.3.tar.xz";
     };
   };
   kwin = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kwin-5.24.0.tar.xz";
-      sha256 = "19q5pphqnr1xc1c4z0sd3yr60jsiq190llwllfmlj4acjlbcbbn6";
-      name = "kwin-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kwin-5.24.3.tar.xz";
+      sha256 = "0szlrcsj4h4fa5yf27nmza7c4dyc0xcwdrihs05pl5qk5bivfkfq";
+      name = "kwin-5.24.3.tar.xz";
     };
   };
   kwrited = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/kwrited-5.24.0.tar.xz";
-      sha256 = "018wvkkqzg4qyjd0w1h2d3ms72ghlq8mg79rrsj518l7hhlv6rsg";
-      name = "kwrited-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/kwrited-5.24.3.tar.xz";
+      sha256 = "1sgd3iik647pz2zr5cpsbwm2ll8f11xyw2jv2sfxkbiiw53qaxid";
+      name = "kwrited-5.24.3.tar.xz";
     };
   };
   layer-shell-qt = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/layer-shell-qt-5.24.0.tar.xz";
-      sha256 = "0y3z2xr9vpxnm84gs1zpa1apma341wza7pjcpwibaqd6aiz9vpqv";
-      name = "layer-shell-qt-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/layer-shell-qt-5.24.3.tar.xz";
+      sha256 = "0h3xlvmgyxyzxvazgbbn0a9l14hg5d38cl9hclnwmrnpwbn0bqax";
+      name = "layer-shell-qt-5.24.3.tar.xz";
     };
   };
   libkscreen = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/libkscreen-5.24.0.tar.xz";
-      sha256 = "0h6sycib940gbw2rf6ax3v7mg77pzga36xzwzbyz9h49fba3dpjk";
-      name = "libkscreen-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/libkscreen-5.24.3.tar.xz";
+      sha256 = "18777lwn5j0isc347dks25731byyfdyls79lj6hnxqb6807lz1x6";
+      name = "libkscreen-5.24.3.tar.xz";
     };
   };
   libksysguard = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/libksysguard-5.24.0.tar.xz";
-      sha256 = "1f0hwk2kzmgpjxmsjfd4g25sr91qyazp4hysyfjdhrrs2ajdkm0b";
-      name = "libksysguard-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/libksysguard-5.24.3.tar.xz";
+      sha256 = "18piiy24rd5fzvp4cnhgx0d4x4m6fnxx01zm1mx0sh676g7m31hl";
+      name = "libksysguard-5.24.3.tar.xz";
     };
   };
   milou = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/milou-5.24.0.tar.xz";
-      sha256 = "0sxsisrzfancxwk8lsxhj2b85sgjdb9gzy4l0nax4fp942ygiirs";
-      name = "milou-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/milou-5.24.3.tar.xz";
+      sha256 = "06xx4afym92hfpvbiqrv7mx30bdm3dhdfn8vki5zxq2k0rv0pmri";
+      name = "milou-5.24.3.tar.xz";
     };
   };
   oxygen = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/oxygen-5.24.0.tar.xz";
-      sha256 = "0ym74q29c2f32l1xm3kd0s2p7zzbg6a96g7d39fkp5paxicx5fb7";
-      name = "oxygen-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/oxygen-5.24.3.tar.xz";
+      sha256 = "02j0drc24mf2pfhdgzri5sdcscq1bbj4lhhmhp6bn1v74wybv381";
+      name = "oxygen-5.24.3.tar.xz";
     };
   };
   plasma-browser-integration = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-browser-integration-5.24.0.tar.xz";
-      sha256 = "1gp9m7drwxflb0ms0vbvk7qydm1bghhzalc00lpcjh4nrf0bgh33";
-      name = "plasma-browser-integration-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-browser-integration-5.24.3.tar.xz";
+      sha256 = "1msib3c8arybqbv1vfj1ijx74a34a02hn8gvjy4sf95zcl07mc20";
+      name = "plasma-browser-integration-5.24.3.tar.xz";
     };
   };
   plasma-desktop = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-desktop-5.24.0.tar.xz";
-      sha256 = "1brnm6yivjy2piy88ncmclv4g2rxkaiyi923c557dmiipah2bx7z";
-      name = "plasma-desktop-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-desktop-5.24.3.tar.xz";
+      sha256 = "1lwizprs6nk6nibydwkwmpi9c7c50lvg2k188pb6ddz2sb7pwgjq";
+      name = "plasma-desktop-5.24.3.tar.xz";
     };
   };
   plasma-disks = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-disks-5.24.0.tar.xz";
-      sha256 = "1c3pwnyhdmj7grk3gjh4kw5437m5cxhp70qsbhnfsaacps3mdv5d";
-      name = "plasma-disks-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-disks-5.24.3.tar.xz";
+      sha256 = "0nklcimxyvci3xa6nc5jxbcxds4a14vkkwihgc6xfpc7xcca0wcy";
+      name = "plasma-disks-5.24.3.tar.xz";
     };
   };
   plasma-firewall = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-firewall-5.24.0.tar.xz";
-      sha256 = "1jjw414547qksjxg2x5n666iq6qildbn9k9c8hqipmwnlkprpbb1";
-      name = "plasma-firewall-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-firewall-5.24.3.tar.xz";
+      sha256 = "0r7gh3asnc5lbfsp1jb33lmgcxfpjmlrqlyz41g0wv9aj9x6pwxz";
+      name = "plasma-firewall-5.24.3.tar.xz";
     };
   };
   plasma-integration = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-integration-5.24.0.tar.xz";
-      sha256 = "17dqf6j1za3q8hzk7jfc5wc7s4kr28slrkq5iqvzqgyqjqy3z7rv";
-      name = "plasma-integration-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-integration-5.24.3.tar.xz";
+      sha256 = "031w205icblf50ps7bw7wp5q4azbqpcp4bnig2wh5d1lc8xqzvvs";
+      name = "plasma-integration-5.24.3.tar.xz";
     };
   };
   plasma-mobile = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-mobile-5.24.0.tar.xz";
-      sha256 = "0g9mbb8dzqcngc1sq43knwyc3kr81w3vl359wyrgvnr8r1qikv2z";
-      name = "plasma-mobile-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-mobile-5.24.3.tar.xz";
+      sha256 = "1bwmy7xvd8wmh0snqqjh9jjgawib8ks2g30w48sqxwhplhf3da58";
+      name = "plasma-mobile-5.24.3.tar.xz";
     };
   };
   plasma-nano = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-nano-5.24.0.tar.xz";
-      sha256 = "0i8lsp83g2i3c88djkmxawwbwa6lr0w89lzxj73fr6az6vdcrypj";
-      name = "plasma-nano-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-nano-5.24.3.tar.xz";
+      sha256 = "13jxhfi3c3dhg7zdyfqnsii661h1am0w9dsv82dalqvwr1mw28l5";
+      name = "plasma-nano-5.24.3.tar.xz";
     };
   };
   plasma-nm = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-nm-5.24.0.tar.xz";
-      sha256 = "17pmyklmr46qg21w4ql9q5nhfdjw1xmmv1qz7lyhlww7qa6mz1ny";
-      name = "plasma-nm-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-nm-5.24.3.tar.xz";
+      sha256 = "1z9vzj2mbvqklnjxf2izpx9s6cq097im0kz41fy4c5cjxna4xxic";
+      name = "plasma-nm-5.24.3.tar.xz";
     };
   };
   plasma-pa = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-pa-5.24.0.tar.xz";
-      sha256 = "19n2plbk455qwgq0lcpb7rj2ck78ck64fpvlldmh53j9vxyzcasl";
-      name = "plasma-pa-5.24.0.tar.xz";
-    };
-  };
-  plasma-phone-components = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-phone-components-5.24.0.tar.xz";
-      sha256 = "0g9mbb8dzqcngc1sq43knwyc3kr81w3vl359wyrgvnr8r1qikv2z";
-      name = "plasma-phone-components-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-pa-5.24.3.tar.xz";
+      sha256 = "0n87rb04izd0ix50iy2dgj6yzzr626vhpfk76lnqr57jz6fbx3z1";
+      name = "plasma-pa-5.24.3.tar.xz";
     };
   };
   plasma-sdk = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-sdk-5.24.0.tar.xz";
-      sha256 = "16fn98rv4qaci3b5whzjs6csbbxyrnmnr9gngn5dirdpla8cffld";
-      name = "plasma-sdk-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-sdk-5.24.3.tar.xz";
+      sha256 = "0g6nypqsbmsp9msixd7p25lk58zismdamkp41f5lx3cbb49x1fpr";
+      name = "plasma-sdk-5.24.3.tar.xz";
     };
   };
   plasma-systemmonitor = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-systemmonitor-5.24.0.tar.xz";
-      sha256 = "0zkvbgwm2rpyisbx72a75ywy45d2primjjpnmw76x6924j8sp7pd";
-      name = "plasma-systemmonitor-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-systemmonitor-5.24.3.tar.xz";
+      sha256 = "17a3q1az4d3xpk2ifqsj6sz7r4apxy58kk2r2l14p6s6aszhqk4h";
+      name = "plasma-systemmonitor-5.24.3.tar.xz";
     };
   };
   plasma-tests = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-tests-5.24.0.tar.xz";
-      sha256 = "1q95mrrb0p9ah4dg3bhkc9yh2ydasdmyd87jclraybcsfl6fi9kf";
-      name = "plasma-tests-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-tests-5.24.3.tar.xz";
+      sha256 = "1x5hr465kj3dg6c335lji2lxvp7cbn86181l78qk4l75sj1ss721";
+      name = "plasma-tests-5.24.3.tar.xz";
     };
   };
   plasma-thunderbolt = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-thunderbolt-5.24.0.tar.xz";
-      sha256 = "1vsb3wf2sgbfbm2wk8kj18qhv4z9l4yzxaf8g30zpz4d1sva7jdc";
-      name = "plasma-thunderbolt-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-thunderbolt-5.24.3.tar.xz";
+      sha256 = "1px5vfk37ak6hj6q3ipljj2dpazdbgdsga6nbkwcfn31708c7gjj";
+      name = "plasma-thunderbolt-5.24.3.tar.xz";
     };
   };
   plasma-vault = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-vault-5.24.0.tar.xz";
-      sha256 = "1vk38iarhsr6rdrmhbcyjziw3dn8yjmgyn4dy2xdr0l4yqpq7qzz";
-      name = "plasma-vault-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-vault-5.24.3.tar.xz";
+      sha256 = "0f5yhz7qz4bqj7mc7hv7mvh2ji82pp02c901ws5cwwsh23yrhjcd";
+      name = "plasma-vault-5.24.3.tar.xz";
     };
   };
   plasma-workspace = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-workspace-5.24.0.tar.xz";
-      sha256 = "0jnksl2i2viw5aaqv38b371z4lxrxah6p1bjp40a1zfa68vr8dz3";
-      name = "plasma-workspace-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-workspace-5.24.3.tar.xz";
+      sha256 = "1d1a8k75q0rdbbwkx8p1i38hc6xv9kggvfm6973lh3q0pc75qk0h";
+      name = "plasma-workspace-5.24.3.tar.xz";
     };
   };
   plasma-workspace-wallpapers = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plasma-workspace-wallpapers-5.24.0.tar.xz";
-      sha256 = "0329ks3q32nb9k3dxddlmxccjilgyxx5jplwbpln5b0p4plkn77k";
-      name = "plasma-workspace-wallpapers-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plasma-workspace-wallpapers-5.24.3.tar.xz";
+      sha256 = "0j1qqjc27grh3k02dgfb657ps11gym28lc9hzcw3qdxkf3djw9fs";
+      name = "plasma-workspace-wallpapers-5.24.3.tar.xz";
     };
   };
   plymouth-kcm = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/plymouth-kcm-5.24.0.tar.xz";
-      sha256 = "1pcvfrv8vmk43s14209iv8gngi3al9g4za74yz2l79nxscyppzh5";
-      name = "plymouth-kcm-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/plymouth-kcm-5.24.3.tar.xz";
+      sha256 = "196nx8h54bnnrly12zvnwl22ksr9nk2mi6g39k4xmp28agw94jv5";
+      name = "plymouth-kcm-5.24.3.tar.xz";
     };
   };
   polkit-kde-agent = {
-    version = "1-5.24.0";
+    version = "1-5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/polkit-kde-agent-1-5.24.0.tar.xz";
-      sha256 = "1qayxff5hl8qr9p5bsfrq0cz3x1jlwc8f0nx66rkbngphdm7085n";
-      name = "polkit-kde-agent-1-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/polkit-kde-agent-1-5.24.3.tar.xz";
+      sha256 = "1mbr8xpjvd8w9b5nd6k8fxcnjykzzygwqk19il4wirqyh4n3k3bq";
+      name = "polkit-kde-agent-1-5.24.3.tar.xz";
     };
   };
   powerdevil = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/powerdevil-5.24.0.tar.xz";
-      sha256 = "06mrahlrqibvgfhcxywh72h6jblqq6sjsxqjzbq7zbq61vgc3jg3";
-      name = "powerdevil-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/powerdevil-5.24.3.tar.xz";
+      sha256 = "047h4lz8d1kdyakh5x7fr3kpk35r38z39vm7wb974rd9hjz7alj9";
+      name = "powerdevil-5.24.3.tar.xz";
     };
   };
   qqc2-breeze-style = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/qqc2-breeze-style-5.24.0.tar.xz";
-      sha256 = "11kwrqsq5i1y1kvhg75hvax7bz122cjdsvb66f6hvni09yfcgyci";
-      name = "qqc2-breeze-style-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/qqc2-breeze-style-5.24.3.tar.xz";
+      sha256 = "1y21ldxwlb12kfqzxpyhdw9lkcaf5sfamwhg68r512hy785sg490";
+      name = "qqc2-breeze-style-5.24.3.tar.xz";
     };
   };
   sddm-kcm = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/sddm-kcm-5.24.0.tar.xz";
-      sha256 = "011b68vca8nnmj9rxlyl5gl3xrrbysmcrx8szyfhha0wl9rgy2hx";
-      name = "sddm-kcm-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/sddm-kcm-5.24.3.tar.xz";
+      sha256 = "15n6drklwk3lmiaklw1af98qcixml4w83hngy23lwwv2lbnirl6h";
+      name = "sddm-kcm-5.24.3.tar.xz";
     };
   };
   systemsettings = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/systemsettings-5.24.0.tar.xz";
-      sha256 = "1jx1kllfd5561fq11d90r7m68736rsdlyzb109yq8awdwrl1vkp3";
-      name = "systemsettings-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/systemsettings-5.24.3.tar.xz";
+      sha256 = "11fmjdh6v0a4gacqshhrk374i07px989p3x70w8438gr6y0n2032";
+      name = "systemsettings-5.24.3.tar.xz";
     };
   };
   xdg-desktop-portal-kde = {
-    version = "5.24.0";
+    version = "5.24.3";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.24.0/xdg-desktop-portal-kde-5.24.0.tar.xz";
-      sha256 = "0f5wv4557avzcn7gf2hjqpn2p9r0d16k1iqcijzcfdmnvh2cp69d";
-      name = "xdg-desktop-portal-kde-5.24.0.tar.xz";
+      url = "${mirror}/stable/plasma/5.24.3/xdg-desktop-portal-kde-5.24.3.tar.xz";
+      sha256 = "06qdr7j2m9s9l60mk8vspb2173va10zdv6sinhmkhxxp78h857z6";
+      name = "xdg-desktop-portal-kde-5.24.3.tar.xz";
     };
   };
 }
diff --git a/nixpkgs/pkgs/desktops/xfce/applications/orage/default.nix b/nixpkgs/pkgs/desktops/xfce/applications/orage/default.nix
index 4e5028a6a599..102f8e9c2128 100644
--- a/nixpkgs/pkgs/desktops/xfce/applications/orage/default.nix
+++ b/nixpkgs/pkgs/desktops/xfce/applications/orage/default.nix
@@ -1,25 +1,34 @@
-{ lib, stdenv, fetchurl, fetchpatch, pkg-config, intltool, dbus-glib, gtk2, libical, libnotify, tzdata
-, popt, libxfce4ui, xfce4-panel, withPanelPlugin ? true, wrapGAppsHook, xfce }:
-
-assert withPanelPlugin -> libxfce4ui != null && xfce4-panel != null;
-
-let
-  inherit (lib) optionals;
-in
-
-stdenv.mkDerivation rec {
+{ lib
+, mkXfceDerivation
+, dbus-glib
+, gtk3
+, libical
+, libnotify
+, libxfce4ui
+, popt
+, tzdata
+, xfce4-panel
+, withPanelPlugin ? true
+}:
+
+mkXfceDerivation {
+  category = "apps";
   pname = "orage";
-  version = "4.12.1";
-
-  src = fetchurl {
-    url = "https://archive.xfce.org/src/apps/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-PPmqRBroPIaIhl+CIXAlzfPrqhUszkVxd3uMKqjdkGI=";
-  };
-
-  nativeBuildInputs = [ pkg-config intltool wrapGAppsHook ];
-
-  buildInputs = [ dbus-glib gtk2 libical libnotify popt ]
-    ++ optionals withPanelPlugin [ libxfce4ui xfce4-panel ];
+  version = "4.16.0";
+  odd-unstable = false;
+  sha256 = "sha256-Q2vTjfhbhG7TrkGeU5oVBB+UvrV5QFtl372wgHU4cxw=";
+
+  buildInputs = [
+    dbus-glib
+    gtk3
+    libical
+    libnotify
+    libxfce4ui
+    popt
+  ]
+  ++ lib.optionals withPanelPlugin [
+    xfce4-panel
+  ];
 
   postPatch = ''
     substituteInPlace src/parameters.c        --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo"
@@ -27,27 +36,13 @@ stdenv.mkDerivation rec {
     substituteInPlace tz_convert/tz_convert.c --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo"
   '';
 
-  postConfigure = "rm -rf libical"; # ensure pkgs.libical is used instead of one included in the orage sources
-
-  patches = [
-    # Fix build with libical 3.0
-    (fetchpatch {
-      name = "fix-libical3.patch";
-      url = "https://aur.archlinux.org/cgit/aur.git/plain/libical3.patch?h=orage-4.10";
-      sha256 = "sha256-bsnQMGmeo4mRNGM/7UYXez2bNopXMHRFX7VFVg0IGtE=";
-    })
-  ];
-
-  passthru.updateScript = xfce.archiveUpdater {
-    category = "apps";
-    inherit pname version;
-  };
+  postConfigure = ''
+    # ensure pkgs.libical is used instead of one included in the orage sources
+    rm -rf libical
+  '';
 
   meta = with lib; {
-    description = "Simple calendar application with reminders";
-    homepage = "https://git.xfce.org/archive/orage/";
-    license = licenses.gpl2Plus;
-    platforms = platforms.linux;
+    description = "Simple calendar application for Xfce";
     maintainers = with maintainers; [ ] ++ teams.xfce.members;
   };
 }
diff --git a/nixpkgs/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix b/nixpkgs/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix
index 99e5457a0106..1e8a9230661f 100644
--- a/nixpkgs/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix
+++ b/nixpkgs/pkgs/desktops/xfce/applications/xfce4-screenshooter/default.nix
@@ -3,10 +3,10 @@
 mkXfceDerivation {
   category = "apps";
   pname = "xfce4-screenshooter";
-  version = "1.9.9";
+  version = "1.9.10";
   odd-unstable = false;
 
-  sha256 = "sha256-QOYJl+bxRk0+spgtGADPgkw2lPLfQOwTZQuZNHWq39c=";
+  sha256 = "sha256-i3QdQij58JYv3fWdESUeTV0IW3A8RVGNtmuxUc6FUMg=";
 
   buildInputs = [ exo gtk3 libsoup libxfce4ui libxfce4util xfce4-panel glib-networking ];
 
diff --git a/nixpkgs/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix b/nixpkgs/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix
index 4d887f96ffd2..65611f73a1d2 100644
--- a/nixpkgs/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix
+++ b/nixpkgs/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix
@@ -1,4 +1,4 @@
-{ lib, mkXfceDerivation, gtk3, libxfce4ui, vte, xfconf, pcre2, libxslt, docbook_xml_dtd_45, docbook_xsl }:
+{ lib, mkXfceDerivation, gtk3, libxfce4ui, vte, xfconf, pcre2, libxslt, docbook_xml_dtd_45, docbook_xsl, nixosTests }:
 
 mkXfceDerivation {
   category = "apps";
@@ -11,6 +11,8 @@ mkXfceDerivation {
 
   buildInputs = [ gtk3 libxfce4ui vte xfconf pcre2 ];
 
+  passthru.tests.test = nixosTests.terminal-emulators.xfce4-terminal;
+
   meta = with lib; {
     description = "A modern terminal emulator";
     maintainers = with maintainers; [ ] ++ teams.xfce.members;
diff --git a/nixpkgs/pkgs/desktops/xfce/default.nix b/nixpkgs/pkgs/desktops/xfce/default.nix
index 1ec4cec5b31d..0205a7226398 100644
--- a/nixpkgs/pkgs/desktops/xfce/default.nix
+++ b/nixpkgs/pkgs/desktops/xfce/default.nix
@@ -169,8 +169,6 @@ lib.makeScope pkgs.newScope (self: with self; {
   xfce4_power_manager = xfce4-power-manager;
   xfce4_appfinder = xfce4-appfinder;
   xfce4_dev_tools = xfce4-dev-tools;
-  xfce4mixer = xfce4-mixer;
-  xfce4mixer_pulse = xfce4-mixer-pulse;
   xfce4notifyd = xfce4-notifyd;
   xfce4taskmanager = xfce4-taskmanager;
   xfce4terminal = xfce4-terminal;
@@ -204,8 +202,6 @@ lib.makeScope pkgs.newScope (self: with self; {
   xfce4_windowck_plugin = xfce4-windowck-plugin;
   xfce4_pulseaudio_plugin = xfce4-pulseaudio-plugin;
 
-  xfce4-mixer = throw "deprecated 2019-08-18: obsoleted by xfce4-pulseaudio-plugin"; # added 2019-08-18
-  gtk-xfce-engine = throw "deprecated 2019-09-17: Xfce 4.14 deprecated gtk-xfce-engine"; # added 2019-09-17
   xfce4-dict-plugin = throw "deprecated 2020-04-19: xfce4-dict-plugin is now part of xfce4-dict."; # added 2020-04-19
 
   # added 2019-11-04
@@ -217,7 +213,6 @@ lib.makeScope pkgs.newScope (self: with self; {
   xinitrc = xfce4-session.xinitrc;
   libglade = throw "libglade has been removed";
   inherit (pkgs.gnome) gtksourceview;
-  xfce4-mixer-pulse = xfce4-mixer;
   thunar-bare = thunar.override {
     thunarPlugins = [];
   };
diff --git a/nixpkgs/pkgs/development/chez-modules/chez-mit/default.nix b/nixpkgs/pkgs/development/chez-modules/chez-mit/default.nix
index b3a2a44d2780..10407598fb96 100644
--- a/nixpkgs/pkgs/development/chez-modules/chez-mit/default.nix
+++ b/nixpkgs/pkgs/development/chez-modules/chez-mit/default.nix
@@ -1,13 +1,14 @@
-{ stdenv, lib, fetchgit, chez, chez-srfi }:
+{ stdenv, lib, fetchFromGitHub, chez, chez-srfi }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "chez-mit";
-  version = "1.0";
+  version = "0.1";
 
-  src = fetchgit {
-    url = "https://github.com/fedeinthemix/chez-mit.git";
-    rev = "68f3d7562e77f694847dc74dabb5ecbd106cd6be";
-    sha256 = "0c7i3b6i90xk96nmxn1pc9272a4yal4v40dm1a4ybdi87x53zkk0";
+  src = fetchFromGitHub {
+    owner = "fedeinthemix";
+    repo = "chez-mit";
+    rev = "v${version}";
+    sha256 = "sha256-YM4/Sj8otuWJCrUBsglVnihxRGI32F6tSbODFM0a8TA=";
   };
 
   buildInputs = [ chez chez-srfi ];
diff --git a/nixpkgs/pkgs/development/chez-modules/chez-scmutils/default.nix b/nixpkgs/pkgs/development/chez-modules/chez-scmutils/default.nix
index 39c1f73003e9..59aedd29f0ec 100644
--- a/nixpkgs/pkgs/development/chez-modules/chez-scmutils/default.nix
+++ b/nixpkgs/pkgs/development/chez-modules/chez-scmutils/default.nix
@@ -1,13 +1,14 @@
-{ stdenv, lib, fetchgit, chez, chez-srfi, chez-mit }:
+{ stdenv, lib, fetchFromGitHub, chez, chez-srfi, chez-mit }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "chez-scmutils";
-  version = "1.0";
+  version = "0.1";
 
-  src = fetchgit {
-    url = "https://github.com/fedeinthemix/chez-scmutils.git";
-    rev = "5eaeea6289fd239358d7eed99cc9588528fb52b2";
-    sha256 = "0lb05wlf8qpgg8y0gdsyaxg1nbfx1qbaqdjvygrp64ndn8fnhq7l";
+  src = fetchFromGitHub {
+    owner = "fedeinthemix";
+    repo = "chez-scmutils";
+    rev = "v${version}";
+    sha256 = "sha256-9GBoHbLNEnPz81s2rBYO3S0bXldetwc8eu9i5CgvYFE=";
   };
 
   buildInputs = [ chez chez-srfi chez-mit ];
diff --git a/nixpkgs/pkgs/development/chez-modules/chez-srfi/default.nix b/nixpkgs/pkgs/development/chez-modules/chez-srfi/default.nix
index 1d8579ae106e..1780a1356c5c 100644
--- a/nixpkgs/pkgs/development/chez-modules/chez-srfi/default.nix
+++ b/nixpkgs/pkgs/development/chez-modules/chez-srfi/default.nix
@@ -1,13 +1,14 @@
-{ stdenv, lib, fetchgit, chez }:
+{ stdenv, lib, fetchFromGitHub, chez }:
 
 stdenv.mkDerivation {
   pname = "chez-srfi";
   version = "1.0";
 
-  src = fetchgit {
-    url = "https://github.com/fedeinthemix/chez-srfi.git";
+  src = fetchFromGitHub {
+    owner = "fedeinthemix";
+    repo = "chez-srfi";
     rev = "5770486c2a85d0e3dd4ac62a97918e7c394ea507";
-    sha256 = "1s47v7b7w0ycd2g6gyv8qbzmh4jjln5iday8n9l3m996ns8is9zj";
+    sha256 = "sha256-8icdkbYmpTpossirFoulUhJY/8Jo+2eeaMwDftbZh+g=";
   };
 
   buildInputs = [ chez ];
diff --git a/nixpkgs/pkgs/development/compilers/4th/001-install-manual-fixup.diff b/nixpkgs/pkgs/development/compilers/4th/001-install-manual-fixup.diff
new file mode 100644
index 000000000000..6002e7a0d99f
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/4th/001-install-manual-fixup.diff
@@ -0,0 +1,12 @@
+diff -Naur 4th-3.64.0-old/sources/Makefile 4th-3.64.0-new/sources/Makefile
+--- 4th-3.64.0-old/sources/Makefile	2022-03-15 12:37:45.925122854 -0300
++++ 4th-3.64.0-new/sources/Makefile	2022-03-15 12:38:50.987870211 -0300
+@@ -125,7 +125,7 @@
+ 
+ install: mostlyinstall
+ 	install -Dm644 ../documentation/4th.1 $(MANDIR)/man1/4th.1
+-	install -Dm644 ../documentation/4tHmanual.txt $(DOCDIR)/4th/
++	install -Dm644 ../documentation/4tHmanual.pdf $(DOCDIR)/4th/
+ 
+ uninstall:
+ 	-rm -f $(LIBRARIES)/lib4th.{a,so*}
diff --git a/nixpkgs/pkgs/development/compilers/4th/default.nix b/nixpkgs/pkgs/development/compilers/4th/default.nix
index a8923879c06a..d76a5cc733c9 100644
--- a/nixpkgs/pkgs/development/compilers/4th/default.nix
+++ b/nixpkgs/pkgs/development/compilers/4th/default.nix
@@ -2,13 +2,18 @@
 
 stdenv.mkDerivation rec {
   pname = "4th";
-  version = "3.62.5";
+  version = "3.64.0";
 
   src = fetchurl {
     url = "https://sourceforge.net/projects/forth-4th/files/${pname}-${version}/${pname}-${version}-unix.tar.gz";
-    sha256 = "sha256-+CL33Yz7CxdEpi1lPG7+kzV4rheJ7GCgiFCaOLyktPw=";
+    hash = "sha256-wJBekjFsFRIkhY/P/yHBQ8he+k+fGyrePGTP2Yjgpqg=";
   };
 
+  patches = [
+    # Fix install manual; report this patch to upstream
+    ./001-install-manual-fixup.diff
+  ];
+
   dontConfigure = true;
 
   makeFlags = [
@@ -31,9 +36,11 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
-    description = "A portable Forth compiler";
     homepage = "https://thebeez.home.xs4all.nl/4tH/index.html";
-    license = licenses.lgpl3;
-    platforms = platforms.all;
+    description = "A portable Forth compiler";
+    license = licenses.lgpl3Plus;
+    maintainers = with maintainers; [ AndersonTorres ];
+    platforms = platforms.unix;
   };
 }
+# TODO: set Makefile according to platform
diff --git a/nixpkgs/pkgs/development/compilers/aldor/default.nix b/nixpkgs/pkgs/development/compilers/aldor/default.nix
index 1b87b508b6a1..ace8a3d2de39 100644
--- a/nixpkgs/pkgs/development/compilers/aldor/default.nix
+++ b/nixpkgs/pkgs/development/compilers/aldor/default.nix
@@ -1,14 +1,15 @@
-{ fetchgit, lib, stdenv, gmp, which, flex, bison, makeWrapper
+{ fetchFromGitHub, lib, stdenv, gmp, which, flex, bison, makeWrapper
 , autoconf, automake, libtool, jdk, perl }:
 
 stdenv.mkDerivation {
   pname = "aldor";
   version = "1.2.0";
 
-  src = fetchgit {
-    url = "https://github.com/pippijn/aldor";
-    sha256 = "19v07ffq4r1gjnmg7a8ifgjkwan9a3rwbj0qjz8fycwy221844m6";
+  src = fetchFromGitHub {
+    owner = "aldorlang";
+    repo = "aldor";
     rev = "15471e75f3d65b93150f414ebcaf59a03054b68d";
+    sha256 = "sha256-phKCghCeM+/QlxjIxfNQySo+5XMRqfOqlS9kgp07YKc=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/compilers/ciao/default.nix b/nixpkgs/pkgs/development/compilers/ciao/default.nix
index a5cdcb82bc05..2ce32631562a 100644
--- a/nixpkgs/pkgs/development/compilers/ciao/default.nix
+++ b/nixpkgs/pkgs/development/compilers/ciao/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "ciao";
-  version = "1.20.0";
+  version = "1.21.0-m1";
   src = fetchFromGitHub {
     owner = "ciao-lang";
     repo = "ciao";
     rev = "v${version}";
-    sha256 = "sha256-Xp0ZQRi7mOO2WN/2hO6zgobDG3S0BEV+SgsaduBZ30U=";
+    sha256 = "sha256-o9EQS7KsoTg458Uw+1shgKE6NlZO495XE/rLq6/1S4g=";
   };
 
   configurePhase = ''
diff --git a/nixpkgs/pkgs/development/compilers/crystal/build-package.nix b/nixpkgs/pkgs/development/compilers/crystal/build-package.nix
index a44eaeb369b6..1bdc8989cf1d 100644
--- a/nixpkgs/pkgs/development/compilers/crystal/build-package.nix
+++ b/nixpkgs/pkgs/development/compilers/crystal/build-package.nix
@@ -1,4 +1,15 @@
-{ stdenv, lib, crystal, shards, git, pkg-config, which, linkFarm, fetchFromGitHub, installShellFiles }:
+{ stdenv
+, lib
+, crystal
+, shards
+, git
+, pkg-config
+, which
+, linkFarm
+, fetchFromGitHub
+, installShellFiles
+, removeReferencesTo
+}:
 
 {
   # Some projects do not include a lock file, so you can pass one
@@ -60,7 +71,13 @@ stdenv.mkDerivation (mkDerivationArgs // {
   buildInputs = args.buildInputs or [ ] ++ [ crystal ]
     ++ lib.optional (format != "crystal") shards;
 
-  nativeBuildInputs = args.nativeBuildInputs or [ ] ++ [ git installShellFiles pkg-config which ];
+  nativeBuildInputs = args.nativeBuildInputs or [ ] ++ [
+    git
+    installShellFiles
+    removeReferencesTo
+    pkg-config
+    which
+  ];
 
   buildPhase = args.buildPhase or (lib.concatStringsSep "\n" ([
     "runHook preBuild"
@@ -102,6 +119,7 @@ stdenv.mkDerivation (mkDerivationArgs // {
       installManPage man/*.?
     fi
   '') ++ [
+    "remove-references-to -t ${lib.getLib crystal} $out/bin/*"
     "runHook postInstall"
   ]));
 
diff --git a/nixpkgs/pkgs/development/compilers/crystal/default.nix b/nixpkgs/pkgs/development/compilers/crystal/default.nix
index 4ac820b7e015..280e0fdd2307 100644
--- a/nixpkgs/pkgs/development/compilers/crystal/default.nix
+++ b/nixpkgs/pkgs/development/compilers/crystal/default.nix
@@ -33,6 +33,7 @@ let
     i686-linux = "linux-i686";
     x86_64-darwin = "darwin-x86_64";
     aarch64-darwin = "darwin-universal";
+    aarch64-linux = "linux-aarch64";
   };
 
   arch = archs.${stdenv.system} or (throw "system ${stdenv.system} not supported");
@@ -40,13 +41,19 @@ let
 
   checkInputs = [ git gmp openssl readline libxml2 libyaml ];
 
+  binaryUrl = version: rel:
+    if arch == archs.aarch64-linux then
+      "https://dev.alpinelinux.org/archive/crystal/crystal-${version}-aarch64-alpine-linux-musl.tar.gz"
+    else
+      "https://github.com/crystal-lang/crystal/releases/download/${version}/crystal-${version}-${toString rel}-${arch}.tar.gz";
+
   genericBinary = { version, sha256s, rel ? 1 }:
     stdenv.mkDerivation rec {
       pname = "crystal-binary";
       inherit version;
 
       src = fetchurl {
-        url = "https://github.com/crystal-lang/crystal/releases/download/${version}/crystal-${version}-${toString rel}-${arch}.tar.gz";
+        url = binaryUrl version rel;
         sha256 = sha256s.${stdenv.system};
       };
 
@@ -225,6 +232,7 @@ rec {
       x86_64-linux = "1949argajiyqyq09824yj3wjyv88gd8wbf20xh895saqfykiq880";
       i686-linux = "0w0f4fwr2ijhx59i7ppicbh05hfmq7vffmgl7lal6im945m29vch";
       x86_64-darwin = "01n0rf8zh551vv8wq3h0ifnsai0fz9a77yq87xx81y9dscl9h099";
+      aarch64-linux = "0sns7l4q3z82qi3dc2r4p63f4s8hvifqzgq56ykwyrvawynjhd53";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/compilers/cudatoolkit/default.nix b/nixpkgs/pkgs/development/compilers/cudatoolkit/default.nix
index 6e6b27c2cf7c..97aabf36e263 100644
--- a/nixpkgs/pkgs/development/compilers/cudatoolkit/default.nix
+++ b/nixpkgs/pkgs/development/compilers/cudatoolkit/default.nix
@@ -86,5 +86,5 @@ rec {
     gcc = gcc10; # can bump to 11 along with stdenv.cc
   };
 
-  cudatoolkit_11 = cudatoolkit_11_4;
+  cudatoolkit_11 = cudatoolkit_11_6;
 }
diff --git a/nixpkgs/pkgs/development/compilers/dotnet/build-dotnet.nix b/nixpkgs/pkgs/development/compilers/dotnet/build-dotnet.nix
index 55deb594706f..bfc2ab7f9b05 100644
--- a/nixpkgs/pkgs/development/compilers/dotnet/build-dotnet.nix
+++ b/nixpkgs/pkgs/development/compilers/dotnet/build-dotnet.nix
@@ -1,6 +1,6 @@
 { type
 , version
-, sha512
+, srcs
 }:
 
 assert builtins.elem type [ "aspnetcore" "runtime" "sdk"];
@@ -25,17 +25,7 @@ let
     "dotnet-runtime"
   else
     "dotnet-sdk";
-  platform = {
-    x86_64-linux = "linux-x64";
-    aarch64-linux = "linux-arm64";
-    x86_64-darwin = "osx-x64";
-    aarch64-darwin = "osx-arm64";
-  }.${stdenv.hostPlatform.system} or (throw "unsupported system: ${stdenv.hostPlatform.system}");
-  urls = {
-    aspnetcore = "https://dotnetcli.azureedge.net/dotnet/aspnetcore/Runtime/${version}/${pname}-${version}-${platform}.tar.gz";
-    runtime = "https://dotnetcli.azureedge.net/dotnet/Runtime/${version}/${pname}-${version}-${platform}.tar.gz";
-    sdk = "https://dotnetcli.azureedge.net/dotnet/Sdk/${version}/${pname}-${version}-${platform}.tar.gz";
-  };
+
   descriptions = {
     aspnetcore = "ASP.NET Core Runtime ${version}";
     runtime = ".NET Runtime ${version}";
@@ -58,11 +48,8 @@ in stdenv.mkDerivation rec {
     lttng-ust_2_12
   ]);
 
-  src = fetchurl {
-    url = builtins.getAttr type urls;
-    sha512 = sha512."${stdenv.hostPlatform.system}" or (throw
-      "Missing hash for host system: ${stdenv.hostPlatform.system}");
-  };
+  src = fetchurl (srcs."${stdenv.hostPlatform.system}" or (throw
+    "Missing source (url and hash) for host system: ${stdenv.hostPlatform.system}"));
 
   sourceRoot = ".";
 
@@ -90,7 +77,10 @@ in stdenv.mkDerivation rec {
   '';
 
   setupHook = writeText "dotnet-setup-hook" ''
-    export HOME=$(mktemp -d) # Dotnet expects a writable home directory for its configuration files
+    if [ ! -w "$HOME" ]; then
+      export HOME=$(mktemp -d) # Dotnet expects a writable home directory for its configuration files
+    fi
+
     export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 # Dont try to expand NuGetFallbackFolder to disk
     export DOTNET_NOLOGO=1 # Disables the welcome message
     export DOTNET_CLI_TELEMETRY_OPTOUT=1
@@ -99,7 +89,7 @@ in stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://dotnet.github.io/";
     description = builtins.getAttr type descriptions;
-    platforms = builtins.attrNames sha512;
+    platforms = builtins.attrNames srcs;
     maintainers = with maintainers; [ kuznero ];
     license = licenses.mit;
   };
diff --git a/nixpkgs/pkgs/development/compilers/dotnet/default.nix b/nixpkgs/pkgs/development/compilers/dotnet/default.nix
index c4eabac489d6..6ae8240c7f03 100644
--- a/nixpkgs/pkgs/development/compilers/dotnet/default.nix
+++ b/nixpkgs/pkgs/development/compilers/dotnet/default.nix
@@ -2,7 +2,7 @@
 How to combine packages for use in development:
 dotnetCombined = with dotnetCorePackages; combinePackages [ sdk_3_1 sdk_5_0 aspnetcore_5_0 ];
 
-Hashes below are retrived from:
+Hashes and urls below are retrieved from:
 https://dotnet.microsoft.com/download/dotnet
 */
 { callPackage }:
@@ -16,98 +16,184 @@ rec {
   combinePackages = attrs: callPackage (import ./combine-packages.nix attrs) {};
 
   # EOL
-
   sdk_2_1 = throw "Dotnet SDK 2.1 is EOL, please use 3.1 (LTS), 5.0 (Current) or 6.0 (LTS)";
   sdk_2_2 = throw "Dotnet SDK 2.2 is EOL, please use 3.1 (LTS), 5.0 (Current) or 6.0 (LTS)";
   sdk_3_0 = throw "Dotnet SDK 3.0 is EOL, please use 3.1 (LTS), 5.0 (Current) or 6.0 (LTS)";
 
-  # v3.1 (LTS)
-
+  # v3.1 (lts)
   aspnetcore_3_1 = buildAspNetCore {
     version = "3.1.21";
-    sha512 = {
-      x86_64-linux = "f59252166dbfe11a78373226222d6a34484b9132e24283222aea8a950a5e9657da2e4d4e9ff8cbcc2fd7c7705e13bf42a31232a6012d1e247efc718e3d8e2df1";
-      aarch64-linux = "f3d014431064362c29361e3d3b33b7aaaffe46e22f324cd42ba6fc6a6d5b712153e9ec82f10cf1bee416360a68fb4520dc9c0b0a8860316c4c9fce75f1adae80";
-      x86_64-darwin = "477912671e21c7c61f5666323ad9e9c246550d40b4d127ccc71bcb296c86e07051e3c75251beef11806f198eebd0cd4b36790950f24c730dc6723156c0dc11b5";
+    srcs = {
+      x86_64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/c4565012-97e8-4a5a-9edf-8d6c94f0ac5c/dd227c01d532bcb731b026243a51f55f/aspnetcore-runtime-3.1.21-linux-x64.tar.gz";
+        sha512  = "f59252166dbfe11a78373226222d6a34484b9132e24283222aea8a950a5e9657da2e4d4e9ff8cbcc2fd7c7705e13bf42a31232a6012d1e247efc718e3d8e2df1";
+      };
+      aarch64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/5d245f70-4e8f-457a-9c4f-d4140136e496/56193e7de38e0f4101eb6f3fd2c60c41/aspnetcore-runtime-3.1.21-linux-arm64.tar.gz";
+        sha512  = "f3d014431064362c29361e3d3b33b7aaaffe46e22f324cd42ba6fc6a6d5b712153e9ec82f10cf1bee416360a68fb4520dc9c0b0a8860316c4c9fce75f1adae80";
+      };
+      x86_64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/dd423a05-c133-464d-a117-d2e73d6dfeb5/a2d7c629802b8a283819a445a3024944/aspnetcore-runtime-3.1.21-osx-x64.tar.gz";
+        sha512  = "477912671e21c7c61f5666323ad9e9c246550d40b4d127ccc71bcb296c86e07051e3c75251beef11806f198eebd0cd4b36790950f24c730dc6723156c0dc11b5";
+      };
     };
   };
 
   runtime_3_1 = buildNetRuntime {
     version = "3.1.21";
-    sha512 = {
-      x86_64-linux = "cc4b2fef46e94df88bf0fc11cb15439e79bd48da524561dffde80d3cd6db218133468ad2f6785803cf0c13f000d95ff71eb258cec76dd8eb809676ec1cb38fac";
-      aarch64-linux = "80971125650a2fa0163e39a2de98bc2e871c295b723559e6081a3ab59d99195aa5b794450f8182c5eb4e7e472ca1c13340ef1cc8a5588114c494bbb5981f19c4";
-      x86_64-darwin = "049257f680fe7dfb8e98a2ae4da6aa184f171b04b81c506e7a83509e46b1ea81ea6000c4d01c5bed46d5495328c6d9a0eeecbc0dc7c2c698296251fb04b5e855";
+    srcs = {
+      x86_64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/286e526e-282b-47e5-afeb-4f99ee481972/495908d6a6019e47249bd05f8346aeb5/dotnet-runtime-3.1.21-linux-x64.tar.gz";
+        sha512  = "cc4b2fef46e94df88bf0fc11cb15439e79bd48da524561dffde80d3cd6db218133468ad2f6785803cf0c13f000d95ff71eb258cec76dd8eb809676ec1cb38fac";
+      };
+      aarch64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/45b3ad17-6ce6-4cd6-a975-d4f152203750/c6df44d802c52e65ad5d9c783ccd46ab/dotnet-runtime-3.1.21-linux-arm64.tar.gz";
+        sha512  = "80971125650a2fa0163e39a2de98bc2e871c295b723559e6081a3ab59d99195aa5b794450f8182c5eb4e7e472ca1c13340ef1cc8a5588114c494bbb5981f19c4";
+      };
+      x86_64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/3896eba4-4ef4-47a7-846c-8acb44b15feb/4920ee69b26772423edc686e499da061/dotnet-runtime-3.1.21-osx-x64.tar.gz";
+        sha512  = "049257f680fe7dfb8e98a2ae4da6aa184f171b04b81c506e7a83509e46b1ea81ea6000c4d01c5bed46d5495328c6d9a0eeecbc0dc7c2c698296251fb04b5e855";
+      };
     };
   };
 
   sdk_3_1 = buildNetSdk {
     version = "3.1.415";
-    sha512 = {
-      x86_64-linux = "df7a6d1abed609c382799a8f69f129ec72ce68236b2faecf01aed4c957a40a9cfbbc9126381bf517dff3dbe0e488f1092188582701dd0fef09a68b8c5707c747";
-      aarch64-linux = "7a5b9922988bcbde63d39f97e283ca1d373d5521cca0ab8946e2f86deaef6e21f00244228a0d5d8c38c2b9634b38bc7338b61984f0e12dd8fdb8b2e6eed5dd34";
-      x86_64-darwin = "e26529714021d1828687c404dd0800c61eb267c9da62ee629b91f5ffa8af77d156911bd3c1a58bf11e5c589cfe4a852a95c14a7cb25f731e92a484348868964d";
+    srcs = {
+      x86_64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/6425056e-bfd5-48be-8b00-223c03a4d0f3/08a801489b7f18e9e73a1378082fbe66/dotnet-sdk-3.1.415-linux-x64.tar.gz";
+        sha512  = "df7a6d1abed609c382799a8f69f129ec72ce68236b2faecf01aed4c957a40a9cfbbc9126381bf517dff3dbe0e488f1092188582701dd0fef09a68b8c5707c747";
+      };
+      aarch64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/4a78a923-e891-40fe-88d2-4bff2c90519f/126bee4399caeabde4f34f4ace7f44e3/dotnet-sdk-3.1.415-linux-arm64.tar.gz";
+        sha512  = "7a5b9922988bcbde63d39f97e283ca1d373d5521cca0ab8946e2f86deaef6e21f00244228a0d5d8c38c2b9634b38bc7338b61984f0e12dd8fdb8b2e6eed5dd34";
+      };
+      x86_64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/7d663efa-2180-4562-8735-be11d8ba465d/605910e63a687d8c9e72ba108ffb1da4/dotnet-sdk-3.1.415-osx-x64.tar.gz";
+        sha512  = "e26529714021d1828687c404dd0800c61eb267c9da62ee629b91f5ffa8af77d156911bd3c1a58bf11e5c589cfe4a852a95c14a7cb25f731e92a484348868964d";
+      };
     };
   };
 
-  # v5.0 (Current)
-
+  # v5.0 (current)
   aspnetcore_5_0 = buildAspNetCore {
     version = "5.0.12";
-    sha512 = {
-      x86_64-linux = "0529f23ffa651ac2c2807b70d6e5034f6ae4c88204afdaaa76965ef604d6533f9440d68d9f2cdd3a9f2ca37e9140e6c61a9f9207d430c71140094c7d5c33bf79";
-      aarch64-linux = "70570177896943613f0cddeb046ffccaafb1c8245c146383e45fbcfb27779c70dff1ab22c2b13a14bf096173c9279e0a386f61665106a3abb5f623b50281a652";
-      x86_64-darwin = "bd9e7dd7f48c220121dde85b3acc4ce7eb2a1944d472f9340276718ef72d033f05fd9a62ffb9de93b8e7633843e731ff1cb5e8c836315f7571f519fdb0a119e1";
+    srcs = {
+      x86_64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/ad0a54ca-4b88-4762-a790-aebeaba6b9e7/0f796fb90696d078046d90d8a05c027e/aspnetcore-runtime-5.0.12-linux-x64.tar.gz";
+        sha512  = "0529f23ffa651ac2c2807b70d6e5034f6ae4c88204afdaaa76965ef604d6533f9440d68d9f2cdd3a9f2ca37e9140e6c61a9f9207d430c71140094c7d5c33bf79";
+      };
+      aarch64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/bfc8ae06-2830-4082-a09e-63b3c7134096/880a4712d4ba3491c88aa566553c4e8a/aspnetcore-runtime-5.0.12-linux-arm64.tar.gz";
+        sha512  = "70570177896943613f0cddeb046ffccaafb1c8245c146383e45fbcfb27779c70dff1ab22c2b13a14bf096173c9279e0a386f61665106a3abb5f623b50281a652";
+      };
+      x86_64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/06d71ed5-0755-40d6-8b8e-14a24b8a9cb7/47a8b4deda0deecf3658716b642c69bf/aspnetcore-runtime-5.0.12-osx-x64.tar.gz";
+        sha512  = "bd9e7dd7f48c220121dde85b3acc4ce7eb2a1944d472f9340276718ef72d033f05fd9a62ffb9de93b8e7633843e731ff1cb5e8c836315f7571f519fdb0a119e1";
+      };
     };
   };
 
   runtime_5_0 = buildNetRuntime {
     version = "5.0.12";
-    sha512 = {
-      x86_64-linux = "32b5f86db3b1d4c21e3cf616d22f0e4a7374385dac0cf03cdebf3520dcf846460d9677ec1829a180920740a0237d64f6eaa2421d036a67f4fe9fb15d4f6b1db9";
-      aarch64-linux = "a8089fad8d21a4b582aa6c3d7162d56a21fee697fd400f050a772f67c2ace5e4196d1c4261d3e861d6dc2e5439666f112c406104d6271e5ab60cda80ef2ffc64";
-      x86_64-darwin = "a3160eaec15d0e2b62a4a2cdbb6663ef2e817fd26a3a3b8b3d75c5e3538b2947ff66eaddafb39cc297b9f087794d5fbd5a0e097ec8522ab6fea562f230055264";
+    srcs = {
+      x86_64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/781b7ae6-166c-4114-97f8-926d2bf74d34/fe51479e3138d672c512ef0322be23d3/dotnet-runtime-5.0.12-linux-x64.tar.gz";
+        sha512  = "32b5f86db3b1d4c21e3cf616d22f0e4a7374385dac0cf03cdebf3520dcf846460d9677ec1829a180920740a0237d64f6eaa2421d036a67f4fe9fb15d4f6b1db9";
+      };
+      aarch64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/7c342ad2-2dae-471b-ae46-c0c820321c1f/a480ad8ca0bc826a48c9b1e56efd972b/dotnet-runtime-5.0.12-linux-arm64.tar.gz";
+        sha512  = "a8089fad8d21a4b582aa6c3d7162d56a21fee697fd400f050a772f67c2ace5e4196d1c4261d3e861d6dc2e5439666f112c406104d6271e5ab60cda80ef2ffc64";
+      };
+      x86_64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/8f990fa6-6b13-40ad-95f6-383391ff3d91/7531048d16c01efdf3885da367aa8b89/dotnet-runtime-5.0.12-osx-x64.tar.gz";
+        sha512  = "a3160eaec15d0e2b62a4a2cdbb6663ef2e817fd26a3a3b8b3d75c5e3538b2947ff66eaddafb39cc297b9f087794d5fbd5a0e097ec8522ab6fea562f230055264";
+      };
     };
   };
 
   sdk_5_0 = buildNetSdk {
     version = "5.0.403";
-    sha512 = {
-      x86_64-linux = "7ba5f7f898dba64ea7027dc66184d60ac5ac35fabe750bd509711628442e098413878789fad5766be163fd2867cf22ef482a951e187cf629bbc6f54dd9293a4a";
-      aarch64-linux = "6cc705fe45c0d8df6a493eb2923539ef5b62d048d5218859bf3af06fb3934c9c716c16f98ee1a28c818d77adff8430bf39a2ae54a59a1468b704b4ba192234ac";
-      x86_64-darwin = "70beea069db182cca211cf04d7a80f3d6a3987d76cbd2bb60590ee76b93a4041b1b86ad91057cddbbaddd501c72327c1bc0a5fec630f38063f84bd60ba2b4792";
+    srcs = {
+      x86_64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/b77183fa-c045-4058-82c5-d37742ed5f2d/ddaccef3e448a6df348cae4d1d271339/dotnet-sdk-5.0.403-linux-x64.tar.gz";
+        sha512  = "7ba5f7f898dba64ea7027dc66184d60ac5ac35fabe750bd509711628442e098413878789fad5766be163fd2867cf22ef482a951e187cf629bbc6f54dd9293a4a";
+      };
+      aarch64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/91015c72-ce5a-4840-9e87-5bfa4bb80224/b39692ac418d790ff7a2e092eb07de98/dotnet-sdk-5.0.403-linux-arm64.tar.gz";
+        sha512  = "6cc705fe45c0d8df6a493eb2923539ef5b62d048d5218859bf3af06fb3934c9c716c16f98ee1a28c818d77adff8430bf39a2ae54a59a1468b704b4ba192234ac";
+      };
+      x86_64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/5ccdb916-531f-4064-84e8-5475b273a4de/80dcfa0c2eb528f8b0e7c313ed36f4f1/dotnet-sdk-5.0.403-osx-x64.tar.gz";
+        sha512  = "70beea069db182cca211cf04d7a80f3d6a3987d76cbd2bb60590ee76b93a4041b1b86ad91057cddbbaddd501c72327c1bc0a5fec630f38063f84bd60ba2b4792";
+      };
     };
   };
 
-  # v6.0 (LTS)
-
+  # v6.0 (lts)
   aspnetcore_6_0 = buildAspNetCore {
-    version = "6.0.0";
-    sha512 = {
-      x86_64-linux = "6a1ae878efdc9f654e1914b0753b710c3780b646ac160fb5a68850b2fd1101675dc71e015dbbea6b4fcf1edac0822d3f7d470e9ed533dd81d0cfbcbbb1745c6c";
-      aarch64-linux = "e61eade344b686180b8a709229d6b3180ea6f085523e5e4e4b0d23dd00cf9edce3e51a920c986b1bab7d04d8cab5aae219c3b533b6feb84b32a02810936859b0";
-      x86_64-darwin = "76029272ff50fbf9fcc513109b98c0db5f74dbf970c1380be4dfac0dae7558824d68a167d0a8ceb39042ff4a7ca973cdcc15afed2d1ffef55b0adba8e40c9073";
-      aarch64-darwin = "e459ddf33243d680baecc5378b9c4182daf42b8c36a9a996205d91146a614d048a385f953c43727350ad55b1221c5f5d43b383d03e3883e862bf12faeaa02dfb";
+    version = "6.0.3";
+    srcs = {
+      x86_64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/3af854b6-80fb-425a-972f-c7f0d693bf1b/cd458a4feae5a98646ee12a14ab34151/aspnetcore-runtime-6.0.3-linux-x64.tar.gz";
+        sha512  = "9ea54220468d922ef2c40433c4b8c70df6c60d8ea63a3ac1ff5e5ce712606ae5cfe1e57d321b87eff1b5dc34d7823a4b4b964180587383f22d9a0ff5bb3a8c88";
+      };
+      aarch64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/1e7933b2-1202-4aeb-bb70-a6f9cecac61a/b12b5666b3d4cf508f8575581abd4033/aspnetcore-runtime-6.0.3-linux-arm64.tar.gz";
+        sha512  = "745586b64d3e01f856c366821f6fb8ca97c55b2a90ba36d528fdf99c98938574805153e7d4fff0560afe8382bea14b35ddeba391a2dc2328285f02e125c9b702";
+      };
+      x86_64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/2cfe2a02-dd59-4cb7-9788-76c620eaa0ff/dfd0d449289a042be9bc62e4466bf350/aspnetcore-runtime-6.0.3-osx-x64.tar.gz";
+        sha512  = "bda83cf36fc9aa62ff3e16a26b5f8f37efa3221ab826467fe26f3072517a428c64e44bc52f8a90f5c77bc60eeeddb8c3d59d2a509999edce3b51b835dd7edf83";
+      };
+      aarch64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/d7cf4456-d9ba-4a31-98e9-4681e1b0d8b8/b9c4cfded00e9940756e62c4486f64c6/aspnetcore-runtime-6.0.3-osx-arm64.tar.gz";
+        sha512  = "03d1d4e8a8370856120e045ed4a83b3383d00fb56b5fdaf7db0de8bab5e3de60d03c02deaed6f72bde0d6b0e12511fe1202c4e2c25fdeeb489ad61a5902d71d3";
+      };
     };
   };
 
   runtime_6_0 = buildNetRuntime {
-    version = "6.0.0";
-    sha512 = {
-      x86_64-linux = "7cc8d93f9495b516e1b33bf82af3af605f1300bcfeabdd065d448cc126bd97ab4da5ec5e95b7775ee70ab4baf899ff43671f5c6f647523fb41cda3d96f334ae5";
-      aarch64-linux = "b0f0f2b4dc0a31b06cc3af541a3c44260317ca3a4414a5d50e6cf859d93821b3d2c2246baec9f96004aeb1eb0e353631283b11cf3acc134d4694f0ed71c9503d";
-      x86_64-darwin = "d6842bddd9652dd7ad1d8156c3e9012f9412b3d89b4cfc0b6d644fd76744298aa5ed2cde8a80d14bb2b247ee162bae255875ee2ca62033a422dacb7adaeece2d";
-      aarch64-darwin = "5cfc3c8a70f0e90f09047d3eeccd699e7210756b60fabbf1a30d6fdc121df084e5d8c3210557273739d5421f031dc9e4d07c611406734ca0671585de6e28e028";
+    version = "6.0.3";
+    srcs = {
+      x86_64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/4e766615-57e6-4b1d-a574-25eeb7a71107/9f95f74c33711e085302ffd644ef86ee/dotnet-runtime-6.0.3-linux-x64.tar.gz";
+        sha512  = "083d9e6e72f0d8f175b341f5229277374e630c5358cfd3602fe611aeef59abec715edbe18d62135a5d13a650e99ef49f19b17e8c81663d0b5bee757519bec894";
+      };
+      aarch64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/89b5d16e-cb5e-4e6c-90f6-7332e93d20ae/7a0146aa4fc59154a3256c5196a622c7/dotnet-runtime-6.0.3-linux-arm64.tar.gz";
+        sha512  = "f0f9fb191054dea2e4151a86c3de1a11ce574cc843cde429850db0996c7df403dfa348a277f1af96f13fec718ae77f3be75379ed3829b027e561564ff22c7258";
+      };
+      x86_64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/1f354e35-ff3f-4de7-b6be-f5001b7c3976/b7c8814ab28a6f00f063440e63903105/dotnet-runtime-6.0.3-osx-x64.tar.gz";
+        sha512  = "98c457cbc0ac8f5f0acd7807bb45726b78e87d4f554fd30123cc8d9568b5341cc5bba16c8e4c85537ec4798d7e4d7f2f11701d2045b124f1b36bca75d80458e8";
+      };
+      aarch64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/03047609-269e-4ca6-bf2e-406c496b27e3/3b19ad4d3fbc5d9a92f436db13e9e3d1/dotnet-runtime-6.0.3-osx-arm64.tar.gz";
+        sha512  = "1debd4acab3c6408c849323e6dfba28a626850c40f93a0debe46c54f0c0b39526f4118d5b2bcf0307efeba0bc2656a92187a685400095ae078227698a0aabfb3";
+      };
     };
   };
 
   sdk_6_0 = buildNetSdk {
-    version = "6.0.100";
-    sha512 = {
-      x86_64-linux = "cb0d174a79d6294c302261b645dba6a479da8f7cf6c1fe15ae6998bc09c5e0baec810822f9e0104e84b0efd51fdc0333306cb2a0a6fcdbaf515a8ad8cf1af25b";
-      aarch64-linux = "e5983c1c599d6dc7c3c7496b9698e47c68247f04a5d0d1e3162969d071471297bce1c2fd3a1f9fb88645006c327ae79f880dcbdd8eefc9166fd717331f2716e7";
-      x86_64-darwin = "6e2f502a84f712d60daed31c4076c5b55ee98a03259adf4bdc01659afcac2be7050e5a404dcda35fdc598bf5cd766772c08abc483ed94f6985c9501057b0186a";
-      aarch64-darwin = "92ead34c7e082dbed2786db044385ddfc68673e096a3edf64bc0bf70c76ea1c5cb816cde99aab2d8c528a44c86593b812877d075486dd0ae565f0e01e9eaa562";
+    version = "6.0.201";
+    srcs = {
+      x86_64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/c505a449-9ecf-4352-8629-56216f521616/bd6807340faae05b61de340c8bf161e8/dotnet-sdk-6.0.201-linux-x64.tar.gz";
+        sha512  = "a4d96b6ca2abb7d71cc2c64282f9bd07cedc52c03d8d6668346ae0cd33a9a670d7185ab0037c8f0ecd6c212141038ed9ea9b19a188d1df2aae10b2683ce818ce";
+      };
+      aarch64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/33c6e1e3-e81f-44e8-9de8-91934fba3c94/9105f95a9e37cda6bd0c33651be2b90a/dotnet-sdk-6.0.201-linux-arm64.tar.gz";
+        sha512  = "2ea443c27ab7ca9d566e4df0e842063642394fd22fe2a8620371171c8207ae6a4a72c8c54fc6af5b6b053be25cf9c09a74504f08b963e5bd84544619aed9afc2";
+      };
+      x86_64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/cecaa095-3254-4987-b105-6bb9b594a89c/df29881aea827565a96d5e47dc337749/dotnet-sdk-6.0.201-osx-x64.tar.gz";
+        sha512  = "1df27ca5a1db1a8712acd95083aa00ec7b266618770e164d6460d0cf781b3643a7365ef35232140c83b588f7aa4e2d7e5f5b6d627f1851b2d0ec197172f9fb4d";
+      };
+      aarch64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/628be5e6-7fc7-42b6-99c9-ea46fbcc3d14/d94bb4198af2d5013c75b1c70751ec8f/dotnet-sdk-6.0.201-osx-arm64.tar.gz";
+        sha512  = "0796a81339788fbc160885548983889dcffd26a5c0ac935b497b290ae99920386f3929cebfbef9bb22f644a207ba329cf8b90ffe7bbb49d1d99d0d8a05ce50c9";
+      };
     };
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/dotnet/print-hashes.sh b/nixpkgs/pkgs/development/compilers/dotnet/print-hashes.sh
index 5c97c3132338..966f0a9c0614 100755
--- a/nixpkgs/pkgs/development/compilers/dotnet/print-hashes.sh
+++ b/nixpkgs/pkgs/development/compilers/dotnet/print-hashes.sh
@@ -1,69 +1,110 @@
 #!/usr/bin/env nix-shell
-#!nix-shell -i bash -p curl
+#!nix-shell -i bash -p curl jq
 
 set -eu
 
-if [[ $# -lt 1 ]]; then
-    echo \"usage: $0 version\" >&2
+release () {
+  local content="$1"
+  local version="$2"
+
+  jq -r '.releases[] | select(."release-version" == "'"$version"'")' <<< "$content"
+}
+
+release_files () {
+  local release="$1"
+  local type="$2"
+
+  jq -r '[."'"$type"'".files[] | select(.name | test("^.*.tar.gz$"))]' <<< "$release"
+}
+
+release_platform_attr () {
+  local release_files="$1"
+  local platform="$2"
+  local attr="$3"
+
+  jq -r '.[] | select(.rid == "'"$platform"'") | ."'"$attr"'"' <<< "$release_files"
+}
+
+platform_sources () {
+  local release_files="$1"
+  local platforms=( \
+    "x86_64-linux   linux-x64" \
+    "aarch64-linux  linux-arm64" \
+    "x86_64-darwin  osx-x64" \
+    "aarch64-darwin osx-arm64" \
+  )
+
+  echo "srcs = {"
+  for kv in "${platforms[@]}"; do
+    local nix_platform=${kv%% *}
+    local ms_platform=${kv##* }
+
+    local url=$(release_platform_attr "$release_files" "$ms_platform" url)
+    local hash=$(release_platform_attr "$release_files" "$ms_platform" hash)
+
+    [[ -z "$url" || -z "$hash" ]] && continue
+    echo "      $nix_platform = {
+        url     = \"$url\";
+        sha512  = \"$hash\";
+      }; "
+    done
+    echo "    };"
+}
+
+main () {
+  pname=$(basename "$0")
+  if [[ ! "$*" =~ ^.*[0-9]{1,}\.[0-9]{1,}.*$ ]]; then
+    echo "Usage: $pname [sem-versions]
+Get updated dotnet src (platform - url & sha512) expressions for specified versions
+
+Examples:
+  $pname 3.1.21 5.0.12    - specific x.y.z versions
+  $pname 3.1 5.0 6.0      - latest x.y versions
+" >&2
     exit 1
-fi
-
-VERSION=$1
-HASHFILE=$(mktemp /tmp/dotnet.hashes.XXXXXXXX)
-trap "rm -f $HASHFILE" EXIT
-
-curl -L https://dotnetcli.blob.core.windows.net/dotnet/checksums/$VERSION-sha.txt -o $HASHFILE
-
-ASPNETCORE_VERSION=$(grep aspnetcore-runtime- $HASHFILE | grep -- -linux-x64.tar.gz | tail -n -1 | sed -e 's:.*aspnetcore-runtime-::' -e 's:-linux-x64.tar.gz.*$::' )
-ASPNETCORE_HASH_LINUX_X64=$(grep aspnetcore-runtime- $HASHFILE | grep -- -linux-x64.tar.gz | cut -d ' ' -f 1)
-ASPNETCORE_HASH_LINUX_ARM64=$(grep aspnetcore-runtime- $HASHFILE | grep -- -linux-arm64.tar.gz | cut -d ' ' -f 1)
-ASPNETCORE_HASH_OSX_X64=$(grep aspnetcore-runtime- $HASHFILE | grep -- -osx-x64.tar.gz | cut -d ' ' -f 1)
-ASPNETCORE_HASH_OSX_ARM64=$(grep aspnetcore-runtime- $HASHFILE | grep -- -osx-arm64.tar.gz | cut -d ' ' -f 1)
-
-RUNTIME_VERSION=$(grep dotnet-runtime- $HASHFILE | grep -- -linux-x64.tar.gz | tail -n -1 | sed -e 's:.*dotnet-runtime-::' -e 's:-linux-x64.tar.gz.*$::' )
-RUNTIME_HASH_LINUX_X64=$(grep dotnet-runtime- $HASHFILE | grep -- -linux-x64.tar.gz | cut -d ' ' -f 1)
-RUNTIME_HASH_LINUX_ARM64=$(grep dotnet-runtime- $HASHFILE | grep -- -linux-arm64.tar.gz | cut -d ' ' -f 1)
-RUNTIME_HASH_OSX_X64=$(grep dotnet-runtime- $HASHFILE | grep -- -osx-x64.tar.gz | cut -d ' ' -f 1)
-RUNTIME_HASH_OSX_ARM64=$(grep dotnet-runtime- $HASHFILE | grep -- -osx-arm64.tar.gz | cut -d ' ' -f 1)
-
-# dotnet-sdk has multiple entries in file, but the latest is the newest
-SDK_VERSION=$(grep dotnet-sdk- $HASHFILE | grep -- -linux-x64.tar.gz | tail -n -1 | sed -e 's:.*dotnet-sdk-::' -e 's:-linux-x64.tar.gz.*$::' )
-SDK_HASH_LINUX_X64=$(grep dotnet-sdk- $HASHFILE | grep -- -linux-x64.tar.gz | tail -n 1 | cut -d ' ' -f 1)
-SDK_HASH_LINUX_ARM64=$(grep dotnet-sdk- $HASHFILE | grep -- -linux-arm64.tar.gz | tail -n 1 | cut -d ' ' -f 1)
-SDK_HASH_OSX_X64=$(grep dotnet-sdk- $HASHFILE | grep -- -osx-x64.tar.gz | tail -n 1 | cut -d ' ' -f 1)
-SDK_HASH_OSX_ARM64=$(grep dotnet-sdk- $HASHFILE | grep -- -osx-arm64.tar.gz | tail -n 1 | cut -d ' ' -f 1)
-
-V=${VERSION/./_}
-MAJOR_MINOR_VERSION=${V%%.*}
-
-echo """
-  aspnetcore_${MAJOR_MINOR_VERSION} = buildAspNetCore {
-    version = \"${ASPNETCORE_VERSION}\";
-    sha512 = {
-      x86_64-linux = \"${ASPNETCORE_HASH_LINUX_X64}\";
-      aarch64-linux = \"${ASPNETCORE_HASH_LINUX_ARM64}\";
-      x86_64-darwin = \"${ASPNETCORE_HASH_OSX_X64}\";
-      aarch64-darwin = \"${ASPNETCORE_HASH_OSX_ARM64}\";
-    };
-  };
+  fi
+
+  for sem_version in "$@"; do
+    patch_specified=false
+    if [[ "$sem_version" =~ ^[0-9]{1,}\.[0-9]{1,}\.[0-9]{1,}$ ]]; then
+        patch_specified=true
+    elif [[ ! "$sem_version" =~ ^[0-9]{1,}\.[0-9]{1,}$ ]]; then
+        continue
+    fi
+
+    major_minor=$(sed 's/^\([0-9]*\.[0-9]*\).*$/\1/' <<< "$sem_version")
+    content=$(curl -sL https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/"$major_minor"/releases.json)
+    major_minor_patch=$([ "$patch_specified" == true ] && echo "$sem_version" || jq -r '."latest-release"' <<< "$content")
 
-  runtime_${MAJOR_MINOR_VERSION} = buildNetRuntime {
-    version = \"${RUNTIME_VERSION}\";
-    sha512 = {
-      x86_64-linux = \"${RUNTIME_HASH_LINUX_X64}\";
-      aarch64-linux = \"${RUNTIME_HASH_LINUX_ARM64}\";
-      x86_64-darwin = \"${RUNTIME_HASH_OSX_X64}\";
-      aarch64-darwin = \"${RUNTIME_HASH_OSX_ARM64}\";
-    };
+    release_content=$(release "$content" "$major_minor_patch")
+    aspnetcore_version=$(jq -r '."aspnetcore-runtime".version' <<< "$release_content")
+    runtime_version=$(jq -r '.runtime.version' <<< "$release_content")
+    sdk_version=$(jq -r '.sdk.version' <<< "$release_content")
+
+    aspnetcore_files="$(release_files "$release_content" "aspnetcore-runtime")"
+    runtime_files="$(release_files "$release_content" "runtime")"
+    sdk_files="$(release_files "$release_content" "sdk")"
+
+    major_minor_underscore=${major_minor/./_}
+    channel_version=$(jq -r '."channel-version"' <<< "$content")
+    support_phase=$(jq -r '."support-phase"' <<< "$content")
+    echo "
+  # v$channel_version ($support_phase)
+  aspnetcore_$major_minor_underscore = buildAspNetCore {
+    version = \"${aspnetcore_version}\";
+    $(platform_sources "$aspnetcore_files")
   };
 
-  sdk_${MAJOR_MINOR_VERSION} = buildNetSdk {
-    version = \"${SDK_VERSION}\";
-    sha512 = {
-      x86_64-linux = \"${SDK_HASH_LINUX_X64}\";
-      aarch64-linux = \"${SDK_HASH_LINUX_ARM64}\";
-      x86_64-darwin = \"${SDK_HASH_OSX_X64}\";
-      aarch64-darwin = \"${SDK_HASH_OSX_ARM64}\";
-    };
+  runtime_$major_minor_underscore = buildNetRuntime {
+    version = \"${runtime_version}\";
+    $(platform_sources "$runtime_files")
   };
-"""
+
+  sdk_$major_minor_underscore = buildNetSdk {
+    version = \"${sdk_version}\";
+    $(platform_sources "$sdk_files")
+  }; "
+  done
+}
+
+main "$@"
diff --git a/nixpkgs/pkgs/development/compilers/emscripten/default.nix b/nixpkgs/pkgs/development/compilers/emscripten/default.nix
index c514b86a6c42..af78b56c097f 100644
--- a/nixpkgs/pkgs/development/compilers/emscripten/default.nix
+++ b/nixpkgs/pkgs/development/compilers/emscripten/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "emscripten";
-  version = "2.0.27";
+  version = "3.0.0";
 
   llvmEnv = symlinkJoin {
     name = "emscripten-llvm-${version}";
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "emscripten-core";
     repo = "emscripten";
-    sha256 = "1dpfib2nmbvskqlaqw3kvaay69qpa7d155hd4w05c2xgmahmrd4n";
+    sha256 = "sha256-HlXcPKlmBTwEKgTfeMg6QoMKMbK++bpv2fu1DyolrHs=";
     rev = version;
   };
 
diff --git a/nixpkgs/pkgs/development/compilers/gcc/10/default.nix b/nixpkgs/pkgs/development/compilers/gcc/10/default.nix
index 4493fd936ec3..a26aaf771af3 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/10/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/10/default.nix
@@ -14,7 +14,7 @@
   # we can't rebuild those without also rebuilding the compiler itself,
   # we opt to always build everything unlike our usual policy.
   enableShared ? true
-, enableLTO ? true
+, enableLTO ? !stdenv.hostPlatform.isStatic
 , texinfo ? null
 , perl ? null # optional, for texi2pod (then pod2man)
 , gmp, mpfr, libmpc, gettext, which, patchelf
diff --git a/nixpkgs/pkgs/development/compilers/gcc/11/default.nix b/nixpkgs/pkgs/development/compilers/gcc/11/default.nix
index a9498b1060db..b78ca339fb85 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/11/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/11/default.nix
@@ -14,7 +14,7 @@
   # we can't rebuild those without also rebuilding the compiler itself,
   # we opt to always build everything unlike our usual policy.
   enableShared ? true
-, enableLTO ? true
+, enableLTO ? !stdenv.hostPlatform.isStatic
 , texinfo ? null
 , perl ? null # optional, for texi2pod (then pod2man)
 , gmp, mpfr, libmpc, gettext, which, patchelf
diff --git a/nixpkgs/pkgs/development/compilers/gcc/4.8/default.nix b/nixpkgs/pkgs/development/compilers/gcc/4.8/default.nix
index c192c603c883..bc7868cc4606 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/4.8/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/4.8/default.nix
@@ -14,7 +14,7 @@
   # we can't rebuild those without also rebuilding the compiler itself,
   # we opt to always build everything unlike our usual policy.
   enableShared ? true
-, enableLTO ? true
+, enableLTO ? !stdenv.hostPlatform.isStatic
 , texinfo ? null
 , perl ? null # optional, for texi2pod (then pod2man); required for Java
 , gmp, mpfr, libmpc, gettext, which, patchelf
diff --git a/nixpkgs/pkgs/development/compilers/gcc/4.9/default.nix b/nixpkgs/pkgs/development/compilers/gcc/4.9/default.nix
index 70278c237d4c..bb1a3dd7d636 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/4.9/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/4.9/default.nix
@@ -14,7 +14,7 @@
   # we can't rebuild those without also rebuilding the compiler itself,
   # we opt to always build everything unlike our usual policy.
   enableShared ? true
-, enableLTO ? true
+, enableLTO ? !stdenv.hostPlatform.isStatic
 , texinfo ? null
 , perl ? null # optional, for texi2pod (then pod2man); required for Java
 , gmp, mpfr, libmpc, gettext, which, patchelf
diff --git a/nixpkgs/pkgs/development/compilers/gcc/6/default.nix b/nixpkgs/pkgs/development/compilers/gcc/6/default.nix
index 1809d7ae42ef..7548ec56c759 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/6/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/6/default.nix
@@ -15,7 +15,7 @@
   # we can't rebuild those without also rebuilding the compiler itself,
   # we opt to always build everything unlike our usual policy.
   enableShared ? true
-, enableLTO ? true
+, enableLTO ? !stdenv.hostPlatform.isStatic
 , texinfo ? null
 , flex
 , perl ? null # optional, for texi2pod (then pod2man); required for Java
diff --git a/nixpkgs/pkgs/development/compilers/gcc/7/default.nix b/nixpkgs/pkgs/development/compilers/gcc/7/default.nix
index dcb7d0b91f6f..dfac97104eb6 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/7/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/7/default.nix
@@ -13,7 +13,7 @@
   # we can't rebuild those without also rebuilding the compiler itself,
   # we opt to always build everything unlike our usual policy.
   enableShared ? true
-, enableLTO ? true
+, enableLTO ? !stdenv.hostPlatform.isStatic
 , texinfo ? null
 , perl ? null # optional, for texi2pod (then pod2man)
 , gmp, mpfr, libmpc, gettext, which, patchelf
diff --git a/nixpkgs/pkgs/development/compilers/gcc/8/default.nix b/nixpkgs/pkgs/development/compilers/gcc/8/default.nix
index 01deb2727b85..609dfa722a65 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/8/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/8/default.nix
@@ -13,7 +13,7 @@
   # we can't rebuild those without also rebuilding the compiler itself,
   # we opt to always build everything unlike our usual policy.
   enableShared ? true
-, enableLTO ? true
+, enableLTO ? !stdenv.hostPlatform.isStatic
 , texinfo ? null
 , perl ? null # optional, for texi2pod (then pod2man)
 , gmp, mpfr, libmpc, gettext, which, patchelf
diff --git a/nixpkgs/pkgs/development/compilers/gcc/9/default.nix b/nixpkgs/pkgs/development/compilers/gcc/9/default.nix
index 9d21ed667f6c..ea4296826661 100644
--- a/nixpkgs/pkgs/development/compilers/gcc/9/default.nix
+++ b/nixpkgs/pkgs/development/compilers/gcc/9/default.nix
@@ -15,7 +15,7 @@
   # we can't rebuild those without also rebuilding the compiler itself,
   # we opt to always build everything unlike our usual policy.
   enableShared ? true
-, enableLTO ? true
+, enableLTO ? !stdenv.hostPlatform.isStatic
 , texinfo ? null
 , perl ? null # optional, for texi2pod (then pod2man)
 , gmp, mpfr, libmpc, gettext, which, patchelf
diff --git a/nixpkgs/pkgs/development/compilers/ghcjs/ghcjs-base.nix b/nixpkgs/pkgs/development/compilers/ghcjs/ghcjs-base.nix
index ca0086a918ab..b0c604a4aeac 100644
--- a/nixpkgs/pkgs/development/compilers/ghcjs/ghcjs-base.nix
+++ b/nixpkgs/pkgs/development/compilers/ghcjs/ghcjs-base.nix
@@ -1,5 +1,5 @@
 { mkDerivation, aeson, array, attoparsec, base, binary, bytestring
-, containers, deepseq, directory, dlist, fetchgit, ghc-prim
+, containers, deepseq, directory, dlist, fetchFromGitHub, ghc-prim
 , ghcjs-prim, hashable, HUnit, integer-gmp, primitive, QuickCheck
 , quickcheck-unicode, random, scientific, test-framework
 , test-framework-hunit, test-framework-quickcheck2, text, time
@@ -9,10 +9,11 @@
 mkDerivation {
   pname = "ghcjs-base";
   version = "0.2.0.3";
-  src = fetchgit {
-    url = "git://github.com/ghcjs/ghcjs-base";
-    sha256 = "15fdkjv0l7hpbbsn5238xxgzfdg61g666nzbv2sgxkwryn5rycv0";
+  src = fetchFromGitHub {
+    owner = "ghcjs";
+    repo = "ghcjs-base";
     rev = "85e31beab9beffc3ea91b954b61a5d04e708b8f2";
+    sha256 = "sha256-YDOfi/WZz/602OtbY8wL5jX3X+9oiGL1WhceCraczZU=";
   };
   libraryHaskellDepends = [
     aeson attoparsec base binary bytestring containers deepseq dlist
diff --git a/nixpkgs/pkgs/development/compilers/go/1.16.nix b/nixpkgs/pkgs/development/compilers/go/1.16.nix
index 872ade45946d..add1e70bbe3d 100644
--- a/nixpkgs/pkgs/development/compilers/go/1.16.nix
+++ b/nixpkgs/pkgs/development/compilers/go/1.16.nix
@@ -45,7 +45,8 @@ let
     "riscv64" = "riscv64";
     "s390x" = "s390x";
     "powerpc64le" = "ppc64le";
-  }.${platform.parsed.cpu.name} or (throw "Unsupported system");
+    "mips64el" = "mips64le";
+  }.${platform.parsed.cpu.name} or (throw "Unsupported system: ${platform.parsed.cpu.name}");
 
   # We need a target compiler which is still runnable at build time,
   # to handle the cross-building case where build != host == target
diff --git a/nixpkgs/pkgs/development/compilers/go/1.17.nix b/nixpkgs/pkgs/development/compilers/go/1.17.nix
index a72593587490..69537dc899e8 100644
--- a/nixpkgs/pkgs/development/compilers/go/1.17.nix
+++ b/nixpkgs/pkgs/development/compilers/go/1.17.nix
@@ -45,7 +45,8 @@ let
     "riscv64" = "riscv64";
     "s390x" = "s390x";
     "powerpc64le" = "ppc64le";
-  }.${platform.parsed.cpu.name} or (throw "Unsupported system");
+    "mips64el" = "mips64le";
+  }.${platform.parsed.cpu.name} or (throw "Unsupported system: ${platform.parsed.cpu.name}");
 
   # We need a target compiler which is still runnable at build time,
   # to handle the cross-building case where build != host == target
diff --git a/nixpkgs/pkgs/development/compilers/go/1.18.nix b/nixpkgs/pkgs/development/compilers/go/1.18.nix
index 23e9f70d4da2..a4cb013d94f2 100644
--- a/nixpkgs/pkgs/development/compilers/go/1.18.nix
+++ b/nixpkgs/pkgs/development/compilers/go/1.18.nix
@@ -45,7 +45,8 @@ let
     "riscv64" = "riscv64";
     "s390x" = "s390x";
     "powerpc64le" = "ppc64le";
-  }.${platform.parsed.cpu.name} or (throw "Unsupported system");
+    "mips64el" = "mips64le";
+  }.${platform.parsed.cpu.name} or (throw "Unsupported system: ${platform.parsed.cpu.name}");
 
   # We need a target compiler which is still runnable at build time,
   # to handle the cross-building case where build != host == target
diff --git a/nixpkgs/pkgs/development/compilers/hip/default.nix b/nixpkgs/pkgs/development/compilers/hip/default.nix
index 5a7e9dd5a529..2153a30cb160 100644
--- a/nixpkgs/pkgs/development/compilers/hip/default.nix
+++ b/nixpkgs/pkgs/development/compilers/hip/default.nix
@@ -31,13 +31,13 @@
 let
   hip = stdenv.mkDerivation rec {
     pname = "hip";
-    version = "4.5.2";
+    version = "5.0.2";
 
     src = fetchFromGitHub {
       owner = "ROCm-Developer-Tools";
       repo = "HIP";
       rev = "rocm-${version}";
-      sha256 = "sha256-AuA5ubRPywXaBBrjdHg5AT8rrVKULKog6Lh8jPaUcXY=";
+      hash = "sha256-w023vBLJaiFbRdvz9UfZLPasRjk3VqM9zwctCIJ5hGU=";
     };
 
     # - fix bash paths
@@ -68,14 +68,14 @@ let
           -e 's,`file,`${file}/bin/file,g' \
           -e 's,`readelf,`${binutils-unwrapped}/bin/readelf,' \
           -e 's, ar , ${binutils-unwrapped}/bin/ar ,g' \
-          -i bin/hipcc
+          -i bin/hipcc.pl
 
       sed -e 's,^\($HSA_PATH=\).*$,\1"${rocm-runtime}";,' \
           -e 's,^\($HIP_CLANG_PATH=\).*$,\1"${clang}/bin";,' \
           -e 's,^\($HIP_PLATFORM=\).*$,\1"amd";,' \
           -e 's,$HIP_CLANG_PATH/llc,${llvm}/bin/llc,' \
           -e 's, abs_path, Cwd::abs_path,' \
-          -i bin/hipconfig
+          -i bin/hipconfig.pl
 
       sed -e 's, abs_path, Cwd::abs_path,' -i bin/hipvars.pm
     '';
@@ -102,13 +102,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "hip";
-  version = "4.5.2";
+  version = "5.0.2";
 
   src = fetchFromGitHub {
     owner = "ROCm-Developer-Tools";
     repo = "hipamd";
     rev = "rocm-${version}";
-    sha256 = "WvOuQu/EN81Kwcoc3ZtGlhb996edQJ3OWFsmPuqeNXE=";
+    hash = "sha256-hhTwKG0wDpbIBI8S61AhdNldX+STO8C66xi2EzmJSBs=";
   };
 
   nativeBuildInputs = [ cmake python3 makeWrapper perl ];
@@ -135,6 +135,7 @@ stdenv.mkDerivation rec {
     "-DAMD_OPENCL_PATH=${rocm-opencl-runtime.src}"
     "-DHIP_COMMON_DIR=${hip}"
     "-DROCCLR_PATH=${rocclr}"
+    "-DHIP_VERSION_BUILD_ID=0"
   ];
 
   postInstall = ''
diff --git a/nixpkgs/pkgs/development/compilers/inklecate/deps-darwin.nix b/nixpkgs/pkgs/development/compilers/inklecate/deps-darwin.nix
index b8aaefebc5b5..bd7e4399c95c 100644
--- a/nixpkgs/pkgs/development/compilers/inklecate/deps-darwin.nix
+++ b/nixpkgs/pkgs/development/compilers/inklecate/deps-darwin.nix
@@ -1,6 +1,6 @@
 { fetchNuGet }: [
   (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "3.1.10"; sha256 = "0xn4zh7shvijqlr03fqsmps6gz856isd9bg9rk4z2c4599ggal77"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "3.1.21"; sha256 = "1s5g9gk0hvs268q2zpc32m0my2m2ivlmsmza86797a9vkxr6pzw6"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "3.1.23"; sha256 = "0r2jd4ys31sgp2zcf8lzkji1xkyaxzgrkrh5rkk7p3r8b5f7fkcv"; })
   (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "3.1.0"; sha256 = "08svsiilx9spvjamcnjswv0dlpdrgryhr3asdz7cvnl914gjzq4y"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
diff --git a/nixpkgs/pkgs/development/compilers/inklecate/deps-linux.nix b/nixpkgs/pkgs/development/compilers/inklecate/deps-linux.nix
index 8f26b91eeacc..1d5345147ed6 100644
--- a/nixpkgs/pkgs/development/compilers/inklecate/deps-linux.nix
+++ b/nixpkgs/pkgs/development/compilers/inklecate/deps-linux.nix
@@ -1,6 +1,6 @@
 { fetchNuGet }: [
   (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "3.1.10"; sha256 = "0xn4zh7shvijqlr03fqsmps6gz856isd9bg9rk4z2c4599ggal77"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "3.1.21"; sha256 = "01kbhi29lhv6mg1zfsyakz3z8hfbxnc0kxy0fczl8xqviik9svx7"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "3.1.23"; sha256 = "09cy79swsmrfczv92wmxrwin7djpdl22yzhriac7r1xcg2sc36yk"; })
   (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "3.1.0"; sha256 = "08svsiilx9spvjamcnjswv0dlpdrgryhr3asdz7cvnl914gjzq4y"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
diff --git a/nixpkgs/pkgs/development/compilers/ligo/default.nix b/nixpkgs/pkgs/development/compilers/ligo/default.nix
index 33a0ad49bd3d..36ec5bba2e20 100644
--- a/nixpkgs/pkgs/development/compilers/ligo/default.nix
+++ b/nixpkgs/pkgs/development/compilers/ligo/default.nix
@@ -1,17 +1,19 @@
 { lib
 , fetchFromGitLab
+, git
 , coq
 , cacert
 }:
 
 coq.ocamlPackages.buildDunePackage rec {
   pname = "ligo";
-  version = "0.34.0";
+  version = "0.36.0";
   src = fetchFromGitLab {
     owner = "ligolang";
     repo = "ligo";
     rev = version;
-    sha256 = "sha256-MHkIr+XkW/zrRt+Cg48q4fOWTkNGH0hbf+oU7cAivNE=";
+    sha256 = "0zx8ai79ha3npm3aybzgisil27v9i052cqdllfri0fsc67dig78b";
+    fetchSubmodules = true;
   };
 
   # The build picks this up for ligo --version
@@ -19,32 +21,59 @@ coq.ocamlPackages.buildDunePackage rec {
 
   useDune2 = true;
 
+  strictDeps = true;
+
+  nativeBuildInputs = [
+    git
+    coq
+    coq.ocamlPackages.menhir
+    coq.ocamlPackages.ocaml-recovery-parser
+  ];
+
   buildInputs = with coq.ocamlPackages; [
     coq
     menhir
     menhirLib
     qcheck
     ocamlgraph
+    bisect_ppx
     ppx_deriving
     ppx_deriving_yojson
     ppx_expect
-    tezos-base
-    tezos-shell-services
-    tezos-010-PtGRANAD-test-helpers
-    tezos-011-PtHangz2-test-helpers
-    tezos-protocol-010-PtGRANAD-parameters
-    tezos-protocol-010-PtGRANAD
-    tezos-protocol-environment
+    ppx_import
+    terminal_size
+    ocaml-recovery-parser
     yojson
     getopt
-    terminal_size
+    core
     pprint
     linenoise
+
+    # Test helpers deps
+    qcheck
+    qcheck-alcotest
+    alcotest-lwt
+
+    # vendored tezos' deps
+    ctypes
+    hacl-star
+    hacl-star-raw
+    lwt-canceler
+    ipaddr
+    bls12-381-unix
+    bls12-381-legacy
+    ptime
+    mtime
+    lwt_log
+    ringo
+    ringo-lwt
+    secp256k1-internal
+    resto
+    resto-directory
+    resto-cohttp-self-serving-client
+    irmin-pack
+    ezjsonm
     data-encoding
-    bisect_ppx
-    cmdliner
-    core
-    ocaml-recovery-parser
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/compilers/llvm/10/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/10/lld/default.nix
index 5d590aec35ac..4b7d4eafcbf3 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/10/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/10/lld/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = llvm_meta // {
     homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker";
+    description = "The LLVM linker (unwrapped)";
     longDescription = ''
       LLD is a linker from the LLVM project that is a drop-in replacement for
       system linkers and runs much faster than them. It also provides features
diff --git a/nixpkgs/pkgs/development/compilers/llvm/11/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/11/lld/default.nix
index d344d3d3c117..8a9daf317c24 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/11/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/11/lld/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = llvm_meta // {
     homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker";
+    description = "The LLVM linker (unwrapped)";
     longDescription = ''
       LLD is a linker from the LLVM project that is a drop-in replacement for
       system linkers and runs much faster than them. It also provides features
diff --git a/nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix
index f9b0effbff30..cc476259612c 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/12/lld/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
 
   meta = llvm_meta // {
     homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker";
+    description = "The LLVM linker (unwrapped)";
     longDescription = ''
       LLD is a linker from the LLVM project that is a drop-in replacement for
       system linkers and runs much faster than them. It also provides features
diff --git a/nixpkgs/pkgs/development/compilers/llvm/13/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/13/lld/default.nix
index 2b5e9e965d07..d37a380c6397 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/13/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/13/lld/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
 
   meta = llvm_meta // {
     homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker";
+    description = "The LLVM linker (unwrapped)";
     longDescription = ''
       LLD is a linker from the LLVM project that is a drop-in replacement for
       system linkers and runs much faster than them. It also provides features
diff --git a/nixpkgs/pkgs/development/compilers/llvm/14/default.nix b/nixpkgs/pkgs/development/compilers/llvm/14/default.nix
index ce126f7b502f..93cacafdc555 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/14/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/14/default.nix
@@ -19,7 +19,7 @@
 
 let
   release_version = "14.0.0";
-  candidate = "rc4"; # empty or "rcN"
+  candidate = ""; # empty or "rcN"
   dash-candidate = lib.optionalString (candidate != "") "-${candidate}";
   rev = ""; # When using a Git commit
   rev-version = ""; # When using a Git commit
@@ -30,7 +30,7 @@ let
     owner = "llvm";
     repo = "llvm-project";
     rev = if rev != "" then rev else "llvmorg-${version}";
-    sha256 = "0xm3hscg6xv48rjdi7sg9ky960af1qyg5k3jyavnaqimlaj9wxgp";
+    sha256 = "1ixqzjzq4ad3mv1w44gwcg1shy34c2b3i9ja71vx1wa7l2ms2376";
   };
 
   llvm_meta = {
diff --git a/nixpkgs/pkgs/development/compilers/llvm/14/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/14/lld/default.nix
index fe655c761129..1ae6d4ea6fce 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/14/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/14/lld/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
 
   meta = llvm_meta // {
     homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker";
+    description = "The LLVM linker (unwrapped)";
     longDescription = ''
       LLD is a linker from the LLVM project that is a drop-in replacement for
       system linkers and runs much faster than them. It also provides features
diff --git a/nixpkgs/pkgs/development/compilers/llvm/14/openmp/default.nix b/nixpkgs/pkgs/development/compilers/llvm/14/openmp/default.nix
index 2b580a9c169c..622072b53e18 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/14/openmp/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/14/openmp/default.nix
@@ -5,6 +5,7 @@
 , runCommand
 , cmake
 , llvm
+, lit
 , clang-unwrapped
 , perl
 , pkg-config
@@ -25,16 +26,27 @@ stdenv.mkDerivation rec {
 
   patches = [
     ./gnu-install-dirs.patch
-    ./fix-find-tool.patch
+    ./run-lit-directly.patch
   ];
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ cmake perl pkg-config clang-unwrapped ];
+  nativeBuildInputs = [ cmake perl pkg-config lit ];
   buildInputs = [ llvm ];
 
+  # Unsup:Pass:XFail:Fail
+  # 26:267:16:8
+  doCheck = false;
+  checkTarget = "check-openmp";
+
+  preCheck = ''
+    patchShebangs ../tools/archer/tests/deflake.bash
+  '';
+
   cmakeFlags = [
-    "-DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=OFF" # Building the AMDGCN device RTL currently fails
+    "-DCLANG_TOOL=${clang-unwrapped}/bin/clang"
+    "-DOPT_TOOL=${llvm}/bin/opt"
+    "-DLINK_TOOL=${llvm}/bin/llvm-link"
   ];
 
   meta = llvm_meta // {
@@ -50,6 +62,5 @@ stdenv.mkDerivation rec {
     # "All of the code is dual licensed under the MIT license and the UIUC
     # License (a BSD-like license)":
     license = with lib.licenses; [ mit ncsa ];
-    broken = true; # TODO: gnu-install-dirs.patch fails to apply
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/llvm/14/openmp/fix-find-tool.patch b/nixpkgs/pkgs/development/compilers/llvm/14/openmp/fix-find-tool.patch
deleted file mode 100644
index b5d0e7b41775..000000000000
--- a/nixpkgs/pkgs/development/compilers/llvm/14/openmp/fix-find-tool.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-diff --git a/libomptarget/DeviceRTL/CMakeLists.txt b/libomptarget/DeviceRTL/CMakeLists.txt
-index 242df638f80d..a4654e96371f 100644
---- a/libomptarget/DeviceRTL/CMakeLists.txt
-+++ b/libomptarget/DeviceRTL/CMakeLists.txt
-@@ -25,16 +25,16 @@ endif()
- 
- if (LLVM_DIR)
-   # Builds that use pre-installed LLVM have LLVM_DIR set.
--  find_program(CLANG_TOOL clang PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH)
-+  find_program(CLANG_TOOL clang PATHS ${LLVM_TOOLS_BINARY_DIR} REQUIRED)
-   find_program(LINK_TOOL llvm-link PATHS ${LLVM_TOOLS_BINARY_DIR}
--    NO_DEFAULT_PATH)
--  find_program(OPT_TOOL opt PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH)
-+    REQUIRED)
-+  find_program(OPT_TOOL opt PATHS ${LLVM_TOOLS_BINARY_DIR} REQUIRED)
-   libomptarget_say("Building DeviceRTL. Using clang: ${CLANG_TOOL}")
- elseif (LLVM_TOOL_CLANG_BUILD AND NOT CMAKE_CROSSCOMPILING AND NOT OPENMP_STANDALONE_BUILD)
-   # LLVM in-tree builds may use CMake target names to discover the tools.
--  set(CLANG_TOOL $<TARGET_FILE:clang>)
--  set(LINK_TOOL $<TARGET_FILE:llvm-link>)
--  set(OPT_TOOL $<TARGET_FILE:opt>)
-+  set(CLANG_TOOL $<TARGET_FILE:clang> REQUIRED)
-+  set(LINK_TOOL $<TARGET_FILE:llvm-link> REQUIRED)
-+  set(OPT_TOOL $<TARGET_FILE:opt> REQUIRED)
-   libomptarget_say("Building DeviceRTL. Using clang from in-tree build")
- else()
-   libomptarget_say("Not building DeviceRTL. No appropriate clang found")
-diff --git a/libomptarget/deviceRTLs/amdgcn/CMakeLists.txt b/libomptarget/deviceRTLs/amdgcn/CMakeLists.txt
-index 3f4c02671aeb..be9f4677d7b5 100644
---- a/libomptarget/deviceRTLs/amdgcn/CMakeLists.txt
-+++ b/libomptarget/deviceRTLs/amdgcn/CMakeLists.txt
-@@ -38,16 +38,16 @@ endif()
- 
- if (LLVM_DIR)
-   # Builds that use pre-installed LLVM have LLVM_DIR set.
--  find_program(CLANG_TOOL clang PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH)
-+  find_program(CLANG_TOOL clang PATHS ${LLVM_TOOLS_BINARY_DIR} REQUIRED)
-   find_program(LINK_TOOL llvm-link PATHS ${LLVM_TOOLS_BINARY_DIR}
--    NO_DEFAULT_PATH)
--  find_program(OPT_TOOL opt PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH)
-+    REQUIRED)
-+  find_program(OPT_TOOL opt PATHS ${LLVM_TOOLS_BINARY_DIR} REQUIRED)
-   libomptarget_say("Building AMDGCN device RTL. Using clang: ${CLANG_TOOL}")
- elseif (LLVM_TOOL_CLANG_BUILD AND NOT CMAKE_CROSSCOMPILING AND NOT OPENMP_STANDALONE_BUILD)
-   # LLVM in-tree builds may use CMake target names to discover the tools.
--  set(CLANG_TOOL $<TARGET_FILE:clang>)
--  set(LINK_TOOL $<TARGET_FILE:llvm-link>)
--  set(OPT_TOOL $<TARGET_FILE:opt>)
-+  set(CLANG_TOOL $<TARGET_FILE:clang> REQUIRED)
-+  set(LINK_TOOL $<TARGET_FILE:llvm-link> REQUIRED)
-+  set(OPT_TOOL $<TARGET_FILE:opt> REQUIRED)
-   libomptarget_say("Building AMDGCN device RTL. Using clang from in-tree build")
- else()
-   libomptarget_say("Not building AMDGCN device RTL. No appropriate clang found")
diff --git a/nixpkgs/pkgs/development/compilers/llvm/14/openmp/gnu-install-dirs.patch b/nixpkgs/pkgs/development/compilers/llvm/14/openmp/gnu-install-dirs.patch
index 352a46923115..e85fde46ca3f 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/14/openmp/gnu-install-dirs.patch
+++ b/nixpkgs/pkgs/development/compilers/llvm/14/openmp/gnu-install-dirs.patch
@@ -1,17 +1,7 @@
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 7f11a05f5622..fb90f8f6a49b 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -8,6 +8,8 @@ if (OPENMP_STANDALONE_BUILD OR "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_S
-   set(OPENMP_STANDALONE_BUILD TRUE)
-   project(openmp C CXX)
- 
-+  include(GNUInstallDirs)
-+
-   # CMAKE_BUILD_TYPE was not set, default to Release.
-   if (NOT CMAKE_BUILD_TYPE)
-     set(CMAKE_BUILD_TYPE Release)
-@@ -19,7 +21,7 @@ if (OPENMP_STANDALONE_BUILD OR "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_S
+@@ -24,7 +24,7 @@ if (OPENMP_STANDALONE_BUILD)
    set(OPENMP_LIBDIR_SUFFIX "" CACHE STRING
      "Suffix of lib installation directory, e.g. 64 => lib64")
    # Do not use OPENMP_LIBDIR_SUFFIX directly, use OPENMP_INSTALL_LIBDIR.
@@ -20,7 +10,7 @@ index 7f11a05f5622..fb90f8f6a49b 100644
  
    # Group test settings.
    set(OPENMP_TEST_C_COMPILER ${CMAKE_C_COMPILER} CACHE STRING
-@@ -30,7 +32,7 @@ if (OPENMP_STANDALONE_BUILD OR "${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_S
+@@ -35,7 +35,7 @@ if (OPENMP_STANDALONE_BUILD)
  else()
    set(OPENMP_ENABLE_WERROR ${LLVM_ENABLE_WERROR})
    # If building in tree, we honor the same install suffix LLVM uses.
@@ -29,10 +19,10 @@ index 7f11a05f5622..fb90f8f6a49b 100644
  
    if (NOT MSVC)
      set(OPENMP_TEST_C_COMPILER ${LLVM_RUNTIME_OUTPUT_INTDIR}/clang)
-index 0e1ce2afd154..8b3810f83713 100644
+diff --git a/libomptarget/plugins/amdgpu/CMakeLists.txt b/libomptarget/plugins/amdgpu/CMakeLists.txt
 --- a/libomptarget/plugins/amdgpu/CMakeLists.txt
 +++ b/libomptarget/plugins/amdgpu/CMakeLists.txt
-@@ -80,7 +80,7 @@ add_library(omptarget.rtl.amdgpu SHARED
+@@ -74,7 +74,7 @@ add_library(omptarget.rtl.amdgpu SHARED
  
  # Install plugin under the lib destination folder.
  # When we build for debug, OPENMP_LIBDIR_SUFFIX get set to -debug
@@ -42,7 +32,6 @@ index 0e1ce2afd154..8b3810f83713 100644
  
  if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
 diff --git a/libomptarget/plugins/ve/CMakeLists.txt b/libomptarget/plugins/ve/CMakeLists.txt
-index 16ce0891ca23..db30ee9c769f 100644
 --- a/libomptarget/plugins/ve/CMakeLists.txt
 +++ b/libomptarget/plugins/ve/CMakeLists.txt
 @@ -32,7 +32,7 @@ if(${LIBOMPTARGET_DEP_VEO_FOUND})
@@ -54,36 +43,3 @@ index 16ce0891ca23..db30ee9c769f 100644
  
    target_link_libraries(
      "omptarget.rtl.${tmachine_libname}"
-diff --git a/runtime/src/CMakeLists.txt b/runtime/src/CMakeLists.txt
-index e4f4e6e1e73f..1164b3b22b0e 100644
---- a/runtime/src/CMakeLists.txt
-+++ b/runtime/src/CMakeLists.txt
-@@ -346,13 +346,13 @@ add_dependencies(libomp-micro-tests libomp-test-deps)
- # We want to install libomp in DESTDIR/CMAKE_INSTALL_PREFIX/lib
- # We want to install headers in DESTDIR/CMAKE_INSTALL_PREFIX/include
- if(${OPENMP_STANDALONE_BUILD})
--  set(LIBOMP_HEADERS_INSTALL_PATH include)
-+  set(LIBOMP_HEADERS_INSTALL_PATH "${CMAKE_INSTALL_INCLUDEDIR}")
- else()
-   string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION ${PACKAGE_VERSION})
-   set(LIBOMP_HEADERS_INSTALL_PATH "${OPENMP_INSTALL_LIBDIR}/clang/${CLANG_VERSION}/include")
- endif()
- if(WIN32)
--  install(TARGETS omp RUNTIME DESTINATION bin)
-+  install(TARGETS omp RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
-   install(TARGETS ${LIBOMP_IMP_LIB_TARGET} ARCHIVE DESTINATION "${OPENMP_INSTALL_LIBDIR}")
-   # Create aliases (regular copies) of the library for backwards compatibility
-   set(LIBOMP_ALIASES "libiomp5md")
-diff --git a/tools/multiplex/CMakeLists.txt b/tools/multiplex/CMakeLists.txt
-index 64317c112176..4002784da736 100644
---- a/tools/multiplex/CMakeLists.txt
-+++ b/tools/multiplex/CMakeLists.txt
-@@ -4,7 +4,7 @@ if(LIBOMP_OMPT_SUPPORT)
-   add_library(ompt-multiplex INTERFACE)
-   target_include_directories(ompt-multiplex INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
- 
--  install(FILES ompt-multiplex.h DESTINATION include)
-+  install(FILES ompt-multiplex.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
- 
-   add_subdirectory(tests)
- endif()
diff --git a/nixpkgs/pkgs/development/compilers/llvm/14/openmp/run-lit-directly.patch b/nixpkgs/pkgs/development/compilers/llvm/14/openmp/run-lit-directly.patch
new file mode 100644
index 000000000000..1e952fdc36a8
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/llvm/14/openmp/run-lit-directly.patch
@@ -0,0 +1,12 @@
+diff --git a/cmake/OpenMPTesting.cmake b/cmake/OpenMPTesting.cmake
+--- a/cmake/OpenMPTesting.cmake
++++ b/cmake/OpenMPTesting.cmake
+@@ -185,7 +185,7 @@ function(add_openmp_testsuite target comment)
+   if (${OPENMP_STANDALONE_BUILD})
+     set(LIT_ARGS ${OPENMP_LIT_ARGS} ${ARG_ARGS})
+     add_custom_target(${target}
+-      COMMAND ${PYTHON_EXECUTABLE} ${OPENMP_LLVM_LIT_EXECUTABLE} ${LIT_ARGS} ${ARG_UNPARSED_ARGUMENTS}
++      COMMAND ${OPENMP_LLVM_LIT_EXECUTABLE} ${LIT_ARGS} ${ARG_UNPARSED_ARGUMENTS}
+       COMMENT ${comment}
+       DEPENDS ${ARG_DEPENDS}
+       USES_TERMINAL
diff --git a/nixpkgs/pkgs/development/compilers/llvm/5/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/5/lld/default.nix
index 7e74e79a15c7..239cb84c2ceb 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/5/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/5/lld/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   meta = llvm_meta // {
     homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker";
+    description = "The LLVM linker (unwrapped)";
     longDescription = ''
       LLD is a linker from the LLVM project that is a drop-in replacement for
       system linkers and runs much faster than them. It also provides features
diff --git a/nixpkgs/pkgs/development/compilers/llvm/6/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/6/lld/default.nix
index 83b1991f453c..81dd39c39eb8 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/6/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/6/lld/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = llvm_meta // {
     homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker";
+    description = "The LLVM linker (unwrapped)";
     longDescription = ''
       LLD is a linker from the LLVM project that is a drop-in replacement for
       system linkers and runs much faster than them. It also provides features
diff --git a/nixpkgs/pkgs/development/compilers/llvm/7/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/7/lld/default.nix
index 09a0a68e2572..7858599990ca 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/7/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/7/lld/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = llvm_meta // {
     homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker";
+    description = "The LLVM linker (unwrapped)";
     longDescription = ''
       LLD is a linker from the LLVM project that is a drop-in replacement for
       system linkers and runs much faster than them. It also provides features
diff --git a/nixpkgs/pkgs/development/compilers/llvm/8/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/8/lld/default.nix
index 66b59937e5f1..30be084fa814 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/8/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/8/lld/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = llvm_meta // {
     homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker";
+    description = "The LLVM linker (unwrapped)";
     longDescription = ''
       LLD is a linker from the LLVM project that is a drop-in replacement for
       system linkers and runs much faster than them. It also provides features
diff --git a/nixpkgs/pkgs/development/compilers/llvm/9/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/9/lld/default.nix
index d13e6a107dd9..73cfe630bbbb 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/9/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/9/lld/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = llvm_meta // {
     homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker";
+    description = "The LLVM linker (unwrapped)";
     longDescription = ''
       LLD is a linker from the LLVM project that is a drop-in replacement for
       system linkers and runs much faster than them. It also provides features
diff --git a/nixpkgs/pkgs/development/compilers/llvm/git/lld/default.nix b/nixpkgs/pkgs/development/compilers/llvm/git/lld/default.nix
index fe655c761129..1ae6d4ea6fce 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/git/lld/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/git/lld/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
 
   meta = llvm_meta // {
     homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker";
+    description = "The LLVM linker (unwrapped)";
     longDescription = ''
       LLD is a linker from the LLVM project that is a drop-in replacement for
       system linkers and runs much faster than them. It also provides features
diff --git a/nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/68d5235cb58f988c71b403334cd9482d663841ab.patch b/nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/68d5235cb58f988c71b403334cd9482d663841ab.patch
deleted file mode 100644
index 43803164a00f..000000000000
--- a/nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/68d5235cb58f988c71b403334cd9482d663841ab.patch
+++ /dev/null
@@ -1,78 +0,0 @@
---- a/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
-+++ b/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
-@@ -370,15 +370,6 @@
- 
- #if SANITIZER_GLIBC
-   // _(SIOCDEVPLIP, WRITE, struct_ifreq_sz); // the same as EQL_ENSLAVE
--  _(CYGETDEFTHRESH, WRITE, sizeof(int));
--  _(CYGETDEFTIMEOUT, WRITE, sizeof(int));
--  _(CYGETMON, WRITE, struct_cyclades_monitor_sz);
--  _(CYGETTHRESH, WRITE, sizeof(int));
--  _(CYGETTIMEOUT, WRITE, sizeof(int));
--  _(CYSETDEFTHRESH, NONE, 0);
--  _(CYSETDEFTIMEOUT, NONE, 0);
--  _(CYSETTHRESH, NONE, 0);
--  _(CYSETTIMEOUT, NONE, 0);
-   _(EQL_EMANCIPATE, WRITE, struct_ifreq_sz);
-   _(EQL_ENSLAVE, WRITE, struct_ifreq_sz);
-   _(EQL_GETMASTRCFG, WRITE, struct_ifreq_sz);
---- a/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp
-+++ b/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp
-@@ -143,7 +143,6 @@
- # include <sys/procfs.h>
- #endif
- #include <sys/user.h>
--#include <linux/cyclades.h>
- #include <linux/if_eql.h>
- #include <linux/if_plip.h>
- #include <linux/lp.h>
-@@ -460,7 +459,6 @@
- 
- #if SANITIZER_GLIBC
-   unsigned struct_ax25_parms_struct_sz = sizeof(struct ax25_parms_struct);
--  unsigned struct_cyclades_monitor_sz = sizeof(struct cyclades_monitor);
- #if EV_VERSION > (0x010000)
-   unsigned struct_input_keymap_entry_sz = sizeof(struct input_keymap_entry);
- #else
-@@ -824,15 +822,6 @@
- #endif // SANITIZER_LINUX
- 
- #if SANITIZER_LINUX && !SANITIZER_ANDROID
--  unsigned IOCTL_CYGETDEFTHRESH = CYGETDEFTHRESH;
--  unsigned IOCTL_CYGETDEFTIMEOUT = CYGETDEFTIMEOUT;
--  unsigned IOCTL_CYGETMON = CYGETMON;
--  unsigned IOCTL_CYGETTHRESH = CYGETTHRESH;
--  unsigned IOCTL_CYGETTIMEOUT = CYGETTIMEOUT;
--  unsigned IOCTL_CYSETDEFTHRESH = CYSETDEFTHRESH;
--  unsigned IOCTL_CYSETDEFTIMEOUT = CYSETDEFTIMEOUT;
--  unsigned IOCTL_CYSETTHRESH = CYSETTHRESH;
--  unsigned IOCTL_CYSETTIMEOUT = CYSETTIMEOUT;
-   unsigned IOCTL_EQL_EMANCIPATE = EQL_EMANCIPATE;
-   unsigned IOCTL_EQL_ENSLAVE = EQL_ENSLAVE;
-   unsigned IOCTL_EQL_GETMASTRCFG = EQL_GETMASTRCFG;
---- a/lib/sanitizer_common/sanitizer_platform_limits_posix.h
-+++ b/lib/sanitizer_common/sanitizer_platform_limits_posix.h
-@@ -983,7 +983,6 @@
- 
- #if SANITIZER_LINUX && !SANITIZER_ANDROID
- extern unsigned struct_ax25_parms_struct_sz;
--extern unsigned struct_cyclades_monitor_sz;
- extern unsigned struct_input_keymap_entry_sz;
- extern unsigned struct_ipx_config_data_sz;
- extern unsigned struct_kbdiacrs_sz;
-@@ -1328,15 +1327,6 @@
- #endif  // SANITIZER_LINUX
- 
- #if SANITIZER_LINUX && !SANITIZER_ANDROID
--extern unsigned IOCTL_CYGETDEFTHRESH;
--extern unsigned IOCTL_CYGETDEFTIMEOUT;
--extern unsigned IOCTL_CYGETMON;
--extern unsigned IOCTL_CYGETTHRESH;
--extern unsigned IOCTL_CYGETTIMEOUT;
--extern unsigned IOCTL_CYSETDEFTHRESH;
--extern unsigned IOCTL_CYSETDEFTIMEOUT;
--extern unsigned IOCTL_CYSETTHRESH;
--extern unsigned IOCTL_CYSETTIMEOUT;
- extern unsigned IOCTL_EQL_EMANCIPATE;
- extern unsigned IOCTL_EQL_ENSLAVE;
- extern unsigned IOCTL_EQL_GETMASTRCFG;
diff --git a/nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/compiler-rt-codesign.patch b/nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/compiler-rt-codesign.patch
deleted file mode 100644
index 3cc12b94b200..000000000000
--- a/nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/compiler-rt-codesign.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 3dec5f3475a26aeb4678627795c4b67c6b7b4785 Mon Sep 17 00:00:00 2001
-From: Will Dietz <w@wdtz.org>
-Date: Tue, 19 Sep 2017 13:13:06 -0500
-Subject: [PATCH] remove codesign use on Apple, disable ios sim testing that
- needs it
-
----
- cmake/Modules/AddCompilerRT.cmake |  8 ------
- test/asan/CMakeLists.txt          | 52 ---------------------------------------
- test/tsan/CMakeLists.txt          | 47 -----------------------------------
- 3 files changed, 107 deletions(-)
-
-diff --git a/cmake/Modules/AddCompilerRT.cmake b/cmake/Modules/AddCompilerRT.cmake
-index bc5fb9ff7..b64eb4246 100644
---- a/cmake/Modules/AddCompilerRT.cmake
-+++ b/cmake/Modules/AddCompilerRT.cmake
-@@ -210,14 +210,6 @@ function(add_compiler_rt_runtime name type)
-         set_target_properties(${libname} PROPERTIES IMPORT_PREFIX "")
-         set_target_properties(${libname} PROPERTIES IMPORT_SUFFIX ".lib")
-       endif()
--      if(APPLE)
--        # Ad-hoc sign the dylibs
--        add_custom_command(TARGET ${libname}
--          POST_BUILD  
--          COMMAND codesign --sign - $<TARGET_FILE:${libname}>
--          WORKING_DIRECTORY ${COMPILER_RT_LIBRARY_OUTPUT_DIR}
--        )
--      endif()
-     endif()
-     install(TARGETS ${libname}
-       ARCHIVE DESTINATION ${COMPILER_RT_LIBRARY_INSTALL_DIR}
-2.14.1
-
diff --git a/nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/default.nix b/nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/default.nix
index 575082905fed..dfc21e7fe013 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/rocm/compiler-rt/default.nix
@@ -29,12 +29,9 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" ];
 
-  patches = [
-    ./compiler-rt-codesign.patch # Revert compiler-rt commit that makes codesign mandatory
-    # https://github.com/llvm/llvm-project/commit/68d5235cb58f988c71b403334cd9482d663841ab.diff but the compiler-rt part of the path is stripped
-    ./68d5235cb58f988c71b403334cd9482d663841ab.patch
-    ];
-
+  prePatch = ''
+    cd compiler-rt
+  '';
 
   # TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks
   # to get it, but they're unfree. Since LLVM is rather central to the stdenv, we patch out TSAN support so that Hydra
diff --git a/nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix
index b1297d7d0d1f..18fd44612f10 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/rocm/default.nix
@@ -1,12 +1,12 @@
 { stdenv, lib, buildPackages, fetchFromGitHub, callPackage, wrapCCWith, overrideCC }:
 
 let
-  version = "4.5.2";
+  version = "5.0.2";
   src = fetchFromGitHub {
     owner = "RadeonOpenCompute";
     repo = "llvm-project";
     rev = "rocm-${version}";
-    hash = "sha256-XWh81+2yyXQEPO+5SgxHh66fzFG1bVbvnjPfvXDC+fU=";
+    hash = "sha256-wPzwbeQUFE6RAytrz5lBa6UUPoVL0UeMyY3qa4M6W6M=";
   };
 in rec {
   clang = wrapCCWith rec {
@@ -47,7 +47,7 @@ in rec {
 
   compiler-rt = callPackage ./compiler-rt {
     inherit version llvm;
-    src = "${src}/compiler-rt";
+    inherit src;
     stdenv = overrideCC stdenv clangNoCompilerRt;
   };
 
diff --git a/nixpkgs/pkgs/development/compilers/llvm/rocm/llvm/default.nix b/nixpkgs/pkgs/development/compilers/llvm/rocm/llvm/default.nix
index 724fd6b63f76..722ca1a762a8 100644
--- a/nixpkgs/pkgs/development/compilers/llvm/rocm/llvm/default.nix
+++ b/nixpkgs/pkgs/development/compilers/llvm/rocm/llvm/default.nix
@@ -12,7 +12,7 @@
 , zlib
 , debugVersion ? false
 , enableManpages ? false
-, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
+, enableSharedLibraries ? false
 
 , version
 , src
@@ -60,6 +60,8 @@ in stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
+    patchShebangs lib/OffloadArch/make_generated_offload_arch_h.sh
+  '' + lib.optionalString enableSharedLibraries ''
     substitute '${./outputs.patch}' ./outputs.patch --subst-var lib
     patch -p1 < ./outputs.patch
   '';
diff --git a/nixpkgs/pkgs/development/compilers/nim/default.nix b/nixpkgs/pkgs/development/compilers/nim/default.nix
index 4f3b200477f0..4b0e6e618e3a 100644
--- a/nixpkgs/pkgs/development/compilers/nim/default.nix
+++ b/nixpkgs/pkgs/development/compilers/nim/default.nix
@@ -78,11 +78,11 @@ let
     pname = "nim-bootstrap";
     version = "g${lib.substring 0 7 revision}";
 
-    src = fetchgit {
-      # A Git checkout is much smaller than a GitHub tarball.
-      url = "https://github.com/nim-lang/csources_v1.git";
+    src = fetchFromGitHub {
+      owner = "nim-lang";
+      repo = "csources_v1";
       rev = revision;
-      sha256 = "1c2k681knrha1zmf4abhb32i2wwd3nwflzylnqryxk753swla043";
+      sha256 = "sha256-gwBFuR7lzO4zttR/6rgdjXMRxVhwKeLqDwpmOwMyU7A=";
     };
 
     enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/development/compilers/ocaml/4.14.nix b/nixpkgs/pkgs/development/compilers/ocaml/4.14.nix
index 96e1c13d285b..558a1491ca7f 100644
--- a/nixpkgs/pkgs/development/compilers/ocaml/4.14.nix
+++ b/nixpkgs/pkgs/development/compilers/ocaml/4.14.nix
@@ -1,9 +1,9 @@
 import ./generic.nix {
   major_version = "4";
   minor_version = "14";
-  patch_version = "0-beta1";
+  patch_version = "0-rc2";
   src = fetchTarball {
-    url = "https://caml.inria.fr/pub/distrib/ocaml-4.14/ocaml-4.14.0~beta1.tar.xz";
-    sha256 = "0jiz20hb58jbbk8j38agx11ra4hg0v3prmzc5a9j70lm09mnzfcd";
+    url = "https://caml.inria.fr/pub/distrib/ocaml-4.14/ocaml-4.14.0~rc2.tar.xz";
+    sha256 = "sha256:0ch8nyfk2mzwhmlxb434cyamp7n14zxhwsq1h8033g629kw50kb0";
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/open-watcom/v2.nix b/nixpkgs/pkgs/development/compilers/open-watcom/v2.nix
index b521aaef106b..dc2af6e7835d 100644
--- a/nixpkgs/pkgs/development/compilers/open-watcom/v2.nix
+++ b/nixpkgs/pkgs/development/compilers/open-watcom/v2.nix
@@ -12,14 +12,14 @@
 
 stdenv.mkDerivation rec {
   pname = "open-watcom-v2";
-  version = "unstable-2022-02-22";
+  version = "unstable-2022-03-14";
   name = "${pname}-unwrapped-${version}";
 
   src = fetchFromGitHub {
     owner = "open-watcom";
     repo = "open-watcom-v2";
-    rev = "9e25b3d6b8066f09b4f7131a31de1cf2af691e9a";
-    sha256 = "1w336070kmhc6cmn2aqr8vm0fmw3yza2n0w4asvs2kqxjgmbn6i2";
+    rev = "22627ccc1bd3de70aff9ac056e0dc9ecf7f7b6ec";
+    sha256 = "khy/fhmQjTGKfx6iOUBt+ySwpEx0df/7meyNvBnJAPY=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/compilers/opendylan/default.nix b/nixpkgs/pkgs/development/compilers/opendylan/default.nix
index 1ffc85a6ada5..f9ab0714b470 100644
--- a/nixpkgs/pkgs/development/compilers/opendylan/default.nix
+++ b/nixpkgs/pkgs/development/compilers/opendylan/default.nix
@@ -1,14 +1,15 @@
 # Build Open Dylan from source using the binary builds to bootstrap.
-{lib, stdenv, fetchgit, boehmgc, mps, gnused, opendylan-bootstrap, autoconf, automake, perl, makeWrapper, gcc }:
+{lib, stdenv, fetchFromGitHub, boehmgc, mps, gnused, opendylan-bootstrap, autoconf, automake, perl, makeWrapper, gcc }:
 
 stdenv.mkDerivation {
   pname = "opendylan";
   version = "2016.1pre";
 
-  src = fetchgit {
-    url = "https://github.com/dylan-lang/opendylan";
+  src = fetchFromGitHub {
+    owner = "dylan-lang";
+    repo = "opendylan";
     rev = "cd9a8395586d33cc43a8611c1dc0513e69ee82dd";
-    sha256 = "00r1dm7mjy5p4hfm13vc4b6qryap40zinia3y15rhvalc3i2np4b";
+    sha256 = "sha256-i1wr4mBUbZhL8ENFGz8gV/mMzSJsj1AdJLd4WU9tIQM=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/development/compilers/openjdk/8.nix b/nixpkgs/pkgs/development/compilers/openjdk/8.nix
index 8d68c2a6010e..dae405ff3b2f 100644
--- a/nixpkgs/pkgs/development/compilers/openjdk/8.nix
+++ b/nixpkgs/pkgs/development/compilers/openjdk/8.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, pkg-config, lndir, bash, cpio, file, which, unzip, zip
+{ stdenv, lib, fetchFromGitHub, pkg-config, lndir, bash, cpio, file, which, unzip, zip
 , cups, freetype, alsa-lib, cacert, perl, liberation_ttf, fontconfig, zlib
 , libX11, libICE, libXrender, libXext, libXt, libXtst, libXi, libXinerama, libXcursor, libXrandr
 , libjpeg, giflib
@@ -19,68 +19,19 @@ let
     aarch64-linux = "aarch64";
   }.${stdenv.system} or (throw "Unsupported platform");
 
-  update = "272";
-  build = if stdenv.isAarch64 then "b10" else "b10";
-  baseurl = if stdenv.isAarch64 then "https://hg.openjdk.java.net/aarch64-port/jdk8u-shenandoah"
-            else "https://hg.openjdk.java.net/jdk8u/jdk8u";
-  repover = lib.optionalString stdenv.isAarch64 "aarch64-shenandoah-"
-            + "jdk8u${update}-${build}";
-
-  jdk8 = fetchurl {
-             name = "jdk8-${repover}.tar.gz";
-             url = "${baseurl}/archive/${repover}.tar.gz";
-             sha256 = if stdenv.isAarch64 then "db98897d6fddce85996a9b0daf4352abce4578be0b51eada41702ee1469dd415"
-                      else "8f0e8324d3500432e8ed642b4cc7dff90a617dbb2a18a94c07c1020d32f93b7a";
-          };
-  langtools = fetchurl {
-             name = "langtools-${repover}.tar.gz";
-             url = "${baseurl}/langtools/archive/${repover}.tar.gz";
-             sha256 = if stdenv.isAarch64 then "6544c1cc455844bbbb3d2914ffc716b1cee7f19e6aa223764d41a7cddc41322c"
-                      else "632417b0b067c929eda6958341352e29c5810056a5fec138641eb3503f9635b7";
-          };
-  hotspot = fetchurl {
-             name = "hotspot-${repover}.tar.gz";
-             url = "${baseurl}/hotspot/archive/${repover}.tar.gz";
-             sha256 = if stdenv.isAarch64 then "37abb89e66641607dc6f372946bfc6bd413f23fec0b9c3baf75f41ce517e21d8"
-                      else "2142f3b769800a955613b51ffe192551bab1db95b0c219900cf34febc6f20245";
-          };
-  corba = fetchurl {
-             name = "corba-${repover}.tar.gz";
-             url = "${baseurl}/corba/archive/${repover}.tar.gz";
-             sha256 = if stdenv.isAarch64 then "5da82f7b4aceff32e02d2f559033e3b62b9509d79f1a6891af871502e1d125b1"
-                      else "320098d64c843c1ff2ae62579817f9fb4a81772bc0313a543ce68976ad7a6d98";
-          };
-  jdk = fetchurl {
-             name = "jdk-${repover}.tar.gz";
-             url = "${baseurl}/jdk/archive/${repover}.tar.gz";
-             sha256 = if stdenv.isAarch64 then "ee613296d823605dcd1a0fe2f89b4c7393bdb8ae5f2659f48f5cbc0012bb1a47"
-                      else "957c24fc58ac723c8cd808ab60c77d7853710148944c8b9a59f470c4c809e1a0";
-          };
-  jaxws = fetchurl {
-             name = "jaxws-${repover}.tar.gz";
-             url = "${baseurl}/jaxws/archive/${repover}.tar.gz";
-             sha256 = if stdenv.isAarch64 then "7c426b85f0d378125fa46e6d1b25ddc27ad29d93514d38c5935c84fc540b26ce"
-                      else "4efb0ee143dfe86c8ee06db2429fb81a0c8c65af9ea8fc18daa05148c8a1162f";
-          };
-  jaxp = fetchurl {
-             name = "jaxp-${repover}.tar.gz";
-             url = "${baseurl}/jaxp/archive/${repover}.tar.gz";
-             sha256 = if stdenv.isAarch64 then "928e363877afa7e0ad0c350bb18be6ab056b23708c0624a0bd7f01c4106c2a14"
-                      else "25a651c670d5b036042f7244617a3eb11fec80c07745c1c8181a1cdebeda3d8e";
-          };
-  nashorn = fetchurl {
-             name = "nashorn-${repover}.tar.gz";
-             url = "${baseurl}/nashorn/archive/${repover}.tar.gz";
-             sha256 = if stdenv.isAarch64 then "f060e08c5924457d4f5047c02ad6a987bdbdcd1cea53d2208322073ba4f398c3"
-                      else "a28b41d86f0c87ceacd2b686dd31c9bf391d851b1b5187a49ef5e565fc2cbc84";
-          };
-  openjdk8 = stdenv.mkDerivation {
+  update = "322";
+  build = "ga";
+
+  openjdk8 = stdenv.mkDerivation rec {
     pname = "openjdk" + lib.optionalString headless "-headless";
     version = "8u${update}-${build}";
 
-    srcs = [ jdk8 langtools hotspot corba jdk jaxws jaxp nashorn ];
-    sourceRoot = ".";
-
+    src = fetchFromGitHub {
+      owner = "openjdk";
+      repo = "jdk8u";
+      rev = "jdk${version}";
+      sha256 = "sha256-e39Yv+NDQG7z6fGmpKEnkKd5MoHZ50SXlq/Q7lzWcDA=";
+    };
     outputs = [ "out" "jre" ];
 
     nativeBuildInputs = [ pkg-config lndir unzip ];
@@ -92,16 +43,6 @@ let
       gtk2 gnome_vfs GConf glib
     ];
 
-    # move the seven other source dirs under the main jdk8u directory,
-    # with version suffixes removed, as the remainder of the build will expect
-    prePatch = ''
-      mainDir=$(find . -maxdepth 1 -name jdk8u\*);
-      find . -maxdepth 1 -name \*jdk\* -not -name jdk8u\* | awk -F- '{print $1}' | while read p; do
-        mv $p-* $mainDir/$p
-      done
-      cd $mainDir
-    '';
-
     patches = [
       ./fix-java-home-jdk8.patch
       ./read-truststore-from-env-jdk8.patch
diff --git a/nixpkgs/pkgs/development/compilers/qbe/default.nix b/nixpkgs/pkgs/development/compilers/qbe/default.nix
index 52397f78b8a0..80182fc9de65 100644
--- a/nixpkgs/pkgs/development/compilers/qbe/default.nix
+++ b/nixpkgs/pkgs/development/compilers/qbe/default.nix
@@ -6,12 +6,12 @@
 
 stdenv.mkDerivation rec {
   pname = "qbe";
-  version = "unstable-2021-12-05";
+  version = "unstable-2022-03-17";
 
   src = fetchgit {
     url = "git://c9x.me/qbe.git";
-    rev = "367c8215d99054892740ad74c690b106c45ebf60";
-    sha256 = "sha256-xhTEiFR1RXMHtxmXlRof3O8monXEjstyWP3GClZmMuU=";
+    rev = "c6b41eb8c8cece8266b2173a83216e1ce77eb2be";
+    sha256 = "sha256-vpNZNED+C9VMzWyyyntQuBgTvbpZpJ/EwOztdOEP7vI=";
   };
 
   makeFlags = [ "PREFIX=$(out)" ];
diff --git a/nixpkgs/pkgs/development/compilers/rust/print-hashes.sh b/nixpkgs/pkgs/development/compilers/rust/print-hashes.sh
index ebf8d900bb3b..dd2c116a341b 100755
--- a/nixpkgs/pkgs/development/compilers/rust/print-hashes.sh
+++ b/nixpkgs/pkgs/development/compilers/rust/print-hashes.sh
@@ -19,6 +19,7 @@ PLATFORMS=(
   aarch64-apple-darwin
   powerpc64le-unknown-linux-gnu
   riscv64gc-unknown-linux-gnu
+  mips64el-unknown-linux-gnuabi64
 )
 BASEURL=https://static.rust-lang.org/dist
 VERSION=${1:-}
diff --git a/nixpkgs/pkgs/development/compilers/solc/default.nix b/nixpkgs/pkgs/development/compilers/solc/default.nix
index eea60786f4af..06aa048a260d 100644
--- a/nixpkgs/pkgs/development/compilers/solc/default.nix
+++ b/nixpkgs/pkgs/development/compilers/solc/default.nix
@@ -34,14 +34,21 @@ let
     sha256 = "18230bg4rq9pmm5f8f65j444jpq56rld4fhmpham8q3vr1c1bdjh";
   };
 
+  fmtlibVersion = "8.0.1";
+  fmtlibUrl = "https://github.com/fmtlib/fmt/archive/${fmtlibVersion}.tar.gz";
+  fmtlib = fetchzip {
+    url = fmtlibUrl;
+    sha256 = "1mnvxqsan034d2jiqnw2yvkljl7lwvhakmj5bscwp1fpkn655bbw";
+  };
+
   solc = gccStdenv.mkDerivation rec {
     pname = "solc";
-    version = "0.8.2";
+    version = "0.8.13";
 
     # upstream suggests avoid using archive generated by github
     src = fetchzip {
       url = "https://github.com/ethereum/solidity/releases/download/v${version}/solidity_${version}.tar.gz";
-      sha256 = "11w7sa1y2dirzh84k04fkwbfc6xpjp5jr65w1pmb2pnkjvvf46xq";
+      hash = "sha256-cFC9M65kSYgYq9rhBXZKEdfvIMbMaDiDwdPmU8v9s7k=";
     };
 
     postPatch = ''
@@ -49,6 +56,8 @@ let
         --replace "${jsoncppUrl}" ${jsoncpp}
       substituteInPlace cmake/range-v3.cmake \
         --replace "${range3Url}" ${range3}
+      substituteInPlace cmake/fmtlib.cmake \
+        --replace "${fmtlibUrl}" ${fmtlib}
     '';
 
     cmakeFlags = [
diff --git a/nixpkgs/pkgs/development/compilers/souffle/default.nix b/nixpkgs/pkgs/development/compilers/souffle/default.nix
index dada4dfe9e81..df8ad5d360e2 100644
--- a/nixpkgs/pkgs/development/compilers/souffle/default.nix
+++ b/nixpkgs/pkgs/development/compilers/souffle/default.nix
@@ -1,6 +1,6 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch
-, perl, ncurses, zlib, sqlite, libffi
-, autoreconfHook, mcpp, bison, flex, doxygen, graphviz
+{ lib, stdenv, fetchFromGitHub
+, bash-completion, perl, ncurses, zlib, sqlite, libffi
+, mcpp, cmake, bison, flex, doxygen, graphviz
 , makeWrapper
 }:
 
@@ -10,42 +10,23 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "souffle";
-  version = "2.0.2";
+  version = "2.2";
 
   src = fetchFromGitHub {
     owner  = "souffle-lang";
     repo   = "souffle";
     rev    = version;
-    sha256 = "1fa6yssgndrln8qbbw2j7j199glxp63irfrz1c2y424rq82mm2r5";
+    sha256 = "sha256-whvC+DL9XbQLc4wf2kFxUKXSyJnGkYq0/0uLCLbliJU=";
   };
 
-  patches = [
-    # Pull pending unstream inclusion fix for ncurses-6.3:
-    #  https://github.com/souffle-lang/souffle/pull/2134
-    (fetchpatch {
-      name = "ncurses-6.3.patch";
-      url = "https://github.com/souffle-lang/souffle/commit/9e4bdf86d051ef2e1b1a1be64aff7e498fd5dd20.patch";
-      sha256 = "0jw1b6qfdf49dx2qlzn1b2yzrgpnkil4w9y3as1m28w8ws7iphpa";
-    })
-  ];
-
-  nativeBuildInputs = [ autoreconfHook bison flex mcpp doxygen graphviz makeWrapper perl ];
-  buildInputs = [ ncurses zlib sqlite libffi ];
-
+  nativeBuildInputs = [ bison cmake flex mcpp doxygen graphviz makeWrapper perl ];
+  buildInputs = [ bash-completion ncurses zlib sqlite libffi ];
   # these propagated inputs are needed for the compiled Souffle mode to work,
   # since generated compiler code uses them. TODO: maybe write a g++ wrapper
   # that adds these so we can keep the propagated inputs clean?
   propagatedBuildInputs = [ ncurses zlib sqlite libffi ];
 
-  # see 565a8e73e80a1bedbb6cc037209c39d631fc393f and parent commits upstream for
-  # Wno-error fixes
-  postPatch = ''
-    substituteInPlace ./src/Makefile.am \
-      --replace '-Werror' '-Werror -Wno-error=deprecated -Wno-error=other'
-
-    substituteInPlace configure.ac \
-      --replace "m4_esyscmd([git describe --tags --always | tr -d '\n'])" "${version}"
-  '';
+  cmakeFlags = [ "-DSOUFFLE_GIT=OFF" ];
 
   postInstall = ''
     wrapProgram "$out/bin/souffle" --prefix PATH : "${toolsPath}"
diff --git a/nixpkgs/pkgs/development/compilers/squeak/default.nix b/nixpkgs/pkgs/development/compilers/squeak/default.nix
index 7d531181d1d0..158c2639f112 100644
--- a/nixpkgs/pkgs/development/compilers/squeak/default.nix
+++ b/nixpkgs/pkgs/development/compilers/squeak/default.nix
@@ -1,45 +1,197 @@
-{ lib, stdenv, fetchurl, cmake, coreutils, dbus, freetype, glib, gnused
-, libpthreadstubs, pango, pkg-config, libpulseaudio, which }:
+{ lib, stdenv, fetchFromGitHub, fetchurl, fetchzip
+, autoconf, automake, autoreconfHook, bash, clang, dos2unix, file, gzip, perl
+, pkg-config
+, alsa-lib, coreutils, freetype, glib, glibc, gnugrep, libpulseaudio, libtool
+, libuuid, openssl, pango, xorg
+, squeakImageHash ? null, squeakSourcesHash ? null, squeakSourcesVersion ? null
+, squeakVersion ? null, squeakVmCommitHash ? null, squeakVmCommitHashHash ? null
+, squeakVmVersion ? null
+} @ args:
 
-stdenv.mkDerivation rec {
+let
+  inherit (builtins) elemAt;
+  nullableOr = o: default: if o == null then default else o;
+
+  bits = stdenv.hostPlatform.parsed.cpu.bits;
+
+  squeakVersion = nullableOr args.squeakVersion or null "5.3-19459";
+  squeakVersionSplit = builtins.split "-" squeakVersion;
+  squeakVersionBase = elemAt squeakVersionSplit 0;
+  squeakVersionBaseSplit = lib.splitVersion squeakVersionBase;
+  squeakVersionMajor = elemAt squeakVersionBaseSplit 0;
+  squeakVersionMinor = elemAt squeakVersionBaseSplit 1;
+
+  squeakImageVersion = elemAt squeakVersionSplit 2;
+
+  squeakSourcesVersion = nullableOr args.squeakSourcesVersion or null "50";
+
+  squeakVmVersion = nullableOr args.squeakVmVersion or null "5.0-202003021730";
+  squeakVmVersionSplit = builtins.split "-" squeakVmVersion;
+  squeakVmVersionBase = elemAt squeakVmVersionSplit 0;
+  squeakVmVersionBaseSplit = lib.splitVersion squeakVmVersionBase;
+  squeakVmVersionMajor = elemAt squeakVmVersionBaseSplit 0;
+  squeakVmVersionMinor = elemAt squeakVmVersionBaseSplit 1;
+  squeakVmVersionRelease = elemAt squeakVmVersionSplit 2;
+
+  squeakVmCommitHash = nullableOr args.squeakVmCommitHash or null (fetchurl {
+    url = "https://api.github.com/repos/OpenSmalltalk/opensmalltalk-vm/commits/${squeakVmVersionRelease}";
+    curlOpts = "--header Accept:application/vnd.github.v3.sha";
+    hash = nullableOr args.squeakVmCommitHashHash or null
+      "sha256-quwmhpJlb2fp0fI9b03fBxSR44j1xmHPW20wkSqTOhQ=";
+  });
+in stdenv.mkDerivation {
   pname = "squeak";
-  version = "4.10.2.2614";
+  version = squeakVersion;
 
-  src = fetchurl {
-    sha256 = "0bpwbnpy2sb4gylchfx50sha70z36bwgdxraym4vrr93l8pd3dix";
-    url = "http://squeakvm.org/unix/release/Squeak-${version}-src.tar.gz";
+  vmVersionRelease = squeakVmVersionRelease; # "202003021730"
+  vmHash = squeakVmCommitHash;
+
+  vmSrcUrl = "https://github.com/OpenSmalltalk/opensmalltalk-vm.git";
+  src = fetchFromGitHub {
+    owner = "OpenSmalltalk";
+    repo = "opensmalltalk-vm";
+    rev = squeakVmVersionRelease;
+    hash = nullableOr args.squeakVmHash or null
+      "sha256-rNJn5ya+7ggC21MpwSrl2ByJDjVycONKHADboH7dQLM=";
+  };
+  imageSrc = let
+    squeakImageName = "Squeak${squeakVersionBase}-${squeakImageVersion}-${toString bits}bit";
+  in fetchzip {
+    url = "https://files.squeak.org/${squeakVersionBase}/${squeakImageName}/${squeakImageName}.zip";
+    name = "source";
+    stripRoot = false;
+    hash = nullableOr args.squeakImageHash or null
+      "sha256-wDuRyc/DNqG1D4DzyBkUvrzFkBlXBtbpnANZlRV/Fas=";
+  };
+  sourcesSrc = fetchurl {
+    url = "https://files.squeak.org/sources_files/SqueakV${squeakSourcesVersion}.sources.gz";
+    hash = nullableOr args.squeakSourcesHash or null
+      "sha256-ZViZ1VgI32LwLTEyw7utp8oaAK3UmCNJnHqsGm1IKYE=";
   };
 
-  buildInputs = [ coreutils dbus freetype glib gnused libpthreadstubs
-    pango libpulseaudio which ];
-  nativeBuildInputs = [ cmake pkg-config ];
+  vmBuild = "linux64x64";
+
+  nativeBuildInputs = [
+    autoconf
+    automake
+    autoreconfHook
+    bash
+    clang
+    dos2unix
+    file
+    gzip
+    perl
+    pkg-config
+  ];
+  buildInputs = [
+    alsa-lib
+    coreutils
+    freetype
+    glib
+    glibc
+    gnugrep
+    libpulseaudio
+    libtool
+    libuuid
+    openssl
+    pango
+    xorg.libX11
+  ];
+
+  postUnpack = ''
+    for file in "$imageSrc"/*.{image,changes}; do
+      gzip -c "$file" > "$sourceRoot/''${file##"$imageSrc"/}.gz"
+    done
+  '';
+
+  prePatch = ''
+    dos2unix platforms/unix/plugins/*/{Makefile.inc,acinclude.m4}
+  '';
+
+  patches = [
+    ./squeak-configure-version.patch
+    ./squeak-plugins-discovery.patch
+    ./squeak-squeaksh-nixpkgs.patch
+  ];
 
   postPatch = ''
-    for i in squeak.in squeak.sh.in; do
-      substituteInPlace unix/cmake/$i --replace "PATH=" \
-        "PATH=${lib.makeBinPath [ coreutils gnused which ]} #"
+    vmVersionDate=$(sed 's/\([0-9][0-9][0-9][0-9]\)\([0-9][0-9]\)\([0-9][0-9]\)\([0-9][0-9]\)\([0-9][0-9]\)/\1-\2-\3T\4:\5+0000/' <<< "$vmVersionRelease")
+    vmVersionDate=$(date -u '+%a %b %-d %T %Y %z' -d "$vmVersionDate")
+    vmVersionFiles=$(sed -n 's/^versionfiles="\(.*\)"/\1/p' ./scripts/updateSCCSVersions)
+    vmHash=$(< "$vmHash")
+    vmAbbrevHash=''${vmHash:0:12}
+    printf '%s\n' "$vmAbbrevHash"
+    for vmVersionFile in $vmVersionFiles; do
+      substituteInPlace "$vmVersionFile" \
+        --replace "\$Date\$" "\$Date: ''${vmVersionDate} \$" \
+        --replace "\$URL\$" "\$URL: ''${vmSrcUrl} \$" \
+        --replace "\$Rev\$" "\$Rev: ''${vmVersionRelease} \$" \
+        --replace "\$CommitHash\$" "\$CommitHash: ''${vmAbbrevHash} \$"
+    done
+    patchShebangs --build ./"build.$vmBuild"/squeak.cog.spur ./scripts
+    for squeaksh in ./platforms/unix/config/{,bin.}squeak.sh.in; do
+      substituteInPlace "$squeaksh" \
+        --subst-var-by 'glibc' ${lib.escapeShellArg (lib.getBin glibc)} \
+        --subst-var-by 'gnugrep' ${lib.escapeShellArg (lib.getBin gnugrep)}
     done
+    substituteInPlace ./platforms/unix/config/mkmf \
+      --replace '/bin/rm ' '${coreutils}/bin/rm '
+  '';
+
+  preAutoreconf = ''
+    pushd ./platforms/unix/config > /dev/null
+    ./mkacinc > ./acplugins.m4
+  '';
+  postAutoreconf = ''
+    rm ./acplugins.m4
+    popd > /dev/null
   '';
 
-  configurePhase = ''
-    unix/cmake/configure --prefix=$out --enable-mpg-{mmx,pthreads}
+  preConfigure = ''
+    if [ -z "''${dontFixLibtool:-}" ]; then
+        local i
+        find ./platforms/unix/config -iname "ltmain.sh" -print0 | while IFS=''' read -r -d ''' i; do
+            echo "fixing libtool script $i"
+            fixLibtool "$i"
+        done
+    fi
+
+    substituteInPlace ./platforms/unix/config/configure \
+      --replace "/usr/bin/file" "${file}/bin/file"
+    cd ./"build.$vmBuild"/squeak.cog.spur/build
+    substituteInPlace ./mvm \
+      --replace 'read a' 'a=y' \
+      --replace $'if [ $# -ge 1 ]; then\n\tINSTALLDIR="$1"; shift\nfi\n' "" \
+      --replace 'config/configure' 'config/configure "$@"' \
+      --replace 'make install' '# make install'
   '';
 
-  hardeningDisable = [ "format" ];
+  configureFlags = [
+    "--disable-dynamicopenssl"
+    "SQ_MAJOR=${squeakVersionMajor}"
+    "SQ_MINOR=${squeakVersionMinor}"
+    "SQ_UPDATE=${squeakImageVersion}"
+    "SQ_VERSION=${squeakVersion}-${toString bits}bit"
+    "SQ_SRC_VERSION=${squeakSourcesVersion}"
+    "VM_MAJOR=${squeakVmVersionMajor}"
+    "VM_MINOR=${squeakVmVersionMinor}"
+    "VM_RELEASE=${squeakVmVersionRelease}"
+    "VM_VERSION=${squeakVmVersion}"
+  ];
+  configureScript = "./mvm";
+
+  installTargets = [ "install" "install-image" ];
+
+  postInstall = ''
+    rm "$out/squeak"
+    cp --no-preserve mode "$sourcesSrc" "$out"/lib/squeak/SqueakV${lib.escapeShellArg squeakSourcesVersion}.sources
+  '';
 
   meta = with lib; {
-    description = "Smalltalk programming language and environment";
-    longDescription = ''
-      Squeak is a full-featured implementation of the Smalltalk programming
-      language and environment based on (and largely compatible with) the
-      original Smalltalk-80 system. Squeak has very powerful 2- and 3-D
-      graphics, sound, video, MIDI, animation and other multimedia
-      capabilities. It also includes a customisable framework for creating
-      dynamic HTTP servers and interactively extensible Web sites.
-    '';
-    homepage = "http://squeakvm.org/";
-    downloadPage = "http://squeakvm.org/unix/index.html";
+    description = "Squeak virtual machine";
+    homepage = "https://opensmalltalk.org/";
     license = with licenses; [ asl20 mit ];
-    platforms = platforms.linux;
+    maintainers = with lib.maintainers; [ ehmry ];
+    platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/nixpkgs/pkgs/development/compilers/squeak/squeak-configure-version.patch b/nixpkgs/pkgs/development/compilers/squeak/squeak-configure-version.patch
new file mode 100644
index 000000000000..46ba8e0448cb
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/squeak/squeak-configure-version.patch
@@ -0,0 +1,94 @@
+--- a/platforms/unix/config/Makefile.install
++++ b/platforms/unix/config/Makefile.install
+@@ -101,10 +101,10 @@ uninstall-image : getversion
+ 
+ install-sources :
+ 	$(MKINSTALLDIRS) $(ROOT)$(imgdir)
+-	$(INSTALL_DATA) $(topdir)/SqueakV$(SQ_MAJOR).sources $(ROOT)$(imgdir)
++	$(INSTALL_DATA) $(topdir)/SqueakV$(SQ_SRC_VERSION).sources $(ROOT)$(imgdir)
+ 
+ uninstall-sources :
+-	@$(UNINSTALL) $(ROOT)$(imgdir) SqueakV$(SQ_MAJOR).sources
++	@$(UNINSTALL) $(ROOT)$(imgdir) SqueakV$(SQ_SRC_VERSION).sources
+ 
+ # npsqueak
+ 
+--- a/platforms/unix/config/configure.ac
++++ b/platforms/unix/config/configure.ac
+@@ -122,7 +122,7 @@ AC_SUBST(vmpdir)
+ AC_SUBST(vmmcfg)
+ AC_SUBST(blddir)
+ 
+-SQ_VERSION=${SQ_MAJOR}.${SQ_MINOR}-${SQ_UPDATE}
++AS_VAR_SET_IF([SQ_VERSION], [], [SQ_VERSION=${SQ_MAJOR}.${SQ_MINOR}-${SQ_UPDATE}])
+ 
+ AC_DEFINE_UNQUOTED(SQ_VERSION, "${SQ_VERSION}", [Squeak version])
+ 
+@@ -131,21 +131,24 @@ AC_SUBST(SQ_MINOR)
+ AC_SUBST(SQ_UPDATE)
+ AC_SUBST(SQ_VERSION)
+ 
++AS_VAR_SET_IF([SQ_SRC_VERSION], [], [SQ_SRC_VERSION=${SQ_MAJOR}])
++AC_SUBST(SQ_SRC_VERSION)
++
+ #VM_VERSION=${VM_MAJOR}.${VM_MINOR}-${VM_RELEASE}
+ 
+ #AC_DEFINE_UNQUOTED(VM_VERSION, "${VM_VERSION}", [VM version])
+ 
+-#AC_SUBST(VM_MAJOR)
+-#AC_SUBST(VM_MINOR)
+-#AC_SUBST(VM_RELEASE)
+-#AC_SUBST(VM_VERSION)
++AC_SUBST(VM_MAJOR)
++AC_SUBST(VM_MINOR)
++AC_SUBST(VM_RELEASE)
++AC_SUBST(VM_VERSION)
+ 
+ # libdir contains ${exec_prefix}, so we have to default and expand early
+ test "x$prefix" = xNONE && prefix=$ac_default_prefix
+ test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+ imgdir=`eval echo ${libdir}/squeak`
+ expanded_relative_imgdir=`eval echo lib/squeak/${VM_VERSION}`
+-plgdir='${imgdir}/`${blddir}/getversion VERSION_TAG`'
++plgdir=`eval echo '${imgdir}'/${VM_VERSION}`
+ 
+ AC_SUBST(imgdir)
+ AC_SUBST(expanded_relative_imgdir)
+--- a/platforms/unix/config/inisqueak.in
++++ b/platforms/unix/config/inisqueak.in
+@@ -32,6 +32,7 @@
+ 
+ MAJOR=@SQ_MAJOR@
+ VERSION=@SQ_VERSION@
++SRC_VERSION=@SQ_SRC_VERSION@
+ 
+ prefix=@prefix@
+ exec_prefix=@exec_prefix@
+@@ -77,7 +78,7 @@ if test "$1" != ""; then
+ fi
+ 
+ SQUEAK=${bindir}/squeak
+-SOURCES=SqueakV${MAJOR}.sources
++SOURCES=SqueakV${SRC_VERSION}.sources
+ IMAGE=squeak.image.gz
+ CHANGES=squeak.changes.gz
+ 
+--- a/platforms/unix/config/make.cfg.in
++++ b/platforms/unix/config/make.cfg.in
+@@ -96,6 +96,16 @@ X_INCLUDES=	@X_INCLUDES@
+ X_LIBS=		@X_LIBS@
+ 
+ 
++SQ_MAJOR=	@SQ_MAJOR@
++SQ_MINOR=	@SQ_MINOR@
++SQ_UPDATE=	@SQ_UPDATE@
++SQ_VERSION=	@SQ_VERSION@
++SQ_SRC_VERSION=	@SQ_SRC_VERSION@
++VM_MAJOR=	@VM_MAJOR@
++VM_MINOR=	@VM_MINOR@
++VM_RELEASE=	@VM_RELEASE@
++VM_VERSION=	@VM_VERSION@
++
+ INTERP=		@INTERP@
+ 
+ VM_APP_ICONS=	@VM_APP_ICONS@
diff --git a/nixpkgs/pkgs/development/compilers/squeak/squeak-plugins-discovery.patch b/nixpkgs/pkgs/development/compilers/squeak/squeak-plugins-discovery.patch
new file mode 100644
index 000000000000..8d1aa20a6f35
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/squeak/squeak-plugins-discovery.patch
@@ -0,0 +1,34 @@
+--- a/platforms/unix/plugins/UnicodePlugin/Makefile.inc
++++ b/platforms/unix/plugins/UnicodePlugin/Makefile.inc
+@@ -1,2 +1,2 @@
+-XCPPFLAGS=	-I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0  -I/usr/lib/glib-2.0/include -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/lib/i386-linux-gnu/glib-2.0/include
++XCPPFLAGS=	[unicode_plugin_cflags]
+-XLDFLAGS= -lpangocairo-1.0 -lcairo -lpango-1.0 -lgobject-2.0 -lglib-2.0
++XLDFLAGS=	[unicode_plugin_libs]
+--- a/platforms/unix/plugins/UnicodePlugin/acinclude.m4
++++ b/platforms/unix/plugins/UnicodePlugin/acinclude.m4
+@@ -2,9 +2,14 @@
+ 
+ AC_MSG_CHECKING([for PangoCairo libraries])
+ save_CPPFLAGS="$CPPFLAGS"
+-CPPFLAGS="-I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include -I/usr/lib/i386-linux-gnu/glib-2.0/include"
++CPPFLAGS=`pkg-config --cflags glib-2.0 pangocairo`
+ AC_TRY_COMPILE([#include <pango/pangocairo.h>],[{}],[
+   AC_MSG_RESULT(yes)
++  PKG_CHECK_MODULES([UNICODE_PLUGIN],[glib-2.0 pangocairo])
++  AC_SUBST([UNICODE_PLUGIN_CFLAGS])
++  AC_SUBST([UNICODE_PLUGIN_LIBS])
++  AC_PLUGIN_DEFINE_UNQUOTED([unicode_plugin_cflags],[$UNICODE_PLUGIN_CFLAGS])
++  AC_PLUGIN_DEFINE_UNQUOTED([unicode_plugin_libs],[$UNICODE_PLUGIN_LIBS])
+ ],[
+   AC_MSG_RESULT(no)
+   AC_PLUGIN_DISABLE
+--- a/platforms/unix/plugins/XDisplayControlPlugin/acinclude.m4
++++ b/platforms/unix/plugins/XDisplayControlPlugin/acinclude.m4
+@@ -1,5 +1,3 @@
+ # Require X11
+ 
+-AC_CHECK_LIB(X11,XOpenDisplay,
+-  [AC_PLUGIN_USE_LIB(X11)],
+-  [AC_PLUGIN_DISABLE])
++AC_PLUGIN_CHECK_LIB(X11,XOpenDisplay)
diff --git a/nixpkgs/pkgs/development/compilers/squeak/squeak-squeaksh-nixpkgs.patch b/nixpkgs/pkgs/development/compilers/squeak/squeak-squeaksh-nixpkgs.patch
new file mode 100644
index 000000000000..e5fa380676f2
--- /dev/null
+++ b/nixpkgs/pkgs/development/compilers/squeak/squeak-squeaksh-nixpkgs.patch
@@ -0,0 +1,40 @@
+--- a/platforms/unix/config/bin.squeak.sh.in
++++ b/platforms/unix/config/bin.squeak.sh.in
+@@ -1,7 +1,7 @@
+ #!/bin/sh
+ # Run the VM, setting SQUEAK_PLUGINS if unset to the VM's containing directory
+ # if unset, and ensuring LD_LIBRARY_PATH includes the VM's containing directory.
+-BIN=`/usr/bin/dirname "$0"`/../@expanded_relative_imgdir@
++BIN=`dirname "$0"`/../@expanded_relative_imgdir@
+ GDB=
+ if [ "${SQUEAK_PLUGINS-unset}" = unset ]; then
+        export SQUEAK_PLUGINS="$BIN"
+@@ -26,7 +26,7 @@ fi
+ # libc (e.g. through the FFI) then it must use the same version that the VM uses
+ # and so it should take precedence over /lib libc.  This is done by setting
+ # LD_LIBRARY_PATH appropriately, based on ldd's idea of the libc use by the VM.
+-LIBC_SO="`/usr/bin/ldd "$BIN/squeak" | /bin/fgrep /libc. | sed 's/^.*=> \([^ ]*\).*/\1/'`"
++LIBC_SO="`@glibc@/bin/ldd "$BIN/squeak" | @gnugrep@/bin/fgrep /libc. | sed 's/^.*=> \([^ ]*\).*/\1/'`"
+ PLATFORMLIBDIR=`expr "$LIBC_SO" : '\(.*\)/libc.*'`
+ 
+ if [ "$PLATFORMLIBDIR" = "" ]; then
+--- a/platforms/unix/config/squeak.sh.in
++++ b/platforms/unix/config/squeak.sh.in
+@@ -1,7 +1,7 @@
+ #!/bin/sh
+ # Run the VM, setting SQUEAK_PLUGINS if unset to the VM's containing directory
+ # if unset, and ensuring LD_LIBRARY_PATH includes the VM's containing directory.
+-BIN=`/usr/bin/dirname "$0"`/@expanded_relative_imgdir@
++BIN=`dirname "$0"`/@expanded_relative_imgdir@
+ GDB=
+ if [ "${SQUEAK_PLUGINS-unset}" = unset ]; then
+        export SQUEAK_PLUGINS="$BIN"
+@@ -26,7 +26,7 @@ fi
+ # libc (e.g. through the FFI) then it must use the same version that the VM uses
+ # and so it should take precedence over /lib libc.  This is done by setting
+ # LD_LIBRARY_PATH appropriately, based on ldd's idea of the libc use by the VM.
+-LIBC_SO="`/usr/bin/ldd "$BIN/squeak" | /bin/fgrep /libc. | sed 's/^.*=> \([^ ]*\).*/\1/'`"
++LIBC_SO="`@glibc@/bin/ldd "$BIN/squeak" | @gnugrep@/bin/fgrep /libc. | sed 's/^.*=> \([^ ]*\).*/\1/'`"
+ PLATFORMLIBDIR=`expr "$LIBC_SO" : '\(.*\)/libc.*'`
+ 
+ if [ "$PLATFORMLIBDIR" = "" ]; then
diff --git a/nixpkgs/pkgs/development/compilers/vala/default.nix b/nixpkgs/pkgs/development/compilers/vala/default.nix
index 72512a1202f2..230f6ee19a20 100644
--- a/nixpkgs/pkgs/development/compilers/vala/default.nix
+++ b/nixpkgs/pkgs/development/compilers/vala/default.nix
@@ -20,6 +20,8 @@ let
 
         "0.54" = ./disable-graphviz-0.46.1.patch;
 
+        "0.56" = ./disable-graphviz-0.46.1.patch;
+
       }.${lib.versions.majorMinor version} or (throw "no graphviz patch for this version of vala");
 
     disableGraphviz = lib.versionAtLeast version "0.38" && !withGraphviz;
@@ -68,7 +70,10 @@ let
 
     passthru = {
       updateScript = gnome.updateScript {
-        attrPath = "${pname}_${lib.versions.major version}_${lib.versions.minor version}";
+        attrPath =
+          let
+            roundUpToEven = num: num + lib.mod num 2;
+          in "${pname}_${lib.versions.major version}_${builtins.toString (roundUpToEven (lib.toInt (lib.versions.minor version)))}";
         packageName = pname;
         freeze = true;
       };
@@ -90,8 +95,13 @@ in rec {
   };
 
   vala_0_54 = generic {
-    version = "0.54.7";
-    sha256 = "Ygecof8C5dF65yqppa3GGuav3P67DZ8GBjo2776soMc=";
+    version = "0.54.8";
+    sha256 = "7fs+eUhqS/SM666pKR5X/HfakyK2lh6VSd9tlz0EvIA=";
+  };
+
+  vala_0_56 = generic {
+    version = "0.56.0";
+    sha256 = "2SvRPFYwkF7rapg9y3AiBNqXMUYMKm5OOfhnmW83EEA=";
   };
 
   vala = vala_0_54;
diff --git a/nixpkgs/pkgs/development/coq-modules/VST/default.nix b/nixpkgs/pkgs/development/coq-modules/VST/default.nix
index 80aaf506139b..a5dee94d045d 100644
--- a/nixpkgs/pkgs/development/coq-modules/VST/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/VST/default.nix
@@ -37,6 +37,7 @@ mkCoqDerivation {
   preConfigure = ''
     patchShebangs util
     substituteInPlace Makefile \
+      --replace 'COQVERSION= ' 'COQVERSION= 8.15.1 or-else '\
       --replace 'FLOYD_FILES=' 'FLOYD_FILES= ${toString extra_floyd_files}'
   '';
 
diff --git a/nixpkgs/pkgs/development/coq-modules/compcert/default.nix b/nixpkgs/pkgs/development/coq-modules/compcert/default.nix
index 197f1a96fc4a..092bb58d174f 100644
--- a/nixpkgs/pkgs/development/coq-modules/compcert/default.nix
+++ b/nixpkgs/pkgs/development/coq-modules/compcert/default.nix
@@ -119,6 +119,11 @@ compcert.overrideAttrs (o:
             url = "https://github.com/AbsInt/CompCert/commit/a882f78c069f7337dd9f4abff117d4df98ef38a6.patch";
             sha256 = "sha256:16i87s608fj9ni7cvd5wrd7gicqniad7w78wi26pxdy0pacl7bjg";
           })
+          # Support for Coq 8.15.1
+          (fetchpatch {
+            url = "https://github.com/AbsInt/CompCert/commit/10a976994d7fd30d143354c289ae735d210ccc09.patch";
+            sha256 = "sha256:0bg58gpkgxlmxzp6sg0dvybrfk0pxnm7qd6vxlrbsbm2w6wk03jv";
+          })
         ];
       }
     ] [];
diff --git a/nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix b/nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix
index 420475806a0e..a433840b7bca 100644
--- a/nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix
+++ b/nixpkgs/pkgs/development/dotnet-modules/python-language-server/default.nix
@@ -10,13 +10,13 @@
 
 buildDotnetModule rec {
   pname = "python-language-server";
-  version = "2021-09-08";
+  version = "2022-02-18";
 
   src = fetchFromGitHub {
     owner = "microsoft";
     repo = "python-language-server";
-    rev = "26ea18997f45f7d7bc5a3c5a9efc723a8dbb02fa";
-    sha256 = "1m8pf9k20wy4fzv27v3bswvc8s01ag6ka2qm9nn6bgq0s0lq78mh";
+    rev = "52c1afd34b5acb0b44597bb8681232876fe94084";
+    sha256 = "05s8mwi3dqzjghgpr1mfs1b7cgrq818bbj1v7aly6axc8c2n4gny";
   };
 
   projectFile = "src/LanguageServer/Impl/Microsoft.Python.LanguageServer.csproj";
diff --git a/nixpkgs/pkgs/development/embedded/bossa/default.nix b/nixpkgs/pkgs/development/embedded/bossa/default.nix
index 4e35ff35f660..fbb1b4c1fd40 100644
--- a/nixpkgs/pkgs/development/embedded/bossa/default.nix
+++ b/nixpkgs/pkgs/development/embedded/bossa/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchgit, wxGTK, libX11, readline }:
+{ lib, stdenv, fetchFromGitHub, wxGTK, libX11, readline }:
 
 let
   # BOSSA needs a "bin2c" program to embed images.
@@ -13,14 +13,15 @@ let
   };
 
 in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "bossa";
   version = "1.8";
 
-  src = fetchgit {
-    url = "https://github.com/shumatech/BOSSA";
-    rev = "3be622ca0aa6214a2fc51c1ec682c4a58a423d62";
-    sha256 = "19ik86qbffcb04cgmi4mnascbkck4ynfj87ha65qdk6fmp5q35vm";
+  src = fetchFromGitHub {
+    owner = "shumatech";
+    repo = "BOSSA";
+    rev = version;
+    sha256 = "sha256-dZeBy63OzIaLUfAg6awnk83FtLKVxPoYAYs5t7BBM6Y=";
   };
 
   patches = [ ./bossa-no-applet-build.patch ];
diff --git a/nixpkgs/pkgs/development/guile-modules/guile-ssh/default.nix b/nixpkgs/pkgs/development/guile-modules/guile-ssh/default.nix
index 79a1a7d9b8d2..2ed949ee45ce 100644
--- a/nixpkgs/pkgs/development/guile-modules/guile-ssh/default.nix
+++ b/nixpkgs/pkgs/development/guile-modules/guile-ssh/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "guile-ssh";
-  version = "0.15.0";
+  version = "0.15.1";
 
   src = fetchFromGitHub {
     owner = "artyom-poptsov";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-dcG3Q1K1/CxrMeEUWSZ3Qu57Aesalydg4UjkIqg1NJ0=";
+    sha256 = "sha256-+BhyaBieqMwTgsSLci3HJdCrNQmfPN/jK2Od5DQs9n8=";
   };
 
   configureFlags = [ "--with-guilesitedir=\${out}/share/guile/site" ];
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-common.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-common.nix
index b95f53758fd0..25b80f8c25d5 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-common.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-common.nix
@@ -859,9 +859,8 @@ self: super: {
     (pkgs.fetchpatch {
       name   = "hledger-properly-escape-quotes-csv.patch";
       url    = "https://github.com/simonmichael/hledger/commit/c9a72e1615e2ddc2824f2e248456e1042eb31e1d.patch";
-      sha256 = "10knvrd5bl9nrmi27i0pm82sfr64jy04xgbjp228qywyijpr3pqv";
-      includes = [ "Hledger/Read/CsvReader.hs" ];
-      stripLen = 1;
+      relative = "hledger-lib";
+      sha256 = "sha256-gjYYo0eq1gWNAAFF3dKt9QDq0VpLnN5/648r/NXEPVE=";
     })
     super.hledger-lib;
 
@@ -1819,10 +1818,8 @@ self: super: {
   # Presumably to be removed at the next release
   yi-language = appendPatch (pkgs.fetchpatch {
     url = "https://github.com/yi-editor/yi/commit/0d3bcb5ba4c237d57ce33a3dc39b63c56d890765.patch";
-    sha256 = "0r4mzngs0x1akqpajzx7ssa9rax977fvj5ra8d3grfbpx6z0nm01";
-    includes = [ "yi-language.cabal" ];
-    stripLen = 2;
-    extraPrefix = "";
+    relative = "yi-language";
+    sha256 = "sha256-AVQLvul3ufxGQyoXud05qauclNanf6kunip0oJ/9lWQ=";
   }) super.yi-language;
 
   # https://github.com/ghcjs/jsaddle/issues/123
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
index b3cac2e3973e..09ce57fe1d34 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
@@ -1986,7 +1986,6 @@ broken-packages:
   - haskell-mpi
   - haskell-names
   - haskell-neo4j-client
-  - HaskellNet-SSL
   - HaskellNN
   - Haskelloids
   - haskell-openflow
@@ -3703,7 +3702,6 @@ broken-packages:
   - persistent-discover
   - persistent-documentation
   - persistent-equivalence
-  - persistent-migration
   - persistent-mongoDB
   - persistent-mysql-haskell
   - persistent-odbc
diff --git a/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix b/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix
index c8893a751fd1..b93dcb183442 100644
--- a/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix
@@ -163,6 +163,7 @@ self: super: builtins.intersectAttrs super {
   network-transport-tcp = dontCheck super.network-transport-tcp;
   network-transport-zeromq = dontCheck super.network-transport-zeromq; # https://github.com/tweag/network-transport-zeromq/issues/30
   oidc-client = dontCheck super.oidc-client;            # the spec runs openid against google.com
+  persistent-migration = dontCheck super.persistent-migration; # spec requires pg_ctl binary
   pipes-mongodb = dontCheck super.pipes-mongodb;        # http://hydra.cryp.to/build/926195/log/raw
   pixiv = dontCheck super.pixiv;
   raven-haskell = dontCheck super.raven-haskell;        # http://hydra.cryp.to/build/502053/log/raw
diff --git a/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix b/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix
index 2e08662a9de5..a16396d316ef 100644
--- a/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix
@@ -10200,8 +10200,6 @@ self: {
        ];
        description = "Helpers to connect to SSL/TLS mail servers with HaskellNet";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "HaskellTorrent" = callPackage
@@ -211081,8 +211079,6 @@ self: {
        ];
        description = "Manual migrations for the persistent library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "persistent-mongoDB" = callPackage
diff --git a/nixpkgs/pkgs/development/haskell-modules/hoogle.nix b/nixpkgs/pkgs/development/haskell-modules/hoogle.nix
index 0b3f71995c99..8518a5391de7 100644
--- a/nixpkgs/pkgs/development/haskell-modules/hoogle.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/hoogle.nix
@@ -46,6 +46,13 @@ buildPackages.stdenv.mkDerivation {
   name = "hoogle-with-packages";
   buildInputs = [ghc hoogle];
 
+  # compiling databases takes less time than copying the results
+  # between machines.
+  preferLocalBuild = true;
+  # Plus, you need a complete database for each possible combination
+  # of dependencies, caching them does not make sense.
+  allowSubstitutes = false;
+
   inherit docPackages;
 
   passAsFile = ["buildCommand"];
diff --git a/nixpkgs/pkgs/development/haskell-modules/make-package-set.nix b/nixpkgs/pkgs/development/haskell-modules/make-package-set.nix
index 86f29e731133..80dc94af4df6 100644
--- a/nixpkgs/pkgs/development/haskell-modules/make-package-set.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/make-package-set.nix
@@ -384,6 +384,18 @@ in package-set { inherit pkgs lib callPackage; } self // {
         # for the "shellFor" environment (ensuring that any test/benchmark
         # dependencies for "foo" will be available within the nix-shell).
       , genericBuilderArgsModifier ? (args: args)
+
+        # Extra dependencies, in the form of cabal2nix build attributes.
+        #
+        # An example use case is when you have Haskell scripts that use
+        # libraries that don't occur in your packages' dependencies.
+        #
+        # Example:
+        #
+        #   extraDependencies = p: {
+        #     libraryHaskellDepends = [ p.releaser ];
+        #   };
+      , extraDependencies ? p: {}
       , ...
       } @ args:
       let
@@ -474,7 +486,7 @@ in package-set { inherit pkgs lib callPackage; } self // {
         # See the Note in `zipperCombinedPkgs` for what gets filtered out from
         # each of these dependency lists.
         packageInputs =
-          pkgs.lib.zipAttrsWith (_name: zipperCombinedPkgs) cabalDepsForSelected;
+          pkgs.lib.zipAttrsWith (_name: zipperCombinedPkgs) (cabalDepsForSelected ++ [ (extraDependencies self) ]);
 
         # A attribute set to pass to `haskellPackages.mkDerivation`.
         #
@@ -514,7 +526,7 @@ in package-set { inherit pkgs lib callPackage; } self // {
         # pkgWithCombinedDepsDevDrv :: Derivation
         pkgWithCombinedDepsDevDrv = pkgWithCombinedDeps.envFunc { inherit withHoogle; };
 
-        mkDerivationArgs = builtins.removeAttrs args [ "genericBuilderArgsModifier" "packages" "withHoogle" "doBenchmark" ];
+        mkDerivationArgs = builtins.removeAttrs args [ "genericBuilderArgsModifier" "packages" "withHoogle" "doBenchmark" "extraDependencies" ];
 
       in pkgWithCombinedDepsDevDrv.overrideAttrs (old: mkDerivationArgs // {
         nativeBuildInputs = old.nativeBuildInputs ++ mkDerivationArgs.nativeBuildInputs or [];
diff --git a/nixpkgs/pkgs/development/haskell-modules/non-hackage-packages.nix b/nixpkgs/pkgs/development/haskell-modules/non-hackage-packages.nix
index 4aead5d18800..e06f9d30d2da 100644
--- a/nixpkgs/pkgs/development/haskell-modules/non-hackage-packages.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/non-hackage-packages.nix
@@ -24,8 +24,6 @@ self: super: {
 
   nix-linter = self.callPackage ../../development/tools/analysis/nix-linter { };
 
-  nix-output-monitor = self.callPackage ../../tools/nix/nix-output-monitor { };
-
   # hasura graphql-engine is not released to hackage.
   # https://github.com/hasura/graphql-engine/issues/7391
   ci-info = self.callPackage ../misc/haskell/hasura/ci-info.nix {};
diff --git a/nixpkgs/pkgs/development/haskell-modules/package-list.nix b/nixpkgs/pkgs/development/haskell-modules/package-list.nix
index 64f4be3a7722..688844bcc46c 100644
--- a/nixpkgs/pkgs/development/haskell-modules/package-list.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/package-list.nix
@@ -1,10 +1,16 @@
 { runCommand, haskellPackages, lib, all-cabal-hashes, writeShellScript }:
 let
+  # Checks if the version looks like a Haskell PVP version which is the format
+  # Hackage enforces. This will return false if the version strings is empty or
+  # we've overridden the package to ship an unstable version of the package
+  # (sadly there's no good way to show something useful on hackage in this case).
+  isPvpVersion = v: builtins.match "([0-9]+)(\\.[0-9]+)*" v != null;
+
   pkgLine = name: pkg:
     let
       version = pkg.version or "";
     in
-    if version != "" then
+    if isPvpVersion version then
       ''"${name}","${version}","http://hydra.nixos.org/job/nixpkgs/trunk/haskellPackages.${name}.x86_64-linux"''
     else "";
   all-haskellPackages = builtins.toFile "all-haskellPackages" (lib.concatStringsSep "\n" (lib.filter (x: x != "") (lib.mapAttrsToList pkgLine haskellPackages)));
diff --git a/nixpkgs/pkgs/development/interpreters/alda/default.nix b/nixpkgs/pkgs/development/interpreters/alda/default.nix
index ec46a5e3923d..355551d5ad0d 100644
--- a/nixpkgs/pkgs/development/interpreters/alda/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/alda/default.nix
@@ -2,16 +2,16 @@
 
 stdenv.mkDerivation rec {
   pname = "alda";
-  version = "2.0.6";
+  version = "2.2.0";
 
   src_alda = fetchurl {
     url = "https://alda-releases.nyc3.digitaloceanspaces.com/${version}/client/linux-amd64/alda";
-    sha256 = "1078hywl3gim5wfgxb0xwbk1dn80ls3i7y33n76qsdd4b0x0sn7i";
+    sha256 = "0z3n81fmv3fxwgr641r6jjn1dmi5d3rw8d6r8jdfjhgpxanyi9a7";
   };
 
   src_player = fetchurl {
     url = "https://alda-releases.nyc3.digitaloceanspaces.com/${version}/player/non-windows/alda-player";
-    sha256 = "1g7k2qnh4vcw63604z7zbvhbpn7l1v3m9mx4j4vywfq6qar1r6ck";
+    sha256 = "11kji846hbn1f2w1s7rc1ing203jkamy89j1jmysajvirdpp8nha";
   };
 
   dontUnpack = true;
diff --git a/nixpkgs/pkgs/development/interpreters/ceptre/default.nix b/nixpkgs/pkgs/development/interpreters/ceptre/default.nix
index 56d37dd4e947..9771a8f72d2a 100644
--- a/nixpkgs/pkgs/development/interpreters/ceptre/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/ceptre/default.nix
@@ -1,13 +1,15 @@
-{ lib, stdenv, fetchgit, mlton }:
+{ lib, stdenv, fetchFromGitHub, mlton }:
 
 stdenv.mkDerivation {
   pname = "ceptre";
   version = "unstable-2016-11-27";
 
-  src = fetchgit {
-    url = "https://github.com/chrisamaphone/interactive-lp";
+  src = fetchFromGitHub {
+    owner = "chrisamaphone";
+    repo = "interactive-lp";
     rev = "e436fda2ccd44e9c9d226feced9d204311deacf5";
-    sha256 = "174pxfnw3qyn2w8qxmx45fa68iddf106mkfi0kcmyqxzsc9jprh8";
+    sha256 = "sha256-COYrE9O/Y1/ZBNHNakBwrUVklCuk144RF9bjwa3rl5w=";
+    fetchSubmodules = true;
   };
 
   nativeBuildInputs = [ mlton ];
diff --git a/nixpkgs/pkgs/development/interpreters/clojure/default.nix b/nixpkgs/pkgs/development/interpreters/clojure/default.nix
index 09774f7fb6d5..cd63e506a55f 100644
--- a/nixpkgs/pkgs/development/interpreters/clojure/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/clojure/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "clojure";
-  version = "1.10.3.1087";
+  version = "1.11.0.1100";
 
   src = fetchurl {
     # https://clojure.org/releases/tools
     url = "https://download.clojure.org/install/clojure-tools-${version}.tar.gz";
-    sha256 = "sha256-prOzVHrcbabKXP4Q4Dfx/eiKePlINyu1mO9NCFnaPpQ=";
+    sha256 = "sha256-9KEsO32118fvKE1Gls+9nAeRdlhTKfmJylsiSYCoKKU=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/interpreters/guile/3.0.nix b/nixpkgs/pkgs/development/interpreters/guile/3.0.nix
index 99f3f84829c7..d0f5aa5573b6 100644
--- a/nixpkgs/pkgs/development/interpreters/guile/3.0.nix
+++ b/nixpkgs/pkgs/development/interpreters/guile/3.0.nix
@@ -140,7 +140,7 @@ builder rec {
       # Expect the text in format of '"https://ftp.gnu.org/gnu/guile/guile-3.0.8.tar.gz"'
       new_version="$(curl -s https://www.gnu.org/software/guile/download/ |
           pcregrep -o1 '"https://ftp.gnu.org/gnu/guile/guile-(3[.0-9]+).tar.gz"')"
-      update-source-version ${pname} "$new_version"
+      update-source-version guile_3_0 "$new_version"
     '';
   };
 
diff --git a/nixpkgs/pkgs/development/interpreters/janet/default.nix b/nixpkgs/pkgs/development/interpreters/janet/default.nix
index a6ee3dc61fad..bc17750f2535 100644
--- a/nixpkgs/pkgs/development/interpreters/janet/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/janet/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "janet";
-  version = "1.20.0";
+  version = "1.21.0";
 
   src = fetchFromGitHub {
     owner = "janet-lang";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-mCeOaTbOQej4Uza9fg+xop77z31SQ3sO09dZK8SVAyU=";
+    sha256 = "sha256-chVnD5mxnA50yEL65KUYJwpkZ4jPWiLVHHXeeFxtHBo=";
   };
 
   # This release fails the test suite on darwin, remove when debugged.
diff --git a/nixpkgs/pkgs/development/interpreters/jimtcl/default.nix b/nixpkgs/pkgs/development/interpreters/jimtcl/default.nix
index 78b9e40b6470..158d99e3b214 100644
--- a/nixpkgs/pkgs/development/interpreters/jimtcl/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/jimtcl/default.nix
@@ -1,20 +1,30 @@
-{ lib, stdenv, fetchFromGitHub, sqlite, readline, asciidoc, SDL, SDL_gfx }:
+{ lib
+, stdenv
+, fetchFromGitHub
 
-let
-  makeSDLFlags = map (p: "-I${lib.getDev p}/include/SDL");
+, asciidoc
+, pkg-config
+, inetutils
 
-in stdenv.mkDerivation rec {
+, sqlite
+, readline
+, SDL
+, SDL_gfx
+}:
+
+stdenv.mkDerivation rec {
   pname = "jimtcl";
-  version = "0.79";
+  version = "0.81";
 
   src = fetchFromGitHub {
     owner = "msteveb";
     repo = "jimtcl";
     rev = version;
-    sha256 = "1k88hz0v3bi19xdvlp0i9nsx38imzwpjh632w7326zwbv2wldf0h";
+    sha256 = "sha256-OpM9y7fQ+18qxl3/5wUCrNA9qiCdA0vTHqLYSw2lvJs=";
   };
 
   nativeBuildInputs = [
+    pkg-config
     asciidoc
   ];
 
@@ -35,8 +45,6 @@ in stdenv.mkDerivation rec {
     "--ipv6"
   ];
 
-  NIX_CFLAGS_COMPILE = toString (makeSDLFlags [ SDL SDL_gfx ]);
-
   enableParallelBuilding = true;
 
   doCheck = true;
@@ -45,6 +53,9 @@ in stdenv.mkDerivation rec {
     rm tests/exec2.test
   '';
 
+  # test posix-1.6 needs the "hostname" command
+  checkInputs = [ inetutils ];
+
   postInstall = ''
     ln -sr $out/lib/libjim.so.${version} $out/lib/libjim.so
   '';
@@ -54,6 +65,6 @@ in stdenv.mkDerivation rec {
     homepage = "http://jim.tcl.tk/";
     license = lib.licenses.bsd2;
     platforms = lib.platforms.all;
-    maintainers = with lib.maintainers; [ dbohdan vrthra ];
+    maintainers = with lib.maintainers; [ dbohdan fgaz vrthra ];
   };
 }
diff --git a/nixpkgs/pkgs/development/interpreters/php/8.0.nix b/nixpkgs/pkgs/development/interpreters/php/8.0.nix
index 1f1fa1dfbc45..3332c9d5a420 100644
--- a/nixpkgs/pkgs/development/interpreters/php/8.0.nix
+++ b/nixpkgs/pkgs/development/interpreters/php/8.0.nix
@@ -2,8 +2,8 @@
 
 let
   base = callPackage ./generic.nix (_args // {
-    version = "8.0.16";
-    sha256 = "sha256-9J+Bge4pRjoNI6DGWWnpLVj+6KxWTfkXz/WOSNZeGEk=";
+    version = "8.0.17";
+    sha256 = "52811ee2dde71660ca32737a4ac696c24591eb22e846dd8e09ee77122660283f";
   });
 
 in
diff --git a/nixpkgs/pkgs/development/interpreters/php/8.1.nix b/nixpkgs/pkgs/development/interpreters/php/8.1.nix
index 8d87a5e7a225..aa98204b9979 100644
--- a/nixpkgs/pkgs/development/interpreters/php/8.1.nix
+++ b/nixpkgs/pkgs/development/interpreters/php/8.1.nix
@@ -2,8 +2,8 @@
 
 let
   base = callPackage ./generic.nix (_args // {
-    version = "8.1.3";
-    sha256 = "sha256-NUxOLFBgRuyoEtH8JSaISi9UtePSDvDt6RmmnrIy0L4=";
+    version = "8.1.4";
+    sha256 = "b3f688cb69758523838b8e7f509aaef0152133d9b84a84a0b7cf68eeafc1df76";
   });
 
 in
diff --git a/nixpkgs/pkgs/development/interpreters/picoc/default.nix b/nixpkgs/pkgs/development/interpreters/picoc/default.nix
index 2c674754935c..47e18cbdcd8f 100644
--- a/nixpkgs/pkgs/development/interpreters/picoc/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/picoc/default.nix
@@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ readline ];
 
+  makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
+
   postPatch = ''
     substituteInPlace Makefile --replace '`svnversion -n`' "${version}"
   '';
@@ -46,6 +48,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/zsaleeba/picoc";
     downloadPage = "https://code.google.com/p/picoc/downloads/list";
     license = licenses.bsd3;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/interpreters/pixie/default.nix b/nixpkgs/pkgs/development/interpreters/pixie/default.nix
index ca55eceaedbf..5b93357b2665 100644
--- a/nixpkgs/pkgs/development/interpreters/pixie/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/pixie/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchgit, fetchurl, python2, makeWrapper, pkg-config, gcc,
+{ lib, stdenv, fetchFromGitHub, fetchurl, python2, makeWrapper, pkg-config, gcc,
   pypy, libffi, libedit, libuv, boost, zlib,
   variant ? "jit", buildWithPypy ? false }:
 
@@ -11,10 +11,11 @@ let
     no-jit = { flags = ""; target = "target.py"; };
     no-jit-preload = { flags = ""; target = "target_preload.py"; };
   };
-  pixie-src = fetchgit {
-    url = "https://github.com/pixie-lang/pixie.git";
+  pixie-src = fetchFromGitHub {
+    owner = "pixie-lang";
+    repo = "pixie";
     rev = "5eb0ccbe8b0087d3a5f2d0bbbc6998d624d3cd62";
-    sha256 = "0pf31x5h2m6dpxlidv98qay1y179qw40cw4cb4v4xa88gmq2f3vm";
+    sha256 = "sha256-dQ8ncH0IqU42WYxwBgjH6QQfvMIo7RZpv81UAUsPw10=";
   };
   pypy-tag = "91db1a9";
   pypy-src = fetchurl {
diff --git a/nixpkgs/pkgs/development/interpreters/python/default.nix b/nixpkgs/pkgs/development/interpreters/python/default.nix
index f2e59cd27816..34fcb2530e19 100644
--- a/nixpkgs/pkgs/development/interpreters/python/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/python/default.nix
@@ -120,15 +120,6 @@ with pkgs;
   };
 
   sources = {
-    python38 = {
-      sourceVersion = {
-        major = "3";
-        minor = "8";
-        patch = "12";
-        suffix = "";
-      };
-      sha256 = "1si8hw2xpagh4iji89zdx69p3dv5mjqwwbx2x2sl6lrp41jaglxi";
-    };
     python39 = {
       sourceVersion = {
         major = "3";
@@ -169,19 +160,26 @@ in {
     sourceVersion = {
       major = "3";
       minor = "7";
-      patch = "12";
+      patch = "13";
       suffix = "";
     };
-    sha256 = "041jqjl5wf7gsw84zd3jgvg91skq20l2fy5zbhz237w38zxzfyzp";
+    sha256 = "sha256-mfEGJ134iZw+jLnXwBzmhsIC7ydZUzAUJxlGk95b74Q=";
     inherit (darwin) configd;
     inherit passthruFun;
   };
 
-  python38 = callPackage ./cpython ({
+  python38 = callPackage ./cpython {
     self = python38;
+    sourceVersion = {
+      major = "3";
+      minor = "8";
+      patch = "13";
+      suffix = "";
+    };
+    sha256 = "sha256-bzCQdwEgQKo5/o8MYduMD6HEUTZ2MpnTdcnldW8Jz1c=";
     inherit (darwin) configd;
     inherit passthruFun;
-  } // sources.python38);
+  };
 
   python39 = callPackage ./cpython ({
     self = python39;
@@ -201,9 +199,9 @@ in {
       major = "3";
       minor = "11";
       patch = "0";
-      suffix = "a4";
+      suffix = "a6";
     };
-    sha256 = "sha256-Q3/nN2w2Pa+vNM6A8ERrQfyaQsDiqMflGdPwoLfPs+0=";
+    sha256 = "sha256-HFOi/3WHljPjDKwp0qpregEONVuV8L+axpG+zPX50So=";
     inherit (darwin) configd;
     inherit passthruFun;
   };
diff --git a/nixpkgs/pkgs/development/interpreters/scsh/default.nix b/nixpkgs/pkgs/development/interpreters/scsh/default.nix
index ce44624497da..b57cc64fb8d7 100644
--- a/nixpkgs/pkgs/development/interpreters/scsh/default.nix
+++ b/nixpkgs/pkgs/development/interpreters/scsh/default.nix
@@ -1,14 +1,15 @@
-{ lib, stdenv, fetchgit, autoreconfHook, scheme48 }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, scheme48 }:
 
 stdenv.mkDerivation {
   pname = "scsh";
   version = "0.7pre";
 
-  src = fetchgit {
-    url = "git://github.com/scheme/scsh.git";
+  src = fetchFromGitHub {
+    owner = "scheme";
+    repo = "scsh";
     rev = "f99b8c5293628cfeaeb792019072e3a96841104f";
+    sha256 = "sha256-vcVtqoUhozdJq1beUN8/rcI2qOJYUN+0CPSiDWGCIjI=";
     fetchSubmodules = true;
-    sha256 = "0ci2h9hhv8pl12sdyl2qwal3dhmd7zgm1pjnmd4kg8r1hnm6vidx";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/nixpkgs/pkgs/development/interpreters/spidermonkey/78.nix b/nixpkgs/pkgs/development/interpreters/spidermonkey/78.nix
index 4f525c8f0a5b..f2a68158266b 100644
--- a/nixpkgs/pkgs/development/interpreters/spidermonkey/78.nix
+++ b/nixpkgs/pkgs/development/interpreters/spidermonkey/78.nix
@@ -15,7 +15,6 @@
 , rustc
 , rust-cbindgen
 , yasm
-, llvmPackages_12
 , nspr
 }:
 
@@ -52,7 +51,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     autoconf213
     cargo
-    llvmPackages_12.llvm # for llvm-objdump
+    rustc.llvmPackages.llvm # for llvm-objdump
     perl
     pkg-config
     python3
diff --git a/nixpkgs/pkgs/development/interpreters/spidermonkey/91.nix b/nixpkgs/pkgs/development/interpreters/spidermonkey/91.nix
index 811a0247a57d..fede01c0ada7 100644
--- a/nixpkgs/pkgs/development/interpreters/spidermonkey/91.nix
+++ b/nixpkgs/pkgs/development/interpreters/spidermonkey/91.nix
@@ -13,7 +13,6 @@
 , rustc
 , rust-cbindgen
 , yasm
-, llvmPackages_latest
 , nspr
 , m4
 }:
@@ -32,7 +31,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     cargo
-    llvmPackages_latest.llvm # for llvm-objdump
+    rustc.llvmPackages.llvm # for llvm-objdump
     perl
     pkg-config
     python3
diff --git a/nixpkgs/pkgs/development/java-modules/maven-fod.nix b/nixpkgs/pkgs/development/java-modules/maven-fod.nix
new file mode 100644
index 000000000000..24ce572af574
--- /dev/null
+++ b/nixpkgs/pkgs/development/java-modules/maven-fod.nix
@@ -0,0 +1,56 @@
+{ lib
+, stdenv
+, maven
+}:
+
+{ src
+, patches ? []
+, pname
+, version
+, mvnSha256 ? "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="
+, mvnHash ? "sha256-${mvnSha256}"
+, mvnFetchExtraArgs ? {}
+, mvnParameters ? ""
+, ...
+} @args:
+
+# originally extracted from dbeaver
+# created to allow using maven packages in the same style as rust
+
+stdenv.mkDerivation (rec {
+  fetchedMavenDeps = stdenv.mkDerivation ({
+    name = "${pname}-${version}-maven-deps";
+    inherit src;
+
+    buildInputs = [
+      maven
+    ];
+
+    buildPhase = ''
+      mvn package -Dmaven.repo.local=$out/.m2 ${mvnParameters}
+    '';
+
+    # keep only *.{pom,jar,sha1,nbm} and delete all ephemeral files with lastModified timestamps inside
+    installPhase = ''
+      find $out -type f \
+        -name \*.lastUpdated -or \
+        -name resolver-status.properties -or \
+        -name _remote.repositories \
+        -delete
+    '';
+
+    # don't do any fixup
+    dontFixup = true;
+    outputHashMode = "recursive";
+    outputHash = mvnHash;
+  } // mvnFetchExtraArgs);
+
+  buildPhase = ''
+    runHook preBuild
+
+    mvnDeps=$(cp -dpR ${fetchedMavenDeps}/.m2 ./ && chmod +w -R .m2 && pwd)
+    mvn package --offline "-Dmaven.repo.local=$mvnDeps/.m2" -P desktop,all-platforms
+
+    runHook postBuild
+  '';
+} // args)
diff --git a/nixpkgs/pkgs/development/libraries/CGAL/4.nix b/nixpkgs/pkgs/development/libraries/CGAL/4.nix
index 7380a85248fe..9c0305ec077d 100644
--- a/nixpkgs/pkgs/development/libraries/CGAL/4.nix
+++ b/nixpkgs/pkgs/development/libraries/CGAL/4.nix
@@ -18,18 +18,14 @@ stdenv.mkDerivation rec {
     (fetchpatch {
       name = "gcc-12-prereq.patch";
       url = "https://github.com/CGAL/cgal/commit/4581f1b7a8e97d1a136830e64b77cdae3546c4bf.patch";
-      sha256 = "1gzrvbrwxylv80v0m3j2s1znlysmr69lp3ggagnh38lp6423i6pq";
-      # Upstream slightly reordered directory structure since.
-      stripLen = 1;
-      # Fill patch does not apply: touches too many parts of the source.
-      includes = [ "include/CGAL/CORE/BigFloatRep.h" ];
+      relative = "CGAL_Core"; # Upstream slightly reordered directory structure since.
+      sha256 = "sha256-4+7mzGSBwAv5RHBQPAecPPKNN/LQBgvYq5mq+fHAteo=";
     })
     (fetchpatch {
       name = "gcc-12.patch";
       url = "https://github.com/CGAL/cgal/commit/6680a6e6f994b2c5b9f068eb3014d12ee1134d53.patch";
-      sha256 = "1c0h1lh8zng60yx78qc8wx714b517mil8mac87v6xr21q0b11wk7";
-      # Upstream slightly reordered directory structure since.
-      stripLen = 1;
+      relative = "CGAL_Core"; # Upstream slightly reordered directory structure since.
+      sha256 = "sha256-8kxJDT47jXI9kQNFI/ARWl9JBNS4AfU57/D0tYlgW0M=";
     })
   ];
 
diff --git a/nixpkgs/pkgs/development/libraries/LAStools/default.nix b/nixpkgs/pkgs/development/libraries/LAStools/default.nix
index d38fa0609d86..80641446d4d0 100644
--- a/nixpkgs/pkgs/development/libraries/LAStools/default.nix
+++ b/nixpkgs/pkgs/development/libraries/LAStools/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "LAStools";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "LAStools";
     repo = "LAStools";
     rev = "v${version}";
-    sha256 = "19y49j5af3z3fsiknq9kg9yjcsr73ywng8dfy837y97q4shc9g00";
+    sha256 = "sha256-Mxic/zLk/qkB/rSlvkLZPgtNscrTrzSzrxiqXAMeDVU=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/SDL2_sound/default.nix b/nixpkgs/pkgs/development/libraries/SDL2_sound/default.nix
new file mode 100644
index 000000000000..3a2d05c31a10
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/SDL2_sound/default.nix
@@ -0,0 +1,48 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, fetchpatch
+, cmake
+, SDL2
+, flac
+, libmikmod
+, libvorbis
+, timidity
+, AudioToolbox
+, CoreAudio
+}:
+
+stdenv.mkDerivation rec {
+  pname = "SDL2_sound";
+  version = "2.0.1";
+
+  src = fetchFromGitHub {
+    owner = "icculus";
+    repo = "SDL_sound";
+    rev = "v${version}";
+    sha256 = "sha256-N2znqy58tMHgYa07vEsSedWLRhoJzDoINcsUu0UYLnA=";
+  };
+
+  patches = [
+    (fetchpatch {
+      # https://github.com/icculus/SDL_sound/pull/32 - fix build on darwin
+      # can be dropped on the next update
+      url = "https://github.com/icculus/SDL_sound/commit/c15d75b7720113b28639baad284f45f943846294.patch";
+      sha256 = "sha256-4GL8unsZ7eNkzjLXq9QdaxFQMzX2tdP0cBR1jTaRLc0=";
+    })
+  ];
+
+  nativeBuildInputs = [ cmake ];
+
+  cmakeFlags = [ "-DSDLSOUND_DECODER_MIDI=1" ];
+
+  buildInputs = [ SDL2 flac libmikmod libvorbis timidity ]
+    ++ lib.optionals stdenv.isDarwin [ AudioToolbox CoreAudio ];
+
+  meta = with lib; {
+    description = "SDL2 sound library";
+    platforms = platforms.unix;
+    license = licenses.zlib;
+    homepage = "https://www.icculus.org/SDL_sound/";
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix b/nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix
index 66b0c13646b5..675c930d9edd 100644
--- a/nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix
+++ b/nixpkgs/pkgs/development/libraries/at-spi2-core/default.nix
@@ -1,48 +1,66 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchurl
-
 , meson
 , ninja
 , pkg-config
 , gobject-introspection
 , gsettings-desktop-schemas
 , makeWrapper
-
 , dbus
 , glib
 , dconf
 , libX11
-, libXtst # at-spi2-core can be build without X support, but due it is a client-side library, GUI-less usage is a very rare case
+, libXtst
 , libXi
 , libXext
-
-, gnome # To pass updateScript
+, gnome
 }:
 
 stdenv.mkDerivation rec {
   pname = "at-spi2-core";
-  version = "2.42.0";
+  version = "2.44.0";
+
+  outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "11p3lvmbm0hfck3p5xwxxycln8x0cf7l68jjz6an2g7sjh7a2pab";
+    sha256 = "fu488oWwiQYP1rblGz6yys91LMo6CCx/TCxauEHlE1M=";
   };
 
-  outputs = [ "out" "dev" ];
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    gobject-introspection
+    makeWrapper
+  ];
+
+  buildInputs = [
+    libX11
+    # at-spi2-core can be build without X support, but due it is a client-side library, GUI-less usage is a very rare case
+    libXtst
+    libXi
+    # libXext is a transitive dependency of libXi
+    libXext
+  ];
 
-  nativeBuildInputs = [ meson ninja pkg-config gobject-introspection makeWrapper ];
-  # libXext is a transitive dependency of libXi
-  buildInputs = [ libX11 libXtst libXi libXext ];
   # In atspi-2.pc dbus-1 glib-2.0
-  propagatedBuildInputs = [ dbus glib ];
+  propagatedBuildInputs = [
+    dbus
+    glib
+  ];
 
-  doCheck = false; # fails with "AT-SPI: Couldn't connect to accessibility bus. Is at-spi-bus-launcher running?"
+  # fails with "AT-SPI: Couldn't connect to accessibility bus. Is at-spi-bus-launcher running?"
+  doCheck = false;
 
-  # Provide dbus-daemon fallback when it is not already running when
-  # at-spi2-bus-launcher is executed. This allows us to avoid
-  # including the entire dbus closure in libraries linked with
-  # the at-spi2-core libraries.
-  mesonFlags = [ "-Ddbus_daemon=/run/current-system/sw/bin/dbus-daemon" ];
+  mesonFlags = [
+    # Provide dbus-daemon fallback when it is not already running when
+    # at-spi2-bus-launcher is executed. This allows us to avoid
+    # including the entire dbus closure in libraries linked with
+    # the at-spi2-core libraries.
+    "-Ddbus_daemon=/run/current-system/sw/bin/dbus-daemon"
+  ];
 
   passthru = {
     updateScript = gnome.updateScript {
diff --git a/nixpkgs/pkgs/development/libraries/audio/lv2/default.nix b/nixpkgs/pkgs/development/libraries/audio/lv2/default.nix
index 616ad5b0c892..d0ef2e65c598 100644
--- a/nixpkgs/pkgs/development/libraries/audio/lv2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/audio/lv2/default.nix
@@ -1,24 +1,50 @@
-{ lib, stdenv, fetchurl, gtk2, libsndfile, pkg-config, python3, wafHook }:
+{ stdenv
+, lib
+, fetchurl
+, libsndfile
+, pkg-config
+, python3
+, wafHook
+, pipewire
+}:
 
 stdenv.mkDerivation rec {
   pname = "lv2";
   version = "1.18.2";
 
+  outputs = [ "out" "dev" ];
+
   src = fetchurl {
     url = "https://lv2plug.in/spec/${pname}-${version}.tar.bz2";
     sha256 = "sha256-TokfvHRMBYVb6136gugisUkX3Wbpj4K4Iw29HHqy4F4=";
   };
 
-  nativeBuildInputs = [ pkg-config wafHook ];
-  buildInputs = [ gtk2 libsndfile python3 ];
+  nativeBuildInputs = [
+    pkg-config
+    wafHook
+  ];
+
+  buildInputs = [
+    libsndfile
+    python3
+  ];
 
-  wafConfigureFlags = lib.optionals stdenv.isDarwin [ "--lv2dir=${placeholder "out"}/lib/lv2" ];
+  wafConfigureFlags = [
+    "--includedir=${placeholder "dev"}/include"
+    "--bindir=${placeholder "dev"}/bin"
+  ] ++ lib.optionals stdenv.isDarwin [
+    "--lv2dir=${placeholder "out"}/lib/lv2"
+  ];
+
+  passthru.tests = {
+    inherit pipewire;
+  };
 
   meta = with lib; {
     homepage = "https://lv2plug.in";
     description = "A plugin standard for audio systems";
     license = licenses.mit;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = with maintainers; [ goibhniu ];
     platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix b/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix
index c4abb634ca86..869f38622418 100644
--- a/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix
+++ b/nixpkgs/pkgs/development/libraries/bctoolbox/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "bctoolbox";
-  version = "5.1.0";
+  version = "5.1.12";
 
   nativeBuildInputs = [ cmake bcunit ];
   buildInputs = [ mbedtls ];
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "sha256-h+JeyZSXCuV6MtOrWxvpg7v3BXks5T70Cy2gP+If0A8=";
+    sha256 = "sha256-tmZ1XC8z4NUww58pvvqxZifOxFNXSrEBMY2biCJ55XM=";
   };
 
   # Do not build static libraries
diff --git a/nixpkgs/pkgs/development/libraries/belcard/default.nix b/nixpkgs/pkgs/development/libraries/belcard/default.nix
index 12253427424b..740dbeee6487 100644
--- a/nixpkgs/pkgs/development/libraries/belcard/default.nix
+++ b/nixpkgs/pkgs/development/libraries/belcard/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "belcard";
-  version = "5.0.55";
+  version = "5.1.10";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "sha256-5KHmyNplrVADVlD2IBPwEe3vbEjAMNlz+p5aIBHb6kI=";
+    sha256 = "sha256-ZxO0Y4R04T+3K+08fEJ9krWfYSodQLrjBZYbGrKOrXI=";
   };
 
   buildInputs = [ bctoolbox belr ];
diff --git a/nixpkgs/pkgs/development/libraries/belr/default.nix b/nixpkgs/pkgs/development/libraries/belr/default.nix
index c841b6d3e482..05d6573beb8a 100644
--- a/nixpkgs/pkgs/development/libraries/belr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/belr/default.nix
@@ -6,7 +6,7 @@
 
 stdenv.mkDerivation rec {
   pname = "belr";
-  version = "5.0.55";
+  version = "5.1.3";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "sha256-P3oDlaT3rN1lRhpKjbGBk7a0hJAQGQcWydFM45GMUU4=";
+    sha256 = "sha256-0JDwNKqPkzbXqDhgMV+okPMHPFJwmLwLsDrdD55Jcs4=";
   };
 
   buildInputs = [ bctoolbox ];
diff --git a/nixpkgs/pkgs/development/libraries/boost/generic.nix b/nixpkgs/pkgs/development/libraries/boost/generic.nix
index bad87fba8c64..c0fce3ae5760 100644
--- a/nixpkgs/pkgs/development/libraries/boost/generic.nix
+++ b/nixpkgs/pkgs/development/libraries/boost/generic.nix
@@ -126,14 +126,19 @@ stdenv.mkDerivation {
     stripLen = 1;
     extraPrefix = "libs/context/";
   })
+  # Fix compiler warning with GCC >= 8; TODO: patch may apply to older versions
+  ++ optional (versionAtLeast version "1.65" && versionOlder version "1.67")
+    (fetchpatch {
+      url = "https://github.com/boostorg/mpl/commit/f48fd09d021db9a28bd7b8452c175897e1af4485.patch";
+      sha256 = "15d2a636hhsb1xdyp44x25dyqfcaws997vnp9kl1mhzvxjzz7hb0";
+      stripLen = 1;
+    })
   ++ optional (and (versionAtLeast version "1.70") (!versionAtLeast version "1.73")) ./cmake-paths.patch
   ++ optional (versionAtLeast version "1.73") ./cmake-paths-173.patch
   ++ optional (version == "1.77.0") (fetchpatch {
     url = "https://github.com/boostorg/math/commit/7d482f6ebc356e6ec455ccb5f51a23971bf6ce5b.patch";
+    relative = "include";
     sha256 = "sha256-KlmIbixcds6GyKYt1fx5BxDIrU7msrgDdYo9Va/KJR4=";
-    stripLen = 2;
-    extraPrefix = "";
-    includes = [ "boost/math/special_functions/detail/bernoulli_details.hpp" ];
   });
 
   meta = {
diff --git a/nixpkgs/pkgs/development/libraries/capnproto/default.nix b/nixpkgs/pkgs/development/libraries/capnproto/default.nix
index cda5f005f9a2..75b5f14d67ce 100644
--- a/nixpkgs/pkgs/development/libraries/capnproto/default.nix
+++ b/nixpkgs/pkgs/development/libraries/capnproto/default.nix
@@ -21,6 +21,9 @@ stdenv.mkDerivation rec {
 
   cmakeFlags = lib.optional (!(stdenv.hostPlatform.isCompatible stdenv.buildPlatform)) "-DEXTERNAL_CAPNP";
 
+  # Upstream 77ac9154440bcc216fda1092fd5bb51da62ae09c, modified to apply to v0.9.1.  Drop on update.
+  patches = lib.optional stdenv.hostPlatform.isMusl ./musl-no-fibers.patch;
+
   meta = with lib; {
     homepage    = "https://capnproto.org/";
     description = "Cap'n Proto cerealization protocol";
diff --git a/nixpkgs/pkgs/development/libraries/capnproto/musl-no-fibers.patch b/nixpkgs/pkgs/development/libraries/capnproto/musl-no-fibers.patch
new file mode 100644
index 000000000000..bb7804fb0abb
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/capnproto/musl-no-fibers.patch
@@ -0,0 +1,244 @@
+From 3d983eff304c28574c330a52d70a60145c9e157e Mon Sep 17 00:00:00 2001
+From: Jonas Vautherin <jonas.vautherin@gmail.com>
+Date: Fri, 14 Jan 2022 00:14:26 +0100
+Subject: [PATCH] Add support for musl
+
+---
+Based on upstream 77ac9154440bcc216fda1092fd5bb51da62ae09c,
+modified slightly by dtzWill to apply to v0.9.1.
+
+(drop whitespace change to a cmake "if (WITH_OPENSSL)",
+leave the other instance of that change since it applies)
+---
+
+Co-authored-by: Guillaume Papin <guillaume.papin@epitech.eu>
+(cherry picked from commit 77ac9154440bcc216fda1092fd5bb51da62ae09c)
+---
+ .github/workflows/quick-test.yml   |  9 ++++++
+ c++/CMakeLists.txt                 | 46 ++++++++++++++++++++++++++++-
+ c++/cmake/CapnProtoConfig.cmake.in | 32 ++++++++++++++++++++
+ c++/configure.ac                   | 47 ++++++++++++++++++++++++++++--
+ c++/src/kj/CMakeLists.txt          | 11 ++++++-
+ 5 files changed, 141 insertions(+), 4 deletions(-)
+
+diff --git a/.github/workflows/quick-test.yml b/.github/workflows/quick-test.yml
+index c18ef6a6..773ff043 100644
+--- a/.github/workflows/quick-test.yml
++++ b/.github/workflows/quick-test.yml
+@@ -10,6 +10,15 @@ on:
+     - 'release-*'
+ 
+ jobs:
++  Linux-musl:
++    runs-on: ubuntu-latest
++    container: alpine:latest
++    steps:
++      - uses: actions/checkout@v2
++      - name: install dependencies
++        run: apk add autoconf automake build-base cmake libtool libucontext-dev linux-headers openssl-dev
++      - name: super-test
++        run: ./super-test.sh quick
+   Linux:
+     runs-on: ubuntu-latest
+     strategy:
+diff --git a/c++/CMakeLists.txt b/c++/CMakeLists.txt
+index 548dfd1f..5de7ab26 100644
+--- a/c++/CMakeLists.txt
++++ b/c++/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-cmake_minimum_required(VERSION 3.4)
++cmake_minimum_required(VERSION 3.6)
+ project("Cap'n Proto" CXX)
+ set(VERSION 0.9.1)
+ 
+@@ -64,6 +64,50 @@ elseif (WITH_OPENSSL)
+   find_package(OpenSSL REQUIRED COMPONENTS Crypto SSL)
+ endif()
+ 
++set(WITH_FIBERS "AUTO" CACHE STRING
++  "Whether or not to build libkj-async with fibers")
++# define list of values GUI will offer for the variable
++set_property(CACHE WITH_FIBERS PROPERTY STRINGS AUTO ON OFF)
++
++# CapnProtoConfig.cmake.in needs this variable.
++set(_WITH_LIBUCONTEXT OFF)
++
++if (WITH_FIBERS OR WITH_FIBERS STREQUAL "AUTO")
++  set(_capnp_fibers_found OFF)
++  if (WIN32 OR CYGWIN)
++    set(_capnp_fibers_found ON)
++  else()
++    # Fibers need makecontext, setcontext, getcontext, swapcontext that may be in libc,
++    # or in libucontext (e.g. for musl).
++    # We assume that makecontext implies that the others are present.
++    include(CheckLibraryExists)
++    check_library_exists(c makecontext "" HAVE_UCONTEXT_LIBC)
++    if (HAVE_UCONTEXT_LIBC)
++      set(_capnp_fibers_found ON)
++    else()
++      # Try with libucontext
++      find_package(PkgConfig)
++      if (PKG_CONFIG_FOUND)
++        pkg_check_modules(libucontext IMPORTED_TARGET libucontext)
++        if (libucontext_FOUND)
++          set(_WITH_LIBUCONTEXT ON)
++          set(_capnp_fibers_found ON)
++        endif()
++      else()
++        set(_capnp_fibers_found OFF)
++      endif()
++    endif()
++  endif()
++
++  if (_capnp_fibers_found)
++    set(WITH_FIBERS ON)
++  elseif(WITH_FIBERS STREQUAL "AUTO")
++    set(WITH_FIBERS OFF)
++  else()
++    message(FATAL_ERROR "Missing 'makecontext', 'getcontext', 'setcontext' or 'swapcontext' symbol in libc and no libucontext found: KJ won't be able to build with fibers. Disable fibers (-DWITH_FIBERS=OFF).")
++  endif()
++endif()
++
+ if(MSVC)
+   # TODO(cleanup): Enable higher warning level in MSVC, but make sure to test
+   #   build with that warning level and clean out false positives.
+diff --git a/c++/cmake/CapnProtoConfig.cmake.in b/c++/cmake/CapnProtoConfig.cmake.in
+index 667f502f..0580b11a 100644
+--- a/c++/cmake/CapnProtoConfig.cmake.in
++++ b/c++/cmake/CapnProtoConfig.cmake.in
+@@ -62,6 +62,38 @@ if (@WITH_OPENSSL@)  # WITH_OPENSSL
+   endif()
+ endif()
+ 
++if (@_WITH_LIBUCONTEXT@) # _WITH_LIBUCONTEXT
++  set(forwarded_config_flags)
++  if(CapnProto_FIND_QUIETLY)
++    list(APPEND forwarded_config_flags QUIET)
++  endif()
++  if(CapnProto_FIND_REQUIRED)
++    list(APPEND forwarded_config_flags REQUIRED)
++  endif()
++  # If the consuming project called find_package(CapnProto) with the QUIET or REQUIRED flags, forward
++  # them to calls to find_package(PkgConfig) and pkg_check_modules(). Note that find_dependency()
++  # would do this for us in the former case, but there is no such forwarding wrapper for
++  # pkg_check_modules().
++
++  find_package(PkgConfig ${forwarded_config_flags})
++  if(NOT ${PkgConfig_FOUND})
++    # If we're here, the REQUIRED flag must not have been passed, else we would have had a fatal
++    # error. Nevertheless, a diagnostic for this case is probably nice.
++    if(NOT CapnProto_FIND_QUIETLY)
++      message(WARNING "pkg-config cannot be found")
++    endif()
++    set(CapnProto_FOUND OFF)
++    return()
++  endif()
++
++  if (CMAKE_VERSION VERSION_LESS 3.6)
++    # CMake >= 3.6 required due to the use of IMPORTED_TARGET
++    message(SEND_ERROR "libucontext support requires CMake >= 3.6.")
++  endif()
++
++  pkg_check_modules(libucontext IMPORTED_TARGET ${forwarded_config_flags} libucontext)
++endif()
++
+ include("${CMAKE_CURRENT_LIST_DIR}/CapnProtoTargets.cmake")
+ include("${CMAKE_CURRENT_LIST_DIR}/CapnProtoMacros.cmake")
+ 
+diff --git a/c++/configure.ac b/c++/configure.ac
+index 72fe8456..b627bec8 100644
+--- a/c++/configure.ac
++++ b/c++/configure.ac
+@@ -32,6 +32,11 @@ AC_ARG_WITH([openssl],
+     [build libkj-tls by linking against openssl @<:@default=check@:>@])],
+   [],[with_openssl=check])
+ 
++AC_ARG_WITH([fibers],
++  [AS_HELP_STRING([--with-fibers],
++    [build libkj-async with fibers @<:@default=check@:>@])],
++  [],[with_fibers=check])
++
+ AC_ARG_ENABLE([reflection], [
+   AS_HELP_STRING([--disable-reflection], [
+     compile Cap'n Proto in "lite mode", in which all reflection APIs (schema.h, dynamic.h, etc.)
+@@ -195,8 +200,46 @@ AS_IF([test "$with_openssl" != no], [
+ ])
+ AM_CONDITIONAL([BUILD_KJ_TLS], [test "$with_openssl" != no])
+ 
+-# CapnProtoConfig.cmake.in needs this variable.
+-AC_SUBST(WITH_OPENSSL, $with_openssl)
++# Fibers need the symbols getcontext, setcontext, swapcontext and makecontext.
++# We assume that makecontext implies the rest.
++AS_IF([test "$with_fibers" != no], [
++  libc_supports_fibers=yes
++  AC_SEARCH_LIBS([makecontext], [], [], [
++    libc_supports_fibers=no
++  ])
++
++  AS_IF([test "$libc_supports_fibers" = yes], [
++      with_fibers=yes
++    ], [
++    # If getcontext does not exist in libc, try with libucontext
++    ucontext_supports_fibers=yes
++    AC_CHECK_LIB(ucontext, [makecontext], [], [
++      ucontext_supports_fibers=no
++    ])
++    AS_IF([test "$ucontext_supports_fibers" = yes], [
++      ASYNC_LIBS="$ASYNC_LIBS -lucontext"
++      with_fibers=yes
++    ], [
++      AS_IF([test "$with_fibers" = yes], [
++        AC_MSG_ERROR([Missing symbols required for fibers (makecontext, setcontext, ...). Disable fibers (--without-fibers) or install libucontext])
++      ], [
++        AC_MSG_WARN([could not find required symbols (makecontext, setcontext, ...) -- won't build with fibers])
++        with_fibers=no
++      ])
++    ])
++  ])
++])
++AS_IF([test "$with_fibers" = yes], [
++  CXXFLAGS="$CXXFLAGS -DKJ_USE_FIBERS"
++], [
++  CXXFLAGS="$CXXFLAGS -DKJ_USE_FIBERS=0"
++])
++
++# CapnProtoConfig.cmake.in needs these variables,
++# we force them to NO because we don't need the CMake dependency for them,
++# the dependencies are provided by the .pc files.
++AC_SUBST(WITH_OPENSSL, NO)
++AC_SUBST(_WITH_LIBUCONTEXT, NO)
+ 
+ AM_CONDITIONAL([HAS_FUZZING_ENGINE], [test "x$LIB_FUZZING_ENGINE" != "x"])
+ 
+diff --git a/c++/src/kj/CMakeLists.txt b/c++/src/kj/CMakeLists.txt
+index 813fac4d..f7b4dddf 100644
+--- a/c++/src/kj/CMakeLists.txt
++++ b/c++/src/kj/CMakeLists.txt
+@@ -136,6 +136,15 @@ if(NOT CAPNP_LITE)
+   add_library(kj-async ${kj-async_sources})
+   add_library(CapnProto::kj-async ALIAS kj-async)
+   target_link_libraries(kj-async PUBLIC kj)
++  if(WITH_FIBERS)
++    target_compile_definitions(kj-async PUBLIC KJ_USE_FIBERS)
++    if(_WITH_LIBUCONTEXT)
++      target_link_libraries(kj-async PUBLIC PkgConfig::libucontext)
++    endif()
++  else()
++    target_compile_definitions(kj-async PUBLIC KJ_USE_FIBERS=0)
++  endif()
++
+   if(UNIX)
+     # external clients of this library need to link to pthreads
+     target_compile_options(kj-async INTERFACE "-pthread")
+@@ -181,7 +190,7 @@ if(NOT CAPNP_LITE)
+   add_library(kj-tls ${kj-tls_sources})
+   add_library(CapnProto::kj-tls ALIAS kj-tls)
+   target_link_libraries(kj-tls PUBLIC kj-async)
+-  if (WITH_OPENSSL)
++  if(WITH_OPENSSL)
+     target_compile_definitions(kj-tls PRIVATE KJ_HAS_OPENSSL)
+     target_link_libraries(kj-tls PRIVATE OpenSSL::SSL OpenSSL::Crypto)
+   endif()
+-- 
+2.35.1
+
diff --git a/nixpkgs/pkgs/development/libraries/cglm/default.nix b/nixpkgs/pkgs/development/libraries/cglm/default.nix
index dfc9f81edb62..50a9bf62c54b 100644
--- a/nixpkgs/pkgs/development/libraries/cglm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/cglm/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cglm";
-  version = "0.8.4";
+  version = "0.8.5";
 
   src = fetchFromGitHub {
     owner = "recp";
     repo = "cglm";
     rev = "v${version}";
-    sha256 = "sha256-AJK1M6iyYdL61pZQhbUWzf+YOUE5FEvUyKqxbQqc7H0=";
+    sha256 = "sha256-PJHDZXc0DD/d+K/4uouv5F8gAf1sE5e3jLkGILPMpnI=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/clearsilver/default.nix b/nixpkgs/pkgs/development/libraries/clearsilver/default.nix
deleted file mode 100644
index 1a3e261c60ed..000000000000
--- a/nixpkgs/pkgs/development/libraries/clearsilver/default.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ lib, stdenv, fetchurl, fetchpatch, python2 }:
-
-stdenv.mkDerivation rec {
-  pname = "clearsilver";
-  version = "0.10.5";
-
-  src = fetchurl {
-    url = "http://www.clearsilver.net/downloads/clearsilver-${version}.tar.gz";
-    sha256 = "1046m1dpq3nkgxbis2dr2x7hynmy51n64465q78d7pdgvqwa178y";
-  };
-
-  PYTHON_SITE = "${placeholder "out"}/${python2.sitePackages}";
-
-  configureFlags = [
-    "--with-python=${python2.interpreter}"
-    "--disable-apache"
-    "--disable-perl"
-    "--disable-ruby"
-    "--disable-java"
-    "--disable-csharp"
-  ];
-
-  preInstall = ''
-    mkdir -p $out
-    mkdir -p $out/${python2.sitePackages}
-  '';
-
-  patches = [
-    (fetchpatch {
-      url = "https://sources.debian.net/data/main/c/clearsilver/0.10.5-1.6/debian/patches/clang-gcc5.patch";
-      sha256 = "0d44v9jx0b6k8nvrhknd958i9rs59kdh73z0lb4f1mzi8if16c38";
-    })
-    (fetchpatch {
-      url = "https://sources.debian.net/data/main/c/clearsilver/0.10.5-1.6/debian/patches/CVE-2011-4357.diff";
-      sha256 = "1lfncavxdqckrz03gv97lcliygbpi9lnih944vmdbn9zw6fwcipi";
-    })
-  ];
-
-  meta = with lib; {
-    description = "Fast, powerful, and language-neutral HTML template system";
-    homepage = "http://www.clearsilver.net/";
-    license = licenses.free;
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/cosmopolitan/default.nix b/nixpkgs/pkgs/development/libraries/cosmopolitan/default.nix
index 629e5465a044..ca303fdeaea3 100644
--- a/nixpkgs/pkgs/development/libraries/cosmopolitan/default.nix
+++ b/nixpkgs/pkgs/development/libraries/cosmopolitan/default.nix
@@ -1,68 +1,70 @@
-{ lib, gcc9Stdenv, fetchFromGitHub, runCommand, cosmopolitan }:
+{ lib, stdenv, fetchFromGitHub, runCommand, unzip, cosmopolitan,bintools-unwrapped }:
 
-gcc9Stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "cosmopolitan";
-  version = "0.3";
+  version = "unstable-2022-03-22";
 
   src = fetchFromGitHub {
     owner = "jart";
     repo = "cosmopolitan";
-    rev = version;
-    sha256 = "sha256-OVdOObO82W6JN63OWKHaERS7y0uvgxt+WLp6Y0LsmJk=";
+    rev = "5022f9e9207ff2b79ddd6de6d792d3280e12fb3a";
+    sha256 = "sha256-UjL4wR5HhuXiQXg6Orcx2fKiVGRPMJk15P779BP1fRA=";
   };
 
+  patches = [
+    ./ioctl.patch        # required /dev/tty
+  ];
+
   postPatch = ''
     patchShebangs build/
-    rm -r third_party/gcc
   '';
 
   dontConfigure = true;
   dontFixup = true;
   enableParallelBuilding = true;
-
-  preBuild = ''
-    makeFlagsArray=(
-      SHELL=/bin/sh
-      AS=${gcc9Stdenv.cc.targetPrefix}as
-      CC=${gcc9Stdenv.cc.targetPrefix}gcc
-      GCC=${gcc9Stdenv.cc.targetPrefix}gcc
-      CXX=${gcc9Stdenv.cc.targetPrefix}g++
-      LD=${gcc9Stdenv.cc.targetPrefix}ld
-      OBJCOPY=${gcc9Stdenv.cc.targetPrefix}objcopy
-      "MKDIR=mkdir -p"
-      )
-  '';
+  nativeBuildInputs = [ bintools-unwrapped unzip ];
 
   installPhase = ''
     runHook preInstall
-    mkdir -p $out/{bin,lib/include}
-    install o/cosmopolitan.h $out/lib/include
+    mkdir -p $out/{bin,include,lib}
+    install o/cosmopolitan.h $out/include
     install o/cosmopolitan.a o/libc/crt/crt.o o/ape/ape.{o,lds} $out/lib
+
     cat > $out/bin/cosmoc <<EOF
-    #!${gcc9Stdenv.shell}
-    exec ${gcc9Stdenv.cc}/bin/${gcc9Stdenv.cc.targetPrefix}gcc \
+    #!${stdenv.shell}
+    exec ${stdenv.cc}/bin/${stdenv.cc.targetPrefix}gcc \
       -O -static -nostdlib -nostdinc -fno-pie -no-pie -mno-red-zone \
       "\$@" \
-      -Wl,--oformat=binary -Wl,--gc-sections -Wl,-z,max-page-size=0x1000 \
+      -Wl,--gc-sections -Wl,-z,max-page-size=0x1000 \
       -fuse-ld=bfd -Wl,-T,$out/lib/ape.lds \
-      -include $out/lib/{include/cosmopolitan.h,crt.o,ape.o,cosmopolitan.a}
+      -include $out/include/cosmopolitan.h \
+      -I $out/include \
+      $out/lib/{crt.o,ape.o,cosmopolitan.a}
     EOF
     chmod +x $out/bin/cosmoc
+
+    pushd o
+    find -iname "*.com" -type f -exec install -D {} $out/{} \;
+    popd
+    find -iname "*.h" -type f -exec install -m644 -D {} $out/include/{} \;
+    find -iname "*.inc" -type f -exec install -m644 -D {} $out/include/{} \;
     runHook postInstall
   '';
 
-  passthru.tests = lib.optional (gcc9Stdenv.buildPlatform == gcc9Stdenv.hostPlatform) {
+  passthru.tests = lib.optionalAttrs (stdenv.buildPlatform == stdenv.hostPlatform) {
     hello = runCommand "hello-world" { } ''
-      printf 'main() { printf("hello world\\n"); }\n' >hello.c
-      ${gcc9Stdenv.cc}/bin/gcc -g -O -static -nostdlib -nostdinc -fno-pie -no-pie -mno-red-zone -o hello.com.dbg hello.c \
+      printf '#include "libc/stdio/stdio.h"\nmain() { printf("hello world\\n"); }\n' >hello.c
+      ${stdenv.cc}/bin/gcc -g -O -static -nostdlib -nostdinc -fno-pie -no-pie -mno-red-zone -o hello.com.dbg hello.c \
         -fuse-ld=bfd -Wl,-T,${cosmopolitan}/lib/ape.lds \
-        -include ${cosmopolitan}/lib/{include/cosmopolitan.h,crt.o,ape.o,cosmopolitan.a}
-      ${gcc9Stdenv.cc.bintools.bintools_bin}/bin/objcopy -S -O binary hello.com.dbg hello.com
+        -include ${cosmopolitan}/include/cosmopolitan.h \
+        -I ${cosmopolitan}/include \
+        ${cosmopolitan}/lib/{crt.o,ape.o,cosmopolitan.a}
+      ${stdenv.cc.bintools.bintools_bin}/bin/objcopy -S -O binary hello.com.dbg hello.com
       ./hello.com
       printf "test successful" > $out
     '';
     cosmoc = runCommand "cosmoc-hello" { } ''
-      printf 'main() { printf("hello world\\n"); }\n' >hello.c
+      printf '#include "libc/stdio/stdio.h"\nmain() { printf("hello world\\n"); }\n' >hello.c
       ${cosmopolitan}/bin/cosmoc hello.c
       ./a.out
       printf "test successful" > $out
diff --git a/nixpkgs/pkgs/development/libraries/cosmopolitan/ioctl.patch b/nixpkgs/pkgs/development/libraries/cosmopolitan/ioctl.patch
new file mode 100644
index 000000000000..e6e7eb4fc7b0
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/cosmopolitan/ioctl.patch
@@ -0,0 +1,12 @@
+diff --git a/third_party/python/python.mk b/third_party/python/python.mk
+index f18c15060..b17455bca 100644
+--- a/third_party/python/python.mk
++++ b/third_party/python/python.mk
+@@ -1818,7 +1818,6 @@ THIRD_PARTY_PYTHON_PYTEST_PYMAINS =						\
+ 	third_party/python/Lib/test/test_int_literal.py				\
+ 	third_party/python/Lib/test/test_bisect.py				\
+ 	third_party/python/Lib/test/test_pyexpat.py				\
+-	third_party/python/Lib/test/test_ioctl.py				\
+ 	third_party/python/Lib/test/test_getopt.py				\
+ 	third_party/python/Lib/test/test_sort.py				\
+ 	third_party/python/Lib/test/test_slice.py				\
diff --git a/nixpkgs/pkgs/development/libraries/crcpp/default.nix b/nixpkgs/pkgs/development/libraries/crcpp/default.nix
index 3b9f4f942acf..69b1864702c9 100644
--- a/nixpkgs/pkgs/development/libraries/crcpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/crcpp/default.nix
@@ -1,27 +1,27 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchFromGitHub
+, cmake
 }:
 
 stdenv.mkDerivation rec {
   pname = "crcpp";
-  version = "1.1.0.0";
+  version = "1.2.0.0";
 
   src = fetchFromGitHub {
     owner = "d-bahr";
     repo = "CRCpp";
     rev = "release-${version}";
-    sha256 = "sha256-jBvh4dHSFChxNPVgkGVHy3TXSExsfwdVUfsA8XB1cn8=";
+    sha256 = "sha256-OY8MF8fwr6k+ZSA/p1U+9GnTFoMSnUZxKVez+mda2tA=";
   };
 
-  dontBuild = true;
+  nativeBuildInputs = [ cmake ];
 
-  installPhase = ''
-    mkdir -p $out/include
-    cp inc/CRC.h $out/include
-  '';
+  doCheck = true;
 
   meta = with lib; {
     homepage = "https://github.com/d-bahr/CRCpp";
+    changelog = "https://github.com/d-bahr/CRCpp/releases/tag/release-${version}";
     description = "Easy to use and fast C++ CRC library";
     platforms = platforms.all;
     maintainers = [ maintainers.ivar ];
diff --git a/nixpkgs/pkgs/development/libraries/draco/default.nix b/nixpkgs/pkgs/development/libraries/draco/default.nix
index ecbd12521263..d35e9a229a56 100644
--- a/nixpkgs/pkgs/development/libraries/draco/default.nix
+++ b/nixpkgs/pkgs/development/libraries/draco/default.nix
@@ -1,35 +1,52 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, nix-update-script
 , cmake
 , python3
+, gtest
 , withAnimation ? true
 , withTranscoder ? true
+, eigen
+, ghc_filesystem
+, tinygltf
 }:
 
 let
   cmakeBool = b: if b then "ON" else "OFF";
 in
 stdenv.mkDerivation rec {
-  version = "1.5.0";
+  version = "1.5.2";
   pname = "draco";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "draco";
     rev = version;
-    hash = "sha256-BoJg2lZBPVVm6Nc0XK8QSISpe+B8tpgRg9PFncN4+fY=";
+    sha256 = "sha256-o6KQJFrnxx2kz6g3vXk1w435OmaJhAJjzsKM/gmVJ2M=";
     fetchSubmodules = true;
   };
 
+  buildInputs = [ gtest ]
+    ++ lib.optionals withTranscoder [ eigen ghc_filesystem tinygltf ];
+
   nativeBuildInputs = [ cmake python3 ];
 
   cmakeFlags = [
     "-DDRACO_ANIMATION_ENCODING=${cmakeBool withAnimation}"
-    "-DDRACO_TRANSCODER_SUPPORTED=${cmakeBool withTranscoder}"
+    "-DDRACO_GOOGLETEST_PATH=${gtest}"
     "-DBUILD_SHARED_LIBS=${cmakeBool true}"
+    "-DDRACO_TRANSCODER_SUPPORTED=${cmakeBool withTranscoder}"
+  ] ++ lib.optionals withTranscoder [
+    "-DDRACO_EIGEN_PATH=${eigen}/include/eigen3"
+    "-DDRACO_FILESYSTEM_PATH=${ghc_filesystem}"
+    "-DDRACO_TINYGLTF_PATH=${tinygltf}"
   ];
 
+  passthru.updateScript = nix-update-script {
+    attrPath = pname;
+  };
+
   meta = with lib; {
     description = "Library for compressing and decompressing 3D geometric meshes and point clouds";
     homepage = "https://google.github.io/draco/";
diff --git a/nixpkgs/pkgs/development/libraries/exiv2/default.nix b/nixpkgs/pkgs/development/libraries/exiv2/default.nix
index f352714d237c..7a79e597beb5 100644
--- a/nixpkgs/pkgs/development/libraries/exiv2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/exiv2/default.nix
@@ -52,6 +52,7 @@ stdenv.mkDerivation rec {
   cmakeFlags = [
     "-DEXIV2_ENABLE_NLS=ON"
     "-DEXIV2_BUILD_DOC=ON"
+    "-DEXIV2_ENABLE_BMFF=ON"
   ];
 
   buildFlags = [
diff --git a/nixpkgs/pkgs/development/libraries/ffmpeg-sixel/default.nix b/nixpkgs/pkgs/development/libraries/ffmpeg-sixel/default.nix
deleted file mode 100644
index daa03d0293a0..000000000000
--- a/nixpkgs/pkgs/development/libraries/ffmpeg-sixel/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, libsixel, yasm
-}:
-
-stdenv.mkDerivation {
-
-  pname = "ffmpeg-sixel";
-  version = "nightly-2.3.x";
-
-  src = fetchFromGitHub {
-    owner = "saitoha";
-    repo = "FFmpeg-SIXEL";
-    rev = "8566fdb8b7516b54aed58f329dc216e06fc10052";
-    sha256 = "00s2lggfdj2ibpngpyqqg7360p7yb69ys1ppg59yvv0m0mxk5x3k";
-  };
-
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [
-    libsixel
-    yasm
-  ];
-
-  configurePhase = ''
-    ./configure --enable-libsixel --prefix=$out
-  '';
-
-  postInstall = ''
-    mv $out/bin/ffmpeg $out/bin/ffmpeg-sixel
-  '';
-
-  meta = with lib; {
-    description = "A complete, cross-platform solution to record, convert and stream audio and video, extended to support console graphics";
-    homepage = "http://www.ffmpeg.org/";
-    license = licenses.lgpl3;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ vrthra ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/libraries/ffmpeg/3.4.nix b/nixpkgs/pkgs/development/libraries/ffmpeg/3.4.nix
deleted file mode 100644
index 25c0a12f731a..000000000000
--- a/nixpkgs/pkgs/development/libraries/ffmpeg/3.4.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ callPackage
-# Darwin frameworks
-, Cocoa, CoreMedia
-, ...
-}@args:
-
-callPackage ./generic.nix (rec {
-  version = branch;
-  branch = "3.4.8";
-  sha256 = "1d0r4yja2dkkyhdwx1migq46gsrcbajiv66263a5sq5bfr9dqkch";
-  darwinFrameworks = [ Cocoa CoreMedia ];
-  knownVulnerabilities = [
-    "CVE-2021-30123"
-  ];
-} // args)
diff --git a/nixpkgs/pkgs/development/libraries/ffmpeg/generic.nix b/nixpkgs/pkgs/development/libraries/ffmpeg/generic.nix
index e3b0534d2af9..4eb614d6e653 100644
--- a/nixpkgs/pkgs/development/libraries/ffmpeg/generic.nix
+++ b/nixpkgs/pkgs/development/libraries/ffmpeg/generic.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, buildPackages, fetchurl, pkg-config, addOpenGLRunpath, perl, texinfo, yasm
 , alsa-lib, bzip2, fontconfig, freetype, gnutls, libiconv, lame, libass, libogg
-, libssh, libtheora, libva, libdrm, libvorbis, libvpx, xz, libpulseaudio, soxr
+, libssh, libtheora, libva, libdrm, libvorbis, libvpx, xz, soxr
 , x264, x265, xvidcore, zimg, zlib, libopus, speex, nv-codec-headers, dav1d
 , srt ? null
 , openglSupport ? false, libGLU ? null, libGL ? null
@@ -19,7 +19,10 @@
 , Cocoa, darwinFrameworks ? [ Cocoa ]
 # Inherit generics
 , branch, sha256, version, patches ? [], knownVulnerabilities ? []
-, doCheck ? true, ...
+, doCheck ? true
+, pulseaudioSupport ? stdenv.isLinux
+, libpulseaudio
+, ...
 }:
 
 /* Maintainer notes:
@@ -149,7 +152,7 @@ stdenv.mkDerivation rec {
       (ifMinVer "2.2" (enableFeature openglSupport "opengl"))
       (ifMinVer "4.2" (enableFeature libmfxSupport "libmfx"))
       (ifMinVer "4.2" (enableFeature libaomSupport "libaom"))
-      (disDarwinOrArmFix (ifMinVer "0.9" "--enable-libpulse") "0.9" "--disable-libpulse")
+      (disDarwinOrArmFix (ifMinVer "0.9" (lib.optionalString pulseaudioSupport "--enable-libpulse")) "0.9" "--disable-libpulse")
       (ifMinVer "2.5" (if sdlSupport && reqMin "3.2" then "--enable-sdl2" else if sdlSupport then "--enable-sdl" else null)) # autodetected before 2.5, SDL1 support removed in 3.2 for SDL2
       (ifMinVer "1.2" "--enable-libsoxr")
       "--enable-libx264"
@@ -182,7 +185,7 @@ stdenv.mkDerivation rec {
     ++ optional libmfxSupport intel-media-sdk
     ++ optional libaomSupport libaom
     ++ optional vpxSupport libvpx
-    ++ optionals (!isDarwin && !isAarch32) [ libpulseaudio ] # Need to be fixed on Darwin and ARM
+    ++ optionals (!isDarwin && !isAarch32 && pulseaudioSupport) [ libpulseaudio ] # Need to be fixed on Darwin and ARM
     ++ optional ((isLinux || isFreeBSD) && !isAarch32) libva
     ++ optional ((isLinux || isFreeBSD) && !isAarch32) libdrm
     ++ optional isLinux alsa-lib
diff --git a/nixpkgs/pkgs/development/libraries/flatpak/default.nix b/nixpkgs/pkgs/development/libraries/flatpak/default.nix
index 88188f8d0ca4..c992a6b0dfa2 100644
--- a/nixpkgs/pkgs/development/libraries/flatpak/default.nix
+++ b/nixpkgs/pkgs/development/libraries/flatpak/default.nix
@@ -53,14 +53,14 @@
 
 stdenv.mkDerivation rec {
   pname = "flatpak";
-  version = "1.12.6";
+  version = "1.12.7";
 
   # TODO: split out lib once we figure out what to do with triggerdir
   outputs = [ "out" "dev" "man" "doc" "devdoc" "installedTests" ];
 
   src = fetchurl {
     url = "https://github.com/flatpak/flatpak/releases/download/${version}/${pname}-${version}.tar.xz";
-    sha256 = "7wLLUFuRzOUXMJm1SFdo7vGJnrzznt+CfEJUFjqBFic="; # Taken from https://github.com/flatpak/flatpak/releases/
+    sha256 = "sha256-bbUqUxzieCgqx+v7mfZqC7PsyvROhkhEwslcHuW6kxY="; # Taken from https://github.com/flatpak/flatpak/releases/
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/folks/default.nix b/nixpkgs/pkgs/development/libraries/folks/default.nix
index 965016e1c740..f6161535df5d 100644
--- a/nixpkgs/pkgs/development/libraries/folks/default.nix
+++ b/nixpkgs/pkgs/development/libraries/folks/default.nix
@@ -35,13 +35,13 @@
 
 stdenv.mkDerivation rec {
   pname = "folks";
-  version = "0.15.4";
+  version = "0.15.5";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "5xCZr8noj61OdXrhNLw/1j4SuQGtYrDtVTavt5Ekr18=";
+    sha256 = "D/+KiWMwzYKu5FmDJPflQciE0DN1NiEnI7S+s4x1kIY=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/gcr/default.nix b/nixpkgs/pkgs/development/libraries/gcr/default.nix
index 9c97faaa45cb..b277a52a6583 100644
--- a/nixpkgs/pkgs/development/libraries/gcr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gcr/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv
 , fetchurl
+, fetchpatch
 , pkg-config
 , meson
 , ninja
@@ -34,6 +35,16 @@ stdenv.mkDerivation rec {
     sha256 = "CQn8SeqK1IMtJ1ZP8v0dxmZpbioHxzlBxIgp5gVy2gE=";
   };
 
+  patches = [
+    # Pull upstream fix for meson-0.60:
+    #  https://gitlab.gnome.org/GNOME/gcr/-/merge_requests/81
+    (fetchpatch {
+      name = "meson-0.60.patch";
+      url = "https://gitlab.gnome.org/GNOME/gcr/-/commit/b3ca1d02bb0148ca787ac4aead164d7c8ce2c4d8.patch";
+      sha256 = "15gwxkcm5q5p87p5lrqwgykpzx5gmk179xd3481yak93yhbvy165";
+    })
+  ];
+
   nativeBuildInputs = [
     pkg-config
     meson
diff --git a/nixpkgs/pkgs/development/libraries/gdal/default.nix b/nixpkgs/pkgs/development/libraries/gdal/default.nix
index 3e5ae303dd77..bfa1c75b483f 100644
--- a/nixpkgs/pkgs/development/libraries/gdal/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gdal/default.nix
@@ -7,13 +7,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "gdal";
-  version = "3.4.1";
+  version = "3.4.2";
 
   src = fetchFromGitHub {
     owner = "OSGeo";
     repo = "gdal";
     rev = "v${version}";
-    sha256 = "11rjdaxmsp9n3r9xhmgd7ksy8bh5fazwsxdj0xvl4hsy6bcn4n97";
+    sha256 = "sha256-bE55VV0SrG8nxCLdpODRalnuAkn+olRdMLUjduavj6M=";
   };
 
   sourceRoot = "source/gdal";
diff --git a/nixpkgs/pkgs/development/libraries/gdcm/default.nix b/nixpkgs/pkgs/development/libraries/gdcm/default.nix
index 708d3c67db35..de7bf815b044 100644
--- a/nixpkgs/pkgs/development/libraries/gdcm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gdcm/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gdcm";
-  version = "3.0.10";
+  version = "3.0.11";
 
   src = fetchFromGitHub {
     owner = "malaterre";
     repo = "GDCM";
     rev = "v${version}";
-    sha256 = "sha256-KFN13kGE0E8gQBgtErvkW7Fa+3YYqQh0RA2bPS90WUI=";
+    sha256 = "sha256-rGR0yQImLG3kBp6/QoEMLFrFtgAIN6y9lZ3OmtAUVcY=";
   };
 
   cmakeFlags = [
diff --git a/nixpkgs/pkgs/development/libraries/gdk-pixbuf/default.nix b/nixpkgs/pkgs/development/libraries/gdk-pixbuf/default.nix
index 3182a4b39988..1e9c881ae8ce 100644
--- a/nixpkgs/pkgs/development/libraries/gdk-pixbuf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gdk-pixbuf/default.nix
@@ -28,7 +28,7 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "gdk-pixbuf";
-  version = "2.42.6";
+  version = "2.42.8";
 
   outputs = [ "out" "dev" "man" ]
     ++ lib.optional withGtkDoc "devdoc"
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0zz7pmw2z46g7mr1yjxbsdldd5pd03xbjc58inj8rxfqgrdvg9n4";
+    sha256 = "hKzqOsskEbKRNLMgFaWxqqYoRLGcSx74uJccawdZ9MY=";
   };
 
   patches = [
@@ -111,10 +111,6 @@ stdenv.mkDerivation rec {
     '' + lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) ''
       # We need to install 'loaders.cache' in lib/gdk-pixbuf-2.0/2.10.0/
       $dev/bin/gdk-pixbuf-query-loaders --update-cache
-    '' + lib.optionalString withGtkDoc ''
-      # So that devhelp can find this.
-      mkdir -p "$devdoc/share/devhelp"
-      mv "$out/share/doc" "$devdoc/share/devhelp/books"
     '';
 
   # The fixDarwinDylibNames hook doesn't patch binaries.
@@ -124,6 +120,11 @@ stdenv.mkDerivation rec {
     done
   '';
 
+  postFixup = lib.optionalString withGtkDoc ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
+  '';
+
   # The tests take an excessive amount of time (> 1.5 hours) and memory (> 6 GB).
   inherit doCheck;
 
diff --git a/nixpkgs/pkgs/development/libraries/gjs/default.nix b/nixpkgs/pkgs/development/libraries/gjs/default.nix
index 07c97ea6e0d6..42ba3bd46df8 100644
--- a/nixpkgs/pkgs/development/libraries/gjs/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gjs/default.nix
@@ -8,7 +8,7 @@
 , gtk3
 , atk
 , gobject-introspection
-, spidermonkey_78
+, spidermonkey_91
 , pango
 , cairo
 , readline
@@ -30,13 +30,13 @@ let
   ];
 in stdenv.mkDerivation rec {
   pname = "gjs";
-  version = "1.70.1";
+  version = "1.72.0";
 
   outputs = [ "out" "dev" "installedTests" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gjs/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-u9wO7HzyX7xTR2n2ofssehjhe4ce/bDKWOmr8IsoAD8=";
+    sha256 = "sha256-PvDK9xbjkg3WH3dI9tVuR2zA/Bg1GtBUjn3xoKub3K0=";
   };
 
   patches = [
@@ -60,7 +60,7 @@ in stdenv.mkDerivation rec {
     gobject-introspection
     cairo
     readline
-    spidermonkey_78
+    spidermonkey_91
     dbus # for dbus-run-session
   ];
 
diff --git a/nixpkgs/pkgs/development/libraries/glib-networking/default.nix b/nixpkgs/pkgs/development/libraries/glib-networking/default.nix
index 1a693e0e0452..fce73f74660e 100644
--- a/nixpkgs/pkgs/development/libraries/glib-networking/default.nix
+++ b/nixpkgs/pkgs/development/libraries/glib-networking/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "glib-networking";
-  version = "2.70.1";
+  version = "2.72.0";
 
   outputs = [ "out" "installedTests" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "Kha/wtJxzNMmbj+0YryKQQPALoG7szmqktb7BgWS17w=";
+    sha256 = "EAquuzaShQQd5S2kIra3FnidXk11SaOnG6WHuTLggjs=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/glib-testing/default.nix b/nixpkgs/pkgs/development/libraries/glib-testing/default.nix
index bdbced24a10e..d77a5418a13e 100644
--- a/nixpkgs/pkgs/development/libraries/glib-testing/default.nix
+++ b/nixpkgs/pkgs/development/libraries/glib-testing/default.nix
@@ -12,7 +12,7 @@
 
 stdenv.mkDerivation rec {
   pname = "glib-testing";
-  version = "0.1.0";
+  version = "0.1.1";
 
   outputs = [ "out" "dev" "devdoc" "installedTests" ];
 
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     owner = "pwithnall";
     repo = "libglib-testing";
     rev = version;
-    sha256 = "0xmycsrlqyji6sc2i4wvp2gxf3897z65a57ygihfnpjpyl7zlwkr";
+    sha256 = "U3epLDdLES7MA71z7Q1WXMjzySTFERWBU0u8poObbEo=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/glib/default.nix b/nixpkgs/pkgs/development/libraries/glib/default.nix
index c98058768b2e..ecae47b3d2dd 100644
--- a/nixpkgs/pkgs/development/libraries/glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/glib/default.nix
@@ -45,16 +45,15 @@ in
 
 stdenv.mkDerivation rec {
   pname = "glib";
-  version = "2.70.3";
+  version = "2.72.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/glib/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "Iz+khBweGeOW23YH1Y9rdbozE8UL8Pzgey41MtXrfUY=";
+    sha256 = "177w1MTnpi4I77jl8lKgE1cAe5WIqH/ytGOjhXAR950=";
   };
 
   patches = optionals stdenv.isDarwin [
     ./darwin-compilation.patch
-    ./link-with-coreservices.patch
   ] ++ optionals stdenv.hostPlatform.isMusl [
     ./quark_init_on_demand.patch
     ./gobject_init_on_demand.patch
@@ -116,7 +115,10 @@ stdenv.mkDerivation rec {
   strictDeps = true;
 
   nativeBuildInputs = [
-    meson ninja pkg-config perl python3 gettext gtk-doc docbook_xsl docbook_xml_dtd_45 libxml2
+    (meson.override {
+      withDarwinFrameworksGtkDocPatch = stdenv.isDarwin;
+    })
+    ninja pkg-config perl python3 gettext gtk-doc docbook_xsl docbook_xml_dtd_45 libxml2
   ];
 
   propagatedBuildInputs = [ zlib libffi gettext libiconv ];
@@ -142,8 +144,8 @@ stdenv.mkDerivation rec {
     chmod +x docs/reference/gio/concat-files-helper.py
     patchShebangs docs/reference/gio/concat-files-helper.py
     patchShebangs glib/gen-unicode-tables.pl
-    patchShebangs tests/gen-casefold-txt.py
-    patchShebangs tests/gen-casemap-txt.py
+    patchShebangs glib/tests/gen-casefold-txt.py
+    patchShebangs glib/tests/gen-casemap-txt.py
   '' + lib.optionalString stdenv.hostPlatform.isWindows ''
     substituteInPlace gio/win32/meson.build \
       --replace "libintl, " ""
diff --git a/nixpkgs/pkgs/development/libraries/glib/link-with-coreservices.patch b/nixpkgs/pkgs/development/libraries/glib/link-with-coreservices.patch
deleted file mode 100644
index dcc0a8998cc3..000000000000
--- a/nixpkgs/pkgs/development/libraries/glib/link-with-coreservices.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build.orig	2020-11-25 13:47:38.499149252 +0900
-+++ b/meson.build	2020-11-25 13:48:47.098444800 +0900
-@@ -742,7 +742,7 @@
- 
-   if glib_have_carbon
-     glib_conf.set('HAVE_CARBON', true)
--    osx_ldflags += '-Wl,-framework,Carbon'
-+    osx_ldflags += ['-Wl,-framework,Carbon', '-Wl,-framework,CoreServices']
-     glib_have_os_x_9_or_later = objcc.compiles('''#include <AvailabilityMacros.h>
-                                                   #if MAC_OS_X_VERSION_MIN_REQUIRED < 1090
-                                                   #error Compiling for minimum OS X version before 10.9
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-desktop/bubblewrap-paths.patch b/nixpkgs/pkgs/development/libraries/gnome-desktop/bubblewrap-paths.patch
index c31e093f4b7e..c31e093f4b7e 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-desktop/bubblewrap-paths.patch
+++ b/nixpkgs/pkgs/development/libraries/gnome-desktop/bubblewrap-paths.patch
diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-desktop/default.nix b/nixpkgs/pkgs/development/libraries/gnome-desktop/default.nix
index 302d201f234f..5d682e23b277 100644
--- a/nixpkgs/pkgs/desktops/gnome/core/gnome-desktop/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gnome-desktop/default.nix
@@ -7,6 +7,7 @@
 , ninja
 , gnome
 , gtk3
+, gtk4
 , glib
 , gettext
 , libxml2
@@ -26,13 +27,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-desktop";
-  version = "41.3";
+  version = "42.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-desktop/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-jNHKq5MRgowEUkaMalBnqbxEY4NbI6FL5E6P2bAwAcY=";
+    sha256 = "sha256-88qik6Xob2zK0Y+BcnPbHGcGHmgNedg5qop1KOW7JtY=";
   };
 
   patches = [
@@ -63,6 +64,7 @@ stdenv.mkDerivation rec {
     isocodes
     wayland
     gtk3
+    gtk4
     glib
     libseccomp
     systemd
@@ -84,7 +86,6 @@ stdenv.mkDerivation rec {
   passthru = {
     updateScript = gnome.updateScript {
       packageName = "gnome-desktop";
-      attrPath = "gnome.gnome-desktop";
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/gnome-online-accounts/default.nix b/nixpkgs/pkgs/development/libraries/gnome-online-accounts/default.nix
index 9337a8e93d6d..f58e87b2f7e6 100644
--- a/nixpkgs/pkgs/development/libraries/gnome-online-accounts/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gnome-online-accounts/default.nix
@@ -30,7 +30,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-online-accounts";
-  version = "3.40.1";
+  version = "3.43.1";
 
   # https://gitlab.gnome.org/GNOME/gnome-online-accounts/issues/87
   src = fetchFromGitLab {
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     owner = "GNOME";
     repo = "gnome-online-accounts";
     rev = version;
-    sha256 = "sha256-q4bLGOOGoGH/Et3hu7/372tjNMouX9ePTanIo0c4Jbw=";
+    sha256 = "sha256-Dpq5bQwU0ZAxmEllpbLnS1Jz3F0rxtFMKZcIvAteObU=";
   };
 
   outputs = [ "out" "man" "dev" "devdoc" ];
diff --git a/nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch b/nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch
index c02330adf6d1..b6dc66fc66b1 100644
--- a/nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch
+++ b/nixpkgs/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch
@@ -1,3 +1,5 @@
+diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py
+index 64575557..1eb0a2b4 100644
 --- a/giscanner/scannermain.py
 +++ b/giscanner/scannermain.py
 @@ -95,6 +95,39 @@ def get_windows_option_group(parser):
@@ -41,16 +43,18 @@
      parser = optparse.OptionParser('%prog [options] sources',
                                     version='%prog ' + giscanner.__version__)
 @@ -214,6 +247,10 @@ match the namespace prefix.""")
-     parser.add_option("", "--filelist",
-                       action="store", dest="filelist", default=[],
-                       help="file containing headers and sources to be scanned")
+     parser.add_option("", "--c-include",
+                       action="append", dest="c_includes", default=[],
+                       help="headers which should be included in C programs")
 +    parser.add_option("", "--fallback-library-path",
 +                      action="store", dest="fallback_libpath",
 +                      default=_get_default_fallback_libpath(),
 +                      help="Path to prepend to unknown shared libraries")
- 
-     group = get_preprocessor_option_group(parser)
-     parser.add_option_group(group)
+     parser.add_option("", "--filelist",
+                       action="store", dest="filelist", default=[],
+                       help="file containing headers and sources to be scanned")
+diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py
+index 9f8ab5df..af325022 100644
 --- a/giscanner/shlibs.py
 +++ b/giscanner/shlibs.py
 @@ -57,6 +57,12 @@ def _ldd_library_pattern(library_name):
@@ -115,9 +119,11 @@
                  if m:
                      del patterns[library]
                      shlibs.append(m.group())
+diff --git a/giscanner/utils.py b/giscanner/utils.py
+index 31c7ea48..630002a8 100644
 --- a/giscanner/utils.py
 +++ b/giscanner/utils.py
-@@ -113,16 +113,11 @@ def extract_libtool_shlib(la_file):
+@@ -114,16 +114,11 @@ def extract_libtool_shlib(la_file):
      if dlname is None:
          return None
  
@@ -139,6 +145,8 @@
  
  
  # Returns arguments for invoking libtool, if applicable, otherwise None
+diff --git a/tests/scanner/test_shlibs.py b/tests/scanner/test_shlibs.py
+index a8337c60..72789d76 100644
 --- a/tests/scanner/test_shlibs.py
 +++ b/tests/scanner/test_shlibs.py
 @@ -7,6 +7,30 @@ from giscanner.shlibs import resolve_from_ldd_output, sanitize_shlib_path
diff --git a/nixpkgs/pkgs/development/libraries/gobject-introspection/default.nix b/nixpkgs/pkgs/development/libraries/gobject-introspection/default.nix
index 667d50ca4d8b..b457331983aa 100644
--- a/nixpkgs/pkgs/development/libraries/gobject-introspection/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gobject-introspection/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
 , glib
 , flex
@@ -26,7 +27,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gobject-introspection";
-  version = "1.70.0";
+  version = "1.72.0";
 
   # outputs TODO: share/gobject-introspection-1.0/tests is needed during build
   # by pygobject3 (and maybe others), but it's only searched in $out
@@ -35,7 +36,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0jpwraip7pwl9bf9s59am3r7074p34fasvfb5ym1fb8hwc34jawh";
+    sha256 = "Av6OWQhh2I+DBg3TnNpcyqYLLaHSHQ+VSZMBsYa+qrw=";
   };
 
   patches = [
@@ -46,15 +47,6 @@ stdenv.mkDerivation rec {
       src = ./absolute_shlib_path.patch;
       inherit nixStoreDir;
     })
-    # Fix build with meson 0.61.0
-    (fetchurl {
-      url = "https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/827494d6415b696a98fa195cbd883b50cc893bfc.patch";
-      sha256 = "sha256-imVWzU760FRsX+eXREQDQ6mDcmzZ5ASLT9rBf4oyBGQ=";
-    })
-    (fetchurl {
-      url = "https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/effb1e09dee263cdac4ec593e8caf316e6f01fe2.patch";
-      sha256 = "sha256-o7a0qDT5IYcYcz8toeZu+nPj3SwS52sNgmxgzsmlp4Q=";
-    })
   ] ++ lib.optionals x11Support [
     # Hardcode the cairo shared library path in the Cairo gir shipped with this package.
     # https://github.com/NixOS/nixpkgs/issues/34080
diff --git a/nixpkgs/pkgs/development/libraries/gsettings-desktop-schemas/default.nix b/nixpkgs/pkgs/development/libraries/gsettings-desktop-schemas/default.nix
index 483ee0b08496..085544a36120 100644
--- a/nixpkgs/pkgs/development/libraries/gsettings-desktop-schemas/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gsettings-desktop-schemas/default.nix
@@ -12,11 +12,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gsettings-desktop-schemas";
-  version = "41.0";
+  version = "42.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "dyiZcuWW0ERYPwwFYwbY8dvYrc+RKRClDaCmY+ZTMu0=";
+    sha256 = "ZoYzWp7WI/euInb++lCkENTnHUIxiAgkcUBwyzFzI9I=";
   };
 
   strictDeps = true;
diff --git a/nixpkgs/pkgs/development/libraries/gtk/3.x.nix b/nixpkgs/pkgs/development/libraries/gtk/3.x.nix
index bb1451594475..c736c5cc7617 100644
--- a/nixpkgs/pkgs/development/libraries/gtk/3.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtk/3.x.nix
@@ -2,7 +2,6 @@
 , stdenv
 , substituteAll
 , fetchurl
-, fetchpatch
 , pkg-config
 , gettext
 , docbook-xsl-nons
@@ -60,7 +59,7 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gtk+3";
-  version = "3.24.31";
+  version = "3.24.33";
 
   outputs = [ "out" "dev" ] ++ lib.optional withGtkDoc "devdoc";
   outputBin = "dev";
@@ -72,7 +71,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/gtk+/${lib.versions.majorMinor version}/gtk+-${version}.tar.xz";
-    sha256 = "sha256-Qjw+f9tMRZ7oieNf1Ncf0mI1YlQcEEGxHAflrR/xC/k=";
+    sha256 = "sha256-WIsGUi4l0VeemJtvnYob2/L+E83gGgTpBP80aiJeeAE=";
   };
 
   patches = [
@@ -84,12 +83,6 @@ stdenv.mkDerivation rec {
     # e.g. https://gitlab.gnome.org/GNOME/gtk/blob/3.24.4/gtk/gtk-launch.c#L31-33
     # https://gitlab.gnome.org/GNOME/gtk/merge_requests/536
     ./patches/3.0-darwin-x11.patch
-
-    # 3.24.31 does not declare QuartzCore dependency properly and fails to link
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/gtk/-/commit/0ac61443694b477c41fc246cb387ef86aba441de.patch";
-      sha256 = "sha256-KaMeIdV/gfM4xzN9lIkY99E7bzAfTM6VETk5DEunB2w=";
-    })
   ];
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/gtk/4.x.nix b/nixpkgs/pkgs/development/libraries/gtk/4.x.nix
index 6da3fc769ea6..eaf6d5bf1b26 100644
--- a/nixpkgs/pkgs/development/libraries/gtk/4.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtk/4.x.nix
@@ -62,7 +62,7 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gtk4";
-  version = "4.6.1";
+  version = "4.6.2";
 
   outputs = [ "out" "dev" ] ++ lib.optionals x11Support [ "devdoc" ];
   outputBin = "dev";
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/gtk/${lib.versions.majorMinor version}/gtk-${version}.tar.xz";
-    sha256 = "2FUI0hy7zWPVaKeGKvXs1juXjX1XmcvkBMkdI4nQ7F8=";
+    sha256 = "/yY69gmlDrdgVmU1ktkpRZrvSBmkRMQ29tUsb2PB+uw=";
   };
 
   nativeBuildInputs = [
@@ -202,13 +202,9 @@ stdenv.mkDerivation rec {
     for f in $dev/bin/gtk4-encode-symbolic-svg; do
       wrapProgram $f --prefix XDG_DATA_DIRS : "${shared-mime-info}/share"
     done
-
-  '' + lib.optionalString x11Support ''
-    # So that DevHelp can find this.
-    # TODO: Remove this with DevHelp 41.
-    mkdir -p "$devdoc/share/devhelp/books"
-    mv "$out/share/doc/"* "$devdoc/share/devhelp/books"
-    rmdir -p --ignore-fail-on-non-empty "$out/share/doc"
+  '' + lib.optionalString broadwaySupport ''
+    # Broadway daemon
+    moveToOutput bin/gtk4-broadwayd "$out"
   '';
 
   # Wrap demos
@@ -219,6 +215,9 @@ stdenv.mkDerivation rec {
       wrapProgram $dev/bin/$program \
         --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share/gsettings-schemas/${pname}-${version}"
     done
+  '' + lib.optionalString x11Support ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
   '';
 
   passthru = {
diff --git a/nixpkgs/pkgs/development/libraries/gtkmm/4.x.nix b/nixpkgs/pkgs/development/libraries/gtkmm/4.x.nix
index 1960a04e95f4..c91e7b54ff2e 100644
--- a/nixpkgs/pkgs/development/libraries/gtkmm/4.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtkmm/4.x.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gtkmm";
-  version = "4.6.0";
+  version = "4.6.1";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "E1OgkJPLVx71rAXZPSALrxMq1gS19JQHd2VuFQWBTB8=";
+    sha256 = "DV7+yp7GT91TC7gibGMQrJlUmz3ZYE1uNnY5eRrz0eA=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/gtksourceview/4.x.nix b/nixpkgs/pkgs/development/libraries/gtksourceview/4.x.nix
index 0095b6ca9e08..74acd6f743d6 100644
--- a/nixpkgs/pkgs/development/libraries/gtksourceview/4.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtksourceview/4.x.nix
@@ -23,13 +23,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gtksourceview";
-  version = "4.8.2";
+  version = "4.8.3";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1k1pava84ywgq62xl5bz8y3zm7z2kz6kkgp423c0y02jrgjyfbc4";
+    sha256 = "wwAZUGMgyiR02DTM7R4iF+pTPgDrKj9Ot4eQB5QOxoI=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/gtksourceview/5.x.nix b/nixpkgs/pkgs/development/libraries/gtksourceview/5.x.nix
index e6ad0f1ae36b..81c0abd61b6d 100644
--- a/nixpkgs/pkgs/development/libraries/gtksourceview/5.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtksourceview/5.x.nix
@@ -10,6 +10,7 @@
 , pango
 , fribidi
 , vala
+, gi-docgen
 , libxml2
 , perl
 , gettext
@@ -22,13 +23,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gtksourceview";
-  version = "5.2.0";
+  version = "5.4.0";
 
-  outputs = [ "out" "dev" ];
+  outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "ybNPoCZU9WziL6CIJ9idtLqBYxsubX0x6mXRPHKUMOk=";
+    sha256 = "ADvCF+ZwqOyKo67OmUtw5wt9a4B0k4rdohcYVV2E5jc=";
   };
 
   patches = [
@@ -46,6 +47,7 @@ stdenv.mkDerivation rec {
     perl
     gobject-introspection
     vala
+    gi-docgen
   ];
 
   buildInputs = [
@@ -68,6 +70,10 @@ stdenv.mkDerivation rec {
     dbus
   ];
 
+  mesonFlags = [
+    "-Dgtk_doc=true"
+  ];
+
   doCheck = stdenv.isLinux;
 
   checkPhase = ''
@@ -81,6 +87,11 @@ stdenv.mkDerivation rec {
     runHook postCheck
   '';
 
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
+  '';
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = "gtksourceview";
diff --git a/nixpkgs/pkgs/development/libraries/gvfs/default.nix b/nixpkgs/pkgs/development/libraries/gvfs/default.nix
index c79f849d22f1..e02a0be4d28d 100644
--- a/nixpkgs/pkgs/development/libraries/gvfs/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gvfs/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
 , meson
 , ninja
@@ -17,6 +18,7 @@
 , fuse3
 , libcdio
 , libxml2
+, libsoup_3
 , libxslt
 , docbook_xsl
 , docbook_xml_dtd_42
@@ -41,11 +43,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gvfs";
-  version = "1.48.1";
+  version = "1.50.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1hlxl6368h6nyqp1888szxs9hnpcw98k3h23dgqi29xd38klzsmj";
+    sha256 = "y8L1ZNLp8Ax2BnP0LWgDvOPggat/+0RW3v//upM5tN0=";
   };
 
   postPatch = ''
@@ -89,9 +91,8 @@ stdenv.mkDerivation rec {
     libnfs
     openssh
     gsettings-desktop-schemas
-    # TODO: a ligther version of libsoup to have FTP/HTTP support?
+    libsoup_3
   ] ++ lib.optionals gnomeSupport [
-    gnome.libsoup
     gcr
     glib-networking # TLS support
     gnome-online-accounts
@@ -106,7 +107,6 @@ stdenv.mkDerivation rec {
     "-Dgcr=false"
     "-Dgoa=false"
     "-Dkeyring=false"
-    "-Dhttp=false"
     "-Dgoogle=false"
   ] ++ lib.optionals (avahi == null) [
     "-Ddnssd=false"
diff --git a/nixpkgs/pkgs/development/libraries/harfbuzz/default.nix b/nixpkgs/pkgs/development/libraries/harfbuzz/default.nix
index e47b18252e9e..b7ba05bb79b5 100644
--- a/nixpkgs/pkgs/development/libraries/harfbuzz/default.nix
+++ b/nixpkgs/pkgs/development/libraries/harfbuzz/default.nix
@@ -21,6 +21,12 @@
 , gtk-doc
 , docbook-xsl-nons
 , docbook_xml_dtd_43
+# for passthru.tests
+, gimp
+, gtk3
+, gtk4
+, mapnik
+, qt5
 }:
 
 let
@@ -99,6 +105,11 @@ stdenv.mkDerivation {
     ''}
   '';
 
+  passthru.tests = {
+    inherit gimp gtk3 gtk4 mapnik;
+    inherit (qt5) qtbase;
+  };
+
   meta = with lib; {
     description = "An OpenType text shaping engine";
     homepage = "https://harfbuzz.github.io/";
diff --git a/nixpkgs/pkgs/development/libraries/igraph/default.nix b/nixpkgs/pkgs/development/libraries/igraph/default.nix
index 06aad781bc73..441646c43955 100644
--- a/nixpkgs/pkgs/development/libraries/igraph/default.nix
+++ b/nixpkgs/pkgs/development/libraries/igraph/default.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "igraph";
-  version = "0.9.6";
+  version = "0.9.7";
 
   src = fetchFromGitHub {
     owner = "igraph";
     repo = pname;
     rev = version;
-    sha256 = "sha256-nMM4ZQLIth9QHlLu+sXE4AXoDlq1UP20+YuBi+Op+go=";
+    sha256 = "sha256-SL9PcT18vFvykCv4VRXxXtlcDAcybmwEImnnKXMciFQ=";
   };
 
   # Normally, igraph wants us to call bootstrap.sh, which will call
diff --git a/nixpkgs/pkgs/development/libraries/intel-gmmlib/default.nix b/nixpkgs/pkgs/development/libraries/intel-gmmlib/default.nix
index d9ac5e4da3fc..5875c8070e76 100644
--- a/nixpkgs/pkgs/development/libraries/intel-gmmlib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/intel-gmmlib/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "intel-gmmlib";
-  version = "22.0.3";
+  version = "22.1.2";
 
   src = fetchFromGitHub {
     owner = "intel";
     repo = "gmmlib";
     rev = "intel-gmmlib-${version}";
-    sha256 = "sha256-cXolz4hKLSTs8K9tCxaKnC2Pr0lQ0M+pPeF2w6bOAR8=";
+    sha256 = "sha256-5exS0B2iRbmFkKtoHzL4NnZ7L3DaukthUYkoj2tpZuE=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/java/hydra-ant-logger/default.nix b/nixpkgs/pkgs/development/libraries/java/hydra-ant-logger/default.nix
index 19bc3524c590..4b18cd7cfadc 100644
--- a/nixpkgs/pkgs/development/libraries/java/hydra-ant-logger/default.nix
+++ b/nixpkgs/pkgs/development/libraries/java/hydra-ant-logger/default.nix
@@ -1,13 +1,14 @@
-{ fetchgit, lib, stdenv, ant, jdk }:
+{ fetchFromGitHub, lib, stdenv, ant, jdk }:
 
 stdenv.mkDerivation {
   pname = "hydra-ant-logger";
   version = "2010.2";
 
-  src = fetchgit {
-    url = "https://github.com/NixOS/hydra-ant-logger.git";
+  src = fetchFromGitHub {
+    owner = "NixOS";
+    repo = "hydra-ant-logger";
     rev = "dae3224f4ed42418d3492bdf5bee4f825819006f";
-    sha256 = "01s7m6007rn9107rw5wcgna7i20x6p6kfzl4f79jrvpkjy6kz176";
+    sha256 = "sha256-5oQ/jZfz7izTcYR+N801HYh4lH2MF54PCMnmA4CpRwc=";
   };
 
   buildInputs = [ ant jdk ];
diff --git a/nixpkgs/pkgs/development/libraries/java/jffi/default.nix b/nixpkgs/pkgs/development/libraries/java/jffi/default.nix
new file mode 100644
index 000000000000..c15a6ddb819c
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/java/jffi/default.nix
@@ -0,0 +1,47 @@
+{ lib, stdenv, fetchFromGitHub, jdk, jre, ant, libffi, texinfo, pkg-config }:
+
+stdenv.mkDerivation rec {
+  pname = "jffi";
+  version = "1.3.9";
+
+  src = fetchFromGitHub {
+    owner = "jnr";
+    repo = "jffi";
+    rev = "jffi-${version}";
+    sha256 = "sha256-VjZYhMbad+AesANG06umRzqMWj+Ebzu59TYK7Tm/bFo=";
+  };
+
+  nativeBuildInputs = [ jdk ant texinfo pkg-config ];
+  buildInputs = [ libffi ] ;
+
+  buildPhase = ''
+    # The pkg-config script in the build.xml doesn't work propery
+    # set the lib path manually to work around this.
+    export LIBFFI_LIBS="${libffi}/lib/libffi.so"
+
+    ant -Duse.system.libffi=1 jar
+    ant -Duse.system.libffi=1 archive-platform-jar
+  '';
+
+  installPhase = ''
+    mkdir -p $out/share/java
+    cp -r dist/* $out/share/java
+  '';
+
+  doCheck = true;
+  checkPhase = ''
+    # The pkg-config script in the build.xml doesn't work propery
+    # set the lib path manually to work around this.
+    export LIBFFI_LIBS="${libffi}/lib/libffi.so"
+
+    ant -Duse.system.libffi=1 test
+  '';
+
+  meta = with lib; {
+    description = "Java Foreign Function Interface ";
+    homepage = "https://github.com/jnr/jffi";
+    platforms = platforms.unix;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ bachp ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/jsonrpc-glib/default.nix b/nixpkgs/pkgs/development/libraries/jsonrpc-glib/default.nix
index 7618110e86c4..fb828e5b5714 100644
--- a/nixpkgs/pkgs/development/libraries/jsonrpc-glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/jsonrpc-glib/default.nix
@@ -1,18 +1,42 @@
-{ lib, stdenv, fetchurl, meson, ninja, glib, json-glib, pkg-config, gobject-introspection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_43, gnome }:
+{ stdenv
+, lib
+, fetchurl
+, meson
+, ninja
+, glib
+, json-glib
+, pkg-config
+, gobject-introspection
+, vala
+, gi-docgen
+, gnome
+}:
+
 stdenv.mkDerivation rec {
   pname = "jsonrpc-glib";
-  version = "3.40.0";
+  version = "3.42.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
-  nativeBuildInputs = [ meson ninja pkg-config gobject-introspection vala gtk-doc docbook_xsl docbook_xml_dtd_43 ];
-  buildInputs = [ glib json-glib ];
-
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "wuPRYlfHJmzTkBiE4iN1V1v2Go4fZ1lsiODYeucNDvQ=";
+    sha256 = "IhmJpXyoKhJGfcQngizXZRsMrQOBQMkxAnvxB0IIJ2s=";
   };
 
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    gobject-introspection
+    vala
+    gi-docgen
+  ];
+
+  buildInputs = [
+    glib
+    json-glib
+  ];
+
   mesonFlags = [
     "-Denable_gtk_doc=true"
   ];
@@ -21,6 +45,11 @@ stdenv.mkDerivation rec {
   # https://gitlab.gnome.org/GNOME/jsonrpc-glib/issues/2
   doCheck = false;
 
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
+  '';
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/nixpkgs/pkgs/development/libraries/kde-frameworks/kauth/default.nix b/nixpkgs/pkgs/development/libraries/kde-frameworks/kauth/default.nix
index 630b51bf46ba..93c81525a148 100644
--- a/nixpkgs/pkgs/development/libraries/kde-frameworks/kauth/default.nix
+++ b/nixpkgs/pkgs/development/libraries/kde-frameworks/kauth/default.nix
@@ -1,12 +1,13 @@
 {
-  mkDerivation, propagate,
-  extra-cmake-modules, kcoreaddons, polkit-qt, qttools
+  lib, mkDerivation, propagate,
+  extra-cmake-modules, kcoreaddons, qttools,
+  enablePolkit ? true, polkit-qt
 }:
 
 mkDerivation {
   name = "kauth";
   nativeBuildInputs = [ extra-cmake-modules ];
-  buildInputs = [ polkit-qt qttools ];
+  buildInputs = lib.optional enablePolkit polkit-qt ++ [ qttools ];
   propagatedBuildInputs = [ kcoreaddons ];
   patches = [
     ./cmake-install-paths.patch
diff --git a/nixpkgs/pkgs/development/libraries/libadwaita/default.nix b/nixpkgs/pkgs/development/libraries/libadwaita/default.nix
index 856ec30bccb2..447ad06e9b87 100644
--- a/nixpkgs/pkgs/development/libraries/libadwaita/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libadwaita/default.nix
@@ -21,7 +21,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libadwaita";
-  version = "1.0.2";
+  version = "1.1.0";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "devdoc"; # demo app
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     owner = "GNOME";
     repo = "libadwaita";
     rev = version;
-    hash = "sha256-D7Qq8yAWkr/G5I4k8G1+viJkEJSrCBAg31Q+g3U9FcQ=";
+    hash = "sha256-+bgCD2jy3M0gEAtbB+nOptQGEXXkvk1idoggJz4UMy0=";
   };
 
   nativeBuildInputs = [
@@ -91,6 +91,12 @@ stdenv.mkDerivation rec {
     mv $out/share/{doc,gtk-doc}
   '';
 
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+    };
+  };
+
   meta = with lib; {
     description = "Library to help with developing UI for mobile devices using GTK/GNOME";
     homepage = "https://gitlab.gnome.org/GNOME/libadwaita";
diff --git a/nixpkgs/pkgs/development/libraries/libarchive-qt/default.nix b/nixpkgs/pkgs/development/libraries/libarchive-qt/default.nix
index 62b425bba058..ae74fd3028a9 100644
--- a/nixpkgs/pkgs/development/libraries/libarchive-qt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libarchive-qt/default.nix
@@ -1,19 +1,20 @@
-{ mkDerivation, lib, fetchFromGitLab, libarchive, xz, zlib, bzip2, cmake, ninja }:
+{ mkDerivation, lib, fetchFromGitLab, libarchive, xz, zlib, bzip2, meson, pkg-config, ninja }:
 
 mkDerivation rec {
   pname = "libarchive-qt";
-  version = "2.0.6";
+  version = "2.0.7";
 
   src = fetchFromGitLab {
     owner = "marcusbritanicus";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Z+2zjQolV1Ncr6v9r7fGrc/fEMt0iMtGwv9eZ2Tu2cA=";
+    sha256 = "sha256-KRywB+Op44N00q9tgO2WNCliRgUDRvrCms1O8JYt62o=";
   };
 
   nativeBuildInputs = [
-    cmake
+    meson
     ninja
+    pkg-config
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/libarchive/default.nix b/nixpkgs/pkgs/development/libraries/libarchive/default.nix
index 1cc6fe6f521e..2c8faaf93e8b 100644
--- a/nixpkgs/pkgs/development/libraries/libarchive/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libarchive/default.nix
@@ -6,6 +6,9 @@
   # builds fine on windows, but libarchive has trouble linking windows
   # things it depends on for some reason.
   xarSupport ? stdenv.hostPlatform.isUnix,
+
+  # for passthru.tests
+  cmake, nix, samba
 }:
 
 assert xarSupport -> libxml2 != null;
@@ -49,6 +52,10 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  passthru.tests = {
+    inherit cmake nix samba;
+  };
+
   meta = {
     description = "Multi-format archive and compression library";
     longDescription = ''
diff --git a/nixpkgs/pkgs/development/libraries/libass/default.nix b/nixpkgs/pkgs/development/libraries/libass/default.nix
index 19f6589ec950..704dcd2c73d0 100644
--- a/nixpkgs/pkgs/development/libraries/libass/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libass/default.nix
@@ -40,6 +40,5 @@ stdenv.mkDerivation rec {
     license     = licenses.isc;
     platforms   = platforms.unix;
     maintainers = with maintainers; [ codyopel ];
-    repositories.git = "git://github.com/libass/libass.git";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libbluray/default.nix b/nixpkgs/pkgs/development/libraries/libbluray/default.nix
index 8fd680683dd8..47015f3b981d 100644
--- a/nixpkgs/pkgs/development/libraries/libbluray/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libbluray/default.nix
@@ -19,11 +19,11 @@ assert withFonts -> freetype != null;
 
 stdenv.mkDerivation rec {
   pname = "libbluray";
-  version  = "1.3.0";
+  version  = "1.3.1";
 
   src = fetchurl {
     url = "http://get.videolan.org/libbluray/${version}/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-4tuvmehOCpcl9Jhby4XUHlLCJhzGUdiISxt5C17wFvk=";
+    sha256 = "sha256-wksPQcW3N7u2XFRP5jSVY3p3HBClGd/IAudp8RK0O3U=";
   };
 
   patches = optional withJava ./BDJ-JARFILE-path.patch;
diff --git a/nixpkgs/pkgs/development/libraries/libcec/default.nix b/nixpkgs/pkgs/development/libraries/libcec/default.nix
index e03416a221c1..039d3af37605 100644
--- a/nixpkgs/pkgs/development/libraries/libcec/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libcec/default.nix
@@ -25,7 +25,6 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Allows you (with the right hardware) to control your device with your TV remote control using existing HDMI cabling";
     homepage = "http://libcec.pulse-eight.com";
-    repositories.git = "https://github.com/Pulse-Eight/libcec.git";
     license = lib.licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.titanous ];
diff --git a/nixpkgs/pkgs/development/libraries/libcec/platform.nix b/nixpkgs/pkgs/development/libraries/libcec/platform.nix
index cba1d0ba4c59..d9594c90b624 100644
--- a/nixpkgs/pkgs/development/libraries/libcec/platform.nix
+++ b/nixpkgs/pkgs/development/libraries/libcec/platform.nix
@@ -16,7 +16,6 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Platform library for libcec and Kodi addons";
     homepage = "https://github.com/Pulse-Eight/platform";
-    repositories.git = "https://github.com/Pulse-Eight/platform.git";
     license = lib.licenses.gpl2Plus;
     platforms = platforms.all;
     maintainers = [ maintainers.titanous ];
diff --git a/nixpkgs/pkgs/development/libraries/libctl/default.nix b/nixpkgs/pkgs/development/libraries/libctl/default.nix
new file mode 100644
index 000000000000..d7fed2415df0
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libctl/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, autoreconfHook
+, gfortran
+, guile
+, pkg-config
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libctl";
+  version = "4.5.1";
+
+  src = fetchFromGitHub {
+    owner = "NanoComp";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "uOydBWYPXSBUi+4MM6FNx6B5l2to7Ny9Uc1MMTV9bGA=";
+  };
+
+  nativeBuildInputs = [ autoreconfHook gfortran guile pkg-config ];
+
+  configureFlags = [ "--enable-shared" ];
+
+  meta = with lib; {
+    description = "Guile-based library for supporting flexible control files in scientific simulations";
+    homepage = "https://github.com/NanoComp/libctl";
+    license = licenses.gpl2Only;
+    maintainers = with maintainers; [ carpinchomug ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libdazzle/default.nix b/nixpkgs/pkgs/development/libraries/libdazzle/default.nix
index 426ffadf4c6e..7f4c53071d0c 100644
--- a/nixpkgs/pkgs/development/libraries/libdazzle/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libdazzle/default.nix
@@ -1,20 +1,53 @@
-{ lib, stdenv, fetchurl, ninja, meson, pkg-config, vala, gobject-introspection, libxml2
-, gtk-doc, docbook_xsl, docbook_xml_dtd_43, dbus, xvfb-run, glib, gtk3, gnome }:
+{ lib
+, stdenv
+, fetchurl
+, ninja
+, meson
+, pkg-config
+, vala
+, gobject-introspection
+, libxml2
+, gtk-doc
+, docbook_xsl
+, docbook_xml_dtd_43
+, dbus
+, xvfb-run
+, glib
+, gtk3
+, gnome
+}:
 
 stdenv.mkDerivation rec {
   pname = "libdazzle";
-  version = "3.42.0";
+  version = "3.44.0";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "dev";
 
   src = fetchurl {
     url = "mirror://gnome/sources/libdazzle/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "09b9l56yiwad7xqr7g7ragmm4gmqxjnvc2pcx6741klw7lxpmrpa";
+    sha256 = "PNPkXrbiaAywXVLh6A3Y+dWdR2UhLw4o945sF4PRjq4=";
   };
 
-  nativeBuildInputs = [ ninja meson pkg-config vala gobject-introspection libxml2 gtk-doc docbook_xsl docbook_xml_dtd_43 dbus xvfb-run glib ];
-  buildInputs = [ glib gtk3 ];
+  nativeBuildInputs = [
+    ninja
+    meson
+    pkg-config
+    vala
+    gobject-introspection
+    libxml2
+    gtk-doc
+    docbook_xsl
+    docbook_xml_dtd_43
+    dbus
+    xvfb-run
+    glib
+  ];
+
+  buildInputs = [
+    glib
+    gtk3
+  ];
 
   mesonFlags = [
     "-Denable_gtk_doc=true"
diff --git a/nixpkgs/pkgs/development/libraries/libgbinder/default.nix b/nixpkgs/pkgs/development/libraries/libgbinder/default.nix
index f2ecf94053b0..e5a3b79ba77c 100644
--- a/nixpkgs/pkgs/development/libraries/libgbinder/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgbinder/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libgbinder";
-  version = "1.1.16";
+  version = "1.1.19";
 
   src = fetchFromGitHub {
     owner = "mer-hybris";
     repo = pname;
     rev = version;
-    sha256 = "sha256-g+3yRRiTv2l7ZpJc5a6tOPsErKjdALomAWmYHErdfIQ=";
+    sha256 = "sha256-HTmNoTGyFtOXRy7Y/ZnEgTa2GW6/+TeZxZo7c7ksNtc=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/development/libraries/libgcrypt/1.5.nix b/nixpkgs/pkgs/development/libraries/libgcrypt/1.5.nix
index b30aa89b1485..918ed20efaaf 100644
--- a/nixpkgs/pkgs/development/libraries/libgcrypt/1.5.nix
+++ b/nixpkgs/pkgs/development/libraries/libgcrypt/1.5.nix
@@ -38,7 +38,6 @@ stdenv.mkDerivation rec {
     description = "General-pupose cryptographic library";
     license = licenses.lgpl2Plus;
     platforms = platforms.all;
-    repositories.git = "git://git.gnupg.org/libgcrypt.git";
     knownVulnerabilities = [
       "CVE-2014-3591"
       "CVE-2015-0837"
diff --git a/nixpkgs/pkgs/development/libraries/libgcrypt/default.nix b/nixpkgs/pkgs/development/libraries/libgcrypt/default.nix
index 9195019b0559..eb4e8e948629 100644
--- a/nixpkgs/pkgs/development/libraries/libgcrypt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgcrypt/default.nix
@@ -78,6 +78,5 @@ stdenv.mkDerivation rec {
     license = licenses.lgpl2Plus;
     platforms = platforms.all;
     maintainers = with maintainers; [ vrthra ];
-    repositories.git = "git://git.gnupg.org/libgcrypt.git";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libgnome-games-support/2.0.nix b/nixpkgs/pkgs/development/libraries/libgnome-games-support/2.0.nix
new file mode 100644
index 000000000000..a5f1c2576b9f
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libgnome-games-support/2.0.nix
@@ -0,0 +1,59 @@
+{ stdenv
+, lib
+, fetchurl
+, pkg-config
+, glib
+, gtk4
+, libgee
+, gettext
+, vala
+, gnome
+, libintl
+, meson
+, ninja
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libgnome-games-support";
+  version = "2.0.0";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "U4Ifb+Mu3cue7zMk9kaqrIPMbT3gk339XyZkcNRT0qQ=";
+  };
+
+  nativeBuildInputs = [
+    gettext
+    meson
+    ninja
+    pkg-config
+    vala
+  ];
+
+  buildInputs = [
+    libintl
+  ];
+
+  propagatedBuildInputs = [
+    # Required by libgnome-games-support-2.pc
+    glib
+    gtk4
+    libgee
+  ];
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      attrPath = "${pname}_2_0";
+      versionPolicy = "odd-unstable";
+    };
+  };
+
+  meta = with lib; {
+    description = "Small library intended for internal use by GNOME Games, but it may be used by others";
+    homepage = "https://wiki.gnome.org/Apps/Games";
+    license = licenses.lgpl3Plus;
+    maintainers = teams.gnome.members;
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libgnome-games-support/default.nix b/nixpkgs/pkgs/development/libraries/libgnome-games-support/default.nix
index 80c76ea980f9..e63d7f8fe656 100644
--- a/nixpkgs/pkgs/development/libraries/libgnome-games-support/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgnome-games-support/default.nix
@@ -44,6 +44,7 @@ stdenv.mkDerivation rec {
     updateScript = gnome.updateScript {
       packageName = pname;
       versionPolicy = "odd-unstable";
+      freeze = true;
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libgpg-error/default.nix b/nixpkgs/pkgs/development/libraries/libgpg-error/default.nix
index ec2b614ee9ca..181829156c99 100644
--- a/nixpkgs/pkgs/development/libraries/libgpg-error/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgpg-error/default.nix
@@ -40,6 +40,8 @@ in stdenv.mkDerivation (rec {
   '' + lib.optionalString (stdenv.hostPlatform.isAarch32 && stdenv.hostPlatform.isMusl) ''
     ln -s lock-obj-pub.arm-unknown-linux-gnueabi.h src/syscfg/lock-obj-pub.arm-unknown-linux-musleabihf.h
     ln -s lock-obj-pub.arm-unknown-linux-gnueabi.h src/syscfg/lock-obj-pub.linux-musleabihf.h
+  '' + lib.optionalString (stdenv.hostPlatform.isAarch64 && stdenv.hostPlatform.isMusl) ''
+    ln -s lock-obj-pub.aarch64-unknown-linux-gnu.h src/syscfg/lock-obj-pub.linux-musl.h
   '';
 
   outputs = [ "out" "dev" "info" ];
diff --git a/nixpkgs/pkgs/development/libraries/libgphoto2/default.nix b/nixpkgs/pkgs/development/libraries/libgphoto2/default.nix
index 6da4c9a53a5b..5305b4922530 100644
--- a/nixpkgs/pkgs/development/libraries/libgphoto2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgphoto2/default.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libgphoto2";
-  version = "2.5.28";
+  version = "2.5.29";
 
   src = fetchFromGitHub {
     owner = "gphoto";
     repo = "libgphoto2";
     rev = "libgphoto2-${builtins.replaceStrings [ "." ] [ "_" ] version}-release";
-    sha256 = "sha256-e3zMinUUBKzZlQQzkS0oPWAzIVlmQoLj73Spj0XiTIE=";
+    sha256 = "sha256-Js5gbD57lhtqBX6joGMiLKUwkPDaSclnTrwBR87AliQ=";
   };
 
   depsBuildBuild = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/libgsf/default.nix b/nixpkgs/pkgs/development/libraries/libgsf/default.nix
index 1850da7e6468..8bc2dc76160f 100644
--- a/nixpkgs/pkgs/development/libraries/libgsf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgsf/default.nix
@@ -1,26 +1,59 @@
-{ fetchurl, lib, stdenv, pkg-config, intltool, gettext, glib, libxml2, zlib, bzip2
-, perl, gdk-pixbuf, libiconv, libintl, gnome }:
+{ fetchurl
+, lib
+, stdenv
+, pkg-config
+, intltool
+, gettext
+, glib
+, libxml2
+, zlib
+, bzip2
+, perl
+, gdk-pixbuf
+, libiconv
+, libintl
+, gnome
+}:
 
 stdenv.mkDerivation rec {
   pname = "libgsf";
-  version = "1.14.48";
+  version = "1.14.49";
+
+  outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "/4bX8dRt0Ovvt72DCnSkHbZDYrmHv4hT//arTBEyuDc=";
+    sha256 = "6evjZojwEMnm5AyJA/NzKUjeuKygMleNB9B1G9gs+Fc=";
   };
 
-  nativeBuildInputs = [ pkg-config intltool libintl ];
+  nativeBuildInputs = [
+    pkg-config
+    intltool
+    libintl
+  ];
 
-  buildInputs = [ gettext bzip2 zlib ];
-  checkInputs = [ perl ];
+  buildInputs = [
+    gettext
+    bzip2
+    zlib
+  ];
 
-  propagatedBuildInputs = [ libxml2 glib gdk-pixbuf libiconv ];
+  checkInputs = [
+    perl
+  ];
 
-  outputs = [ "out" "dev" ];
+  propagatedBuildInputs = [
+    libxml2
+    glib
+    gdk-pixbuf
+    libiconv
+  ];
 
   doCheck = true;
-  preCheck = "patchShebangs ./tests/";
+
+  preCheck = ''
+    patchShebangs ./tests/
+  '';
 
   passthru = {
     updateScript = gnome.updateScript {
@@ -31,10 +64,10 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "GNOME's Structured File Library";
-    homepage    = "https://www.gnome.org/projects/libgsf";
-    license     = licenses.lgpl2Plus;
+    homepage = "https://www.gnome.org/projects/libgsf";
+    license = licenses.lgpl2Plus;
     maintainers = with maintainers; [ lovek323 ];
-    platforms   = lib.platforms.unix;
+    platforms = lib.platforms.unix;
 
     longDescription = ''
       Libgsf aims to provide an efficient extensible I/O abstraction for
diff --git a/nixpkgs/pkgs/development/libraries/libgweather/default.nix b/nixpkgs/pkgs/development/libraries/libgweather/default.nix
index fbab67e08652..e4a527ba4857 100644
--- a/nixpkgs/pkgs/development/libraries/libgweather/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libgweather/default.nix
@@ -6,12 +6,9 @@
 , pkg-config
 , libxml2
 , glib
-, gtk3
 , gettext
 , libsoup
-, gtk-doc
-, docbook-xsl-nons
-, docbook_xml_dtd_43
+, gi-docgen
 , gobject-introspection
 , python3
 , tzdata
@@ -22,24 +19,29 @@
 
 stdenv.mkDerivation rec {
   pname = "libgweather";
-  version = "40.0";
+  version = "4.0.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "1rkf4yv43qcahyx7bismdv6z2vh5azdnm1fqfmnzrada9cm8ykna";
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "RA1EgBtvcrSMZ25eN/kQnP7hOU/XTMknJeGxuk+ug0w=";
   };
 
+  patches = [
+    # Headers depend on glib but it is only listed in Requires.private,
+    # which does not influence Cflags on non-static builds in nixpkgs’s
+    # pkg-config. Let’s add it to Requires to ensure Cflags are set correctly.
+    ./fix-pkgconfig.patch
+  ];
+
   nativeBuildInputs = [
     meson
     ninja
     pkg-config
     gettext
     vala
-    gtk-doc
-    docbook-xsl-nons
-    docbook_xml_dtd_43
+    gi-docgen
     gobject-introspection
     python3
     python3.pkgs.pygobject3
@@ -47,7 +49,6 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     glib
-    gtk3
     libsoup
     libxml2
     geocode-glib
@@ -60,9 +61,13 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
-    chmod +x meson/meson_post_install.py
-    patchShebangs meson/meson_post_install.py
-    patchShebangs data/gen_locations_variant.py
+    patchShebangs build-aux/meson/meson_post_install.py
+    patchShebangs build-aux/meson/gen_locations_variant.py
+  '';
+
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
   '';
 
   passthru = {
diff --git a/nixpkgs/pkgs/development/libraries/libgweather/fix-pkgconfig.patch b/nixpkgs/pkgs/development/libraries/libgweather/fix-pkgconfig.patch
new file mode 100644
index 000000000000..b118a3bc9dd8
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libgweather/fix-pkgconfig.patch
@@ -0,0 +1,14 @@
+diff --git a/libgweather/meson.build b/libgweather/meson.build
+index b5d0b4d4..10010d70 100644
+--- a/libgweather/meson.build
++++ b/libgweather/meson.build
+@@ -269,6 +269,9 @@ pkgconfig.generate(
+   description: 'Gather weather information from online services',
+   version: meson.project_version(),
+   subdirs: libgweather_full_version,
++  requires: [
++    'glib-2.0',
++  ],
+   variables: [
+     'soupapiversion=' + libsoup_api_version,
+   ]
diff --git a/nixpkgs/pkgs/development/libraries/libhandy/0.x.nix b/nixpkgs/pkgs/development/libraries/libhandy/0.x.nix
index 7597aee697a8..2c2b09b44923 100644
--- a/nixpkgs/pkgs/development/libraries/libhandy/0.x.nix
+++ b/nixpkgs/pkgs/development/libraries/libhandy/0.x.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitLab, meson, ninja, pkg-config, gobject-introspection, vala
 , gtk-doc, docbook_xsl, docbook_xml_dtd_43
-, gtk3, gnome
+, gtk3, gnome-desktop
 , dbus, xvfb-run, libxml2
 , hicolor-icon-theme
 }:
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     meson ninja pkg-config gobject-introspection vala libxml2
     gtk-doc docbook_xsl docbook_xml_dtd_43
   ];
-  buildInputs = [ gnome.gnome-desktop gtk3 libxml2 ];
+  buildInputs = [ gnome-desktop gtk3 libxml2 ];
   checkInputs = [ dbus xvfb-run hicolor-icon-theme ];
 
   mesonFlags = [
diff --git a/nixpkgs/pkgs/development/libraries/libhandy/default.nix b/nixpkgs/pkgs/development/libraries/libhandy/default.nix
index 63c494999a93..c1d81f8043c8 100644
--- a/nixpkgs/pkgs/development/libraries/libhandy/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libhandy/default.nix
@@ -6,16 +6,13 @@
 , pkg-config
 , gobject-introspection
 , vala
-, gtk-doc
-, docbook-xsl-nons
-, docbook_xml_dtd_43
+, gi-docgen
 , glib
 , gsettings-desktop-schemas
 , gtk3
 , enableGlade ? false
 , glade
 , xvfb-run
-, libxml2
 , gdk-pixbuf
 , librsvg
 , hicolor-icon-theme
@@ -28,7 +25,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libhandy";
-  version = "1.5.0";
+  version = "1.6.1";
 
   outputs = [
     "out"
@@ -41,15 +38,12 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-RmueAmwfnrO2WWb1MNl3A6ghLar5EXSMFF6cuEPb1v4=";
+    sha256 = "sha256-bqsDhEBNVr0bH6BZ2aCBF3d49q4ID/whIPKGVsp0YqQ=";
   };
 
   nativeBuildInputs = [
-    docbook_xml_dtd_43
-    docbook-xsl-nons
     gobject-introspection
-    gtk-doc
-    libxml2
+    gi-docgen
     meson
     ninja
     pkg-config
@@ -59,7 +53,6 @@ stdenv.mkDerivation rec {
   buildInputs = [
     gdk-pixbuf
     gtk3
-    libxml2
   ] ++ lib.optionals enableGlade [
     glade
   ];
@@ -106,6 +99,11 @@ stdenv.mkDerivation rec {
     runHook postCheck
   '';
 
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
+  '';
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/nixpkgs/pkgs/development/libraries/libical/default.nix b/nixpkgs/pkgs/development/libraries/libical/default.nix
index f4a1959a512c..77c595c9184a 100644
--- a/nixpkgs/pkgs/development/libraries/libical/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libical/default.nix
@@ -20,7 +20,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libical";
-  version = "3.0.11";
+  version = "3.0.14";
 
   outputs = [ "out" "dev" ]; # "devdoc" ];
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     owner = "libical";
     repo = "libical";
     rev = "v${version}";
-    sha256 = "sha256-9kMYqWITZ2LlBDebJUZFWyVclAjfIZtc3Dm7lii9ZMc=";
+    sha256 = "sha256-gZ6IBjG5pNKJ+hWcTzXMP7yxL4he4LTklZGoC9vXra8=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/libidn/default.nix b/nixpkgs/pkgs/development/libraries/libidn/default.nix
index e47bb070a36e..a84b617e4c0e 100644
--- a/nixpkgs/pkgs/development/libraries/libidn/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libidn/default.nix
@@ -35,7 +35,6 @@ stdenv.mkDerivation rec {
       included.
     '';
 
-    repositories.git = "git://git.savannah.gnu.org/libidn.git";
     license = lib.licenses.lgpl2Plus;
     platforms = lib.platforms.all;
     maintainers = with lib.maintainers; [ lsix ];
diff --git a/nixpkgs/pkgs/development/libraries/libidn2/default.nix b/nixpkgs/pkgs/development/libraries/libidn2/default.nix
index 2b5434e723aa..d8294f56adc3 100644
--- a/nixpkgs/pkgs/development/libraries/libidn2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libidn2/default.nix
@@ -39,7 +39,6 @@ stdenv.mkDerivation rec {
       detailed information.
     '';
 
-    repositories.git = "https://gitlab.com/jas/libidn2";
     license = with lib.licenses; [ lgpl3Plus gpl2Plus gpl3Plus ];
     platforms = lib.platforms.all;
     maintainers = with lib.maintainers; [ fpletz ];
diff --git a/nixpkgs/pkgs/development/libraries/liblastfm/default.nix b/nixpkgs/pkgs/development/libraries/liblastfm/default.nix
index 6b28175a9b62..0f0fec46a277 100644
--- a/nixpkgs/pkgs/development/libraries/liblastfm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/liblastfm/default.nix
@@ -27,7 +27,6 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://github.com/lastfm/liblastfm";
-    repositories.git = "git://github.com/lastfm/liblastfm.git";
     description = "Official LastFM library";
     platforms = platforms.unix;
     maintainers = [ ];
diff --git a/nixpkgs/pkgs/development/libraries/libnatpmp/default.nix b/nixpkgs/pkgs/development/libraries/libnatpmp/default.nix
index 9672d1cceca7..54177ad559d6 100644
--- a/nixpkgs/pkgs/development/libraries/libnatpmp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libnatpmp/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchurl, fixDarwinDylibNames }:
 
 stdenv.mkDerivation rec {
   pname = "libnatpmp";
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
     "CC:=$(CC)"
   ];
 
+  nativeBuildInputs = lib.optional stdenv.isDarwin fixDarwinDylibNames;
+
   postFixup = ''
     chmod +x $out/lib/*
   '';
diff --git a/nixpkgs/pkgs/development/libraries/libnbd/default.nix b/nixpkgs/pkgs/development/libraries/libnbd/default.nix
index 3988a79c3251..ba21e2206a8d 100644
--- a/nixpkgs/pkgs/development/libraries/libnbd/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libnbd/default.nix
@@ -6,16 +6,17 @@
 , perl
 , libxml2
 , fuse
+, fuse3
 , gnutls
 }:
 
 stdenv.mkDerivation rec {
   pname = "libnbd";
-  version = "1.9.5";
+  version = "1.12.2";
 
   src = fetchurl {
-    url = "https://download.libguestfs.org/libnbd/${lib.versions.majorMinor version}-development/${pname}-${version}.tar.gz";
-    hash = "sha256-BnMoxIiuwhqcwVr3AwAIFgZPcFsIg55N66ZwWMTUnCw=";
+    url = "https://download.libguestfs.org/libnbd/${lib.versions.majorMinor version}-stable/${pname}-${version}.tar.gz";
+    hash = "sha256-57veJapt72LkP02wO4c1nDdHmnodqfT+rKPNDeTGQPM=";
   };
 
   nativeBuildInputs = [
@@ -26,6 +27,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     fuse
+    fuse3
     gnutls
     libxml2
   ];
@@ -55,7 +57,6 @@ stdenv.mkDerivation rec {
     platforms = with platforms; linux;
   };
 }
-# TODO: NBD URI support apparently is not enabled
 # TODO: package the 1.6-stable version too
 # TODO: git version needs ocaml
 # TODO: bindings for go, ocaml and python
diff --git a/nixpkgs/pkgs/development/libraries/liboauth/default.nix b/nixpkgs/pkgs/development/libraries/liboauth/default.nix
index 7ca9ec5acb6d..3f2f02987fbb 100644
--- a/nixpkgs/pkgs/development/libraries/liboauth/default.nix
+++ b/nixpkgs/pkgs/development/libraries/liboauth/default.nix
@@ -27,7 +27,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.all;
     description = "C library implementing the OAuth secure authentication protocol";
     homepage = "http://liboauth.sourceforge.net/";
-    repositories.git = "https://github.com/x42/liboauth.git";
     license = licenses.mit;
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/libotr/default.nix b/nixpkgs/pkgs/development/libraries/libotr/default.nix
index 53699ab7eacd..bd8a521544c2 100644
--- a/nixpkgs/pkgs/development/libraries/libotr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libotr/default.nix
@@ -16,7 +16,6 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "http://www.cypherpunks.ca/otr/";
-    repositories.git = "git://git.code.sf.net/p/otr/libotr";
     license = licenses.lgpl21;
     description = "Library for Off-The-Record Messaging";
     platforms = platforms.unix;
diff --git a/nixpkgs/pkgs/development/libraries/libpeas/default.nix b/nixpkgs/pkgs/development/libraries/libpeas/default.nix
index 55c884d215fd..712592431abe 100644
--- a/nixpkgs/pkgs/development/libraries/libpeas/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libpeas/default.nix
@@ -1,25 +1,61 @@
-{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gettext, gnome
-, glib, gtk3, gobject-introspection, python3, ncurses
+{ stdenv
+, lib
+, fetchurl
+, meson
+, ninja
+, pkg-config
+, gettext
+, gi-docgen
+, gnome
+, glib
+, gtk3
+, gobject-introspection
+, python3
+, ncurses
 }:
 
 stdenv.mkDerivation rec {
   pname = "libpeas";
-  version = "1.30.0";
+  version = "1.32.0";
 
-  outputs = [ "out" "dev" ];
+  outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "18xrk1c1ixlhkmykcfiafrl2am470ws687xqvjlq40zwkcp5dx8b";
+    sha256 = "1iVSD6AuiXcCmyRq5Dm8IYloll8egtYSIItxPx3MPQ4=";
   };
 
-  nativeBuildInputs = [ pkg-config meson ninja gettext gobject-introspection ];
-  buildInputs =  [ glib gtk3 ncurses python3 python3.pkgs.pygobject3 ];
+  nativeBuildInputs = [
+    pkg-config
+    meson
+    ninja
+    gettext
+    gi-docgen
+    gobject-introspection
+  ];
+
+  buildInputs = [
+    glib
+    gtk3
+    ncurses
+    python3
+    python3.pkgs.pygobject3
+  ];
+
   propagatedBuildInputs = [
     # Required by libpeas-1.0.pc
     gobject-introspection
   ];
 
+  mesonFlags = [
+    "-Dgtk_doc=true"
+  ];
+
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
+  '';
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/nixpkgs/pkgs/development/libraries/libportal/default.nix b/nixpkgs/pkgs/development/libraries/libportal/default.nix
index b261c0395e6d..cb0da5c560d2 100644
--- a/nixpkgs/pkgs/development/libraries/libportal/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libportal/default.nix
@@ -18,7 +18,7 @@ assert variant == null || variant == "gtk3" || variant == "gtk4" || variant == "
 
 stdenv.mkDerivation rec {
   pname = "libportal" + lib.optionalString (variant != null) "-${variant}";
-  version = "0.5";
+  version = "0.6";
 
   outputs = [ "out" "dev" "devdoc" ];
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     owner = "flatpak";
     repo = "libportal";
     rev = version;
-    sha256 = "oPPO2f6NNeok0SGh4jELkkOP6VUxXZiwPM/n6CUHm0Q=";
+    sha256 = "sha256-wDDE43UC6FBgPYLS+WWExeheURCH/3fCKu5oJg7GM+A=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/libpwquality/default.nix b/nixpkgs/pkgs/development/libraries/libpwquality/default.nix
index 5d83b137b8e6..abc65130fc3a 100644
--- a/nixpkgs/pkgs/development/libraries/libpwquality/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libpwquality/default.nix
@@ -1,36 +1,57 @@
-{ stdenv, lib, fetchFromGitHub, autoreconfHook, perl, cracklib, python3, fetchpatch }:
+{ stdenv
+, lib
+, fetchFromGitHub
+, autoreconfHook
+, perl
+, cracklib
+, enablePAM ? stdenv.hostPlatform.isLinux
+, pam
+, enablePython ? false
+, python
+}:
+
+# python binding generates a shared library which are unavailable with musl build
+assert enablePython -> !stdenv.hostPlatform.isStatic;
 
 stdenv.mkDerivation rec {
   pname = "libpwquality";
-  version = "1.4.2";
+  version = "1.4.4";
+
+  outputs = [ "out" "dev" "lib" "man" ] ++ lib.optionals enablePython [ "py" ];
 
   src = fetchFromGitHub {
     owner = "libpwquality";
     repo = "libpwquality";
     rev = "${pname}-${version}";
-    sha256 = "0n4pjhm7wfivk0wizggaxq4y4mcxic876wcarjabkp5z9k14y36h";
+    sha256 = "sha256-7gAzrx5VP1fEBwAt6E5zGM8GyuPRR+JxYifYfirY+U8=";
   };
 
-  nativeBuildInputs = [ autoreconfHook perl python3 ];
-  buildInputs = [ cracklib ];
-
-  patches = lib.optional stdenv.hostPlatform.isStatic [
-    (fetchpatch {
-      name = "static-build.patch";
-      url = "https://github.com/libpwquality/libpwquality/pull/40.patch";
-      sha256 = "1ypccq437wxwgddd98cvd330jfm7jscdlzlyxgy05g6yzrr68xyk";
-    })
+  patches = [
+    # ensure python site-packages goes in $py output
+    ./python-binding-prefix.patch
   ];
 
-  configureFlags = lib.optional stdenv.hostPlatform.isStatic [
-    # Python binding generates a shared library which are unavailable with musl build
-    "--disable-python-bindings"
-  ];
+  nativeBuildInputs = [ autoreconfHook perl ] ++ lib.optionals enablePython [ python ];
+  buildInputs = [ cracklib ] ++ lib.optionals enablePAM [ pam ];
+
+  configureFlags = lib.optionals (!enablePython) [ "--disable-python-bindings" ];
 
   meta = with lib; {
-    description = "Password quality checking and random password generation library";
     homepage = "https://github.com/libpwquality/libpwquality";
-    license = licenses.bsd3;
+    description = "Password quality checking and random password generation library";
+    longDescription = ''
+      The libpwquality library purpose is to provide common functions for
+      password quality checking and also scoring them based on their apparent
+      randomness. The library also provides a function for generating random
+      passwords with good pronounceability. The library supports reading and
+      parsing of a configuration file.
+
+      In the package there are also very simple utilities that use the library
+      function and PAM module that can be used instead of pam_cracklib. The
+      module supports all the options of pam_cracklib.
+    '';
+    license = with licenses; [ bsd3 /* or */ gpl2Plus ];
+    maintainers = with maintainers; [ jk ];
     platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libpwquality/python-binding-prefix.patch b/nixpkgs/pkgs/development/libraries/libpwquality/python-binding-prefix.patch
new file mode 100644
index 000000000000..a8f77142e1db
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libpwquality/python-binding-prefix.patch
@@ -0,0 +1,13 @@
+diff --git a/python/Makefile.am b/python/Makefile.am
+index 1d00c0c..0987690 100644
+--- a/python/Makefile.am
++++ b/python/Makefile.am
+@@ -14,7 +14,7 @@ all-local:
+ 	CFLAGS="${CFLAGS} -fno-strict-aliasing" @PYTHONBINARY@ setup.py build --build-base py$(PYTHONREV)
+ 
+ install-exec-local:
+-	CFLAGS="${CFLAGS} -fno-strict-aliasing" @PYTHONBINARY@ setup.py build --build-base py$(PYTHONREV) install --prefix=${DESTDIR}${prefix}
++	CFLAGS="${CFLAGS} -fno-strict-aliasing" @PYTHONBINARY@ setup.py build --build-base py$(PYTHONREV) install --prefix=${DESTDIR}${py}
+ 
+ clean-local:
+ 	rm -rf py$(PYTHONREV)
diff --git a/nixpkgs/pkgs/development/libraries/libqalculate/default.nix b/nixpkgs/pkgs/development/libraries/libqalculate/default.nix
index bb70ffcd32a5..55132d155238 100644
--- a/nixpkgs/pkgs/development/libraries/libqalculate/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libqalculate/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libqalculate";
-  version = "4.0.0";
+  version = "4.1.0";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "libqalculate";
     rev = "v${version}";
-    sha256 = "sha256-aRHwkdAbM164diIAIyBp1Kt6u/GLyCWTtwF4eFaWbGU=";
+    sha256 = "sha256-P3mb5HEj9gHq2mABdIRxF6ZukrPd70sy0DRLT0qKDqk=";
   };
 
   outputs = [ "out" "dev" "doc" ];
diff --git a/nixpkgs/pkgs/development/libraries/libqb/default.nix b/nixpkgs/pkgs/development/libraries/libqb/default.nix
index fa448fa09695..5cbc9b8f09b7 100644
--- a/nixpkgs/pkgs/development/libraries/libqb/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libqb/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libqb";
-  version = "2.0.4";
+  version = "2.0.6";
 
   src = fetchFromGitHub {
     owner = "ClusterLabs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-s6b2/bCVNzr3IBqiSAjiJ/DHCqkRwR1aA+J4uBP5mO4=";
+    sha256 = "sha256-vt9FmIRojX3INOn3CXAjkswVFD8Th4sRIz3RR4GJHFQ=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/nixpkgs/pkgs/development/libraries/libressl/default.nix b/nixpkgs/pkgs/development/libraries/libressl/default.nix
index 7a2718c01539..1ad63db733df 100644
--- a/nixpkgs/pkgs/development/libraries/libressl/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libressl/default.nix
@@ -86,12 +86,8 @@ let
   };
 
 in {
-  libressl_3_2 = generic {
-    version = "3.2.7";
-    sha256 = "112bjfrwwqlk0lak7fmfhcls18ydf62cp7gxghf4gklpfl1zyckw";
-  };
   libressl_3_4 = generic {
-    version = "3.4.2";
-    sha256 = "sha256-y4LKfVRzNpFzUvvSPbL8SDxsRNNRV7MngCFOx0GXs84=";
+    version = "3.4.3";
+    sha256 = "sha256-/4i//jVIGLPM9UXjyv5FTFAxx6dyFwdPUzJx1jw38I0=";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/librest/1.0.nix b/nixpkgs/pkgs/development/libraries/librest/1.0.nix
new file mode 100644
index 000000000000..d51f9e31b178
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/librest/1.0.nix
@@ -0,0 +1,74 @@
+{ lib
+, stdenv
+, fetchurl
+, meson
+, ninja
+, pkg-config
+, gi-docgen
+, glib
+, json-glib
+, libsoup
+, gobject-introspection
+, gnome
+}:
+
+stdenv.mkDerivation rec {
+  pname = "rest";
+  version = "0.9.0";
+
+  outputs = [ "out" "dev" "devdoc" ];
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "hbK8k0ESgTlTm1PuU/BTMxC8ljkv1kWGOgQEELgevmY=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    gi-docgen
+    gobject-introspection
+  ];
+
+  buildInputs = [
+    glib
+    json-glib
+    libsoup
+  ];
+
+  mesonFlags = [
+    "-Dexamples=false"
+
+    # Remove when https://gitlab.gnome.org/GNOME/librest/merge_requests/2 is merged.
+    "-Dca_certificates=true"
+    "-Dca_certificates_path=/etc/ssl/certs/ca-certificates.crt"
+  ];
+
+  postPatch = ''
+    # https://gitlab.gnome.org/GNOME/librest/-/merge_requests/19
+    substituteInPlace meson.build \
+      --replace "con." "conf."
+  '';
+
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
+  '';
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      attrPath = "librest_1_0";
+      versionPolicy = "odd-unstable";
+    };
+  };
+
+  meta = with lib; {
+    description = "Helper library for RESTful services";
+    homepage = "https://wiki.gnome.org/Projects/Librest";
+    license = licenses.lgpl21Only;
+    platforms = platforms.unix;
+    maintainers = teams.gnome.members;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/librest/default.nix b/nixpkgs/pkgs/development/libraries/librest/default.nix
index ce2df9cc9a8a..abe53ff3692f 100644
--- a/nixpkgs/pkgs/development/libraries/librest/default.nix
+++ b/nixpkgs/pkgs/development/libraries/librest/default.nix
@@ -48,6 +48,7 @@ stdenv.mkDerivation rec {
       packageName = pname;
       attrPath = "librest";
       versionPolicy = "odd-unstable";
+      freeze = true;
     };
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/librsvg/default.nix b/nixpkgs/pkgs/development/libraries/librsvg/default.nix
index 81cad37351a5..b09354413841 100644
--- a/nixpkgs/pkgs/development/libraries/librsvg/default.nix
+++ b/nixpkgs/pkgs/development/libraries/librsvg/default.nix
@@ -16,6 +16,8 @@
 , rustc
 , rust
 , cargo
+, gi-docgen
+, python3
 , gnome
 , vala
 , withIntrospection ? stdenv.hostPlatform == stdenv.buildPlatform
@@ -25,13 +27,15 @@
 
 stdenv.mkDerivation rec {
   pname = "librsvg";
-  version = "2.52.6";
+  version = "2.54.0";
 
-  outputs = [ "out" "dev" "installedTests" ];
+  outputs = [ "out" "dev" "installedTests" ] ++ lib.optionals withIntrospection [
+    "devdoc"
+  ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "o/k5oeajpgQIJEYy0DI/jDsg60t7AAU24uW9k7jv+q0=";
+    sha256 = "uvjrwUfxRrQmG7PQzQ+slEv427Sx8jR9IzQfl03MMIU=";
   };
 
   cargoVendorDir = "vendor";
@@ -45,10 +49,12 @@ stdenv.mkDerivation rec {
     pkg-config
     rustc
     cargo
+    python3.pkgs.docutils
     vala
     rustPlatform.cargoSetupHook
   ] ++ lib.optionals withIntrospection [
     gobject-introspection
+    gi-docgen
   ];
 
   buildInputs = [
@@ -119,6 +125,11 @@ stdenv.mkDerivation rec {
     mv $GDK_PIXBUF/loaders.cache.tmp $GDK_PIXBUF/loaders.cache
   '';
 
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
+  '';
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/nixpkgs/pkgs/development/libraries/librtprocess/default.nix b/nixpkgs/pkgs/development/libraries/librtprocess/default.nix
index 3e44bfd3d7dd..c7e9b3895d98 100644
--- a/nixpkgs/pkgs/development/libraries/librtprocess/default.nix
+++ b/nixpkgs/pkgs/development/libraries/librtprocess/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "librtprocess";
-  version = "0.11.0";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = "CarVac";
     repo = pname;
     rev = version;
-    sha256 = "1bivy3rymmmkdx5phbxq4qaq15hw633dgpks57z9ara15mh817xx";
+    sha256 = "sha256-/1o6SWUor+ZBQ6RsK2PoDRu03jcVRG58PNYFttriH2w=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/libsecret/default.nix b/nixpkgs/pkgs/development/libraries/libsecret/default.nix
index 18f00a0933c3..9e8be02aa63a 100644
--- a/nixpkgs/pkgs/development/libraries/libsecret/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsecret/default.nix
@@ -1,42 +1,76 @@
-{ lib, stdenv, fetchurl, fetchpatch, glib, pkg-config, gettext, libxslt, python3
-, docbook_xsl, docbook_xml_dtd_42 , libgcrypt, gobject-introspection, vala
-, gtk-doc, gnome, gjs, libintl, dbus, xvfb-run }:
+{ stdenv
+, lib
+, fetchurl
+, glib
+, meson
+, ninja
+, pkg-config
+, gettext
+, libxslt
+, python3
+, docbook-xsl-nons
+, docbook_xml_dtd_42
+, libgcrypt
+, gobject-introspection
+, vala
+, gi-docgen
+, gnome
+, gjs
+, libintl
+, dbus
+, xvfb-run
+}:
 
 stdenv.mkDerivation rec {
   pname = "libsecret";
-  version = "0.20.4";
+  version = "0.20.5";
+
+  outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0a4xnfmraxchd9cq5ai66j12jv2vrgjmaaxz25kl031jvda4qnij";
+    sha256 = "P7PONA/NfbVNh8iT5pv8Kx9uTUsnkGX/5m2snw/RK00=";
   };
 
-  postPatch = ''
-    patchShebangs .
-  '';
-
-  outputs = [ "out" "dev" "devdoc" ];
-
-  propagatedBuildInputs = [ glib ];
   nativeBuildInputs = [
-    pkg-config gettext libxslt docbook_xsl docbook_xml_dtd_42 libintl
-    gobject-introspection vala gtk-doc glib
+    meson
+    ninja
+    pkg-config
+    gettext
+    libxslt # for xsltproc for building man pages
+    docbook-xsl-nons
+    docbook_xml_dtd_42
+    libintl
+    gobject-introspection
+    vala
+    gi-docgen
+    glib
   ];
-  buildInputs = [ libgcrypt ];
-  # optional: build docs with gtk-doc? (probably needs a flag as well)
 
-  configureFlags = [
-    "--with-libgcrypt-prefix=${libgcrypt.dev}"
+  buildInputs = [
+    libgcrypt
   ];
 
-  enableParallelBuilding = true;
+  propagatedBuildInputs = [
+    glib
+  ];
 
   installCheckInputs = [
-    python3 python3.pkgs.dbus-python python3.pkgs.pygobject3 xvfb-run dbus gjs
+    python3
+    python3.pkgs.dbus-python
+    python3.pkgs.pygobject3
+    xvfb-run
+    dbus
+    gjs
   ];
 
   # needs to run after install because typelibs point to absolute paths
   doInstallCheck = false; # Failed to load shared library '/force/shared/libmock_service.so.0' referenced by the typelib
+
+  postPatch = ''
+    patchShebangs .
+  '';
+
   installCheckPhase = ''
     export NO_AT_BRIDGE=1
     xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
@@ -44,6 +78,11 @@ stdenv.mkDerivation rec {
       make check
   '';
 
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
+  '';
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/nixpkgs/pkgs/development/libraries/libsolv/default.nix b/nixpkgs/pkgs/development/libraries/libsolv/default.nix
index 1062cc8e6505..2d50851e5832 100644
--- a/nixpkgs/pkgs/development/libraries/libsolv/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libsolv/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub, cmake, ninja, zlib, expat, rpm, db }:
 
 stdenv.mkDerivation rec {
-  version  = "0.7.20";
+  version  = "0.7.21";
   pname = "libsolv";
 
   src = fetchFromGitHub {
     owner  = "openSUSE";
     repo   = "libsolv";
     rev    = version;
-    sha256 = "sha256-NVyLa/fPGnO5jAz9rePFXg/z6RZeFCrkJBCG3gGh+YM=";
+    sha256 = "sha256-ka1HXVo0CFr0eqGTkatYq1jXE+9UgM0YTZNW1WtMLF0=";
   };
 
   cmakeFlags = [
diff --git a/nixpkgs/pkgs/development/libraries/libsoup/3.x.nix b/nixpkgs/pkgs/development/libraries/libsoup/3.x.nix
index 454a1cdf40a2..4791e49ae3fa 100644
--- a/nixpkgs/pkgs/development/libraries/libsoup/3.x.nix
+++ b/nixpkgs/pkgs/development/libraries/libsoup/3.x.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libsoup";
-  version = "3.0.4";
+  version = "3.0.5";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-W9OLXgkfcH/X+j7Xw3qsyj+OFsZXh/HMF9w40dzeVns=";
+    sha256 = "sha256-9dFD22gws4Je3CocREnWOSc7C/oBeklwhxli2byiIUU=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/libthreadar/default.nix b/nixpkgs/pkgs/development/libraries/libthreadar/default.nix
index 5a88d4ba2056..8e94275babfd 100644
--- a/nixpkgs/pkgs/development/libraries/libthreadar/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libthreadar/default.nix
@@ -1,18 +1,20 @@
-{ lib, stdenv, fetchurl }:
-
-with lib;
+{ lib, stdenv, fetchurl, gcc-unwrapped }:
 
 stdenv.mkDerivation rec {
-  version = "1.3.5";
+  version = "1.4.0";
   pname = "libthreadar";
 
   src = fetchurl {
     url = "mirror://sourceforge/libthreadar/${pname}-${version}.tar.gz";
-    sha256 = "sha256-T5W83Ry3e1hHrnpmSLkfJDYHrVP6YDpXTqmf0WGCjB8=";
+    sha256 = "sha256-LkcVF4AnuslzpIg/S8sGNJQye6iGcQRGqCqAhg8aN5E=";
   };
 
   outputs = [ "out" "dev" ];
 
+  buildInputs = [ gcc-unwrapped ];
+
+  CXXFLAGS = [ "-std=c++14" ];
+
   configureFlags = [
     "--disable-build-html"
   ];
@@ -22,7 +24,7 @@ stdenv.mkDerivation rec {
     rm -r "$out"/share
   '';
 
-  meta = {
+  meta = with lib; {
     homepage = "http://libthreadar.sourceforge.net/";
     description = "A C++ library that provides several classes to manipulate threads";
     longDescription = ''
@@ -32,6 +34,5 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ izorkin ];
     license = licenses.lgpl3;
     platforms = platforms.unix;
-    broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/libthreadar.x86_64-darwin
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libtiff/default.nix b/nixpkgs/pkgs/development/libraries/libtiff/default.nix
index 1371345ddd7c..190765273409 100644
--- a/nixpkgs/pkgs/development/libraries/libtiff/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libtiff/default.nix
@@ -9,6 +9,16 @@
 , libjpeg
 , xz
 , zlib
+
+# for passthru.tests
+, libgeotiff
+, python3Packages
+, imagemagick
+, graphicsmagick
+, gdal
+, openimageio
+, freeimage
+, imlib
 }:
 
 #FIXME: fix aarch64-darwin build and get rid of ./aarch64-darwin.nix
@@ -69,6 +79,11 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
+  passthru.tests = {
+    inherit libgeotiff imagemagick graphicsmagick gdal openimageio freeimage imlib;
+    inherit (python3Packages) pillow imread;
+  };
+
   meta = with lib; {
     description = "Library and utilities for working with the TIFF image file format";
     homepage = "https://libtiff.gitlab.io/libtiff";
diff --git a/nixpkgs/pkgs/development/libraries/libtoxcore/default.nix b/nixpkgs/pkgs/development/libraries/libtoxcore/default.nix
index 10cc499d09d6..5d97a263b880 100644
--- a/nixpkgs/pkgs/development/libraries/libtoxcore/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libtoxcore/default.nix
@@ -53,7 +53,7 @@ in {
   };
 
   libtoxcore_0_2 = generic {
-    version = "0.2.13";
-    sha256 = "0a1cp00bnxl3q4l74yqp4aa6fg9slz4rg4lfzkl3khvmm6nzckds";
+    version = "0.2.17";
+    sha256 = "sha256-SOI6QKOSt/EK9JDrSaV6CrD5sx8aYb5ZL3StYq8u/Dg=";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/libudev-zero/default.nix b/nixpkgs/pkgs/development/libraries/libudev-zero/default.nix
index 9b154f34205e..1c12504aa38c 100644
--- a/nixpkgs/pkgs/development/libraries/libudev-zero/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libudev-zero/default.nix
@@ -1,25 +1,16 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch }:
+{ lib, stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation rec {
   pname = "libudev-zero";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "illiliti";
     repo = "libudev-zero";
     rev = version;
-    sha256 = "0mln7iwyz7lxz8dx7bx7b47j6yws1dvfq35qsdcwg3wwmd4ngsz6";
+    sha256 = "1dg6zqy8w3gxca8clz6hhv4jyvz8jdwvpmn9y289nrms1zx1jcs5";
   };
 
-  patches = [
-    # Fix static.
-    # https://github.com/illiliti/libudev-zero/pull/48
-    (fetchpatch {
-      url = "https://github.com/illiliti/libudev-zero/commit/505c61819b371a1802e054fe2601e64f2dc6d79e.patch";
-      sha256 = "0y06rgjv73dd7fi3a0dlabcc8ryk3yhbsyrrhnnn3v36y1wz6m0g";
-    })
-  ];
-
   makeFlags = [ "PREFIX=$(out)" ];
 
   # Just let the installPhase build stuff, because there's no
@@ -31,6 +22,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/illiliti/libudev-zero";
     description = "Daemonless replacement for libudev";
+    changelog = "https://github.com/illiliti/libudev-zero/releases/tag/${version}";
     maintainers = with maintainers; [ qyliss shamilton ];
     license = licenses.isc;
     platforms = platforms.linux;
diff --git a/nixpkgs/pkgs/development/libraries/libusb-compat/0.1.nix b/nixpkgs/pkgs/development/libraries/libusb-compat/0.1.nix
index b23123f56eaa..f977d72e7242 100644
--- a/nixpkgs/pkgs/development/libraries/libusb-compat/0.1.nix
+++ b/nixpkgs/pkgs/development/libraries/libusb-compat/0.1.nix
@@ -35,7 +35,6 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://libusb.info/";
-    repositories.git = "https://github.com/libusb/libusb-compat-0.1";
     description = "cross-platform user-mode USB device library";
     longDescription = ''
       libusb is a cross-platform user-mode library that provides access to USB devices.
diff --git a/nixpkgs/pkgs/development/libraries/libusb1/default.nix b/nixpkgs/pkgs/development/libraries/libusb1/default.nix
index 69410cf2b986..1514d2702103 100644
--- a/nixpkgs/pkgs/development/libraries/libusb1/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libusb1/default.nix
@@ -45,7 +45,6 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://libusb.info/";
-    repositories.git = "https://github.com/libusb/libusb";
     description = "cross-platform user-mode USB device library";
     longDescription = ''
       libusb is a cross-platform user-mode library that provides access to USB devices.
diff --git a/nixpkgs/pkgs/development/libraries/libvirt/0001-qemu-segmentation-fault-in-virtqemud-executing-qemuD.patch b/nixpkgs/pkgs/development/libraries/libvirt/0001-qemu-segmentation-fault-in-virtqemud-executing-qemuD.patch
new file mode 100644
index 000000000000..375267dcda79
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libvirt/0001-qemu-segmentation-fault-in-virtqemud-executing-qemuD.patch
@@ -0,0 +1,48 @@
+From 823a62ec8aac4fb75e6e281164f3eb56ae47597c Mon Sep 17 00:00:00 2001
+From: Boris Fiuczynski <fiuczy@linux.ibm.com>
+Date: Tue, 1 Mar 2022 18:47:59 +0100
+Subject: [PATCH] qemu: segmentation fault in virtqemud executing
+ qemuDomainUndefineFlags
+
+Commit 5adfb3472342741c443ac91dee0abb18b5a3d038 causes a segmentation fault.
+
+Stack trace of thread 664419:
+ #0  0x000003ff62ec553c in qemuDomainUndefineFlags (dom=0x3ff6c002810, flags=<optimized out>) at ../src/qemu/qemu_driver.c:6618
+ #1  0x000003ff876a7e5c in virDomainUndefineFlags (domain=domain@entry=0x3ff6c002810, flags=<optimized out>) at ../src/libvirt-domain.c:6519
+ #2  0x000002aa2b64a808 in remoteDispatchDomainUndefineFlags (server=0x2aa2c3d7880, msg=0x2aa2c3d2770, args=<optimized out>, rerr=0x3ff8287b950, client=<optimized out>)
+        at src/remote/remote_daemon_dispatch_stubs.h:13080
+ #3  remoteDispatchDomainUndefineFlagsHelper (server=0x2aa2c3d7880, client=<optimized out>, msg=0x2aa2c3d2770, rerr=0x3ff8287b950, args=<optimized out>, ret=0x0)
+        at src/remote/remote_daemon_dispatch_stubs.h:13059
+ #4  0x000003ff8758bbf4 in virNetServerProgramDispatchCall (msg=0x2aa2c3d2770, client=0x2aa2c3e3050, server=0x2aa2c3d7880, prog=0x2aa2c3d8010)
+        at ../src/rpc/virnetserverprogram.c:428
+ #5  virNetServerProgramDispatch (prog=0x2aa2c3d8010, server=server@entry=0x2aa2c3d7880, client=0x2aa2c3e3050, msg=0x2aa2c3d2770) at ../src/rpc/virnetserverprogram.c:302
+ #6  0x000003ff8758c260 in virNetServerProcessMsg (msg=<optimized out>, prog=<optimized out>, client=<optimized out>, srv=0x2aa2c3d7880) at ../src/rpc/virnetserver.c:140
+ #7  virNetServerHandleJob (jobOpaque=0x2aa2c3e2d30, opaque=0x2aa2c3d7880) at ../src/rpc/virnetserver.c:160
+ #8  0x000003ff874c49aa in virThreadPoolWorker (opaque=<optimized out>) at ../src/util/virthreadpool.c:164
+ #9  0x000003ff874c3f62 in virThreadHelper (data=<optimized out>) at ../src/util/virthread.c:256
+ #10 0x000003ff86c1cf8c in start_thread () from /lib64/libc.so.6
+ #11 0x000003ff86c9650e in thread_start () from /lib64/libc.so.6
+
+Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
+Reviewed-by: Jim Fehlig <jfehlig@suse.com>
+Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
+---
+ src/qemu/qemu_driver.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
+index bcd9bdb436..8337eed510 100644
+--- a/src/qemu/qemu_driver.c
++++ b/src/qemu/qemu_driver.c
+@@ -6615,7 +6615,7 @@ qemuDomainUndefineFlags(virDomainPtr dom,
+         }
+     }
+ 
+-    if (vm->def->os.loader->nvram) {
++    if (vm->def->os.loader && vm->def->os.loader->nvram) {
+         nvram_path = g_strdup(vm->def->os.loader->nvram);
+     } else if (vm->def->os.firmware == VIR_DOMAIN_OS_DEF_FIRMWARE_EFI) {
+         qemuDomainNVRAMPathFormat(cfg, vm->def, &nvram_path);
+-- 
+2.35.1
+
diff --git a/nixpkgs/pkgs/development/libraries/libvirt/default.nix b/nixpkgs/pkgs/development/libraries/libvirt/default.nix
index 14e0e478790c..cda7c091908d 100644
--- a/nixpkgs/pkgs/development/libraries/libvirt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libvirt/default.nix
@@ -130,6 +130,7 @@ stdenv.mkDerivation rec {
 
   patches = [
     ./0001-meson-patch-in-an-install-prefix-for-building-on-nix.patch
+    ./0001-qemu-segmentation-fault-in-virtqemud-executing-qemuD.patch
   ];
 
   # remove some broken tests
@@ -330,7 +331,6 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = "https://libvirt.org/";
-    repositories.git = "git://libvirt.org/libvirt.git";
     description = ''
       A toolkit to interact with the virtualization capabilities of recent
       versions of Linux (and other OSes)
diff --git a/nixpkgs/pkgs/development/libraries/lime/default.nix b/nixpkgs/pkgs/development/libraries/lime/default.nix
index 6d6e8c519de7..7e7edff6bffb 100644
--- a/nixpkgs/pkgs/development/libraries/lime/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lime/default.nix
@@ -11,7 +11,7 @@
 
 stdenv.mkDerivation rec {
   pname = "lime";
-  version = "5.0.0";
+  version = "5.0.53";
 
   src = fetchFromGitLab {
     domain = "gitlab.linphone.org";
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "sha256-11vvvA+pud/eOyYsbRKVvGfiyhwdhNPfRQSfaquUro8=";
+    sha256 = "sha256-M+KdauIVsN3c+cEPw4CaMzXnQZwAPNXeJCriuk9NCWM=";
   };
 
   buildInputs = [ bctoolbox soci belle-sip sqlite boost ];
diff --git a/nixpkgs/pkgs/development/libraries/lpcnetfreedv/default.nix b/nixpkgs/pkgs/development/libraries/lpcnetfreedv/default.nix
index ac12d3a5fd6b..33b295b9a1ec 100644
--- a/nixpkgs/pkgs/development/libraries/lpcnetfreedv/default.nix
+++ b/nixpkgs/pkgs/development/libraries/lpcnetfreedv/default.nix
@@ -30,5 +30,6 @@ in stdenv.mkDerivation rec {
     description = "Experimental Neural Net speech coding for FreeDV";
     license = licenses.bsd3;
     maintainers = with maintainers; [ mvs ];
+    platforms = platforms.all;
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/malcontent/default.nix b/nixpkgs/pkgs/development/libraries/malcontent/default.nix
index 5f46ec313b15..791fae96f0fc 100644
--- a/nixpkgs/pkgs/development/libraries/malcontent/default.nix
+++ b/nixpkgs/pkgs/development/libraries/malcontent/default.nix
@@ -19,7 +19,7 @@
 
 stdenv.mkDerivation rec {
   pname = "malcontent";
-  version = "0.10.3";
+  version = "0.10.4";
 
   outputs = [ "bin" "out" "lib" "pam" "dev" "man" "installedTests" ];
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     owner = "pwithnall";
     repo = pname;
     rev = version;
-    sha256 = "sha256-SA4QyzV/aNUmyr9BYTsemx5x7S6WpxdTBK6zmVMkwh4=";
+    sha256 = "sha256-s2wQLb3tCfO3p8yYG8Nc6pu+y2TLfrmo7Ug1LgDLEdw=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/libraries/matio/default.nix b/nixpkgs/pkgs/development/libraries/matio/default.nix
index e3b3f288cb5d..7a227e57560d 100644
--- a/nixpkgs/pkgs/development/libraries/matio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/matio/default.nix
@@ -1,10 +1,10 @@
 { lib, stdenv, fetchurl }:
 stdenv.mkDerivation rec {
   pname = "matio";
-  version = "1.5.21";
+  version = "1.5.22";
   src = fetchurl {
     url = "mirror://sourceforge/matio/${pname}-${version}.tar.gz";
-    sha256 = "sha256-IYCRd+VYOefJTa2nRO5Vwd6n11fdqriWBXdtUBIvsGU=";
+    sha256 = "sha256-gMPR4iLhFXaLV7feZAo30O58t6O9A52z6pQecfxSBMM=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/mysocketw/default.nix b/nixpkgs/pkgs/development/libraries/mysocketw/default.nix
index 62bd7cea1a1a..32987d649922 100644
--- a/nixpkgs/pkgs/development/libraries/mysocketw/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mysocketw/default.nix
@@ -1,27 +1,38 @@
-{ lib, stdenv, fetchFromGitHub, openssl, cmake }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, openssl
+, cmake
+}:
 
 stdenv.mkDerivation rec {
   pname = "mysocketw";
-  version = "3.10.27";
+  version = "3.11.0";
 
   src = fetchFromGitHub {
     owner = "RigsOfRods";
     repo = "socketw";
     rev = version;
-    sha256 = "0xqcgwb1lyc2d8834sq5adbmggyn6vvb26jw20862sxa15j0qfd4";
+    hash = "sha256-mpfhmKE2l59BllkOjmURIfl17lAakXpmGh2x9SFSaAo=";
   };
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ openssl ];
+  nativeBuildInputs = [
+    cmake
+  ];
+
+  buildInputs = [
+    openssl
+  ];
 
   postPatch = lib.optionalString stdenv.isDarwin ''
     substituteInPlace src/Makefile \
         --replace -Wl,-soname, -Wl,-install_name,$out/lib/
   '';
 
-  meta = {
+  meta = with lib; {
     description = "Cross platform (Linux/FreeBSD/Unix/Win32) streaming socket C++";
-    license = lib.licenses.lgpl21Plus;
-    platforms = lib.platforms.all;
+    homepage = "https://github.com/RigsOfRods/socketw";
+    license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/opendht/default.nix b/nixpkgs/pkgs/development/libraries/opendht/default.nix
index fa9fc1f87eeb..2cd76a7ca78b 100644
--- a/nixpkgs/pkgs/development/libraries/opendht/default.nix
+++ b/nixpkgs/pkgs/development/libraries/opendht/default.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "opendht";
-  version = "2.3.2";
+  version = "2.3.5";
 
   src = fetchFromGitHub {
     owner = "savoirfairelinux";
     repo = "opendht";
     rev = version;
-    sha256 = "sha256-LevS9euBAFkI1ll79uqmVaRR/6FH6Z4cypHqvCIWxgU=";
+    sha256 = "sha256-GGaq8ziOCUDMxILq2QYUkSP4usBjbufbHwQF4Pr6hHw=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/pango/default.nix b/nixpkgs/pkgs/development/libraries/pango/default.nix
index 3033b7df4e3d..ee79d5370594 100644
--- a/nixpkgs/pkgs/development/libraries/pango/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pango/default.nix
@@ -24,14 +24,14 @@
 
 stdenv.mkDerivation rec {
   pname = "pango";
-  version = "1.50.4";
+  version = "1.50.6";
 
   outputs = [ "bin" "out" "dev" ]
     ++ lib.optionals withDocs [ "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "9K1j6H3CsUUwBUKk+wBNB6n5GzQVL64N2+UOzdhRwWI=";
+    sha256 = "qZi882iBw6wgSV1AvOswT06qkXW9KWfIVlZDTL2v6Go=";
   };
 
   strictDeps = !withIntrospection;
@@ -84,12 +84,9 @@ stdenv.mkDerivation rec {
 
   doCheck = false; # test-font: FAIL
 
-  postInstall = lib.optionalString withDocs ''
-    # So that devhelp can find this.
-    # https://gitlab.gnome.org/GNOME/pango/merge_requests/293/diffs#note_1058448
-    mkdir -p "$devdoc/share/devhelp"
-    mv "$out/share/doc/pango/reference" "$devdoc/share/devhelp/books"
-    rmdir -p --ignore-fail-on-non-empty "$out/share/doc/pango"
+  postFixup = lib.optionalString withDocs ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
   '';
 
   passthru = {
diff --git a/nixpkgs/pkgs/development/libraries/pcg-c/default.nix b/nixpkgs/pkgs/development/libraries/pcg-c/default.nix
index 9722210b9d10..95acc77922ee 100644
--- a/nixpkgs/pkgs/development/libraries/pcg-c/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pcg-c/default.nix
@@ -33,7 +33,6 @@ stdenv.mkDerivation rec {
     '';
     platforms = platforms.unix;
     maintainers = [ maintainers.linus ];
-    repositories.git = "git://github.com/imneme/pcg-c.git";
     broken = stdenv.isi686; # https://github.com/imneme/pcg-c/issues/11
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/pipewire/wireplumber.nix b/nixpkgs/pkgs/development/libraries/pipewire/wireplumber.nix
index 8983f09f2d37..7b9759f553bc 100644
--- a/nixpkgs/pkgs/development/libraries/pipewire/wireplumber.nix
+++ b/nixpkgs/pkgs/development/libraries/pipewire/wireplumber.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitLab
-, fetchpatch
 , nix-update-script
 , # base build deps
   meson
@@ -27,7 +26,7 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "wireplumber";
-  version = "0.4.8";
+  version = "0.4.9";
 
   outputs = [ "out" "dev" ] ++ lib.optional enableDocs "doc";
 
@@ -36,19 +35,9 @@ stdenv.mkDerivation rec {
     owner = "pipewire";
     repo = "wireplumber";
     rev = version;
-    sha256 = "sha256-xwfggrjKHh5mZdvH6dKqQo6o1ltxuYdjoGYaWl31C/Y=";
+    sha256 = "sha256-U92ozuEUFJA416qKnalVowJuBjLRdORHfhmznGf1IFU=";
   };
 
-  patches = [
-    # backport a patch to fix hangs in some applications
-    # ref: https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/213
-    # FIXME: drop this in 0.4.9
-    (fetchpatch {
-      url = "https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/afbc0ce57aac7aee8dc1651de4620f15c73dbace.patch";
-      sha256 = "sha256-8ycFnrzDq7QHgjwJ/772OTMsSsN3m7gjbdvTmlMJ+mU=";
-    })
-  ];
-
   nativeBuildInputs = [
     meson
     pkg-config
diff --git a/nixpkgs/pkgs/development/libraries/poppler/default.nix b/nixpkgs/pkgs/development/libraries/poppler/default.nix
index 6fa07bcaf806..5547e492a65b 100644
--- a/nixpkgs/pkgs/development/libraries/poppler/default.nix
+++ b/nixpkgs/pkgs/development/libraries/poppler/default.nix
@@ -18,6 +18,7 @@
 , ninja
 , openjpeg
 , pkg-config
+, python3
 , scribusUnstable
 , texlive
 , zlib
@@ -34,19 +35,20 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "poppler-${suffix}";
-  version = "22.01.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too!
+  version = "22.03.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too!
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "https://poppler.freedesktop.org/poppler-${version}.tar.xz";
-    sha256 = "sha256-fTSTBWtbhkE+XGk8LK4CxcBs2OYY0UwsMeLIS2eyMT4=";
+    sha256 = "sha256-cox4upTXWlX2tjVdT72qb0mTTZYWvljl5nmpz9CYDh4=";
   };
 
   nativeBuildInputs = [
     cmake
     ninja
     pkg-config
+    python3
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/prometheus-cpp/default.nix b/nixpkgs/pkgs/development/libraries/prometheus-cpp/default.nix
index a046f255a6a3..1591f8a332c8 100644
--- a/nixpkgs/pkgs/development/libraries/prometheus-cpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/prometheus-cpp/default.nix
@@ -21,22 +21,20 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ gbenchmark civetweb gtest zlib curl ];
-
+  buildInputs = [ gbenchmark gtest zlib curl ];
+  propagatedBuildInputs = [ civetweb ];
   strictDeps = true;
 
   cmakeFlags = [
     "-DUSE_THIRDPARTY_LIBRARIES=OFF"
-    "-DCIVETWEB_INCLUDE_DIR=${civetweb.dev}/include"
-    "-DCIVETWEB_CXX_LIBRARY=${civetweb}/lib/libcivetweb${stdenv.targetPlatform.extensions.sharedLibrary}"
     "-DBUILD_SHARED_LIBS=ON"
   ];
 
-  NIX_LDFLAGS = "-ldl";
+  outputs = [ "out" "dev" ];
 
   postInstall = ''
-    mkdir -p $out/lib/pkgconfig
-    substituteAll ${./prometheus-cpp.pc.in} $out/lib/pkgconfig/prometheus-cpp.pc
+    mkdir -p $dev/lib/pkgconfig
+    substituteAll ${./prometheus-cpp.pc.in} $dev/lib/pkgconfig/prometheus-cpp.pc
   '';
 
   meta = {
diff --git a/nixpkgs/pkgs/development/libraries/protolock/default.nix b/nixpkgs/pkgs/development/libraries/protolock/default.nix
index e364b9077940..ef6338207e3f 100644
--- a/nixpkgs/pkgs/development/libraries/protolock/default.nix
+++ b/nixpkgs/pkgs/development/libraries/protolock/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "protolock";
-  version = "0.15.2";
+  version = "0.16.0";
 
   src = fetchFromGitHub {
     owner = "nilslice";
     repo = "protolock";
     rev = "v${version}";
-    sha256 = "sha256-cKrG8f8cabuGDN1gmBYleXcBqeJksdREiEy63UK/6J0=";
+    sha256 = "sha256-vWwRZVArmlTIGwD4zV3dEHN2kkoeCZuNIvjCBVAviPo=";
   };
 
-  vendorSha256 = "sha256-2XbBiiiPvZCnlKUzGDLFnxA34N/LmHoPbvRKZckmhx4=";
+  vendorSha256 = "sha256-kgSJUSjY8kgrGCNDPgw1WA8KwAqI5koJQ0IcE+tC5nk=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/libraries/qscintilla/default.nix b/nixpkgs/pkgs/development/libraries/qscintilla/default.nix
index 88c44ece32cd..4aff530877a0 100644
--- a/nixpkgs/pkgs/development/libraries/qscintilla/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qscintilla/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   pname = "qscintilla-qt5";
-  version = "2.13.1";
+  version = "2.13.2";
 
   src = fetchurl {
     url = "https://www.riverbankcomputing.com/static/Downloads/QScintilla/${version}/QScintilla_src-${version}.tar.gz";
-    sha256 = "gA49IHGpa8zNdYE0avDS/ij8MM1oUwy4MCaF0BOv1Uo=";
+    sha256 = "sha256-tsfl8ntR0l8J/mz4Sumn8Idq8NZdjMtVEQnm57JYhfQ=";
   };
 
   sourceRoot = "QScintilla_src-${version}/src";
diff --git a/nixpkgs/pkgs/development/libraries/qwt/6.nix b/nixpkgs/pkgs/development/libraries/qwt/6_1.nix
index a9fa29ba4d4f..4e3a179e7520 100644
--- a/nixpkgs/pkgs/development/libraries/qwt/6.nix
+++ b/nixpkgs/pkgs/development/libraries/qwt/6_1.nix
@@ -24,9 +24,8 @@ stdenv.mkDerivation rec {
     description = "Qt widgets for technical applications";
     homepage = "http://qwt.sourceforge.net/";
     # LGPL 2.1 plus a few exceptions (more liberal)
-    license = lib.licenses.qwt;
+    license = licenses.qwt;
     platforms = platforms.unix;
     maintainers = [ maintainers.bjornfor ];
-    branch = "6";
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/qwt/default.nix b/nixpkgs/pkgs/development/libraries/qwt/default.nix
index a5dcfedb8491..46cfc426efa4 100644
--- a/nixpkgs/pkgs/development/libraries/qwt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/qwt/default.nix
@@ -1,25 +1,24 @@
-{ lib, stdenv, fetchurl, qt4, qmake4Hook }:
+{ lib, stdenv, fetchurl, qtbase, qtsvg, qttools, qmake }:
 
 stdenv.mkDerivation rec {
   pname = "qwt";
-  version = "5.2.3";
+  version = "6.2.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/qwt/${pname}-${version}.tar.bz2";
-    sha256 = "1dqa096mm6n3bidfq2b67nmdsvsw4ndzzd1qhl6hn8skcwqazzip";
+    url = "mirror://sourceforge/qwt/qwt-${version}.tar.bz2";
+    sha256 = "sha256-kZT2UTlV0P1zAPZxWBdQZEYBl6urGpL6EnpnpLC3FTA=";
   };
 
-  propagatedBuildInputs = [ qt4 ];
-  nativeBuildInputs = [ qmake4Hook ];
+  propagatedBuildInputs = [ qtbase qtsvg qttools ];
+  nativeBuildInputs = [ qmake ];
 
   postPatch = ''
-    sed -e "s@\$\$\[QT_INSTALL_PLUGINS\]@$out/lib/qt4/plugins@" -i designer/designer.pro
-    sed -e "s|INSTALLBASE.*=.*|INSTALLBASE = $out|g" -i qwtconfig.pri
+    sed -e "s|QWT_INSTALL_PREFIX.*=.*|QWT_INSTALL_PREFIX = $out|g" -i qwtconfig.pri
   '';
 
-  preConfigure = ''
-    qmakeFlags="$qmakeFlags INSTALLBASE=$out -after doc.path=$out/share/doc/${pname}-${version}"
-  '';
+  qmakeFlags = [ "-after doc.path=$out/share/doc/qwt-${version}" ];
+
+  dontWrapQtApps = true;
 
   meta = with lib; {
     description = "Qt widgets for technical applications";
diff --git a/nixpkgs/pkgs/development/libraries/robin-map/default.nix b/nixpkgs/pkgs/development/libraries/robin-map/default.nix
index a0a068dc1422..4ab48c484426 100644
--- a/nixpkgs/pkgs/development/libraries/robin-map/default.nix
+++ b/nixpkgs/pkgs/development/libraries/robin-map/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "robin-map";
-  version = "0.6.3";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     owner = "Tessil";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1li70vwsksva9c4yly90hjafgqfixi1g6d52qq9p6r60vqc4pkjj";
+    sha256 = "sha256-h59khOUg7vzw64EAMT/uzTKHzx2M9q+pc2BhfGQiY3Q=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/rocm-comgr/default.nix b/nixpkgs/pkgs/development/libraries/rocm-comgr/default.nix
index 3ae872f23158..141c1b01d6f6 100644
--- a/nixpkgs/pkgs/development/libraries/rocm-comgr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/rocm-comgr/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rocm-comgr";
-  version = "4.5.2";
+  version = "5.0.2";
 
   src = fetchFromGitHub {
     owner = "RadeonOpenCompute";
     repo = "ROCm-CompilerSupport";
     rev = "rocm-${version}";
-    hash = "sha256-enGzu1EOo87/S5oH1eEqPy0AtsBhCcroG3DYemeNgR0=";
+    hash = "sha256-EIBH7TXelo6mr+/vJ+iT+VLUVoQqWmNsgeN3Nwwr+tM=";
   };
 
   sourceRoot = "source/lib/comgr";
@@ -27,15 +27,6 @@ stdenv.mkDerivation rec {
     "-DLLVM_TARGETS_TO_BUILD=\"AMDGPU;X86\""
   ];
 
-  # The comgr build tends to link against the static LLVM libraries
-  # *and* the dynamic library. Linking against both causes errors
-  # about command line options being registered twice. This patch
-  # removes the static library linking.
-  patchPhase = ''
-    sed -e '/^llvm_map_components_to_libnames/,/[[:space:]]*Symbolize)/d' \
-        -i CMakeLists.txt
-  '';
-
   passthru.updateScript = writeScript "update.sh" ''
     #!/usr/bin/env nix-shell
     #!nix-shell -i bash -p curl jq common-updater-scripts
diff --git a/nixpkgs/pkgs/development/libraries/science/astronomy/cfitsio/default.nix b/nixpkgs/pkgs/development/libraries/science/astronomy/cfitsio/default.nix
index 9f9545e52f3b..3be249531bbe 100644
--- a/nixpkgs/pkgs/development/libraries/science/astronomy/cfitsio/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/astronomy/cfitsio/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "cfitsio";
-  version = "4.0.0";
+  version = "4.1.0";
 
   src = fetchurl {
     url = "https://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/cfitsio-${version}.tar.gz";
-    sha256 = "sha256-sqjvugufhtPhvWGfZipHbsGBErTyfMRBzGgKTjd3Ql4=";
+    sha256 = "sha256-s2fGldKDGVjnFmkhw7NW1d+lGx7O5QW5dBa6OdG2wXo=";
   };
 
   buildInputs = [ bzip2 zlib ];
diff --git a/nixpkgs/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix b/nixpkgs/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix
index 933b972a4e79..754f408ca266 100644
--- a/nixpkgs/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/astronomy/stellarsolver/default.nix
@@ -3,13 +3,13 @@
 
 mkDerivation rec {
   pname = "stellarsolver";
-  version = "2.0";
+  version = "2.2";
 
   src = fetchFromGitHub {
     owner = "rlancaste";
     repo = pname;
     rev = version;
-    sha256 = "sha256-pqTSsey1CgOHiEm/C+7sTl9uGe3RVpL7Rdm04KgY+Z8=";
+    sha256 = "sha256-Ay7bszR4D5KKFiVLXfweJcc8jgUSZljnZVblEx7xh8o=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/libraries/science/math/cudnn/default.nix b/nixpkgs/pkgs/development/libraries/science/math/cudnn/default.nix
index 663d61494c76..d05cc3f90ec0 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/cudnn/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/cudnn/default.nix
@@ -1,23 +1,29 @@
 # The following version combinations are supported:
 #  * cuDNN 7.4.2, cudatoolkit 10.0
-#  * cuDNN 7.6.5, cudatoolkit 10.2
-#  * cuDNN 8.1.1, cudatoolkit 11.0-11.2
-#  * cuDNN 8.3.0, cudatoolkit 11.0-11.5
+#  * cuDNN 7.6.5, cudatoolkit 10.0-10.1
+#  * cuDNN 8.1.1, cudatoolkit 10.2-11.2
+#  * cuDNN 8.3.2, cudatoolkit 10.2-11.5
 { callPackage
+, cudatoolkit_10
 , cudatoolkit_10_0
+, cudatoolkit_10_1
 , cudatoolkit_10_2
+, cudatoolkit_11
 , cudatoolkit_11_0
 , cudatoolkit_11_1
 , cudatoolkit_11_2
 , cudatoolkit_11_3
 , cudatoolkit_11_4
 , cudatoolkit_11_5
+, fetchurl
+, lib
 }:
 
 let
   generic = args: callPackage (import ./generic.nix (removeAttrs args [ "cudatoolkit" ])) {
     inherit (args) cudatoolkit;
   };
+  urlPrefix = "https://developer.download.nvidia.com/compute/redist/cudnn";
 in
 rec {
   # cuDNN 7.x
@@ -25,53 +31,88 @@ rec {
   cudnn_7_4_cudatoolkit_10_0 = generic rec {
     version = "7.4.2";
     cudatoolkit = cudatoolkit_10_0;
-    srcName = "cudnn-${cudatoolkit.majorVersion}-linux-x64-v7.4.2.24.tgz";
-    sha256 = "18ys0apiz9afid2s6lvy9qbyi8g66aimb2a7ikl1f3dm09mciprf";
+    # See https://docs.nvidia.com/deeplearning/cudnn/archives/cudnn_742/cudnn-support-matrix/index.html#cudnn-cuda-hardware-versions__table-cudnn-cuda-hardware-versions.
+    minCudaVersion = "9.2.88";
+    maxCudaVersion = "10.0.99999";
+    mkSrc = _: fetchurl {
+      url = "${urlPrefix}/v${version}/cudnn-10.0-linux-x64-v7.4.2.24.tgz";
+      hash = "sha256-Lt/IagK1DRfojEeJVaMy5qHoF05+U6NFi06lH68C2qM=";
+    };
   };
+  # The only overlap between supported and packaged CUDA versions is 10.0.
 
-  # The `cudnn` alias still points to this in all-packages.nix. It should be
-  # upgraded at some point.
-  cudnn_7_6_cudatoolkit_10_2 = generic rec {
+  cudnn_7_6_cudatoolkit_10_0 = generic rec {
     version = "7.6.5";
-    cudatoolkit = cudatoolkit_10_2;
-    srcName = "cudnn-${cudatoolkit.majorVersion}-linux-x64-v7.6.5.32.tgz";
-    sha256 = "084c13vzjdkb5s1996yilybg6dgav1lscjr1xdcgvlmfrbr6f0k0";
+    cudatoolkit = cudatoolkit_10_0;
+    # See https://docs.nvidia.com/deeplearning/cudnn/archives/cudnn_765/cudnn-support-matrix/index.html#cudnn-versions-763-765.
+    minCudaVersion = "9.2.148";
+    maxCudaVersion = "10.1.243";
+    mkSrc = cudatoolkit: fetchurl {
+      url = "${urlPrefix}/v${version}/cudnn-${cudatoolkit.majorVersion}-linux-x64-v7.6.5.32.tgz";
+      hash = {
+        "10.0" = "sha256-KDVeOV8LK5OsLIO2E2CzW6bNA3fkTni+GXtrYbS0kro=";
+        "10.1" = "sha256-fq7IA5osMKsLx1jTA1iHZ2k972v0myJIWiwAvy4TbLM=";
+      }."${cudatoolkit.majorVersion}";
+    };
   };
-
-  cudnn_7_6_cudatoolkit_10 = cudnn_7_6_cudatoolkit_10_2;
+  cudnn_7_6_cudatoolkit_10_1 = cudnn_7_6_cudatoolkit_10_0.override { cudatoolkit = cudatoolkit_10_1; };
 
   # cuDNN 8.x
   # cuDNN 8.1 is still used by tensorflow at the time of writing (2022-02-17).
   # See https://github.com/NixOS/nixpkgs/pull/158218 for more info.
-  cudnn_8_1_cudatoolkit_11_0 = generic rec {
+  cudnn_8_1_cudatoolkit_10_2 = generic rec {
     version = "8.1.1";
-    cudatoolkit = cudatoolkit_11_0;
-    # 8.1.0 is compatible with CUDA 11.0-11.2:
-    # https://docs.nvidia.com/deeplearning/cudnn/archives/cudnn-811/support-matrix/index.html
-    srcName = "cudnn-11.2-linux-x64-v8.1.1.33.tgz";
-    hash = "sha256-mKh4TpKGLyABjSDCgbMNSgzZUfk2lPZDPM9K6cUCumo=";
+    cudatoolkit = cudatoolkit_10_2;
+    # See https://docs.nvidia.com/deeplearning/cudnn/archives/cudnn-811/support-matrix/index.html#cudnn-versions-810-811.
+    minCudaVersion = "10.2.00000";
+    maxCudaVersion = "11.2.99999";
+    mkSrc = cudatoolkit:
+      let v = if lib.versions.majorMinor cudatoolkit.version == "10.2" then "10.2" else "11.2"; in
+      fetchurl {
+        url = "${urlPrefix}/v${version}/cudnn-${v}-linux-x64-v8.1.1.33.tgz";
+        hash = {
+          "10.2" = "sha256-Kkp7mabpv6aQ6xm7QeSVU/KnpJGls6v8rpAOFmxbbr0=";
+          "11.2" = "sha256-mKh4TpKGLyABjSDCgbMNSgzZUfk2lPZDPM9K6cUCumo=";
+        }."${v}";
+      };
   };
-  cudnn_8_1_cudatoolkit_11_1 = cudnn_8_1_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_1; };
-  cudnn_8_1_cudatoolkit_11_2 = cudnn_8_1_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_2; };
-  cudnn_8_1_cudatoolkit_11 = cudnn_8_1_cudatoolkit_11_2;
+  cudnn_8_1_cudatoolkit_11_0 = cudnn_8_1_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_0; };
+  cudnn_8_1_cudatoolkit_11_1 = cudnn_8_1_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_1; };
+  cudnn_8_1_cudatoolkit_11_2 = cudnn_8_1_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_2; };
+
+  cudnn_8_1_cudatoolkit_10 = cudnn_8_1_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_10; };
+  cudnn_8_1_cudatoolkit_11 = cudnn_8_1_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11; };
 
   # cuDNN 8.3 is necessary for the latest jaxlib, esp. jaxlib-bin. See
   # https://github.com/google/jax/discussions/9455 for more info.
-  cudnn_8_3_cudatoolkit_11_0 = generic rec {
-    # 8.3.0 is the last version to respect the folder structure that generic.nix
-    # expects. Later versions have files in a subdirectory `local_installers`.
-    # See eg https://developer.download.nvidia.com/compute/redist/cudnn/v8.3.1/.
-    version = "8.3.0";
-    cudatoolkit = cudatoolkit_11_0;
-    # 8.3.0 is compatible with CUDA 11.0-11.5:
-    # https://docs.nvidia.com/deeplearning/cudnn/archives/cudnn-830/support-matrix/index.html
-    srcName = "cudnn-11.5-linux-x64-v8.3.0.98.tgz";
-    hash = "sha256-RMb1rVyxL7dPoMmh58qvTwTXVa3xGi5bbJ5BfaN2srI=";
-  };
-  cudnn_8_3_cudatoolkit_11_1 = cudnn_8_3_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_1; };
-  cudnn_8_3_cudatoolkit_11_2 = cudnn_8_3_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_2; };
-  cudnn_8_3_cudatoolkit_11_3 = cudnn_8_3_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_3; };
-  cudnn_8_3_cudatoolkit_11_4 = cudnn_8_3_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_4; };
-  cudnn_8_3_cudatoolkit_11_5 = cudnn_8_3_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_5; };
-  cudnn_8_3_cudatoolkit_11 = cudnn_8_3_cudatoolkit_11_5;
+  cudnn_8_3_cudatoolkit_10_2 =
+    generic
+      rec {
+        version = "8.3.2";
+        cudatoolkit = cudatoolkit_10_2;
+        # See https://docs.nvidia.com/deeplearning/cudnn/archives/cudnn-832/support-matrix/index.html#cudnn-cuda-hardware-versions.
+        minCudaVersion = "10.2.00000";
+        maxCudaVersion = "11.5.99999";
+        mkSrc = cudatoolkit:
+          let v = if lib.versions.majorMinor cudatoolkit.version == "10.2" then "10.2" else "11.5"; in
+          fetchurl {
+            # Starting at version 8.3.1 there's a new directory layout including
+            # a subdirectory `local_installers`.
+            url = "https://developer.download.nvidia.com/compute/redist/cudnn/v${version}/local_installers/${v}/cudnn-linux-x86_64-8.3.2.44_cuda${v}-archive.tar.xz";
+            hash = {
+              "10.2" = "sha256-1vVu+cqM+PketzIQumw9ykm6REbBZhv6/lXB7EC2aaw=";
+              "11.5" = "sha256-VQCVPAjF5dHd3P2iNPnvvdzb5DpTsm3AqCxyP6FwxFc=";
+            }."${v}";
+          };
+      }
+  ;
+  cudnn_8_3_cudatoolkit_11_0 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_0; };
+  cudnn_8_3_cudatoolkit_11_1 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_1; };
+  cudnn_8_3_cudatoolkit_11_2 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_2; };
+  cudnn_8_3_cudatoolkit_11_3 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_3; };
+  cudnn_8_3_cudatoolkit_11_4 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_4; };
+  cudnn_8_3_cudatoolkit_11_5 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_5; };
+
+  cudnn_8_3_cudatoolkit_10 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_10; };
+  cudnn_8_3_cudatoolkit_11 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11; };
 }
diff --git a/nixpkgs/pkgs/development/libraries/science/math/cudnn/generic.nix b/nixpkgs/pkgs/development/libraries/science/math/cudnn/generic.nix
index 13fc0b679970..a5272e56ab6d 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/cudnn/generic.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/cudnn/generic.nix
@@ -1,11 +1,9 @@
-{ version
-, srcName
-, hash ? null
-, sha256 ? null
+{ minCudaVersion
+, maxCudaVersion
+, mkSrc
+, version
 }:
 
-assert (hash != null) || (sha256 != null);
-
 { stdenv
 , lib
 , cudatoolkit
@@ -25,19 +23,18 @@ stdenv.mkDerivation {
   name = "cudatoolkit-${cudatoolkit.majorVersion}-cudnn-${version}";
 
   inherit version;
-
-  src = let
-    hash_ = if hash != null then { inherit hash; } else { inherit sha256; };
-  in fetchurl ({
-    # URL from NVIDIA docker containers: https://gitlab.com/nvidia/cuda/blob/centos7/7.0/runtime/cudnn4/Dockerfile
-    url = "https://developer.download.nvidia.com/compute/redist/cudnn/v${version}/${srcName}";
-  } // hash_);
+  # It's often the case that the src depends on the version of cudatoolkit it's
+  # being linked against, so we pass in `cudatoolkit` as an argument to `mkSrc`.
+  src = mkSrc cudatoolkit;
 
   nativeBuildInputs = [ addOpenGLRunpath ];
 
   # Some cuDNN libraries depend on things in cudatoolkit, eg.
   # libcudnn_ops_infer.so.8 tries to load libcublas.so.11. So we need to patch
   # cudatoolkit into RPATH. See also https://github.com/NixOS/nixpkgs/blob/88a2ad974692a5c3638fcdc2c772e5770f3f7b21/pkgs/development/python-modules/jaxlib/bin.nix#L78-L98.
+  #
+  # Note also that version <=8.3.0 contained a subdirectory "lib64/" but in
+  # version 8.3.2 it seems to have been renamed to simply "lib/".
   installPhase = ''
     runHook preInstall
 
@@ -46,14 +43,16 @@ stdenv.mkDerivation {
       patchelf --set-rpath "''${p:+$p:}${lib.makeLibraryPath [ stdenv.cc.cc cudatoolkit.lib ]}:${cudatoolkit}/lib:\$ORIGIN/" $1
     }
 
-    for lib in lib64/lib*.so; do
-      fixRunPath $lib
+    for sofile in {lib,lib64}/lib*.so; do
+      fixRunPath $sofile
     done
 
     mkdir -p $out
     cp -a include $out/include
-    cp -a lib64 $out/lib64
+    [ -d "lib/" ] && cp -a lib $out/lib
+    [ -d "lib64/" ] && cp -a lib64 $out/lib64
   '' + lib.optionalString removeStatic ''
+    rm -f $out/lib/*.a
     rm -f $out/lib64/*.a
   '' + ''
     runHook postInstall
@@ -77,10 +76,21 @@ stdenv.mkDerivation {
   };
 
   meta = with lib; {
+    # Check that the cudatoolkit version satisfies our min/max constraints (both
+    # inclusive). We mark the package as broken if it fails to satisfies the
+    # official version constraints (as recorded in default.nix). In some cases
+    # you _may_ be able to smudge version constraints, just know that you're
+    # embarking into unknown and unsupported territory when doing so.
+    broken = let cudaVer = lib.getVersion cudatoolkit; in
+      !(
+        lib.versionAtLeast cudaVer minCudaVersion
+        && lib.versionAtLeast maxCudaVersion cudaVer
+      );
+
     description = "NVIDIA CUDA Deep Neural Network library (cuDNN)";
     homepage = "https://developer.nvidia.com/cudnn";
     license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
-    maintainers = with maintainers; [ mdaiter ];
+    maintainers = with maintainers; [ mdaiter samuela ];
   };
 }
diff --git a/nixpkgs/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix b/nixpkgs/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix
index bf5251d1aed6..eea7c146ca33 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix
@@ -6,7 +6,7 @@
 
 stdenv.mkDerivation rec {
   pname = "suitesparse-graphblas";
-  version = "6.2.2";
+  version = "6.2.5";
 
   outputs = [ "out" "dev" ];
 
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     owner = "DrTimothyAldenDavis";
     repo = "GraphBLAS";
     rev = "v${version}";
-    sha256 = "sha256-uSPE7uFiG4xbsAeo/UmOP5Ns+3yZ7kKL2bNxzd8mzP8=";
+    sha256 = "sha256-N4yFlTxV+lVz70PSHPuWEEFLp0dpsImXYDLUYEo2JQI=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/science/math/suitesparse/default.nix b/nixpkgs/pkgs/development/libraries/science/math/suitesparse/default.nix
index 5a6de9f64e83..dcf8a1da2586 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/suitesparse/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/suitesparse/default.nix
@@ -12,7 +12,7 @@
 
 stdenv.mkDerivation rec {
   pname = "suitesparse";
-  version = "5.10.1";
+  version = "5.11.0";
 
   outputs = [ "out" "dev" "doc" ];
 
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     owner = "DrTimothyAldenDavis";
     repo = "SuiteSparse";
     rev = "v${version}";
-    sha256 = "sha256-ifuoXgVQp2vHR/reC/Hjbt3vqaKpql3Nfxdb/Cgv/aU=";
+    sha256 = "sha256-AM16ngJ/CoSV6BOb80Pi9EqWoRILryOO4Rk+S5DffLU=";
   };
 
   nativeBuildInputs = [
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
     "CUBLAS_LIB=${cudatoolkit}/lib/libcublas.so"
   ] ++ lib.optionals stdenv.isDarwin [
     # Unless these are set, the build will attempt to use `Accelerate` on darwin, see:
-    # https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/v5.10.1/SuiteSparse_config/SuiteSparse_config.mk#L368
+    # https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/v5.11.0/SuiteSparse_config/SuiteSparse_config.mk#L368
     "BLAS=-lblas"
     "LAPACK=-llapack"
   ]
diff --git a/nixpkgs/pkgs/development/libraries/sdbus-cpp/default.nix b/nixpkgs/pkgs/development/libraries/sdbus-cpp/default.nix
new file mode 100644
index 000000000000..d665a6d94a5a
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/sdbus-cpp/default.nix
@@ -0,0 +1,50 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, pkg-config
+, systemd
+, expat
+}:
+
+stdenv.mkDerivation rec {
+  pname = "sdbus-cpp";
+  version = "1.1.0";
+
+  src = fetchFromGitHub {
+    owner = "kistler-group";
+    repo = "sdbus-cpp";
+    rev = "v${version}";
+    sha256 = "sha256-AjaZ6YmMlnN0jAcUBkft01XHkrze0nSr3dUMechsLrQ=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
+
+  buildInputs = [
+    systemd
+    expat
+  ];
+
+  cmakeFlags = [
+    "-DBUILD_CODE_GEN=ON"
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/Kistler-Group/sdbus-cpp";
+    changelog = "https://github.com/Kistler-Group/sdbus-cpp/blob/v${version}/ChangeLog";
+    description = "High-level C++ D-Bus library designed to provide easy-to-use yet powerful API";
+    longDescription = ''
+      sdbus-c++ is a high-level C++ D-Bus library for Linux designed to provide expressive, easy-to-use API in modern C++.
+      It adds another layer of abstraction on top of sd-bus, a nice, fresh C D-Bus implementation by systemd.
+      It's been written primarily as a replacement of dbus-c++, which currently suffers from a number of (unresolved) bugs,
+      concurrency issues and inherent design complexities and limitations.
+    '';
+    mainProgram = "sdbus-c++-xml2cpp";
+    license = licenses.lgpl2Only;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.ivar ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/taglib/default.nix b/nixpkgs/pkgs/development/libraries/taglib/default.nix
index 5f136a5e6b64..666d013adebc 100644
--- a/nixpkgs/pkgs/development/libraries/taglib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/taglib/default.nix
@@ -24,7 +24,6 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://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
diff --git a/nixpkgs/pkgs/development/libraries/template-glib/default.nix b/nixpkgs/pkgs/development/libraries/template-glib/default.nix
index c0ee2c1d3506..375a7c3237a5 100644
--- a/nixpkgs/pkgs/development/libraries/template-glib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/template-glib/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, meson, ninja, pkg-config, glib, gobject-introspection, flex, bison, vala, gettext, gnome, gtk-doc, docbook_xsl, docbook_xml_dtd_43 }:
 let
-  version = "3.34.0";
+  version = "3.34.1";
   pname = "template-glib";
 in
 stdenv.mkDerivation {
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1z9xkin5fyfh071ma9y045jcw83hgx33dfbjraw6cxk0qdmfysr1";
+    sha256 = "nsm3HgTU9csU91XveQYxzQtFwGA+Ecg2/Hz9niaM0Ho=";
   };
 
   buildInputs = [ meson ninja pkg-config gettext flex bison vala glib gtk-doc docbook_xsl docbook_xml_dtd_43 ];
diff --git a/nixpkgs/pkgs/development/libraries/tinygltf/default.nix b/nixpkgs/pkgs/development/libraries/tinygltf/default.nix
new file mode 100644
index 000000000000..af9938e3b8a6
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/tinygltf/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, nix-update-script
+, cmake
+}:
+
+stdenv.mkDerivation rec {
+  version = "2.5.0";
+  pname = "tinygltf";
+
+  src = fetchFromGitHub {
+    owner = "syoyo";
+    repo = "tinygltf";
+    rev = "v${version}";
+    sha256 = "sha256-Pw4iNJs0bKALVPFBYUJe5/WjHxdffungCKfJFJEpDas=";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  passthru.updateScript = nix-update-script {
+    attrPath = pname;
+  };
+
+  meta = with lib; {
+    description = "Header only C++11 tiny glTF 2.0 library";
+    homepage = "https://github.com/syoyo/tinygltf";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jansol ];
+    platforms = platforms.all;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/tracker-miners/default.nix b/nixpkgs/pkgs/development/libraries/tracker-miners/default.nix
index 4df448d08f46..7c3e495d54a3 100644
--- a/nixpkgs/pkgs/development/libraries/tracker-miners/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tracker-miners/default.nix
@@ -1,6 +1,6 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
-, substituteAll
 , asciidoc
 , docbook-xsl-nons
 , docbook_xml_dtd_45
@@ -47,11 +47,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tracker-miners";
-  version = "3.2.2";
+  version = "3.3.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "/YTHHmIbwrgcrLX5CJMkNiRtG4pPw6Y1PiuNuuvAI2w=";
+    sha256 = "izh967d0BhwGrfsmeg4ODz0heZNxvwHQVklaubjdlBc=";
   };
 
   nativeBuildInputs = [
@@ -113,13 +113,6 @@ stdenv.mkDerivation rec {
     "-Dminer_rss=false"
   ];
 
-  patches = [
-    (substituteAll {
-      src = ./fix-paths.patch;
-      inherit asciidoc;
-    })
-  ];
-
   postInstall = ''
     glib-compile-schemas "$out/share/glib-2.0/schemas"
   '';
diff --git a/nixpkgs/pkgs/development/libraries/tracker-miners/fix-paths.patch b/nixpkgs/pkgs/development/libraries/tracker-miners/fix-paths.patch
deleted file mode 100644
index 8661648eacdf..000000000000
--- a/nixpkgs/pkgs/development/libraries/tracker-miners/fix-paths.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/docs/manpages/meson.build b/docs/manpages/meson.build
-index 0b8a64863..a09db59f0 100644
---- a/docs/manpages/meson.build
-+++ b/docs/manpages/meson.build
-@@ -43,7 +43,7 @@ foreach m : daemon_manpages + cli_manpages
-     command: [xsltproc,
-               '--output', '@OUTPUT@',
-               '--stringparam', 'man.authors.section.enabled', '0',
--              '/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'],
-+              '@asciidoc@/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'],
-     input: xml,
-     output: manpage,
-     install: true,
diff --git a/nixpkgs/pkgs/development/libraries/tracker/default.nix b/nixpkgs/pkgs/development/libraries/tracker/default.nix
index 68a29919f0aa..5cb3dc73daa8 100644
--- a/nixpkgs/pkgs/development/libraries/tracker/default.nix
+++ b/nixpkgs/pkgs/development/libraries/tracker/default.nix
@@ -1,7 +1,6 @@
 { stdenv
 , lib
 , fetchurl
-, fetchpatch
 , gettext
 , meson
 , ninja
@@ -26,34 +25,19 @@
 , json-glib
 , systemd
 , dbus
-, substituteAll
 }:
 
 stdenv.mkDerivation rec {
   pname = "tracker";
-  version = "3.2.1";
+  version = "3.3.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "GEfgiznm5h2EhzWqH5f32WwDggFlP6DXy56Bs365wDo=";
+    sha256 = "Bwb5b+f5XfQqzsgSwd57RZOg1kgyHKg1BqnXHiJBe9o=";
   };
 
-  patches = [
-    (substituteAll {
-      src = ./fix-paths.patch;
-      inherit asciidoc;
-    })
-
-    # Filter out hidden (wrapped) subcommands
-    # https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/481
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/tracker/-/commit/8c28c24e447f13da8cf804cd7a00f9b909c5d3f9.patch";
-      sha256 = "EYo1nOtEr4semaPC5wk6A7bliRXu8qsBHaltd0DEI6Y=";
-    })
-  ];
-
   nativeBuildInputs = [
     meson
     ninja
@@ -119,7 +103,9 @@ stdenv.mkDerivation rec {
 
     dbus-run-session \
       --config-file=${dbus.daemon}/share/dbus-1/session.conf \
-      meson test --print-errorlogs
+      meson test \
+        --timeout-multiplier 2 \
+        --print-errorlogs
 
     runHook postCheck
   '';
diff --git a/nixpkgs/pkgs/development/libraries/tracker/fix-paths.patch b/nixpkgs/pkgs/development/libraries/tracker/fix-paths.patch
deleted file mode 100644
index 5e4d8657f7bc..000000000000
--- a/nixpkgs/pkgs/development/libraries/tracker/fix-paths.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/docs/manpages/meson.build b/docs/manpages/meson.build
-index f90c757cf..40d9c939d 100644
---- a/docs/manpages/meson.build
-+++ b/docs/manpages/meson.build
-@@ -32,7 +32,7 @@ foreach m : manpages
-     command: [xsltproc,
-               '--output', '@OUTPUT@',
-               '--stringparam', 'man.authors.section.enabled', '0',
--              '/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'],
-+              '@asciidoc@/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'],
-     input: xml,
-     output: manpage,
-     install: true,
diff --git a/nixpkgs/pkgs/development/libraries/ucx/default.nix b/nixpkgs/pkgs/development/libraries/ucx/default.nix
index 76118edfcb3b..0dc79d47dda7 100644
--- a/nixpkgs/pkgs/development/libraries/ucx/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ucx/default.nix
@@ -13,13 +13,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "ucx";
-  version = "1.12.0";
+  version = "1.12.1";
 
   src = fetchFromGitHub {
     owner = "openucx";
     repo = "ucx";
     rev = "v${version}";
-    sha256 = "0jwza9ivfnhkfwg4c58pxalkga5scz803k631xw4hcliy62gk53w";
+    sha256 = "08ajhbhzwkfzhkhswk56zx17q18ii67dg1ca1f5grl9qjgj3mmyw";
   };
 
   nativeBuildInputs = [ autoreconfHook doxygen ];
diff --git a/nixpkgs/pkgs/development/libraries/vte/default.nix b/nixpkgs/pkgs/development/libraries/vte/default.nix
index eae934a4ebb1..16a800110942 100644
--- a/nixpkgs/pkgs/development/libraries/vte/default.nix
+++ b/nixpkgs/pkgs/development/libraries/vte/default.nix
@@ -22,17 +22,18 @@
 , icu
 , systemd
 , systemdSupport ? stdenv.hostPlatform.isLinux
+, nixosTests
 }:
 
 stdenv.mkDerivation rec {
   pname = "vte";
-  version = "0.64.2";
+  version = "0.68.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-KzyCC2WmZ8HYhZuiBHi+Ym0VGcwxWdrCX3AzMMbQfhg=";
+    sha256 = "sha256-E+fUeJyiFqM3gAMNJGybE92/0ECUxjFu6n/5IoTdF0k=";
   };
 
   patches = [
@@ -91,6 +92,9 @@ stdenv.mkDerivation rec {
       packageName = pname;
       versionPolicy = "odd-unstable";
     };
+    tests = {
+      inherit (nixosTests.terminal-emulators) gnome-terminal lxterminal mlterm roxterm sakura stupidterm terminator termite xfce4-terminal;
+    };
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/libraries/wxwidgets/wxGTK31.nix b/nixpkgs/pkgs/development/libraries/wxwidgets/wxGTK31.nix
index c262232f30d0..31d59e24fd84 100644
--- a/nixpkgs/pkgs/development/libraries/wxwidgets/wxGTK31.nix
+++ b/nixpkgs/pkgs/development/libraries/wxwidgets/wxGTK31.nix
@@ -17,20 +17,24 @@
 , compat28 ? false
 , compat30 ? true
 , unicode ? true
-, withGtk2 ? true
+, withGtk2 ? (!stdenv.isDarwin)
 , withMesa ? lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms
-, withWebKit ? false, webkitgtk
-, darwin
+, withWebKit ? stdenv.isDarwin
+, webkitgtk
+, setfile
+, AGL
+, Carbon
+, Cocoa
+, Kernel
+, QTKit
+, AVFoundation
+, AVKit
+, WebKit
 }:
 
-assert withMesa -> libGLU != null && libGL != null;
-assert withWebKit -> webkitgtk != null;
-
 assert withGtk2 -> (!withWebKit);
 
 let
-  inherit (darwin.stubs) setfile;
-  inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit;
   inherit (gnome2) GConf;
   inherit (gst_all_1) gst-plugins-base gstreamer;
   gtk = if withGtk2 then gtk2 else gtk3;
@@ -57,6 +61,8 @@ stdenv.mkDerivation rec {
   buildInputs = [
     gst-plugins-base
     gstreamer
+  ]
+  ++ lib.optionals (!stdenv.isDarwin) [
     gtk
     libSM
     libXinerama
@@ -68,19 +74,25 @@ stdenv.mkDerivation rec {
     GConf
   ]
   ++ lib.optional withMesa libGLU
-  ++ lib.optional withWebKit webkitgtk
+  ++ lib.optional (withWebKit && !stdenv.isDarwin) webkitgtk
+  ++ lib.optional (withWebKit && stdenv.isDarwin) WebKit
   ++ lib.optionals stdenv.isDarwin [
+    setfile
     Carbon
     Cocoa
     Kernel
     QTKit
-    setfile
+    AVFoundation
+    AVKit
+    WebKit
   ];
 
   propagatedBuildInputs = lib.optional stdenv.isDarwin AGL;
 
   configureFlags = [
     "--disable-precomp-headers"
+    # This is the default option, but be explicit
+    "--disable-monolithic"
     "--enable-mediactrl"
     (if compat28 then "--enable-compat28" else "--disable-compat28")
     (if compat30 then "--enable-compat30" else "--disable-compat30")
@@ -88,10 +100,8 @@ stdenv.mkDerivation rec {
   ++ lib.optional unicode "--enable-unicode"
   ++ lib.optional withMesa "--with-opengl"
   ++ lib.optionals stdenv.isDarwin [
-    # allow building on 64-bit
-    "--enable-universal-binaries"
-    "--with-cocoa"
-    "--with-macosx-version-min=10.7"
+    "--with-osx_cocoa"
+    "--with-libiconv"
   ]
   ++ lib.optionals withWebKit [
     "--enable-webview"
@@ -137,9 +147,8 @@ stdenv.mkDerivation rec {
       database support, HTML viewing and printing, and much more.
     '';
     license = licenses.wxWindows;
-    maintainers = with maintainers; [ AndersonTorres tfmoraes ];
+    maintainers = with maintainers; [ tfmoraes ];
     platforms = platforms.unix;
-    badPlatforms = platforms.darwin; # ofBorg is failing, don't know if internal
   };
 
   passthru = {
diff --git a/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix b/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix
index ad68f13fe0f1..6764df634bbc 100644
--- a/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix
+++ b/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix
@@ -10,6 +10,7 @@
 , gsettings-desktop-schemas
 , gtk4
 , libadwaita
+, gnome-desktop
 , xdg-desktop-portal
 , wayland
 , gnome
@@ -17,11 +18,11 @@
 
 stdenv.mkDerivation rec {
   pname = "xdg-desktop-portal-gnome";
-  version = "41.1";
+  version = "42.0.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "u6FEGZ5+1LlJCyScGvZFqGnWKZMmXerDjyGb8EL//fI=";
+    sha256 = "3+i1JFDzKDj5+eiY6Vqo36JwXOEtQ4MFVXwSi5zg4uY=";
   };
 
   nativeBuildInputs = [
@@ -37,6 +38,7 @@ stdenv.mkDerivation rec {
     gsettings-desktop-schemas # settings exposed by settings portal
     gtk4
     libadwaita
+    gnome-desktop
     xdg-desktop-portal
     wayland # required by GTK 4
   ];
diff --git a/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix b/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
index c54cdeca6c35..13a16f111ea8 100644
--- a/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
@@ -7,6 +7,7 @@
 , xdg-desktop-portal
 , gtk3
 , gnome
+, gnome-desktop
 , glib
 , wrapGAppsHook
 , gsettings-desktop-schemas
@@ -36,7 +37,7 @@ stdenv.mkDerivation rec {
     glib
     gsettings-desktop-schemas # settings exposed by settings portal
     gtk3
-    gnome.gnome-desktop
+    gnome-desktop
     gnome.gnome-settings-daemon # schemas needed for settings api (mostly useless now that fonts were moved to g-d-s)
   ];
 
diff --git a/nixpkgs/pkgs/development/libraries/yder/default.nix b/nixpkgs/pkgs/development/libraries/yder/default.nix
index 49544a374682..9dd55482300c 100644
--- a/nixpkgs/pkgs/development/libraries/yder/default.nix
+++ b/nixpkgs/pkgs/development/libraries/yder/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "yder";
-  version = "1.4.14";
+  version = "1.4.15";
 
   src = fetchFromGitHub {
     owner = "babelouest";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-4FSUBFqrxTbqg2EKYuXv4gUeE40ViNZRk5gHv+C2p9o=";
+    sha256 = "sha256-hPAL1UngodNbQCCdKulaF5faI0JOjmWdz3q8oyPH7C4=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/lisp-modules/lisp-packages.nix b/nixpkgs/pkgs/development/lisp-modules/lisp-packages.nix
index 7a7cc165fe51..fe31e2ba348b 100644
--- a/nixpkgs/pkgs/development/lisp-modules/lisp-packages.nix
+++ b/nixpkgs/pkgs/development/lisp-modules/lisp-packages.nix
@@ -14,10 +14,11 @@ let lispPackages = rec {
 
     description = "The Common Lisp package manager";
     deps = [];
-    src = pkgs.fetchgit {
-      url = "https://github.com/quicklisp/quicklisp-client/";
-      rev = "refs/tags/version-${version}";
-      sha256 = "sha256:102f1chpx12h5dcf659a9kzifgfjc482ylf73fg1cs3w34zdawnl";
+    src = pkgs.fetchFromGitHub {
+      owner = "quicklisp";
+      repo = "quicklisp-client";
+      rev = "version-${version}";
+      sha256 = "sha256-1HLVPhl8aBaeG8dRLxBh0j0X/0wqFeNYK1CEfiELToA=";
     };
     overrides = x: rec {
       inherit clwrapper;
diff --git a/nixpkgs/pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix b/nixpkgs/pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix
index 17bedd5e7d32..5c0b6b0eecb3 100644
--- a/nixpkgs/pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix
+++ b/nixpkgs/pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix
@@ -1,13 +1,14 @@
-{ mkDerivation, ansi-wl-pprint, base, fetchgit, lib, process, QuickCheck
+{ mkDerivation, ansi-wl-pprint, base, fetchFromGitHub, lib, process, QuickCheck
 , transformers, transformers-compat
 }:
 mkDerivation {
   pname = "hercules-ci-optparse-applicative";
   version = "0.16.1.0";
-  src = fetchgit {
-    url = "https://github.com/hercules-ci/optparse-applicative.git";
-    sha256 = "05vchaw2rf46hh2128qjpky686iy5hff964mbdhcyiz612jjflyp";
+  src = fetchFromGitHub {
+    owner = "hercules-ci";
+    repo = "optparse-applicative";
     rev = "9e2968c09a7c5b29d04578dc68d81ce5aec0591e";
+    sha256 = "sha256-11MnpQjmR89gW5WY5BwsPhpk/LwSIxEEhIa4LLiCbBc=";
   };
   libraryHaskellDepends = [
     ansi-wl-pprint base process transformers transformers-compat
diff --git a/nixpkgs/pkgs/development/misc/yelp-tools/default.nix b/nixpkgs/pkgs/development/misc/yelp-tools/default.nix
index d6864b80f9ed..a58891bc333b 100644
--- a/nixpkgs/pkgs/development/misc/yelp-tools/default.nix
+++ b/nixpkgs/pkgs/development/misc/yelp-tools/default.nix
@@ -13,13 +13,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "yelp-tools";
-  version = "41.0";
+  version = "42.0";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/yelp-tools/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "N/GswCvL5ooxuG4HwSmoOb0yduZW3Inrf8CpJ0bv8nI=";
+    sha256 = "LNQwY/+nJi3xXdjTeao+o5mdQmYfB1Y/SALaoRSfffQ=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/mobile/genymotion/default.nix b/nixpkgs/pkgs/development/mobile/genymotion/default.nix
index 282324d20508..2b94ed14aa9c 100644
--- a/nixpkgs/pkgs/development/mobile/genymotion/default.nix
+++ b/nixpkgs/pkgs/development/mobile/genymotion/default.nix
@@ -61,7 +61,8 @@ stdenv.mkDerivation rec {
     patchExecutable() {
       patchInterpreter "$1"
       wrapProgram "$out/libexec/genymotion/$1" \
-        --set "LD_LIBRARY_PATH" "${libPath}"
+        --set "LD_LIBRARY_PATH" "${libPath}" \
+        --unset "QML2_IMPORT_PATH"
     }
 
     patchTool() {
diff --git a/nixpkgs/pkgs/development/node-packages/default.nix b/nixpkgs/pkgs/development/node-packages/default.nix
index 9d6004e859fd..02d50d9db7d5 100644
--- a/nixpkgs/pkgs/development/node-packages/default.nix
+++ b/nixpkgs/pkgs/development/node-packages/default.nix
@@ -368,7 +368,7 @@ let
 
       src = fetchurl {
         url = "https://registry.npmjs.org/prisma/-/prisma-${version}.tgz";
-        sha512 = "sha512-dAld12vtwdz9Rz01nOjmnXe+vHana5PSog8t0XGgLemKsUVsaupYpr74AHaS3s78SaTS5s2HOghnJF+jn91ZrA==";
+        sha512 = "sha512-8SdsLPhKR3mOfoo2o73h9mNn3v5kA/RqGA26Sv6qDS78Eh2uepPqt5e8/nwj5EOblYm5HEGuitaXQrOCLb6uTw==";
       };
       postInstall = with pkgs; ''
         wrapProgram "$out/bin/prisma" \
@@ -441,6 +441,18 @@ let
       '';
     };
 
+    thelounge-plugin-closepms = super.thelounge-plugin-closepms.override {
+      nativeBuildInputs = [ self.node-pre-gyp ];
+    };
+
+    thelounge-theme-flat-blue = super.thelounge-theme-flat-blue.override {
+      nativeBuildInputs = [ self.node-pre-gyp ];
+    };
+
+    thelounge-theme-flat-dark = super.thelounge-theme-flat-dark.override {
+      nativeBuildInputs = [ self.node-pre-gyp ];
+    };
+
     tsun = super.tsun.overrideAttrs (oldAttrs: {
       buildInputs = oldAttrs.buildInputs ++ [ pkgs.makeWrapper ];
       postInstall = ''
diff --git a/nixpkgs/pkgs/development/node-packages/generate.sh b/nixpkgs/pkgs/development/node-packages/generate.sh
index 869303a064b5..7394e62914f2 100755
--- a/nixpkgs/pkgs/development/node-packages/generate.sh
+++ b/nixpkgs/pkgs/development/node-packages/generate.sh
@@ -9,7 +9,7 @@ node2nix=$(nix-build ../../.. -A nodePackages.node2nix)
 rm -f ./node-env.nix
 
 # Track the latest active nodejs LTS here: https://nodejs.org/en/about/releases/
-${node2nix}/bin/node2nix \
+"${node2nix}/bin/node2nix" \
     -i node-packages.json \
     -o node-packages.nix \
     -c composition.nix \
diff --git a/nixpkgs/pkgs/development/node-packages/node-packages.nix b/nixpkgs/pkgs/development/node-packages/node-packages.nix
index d1f1908ca7a7..0ab3eda77407 100644
--- a/nixpkgs/pkgs/development/node-packages/node-packages.nix
+++ b/nixpkgs/pkgs/development/node-packages/node-packages.nix
@@ -13,6 +13,15 @@ let
         sha512 = "HqiDzaLDFCXkcCO/SwoyhRwqYtINFHF7t9BDRq4x90TOKNAJpiqUt9X5lQ08bwxYzc067HUywDjGySpebHcUpw==";
       };
     };
+    "@achrinza/node-ipc-9.2.2" = {
+      name = "_at_achrinza_slash_node-ipc";
+      packageName = "@achrinza/node-ipc";
+      version = "9.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@achrinza/node-ipc/-/node-ipc-9.2.2.tgz";
+        sha512 = "b90U39dx0cU6emsOvy5hxU4ApNXnE3+Tuo8XQZfiKTGelDwpMwBVgBP7QX6dGTcJgu/miyJuNJ/2naFBliNWEw==";
+      };
+    };
     "@akryum/winattr-3.0.0" = {
       name = "_at_akryum_slash_winattr";
       packageName = "@akryum/winattr";
@@ -22,13 +31,13 @@ let
         sha512 = "t4WmWoGV9gyzypwG3y3JlcK2t8fKLtvzBA7xEoFTj9SMPvOuLsf13uh4ikK0RRaaa9RPPWLgFUdOyIRaQvCpwQ==";
       };
     };
-    "@alexbosworth/caporal-1.4.0" = {
+    "@alexbosworth/caporal-1.4.1" = {
       name = "_at_alexbosworth_slash_caporal";
       packageName = "@alexbosworth/caporal";
-      version = "1.4.0";
+      version = "1.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@alexbosworth/caporal/-/caporal-1.4.0.tgz";
-        sha512 = "n/Oq0C+5XkoruoG0DTs5KwSA5rPF7hd4cwoc9atKHE2MP2yDoMCc1mPSaU8VhrsscymXo0cLCySOXn5v96FWxw==";
+        url = "https://registry.npmjs.org/@alexbosworth/caporal/-/caporal-1.4.1.tgz";
+        sha512 = "oNEyHFcHc66gzmUXDUqzoqEpjcQnsp4REzXMkQNGxMF7MZDxiec3m9IVvzFmXtl0jU48bX/+ay5aZ8G3EVQV3g==";
       };
     };
     "@alexbosworth/cli-table3-0.6.1" = {
@@ -67,13 +76,13 @@ let
         sha512 = "9ls0Zn0qXTmUdt1p9LA1P9Kor9wF1pXtfUTjipCpoYYQ4fEUsuCgQbiymk4oJccpsZ9dAG3vZ1Zt51WabjJTUw==";
       };
     };
-    "@alexbosworth/prettyjson-1.2.1" = {
+    "@alexbosworth/prettyjson-1.2.2" = {
       name = "_at_alexbosworth_slash_prettyjson";
       packageName = "@alexbosworth/prettyjson";
-      version = "1.2.1";
+      version = "1.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@alexbosworth/prettyjson/-/prettyjson-1.2.1.tgz";
-        sha512 = "b7AoM21tb21f+ZAZfKswhQ5u+ZjjYt6Mywlp1nbXrKEmER/iIco10S4Ply9dSAon4alpHTcP1ixT/kZb7422/Q==";
+        url = "https://registry.npmjs.org/@alexbosworth/prettyjson/-/prettyjson-1.2.2.tgz";
+        sha512 = "JsqGgC96z8HFceI94ZLAXLxPXw9oMmQh9XpK5tbRSoU6A4JGz1I7ssplLOTfc50Y73bWVoEJs1ja7BcEToMFmQ==";
       };
     };
     "@alexbosworth/saxophone-0.6.2" = {
@@ -94,13 +103,13 @@ let
         sha512 = "hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==";
       };
     };
-    "@angular-devkit/architect-0.1302.6" = {
+    "@angular-devkit/architect-0.1303.0" = {
       name = "_at_angular-devkit_slash_architect";
       packageName = "@angular-devkit/architect";
-      version = "0.1302.6";
+      version = "0.1303.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1302.6.tgz";
-        sha512 = "NztzorUMfwJeRaT7SY00Y8WSqc2lQYuF11yNoyEm7Dae3V7VZ28rW2Z9RwibP27rYQL0RjSMaz2wKITHX2vOAw==";
+        url = "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1303.0.tgz";
+        sha512 = "kTcKB917ICA8j53SGo4gn+qAlzx8si+iHnOTbp5QlMr7qt/Iz07SVVI8mRlMD6c6lr7eE/fVlCLzEZ1+WCQpTA==";
       };
     };
     "@angular-devkit/core-13.2.5" = {
@@ -112,13 +121,13 @@ let
         sha512 = "WuWp/1R0FtCHPBcJLF13lTLHETtDGFUX0ULfGPRaYB5OVCSQcovVp5UbZTTy/Ss3ub3EOEmJlU8kMJfBrWuq+A==";
       };
     };
-    "@angular-devkit/core-13.2.6" = {
+    "@angular-devkit/core-13.3.0" = {
       name = "_at_angular-devkit_slash_core";
       packageName = "@angular-devkit/core";
-      version = "13.2.6";
+      version = "13.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/core/-/core-13.2.6.tgz";
-        sha512 = "8h2mWdBTN/dYwZuzKMg2IODlOWMdbJcpQG4XVrkk9ejCPP+3aX5Aa3glCe/voN6eBNiRfs8YDM0jxmpN2aWVtg==";
+        url = "https://registry.npmjs.org/@angular-devkit/core/-/core-13.3.0.tgz";
+        sha512 = "8YrreVbWlJVZnk5zs4vfkRItrPEtWhUcxWOBfYT/Kwu4FwJVAnNuhJAxxXOAQ2Ckd7cv30Idh/RFVLbTZ5Gs9w==";
       };
     };
     "@angular-devkit/schematics-13.2.5" = {
@@ -130,22 +139,22 @@ let
         sha512 = "kAye6VYiF9JQAoeO+BYhy8eT2QOmhB+WLziRjXoFCBxh5+yXTygTVfs9fD5jmIpHmeu4hd2ErSh69yT5xWcD9g==";
       };
     };
-    "@angular-devkit/schematics-13.2.6" = {
+    "@angular-devkit/schematics-13.3.0" = {
       name = "_at_angular-devkit_slash_schematics";
       packageName = "@angular-devkit/schematics";
-      version = "13.2.6";
+      version = "13.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-13.2.6.tgz";
-        sha512 = "mPgSqdnZRuPSMeUA+T+mwVCrq2yhXpcYm1/Rjbhy09CyHs4wSrFv21WHCrE6shlvXpcmwr0n+I0DIeagAPmjUA==";
+        url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-13.3.0.tgz";
+        sha512 = "hq7tqnB3uVT/iDgqWWZ4kvnijeAcgd4cfLzZiCPaYn1nuhZf0tWsho6exhJ/odMZHvVp7w8OibqWiUKxNY9zHA==";
       };
     };
-    "@angular-devkit/schematics-cli-13.2.5" = {
+    "@angular-devkit/schematics-cli-13.3.0" = {
       name = "_at_angular-devkit_slash_schematics-cli";
       packageName = "@angular-devkit/schematics-cli";
-      version = "13.2.5";
+      version = "13.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-13.2.5.tgz";
-        sha512 = "/3Q1+wtE+l5XXoXX/7157yh4Wpi+FNEryx5gDcfPJchgtovxj28nzquD0vXnvpyr3Wd8OaMwg6vW4EfL82jRKg==";
+        url = "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-13.3.0.tgz";
+        sha512 = "DXT+k4228Ke1zCoU9QxPhXm1xzeYBs5aqgMWhyjXdkfDokJcjQM79CSVLHdKX/OLgR51qhnQ5qVFEHHhVV40EQ==";
       };
     };
     "@antora/asciidoc-loader-3.0.1" = {
@@ -355,13 +364,13 @@ let
         sha512 = "TmB2K5UfpDpSbCNBBntXzKHcAk2EA3/P68jmWvmJvglVUdkO9V6kTAuXVe12+h6C4GK0ndwuCrHHtEVcL5t6pQ==";
       };
     };
-    "@astrojs/svelte-language-integration-0.1.1" = {
+    "@astrojs/svelte-language-integration-0.1.2" = {
       name = "_at_astrojs_slash_svelte-language-integration";
       packageName = "@astrojs/svelte-language-integration";
-      version = "0.1.1";
+      version = "0.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@astrojs/svelte-language-integration/-/svelte-language-integration-0.1.1.tgz";
-        sha512 = "npUDO0bitzUC9oTDqVuup0yZObOF45GQ0IkaMf5wxe6XW30SIeyl1j8mdyjOv90vlJeothCKqnQ91qMudpq3Vg==";
+        url = "https://registry.npmjs.org/@astrojs/svelte-language-integration/-/svelte-language-integration-0.1.2.tgz";
+        sha512 = "O6LYL9igYSzxCxDHYWUqEquuuUlMG0UL1SliZ7rF/vx9GwU71TCpsRe4iHZ0bcemM5ju9ihoTzGCmLXzYrNw0g==";
       };
     };
     "@aws-crypto/crc32-2.0.0" = {
@@ -436,706 +445,706 @@ let
         sha512 = "JJmFFwvbm08lULw4Nm5QOLg8+lAQeC8aCXK5xrtxntYzYXCGfHwUJ4Is3770Q7HmICsXthGQ+ZsDL7C2uH3yBQ==";
       };
     };
-    "@aws-sdk/abort-controller-3.54.0" = {
+    "@aws-sdk/abort-controller-3.55.0" = {
       name = "_at_aws-sdk_slash_abort-controller";
       packageName = "@aws-sdk/abort-controller";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.54.0.tgz";
-        sha512 = "6N7numECrGwal2NEbJwYXOGjwWsFafz8VuUvCBK5G9SgSL5XAbq1S3lL/4gbme5jhgh9CWh7s+bAY7EpOEH2Xg==";
+        url = "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.55.0.tgz";
+        sha512 = "rCcTxJDEFnmvo/PgbhCRv24/Uv03lEGfRslKZq7SjaMcOubflS/ZXYaMEgsjYHgAT0zlpSsyCIkJXmhFaM7H7w==";
       };
     };
-    "@aws-sdk/chunked-blob-reader-3.52.0" = {
+    "@aws-sdk/chunked-blob-reader-3.55.0" = {
       name = "_at_aws-sdk_slash_chunked-blob-reader";
       packageName = "@aws-sdk/chunked-blob-reader";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader/-/chunked-blob-reader-3.52.0.tgz";
-        sha512 = "BAZhriHHfvnGOd0P9xcnGu8DGyxOa0lgmEw+Tc6nZpXJzx0P+1Sd76q5gE5d/IZ0r5VTB6rfwwKUoG6iShNCwQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader/-/chunked-blob-reader-3.55.0.tgz";
+        sha512 = "o/xjMCq81opAjSBjt7YdHJwIJcGVG5XIV9+C2KXcY5QwVimkOKPybWTv0mXPvSwSilSx+EhpLNhkcJuXdzhw4w==";
       };
     };
-    "@aws-sdk/chunked-blob-reader-native-3.52.0" = {
+    "@aws-sdk/chunked-blob-reader-native-3.55.0" = {
       name = "_at_aws-sdk_slash_chunked-blob-reader-native";
       packageName = "@aws-sdk/chunked-blob-reader-native";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader-native/-/chunked-blob-reader-native-3.52.0.tgz";
-        sha512 = "/hVzC0Q12/mWRMBBQD3v82xsLSxZ4RwG6N44XP7MuJoHy4ui4T7D9RSuvBpzzr/4fqF0w9M7XYv6aM4BD2pFIQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader-native/-/chunked-blob-reader-native-3.55.0.tgz";
+        sha512 = "juorCwSR9O1XhpSIBSAiIH7cP1c67J4wnoiXmmbun/qzmBPipGYm0PHX5H+J89s8gD2F3e49/TWFXbZmxRw57w==";
       };
     };
-    "@aws-sdk/client-s3-3.54.0" = {
+    "@aws-sdk/client-s3-3.56.0" = {
       name = "_at_aws-sdk_slash_client-s3";
       packageName = "@aws-sdk/client-s3";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.54.0.tgz";
-        sha512 = "9JdhkTqRCYA3esnjFR7xaFysXMfX5TatKE9H8Sds78eoMQrfgB2Yl6ZcEl8Oy0vpMVpOzqRYmcSmFfaBOhuI/g==";
+        url = "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.56.0.tgz";
+        sha512 = "g/OiJtD8d0roi3XK5ThIwEvkAkSDoKzxkE0gqKKJNABBnyozNnDNAVt4XnMxuXX1PPjg1KVKH2iJWFGj5I0jPQ==";
       };
     };
-    "@aws-sdk/client-sso-3.54.0" = {
+    "@aws-sdk/client-sso-3.56.0" = {
       name = "_at_aws-sdk_slash_client-sso";
       packageName = "@aws-sdk/client-sso";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.54.0.tgz";
-        sha512 = "5ZYYhoMqeaYhOU4kOEM7daKb8D5QhJ+IpwhHHMPhoHqQEwbbhBTFDXRs3ObUP/QYdBUMWS71+pnDoUdyHqPQ0Q==";
+        url = "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.56.0.tgz";
+        sha512 = "5gkbkNK1iaQ7C053HG5yvWNE/AB8w39kxk/VGxACrX6bVZR1tnN36vhInjom83mWlDIu0Tl5WqD8tmkjqCYMFQ==";
       };
     };
-    "@aws-sdk/client-sts-3.54.0" = {
+    "@aws-sdk/client-sts-3.56.0" = {
       name = "_at_aws-sdk_slash_client-sts";
       packageName = "@aws-sdk/client-sts";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.54.0.tgz";
-        sha512 = "UY8fyi1zaWBJm+ZtDZRvSOv1rjHlvJjtJF3MfGQWDwUM10Amwzfh4Hc2JEzyeMJPkoSSvm6CVjSDyqXo8yLGZA==";
+        url = "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.56.0.tgz";
+        sha512 = "6LFwAU/K02Q8eNk8O/ZnaPCsnDibKYReiRV222hD64vy8rMvtGO1l+RTf5cFVa1XxHNy9ZERIJBn60EO2Zw7FA==";
       };
     };
-    "@aws-sdk/config-resolver-3.54.0" = {
+    "@aws-sdk/config-resolver-3.56.0" = {
       name = "_at_aws-sdk_slash_config-resolver";
       packageName = "@aws-sdk/config-resolver";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.54.0.tgz";
-        sha512 = "VaNuvJLMaz3znmBD9BNkoEqNUs5teILU66SnFqBwVqabmOVeOh7M6/f43CcDarkwGklzZB/bn/rx9NOWUtdunA==";
+        url = "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.56.0.tgz";
+        sha512 = "Gzx/fkUqixQkNpqoVTyR0+BUpJTfv+9qBNbhBw79V+HnPeY+tyqkVB4vZNJYbYSR6A/rMwYThxPOfvsNDFPk6A==";
       };
     };
-    "@aws-sdk/credential-provider-env-3.54.0" = {
+    "@aws-sdk/credential-provider-env-3.55.0" = {
       name = "_at_aws-sdk_slash_credential-provider-env";
       packageName = "@aws-sdk/credential-provider-env";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.54.0.tgz";
-        sha512 = "XWfzoUyFVsT4J7iTnXO38FKNdGFyE6ZNBtW9+Yx9EiiLtUlzH09PRv+54KIRQ4uqU+fEdtRh0gOdFajTrnRi3g==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.55.0.tgz";
+        sha512 = "4AIIXEdvinLlWNFtrUbUgoB7dkuV04RTcTruVWI4Ub4WSsuSCa72ZU1vqyvcEAOgGGLBmcSaGTWByjiD2sGcGA==";
       };
     };
-    "@aws-sdk/credential-provider-imds-3.54.0" = {
+    "@aws-sdk/credential-provider-imds-3.56.0" = {
       name = "_at_aws-sdk_slash_credential-provider-imds";
       packageName = "@aws-sdk/credential-provider-imds";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.54.0.tgz";
-        sha512 = "Chygp8jswdjtCPmNxEMXigX4clgqh5GDaFGopR/gFaaG960hjF88Fx1/CPYD7exvM1FRO67nyfBOS0QKjSqTXg==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.56.0.tgz";
+        sha512 = "EibXjFcGtDEm8g9DhGtJpcVLxRhnN1tnrTxwlwTdc510k7F4Aly7PNLT/72tr4IQ8hl9eCCYgsNBpPDlY4pMmQ==";
       };
     };
-    "@aws-sdk/credential-provider-ini-3.54.0" = {
+    "@aws-sdk/credential-provider-ini-3.56.0" = {
       name = "_at_aws-sdk_slash_credential-provider-ini";
       packageName = "@aws-sdk/credential-provider-ini";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.54.0.tgz";
-        sha512 = "EobK9bJwsUdMKx7vB+tL5eaNaj/NoOPaFJlv0JRL3+5px7d2vF0i9yklj4uT7F3vDlOup6R3b1Gg9GtqxfYt9w==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.56.0.tgz";
+        sha512 = "XpZf8LPIIbBI0zvsRPW9ZNyom5ymctr+lMIv62w9bUglojdVtBVC2ErGBmQXSWWITk/hzFZ122txU5fyRjyAFg==";
       };
     };
-    "@aws-sdk/credential-provider-node-3.54.0" = {
+    "@aws-sdk/credential-provider-node-3.56.0" = {
       name = "_at_aws-sdk_slash_credential-provider-node";
       packageName = "@aws-sdk/credential-provider-node";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.54.0.tgz";
-        sha512 = "KsXJG0K7yJg2MCzNW52fSDbCIR5mRobbNnXTMpDRkghlQyHP1gdHsyRedVciMkJhdDILop2lScLw70iQBayP/Q==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.56.0.tgz";
+        sha512 = "TSnjA1grdyTP8xNNgNxLmOvZMUT3zT9JLydBOqpQptLjLBbP90F32CCxKZWFOA/DXtZA0QK9Fjo+8t0Q3xZtiw==";
       };
     };
-    "@aws-sdk/credential-provider-process-3.54.0" = {
+    "@aws-sdk/credential-provider-process-3.56.0" = {
       name = "_at_aws-sdk_slash_credential-provider-process";
       packageName = "@aws-sdk/credential-provider-process";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.54.0.tgz";
-        sha512 = "hjUQ6FRG3Ihsm77Rgrf1dSfRUVZAFEyAHCuwURePXpYjzMpFYjl12wL6Pwa7MLCqVMyLKQ8HYamznkgBlLQqxw==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.56.0.tgz";
+        sha512 = "B+Y35sefW1iTKqAPdlgzRy4lYx7nhXQNn+gyyt1ohfJLEvP3twv/n2xdNrF9xewCyF9glBm3YkxSleFZsGoBCw==";
       };
     };
-    "@aws-sdk/credential-provider-sso-3.54.0" = {
+    "@aws-sdk/credential-provider-sso-3.56.0" = {
       name = "_at_aws-sdk_slash_credential-provider-sso";
       packageName = "@aws-sdk/credential-provider-sso";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.54.0.tgz";
-        sha512 = "8HfBTdOw+9gbWsXRTr5y+QYq8gK+YYDx7tKbNv7ZWjMfw49SDef0j0W4ZBZH+FYEPepOEAKjBgtjvlUeFxrOaA==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.56.0.tgz";
+        sha512 = "oCUWNl742VgrlES5LVgmtyl6ruin8xXCG8Igv6SO0gxYswkv/ed/3yhQfOOaUmO4hY7p+q0ClwXZ3EQ3UH66wg==";
       };
     };
-    "@aws-sdk/credential-provider-web-identity-3.54.0" = {
+    "@aws-sdk/credential-provider-web-identity-3.55.0" = {
       name = "_at_aws-sdk_slash_credential-provider-web-identity";
       packageName = "@aws-sdk/credential-provider-web-identity";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.54.0.tgz";
-        sha512 = "Mi87IzpgIi6P3WntumgMJ6rNY8Ay/HtsLFYm4bZ1ZGJH/3QVT4YLm1n8A4xoC+ouhL0i24jmN3X1aNu6amBfEg==";
+        url = "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.55.0.tgz";
+        sha512 = "aKnXfZNGohTuF9rCGYLg4JEIOvWIZ/sb66XMq7bOUrx13KRPDwL/eUQL8quS5jGRLpjXVNvrS17AFf65GbdUBg==";
       };
     };
-    "@aws-sdk/eventstream-marshaller-3.54.0" = {
+    "@aws-sdk/eventstream-marshaller-3.55.0" = {
       name = "_at_aws-sdk_slash_eventstream-marshaller";
       packageName = "@aws-sdk/eventstream-marshaller";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/eventstream-marshaller/-/eventstream-marshaller-3.54.0.tgz";
-        sha512 = "blOxssrHCnugxdcudYB3Vmlp7ziG0to9RfnPq+InI98mIDm3G+rt7vW6GtlkgyWu0EYduj6N+aOI7ssRUCOyDQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/eventstream-marshaller/-/eventstream-marshaller-3.55.0.tgz";
+        sha512 = "ubPmAce0pxVsxrKsQQ/1q0xTY9S14m2/7REnkE0pzAGrl8xjH5OUpGml4yWqyboZPk1chnTaw+hoC5fj8Avexw==";
       };
     };
-    "@aws-sdk/eventstream-serde-browser-3.54.0" = {
+    "@aws-sdk/eventstream-serde-browser-3.55.0" = {
       name = "_at_aws-sdk_slash_eventstream-serde-browser";
       packageName = "@aws-sdk/eventstream-serde-browser";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-browser/-/eventstream-serde-browser-3.54.0.tgz";
-        sha512 = "XU9+nA7WlO+Rj0hV+C/2ZlB0zfI4eoit/CIlfGaonfx6EFezH3l4ngMZq8lgd8fSuPy1dN25DWQsW/F3AFSRdg==";
+        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-browser/-/eventstream-serde-browser-3.55.0.tgz";
+        sha512 = "V0/54j6sTBIRjhJJWjG1j44PsmZHfYzD0n2vxfhwmEvrK3BSXYU3Z3D9kYcajSvcvO8KRFU9/ZqRFJEN60Cl1g==";
       };
     };
-    "@aws-sdk/eventstream-serde-config-resolver-3.54.0" = {
+    "@aws-sdk/eventstream-serde-config-resolver-3.55.0" = {
       name = "_at_aws-sdk_slash_eventstream-serde-config-resolver";
       packageName = "@aws-sdk/eventstream-serde-config-resolver";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.54.0.tgz";
-        sha512 = "fnbwtjaSd05K2+rcEZ3TQfM6YBY6obWqqt/x0qTTt7277wdqvE3+i0dWcvrQLldGD7xY3+oitEmClAeCE0raiA==";
+        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.55.0.tgz";
+        sha512 = "NTJHLq1sbXyXAaJucKvcdN3Svr/fM2TjHEC3l8P/torFjIsX1+Ykpi8tZt8KsX8RjoUTTfKylh41AjJq0K9X4Q==";
       };
     };
-    "@aws-sdk/eventstream-serde-node-3.54.0" = {
+    "@aws-sdk/eventstream-serde-node-3.55.0" = {
       name = "_at_aws-sdk_slash_eventstream-serde-node";
       packageName = "@aws-sdk/eventstream-serde-node";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-node/-/eventstream-serde-node-3.54.0.tgz";
-        sha512 = "b/EXk+Yb6lspfdEvClDkutif1z7Ggbeg/s2z9ug8Zh32i4/8gc4kcoWHy4ez8GUqsrRuOfD1MScqxkSAmIlPlg==";
+        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-node/-/eventstream-serde-node-3.55.0.tgz";
+        sha512 = "0/kzJfupYrNLbJqn+MsTGGV0/dhPbqTN6g/4GqnoVDOiZPQeJjWEzmrWcXUDDbXq79+Zw0fIlniVkAMxhK2hvw==";
       };
     };
-    "@aws-sdk/eventstream-serde-universal-3.54.0" = {
+    "@aws-sdk/eventstream-serde-universal-3.55.0" = {
       name = "_at_aws-sdk_slash_eventstream-serde-universal";
       packageName = "@aws-sdk/eventstream-serde-universal";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-universal/-/eventstream-serde-universal-3.54.0.tgz";
-        sha512 = "HdFYrLvKHWATev0BCp0I8xH40MhP9cNhxK0h+srdCC9o/Djs3QrI0Nn5rzWdg/hQDyRg8jPSvaGG8P/ekyTn2w==";
+        url = "https://registry.npmjs.org/@aws-sdk/eventstream-serde-universal/-/eventstream-serde-universal-3.55.0.tgz";
+        sha512 = "fUqmpCO1jtdg5t1KQbKfs17KGsMUj9+d2hiIx7XxnL5SroXpBU6LIuiFgrjPluGWi0SsdOrL6SAkrDyR6aa/Xw==";
       };
     };
-    "@aws-sdk/fetch-http-handler-3.54.0" = {
+    "@aws-sdk/fetch-http-handler-3.55.0" = {
       name = "_at_aws-sdk_slash_fetch-http-handler";
       packageName = "@aws-sdk/fetch-http-handler";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.54.0.tgz";
-        sha512 = "TIn2ocem/gpMQ12KoiOu3uTHO86OOrmFITulV9D8xTzvFqHe34JKjHQPqII6lDbTCnU9N5CMv3N1CXxolIhiOQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.55.0.tgz";
+        sha512 = "/Sta3MLlszpRZ1pg+ClxfNqGvraX93F587eHrfQMaGXgQ2BqJLiAVRorBRGcmmmrHxfLOqspNqufF7ibrqziRQ==";
       };
     };
-    "@aws-sdk/hash-blob-browser-3.54.0" = {
+    "@aws-sdk/hash-blob-browser-3.55.0" = {
       name = "_at_aws-sdk_slash_hash-blob-browser";
       packageName = "@aws-sdk/hash-blob-browser";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/hash-blob-browser/-/hash-blob-browser-3.54.0.tgz";
-        sha512 = "KIflBj2efxy5/z1ffg1HL3CRxqM7hNqel+dtVCYaCfTJ/MQhcfcR5GsodhJYl99pitryorJeB4chhgNv4bbPUA==";
+        url = "https://registry.npmjs.org/@aws-sdk/hash-blob-browser/-/hash-blob-browser-3.55.0.tgz";
+        sha512 = "/tVsZDPXgxIovFRrKclcq304KEHcHUbBcpqar2QRYZAvaK+vxZM9h7ZmAKemmlkzV7mdh0KZqzPnfr6+KN4IGg==";
       };
     };
-    "@aws-sdk/hash-node-3.54.0" = {
+    "@aws-sdk/hash-node-3.55.0" = {
       name = "_at_aws-sdk_slash_hash-node";
       packageName = "@aws-sdk/hash-node";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.54.0.tgz";
-        sha512 = "o2XRftfj3Tj2jsZsdvnEY4OtmkT/9OADCWkINQCTcfy+nMuvs1IAS/qruunfaMJ58GntOoI4CVIbRa2lhhJr5w==";
+        url = "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.55.0.tgz";
+        sha512 = "2UdYwY/++AlzWEAFaK9wOed2QSxbzV527vmqKjReLHpPKPrSIlooUxlTH3LU6Y6WVDAzDRtLK43KUVXTLgGK1A==";
       };
     };
-    "@aws-sdk/hash-stream-node-3.54.0" = {
+    "@aws-sdk/hash-stream-node-3.55.0" = {
       name = "_at_aws-sdk_slash_hash-stream-node";
       packageName = "@aws-sdk/hash-stream-node";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/hash-stream-node/-/hash-stream-node-3.54.0.tgz";
-        sha512 = "j936gz9O1ist0Bu2IXCf2DUrYfB9DkwKUMRAN14mTrKB+3PAMRhBazUVDJjIxPbcC9MQJnwIa2tiZWn8QC48UA==";
+        url = "https://registry.npmjs.org/@aws-sdk/hash-stream-node/-/hash-stream-node-3.55.0.tgz";
+        sha512 = "0FuQmHZK3XAd+dL+UC36PiPhZ80lOvkbFusFpZLwXTelXB3AUsiVl2IebA4EpE352XU+1ACEAAWwQpj8zsdcOw==";
       };
     };
-    "@aws-sdk/invalid-dependency-3.54.0" = {
+    "@aws-sdk/invalid-dependency-3.55.0" = {
       name = "_at_aws-sdk_slash_invalid-dependency";
       packageName = "@aws-sdk/invalid-dependency";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.54.0.tgz";
-        sha512 = "eeefTPtkb0FQFMBKmwhvmdPqCgGvTcWEiNH8pznAH0hqxLvOLNdNRoKnX5a1WlYoq3eTm0YN9Zh+N1Sj4mbkcg==";
+        url = "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.55.0.tgz";
+        sha512 = "delH0lV+78fdD/8MXIt9kTLS6IwHvdhqq9dw/ow5VjTUw+xBwUlfPfZplaai+3hKTKWh6a2WZCeDasNItBv9aA==";
       };
     };
-    "@aws-sdk/is-array-buffer-3.52.0" = {
+    "@aws-sdk/is-array-buffer-3.55.0" = {
       name = "_at_aws-sdk_slash_is-array-buffer";
       packageName = "@aws-sdk/is-array-buffer";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.52.0.tgz";
-        sha512 = "5Pe9QKrOeSZb9Z8gtlx9CDMfxH8EiNdClBfXBbc6CiUM7y6l7UintYHkm133zM5XTqtMRYY1jaD8svVAoRPApA==";
+        url = "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.55.0.tgz";
+        sha512 = "NbiPHVYuPxdqdFd6FxzzN3H1BQn/iWA3ri3Ry7AyLeP/tGs1yzEWMwf8BN8TSMALI0GXT6Sh0GDWy3Ok5xB6DA==";
       };
     };
-    "@aws-sdk/md5-js-3.54.0" = {
+    "@aws-sdk/md5-js-3.55.0" = {
       name = "_at_aws-sdk_slash_md5-js";
       packageName = "@aws-sdk/md5-js";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/md5-js/-/md5-js-3.54.0.tgz";
-        sha512 = "pMprZD8JBw9WU4Risfd0Clm9SrUpsUS3QriSDeuFnGfRcKHkpw1sDj6HsNsIQ1OCeWuhYqW55Wtzc0pH8U80Mg==";
+        url = "https://registry.npmjs.org/@aws-sdk/md5-js/-/md5-js-3.55.0.tgz";
+        sha512 = "+jh2p2B0KsyODQR01bAh7Ywladi9oVL4MSfskwl6AQApKaj8/2xLqW9I89zbRSMfPEgi2eIksQgCWET7tUc29Q==";
       };
     };
-    "@aws-sdk/middleware-bucket-endpoint-3.54.0" = {
+    "@aws-sdk/middleware-bucket-endpoint-3.56.0" = {
       name = "_at_aws-sdk_slash_middleware-bucket-endpoint";
       packageName = "@aws-sdk/middleware-bucket-endpoint";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.54.0.tgz";
-        sha512 = "4VC6zxDaveCnQD3eUJezSQ3Ikeq+MxRnvfcNhZytB20tYRy1PnR4jLoqjYkw5U1zstVRABbZdzlsWzZMe308ew==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.56.0.tgz";
+        sha512 = "czf0u1+QeYg43hXYpR/udf3YwIq1CX5kd4bL5U6DryH9E39sHeIoEGt5NC+82OTnbezqrHBalzZX7h7Y2pI8Sg==";
       };
     };
-    "@aws-sdk/middleware-content-length-3.54.0" = {
+    "@aws-sdk/middleware-content-length-3.55.0" = {
       name = "_at_aws-sdk_slash_middleware-content-length";
       packageName = "@aws-sdk/middleware-content-length";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.54.0.tgz";
-        sha512 = "DTlZo00stFwFHyR+GTXxhYePzNbXm+aX5yYQUsrsY2J2HuSbADVgDDekJXbtOH36QBa0OJf7JKbWP8PZDxk1zg==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.55.0.tgz";
+        sha512 = "IkFBwa1G5ERfKFh4Kdtcn/aNAGi3Hcp9IO1PVt69LZWaevxjXAi5NS2k65E9mZPEumzuLtcEeC+3qhPs4FUkqQ==";
       };
     };
-    "@aws-sdk/middleware-expect-continue-3.54.0" = {
+    "@aws-sdk/middleware-expect-continue-3.55.0" = {
       name = "_at_aws-sdk_slash_middleware-expect-continue";
       packageName = "@aws-sdk/middleware-expect-continue";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.54.0.tgz";
-        sha512 = "6k4hoD7XqGDA8yq10AzF+iafgc+RyrPxr4kqzv50+hI5CZkPcl/vOAgS7iD+Y33dLITYuh+jzlpn7zlLwdOoqw==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.55.0.tgz";
+        sha512 = "RT6w9AJvZyMn8Cdw6RHaLK8c/Lkqdi4v19XAJCPaAaD2rQ6GhZ+AawgfkF5zawzN1TgzLmzWB4e1ts4+chr74Q==";
       };
     };
-    "@aws-sdk/middleware-flexible-checksums-3.54.0" = {
+    "@aws-sdk/middleware-flexible-checksums-3.55.0" = {
       name = "_at_aws-sdk_slash_middleware-flexible-checksums";
       packageName = "@aws-sdk/middleware-flexible-checksums";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.54.0.tgz";
-        sha512 = "4+bUwQyYHtTbaJDaj2F7j2K/JUcYdKg169pKmpefZiXZVdfR2/WWwj7Wx7EI40rpPYHaMpSal9tIxz054LPYnw==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.55.0.tgz";
+        sha512 = "Uhx0HAUkpRfRny5bGNPYNlaznMKSa5d88RWhrAEiYMgrhUsOcAahyj74lHrphGQ0nUwJr67uq55GPRRWn9Q4Ig==";
       };
     };
-    "@aws-sdk/middleware-header-default-3.54.0" = {
+    "@aws-sdk/middleware-header-default-3.55.0" = {
       name = "_at_aws-sdk_slash_middleware-header-default";
       packageName = "@aws-sdk/middleware-header-default";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-header-default/-/middleware-header-default-3.54.0.tgz";
-        sha512 = "DvkdMJRAYrVsu6S92Z/fhSnj7ZFCNE3ertmIiGsukfMuGmzkuVKxqlUfo89xS3sOF3VY2nNOdNTCnVY4VZLSQQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-header-default/-/middleware-header-default-3.55.0.tgz";
+        sha512 = "IrIsVoiol36Ap3VLtrofx95PkiBd4aNw6k4FRi9TsRxmOhfcAe3MvG521wyVEg+n3DqkYPb1N4SVTUENewo8bQ==";
       };
     };
-    "@aws-sdk/middleware-host-header-3.54.0" = {
+    "@aws-sdk/middleware-host-header-3.55.0" = {
       name = "_at_aws-sdk_slash_middleware-host-header";
       packageName = "@aws-sdk/middleware-host-header";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.54.0.tgz";
-        sha512 = "X+lvYc2ij1+9tfpvdGGb+/APvH7g/M9RYzIEkI/LvNjVCOA3f3rgzFftZZhD/zccRtrygsvXfeZhoDrHxFKl9g==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.55.0.tgz";
+        sha512 = "69mTWJfuPP4aC+h2/cb9B2CUNA9tiRPUBp67dmMrA2dHyy53kNYo8TGgfLKProoBidBz/AVXIfnh+izJj0F20w==";
       };
     };
-    "@aws-sdk/middleware-location-constraint-3.54.0" = {
+    "@aws-sdk/middleware-location-constraint-3.55.0" = {
       name = "_at_aws-sdk_slash_middleware-location-constraint";
       packageName = "@aws-sdk/middleware-location-constraint";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.54.0.tgz";
-        sha512 = "qwZR+GWlRoIFvvCt5ywmX3kV15KxrFbUxyAADCEJ4Q86ebEI3ux9mAHB6niOArRwtA5/wyvjRrOiYo/fTq7eLQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.55.0.tgz";
+        sha512 = "OvCKwBFbl8Gbfk0HGX00pkdORJN8BPuH/O5l3+mOBWuwILPuckRP5WGnL+1HT/gu4hHS6h1lpxUrPxUOoeKIAg==";
       };
     };
-    "@aws-sdk/middleware-logger-3.54.0" = {
+    "@aws-sdk/middleware-logger-3.55.0" = {
       name = "_at_aws-sdk_slash_middleware-logger";
       packageName = "@aws-sdk/middleware-logger";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.54.0.tgz";
-        sha512 = "bDCQj8IBq1vrXRRrpqD+suJ8hKc4oxUXpRkWdsAD+HnWWRqHjsy0hdq5F8Rj1Abq7CsFtZ+rUXddl+KlmgZ3+A==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.55.0.tgz";
+        sha512 = "PtRbVrxEzDmeV9prBIP4/9or7R5Dj66mjbFSvNRGZ0n+UBfBFfVRfNrhQPNzQpfV9A3KVl9YyWCVXDSW+/rk9Q==";
       };
     };
-    "@aws-sdk/middleware-retry-3.54.0" = {
+    "@aws-sdk/middleware-retry-3.56.0" = {
       name = "_at_aws-sdk_slash_middleware-retry";
       packageName = "@aws-sdk/middleware-retry";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.54.0.tgz";
-        sha512 = "8kVzwxe0HQajeZWXzAp2XCkbiK8E8AZESfXvLyM34Xy2e8L8gdi1j90QLzpFk6WX6rz7hXBQG7utrCJkwXQxLA==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.56.0.tgz";
+        sha512 = "AkunQvVex5JimQ+xLDcPcdsseVdvxE5rUSPh/NKLGO0bOyMxPnJSRlOxrOoibK0i1BPHkTpwdx+BDFrWiRLqug==";
       };
     };
-    "@aws-sdk/middleware-sdk-s3-3.54.0" = {
+    "@aws-sdk/middleware-sdk-s3-3.56.0" = {
       name = "_at_aws-sdk_slash_middleware-sdk-s3";
       packageName = "@aws-sdk/middleware-sdk-s3";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.54.0.tgz";
-        sha512 = "xESksyOVCuDkMPC8mEqrInnuBeJHLSVOfwIl/pGwzevc+Q5spO9FDUlNfhaEVOEoLqK21TUdZo4z/ElNN94m4w==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.56.0.tgz";
+        sha512 = "ERHjQsA4ZTMDiKlSWF6dGt/UT15OQCCR8qRR+d/n3hVs6Nzyrt/ajEIBuea7E5lDuGwgyua5wkj1UjiHFQ4YeA==";
       };
     };
-    "@aws-sdk/middleware-sdk-sts-3.54.0" = {
+    "@aws-sdk/middleware-sdk-sts-3.56.0" = {
       name = "_at_aws-sdk_slash_middleware-sdk-sts";
       packageName = "@aws-sdk/middleware-sdk-sts";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.54.0.tgz";
-        sha512 = "4vOlG96fKgqmLMsguoKFdBkk2Fq8JttpgPts9d5Ox73+yQsa0VKrpLiD5OUPqgjGZcX2bilMKCAOBc2v3ESAHw==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.56.0.tgz";
+        sha512 = "LutcntT3DvS0nnHdGPHES+J+NUtKJFAVgz1gSqPq4MLIAB5oUm9QAWhmki5s2dfBbeRR7Kh1tWpzE00XowyBog==";
       };
     };
-    "@aws-sdk/middleware-serde-3.54.0" = {
+    "@aws-sdk/middleware-serde-3.55.0" = {
       name = "_at_aws-sdk_slash_middleware-serde";
       packageName = "@aws-sdk/middleware-serde";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.54.0.tgz";
-        sha512 = "O89/5aOiNegBP6Mv+gPr22Zawz2zF2v1o8kwFv2s4PWDzpmvrdF2by6e2Uh9sKzfpcwEW7Wr8kDTwajampVjgA==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.55.0.tgz";
+        sha512 = "NkEbTDrSZcC2NhuvfjXHKJEl0xgI2B5tMAwi/rMOq/TEnARwVUL9qAy+5lgeiPCqebiNllWatARrFgAaYf0VeA==";
       };
     };
-    "@aws-sdk/middleware-signing-3.54.0" = {
+    "@aws-sdk/middleware-signing-3.56.0" = {
       name = "_at_aws-sdk_slash_middleware-signing";
       packageName = "@aws-sdk/middleware-signing";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.54.0.tgz";
-        sha512 = "KYxmRDh7D6ysAezlsDf3cN2h6OjH66x3NUdgUmW+78nkN9tRvvJEjhmu6IOkPd4E1V9P3JOLbq6zVjDVU12WDQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.56.0.tgz";
+        sha512 = "m0Rmlb3eojvZs0DQdfTZ+xJwJ0SuTXdeXn75jnpDAlnzRNKy7aRGYSsHChK8nkXgYKkpO2JmYywiTUriwwVULA==";
       };
     };
-    "@aws-sdk/middleware-ssec-3.54.0" = {
+    "@aws-sdk/middleware-ssec-3.55.0" = {
       name = "_at_aws-sdk_slash_middleware-ssec";
       packageName = "@aws-sdk/middleware-ssec";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.54.0.tgz";
-        sha512 = "wNQR5pRoN4wJq2IcFOXhRxvars4uWgdUnBQcJ5UDSJhUPwVDA4m+M83Q/54GWRHT+SVsobuNTmTeFnCbgsIq3A==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.55.0.tgz";
+        sha512 = "HTdA23hksOphQe0TmYORsa/kMNnKRGbdh0VJcsDGHQScJXzJ+C//THwfcoklff0XZfC+vGh93PECBWqixMELZw==";
       };
     };
-    "@aws-sdk/middleware-stack-3.54.0" = {
+    "@aws-sdk/middleware-stack-3.55.0" = {
       name = "_at_aws-sdk_slash_middleware-stack";
       packageName = "@aws-sdk/middleware-stack";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.54.0.tgz";
-        sha512 = "38iit8VJ7jhFlMdwdDESEJOwbi8wIjF7Q1FOFIoCvURLGkTDQdabGXKwcFVfRuceLO+LJxWP3l0z0c10uZa6gQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.55.0.tgz";
+        sha512 = "ouD+wFz8W2R0ZQ8HrbhgN8tg1jyINEg9lPEEXY79w1Q5sf94LJ90XKAMVk02rw3dJalUWjLHf0OQe1/qxZfHyA==";
       };
     };
-    "@aws-sdk/middleware-user-agent-3.54.0" = {
+    "@aws-sdk/middleware-user-agent-3.55.0" = {
       name = "_at_aws-sdk_slash_middleware-user-agent";
       packageName = "@aws-sdk/middleware-user-agent";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.54.0.tgz";
-        sha512 = "831GP5EBJdDxyq93dpgBZUwBWnZAID2aFvE/VN8c5X8U00ZT7GRt9cy5EL2b6AQN3Z4uWL1ZVDVkYmRAHs33Lg==";
+        url = "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.55.0.tgz";
+        sha512 = "UOBimkQrj6onXb3Fyuao85IjipnDSowNHfOOl3ADVX9boA/A4db5QAXBSxThV0WHLArC0iiUsnwu95ElSSMVIg==";
       };
     };
-    "@aws-sdk/node-config-provider-3.54.0" = {
+    "@aws-sdk/node-config-provider-3.56.0" = {
       name = "_at_aws-sdk_slash_node-config-provider";
       packageName = "@aws-sdk/node-config-provider";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.54.0.tgz";
-        sha512 = "Q2a1vyoZa2UX/dItP3cqNdLUoTGdIY4hD5nA+mTg5mKlOWci35v8Rypr40tQz4ZwiDF6QQmK0tvD3bBUULm0wA==";
+        url = "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.56.0.tgz";
+        sha512 = "2uCisndaymG/tXsfVj+ZqybmNTRJwhTm3sPBB8+utSDcUe7PWR0viNEqR2lPO5Uds1zOQm4MPv1v+j4jZufFyw==";
       };
     };
-    "@aws-sdk/node-http-handler-3.54.0" = {
+    "@aws-sdk/node-http-handler-3.55.0" = {
       name = "_at_aws-sdk_slash_node-http-handler";
       packageName = "@aws-sdk/node-http-handler";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.54.0.tgz";
-        sha512 = "g6+IXe4FCMrx4vrY73yvFNAUsBJ1vhjDshUCihBv5tEXsd45/MqmON/VWYoaQZts0m2wx2fKsdoDKSIZZY7AiQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.55.0.tgz";
+        sha512 = "yF4YQr72YgVgWO9IDOhDcncqlKUJmMCtserAYhKNvmkVuaMGHE11p+IByWgcIsMJTvtFaFBhTA3W7zhJB1C1xA==";
       };
     };
-    "@aws-sdk/property-provider-3.54.0" = {
+    "@aws-sdk/property-provider-3.55.0" = {
       name = "_at_aws-sdk_slash_property-provider";
       packageName = "@aws-sdk/property-provider";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.54.0.tgz";
-        sha512 = "8e+KXskwOhXF0MIdIcZLFsOTfMVGp41Y6kywgewQaHkZoMzZ6euRziyWNgnshUE794tjxxol9resudSUehPjIw==";
+        url = "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.55.0.tgz";
+        sha512 = "o7cKFJSHq5WOhwPsspYrzNto35oKKZvESZuWDtLxaZKSI6l7zpA366BI4kDG6Tc9i2+teV553MbxyZ9eya5A8g==";
       };
     };
-    "@aws-sdk/protocol-http-3.54.0" = {
+    "@aws-sdk/protocol-http-3.55.0" = {
       name = "_at_aws-sdk_slash_protocol-http";
       packageName = "@aws-sdk/protocol-http";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.54.0.tgz";
-        sha512 = "v4CgQ2mBzEwNubM1duWP3Unu98EPNF2BuKWe4wT1HNG2MTkODS56fsgVT6sGGXS9nB/reEzB+3bXO5FS8+3SUg==";
+        url = "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.55.0.tgz";
+        sha512 = "vNjjsP5bFuKQMhmuBQZDddH441xanPbm8n42qgfigv0RzgWQhvUFrnmZWLBdyY8geY0RwsQ6x9yfQ0gvs48tpw==";
       };
     };
-    "@aws-sdk/querystring-builder-3.54.0" = {
+    "@aws-sdk/querystring-builder-3.55.0" = {
       name = "_at_aws-sdk_slash_querystring-builder";
       packageName = "@aws-sdk/querystring-builder";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.54.0.tgz";
-        sha512 = "7rs2gGPpiIHntbYGPFkxkXQkSK7uVBqlWRl0m6fNngUEz2n8jRxytB6LlALMHbXeXh28+zzq0VxbAwqAAUQ4oQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.55.0.tgz";
+        sha512 = "/ZAXNipt9nRR8k+eowwukE/YjXnQ49p5w/MkaQxsBk3IuIf7MAcgVg8glHr0igH84GfUQ7ZVP8v+G2S3tKUG+Q==";
       };
     };
-    "@aws-sdk/querystring-parser-3.54.0" = {
+    "@aws-sdk/querystring-parser-3.55.0" = {
       name = "_at_aws-sdk_slash_querystring-parser";
       packageName = "@aws-sdk/querystring-parser";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.54.0.tgz";
-        sha512 = "OZ4mRJ9rXgBskPBSoXBw8tV4kfNK0f/pP55qE1eZIcQ1z7EvVz4NjldgqMfscT20Cx5VzUbus3q9EPcV+HbR1w==";
+        url = "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.55.0.tgz";
+        sha512 = "e+2FLgo+eDx7oh7ap5HngN9XSVMxredAVztLHxCcSN0lFHHHzMa8b2SpXbaowUxQHh7ziymSqvOrPYFQ71Filg==";
       };
     };
-    "@aws-sdk/s3-request-presigner-3.54.0" = {
+    "@aws-sdk/s3-request-presigner-3.56.0" = {
       name = "_at_aws-sdk_slash_s3-request-presigner";
       packageName = "@aws-sdk/s3-request-presigner";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.54.0.tgz";
-        sha512 = "xPIahWW1brKu3Cnphx/pYAB3nRAyAZH4Zh7n1zm9XUsqqsBc4ZkIKqC5tDvJ/lBOLrqks8oSh2wpckfCwO9EpA==";
+        url = "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.56.0.tgz";
+        sha512 = "Ct/eGVojY1Mtmd4oC3n+OXnL7QmEDCQ8pXIGvhZIFwd/ZyiZsMdEz9ZO2+b8izdMGu9V9gg8EftV+hDfbMxMOQ==";
       };
     };
-    "@aws-sdk/service-error-classification-3.54.0" = {
+    "@aws-sdk/service-error-classification-3.55.0" = {
       name = "_at_aws-sdk_slash_service-error-classification";
       packageName = "@aws-sdk/service-error-classification";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.54.0.tgz";
-        sha512 = "XWANvjJJZNqsYhGmccSSuhsvINIUX1KckfDmvYtUR6cKM6nM6QWOg/QJeTFageTEpruJ5TqzW9vY414bIE883w==";
+        url = "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.55.0.tgz";
+        sha512 = "HdjnDyarsa1Avq1MJurkLyEe9c3eRa76dPmK4TmRGgwJ+tInEzGHL0rBW7V8xBK+PDF+fJQ71hvm8jPYmzvBwQ==";
       };
     };
-    "@aws-sdk/shared-ini-file-loader-3.52.0" = {
+    "@aws-sdk/shared-ini-file-loader-3.56.0" = {
       name = "_at_aws-sdk_slash_shared-ini-file-loader";
       packageName = "@aws-sdk/shared-ini-file-loader";
-      version = "3.52.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.52.0.tgz";
-        sha512 = "tALb8u8IVcI4pT7yFZpl4O6kgeY5EAXyphZoRPgQSCDhmEyFUIi/sXbCN8HQiHjnHdWfXdaNE1YsZcW3GpcuoQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.56.0.tgz";
+        sha512 = "dCy3mXqYKK76iep9rn2inFrPOlGURvoO+B0Ygem0jgkDuxIF8t5wa10WHWB2ee8qZRlfwPYtcVdpEm2398St3g==";
       };
     };
-    "@aws-sdk/signature-v4-3.54.0" = {
+    "@aws-sdk/signature-v4-3.56.0" = {
       name = "_at_aws-sdk_slash_signature-v4";
       packageName = "@aws-sdk/signature-v4";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.54.0.tgz";
-        sha512 = "22Bf8uQ0Q/I7WpLFU88G7WVpRw6tWUX9Ggr0Z++81uZF5YCPbWDNtFDHitoERaRc/M4vUMxNuTsX/JWOR3fFPg==";
+        url = "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.56.0.tgz";
+        sha512 = "aCvYQDMSAPe2K1lk0A+B+4xPBF50zf5ufO2k6FmBba020kqe8ODZjLq6vJJJfwrywc1B+2xWKvdpvCB7qbAOUw==";
       };
     };
-    "@aws-sdk/smithy-client-3.54.0" = {
+    "@aws-sdk/smithy-client-3.55.0" = {
       name = "_at_aws-sdk_slash_smithy-client";
       packageName = "@aws-sdk/smithy-client";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.54.0.tgz";
-        sha512 = "zdYN5pwhJU7x8qZKWTZPsFD5YQkDt6kyCNRsNjSWJ0ON4R3wUlFIwT3YzeQ5nMOTD86cVIm1n2RaSTYHwelFXg==";
+        url = "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.55.0.tgz";
+        sha512 = "YgBpqg6R3Qg8CH9biOP1N1lYTvh8VLGD6AoDGgy/R1dQSqRQuxgKANLl3DOVcZnIZLsw4TdB0m7U+ZPtirPR1Q==";
       };
     };
-    "@aws-sdk/types-3.54.0" = {
+    "@aws-sdk/types-3.55.0" = {
       name = "_at_aws-sdk_slash_types";
       packageName = "@aws-sdk/types";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/types/-/types-3.54.0.tgz";
-        sha512 = "Jp2MHXnrM0pk0RIoSl5AHFm7TBk+7b8HTIcQ2X/6kGwwwnWw9qlg9ZFziegJTNTLJ4iVgZjz/yMlEvgrp7z9CA==";
+        url = "https://registry.npmjs.org/@aws-sdk/types/-/types-3.55.0.tgz";
+        sha512 = "wrDZjuy1CVAYxDCbm3bWQIKMGfNs7XXmG0eG4858Ixgqmq2avsIn5TORy8ynBxcXn9aekV/+tGEQ7BBSYzIVNQ==";
       };
     };
-    "@aws-sdk/url-parser-3.54.0" = {
+    "@aws-sdk/url-parser-3.55.0" = {
       name = "_at_aws-sdk_slash_url-parser";
       packageName = "@aws-sdk/url-parser";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.54.0.tgz";
-        sha512 = "DJWdlkXq3rsOydxwR9htPUW4QXhmo75Hybg96D3F2uPUvPCm8gJFngXp/9hW1OYcgfNu13HXqUy+t6V23cC7Iw==";
+        url = "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.55.0.tgz";
+        sha512 = "qrTwN5xIgTLreqLnZ+x3cAudjNKfxi6srW1H/px2mk4lb2U9B4fpGjZ6VU+XV8U2kR+YlT8J6Jo5iwuVGfC91A==";
       };
     };
-    "@aws-sdk/util-arn-parser-3.52.0" = {
+    "@aws-sdk/util-arn-parser-3.55.0" = {
       name = "_at_aws-sdk_slash_util-arn-parser";
       packageName = "@aws-sdk/util-arn-parser";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.52.0.tgz";
-        sha512 = "mMsoYJ70+BGkVpdfQbu942v4fAGzx+pIL8+QnQhzUmcU0HbNkI0vYliMWfzz7ka9CHgbijUI/ANKA319zgKtvA==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.55.0.tgz";
+        sha512 = "76KJxp4MRWufHYWys7DFl64znr5yeJ3AIQNAPCKKw1sP0hzO7p6Kx0PaJnw9x+CPSzOrT4NbuApL6/srYhKDGg==";
       };
     };
-    "@aws-sdk/util-base64-browser-3.52.0" = {
+    "@aws-sdk/util-base64-browser-3.55.0" = {
       name = "_at_aws-sdk_slash_util-base64-browser";
       packageName = "@aws-sdk/util-base64-browser";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.52.0.tgz";
-        sha512 = "xjv/cQ4goWXAiGEC/AIL/GtlHg4p4RkQKs6/zxn9jOxo1OnbppLMJ0LjCtv4/JVYIVGHrx0VJ8Exyod7Ln+NeA==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.55.0.tgz";
+        sha512 = "3hrZ2R/ZyD3IM25KhETOGLC5tB/ft8zoyVmNg1l4+takoUm46ompnglFXCVkWBu9Hpxc+M4XtiY7MHE6es4Wtg==";
       };
     };
-    "@aws-sdk/util-base64-node-3.52.0" = {
+    "@aws-sdk/util-base64-node-3.55.0" = {
       name = "_at_aws-sdk_slash_util-base64-node";
       packageName = "@aws-sdk/util-base64-node";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.52.0.tgz";
-        sha512 = "V96YIXBuIiVu7Zk72Y9dly7Io9cYOT30Hjf77KAkBeizlFgT5gWklWYGcytPY8FxLuEy4dPLeHRmgwQnlDwgPA==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.55.0.tgz";
+        sha512 = "UQ/ZuNoAc8CFMpSiRYmevaTsuRKzLwulZTnM8LNlIt9Wx1tpNvqp80cfvVj7yySKROtEi20wq29h31dZf1eYNQ==";
       };
     };
-    "@aws-sdk/util-body-length-browser-3.54.0" = {
+    "@aws-sdk/util-body-length-browser-3.55.0" = {
       name = "_at_aws-sdk_slash_util-body-length-browser";
       packageName = "@aws-sdk/util-body-length-browser";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.54.0.tgz";
-        sha512 = "hnY9cXbKWJ2Fjb4bK35sFdD4vK+sFe59JtxxI336yYzANulc462LU/J1RgONXYBW60d9iwJ7U+S+9oTJrEH6WQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.55.0.tgz";
+        sha512 = "Ei2OCzXQw5N6ZkTMZbamUzc1z+z1R1Ja5tMEagz5BxuX4vWdBObT+uGlSzL8yvTbjoPjnxWA2aXyEqaUP3JS8Q==";
       };
     };
-    "@aws-sdk/util-body-length-node-3.54.0" = {
+    "@aws-sdk/util-body-length-node-3.55.0" = {
       name = "_at_aws-sdk_slash_util-body-length-node";
       packageName = "@aws-sdk/util-body-length-node";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.54.0.tgz";
-        sha512 = "BBQB3kqHqHQp2GAINJGuse9JBM7hfU0tMp9rfw0nym4C/VRooiJVrIb28tKseLtd7nihXvsZXPvEc2jQBe1Thg==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.55.0.tgz";
+        sha512 = "lU1d4I+9wJwydduXs0SxSfd+mHKjxeyd39VwOv6i2KSwWkPbji9UQqpflKLKw+r45jL7+xU/zfeTUg5Tt/3Gew==";
       };
     };
-    "@aws-sdk/util-buffer-from-3.52.0" = {
+    "@aws-sdk/util-buffer-from-3.55.0" = {
       name = "_at_aws-sdk_slash_util-buffer-from";
       packageName = "@aws-sdk/util-buffer-from";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.52.0.tgz";
-        sha512 = "hsG0lMlHjJUFoXIy59QLn6x4QU/vp/e0t3EjdD0t8aymB9iuJ43UeLjYTZdrOgtbWb8MXEF747vwg+P6n+4Lxw==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.55.0.tgz";
+        sha512 = "uVzKG1UgvnV7XX2FPTylBujYMKBPBaq/qFBxfl0LVNfrty7YjpfieQxAe6yRLD+T0Kir/WDQwGvYC+tOYG3IGA==";
       };
     };
-    "@aws-sdk/util-config-provider-3.52.0" = {
+    "@aws-sdk/util-config-provider-3.55.0" = {
       name = "_at_aws-sdk_slash_util-config-provider";
       packageName = "@aws-sdk/util-config-provider";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.52.0.tgz";
-        sha512 = "1wonBNkOOLJpMZnz2Kn69ToFgSoTTyGzJInir8WC5sME3zpkb5j41kTuEVbImNJhVv9MKjmGYrMeZbBVniLRPw==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.55.0.tgz";
+        sha512 = "30dzofQQfx6tp1jVZkZ0DGRsT0wwC15nEysKRiAcjncM64A0Cm6sra77d0os3vbKiKoPCI/lMsFr4o3533+qvQ==";
       };
     };
-    "@aws-sdk/util-create-request-3.54.0" = {
+    "@aws-sdk/util-create-request-3.55.0" = {
       name = "_at_aws-sdk_slash_util-create-request";
       packageName = "@aws-sdk/util-create-request";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-create-request/-/util-create-request-3.54.0.tgz";
-        sha512 = "Sa+t75YQnMXXcCruLBvKZ6B1DzyGAod1PZT+iDHwDDobDsUVG3Cjov9gJepYAH2EEmvZa9f0IT+W6lvGv3uL4w==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-create-request/-/util-create-request-3.55.0.tgz";
+        sha512 = "ihCVXBWQopYk9R1H/+IsBKuRx1OqBx4OmTMzL7dRC+wnOV1h0nOUhps19QidppT/uIZUnuV8EZs3KnOWdZzH3w==";
       };
     };
-    "@aws-sdk/util-credentials-3.53.0" = {
-      name = "_at_aws-sdk_slash_util-credentials";
-      packageName = "@aws-sdk/util-credentials";
-      version = "3.53.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-credentials/-/util-credentials-3.53.0.tgz";
-        sha512 = "XP/3mYOmSn5KpWv+PnBTP2UExXb+hx1ugbH4Gkveshdq9KBlVnpV5eVgIwSAnKBsplScfsNMJ5EOtHjz5Cvu5A==";
-      };
-    };
-    "@aws-sdk/util-defaults-mode-browser-3.54.0" = {
+    "@aws-sdk/util-defaults-mode-browser-3.55.0" = {
       name = "_at_aws-sdk_slash_util-defaults-mode-browser";
       packageName = "@aws-sdk/util-defaults-mode-browser";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.54.0.tgz";
-        sha512 = "9QnRbTsD2MuEr59vaPAbC95ba7druMFRSZjpwc3L7U9zpsJruNDaL5aAmV0gCAIPZg7eSaJmipyWr0AvwwgroQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.55.0.tgz";
+        sha512 = "OS3gAwR84bHz7ObhjsSJM+grfeaBq3leGrj7xiX4BH3C8J+c10GMo3fqx1pV8Fq5F+9lMmhHpfOocD63SN5Q8A==";
       };
     };
-    "@aws-sdk/util-defaults-mode-node-3.54.0" = {
+    "@aws-sdk/util-defaults-mode-node-3.56.0" = {
       name = "_at_aws-sdk_slash_util-defaults-mode-node";
       packageName = "@aws-sdk/util-defaults-mode-node";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.54.0.tgz";
-        sha512 = "kHFgEyAWCaR5uSmRwyVbWQnjiNib3EJSAG9y7bwMIHSOK/6TVOXGlb1KIoO6ZtLE1FZFlS55FIRFeOPmIFFZbA==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.56.0.tgz";
+        sha512 = "NKHW5kxH5EIcAa4b0Vua6t75z5D3lanwbAeiHzYrA1MeDIFlfXHs/kiHT2KTpr6stZZEEVPOEwb628AnkHAZTg==";
       };
     };
-    "@aws-sdk/util-format-url-3.54.0" = {
+    "@aws-sdk/util-format-url-3.55.0" = {
       name = "_at_aws-sdk_slash_util-format-url";
       packageName = "@aws-sdk/util-format-url";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.54.0.tgz";
-        sha512 = "nnrXT0dQc+eRWJPgkqDK91NEluTFU9Tqs/LhIlIq+6Z8BELTN24lCi9feUKtw1s3a5ucUSs2unYyfHnl35PeeQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.55.0.tgz";
+        sha512 = "xSVunSEiTPzemeEtyR8lIc027LsMKtwmC3j9QDV6oGMEZjarfrVB7SsxgVklTQvm4lPICEpmajMxR9Z0vSxYQg==";
       };
     };
-    "@aws-sdk/util-hex-encoding-3.52.0" = {
+    "@aws-sdk/util-hex-encoding-3.55.0" = {
       name = "_at_aws-sdk_slash_util-hex-encoding";
       packageName = "@aws-sdk/util-hex-encoding";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.52.0.tgz";
-        sha512 = "YYMZg8odn/hBURgL/w82ay2mvPqXHMdujlSndT1ddUSTRoZX67N3hfYYf36nOalDOjNcanIvFHe4Fe8nw+8JiA==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.55.0.tgz";
+        sha512 = "zbDWNzIyqN2Po7SIo1ZDL4rQMP3R0TzGcCrm01bpQAb+2fWqUPigolvNZXXtMO6eS7EW3ZJJzkfoWHdH8zDz1A==";
       };
     };
-    "@aws-sdk/util-locate-window-3.52.0" = {
+    "@aws-sdk/util-locate-window-3.55.0" = {
       name = "_at_aws-sdk_slash_util-locate-window";
       packageName = "@aws-sdk/util-locate-window";
-      version = "3.52.0";
+      version = "3.55.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.55.0.tgz";
+        sha512 = "0sPmK2JaJE2BbTcnvybzob/VrFKCXKfN4CUKcvn0yGg/me7Bz+vtzQRB3Xp+YSx+7OtWxzv63wsvHoAnXvgxgg==";
+      };
+    };
+    "@aws-sdk/util-middleware-3.55.0" = {
+      name = "_at_aws-sdk_slash_util-middleware";
+      packageName = "@aws-sdk/util-middleware";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.52.0.tgz";
-        sha512 = "l10U2cLko6070A9DYLJG4NMtwYH8JBG2J/E+RH8uY3lad2o6fGEIkJU0jQbWbUeHYLG3IWuCxT47V4gxYrFj7g==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.55.0.tgz";
+        sha512 = "82fW2XV+rUalv8lkd4VlhpPp6xnXO5n9sckMp1N+TrQ+p8eqxqT0+o8n1/6s9Qsnkw64Y3m6+EfCdc8/uFOY2g==";
       };
     };
-    "@aws-sdk/util-stream-browser-3.54.0" = {
+    "@aws-sdk/util-stream-browser-3.55.0" = {
       name = "_at_aws-sdk_slash_util-stream-browser";
       packageName = "@aws-sdk/util-stream-browser";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.54.0.tgz";
-        sha512 = "KVBRQcTie9Q231pdbO4gzGxHG8wNomGic3bHDnwfVdE+tq1Pbi8xNgUelmmd/uZvgMf8awuNN8OHzkex06HAHQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.55.0.tgz";
+        sha512 = "3f/zQsAqexJpKssCL0adTjG8WO+NPQ63E3TingyKpnCnHQPEnqPdya5I5OLGzZ0WR0iUWRtpuW0MtuDabyLDWw==";
       };
     };
-    "@aws-sdk/util-stream-node-3.54.0" = {
+    "@aws-sdk/util-stream-node-3.55.0" = {
       name = "_at_aws-sdk_slash_util-stream-node";
       packageName = "@aws-sdk/util-stream-node";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.54.0.tgz";
-        sha512 = "h3kpLMYzGgPkCIq0sLlE70zAt75C6wcbZm4gPh5iN8KRmmhpktqKpBami9J5fY6cBPC5ZlEmv5iDdZrI90Imrw==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.55.0.tgz";
+        sha512 = "brCK3iENvXEL7BK5eDAdkZ2VuBSvXj7DH9EQezxl4Ntrj1lvb+McOk9WoU/o7yzE7A/bzEJEoNQAPi+VPNbb/w==";
       };
     };
-    "@aws-sdk/util-uri-escape-3.52.0" = {
+    "@aws-sdk/util-uri-escape-3.55.0" = {
       name = "_at_aws-sdk_slash_util-uri-escape";
       packageName = "@aws-sdk/util-uri-escape";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.52.0.tgz";
-        sha512 = "W9zw5tE8syjg17jiCYtyF99F0FgDIekQdLg+tQGobw9EtCxlUdg48UYhifPfnjvVyADRX2ntclHF9NmhusOQaQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.55.0.tgz";
+        sha512 = "mmdDLUpFCN2nkfwlLdOM54lTD528GiGSPN1qb8XtGLgZsJUmg3uJSFIN2lPeSbEwJB3NFjVas/rnQC48i7mV8w==";
       };
     };
-    "@aws-sdk/util-user-agent-browser-3.54.0" = {
+    "@aws-sdk/util-user-agent-browser-3.55.0" = {
       name = "_at_aws-sdk_slash_util-user-agent-browser";
       packageName = "@aws-sdk/util-user-agent-browser";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.54.0.tgz";
-        sha512 = "pU5KL1Nnlc1igeED2R44k9GEIxlLBhwmUGIw8/Emfm8xAlGOX4NsVSfHK9EpJQth0z5ZJ4Lni6S5+nW4V16yLw==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.55.0.tgz";
+        sha512 = "E+8PluqbdOKfdJc9E4k0vy4PPb9wvAMa2Zdm5ycoaY0IXRI9RjQJnRw5JKAAJWLuOy7Lb83LgoowGW3o+4AuKw==";
       };
     };
-    "@aws-sdk/util-user-agent-node-3.54.0" = {
+    "@aws-sdk/util-user-agent-node-3.56.0" = {
       name = "_at_aws-sdk_slash_util-user-agent-node";
       packageName = "@aws-sdk/util-user-agent-node";
-      version = "3.54.0";
+      version = "3.56.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.54.0.tgz";
-        sha512 = "euKoYk1TfyV9XlJyAlGWdYqhQ5B4COwBxsV9OpwiAINUFm91NSv6uavFC/ZZQBXRks6j9pHDAXeXu7bHVolvlA==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.56.0.tgz";
+        sha512 = "jpWDpEG2M06jqGtk/Jz9Iu94lBI8tdP7r2ctq2ptki9wYNmmWKdIXlS/W0g2UFx3qa9G9W67QI1efSTh2B0nfA==";
       };
     };
-    "@aws-sdk/util-utf8-browser-3.52.0" = {
+    "@aws-sdk/util-utf8-browser-3.55.0" = {
       name = "_at_aws-sdk_slash_util-utf8-browser";
       packageName = "@aws-sdk/util-utf8-browser";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.52.0.tgz";
-        sha512 = "LuOMa9ajWu5fQuYkmvTlQZfHaITkSle+tM/vhbU4JquRN44VUKACjRGT7UEhoU3lCL1BD0JFGMQGHI+5Mmuwfg==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.55.0.tgz";
+        sha512 = "ljzqJcyjfJpEVSIAxwtIS8xMRUly84BdjlBXyp6cu4G8TUufgjNS31LWdhyGhgmW5vYBNr+LTz0Kwf6J+ou7Ug==";
       };
     };
-    "@aws-sdk/util-utf8-node-3.52.0" = {
+    "@aws-sdk/util-utf8-node-3.55.0" = {
       name = "_at_aws-sdk_slash_util-utf8-node";
       packageName = "@aws-sdk/util-utf8-node";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.52.0.tgz";
-        sha512 = "fujr7zeobZ2y5nnOnQZrCPPc+lCAhtNF/LEVslsQfd+AQ0bYWiosrKNetodQVWlfh10E2+i6/5g+1SBJ5kjsLw==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.55.0.tgz";
+        sha512 = "FsFm7GFaC7j0tlPEm/ri8bU2QCwFW5WKjxUg8lm1oWaxplCpKGUsmcfPJ4sw58GIoyoGu4QXBK60oCWosZYYdQ==";
       };
     };
-    "@aws-sdk/util-waiter-3.54.0" = {
+    "@aws-sdk/util-waiter-3.55.0" = {
       name = "_at_aws-sdk_slash_util-waiter";
       packageName = "@aws-sdk/util-waiter";
-      version = "3.54.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.54.0.tgz";
-        sha512 = "+Gz5R14jWKsQtMCWbzWJe2Ac/CdMV/h5/R8uEZmwM3f6MHICPOftMQd0uDLdGezSBV9PuU3PCwiBZBTFzNSYBg==";
+        url = "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.55.0.tgz";
+        sha512 = "Do34MKPFSC/+zVN6vY+FZ+0WN61hzga4nPoAC590AOjs8rW6/H6sDN6Gz1KAZbPnuQUZfvsIJjMxN7lblXHJkQ==";
       };
     };
-    "@aws-sdk/xml-builder-3.52.0" = {
+    "@aws-sdk/xml-builder-3.55.0" = {
       name = "_at_aws-sdk_slash_xml-builder";
       packageName = "@aws-sdk/xml-builder";
-      version = "3.52.0";
+      version = "3.55.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.52.0.tgz";
-        sha512 = "GMdcxdwDZuIMlGnewdB48bpj8eqA3nubs3biy6vRFX8zhv8OqD+m5fMinoEwD8/MGqWE3WD7VZlbbdwYtNVWzQ==";
+        url = "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.55.0.tgz";
+        sha512 = "BH+i5S2FLprmfSeIuGy3UbNtEoJPVjh8arl5+LV3i2KY/+TmrS4yT8JtztDlDxHF0cMtNLZNO0KEPtsACS6SOg==";
       };
     };
     "@azu/format-text-1.0.1" = {
@@ -1192,22 +1201,22 @@ let
         sha512 = "iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==";
       };
     };
-    "@babel/compat-data-7.17.0" = {
+    "@babel/compat-data-7.17.7" = {
       name = "_at_babel_slash_compat-data";
       packageName = "@babel/compat-data";
-      version = "7.17.0";
+      version = "7.17.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.0.tgz";
-        sha512 = "392byTlpGWXMv4FbyWw3sAZ/FrW/DrwqLGXpy0mbyNe9Taqv1mg9yON5/o0cnr8XYCkFTZbC1eV+c+LAROgrng==";
+        url = "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz";
+        sha512 = "p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==";
       };
     };
-    "@babel/core-7.17.5" = {
+    "@babel/core-7.17.8" = {
       name = "_at_babel_slash_core";
       packageName = "@babel/core";
-      version = "7.17.5";
+      version = "7.17.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/core/-/core-7.17.5.tgz";
-        sha512 = "/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA==";
+        url = "https://registry.npmjs.org/@babel/core/-/core-7.17.8.tgz";
+        sha512 = "OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==";
       };
     };
     "@babel/core-7.9.0" = {
@@ -1219,13 +1228,13 @@ let
         sha512 = "kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==";
       };
     };
-    "@babel/generator-7.17.3" = {
+    "@babel/generator-7.17.7" = {
       name = "_at_babel_slash_generator";
       packageName = "@babel/generator";
-      version = "7.17.3";
+      version = "7.17.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.17.3.tgz";
-        sha512 = "+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg==";
+        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz";
+        sha512 = "oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==";
       };
     };
     "@babel/helper-annotate-as-pure-7.16.7" = {
@@ -1246,13 +1255,13 @@ let
         sha512 = "C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==";
       };
     };
-    "@babel/helper-compilation-targets-7.16.7" = {
+    "@babel/helper-compilation-targets-7.17.7" = {
       name = "_at_babel_slash_helper-compilation-targets";
       packageName = "@babel/helper-compilation-targets";
-      version = "7.16.7";
+      version = "7.17.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz";
-        sha512 = "mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA==";
+        url = "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz";
+        sha512 = "UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==";
       };
     };
     "@babel/helper-create-class-features-plugin-7.17.6" = {
@@ -1327,13 +1336,13 @@ let
         sha512 = "m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==";
       };
     };
-    "@babel/helper-member-expression-to-functions-7.16.7" = {
+    "@babel/helper-member-expression-to-functions-7.17.7" = {
       name = "_at_babel_slash_helper-member-expression-to-functions";
       packageName = "@babel/helper-member-expression-to-functions";
-      version = "7.16.7";
+      version = "7.17.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.7.tgz";
-        sha512 = "VtJ/65tYiU/6AbMTDwyoXGPKHgTsfRarivm+YbB5uAzKUyuPjgZSgAFeG87FCigc7KNHu2Pegh1XIT3lXjvz3Q==";
+        url = "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz";
+        sha512 = "thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==";
       };
     };
     "@babel/helper-module-imports-7.16.7" = {
@@ -1345,13 +1354,13 @@ let
         sha512 = "LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==";
       };
     };
-    "@babel/helper-module-transforms-7.17.6" = {
+    "@babel/helper-module-transforms-7.17.7" = {
       name = "_at_babel_slash_helper-module-transforms";
       packageName = "@babel/helper-module-transforms";
-      version = "7.17.6";
+      version = "7.17.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.6.tgz";
-        sha512 = "2ULmRdqoOMpdvkbT8jONrZML/XALfzxlb052bldftkicAUy8AxSCkD5trDPQcwHNmolcl7wP6ehNqMlyUw6AaA==";
+        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz";
+        sha512 = "VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==";
       };
     };
     "@babel/helper-optimise-call-expression-7.16.7" = {
@@ -1390,13 +1399,13 @@ let
         sha512 = "y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw==";
       };
     };
-    "@babel/helper-simple-access-7.16.7" = {
+    "@babel/helper-simple-access-7.17.7" = {
       name = "_at_babel_slash_helper-simple-access";
       packageName = "@babel/helper-simple-access";
-      version = "7.16.7";
+      version = "7.17.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz";
-        sha512 = "ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g==";
+        url = "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz";
+        sha512 = "txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==";
       };
     };
     "@babel/helper-skip-transparent-expression-wrappers-7.16.0" = {
@@ -1444,13 +1453,13 @@ let
         sha512 = "8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==";
       };
     };
-    "@babel/helpers-7.17.2" = {
+    "@babel/helpers-7.17.8" = {
       name = "_at_babel_slash_helpers";
       packageName = "@babel/helpers";
-      version = "7.17.2";
+      version = "7.17.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.2.tgz";
-        sha512 = "0Qu7RLR1dILozr/6M0xgj+DFPmi6Bnulgm9M8BVa9ZCWxDqlSnqt3cf8IDPB5m45sVXUZ0kuQAgUrdSFFH79fQ==";
+        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.8.tgz";
+        sha512 = "QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==";
       };
     };
     "@babel/highlight-7.16.10" = {
@@ -1480,13 +1489,13 @@ let
         sha512 = "RUVpT0G2h6rOZwqLDTrKk7ksNv7YpAilTnYe1/Q+eDjxEceRMKVWbCsX7t8h6C1qCFi/1Y8WZjcEPBAFG27GPw==";
       };
     };
-    "@babel/parser-7.17.3" = {
+    "@babel/parser-7.17.8" = {
       name = "_at_babel_slash_parser";
       packageName = "@babel/parser";
-      version = "7.17.3";
+      version = "7.17.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz";
-        sha512 = "7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==";
+        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz";
+        sha512 = "BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==";
       };
     };
     "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7" = {
@@ -1894,13 +1903,13 @@ let
         sha512 = "gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==";
       };
     };
-    "@babel/plugin-transform-destructuring-7.17.3" = {
+    "@babel/plugin-transform-destructuring-7.17.7" = {
       name = "_at_babel_slash_plugin-transform-destructuring";
       packageName = "@babel/plugin-transform-destructuring";
-      version = "7.17.3";
+      version = "7.17.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.17.3.tgz";
-        sha512 = "dDFzegDYKlPqa72xIlbmSkly5MluLoaC1JswABGktyt6NTXSBcUuse/kWE/wvKFWJHPETpi158qJZFS3JmykJg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.17.7.tgz";
+        sha512 = "XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ==";
       };
     };
     "@babel/plugin-transform-dotall-regex-7.16.7" = {
@@ -1984,22 +1993,22 @@ let
         sha512 = "KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g==";
       };
     };
-    "@babel/plugin-transform-modules-commonjs-7.16.8" = {
+    "@babel/plugin-transform-modules-commonjs-7.17.7" = {
       name = "_at_babel_slash_plugin-transform-modules-commonjs";
       packageName = "@babel/plugin-transform-modules-commonjs";
-      version = "7.16.8";
+      version = "7.17.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.8.tgz";
-        sha512 = "oflKPvsLT2+uKQopesJt3ApiaIS2HW+hzHFcwRNtyDGieAeC/dIHZX8buJQ2J2X1rxGPy4eRcUijm3qcSPjYcA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.17.7.tgz";
+        sha512 = "ITPmR2V7MqioMJyrxUo2onHNC3e+MvfFiFIR0RP21d3PtlVb6sfzoxNKiphSZUOM9hEIdzCcZe83ieX3yoqjUA==";
       };
     };
-    "@babel/plugin-transform-modules-systemjs-7.16.7" = {
+    "@babel/plugin-transform-modules-systemjs-7.17.8" = {
       name = "_at_babel_slash_plugin-transform-modules-systemjs";
       packageName = "@babel/plugin-transform-modules-systemjs";
-      version = "7.16.7";
+      version = "7.17.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.7.tgz";
-        sha512 = "DuK5E3k+QQmnOqBR9UkusByy5WZWGRxfzV529s9nPra1GE7olmxfqO2FHobEOYSPIjPBTr4p66YDcjQnt8cBmw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.17.8.tgz";
+        sha512 = "39reIkMTUVagzgA5x88zDYXPCMT6lcaRKs1+S9K6NKBPErbgO/w/kP8GlNQTC87b412ZTlmNgr3k2JrWgHH+Bw==";
       };
     };
     "@babel/plugin-transform-modules-umd-7.16.7" = {
@@ -2254,13 +2263,13 @@ let
         sha512 = "WbVEmgXdIyvzB77AQjGBEyYPZx+8tTsO50XtfozQrkW8QB2rLJpH2lgx0TRw5EJrBxOZQ+wCcyPVQvS8tjEHpQ==";
       };
     };
-    "@babel/register-7.17.0" = {
+    "@babel/register-7.17.7" = {
       name = "_at_babel_slash_register";
       packageName = "@babel/register";
-      version = "7.17.0";
+      version = "7.17.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/register/-/register-7.17.0.tgz";
-        sha512 = "UNZsMAZ7uKoGHo1HlEXfteEOYssf64n/PNLHGqOKq/bgYcu/4LrQWAHJwSCb3BRZK8Hi5gkJdRcwrGTO2wtRCg==";
+        url = "https://registry.npmjs.org/@babel/register/-/register-7.17.7.tgz";
+        sha512 = "fg56SwvXRifootQEDQAu1mKdjh5uthPzdO0N6t358FktfL4XjAVXuH58ULoiW8mesxiOgNIrxiImqEwv0+hRRA==";
       };
     };
     "@babel/runtime-7.13.9" = {
@@ -2272,13 +2281,13 @@ let
         sha512 = "aY2kU+xgJ3dJ1eU6FMB9EH8dIe8dmusF1xEku52joLvw6eAFN0AI+WxCLDnpev2LEejWBAy2sBvBOBAjI3zmvA==";
       };
     };
-    "@babel/runtime-7.17.2" = {
+    "@babel/runtime-7.17.8" = {
       name = "_at_babel_slash_runtime";
       packageName = "@babel/runtime";
-      version = "7.17.2";
+      version = "7.17.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.2.tgz";
-        sha512 = "hzeyJyMA1YGdJTuWU0e/j4wKXrU4OMFvY2MSlaI9B7VQb0r5cxTE3EAIS2Q7Tn2RIcDkRvTA/v2JsAEhxe99uw==";
+        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.8.tgz";
+        sha512 = "dQpEpK0O9o6lj6oPu0gRDbbnk+4LeHlNcBpspf6Olzt3GIX4P1lWF1gS+pHLDFlaJvbR6q7jCfQ08zA4QJBnmA==";
       };
     };
     "@babel/runtime-7.9.0" = {
@@ -2290,13 +2299,13 @@ let
         sha512 = "cTIudHnzuWLS56ik4DnRnqqNf8MkdUzV4iFFI1h7Jo9xvrpQROYaAnaSd2mHLQAzzZAPfATynX5ord6YlNYNMA==";
       };
     };
-    "@babel/runtime-corejs3-7.17.2" = {
+    "@babel/runtime-corejs3-7.17.8" = {
       name = "_at_babel_slash_runtime-corejs3";
       packageName = "@babel/runtime-corejs3";
-      version = "7.17.2";
+      version = "7.17.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.17.2.tgz";
-        sha512 = "NcKtr2epxfIrNM4VOmPKO46TvDMCBhgi2CrSHaEarrz+Plk2K5r9QemmOFTGpZaoKnWoGH5MO+CzeRsih/Fcgg==";
+        url = "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.17.8.tgz";
+        sha512 = "ZbYSUvoSF6dXZmMl/CYTMOvzIFnbGfv4W3SEHYgMvNsFTeLaF2gkGAF4K2ddmtSK4Emej+0aYcnSC6N5dPCXUQ==";
       };
     };
     "@babel/template-7.16.7" = {
@@ -2335,31 +2344,31 @@ let
         sha512 = "TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==";
       };
     };
-    "@blueprintjs/colors-4.0.0-rc.0" = {
+    "@blueprintjs/colors-4.0.1" = {
       name = "_at_blueprintjs_slash_colors";
       packageName = "@blueprintjs/colors";
-      version = "4.0.0-rc.0";
+      version = "4.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@blueprintjs/colors/-/colors-4.0.0-rc.0.tgz";
-        sha512 = "+Iw5LUa9MtbEGtm09eAtGyalVS7n8wM1/nUmFl0CCq176wqRzS0/VyCo0qdweZqzypEtHnXaFNmr+Cgt4Ge1kQ==";
+        url = "https://registry.npmjs.org/@blueprintjs/colors/-/colors-4.0.1.tgz";
+        sha512 = "w2kMtUzQjHdrmjXpUnCfTq7/pc41S4UnXzOp6+AZtzCR4cVG1r2yBWR4XxaAAecDb94/yIBXooqtMD0B8T1Y2w==";
       };
     };
-    "@blueprintjs/core-3.53.0" = {
+    "@blueprintjs/core-3.54.0" = {
       name = "_at_blueprintjs_slash_core";
       packageName = "@blueprintjs/core";
-      version = "3.53.0";
+      version = "3.54.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@blueprintjs/core/-/core-3.53.0.tgz";
-        sha512 = "cvoJJtnPrBgaVvWhfHoFi/zH+Bk4VPDqbG4DdBl+BPK5MyvvkcBP/oX/iVG1qgwdvQ9FqUsHpuCLLgF6j8bItA==";
+        url = "https://registry.npmjs.org/@blueprintjs/core/-/core-3.54.0.tgz";
+        sha512 = "u2c1s6MNn0ocxhnC6CuiG5g3KV6b4cKUvSobznepA9SC3/AL1s3XOvT7DLWoHRv2B/vBOHFYEDzLw2/vlcGGZg==";
       };
     };
-    "@blueprintjs/icons-3.32.0" = {
+    "@blueprintjs/icons-3.33.0" = {
       name = "_at_blueprintjs_slash_icons";
       packageName = "@blueprintjs/icons";
-      version = "3.32.0";
+      version = "3.33.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@blueprintjs/icons/-/icons-3.32.0.tgz";
-        sha512 = "xjw9Xz39VibgVI3fPfcjgtyk1EcICajkVTGA88fKFUsys/g1NvN3zJ/sUd6cROOL0YDaoNeuvMp7KFgs2AkXDw==";
+        url = "https://registry.npmjs.org/@blueprintjs/icons/-/icons-3.33.0.tgz";
+        sha512 = "Q6qoSDIm0kRYQZISm59UUcDCpV3oeHulkLuh3bSlw0HhcSjvEQh2PSYbtaifM60Q4aK4PCd6bwJHg7lvF1x5fQ==";
       };
     };
     "@bmewburn/js-beautify-1.13.0" = {
@@ -2443,13 +2452,13 @@ let
         sha512 = "06sfpBTn3+PqiU/XP3RQ6FO6M+GxzmHo6yIJk9r5x1QmIlitDE9tdogXqmAVVHB4nGRL/v7SXefcrOHrOkl1YQ==";
       };
     };
-    "@chemzqm/neovim-5.7.5" = {
+    "@chemzqm/neovim-5.7.7" = {
       name = "_at_chemzqm_slash_neovim";
       packageName = "@chemzqm/neovim";
-      version = "5.7.5";
+      version = "5.7.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@chemzqm/neovim/-/neovim-5.7.5.tgz";
-        sha512 = "BlwPjCDjeSdwIk7vP3wU6kFI+ZJBji8j5QWy631r+aQM1t74AclUOWNQZT8/GX3y2hqmC9LZnFT/bTQtVxw24g==";
+        url = "https://registry.npmjs.org/@chemzqm/neovim/-/neovim-5.7.7.tgz";
+        sha512 = "d9Bu5WA3fTEZw40EfEAkpevoE0HiPEwUAIYw4hfsGwwmcagMJzpx47h3EkH/r0I3qfXeDWEZ353fx9bc1qvYcA==";
       };
     };
     "@chinachu/aribts-1.3.5-mirakurun.17" = {
@@ -2542,13 +2551,13 @@ let
         sha512 = "fNINQ3X2ZqsCkNB3Z0Z8ElmhewqrS3gy2wgBTx97BkcjOWiyPAGwDJ752hwrsUnWAVBRztgw826n37xPzxsOgg==";
       };
     };
-    "@commitlint/load-16.2.1" = {
+    "@commitlint/load-16.2.3" = {
       name = "_at_commitlint_slash_load";
       packageName = "@commitlint/load";
-      version = "16.2.1";
+      version = "16.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@commitlint/load/-/load-16.2.1.tgz";
-        sha512 = "oSpz0jTyVI/A1AIImxJINTLDOMB8YF7lWGm+Jg5wVWM0r7ucpuhyViVvpSRTgvL0z09oIxlctyFGWUQQpI42uw==";
+        url = "https://registry.npmjs.org/@commitlint/load/-/load-16.2.3.tgz";
+        sha512 = "Hb4OUlMnBUK6UxJEZ/VJ5k0LocIS7PtEMbRXEAA7eSpOgORIFexC4K/RaRpVd5UTtu3M0ST3ddPPijF9rdW6nw==";
       };
     };
     "@commitlint/message-16.2.1" = {
@@ -2641,31 +2650,31 @@ let
         sha512 = "do5jDoX9oCR/dGHE4POVQ3PYDCmQ2Fow4CA72UL4WoE8zUImA/0lChczjfl+ucNjE4sXFWUnzoO6j4WzrUvLnw==";
       };
     };
-    "@cspell/cspell-bundled-dicts-5.18.5" = {
+    "@cspell/cspell-bundled-dicts-5.19.3" = {
       name = "_at_cspell_slash_cspell-bundled-dicts";
       packageName = "@cspell/cspell-bundled-dicts";
-      version = "5.18.5";
+      version = "5.19.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-5.18.5.tgz";
-        sha512 = "jFvwF8bb8HUYqMUPQiGZUHAf8zfriZRagzoCW8w4NLLJB1IZNGlQvQCQskQG9cYtOmKAYHCbOwm8SjA9FKwQow==";
+        url = "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-5.19.3.tgz";
+        sha512 = "YAz68AgXTFFtrBUhNJlOQ7KOjUE6ncYt578/esa2GStMJHgJoUtPnOZsE41hh+cVWXqO5yRRI+Qkwub99zLMgQ==";
       };
     };
-    "@cspell/cspell-pipe-5.18.5" = {
+    "@cspell/cspell-pipe-5.19.3" = {
       name = "_at_cspell_slash_cspell-pipe";
       packageName = "@cspell/cspell-pipe";
-      version = "5.18.5";
+      version = "5.19.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-5.18.5.tgz";
-        sha512 = "U/4e4Zm7Mm23SuJu6b49+9Do/2aS+c9sPQa1Z9ZZqHQ4BqswJagk5oZ0V45BjYJ/0acHSRpIxbndpVJ01cjf8A==";
+        url = "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-5.19.3.tgz";
+        sha512 = "3RKntgGRxYYzoxoH3VBPvnNMYkHKPq0U+U7qogcWxDkgAUgKXlBP0oc2mw96grJQ4HIzOL1vBnaVAWAqteY9Kw==";
       };
     };
-    "@cspell/cspell-types-5.18.5" = {
+    "@cspell/cspell-types-5.19.3" = {
       name = "_at_cspell_slash_cspell-types";
       packageName = "@cspell/cspell-types";
-      version = "5.18.5";
+      version = "5.19.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-5.18.5.tgz";
-        sha512 = "yvDFCUa1CbjBuMkFCh+yUAAaG6VW5WXoewzLwhMFsMV1GZmkbftOcvZq0YuZviNsjdBViDH0dhKdlzwC953upg==";
+        url = "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-5.19.3.tgz";
+        sha512 = "tub7PW/I6qB6o+ZtlahAZjm5O5cnzj88HRiC8nAbJFpa7q0mrdpFMYhd7ksWtyFLlNbuDkCsfzXGamAhIQnnIw==";
       };
     };
     "@cspell/dict-ada-2.0.0" = {
@@ -2695,13 +2704,13 @@ let
         sha512 = "pBx3T/5w7fPF8XD5cx3NwtRFvNpQYmYqzM043NKP2hDmlx4uFwbH599Lvt5mwCMZKfIoRXaNUQvq7se2gstQjw==";
       };
     };
-    "@cspell/dict-companies-2.0.2" = {
+    "@cspell/dict-companies-2.0.3" = {
       name = "_at_cspell_slash_dict-companies";
       packageName = "@cspell/dict-companies";
-      version = "2.0.2";
+      version = "2.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/dict-companies/-/dict-companies-2.0.2.tgz";
-        sha512 = "LPKwBMAWRz+p1R8q+TV6E1sGOOTvxJOaJeXNN++CZQ7i6JMn5Rf+BSxagwkeK6z3o9vIC5ZE4AcQ5BMkvyjqGw==";
+        url = "https://registry.npmjs.org/@cspell/dict-companies/-/dict-companies-2.0.3.tgz";
+        sha512 = "O622rMAaHm85AmqNyMki5je8HB/1XlTKbGOXh2UUhooI5qdgdfrjTQ6VBuHwHrfEfuODBHYTNYXVB2m23XqHCg==";
       };
     };
     "@cspell/dict-cpp-2.0.0" = {
@@ -2758,13 +2767,13 @@ let
         sha512 = "GkJdJv6cmzrKcmq2/oxTXjKF5uv71r4eTqnFmgPbNBW1t+G4VYpzOf0QrVQrhx2RC4DdW5XfcTf+iS0FxHOTmw==";
       };
     };
-    "@cspell/dict-dotnet-2.0.0" = {
+    "@cspell/dict-dotnet-2.0.1" = {
       name = "_at_cspell_slash_dict-dotnet";
       packageName = "@cspell/dict-dotnet";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/dict-dotnet/-/dict-dotnet-2.0.0.tgz";
-        sha512 = "WOHfjwMuLbo76khDsDa1lJvP/dXcwXVwonWwfUFRt82BL/GtyMalh1HEtCWwKDuK/9f8PCEt/EZMkHT3D5ZV3w==";
+        url = "https://registry.npmjs.org/@cspell/dict-dotnet/-/dict-dotnet-2.0.1.tgz";
+        sha512 = "b1n4crJRW0WZVf9Gp/52j/tDtjYiZ3N81fIyfqPlBrjsh/5AivfA697DYwQ2mr8ngNX7RsqRtYNQjealA1rEnQ==";
       };
     };
     "@cspell/dict-elixir-2.0.1" = {
@@ -2785,13 +2794,13 @@ let
         sha512 = "tKSSUf9BJEV+GJQAYGw5e+ouhEe2ZXE620S7BLKe3ZmpnjlNG9JqlnaBhkIMxKnNFkLY2BP/EARzw31AZnOv4g==";
       };
     };
-    "@cspell/dict-en_us-2.1.7" = {
+    "@cspell/dict-en_us-2.2.0" = {
       name = "_at_cspell_slash_dict-en_us";
       packageName = "@cspell/dict-en_us";
-      version = "2.1.7";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/dict-en_us/-/dict-en_us-2.1.7.tgz";
-        sha512 = "7IeAHZjXiWSIKFx/3CIlY6misvg2KyJ2KO3tSVSKuAlC3UXHGVOcbcY0kQ95IJeKbB6Ot6aW/Aaw73Nzhuurrg==";
+        url = "https://registry.npmjs.org/@cspell/dict-en_us/-/dict-en_us-2.2.0.tgz";
+        sha512 = "IJWu8MI2NdLyPzekrMi9K+v71b0qjDE+z/BccoMA/APnphqgSNM8BDUAzhio6mPKi1AvPRCNUjk79oiUfp+1Gw==";
       };
     };
     "@cspell/dict-filetypes-2.0.1" = {
@@ -2839,13 +2848,13 @@ let
         sha512 = "cjX1Br+gSWqtcmJD/IMHz1UoP3pUaKIIKy/JfhEs7ANtRt6hhfEKe9dl2kQzDkkKt4pXol+YgdYxL/sVc/nLgQ==";
       };
     };
-    "@cspell/dict-html-3.0.0" = {
+    "@cspell/dict-html-3.0.1" = {
       name = "_at_cspell_slash_dict-html";
       packageName = "@cspell/dict-html";
-      version = "3.0.0";
+      version = "3.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/dict-html/-/dict-html-3.0.0.tgz";
-        sha512 = "VzZs/UtyRe4spdaH5SWakik+K3vB2fTyW3kdgGQbzjPGHyb5OXI5fmxQcX0yaSv5RkL0igVROHhu2ARUudoTpw==";
+        url = "https://registry.npmjs.org/@cspell/dict-html/-/dict-html-3.0.1.tgz";
+        sha512 = "sbuFd+nSjgbrGf5eYwSddFhm1eLLePKWyH6Zn8Zb0OODrBK5e4vGn1/scI/MOH5a2IvNs8W9wp84uMBFJcQZtw==";
       };
     };
     "@cspell/dict-html-symbol-entities-2.0.0" = {
@@ -2902,13 +2911,13 @@ let
         sha512 = "tPPl3liJORa/l6AoYqh/7rjoM7bdtaIXnIN6ox7CE0flZcBS5rWOB6mzEY3rpu/XJX0pjbBiIoqrolDkVl1RTQ==";
       };
     };
-    "@cspell/dict-npm-2.0.1" = {
+    "@cspell/dict-npm-2.0.2" = {
       name = "_at_cspell_slash_dict-npm";
       packageName = "@cspell/dict-npm";
-      version = "2.0.1";
+      version = "2.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-2.0.1.tgz";
-        sha512 = "LRaJFSQfI0BIbbksPFE6fUjAyRFZRcknfOnYC/5c1wB/vsKH6KsqxTeCWNmHTYrk4KdBLZROhsHJXQIoqVTd4w==";
+        url = "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-2.0.2.tgz";
+        sha512 = "Q5ua0aeKTxW4WxvtU+UMdct46hCStOTeEiiG8iinTh/mH5brmdtMEj4olO8+mmkAKPpIC4TI3TmaaN6RN+Vpgw==";
       };
     };
     "@cspell/dict-php-2.0.0" = {
@@ -2983,13 +2992,13 @@ let
         sha512 = "MUwA2YKpqaQOSR4V1/CVGRNk8Ii5kf6I8Ch+4/BhRZRQXuwWbi21rDRYWPqdQWps7VNzAbbMA+PQDWsD5YY38g==";
       };
     };
-    "@cspell/dict-software-terms-2.1.3" = {
+    "@cspell/dict-software-terms-2.1.4" = {
       name = "_at_cspell_slash_dict-software-terms";
       packageName = "@cspell/dict-software-terms";
-      version = "2.1.3";
+      version = "2.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-2.1.3.tgz";
-        sha512 = "JmMfRa9Xl0MCD/z5gYUnY05BNxSMnx25Ky6kO/Cs0gBYZZdYzHZNqrbfnqBMsB9PpOzn2uqrYUmAEusoI1WyMQ==";
+        url = "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-2.1.4.tgz";
+        sha512 = "MB2eT9qhbnIEJajGv+ndzzi6S8NCJ9cMyeGJYMoRAiJobTKP6xPrT37VjPzhckRtrHJGG//UgtQ4NsiK5aBITw==";
       };
     };
     "@cspell/dict-swift-1.0.2" = {
@@ -3100,13 +3109,13 @@ let
         sha512 = "hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==";
       };
     };
-    "@deltachat/message_parser_wasm-0.1.0" = {
+    "@deltachat/message_parser_wasm-0.3.0" = {
       name = "_at_deltachat_slash_message_parser_wasm";
       packageName = "@deltachat/message_parser_wasm";
-      version = "0.1.0";
+      version = "0.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@deltachat/message_parser_wasm/-/message_parser_wasm-0.1.0.tgz";
-        sha512 = "Tp3kWY9rp73omU8afIm3Vijydg+WFrrbsbmlKNXPg4Ao3PDSHuY76zKzDuX22QxdW0KlXi/RaHQ1++zJm8+DBg==";
+        url = "https://registry.npmjs.org/@deltachat/message_parser_wasm/-/message_parser_wasm-0.3.0.tgz";
+        sha512 = "qMa6iZ5o8NoN3AE7orF71sL/FC9aqj0weP7X7dU1IwGsaWKSy1Ix1Pup5sw55HHlcfR1v61VXxnfHEmpQioydA==";
       };
     };
     "@devicefarmer/adbkit-2.11.3" = {
@@ -3307,13 +3316,13 @@ let
         sha512 = "CE5zjnyfmHlapwQSJ54kUeTNsvhx/7HAjvfMXpE689LxlFnr0VhiTxuc5kwEetPcxsXhei7IBy/PdJ41v4dswA==";
       };
     };
-    "@electron/get-1.13.1" = {
+    "@electron/get-1.14.1" = {
       name = "_at_electron_slash_get";
       packageName = "@electron/get";
-      version = "1.13.1";
+      version = "1.14.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@electron/get/-/get-1.13.1.tgz";
-        sha512 = "U5vkXDZ9DwXtkPqlB45tfYnnYBN8PePp1z/XDCupnSpdrxT8/ThCv9WCwPLf9oqiSGZTkH6dx2jDUPuoXpjkcA==";
+        url = "https://registry.npmjs.org/@electron/get/-/get-1.14.1.tgz";
+        sha512 = "BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw==";
       };
     };
     "@emmetio/abbreviation-2.2.3" = {
@@ -3352,22 +3361,22 @@ let
         sha512 = "8HqW8EVqjnCmWXVpqAOZf+EGESdkR27odcMMMGefgKXtar00SoYNSryGv//TELI4T3QFsECo78p+0lmalk/CFA==";
       };
     };
-    "@emotion/is-prop-valid-0.8.8" = {
+    "@emotion/is-prop-valid-1.1.2" = {
       name = "_at_emotion_slash_is-prop-valid";
       packageName = "@emotion/is-prop-valid";
-      version = "0.8.8";
+      version = "1.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz";
-        sha512 = "u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==";
+        url = "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.1.2.tgz";
+        sha512 = "3QnhqeL+WW88YjYbQL5gUIkthuMw7a0NGbZ7wfFVk2kg/CK5w8w5FFa0RzWjyY1+sujN0NWbtSHH6OJmWHtJpQ==";
       };
     };
-    "@emotion/memoize-0.7.4" = {
+    "@emotion/memoize-0.7.5" = {
       name = "_at_emotion_slash_memoize";
       packageName = "@emotion/memoize";
-      version = "0.7.4";
+      version = "0.7.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz";
-        sha512 = "Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==";
+        url = "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.5.tgz";
+        sha512 = "igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ==";
       };
     };
     "@emotion/stylis-0.8.5" = {
@@ -3406,15 +3415,6 @@ let
         sha512 = "J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==";
       };
     };
-    "@eslint/eslintrc-1.2.0" = {
-      name = "_at_eslint_slash_eslintrc";
-      packageName = "@eslint/eslintrc";
-      version = "1.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.0.tgz";
-        sha512 = "igm9SjJHNEJRiUnecP/1R5T3wKLEJ7pL6e2P+GUSfCd0dGjPYYZve08uzw8L2J8foVHFz+NGu12JxRcU2gGo6w==";
-      };
-    };
     "@eslint/eslintrc-1.2.1" = {
       name = "_at_eslint_slash_eslintrc";
       packageName = "@eslint/eslintrc";
@@ -3613,13 +3613,13 @@ let
         sha512 = "VB8QNJ4Kvt46cy/y+AbBrJViOH2QY+AEfELNZRDifokZg0wPauxQCz/3Dk7qQnjLYsVOszoH7AtgfOdy/5NSjg==";
       };
     };
-    "@expo/xcpretty-4.1.0" = {
+    "@expo/xcpretty-4.1.1" = {
       name = "_at_expo_slash_xcpretty";
       packageName = "@expo/xcpretty";
-      version = "4.1.0";
+      version = "4.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@expo/xcpretty/-/xcpretty-4.1.0.tgz";
-        sha512 = "Q2FCVFpMEeWk2oxEx3nFg2AAwyzPdSAOVWa25f734+qCL9szL7sj20a53q4QH1T52BaGvdLoBaq/cNNCA5SzRg==";
+        url = "https://registry.npmjs.org/@expo/xcpretty/-/xcpretty-4.1.1.tgz";
+        sha512 = "2ssiyKGjgRUn61MSdSQyptV5lq1BtaT1DX80OjnCLvg+tXxIp2MVLZASSNqYqo8gQotghv35EpVrWBmOxMFuoQ==";
       };
     };
     "@fast-csv/format-4.3.5" = {
@@ -3640,13 +3640,13 @@ let
         sha512 = "uRsLYksqpbDmWaSmzvJcuApSEe38+6NQZBUsuAyMZKqHxH0g1wcJgsKUvN3WC8tewaqFjBMMGrkHmC+T7k8LvA==";
       };
     };
-    "@fluentui/date-time-utilities-8.4.0" = {
+    "@fluentui/date-time-utilities-8.5.0" = {
       name = "_at_fluentui_slash_date-time-utilities";
       packageName = "@fluentui/date-time-utilities";
-      version = "8.4.0";
+      version = "8.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/date-time-utilities/-/date-time-utilities-8.4.0.tgz";
-        sha512 = "fEc8JMG0Y21De6kjD5xfP/ix7y3u0zbFTKgNWNASGpIYsZKXbJqeu8/DEqnc4x9Lf5pxiV+WhNcoMLbtjKTpmg==";
+        url = "https://registry.npmjs.org/@fluentui/date-time-utilities/-/date-time-utilities-8.5.0.tgz";
+        sha512 = "SddqPNEA5PBxZLvRY9ej2//iTzNWFqBt9kZ9rjieBlRtFPjztnDV10Zq3xlR6ss79dwkiP+S+SP4SmI2xuckHA==";
       };
     };
     "@fluentui/dom-utilities-2.2.0" = {
@@ -3658,22 +3658,22 @@ let
         sha512 = "M4SmXu428wwQLu1iw6ST07iACjdKY5HiU+xpcgD3IQMMQazgN616GDzc6KZ1ebuBsF7B4TyQS7KZh9mfxnnldg==";
       };
     };
-    "@fluentui/font-icons-mdl2-8.2.4" = {
+    "@fluentui/font-icons-mdl2-8.2.5" = {
       name = "_at_fluentui_slash_font-icons-mdl2";
       packageName = "@fluentui/font-icons-mdl2";
-      version = "8.2.4";
+      version = "8.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/font-icons-mdl2/-/font-icons-mdl2-8.2.4.tgz";
-        sha512 = "Qep23/wpAwONuX0NSQa0D6RbGbEJQBjGMLdV4Qp6h4NKIGELsKJ1xEIa5ZCD68LzQHJsVtXDtOnSWi57Ug/P1A==";
+        url = "https://registry.npmjs.org/@fluentui/font-icons-mdl2/-/font-icons-mdl2-8.2.5.tgz";
+        sha512 = "IgzcoOm+hZMlYJBR1RFb3fner1IxdSLCsnsjkVUtfnwuvGq/zjqEpNgsk5eUG4dHlu3E9dDY86nLqfGJe8R6yw==";
       };
     };
-    "@fluentui/foundation-legacy-8.2.4" = {
+    "@fluentui/foundation-legacy-8.2.5" = {
       name = "_at_fluentui_slash_foundation-legacy";
       packageName = "@fluentui/foundation-legacy";
-      version = "8.2.4";
+      version = "8.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/foundation-legacy/-/foundation-legacy-8.2.4.tgz";
-        sha512 = "3pBUhKxkfJiRmTcTkkv/QvvF4it4hng7xx5GqcOD7WDzCVXUBTdWCbK/41kCOrTV8kfpu7hzJReCwZeBLlymuQ==";
+        url = "https://registry.npmjs.org/@fluentui/foundation-legacy/-/foundation-legacy-8.2.5.tgz";
+        sha512 = "PP8Wbw1QK9lmzReh+C7XG7A7Q3WTXAaxAMHjcBE3m2OPnhlF77Ok6IAJBkuKTWg0SZYQqJilTDSkVDnXVylGgQ==";
       };
     };
     "@fluentui/keyboard-key-0.4.0" = {
@@ -3694,31 +3694,31 @@ let
         sha512 = "+WoaAaoYx/wfkrz1Ag40JqHvDUFfQcg+dQ3jaEOoau16y7EZGIe7oN8WYIXNMgWuMxH7r1QlanFbQZ+ziKjHmw==";
       };
     };
-    "@fluentui/react-8.60.3" = {
+    "@fluentui/react-8.62.3" = {
       name = "_at_fluentui_slash_react";
       packageName = "@fluentui/react";
-      version = "8.60.3";
+      version = "8.62.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/react/-/react-8.60.3.tgz";
-        sha512 = "KLxnvgz1+BvP4csqhShrdAxg7I9GXNcrhESgbEUoR5ILeK6O62/q8ElWWQzKqR9WQ6PKeSp9f2S3Ucdfpc6WiA==";
+        url = "https://registry.npmjs.org/@fluentui/react/-/react-8.62.3.tgz";
+        sha512 = "ENfTetlsI74k4vgJ3574mWSoRv7kcwUMow+7GBFBw3EZcwnkUXPG6FubzuLBbn36X8MjeRSi8pnaR6T73GaBOw==";
       };
     };
-    "@fluentui/react-focus-8.5.4" = {
+    "@fluentui/react-focus-8.5.6" = {
       name = "_at_fluentui_slash_react-focus";
       packageName = "@fluentui/react-focus";
-      version = "8.5.4";
+      version = "8.5.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/react-focus/-/react-focus-8.5.4.tgz";
-        sha512 = "SjCz1IJn1T6a6o6xcaEPd5Hou9B3QbpheHNxKWOJSQHG6wazwnHJRhNyTcgiX5+D1KEbnO757EoyOoxIVsnENQ==";
+        url = "https://registry.npmjs.org/@fluentui/react-focus/-/react-focus-8.5.6.tgz";
+        sha512 = "K4INgXiwlinLz0Msa5TQbhL3YoN1mtqXO3p7XChDKeIf0QepAUDTnmJCrtKXqzY5VuXauLXyqm2darcHFrotVw==";
       };
     };
-    "@fluentui/react-hooks-8.5.2" = {
+    "@fluentui/react-hooks-8.5.3" = {
       name = "_at_fluentui_slash_react-hooks";
       packageName = "@fluentui/react-hooks";
-      version = "8.5.2";
+      version = "8.5.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/react-hooks/-/react-hooks-8.5.2.tgz";
-        sha512 = "YqyLDa/1SbQSrfGQ+nBUvQYJo2wOWGDAhQbdWTwQGjG7jEmRfmScqMY+KJGjM/Gisn6v8CG5d1duSZLmbm0syA==";
+        url = "https://registry.npmjs.org/@fluentui/react-hooks/-/react-hooks-8.5.3.tgz";
+        sha512 = "zWiiEp/vYmKIXhw/bIVH9BnPKLT3zgWt9ryi3Tp1VVgxLEDloomM7RgDn0e2P8HZvynYRRT8GKq3XJ8H3AzAUg==";
       };
     };
     "@fluentui/react-window-provider-2.2.0" = {
@@ -3739,31 +3739,31 @@ let
         sha512 = "bqjpfhqaIkBy16vdYzdc7tER9Td7BTcmC+kCXuqkHOQVuG9LJfqVGRV0DA857KLhOxiy0GXwKMeDbNV5jJf6qQ==";
       };
     };
-    "@fluentui/style-utilities-8.6.4" = {
+    "@fluentui/style-utilities-8.6.5" = {
       name = "_at_fluentui_slash_style-utilities";
       packageName = "@fluentui/style-utilities";
-      version = "8.6.4";
+      version = "8.6.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/style-utilities/-/style-utilities-8.6.4.tgz";
-        sha512 = "jWG5zq7nc37Q6O1LzaoU2U8Ki4Xo5ySm3d5uzefDsEIQpK9E22c1mpUI3hDWwWKILxF3S3dYkHNqbsGH72JYaw==";
+        url = "https://registry.npmjs.org/@fluentui/style-utilities/-/style-utilities-8.6.5.tgz";
+        sha512 = "X0ZIreRdUlnJnRQmKtngWEbrqFuecBlEv9fkKoHJeu+27AD+AU9RPYgK4fd/QCJRFoTU9WzQJj9tWylTBK+kFA==";
       };
     };
-    "@fluentui/theme-2.6.3" = {
+    "@fluentui/theme-2.6.4" = {
       name = "_at_fluentui_slash_theme";
       packageName = "@fluentui/theme";
-      version = "2.6.3";
+      version = "2.6.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/theme/-/theme-2.6.3.tgz";
-        sha512 = "fqqRDnbbPjSbY8PdbsSJMYidhFdjdSoYuDab5n8yiePEHyWQ5OcQFkf1j6V7dg+2fZvW3XTWWSQEboQl+kTdNQ==";
+        url = "https://registry.npmjs.org/@fluentui/theme/-/theme-2.6.4.tgz";
+        sha512 = "MXCY2Z5zc1nK5PCN6tqhI1nplX/LF+8lF8YsrSGvu6VDnHilxi4Rifv2dRc+jybNI13tZ50uteok2Je7jABcMA==";
       };
     };
-    "@fluentui/utilities-8.8.0" = {
+    "@fluentui/utilities-8.8.1" = {
       name = "_at_fluentui_slash_utilities";
       packageName = "@fluentui/utilities";
-      version = "8.8.0";
+      version = "8.8.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@fluentui/utilities/-/utilities-8.8.0.tgz";
-        sha512 = "IwKN9ZkYMJApzcvJUlJd4ZURJCMwZG8FNsep05GAcDzynZygvH2Y1ECpIFn9VTSsrKxMKYFIQ61Rwg+AW/eBcw==";
+        url = "https://registry.npmjs.org/@fluentui/utilities/-/utilities-8.8.1.tgz";
+        sha512 = "JtICpdTINvifiyjp/LxxuDiU8BMkU73mzAP/3mz5KIhqPn3QjKG9ZeaBLPpoUXNOP/I6i9AYbAQHDvQI/ZK5tg==";
       };
     };
     "@gar/promisify-1.1.3" = {
@@ -3775,31 +3775,31 @@ let
         sha512 = "k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==";
       };
     };
-    "@gitbeaker/core-35.4.0" = {
+    "@gitbeaker/core-35.6.0" = {
       name = "_at_gitbeaker_slash_core";
       packageName = "@gitbeaker/core";
-      version = "35.4.0";
+      version = "35.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@gitbeaker/core/-/core-35.4.0.tgz";
-        sha512 = "VjRmC/j1umhn0+f+DbrbxXDAc0uvGd32tJ4MCFQYkxw9ndr/0Rlg8iYvYN/zWyqtgr3SeTxMyS3Z9MtbWWhjBA==";
+        url = "https://registry.npmjs.org/@gitbeaker/core/-/core-35.6.0.tgz";
+        sha512 = "ZhaDUs/4BxHODfjRkVmwkWxZVaFIpYduxaj28+J+4FH9X93WZp0IsyT4szcFM7FwAbRW2+ZvGeEfw4NQwgB/RA==";
       };
     };
-    "@gitbeaker/node-35.4.0" = {
+    "@gitbeaker/node-35.6.0" = {
       name = "_at_gitbeaker_slash_node";
       packageName = "@gitbeaker/node";
-      version = "35.4.0";
+      version = "35.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@gitbeaker/node/-/node-35.4.0.tgz";
-        sha512 = "5isY4/ePtjIs7uFwVW8U5oNNwntyCa3eTs3+tb6CywtLGdlnenk0eNJjZ2Srn8xJOKsOCCpQkT5hP1AOKSAlAQ==";
+        url = "https://registry.npmjs.org/@gitbeaker/node/-/node-35.6.0.tgz";
+        sha512 = "cJBxZdh8elrdLA8V4yEdISGinycESNaIO8JEIyAhemsovqv29XCJ40A9TBA4RlKNjkKVyVSN23BvcZimgqZSzA==";
       };
     };
-    "@gitbeaker/requester-utils-35.4.0" = {
+    "@gitbeaker/requester-utils-35.6.0" = {
       name = "_at_gitbeaker_slash_requester-utils";
       packageName = "@gitbeaker/requester-utils";
-      version = "35.4.0";
+      version = "35.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@gitbeaker/requester-utils/-/requester-utils-35.4.0.tgz";
-        sha512 = "NkJ55oMM7TNMWUNnzeYLdLOIUFv1LBBN/PCM2u7J5+67gpck03YfWAkgrODIqBePFyrfm19pdka3SUlNBP0G2g==";
+        url = "https://registry.npmjs.org/@gitbeaker/requester-utils/-/requester-utils-35.6.0.tgz";
+        sha512 = "5IVzv1gO626qaC7CEV7LUG68IHgEjWovIHXQsbI9MraxhrI9eSV5/l/81Povv7tJlni7u8OnARPU7bmxlXlx7g==";
       };
     };
     "@google-cloud/paginator-3.0.7" = {
@@ -3883,13 +3883,13 @@ let
         sha512 = "IuR2SB2MnC2ztA/XeTMTfWcA0Wy7ZH5u+nDkDNLAdX+AaSyDnsQS35sCmHqG0VOGTl7rzoyBWLCKGwSJplgtwg==";
       };
     };
-    "@graphql-tools/batch-execute-8.3.2" = {
+    "@graphql-tools/batch-execute-8.4.1" = {
       name = "_at_graphql-tools_slash_batch-execute";
       packageName = "@graphql-tools/batch-execute";
-      version = "8.3.2";
+      version = "8.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-8.3.2.tgz";
-        sha512 = "ICWqM+MvEkIPHm18Q0cmkvm134zeQMomBKmTRxyxMNhL/ouz6Nqld52/brSlaHnzA3fczupeRJzZ0YatruGBcQ==";
+        url = "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-8.4.1.tgz";
+        sha512 = "63+lNWrwXmofjZVa7ML+n9CBviClF3K+RP3Xx3hxGQ8BrhvB1pWS1yzaUZqrkiiKdTu1v3mJGVfmooHwzlyPwQ==";
       };
     };
     "@graphql-tools/delegate-7.1.5" = {
@@ -3901,13 +3901,13 @@ let
         sha512 = "bQu+hDd37e+FZ0CQGEEczmRSfQRnnXeUxI/0miDV+NV/zCbEdIJj5tYFNrKT03W6wgdqx8U06d8L23LxvGri/g==";
       };
     };
-    "@graphql-tools/delegate-8.5.2" = {
+    "@graphql-tools/delegate-8.7.0" = {
       name = "_at_graphql-tools_slash_delegate";
       packageName = "@graphql-tools/delegate";
-      version = "8.5.2";
+      version = "8.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-8.5.2.tgz";
-        sha512 = "M7d1jY4orPUC7MBoSKZEP21HTVqVGX+mS0AL6UGxg1L7GCRtaYQeopyKXmnnEmBi5FNZ9KduJgHRtxkS4Hc6uA==";
+        url = "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-8.7.0.tgz";
+        sha512 = "tsmNFV8nVvPY2nApCj69ck32/Jdj44rYbUZx+cpyUWOzfbUT1iu0d1mUwn5UeHuGnB+Bzgn3fuTypg97mDEyEw==";
       };
     };
     "@graphql-tools/graphql-file-loader-6.2.7" = {
@@ -3919,22 +3919,22 @@ let
         sha512 = "5k2SNz0W87tDcymhEMZMkd6/vs6QawDyjQXWtqkuLTBF3vxjxPD1I4dwHoxgWPIjjANhXybvulD7E+St/7s9TQ==";
       };
     };
-    "@graphql-tools/graphql-file-loader-7.3.4" = {
+    "@graphql-tools/graphql-file-loader-7.3.7" = {
       name = "_at_graphql-tools_slash_graphql-file-loader";
       packageName = "@graphql-tools/graphql-file-loader";
-      version = "7.3.4";
+      version = "7.3.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/graphql-file-loader/-/graphql-file-loader-7.3.4.tgz";
-        sha512 = "Q0/YtDq0APR6syRclsQMNguWKRlchd8nFTOpLhfc7Xeiy21VhEEi4Ik+quRySfb7ubDfJGhiUq4MQW43FhWJvg==";
+        url = "https://registry.npmjs.org/@graphql-tools/graphql-file-loader/-/graphql-file-loader-7.3.7.tgz";
+        sha512 = "fwXLycYvabPhusGtYuFrOPbjeIvLWr6viGkQc9KmiBm2Z2kZrlNRNUlYkXXRzMoiqRkzqFJYhOgWDE7LsOnbjw==";
       };
     };
-    "@graphql-tools/import-6.6.6" = {
+    "@graphql-tools/import-6.6.9" = {
       name = "_at_graphql-tools_slash_import";
       packageName = "@graphql-tools/import";
-      version = "6.6.6";
+      version = "6.6.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/import/-/import-6.6.6.tgz";
-        sha512 = "a0aVajxqu1MsL8EwavA44Osw20lBOIhq8IM2ZIHFPP62cPAcOB26P+Sq57DHMsSyX5YQ0ab9XPM2o4e1dQhs0w==";
+        url = "https://registry.npmjs.org/@graphql-tools/import/-/import-6.6.9.tgz";
+        sha512 = "sKaLqvPmNLQlY4te+nnBhRrf5WBISoiyVkbriCLz0kHw805iHdJaU2KxUoHsRTR7WlYq0g9gzB0oVaRh99Q5aA==";
       };
     };
     "@graphql-tools/json-file-loader-6.2.6" = {
@@ -3946,13 +3946,13 @@ let
         sha512 = "CnfwBSY5926zyb6fkDBHnlTblHnHI4hoBALFYXnrg0Ev4yWU8B04DZl/pBRUc459VNgO2x8/mxGIZj2hPJG1EA==";
       };
     };
-    "@graphql-tools/json-file-loader-7.3.4" = {
+    "@graphql-tools/json-file-loader-7.3.7" = {
       name = "_at_graphql-tools_slash_json-file-loader";
       packageName = "@graphql-tools/json-file-loader";
-      version = "7.3.4";
+      version = "7.3.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/json-file-loader/-/json-file-loader-7.3.4.tgz";
-        sha512 = "1AROMFh8Lyorf2gTWXgVaUbU3ic84gzAgpRmJCsCla/Nnvn6JiCs4aWHsalk4ZWVXCaK04c8gk8Px1uNQUj02Q==";
+        url = "https://registry.npmjs.org/@graphql-tools/json-file-loader/-/json-file-loader-7.3.7.tgz";
+        sha512 = "dm0LcfiWYin7cUR4RWC33C9bNppujvSU7hwTH+sHmSguNnat9Kn8dBntVSgrY3qCbKuGfz/PshQHIODXrRwAKg==";
       };
     };
     "@graphql-tools/load-6.2.4" = {
@@ -3964,13 +3964,13 @@ let
         sha512 = "FlQC50VELwRxoWUbJMMMs5gG0Dl8BaQYMrXUHTsxwqR7UmksUYnysC21rdousvs6jVZ7pf4unZfZFtBjz+8Edg==";
       };
     };
-    "@graphql-tools/load-7.5.2" = {
+    "@graphql-tools/load-7.5.5" = {
       name = "_at_graphql-tools_slash_load";
       packageName = "@graphql-tools/load";
-      version = "7.5.2";
+      version = "7.5.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/load/-/load-7.5.2.tgz";
-        sha512 = "URPqVP77mYxdZxT895DzrWf2C23S3yC/oAmXD4D4YlxR5eVVH/fxu0aZR78WcEKF331fWSiFwWy9j7BZWvkj7g==";
+        url = "https://registry.npmjs.org/@graphql-tools/load/-/load-7.5.5.tgz";
+        sha512 = "qPasit140nwTbMQbFCfZcgaS7q/0+xMQGdkMGU11rtHt6/jMgJIKDUU8/fJGKltNY3EeHlEdVtZmggZD7Rr6bA==";
       };
     };
     "@graphql-tools/merge-6.2.17" = {
@@ -3982,13 +3982,13 @@ let
         sha512 = "G5YrOew39fZf16VIrc49q3c8dBqQDD0ax5LYPiNja00xsXDi0T9zsEWVt06ApjtSdSF6HDddlu5S12QjeN8Tow==";
       };
     };
-    "@graphql-tools/merge-8.2.3" = {
+    "@graphql-tools/merge-8.2.6" = {
       name = "_at_graphql-tools_slash_merge";
       packageName = "@graphql-tools/merge";
-      version = "8.2.3";
+      version = "8.2.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/merge/-/merge-8.2.3.tgz";
-        sha512 = "XCSmL6/Xg8259OTWNp69B57CPWiVL69kB7pposFrufG/zaAlI9BS68dgzrxmmSqZV5ZHU4r/6Tbf6fwnEJGiSw==";
+        url = "https://registry.npmjs.org/@graphql-tools/merge/-/merge-8.2.6.tgz";
+        sha512 = "dkwTm4czMISi/Io47IVvq2Fl9q4TIGKpJ0VZjuXYdEFkECyH6A5uwxZfPVandZG+gQs8ocFFoa6RisiUJLZrJw==";
       };
     };
     "@graphql-tools/schema-7.1.5" = {
@@ -4000,13 +4000,13 @@ let
         sha512 = "uyn3HSNSckf4mvQSq0Q07CPaVZMNFCYEVxroApOaw802m9DcZPgf9XVPy/gda5GWj9AhbijfRYVTZQgHnJ4CXA==";
       };
     };
-    "@graphql-tools/schema-8.3.2" = {
+    "@graphql-tools/schema-8.3.5" = {
       name = "_at_graphql-tools_slash_schema";
       packageName = "@graphql-tools/schema";
-      version = "8.3.2";
+      version = "8.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/schema/-/schema-8.3.2.tgz";
-        sha512 = "77feSmIuHdoxMXRbRyxE8rEziKesd/AcqKV6fmxe7Zt+PgIQITxNDew2XJJg7qFTMNM43W77Ia6njUSBxNOkwg==";
+        url = "https://registry.npmjs.org/@graphql-tools/schema/-/schema-8.3.5.tgz";
+        sha512 = "3mJ/K7TdL+fnEUtCUqF4qkh1fcNMzaxgwKgO9fSYSTS7zyT16hbi5XSulSTshygHgaD2u+MO588iR4ZJcbZcIg==";
       };
     };
     "@graphql-tools/url-loader-6.10.1" = {
@@ -4018,13 +4018,13 @@ let
         sha512 = "DSDrbhQIv7fheQ60pfDpGD256ixUQIR6Hhf9Z5bRjVkXOCvO5XrkwoWLiU7iHL81GB1r0Ba31bf+sl+D4nyyfw==";
       };
     };
-    "@graphql-tools/url-loader-7.9.1" = {
+    "@graphql-tools/url-loader-7.9.7" = {
       name = "_at_graphql-tools_slash_url-loader";
       packageName = "@graphql-tools/url-loader";
-      version = "7.9.1";
+      version = "7.9.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-7.9.1.tgz";
-        sha512 = "UYKc0f8jw+MODDb79XKOG8wyvRCG/7KBYtRUfUKed4LBjftjZfF5VovAbF3axiTuzt2FSyPRu8YMEQ7kypkc8g==";
+        url = "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-7.9.7.tgz";
+        sha512 = "cJoZcv6oJrhArRPmSnw8wcqnz7F8p+HzwvjoJyHbs0ne2jTXazD+LOHaXMAa1L7lKK2YmH2Txy8pOI76JnvUiQ==";
       };
     };
     "@graphql-tools/utils-6.2.4" = {
@@ -4054,13 +4054,13 @@ let
         sha512 = "gzkavMOgbhnwkHJYg32Adv6f+LxjbQmmbdD5Hty0+CWxvaiuJq+nU6tzb/7VSU4cwhbNLx/lGu2jbCPEW1McZQ==";
       };
     };
-    "@graphql-tools/utils-8.6.2" = {
+    "@graphql-tools/utils-8.6.5" = {
       name = "_at_graphql-tools_slash_utils";
       packageName = "@graphql-tools/utils";
-      version = "8.6.2";
+      version = "8.6.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.6.2.tgz";
-        sha512 = "x1DG0cJgpJtImUlNE780B/dfp8pxvVxOD6UeykFH5rHes26S4kGokbgU8F1IgrJ1vAPm/OVBHtd2kicTsPfwdA==";
+        url = "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.6.5.tgz";
+        sha512 = "mjOtaWiS2WIqRz/cq5gaeM3sVrllcu2xbtHROw1su1v3xWa3D3dKgn8Lrl7+tvWs5WUVySsBss/VZ3WdoPkCrA==";
       };
     };
     "@graphql-tools/wrap-7.0.8" = {
@@ -4072,13 +4072,13 @@ let
         sha512 = "1NDUymworsOlb53Qfh7fonDi2STvqCtbeE68ntKY9K/Ju/be2ZNxrFSbrBHwnxWcN9PjISNnLcAyJ1L5tCUyhg==";
       };
     };
-    "@graphql-tools/wrap-8.4.3" = {
+    "@graphql-tools/wrap-8.4.9" = {
       name = "_at_graphql-tools_slash_wrap";
       packageName = "@graphql-tools/wrap";
-      version = "8.4.3";
+      version = "8.4.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-8.4.3.tgz";
-        sha512 = "2bd3GtlqV72idEphLTM8SRiSxEDrMPGE556faW8N5Q2qK7qlCEu9AQK0HNKWKdtEPTHqahndZtIPcdpNN6xGig==";
+        url = "https://registry.npmjs.org/@graphql-tools/wrap/-/wrap-8.4.9.tgz";
+        sha512 = "YFb34itVWyE3sMifvPRqvYjXYpjJle2hkq9nIELQOumc1yqxT7jf/+YnNZalS1DoOdWn4GbDmqO/uljf6AuuDA==";
       };
     };
     "@grpc/grpc-js-1.4.4" = {
@@ -4090,22 +4090,22 @@ let
         sha512 = "a6222b7Dl6fIlMgzVl7e+NiRoLiZFbpcwvBH2Oli56Bn7W4/3Ld+86hK4ffPn5rx2DlDidmIcvIJiOQXyhv9gA==";
       };
     };
-    "@grpc/grpc-js-1.5.4" = {
+    "@grpc/grpc-js-1.5.10" = {
       name = "_at_grpc_slash_grpc-js";
       packageName = "@grpc/grpc-js";
-      version = "1.5.4";
+      version = "1.5.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.4.tgz";
-        sha512 = "+nJTOsqpFAXnfFrMZ7Too4XXZ/J9O+8jYvSoaunupoC7I7b9H4iex1BRsbTdOmiowfPGJrWit7jUPmbENSUSpw==";
+        url = "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.10.tgz";
+        sha512 = "++oAubX/7rJzlqH0ShyzDENNNDHYrlttdc3NM40KlaVQDcgGqQknuPoavmyTC+oNUDyxPCX5dHceKhfcgN3tiw==";
       };
     };
-    "@grpc/grpc-js-1.5.5" = {
+    "@grpc/grpc-js-1.5.4" = {
       name = "_at_grpc_slash_grpc-js";
       packageName = "@grpc/grpc-js";
-      version = "1.5.5";
+      version = "1.5.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.5.tgz";
-        sha512 = "FTd27ItHlsSG/7hp62xgI9YnqSwRbHRSVmDVR8DwOoC+6t8JhHRXe2JL0U8N9GLc0jS0HrtEbO/KP5+G0ebjLQ==";
+        url = "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.4.tgz";
+        sha512 = "+nJTOsqpFAXnfFrMZ7Too4XXZ/J9O+8jYvSoaunupoC7I7b9H4iex1BRsbTdOmiowfPGJrWit7jUPmbENSUSpw==";
       };
     };
     "@grpc/grpc-js-1.5.7" = {
@@ -4666,22 +4666,49 @@ let
         sha512 = "4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==";
       };
     };
-    "@jsii/check-node-1.55.0" = {
+    "@jsii/check-node-1.55.1" = {
       name = "_at_jsii_slash_check-node";
       packageName = "@jsii/check-node";
-      version = "1.55.0";
+      version = "1.55.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@jsii/check-node/-/check-node-1.55.0.tgz";
-        sha512 = "vfBW/3ptY3emiBVrwk7ySwGyzOvwLxb66FMNTzyslYegH9RvIwE+UY8kC87zscuZSDOCwINwgD0KdqrrfnR5yg==";
+        url = "https://registry.npmjs.org/@jsii/check-node/-/check-node-1.55.1.tgz";
+        sha512 = "JC9b+y4CXdIICDE6fYjaN0VKPc65lz4dj1T4lnaqMfbXIBGB7sBMLQJ/szVc9U3Z+o/HBzCJndNn86kGRM+lqw==";
       };
     };
-    "@jsii/spec-1.55.0" = {
+    "@jsii/spec-1.55.1" = {
       name = "_at_jsii_slash_spec";
       packageName = "@jsii/spec";
-      version = "1.55.0";
+      version = "1.55.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@jsii/spec/-/spec-1.55.0.tgz";
-        sha512 = "MsmAmi9+2s8p5jSypYFDTufkO2iAUWK7Ngq+btGDM6bMyQgqInMKNQcPcZAgWuwUCOU0ne/oYMVIbCR2njjAGA==";
+        url = "https://registry.npmjs.org/@jsii/spec/-/spec-1.55.1.tgz";
+        sha512 = "KSKKN04eO0rTaqzw6j9RTx8HAzhePdmWRC3iJQ90QeZLv/L8Pj4l+nZ4wn77BGxmeULpXkGXUKbhkceArdr4GA==";
+      };
+    };
+    "@juggle/resize-observer-3.3.1" = {
+      name = "_at_juggle_slash_resize-observer";
+      packageName = "@juggle/resize-observer";
+      version = "3.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@juggle/resize-observer/-/resize-observer-3.3.1.tgz";
+        sha512 = "zMM9Ds+SawiUkakS7y94Ymqx+S0ORzpG3frZirN3l+UlXUmSUR7hF4wxCVqW+ei94JzV5kt0uXBcoOEAuiydrw==";
+      };
+    };
+    "@koa/multer-3.0.0" = {
+      name = "_at_koa_slash_multer";
+      packageName = "@koa/multer";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@koa/multer/-/multer-3.0.0.tgz";
+        sha512 = "y+OQBmex5D1jIl723gAEUYcAWPEicIXppaAKw/zCMfpllQ08ZNweDPwoCLxEoatqd5pCu2XG6V8dl67JRq3RJw==";
+      };
+    };
+    "@koa/router-10.1.1" = {
+      name = "_at_koa_slash_router";
+      packageName = "@koa/router";
+      version = "10.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@koa/router/-/router-10.1.1.tgz";
+        sha512 = "ORNjq5z4EmQPriKbR0ER3k4Gh7YGNhWDL7JBW+8wXDrHLbWYKYSJaOJ9aN06npF5tbTxe2JBOsurpJDAvjiXKw==";
       };
     };
     "@kwsites/file-exists-1.1.1" = {
@@ -5548,13 +5575,13 @@ let
         sha512 = "ES5rj6J39FUkHe/b3C9SJs8bqIungYhuU7rBINTBaHOv/Ce4RCb3Gw08CZVl32W33UEkgRkzyWaIedV4at+QHg==";
       };
     };
-    "@mdn/browser-compat-data-4.1.6" = {
+    "@mdn/browser-compat-data-4.1.12" = {
       name = "_at_mdn_slash_browser-compat-data";
       packageName = "@mdn/browser-compat-data";
-      version = "4.1.6";
+      version = "4.1.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-4.1.6.tgz";
-        sha512 = "JbtcHGODAlkOT6eDV2rCyOguW3+o34ExMD9DOki6kxzeyN3IBtZ9PI0FlbKeD77Bm5U0UG5Heo4qnNbSajXUnw==";
+        url = "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-4.1.12.tgz";
+        sha512 = "y3Ntio6hb5+m6asxcA3nnIN6URjAFMji2EZZVYGd2Ag5On4mmvPhMnXdiIScCMXgHjFX+5qXuKaojLLhJHZPAg==";
       };
     };
     "@medable/mdctl-api-1.0.63" = {
@@ -5701,13 +5728,13 @@ let
         sha512 = "W6CLUJ2eBMw3Rec70qrsEW0jOm/3twwJv21mrmj2yORiaVmVYGS4sSS5yUwvQc1ZlDLYGPnClVWmUUMagKNsfA==";
       };
     };
-    "@microsoft/load-themed-styles-1.10.247" = {
+    "@microsoft/load-themed-styles-1.10.249" = {
       name = "_at_microsoft_slash_load-themed-styles";
       packageName = "@microsoft/load-themed-styles";
-      version = "1.10.247";
+      version = "1.10.249";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@microsoft/load-themed-styles/-/load-themed-styles-1.10.247.tgz";
-        sha512 = "vKbuG3Mcbc4kkNAcIE13aIv5KoI2g+tHFFIZnFhtUilpYHc0VsMd4Fw7Jz81A8AB7L3wWu3OZB2CNiRnr1a3ew==";
+        url = "https://registry.npmjs.org/@microsoft/load-themed-styles/-/load-themed-styles-1.10.249.tgz";
+        sha512 = "qrLdjIZ9znm2CUILAXuwyAcUvyBzSNaf8wIzaZf/ul2UKhww5xSI7pT7bIqWbuwn5SB+xOmIZrlRr3DyzuVBYQ==";
       };
     };
     "@mitmaro/errors-1.0.0" = {
@@ -5782,6 +5809,15 @@ let
         sha512 = "b+MGNyP9/LXkapreJzNUzcvuzZslj/RGgdVVJ16P2wSlYatfLycPObImqVJSmNAdyeShvNeM/pl3sVZsObFueg==";
       };
     };
+    "@node-ipc/js-queue-2.0.3" = {
+      name = "_at_node-ipc_slash_js-queue";
+      packageName = "@node-ipc/js-queue";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@node-ipc/js-queue/-/js-queue-2.0.3.tgz";
+        sha512 = "fL1wpr8hhD5gT2dA1qifeVaoDFlQR5es8tFuKqjHX+kdOtdNHnxkVZbtIrR2rxnMFvehkjaZRNV2H/gPXlb0hw==";
+      };
+    };
     "@node-red/editor-api-2.2.2" = {
       name = "_at_node-red_slash_editor-api";
       packageName = "@node-red/editor-api";
@@ -6025,6 +6061,15 @@ let
         sha512 = "8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==";
       };
     };
+    "@npmcli/fs-2.1.0" = {
+      name = "_at_npmcli_slash_fs";
+      packageName = "@npmcli/fs";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.0.tgz";
+        sha512 = "DmfBvNXGaetMxj9LTp8NAN9vEidXURrf5ZTslQzEAi/6GbW+4yjaLFQc6Tue5cpZ9Frlk4OBo/Snf1Bh/S7qTQ==";
+      };
+    };
     "@npmcli/git-2.1.0" = {
       name = "_at_npmcli_slash_git";
       packageName = "@npmcli/git";
@@ -6286,13 +6331,13 @@ let
         sha512 = "r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==";
       };
     };
-    "@octokit/core-3.5.1" = {
+    "@octokit/core-3.6.0" = {
       name = "_at_octokit_slash_core";
       packageName = "@octokit/core";
-      version = "3.5.1";
+      version = "3.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/core/-/core-3.5.1.tgz";
-        sha512 = "omncwpLVxMP+GLpLPgeGJBF6IWJFjXDS5flY5VbppePYX9XehevbDykRH9PdCdvqt9TS5AOTiDide7h0qrkHjw==";
+        url = "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz";
+        sha512 = "7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==";
       };
     };
     "@octokit/endpoint-6.0.12" = {
@@ -6367,13 +6412,13 @@ let
         sha512 = "r+fArdP5+TG6l1Rv/C9hVoty6tldw6cE2pRHNGmFPdyfrc696R6JjrQ3d7HdVqGwuzfyrcaLAKD7K8TX8aehUQ==";
       };
     };
-    "@octokit/plugin-throttling-3.6.1" = {
+    "@octokit/plugin-throttling-3.6.2" = {
       name = "_at_octokit_slash_plugin-throttling";
       packageName = "@octokit/plugin-throttling";
-      version = "3.6.1";
+      version = "3.6.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-3.6.1.tgz";
-        sha512 = "T5DOcDQP0K/Ng5pnOEqCHDFojsftYL5o91MNbbR3nj1yAOACoGj3wDYCx0+5yJkbvRjYUdU0GsUt5/wYBba1cA==";
+        url = "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-3.6.2.tgz";
+        sha512 = "0az5fxgVlhFfFtiKLKVXTpmCG2tK3BG0fYI8SO4pmGlN1kyJktJVQA+6KKaFxtxMIWsuHmSEAkR6zSgtk86g2A==";
       };
     };
     "@octokit/request-5.6.3" = {
@@ -6439,6 +6484,24 @@ let
         sha512 = "PffXX2AL8Sh0VHQ52jJC4u3T0H6wDK6N/4bg7xh4ngMYOIi13aR1kzVvX1sVDBgfGwDOkMbl4c54Xm3tlPx/+A==";
       };
     };
+    "@openpgp/hkp-client-0.0.2" = {
+      name = "_at_openpgp_slash_hkp-client";
+      packageName = "@openpgp/hkp-client";
+      version = "0.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@openpgp/hkp-client/-/hkp-client-0.0.2.tgz";
+        sha512 = "hA71RhqfLfNltZsy/USTQehE2QAVB3eK4xx8p76XtFJy5Zg6gK2XbZvOC/x/yG8i2Ipbyul1DMTMxH9v8rfPKw==";
+      };
+    };
+    "@openpgp/wkd-client-0.0.3" = {
+      name = "_at_openpgp_slash_wkd-client";
+      packageName = "@openpgp/wkd-client";
+      version = "0.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@openpgp/wkd-client/-/wkd-client-0.0.3.tgz";
+        sha512 = "qe+uWtCJetuG78KhfiQyEA+ZciC/qeECXRj+LCm4m0s98qR2wPwYHRI1u8aFbtkN6G4ZMyKN+opY++fJS5l3vg==";
+      };
+    };
     "@opentelemetry/api-1.1.0" = {
       name = "_at_opentelemetry_slash_api";
       packageName = "@opentelemetry/api";
@@ -6448,409 +6511,490 @@ let
         sha512 = "hf+3bwuBwtXsugA2ULBc95qxrOqP2pOekLz34BJhcAKawt94vfeNyUKpYc0lZQ/3sCP6LqRa7UAdHA7i5UODzQ==";
       };
     };
-    "@opentelemetry/semantic-conventions-1.0.1" = {
+    "@opentelemetry/semantic-conventions-1.1.1" = {
       name = "_at_opentelemetry_slash_semantic-conventions";
       packageName = "@opentelemetry/semantic-conventions";
-      version = "1.0.1";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.0.1.tgz";
-        sha512 = "7XU1sfQ8uCVcXLxtAHA8r3qaLJ2oq7sKtEwzZhzuEXqYmjW+n+J4yM3kNo0HQo3Xp1eUe47UM6Wy6yuAvIyllg==";
+        url = "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.1.1.tgz";
+        sha512 = "GdTwDHSaZ6iP5LUdvS/SLUjn3067xn1HcBsLZCh8YOsf22d/YWTBcnFl3buieBP4KiajwHLho4I8HSMDKACBSg==";
       };
     };
-    "@ot-builder/bin-composite-types-1.4.0" = {
+    "@ot-builder/bin-composite-types-1.5.0" = {
       name = "_at_ot-builder_slash_bin-composite-types";
       packageName = "@ot-builder/bin-composite-types";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/bin-composite-types/-/bin-composite-types-1.4.0.tgz";
-        sha512 = "OzEsssOyEKy1setspPKun8E6tlDpFguLQwCAN1iK9HsrJwgK1lqcwA+PDUxwEIcKj6zaSDI9fb53v6WnsSSf5w==";
+        url = "https://registry.npmjs.org/@ot-builder/bin-composite-types/-/bin-composite-types-1.5.0.tgz";
+        sha512 = "0X12BGmy7l91ONXGLfmG3BQerqjdipYgrGhREXL80qcKQfcZL4o+7NHjq/FDlFYpMGLxDq9CkprGEDmgSIL9CA==";
       };
     };
-    "@ot-builder/bin-util-1.4.0" = {
+    "@ot-builder/bin-util-1.5.0" = {
       name = "_at_ot-builder_slash_bin-util";
       packageName = "@ot-builder/bin-util";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/bin-util/-/bin-util-1.4.0.tgz";
-        sha512 = "5OMGopgGimoKoHjag2YtPeAyGp3JzMaclzoh4Npelj1hNLebWfdmcKdE3zcixk5eMK2KTr1aKZMCvbbIPhUHFw==";
+        url = "https://registry.npmjs.org/@ot-builder/bin-util/-/bin-util-1.5.0.tgz";
+        sha512 = "zLBqM5SjP/EmVaZtwqOjK832yzYQTlWqtldOmgAizckiNpayC6P5c49KJpVTLhVh54euhsk9oJUjsi0L9i8A0g==";
       };
     };
-    "@ot-builder/cli-help-shower-1.4.0" = {
+    "@ot-builder/cli-help-shower-1.5.0" = {
       name = "_at_ot-builder_slash_cli-help-shower";
       packageName = "@ot-builder/cli-help-shower";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/cli-help-shower/-/cli-help-shower-1.4.0.tgz";
-        sha512 = "1tPeg1TGW1EvJhseA0J12tfQhz1R+YocU0/9HpdUiw2Ny9f8KnY/Z4jM+6KrNXPBlqJf3U7h5D/Mqaa+8I6ROw==";
+        url = "https://registry.npmjs.org/@ot-builder/cli-help-shower/-/cli-help-shower-1.5.0.tgz";
+        sha512 = "2jMS5aTr+92mt0HsUoLLV+1GBMsk2GC1tx5YFcdDBH7rfExvYR5NKgpO1d7muVdUi8WBh4fn611rb5sjhBtF5Q==";
       };
     };
-    "@ot-builder/cli-proc-1.4.0" = {
+    "@ot-builder/cli-proc-1.5.0" = {
       name = "_at_ot-builder_slash_cli-proc";
       packageName = "@ot-builder/cli-proc";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/cli-proc/-/cli-proc-1.4.0.tgz";
-        sha512 = "IiUQNzhV4qWix6cG2gUjyJ0DEiphgOp4sFCNssMy5so1J1635qTYmkodTWgynVKQ31qCiamtS5+WMtNIwjlodg==";
+        url = "https://registry.npmjs.org/@ot-builder/cli-proc/-/cli-proc-1.5.0.tgz";
+        sha512 = "zU0afR6WqkUcogoX1pLJBsYSlViPJCkQ1zrHjnOLcHRJ5zIPwNXbFUTAhWePMvNF8EAjtILGeX8ZxoE3PtXMTQ==";
       };
     };
-    "@ot-builder/cli-shared-1.4.0" = {
+    "@ot-builder/cli-shared-1.5.0" = {
       name = "_at_ot-builder_slash_cli-shared";
       packageName = "@ot-builder/cli-shared";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/cli-shared/-/cli-shared-1.4.0.tgz";
-        sha512 = "PhYzNdTC5rTpwkT0PFmiWHVkJZBHZN82HPAtsEHyL3nPKK3ygxReNo1FYVQ5DfO9PJE1NxYKv9AqrMAjL1IhNQ==";
+        url = "https://registry.npmjs.org/@ot-builder/cli-shared/-/cli-shared-1.5.0.tgz";
+        sha512 = "hOYs07mNlg9Z+Rl2wKsDRzb0gYVsnAv6K8O52Q141QBvu5Uyjb6p19zM8pYvOF7VXZTGEhki9WNoM3qVgp5pSA==";
       };
     };
-    "@ot-builder/common-impl-1.4.0" = {
+    "@ot-builder/common-impl-1.5.0" = {
       name = "_at_ot-builder_slash_common-impl";
       packageName = "@ot-builder/common-impl";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/common-impl/-/common-impl-1.4.0.tgz";
-        sha512 = "tK6UV2dEkWi4cj7v0miMVhGuHOhcAOoqNkzWoyNgbqevzvftvX+FR2TxDrRgDJ00928yaSpxs5Luk+nLZetDwA==";
+        url = "https://registry.npmjs.org/@ot-builder/common-impl/-/common-impl-1.5.0.tgz";
+        sha512 = "6linn1dhjDVIiu2cvY0UACSAJClKvLmwrLigg3dzlEjJRvr6jnE/zZ8D401CuL7EMLJPNjciSlf1lQCj5/MU8Q==";
       };
     };
-    "@ot-builder/errors-1.4.0" = {
+    "@ot-builder/errors-1.5.0" = {
       name = "_at_ot-builder_slash_errors";
       packageName = "@ot-builder/errors";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/errors/-/errors-1.4.0.tgz";
-        sha512 = "DriKgSnAXxXFynOZHABycRdd42xLc7O45TGusTIo5r9HE8oF24IadBch1MWxQVuJtfakIcjy3lgIYmAjTkxzfw==";
+        url = "https://registry.npmjs.org/@ot-builder/errors/-/errors-1.5.0.tgz";
+        sha512 = "vARlbSzv3euBX0/Y4orHhbYZOsj7hYjsPU+VXt2LD+do6On1EJ8z6vvXXZxB4B52Rr2jnxzycqk0fNh95IKTeg==";
       };
     };
-    "@ot-builder/io-bin-cff-1.4.0" = {
+    "@ot-builder/io-bin-cff-1.5.0" = {
       name = "_at_ot-builder_slash_io-bin-cff";
       packageName = "@ot-builder/io-bin-cff";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-cff/-/io-bin-cff-1.4.0.tgz";
-        sha512 = "4qbs6oCwxdUFJYfnHgoyGRbRmH0if8XfIIbcpqfxaXOdNCI2tE+t49svUNmwwzx/tr3TvGH5Q98fvJghbkBtpg==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-cff/-/io-bin-cff-1.5.0.tgz";
+        sha512 = "3KWiwRB/8JUkfxE3WqR/xOWQdBDbIS6evdQPBQ/CAJV1qyTtL3Q9KfCHaMPHJcDLbKPP/4lnhKEyi6QsnJU/Tw==";
       };
     };
-    "@ot-builder/io-bin-encoding-1.4.0" = {
+    "@ot-builder/io-bin-encoding-1.5.0" = {
       name = "_at_ot-builder_slash_io-bin-encoding";
       packageName = "@ot-builder/io-bin-encoding";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-encoding/-/io-bin-encoding-1.4.0.tgz";
-        sha512 = "7RWM4N5/TjIflBJ5i/Gvbis2A9yAnVPdS/MGJTbgfLQkRKaZPajpf3JlIiV7OSnixm89i3wmspHVeadueqDpMQ==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-encoding/-/io-bin-encoding-1.5.0.tgz";
+        sha512 = "h55cS6agqz++YRMPAi6Zvgd6oWllF9+SjF72whPGekOjRZLNemuTpmWBbXbD3gc1pU8SqSUUSeIcUdny3sqtdg==";
       };
     };
-    "@ot-builder/io-bin-ext-private-1.4.0" = {
+    "@ot-builder/io-bin-ext-private-1.5.0" = {
       name = "_at_ot-builder_slash_io-bin-ext-private";
       packageName = "@ot-builder/io-bin-ext-private";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-ext-private/-/io-bin-ext-private-1.4.0.tgz";
-        sha512 = "amQJaRUMhgun9MzhJQkfkwH+P3RidMePeeBcMCexgMweouCcKMuAvju6rZsysybad3V/BdCwEap3wjiqkPQuWQ==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-ext-private/-/io-bin-ext-private-1.5.0.tgz";
+        sha512 = "11K88CL96HiSP0DZYvNd/oULlDbKfD+RYChnl8OJlYDKqxQcFfecIcgKAJmEpmkr11MurRB0AdP2Hg6HBCUFuA==";
       };
     };
-    "@ot-builder/io-bin-font-1.4.0" = {
+    "@ot-builder/io-bin-font-1.5.0" = {
       name = "_at_ot-builder_slash_io-bin-font";
       packageName = "@ot-builder/io-bin-font";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-font/-/io-bin-font-1.4.0.tgz";
-        sha512 = "sJ+rMKLH63H6spdsaSdTgYmFBDDoMy22YCINtOEQRmQgbV9nuiElsJr8LSA6LlXN5joQU3y12D2oA2m044y0Uw==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-font/-/io-bin-font-1.5.0.tgz";
+        sha512 = "UuepwTTj9lbFh92vvyyK346OBVKlG7mXUcafrRijGGCyc1Toe+HONaCU1dcNy9IvwlNjEa6svrQfMFx8fwxMKA==";
       };
     };
-    "@ot-builder/io-bin-glyph-store-1.4.0" = {
+    "@ot-builder/io-bin-glyph-store-1.5.0" = {
       name = "_at_ot-builder_slash_io-bin-glyph-store";
       packageName = "@ot-builder/io-bin-glyph-store";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-glyph-store/-/io-bin-glyph-store-1.4.0.tgz";
-        sha512 = "NiQOkjDBQ8SLdX9vVu/9/7/IOowDGEBT/dkM3rzAOGJEj/DxRcWc5uR1z3nE2m/DaGWkTfigV4yk+HO+DQnoog==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-glyph-store/-/io-bin-glyph-store-1.5.0.tgz";
+        sha512 = "Xtg0k34yj4nfFlyh/lpBM6O66QYiAW9+/qmn5Rtp9N8hDCGD+2HZ7fTZZdcqgXYZblZvlknzBFKSOLoupcvZNg==";
       };
     };
-    "@ot-builder/io-bin-layout-1.4.0" = {
+    "@ot-builder/io-bin-layout-1.5.0" = {
       name = "_at_ot-builder_slash_io-bin-layout";
       packageName = "@ot-builder/io-bin-layout";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-layout/-/io-bin-layout-1.4.0.tgz";
-        sha512 = "rMpXHBYc7rft8HohcZw7OEs1FLphxbQ3UCgltB5PGvBZH7R2nfaYwdzXfXdStHJM0oiI3nx+C7VEl26hAqM6DA==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-layout/-/io-bin-layout-1.5.0.tgz";
+        sha512 = "bS+e8VkFUX6LyWqD7zGa5FvJbCtIw6Crs2g4DVivn6slhru9JIc5DcNOHp86zwNkwlzg+v+5/3KUoNZoWgxWpw==";
       };
     };
-    "@ot-builder/io-bin-metadata-1.4.0" = {
+    "@ot-builder/io-bin-metadata-1.5.0" = {
       name = "_at_ot-builder_slash_io-bin-metadata";
       packageName = "@ot-builder/io-bin-metadata";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-metadata/-/io-bin-metadata-1.4.0.tgz";
-        sha512 = "2ygSsCMTvjN5+sd//d+lnqmSwTA04yDYCSnYMQy8k37nJk2xo7VsKnKynUBJPmZ2Km70eT+XaYZyxqqQQw4Mew==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-metadata/-/io-bin-metadata-1.5.0.tgz";
+        sha512 = "0Q0K1UkSqO0wW03UbUuOw79abzNeK6cHjzCE0UX2hZPtH26gEG32xCPYUNCaSxOFPWXSRXPg/kmYIT6/ZmkWLA==";
       };
     };
-    "@ot-builder/io-bin-metric-1.4.0" = {
+    "@ot-builder/io-bin-metric-1.5.0" = {
       name = "_at_ot-builder_slash_io-bin-metric";
       packageName = "@ot-builder/io-bin-metric";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-metric/-/io-bin-metric-1.4.0.tgz";
-        sha512 = "ysgatN4dr16nYBFv4mAPbcs6DhbuW/roZtJyVFfil0JtmSa1AJfDbkAxLIA0Uuxay1j7d6ynhK4ojRd4C+rcOA==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-metric/-/io-bin-metric-1.5.0.tgz";
+        sha512 = "Ezw3MBw4rO6fMrikm1Mc0nOnf3E4FPkHMhUAXN62AFcz6VOKMY34OL+NSoLkJL+HfGTju4KcF3guiNytXrtLeA==";
       };
     };
-    "@ot-builder/io-bin-name-1.4.0" = {
+    "@ot-builder/io-bin-name-1.5.0" = {
       name = "_at_ot-builder_slash_io-bin-name";
       packageName = "@ot-builder/io-bin-name";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-name/-/io-bin-name-1.4.0.tgz";
-        sha512 = "gNLWNlUeIBDybRjT9lwVavbWrswGQ4ixy/SFuAC2D9qIbJeGxrMF9Bb7yid7+g9Z5CV4cPeoxc9s4GRW0viBOw==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-name/-/io-bin-name-1.5.0.tgz";
+        sha512 = "zPhTA5HEwQ0jAovA+ZwPjt3ZNnOaLSQagoLHo6zuETOb+uJSksTExg+G4h6PFHC9U9q55OZ0HidlWOmnmi1xbA==";
       };
     };
-    "@ot-builder/io-bin-sfnt-1.4.0" = {
+    "@ot-builder/io-bin-sfnt-1.5.0" = {
       name = "_at_ot-builder_slash_io-bin-sfnt";
       packageName = "@ot-builder/io-bin-sfnt";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-sfnt/-/io-bin-sfnt-1.4.0.tgz";
-        sha512 = "JsjkrKdMxo93LsNKCaB+ind7tr3kwQz3K/yvLktfteSPKwNkyB1Tl+knwsa3btk/M8v8t3mBazssQz5R2S6+lg==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-sfnt/-/io-bin-sfnt-1.5.0.tgz";
+        sha512 = "/8sANRI3aBKKdOcbnULiS5w5c34d6lb8IufJtYpCuowUuvkDUXF3vlGw7t7CL7mudzdcELpW4ROa1/vNRR+c6Q==";
       };
     };
-    "@ot-builder/io-bin-ttf-1.4.0" = {
+    "@ot-builder/io-bin-ttf-1.5.0" = {
       name = "_at_ot-builder_slash_io-bin-ttf";
       packageName = "@ot-builder/io-bin-ttf";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-ttf/-/io-bin-ttf-1.4.0.tgz";
-        sha512 = "L57uAa6PkuZ5basqRHgV2YIam6oDM3UaelnTrskeiIdWBHuqutK3a8wFvG71fd3zcqITrrKghHIV6GrfgLWYPA==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-ttf/-/io-bin-ttf-1.5.0.tgz";
+        sha512 = "tiyuas19970WkKNFRC4ja9rMD0mgt9arbYbNeQvDjFB9MPsV0+BNgk6fpGr2o8tmYpw73/TZcJfEgIiEICJKtg==";
       };
     };
-    "@ot-builder/io-bin-vtt-private-1.4.0" = {
+    "@ot-builder/io-bin-vtt-private-1.5.0" = {
       name = "_at_ot-builder_slash_io-bin-vtt-private";
       packageName = "@ot-builder/io-bin-vtt-private";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/io-bin-vtt-private/-/io-bin-vtt-private-1.4.0.tgz";
-        sha512 = "lx37kO2n6pP3na+zwnSiqJ1XecI1sfF7nklclg8uoCROE87WbEmDbBzsgkqXBxHYZ3pVj1ZDydih6NaLXJ9w8w==";
+        url = "https://registry.npmjs.org/@ot-builder/io-bin-vtt-private/-/io-bin-vtt-private-1.5.0.tgz";
+        sha512 = "yz7WLqLI8XZ0KgYowu5ct9rbOS97TQRwudndDDXJZynSFZyUK5wYV9hfqXwKPDQI2QViAWhYBUJDR94zeSe7MA==";
       };
     };
-    "@ot-builder/ot-1.4.0" = {
+    "@ot-builder/ot-1.5.0" = {
       name = "_at_ot-builder_slash_ot";
       packageName = "@ot-builder/ot";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot/-/ot-1.4.0.tgz";
-        sha512 = "LCJOmacVoVJfeEPb+it3XtYkoz8Q/RBUBgmnHRmovaI0lGLSqK0hOfauaIRap9USS00hT17s7QDPeST+lvlAQA==";
+        url = "https://registry.npmjs.org/@ot-builder/ot/-/ot-1.5.0.tgz";
+        sha512 = "8nmX1B5D7974LaqH2ieIcZ4TDaAILGvANipOL5e75MMt6jF1O72UUHzO4vJ/llIsZYasqm9+rlv6dkp9CkveZA==";
       };
     };
-    "@ot-builder/ot-encoding-1.4.0" = {
+    "@ot-builder/ot-encoding-1.5.0" = {
       name = "_at_ot-builder_slash_ot-encoding";
       packageName = "@ot-builder/ot-encoding";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-encoding/-/ot-encoding-1.4.0.tgz";
-        sha512 = "qs8+zx1Ebj2sQyYJjv1BgTKYECNqvA7HZYdVjs2reHm27YwI5uoamQAJ0rQ6+H2xp1pxCI9qRNMAucKkF5Hx3Q==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-encoding/-/ot-encoding-1.5.0.tgz";
+        sha512 = "cWVGpb/A3jKPqobIdMUdScq1tUd+ew282P/yLFejIeJvaE4U3zZas6wS9pg4se6uiRsdf8bY5xSjAvnfbJAM1w==";
       };
     };
-    "@ot-builder/ot-ext-private-1.4.0" = {
+    "@ot-builder/ot-ext-private-1.5.0" = {
       name = "_at_ot-builder_slash_ot-ext-private";
       packageName = "@ot-builder/ot-ext-private";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-ext-private/-/ot-ext-private-1.4.0.tgz";
-        sha512 = "L4HihtweRtlBfBOdjBGjUxhqTG/fEGbNgMcsbvrIJIpwglpziAoYosdXxtY5pMYi0TM8ZcWhDtIB2KXTYsy0+g==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-ext-private/-/ot-ext-private-1.5.0.tgz";
+        sha512 = "gxbsodaN07XLNtTNLIWhhgHCsXjOs9D7M7c4i40UTv4S80FGzpyJpz2VOW1BJ8SUQjGFP/eeDdSyHWtmrBH21g==";
       };
     };
-    "@ot-builder/ot-glyphs-1.4.0" = {
+    "@ot-builder/ot-glyphs-1.5.0" = {
       name = "_at_ot-builder_slash_ot-glyphs";
       packageName = "@ot-builder/ot-glyphs";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-glyphs/-/ot-glyphs-1.4.0.tgz";
-        sha512 = "4ryJxvvX6v3A1g+aQXgpRlbuVQBSCjukxYMfhnWeLadVPM5Q6VKP0Q1VfZcbJFve/A82ltlGRwhresHy/hXiOw==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-glyphs/-/ot-glyphs-1.5.0.tgz";
+        sha512 = "SxqNTishqTKf36tt6XRQkXXLD3fw+7azbf/kSu4A0Pq6MdmRMy5CGs6HDA9KhqaPpmq1UpMk876QPA9vCXoLPw==";
       };
     };
-    "@ot-builder/ot-layout-1.4.0" = {
+    "@ot-builder/ot-layout-1.5.0" = {
       name = "_at_ot-builder_slash_ot-layout";
       packageName = "@ot-builder/ot-layout";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-layout/-/ot-layout-1.4.0.tgz";
-        sha512 = "DxLQ8jC/dn29pbCy5vKjHhmsLZ4uOJZjiFkSSoi7N4Di+DILiZfIcRJigbJsnqBF3XRUNpgUQs5HvJl65dMjcA==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-layout/-/ot-layout-1.5.0.tgz";
+        sha512 = "fdmOl/HZi2Jdl0Fh8bx7CCG9s+jXimH+UCez3LPhTXgNNvOaFVqhABPtP+tAepqWi9J0MjBCeWMnFUmGiSa5gw==";
       };
     };
-    "@ot-builder/ot-metadata-1.4.0" = {
+    "@ot-builder/ot-metadata-1.5.0" = {
       name = "_at_ot-builder_slash_ot-metadata";
       packageName = "@ot-builder/ot-metadata";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-metadata/-/ot-metadata-1.4.0.tgz";
-        sha512 = "g64WKXevoJmlN8QyKL+Ew6DwEPNpdoC2Pn/GCBLoyW8KfEzUg/wUCykZu333X+vKSxqiqssLH/aoUOg6uf8BFA==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-metadata/-/ot-metadata-1.5.0.tgz";
+        sha512 = "OARTkm/LDERbwo6I0BMdAmA0D6vMP2A0IaQlOWn1PxjNoHOZQY6U+1er1H//xJQZ4aA5BZtRgOoQebjQpYELbg==";
       };
     };
-    "@ot-builder/ot-name-1.4.0" = {
+    "@ot-builder/ot-name-1.5.0" = {
       name = "_at_ot-builder_slash_ot-name";
       packageName = "@ot-builder/ot-name";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-name/-/ot-name-1.4.0.tgz";
-        sha512 = "CGTy3J9P2M03DFcEmR6y4nb3aK6sEaPgXcCR6rXa6gTIxfkVzhpijZzcKUcmzUwh6LYOX3w4RG6Vd9UVOmm+4g==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-name/-/ot-name-1.5.0.tgz";
+        sha512 = "b/NSfonC0QqMVNBloOPHeeQIqVAaHaID0oVD/C9jEGKPtp3zpSgS2oycmtZ8JmSqwS2qfJTU9lfzusT6E/LWsw==";
       };
     };
-    "@ot-builder/ot-sfnt-1.4.0" = {
+    "@ot-builder/ot-sfnt-1.5.0" = {
       name = "_at_ot-builder_slash_ot-sfnt";
       packageName = "@ot-builder/ot-sfnt";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-sfnt/-/ot-sfnt-1.4.0.tgz";
-        sha512 = "smgt8TMtB+eMpA4mTzB2NwORcv1/+HhFmys2gr8cYorEvqIgRP15kiC7tVC2in2mKYxIq4+e3Z+MciCCdxTXfQ==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-sfnt/-/ot-sfnt-1.5.0.tgz";
+        sha512 = "imCGAlN78Yc2HQDVUzNPixj0ERT+PEodi9bp+wINLVYF9G6CgRMTIuSgG0KBK9H8T20sBrorOFfcZFQJuucy4A==";
       };
     };
-    "@ot-builder/ot-standard-glyph-namer-1.4.0" = {
+    "@ot-builder/ot-standard-glyph-namer-1.5.0" = {
       name = "_at_ot-builder_slash_ot-standard-glyph-namer";
       packageName = "@ot-builder/ot-standard-glyph-namer";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-standard-glyph-namer/-/ot-standard-glyph-namer-1.4.0.tgz";
-        sha512 = "dFGkdynJ4sMyPSQkWYJpuNFqAGMXDV4tu0mPevSwrJFudefBmuLIVlOc+rJq19CG+tYq787JJe0CTXIvoq+sNw==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-standard-glyph-namer/-/ot-standard-glyph-namer-1.5.0.tgz";
+        sha512 = "aZkJBn2kog2eyAcXygzvYte5uH7GCVgO2jM9QeB4bpWoxXYjIF3dy58hsbZ6zKMXMncphOFcnTgxgvct45bglA==";
       };
     };
-    "@ot-builder/ot-vtt-private-1.4.0" = {
+    "@ot-builder/ot-vtt-private-1.5.0" = {
       name = "_at_ot-builder_slash_ot-vtt-private";
       packageName = "@ot-builder/ot-vtt-private";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/ot-vtt-private/-/ot-vtt-private-1.4.0.tgz";
-        sha512 = "nVg1Y/y3OzqpVz48oM9Ic6YzUJ8UrrT/5iVZMcQ99m5Zon9hcpp/RrYldOF58XuPO0MtgjLME2g4uFUJWSss7Q==";
+        url = "https://registry.npmjs.org/@ot-builder/ot-vtt-private/-/ot-vtt-private-1.5.0.tgz";
+        sha512 = "iMQP2zI56mZJqG98VVAswCe2f2NgApW0BtAKfC/e3VKDJPWbsJHcIHnkcRReaC4FzAmzxqarY1IyeNC94xSNVg==";
       };
     };
-    "@ot-builder/prelude-1.4.0" = {
+    "@ot-builder/prelude-1.5.0" = {
       name = "_at_ot-builder_slash_prelude";
       packageName = "@ot-builder/prelude";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/prelude/-/prelude-1.4.0.tgz";
-        sha512 = "Q5kqu1DYOeRAcHS15gX1IpoyhR1rffrfKDUcex6nd+GizBPJBdbOtIWpuz7uaOR1zYBCOWuLsyW+h3vKqK0wEw==";
+        url = "https://registry.npmjs.org/@ot-builder/prelude/-/prelude-1.5.0.tgz";
+        sha512 = "b3tJ4GTZvK+sFNHlihFaOTxeMOWmSqIDKGOJuV9l6Svn/1moTcO3VWjRuriHmsrA0ZuaSQxTKMf3Na5BYiTnXw==";
       };
     };
-    "@ot-builder/primitive-1.4.0" = {
+    "@ot-builder/primitive-1.5.0" = {
       name = "_at_ot-builder_slash_primitive";
       packageName = "@ot-builder/primitive";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/primitive/-/primitive-1.4.0.tgz";
-        sha512 = "Op+KrrhVUkFa7FXqTLbtdTYJbIZA4dHFRB7pE7YqEqfjtYv1tcMKGjQIneXi9kO3yG1T6SDdY9V5UTpIs/rfUQ==";
+        url = "https://registry.npmjs.org/@ot-builder/primitive/-/primitive-1.5.0.tgz";
+        sha512 = "jJN98wURFXGa8KTfjrIlB54AF2QJw+w9eQuJ812mt8Nmw2Mle+IaYCRAiD8IKWjRWMZcd6bztkOoDbCavqcrUQ==";
       };
     };
-    "@ot-builder/rectify-1.4.0" = {
+    "@ot-builder/rectify-1.5.0" = {
       name = "_at_ot-builder_slash_rectify";
       packageName = "@ot-builder/rectify";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/rectify/-/rectify-1.4.0.tgz";
-        sha512 = "UMhDyFi00B/6Ols0/WJ8aYdNnHadnSTtc3tN97tjnEs0ZS6Tym6SaL044+ehINJA16kazqHqFJMbwLjA/KrFow==";
+        url = "https://registry.npmjs.org/@ot-builder/rectify/-/rectify-1.5.0.tgz";
+        sha512 = "Ivx2VxlMB/Btq4+YLaH4KhPb+eoU4Nsg4UMd5u0BXQ+JjC3HvUbyXDWRMJn3ACDLvvkXSqjEprf7G3BFp58p7g==";
       };
     };
-    "@ot-builder/stat-glyphs-1.4.0" = {
+    "@ot-builder/stat-glyphs-1.5.0" = {
       name = "_at_ot-builder_slash_stat-glyphs";
       packageName = "@ot-builder/stat-glyphs";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/stat-glyphs/-/stat-glyphs-1.4.0.tgz";
-        sha512 = "YgMHUivVuXLd+b2TXLHEQDiCjBnmDwDGTfFiGGbaM/XrCdYMzdHNjbpHWhNx4GODcAplkIQm3j3kwFdM4L1wwA==";
+        url = "https://registry.npmjs.org/@ot-builder/stat-glyphs/-/stat-glyphs-1.5.0.tgz";
+        sha512 = "OMCvsvxsX0dkjWcde3J3sxF1xRbzVm4uyz+G9sgjRXznBLVKtvstTpspFqpTfhUFEcjRU+7AJhWNn4nvXQR/jw==";
       };
     };
-    "@ot-builder/trace-1.4.0" = {
+    "@ot-builder/trace-1.5.0" = {
       name = "_at_ot-builder_slash_trace";
       packageName = "@ot-builder/trace";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/trace/-/trace-1.4.0.tgz";
-        sha512 = "fNt9Nf03I7VuLbeziVA5c1pMx9gr8K92Z7UOUnx387eIjeeOLFY98oVSO+XGXFOd+z5lapR9LWhhhaVlIw+YzA==";
+        url = "https://registry.npmjs.org/@ot-builder/trace/-/trace-1.5.0.tgz";
+        sha512 = "qegG5Oc9gYHWMSnV9qLqYQnQAq79SRHo/apQtnnpD4o7d1SsxDPqR+xspzl3dprPRYSqq8zUKVZ5mxnLNcLPWQ==";
       };
     };
-    "@ot-builder/var-store-1.4.0" = {
+    "@ot-builder/var-store-1.5.0" = {
       name = "_at_ot-builder_slash_var-store";
       packageName = "@ot-builder/var-store";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/var-store/-/var-store-1.4.0.tgz";
-        sha512 = "IGCQqOeLezgGiohkQdsNJGIkyfV7iZVns83K3i+0tBgSaFOZyNLCjy02eHP6u6Z3a5z0NXjT0yalKNaRLLkGnA==";
+        url = "https://registry.npmjs.org/@ot-builder/var-store/-/var-store-1.5.0.tgz";
+        sha512 = "NufILxFqLWcXjhJqG0IgVCDr0ey/e4Q+mX8k0o+SV1/yHdVxug5CrBQnmF7/yIB1Au9FgdZp2eal2Un1gjxQ4A==";
       };
     };
-    "@ot-builder/variance-1.4.0" = {
+    "@ot-builder/variance-1.5.0" = {
       name = "_at_ot-builder_slash_variance";
       packageName = "@ot-builder/variance";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@ot-builder/variance/-/variance-1.4.0.tgz";
-        sha512 = "TwlAMp8proF7/y3cWP8Vzxq4cbUUB0TzcS9s2vc4L/IGNdFtuIU7RiSO2A4cHoaBMdJSzCDm5CZ1DQopz/607A==";
+        url = "https://registry.npmjs.org/@ot-builder/variance/-/variance-1.5.0.tgz";
+        sha512 = "iA8tovocbymAAhA1zRO29vltUlZGfLjYaukyLu3mH8XBgNuxTwb0aUbQ9muDKyWS+E5Q23+KN/PaA8ZwUtlHlA==";
       };
     };
-    "@parcel/bundler-default-2.3.2" = {
+    "@parcel/bundler-default-2.4.0" = {
       name = "_at_parcel_slash_bundler-default";
       packageName = "@parcel/bundler-default";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/bundler-default/-/bundler-default-2.3.2.tgz";
-        sha512 = "JUrto4mjSD0ic9dEqRp0loL5o3HVYHja1ZIYSq+rBl2UWRV6/9cGTb07lXOCqqm0BWE+hQ4krUxB76qWaF0Lqw==";
+        url = "https://registry.npmjs.org/@parcel/bundler-default/-/bundler-default-2.4.0.tgz";
+        sha512 = "RaXlxo0M51739Ko3bsOJpDBZlJ+cqkDoBTozNeSc65jS2TMBIBWLMapm8095qmty39OrgYNhzjgPiIlKDS/LWA==";
       };
     };
-    "@parcel/cache-2.3.2" = {
+    "@parcel/cache-2.4.0" = {
       name = "_at_parcel_slash_cache";
       packageName = "@parcel/cache";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/cache/-/cache-2.3.2.tgz";
-        sha512 = "Xxq+ekgcFEme6Fn1v7rEOBkyMOUOUu7eNqQw0l6HQS+INZ2Q7YzzfdW7pI8rEOAAICVg5BWKpmBQZpgJlT+HxQ==";
+        url = "https://registry.npmjs.org/@parcel/cache/-/cache-2.4.0.tgz";
+        sha512 = "oOudoAafrCAHQY0zkU7gVHG1pAGBUz9rht7Tx4WupTmAH0O0F5UnZs6XbjoBJaPHg+CYUXK7v9wQcrNA72E3GA==";
       };
     };
-    "@parcel/codeframe-2.3.2" = {
+    "@parcel/codeframe-2.4.0" = {
       name = "_at_parcel_slash_codeframe";
       packageName = "@parcel/codeframe";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/codeframe/-/codeframe-2.3.2.tgz";
-        sha512 = "ireQALcxxrTdIEpzTOoMo/GpfbFm1qlyezeGl3Hce3PMvHLg3a5S6u/Vcy7SAjdld5GfhHEqVY+blME6Z4CyXQ==";
+        url = "https://registry.npmjs.org/@parcel/codeframe/-/codeframe-2.4.0.tgz";
+        sha512 = "PJ3W9Z0sjoS2CANyo50c+LEr9IRZrtu0WsVPSYZ5ZYRuSXrSa/6PcAlnkyDk2+hi7Od8ncT2bmDexl0Oar3Jyg==";
       };
     };
-    "@parcel/compressor-raw-2.3.2" = {
+    "@parcel/compressor-raw-2.4.0" = {
       name = "_at_parcel_slash_compressor-raw";
       packageName = "@parcel/compressor-raw";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/compressor-raw/-/compressor-raw-2.3.2.tgz";
-        sha512 = "8dIoFwinYK6bOTpnZOAwwIv0v73y0ezsctPmfMnIqVQPn7wJwfhw/gbKVcmK5AkgQMkyid98hlLZoaZtGF1Mdg==";
+        url = "https://registry.npmjs.org/@parcel/compressor-raw/-/compressor-raw-2.4.0.tgz";
+        sha512 = "ZErX14fTc0gKIgtnuqW7Clfln4dpXWfUaJQQIf5C3x/LkpUeEhdXeKntkvSxOddDk2JpIKDwqzAxEMZUnDo4Nw==";
       };
     };
-    "@parcel/config-default-2.3.2" = {
+    "@parcel/config-default-2.4.0" = {
       name = "_at_parcel_slash_config-default";
       packageName = "@parcel/config-default";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/config-default/-/config-default-2.3.2.tgz";
-        sha512 = "E7/iA7fGCYvXU3u6zF9nxjeDVsgjCN6MVvDjymjaxYMoDWTIsPV245SBEXqzgtmzbMAV+VAl4rVWLMB4pzMt9g==";
+        url = "https://registry.npmjs.org/@parcel/config-default/-/config-default-2.4.0.tgz";
+        sha512 = "pFOPBXPO6HGqNWTLkcK5i8haMOrRgUouUhcWPGWDpN9IPUYFK2E/O1E/uyMjIA1mSL3FnazI+jJwZ45NhKPpIA==";
       };
     };
-    "@parcel/core-2.3.2" = {
+    "@parcel/core-2.4.0" = {
       name = "_at_parcel_slash_core";
       packageName = "@parcel/core";
-      version = "2.3.2";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@parcel/core/-/core-2.4.0.tgz";
+        sha512 = "EWZ2UWtIuwDc3fgsKyyTLpNNPoG8Yk2L117ICWF/+cqY8z/wJHm2KwLbeplDeq524shav0GJ9O4CemP3JPx0Nw==";
+      };
+    };
+    "@parcel/css-1.7.3" = {
+      name = "_at_parcel_slash_css";
+      packageName = "@parcel/css";
+      version = "1.7.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/core/-/core-2.3.2.tgz";
-        sha512 = "gdJzpsgeUhv9H8T0UKVmyuptiXdduEfKIUx0ci+/PGhq8cCoiFnlnuhW6H7oLr79OUc+YJStabDJuG4U2A6ysw==";
+        url = "https://registry.npmjs.org/@parcel/css/-/css-1.7.3.tgz";
+        sha512 = "rgdRX4Uk31EvzH/mUScL0wdXtkci3U5N1W2pgam+9S10vQy4uONhWBepZ1tUCjONHLacGXr1jp3LbG/HI7LiTw==";
       };
     };
-    "@parcel/diagnostic-2.3.2" = {
+    "@parcel/css-darwin-arm64-1.7.3" = {
+      name = "_at_parcel_slash_css-darwin-arm64";
+      packageName = "@parcel/css-darwin-arm64";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@parcel/css-darwin-arm64/-/css-darwin-arm64-1.7.3.tgz";
+        sha512 = "m3HDY+Rh8HJxmLELKAvCpF59vLS7FWtgBODHxl8G9Jl2CnGtXpXvdpyeMxNsTE+2QuPC+a5QT7IeZAKb2Gjmxg==";
+      };
+    };
+    "@parcel/css-darwin-x64-1.7.3" = {
+      name = "_at_parcel_slash_css-darwin-x64";
+      packageName = "@parcel/css-darwin-x64";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@parcel/css-darwin-x64/-/css-darwin-x64-1.7.3.tgz";
+        sha512 = "LuhweXKxVwrz/hjAOm9XNRMSL+p23px20nhSCASkyUP7Higaxza948W3TSQdoL3YyR+wQxQH8Yj+R/T8Tz3E3g==";
+      };
+    };
+    "@parcel/css-linux-arm-gnueabihf-1.7.3" = {
+      name = "_at_parcel_slash_css-linux-arm-gnueabihf";
+      packageName = "@parcel/css-linux-arm-gnueabihf";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@parcel/css-linux-arm-gnueabihf/-/css-linux-arm-gnueabihf-1.7.3.tgz";
+        sha512 = "/pd9Em18zMvt7eDZAMpNBEwF7c4VPVhAtBOZ59ClFrsXCTDNYP7mSy0cwNgtLelCRZCGAQmZNBDNQPH7vO3rew==";
+      };
+    };
+    "@parcel/css-linux-arm64-gnu-1.7.3" = {
+      name = "_at_parcel_slash_css-linux-arm64-gnu";
+      packageName = "@parcel/css-linux-arm64-gnu";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@parcel/css-linux-arm64-gnu/-/css-linux-arm64-gnu-1.7.3.tgz";
+        sha512 = "5aKiEhQK40riO4iVKzRqISzgYK+7Z7i3e6JTSz+/BHuQyHEUaBe/RuJ8Z0BDQtFz0HmWQlrQCd+7hd0Xgd8vYQ==";
+      };
+    };
+    "@parcel/css-linux-arm64-musl-1.7.3" = {
+      name = "_at_parcel_slash_css-linux-arm64-musl";
+      packageName = "@parcel/css-linux-arm64-musl";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@parcel/css-linux-arm64-musl/-/css-linux-arm64-musl-1.7.3.tgz";
+        sha512 = "Wf7/aIueDED2JqBMfZvzbBAFSaPmd3TR28bD2pmP7CI/jZnm9vHVKMdOLgt9NKSSSjdGrp+VM410CsrUM7xcOw==";
+      };
+    };
+    "@parcel/css-linux-x64-gnu-1.7.3" = {
+      name = "_at_parcel_slash_css-linux-x64-gnu";
+      packageName = "@parcel/css-linux-x64-gnu";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@parcel/css-linux-x64-gnu/-/css-linux-x64-gnu-1.7.3.tgz";
+        sha512 = "0ZADbuFklUrHC1p2uPY4BPcN07jUTMqJzr/SSdnGN2XiXgiVZGcDCMHUj0DvC9Vwy11DDM6Rnw4QBbKHG+QGjQ==";
+      };
+    };
+    "@parcel/css-linux-x64-musl-1.7.3" = {
+      name = "_at_parcel_slash_css-linux-x64-musl";
+      packageName = "@parcel/css-linux-x64-musl";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@parcel/css-linux-x64-musl/-/css-linux-x64-musl-1.7.3.tgz";
+        sha512 = "mFWWM8lX2OIID81YQuDDt9zTqof0B7UcEcs0huE7Zbs60uLEEQupdf8iH0yh5EOhxPt3sRcQnGXf2QTrXdjIMA==";
+      };
+    };
+    "@parcel/css-win32-x64-msvc-1.7.3" = {
+      name = "_at_parcel_slash_css-win32-x64-msvc";
+      packageName = "@parcel/css-win32-x64-msvc";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@parcel/css-win32-x64-msvc/-/css-win32-x64-msvc-1.7.3.tgz";
+        sha512 = "KUFEMQcoP7DG3QbsN21OxhjHkfQ1BARn7D9puX75bV5N1F1kv557aaLkQZiMsgiYOL4tmJvsdQXutG7x++3j4Q==";
+      };
+    };
+    "@parcel/diagnostic-2.4.0" = {
       name = "_at_parcel_slash_diagnostic";
       packageName = "@parcel/diagnostic";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/diagnostic/-/diagnostic-2.3.2.tgz";
-        sha512 = "/xW93Az4AOiifuYW/c4CDbUcu3lx5FcUDAj9AGiR9NSTsF/ROC/RqnxvQ3AGtqa14R7vido4MXEpY3JEp6FsqA==";
+        url = "https://registry.npmjs.org/@parcel/diagnostic/-/diagnostic-2.4.0.tgz";
+        sha512 = "TjWO/b2zMFhub5ouwGjazMm7iAUvdmXBfWmjrg4TBhUbhoQwBnyWfvMDtAYo7PcvXfxVPgPZv86Nv6Ym5H6cHQ==";
       };
     };
-    "@parcel/events-2.3.2" = {
+    "@parcel/events-2.4.0" = {
       name = "_at_parcel_slash_events";
       packageName = "@parcel/events";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/events/-/events-2.3.2.tgz";
-        sha512 = "WiYIwXMo4Vd+pi58vRoHkul8TPE5VEfMY+3FYwVCKPl/LYqSD+vz6wMx9uG18mEbB1d/ofefv5ZFQNtPGKO4tQ==";
+        url = "https://registry.npmjs.org/@parcel/events/-/events-2.4.0.tgz";
+        sha512 = "DEaEtFbhOhNAEmiXJ3MyF8Scq+sNDKiTyLax4lAC5/dpE5GvwfNnoD17C2+0gDuuDpdQkdHfXfvr50aYFt7jcw==";
       };
     };
     "@parcel/fs-1.11.0" = {
@@ -6862,40 +7006,40 @@ let
         sha512 = "86RyEqULbbVoeo8OLcv+LQ1Vq2PKBAvWTU9fCgALxuCTbbs5Ppcvll4Vr+Ko1AnmMzja/k++SzNAwJfeQXVlpA==";
       };
     };
-    "@parcel/fs-2.3.2" = {
+    "@parcel/fs-2.4.0" = {
       name = "_at_parcel_slash_fs";
       packageName = "@parcel/fs";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/fs/-/fs-2.3.2.tgz";
-        sha512 = "XV+OsnRpN01QKU37lBN0TFKvv7uPKfQGbqFqYOrMbXH++Ae8rBU0Ykz+Yu4tv2h7shMlde+AMKgRnRTAJZpWEQ==";
+        url = "https://registry.npmjs.org/@parcel/fs/-/fs-2.4.0.tgz";
+        sha512 = "CnUlWGUJ52SJVQi8QnaAPPQZOADmHMV9D9aX9GLcDm5XLT3Em7vmesG4bNLdMLwzYuzAtenhcWmuRCACuYztHw==";
       };
     };
-    "@parcel/fs-search-2.3.2" = {
+    "@parcel/fs-search-2.4.0" = {
       name = "_at_parcel_slash_fs-search";
       packageName = "@parcel/fs-search";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/fs-search/-/fs-search-2.3.2.tgz";
-        sha512 = "u3DTEFnPtKuZvEtgGzfVjQUytegSSn3POi7WfwMwPIaeDPfYcyyhfl+c96z7VL9Gk/pqQ99/cGyAwFdFsnxxXA==";
+        url = "https://registry.npmjs.org/@parcel/fs-search/-/fs-search-2.4.0.tgz";
+        sha512 = "W/Vu6wbZk4wuB6AVdMkyymwh/S8Peed/PgJgSsApYD6lSTD315I6OuEdxZh3lWY+dqQdog/NJ7dvi/hdpH/Iqw==";
       };
     };
-    "@parcel/graph-2.3.2" = {
+    "@parcel/graph-2.4.0" = {
       name = "_at_parcel_slash_graph";
       packageName = "@parcel/graph";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/graph/-/graph-2.3.2.tgz";
-        sha512 = "ltTBM3IEqumgmy4ABBFETT8NtAwSsjD9mY3WCyJ5P8rUshfVCg093rvBPbpuJYMaH/TV1AHVaWfZqaZ4JQDIQQ==";
+        url = "https://registry.npmjs.org/@parcel/graph/-/graph-2.4.0.tgz";
+        sha512 = "5TZIAfDITkJCzgH4j4OQhnIvjV9IFwWqNBJanRl5QQTmKvdcODS3WbnK1SOJ+ZltcLVXMB+HNXmL0bX0tVolcw==";
       };
     };
-    "@parcel/hash-2.3.2" = {
+    "@parcel/hash-2.4.0" = {
       name = "_at_parcel_slash_hash";
       packageName = "@parcel/hash";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/hash/-/hash-2.3.2.tgz";
-        sha512 = "SMtYTsHihws/wqdVnOr0QAGyGYsW9rJSJkkoRujUxo8l2ctnBN1ztv89eOUrdtgHsmcnj/oz1yw6sN38X+BUng==";
+        url = "https://registry.npmjs.org/@parcel/hash/-/hash-2.4.0.tgz";
+        sha512 = "nB+wYNUhe6+G8M7vQhdeFXtpYJYwJgBHOPZ7Hd9O2jdlamWjDbw0t/u1dJbYvGJ8ZDtLDwiItawQVpuVdskQ9g==";
       };
     };
     "@parcel/logger-1.11.1" = {
@@ -6907,211 +7051,211 @@ let
         sha512 = "9NF3M6UVeP2udOBDILuoEHd8VrF4vQqoWHEafymO1pfSoOMfxrSJZw1MfyAAIUN/IFp9qjcpDCUbDZB+ioVevA==";
       };
     };
-    "@parcel/logger-2.3.2" = {
+    "@parcel/logger-2.4.0" = {
       name = "_at_parcel_slash_logger";
       packageName = "@parcel/logger";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/logger/-/logger-2.3.2.tgz";
-        sha512 = "jIWd8TXDQf+EnNWSa7Q10lSQ6C1LSH8OZkTlaINrfVIw7s+3tVxO3I4pjp7/ARw7RX2gdNPlw6fH4Gn/HvvYbw==";
+        url = "https://registry.npmjs.org/@parcel/logger/-/logger-2.4.0.tgz";
+        sha512 = "DqfU0Zcs/0a7VBk+MsjJ80C66w4kM9EbkO3G12NIyEjNeG50ayW2CE9rUuJ91JaM9j0NFM1P82eyLpQPFFaVPw==";
       };
     };
-    "@parcel/markdown-ansi-2.3.2" = {
+    "@parcel/markdown-ansi-2.4.0" = {
       name = "_at_parcel_slash_markdown-ansi";
       packageName = "@parcel/markdown-ansi";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/markdown-ansi/-/markdown-ansi-2.3.2.tgz";
-        sha512 = "l01ggmag5QScCk9mYA0xHh5TWSffR84uPFP2KvaAMQQ9NLNufcFiU0mn/Mtr3pCb5L5dSzmJ+Oo9s7P1Kh/Fmg==";
+        url = "https://registry.npmjs.org/@parcel/markdown-ansi/-/markdown-ansi-2.4.0.tgz";
+        sha512 = "gPUP1xikxHiu2kFyPy35pfuVkFgAmcywO8YDQj7iYcB+k7l4QPpIYFYGXn2QADV4faf66ncMeTD4uYV8c0GqjQ==";
       };
     };
-    "@parcel/namer-default-2.3.2" = {
+    "@parcel/namer-default-2.4.0" = {
       name = "_at_parcel_slash_namer-default";
       packageName = "@parcel/namer-default";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/namer-default/-/namer-default-2.3.2.tgz";
-        sha512 = "3QUMC0+5+3KMKfoAxYAbpZtuRqTgyZKsGDWzOpuqwemqp6P8ahAvNPwSCi6QSkGcTmvtYwBu9/NHPSONxIFOfg==";
+        url = "https://registry.npmjs.org/@parcel/namer-default/-/namer-default-2.4.0.tgz";
+        sha512 = "DfL+Gx0Tyoa0vsgRpNybXjuKbWNw8MTVpy7Dk7r0btfVsn1jy3SSwlxH4USf76gb00/pK6XBsMp9zn7Z8ePREQ==";
       };
     };
-    "@parcel/node-resolver-core-2.3.2" = {
+    "@parcel/node-resolver-core-2.4.0" = {
       name = "_at_parcel_slash_node-resolver-core";
       packageName = "@parcel/node-resolver-core";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/node-resolver-core/-/node-resolver-core-2.3.2.tgz";
-        sha512 = "wmrnMNzJN4GuHw2Ftho+BWgSWR6UCkW3XoMdphqcxpw/ieAdS2a+xYSosYkZgQZ6lGutSvLyJ1CkVvP6RLIdQQ==";
+        url = "https://registry.npmjs.org/@parcel/node-resolver-core/-/node-resolver-core-2.4.0.tgz";
+        sha512 = "qiN97XcfW2fYNoYuVEhNKuVPEJKj5ONQl0fqr/NEMmYvWz3bVKjgiXNJwW558elZvCI08gEbdxgyThpuFFQeKQ==";
       };
     };
-    "@parcel/optimizer-cssnano-2.3.2" = {
-      name = "_at_parcel_slash_optimizer-cssnano";
-      packageName = "@parcel/optimizer-cssnano";
-      version = "2.3.2";
+    "@parcel/optimizer-css-2.4.0" = {
+      name = "_at_parcel_slash_optimizer-css";
+      packageName = "@parcel/optimizer-css";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/optimizer-cssnano/-/optimizer-cssnano-2.3.2.tgz";
-        sha512 = "wTBOxMiBI38NAB9XIlQZRCjS59+EWjWR9M04D3TWyxl+dL5gYMc1cl4GNynUnmcPdz+3s1UbOdo5/8V90wjiiw==";
+        url = "https://registry.npmjs.org/@parcel/optimizer-css/-/optimizer-css-2.4.0.tgz";
+        sha512 = "LQmjjOGsHEHKTJqfHR2eJyhWhLXvHP0uOAU+qopBttYYlB2J/vMK9RYAye5cyAb8bQmV8wAdi2mq9rnt7FMSPw==";
       };
     };
-    "@parcel/optimizer-htmlnano-2.3.2" = {
+    "@parcel/optimizer-htmlnano-2.4.0" = {
       name = "_at_parcel_slash_optimizer-htmlnano";
       packageName = "@parcel/optimizer-htmlnano";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/optimizer-htmlnano/-/optimizer-htmlnano-2.3.2.tgz";
-        sha512 = "U8C0TDSxsx8HmHaLW0Zc7ha1fXQynzhvBjCRMGYnOiLiw0MOfLQxzQ2WKVSeCotmdlF63ayCwxWsd6BuqStiKQ==";
+        url = "https://registry.npmjs.org/@parcel/optimizer-htmlnano/-/optimizer-htmlnano-2.4.0.tgz";
+        sha512 = "02EbeElLgNOAYhGU7fFBahpoKrX5G/yzahpaoKB/ypScM4roSsAMBkGcluboR5L10YRsvfvJEpxvfGyDA3tPmw==";
       };
     };
-    "@parcel/optimizer-image-2.3.2" = {
+    "@parcel/optimizer-image-2.4.0" = {
       name = "_at_parcel_slash_optimizer-image";
       packageName = "@parcel/optimizer-image";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/optimizer-image/-/optimizer-image-2.3.2.tgz";
-        sha512 = "HOk3r5qdvY/PmI7Q3i2qEgFH3kP2QWG4Wq3wmC4suaF1+c2gpiQc+HKHWp4QvfbH3jhT00c5NxQyqPhbXeNI9Q==";
+        url = "https://registry.npmjs.org/@parcel/optimizer-image/-/optimizer-image-2.4.0.tgz";
+        sha512 = "Q4onaBMPkDyYxPzrb8ytBUftaQZFepj9dSUgq+ETuHDzkgia0tomDPfCqrw6ld0qvYyANzXTP5+LC4g0i5yh+A==";
       };
     };
-    "@parcel/optimizer-svgo-2.3.2" = {
+    "@parcel/optimizer-svgo-2.4.0" = {
       name = "_at_parcel_slash_optimizer-svgo";
       packageName = "@parcel/optimizer-svgo";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/optimizer-svgo/-/optimizer-svgo-2.3.2.tgz";
-        sha512 = "l7WvZ5+e7D1mVmLUxMVaSb29cviXzuvSY2OpQs0ukdPACDqag+C65hWMzwTiOSSRGPMIu96kQKpeVru2YjibhA==";
+        url = "https://registry.npmjs.org/@parcel/optimizer-svgo/-/optimizer-svgo-2.4.0.tgz";
+        sha512 = "mwvGuCqVuNCAuMlp2maFE/Uz9ud1T1AuX0f6cCRczjFYiwZuIr/0iDdfFzSziOkVo1MRAGAZNa0dRR/UzCZtVg==";
       };
     };
-    "@parcel/optimizer-terser-2.3.2" = {
+    "@parcel/optimizer-terser-2.4.0" = {
       name = "_at_parcel_slash_optimizer-terser";
       packageName = "@parcel/optimizer-terser";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/optimizer-terser/-/optimizer-terser-2.3.2.tgz";
-        sha512 = "dOapHhfy0xiNZa2IoEyHGkhhla07xsja79NPem14e5jCqY6Oi40jKNV4ab5uu5u1elWUjJuw69tiYbkDZWbKQw==";
+        url = "https://registry.npmjs.org/@parcel/optimizer-terser/-/optimizer-terser-2.4.0.tgz";
+        sha512 = "PdCgRgXNSY6R1HTV9VG2MHp1CgUbP5pslCyxvlbUmQAS6bvEpMOpn3qSd+U28o7mGE/qXIhvpDyi808sb+MEcg==";
       };
     };
-    "@parcel/package-manager-2.3.2" = {
+    "@parcel/package-manager-2.4.0" = {
       name = "_at_parcel_slash_package-manager";
       packageName = "@parcel/package-manager";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/package-manager/-/package-manager-2.3.2.tgz";
-        sha512 = "pAQfywKVORY8Ee+NHAyKzzQrKbnz8otWRejps7urwhDaTVLfAd5C/1ZV64ATZ9ALYP9jyoQ8bTaxVd4opcSuwg==";
+        url = "https://registry.npmjs.org/@parcel/package-manager/-/package-manager-2.4.0.tgz";
+        sha512 = "21AEfAQnZbHRVViTn7QsPGe/CiGaFaDUH5f0m8qVC7fDjjhC8LM8blkqU72goaO9FbaLMadtEf2txhzly7h/bg==";
       };
     };
-    "@parcel/packager-css-2.3.2" = {
+    "@parcel/packager-css-2.4.0" = {
       name = "_at_parcel_slash_packager-css";
       packageName = "@parcel/packager-css";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/packager-css/-/packager-css-2.3.2.tgz";
-        sha512 = "ByuF9xDnQnpVL1Hdu9aY6SpxOuZowd3TH7joh1qdRPLeMHTEvUywHBXoiAyNdrhnLGum8uPEdY8Ra5Xuo1U7kg==";
+        url = "https://registry.npmjs.org/@parcel/packager-css/-/packager-css-2.4.0.tgz";
+        sha512 = "LmPDWzkXi60Oy3WrPF0jPKQxeTwW5hmNBgrcXJMHSu+VcXdaQZNzNxVzhnZkJUbDd2z9vAUrUGzdLh8TquC8iQ==";
       };
     };
-    "@parcel/packager-html-2.3.2" = {
+    "@parcel/packager-html-2.4.0" = {
       name = "_at_parcel_slash_packager-html";
       packageName = "@parcel/packager-html";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/packager-html/-/packager-html-2.3.2.tgz";
-        sha512 = "YqAptdU+uqfgwSii76mRGcA/3TpuC6yHr8xG+11brqj/tEFLsurmX0naombzd7FgmrTE9w+kb0HUIMl2vRBn0A==";
+        url = "https://registry.npmjs.org/@parcel/packager-html/-/packager-html-2.4.0.tgz";
+        sha512 = "OPMIQ1uHYQFpRPrsmm5BqONbAyzjlhVsPRAzHlcBrglG4BTUeOR2ow4MUKblHmVVqc3QHnfZG4nHHtFkeuNQ3A==";
       };
     };
-    "@parcel/packager-js-2.3.2" = {
+    "@parcel/packager-js-2.4.0" = {
       name = "_at_parcel_slash_packager-js";
       packageName = "@parcel/packager-js";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/packager-js/-/packager-js-2.3.2.tgz";
-        sha512 = "3OP0Ro9M1J+PIKZK4Ec2N5hjIPiqk++B2kMFeiUqvaNZjJgKrPPEICBhjS52rma4IE/NgmIMB3aI5pWqE/KwNA==";
+        url = "https://registry.npmjs.org/@parcel/packager-js/-/packager-js-2.4.0.tgz";
+        sha512 = "cfslIH43CJFgBS9PmdFaSnbInMCoejsFCnxtJa2GeUpjCXSfelPRp0OPx7m8n+fap4czftPhoxBALeDUElOZGQ==";
       };
     };
-    "@parcel/packager-raw-2.3.2" = {
+    "@parcel/packager-raw-2.4.0" = {
       name = "_at_parcel_slash_packager-raw";
       packageName = "@parcel/packager-raw";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/packager-raw/-/packager-raw-2.3.2.tgz";
-        sha512 = "RnoZ7WgNAFWkEPrEefvyDqus7xfv9XGprHyTbfLittPaVAZpl+4eAv43nXyMfzk77Cgds6KcNpkosj3acEpNIQ==";
+        url = "https://registry.npmjs.org/@parcel/packager-raw/-/packager-raw-2.4.0.tgz";
+        sha512 = "SFfw7chMFITj3J26ZVDJxbO6xwtPFcFBm1js8cwWMgzwuwS6CEc43k5+Abj+2/EqHU9kNJU9eWV5vT6lQwf3HA==";
       };
     };
-    "@parcel/packager-svg-2.3.2" = {
+    "@parcel/packager-svg-2.4.0" = {
       name = "_at_parcel_slash_packager-svg";
       packageName = "@parcel/packager-svg";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/packager-svg/-/packager-svg-2.3.2.tgz";
-        sha512 = "iIC0VeczOXynS7M5jCi3naMBRyAznBVJ3iMg92/GaI9duxPlUMGAlHzLAKNtoXkc00HMXDH7rrmMb04VX6FYSg==";
+        url = "https://registry.npmjs.org/@parcel/packager-svg/-/packager-svg-2.4.0.tgz";
+        sha512 = "DwkgrdLEQop+tu9Ocr1ZaadmpsbSgVruJPr80xq1LaB0Jiwrl9HjHStMNH1laNFueK1yydxhnj9C2JQfW28qag==";
       };
     };
-    "@parcel/plugin-2.3.2" = {
+    "@parcel/plugin-2.4.0" = {
       name = "_at_parcel_slash_plugin";
       packageName = "@parcel/plugin";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/plugin/-/plugin-2.3.2.tgz";
-        sha512 = "SaLZAJX4KH+mrAmqmcy9KJN+V7L+6YNTlgyqYmfKlNiHu7aIjLL+3prX8QRcgGtjAYziCxvPj0cl1CCJssaiGg==";
+        url = "https://registry.npmjs.org/@parcel/plugin/-/plugin-2.4.0.tgz";
+        sha512 = "ehFUAL2+h27Lv+cYbbXA74UGy8C+eglUjcpvASOOjVRFuD6poMAMliKkKAXBhQaFx/Rvhz27A2PIPv9lL2i4UQ==";
       };
     };
-    "@parcel/reporter-cli-2.3.2" = {
+    "@parcel/reporter-cli-2.4.0" = {
       name = "_at_parcel_slash_reporter-cli";
       packageName = "@parcel/reporter-cli";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/reporter-cli/-/reporter-cli-2.3.2.tgz";
-        sha512 = "VYetmTXqW83npsvVvqlQZTbF3yVL3k/FCCl3kSWvOr9LZA0lmyqJWPjMHq37yIIOszQN/p5guLtgCjsP0UQw1Q==";
+        url = "https://registry.npmjs.org/@parcel/reporter-cli/-/reporter-cli-2.4.0.tgz";
+        sha512 = "Q9bIFMaGvQgypCDxdMEKOwrJzIHAXScKkuFsqTHnUL6mmH3Mo2CoEGAq/wpMXuPhXRn1dPJcHgTNDwZ2fSzz0A==";
       };
     };
-    "@parcel/reporter-dev-server-2.3.2" = {
+    "@parcel/reporter-dev-server-2.4.0" = {
       name = "_at_parcel_slash_reporter-dev-server";
       packageName = "@parcel/reporter-dev-server";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/reporter-dev-server/-/reporter-dev-server-2.3.2.tgz";
-        sha512 = "E7LtnjAX4iiWMw2qKUyFBi3+bDz0UGjqgHoPQylUYYLi6opXjJz/oC+cCcCy4e3RZlkrl187XonvagS59YjDxA==";
+        url = "https://registry.npmjs.org/@parcel/reporter-dev-server/-/reporter-dev-server-2.4.0.tgz";
+        sha512 = "24h++wevs7XYuX4dKa4PUfLSstvn3g7udajFv6CeQoME+dR25RL/wH/2LUbhV5ilgXXab76rWIndSqp78xHxPA==";
       };
     };
-    "@parcel/resolver-default-2.3.2" = {
+    "@parcel/resolver-default-2.4.0" = {
       name = "_at_parcel_slash_resolver-default";
       packageName = "@parcel/resolver-default";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/resolver-default/-/resolver-default-2.3.2.tgz";
-        sha512 = "y3r+xOwWsATrNGUWuZ6soA7q24f8E5tY1AZ9lHCufnkK2cdKZJ5O1cyd7ohkAiKZx2/pMd+FgmVZ/J3oxetXkA==";
+        url = "https://registry.npmjs.org/@parcel/resolver-default/-/resolver-default-2.4.0.tgz";
+        sha512 = "K7pIIFmGm1hjg/7Mzkg99i8tfCClKfBUTuc2R5j8cdr2n0mCAi4/f2mFf5svLrb5XZrnDgoQ05tHKklLEfUDUw==";
       };
     };
-    "@parcel/runtime-browser-hmr-2.3.2" = {
+    "@parcel/runtime-browser-hmr-2.4.0" = {
       name = "_at_parcel_slash_runtime-browser-hmr";
       packageName = "@parcel/runtime-browser-hmr";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/runtime-browser-hmr/-/runtime-browser-hmr-2.3.2.tgz";
-        sha512 = "nRD6uOyF1+HGylP9GASbYmvUDOsDaNwvaxuGTSh8+5M0mmCgib+hVBiPEKbwdmKjGbUPt9wRFPyMa/JpeQZsIQ==";
+        url = "https://registry.npmjs.org/@parcel/runtime-browser-hmr/-/runtime-browser-hmr-2.4.0.tgz";
+        sha512 = "swPFtvxGoCA9LEjU/pHPNjxG1l0fte8447zXwRN/AaYrtjNu9Ww117OSKCyvCnE143E79jZOFStodTQGFuH+9A==";
       };
     };
-    "@parcel/runtime-js-2.3.2" = {
+    "@parcel/runtime-js-2.4.0" = {
       name = "_at_parcel_slash_runtime-js";
       packageName = "@parcel/runtime-js";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/runtime-js/-/runtime-js-2.3.2.tgz";
-        sha512 = "SJepcHvYO/7CEe/Q85sngk+smcJ6TypuPh4D2R8kN+cAJPi5WvbQEe7+x5BEgbN+5Jumi/Uo3FfOOE5mYh+F6g==";
+        url = "https://registry.npmjs.org/@parcel/runtime-js/-/runtime-js-2.4.0.tgz";
+        sha512 = "67OOvmkDdtmgzZVP/EyAzoXhJ/Ug3LUVUt7idg9arun5rdJptqEb3Um3wmH0zjcNa9jMbJt7Kl5x1wA8dJgPYg==";
       };
     };
-    "@parcel/runtime-react-refresh-2.3.2" = {
+    "@parcel/runtime-react-refresh-2.4.0" = {
       name = "_at_parcel_slash_runtime-react-refresh";
       packageName = "@parcel/runtime-react-refresh";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/runtime-react-refresh/-/runtime-react-refresh-2.3.2.tgz";
-        sha512 = "P+GRPO2XVDSBQ4HmRSj2xfbHSQvL9+ahTE/AB74IJExLTITv5l4SHAV3VsiKohuHYUAYHW3A/Oe7tEFCAb6Cug==";
+        url = "https://registry.npmjs.org/@parcel/runtime-react-refresh/-/runtime-react-refresh-2.4.0.tgz";
+        sha512 = "flnr+bf06lMZPbXZZLLaFNrPHvYpfuXTVovEghyUW46qLVpaHj33dpsU/LqZplIuHgBp2ibgrKhr/hY9ell68w==";
       };
     };
-    "@parcel/runtime-service-worker-2.3.2" = {
+    "@parcel/runtime-service-worker-2.4.0" = {
       name = "_at_parcel_slash_runtime-service-worker";
       packageName = "@parcel/runtime-service-worker";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/runtime-service-worker/-/runtime-service-worker-2.3.2.tgz";
-        sha512 = "iREHj/eapphC4uS/zGUkiTJvG57q+CVbTrfE42kB8ECtf/RYNo5YC9htdvPZjRSXDPrEPc5NCoKp4X09ENNikw==";
+        url = "https://registry.npmjs.org/@parcel/runtime-service-worker/-/runtime-service-worker-2.4.0.tgz";
+        sha512 = "RgM5QUqW22WzstW03CtV+Oih8VGVuwsf94Cc4hLouU2EAD0NUJgATWbFocZVTZIBTKELAWh2gjpSQDdnL4Ur+A==";
       };
     };
     "@parcel/source-map-2.0.2" = {
@@ -7123,112 +7267,112 @@ let
         sha512 = "NnUrPYLpYB6qyx2v6bcRPn/gVigmGG6M6xL8wIg/i0dP1GLkuY1nf+Hqdf63FzPTqqT7K3k6eE5yHPQVMO5jcA==";
       };
     };
-    "@parcel/transformer-babel-2.3.2" = {
+    "@parcel/transformer-babel-2.4.0" = {
       name = "_at_parcel_slash_transformer-babel";
       packageName = "@parcel/transformer-babel";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/transformer-babel/-/transformer-babel-2.3.2.tgz";
-        sha512 = "QpWfH2V6jJ+kcUBIMM/uBBG8dGFvNaOGS+8jD6b+eTP+1owzm83RoWgqhRV2D/hhv2qMXEQzIljoc/wg2y+X4g==";
+        url = "https://registry.npmjs.org/@parcel/transformer-babel/-/transformer-babel-2.4.0.tgz";
+        sha512 = "iWDa7KzJTMP3HNmrYxiYq/S6redk2qminx/9MwmKIN9jzm8mgts2Lj9lOg/t66YaDGky6JAvw4DhB2qW4ni6yQ==";
       };
     };
-    "@parcel/transformer-css-2.3.2" = {
+    "@parcel/transformer-css-2.4.0" = {
       name = "_at_parcel_slash_transformer-css";
       packageName = "@parcel/transformer-css";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/transformer-css/-/transformer-css-2.3.2.tgz";
-        sha512 = "8lzvDny+78DIAqhcXam2Bf9FyaUoqzHdUQdNFn+PuXTHroG/QGPvln1kvqngJjn4/cpJS9vYmAPVXe+nai3P8g==";
+        url = "https://registry.npmjs.org/@parcel/transformer-css/-/transformer-css-2.4.0.tgz";
+        sha512 = "D2u48LuiQsQvbknABE0wVKFp9r6yCgWrHKEP1J6EJ31c49nXGXDHrpHJJwqq9BvAs/124eBI5mSsehTJyFEMwg==";
       };
     };
-    "@parcel/transformer-html-2.3.2" = {
+    "@parcel/transformer-html-2.4.0" = {
       name = "_at_parcel_slash_transformer-html";
       packageName = "@parcel/transformer-html";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/transformer-html/-/transformer-html-2.3.2.tgz";
-        sha512 = "idT1I/8WM65IFYBqzRwpwT7sf0xGur4EDQDHhuPX1w+pIVZnh0lkLMAnEqs6ar1SPRMys4chzkuDNnqh0d76hg==";
+        url = "https://registry.npmjs.org/@parcel/transformer-html/-/transformer-html-2.4.0.tgz";
+        sha512 = "2/8X/o5QaCNVPr4wkxLCUub7v/YVvVN2L5yCEcTatNeFhNg/2iz7P2ekfqOaoDCHWZEOBT1VTwPbdBt+TMM71Q==";
       };
     };
-    "@parcel/transformer-image-2.3.2" = {
+    "@parcel/transformer-image-2.4.0" = {
       name = "_at_parcel_slash_transformer-image";
       packageName = "@parcel/transformer-image";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/transformer-image/-/transformer-image-2.3.2.tgz";
-        sha512 = "0K7cJHXysli6hZsUz/zVGO7WCoaaIeVdzAxKpLA1Yl3LKw/ODiMyXKt08LiV/ljQ2xT5qb9EsXUWDRvcZ0b96A==";
+        url = "https://registry.npmjs.org/@parcel/transformer-image/-/transformer-image-2.4.0.tgz";
+        sha512 = "JZkQvGGoGiD0AVKLIbAYYUWxepMmUaWZ4XXx71MmS/kA7cUDwTZ0CXq63YnSY1m+DX+ClTuTN8mBlwe2dkcGbA==";
       };
     };
-    "@parcel/transformer-js-2.3.2" = {
+    "@parcel/transformer-js-2.4.0" = {
       name = "_at_parcel_slash_transformer-js";
       packageName = "@parcel/transformer-js";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/transformer-js/-/transformer-js-2.3.2.tgz";
-        sha512 = "U1fbIoAoqR5P49S+DMhH8BUd9IHRPwrTTv6ARYGsYnhuNsjTFhNYE0kkfRYboe/e0z7vEbeJICZXjnZ7eQDw5A==";
+        url = "https://registry.npmjs.org/@parcel/transformer-js/-/transformer-js-2.4.0.tgz";
+        sha512 = "eeLHFwv3jT3GmIxpLC7B8EXExGK0MFaK91HXljOMh6l8a+GlQYw27MSFQVtoXr0Olx9Uq2uvjXP1+zSsq3LQUQ==";
       };
     };
-    "@parcel/transformer-json-2.3.2" = {
+    "@parcel/transformer-json-2.4.0" = {
       name = "_at_parcel_slash_transformer-json";
       packageName = "@parcel/transformer-json";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/transformer-json/-/transformer-json-2.3.2.tgz";
-        sha512 = "Pv2iPaxKINtFwOk5fDbHjQlSm2Vza/NLimQY896FLxiXPNAJxWGvMwdutgOPEBKksxRx9LZPyIOHiRVZ0KcA3w==";
+        url = "https://registry.npmjs.org/@parcel/transformer-json/-/transformer-json-2.4.0.tgz";
+        sha512 = "3nR+d39mbURoXIypDfVCaxpwL65qMV+h8SLD78up2uhaRGklHQfN7GuemR7L+mcVAgNrmwVvZHhyNjdgYwWqqg==";
       };
     };
-    "@parcel/transformer-postcss-2.3.2" = {
+    "@parcel/transformer-postcss-2.4.0" = {
       name = "_at_parcel_slash_transformer-postcss";
       packageName = "@parcel/transformer-postcss";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/transformer-postcss/-/transformer-postcss-2.3.2.tgz";
-        sha512 = "Rpdxc1rt2aJFCh/y/ccaBc9J1crDjNY5o44xYoOemBoUNDMREsmg5sR5iO81qKKO5GxfoosGb2zh59aeTmywcg==";
+        url = "https://registry.npmjs.org/@parcel/transformer-postcss/-/transformer-postcss-2.4.0.tgz";
+        sha512 = "ijIa2x+dbKnJhr7zO5WlXkvuj832fDoGksMBk2DX3u2WMrbh2rqVWPpGFsDhESx7EAy38nUoV/5KUdrNqUmCEA==";
       };
     };
-    "@parcel/transformer-posthtml-2.3.2" = {
+    "@parcel/transformer-posthtml-2.4.0" = {
       name = "_at_parcel_slash_transformer-posthtml";
       packageName = "@parcel/transformer-posthtml";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/transformer-posthtml/-/transformer-posthtml-2.3.2.tgz";
-        sha512 = "tMdVExfdM+1G8A9KSHDsjg+S9xEGbhH5mApF2NslPnNZ4ciLKRNuHU2sSV/v8i0a6kacKvDTrwQXYBQJGOodBw==";
+        url = "https://registry.npmjs.org/@parcel/transformer-posthtml/-/transformer-posthtml-2.4.0.tgz";
+        sha512 = "xoL3AzgtVeRRAo6bh0AHAYm9bt1jZ+HiH86/7oARj/uJs6Wd8kXK/DZf6fH+F87hj4e7bnjmDDc0GPVK0lPz1w==";
       };
     };
-    "@parcel/transformer-raw-2.3.2" = {
+    "@parcel/transformer-raw-2.4.0" = {
       name = "_at_parcel_slash_transformer-raw";
       packageName = "@parcel/transformer-raw";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/transformer-raw/-/transformer-raw-2.3.2.tgz";
-        sha512 = "lY7eOCaALZ90+GH+4PZRmAPGQRXoZ66NakSdhEtH6JSSAYOmZKDvNLGTMRo/vK1oELzWMuAHGdqvbcPDtNLLVw==";
+        url = "https://registry.npmjs.org/@parcel/transformer-raw/-/transformer-raw-2.4.0.tgz";
+        sha512 = "fciFbNrzj0kLlDgr6OsI0PUv414rVygDWAsgbCCq4BexDkuemMs9f9FjMctx9B2VZlctE8dTT4RGkuQumTIpUg==";
       };
     };
-    "@parcel/transformer-react-refresh-wrap-2.3.2" = {
+    "@parcel/transformer-react-refresh-wrap-2.4.0" = {
       name = "_at_parcel_slash_transformer-react-refresh-wrap";
       packageName = "@parcel/transformer-react-refresh-wrap";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/transformer-react-refresh-wrap/-/transformer-react-refresh-wrap-2.3.2.tgz";
-        sha512 = "FZaderyCExn0SBZ6D+zHPWc8JSn9YDcbfibv0wkCl+D7sYfeWZ22i7MRp5NwCe/TZ21WuxDWySCggEp/Waz2xg==";
+        url = "https://registry.npmjs.org/@parcel/transformer-react-refresh-wrap/-/transformer-react-refresh-wrap-2.4.0.tgz";
+        sha512 = "9+f6sGOWkf0jyUQ1CuFWk+04Mq3KTOCU9kRiwCHX1YdUCv5uki6r9XUSpqiYodrV+L6w9CCwLvGMLCDHxtCxMg==";
       };
     };
-    "@parcel/transformer-svg-2.3.2" = {
+    "@parcel/transformer-svg-2.4.0" = {
       name = "_at_parcel_slash_transformer-svg";
       packageName = "@parcel/transformer-svg";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/transformer-svg/-/transformer-svg-2.3.2.tgz";
-        sha512 = "k9My6bePsaGgUh+tidDjFbbVgKPTzwCAQfoloZRMt7y396KgUbvCfqDruk04k6k+cJn7Jl1o/5lUpTEruBze7g==";
+        url = "https://registry.npmjs.org/@parcel/transformer-svg/-/transformer-svg-2.4.0.tgz";
+        sha512 = "D+yzVtSxtQML3d26fd/g4E/xYW68+OMbMUVLXORtoYMU42fnXQkJP6jGOdqy8Td+WORNY7EwVtQnESLwhBmolw==";
       };
     };
-    "@parcel/types-2.3.2" = {
+    "@parcel/types-2.4.0" = {
       name = "_at_parcel_slash_types";
       packageName = "@parcel/types";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/types/-/types-2.3.2.tgz";
-        sha512 = "C77Ct1xNM7LWjPTfe/dQ/9rq1efdsX5VJu2o8/TVi6qoFh64Wp/c5/vCHwKInOTBZUTchVO6z4PGJNIZoUVJuA==";
+        url = "https://registry.npmjs.org/@parcel/types/-/types-2.4.0.tgz";
+        sha512 = "nysGIbBEnp+7R+tKTysdcTFOZDTCodsiXFeAhYQa5bhiOnG1l9gzhxQnE2OsdsgvMm40IOsgKprqvM/DbdLfnQ==";
       };
     };
     "@parcel/utils-1.11.0" = {
@@ -7240,13 +7384,13 @@ let
         sha512 = "cA3p4jTlaMeOtAKR/6AadanOPvKeg8VwgnHhOyfi0yClD0TZS/hi9xu12w4EzA/8NtHu0g6o4RDfcNjqN8l1AQ==";
       };
     };
-    "@parcel/utils-2.3.2" = {
+    "@parcel/utils-2.4.0" = {
       name = "_at_parcel_slash_utils";
       packageName = "@parcel/utils";
-      version = "2.3.2";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/utils/-/utils-2.3.2.tgz";
-        sha512 = "xzZ+0vWhrXlLzGoz7WlANaO5IPtyWGeCZruGtepUL3yheRWb1UU4zFN9xz7Z+j++Dmf1Fgkc3qdk/t4O8u9HLQ==";
+        url = "https://registry.npmjs.org/@parcel/utils/-/utils-2.4.0.tgz";
+        sha512 = "sdNo+mZqDZT8LJYB6WWRKa4wFVZcK6Zb5Jh6Du76QvXXwHbPIQNZgJBb6gd/Rbk4GLOp2tW7MnBfq6zP9E9E2g==";
       };
     };
     "@parcel/watcher-1.12.1" = {
@@ -7276,13 +7420,40 @@ let
         sha512 = "USSjRAAQYsZFlv43FUPdD+jEGML5/8oLF0rUzPQTtK4q9kvaXr49F5ZplyLz5lox78cLZ0TxN2bIDQ1xhOkulQ==";
       };
     };
-    "@parcel/workers-2.3.2" = {
+    "@parcel/workers-2.4.0" = {
       name = "_at_parcel_slash_workers";
       packageName = "@parcel/workers";
-      version = "2.3.2";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@parcel/workers/-/workers-2.4.0.tgz";
+        sha512 = "eSFyvEoXXPgFzQfKIlpkUjpHfIbezUCRFTPKyJAKCxvU5DSXOpb1kz5vDESWQ4qTZXKnrKvxS1PPWN6bam9z0g==";
+      };
+    };
+    "@peculiar/asn1-schema-2.1.0" = {
+      name = "_at_peculiar_slash_asn1-schema";
+      packageName = "@peculiar/asn1-schema";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@peculiar/asn1-schema/-/asn1-schema-2.1.0.tgz";
+        sha512 = "D6g4C5YRKC/iPujMAOXuZ7YGdaoMx8GsvWzfVSyx2LYeL38ECOKNywlYAuwbqQvON64lgsYdAujWQPX8hhoBLw==";
+      };
+    };
+    "@peculiar/json-schema-1.1.12" = {
+      name = "_at_peculiar_slash_json-schema";
+      packageName = "@peculiar/json-schema";
+      version = "1.1.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@parcel/workers/-/workers-2.3.2.tgz";
-        sha512 = "JbOm+Ceuyymd1SuKGgodC2EXAiPuFRpaNUSJpz3NAsS3lVIt2TDAPMOWBivS7sML/KltspUfl/Q9YwO0TPUFNw==";
+        url = "https://registry.npmjs.org/@peculiar/json-schema/-/json-schema-1.1.12.tgz";
+        sha512 = "coUfuoMeIB7B8/NMekxaDzLhaYmp0HZNPEjYRm9goRou8UZIC3z21s0sL9AWoCw4EG876QyO3kYrc61WNF9B/w==";
+      };
+    };
+    "@peculiar/webcrypto-1.3.3" = {
+      name = "_at_peculiar_slash_webcrypto";
+      packageName = "@peculiar/webcrypto";
+      version = "1.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@peculiar/webcrypto/-/webcrypto-1.3.3.tgz";
+        sha512 = "+jkp16Hp18HkphJlMtqsQKjyDWJBh0AhDuoB+vVakuIRbkBdaFb7v26Ldm25altjiYhCyQnR5NChHxwSTvbXJw==";
       };
     };
     "@pm2/agent-2.0.1" = {
@@ -7321,31 +7492,31 @@ let
         sha512 = "SXsM27SGH3yTWKc2fKR4SYNxsmnvuBQ9dd6QHtEWmiZ/VqaOYPAIlS8+vMcn27YLtAEBGvNRSh3TPNvtjZgfqA==";
       };
     };
-    "@primer/octicons-16.3.1" = {
+    "@primer/octicons-17.0.0" = {
       name = "_at_primer_slash_octicons";
       packageName = "@primer/octicons";
-      version = "16.3.1";
+      version = "17.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@primer/octicons/-/octicons-16.3.1.tgz";
-        sha512 = "J3IlK0Ok88RQZVB//af7Lnl1Vw2buyyr5G3oEvK1wRSYTJi/E/HBm5JZUihmDAtm/unr85FC534DwA5e+4LR2w==";
+        url = "https://registry.npmjs.org/@primer/octicons/-/octicons-17.0.0.tgz";
+        sha512 = "DiIjtous4XPuR2deTctD3/RVZy/vRzVYBgYYvHV313MmTfkbVP60qLH5txrT3/bYNvnb0poNDelLS6U0kqlvHA==";
       };
     };
-    "@prisma/engines-3.10.0-50.73e60b76d394f8d37d8ebd1f8918c79029f0db86" = {
+    "@prisma/engines-3.11.1-1.1a2506facaf1a4727b7c26850735e88ec779dee9" = {
       name = "_at_prisma_slash_engines";
       packageName = "@prisma/engines";
-      version = "3.10.0-50.73e60b76d394f8d37d8ebd1f8918c79029f0db86";
+      version = "3.11.1-1.1a2506facaf1a4727b7c26850735e88ec779dee9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@prisma/engines/-/engines-3.10.0-50.73e60b76d394f8d37d8ebd1f8918c79029f0db86.tgz";
-        sha512 = "LjRssaWu9w2SrXitofnutRIyURI7l0veQYIALz7uY4shygM9nMcK3omXcObRm7TAcw3Z+9ytfK1B+ySOsOesxQ==";
+        url = "https://registry.npmjs.org/@prisma/engines/-/engines-3.11.1-1.1a2506facaf1a4727b7c26850735e88ec779dee9.tgz";
+        sha512 = "MILbsGnvmnhCbFGa2/iSnsyGyazU3afzD7ldjCIeLIGKkNBMSZgA2IvpYsAXl+6qFHKGrS3B2otKfV31dwMSQw==";
       };
     };
-    "@prisma/prisma-fmt-wasm-3.10.0-50.73e60b76d394f8d37d8ebd1f8918c79029f0db86" = {
+    "@prisma/prisma-fmt-wasm-3.11.0-48.b371888aaf8f51357c7457d836b86d12da91658b" = {
       name = "_at_prisma_slash_prisma-fmt-wasm";
       packageName = "@prisma/prisma-fmt-wasm";
-      version = "3.10.0-50.73e60b76d394f8d37d8ebd1f8918c79029f0db86";
+      version = "3.11.0-48.b371888aaf8f51357c7457d836b86d12da91658b";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@prisma/prisma-fmt-wasm/-/prisma-fmt-wasm-3.10.0-50.73e60b76d394f8d37d8ebd1f8918c79029f0db86.tgz";
-        sha512 = "f0Srf2EasvBRKBlTUrqkW5hp889+SRrRkqu0MgcuTXlgHxVMj7DIo1JNylPb1y/HDwtjLWf6AL+sk+2R891SWA==";
+        url = "https://registry.npmjs.org/@prisma/prisma-fmt-wasm/-/prisma-fmt-wasm-3.11.0-48.b371888aaf8f51357c7457d836b86d12da91658b.tgz";
+        sha512 = "bp8ksqxPmTIuAF13ujxtyUnbbeQl5H3EVLUDjswSARK/8dwQ6ORQC/Ho1wv63joyiuZstwl7K3FgqIY1OB1lcA==";
       };
     };
     "@protobufjs/aspromise-1.1.2" = {
@@ -7456,13 +7627,13 @@ let
         sha512 = "1ekKViRit0jo1IzDLSRSziU/OpX9ckoj8uWvSWzHLASyTqhKZL9Pdq628guq7yT3qFcJeeaeaA5T97a4w7fpqA==";
       };
     };
-    "@putdotio/api-client-8.30.0" = {
+    "@putdotio/api-client-8.31.2" = {
       name = "_at_putdotio_slash_api-client";
       packageName = "@putdotio/api-client";
-      version = "8.30.0";
+      version = "8.31.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@putdotio/api-client/-/api-client-8.30.0.tgz";
-        sha512 = "J0OzprAIheo1/62NlhPkPVEyrLSewPaCQHZlidrkY1Ip60OtIwy/RojORR3Xm28I68wTUDMm3X1Ciz45aAUYww==";
+        url = "https://registry.npmjs.org/@putdotio/api-client/-/api-client-8.31.2.tgz";
+        sha512 = "/pXMWQI2nHn0l9GHcETUZNZ3dYXhYwu91NW6efd/MDxDNtzI1HOt5psGgRx5mcyvLsifp9gzg6MqaeFQm/FtWA==";
       };
     };
     "@reach/router-1.3.4" = {
@@ -7519,13 +7690,13 @@ let
         sha512 = "y9qNj0//tZtWB2jfXNK3BX18BSBp9zNR7KE7lMysVHwbZtY392OJCjm6Rb/h4UHH2r1AqjNEHFD6bRn+DqU9Mw==";
       };
     };
-    "@redocly/openapi-core-1.0.0-beta.87" = {
+    "@redocly/openapi-core-1.0.0-beta.90" = {
       name = "_at_redocly_slash_openapi-core";
       packageName = "@redocly/openapi-core";
-      version = "1.0.0-beta.87";
+      version = "1.0.0-beta.90";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.87.tgz";
-        sha512 = "bGvINYT8jpcYEbibhd4AO0M5WPE1IQLNLS4LCNZbD7jkoSQB1EHWBZJDhfPd1kxKPPcQ7UJNUCJwtIIrRs5gTQ==";
+        url = "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.0.0-beta.90.tgz";
+        sha512 = "MvkME+AWCBexyJyNp/sVFRUBjxCSk5CQ+CAozkwm0t/HusXp9G+kH26+e9giD6Fms129smr1qp3pCAUbwJZzZA==";
       };
     };
     "@redocly/react-dropdown-aria-2.0.12" = {
@@ -7582,13 +7753,13 @@ let
         sha512 = "c/qwwcHyafOQuVQJj0IlBjf5yYgBI7YPJ77k4fOJYesb41jio65eaJODRUmfYKhTOFBrIZ66kgvGPlNbjuoRdQ==";
       };
     };
-    "@schematics/angular-13.2.6" = {
+    "@schematics/angular-13.3.0" = {
       name = "_at_schematics_slash_angular";
       packageName = "@schematics/angular";
-      version = "13.2.6";
+      version = "13.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@schematics/angular/-/angular-13.2.6.tgz";
-        sha512 = "8NzHMX9+FSgaB0lJYxlTJv9OcBuolwZJqo9M/yX3RPSqSHghA33jWwgVbV551hBJOpbVEePerG1DQkIC99DXKA==";
+        url = "https://registry.npmjs.org/@schematics/angular/-/angular-13.3.0.tgz";
+        sha512 = "WND6DXWf0ZFefqlC2hUm1FzHDonRfGpDEPWVhVulhYkB7IUUaXuCz8K41HAScyJ3bxUngs2Lx9+4omikc05fxA==";
       };
     };
     "@segment/loosely-validate-event-2.0.0" = {
@@ -7609,22 +7780,13 @@ let
         sha512 = "J3jpy002TyBjd4N/p6s+s90eX42H2eRhK3SbsZuvTDv977/E8p2U3zikdiehyJja66do7FlxLomZLPlvl2/xaA==";
       };
     };
-    "@serverless/aws-lambda-otel-extension-dist-0.1.10" = {
-      name = "_at_serverless_slash_aws-lambda-otel-extension-dist";
-      packageName = "@serverless/aws-lambda-otel-extension-dist";
-      version = "0.1.10";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@serverless/aws-lambda-otel-extension-dist/-/aws-lambda-otel-extension-dist-0.1.10.tgz";
-        sha512 = "SPMmou6Bom/TcX69WcKXDiHPVQycfbocUW8vrXLU9oBxFY49Z0l70Yk7lOvtc1H/lc5taIfkcW0Eo12cOp9cvA==";
-      };
-    };
-    "@serverless/dashboard-plugin-6.1.5" = {
+    "@serverless/dashboard-plugin-6.2.0" = {
       name = "_at_serverless_slash_dashboard-plugin";
       packageName = "@serverless/dashboard-plugin";
-      version = "6.1.5";
+      version = "6.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@serverless/dashboard-plugin/-/dashboard-plugin-6.1.5.tgz";
-        sha512 = "RpZysQyCKzrtY4rJpK1qiQdambt2NrRYqlV9IEsGf5LaQu6f7G35VZrPoS6A2jD8Rt3nMK7t+0LOO5zfVmBMLA==";
+        url = "https://registry.npmjs.org/@serverless/dashboard-plugin/-/dashboard-plugin-6.2.0.tgz";
+        sha512 = "3vapxoW1hI8OBxLRJq+J9vt3tdckZObhYWfwRPDlqPs6FOEoHuJieAzz07e7YdWt7fO/LkQx6rlgCXlGamLnjw==";
       };
     };
     "@serverless/event-mocks-1.1.1" = {
@@ -7654,13 +7816,13 @@ let
         sha512 = "6oKLqAkK6CG2zjAs2rfuHEOLoK11K/oep5bwGTEb5JmFP/92JQtvyb+FxP4DknL4jYpiYj1Dd5sCt5auHhOASg==";
       };
     };
-    "@sideway/address-4.1.3" = {
+    "@sideway/address-4.1.4" = {
       name = "_at_sideway_slash_address";
       packageName = "@sideway/address";
-      version = "4.1.3";
+      version = "4.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@sideway/address/-/address-4.1.3.tgz";
-        sha512 = "8ncEUtmnTsMmL7z1YPB47kPUq7LpKWJNFPsRzHiIajGC5uXlWGn+AmkYPcHNl8S4tcEGx+cnORnNYaw2wvL+LQ==";
+        url = "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz";
+        sha512 = "7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==";
       };
     };
     "@sideway/formula-3.0.0" = {
@@ -7951,13 +8113,13 @@ let
         sha512 = "2kGbqUVJUGE8dM+bMzXG/PYUWKkjLIkRLWNh39OaADkiabDRdw8ATFCgbMz5xdIcvwspPAluSL7uY+ZiTWdWmQ==";
       };
     };
-    "@swc/helpers-0.2.14" = {
+    "@swc/helpers-0.3.8" = {
       name = "_at_swc_slash_helpers";
       packageName = "@swc/helpers";
-      version = "0.2.14";
+      version = "0.3.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@swc/helpers/-/helpers-0.2.14.tgz";
-        sha512 = "wpCQMhf5p5GhNg2MmGKXzUNwxe7zRiCsmqYsamez2beP7mKPCSiu+BjZcdN95yYSzO857kr0VfQewmGpS77nqA==";
+        url = "https://registry.npmjs.org/@swc/helpers/-/helpers-0.3.8.tgz";
+        sha512 = "aWItSZvJj4+GI6FWkjZR13xPNPctq2RRakzo+O6vN7bC2yjwdg5EFpgaSAUn95b7BGSgcflvzVDPoKmJv24IOg==";
       };
     };
     "@szmarczak/http-timer-1.1.2" = {
@@ -8194,15 +8356,6 @@ let
         sha512 = "L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==";
       };
     };
-    "@ts-morph/common-0.11.1" = {
-      name = "_at_ts-morph_slash_common";
-      packageName = "@ts-morph/common";
-      version = "0.11.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@ts-morph/common/-/common-0.11.1.tgz";
-        sha512 = "7hWZS0NRpEsNV8vWJzg7FEz6V8MaLNeJOmwmghqUXTpzk16V1LLZhdo+4QvE/+zv4cVci0OviuJFnqhEfoV3+g==";
-      };
-    };
     "@tsconfig/node10-1.0.8" = {
       name = "_at_tsconfig_slash_node10";
       packageName = "@tsconfig/node10";
@@ -8275,6 +8428,15 @@ let
         sha512 = "veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==";
       };
     };
+    "@types/asn1js-2.0.2" = {
+      name = "_at_types_slash_asn1js";
+      packageName = "@types/asn1js";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/asn1js/-/asn1js-2.0.2.tgz";
+        sha512 = "t4YHCgtD+ERvH0FyxvNlYwJ2ezhqw7t+Ygh4urQ7dJER8i185JPv6oIM3ey5YQmGN6Zp9EMbpohkjZi9t3UxwA==";
+      };
+    };
     "@types/atob-2.1.2" = {
       name = "_at_types_slash_atob";
       packageName = "@types/atob";
@@ -8293,13 +8455,13 @@ let
         sha512 = "pkPtJUUY+Vwv6B1inAz55rQvivClHJxc9aVEPPmaq2cbyeMLCiDpbKpcKyX4LAwpNGi+SHBv0tHv6+0gXv0P2A==";
       };
     };
-    "@types/babel__core-7.1.18" = {
+    "@types/babel__core-7.1.19" = {
       name = "_at_types_slash_babel__core";
       packageName = "@types/babel__core";
-      version = "7.1.18";
+      version = "7.1.19";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.18.tgz";
-        sha512 = "S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ==";
+        url = "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz";
+        sha512 = "WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==";
       };
     };
     "@types/babel__generator-7.6.4" = {
@@ -8905,6 +9067,15 @@ let
         sha512 = "k4ih8ayQ65e26vhCxeMTKtZ808DzC0RFQ4unBvPEy9bcFhS4aPm3oXgWWZNmZ4u+H2WzHQDCNrRC5iNX+afiZw==";
       };
     };
+    "@types/json-schema-7.0.11" = {
+      name = "_at_types_slash_json-schema";
+      packageName = "@types/json-schema";
+      version = "7.0.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz";
+        sha512 = "wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==";
+      };
+    };
     "@types/json-schema-7.0.9" = {
       name = "_at_types_slash_json-schema";
       packageName = "@types/json-schema";
@@ -8941,13 +9112,13 @@ let
         sha512 = "GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw==";
       };
     };
-    "@types/keyv-3.1.3" = {
+    "@types/keyv-3.1.4" = {
       name = "_at_types_slash_keyv";
       packageName = "@types/keyv";
-      version = "3.1.3";
+      version = "3.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.3.tgz";
-        sha512 = "FXCJgyyN3ivVgRoml4h94G/p3kY+u/B86La+QptcqJaWtBWtmc6TtkNfS40n9bIvyLteHh7zXOtgbobORKPbDg==";
+        url = "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz";
+        sha512 = "BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==";
       };
     };
     "@types/koa-2.13.4" = {
@@ -8995,13 +9166,13 @@ let
         sha512 = "0d5Wd09ItQWH1qFbEyQ7oTQ3GZrMfth5JkbN3EvTKLXcHLRDSXeLnlvlOn0wvxVIwK5o2M8JzP/OWz7T3NRsbw==";
       };
     };
-    "@types/lodash-4.14.179" = {
+    "@types/lodash-4.14.180" = {
       name = "_at_types_slash_lodash";
       packageName = "@types/lodash";
-      version = "4.14.179";
+      version = "4.14.180";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.179.tgz";
-        sha512 = "uwc1x90yCKqGcIOAT6DwOSuxnrAbpkdPsUOZtwrXb4D/6wZs+6qG7QnIawDuZWg0sWpxl+ltIKCaLoMlna678w==";
+        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.180.tgz";
+        sha512 = "XOKXa1KIxtNXgASAnwj7cnttJxS4fksBRywK/9LzRV5YxrF80BXZIGeQSuoESQ/VkUj30Ae0+YcuHc15wJCB2g==";
       };
     };
     "@types/long-4.0.1" = {
@@ -9103,15 +9274,6 @@ let
         sha512 = "ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==";
       };
     };
-    "@types/mocha-8.2.3" = {
-      name = "_at_types_slash_mocha";
-      packageName = "@types/mocha";
-      version = "8.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz";
-        sha512 = "ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==";
-      };
-    };
     "@types/mongodb-4.0.6" = {
       name = "_at_types_slash_mongodb";
       packageName = "@types/mongodb";
@@ -9247,15 +9409,6 @@ let
         sha512 = "QB5D2sqfSjCmTuWcBWyJ+/44bcjO7VbjSbOE0ucoVbAsSNQc4Lt6QkgkVXkTDwkL4z/beecZNDvVX15D4P8Jbw==";
       };
     };
-    "@types/node-17.0.14" = {
-      name = "_at_types_slash_node";
-      packageName = "@types/node";
-      version = "17.0.14";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-17.0.14.tgz";
-        sha512 = "SbjLmERksKOGzWzPNuW7fJM7fk3YXVTFiZWB/Hs99gwhk+/dnrQRPBQjPW9aO+fi1tAffi9PrwFvsmOKmDTyng==";
-      };
-    };
     "@types/node-17.0.15" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
@@ -9265,31 +9418,22 @@ let
         sha512 = "zWt4SDDv1S9WRBNxLFxFRHxdD9tvH8f5/kg5/IaLFdnSNXsDY4eL3Q3XXN+VxUnWIhyVFDwcsmAprvwXoM/ClA==";
       };
     };
-    "@types/node-17.0.17" = {
-      name = "_at_types_slash_node";
-      packageName = "@types/node";
-      version = "17.0.17";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-17.0.17.tgz";
-        sha512 = "e8PUNQy1HgJGV3iU/Bp2+D/DXh3PYeyli8LgIwsQcs1Ar1LoaWHSIT6Rw+H2rNJmiq6SNWiDytfx8+gYj7wDHw==";
-      };
-    };
-    "@types/node-17.0.18" = {
+    "@types/node-17.0.21" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "17.0.18";
+      version = "17.0.21";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-17.0.18.tgz";
-        sha512 = "eKj4f/BsN/qcculZiRSujogjvp5O/k4lOW5m35NopjZM/QwLOR075a8pJW5hD+Rtdm2DaCVPENS6KtSQnUD6BA==";
+        url = "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz";
+        sha512 = "DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==";
       };
     };
-    "@types/node-17.0.21" = {
+    "@types/node-17.0.23" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "17.0.21";
+      version = "17.0.23";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz";
-        sha512 = "DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==";
+        url = "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz";
+        sha512 = "UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==";
       };
     };
     "@types/node-6.14.13" = {
@@ -9778,6 +9922,15 @@ let
         sha512 = "ayJ0iOCDNHnKpKTgBG6Q6JOnHTj9zFta+3j2b8Ejza0e4cvRyMn0ZoLEmbPrTHe5YYRlDYPvPWVdV4cTaRyH7g==";
       };
     };
+    "@types/vscode-1.63.2" = {
+      name = "_at_types_slash_vscode";
+      packageName = "@types/vscode";
+      version = "1.63.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/vscode/-/vscode-1.63.2.tgz";
+        sha512 = "awvdx4vX7SkMKyvWIlRjycjb4blYRSQI3Bav0YMn+lJLGN6gJgb20urN/dQCv/2ejDu5S6ADEBt6O15DOpIAkg==";
+      };
+    };
     "@types/vscode-1.65.0" = {
       name = "_at_types_slash_vscode";
       packageName = "@types/vscode";
@@ -9859,6 +10012,15 @@ let
         sha512 = "2YubE1sjj5ifxievI5Ge1sckb9k/Er66HyR2c+3+I6VDUUg1TLPdYYTEbQ+DjRkS4nTxMJhgWfSfMRD2sl2EYQ==";
       };
     };
+    "@types/which-2.0.1" = {
+      name = "_at_types_slash_which";
+      packageName = "@types/which";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/which/-/which-2.0.1.tgz";
+        sha512 = "Jjakcv8Roqtio6w1gr0D7y6twbhx6gGgFGF5BLwajPpnOIOxFkakFhCq+LmyyeAz7BX6ULrjBOxdKaCDy+4+dQ==";
+      };
+    };
     "@types/ws-6.0.4" = {
       name = "_at_types_slash_ws";
       packageName = "@types/ws";
@@ -9904,6 +10066,15 @@ let
         sha512 = "VXI82ykONr5tacHEojnErTQk+KQSoYbW1NB6iz6wUwrNd+BqfkfggQNoNdCqhJSzbNumShPERbM+Pc5zpfhlbw==";
       };
     };
+    "@types/ws-8.5.3" = {
+      name = "_at_types_slash_ws";
+      packageName = "@types/ws";
+      version = "8.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz";
+        sha512 = "6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==";
+      };
+    };
     "@types/yargs-15.0.14" = {
       name = "_at_types_slash_yargs";
       packageName = "@types/yargs";
@@ -9958,6 +10129,15 @@ let
         sha512 = "aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==";
       };
     };
+    "@typescript-eslint/eslint-plugin-5.16.0" = {
+      name = "_at_typescript-eslint_slash_eslint-plugin";
+      packageName = "@typescript-eslint/eslint-plugin";
+      version = "5.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.16.0.tgz";
+        sha512 = "SJoba1edXvQRMmNI505Uo4XmGbxCK9ARQpkvOd00anxzri9RNQk0DDCxD+LIl+jYhkzOJiOMMKYEHnHEODjdCw==";
+      };
+    };
     "@typescript-eslint/experimental-utils-4.33.0" = {
       name = "_at_typescript-eslint_slash_experimental-utils";
       packageName = "@typescript-eslint/experimental-utils";
@@ -9976,6 +10156,15 @@ let
         sha512 = "ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==";
       };
     };
+    "@typescript-eslint/parser-5.16.0" = {
+      name = "_at_typescript-eslint_slash_parser";
+      packageName = "@typescript-eslint/parser";
+      version = "5.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.16.0.tgz";
+        sha512 = "fkDq86F0zl8FicnJtdXakFs4lnuebH6ZADDw6CYQv0UZeIjHvmEw87m9/29nk2Dv5Lmdp0zQ3zDQhiMWQf/GbA==";
+      };
+    };
     "@typescript-eslint/scope-manager-4.33.0" = {
       name = "_at_typescript-eslint_slash_scope-manager";
       packageName = "@typescript-eslint/scope-manager";
@@ -9985,6 +10174,24 @@ let
         sha512 = "5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==";
       };
     };
+    "@typescript-eslint/scope-manager-5.16.0" = {
+      name = "_at_typescript-eslint_slash_scope-manager";
+      packageName = "@typescript-eslint/scope-manager";
+      version = "5.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.16.0.tgz";
+        sha512 = "P+Yab2Hovg8NekLIR/mOElCDPyGgFZKhGoZA901Yax6WR6HVeGLbsqJkZ+Cvk5nts/dAlFKm8PfL43UZnWdpIQ==";
+      };
+    };
+    "@typescript-eslint/type-utils-5.16.0" = {
+      name = "_at_typescript-eslint_slash_type-utils";
+      packageName = "@typescript-eslint/type-utils";
+      version = "5.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.16.0.tgz";
+        sha512 = "SKygICv54CCRl1Vq5ewwQUJV/8padIWvPgCxlWPGO/OgQLCijY9G7lDu6H+mqfQtbzDNlVjzVWQmeqbLMBLEwQ==";
+      };
+    };
     "@typescript-eslint/types-4.33.0" = {
       name = "_at_typescript-eslint_slash_types";
       packageName = "@typescript-eslint/types";
@@ -9994,6 +10201,15 @@ let
         sha512 = "zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==";
       };
     };
+    "@typescript-eslint/types-5.16.0" = {
+      name = "_at_typescript-eslint_slash_types";
+      packageName = "@typescript-eslint/types";
+      version = "5.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.16.0.tgz";
+        sha512 = "oUorOwLj/3/3p/HFwrp6m/J2VfbLC8gjW5X3awpQJ/bSG+YRGFS4dpsvtQ8T2VNveV+LflQHjlLvB6v0R87z4g==";
+      };
+    };
     "@typescript-eslint/typescript-estree-4.33.0" = {
       name = "_at_typescript-eslint_slash_typescript-estree";
       packageName = "@typescript-eslint/typescript-estree";
@@ -10003,6 +10219,24 @@ let
         sha512 = "rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==";
       };
     };
+    "@typescript-eslint/typescript-estree-5.16.0" = {
+      name = "_at_typescript-eslint_slash_typescript-estree";
+      packageName = "@typescript-eslint/typescript-estree";
+      version = "5.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.16.0.tgz";
+        sha512 = "SE4VfbLWUZl9MR+ngLSARptUv2E8brY0luCdgmUevU6arZRY/KxYoLI/3V/yxaURR8tLRN7bmZtJdgmzLHI6pQ==";
+      };
+    };
+    "@typescript-eslint/utils-5.16.0" = {
+      name = "_at_typescript-eslint_slash_utils";
+      packageName = "@typescript-eslint/utils";
+      version = "5.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.16.0.tgz";
+        sha512 = "iYej2ER6AwmejLWMWzJIHy3nPJeGDuCqf8Jnb+jAQVoPpmWzwQOfa9hWVB8GIQE5gsCv/rfN4T+AYb/V06WseQ==";
+      };
+    };
     "@typescript-eslint/visitor-keys-4.33.0" = {
       name = "_at_typescript-eslint_slash_visitor-keys";
       packageName = "@typescript-eslint/visitor-keys";
@@ -10012,6 +10246,15 @@ let
         sha512 = "uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==";
       };
     };
+    "@typescript-eslint/visitor-keys-5.16.0" = {
+      name = "_at_typescript-eslint_slash_visitor-keys";
+      packageName = "@typescript-eslint/visitor-keys";
+      version = "5.16.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.16.0.tgz";
+        sha512 = "jqxO8msp5vZDhikTwq9ubyMHqZ67UIvawohr4qF3KhlpL7gzSjOd+8471H3nh5LyABkaI85laEKKU8SnGUK5/g==";
+      };
+    };
     "@ungap/promise-all-settled-1.1.2" = {
       name = "_at_ungap_slash_promise-all-settled";
       packageName = "@ungap/promise-all-settled";
@@ -10039,49 +10282,58 @@ let
         sha1 = "c585c0bdb94210198945c6597e4fe23d6e63e084";
       };
     };
-    "@vercel/build-utils-2.14.0" = {
+    "@vercel/build-utils-2.15.0" = {
       name = "_at_vercel_slash_build-utils";
       packageName = "@vercel/build-utils";
-      version = "2.14.0";
+      version = "2.15.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/build-utils/-/build-utils-2.14.0.tgz";
-        sha512 = "Jdl0FkEJbAdB5oqpolIK4m/FO9GtFK86gKpFJt5jdnd5tMLWdPf2vr8uZkxvfs8wW5KdYXt660OSoWHpfdYu5w==";
+        url = "https://registry.npmjs.org/@vercel/build-utils/-/build-utils-2.15.0.tgz";
+        sha512 = "0SwM19Mn//v5RuLG5gjuZVOnn1iYqJDMA+N0qm8cK7bTBEWMiTKqF+VmdXkvg6Y6X6rKviAJnOBUUUP6va6Xaw==";
       };
     };
-    "@vercel/go-1.3.0" = {
+    "@vercel/go-1.3.1" = {
       name = "_at_vercel_slash_go";
       packageName = "@vercel/go";
-      version = "1.3.0";
+      version = "1.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/go/-/go-1.3.0.tgz";
-        sha512 = "eMt4xPq658dFEpmkpXLoj+PX6k15ovwvXX0FlCAcMiQW8JkQcHVXnROnWpngsyMOfTFocYciMAsebtavYwQ6gw==";
+        url = "https://registry.npmjs.org/@vercel/go/-/go-1.3.1.tgz";
+        sha512 = "mNo0DWfc49trswz53Gf0Km7KKdOW1zvlBEP6ZWhEhnEjRcNMHZaLg3dq3jWfttLaQ7ihJ+VOyDImd0NX23C42A==";
       };
     };
-    "@vercel/node-1.13.0" = {
+    "@vercel/node-1.14.0" = {
       name = "_at_vercel_slash_node";
       packageName = "@vercel/node";
-      version = "1.13.0";
+      version = "1.14.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@vercel/node/-/node-1.14.0.tgz";
+        sha512 = "UAb1qQMeTkSXz95yljJpz0MyTzcj++B/1XR0vKFZOs2CEfSkBO1DjzX6BkaKriaihBdbGM/X9UoMJfWfUBBn8Q==";
+      };
+    };
+    "@vercel/node-bridge-2.2.0" = {
+      name = "_at_vercel_slash_node-bridge";
+      packageName = "@vercel/node-bridge";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/node/-/node-1.13.0.tgz";
-        sha512 = "AqdUuJC0+r3q1lcL+Knjb+dHsSDSCRfwFPJ7odRkHO7sfoAkhJI4RussIDFTF7Yvt0e+GmWuYGFAgwSiv4FWEg==";
+        url = "https://registry.npmjs.org/@vercel/node-bridge/-/node-bridge-2.2.0.tgz";
+        sha512 = "ydYlZyIQfsuriF6qTt/F4vaAt+nb4ZKhLEl2o5AQFa5ED7LoPS5w01Xbujy+25pqS1ODu8/bsqOCUSX8y/+tSQ==";
       };
     };
-    "@vercel/python-2.2.0" = {
+    "@vercel/python-2.2.1" = {
       name = "_at_vercel_slash_python";
       packageName = "@vercel/python";
-      version = "2.2.0";
+      version = "2.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/python/-/python-2.2.0.tgz";
-        sha512 = "6DQxYZtB5IOkpeVSmjjKkTOLQcUmslVWwI+7GRNabairY0qqdoW7gfWctMQDNrJ3hy8vVdc9jOMBeRKWTyrDYQ==";
+        url = "https://registry.npmjs.org/@vercel/python/-/python-2.2.1.tgz";
+        sha512 = "UxftYfkXX+e+5aQK8D3j+N0zb8ob4KFjdbLCnWLCMlxg0lJwD432zArgYgc0BSMrZrHqdiWMvPxIgKkad2takA==";
       };
     };
-    "@vercel/ruby-1.3.0" = {
+    "@vercel/ruby-1.3.1" = {
       name = "_at_vercel_slash_ruby";
       packageName = "@vercel/ruby";
-      version = "1.3.0";
+      version = "1.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vercel/ruby/-/ruby-1.3.0.tgz";
-        sha512 = "98PTOukChScYXekWbDxPQEUCoX66W4188yx4Q4qiLTJgYRHsvQ5oWtNL5N0sz80mmYCk6aJglwnPE1d7tvgAmQ==";
+        url = "https://registry.npmjs.org/@vercel/ruby/-/ruby-1.3.1.tgz";
+        sha512 = "stdlKpBUgQT/AxLz+xFpIy2m8xYr7nOA+hjq+MprktWu4RsyIeltSYX49Ju7DNPXdHxyAWxW6tnVENNvh1SOxA==";
       };
     };
     "@vscode/emmet-helper-2.8.4" = {
@@ -10093,13 +10345,22 @@ let
         sha512 = "lUki5QLS47bz/U8IlG9VQ+1lfxMtxMZENmU5nu4Z71eOD5j9FK0SmYGL5NiVJg9WBWeAU0VxRADMY2Qpq7BfVg==";
       };
     };
-    "@vue/cli-overlay-4.5.15" = {
+    "@vscode/test-electron-2.1.3" = {
+      name = "_at_vscode_slash_test-electron";
+      packageName = "@vscode/test-electron";
+      version = "2.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@vscode/test-electron/-/test-electron-2.1.3.tgz";
+        sha512 = "ps/yJ/9ToUZtR1dHfWi1mDXtep1VoyyrmGKC3UnIbScToRQvbUjyy1VMqnMEW3EpMmC3g7+pyThIPtPyCLHyow==";
+      };
+    };
+    "@vue/cli-overlay-4.5.17" = {
       name = "_at_vue_slash_cli-overlay";
       packageName = "@vue/cli-overlay";
-      version = "4.5.15";
+      version = "4.5.17";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-overlay/-/cli-overlay-4.5.15.tgz";
-        sha512 = "0zI0kANAVmjFO2LWGUIzdGPMeE3+9k+KeRDXsUqB30YfRF7abjfiiRPq5BU9pOzlJbVdpRkisschBrvdJqDuDg==";
+        url = "https://registry.npmjs.org/@vue/cli-overlay/-/cli-overlay-4.5.17.tgz";
+        sha512 = "QKKp66VbMg+X8Qh0wgXSwgxLfxY7EIkZkV6bZ6nFqBx8xtaJQVDbTL+4zcUPPA6nygbIcQ6gvTinNEqIqX6FUQ==";
       };
     };
     "@vue/cli-plugin-eslint-4.5.12" = {
@@ -10111,13 +10372,13 @@ let
         sha512 = "nbjGJkWxo/xdD32DwvnEAUwkWYsObpqNk9NuU7T62ehdzHPzz58o3j03YZ7a7T7Le8bYyOWMYsdNfz63F+XiZQ==";
       };
     };
-    "@vue/cli-plugin-router-4.5.15" = {
+    "@vue/cli-plugin-router-4.5.17" = {
       name = "_at_vue_slash_cli-plugin-router";
       packageName = "@vue/cli-plugin-router";
-      version = "4.5.15";
+      version = "4.5.17";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-plugin-router/-/cli-plugin-router-4.5.15.tgz";
-        sha512 = "q7Y6kP9b3k55Ca2j59xJ7XPA6x+iSRB+N4ac0ZbcL1TbInVQ4j5wCzyE+uqid40hLy4fUdlpl4X9fHJEwuVxPA==";
+        url = "https://registry.npmjs.org/@vue/cli-plugin-router/-/cli-plugin-router-4.5.17.tgz";
+        sha512 = "9r9CSwqv2+39XHQPDZJ0uaTtTP7oe0Gx17m7kBhHG3FA7R7AOSk2aVzhHZmDRhzlOxjx9kQSvrOSMfUG0kV4dQ==";
       };
     };
     "@vue/cli-plugin-typescript-4.5.13" = {
@@ -10147,49 +10408,49 @@ let
         sha512 = "CKAZN4iokMMsaUyJRU22oUAz3oS/X9sVBSKAF2/shFBV5xh3jqAlKl8OXZYz4cXGFLA6djNuYrniuLAo7Ku97A==";
       };
     };
-    "@vue/cli-shared-utils-4.5.15" = {
+    "@vue/cli-shared-utils-4.5.17" = {
       name = "_at_vue_slash_cli-shared-utils";
       packageName = "@vue/cli-shared-utils";
-      version = "4.5.15";
+      version = "4.5.17";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-shared-utils/-/cli-shared-utils-4.5.15.tgz";
-        sha512 = "SKaej9hHzzjKSOw1NlFmc6BSE0vcqUQMQiv1cxQ2DhVyy4QxZXBmzmiLBUBe+hYZZs1neXW7n//udeN9bCAY+Q==";
+        url = "https://registry.npmjs.org/@vue/cli-shared-utils/-/cli-shared-utils-4.5.17.tgz";
+        sha512 = "VoFNdxvTW4vZu3ne+j1Mf7mU99J2SAoRVn9XPrsouTUUJablglM8DASk7Ixhsh6ymyL/W9EADQFR6Pgj8Ujjuw==";
       };
     };
-    "@vue/cli-shared-utils-5.0.1" = {
+    "@vue/cli-shared-utils-5.0.4" = {
       name = "_at_vue_slash_cli-shared-utils";
       packageName = "@vue/cli-shared-utils";
-      version = "5.0.1";
+      version = "5.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-shared-utils/-/cli-shared-utils-5.0.1.tgz";
-        sha512 = "oL164c3yDhdLHgiFvSkXuP7z0eEY8gqTYzHHbvQJCIBtRZ/0H9Q7xICpAeMZ63lJvS2+fA5bQfv+kPII/kcjmQ==";
+        url = "https://registry.npmjs.org/@vue/cli-shared-utils/-/cli-shared-utils-5.0.4.tgz";
+        sha512 = "nfAsj8Nopu5sVHMBIaut/YL7NaJFVmTBSTJD7LM17jc5uytrM9JwiRtzCiv3JWRBG78Xdb/s2Xb/1YR4fkdmkQ==";
       };
     };
-    "@vue/cli-ui-5.0.1" = {
+    "@vue/cli-ui-5.0.4" = {
       name = "_at_vue_slash_cli-ui";
       packageName = "@vue/cli-ui";
-      version = "5.0.1";
+      version = "5.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-ui/-/cli-ui-5.0.1.tgz";
-        sha512 = "ikUsGRPc5wW/zbXIpBAp3NwDbTnwJzyAcM0QZwpa6YJ5Rx6kqI2DeUAyRBap6nMAWGtqSeN9I522UwwUY48CEA==";
+        url = "https://registry.npmjs.org/@vue/cli-ui/-/cli-ui-5.0.4.tgz";
+        sha512 = "6RkvN5XphYHfBUhKS7wG2ChrEhdLx05v6ppq53wy0/3N126j/5UM+fl48vbnMzCeRgpTn75IRI89ysPqiDyX3A==";
       };
     };
-    "@vue/cli-ui-addon-webpack-5.0.1" = {
+    "@vue/cli-ui-addon-webpack-5.0.4" = {
       name = "_at_vue_slash_cli-ui-addon-webpack";
       packageName = "@vue/cli-ui-addon-webpack";
-      version = "5.0.1";
+      version = "5.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-ui-addon-webpack/-/cli-ui-addon-webpack-5.0.1.tgz";
-        sha512 = "vaiILTed+6e1so1zqKMA6ej3gYszXJH9kuTdcU3vIYjQfYtSnwPEjNtraM9twsdZzI4zAVLS5nSHCG5fohOJlQ==";
+        url = "https://registry.npmjs.org/@vue/cli-ui-addon-webpack/-/cli-ui-addon-webpack-5.0.4.tgz";
+        sha512 = "QVF5rG9qOVizdq4iZ4NhqwLEigOH+Ulhx9IZpaoLh0VlLqbqrwuHs4QOKNFsuvdGM4LHXCp8XH6EKFScPbJ9Mg==";
       };
     };
-    "@vue/cli-ui-addon-widgets-5.0.1" = {
+    "@vue/cli-ui-addon-widgets-5.0.4" = {
       name = "_at_vue_slash_cli-ui-addon-widgets";
       packageName = "@vue/cli-ui-addon-widgets";
-      version = "5.0.1";
+      version = "5.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@vue/cli-ui-addon-widgets/-/cli-ui-addon-widgets-5.0.1.tgz";
-        sha512 = "PiNz7W7rkz1CuRIuj1aa6f6UaL1iN4CI427mfCjpwy5V50GV6OSnLsmG1KIP3b0ld0X56iUpKw4pb5d77jzuNA==";
+        url = "https://registry.npmjs.org/@vue/cli-ui-addon-widgets/-/cli-ui-addon-widgets-5.0.4.tgz";
+        sha512 = "KmJUazIEZWhy0UaFHV5Uy8AXpTqJgCPizEHhtxs3f8mIkUnwWjcQFG7FGfsAW7RgsN8hwcSZ5ZFjmXhllVwrkw==";
       };
     };
     "@vue/compiler-core-3.2.31" = {
@@ -10822,247 +11083,247 @@ let
         sha512 = "4wOae+5N2RZ+CZXd9ZKwkaDi55IxrSTOjHpxTvQQ4fomtOJmqVxbmICA9jE1jvnqNhpfgz8cnfFagG86wV/xLQ==";
       };
     };
-    "@xmpp/base64-0.12.1" = {
+    "@xmpp/base64-0.13.1" = {
       name = "_at_xmpp_slash_base64";
       packageName = "@xmpp/base64";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/base64/-/base64-0.12.1.tgz";
-        sha512 = "CpPQdhEAveROH5q7GkCMryCMsqIDu4RJOaYi5GJ7oxyrWpgv6bi5225hAD50kAOC4q+NWyksWiLnUwf2+C3kDA==";
+        url = "https://registry.npmjs.org/@xmpp/base64/-/base64-0.13.1.tgz";
+        sha512 = "ifzj81zZc8uhL9Nl8us2NUDfLt3qsbHr8lwdKmrDMk/9unY8aIGjzHdNBJoFFyJe8GSo1NFq3mS7X+X0TwkQYw==";
       };
     };
-    "@xmpp/client-0.12.1" = {
+    "@xmpp/client-0.13.1" = {
       name = "_at_xmpp_slash_client";
       packageName = "@xmpp/client";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/client/-/client-0.12.1.tgz";
-        sha512 = "M9VsUd3wnZHrskHCGAPUbabH+6zIVAqlE5gmV1gTgzM+TwXY3Sz6q3k9Yfz0ERWF9qbOT6+hY3G7spNs9NNVyw==";
+        url = "https://registry.npmjs.org/@xmpp/client/-/client-0.13.1.tgz";
+        sha512 = "DA+pOkWliTKN5C0Bod4rqlZ4hj/CiqQDHRhQgpx7Y/69qsUwK8M/9C02qylpyZSL2TFGzOM6ZMhr/jlMCsL9jQ==";
       };
     };
-    "@xmpp/client-core-0.12.1" = {
+    "@xmpp/client-core-0.13.1" = {
       name = "_at_xmpp_slash_client-core";
       packageName = "@xmpp/client-core";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/client-core/-/client-core-0.12.1.tgz";
-        sha512 = "Gml+Z4qlWgHfFVB2ALfhOkKr9YD5X7NT8JgwXq0xk+P8TbUleGgmrkAaX2fzQbnntuG6puFk3+9C2a7Q71pwXQ==";
+        url = "https://registry.npmjs.org/@xmpp/client-core/-/client-core-0.13.1.tgz";
+        sha512 = "ANVcqzgDCmmUj/R9pf5rJGH41mL16Bo+DRJ+2trKoRHe9p5s0p6IssjhJtTOSVx6oh2ilPXMB8qoMPjTGzY6cw==";
       };
     };
-    "@xmpp/connection-0.12.1" = {
+    "@xmpp/connection-0.13.1" = {
       name = "_at_xmpp_slash_connection";
       packageName = "@xmpp/connection";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/connection/-/connection-0.12.1.tgz";
-        sha512 = "AdOt/fMjuCT+ru6v6tYKdvP42AH2P+pqyL4M71VI9kprifDV03L/Ud8jzCqSVpJUEXDFEAukDG1KNwUkBEIaXw==";
+        url = "https://registry.npmjs.org/@xmpp/connection/-/connection-0.13.1.tgz";
+        sha512 = "A8ojaVRrvGtvRTXcWiOJMnBPAytLFvsz18g/jO9PbnhzuqqeJ6LxmCtyaKqchMdX0lhuZpo0JUgCSPnZ68tXrQ==";
       };
     };
-    "@xmpp/connection-tcp-0.12.1" = {
+    "@xmpp/connection-tcp-0.13.1" = {
       name = "_at_xmpp_slash_connection-tcp";
       packageName = "@xmpp/connection-tcp";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/connection-tcp/-/connection-tcp-0.12.1.tgz";
-        sha512 = "axoxsyyDifNEaKK3gVoVMsCtKm1VsXOdzbGwtvMHwRxiArlbSxLpHLFWv6hjH63BJvNSet1txzHt/0+rrVLWVg==";
+        url = "https://registry.npmjs.org/@xmpp/connection-tcp/-/connection-tcp-0.13.1.tgz";
+        sha512 = "yTVrj5o5rPVbZT5ql5ljzzIZHnLkCuyTNEQpiU9IYvfjWjy4+E2DreUnpRf3IAbpARkMoPq5uQJchH0RE3WBjg==";
       };
     };
-    "@xmpp/debug-0.12.1" = {
+    "@xmpp/debug-0.13.0" = {
       name = "_at_xmpp_slash_debug";
       packageName = "@xmpp/debug";
-      version = "0.12.1";
+      version = "0.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/debug/-/debug-0.12.1.tgz";
-        sha512 = "nQ9w+lkholzAvDKBvPTbKLDAyq5LhTjQ5Qf7vWPqgP56JHvDDAFdQ/YPRJVOFFB5L08/c3+/6AjEz0TD8iSXYA==";
+        url = "https://registry.npmjs.org/@xmpp/debug/-/debug-0.13.0.tgz";
+        sha512 = "4RCN0UsGLmfzzOdDAfzpm8luKprcdo9oRf0cnKqU/TKmbw5PN5F+TqX4we7uc4xHKzpu0rNyEhusKkVOfe3xzw==";
       };
     };
-    "@xmpp/error-0.12.1" = {
+    "@xmpp/error-0.13.1" = {
       name = "_at_xmpp_slash_error";
       packageName = "@xmpp/error";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/error/-/error-0.12.1.tgz";
-        sha512 = "n5UyU25Pl6x1GMAX5tuJPmY9I+cM03iQF06ENOPxPHHLf3TBnoCtpJRP/oONHXK84vpxU9uJBuMAMHWIaWprrQ==";
+        url = "https://registry.npmjs.org/@xmpp/error/-/error-0.13.1.tgz";
+        sha512 = "tKecj36xIGLhLctdYhUOxWs+ZdiJpl0Tfp/GhfrUCKLHj/wq14d62SP9kxa0sDNKOY1uqRq2N9gWZBQHuP+r2Q==";
       };
     };
-    "@xmpp/events-0.12.1" = {
+    "@xmpp/events-0.13.1" = {
       name = "_at_xmpp_slash_events";
       packageName = "@xmpp/events";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/events/-/events-0.12.1.tgz";
-        sha512 = "8kSwhY4ZxuXVG9QCAdQZijJvde0+/VBHZJw0Ase1ZcrBjlL46UfRwVNpru7SBZMIZB8CLav4AaArzlTFDRJljg==";
+        url = "https://registry.npmjs.org/@xmpp/events/-/events-0.13.1.tgz";
+        sha512 = "c538zWUoD7KfMzMWGHyJkXvRYE5exzVjK6NAsMtfNtbVqw9SXJJaGLvDvYSXOQmKQaZz5guUuIUGiHJbr7yjsA==";
       };
     };
-    "@xmpp/id-0.12.1" = {
+    "@xmpp/id-0.13.1" = {
       name = "_at_xmpp_slash_id";
       packageName = "@xmpp/id";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/id/-/id-0.12.1.tgz";
-        sha512 = "tIPSDyYn1Ah2JPmaD9gSHqHYG3nWKzxISGJf0EMeAQ1Hd4pldNv4pKv+mO2ZVrHQie0oc3KC409QASmYfVP7xA==";
+        url = "https://registry.npmjs.org/@xmpp/id/-/id-0.13.1.tgz";
+        sha512 = "ivc7kxfk5sU6PspdQvglsibcWRCr40nbaPEvGYbXO8ymFN6qps91DPlEt0Cc0XJExq7PXo0Yt7DACfe8f7K03g==";
       };
     };
-    "@xmpp/iq-0.12.1" = {
+    "@xmpp/iq-0.13.1" = {
       name = "_at_xmpp_slash_iq";
       packageName = "@xmpp/iq";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/iq/-/iq-0.12.1.tgz";
-        sha512 = "XlYnbCUWS6CgWrLUb9aWl0IJ7FfHbTxSlBybQb9zsOJEHb9J3FBV6SZwNUgmtnTwYtgIt6RTSvZtpGDX7Q5Xcw==";
+        url = "https://registry.npmjs.org/@xmpp/iq/-/iq-0.13.1.tgz";
+        sha512 = "YyJj6up2aFTobTUmjdX86vs0+/WIB8i88QQjDDlzSKdMDDXgrB8B8JAMlEBfAsruAv/ZIwUnE4/yqCeMAehTuA==";
       };
     };
-    "@xmpp/jid-0.12.1" = {
+    "@xmpp/jid-0.13.1" = {
       name = "_at_xmpp_slash_jid";
       packageName = "@xmpp/jid";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/jid/-/jid-0.12.1.tgz";
-        sha512 = "PdXJy17Os5ADr03I+JXIWYLExEZjTW7AH23CwvbS8kLQh/CNrfhbFynW9krUZ4Lf4YAFn88oOsFsQRNgsAj/Vw==";
+        url = "https://registry.npmjs.org/@xmpp/jid/-/jid-0.13.1.tgz";
+        sha512 = "E5ulk4gfPQwPY71TWXapiWzoxxAJz3LP0bDIUXIfgvlf1/2QKP3EcYQ7o+qmI0cLEZwWmwluRGouylqhyuwcAw==";
       };
     };
-    "@xmpp/middleware-0.12.1" = {
+    "@xmpp/middleware-0.13.1" = {
       name = "_at_xmpp_slash_middleware";
       packageName = "@xmpp/middleware";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/middleware/-/middleware-0.12.1.tgz";
-        sha512 = "XZTXKuV3xre9tQe2X2bX20jChagp4hrL83LRgpRHsp3V4SzKsiBWDXb+0rNmyhKrWAeJOxUNPZ7HlV/1ZD5fvA==";
+        url = "https://registry.npmjs.org/@xmpp/middleware/-/middleware-0.13.1.tgz";
+        sha512 = "t7kws9KMgaQURCDMcPjJOm/sEcC2Gs2YtpE35NaTR87NSwr8yZ37ZJL5Kki3Z4qhL6nhMXJPAprc6uqBn5q3Og==";
       };
     };
-    "@xmpp/reconnect-0.12.1" = {
+    "@xmpp/reconnect-0.13.1" = {
       name = "_at_xmpp_slash_reconnect";
       packageName = "@xmpp/reconnect";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/reconnect/-/reconnect-0.12.1.tgz";
-        sha512 = "uORfO/iY2VC4ZK3/dJSd4meU0j96+qeybj62K7sexxJtcw/qM8GAFfpWDsIu/6MhQZ0dOweQ2iZn3gSk66WjMg==";
+        url = "https://registry.npmjs.org/@xmpp/reconnect/-/reconnect-0.13.1.tgz";
+        sha512 = "m/j/mTU7b3cOXP78uGzBbihmJMuXCYcTcwsTHlexj6tj6CE/vpuLNgxvf6pPkO7B9lH0HfezqU7ExHpS+4Nfaw==";
       };
     };
-    "@xmpp/resolve-0.12.1" = {
+    "@xmpp/resolve-0.13.1" = {
       name = "_at_xmpp_slash_resolve";
       packageName = "@xmpp/resolve";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/resolve/-/resolve-0.12.1.tgz";
-        sha512 = "1enBxGpt/0frifKjwkHxsVHOCKC3B1BdcFbrQCc+FQEcVLIsFgAKLAFOp18p0Y1pxqT+O/4IZ4CUUqNFpfyXKg==";
+        url = "https://registry.npmjs.org/@xmpp/resolve/-/resolve-0.13.1.tgz";
+        sha512 = "Lgsl6C/uJCxmYr0jWWOCJMqYvKi5WzN6loZwP7f6ov2nLMOMEZ7TSb66z393/7Pd0hy6DqZeggESMAFOkQH+vw==";
       };
     };
-    "@xmpp/resource-binding-0.12.1" = {
+    "@xmpp/resource-binding-0.13.1" = {
       name = "_at_xmpp_slash_resource-binding";
       packageName = "@xmpp/resource-binding";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/resource-binding/-/resource-binding-0.12.1.tgz";
-        sha512 = "AV3NGIyNBnArvwShNYdsTVHcLPDDXDzDoRk07ZxztN/D5sYQAzhbHK/5BIIkIEOeR91h4qXpSv69QLEYmWj0Ug==";
+        url = "https://registry.npmjs.org/@xmpp/resource-binding/-/resource-binding-0.13.1.tgz";
+        sha512 = "S6PGlfufDTTDlh21ynyJrGR0sMeEYIRq+BKUl4QhsR19BvP0RUW0t8Ypx1QwDY3++ihqRjvCllCmtmFMY1iJsQ==";
       };
     };
-    "@xmpp/sasl-0.12.1" = {
+    "@xmpp/sasl-0.13.1" = {
       name = "_at_xmpp_slash_sasl";
       packageName = "@xmpp/sasl";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/sasl/-/sasl-0.12.1.tgz";
-        sha512 = "KuxuiEX2bhZCB9aYYJjVpVT1MmQHv8BPZGEyRA6YjVqhWCQUSP+OtKV9zy6hLBDBVfd45ybYVC+sMM0i9Y2R9Q==";
+        url = "https://registry.npmjs.org/@xmpp/sasl/-/sasl-0.13.1.tgz";
+        sha512 = "ynhKsL43EtezqJ9s476leHzliMudCAFS4xNG5x4ZFHoc7Iz5J6p6jFI89LGgnk9DeIdk9A/CFrPWTdyjhvyiTQ==";
       };
     };
-    "@xmpp/sasl-anonymous-0.12.1" = {
+    "@xmpp/sasl-anonymous-0.13.1" = {
       name = "_at_xmpp_slash_sasl-anonymous";
       packageName = "@xmpp/sasl-anonymous";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/sasl-anonymous/-/sasl-anonymous-0.12.1.tgz";
-        sha512 = "9A5y9FdwhT8cmTEVkJGl6UV+iYmgPqgbitnFI6DdkS4HzTLQVjV7SjXayrLoOjVniKHnxHOBEbjcQG/H5iHW4w==";
+        url = "https://registry.npmjs.org/@xmpp/sasl-anonymous/-/sasl-anonymous-0.13.1.tgz";
+        sha512 = "l0Bqmva7xw10p8MelD2bHO10LwCPz6CEd/t5xO+Kw98hjI9lX6k5cxW7frvdnxRwPxJbGTciTQKHokYWR4luaA==";
       };
     };
-    "@xmpp/sasl-plain-0.12.1" = {
+    "@xmpp/sasl-plain-0.13.1" = {
       name = "_at_xmpp_slash_sasl-plain";
       packageName = "@xmpp/sasl-plain";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/sasl-plain/-/sasl-plain-0.12.1.tgz";
-        sha512 = "Ym6qCPA86vssLVvt/noiA/YgT6T/IxA5281xinOsZP9wtP/csqbjcBDRD7pk3HAmHhEGwUH61eydbIKHHw7o5w==";
+        url = "https://registry.npmjs.org/@xmpp/sasl-plain/-/sasl-plain-0.13.1.tgz";
+        sha512 = "Xx4ay67Mg6aQFeelTZuY5QatP3cCJsArAuD0AozHKzjUWzyLqqydsDS+yFN23pxkOZPGgyYVebc4gKti4jZ+GA==";
       };
     };
-    "@xmpp/sasl-scram-sha-1-0.12.1" = {
+    "@xmpp/sasl-scram-sha-1-0.13.1" = {
       name = "_at_xmpp_slash_sasl-scram-sha-1";
       packageName = "@xmpp/sasl-scram-sha-1";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/sasl-scram-sha-1/-/sasl-scram-sha-1-0.12.1.tgz";
-        sha512 = "h9OenKiaJDYZCxv2FyMBpoTdmYu2oxy/FIM8FXMgnPJrCru7kBepksIb8lOfcyTyFxbQJk/Vrf8zyBUdAm6Jyg==";
+        url = "https://registry.npmjs.org/@xmpp/sasl-scram-sha-1/-/sasl-scram-sha-1-0.13.1.tgz";
+        sha512 = "qWyR5+v10pykTxQnKfNVUnCnZisA/UmC4Po5EQSgA5dNRuzraqwk/bH5PVi9+M0OcbtdNs9wCO2Hv06YA9AjwA==";
       };
     };
-    "@xmpp/session-establishment-0.12.1" = {
+    "@xmpp/session-establishment-0.13.1" = {
       name = "_at_xmpp_slash_session-establishment";
       packageName = "@xmpp/session-establishment";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/session-establishment/-/session-establishment-0.12.1.tgz";
-        sha512 = "6+uffTA/Wy5JmoZIs3uk0oPKuLrb4MEzwo6J6QZYPHC5pwKH9dYaQ+Xjw03qaac8i73HREhK5p2cA5zpxPZoRw==";
+        url = "https://registry.npmjs.org/@xmpp/session-establishment/-/session-establishment-0.13.1.tgz";
+        sha512 = "uba6BZeeSJtbHtU+pCumSiX/zuc9hUdN5dVRNjvRjr/ZcXLMuC5MroRyrld+fm/rQYQLJjF4BcIaxvysXTCAGA==";
       };
     };
-    "@xmpp/starttls-0.12.1" = {
+    "@xmpp/starttls-0.13.1" = {
       name = "_at_xmpp_slash_starttls";
       packageName = "@xmpp/starttls";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/starttls/-/starttls-0.12.1.tgz";
-        sha512 = "AZPXppxar9n1J1IOG39xkZf/eoPQXhq3y5/tVOEyeG+WRcJGddeYJleXUm4Jwol+PTc0l0F6tlThPlhrIt/8vA==";
+        url = "https://registry.npmjs.org/@xmpp/starttls/-/starttls-0.13.1.tgz";
+        sha512 = "rQumwpbD5+yclcXgPNDF7Jg1mzDFejHKZehD6JRti+Emsxayst/qFDq3uMO3x6P+nKexL4mMoKUtWHlJM7BUGw==";
       };
     };
-    "@xmpp/stream-features-0.12.1" = {
+    "@xmpp/stream-features-0.13.1" = {
       name = "_at_xmpp_slash_stream-features";
       packageName = "@xmpp/stream-features";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/stream-features/-/stream-features-0.12.1.tgz";
-        sha512 = "OautwK8DMSZSeAU9YFt6wdmHutbi7I/Gy5bzR12UYgtjFcgZ2FUNhj4kYOFcwOhCG8hKyGgMvv0V7/0iDr40QA==";
+        url = "https://registry.npmjs.org/@xmpp/stream-features/-/stream-features-0.13.1.tgz";
+        sha512 = "yZg+CXBRVXsIQzu4SI5UYlDZHmg3wY6YXy4MbeLiI4O8OQ/oCz6OHJlHKUnFl+cGmjDXvhN4Ga6pRhbEIIqM/g==";
       };
     };
-    "@xmpp/stream-management-0.12.1" = {
+    "@xmpp/stream-management-0.13.1" = {
       name = "_at_xmpp_slash_stream-management";
       packageName = "@xmpp/stream-management";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/stream-management/-/stream-management-0.12.1.tgz";
-        sha512 = "3fsSGFAKZ+SpdvQQ+cgPUdZcekI66rpMeUMDJMiWG5hGTicp2PfoDVjAvlPlgsTmIudm2UdNVW62MMZxnRnjbQ==";
+        url = "https://registry.npmjs.org/@xmpp/stream-management/-/stream-management-0.13.1.tgz";
+        sha512 = "06dhJAlGn+MU5ESrvIUg5xOS7azVE0swq86cx4SCv7t5dWL1WBj4xg2qigLn1hMnFkDw0bO/SOikXTxqGii/hA==";
       };
     };
-    "@xmpp/tcp-0.12.1" = {
+    "@xmpp/tcp-0.13.1" = {
       name = "_at_xmpp_slash_tcp";
       packageName = "@xmpp/tcp";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/tcp/-/tcp-0.12.1.tgz";
-        sha512 = "sILbQli4EpqfsTmeVj/INlhA0ZYUYdRkp9wtKbDaIv53QAUaD62L37TYXFCUEnyIxOpxdecNAMbgpnarv15bcg==";
+        url = "https://registry.npmjs.org/@xmpp/tcp/-/tcp-0.13.1.tgz";
+        sha512 = "N/AQBT+6Updb/E8A1SYdMbIJGaRFG8+7+bkm9MLw44UsihA6Yg0fmvC02O+BjNg3tXGkcMYLhu/8NYpjK4NlQg==";
       };
     };
-    "@xmpp/tls-0.12.1" = {
+    "@xmpp/tls-0.13.1" = {
       name = "_at_xmpp_slash_tls";
       packageName = "@xmpp/tls";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/tls/-/tls-0.12.1.tgz";
-        sha512 = "KMMEzRQCdSTN7uCL2CmRcxvlfKcRSGwHrqKuGflvYAzvuQEJaRS2vAzvXmP2derEnJzG1Jb4Fle888MRjifWbg==";
+        url = "https://registry.npmjs.org/@xmpp/tls/-/tls-0.13.1.tgz";
+        sha512 = "ecOmnrZmRbMMPDdvDNirw7sYQHt//YV7UJgfS4c9M+R5ljP2eUJiAiotEEykjKJ6CJPMMxdTnrLLP3ullsgfog==";
       };
     };
-    "@xmpp/websocket-0.12.1" = {
+    "@xmpp/websocket-0.13.1" = {
       name = "_at_xmpp_slash_websocket";
       packageName = "@xmpp/websocket";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/websocket/-/websocket-0.12.1.tgz";
-        sha512 = "r1R2uzqSc5uFEImWZCI43oduha0jZqTS8iCmryB4aSDsaevQgeZgOOSpv8y4Jui5v5C1asnQzFb7H164SUcGkw==";
+        url = "https://registry.npmjs.org/@xmpp/websocket/-/websocket-0.13.1.tgz";
+        sha512 = "UyMYyy/0Cm2UtVoAlhfV31u6LzGrBUU0h7I0qGCq1yYPQpscehNl8lXE4vmB8OfpeDvSZmvGk2vJAvGxzunoDQ==";
       };
     };
-    "@xmpp/xml-0.12.1" = {
+    "@xmpp/xml-0.13.1" = {
       name = "_at_xmpp_slash_xml";
       packageName = "@xmpp/xml";
-      version = "0.12.1";
+      version = "0.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@xmpp/xml/-/xml-0.12.1.tgz";
-        sha512 = "3SIr/jmyHDMkCzOtcH03YG9qTAJeE7auPg/V7e9tJrhiW329hNMhg8+VAO72Tp1AOi5bMhma09ACRS2Y9bMOKA==";
+        url = "https://registry.npmjs.org/@xmpp/xml/-/xml-0.13.1.tgz";
+        sha512 = "GMfYB3PKY9QzsMnl3dPohgPBGd1JQTBanKOaZexJCSYJN2cdYLU2HGhjMtDlGSno6h9U+t0oO7r0igsJwyigwg==";
       };
     };
     "@xstate/fsm-1.6.5" = {
@@ -11524,13 +11785,13 @@ let
         sha1 = "6a7990437ca736d5e1288db92bd3266d5f5cb2aa";
       };
     };
-    "addons-linter-4.9.0" = {
+    "addons-linter-4.14.0" = {
       name = "addons-linter";
       packageName = "addons-linter";
-      version = "4.9.0";
+      version = "4.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/addons-linter/-/addons-linter-4.9.0.tgz";
-        sha512 = "dknaL2zU9faJHpObJSFhh7RKM7S2uUImQL0I/tIny862wp8u6O7EhFu1ktdFRLO3NirHOTdn0366EcRrbAt1yg==";
+        url = "https://registry.npmjs.org/addons-linter/-/addons-linter-4.14.0.tgz";
+        sha512 = "TH3/PMS4Dd0Jf3kXW7DLXseHZcD7ZbnfnQAztkrP4YC0HQKQVZJ+lGOuDOGUtVQDMwC/eEdvHvZoRnHDer5qkg==";
       };
     };
     "addons-moz-compare-1.2.0" = {
@@ -11749,6 +12010,15 @@ let
         sha512 = "bzqAEZOjkrUMl2afH8dknrq5KEk2SrwdBROR+vH1EKVQTqaUbJVPdc/gEdggTMM0Se+s+Ja4ju4TlNcStKl2Hw==";
       };
     };
+    "ajv-8.11.0" = {
+      name = "ajv";
+      packageName = "ajv";
+      version = "8.11.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz";
+        sha512 = "wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==";
+      };
+    };
     "ajv-8.9.0" = {
       name = "ajv";
       packageName = "ajv";
@@ -12100,22 +12370,22 @@ let
         sha1 = "c3b33ab5ee360d86e0e628f0468ae7ef27d654df";
       };
     };
-    "ansi-regex-3.0.0" = {
+    "ansi-regex-3.0.1" = {
       name = "ansi-regex";
       packageName = "ansi-regex";
-      version = "3.0.0";
+      version = "3.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz";
-        sha1 = "ed0317c322064f79466c02966bddb605ab37d998";
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz";
+        sha512 = "+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==";
       };
     };
-    "ansi-regex-4.1.0" = {
+    "ansi-regex-4.1.1" = {
       name = "ansi-regex";
       packageName = "ansi-regex";
-      version = "4.1.0";
+      version = "4.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz";
-        sha512 = "1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==";
+        url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz";
+        sha512 = "ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==";
       };
     };
     "ansi-regex-5.0.1" = {
@@ -13378,6 +13648,15 @@ let
         sha512 = "+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==";
       };
     };
+    "asn1js-2.3.2" = {
+      name = "asn1js";
+      packageName = "asn1js";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/asn1js/-/asn1js-2.3.2.tgz";
+        sha512 = "IYzujqcOk7fHaePpTyvD3KPAA0AjT3qZlaQAw76zmPPAV/XTjhO+tbHjbFbIQZIhw+fk9wCSfb0Z6K+JHe8Q2g==";
+      };
+    };
     "assert-1.5.0" = {
       name = "assert";
       packageName = "assert";
@@ -13954,31 +14233,22 @@ let
         sha1 = "00f35b2d27ac91b1f0d3ef2084c98cf1d1f0adc3";
       };
     };
-    "aws-sdk-2.1085.0" = {
+    "aws-sdk-2.1097.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.1085.0";
+      version = "2.1097.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1085.0.tgz";
-        sha512 = "zL20v5QXoSsb2S6RKAhDmfnZYUIRldR93ihJ6mCYrw6Zl+Dir2SVmALy++U/zduDbKB4NaU72mscumx2RWc7Hg==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1097.0.tgz";
+        sha512 = "fChMDiSfWcW0EUWmiqlyc+VAIXKH0w7BBruL3cVWSwO+5oA5A9juGF4NCBV2/KAHzaKaG0hXKPE49Wh6Lq74ag==";
       };
     };
-    "aws-sdk-2.1091.0" = {
+    "aws-sdk-2.1101.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.1091.0";
+      version = "2.1101.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1091.0.tgz";
-        sha512 = "DSidFjHdZZopF2kBt6I5wlkxeV5xhXWWXtLtZVQw9g9RQxFnmm+B3iBf1mQtw9fPspfyKyQwnBUNnvMtPku3Yw==";
-      };
-    };
-    "aws-sdk-2.1092.0" = {
-      name = "aws-sdk";
-      packageName = "aws-sdk";
-      version = "2.1092.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1092.0.tgz";
-        sha512 = "8PH2rOgZazGT3VfGPkKcvzz2K9ylVfDniJH4WfJXHEBGxu0+XEMDbjuYpe8k/L1C7w0UTP6CuChjqCxgJznrxg==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1101.0.tgz";
+        sha512 = "7lyVb7GXGl8yyu954Qxf6vU6MrcgFlmKyTLBVXJyo3Phn1OB+qOExA55WtSC6gQiQ7e5TeWOn1RUHLg30ywTBA==";
       };
     };
     "aws-sign2-0.6.0" = {
@@ -14044,6 +14314,15 @@ let
         sha512 = "Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==";
       };
     };
+    "axios-0.25.0" = {
+      name = "axios";
+      packageName = "axios";
+      version = "0.25.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz";
+        sha512 = "cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==";
+      };
+    };
     "axios-0.26.0" = {
       name = "axios";
       packageName = "axios";
@@ -14197,13 +14476,13 @@ let
         sha512 = "7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==";
       };
     };
-    "babel-loader-8.2.3" = {
+    "babel-loader-8.2.4" = {
       name = "babel-loader";
       packageName = "babel-loader";
-      version = "8.2.3";
+      version = "8.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.3.tgz";
-        sha512 = "n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw==";
+        url = "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.4.tgz";
+        sha512 = "8dytA3gcvPPPv4Grjhnt8b5IIiTcq/zeXOPk4iTYI0SVXcsmuGg7JtBRDp8S9X+gJfhQ8ektjXZlDu1Bb33U8A==";
       };
     };
     "babel-plugin-dynamic-import-node-2.3.3" = {
@@ -15043,15 +15322,6 @@ let
         sha512 = "0ilVjnE2diLdbec/3KN14SP0KE85wh8v/FceNRMbAB2ioc3yTj9tgqdoK9tFEH++TZ10JreTS29qTwg7+SpTiQ==";
       };
     };
-    "bent-7.3.12" = {
-      name = "bent";
-      packageName = "bent";
-      version = "7.3.12";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/bent/-/bent-7.3.12.tgz";
-        sha512 = "T3yrKnVGB63zRuoco/7Ybl7BwwGZR0lceoVG5XmQyMIH9s19SV5m+a8qam4if0zQuAmOQTyPTPmsQBdAorGK3w==";
-      };
-    };
     "bep53-range-1.1.1" = {
       name = "bep53-range";
       packageName = "bep53-range";
@@ -15529,13 +15799,13 @@ let
         sha512 = "Xzk1FJFHmsc9H8IKFtDUkfAZIT1HW8r6UqajfZBBxWmpA1v7FsPO8xPFtnFzCqcXlPN3yi8dDmlqZCemyB7P8w==";
       };
     };
-    "bittorrent-protocol-3.5.1" = {
+    "bittorrent-protocol-3.5.2" = {
       name = "bittorrent-protocol";
       packageName = "bittorrent-protocol";
-      version = "3.5.1";
+      version = "3.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bittorrent-protocol/-/bittorrent-protocol-3.5.1.tgz";
-        sha512 = "euVSavQL0jBqRcbsNs5zUP9Ygm+OW5vCDDaatC6vrONtXp+eVe4sO1wA58Gig3IYOdRSBKl53auniWEAJ9quxg==";
+        url = "https://registry.npmjs.org/bittorrent-protocol/-/bittorrent-protocol-3.5.2.tgz";
+        sha512 = "IoUKeNg5aIoUfL7iYLM3L6CsuV14iEByyqdT3f2uFK4zlJiQr+kb86ERlrobYBBIj6qW6GJ9eyAU8GhL3IhFrA==";
       };
     };
     "bittorrent-tracker-7.7.0" = {
@@ -15547,13 +15817,13 @@ let
         sha1 = "ffd2eabc141d36ed5c1817df7e992f91fd7fc65c";
       };
     };
-    "bittorrent-tracker-9.18.4" = {
+    "bittorrent-tracker-9.18.5" = {
       name = "bittorrent-tracker";
       packageName = "bittorrent-tracker";
-      version = "9.18.4";
+      version = "9.18.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bittorrent-tracker/-/bittorrent-tracker-9.18.4.tgz";
-        sha512 = "QpGYWMUab4CykgyJX/XcLdfQRp/Dg4qtGZqQTQlDtIXYHj9wnsO6dCH1jHWdGTyFfeofnuEjahUpaxquPZlyBQ==";
+        url = "https://registry.npmjs.org/bittorrent-tracker/-/bittorrent-tracker-9.18.5.tgz";
+        sha512 = "yh/lGHLNuTNZJJlUAmikYOX+njHIr8BFqCxJiXSQ3FaEmhj2xhe1OXF9DcrHpmMYmAQEKWC6+P/uNWGRKdkH9g==";
       };
     };
     "bitwise-xor-0.0.0" = {
@@ -15628,13 +15898,13 @@ let
         sha1 = "825a8fc536a5dc43193467f3124f7e9b78b21cef";
       };
     };
-    "blakejs-1.1.1" = {
+    "blakejs-1.2.1" = {
       name = "blakejs";
       packageName = "blakejs";
-      version = "1.1.1";
+      version = "1.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/blakejs/-/blakejs-1.1.1.tgz";
-        sha512 = "bLG6PHOCZJKNshTjGRBvET0vTciwQE6zFKOKKXPDJfwFBd4Ac0yBfPZqcGvGJap50l7ktvlpFqc2jGVaUgbJgg==";
+        url = "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz";
+        sha512 = "QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==";
       };
     };
     "blessed-0.1.81" = {
@@ -16078,13 +16348,13 @@ let
         sha1 = "4d67dc2602c0cc16dd9bce7ebf87e948290f5812";
       };
     };
-    "bower-1.8.13" = {
+    "bower-1.8.14" = {
       name = "bower";
       packageName = "bower";
-      version = "1.8.13";
+      version = "1.8.14";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bower/-/bower-1.8.13.tgz";
-        sha512 = "8eWko16JlCTdaZZG70kddHPed17pHEbH8/IjfP4IFkQsfEqRsyNM09Dc8cDBFkSvtQ/2lTea7A+bMhRggG2a+Q==";
+        url = "https://registry.npmjs.org/bower/-/bower-1.8.14.tgz";
+        sha512 = "8Rq058FD91q9Nwthyhw0la9fzpBz0iwZTrt51LWl+w+PnJgZk9J+5wp3nibsJcIUPglMYXr4NRBaR+TUj0OkBQ==";
       };
     };
     "bower-endpoint-parser-0.2.1" = {
@@ -16375,22 +16645,22 @@ let
         sha512 = "qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==";
       };
     };
-    "browser-sync-client-2.27.7" = {
+    "browser-sync-client-2.27.9" = {
       name = "browser-sync-client";
       packageName = "browser-sync-client";
-      version = "2.27.7";
+      version = "2.27.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.27.7.tgz";
-        sha512 = "wKg9UP9a4sCIkBBAXUdbkdWFJzfSAQizGh+nC19W9y9zOo9s5jqeYRFUUbs7x5WKhjtspT+xetVp9AtBJ6BmWg==";
+        url = "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.27.9.tgz";
+        sha512 = "FHW8kydp7FXo6jnX3gXJCpHAHtWNLK0nx839nnK+boMfMI1n4KZd0+DmTxHBsHsF3OHud4V4jwoN8U5HExMIdQ==";
       };
     };
-    "browser-sync-ui-2.27.7" = {
+    "browser-sync-ui-2.27.9" = {
       name = "browser-sync-ui";
       packageName = "browser-sync-ui";
-      version = "2.27.7";
+      version = "2.27.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.27.7.tgz";
-        sha512 = "Bt4OQpx9p18OIzk0KKyu7jqlvmjacasUlk8ARY3uuIyiFWSBiRgr2i6XY8dEMF14DtbooaEBOpHEu9VCYvMcCw==";
+        url = "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.27.9.tgz";
+        sha512 = "rsduR2bRIwFvM8CX6iY/Nu5aWub0WB9zfSYg9Le/RV5N5DEyxJYey0VxdfWCnzDOoelassTDzYQo+r0iJno3qw==";
       };
     };
     "browserify-16.5.2" = {
@@ -16501,13 +16771,13 @@ let
         sha512 = "HI4lPveGKUR0x2StIz+2FXfDk9SfVMrxn6PLh1JeGUwcuoDkdKZebWiyLRJ68iIPDpMI4JLVDf7S7XzslgWOhw==";
       };
     };
-    "browserslist-4.20.0" = {
+    "browserslist-4.20.2" = {
       name = "browserslist";
       packageName = "browserslist";
-      version = "4.20.0";
+      version = "4.20.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.20.0.tgz";
-        sha512 = "bnpOoa+DownbciXj0jVGENf8VYQnE2LNWomhYuCsMmmx9Jd9lwq0WXODuwpSsp8AVdKM2/HorrzxAfbKvWTByQ==";
+        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz";
+        sha512 = "CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==";
       };
     };
     "brq-0.1.8" = {
@@ -16600,13 +16870,13 @@ let
         sha512 = "66UkjoB9f7lhT+WKgYq8MQa6nkr96mlX64JYMlIsXe/X4VeqNwvsx7UOE3ZqD6lkwg8GvBhapRTWj0qWO3Pw8w==";
       };
     };
-    "bson-4.6.1" = {
+    "bson-4.6.2" = {
       name = "bson";
       packageName = "bson";
-      version = "4.6.1";
+      version = "4.6.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bson/-/bson-4.6.1.tgz";
-        sha512 = "I1LQ7Hz5zgwR4QquilLNZwbhPw0Apx7i7X9kGMBTsqPdml/03Q9NBtD9nt/19ahjlphktQImrnderxqpzeVDjw==";
+        url = "https://registry.npmjs.org/bson/-/bson-4.6.2.tgz";
+        sha512 = "VeJKHShcu1b/ugl0QiujlVuBepab714X9nNyBdA1kfekuDGecxgpTA2Z6nYbagrWFeiIyzSWIOzju3lhj+RNyQ==";
       };
     };
     "btc-rpc-client-git://github.com/btc21/btc-rpc-client" = {
@@ -17006,13 +17276,13 @@ let
         sha1 = "cb94faeb61c8696451db36534e1422f94f0aee88";
       };
     };
-    "builtins-4.0.0" = {
+    "builtins-4.1.0" = {
       name = "builtins";
       packageName = "builtins";
-      version = "4.0.0";
+      version = "4.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/builtins/-/builtins-4.0.0.tgz";
-        sha512 = "qC0E2Dxgou1IHhvJSLwGDSTvokbRovU5zZFuDY6oY8Y2lF3nGt5Ad8YZK7GMtqzY84Wu7pXTPeHQeHcXSXsRhw==";
+        url = "https://registry.npmjs.org/builtins/-/builtins-4.1.0.tgz";
+        sha512 = "1bPRZQtmKaO6h7qV1YHXNtr6nCK28k0Zo95KM4dXfILcZZwoHJBN1m3lfLv9LPkcOZlrSr+J1bzMaZFO98Yq0w==";
       };
     };
     "bulk-write-stream-1.1.4" = {
@@ -17087,13 +17357,13 @@ let
         sha512 = "y7tTxhGKXcyBxRKAni+awqx8uqaJKrSFSNFSeRG5CsWNdmy2BIK+6VGWEW7TZnIO/533mtMEA4rOevQV815YJw==";
       };
     };
-    "busboy-1.4.0" = {
+    "busboy-1.5.0" = {
       name = "busboy";
       packageName = "busboy";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/busboy/-/busboy-1.4.0.tgz";
-        sha512 = "TytIELfX6IPn1OClqcBz0NFE6+JT9e3iW0ZpgnEl7ffsfDxvRZGHfPaSHGbrI443nSV3GutCDWuqLB6yHY92Ew==";
+        url = "https://registry.npmjs.org/busboy/-/busboy-1.5.0.tgz";
+        sha512 = "bTXFtUV/DkvfwzHD7yjAkRK5/F3RuF2Ab/qWvf5plbHZMSCea8mxOdqMj8tG1PoSNj/Qi0cb3IoRPEj6qXAGgw==";
       };
     };
     "bval-0.1.6" = {
@@ -17222,15 +17492,6 @@ let
         sha512 = "/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==";
       };
     };
-    "bytesish-0.4.4" = {
-      name = "bytesish";
-      packageName = "bytesish";
-      version = "0.4.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/bytesish/-/bytesish-0.4.4.tgz";
-        sha512 = "i4uu6M4zuMUiyfZN4RU2+i9+peJh//pXhd9x1oSe1LBkZ3LEbCoygu8W0bXTukU1Jme2txKuotpCZRaC3FLxcQ==";
-      };
-    };
     "cacache-12.0.4" = {
       name = "cacache";
       packageName = "cacache";
@@ -17249,6 +17510,15 @@ let
         sha512 = "VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==";
       };
     };
+    "cacache-16.0.3" = {
+      name = "cacache";
+      packageName = "cacache";
+      version = "16.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cacache/-/cacache-16.0.3.tgz";
+        sha512 = "eC7wYodNCVb97kuHGk5P+xZsvUJHkhSEOyNwkenqQPAsOtrTjvWOE5vSPNBpz9d8X3acIf6w2Ub5s4rvOCTs4g==";
+      };
+    };
     "cache-base-1.0.1" = {
       name = "cache-base";
       packageName = "cache-base";
@@ -17645,22 +17915,22 @@ let
         sha512 = "bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==";
       };
     };
-    "caniuse-lite-1.0.30001314" = {
+    "caniuse-lite-1.0.30001320" = {
       name = "caniuse-lite";
       packageName = "caniuse-lite";
-      version = "1.0.30001314";
+      version = "1.0.30001320";
       src = fetchurl {
-        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001314.tgz";
-        sha512 = "0zaSO+TnCHtHJIbpLroX7nsD+vYuOVjl3uzFbJO1wMVbuveJA0RK2WcQA9ZUIOiO0/ArMiMgHJLxfEZhQiC0kw==";
+        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001320.tgz";
+        sha512 = "MWPzG54AGdo3nWx7zHZTefseM5Y1ccM7hlQKHRqJkPozUaw3hNbBTMmLn16GG2FUzjR13Cr3NPfhIieX5PzXDA==";
       };
     };
-    "canvas-2.9.0" = {
+    "canvas-2.9.1" = {
       name = "canvas";
       packageName = "canvas";
-      version = "2.9.0";
+      version = "2.9.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/canvas/-/canvas-2.9.0.tgz";
-        sha512 = "0l93g7uxp7rMyr7H+XRQ28A3ud0dKIUTIEkUe1Dxh4rjUYN7B93+SjC3r1PDKA18xcQN87OFGgUnyw7LSgNLSQ==";
+        url = "https://registry.npmjs.org/canvas/-/canvas-2.9.1.tgz";
+        sha512 = "vSQti1uG/2gjv3x6QLOZw7TctfufaerTWbVe+NSduHxxLGB+qf3kFgQ6n66DSnuoINtVUjrLLIK2R+lxrBG07A==";
       };
     };
     "canvg-3.0.7" = {
@@ -17807,22 +18077,22 @@ let
         sha512 = "eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==";
       };
     };
-    "cdk8s-1.5.39" = {
+    "cdk8s-1.5.52" = {
       name = "cdk8s";
       packageName = "cdk8s";
-      version = "1.5.39";
+      version = "1.5.52";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cdk8s/-/cdk8s-1.5.39.tgz";
-        sha512 = "xwb0PxV5u3/Bubc1vda1Rz2hQcDiC2kiNBie/vgCyYt+Z70KGi5i5Cz9X3ZEHGb7yuAU4jk0LyVBQdPfUu3qIw==";
+        url = "https://registry.npmjs.org/cdk8s/-/cdk8s-1.5.52.tgz";
+        sha512 = "xqVD2lUGC3JJC1Zl2YWDop5xcJRl0OT91PAkT7qrWO5Xho4cz3B3NA3Cua4Q7bcLQViL7CeRdH4d9zL9mJmuMw==";
       };
     };
-    "cdk8s-plus-22-1.0.0-beta.142" = {
+    "cdk8s-plus-22-1.0.0-beta.158" = {
       name = "cdk8s-plus-22";
       packageName = "cdk8s-plus-22";
-      version = "1.0.0-beta.142";
+      version = "1.0.0-beta.158";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cdk8s-plus-22/-/cdk8s-plus-22-1.0.0-beta.142.tgz";
-        sha512 = "Ted9JMqKBdKdXZp2kLaeWfYOU1/a7Fy8FnqGraxkzXYS7Gd6Cx/3PHT3SVl0sAnV9a0uhy/DLRVKWA+J6Dc+5w==";
+        url = "https://registry.npmjs.org/cdk8s-plus-22/-/cdk8s-plus-22-1.0.0-beta.158.tgz";
+        sha512 = "//RAiob+IkkJxMtt2GhLUIchljTjdwkfPSqC+R3scZLtDM1yPlyN1u5qKp/3C6anm2nKtw96zAENpqzfXdZasw==";
       };
     };
     "cdktf-0.9.4" = {
@@ -19292,6 +19562,15 @@ let
         sha1 = "6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184";
       };
     };
+    "co-body-6.1.0" = {
+      name = "co-body";
+      packageName = "co-body";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/co-body/-/co-body-6.1.0.tgz";
+        sha512 = "m7pOT6CdLN7FuXUcpuz/8lfQ/L77x8SchHCF4G0RBTJO20Wzmhn5Sp4/5WsKy8OSpifBSUrmg83qEqaDHdyFuQ==";
+      };
+    };
     "co-from-stream-0.0.0" = {
       name = "co-from-stream";
       packageName = "co-from-stream";
@@ -19346,15 +19625,6 @@ let
         sha512 = "tge3BeOtehBouqo8sdrjRuQxsAWuwUxWJN1pTttZ8HpV+fe2fxmBE9lqrzzOlRIysBvgsZr7D0FdNfrwRwpK8A==";
       };
     };
-    "code-block-writer-10.1.1" = {
-      name = "code-block-writer";
-      packageName = "code-block-writer";
-      version = "10.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/code-block-writer/-/code-block-writer-10.1.1.tgz";
-        sha512 = "67ueh2IRGst/51p0n6FvPrnRjAGHY5F8xdjkgrYE7DDzpJe6qA07RYQ9VcoUeo5ATOjSOiWpSL3SWBRRbempMw==";
-      };
-    };
     "code-excerpt-3.0.0" = {
       name = "code-excerpt";
       packageName = "code-excerpt";
@@ -19400,13 +19670,13 @@ let
         sha512 = "3WQV/Fpa77nvzjUlc+0u53uIroJyyMB2Qwl++aXpAiDIsrsiAQq4uCURwdRBRX+eLkOTIAmT0L4qna3T7+2pUg==";
       };
     };
-    "codemaker-1.55.0" = {
+    "codemaker-1.55.1" = {
       name = "codemaker";
       packageName = "codemaker";
-      version = "1.55.0";
+      version = "1.55.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/codemaker/-/codemaker-1.55.0.tgz";
-        sha512 = "oVCJ3PUqkMf65pS8TtstLSn5AAGmuDTfrjlZjG8qOcOMHvG/w12iJ4ZlJt/wULaAqlYh9bTemXaGIzT5YbX43A==";
+        url = "https://registry.npmjs.org/codemaker/-/codemaker-1.55.1.tgz";
+        sha512 = "W0MZSFgqfr9mgKbYLHsTNYTMKiXQE9hDHs6qke5dC5S9ZlFgcWG2zdpznknwvPLDDuWP8Z5QL71MjAM21hEPOg==";
       };
     };
     "codepage-1.4.0" = {
@@ -19913,6 +20183,15 @@ let
         sha512 = "JJfP2saEKbQqvW+FI93OYUB4ByV5cizMpFMiiJI8xDbBvQvSkIk0VvQdn1CZ8mqAO8Loq2h0gYTYtDFUZUeERw==";
       };
     };
+    "commander-9.1.0" = {
+      name = "commander";
+      packageName = "commander";
+      version = "9.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/commander/-/commander-9.1.0.tgz";
+        sha512 = "i0/MaqBtdbnJ4XQs4Pmyb+oFQl+q0lsAmokVUH92SlSw4fkeAcG3bVon+Qt7hmtF+u3Het6o4VgrcY3qAoEB6w==";
+      };
+    };
     "commandpost-1.4.0" = {
       name = "commandpost";
       packageName = "commandpost";
@@ -20444,22 +20723,22 @@ let
         sha1 = "c20b96d8c617748aaf1c16021760cd27fcb8cb75";
       };
     };
-    "constructs-10.0.84" = {
+    "constructs-10.0.97" = {
       name = "constructs";
       packageName = "constructs";
-      version = "10.0.84";
+      version = "10.0.97";
       src = fetchurl {
-        url = "https://registry.npmjs.org/constructs/-/constructs-10.0.84.tgz";
-        sha512 = "7Id7kN3oIlsr0IQ2ghC1I4xLWOUMorC9P0he007/TvrnA+2nmUjODRNYq536m/1tRV668H78dvZ4VQ6+ExOHIw==";
+        url = "https://registry.npmjs.org/constructs/-/constructs-10.0.97.tgz";
+        sha512 = "2193Y3iDLY9sYCd89eb4TfjeDN+oD5ocl5d1LRnbGwlmvMe2fWqd9i84ET6K8K/PXBPSTyRQghnpw+Smn8b9vA==";
       };
     };
-    "constructs-3.3.239" = {
+    "constructs-3.3.250" = {
       name = "constructs";
       packageName = "constructs";
-      version = "3.3.239";
+      version = "3.3.250";
       src = fetchurl {
-        url = "https://registry.npmjs.org/constructs/-/constructs-3.3.239.tgz";
-        sha512 = "Is6qgAkws98ZtOBro4E9Mjp6p4mkElvdURXNWx0ho40RbSBAOe/hYklP7nn1+k6hA1H/fcFkVZedgQrs2igj/A==";
+        url = "https://registry.npmjs.org/constructs/-/constructs-3.3.250.tgz";
+        sha512 = "D1817bciQBs1xFEx1+Yh0ynd4GmrrjNPo93Z3Q8H+bxHBfRN00xSCfgDHttv+dk+6UEA43eYaI4SNYbmfSj2gQ==";
       };
     };
     "consume-http-header-1.0.0" = {
@@ -20796,13 +21075,13 @@ let
         sha1 = "7e3e48bbe6d997b1417ddca2868204b4d3d85715";
       };
     };
-    "convict-6.2.1" = {
+    "convict-6.2.2" = {
       name = "convict";
       packageName = "convict";
-      version = "6.2.1";
+      version = "6.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/convict/-/convict-6.2.1.tgz";
-        sha512 = "Mn4AJiYkR3TAZH1Xm/RU7gFS/0kM5TBSAQDry8y40Aez0ASY+3boUhv+3QE5XbOXiXM2JjdhkKve3IsBvWCibQ==";
+        url = "https://registry.npmjs.org/convict/-/convict-6.2.2.tgz";
+        sha512 = "3MsROJiEFN3BAzeFit1t87t7EUFzd44MNd13MLSikV2dsnDl7znwKgtYPPONtnDzxiDW0nBAsxVhSRNrjUrTTg==";
       };
     };
     "cookie-0.0.4" = {
@@ -20958,6 +21237,15 @@ let
         sha512 = "XBlx8HSqrT0ObQwmSzM7WE5k8FxTV75h1DX1Z3n6NhQ/UYYAvInWYmG06vFt7hQZArE2fuO62aihiWIVQwh1sw==";
       };
     };
+    "copy-to-2.0.1" = {
+      name = "copy-to";
+      packageName = "copy-to";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/copy-to/-/copy-to-2.0.1.tgz";
+        sha1 = "2680fbb8068a48d08656b6098092bdafc906f4a5";
+      };
+    };
     "copy-webpack-plugin-5.1.2" = {
       name = "copy-webpack-plugin";
       packageName = "copy-webpack-plugin";
@@ -21318,13 +21606,13 @@ let
         sha1 = "06be7abef947a3f14a30fd610671d401bca8b7b6";
       };
     };
-    "create-gatsby-2.9.0" = {
+    "create-gatsby-2.10.2" = {
       name = "create-gatsby";
       packageName = "create-gatsby";
-      version = "2.9.0";
+      version = "2.10.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/create-gatsby/-/create-gatsby-2.9.0.tgz";
-        sha512 = "xl4bMKm4Buz4btVcU8FenspTJQdegv/4G2z7REKsTempdUWAU6wh8nyKlMWGNUJV2K8oQ6oGLXSJbL4a0LTglQ==";
+        url = "https://registry.npmjs.org/create-gatsby/-/create-gatsby-2.10.2.tgz";
+        sha512 = "OmuFey3Eoaek20m8Br/iIqEr76AUrl/ThCn7TBYJ6RvWVKezKV5UksQlFpdQgPK8kO9LogjkmiyA0k94VC3nXg==";
       };
     };
     "create-graphback-1.0.1" = {
@@ -21507,13 +21795,13 @@ let
         sha512 = "mkLtJJcYbDCxEG7Js6eUnUNndWjyUZwJ3H7bErmmtOYU/Zb99DyUkpamuIZE0b3bhmJyZ7D90uS6f+CGxRRjOw==";
       };
     };
-    "cross-undici-fetch-0.1.25" = {
+    "cross-undici-fetch-0.1.27" = {
       name = "cross-undici-fetch";
       packageName = "cross-undici-fetch";
-      version = "0.1.25";
+      version = "0.1.27";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cross-undici-fetch/-/cross-undici-fetch-0.1.25.tgz";
-        sha512 = "KS6hm/VuRO+3jIrg4uidz3mQ8NWvCbiTTOg3yoH30zuGVUvjqZlnXw66h0kuzyfP21hDkrdIbufXCW6BAQdSNw==";
+        url = "https://registry.npmjs.org/cross-undici-fetch/-/cross-undici-fetch-0.1.27.tgz";
+        sha512 = "Oz/zXdh2HCq55xARCwFAYtKlyGp3VFAIfOEexN6nVm06rD6O5g47fKp7fggf/kBtc7iG09asNoGW+CUwIi4Efg==";
       };
     };
     "crossroads-0.12.2" = {
@@ -21588,49 +21876,49 @@ let
         sha512 = "v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==";
       };
     };
-    "cspell-gitignore-5.18.5" = {
+    "cspell-gitignore-5.19.3" = {
       name = "cspell-gitignore";
       packageName = "cspell-gitignore";
-      version = "5.18.5";
+      version = "5.19.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-5.18.5.tgz";
-        sha512 = "YKYFYMswkia0Uc5CMOapLwo8OKRfP+QbqyODTJ7IJACT7KCOSEj7A3B250LR2mWyvThyIUB+2c7+6ePdFCnh2g==";
+        url = "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-5.19.3.tgz";
+        sha512 = "Q67uHcf0qNgOoanRLhatapjWpLiftT+MuLIyAaSLe5eNVzQurQIc+UnXhtaslkVyOTqQt4NJFqLgtf5ZSGz1bg==";
       };
     };
-    "cspell-glob-5.18.5" = {
+    "cspell-glob-5.19.3" = {
       name = "cspell-glob";
       packageName = "cspell-glob";
-      version = "5.18.5";
+      version = "5.19.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cspell-glob/-/cspell-glob-5.18.5.tgz";
-        sha512 = "Tr/wMHpJ5zvD4qV4d5is1WJ6OQZSQSjiWoLCQ8pslpltGJhjYXPh3W9A8n4Ghr4AUUJNLKEQyCX+Z1kcA3hgOQ==";
+        url = "https://registry.npmjs.org/cspell-glob/-/cspell-glob-5.19.3.tgz";
+        sha512 = "qp2Oe/euzTu3e0zZrQxHuTrqRo418tYfh4CnCa+DKU6lWKKcF4zCEhOGJHPsYak8SFIXZ4ZE360wHFxB/JDutQ==";
       };
     };
-    "cspell-io-5.18.5" = {
+    "cspell-io-5.19.3" = {
       name = "cspell-io";
       packageName = "cspell-io";
-      version = "5.18.5";
+      version = "5.19.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cspell-io/-/cspell-io-5.18.5.tgz";
-        sha512 = "Ar2shXmKtLP935Linv+162xY6SNqIrwLI3rBRXs0/KnD/YdcLJQB0iBgFqvfvg7TcPg+EZOf9Oc6EvTLg2eprg==";
+        url = "https://registry.npmjs.org/cspell-io/-/cspell-io-5.19.3.tgz";
+        sha512 = "dE9eBvHgIJ11DelWtyehMU3W3bCpcB+0nS6uOZJ2d8fDu13m5BebpLrXZ2dKfY4cjksJUhRPatt14uwQSeUp2A==";
       };
     };
-    "cspell-lib-5.18.5" = {
+    "cspell-lib-5.19.3" = {
       name = "cspell-lib";
       packageName = "cspell-lib";
-      version = "5.18.5";
+      version = "5.19.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cspell-lib/-/cspell-lib-5.18.5.tgz";
-        sha512 = "yrUk3MbRXy/YGNIcLfURDnw4fRiXcbHo9K5B6IhwYfHKc3VM6QgvEQ0ce44uzZ+AEZzWuQ++GbhUih+bSJ87DQ==";
+        url = "https://registry.npmjs.org/cspell-lib/-/cspell-lib-5.19.3.tgz";
+        sha512 = "peMJggwJpxCXKZZ0DuHyDtZmf66POKaHf5Im8LGEyMKFARUIq6O2WvaUGggYjyRe3Ng/f5G+EYTcIHbF9pZYcg==";
       };
     };
-    "cspell-trie-lib-5.18.5" = {
+    "cspell-trie-lib-5.19.3" = {
       name = "cspell-trie-lib";
       packageName = "cspell-trie-lib";
-      version = "5.18.5";
+      version = "5.19.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-5.18.5.tgz";
-        sha512 = "FifImmkcArPYiE8fLXcbB/yS15QyWwvHw/gpCPEkcuJMJH2gxC+HOE909JnBsyPyjCaX5gHWiIf7ePjdXlWsDg==";
+        url = "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-5.19.3.tgz";
+        sha512 = "Io8EB7E1pmttHzZvgvPEF0b87qlq8G5uA4B+sbqCxrUf5l4JDcK/UYLih0+rekLTbv4Q68zqgCTASvqxgqnoAg==";
       };
     };
     "csrf-3.1.0" = {
@@ -21696,15 +21984,6 @@ let
         sha512 = "BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==";
       };
     };
-    "css-declaration-sorter-6.1.4" = {
-      name = "css-declaration-sorter";
-      packageName = "css-declaration-sorter";
-      version = "6.1.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.1.4.tgz";
-        sha512 = "lpfkqS0fctcmZotJGhnxkIyJWvBXgpyi2wsFd4J8VB7wzyrT6Ch/3Q+FMNJpjK4gu1+GN5khOnpU2ZVKrLbhCw==";
-      };
-    };
     "css-functions-list-3.0.1" = {
       name = "css-functions-list";
       packageName = "css-functions-list";
@@ -21912,15 +22191,6 @@ let
         sha512 = "6gZm2htn7xIPJOHY824ERgj8cNPgPxyCSnkXc4v7YvNW+TdVfzgngHcEhy/8D11kUWRUMbke+tC+AUcUsnMz2g==";
       };
     };
-    "cssnano-5.1.3" = {
-      name = "cssnano";
-      packageName = "cssnano";
-      version = "5.1.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/cssnano/-/cssnano-5.1.3.tgz";
-        sha512 = "bdf+sY2w4XV+F5LOCEd7fWnSeMeKBO4lKgoAKVWZOSTR7CmWEk1UW/s9ibTMMnsTsinBmIdgZs755sAGa1eoXQ==";
-      };
-    };
     "cssnano-preset-default-4.0.8" = {
       name = "cssnano-preset-default";
       packageName = "cssnano-preset-default";
@@ -21930,15 +22200,6 @@ let
         sha512 = "LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==";
       };
     };
-    "cssnano-preset-default-5.2.3" = {
-      name = "cssnano-preset-default";
-      packageName = "cssnano-preset-default";
-      version = "5.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.3.tgz";
-        sha512 = "e4pzD/FnsvRywKO3i2Ti4jgAcJO5MhQPudrex92HXAJoMyQfS8lZHIzzC1yZ1t+d2zdkLXFY1sHdsZaT7lKoCQ==";
-      };
-    };
     "cssnano-util-get-arguments-4.0.0" = {
       name = "cssnano-util-get-arguments";
       packageName = "cssnano-util-get-arguments";
@@ -21975,15 +22236,6 @@ let
         sha512 = "WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==";
       };
     };
-    "cssnano-utils-3.1.0" = {
-      name = "cssnano-utils";
-      packageName = "cssnano-utils";
-      version = "3.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz";
-        sha512 = "JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==";
-      };
-    };
     "csso-2.0.0" = {
       name = "csso";
       packageName = "csso";
@@ -22281,15 +22533,6 @@ let
         sha512 = "KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw==";
       };
     };
-    "d3-array-2.12.1" = {
-      name = "d3-array";
-      packageName = "d3-array";
-      version = "2.12.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz";
-        sha512 = "B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==";
-      };
-    };
     "d3-array-3.1.1" = {
       name = "d3-array";
       packageName = "d3-array";
@@ -22407,15 +22650,6 @@ let
         sha512 = "0Oc4D0KyhwhM7ZL0RMnfGycLN7hxHB8CMmwZ3+H26PWAG0ozNuYG5hXSDNgmP1SgJkQMrlG6cP20HoaSbvcJTQ==";
       };
     };
-    "d3-delaunay-5.3.0" = {
-      name = "d3-delaunay";
-      packageName = "d3-delaunay";
-      version = "5.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-5.3.0.tgz";
-        sha512 = "amALSrOllWVLaHTnDLHwMIiz0d1bBu9gZXd1FiLfXf8sHcX9jrcj81TVZOqD4UX7MgBZZ07c8GxzEgBpJqc74w==";
-      };
-    };
     "d3-delaunay-6.0.2" = {
       name = "d3-delaunay";
       packageName = "d3-delaunay";
@@ -22488,15 +22722,6 @@ let
         sha512 = "9yVlqvZcSOMhCYzniHE7EVUws7Fa1zgw+/EAV2BxJoG3ME19V6BQFBwI855XQDsxyOuG7NibqRMTtiF/Qup46g==";
       };
     };
-    "d3-dsv-2.0.0" = {
-      name = "d3-dsv";
-      packageName = "d3-dsv";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/d3-dsv/-/d3-dsv-2.0.0.tgz";
-        sha512 = "E+Pn8UJYx9mViuIUkoc93gJGGYut6mSDKy2+XaPwccwkRGlR+LO97L2VCCRjQivTwLHkSnAJG7yo00BWY6QM+w==";
-      };
-    };
     "d3-dsv-3.0.1" = {
       name = "d3-dsv";
       packageName = "d3-dsv";
@@ -22560,15 +22785,6 @@ let
         sha512 = "HHvehyaiUlVo5CxBJ0yF/xny4xoaxFxDnBXNvNcfW9adORGZfyNF1dj6DGLKyk4Yh3brP/1h3rnDzdIAwL08zg==";
       };
     };
-    "d3-force-2.1.1" = {
-      name = "d3-force";
-      packageName = "d3-force";
-      version = "2.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/d3-force/-/d3-force-2.1.1.tgz";
-        sha512 = "nAuHEzBqMvpFVMf9OX75d00OxvOXdxY+xECIXjW6Gv8BRrXu6gAWbv/9XKrvfJ5i5DCokDW7RYE50LRoK092ew==";
-      };
-    };
     "d3-force-3.0.0" = {
       name = "d3-force";
       packageName = "d3-force";
@@ -22614,15 +22830,6 @@ let
         sha512 = "XG4d1c/UJSEX9NfU02KwBL6BYPj8YKHxgBEw5om2ZnTRSbIcego6dhHwcxuSR3clxh0EpE38os1DVPOmnYtTPg==";
       };
     };
-    "d3-geo-2.0.2" = {
-      name = "d3-geo";
-      packageName = "d3-geo";
-      version = "2.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/d3-geo/-/d3-geo-2.0.2.tgz";
-        sha512 = "8pM1WGMLGFuhq9S+FpPURxic+gKzjluCD/CHTuUF3mXMeiCo0i6R0tO1s4+GArRFde96SLcW/kOFRjoAosPsFA==";
-      };
-    };
     "d3-geo-3.0.1" = {
       name = "d3-geo";
       packageName = "d3-geo";
@@ -22632,13 +22839,13 @@ let
         sha512 = "Wt23xBych5tSy9IYAM1FR2rWIBFWa52B/oF/GYe5zbdHrg08FU8+BuI6X4PvTwPDdqdAdq04fuWJpELtsaEjeA==";
       };
     };
-    "d3-geo-projection-3.0.0" = {
+    "d3-geo-projection-4.0.0" = {
       name = "d3-geo-projection";
       packageName = "d3-geo-projection";
-      version = "3.0.0";
+      version = "4.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/d3-geo-projection/-/d3-geo-projection-3.0.0.tgz";
-        sha512 = "1JE+filVbkEX2bT25dJdQ05iA4QHvUwev6o0nIQHOSrNlHCAKfVss/U10vEM3pA4j5v7uQoFdQ4KLbx9BlEbWA==";
+        url = "https://registry.npmjs.org/d3-geo-projection/-/d3-geo-projection-4.0.0.tgz";
+        sha512 = "p0bK60CEzph1iqmnxut7d/1kyTmm3UWtPlwdkM31AU+LW+BXazd5zJdoCn7VFxNCHXRngPHRnsNn5uGjLRGndg==";
       };
     };
     "d3-graphviz-4.1.0" = {
@@ -22659,15 +22866,6 @@ let
         sha512 = "j8tPxlqh1srJHAtxfvOUwKNYJkQuBFdM1+JAUfq6xqH5eAqf93L7oG1NVqDa4CpFZNvnNKtCYEUC8KY9yEn9lQ==";
       };
     };
-    "d3-hierarchy-2.0.0" = {
-      name = "d3-hierarchy";
-      packageName = "d3-hierarchy";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-2.0.0.tgz";
-        sha512 = "SwIdqM3HxQX2214EG9GTjgmCc/mbSx4mQBn+DuEETubhOw6/U3fmnji4uCVrmzOydMHSO1nZle5gh6HB/wdOzw==";
-      };
-    };
     "d3-hierarchy-3.1.1" = {
       name = "d3-hierarchy";
       packageName = "d3-hierarchy";
@@ -22758,15 +22956,6 @@ let
         sha512 = "RKPAeXnkC59IDGD0Wu5mANy0Q2V28L+fNe65pOCXVdVuTJS3WPKaJlFHer32Rbh9gIo9qMuJXio8ra4+YmIymA==";
       };
     };
-    "d3-quadtree-2.0.0" = {
-      name = "d3-quadtree";
-      packageName = "d3-quadtree";
-      version = "2.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-2.0.0.tgz";
-        sha512 = "b0Ed2t1UUalJpc3qXzKi+cPGxeXRr4KU9YSlocN74aTzp6R/Ud43t79yLLqxHRWZfsvWXmbDWPpoENK1K539xw==";
-      };
-    };
     "d3-quadtree-3.0.1" = {
       name = "d3-quadtree";
       packageName = "d3-quadtree";
@@ -22803,15 +22992,6 @@ let
         sha512 = "LbeEvGgIb8UMcAa0EATLNX0lelKWGYDQiPdHj+gLblGVhGLyNbaCn3EvrJf0A3Y/uOOU5aD6MTh5ZFCdEwGiCw==";
       };
     };
-    "d3-scale-3.3.0" = {
-      name = "d3-scale";
-      packageName = "d3-scale";
-      version = "3.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/d3-scale/-/d3-scale-3.3.0.tgz";
-        sha512 = "1JGp44NQCt5d1g+Yy+GeOnZP7xHo0ii8zsQp6PGzd+C1/dl0KGsp9A7Mxwp+1D1o4unbTTxVdU/ZOIEBoeZPbQ==";
-      };
-    };
     "d3-scale-4.0.2" = {
       name = "d3-scale";
       packageName = "d3-scale";
@@ -22875,15 +23055,6 @@ let
         sha512 = "EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==";
       };
     };
-    "d3-shape-2.1.0" = {
-      name = "d3-shape";
-      packageName = "d3-shape";
-      version = "2.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/d3-shape/-/d3-shape-2.1.0.tgz";
-        sha512 = "PnjUqfM2PpskbSLTJvAzp2Wv4CZsnAgTfcVRTwW03QR3MkXF8Uo7B1y/lWkAsmbKwuecto++4NlsYcvYpXpTHA==";
-      };
-    };
     "d3-shape-3.1.0" = {
       name = "d3-shape";
       packageName = "d3-shape";
@@ -22902,15 +23073,6 @@ let
         sha512 = "Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA==";
       };
     };
-    "d3-time-2.1.1" = {
-      name = "d3-time";
-      packageName = "d3-time";
-      version = "2.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/d3-time/-/d3-time-2.1.1.tgz";
-        sha512 = "/eIQe/eR4kCQwq7yxi7z4c6qEXf2IYGcjoWB5OOQy4Tq9Uv39/947qlDcN2TLkiTzQWzvnsuYPB9TrWaNfipKQ==";
-      };
-    };
     "d3-time-3.0.0" = {
       name = "d3-time";
       packageName = "d3-time";
@@ -22929,15 +23091,6 @@ let
         sha512 = "guv6b2H37s2Uq/GefleCDtbe0XZAuy7Wa49VGkPVPMfLL9qObgBST3lEHJBMUp8S7NdLQAGIvr2KXk8Hc98iKQ==";
       };
     };
-    "d3-time-format-3.0.0" = {
-      name = "d3-time-format";
-      packageName = "d3-time-format";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/d3-time-format/-/d3-time-format-3.0.0.tgz";
-        sha512 = "UXJh6EKsHBTjopVqZBhFysQcoXSv/5yLONZvkQ5Kk3qbwiUYkdX17Xa1PT6U1ZWXGGfB1ey5L8dKMlFq2DO0Ag==";
-      };
-    };
     "d3-time-format-4.1.0" = {
       name = "d3-time-format";
       packageName = "d3-time-format";
@@ -23307,13 +23460,13 @@ let
         sha512 = "eyTcpKOcamdhWJXj56DpQMo1ylSQpcGtGKXcU0Tb97+K56/CF5amAqqqNj0+KvA0iw2ynxtHWFsPDSClCxe48w==";
       };
     };
-    "date-format-4.0.4" = {
+    "date-format-4.0.6" = {
       name = "date-format";
       packageName = "date-format";
-      version = "4.0.4";
+      version = "4.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/date-format/-/date-format-4.0.4.tgz";
-        sha512 = "/jyf4rhB17ge328HJuJjAcmRtCsGd+NDeAtahRBTaK6vSPR6MO5HlrAit3Nn7dVjaa6sowW0WXt8yQtLyZQFRg==";
+        url = "https://registry.npmjs.org/date-format/-/date-format-4.0.6.tgz";
+        sha512 = "B9vvg5rHuQ8cbUXE/RMWMyX2YA5TecT3jKF5fLtGNlzPlU7zblSPmAm2OImDbWL+LDOQ6pUm+4LOFz+ywS41Zw==";
       };
     };
     "date-now-0.1.4" = {
@@ -23352,13 +23505,13 @@ let
         sha512 = "2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==";
       };
     };
-    "dayjs-1.10.8" = {
+    "dayjs-1.11.0" = {
       name = "dayjs";
       packageName = "dayjs";
-      version = "1.10.8";
+      version = "1.11.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dayjs/-/dayjs-1.10.8.tgz";
-        sha512 = "wbNwDfBHHur9UOzNUjeKUOJ0fCb0a52Wx0xInmQ7Y8FstyajiV1NmK1e00cxsr9YrE9r7yAChE0VvpuY5Rnlow==";
+        url = "https://registry.npmjs.org/dayjs/-/dayjs-1.11.0.tgz";
+        sha512 = "JLC809s6Y948/FuCZPm5IX8rRhQwOiyMb2TfVVQEixG7P8Lm/gt5S7yoQZmC8x1UehI9Pb7sksEt4xx14m+7Ug==";
       };
     };
     "dayjs-1.8.36" = {
@@ -23559,6 +23712,15 @@ let
         sha512 = "/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==";
       };
     };
+    "debug-4.3.4" = {
+      name = "debug";
+      packageName = "debug";
+      version = "4.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz";
+        sha512 = "PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==";
+      };
+    };
     "debug-fabulous-1.1.0" = {
       name = "debug-fabulous";
       packageName = "debug-fabulous";
@@ -24180,15 +24342,6 @@ let
         sha512 = "1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==";
       };
     };
-    "delaunator-4.0.1" = {
-      name = "delaunator";
-      packageName = "delaunator";
-      version = "4.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/delaunator/-/delaunator-4.0.1.tgz";
-        sha512 = "WNPWi1IRKZfCt/qIDMfERkDp93+iZEmOxN2yy4Jg+Xhv8SLk2UTqqbe1sfiipn0and9QrE914/ihdx82Y/Giag==";
-      };
-    };
     "delaunator-5.0.0" = {
       name = "delaunator";
       packageName = "delaunator";
@@ -24225,13 +24378,13 @@ let
         sha1 = "84c6e159b81904fdca59a0ef44cd870d31250f9a";
       };
     };
-    "deltachat-node-1.70.0" = {
+    "deltachat-node-1.76.0" = {
       name = "deltachat-node";
       packageName = "deltachat-node";
-      version = "1.70.0";
+      version = "1.76.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/deltachat-node/-/deltachat-node-1.70.0.tgz";
-        sha512 = "PjI8X+MPPdVLF2Tq+WG0r9twwxFAWAi1yz+23+Qt07qTNcyeYHJx499Ssc3II5Q5MW00ylTdnFd+APD7FpFqLQ==";
+        url = "https://registry.npmjs.org/deltachat-node/-/deltachat-node-1.76.0.tgz";
+        sha512 = "KMUDHQW2h0nklkt9s9srv0ADWISMlrjWETFFmb+1XZCNQsHXoeyYhic1oUQpSK5LAT+YAKWw/XcCZrmI7tHu3A==";
       };
     };
     "denodeify-1.2.1" = {
@@ -24396,13 +24549,13 @@ let
         sha1 = "978857442c44749e4206613e37946205826abd80";
       };
     };
-    "destroy-1.1.1" = {
+    "destroy-1.2.0" = {
       name = "destroy";
       packageName = "destroy";
-      version = "1.1.1";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/destroy/-/destroy-1.1.1.tgz";
-        sha512 = "jxwFW+yrVOLdwqIWvowFOM8UPdhZnvOF6mhXQQLXMxBDLtv2JVJlVJPEwkDv9prqscEtGtmnxuuI6pQKStK1vA==";
+        url = "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz";
+        sha512 = "2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==";
       };
     };
     "detab-1.0.2" = {
@@ -24954,13 +25107,13 @@ let
         sha1 = "ea80b106a87538774e8a3a4a5afe293de489e0a9";
       };
     };
-    "doipjs-0.14.0" = {
+    "doipjs-0.15.5" = {
       name = "doipjs";
       packageName = "doipjs";
-      version = "0.14.0";
+      version = "0.15.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/doipjs/-/doipjs-0.14.0.tgz";
-        sha512 = "FX0rRv4h+/IaCCS2YSrEdx7nbM1iHimJfXhGDi5OU+0ALw5868RLDUQoWNpTfS+PtKX4vOgqmMAGuGlPLJiqkA==";
+        url = "https://registry.npmjs.org/doipjs/-/doipjs-0.15.5.tgz";
+        sha512 = "PIZIx+2+LqDtJWUXOMAd0PabT6uojkk5x4k1crUX68nMqDuNKne8v4K2Viytu8F9eBgN1cIUL9gLV8p4oqXI4A==";
       };
     };
     "dom-converter-0.2.0" = {
@@ -25152,13 +25305,13 @@ let
         sha512 = "J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==";
       };
     };
-    "domhandler-4.3.0" = {
+    "domhandler-4.3.1" = {
       name = "domhandler";
       packageName = "domhandler";
-      version = "4.3.0";
+      version = "4.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz";
-        sha512 = "fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==";
+        url = "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz";
+        sha512 = "GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==";
       };
     };
     "domino-2.1.6" = {
@@ -25341,15 +25494,6 @@ let
         sha512 = "UGGGWfSauusaVJC+8fgV+NVvBXkCTmVv7sk6nojDZZvuOUNGUy0Zk4UpHQD6EDjS0jpBwcACvH4eofvyzBcRDw==";
       };
     };
-    "double-ended-queue-2.1.0-0" = {
-      name = "double-ended-queue";
-      packageName = "double-ended-queue";
-      version = "2.1.0-0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz";
-        sha1 = "103d3527fd31528f40188130c841efdd78264e5c";
-      };
-    };
     "downgrade-root-1.2.2" = {
       name = "downgrade-root";
       packageName = "downgrade-root";
@@ -25728,22 +25872,22 @@ let
         sha512 = "9lt9Zse4hPucPkoP7FHDF0LQAlGyF9JVpnClFLFH3aSSbxmyoqINRpp/9wePWJTUl4KOQwRL72Iw3InHPDkoGw==";
       };
     };
-    "electron-13.6.9" = {
+    "electron-14.2.8" = {
       name = "electron";
       packageName = "electron";
-      version = "13.6.9";
+      version = "14.2.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron/-/electron-13.6.9.tgz";
-        sha512 = "Es/sBy85NIuqsO9MW41PUCpwIkeinlTQ7g0ainfnmRAM2rmog3GBxVCaoV5dzEjwTF7TKG1Yr/E7Z3qHmlfWAg==";
+        url = "https://registry.npmjs.org/electron/-/electron-14.2.8.tgz";
+        sha512 = "K22hI0NVkC7sU5sMDXwW1lxAjhNsFXL2wuJF7Ij9CyWqW/j6AtIMfDkUoM5mXaTg0FGUlmlNr9Rh7cp8bBn6Sg==";
       };
     };
-    "electron-notarize-1.1.1" = {
+    "electron-notarize-1.2.1" = {
       name = "electron-notarize";
       packageName = "electron-notarize";
-      version = "1.1.1";
+      version = "1.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-notarize/-/electron-notarize-1.1.1.tgz";
-        sha512 = "kufsnqh86CTX89AYNG3NCPoboqnku/+32RxeJ2+7A4Rbm4bbOx0Nc7XTy3/gAlBfpj9xPAxHfhZLOHgfi6cJVw==";
+        url = "https://registry.npmjs.org/electron-notarize/-/electron-notarize-1.2.1.tgz";
+        sha512 = "u/ECWhIrhkSQpZM4cJzVZ5TsmkaqrRo5LDC/KMbGF0sPkm53Ng59+M0zp8QVaql0obfJy9vlVT+4iOkAi2UDlA==";
       };
     };
     "electron-osx-sign-0.5.0" = {
@@ -25773,22 +25917,13 @@ let
         sha512 = "WvaW1EgRinDQ61khHFZfx30rkPQG5ItaOT0wrI7iJv9A3SbghriQGfZQfHZs25fWLBe6/vkv05LOqg6aDw6Wzw==";
       };
     };
-    "electron-to-chromium-1.4.81" = {
-      name = "electron-to-chromium";
-      packageName = "electron-to-chromium";
-      version = "1.4.81";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.81.tgz";
-        sha512 = "Gs7xVpIZ7tYYSDA+WgpzwpPvfGwUk3KSIjJ0akuj5XQHFdyQnsUoM76EA4CIHXNLPiVwTwOFay9RMb0ChG3OBw==";
-      };
-    };
-    "electron-to-chromium-1.4.82" = {
+    "electron-to-chromium-1.4.96" = {
       name = "electron-to-chromium";
       packageName = "electron-to-chromium";
-      version = "1.4.82";
+      version = "1.4.96";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.82.tgz";
-        sha512 = "Ks+ANzLoIrFDUOJdjxYMH6CMKB8UQo5modAwvSZTxgF+vEs/U7G5IbWFUp6dS4klPkTDVdxbORuk8xAXXhMsWw==";
+        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.96.tgz";
+        sha512 = "DPNjvNGPabv6FcyjzLAN4C0psN/GgD9rSGvMTuv81SeXG/EX3mCz0wiw9N1tUEnfQXYCJi3H8M0oFPRziZh7rw==";
       };
     };
     "electrum-client-git://github.com/janoside/electrum-client" = {
@@ -26198,6 +26333,15 @@ let
         sha512 = "IH8ZhDIwiLv0d/wXVzmjfV9Y82hbJIDhCGSVUV8o1kcpDe2I6Y3bZA3ZbJy4Ls7k7IVmcy/qn4k9RKWFhUGf5w==";
       };
     };
+    "engine.io-client-6.1.1" = {
+      name = "engine.io-client";
+      packageName = "engine.io-client";
+      version = "6.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.1.1.tgz";
+        sha512 = "V05mmDo4gjimYW+FGujoGmmmxRaDsrVr7AXA3ZIfa04MWM1jOfZfUwou0oNqhNwy/votUDvGDt4JA4QF4e0b4g==";
+      };
+    };
     "engine.io-parser-1.0.6" = {
       name = "engine.io-parser";
       packageName = "engine.io-parser";
@@ -26468,15 +26612,6 @@ let
         sha512 = "XHJk60ufE+TG/ydwp4lilOog549iiQF2OAPhkk9DdiYWMrltz5yhDz/xnKuenNwP7gy3dsibssO5QpVhkrSzzg==";
       };
     };
-    "error-stack-parser-2.0.6" = {
-      name = "error-stack-parser";
-      packageName = "error-stack-parser";
-      version = "2.0.6";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.6.tgz";
-        sha512 = "d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ==";
-      };
-    };
     "error-stack-parser-2.0.7" = {
       name = "error-stack-parser";
       packageName = "error-stack-parser";
@@ -26540,13 +26675,13 @@ let
         sha1 = "5dae3e650e5be3684b88066513d528d092629862";
       };
     };
-    "es5-ext-0.10.58" = {
+    "es5-ext-0.10.59" = {
       name = "es5-ext";
       packageName = "es5-ext";
-      version = "0.10.58";
+      version = "0.10.59";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.58.tgz";
-        sha512 = "LHO+KBBaHGwjy32ibSaMY+ZzjpC4K4I5bPoijICMBL7gXEXfrEUrzssmNP+KigbQEp1dRUnGkry/vUnxOqptLQ==";
+        url = "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.59.tgz";
+        sha512 = "cOgyhW0tIJyQY1Kfw6Kr0viu9ZlUctVchRMZ7R0HiH3dxTSp5zJDLecwxUqPUrGKMsgBI1wd1FL+d9Jxfi4cLw==";
       };
     };
     "es6-error-4.1.1" = {
@@ -26873,13 +27008,22 @@ let
         sha512 = "VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==";
       };
     };
-    "eslint-8.8.0" = {
+    "eslint-8.11.0" = {
+      name = "eslint";
+      packageName = "eslint";
+      version = "8.11.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/eslint/-/eslint-8.11.0.tgz";
+        sha512 = "/KRpd9mIRg2raGxHRGwW9ZywYNAClZrHjdueHcrVDuO3a6bj83eoTirCCk0M0yPwOjWYKHwRVRid+xK4F/GHgA==";
+      };
+    };
+    "eslint-8.12.0" = {
       name = "eslint";
       packageName = "eslint";
-      version = "8.8.0";
+      version = "8.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eslint/-/eslint-8.8.0.tgz";
-        sha512 = "H3KXAzQGBH1plhYS3okDix2ZthuYJlQQEGE5k0IKuEqUSiyu4AmxxlJ2MtTYeJ3xB4jDhcYCwGOg2TXYdnDXlQ==";
+        url = "https://registry.npmjs.org/eslint/-/eslint-8.12.0.tgz";
+        sha512 = "it1oBL9alZg1S8UycLm5YDMAkIhtH6FtAzuZs6YvoGVldWjbS08BkAdb/ymP9LlAyq8koANu32U7Ib/w+UNh8Q==";
       };
     };
     "eslint-config-prettier-6.15.0" = {
@@ -27044,15 +27188,6 @@ let
         sha512 = "0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==";
       };
     };
-    "eslint-visitor-keys-3.2.0" = {
-      name = "eslint-visitor-keys";
-      packageName = "eslint-visitor-keys";
-      version = "3.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz";
-        sha512 = "IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ==";
-      };
-    };
     "eslint-visitor-keys-3.3.0" = {
       name = "eslint-visitor-keys";
       packageName = "eslint-visitor-keys";
@@ -27125,15 +27260,6 @@ let
         sha512 = "v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==";
       };
     };
-    "espree-9.3.0" = {
-      name = "espree";
-      packageName = "espree";
-      version = "9.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/espree/-/espree-9.3.0.tgz";
-        sha512 = "d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ==";
-      };
-    };
     "espree-9.3.1" = {
       name = "espree";
       packageName = "espree";
@@ -27494,15 +27620,6 @@ let
         sha512 = "i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==";
       };
     };
-    "event-to-promise-0.8.0" = {
-      name = "event-to-promise";
-      packageName = "event-to-promise";
-      version = "0.8.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/event-to-promise/-/event-to-promise-0.8.0.tgz";
-        sha1 = "4b84f11772b6f25f7752fc74d971531ac6f5b626";
-      };
-    };
     "eventemitter2-0.4.14" = {
       name = "eventemitter2";
       packageName = "eventemitter2";
@@ -27737,6 +27854,15 @@ let
         sha512 = "j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==";
       };
     };
+    "execa-5.0.0" = {
+      name = "execa";
+      packageName = "execa";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz";
+        sha512 = "ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==";
+      };
+    };
     "execa-5.1.1" = {
       name = "execa";
       packageName = "execa";
@@ -28502,13 +28628,13 @@ let
         sha512 = "4j5uBaTnsYAV5ebkidvxiLUYOwjQ+JSFljeqfTxCrH9bDmlCQaOJFS84oDJ2rAXZq2yskmk3ORfoP9DCwqFNig==";
       };
     };
-    "fast-json-patch-3.1.0" = {
+    "fast-json-patch-3.1.1" = {
       name = "fast-json-patch";
       packageName = "fast-json-patch";
-      version = "3.1.0";
+      version = "3.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.0.tgz";
-        sha512 = "IhpytlsVTRndz0hU5t0/MGzS/etxLlfrpG5V5M9mVbuj9TrJLWaMfsox9REM5rkuGX0T+5qjpe8XA1o0gZ42nA==";
+        url = "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz";
+        sha512 = "vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==";
       };
     };
     "fast-json-stable-stringify-2.1.0" = {
@@ -28763,13 +28889,13 @@ let
         sha512 = "MMMQ0ludy/nBs1/o0zVOiKTpG7qMbonKUzjJgQFEuvq6INZ1OraKPRAWkBq5vlKLOUMpmNYG1JoN3oDPUQ9m3Q==";
       };
     };
-    "fetch-blob-3.1.4" = {
+    "fetch-blob-3.1.5" = {
       name = "fetch-blob";
       packageName = "fetch-blob";
-      version = "3.1.4";
+      version = "3.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.1.4.tgz";
-        sha512 = "Eq5Xv5+VlSrYWEqKrusxY1C3Hm/hjeAsCGVG3ft7pZahlUAChpGZT/Ms1WmSLnEAisEXszjzu/s+ce6HZB2VHA==";
+        url = "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.1.5.tgz";
+        sha512 = "N64ZpKqoLejlrwkIAnb9iLSA3Vx/kjgzpcDhygcqJ2KKjky8nCgUQ+dzXtbrLaWZGZNmNfQTsiQ0weZ1svglHg==";
       };
     };
     "fetch-cookie-0.10.1" = {
@@ -29267,6 +29393,15 @@ let
         sha512 = "aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==";
       };
     };
+    "finalhandler-1.2.0" = {
+      name = "finalhandler";
+      packageName = "finalhandler";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz";
+        sha512 = "5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==";
+      };
+    };
     "find-cache-dir-0.1.1" = {
       name = "find-cache-dir";
       packageName = "find-cache-dir";
@@ -29600,13 +29735,13 @@ let
         sha512 = "jlbUu0XkbpXeXhan5xyTqVK1jmEKNxE8hpzznI3TThHTr76GiFwK0iRzhDo4KNy+S9h/KxHaqVhTP86vA6wHCg==";
       };
     };
-    "flow-parser-0.173.0" = {
+    "flow-parser-0.174.1" = {
       name = "flow-parser";
       packageName = "flow-parser";
-      version = "0.173.0";
+      version = "0.174.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/flow-parser/-/flow-parser-0.173.0.tgz";
-        sha512 = "gikomjo+jzdehhOCHP2Ca5y1HGK3jkODhUdTxk4a3SdyLAMBsEwb7KJETHzB4KQs7HhHcqhyT7mGmd9iT8B5Hg==";
+        url = "https://registry.npmjs.org/flow-parser/-/flow-parser-0.174.1.tgz";
+        sha512 = "nDMOvlFR+4doLpB3OJpseHZ7uEr3ENptlF6qMas/kzQmNcLzMwfQeFX0gGJ/+em7UdldB/nGsk55tDTOvjbCuw==";
       };
     };
     "fluent-ffmpeg-2.1.2" = {
@@ -29960,13 +30095,13 @@ let
         sha512 = "ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==";
       };
     };
-    "form-data-encoder-1.7.1" = {
+    "form-data-encoder-1.7.2" = {
       name = "form-data-encoder";
       packageName = "form-data-encoder";
-      version = "1.7.1";
+      version = "1.7.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.1.tgz";
-        sha512 = "EFRDrsMm/kyqbTQocNvRXMLjc7Es2Vk+IQFx/YW7hkUH1eBl4J1fqiP34l74Yt0pFLCNpc06fkbVk00008mzjg==";
+        url = "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.2.tgz";
+        sha512 = "qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==";
       };
     };
     "form-urlencoded-4.5.1" = {
@@ -30059,13 +30194,13 @@ let
         sha512 = "wJaE62fLaB3jCYvY2ZHjZvmKK2iiLiiehX38rz5QZxtdN8fVPJDeZUiVvJrHStdTc+23LHlyZuSEKgFc0pxi2g==";
       };
     };
-    "fp-ts-2.11.8" = {
+    "fp-ts-2.11.9" = {
       name = "fp-ts";
       packageName = "fp-ts";
-      version = "2.11.8";
+      version = "2.11.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fp-ts/-/fp-ts-2.11.8.tgz";
-        sha512 = "WQT6rP6Jt3TxMdQB3IKzvfZKLuldumntgumLhIUhvPrukTHdWNI4JgEHY04Bd0LIOR9IQRpB+7RuxgUU0Vhmcg==";
+        url = "https://registry.npmjs.org/fp-ts/-/fp-ts-2.11.9.tgz";
+        sha512 = "GhYlNKkCOfdjp71ocdtyaQGoqCswEoWDJLRr+2jClnBBq2dnSOtd6QxmJdALq8UhfqCyZZ0f0lxadU4OhwY9nw==";
       };
     };
     "fraction.js-4.2.0" = {
@@ -30536,13 +30671,13 @@ let
         sha1 = "1b0ab3bd553b2a0d6399d29c0e3ea0b252078327";
       };
     };
-    "fuse.js-6.5.3" = {
+    "fuse.js-6.4.1" = {
       name = "fuse.js";
       packageName = "fuse.js";
-      version = "6.5.3";
+      version = "6.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fuse.js/-/fuse.js-6.5.3.tgz";
-        sha512 = "sA5etGE7yD/pOqivZRBvUBd/NaL2sjAu6QuSaFoe1H2BrJSkH/T/UXAJ8CdXdw7DvY3Hs8CXKYkDWX7RiP5KOg==";
+        url = "https://registry.npmjs.org/fuse.js/-/fuse.js-6.4.1.tgz";
+        sha512 = "+hAS7KYgLXontDh/vqffs7wIBw0ceb9Sx8ywZQhOsiQGcSO5zInGhttWOUYQYlvV/yYMJOacQ129Xs3mP3+oZQ==";
       };
     };
     "fuzzy-0.1.3" = {
@@ -30590,22 +30725,22 @@ let
         sha1 = "cbed2d20a40c1f5679a35908e2b9415733e78db9";
       };
     };
-    "gatsby-core-utils-3.9.1" = {
+    "gatsby-core-utils-3.10.1" = {
       name = "gatsby-core-utils";
       packageName = "gatsby-core-utils";
-      version = "3.9.1";
+      version = "3.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-3.9.1.tgz";
-        sha512 = "DNf7NhhH0WrFuoBvyURjsw4w+eKbp1GlRA0cchYHJwVTaDPvLvX1o7zxN76xIBx+m0kttpnO3KuJ9LDOSli3ag==";
+        url = "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-3.10.1.tgz";
+        sha512 = "WqNMm0u1CAZm6Q+UQ4dDHwIAt3l32NeIaPuSXmDX7QcMGR3FUUk8cl2Ym6gx1hfILm1aCexqfaSCLUXtaWKkbQ==";
       };
     };
-    "gatsby-telemetry-3.9.1" = {
+    "gatsby-telemetry-3.10.1" = {
       name = "gatsby-telemetry";
       packageName = "gatsby-telemetry";
-      version = "3.9.1";
+      version = "3.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-3.9.1.tgz";
-        sha512 = "ChXTshfvo5njd/u6kSZErDUvc/uSmtOEuo7wrt/68Xjz2JVG6nsLlRxaZpx0DxnDAInouItMVX0VF40RAU7qKg==";
+        url = "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-3.10.1.tgz";
+        sha512 = "935quI1YsQfzYREuvPLNKBb7IUE2vX9p7WoS7Dc9TbV2xDZPTAzeOfX+HE56ZltkxMi8Zivp7mqe5+n//WL7EQ==";
       };
     };
     "gauge-1.2.7" = {
@@ -31617,13 +31752,13 @@ let
         sha512 = "BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==";
       };
     };
-    "globals-13.12.1" = {
+    "globals-13.13.0" = {
       name = "globals";
       packageName = "globals";
-      version = "13.12.1";
+      version = "13.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz";
-        sha512 = "317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==";
+        url = "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz";
+        sha512 = "EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==";
       };
     };
     "globals-9.18.0" = {
@@ -31788,13 +31923,13 @@ let
         sha512 = "VZ0VPPIuiSO5/ZZr/UqFP3X3Yv04/TZxIe+SO+Ceqy43ulthPZcnrWsB8hYW2gqZzOPJeVJaYaX9FmL70kYITw==";
       };
     };
-    "goldengate-11.0.1" = {
+    "goldengate-11.1.0" = {
       name = "goldengate";
       packageName = "goldengate";
-      version = "11.0.1";
+      version = "11.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/goldengate/-/goldengate-11.0.1.tgz";
-        sha512 = "4mu4FxLNkcyMfzH1cnarJ+0I5nkzuRO5AKZ0fcJ92vnBWC1M+MuYNozWV5jpqwHnpRLYgxOGDJnY0TcmQlmFHg==";
+        url = "https://registry.npmjs.org/goldengate/-/goldengate-11.1.0.tgz";
+        sha512 = "nwrFxarqF2kxQXEzgcfvfqh64eokhcfyPl5i/RXGueRwUUSV7XW64A4BehcPcjKMKMxPM9RZarBTwa4vdnSZMA==";
       };
     };
     "gonzales-pe-4.3.0" = {
@@ -31806,13 +31941,13 @@ let
         sha512 = "otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==";
       };
     };
-    "google-auth-library-7.14.0" = {
+    "google-auth-library-7.14.1" = {
       name = "google-auth-library";
       packageName = "google-auth-library";
-      version = "7.14.0";
+      version = "7.14.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.0.tgz";
-        sha512 = "or8r7qUqGVI3W8lVSdPh0ZpeFyQHeE73g5c0p+bLNTTUFXJ+GSeDQmZRZ2p4H8cF/RJYa4PNvi/A1ar1uVNLFA==";
+        url = "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.1.tgz";
+        sha512 = "5Rk7iLNDFhFeBYc3s8l1CqzbEBcdhwR193RlD4vSNFajIcINKI8W8P0JLmBpwymHqqWbX34pJDQu39cSy/6RsA==";
       };
     };
     "google-closure-compiler-js-20170910.0.1" = {
@@ -32157,13 +32292,13 @@ let
         sha512 = "Myqay6pmdcmX3KqoH+bMbeKZ1cTODpHS2CxF1ZzNnfTE+YUpGTcp01bOw6LpzamRb0T/WTYtGFbZeXGo9Hab2Q==";
       };
     };
-    "graphql-executor-0.0.18" = {
+    "graphql-executor-0.0.22" = {
       name = "graphql-executor";
       packageName = "graphql-executor";
-      version = "0.0.18";
+      version = "0.0.22";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-executor/-/graphql-executor-0.0.18.tgz";
-        sha512 = "upUSl7tfZCZ5dWG1XkOvpG70Yk3duZKcCoi/uJso4WxJVT6KIrcK4nZ4+2X/hzx46pL8wAukgYHY6iNmocRN+g==";
+        url = "https://registry.npmjs.org/graphql-executor/-/graphql-executor-0.0.22.tgz";
+        sha512 = "WbKSnSHFn6REKKH4T6UAwDM3mLUnYMQlQLNG0Fw+Lkb3ilCnL3m5lkJ7411LAI9sF7BvPbthovVZhsEUh9Xfag==";
       };
     };
     "graphql-extensions-0.15.0" = {
@@ -32283,13 +32418,13 @@ let
         sha512 = "sHkK9+lUm20/BGawNEWNtVAeJzhZeBg21VmvmLoT5NdGVeZWv5PdIhkcayQIAgjSyyQ17WMKmbDijIPG2On+Ag==";
       };
     };
-    "graphql-ws-5.6.2" = {
+    "graphql-ws-5.6.4" = {
       name = "graphql-ws";
       packageName = "graphql-ws";
-      version = "5.6.2";
+      version = "5.6.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.6.2.tgz";
-        sha512 = "TsjovINNEGfv52uKWYSVCOLX9LFe6wAhf9n7hIsV3zjflky1dv/mAP+kjXAXsnzV1jH5Sx0S73CtBFNvxus+SQ==";
+        url = "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.6.4.tgz";
+        sha512 = "5r8tAzznI1zeh7k12+3z07KkgXPckQbnC9h4kJ2TBDWG2wb26TJTbVHQOiAncDBgPbtXtc1A2BlttiRuPH2t/w==";
       };
     };
     "gray-matter-4.0.3" = {
@@ -33255,13 +33390,13 @@ let
         sha512 = "tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==";
       };
     };
-    "highlight.js-11.4.0" = {
+    "highlight.js-11.5.0" = {
       name = "highlight.js";
       packageName = "highlight.js";
-      version = "11.4.0";
+      version = "11.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/highlight.js/-/highlight.js-11.4.0.tgz";
-        sha512 = "nawlpCBCSASs7EdvZOYOYVkJpGmAOKMYZgZtUqSRqodZE0GRVcFKwo1RcpeOemqh9hyttTdd5wDBwHkuSyUfnA==";
+        url = "https://registry.npmjs.org/highlight.js/-/highlight.js-11.5.0.tgz";
+        sha512 = "SM6WDj5/C+VfIY8pZ6yW6Xa0Fm1tniYVYWYW1Q/DcMnISZFrC3aQAZZZFAAZtybKNrGId3p/DNbFTtcTXXgYBw==";
       };
     };
     "highlight.js-8.2.0" = {
@@ -33435,6 +33570,15 @@ let
         sha512 = "kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==";
       };
     };
+    "hosted-git-info-5.0.0" = {
+      name = "hosted-git-info";
+      packageName = "hosted-git-info";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.0.0.tgz";
+        sha512 = "rRnjWu0Bxj+nIfUOkz0695C0H6tRrN5iYIzYejb0tDEefe2AekHu/U5Kn9pEie5vsJqpNQU02az7TGSH3qpz4Q==";
+      };
+    };
     "hot-formula-parser-4.0.0" = {
       name = "hot-formula-parser";
       packageName = "hot-formula-parser";
@@ -33552,13 +33696,13 @@ let
         sha512 = "8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==";
       };
     };
-    "html-entities-2.3.2" = {
+    "html-entities-2.3.3" = {
       name = "html-entities";
       packageName = "html-entities";
-      version = "2.3.2";
+      version = "2.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/html-entities/-/html-entities-2.3.2.tgz";
-        sha512 = "c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ==";
+        url = "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz";
+        sha512 = "DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==";
       };
     };
     "html-loader-1.1.0" = {
@@ -33930,13 +34074,13 @@ let
         sha512 = "13eVVDYS4z79w7f1+NPllJtOQFx/FdUW4btIvVRMaRlUY9VGstAbo5MOhLEuUgZFRHn3x50ufn25zkj/boZnEg==";
       };
     };
-    "http-proxy-middleware-2.0.3" = {
+    "http-proxy-middleware-2.0.4" = {
       name = "http-proxy-middleware";
       packageName = "http-proxy-middleware";
-      version = "2.0.3";
+      version = "2.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.3.tgz";
-        sha512 = "1bloEwnrHMnCoO/Gcwbz7eSVvW50KPES01PecpagI+YLNLci4AcuKJrujW4Mc3sBLpFxMSlsLNHS5Nl/lvrTPA==";
+        url = "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.4.tgz";
+        sha512 = "m/4FxX17SUvz4lJ5WPXOHDUuCwIqXLfLHs1s0uZ3oYjhoXlx9csYxaOa0ElDEJ+h8Q4iJ1s+lTMbiCa4EXIJqg==";
       };
     };
     "http-signature-0.11.0" = {
@@ -34884,6 +35028,15 @@ let
         sha1 = "45e0e2ff7a9eb030b27d62b74b3744b7a7ac4216";
       };
     };
+    "inflation-2.0.0" = {
+      name = "inflation";
+      packageName = "inflation";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inflation/-/inflation-2.0.0.tgz";
+        sha1 = "8b417e47c28f925a45133d914ca1fd389107f30f";
+      };
+    };
     "inflection-1.13.2" = {
       name = "inflection";
       packageName = "inflection";
@@ -35145,6 +35298,15 @@ let
         sha512 = "pxhBaw9cyTFMjwKtkjePWDhvwzvrNGAw7En4hottzlPvz80GZaMZthdDU35aA6/f5FRZf3uhE057q8w1DE3V2g==";
       };
     };
+    "inquirer-8.2.2" = {
+      name = "inquirer";
+      packageName = "inquirer";
+      version = "8.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inquirer/-/inquirer-8.2.2.tgz";
+        sha512 = "pG7I/si6K/0X7p1qU+rfWnpTE1UIkTONN1wxtzh0d+dHXtT/JG6qBgLxoyHVsQa8cFABxAPh0pD6uUUHiAoaow==";
+      };
+    };
     "inquirer-autocomplete-prompt-1.4.0" = {
       name = "inquirer-autocomplete-prompt";
       packageName = "inquirer-autocomplete-prompt";
@@ -35154,6 +35316,15 @@ let
         sha512 = "qHgHyJmbULt4hI+kCmwX92MnSxDs/Yhdt4wPA30qnoa01OF6uTXV8yvH4hKXgdaTNmkZ9D01MHjqKYEuJN+ONw==";
       };
     };
+    "inquirer-autocomplete-prompt-2.0.0" = {
+      name = "inquirer-autocomplete-prompt";
+      packageName = "inquirer-autocomplete-prompt";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inquirer-autocomplete-prompt/-/inquirer-autocomplete-prompt-2.0.0.tgz";
+        sha512 = "c2LljLP3ewVJe4AUZzKdA6oWjqhpy5pfsisHAjh7mP3WUQ/O02x5OLMMqcLOYuRHx6i2hlVSIhUv0xYGyFxFYA==";
+      };
+    };
     "inquirer-autocomplete-prompt-ipt-2.0.0" = {
       name = "inquirer-autocomplete-prompt-ipt";
       packageName = "inquirer-autocomplete-prompt-ipt";
@@ -35334,15 +35505,6 @@ let
         sha512 = "O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==";
       };
     };
-    "internmap-1.0.1" = {
-      name = "internmap";
-      packageName = "internmap";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz";
-        sha512 = "lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==";
-      };
-    };
     "internmap-2.0.3" = {
       name = "internmap";
       packageName = "internmap";
@@ -37089,13 +37251,13 @@ let
         sha512 = "knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==";
       };
     };
-    "is-unicode-supported-1.1.0" = {
+    "is-unicode-supported-1.2.0" = {
       name = "is-unicode-supported";
       packageName = "is-unicode-supported";
-      version = "1.1.0";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.1.0.tgz";
-        sha512 = "lDcxivp8TJpLG75/DpatAqNzOpDPSpED8XNtrpBHTdQ2InQ1PbW78jhwSxyxhhu+xbVSast2X38bwj8atwoUQA==";
+        url = "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.2.0.tgz";
+        sha512 = "wH+U77omcRzevfIG8dDhTS0V9zZyweakfD01FULl97+0EHiJTTZtJqxPSkIIo/SDPv/i07k/C9jAPY+jwLLeUQ==";
       };
     };
     "is-url-1.2.4" = {
@@ -37323,13 +37485,13 @@ let
         sha512 = "8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==";
       };
     };
-    "isbinaryfile-4.0.8" = {
+    "isbinaryfile-4.0.10" = {
       name = "isbinaryfile";
       packageName = "isbinaryfile";
-      version = "4.0.8";
+      version = "4.0.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.8.tgz";
-        sha512 = "53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w==";
+        url = "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz";
+        sha512 = "iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==";
       };
     };
     "isemail-3.2.0" = {
@@ -37566,13 +37728,13 @@ let
         sha512 = "M0c7cKHmdyEUtjemnJyx/y9uX16XHocL46yQvyqDlPdvAcwPDbHrIbKjQdBqtiE4apQ/9dmr+ZLJYYPGnurgpw==";
       };
     };
-    "jake-10.8.2" = {
+    "jake-10.8.4" = {
       name = "jake";
       packageName = "jake";
-      version = "10.8.2";
+      version = "10.8.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jake/-/jake-10.8.2.tgz";
-        sha512 = "eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A==";
+        url = "https://registry.npmjs.org/jake/-/jake-10.8.4.tgz";
+        sha512 = "MtWeTkl1qGsWUtbl/Jsca/8xSoK3x0UmS82sNbjqxxG/de/M/3b1DntdjHgPMC50enlTNwXOCRqPXLLt5cCfZA==";
       };
     };
     "javascript-stringify-2.1.0" = {
@@ -37701,13 +37863,13 @@ let
         sha512 = "dZ6Ra7u1G8c4Letq/B5EzAxj4tLFHL+cGtdpR+PVm4yzPDj+lCk+AbivWt1eOM+ikzkowtyV7qSqX6qr3t71Ww==";
       };
     };
-    "jitdb-4.0.1" = {
+    "jitdb-4.1.0" = {
       name = "jitdb";
       packageName = "jitdb";
-      version = "4.0.1";
+      version = "4.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jitdb/-/jitdb-4.0.1.tgz";
-        sha512 = "teg0Zk1KhdCkv2t7ULptqej7cfdOfNtodXGBpQmY71x8U/aty3AubYrL6DutwYCiKYB7q6ITI8M/ywAJxT3kOQ==";
+        url = "https://registry.npmjs.org/jitdb/-/jitdb-4.1.0.tgz";
+        sha512 = "j6PZcTup+evIz+cVy8wDB6+GlV20/YvgDKCQtV7FBTBgYhl8FtpurUclcHz+C4OerMRosaKRX1doxTWgWoCmBQ==";
       };
     };
     "jju-1.4.0" = {
@@ -37918,15 +38080,6 @@ let
         sha512 = "efJLHhLjIyKRewNS9EGZ4UpI8NguuL6fKkhRxVuMmrGV2xN/0APGdQYwLFky5w9naebSZ0OwAGp0G6/2Cg90rA==";
       };
     };
-    "js-queue-2.0.2" = {
-      name = "js-queue";
-      packageName = "js-queue";
-      version = "2.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/js-queue/-/js-queue-2.0.2.tgz";
-        sha512 = "pbKLsbCfi7kriM3s1J4DDCo7jQkI58zPLHi0heXPzPlj0hjUsm+FesPUbE0DSbIVIK503A36aUBoCN7eMFedkA==";
-      };
-    };
     "js-sdsl-2.1.4" = {
       name = "js-sdsl";
       packageName = "js-sdsl";
@@ -38179,49 +38332,49 @@ let
         sha512 = "xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==";
       };
     };
-    "jsii-1.55.0" = {
+    "jsii-1.55.1" = {
       name = "jsii";
       packageName = "jsii";
-      version = "1.55.0";
+      version = "1.55.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii/-/jsii-1.55.0.tgz";
-        sha512 = "OpY67STJMTqF/pQRYMXx8xaA1lCnKoQCnraB043tkx6F3reyUNzlIzSIkQIgTEFoBa/OEYANHdtHJCfw6Y3nzA==";
+        url = "https://registry.npmjs.org/jsii/-/jsii-1.55.1.tgz";
+        sha512 = "9L6BztDV8PwNY5C+vwuLRJTzijh5Kyh3eijaz8NS11Jc7rTeTN8AvLxyWsIaPO+ITTP4JTsDKOU3tBaoWabRzA==";
       };
     };
-    "jsii-pacmak-1.55.0" = {
+    "jsii-pacmak-1.55.1" = {
       name = "jsii-pacmak";
       packageName = "jsii-pacmak";
-      version = "1.55.0";
+      version = "1.55.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-pacmak/-/jsii-pacmak-1.55.0.tgz";
-        sha512 = "2i1VQVGQIC0JUSryw9gV2VqcMNbR/KLQOwsfNb7gTs6qKccR5Pmf4eXuIC+HxpyIiecu1UeEbToz5q8fMdVcig==";
+        url = "https://registry.npmjs.org/jsii-pacmak/-/jsii-pacmak-1.55.1.tgz";
+        sha512 = "E208pgMfxbPbXgmcskDG0/hBbkPLGlU7S79VoXESy1Kegf7TnZjLqpBdJ3mNxIroS5gIC8DToArMHUFAQ6z0lA==";
       };
     };
-    "jsii-reflect-1.55.0" = {
+    "jsii-reflect-1.55.1" = {
       name = "jsii-reflect";
       packageName = "jsii-reflect";
-      version = "1.55.0";
+      version = "1.55.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-reflect/-/jsii-reflect-1.55.0.tgz";
-        sha512 = "PLrRTqkE0FJ9locNabIOnmXh/fX+JaKhWD9ktPmYmZzPyPL7pfHGUUnFJhtk+0yXZ9vwg/Bp5qr/l3HH2Bq+uA==";
+        url = "https://registry.npmjs.org/jsii-reflect/-/jsii-reflect-1.55.1.tgz";
+        sha512 = "/Ak+sCuIjJaRCflCWT2UKPdT88EQhbPYLhtF7F42uuUr2tchlNkybNE15bigZbtqLw7SP1fp/6Dedujvf90N9Q==";
       };
     };
-    "jsii-rosetta-1.55.0" = {
+    "jsii-rosetta-1.55.1" = {
       name = "jsii-rosetta";
       packageName = "jsii-rosetta";
-      version = "1.55.0";
+      version = "1.55.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-rosetta/-/jsii-rosetta-1.55.0.tgz";
-        sha512 = "LOw8i5ypoJ8A2D24Za3fIWeiNbPa6q0wuLuu0LAr+VWvu4f2A5A9SJfzsB39CXwDVKjrAVVvCy83Fgdv3/2VFw==";
+        url = "https://registry.npmjs.org/jsii-rosetta/-/jsii-rosetta-1.55.1.tgz";
+        sha512 = "ZUzuO2JgnxE01tgIdZorsUZj5jiHP8uxeLDU/vsnmnAU2ZbMHFDT1cWacoAKESDnCyFF8VRCuPXHx8e5/SOXig==";
       };
     };
-    "jsii-srcmak-0.1.499" = {
+    "jsii-srcmak-0.1.512" = {
       name = "jsii-srcmak";
       packageName = "jsii-srcmak";
-      version = "0.1.499";
+      version = "0.1.512";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jsii-srcmak/-/jsii-srcmak-0.1.499.tgz";
-        sha512 = "FJ8ovnFkrWL2BgseeGDkpCsx5+AfWYp0vyihtiKWvb3x/uQhB0N5q90oOhJn1uRLpwv4+UOTG3d41t4ZtCQzKg==";
+        url = "https://registry.npmjs.org/jsii-srcmak/-/jsii-srcmak-0.1.512.tgz";
+        sha512 = "AA/WSd6ysD6xPrwLvsXOnbgwgN+TlX9ApXBNTsZohQxlKEnyyQAPt945rW9cu/cdNbpc/U/Dnig3CLqDn+PogQ==";
       };
     };
     "json-bigint-1.0.0" = {
@@ -38521,13 +38674,13 @@ let
         sha512 = "0/4Lv6IenJV0qj2oBdgPIAmFiKKnh8qh7bmLFJ+/ZZHLjSeiL3fKKGX3UryvKPbxFbhV+JcYo9KUC19GJ/Z/4A==";
       };
     };
-    "json2jsii-0.2.159" = {
+    "json2jsii-0.2.172" = {
       name = "json2jsii";
       packageName = "json2jsii";
-      version = "0.2.159";
+      version = "0.2.172";
       src = fetchurl {
-        url = "https://registry.npmjs.org/json2jsii/-/json2jsii-0.2.159.tgz";
-        sha512 = "zbMiuYG79Azg3zXzVA/hP20XtDJO1obIiAbYvYzB+eXIP3YPNn/BIITiLRi6g55oCW8TaLlSRgBJDBNaTt5/tg==";
+        url = "https://registry.npmjs.org/json2jsii/-/json2jsii-0.2.172.tgz";
+        sha512 = "SXqltdQ3byo8XEsClMR5xnV6US5MWu0rBJdAC3NcvFCb0jgzu0V8ljfNJWEJJUKInuQWAsJ788ep5oKbLf3W7g==";
       };
     };
     "json3-3.2.6" = {
@@ -38566,13 +38719,13 @@ let
         sha512 = "aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==";
       };
     };
-    "json5-2.2.0" = {
+    "json5-2.2.1" = {
       name = "json5";
       packageName = "json5";
-      version = "2.2.0";
+      version = "2.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz";
-        sha512 = "f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==";
+        url = "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz";
+        sha512 = "1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==";
       };
     };
     "json5-relaxed-0.5.4" = {
@@ -39358,6 +39511,15 @@ let
         sha512 = "43zkIKubNbnrULWlHdN5h1g3SEKXOEzoAlRsHOTFpnlDu8JlAOZSMJBLULusuXRequboiwJcj5vtYXKB3k7+2g==";
       };
     };
+    "koa-bodyparser-4.3.0" = {
+      name = "koa-bodyparser";
+      packageName = "koa-bodyparser";
+      version = "4.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-bodyparser/-/koa-bodyparser-4.3.0.tgz";
+        sha512 = "uyV8G29KAGwZc4q/0WUAjH+Tsmuv9ImfBUF2oZVyZtaeo0husInagyn/JH85xMSxM0hEk/mbCII5ubLDuqW/Rw==";
+      };
+    };
     "koa-compose-3.2.1" = {
       name = "koa-compose";
       packageName = "koa-compose";
@@ -39385,6 +39547,24 @@ let
         sha512 = "asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA==";
       };
     };
+    "koa-is-json-1.0.0" = {
+      name = "koa-is-json";
+      packageName = "koa-is-json";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-is-json/-/koa-is-json-1.0.0.tgz";
+        sha1 = "273c07edcdcb8df6a2c1ab7d59ee76491451ec14";
+      };
+    };
+    "koa-json-2.0.2" = {
+      name = "koa-json";
+      packageName = "koa-json";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/koa-json/-/koa-json-2.0.2.tgz";
+        sha1 = "36af14e6ea1f5d646d7c44a285701c6f85a4fde4";
+      };
+    };
     "koa-logger-3.2.1" = {
       name = "koa-logger";
       packageName = "koa-logger";
@@ -39961,22 +40141,22 @@ let
         sha512 = "+AD7A2zbVeGRCFI2aO//oUmapCwy7GHqPXFJh3qpToSRNU+tXKJ2YFUgjt04LPPAf2dlEH95s6EhIHM1J7bmOw==";
       };
     };
-    "libsodium-0.7.9" = {
+    "libsodium-0.7.10" = {
       name = "libsodium";
       packageName = "libsodium";
-      version = "0.7.9";
+      version = "0.7.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/libsodium/-/libsodium-0.7.9.tgz";
-        sha512 = "gfeADtR4D/CM0oRUviKBViMGXZDgnFdMKMzHsvBdqLBHd9ySi6EtYnmuhHVDDYgYpAO8eU8hEY+F8vIUAPh08A==";
+        url = "https://registry.npmjs.org/libsodium/-/libsodium-0.7.10.tgz";
+        sha512 = "eY+z7hDrDKxkAK+QKZVNv92A5KYkxfvIshtBJkmg5TSiCnYqZP3i9OO9whE79Pwgm4jGaoHgkM4ao/b9Cyu4zQ==";
       };
     };
-    "libsodium-wrappers-0.7.9" = {
+    "libsodium-wrappers-0.7.10" = {
       name = "libsodium-wrappers";
       packageName = "libsodium-wrappers";
-      version = "0.7.9";
+      version = "0.7.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/libsodium-wrappers/-/libsodium-wrappers-0.7.9.tgz";
-        sha512 = "9HaAeBGk1nKTRFRHkt7nzxqCvnkWTjn1pdjKgcUnZxj0FyOP4CnhgFhMdrFfgNsukijBGyBLpP2m2uKT1vuWhQ==";
+        url = "https://registry.npmjs.org/libsodium-wrappers/-/libsodium-wrappers-0.7.10.tgz";
+        sha512 = "pO3F1Q9NPLB/MWIhehim42b/Fwb30JNScCNh8TcQ/kIc+qGLQch8ag8wb0keK3EP5kbGakk1H8Wwo7v+36rNQg==";
       };
     };
     "lie-3.0.4" = {
@@ -40042,15 +40222,6 @@ let
         sha512 = "5i0XgY+PSaGmMQTuVdtnzDg0LiTp1krfH4seefFLJNFb6Hunxic00D/roybGgd9hlbqeGmGYXZ+YQpATKQtblA==";
       };
     };
-    "lightning-5.6.1" = {
-      name = "lightning";
-      packageName = "lightning";
-      version = "5.6.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lightning/-/lightning-5.6.1.tgz";
-        sha512 = "wUS82S4bhwlR8lwuQNiMX4T+LQ/mL2zNyXOiL7dzZBRpCr/65dyXBTsl3SZPwcm4miyvO4jJJ4jhgLgKRk35aQ==";
-      };
-    };
     "lightning-5.6.2" = {
       name = "lightning";
       packageName = "lightning";
@@ -40060,24 +40231,6 @@ let
         sha512 = "1Bfrq+FK4/yuBStMzmiFnAG//YewN9Fznm2qn86z87/u6UcWqdpWvBCRS5njtq5bG6eWgxM4DOfaw9LptyXSog==";
       };
     };
-    "lightning-5.7.1" = {
-      name = "lightning";
-      packageName = "lightning";
-      version = "5.7.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lightning/-/lightning-5.7.1.tgz";
-        sha512 = "cfVDw8LVhOQ067khkXkksk21uHFRX7lPnyBhQGkEMk7Udmu7hsmiQI464HG1YjpBOs6GkyT8jxf2RXPnbfLzYA==";
-      };
-    };
-    "lightning-5.8.1" = {
-      name = "lightning";
-      packageName = "lightning";
-      version = "5.8.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/lightning/-/lightning-5.8.1.tgz";
-        sha512 = "j3m+M50fY9bZ+OSRKzJLon7dkxL+guAOp8ppDd3CLlvrba5ldbs8QbkXuYMXlwLi3Aw4ztSyEUyh69aaSfEXyg==";
-      };
-    };
     "lightning-5.8.2" = {
       name = "lightning";
       packageName = "lightning";
@@ -40087,13 +40240,13 @@ let
         sha512 = "ryJlD9qhbUSq4ZS6Q0WXnTgmj3IMqN1iBfUJoGAMzSbSGZAS8E8eejci88naBbbDA0N34hALpSsa5Ok7JayAdQ==";
       };
     };
-    "lilconfig-2.0.4" = {
+    "lilconfig-2.0.5" = {
       name = "lilconfig";
       packageName = "lilconfig";
-      version = "2.0.4";
+      version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.4.tgz";
-        sha512 = "bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==";
+        url = "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz";
+        sha512 = "xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==";
       };
     };
     "limit-spawn-0.0.3" = {
@@ -40159,13 +40312,13 @@ let
         sha1 = "bf967ba0dd31faaf09ab5bdb3676ad7f2aa18493";
       };
     };
-    "link-check-5.0.2" = {
+    "link-check-5.1.0" = {
       name = "link-check";
       packageName = "link-check";
-      version = "5.0.2";
+      version = "5.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/link-check/-/link-check-5.0.2.tgz";
-        sha512 = "F7k7HzOFY3lh11o3nQTCfi3HTrUMbn/0LQ5aBU7vgronoh8HWGZfRC4Jh0ghuQDbtTGNO4u4is6AoqK0hsYDJg==";
+        url = "https://registry.npmjs.org/link-check/-/link-check-5.1.0.tgz";
+        sha512 = "FHq/9tVnIE/3EVEPb91GcbD+K/Pv5K5DYqb7vXi3TTKIViMYPOWxYFVVENZ0rq63zfaGXGvLgPT9U6jOFc5JBw==";
       };
     };
     "linkify-it-2.2.0" = {
@@ -40276,6 +40429,15 @@ let
         sha512 = "gto+BB2uEob8qRiTlOq+R3uX0YNHsX9mjxj9Sbdue/LIKqu6IlZjrsjKeGyOMquc/474GEqFyX2pdytpydp0rQ==";
       };
     };
+    "lmdb-2.2.6" = {
+      name = "lmdb";
+      packageName = "lmdb";
+      version = "2.2.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lmdb/-/lmdb-2.2.6.tgz";
+        sha512 = "UmQV0oZZcV3EN6rjcAjIiuWcc3MYZGWQ0GUYz46Ron5fuTa/dUow7WSQa6leFkvZIKVUdECBWVw96tckfEzUFQ==";
+      };
+    };
     "ln-accounting-5.0.5" = {
       name = "ln-accounting";
       packageName = "ln-accounting";
@@ -40294,15 +40456,6 @@ let
         sha512 = "20ZIPPyGI4odh/Jxq6Lawtc+Zx7MkPuxnn34TuhZpM6ppwVbSGJSuJPctLrhZvWdaYYeboz3BITiqI/o4KvChQ==";
       };
     };
-    "ln-service-53.7.2" = {
-      name = "ln-service";
-      packageName = "ln-service";
-      version = "53.7.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ln-service/-/ln-service-53.7.2.tgz";
-        sha512 = "JrCr7yYX0m3Dus2ucsDmJJ7aVvyUtl+wUEIn1HdC8HpuwjZFARaeTG7Nm3qJk1jTaV14JrqyRPzvZ5/InwtPvg==";
-      };
-    };
     "ln-service-53.7.3" = {
       name = "ln-service";
       packageName = "ln-service";
@@ -40312,24 +40465,6 @@ let
         sha512 = "iA+G0yn3j74BcGdKxhHRCDphMSgGg4NWzFNy9r484WPBjq6KQgCRcxE0I8A0Rgi73kqMckKZmYEKrJMUuJyNYw==";
       };
     };
-    "ln-service-53.8.1" = {
-      name = "ln-service";
-      packageName = "ln-service";
-      version = "53.8.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ln-service/-/ln-service-53.8.1.tgz";
-        sha512 = "yEKEsDRsPQyBNzS7kpEaYCIhsxSsQzpf+ABov44RvbDKJONf4qMZOiy+IkqhqLP5IwlHFuLdnz/aHCLMSYtuqA==";
-      };
-    };
-    "ln-service-53.9.2" = {
-      name = "ln-service";
-      packageName = "ln-service";
-      version = "53.9.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ln-service/-/ln-service-53.9.2.tgz";
-        sha512 = "ISbIBxbRIBKDPDFuWj3pINZXFRAmHTTeEWdeq7pXJxeFH8JlnrwS8ETSJ1AfgHeeUIHK1D4xo3TNAnkSrRpH/A==";
-      };
-    };
     "ln-service-53.9.3" = {
       name = "ln-service";
       packageName = "ln-service";
@@ -40339,15 +40474,6 @@ let
         sha512 = "vB7pnTJveZSMHbyO6qyGbxNqo+rNTYexb3PONon2+Ow4fBUQW5eeBTj+LguuQdN7AgpXX/PHZUQM0TPFeHlVWw==";
       };
     };
-    "ln-sync-3.10.1" = {
-      name = "ln-sync";
-      packageName = "ln-sync";
-      version = "3.10.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ln-sync/-/ln-sync-3.10.1.tgz";
-        sha512 = "mib9y2c36Gz6oQ7sUzAmLV3a8wt52Rm1zKo7ldxBN49Tnh0gGQXbM69jOhLsy7DbB2TCjUJEh1d8OGMsbGuBqg==";
-      };
-    };
     "ln-sync-3.11.0" = {
       name = "ln-sync";
       packageName = "ln-sync";
@@ -40357,13 +40483,13 @@ let
         sha512 = "YqtS0v6zsDvv7rA51bSbXnB7Il4HQida+FpPD9KTAXdEiJW1L/NiyV4B+oosaygdUbT2oYgM3xw++L7XVBkPvA==";
       };
     };
-    "ln-telegram-3.19.1" = {
+    "ln-telegram-3.20.0" = {
       name = "ln-telegram";
       packageName = "ln-telegram";
-      version = "3.19.1";
+      version = "3.20.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ln-telegram/-/ln-telegram-3.19.1.tgz";
-        sha512 = "PvSVXwMK5XCL5DpXlAGRvhUJxn1seLsteLEpL/+iS9N3XdpB288kSOH0dBUWznoVbzJgQbykf1p3Rskx7acctg==";
+        url = "https://registry.npmjs.org/ln-telegram/-/ln-telegram-3.20.0.tgz";
+        sha512 = "gPh5EG0sNQUoqnn0Y1SeXXV0rNZN05LC8uKnvCbjPeHrFdx+3TdRLlMrsSITJL1xwATVtxN4+YWMuCSMEU7S+g==";
       };
     };
     "load-bmfont-1.4.1" = {
@@ -41923,13 +42049,13 @@ let
         sha512 = "Mc8jNuSFImQUIateBFwdOQcmC6Q5maU0VVvdC2R6XMb66/VnT+7WS4D/0EeNMZu1YODmJe5NIn2XftCzEocUgw==";
       };
     };
-    "log4js-6.4.2" = {
+    "log4js-6.4.4" = {
       name = "log4js";
       packageName = "log4js";
-      version = "6.4.2";
+      version = "6.4.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/log4js/-/log4js-6.4.2.tgz";
-        sha512 = "k80cggS2sZQLBwllpT1p06GtfvzMmSdUCkW96f0Hj83rKGJDAu2vZjt9B9ag2vx8Zz1IXzxoLgqvRJCdMKybGg==";
+        url = "https://registry.npmjs.org/log4js/-/log4js-6.4.4.tgz";
+        sha512 = "ncaWPsuw9Vl1CKA406hVnJLGQKy1OHx6buk8J4rE2lVW+NW5Y82G5/DIloO7NkqLOUtNPEANaWC1kZYVjXssPw==";
       };
     };
     "logform-2.4.0" = {
@@ -42283,13 +42409,13 @@ let
         sha512 = "Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==";
       };
     };
-    "lru-cache-7.4.4" = {
+    "lru-cache-7.7.1" = {
       name = "lru-cache";
       packageName = "lru-cache";
-      version = "7.4.4";
+      version = "7.7.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/lru-cache/-/lru-cache-7.4.4.tgz";
-        sha512 = "2XbUJmlpIbmc9JvNNmtLzHlF31srxoDxuiQiwBHic7RZyHyltbTdzoO6maRqpdEhOOG5GD80EXvzAU0wR15ccg==";
+        url = "https://registry.npmjs.org/lru-cache/-/lru-cache-7.7.1.tgz";
+        sha512 = "cRffBiTW8s73eH4aTXqBcTLU0xQnwGV3/imttRHGWCrbergmnK4D6JXQd8qin5z43HnDwRI+o7mVW0LEB+tpAw==";
       };
     };
     "lru-queue-0.1.0" = {
@@ -42337,13 +42463,13 @@ let
         sha1 = "f35ca91c493f7b73da0e07495304f17b31f87ee5";
       };
     };
-    "ltx-2.10.0" = {
+    "ltx-3.0.0" = {
       name = "ltx";
       packageName = "ltx";
-      version = "2.10.0";
+      version = "3.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ltx/-/ltx-2.10.0.tgz";
-        sha512 = "RB4zR6Mrp/0wTNS9WxMvpgfht/7u/8QAC9DpPD19opL/4OASPa28uoliFqeDkLUU8pQ4aeAfATBZmz1aSAHkMw==";
+        url = "https://registry.npmjs.org/ltx/-/ltx-3.0.0.tgz";
+        sha512 = "bu3/4/ApUmMqVNuIkHaRhqVtEi6didYcBDIF56xhPRCzVpdztCipZ62CUuaxMlMBUzaVL93+4LZRqe02fuAG6A==";
       };
     };
     "luaparse-git://github.com/oxyc/luaparse#ac42a00ebf4020b8c9d3219e4b0f84bf7ce6e802" = {
@@ -42554,13 +42680,13 @@ let
         sha512 = "s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==";
       };
     };
-    "make-fetch-happen-10.0.5" = {
+    "make-fetch-happen-10.1.0" = {
       name = "make-fetch-happen";
       packageName = "make-fetch-happen";
-      version = "10.0.5";
+      version = "10.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.0.5.tgz";
-        sha512 = "0JQ0daMRDFEv14DelmcFlprdhSDNG7WEgInTjBeWYWZ78W0jfDqygZdPLhcrQ4s/G8skNhBrS4fiF6xA+YlFjQ==";
+        url = "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.1.0.tgz";
+        sha512 = "HeP4QlkadP/Op+hE+Une1070kcyN85FshQObku3/rmzRh4zDcKXA19d2L3AQR6UoaX3uZmhSOpTLH15b1vOFvQ==";
       };
     };
     "make-fetch-happen-8.0.14" = {
@@ -42896,13 +43022,13 @@ let
         sha512 = "UB/IbzjWazwTlNAX0pvWNlJS8NKsOQ4syrXZQ/C72j+jirrsjVRT627lCaylrKJFBQWfRsPmIVQie8x38DEhAQ==";
       };
     };
-    "markdown-link-extractor-1.3.1" = {
+    "markdown-link-extractor-2.0.1" = {
       name = "markdown-link-extractor";
       packageName = "markdown-link-extractor";
-      version = "1.3.1";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-1.3.1.tgz";
-        sha512 = "IosNBtHXplzEq2n9WoSi83LNLCWgLnb+8Xq379Ct5xrLLzmqPUtc+A1oqo6Sd32YfKus9uLedFNSwFK1sCzoNQ==";
+        url = "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-2.0.1.tgz";
+        sha512 = "Qy5AcoW7CDfIAB3I6cz2QFGHoLQYSH15lmfEqRgPvC/DEEMhb/EK0yeXmpIk+GSuJveYxLvkpXVFEZhgvubxTw==";
       };
     };
     "markdown-serve-0.3.3" = {
@@ -43265,13 +43391,13 @@ let
         sha512 = "NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==";
       };
     };
-    "mdast-util-gfm-2.0.0" = {
+    "mdast-util-gfm-2.0.1" = {
       name = "mdast-util-gfm";
       packageName = "mdast-util-gfm";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.0.tgz";
-        sha512 = "wMwejlTN3EQADPFuvxe8lmGsay3+f6gSJKdAHR6KBJzpcxvsjJSILB9K6u6G7eQLC7iOTyVIHYGui9uBc9r1Tg==";
+        url = "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.1.tgz";
+        sha512 = "42yHBbfWIFisaAfV1eixlabbsa6q7vHeSPY+cg+BBjX51M8xhgMacqH9g6TftB/9+YkcI0ooV4ncfrJslzm/RQ==";
       };
     };
     "mdast-util-gfm-autolink-literal-0.1.3" = {
@@ -43328,13 +43454,13 @@ let
         sha512 = "j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==";
       };
     };
-    "mdast-util-gfm-table-1.0.3" = {
+    "mdast-util-gfm-table-1.0.4" = {
       name = "mdast-util-gfm-table";
       packageName = "mdast-util-gfm-table";
-      version = "1.0.3";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.3.tgz";
-        sha512 = "B/tgpJjND1qIZM2WZst+NYnb0notPE6m0J+YOe3NOHXyEmvK38ytxaOsgz4BvrRPQQcNbRrTzSHMPnBkj1fCjg==";
+        url = "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.4.tgz";
+        sha512 = "aEuoPwZyP4iIMkf2cLWXxx3EQ6Bmh2yKy9MVCg4i6Sd3cX80dcLEfXO/V4ul3pGH9czBK4kp+FAl+ZHmSUt9/w==";
       };
     };
     "mdast-util-gfm-task-list-item-0.1.6" = {
@@ -44084,13 +44210,13 @@ let
         sha512 = "i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg==";
       };
     };
-    "micromark-extension-gfm-footnote-1.0.3" = {
+    "micromark-extension-gfm-footnote-1.0.4" = {
       name = "micromark-extension-gfm-footnote";
       packageName = "micromark-extension-gfm-footnote";
-      version = "1.0.3";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.0.3.tgz";
-        sha512 = "bn62pC5y39rIo2g1RqZk1NhF7T7cJLuJlbevunQz41U0iPVCdVOFASe5/L1kke+DFKSgfCRhv24+o42cZ1+ADw==";
+        url = "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.0.4.tgz";
+        sha512 = "E/fmPmDqLiMUP8mLJ8NbJWJ4bTw6tS+FEQS8CcuDtZpILuOb2kjLqPEeAePF1djXROHXChM/wPJw0iS4kHCcIg==";
       };
     };
     "micromark-extension-gfm-strikethrough-0.6.5" = {
@@ -44426,6 +44552,15 @@ let
         sha512 = "pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==";
       };
     };
+    "micromatch-4.0.5" = {
+      name = "micromatch";
+      packageName = "micromatch";
+      version = "4.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz";
+        sha512 = "DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==";
+      };
+    };
     "micromist-1.1.0" = {
       name = "micromist";
       packageName = "micromist";
@@ -44570,15 +44705,6 @@ let
         sha512 = "9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A==";
       };
     };
-    "mime-db-1.51.0" = {
-      name = "mime-db";
-      packageName = "mime-db";
-      version = "1.51.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz";
-        sha512 = "5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==";
-      };
-    };
     "mime-db-1.52.0" = {
       name = "mime-db";
       packageName = "mime-db";
@@ -44633,13 +44759,13 @@ let
         sha512 = "plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g==";
       };
     };
-    "mime-types-2.1.34" = {
+    "mime-types-2.1.35" = {
       name = "mime-types";
       packageName = "mime-types";
-      version = "2.1.34";
+      version = "2.1.35";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz";
-        sha512 = "6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==";
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz";
+        sha512 = "ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==";
       };
     };
     "mimer-2.0.2" = {
@@ -44876,6 +45002,15 @@ let
         sha512 = "FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==";
       };
     };
+    "minimist-1.2.6" = {
+      name = "minimist";
+      packageName = "minimist";
+      version = "1.2.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz";
+        sha512 = "Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==";
+      };
+    };
     "minimist-options-3.0.2" = {
       name = "minimist-options";
       packageName = "minimist-options";
@@ -44948,13 +45083,13 @@ let
         sha512 = "CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==";
       };
     };
-    "minipass-fetch-2.0.3" = {
+    "minipass-fetch-2.1.0" = {
       name = "minipass-fetch";
       packageName = "minipass-fetch";
-      version = "2.0.3";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.0.3.tgz";
-        sha512 = "VA+eiiUtaIvpQJXISwE3OiMvQwAWrgKb97F0aXlCS1Ahikr8fEQq8m3Hf7Kv9KT3nokuHigJKsDMB6atU04olQ==";
+        url = "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.0.tgz";
+        sha512 = "H9U4UVBGXEyyWJnqYDCLp1PwD8XIkJ4akNHp1aGVI+2Ym7wQMlxDKi4IB4JbmyU+pl9pEs/cVrK6cOuvmbK4Sg==";
       };
     };
     "minipass-flush-1.0.5" = {
@@ -45119,13 +45254,13 @@ let
         sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
       };
     };
-    "mkdirp-0.5.5" = {
+    "mkdirp-0.5.6" = {
       name = "mkdirp";
       packageName = "mkdirp";
-      version = "0.5.5";
+      version = "0.5.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz";
-        sha512 = "NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==";
+        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz";
+        sha512 = "FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==";
       };
     };
     "mkdirp-1.0.4" = {
@@ -45155,13 +45290,13 @@ let
         sha512 = "sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw==";
       };
     };
-    "mobx-6.4.2" = {
+    "mobx-6.5.0" = {
       name = "mobx";
       packageName = "mobx";
-      version = "6.4.2";
+      version = "6.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mobx/-/mobx-6.4.2.tgz";
-        sha512 = "b4xQJYiH8sb0sEbfq/Ws3N77DEJtSihUFD1moeiz2jNoJ5B+mqJutt54ouO9iEfkp7Wk4jQDsVUOh7DPEW3wEw==";
+        url = "https://registry.npmjs.org/mobx/-/mobx-6.5.0.tgz";
+        sha512 = "pHZ/cySF00FVENDWIDzJyoObFahK6Eg4d0papqm6d7yMkxWTZ/S/csqJX1A3PsYy4t5k3z2QnlwuCfMW5lSEwA==";
       };
     };
     "mobx-react-7.3.0" = {
@@ -45200,15 +45335,6 @@ let
         sha512 = "hJaO0mwDXmZS4ghXsvPVriOhsxQ7ofcpQdm8dE+jISUOKopitvnXFQmpRR7jd2K6VBG6E26gU3IAbXXGIbu4sQ==";
       };
     };
-    "mocha-9.2.2" = {
-      name = "mocha";
-      packageName = "mocha";
-      version = "9.2.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mocha/-/mocha-9.2.2.tgz";
-        sha512 = "L6XC3EdwT6YrIk0yXpavvLkn8h+EU+Y5UcCHKECyMbdUIxyMuZj4bX4U9e1nvnvUUvQVsV2VHQr5zLdcUkhW/g==";
-      };
-    };
     "mock-require-3.0.3" = {
       name = "mock-require";
       packageName = "mock-require";
@@ -45569,13 +45695,13 @@ let
         sha512 = "VoY2AaoowHZLLKyEb5FRzuhdSzXn5quGjcMKJOJHJPxp9baYZx5t6jiHUhp5aNRlqqlt+5GXQGovMLNKsrm1hg==";
       };
     };
-    "msgpackr-1.5.4" = {
+    "msgpackr-1.5.5" = {
       name = "msgpackr";
       packageName = "msgpackr";
-      version = "1.5.4";
+      version = "1.5.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/msgpackr/-/msgpackr-1.5.4.tgz";
-        sha512 = "Z7w5Jg+2Q9z9gJxeM68d7tSuWZZGnFIRhZnyqcZCa/1dKkhOCNvR1TUV3zzJ3+vj78vlwKRzUgVDlW4jiSOeDA==";
+        url = "https://registry.npmjs.org/msgpackr/-/msgpackr-1.5.5.tgz";
+        sha512 = "JG0V47xRIQ9pyUnx6Hb4+3TrQoia2nA3UIdmyTldhxaxtKFkekkKpUW/N6fwHwod9o4BGuJGtouxOk+yCP5PEA==";
       };
     };
     "msgpackr-extract-1.0.16" = {
@@ -46821,13 +46947,13 @@ let
         sha512 = "KGXihXdUChwJAOHO53bv9/vXcLmdUsZ6jIptbvYvkpKfth+r7jw44JkVxQFA3kX5nQjzjmGu1uAu/xNNLNlI5g==";
       };
     };
-    "node-appc-1.1.3" = {
+    "node-appc-1.1.4" = {
       name = "node-appc";
       packageName = "node-appc";
-      version = "1.1.3";
+      version = "1.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-appc/-/node-appc-1.1.3.tgz";
-        sha512 = "6+c04W1cvCaWG3XVi9oJsXSjR8wWG+UyQCDR/wVGeAx6ES5mC1uQnouCy1kycZ+Lc40Ba3x49ou6cKsrsMFhsA==";
+        url = "https://registry.npmjs.org/node-appc/-/node-appc-1.1.4.tgz";
+        sha512 = "WX8vG0nja5tusSkFTgcuL2gWWug8QCFRHi8AuGoc3714whDDDCMGFcSW0pI7BltBPSdyTCffcwaee7pibzBPVw==";
       };
     };
     "node-bindgen-loader-1.0.1" = {
@@ -47010,13 +47136,13 @@ let
         sha512 = "G6RlQt5Sb4GMBzXvhfkeFmbqR6MzhtnT7VTHuLadjkii3rdYHNdw0m8zA4BTxVIh68FicCQ2NSUANpsqkr9jvQ==";
       };
     };
-    "node-forge-1.2.1" = {
+    "node-forge-1.3.0" = {
       name = "node-forge";
       packageName = "node-forge";
-      version = "1.2.1";
+      version = "1.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-forge/-/node-forge-1.2.1.tgz";
-        sha512 = "Fcvtbb+zBcZXbTTVwqGA5W+MKBj56UjVRevvchv5XrcyXbmNdesfZL37nlcWOfpgHhgmxApw3tQbTr4CqNmX4w==";
+        url = "https://registry.npmjs.org/node-forge/-/node-forge-1.3.0.tgz";
+        sha512 = "08ARB91bUi6zNKzVmaj3QO7cr397uiDT2nJ63cHjyNtCTWIgvS47j3eT0WfzUwS9+6Z5YshRaoasFkXCKrIYbA==";
       };
     };
     "node-gyp-3.8.0" = {
@@ -47109,15 +47235,6 @@ let
         sha1 = "87a9065cdb355d3182d8f94ce11188b825c68a3b";
       };
     };
-    "node-ipc-9.2.1" = {
-      name = "node-ipc";
-      packageName = "node-ipc";
-      version = "9.2.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-ipc/-/node-ipc-9.2.1.tgz";
-        sha512 = "mJzaM6O3xHf9VT8BULvJSbdVbmHUKRNOH7zDDkCrA1/T+CVjq2WVIDfLt0azZRXpgArJtl3rtmEozrbXPZ9GaQ==";
-      };
-    };
     "node-libs-browser-2.2.1" = {
       name = "node-libs-browser";
       packageName = "node-libs-browser";
@@ -47127,15 +47244,6 @@ let
         sha512 = "h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==";
       };
     };
-    "node-localstorage-1.3.1" = {
-      name = "node-localstorage";
-      packageName = "node-localstorage";
-      version = "1.3.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-localstorage/-/node-localstorage-1.3.1.tgz";
-        sha512 = "NMWCSWWc6JbHT5PyWlNT2i8r7PgGYXVntmKawY83k/M0UJScZ5jirb61TLnqKwd815DfBQu+lR3sRw08SPzIaQ==";
-      };
-    };
     "node-notifier-10.0.1" = {
       name = "node-notifier";
       packageName = "node-notifier";
@@ -47226,13 +47334,13 @@ let
         sha512 = "qKmnjR+TXJLk/aMUIW/x6I9P28b5BhlkvjNi1iZgfuVtI6wxRNpzpSUPtcOHvQTYxKdK6d5XGZdM6FD1Xy4nAg==";
       };
     };
-    "node-redis-pubsub-4.0.0" = {
+    "node-redis-pubsub-5.0.0" = {
       name = "node-redis-pubsub";
       packageName = "node-redis-pubsub";
-      version = "4.0.0";
+      version = "5.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-redis-pubsub/-/node-redis-pubsub-4.0.0.tgz";
-        sha512 = "sAUOzisio/8UYCRbjPo6+u7aTpBmxSBjTJYwu49x9KruIQgi//wbEnvbqGSH5JWViP7HyQSMtkHUcZXH7qGsOQ==";
+        url = "https://registry.npmjs.org/node-redis-pubsub/-/node-redis-pubsub-5.0.0.tgz";
+        sha512 = "SBDgfC2QwKLDYbUYNE/jDQxOU1Vg0NDf4fVNQZWnd/tXEhn/N1wY3SxaEXmHWPXhB2nqwZD5fH08SE2g07oMIA==";
       };
     };
     "node-releases-1.1.77" = {
@@ -47559,6 +47667,15 @@ let
         sha512 = "p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==";
       };
     };
+    "normalize-package-data-4.0.0" = {
+      name = "normalize-package-data";
+      packageName = "normalize-package-data";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.0.tgz";
+        sha512 = "m+GL22VXJKkKbw62ZaBBjv8u6IE3UI4Mh5QakIqs3fWiKe0Xyi6L97hakwZK41/LD4R/2ly71Bayx0NLMwLA/g==";
+      };
+    };
     "normalize-path-1.0.0" = {
       name = "normalize-path";
       packageName = "normalize-path";
@@ -47802,13 +47919,13 @@ let
         sha512 = "LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==";
       };
     };
-    "npm-package-arg-9.0.0" = {
+    "npm-package-arg-9.0.1" = {
       name = "npm-package-arg";
       packageName = "npm-package-arg";
-      version = "9.0.0";
+      version = "9.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.0.0.tgz";
-        sha512 = "yhzXxeor+Zfhe5MGwPdDumz6HtNlj2pMekWB95IX3CC6uDNgde0oPKHDCLDPoJqQfd0HqAWt+y4Hs5m7CK1+9Q==";
+        url = "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.0.1.tgz";
+        sha512 = "Xs9wznfEAmZAR61qsYH3iN24V/qMYYkvAR5CRQNMvC6PjN2fHtO8y9XP/xdp5K+Icx+u1wMBMgWRPCmAEChSog==";
       };
     };
     "npm-packlist-1.4.8" = {
@@ -47838,6 +47955,15 @@ let
         sha512 = "L/cbzmutAwII5glUcf2DBRNY/d0TFd4e/FnaZigJV6JD85RHZXJFGwCndjMWiiViiWSsWt3tiOLpI3ByTnIdFQ==";
       };
     };
+    "npm-packlist-4.0.0" = {
+      name = "npm-packlist";
+      packageName = "npm-packlist";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-packlist/-/npm-packlist-4.0.0.tgz";
+        sha512 = "gL6XC/iw9YSmqArmZOGSkyy+yIZf2f7uH0p4Vmxef/irn73vd9/rDkCtvm+a9rh/QK2xGYfCAMOghM06ymzC0A==";
+      };
+    };
     "npm-pick-manifest-6.1.1" = {
       name = "npm-pick-manifest";
       packageName = "npm-pick-manifest";
@@ -47901,13 +48027,13 @@ let
         sha512 = "Df5QT3RaJnXYuOwtXBXS9BWs+tHH2olvkCLh6jcR/b/u3DvPMlp3J0TvvYwplPKxHMOwfg287PYih9QqaVFoKA==";
       };
     };
-    "npm-registry-fetch-13.0.1" = {
+    "npm-registry-fetch-13.1.0" = {
       name = "npm-registry-fetch";
       packageName = "npm-registry-fetch";
-      version = "13.0.1";
+      version = "13.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.0.1.tgz";
-        sha512 = "Ak+LXVtSrCLOdscFW/apUw67OPNph8waHsPKM9UOJosL7i59EF5XoSWQMEsXEOeifM9Bb4/2+WrQC4t/pd8DGg==";
+        url = "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.1.0.tgz";
+        sha512 = "TIYL5X8CcwDhbFMXFDShNcpG6OMCYK6VzvSr6MUWP20tCU2DJ4ao2qQg3DT+3Pet8mO6/cgbZpon4LMh3duYLg==";
       };
     };
     "npm-registry-fetch-9.0.0" = {
@@ -47919,6 +48045,15 @@ let
         sha512 = "PuFYYtnQ8IyVl6ib9d3PepeehcUeHN9IO5N/iCRhyg9tStQcqGQBRVHmfmMWPDERU3KwZoHFvbJ4FPXPspvzbA==";
       };
     };
+    "npm-registry-utilities-1.0.0" = {
+      name = "npm-registry-utilities";
+      packageName = "npm-registry-utilities";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-registry-utilities/-/npm-registry-utilities-1.0.0.tgz";
+        sha512 = "9xYfSJy2IFQw1i6462EJzjChL9e65EfSo2Cw6kl0EFeDp05VvU+anrQk3Fc0d1MbVCq7rWIxeer89O9SUQ/uOg==";
+      };
+    };
     "npm-run-path-1.0.0" = {
       name = "npm-run-path";
       packageName = "npm-run-path";
@@ -48766,13 +48901,13 @@ let
         sha512 = "fvaSZRzprpwLFge/mcwE0CItfniNisVNamDdMK1FQUjh4ArQZ8ZWSkDaJbZc3XaANKZHq0xIa8NJpZ2HSe3oXA==";
       };
     };
-    "oo-ascii-tree-1.55.0" = {
+    "oo-ascii-tree-1.55.1" = {
       name = "oo-ascii-tree";
       packageName = "oo-ascii-tree";
-      version = "1.55.0";
+      version = "1.55.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/oo-ascii-tree/-/oo-ascii-tree-1.55.0.tgz";
-        sha512 = "oC+v1W4giMwOU19ZZmT89culEvqRlpGxoKAPirk4URHdOEWROSJy+xbuemiKRxrQwbmLMqgZw0Uq2PkiaBmtDw==";
+        url = "https://registry.npmjs.org/oo-ascii-tree/-/oo-ascii-tree-1.55.1.tgz";
+        sha512 = "wGtYFm45kmxdss2XrdXC14uDUfyekbaqqZJrfvPtYHSa98Bk+RXHdTHHLQ1kwem6HT5c3ogf7+ZUBhX0B034iA==";
       };
     };
     "open-0.0.2" = {
@@ -49072,13 +49207,13 @@ let
         sha512 = "EFTQ61/OUVhCeq78Y3rBpdKSuvgb0lwkU8nN4QTdcv0afc5MT7e4IVuZwgkMsgE993dmhbIhkxHFP3iTVJXWmw==";
       };
     };
-    "openpgp-4.10.10" = {
+    "openpgp-5.2.1" = {
       name = "openpgp";
       packageName = "openpgp";
-      version = "4.10.10";
+      version = "5.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/openpgp/-/openpgp-4.10.10.tgz";
-        sha512 = "Ub48OogGPjNsr0G/wnJ/SyAQzt/tfcXZTWVZdjKFpXCQV1Ca+upFdSPPkBlGG3lb9EQGOKZJ2tzYNH6ZyKMkDQ==";
+        url = "https://registry.npmjs.org/openpgp/-/openpgp-5.2.1.tgz";
+        sha512 = "zvu63kxe70q3D6WlKC/TB2pzI59I8V/l4G+z/VYgNVOyARsoH9q4i/WqwoHPjWG5HnRjhII3WSvp3gXH2DMPVg==";
       };
     };
     "opentracing-0.14.7" = {
@@ -49441,22 +49576,22 @@ let
         sha512 = "0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==";
       };
     };
-    "ot-builder-1.4.0" = {
+    "ot-builder-1.5.0" = {
       name = "ot-builder";
       packageName = "ot-builder";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ot-builder/-/ot-builder-1.4.0.tgz";
-        sha512 = "aNXKQr0+ztCBcb0VF7RtNJ2rcUq7jaJWr7PHs47gWVME5O+e+H/pBPh54LFBi9nm17LZGBo/gH+ETiDuMcZj8Q==";
+        url = "https://registry.npmjs.org/ot-builder/-/ot-builder-1.5.0.tgz";
+        sha512 = "taCpdbAu+OFogPf5AMdGMt2PnAGER7p4B4EWmIoMh00ZyDcyOVwgbV5V7z64wxo24tAaWXGwLqWOcI2K0SdWhQ==";
       };
     };
-    "otb-ttc-bundle-1.4.0" = {
+    "otb-ttc-bundle-1.5.0" = {
       name = "otb-ttc-bundle";
       packageName = "otb-ttc-bundle";
-      version = "1.4.0";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/otb-ttc-bundle/-/otb-ttc-bundle-1.4.0.tgz";
-        sha512 = "gZ/8LxA+YTovx/ZcU/iz9vpzpV1PSClDaWLd5ELn2amCLASMy0Icp2CNPateIwl1Z2O2pW9TTCC0Uu/0OsnKgA==";
+        url = "https://registry.npmjs.org/otb-ttc-bundle/-/otb-ttc-bundle-1.5.0.tgz";
+        sha512 = "wiavReuHttWgXplMV/T86jiT+dYPOZCq1UtsJR11m8ddI2BnDxhNZcg65OlkGU0Iq4tQmyjVG2PdX2sGH319XQ==";
       };
     };
     "ow-0.21.0" = {
@@ -49936,6 +50071,15 @@ let
         sha512 = "RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw==";
       };
     };
+    "p2tr-1.3.0" = {
+      name = "p2tr";
+      packageName = "p2tr";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/p2tr/-/p2tr-1.3.0.tgz";
+        sha512 = "LdnkVwu808S7ngeKpUjJZDWXsWXqMLYtTGE2pXtKjpIs5Nn2qL6d84Sh+/gxyeJHtTz0qmOEuYnFfn61/TuU0A==";
+      };
+    };
     "pac-proxy-agent-4.1.0" = {
       name = "pac-proxy-agent";
       packageName = "pac-proxy-agent";
@@ -50080,13 +50224,13 @@ let
         sha512 = "CdYEl03JDrRO3x18uHjBYA9TyoW8gy+ThVcypcDkxPtKlw76e4ejhYB6i9lJ+/cebbjpqPW/CijjqxwDTts8Ow==";
       };
     };
-    "pacote-13.0.3" = {
+    "pacote-13.0.5" = {
       name = "pacote";
       packageName = "pacote";
-      version = "13.0.3";
+      version = "13.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pacote/-/pacote-13.0.3.tgz";
-        sha512 = "8thQ06YoO01O1k5rvSpHS/XPJZucw2DPiiT1jI+ys8QaTN6ifAyxfyoABHBa8nIt/4wPdzly4GEPqshctHFoYA==";
+        url = "https://registry.npmjs.org/pacote/-/pacote-13.0.5.tgz";
+        sha512 = "6CYfot3/rUAn3qqzF2d/jrrXm5HlBtvaSgfmg0VtOUAdJ8fbSq21BJwftMGArkL71yXHIbUJ7Bt5B04547HELA==";
       };
     };
     "pad-0.0.5" = {
@@ -50107,22 +50251,22 @@ let
         sha1 = "ad1f22ce1bf0fdc0d6ddd908af17f351a404b8ac";
       };
     };
-    "paid-services-3.12.1" = {
+    "paid-services-3.14.2" = {
       name = "paid-services";
       packageName = "paid-services";
-      version = "3.12.1";
+      version = "3.14.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/paid-services/-/paid-services-3.12.1.tgz";
-        sha512 = "byws4+Ap+z8n/lLoZ8miW0WqaYkH/3DMmggdPmfrbYLLmSGkJEBYDnUMICX6941h1/j5KN6EC7l/MTSKaWg7/g==";
+        url = "https://registry.npmjs.org/paid-services/-/paid-services-3.14.2.tgz";
+        sha512 = "Juz+H52DcDe8m0DlYm3oPN1Lf3VKLG5p7/CiiNBoLbZ7vkgO1BU6v71nv1klrvYIJBL9+uwuzgDxWaqYqw4Yxw==";
       };
     };
-    "paid-services-3.12.2" = {
+    "paid-services-3.14.4" = {
       name = "paid-services";
       packageName = "paid-services";
-      version = "3.12.2";
+      version = "3.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/paid-services/-/paid-services-3.12.2.tgz";
-        sha512 = "1Eg1uF7Jil8w2S8Fx1vFnqhDrN4DznNunZMah3LKynsaQGDmYmBX4ryyQZshoXv8gAQ8YaqFSTdw+wipsym3lQ==";
+        url = "https://registry.npmjs.org/paid-services/-/paid-services-3.14.4.tgz";
+        sha512 = "DLmutrDtOoxgcaiyZcdzD6nIVFwMwnkcriJhZEvVNeyzXlB+aNySn5MpB4YPlDtxKuSd6use+JZxQ5RzifcJ4g==";
       };
     };
     "pako-0.2.9" = {
@@ -50143,13 +50287,13 @@ let
         sha512 = "4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==";
       };
     };
-    "papaparse-5.3.1" = {
+    "papaparse-5.3.2" = {
       name = "papaparse";
       packageName = "papaparse";
-      version = "5.3.1";
+      version = "5.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/papaparse/-/papaparse-5.3.1.tgz";
-        sha512 = "Dbt2yjLJrCwH2sRqKFFJaN5XgIASO9YOFeFP8rIBRG2Ain8mqk5r1M6DkfvqEVozVcz3r3HaUGw253hA1nLIcA==";
+        url = "https://registry.npmjs.org/papaparse/-/papaparse-5.3.2.tgz";
+        sha512 = "6dNZu0Ki+gyV0eBsFKJhYr+MdQYAzFUGlBMNj3GNrmHxmz1lfRa24CjFObPXtjcetlOv5Ad299MhIK0znp3afw==";
       };
     };
     "parallel-transform-1.2.0" = {
@@ -50368,13 +50512,13 @@ let
         sha1 = "b2c376cfb11f35513badd173ef0bb6e3a388391c";
       };
     };
-    "parse-headers-2.0.4" = {
+    "parse-headers-2.0.5" = {
       name = "parse-headers";
       packageName = "parse-headers";
-      version = "2.0.4";
+      version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.4.tgz";
-        sha512 = "psZ9iZoCNFLrgRjZ1d8mn0h9WRqJwFxM9q3x7iUjN/YT2OksthDJ5TiPCu2F38kS4zutqfW+YdVVkBZZx3/1aw==";
+        url = "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz";
+        sha512 = "ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==";
       };
     };
     "parse-help-1.0.0" = {
@@ -50521,13 +50665,13 @@ let
         sha512 = "yy7UTSmliOT/7Yl+P4hwwW2W7PbCTAMcD0lasaVG+k4/2laj42YWzLm468bLFGDoFPIb29g3BuwBcA3gLopKww==";
       };
     };
-    "parse-torrent-9.1.4" = {
+    "parse-torrent-9.1.5" = {
       name = "parse-torrent";
       packageName = "parse-torrent";
-      version = "9.1.4";
+      version = "9.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/parse-torrent/-/parse-torrent-9.1.4.tgz";
-        sha512 = "NSlG8ewolqfcEWevUUsrpvxzVWYGaKWwPHMcXTAV2qYYo6pPugVOacQXt8uDlEYh23Ituz+A9pAZK5YaXTV8Pg==";
+        url = "https://registry.npmjs.org/parse-torrent/-/parse-torrent-9.1.5.tgz";
+        sha512 = "K8FXRwTOaZMI0/xuv0dpng1MVHZRtMJ0jRWBJ3qZWVNTrC1MzWUxm9QwaXDz/2qPhV2XC4UIHI92IGHwseAwaA==";
       };
     };
     "parse-torrent-file-2.1.4" = {
@@ -51043,6 +51187,15 @@ let
         sha512 = "gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==";
       };
     };
+    "path-to-regexp-6.2.0" = {
+      name = "path-to-regexp";
+      packageName = "path-to-regexp";
+      version = "6.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.0.tgz";
+        sha512 = "f66KywYG6+43afgE/8j/GoiNyygk/bnoCbps++3ErRKsIYkGGupyv07R2Ok5m9i67Iqc+T2g1eAUGUPzWhYTyg==";
+      };
+    };
     "path-type-1.1.0" = {
       name = "path-type";
       packageName = "path-type";
@@ -51421,6 +51574,15 @@ let
         sha512 = "38tAwlJ7HevMENHD5FZE+yxSlAH5Wg3FoOjbB3MX2j3/kgpOEkmDHhTVKkecR57qxD5doHo2yi9nac94gqqbiQ==";
       };
     };
+    "pino-7.9.1" = {
+      name = "pino";
+      packageName = "pino";
+      version = "7.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pino/-/pino-7.9.1.tgz";
+        sha512 = "28+D7c5orCoScdcWtiPXrCA9tdVosBWrYQgVtPdYTyiuTt6u/+rbEtpJR+dtVG8k1flhv0H2f0XSkgGm+TdjqQ==";
+      };
+    };
     "pino-abstract-transport-0.5.0" = {
       name = "pino-abstract-transport";
       packageName = "pino-abstract-transport";
@@ -51493,6 +51655,15 @@ let
         sha512 = "IWo0HwnxUEH9OtQ3qEZsKUbpdStRSomS18Gx4UV5JT1fj/E/opYGZMgpcdzC1+3ouBJECV1evzt0778S2RJ+/Q==";
       };
     };
+    "pkg-5.5.2" = {
+      name = "pkg";
+      packageName = "pkg";
+      version = "5.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pkg/-/pkg-5.5.2.tgz";
+        sha512 = "pD0UB2ud01C6pVv2wpGsTYJrXI/bnvGRYvMLd44wFzA1p+A2jrlTGFPAYa7YEYzmitXhx23PqalaG1eUEnSwcA==";
+      };
+    };
     "pkg-conf-1.1.3" = {
       name = "pkg-conf";
       packageName = "pkg-conf";
@@ -51637,13 +51808,13 @@ let
         sha1 = "084b5093ddc92506e259f874b8d9b1afb8c79593";
       };
     };
-    "plist-3.0.4" = {
+    "plist-3.0.5" = {
       name = "plist";
       packageName = "plist";
-      version = "3.0.4";
+      version = "3.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/plist/-/plist-3.0.4.tgz";
-        sha512 = "ksrr8y9+nXOxQB2osVNqrgvX/XQPOXaU4BQMKjYq8PvaY1U18mo+fKgBSwzK+luSyinOuPae956lSVcBwxlAMg==";
+        url = "https://registry.npmjs.org/plist/-/plist-3.0.5.tgz";
+        sha512 = "83vX4eYdQp3vP9SxuYgEM/G/pJQqLUz/V/xzPrzruLs7fz7jxGQ1msZ/mg1nwZxUSuOp4sb+/bEIbRrbzZRxDA==";
       };
     };
     "plist-with-patches-0.5.1" = {
@@ -51944,22 +52115,13 @@ let
         sha512 = "yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==";
       };
     };
-    "postcss-8.4.6" = {
+    "postcss-8.4.12" = {
       name = "postcss";
       packageName = "postcss";
-      version = "8.4.6";
+      version = "8.4.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz";
-        sha512 = "OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==";
-      };
-    };
-    "postcss-8.4.8" = {
-      name = "postcss";
-      packageName = "postcss";
-      version = "8.4.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.8.tgz";
-        sha512 = "2tXEqGxrjvAO6U+CJzDL2Fk2kPHTv1jQsYkSoMeOis2SsYaXRO2COxTdQp99cYvif9JTXaAk9lYGc3VhJt7JPQ==";
+        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.12.tgz";
+        sha512 = "lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==";
       };
     };
     "postcss-calc-7.0.5" = {
@@ -51971,15 +52133,6 @@ let
         sha512 = "1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==";
       };
     };
-    "postcss-calc-8.2.4" = {
-      name = "postcss-calc";
-      packageName = "postcss-calc";
-      version = "8.2.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz";
-        sha512 = "SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==";
-      };
-    };
     "postcss-colormin-4.0.3" = {
       name = "postcss-colormin";
       packageName = "postcss-colormin";
@@ -51989,15 +52142,6 @@ let
         sha512 = "WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==";
       };
     };
-    "postcss-colormin-5.3.0" = {
-      name = "postcss-colormin";
-      packageName = "postcss-colormin";
-      version = "5.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.0.tgz";
-        sha512 = "WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg==";
-      };
-    };
     "postcss-convert-values-4.0.1" = {
       name = "postcss-convert-values";
       packageName = "postcss-convert-values";
@@ -52007,15 +52151,6 @@ let
         sha512 = "Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==";
       };
     };
-    "postcss-convert-values-5.1.0" = {
-      name = "postcss-convert-values";
-      packageName = "postcss-convert-values";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.0.tgz";
-        sha512 = "GkyPbZEYJiWtQB0KZ0X6qusqFHUepguBCNFi9t5JJc7I2OTXG7C0twbTLvCfaKOLl3rSXmpAwV7W5txd91V84g==";
-      };
-    };
     "postcss-discard-comments-4.0.2" = {
       name = "postcss-discard-comments";
       packageName = "postcss-discard-comments";
@@ -52025,15 +52160,6 @@ let
         sha512 = "RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==";
       };
     };
-    "postcss-discard-comments-5.1.1" = {
-      name = "postcss-discard-comments";
-      packageName = "postcss-discard-comments";
-      version = "5.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.1.tgz";
-        sha512 = "5JscyFmvkUxz/5/+TB3QTTT9Gi9jHkcn8dcmmuN68JQcv3aQg4y88yEHHhwFB52l/NkaJ43O0dbksGMAo49nfQ==";
-      };
-    };
     "postcss-discard-duplicates-4.0.2" = {
       name = "postcss-discard-duplicates";
       packageName = "postcss-discard-duplicates";
@@ -52043,15 +52169,6 @@ let
         sha512 = "ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==";
       };
     };
-    "postcss-discard-duplicates-5.1.0" = {
-      name = "postcss-discard-duplicates";
-      packageName = "postcss-discard-duplicates";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz";
-        sha512 = "zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==";
-      };
-    };
     "postcss-discard-empty-4.0.1" = {
       name = "postcss-discard-empty";
       packageName = "postcss-discard-empty";
@@ -52061,15 +52178,6 @@ let
         sha512 = "B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==";
       };
     };
-    "postcss-discard-empty-5.1.1" = {
-      name = "postcss-discard-empty";
-      packageName = "postcss-discard-empty";
-      version = "5.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz";
-        sha512 = "zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==";
-      };
-    };
     "postcss-discard-overridden-4.0.1" = {
       name = "postcss-discard-overridden";
       packageName = "postcss-discard-overridden";
@@ -52079,15 +52187,6 @@ let
         sha512 = "IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==";
       };
     };
-    "postcss-discard-overridden-5.1.0" = {
-      name = "postcss-discard-overridden";
-      packageName = "postcss-discard-overridden";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz";
-        sha512 = "21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==";
-      };
-    };
     "postcss-flexbugs-fixes-4.2.1" = {
       name = "postcss-flexbugs-fixes";
       packageName = "postcss-flexbugs-fixes";
@@ -52169,15 +52268,6 @@ let
         sha512 = "alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==";
       };
     };
-    "postcss-merge-longhand-5.1.1" = {
-      name = "postcss-merge-longhand";
-      packageName = "postcss-merge-longhand";
-      version = "5.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.1.tgz";
-        sha512 = "JLtqAY1LvxiD2aej6hcAk/TkXvEPM+Gs1aOkOIZub2MDEiB5NMtpMe/Ir2seIMMM245bsuHggzIhQBv6qFBm4A==";
-      };
-    };
     "postcss-merge-rules-4.0.3" = {
       name = "postcss-merge-rules";
       packageName = "postcss-merge-rules";
@@ -52187,15 +52277,6 @@ let
         sha512 = "U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==";
       };
     };
-    "postcss-merge-rules-5.1.0" = {
-      name = "postcss-merge-rules";
-      packageName = "postcss-merge-rules";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.0.tgz";
-        sha512 = "NecukEJovQ0mG7h7xV8wbYAkXGTO3MPKnXvuiXzOKcxoOodfTTKYjeo8TMhAswlSkjcPIBlnKbSFcTuVSDaPyQ==";
-      };
-    };
     "postcss-minify-font-values-4.0.2" = {
       name = "postcss-minify-font-values";
       packageName = "postcss-minify-font-values";
@@ -52205,15 +52286,6 @@ let
         sha512 = "j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==";
       };
     };
-    "postcss-minify-font-values-5.1.0" = {
-      name = "postcss-minify-font-values";
-      packageName = "postcss-minify-font-values";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz";
-        sha512 = "el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==";
-      };
-    };
     "postcss-minify-gradients-4.0.2" = {
       name = "postcss-minify-gradients";
       packageName = "postcss-minify-gradients";
@@ -52223,15 +52295,6 @@ let
         sha512 = "qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==";
       };
     };
-    "postcss-minify-gradients-5.1.0" = {
-      name = "postcss-minify-gradients";
-      packageName = "postcss-minify-gradients";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.0.tgz";
-        sha512 = "J/TMLklkONn3LuL8wCwfwU8zKC1hpS6VcxFkNUNjmVt53uKqrrykR3ov11mdUYyqVMEx67slMce0tE14cE4DTg==";
-      };
-    };
     "postcss-minify-params-4.0.2" = {
       name = "postcss-minify-params";
       packageName = "postcss-minify-params";
@@ -52241,15 +52304,6 @@ let
         sha512 = "G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==";
       };
     };
-    "postcss-minify-params-5.1.1" = {
-      name = "postcss-minify-params";
-      packageName = "postcss-minify-params";
-      version = "5.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.1.tgz";
-        sha512 = "WCpr+J9Uz8XzMpAfg3UL8z5rde6MifBbh5L8bn8S2F5hq/YDJJzASYCnCHvAB4Fqb94ys8v95ULQkW2EhCFvNg==";
-      };
-    };
     "postcss-minify-selectors-4.0.2" = {
       name = "postcss-minify-selectors";
       packageName = "postcss-minify-selectors";
@@ -52259,15 +52313,6 @@ let
         sha512 = "D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==";
       };
     };
-    "postcss-minify-selectors-5.2.0" = {
-      name = "postcss-minify-selectors";
-      packageName = "postcss-minify-selectors";
-      version = "5.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.0.tgz";
-        sha512 = "vYxvHkW+iULstA+ctVNx0VoRAR4THQQRkG77o0oa4/mBS0OzGvvzLIvHDv/nNEM0crzN2WIyFU5X7wZhaUK3RA==";
-      };
-    };
     "postcss-modules-extract-imports-1.1.0" = {
       name = "postcss-modules-extract-imports";
       packageName = "postcss-modules-extract-imports";
@@ -52376,15 +52421,6 @@ let
         sha512 = "gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==";
       };
     };
-    "postcss-normalize-charset-5.1.0" = {
-      name = "postcss-normalize-charset";
-      packageName = "postcss-normalize-charset";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz";
-        sha512 = "mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==";
-      };
-    };
     "postcss-normalize-display-values-4.0.2" = {
       name = "postcss-normalize-display-values";
       packageName = "postcss-normalize-display-values";
@@ -52394,15 +52430,6 @@ let
         sha512 = "3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==";
       };
     };
-    "postcss-normalize-display-values-5.1.0" = {
-      name = "postcss-normalize-display-values";
-      packageName = "postcss-normalize-display-values";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz";
-        sha512 = "WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==";
-      };
-    };
     "postcss-normalize-positions-4.0.2" = {
       name = "postcss-normalize-positions";
       packageName = "postcss-normalize-positions";
@@ -52412,15 +52439,6 @@ let
         sha512 = "Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==";
       };
     };
-    "postcss-normalize-positions-5.1.0" = {
-      name = "postcss-normalize-positions";
-      packageName = "postcss-normalize-positions";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.0.tgz";
-        sha512 = "8gmItgA4H5xiUxgN/3TVvXRoJxkAWLW6f/KKhdsH03atg0cB8ilXnrB5PpSshwVu/dD2ZsRFQcR1OEmSBDAgcQ==";
-      };
-    };
     "postcss-normalize-repeat-style-4.0.2" = {
       name = "postcss-normalize-repeat-style";
       packageName = "postcss-normalize-repeat-style";
@@ -52430,15 +52448,6 @@ let
         sha512 = "qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==";
       };
     };
-    "postcss-normalize-repeat-style-5.1.0" = {
-      name = "postcss-normalize-repeat-style";
-      packageName = "postcss-normalize-repeat-style";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.0.tgz";
-        sha512 = "IR3uBjc+7mcWGL6CtniKNQ4Rr5fTxwkaDHwMBDGGs1x9IVRkYIT/M4NelZWkAOBdV6v3Z9S46zqaKGlyzHSchw==";
-      };
-    };
     "postcss-normalize-string-4.0.2" = {
       name = "postcss-normalize-string";
       packageName = "postcss-normalize-string";
@@ -52448,15 +52457,6 @@ let
         sha512 = "RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==";
       };
     };
-    "postcss-normalize-string-5.1.0" = {
-      name = "postcss-normalize-string";
-      packageName = "postcss-normalize-string";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz";
-        sha512 = "oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==";
-      };
-    };
     "postcss-normalize-timing-functions-4.0.2" = {
       name = "postcss-normalize-timing-functions";
       packageName = "postcss-normalize-timing-functions";
@@ -52466,15 +52466,6 @@ let
         sha512 = "acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==";
       };
     };
-    "postcss-normalize-timing-functions-5.1.0" = {
-      name = "postcss-normalize-timing-functions";
-      packageName = "postcss-normalize-timing-functions";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz";
-        sha512 = "DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==";
-      };
-    };
     "postcss-normalize-unicode-4.0.1" = {
       name = "postcss-normalize-unicode";
       packageName = "postcss-normalize-unicode";
@@ -52484,15 +52475,6 @@ let
         sha512 = "od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==";
       };
     };
-    "postcss-normalize-unicode-5.1.0" = {
-      name = "postcss-normalize-unicode";
-      packageName = "postcss-normalize-unicode";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.0.tgz";
-        sha512 = "J6M3MizAAZ2dOdSjy2caayJLQT8E8K9XjLce8AUQMwOrCvjCHv24aLC/Lps1R1ylOfol5VIDMaM/Lo9NGlk1SQ==";
-      };
-    };
     "postcss-normalize-url-4.0.1" = {
       name = "postcss-normalize-url";
       packageName = "postcss-normalize-url";
@@ -52502,15 +52484,6 @@ let
         sha512 = "p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==";
       };
     };
-    "postcss-normalize-url-5.1.0" = {
-      name = "postcss-normalize-url";
-      packageName = "postcss-normalize-url";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz";
-        sha512 = "5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==";
-      };
-    };
     "postcss-normalize-whitespace-4.0.2" = {
       name = "postcss-normalize-whitespace";
       packageName = "postcss-normalize-whitespace";
@@ -52520,15 +52493,6 @@ let
         sha512 = "tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==";
       };
     };
-    "postcss-normalize-whitespace-5.1.1" = {
-      name = "postcss-normalize-whitespace";
-      packageName = "postcss-normalize-whitespace";
-      version = "5.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz";
-        sha512 = "83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==";
-      };
-    };
     "postcss-ordered-values-4.1.2" = {
       name = "postcss-ordered-values";
       packageName = "postcss-ordered-values";
@@ -52538,15 +52502,6 @@ let
         sha512 = "2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==";
       };
     };
-    "postcss-ordered-values-5.1.0" = {
-      name = "postcss-ordered-values";
-      packageName = "postcss-ordered-values";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.0.tgz";
-        sha512 = "wU4Z4D4uOIH+BUKkYid36gGDJNQtkVJT7Twv8qH6UyfttbbJWyw4/xIPuVEkkCtQLAJ0EdsNSh8dlvqkXb49TA==";
-      };
-    };
     "postcss-reduce-initial-4.0.3" = {
       name = "postcss-reduce-initial";
       packageName = "postcss-reduce-initial";
@@ -52556,15 +52511,6 @@ let
         sha512 = "gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==";
       };
     };
-    "postcss-reduce-initial-5.1.0" = {
-      name = "postcss-reduce-initial";
-      packageName = "postcss-reduce-initial";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.0.tgz";
-        sha512 = "5OgTUviz0aeH6MtBjHfbr57tml13PuedK/Ecg8szzd4XRMbYxH4572JFG067z+FqBIf6Zp/d+0581glkvvWMFw==";
-      };
-    };
     "postcss-reduce-transforms-4.0.2" = {
       name = "postcss-reduce-transforms";
       packageName = "postcss-reduce-transforms";
@@ -52574,15 +52520,6 @@ let
         sha512 = "EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==";
       };
     };
-    "postcss-reduce-transforms-5.1.0" = {
-      name = "postcss-reduce-transforms";
-      packageName = "postcss-reduce-transforms";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz";
-        sha512 = "2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==";
-      };
-    };
     "postcss-reporter-7.0.5" = {
       name = "postcss-reporter";
       packageName = "postcss-reporter";
@@ -52673,15 +52610,6 @@ let
         sha512 = "NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw==";
       };
     };
-    "postcss-svgo-5.1.0" = {
-      name = "postcss-svgo";
-      packageName = "postcss-svgo";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz";
-        sha512 = "D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==";
-      };
-    };
     "postcss-syntax-0.36.2" = {
       name = "postcss-syntax";
       packageName = "postcss-syntax";
@@ -52700,15 +52628,6 @@ let
         sha512 = "+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==";
       };
     };
-    "postcss-unique-selectors-5.1.1" = {
-      name = "postcss-unique-selectors";
-      packageName = "postcss-unique-selectors";
-      version = "5.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz";
-        sha512 = "5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==";
-      };
-    };
     "postcss-value-parser-3.3.1" = {
       name = "postcss-value-parser";
       packageName = "postcss-value-parser";
@@ -53213,6 +53132,15 @@ let
         sha512 = "vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg==";
       };
     };
+    "prettier-2.6.1" = {
+      name = "prettier";
+      packageName = "prettier";
+      version = "2.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/prettier/-/prettier-2.6.1.tgz";
+        sha512 = "8UVbTBYGwN37Bs9LERmxCPjdvPxlEowx2urIL6urHzdb3SDq4B/Z6xLFCblrSnE4iKWcS6ziJ3aOYrc1kz/E2A==";
+      };
+    };
     "prettier-bytes-1.0.4" = {
       name = "prettier-bytes";
       packageName = "prettier-bytes";
@@ -53699,6 +53627,15 @@ let
         sha512 = "y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==";
       };
     };
+    "promise-toolbox-0.20.0" = {
+      name = "promise-toolbox";
+      packageName = "promise-toolbox";
+      version = "0.20.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/promise-toolbox/-/promise-toolbox-0.20.0.tgz";
+        sha512 = "VXF6waqUheD19yOU7zxsXhw/HCKlXqXwUc4jM8mchtBqZFNA+GHA7dbJsQDLHP4IUpQuTLpCQRd0lCr5z4CqXQ==";
+      };
+    };
     "promise.prototype.finally-3.1.3" = {
       name = "promise.prototype.finally";
       packageName = "promise.prototype.finally";
@@ -54032,15 +53969,6 @@ let
         sha512 = "LLyJcNVKRK8AUXKcpCrZA21+mlrjzlzTLQZp/Yu279hqqQrakAu9IusT7zEddhhkQrzm6UQ9cER3nhrIZqh0hw==";
       };
     };
-    "psbt-1.1.11" = {
-      name = "psbt";
-      packageName = "psbt";
-      version = "1.1.11";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/psbt/-/psbt-1.1.11.tgz";
-        sha512 = "giKihT0fBfEFrCg9zr186s5v4urZ4tsnzLseJKcXJLl80Mw0ckeGa+Ama5pw5gSyXpoQGpakg+CS0aCJr99dSw==";
-      };
-    };
     "psbt-2.0.0" = {
       name = "psbt";
       packageName = "psbt";
@@ -55022,13 +54950,31 @@ let
         sha1 = "15931d3cd967ade52206f523aa7331aef7d43af7";
       };
     };
-    "pyright-1.1.228" = {
+    "pvtsutils-1.2.2" = {
+      name = "pvtsutils";
+      packageName = "pvtsutils";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.2.2.tgz";
+        sha512 = "OALo5ZEdqiI127i64+CXwkCOyFHUA+tCQgaUO/MvRDFXWPr53f2sx28ECNztUEzuyu5xvuuD1EB/szg9mwJoGA==";
+      };
+    };
+    "pvutils-1.1.3" = {
+      name = "pvutils";
+      packageName = "pvutils";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pvutils/-/pvutils-1.1.3.tgz";
+        sha512 = "pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ==";
+      };
+    };
+    "pyright-1.1.233" = {
       name = "pyright";
       packageName = "pyright";
-      version = "1.1.228";
+      version = "1.1.233";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pyright/-/pyright-1.1.228.tgz";
-        sha512 = "Q/LnDoZK6bxc7u60kFjFwi9X3s79kLaGd/g23T0c6T1CUdrRxDyRTvNRLjLPSLaX8EuPIdcXuPXAzXgSjBz/Mw==";
+        url = "https://registry.npmjs.org/pyright/-/pyright-1.1.233.tgz";
+        sha512 = "qjyKJd6mfXLwaBls4Ww0CmML+K2gA4NnTelxGktLC3JQv7ioWU7lmiQ1KSr1BnmwuuTfsaJSDN3f+hUf9YPfWg==";
       };
     };
     "q-0.9.7" = {
@@ -55535,13 +55481,13 @@ let
         sha512 = "M1NOdkHEcjRB+acKrdQkwf8aMTnZUIGboiH6i2PMNkjfChBIJiB4j4MuhpOn+u+XU2n7GqpocPN4bzfv0jrBsg==";
       };
     };
-    "random-access-file-2.2.0" = {
+    "random-access-file-2.2.1" = {
       name = "random-access-file";
       packageName = "random-access-file";
-      version = "2.2.0";
+      version = "2.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/random-access-file/-/random-access-file-2.2.0.tgz";
-        sha512 = "B744003Mj7v3EcuPl9hCiB2Ot4aZjgtU2mV6yFY1THiWU/XfGf1uSadR+SlQdJcwHgAWeG7Lbos0aUqjtj8FQg==";
+        url = "https://registry.npmjs.org/random-access-file/-/random-access-file-2.2.1.tgz";
+        sha512 = "RGU0xmDqdOyEiynob1KYSeh8+9c9Td1MJ74GT1viMEYAn8SJ9oBtWCXLsYZukCF46yududHOdM449uRYbzBrZQ==";
       };
     };
     "random-access-idb-1.2.2" = {
@@ -55895,13 +55841,13 @@ let
         sha512 = "dx0LvIGHcOPtKbeiSUM4jqpBl3TcY7CDjZdfOIcKeznE7BWr9dg0iPG90G5yfVQ+p/rGNMXdbfStvzQZEVEi4A==";
       };
     };
-    "react-devtools-core-4.24.0" = {
+    "react-devtools-core-4.24.2" = {
       name = "react-devtools-core";
       packageName = "react-devtools-core";
-      version = "4.24.0";
+      version = "4.24.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.24.0.tgz";
-        sha512 = "Rw7FzYOOzcfyUPaAm9P3g0tFdGqGq2LLiAI+wjYcp6CsF3DeeMrRS3HZAho4s273C29G/DJhx0e8BpRE/QZNGg==";
+        url = "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.24.2.tgz";
+        sha512 = "UC3rvQCG/dnC95NPNWBFrUEtdAEiFZ9xZe1tTHFOELVR5qfNLroZ3w9tC51NQvvK5E10G2ko3lQ5Vrh3p0bHrA==";
       };
     };
     "react-dom-17.0.2" = {
@@ -56030,13 +55976,13 @@ let
         sha512 = "2FoTQzRNTncBVtnzxFOk2mCpcfxQpenBMbk5kSVBg5UcPqV9fRbgY2zhb7GTWWOlpFmAxhClBDlIq8Rsubz1yQ==";
       };
     };
-    "react-string-replace-0.4.4" = {
+    "react-string-replace-1.0.0" = {
       name = "react-string-replace";
       packageName = "react-string-replace";
-      version = "0.4.4";
+      version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/react-string-replace/-/react-string-replace-0.4.4.tgz";
-        sha512 = "FAMkhxmDpCsGTwTZg7p/2v+/GTmxAp73so3fbSvlAcBBX36ujiGRNEaM/1u+jiYQrArhns+7eE92g2pi5E5FUA==";
+        url = "https://registry.npmjs.org/react-string-replace/-/react-string-replace-1.0.0.tgz";
+        sha512 = "+iLsyE4AeSmnfctgswXOf1PmKRgns6wJ4LVb+8ADMU6mDK3jvBE11QzfMQf7CYtPUUiBCDjZ9ZppzXOIYrzCRg==";
       };
     };
     "react-tabs-3.2.3" = {
@@ -56093,6 +56039,15 @@ let
         sha512 = "wg3LWkUpG21lhv+cZvNy+p0+vtclZw+9nP2vO6T9PKT50EN1cUq37Dq6FzcM38h/c2domE0gsUhb6jHXtGogAA==";
       };
     };
+    "react-zoom-pan-pinch-2.1.3" = {
+      name = "react-zoom-pan-pinch";
+      packageName = "react-zoom-pan-pinch";
+      version = "2.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-zoom-pan-pinch/-/react-zoom-pan-pinch-2.1.3.tgz";
+        sha512 = "a5AChOWhjo0RmxsNZXGQIlNh3e3nLU6m4V6M+6dlbPNk5d+MtMxgKWyA5zpR06Lp3OZkZVF9nR8JeWSvKwck9g==";
+      };
+    };
     "read-1.0.5" = {
       name = "read";
       packageName = "read";
@@ -56210,6 +56165,15 @@ let
         sha512 = "Dqer4pqzamDE2O4M55xp1qZMuLPqi4ldk2ya648FOMHRjwMzFhuxVrG04wd0c38IsvkVdr3vgHI6z+QTPdAjrQ==";
       };
     };
+    "read-package-json-5.0.0" = {
+      name = "read-package-json";
+      packageName = "read-package-json";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.0.tgz";
+        sha512 = "1cjk2MV5ONDMn34uxSID3X8NY7VKsXfJnjbcVdFMvHEnJOBzU6MJ7/3yg6QFVZDq5/1yFNrKBUK9kGnonyGP2Q==";
+      };
+    };
     "read-package-json-fast-2.0.3" = {
       name = "read-package-json-fast";
       packageName = "read-package-json-fast";
@@ -56660,15 +56624,6 @@ let
         sha1 = "8984b5815d99cb220469c99eeeffe38913e6cc0b";
       };
     };
-    "redis-2.8.0" = {
-      name = "redis";
-      packageName = "redis";
-      version = "2.8.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/redis/-/redis-2.8.0.tgz";
-        sha512 = "M1OkonEQwtRmZv4tEWF2VgpG0JWJ8Fv1PhlgT5+B+uNq2cA3Rt1Yt/ryoR+vQNOQcIEgdCdfH0jr3bDpihAw1A==";
-      };
-    };
     "redis-3.1.1" = {
       name = "redis";
       packageName = "redis";
@@ -56705,15 +56660,6 @@ let
         sha1 = "eb62d2adb15e4eaf4610c04afe1529384250abad";
       };
     };
-    "redis-parser-2.6.0" = {
-      name = "redis-parser";
-      packageName = "redis-parser";
-      version = "2.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/redis-parser/-/redis-parser-2.6.0.tgz";
-        sha1 = "52ed09dacac108f1a631c07e9b69941e7a19504b";
-      };
-    };
     "redis-parser-3.0.0" = {
       name = "redis-parser";
       packageName = "redis-parser";
@@ -56723,13 +56669,13 @@ let
         sha1 = "b66d828cdcafe6b4b8a428a7def4c6bcac31c8b4";
       };
     };
-    "redoc-2.0.0-rc.64" = {
+    "redoc-2.0.0-rc.65" = {
       name = "redoc";
       packageName = "redoc";
-      version = "2.0.0-rc.64";
+      version = "2.0.0-rc.65";
       src = fetchurl {
-        url = "https://registry.npmjs.org/redoc/-/redoc-2.0.0-rc.64.tgz";
-        sha512 = "zrM/vcONpbmyDUOpk7Ai7R/yZrT7W1+8ANJUB3b5kzaLQUx4VbrDoT4D6HHHquOnKx+5We4nOPPAi8fi/cqa8g==";
+        url = "https://registry.npmjs.org/redoc/-/redoc-2.0.0-rc.65.tgz";
+        sha512 = "VqJbhb3krYXFP8De7ygyaWsA4jr9K5avsMo3GJUDv2xPiHTOzcprkIfOaL4ZdINn03x6JT1GOa47cWhrmb5KVA==";
       };
     };
     "reduce-component-1.0.1" = {
@@ -59621,13 +59567,13 @@ let
         sha512 = "lkjaiAye+wBZDCBsu5BGi0XiLRxeUlsGod5ZP924CRSEoGuZAw/f7y9RKu28rwTfiHVhdavhB0qH0INV6P1lEA==";
       };
     };
-    "selfsigned-2.0.0" = {
+    "selfsigned-2.0.1" = {
       name = "selfsigned";
       packageName = "selfsigned";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.0.tgz";
-        sha512 = "cUdFiCbKoa1mZ6osuJs2uDHrs0k0oprsKveFiiaBKCNq3SYyb5gs2HxhQyDNLCmL51ZZThqi4YNDpCK6GOP1iQ==";
+        url = "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.1.tgz";
+        sha512 = "LmME957M1zOsUhG+67rAjKfiWFox3SBxE/yymatMZsAx+oMrJ0YQ8AToOnyCm7xbeg2ep37IHLxdu0o2MavQOQ==";
       };
     };
     "semaphore-async-await-1.5.1" = {
@@ -59891,6 +59837,15 @@ let
         sha512 = "UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==";
       };
     };
+    "send-0.18.0" = {
+      name = "send";
+      packageName = "send";
+      version = "0.18.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/send/-/send-0.18.0.tgz";
+        sha512 = "qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==";
+      };
+    };
     "sentence-splitter-2.3.2" = {
       name = "sentence-splitter";
       packageName = "sentence-splitter";
@@ -60053,6 +60008,15 @@ let
         sha512 = "+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==";
       };
     };
+    "serve-static-1.15.0" = {
+      name = "serve-static";
+      packageName = "serve-static";
+      version = "1.15.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz";
+        sha512 = "XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==";
+      };
+    };
     "server-destroy-1.0.1" = {
       name = "server-destroy";
       packageName = "server-destroy";
@@ -60206,13 +60170,13 @@ let
         sha512 = "kehYuigMoRkIngCv7rhgruLJNNHDnitGTBdkcYbCbooL8Cidj/bS78MDxByIjcc69M915WxcQTgZetZ1JbeQTQ==";
       };
     };
-    "sha512-wasm-2.3.3" = {
+    "sha512-wasm-2.3.4" = {
       name = "sha512-wasm";
       packageName = "sha512-wasm";
-      version = "2.3.3";
+      version = "2.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sha512-wasm/-/sha512-wasm-2.3.3.tgz";
-        sha512 = "x8McxarTu+Wv5hu5TQE4qgSSGQ3JOX/OmkhLGVty+ajcEN6zLPqTS6Ljt/N6Gl2jI+3y0wjj+RxDxy8Ca9Krfw==";
+        url = "https://registry.npmjs.org/sha512-wasm/-/sha512-wasm-2.3.4.tgz";
+        sha512 = "akWoxJPGCB3aZCrZ+fm6VIFhJ/p8idBv7AWGFng/CZIrQo51oQNsvDbTSRXWAzIiZJvpy16oIDiCCPqTe21sKg==";
       };
     };
     "shallow-clone-3.0.1" = {
@@ -60611,6 +60575,15 @@ let
         sha512 = "z4qtrRuaAFJS4PUd0g+xy7aN4y+RvEt/QTJpR184lhJguBA1S/LsVlvE/CM95RsYMOFJG3NGGDjqFCzKU19S/A==";
       };
     };
+    "simple-git-3.4.0" = {
+      name = "simple-git";
+      packageName = "simple-git";
+      version = "3.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/simple-git/-/simple-git-3.4.0.tgz";
+        sha512 = "sBRdudUc1yvi0xQQPuHXc1L9gTWkRn4hP2bbc7q4BTxR502d3JJAGsDOhrmsBY+wAZAw5JLl82tx55fSWYE65w==";
+      };
+    };
     "simple-handshake-3.0.0" = {
       name = "simple-handshake";
       packageName = "simple-handshake";
@@ -60746,13 +60719,13 @@ let
         sha1 = "c2f83f273a3e1a16edb0995661da0ed5ef033364";
       };
     };
-    "siphash24-1.3.0" = {
+    "siphash24-1.3.1" = {
       name = "siphash24";
       packageName = "siphash24";
-      version = "1.3.0";
+      version = "1.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/siphash24/-/siphash24-1.3.0.tgz";
-        sha512 = "2HvNPUYcmoFks2IX2wI5D80NspdlgSJlCmPencbBMWhrZnNW3sgiC7owaB2Jj/9IiV9bdN2A00LaM8IcojB8rw==";
+        url = "https://registry.npmjs.org/siphash24/-/siphash24-1.3.1.tgz";
+        sha512 = "moemC3ZKiTzH29nbFo3Iw8fbemWWod4vNs/WgKbQ54oEs6mE6XVlguxvinYjB+UmaE0PThgyED9fUkWvirT8hA==";
       };
     };
     "siphash24-universal-1.0.0" = {
@@ -61097,15 +61070,6 @@ let
         sha512 = "2A892lrj0GcgR/9Qk81EaY2gYhCBxurV0PfmmESO6p27QPrUK1J3zdns+5QPqvUYK2q657nSj0guoIil9+7eFg==";
       };
     };
-    "socket.io-2.4.0" = {
-      name = "socket.io";
-      packageName = "socket.io";
-      version = "2.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/socket.io/-/socket.io-2.4.0.tgz";
-        sha512 = "9UPJ1UTvKayuQfVv2IQ3k7tCQC/fboDyIK62i99dAQIyHKaBsNdTpwHLgKJ6guRWxRtC9H+138UwpaGuQO9uWQ==";
-      };
-    };
     "socket.io-2.4.1" = {
       name = "socket.io";
       packageName = "socket.io";
@@ -61223,6 +61187,15 @@ let
         sha512 = "2B9LqSunN60yV8F7S84CCEEcgbYNfrn7ejIInZtLZ7ppWtiX8rGZAjvdCvbnC8bqo/9RlCNOUsORLyskxSFP1g==";
       };
     };
+    "socket.io-client-4.4.1" = {
+      name = "socket.io-client";
+      packageName = "socket.io-client";
+      version = "4.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.4.1.tgz";
+        sha512 = "N5C/L5fLNha5Ojd7Yeb/puKcPWWcoB/A09fEjjNsg91EDVr5twk/OEyO6VT9dlLSUNY85NpW6KBhVMvaLKQ3vQ==";
+      };
+    };
     "socket.io-parser-2.1.2" = {
       name = "socket.io-parser";
       packageName = "socket.io-parser";
@@ -62618,13 +62591,13 @@ let
         sha512 = "zZ/Q1M+9ZWlrchgh4QauD/MEUFa6eC6H6FYq6T8Of/y82JqsQBLwN6YlzbO09evE7Rx6x0oliXDCnQSjwGwQRA==";
       };
     };
-    "sscaff-1.2.225" = {
+    "sscaff-1.2.239" = {
       name = "sscaff";
       packageName = "sscaff";
-      version = "1.2.225";
+      version = "1.2.239";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sscaff/-/sscaff-1.2.225.tgz";
-        sha512 = "hpbhRLb5pC9zsEpQgfaAKI+a6/JUIKvEIQ1B2THIMDZZbfUyXZIW5Sn/u1/nhqPbvo2j+aslar8ewqRwI2eWbw==";
+        url = "https://registry.npmjs.org/sscaff/-/sscaff-1.2.239.tgz";
+        sha512 = "labp/0JhozHLJWGAdobeGgabqIosT6oTjRYPVSGQUy+P1L4qTBWLAOBCRURm+4JHLh7fOHXt7gnFLrEg42SDrA==";
       };
     };
     "ssh-config-1.1.6" = {
@@ -63257,6 +63230,15 @@ let
         sha512 = "ztP79ug6S+I7td0Nd2GBeIKCm+vA54c+e60FY87metz5n/l6ydPELd2lxsljz8OpIhsRM9HkIiAwz85+S5G5/A==";
       };
     };
+    "streaming-json-stringify-3.1.0" = {
+      name = "streaming-json-stringify";
+      packageName = "streaming-json-stringify";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/streaming-json-stringify/-/streaming-json-stringify-3.1.0.tgz";
+        sha1 = "80200437a993cc39c4fe00263b7b3b903ac87af5";
+      };
+    };
     "streamroller-0.7.0" = {
       name = "streamroller";
       packageName = "streamroller";
@@ -63275,13 +63257,13 @@ let
         sha512 = "OG79qm3AujAM9ImoqgWEY1xG4HX+Lw+yY6qZj9R1K2mhF5bEmQ849wvrb+4vt4jLMLzwXttJlQbOdPOQVRv7DQ==";
       };
     };
-    "streamroller-3.0.4" = {
+    "streamroller-3.0.6" = {
       name = "streamroller";
       packageName = "streamroller";
-      version = "3.0.4";
+      version = "3.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/streamroller/-/streamroller-3.0.4.tgz";
-        sha512 = "GI9NzeD+D88UFuIlJkKNDH/IsuR+qIN7Qh8EsmhoRZr9bQoehTraRgwtLUkZbpcAw+hLPfHOypmppz8YyGK68w==";
+        url = "https://registry.npmjs.org/streamroller/-/streamroller-3.0.6.tgz";
+        sha512 = "Qz32plKq/MZywYyhEatxyYc8vs994Gz0Hu2MSYXXLD233UyPeIeRBZARIIGwFer4Mdb8r3Y2UqKkgyDghM6QCg==";
       };
     };
     "streamsearch-0.1.2" = {
@@ -64022,13 +64004,13 @@ let
         sha1 = "7958c793e47e32e07d2b5cafe5c0bf8e12e77902";
       };
     };
-    "styled-components-5.3.3" = {
+    "styled-components-5.3.5" = {
       name = "styled-components";
       packageName = "styled-components";
-      version = "5.3.3";
+      version = "5.3.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/styled-components/-/styled-components-5.3.3.tgz";
-        sha512 = "++4iHwBM7ZN+x6DtPPWkCI4vdtwumQ+inA/DdAsqYd4SVgUKJie5vXyzotA00ttcFdQkCng7zc6grwlfIfw+lw==";
+        url = "https://registry.npmjs.org/styled-components/-/styled-components-5.3.5.tgz";
+        sha512 = "ndETJ9RKaaL6q41B69WudeqLzOpY1A/ET/glXkNZ2T7dPjPqpPCXXQjDFYZWwNnE5co0wX+gTCqx9mfxTmSIPg==";
       };
     };
     "stylehacks-4.0.3" = {
@@ -64040,15 +64022,6 @@ let
         sha512 = "7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==";
       };
     };
-    "stylehacks-5.1.0" = {
-      name = "stylehacks";
-      packageName = "stylehacks";
-      version = "5.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.0.tgz";
-        sha512 = "SzLmvHQTrIWfSgljkQCw2++C9+Ne91d/6Sp92I8c5uHTcy/PgeHamwITIbBW9wnFTY/3ZfSXR9HIL6Ikqmcu6Q==";
-      };
-    };
     "stylelint-13.13.1" = {
       name = "stylelint";
       packageName = "stylelint";
@@ -64427,13 +64400,13 @@ let
         sha512 = "fuwol0N4UoHsNQolLFbMqWivqcJ9N0vfWO9IuPAiX/5okfoGXURyJ6nECbuEIv0nU3M8Xe2I1ONNje2buk7l6A==";
       };
     };
-    "svelte2tsx-0.5.5" = {
+    "svelte2tsx-0.5.6" = {
       name = "svelte2tsx";
       packageName = "svelte2tsx";
-      version = "0.5.5";
+      version = "0.5.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/svelte2tsx/-/svelte2tsx-0.5.5.tgz";
-        sha512 = "5n8jP721bM3vXPk36AM9diZg2aasLvsfP/Zt9CQVrcqcnzexOYVeS8kpGk+3mofOPvPvXnOCLdff62usI/KOMw==";
+        url = "https://registry.npmjs.org/svelte2tsx/-/svelte2tsx-0.5.6.tgz";
+        sha512 = "B4WZUtoTdVD+F73H1RQEH3Hrv7m2/ahThmAUkjT5CTWRigQaJqYQpSjisCH1Pzfi9B37YikDnAi4u4uxwYM+iw==";
       };
     };
     "sver-compat-1.5.0" = {
@@ -64589,13 +64562,13 @@ let
         sha512 = "8z18eX8G/jbTXYzyNIaobrnD7PSN7yU/YkSasMmajrXtw0FGS64XjrKn5v37d36qmU3o1xLeuYnktshRr7uIFw==";
       };
     };
-    "swagger-ui-dist-4.6.2" = {
+    "swagger-ui-dist-4.9.1" = {
       name = "swagger-ui-dist";
       packageName = "swagger-ui-dist";
-      version = "4.6.2";
+      version = "4.9.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-4.6.2.tgz";
-        sha512 = "BSt+ukOGkGZ2uHV4jyyCAzt60ysyQpGZAAhtIh7AMHT4MH1xXGkoXm2tfr1oRqO1N4IEY6qqNAlmcfMo/dAYuw==";
+        url = "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-4.9.1.tgz";
+        sha512 = "hYo/kt/wXYd/4WOUm2NLyDa3tR3lCfHbjVa1wSvvSL8AKbYoJsBkc4Va7VJ1uv/JO89xM1736pp1tzJkrVsBxA==";
       };
     };
     "swagger2openapi-7.0.8" = {
@@ -64733,22 +64706,13 @@ let
         sha512 = "YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==";
       };
     };
-    "systeminformation-5.11.7" = {
-      name = "systeminformation";
-      packageName = "systeminformation";
-      version = "5.11.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/systeminformation/-/systeminformation-5.11.7.tgz";
-        sha512 = "MI6HtSoBF2e1pTpRGQC8b5X5QDln8mazQTD3KyFFlLGkk7291kQv+mjeriz30TDVTcWEnEfKPxZwHnZBFYnr6w==";
-      };
-    };
-    "systeminformation-5.11.8" = {
+    "systeminformation-5.11.9" = {
       name = "systeminformation";
       packageName = "systeminformation";
-      version = "5.11.8";
+      version = "5.11.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/systeminformation/-/systeminformation-5.11.8.tgz";
-        sha512 = "u30rM0KwGKiJof44Ak25WeSh9661NU2GshXpHPpv/zGXvvSGI5eALjpVJ3EYnIroceToWzy9+xkuMfjHIx6OiQ==";
+        url = "https://registry.npmjs.org/systeminformation/-/systeminformation-5.11.9.tgz";
+        sha512 = "eeMtL9UJFR/LYG+2rpeAgZ0Va4ojlNQTkYiQH/xbbPwDjDMsaetj3Pkc+C1aH5G8mav6HvDY8kI4Vl4noksSkA==";
       };
     };
     "sywac-1.3.0" = {
@@ -65274,13 +65238,13 @@ let
         sha512 = "EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==";
       };
     };
-    "terser-5.12.0" = {
+    "terser-5.12.1" = {
       name = "terser";
       packageName = "terser";
-      version = "5.12.0";
+      version = "5.12.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/terser/-/terser-5.12.0.tgz";
-        sha512 = "R3AUhNBGWiFc77HXag+1fXpAxTAFRQTJemlJKjAgD9r8xXTpjNKqIXwHM/o7Rh+O0kUJtS3WQVdBeMKFk5sw9A==";
+        url = "https://registry.npmjs.org/terser/-/terser-5.12.1.tgz";
+        sha512 = "NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ==";
       };
     };
     "terser-webpack-plugin-1.4.5" = {
@@ -66291,13 +66255,13 @@ let
         sha1 = "2d17d82cf669ada7f9dfe75db4b31f7034b71e29";
       };
     };
-    "torrent-discovery-9.4.9" = {
+    "torrent-discovery-9.4.10" = {
       name = "torrent-discovery";
       packageName = "torrent-discovery";
-      version = "9.4.9";
+      version = "9.4.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/torrent-discovery/-/torrent-discovery-9.4.9.tgz";
-        sha512 = "xU5zLDdX6QMm4zJ+wceunk9nhs3Q/2Lewj/yCLx15lnfugf3Ir4bo/axM3IEwDl+lkH7zWYe/iy2+r/2yyILgQ==";
+        url = "https://registry.npmjs.org/torrent-discovery/-/torrent-discovery-9.4.10.tgz";
+        sha512 = "Sx2BdYYRCWXkxenGlbt3ZRSH6rcrt8ii6O6Aub9vqeS+RzzyNn2w68QVGClpctExoLle3T2eXO9gdlPANckMkA==";
       };
     };
     "torrent-piece-1.1.2" = {
@@ -66741,15 +66705,6 @@ let
         sha512 = "DEQrfv6l7IvN2jlzc/VTdZJYsWUnQNCsueYjMkC/iXoEoi5fNan6MjeDqkvhfzbmHgdz9UxDUluX3V5HdjTydQ==";
       };
     };
-    "ts-morph-12.2.0" = {
-      name = "ts-morph";
-      packageName = "ts-morph";
-      version = "12.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/ts-morph/-/ts-morph-12.2.0.tgz";
-        sha512 = "WHXLtFDcIRwoqaiu0elAoZ/AmI+SwwDafnPKjgJmdwJ2gRVO0jMKBt88rV2liT/c6MTsXyuWbGFiHe9MRddWJw==";
-      };
-    };
     "ts-node-10.4.0" = {
       name = "ts-node";
       packageName = "ts-node";
@@ -66804,13 +66759,22 @@ let
         sha512 = "5xZugaeM3wKQPj/vrWnrtYjNh4xnIz6cGSW/smCe9OTmkh1+KvHpm7M7HLq/OnBaljf4+yKctC4AYimBi4T1/Q==";
       };
     };
-    "tsconfig-paths-3.12.0" = {
+    "tsconfig-5.0.3" = {
+      name = "tsconfig";
+      packageName = "tsconfig";
+      version = "5.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tsconfig/-/tsconfig-5.0.3.tgz";
+        sha1 = "5f4278e701800967a8fc383fd19648878f2a6e3a";
+      };
+    };
+    "tsconfig-paths-3.14.0" = {
       name = "tsconfig-paths";
       packageName = "tsconfig-paths";
-      version = "3.12.0";
+      version = "3.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.12.0.tgz";
-        sha512 = "e5adrnOYT6zqVnWqZu7i/BQ3BnhzvGbjEjejFXO20lKIKpwTaupkCPgEfv4GZK1IBciJUEhYs3J3p75FdaTFVg==";
+        url = "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.0.tgz";
+        sha512 = "cg/1jAZoL57R39+wiw4u/SCC6Ic9Q5NqjBOb+9xISedOYurfog9ZNmKJSxAnb2m/5Bq4lE9lhUcau33Ml8DM0g==";
       };
     };
     "tsconfig-paths-webpack-plugin-3.5.2" = {
@@ -66822,13 +66786,13 @@ let
         sha512 = "EhnfjHbzm5IYI9YPNVIxx1moxMI4bpHD2e0zTXeDNQcwjjRaGepP7IhTHJkyDBG0CAOoxRfe7jCG630Ou+C6Pw==";
       };
     };
-    "tslib-1.13.0" = {
-      name = "tslib";
-      packageName = "tslib";
-      version = "1.13.0";
+    "tsify-5.0.4" = {
+      name = "tsify";
+      packageName = "tsify";
+      version = "5.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz";
-        sha512 = "i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==";
+        url = "https://registry.npmjs.org/tsify/-/tsify-5.0.4.tgz";
+        sha512 = "XAZtQ5OMPsJFclkZ9xMZWkSNyMhMxEPsz3D2zu79yoKorH9j/DT4xCloJeXk5+cDhosEibu4bseMVjyPOAyLJA==";
       };
     };
     "tslib-1.14.1" = {
@@ -67299,22 +67263,22 @@ let
         sha512 = "fPcV5KLAqFfmhHobtAUwEpbpfYhVF7wSLVgbG/7mIGe/Pete7ky/bPAPRkzbWdrj0/EkswFAAR2feJCgigkUKg==";
       };
     };
-    "type-fest-2.11.2" = {
+    "type-fest-2.12.0" = {
       name = "type-fest";
       packageName = "type-fest";
-      version = "2.11.2";
+      version = "2.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/type-fest/-/type-fest-2.11.2.tgz";
-        sha512 = "reW2Y2Mpn0QNA/5fvtm5doROLwDPu2zOm5RtY7xQQS05Q7xgC8MOZ3yPNaP9m/s/sNjjFQtHo7VCNqYW2iI+Ig==";
+        url = "https://registry.npmjs.org/type-fest/-/type-fest-2.12.0.tgz";
+        sha512 = "Qe5GRT+n/4GoqCNGGVp5Snapg1Omq3V7irBJB3EaKsp7HWDo5Gv2d/67gfNyV+d5EXD+x/RF5l1h4yJ7qNkcGA==";
       };
     };
-    "type-fest-2.12.0" = {
+    "type-fest-2.12.1" = {
       name = "type-fest";
       packageName = "type-fest";
-      version = "2.12.0";
+      version = "2.12.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/type-fest/-/type-fest-2.12.0.tgz";
-        sha512 = "Qe5GRT+n/4GoqCNGGVp5Snapg1Omq3V7irBJB3EaKsp7HWDo5Gv2d/67gfNyV+d5EXD+x/RF5l1h4yJ7qNkcGA==";
+        url = "https://registry.npmjs.org/type-fest/-/type-fest-2.12.1.tgz";
+        sha512 = "AiknQSEqKVGDDjtZqeKrUoTlcj7FKhupmnVUgz6KoOKtvMwRGE6hUNJ/nVear+h7fnUPO1q/htSkYKb1pyntkQ==";
       };
     };
     "type-is-1.6.18" = {
@@ -67488,6 +67452,15 @@ let
         sha512 = "HM/hFigTBHZhLXshn9sN37H085+hQGeJHJ/X7LpBWLID/fbc2acUMfU+lGD98X81sKP+pFa9f0DZmCwB9GnbAg==";
       };
     };
+    "typescript-4.6.3" = {
+      name = "typescript";
+      packageName = "typescript";
+      version = "4.6.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typescript/-/typescript-4.6.3.tgz";
+        sha512 = "yNIatDa5iaofVozS/uQJEl3JRWLKKGJKh6Yaiv0GLGSuhpFJe7P3SbHZ8/yjAHRQwKRoA6YZqlfjXWmVzoVSMw==";
+      };
+    };
     "typescript-eslint-parser-16.0.1" = {
       name = "typescript-eslint-parser";
       packageName = "typescript-eslint-parser";
@@ -67974,13 +67947,13 @@ let
         sha1 = "5e4bda308e4a8a2ae584f9b9a4359a499825cc50";
       };
     };
-    "undici-4.15.1" = {
+    "undici-4.16.0" = {
       name = "undici";
       packageName = "undici";
-      version = "4.15.1";
+      version = "4.16.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/undici/-/undici-4.15.1.tgz";
-        sha512 = "h8LJybhMKD09IyQZoQadNtIR/GmugVhTOVREunJrpV6RStriKBFdSVoFzEzTihwXi/27DIBO+Z0OGF+Mzfi0lA==";
+        url = "https://registry.npmjs.org/undici/-/undici-4.16.0.tgz";
+        sha512 = "tkZSECUYi+/T1i4u+4+lwZmQgLXd4BLGlrc7KZPcLIW7Jpq99+Xpc30ONv7nS6F5UNOxp/HBZSSL9MafUrvJbw==";
       };
     };
     "unherit-1.1.3" = {
@@ -68442,13 +68415,13 @@ let
         sha512 = "w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==";
       };
     };
-    "unist-util-position-4.0.1" = {
+    "unist-util-position-4.0.2" = {
       name = "unist-util-position";
       packageName = "unist-util-position";
-      version = "4.0.1";
+      version = "4.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.1.tgz";
-        sha512 = "mgy/zI9fQ2HlbOtTdr2w9lhVaiFUHWQnZrFF2EUoVOqtAUdzqMtNiD99qA5a1IcjWVR8O6aVYE9u7Z2z1v0SQA==";
+        url = "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.2.tgz";
+        sha512 = "Y6+plxR41dOLbyyqVDLuGWgXDmxdXslCSRYQkSDagBnOT9oFsQH0J8FzhirSklUEe0xZTT0WDnAE1gXPaDFljA==";
       };
     };
     "unist-util-position-from-estree-1.1.1" = {
@@ -69820,13 +69793,13 @@ let
         sha512 = "Hq72JaTpcTFdWiNA4Y22Amej2GH3BFmBaKPPlDZ4/oC8HNn2ISHLkFrJU4Ds8R3jcUi7oo5Y9jcMHKjES+N9wQ==";
       };
     };
-    "vega-5.21.0" = {
+    "vega-5.22.1" = {
       name = "vega";
       packageName = "vega";
-      version = "5.21.0";
+      version = "5.22.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega/-/vega-5.21.0.tgz";
-        sha512 = "yqqRa9nAqYoAxe7sVhRpsh0b001fly7Yx05klPkXmrvzjxXd07gClW1mOuGgSnVQqo7jTp/LYgbO1bD37FbEig==";
+        url = "https://registry.npmjs.org/vega/-/vega-5.22.1.tgz";
+        sha512 = "KJBI7OWSzpfCPbmWl3GQCqBqbf2TIdpWS0mzO6MmWbvdMhWHf74P9IVnx1B1mhg0ZTqWFualx9ZYhWzMMwudaQ==";
       };
     };
     "vega-canvas-1.2.6" = {
@@ -69838,13 +69811,13 @@ let
         sha512 = "rgeYUpslYn/amIfnuv3Sw6n4BGns94OjjZNtUc9IDji6b+K8LGS/kW+Lvay8JX/oFqtulBp8RLcHN6QjqPLA9Q==";
       };
     };
-    "vega-crossfilter-4.0.5" = {
+    "vega-crossfilter-4.1.0" = {
       name = "vega-crossfilter";
       packageName = "vega-crossfilter";
-      version = "4.0.5";
+      version = "4.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-crossfilter/-/vega-crossfilter-4.0.5.tgz";
-        sha512 = "yF+iyGP+ZxU7Tcj5yBsMfoUHTCebTALTXIkBNA99RKdaIHp1E690UaGVLZe6xde2n5WaYpho6I/I6wdAW3NXcg==";
+        url = "https://registry.npmjs.org/vega-crossfilter/-/vega-crossfilter-4.1.0.tgz";
+        sha512 = "aiOJcvVpiEDIu5uNc4Kf1hakkkPaVOO5fw5T4RSFAw6GEDbdqcB6eZ1xePcsLVic1hxYD5SGiUPdiiIs0SMh2g==";
       };
     };
     "vega-dataflow-5.7.4" = {
@@ -69856,13 +69829,13 @@ let
         sha512 = "JGHTpUo8XGETH3b1V892we6hdjzCWB977ybycIu8DPqRoyrZuj6t1fCVImazfMgQD1LAfJlQybWP+alwKDpKig==";
       };
     };
-    "vega-encode-4.8.3" = {
+    "vega-encode-4.9.0" = {
       name = "vega-encode";
       packageName = "vega-encode";
-      version = "4.8.3";
+      version = "4.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-encode/-/vega-encode-4.8.3.tgz";
-        sha512 = "JoRYtaV2Hs8spWLzTu/IjR7J9jqRmuIOEicAaWj6T9NSZrNWQzu2zF3IVsX85WnrIDIRUDaehXaFZvy9uv9RQg==";
+        url = "https://registry.npmjs.org/vega-encode/-/vega-encode-4.9.0.tgz";
+        sha512 = "etv2BHuCn9bzEc0cxyA2TnbtcAFQGVFmsaqmB4sgBCaqTSEfXMoX68LK3yxBrsdm5LU+y3otJVoewi3qWYCx2g==";
       };
     };
     "vega-event-selector-3.0.0" = {
@@ -69883,67 +69856,67 @@ let
         sha512 = "y5+c2frq0tGwJ7vYXzZcfVcIRF/QGfhf2e+bV1Z0iQs+M2lI1II1GPDdmOcMKimpoCVp/D61KUJDIGE1DSmk2w==";
       };
     };
-    "vega-force-4.0.7" = {
+    "vega-force-4.1.0" = {
       name = "vega-force";
       packageName = "vega-force";
-      version = "4.0.7";
+      version = "4.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-force/-/vega-force-4.0.7.tgz";
-        sha512 = "pyLKdwXSZ9C1dVIqdJOobvBY29rLvZjvRRTla9BU/nMwAiAGlGi6WKUFdRGdneyGe3zo2nSZDTZlZM/Z5VaQNA==";
+        url = "https://registry.npmjs.org/vega-force/-/vega-force-4.1.0.tgz";
+        sha512 = "Sssf8iH48vYlz+E7/RpU+SUaJbuLoIL87U4tG2Av4gf/hRiImU49x2TI3EuhFWg1zpaCFxlz0CAaX++Oh/gjdw==";
       };
     };
-    "vega-format-1.0.4" = {
+    "vega-format-1.1.0" = {
       name = "vega-format";
       packageName = "vega-format";
-      version = "1.0.4";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-format/-/vega-format-1.0.4.tgz";
-        sha512 = "oTAeub3KWm6nKhXoYCx1q9G3K43R6/pDMXvqDlTSUtjoY7b/Gixm8iLcir5S9bPjvH40n4AcbZsPmNfL/Up77A==";
+        url = "https://registry.npmjs.org/vega-format/-/vega-format-1.1.0.tgz";
+        sha512 = "6mgpeWw8yGdG0Zdi8aVkx5oUrpJGOpNxqazC2858RSDPvChM/jDFlgRMTYw52qk7cxU0L08ARp4BwmXaI75j0w==";
       };
     };
-    "vega-functions-5.12.1" = {
+    "vega-functions-5.13.0" = {
       name = "vega-functions";
       packageName = "vega-functions";
-      version = "5.12.1";
+      version = "5.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-functions/-/vega-functions-5.12.1.tgz";
-        sha512 = "7cHfcjXOj27qEbh2FTzWDl7FJK4xGcMFF7+oiyqa0fp7BU/wNT5YdNV0t5kCX9WjV7mfJWACKV74usLJbyM6GA==";
+        url = "https://registry.npmjs.org/vega-functions/-/vega-functions-5.13.0.tgz";
+        sha512 = "Mf53zNyx+c9fFqagEI0T8zc9nMlx0zozOngr8oOpG1tZDKOgwOnUgN99zQKbLHjyv+UzWrq3LYTnSLyVe0ZmhQ==";
       };
     };
-    "vega-geo-4.3.8" = {
+    "vega-geo-4.4.0" = {
       name = "vega-geo";
       packageName = "vega-geo";
-      version = "4.3.8";
+      version = "4.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-geo/-/vega-geo-4.3.8.tgz";
-        sha512 = "fsGxV96Q/QRgPqOPtMBZdI+DneIiROKTG3YDZvGn0EdV16OG5LzFhbNgLT5GPzI+kTwgLpAsucBHklexlB4kfg==";
+        url = "https://registry.npmjs.org/vega-geo/-/vega-geo-4.4.0.tgz";
+        sha512 = "3YX41y+J5pu0PMjvBCASg0/lgvu9+QXWJZ+vl6FFKa8AlsIopQ67ZL7ObwqjZcoZMolJ4q0rc+ZO8aj1pXCYcw==";
       };
     };
-    "vega-hierarchy-4.0.9" = {
+    "vega-hierarchy-4.1.0" = {
       name = "vega-hierarchy";
       packageName = "vega-hierarchy";
-      version = "4.0.9";
+      version = "4.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-hierarchy/-/vega-hierarchy-4.0.9.tgz";
-        sha512 = "4XaWK6V38/QOZ+vllKKTafiwL25m8Kd+ebHmDV+Q236ONHmqc/gv82wwn9nBeXPEfPv4FyJw2SRoqa2Jol6fug==";
+        url = "https://registry.npmjs.org/vega-hierarchy/-/vega-hierarchy-4.1.0.tgz";
+        sha512 = "DWBK39IEt4FiQru12twzKSFUvFFZ7KtlH9+lAaqrJnKuIZFCyQ1XOUfKScfbKIlk4KS+DuCTNLI/pxC/f7Sk9Q==";
       };
     };
-    "vega-label-1.1.0" = {
+    "vega-label-1.2.0" = {
       name = "vega-label";
       packageName = "vega-label";
-      version = "1.1.0";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-label/-/vega-label-1.1.0.tgz";
-        sha512 = "LAThIiDEsZxYvbSkvPLJ93eJF+Ts8RXv1IpBh8gmew8XGmaLJvVkzdsMe7WJJwuaVEsK7ZZFyB/Inkp842GW6w==";
+        url = "https://registry.npmjs.org/vega-label/-/vega-label-1.2.0.tgz";
+        sha512 = "1prOqkCAfXaUvMqavbGI0nbYGqV8UQR9qvuVwrPJ6Yxm3GIUIOA/JRqNY8eZR8USwMP/kzsqlfVEixj9+Y75VQ==";
       };
     };
-    "vega-loader-4.4.1" = {
+    "vega-loader-4.5.0" = {
       name = "vega-loader";
       packageName = "vega-loader";
-      version = "4.4.1";
+      version = "4.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-loader/-/vega-loader-4.4.1.tgz";
-        sha512 = "dj65i4qlNhK0mOmjuchHgUrF5YUaWrYpx0A8kXA68lBk5Hkx8FNRztkcl07CZJ1+8V81ymEyJii9jzGbhEX0ag==";
+        url = "https://registry.npmjs.org/vega-loader/-/vega-loader-4.5.0.tgz";
+        sha512 = "EkAyzbx0pCYxH3v3wghGVCaKINWxHfgbQ2pYDiYv0yo8e04S8Mv/IlRGTt6BAe7cLhrk1WZ4zh20QOppnGG05w==";
       };
     };
     "vega-parser-6.1.4" = {
@@ -69955,22 +69928,22 @@ let
         sha512 = "tORdpWXiH/kkXcpNdbSVEvtaxBuuDtgYp9rBunVW9oLsjFvFXbSWlM1wvJ9ZFSaTfx6CqyTyGMiJemmr1QnTjQ==";
       };
     };
-    "vega-projection-1.4.5" = {
+    "vega-projection-1.5.0" = {
       name = "vega-projection";
       packageName = "vega-projection";
-      version = "1.4.5";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-projection/-/vega-projection-1.4.5.tgz";
-        sha512 = "85kWcPv0zrrNfxescqHtSYpRknilrS0K3CVRZc7IYQxnLtL1oma9WEbrSr1LCmDoCP5hl2Z1kKbomPXkrQX5Ag==";
+        url = "https://registry.npmjs.org/vega-projection/-/vega-projection-1.5.0.tgz";
+        sha512 = "aob7qojh555x3hQWZ/tr8cIJNSWQbm6EoWTJaheZgFOY2x3cDa4Qrg3RJbGw6KwVj/IQk2p40paRzixKZ2kr+A==";
       };
     };
-    "vega-regression-1.0.9" = {
+    "vega-regression-1.1.0" = {
       name = "vega-regression";
       packageName = "vega-regression";
-      version = "1.0.9";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-regression/-/vega-regression-1.0.9.tgz";
-        sha512 = "KSr3QbCF0vJEAWFVY2MA9X786oiJncTTr3gqRMPoaLr/Yo3f7OPKXRoUcw36RiWa0WCOEMgTYtM28iK6ZuSgaA==";
+        url = "https://registry.npmjs.org/vega-regression/-/vega-regression-1.1.0.tgz";
+        sha512 = "09K0RemY6cdaXBAyakDUNFfEkRcLkGjkDJyWQPAUqGK59hV2J+G3i4uxkZp18Vu0t8oqU7CgzwWim1s5uEpOcA==";
       };
     };
     "vega-runtime-6.1.3" = {
@@ -69982,58 +69955,58 @@ let
         sha512 = "gE+sO2IfxMUpV0RkFeQVnHdmPy3K7LjHakISZgUGsDI/ZFs9y+HhBf8KTGSL5pcZPtQsZh3GBQ0UonqL1mp9PA==";
       };
     };
-    "vega-scale-7.1.1" = {
+    "vega-scale-7.2.0" = {
       name = "vega-scale";
       packageName = "vega-scale";
-      version = "7.1.1";
+      version = "7.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-scale/-/vega-scale-7.1.1.tgz";
-        sha512 = "yE0to0prA9E5PBJ/XP77TO0BMkzyUVyt7TH5PAwj+CZT7PMsMO6ozihelRhoIiVcP0Ae/ByCEQBUQkzN5zJ0ZA==";
+        url = "https://registry.npmjs.org/vega-scale/-/vega-scale-7.2.0.tgz";
+        sha512 = "QYltO/otrZHLrCGGf06Y99XtPtqWXITr6rw7rO9oL+l3d9o5RFl9sjHrVxiM7v+vGoZVWbBd5IPbFhPsXZ6+TA==";
       };
     };
-    "vega-scenegraph-4.9.4" = {
+    "vega-scenegraph-4.10.1" = {
       name = "vega-scenegraph";
       packageName = "vega-scenegraph";
-      version = "4.9.4";
+      version = "4.10.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-scenegraph/-/vega-scenegraph-4.9.4.tgz";
-        sha512 = "QaegQzbFE2yhYLNWAmHwAuguW3yTtQrmwvfxYT8tk0g+KKodrQ5WSmNrphWXhqwtsgVSvtdZkfp2IPeumcOQJg==";
+        url = "https://registry.npmjs.org/vega-scenegraph/-/vega-scenegraph-4.10.1.tgz";
+        sha512 = "takIpkmNxYHhJYALOYzhTin3EDzbys6U4g+l1yJZVlXG9YTdiCMuEVAdtaQOCqF9/7qytD6pCrMxJY2HaoN0qQ==";
       };
     };
-    "vega-selections-5.3.1" = {
+    "vega-selections-5.4.0" = {
       name = "vega-selections";
       packageName = "vega-selections";
-      version = "5.3.1";
+      version = "5.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-selections/-/vega-selections-5.3.1.tgz";
-        sha512 = "cm4Srw1WHjcLGXX7GpxiUlfESv8XPu5b6Vh3mqMDPU94P2FO91SR9gei+EtRdt+KCFgIjr//MnRUjg/hAWwjkQ==";
+        url = "https://registry.npmjs.org/vega-selections/-/vega-selections-5.4.0.tgz";
+        sha512 = "Un3JdLDPjIpF9Dh4sw6m1c/QAcfam6m1YXHJ9vJxE/GdJ+sOrPxc7bcEU8VhOmTUN7IQUn4/1ry4JqqOVMbEhw==";
       };
     };
-    "vega-statistics-1.7.10" = {
+    "vega-statistics-1.8.0" = {
       name = "vega-statistics";
       packageName = "vega-statistics";
-      version = "1.7.10";
+      version = "1.8.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-statistics/-/vega-statistics-1.7.10.tgz";
-        sha512 = "QLb12gcfpDZ9K5h3TLGrlz4UXDH9wSPyg9LLfOJZacxvvJEPohacUQNrGEAVtFO9ccUCerRfH9cs25ZtHsOZrw==";
+        url = "https://registry.npmjs.org/vega-statistics/-/vega-statistics-1.8.0.tgz";
+        sha512 = "dl+LCRS6qS4jWDme/NEdPVt5r649uB4IK6Kyr2/czmGA5JqjuFmtQ9lHQOnRu8945XLkqLf+JIQQo7vnw+nslA==";
       };
     };
-    "vega-time-2.0.4" = {
+    "vega-time-2.1.0" = {
       name = "vega-time";
       packageName = "vega-time";
-      version = "2.0.4";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-time/-/vega-time-2.0.4.tgz";
-        sha512 = "U314UDR9+ZlWrD3KBaeH+j/c2WSMdvcZq5yJfFT0yTg1jsBKAQBYFGvl+orackD8Zx3FveHOxx3XAObaQeDX+Q==";
+        url = "https://registry.npmjs.org/vega-time/-/vega-time-2.1.0.tgz";
+        sha512 = "Q9/l3S6Br1RPX5HZvyLD/cQ4K6K8DtpR09/1y7D66gxNorg2+HGzYZINH9nUvN3mxoXcBWg4cCUh3+JvmkDaEg==";
       };
     };
-    "vega-transforms-4.9.4" = {
+    "vega-transforms-4.10.0" = {
       name = "vega-transforms";
       packageName = "vega-transforms";
-      version = "4.9.4";
+      version = "4.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-transforms/-/vega-transforms-4.9.4.tgz";
-        sha512 = "JGBhm5Bf6fiGTUSB5Qr5ckw/KU9FJcSV5xIe/y4IobM/i/KNwI1i1fP45LzP4F4yZc0DMTwJod2UvFHGk9plKA==";
+        url = "https://registry.npmjs.org/vega-transforms/-/vega-transforms-4.10.0.tgz";
+        sha512 = "Yk6ByzVq5F2niFfPlSsrU5wi+NZhsF7IBpJCcTfms4U7eoyNepUXagdFEJ3VWBD/Lit6GorLXFgO17NYcyS5gg==";
       };
     };
     "vega-typings-0.22.2" = {
@@ -70054,13 +70027,13 @@ let
         sha512 = "HTaydZd9De3yf+8jH66zL4dXJ1d1p5OIFyoBzFiOli4IJbwkL1jrefCKz6AHDm1kYBzDJ0X4bN+CzZSCTvNk1w==";
       };
     };
-    "vega-view-5.10.1" = {
+    "vega-view-5.11.0" = {
       name = "vega-view";
       packageName = "vega-view";
-      version = "5.10.1";
+      version = "5.11.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-view/-/vega-view-5.10.1.tgz";
-        sha512 = "4xvQ5KZcgKdZx1Z7jjenCUumvlyr/j4XcHLRf9gyeFrFvvS596dVpL92V8twhV6O++DmS2+fj+rHagO8Di4nMg==";
+        url = "https://registry.npmjs.org/vega-view/-/vega-view-5.11.0.tgz";
+        sha512 = "MI9NTRFmtFX6ADk6KOHhi8bhHjC9pPm42Bj2+74c6l1d3NQZf9Jv7lkiGqKohdkQDNH9LPwz/6slhKwPU9JdkQ==";
       };
     };
     "vega-view-transforms-4.5.8" = {
@@ -70072,13 +70045,13 @@ let
         sha512 = "966m7zbzvItBL8rwmF2nKG14rBp7q+3sLCKWeMSUrxoG+M15Smg5gWEGgwTG3A/RwzrZ7rDX5M1sRaAngRH25g==";
       };
     };
-    "vega-voronoi-4.1.5" = {
+    "vega-voronoi-4.2.0" = {
       name = "vega-voronoi";
       packageName = "vega-voronoi";
-      version = "4.1.5";
+      version = "4.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vega-voronoi/-/vega-voronoi-4.1.5.tgz";
-        sha512 = "950IkgCFLj0zG33EWLAm1hZcp+FMqWcNQliMYt+MJzOD5S4MSpZpZ7K4wp2M1Jktjw/CLKFL9n38JCI0i3UonA==";
+        url = "https://registry.npmjs.org/vega-voronoi/-/vega-voronoi-4.2.0.tgz";
+        sha512 = "1iuNAVZgUHRlBpdq4gSga3KlQmrgFfwy+KpyDgPLQ8HbLkhcVeT7RDh2L6naluqD7Op0xVLms3clR920WsYryQ==";
       };
     };
     "vega-wordcloud-4.1.3" = {
@@ -70324,13 +70297,13 @@ let
         sha512 = "GN2bH2gs4eLnw/4jPSgfBjo+XCuvnX9elHICJZjVD4+NM0nsUrMTvdjGY5Sc/XG69XVTgLwj7hknQVc6M9FukA==";
       };
     };
-    "vfile-reporter-7.0.3" = {
+    "vfile-reporter-7.0.4" = {
       name = "vfile-reporter";
       packageName = "vfile-reporter";
-      version = "7.0.3";
+      version = "7.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vfile-reporter/-/vfile-reporter-7.0.3.tgz";
-        sha512 = "q+ruTWxFHbow359TDqoNJn5THdwRDeV+XUOtzdT/OESgaGw05CjL68ImlbzRzqS5xL62Y1IaIWb8x+RbaNjayA==";
+        url = "https://registry.npmjs.org/vfile-reporter/-/vfile-reporter-7.0.4.tgz";
+        sha512 = "4cWalUnLrEnbeUQ+hARG5YZtaHieVK3Jp4iG5HslttkVl+MHunSGNAIrODOTLbtjWsNZJRMCkL66AhvZAYuJ9A==";
       };
     };
     "vfile-reporter-pretty-5.0.0" = {
@@ -70540,22 +70513,22 @@ let
         sha1 = "614f7fbf8d801f0bb5f0661f5b2f5785750e4f09";
       };
     };
-    "vsce-1.103.1" = {
+    "vsce-1.88.0" = {
       name = "vsce";
       packageName = "vsce";
-      version = "1.103.1";
+      version = "1.88.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vsce/-/vsce-1.103.1.tgz";
-        sha512 = "98oKQKKRp7J/vTIk1cuzom5cezZpYpRHs3WlySdsrTCrAEipB/HvaPTc4VZ3hGZHzHXS9P5p2L0IllntJeXwiQ==";
+        url = "https://registry.npmjs.org/vsce/-/vsce-1.88.0.tgz";
+        sha512 = "FS5ou3G+WRnPPr/tWVs8b/jVzeDacgZHy/y7/QQW7maSPFEAmRt2bFGUJtJVEUDLBqtDm/3VGMJ7D31cF2U1tw==";
       };
     };
-    "vsce-1.88.0" = {
+    "vsce-2.7.0" = {
       name = "vsce";
       packageName = "vsce";
-      version = "1.88.0";
+      version = "2.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vsce/-/vsce-1.88.0.tgz";
-        sha512 = "FS5ou3G+WRnPPr/tWVs8b/jVzeDacgZHy/y7/QQW7maSPFEAmRt2bFGUJtJVEUDLBqtDm/3VGMJ7D31cF2U1tw==";
+        url = "https://registry.npmjs.org/vsce/-/vsce-2.7.0.tgz";
+        sha512 = "CKU34wrQlbKDeJCRBkd1a8iwF9EvNxcYMg9hAUH6AxFGR6Wo2IKWwt3cJIcusHxx6XdjDHWlfAS/fJN30uvVnA==";
       };
     };
     "vscode-css-languageservice-3.0.13" = {
@@ -70585,6 +70558,15 @@ let
         sha512 = "FA0foqMzMmEoO0WJP+MjoD4dRERhKS+Ag+yBrtmWQDmw2OuZ1R/5FkvI/XdTkCpHmTD9VMczugpHRejQyTXCNQ==";
       };
     };
+    "vscode-css-languageservice-5.3.0" = {
+      name = "vscode-css-languageservice";
+      packageName = "vscode-css-languageservice";
+      version = "5.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vscode-css-languageservice/-/vscode-css-languageservice-5.3.0.tgz";
+        sha512 = "ujWW855AoJlE4ETU17Gff7unlZZTHDA0w26itk9EQFMfJqi9lE6S67zOsMvcPmJf55MrnGQbojDYZRiDVaFjdA==";
+      };
+    };
     "vscode-debugadapter-testsupport-1.51.0" = {
       name = "vscode-debugadapter-testsupport";
       packageName = "vscode-debugadapter-testsupport";
@@ -70630,15 +70612,6 @@ let
         sha512 = "mIb5VMXM5jI97HzCk2eadI1K//rCEZXte0wBqA7PGXsyJH4KTyJUaYk9MR+mbfpUl2vMi3HZw9GUOLGYLc6l5w==";
       };
     };
-    "vscode-html-languageservice-3.2.0" = {
-      name = "vscode-html-languageservice";
-      packageName = "vscode-html-languageservice";
-      version = "3.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-html-languageservice/-/vscode-html-languageservice-3.2.0.tgz";
-        sha512 = "aLWIoWkvb5HYTVE0kI9/u3P0ZAJGrYOSAAE6L0wqB9radKRtbJNrF9+BjSUFyCgBdNBE/GFExo35LoknQDJrfw==";
-      };
-    };
     "vscode-html-languageservice-4.1.1" = {
       name = "vscode-html-languageservice";
       packageName = "vscode-html-languageservice";
@@ -70648,13 +70621,13 @@ let
         sha512 = "rrDyCiOgMwOPgchpPGAeLzjYVVEW/Ror2/a1BWUEI3S9+NQhA9vj4SQkzmH6g2Bq9S9SV0OQeadD+xphOf1N3w==";
       };
     };
-    "vscode-html-languageservice-4.2.2" = {
+    "vscode-html-languageservice-4.2.4" = {
       name = "vscode-html-languageservice";
       packageName = "vscode-html-languageservice";
-      version = "4.2.2";
+      version = "4.2.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-html-languageservice/-/vscode-html-languageservice-4.2.2.tgz";
-        sha512 = "4ICwlpplGbiNQq6D/LZr4qLbPZuMmnSQeX/57UAYP7jD1LOvKeru4lVI+f6d6Eyd7uS46nLJ5DUY4AAlq35C0g==";
+        url = "https://registry.npmjs.org/vscode-html-languageservice/-/vscode-html-languageservice-4.2.4.tgz";
+        sha512 = "1HqvXKOq9WlZyW4HTD+0XzrjZoZ/YFrgQY2PZqktbRloHXVAUKm6+cAcvZi4YqKPVn05/CK7do+KBHfuSaEdbg==";
       };
     };
     "vscode-json-languageservice-3.11.0" = {
@@ -70675,13 +70648,13 @@ let
         sha512 = "0vSpg6Xd9hfV+eZAaYN63xVVMOTmJ4GgHxXnkLCh+9RsQBkWKIghzLhW2B9ebfG+LQQg8uLtsQ2aUKjTgE+QOg==";
       };
     };
-    "vscode-json-languageservice-4.2.0" = {
+    "vscode-json-languageservice-4.2.1" = {
       name = "vscode-json-languageservice";
       packageName = "vscode-json-languageservice";
-      version = "4.2.0";
+      version = "4.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-4.2.0.tgz";
-        sha512 = "XNawv0Vdy/sUK0S+hGf7cq/qsVAbIniGJr89TvZOqMCNJmpgKTy1e8PL1aWW0uy6BfWMG7vxa5lZb3ypuFtuGQ==";
+        url = "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-4.2.1.tgz";
+        sha512 = "xGmv9QIWs2H8obGbWg+sIPI/3/pFgj/5OWBhNzs00BkYQ9UaB2F6JJaGB/2/YOZJ3BvLXQTC4Q7muqU25QgAhA==";
       };
     };
     "vscode-jsonrpc-3.5.0" = {
@@ -70747,13 +70720,13 @@ let
         sha512 = "nkiNDGI+Ytp7uj1lxHXddXCoEunhcry1D+KmVHBfUUgWT9jMF8ZJyH5KQObdF+OGAh7bXZxD/SV4uGwSCeHHWA==";
       };
     };
-    "vscode-jsonrpc-8.0.0-next.2" = {
+    "vscode-jsonrpc-8.0.0-next.5" = {
       name = "vscode-jsonrpc";
       packageName = "vscode-jsonrpc";
-      version = "8.0.0-next.2";
+      version = "8.0.0-next.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.0.0-next.2.tgz";
-        sha512 = "gxUyTBAjmwGkiHW/UaRScre2s4i98P8M7gnc3VB4DrVQUm3vQ0idi2cN9nbkfcjATx+uEt8C22j+MLN/8UzsJA==";
+        url = "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.0.0-next.5.tgz";
+        sha512 = "owRllqcFTnz5rXxcbmHPFGmpFmLqj9Z1V3Dzrv+s8ejOHLIT62Pyb5Uqzyl2/in2VP22DmzErPgZwrxjLCIKiQ==";
       };
     };
     "vscode-jsonrpc-8.0.0-next.7" = {
@@ -70774,13 +70747,13 @@ let
         sha512 = "0fuBZj9pMkeJ8OMyIvSGeRaRVhUaJt+yeFxi7a3sz/AbrngQdcxOovMXPgKuieoBSBKS05gXPS88BsWpJZfBkA==";
       };
     };
-    "vscode-languageclient-8.0.0-next.2" = {
+    "vscode-languageclient-8.0.0-next.8" = {
       name = "vscode-languageclient";
       packageName = "vscode-languageclient";
-      version = "8.0.0-next.2";
+      version = "8.0.0-next.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-8.0.0-next.2.tgz";
-        sha512 = "ZmWnfZCwxV/FAci9jVMBnhwtdt9qkItXKqlmAU69pBSBgcr0fRrjEHOnzWG7BcuhxE0kti6/Y9bOEIn1L+OoDQ==";
+        url = "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-8.0.0-next.8.tgz";
+        sha512 = "CBdYRIVqqlRmZ2YBeTk0S2QMtsL8ZJfbddlfvERmRPXW4Pimr7Nk+mYq16F/k3HbrO9Xt+RAFP1t6FIIbmuUGw==";
       };
     };
     "vscode-languageserver-3.5.1" = {
@@ -70864,13 +70837,13 @@ let
         sha512 = "/65lxR/CuLJoOdzTjOTYUPWS7k5qzaWese4PObnWc6jwLryUrSa7DslYfaRXigh5/xr1nlaUZCcJwkpgM0wFvw==";
       };
     };
-    "vscode-languageserver-8.0.0-next.9" = {
+    "vscode-languageserver-8.0.0-next.10" = {
       name = "vscode-languageserver";
       packageName = "vscode-languageserver";
-      version = "8.0.0-next.9";
+      version = "8.0.0-next.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-8.0.0-next.9.tgz";
-        sha512 = "PO+ijJdI9NGXklkZlvEHLpVloBd0iBiOi2EXuh2QfT4bOlx2qvsWu+nBISuw0X8ZfXA4grtaPPGcrXudmlezLg==";
+        url = "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-8.0.0-next.10.tgz";
+        sha512 = "sdjldl9ipuBSWVw5ENVMRcOVQwF0o+J6+lNA7FrB8MiLmzflnfjRoJMqA5tCEY8S/J/+P56ZR/dqiQnRYg5m8w==";
       };
     };
     "vscode-languageserver-protocol-3.14.1" = {
@@ -70909,31 +70882,31 @@ let
         sha512 = "atmkGT/W6tF0cx4SaWFYtFs2UeSeC28RPiap9myv2YZTaTCFvTBEPNWrU5QRKfkyM0tbgtGo6T3UCQ8tkDpjzA==";
       };
     };
-    "vscode-languageserver-protocol-3.17.0-next.15" = {
+    "vscode-languageserver-protocol-3.17.0-next.12" = {
       name = "vscode-languageserver-protocol";
       packageName = "vscode-languageserver-protocol";
-      version = "3.17.0-next.15";
+      version = "3.17.0-next.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.0-next.15.tgz";
-        sha512 = "73LffxyP/0TRyk3J7bCYt0BuFBzk4Qvo5TqZndOsP+uBDbRV4IT7ebu4M/XoPDSCyZ+jDIxW7if/JbhBznmwBg==";
+        url = "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.0-next.12.tgz";
+        sha512 = "VLRcWKOpCXcx9UrqrS+NSF6pNxV498VGYGW+eyp9a79/F9ElUq3wdG6acXYlEfpWHuIxpm6MXps8FU88wqIgTg==";
       };
     };
-    "vscode-languageserver-protocol-3.17.0-next.5" = {
+    "vscode-languageserver-protocol-3.17.0-next.16" = {
       name = "vscode-languageserver-protocol";
       packageName = "vscode-languageserver-protocol";
-      version = "3.17.0-next.5";
+      version = "3.17.0-next.16";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.0-next.5.tgz";
-        sha512 = "LFZ6WMB3iPezQAU9OnGoERzcIVKhcs0OLfD/NHcqSj3g1wgxuLUL5kSlZbbjFySQCmhzm6b0yb3hjTSeBtq1+w==";
+        url = "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.0-next.16.tgz";
+        sha512 = "tx4DnXw9u3N7vw+bx6n2NKp6FoxoNwiP/biH83AS30I2AnTGyLd7afSeH6Oewn2E8jvB7K15bs12sMppkKOVeQ==";
       };
     };
-    "vscode-languageserver-protocol-3.17.0-next.8" = {
+    "vscode-languageserver-protocol-3.17.0-next.5" = {
       name = "vscode-languageserver-protocol";
       packageName = "vscode-languageserver-protocol";
-      version = "3.17.0-next.8";
+      version = "3.17.0-next.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.0-next.8.tgz";
-        sha512 = "P89vSuJ+FA5JzFmcOoZN13Ig1yd6LsiPOig0O5m5BSGuO/rplQegCd9J0wKpaTy7trf/SYHRoypnbUBdzy14sg==";
+        url = "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.0-next.5.tgz";
+        sha512 = "LFZ6WMB3iPezQAU9OnGoERzcIVKhcs0OLfD/NHcqSj3g1wgxuLUL5kSlZbbjFySQCmhzm6b0yb3hjTSeBtq1+w==";
       };
     };
     "vscode-languageserver-protocol-3.5.1" = {
@@ -71035,13 +71008,22 @@ let
         sha512 = "VQcXnhKYxUW6OiRMhG++SzmZYMJwusXknJGd+FfdOnS1yHAo734OHyR0e2eEHDlv0/oWc8RZPgx/VKSKyondVg==";
       };
     };
-    "vscode-languageserver-types-3.17.0-next.8" = {
+    "vscode-languageserver-types-3.17.0-next.6" = {
       name = "vscode-languageserver-types";
       packageName = "vscode-languageserver-types";
-      version = "3.17.0-next.8";
+      version = "3.17.0-next.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.0-next.8.tgz";
-        sha512 = "Mwj+FemiEk4QUUms1GGvXwDC+laJGVFuA4glbMVJTxfXdfOFZaEuyVlLobjccBo+NzD+5oEzzejTX7nWGNajjQ==";
+        url = "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.0-next.6.tgz";
+        sha512 = "rHYeCotiabJHgvIYzWjV8g0dHCxyOQtcryTv1Xa1horaQ4jx2V+rjLBstc6zMpCyrnZcjorwEcAvGBDCd6wudw==";
+      };
+    };
+    "vscode-languageserver-types-3.17.0-next.9" = {
+      name = "vscode-languageserver-types";
+      packageName = "vscode-languageserver-types";
+      version = "3.17.0-next.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.0-next.9.tgz";
+        sha512 = "9/PeDNPYduaoXRUzYpqmu4ZV9L01HGo0wH9FUt+sSHR7IXwA7xoXBfNUlv8gB9H0D2WwEmMomSy1NmhjKQyn3A==";
       };
     };
     "vscode-languageserver-types-3.5.0" = {
@@ -71089,15 +71071,6 @@ let
         sha512 = "u0Lw+IYlgbEJFF6/qAqG2d1jQmJl0eyAGJHoAJqr2HT4M2BNuQYSEiSE75f52pXHSJm8AlTjnLLbBFPrdz2hpA==";
       };
     };
-    "vscode-test-1.6.1" = {
-      name = "vscode-test";
-      packageName = "vscode-test";
-      version = "1.6.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-test/-/vscode-test-1.6.1.tgz";
-        sha512 = "086q88T2ca1k95mUzffvbzb7esqQNvJgiwY4h29ukPhFo8u+vXOOmelUoU5EQUHs3Of8+JuQ3oGdbVCqaxuTXA==";
-      };
-    };
     "vscode-textbuffer-1.0.0" = {
       name = "vscode-textbuffer";
       packageName = "vscode-textbuffer";
@@ -71638,6 +71611,15 @@ let
         sha512 = "WkwV9qJLZZm1ygrryt4+6hAKbk4jLSVCpE92RYk/MOtLSpxq/2S1U0JFyKgsASXhYU5hqHQRiXvFBoNQhfCHyg==";
       };
     };
+    "webcrypto-core-1.7.2" = {
+      name = "webcrypto-core";
+      packageName = "webcrypto-core";
+      version = "1.7.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webcrypto-core/-/webcrypto-core-1.7.2.tgz";
+        sha512 = "GUblRwka3JiP/dduk9/Hdkbm7/+ZqVPISJj9Fq1rZ/JBSInmaeVbeH0KuIy4/gtoC7aWpu6DEnYk0VhkZXmFSA==";
+      };
+    };
     "webidl-conversions-2.0.1" = {
       name = "webidl-conversions";
       packageName = "webidl-conversions";
@@ -71719,15 +71701,6 @@ let
         sha512 = "6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==";
       };
     };
-    "webpack-5.66.0" = {
-      name = "webpack";
-      packageName = "webpack";
-      version = "5.66.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/webpack/-/webpack-5.66.0.tgz";
-        sha512 = "NJNtGT7IKpGzdW7Iwpn/09OXz9inIkeIQ/ibY6B+MdV1x6+uReqz/5z1L89ezWnpPDWpXF0TY5PCYKQdWVn8Vg==";
-      };
-    };
     "webpack-5.70.0" = {
       name = "webpack";
       packageName = "webpack";
@@ -71944,13 +71917,13 @@ let
         sha512 = "7iZ+u28Ljw5hCnMiq0BCOeSYf0vCFQe/ORY0HgscTiKjQed8WqugpBUggJ2NTnB9fahn1kEnPRX2jf8Px5PhJw==";
       };
     };
-    "webtorrent-1.8.6" = {
+    "webtorrent-1.8.10" = {
       name = "webtorrent";
       packageName = "webtorrent";
-      version = "1.8.6";
+      version = "1.8.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webtorrent/-/webtorrent-1.8.6.tgz";
-        sha512 = "yx/y2O+IeTtkvkkjqTh5tyBjk+C/u8IqE6evOKllLs1kerVzMcbbHQMU7vgU05tThb1vRjbq3FAuU20g+HoEUg==";
+        url = "https://registry.npmjs.org/webtorrent/-/webtorrent-1.8.10.tgz";
+        sha512 = "0ywp9VXPMpqemsamWWUjU74vdNpOKUILK+lAfZnOgolybAcYZRJ5gCz0u01BI2NFKHZFWoyDacl3fkbxVb57pw==";
       };
     };
     "webworkify-webpack-2.1.5" = {
@@ -73493,6 +73466,15 @@ let
         sha512 = "FHV8s5ODFFQXX/enJEU2EkanNl1UDBUz8oa4k5Qo/sR+Iq7VmhCDkRMb0/mjJCNeAWQ31W8WV6PYStDE4d9EIw==";
       };
     };
+    "yaml-2.0.0-11" = {
+      name = "yaml";
+      packageName = "yaml";
+      version = "2.0.0-11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yaml/-/yaml-2.0.0-11.tgz";
+        sha512 = "5kGSQrzDyjCk0BLuFfjkoUE9vYcoyrwZIZ+GnpOSM9vhkvPjItYiWJ1jpRSo0aU4QmsoNrFwDT4O7XS2UGcBQg==";
+      };
+    };
     "yaml-ast-parser-0.0.43" = {
       name = "yaml-ast-parser";
       packageName = "yaml-ast-parser";
@@ -73655,6 +73637,15 @@ let
         sha512 = "WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==";
       };
     };
+    "yargs-17.4.0" = {
+      name = "yargs";
+      packageName = "yargs";
+      version = "17.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/yargs/-/yargs-17.4.0.tgz";
+        sha512 = "WJudfrk81yWFSOkZYpAZx4Nt7V4xp7S/uJkX0CnxovMCt1wCE8LNftPpNuF9X/u9gN5nsD7ycYtRcDf2pL3UiA==";
+      };
+    };
     "yargs-3.10.0" = {
       name = "yargs";
       packageName = "yargs";
@@ -73853,13 +73844,13 @@ let
         sha512 = "IanQGI9RRPAN87VGTF7zs2uxkSyQSrSPsju0COgbsKQOOXr5LtcVPeyXWgwVa0ywG3d8dg6kSYKGBuYK021qeA==";
       };
     };
-    "yarn-1.22.17" = {
+    "yarn-1.22.18" = {
       name = "yarn";
       packageName = "yarn";
-      version = "1.22.17";
+      version = "1.22.18";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yarn/-/yarn-1.22.17.tgz";
-        sha512 = "H0p241BXaH0UN9IeH//RT82tl5PfNraVpSpEoW+ET7lmopNC61eZ+A+IDvU8FM6Go5vx162SncDL8J1ZjRBriQ==";
+        url = "https://registry.npmjs.org/yarn/-/yarn-1.22.18.tgz";
+        sha512 = "oFffv6Jp2+BTUBItzx1Z0dpikTX+raRdqupfqzeMKnoh7WD6RuPAxcqDkMUy9vafJkrB0YaV708znpuMhEBKGQ==";
       };
     };
     "yarn-1.22.4" = {
@@ -73952,13 +73943,13 @@ let
         sha512 = "7RbCXegyu6DykWPWU0YEtW8gFJH8KBL2d5l2fqB0XpkH0Y9rk59YSSWpzEv7yNJBGAouPc67h3kkq0CZkpBdFw==";
       };
     };
-    "ylru-1.2.1" = {
+    "ylru-1.3.2" = {
       name = "ylru";
       packageName = "ylru";
-      version = "1.2.1";
+      version = "1.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ylru/-/ylru-1.2.1.tgz";
-        sha512 = "faQrqNMzcPCHGVC2aaOINk13K+aaBDUPjGWl0teOXywElLjyVAB6Oe2jj62jHYtwsU49jXhScYbvPENK+6zAvQ==";
+        url = "https://registry.npmjs.org/ylru/-/ylru-1.3.2.tgz";
+        sha512 = "RXRJzMiK6U2ye0BlGGZnmpwJDPgakn6aNQ0A7gHRbD4I0uvK4TW6UqkK1V0pp9jskjJBAXd3dRrbzWkqJ+6cxA==";
       };
     };
     "yn-3.1.1" = {
@@ -74156,15 +74147,15 @@ in
   "@angular/cli" = nodeEnv.buildNodePackage {
     name = "_at_angular_slash_cli";
     packageName = "@angular/cli";
-    version = "13.2.6";
+    version = "13.3.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@angular/cli/-/cli-13.2.6.tgz";
-      sha512 = "xIjEaQI5sWemXXc7GXLm4u9UL5sjtrQL/y1PJvvk/Jsa8+kIT+MutOfZfC7zcdAh9fqHd8mokH3guFV8BJdFxA==";
+      url = "https://registry.npmjs.org/@angular/cli/-/cli-13.3.0.tgz";
+      sha512 = "2qCKP/QsyxrJnpd3g4P/iTQ4TjI04N8r+bG5YLLfudoMDsQ/Ti4ogdI7PBeG2IMbRylZW9XLjHraWG42+Y9tWw==";
     };
     dependencies = [
-      sources."@angular-devkit/architect-0.1302.6"
-      sources."@angular-devkit/core-13.2.6"
-      sources."@angular-devkit/schematics-13.2.6"
+      sources."@angular-devkit/architect-0.1303.0"
+      sources."@angular-devkit/core-13.3.0"
+      sources."@angular-devkit/schematics-13.3.0"
       sources."@gar/promisify-1.1.3"
       sources."@npmcli/fs-1.1.1"
       sources."@npmcli/git-2.1.0"
@@ -74173,7 +74164,7 @@ in
       sources."@npmcli/node-gyp-1.0.3"
       sources."@npmcli/promise-spawn-1.3.2"
       sources."@npmcli/run-script-2.0.0"
-      sources."@schematics/angular-13.2.6"
+      sources."@schematics/angular-13.3.0"
       sources."@tootallnate/once-1.1.2"
       sources."@yarnpkg/lockfile-1.1.0"
       sources."abbrev-1.1.1"
@@ -74297,12 +74288,14 @@ in
       sources."npm-pick-manifest-6.1.1"
       (sources."npm-registry-fetch-12.0.2" // {
         dependencies = [
+          sources."@npmcli/fs-2.1.0"
           sources."@tootallnate/once-2.0.0"
+          sources."cacache-16.0.3"
           sources."http-proxy-agent-5.0.0"
-          sources."lru-cache-7.4.4"
-          (sources."make-fetch-happen-10.0.5" // {
+          sources."lru-cache-7.7.1"
+          (sources."make-fetch-happen-10.1.0" // {
             dependencies = [
-              sources."minipass-fetch-2.0.3"
+              sources."minipass-fetch-2.1.0"
             ];
           })
         ];
@@ -74376,10 +74369,10 @@ in
   "@antfu/ni" = nodeEnv.buildNodePackage {
     name = "_at_antfu_slash_ni";
     packageName = "@antfu/ni";
-    version = "0.13.2";
+    version = "0.14.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@antfu/ni/-/ni-0.13.2.tgz";
-      sha512 = "iKhPlNUE6fs0g7iRdTJzWFB8XoQb4AbCT46V0mrMsdF1RzyvwnOuzxSjISHQdYzpfirihVG9XpAUy/X540qavg==";
+      url = "https://registry.npmjs.org/@antfu/ni/-/ni-0.14.0.tgz";
+      sha512 = "AfHEQ+6Kjb+PMdOBR2h6CrDKYgncIZKW5NwkR1BLkCWm4DHBCTfnQJeO3ixtWr0KE9BCnwGoM8xEx6y45p0n4g==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -74420,7 +74413,7 @@ in
       sources."color-name-1.1.3"
       sources."colorette-2.0.16"
       sources."commander-8.3.0"
-      sources."convict-6.2.1"
+      sources."convict-6.2.2"
       sources."dateformat-4.6.3"
       sources."duplexify-4.1.2"
       sources."end-of-stream-1.4.4"
@@ -74431,11 +74424,10 @@ in
       sources."inherits-2.0.4"
       sources."joycon-3.1.1"
       sources."js-yaml-4.1.0"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."leven-2.1.0"
       sources."lodash.clonedeep-4.5.0"
       sources."map-obj-4.3.0"
-      sources."minimist-1.2.5"
       sources."mri-1.1.4"
       sources."on-exit-leak-free-0.2.0"
       sources."once-1.4.0"
@@ -74537,7 +74529,7 @@ in
       sources."colorette-2.0.16"
       sources."concat-map-0.0.1"
       sources."convert-source-map-1.8.0"
-      sources."convict-6.2.1"
+      sources."convict-6.2.2"
       sources."core-util-is-1.0.3"
       sources."crc-32-1.2.1"
       sources."dateformat-4.6.3"
@@ -74599,7 +74591,7 @@ in
       sources."joycon-3.1.1"
       sources."js-yaml-4.1.0"
       sources."json-stable-stringify-without-jsonify-1.0.1"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       (sources."lazystream-1.0.1" // {
         dependencies = [
           sources."readable-stream-2.3.7"
@@ -74609,11 +74601,11 @@ in
       sources."leven-2.1.0"
       sources."lodash.clonedeep-4.5.0"
       sources."map-obj-4.3.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-response-2.1.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minimisted-2.0.1"
       sources."mri-1.1.4"
       sources."multi-progress-4.0.0"
@@ -74728,69 +74720,37 @@ in
   "@astrojs/language-server" = nodeEnv.buildNodePackage {
     name = "_at_astrojs_slash_language-server";
     packageName = "@astrojs/language-server";
-    version = "0.11.0";
+    version = "0.13.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@astrojs/language-server/-/language-server-0.11.0.tgz";
-      sha512 = "rDpbvfhjM1BF2r1U64A2TLxUTrvdT9yKunjzhDDDoR4b5OBgyclhCvbdbWuq7wR3RCOl+P6bI+TGdYDwYnNd1g==";
+      url = "https://registry.npmjs.org/@astrojs/language-server/-/language-server-0.13.2.tgz";
+      sha512 = "4YM4hM02ILvvsSQljAlwLY7OWymlhbikY7O/gsZqELVGMXixemA6dI3GTr2K6duU4ktPBJ3JexuU/OFyb5jvtQ==";
     };
     dependencies = [
-      sources."@astrojs/svelte-language-integration-0.1.1"
+      sources."@astrojs/svelte-language-integration-0.1.2"
       sources."@emmetio/abbreviation-2.2.3"
       sources."@emmetio/css-abbreviation-2.1.4"
       sources."@emmetio/scanner-1.0.0"
-      sources."@nodelib/fs.scandir-2.1.5"
-      sources."@nodelib/fs.stat-2.0.5"
-      sources."@nodelib/fs.walk-1.2.8"
-      sources."@ts-morph/common-0.11.1"
       (sources."@vscode/emmet-helper-2.8.4" // {
         dependencies = [
           sources."vscode-uri-2.1.2"
         ];
       })
-      sources."balanced-match-1.0.2"
-      sources."brace-expansion-1.1.11"
-      sources."braces-3.0.2"
-      sources."code-block-writer-10.1.1"
-      sources."concat-map-0.0.1"
       sources."dedent-js-1.0.1"
       sources."emmet-2.3.6"
-      sources."fast-glob-3.2.11"
-      sources."fastq-1.13.0"
-      sources."fill-range-7.0.1"
-      sources."glob-parent-5.1.2"
-      sources."is-extglob-2.1.1"
-      sources."is-glob-4.0.3"
-      sources."is-number-7.0.0"
       sources."jsonc-parser-2.3.1"
       sources."lodash-4.17.21"
       sources."lower-case-2.0.2"
-      sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
-      sources."minimatch-3.1.2"
-      sources."mkdirp-1.0.4"
       sources."no-case-3.0.4"
       sources."pascal-case-3.1.2"
-      sources."path-browserify-1.0.1"
-      sources."picomatch-2.3.1"
-      sources."queue-microtask-1.2.3"
-      sources."reusify-1.0.4"
-      sources."run-parallel-1.2.0"
       sources."source-map-0.7.3"
       sources."svelte-3.46.4"
-      sources."svelte2tsx-0.5.5"
-      sources."to-regex-range-5.0.1"
-      sources."ts-morph-12.2.0"
+      sources."svelte2tsx-0.5.6"
       sources."tslib-2.3.1"
-      sources."typescript-4.6.2"
-      sources."vscode-css-languageservice-5.1.13"
-      (sources."vscode-html-languageservice-3.2.0" // {
-        dependencies = [
-          sources."vscode-languageserver-types-3.16.0-next.2"
-          sources."vscode-uri-2.1.2"
-        ];
-      })
+      sources."typescript-4.6.3"
+      sources."vscode-css-languageservice-5.3.0"
+      sources."vscode-html-languageservice-4.2.4"
       sources."vscode-jsonrpc-6.0.0"
-      sources."vscode-languageserver-6.1.1"
+      sources."vscode-languageserver-7.0.0"
       sources."vscode-languageserver-protocol-3.16.0"
       sources."vscode-languageserver-textdocument-1.0.4"
       sources."vscode-languageserver-types-3.16.0"
@@ -74809,12 +74769,14 @@ in
   "@bitwarden/cli" = nodeEnv.buildNodePackage {
     name = "_at_bitwarden_slash_cli";
     packageName = "@bitwarden/cli";
-    version = "1.21.1";
+    version = "1.22.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@bitwarden/cli/-/cli-1.21.1.tgz";
-      sha512 = "xe0wxxqJzBkbIv38+5MfFdz+Av7zh2twomgivkm4wN0W69YQ6hAp7qpEVFpTqHwSjeQEarYJ3DEWGgV0BDaJvg==";
+      url = "https://registry.npmjs.org/@bitwarden/cli/-/cli-1.22.0.tgz";
+      sha512 = "EZ304ncWMB1wUA+EJ7BO6mANQa/0yMxmXta6HGKIBoVqW0tSeWq8632ifhQm8/GbDpGbeZ7cLs4Zb04lyffSgw==";
     };
     dependencies = [
+      sources."@koa/multer-3.0.0"
+      sources."@koa/router-10.1.1"
       sources."@tootallnate/once-1.1.2"
       sources."abab-2.0.5"
       sources."accepts-1.3.8"
@@ -74825,45 +74787,49 @@ in
         ];
       })
       sources."acorn-walk-7.2.0"
-      (sources."agent-base-6.0.2" // {
-        dependencies = [
-          sources."debug-4.3.3"
-          sources."ms-2.1.2"
-        ];
-      })
+      sources."agent-base-6.0.2"
       sources."ansi-escapes-4.3.2"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-4.3.0"
       sources."append-field-1.0.0"
-      sources."array-flatten-1.1.1"
       sources."asynckit-0.4.0"
       sources."big-integer-1.6.48"
-      sources."body-parser-1.19.2"
       sources."browser-hrtime-1.1.8"
       sources."browser-process-hrtime-1.0.0"
       sources."buffer-from-1.1.2"
-      sources."busboy-0.2.14"
+      (sources."busboy-0.2.14" // {
+        dependencies = [
+          sources."isarray-0.0.1"
+          sources."readable-stream-1.1.14"
+          sources."string_decoder-0.10.31"
+        ];
+      })
       sources."bytes-3.1.2"
+      sources."cache-content-type-1.0.1"
+      sources."call-bind-1.0.2"
       sources."chalk-4.1.2"
       sources."chardet-0.7.0"
       sources."cli-cursor-3.1.0"
       sources."cli-width-3.0.0"
+      sources."co-4.6.0"
+      sources."co-body-6.1.0"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."combined-stream-1.0.8"
       sources."commander-7.2.0"
-      (sources."concat-stream-1.6.2" // {
+      sources."concat-stream-1.6.2"
+      (sources."content-disposition-0.5.4" // {
         dependencies = [
-          sources."isarray-1.0.0"
-          sources."readable-stream-2.3.7"
-          sources."safe-buffer-5.1.2"
-          sources."string_decoder-1.1.1"
+          sources."safe-buffer-5.2.1"
         ];
       })
-      sources."content-disposition-0.5.4"
       sources."content-type-1.0.4"
-      sources."cookie-0.4.2"
-      sources."cookie-signature-1.0.6"
+      (sources."cookies-0.8.0" // {
+        dependencies = [
+          sources."depd-2.0.0"
+        ];
+      })
+      sources."copy-to-2.0.1"
       sources."core-util-is-1.0.3"
       sources."cssom-0.4.4"
       (sources."cssstyle-2.3.0" // {
@@ -74872,14 +74838,22 @@ in
         ];
       })
       sources."data-urls-2.0.0"
-      sources."debug-2.6.9"
+      sources."debug-4.3.4"
       sources."decimal.js-10.3.1"
+      sources."deep-equal-1.0.1"
       sources."deep-is-0.1.4"
       sources."define-lazy-prop-2.0.0"
       sources."delayed-stream-1.0.0"
+      sources."delegates-1.0.0"
       sources."depd-1.1.2"
-      sources."destroy-1.0.4"
-      sources."dicer-0.2.5"
+      sources."destroy-1.2.0"
+      (sources."dicer-0.2.5" // {
+        dependencies = [
+          sources."isarray-0.0.1"
+          sources."readable-stream-1.1.14"
+          sources."string_decoder-0.10.31"
+        ];
+      })
       (sources."domexception-2.0.1" // {
         dependencies = [
           sources."webidl-conversions-5.0.0"
@@ -74894,60 +74868,66 @@ in
       sources."esprima-4.0.1"
       sources."estraverse-5.3.0"
       sources."esutils-2.0.3"
-      sources."etag-1.8.1"
-      sources."express-4.17.3"
       sources."external-editor-3.1.0"
       sources."fast-levenshtein-2.0.6"
       sources."figures-3.2.0"
-      sources."finalhandler-1.1.2"
       sources."form-data-4.0.0"
-      sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
+      sources."function-bind-1.1.1"
+      sources."get-intrinsic-1.1.1"
       sources."graceful-fs-4.2.9"
+      sources."has-1.0.3"
       sources."has-flag-4.0.0"
+      sources."has-symbols-1.0.3"
+      sources."has-tostringtag-1.0.0"
       sources."html-encoding-sniffer-2.0.1"
+      sources."http-assert-1.5.0"
       sources."http-errors-1.8.1"
-      (sources."http-proxy-agent-4.0.1" // {
-        dependencies = [
-          sources."debug-4.3.3"
-          sources."ms-2.1.2"
-        ];
-      })
-      (sources."https-proxy-agent-5.0.0" // {
-        dependencies = [
-          sources."debug-4.3.3"
-          sources."ms-2.1.2"
-        ];
-      })
+      sources."http-proxy-agent-4.0.1"
+      sources."https-proxy-agent-5.0.0"
       sources."iconv-lite-0.4.24"
+      sources."immediate-3.0.6"
+      sources."inflation-2.0.0"
       sources."inherits-2.0.4"
       sources."inquirer-8.0.0"
-      sources."ipaddr.js-1.9.1"
       sources."is-docker-2.2.1"
       sources."is-fullwidth-code-point-3.0.0"
+      sources."is-generator-function-1.0.10"
       sources."is-potential-custom-element-name-1.0.1"
       sources."is-promise-2.2.2"
       sources."is-wsl-2.2.0"
-      sources."isarray-0.0.1"
+      sources."isarray-1.0.0"
       (sources."jsdom-16.7.0" // {
         dependencies = [
           sources."form-data-3.0.1"
         ];
       })
+      sources."json-stringify-safe-5.0.1"
+      sources."jszip-3.7.1"
+      sources."keygrip-1.1.0"
+      (sources."koa-2.13.4" // {
+        dependencies = [
+          sources."depd-2.0.0"
+        ];
+      })
+      sources."koa-bodyparser-4.3.0"
+      sources."koa-compose-4.2.0"
+      sources."koa-convert-2.0.0"
+      sources."koa-is-json-1.0.0"
+      sources."koa-json-2.0.2"
       sources."levn-0.3.0"
+      sources."lie-3.3.0"
       sources."lodash-4.17.21"
       sources."lowdb-1.0.0"
       sources."lunr-2.3.9"
       sources."media-typer-0.3.0"
-      sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
-      sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
-      sources."ms-2.0.0"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
+      sources."ms-2.1.2"
       sources."multer-1.4.4"
       sources."mute-stream-0.0.8"
       sources."negotiator-0.6.3"
@@ -74961,47 +74941,51 @@ in
       sources."node-forge-0.10.0"
       sources."nwsapi-2.2.0"
       sources."object-assign-4.1.1"
-      sources."on-finished-2.3.0"
+      sources."object-inspect-1.12.0"
+      sources."on-finished-2.4.1"
       sources."onetime-5.1.2"
+      sources."only-0.0.2"
       sources."open-8.4.0"
       sources."optionator-0.8.3"
       sources."os-tmpdir-1.0.2"
-      sources."papaparse-5.3.1"
+      sources."pako-1.0.11"
+      sources."papaparse-5.3.2"
       sources."parse5-6.0.1"
       sources."parseurl-1.3.3"
-      sources."path-to-regexp-0.1.7"
+      sources."path-to-regexp-6.2.0"
       sources."pify-3.0.0"
       sources."prelude-ls-1.1.2"
       sources."process-nextick-args-2.0.1"
       sources."proper-lockfile-4.1.2"
-      sources."proxy-addr-2.0.7"
       sources."psl-1.8.0"
       sources."punycode-2.1.1"
-      sources."qs-6.9.7"
-      sources."range-parser-1.2.1"
-      sources."raw-body-2.4.3"
-      sources."readable-stream-1.1.14"
+      sources."qs-6.10.3"
+      (sources."raw-body-2.5.1" // {
+        dependencies = [
+          sources."depd-2.0.0"
+          sources."http-errors-2.0.0"
+          sources."statuses-2.0.1"
+        ];
+      })
+      sources."readable-stream-2.3.7"
       sources."restore-cursor-3.1.0"
       sources."retry-0.12.0"
       sources."run-async-2.4.1"
       sources."rxjs-6.6.7"
-      sources."safe-buffer-5.2.1"
+      sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       sources."saxes-5.0.1"
-      (sources."send-0.17.2" // {
-        dependencies = [
-          sources."ms-2.1.3"
-        ];
-      })
-      sources."serve-static-1.14.2"
+      sources."set-immediate-shim-1.0.1"
       sources."setprototypeof-1.2.0"
+      sources."side-channel-1.0.4"
       sources."signal-exit-3.0.7"
       sources."source-map-0.6.1"
       sources."statuses-1.5.0"
       sources."steno-0.4.4"
+      sources."streaming-json-stringify-3.1.0"
       sources."streamsearch-0.1.2"
       sources."string-width-4.2.3"
-      sources."string_decoder-0.10.31"
+      sources."string_decoder-1.1.1"
       sources."strip-ansi-6.0.1"
       sources."supports-color-7.2.0"
       sources."symbol-tree-3.2.4"
@@ -75016,6 +75000,7 @@ in
       sources."tough-cookie-4.0.0"
       sources."tr46-2.1.0"
       sources."tslib-1.14.1"
+      sources."tsscmp-1.0.6"
       sources."type-check-0.3.2"
       sources."type-fest-0.21.3"
       sources."type-is-1.6.18"
@@ -75023,7 +75008,6 @@ in
       sources."universalify-0.1.2"
       sources."unpipe-1.0.0"
       sources."util-deprecate-1.0.2"
-      sources."utils-merge-1.0.1"
       sources."vary-1.1.2"
       sources."w3c-hr-time-1.0.2"
       sources."w3c-xmlserializer-2.0.0"
@@ -75036,6 +75020,7 @@ in
       sources."xml-name-validator-3.0.0"
       sources."xmlchars-2.2.0"
       sources."xtend-4.0.2"
+      sources."ylru-1.3.2"
       sources."zxcvbn-4.4.2"
     ];
     buildInputs = globalBuildInputs;
@@ -75051,10 +75036,10 @@ in
   "@commitlint/cli" = nodeEnv.buildNodePackage {
     name = "_at_commitlint_slash_cli";
     packageName = "@commitlint/cli";
-    version = "16.2.1";
+    version = "16.2.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@commitlint/cli/-/cli-16.2.1.tgz";
-      sha512 = "zfKf+B9osuiDbxGMJ7bWFv7XFCW8wlQYPtCffNp7Ukdb7mdrep5R9e03vPUZysnwp8NX6hg05kPEvnD/wRIGWw==";
+      url = "https://registry.npmjs.org/@commitlint/cli/-/cli-16.2.3.tgz";
+      sha512 = "VsJBQLvhhlOgEfxs/Z5liYuK0dXqLE5hz1VJzLBxiOxG31kL/X5Q4OvK292BmO7IGZcm1yJE3XQPWSiFaEHbWA==";
     };
     dependencies = [
       sources."@babel/code-frame-7.16.7"
@@ -75075,7 +75060,7 @@ in
       sources."@commitlint/format-16.2.1"
       sources."@commitlint/is-ignored-16.2.1"
       sources."@commitlint/lint-16.2.1"
-      sources."@commitlint/load-16.2.1"
+      sources."@commitlint/load-16.2.3"
       sources."@commitlint/message-16.2.1"
       sources."@commitlint/parse-16.2.1"
       sources."@commitlint/read-16.2.1"
@@ -75098,7 +75083,7 @@ in
       sources."@tsconfig/node14-1.0.1"
       sources."@tsconfig/node16-1.0.2"
       sources."@types/minimist-1.2.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
       sources."JSONStream-1.3.5"
@@ -75243,7 +75228,7 @@ in
       sources."trim-newlines-3.0.1"
       sources."ts-node-10.7.0"
       sources."type-fest-0.18.1"
-      sources."typescript-4.6.2"
+      sources."typescript-4.6.3"
       sources."universalify-2.0.0"
       sources."uri-js-4.4.1"
       sources."util-deprecate-1.0.2"
@@ -75254,7 +75239,7 @@ in
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
       sources."yaml-1.10.2"
-      (sources."yargs-17.3.1" // {
+      (sources."yargs-17.4.0" // {
         dependencies = [
           sources."yargs-parser-21.0.1"
         ];
@@ -75325,9 +75310,9 @@ in
       sources."@szmarczak/http-timer-4.0.6"
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/keyv-3.1.3"
+      sources."@types/keyv-3.1.4"
       sources."@types/minimatch-3.0.5"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/responselike-1.0.0"
       sources."abort-controller-3.0.0"
@@ -75370,7 +75355,7 @@ in
       sources."concat-map-0.0.1"
       sources."currently-unhandled-0.4.1"
       sources."debounce-1.2.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       (sources."decompress-response-6.0.0" // {
         dependencies = [
           sources."mimic-response-3.1.0"
@@ -75401,7 +75386,7 @@ in
       sources."get-intrinsic-1.1.1"
       sources."get-stream-5.2.0"
       sources."glob-parent-5.1.2"
-      sources."google-auth-library-7.14.0"
+      sources."google-auth-library-7.14.1"
       sources."google-p12-pem-3.1.3"
       sources."googleapis-76.0.0"
       sources."googleapis-common-5.1.0"
@@ -75419,7 +75404,7 @@ in
       sources."ieee754-1.2.1"
       sources."indent-string-4.0.0"
       sources."inherits-2.0.4"
-      sources."inquirer-8.2.1"
+      sources."inquirer-8.2.2"
       (sources."inquirer-autocomplete-prompt-ipt-2.0.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -75444,7 +75429,7 @@ in
       sources."is-port-reachable-3.1.0"
       sources."is-reachable-5.1.1"
       sources."is-stream-2.0.1"
-      sources."is-unicode-supported-1.1.0"
+      sources."is-unicode-supported-1.2.0"
       sources."is-wsl-2.2.0"
       sources."js-tokens-4.0.0"
       sources."json-bigint-1.0.0"
@@ -75473,7 +75458,7 @@ in
       sources."multimatch-5.0.0"
       sources."mute-stream-0.0.8"
       sources."node-fetch-2.6.7"
-      sources."node-forge-1.2.1"
+      sources."node-forge-1.3.0"
       sources."normalize-newline-4.1.0"
       (sources."normalize-package-data-3.0.3" // {
         dependencies = [
@@ -75564,12 +75549,12 @@ in
       sources."tr46-0.0.3"
       (sources."ts2gas-4.2.0" // {
         dependencies = [
-          sources."type-fest-2.12.0"
+          sources."type-fest-2.12.1"
         ];
       })
       sources."tslib-2.3.1"
       sources."type-fest-0.21.3"
-      sources."typescript-4.6.2"
+      sources."typescript-4.6.3"
       sources."universalify-2.0.0"
       sources."url-parse-1.5.10"
       sources."url-template-2.0.8"
@@ -75612,7 +75597,7 @@ in
       sources."@hyperswarm/hypersign-2.1.1"
       sources."@hyperswarm/network-2.1.0"
       sources."@leichtgewicht/ip-codec-2.0.3"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."abstract-extension-3.1.1"
       sources."abstract-leveldown-6.2.3"
       sources."acorn-8.7.0"
@@ -75743,7 +75728,7 @@ in
       sources."hypercore-promisifier-1.1.0"
       (sources."hypercore-protocol-8.0.7" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -75802,7 +75787,7 @@ in
       sources."memory-pager-1.5.0"
       sources."merkle-tree-stream-4.0.0"
       sources."mime-1.6.0"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-1.0.4"
       sources."mkdirp-classic-0.5.3"
       sources."moment-2.29.1"
@@ -75849,7 +75834,7 @@ in
         ];
       })
       sources."queue-tick-1.0.0"
-      sources."random-access-file-2.2.0"
+      sources."random-access-file-2.2.1"
       sources."random-access-memory-3.1.4"
       sources."random-access-storage-1.4.3"
       sources."random-words-1.1.2"
@@ -75867,13 +75852,13 @@ in
       sources."sha256-universal-1.2.1"
       sources."sha256-wasm-2.2.2"
       sources."sha512-universal-1.2.1"
-      sources."sha512-wasm-2.3.3"
+      sources."sha512-wasm-2.3.4"
       sources."shuffled-priority-queue-2.1.0"
       sources."signed-varint-2.0.1"
       sources."simple-handshake-3.0.0"
       sources."simple-hypercore-protocol-2.1.2"
       sources."simple-message-channels-1.2.1"
-      sources."siphash24-1.3.0"
+      sources."siphash24-1.3.1"
       sources."siphash24-universal-1.0.0"
       sources."sodium-javascript-0.8.0"
       sources."sodium-native-3.3.0"
@@ -75895,7 +75880,7 @@ in
       sources."strip-eof-1.0.0"
       (sources."subcommand-2.1.1" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -75973,7 +75958,7 @@ in
       sha512 = "7EpRhhrJqICbMGjLkdthQYLLGMXNCsrsq8/xxYX1cdRiNwoGb84yjL1WFBrnQtaM8rXShOvhf4lrM2W0K9m4lQ==";
     };
     dependencies = [
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@medable/mdctl-api-1.0.63"
       sources."@medable/mdctl-core-1.0.63"
       sources."@medable/mdctl-core-schemas-1.0.63"
@@ -76006,7 +75991,7 @@ in
       sources."@types/markdown-it-12.2.3"
       sources."@types/mdurl-1.0.2"
       sources."@types/minimatch-3.0.5"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/tough-cookie-2.3.8"
       sources."abbrev-1.1.1"
       sources."abort-controller-3.0.0"
@@ -76111,7 +76096,7 @@ in
       sources."cli-width-2.2.1"
       (sources."cliui-4.1.0" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."is-fullwidth-code-point-2.0.0"
           sources."string-width-2.1.1"
           sources."strip-ansi-4.0.0"
@@ -76136,7 +76121,7 @@ in
       sources."create-hmac-1.1.7"
       sources."cross-spawn-6.0.5"
       sources."dashdash-1.14.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       sources."decode-uri-component-0.2.0"
       sources."decompress-response-3.3.0"
@@ -76319,7 +76304,7 @@ in
       sources."inline-process-browser-1.0.0"
       (sources."inquirer-6.5.2" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."is-fullwidth-code-point-2.0.0"
           (sources."string-width-2.1.1" // {
             dependencies = [
@@ -76328,7 +76313,7 @@ in
           })
           (sources."strip-ansi-5.2.0" // {
             dependencies = [
-              sources."ansi-regex-4.1.0"
+              sources."ansi-regex-4.1.1"
             ];
           })
         ];
@@ -76418,14 +76403,14 @@ in
         ];
       })
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mime-2.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-1.2.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
       (sources."mixin-deep-1.3.2" // {
@@ -76433,7 +76418,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."ms-2.1.2"
       sources."mute-stream-0.0.7"
       sources."nan-2.14.0"
@@ -76863,7 +76848,7 @@ in
       sources."yallist-3.1.1"
       (sources."yargs-12.0.5" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."is-fullwidth-code-point-2.0.0"
           sources."string-width-2.1.1"
           sources."strip-ansi-4.0.0"
@@ -76895,7 +76880,7 @@ in
       sources."@kwsites/file-exists-1.1.1"
       sources."@kwsites/promise-deferred-1.1.1"
       sources."@octokit/auth-token-2.5.0"
-      sources."@octokit/core-3.5.1"
+      sources."@octokit/core-3.6.0"
       sources."@octokit/endpoint-6.0.12"
       sources."@octokit/graphql-4.8.0"
       sources."@octokit/openapi-types-11.2.0"
@@ -76903,12 +76888,12 @@ in
       sources."@octokit/plugin-request-log-1.0.4"
       sources."@octokit/plugin-rest-endpoint-methods-5.13.0"
       sources."@octokit/plugin-retry-3.0.9"
-      sources."@octokit/plugin-throttling-3.6.1"
+      sources."@octokit/plugin-throttling-3.6.2"
       sources."@octokit/request-5.6.3"
       sources."@octokit/request-error-2.1.0"
       sources."@octokit/rest-18.12.0"
       sources."@octokit/types-6.34.0"
-      sources."@sideway/address-4.1.3"
+      sources."@sideway/address-4.1.4"
       sources."@sideway/formula-3.0.0"
       sources."@sideway/pinpoint-2.0.0"
       sources."@types/js-yaml-3.12.7"
@@ -76930,7 +76915,7 @@ in
       sources."color-name-1.1.4"
       sources."commander-6.2.1"
       sources."cross-spawn-4.0.2"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."defaults-1.0.3"
       sources."deprecation-2.3.1"
       sources."esprima-4.0.1"
@@ -76994,15 +76979,15 @@ in
   "@nestjs/cli" = nodeEnv.buildNodePackage {
     name = "_at_nestjs_slash_cli";
     packageName = "@nestjs/cli";
-    version = "8.2.2";
+    version = "8.2.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@nestjs/cli/-/cli-8.2.2.tgz";
-      sha512 = "ZonmNLCHfTVrZGgYf4mrpivnKGaRzVRAcux+WDbzhQDNIz70s7mdOPShXW1Vpq+7uRJDxlgO1vOMhmg4uEUIDg==";
+      url = "https://registry.npmjs.org/@nestjs/cli/-/cli-8.2.4.tgz";
+      sha512 = "9zNV9oMtaz1vwLO3WXviD0wzRpyiaLWJZ7KCIZLk62U22RDNRsbtLLDS52Wkig5L8UU7Z1xRfrEv+s3f9keysQ==";
     };
     dependencies = [
-      sources."@angular-devkit/core-13.2.5"
-      sources."@angular-devkit/schematics-13.2.5"
-      (sources."@angular-devkit/schematics-cli-13.2.5" // {
+      sources."@angular-devkit/core-13.3.0"
+      sources."@angular-devkit/schematics-13.3.0"
+      (sources."@angular-devkit/schematics-cli-13.3.0" // {
         dependencies = [
           sources."chalk-4.1.2"
           sources."inquirer-8.2.0"
@@ -77022,13 +77007,18 @@ in
           sources."supports-color-5.5.0"
         ];
       })
-      sources."@nestjs/schematics-8.0.8"
+      (sources."@nestjs/schematics-8.0.8" // {
+        dependencies = [
+          sources."@angular-devkit/core-13.2.5"
+          sources."@angular-devkit/schematics-13.2.5"
+        ];
+      })
       sources."@types/eslint-8.4.1"
       sources."@types/eslint-scope-3.7.3"
-      sources."@types/estree-0.0.50"
-      sources."@types/json-schema-7.0.9"
+      sources."@types/estree-0.0.51"
+      sources."@types/json-schema-7.0.11"
       sources."@types/json5-0.0.29"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/parse-json-4.0.0"
       sources."@webassemblyjs/ast-1.11.1"
       sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
@@ -77063,11 +77053,11 @@ in
       sources."bl-4.1.0"
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."buffer-5.7.1"
       sources."buffer-from-1.1.2"
       sources."callsites-3.1.0"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       sources."chalk-3.0.0"
       sources."chardet-0.7.0"
       sources."chokidar-3.5.3"
@@ -77086,7 +77076,7 @@ in
       sources."cross-spawn-7.0.3"
       sources."deepmerge-4.2.2"
       sources."defaults-1.0.3"
-      sources."electron-to-chromium-1.4.81"
+      sources."electron-to-chromium-1.4.96"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."enhanced-resolve-5.9.2"
@@ -77173,8 +77163,8 @@ in
       sources."magic-string-0.25.7"
       sources."memfs-3.4.1"
       sources."merge-stream-2.0.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."minimatch-3.1.2"
       sources."minimist-1.2.5"
@@ -77240,7 +77230,7 @@ in
       sources."supports-preserve-symlinks-flag-1.0.0"
       sources."symbol-observable-4.0.0"
       sources."tapable-2.2.1"
-      (sources."terser-5.12.0" // {
+      (sources."terser-5.12.1" // {
         dependencies = [
           sources."commander-2.20.3"
         ];
@@ -77258,7 +77248,7 @@ in
       sources."tmp-0.0.33"
       sources."to-regex-range-5.0.1"
       sources."tree-kill-1.2.2"
-      sources."tsconfig-paths-3.12.0"
+      sources."tsconfig-paths-3.14.0"
       (sources."tsconfig-paths-webpack-plugin-3.5.2" // {
         dependencies = [
           sources."chalk-4.1.2"
@@ -77272,7 +77262,7 @@ in
       sources."util-deprecate-1.0.2"
       sources."watchpack-2.3.1"
       sources."wcwidth-1.0.1"
-      (sources."webpack-5.66.0" // {
+      (sources."webpack-5.70.0" // {
         dependencies = [
           sources."ajv-6.12.6"
           sources."ajv-keywords-3.5.2"
@@ -77326,11 +77316,10 @@ in
       sources."inherits-2.0.4"
       sources."is-interactive-1.0.0"
       sources."is-unicode-supported-0.1.0"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."kleur-4.1.4"
       sources."log-symbols-4.1.0"
       sources."mimic-fn-2.1.0"
-      sources."minimist-1.2.5"
       sources."onetime-5.1.2"
       sources."ora-5.4.1"
       sources."readable-stream-3.6.0"
@@ -77455,10 +77444,10 @@ in
   "@uppy/companion" = nodeEnv.buildNodePackage {
     name = "_at_uppy_slash_companion";
     packageName = "@uppy/companion";
-    version = "3.3.1";
+    version = "3.5.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@uppy/companion/-/companion-3.3.1.tgz";
-      sha512 = "ke+qyGzYpUWsOgqSbwM6Ok3f6nqXmh4WdfFa3LGKgaNs8mHv4ss/06a3NwAYEGrUSaCNOCNa3+snwUE4rMQ5OA==";
+      url = "https://registry.npmjs.org/@uppy/companion/-/companion-3.5.0.tgz";
+      sha512 = "hFsp3x/B2H++bjuDiaC0s0ktENe35OQKAoj78WUn1W50my6lpDMywd5WWmlFurK7Dda7I0OwVyaZ0c9L2hqCCg==";
     };
     dependencies = [
       sources."@purest/config-1.0.1"
@@ -77467,7 +77456,7 @@ in
       sources."@request/interface-0.1.0"
       (sources."accepts-1.3.8" // {
         dependencies = [
-          sources."mime-types-2.1.34"
+          sources."mime-types-2.1.35"
         ];
       })
       sources."ajv-6.12.6"
@@ -77478,7 +77467,7 @@ in
       sources."async-limiter-1.0.1"
       sources."asynckit-0.4.0"
       sources."atob-2.1.2"
-      (sources."aws-sdk-2.1091.0" // {
+      (sources."aws-sdk-2.1101.0" // {
         dependencies = [
           sources."uuid-3.3.2"
         ];
@@ -77528,7 +77517,6 @@ in
       sources."denque-1.5.1"
       sources."depd-1.1.2"
       sources."destroy-1.0.4"
-      sources."double-ended-queue-2.1.0-0"
       sources."ecc-jsbn-0.1.2"
       sources."ecdsa-sig-formatter-1.0.11"
       sources."ee-first-1.1.1"
@@ -77627,7 +77615,7 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
+      sources."mime-db-1.52.0"
       (sources."mime-types-2.1.25" // {
         dependencies = [
           sources."mime-db-1.42.0"
@@ -77642,11 +77630,7 @@ in
       })
       sources."ms-2.1.2"
       sources."negotiator-0.6.3"
-      (sources."node-redis-pubsub-4.0.0" // {
-        dependencies = [
-          sources."redis-2.8.0"
-        ];
-      })
+      sources."node-redis-pubsub-5.0.0"
       sources."node-schedule-1.3.2"
       sources."oauth-sign-0.8.2"
       sources."object-assign-4.1.1"
@@ -77674,14 +77658,10 @@ in
       sources."randombytes-2.1.0"
       sources."range-parser-1.2.1"
       sources."raw-body-2.4.0"
-      (sources."redis-3.1.1" // {
-        dependencies = [
-          sources."redis-parser-3.0.0"
-        ];
-      })
+      sources."redis-3.1.1"
       sources."redis-commands-1.7.0"
       sources."redis-errors-1.2.0"
-      sources."redis-parser-2.6.0"
+      sources."redis-parser-3.0.0"
       (sources."request-2.88.2" // {
         dependencies = [
           sources."oauth-sign-0.9.0"
@@ -77758,12 +77738,13 @@ in
   "@vue/cli" = nodeEnv.buildNodePackage {
     name = "_at_vue_slash_cli";
     packageName = "@vue/cli";
-    version = "5.0.1";
+    version = "5.0.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@vue/cli/-/cli-5.0.1.tgz";
-      sha512 = "h+htWyKCxzIwBTAr+Ni0vHjLbMmrVcjeU4QVB3t/VcwPgvHIL+MpLIcGEFqzROi9mXNeyYqrxl6MZd1gLHUibQ==";
+      url = "https://registry.npmjs.org/@vue/cli/-/cli-5.0.4.tgz";
+      sha512 = "v9fHBQ3MCTAo92+uA/J8C/PYxGrZJCSM/myPEGzX4zrlbT4bBLfuP0pFRJZO9wQGE3NHp95coIdOghXdMm/atw==";
     };
     dependencies = [
+      sources."@achrinza/node-ipc-9.2.2"
       sources."@akryum/winattr-3.0.0"
       sources."@ampproject/remapping-2.1.2"
       (sources."@apollo/protobufjs-1.2.2" // {
@@ -77775,20 +77756,20 @@ in
       sources."@apollographql/graphql-playground-html-1.6.27"
       sources."@apollographql/graphql-upload-8-fork-8.1.3"
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/compat-data-7.17.0"
-      (sources."@babel/core-7.17.5" // {
+      sources."@babel/compat-data-7.17.7"
+      (sources."@babel/core-7.17.8" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      (sources."@babel/generator-7.17.3" // {
+      (sources."@babel/generator-7.17.7" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
       sources."@babel/helper-annotate-as-pure-7.16.7"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.16.7"
-      (sources."@babel/helper-compilation-targets-7.16.7" // {
+      (sources."@babel/helper-compilation-targets-7.17.7" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
@@ -77805,20 +77786,20 @@ in
       sources."@babel/helper-function-name-7.16.7"
       sources."@babel/helper-get-function-arity-7.16.7"
       sources."@babel/helper-hoist-variables-7.16.7"
-      sources."@babel/helper-member-expression-to-functions-7.16.7"
+      sources."@babel/helper-member-expression-to-functions-7.17.7"
       sources."@babel/helper-module-imports-7.16.7"
-      sources."@babel/helper-module-transforms-7.17.6"
+      sources."@babel/helper-module-transforms-7.17.7"
       sources."@babel/helper-optimise-call-expression-7.16.7"
       sources."@babel/helper-plugin-utils-7.16.7"
       sources."@babel/helper-remap-async-to-generator-7.16.8"
       sources."@babel/helper-replace-supers-7.16.7"
-      sources."@babel/helper-simple-access-7.16.7"
+      sources."@babel/helper-simple-access-7.17.7"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.16.0"
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/helper-validator-option-7.16.7"
       sources."@babel/helper-wrap-function-7.16.8"
-      sources."@babel/helpers-7.17.2"
+      sources."@babel/helpers-7.17.8"
       (sources."@babel/highlight-7.16.10" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
@@ -77829,7 +77810,7 @@ in
           sources."supports-color-5.5.0"
         ];
       })
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7"
       sources."@babel/plugin-proposal-async-generator-functions-7.16.8"
@@ -77869,7 +77850,7 @@ in
       sources."@babel/plugin-transform-block-scoping-7.16.7"
       sources."@babel/plugin-transform-classes-7.16.7"
       sources."@babel/plugin-transform-computed-properties-7.16.7"
-      sources."@babel/plugin-transform-destructuring-7.17.3"
+      sources."@babel/plugin-transform-destructuring-7.17.7"
       sources."@babel/plugin-transform-dotall-regex-7.16.7"
       sources."@babel/plugin-transform-duplicate-keys-7.16.7"
       sources."@babel/plugin-transform-exponentiation-operator-7.16.7"
@@ -77879,8 +77860,8 @@ in
       sources."@babel/plugin-transform-literals-7.16.7"
       sources."@babel/plugin-transform-member-expression-literals-7.16.7"
       sources."@babel/plugin-transform-modules-amd-7.16.7"
-      sources."@babel/plugin-transform-modules-commonjs-7.16.8"
-      sources."@babel/plugin-transform-modules-systemjs-7.16.7"
+      sources."@babel/plugin-transform-modules-commonjs-7.17.7"
+      sources."@babel/plugin-transform-modules-systemjs-7.17.8"
       sources."@babel/plugin-transform-modules-umd-7.16.7"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.16.8"
       sources."@babel/plugin-transform-new-target-7.16.7"
@@ -77905,14 +77886,14 @@ in
       sources."@babel/preset-flow-7.16.7"
       sources."@babel/preset-modules-0.1.5"
       sources."@babel/preset-typescript-7.16.7"
-      (sources."@babel/register-7.17.0" // {
+      (sources."@babel/register-7.17.7" // {
         dependencies = [
           sources."make-dir-2.1.0"
           sources."pify-4.0.1"
           sources."semver-5.7.1"
         ];
       })
-      sources."@babel/runtime-7.17.2"
+      sources."@babel/runtime-7.17.8"
       sources."@babel/template-7.16.7"
       sources."@babel/traverse-7.17.3"
       sources."@babel/types-7.17.0"
@@ -77922,6 +77903,7 @@ in
       sources."@jridgewell/resolve-uri-3.0.5"
       sources."@jridgewell/sourcemap-codec-1.4.11"
       sources."@jridgewell/trace-mapping-0.3.4"
+      sources."@node-ipc/js-queue-2.0.3"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
@@ -77935,7 +77917,7 @@ in
       sources."@protobufjs/path-1.1.2"
       sources."@protobufjs/pool-1.1.0"
       sources."@protobufjs/utf8-1.1.0"
-      sources."@sideway/address-4.1.3"
+      sources."@sideway/address-4.1.4"
       sources."@sideway/formula-3.0.0"
       sources."@sideway/pinpoint-2.0.0"
       sources."@sindresorhus/is-0.7.0"
@@ -77963,21 +77945,21 @@ in
       sources."@types/koa-compose-3.2.5"
       sources."@types/long-4.0.1"
       sources."@types/mime-1.3.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/qs-6.9.7"
       sources."@types/range-parser-1.2.4"
       sources."@types/serve-static-1.13.10"
       sources."@types/through-0.0.30"
       sources."@types/ws-7.4.7"
-      sources."@vue/cli-shared-utils-5.0.1"
-      (sources."@vue/cli-ui-5.0.1" // {
+      sources."@vue/cli-shared-utils-5.0.4"
+      (sources."@vue/cli-ui-5.0.4" // {
         dependencies = [
           sources."clone-2.1.2"
         ];
       })
-      sources."@vue/cli-ui-addon-webpack-5.0.1"
-      sources."@vue/cli-ui-addon-widgets-5.0.1"
+      sources."@vue/cli-ui-addon-webpack-5.0.4"
+      sources."@vue/cli-ui-addon-widgets-5.0.4"
       sources."@vue/compiler-core-3.2.31"
       sources."@vue/compiler-dom-3.2.31"
       sources."@vue/shared-3.2.31"
@@ -78067,7 +78049,7 @@ in
       })
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."buffer-5.7.1"
       sources."buffer-alloc-1.2.0"
       sources."buffer-alloc-unsafe-1.1.0"
@@ -78086,7 +78068,7 @@ in
       })
       sources."call-bind-1.0.2"
       sources."camelcase-6.3.0"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       sources."caw-2.0.1"
       sources."chalk-4.1.2"
       sources."chardet-0.7.0"
@@ -78153,7 +78135,7 @@ in
         ];
       })
       sources."cssfilter-0.0.10"
-      (sources."debug-4.3.3" // {
+      (sources."debug-4.3.4" // {
         dependencies = [
           sources."ms-2.1.2"
         ];
@@ -78207,7 +78189,7 @@ in
       sources."easy-stack-1.0.1"
       sources."ee-first-1.1.1"
       sources."ejs-3.1.6"
-      sources."electron-to-chromium-1.4.81"
+      sources."electron-to-chromium-1.4.96"
       sources."emoji-regex-8.0.0"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
@@ -78307,7 +78289,7 @@ in
           sources."which-2.0.2"
         ];
       })
-      sources."flow-parser-0.173.0"
+      sources."flow-parser-0.174.1"
       sources."for-each-0.3.3"
       sources."for-in-1.0.2"
       sources."forwarded-0.2.0"
@@ -78392,7 +78374,7 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-2.0.0"
-      sources."inquirer-8.2.1"
+      sources."inquirer-8.2.2"
       sources."internal-slot-1.0.3"
       sources."into-stream-3.1.0"
       sources."ipaddr.js-1.9.1"
@@ -78431,26 +78413,19 @@ in
       sources."is-windows-1.0.2"
       sources."is-wsl-2.2.0"
       sources."isarray-1.0.0"
-      sources."isbinaryfile-4.0.8"
+      sources."isbinaryfile-4.0.10"
       sources."isexe-2.0.0"
       sources."isobject-3.0.1"
       sources."isurl-1.0.0"
       sources."iterall-1.3.0"
-      (sources."jake-10.8.2" // {
+      (sources."jake-10.8.4" // {
         dependencies = [
-          sources."ansi-styles-3.2.1"
           sources."async-0.9.2"
-          sources."chalk-2.4.2"
-          sources."color-convert-1.9.3"
-          sources."color-name-1.1.3"
-          sources."has-flag-3.0.0"
-          sources."supports-color-5.5.0"
         ];
       })
       sources."javascript-stringify-2.1.0"
       sources."joi-17.6.0"
       sources."js-message-1.0.7"
-      sources."js-queue-2.0.2"
       sources."js-tokens-4.0.0"
       sources."js-yaml-4.1.0"
       (sources."jscodeshift-0.11.0" // {
@@ -78474,7 +78449,7 @@ in
       sources."jsesc-2.5.2"
       sources."json-buffer-3.0.0"
       sources."json-parse-even-better-errors-2.3.1"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."jsonfile-6.1.0"
       sources."keyv-3.0.0"
       sources."kind-of-6.0.3"
@@ -78501,20 +78476,20 @@ in
       sources."merge-stream-2.0.0"
       sources."merge2-1.4.1"
       sources."methods-1.1.2"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."mixin-deep-1.3.2" // {
         dependencies = [
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
       sources."nanoid-2.1.11"
@@ -78524,7 +78499,6 @@ in
       sources."nice-try-1.0.5"
       sources."node-dir-0.1.17"
       sources."node-fetch-2.6.7"
-      sources."node-ipc-9.2.1"
       (sources."node-notifier-10.0.1" // {
         dependencies = [
           sources."which-2.0.2"
@@ -79045,10 +79019,10 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/generator-7.17.3"
+      sources."@babel/generator-7.17.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/highlight-7.16.10"
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/template-7.16.7"
       sources."@babel/types-7.17.0"
       sources."@webassemblyjs/ast-1.11.1"
@@ -79141,7 +79115,7 @@ in
       sources."@types/minimist-1.2.2"
       sources."@types/ms-0.7.31"
       sources."@types/nlcst-1.0.0"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse5-6.0.3"
       sources."@types/supports-color-8.1.1"
@@ -79170,7 +79144,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."bubble-stream-error-1.0.0"
       sources."buffer-from-1.1.2"
-      sources."builtins-4.0.0"
+      sources."builtins-4.1.0"
       (sources."cacheable-request-6.1.0" // {
         dependencies = [
           sources."get-stream-5.2.0"
@@ -79203,7 +79177,7 @@ in
       sources."core-util-is-1.0.3"
       sources."crypto-random-string-2.0.0"
       sources."cuss-2.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-5.0.1"
       (sources."decamelize-keys-1.1.0" // {
         dependencies = [
@@ -79340,11 +79314,11 @@ in
       })
       sources."mdast-util-from-markdown-1.2.0"
       sources."mdast-util-frontmatter-1.0.0"
-      sources."mdast-util-gfm-2.0.0"
+      sources."mdast-util-gfm-2.0.1"
       sources."mdast-util-gfm-autolink-literal-1.0.2"
       sources."mdast-util-gfm-footnote-1.0.1"
       sources."mdast-util-gfm-strikethrough-1.0.1"
-      sources."mdast-util-gfm-table-1.0.3"
+      sources."mdast-util-gfm-table-1.0.4"
       sources."mdast-util-gfm-task-list-item-1.0.1"
       sources."mdast-util-mdx-1.1.0"
       sources."mdast-util-mdx-expression-1.2.0"
@@ -79359,7 +79333,7 @@ in
       sources."micromark-extension-frontmatter-1.0.0"
       sources."micromark-extension-gfm-2.0.1"
       sources."micromark-extension-gfm-autolink-literal-1.0.3"
-      sources."micromark-extension-gfm-footnote-1.0.3"
+      sources."micromark-extension-gfm-footnote-1.0.4"
       sources."micromark-extension-gfm-strikethrough-1.0.4"
       sources."micromark-extension-gfm-table-1.0.5"
       sources."micromark-extension-gfm-tagfilter-1.0.1"
@@ -79397,7 +79371,7 @@ in
       sources."mimic-response-1.0.1"
       sources."min-indent-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minimist-options-4.1.0"
       sources."mri-1.2.0"
       sources."ms-2.1.2"
@@ -79535,7 +79509,7 @@ in
       sources."unist-util-inspect-7.0.0"
       sources."unist-util-is-5.1.1"
       sources."unist-util-modify-children-2.0.0"
-      sources."unist-util-position-4.0.1"
+      sources."unist-util-position-4.0.2"
       sources."unist-util-position-from-estree-1.1.1"
       sources."unist-util-remove-position-4.0.1"
       sources."unist-util-stringify-position-3.0.2"
@@ -79564,7 +79538,7 @@ in
       sources."vfile-find-up-6.0.0"
       sources."vfile-location-4.0.1"
       sources."vfile-message-3.1.2"
-      (sources."vfile-reporter-7.0.3" // {
+      (sources."vfile-reporter-7.0.4" // {
         dependencies = [
           sources."ansi-regex-6.0.1"
           sources."emoji-regex-9.2.2"
@@ -79614,27 +79588,27 @@ in
     dependencies = [
       sources."@ampproject/remapping-2.1.2"
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/compat-data-7.17.0"
-      sources."@babel/core-7.17.5"
-      (sources."@babel/generator-7.17.3" // {
+      sources."@babel/compat-data-7.17.7"
+      sources."@babel/core-7.17.8"
+      (sources."@babel/generator-7.17.7" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
-      sources."@babel/helper-compilation-targets-7.16.7"
+      sources."@babel/helper-compilation-targets-7.17.7"
       sources."@babel/helper-environment-visitor-7.16.7"
       sources."@babel/helper-function-name-7.16.7"
       sources."@babel/helper-get-function-arity-7.16.7"
       sources."@babel/helper-hoist-variables-7.16.7"
       sources."@babel/helper-module-imports-7.16.7"
-      sources."@babel/helper-module-transforms-7.17.6"
-      sources."@babel/helper-simple-access-7.16.7"
+      sources."@babel/helper-module-transforms-7.17.7"
+      sources."@babel/helper-simple-access-7.17.7"
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/helper-validator-option-7.16.7"
-      sources."@babel/helpers-7.17.2"
+      sources."@babel/helpers-7.17.8"
       sources."@babel/highlight-7.16.10"
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/template-7.16.7"
       sources."@babel/traverse-7.17.3"
       sources."@babel/types-7.17.0"
@@ -79648,8 +79622,8 @@ in
       sources."async-3.2.3"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."browserslist-4.20.0"
-      sources."caniuse-lite-1.0.30001314"
+      sources."browserslist-4.20.2"
+      sources."caniuse-lite-1.0.30001320"
       sources."chalk-2.4.2"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
@@ -79657,9 +79631,9 @@ in
       sources."commander-8.3.0"
       sources."concat-map-0.0.1"
       sources."convert-source-map-1.8.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."ejs-3.1.6"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       sources."ensure-posix-path-1.1.1"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
@@ -79689,20 +79663,25 @@ in
       sources."is-core-module-2.8.1"
       sources."is-windows-1.0.2"
       sources."isexe-2.0.0"
-      (sources."jake-10.8.2" // {
+      (sources."jake-10.8.4" // {
         dependencies = [
+          sources."ansi-styles-4.3.0"
           sources."async-0.9.2"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
         ];
       })
       sources."js-tokens-4.0.0"
       sources."jsesc-2.5.2"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."jsonfile-4.0.0"
       sources."jsonlint-1.6.3"
       sources."lodash-4.17.21"
       sources."matcher-collection-1.1.2"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
       sources."moment-2.29.1"
       sources."ms-2.1.2"
       sources."node-releases-2.0.2"
@@ -79780,12 +79759,12 @@ in
       sources."cookies-0.8.0"
       sources."core-util-is-1.0.2"
       sources."dashdash-1.14.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deep-equal-1.0.1"
       sources."delayed-stream-1.0.0"
       sources."delegates-1.0.0"
       sources."depd-2.0.0"
-      sources."destroy-1.1.1"
+      sources."destroy-1.2.0"
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
       sources."emoji-regex-8.0.0"
@@ -79855,8 +79834,8 @@ in
       sources."lodash-4.17.21"
       sources."media-typer-0.3.0"
       sources."methods-1.1.2"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."ms-2.1.2"
       sources."mz-2.7.0"
       sources."negotiator-0.6.3"
@@ -79920,9 +79899,9 @@ in
         ];
       })
       sources."y18n-5.0.8"
-      sources."yargs-17.3.1"
+      sources."yargs-17.4.0"
       sources."yargs-parser-21.0.1"
-      sources."ylru-1.2.1"
+      sources."ylru-1.3.2"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -79945,7 +79924,7 @@ in
     dependencies = [
       sources."@types/glob-7.2.0"
       sources."@types/minimatch-3.0.5"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
       sources."chromium-pickle-js-0.2.0"
@@ -79991,8 +79970,8 @@ in
       sources."inherits-2.0.4"
       sources."isstream-0.1.2"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."once-1.4.0"
       (sources."optimist-0.6.1" // {
         dependencies = [
@@ -80023,15 +80002,15 @@ in
   autoprefixer = nodeEnv.buildNodePackage {
     name = "autoprefixer";
     packageName = "autoprefixer";
-    version = "10.4.2";
+    version = "10.4.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.2.tgz";
-      sha512 = "9fOPpHKuDW1w/0EKfRmVnxTDt8166MAnLI3mgZ1JCnhNtYWxcJ6Ud5CO/AVOZi/AvFa8DY9RTy3h3+tFBlrrdQ==";
+      url = "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.4.tgz";
+      sha512 = "Tm8JxsB286VweiZ5F0anmbyGiNI3v3wGv3mz9W+cxEDYB/6jbnj6GM9H9mK3wIL8ftgl+C07Lcwb8PG5PCCPzA==";
     };
     dependencies = [
-      sources."browserslist-4.20.0"
-      sources."caniuse-lite-1.0.30001314"
-      sources."electron-to-chromium-1.4.82"
+      sources."browserslist-4.20.2"
+      sources."caniuse-lite-1.0.30001320"
+      sources."electron-to-chromium-1.4.96"
       sources."escalade-3.1.1"
       sources."fraction.js-4.2.0"
       sources."node-releases-2.0.2"
@@ -80059,14 +80038,14 @@ in
     };
     dependencies = [
       sources."@tootallnate/once-1.1.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/yauzl-2.9.2"
       sources."agent-base-6.0.2"
       sources."ansi-escapes-4.3.2"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-4.3.0"
       sources."ast-types-0.13.4"
-      (sources."aws-sdk-2.1091.0" // {
+      (sources."aws-sdk-2.1101.0" // {
         dependencies = [
           sources."uuid-3.3.2"
         ];
@@ -80101,7 +80080,7 @@ in
       sources."css-select-4.2.1"
       sources."css-what-5.1.0"
       sources."data-uri-to-buffer-3.0.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deep-is-0.1.4"
       sources."defaults-1.0.3"
       sources."degenerator-2.2.0"
@@ -80109,7 +80088,7 @@ in
       sources."devtools-protocol-0.0.901419"
       sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
@@ -80151,7 +80130,7 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-2.0.0"
-      sources."inquirer-8.2.1"
+      sources."inquirer-8.2.2"
       sources."ip-1.1.5"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-interactive-1.0.0"
@@ -80166,7 +80145,7 @@ in
       sources."lru-cache-5.1.1"
       sources."mimic-fn-2.1.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-1.0.4"
       sources."ms-2.1.2"
       sources."mute-stream-0.0.8"
@@ -80223,7 +80202,7 @@ in
       sources."supports-color-7.2.0"
       (sources."tar-fs-2.0.0" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
         ];
       })
       sources."tar-stream-2.2.0"
@@ -80291,7 +80270,7 @@ in
       sources."@szmarczak/http-timer-1.1.2"
       sources."@types/eslint-7.29.0"
       sources."@types/estree-0.0.51"
-      sources."@types/json-schema-7.0.9"
+      sources."@types/json-schema-7.0.11"
       sources."@types/mdast-3.0.10"
       sources."@types/minimist-1.2.2"
       sources."@types/normalize-package-data-2.4.1"
@@ -80341,7 +80320,7 @@ in
       sources."concat-map-0.0.1"
       sources."cross-spawn-6.0.5"
       sources."crypto-random-string-2.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       (sources."decamelize-keys-1.1.0" // {
         dependencies = [
@@ -80445,7 +80424,7 @@ in
       sources."meow-9.0.0"
       sources."merge2-1.4.1"
       sources."micromark-2.11.4"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."min-indent-1.0.1"
@@ -80684,13 +80663,13 @@ in
   balanceofsatoshis = nodeEnv.buildNodePackage {
     name = "balanceofsatoshis";
     packageName = "balanceofsatoshis";
-    version = "11.57.1";
+    version = "11.61.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/balanceofsatoshis/-/balanceofsatoshis-11.57.1.tgz";
-      sha512 = "4VZ0wtEhVxobxcQuXnnWMKWp+lFCaYNwy24gLx38Jm634/ry3vQ1V5T2Y2OIrA0ea6h6CanL7mryjZRmaLwiqw==";
+      url = "https://registry.npmjs.org/balanceofsatoshis/-/balanceofsatoshis-11.61.3.tgz";
+      sha512 = "+ORg7HujAcHBRnOycZsbkVaNESplxHqYUxbtfZ1jSqNRoIf/mjQhpzTa4L5huBk7C+nFnx/rbfJn+xFIeL7ebA==";
     };
     dependencies = [
-      (sources."@alexbosworth/caporal-1.4.0" // {
+      (sources."@alexbosworth/caporal-1.4.1" // {
         dependencies = [
           sources."colorette-1.4.0"
         ];
@@ -80699,7 +80678,7 @@ in
       sources."@alexbosworth/fiat-1.0.1"
       sources."@alexbosworth/html2unicode-1.1.5"
       sources."@alexbosworth/node-fetch-2.6.2"
-      (sources."@alexbosworth/prettyjson-1.2.1" // {
+      (sources."@alexbosworth/prettyjson-1.2.2" // {
         dependencies = [
           sources."colors-1.1.2"
         ];
@@ -80712,7 +80691,7 @@ in
         ];
       })
       sources."@grammyjs/types-2.6.0"
-      sources."@grpc/grpc-js-1.5.4"
+      sources."@grpc/grpc-js-1.5.7"
       sources."@grpc/proto-loader-0.6.9"
       sources."@handsontable/formulajs-2.0.2"
       sources."@mitmaro/errors-1.0.0"
@@ -80736,22 +80715,22 @@ in
       sources."@types/express-serve-static-core-4.17.28"
       sources."@types/long-4.0.1"
       sources."@types/mime-1.3.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/qs-6.9.7"
       sources."@types/range-parser-1.2.4"
-      sources."@types/request-2.48.8"
+      sources."@types/request-2.48.7"
       sources."@types/serve-static-1.13.10"
       sources."@types/tough-cookie-4.0.1"
-      sources."@types/ws-8.2.2"
+      sources."@types/ws-8.2.0"
       sources."abort-controller-3.0.0"
       sources."accepts-1.3.8"
       (sources."agent-base-6.0.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
-      sources."ajv-8.10.0"
+      sources."ajv-8.11.0"
       sources."ansi-0.3.1"
       sources."ansi-align-3.0.1"
       sources."ansi-escapes-1.4.0"
@@ -80790,7 +80769,7 @@ in
       })
       sources."bluebird-3.7.2"
       sources."bn.js-5.2.0"
-      sources."body-parser-1.19.1"
+      sources."body-parser-1.19.2"
       sources."bolt01-1.2.3"
       sources."bolt03-1.2.13"
       sources."bolt07-1.8.0"
@@ -80808,7 +80787,7 @@ in
       sources."bs58check-2.1.2"
       sources."buffer-5.7.1"
       sources."buffer-from-1.1.2"
-      sources."bytes-3.1.1"
+      sources."bytes-3.1.2"
       sources."cacheable-lookup-6.0.4"
       (sources."cacheable-request-6.1.0" // {
         dependencies = [
@@ -80843,13 +80822,9 @@ in
       sources."commander-6.2.1"
       sources."concat-stream-1.6.2"
       sources."configstore-5.0.1"
-      (sources."content-disposition-0.5.4" // {
-        dependencies = [
-          sources."safe-buffer-5.2.1"
-        ];
-      })
+      sources."content-disposition-0.5.3"
       sources."content-type-1.0.4"
-      sources."cookie-0.4.1"
+      sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
       sources."core-util-is-1.0.3"
       sources."cors-2.8.5"
@@ -80888,9 +80863,16 @@ in
       sources."etag-1.8.1"
       sources."event-target-shim-5.0.1"
       sources."exit-hook-1.1.1"
-      (sources."express-4.17.2" // {
+      (sources."express-4.17.1" // {
         dependencies = [
-          sources."safe-buffer-5.2.1"
+          sources."body-parser-1.19.0"
+          sources."bytes-3.1.0"
+          sources."http-errors-1.7.2"
+          sources."inherits-2.0.3"
+          sources."qs-6.7.0"
+          sources."raw-body-2.4.0"
+          sources."setprototypeof-1.1.1"
+          sources."toidentifier-1.0.0"
         ];
       })
       sources."extend-3.0.2"
@@ -80908,17 +80890,12 @@ in
       sources."get-caller-file-2.0.5"
       sources."get-stream-4.1.0"
       sources."global-dirs-3.0.0"
-      (sources."goldengate-11.0.1" // {
-        dependencies = [
-          sources."invoices-2.0.3"
-          sources."ln-service-53.7.2"
-        ];
-      })
+      sources."goldengate-11.1.0"
       sources."got-9.6.0"
       sources."graceful-fs-4.2.9"
       (sources."grammy-1.7.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -80947,7 +80924,7 @@ in
       sources."imurmurhash-0.1.4"
       sources."inherits-2.0.4"
       sources."ini-2.0.0"
-      (sources."inquirer-8.2.1" // {
+      (sources."inquirer-8.2.2" // {
         dependencies = [
           sources."ansi-escapes-4.3.2"
           sources."ansi-styles-4.3.0"
@@ -80961,10 +80938,14 @@ in
           sources."restore-cursor-3.1.0"
           sources."supports-color-7.2.0"
           sources."tmp-0.0.33"
-          sources."type-fest-0.21.3"
         ];
       })
-      sources."invoices-2.0.4"
+      (sources."invoices-2.0.4" // {
+        dependencies = [
+          sources."tiny-secp256k1-2.2.0"
+          sources."uint8array-tools-0.0.6"
+        ];
+      })
       sources."ip-1.1.5"
       sources."ipaddr.js-1.9.1"
       sources."is-accessor-descriptor-1.0.0"
@@ -80996,30 +80977,50 @@ in
       sources."keyv-3.1.0"
       sources."kind-of-6.0.3"
       sources."latest-version-5.1.0"
-      (sources."lightning-5.6.1" // {
+      (sources."lightning-4.14.3" // {
         dependencies = [
-          sources."@types/node-17.0.14"
+          sources."@grpc/grpc-js-1.4.4"
+          sources."@grpc/proto-loader-0.6.6"
+          sources."@types/node-16.11.7"
+          sources."async-3.2.2"
+          sources."asyncjs-util-1.2.7"
           sources."bech32-1.1.4"
-          sources."invoices-2.0.3"
-          (sources."psbt-1.1.11" // {
+          sources."bitcoinjs-lib-6.0.0"
+          sources."body-parser-1.19.0"
+          sources."bolt07-1.7.4"
+          sources."bolt09-0.2.0"
+          sources."bytes-3.1.0"
+          sources."http-errors-1.7.2"
+          sources."inherits-2.0.3"
+          (sources."invoices-2.0.1" // {
+            dependencies = [
+              (sources."bitcoinjs-lib-5.2.0" // {
+                dependencies = [
+                  sources."bech32-1.1.4"
+                ];
+              })
+            ];
+          })
+          (sources."psbt-1.1.10" // {
             dependencies = [
               sources."bitcoinjs-lib-5.2.0"
             ];
           })
+          sources."qs-6.7.0"
+          sources."raw-body-2.4.0"
+          sources."setprototypeof-1.1.1"
           (sources."tiny-secp256k1-1.1.6" // {
             dependencies = [
               sources."bn.js-4.12.0"
             ];
           })
+          sources."toidentifier-1.0.0"
         ];
       })
       (sources."ln-accounting-5.0.5" // {
         dependencies = [
           sources."@grpc/grpc-js-1.4.4"
           sources."@grpc/proto-loader-0.6.6"
-          sources."@types/node-16.11.7"
-          sources."@types/request-2.48.7"
-          sources."@types/ws-8.2.0"
           sources."async-3.2.2"
           sources."asyncjs-util-1.2.7"
           sources."bech32-1.1.4"
@@ -81033,10 +81034,7 @@ in
           })
           sources."bolt09-0.2.0"
           sources."bytes-3.1.0"
-          sources."content-disposition-0.5.3"
-          sources."cookie-0.4.0"
           sources."ecpair-1.0.1"
-          sources."express-4.17.1"
           sources."goldengate-10.4.2"
           sources."http-errors-1.7.2"
           sources."inherits-2.0.3"
@@ -81046,23 +81044,7 @@ in
               sources."bn.js-5.2.0"
             ];
           })
-          (sources."lightning-4.14.3" // {
-            dependencies = [
-              sources."bech32-2.0.0"
-              sources."bn.js-5.2.0"
-              (sources."invoices-2.0.1" // {
-                dependencies = [
-                  (sources."bitcoinjs-lib-5.2.0" // {
-                    dependencies = [
-                      sources."bech32-1.1.4"
-                    ];
-                  })
-                ];
-              })
-            ];
-          })
           sources."ln-service-52.16.0"
-          sources."ms-2.1.1"
           (sources."psbt-1.1.10" // {
             dependencies = [
               sources."bitcoinjs-lib-5.2.0"
@@ -81071,85 +81053,33 @@ in
           })
           sources."qs-6.7.0"
           sources."raw-body-2.4.0"
-          sources."secp256k1-4.0.2"
-          sources."send-0.17.1"
-          sources."serve-static-1.14.1"
           sources."setprototypeof-1.1.1"
           sources."tiny-secp256k1-1.1.6"
           sources."toidentifier-1.0.0"
-          sources."ws-8.2.3"
         ];
       })
       (sources."ln-service-53.9.3" // {
         dependencies = [
-          sources."@grpc/grpc-js-1.5.7"
+          sources."@types/node-17.0.21"
+          sources."@types/request-2.48.8"
           sources."@types/ws-8.5.2"
-          sources."body-parser-1.19.2"
           sources."bolt09-0.2.2"
-          sources."bytes-3.1.2"
+          sources."content-disposition-0.5.4"
           sources."cookie-0.4.2"
           sources."express-4.17.3"
           sources."lightning-5.8.2"
-          sources."qs-6.9.7"
-          sources."raw-body-2.4.3"
+          sources."ms-2.1.3"
           sources."safe-buffer-5.2.1"
-          sources."tiny-secp256k1-2.2.1"
+          sources."send-0.17.2"
+          sources."serve-static-1.14.2"
           sources."type-fest-2.12.0"
-          sources."uint8array-tools-0.0.7"
           sources."ws-8.5.0"
         ];
       })
-      (sources."ln-sync-3.11.0" // {
+      sources."ln-sync-3.11.0"
+      (sources."ln-telegram-3.20.0" // {
         dependencies = [
-          sources."tiny-secp256k1-2.2.1"
-          sources."uint8array-tools-0.0.7"
-        ];
-      })
-      (sources."ln-telegram-3.19.1" // {
-        dependencies = [
-          sources."@grpc/grpc-js-1.5.5"
-          sources."@types/node-17.0.18"
-          sources."body-parser-1.19.2"
-          sources."bolt09-0.2.2"
-          sources."bytes-3.1.2"
-          sources."cookie-0.4.2"
-          sources."express-4.17.3"
-          (sources."lightning-5.8.1" // {
-            dependencies = [
-              sources."bytes-3.1.1"
-              sources."cookie-0.4.1"
-              (sources."express-4.17.2" // {
-                dependencies = [
-                  sources."body-parser-1.19.1"
-                ];
-              })
-              sources."qs-6.9.6"
-              sources."raw-body-2.4.2"
-            ];
-          })
-          sources."ln-service-53.9.2"
-          (sources."ln-sync-3.10.1" // {
-            dependencies = [
-              sources."@types/node-17.0.17"
-              sources."body-parser-1.19.1"
-              sources."bolt09-0.2.1"
-              sources."bytes-3.1.1"
-              sources."cookie-0.4.1"
-              sources."express-4.17.2"
-              sources."lightning-5.7.1"
-              sources."ln-service-53.8.1"
-              sources."qs-6.9.6"
-              sources."raw-body-2.4.2"
-            ];
-          })
-          sources."paid-services-3.12.1"
-          sources."qs-6.9.7"
-          sources."raw-body-2.4.3"
-          sources."safe-buffer-5.2.1"
-          sources."tiny-secp256k1-2.2.1"
-          sources."type-fest-2.11.2"
-          sources."uint8array-tools-0.0.7"
-          sources."ws-8.5.0"
+          sources."paid-services-3.14.2"
         ];
       })
       sources."lodash-4.17.21"
@@ -81185,14 +81115,14 @@ in
       sources."methods-1.1.2"
       sources."micromist-1.1.0"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."moment-2.29.1"
       (sources."morgan-1.10.0" // {
         dependencies = [
@@ -81228,17 +81158,13 @@ in
       sources."os-shim-0.1.3"
       sources."os-tmpdir-1.0.2"
       sources."p-cancelable-1.1.0"
+      sources."p2tr-1.3.0"
       (sources."package-json-6.5.0" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      (sources."paid-services-3.12.2" // {
-        dependencies = [
-          sources."tiny-secp256k1-2.2.1"
-          sources."uint8array-tools-0.0.7"
-        ];
-      })
+      sources."paid-services-3.14.4"
       sources."parseurl-1.3.3"
       sources."path-to-regexp-0.1.7"
       sources."pinkie-2.0.4"
@@ -81246,10 +81172,29 @@ in
       sources."prepend-http-2.0.0"
       (sources."probing-2.0.3" // {
         dependencies = [
+          sources."@grpc/grpc-js-1.5.4"
           sources."@types/node-17.0.15"
+          sources."@types/request-2.48.8"
+          sources."@types/ws-8.2.2"
+          sources."body-parser-1.19.1"
+          sources."bytes-3.1.1"
+          sources."content-disposition-0.5.4"
+          sources."cookie-0.4.1"
+          sources."express-4.17.2"
           sources."invoices-2.0.3"
           sources."lightning-5.6.2"
           sources."ln-service-53.7.3"
+          sources."ms-2.1.3"
+          sources."qs-6.9.6"
+          sources."raw-body-2.4.2"
+          sources."safe-buffer-5.2.1"
+          sources."secp256k1-4.0.3"
+          sources."send-0.17.2"
+          sources."serve-static-1.14.2"
+          sources."tiny-secp256k1-2.2.0"
+          sources."type-fest-2.11.1"
+          sources."uint8array-tools-0.0.6"
+          sources."ws-8.4.2"
         ];
       })
       sources."process-nextick-args-2.0.1"
@@ -81261,10 +81206,10 @@ in
       sources."pupa-2.1.1"
       sources."pushdata-bitcoin-1.0.1"
       sources."qrcode-terminal-0.12.0"
-      sources."qs-6.9.6"
+      sources."qs-6.9.7"
       sources."randombytes-2.1.0"
       sources."range-parser-1.2.1"
-      sources."raw-body-2.4.2"
+      sources."raw-body-2.4.3"
       (sources."rc-1.2.8" // {
         dependencies = [
           sources."ini-1.3.8"
@@ -81284,19 +81229,22 @@ in
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       sources."sanitize-filename-1.6.3"
-      sources."secp256k1-4.0.3"
+      sources."secp256k1-4.0.2"
       sources."semver-7.3.5"
       (sources."semver-diff-3.1.1" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      (sources."send-0.17.2" // {
+      (sources."send-0.17.1" // {
         dependencies = [
-          sources."ms-2.1.3"
+          sources."http-errors-1.7.3"
+          sources."ms-2.1.1"
+          sources."setprototypeof-1.1.1"
+          sources."toidentifier-1.0.0"
         ];
       })
-      sources."serve-static-1.14.2"
+      sources."serve-static-1.14.1"
       sources."setprototypeof-1.2.0"
       sources."sha.js-2.4.11"
       sources."signal-exit-3.0.7"
@@ -81310,7 +81258,7 @@ in
       sources."socks-2.6.2"
       (sources."socks-proxy-agent-6.2.0-beta.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -81334,7 +81282,7 @@ in
       })
       sources."through-2.3.8"
       sources."tiny-emitter-2.1.0"
-      sources."tiny-secp256k1-2.2.0"
+      sources."tiny-secp256k1-2.2.1"
       sources."tmp-0.0.29"
       sources."to-readable-stream-1.0.0"
       sources."toidentifier-1.0.1"
@@ -81343,12 +81291,12 @@ in
       sources."tslib-2.3.1"
       sources."tweetnacl-1.0.3"
       sources."tweetnacl-util-0.15.1"
-      sources."type-fest-2.11.1"
+      sources."type-fest-0.21.3"
       sources."type-is-1.6.18"
       sources."typedarray-0.0.6"
       sources."typedarray-to-buffer-3.1.5"
       sources."typeforce-1.18.0"
-      sources."uint8array-tools-0.0.6"
+      sources."uint8array-tools-0.0.7"
       sources."unique-string-2.0.0"
       sources."unpipe-1.0.0"
       (sources."update-notifier-5.1.0" // {
@@ -81385,7 +81333,7 @@ in
       })
       sources."wrappy-1.0.2"
       sources."write-file-atomic-3.0.3"
-      sources."ws-8.4.2"
+      sources."ws-8.2.3"
       sources."xdg-basedir-4.0.0"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
@@ -81481,8 +81429,8 @@ in
       sources."levn-0.3.0"
       sources."lodash-4.17.21"
       sources."lodash.sortby-4.7.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.1.2"
       sources."nwsapi-2.2.0"
       sources."oauth-sign-0.9.0"
@@ -81575,7 +81523,7 @@ in
       sources."commander-6.2.1"
       sources."console-control-strings-1.1.0"
       sources."core-util-is-1.0.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decompress-response-4.2.1"
       sources."deep-extend-0.6.0"
       sources."delegates-1.0.0"
@@ -81583,14 +81531,14 @@ in
       sources."doctoc-2.1.0"
       (sources."dom-serializer-1.3.2" // {
         dependencies = [
-          sources."domhandler-4.3.0"
+          sources."domhandler-4.3.1"
         ];
       })
       sources."domelementtype-2.2.0"
       sources."domhandler-3.3.0"
       (sources."domutils-2.8.0" // {
         dependencies = [
-          sources."domhandler-4.3.0"
+          sources."domhandler-4.3.1"
         ];
       })
       sources."emoji-regex-6.1.3"
@@ -81620,7 +81568,7 @@ in
       sources."isarray-1.0.0"
       sources."markdown-escapes-1.0.4"
       sources."mimic-response-2.1.0"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-classic-0.5.3"
       sources."ms-2.1.2"
       sources."nan-2.15.0"
@@ -81708,10 +81656,10 @@ in
   bower = nodeEnv.buildNodePackage {
     name = "bower";
     packageName = "bower";
-    version = "1.8.13";
+    version = "1.8.14";
     src = fetchurl {
-      url = "https://registry.npmjs.org/bower/-/bower-1.8.13.tgz";
-      sha512 = "8eWko16JlCTdaZZG70kddHPed17pHEbH8/IjfP4IFkQsfEqRsyNM09Dc8cDBFkSvtQ/2lTea7A+bMhRggG2a+Q==";
+      url = "https://registry.npmjs.org/bower/-/bower-1.8.14.tgz";
+      sha512 = "8Rq058FD91q9Nwthyhw0la9fzpBz0iwZTrt51LWl+w+PnJgZk9J+5wp3nibsJcIUPglMYXr4NRBaR+TUj0OkBQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -81735,7 +81683,7 @@ in
       sources."argparse-1.0.4"
       sources."array-find-index-1.0.2"
       sources."balanced-match-1.0.2"
-      sources."bower-1.8.13"
+      sources."bower-1.8.14"
       sources."bower-endpoint-parser-0.2.1"
       sources."bower-json-0.6.0"
       sources."bower-logger-0.2.1"
@@ -81794,8 +81742,8 @@ in
       sources."meow-3.7.0"
       sources."mime-db-1.52.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."natives-1.1.6"
       sources."normalize-package-data-2.5.0"
@@ -81999,7 +81947,7 @@ in
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-classic-0.5.3"
       sources."module-deps-6.2.3"
       sources."object-assign-4.1.1"
@@ -82097,36 +82045,37 @@ in
   browser-sync = nodeEnv.buildNodePackage {
     name = "browser-sync";
     packageName = "browser-sync";
-    version = "2.27.7";
+    version = "2.27.9";
     src = fetchurl {
-      url = "https://registry.npmjs.org/browser-sync/-/browser-sync-2.27.7.tgz";
-      sha512 = "9ElnnA/u+s2Jd+IgY+2SImB+sAEIteHsMG0NR96m7Ph/wztpvJCUpyC2on1KqmG9iAp941j+5jfmd34tEguGbg==";
+      url = "https://registry.npmjs.org/browser-sync/-/browser-sync-2.27.9.tgz";
+      sha512 = "3zBtggcaZIeU9so4ja9yxk7/CZu9B3DOL6zkxFpzHCHsQmkGBPVXg61jItbeoa+WXgNLnr1sYES/2yQwyEZ2+w==";
     };
     dependencies = [
+      sources."@socket.io/base64-arraybuffer-1.0.2"
+      sources."@socket.io/component-emitter-3.0.0"
+      sources."@types/component-emitter-1.2.11"
+      sources."@types/cookie-0.4.1"
+      sources."@types/cors-2.8.12"
+      sources."@types/node-17.0.23"
       sources."accepts-1.3.8"
-      sources."after-0.8.2"
       sources."ansi-regex-2.1.1"
       sources."ansi-styles-2.2.1"
       sources."anymatch-3.1.2"
-      sources."arraybuffer.slice-0.0.7"
       sources."async-1.5.2"
       sources."async-each-series-0.1.1"
       sources."axios-0.21.4"
       sources."backo2-1.0.2"
       sources."balanced-match-1.0.2"
-      sources."base64-arraybuffer-0.1.4"
       sources."base64id-2.0.0"
       sources."batch-0.6.1"
       sources."binary-extensions-2.2.0"
-      sources."blob-0.0.5"
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
-      sources."browser-sync-client-2.27.7"
-      sources."browser-sync-ui-2.27.7"
+      sources."browser-sync-client-2.27.9"
+      sources."browser-sync-ui-2.27.9"
       sources."bs-recipes-1.3.4"
       sources."bs-snippet-injector-2.0.1"
       sources."bytes-3.1.2"
-      sources."camelcase-5.3.1"
       sources."chalk-1.1.3"
       sources."chokidar-3.5.3"
       (sources."cliui-7.0.4" // {
@@ -82138,19 +82087,18 @@ in
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."commander-2.20.3"
-      sources."component-bind-1.0.0"
       sources."component-emitter-1.3.0"
-      sources."component-inherit-0.0.3"
       sources."concat-map-0.0.1"
       (sources."connect-3.6.6" // {
         dependencies = [
           sources."debug-2.6.9"
+          sources."ms-2.0.0"
         ];
       })
       sources."connect-history-api-fallback-1.6.0"
       sources."cookie-0.4.2"
-      sources."debug-3.1.0"
-      sources."decamelize-1.2.0"
+      sources."cors-2.8.5"
+      sources."debug-4.3.4"
       sources."depd-2.0.0"
       sources."destroy-1.0.4"
       sources."dev-ip-1.0.1"
@@ -82160,14 +82108,9 @@ in
       sources."ee-first-1.1.1"
       sources."emoji-regex-8.0.0"
       sources."encodeurl-1.0.2"
-      (sources."engine.io-3.5.0" // {
-        dependencies = [
-          sources."debug-4.1.1"
-          sources."ms-2.1.3"
-        ];
-      })
-      sources."engine.io-client-3.5.2"
-      sources."engine.io-parser-2.2.1"
+      sources."engine.io-6.1.3"
+      sources."engine.io-client-6.1.1"
+      sources."engine.io-parser-5.0.3"
       sources."escalade-3.1.1"
       sources."escape-html-1.0.3"
       sources."escape-string-regexp-1.0.5"
@@ -82177,9 +82120,9 @@ in
       (sources."finalhandler-1.1.0" // {
         dependencies = [
           sources."debug-2.6.9"
+          sources."ms-2.0.0"
         ];
       })
-      sources."find-up-4.1.0"
       sources."follow-redirects-1.14.9"
       sources."fresh-0.5.2"
       sources."fs-extra-3.0.1"
@@ -82188,7 +82131,6 @@ in
       sources."glob-parent-5.1.2"
       sources."graceful-fs-4.2.9"
       sources."has-ansi-2.0.0"
-      sources."has-binary2-1.0.3"
       sources."has-cors-1.1.0"
       (sources."http-errors-2.0.0" // {
         dependencies = [
@@ -82198,7 +82140,6 @@ in
       sources."http-proxy-1.18.1"
       sources."iconv-lite-0.4.24"
       sources."immutable-3.8.2"
-      sources."indexof-0.0.1"
       sources."inherits-2.0.4"
       sources."is-binary-path-2.1.0"
       sources."is-extglob-2.1.1"
@@ -82207,38 +82148,32 @@ in
       sources."is-number-7.0.0"
       sources."is-number-like-1.0.8"
       sources."is-wsl-1.1.0"
-      sources."isarray-2.0.1"
       sources."jsonfile-3.0.1"
       sources."limiter-1.1.5"
       (sources."localtunnel-2.0.2" // {
         dependencies = [
           sources."debug-4.3.2"
-          sources."ms-2.1.2"
           sources."yargs-17.1.1"
         ];
       })
-      sources."locate-path-5.0.0"
       sources."lodash-4.17.21"
       sources."lodash.isfinite-3.3.2"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mime-1.4.1"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.1.2"
       sources."mitt-1.2.0"
-      sources."ms-2.0.0"
+      sources."ms-2.1.2"
       sources."negotiator-0.6.3"
       sources."normalize-path-3.0.0"
+      sources."object-assign-4.1.1"
       sources."on-finished-2.3.0"
       sources."openurl-1.1.1"
       sources."opn-5.3.0"
-      sources."p-limit-2.3.0"
-      sources."p-locate-4.1.0"
-      sources."p-try-2.2.0"
       sources."parseqs-0.0.6"
       sources."parseuri-0.0.6"
       sources."parseurl-1.3.3"
-      sources."path-exists-4.0.0"
       sources."picomatch-2.3.1"
       sources."portscanner-2.1.1"
       sources."qs-6.2.3"
@@ -82246,11 +82181,11 @@ in
       sources."raw-body-2.5.1"
       sources."readdirp-3.6.0"
       sources."require-directory-2.1.1"
-      sources."require-main-filename-2.0.0"
       sources."requires-port-1.0.0"
       (sources."resp-modifier-6.0.2" // {
         dependencies = [
           sources."debug-2.6.9"
+          sources."ms-2.0.0"
         ];
       })
       sources."rx-4.1.0"
@@ -82262,6 +82197,7 @@ in
           sources."depd-1.1.2"
           sources."http-errors-1.6.3"
           sources."inherits-2.0.3"
+          sources."ms-2.0.0"
           sources."setprototypeof-1.1.0"
           sources."statuses-1.4.0"
         ];
@@ -82272,25 +82208,22 @@ in
           sources."depd-1.1.2"
           sources."http-errors-1.6.3"
           sources."inherits-2.0.3"
+          sources."ms-2.0.0"
           sources."setprototypeof-1.1.0"
           sources."statuses-1.5.0"
         ];
       })
       sources."serve-static-1.13.2"
       sources."server-destroy-1.0.1"
-      sources."set-blocking-2.0.0"
       sources."setprototypeof-1.2.0"
-      (sources."socket.io-2.4.0" // {
+      (sources."socket.io-4.4.1" // {
         dependencies = [
-          sources."component-emitter-1.2.1"
-          sources."debug-4.1.1"
-          sources."ms-2.1.3"
-          sources."socket.io-parser-3.4.1"
+          sources."socket.io-parser-4.0.4"
         ];
       })
-      sources."socket.io-adapter-1.1.2"
-      sources."socket.io-client-2.4.0"
-      sources."socket.io-parser-3.3.2"
+      sources."socket.io-adapter-2.3.3"
+      sources."socket.io-client-4.4.1"
+      sources."socket.io-parser-4.1.2"
       sources."statuses-1.3.1"
       sources."stream-throttle-0.1.3"
       (sources."string-width-4.2.3" // {
@@ -82303,14 +82236,13 @@ in
       sources."supports-color-2.0.0"
       sources."symbol-observable-1.0.1"
       sources."tfunk-4.0.0"
-      sources."to-array-0.1.4"
       sources."to-regex-range-5.0.1"
       sources."toidentifier-1.0.1"
       sources."ua-parser-js-1.0.2"
       sources."universalify-0.1.2"
       sources."unpipe-1.0.0"
       sources."utils-merge-1.0.1"
-      sources."which-module-2.0.0"
+      sources."vary-1.1.2"
       (sources."wrap-ansi-7.0.0" // {
         dependencies = [
           sources."ansi-regex-5.0.1"
@@ -82318,18 +82250,12 @@ in
           sources."strip-ansi-6.0.1"
         ];
       })
-      sources."ws-7.4.6"
-      sources."xmlhttprequest-ssl-1.6.3"
+      sources."ws-8.2.3"
+      sources."xmlhttprequest-ssl-2.0.0"
       sources."y18n-5.0.8"
-      (sources."yargs-15.4.1" // {
+      (sources."yargs-17.4.0" // {
         dependencies = [
-          sources."ansi-regex-5.0.1"
-          sources."ansi-styles-4.3.0"
-          sources."cliui-6.0.0"
-          sources."strip-ansi-6.0.1"
-          sources."wrap-ansi-6.2.0"
-          sources."y18n-4.0.3"
-          sources."yargs-parser-18.1.3"
+          sources."yargs-parser-21.0.1"
         ];
       })
       sources."yargs-parser-20.2.9"
@@ -82357,7 +82283,7 @@ in
       sources."@babel/code-frame-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/highlight-7.16.10"
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/types-7.17.0"
       sources."@kwsites/file-exists-1.1.1"
       sources."@kwsites/promise-deferred-1.1.1"
@@ -82460,7 +82386,7 @@ in
         ];
       })
       sources."dashdash-1.14.1"
-      (sources."debug-4.3.3" // {
+      (sources."debug-4.3.4" // {
         dependencies = [
           sources."ms-2.1.2"
         ];
@@ -82604,15 +82530,15 @@ in
       sources."merkle-lib-2.0.10"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."min-indent-1.0.1"
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minimist-options-4.1.0"
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."moment-2.29.1"
       sources."moment-duration-format-2.3.2"
       (sources."morgan-1.10.0" // {
@@ -82819,7 +82745,7 @@ in
       sources."@protobufjs/pool-1.1.0"
       sources."@protobufjs/utf8-1.1.0"
       sources."@types/long-4.0.1"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."addr-to-ip-port-1.5.4"
       sources."airplay-js-0.2.16"
       sources."ajv-6.12.6"
@@ -82866,7 +82792,7 @@ in
       sources."caseless-0.12.0"
       (sources."castv2-0.1.10" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
         ];
       })
       sources."castv2-client-1.2.0"
@@ -82881,7 +82807,7 @@ in
       sources."co-3.1.0"
       sources."codepage-1.4.0"
       sources."combined-stream-1.0.8"
-      sources."commander-9.0.0"
+      sources."commander-9.1.0"
       sources."compact2string-1.4.1"
       sources."concat-map-0.0.1"
       (sources."concat-stream-2.0.0" // {
@@ -82932,7 +82858,7 @@ in
       sources."form-data-2.3.3"
       (sources."fs-chunk-store-1.7.0" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
           sources."thunky-1.1.0"
         ];
       })
@@ -83001,11 +82927,11 @@ in
         ];
       })
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-0.3.5"
       sources."mkdirp-classic-0.5.3"
       sources."ms-2.1.2"
@@ -83062,7 +82988,7 @@ in
           sources."supports-color-0.2.0"
         ];
       })
-      sources."plist-3.0.4"
+      sources."plist-3.0.5"
       sources."process-nextick-args-2.0.1"
       sources."promiscuous-0.6.0"
       sources."protobufjs-6.11.2"
@@ -83078,7 +83004,7 @@ in
       sources."query-string-1.0.1"
       sources."queue-microtask-1.2.3"
       sources."queue-tick-1.0.0"
-      sources."random-access-file-2.2.0"
+      sources."random-access-file-2.2.1"
       sources."random-access-storage-1.4.3"
       sources."random-iterate-1.0.1"
       sources."randombytes-2.1.0"
@@ -83246,7 +83172,7 @@ in
       sources."agent-base-4.3.0"
       sources."ansi-align-2.0.0"
       sources."ansi-escapes-3.2.0"
-      sources."ansi-regex-3.0.0"
+      sources."ansi-regex-3.0.1"
       sources."ansi-styles-3.2.1"
       sources."any-observable-0.3.0"
       (sources."app-path-2.2.0" // {
@@ -83556,14 +83482,14 @@ in
       sources."mimic-fn-1.2.0"
       sources."min-document-2.19.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minimist-options-3.0.2"
       (sources."mixin-deep-1.3.2" // {
         dependencies = [
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.7"
       sources."nanoid-2.1.11"
@@ -83601,7 +83527,7 @@ in
       sources."parse-bmfont-ascii-1.0.6"
       sources."parse-bmfont-binary-1.0.6"
       sources."parse-bmfont-xml-1.1.4"
-      sources."parse-headers-2.0.4"
+      sources."parse-headers-2.0.5"
       sources."parse-json-4.0.0"
       sources."pascalcase-0.1.1"
       sources."path-dirname-1.0.2"
@@ -83617,7 +83543,7 @@ in
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
       sources."pixelmatch-4.0.2"
-      (sources."plist-3.0.4" // {
+      (sources."plist-3.0.5" // {
         dependencies = [
           sources."xmlbuilder-9.0.7"
         ];
@@ -83632,7 +83558,7 @@ in
       sources."pseudomap-1.0.2"
       (sources."puppeteer-1.20.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -83737,7 +83663,7 @@ in
       sources."string_decoder-1.1.1"
       (sources."strip-ansi-5.2.0" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
         ];
       })
       sources."strip-bom-3.0.0"
@@ -83826,20 +83752,20 @@ in
   cdk8s-cli = nodeEnv.buildNodePackage {
     name = "cdk8s-cli";
     packageName = "cdk8s-cli";
-    version = "1.0.120";
+    version = "1.0.134";
     src = fetchurl {
-      url = "https://registry.npmjs.org/cdk8s-cli/-/cdk8s-cli-1.0.120.tgz";
-      sha512 = "2Ik+JGf5Pt+6V4tBDSFicqxRb0mRv5u+x7lOiegoeRku467VH4I6Vk4Di+MDLr9lt2OEmJftAxXpvAMv0DBCfQ==";
+      url = "https://registry.npmjs.org/cdk8s-cli/-/cdk8s-cli-1.0.134.tgz";
+      sha512 = "piVuRH84D5xsGeC7uOOGQNBR7JrhrDT+6g5GEM4EOZf1XjxeuH15YfRsI6+ukexwq85kseEoCWltcOvGZefYQQ==";
     };
     dependencies = [
-      sources."@jsii/check-node-1.55.0"
-      sources."@jsii/spec-1.55.0"
+      sources."@jsii/check-node-1.55.1"
+      sources."@jsii/spec-1.55.1"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
       sources."@types/node-12.20.47"
       sources."@xmldom/xmldom-0.8.1"
-      sources."ajv-8.10.0"
+      sources."ajv-8.11.0"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-4.3.0"
       sources."at-least-node-1.0.0"
@@ -83848,12 +83774,12 @@ in
       sources."call-bind-1.0.2"
       sources."camelcase-6.3.0"
       sources."case-1.6.3"
-      sources."cdk8s-1.5.39"
-      sources."cdk8s-plus-22-1.0.0-beta.142"
+      sources."cdk8s-1.5.52"
+      sources."cdk8s-plus-22-1.0.0-beta.158"
       sources."chalk-4.1.2"
       sources."cliui-7.0.4"
       sources."clone-2.1.2"
-      (sources."codemaker-1.55.0" // {
+      (sources."codemaker-1.55.1" // {
         dependencies = [
           sources."fs-extra-9.1.0"
         ];
@@ -83862,9 +83788,9 @@ in
       sources."color-name-1.1.4"
       sources."colors-1.4.0"
       sources."commonmark-0.30.0"
-      sources."constructs-3.3.239"
-      sources."date-format-4.0.4"
-      sources."debug-4.3.3"
+      sources."constructs-3.3.250"
+      sources."date-format-4.0.6"
+      sources."debug-4.3.4"
       sources."decamelize-5.0.1"
       sources."deep-equal-2.0.5"
       sources."define-properties-1.1.3"
@@ -83925,48 +83851,48 @@ in
       sources."is-weakref-1.0.2"
       sources."is-weakset-2.0.2"
       sources."isarray-2.0.5"
-      (sources."jsii-1.55.0" // {
+      (sources."jsii-1.55.1" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-pacmak-1.55.0" // {
+      (sources."jsii-pacmak-1.55.1" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-reflect-1.55.0" // {
+      (sources."jsii-reflect-1.55.1" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-rosetta-1.55.0" // {
+      (sources."jsii-rosetta-1.55.1" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."yargs-16.2.0"
         ];
       })
-      (sources."jsii-srcmak-0.1.499" // {
+      (sources."jsii-srcmak-0.1.512" // {
         dependencies = [
           sources."fs-extra-9.1.0"
         ];
       })
       sources."json-schema-0.4.0"
       sources."json-schema-traverse-1.0.0"
-      sources."json2jsii-0.2.159"
+      sources."json2jsii-0.2.172"
       sources."jsonfile-6.1.0"
       sources."jsonschema-1.4.0"
       sources."locate-path-5.0.0"
-      sources."log4js-6.4.2"
+      sources."log4js-6.4.4"
       sources."lower-case-2.0.2"
       sources."lru-cache-6.0.0"
       sources."mdurl-1.0.1"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
-      sources."minimist-1.2.5"
+      sources."micromatch-4.0.5"
+      sources."minimist-1.2.6"
       sources."ms-2.1.2"
       sources."ncp-2.0.0"
       sources."no-case-3.0.4"
@@ -83974,7 +83900,7 @@ in
       sources."object-is-1.1.5"
       sources."object-keys-1.1.1"
       sources."object.assign-4.1.2"
-      sources."oo-ascii-tree-1.55.0"
+      sources."oo-ascii-tree-1.55.1"
       sources."p-limit-2.3.0"
       sources."p-locate-4.1.0"
       sources."p-try-2.2.0"
@@ -84000,8 +83926,8 @@ in
       sources."snake-case-3.0.4"
       sources."sort-json-2.0.1"
       sources."spdx-license-list-6.4.0"
-      sources."sscaff-1.2.225"
-      (sources."streamroller-3.0.4" // {
+      sources."sscaff-1.2.239"
+      (sources."streamroller-3.0.6" // {
         dependencies = [
           sources."fs-extra-10.0.1"
         ];
@@ -84027,7 +83953,7 @@ in
       sources."xmlbuilder-15.1.1"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      sources."yaml-2.0.0-10"
+      sources."yaml-2.0.0-11"
       (sources."yargs-15.4.1" // {
         dependencies = [
           sources."camelcase-5.3.1"
@@ -84059,16 +83985,16 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/generator-7.17.3"
+      sources."@babel/generator-7.17.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/highlight-7.16.10"
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/template-7.16.7"
       sources."@babel/types-7.17.0"
       sources."@cdktf/hcl2cdk-0.9.4"
       sources."@cdktf/hcl2json-0.9.4"
       sources."@cdktf/provider-generator-0.9.4"
-      (sources."@jsii/check-node-1.55.0" // {
+      (sources."@jsii/check-node-1.55.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."chalk-4.1.2"
@@ -84078,11 +84004,11 @@ in
           sources."supports-color-7.2.0"
         ];
       })
-      sources."@jsii/spec-1.55.0"
+      sources."@jsii/spec-1.55.1"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/node-fetch-2.6.1"
       sources."@xmldom/xmldom-0.8.1"
       sources."ansi-regex-5.0.1"
@@ -84110,9 +84036,9 @@ in
       sources."combined-stream-1.0.8"
       sources."commonmark-0.30.0"
       sources."concat-map-0.0.1"
-      sources."constructs-10.0.84"
-      sources."date-format-4.0.4"
-      sources."debug-4.3.3"
+      sources."constructs-10.0.97"
+      sources."date-format-4.0.6"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       sources."deep-equal-2.0.5"
       sources."define-properties-1.1.3"
@@ -84178,7 +84104,7 @@ in
       sources."isarray-2.0.5"
       sources."js-tokens-4.0.0"
       sources."jsesc-2.5.2"
-      (sources."jsii-1.55.0" // {
+      (sources."jsii-1.55.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."chalk-4.1.2"
@@ -84196,11 +84122,11 @@ in
           sources."yargs-parser-20.2.9"
         ];
       })
-      (sources."jsii-pacmak-1.55.0" // {
+      (sources."jsii-pacmak-1.55.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."cliui-7.0.4"
-          sources."codemaker-1.55.0"
+          sources."codemaker-1.55.1"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."decamelize-5.0.1"
@@ -84214,7 +84140,7 @@ in
           sources."yargs-parser-20.2.9"
         ];
       })
-      (sources."jsii-reflect-1.55.0" // {
+      (sources."jsii-reflect-1.55.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."chalk-4.1.2"
@@ -84232,7 +84158,7 @@ in
           sources."yargs-parser-20.2.9"
         ];
       })
-      (sources."jsii-rosetta-1.55.0" // {
+      (sources."jsii-rosetta-1.55.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."cliui-7.0.4"
@@ -84247,7 +84173,7 @@ in
           sources."yargs-parser-20.2.9"
         ];
       })
-      (sources."jsii-srcmak-0.1.499" // {
+      (sources."jsii-srcmak-0.1.512" // {
         dependencies = [
           sources."fs-extra-9.1.0"
           sources."jsonfile-6.1.0"
@@ -84258,15 +84184,15 @@ in
       sources."jsonfile-4.0.0"
       sources."jsonschema-1.4.0"
       sources."locate-path-5.0.0"
-      sources."log4js-6.4.2"
+      sources."log4js-6.4.4"
       sources."lru-cache-6.0.0"
       sources."mdurl-1.0.1"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."micromatch-4.0.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."ms-2.1.2"
       sources."ncp-2.0.0"
       sources."node-fetch-2.6.7"
@@ -84276,14 +84202,14 @@ in
       sources."object.assign-4.1.2"
       sources."obliterator-2.0.2"
       sources."once-1.4.0"
-      sources."oo-ascii-tree-1.55.0"
+      sources."oo-ascii-tree-1.55.1"
       sources."p-limit-2.3.0"
       sources."p-locate-4.1.0"
       sources."p-try-2.2.0"
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."picomatch-2.3.1"
-      sources."prettier-2.5.1"
+      sources."prettier-2.6.1"
       sources."punycode-2.1.1"
       sources."queue-microtask-1.2.3"
       sources."regexp.prototype.flags-1.4.1"
@@ -84304,7 +84230,7 @@ in
       sources."sort-json-2.0.1"
       sources."source-map-0.5.7"
       sources."spdx-license-list-6.4.0"
-      (sources."streamroller-3.0.4" // {
+      (sources."streamroller-3.0.6" // {
         dependencies = [
           sources."fs-extra-10.0.1"
           sources."jsonfile-6.1.0"
@@ -84341,7 +84267,7 @@ in
       sources."xmlbuilder-15.1.1"
       sources."y18n-4.0.3"
       sources."yallist-4.0.0"
-      (sources."yargs-17.3.1" // {
+      (sources."yargs-17.4.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."cliui-7.0.4"
@@ -84542,7 +84468,7 @@ in
       sources."colors-1.0.3"
       sources."commander-2.20.3"
       sources."cycle-1.0.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decode-uri-component-0.2.0"
       sources."encoding-0.1.13"
       sources."escape-string-regexp-1.0.5"
@@ -84592,10 +84518,10 @@ in
   coc-clangd = nodeEnv.buildNodePackage {
     name = "coc-clangd";
     packageName = "coc-clangd";
-    version = "0.20.1";
+    version = "0.21.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-clangd/-/coc-clangd-0.20.1.tgz";
-      sha512 = "0c5ZTX97cOJPSbYaIvUo2fGn0sSB3ZIYdhfhnXAX51c86aUgYqVE0Us3VVfFAnLmVvoufu8uW4fmtZXTAWahBw==";
+      url = "https://registry.npmjs.org/coc-clangd/-/coc-clangd-0.21.1.tgz";
+      sha512 = "222VMJBKE4ReyznvWjgJv4lZFtCrkEnKfJk4cL20SH+74x95JP2N0ujNtUiggBhaWcxvOiQxRt467NuVI48Fxg==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -84610,10 +84536,10 @@ in
   coc-cmake = nodeEnv.buildNodePackage {
     name = "coc-cmake";
     packageName = "coc-cmake";
-    version = "0.2.0";
+    version = "0.2.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-cmake/-/coc-cmake-0.2.0.tgz";
-      sha512 = "hRCKiKikjEIUNrfBeb0IdbL3vvlU4inXtSOntfJF2Uhwv2V/KorK0KxdGeg6CTl6b0hhA53nieJaxQZSNVLfUA==";
+      url = "https://registry.npmjs.org/coc-cmake/-/coc-cmake-0.2.1.tgz";
+      sha512 = "ejY7j6/kj4hrAC5DnrItsO8PohxLNvEJr13hSHL8ZLL8c0SVPYnH+NyDaRHw4IVFeZvP70PZs5I5BBinCISHMg==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -84645,10 +84571,10 @@ in
   coc-diagnostic = nodeEnv.buildNodePackage {
     name = "coc-diagnostic";
     packageName = "coc-diagnostic";
-    version = "0.23.1";
+    version = "0.23.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-diagnostic/-/coc-diagnostic-0.23.1.tgz";
-      sha512 = "LttYS+gGH42SI5XFuIf9TdAGRRKABQvQDbMeUDrUqdpscX90WvHYdeR8M1q94RwoZH33g/4oxWu0RLPKxgDJKw==";
+      url = "https://registry.npmjs.org/coc-diagnostic/-/coc-diagnostic-0.23.2.tgz";
+      sha512 = "E25+KhDPSUloQifiFPgoWZDIGpDH+MPF6Yi5WCjnNaztExFph5GYLjwsYdO0vV0IYxNgkpzr0YZNPOZt+2AB1g==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -84686,10 +84612,10 @@ in
   coc-eslint = nodeEnv.buildNodePackage {
     name = "coc-eslint";
     packageName = "coc-eslint";
-    version = "1.5.7";
+    version = "1.5.8";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-eslint/-/coc-eslint-1.5.7.tgz";
-      sha512 = "QA6ZdSnW9ZHmQcaDF0+KZj9FnoJJFksk6t76VpXtBZUhzlRPoEWkpNPoVaN4uXwefMN6br4eLBxhVWW8gp8w4w==";
+      url = "https://registry.npmjs.org/coc-eslint/-/coc-eslint-1.5.8.tgz";
+      sha512 = "EOdkh804CCouSGvbG9cRZopi+ZX3glAwwfTZPBSMkiM61qbmDtVNNoVO20gj22zUEc/tfu4df7Uh267W2hk1aA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -84704,10 +84630,10 @@ in
   coc-explorer = nodeEnv.buildNodePackage {
     name = "coc-explorer";
     packageName = "coc-explorer";
-    version = "0.22.7";
+    version = "0.22.9";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-explorer/-/coc-explorer-0.22.7.tgz";
-      sha512 = "GVDG9GbqbeZOXrU0gChJP5eFv29vbcV6QudUNq/fVSWLLV/wZPREoxYQCM4hWEreDPDfB/fkSddOEJHoF4F+Vg==";
+      url = "https://registry.npmjs.org/coc-explorer/-/coc-explorer-0.22.9.tgz";
+      sha512 = "HzIKBNcTpmvqc38grrktkdCTxCZvee2UwZ7qD67Y5xxN2aipDCW9IOeqTATiX56zWCcYeq/iNZjBvvMe3OlNjQ==";
     };
     dependencies = [
       sources."@sindresorhus/df-3.1.1"
@@ -84804,20 +84730,16 @@ in
   coc-go = nodeEnv.buildNodePackage {
     name = "coc-go";
     packageName = "coc-go";
-    version = "1.1.0";
+    version = "1.2.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-go/-/coc-go-1.1.0.tgz";
-      sha512 = "TWVSA2l2vTFSb+F1FJAPSLOntDALjqpvyNL9vWIwKeRKRCWdUI9klQcYTMlCRCPKbthzuD4xUq6bW3wvuoZUBg==";
+      url = "https://registry.npmjs.org/coc-go/-/coc-go-1.2.1.tgz";
+      sha512 = "wC3hU4P7w9QtGUNng4lb3PFjfZvOwaSCz9V/M7xcnscuyyoA1j0nNB1/GsBNmW7xnhRS4kEfRPeeHwvj/3YYmA==";
     };
     dependencies = [
       sources."isexe-2.0.0"
-      sources."node-fetch-2.6.7"
-      sources."tr46-0.0.3"
       sources."tslib-2.3.1"
       sources."vscode-languageserver-textdocument-1.0.4"
       sources."vscode-uri-3.0.3"
-      sources."webidl-conversions-3.0.1"
-      sources."whatwg-url-5.0.0"
       sources."which-2.0.2"
     ];
     buildInputs = globalBuildInputs;
@@ -84855,7 +84777,7 @@ in
       sha512 = "HtFYiBx2ZIFairTsfDwLsMUTGwlH498VzAipWZeCOIGf7ZXetEbv0t+wr7IAy2KMIwhlmzoMsi5aHSlUupxGHA==";
     };
     dependencies = [
-      sources."typescript-4.6.2"
+      sources."typescript-4.6.3"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -84982,7 +84904,7 @@ in
       sha512 = "zFExh1wGAZl4LXSp76NAjWORO9Tyhfw8WtALnhDv741p4tjWjVSEl6GmXTQN0U0tXz8UZ8ln2rL2OaxOdgMCTA==";
     };
     dependencies = [
-      sources."@chemzqm/neovim-5.7.5"
+      sources."@chemzqm/neovim-5.7.7"
       sources."@tootallnate/once-1.1.2"
       sources."agent-base-6.0.2"
       sources."arch-2.2.0"
@@ -85011,9 +84933,9 @@ in
           sources."which-1.3.1"
         ];
       })
-      sources."date-format-4.0.4"
+      sources."date-format-4.0.6"
       sources."debounce-1.2.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deep-extend-0.6.0"
       sources."define-properties-1.1.3"
       sources."duplexer2-0.1.4"
@@ -85026,13 +84948,13 @@ in
       sources."fb-watchman-2.0.1"
       sources."flatted-3.2.5"
       sources."follow-redirects-1.14.9"
-      sources."fp-ts-2.11.8"
+      sources."fp-ts-2.11.9"
       sources."fs-extra-10.0.1"
       sources."fs-minipass-2.1.0"
       sources."fs.realpath-1.0.0"
       (sources."fstream-1.0.12" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
           sources."rimraf-2.7.1"
         ];
       })
@@ -85080,11 +85002,11 @@ in
         ];
       })
       sources."lodash-4.17.21"
-      sources."log4js-6.4.2"
+      sources."log4js-6.4.4"
       sources."lru-cache-6.0.0"
       sources."metals-languageclient-0.4.2"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-3.1.6"
       sources."minizlib-2.1.2"
       sources."mkdirp-1.0.4"
@@ -85093,7 +85015,7 @@ in
       (sources."mv-2.1.1" // {
         dependencies = [
           sources."glob-6.0.4"
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
           sources."rimraf-2.4.5"
         ];
       })
@@ -85130,7 +85052,7 @@ in
       sources."shell-quote-1.7.3"
       sources."side-channel-1.0.4"
       sources."signal-exit-3.0.7"
-      sources."streamroller-3.0.4"
+      sources."streamroller-3.0.6"
       sources."string.prototype.trimend-1.0.4"
       sources."string.prototype.trimstart-1.0.4"
       (sources."string_decoder-1.1.1" // {
@@ -85201,7 +85123,7 @@ in
       sha512 = "LkwQTBlD/chH0BTl7zFMw+M1CKbVIy8W49nVLuB+wmgS3dqnKZo58PRTYkcX2X25/FIWOh/oMSjWoZ8cTck8zQ==";
     };
     dependencies = [
-      sources."prettier-2.5.1"
+      sources."prettier-2.6.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -85216,13 +85138,13 @@ in
   coc-pyright = nodeEnv.buildNodePackage {
     name = "coc-pyright";
     packageName = "coc-pyright";
-    version = "1.1.228";
+    version = "1.1.232";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-pyright/-/coc-pyright-1.1.228.tgz";
-      sha512 = "msCM17jXDDyaTW+wmSRq9DSgkIwj6foeOdQwn37Ny7B2+7iKCsWv0/GmLYj7fZe+is9hXjeGety9dF6tQq+4Wg==";
+      url = "https://registry.npmjs.org/coc-pyright/-/coc-pyright-1.1.232.tgz";
+      sha512 = "1ytGBG4gmz/M/6guRKUvTSltXDpoWlcbqq7RsMi3fFEBhYvSQVpy3MkKgxjkJNVbp+YKuJpcuNAhCIjq0+BHAg==";
     };
     dependencies = [
-      sources."pyright-1.1.228"
+      sources."pyright-1.1.233"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -85296,10 +85218,10 @@ in
   coc-rust-analyzer = nodeEnv.buildNodePackage {
     name = "coc-rust-analyzer";
     packageName = "coc-rust-analyzer";
-    version = "0.60.1";
+    version = "0.61.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-rust-analyzer/-/coc-rust-analyzer-0.60.1.tgz";
-      sha512 = "wEVUE817neA7EpWGZwCYhzUbcJTHyFBihyfljCPIqTTxWF/zcctuhKhzsPzyhrKk18sbX0pBFO+/aubgwBQrow==";
+      url = "https://registry.npmjs.org/coc-rust-analyzer/-/coc-rust-analyzer-0.61.1.tgz";
+      sha512 = "xQtIB93k8SIlK6tOS1XEpdFAypU8mLVWhqsPkfV8Hf7AP3m4prErooMS8Du/9AMRqwL2nQxsBjAwpWYI/gJCgA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -85332,10 +85254,10 @@ in
   coc-snippets = nodeEnv.buildNodePackage {
     name = "coc-snippets";
     packageName = "coc-snippets";
-    version = "3.0.2";
+    version = "3.0.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-snippets/-/coc-snippets-3.0.2.tgz";
-      sha512 = "AQslAPlptSdPE0kTlM146EFnpeS491MqJmYa/O/vmlhd30aQidJmC79wBgrmpGj8T5ergsetb59uFnE3iuW+GQ==";
+      url = "https://registry.npmjs.org/coc-snippets/-/coc-snippets-3.0.5.tgz";
+      sha512 = "fyJwbwX6FJVNb8NMmkyN2JDj5pr/imvfOCePPvkHiQCybnU82YM05+CKpBIAUBfxzwkBLQq64V4D7LD+lrUVLQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -85374,27 +85296,27 @@ in
     dependencies = [
       sources."@ampproject/remapping-2.1.2"
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/compat-data-7.17.0"
-      sources."@babel/core-7.17.5"
-      sources."@babel/generator-7.17.3"
-      sources."@babel/helper-compilation-targets-7.16.7"
+      sources."@babel/compat-data-7.17.7"
+      sources."@babel/core-7.17.8"
+      sources."@babel/generator-7.17.7"
+      sources."@babel/helper-compilation-targets-7.17.7"
       sources."@babel/helper-environment-visitor-7.16.7"
       sources."@babel/helper-function-name-7.16.7"
       sources."@babel/helper-get-function-arity-7.16.7"
       sources."@babel/helper-hoist-variables-7.16.7"
       sources."@babel/helper-module-imports-7.16.7"
-      sources."@babel/helper-module-transforms-7.17.6"
-      sources."@babel/helper-simple-access-7.16.7"
+      sources."@babel/helper-module-transforms-7.17.7"
+      sources."@babel/helper-simple-access-7.17.7"
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/helper-validator-option-7.16.7"
-      sources."@babel/helpers-7.17.2"
+      sources."@babel/helpers-7.17.8"
       (sources."@babel/highlight-7.16.10" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/template-7.16.7"
       sources."@babel/traverse-7.17.3"
       sources."@babel/types-7.17.0"
@@ -85411,7 +85333,7 @@ in
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
       sources."@types/unist-2.0.6"
-      sources."ajv-8.10.0"
+      sources."ajv-8.11.0"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-3.2.1"
       sources."array-union-2.1.0"
@@ -85430,11 +85352,11 @@ in
         ];
       })
       sources."braces-3.0.2"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       (sources."chalk-4.1.2" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
@@ -85454,7 +85376,7 @@ in
       sources."convert-source-map-1.8.0"
       sources."cosmiconfig-7.0.1"
       sources."cssesc-3.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       (sources."decamelize-keys-1.1.0" // {
         dependencies = [
@@ -85471,7 +85393,7 @@ in
       sources."domelementtype-1.3.1"
       sources."domhandler-2.4.2"
       sources."domutils-1.7.0"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       sources."emoji-regex-8.0.0"
       sources."entities-1.1.2"
       sources."error-ex-1.3.2"
@@ -85539,7 +85461,7 @@ in
       sources."jsesc-2.5.2"
       sources."json-parse-even-better-errors-2.3.1"
       sources."json-schema-traverse-1.0.0"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."kind-of-6.0.3"
       sources."known-css-properties-0.21.0"
       sources."lines-and-columns-1.2.4"
@@ -85557,10 +85479,10 @@ in
       sources."meow-9.0.0"
       sources."merge2-1.4.1"
       sources."micromark-2.11.4"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."min-indent-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."minimist-options-4.1.0" // {
         dependencies = [
           sources."is-plain-obj-1.1.0"
@@ -85780,8 +85702,8 @@ in
       sources."js-tokens-4.0.0"
       sources."js-yaml-3.14.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."path-parse-1.0.7"
@@ -85842,13 +85764,13 @@ in
   coc-tsserver = nodeEnv.buildNodePackage {
     name = "coc-tsserver";
     packageName = "coc-tsserver";
-    version = "1.9.14";
+    version = "1.9.15";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-tsserver/-/coc-tsserver-1.9.14.tgz";
-      sha512 = "MiyV1Tq5Jpj6P0t3PVb3IFyrfOm93E29Oz90nCfSdMBW+yY0U4H4uE5V9AKO3zhVFhzHRwalYfaFxf/6VCmkgA==";
+      url = "https://registry.npmjs.org/coc-tsserver/-/coc-tsserver-1.9.15.tgz";
+      sha512 = "7mvLHnOqiXl0sk6mq78SmdIYL0nouIzejpTDgRlRjUrAXTCqXfpFVqfJg+2xASpcGTR5nH1lYMk/LXRrnFltIw==";
     };
     dependencies = [
-      sources."typescript-4.6.2"
+      sources."typescript-4.6.3"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -85926,7 +85848,7 @@ in
       sources."commander-2.20.3"
       sources."concat-map-0.0.1"
       sources."cross-spawn-7.0.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deep-is-0.1.4"
       sources."diff-4.0.2"
       sources."doctrine-3.0.0"
@@ -85976,7 +85898,7 @@ in
       sources."get-intrinsic-1.1.1"
       sources."glob-7.2.0"
       sources."glob-parent-5.1.2"
-      sources."globals-13.12.1"
+      sources."globals-13.13.0"
       sources."has-1.0.3"
       sources."has-flag-3.0.0"
       sources."has-symbols-1.0.3"
@@ -86003,8 +85925,8 @@ in
       sources."lodash.truncate-4.4.2"
       sources."lru-cache-6.0.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.1.2"
       sources."natural-compare-1.4.0"
       sources."object-assign-4.1.1"
@@ -86015,7 +85937,7 @@ in
       sources."path-key-3.1.1"
       sources."path-parse-1.0.7"
       sources."prelude-ls-1.2.1"
-      sources."prettier-2.5.1"
+      sources."prettier-2.6.1"
       sources."progress-2.0.3"
       sources."pug-error-2.0.0"
       sources."pug-lexer-5.0.1"
@@ -86043,7 +85965,7 @@ in
       sources."supports-preserve-symlinks-flag-1.0.0"
       (sources."table-6.8.0" // {
         dependencies = [
-          sources."ajv-8.10.0"
+          sources."ajv-8.11.0"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -86059,7 +85981,7 @@ in
       sources."tsutils-2.29.0"
       sources."type-check-0.4.0"
       sources."type-fest-0.20.2"
-      sources."typescript-4.6.2"
+      sources."typescript-4.6.3"
       sources."uri-js-4.4.1"
       sources."v8-compile-cache-2.3.0"
       sources."vls-0.7.6"
@@ -86105,10 +86027,10 @@ in
   coc-vimtex = nodeEnv.buildNodePackage {
     name = "coc-vimtex";
     packageName = "coc-vimtex";
-    version = "1.1.4";
+    version = "1.1.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-vimtex/-/coc-vimtex-1.1.4.tgz";
-      sha512 = "w3bJrPoNkx5uiydRRPQ5Xqx01voizi0CxTh7/V7MJsuTP+2KNHRselm3cZcit79OyzO9rF1R0PGlDwLgPf54gg==";
+      url = "https://registry.npmjs.org/coc-vimtex/-/coc-vimtex-1.1.5.tgz";
+      sha512 = "3SY6vFcmBO8u6/6zrBzqgwCbus8k7877UCNVEua8lgC+T4tKgB4w9VthikMEcoUDPK17/QbLITSB+yPDNebbHw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -86140,10 +86062,10 @@ in
   coc-yaml = nodeEnv.buildNodePackage {
     name = "coc-yaml";
     packageName = "coc-yaml";
-    version = "1.7.4";
+    version = "1.7.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-yaml/-/coc-yaml-1.7.4.tgz";
-      sha512 = "fmn+qsWUwVTIxoAv0gH4rNZJKXmUZoaOpxomMzJJrQo0PN31cMXZzD55IV0eudk5VLos4ARUBhtsdcxBUfQ15w==";
+      url = "https://registry.npmjs.org/coc-yaml/-/coc-yaml-1.7.5.tgz";
+      sha512 = "1wNDsQB4YwJJLJxzDOyqu2edjwf+KHGM0co63t3N6L6k+XBB4rOenfkN+HgnX0wfRglAmKbMnOKA677XycGReA==";
     };
     dependencies = [
       sources."prettier-2.0.5"
@@ -86260,7 +86182,7 @@ in
       sources."isexe-2.0.0"
       sources."isurl-1.0.0"
       sources."js2xmlparser-4.0.2"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."jsonfile-4.0.0"
       sources."lowercase-keys-1.0.1"
       (sources."make-dir-1.3.0" // {
@@ -86269,8 +86191,8 @@ in
         ];
       })
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."nice-try-1.0.5"
       (sources."npm-conf-1.1.3" // {
         dependencies = [
@@ -86287,7 +86209,7 @@ in
       sources."pify-2.3.0"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
-      sources."plist-3.0.4"
+      sources."plist-3.0.5"
       sources."prepend-http-1.0.4"
       sources."process-nextick-args-2.0.1"
       sources."proto-list-1.2.4"
@@ -86375,7 +86297,7 @@ in
       sha512 = "jARqwj0uyTfbcsTr3IDoaGI6ZXUV8e8qVjw+LaRBujvjgsiWypJweze5IZy0/sjNEKlptwB7GDjmuphtBzngFA==";
     };
     dependencies = [
-      sources."ansi-regex-3.0.0"
+      sources."ansi-regex-3.0.1"
       sources."ansi-styles-3.2.1"
       sources."axios-0.21.4"
       sources."chalk-2.4.2"
@@ -86654,7 +86576,7 @@ in
         ];
       })
       sources."min-indent-1.0.1"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minimist-options-4.1.0"
       sources."modify-values-1.0.1"
       sources."neo-async-2.6.2"
@@ -86767,7 +86689,7 @@ in
       sources."ajv-6.12.6"
       (sources."ajv-formats-2.1.1" // {
         dependencies = [
-          sources."ajv-8.10.0"
+          sources."ajv-8.11.0"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -86856,7 +86778,7 @@ in
       sources."concat-map-0.0.1"
       (sources."conf-10.1.1" // {
         dependencies = [
-          sources."ajv-8.10.0"
+          sources."ajv-8.11.0"
           sources."dot-prop-6.0.1"
           sources."json-schema-traverse-1.0.0"
         ];
@@ -86900,7 +86822,7 @@ in
           sources."mimic-fn-3.1.0"
         ];
       })
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decompress-response-3.3.0"
       sources."dedent-0.7.0"
       sources."deep-extend-0.6.0"
@@ -87014,7 +86936,7 @@ in
       sources."init-package-json-2.0.5"
       (sources."inquirer-6.5.2" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
           sources."color-convert-1.9.3"
@@ -87029,7 +86951,7 @@ in
           })
           (sources."strip-ansi-5.2.0" // {
             dependencies = [
-              sources."ansi-regex-4.1.0"
+              sources."ansi-regex-4.1.1"
             ];
           })
           sources."supports-color-5.5.0"
@@ -87100,14 +87022,14 @@ in
       sources."merge-stream-2.0.0"
       sources."merge2-1.4.1"
       sources."methods-1.1.2"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-3.1.6"
       sources."minipass-collect-1.0.2"
       sources."minipass-fetch-1.4.1"
@@ -87169,7 +87091,7 @@ in
       sources."picomatch-2.3.1"
       sources."pify-4.0.1"
       sources."pkg-up-3.1.0"
-      sources."plist-3.0.4"
+      sources."plist-3.0.5"
       sources."prepend-http-2.0.0"
       sources."process-nextick-args-2.0.1"
       sources."promise-inflight-1.0.1"
@@ -87264,7 +87186,7 @@ in
       sources."strip-json-comments-2.0.1"
       sources."supports-color-7.2.0"
       sources."supports-preserve-symlinks-flag-1.0.0"
-      sources."systeminformation-5.11.7"
+      sources."systeminformation-5.11.9"
       sources."tar-6.1.11"
       sources."through-2.3.8"
       sources."tmp-0.2.1"
@@ -87418,7 +87340,7 @@ in
       sources."map-obj-4.3.0"
       sources."meow-10.1.2"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."min-indent-1.0.1"
       (sources."minimist-options-4.1.0" // {
         dependencies = [
@@ -87494,7 +87416,7 @@ in
       sources."@cycle/run-3.4.0"
       sources."@cycle/time-0.10.1"
       sources."@types/cookiejar-2.1.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/superagent-3.8.2"
       sources."ansi-escapes-3.2.0"
       sources."ansi-regex-2.1.1"
@@ -87525,7 +87447,7 @@ in
       sources."debug-3.2.7"
       sources."define-properties-1.1.3"
       sources."delayed-stream-1.0.0"
-      sources."es5-ext-0.10.58"
+      sources."es5-ext-0.10.59"
       sources."es6-iterator-2.0.3"
       sources."es6-map-0.1.5"
       (sources."es6-set-0.1.5" // {
@@ -87557,7 +87479,7 @@ in
       sources."inherits-2.0.4"
       (sources."inquirer-3.3.0" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."strip-ansi-4.0.0"
         ];
       })
@@ -87575,10 +87497,10 @@ in
       sources."lru-cache-4.1.5"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-1.2.0"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."ms-2.1.3"
       sources."mute-stream-0.0.7"
       sources."next-tick-1.1.0"
@@ -87610,7 +87532,7 @@ in
       sources."sorted-immutable-list-1.1.0"
       (sources."string-width-2.1.1" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."strip-ansi-4.0.0"
         ];
       })
@@ -87683,8 +87605,8 @@ in
       sources."kleur-3.0.3"
       sources."lru-cache-6.0.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
@@ -87758,10 +87680,10 @@ in
   cspell = nodeEnv.buildNodePackage {
     name = "cspell";
     packageName = "cspell";
-    version = "5.18.5";
+    version = "5.19.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/cspell/-/cspell-5.18.5.tgz";
-      sha512 = "rfk7sSZO304olxBXUFfec3YZL0gIyvjggwicGEgsweuh0Efdeq0zMmUV2sMckSOH9TVJdxW/DxTqjG+DLz8w+A==";
+      url = "https://registry.npmjs.org/cspell/-/cspell-5.19.3.tgz";
+      sha512 = "JJBH8iqtHYmxqLQZ+7GAMTVvc6SAoHVgn1tdYknOI2/uxAbZVH29eaxINY7JfjwPuxPPVAvttRetBAIRiu6ZYw==";
     };
     dependencies = [
       sources."@babel/code-frame-7.16.7"
@@ -87776,36 +87698,36 @@ in
           sources."supports-color-5.5.0"
         ];
       })
-      sources."@cspell/cspell-bundled-dicts-5.18.5"
-      sources."@cspell/cspell-pipe-5.18.5"
-      sources."@cspell/cspell-types-5.18.5"
+      sources."@cspell/cspell-bundled-dicts-5.19.3"
+      sources."@cspell/cspell-pipe-5.19.3"
+      sources."@cspell/cspell-types-5.19.3"
       sources."@cspell/dict-ada-2.0.0"
       sources."@cspell/dict-aws-2.0.0"
       sources."@cspell/dict-bash-2.0.1"
-      sources."@cspell/dict-companies-2.0.2"
+      sources."@cspell/dict-companies-2.0.3"
       sources."@cspell/dict-cpp-2.0.0"
       sources."@cspell/dict-cryptocurrencies-2.0.0"
       sources."@cspell/dict-csharp-2.0.1"
       sources."@cspell/dict-css-2.0.0"
       sources."@cspell/dict-dart-1.1.0"
       sources."@cspell/dict-django-2.0.0"
-      sources."@cspell/dict-dotnet-2.0.0"
+      sources."@cspell/dict-dotnet-2.0.1"
       sources."@cspell/dict-elixir-2.0.1"
       sources."@cspell/dict-en-gb-1.1.33"
-      sources."@cspell/dict-en_us-2.1.7"
+      sources."@cspell/dict-en_us-2.2.0"
       sources."@cspell/dict-filetypes-2.0.1"
       sources."@cspell/dict-fonts-2.0.0"
       sources."@cspell/dict-fullstack-2.0.4"
       sources."@cspell/dict-golang-2.0.0"
       sources."@cspell/dict-haskell-2.0.0"
-      sources."@cspell/dict-html-3.0.0"
+      sources."@cspell/dict-html-3.0.1"
       sources."@cspell/dict-html-symbol-entities-2.0.0"
       sources."@cspell/dict-java-2.0.0"
       sources."@cspell/dict-latex-2.0.0"
       sources."@cspell/dict-lorem-ipsum-2.0.0"
       sources."@cspell/dict-lua-2.0.0"
       sources."@cspell/dict-node-2.0.0"
-      sources."@cspell/dict-npm-2.0.1"
+      sources."@cspell/dict-npm-2.0.2"
       sources."@cspell/dict-php-2.0.0"
       sources."@cspell/dict-powershell-2.0.0"
       sources."@cspell/dict-public-licenses-1.0.4"
@@ -87814,7 +87736,7 @@ in
       sources."@cspell/dict-ruby-2.0.1"
       sources."@cspell/dict-rust-2.0.0"
       sources."@cspell/dict-scala-2.0.0"
-      sources."@cspell/dict-software-terms-2.1.3"
+      sources."@cspell/dict-software-terms-2.1.4"
       sources."@cspell/dict-swift-1.0.2"
       sources."@cspell/dict-typescript-2.0.0"
       sources."@cspell/dict-vue-2.0.2"
@@ -87830,18 +87752,18 @@ in
       sources."clear-module-4.1.2"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
-      sources."commander-9.0.0"
+      sources."commander-9.1.0"
       sources."comment-json-4.2.2"
       sources."concat-map-0.0.1"
       sources."configstore-5.0.1"
       sources."core-util-is-1.0.3"
       sources."cosmiconfig-7.0.1"
       sources."crypto-random-string-2.0.0"
-      sources."cspell-gitignore-5.18.5"
-      sources."cspell-glob-5.18.5"
-      sources."cspell-io-5.18.5"
-      sources."cspell-lib-5.18.5"
-      sources."cspell-trie-lib-5.18.5"
+      sources."cspell-gitignore-5.19.3"
+      sources."cspell-glob-5.19.3"
+      sources."cspell-io-5.19.3"
+      sources."cspell-lib-5.19.3"
+      sources."cspell-trie-lib-5.19.3"
       sources."dot-prop-5.3.0"
       sources."error-ex-1.3.2"
       sources."escape-string-regexp-1.0.5"
@@ -87887,7 +87809,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."minimatch-3.1.2"
       sources."once-1.4.0"
       sources."p-limit-3.1.0"
@@ -87910,6 +87832,7 @@ in
       sources."typedarray-to-buffer-3.1.5"
       sources."unique-string-2.0.0"
       sources."universalify-2.0.0"
+      sources."vscode-languageserver-textdocument-1.0.4"
       sources."vscode-uri-3.0.3"
       sources."wrappy-1.0.2"
       sources."write-file-atomic-3.0.3"
@@ -87977,7 +87900,7 @@ in
       sources."ajv-6.12.6"
       sources."ansi-align-2.0.0"
       sources."ansi-diff-1.1.1"
-      sources."ansi-regex-3.0.0"
+      sources."ansi-regex-3.0.1"
       sources."ansi-split-1.0.1"
       sources."ansi-styles-3.2.1"
       sources."anymatch-2.0.0"
@@ -88104,7 +88027,7 @@ in
       sources."dat-registry-4.0.2"
       sources."dat-secret-storage-4.0.2"
       sources."dat-storage-1.1.2"
-      (sources."debug-4.3.3" // {
+      (sources."debug-4.3.4" // {
         dependencies = [
           sources."ms-2.1.2"
         ];
@@ -88278,12 +88201,12 @@ in
       sources."merkle-tree-stream-3.0.3"
       sources."micromatch-3.1.10"
       sources."mime-2.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-response-2.1.0"
       sources."min-document-2.19.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mirror-folder-3.1.0"
       (sources."mixin-deep-1.3.2" // {
         dependencies = [
@@ -88331,7 +88254,7 @@ in
       sources."os-homedir-1.0.2"
       sources."p-finally-1.0.0"
       sources."package-json-4.0.1"
-      sources."parse-headers-2.0.4"
+      sources."parse-headers-2.0.5"
       sources."pascalcase-0.1.1"
       sources."path-is-absolute-1.0.1"
       sources."path-is-inside-1.0.2"
@@ -88357,7 +88280,7 @@ in
       sources."punycode-2.1.1"
       sources."qs-6.5.3"
       sources."queue-tick-1.0.0"
-      sources."random-access-file-2.2.0"
+      sources."random-access-file-2.2.1"
       sources."random-access-memory-3.1.4"
       sources."random-access-storage-1.4.3"
       sources."randombytes-2.1.0"
@@ -88400,7 +88323,7 @@ in
       sources."signed-varint-2.0.1"
       sources."simple-concat-1.0.1"
       sources."simple-get-3.1.1"
-      (sources."siphash24-1.3.0" // {
+      (sources."siphash24-1.3.1" // {
         dependencies = [
           sources."nanoassert-2.0.0"
         ];
@@ -88596,21 +88519,21 @@ in
   "deltachat-desktop-../../applications/networking/instant-messengers/deltachat-desktop" = nodeEnv.buildNodePackage {
     name = "deltachat-desktop";
     packageName = "deltachat-desktop";
-    version = "1.26.0";
+    version = "1.28.0";
     src = ../../applications/networking/instant-messengers/deltachat-desktop;
     dependencies = [
       sources."@ampproject/remapping-2.1.2"
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/compat-data-7.17.0"
-      sources."@babel/core-7.17.5"
-      (sources."@babel/generator-7.17.3" // {
+      sources."@babel/compat-data-7.17.7"
+      sources."@babel/core-7.17.8"
+      (sources."@babel/generator-7.17.7" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
       sources."@babel/helper-annotate-as-pure-7.16.7"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.16.7"
-      sources."@babel/helper-compilation-targets-7.16.7"
+      sources."@babel/helper-compilation-targets-7.17.7"
       sources."@babel/helper-create-class-features-plugin-7.17.6"
       sources."@babel/helper-create-regexp-features-plugin-7.17.0"
       sources."@babel/helper-define-polyfill-provider-0.3.1"
@@ -88619,22 +88542,22 @@ in
       sources."@babel/helper-function-name-7.16.7"
       sources."@babel/helper-get-function-arity-7.16.7"
       sources."@babel/helper-hoist-variables-7.16.7"
-      sources."@babel/helper-member-expression-to-functions-7.16.7"
+      sources."@babel/helper-member-expression-to-functions-7.17.7"
       sources."@babel/helper-module-imports-7.16.7"
-      sources."@babel/helper-module-transforms-7.17.6"
+      sources."@babel/helper-module-transforms-7.17.7"
       sources."@babel/helper-optimise-call-expression-7.16.7"
       sources."@babel/helper-plugin-utils-7.16.7"
       sources."@babel/helper-remap-async-to-generator-7.16.8"
       sources."@babel/helper-replace-supers-7.16.7"
-      sources."@babel/helper-simple-access-7.16.7"
+      sources."@babel/helper-simple-access-7.17.7"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.16.0"
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/helper-validator-option-7.16.7"
       sources."@babel/helper-wrap-function-7.16.8"
-      sources."@babel/helpers-7.17.2"
+      sources."@babel/helpers-7.17.8"
       sources."@babel/highlight-7.16.10"
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7"
       sources."@babel/plugin-proposal-async-generator-functions-7.16.8"
@@ -88673,7 +88596,7 @@ in
       sources."@babel/plugin-transform-block-scoping-7.16.7"
       sources."@babel/plugin-transform-classes-7.16.7"
       sources."@babel/plugin-transform-computed-properties-7.16.7"
-      sources."@babel/plugin-transform-destructuring-7.17.3"
+      sources."@babel/plugin-transform-destructuring-7.17.7"
       sources."@babel/plugin-transform-dotall-regex-7.16.7"
       sources."@babel/plugin-transform-duplicate-keys-7.16.7"
       sources."@babel/plugin-transform-exponentiation-operator-7.16.7"
@@ -88682,8 +88605,8 @@ in
       sources."@babel/plugin-transform-literals-7.16.7"
       sources."@babel/plugin-transform-member-expression-literals-7.16.7"
       sources."@babel/plugin-transform-modules-amd-7.16.7"
-      sources."@babel/plugin-transform-modules-commonjs-7.16.8"
-      sources."@babel/plugin-transform-modules-systemjs-7.16.7"
+      sources."@babel/plugin-transform-modules-commonjs-7.17.7"
+      sources."@babel/plugin-transform-modules-systemjs-7.17.8"
       sources."@babel/plugin-transform-modules-umd-7.16.7"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.16.8"
       sources."@babel/plugin-transform-new-target-7.16.7"
@@ -88706,19 +88629,20 @@ in
       sources."@babel/preset-env-7.16.11"
       sources."@babel/preset-modules-0.1.5"
       sources."@babel/preset-react-7.16.7"
-      sources."@babel/runtime-7.17.2"
+      sources."@babel/runtime-7.17.8"
       sources."@babel/template-7.16.7"
       sources."@babel/traverse-7.17.3"
       sources."@babel/types-7.17.0"
-      sources."@blueprintjs/colors-4.0.0-rc.0"
-      sources."@blueprintjs/core-3.53.0"
-      sources."@blueprintjs/icons-3.32.0"
-      sources."@deltachat/message_parser_wasm-0.1.0"
-      sources."@electron/get-1.13.1"
+      sources."@blueprintjs/colors-4.0.1"
+      sources."@blueprintjs/core-3.54.0"
+      sources."@blueprintjs/icons-3.33.0"
+      sources."@deltachat/message_parser_wasm-0.3.0"
+      sources."@electron/get-1.14.1"
       sources."@hypnosphi/create-react-context-0.3.1"
       sources."@jridgewell/resolve-uri-3.0.5"
       sources."@jridgewell/sourcemap-codec-1.4.11"
       sources."@jridgewell/trace-mapping-0.3.4"
+      sources."@juggle/resize-observer-3.3.1"
       sources."@mapbox/extent-0.4.0"
       sources."@mapbox/geojson-coords-0.0.2"
       sources."@mapbox/geojson-extent-1.0.1"
@@ -88787,7 +88711,7 @@ in
           sources."extend-shallow-2.0.1"
         ];
       })
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."buffer-crc32-0.2.13"
       sources."buffer-from-1.1.2"
       sources."cache-base-1.0.1"
@@ -88798,7 +88722,7 @@ in
         ];
       })
       sources."call-bind-1.0.2"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       sources."chalk-2.4.2"
       sources."chokidar-2.1.8"
       (sources."class-utils-0.3.6" // {
@@ -88849,7 +88773,7 @@ in
       sources."csscolorparser-1.0.3"
       sources."csstype-3.0.11"
       sources."debounce-1.2.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decode-uri-component-0.2.0"
       sources."decompress-response-3.3.0"
       sources."deep-equal-1.1.1"
@@ -88858,21 +88782,21 @@ in
       sources."define-properties-1.1.3"
       sources."define-property-2.0.2"
       sources."delayed-stream-1.0.0"
-      sources."deltachat-node-1.70.0"
+      sources."deltachat-node-1.76.0"
       sources."detect-node-2.1.0"
       sources."dom-helpers-3.4.0"
       sources."dom4-2.1.6"
       sources."duplexer3-0.1.4"
       sources."earcut-2.2.3"
-      sources."electron-13.6.9"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-14.2.8"
+      sources."electron-to-chromium-1.4.96"
       sources."emoji-js-clean-4.0.0"
       sources."emoji-mart-3.0.1"
       sources."emoji-regex-9.2.2"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
       sources."env-paths-2.2.1"
-      sources."error-stack-parser-2.0.6"
+      sources."error-stack-parser-2.0.7"
       sources."es6-error-4.1.1"
       sources."esbuild-0.12.29"
       sources."escalade-3.1.1"
@@ -89001,7 +88925,7 @@ in
       sources."jsesc-2.5.2"
       sources."json-buffer-3.0.0"
       sources."json-stringify-safe-5.0.1"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."jsonfile-4.0.0"
       sources."jsqr-1.4.0"
       sources."just-debounce-1.1.0"
@@ -89010,7 +88934,6 @@ in
       sources."kind-of-6.0.3"
       sources."lodash-4.17.21"
       sources."lodash.debounce-4.0.8"
-      sources."lodash.pick-4.4.0"
       sources."loose-envify-1.4.0"
       sources."lowercase-keys-1.0.1"
       sources."lru-cache-6.0.0"
@@ -89028,16 +88951,16 @@ in
       })
       sources."memoize-one-5.2.1"
       sources."micromatch-3.1.10"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-response-1.0.1"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."mixin-deep-1.3.2" // {
         dependencies = [
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."moment-2.29.1"
       sources."ms-2.1.2"
       sources."murmurhash-js-1.0.0"
@@ -89104,11 +89027,12 @@ in
       sources."react-popper-1.3.11"
       sources."react-qr-reader-2.2.1"
       sources."react-qr-svg-2.4.0"
-      sources."react-string-replace-0.4.4"
+      sources."react-string-replace-1.0.0"
       sources."react-transition-group-2.9.0"
       sources."react-virtualized-auto-sizer-1.0.6"
       sources."react-window-1.8.6"
       sources."react-window-infinite-loader-1.0.7"
+      sources."react-zoom-pan-pinch-2.1.3"
       sources."readable-stream-3.6.0"
       (sources."readdirp-2.2.1" // {
         dependencies = [
@@ -89134,7 +89058,6 @@ in
       sources."repeat-element-1.1.4"
       sources."repeat-string-1.6.1"
       sources."requires-port-1.0.0"
-      sources."resize-observer-polyfill-1.5.1"
       sources."resolve-1.22.0"
       sources."resolve-protobuf-schema-2.1.0"
       sources."resolve-url-0.2.1"
@@ -89253,12 +89176,12 @@ in
       sources."to-regex-range-2.1.1"
       sources."tr46-0.0.3"
       sources."traverse-0.6.6"
-      sources."tslib-1.13.0"
+      sources."tslib-2.3.1"
       sources."tunnel-0.0.6"
       sources."type-fest-0.3.1"
       sources."typed-styles-0.0.7"
       sources."typedarray-0.0.6"
-      sources."typescript-4.6.2"
+      sources."typescript-4.6.3"
       sources."unicode-canonical-property-names-ecmascript-2.0.0"
       sources."unicode-match-property-ecmascript-2.0.0"
       sources."unicode-match-property-value-ecmascript-2.0.0"
@@ -89309,7 +89232,7 @@ in
       sha512 = "SfKVTg5qqe5aXSrSAXABM1yJl3OjekhSg6ryJyLjK1015waNj9fmMq8SrHI6qWuICtiprfYbh/f55giBJcC9Ag==";
     };
     dependencies = [
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -89366,7 +89289,7 @@ in
       sources."locate-path-5.0.0"
       sources."lodash-4.17.21"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."minimatch-3.1.2"
       sources."once-1.4.0"
       sources."p-limit-2.3.0"
@@ -89420,10 +89343,10 @@ in
       sources."dockerfile-language-service-0.8.1"
       sources."dockerfile-utils-0.9.4"
       sources."vscode-jsonrpc-8.0.0-next.7"
-      sources."vscode-languageserver-8.0.0-next.9"
-      (sources."vscode-languageserver-protocol-3.17.0-next.15" // {
+      sources."vscode-languageserver-8.0.0-next.10"
+      (sources."vscode-languageserver-protocol-3.17.0-next.16" // {
         dependencies = [
-          sources."vscode-languageserver-types-3.17.0-next.8"
+          sources."vscode-languageserver-types-3.17.0-next.9"
         ];
       })
       sources."vscode-languageserver-textdocument-1.0.4"
@@ -89442,10 +89365,10 @@ in
   elasticdump = nodeEnv.buildNodePackage {
     name = "elasticdump";
     packageName = "elasticdump";
-    version = "6.81.0";
+    version = "6.82.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/elasticdump/-/elasticdump-6.81.0.tgz";
-      sha512 = "1arvWQ1t2RILTEa90GW3LAMkAEO5Vjw7i8+pFHs7tbFu16XclvTfEFoD2a9/YiB7CwZQPSGQKZy1XUEYqI21tg==";
+      url = "https://registry.npmjs.org/elasticdump/-/elasticdump-6.82.1.tgz";
+      sha512 = "21LnOw92tD3UXOP0/yaWYBig5p28N5q8TTgL64mkIkNWUIKA2gOa+UO+Enejs1Mubo36jNX830w2ea1uJfHcLg==";
     };
     dependencies = [
       sources."@fast-csv/format-4.3.5"
@@ -89457,7 +89380,7 @@ in
       sources."assert-plus-1.0.0"
       sources."async-2.6.3"
       sources."asynckit-0.4.0"
-      sources."aws-sdk-2.1085.0"
+      sources."aws-sdk-2.1097.0"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.11.0"
       sources."base64-js-1.5.1"
@@ -89517,9 +89440,9 @@ in
       sources."lodash.uniq-4.5.0"
       sources."lossless-json-1.0.5"
       sources."method-missing-1.2.4"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
-      sources."minimist-1.2.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
+      sources."minimist-1.2.6"
       sources."oauth-sign-0.9.0"
       sources."p-finally-1.0.0"
       sources."p-queue-6.6.2"
@@ -89611,7 +89534,7 @@ in
       sources."@electron-forge/template-typescript-6.0.0-beta.63"
       sources."@electron-forge/template-typescript-webpack-6.0.0-beta.63"
       sources."@electron-forge/template-webpack-6.0.0-beta.63"
-      (sources."@electron/get-1.13.1" // {
+      (sources."@electron/get-1.14.1" // {
         dependencies = [
           sources."@sindresorhus/is-0.14.0"
           sources."@szmarczak/http-timer-1.1.2"
@@ -89650,9 +89573,9 @@ in
       sources."@types/cacheable-request-6.0.2"
       sources."@types/glob-7.2.0"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/keyv-3.1.3"
+      sources."@types/keyv-3.1.4"
       sources."@types/minimatch-3.0.5"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/responselike-1.0.0"
       sources."@types/yauzl-2.9.2"
       sources."abbrev-1.1.1"
@@ -89728,7 +89651,7 @@ in
         ];
       })
       sources."dashdash-1.14.1"
-      (sources."debug-4.3.3" // {
+      (sources."debug-4.3.4" // {
         dependencies = [
           sources."ms-2.1.2"
         ];
@@ -89753,7 +89676,7 @@ in
       sources."detect-node-2.1.0"
       sources."duplexer3-0.1.4"
       sources."ecc-jsbn-0.1.2"
-      (sources."electron-notarize-1.1.1" // {
+      (sources."electron-notarize-1.2.1" // {
         dependencies = [
           sources."fs-extra-9.1.0"
         ];
@@ -89882,7 +89805,7 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
-      sources."inquirer-8.2.1"
+      sources."inquirer-8.2.2"
       sources."ip-1.1.5"
       sources."is-arrayish-0.2.1"
       sources."is-core-module-2.8.1"
@@ -89928,13 +89851,13 @@ in
       })
       sources."mem-4.3.0"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."micromatch-4.0.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-3.1.6"
       sources."minipass-collect-1.0.2"
       sources."minipass-fetch-1.4.1"
@@ -90015,7 +89938,7 @@ in
           sources."path-exists-4.0.0"
         ];
       })
-      sources."plist-3.0.4"
+      sources."plist-3.0.5"
       sources."prepend-http-2.0.0"
       sources."pretty-bytes-4.0.2"
       sources."pretty-ms-7.0.1"
@@ -90138,7 +90061,7 @@ in
       sources."xtend-2.1.2"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      (sources."yargs-17.3.1" // {
+      (sources."yargs-17.4.0" // {
         dependencies = [
           sources."yargs-parser-21.0.1"
         ];
@@ -90196,15 +90119,15 @@ in
     dependencies = [
       sources."@ampproject/remapping-2.1.2"
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/compat-data-7.17.0"
-      (sources."@babel/core-7.17.5" // {
+      sources."@babel/compat-data-7.17.7"
+      (sources."@babel/core-7.17.8" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/generator-7.17.3"
+      sources."@babel/generator-7.17.7"
       sources."@babel/helper-annotate-as-pure-7.16.7"
-      (sources."@babel/helper-compilation-targets-7.16.7" // {
+      (sources."@babel/helper-compilation-targets-7.17.7" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
@@ -90214,19 +90137,19 @@ in
       sources."@babel/helper-get-function-arity-7.16.7"
       sources."@babel/helper-hoist-variables-7.16.7"
       sources."@babel/helper-module-imports-7.16.7"
-      sources."@babel/helper-module-transforms-7.17.6"
+      sources."@babel/helper-module-transforms-7.17.7"
       sources."@babel/helper-plugin-utils-7.16.7"
-      sources."@babel/helper-simple-access-7.16.7"
+      sources."@babel/helper-simple-access-7.17.7"
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/helper-validator-option-7.16.7"
-      sources."@babel/helpers-7.17.2"
+      sources."@babel/helpers-7.17.8"
       sources."@babel/highlight-7.16.10"
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/plugin-proposal-object-rest-spread-7.17.3"
       sources."@babel/plugin-syntax-jsx-7.16.7"
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
-      sources."@babel/plugin-transform-destructuring-7.17.3"
+      sources."@babel/plugin-transform-destructuring-7.17.7"
       sources."@babel/plugin-transform-parameters-7.16.7"
       sources."@babel/plugin-transform-react-jsx-7.17.3"
       sources."@babel/template-7.16.7"
@@ -90253,13 +90176,13 @@ in
       sources."auto-bind-4.0.0"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."caller-callsite-4.1.0"
       sources."caller-path-3.0.1"
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       sources."chalk-2.4.2"
       sources."ci-info-2.0.0"
       sources."cli-boxes-2.2.1"
@@ -90280,7 +90203,7 @@ in
       sources."convert-to-spaces-1.0.2"
       sources."cross-spawn-6.0.5"
       sources."debounce-fn-4.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       (sources."decamelize-keys-1.1.0" // {
         dependencies = [
@@ -90288,7 +90211,7 @@ in
         ];
       })
       sources."dot-prop-5.3.0"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       sources."emoji-regex-8.0.0"
       sources."emojilib-2.4.0"
       sources."end-of-stream-1.4.4"
@@ -90351,7 +90274,7 @@ in
       sources."json-parse-even-better-errors-2.3.1"
       sources."json-schema-traverse-0.4.1"
       sources."json-schema-typed-7.0.3"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."kind-of-6.0.3"
       sources."lines-and-columns-1.2.4"
       sources."locate-path-3.0.0"
@@ -90374,7 +90297,6 @@ in
       sources."mimic-fn-3.1.0"
       sources."min-indent-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
       sources."minimist-options-4.1.0"
       sources."ms-2.1.2"
       sources."nice-try-1.0.5"
@@ -90414,7 +90336,7 @@ in
       sources."punycode-2.1.1"
       sources."quick-lru-4.0.1"
       sources."react-16.14.0"
-      sources."react-devtools-core-4.24.0"
+      sources."react-devtools-core-4.24.2"
       sources."react-is-16.13.1"
       sources."react-reconciler-0.26.2"
       (sources."read-pkg-5.2.0" // {
@@ -90543,7 +90465,7 @@ in
       (sources."@eslint/eslintrc-0.4.3" // {
         dependencies = [
           sources."ajv-6.12.6"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ignore-4.0.6"
           sources."js-yaml-3.14.1"
           sources."json-schema-traverse-0.4.1"
@@ -90551,20 +90473,20 @@ in
           sources."strip-json-comments-3.1.1"
         ];
       })
-      sources."@fluentui/date-time-utilities-8.4.0"
+      sources."@fluentui/date-time-utilities-8.5.0"
       sources."@fluentui/dom-utilities-2.2.0"
-      sources."@fluentui/font-icons-mdl2-8.2.4"
-      sources."@fluentui/foundation-legacy-8.2.4"
+      sources."@fluentui/font-icons-mdl2-8.2.5"
+      sources."@fluentui/foundation-legacy-8.2.5"
       sources."@fluentui/keyboard-key-0.4.0"
       sources."@fluentui/merge-styles-8.5.0"
-      sources."@fluentui/react-8.60.3"
-      sources."@fluentui/react-focus-8.5.4"
-      sources."@fluentui/react-hooks-8.5.2"
+      sources."@fluentui/react-8.62.3"
+      sources."@fluentui/react-focus-8.5.6"
+      sources."@fluentui/react-hooks-8.5.3"
       sources."@fluentui/react-window-provider-2.2.0"
       sources."@fluentui/set-version-8.2.0"
-      sources."@fluentui/style-utilities-8.6.4"
-      sources."@fluentui/theme-2.6.3"
-      sources."@fluentui/utilities-8.8.0"
+      sources."@fluentui/style-utilities-8.6.5"
+      sources."@fluentui/theme-2.6.4"
+      sources."@fluentui/utilities-8.8.1"
       (sources."@gulp-sourcemaps/identity-map-2.0.1" // {
         dependencies = [
           sources."acorn-6.4.2"
@@ -90579,12 +90501,12 @@ in
       })
       (sources."@humanwhocodes/config-array-0.5.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."@humanwhocodes/object-schema-1.2.1"
-      sources."@microsoft/load-themed-styles-1.10.247"
+      sources."@microsoft/load-themed-styles-1.10.249"
       sources."@node-rs/crc32-1.5.0"
       sources."@node-rs/crc32-android-arm-eabi-1.5.0"
       sources."@node-rs/crc32-android-arm64-1.5.0"
@@ -90620,7 +90542,7 @@ in
       sources."@types/express-serve-static-core-4.17.28"
       sources."@types/file-type-10.9.1"
       sources."@types/js-yaml-4.0.4"
-      sources."@types/json-schema-7.0.9"
+      sources."@types/json-schema-7.0.11"
       sources."@types/lodash-4.14.176"
       sources."@types/mime-1.3.2"
       sources."@types/minimist-1.2.2"
@@ -90641,14 +90563,14 @@ in
       sources."@types/ws-6.0.4"
       (sources."@typescript-eslint/eslint-plugin-4.33.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."@typescript-eslint/experimental-utils-4.33.0"
       (sources."@typescript-eslint/parser-4.33.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -90656,7 +90578,7 @@ in
       sources."@typescript-eslint/types-4.33.0"
       (sources."@typescript-eslint/typescript-estree-4.33.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -90667,7 +90589,7 @@ in
       sources."acorn-jsx-5.3.2"
       sources."acorn-walk-8.2.0"
       sources."aggregate-error-3.1.0"
-      sources."ajv-8.10.0"
+      sources."ajv-8.11.0"
       sources."ajv-formats-2.1.1"
       sources."ansi-colors-4.1.1"
       sources."ansi-cyan-0.1.1"
@@ -90779,7 +90701,7 @@ in
       sources."body-parser-1.19.0"
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
-      sources."bson-4.6.1"
+      sources."bson-4.6.2"
       sources."buffer-5.7.1"
       sources."buffer-equal-1.0.0"
       sources."buffer-from-1.1.2"
@@ -90978,7 +90900,7 @@ in
       (sources."engine.io-6.0.1" // {
         dependencies = [
           sources."cookie-0.4.2"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
           sources."ws-8.2.3"
         ];
@@ -90987,7 +90909,7 @@ in
       sources."enhanced-resolve-5.9.2"
       sources."enquirer-2.3.6"
       sources."error-ex-1.3.2"
-      sources."es5-ext-0.10.58"
+      sources."es5-ext-0.10.59"
       sources."es6-iterator-2.0.3"
       sources."es6-symbol-3.1.3"
       sources."es6-weak-map-2.0.3"
@@ -90998,7 +90920,7 @@ in
         dependencies = [
           sources."ajv-6.12.6"
           sources."ansi-regex-5.0.1"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."escape-string-regexp-4.0.0"
           (sources."eslint-utils-2.1.0" // {
             dependencies = [
@@ -91138,7 +91060,8 @@ in
       sources."fsevents-1.2.13"
       (sources."fstream-1.0.12" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."minimist-1.2.6"
+          sources."mkdirp-0.5.6"
         ];
       })
       sources."function-bind-1.1.1"
@@ -91163,7 +91086,7 @@ in
       sources."glob-watcher-5.0.5"
       sources."global-modules-1.0.0"
       sources."global-prefix-1.0.2"
-      sources."globals-13.12.1"
+      sources."globals-13.13.0"
       sources."globby-11.1.0"
       sources."glogg-1.0.2"
       sources."got-9.6.0"
@@ -91183,7 +91106,7 @@ in
       (sources."gulp-eslint-6.0.0" // {
         dependencies = [
           sources."ajv-6.12.6"
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."ansi-styles-3.2.1"
           sources."astral-regex-1.0.0"
           sources."chalk-2.4.2"
@@ -91194,7 +91117,7 @@ in
               sources."semver-5.7.1"
             ];
           })
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."emoji-regex-7.0.3"
           sources."eslint-6.8.0"
           sources."eslint-utils-1.4.3"
@@ -91209,7 +91132,8 @@ in
           sources."js-yaml-3.14.1"
           sources."json-schema-traverse-0.4.1"
           sources."levn-0.3.0"
-          sources."mkdirp-0.5.5"
+          sources."minimist-1.2.6"
+          sources."mkdirp-0.5.6"
           sources."ms-2.1.2"
           sources."optionator-0.8.3"
           sources."path-key-2.0.1"
@@ -91380,7 +91304,7 @@ in
       sources."lodash.truncate-4.4.2"
       (sources."log4js-6.3.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -91411,10 +91335,10 @@ in
       sources."merge-descriptors-1.0.1"
       sources."merge2-1.4.1"
       sources."methods-1.1.2"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
@@ -91478,7 +91402,7 @@ in
             ];
           })
           sources."openapi-types-7.2.3"
-          sources."swagger-ui-dist-4.6.2"
+          sources."swagger-ui-dist-4.9.1"
         ];
       })
       (sources."mixin-deep-1.3.2" // {
@@ -91497,7 +91421,8 @@ in
       sources."ms-2.0.0"
       (sources."multer-1.4.3" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."minimist-1.2.6"
+          sources."mkdirp-0.5.6"
         ];
       })
       sources."mute-stdout-1.0.1"
@@ -91525,7 +91450,8 @@ in
       sources."node-addon-api-3.2.1"
       (sources."node-gyp-3.8.0" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."minimist-1.2.6"
+          sources."mkdirp-0.5.6"
           sources."nopt-3.0.6"
           sources."semver-5.3.0"
           sources."tar-2.2.2"
@@ -91534,7 +91460,8 @@ in
       sources."node-gyp-build-4.3.0"
       (sources."node-pre-gyp-0.11.0" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."minimist-1.2.6"
+          sources."mkdirp-0.5.6"
           sources."semver-5.7.1"
         ];
       })
@@ -91825,14 +91752,14 @@ in
       })
       (sources."socket.io-4.3.1" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."socket.io-adapter-2.3.3"
       (sources."socket.io-parser-4.0.4" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -91876,7 +91803,7 @@ in
       (sources."streamroller-2.2.4" // {
         dependencies = [
           sources."date-format-2.1.0"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -91909,7 +91836,8 @@ in
       sources."tapable-2.2.1"
       (sources."tar-4.4.19" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."minimist-1.2.6"
+          sources."mkdirp-0.5.6"
           sources."safe-buffer-5.2.1"
           sources."yallist-3.1.1"
         ];
@@ -91966,7 +91894,7 @@ in
       (sources."typeorm-0.2.38" // {
         dependencies = [
           sources."buffer-6.0.3"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -92044,7 +91972,8 @@ in
       sources."wrappy-1.0.2"
       (sources."write-1.0.3" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."minimist-1.2.6"
+          sources."mkdirp-0.5.6"
         ];
       })
       sources."ws-6.2.2"
@@ -92060,7 +91989,7 @@ in
           sources."supports-color-2.0.0"
         ];
       })
-      (sources."yargs-17.3.1" // {
+      (sources."yargs-17.4.0" // {
         dependencies = [
           sources."ansi-regex-5.0.1"
           sources."is-fullwidth-code-point-3.0.0"
@@ -92090,6 +92019,7 @@ in
     version = "2.6.20";
     src = ../../applications/video/epgstation/client;
     dependencies = [
+      sources."@achrinza/node-ipc-9.2.2"
       sources."@babel/code-frame-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/highlight-7.16.10"
@@ -92111,6 +92041,7 @@ in
       sources."@intervolga/optimize-cssnano-plugin-1.0.6"
       sources."@mdi/font-6.5.95"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
+      sources."@node-ipc/js-queue-2.0.3"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
@@ -92135,13 +92066,13 @@ in
       sources."@types/glob-7.2.0"
       sources."@types/hls.js-0.13.3"
       sources."@types/http-proxy-1.17.8"
-      sources."@types/json-schema-7.0.9"
+      sources."@types/json-schema-7.0.11"
       sources."@types/json-stable-stringify-1.0.33"
       sources."@types/lodash-4.14.178"
       sources."@types/mime-1.3.2"
       sources."@types/minimatch-3.0.5"
       sources."@types/minimist-1.2.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
       sources."@types/q-1.5.5"
@@ -92176,7 +92107,7 @@ in
       sources."@typescript-eslint/types-4.33.0"
       sources."@typescript-eslint/typescript-estree-4.33.0"
       sources."@typescript-eslint/visitor-keys-4.33.0"
-      sources."@vue/cli-overlay-4.5.15"
+      sources."@vue/cli-overlay-4.5.17"
       (sources."@vue/cli-plugin-eslint-4.5.12" // {
         dependencies = [
           sources."@nodelib/fs.stat-1.1.3"
@@ -92212,7 +92143,7 @@ in
           sources."to-regex-range-2.1.1"
         ];
       })
-      sources."@vue/cli-plugin-router-4.5.15"
+      sources."@vue/cli-plugin-router-4.5.17"
       (sources."@vue/cli-plugin-typescript-4.5.13" // {
         dependencies = [
           sources."@nodelib/fs.stat-1.1.3"
@@ -92263,7 +92194,7 @@ in
           sources."universalify-0.1.2"
         ];
       })
-      (sources."@vue/cli-shared-utils-4.5.15" // {
+      (sources."@vue/cli-shared-utils-4.5.17" // {
         dependencies = [
           sources."lru-cache-5.1.1"
           sources."semver-6.3.0"
@@ -92318,7 +92249,7 @@ in
         ];
       })
       sources."ansi-html-community-0.0.8"
-      sources."ansi-regex-4.1.0"
+      sources."ansi-regex-4.1.1"
       sources."ansi-styles-3.2.1"
       sources."any-promise-1.3.0"
       sources."anymatch-3.1.2"
@@ -92414,7 +92345,7 @@ in
         ];
       })
       sources."browserify-zlib-0.2.0"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."buffer-4.9.2"
       sources."buffer-from-1.1.2"
       sources."buffer-indexof-1.1.1"
@@ -92456,7 +92387,7 @@ in
       sources."camel-case-3.0.0"
       sources."camelcase-5.3.1"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       sources."case-sensitive-paths-webpack-plugin-2.4.0"
       sources."caseless-0.12.0"
       sources."chalk-2.4.2"
@@ -92622,7 +92553,7 @@ in
       sources."dashdash-1.14.1"
       sources."date-fns-2.28.0"
       sources."de-indent-1.0.2"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decache-4.6.1"
       sources."decamelize-1.2.0"
       sources."decode-uri-component-0.2.0"
@@ -92682,7 +92613,7 @@ in
       })
       sources."domain-browser-1.2.0"
       sources."domelementtype-1.3.1"
-      (sources."domhandler-4.3.0" // {
+      (sources."domhandler-4.3.1" // {
         dependencies = [
           sources."domelementtype-2.2.0"
         ];
@@ -92697,7 +92628,7 @@ in
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
       sources."ejs-2.7.4"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -92920,7 +92851,7 @@ in
       sources."glob-7.2.0"
       sources."glob-parent-5.1.2"
       sources."glob-to-regexp-0.3.0"
-      (sources."globals-13.12.1" // {
+      (sources."globals-13.13.0" // {
         dependencies = [
           sources."type-fest-0.20.2"
         ];
@@ -93094,7 +93025,6 @@ in
       sources."isstream-0.1.2"
       sources."javascript-stringify-2.1.0"
       sources."js-message-1.0.7"
-      sources."js-queue-2.0.2"
       sources."js-tokens-4.0.0"
       sources."js-yaml-3.14.1"
       sources."jsbn-0.1.1"
@@ -93159,15 +93089,15 @@ in
       sources."merge2-1.4.1"
       sources."methods-1.1.2"
       sources."microevent.ts-0.1.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       (sources."miller-rabin-4.0.1" // {
         dependencies = [
           sources."bn.js-4.12.0"
         ];
       })
       sources."mime-2.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-1.2.0"
       (sources."mini-css-extract-plugin-0.9.0" // {
         dependencies = [
@@ -93177,7 +93107,7 @@ in
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-3.1.6"
       sources."mississippi-3.0.0"
       (sources."mixin-deep-1.3.2" // {
@@ -93185,7 +93115,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."move-concurrently-1.0.1"
       sources."mpegts.js-1.6.10"
       sources."ms-2.1.2"
@@ -93201,7 +93131,6 @@ in
       sources."nice-try-1.0.5"
       sources."no-case-2.3.2"
       sources."node-forge-0.10.0"
-      sources."node-ipc-9.2.1"
       (sources."node-libs-browser-2.2.1" // {
         dependencies = [
           sources."punycode-1.4.1"
@@ -93220,7 +93149,7 @@ in
       sources."nth-check-1.0.2"
       (sources."null-loader-4.0.1" // {
         dependencies = [
-          sources."json5-2.2.0"
+          sources."json5-2.2.1"
           sources."loader-utils-2.0.2"
           sources."schema-utils-3.1.1"
         ];
@@ -93534,7 +93463,7 @@ in
       sources."sass-1.32.12"
       (sources."sass-loader-10.2.0" // {
         dependencies = [
-          sources."json5-2.2.0"
+          sources."json5-2.2.1"
           sources."loader-utils-2.0.2"
           sources."schema-utils-3.1.1"
         ];
@@ -93718,7 +93647,7 @@ in
       sources."svgo-1.3.2"
       (sources."table-6.8.0" // {
         dependencies = [
-          sources."ajv-8.10.0"
+          sources."ajv-8.11.0"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -93860,7 +93789,7 @@ in
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."has-flag-4.0.0"
-          sources."json5-2.2.0"
+          sources."json5-2.2.1"
           sources."loader-utils-2.0.2"
           sources."supports-color-7.2.0"
         ];
@@ -93879,7 +93808,7 @@ in
       (sources."vuetify-loader-1.7.3" // {
         dependencies = [
           sources."file-loader-6.2.0"
-          sources."json5-2.2.0"
+          sources."json5-2.2.1"
           sources."loader-utils-2.0.2"
           sources."schema-utils-3.1.1"
         ];
@@ -93940,7 +93869,7 @@ in
           sources."chokidar-2.1.8"
           (sources."cliui-5.0.0" // {
             dependencies = [
-              sources."ansi-regex-4.1.0"
+              sources."ansi-regex-4.1.1"
               sources."strip-ansi-5.2.0"
             ];
           })
@@ -93967,7 +93896,7 @@ in
           sources."semver-6.3.0"
           (sources."string-width-3.1.0" // {
             dependencies = [
-              sources."ansi-regex-4.1.0"
+              sources."ansi-regex-4.1.1"
               sources."strip-ansi-5.2.0"
             ];
           })
@@ -93976,7 +93905,7 @@ in
           sources."to-regex-range-2.1.1"
           (sources."wrap-ansi-5.1.0" // {
             dependencies = [
-              sources."ansi-regex-4.1.0"
+              sources."ansi-regex-4.1.1"
               sources."strip-ansi-5.2.0"
             ];
           })
@@ -94062,17 +93991,13 @@ in
   eslint = nodeEnv.buildNodePackage {
     name = "eslint";
     packageName = "eslint";
-    version = "8.10.0";
+    version = "8.12.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/eslint/-/eslint-8.10.0.tgz";
-      sha512 = "tcI1D9lfVec+R4LE1mNDnzoJ/f71Kl/9Cv4nG47jOueCMBrCCKYXr4AUVS7go6mWYGFD4+EoN6+eXSrEbRzXVw==";
+      url = "https://registry.npmjs.org/eslint/-/eslint-8.12.0.tgz";
+      sha512 = "it1oBL9alZg1S8UycLm5YDMAkIhtH6FtAzuZs6YvoGVldWjbS08BkAdb/ymP9LlAyq8koANu32U7Ib/w+UNh8Q==";
     };
     dependencies = [
-      (sources."@eslint/eslintrc-1.2.0" // {
-        dependencies = [
-          sources."ignore-4.0.6"
-        ];
-      })
+      sources."@eslint/eslintrc-1.2.1"
       sources."@humanwhocodes/config-array-0.9.5"
       sources."@humanwhocodes/object-schema-1.2.1"
       sources."acorn-8.7.0"
@@ -94089,7 +94014,7 @@ in
       sources."color-name-1.1.4"
       sources."concat-map-0.0.1"
       sources."cross-spawn-7.0.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deep-is-0.1.4"
       sources."doctrine-3.0.0"
       sources."escape-string-regexp-4.0.0"
@@ -94115,7 +94040,7 @@ in
       sources."functional-red-black-tree-1.0.1"
       sources."glob-7.2.0"
       sources."glob-parent-6.0.2"
-      sources."globals-13.12.1"
+      sources."globals-13.13.0"
       sources."has-flag-4.0.0"
       sources."ignore-5.2.0"
       sources."import-fresh-3.3.0"
@@ -94213,7 +94138,7 @@ in
       sources."concat-map-0.0.1"
       sources."core_d-3.2.0"
       sources."cross-spawn-7.0.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deep-is-0.1.4"
       sources."doctrine-3.0.0"
       sources."emoji-regex-8.0.0"
@@ -94255,7 +94180,7 @@ in
       sources."functional-red-black-tree-1.0.1"
       sources."glob-7.2.0"
       sources."glob-parent-5.1.2"
-      sources."globals-13.12.1"
+      sources."globals-13.13.0"
       sources."has-flag-4.0.0"
       sources."ignore-4.0.6"
       sources."import-fresh-3.3.0"
@@ -94307,7 +94232,7 @@ in
       sources."supports-color-8.1.1"
       (sources."table-6.8.0" // {
         dependencies = [
-          sources."ajv-8.10.0"
+          sources."ajv-8.11.0"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -94360,27 +94285,27 @@ in
       sources."@babel/code-frame-7.10.4"
       (sources."@babel/core-7.9.0" // {
         dependencies = [
-          sources."json5-2.2.0"
+          sources."json5-2.2.1"
           sources."semver-5.7.1"
         ];
       })
-      sources."@babel/generator-7.17.3"
+      sources."@babel/generator-7.17.7"
       sources."@babel/helper-environment-visitor-7.16.7"
       sources."@babel/helper-function-name-7.16.7"
       sources."@babel/helper-get-function-arity-7.16.7"
       sources."@babel/helper-hoist-variables-7.16.7"
       sources."@babel/helper-module-imports-7.16.7"
-      sources."@babel/helper-module-transforms-7.17.6"
-      sources."@babel/helper-simple-access-7.16.7"
+      sources."@babel/helper-module-transforms-7.17.7"
+      sources."@babel/helper-simple-access-7.17.7"
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
-      sources."@babel/helpers-7.17.2"
+      sources."@babel/helpers-7.17.8"
       (sources."@babel/highlight-7.16.10" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/runtime-7.9.0"
       (sources."@babel/template-7.16.7" // {
         dependencies = [
@@ -94443,7 +94368,7 @@ in
           sources."is-wsl-2.2.0"
         ];
       })
-      (sources."@expo/xcpretty-4.1.0" // {
+      (sources."@expo/xcpretty-4.1.1" // {
         dependencies = [
           sources."js-yaml-4.1.0"
         ];
@@ -94481,7 +94406,7 @@ in
       })
       sources."@react-native/normalize-color-2.0.0"
       sources."@segment/loosely-validate-event-2.0.0"
-      sources."@sideway/address-4.1.3"
+      sources."@sideway/address-4.1.4"
       sources."@sideway/formula-3.0.0"
       sources."@sideway/pinpoint-2.0.0"
       sources."@sindresorhus/is-4.6.0"
@@ -94493,10 +94418,10 @@ in
       sources."@types/istanbul-lib-coverage-2.0.4"
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-3.0.1"
-      sources."@types/json-schema-7.0.9"
-      sources."@types/keyv-3.1.3"
+      sources."@types/json-schema-7.0.11"
+      sources."@types/keyv-3.1.4"
       sources."@types/minimatch-3.0.5"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/q-1.5.5"
       sources."@types/responselike-1.0.0"
       sources."@types/retry-0.12.1"
@@ -94630,10 +94555,13 @@ in
         dependencies = [
           sources."bytes-3.1.0"
           sources."debug-2.6.9"
+          sources."depd-1.1.2"
           sources."http-errors-1.7.2"
           sources."inherits-2.0.3"
           sources."ms-2.0.0"
+          sources."on-finished-2.3.0"
           sources."setprototypeof-1.1.1"
+          sources."statuses-1.5.0"
           sources."toidentifier-1.0.0"
         ];
       })
@@ -94664,7 +94592,7 @@ in
         ];
       })
       sources."browserify-zlib-0.2.0"
-      (sources."browserslist-4.20.0" // {
+      (sources."browserslist-4.20.2" // {
         dependencies = [
           sources."picocolors-1.0.0"
         ];
@@ -94698,7 +94626,7 @@ in
       })
       sources."camelcase-6.3.0"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       (sources."chalk-4.1.2" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
@@ -94752,7 +94680,7 @@ in
       sources."cli-table3-0.6.1"
       (sources."cliui-5.0.0" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."emoji-regex-7.0.3"
           sources."is-fullwidth-code-point-2.0.0"
           sources."string-width-3.1.0"
@@ -94860,7 +94788,7 @@ in
       })
       (sources."css-select-4.2.1" // {
         dependencies = [
-          sources."domhandler-4.3.0"
+          sources."domhandler-4.3.1"
         ];
       })
       sources."css-select-base-adapter-0.1.1"
@@ -94887,7 +94815,7 @@ in
       sources."cyclist-1.0.1"
       sources."dag-map-1.0.2"
       sources."dateformat-3.0.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decache-4.4.0"
       sources."decamelize-1.2.0"
       sources."decode-uri-component-0.2.0"
@@ -94911,10 +94839,10 @@ in
         ];
       })
       sources."delayed-stream-1.0.0"
-      sources."depd-1.1.2"
+      sources."depd-2.0.0"
       sources."deprecated-decorator-0.1.6"
       sources."des.js-1.0.1"
-      sources."destroy-1.0.4"
+      sources."destroy-1.2.0"
       sources."detect-node-2.1.0"
       (sources."detect-port-alt-1.1.6" // {
         dependencies = [
@@ -94934,7 +94862,7 @@ in
       sources."dom-converter-0.2.0"
       (sources."dom-serializer-1.3.2" // {
         dependencies = [
-          sources."domhandler-4.3.0"
+          sources."domhandler-4.3.1"
         ];
       })
       sources."domain-browser-1.2.0"
@@ -94943,7 +94871,7 @@ in
       sources."domino-2.1.6"
       (sources."domutils-2.8.0" // {
         dependencies = [
-          sources."domhandler-4.3.0"
+          sources."domhandler-4.3.1"
         ];
       })
       (sources."dot-case-3.0.4" // {
@@ -94956,7 +94884,7 @@ in
       sources."duplexer3-0.1.4"
       sources."duplexify-3.7.1"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -95037,12 +94965,15 @@ in
         dependencies = [
           sources."body-parser-1.18.3"
           sources."debug-2.6.9"
+          sources."depd-1.1.2"
+          sources."destroy-1.0.4"
           sources."finalhandler-1.1.1"
           sources."http-errors-1.6.3"
           sources."iconv-lite-0.4.23"
           sources."inherits-2.0.3"
           sources."mime-1.4.1"
           sources."ms-2.0.0"
+          sources."on-finished-2.3.0"
           sources."qs-6.5.2"
           sources."raw-body-2.3.3"
           sources."send-0.16.2"
@@ -95084,6 +95015,8 @@ in
         dependencies = [
           sources."debug-2.6.9"
           sources."ms-2.0.0"
+          sources."on-finished-2.3.0"
+          sources."statuses-1.5.0"
         ];
       })
       sources."find-cache-dir-2.1.0"
@@ -95213,7 +95146,7 @@ in
       sources."htmlparser2-4.1.0"
       sources."http-cache-semantics-4.1.0"
       sources."http-deceiver-1.2.7"
-      sources."http-errors-1.8.1"
+      sources."http-errors-2.0.0"
       (sources."http-proxy-1.18.1" // {
         dependencies = [
           sources."eventemitter3-4.0.7"
@@ -95375,7 +95308,7 @@ in
       sources."loader-runner-2.4.0"
       (sources."loader-utils-2.0.2" // {
         dependencies = [
-          sources."json5-2.2.0"
+          sources."json5-2.2.1"
         ];
       })
       sources."locate-path-6.0.0"
@@ -95417,15 +95350,15 @@ in
       sources."merge2-1.4.1"
       sources."methods-1.1.2"
       sources."microevent.ts-0.1.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       (sources."miller-rabin-4.0.1" // {
         dependencies = [
           sources."bn.js-4.12.0"
         ];
       })
       sources."mime-2.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-1.2.0"
       sources."mimic-response-1.0.1"
       (sources."mini-css-extract-plugin-0.5.0" // {
@@ -95440,7 +95373,7 @@ in
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."minipass-2.3.5" // {
         dependencies = [
           sources."yallist-3.1.1"
@@ -95472,7 +95405,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       (sources."move-concurrently-1.0.1" // {
         dependencies = [
           sources."rimraf-2.7.1"
@@ -95545,7 +95478,7 @@ in
       sources."object.pick-1.3.0"
       sources."object.values-1.1.5"
       sources."obuf-1.1.2"
-      sources."on-finished-2.3.0"
+      sources."on-finished-2.4.1"
       sources."on-headers-1.0.2"
       sources."once-1.4.0"
       sources."onetime-2.0.1"
@@ -95559,7 +95492,7 @@ in
       sources."options-0.0.6"
       (sources."ora-3.4.0" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."chalk-2.4.2"
           sources."strip-ansi-5.2.0"
         ];
@@ -95665,7 +95598,7 @@ in
           sources."path-exists-3.0.0"
         ];
       })
-      sources."plist-3.0.4"
+      sources."plist-3.0.5"
       sources."pngjs-3.4.0"
       sources."pnp-webpack-plugin-1.7.0"
       (sources."portfinder-1.0.28" // {
@@ -95836,9 +95769,11 @@ in
       (sources."raw-body-2.4.0" // {
         dependencies = [
           sources."bytes-3.1.0"
+          sources."depd-1.1.2"
           sources."http-errors-1.7.2"
           sources."inherits-2.0.3"
           sources."setprototypeof-1.1.1"
+          sources."statuses-1.5.0"
           sources."toidentifier-1.0.0"
         ];
       })
@@ -95856,7 +95791,7 @@ in
           sources."find-up-4.1.0"
           sources."globby-11.0.1"
           sources."is-wsl-2.2.0"
-          sources."json5-2.2.0"
+          sources."json5-2.2.1"
           sources."loader-utils-2.0.0"
           sources."locate-path-5.0.0"
           sources."node-releases-1.1.77"
@@ -95894,7 +95829,7 @@ in
       (sources."renderkid-2.0.7" // {
         dependencies = [
           sources."ansi-regex-2.1.1"
-          sources."domhandler-4.3.0"
+          sources."domhandler-4.3.1"
           sources."htmlparser2-6.1.0"
           sources."strip-ansi-3.0.1"
         ];
@@ -95950,7 +95885,7 @@ in
       sources."select-hose-2.0.0"
       sources."selfsigned-1.10.14"
       sources."semver-7.3.2"
-      (sources."send-0.17.2" // {
+      (sources."send-0.18.0" // {
         dependencies = [
           (sources."debug-2.6.9" // {
             dependencies = [
@@ -95966,13 +95901,15 @@ in
       (sources."serve-index-1.9.1" // {
         dependencies = [
           sources."debug-2.6.9"
+          sources."depd-1.1.2"
           sources."http-errors-1.6.3"
           sources."inherits-2.0.3"
           sources."ms-2.0.0"
           sources."setprototypeof-1.1.0"
+          sources."statuses-1.5.0"
         ];
       })
-      sources."serve-static-1.14.2"
+      sources."serve-static-1.15.0"
       sources."set-blocking-2.0.0"
       (sources."set-value-2.0.1" // {
         dependencies = [
@@ -96078,7 +96015,7 @@ in
           sources."kind-of-5.1.0"
         ];
       })
-      sources."statuses-1.5.0"
+      sources."statuses-2.0.1"
       sources."stream-browserify-2.0.2"
       sources."stream-buffers-2.2.0"
       sources."stream-each-1.2.3"
@@ -96343,6 +96280,8 @@ in
           sources."content-disposition-0.5.4"
           sources."cookie-0.4.2"
           sources."del-4.1.1"
+          sources."depd-1.1.2"
+          sources."destroy-1.0.4"
           (sources."express-4.17.3" // {
             dependencies = [
               sources."debug-2.6.9"
@@ -96354,6 +96293,7 @@ in
           sources."fsevents-1.2.13"
           sources."glob-parent-3.1.0"
           sources."globby-6.1.0"
+          sources."http-errors-1.8.1"
           sources."is-absolute-url-3.0.3"
           sources."is-binary-path-1.0.1"
           sources."is-glob-3.1.0"
@@ -96361,8 +96301,10 @@ in
           sources."json-schema-traverse-0.4.1"
           sources."kind-of-3.2.2"
           sources."micromatch-3.1.10"
+          sources."mime-1.6.0"
           sources."ms-2.0.0"
           sources."normalize-path-2.1.1"
+          sources."on-finished-2.3.0"
           sources."p-map-2.1.0"
           sources."p-retry-3.0.1"
           sources."pify-2.3.0"
@@ -96373,6 +96315,18 @@ in
           sources."safe-buffer-5.2.1"
           sources."schema-utils-1.0.0"
           sources."semver-6.3.0"
+          (sources."send-0.17.2" // {
+            dependencies = [
+              (sources."debug-2.6.9" // {
+                dependencies = [
+                  sources."ms-2.0.0"
+                ];
+              })
+              sources."ms-2.1.3"
+            ];
+          })
+          sources."serve-static-1.14.2"
+          sources."statuses-1.5.0"
           sources."strip-ansi-3.0.1"
           sources."supports-color-6.1.0"
           sources."to-regex-range-2.1.1"
@@ -96445,7 +96399,7 @@ in
       sources."yallist-4.0.0"
       (sources."yargs-13.3.2" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."emoji-regex-7.0.3"
           sources."find-up-3.0.0"
           sources."is-fullwidth-code-point-2.0.0"
@@ -96487,29 +96441,29 @@ in
     dependencies = [
       sources."@ampproject/remapping-2.1.2"
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/compat-data-7.17.0"
-      sources."@babel/core-7.17.5"
-      sources."@babel/generator-7.17.3"
+      sources."@babel/compat-data-7.17.7"
+      sources."@babel/core-7.17.8"
+      sources."@babel/generator-7.17.7"
       sources."@babel/helper-annotate-as-pure-7.16.7"
-      sources."@babel/helper-compilation-targets-7.16.7"
+      sources."@babel/helper-compilation-targets-7.17.7"
       sources."@babel/helper-environment-visitor-7.16.7"
       sources."@babel/helper-function-name-7.16.7"
       sources."@babel/helper-get-function-arity-7.16.7"
       sources."@babel/helper-hoist-variables-7.16.7"
       sources."@babel/helper-module-imports-7.16.7"
-      sources."@babel/helper-module-transforms-7.17.6"
+      sources."@babel/helper-module-transforms-7.17.7"
       sources."@babel/helper-plugin-utils-7.16.7"
-      sources."@babel/helper-simple-access-7.16.7"
+      sources."@babel/helper-simple-access-7.17.7"
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/helper-validator-option-7.16.7"
-      sources."@babel/helpers-7.17.2"
+      sources."@babel/helpers-7.17.8"
       sources."@babel/highlight-7.16.10"
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/plugin-proposal-object-rest-spread-7.17.3"
       sources."@babel/plugin-syntax-jsx-7.16.7"
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
-      sources."@babel/plugin-transform-destructuring-7.17.3"
+      sources."@babel/plugin-transform-destructuring-7.17.7"
       sources."@babel/plugin-transform-parameters-7.16.7"
       sources."@babel/plugin-transform-react-jsx-7.17.3"
       sources."@babel/template-7.16.7"
@@ -96519,7 +96473,7 @@ in
       sources."@jridgewell/sourcemap-codec-1.4.11"
       sources."@jridgewell/trace-mapping-0.3.4"
       sources."@types/minimist-1.2.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/yauzl-2.9.2"
       sources."@types/yoga-layout-1.9.2"
@@ -96538,7 +96492,7 @@ in
       sources."base64-js-1.5.1"
       sources."bl-4.1.0"
       sources."brace-expansion-1.1.11"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."buffer-5.7.1"
       sources."buffer-crc32-0.2.13"
       sources."caller-callsite-4.1.0"
@@ -96546,7 +96500,7 @@ in
       sources."callsites-3.1.0"
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       sources."chalk-2.4.2"
       sources."chownr-1.1.4"
       sources."ci-info-2.0.0"
@@ -96562,7 +96516,7 @@ in
       sources."convert-source-map-1.8.0"
       sources."convert-to-spaces-1.0.2"
       sources."cross-fetch-3.1.5"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       (sources."decamelize-keys-1.1.0" // {
         dependencies = [
@@ -96571,7 +96525,7 @@ in
       })
       sources."delay-5.0.0"
       sources."devtools-protocol-0.0.969999"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."error-ex-1.3.2"
@@ -96617,7 +96571,7 @@ in
       sources."js-tokens-4.0.0"
       sources."jsesc-2.5.2"
       sources."json-parse-even-better-errors-2.3.1"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."kind-of-6.0.3"
       sources."lines-and-columns-1.2.4"
       sources."locate-path-5.0.0"
@@ -96634,7 +96588,6 @@ in
       sources."mimic-fn-2.1.0"
       sources."min-indent-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
       sources."minimist-options-4.1.0"
       sources."mkdirp-classic-0.5.3"
       sources."ms-2.1.2"
@@ -96664,12 +96617,13 @@ in
       sources."pump-3.0.0"
       (sources."puppeteer-13.5.1" // {
         dependencies = [
+          sources."debug-4.3.3"
           sources."ws-8.5.0"
         ];
       })
       sources."quick-lru-4.0.1"
       sources."react-17.0.2"
-      sources."react-devtools-core-4.24.0"
+      sources."react-devtools-core-4.24.2"
       sources."react-reconciler-0.26.2"
       (sources."read-pkg-5.2.0" // {
         dependencies = [
@@ -96771,7 +96725,7 @@ in
     dependencies = [
       (sources."@heroku-cli/color-1.1.14" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
           sources."color-convert-1.9.3"
@@ -96808,7 +96762,7 @@ in
       })
       (sources."@oclif/plugin-help-1.2.11" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
           sources."color-convert-1.9.3"
@@ -96870,7 +96824,7 @@ in
       sources."cli-table-0.3.11"
       (sources."cli-ux-4.9.3" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
           sources."clean-stack-2.2.0"
@@ -96902,7 +96856,7 @@ in
       })
       sources."csv-stream-0.2.0"
       sources."dashdash-1.14.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decode-uri-component-0.2.0"
       sources."decompress-response-3.3.0"
       sources."deep-is-0.1.4"
@@ -96953,7 +96907,7 @@ in
       sources."has-to-string-tag-x-1.4.1"
       (sources."heroku-cli-util-8.0.12" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
           sources."color-convert-1.9.3"
@@ -96973,7 +96927,7 @@ in
       sources."indent-string-4.0.0"
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
-      (sources."inquirer-8.2.1" // {
+      (sources."inquirer-8.2.2" // {
         dependencies = [
           sources."ansi-escapes-4.3.2"
           sources."type-fest-0.21.3"
@@ -97014,9 +96968,9 @@ in
       sources."lowercase-keys-1.0.1"
       sources."lru-cache-6.0.0"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."micromatch-4.0.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."moment-2.29.1"
@@ -97052,7 +97006,7 @@ in
       sources."pify-3.0.0"
       sources."prelude-ls-1.1.2"
       sources."prepend-http-2.0.0"
-      sources."prettier-2.5.1"
+      sources."prettier-2.6.1"
       sources."process-nextick-args-2.0.1"
       sources."psl-1.8.0"
       sources."punycode-2.1.1"
@@ -97147,10 +97101,10 @@ in
   firebase-tools = nodeEnv.buildNodePackage {
     name = "firebase-tools";
     packageName = "firebase-tools";
-    version = "10.2.2";
+    version = "10.5.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/firebase-tools/-/firebase-tools-10.2.2.tgz";
-      sha512 = "KJ7C0HeZr01/uKSuU/pJ2ZUAm0OQvujkmdpKurkV4x/JQHh5MeZvCsPC+Zwn4uqTCaSpY1XZt3167c+jscgv7w==";
+      url = "https://registry.npmjs.org/firebase-tools/-/firebase-tools-10.5.0.tgz";
+      sha512 = "sl4ycYfKsliII500HuqgEOWeB3OXi0twDDC/xPv1Eiw8FFYoTJwHm2w4YWUhTtDq4tSrHNCmdBza9LP+wvelnA==";
     };
     dependencies = [
       (sources."@apidevtools/json-schema-ref-parser-9.0.9" // {
@@ -97166,7 +97120,7 @@ in
       sources."@google-cloud/projectify-2.1.1"
       sources."@google-cloud/promisify-2.0.4"
       sources."@google-cloud/pubsub-2.19.0"
-      sources."@grpc/grpc-js-1.5.7"
+      sources."@grpc/grpc-js-1.5.10"
       sources."@grpc/proto-loader-0.6.9"
       sources."@jsdevtools/ono-7.1.3"
       (sources."@npmcli/fs-1.1.1" // {
@@ -97180,7 +97134,7 @@ in
         ];
       })
       sources."@opentelemetry/api-1.1.0"
-      sources."@opentelemetry/semantic-conventions-1.0.1"
+      sources."@opentelemetry/semantic-conventions-1.1.1"
       sources."@protobufjs/aspromise-1.1.2"
       sources."@protobufjs/base64-1.1.2"
       sources."@protobufjs/codegen-2.0.4"
@@ -97195,9 +97149,9 @@ in
       sources."@szmarczak/http-timer-1.1.2"
       sources."@tootallnate/once-1.1.2"
       sources."@types/duplexify-3.6.1"
-      sources."@types/json-schema-7.0.9"
+      sources."@types/json-schema-7.0.11"
       sources."@types/long-4.0.1"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."abbrev-1.1.1"
       sources."abort-controller-3.0.0"
       sources."accepts-1.3.8"
@@ -97209,7 +97163,7 @@ in
       sources."ajv-6.12.6"
       (sources."ajv-formats-2.1.1" // {
         dependencies = [
-          sources."ajv-8.10.0"
+          sources."ajv-8.11.0"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -97254,7 +97208,7 @@ in
       sources."binary-0.3.0"
       sources."binary-extensions-2.2.0"
       sources."bl-4.1.0"
-      sources."blakejs-1.1.1"
+      sources."blakejs-1.2.1"
       sources."bluebird-3.4.7"
       (sources."body-parser-1.19.2" // {
         dependencies = [
@@ -97372,7 +97326,7 @@ in
       sources."d-1.0.1"
       sources."dashdash-1.14.1"
       sources."data-uri-to-buffer-3.0.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decompress-response-3.3.0"
       sources."deep-extend-0.6.0"
       sources."deep-freeze-0.0.1"
@@ -97409,7 +97363,7 @@ in
       sources."end-of-stream-1.4.4"
       sources."env-paths-2.2.1"
       sources."err-code-2.0.3"
-      sources."es5-ext-0.10.58"
+      sources."es5-ext-0.10.59"
       sources."es6-iterator-2.0.3"
       sources."es6-symbol-3.1.3"
       sources."es6-weak-map-2.0.3"
@@ -97427,7 +97381,7 @@ in
       sources."events-listener-1.1.0"
       (sources."exegesis-4.1.0" // {
         dependencies = [
-          sources."ajv-8.10.0"
+          sources."ajv-8.11.0"
           sources."json-schema-traverse-1.0.0"
           sources."semver-7.3.5"
         ];
@@ -97518,7 +97472,7 @@ in
       sources."glob-slash-1.0.0"
       sources."glob-slasher-1.0.1"
       sources."global-dirs-2.1.0"
-      sources."google-auth-library-7.14.0"
+      sources."google-auth-library-7.14.1"
       sources."google-gax-2.29.6"
       sources."google-p12-pem-3.1.3"
       sources."got-9.6.0"
@@ -97550,7 +97504,7 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.7"
-      sources."inquirer-8.2.1"
+      sources."inquirer-8.2.2"
       sources."install-artifact-from-github-1.3.0"
       sources."ip-1.1.5"
       sources."ip-regex-4.3.0"
@@ -97672,12 +97626,12 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-2.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-3.1.6"
       sources."minipass-collect-1.0.2"
       sources."minipass-fetch-1.4.1"
@@ -97685,7 +97639,7 @@ in
       sources."minipass-pipeline-1.2.4"
       sources."minipass-sized-1.0.3"
       sources."minizlib-2.1.2"
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       (sources."morgan-1.10.0" // {
         dependencies = [
           sources."debug-2.6.9"
@@ -97707,7 +97661,7 @@ in
       sources."nice-try-1.0.5"
       sources."node-emoji-1.11.0"
       sources."node-fetch-2.6.7"
-      sources."node-forge-1.2.1"
+      sources."node-forge-1.3.0"
       (sources."node-gyp-8.4.1" // {
         dependencies = [
           sources."semver-7.3.5"
@@ -98133,7 +98087,7 @@ in
       sources."ieee754-1.2.1"
       sources."indent-string-5.0.0"
       sources."inherits-2.0.4"
-      (sources."inquirer-8.2.1" // {
+      (sources."inquirer-8.2.2" // {
         dependencies = [
           sources."ansi-regex-5.0.1"
           sources."emoji-regex-8.0.0"
@@ -98275,7 +98229,7 @@ in
       sources."@types/atob-2.1.2"
       sources."@types/bn.js-5.1.0"
       sources."@types/inquirer-6.5.0"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/pbkdf2-3.1.0"
       sources."@types/secp256k1-4.0.3"
       sources."@types/through-0.0.30"
@@ -98295,7 +98249,7 @@ in
       sources."base-x-3.0.9"
       sources."bcrypt-pbkdf-1.0.2"
       sources."binary-search-tree-0.2.5"
-      sources."blakejs-1.1.1"
+      sources."blakejs-1.2.1"
       sources."bluebird-3.7.2"
       sources."bn.js-4.12.0"
       sources."brorand-1.1.0"
@@ -98387,13 +98341,13 @@ in
       sources."locate-path-5.0.0"
       sources."lodash-4.17.21"
       sources."md5.js-1.3.5"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."mute-stream-0.0.8"
       sources."nedb-1.8.0"
       sources."node-addon-api-2.0.2"
@@ -98739,9 +98693,9 @@ in
       sources."minimatch-3.1.2"
       sources."minimist-0.0.10"
       sources."mixin-deep-1.3.2"
-      (sources."mkdirp-0.5.5" // {
+      (sources."mkdirp-0.5.6" // {
         dependencies = [
-          sources."minimist-1.2.5"
+          sources."minimist-1.2.6"
         ];
       })
       sources."ms-2.0.0"
@@ -98793,7 +98747,7 @@ in
       (sources."prettyjson-1.2.5" // {
         dependencies = [
           sources."colors-1.4.0"
-          sources."minimist-1.2.5"
+          sources."minimist-1.2.6"
         ];
       })
       sources."process-nextick-args-2.0.1"
@@ -99011,49 +98965,57 @@ in
   gatsby-cli = nodeEnv.buildNodePackage {
     name = "gatsby-cli";
     packageName = "gatsby-cli";
-    version = "4.9.1";
+    version = "4.10.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/gatsby-cli/-/gatsby-cli-4.9.1.tgz";
-      sha512 = "iU5pmwAq5d1XXo98BkYe2KccH3Dy/jsj7QsvP0CpfzOO0EFtidg5KUzPPaekLaGyoqxiMwWf0uAX7S1ERzMFYw==";
+      url = "https://registry.npmjs.org/gatsby-cli/-/gatsby-cli-4.10.2.tgz";
+      sha512 = "lA1zFuWZwE+VtKYgntls0EC5PG4QoqqeJFWP+83Lmh+9hoLLkmL1plALBQeI3JY/9KXgRiC4OoR94CQkI329TA==";
     };
     dependencies = [
       sources."@ampproject/remapping-2.1.2"
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/compat-data-7.17.0"
-      (sources."@babel/core-7.17.5" // {
+      sources."@babel/compat-data-7.17.7"
+      (sources."@babel/core-7.17.8" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      (sources."@babel/generator-7.17.3" // {
+      (sources."@babel/generator-7.17.7" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
-      (sources."@babel/helper-compilation-targets-7.16.7" // {
+      sources."@babel/helper-annotate-as-pure-7.16.7"
+      (sources."@babel/helper-compilation-targets-7.17.7" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
+      sources."@babel/helper-create-class-features-plugin-7.17.6"
       sources."@babel/helper-environment-visitor-7.16.7"
       sources."@babel/helper-function-name-7.16.7"
       sources."@babel/helper-get-function-arity-7.16.7"
       sources."@babel/helper-hoist-variables-7.16.7"
+      sources."@babel/helper-member-expression-to-functions-7.17.7"
       sources."@babel/helper-module-imports-7.16.7"
-      sources."@babel/helper-module-transforms-7.17.6"
+      sources."@babel/helper-module-transforms-7.17.7"
+      sources."@babel/helper-optimise-call-expression-7.16.7"
       sources."@babel/helper-plugin-utils-7.16.7"
-      sources."@babel/helper-simple-access-7.16.7"
+      sources."@babel/helper-replace-supers-7.16.7"
+      sources."@babel/helper-simple-access-7.17.7"
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/helper-validator-option-7.16.7"
-      sources."@babel/helpers-7.17.2"
+      sources."@babel/helpers-7.17.8"
       (sources."@babel/highlight-7.16.10" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.17.3"
-      sources."@babel/runtime-7.17.2"
+      sources."@babel/parser-7.17.8"
+      sources."@babel/plugin-syntax-typescript-7.16.7"
+      sources."@babel/plugin-transform-typescript-7.16.8"
+      sources."@babel/preset-typescript-7.16.7"
+      sources."@babel/runtime-7.17.8"
       sources."@babel/template-7.16.7"
       sources."@babel/traverse-7.17.3"
       sources."@babel/types-7.17.0"
@@ -99062,7 +99024,7 @@ in
       sources."@jridgewell/resolve-uri-3.0.5"
       sources."@jridgewell/sourcemap-codec-1.4.11"
       sources."@jridgewell/trace-mapping-0.3.4"
-      sources."@sideway/address-4.1.3"
+      sources."@sideway/address-4.1.4"
       sources."@sideway/formula-3.0.0"
       sources."@sideway/pinpoint-2.0.0"
       sources."@sindresorhus/is-4.6.0"
@@ -99073,8 +99035,8 @@ in
       sources."@types/cacheable-request-6.0.2"
       sources."@types/common-tags-1.8.1"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/keyv-3.1.3"
-      sources."@types/node-17.0.21"
+      sources."@types/keyv-3.1.4"
+      sources."@types/node-17.0.23"
       sources."@types/node-fetch-2.6.1"
       sources."@types/responselike-1.0.0"
       sources."@types/yoga-layout-1.9.2"
@@ -99094,7 +99056,7 @@ in
       sources."boolbase-1.0.0"
       sources."boxen-5.1.2"
       sources."brace-expansion-1.1.11"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."cacheable-lookup-5.0.4"
       (sources."cacheable-request-7.0.2" // {
         dependencies = [
@@ -99103,7 +99065,7 @@ in
       })
       sources."call-bind-1.0.2"
       sources."camelcase-6.3.0"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       (sources."chalk-4.1.2" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
@@ -99140,7 +99102,7 @@ in
       sources."configstore-5.0.1"
       sources."convert-hrtime-3.0.0"
       sources."convert-source-map-1.8.0"
-      sources."create-gatsby-2.9.0"
+      sources."create-gatsby-2.10.2"
       (sources."cross-spawn-6.0.5" // {
         dependencies = [
           sources."semver-5.7.1"
@@ -99149,7 +99111,7 @@ in
       sources."crypto-random-string-2.0.0"
       sources."css-select-4.2.1"
       sources."css-what-5.1.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       sources."decode-uri-component-0.2.0"
       (sources."decompress-response-6.0.0" // {
@@ -99163,11 +99125,11 @@ in
       sources."dom-converter-0.2.0"
       sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
       sources."dot-prop-5.3.0"
       sources."duplexer3-0.1.4"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
       sources."entities-2.2.0"
@@ -99202,8 +99164,8 @@ in
       sources."fs-extra-10.0.1"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
-      sources."gatsby-core-utils-3.9.1"
-      (sources."gatsby-telemetry-3.9.1" // {
+      sources."gatsby-core-utils-3.10.1"
+      (sources."gatsby-telemetry-3.10.1" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."boxen-4.2.0"
@@ -99265,12 +99227,12 @@ in
       sources."js-tokens-4.0.0"
       sources."jsesc-2.5.2"
       sources."json-buffer-3.0.1"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."jsonfile-6.1.0"
       sources."keyv-4.1.1"
       sources."kleur-3.0.3"
       sources."latest-version-5.1.0"
-      sources."lmdb-2.2.4"
+      sources."lmdb-2.2.6"
       sources."locate-path-5.0.0"
       sources."lock-1.1.0"
       sources."lodash-4.17.21"
@@ -99283,14 +99245,14 @@ in
       })
       sources."meant-1.0.3"
       sources."merge-stream-2.0.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."ms-2.1.2"
-      sources."msgpackr-1.5.4"
+      sources."msgpackr-1.5.5"
       sources."msgpackr-extract-1.0.16"
       sources."mute-stream-0.0.8"
       sources."nan-2.15.0"
@@ -99461,7 +99423,7 @@ in
       sources."yoga-layout-prebuilt-1.10.0"
       (sources."yurnalist-2.1.0" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."chalk-2.4.2"
           sources."strip-ansi-5.2.0"
         ];
@@ -99480,10 +99442,10 @@ in
   generator-code = nodeEnv.buildNodePackage {
     name = "generator-code";
     packageName = "generator-code";
-    version = "1.6.8";
+    version = "1.6.9";
     src = fetchurl {
-      url = "https://registry.npmjs.org/generator-code/-/generator-code-1.6.8.tgz";
-      sha512 = "0VMjRsX2HVhDboVUJIZ2N6ig7f/KG69V1AlTGIMUcxQzeLtjAFtxSdFQ2Z+hjmsu4Wjl6RjPj6NczIu3eSZ6mQ==";
+      url = "https://registry.npmjs.org/generator-code/-/generator-code-1.6.9.tgz";
+      sha512 = "e+mFv1JS6MyY1Rlez4pUhnRPxxylyDztSbTAJJ57hg4jkuASOZw8LP9b7PQCjrtCsXSSjqFSoqXSkomg3duWIQ==";
     };
     dependencies = [
       sources."@babel/code-frame-7.16.7"
@@ -99499,7 +99461,7 @@ in
         ];
       })
       sources."@octokit/auth-token-2.5.0"
-      sources."@octokit/core-3.5.1"
+      sources."@octokit/core-3.6.0"
       sources."@octokit/endpoint-6.0.12"
       sources."@octokit/graphql-4.8.0"
       sources."@octokit/openapi-types-11.2.0"
@@ -99524,7 +99486,7 @@ in
       sources."concat-map-0.0.1"
       sources."cross-spawn-7.0.3"
       sources."dargs-7.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deprecation-2.3.1"
       sources."end-of-stream-1.4.4"
       sources."error-ex-1.3.2"
@@ -99562,7 +99524,7 @@ in
       sources."merge-stream-2.0.0"
       sources."mimic-fn-2.1.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."ms-2.1.2"
       sources."node-fetch-2.6.7"
       (sources."normalize-package-data-2.5.0" // {
@@ -99607,7 +99569,7 @@ in
       sources."spdx-license-ids-3.0.11"
       (sources."string-width-2.1.1" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."strip-ansi-4.0.0"
         ];
       })
@@ -99676,7 +99638,7 @@ in
       sources."graphql-14.7.0"
       sources."has-flag-3.0.0"
       sources."iterall-1.3.0"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."node-fetch-2.6.7"
       sources."supports-color-5.5.0"
       sources."tr46-0.0.3"
@@ -99703,7 +99665,7 @@ in
     };
     dependencies = [
       sources."async-2.6.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."lodash-4.17.21"
       sources."lodash.groupby-4.6.0"
       sources."microee-0.0.6"
@@ -99736,7 +99698,7 @@ in
       sources."chloride-test-1.2.4"
       sources."clarify-error-1.0.0"
       sources."commander-2.20.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deep-extend-0.6.0"
       sources."diff-3.5.0"
       sources."discontinuous-range-1.0.0"
@@ -99763,15 +99725,15 @@ in
       sources."jsonpointer-5.0.0"
       sources."kvgraph-0.1.0"
       sources."kvset-1.0.0"
-      sources."libsodium-0.7.9"
-      sources."libsodium-wrappers-0.7.9"
+      sources."libsodium-0.7.10"
+      sources."libsodium-wrappers-0.7.10"
       sources."lodash.get-4.4.2"
       sources."looper-4.0.0"
       sources."lrucache-1.0.3"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."moment-2.29.1"
       sources."moo-0.5.1"
       sources."ms-2.1.2"
@@ -99932,21 +99894,21 @@ in
   "@gitbeaker/cli" = nodeEnv.buildNodePackage {
     name = "_at_gitbeaker_slash_cli";
     packageName = "@gitbeaker/cli";
-    version = "35.4.0";
+    version = "35.6.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@gitbeaker/cli/-/cli-35.4.0.tgz";
-      sha512 = "dJVO3nIliMrxB+OoRvyzU0iMSUkTw2J2Iil23of4oOPkveHBksk8Nds+kfx/0HdEdPVQ19hHF5sxjvDxicucUg==";
+      url = "https://registry.npmjs.org/@gitbeaker/cli/-/cli-35.6.0.tgz";
+      sha512 = "MWt3cRIRbKGZj+ebwPp3W/hdIcyfKYfzt6bz/YSOcR4Z5swpMmZmGWoWiM9AERdZJYRxrImb9Id/lyyu8gtIiw==";
     };
     dependencies = [
-      sources."@gitbeaker/core-35.4.0"
-      sources."@gitbeaker/node-35.4.0"
-      sources."@gitbeaker/requester-utils-35.4.0"
+      sources."@gitbeaker/core-35.6.0"
+      sources."@gitbeaker/node-35.6.0"
+      sources."@gitbeaker/requester-utils-35.6.0"
       sources."@sindresorhus/is-4.6.0"
       sources."@szmarczak/http-timer-4.0.6"
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/keyv-3.1.3"
-      sources."@types/node-17.0.21"
+      sources."@types/keyv-3.1.4"
+      sources."@types/node-17.0.23"
       sources."@types/responselike-1.0.0"
       sources."ansi-regex-6.0.1"
       sources."ansi-styles-4.3.0"
@@ -99990,7 +99952,7 @@ in
       sources."ieee754-1.2.1"
       sources."inherits-2.0.4"
       sources."is-interactive-2.0.0"
-      sources."is-unicode-supported-1.1.0"
+      sources."is-unicode-supported-1.2.0"
       sources."json-buffer-3.0.1"
       sources."keyv-4.1.1"
       sources."li-1.3.0"
@@ -100001,8 +99963,8 @@ in
       })
       sources."lowercase-keys-2.0.0"
       sources."mime-3.0.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."normalize-url-6.1.0"
@@ -100050,10 +100012,10 @@ in
   gitmoji-cli = nodeEnv.buildNodePackage {
     name = "gitmoji-cli";
     packageName = "gitmoji-cli";
-    version = "4.8.0";
+    version = "4.11.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/gitmoji-cli/-/gitmoji-cli-4.8.0.tgz";
-      sha512 = "ZsO1OzFXEM53+K5yUUHRg7fwJqomkq2YLfgrKUr4rbIccQAybNNyp2x91GjDhnky7I/hkeiio5iImtTLr23KEw==";
+      url = "https://registry.npmjs.org/gitmoji-cli/-/gitmoji-cli-4.11.0.tgz";
+      sha512 = "tRX7PJ+qYGsfQcfaXT5rGgXE0KOXz7sR6rS8oScFPguXTSUtBl3cW74jNh92nGVHhbCCVBFq9vqVBgt5aRo9RQ==";
     };
     dependencies = [
       sources."@babel/code-frame-7.16.7"
@@ -100076,7 +100038,7 @@ in
       sources."acorn-8.7.0"
       sources."acorn-walk-8.2.0"
       sources."agent-base-6.0.2"
-      sources."ajv-8.10.0"
+      sources."ajv-8.11.0"
       sources."ajv-formats-2.1.1"
       sources."ansi-align-3.0.1"
       sources."ansi-escapes-4.3.2"
@@ -100103,7 +100065,7 @@ in
       })
       sources."camelcase-5.3.1"
       sources."camelcase-keys-6.2.2"
-      sources."chalk-4.1.2"
+      sources."chalk-4.1.0"
       sources."chardet-0.7.0"
       sources."ci-info-2.0.0"
       sources."cli-boxes-2.2.1"
@@ -100125,7 +100087,7 @@ in
       sources."crypto-random-string-2.0.0"
       sources."data-uri-to-buffer-3.0.1"
       sources."debounce-fn-4.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       (sources."decamelize-keys-1.1.0" // {
         dependencies = [
@@ -100151,7 +100113,7 @@ in
       sources."esprima-4.0.1"
       sources."estraverse-4.3.0"
       sources."esutils-2.0.3"
-      sources."execa-5.1.1"
+      sources."execa-5.0.0"
       sources."external-editor-3.1.0"
       sources."fast-deep-equal-3.1.3"
       sources."fast-levenshtein-2.0.6"
@@ -100166,7 +100128,7 @@ in
         ];
       })
       sources."function-bind-1.1.1"
-      sources."fuse.js-6.5.3"
+      sources."fuse.js-6.4.1"
       sources."get-stream-6.0.1"
       sources."get-uri-3.0.2"
       sources."global-dirs-3.0.0"
@@ -100193,13 +100155,12 @@ in
       sources."indent-string-4.0.0"
       sources."inherits-2.0.4"
       sources."ini-2.0.0"
-      sources."inquirer-8.2.1"
-      (sources."inquirer-autocomplete-prompt-1.4.0" // {
+      (sources."inquirer-8.2.1" // {
         dependencies = [
-          sources."rxjs-6.6.7"
-          sources."tslib-1.14.1"
+          sources."chalk-4.1.2"
         ];
       })
+      sources."inquirer-autocomplete-prompt-2.0.0"
       sources."ip-1.1.5"
       sources."is-arrayish-0.2.1"
       sources."is-ci-2.0.0"
@@ -100252,12 +100213,12 @@ in
       sources."mimic-fn-3.1.0"
       sources."mimic-response-1.0.1"
       sources."min-indent-1.0.1"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minimist-options-4.1.0"
       sources."ms-2.1.2"
       sources."mute-stream-0.0.8"
       sources."netmask-2.0.2"
-      sources."node-fetch-2.6.7"
+      sources."node-fetch-2.6.0"
       sources."normalize-package-data-3.0.3"
       sources."normalize-url-4.5.1"
       sources."npm-run-path-4.0.1"
@@ -100285,6 +100246,7 @@ in
       sources."path-exists-4.0.0"
       sources."path-key-3.1.1"
       sources."path-parse-1.0.7"
+      sources."picocolors-1.0.0"
       sources."pkg-up-3.1.0"
       sources."prelude-ls-1.1.2"
       sources."prepend-http-2.0.0"
@@ -100364,7 +100326,6 @@ in
       sources."tmp-0.0.33"
       sources."to-readable-stream-1.0.0"
       sources."toidentifier-1.0.1"
-      sources."tr46-0.0.3"
       sources."trim-newlines-3.0.1"
       sources."tslib-2.3.1"
       sources."type-check-0.3.2"
@@ -100380,8 +100341,6 @@ in
       sources."validate-npm-package-license-3.0.4"
       sources."vm2-3.9.9"
       sources."wcwidth-1.0.1"
-      sources."webidl-conversions-3.0.1"
-      sources."whatwg-url-5.0.0"
       sources."which-2.0.2"
       sources."widest-line-3.1.0"
       sources."word-wrap-1.2.3"
@@ -100517,8 +100476,8 @@ in
         ];
       })
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.1.3"
       sources."node-fetch-2.6.7"
       sources."object-assign-4.1.1"
@@ -100578,7 +100537,7 @@ in
       sources."wrappy-1.0.2"
       sources."xtend-4.0.2"
       sources."y18n-5.0.8"
-      sources."yargs-17.3.1"
+      sources."yargs-17.4.0"
       sources."yargs-parser-21.0.1"
       sources."yauzl-2.10.0"
     ];
@@ -100645,9 +100604,9 @@ in
           sources."tslib-2.1.0"
         ];
       })
-      (sources."@graphql-tools/import-6.6.6" // {
+      (sources."@graphql-tools/import-6.6.9" // {
         dependencies = [
-          sources."@graphql-tools/utils-8.6.2"
+          sources."@graphql-tools/utils-8.6.5"
           sources."tslib-2.3.1"
         ];
       })
@@ -100672,10 +100631,10 @@ in
           sources."tslib-2.3.1"
         ];
       })
-      (sources."@graphql-tools/schema-8.3.2" // {
+      (sources."@graphql-tools/schema-8.3.5" // {
         dependencies = [
-          sources."@graphql-tools/merge-8.2.3"
-          sources."@graphql-tools/utils-8.6.2"
+          sources."@graphql-tools/merge-8.2.6"
+          sources."@graphql-tools/utils-8.6.5"
           sources."tslib-2.3.1"
         ];
       })
@@ -100706,7 +100665,7 @@ in
       sources."@nodelib/fs.walk-1.2.8"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/parse-json-4.0.0"
       sources."@types/websocket-1.0.2"
       sources."abort-controller-3.0.0"
@@ -100717,7 +100676,7 @@ in
           sources."type-fest-0.21.3"
         ];
       })
-      sources."ansi-regex-4.1.0"
+      sources."ansi-regex-4.1.1"
       sources."ansi-styles-4.3.0"
       sources."argparse-1.0.10"
       sources."array-union-2.1.0"
@@ -100786,7 +100745,7 @@ in
       sources."cross-spawn-6.0.5"
       sources."dashdash-1.14.1"
       sources."dataloader-2.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decompress-response-3.3.0"
       sources."deep-equal-2.0.5"
       sources."deep-extend-0.6.0"
@@ -100973,13 +100932,13 @@ in
       })
       sources."merge2-1.4.1"
       sources."meros-1.1.4"
-      sources."micromatch-4.0.4"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."micromatch-4.0.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-1.2.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-3.1.6"
       sources."minizlib-2.1.2"
       sources."mkdirp-1.0.4"
@@ -101002,7 +100961,7 @@ in
       sources."oas-linter-3.2.2"
       (sources."oas-resolver-2.5.6" // {
         dependencies = [
-          sources."yargs-17.3.1"
+          sources."yargs-17.4.0"
         ];
       })
       sources."oas-schema-walker-1.1.5"
@@ -101115,7 +101074,7 @@ in
       sources."supports-color-7.2.0"
       (sources."swagger2openapi-7.0.8" // {
         dependencies = [
-          sources."yargs-17.3.1"
+          sources."yargs-17.4.0"
         ];
       })
       sources."symbol-observable-1.2.0"
@@ -101196,15 +101155,15 @@ in
       })
       sources."@cronvel/get-pixels-3.4.0"
       sources."@endemolshinegroup/cosmiconfig-typescript-loader-3.0.2"
-      sources."@graphql-tools/batch-execute-8.3.2"
-      sources."@graphql-tools/delegate-8.5.2"
-      sources."@graphql-tools/graphql-file-loader-7.3.4"
-      sources."@graphql-tools/import-6.6.6"
-      sources."@graphql-tools/json-file-loader-7.3.4"
-      sources."@graphql-tools/load-7.5.2"
-      sources."@graphql-tools/merge-8.2.3"
-      sources."@graphql-tools/schema-8.3.2"
-      (sources."@graphql-tools/url-loader-7.9.1" // {
+      sources."@graphql-tools/batch-execute-8.4.1"
+      sources."@graphql-tools/delegate-8.7.0"
+      sources."@graphql-tools/graphql-file-loader-7.3.7"
+      sources."@graphql-tools/import-6.6.9"
+      sources."@graphql-tools/json-file-loader-7.3.7"
+      sources."@graphql-tools/load-7.5.5"
+      sources."@graphql-tools/merge-8.2.6"
+      sources."@graphql-tools/schema-8.3.5"
+      (sources."@graphql-tools/url-loader-7.9.7" // {
         dependencies = [
           (sources."subscriptions-transport-ws-0.11.0" // {
             dependencies = [
@@ -101214,8 +101173,8 @@ in
           sources."ws-8.5.0"
         ];
       })
-      sources."@graphql-tools/utils-8.6.2"
-      sources."@graphql-tools/wrap-8.4.3"
+      sources."@graphql-tools/utils-8.6.5"
+      sources."@graphql-tools/wrap-8.4.9"
       sources."@iarna/toml-2.2.5"
       sources."@n1ru4l/graphql-live-query-0.9.0"
       sources."@nodelib/fs.scandir-2.1.5"
@@ -101232,7 +101191,7 @@ in
       })
       (sources."@oclif/plugin-help-3.2.1" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
           sources."color-convert-1.9.3"
@@ -101251,10 +101210,10 @@ in
       })
       sources."@oclif/screen-1.0.4"
       sources."@types/json-schema-7.0.9"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/parse-json-4.0.0"
       sources."@types/websocket-1.0.5"
-      sources."@types/ws-8.5.2"
+      sources."@types/ws-8.5.3"
       sources."abort-controller-3.0.0"
       sources."accepts-1.3.8"
       sources."ansi-escapes-3.2.0"
@@ -101286,7 +101245,7 @@ in
       sources."clean-stack-3.0.1"
       (sources."cli-ux-4.9.3" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
           sources."clean-stack-2.2.0"
@@ -101318,10 +101277,10 @@ in
           sources."semver-5.7.1"
         ];
       })
-      sources."cross-undici-fetch-0.1.25"
+      sources."cross-undici-fetch-0.1.27"
       sources."cwise-compiler-1.1.3"
       sources."dataloader-2.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."depd-1.1.2"
       sources."destroy-1.0.4"
       sources."diff-4.0.2"
@@ -101354,7 +101313,7 @@ in
           sources."ms-2.0.0"
         ];
       })
-      sources."form-data-encoder-1.7.1"
+      sources."form-data-encoder-1.7.2"
       (sources."formdata-node-4.3.2" // {
         dependencies = [
           sources."web-streams-polyfill-4.0.0-beta.1"
@@ -101368,7 +101327,7 @@ in
       sources."graceful-fs-4.2.9"
       sources."graphql-15.4.0"
       sources."graphql-config-4.1.0"
-      sources."graphql-executor-0.0.18"
+      sources."graphql-executor-0.0.22"
       (sources."graphql-language-service-interface-2.10.2" // {
         dependencies = [
           sources."graphql-language-service-utils-2.7.1"
@@ -101378,7 +101337,7 @@ in
       sources."graphql-language-service-types-1.8.7"
       sources."graphql-language-service-utils-2.5.1"
       sources."graphql-sse-1.1.0"
-      sources."graphql-ws-5.6.2"
+      sources."graphql-ws-5.6.4"
       sources."has-flag-4.0.0"
       sources."http-errors-1.6.3"
       sources."hyperlinker-1.0.0"
@@ -101424,10 +101383,10 @@ in
       sources."merge2-1.4.1"
       sources."meros-1.2.0"
       sources."methods-1.1.2"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mime-1.4.1"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.0.4"
       sources."ms-2.1.2"
       sources."ndarray-1.0.19"
@@ -101517,7 +101476,7 @@ in
       sources."ts-node-9.1.1"
       sources."tslib-2.3.1"
       sources."type-is-1.6.18"
-      sources."undici-4.15.1"
+      sources."undici-4.16.0"
       sources."uniq-1.0.1"
       sources."universalify-0.1.2"
       sources."unixify-1.0.0"
@@ -101594,7 +101553,7 @@ in
       sources."liftup-3.0.1"
       sources."make-iterator-1.0.1"
       sources."map-cache-0.2.2"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."nopt-4.0.3"
       sources."object.defaults-1.1.0"
       sources."object.map-1.0.1"
@@ -101648,10 +101607,10 @@ in
   meshcommander = nodeEnv.buildNodePackage {
     name = "meshcommander";
     packageName = "meshcommander";
-    version = "0.9.3-b";
+    version = "0.9.5-a";
     src = fetchurl {
-      url = "https://registry.npmjs.org/meshcommander/-/meshcommander-0.9.3-b.tgz";
-      sha512 = "RNWHDlBCihL4v/BbqmcyqB3mui8qcza28Vp29FZL7j9d0y4u1UJyjtoHEwjOHw76gX6IMYKcLPksUo5cLDJcEw==";
+      url = "https://registry.npmjs.org/meshcommander/-/meshcommander-0.9.5-a.tgz";
+      sha512 = "RneCQXwu1Nuqu69+EPHIpDkrOcMcWaacM4T8Jibk0MkcquxF2iILX5bB6joCuNHHVr1I+9fPlYQoCjN1K22deg==";
     };
     dependencies = [
       sources."accepts-1.3.8"
@@ -101682,9 +101641,9 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
-      sources."minimist-1.2.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
+      sources."minimist-1.2.6"
       sources."ms-2.0.0"
       sources."negotiator-0.6.3"
       sources."on-finished-2.3.0"
@@ -101842,7 +101801,7 @@ in
           sources."supports-color-7.2.0"
         ];
       })
-      sources."systeminformation-5.11.7"
+      sources."systeminformation-5.11.9"
       sources."term-canvas-0.0.5"
       sources."type-fest-1.4.0"
       sources."wordwrap-0.0.3"
@@ -101983,7 +101942,7 @@ in
       sources."each-props-1.3.2"
       sources."end-of-stream-1.4.4"
       sources."error-ex-1.3.2"
-      sources."es5-ext-0.10.58"
+      sources."es5-ext-0.10.59"
       sources."es6-iterator-2.0.3"
       sources."es6-symbol-3.1.3"
       sources."es6-weak-map-2.0.3"
@@ -102403,7 +102362,7 @@ in
         ];
       })
       sources."error-ex-1.3.2"
-      sources."es5-ext-0.10.58"
+      sources."es5-ext-0.10.59"
       sources."es6-iterator-2.0.3"
       sources."es6-symbol-3.1.3"
       (sources."expand-brackets-2.1.4" // {
@@ -102835,8 +102794,8 @@ in
       sources."iconv-lite-0.6.3"
       sources."lodash-4.17.21"
       sources."mime-1.6.0"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.1.3"
       sources."object-inspect-1.12.0"
       sources."opener-1.5.2"
@@ -103045,7 +103004,7 @@ in
       sources."assert-plus-1.0.0"
       sources."async-2.6.3"
       sources."asynckit-0.4.0"
-      sources."aws-sdk-2.1092.0"
+      sources."aws-sdk-2.1101.0"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.11.0"
       sources."base64-js-1.5.1"
@@ -103066,7 +103025,7 @@ in
       sources."css-what-2.1.3"
       sources."cycle-1.0.3"
       sources."dashdash-1.14.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deep-is-0.1.4"
       sources."delayed-stream-1.0.0"
       sources."dom-serializer-0.1.1"
@@ -103148,10 +103107,10 @@ in
       sources."lodash.some-4.6.0"
       sources."lodash.uniq-4.5.0"
       sources."marked-2.1.3"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."moment-2.29.1"
       sources."moment-timezone-0.5.34"
       sources."ms-2.1.2"
@@ -103395,10 +103354,10 @@ in
       sources."longest-1.0.1"
       sources."lowercase-keys-1.0.1"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."nested-error-stacks-1.0.2"
       sources."nth-check-1.0.2"
@@ -103511,9 +103470,9 @@ in
       sources."isstream-0.1.2"
       sources."minimatch-3.1.2"
       sources."minimist-0.0.10"
-      (sources."mkdirp-0.5.5" // {
+      (sources."mkdirp-0.5.6" // {
         dependencies = [
-          sources."minimist-1.2.5"
+          sources."minimist-1.2.6"
         ];
       })
       sources."moment-2.29.1"
@@ -103580,10 +103539,10 @@ in
   insect = nodeEnv.buildNodePackage {
     name = "insect";
     packageName = "insect";
-    version = "5.6.0";
+    version = "5.7.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/insect/-/insect-5.6.0.tgz";
-      sha512 = "56gjTrj9SMfPkbGANfqtGYeY3G5KmCkpgEYlKkmiDNG+SpQtLT9/53gt/9CbYd5iT9GgP+IvGXwDWplgCz3NnA==";
+      url = "https://registry.npmjs.org/insect/-/insect-5.7.0.tgz";
+      sha512 = "rm3APOoPrf7J66Bo7bHOn0c/k/STonQ+KSdyLid9NQvSM+LTpeL9X8RnOZ3NRlz01/MgXqQ0CGAGh60kSB9Xlw==";
     };
     dependencies = [
       sources."@jcubic/lily-0.3.0"
@@ -103624,7 +103583,6 @@ in
       sources."nice-try-1.0.5"
       sources."npm-run-path-2.0.2"
       sources."once-1.4.0"
-      sources."os-homedir-1.0.2"
       sources."p-finally-1.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
@@ -103640,7 +103598,7 @@ in
       sources."wcwidth-1.0.1"
       sources."which-1.3.1"
       sources."wrappy-1.0.2"
-      sources."xdg-basedir-2.0.0"
+      sources."xdg-basedir-4.0.0"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -103731,7 +103689,7 @@ in
       sources."discontinuous-range-1.0.0"
       sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
       sources."ecc-jsbn-0.1.2"
       (sources."editorconfig-0.15.3" // {
@@ -103784,11 +103742,11 @@ in
         ];
       })
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."micromatch-4.0.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-1.0.4"
       sources."moo-0.5.1"
       sources."nearley-2.20.1"
@@ -103825,17 +103783,17 @@ in
       sources."tough-cookie-2.5.0"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
-      sources."typescript-4.6.2"
+      sources."typescript-4.6.3"
       sources."universalify-2.0.0"
       sources."uri-js-4.4.1"
       sources."uuid-3.4.0"
       sources."verror-1.10.0"
-      (sources."vscode-css-languageservice-5.1.13" // {
+      (sources."vscode-css-languageservice-5.3.0" // {
         dependencies = [
           sources."vscode-languageserver-types-3.16.0"
         ];
       })
-      (sources."vscode-html-languageservice-4.2.2" // {
+      (sources."vscode-html-languageservice-4.2.4" // {
         dependencies = [
           sources."vscode-languageserver-types-3.16.0"
         ];
@@ -103892,7 +103850,7 @@ in
       sources."@tootallnate/once-1.1.2"
       sources."agent-base-6.0.2"
       sources."ansi-escapes-3.2.0"
-      sources."ansi-regex-4.1.0"
+      sources."ansi-regex-4.1.1"
       sources."ansi-styles-3.2.1"
       (sources."ast-types-0.13.4" // {
         dependencies = [
@@ -103925,7 +103883,7 @@ in
       sources."core-util-is-1.0.3"
       sources."cross-spawn-7.0.3"
       sources."data-uri-to-buffer-3.0.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deep-is-0.1.4"
       sources."degenerator-2.2.0"
       sources."delayed-stream-1.0.0"
@@ -104040,14 +103998,14 @@ in
       sources."macos-release-2.5.0"
       sources."methods-1.1.2"
       sources."mime-2.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."ms-2.1.2"
       sources."mute-stream-0.0.8"
       sources."netmask-1.0.6"
@@ -104190,42 +104148,42 @@ in
     dependencies = [
       sources."@iarna/toml-2.2.5"
       sources."@msgpack/msgpack-2.7.2"
-      sources."@ot-builder/bin-composite-types-1.4.0"
-      sources."@ot-builder/bin-util-1.4.0"
-      sources."@ot-builder/cli-help-shower-1.4.0"
-      sources."@ot-builder/cli-proc-1.4.0"
-      sources."@ot-builder/cli-shared-1.4.0"
-      sources."@ot-builder/common-impl-1.4.0"
-      sources."@ot-builder/errors-1.4.0"
-      sources."@ot-builder/io-bin-cff-1.4.0"
-      sources."@ot-builder/io-bin-encoding-1.4.0"
-      sources."@ot-builder/io-bin-ext-private-1.4.0"
-      sources."@ot-builder/io-bin-font-1.4.0"
-      sources."@ot-builder/io-bin-glyph-store-1.4.0"
-      sources."@ot-builder/io-bin-layout-1.4.0"
-      sources."@ot-builder/io-bin-metadata-1.4.0"
-      sources."@ot-builder/io-bin-metric-1.4.0"
-      sources."@ot-builder/io-bin-name-1.4.0"
-      sources."@ot-builder/io-bin-sfnt-1.4.0"
-      sources."@ot-builder/io-bin-ttf-1.4.0"
-      sources."@ot-builder/io-bin-vtt-private-1.4.0"
-      sources."@ot-builder/ot-1.4.0"
-      sources."@ot-builder/ot-encoding-1.4.0"
-      sources."@ot-builder/ot-ext-private-1.4.0"
-      sources."@ot-builder/ot-glyphs-1.4.0"
-      sources."@ot-builder/ot-layout-1.4.0"
-      sources."@ot-builder/ot-metadata-1.4.0"
-      sources."@ot-builder/ot-name-1.4.0"
-      sources."@ot-builder/ot-sfnt-1.4.0"
-      sources."@ot-builder/ot-standard-glyph-namer-1.4.0"
-      sources."@ot-builder/ot-vtt-private-1.4.0"
-      sources."@ot-builder/prelude-1.4.0"
-      sources."@ot-builder/primitive-1.4.0"
-      sources."@ot-builder/rectify-1.4.0"
-      sources."@ot-builder/stat-glyphs-1.4.0"
-      sources."@ot-builder/trace-1.4.0"
-      sources."@ot-builder/var-store-1.4.0"
-      sources."@ot-builder/variance-1.4.0"
+      sources."@ot-builder/bin-composite-types-1.5.0"
+      sources."@ot-builder/bin-util-1.5.0"
+      sources."@ot-builder/cli-help-shower-1.5.0"
+      sources."@ot-builder/cli-proc-1.5.0"
+      sources."@ot-builder/cli-shared-1.5.0"
+      sources."@ot-builder/common-impl-1.5.0"
+      sources."@ot-builder/errors-1.5.0"
+      sources."@ot-builder/io-bin-cff-1.5.0"
+      sources."@ot-builder/io-bin-encoding-1.5.0"
+      sources."@ot-builder/io-bin-ext-private-1.5.0"
+      sources."@ot-builder/io-bin-font-1.5.0"
+      sources."@ot-builder/io-bin-glyph-store-1.5.0"
+      sources."@ot-builder/io-bin-layout-1.5.0"
+      sources."@ot-builder/io-bin-metadata-1.5.0"
+      sources."@ot-builder/io-bin-metric-1.5.0"
+      sources."@ot-builder/io-bin-name-1.5.0"
+      sources."@ot-builder/io-bin-sfnt-1.5.0"
+      sources."@ot-builder/io-bin-ttf-1.5.0"
+      sources."@ot-builder/io-bin-vtt-private-1.5.0"
+      sources."@ot-builder/ot-1.5.0"
+      sources."@ot-builder/ot-encoding-1.5.0"
+      sources."@ot-builder/ot-ext-private-1.5.0"
+      sources."@ot-builder/ot-glyphs-1.5.0"
+      sources."@ot-builder/ot-layout-1.5.0"
+      sources."@ot-builder/ot-metadata-1.5.0"
+      sources."@ot-builder/ot-name-1.5.0"
+      sources."@ot-builder/ot-sfnt-1.5.0"
+      sources."@ot-builder/ot-standard-glyph-namer-1.5.0"
+      sources."@ot-builder/ot-vtt-private-1.5.0"
+      sources."@ot-builder/prelude-1.5.0"
+      sources."@ot-builder/primitive-1.5.0"
+      sources."@ot-builder/rectify-1.5.0"
+      sources."@ot-builder/stat-glyphs-1.5.0"
+      sources."@ot-builder/trace-1.5.0"
+      sources."@ot-builder/var-store-1.5.0"
+      sources."@ot-builder/variance-1.5.0"
       sources."@unicode/unicode-14.0.0-1.2.1"
       sources."@xmldom/xmldom-0.7.5"
       sources."aglfn-1.0.2"
@@ -104287,8 +104245,8 @@ in
       sources."mimic-fn-2.1.0"
       sources."onetime-5.1.2"
       sources."optionator-0.8.3"
-      sources."ot-builder-1.4.0"
-      sources."otb-ttc-bundle-1.4.0"
+      sources."ot-builder-1.5.0"
+      sources."otb-ttc-bundle-1.5.0"
       sources."passerror-1.1.1"
       sources."patel-0.37.1"
       sources."patrisika-0.24.0"
@@ -104322,7 +104280,7 @@ in
       sources."universalify-2.0.0"
       (sources."verda-1.5.0" // {
         dependencies = [
-          sources."yargs-17.3.1"
+          sources."yargs-17.4.0"
           sources."yargs-parser-21.0.1"
         ];
       })
@@ -104347,25 +104305,24 @@ in
   jake = nodeEnv.buildNodePackage {
     name = "jake";
     packageName = "jake";
-    version = "10.8.2";
+    version = "10.8.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/jake/-/jake-10.8.2.tgz";
-      sha512 = "eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A==";
+      url = "https://registry.npmjs.org/jake/-/jake-10.8.4.tgz";
+      sha512 = "MtWeTkl1qGsWUtbl/Jsca/8xSoK3x0UmS82sNbjqxxG/de/M/3b1DntdjHgPMC50enlTNwXOCRqPXLLt5cCfZA==";
     };
     dependencies = [
-      sources."ansi-styles-3.2.1"
+      sources."ansi-styles-4.3.0"
       sources."async-0.9.2"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."chalk-2.4.2"
-      sources."color-convert-1.9.3"
-      sources."color-name-1.1.3"
+      sources."chalk-4.1.2"
+      sources."color-convert-2.0.1"
+      sources."color-name-1.1.4"
       sources."concat-map-0.0.1"
-      sources."escape-string-regexp-1.0.5"
       sources."filelist-1.0.2"
-      sources."has-flag-3.0.0"
+      sources."has-flag-4.0.0"
       sources."minimatch-3.1.2"
-      sources."supports-color-5.5.0"
+      sources."supports-color-7.2.0"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -104419,7 +104376,7 @@ in
       sources."long-2.4.0"
       sources."loupe-2.3.4"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mz-2.7.0"
       sources."node-int64-0.4.0"
       sources."object-assign-4.1.1"
@@ -104513,88 +104470,88 @@ in
           sources."tslib-1.14.1"
         ];
       })
-      sources."@aws-sdk/abort-controller-3.54.0"
-      sources."@aws-sdk/chunked-blob-reader-3.52.0"
-      sources."@aws-sdk/chunked-blob-reader-native-3.52.0"
-      sources."@aws-sdk/client-s3-3.54.0"
-      sources."@aws-sdk/client-sso-3.54.0"
-      sources."@aws-sdk/client-sts-3.54.0"
-      sources."@aws-sdk/config-resolver-3.54.0"
-      sources."@aws-sdk/credential-provider-env-3.54.0"
-      sources."@aws-sdk/credential-provider-imds-3.54.0"
-      sources."@aws-sdk/credential-provider-ini-3.54.0"
-      sources."@aws-sdk/credential-provider-node-3.54.0"
-      sources."@aws-sdk/credential-provider-process-3.54.0"
-      sources."@aws-sdk/credential-provider-sso-3.54.0"
-      sources."@aws-sdk/credential-provider-web-identity-3.54.0"
-      sources."@aws-sdk/eventstream-marshaller-3.54.0"
-      sources."@aws-sdk/eventstream-serde-browser-3.54.0"
-      sources."@aws-sdk/eventstream-serde-config-resolver-3.54.0"
-      sources."@aws-sdk/eventstream-serde-node-3.54.0"
-      sources."@aws-sdk/eventstream-serde-universal-3.54.0"
-      sources."@aws-sdk/fetch-http-handler-3.54.0"
-      sources."@aws-sdk/hash-blob-browser-3.54.0"
-      sources."@aws-sdk/hash-node-3.54.0"
-      sources."@aws-sdk/hash-stream-node-3.54.0"
-      sources."@aws-sdk/invalid-dependency-3.54.0"
-      sources."@aws-sdk/is-array-buffer-3.52.0"
-      sources."@aws-sdk/md5-js-3.54.0"
-      sources."@aws-sdk/middleware-bucket-endpoint-3.54.0"
-      sources."@aws-sdk/middleware-content-length-3.54.0"
-      sources."@aws-sdk/middleware-expect-continue-3.54.0"
-      sources."@aws-sdk/middleware-flexible-checksums-3.54.0"
-      sources."@aws-sdk/middleware-header-default-3.54.0"
-      sources."@aws-sdk/middleware-host-header-3.54.0"
-      sources."@aws-sdk/middleware-location-constraint-3.54.0"
-      sources."@aws-sdk/middleware-logger-3.54.0"
-      (sources."@aws-sdk/middleware-retry-3.54.0" // {
+      sources."@aws-sdk/abort-controller-3.55.0"
+      sources."@aws-sdk/chunked-blob-reader-3.55.0"
+      sources."@aws-sdk/chunked-blob-reader-native-3.55.0"
+      sources."@aws-sdk/client-s3-3.56.0"
+      sources."@aws-sdk/client-sso-3.56.0"
+      sources."@aws-sdk/client-sts-3.56.0"
+      sources."@aws-sdk/config-resolver-3.56.0"
+      sources."@aws-sdk/credential-provider-env-3.55.0"
+      sources."@aws-sdk/credential-provider-imds-3.56.0"
+      sources."@aws-sdk/credential-provider-ini-3.56.0"
+      sources."@aws-sdk/credential-provider-node-3.56.0"
+      sources."@aws-sdk/credential-provider-process-3.56.0"
+      sources."@aws-sdk/credential-provider-sso-3.56.0"
+      sources."@aws-sdk/credential-provider-web-identity-3.55.0"
+      sources."@aws-sdk/eventstream-marshaller-3.55.0"
+      sources."@aws-sdk/eventstream-serde-browser-3.55.0"
+      sources."@aws-sdk/eventstream-serde-config-resolver-3.55.0"
+      sources."@aws-sdk/eventstream-serde-node-3.55.0"
+      sources."@aws-sdk/eventstream-serde-universal-3.55.0"
+      sources."@aws-sdk/fetch-http-handler-3.55.0"
+      sources."@aws-sdk/hash-blob-browser-3.55.0"
+      sources."@aws-sdk/hash-node-3.55.0"
+      sources."@aws-sdk/hash-stream-node-3.55.0"
+      sources."@aws-sdk/invalid-dependency-3.55.0"
+      sources."@aws-sdk/is-array-buffer-3.55.0"
+      sources."@aws-sdk/md5-js-3.55.0"
+      sources."@aws-sdk/middleware-bucket-endpoint-3.56.0"
+      sources."@aws-sdk/middleware-content-length-3.55.0"
+      sources."@aws-sdk/middleware-expect-continue-3.55.0"
+      sources."@aws-sdk/middleware-flexible-checksums-3.55.0"
+      sources."@aws-sdk/middleware-header-default-3.55.0"
+      sources."@aws-sdk/middleware-host-header-3.55.0"
+      sources."@aws-sdk/middleware-location-constraint-3.55.0"
+      sources."@aws-sdk/middleware-logger-3.55.0"
+      (sources."@aws-sdk/middleware-retry-3.56.0" // {
         dependencies = [
           sources."uuid-8.3.2"
         ];
       })
-      sources."@aws-sdk/middleware-sdk-s3-3.54.0"
-      sources."@aws-sdk/middleware-sdk-sts-3.54.0"
-      sources."@aws-sdk/middleware-serde-3.54.0"
-      sources."@aws-sdk/middleware-signing-3.54.0"
-      sources."@aws-sdk/middleware-ssec-3.54.0"
-      sources."@aws-sdk/middleware-stack-3.54.0"
-      sources."@aws-sdk/middleware-user-agent-3.54.0"
-      sources."@aws-sdk/node-config-provider-3.54.0"
-      sources."@aws-sdk/node-http-handler-3.54.0"
-      sources."@aws-sdk/property-provider-3.54.0"
-      sources."@aws-sdk/protocol-http-3.54.0"
-      sources."@aws-sdk/querystring-builder-3.54.0"
-      sources."@aws-sdk/querystring-parser-3.54.0"
-      sources."@aws-sdk/s3-request-presigner-3.54.0"
-      sources."@aws-sdk/service-error-classification-3.54.0"
-      sources."@aws-sdk/shared-ini-file-loader-3.52.0"
-      sources."@aws-sdk/signature-v4-3.54.0"
-      sources."@aws-sdk/smithy-client-3.54.0"
-      sources."@aws-sdk/types-3.54.0"
-      sources."@aws-sdk/url-parser-3.54.0"
-      sources."@aws-sdk/util-arn-parser-3.52.0"
-      sources."@aws-sdk/util-base64-browser-3.52.0"
-      sources."@aws-sdk/util-base64-node-3.52.0"
-      sources."@aws-sdk/util-body-length-browser-3.54.0"
-      sources."@aws-sdk/util-body-length-node-3.54.0"
-      sources."@aws-sdk/util-buffer-from-3.52.0"
-      sources."@aws-sdk/util-config-provider-3.52.0"
-      sources."@aws-sdk/util-create-request-3.54.0"
-      sources."@aws-sdk/util-credentials-3.53.0"
-      sources."@aws-sdk/util-defaults-mode-browser-3.54.0"
-      sources."@aws-sdk/util-defaults-mode-node-3.54.0"
-      sources."@aws-sdk/util-format-url-3.54.0"
-      sources."@aws-sdk/util-hex-encoding-3.52.0"
-      sources."@aws-sdk/util-locate-window-3.52.0"
-      sources."@aws-sdk/util-stream-browser-3.54.0"
-      sources."@aws-sdk/util-stream-node-3.54.0"
-      sources."@aws-sdk/util-uri-escape-3.52.0"
-      sources."@aws-sdk/util-user-agent-browser-3.54.0"
-      sources."@aws-sdk/util-user-agent-node-3.54.0"
-      sources."@aws-sdk/util-utf8-browser-3.52.0"
-      sources."@aws-sdk/util-utf8-node-3.52.0"
-      sources."@aws-sdk/util-waiter-3.54.0"
-      sources."@aws-sdk/xml-builder-3.52.0"
+      sources."@aws-sdk/middleware-sdk-s3-3.56.0"
+      sources."@aws-sdk/middleware-sdk-sts-3.56.0"
+      sources."@aws-sdk/middleware-serde-3.55.0"
+      sources."@aws-sdk/middleware-signing-3.56.0"
+      sources."@aws-sdk/middleware-ssec-3.55.0"
+      sources."@aws-sdk/middleware-stack-3.55.0"
+      sources."@aws-sdk/middleware-user-agent-3.55.0"
+      sources."@aws-sdk/node-config-provider-3.56.0"
+      sources."@aws-sdk/node-http-handler-3.55.0"
+      sources."@aws-sdk/property-provider-3.55.0"
+      sources."@aws-sdk/protocol-http-3.55.0"
+      sources."@aws-sdk/querystring-builder-3.55.0"
+      sources."@aws-sdk/querystring-parser-3.55.0"
+      sources."@aws-sdk/s3-request-presigner-3.56.0"
+      sources."@aws-sdk/service-error-classification-3.55.0"
+      sources."@aws-sdk/shared-ini-file-loader-3.56.0"
+      sources."@aws-sdk/signature-v4-3.56.0"
+      sources."@aws-sdk/smithy-client-3.55.0"
+      sources."@aws-sdk/types-3.55.0"
+      sources."@aws-sdk/url-parser-3.55.0"
+      sources."@aws-sdk/util-arn-parser-3.55.0"
+      sources."@aws-sdk/util-base64-browser-3.55.0"
+      sources."@aws-sdk/util-base64-node-3.55.0"
+      sources."@aws-sdk/util-body-length-browser-3.55.0"
+      sources."@aws-sdk/util-body-length-node-3.55.0"
+      sources."@aws-sdk/util-buffer-from-3.55.0"
+      sources."@aws-sdk/util-config-provider-3.55.0"
+      sources."@aws-sdk/util-create-request-3.55.0"
+      sources."@aws-sdk/util-defaults-mode-browser-3.55.0"
+      sources."@aws-sdk/util-defaults-mode-node-3.56.0"
+      sources."@aws-sdk/util-format-url-3.55.0"
+      sources."@aws-sdk/util-hex-encoding-3.55.0"
+      sources."@aws-sdk/util-locate-window-3.55.0"
+      sources."@aws-sdk/util-middleware-3.55.0"
+      sources."@aws-sdk/util-stream-browser-3.55.0"
+      sources."@aws-sdk/util-stream-node-3.55.0"
+      sources."@aws-sdk/util-uri-escape-3.55.0"
+      sources."@aws-sdk/util-user-agent-browser-3.55.0"
+      sources."@aws-sdk/util-user-agent-node-3.56.0"
+      sources."@aws-sdk/util-utf8-browser-3.55.0"
+      sources."@aws-sdk/util-utf8-node-3.55.0"
+      sources."@aws-sdk/util-waiter-3.55.0"
+      sources."@aws-sdk/xml-builder-3.55.0"
       sources."@braintree/sanitize-url-3.1.0"
       sources."@cronvel/get-pixels-3.4.0"
       sources."@joplin/fork-htmlparser2-4.1.39"
@@ -104654,7 +104611,7 @@ in
       sources."async-mutex-0.1.4"
       sources."asynckit-0.4.0"
       sources."atob-2.1.2"
-      (sources."aws-sdk-2.1092.0" // {
+      (sources."aws-sdk-2.1101.0" // {
         dependencies = [
           sources."sax-1.2.1"
           sources."uuid-3.3.2"
@@ -104809,7 +104766,7 @@ in
       sources."diff-match-patch-1.0.5"
       (sources."dom-serializer-1.3.2" // {
         dependencies = [
-          sources."domhandler-4.3.0"
+          sources."domhandler-4.3.1"
         ];
       })
       sources."domelementtype-2.2.0"
@@ -104818,7 +104775,7 @@ in
       sources."dompurify-2.3.5"
       (sources."domutils-2.8.0" // {
         dependencies = [
-          sources."domhandler-4.3.0"
+          sources."domhandler-4.3.1"
         ];
       })
       sources."ecc-jsbn-0.1.2"
@@ -104894,7 +104851,7 @@ in
       sources."has-flag-4.0.0"
       sources."has-unicode-2.0.1"
       sources."he-1.2.0"
-      sources."highlight.js-11.4.0"
+      sources."highlight.js-11.5.0"
       sources."html-encoding-sniffer-1.0.2"
       sources."html-entities-1.4.0"
       sources."html-minifier-3.5.21"
@@ -105029,19 +104986,19 @@ in
       sources."md5-file-4.0.0"
       sources."mdurl-1.0.1"
       sources."mermaid-8.14.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimer-2.0.2"
       sources."mimic-response-3.1.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."minipass-2.9.0" // {
         dependencies = [
           sources."yallist-3.1.1"
         ];
       })
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."mkdirp-classic-0.5.3"
       sources."moment-2.29.1"
       sources."moment-mini-2.24.0"
@@ -105241,7 +105198,7 @@ in
       })
       (sources."strip-ansi-4.0.0" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
         ];
       })
       sources."strip-json-comments-2.0.1"
@@ -105422,7 +105379,7 @@ in
       sha512 = "IdQ8ppSo5LKZ9o3M+LKIIK8i00DIe5msDvG3G81Km+1dhy0XrOWD0Ji8H61ElgyEj/O9KRLokgKbAM9XX9CJAg==";
     };
     dependencies = [
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@types/linkify-it-3.0.2"
       sources."@types/markdown-it-12.2.3"
       sources."@types/mdurl-1.0.2"
@@ -105539,7 +105496,7 @@ in
       sources."d-1.0.1"
       sources."difflib-0.2.4"
       sources."dreamopt-0.8.0"
-      sources."es5-ext-0.10.58"
+      sources."es5-ext-0.10.59"
       sources."es6-iterator-2.0.3"
       sources."es6-symbol-3.1.3"
       sources."es6-weak-map-2.0.3"
@@ -105602,8 +105559,8 @@ in
       sources."lodash-4.17.21"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."ms-2.1.3"
       sources."native-promise-only-0.8.1"
       sources."object-inspect-1.12.0"
@@ -105762,10 +105719,10 @@ in
       })
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-response-1.0.1"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."morgan-1.10.0" // {
         dependencies = [
           sources."depd-2.0.0"
@@ -105848,7 +105805,7 @@ in
       sources."xdg-basedir-4.0.0"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      sources."yargs-17.3.1"
+      sources."yargs-17.4.0"
       sources."yargs-parser-21.0.1"
     ];
     buildInputs = globalBuildInputs;
@@ -106150,15 +106107,15 @@ in
       sources."methods-1.1.2"
       sources."micromatch-2.3.11"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
-      sources."minimist-1.2.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
+      sources."minimist-1.2.6"
       (sources."mixin-deep-1.3.2" // {
         dependencies = [
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       (sources."morgan-1.10.0" // {
         dependencies = [
           sources."depd-2.0.0"
@@ -106492,7 +106449,7 @@ in
         ];
       })
       sources."@oclif/screen-1.0.4"
-      (sources."@putdotio/api-client-8.30.0" // {
+      (sources."@putdotio/api-client-8.31.2" // {
         dependencies = [
           sources."axios-0.21.4"
         ];
@@ -106545,14 +106502,14 @@ in
         ];
       })
       sources."debounce-fn-3.0.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."delayed-stream-1.0.0"
       sources."dir-glob-3.0.1"
       sources."dot-prop-5.3.0"
       sources."dotenv-8.6.0"
       sources."emoji-regex-8.0.0"
       sources."env-paths-2.2.1"
-      sources."es5-ext-0.10.58"
+      sources."es5-ext-0.10.59"
       sources."es6-iterator-2.0.3"
       sources."es6-symbol-3.1.3"
       sources."escape-string-regexp-4.0.0"
@@ -106612,9 +106569,9 @@ in
         ];
       })
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."micromatch-4.0.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."moment-2.29.1"
       sources."ms-2.1.2"
@@ -106695,10 +106652,10 @@ in
   katex = nodeEnv.buildNodePackage {
     name = "katex";
     packageName = "katex";
-    version = "0.15.2";
+    version = "0.15.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/katex/-/katex-0.15.2.tgz";
-      sha512 = "FfZ/f6f8bQdLmJ3McXDNTkKenQkoXkItpW0I9bsG2wgb+8JAY5bwpXFtI8ZVrg5hc1wo1X/UIhdkVMpok46tEQ==";
+      url = "https://registry.npmjs.org/katex/-/katex-0.15.3.tgz";
+      sha512 = "Al6V7RJsmjklT9QItyHWGaQCt+NYTle1bZwB1e9MR/tLoIT1MXaHy9UpfGSB7eaqDgjjqqRxQOaQGrALCrEyBQ==";
     };
     dependencies = [
       sources."commander-8.3.0"
@@ -106727,7 +106684,7 @@ in
       sources."@types/component-emitter-1.2.11"
       sources."@types/cookie-0.4.1"
       sources."@types/cors-2.8.12"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."accepts-1.3.8"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-4.3.0"
@@ -106750,7 +106707,7 @@ in
       sources."cookie-0.4.2"
       sources."cors-2.8.5"
       sources."custom-event-1.0.1"
-      sources."date-format-4.0.4"
+      sources."date-format-4.0.6"
       sources."debug-2.6.9"
       sources."depd-1.1.2"
       sources."di-0.0.1"
@@ -106760,7 +106717,7 @@ in
       sources."encodeurl-1.0.2"
       (sources."engine.io-6.1.3" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -106791,22 +106748,22 @@ in
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.3"
       sources."is-number-7.0.0"
-      sources."isbinaryfile-4.0.8"
+      sources."isbinaryfile-4.0.10"
       sources."jsonfile-6.1.0"
       sources."lodash-4.17.21"
-      (sources."log4js-6.4.2" // {
+      (sources."log4js-6.4.4" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."media-typer-0.3.0"
       sources."mime-2.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."negotiator-0.6.3"
       sources."normalize-path-3.0.0"
@@ -106829,22 +106786,22 @@ in
       sources."setprototypeof-1.2.0"
       (sources."socket.io-4.4.1" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."socket.io-adapter-2.3.3"
       (sources."socket.io-parser-4.0.4" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."source-map-0.6.1"
       sources."statuses-1.5.0"
-      (sources."streamroller-3.0.4" // {
+      (sources."streamroller-3.0.6" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -106880,24 +106837,24 @@ in
   keyoxide = nodeEnv.buildNodePackage {
     name = "keyoxide";
     packageName = "keyoxide";
-    version = "0.4.3";
+    version = "0.4.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/keyoxide/-/keyoxide-0.4.3.tgz";
-      sha512 = "ffn0F9o3Yy6E9UFAS/vzOpsYxbVwk/pbSWrS3YPIZs+PtUv6zmwrkZ+71xSSb6tHBkJw5k93vOdkbo4cViFdFA==";
+      url = "https://registry.npmjs.org/keyoxide/-/keyoxide-0.4.4.tgz";
+      sha512 = "RUV9keqP/XK49OiVC4l5N5NxjYDPoDJFkr5OLa7rlFd/6JYah7YkqMfzm7Q9iw2ig9GKiQI9KgtR2IixzwEJnw==";
     };
     dependencies = [
       sources."@ampproject/remapping-2.1.2"
       sources."@babel/cli-7.17.6"
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/compat-data-7.17.0"
-      (sources."@babel/core-7.17.5" // {
+      sources."@babel/compat-data-7.17.7"
+      (sources."@babel/core-7.17.8" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/generator-7.17.3"
+      sources."@babel/generator-7.17.7"
       sources."@babel/helper-annotate-as-pure-7.16.7"
-      (sources."@babel/helper-compilation-targets-7.16.7" // {
+      (sources."@babel/helper-compilation-targets-7.17.7" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
@@ -106907,53 +106864,62 @@ in
       sources."@babel/helper-get-function-arity-7.16.7"
       sources."@babel/helper-hoist-variables-7.16.7"
       sources."@babel/helper-module-imports-7.16.7"
-      sources."@babel/helper-module-transforms-7.17.6"
+      sources."@babel/helper-module-transforms-7.17.7"
       sources."@babel/helper-plugin-utils-7.16.7"
-      sources."@babel/helper-simple-access-7.16.7"
+      sources."@babel/helper-simple-access-7.17.7"
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/helper-validator-option-7.16.7"
-      sources."@babel/helpers-7.17.2"
+      sources."@babel/helpers-7.17.8"
       sources."@babel/highlight-7.16.10"
       sources."@babel/node-7.16.8"
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/plugin-syntax-jsx-7.16.7"
       sources."@babel/plugin-transform-react-jsx-7.17.3"
-      sources."@babel/register-7.17.0"
+      sources."@babel/register-7.17.7"
       sources."@babel/template-7.16.7"
       sources."@babel/traverse-7.17.3"
       sources."@babel/types-7.17.0"
       sources."@jridgewell/resolve-uri-3.0.5"
       sources."@jridgewell/sourcemap-codec-1.4.11"
       sources."@jridgewell/trace-mapping-0.3.4"
+      sources."@nodelib/fs.scandir-2.1.5"
+      sources."@nodelib/fs.stat-2.0.5"
+      sources."@nodelib/fs.walk-1.2.8"
+      sources."@openpgp/hkp-client-0.0.2"
+      sources."@openpgp/wkd-client-0.0.3"
+      sources."@peculiar/asn1-schema-2.1.0"
+      sources."@peculiar/json-schema-1.1.12"
+      sources."@peculiar/webcrypto-1.3.3"
       sources."@tootallnate/once-1.1.2"
-      sources."@xmpp/base64-0.12.1"
-      sources."@xmpp/client-0.12.1"
-      sources."@xmpp/client-core-0.12.1"
-      sources."@xmpp/connection-0.12.1"
-      sources."@xmpp/connection-tcp-0.12.1"
-      sources."@xmpp/debug-0.12.1"
-      sources."@xmpp/error-0.12.1"
-      sources."@xmpp/events-0.12.1"
-      sources."@xmpp/id-0.12.1"
-      sources."@xmpp/iq-0.12.1"
-      sources."@xmpp/jid-0.12.1"
-      sources."@xmpp/middleware-0.12.1"
-      sources."@xmpp/reconnect-0.12.1"
-      sources."@xmpp/resolve-0.12.1"
-      sources."@xmpp/resource-binding-0.12.1"
-      sources."@xmpp/sasl-0.12.1"
-      sources."@xmpp/sasl-anonymous-0.12.1"
-      sources."@xmpp/sasl-plain-0.12.1"
-      sources."@xmpp/sasl-scram-sha-1-0.12.1"
-      sources."@xmpp/session-establishment-0.12.1"
-      sources."@xmpp/starttls-0.12.1"
-      sources."@xmpp/stream-features-0.12.1"
-      sources."@xmpp/stream-management-0.12.1"
-      sources."@xmpp/tcp-0.12.1"
-      sources."@xmpp/tls-0.12.1"
-      sources."@xmpp/websocket-0.12.1"
-      sources."@xmpp/xml-0.12.1"
+      sources."@types/asn1js-2.0.2"
+      sources."@xmpp/base64-0.13.1"
+      sources."@xmpp/client-0.13.1"
+      sources."@xmpp/client-core-0.13.1"
+      sources."@xmpp/connection-0.13.1"
+      sources."@xmpp/connection-tcp-0.13.1"
+      sources."@xmpp/debug-0.13.0"
+      sources."@xmpp/error-0.13.1"
+      sources."@xmpp/events-0.13.1"
+      sources."@xmpp/id-0.13.1"
+      sources."@xmpp/iq-0.13.1"
+      sources."@xmpp/jid-0.13.1"
+      sources."@xmpp/middleware-0.13.1"
+      sources."@xmpp/reconnect-0.13.1"
+      sources."@xmpp/resolve-0.13.1"
+      sources."@xmpp/resource-binding-0.13.1"
+      sources."@xmpp/sasl-0.13.1"
+      sources."@xmpp/sasl-anonymous-0.13.1"
+      sources."@xmpp/sasl-plain-0.13.1"
+      sources."@xmpp/sasl-scram-sha-1-0.13.1"
+      sources."@xmpp/session-establishment-0.13.1"
+      sources."@xmpp/starttls-0.13.1"
+      sources."@xmpp/stream-features-0.13.1"
+      sources."@xmpp/stream-management-0.13.1"
+      sources."@xmpp/tcp-0.13.1"
+      sources."@xmpp/tls-0.13.1"
+      sources."@xmpp/websocket-0.13.1"
+      sources."@xmpp/xml-0.13.1"
       sources."abab-2.0.5"
       sources."accepts-1.3.8"
       sources."acorn-8.7.0"
@@ -106965,17 +106931,29 @@ in
       sources."acorn-walk-7.2.0"
       sources."agent-base-6.0.2"
       sources."ansi-colors-4.1.1"
-      sources."ansi-regex-5.0.1"
+      sources."ansi-regex-2.1.1"
       sources."ansi-styles-3.2.1"
+      sources."aproba-1.2.0"
+      (sources."are-we-there-yet-1.1.7" // {
+        dependencies = [
+          sources."readable-stream-2.3.7"
+          sources."string_decoder-1.1.1"
+        ];
+      })
       sources."array-flatten-1.1.1"
+      sources."array-union-2.1.0"
       sources."asn1.js-5.4.1"
+      sources."asn1js-2.3.2"
       sources."asynckit-0.4.0"
+      sources."at-least-node-1.0.0"
+      sources."axios-0.25.0"
       sources."babel-plugin-jsx-pragmatic-1.0.2"
       sources."babel-plugin-syntax-jsx-6.18.0"
       sources."balanced-match-1.0.2"
       sources."base-64-1.0.0"
-      sources."bent-7.3.12"
+      sources."base64-js-1.5.1"
       sources."bitwise-xor-0.0.0"
+      sources."bl-4.1.0"
       sources."bn.js-4.12.0"
       (sources."body-parser-1.19.2" // {
         dependencies = [
@@ -106984,26 +106962,34 @@ in
         ];
       })
       sources."brace-expansion-1.1.11"
+      sources."braces-3.0.2"
       sources."browser-or-node-1.3.0"
       sources."browser-process-hrtime-1.0.0"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
+      sources."buffer-5.7.1"
       sources."buffer-from-1.1.2"
       sources."bytes-3.1.2"
-      sources."bytesish-0.4.4"
       sources."call-bind-1.0.2"
-      sources."caniuse-lite-1.0.30001314"
-      sources."caseless-0.12.0"
+      sources."caniuse-lite-1.0.30001320"
       sources."chalk-2.4.2"
       sources."chardet-1.4.0"
+      sources."chownr-1.1.4"
       sources."cipher-base-1.0.4"
-      sources."cliui-7.0.4"
+      (sources."cliui-7.0.4" // {
+        dependencies = [
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."string-width-4.2.3"
+        ];
+      })
       sources."clone-deep-4.0.1"
+      sources."code-point-at-1.1.0"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
       sources."combined-stream-1.0.8"
       sources."commander-4.1.1"
       sources."commondir-1.0.1"
       sources."concat-map-0.0.1"
+      sources."console-control-strings-1.1.0"
       (sources."content-disposition-0.5.4" // {
         dependencies = [
           sources."safe-buffer-5.2.1"
@@ -107014,6 +107000,7 @@ in
       sources."cookie-0.4.2"
       sources."cookie-signature-1.0.6"
       sources."core-js-3.21.1"
+      sources."core-util-is-1.0.3"
       sources."cors-2.8.5"
       sources."create-hash-1.2.0"
       sources."create-hmac-1.1.7"
@@ -107030,15 +107017,20 @@ in
           sources."whatwg-url-8.7.0"
         ];
       })
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decimal.js-10.3.1"
       sources."decode-uri-component-0.2.0"
+      sources."decompress-response-4.2.1"
+      sources."deep-extend-0.6.0"
       sources."deep-is-0.1.4"
       sources."define-properties-1.1.3"
       sources."delayed-stream-1.0.0"
+      sources."delegates-1.0.0"
       sources."depd-1.1.2"
       sources."destroy-1.0.4"
-      sources."doipjs-0.14.0"
+      sources."detect-libc-1.0.3"
+      sources."dir-glob-3.0.1"
+      sources."doipjs-0.15.5"
       (sources."domexception-2.0.1" // {
         dependencies = [
           sources."webidl-conversions-5.0.0"
@@ -107046,9 +107038,10 @@ in
       })
       sources."dotenv-8.6.0"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       sources."emoji-regex-8.0.0"
       sources."encodeurl-1.0.2"
+      sources."end-of-stream-1.4.4"
       sources."enquirer-2.3.6"
       sources."es-abstract-1.19.1"
       sources."es-to-primitive-1.2.1"
@@ -107065,6 +107058,7 @@ in
       sources."esutils-2.0.3"
       sources."etag-1.8.1"
       sources."events-3.3.0"
+      sources."expand-template-2.0.3"
       (sources."express-4.17.3" // {
         dependencies = [
           sources."debug-2.6.9"
@@ -107073,7 +107067,10 @@ in
         ];
       })
       sources."express-validator-6.14.0"
+      sources."fast-glob-3.2.11"
       sources."fast-levenshtein-2.0.6"
+      sources."fastq-1.13.0"
+      sources."fill-range-7.0.1"
       sources."filter-obj-1.1.0"
       (sources."finalhandler-1.1.2" // {
         dependencies = [
@@ -107083,24 +107080,50 @@ in
       })
       sources."find-cache-dir-2.1.0"
       sources."find-up-3.0.0"
+      sources."follow-redirects-1.14.9"
       sources."form-data-3.0.1"
       sources."forwarded-0.2.0"
       sources."fresh-0.5.2"
+      (sources."from2-2.3.0" // {
+        dependencies = [
+          sources."readable-stream-2.3.7"
+          sources."string_decoder-1.1.1"
+        ];
+      })
+      sources."fs-constants-1.0.0"
+      (sources."fs-extra-9.1.0" // {
+        dependencies = [
+          sources."universalify-2.0.0"
+        ];
+      })
       sources."fs-readdir-recursive-1.1.0"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
+      (sources."gauge-2.7.4" // {
+        dependencies = [
+          sources."strip-ansi-3.0.1"
+        ];
+      })
       sources."gensync-1.0.0-beta.2"
       sources."get-caller-file-2.0.5"
       sources."get-intrinsic-1.1.1"
       sources."get-symbol-description-1.0.0"
+      sources."github-from-package-0.0.0"
       sources."glob-7.2.0"
+      sources."glob-parent-5.1.2"
       sources."globals-11.12.0"
+      (sources."globby-11.1.0" // {
+        dependencies = [
+          sources."slash-3.0.0"
+        ];
+      })
       sources."graceful-fs-4.2.9"
       sources."has-1.0.3"
       sources."has-bigints-1.0.1"
       sources."has-flag-3.0.0"
       sources."has-symbols-1.0.3"
       sources."has-tostringtag-1.0.0"
+      sources."has-unicode-2.0.1"
       (sources."hash-base-3.1.0" // {
         dependencies = [
           sources."safe-buffer-5.2.1"
@@ -107112,10 +107135,13 @@ in
       sources."http-proxy-agent-4.0.1"
       sources."https-proxy-agent-5.0.0"
       sources."iconv-lite-0.4.24"
-      sources."imurmurhash-0.1.4"
+      sources."ieee754-1.2.1"
+      sources."ignore-5.2.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
+      sources."ini-1.3.8"
       sources."internal-slot-1.0.3"
+      sources."into-stream-6.0.0"
       sources."ipaddr.js-1.9.1"
       sources."irc-colors-1.5.0"
       (sources."irc-upd-0.11.0" // {
@@ -107126,19 +107152,23 @@ in
       sources."is-bigint-1.0.4"
       sources."is-boolean-object-1.1.2"
       sources."is-callable-1.2.4"
+      sources."is-core-module-2.8.1"
       sources."is-date-object-1.0.5"
-      sources."is-fullwidth-code-point-3.0.0"
+      sources."is-extglob-2.1.1"
+      sources."is-fullwidth-code-point-1.0.0"
+      sources."is-glob-4.0.3"
       sources."is-negative-zero-2.0.2"
+      sources."is-number-7.0.0"
       sources."is-number-object-1.0.6"
       sources."is-plain-obj-2.1.0"
       sources."is-plain-object-2.0.4"
       sources."is-potential-custom-element-name-1.0.1"
       sources."is-regex-1.1.4"
       sources."is-shared-array-buffer-1.0.1"
-      sources."is-stream-2.0.1"
       sources."is-string-1.0.7"
       sources."is-symbol-1.0.4"
       sources."is-weakref-1.0.2"
+      sources."isarray-1.0.0"
       sources."isobject-3.0.1"
       sources."js-tokens-4.0.0"
       (sources."jsdom-16.7.0" // {
@@ -107150,31 +107180,45 @@ in
         ];
       })
       sources."jsesc-2.5.2"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
+      (sources."jsonfile-6.1.0" // {
+        dependencies = [
+          sources."universalify-2.0.0"
+        ];
+      })
       sources."kind-of-6.0.3"
       sources."koa-compose-4.2.0"
       sources."levn-0.3.0"
       sources."locate-path-3.0.0"
       sources."lodash-4.17.21"
-      sources."ltx-2.10.0"
+      sources."lru-cache-6.0.0"
+      sources."ltx-3.0.0"
       sources."make-dir-2.1.0"
       sources."md5.js-1.3.5"
       sources."media-typer-0.3.0"
       sources."merge-descriptors-1.0.1"
       sources."merge-options-3.0.4"
+      sources."merge2-1.4.1"
       sources."methods-1.1.2"
+      sources."micromatch-4.0.5"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
+      sources."mimic-response-2.1.0"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-classic-0.5.3"
       sources."ms-2.1.2"
+      sources."multistream-4.1.0"
+      sources."napi-build-utils-1.0.2"
       sources."negotiator-0.6.3"
+      sources."node-abi-2.30.1"
       sources."node-environment-flags-1.0.6"
       sources."node-fetch-2.6.7"
-      sources."node-localstorage-1.3.1"
       sources."node-releases-2.0.2"
+      sources."npmlog-4.1.2"
+      sources."number-is-nan-1.0.1"
       sources."nwsapi-2.2.0"
       sources."object-assign-4.1.1"
       sources."object-inspect-1.12.0"
@@ -107183,8 +107227,9 @@ in
       sources."object.getownpropertydescriptors-2.1.3"
       sources."on-finished-2.3.0"
       sources."once-1.4.0"
-      sources."openpgp-4.10.10"
+      sources."openpgp-5.2.1"
       sources."optionator-0.8.3"
+      sources."p-is-promise-3.0.0"
       sources."p-limit-2.3.0"
       sources."p-locate-3.0.0"
       sources."p-try-2.2.0"
@@ -107193,24 +107238,61 @@ in
       sources."parseurl-1.3.3"
       sources."path-exists-3.0.0"
       sources."path-is-absolute-1.0.1"
+      sources."path-parse-1.0.7"
       sources."path-to-regexp-0.1.7"
+      sources."path-type-4.0.0"
       sources."picocolors-1.0.0"
+      sources."picomatch-2.3.1"
       sources."pify-4.0.1"
       sources."pirates-4.0.5"
+      (sources."pkg-5.5.2" // {
+        dependencies = [
+          sources."@babel/parser-7.16.2"
+          sources."@babel/types-7.16.0"
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
+        ];
+      })
       sources."pkg-dir-3.0.0"
+      (sources."pkg-fetch-3.2.6" // {
+        dependencies = [
+          sources."ansi-styles-4.3.0"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."semver-7.3.5"
+          sources."supports-color-7.2.0"
+        ];
+      })
+      sources."prebuild-install-6.1.4"
       sources."prelude-ls-1.1.2"
+      sources."process-nextick-args-2.0.1"
+      sources."progress-2.0.3"
       sources."proxy-addr-2.0.7"
       sources."psl-1.8.0"
+      sources."pump-3.0.0"
       sources."punycode-2.1.1"
+      sources."pvtsutils-1.2.2"
+      sources."pvutils-1.1.3"
       sources."qs-6.9.7"
       sources."query-string-6.14.1"
+      sources."queue-microtask-1.2.3"
       sources."randombytes-2.1.0"
       sources."range-parser-1.2.1"
       sources."raw-body-2.4.3"
+      sources."rc-1.2.8"
       sources."readable-stream-3.6.0"
       sources."regenerator-runtime-0.13.9"
       sources."require-directory-2.1.1"
+      sources."resolve-1.22.0"
+      sources."reusify-1.0.4"
       sources."ripemd160-2.0.2"
+      sources."run-parallel-1.2.0"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       sources."sasl-anonymous-0.1.0"
@@ -107230,12 +107312,15 @@ in
         ];
       })
       sources."serve-static-1.14.2"
+      sources."set-blocking-2.0.0"
       sources."setprototypeof-1.2.0"
       sources."sha.js-2.4.11"
       sources."shallow-clone-3.0.1"
       sources."side-channel-1.0.4"
+      sources."signal-exit-3.0.7"
+      sources."simple-concat-1.0.1"
+      sources."simple-get-3.1.1"
       sources."slash-2.0.0"
-      sources."slide-1.1.6"
       sources."source-map-0.5.7"
       (sources."source-map-support-0.5.21" // {
         dependencies = [
@@ -107244,8 +107329,18 @@ in
       })
       sources."split-on-first-1.1.0"
       sources."statuses-1.5.0"
+      (sources."stream-meter-1.0.4" // {
+        dependencies = [
+          sources."readable-stream-2.3.7"
+          sources."string_decoder-1.1.1"
+        ];
+      })
       sources."strict-uri-encode-2.0.0"
-      sources."string-width-4.2.3"
+      (sources."string-width-1.0.2" // {
+        dependencies = [
+          sources."strip-ansi-3.0.1"
+        ];
+      })
       sources."string.prototype.trimend-1.0.4"
       sources."string.prototype.trimstart-1.0.4"
       (sources."string_decoder-1.3.0" // {
@@ -107253,13 +107348,24 @@ in
           sources."safe-buffer-5.2.1"
         ];
       })
-      sources."strip-ansi-6.0.1"
+      (sources."strip-ansi-6.0.1" // {
+        dependencies = [
+          sources."ansi-regex-5.0.1"
+        ];
+      })
+      sources."strip-json-comments-2.0.1"
       sources."supports-color-5.5.0"
+      sources."supports-preserve-symlinks-flag-1.0.0"
       sources."symbol-tree-3.2.4"
+      sources."tar-fs-2.1.1"
+      sources."tar-stream-2.2.0"
       sources."to-fast-properties-2.0.0"
+      sources."to-regex-range-5.0.1"
       sources."toidentifier-1.0.1"
       sources."tough-cookie-4.0.0"
       sources."tr46-0.0.3"
+      sources."tslib-2.3.1"
+      sources."tunnel-agent-0.6.0"
       sources."type-check-0.3.2"
       sources."type-is-1.6.18"
       sources."unbox-primitive-1.0.1"
@@ -107273,26 +107379,35 @@ in
       sources."vary-1.1.2"
       sources."w3c-hr-time-1.0.2"
       sources."w3c-xmlserializer-2.0.0"
+      sources."webcrypto-core-1.7.2"
       sources."webidl-conversions-3.0.1"
       sources."whatwg-encoding-1.0.5"
       sources."whatwg-mimetype-2.3.0"
       sources."whatwg-url-5.0.0"
       sources."which-boxed-primitive-1.0.2"
+      sources."wide-align-1.1.5"
       sources."word-wrap-1.2.3"
       (sources."wrap-ansi-7.0.0" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."string-width-4.2.3"
         ];
       })
       sources."wrappy-1.0.2"
-      sources."write-file-atomic-1.3.4"
       sources."ws-8.5.0"
       sources."xml-name-validator-3.0.0"
       sources."xmlchars-2.2.0"
       sources."y18n-5.0.8"
-      sources."yargs-16.2.0"
+      sources."yallist-4.0.0"
+      (sources."yargs-16.2.0" // {
+        dependencies = [
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."string-width-4.2.3"
+        ];
+      })
       sources."yargs-parser-20.2.9"
     ];
     buildInputs = globalBuildInputs;
@@ -107519,8 +107634,8 @@ in
           sources."mimic-fn-2.1.0"
         ];
       })
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.1.2"
       sources."minimist-0.0.8"
@@ -107544,7 +107659,7 @@ in
       sources."optionator-0.8.3"
       (sources."ora-3.0.0" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."strip-ansi-4.0.0"
         ];
       })
@@ -107637,7 +107752,7 @@ in
       sources."y18n-3.2.2"
       (sources."yargs-12.0.4" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."cliui-4.1.0"
           sources."invert-kv-2.0.0"
           sources."is-fullwidth-code-point-2.0.0"
@@ -107769,11 +107884,11 @@ in
       sources."locate-path-5.0.0"
       sources."lodash-4.17.21"
       sources."log-symbols-2.2.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-1.0.4"
       sources."moment-2.29.1"
       sources."mute-stream-0.0.8"
@@ -107792,7 +107907,7 @@ in
       sources."optionator-0.8.3"
       (sources."ora-3.0.0" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."strip-ansi-4.0.0"
         ];
       })
@@ -107847,7 +107962,7 @@ in
       (sources."utile-0.3.0" // {
         dependencies = [
           sources."async-0.9.2"
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
         ];
       })
       sources."uuid-3.4.0"
@@ -108033,7 +108148,7 @@ in
       sources."@npmcli/promise-spawn-1.3.2"
       sources."@npmcli/run-script-1.8.6"
       sources."@octokit/auth-token-2.5.0"
-      sources."@octokit/core-3.5.1"
+      sources."@octokit/core-3.6.0"
       (sources."@octokit/endpoint-6.0.12" // {
         dependencies = [
           sources."is-plain-object-5.0.0"
@@ -108152,7 +108267,7 @@ in
       sources."dargs-7.0.0"
       sources."dashdash-1.14.1"
       sources."dateformat-3.0.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."debuglog-1.0.1"
       sources."decamelize-1.2.0"
       (sources."decamelize-keys-1.1.0" // {
@@ -108377,13 +108492,13 @@ in
       })
       sources."merge-stream-2.0.0"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."micromatch-4.0.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."min-indent-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."minimist-options-4.1.0" // {
         dependencies = [
           sources."arrify-1.0.1"
@@ -108429,7 +108544,7 @@ in
           sources."fs-minipass-1.2.7"
           sources."minipass-2.9.0"
           sources."minizlib-1.3.3"
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
           sources."node-gyp-5.1.1"
           sources."nopt-4.0.3"
           sources."resolve-from-4.0.0"
@@ -108790,7 +108905,7 @@ in
       sources."decode-uri-component-0.2.0"
       sources."define-property-2.0.2"
       sources."depd-2.0.0"
-      sources."destroy-1.0.4"
+      sources."destroy-1.2.0"
       sources."duplexer-0.1.2"
       sources."ee-first-1.1.1"
       sources."encodeurl-1.0.2"
@@ -108852,9 +108967,9 @@ in
         ];
       })
       sources."http-auth-3.1.3"
-      (sources."http-errors-1.8.1" // {
+      (sources."http-errors-2.0.0" // {
         dependencies = [
-          sources."depd-1.1.2"
+          sources."statuses-2.0.1"
         ];
       })
       sources."http-parser-js-0.5.6"
@@ -108883,8 +108998,8 @@ in
       sources."map-visit-1.0.0"
       sources."micromatch-3.1.10"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mixin-deep-1.3.2"
       sources."morgan-1.10.0"
       sources."ms-2.0.0"
@@ -108930,10 +109045,11 @@ in
       sources."ret-0.1.15"
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
-      (sources."send-0.17.2" // {
+      (sources."send-0.18.0" // {
         dependencies = [
-          sources."depd-1.1.2"
           sources."ms-2.1.3"
+          sources."on-finished-2.4.1"
+          sources."statuses-2.0.1"
         ];
       })
       (sources."serve-index-1.9.1" // {
@@ -109286,9 +109402,9 @@ in
       sources."methods-1.1.2"
       sources."micromatch-2.3.11"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
-      sources."minimist-1.2.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
+      sources."minimist-1.2.6"
       (sources."mixin-deep-1.3.2" // {
         dependencies = [
           sources."is-extendable-1.0.1"
@@ -109584,12 +109700,12 @@ in
     dependencies = [
       sources."@ampproject/remapping-2.1.2"
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/compat-data-7.17.0"
-      sources."@babel/core-7.17.5"
-      sources."@babel/generator-7.17.3"
+      sources."@babel/compat-data-7.17.7"
+      sources."@babel/core-7.17.8"
+      sources."@babel/generator-7.17.7"
       sources."@babel/helper-annotate-as-pure-7.16.7"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.16.7"
-      sources."@babel/helper-compilation-targets-7.16.7"
+      sources."@babel/helper-compilation-targets-7.17.7"
       sources."@babel/helper-create-class-features-plugin-7.17.6"
       sources."@babel/helper-create-regexp-features-plugin-7.17.0"
       sources."@babel/helper-define-polyfill-provider-0.3.1"
@@ -109598,26 +109714,26 @@ in
       sources."@babel/helper-function-name-7.16.7"
       sources."@babel/helper-get-function-arity-7.16.7"
       sources."@babel/helper-hoist-variables-7.16.7"
-      sources."@babel/helper-member-expression-to-functions-7.16.7"
+      sources."@babel/helper-member-expression-to-functions-7.17.7"
       sources."@babel/helper-module-imports-7.16.7"
-      sources."@babel/helper-module-transforms-7.17.6"
+      sources."@babel/helper-module-transforms-7.17.7"
       sources."@babel/helper-optimise-call-expression-7.16.7"
       sources."@babel/helper-plugin-utils-7.16.7"
       sources."@babel/helper-remap-async-to-generator-7.16.8"
       sources."@babel/helper-replace-supers-7.16.7"
-      sources."@babel/helper-simple-access-7.16.7"
+      sources."@babel/helper-simple-access-7.17.7"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.16.0"
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/helper-validator-option-7.16.7"
       sources."@babel/helper-wrap-function-7.16.8"
-      sources."@babel/helpers-7.17.2"
+      sources."@babel/helpers-7.17.8"
       (sources."@babel/highlight-7.16.10" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7"
       sources."@babel/plugin-external-helpers-7.8.3"
@@ -109658,7 +109774,7 @@ in
       sources."@babel/plugin-transform-block-scoping-7.16.7"
       sources."@babel/plugin-transform-classes-7.16.7"
       sources."@babel/plugin-transform-computed-properties-7.16.7"
-      sources."@babel/plugin-transform-destructuring-7.17.3"
+      sources."@babel/plugin-transform-destructuring-7.17.7"
       sources."@babel/plugin-transform-dotall-regex-7.16.7"
       sources."@babel/plugin-transform-duplicate-keys-7.16.7"
       sources."@babel/plugin-transform-exponentiation-operator-7.16.7"
@@ -109667,8 +109783,8 @@ in
       sources."@babel/plugin-transform-literals-7.16.7"
       sources."@babel/plugin-transform-member-expression-literals-7.16.7"
       sources."@babel/plugin-transform-modules-amd-7.16.7"
-      sources."@babel/plugin-transform-modules-commonjs-7.16.8"
-      sources."@babel/plugin-transform-modules-systemjs-7.16.7"
+      sources."@babel/plugin-transform-modules-commonjs-7.17.7"
+      sources."@babel/plugin-transform-modules-systemjs-7.17.8"
       sources."@babel/plugin-transform-modules-umd-7.16.7"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.16.8"
       sources."@babel/plugin-transform-new-target-7.16.7"
@@ -109688,7 +109804,7 @@ in
       sources."@babel/preset-env-7.16.11"
       sources."@babel/preset-modules-0.1.5"
       sources."@babel/preset-stage-2-7.8.3"
-      sources."@babel/runtime-7.17.2"
+      sources."@babel/runtime-7.17.8"
       sources."@babel/template-7.16.7"
       sources."@babel/traverse-7.17.3"
       sources."@babel/types-7.17.0"
@@ -109705,7 +109821,7 @@ in
       sources."@jridgewell/resolve-uri-3.0.5"
       sources."@jridgewell/sourcemap-codec-1.4.11"
       sources."@jridgewell/trace-mapping-0.3.4"
-      sources."@types/babel__core-7.1.18"
+      sources."@types/babel__core-7.1.19"
       sources."@types/babel__generator-7.6.4"
       sources."@types/babel__template-7.4.1"
       sources."@types/babel__traverse-7.14.2"
@@ -109714,8 +109830,8 @@ in
       sources."@types/istanbul-lib-coverage-2.0.4"
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-1.1.2"
-      sources."@types/json-schema-7.0.9"
-      sources."@types/node-17.0.21"
+      sources."@types/json-schema-7.0.11"
+      sources."@types/node-17.0.23"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/resolve-0.0.8"
       sources."@types/yargs-15.0.14"
@@ -109749,7 +109865,7 @@ in
       sources."ajv-errors-1.0.1"
       sources."ajv-keywords-3.5.2"
       sources."amdefine-1.0.1"
-      sources."ansi-regex-4.1.0"
+      sources."ansi-regex-4.1.1"
       sources."ansi-styles-3.2.1"
       sources."anymatch-3.1.2"
       sources."aproba-1.2.0"
@@ -109789,7 +109905,7 @@ in
       sources."babel-helper-remove-or-void-0.4.3"
       sources."babel-helper-to-multiple-sequence-expressions-0.5.0"
       sources."babel-jest-25.5.1"
-      sources."babel-loader-8.2.3"
+      sources."babel-loader-8.2.4"
       sources."babel-plugin-dynamic-import-node-2.3.3"
       sources."babel-plugin-istanbul-6.1.1"
       sources."babel-plugin-jest-hoist-25.5.0"
@@ -109872,7 +109988,7 @@ in
         ];
       })
       sources."browserify-zlib-0.2.0"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."bser-2.1.1"
       sources."buffer-5.2.1"
       sources."buffer-from-1.1.2"
@@ -109881,14 +109997,14 @@ in
       sources."builtin-status-codes-3.0.0"
       (sources."cacache-12.0.4" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
         ];
       })
       sources."cache-base-1.0.1"
       sources."cached-path-relative-1.1.0"
       sources."call-bind-1.0.2"
       sources."camelcase-5.3.1"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       sources."capture-exit-2.0.0"
       sources."caseless-0.12.0"
       (sources."chalk-3.0.0" // {
@@ -109954,7 +110070,7 @@ in
       sources."convert-source-map-1.8.0"
       (sources."copy-concurrently-1.0.5" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
         ];
       })
       sources."copy-descriptor-0.1.1"
@@ -109991,7 +110107,7 @@ in
       sources."dash-ast-1.0.0"
       sources."dashdash-1.14.1"
       sources."death-1.1.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       sources."decode-uri-component-0.2.0"
       sources."define-properties-1.1.3"
@@ -110011,7 +110127,7 @@ in
       sources."duplexer2-0.1.4"
       sources."duplexify-3.7.1"
       sources."ecc-jsbn-0.1.2"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -110233,7 +110349,7 @@ in
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-0.0.1"
       sources."json-stringify-safe-5.0.1"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."jsonify-0.0.0"
       sources."jsonparse-1.3.1"
       sources."jsprim-1.4.2"
@@ -110242,11 +110358,7 @@ in
       sources."labeled-stream-splicer-2.0.2"
       sources."lines-and-columns-1.2.4"
       sources."loader-runner-2.4.0"
-      (sources."loader-utils-1.4.0" // {
-        dependencies = [
-          sources."json5-1.0.1"
-        ];
-      })
+      sources."loader-utils-2.0.2"
       sources."locate-path-5.0.0"
       sources."lodash-4.17.21"
       sources."lodash.debounce-4.0.8"
@@ -110260,7 +110372,7 @@ in
       sources."md5.js-1.3.5"
       sources."memory-fs-0.4.1"
       sources."merge-stream-2.0.0"
-      (sources."micromatch-4.0.4" // {
+      (sources."micromatch-4.0.5" // {
         dependencies = [
           sources."braces-3.0.2"
           sources."fill-range-7.0.1"
@@ -110273,12 +110385,12 @@ in
           sources."bn.js-4.12.0"
         ];
       })
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mississippi-3.0.0"
       (sources."mixin-deep-1.3.2" // {
         dependencies = [
@@ -110290,7 +110402,7 @@ in
       sources."module-deps-6.2.3"
       (sources."move-concurrently-1.0.1" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
         ];
       })
       sources."ms-2.1.2"
@@ -110678,8 +110790,10 @@ in
       (sources."webpack-4.46.0" // {
         dependencies = [
           sources."acorn-6.4.2"
+          sources."json5-1.0.1"
+          sources."loader-utils-1.4.0"
           sources."micromatch-3.1.10"
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
           sources."schema-utils-1.0.0"
         ];
       })
@@ -110690,6 +110804,8 @@ in
               sources."supports-color-5.5.0"
             ];
           })
+          sources."json5-1.0.1"
+          sources."loader-utils-1.4.0"
           sources."supports-color-6.1.0"
         ];
       })
@@ -110749,7 +110865,7 @@ in
       sources."@types/commander-2.12.2"
       sources."@types/diff-3.5.5"
       sources."@types/get-stdin-5.0.1"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."commander-2.20.3"
       sources."diff-3.5.0"
       sources."get-stdin-5.0.1"
@@ -110869,8 +110985,8 @@ in
       sources."lstream-0.0.4"
       sources."mime-1.2.11"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."moment-2.29.1"
       (sources."mooremachine-2.3.0" // {
         dependencies = [
@@ -111019,7 +111135,7 @@ in
       sources."markdownlint-rule-helpers-0.16.0"
       sources."mdurl-1.0.1"
       sources."minimatch-3.0.8"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."run-con-1.2.10"
@@ -111095,10 +111211,10 @@ in
   markdown-link-check = nodeEnv.buildNodePackage {
     name = "markdown-link-check";
     packageName = "markdown-link-check";
-    version = "3.9.3";
+    version = "3.10.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/markdown-link-check/-/markdown-link-check-3.9.3.tgz";
-      sha512 = "eXW4jTs0z7MBnTnpgaM+jRNtEwBjKCW3yldNCE4v7kHqpm4BTGPaBbXqzt/Kdz1/fZl91hIXgBE/21yps1PtIQ==";
+      url = "https://registry.npmjs.org/markdown-link-check/-/markdown-link-check-3.10.0.tgz";
+      sha512 = "P2WeISLd669q4yxmX3rU6zoGcmAXdvvRK8paXxLvOlTjtxY6cObpMv0blVtampmJGMeE7QcF4Q/9YT/wfXUNaw==";
     };
     dependencies = [
       sources."ansi-styles-4.3.0"
@@ -111113,9 +111229,9 @@ in
       sources."is-absolute-url-3.0.3"
       sources."is-relative-url-3.0.0"
       sources."isemail-3.2.0"
-      sources."link-check-5.0.2"
+      sources."link-check-5.1.0"
       sources."lodash-4.17.21"
-      sources."markdown-link-extractor-1.3.1"
+      sources."markdown-link-extractor-2.0.1"
       sources."marked-4.0.12"
       sources."ms-2.1.3"
       sources."needle-3.0.0"
@@ -111191,10 +111307,10 @@ in
       sources."isstream-0.1.2"
       sources."lodash-4.17.21"
       sources."log4js-3.0.6"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.1.3"
       sources."msgpack-lite-0.1.26"
       sources."negotiator-0.6.3"
@@ -111322,7 +111438,7 @@ in
       })
       sources."ecc-jsbn-0.1.2"
       sources."entities-1.1.2"
-      sources."es5-ext-0.10.58"
+      sources."es5-ext-0.10.59"
       sources."es6-iterator-2.0.3"
       sources."es6-map-0.1.5"
       (sources."es6-set-0.1.5" // {
@@ -111439,11 +111555,11 @@ in
       sources."lodash.templatesettings-3.1.1"
       sources."mastodon-api-1.3.0"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."multipipe-0.1.2"
       sources."mute-stream-0.0.5"
@@ -111502,7 +111618,7 @@ in
       sources."supports-preserve-symlinks-flag-1.0.0"
       (sources."table-3.8.3" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."is-fullwidth-code-point-2.0.0"
           sources."string-width-2.1.1"
           sources."strip-ansi-4.0.0"
@@ -111616,7 +111732,7 @@ in
     };
     dependencies = [
       sources."@braintree/sanitize-url-3.1.0"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/yauzl-2.9.2"
       sources."agent-base-6.0.2"
       sources."ansi-styles-4.3.0"
@@ -111630,7 +111746,7 @@ in
       sources."chownr-1.1.4"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
-      sources."commander-9.0.0"
+      sources."commander-9.1.0"
       sources."concat-map-0.0.1"
       sources."cross-fetch-3.1.5"
       sources."d3-7.3.0"
@@ -111927,8 +112043,8 @@ in
       sources."lodash-4.17.21"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."ms-2.1.3"
       sources."native-promise-only-0.8.1"
       sources."object-inspect-1.12.0"
@@ -112095,7 +112211,7 @@ in
       sources."@types/istanbul-lib-coverage-2.0.4"
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-3.0.1"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/stack-utils-2.0.1"
       sources."@types/yargs-16.0.4"
       sources."@types/yargs-parser-21.0.0"
@@ -112155,7 +112271,7 @@ in
       sources."create-hash-1.2.0"
       sources."create-hmac-1.1.7"
       sources."crypto-random-string-2.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decompress-response-3.3.0"
       sources."deep-extend-0.6.0"
       sources."deep-is-0.1.4"
@@ -112249,10 +112365,10 @@ in
         ];
       })
       sources."md5.js-1.3.5"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mixpanel-0.13.0"
       sources."mkdirp-classic-0.5.3"
       sources."ms-2.1.2"
@@ -112485,7 +112601,7 @@ in
     };
     dependencies = [
       sources."@gar/promisify-1.1.3"
-      sources."@npmcli/fs-1.1.1"
+      sources."@npmcli/fs-2.1.0"
       sources."@npmcli/move-file-1.1.2"
       sources."@tootallnate/once-2.0.0"
       sources."abbrev-1.1.1"
@@ -112497,17 +112613,13 @@ in
       sources."are-we-there-yet-3.0.0"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      (sources."cacache-15.3.0" // {
-        dependencies = [
-          sources."lru-cache-6.0.0"
-        ];
-      })
+      sources."cacache-16.0.3"
       sources."chownr-2.0.0"
       sources."clean-stack-2.2.0"
       sources."color-support-1.1.3"
       sources."concat-map-0.0.1"
       sources."console-control-strings-1.1.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."delegates-1.0.0"
       sources."depd-1.1.2"
       sources."emoji-regex-8.0.0"
@@ -112534,12 +112646,12 @@ in
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-lambda-1.0.1"
       sources."isexe-2.0.0"
-      sources."lru-cache-7.4.4"
-      sources."make-fetch-happen-10.0.5"
+      sources."lru-cache-7.7.1"
+      sources."make-fetch-happen-10.1.0"
       sources."minimatch-3.1.2"
       sources."minipass-3.1.6"
       sources."minipass-collect-1.0.2"
-      sources."minipass-fetch-2.0.3"
+      sources."minipass-fetch-2.1.0"
       sources."minipass-flush-1.0.5"
       sources."minipass-pipeline-1.2.4"
       sources."minipass-sized-1.0.3"
@@ -112750,11 +112862,11 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."nan-2.15.0"
       sources."negotiator-0.6.3"
@@ -112955,10 +113067,10 @@ in
       sources."is-fullwidth-code-point-1.0.0"
       sources."isarray-1.0.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."ms-2.1.3"
       sources."needle-2.9.1"
       sources."nopt-4.0.3"
@@ -113016,7 +113128,7 @@ in
       sha512 = "DAx4v9/W2MEBb/tHNO94bmjeELdAg7CVZlPJX+UBH1RsmXB0q/3ZYW1Zi55NVMVN/0sBBO1g+dI/L0NWCG8s9A==";
     };
     dependencies = [
-      sources."@babel/runtime-7.17.2"
+      sources."@babel/runtime-7.17.8"
       sources."@mapbox/node-pre-gyp-1.0.8"
       sources."@node-red/editor-api-2.2.2"
       sources."@node-red/editor-client-2.2.2"
@@ -113040,8 +113152,8 @@ in
       sources."@szmarczak/http-timer-4.0.6"
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/keyv-3.1.3"
-      sources."@types/node-17.0.21"
+      sources."@types/keyv-3.1.4"
+      sources."@types/node-17.0.23"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."accepts-1.3.8"
@@ -113049,7 +113161,7 @@ in
       sources."acorn-walk-8.2.0"
       (sources."agent-base-6.0.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -113140,7 +113252,7 @@ in
       sources."dicer-0.2.5"
       sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
       (sources."duplexify-4.1.2" // {
         dependencies = [
@@ -113197,7 +113309,7 @@ in
       sources."http2-wrapper-1.0.3"
       (sources."https-proxy-agent-5.0.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -113234,18 +113346,18 @@ in
       sources."media-typer-0.3.0"
       (sources."memorystore-1.6.7" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-3.0.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."minipass-3.1.6" // {
         dependencies = [
           sources."yallist-4.0.0"
@@ -113256,13 +113368,13 @@ in
           sources."yallist-4.0.0"
         ];
       })
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."moment-2.29.1"
       sources."moment-timezone-0.5.34"
       (sources."mqtt-4.3.5" // {
         dependencies = [
           sources."concat-stream-2.0.0"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."lru-cache-6.0.0"
           sources."ms-2.1.2"
           sources."readable-stream-3.6.0"
@@ -113272,7 +113384,7 @@ in
       })
       (sources."mqtt-packet-6.10.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -113290,7 +113402,7 @@ in
       sources."nth-check-2.0.1"
       (sources."number-allocator-1.0.10" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -113481,10 +113593,10 @@ in
       sources."jsonfile-1.0.1"
       sources."jsprim-1.4.2"
       sources."lru-cache-6.0.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-3.1.6"
       sources."minizlib-2.1.2"
       sources."mkdirp-0.3.5"
@@ -113508,7 +113620,7 @@ in
       })
       (sources."npmconf-2.1.3" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
           sources."once-1.3.3"
           sources."semver-4.3.6"
         ];
@@ -113567,7 +113679,7 @@ in
       })
       (sources."temp-0.9.4" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
           sources."rimraf-2.6.3"
         ];
       })
@@ -113691,7 +113803,7 @@ in
       })
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."ms-2.1.3"
       sources."nopt-1.0.10"
       sources."normalize-path-3.0.0"
@@ -113761,10 +113873,10 @@ in
   np = nodeEnv.buildNodePackage {
     name = "np";
     packageName = "np";
-    version = "7.6.0";
+    version = "7.6.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/np/-/np-7.6.0.tgz";
-      sha512 = "WWGZtfNkE6MEkI7LE8NtG7poTqzTHj/tssBzcPnBAdMVPXkXDtX2wk0ptrj8YZ3u4TFmGSqioSohdud86aJxSg==";
+      url = "https://registry.npmjs.org/np/-/np-7.6.1.tgz";
+      sha512 = "EHr5PtMPzNmkM/trnWQWTKAogJnVP1RzTFfIyvPK2COvLN6Vqut4gFXuWNng15xuqnTgmUPzKYbpQAZsYR+Dkw==";
     };
     dependencies = [
       sources."@babel/code-frame-7.16.7"
@@ -113792,9 +113904,9 @@ in
       sources."@szmarczak/http-timer-4.0.6"
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/keyv-3.1.3"
+      sources."@types/keyv-3.1.4"
       sources."@types/minimist-1.2.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
       sources."@types/responselike-1.0.0"
@@ -113936,7 +114048,7 @@ in
       (sources."inquirer-autosubmit-prompt-0.2.0" // {
         dependencies = [
           sources."ansi-escapes-3.2.0"
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
           sources."cli-cursor-2.1.0"
@@ -113958,7 +114070,7 @@ in
           })
           (sources."strip-ansi-5.2.0" // {
             dependencies = [
-              sources."ansi-regex-4.1.0"
+              sources."ansi-regex-4.1.1"
             ];
           })
           sources."supports-color-5.5.0"
@@ -114066,12 +114178,12 @@ in
       })
       sources."merge-stream-2.0.0"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mimic-fn-1.2.0"
       sources."mimic-response-2.1.0"
       sources."min-indent-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minimist-options-4.1.0"
       sources."mute-stream-0.0.8"
       (sources."new-github-release-url-1.0.0" // {
@@ -114261,7 +114373,7 @@ in
       sources."widest-line-3.1.0"
       (sources."wrap-ansi-3.0.1" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."is-fullwidth-code-point-2.0.0"
           sources."string-width-2.1.1"
           sources."strip-ansi-4.0.0"
@@ -114288,10 +114400,10 @@ in
   npm = nodeEnv.buildNodePackage {
     name = "npm";
     packageName = "npm";
-    version = "8.5.4";
+    version = "8.5.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm/-/npm-8.5.4.tgz";
-      sha512 = "VnGLT4t88cUE78lLw5kxBwtLn2/Sx6O7Uw9dYwmq6AnF/taWHyMYQgDzUEsLhaXAVH7prG+sjG+MvxlHdIasgg==";
+      url = "https://registry.npmjs.org/npm/-/npm-8.5.5.tgz";
+      sha512 = "a1vl26nokCNlD+my/iNYmOUPx/hpYR4ZyZk8gb7/A2XXtrPZf2gTSJOnVjS77jQS+BSfIVQpipZwXWCL0+5wzg==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -114306,20 +114418,20 @@ in
   npm-check-updates = nodeEnv.buildNodePackage {
     name = "npm-check-updates";
     packageName = "npm-check-updates";
-    version = "12.5.3";
+    version = "12.5.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-12.5.3.tgz";
-      sha512 = "siFg/+Un+j4tLA6GJCnk6hz2YU4Yc5bftDnOoiSRLKL6NeAS3FScB32mtKNBtITMJf2nsoZSr8vH+wdUGeP19g==";
+      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-12.5.4.tgz";
+      sha512 = "4+27zaTdieWgvPLaCZ/A6Q2WC1cYVcrc2SqVmLFYgkWBrKw1QkwpeV16FSvkFGZr3OdFyr7Dpjw8JRn4H2QxFw==";
     };
     dependencies = [
       sources."@gar/promisify-1.1.3"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@npmcli/fs-1.1.1"
+      sources."@npmcli/fs-2.1.0"
       (sources."@npmcli/git-3.0.0" // {
         dependencies = [
-          sources."lru-cache-7.4.4"
+          sources."lru-cache-7.7.1"
         ];
       })
       sources."@npmcli/installed-package-contents-1.0.7"
@@ -114347,7 +114459,11 @@ in
       sources."braces-3.0.2"
       sources."buffer-from-1.1.2"
       sources."builtins-1.0.3"
-      sources."cacache-15.3.0"
+      (sources."cacache-16.0.3" // {
+        dependencies = [
+          sources."lru-cache-7.7.1"
+        ];
+      })
       (sources."cacheable-request-6.1.0" // {
         dependencies = [
           sources."get-stream-5.2.0"
@@ -114367,12 +114483,12 @@ in
       sources."color-name-1.1.4"
       sources."color-support-1.1.3"
       sources."colors-1.0.3"
-      sources."commander-9.0.0"
+      sources."commander-9.1.0"
       sources."concat-map-0.0.1"
       sources."configstore-5.0.1"
       sources."console-control-strings-1.1.0"
       sources."crypto-random-string-2.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decompress-response-3.3.0"
       sources."deep-extend-0.6.0"
       sources."defer-to-connect-1.1.3"
@@ -114459,7 +114575,7 @@ in
       sources."json-buffer-3.0.0"
       sources."json-parse-even-better-errors-2.3.1"
       sources."json-parse-helpfulerror-1.0.3"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."jsonlines-0.1.1"
       sources."jsonparse-1.3.1"
       sources."keyv-3.1.0"
@@ -114483,19 +114599,19 @@ in
           sources."semver-6.3.0"
         ];
       })
-      (sources."make-fetch-happen-10.0.5" // {
+      (sources."make-fetch-happen-10.1.0" // {
         dependencies = [
-          sources."lru-cache-7.4.4"
+          sources."lru-cache-7.7.1"
         ];
       })
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mimic-response-1.0.1"
       sources."minimatch-5.0.1"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-3.1.6"
       sources."minipass-collect-1.0.2"
-      sources."minipass-fetch-2.0.3"
+      sources."minipass-fetch-2.1.0"
       sources."minipass-flush-1.0.5"
       sources."minipass-json-stream-1.0.1"
       sources."minipass-pipeline-1.2.4"
@@ -114506,15 +114622,25 @@ in
       sources."negotiator-0.6.3"
       sources."node-gyp-9.0.0"
       sources."nopt-5.0.0"
-      sources."normalize-package-data-3.0.3"
+      (sources."normalize-package-data-4.0.0" // {
+        dependencies = [
+          sources."hosted-git-info-5.0.0"
+          sources."lru-cache-7.7.1"
+        ];
+      })
       sources."normalize-url-4.5.1"
       sources."npm-bundled-1.1.2"
       sources."npm-install-checks-4.0.0"
       sources."npm-normalize-package-bin-1.0.1"
-      sources."npm-package-arg-9.0.0"
-      sources."npm-packlist-3.0.0"
+      (sources."npm-package-arg-9.0.1" // {
+        dependencies = [
+          sources."hosted-git-info-5.0.0"
+          sources."lru-cache-7.7.1"
+        ];
+      })
+      sources."npm-packlist-4.0.0"
       sources."npm-pick-manifest-7.0.0"
-      sources."npm-registry-fetch-13.0.1"
+      sources."npm-registry-fetch-13.1.0"
       sources."npmlog-6.0.1"
       sources."once-1.4.0"
       sources."p-cancelable-1.1.0"
@@ -114527,7 +114653,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."pacote-13.0.3"
+      sources."pacote-13.0.5"
       sources."parse-github-url-1.0.2"
       sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
@@ -114544,7 +114670,7 @@ in
       sources."queue-microtask-1.2.3"
       sources."rc-1.2.8"
       sources."rc-config-loader-4.0.0"
-      sources."read-package-json-4.1.2"
+      sources."read-package-json-5.0.0"
       sources."read-package-json-fast-2.0.3"
       sources."readable-stream-3.6.0"
       sources."registry-auth-token-4.2.1"
@@ -114699,7 +114825,7 @@ in
       (sources."fstream-0.1.31" // {
         dependencies = [
           sources."graceful-fs-3.0.12"
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
         ];
       })
       sources."gauge-4.0.3"
@@ -114722,10 +114848,10 @@ in
       sources."json-stringify-safe-5.0.1"
       sources."jsonfile-1.0.1"
       sources."jsprim-1.4.2"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-0.3.5"
       sources."natives-1.1.6"
       sources."ncp-0.4.2"
@@ -114845,8 +114971,8 @@ in
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.2"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."npm-7.24.2"
       sources."oauth-sign-0.9.0"
       sources."only-0.0.2"
@@ -114929,21 +115055,21 @@ in
     dependencies = [
       sources."@ampproject/remapping-2.1.2"
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/compat-data-7.17.0"
-      (sources."@babel/core-7.17.5" // {
+      sources."@babel/compat-data-7.17.7"
+      (sources."@babel/core-7.17.8" // {
         dependencies = [
-          sources."json5-2.2.0"
+          sources."json5-2.2.1"
           sources."semver-6.3.0"
         ];
       })
-      (sources."@babel/generator-7.17.3" // {
+      (sources."@babel/generator-7.17.7" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
       sources."@babel/helper-annotate-as-pure-7.16.7"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.16.7"
-      (sources."@babel/helper-compilation-targets-7.16.7" // {
+      (sources."@babel/helper-compilation-targets-7.17.7" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
@@ -114960,22 +115086,22 @@ in
       sources."@babel/helper-function-name-7.16.7"
       sources."@babel/helper-get-function-arity-7.16.7"
       sources."@babel/helper-hoist-variables-7.16.7"
-      sources."@babel/helper-member-expression-to-functions-7.16.7"
+      sources."@babel/helper-member-expression-to-functions-7.17.7"
       sources."@babel/helper-module-imports-7.16.7"
-      sources."@babel/helper-module-transforms-7.17.6"
+      sources."@babel/helper-module-transforms-7.17.7"
       sources."@babel/helper-optimise-call-expression-7.16.7"
       sources."@babel/helper-plugin-utils-7.16.7"
       sources."@babel/helper-remap-async-to-generator-7.16.8"
       sources."@babel/helper-replace-supers-7.16.7"
-      sources."@babel/helper-simple-access-7.16.7"
+      sources."@babel/helper-simple-access-7.17.7"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.16.0"
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/helper-validator-option-7.16.7"
       sources."@babel/helper-wrap-function-7.16.8"
-      sources."@babel/helpers-7.17.2"
+      sources."@babel/helpers-7.17.8"
       sources."@babel/highlight-7.16.10"
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7"
       sources."@babel/plugin-proposal-async-generator-functions-7.16.8"
@@ -115015,7 +115141,7 @@ in
       sources."@babel/plugin-transform-block-scoping-7.16.7"
       sources."@babel/plugin-transform-classes-7.16.7"
       sources."@babel/plugin-transform-computed-properties-7.16.7"
-      sources."@babel/plugin-transform-destructuring-7.17.3"
+      sources."@babel/plugin-transform-destructuring-7.17.7"
       sources."@babel/plugin-transform-dotall-regex-7.16.7"
       sources."@babel/plugin-transform-duplicate-keys-7.16.7"
       sources."@babel/plugin-transform-exponentiation-operator-7.16.7"
@@ -115025,8 +115151,8 @@ in
       sources."@babel/plugin-transform-literals-7.16.7"
       sources."@babel/plugin-transform-member-expression-literals-7.16.7"
       sources."@babel/plugin-transform-modules-amd-7.16.7"
-      sources."@babel/plugin-transform-modules-commonjs-7.16.8"
-      sources."@babel/plugin-transform-modules-systemjs-7.16.7"
+      sources."@babel/plugin-transform-modules-commonjs-7.17.7"
+      sources."@babel/plugin-transform-modules-systemjs-7.17.8"
       sources."@babel/plugin-transform-modules-umd-7.16.7"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.16.8"
       sources."@babel/plugin-transform-new-target-7.16.7"
@@ -115049,7 +115175,7 @@ in
         ];
       })
       sources."@babel/preset-modules-0.1.5"
-      sources."@babel/runtime-7.17.2"
+      sources."@babel/runtime-7.17.8"
       sources."@babel/template-7.16.7"
       sources."@babel/traverse-7.17.3"
       sources."@babel/types-7.17.0"
@@ -115075,7 +115201,7 @@ in
       sources."acorn-walk-6.2.0"
       sources."ajv-6.12.6"
       sources."alphanum-sort-1.0.2"
-      sources."ansi-regex-3.0.0"
+      sources."ansi-regex-3.0.1"
       sources."ansi-styles-3.2.1"
       sources."ansi-to-html-0.6.15"
       (sources."anymatch-2.0.0" // {
@@ -115160,7 +115286,7 @@ in
           sources."pako-1.0.11"
         ];
       })
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       (sources."buffer-4.9.2" // {
         dependencies = [
           sources."isarray-1.0.0"
@@ -115177,7 +115303,7 @@ in
       sources."caller-path-2.0.0"
       sources."callsites-2.0.0"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       sources."caseless-0.12.0"
       sources."chalk-2.4.2"
       sources."chokidar-2.1.8"
@@ -115260,7 +115386,7 @@ in
       sources."dashdash-1.14.1"
       sources."data-urls-1.1.0"
       sources."deasync-0.1.24"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decode-uri-component-0.2.0"
       sources."deep-is-0.1.4"
       (sources."defaults-1.0.3" // {
@@ -115286,9 +115412,9 @@ in
         ];
       })
       sources."delayed-stream-1.0.0"
-      sources."depd-1.1.2"
+      sources."depd-2.0.0"
       sources."des.js-1.0.1"
-      sources."destroy-1.0.4"
+      sources."destroy-1.2.0"
       (sources."diffie-hellman-5.0.3" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -115302,7 +115428,7 @@ in
       sources."domain-browser-1.2.0"
       sources."domelementtype-1.3.1"
       sources."domexception-1.0.1"
-      (sources."domhandler-4.3.0" // {
+      (sources."domhandler-4.3.1" // {
         dependencies = [
           sources."domelementtype-2.2.0"
         ];
@@ -115314,7 +115440,7 @@ in
       sources."duplexer2-0.1.4"
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -115425,7 +115551,7 @@ in
           sources."posthtml-0.15.2"
           sources."posthtml-parser-0.7.2"
           sources."source-map-0.7.3"
-          sources."terser-5.12.0"
+          sources."terser-5.12.1"
         ];
       })
       (sources."htmlparser2-6.1.0" // {
@@ -115435,7 +115561,7 @@ in
           sources."domutils-2.8.0"
         ];
       })
-      sources."http-errors-1.8.1"
+      sources."http-errors-2.0.0"
       sources."http-signature-1.2.0"
       sources."https-browserify-1.0.0"
       sources."iconv-lite-0.4.24"
@@ -115551,19 +115677,19 @@ in
         ];
       })
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-1.2.0"
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."mixin-deep-1.3.2" // {
         dependencies = [
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."ms-2.1.2"
       sources."nan-2.15.0"
       (sources."nanomatch-1.2.13" // {
@@ -115597,7 +115723,7 @@ in
       sources."object.getownpropertydescriptors-2.1.3"
       sources."object.pick-1.3.0"
       sources."object.values-1.1.5"
-      sources."on-finished-2.3.0"
+      sources."on-finished-2.4.1"
       sources."once-1.4.0"
       sources."onetime-2.0.1"
       sources."opn-5.5.0"
@@ -115767,7 +115893,7 @@ in
       sources."sax-1.2.4"
       sources."saxes-3.1.11"
       sources."semver-5.7.1"
-      (sources."send-0.17.2" // {
+      (sources."send-0.18.0" // {
         dependencies = [
           (sources."debug-2.6.9" // {
             dependencies = [
@@ -115778,7 +115904,7 @@ in
         ];
       })
       sources."serialize-to-js-3.1.1"
-      sources."serve-static-1.14.2"
+      sources."serve-static-1.15.0"
       sources."set-value-2.0.1"
       sources."setimmediate-1.0.5"
       sources."setprototypeof-1.2.0"
@@ -115832,7 +115958,7 @@ in
       })
       sources."static-extend-0.1.2"
       sources."static-module-2.2.5"
-      sources."statuses-1.5.0"
+      sources."statuses-2.0.1"
       sources."stealthy-require-1.1.1"
       sources."stream-browserify-2.0.2"
       sources."stream-http-2.8.3"
@@ -115955,10 +116081,10 @@ in
   parcel = nodeEnv.buildNodePackage {
     name = "parcel";
     packageName = "parcel";
-    version = "2.3.2";
+    version = "2.4.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/parcel/-/parcel-2.3.2.tgz";
-      sha512 = "4jhgoBcQaiGKmnmBvNyKyOvZrxCgzgUzdEoVup/fRCOP99hNmvYIN5IErIIJxsU9ObcG/RGCFF8wa4kVRsWfIg==";
+      url = "https://registry.npmjs.org/parcel/-/parcel-2.4.0.tgz";
+      sha512 = "dPWpu4RnxG9HqiLvaF8COEWEnT/KrigrC6PyPaQ0zEgpBfp7/jzXZFBVaZk2N+lpvrbNEYMjN9bv5UQGJJszIw==";
     };
     dependencies = [
       sources."@babel/code-frame-7.16.7"
@@ -115968,70 +116094,79 @@ in
           sources."chalk-2.4.2"
         ];
       })
-      sources."@parcel/bundler-default-2.3.2"
-      sources."@parcel/cache-2.3.2"
-      sources."@parcel/codeframe-2.3.2"
-      sources."@parcel/compressor-raw-2.3.2"
-      sources."@parcel/config-default-2.3.2"
-      sources."@parcel/core-2.3.2"
-      sources."@parcel/diagnostic-2.3.2"
-      sources."@parcel/events-2.3.2"
-      sources."@parcel/fs-2.3.2"
-      sources."@parcel/fs-search-2.3.2"
-      sources."@parcel/graph-2.3.2"
-      sources."@parcel/hash-2.3.2"
-      sources."@parcel/logger-2.3.2"
-      sources."@parcel/markdown-ansi-2.3.2"
-      sources."@parcel/namer-default-2.3.2"
-      sources."@parcel/node-resolver-core-2.3.2"
-      sources."@parcel/optimizer-cssnano-2.3.2"
-      sources."@parcel/optimizer-htmlnano-2.3.2"
-      sources."@parcel/optimizer-image-2.3.2"
-      sources."@parcel/optimizer-svgo-2.3.2"
-      sources."@parcel/optimizer-terser-2.3.2"
-      sources."@parcel/package-manager-2.3.2"
-      sources."@parcel/packager-css-2.3.2"
-      sources."@parcel/packager-html-2.3.2"
-      sources."@parcel/packager-js-2.3.2"
-      sources."@parcel/packager-raw-2.3.2"
-      sources."@parcel/packager-svg-2.3.2"
-      sources."@parcel/plugin-2.3.2"
-      sources."@parcel/reporter-cli-2.3.2"
-      sources."@parcel/reporter-dev-server-2.3.2"
-      sources."@parcel/resolver-default-2.3.2"
-      sources."@parcel/runtime-browser-hmr-2.3.2"
-      sources."@parcel/runtime-js-2.3.2"
-      sources."@parcel/runtime-react-refresh-2.3.2"
-      sources."@parcel/runtime-service-worker-2.3.2"
+      sources."@parcel/bundler-default-2.4.0"
+      sources."@parcel/cache-2.4.0"
+      sources."@parcel/codeframe-2.4.0"
+      sources."@parcel/compressor-raw-2.4.0"
+      sources."@parcel/config-default-2.4.0"
+      sources."@parcel/core-2.4.0"
+      sources."@parcel/css-1.7.3"
+      sources."@parcel/css-darwin-arm64-1.7.3"
+      sources."@parcel/css-darwin-x64-1.7.3"
+      sources."@parcel/css-linux-arm-gnueabihf-1.7.3"
+      sources."@parcel/css-linux-arm64-gnu-1.7.3"
+      sources."@parcel/css-linux-arm64-musl-1.7.3"
+      sources."@parcel/css-linux-x64-gnu-1.7.3"
+      sources."@parcel/css-linux-x64-musl-1.7.3"
+      sources."@parcel/css-win32-x64-msvc-1.7.3"
+      sources."@parcel/diagnostic-2.4.0"
+      sources."@parcel/events-2.4.0"
+      sources."@parcel/fs-2.4.0"
+      sources."@parcel/fs-search-2.4.0"
+      sources."@parcel/graph-2.4.0"
+      sources."@parcel/hash-2.4.0"
+      sources."@parcel/logger-2.4.0"
+      sources."@parcel/markdown-ansi-2.4.0"
+      sources."@parcel/namer-default-2.4.0"
+      sources."@parcel/node-resolver-core-2.4.0"
+      sources."@parcel/optimizer-css-2.4.0"
+      sources."@parcel/optimizer-htmlnano-2.4.0"
+      sources."@parcel/optimizer-image-2.4.0"
+      sources."@parcel/optimizer-svgo-2.4.0"
+      sources."@parcel/optimizer-terser-2.4.0"
+      sources."@parcel/package-manager-2.4.0"
+      sources."@parcel/packager-css-2.4.0"
+      sources."@parcel/packager-html-2.4.0"
+      sources."@parcel/packager-js-2.4.0"
+      sources."@parcel/packager-raw-2.4.0"
+      sources."@parcel/packager-svg-2.4.0"
+      sources."@parcel/plugin-2.4.0"
+      sources."@parcel/reporter-cli-2.4.0"
+      sources."@parcel/reporter-dev-server-2.4.0"
+      sources."@parcel/resolver-default-2.4.0"
+      sources."@parcel/runtime-browser-hmr-2.4.0"
+      sources."@parcel/runtime-js-2.4.0"
+      sources."@parcel/runtime-react-refresh-2.4.0"
+      sources."@parcel/runtime-service-worker-2.4.0"
       sources."@parcel/source-map-2.0.2"
-      sources."@parcel/transformer-babel-2.3.2"
-      sources."@parcel/transformer-css-2.3.2"
-      (sources."@parcel/transformer-html-2.3.2" // {
+      sources."@parcel/transformer-babel-2.4.0"
+      sources."@parcel/transformer-css-2.4.0"
+      (sources."@parcel/transformer-html-2.4.0" // {
         dependencies = [
           sources."posthtml-parser-0.10.2"
         ];
       })
-      sources."@parcel/transformer-image-2.3.2"
-      sources."@parcel/transformer-js-2.3.2"
-      sources."@parcel/transformer-json-2.3.2"
-      sources."@parcel/transformer-postcss-2.3.2"
-      (sources."@parcel/transformer-posthtml-2.3.2" // {
+      sources."@parcel/transformer-image-2.4.0"
+      sources."@parcel/transformer-js-2.4.0"
+      sources."@parcel/transformer-json-2.4.0"
+      sources."@parcel/transformer-postcss-2.4.0"
+      (sources."@parcel/transformer-posthtml-2.4.0" // {
         dependencies = [
           sources."posthtml-parser-0.10.2"
         ];
       })
-      sources."@parcel/transformer-raw-2.3.2"
-      sources."@parcel/transformer-react-refresh-wrap-2.3.2"
-      (sources."@parcel/transformer-svg-2.3.2" // {
+      sources."@parcel/transformer-raw-2.4.0"
+      sources."@parcel/transformer-react-refresh-wrap-2.4.0"
+      (sources."@parcel/transformer-svg-2.4.0" // {
         dependencies = [
           sources."posthtml-parser-0.10.2"
         ];
       })
-      sources."@parcel/types-2.3.2"
-      sources."@parcel/utils-2.3.2"
+      sources."@parcel/types-2.4.0"
+      sources."@parcel/utils-2.4.0"
       sources."@parcel/watcher-2.0.5"
-      sources."@parcel/workers-2.3.2"
-      sources."@swc/helpers-0.2.14"
+      sources."@parcel/workers-2.4.0"
+      sources."@swc/helpers-0.3.8"
       sources."@trysound/sax-0.2.0"
       sources."@types/parse-json-4.0.0"
       sources."abortcontroller-polyfill-1.7.3"
@@ -116039,11 +116174,10 @@ in
       sources."ansi-styles-3.2.1"
       sources."base-x-3.0.9"
       sources."boolbase-1.0.0"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."buffer-from-1.1.2"
       sources."callsites-3.1.0"
-      sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       (sources."chalk-4.1.2" // {
         dependencies = [
           sources."ansi-styles-4.3.0"
@@ -116057,61 +116191,49 @@ in
       sources."clone-2.1.2"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."colord-2.9.2"
       sources."commander-7.2.0"
       sources."cosmiconfig-7.0.1"
-      sources."css-declaration-sorter-6.1.4"
       sources."css-select-4.2.1"
       sources."css-tree-1.1.3"
       sources."css-what-5.1.0"
-      sources."cssesc-3.0.0"
-      sources."cssnano-5.1.3"
-      sources."cssnano-preset-default-5.2.3"
-      sources."cssnano-utils-3.1.0"
       sources."csso-4.2.0"
       sources."detect-libc-1.0.3"
-      sources."dom-serializer-1.3.2"
+      (sources."dom-serializer-1.3.2" // {
+        dependencies = [
+          sources."entities-2.2.0"
+        ];
+      })
       sources."domelementtype-2.2.0"
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
       sources."dotenv-7.0.0"
       sources."dotenv-expand-5.1.0"
-      sources."electron-to-chromium-1.4.82"
-      sources."entities-2.2.0"
+      sources."electron-to-chromium-1.4.96"
+      sources."entities-3.0.1"
       sources."error-ex-1.3.2"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-1.0.5"
       sources."get-port-4.2.0"
-      sources."globals-13.12.1"
+      sources."globals-13.13.0"
       sources."has-flag-3.0.0"
       sources."htmlnano-2.0.0"
-      (sources."htmlparser2-7.2.0" // {
-        dependencies = [
-          sources."entities-3.0.1"
-        ];
-      })
+      sources."htmlparser2-7.2.0"
       sources."import-fresh-3.3.0"
       sources."is-arrayish-0.2.1"
       sources."is-json-2.0.1"
       sources."js-tokens-4.0.0"
       sources."json-parse-even-better-errors-2.3.1"
       sources."json-source-map-0.6.1"
-      sources."json5-2.2.0"
-      sources."lilconfig-2.0.4"
+      sources."json5-2.2.1"
       sources."lines-and-columns-1.2.4"
       sources."lmdb-2.2.4"
-      sources."lodash.memoize-4.1.2"
-      sources."lodash.uniq-4.5.0"
       sources."mdn-data-2.0.14"
-      sources."minimist-1.2.5"
-      sources."msgpackr-1.5.4"
+      sources."msgpackr-1.5.5"
       sources."msgpackr-extract-1.0.16"
       sources."nan-2.15.0"
-      sources."nanoid-3.3.1"
       sources."node-addon-api-3.2.1"
       sources."node-gyp-build-4.3.0"
       sources."node-releases-2.0.2"
-      sources."normalize-url-6.1.0"
       sources."nth-check-2.0.1"
       sources."nullthrows-1.1.1"
       sources."ordered-binary-1.2.4"
@@ -116119,35 +116241,6 @@ in
       sources."parse-json-5.2.0"
       sources."path-type-4.0.0"
       sources."picocolors-1.0.0"
-      sources."postcss-8.4.8"
-      sources."postcss-calc-8.2.4"
-      sources."postcss-colormin-5.3.0"
-      sources."postcss-convert-values-5.1.0"
-      sources."postcss-discard-comments-5.1.1"
-      sources."postcss-discard-duplicates-5.1.0"
-      sources."postcss-discard-empty-5.1.1"
-      sources."postcss-discard-overridden-5.1.0"
-      sources."postcss-merge-longhand-5.1.1"
-      sources."postcss-merge-rules-5.1.0"
-      sources."postcss-minify-font-values-5.1.0"
-      sources."postcss-minify-gradients-5.1.0"
-      sources."postcss-minify-params-5.1.1"
-      sources."postcss-minify-selectors-5.2.0"
-      sources."postcss-normalize-charset-5.1.0"
-      sources."postcss-normalize-display-values-5.1.0"
-      sources."postcss-normalize-positions-5.1.0"
-      sources."postcss-normalize-repeat-style-5.1.0"
-      sources."postcss-normalize-string-5.1.0"
-      sources."postcss-normalize-timing-functions-5.1.0"
-      sources."postcss-normalize-unicode-5.1.0"
-      sources."postcss-normalize-url-5.1.0"
-      sources."postcss-normalize-whitespace-5.1.1"
-      sources."postcss-ordered-values-5.1.0"
-      sources."postcss-reduce-initial-5.1.0"
-      sources."postcss-reduce-transforms-5.1.0"
-      sources."postcss-selector-parser-6.0.9"
-      sources."postcss-svgo-5.1.0"
-      sources."postcss-unique-selectors-5.1.1"
       sources."postcss-value-parser-4.2.0"
       sources."posthtml-0.16.6"
       sources."posthtml-parser-0.11.0"
@@ -116158,13 +116251,12 @@ in
       sources."safe-buffer-5.2.1"
       sources."semver-5.7.1"
       sources."source-map-0.6.1"
-      sources."source-map-js-1.0.2"
       sources."source-map-support-0.5.21"
       sources."stable-0.1.8"
-      sources."stylehacks-5.1.0"
       sources."supports-color-5.5.0"
       sources."svgo-2.8.0"
-      (sources."terser-5.12.0" // {
+      sources."term-size-2.2.1"
+      (sources."terser-5.12.1" // {
         dependencies = [
           sources."commander-2.20.3"
           sources."source-map-0.7.3"
@@ -116172,7 +116264,6 @@ in
       })
       sources."timsort-0.3.0"
       sources."type-fest-0.20.2"
-      sources."util-deprecate-1.0.2"
       sources."utility-types-3.10.0"
       sources."v8-compile-cache-2.3.0"
       sources."weak-lru-cache-1.2.2"
@@ -116204,7 +116295,7 @@ in
         ];
       })
       sources."ajv-6.12.6"
-      sources."ansi-regex-4.1.0"
+      sources."ansi-regex-4.1.1"
       sources."ansi-styles-3.2.1"
       sources."argparse-1.0.10"
       sources."array-flatten-1.1.1"
@@ -116231,7 +116322,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."bunyan-1.8.15"
       sources."bunyan-syslog-udp-0.2.0"
-      sources."busboy-1.4.0"
+      sources."busboy-1.5.0"
       sources."bytes-3.0.0"
       sources."call-bind-1.0.2"
       sources."camelcase-5.3.1"
@@ -116279,6 +116370,7 @@ in
       (sources."express-4.17.3" // {
         dependencies = [
           sources."content-type-1.0.4"
+          sources."finalhandler-1.1.2"
           sources."safe-buffer-5.2.1"
         ];
       })
@@ -116288,7 +116380,12 @@ in
       sources."fast-deep-equal-3.1.3"
       sources."fast-json-stable-stringify-2.1.0"
       sources."file-uri-to-path-1.0.0"
-      sources."finalhandler-1.1.2"
+      (sources."finalhandler-1.2.0" // {
+        dependencies = [
+          sources."on-finished-2.4.1"
+          sources."statuses-2.0.1"
+        ];
+      })
       sources."find-up-3.0.0"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
@@ -116344,11 +116441,11 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."moment-2.29.1"
       sources."ms-2.0.0"
       sources."msgpack5-3.6.1"
@@ -116516,9 +116613,9 @@ in
       sources."isexe-2.0.0"
       sources."jsonfile-4.0.0"
       sources."klaw-sync-6.0.0"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."nice-try-1.0.5"
       sources."once-1.4.0"
       sources."open-7.4.2"
@@ -116641,7 +116738,7 @@ in
       sources."flatten-0.0.1"
       (sources."fs-chunk-store-1.7.0" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
         ];
       })
       sources."fs.realpath-1.0.0"
@@ -116667,7 +116764,7 @@ in
       sources."ini-1.3.8"
       (sources."inquirer-5.2.0" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
           sources."is-fullwidth-code-point-2.0.0"
@@ -116709,7 +116806,7 @@ in
       sources."mimic-fn-1.2.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-0.3.5"
       sources."mkdirp-classic-0.5.3"
       sources."ms-2.0.0"
@@ -116766,7 +116863,7 @@ in
       sources."pump-2.0.1"
       sources."queue-microtask-1.2.3"
       sources."queue-tick-1.0.0"
-      sources."random-access-file-2.2.0"
+      sources."random-access-file-2.2.1"
       sources."random-access-storage-1.4.3"
       sources."random-iterate-1.0.1"
       sources."randombytes-2.1.0"
@@ -116986,6 +117083,7 @@ in
       (sources."express-4.17.3" // {
         dependencies = [
           sources."safe-buffer-5.2.1"
+          sources."serve-static-1.14.2"
         ];
       })
       sources."extend-3.0.2"
@@ -117064,12 +117162,12 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."mkdirp-classic-0.5.3"
       (sources."morgan-1.10.0" // {
         dependencies = [
@@ -117118,7 +117216,7 @@ in
       sources."qs-6.9.7"
       sources."queue-microtask-1.2.3"
       sources."queue-tick-1.0.0"
-      sources."random-access-file-2.2.0"
+      sources."random-access-file-2.2.1"
       sources."random-access-storage-1.4.3"
       sources."random-bytes-1.0.0"
       sources."random-iterate-1.0.1"
@@ -117144,7 +117242,17 @@ in
           sources."ms-2.1.3"
         ];
       })
-      sources."serve-static-1.14.2"
+      (sources."serve-static-1.15.0" // {
+        dependencies = [
+          sources."depd-2.0.0"
+          sources."destroy-1.2.0"
+          sources."http-errors-2.0.0"
+          sources."ms-2.1.3"
+          sources."on-finished-2.4.1"
+          sources."send-0.18.0"
+          sources."statuses-2.0.1"
+        ];
+      })
       sources."setprototypeof-1.2.0"
       sources."simple-concat-1.0.1"
       sources."simple-get-2.8.2"
@@ -117281,7 +117389,7 @@ in
       sources."color-name-1.1.4"
       sources."console-control-strings-1.1.0"
       sources."core-util-is-1.0.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decompress-response-4.2.1"
       sources."deep-extend-0.6.0"
       sources."deep-is-0.1.4"
@@ -117336,9 +117444,9 @@ in
       sources."levn-0.3.0"
       sources."lru-cache-6.0.0"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mimic-response-2.1.0"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-classic-0.5.3"
       sources."ms-2.1.2"
       (sources."multistream-4.1.0" // {
@@ -117509,7 +117617,7 @@ in
       sources."culvert-0.1.2"
       sources."data-uri-to-buffer-3.0.1"
       sources."dayjs-1.8.36"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deep-is-0.1.4"
       sources."degenerator-3.0.2"
       sources."depd-2.0.0"
@@ -117521,7 +117629,7 @@ in
       sources."estraverse-4.3.0"
       sources."esutils-2.0.3"
       sources."eventemitter2-5.0.1"
-      sources."fast-json-patch-3.1.0"
+      sources."fast-json-patch-3.1.1"
       sources."fast-levenshtein-2.0.6"
       sources."fclone-1.0.11"
       sources."file-uri-to-path-2.0.0"
@@ -117630,7 +117738,7 @@ in
       sources."string_decoder-0.10.31"
       sources."supports-color-7.2.0"
       sources."supports-preserve-symlinks-flag-1.0.0"
-      sources."systeminformation-5.11.8"
+      sources."systeminformation-5.11.9"
       sources."to-regex-range-5.0.1"
       sources."toidentifier-1.0.1"
       sources."tslib-2.3.1"
@@ -117712,10 +117820,10 @@ in
   postcss = nodeEnv.buildNodePackage {
     name = "postcss";
     packageName = "postcss";
-    version = "8.4.8";
+    version = "8.4.12";
     src = fetchurl {
-      url = "https://registry.npmjs.org/postcss/-/postcss-8.4.8.tgz";
-      sha512 = "2tXEqGxrjvAO6U+CJzDL2Fk2kPHTv1jQsYkSoMeOis2SsYaXRO2COxTdQp99cYvif9JTXaAk9lYGc3VhJt7JPQ==";
+      url = "https://registry.npmjs.org/postcss/-/postcss-8.4.12.tgz";
+      sha512 = "lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==";
     };
     dependencies = [
       sources."nanoid-3.3.1"
@@ -117775,9 +117883,9 @@ in
       sources."is-glob-4.0.3"
       sources."is-number-7.0.0"
       sources."jsonfile-6.1.0"
-      sources."lilconfig-2.0.4"
+      sources."lilconfig-2.0.5"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."normalize-path-3.0.0"
       sources."path-type-4.0.0"
       sources."picocolors-1.0.0"
@@ -117801,7 +117909,7 @@ in
       sources."wrap-ansi-7.0.0"
       sources."y18n-5.0.8"
       sources."yaml-1.10.2"
-      sources."yargs-17.3.1"
+      sources."yargs-17.4.0"
       sources."yargs-parser-21.0.1"
     ];
     buildInputs = globalBuildInputs;
@@ -117854,7 +117962,7 @@ in
       sources."isarray-1.0.0"
       sources."lru-cache-6.0.0"
       sources."mimic-response-3.1.0"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-classic-0.5.3"
       sources."napi-build-utils-1.0.2"
       sources."node-abi-3.8.0"
@@ -117901,10 +118009,10 @@ in
   prettier = nodeEnv.buildNodePackage {
     name = "prettier";
     packageName = "prettier";
-    version = "2.5.1";
+    version = "2.6.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/prettier/-/prettier-2.5.1.tgz";
-      sha512 = "vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg==";
+      url = "https://registry.npmjs.org/prettier/-/prettier-2.6.1.tgz";
+      sha512 = "8UVbTBYGwN37Bs9LERmxCPjdvPxlEowx2urIL6urHzdb3SDq4B/Z6xLFCblrSnE4iKWcS6ziJ3aOYrc1kz/E2A==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -117931,10 +118039,10 @@ in
       sources."has-1.0.3"
       sources."has-flag-4.0.0"
       sources."is-core-module-2.8.1"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."nanolru-1.0.0"
       sources."path-parse-1.0.7"
-      sources."prettier-2.5.1"
+      sources."prettier-2.6.1"
       sources."resolve-1.22.0"
       sources."supports-color-8.1.1"
       sources."supports-preserve-symlinks-flag-1.0.0"
@@ -117976,13 +118084,13 @@ in
   prisma = nodeEnv.buildNodePackage {
     name = "prisma";
     packageName = "prisma";
-    version = "3.10.0";
+    version = "3.11.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/prisma/-/prisma-3.10.0.tgz";
-      sha512 = "dAld12vtwdz9Rz01nOjmnXe+vHana5PSog8t0XGgLemKsUVsaupYpr74AHaS3s78SaTS5s2HOghnJF+jn91ZrA==";
+      url = "https://registry.npmjs.org/prisma/-/prisma-3.11.1.tgz";
+      sha512 = "aYn8bQwt1xwR2oSsVNHT4PXU7EhsThIwmpNB/MNUaaMx5OPLTro6VdNJe/sJssXFLxhamfWeMjwmpXjljo6xkg==";
     };
     dependencies = [
-      sources."@prisma/engines-3.10.0-50.73e60b76d394f8d37d8ebd1f8918c79029f0db86"
+      sources."@prisma/engines-3.11.1-1.1a2506facaf1a4727b7c26850735e88ec779dee9"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -117997,13 +118105,13 @@ in
   "@prisma/language-server" = nodeEnv.buildNodePackage {
     name = "_at_prisma_slash_language-server";
     packageName = "@prisma/language-server";
-    version = "3.10.0";
+    version = "3.11.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@prisma/language-server/-/language-server-3.10.0.tgz";
-      sha512 = "PDapBurrv72Mn28rWg5cWZrt6cFLftWadNfdbVNmsjdR4G3eX9OrflSsOVEuSOANLrP/yi129zT0hS+XC6P3Wg==";
+      url = "https://registry.npmjs.org/@prisma/language-server/-/language-server-3.11.0.tgz";
+      sha512 = "gH48Ytf2EOtKAM2uDGbGwh/Y3gHIsHigV4nBbnsodbCZpirbbWXxO/L5+sY1nSeU49wnd6GUcQ7dqZCMW+bcaQ==";
     };
     dependencies = [
-      sources."@prisma/prisma-fmt-wasm-3.10.0-50.73e60b76d394f8d37d8ebd1f8918c79029f0db86"
+      sources."@prisma/prisma-fmt-wasm-3.11.0-48.b371888aaf8f51357c7457d836b86d12da91658b"
       sources."@types/js-levenshtein-1.1.1"
       sources."anymatch-3.1.2"
       sources."binary-extensions-2.2.0"
@@ -118231,8 +118339,8 @@ in
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.0.8"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."mkdirp-classic-0.5.3"
       (sources."module-deps-6.2.3" // {
         dependencies = [
@@ -118352,20 +118460,20 @@ in
   purescript-language-server = nodeEnv.buildNodePackage {
     name = "purescript-language-server";
     packageName = "purescript-language-server";
-    version = "0.16.5";
+    version = "0.16.6";
     src = fetchurl {
-      url = "https://registry.npmjs.org/purescript-language-server/-/purescript-language-server-0.16.5.tgz";
-      sha512 = "M9Ktn2/hVjWMN9vK+q8i8i4r0gnnhT0u+GpKPsrdjPjJFcTqKaH49TQNwf07eD8Sd+xlcuU3PSu5CRgXwH3gag==";
+      url = "https://registry.npmjs.org/purescript-language-server/-/purescript-language-server-0.16.6.tgz";
+      sha512 = "oFxJ0Q59ZmEAwfwgf0nHn5twogTYNqrLDi8mNDnxQcu6Q9XhhagNgLNvPyZNvhO8ELL5UvURG7xZk+GKCKkxOg==";
     };
     dependencies = [
       sources."isexe-2.0.0"
       sources."shell-quote-1.7.3"
       sources."uuid-3.4.0"
       sources."vscode-jsonrpc-8.0.0-next.7"
-      sources."vscode-languageserver-8.0.0-next.9"
-      sources."vscode-languageserver-protocol-3.17.0-next.15"
+      sources."vscode-languageserver-8.0.0-next.10"
+      sources."vscode-languageserver-protocol-3.17.0-next.16"
       sources."vscode-languageserver-textdocument-1.0.4"
-      sources."vscode-languageserver-types-3.17.0-next.8"
+      sources."vscode-languageserver-types-3.17.0-next.9"
       sources."vscode-uri-2.1.2"
       sources."which-2.0.2"
     ];
@@ -118441,7 +118549,7 @@ in
       sources."colors-1.4.0"
       sources."commander-5.1.0"
       sources."compare-versions-4.1.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decompress-response-3.3.0"
       sources."deep-extend-0.6.0"
       sources."defer-to-connect-1.1.3"
@@ -118472,7 +118580,7 @@ in
       sources."lodash.flatmap-4.5.0"
       sources."lowercase-keys-1.0.1"
       sources."mimic-response-1.0.1"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."moment-2.29.1"
       sources."ms-2.1.2"
       sources."node-abort-controller-3.0.1"
@@ -118523,10 +118631,10 @@ in
   pyright = nodeEnv.buildNodePackage {
     name = "pyright";
     packageName = "pyright";
-    version = "1.1.228";
+    version = "1.1.233";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pyright/-/pyright-1.1.228.tgz";
-      sha512 = "Q/LnDoZK6bxc7u60kFjFwi9X3s79kLaGd/g23T0c6T1CUdrRxDyRTvNRLjLPSLaX8EuPIdcXuPXAzXgSjBz/Mw==";
+      url = "https://registry.npmjs.org/pyright/-/pyright-1.1.233.tgz";
+      sha512 = "qjyKJd6mfXLwaBls4Ww0CmML+K2gA4NnTelxGktLC3JQv7ioWU7lmiQ1KSr1BnmwuuTfsaJSDN3f+hUf9YPfWg==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -118550,7 +118658,7 @@ in
       sources."@mark.probst/typescript-json-schema-0.32.0"
       sources."@mark.probst/unicode-properties-1.1.0"
       sources."acorn-7.4.1"
-      sources."ansi-regex-3.0.0"
+      sources."ansi-regex-3.0.1"
       sources."ansi-styles-3.2.1"
       sources."array-back-2.0.0"
       sources."balanced-match-1.0.2"
@@ -118636,7 +118744,7 @@ in
       })
       sources."mimic-fn-2.1.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."moment-2.29.1"
       sources."nice-try-1.0.5"
       sources."node-fetch-2.6.7"
@@ -118829,8 +118937,8 @@ in
       sources."isarray-2.0.5"
       sources."isstream-0.1.2"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."mute-stream-0.0.8"
       sources."ncp-0.4.2"
       sources."object-inspect-1.12.0"
@@ -118886,16 +118994,16 @@ in
       sources."@ampproject/remapping-2.1.2"
       sources."@babel/cli-7.17.6"
       sources."@babel/code-frame-7.16.7"
-      sources."@babel/compat-data-7.17.0"
-      (sources."@babel/core-7.17.5" // {
+      sources."@babel/compat-data-7.17.7"
+      (sources."@babel/core-7.17.8" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
       })
-      sources."@babel/generator-7.17.3"
+      sources."@babel/generator-7.17.7"
       sources."@babel/helper-annotate-as-pure-7.16.7"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.16.7"
-      (sources."@babel/helper-compilation-targets-7.16.7" // {
+      (sources."@babel/helper-compilation-targets-7.17.7" // {
         dependencies = [
           sources."semver-6.3.0"
         ];
@@ -118912,22 +119020,22 @@ in
       sources."@babel/helper-function-name-7.16.7"
       sources."@babel/helper-get-function-arity-7.16.7"
       sources."@babel/helper-hoist-variables-7.16.7"
-      sources."@babel/helper-member-expression-to-functions-7.16.7"
+      sources."@babel/helper-member-expression-to-functions-7.17.7"
       sources."@babel/helper-module-imports-7.16.7"
-      sources."@babel/helper-module-transforms-7.17.6"
+      sources."@babel/helper-module-transforms-7.17.7"
       sources."@babel/helper-optimise-call-expression-7.16.7"
       sources."@babel/helper-plugin-utils-7.16.7"
       sources."@babel/helper-remap-async-to-generator-7.16.8"
       sources."@babel/helper-replace-supers-7.16.7"
-      sources."@babel/helper-simple-access-7.16.7"
+      sources."@babel/helper-simple-access-7.17.7"
       sources."@babel/helper-skip-transparent-expression-wrappers-7.16.0"
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/helper-validator-option-7.16.7"
       sources."@babel/helper-wrap-function-7.16.8"
-      sources."@babel/helpers-7.17.2"
+      sources."@babel/helpers-7.17.8"
       sources."@babel/highlight-7.16.10"
-      sources."@babel/parser-7.17.3"
+      sources."@babel/parser-7.17.8"
       sources."@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7"
       sources."@babel/plugin-proposal-async-generator-functions-7.16.8"
@@ -118968,7 +119076,7 @@ in
       sources."@babel/plugin-transform-block-scoping-7.16.7"
       sources."@babel/plugin-transform-classes-7.16.7"
       sources."@babel/plugin-transform-computed-properties-7.16.7"
-      sources."@babel/plugin-transform-destructuring-7.17.3"
+      sources."@babel/plugin-transform-destructuring-7.17.7"
       sources."@babel/plugin-transform-dotall-regex-7.16.7"
       sources."@babel/plugin-transform-duplicate-keys-7.16.7"
       sources."@babel/plugin-transform-exponentiation-operator-7.16.7"
@@ -118977,8 +119085,8 @@ in
       sources."@babel/plugin-transform-literals-7.16.7"
       sources."@babel/plugin-transform-member-expression-literals-7.16.7"
       sources."@babel/plugin-transform-modules-amd-7.16.7"
-      sources."@babel/plugin-transform-modules-commonjs-7.16.8"
-      sources."@babel/plugin-transform-modules-systemjs-7.16.7"
+      sources."@babel/plugin-transform-modules-commonjs-7.17.7"
+      sources."@babel/plugin-transform-modules-systemjs-7.17.8"
       sources."@babel/plugin-transform-modules-umd-7.16.7"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.16.8"
       sources."@babel/plugin-transform-new-target-7.16.7"
@@ -119011,8 +119119,8 @@ in
       sources."@babel/preset-modules-0.1.5"
       sources."@babel/preset-react-7.16.7"
       sources."@babel/preset-stage-0-7.8.3"
-      sources."@babel/register-7.17.0"
-      sources."@babel/runtime-7.17.2"
+      sources."@babel/register-7.17.7"
+      sources."@babel/runtime-7.17.8"
       sources."@babel/template-7.16.7"
       sources."@babel/traverse-7.17.3"
       sources."@babel/types-7.17.0"
@@ -119022,9 +119130,9 @@ in
       sources."@reach/router-1.3.4"
       sources."@sindresorhus/is-0.7.0"
       sources."@types/glob-7.2.0"
-      sources."@types/json-schema-7.0.9"
+      sources."@types/json-schema-7.0.11"
       sources."@types/minimatch-3.0.5"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/parse-json-4.0.0"
       sources."@types/q-1.5.5"
       sources."@webassemblyjs/ast-1.9.0"
@@ -119060,7 +119168,7 @@ in
       sources."ansi-colors-3.2.4"
       sources."ansi-escapes-3.2.0"
       sources."ansi-html-community-0.0.8"
-      sources."ansi-regex-3.0.0"
+      sources."ansi-regex-3.0.1"
       sources."ansi-styles-3.2.1"
       sources."anymatch-3.1.2"
       sources."aproba-1.2.0"
@@ -119103,7 +119211,7 @@ in
       })
       sources."axios-0.21.4"
       sources."babel-core-7.0.0-bridge.0"
-      (sources."babel-loader-8.2.3" // {
+      (sources."babel-loader-8.2.4" // {
         dependencies = [
           sources."find-cache-dir-3.3.2"
           sources."find-up-4.1.0"
@@ -119182,7 +119290,7 @@ in
         ];
       })
       sources."browserify-zlib-0.1.4"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."buffer-5.7.1"
       sources."buffer-alloc-1.2.0"
       sources."buffer-alloc-unsafe-1.1.0"
@@ -119216,7 +119324,7 @@ in
       sources."camel-case-3.0.0"
       sources."camelcase-5.3.1"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       sources."case-sensitive-paths-webpack-plugin-2.4.0"
       sources."caw-2.0.1"
       sources."chalk-2.4.2"
@@ -119322,6 +119430,8 @@ in
       sources."css-declaration-sorter-4.0.1"
       (sources."css-loader-2.1.1" // {
         dependencies = [
+          sources."json5-1.0.1"
+          sources."loader-utils-1.4.0"
           sources."postcss-value-parser-3.3.1"
           sources."schema-utils-1.0.0"
         ];
@@ -119356,7 +119466,7 @@ in
         ];
       })
       sources."cyclist-1.0.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       sources."decode-uri-component-0.2.0"
       (sources."decompress-4.2.1" // {
@@ -119425,7 +119535,7 @@ in
       })
       sources."domain-browser-1.2.0"
       sources."domelementtype-1.3.1"
-      (sources."domhandler-4.3.0" // {
+      (sources."domhandler-4.3.1" // {
         dependencies = [
           sources."domelementtype-2.2.0"
         ];
@@ -119444,7 +119554,7 @@ in
       sources."duplexify-3.7.1"
       sources."ee-first-1.1.1"
       sources."ejs-2.7.4"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       (sources."elliptic-6.5.4" // {
         dependencies = [
           sources."bn.js-4.12.0"
@@ -119540,7 +119650,6 @@ in
       })
       (sources."extract-css-chunks-webpack-plugin-4.9.0" // {
         dependencies = [
-          sources."loader-utils-2.0.2"
           sources."normalize-url-1.9.1"
           sources."prepend-http-1.0.4"
           sources."query-string-4.3.4"
@@ -119560,6 +119669,8 @@ in
       sources."figures-2.0.0"
       (sources."file-loader-3.0.1" // {
         dependencies = [
+          sources."json5-1.0.1"
+          sources."loader-utils-1.4.0"
           sources."schema-utils-1.0.0"
         ];
       })
@@ -119783,7 +119894,7 @@ in
       sources."json-parse-better-errors-1.0.2"
       sources."json-parse-even-better-errors-2.3.1"
       sources."json-schema-traverse-0.4.1"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."jsonfile-4.0.0"
       sources."keyv-3.0.0"
       sources."killable-1.0.1"
@@ -119791,11 +119902,7 @@ in
       sources."last-call-webpack-plugin-3.0.0"
       sources."lines-and-columns-1.2.4"
       sources."loader-runner-2.4.0"
-      (sources."loader-utils-1.4.0" // {
-        dependencies = [
-          sources."json5-1.0.1"
-        ];
-      })
+      sources."loader-utils-2.0.2"
       sources."locate-path-3.0.0"
       sources."lodash-4.17.21"
       sources."lodash.debounce-4.0.8"
@@ -119843,17 +119950,13 @@ in
       })
       sources."mime-2.6.0"
       sources."mime-db-1.52.0"
-      (sources."mime-types-2.1.34" // {
-        dependencies = [
-          sources."mime-db-1.51.0"
-        ];
-      })
+      sources."mime-types-2.1.35"
       sources."mimic-fn-1.2.0"
       sources."mimic-response-1.0.1"
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."mississippi-3.0.0" // {
         dependencies = [
           sources."pump-3.0.0"
@@ -119864,7 +119967,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."mkdirp-classic-0.5.3"
       sources."move-concurrently-1.0.1"
       sources."ms-2.1.2"
@@ -120014,6 +120117,8 @@ in
       })
       (sources."postcss-loader-3.0.0" // {
         dependencies = [
+          sources."json5-1.0.1"
+          sources."loader-utils-1.4.0"
           sources."schema-utils-1.0.0"
         ];
       })
@@ -120150,7 +120255,12 @@ in
           sources."bytes-3.1.2"
         ];
       })
-      sources."raw-loader-3.1.0"
+      (sources."raw-loader-3.1.0" // {
+        dependencies = [
+          sources."json5-1.0.1"
+          sources."loader-utils-1.4.0"
+        ];
+      })
       sources."rc-1.2.8"
       sources."react-fast-compare-3.2.0"
       sources."react-helmet-6.1.0"
@@ -120396,7 +120506,7 @@ in
       sources."string_decoder-1.1.1"
       (sources."strip-ansi-5.2.0" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
         ];
       })
       sources."strip-dirs-2.1.0"
@@ -120405,6 +120515,8 @@ in
       sources."strip-outer-1.0.1"
       (sources."style-loader-0.23.1" // {
         dependencies = [
+          sources."json5-1.0.1"
+          sources."loader-utils-1.4.0"
           sources."schema-utils-1.0.0"
         ];
       })
@@ -120508,7 +120620,12 @@ in
           sources."punycode-1.3.2"
         ];
       })
-      sources."url-loader-2.3.0"
+      (sources."url-loader-2.3.0" // {
+        dependencies = [
+          sources."json5-1.0.1"
+          sources."loader-utils-1.4.0"
+        ];
+      })
       sources."url-parse-1.5.10"
       sources."url-parse-lax-3.0.0"
       sources."url-to-options-1.0.1"
@@ -120550,6 +120667,8 @@ in
       sources."wbuf-1.7.3"
       (sources."webpack-4.46.0" // {
         dependencies = [
+          sources."json5-1.0.1"
+          sources."loader-utils-1.4.0"
           sources."schema-utils-1.0.0"
         ];
       })
@@ -120680,8 +120799,8 @@ in
         ];
       })
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."private-0.1.8"
@@ -120704,10 +120823,10 @@ in
   readability-cli = nodeEnv.buildNodePackage {
     name = "readability-cli";
     packageName = "readability-cli";
-    version = "2.3.5";
+    version = "2.4.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/readability-cli/-/readability-cli-2.3.5.tgz";
-      sha512 = "xSnTf4ik+hAY57CKk7lWvtumDbvfDKEHrzveXbIeoaLhEDE2+7qfjgrCK0DcCLFRfOKS6rsrYEZewfOYU+YfpQ==";
+      url = "https://registry.npmjs.org/readability-cli/-/readability-cli-2.4.0.tgz";
+      sha512 = "9yIWmelcUihFl8wdEGTxvl7zWV7VxvNBmLiyDmqryF2xeaj1+7MmqeZ2KCpkklqZncCtIlwqBKRQtWLJbcztjQ==";
     };
     dependencies = [
       sources."@mozilla/readability-0.4.2"
@@ -120736,7 +120855,7 @@ in
         ];
       })
       sources."data-urls-3.0.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decimal.js-10.3.1"
       sources."deep-is-0.1.4"
       sources."delayed-stream-1.0.0"
@@ -120759,8 +120878,8 @@ in
       sources."is-potential-custom-element-name-1.0.1"
       sources."jsdom-19.0.0"
       sources."levn-0.3.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."ms-2.1.2"
       sources."nwsapi-2.2.0"
       sources."optionator-0.8.3"
@@ -120791,7 +120910,7 @@ in
       sources."xml-name-validator-4.0.0"
       sources."xmlchars-2.2.0"
       sources."y18n-5.0.8"
-      sources."yargs-17.3.1"
+      sources."yargs-17.4.0"
       sources."yargs-parser-21.0.1"
     ];
     buildInputs = globalBuildInputs;
@@ -120807,14 +120926,14 @@ in
   redoc-cli = nodeEnv.buildNodePackage {
     name = "redoc-cli";
     packageName = "redoc-cli";
-    version = "0.13.8";
+    version = "0.13.9";
     src = fetchurl {
-      url = "https://registry.npmjs.org/redoc-cli/-/redoc-cli-0.13.8.tgz";
-      sha512 = "P0gh4cIP9KRMMISwVoU0EZKQS6U841UCZ26Lsoh3LANhgPGhKr5IrJzxVX7unxKLGzEjzZWXF778Vye9JXVDEg==";
+      url = "https://registry.npmjs.org/redoc-cli/-/redoc-cli-0.13.9.tgz";
+      sha512 = "RoUonPhAQeEpg6lCJyi7Oha5iYPNFhAN2lFWzc3biLigJCTh6JDwPHlomfLMrwkri6bz8W3vVEtEqQ1RLaxMJQ==";
     };
     dependencies = [
       sources."@babel/code-frame-7.16.7"
-      (sources."@babel/generator-7.17.3" // {
+      (sources."@babel/generator-7.17.7" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
@@ -120828,20 +120947,20 @@ in
       sources."@babel/helper-split-export-declaration-7.16.7"
       sources."@babel/helper-validator-identifier-7.16.7"
       sources."@babel/highlight-7.16.10"
-      sources."@babel/parser-7.17.3"
-      sources."@babel/runtime-7.17.2"
+      sources."@babel/parser-7.17.8"
+      sources."@babel/runtime-7.17.8"
       sources."@babel/template-7.16.7"
       sources."@babel/traverse-7.17.3"
       sources."@babel/types-7.17.0"
-      sources."@emotion/is-prop-valid-0.8.8"
-      sources."@emotion/memoize-0.7.4"
+      sources."@emotion/is-prop-valid-1.1.2"
+      sources."@emotion/memoize-0.7.5"
       sources."@emotion/stylis-0.8.5"
       sources."@emotion/unitless-0.7.5"
       sources."@exodus/schemasafe-1.0.0-rc.6"
       sources."@redocly/ajv-8.6.4"
-      sources."@redocly/openapi-core-1.0.0-beta.87"
+      sources."@redocly/openapi-core-1.0.0-beta.90"
       sources."@redocly/react-dropdown-aria-2.0.12"
-      sources."@types/json-schema-7.0.9"
+      sources."@types/json-schema-7.0.11"
       sources."@types/node-14.18.12"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-3.2.1"
@@ -120909,7 +121028,7 @@ in
       sources."crypto-browserify-3.12.0"
       sources."css-color-keywords-1.0.0"
       sources."css-to-react-native-3.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decko-1.2.0"
       sources."des.js-1.0.1"
       (sources."diffie-hellman-5.0.3" // {
@@ -120986,9 +121105,9 @@ in
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-1.0.4"
-      sources."mobx-6.4.2"
+      sources."mobx-6.5.0"
       sources."mobx-react-7.3.0"
       sources."mobx-react-lite-3.3.0"
       sources."ms-2.1.2"
@@ -121042,7 +121161,7 @@ in
         ];
       })
       sources."readdirp-3.6.0"
-      (sources."redoc-2.0.0-rc.64" // {
+      (sources."redoc-2.0.0-rc.65" // {
         dependencies = [
           sources."path-browserify-1.0.1"
         ];
@@ -121073,7 +121192,7 @@ in
       sources."string_decoder-1.3.0"
       sources."strip-ansi-6.0.1"
       sources."style-loader-3.3.1"
-      sources."styled-components-5.3.3"
+      sources."styled-components-5.3.5"
       sources."supports-color-5.5.0"
       sources."swagger2openapi-7.0.8"
       sources."timers-browserify-2.0.12"
@@ -121115,7 +121234,7 @@ in
       sources."y18n-5.0.8"
       sources."yaml-1.10.2"
       sources."yaml-ast-parser-0.0.43"
-      sources."yargs-17.3.1"
+      sources."yargs-17.4.0"
       sources."yargs-parser-21.0.1"
     ];
     buildInputs = globalBuildInputs;
@@ -121185,7 +121304,7 @@ in
       (sources."log-update-3.4.0" // {
         dependencies = [
           sources."ansi-escapes-3.2.0"
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."ansi-styles-3.2.1"
           sources."cli-cursor-2.1.0"
           sources."color-convert-1.9.3"
@@ -121241,7 +121360,7 @@ in
       sources."spdx-license-ids-3.0.11"
       (sources."string-length-3.1.0" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."astral-regex-1.0.0"
           sources."strip-ansi-5.2.0"
         ];
@@ -121272,10 +121391,10 @@ in
   "reveal.js" = nodeEnv.buildNodePackage {
     name = "reveal.js";
     packageName = "reveal.js";
-    version = "4.3.0";
+    version = "4.3.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/reveal.js/-/reveal.js-4.3.0.tgz";
-      sha512 = "KzZxJjj1gmxVNyplY6g9MiGwtDvZJiYkMvG1Qmaita7vWT/8eoTEK+RuIPLvxDeyxOtTz56u2wrOETVO79qL4A==";
+      url = "https://registry.npmjs.org/reveal.js/-/reveal.js-4.3.1.tgz";
+      sha512 = "1kyEnWeUkaCdBdX//XXq9dtBK95ppvIlSwlHelrP8/wrX6LcsYp4HT9WTFoFEOUBfVqkm8C2aHQ367o+UKfcxw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -121446,12 +121565,12 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.1.2"
       sources."mustache-4.2.0"
       sources."negotiator-0.6.3"
@@ -121613,10 +121732,10 @@ in
   rollup = nodeEnv.buildNodePackage {
     name = "rollup";
     packageName = "rollup";
-    version = "2.70.0";
+    version = "2.70.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/rollup/-/rollup-2.70.0.tgz";
-      sha512 = "iEzYw+syFxQ0X9RefVwhr8BA2TNJsTaX8L8dhyeyMECDbmiba+8UQzcu+xZdji0+JQ+s7kouQnw+9Oz5M19XKA==";
+      url = "https://registry.npmjs.org/rollup/-/rollup-2.70.1.tgz";
+      sha512 = "CRYsI5EuzLbXdxC6RnYhOuRdtz4bhejPMSWjsFLfVM/7w/85n2szZv6yExqUXsBdz5KT8eoubeyDUDjhLHEslA==";
     };
     dependencies = [
       sources."fsevents-2.3.2"
@@ -121634,67 +121753,44 @@ in
   "rust-analyzer-build-deps-../../applications/editors/vscode/extensions/rust-analyzer/build-deps" = nodeEnv.buildNodePackage {
     name = "rust-analyzer";
     packageName = "rust-analyzer";
-    version = "0.2.834";
+    version = "0.2.975";
     src = ../../applications/editors/vscode/extensions/rust-analyzer/build-deps;
     dependencies = [
-      sources."@babel/code-frame-7.12.11"
-      sources."@babel/helper-validator-identifier-7.16.7"
-      (sources."@babel/highlight-7.16.10" // {
-        dependencies = [
-          sources."ansi-styles-3.2.1"
-          sources."chalk-2.4.2"
-          sources."color-convert-1.9.3"
-          sources."color-name-1.1.3"
-          sources."escape-string-regexp-1.0.5"
-        ];
-      })
-      (sources."@eslint/eslintrc-0.4.3" // {
-        dependencies = [
-          sources."ignore-4.0.6"
-        ];
-      })
+      sources."@eslint/eslintrc-1.2.1"
       sources."@hpcc-js/wasm-1.12.8"
-      sources."@humanwhocodes/config-array-0.5.0"
+      sources."@humanwhocodes/config-array-0.9.5"
       sources."@humanwhocodes/object-schema-1.2.1"
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
       sources."@tootallnate/once-1.1.2"
-      sources."@types/glob-7.2.0"
-      sources."@types/json-schema-7.0.9"
-      sources."@types/minimatch-3.0.5"
-      sources."@types/mocha-8.2.3"
+      sources."@types/json-schema-7.0.11"
       sources."@types/node-14.17.34"
-      sources."@types/node-fetch-2.6.1"
-      sources."@types/vscode-1.65.0"
-      sources."@typescript-eslint/eslint-plugin-4.33.0"
-      sources."@typescript-eslint/experimental-utils-4.33.0"
-      sources."@typescript-eslint/parser-4.33.0"
-      sources."@typescript-eslint/scope-manager-4.33.0"
-      sources."@typescript-eslint/types-4.33.0"
-      sources."@typescript-eslint/typescript-estree-4.33.0"
-      sources."@typescript-eslint/visitor-keys-4.33.0"
-      sources."@ungap/promise-all-settled-1.1.2"
-      sources."acorn-7.4.1"
+      sources."@types/vscode-1.63.2"
+      sources."@typescript-eslint/eslint-plugin-5.16.0"
+      sources."@typescript-eslint/parser-5.16.0"
+      sources."@typescript-eslint/scope-manager-5.16.0"
+      sources."@typescript-eslint/type-utils-5.16.0"
+      sources."@typescript-eslint/types-5.16.0"
+      sources."@typescript-eslint/typescript-estree-5.16.0"
+      sources."@typescript-eslint/utils-5.16.0"
+      sources."@typescript-eslint/visitor-keys-5.16.0"
+      sources."@vscode/test-electron-2.1.3"
+      sources."acorn-8.7.0"
       sources."acorn-jsx-5.3.2"
       sources."agent-base-6.0.2"
       sources."ajv-6.12.6"
-      sources."ansi-colors-4.1.1"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-4.3.0"
-      sources."anymatch-3.1.2"
       sources."aproba-1.2.0"
       sources."are-we-there-yet-1.1.7"
-      sources."argparse-1.0.10"
+      sources."argparse-2.0.1"
       sources."array-union-2.1.0"
-      sources."astral-regex-2.0.0"
-      sources."asynckit-0.4.0"
       sources."azure-devops-node-api-11.1.1"
       sources."balanced-match-1.0.2"
       sources."base64-js-1.5.1"
       sources."big-integer-1.6.51"
       sources."binary-0.3.0"
-      sources."binary-extensions-2.2.0"
       (sources."bl-4.1.0" // {
         dependencies = [
           sources."readable-stream-3.6.0"
@@ -121704,30 +121800,21 @@ in
       sources."boolbase-1.0.0"
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
-      sources."browser-stdout-1.3.1"
       sources."buffer-5.7.1"
       sources."buffer-crc32-0.2.13"
       sources."buffer-indexof-polyfill-1.0.2"
       sources."buffers-0.1.1"
       sources."call-bind-1.0.2"
       sources."callsites-3.1.0"
-      sources."camelcase-6.3.0"
       sources."chainsaw-0.1.0"
-      (sources."chalk-4.1.2" // {
-        dependencies = [
-          sources."has-flag-4.0.0"
-          sources."supports-color-7.2.0"
-        ];
-      })
+      sources."chalk-4.1.2"
       sources."cheerio-1.0.0-rc.10"
       sources."cheerio-select-1.5.0"
-      sources."chokidar-3.5.3"
       sources."chownr-1.1.4"
       sources."cliui-7.0.4"
       sources."code-point-at-1.1.0"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
-      sources."combined-stream-1.0.8"
       sources."commander-7.2.0"
       sources."commandpost-1.4.0"
       sources."concat-map-0.0.1"
@@ -121782,22 +121869,18 @@ in
       sources."d3-timer-3.0.1"
       sources."d3-transition-3.0.1"
       sources."d3-zoom-3.0.0"
-      sources."debug-4.3.3"
-      sources."decamelize-4.0.0"
+      sources."debug-4.3.4"
       sources."decompress-response-6.0.0"
       sources."deep-extend-0.6.0"
       sources."deep-is-0.1.4"
       sources."delaunator-5.0.0"
-      sources."delayed-stream-1.0.0"
       sources."delegates-1.0.0"
-      sources."denodeify-1.2.1"
       sources."detect-libc-2.0.1"
-      sources."diff-5.0.0"
       sources."dir-glob-3.0.1"
       sources."doctrine-3.0.0"
       sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
       sources."duplexer2-0.1.4"
       (sources."editorconfig-0.15.3" // {
@@ -121810,29 +121893,24 @@ in
       })
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
-      sources."enquirer-2.3.6"
       sources."entities-2.2.0"
       sources."escalade-3.1.1"
       sources."escape-string-regexp-4.0.0"
-      (sources."eslint-7.32.0" // {
+      (sources."eslint-8.12.0" // {
         dependencies = [
-          (sources."eslint-utils-2.1.0" // {
-            dependencies = [
-              sources."eslint-visitor-keys-1.3.0"
-            ];
-          })
-          sources."ignore-4.0.6"
+          sources."eslint-scope-7.1.1"
+          sources."estraverse-5.3.0"
+          sources."glob-parent-6.0.2"
         ];
       })
       sources."eslint-scope-5.1.1"
-      sources."eslint-utils-3.0.0"
-      sources."eslint-visitor-keys-2.1.0"
-      (sources."espree-7.3.1" // {
+      (sources."eslint-utils-3.0.0" // {
         dependencies = [
-          sources."eslint-visitor-keys-1.3.0"
+          sources."eslint-visitor-keys-2.1.0"
         ];
       })
-      sources."esprima-4.0.1"
+      sources."eslint-visitor-keys-3.3.0"
+      sources."espree-9.3.1"
       (sources."esquery-1.4.0" // {
         dependencies = [
           sources."estraverse-5.3.0"
@@ -121854,14 +121932,10 @@ in
       sources."fd-slicer-1.1.0"
       sources."file-entry-cache-6.0.1"
       sources."fill-range-7.0.1"
-      sources."find-up-5.0.0"
-      sources."flat-5.0.2"
       sources."flat-cache-3.0.4"
       sources."flatted-3.2.5"
-      sources."form-data-3.0.1"
       sources."fs-constants-1.0.0"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-2.3.2"
       (sources."fstream-1.0.12" // {
         dependencies = [
           sources."rimraf-2.7.1"
@@ -121882,15 +121956,13 @@ in
       sources."github-from-package-0.0.0"
       sources."glob-7.2.0"
       sources."glob-parent-5.1.2"
-      sources."globals-13.12.1"
+      sources."globals-13.13.0"
       sources."globby-11.1.0"
       sources."graceful-fs-4.2.9"
-      sources."growl-1.10.5"
       sources."has-1.0.3"
-      sources."has-flag-3.0.0"
+      sources."has-flag-4.0.0"
       sources."has-symbols-1.0.3"
       sources."has-unicode-2.0.1"
-      sources."he-1.2.0"
       sources."hosted-git-info-4.1.0"
       sources."htmlparser2-6.1.0"
       sources."http-proxy-agent-4.0.1"
@@ -121904,67 +121976,42 @@ in
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
       sources."internmap-2.0.3"
-      sources."is-binary-path-2.1.0"
       sources."is-extglob-2.1.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-glob-4.0.3"
       sources."is-number-7.0.0"
-      sources."is-plain-obj-2.1.0"
-      sources."is-unicode-supported-0.1.0"
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
-      sources."js-tokens-4.0.0"
-      sources."js-yaml-3.14.1"
+      sources."js-yaml-4.1.0"
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-without-jsonify-1.0.1"
       sources."keytar-7.9.0"
       sources."leven-3.1.0"
       sources."levn-0.4.1"
-      sources."linkify-it-2.2.0"
+      sources."linkify-it-3.0.3"
       sources."listenercount-1.0.1"
-      sources."locate-path-6.0.0"
-      sources."lodash-4.17.21"
       sources."lodash.merge-4.6.2"
-      sources."lodash.truncate-4.4.2"
-      sources."log-symbols-4.1.0"
       sources."lru-cache-6.0.0"
-      (sources."markdown-it-10.0.0" // {
+      (sources."markdown-it-12.3.2" // {
         dependencies = [
-          sources."entities-2.0.3"
+          sources."entities-2.1.0"
         ];
       })
       sources."mdurl-1.0.1"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
       sources."mimic-response-3.1.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."mkdirp-classic-0.5.3"
-      (sources."mocha-9.2.2" // {
-        dependencies = [
-          sources."argparse-2.0.1"
-          sources."has-flag-4.0.0"
-          sources."js-yaml-4.1.0"
-          sources."minimatch-4.2.1"
-          sources."ms-2.1.3"
-          sources."supports-color-8.1.1"
-          sources."yargs-16.2.0"
-          sources."yargs-parser-20.2.4"
-        ];
-      })
       sources."ms-2.1.2"
       sources."mute-stream-0.0.8"
-      sources."nanoid-3.3.1"
       sources."napi-build-utils-1.0.2"
       sources."natural-compare-1.4.0"
       sources."node-abi-3.8.0"
       sources."node-addon-api-4.3.0"
-      sources."node-fetch-2.6.7"
-      sources."normalize-path-3.0.0"
       sources."npmlog-4.1.2"
       sources."nth-check-2.0.1"
       sources."number-is-nan-1.0.1"
@@ -121972,11 +122019,6 @@ in
       sources."object-inspect-1.12.0"
       sources."once-1.4.0"
       sources."optionator-0.9.1"
-      sources."os-homedir-1.0.2"
-      sources."os-tmpdir-1.0.2"
-      sources."osenv-0.1.5"
-      sources."p-limit-3.1.0"
-      sources."p-locate-5.0.0"
       sources."parent-module-1.0.1"
       (sources."parse-semver-1.1.1" // {
         dependencies = [
@@ -121985,7 +122027,6 @@ in
       })
       sources."parse5-6.0.1"
       sources."parse5-htmlparser2-tree-adapter-6.0.1"
-      sources."path-exists-4.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-3.1.1"
       sources."path-type-4.0.0"
@@ -121994,39 +122035,30 @@ in
       sources."prebuild-install-7.0.1"
       sources."prelude-ls-1.2.1"
       sources."process-nextick-args-2.0.1"
-      sources."progress-2.0.3"
       sources."pseudomap-1.0.2"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
       sources."qs-6.10.3"
       sources."queue-microtask-1.2.3"
-      sources."randombytes-2.1.0"
       (sources."rc-1.2.8" // {
         dependencies = [
           sources."strip-json-comments-2.0.1"
         ];
       })
       sources."read-1.0.7"
-      (sources."readable-stream-2.3.7" // {
-        dependencies = [
-          sources."safe-buffer-5.1.2"
-        ];
-      })
-      sources."readdirp-3.6.0"
+      sources."readable-stream-2.3.7"
       sources."regexpp-3.2.0"
       sources."require-directory-2.1.1"
-      sources."require-from-string-2.0.2"
       sources."resolve-from-4.0.0"
       sources."reusify-1.0.4"
       sources."rimraf-3.0.2"
       sources."robust-predicates-3.0.1"
       sources."run-parallel-1.2.0"
       sources."rw-1.3.3"
-      sources."safe-buffer-5.2.1"
+      sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.4"
       sources."semver-7.3.5"
-      sources."serialize-javascript-6.0.0"
       sources."set-blocking-2.0.0"
       sources."setimmediate-1.0.5"
       sources."shebang-command-2.0.0"
@@ -122037,23 +122069,11 @@ in
       sources."simple-concat-1.0.1"
       sources."simple-get-4.0.1"
       sources."slash-3.0.0"
-      sources."slice-ansi-4.0.0"
-      sources."sprintf-js-1.0.3"
       sources."string-width-4.2.3"
-      (sources."string_decoder-1.1.1" // {
-        dependencies = [
-          sources."safe-buffer-5.1.2"
-        ];
-      })
+      sources."string_decoder-1.1.1"
       sources."strip-ansi-6.0.1"
       sources."strip-json-comments-3.1.1"
-      sources."supports-color-5.5.0"
-      (sources."table-6.8.0" // {
-        dependencies = [
-          sources."ajv-8.10.0"
-          sources."json-schema-traverse-1.0.0"
-        ];
-      })
+      sources."supports-color-7.2.0"
       sources."tar-fs-2.1.1"
       (sources."tar-stream-2.2.0" // {
         dependencies = [
@@ -122063,7 +122083,6 @@ in
       sources."text-table-0.2.0"
       sources."tmp-0.2.1"
       sources."to-regex-range-5.0.1"
-      sources."tr46-0.0.3"
       sources."traverse-0.3.9"
       sources."tslib-2.3.1"
       (sources."tsutils-3.21.0" // {
@@ -122076,16 +122095,16 @@ in
       sources."type-check-0.4.0"
       sources."type-fest-0.20.2"
       sources."typed-rest-client-1.8.6"
-      sources."typescript-4.6.2"
+      sources."typescript-4.6.3"
       sources."typescript-formatter-7.2.2"
       sources."uc.micro-1.0.6"
       sources."underscore-1.13.2"
       sources."unzipper-0.10.11"
       sources."uri-js-4.4.1"
-      sources."url-join-1.1.0"
+      sources."url-join-4.0.1"
       sources."util-deprecate-1.0.2"
       sources."v8-compile-cache-2.3.0"
-      (sources."vsce-1.103.1" // {
+      (sources."vsce-2.7.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -122093,32 +122112,28 @@ in
           sources."color-name-1.1.3"
           sources."commander-6.2.1"
           sources."escape-string-regexp-1.0.5"
+          sources."has-flag-3.0.0"
           sources."semver-5.7.1"
+          sources."supports-color-5.5.0"
         ];
       })
-      sources."vscode-jsonrpc-8.0.0-next.2"
-      sources."vscode-languageclient-8.0.0-next.2"
-      sources."vscode-languageserver-protocol-3.17.0-next.8"
-      sources."vscode-languageserver-types-3.17.0-next.3"
-      sources."vscode-test-1.6.1"
-      sources."webidl-conversions-3.0.1"
-      sources."whatwg-url-5.0.0"
+      sources."vscode-jsonrpc-8.0.0-next.5"
+      sources."vscode-languageclient-8.0.0-next.8"
+      sources."vscode-languageserver-protocol-3.17.0-next.12"
+      sources."vscode-languageserver-types-3.17.0-next.6"
       sources."which-2.0.2"
       sources."wide-align-1.1.5"
       sources."word-wrap-1.2.3"
-      sources."workerpool-6.2.0"
       sources."wrap-ansi-7.0.0"
       sources."wrappy-1.0.2"
       sources."xml2js-0.4.23"
       sources."xmlbuilder-11.0.1"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      sources."yargs-17.3.1"
+      sources."yargs-17.4.0"
       sources."yargs-parser-21.0.1"
-      sources."yargs-unparser-2.0.0"
       sources."yauzl-2.10.0"
       sources."yazl-2.5.1"
-      sources."yocto-queue-0.1.0"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -122143,7 +122158,7 @@ in
       sources."p-locate-5.0.0"
       sources."path-exists-4.0.0"
       sources."picocolors-1.0.0"
-      sources."postcss-8.4.8"
+      sources."postcss-8.4.12"
       sources."source-map-js-1.0.2"
       sources."strip-json-comments-3.1.1"
       sources."yocto-queue-0.1.0"
@@ -122184,7 +122199,7 @@ in
       sources."core-util-is-1.0.3"
       sources."crc-0.2.0"
       sources."crypto-0.0.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."events.node-0.4.9"
       (sources."everyauth-0.4.5" // {
         dependencies = [
@@ -122379,10 +122394,10 @@ in
       sources."is-wsl-2.2.0"
       sources."isexe-2.0.0"
       sources."json-schema-traverse-0.4.1"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.0.4"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."ms-2.0.0"
       sources."negotiator-0.6.3"
       sources."nice-try-1.0.5"
@@ -122437,10 +122452,10 @@ in
   serverless = nodeEnv.buildNodePackage {
     name = "serverless";
     packageName = "serverless";
-    version = "3.7.4";
+    version = "3.10.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/serverless/-/serverless-3.7.4.tgz";
-      sha512 = "TsrSGfzKO9N0/rp2dROVUrKgku3b3JHP1wBEPrCgLLmfBTBLRi6YoTK9HAWgehNa+uSHdE4x02s+nttXU6qhtQ==";
+      url = "https://registry.npmjs.org/serverless/-/serverless-3.10.0.tgz";
+      sha512 = "2bRpqJFrejlN0hIrTnFQKV/MejUF8lZSRfULBqdUG4emwrUiTzZSerYdUVifHvhvIEcno6GeTbMs1xwQrCb2fw==";
     };
     dependencies = [
       sources."2-thenable-1.0.0"
@@ -122449,8 +122464,7 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@serverless/aws-lambda-otel-extension-dist-0.1.10"
-      sources."@serverless/dashboard-plugin-6.1.5"
+      sources."@serverless/dashboard-plugin-6.2.0"
       sources."@serverless/event-mocks-1.1.1"
       (sources."@serverless/platform-client-4.3.2" // {
         dependencies = [
@@ -122467,13 +122481,13 @@ in
       sources."@tokenizer/token-0.3.0"
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/keyv-3.1.3"
-      sources."@types/lodash-4.14.179"
-      sources."@types/node-17.0.21"
+      sources."@types/keyv-3.1.4"
+      sources."@types/lodash-4.14.180"
+      sources."@types/node-17.0.23"
       sources."@types/responselike-1.0.0"
       sources."adm-zip-0.5.9"
       sources."agent-base-6.0.2"
-      sources."ajv-8.10.0"
+      sources."ajv-8.11.0"
       sources."ajv-formats-2.1.1"
       sources."ansi-escapes-4.3.2"
       sources."ansi-regex-5.0.1"
@@ -122495,7 +122509,7 @@ in
       sources."async-3.2.3"
       sources."asynckit-0.4.0"
       sources."at-least-node-1.0.0"
-      (sources."aws-sdk-2.1092.0" // {
+      (sources."aws-sdk-2.1101.0" // {
         dependencies = [
           sources."buffer-4.9.2"
           sources."ieee754-1.1.13"
@@ -122521,6 +122535,7 @@ in
       sources."buffer-crc32-0.2.13"
       sources."buffer-fill-1.0.0"
       sources."builtin-modules-3.2.0"
+      sources."builtins-1.0.3"
       sources."cacheable-lookup-5.0.4"
       (sources."cacheable-request-7.0.2" // {
         dependencies = [
@@ -122586,8 +122601,8 @@ in
           sources."type-1.2.0"
         ];
       })
-      sources."dayjs-1.10.8"
-      sources."debug-4.3.3"
+      sources."dayjs-1.11.0"
+      sources."debug-4.3.4"
       (sources."decompress-4.2.1" // {
         dependencies = [
           (sources."make-dir-1.3.0" // {
@@ -122635,7 +122650,7 @@ in
       sources."duration-0.2.2"
       sources."emoji-regex-8.0.0"
       sources."end-of-stream-1.4.4"
-      sources."es5-ext-0.10.58"
+      sources."es5-ext-0.10.59"
       sources."es6-iterator-2.0.3"
       (sources."es6-set-0.1.5" // {
         dependencies = [
@@ -122701,7 +122716,7 @@ in
       sources."imurmurhash-0.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."inquirer-8.2.1"
+      sources."inquirer-8.2.2"
       sources."is-binary-path-2.1.0"
       sources."is-docker-2.2.1"
       sources."is-extglob-2.1.1"
@@ -122759,14 +122774,10 @@ in
       sources."memoizee-0.4.15"
       sources."merge2-1.4.1"
       sources."methods-1.1.2"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mime-1.6.0"
       sources."mime-db-1.52.0"
-      (sources."mime-types-2.1.34" // {
-        dependencies = [
-          sources."mime-db-1.51.0"
-        ];
-      })
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
@@ -122783,6 +122794,7 @@ in
       sources."node-fetch-2.6.7"
       sources."normalize-path-3.0.0"
       sources."normalize-url-6.1.0"
+      sources."npm-registry-utilities-1.0.0"
       sources."object-assign-4.1.1"
       sources."object-hash-2.2.0"
       sources."object-inspect-1.12.0"
@@ -122844,7 +122856,7 @@ in
       sources."shebang-regex-1.0.0"
       sources."side-channel-1.0.4"
       sources."signal-exit-3.0.7"
-      sources."simple-git-2.48.0"
+      sources."simple-git-3.4.0"
       sources."slash-3.0.0"
       sources."sort-keys-1.1.2"
       sources."sort-keys-length-1.0.1"
@@ -122904,6 +122916,7 @@ in
       })
       sources."util-deprecate-1.0.2"
       sources."uuid-8.3.2"
+      sources."validate-npm-package-name-3.0.0"
       sources."wcwidth-1.0.1"
       sources."webidl-conversions-3.0.1"
       sources."whatwg-url-5.0.0"
@@ -123055,10 +123068,10 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."moment-2.7.0"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
@@ -123462,8 +123475,8 @@ in
       sources."lru-cache-2.2.0"
       sources."mime-1.6.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."mv-2.1.1"
       sources."nan-2.15.0"
       sources."ncp-2.0.0"
@@ -123562,10 +123575,10 @@ in
   snyk = nodeEnv.buildNodePackage {
     name = "snyk";
     packageName = "snyk";
-    version = "1.868.0";
+    version = "1.884.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/snyk/-/snyk-1.868.0.tgz";
-      sha512 = "iIzTIgQELgCmqvi3XBdKf+6ButRQ/SKCvR91DJM2SKdnIrRAQykNU2NAzBY5IfM/RHcPqCxlCgeJxTumiswv9g==";
+      url = "https://registry.npmjs.org/snyk/-/snyk-1.884.0.tgz";
+      sha512 = "lQtXRoi0mgTsrjzTcKNbpec+q4ai8rhls1FOcr2ZBTe7V7mKTGXZ9yk6DY2VXRKyboL8zvV3rIrzm+l85n5yIg==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -123589,17 +123602,17 @@ in
       sources."@types/component-emitter-1.2.11"
       sources."@types/cookie-0.4.1"
       sources."@types/cors-2.8.12"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."accepts-1.3.8"
       sources."base64id-2.0.0"
       sources."component-emitter-1.3.0"
       sources."cookie-0.4.2"
       sources."cors-2.8.5"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."engine.io-6.1.3"
       sources."engine.io-parser-5.0.3"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."ms-2.1.2"
       sources."negotiator-0.6.3"
       sources."object-assign-4.1.1"
@@ -123689,7 +123702,7 @@ in
       sources."is-fullwidth-code-point-4.0.0"
       sources."is-interactive-2.0.0"
       sources."is-plain-obj-1.1.0"
-      sources."is-unicode-supported-1.1.0"
+      sources."is-unicode-supported-1.2.0"
       sources."js-tokens-4.0.0"
       sources."json-parse-even-better-errors-2.3.1"
       sources."kind-of-6.0.3"
@@ -123936,7 +123949,7 @@ in
       sources."cpu-percentage-1.0.3"
       sources."crc-3.6.0"
       sources."cross-spawn-6.0.5"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decode-uri-component-0.2.0"
       sources."deep-equal-1.1.1"
       sources."deep-extend-0.6.0"
@@ -124143,7 +124156,7 @@ in
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
       sources."isobject-2.1.0"
-      (sources."jitdb-4.0.1" // {
+      (sources."jitdb-4.1.0" // {
         dependencies = [
           sources."mkdirp-1.0.4"
           sources."push-stream-11.0.1"
@@ -124178,8 +124191,8 @@ in
       })
       sources."levelup-4.4.0"
       sources."libnested-1.5.2"
-      sources."libsodium-0.7.9"
-      sources."libsodium-wrappers-0.7.9"
+      sources."libsodium-0.7.10"
+      sources."libsodium-wrappers-0.7.10"
       sources."lodash.debounce-4.0.8"
       sources."lodash.get-4.4.2"
       sources."log-symbols-1.0.2"
@@ -124197,13 +124210,13 @@ in
       sources."mdmanifest-1.0.8"
       sources."micromatch-2.3.11"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."mixin-deep-1.3.2" // {
         dependencies = [
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."mkdirp-classic-0.5.3"
       sources."monotonic-timestamp-0.0.9"
       sources."moo-0.5.1"
@@ -124377,7 +124390,7 @@ in
       sources."railroad-diagrams-1.0.0"
       sources."randexp-0.4.6"
       sources."random-access-chrome-file-1.2.0"
-      sources."random-access-file-2.2.0"
+      sources."random-access-file-2.2.1"
       (sources."random-access-idb-1.2.2" // {
         dependencies = [
           sources."buffer-from-0.1.2"
@@ -124573,7 +124586,7 @@ in
           sources."rimraf-3.0.2"
           (sources."ssb-keys-8.2.0" // {
             dependencies = [
-              sources."mkdirp-0.5.5"
+              sources."mkdirp-0.5.6"
             ];
           })
         ];
@@ -124825,7 +124838,7 @@ in
       sources."async-1.5.2"
       sources."async-limiter-1.0.1"
       sources."asynckit-0.4.0"
-      (sources."aws-sdk-2.1092.0" // {
+      (sources."aws-sdk-2.1101.0" // {
         dependencies = [
           sources."uuid-3.3.2"
         ];
@@ -125001,6 +125014,7 @@ in
           sources."proxy-addr-2.0.7"
           sources."qs-6.9.7"
           sources."safe-buffer-5.2.1"
+          sources."serve-static-1.14.2"
         ];
       })
       (sources."express-validator-2.21.0" // {
@@ -125187,14 +125201,14 @@ in
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."minicap-prebuilt-2.3.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minitouch-prebuilt-1.2.0"
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."moment-2.29.1"
       sources."ms-2.1.3"
       sources."multer-1.4.4"
@@ -125353,7 +125367,16 @@ in
           sources."safe-buffer-5.1.1"
         ];
       })
-      sources."serve-static-1.14.2"
+      (sources."serve-static-1.15.0" // {
+        dependencies = [
+          sources."depd-2.0.0"
+          sources."destroy-1.2.0"
+          sources."http-errors-2.0.0"
+          sources."on-finished-2.4.1"
+          sources."send-0.18.0"
+          sources."statuses-2.0.1"
+        ];
+      })
       sources."set-blocking-2.0.0"
       sources."setprototypeof-1.2.0"
       sources."shebang-command-1.2.0"
@@ -125410,7 +125433,7 @@ in
       sources."streamsearch-0.1.2"
       (sources."string-width-2.1.1" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."is-fullwidth-code-point-2.0.0"
           sources."strip-ansi-4.0.0"
         ];
@@ -125466,7 +125489,7 @@ in
       sources."tough-cookie-2.3.4"
       (sources."transliteration-1.6.6" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."cliui-4.1.0"
           sources."strip-ansi-4.0.0"
           sources."yargs-12.0.5"
@@ -125603,10 +125626,10 @@ in
   stylelint = nodeEnv.buildNodePackage {
     name = "stylelint";
     packageName = "stylelint";
-    version = "14.5.3";
+    version = "14.6.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/stylelint/-/stylelint-14.5.3.tgz";
-      sha512 = "omHETL+kGHR+fCXFK1SkZD/A+emCP9esggAdWEl8GPjTNeyRYj+H6uetRDcU+7E451zwWiUYGVAX+lApsAZgsQ==";
+      url = "https://registry.npmjs.org/stylelint/-/stylelint-14.6.1.tgz";
+      sha512 = "FfNdvZUZdzh9KDQxDnO7Opp+prKh8OQVuSW8S13cBtxrooCbm6J6royhUeb++53WPMt04VB+ZbOz/QmzAijs6Q==";
     };
     dependencies = [
       sources."@babel/code-frame-7.16.7"
@@ -125618,7 +125641,7 @@ in
       sources."@types/minimist-1.2.2"
       sources."@types/normalize-package-data-2.4.1"
       sources."@types/parse-json-4.0.0"
-      sources."ajv-8.10.0"
+      sources."ajv-8.11.0"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-3.2.1"
       sources."array-union-2.1.0"
@@ -125643,7 +125666,7 @@ in
       sources."cosmiconfig-7.0.1"
       sources."css-functions-list-3.0.1"
       sources."cssesc-3.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       (sources."decamelize-keys-1.1.0" // {
         dependencies = [
@@ -125713,7 +125736,7 @@ in
       sources."mathml-tag-names-2.1.3"
       sources."meow-9.0.0"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."min-indent-1.0.1"
       sources."minimatch-3.1.2"
       sources."minimist-options-4.1.0"
@@ -125734,7 +125757,7 @@ in
       sources."path-type-4.0.0"
       sources."picocolors-1.0.0"
       sources."picomatch-2.3.1"
-      sources."postcss-8.4.8"
+      sources."postcss-8.4.12"
       sources."postcss-media-query-parser-0.2.3"
       sources."postcss-resolve-nested-selector-0.1.1"
       sources."postcss-safe-parser-6.0.0"
@@ -125828,7 +125851,7 @@ in
     dependencies = [
       sources."ajv-6.12.6"
       sources."ansi-escapes-3.2.0"
-      sources."ansi-regex-3.0.0"
+      sources."ansi-regex-3.0.1"
       sources."ansi-styles-3.2.1"
       sources."asn1-0.2.6"
       sources."assert-plus-1.0.0"
@@ -125877,7 +125900,7 @@ in
       sources."inherits-2.0.4"
       (sources."inquirer-6.5.2" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."strip-ansi-5.2.0"
         ];
       })
@@ -125891,14 +125914,14 @@ in
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.2"
       sources."lodash-4.17.21"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.1.2"
       sources."minimist-1.2.3"
-      (sources."mkdirp-0.5.5" // {
+      (sources."mkdirp-0.5.6" // {
         dependencies = [
-          sources."minimist-1.2.5"
+          sources."minimist-1.2.6"
         ];
       })
       sources."moniker-0.1.2"
@@ -125957,16 +125980,16 @@ in
   svelte-check = nodeEnv.buildNodePackage {
     name = "svelte-check";
     packageName = "svelte-check";
-    version = "2.4.5";
+    version = "2.4.6";
     src = fetchurl {
-      url = "https://registry.npmjs.org/svelte-check/-/svelte-check-2.4.5.tgz";
-      sha512 = "nRft8BbG2wcxyCdHDZ7X43xLcvDzua3xLwq6wzHGcAF3ka3Jyhv2rvgq0+SF9NwHLMefp9C2XkM6etzsxK/cMQ==";
+      url = "https://registry.npmjs.org/svelte-check/-/svelte-check-2.4.6.tgz";
+      sha512 = "luzdly7RJhyXucQe8ID/7CqDgXdMrPYXmyZBjCbp+cixzTopZotuWevrB5hWDOnOU19m2cyetigIIa7WDHnCmQ==";
     };
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/pug-2.0.6"
       sources."@types/sass-1.43.1"
       sources."anymatch-3.1.2"
@@ -125997,11 +126020,11 @@ in
       sources."is-number-7.0.0"
       sources."magic-string-0.25.9"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."min-indent-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."mri-1.2.0"
       sources."normalize-path-3.0.0"
       sources."once-1.4.0"
@@ -126023,7 +126046,7 @@ in
       sources."strip-indent-3.0.0"
       sources."svelte-preprocess-4.10.4"
       sources."to-regex-range-5.0.1"
-      sources."typescript-4.6.2"
+      sources."typescript-4.6.3"
       sources."wrappy-1.0.2"
     ];
     buildInputs = globalBuildInputs;
@@ -126039,10 +126062,10 @@ in
   svelte-language-server = nodeEnv.buildNodePackage {
     name = "svelte-language-server";
     packageName = "svelte-language-server";
-    version = "0.14.22";
+    version = "0.14.23";
     src = fetchurl {
-      url = "https://registry.npmjs.org/svelte-language-server/-/svelte-language-server-0.14.22.tgz";
-      sha512 = "zE/lE7aBagckw9ZIV+zySd3/LbU5tEw2f+WEjvrr74AHGW0DuTHdj9x6Hx1N0LbnQ7/OVkhCCxsRfbvLUL724Q==";
+      url = "https://registry.npmjs.org/svelte-language-server/-/svelte-language-server-0.14.23.tgz";
+      sha512 = "/k/Py3fr5Dq7OncbktZUpE/fgMy503hArv41nOa6NLoMbnB3/Lqz7onOKo/K+fyfvWUkHF+Wklz6PZcaNPE8/A==";
     };
     dependencies = [
       sources."@emmetio/abbreviation-2.2.3"
@@ -126051,7 +126074,7 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/pug-2.0.6"
       sources."@types/sass-1.43.1"
       sources."anymatch-3.1.2"
@@ -126086,11 +126109,11 @@ in
       sources."lower-case-2.0.2"
       sources."magic-string-0.25.9"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."min-indent-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."no-case-3.0.4"
       sources."normalize-path-3.0.0"
       sources."once-1.4.0"
@@ -126111,10 +126134,10 @@ in
       sources."strip-indent-3.0.0"
       sources."svelte-3.46.4"
       sources."svelte-preprocess-4.10.4"
-      sources."svelte2tsx-0.5.5"
+      sources."svelte2tsx-0.5.6"
       sources."to-regex-range-5.0.1"
       sources."tslib-2.3.1"
-      sources."typescript-4.6.2"
+      sources."typescript-4.6.3"
       sources."vscode-css-languageservice-5.1.13"
       (sources."vscode-emmet-helper-2.6.4" // {
         dependencies = [
@@ -126168,7 +126191,7 @@ in
       sources."csso-4.2.0"
       sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
       sources."entities-2.2.0"
       sources."mdn-data-2.0.14"
@@ -126318,8 +126341,8 @@ in
       sources."deep-extend-0.6.0"
       sources."define-property-2.0.2"
       sources."delayed-stream-1.0.0"
-      sources."depd-1.1.2"
-      sources."destroy-1.0.4"
+      sources."depd-2.0.0"
+      sources."destroy-1.2.0"
       (sources."dicer-0.2.5" // {
         dependencies = [
           sources."isarray-0.0.1"
@@ -126404,7 +126427,7 @@ in
       sources."growl-1.9.2"
       (sources."handlebars-4.7.7" // {
         dependencies = [
-          sources."minimist-1.2.5"
+          sources."minimist-1.2.6"
           sources."source-map-0.6.1"
         ];
       })
@@ -126418,7 +126441,11 @@ in
           sources."kind-of-4.0.0"
         ];
       })
-      sources."http-errors-1.8.1"
+      (sources."http-errors-2.0.0" // {
+        dependencies = [
+          sources."statuses-2.0.1"
+        ];
+      })
       sources."iconv-lite-0.4.8"
       sources."ignore-by-default-1.0.1"
       sources."import-lazy-2.1.0"
@@ -126520,8 +126547,8 @@ in
       sources."methods-1.1.2"
       sources."micromatch-3.1.10"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.1.2"
       sources."minimist-0.0.8"
       sources."mixin-deep-1.3.2"
@@ -126541,8 +126568,8 @@ in
       sources."ms-2.0.0"
       (sources."multer-1.4.4" // {
         dependencies = [
-          sources."minimist-1.2.5"
-          sources."mkdirp-0.5.5"
+          sources."minimist-1.2.6"
+          sources."mkdirp-0.5.6"
         ];
       })
       sources."mute-stream-0.0.5"
@@ -126618,7 +126645,7 @@ in
       })
       (sources."rc-1.2.8" // {
         dependencies = [
-          sources."minimist-1.2.5"
+          sources."minimist-1.2.6"
         ];
       })
       sources."readable-stream-2.3.7"
@@ -126642,12 +126669,14 @@ in
       sources."sanitize-filename-1.6.3"
       sources."semver-5.7.1"
       sources."semver-diff-2.1.0"
-      (sources."send-0.17.2" // {
+      (sources."send-0.18.0" // {
         dependencies = [
           sources."ms-2.1.3"
+          sources."on-finished-2.4.1"
+          sources."statuses-2.0.1"
         ];
       })
-      sources."serve-static-1.14.2"
+      sources."serve-static-1.15.0"
       (sources."set-value-2.0.1" // {
         dependencies = [
           sources."extend-shallow-2.0.1"
@@ -126718,7 +126747,7 @@ in
       sources."string-3.3.3"
       (sources."string-width-2.1.1" // {
         dependencies = [
-          sources."ansi-regex-3.0.0"
+          sources."ansi-regex-3.0.1"
           sources."is-fullwidth-code-point-2.0.0"
           sources."strip-ansi-4.0.0"
         ];
@@ -126900,11 +126929,11 @@ in
       sources."is-number-7.0.0"
       sources."js-tokens-4.0.0"
       sources."json-parse-even-better-errors-2.3.1"
-      sources."lilconfig-2.0.4"
+      sources."lilconfig-2.0.5"
       sources."lines-and-columns-1.2.4"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
-      sources."minimist-1.2.5"
+      sources."micromatch-4.0.5"
+      sources."minimist-1.2.6"
       sources."nanoid-3.3.1"
       sources."normalize-path-3.0.0"
       sources."object-hash-2.2.0"
@@ -126914,7 +126943,7 @@ in
       sources."path-type-4.0.0"
       sources."picocolors-1.0.0"
       sources."picomatch-2.3.1"
-      sources."postcss-8.4.8"
+      sources."postcss-8.4.12"
       sources."postcss-js-4.0.0"
       sources."postcss-load-config-3.1.3"
       sources."postcss-nested-5.0.6"
@@ -126956,7 +126985,7 @@ in
     };
     dependencies = [
       sources."ajv-6.12.6"
-      sources."ansi-regex-4.1.0"
+      sources."ansi-regex-4.1.1"
       sources."ansi-styles-3.2.1"
       sources."argparse-1.0.10"
       sources."asn1-0.2.6"
@@ -126978,7 +127007,7 @@ in
       sources."combined-stream-1.0.8"
       sources."core-util-is-1.0.2"
       sources."dashdash-1.14.1"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       sources."delayed-stream-1.0.0"
       sources."discord.js-11.6.4"
@@ -127009,9 +127038,9 @@ in
       sources."locate-path-3.0.0"
       sources."long-4.0.0"
       sources."mime-2.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
-      sources."minimist-1.2.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
+      sources."minimist-1.2.6"
       sources."module-alias-2.2.2"
       sources."moment-2.29.1"
       sources."ms-2.1.2"
@@ -127147,10 +127176,10 @@ in
   terser = nodeEnv.buildNodePackage {
     name = "terser";
     packageName = "terser";
-    version = "5.12.0";
+    version = "5.12.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/terser/-/terser-5.12.0.tgz";
-      sha512 = "R3AUhNBGWiFc77HXag+1fXpAxTAFRQTJemlJKjAgD9r8xXTpjNKqIXwHM/o7Rh+O0kUJtS3WQVdBeMKFk5sw9A==";
+      url = "https://registry.npmjs.org/terser/-/terser-5.12.1.tgz";
+      sha512 = "NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ==";
     };
     dependencies = [
       sources."acorn-8.7.0"
@@ -127201,7 +127230,7 @@ in
       sources."@textlint/utils-12.1.1"
       sources."@types/mdast-3.0.10"
       sources."@types/unist-2.0.6"
-      sources."ajv-8.10.0"
+      sources."ajv-8.11.0"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-4.3.0"
       sources."argparse-1.0.10"
@@ -127221,7 +127250,7 @@ in
       sources."color-name-1.1.4"
       sources."concat-map-0.0.1"
       sources."crypt-0.0.2"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deep-equal-1.1.1"
       sources."deep-is-0.1.4"
       sources."define-properties-1.1.3"
@@ -127269,7 +127298,7 @@ in
       sources."js-yaml-3.14.1"
       sources."json-parse-better-errors-1.0.2"
       sources."json-schema-traverse-1.0.0"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."levn-0.4.1"
       sources."load-json-file-1.1.0"
       sources."locate-path-2.0.0"
@@ -127302,8 +127331,8 @@ in
       sources."micromark-extension-gfm-tagfilter-0.3.0"
       sources."micromark-extension-gfm-task-list-item-0.3.3"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.1.2"
       sources."normalize-package-data-2.5.0"
       sources."object-is-1.1.5"
@@ -127518,7 +127547,7 @@ in
       sources."core-util-is-1.0.3"
       sources."crypto-random-string-2.0.0"
       sources."cuss-1.21.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decamelize-1.2.0"
       (sources."decamelize-keys-1.1.0" // {
         dependencies = [
@@ -127646,7 +127675,7 @@ in
       sources."mimic-response-1.0.1"
       sources."min-indent-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minimist-options-4.1.0"
       sources."ms-2.1.2"
       sources."nlcst-is-literal-1.2.2"
@@ -128238,19 +128267,19 @@ in
       sources."@types/cookie-0.4.1"
       sources."@types/cors-2.8.12"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/keyv-3.1.3"
-      sources."@types/node-17.0.21"
+      sources."@types/keyv-3.1.4"
+      sources."@types/node-17.0.23"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."abstract-logging-2.0.1"
       (sources."accepts-1.3.8" // {
         dependencies = [
-          sources."mime-types-2.1.34"
+          sources."mime-types-2.1.35"
         ];
       })
       (sources."agent-base-6.0.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -128332,7 +128361,7 @@ in
       sources."dicer-0.3.0"
       sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
       sources."duplexer3-0.1.4"
       sources."ecc-jsbn-0.1.2"
@@ -128343,7 +128372,7 @@ in
       (sources."engine.io-4.1.2" // {
         dependencies = [
           sources."cookie-0.4.2"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -128399,7 +128428,7 @@ in
       sources."http_ece-1.1.0"
       (sources."https-proxy-agent-5.0.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -128463,7 +128492,7 @@ in
       sources."methods-1.1.2"
       sources."middleware-handler-0.2.0"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
+      sources."mime-db-1.52.0"
       (sources."mime-types-2.1.33" // {
         dependencies = [
           sources."mime-db-1.50.0"
@@ -128472,14 +128501,14 @@ in
       sources."mimic-response-1.0.1"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."minipass-2.9.0" // {
         dependencies = [
           sources."yallist-3.1.1"
         ];
       })
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
       (sources."needle-2.9.1" // {
@@ -128600,14 +128629,14 @@ in
       sources."smart-buffer-4.2.0"
       (sources."socket.io-3.1.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."socket.io-adapter-2.1.0"
       (sources."socket.io-parser-4.0.4" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -128711,19 +128740,19 @@ in
       sources."@types/cookie-0.4.1"
       sources."@types/cors-2.8.12"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/keyv-3.1.3"
-      sources."@types/node-17.0.21"
+      sources."@types/keyv-3.1.4"
+      sources."@types/node-17.0.23"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."abstract-logging-2.0.1"
       (sources."accepts-1.3.8" // {
         dependencies = [
-          sources."mime-types-2.1.34"
+          sources."mime-types-2.1.35"
         ];
       })
       (sources."agent-base-6.0.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -128805,7 +128834,7 @@ in
       sources."dicer-0.3.0"
       sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
       sources."duplexer3-0.1.4"
       sources."ecc-jsbn-0.1.2"
@@ -128816,7 +128845,7 @@ in
       (sources."engine.io-4.1.2" // {
         dependencies = [
           sources."cookie-0.4.2"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -128872,7 +128901,7 @@ in
       sources."http_ece-1.1.0"
       (sources."https-proxy-agent-5.0.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -128936,7 +128965,7 @@ in
       sources."methods-1.1.2"
       sources."middleware-handler-0.2.0"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
+      sources."mime-db-1.52.0"
       (sources."mime-types-2.1.33" // {
         dependencies = [
           sources."mime-db-1.50.0"
@@ -128945,14 +128974,14 @@ in
       sources."mimic-response-1.0.1"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       (sources."minipass-2.9.0" // {
         dependencies = [
           sources."yallist-3.1.1"
         ];
       })
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
       (sources."needle-2.9.1" // {
@@ -129073,14 +129102,14 @@ in
       sources."smart-buffer-4.2.0"
       (sources."socket.io-3.1.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."socket.io-adapter-2.1.0"
       (sources."socket.io-parser-4.0.4" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -129183,7 +129212,7 @@ in
       sources."abstract-logging-1.0.0"
       (sources."accepts-1.3.8" // {
         dependencies = [
-          sources."mime-types-2.1.34"
+          sources."mime-types-2.1.35"
         ];
       })
       sources."after-0.8.2"
@@ -129416,7 +129445,7 @@ in
       sources."methods-1.1.2"
       sources."middleware-handler-0.2.0"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
+      sources."mime-db-1.52.0"
       (sources."mime-types-2.1.24" // {
         dependencies = [
           sources."mime-db-1.40.0"
@@ -129425,10 +129454,10 @@ in
       sources."mimic-response-1.0.1"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
       sources."nan-2.15.0"
@@ -129853,20 +129882,20 @@ in
       sources."@tokenizer/token-0.3.0"
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/keyv-3.1.3"
-      sources."@types/node-17.0.21"
+      sources."@types/keyv-3.1.4"
+      sources."@types/node-17.0.23"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."abstract-logging-2.0.1"
       (sources."accepts-1.3.8" // {
         dependencies = [
-          sources."mime-types-2.1.34"
+          sources."mime-types-2.1.35"
         ];
       })
       sources."after-0.8.2"
       (sources."agent-base-6.0.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -130031,7 +130060,7 @@ in
       sources."http_ece-1.1.0"
       (sources."https-proxy-agent-5.0.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -130079,7 +130108,7 @@ in
       sources."methods-1.1.2"
       sources."middleware-handler-0.2.0"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
+      sources."mime-db-1.52.0"
       (sources."mime-types-2.1.27" // {
         dependencies = [
           sources."mime-db-1.44.0"
@@ -130088,10 +130117,10 @@ in
       sources."mimic-response-1.0.1"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
       (sources."needle-2.9.1" // {
@@ -130318,20 +130347,20 @@ in
       sources."@tokenizer/token-0.3.0"
       sources."@types/cacheable-request-6.0.2"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/keyv-3.1.3"
-      sources."@types/node-17.0.21"
+      sources."@types/keyv-3.1.4"
+      sources."@types/node-17.0.23"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."abstract-logging-2.0.1"
       (sources."accepts-1.3.8" // {
         dependencies = [
-          sources."mime-types-2.1.34"
+          sources."mime-types-2.1.35"
         ];
       })
       sources."after-0.8.2"
       (sources."agent-base-6.0.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -130496,7 +130525,7 @@ in
       sources."http_ece-1.1.0"
       (sources."https-proxy-agent-5.0.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -130544,7 +130573,7 @@ in
       sources."methods-1.1.2"
       sources."middleware-handler-0.2.0"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
+      sources."mime-db-1.52.0"
       (sources."mime-types-2.1.27" // {
         dependencies = [
           sources."mime-db-1.44.0"
@@ -130553,10 +130582,10 @@ in
       sources."mimic-response-1.0.1"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
       (sources."needle-2.9.1" // {
@@ -131168,10 +131197,10 @@ in
   three = nodeEnv.buildNodePackage {
     name = "three";
     packageName = "three";
-    version = "0.138.3";
+    version = "0.139.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/three/-/three-0.138.3.tgz";
-      sha512 = "4t1cKC8gimNyJChJbaklg8W/qj3PpsLJUIFm5LIuAy/hVxxNm1ru2FGTSfbTSsuHmC/7ipsyuGKqrSAKLNtkzg==";
+      url = "https://registry.npmjs.org/three/-/three-0.139.0.tgz";
+      sha512 = "hZ4LkCjgoEM82WLaOVptDKGpB3SkEyuJP2OHe36AFO8hS2I6CrEiNanXj7wwR3wIPT7V5wi5Y5pFnncS5SVHgQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -131186,10 +131215,10 @@ in
   tiddlywiki = nodeEnv.buildNodePackage {
     name = "tiddlywiki";
     packageName = "tiddlywiki";
-    version = "5.2.1";
+    version = "5.2.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/tiddlywiki/-/tiddlywiki-5.2.1.tgz";
-      sha512 = "cfZX8G4/ymQzBmPcI8UWJ317eDrLf4INto99m7M8Nkbx5BMA3+Uapht7OPNaXZRR4RqvVJ7N1Ie1xYMWtvjnpw==";
+      url = "https://registry.npmjs.org/tiddlywiki/-/tiddlywiki-5.2.2.tgz";
+      sha512 = "xAY30p06CI6oFvebL/BnPtM9rbYRG14AVbpEfTvCHjpGutYsn6XBOogbhqnAxncmifFK3CaBGfiaqPNGi6rxGQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -131211,7 +131240,7 @@ in
     };
     dependencies = [
       sources."@octokit/auth-token-2.5.0"
-      sources."@octokit/core-3.5.1"
+      sources."@octokit/core-3.6.0"
       sources."@octokit/endpoint-6.0.12"
       sources."@octokit/graphql-4.8.0"
       sources."@octokit/openapi-types-11.2.0"
@@ -131281,12 +131310,12 @@ in
       sources."jsprim-1.4.2"
       sources."keypress-0.2.1"
       sources."lru-cache-6.0.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
-      sources."node-appc-1.1.3"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
+      sources."node-appc-1.1.4"
       sources."node-fetch-2.6.7"
       sources."oauth-sign-0.9.0"
       sources."once-1.4.0"
@@ -131615,10 +131644,10 @@ in
   typescript = nodeEnv.buildNodePackage {
     name = "typescript";
     packageName = "typescript";
-    version = "4.6.2";
+    version = "4.6.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/typescript/-/typescript-4.6.2.tgz";
-      sha512 = "HM/hFigTBHZhLXshn9sN37H085+hQGeJHJ/X7LpBWLID/fbc2acUMfU+lGD98X81sKP+pFa9f0DZmCwB9GnbAg==";
+      url = "https://registry.npmjs.org/typescript/-/typescript-4.6.3.tgz";
+      sha512 = "yNIatDa5iaofVozS/uQJEl3JRWLKKGJKh6Yaiv0GLGSuhpFJe7P3SbHZ8/yjAHRQwKRoA6YZqlfjXWmVzoVSMw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -131648,7 +131677,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
       sources."clean-stack-2.2.0"
-      sources."commander-9.0.0"
+      sources."commander-9.1.0"
       sources."concat-map-0.0.1"
       sources."crypto-random-string-2.0.0"
       sources."del-6.0.0"
@@ -131678,7 +131707,7 @@ in
       sources."locate-path-3.0.0"
       sources."lru-cache-6.0.0"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."minimatch-3.1.2"
       sources."once-1.4.0"
       sources."p-debounce-2.1.0"
@@ -131761,15 +131790,15 @@ in
   ungit = nodeEnv.buildNodePackage {
     name = "ungit";
     packageName = "ungit";
-    version = "1.5.19";
+    version = "1.5.20";
     src = fetchurl {
-      url = "https://registry.npmjs.org/ungit/-/ungit-1.5.19.tgz";
-      sha512 = "ryOJUymx7IUm7H9Y/3O+amMhhqjfQjkr+cuf2cwYm0UzF+GeBMP8ZtdsnEgi0SjKiwVBCpQkYMNgtSmHAIiukg==";
+      url = "https://registry.npmjs.org/ungit/-/ungit-1.5.20.tgz";
+      sha512 = "GB1sY6RhmBLh9pJY7kEJnX3y995xSaLeWcZwxYT6YJmmdlBmjC7TA5ilbrxxoZk8IpdO+lDuWEz3ANVwhc8zFQ==";
     };
     dependencies = [
       sources."@colors/colors-1.5.0"
       sources."@dabh/diagnostics-2.0.3"
-      sources."@primer/octicons-16.3.1"
+      sources."@primer/octicons-17.0.0"
       sources."@sindresorhus/is-4.6.0"
       sources."@socket.io/base64-arraybuffer-1.0.2"
       sources."@szmarczak/http-timer-4.0.6"
@@ -131778,7 +131807,7 @@ in
       sources."@types/cookie-0.4.1"
       sources."@types/cors-2.8.12"
       sources."@types/http-cache-semantics-4.0.1"
-      sources."@types/keyv-3.1.3"
+      sources."@types/keyv-3.1.4"
       sources."@types/node-16.11.26"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
@@ -131790,6 +131819,7 @@ in
           sources."color-name-1.1.4"
         ];
       })
+      sources."any-promise-1.3.0"
       sources."array-flatten-1.1.1"
       sources."async-3.2.3"
       sources."balanced-match-1.0.2"
@@ -131813,9 +131843,15 @@ in
       sources."concat-map-0.0.1"
       sources."content-disposition-0.5.4"
       sources."content-type-1.0.4"
+      (sources."convert-source-map-1.8.0" // {
+        dependencies = [
+          sources."safe-buffer-5.1.2"
+        ];
+      })
       sources."cookie-0.4.1"
       sources."cookie-parser-1.4.6"
       sources."cookie-signature-1.0.6"
+      sources."core-util-is-1.0.3"
       sources."cors-2.8.5"
       sources."crossroads-0.12.2"
       sources."debug-2.6.9"
@@ -131839,11 +131875,12 @@ in
       sources."end-of-stream-1.4.4"
       (sources."engine.io-6.1.3" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."engine.io-parser-5.0.3"
+      sources."error-ex-1.3.2"
       sources."escalade-3.1.1"
       sources."escape-html-1.0.3"
       sources."etag-1.8.1"
@@ -131884,11 +131921,13 @@ in
       sources."inherits-2.0.4"
       sources."ini-1.3.8"
       sources."ipaddr.js-1.9.1"
-      sources."is-arrayish-0.3.2"
+      sources."is-arrayish-0.2.1"
       sources."is-docker-2.2.1"
       sources."is-fullwidth-code-point-3.0.0"
       sources."is-stream-2.0.1"
+      sources."is-utf8-0.2.1"
       sources."is-wsl-2.2.0"
+      sources."isarray-1.0.0"
       sources."jquery-3.6.0"
       sources."jquery-ui-1.13.1"
       sources."json-buffer-3.0.1"
@@ -131908,18 +131947,18 @@ in
       sources."media-typer-0.3.0"
       (sources."memorystore-1.6.7" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-1.0.4"
       sources."moment-2.29.1"
       sources."ms-2.0.0"
@@ -131938,6 +131977,7 @@ in
       sources."p-cancelable-2.1.1"
       sources."p-limit-4.0.0"
       sources."package-json-7.0.0"
+      sources."parse-json-2.2.0"
       sources."parseurl-1.3.3"
       sources."passport-0.5.2"
       sources."passport-local-1.0.0"
@@ -131945,6 +131985,7 @@ in
       sources."path-is-absolute-1.0.1"
       sources."path-to-regexp-0.1.7"
       sources."pause-0.0.1"
+      sources."process-nextick-args-2.0.1"
       sources."proxy-addr-2.0.7"
       sources."pseudomap-1.0.2"
       sources."pump-3.0.0"
@@ -131955,7 +131996,11 @@ in
       sources."raven-js-3.27.2"
       sources."raw-body-2.4.3"
       sources."rc-1.2.8"
-      sources."readable-stream-3.6.0"
+      (sources."readable-stream-2.3.7" // {
+        dependencies = [
+          sources."safe-buffer-5.1.2"
+        ];
+      })
       sources."registry-auth-token-4.2.1"
       sources."registry-url-5.1.0"
       sources."require-directory-2.1.1"
@@ -131979,47 +132024,73 @@ in
       sources."serve-static-1.14.2"
       sources."setprototypeof-1.2.0"
       sources."signals-1.0.0"
-      sources."simple-swizzle-0.2.2"
+      (sources."simple-swizzle-0.2.2" // {
+        dependencies = [
+          sources."is-arrayish-0.3.2"
+        ];
+      })
       sources."snapsvg-0.5.1"
       (sources."socket.io-4.4.1" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."socket.io-adapter-2.3.3"
       (sources."socket.io-parser-4.0.4" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."stack-trace-0.0.10"
       sources."statuses-1.5.0"
       sources."string-width-4.2.3"
-      sources."string_decoder-1.3.0"
+      (sources."string_decoder-1.1.1" // {
+        dependencies = [
+          sources."safe-buffer-5.1.2"
+        ];
+      })
       sources."strip-ansi-6.0.1"
+      sources."strip-bom-2.0.0"
       sources."strip-json-comments-2.0.1"
       (sources."temp-0.9.4" // {
         dependencies = [
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
           sources."rimraf-2.6.3"
         ];
       })
       sources."text-hex-1.0.0"
+      sources."through2-2.0.5"
       sources."toidentifier-1.0.1"
       sources."triple-beam-1.3.0"
+      sources."tsconfig-5.0.3"
+      (sources."tsify-5.0.4" // {
+        dependencies = [
+          sources."semver-6.3.0"
+        ];
+      })
       sources."type-is-1.6.18"
+      sources."typescript-4.6.3"
       sources."uid-safe-2.1.5"
       sources."unpipe-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."utils-merge-1.0.1"
       sources."vary-1.1.2"
-      sources."winston-3.5.1"
-      sources."winston-transport-4.5.0"
+      (sources."winston-3.6.0" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
+      (sources."winston-transport-4.5.0" // {
+        dependencies = [
+          sources."readable-stream-3.6.0"
+        ];
+      })
       sources."wrap-ansi-7.0.0"
       sources."wrappy-1.0.2"
       sources."ws-8.2.3"
+      sources."xtend-4.0.2"
       sources."y18n-5.0.8"
       sources."yallist-2.1.2"
       sources."yargs-17.3.1"
@@ -132053,7 +132124,7 @@ in
       sources."@types/is-empty-1.2.1"
       sources."@types/js-yaml-4.0.5"
       sources."@types/ms-0.7.31"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/supports-color-8.1.1"
       sources."@types/unist-2.0.6"
       sources."ansi-regex-6.0.1"
@@ -132062,13 +132133,13 @@ in
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
       sources."buffer-from-1.1.2"
-      sources."builtins-4.0.0"
+      sources."builtins-4.1.0"
       sources."chalk-2.4.2"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
       sources."concat-map-0.0.1"
       sources."concat-stream-2.0.0"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."eastasianwidth-0.2.0"
       sources."emoji-regex-9.2.2"
       sources."error-ex-1.3.2"
@@ -132122,7 +132193,7 @@ in
       sources."util-deprecate-1.0.2"
       sources."vfile-5.3.2"
       sources."vfile-message-3.1.2"
-      (sources."vfile-reporter-7.0.3" // {
+      (sources."vfile-reporter-7.0.4" // {
         dependencies = [
           sources."supports-color-9.2.1"
         ];
@@ -132150,10 +132221,10 @@ in
   vega-cli = nodeEnv.buildNodePackage {
     name = "vega-cli";
     packageName = "vega-cli";
-    version = "5.21.0";
+    version = "5.22.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/vega-cli/-/vega-cli-5.21.0.tgz";
-      sha512 = "UuxW79x2n0bYBexa3vblI2o4CPhIJTBGvA0remuNm74RjkjMkDHMXDriCs5sYQ7jYyekvROmvmC9t/Pn0g0+6Q==";
+      url = "https://registry.npmjs.org/vega-cli/-/vega-cli-5.22.1.tgz";
+      sha512 = "gX4TrHLo1nsBiLC/bZkWnZANp1ib4b4+3drekhCkJv0ne+Ti9Xuf5b2G8yqYv4pmT/sB5/ClvxFKmm1Ol0tFIQ==";
     };
     dependencies = [
       sources."@mapbox/node-pre-gyp-1.0.8"
@@ -132166,54 +132237,51 @@ in
       sources."are-we-there-yet-2.0.0"
       sources."balanced-match-1.0.2"
       sources."brace-expansion-1.1.11"
-      sources."canvas-2.9.0"
+      sources."canvas-2.9.1"
       sources."chownr-2.0.0"
       sources."cliui-7.0.4"
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."color-support-1.1.3"
-      sources."commander-2.20.3"
+      sources."commander-7.2.0"
       sources."concat-map-0.0.1"
       sources."console-control-strings-1.1.0"
-      sources."d3-array-2.12.1"
-      sources."d3-color-2.0.0"
-      sources."d3-delaunay-5.3.0"
-      sources."d3-dispatch-2.0.0"
-      sources."d3-dsv-2.0.0"
-      sources."d3-force-2.1.1"
-      sources."d3-format-2.0.0"
-      sources."d3-geo-2.0.2"
-      sources."d3-geo-projection-3.0.0"
-      sources."d3-hierarchy-2.0.0"
-      sources."d3-interpolate-2.0.1"
-      sources."d3-path-2.0.0"
-      sources."d3-quadtree-2.0.0"
-      sources."d3-scale-3.3.0"
-      sources."d3-shape-2.1.0"
-      sources."d3-time-2.1.1"
-      sources."d3-time-format-3.0.0"
-      sources."d3-timer-2.0.0"
-      sources."debug-4.3.3"
+      sources."d3-array-3.1.1"
+      sources."d3-color-3.0.1"
+      sources."d3-delaunay-6.0.2"
+      sources."d3-dispatch-3.0.1"
+      sources."d3-dsv-3.0.1"
+      sources."d3-force-3.0.0"
+      sources."d3-format-3.1.0"
+      sources."d3-geo-3.0.1"
+      sources."d3-geo-projection-4.0.0"
+      sources."d3-hierarchy-3.1.1"
+      sources."d3-interpolate-3.0.1"
+      sources."d3-path-3.0.1"
+      sources."d3-quadtree-3.0.1"
+      sources."d3-scale-4.0.2"
+      sources."d3-shape-3.1.0"
+      sources."d3-time-3.0.0"
+      sources."d3-time-format-4.1.0"
+      sources."d3-timer-3.0.1"
+      sources."debug-4.3.4"
       sources."decompress-response-4.2.1"
-      sources."delaunator-4.0.1"
+      sources."delaunator-5.0.0"
       sources."delegates-1.0.0"
       sources."detect-libc-1.0.3"
       sources."emoji-regex-8.0.0"
       sources."escalade-3.1.1"
       sources."fs-minipass-2.1.0"
       sources."fs.realpath-1.0.0"
-      sources."function-bind-1.1.1"
       sources."gauge-3.0.2"
       sources."get-caller-file-2.0.5"
       sources."glob-7.2.0"
-      sources."has-1.0.3"
       sources."has-unicode-2.0.1"
       sources."https-proxy-agent-5.0.0"
-      sources."iconv-lite-0.4.24"
+      sources."iconv-lite-0.6.3"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
-      sources."internmap-1.0.1"
-      sources."is-core-module-2.8.1"
+      sources."internmap-2.0.3"
       sources."is-fullwidth-code-point-3.0.0"
       sources."lru-cache-6.0.0"
       (sources."make-dir-3.1.0" // {
@@ -132234,11 +132302,10 @@ in
       sources."object-assign-4.1.1"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.7"
       sources."readable-stream-3.6.0"
       sources."require-directory-2.1.1"
-      sources."resolve-1.22.0"
       sources."rimraf-3.0.2"
+      sources."robust-predicates-3.0.1"
       sources."rw-1.3.3"
       sources."safe-buffer-5.2.1"
       sources."safer-buffer-2.1.2"
@@ -132250,40 +132317,43 @@ in
       sources."string-width-4.2.3"
       sources."string_decoder-1.3.0"
       sources."strip-ansi-6.0.1"
-      sources."supports-preserve-symlinks-flag-1.0.0"
       sources."tar-6.1.11"
-      sources."topojson-client-3.1.0"
+      (sources."topojson-client-3.1.0" // {
+        dependencies = [
+          sources."commander-2.20.3"
+        ];
+      })
       sources."tr46-0.0.3"
       sources."util-deprecate-1.0.2"
-      sources."vega-5.21.0"
+      sources."vega-5.22.1"
       sources."vega-canvas-1.2.6"
-      sources."vega-crossfilter-4.0.5"
+      sources."vega-crossfilter-4.1.0"
       sources."vega-dataflow-5.7.4"
-      sources."vega-encode-4.8.3"
+      sources."vega-encode-4.9.0"
       sources."vega-event-selector-3.0.0"
       sources."vega-expression-5.0.0"
-      sources."vega-force-4.0.7"
-      sources."vega-format-1.0.4"
-      sources."vega-functions-5.12.1"
-      sources."vega-geo-4.3.8"
-      sources."vega-hierarchy-4.0.9"
-      sources."vega-label-1.1.0"
-      sources."vega-loader-4.4.1"
+      sources."vega-force-4.1.0"
+      sources."vega-format-1.1.0"
+      sources."vega-functions-5.13.0"
+      sources."vega-geo-4.4.0"
+      sources."vega-hierarchy-4.1.0"
+      sources."vega-label-1.2.0"
+      sources."vega-loader-4.5.0"
       sources."vega-parser-6.1.4"
-      sources."vega-projection-1.4.5"
-      sources."vega-regression-1.0.9"
+      sources."vega-projection-1.5.0"
+      sources."vega-regression-1.1.0"
       sources."vega-runtime-6.1.3"
-      sources."vega-scale-7.1.1"
-      sources."vega-scenegraph-4.9.4"
-      sources."vega-selections-5.3.1"
-      sources."vega-statistics-1.7.10"
-      sources."vega-time-2.0.4"
-      sources."vega-transforms-4.9.4"
+      sources."vega-scale-7.2.0"
+      sources."vega-scenegraph-4.10.1"
+      sources."vega-selections-5.4.0"
+      sources."vega-statistics-1.8.0"
+      sources."vega-time-2.1.0"
+      sources."vega-transforms-4.10.0"
       sources."vega-typings-0.22.2"
       sources."vega-util-1.17.0"
-      sources."vega-view-5.10.1"
+      sources."vega-view-5.11.0"
       sources."vega-view-transforms-4.5.8"
-      sources."vega-voronoi-4.1.5"
+      sources."vega-voronoi-4.2.0"
       sources."vega-wordcloud-4.1.3"
       sources."webidl-conversions-3.0.1"
       sources."whatwg-url-5.0.0"
@@ -132292,7 +132362,7 @@ in
       sources."wrappy-1.0.2"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      sources."yargs-17.3.1"
+      sources."yargs-17.4.0"
       sources."yargs-parser-21.0.1"
     ];
     buildInputs = globalBuildInputs;
@@ -132355,20 +132425,21 @@ in
   vercel = nodeEnv.buildNodePackage {
     name = "vercel";
     packageName = "vercel";
-    version = "24.0.0";
+    version = "24.0.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/vercel/-/vercel-24.0.0.tgz";
-      sha512 = "RMIfXipcbyONxWCUgzh6yaDEFlzMFLV+3ug+mGeQg45F9JmUfwXHiiLUDEWDnt9598CEN0V0P0DcKUCOQNNX6w==";
+      url = "https://registry.npmjs.org/vercel/-/vercel-24.0.1.tgz";
+      sha512 = "LmWW65KyWJV/GTxlcVwcifGp1yywUSNP3fcMNZQLdd6fVC3CHJUyHz5t4GD8O1VM56NqvnnYgqNbGYBQXLN5gQ==";
     };
     dependencies = [
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/node-17.0.21"
-      sources."@vercel/build-utils-2.14.0"
-      sources."@vercel/go-1.3.0"
-      sources."@vercel/node-1.13.0"
-      sources."@vercel/python-2.2.0"
-      sources."@vercel/ruby-1.3.0"
+      sources."@types/node-17.0.23"
+      sources."@vercel/build-utils-2.15.0"
+      sources."@vercel/go-1.3.1"
+      sources."@vercel/node-1.14.0"
+      sources."@vercel/node-bridge-2.2.0"
+      sources."@vercel/python-2.2.1"
+      sources."@vercel/ruby-1.3.1"
       sources."ansi-align-3.0.1"
       sources."ansi-regex-5.0.1"
       sources."ansi-styles-4.3.0"
@@ -132424,7 +132495,7 @@ in
       sources."make-dir-3.1.0"
       sources."make-error-1.3.6"
       sources."mimic-response-1.0.1"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."normalize-url-4.5.1"
       sources."once-1.4.0"
       sources."p-cancelable-1.1.0"
@@ -132536,7 +132607,7 @@ in
       sources."commander-2.20.3"
       sources."concat-map-0.0.1"
       sources."cross-spawn-7.0.3"
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."deep-is-0.1.4"
       sources."diff-4.0.2"
       sources."doctrine-3.0.0"
@@ -132586,7 +132657,7 @@ in
       sources."get-intrinsic-1.1.1"
       sources."glob-7.2.0"
       sources."glob-parent-5.1.2"
-      sources."globals-13.12.1"
+      sources."globals-13.13.0"
       sources."has-1.0.3"
       sources."has-flag-3.0.0"
       sources."has-symbols-1.0.3"
@@ -132613,8 +132684,8 @@ in
       sources."lodash.truncate-4.4.2"
       sources."lru-cache-6.0.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.1.2"
       sources."natural-compare-1.4.0"
       sources."object-assign-4.1.1"
@@ -132625,7 +132696,7 @@ in
       sources."path-key-3.1.1"
       sources."path-parse-1.0.7"
       sources."prelude-ls-1.2.1"
-      sources."prettier-2.5.1"
+      sources."prettier-2.6.1"
       sources."progress-2.0.3"
       sources."pug-error-2.0.0"
       sources."pug-lexer-5.0.1"
@@ -132653,7 +132724,7 @@ in
       sources."supports-preserve-symlinks-flag-1.0.0"
       (sources."table-6.8.0" // {
         dependencies = [
-          sources."ajv-8.10.0"
+          sources."ajv-8.11.0"
           sources."json-schema-traverse-1.0.0"
         ];
       })
@@ -132669,7 +132740,7 @@ in
       sources."tsutils-2.29.0"
       sources."type-check-0.4.0"
       sources."type-fest-0.20.2"
-      sources."typescript-4.6.2"
+      sources."typescript-4.6.3"
       sources."uri-js-4.4.1"
       sources."v8-compile-cache-2.3.0"
       (sources."vue-eslint-parser-7.11.0" // {
@@ -132778,7 +132849,7 @@ in
       sources."jsonc-parser-3.0.0"
       sources."ms-2.0.0"
       sources."request-light-0.4.0"
-      (sources."vscode-json-languageservice-4.2.0" // {
+      (sources."vscode-json-languageservice-4.2.1" // {
         dependencies = [
           sources."vscode-nls-5.0.0"
         ];
@@ -132864,22 +132935,22 @@ in
       sources."jsonc-parser-3.0.0"
       sources."regenerator-runtime-0.13.9"
       sources."request-light-0.5.7"
-      sources."typescript-4.6.2"
-      sources."vscode-css-languageservice-5.1.13"
-      sources."vscode-html-languageservice-4.2.2"
-      sources."vscode-json-languageservice-4.2.0"
+      sources."typescript-4.6.3"
+      sources."vscode-css-languageservice-5.3.0"
+      sources."vscode-html-languageservice-4.2.4"
+      sources."vscode-json-languageservice-4.2.1"
       sources."vscode-jsonrpc-8.0.0-next.7"
-      sources."vscode-languageserver-8.0.0-next.9"
-      (sources."vscode-languageserver-protocol-3.17.0-next.15" // {
+      sources."vscode-languageserver-8.0.0-next.10"
+      (sources."vscode-languageserver-protocol-3.17.0-next.16" // {
         dependencies = [
-          sources."vscode-languageserver-types-3.17.0-next.8"
+          sources."vscode-languageserver-types-3.17.0-next.9"
         ];
       })
       sources."vscode-languageserver-textdocument-1.0.4"
       sources."vscode-languageserver-types-3.16.0"
       sources."vscode-nls-5.0.0"
       sources."vscode-uri-3.0.3"
-      sources."yarn-1.22.17"
+      sources."yarn-1.22.18"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -132901,7 +132972,7 @@ in
       sources."@types/eslint-8.4.1"
       sources."@types/eslint-scope-3.7.3"
       sources."@types/estree-0.0.51"
-      sources."@types/json-schema-7.0.9"
+      sources."@types/json-schema-7.0.11"
       sources."@types/mocha-7.0.2"
       sources."@types/node-8.10.66"
       sources."@types/vscode-1.65.0"
@@ -132932,7 +133003,7 @@ in
       sources."ajv-6.12.6"
       sources."ajv-keywords-3.5.2"
       sources."ansi-colors-4.1.1"
-      sources."ansi-regex-3.0.0"
+      sources."ansi-regex-3.0.1"
       sources."ansi-styles-4.3.0"
       sources."anymatch-3.1.2"
       sources."argparse-2.0.1"
@@ -132944,12 +133015,12 @@ in
       sources."brace-expansion-1.1.11"
       sources."braces-3.0.2"
       sources."browser-stdout-1.3.1"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."buffer-crc32-0.2.13"
       sources."buffer-from-1.1.2"
       sources."call-bind-1.0.2"
       sources."camelcase-6.3.0"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       (sources."chalk-4.1.2" // {
         dependencies = [
           sources."supports-color-7.2.0"
@@ -132987,9 +133058,9 @@ in
       sources."diff-5.0.0"
       sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       sources."emoji-regex-8.0.0"
       sources."emojis-list-3.0.0"
       sources."enhanced-resolve-5.9.2"
@@ -133052,7 +133123,7 @@ in
       sources."js-yaml-4.0.0"
       sources."json-parse-better-errors-1.0.2"
       sources."json-schema-traverse-0.4.1"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."kind-of-6.0.3"
       sources."leven-3.1.0"
       sources."linkify-it-2.2.0"
@@ -133079,13 +133150,12 @@ in
       })
       sources."memory-streams-0.1.3"
       sources."merge-stream-2.0.0"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."minimatch-3.0.4"
-      sources."minimist-1.2.5"
       sources."mocha-8.4.0"
       sources."ms-2.1.3"
       sources."mute-stream-0.0.8"
@@ -133156,7 +133226,7 @@ in
       sources."supports-color-8.1.1"
       sources."supports-preserve-symlinks-flag-1.0.0"
       sources."tapable-2.2.1"
-      (sources."terser-5.12.0" // {
+      (sources."terser-5.12.1" // {
         dependencies = [
           sources."commander-2.20.3"
           sources."source-map-0.7.3"
@@ -133179,7 +133249,7 @@ in
       sources."tslib-2.3.1"
       sources."tunnel-0.0.6"
       sources."typed-rest-client-1.8.6"
-      sources."typescript-4.6.2"
+      sources."typescript-4.6.3"
       sources."uc.micro-1.0.6"
       sources."underscore-1.13.2"
       sources."uri-js-4.4.1"
@@ -133255,7 +133325,7 @@ in
     dependencies = [
       sources."ajv-6.12.6"
       sources."ansi-escapes-3.2.0"
-      sources."ansi-regex-3.0.0"
+      sources."ansi-regex-3.0.1"
       sources."ansi-styles-3.2.1"
       sources."argparse-1.0.10"
       sources."array-differ-1.0.0"
@@ -133410,13 +133480,13 @@ in
           sources."supports-color-7.2.0"
         ];
       })
-      sources."micromatch-4.0.4"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."micromatch-4.0.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."multimatch-2.1.0"
       sources."mute-stream-0.0.7"
       sources."neo-async-2.6.2"
@@ -133481,7 +133551,7 @@ in
       })
       (sources."strip-ansi-5.2.0" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
         ];
       })
       sources."strip-bom-string-1.0.0"
@@ -133565,7 +133635,7 @@ in
       sources."@starptech/rehype-webparser-0.10.0"
       sources."@starptech/webparser-0.10.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/unist-2.0.6"
       sources."@types/vfile-3.0.2"
       sources."@types/vfile-message-2.0.0"
@@ -133583,7 +133653,7 @@ in
         ];
       })
       sources."ansi-escapes-3.2.0"
-      sources."ansi-regex-3.0.0"
+      sources."ansi-regex-3.0.1"
       sources."ansi-styles-3.2.1"
       sources."anymatch-3.1.2"
       sources."argparse-1.0.10"
@@ -133622,7 +133692,7 @@ in
       sources."bootstrap-vue-helper-json-1.1.1"
       (sources."boxen-3.2.0" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."camelcase-5.3.1"
           sources."emoji-regex-7.0.3"
           sources."string-width-3.1.0"
@@ -133755,7 +133825,7 @@ in
       (sources."eslint-5.16.0" // {
         dependencies = [
           sources."cross-spawn-6.0.5"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ignore-4.0.6"
           sources."ms-2.1.2"
         ];
@@ -133763,7 +133833,7 @@ in
       (sources."eslint-plugin-vue-6.2.2" // {
         dependencies = [
           sources."acorn-7.4.1"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."eslint-scope-5.1.1"
           sources."espree-6.2.1"
           sources."ms-2.1.2"
@@ -133910,7 +133980,7 @@ in
       sources."ini-1.3.8"
       (sources."inquirer-6.5.2" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."strip-ansi-5.2.0"
         ];
       })
@@ -133961,7 +134031,7 @@ in
       sources."json-parse-better-errors-1.0.2"
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-without-jsonify-1.0.1"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."jsonc-parser-1.0.3"
       sources."keyv-3.1.0"
       sources."kind-of-6.0.3"
@@ -134010,14 +134080,14 @@ in
       sources."mimic-fn-1.2.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minimist-options-3.0.2"
       (sources."mixin-deep-1.3.2" // {
         dependencies = [
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       sources."mout-0.5.0"
       sources."ms-2.1.3"
       sources."mute-stream-0.0.7"
@@ -134315,7 +134385,7 @@ in
       sources."symbol-0.2.3"
       (sources."table-5.4.6" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
           sources."emoji-regex-7.0.3"
           sources."string-width-3.1.0"
           sources."strip-ansi-5.2.0"
@@ -134437,7 +134507,7 @@ in
       sources."vscode-uri-1.0.8"
       (sources."vue-eslint-parser-6.0.5" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -134491,7 +134561,7 @@ in
       sha512 = "slGcIXCA/j5d2uzQ7flA4/veF0P0eE+Om/Bw7uEO2LC9a3mVNdB+2bSR1CILMjvgyFy9Q9D6eseomQgp7UW5Dg==";
     };
     dependencies = [
-      sources."@babel/runtime-corejs3-7.17.2"
+      sources."@babel/runtime-corejs3-7.17.8"
       sources."@mapbox/node-pre-gyp-1.0.8"
       sources."@tootallnate/once-1.1.2"
       sources."@types/raf-3.4.0"
@@ -134516,7 +134586,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."browser-process-hrtime-1.0.0"
       sources."btoa-1.2.1"
-      sources."canvas-2.9.0"
+      sources."canvas-2.9.1"
       sources."canvg-3.0.7"
       sources."chownr-2.0.0"
       sources."cliui-7.0.4"
@@ -134540,7 +134610,7 @@ in
           sources."whatwg-url-8.7.0"
         ];
       })
-      sources."debug-4.3.3"
+      sources."debug-4.3.4"
       sources."decimal.js-10.3.1"
       sources."decompress-response-4.2.1"
       sources."deep-is-0.1.4"
@@ -134583,7 +134653,7 @@ in
           sources."whatwg-url-8.7.0"
         ];
       })
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."jsonfile-6.1.0"
       sources."levn-0.3.0"
       sources."lodash-4.17.21"
@@ -134594,11 +134664,10 @@ in
           sources."semver-6.3.0"
         ];
       })
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-response-2.1.0"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
       sources."minipass-3.1.6"
       sources."minizlib-2.1.2"
       sources."mkdirp-1.0.4"
@@ -134668,7 +134737,7 @@ in
       sources."xmlchars-2.2.0"
       sources."y18n-5.0.8"
       sources."yallist-4.0.0"
-      sources."yargs-17.3.1"
+      sources."yargs-17.4.0"
       sources."yargs-parser-21.0.1"
     ];
     buildInputs = globalBuildInputs;
@@ -134684,10 +134753,10 @@ in
   web-ext = nodeEnv.buildNodePackage {
     name = "web-ext";
     packageName = "web-ext";
-    version = "6.7.0";
+    version = "6.8.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/web-ext/-/web-ext-6.7.0.tgz";
-      sha512 = "QN+ufUPMNhLbrEqwFDOuoHy4m2OOPAp8NDMKJaWIByZRh8VPH+JoJ6/NAaIEcs9TPKnkA2018TNIJAfYN9EerA==";
+      url = "https://registry.npmjs.org/web-ext/-/web-ext-6.8.0.tgz";
+      sha512 = "qZ3a4YVs0Vdqet44QRZEcNUQznkrfhsAkSOnZp57O4T4A9Bo3pamePSBeRqdPdJv9GF8ntKG84o3eV0MrEvLbw==";
     };
     dependencies = [
       sources."@babel/code-frame-7.16.7"
@@ -134709,31 +134778,29 @@ in
       sources."@devicefarmer/adbkit-monkey-1.0.1"
       (sources."@eslint/eslintrc-1.2.1" // {
         dependencies = [
-          sources."debug-4.3.3"
-          sources."eslint-visitor-keys-3.3.0"
-          sources."espree-9.3.1"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       (sources."@humanwhocodes/config-array-0.9.5" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."@humanwhocodes/object-schema-1.2.1"
-      sources."@mdn/browser-compat-data-4.1.6"
+      sources."@mdn/browser-compat-data-4.1.12"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@types/minimatch-3.0.5"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/yauzl-2.9.2"
       sources."acorn-8.7.0"
       sources."acorn-jsx-5.3.2"
-      (sources."addons-linter-4.9.0" // {
+      (sources."addons-linter-4.14.0" // {
         dependencies = [
           sources."source-map-support-0.5.21"
-          sources."yargs-17.3.1"
+          sources."yargs-17.4.0"
         ];
       })
       sources."addons-moz-compare-1.2.0"
@@ -134823,7 +134890,7 @@ in
       sources."doctrine-3.0.0"
       sources."dom-serializer-1.3.2"
       sources."domelementtype-2.2.0"
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
       sources."dot-prop-5.3.0"
       sources."dtrace-provider-0.8.8"
@@ -134840,9 +134907,9 @@ in
       sources."escalade-3.1.1"
       sources."escape-goat-2.1.1"
       sources."escape-string-regexp-4.0.0"
-      (sources."eslint-8.8.0" // {
+      (sources."eslint-8.11.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -134853,14 +134920,13 @@ in
           sources."eslint-visitor-keys-2.1.0"
         ];
       })
-      sources."eslint-visitor-keys-3.2.0"
-      sources."espree-9.3.0"
+      sources."eslint-visitor-keys-3.3.0"
+      sources."espree-9.3.1"
       sources."esprima-4.0.1"
       sources."esquery-1.4.0"
       sources."esrecurse-4.3.0"
       sources."estraverse-5.3.0"
       sources."esutils-2.0.3"
-      sources."event-to-promise-0.8.0"
       sources."execa-4.1.0"
       sources."extend-3.0.2"
       sources."extsprintf-1.3.0"
@@ -134909,7 +134975,7 @@ in
       sources."glob-parent-6.0.2"
       sources."glob-to-regexp-0.4.1"
       sources."global-dirs-3.0.0"
-      sources."globals-13.12.1"
+      sources."globals-13.13.0"
       (sources."got-9.6.0" // {
         dependencies = [
           sources."get-stream-4.1.0"
@@ -135017,16 +135083,17 @@ in
           sources."semver-6.3.0"
         ];
       })
+      sources."make-error-1.3.6"
       sources."map-age-cleaner-0.1.3"
       sources."marky-1.2.4"
       sources."mem-5.1.1"
       sources."merge-stream-2.0.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-1.0.4"
       sources."moment-2.29.1"
       sources."ms-2.0.0"
@@ -135034,7 +135101,7 @@ in
       (sources."mv-2.1.1" // {
         dependencies = [
           sources."glob-6.0.4"
-          sources."mkdirp-0.5.5"
+          sources."mkdirp-0.5.6"
           sources."rimraf-2.4.5"
         ];
       })
@@ -135077,14 +135144,15 @@ in
       sources."pend-1.2.0"
       sources."performance-now-2.1.0"
       sources."picocolors-1.0.0"
-      sources."pino-7.6.5"
+      sources."pino-7.9.1"
       sources."pino-abstract-transport-0.5.0"
       sources."pino-std-serializers-4.0.0"
-      sources."postcss-8.4.6"
+      sources."postcss-8.4.12"
       sources."prelude-ls-1.2.1"
       sources."prepend-http-2.0.0"
       sources."process-nextick-args-2.0.1"
       sources."process-warning-1.0.0"
+      sources."promise-toolbox-0.20.0"
       sources."psl-1.8.0"
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
@@ -135250,8 +135318,8 @@ in
       sources."@types/eslint-8.4.1"
       sources."@types/eslint-scope-3.7.3"
       sources."@types/estree-0.0.51"
-      sources."@types/json-schema-7.0.9"
-      sources."@types/node-17.0.21"
+      sources."@types/json-schema-7.0.11"
+      sources."@types/node-17.0.23"
       sources."@webassemblyjs/ast-1.11.1"
       sources."@webassemblyjs/floating-point-hex-parser-1.11.1"
       sources."@webassemblyjs/helper-api-error-1.11.1"
@@ -135273,12 +135341,12 @@ in
       sources."acorn-import-assertions-1.8.0"
       sources."ajv-6.12.6"
       sources."ajv-keywords-3.5.2"
-      sources."browserslist-4.20.0"
+      sources."browserslist-4.20.2"
       sources."buffer-from-1.1.2"
-      sources."caniuse-lite-1.0.30001314"
+      sources."caniuse-lite-1.0.30001320"
       sources."chrome-trace-event-1.0.3"
       sources."commander-2.20.3"
-      sources."electron-to-chromium-1.4.82"
+      sources."electron-to-chromium-1.4.96"
       sources."enhanced-resolve-5.9.2"
       sources."es-module-lexer-0.9.3"
       sources."escalade-3.1.1"
@@ -135300,8 +135368,8 @@ in
       sources."json-schema-traverse-0.4.1"
       sources."loader-runner-4.2.0"
       sources."merge-stream-2.0.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."neo-async-2.6.2"
       sources."node-releases-2.0.2"
       sources."picocolors-1.0.0"
@@ -135314,7 +135382,7 @@ in
       sources."source-map-support-0.5.21"
       sources."supports-color-8.1.1"
       sources."tapable-2.2.1"
-      (sources."terser-5.12.0" // {
+      (sources."terser-5.12.1" // {
         dependencies = [
           sources."source-map-0.7.3"
         ];
@@ -135422,19 +135490,19 @@ in
       sources."@types/express-4.17.13"
       sources."@types/express-serve-static-core-4.17.28"
       sources."@types/http-proxy-1.17.8"
-      sources."@types/json-schema-7.0.9"
+      sources."@types/json-schema-7.0.11"
       sources."@types/mime-1.3.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@types/qs-6.9.7"
       sources."@types/range-parser-1.2.4"
       sources."@types/retry-0.12.1"
       sources."@types/serve-index-1.9.1"
       sources."@types/serve-static-1.13.10"
       sources."@types/sockjs-0.3.33"
-      sources."@types/ws-8.5.2"
+      sources."@types/ws-8.5.3"
       sources."accepts-1.3.8"
       sources."aggregate-error-3.1.0"
-      sources."ajv-8.10.0"
+      sources."ajv-8.11.0"
       sources."ajv-formats-2.1.1"
       sources."ajv-keywords-5.1.0"
       sources."ansi-html-community-0.0.8"
@@ -135527,12 +135595,12 @@ in
           sources."safe-buffer-5.1.2"
         ];
       })
-      sources."html-entities-2.3.2"
+      sources."html-entities-2.3.3"
       sources."http-deceiver-1.2.7"
       sources."http-errors-1.8.1"
       sources."http-parser-js-0.5.6"
       sources."http-proxy-1.18.1"
-      sources."http-proxy-middleware-2.0.3"
+      sources."http-proxy-middleware-2.0.4"
       sources."human-signals-2.1.0"
       sources."iconv-lite-0.4.24"
       sources."ignore-5.2.0"
@@ -135564,20 +135632,20 @@ in
       sources."merge-stream-2.0.0"
       sources."merge2-1.4.1"
       sources."methods-1.1.2"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
-      sources."mkdirp-0.5.5"
+      sources."minimist-1.2.6"
+      sources."mkdirp-0.5.6"
       sources."ms-2.0.0"
       sources."multicast-dns-6.2.3"
       sources."multicast-dns-service-types-1.1.0"
       sources."negotiator-0.6.3"
-      sources."node-forge-1.2.1"
+      sources."node-forge-1.3.0"
       sources."normalize-path-3.0.0"
       sources."npm-run-path-4.0.1"
       sources."object-is-1.1.5"
@@ -135630,7 +135698,7 @@ in
       sources."safer-buffer-2.1.2"
       sources."schema-utils-4.0.0"
       sources."select-hose-2.0.0"
-      sources."selfsigned-2.0.0"
+      sources."selfsigned-2.0.1"
       (sources."send-0.17.2" // {
         dependencies = [
           sources."ms-2.1.3"
@@ -135652,13 +135720,13 @@ in
       sources."sockjs-0.3.24"
       (sources."spdy-4.0.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       (sources."spdy-transport-3.0.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -135710,8 +135778,8 @@ in
       sources."@nodelib/fs.scandir-2.1.5"
       sources."@nodelib/fs.stat-2.0.5"
       sources."@nodelib/fs.walk-1.2.8"
-      sources."@types/json-schema-7.0.9"
-      sources."ajv-8.10.0"
+      sources."@types/json-schema-7.0.11"
+      sources."ajv-8.11.0"
       sources."ajv-formats-2.1.1"
       sources."ajv-keywords-5.1.0"
       sources."array-union-3.0.1"
@@ -135733,7 +135801,7 @@ in
       sources."is-number-7.0.0"
       sources."json-schema-traverse-1.0.0"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
+      sources."micromatch-4.0.5"
       sources."normalize-path-3.0.0"
       sources."path-type-4.0.0"
       sources."picomatch-2.3.1"
@@ -135781,7 +135849,7 @@ in
       sources."@protobufjs/pool-1.1.0"
       sources."@protobufjs/utf8-1.1.0"
       sources."@types/long-4.0.1"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
       sources."@webtorrent/http-node-1.3.0"
       sources."addr-to-ip-port-1.5.4"
       sources."airplay-js-0.3.0"
@@ -135796,26 +135864,26 @@ in
       sources."bitfield-4.0.0"
       (sources."bittorrent-dht-10.0.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       (sources."bittorrent-lsd-1.1.1" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."bittorrent-peerid-1.3.4"
-      (sources."bittorrent-protocol-3.5.1" // {
+      (sources."bittorrent-protocol-3.5.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
-      (sources."bittorrent-tracker-9.18.4" // {
+      (sources."bittorrent-tracker-9.18.5" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."decompress-response-6.0.0"
           sources."mimic-response-3.1.0"
           sources."ms-2.1.2"
@@ -135837,7 +135905,7 @@ in
       sources."cache-chunk-store-3.2.2"
       (sources."castv2-0.1.10" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -135940,7 +136008,7 @@ in
       sources."lru-3.1.0"
       (sources."lt_donthave-1.0.1" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -135952,7 +136020,7 @@ in
       sources."mime-3.0.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-classic-0.5.3"
       sources."moment-2.29.1"
       sources."mp4-box-encoding-1.4.1"
@@ -135975,7 +136043,7 @@ in
       sources."once-1.4.0"
       sources."open-8.4.0"
       sources."package-json-versionify-1.0.4"
-      (sources."parse-torrent-9.1.4" // {
+      (sources."parse-torrent-9.1.5" // {
         dependencies = [
           sources."decompress-response-6.0.0"
           sources."mimic-response-3.1.0"
@@ -135996,7 +136064,7 @@ in
       sources."qap-3.3.1"
       sources."queue-microtask-1.2.3"
       sources."queue-tick-1.0.0"
-      sources."random-access-file-2.2.0"
+      sources."random-access-file-2.2.1"
       sources."random-access-storage-1.4.3"
       sources."random-iterate-1.0.1"
       sources."randombytes-2.1.0"
@@ -136007,7 +136075,7 @@ in
       sources."record-cache-1.2.0"
       (sources."render-media-4.1.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -136024,14 +136092,14 @@ in
       sources."simple-get-2.8.2"
       (sources."simple-peer-9.11.1" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."simple-sha1-3.1.0"
       (sources."simple-websocket-9.1.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -136054,9 +136122,9 @@ in
       sources."thunky-0.1.0"
       sources."timeout-refresh-1.0.3"
       sources."to-arraybuffer-1.0.1"
-      (sources."torrent-discovery-9.4.9" // {
+      (sources."torrent-discovery-9.4.10" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -136071,7 +136139,7 @@ in
       sources."url-join-4.0.1"
       (sources."ut_metadata-3.5.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -136081,9 +136149,9 @@ in
       sources."utp-native-2.5.3"
       sources."videostream-3.2.2"
       sources."vlc-command-1.2.0"
-      (sources."webtorrent-1.8.6" // {
+      (sources."webtorrent-1.8.10" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."decompress-response-6.0.0"
           sources."mimic-response-3.1.0"
           sources."ms-2.1.2"
@@ -136098,7 +136166,7 @@ in
       sources."xmlbuilder-11.0.1"
       sources."xmldom-0.1.31"
       sources."y18n-5.0.8"
-      sources."yargs-17.3.1"
+      sources."yargs-17.4.0"
       sources."yargs-parser-21.0.1"
     ];
     buildInputs = globalBuildInputs;
@@ -136159,10 +136227,10 @@ in
   yaml-language-server = nodeEnv.buildNodePackage {
     name = "yaml-language-server";
     packageName = "yaml-language-server";
-    version = "1.5.1";
+    version = "1.6.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/yaml-language-server/-/yaml-language-server-1.5.1.tgz";
-      sha512 = "rTrsKFF2G6vY9oInUoMWHuRjdQi/AAeWkt2H4N9TYKMiQPzEWnz91MufNkNwlXCA26JCDFStwqNjaYPUdI6SDw==";
+      url = "https://registry.npmjs.org/yaml-language-server/-/yaml-language-server-1.6.0.tgz";
+      sha512 = "4L8vgCuqRZgfjVnAPW8nKKj5dq4QBSc8LoceCaqtufVxHK+G6MVjI5aT9wHLO1/W07RXSyr0vYqSap7B1GFZ6w==";
     };
     dependencies = [
       sources."jsonc-parser-3.0.0"
@@ -136250,10 +136318,10 @@ in
   yarn = nodeEnv.buildNodePackage {
     name = "yarn";
     packageName = "yarn";
-    version = "1.22.17";
+    version = "1.22.18";
     src = fetchurl {
-      url = "https://registry.npmjs.org/yarn/-/yarn-1.22.17.tgz";
-      sha512 = "H0p241BXaH0UN9IeH//RT82tl5PfNraVpSpEoW+ET7lmopNC61eZ+A+IDvU8FM6Go5vx162SncDL8J1ZjRBriQ==";
+      url = "https://registry.npmjs.org/yarn/-/yarn-1.22.18.tgz";
+      sha512 = "oFffv6Jp2+BTUBItzx1Z0dpikTX+raRdqupfqzeMKnoh7WD6RuPAxcqDkMUy9vafJkrB0YaV708znpuMhEBKGQ==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -136274,7 +136342,7 @@ in
       sha512 = "0V5CpR62BY1EOevIxXq5BL84YJeIunEzRsFlqb00tc7D77I51/0bvgdGRZhEwhNI2rFxKZ1i77eoisT56gfMTQ==";
     };
     dependencies = [
-      sources."@babel/runtime-7.17.2"
+      sources."@babel/runtime-7.17.8"
       sources."@gar/promisify-1.1.3"
       sources."@isaacs/string-locale-compare-1.1.0"
       sources."@nodelib/fs.scandir-2.1.5"
@@ -136329,13 +136397,13 @@ in
       sources."abbrev-1.1.1"
       (sources."agent-base-6.0.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       (sources."agentkeepalive-4.2.1" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -136344,7 +136412,7 @@ in
       sources."ansi-0.3.1"
       sources."ansi-align-2.0.0"
       sources."ansi-escapes-3.2.0"
-      sources."ansi-regex-3.0.0"
+      sources."ansi-regex-3.0.1"
       sources."ansi-styles-3.2.1"
       sources."aproba-2.0.0"
       sources."are-we-there-yet-1.1.7"
@@ -136550,14 +136618,14 @@ in
       sources."http-cache-semantics-3.8.1"
       (sources."http-proxy-agent-4.0.1" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."http-signature-1.2.0"
       (sources."https-proxy-agent-5.0.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -136613,13 +136681,19 @@ in
       sources."is-utf8-0.2.1"
       sources."is-wsl-1.1.0"
       sources."isarray-1.0.0"
-      sources."isbinaryfile-4.0.8"
+      sources."isbinaryfile-4.0.10"
       sources."isexe-2.0.0"
       sources."isstream-0.1.2"
       sources."isurl-1.0.0"
-      (sources."jake-10.8.2" // {
+      (sources."jake-10.8.4" // {
         dependencies = [
+          sources."ansi-styles-4.3.0"
           sources."async-0.9.2"
+          sources."chalk-4.1.2"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."has-flag-4.0.0"
+          sources."supports-color-7.2.0"
         ];
       })
       sources."js-yaml-3.14.1"
@@ -136693,13 +136767,13 @@ in
       })
       sources."merge-stream-2.0.0"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."micromatch-4.0.5"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."mimic-fn-2.1.0"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."minipass-3.1.6"
       sources."minipass-collect-1.0.2"
       sources."minipass-fetch-1.4.1"
@@ -136708,7 +136782,7 @@ in
       sources."minipass-pipeline-1.2.4"
       sources."minipass-sized-1.0.3"
       sources."minizlib-2.1.2"
-      sources."mkdirp-0.5.5"
+      sources."mkdirp-0.5.6"
       (sources."mkdirp-infer-owner-2.0.0" // {
         dependencies = [
           sources."mkdirp-1.0.4"
@@ -136770,17 +136844,25 @@ in
       })
       (sources."npm-registry-fetch-12.0.2" // {
         dependencies = [
+          sources."@npmcli/fs-2.1.0"
           sources."@tootallnate/once-2.0.0"
-          sources."debug-4.3.3"
+          sources."cacache-16.0.3"
+          sources."debug-4.3.4"
           sources."http-cache-semantics-4.1.0"
           sources."http-proxy-agent-5.0.0"
-          sources."lru-cache-7.4.4"
-          (sources."make-fetch-happen-10.0.5" // {
+          sources."lru-cache-7.7.1"
+          (sources."make-fetch-happen-10.1.0" // {
             dependencies = [
-              sources."minipass-fetch-2.0.3"
+              sources."minipass-fetch-2.1.0"
             ];
           })
+          sources."mkdirp-1.0.4"
           sources."ms-2.1.2"
+          (sources."semver-7.3.5" // {
+            dependencies = [
+              sources."lru-cache-6.0.0"
+            ];
+          })
         ];
       })
       sources."npm-run-path-2.0.2"
@@ -136833,7 +136915,7 @@ in
       sources."p-timeout-2.0.1"
       (sources."p-transform-1.3.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -136975,7 +137057,7 @@ in
       sources."socks-2.6.2"
       (sources."socks-proxy-agent-6.1.1" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -137011,7 +137093,7 @@ in
       })
       (sources."strip-ansi-5.2.0" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-4.1.1"
         ];
       })
       sources."strip-bom-2.0.0"
@@ -137160,7 +137242,7 @@ in
           sources."color-convert-2.0.1"
           sources."color-name-1.1.4"
           sources."cross-spawn-7.0.3"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."escape-string-regexp-4.0.0"
           sources."execa-5.1.1"
           (sources."figures-3.2.0" // {
@@ -137172,7 +137254,7 @@ in
           sources."gauge-3.0.2"
           sources."get-stream-6.0.1"
           sources."has-flag-4.0.0"
-          sources."inquirer-8.2.1"
+          sources."inquirer-8.2.2"
           sources."is-fullwidth-code-point-3.0.0"
           sources."is-stream-2.0.1"
           sources."locate-path-6.0.0"
@@ -137227,10 +137309,10 @@ in
   zx = nodeEnv.buildNodePackage {
     name = "zx";
     packageName = "zx";
-    version = "5.2.0";
+    version = "6.0.7";
     src = fetchurl {
-      url = "https://registry.npmjs.org/zx/-/zx-5.2.0.tgz";
-      sha512 = "EzaYf8TGosgEGli8CpcDHnvZck/FRv3vEjIzYnhZLib8H+jKc3p4CG2epTayDqCOYQ2v0xsv2DoQ1Hn2OZ0o/g==";
+      url = "https://registry.npmjs.org/zx/-/zx-6.0.7.tgz";
+      sha512 = "aJTTKN4m9m8wM02yQ4jMOXMp53Ni+r+VDAs0D+bo9l9x9nCMhOocNWeTjoaancHkb7LpNb4oLILp58HzTy0GpQ==";
     };
     dependencies = [
       sources."@nodelib/fs.scandir-2.1.5"
@@ -137238,7 +137320,8 @@ in
       sources."@nodelib/fs.walk-1.2.8"
       sources."@types/fs-extra-9.0.13"
       sources."@types/minimist-1.2.2"
-      sources."@types/node-17.0.21"
+      sources."@types/node-17.0.23"
+      sources."@types/which-2.0.1"
       sources."braces-3.0.2"
       sources."chalk-5.0.1"
       sources."data-uri-to-buffer-4.0.0"
@@ -137247,7 +137330,7 @@ in
       sources."event-stream-3.3.4"
       sources."fast-glob-3.2.11"
       sources."fastq-1.13.0"
-      sources."fetch-blob-3.1.4"
+      sources."fetch-blob-3.1.5"
       sources."fill-range-7.0.1"
       sources."formdata-polyfill-4.0.10"
       sources."from-0.1.7"
@@ -137263,8 +137346,8 @@ in
       sources."jsonfile-6.1.0"
       sources."map-stream-0.1.0"
       sources."merge2-1.4.1"
-      sources."micromatch-4.0.4"
-      sources."minimist-1.2.5"
+      sources."micromatch-4.0.5"
+      sources."minimist-1.2.6"
       sources."node-domexception-1.0.0"
       sources."node-fetch-3.2.3"
       sources."path-type-4.0.0"
diff --git a/nixpkgs/pkgs/development/ocaml-modules/asn1-combinators/default.nix b/nixpkgs/pkgs/development/ocaml-modules/asn1-combinators/default.nix
index 289f6a6cba4b..3c8be666b66a 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/asn1-combinators/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/asn1-combinators/default.nix
@@ -6,13 +6,13 @@ buildDunePackage rec {
   minimumOCamlVersion = "4.05";
 
   pname = "asn1-combinators";
-  version = "0.2.5";
+  version = "0.2.6";
 
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/mirleft/ocaml-asn1-combinators/releases/download/v${version}/asn1-combinators-v${version}.tbz";
-    sha256 = "1pbcdwm12hnfpd1jv2b7cjfkj5r7h61xp2gr8dysb8waa455kwln";
+    sha256 = "sha256-ASreDYhp72IQY3UsHPjqAm9rxwL+0Q35r1ZojikbGpE=";
   };
 
   propagatedBuildInputs = [ cstruct zarith bigarray-compat stdlib-shims ptime ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/batteries/default.nix b/nixpkgs/pkgs/development/ocaml-modules/batteries/default.nix
index 184f10a52be4..865518ec29c7 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/batteries/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/batteries/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, ocaml, findlib, ocamlbuild, qtest, num, ounit
+{ stdenv, lib, fetchFromGitHub, ocaml, findlib, ocamlbuild, qtest, qcheck, num, ounit
 , doCheck ? lib.versionAtLeast ocaml.version "4.08" && !stdenv.isAarch64
 }:
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ ocaml findlib ocamlbuild ];
-  checkInputs = [ qtest ounit ];
+  checkInputs = [ qtest ounit qcheck ];
   propagatedBuildInputs = [ num ];
 
   strictDeps = !doCheck;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/bigarray-compat/default.nix b/nixpkgs/pkgs/development/ocaml-modules/bigarray-compat/default.nix
index fd690cfdd5b3..be343c444171 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/bigarray-compat/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/bigarray-compat/default.nix
@@ -2,7 +2,7 @@
 
 buildDunePackage rec {
   pname = "bigarray-compat";
-  version = "1.0.0";
+  version = "1.1.0";
 
   useDune2 = true;
 
@@ -12,7 +12,7 @@ buildDunePackage rec {
     owner = "mirage";
     repo = pname;
     rev = "v${version}";
-    sha256 = "06j1dwlpisxshdd0nab4n4x266gg1s1n8na16lpgw3fvcznwnimz";
+    sha256 = "sha256-2JVopggK2JuXWEPu8qn12F1jQIJ9OV89XY1rHtUqLkI=";
   };
 
   meta = {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/biniou/1.0.nix b/nixpkgs/pkgs/development/ocaml-modules/biniou/1.0.nix
index 5a2e2ea9a7fa..ec81e5b8db91 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/biniou/1.0.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/biniou/1.0.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   makeFlags = [ "PREFIX=$(out)" ];
 
   preBuild = ''
-    mkdir $out/bin
+    mkdir -p $out/bin
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/bisect_ppx/default.nix b/nixpkgs/pkgs/development/ocaml-modules/bisect_ppx/default.nix
index ddeda86e9bf7..48b9684902ce 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/bisect_ppx/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/bisect_ppx/default.nix
@@ -2,13 +2,13 @@
 
 buildDunePackage rec {
   pname = "bisect_ppx";
-  version = "2.6.1";
+  version = "2.8.1";
 
   src = fetchFromGitHub {
     owner = "aantron";
     repo = "bisect_ppx";
     rev = version;
-    sha256 = "sha256-YeLDlH3mUbVEY4OmzlrvSwVUav3uMtSsTFlOsQKnz84=";
+    sha256 = "sha256-pOeeSxzUF1jXQjA71atSZALdgQ2NB9qpKo5iaDnPwhQ=";
   };
 
   minimumOCamlVersion = "4.08";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/bolt/default.nix b/nixpkgs/pkgs/development/ocaml-modules/bolt/default.nix
deleted file mode 100644
index 46e3b6f16cce..000000000000
--- a/nixpkgs/pkgs/development/ocaml-modules/bolt/default.nix
+++ /dev/null
@@ -1,69 +0,0 @@
-{ lib, stdenv, fetchurl, fetchpatch, ocaml, findlib, ocamlbuild, which, camlp4 }:
-
-let inherit (lib) getVersion versionAtLeast; in
-
-assert versionAtLeast (getVersion ocaml) "4.00.0";
-assert versionAtLeast (getVersion findlib) "1.3.3";
-
-if versionAtLeast ocaml.version "4.06"
-then throw "bolt is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-  pname = "bolt";
-  version = "1.4";
-
-  src = fetchurl {
-    url = "https://forge.ocamlcore.org/frs/download.php/1043/bolt-${version}.tar.gz";
-    sha256 = "1c807wrpxra9sbb34lajhimwra28ldxv04m570567lh2b04n38zy";
-  };
-
-  nativeBuildInputs = [ ocaml findlib ocamlbuild which camlp4 ];
-
-  strictDeps = true;
-
-  patches = [
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/ocaml/opam-repository/master/packages/bolt/bolt.1.4/files/opam.patch";
-      sha256 = "08cl39r98w312sw23cskd5wian6zg20isn9ki41hnbcgkazhi7pb";
-    })
-  ];
-
-  postPatch = ''
-    patch myocamlbuild.ml <<EOF
-70,74c70
-<         let camlp4of =
-<           try
-<             let path_bin = Filename.concat (Sys.getenv "PATH_OCAML_PREFIX") "bin" in
-<             Filename.concat path_bin "camlp4of"
-<           with _ -> "camlp4of" in
----
->         let camlp4of = "camlp4of" in
-EOF
-  '';
-
-  # The custom `configure` script does not expect the --prefix
-  # option. Installation is handled by ocamlfind.
-  dontAddPrefix = true;
-  dontAddStaticConfigureFlags = true;
-  configurePlatforms = [ ];
-
-  createFindlibDestdir = true;
-
-  buildFlags = [ "all" ];
-
-  doCheck = true;
-  checkTarget = "tests";
-
-  meta = with lib; {
-    homepage = "http://bolt.x9c.fr";
-    description = "A logging tool for the OCaml language";
-    longDescription = ''
-      Bolt is a logging tool for the OCaml language. It is inspired by and
-      modeled after the famous log4j logging framework for Java.
-    '';
-    license = licenses.lgpl3;
-    platforms = ocaml.meta.platforms or [ ];
-    maintainers = [ maintainers.jirkamarsik ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/bos/default.nix b/nixpkgs/pkgs/development/ocaml-modules/bos/default.nix
index 07d4d4864d82..9f7ce539e18a 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/bos/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/bos/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ocaml${ocaml.version}-bos";
-  version = "0.2.0";
+  version = "0.2.1";
 
   src = fetchurl {
     url = "https://erratique.ch/software/bos/releases/bos-${version}.tbz";
-    sha256 = "1s10iqx8rgnxr5n93lf4blwirjf8nlm272yg5sipr7lsr35v49wc";
+    sha256 = "sha256-2NYueGsQ1pfgRXIFqO7eqifrzJDxhV8Y3xkMrC49jzc=";
   };
 
   nativeBuildInputs = [ ocaml findlib ocamlbuild topkg ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ca-certs/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ca-certs/default.nix
index ce8993b465eb..0805edbafe84 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ca-certs/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ca-certs/default.nix
@@ -1,28 +1,29 @@
 { lib, buildDunePackage, fetchurl
-, bos, fpath, rresult, ptime, mirage-crypto, x509, astring, logs
-, cacert, alcotest
+, bos, fpath, ptime, mirage-crypto, x509, astring, logs
+, cacert, alcotest, fmt
 }:
 
 buildDunePackage rec {
   pname = "ca-certs";
-  version = "0.2.1";
+  version = "0.2.2";
 
   minimumOCamlVersion = "4.07";
 
   src = fetchurl {
     url = "https://github.com/mirage/ca-certs/releases/download/v${version}/ca-certs-v${version}.tbz";
-    sha256 = "d43109496a5129feff967d557c556af96f8b10456896a405c43b7cf0c35d0af3";
+    sha256 = "sha256-Tx53zBJemZh3ODh/8izahxDoJvXvNFLyAA8LMM1mhlI=";
   };
 
   useDune2 = true;
 
-  propagatedBuildInputs = [ bos fpath rresult ptime mirage-crypto x509 astring logs ];
+  propagatedBuildInputs = [ bos fpath ptime mirage-crypto x509 astring logs ];
 
   # Assumes nss-cacert < 3.74 https://github.com/mirage/ca-certs/issues/21
   doCheck = false;
   checkInputs = [
     cacert    # for /etc/ssl/certs/ca-bundle.crt
     alcotest
+    fmt
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/comparelib/default.nix b/nixpkgs/pkgs/development/ocaml-modules/comparelib/default.nix
deleted file mode 100644
index 1da631d683cc..000000000000
--- a/nixpkgs/pkgs/development/ocaml-modules/comparelib/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib, buildOcaml, fetchFromGitHub, type_conv, camlp4 }:
-
-buildOcaml rec {
-  pname = "comparelib";
-  version = "113.00.00";
-
-  minimumSupportedOcamlVersion = "4.00";
-
-  src = fetchFromGitHub {
-    owner = "janestreet";
-    repo = "comparelib";
-    rev = version;
-    sha256 = "sha256-gtJvXAUxiIt/L9bCzS+8wHcCQ+QpBubwcjDcyN0K2MA=";
-  };
-
-  buildInputs = [ camlp4 ];
-  propagatedBuildInputs = [ type_conv ];
-
-  meta = with lib; {
-    homepage = "https://github.com/janestreet/comparelib";
-    description = "Syntax extension for deriving \"compare\" functions automatically";
-    license = licenses.asl20;
-    maintainers = [ maintainers.ericbmerritt ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/conduit/default.nix b/nixpkgs/pkgs/development/ocaml-modules/conduit/default.nix
index 1dc28b2b5f79..6261ba2801b0 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/conduit/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/conduit/default.nix
@@ -15,8 +15,7 @@ buildDunePackage rec {
     sha256 = "2a37ffaa352a1e145ef3d80ac28661213c69a741b238623e59f29e3d5a12c537";
   };
 
-  buildInputs = [ ppx_sexp_conv ];
-  propagatedBuildInputs = [ astring ipaddr ipaddr-sexp sexplib uri logs ];
+  propagatedBuildInputs = [ astring ipaddr ipaddr-sexp sexplib uri logs ppx_sexp_conv ];
 
   meta = {
     description = "A network connection establishment library";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/csv/1.5.nix b/nixpkgs/pkgs/development/ocaml-modules/csv/1.5.nix
index cd298fb39a9f..ef4ae4484d83 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/csv/1.5.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/csv/1.5.nix
@@ -22,13 +22,17 @@ stdenv.mkDerivation rec {
   doCheck = true;
   checkPhase = "ocaml setup.ml -test";
 
-  installPhase = "ocaml setup.ml -install";
+  installPhase = ''
+    runHook preInstall
+    ocaml setup.ml -install
+    runHook postInstall
+  '';
 
   meta = with lib; {
     description = "A pure OCaml library to read and write CSV files";
     homepage = "https://github.com/Chris00/ocaml-csv";
     license = licenses.lgpl21;
     maintainers = [ maintainers.vbgl ];
-    platforms = ocaml.meta.platforms or [ ];
+    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/directories/default.nix b/nixpkgs/pkgs/development/ocaml-modules/directories/default.nix
index eae11953113b..509d5b2a1e4a 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/directories/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/directories/default.nix
@@ -2,7 +2,7 @@
 
 buildDunePackage rec {
   pname = "directories";
-  version = "0.2";
+  version = "0.5";
   useDune2 = true;
 
   minimumOCamlVersion = "4.07";
@@ -11,7 +11,7 @@ buildDunePackage rec {
     owner = "ocamlpro";
     repo = pname;
     rev = version;
-    sha256 = "0s7ginh0g0fhw8xf9v58cx99a8q9jqsf4i0p134m5qzf84qpjwff";
+    sha256 = "sha256-31CGhmmfOORJ1ewgp+IU+p1+f2kfX/W+lxK7EGU62vc=";
   };
 
   meta = {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/dune-action-plugin/default.nix b/nixpkgs/pkgs/development/ocaml-modules/dune-action-plugin/default.nix
index 65c55da6e3b3..c39239525d18 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/dune-action-plugin/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/dune-action-plugin/default.nix
@@ -1,17 +1,17 @@
-{ lib, buildDunePackage, dune_2, dune-glob, dune-private-libs }:
+{ lib, buildDunePackage, dune_3, dune-glob, dune-private-libs }:
 
 buildDunePackage rec {
   pname = "dune-action-plugin";
-  inherit (dune_2) src version patches;
+  inherit (dune_3) src version;
 
-  useDune2 = true;
+  duneVersion = "3";
 
   dontAddPrefix = true;
 
   propagatedBuildInputs = [ dune-glob dune-private-libs ];
 
   meta = with lib; {
-    inherit (dune_2.meta) homepage;
+    inherit (dune_3.meta) homepage;
     description = "API for writing dynamic Dune actions";
     maintainers = [ maintainers.marsam ];
     license = licenses.mit;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/dune-glob/default.nix b/nixpkgs/pkgs/development/ocaml-modules/dune-glob/default.nix
index c7c6f9be4ee0..04b5e7623793 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/dune-glob/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/dune-glob/default.nix
@@ -1,17 +1,17 @@
-{ lib, buildDunePackage, dune_2, dune-private-libs }:
+{ lib, buildDunePackage, dune_3, dune-private-libs }:
 
 buildDunePackage rec {
   pname = "dune-glob";
-  inherit (dune_2) src version patches;
+  inherit (dune_3) src version;
 
-  useDune2 = true;
+  duneVersion = "3";
 
   dontAddPrefix = true;
 
   propagatedBuildInputs = [ dune-private-libs ];
 
   meta = with lib; {
-    inherit (dune_2.meta) homepage;
+    inherit (dune_3.meta) homepage;
     description = "Glob string matching language supported by dune";
     maintainers = [ maintainers.marsam ];
     license = licenses.mit;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/dune-private-libs/default.nix b/nixpkgs/pkgs/development/ocaml-modules/dune-private-libs/default.nix
index 8a635efa3a59..9b45064d1984 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/dune-private-libs/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/dune-private-libs/default.nix
@@ -1,16 +1,18 @@
-{ lib, buildDunePackage, dune_2 }:
+{ lib, buildDunePackage, dune_3, stdune }:
 
 buildDunePackage rec {
   pname = "dune-private-libs";
 
-  useDune2 = true;
+  duneVersion = "3";
 
-  inherit (dune_2) src version patches;
+  inherit (dune_3) src version;
 
-  minimumOCamlVersion = "4.08";
+  minimalOCamlVersion = "4.08";
 
   dontAddPrefix = true;
 
+  propagatedBuildInputs = [ stdune ];
+
   meta = with lib; {
     description = "Private libraries of Dune";
     maintainers = [ maintainers.marsam ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/dune-site/default.nix b/nixpkgs/pkgs/development/ocaml-modules/dune-site/default.nix
index 9462393d2697..8f51e182970f 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/dune-site/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/dune-site/default.nix
@@ -1,10 +1,10 @@
-{ lib, buildDunePackage, dune_2, dune-private-libs }:
+{ lib, buildDunePackage, dune_3, dune-private-libs }:
 
 buildDunePackage rec {
   pname = "dune-site";
-  inherit (dune_2) src version patches;
+  inherit (dune_3) src version;
 
-  useDune2 = true;
+  duneVersion = "3";
 
   dontAddPrefix = true;
 
@@ -12,7 +12,7 @@ buildDunePackage rec {
 
   meta = with lib; {
     description = "A library for embedding location information inside executable and libraries";
-    inherit (dune_2.meta) homepage;
+    inherit (dune_3.meta) homepage;
     maintainers = with lib.maintainers; [ ];
     license = licenses.mit;
   };
diff --git a/nixpkgs/pkgs/development/ocaml-modules/duration/default.nix b/nixpkgs/pkgs/development/ocaml-modules/duration/default.nix
index a547a919c31d..ccddecf28988 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/duration/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/duration/default.nix
@@ -2,13 +2,13 @@
 
 buildDunePackage rec {
   pname = "duration";
-  version = "0.1.3";
+  version = "0.2.0";
 
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/hannesm/duration/releases/download/${version}/duration-${version}.tbz";
-    sha256 = "0m9r0ayhpl98g9vdxrbjdcllns274jilic5v8xj1x7dphw21p95h";
+    sha256 = "sha256-rRT7daWm9z//fvFyEXiSXuVVzw8jsj46sykYS8DBzmk=";
   };
 
   doCheck = lib.versionAtLeast ocaml.version "4.05";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/dyn/default.nix b/nixpkgs/pkgs/development/ocaml-modules/dyn/default.nix
new file mode 100644
index 000000000000..81b9e0d745fb
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/dyn/default.nix
@@ -0,0 +1,16 @@
+{ lib, buildDunePackage, dune_3, ordering }:
+
+buildDunePackage {
+  pname = "dyn";
+  inherit (dune_3) version src;
+  duneVersion = "3";
+
+  dontAddPrefix = true;
+
+  propagatedBuildInputs = [ ordering ];
+
+  meta = dune_3.meta // {
+    description = "Dynamic type";
+  };
+}
+
diff --git a/nixpkgs/pkgs/development/ocaml-modules/elina/default.nix b/nixpkgs/pkgs/development/ocaml-modules/elina/default.nix
index df7f140e5458..ec4199cc06eb 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/elina/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/elina/default.nix
@@ -8,9 +8,9 @@ stdenv.mkDerivation rec {
     sha256 = "1nymykskq1yx87y4xl6hl9i4q6kv0qaq25rniqgl1bfn883p1ysc";
   };
 
-  nativeBuildInputs = [ perl ocaml findlib ];
+  nativeBuildInputs = [ perl ocaml findlib camlidl ];
 
-  propagatedBuildInputs = [ apron camlidl gmp mpfr ];
+  propagatedBuildInputs = [ apron gmp mpfr ];
 
   strictDeps = true;
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/enumerate/default.nix b/nixpkgs/pkgs/development/ocaml-modules/enumerate/default.nix
deleted file mode 100644
index 9bedc4215108..000000000000
--- a/nixpkgs/pkgs/development/ocaml-modules/enumerate/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ stdenv, lib, fetchurl, ocaml, findlib, ocamlbuild, type_conv, camlp4 }:
-
-assert lib.versionAtLeast (lib.getVersion ocaml) "4.00";
-
-if lib.versionAtLeast ocaml.version "4.06"
-then throw "enumerate-111.08.00 is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-  pname = "ocaml-enumerate";
-  version = "111.08.00";
-
-  src = fetchurl {
-    url = "https://ocaml.janestreet.com/ocaml-core/${lib.versions.majorMinor version}.00/individual/enumerate-${version}.tar.gz";
-    sha256 = "0b6mx5p01lcpimvak4wx6aj2119707wsfzd83rwgb91bhpgzh156";
-  };
-
-  nativeBuildInputs = [ ocaml findlib ocamlbuild ];
-  propagatedBuildInputs = [ type_conv camlp4 ];
-
-  strictDeps = true;
-
-  createFindlibDestdir = true;
-
-  meta = {
-    homepage = "https://ocaml.janestreet.com/";
-    description = "Quotation expanders for enumerating finite types";
-    license = lib.licenses.asl20;
-    platforms = ocaml.meta.platforms or [ ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/eqaf/default.nix b/nixpkgs/pkgs/development/ocaml-modules/eqaf/default.nix
index a3f64cb7bd95..ba2274e9c326 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/eqaf/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/eqaf/default.nix
@@ -3,12 +3,12 @@
 buildDunePackage rec {
   minimumOCamlVersion = "4.03";
   pname = "eqaf";
-  version = "0.7";
+  version = "0.8";
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/mirage/eqaf/releases/download/v${version}/eqaf-v${version}.tbz";
-    sha256 = "1q09pwhs121vpficl2af1yzs4y7dd9bc1lcxbqyfc4x4m6p6drhh";
+    sha256 = "sha256-EUWhYBB0N9eUPgLkht9r0jPTk37BpZfX+jntuUcc+HU=";
   };
 
   propagatedBuildInputs = [ cstruct bigarray-compat ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/facile/default.nix b/nixpkgs/pkgs/development/ocaml-modules/facile/default.nix
index df228603e9f4..3eab7d3417fc 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/facile/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/facile/default.nix
@@ -1,11 +1,9 @@
-{ lib, fetchurl, buildDunePackage }:
+{ lib, fetchurl, buildDunePackage, ocaml }:
 
 buildDunePackage rec {
   pname = "facile";
   version = "1.1.4";
 
-  useDune2 = false;
-
   src = fetchurl {
     url = "https://github.com/Emmanuel-PLF/facile/releases/download/${version}/facile-${version}.tbz";
     sha256 = "0jqrwmn6fr2vj2rrbllwxq4cmxykv7zh0y4vnngx29f5084a04jp";
@@ -13,6 +11,9 @@ buildDunePackage rec {
 
   doCheck = true;
 
+  useDune2 = lib.versionAtLeast ocaml.version "4.12";
+  postPatch = lib.optionalString useDune2 "dune upgrade";
+
   meta = {
     homepage = "http://opti.recherche.enac.fr/facile/";
     license = lib.licenses.lgpl21Plus;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/fiat-p256/default.nix b/nixpkgs/pkgs/development/ocaml-modules/fiat-p256/default.nix
deleted file mode 100644
index c979fe682d3e..000000000000
--- a/nixpkgs/pkgs/development/ocaml-modules/fiat-p256/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib, buildDunePackage, fetchurl, alcotest, asn1-combinators, benchmark
-, bigarray-compat, cstruct, eqaf, hex, ppx_deriving_yojson, rresult
-, stdlib-shims, yojson, dune-configurator }:
-
-buildDunePackage rec {
-  pname = "fiat-p256";
-  version = "0.2.1";
-  useDune2 = true;
-
-  src = fetchurl {
-    url = "https://github.com/mirage/fiat/releases/download/v${version}/${pname}-v${version}.tbz";
-    sha256 = "0086h9qkvnqfm8acrxqbki54z619nj73x7f0d01v5vg2naznx7w9";
-  };
-
-  # Make tests compatible with alcotest 1.4.0
-  postPatch = ''
-    substituteInPlace test/wycheproof/test.ml --replace \
-      'Printf.ksprintf Alcotest.fail' 'Printf.ksprintf (fun s -> Alcotest.fail s)'
-  '';
-
-  buildInputs = [ dune-configurator ];
-  propagatedBuildInputs = [ bigarray-compat cstruct eqaf hex ];
-  checkInputs = [ alcotest asn1-combinators benchmark
-                  ppx_deriving_yojson rresult stdlib-shims yojson ];
-  doCheck = true;
-
-  meta = with lib; {
-    description = "Primitives for Elliptic Curve Cryptography taken from Fiat";
-    homepage = "https://github.com/mirage/fiat";
-    license = licenses.mit;
-    maintainers = with maintainers; [ sternenseemann ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/gapi-ocaml/default.nix b/nixpkgs/pkgs/development/ocaml-modules/gapi-ocaml/default.nix
index 348a70a0da9f..c417d94e2947 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/gapi-ocaml/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/gapi-ocaml/default.nix
@@ -5,7 +5,7 @@
 
 buildDunePackage rec {
   pname = "gapi-ocaml";
-  version = "0.4.1";
+  version = "0.4.2";
 
   useDune2 = true;
 
@@ -15,7 +15,7 @@ buildDunePackage rec {
     owner = "astrada";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0riax23grjnq9pczmp1yv02ji0svvs2kbiqskj6f6yjviamnpa31";
+    sha256 = "sha256-imicHOlNjPHHW/lcWRJmURafYZFe/6J3efKPJcel8J8=";
   };
 
   propagatedBuildInputs = [ cryptokit ocamlnet ocurl yojson ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/gmetadom/default.nix b/nixpkgs/pkgs/development/ocaml-modules/gmetadom/default.nix
index 50be2adcb384..fe4f85a0024f 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/gmetadom/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/gmetadom/default.nix
@@ -22,8 +22,8 @@ stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [ pkg-config ocaml findlib ];
-  buildInputs = [ gdome2 libxslt];
-  propagatedBuildInputs = [gdome2];
+  buildInputs = [ libxslt ];
+  propagatedBuildInputs = [ gdome2 ];
 
   strictDeps = true;
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/hack_parallel/default.nix b/nixpkgs/pkgs/development/ocaml-modules/hack_parallel/default.nix
index f9bc67772125..122ee2149f3a 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/hack_parallel/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/hack_parallel/default.nix
@@ -15,7 +15,7 @@ buildDunePackage rec {
 
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs = [ core core_kernel sqlite ];
+  propagatedBuildInputs = [ core core_kernel sqlite ];
 
   meta = {
     description =
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ipaddr/cstruct.nix b/nixpkgs/pkgs/development/ocaml-modules/ipaddr/cstruct.nix
index d1386230452c..c2621584f34f 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ipaddr/cstruct.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ipaddr/cstruct.nix
@@ -5,7 +5,7 @@
 buildDunePackage rec {
   pname = "ipaddr-cstruct";
 
-  inherit (ipaddr) version src useDune2 minimumOCamlVersion;
+  inherit (ipaddr) version src;
 
   propagatedBuildInputs = [ ipaddr cstruct ];
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ipaddr/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ipaddr/default.nix
index 3090066c2f4e..c4eefb637fb5 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ipaddr/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ipaddr/default.nix
@@ -6,7 +6,7 @@
 buildDunePackage rec {
   pname = "ipaddr";
 
-  inherit (macaddr) version src useDune2 minimumOCamlVersion;
+  inherit (macaddr) version src;
 
   propagatedBuildInputs = [ macaddr domain-name stdlib-shims ];
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ipaddr/sexp.nix b/nixpkgs/pkgs/development/ocaml-modules/ipaddr/sexp.nix
index 1ede3c064ada..373b5a87e495 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ipaddr/sexp.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ipaddr/sexp.nix
@@ -5,7 +5,7 @@
 buildDunePackage rec {
   pname = "ipaddr-sexp";
 
-  inherit (ipaddr) version src useDune2 minimumOCamlVersion;
+  inherit (ipaddr) version src;
 
   propagatedBuildInputs = [ ipaddr ];
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/iter/default.nix b/nixpkgs/pkgs/development/ocaml-modules/iter/default.nix
index 4fa7e42c5d51..0154029b5504 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/iter/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/iter/default.nix
@@ -4,7 +4,7 @@
 
 buildDunePackage rec {
   pname = "iter";
-  version = "1.3";
+  version = "1.4";
 
   useDune2 = true;
 
@@ -12,7 +12,7 @@ buildDunePackage rec {
     owner = "c-cube";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256:0xgkplpbi41sw0yv1wfd12cfbybls6cal8qxddmd9x8khgk5s3vx";
+    sha256 = "sha256-Kk92GM7IVXOSVBkeN6wj67Q3UGCyuOOVi2umpn1AZTo=";
   };
 
   buildInputs = [ dune-configurator ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix b/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix
index 2f9aeea1d628..800b1c1e531a 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix
@@ -241,6 +241,13 @@ with self;
     doCheck = false; # we don't have quickcheck_deprecated
   };
 
+  core_unix = janePackage {
+    pname = "core_unix";
+    hash = "0irfmpx6iksxk2r8mdizjn75h71qh4p2f1s9x2ggckzqj9y904ck";
+    meta.description = "Unix-specific portions of Core";
+    propagatedBuildInputs = [ core ];
+  };
+
   csvfields = janePackage {
     pname = "csvfields";
     hash = "09jmz6y6nwd96dcx6g8ydicxssi72v1ks276phbc9n19wwg9hkaz";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/jingoo/default.nix b/nixpkgs/pkgs/development/ocaml-modules/jingoo/default.nix
index cc2c65009ff3..36aa09455cec 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/jingoo/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/jingoo/default.nix
@@ -3,7 +3,7 @@
 
 buildDunePackage rec {
   pname = "jingoo";
-  version = "1.4.2";
+  version = "1.4.4";
 
   useDune2 = true;
 
@@ -13,7 +13,7 @@ buildDunePackage rec {
     owner = "tategakibunko";
     repo = "jingoo";
     rev = "v${version}";
-    sha256 = "0q947aik4i4z5wjllhwlkxh60qczwgra21yyrrzwhi9y5bnf8346";
+    sha256 = "sha256-qIw69OE7wYyZYKnIc9QrmF8MzY5Fg5pBFyIpexmaYxA=";
   };
 
   buildInputs = [ menhir ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/lwt-watcher/default.nix b/nixpkgs/pkgs/development/ocaml-modules/lwt-watcher/default.nix
index 23caa894736a..db94ce3d62d1 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/lwt-watcher/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/lwt-watcher/default.nix
@@ -6,12 +6,12 @@
 
 buildDunePackage rec {
   pname = "lwt-watcher";
-  version = "0.1";
+  version = "0.2";
   src = fetchFromGitLab {
     owner = "nomadic-labs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0kaf7py02i0dn9rvrbzxh4ljfg059wc8xvm093m9wy7lsa68rax9";
+    sha256 = "sha256-35Z73bSzEEgTabNH2cD9lRdDczsyIMZR2ktyKx4aN9k=";
   };
 
   useDune2 = true;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/macaddr/cstruct.nix b/nixpkgs/pkgs/development/ocaml-modules/macaddr/cstruct.nix
index 143230408920..db543c0574e1 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/macaddr/cstruct.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/macaddr/cstruct.nix
@@ -5,9 +5,7 @@
 buildDunePackage {
   pname = "macaddr-cstruct";
 
-  inherit (macaddr) version src minimumOCamlVersion;
-
-  useDune2 = true;
+  inherit (macaddr) version src;
 
   propagatedBuildInputs = [ macaddr cstruct ];
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/macaddr/default.nix b/nixpkgs/pkgs/development/ocaml-modules/macaddr/default.nix
index f81529ed3a2b..7eb74ff064d0 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/macaddr/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/macaddr/default.nix
@@ -4,15 +4,13 @@
 
 buildDunePackage rec {
   pname = "macaddr";
-  version = "5.2.0";
+  version = "5.3.0";
 
-  useDune2 = true;
-
-  minimumOCamlVersion = "4.04";
+  minimalOCamlVersion = "4.04";
 
   src = fetchurl {
-    url = "https://github.com/mirage/ocaml-ipaddr/releases/download/v${version}/ipaddr-v${version}.tbz";
-    sha256 = "f98d237cc1f783a0ba7dff0c6c69b5f519fec056950e3e3e7c15e5511ee5b7ec";
+    url = "https://github.com/mirage/ocaml-ipaddr/releases/download/v${version}/ipaddr-${version}.tbz";
+    sha256 = "0mdp38mkvk2f5h2q7nb9fc70a8hyssblnl7kam0d8r5lckgrx5rn";
   };
 
   checkInputs = [ ppx_sexp_conv ounit ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/macaddr/sexp.nix b/nixpkgs/pkgs/development/ocaml-modules/macaddr/sexp.nix
index 35cc7c6b4401..1f03c1326a53 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/macaddr/sexp.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/macaddr/sexp.nix
@@ -5,9 +5,7 @@
 buildDunePackage {
   pname = "macaddr-sexp";
 
-  inherit (macaddr) version src minimumOCamlVersion;
-
-  useDune2 = true;
+  inherit (macaddr) version src;
 
   propagatedBuildInputs = [ ppx_sexp_conv ];
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/magic-mime/default.nix b/nixpkgs/pkgs/development/ocaml-modules/magic-mime/default.nix
index 15628bcf26c1..a48260ed38d6 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/magic-mime/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/magic-mime/default.nix
@@ -2,11 +2,11 @@
 
 buildDunePackage rec {
   pname = "magic-mime";
-  version = "1.1.3";
+  version = "1.2.0";
 
   src = fetchurl {
     url = "https://github.com/mirage/ocaml-magic-mime/releases/download/v${version}/magic-mime-v${version}.tbz";
-    sha256 = "1xqjs8bba567yzrzgnr88j5ck97d36zw68zr9v29liya37k6rcvz";
+    sha256 = "sha256-8SG2dQD43Zfi/J/V0BxzJeTIS8XAI3RCd5+9b6IGlPU=";
   };
 
   minimalOCamlVersion = "4.03";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/magick/default.nix b/nixpkgs/pkgs/development/ocaml-modules/magick/default.nix
deleted file mode 100644
index 87c43fb68693..000000000000
--- a/nixpkgs/pkgs/development/ocaml-modules/magick/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ stdenv, lib, fetchurl, which, pkg-config, ocaml, findlib, imagemagick }:
-
-if lib.versionAtLeast ocaml.version "4.06"
-then throw "magick is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-  pname = "ocaml-magick";
-  version = "0.34";
-
-  src = fetchurl {
-    url = "http://www.linux-nantes.org/~fmonnier/OCaml/ImageMagick/ImageMagick/OCaml-ImageMagick-${version}.tgz";
-    sha256 = "0gn9l2qdr8gby2x8c2mb59x1kipb2plr45rbq6ymcxyi0wmzfh3q";
-  };
-
-  nativeBuildInputs = [ which pkg-config ocaml findlib ];
-  buildInputs = [ imagemagick ];
-
-  strictDeps = true;
-
-  createFindlibDestdir = true;
-
-  preConfigure = "substituteInPlace Makefile --replace gcc $CC";
-
-  installTargets = [ "find_install" ];
-
-  meta = {
-    homepage = "http://www.linux-nantes.org/~fmonnier/OCaml/ImageMagick/";
-    description = "ImageMagick Binding for OCaml";
-    license = lib.licenses.mit;
-    platforms = imagemagick.meta.platforms;
-    maintainers = with lib.maintainers; [ vbgl ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/markup/default.nix b/nixpkgs/pkgs/development/ocaml-modules/markup/default.nix
index 8d35ae641a6a..65e1459d9e3a 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/markup/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/markup/default.nix
@@ -2,7 +2,7 @@
 
 buildDunePackage rec {
   pname = "markup";
-  version = "1.0.0";
+  version = "1.0.2";
 
   useDune2 = true;
 
@@ -10,7 +10,7 @@ buildDunePackage rec {
     owner = "aantron";
     repo = "markup.ml";
     rev = version;
-    sha256 = "sha256-yapjqAcn0XSC6Guoj69sXNpLZ2urXANkWhcafpPLEyY=";
+    sha256 = "sha256-FcN9EBap93gFeOwSrRxs2sQrjZGs8/YnaEX7zHLmeM8=";
   };
 
   propagatedBuildInputs = [ uchar uutf ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mccs/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mccs/default.nix
index beadceff02b0..50abdf631db8 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mccs/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mccs/default.nix
@@ -13,7 +13,7 @@ buildDunePackage rec {
 
   useDune2 = true;
 
-  buildInputs = [
+  propagatedBuildInputs = [
     cudf
   ];
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mimic/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mimic/default.nix
index ea1636427038..348a1b39cdd4 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mimic/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mimic/default.nix
@@ -1,26 +1,23 @@
 { lib, buildDunePackage, fetchurl
-, fmt, mirage-flow, result, rresult, cstruct, logs, ke, lwt
-, alcotest, alcotest-lwt, bigstringaf, bigarray-compat
+, fmt, mirage-flow, cstruct, logs, ke, lwt
+, alcotest, alcotest-lwt, bigstringaf
 }:
 
 buildDunePackage rec {
   pname = "mimic";
-  version = "0.0.3";
+  version = "0.0.4";
 
-  minimumOCamlVersion = "4.08";
-  useDune2 = true;
+  minimalOCamlVersion = "4.08";
 
   src = fetchurl {
     url = "https://github.com/dinosaure/mimic/releases/download/${version}/mimic-${version}.tbz";
-    sha256 = "e4743cd2e4f8242eb1ce9d8086fd2affba0eb6a62131309ffa279108bd3dbbcb";
+    sha256 = "sha256-1Wb2xufgGKp3FJ+FYjK45i9B5+HohdPX+w9Sw0ph5JY=";
   };
 
   propagatedBuildInputs = [
     fmt
     lwt
     mirage-flow
-    result
-    rresult
     logs
   ];
 
@@ -29,7 +26,6 @@ buildDunePackage rec {
     alcotest
     alcotest-lwt
     bigstringaf
-    bigarray-compat
     cstruct
     ke
   ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mirage-flow/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mirage-flow/default.nix
index d6ba6603596a..bc987eff9884 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mirage-flow/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mirage-flow/default.nix
@@ -2,14 +2,14 @@
 
 buildDunePackage rec {
   pname = "mirage-flow";
-  version = "2.0.1";
+  version = "3.0.0";
 
   useDune2 = true;
   minimumOCamlVersion = "4.05";
 
   src = fetchurl {
     url = "https://github.com/mirage/mirage-flow/releases/download/v${version}/mirage-flow-v${version}.tbz";
-    sha256 = "13v05x34six0z6bc2is8qhvbxk4knxh80ardi5x4rl738vlq3mn9";
+    sha256 = "sha256-1wvabIXsJ0e+2IvE2V8mnSgQUDuSkT8IB75SkWlhOPw=";
   };
 
   propagatedBuildInputs = [ cstruct fmt ocaml_lwt ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mirage-fs/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mirage-fs/default.nix
index d8cfddff313c..23c79c4a77d6 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mirage-fs/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mirage-fs/default.nix
@@ -4,13 +4,13 @@
 
 buildDunePackage rec {
   pname = "mirage-fs";
-  version = "3.0.1";
+  version = "4.0.0";
 
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/mirage/mirage-fs/releases/download/v${version}/mirage-fs-v${version}.tbz";
-    sha256 = "0px18bgk528vr7iw78r0j3z4sdcz684sfcj47ibbly2adbvd64yk";
+    sha256 = "sha256-PYZ2HCPuxOv4FU7EHymsa1oIZU7q8TSzzRvlngYdZ3s=";
   };
 
   propagatedBuildInputs = [ cstruct fmt lwt mirage-device mirage-kv ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mirage-logs/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mirage-logs/default.nix
index 2a7670ce3722..7aabd51b819a 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mirage-logs/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mirage-logs/default.nix
@@ -1,6 +1,6 @@
 { lib, fetchurl, buildDunePackage
 , logs, lwt, mirage-clock, mirage-profile, ptime
-, alcotest
+, alcotest, stdlib-shims
 }:
 
 buildDunePackage rec {
@@ -14,7 +14,7 @@ buildDunePackage rec {
     sha256 = "0h0amzjxy067jljscib7fvw5q8k0adqa8m86affha9hq5jsh07a1";
   };
 
-  propagatedBuildInputs = [ logs lwt mirage-clock mirage-profile ptime ];
+  propagatedBuildInputs = [ logs lwt mirage-clock mirage-profile ptime stdlib-shims ];
 
   doCheck = true;
   checkInputs = [ alcotest ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mirage-profile/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mirage-profile/default.nix
index c6ca730bf3c5..ef856e021273 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mirage-profile/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mirage-profile/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchurl, buildDunePackage
-, ppx_cstruct
+, ppx_cstruct, stdlib-shims
 , cstruct, lwt
 }:
 
@@ -15,7 +15,7 @@ buildDunePackage rec {
   };
 
   buildInputs = [ ppx_cstruct ];
-  propagatedBuildInputs = [ cstruct lwt ];
+  propagatedBuildInputs = [ cstruct lwt stdlib-shims ];
 
   meta = with lib; {
     description = "Collect runtime profiling information in CTF format";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mirage-time/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mirage-time/default.nix
index 2e91bda61d6b..1780ba05ac47 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mirage-time/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mirage-time/default.nix
@@ -4,13 +4,13 @@ buildDunePackage rec {
   minimumOCamlVersion = "4.06";
 
   pname = "mirage-time";
-  version = "2.0.1";
+  version = "3.0.0";
 
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/mirage/mirage-time/releases/download/v${version}/mirage-time-v${version}.tbz";
-    sha256 = "1w6mm4g7fc19cs0ncs0s9fsnb1k1s04qqzs9bsqvq8ngsb90cbh0";
+    sha256 = "sha256-DUCUm1jix+i3YszIzgZjRQRiM8jJXQ49F6JC/yicvXw=";
   };
 
   propagatedBuildInputs = [ ocaml_lwt ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mlgmpidl/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mlgmpidl/default.nix
index d12329b811e6..33f9f2d8e6b0 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mlgmpidl/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mlgmpidl/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "17xqiclaqs4hmnb92p9z6z9a1xfr31vcn8nlnj8ykk57by31vfza";
   };
 
-  nativeBuildInputs = [ perl ocaml findlib mpfr camlidl ];
+  nativeBuildInputs = [ perl ocaml findlib camlidl ];
   buildInputs = [ gmp mpfr ];
 
   strictDeps = true;
@@ -22,8 +22,7 @@ stdenv.mkDerivation rec {
   ];
 
   postConfigure = ''
-    sed -i Makefile \
-      -e 's|/bin/rm|rm|'
+    substituteInPlace Makefile --replace "/bin/rm" "rm"
     mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/stublibs
   '';
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/nonstd/default.nix b/nixpkgs/pkgs/development/ocaml-modules/nonstd/default.nix
index 82b1feed540b..696cdff52196 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/nonstd/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/nonstd/default.nix
@@ -1,11 +1,9 @@
-{ lib, fetchzip, buildDunePackage }:
+{ lib, fetchzip, buildDunePackage, ocaml }:
 
 buildDunePackage rec {
   pname = "nonstd";
   version = "0.0.3";
 
-  useDune2 = false;
-
   minimalOCamlVersion = "4.02";
 
   src = fetchzip {
@@ -13,6 +11,8 @@ buildDunePackage rec {
     sha256 = "0ccjwcriwm8fv29ij1cnbc9win054kb6pfga3ygzdbjpjb778j46";
   };
 
+  useDune2 = lib.versionAtLeast ocaml.version "4.12";
+  postPatch = lib.optionalString useDune2 "dune upgrade";
   doCheck = true;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix
index b4410981afbd..f2336cf88bbb 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix
@@ -1,5 +1,8 @@
 { lib, stdenv, fetchFromGitLab, libvirt, autoreconfHook, pkg-config, ocaml, findlib, perl }:
 
+lib.throwIfNot (lib.versionAtLeast ocaml.version "4.02")
+  "libvirt is not available for OCaml ${ocaml.version}"
+
 stdenv.mkDerivation rec {
   pname = "ocaml-libvirt";
   version = "0.6.1.5";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ocplib-endian/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ocplib-endian/default.nix
index c0bccbd65a65..1e657fce8dd1 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ocplib-endian/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ocplib-endian/default.nix
@@ -1,17 +1,17 @@
 { lib, buildDunePackage, fetchFromGitHub, cppo }:
 
 buildDunePackage rec {
-  version = "1.1";
+  version = "1.2";
   pname = "ocplib-endian";
 
   src = fetchFromGitHub {
     owner = "OCamlPro";
     repo = "ocplib-endian";
     rev = version;
-    sha256 = "sha256-zKsSkhlZBXSqPtw+/WN3pwo9plM9rDZfMbGVfosqb10=";
+    sha256 = "sha256-THTlhOfXAPaqTt1qBkht+D67bw6M175QLvXoUMgjks4=";
   };
 
-  useDune2 = true;
+  minimalOCamlVersion = "4.03";
 
   nativeBuildInputs = [ cppo ];
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/odn/default.nix b/nixpkgs/pkgs/development/ocaml-modules/odn/default.nix
deleted file mode 100644
index 66fc5d1f1872..000000000000
--- a/nixpkgs/pkgs/development/ocaml-modules/odn/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild, type_conv, ounit, camlp4 }:
-
-if lib.versionAtLeast ocaml.version "4.06"
-then throw "ocaml-data-notation is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-  pname = "ocaml-data-notation";
-  version = "0.0.11";
-
-  src = fetchurl {
-    url = "https://forge.ocamlcore.org/frs/download.php/1310/ocaml-data-notation-${version}.tar.gz";
-    sha256 = "09a8zdyifpc2nl4hdvg9206142y31cq95ajgij011s1qcg3z93lj";
-  };
-
-  nativeBuildInputs = [ ocaml findlib ocamlbuild ];
-  buildInputs = [ type_conv ounit camlp4 ];
-
-  strictDeps = true;
-
-  createFindlibDestdir = true;
-
-  configurePhase = "ocaml setup.ml -configure";
-  buildPhase = "ocaml setup.ml -build";
-  installPhase = "ocaml setup.ml -install";
-
-  meta = with lib; {
-    description = "Store data using OCaml notation";
-    homepage = "https://forge.ocamlcore.org/projects/odn/";
-    license = licenses.lgpl21;
-    platforms = ocaml.meta.platforms or [ ];
-    maintainers = with maintainers; [
-      vbgl
-      maggesi
-    ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/odoc-parser/default.nix b/nixpkgs/pkgs/development/ocaml-modules/odoc-parser/default.nix
index 7a2b5abd974b..9e4e4bc8d1de 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/odoc-parser/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/odoc-parser/default.nix
@@ -23,7 +23,7 @@ buildDunePackage rec {
 
   useDune2 = true;
 
-  buildInputs = [ astring result ];
+  propagatedBuildInputs = [ astring result ];
 
   meta = {
     description = "Parser for Ocaml documentation comments";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/opium_kernel/default.nix b/nixpkgs/pkgs/development/ocaml-modules/opium_kernel/default.nix
index c7bfe1e7306a..6b51443df232 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/opium_kernel/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/opium_kernel/default.nix
@@ -9,6 +9,7 @@
 , ezjsonm
 , hmap
 , sexplib
+, fieldslib
 }:
 
 buildDunePackage rec {
@@ -31,7 +32,7 @@ buildDunePackage rec {
   ];
 
   propagatedBuildInputs = [
-    hmap cohttp-lwt ezjsonm sexplib
+    hmap cohttp-lwt ezjsonm sexplib fieldslib
   ];
 
   meta = {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ordering/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ordering/default.nix
new file mode 100644
index 000000000000..c3bffc013f95
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/ordering/default.nix
@@ -0,0 +1,13 @@
+{ lib, buildDunePackage, dune_3 }:
+
+buildDunePackage {
+  pname = "ordering";
+  inherit (dune_3) version src;
+  duneVersion = "3";
+
+  dontAddPrefix = true;
+
+  meta = dune_3.meta // {
+    description = "Element ordering";
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/owl-base/default.nix b/nixpkgs/pkgs/development/ocaml-modules/owl-base/default.nix
index b767b1db24c8..189359cd1c86 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/owl-base/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/owl-base/default.nix
@@ -2,13 +2,13 @@
 
 buildDunePackage rec {
   pname = "owl-base";
-  version = "1.0.1";
+  version = "1.0.2";
 
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/owlbarn/owl/releases/download/${version}/owl-${version}.tbz";
-    sha256 = "72ca9f6edd302fdfa16c7559cedac7ac2c885466a367e17ea1ea8807b2dd13ef";
+    sha256 = "sha256-ONIQzmwcLwljH9WZUUMOTzZLWuA2xx7RsyzlWbKikmM=";
   };
 
   minimumOCamlVersion = "4.10";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/pcap-format/default.nix b/nixpkgs/pkgs/development/ocaml-modules/pcap-format/default.nix
index f8bb6f4f6b2d..ae093cc7817e 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/pcap-format/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/pcap-format/default.nix
@@ -1,6 +1,6 @@
 { lib, buildDunePackage, fetchurl
 , ppx_cstruct, ppx_tools
-, cstruct, ounit, mmap
+, cstruct, ounit, mmap, stdlib-shims
 }:
 
 buildDunePackage rec {
@@ -24,6 +24,7 @@ buildDunePackage rec {
 
   propagatedBuildInputs = [
     cstruct
+    stdlib-shims
   ];
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/pipebang/default.nix b/nixpkgs/pkgs/development/ocaml-modules/pipebang/default.nix
index 251aeb8de8ec..e2bd4d3ec5c8 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/pipebang/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/pipebang/default.nix
@@ -15,7 +15,7 @@ buildOcaml rec {
 
   strictDeps = true;
 
-  buildInputs = [ camlp4 ];
+  propagatedBuildInputs = [ camlp4 ];
 
   meta = with lib; {
     homepage = "https://github.com/janestreet/pipebang";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/piqi-ocaml/default.nix b/nixpkgs/pkgs/development/ocaml-modules/piqi-ocaml/default.nix
index 4f2e4693357f..8c0276bc9a7a 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/piqi-ocaml/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/piqi-ocaml/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, ocaml, findlib, piqi, stdlib-shims }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, ocaml, findlib, piqi, stdlib-shims, num }:
 
 stdenv.mkDerivation rec {
   version = "0.7.7";
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ ocaml findlib ];
   buildInputs = [ piqi stdlib-shims ];
 
+  checkInputs  = [ num ];
+
   strictDeps = true;
 
   createFindlibDestdir = true;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ppx_cstubs/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ppx_cstubs/default.nix
index f4794eea76ed..f2c844ea0482 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ppx_cstubs/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ppx_cstubs/default.nix
@@ -27,17 +27,19 @@ buildDunePackage rec {
     sha256 = "15cjb9ygnvp2kv85rrb7ncz7yalifyl7wd2hp2cl8r1qrpgi1d0w";
   };
 
-  nativeBuildInputs = [ cppo ];
+  nativeBuildInputs = [ cppo findlib ];
 
   buildInputs = [
     bigarray-compat
     containers
-    ctypes
     integers
     num
     ppxlib
     re
-    findlib
+  ];
+
+  propagatedBuildInputs = [
+    ctypes
   ];
 
   strictDeps = true;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ppx_deriving_protobuf/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ppx_deriving_protobuf/default.nix
index 6f23af44b949..43cc2992c2a0 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ppx_deriving_protobuf/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ppx_deriving_protobuf/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchurl, buildDunePackage, cppo, ppx_deriving
-, ppxlib
+, ppxlib, dune-configurator
 }:
 
 buildDunePackage rec {
@@ -13,7 +13,9 @@ buildDunePackage rec {
     sha256 = "1dc1vxnkd0cnrgac5v3zbaj2lq1d2w8118mp1cmsdxylp06yz1sj";
   };
 
-  buildInputs = [ cppo ppxlib ppx_deriving ];
+  nativeBuildInputs = [ cppo ];
+  buildInputs = [ ppxlib dune-configurator ];
+  propagatedBuildInputs = [ ppx_deriving ];
 
   meta = with lib; {
     homepage = "https://github.com/ocaml-ppx/ppx_deriving_protobuf";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/printbox/default.nix b/nixpkgs/pkgs/development/ocaml-modules/printbox/default.nix
index 179e559d72fe..28a53210f69f 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/printbox/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/printbox/default.nix
@@ -2,7 +2,7 @@
 
 buildDunePackage rec {
   pname = "printbox";
-  version = "0.6";
+  version = "0.6.1";
 
   useDune2 = true;
 
@@ -12,7 +12,7 @@ buildDunePackage rec {
     owner = "c-cube";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256:0vqp8j1vp8h8par699nnh31hnikzh6pqn07lqyxw65axqy3sc9dp";
+    sha256 = "sha256-7u2ThRhM3vW4ItcFsK4ycgcaW0JcQOFoZZRq2kqbl+k=";
   };
 
   checkInputs = [ mdx.bin ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/psmt2-frontend/default.nix b/nixpkgs/pkgs/development/ocaml-modules/psmt2-frontend/default.nix
index 25c9ec4b870c..41e13f21a412 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/psmt2-frontend/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/psmt2-frontend/default.nix
@@ -1,14 +1,14 @@
 { lib, fetchFromGitHub, buildDunePackage, menhir }:
 
 buildDunePackage rec {
-  version = "0.3.1";
+  version = "0.4.0";
   pname = "psmt2-frontend";
 
   src = fetchFromGitHub {
     owner = "ACoquereau";
     repo = pname;
     rev = version;
-    sha256 = "038jrfsq09nhnzpjiishg4adk09w3aw1bpczgbj66lqqilkd6gci";
+    sha256 = "sha256-cYY9x7QZjH7pdJyHMqfMXgHZ3/zJLp/6ntY6OSIo6Vs=";
   };
 
   useDune2 = true;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/routes/default.nix b/nixpkgs/pkgs/development/ocaml-modules/routes/default.nix
index a83d0db5d84d..36476e587ffa 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/routes/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/routes/default.nix
@@ -2,14 +2,14 @@
 
 buildDunePackage rec {
   pname = "routes";
-  version = "0.9.1";
+  version = "1.0.0";
 
   useDune2 = true;
   minimalOCamlVersion = "4.05";
 
   src = fetchurl {
     url = "https://github.com/anuragsoni/routes/releases/download/${version}/routes-${version}.tbz";
-    sha256 = "0h2c1p5w6237c1lmsl5c8q2dj5dq20gf2cmb12nbmlfn12sfmcrl";
+    sha256 = "sha256-WSlASDTA1UX+NhW38/XuLkOkdwjIxz0OUkX6Nd2iROg=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/sawja/default.nix b/nixpkgs/pkgs/development/ocaml-modules/sawja/default.nix
index 3b0878155a53..ec1b59c04077 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/sawja/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/sawja/default.nix
@@ -2,8 +2,7 @@
 
 let
   pname = "sawja";
-  version = "1.5.10";
-  webpage = "http://sawja.inria.fr/";
+  version = "1.5.11";
 in
 
 if !lib.versionAtLeast ocaml.version "4.07"
@@ -20,7 +19,7 @@ stdenv.mkDerivation {
     owner = "javalib-team";
     repo = pname;
     rev = version;
-    sha256 = "sha256:0k51rscs9mdgpg3qn4cahql5ncdvlb207m015hr8v6r1vfgn0ddq";
+    sha256 = "sha256-1aKkRZDuLJLmDhUC1FXnn4QrgXaTyAbnXfTOAdnKgs8=";
   };
 
   nativeBuildInputs = [ which ocaml findlib ];
@@ -42,7 +41,7 @@ stdenv.mkDerivation {
 
   meta = with lib; {
     description = "A library written in OCaml, relying on Javalib to provide a high level representation of Java bytecode programs";
-    homepage = webpage;
+    homepage = "http://sawja.inria.fr/";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.vbgl ];
     platforms = ocaml.meta.platforms or [];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/shared-memory-ring/default.nix b/nixpkgs/pkgs/development/ocaml-modules/shared-memory-ring/default.nix
index 3a96d4adee4c..17dd6183c0da 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/shared-memory-ring/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/shared-memory-ring/default.nix
@@ -5,6 +5,7 @@
 , mirage-profile
 , cstruct
 , ounit
+, stdlib-shims
 }:
 
 buildDunePackage rec {
@@ -25,6 +26,7 @@ buildDunePackage rec {
   propagatedBuildInputs = [
     mirage-profile
     cstruct
+    stdlib-shims
   ];
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/stdune/default.nix b/nixpkgs/pkgs/development/ocaml-modules/stdune/default.nix
new file mode 100644
index 000000000000..fd1e4f987b40
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/stdune/default.nix
@@ -0,0 +1,16 @@
+{ lib, buildDunePackage, dune_3, dyn, ordering }:
+
+buildDunePackage {
+  pname = "stdune";
+  inherit (dune_3) version src;
+  duneVersion = "3";
+
+  dontAddPrefix = true;
+
+  propagatedBuildInputs = [ dyn ordering ];
+
+  meta = dune_3.meta // {
+    description = "Dune's unstable standard library";
+  };
+}
+
diff --git a/nixpkgs/pkgs/development/ocaml-modules/tcpip/default.nix b/nixpkgs/pkgs/development/ocaml-modules/tcpip/default.nix
index ad12cb42d5e9..bcabb6a3626f 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/tcpip/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/tcpip/default.nix
@@ -13,13 +13,13 @@
 
 buildDunePackage rec {
   pname = "tcpip";
-  version = "7.0.1";
+  version = "7.1.0";
 
   useDune2 = true;
 
   src = fetchurl {
     url = "https://github.com/mirage/mirage-${pname}/releases/download/v${version}/${pname}-${version}.tbz";
-    sha256 = "0gqj2s9sk3a7f4yavx423a569fvxsrgm0wg58biiv16v37xjaymp";
+    sha256 = "sha256-4nd2OVZa4w22I4bgglnS8lrNfjTk40PL5n6Oh6n+osw=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ulex/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ulex/default.nix
index 9a5848db3f7b..d08f2c4c0ae3 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ulex/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ulex/default.nix
@@ -26,6 +26,7 @@ stdenv.mkDerivation rec {
   createFindlibDestdir = true;
 
   nativeBuildInputs = [ ocaml findlib ocamlbuild camlp4 ];
+  propagatedBuildInputs = [ camlp4 ];
 
   strictDeps = true;
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/uutf/default.nix b/nixpkgs/pkgs/development/ocaml-modules/uutf/default.nix
index 6701c8650513..c76eac45b35d 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/uutf/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/uutf/default.nix
@@ -1,16 +1,18 @@
 { lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild, cmdliner , topkg, uchar }:
 let
   pname = "uutf";
-  webpage = "https://erratique.ch/software/${pname}";
 in
 
+lib.throwIfNot (lib.versionAtLeast ocaml.version "4.03")
+  "${pname} is not available with OCaml ${ocaml.version}"
+
 stdenv.mkDerivation rec {
   name = "ocaml${ocaml.version}-${pname}-${version}";
-  version = "1.0.2";
+  version = "1.0.3";
 
   src = fetchurl {
-    url = "${webpage}/releases/${pname}-${version}.tbz";
-    sha256 = "1nx1rly3qj23jzn9yk3x6fwqimcxjd84kv5859vvhdg56psq26p6";
+    url = "https://erratique.ch/software/${pname}/releases/${pname}-${version}.tbz";
+    sha256 = "sha256-h3KlYT0ecCmM4U3zMkGjaF8h5O9r20zwP+mF+x7KBWg=";
   };
 
   nativeBuildInputs = [ ocaml ocamlbuild findlib topkg ];
@@ -23,8 +25,8 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Non-blocking streaming Unicode codec for OCaml";
-    homepage = webpage;
-    platforms = ocaml.meta.platforms or [];
+    homepage = "https://erratique.ch/software/uutf";
+    inherit (ocaml.meta) platforms;
     license = licenses.bsd3;
     maintainers = [ maintainers.vbgl ];
   };
diff --git a/nixpkgs/pkgs/development/ocaml-modules/wasm/default.nix b/nixpkgs/pkgs/development/ocaml-modules/wasm/default.nix
index 6b0008912906..ffe8479b67e9 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/wasm/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/wasm/default.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, fetchFromGitHub, ocaml, findlib, ocamlbuild }:
 
-if !lib.versionAtLeast ocaml.version "4.02"
+if !lib.versionAtLeast ocaml.version "4.03"
 || lib.versionOlder "4.13" ocaml.version
 then throw "wasm is not available for OCaml ${ocaml.version}"
 else
diff --git a/nixpkgs/pkgs/development/php-packages/composer/default.nix b/nixpkgs/pkgs/development/php-packages/composer/default.nix
index 4c94b7421253..96cc0b9706b7 100644
--- a/nixpkgs/pkgs/development/php-packages/composer/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/composer/default.nix
@@ -1,14 +1,14 @@
 { mkDerivation, fetchurl, makeWrapper, unzip, lib, php }:
 let
   pname = "composer";
-  version = "2.2.7";
+  version = "2.2.9";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://getcomposer.org/download/${version}/composer.phar";
-    sha256 = "sha256-EAQN7WY1QZkO74zh9vpEyztKR+FF77jp5ZkHoVBoAz0=";
+    sha256 = "sha256-SPn9ya2TkE/ullULRa4DpR9pcYUC7oVdqJS0rXHS3+A=";
   };
 
   dontUnpack = true;
diff --git a/nixpkgs/pkgs/development/php-packages/memcached/default.nix b/nixpkgs/pkgs/development/php-packages/memcached/default.nix
index 0aea58572cba..5e56882c9d24 100644
--- a/nixpkgs/pkgs/development/php-packages/memcached/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/memcached/default.nix
@@ -1,15 +1,14 @@
-{ buildPecl, lib, fetchgit, php, cyrus_sasl, zlib, pkg-config, libmemcached }:
-let
+{ buildPecl, lib, fetchFromGitHub, php, cyrus_sasl, zlib, pkg-config, libmemcached }:
+
+buildPecl rec {
   pname = "memcached";
-  version = "3.1.5";
-in
-buildPecl {
-  inherit pname version;
+  version = "3.2.0";
 
-  src = fetchgit {
-    url = "https://github.com/php-memcached-dev/php-memcached";
+  src = fetchFromGitHub {
+    owner = "php-memcached-dev";
+    repo = "php-memcached";
     rev = "v${version}";
-    sha256 = "01mbh2m3kfbdvih3c8g3g9h4vdd80r0i9g2z8b3lx3mi8mmcj380";
+    sha256 = "sha256-g9IzGSZUxLlOE32o9ZJOa3erb5Qs1ntR8nzS3kRd/EU=";
   };
 
   internalDeps = [
diff --git a/nixpkgs/pkgs/development/php-packages/mongodb/default.nix b/nixpkgs/pkgs/development/php-packages/mongodb/default.nix
index 6f28d1af10e3..bb6087631eb1 100644
--- a/nixpkgs/pkgs/development/php-packages/mongodb/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/mongodb/default.nix
@@ -14,8 +14,8 @@
 buildPecl {
   pname = "mongodb";
 
-  version = "1.12.1";
-  sha256 = "sha256-kl1+YAXG6Eu0CiUBnBKw7kvaYlxkSXadzn1bAmmD9DM=";
+  version = "1.13.0";
+  sha256 = "sha256-IoZbYdJkyQyeqoXZTy9fV+VkFAyth8jCYB+jP4Dv4Ls=";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/php-packages/php-cs-fixer/default.nix b/nixpkgs/pkgs/development/php-packages/php-cs-fixer/default.nix
index 90bd1af00789..9104c0a0c8dd 100644
--- a/nixpkgs/pkgs/development/php-packages/php-cs-fixer/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/php-cs-fixer/default.nix
@@ -1,14 +1,14 @@
 { mkDerivation, fetchurl, makeWrapper, lib, php }:
 let
   pname = "php-cs-fixer";
-  version = "3.7.0";
+  version = "3.8.0";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v${version}/php-cs-fixer.phar";
-    sha256 = "sha256-a7mKM++0iQm9hQFCDfyR6Jdb9h98YNHmbdQso8BU3WE=";
+    sha256 = "sha256-kOdJ2xuS095xVdPxoz4q/XM0BpyJEy6V/CtkuTN/Chk=";
   };
 
   dontUnpack = true;
diff --git a/nixpkgs/pkgs/development/php-packages/phpstan/default.nix b/nixpkgs/pkgs/development/php-packages/phpstan/default.nix
index 6351a076fded..fccb3886af15 100644
--- a/nixpkgs/pkgs/development/php-packages/phpstan/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/phpstan/default.nix
@@ -1,14 +1,14 @@
 { mkDerivation, fetchurl, makeWrapper, lib, php }:
 let
   pname = "phpstan";
-  version = "1.4.9";
+  version = "1.5.0";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/phpstan/phpstan/releases/download/${version}/phpstan.phar";
-    sha256 = "sha256-N2oYhhcU6uCGUzJbL8/vMUlypJa/Z86d4Xddvj6k1fc=";
+    sha256 = "sha256-dgsBpFnolIMrSwNHZ9+mSW1zMJ/RbvYIWBUksDiYeqE=";
   };
 
   dontUnpack = true;
diff --git a/nixpkgs/pkgs/development/php-packages/swoole/default.nix b/nixpkgs/pkgs/development/php-packages/swoole/default.nix
index 3cbd55221e11..201b78e49663 100644
--- a/nixpkgs/pkgs/development/php-packages/swoole/default.nix
+++ b/nixpkgs/pkgs/development/php-packages/swoole/default.nix
@@ -3,8 +3,8 @@
 buildPecl {
   pname = "swoole";
 
-  version = "4.8.7";
-  sha256 = "sha256-yoiMuIbIgwkuvoeIJT1gC8UsOE504nEQ+XsE7Oprb9o=";
+  version = "4.8.8";
+  sha256 = "sha256-SnhDRC7/a7BTHn87c6YCz/R8jI6aES1ibSD6YAl6R+I=";
 
   buildInputs = [ pcre2 ] ++ lib.optionals (!stdenv.isDarwin) [ valgrind ];
   internalDeps = lib.optionals (lib.versionOlder php.version "7.4") [ php.extensions.hash ];
diff --git a/nixpkgs/pkgs/development/python-modules/Fabric/default.nix b/nixpkgs/pkgs/development/python-modules/Fabric/default.nix
index de53512d0b47..f39b2e141871 100644
--- a/nixpkgs/pkgs/development/python-modules/Fabric/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/Fabric/default.nix
@@ -11,11 +11,11 @@
 
 buildPythonPackage rec {
   pname = "fabric";
-  version = "2.6.0";
+  version = "2.7.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "47f184b070272796fd2f9f0436799e18f2ccba4ee8ee587796fca192acd46cd2";
+    sha256 = "sha256-C/eXpoxLOJcg3E3WGBSXpYxB7XYuKD2ePBsBSLMqmv8=";
   };
 
   # only relevant to python < 3.4
diff --git a/nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix b/nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix
index 9ed55214b4c7..2671c25e59f7 100644
--- a/nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/adafruit-platformdetect/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "adafruit-platformdetect";
-  version = "3.21.0";
+  version = "3.22.0";
   format = "setuptools";
 
   src = fetchPypi {
     pname = "Adafruit-PlatformDetect";
     inherit version;
-    sha256 = "sha256-H65Ar/+9AwhKFNRK/SZyU8XzrMt3myjBo+YNJYtQ0b4=";
+    sha256 = "sha256-XnB6aSTKRV72WjcXx9jPZ+FGmCNh6dvwiau7WDlyE5M=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/adb-enhanced/default.nix b/nixpkgs/pkgs/development/python-modules/adb-enhanced/default.nix
index c38851160c22..bf3f124b02e2 100644
--- a/nixpkgs/pkgs/development/python-modules/adb-enhanced/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/adb-enhanced/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "adb-enhanced";
-  version = "2.5.12";
+  version = "2.5.14";
 
   disabled = pythonOlder "3.4";
 
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "ashishb";
     repo = pname;
     rev = version;
-    sha256 = "sha256-OZSLk5qXX6rEclo6JC8o/7Mz0Y2sJqUsLhnrVK4gkVI=";
+    sha256 = "sha256-GaPOYBQEGI40MutjjY8exABqGge2p/buk9v+NcZ5oJs=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/add-trailing-comma/default.nix b/nixpkgs/pkgs/development/python-modules/add-trailing-comma/default.nix
new file mode 100644
index 000000000000..c38a4f061435
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/add-trailing-comma/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+, tokenize-rt
+}:
+
+buildPythonPackage rec {
+  pname = "add-trailing-comma";
+  version = "2.2.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "asottile";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "RBOL4mM9VciHHNmCTlRBIoXqeln19MKYxgv9p6GCNvU=";
+  };
+
+  propagatedBuildInputs = [
+    tokenize-rt
+  ];
+
+  pythonImportsCheck = [
+    "add_trailing_comma"
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "A tool (and pre-commit hook) to automatically add trailing commas to calls and literals";
+    homepage = "https://github.com/asottile/add-trailing-comma";
+    license = licenses.mit;
+    maintainers = with maintainers; [ gador ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/affine/default.nix b/nixpkgs/pkgs/development/python-modules/affine/default.nix
index 89062cde4d97..4b7696223a73 100644
--- a/nixpkgs/pkgs/development/python-modules/affine/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/affine/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "affine";
-  version = "2.3.0";
+  version = "2.3.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "00jil4q3b17qml6azim7s7zar6qb1vhsf0g888y637m23bpms11f";
+    sha256 = "sha256-1nbeZhV61q+Z/9lOD1Tonfw1sPtyUurS7QrS3KQxvdA=";
   };
 
   checkInputs = [ pytest ];
diff --git a/nixpkgs/pkgs/development/python-modules/ailment/default.nix b/nixpkgs/pkgs/development/python-modules/ailment/default.nix
index 94c47ab62a0e..ef606a027d06 100644
--- a/nixpkgs/pkgs/development/python-modules/ailment/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ailment/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "ailment";
-  version = "9.1.11752";
+  version = "9.1.12332";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-UbcPxYEyuX8W0uZXeCu00yBshdcPBAQKzZqhAYXTf+8=";
+    hash = "sha256-qWKvNhiOAonUi0qpOWtwbNZa2lgBQ+gaGrAHMgDdr4Q=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aioairzone/default.nix b/nixpkgs/pkgs/development/python-modules/aioairzone/default.nix
new file mode 100644
index 000000000000..cda625d49533
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/aioairzone/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, aiohttp
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "aioairzone";
+  version = "0.2.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "Noltari";
+    repo = pname;
+    rev = version;
+    hash = "sha256-R5OK/B7fq15lpt8nKECiHMmfK9xmiLPtoKC65C7H/7c=";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+  ];
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "aioairzone"
+  ];
+
+  meta = with lib; {
+    description = "Module to control AirZone devices";
+    homepage = "https://github.com/Noltari/aioairzone";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
+
diff --git a/nixpkgs/pkgs/development/python-modules/aiobotocore/default.nix b/nixpkgs/pkgs/development/python-modules/aiobotocore/default.nix
index ef39f451d59d..01066c127be5 100644
--- a/nixpkgs/pkgs/development/python-modules/aiobotocore/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiobotocore/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "aiobotocore";
-  version = "2.1.1";
+  version = "2.1.2";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-2+mrmXhRwkWLB6hfaCvizPNdZ51d4Pj1cSKfdArXunE=";
+    sha256 = "sha256-AP1/Q8wEhNjtJ0/QvkkqoWp/6medvqlqYCu3IspMLSI=";
   };
 
   # relax version constraints: aiobotocore works with newer botocore versions
diff --git a/nixpkgs/pkgs/development/python-modules/aiogithubapi/default.nix b/nixpkgs/pkgs/development/python-modules/aiogithubapi/default.nix
index 82c1145f9e3f..03dacdef89ba 100644
--- a/nixpkgs/pkgs/development/python-modules/aiogithubapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiogithubapi/default.nix
@@ -5,6 +5,7 @@
 , backoff
 , buildPythonPackage
 , fetchFromGitHub
+, poetry-core
 , pytest-asyncio
 , pytestCheckHook
 , pythonOlder
@@ -12,8 +13,8 @@
 
 buildPythonPackage rec {
   pname = "aiogithubapi";
-  version = "22.2.4";
-  format = "setuptools";
+  version = "22.3.1";
+  format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
@@ -21,9 +22,13 @@ buildPythonPackage rec {
     owner = "ludeeus";
     repo = pname;
     rev = version;
-    sha256 = "sha256-2RYpeyX88+eEilK/wLDJ6Ock1JBgIUPWbm/ZBJSQ2pg=";
+    hash = "sha256-5gKANZtDhIoyfyLdS15JDWTxHBFkaHDUlbVVhRs7MSE=";
   };
 
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
   propagatedBuildInputs = [
     aiohttp
     async-timeout
@@ -39,7 +44,7 @@ buildPythonPackage rec {
   postPatch = ''
     # Upstream is releasing with the help of a CI to PyPI, GitHub releases
     # are not in their focus
-    substituteInPlace setup.py \
+    substituteInPlace pyproject.toml \
       --replace 'version="main",' 'version="${version}",'
   '';
 
diff --git a/nixpkgs/pkgs/development/python-modules/aiohue/default.nix b/nixpkgs/pkgs/development/python-modules/aiohue/default.nix
index 5862a7e65a6e..40620cb13f4e 100644
--- a/nixpkgs/pkgs/development/python-modules/aiohue/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiohue/default.nix
@@ -1,35 +1,46 @@
 { lib
-, buildPythonPackage
-, fetchPypi
 , aiohttp
 , asyncio-throttle
+, awesomeversion
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
 , pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "aiohue";
-  version = "4.3.0";
+  version = "4.4.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-PslmDeG/o9WAOc0FhidUNaISrlXa3rba3UEuvPVN/+A=";
+  src = fetchFromGitHub {
+    owner = "home-assistant-libs";
+    repo = pname;
+    rev = version;
+    hash = "sha256-zXjfPd40yYyAuuW4CmaGRvJuORyQJa+6CFQaO6RQPZo=";
   };
 
   propagatedBuildInputs = [
+    awesomeversion
     aiohttp
     asyncio-throttle
   ];
 
+  checkInputs = [
+    pytestCheckHook
+  ];
+
   pythonImportsCheck = [
     "aiohue"
     "aiohue.discovery"
   ];
 
-  # Project has no tests
-  doCheck = false;
+  disabledTestPaths = [
+    # File are prefixed with test_
+    "examples/"
+  ];
 
   meta = with lib; {
     description = "Python package to talk to Philips Hue";
diff --git a/nixpkgs/pkgs/development/python-modules/aioridwell/default.nix b/nixpkgs/pkgs/development/python-modules/aioridwell/default.nix
index 7c3def1ec554..2b4cb28bbb59 100644
--- a/nixpkgs/pkgs/development/python-modules/aioridwell/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioridwell/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "aioridwell";
-  version = "2021.12.2";
+  version = "2022.03.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = version;
-    sha256 = "sha256-QFUXWleHRMBgaRsMNt2xFb3XcbCNI2kKQHKCBrUuG6Q=";
+    hash = "sha256-UiHT1YbBb9UTughVw2oJxRtvhUDVqQWqEcXMEXwy2cI=";
   };
 
   nativeBuildInputs = [
@@ -49,12 +49,6 @@ buildPythonPackage rec {
     types-pytz
   ];
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace 'titlecase = "^2.3"' 'titlecase = "*"' \
-      --replace 'pytz = "^2021.3"' 'pytz = "*"'
-  '';
-
   disabledTests = [
     # AssertionError: assert datetime.date(...
     "test_get_next_pickup_event"
diff --git a/nixpkgs/pkgs/development/python-modules/aiowebostv/default.nix b/nixpkgs/pkgs/development/python-modules/aiowebostv/default.nix
index db9fbba25b71..17d6d85c3ce2 100644
--- a/nixpkgs/pkgs/development/python-modules/aiowebostv/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiowebostv/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "aiowebostv";
-  version = "0.1.3";
+  version = "0.2.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "home-assistant-libs";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-UKDcIo0jhI84WDcSK3fciRqzKjHwbZXkqHjdo7Xt4iE=";
+    hash = "sha256-A7GiAQIuEXmCfo2pDJESCdAEaLumi1ACXnBMdGKwSvE=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/androidtv/default.nix b/nixpkgs/pkgs/development/python-modules/androidtv/default.nix
index d09daa273b81..2ea8dc5bad5b 100644
--- a/nixpkgs/pkgs/development/python-modules/androidtv/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/androidtv/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "androidtv";
-  version = "0.0.64";
+  version = "0.0.66";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "JeffLIrion";
     repo = "python-androidtv";
     rev = "v${version}";
-    hash = "sha256-CJJ+mWAX9XG1/E2PljUZ8oz/la3hYXF1tMfuKt0Zvjw=";
+    hash = "sha256-gSbckVjM49nVfzpk9sfynJDx15+zQ/KgaI7oxEkXQpo=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/angr/default.nix b/nixpkgs/pkgs/development/python-modules/angr/default.nix
index 93a4b22f5dd1..1881da62f506 100644
--- a/nixpkgs/pkgs/development/python-modules/angr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/angr/default.nix
@@ -46,7 +46,7 @@ in
 
 buildPythonPackage rec {
   pname = "angr";
-  version = "9.1.11752";
+  version = "9.1.12332";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -55,7 +55,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-4DUM1c3M/naJFqN/gdrX/NnJrY3ElUEOQ34cwcpSC+s=";
+    hash = "sha256-GaW1XyFOnjU28HqptFC6+Fe41zYZMR716Nsq0dPy660=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/angrop/default.nix b/nixpkgs/pkgs/development/python-modules/angrop/default.nix
index 21eeeb2369df..8164190cd49c 100644
--- a/nixpkgs/pkgs/development/python-modules/angrop/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/angrop/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "angrop";
-  version = "9.1.11752";
+  version = "9.1.12332";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-nZGAuWp07VMpOvqw38FGSiUhaFjJOfCzOaam4Ex7qbY=";
+    hash = "sha256-lhwlZ7eHaEMaTW7c+WCRSeGSIQ5IeEx6XALyYJH+Ey0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ansible-doctor/default.nix b/nixpkgs/pkgs/development/python-modules/ansible-doctor/default.nix
new file mode 100644
index 000000000000..4792712f41e9
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ansible-doctor/default.nix
@@ -0,0 +1,69 @@
+{ buildPythonPackage
+, fetchFromGitHub
+, lib
+
+# pythonPackages
+, anyconfig
+, appdirs
+, colorama
+, environs
+, jinja2
+, jsonschema
+, nested-lookup
+, pathspec
+, poetry-core
+, python-json-logger
+, ruamel-yaml
+}:
+
+buildPythonPackage rec {
+  pname = "ansible-doctor";
+  version = "1.2.1";
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "thegeeklab";
+    repo = "ansible-doctor";
+    rev = "v${version}";
+    sha256 = "sha256-2Jaf7asU4c7kw9v9dUYDL4/M2Y/2qhMM3m0jqYiobUI=";
+  };
+
+  postInstall = ''
+    rm $out/lib/python*/site-packages/LICENSE
+  '';
+
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace 'environs = "9.5.0"' 'environs = "*"' \
+      --replace 'jsonschema = "4.4.0"' 'jsonschema = "*"' \
+      --replace '"ruamel.yaml" = "0.17.21"' '"ruamel.yaml" = "*"'
+  '';
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    jinja2
+    colorama
+    python-json-logger
+    pathspec
+    environs
+    jsonschema
+    appdirs
+    ruamel-yaml
+    anyconfig
+    nested-lookup
+  ];
+
+  # no tests
+  doCheck = false;
+  pythonImportsCheck = [ "ansibledoctor" ];
+
+  meta = with lib; {
+    description = "Annotation based documentation for your Ansible roles";
+    homepage = "https://github.com/thegeeklab/ansible-doctor";
+    license = licenses.lgpl3Only;
+    maintainers = with maintainers; [ tboerger ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/ansible-later/default.nix b/nixpkgs/pkgs/development/python-modules/ansible-later/default.nix
new file mode 100644
index 000000000000..9ed54dee25e8
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/ansible-later/default.nix
@@ -0,0 +1,83 @@
+{ lib
+, anyconfig
+, appdirs
+, buildPythonPackage
+, colorama
+, fetchFromGitHub
+, flake8
+, jsonschema
+, nested-lookup
+, pathspec
+, poetry-core
+, pytest-mock
+, python-json-logger
+, pytestCheckHook
+, pythonOlder
+, pyyaml
+, toolz
+, unidiff
+, yamllint
+}:
+
+buildPythonPackage rec {
+  pname = "ansible-later";
+  version = "2.0.8";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "thegeeklab";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-oPlm9uxyN3hyf4gFv37YWEn/HOkg0QQ1Ya3tjLd53rQ=";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    anyconfig
+    appdirs
+    colorama
+    flake8
+    jsonschema
+    nested-lookup
+    pathspec
+    python-json-logger
+    pyyaml
+    toolz
+    unidiff
+    yamllint
+  ];
+
+  checkInputs = [
+    pytest-mock
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace 'version = "0.0.0"' 'version = "${version}"' \
+      --replace " --cov=ansiblelater --cov-report=xml:coverage.xml --cov-report=term --cov-append --no-cov-on-fail" "" \
+      --replace 'PyYAML = "6.0"' 'PyYAML = "*"' \
+      --replace 'unidiff = "0.7.3"' 'unidiff = "*"' \
+      --replace 'jsonschema = "4.4.0"' 'jsonschema = "*"'
+  '';
+
+  postInstall = ''
+    rm $out/lib/python*/site-packages/LICENSE
+  '';
+
+  pythonImportsCheck = [
+    "ansiblelater"
+  ];
+
+  meta = with lib; {
+    description = "Best practice scanner for Ansible roles and playbooks";
+    homepage = "https://github.com/thegeeklab/ansible-later";
+    license = licenses.mit;
+    maintainers = with maintainers; [ tboerger ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/ansible-runner/default.nix b/nixpkgs/pkgs/development/python-modules/ansible-runner/default.nix
index 7cfe51e29c87..0083362c753b 100644
--- a/nixpkgs/pkgs/development/python-modules/ansible-runner/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ansible-runner/default.nix
@@ -18,12 +18,12 @@
 
 buildPythonPackage rec {
   pname = "ansible-runner";
-  version = "2.1.2";
+  version = "2.1.3";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-GK/CqmMm67VmvzlhMV6ow+40m0DYUpXCFkP+9NgR/e4=";
+    hash = "sha256-2m5dD+gGDL5LnY7QbDYiGdu4GYu0C49WU29GZY2bnBo=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ansible/base.nix b/nixpkgs/pkgs/development/python-modules/ansible/base.nix
index a7ab23a36661..173e620703a4 100644
--- a/nixpkgs/pkgs/development/python-modules/ansible/base.nix
+++ b/nixpkgs/pkgs/development/python-modules/ansible/base.nix
@@ -28,11 +28,11 @@ let
 in
 buildPythonPackage rec {
   pname = "ansible-base";
-  version = "2.10.16";
+  version = "2.10.17";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-2XQhTtA6wSnCmZZ6pMmCBZQ7o28gBA5/63JI4MPi6hU=";
+    sha256 = "sha256-75JYgsqNTDwszQkc3hmeDIaQJMytDQejN9zyB7/zLzQ=";
   };
 
   # ansible_connection is already wrapped, so don't pass it through
diff --git a/nixpkgs/pkgs/development/python-modules/ansible/core.nix b/nixpkgs/pkgs/development/python-modules/ansible/core.nix
index 6b54bd275ba6..fc242ccd10ac 100644
--- a/nixpkgs/pkgs/development/python-modules/ansible/core.nix
+++ b/nixpkgs/pkgs/development/python-modules/ansible/core.nix
@@ -23,17 +23,17 @@
 
 let
   ansible-collections = callPackage ./collections.nix {
-    version = "5.2.0";
-    sha256 = "sha256:1jwraha3s15s692d47kgcr7jy1ngbg6ipmkb0ak7fjnb57r4im66";
+    version = "5.5.0";
+    sha256 = "sha256-uKdtc3iJyb/Q5rDyJ23PjYNtpmcGejVXdvNQTXpm1Rg=";
   };
 in
 buildPythonPackage rec {
   pname = "ansible-core";
-  version = "2.12.2";
+  version = "2.12.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256:1hz7j8gsgxbfjdf9562cbyxia3c4crdv50fm0p0wp4js79rf2ydw";
+    sha256 = "sha256-ihNan3TJfKtndZKTdErTQ1D3GVI+i9m7kAjfTPlTryA=";
   };
 
   # ansible_connection is already wrapped, so don't pass it through
diff --git a/nixpkgs/pkgs/development/python-modules/anyconfig/default.nix b/nixpkgs/pkgs/development/python-modules/anyconfig/default.nix
new file mode 100644
index 000000000000..3e0e347bbfa3
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/anyconfig/default.nix
@@ -0,0 +1,48 @@
+{ buildPythonPackage
+, fetchPypi
+, lib
+, pytestCheckHook
+, setuptools
+}:
+
+buildPythonPackage rec {
+  pname = "anyconfig";
+  version = "0.12.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-MJHXZ1dAaG+t6FdVU38qfGzO+oZZxbtWF04C3tdLltU=";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.cfg \
+      --replace "--cov=src -vv" ""
+  '';
+
+  propagatedBuildInputs = [
+    setuptools
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  disabledTests = [
+    # OSError: /build/anyconfig-0.12.0/tests/res/cli/no_template/10/e/10.* should exists but not
+    "test_runs_for_datasets"
+  ];
+
+  disabledTestPaths = [
+    # NameError: name 'TT' is not defined
+    "tests/schema/test_jsonschema.py"
+  ];
+
+  pythonImportsCheck = [ "anyconfig" ];
+
+  meta = with lib; {
+    description = "Python library provides common APIs to load and dump configuration files in various formats";
+    homepage = "https://github.com/ssato/python-anyconfig";
+    license = licenses.mit;
+    maintainers = with maintainers; [ tboerger ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/archinfo/default.nix b/nixpkgs/pkgs/development/python-modules/archinfo/default.nix
index add8e72d8e7e..f9affcddd122 100644
--- a/nixpkgs/pkgs/development/python-modules/archinfo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/archinfo/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , pytestCheckHook
 , nose
 , pythonOlder
@@ -8,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "archinfo";
-  version = "9.1.11752";
+  version = "9.1.12332";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -17,7 +18,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-D1YssHa14q2jxn4HtOYZlTdwGPkiiMhWuOh08fj87ic=";
+    hash = "sha256-nv/hwQZgKv/cM8fF6GqI8zY9GAe8aCZ/AGFOmhz+bMM=";
   };
 
   checkInputs = [
@@ -25,6 +26,15 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  patches = [
+    # Make archinfo import without installing pyvex, https://github.com/angr/archinfo/pull/113
+    (fetchpatch {
+      name = "fix-import-issue.patch";
+      url = "https://github.com/angr/archinfo/commit/d29c108f55ffd458ff1d3d65db2d651c76b19267.patch";
+      sha256 = "sha256-9vi0QyqQLIPQxFuB8qrpcnPXWOJ6d27/IXJE/Ui6HhM=";
+    })
+  ];
+
   pythonImportsCheck = [
     "archinfo"
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/argon2_cffi/default.nix b/nixpkgs/pkgs/development/python-modules/argon2_cffi/default.nix
index 839429bc948b..4ecf5fbc5f0d 100644
--- a/nixpkgs/pkgs/development/python-modules/argon2_cffi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/argon2_cffi/default.nix
@@ -23,7 +23,8 @@ buildPythonPackage rec {
     sha256 = "d384164d944190a7dd7ef22c6aa3ff197da12962bd04b17f64d4e93d934dba5b";
   };
 
-  propagatedBuildInputs = [ cffi six ] ++ lib.optional (!isPy3k) enum34;
+  propagatedBuildInputs = [ cffi six argon2-cffi-bindings ]
+    ++ lib.optional (!isPy3k) enum34;
 
   propagatedNativeBuildInputs = [
     argon2-cffi-bindings
diff --git a/nixpkgs/pkgs/development/python-modules/arpeggio/default.nix b/nixpkgs/pkgs/development/python-modules/arpeggio/default.nix
index 5ad433413ce7..d3d320785293 100644
--- a/nixpkgs/pkgs/development/python-modules/arpeggio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/arpeggio/default.nix
@@ -1,34 +1,32 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, glibcLocales
-, pytest-runner
 , pytestCheckHook
 }:
 
 buildPythonPackage rec {
-  pname = "Arpeggio";
-  version = "1.10.2";
+  pname = "arpeggio";
+  version = "2.0.0";
 
   src = fetchPypi {
-    inherit pname version;
-    sha256 = "bfe349f252f82f82d84cb886f1d5081d1a31451e6045275e9f90b65d0daa06f1";
+    pname = "Arpeggio";
+    inherit version;
+    sha256 = "sha256-1rA4OQGbuKaHhfkpLuajaxlU64S5JbhKa4peHibT7T0=";
   };
 
-  # Shall not be needed for next release
-  LC_ALL = "en_US.UTF-8";
-  buildInputs = [ glibcLocales ];
-
-  nativeBuildInputs = [ pytest-runner ];
+  postPatch = ''
+    substituteInPlace setup.cfg \
+      --replace "pytest-runner" ""
+  '';
 
   checkInputs = [ pytestCheckHook ];
 
-  disabledTests = [ "test_examples" "test_issue_22" ];
-
-  dontUseSetuptoolsCheck = true;
+  pythonImportsCheck = [ "arpeggio" ];
 
-  meta = {
-    description = "Packrat parser interpreter";
-    license = lib.licenses.mit;
+  meta = with lib; {
+    description = "Recursive descent parser with memoization based on PEG grammars (aka Packrat parser)";
+    homepage = "https://github.com/textX/Arpeggio";
+    license = licenses.mit;
+    maintainers = with maintainers; [ SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/arviz/default.nix b/nixpkgs/pkgs/development/python-modules/arviz/default.nix
index 22d545f04f50..82fa11897b04 100644
--- a/nixpkgs/pkgs/development/python-modules/arviz/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/arviz/default.nix
@@ -25,13 +25,13 @@
 
 buildPythonPackage rec {
   pname = "arviz";
-  version = "0.11.4";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = "arviz-devs";
     repo = "arviz";
     rev = "v${version}";
-    sha256 = "0vindadyxhxhrhbalys6kzrda2d4qpqbqbsbwfprp8pxkldgk548";
+    sha256 = "sha256-ClARxgfji/CavEy8g5oeYK7pwSZS1yUIZnBiyTbZ/zU=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aspy-refactor-imports/default.nix b/nixpkgs/pkgs/development/python-modules/aspy-refactor-imports/default.nix
new file mode 100644
index 000000000000..9ec0cf55d42d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/aspy-refactor-imports/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "aspy-refactor-imports";
+  version = "3.0.1";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "asottile";
+    repo = "aspy.refactor_imports";
+    rev = "v${version}";
+    sha256 = "MlCM3zNTQZJ1RWrTQG0AN28RUepWINKCeLENykbu2nw=";
+  };
+
+  pythonImportsCheck = [
+    "aspy.refactor_imports"
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Utilities for refactoring imports in python-like syntax.";
+    homepage = "https://github.com/asottile/reorder_python_imports";
+    license = licenses.mit;
+    maintainers = with maintainers; [ gador ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/asyncmy/default.nix b/nixpkgs/pkgs/development/python-modules/asyncmy/default.nix
index 4d4eaaacaad7..6b680b75dcef 100644
--- a/nixpkgs/pkgs/development/python-modules/asyncmy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asyncmy/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "asyncmy";
-  version = "0.2.3";
+  version = "0.2.4";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "long2ice";
     repo = pname;
     rev = "v${version}";
-    sha256 = "ys9RYaosc4noJsWYsVo9+6W7JaG4r6lsz6UH4o08q4A=";
+    sha256 = "sha256-nuk8Zh82qN60FrH6Jjv7RDDDQsfZ5EmbaQe5EAcB2Tk=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/asyncsleepiq/default.nix b/nixpkgs/pkgs/development/python-modules/asyncsleepiq/default.nix
index 53bd099fce50..7eaac6490644 100644
--- a/nixpkgs/pkgs/development/python-modules/asyncsleepiq/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asyncsleepiq/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "asyncsleepiq";
-  version = "1.1.2";
+  version = "1.2.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-ZpxiFV9Ch46vIDxNDYm0BBD5EY8+j8AzOu6lKsQpGrY=";
+    sha256 = "sha256-pIfEdNmtnwA+PE3lXVd7Qd8Igj+/aqZmuDqFs60PxgY=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/asyncssh/default.nix b/nixpkgs/pkgs/development/python-modules/asyncssh/default.nix
index 2db70c162d26..3d00805537fe 100644
--- a/nixpkgs/pkgs/development/python-modules/asyncssh/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asyncssh/default.nix
@@ -19,14 +19,14 @@
 
 buildPythonPackage rec {
   pname = "asyncssh";
-  version = "2.9.0";
+  version = "2.10.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-PMM32AZhlGVFW/GH6KkeP1dUI3GBhOI4+a6MQcTzOvE=";
+    sha256 = "sha256-WF5JmDzHlXFB4D7p9IvRU2pepXFdCqHOnM4Ecobmaws=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/asyncstdlib/default.nix b/nixpkgs/pkgs/development/python-modules/asyncstdlib/default.nix
index ee261946a1ec..47cd54405f86 100644
--- a/nixpkgs/pkgs/development/python-modules/asyncstdlib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asyncstdlib/default.nix
@@ -8,15 +8,16 @@
 
 buildPythonPackage rec {
   pname = "asyncstdlib";
-  version = "3.10.3";
-  disabled = pythonOlder "3.7";
+  version = "3.10.4";
   format = "flit";
 
+  disabled = pythonOlder "3.7";
+
   src = fetchFromGitHub {
     owner = "maxfischer2781";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Q547XKsn4/U7XbDhZADF4qPpFxAGPmv9bAXSQZnNUIo=";
+    hash = "sha256-zPWXI5iHMCkSVjyNRcXplTadobYCeMv3Unjt+QVF8D8=";
   };
 
   propagatedBuildInputs = [
@@ -27,7 +28,9 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [ "asyncstdlib" ];
+  pythonImportsCheck = [
+    "asyncstdlib"
+  ];
 
   meta = with lib; {
     description = "Python library that extends the Python asyncio standard library";
diff --git a/nixpkgs/pkgs/development/python-modules/auth0-python/default.nix b/nixpkgs/pkgs/development/python-modules/auth0-python/default.nix
index 94a0044d3ac4..c6886dc8bed7 100644
--- a/nixpkgs/pkgs/development/python-modules/auth0-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/auth0-python/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "auth0-python";
-  version = "3.20.0";
+  version = "3.22.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-WIH2lMPehrqkXCh+JbEI5nf99nt61OwLhP/pF6BbsnQ=";
+    sha256 = "sha256-05yJbF6eXz+vJx+plY5gqzRRYL2SjDnF7gSfX6WIS4E=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aws-lambda-builders/default.nix b/nixpkgs/pkgs/development/python-modules/aws-lambda-builders/default.nix
index db168c9b325e..0aac1e71e7c4 100644
--- a/nixpkgs/pkgs/development/python-modules/aws-lambda-builders/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aws-lambda-builders/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "aws-lambda-builders";
-  version = "1.13.0";
+  version = "1.14.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "awslabs";
     repo = "aws-lambda-builders";
     rev = "v${version}";
-    sha256 = "sha256-t04g65TPeOYgEQw6kPJrlJN1ssQrsN9kl7g69J4pPwo=";
+    sha256 = "sha256-ypzo0cYvP8LV74cQMzHIFDk3LH0bbEB4UxPxRuqe2fc=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/awscrt/default.nix b/nixpkgs/pkgs/development/python-modules/awscrt/default.nix
index 6bc4c63aefb5..77c67e5a2aed 100644
--- a/nixpkgs/pkgs/development/python-modules/awscrt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/awscrt/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "awscrt";
-  version = "0.13.3";
+  version = "0.13.6";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-1GaKDpOGX/YbM4rByTw0nYgwHYFvOLHZ0GRvanX3vAU=";
+    hash = "sha256-aZ1Mquc4IfrdWjOaHMipjNb6gLGGbdKS8ah5b33eqGo=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-containerregistry/default.nix b/nixpkgs/pkgs/development/python-modules/azure-containerregistry/default.nix
new file mode 100644
index 000000000000..bc1aaf5f8bd1
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/azure-containerregistry/default.nix
@@ -0,0 +1,32 @@
+{ lib, buildPythonPackage, fetchPypi, pythonOlder
+, azure-core
+, msrest
+, msrestazure
+}:
+
+buildPythonPackage rec {
+  pname = "azure-containerregistry";
+  version = "1.0.0";
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-DIZCHZM5aeKtmJrgwAk5J26ltaxNxKUn3rR+FbmuyZc=";
+    extension = "zip";
+  };
+
+  propagatedBuildInputs = [ azure-core msrest msrestazure ];
+
+  # tests require azure-devtools which are not published (since 2020)
+  # https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/containerregistry/azure-containerregistry/dev_requirements.txt
+  doCheck = false;
+
+  pythonImportsCheck = [ "azure.core" "azure.containerregistry" ];
+
+  meta = with lib; {
+    description = "Microsoft Azure Container Registry client library for Python";
+    homepage = "https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/containerregistry/azure-containerregistry";
+    license = licenses.mit;
+    maintainers = with maintainers; [ peterromfeldhk ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/azure-core/default.nix b/nixpkgs/pkgs/development/python-modules/azure-core/default.nix
index 9a128d813489..b7d330e6eff9 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-core/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-core/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, isPy27
+{ lib, stdenv, buildPythonPackage, fetchPypi, isPy27
 , aiodns
 , aiohttp
 , flask
@@ -51,7 +51,18 @@ buildPythonPackage rec {
 
   pytestFlagsArray = [ "tests/" ];
   # disable tests which touch network
-  disabledTests = [ "aiohttp" "multipart_send" "response" "request" "timeout" ];
+  disabledTests = [
+    "aiohttp"
+    "multipart_send"
+    "response"
+    "request"
+    "timeout"
+  # disable 8 tests failing on some darwin machines with errors:
+  # azure.core.polling.base_polling.BadStatus: Invalid return status 403 for 'GET' operation
+  # azure.core.exceptions.HttpResponseError: Operation returned an invalid status 'Forbidden'
+  ] ++ lib.optional stdenv.isDarwin [
+    "location_polling_fail"
+  ];
   disabledTestPaths = [
     # requires testing modules which aren't published, and likely to create cyclic dependencies
     "tests/test_connection_string_parsing.py"
diff --git a/nixpkgs/pkgs/development/python-modules/azure-keyvault-administration/default.nix b/nixpkgs/pkgs/development/python-modules/azure-keyvault-administration/default.nix
index 788eaf70457d..838572d064ee 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-keyvault-administration/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-keyvault-administration/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "azure-keyvault-administration";
-  version = "4.0.0";
+  version = "4.1.0";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "b05a0372f35921cedb7a231426077745eee9a65881088de6d4d8b73d9709a6cb";
+    sha256 = "sha256-V8tppRExyvSt41nN+j2QoxGSund6RKvE4g5p6AWZ3qI=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-keyvault-certificates/default.nix b/nixpkgs/pkgs/development/python-modules/azure-keyvault-certificates/default.nix
index f1a6c5359d6b..4dba9f408b8d 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-keyvault-certificates/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-keyvault-certificates/default.nix
@@ -5,16 +5,20 @@
 , azure-core
 , msrest
 , msrestazure
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "azure-keyvault-certificates";
-  version = "4.3.0";
+  version = "4.4.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "4e0a9bae9fd4c222617fbce6b31f97e2e0622774479de3c387239cbfbb828d87";
+    hash = "sha256-DAFU84AbI4Tdf6TtYDZvSwrpERxf/MqHjQU2igBLh88=";
   };
 
   propagatedBuildInputs = [
@@ -24,11 +28,16 @@ buildPythonPackage rec {
     msrestazure
   ];
 
-  pythonNamespaces = [ "azure.keyvault" ];
+  pythonNamespaces = [
+    "azure.keyvault"
+  ];
 
   # has no tests
   doCheck = false;
-  pythonImportsCheck = [ "azure.keyvault.certificates" ];
+
+  pythonImportsCheck = [
+    "azure.keyvault.certificates"
+  ];
 
   meta = with lib; {
     description = "Microsoft Azure Key Vault Certificates Client Library for Python";
diff --git a/nixpkgs/pkgs/development/python-modules/azure-keyvault-keys/default.nix b/nixpkgs/pkgs/development/python-modules/azure-keyvault-keys/default.nix
index 59fcef4d4bf1..8ce81bc3d616 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-keyvault-keys/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-keyvault-keys/default.nix
@@ -1,4 +1,7 @@
-{ lib, buildPythonPackage, isPy27, fetchPypi
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchPypi
 , aiohttp
 , azure-common
 , azure-core
@@ -9,13 +12,15 @@
 
 buildPythonPackage rec {
   pname = "azure-keyvault-keys";
-  version = "4.4.0";
-  disabled = isPy27;
+  version = "4.5.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "7792ad0d5e63ad9eafa68bdce5de91b3ffcc7ca7a6afdc576785e6a2793caed0";
+    hash = "sha256-x1AhiARXZXcky3A+DJXoCrvkqsonlkgdrdr6es/VY3s=";
   };
 
   propagatedBuildInputs = [
@@ -25,11 +30,17 @@ buildPythonPackage rec {
     cryptography
   ];
 
-  pythonNamespaces = [ "azure.keyvault" ];
+  checkInputs = [
+    aiohttp
+    pytestCheckHook
+  ];
+
+  pythonNamespaces = [
+    "azure.keyvault"
+  ];
 
   # requires relative paths to utilities in the mono-repo
   doCheck = false;
-  checkInputs = [ aiohttp pytestCheckHook ];
 
   pythonImportsCheck = [
     "azure"
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-applicationinsights/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-applicationinsights/default.nix
index d71539efc232..78605fd429c2 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-applicationinsights/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-applicationinsights/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-applicationinsights";
-  version = "2.1.0";
+  version = "3.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "68deed8ee884dd0b9631804e8b9c65fcd94e8e01c7218beae96a9fe557d7a0d7";
+    sha256 = "sha256-K46J0WqQt4vwr1CE4yjxKUT/Atds5BLs0k8EjOA4yzA=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix
index ca662f6b1455..af3a30a117fd 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-cdn";
-  version = "11.0.0";
+  version = "12.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "28e7070001e7208cdb6c2ad253ec78851abdd73be482230d2c0874eed5bc0907";
+    sha256 = "sha256-t8PuIYkjS0r1Gs4pJJJ8X9cz8950imQtbVBABnyMnd0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix
index 08b810f752d1..ea12d27e56bc 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix
@@ -3,28 +3,30 @@
 , fetchPypi
 , azure-common
 , azure-mgmt-core
-, azure-mgmt-nspkg
 , msrestazure
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-cognitiveservices";
-  version = "13.0.0";
+  version = "13.1.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "dc6116e8394d45312c7ad5a9098ce0dd2370bd92d43afd33d8b3bfab724fa498";
+    hash = "sha256-FXS834v5uDGiEGcQMIv9iaHxhfcW9uY3VmX7l91Tfj4=";
   };
 
   propagatedBuildInputs = [
     msrestazure
     azure-common
     azure-mgmt-core
-    azure-mgmt-nspkg
   ];
 
-  # has no tests
+  # Module has no tests
   doCheck = false;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
index 57fe4655aeec..00e24a2d9f18 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
@@ -6,17 +6,20 @@
 , azure-common
 , azure-mgmt-core
 , azure-mgmt-nspkg
-, isPy3k
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-containerservice";
-  version = "17.0.0";
+  version = "18.0.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "sha256-oUbWdZryabCCg/gTujchT7p1nS7IDoU5W9MQ4ekJYH8=";
+    sha256 = "sha256-b4AwcnSp6JOtG8VaBbUN7d/NIhHN2TPnyjzCUVhMOzg=";
   };
 
   propagatedBuildInputs = [
@@ -24,14 +27,14 @@ buildPythonPackage rec {
     msrestazure
     azure-common
     azure-mgmt-core
-  ] ++ lib.optionals (!isPy3k) [
-    azure-mgmt-nspkg
   ];
 
   # has no tests
   doCheck = false;
 
-  pythonImportsCheck = [ "azure.mgmt.containerservice" ];
+  pythonImportsCheck = [
+    "azure.mgmt.containerservice"
+  ];
 
   meta = with lib; {
     description = "This is the Microsoft Azure Container Service Management Client Library";
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-monitor/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
index fae47547cc74..66818ce5b056 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
@@ -1,22 +1,24 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, isPy3k
+, pythonOlder
 , msrest
 , msrestazure
 , azure-common
 , azure-mgmt-core
-, azure-mgmt-nspkg
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-monitor";
-  version = "3.0.0";
+  version = "3.1.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "91ddb7333bf2b9541a53864cc8d2501e3694a03a9c0e41cbfae3348558675ce6";
+    hash = "sha256-ROcUAm0KgIjO2A2XBpS00IeEPgd8x4cjoMfn6X9C+Gw=";
   };
 
   propagatedBuildInputs = [
@@ -24,13 +26,13 @@ buildPythonPackage rec {
     msrestazure
     azure-common
     azure-mgmt-core
-  ] ++ lib.optionals (!isPy3k) [
-    azure-mgmt-nspkg
   ];
 
-  pythonNamespaces = [ "azure.mgmt" ];
+  pythonNamespaces = [
+    "azure.mgmt"
+  ];
 
-  # has no tests
+  # Module has no tests
   doCheck = false;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-resource/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-resource/default.nix
index 37a30147aa5f..761472b631ff 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-resource/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-resource/default.nix
@@ -8,14 +8,14 @@
 
 
 buildPythonPackage rec {
-  version = "20.1.0";
+  version = "21.0.0";
   pname = "azure-mgmt-resource";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "4fbb2158320e0bdd367882642f266a6dfb3b4b8610792b3afbbca39089f212d7";
+    sha256 = "sha256-y9J/UhxwtA/YO/Y88XsStbwD5ecNwrbnpxtevYuQDQM=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-signalr/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-signalr/default.nix
index 7abb6250ac61..baa318bba461 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-signalr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-signalr/default.nix
@@ -5,17 +5,20 @@
 , msrestazure
 , azure-common
 , azure-mgmt-core
-, azure-mgmt-nspkg
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-signalr";
-  version = "1.0.0";
+  version = "1.1.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "43fe90b5c5eb5aa00afcaf2895f1d4417f89ddb7f76bd61204e1253a6767ef7c";
+    hash = "sha256-lUNIDyP5W+8aIX7manfMqaO2IJJm/+2O+Buv+Bh4EZE=";
   };
 
   propagatedBuildInputs = [
@@ -23,7 +26,6 @@ buildPythonPackage rec {
     msrestazure
     azure-common
     azure-mgmt-core
-    azure-mgmt-nspkg
   ];
 
   # has no tests
diff --git a/nixpkgs/pkgs/development/python-modules/azure-multiapi-storage/default.nix b/nixpkgs/pkgs/development/python-modules/azure-multiapi-storage/default.nix
index ea6f47183abb..9bafac41ef33 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-multiapi-storage/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-multiapi-storage/default.nix
@@ -7,13 +7,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.7.0";
+  version = "0.8.0";
   pname = "azure-multiapi-storage";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "cd4f184be8c9ca8aca969f93ed50dc7fe556d28ca11520440fc182cf876abdf9";
+    sha256 = "sha256-ZRiqnxPRdSOqyRMwuvxqKiZcxMbhVEYJ09CIlepc/B4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix b/nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix
index 21920c32b4d2..680d23782f56 100644
--- a/nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/backports_functools_lru_cache/default.nix
@@ -3,10 +3,7 @@
 , fetchPypi
 , setuptools-scm
 , isPy3k
-, pytest
-, pytest-black
-, pytest-flake8
-, pytest-cov
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
@@ -20,12 +17,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [ setuptools-scm ];
 
-  checkInputs = [ pytest pytest-flake8 pytest-black pytest-cov ];
-  # ironically, they fail a linting test, and pytest.ini forces that test suite
-  checkPhase = ''
-    rm backports/functools_lru_cache.py
-    pytest -k 'not format'
-  '';
+  checkInputs = [ pytestCheckHook ];
 
   # Test fail on Python 2
   doCheck = isPy3k;
diff --git a/nixpkgs/pkgs/development/python-modules/beancount_docverif/default.nix b/nixpkgs/pkgs/development/python-modules/beancount_docverif/default.nix
index 44ebb5d94f01..b39b52970f01 100644
--- a/nixpkgs/pkgs/development/python-modules/beancount_docverif/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/beancount_docverif/default.nix
@@ -5,14 +5,14 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.0.0";
+  version = "1.0.1";
   pname = "beancount_docverif";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1kjc0axrxpvm828lqq5m2ikq0ls8xksbmm7312zw867gdx56x5aj";
+    sha256 = "sha256-CFBv1FZP5JO+1MPnD86ttrO42zZlvE157zqig7s4HOg=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/beartype/default.nix b/nixpkgs/pkgs/development/python-modules/beartype/default.nix
index 097971c9ce35..8aeda35741cf 100644
--- a/nixpkgs/pkgs/development/python-modules/beartype/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/beartype/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "beartype";
-  version = "0.10.2";
+  version = "0.10.4";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Lo1AUxj+QR7N2Tdif58zGBMSp5Pr0jmz2nacRDnLS5g=";
+    hash = "sha256-JOxp9qf05ul69APQjeJw3vMkhRgGAycJXSOxxN9kvyo=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/bidict/default.nix b/nixpkgs/pkgs/development/python-modules/bidict/default.nix
index 4b5ebc912b24..f59e6418fe91 100644
--- a/nixpkgs/pkgs/development/python-modules/bidict/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bidict/default.nix
@@ -13,13 +13,13 @@
 
 buildPythonPackage rec {
   pname = "bidict";
-  version = "0.21.4";
+  version = "0.22.0";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-QshP++b43omK9gc7S+nqfM7c1400dKqETFTknVoHn28=";
+    sha256 = "sha256-XIJrPhXpfMbmFd4pV1aEfCgqebecVDDTv8kJsayfW9g=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/bids-validator/default.nix b/nixpkgs/pkgs/development/python-modules/bids-validator/default.nix
index 4a0bd988c1ef..05dd93ffa032 100644
--- a/nixpkgs/pkgs/development/python-modules/bids-validator/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bids-validator/default.nix
@@ -4,12 +4,12 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.9.2";
+  version = "1.9.3";
   pname = "bids-validator";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-JxPOHeK8glWwAhYwlCVJtfWeMtU6KHgvNg5b2DgGxGc=";
+    sha256 = "sha256-ATJi4eCWV0i3Z8AsgV/DtiCn8Qzi2cMDtId5jXCoDL0=";
   };
 
   # needs packages which are not available in nixpkgs
diff --git a/nixpkgs/pkgs/development/python-modules/blinkpy/default.nix b/nixpkgs/pkgs/development/python-modules/blinkpy/default.nix
index 27b7ba03d450..ae509418b7b1 100644
--- a/nixpkgs/pkgs/development/python-modules/blinkpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/blinkpy/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "blinkpy";
-  version = "0.18.0";
+  version = "0.19.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "fronzbot";
     repo = "blinkpy";
     rev = "v${version}";
-    hash = "sha256-96HoGXVQE5PbUbu0oDOC0es0HXYig4ScTeexiUhGse4=";
+    hash = "sha256-niUGfktP1zVdrRCDy81ou4yAoscnYveHje9423IKcso=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/blis/default.nix b/nixpkgs/pkgs/development/python-modules/blis/default.nix
index e8e9962f9b4f..be41b2acb87c 100644
--- a/nixpkgs/pkgs/development/python-modules/blis/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/blis/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "blis";
-  version = "0.7.6";
+  version = "0.7.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-/pexD2ihx7VMDlS+rahOGPTvto3UDJBvuHSPURR0PsY=";
+    sha256 = "sha256-XUqB+UONt6GayOZK1BMx9lplnqjzuxiJqcIIjP2f4QQ=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/boltztrap2/default.nix b/nixpkgs/pkgs/development/python-modules/boltztrap2/default.nix
index f80a8deb9ab4..e697d97fea78 100644
--- a/nixpkgs/pkgs/development/python-modules/boltztrap2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/boltztrap2/default.nix
@@ -14,13 +14,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "20.7.1";
+  version = "22.3.2";
   pname = "BoltzTraP2";
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "41caa32e5778323471d87033f23537f6178a7aea64fba894c7f2b2579b51f7ed";
+    sha256 = "sha256-Yo37xdXxCQKkA+lrFEZp1DxjJy216Q6aYYT68PEx9JU=";
   };
 
   dontUseCmakeConfigure = true;
diff --git a/nixpkgs/pkgs/development/python-modules/boto/bug-953970_python3.8-compat.patch b/nixpkgs/pkgs/development/python-modules/boto/bug-953970_python3.8-compat.patch
new file mode 100644
index 000000000000..ac5621042375
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/boto/bug-953970_python3.8-compat.patch
@@ -0,0 +1,53 @@
+Index: python-boto/tests/unit/utils/test_utils.py
+===================================================================
+--- python-boto.orig/tests/unit/utils/test_utils.py
++++ python-boto/tests/unit/utils/test_utils.py
+@@ -85,7 +85,7 @@ class TestPassword(unittest.TestCase):
+         def hmac_hashfunc(cls, msg):
+             if not isinstance(msg, bytes):
+                 msg = msg.encode('utf-8')
+-            return hmac.new(b'mysecretkey', msg)
++            return hmac.new(b'mysecretkey', msg, digestmod='sha256')
+
+         class HMACPassword(Password):
+             hashfunc = hmac_hashfunc
+@@ -95,15 +95,15 @@ class TestPassword(unittest.TestCase):
+         password.set('foo')
+
+         self.assertEquals(str(password),
+-                          hmac.new(b'mysecretkey', b'foo').hexdigest())
++                          hmac.new(b'mysecretkey', b'foo', digestmod='sha256').hexdigest())
+
+     def test_constructor(self):
+-        hmac_hashfunc = lambda msg: hmac.new(b'mysecretkey', msg)
++        hmac_hashfunc = lambda msg: hmac.new(b'mysecretkey', msg, digestmod='sha256')
+
+         password = Password(hashfunc=hmac_hashfunc)
+         password.set('foo')
+         self.assertEquals(password.str,
+-                          hmac.new(b'mysecretkey', b'foo').hexdigest())
++                          hmac.new(b'mysecretkey', b'foo', digestmod='sha256').hexdigest())
+
+
+ class TestPythonizeName(unittest.TestCase):
+Index: python-boto/boto/ecs/item.py
+===================================================================
+--- python-boto.orig/boto/ecs/item.py
++++ python-boto/boto/ecs/item.py
+@@ -22,6 +22,7 @@
+
+ import xml.sax
+ import cgi
++from html import escape
+ from boto.compat import six, StringIO
+
+ class ResponseGroup(xml.sax.ContentHandler):
+@@ -67,7 +68,7 @@ class ResponseGroup(xml.sax.ContentHandl
+         return None
+
+     def endElement(self, name, value, connection):
+-        self._xml.write("%s</%s>" % (cgi.escape(value).replace("&amp;amp;", "&amp;"), name))
++        self._xml.write("%s</%s>" % (escape(value).replace("&amp;amp;", "&amp;"), name))
+         if len(self._nodepath) == 0:
+             return
+         obj = None
diff --git a/nixpkgs/pkgs/development/python-modules/boto/default.nix b/nixpkgs/pkgs/development/python-modules/boto/default.nix
index 5199ca645091..586f023f8009 100644
--- a/nixpkgs/pkgs/development/python-modules/boto/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/boto/default.nix
@@ -2,7 +2,6 @@
 , buildPythonPackage
 , fetchPypi
 , pythonAtLeast
-, isPy38
 , python
 , nose
 , mock
@@ -13,18 +12,23 @@
 buildPythonPackage rec {
   pname = "boto";
   version = "2.49.0";
-  disabled = pythonAtLeast "3.9"; # no longer compatible with hmac std lib package
+  disabled = pythonAtLeast "3.10"; # cannot import name 'Mapping' from 'collections'
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "ea0d3b40a2d852767be77ca343b58a9e3a4b00d9db440efb8da74b4e58025e5a";
   };
 
+  patches = [
+    # fixes hmac tests
+    # https://sources.debian.org/src/python-boto/2.49.0-4/debian/patches/bug-953970_python3.8-compat.patch/
+    ./bug-953970_python3.8-compat.patch
+  ];
+
   checkPhase = ''
     ${python.interpreter} tests/test.py default
   '';
 
-  doCheck = !isPy38; # hmac functionality has changed
   checkInputs = [ nose mock ];
   propagatedBuildInputs = [ requests httpretty ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/broadlink/default.nix b/nixpkgs/pkgs/development/python-modules/broadlink/default.nix
index dc1e4f37f3c4..ba635a39257d 100644
--- a/nixpkgs/pkgs/development/python-modules/broadlink/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/broadlink/default.nix
@@ -2,22 +2,26 @@
 , buildPythonPackage
 , fetchPypi
 , cryptography
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "broadlink";
-  version = "0.18.0";
+  version = "0.18.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "c66b3e4a097d6549f0fcc9ccdf289bd88f73f647ad9449e1c4e2958301ad1b04";
+    hash = "sha256-KMfL1mY4th87gjPrdhvzQjdXucgwSChsykOCO3cPAD8=";
   };
 
   propagatedBuildInputs = [
     cryptography
   ];
 
-  # no tests available
+  # Module has no tests
   doCheck = false;
 
   pythonImportsCheck = [
@@ -28,5 +32,6 @@ buildPythonPackage rec {
     description = "Python API for controlling Broadlink IR controllers";
     homepage =  "https://github.com/mjg59/python-broadlink";
     license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/brotli/default.nix b/nixpkgs/pkgs/development/python-modules/brotli/default.nix
index d4cff163a0b1..ad247be16185 100644
--- a/nixpkgs/pkgs/development/python-modules/brotli/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/brotli/default.nix
@@ -1,22 +1,23 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, pytestCheckHook }:
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "brotli";
   version = "1.0.9";
 
-  # PyPI doesn't contain tests so let's use GitHub
   src = fetchFromGitHub {
     owner = "google";
     repo = pname;
     rev = "v${version}";
     sha256 = "sha256-tFnXSXv8t3l3HX6GwWLhEtgpqz0c7Yom5U3k47pWM7o=";
-    # for some reason, the test data isn't captured in releases, force a git checkout
+    # .gitattributes is not correct or GitHub does not parse it correct and the archive is missing the test data
     forceFetchGit = true;
   };
 
+  # only returns information how to really build
   dontConfigure = true;
 
   checkInputs = [
@@ -31,6 +32,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/google/brotli";
     description = "Generic-purpose lossless compression algorithm";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/brotlicffi/default.nix b/nixpkgs/pkgs/development/python-modules/brotlicffi/default.nix
index f78598b751a6..5e0600d343a8 100644
--- a/nixpkgs/pkgs/development/python-modules/brotlicffi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/brotlicffi/default.nix
@@ -34,7 +34,7 @@ buildPythonPackage rec {
     export USE_SHARED_BROTLI=1
   '';
 
-  # Test data is not available, only when using libbortli git checkout
+  # Test data is not available, only when using libbrotli git checkout
   doCheck = false;
 
   pythonImportsCheck = [ "brotlicffi" ];
diff --git a/nixpkgs/pkgs/development/python-modules/bumps/default.nix b/nixpkgs/pkgs/development/python-modules/bumps/default.nix
index 6e0637d2a6bc..d1926c9631aa 100644
--- a/nixpkgs/pkgs/development/python-modules/bumps/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bumps/default.nix
@@ -1,24 +1,37 @@
-{ lib, buildPythonPackage, fetchPypi, six}:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, six
+}:
 
 buildPythonPackage rec {
   pname = "bumps";
-  version = "0.8.1";
+  version = "0.9.0";
+  format = "setuptools";
 
-  propagatedBuildInputs = [six];
-
-  # Bumps does not provide its own tests.py, so the test
-  # always fails
-  doCheck = false;
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f4f2ee712a1e468a2ce5c0a32f67739a83331f0cb7b9c50b9e7510daefc12169";
+    hash = "sha256-BY9kg0ksKfrpQgsl1aDDJJ+zKJmURqwTtKxlITxse+o=";
   };
 
+  propagatedBuildInputs = [
+    six
+  ];
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "bumps"
+  ];
+
   meta = with lib; {
-    homepage = "https://www.reflectometry.org/danse/software.html";
     description = "Data fitting with bayesian uncertainty analysis";
-    maintainers = with maintainers; [ rprospero ];
+    homepage = "https://bumps.readthedocs.io/";
     license = licenses.publicDomain;
+    maintainers = with maintainers; [ rprospero ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/capstone/default.nix b/nixpkgs/pkgs/development/python-modules/capstone/default.nix
index c99c392841eb..f1a37fb70a0f 100644
--- a/nixpkgs/pkgs/development/python-modules/capstone/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/capstone/default.nix
@@ -18,6 +18,10 @@ buildPythonPackage rec {
     substituteInPlace setup.py --replace manylinux1 manylinux2014
   '';
 
+  # aarch64 only available from MacOS SDK 11 onwards, so fix the version tag.
+  # otherwise, bdist_wheel may detect "macosx_10_6_arm64" which doesn't make sense.
+  setupPyBuildFlags = lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ "--plat-name" "macosx_11_0" ];
+
   propagatedBuildInputs = [ setuptools ];
 
   checkPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/catalogue/default.nix b/nixpkgs/pkgs/development/python-modules/catalogue/default.nix
index 7105e360561e..e47e77b9eb49 100644
--- a/nixpkgs/pkgs/development/python-modules/catalogue/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/catalogue/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "catalogue";
-  version = "2.0.6";
+  version = "2.0.7";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0idjhx2s8cy6ppd18k1zy246d97gdd6i217m5q26fwa47xh3asik";
+    sha256 = "sha256-U10zrnnr0hyimFUdhdoYaui44d82sPsCRtp3QWPsLWs=";
   };
 
   propagatedBuildInputs = lib.optionals (pythonOlder "3.8") [
diff --git a/nixpkgs/pkgs/development/python-modules/certifi/default.nix b/nixpkgs/pkgs/development/python-modules/certifi/default.nix
index 68a0ca42986e..bc361806d87a 100644
--- a/nixpkgs/pkgs/development/python-modules/certifi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/certifi/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, isPy27
+, pythonOlder
 , fetchFromGitHub
 , pytestCheckHook
 }:
@@ -9,7 +9,7 @@ buildPythonPackage rec {
   pname = "certifi";
   version = "2021.10.08";
 
-  disabled = isPy27;
+  disabled = pythonOlder "3.5";
 
   src = fetchFromGitHub {
     owner = pname;
@@ -28,6 +28,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/certifi/python-certifi";
     description = "Python package for providing Mozilla's CA Bundle";
     license = licenses.isc;
-    maintainers = with maintainers; [ koral ];
+    maintainers = with maintainers; [ koral SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/check-manifest/default.nix b/nixpkgs/pkgs/development/python-modules/check-manifest/default.nix
index d55f5155b451..6c91633e8af0 100644
--- a/nixpkgs/pkgs/development/python-modules/check-manifest/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/check-manifest/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "check-manifest";
-  version = "0.47";
+  version = "0.48";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-VtrdJgqcfVULFZeW0olLbQvMF2qUy8Qm2buT5eSNEs4=";
+    hash = "sha256-O1dfHa3nvrMHjvS/M6lFGYNEV8coHbxyaxXFRmtVxlc=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/chess/default.nix b/nixpkgs/pkgs/development/python-modules/chess/default.nix
index 9330a4b49e84..77b30071c070 100644
--- a/nixpkgs/pkgs/development/python-modules/chess/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/chess/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "chess";
-  version = "1.8.0";
+  version = "1.9.0";
 
   disabled = pythonOlder "3.7";
 
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     owner = "niklasf";
     repo = "python-${pname}";
     rev = "v${version}";
-    sha256 = "sha256-ghBX0yRnggXliVREtrGxB/Xf0JWICeIi8XriSxS26Go=";
+    sha256 = "sha256-2/6pHU4gJnnVdO2KyXBe/RAbnEIuc2AY+h4TO70qiRk=";
   };
 
   pythonImportsCheck = [ "chess" ];
diff --git a/nixpkgs/pkgs/development/python-modules/claripy/default.nix b/nixpkgs/pkgs/development/python-modules/claripy/default.nix
index 10f5762f0c48..9816ff3782b3 100644
--- a/nixpkgs/pkgs/development/python-modules/claripy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/claripy/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "claripy";
-  version = "9.1.11752";
+  version = "9.1.12332";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Z50oKwS0MZVBEUeXfj9cgtPYXFAYf4i7QkgJiXdWrxo=";
+    sha256 = "sha256-YrR8OkDoop6kHAuk4cM4STYYOjjaMLZCQuE07/5IXqs=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/cle/default.nix b/nixpkgs/pkgs/development/python-modules/cle/default.nix
index e1b1b3b0bf4e..6c8126172c05 100644
--- a/nixpkgs/pkgs/development/python-modules/cle/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cle/default.nix
@@ -15,7 +15,7 @@
 
 let
   # The binaries are following the argr projects release cycle
-  version = "9.1.11752";
+  version = "9.1.12332";
 
   # Binary files from https://github.com/angr/binaries (only used for testing and only here)
   binaries = fetchFromGitHub {
@@ -37,7 +37,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-pnbFnv/te7U2jB6gNRvE9DQssBkFsara1g6Gtqf+WVo=";
+    hash = "sha256-xcj6Skzzmw5g+0KsBMLNOhRyXQA7nbgnc9YyfJLteCM=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/click/default.nix b/nixpkgs/pkgs/development/python-modules/click/default.nix
index 3e2e8b6e24f1..6d865307f9be 100644
--- a/nixpkgs/pkgs/development/python-modules/click/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/click/default.nix
@@ -5,6 +5,14 @@
 , importlib-metadata
 , locale
 , pytestCheckHook
+
+# large-rebuild downstream dependencies
+, flask
+, black
+
+# applications
+, magic-wormhole
+, mitmproxy
 }:
 
 buildPythonPackage rec {
@@ -29,6 +37,10 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  passthru.tests = {
+    inherit black flask magic-wormhole mitmproxy;
+  };
+
   meta = with lib; {
     homepage = "https://click.palletsprojects.com/";
     description = "Create beautiful command line interfaces in Python";
@@ -37,5 +49,6 @@ buildPythonPackage rec {
       composable way, with as little code as necessary.
     '';
     license = licenses.bsd3;
+    maintainers = with maintainers; [ SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/cloudscraper/default.nix b/nixpkgs/pkgs/development/python-modules/cloudscraper/default.nix
index cd11aa03f863..6f693f369cda 100644
--- a/nixpkgs/pkgs/development/python-modules/cloudscraper/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cloudscraper/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, isPy3k
+, pythonOlder
 , fetchPypi
 , requests
 , requests-toolbelt
@@ -9,12 +9,14 @@
 
 buildPythonPackage rec {
   pname = "cloudscraper";
-  version = "1.2.58";
-  disabled = !isPy3k;
+  version = "1.2.60";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1wnzv2k8cm8q1x18r4zg8pcnpm4gsdp82hywwjimp2v2qll918nx";
+    hash = "sha256-DTQTsv/59895UTsMmqxYtSfFosUWPRx8wMT4zKHQ9Oc=";
   };
 
   propagatedBuildInputs = [
@@ -27,10 +29,12 @@ buildPythonPackage rec {
   # nixpkgs yet, and also aren't included in the PyPI bundle.  TODO.
   doCheck = false;
 
-  pythonImportsCheck = [ "cloudscraper" ];
+  pythonImportsCheck = [
+    "cloudscraper"
+  ];
 
   meta = with lib; {
-    description = "A Python module to bypass Cloudflare's anti-bot page";
+    description = "Python module to bypass Cloudflare's anti-bot page";
     homepage = "https://github.com/venomous/cloudscraper";
     license = licenses.mit;
     maintainers = with maintainers; [ kini ];
diff --git a/nixpkgs/pkgs/development/python-modules/cloudsmith-api/default.nix b/nixpkgs/pkgs/development/python-modules/cloudsmith-api/default.nix
index 92e5a71ee80d..032035506005 100644
--- a/nixpkgs/pkgs/development/python-modules/cloudsmith-api/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cloudsmith-api/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "cloudsmith-api";
-  version = "1.33.7";
+  version = "1.42.3";
 
   format = "wheel";
 
   src = fetchPypi {
     pname = "cloudsmith_api";
     inherit format version;
-    sha256 = "sha256-KNm2O2kZg+YzjtebsBoL7BOHCuffDELXm2k8vIFtKdk=";
+    sha256 = "sha256-P0QuKkyFk3jvYJwtul0/eUTrDyj2QKAjU/Ac+4VCYYk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/coqui-trainer/default.nix b/nixpkgs/pkgs/development/python-modules/coqui-trainer/default.nix
index 5ff53b8eb753..3c447db0a0e1 100644
--- a/nixpkgs/pkgs/development/python-modules/coqui-trainer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/coqui-trainer/default.nix
@@ -1,6 +1,8 @@
 { lib
 , buildPythonPackage
+, fetchpatch
 , fetchFromGitHub
+, pythonAtLeast
 
 , coqpit
 , fsspec
@@ -8,41 +10,46 @@
 
 , pytestCheckHook
 , soundfile
-, tensorboardx
-, torchvision
+, torchvision-bin
 }:
 
 let
   pname = "coqui-trainer";
-  version = "0.0.4";
+  version = "0.0.5";
 in
 buildPythonPackage {
   inherit pname version;
   format = "pyproject";
 
+  disabled = pythonAtLeast "3.10"; # https://github.com/coqui-ai/Trainer/issues/22
+
   src = fetchFromGitHub {
     owner = "coqui-ai";
     repo = "Trainer";
-    # https://github.com/coqui-ai/Trainer/issues/4
-    rev = "776eba829231543d3207927fc69b321d121e527c";
-    hash = "sha256-ICveftJjBNsCgegTmd/ewd/Y6XGMg7YOvchx640RFPI=";
+    rev = "v${version}";
+    hash = "sha256-NsgCh+N2qWmRkTOjXqisVCP5aInH2zcNz6lsnIfVLiY=";
   };
 
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/coqui-ai/Trainer/commit/07b447abf3290c8f2e5e723687b8a480b7382265.patch";
+      sha256 = "0v1hl784d9rghkblcfwgzp0gg9d6r5r0yv2kapzdz2qymiajy7y2";
+    })
+  ];
+
   propagatedBuildInputs = [
     coqpit
     fsspec
     pytorch-bin
     soundfile
-    tensorboardx
   ];
 
-  # tests are failing; tests require the clearml library
-  # https://github.com/coqui-ai/Trainer/issues/5
+  # only one test and that requires training data from the internet
   doCheck = false;
 
   checkInputs = [
     pytestCheckHook
-    torchvision
+    torchvision-bin
   ];
 
   pythonImportsCheck = [
diff --git a/nixpkgs/pkgs/development/python-modules/cvxopt/default.nix b/nixpkgs/pkgs/development/python-modules/cvxopt/default.nix
index 70c29e1f30be..dfae672f95e0 100644
--- a/nixpkgs/pkgs/development/python-modules/cvxopt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cvxopt/default.nix
@@ -17,13 +17,13 @@ assert (!blas.isILP64) && (!lapack.isILP64);
 
 buildPythonPackage rec {
   pname = "cvxopt";
-  version = "1.2.7";
+  version = "1.3.0";
 
   disabled = isPyPy; # hangs at [translation:info]
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "3f9db1f4d4e820aaea81d6fc21054c89dc6327c84f935dd5a1eda1af11e1d504";
+    sha256 = "sha256-ALGyMvnR+QLVeKnXWBS2f6AgdY1a5CLijKjO9iafpcY=";
   };
 
   buildInputs = [ blas lapack ];
diff --git a/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix b/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix
index 196d3b913776..2a4fd2cef42b 100644
--- a/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix
@@ -10,13 +10,13 @@
 
 buildPythonPackage rec {
   pname = "dataclasses-json";
-  version = "0.5.6";
+  version = "0.5.7";
 
   src = fetchFromGitHub {
     owner = "lidatong";
     repo = pname;
     rev = "v${version}";
-    sha256 = "09253p0zjqfaqap7jgfgjl1jswwnz7mb6x7dqix09id92mnb89mf";
+    sha256 = "1xv9br6mm5pcwfy10ykbc1c0n83fqyj1pa81z272kqww7wpkkp6j";
   };
 
   propagatedBuildInputs = [
@@ -30,11 +30,6 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  disabledTests = [
-    # AssertionError: Type annotations check failed
-    "test_type_hints"
-  ];
-
   pythonImportsCheck = [ "dataclasses_json" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/datasette/default.nix b/nixpkgs/pkgs/development/python-modules/datasette/default.nix
index 481f4c58b3ff..f2a0d531a0a7 100644
--- a/nixpkgs/pkgs/development/python-modules/datasette/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/datasette/default.nix
@@ -30,7 +30,7 @@
 
 buildPythonPackage rec {
   pname = "datasette";
-  version = "0.60.2";
+  version = "0.61.1";
 
   disabled = pythonOlder "3.6";
 
@@ -38,7 +38,7 @@ buildPythonPackage rec {
     owner = "simonw";
     repo = pname;
     rev = version;
-    sha256 = "sha256-GehtjukmSVHffAnDeDwjopgnuycD1CLQRHzLtO1iLsE=";
+    sha256 = "sha256-HVzMyF4ujYK12UQ25il/XROPo+iBldsMxOTx+duoc5o=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/debugpy/default.nix b/nixpkgs/pkgs/development/python-modules/debugpy/default.nix
index dc58d8f7b039..9f6026ce7360 100644
--- a/nixpkgs/pkgs/development/python-modules/debugpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/debugpy/default.nix
@@ -18,14 +18,14 @@
 
 buildPythonPackage rec {
   pname = "debugpy";
-  version = "1.5.1";
+  version = "1.6.0";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "Microsoft";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-dPP4stLt5nl9B9afPmH6/hpGKXBsaTpvYZQSHxU6KaY=";
+    sha256 = "sha256-WfZz2SimOTpG8CWNUic8NSp4Qd2JTXk+7JSUEPhuQ6Q=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/desktop-notifier/default.nix b/nixpkgs/pkgs/development/python-modules/desktop-notifier/default.nix
index 51d041e3a808..e0463a6c30c8 100644
--- a/nixpkgs/pkgs/development/python-modules/desktop-notifier/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/desktop-notifier/default.nix
@@ -10,14 +10,15 @@
 
 buildPythonPackage rec {
   pname = "desktop-notifier";
-  version = "3.3.2";
+  version = "3.3.5";
+  format = "pyproject";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "SamSchott";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-h7an/Fm9pNnThCHXg9PAKG822dqXE/CUuW8lDJlwMfw=";
+    sha256 = "sha256-tXvA1EddTrOcTupQqZrX58jXiAqB5gMJP+OE3fZxGJI=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/diff-cover/default.nix b/nixpkgs/pkgs/development/python-modules/diff-cover/default.nix
index 5414f7522dbe..cbb44fb7ca4f 100644
--- a/nixpkgs/pkgs/development/python-modules/diff-cover/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/diff-cover/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "diff-cover";
-  version = "6.4.4";
+  version = "6.4.5";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "diff_cover";
     inherit version;
-    sha256 = "b1d782c1ce53ad4b2c5545f8b7aa799eb61a0b12a62b376a18e2313c6f2d77f1";
+    sha256 = "sha256-qUuMHBfcJEmJF/con+ODtFfYrU7yo//KgKiSpByLWKY=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/discogs-client/default.nix b/nixpkgs/pkgs/development/python-modules/discogs-client/default.nix
index f4940cf7c615..0295735abd75 100644
--- a/nixpkgs/pkgs/development/python-modules/discogs-client/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/discogs-client/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "discogs-client";
-  version = "2.3.13";
+  version = "2.3.14";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "joalla";
     repo = "discogs_client";
     rev = "v${version}";
-    sha256 = "sha256-TOja0pCJv8TAI0ns8M/tamZ5Pp8k5sSKDnvN4SeKtW8=";
+    sha256 = "sha256-HJxqTwZ9byjZxdftQPTkVo0Ufio9gNGH69q5Q2gYR00=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/dnspython/default.nix b/nixpkgs/pkgs/development/python-modules/dnspython/default.nix
index 40b3d7a36dec..59730bff71ec 100644
--- a/nixpkgs/pkgs/development/python-modules/dnspython/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dnspython/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , buildPythonPackage
 , fetchPypi
 , pythonOlder
@@ -24,6 +25,11 @@ buildPythonPackage rec {
   disabledTests = [
     # dns.exception.SyntaxError: protocol not found
     "test_misc_good_WKS_text"
+  ] ++ lib.optionals stdenv.isDarwin [
+    # unable to get local issuer certificate
+    "test_async"
+    "test_query"
+    "test_resolver_override"
   ];
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/docplex/default.nix b/nixpkgs/pkgs/development/python-modules/docplex/default.nix
index b7b0231a806e..5f64ee3a6fe7 100644
--- a/nixpkgs/pkgs/development/python-modules/docplex/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/docplex/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "docplex";
-  version = "2.22.213";
+  version = "2.23.222";
 
   # No source available from official repo
   src = fetchPypi {
     inherit pname version;
-    sha256 = "8a86bba42b5b65f2e0f88ed350115efeb783b444661e2cfcf3a67d5c59bcb0bd";
+    sha256 = "sha256-c5XpfEGTkojgzk+ATHCSzzh04zeEVJEEKBp+lPfS+x4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/docx2txt/default.nix b/nixpkgs/pkgs/development/python-modules/docx2txt/default.nix
new file mode 100644
index 000000000000..6b3c2777d78c
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/docx2txt/default.nix
@@ -0,0 +1,26 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "docx2txt";
+  version = "0.8";
+  format = "setuptools";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-LAbZjXz+LTlH5XYKV9kk4/8HdFs3nIc3cjki5wCSNuU=";
+  };
+
+  pythonImportsCheck = [
+    "docx2txt"
+  ];
+
+  meta = with lib; {
+    description = "A pure python-based utility to extract text and images from docx files";
+    homepage = "https://github.com/ankushshah89/python-docx2txt";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ilkecan ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/dulwich/default.nix b/nixpkgs/pkgs/development/python-modules/dulwich/default.nix
index ad0a853af226..a255d3c4f9b9 100644
--- a/nixpkgs/pkgs/development/python-modules/dulwich/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dulwich/default.nix
@@ -16,7 +16,7 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.20.32";
+  version = "0.20.35";
   pname = "dulwich";
   format = "setuptools";
 
@@ -24,7 +24,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-3FSYsHK9wSwe/+9LYgLNKkVCuxxtu03c/IxtU+CLSIw=";
+    hash = "sha256-lT9jAanfigkfqI1V7tOUqIv5mIzei+NBd1NUkQkYwZY=";
   };
 
   LC_ALL = "en_US.UTF-8";
diff --git a/nixpkgs/pkgs/development/python-modules/dunamai/default.nix b/nixpkgs/pkgs/development/python-modules/dunamai/default.nix
new file mode 100644
index 000000000000..f4a24a7a7f8a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/dunamai/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, poetry-core
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, importlib-metadata
+, packaging
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "dunamai";
+  version = "1.10.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "mtkennerly";
+    repo = "dunamai";
+    rev = "v${version}";
+    sha256 = "sha256-Sp0yfNkFwNc2qR9aSPteBqZcqRokM9whOVmduXVK3CI=";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    packaging
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    importlib-metadata
+  ];
+
+  # needs to be able to run dunami from PATH
+  preCheck = ''
+    export PATH=$PATH:$out/bin
+  '';
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "dunamai" ];
+
+  meta = with lib; {
+    description = "Dynamic version generation";
+    homepage = "https://github.com/mtkennerly/dunamai";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jmgilman ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/editorconfig/default.nix b/nixpkgs/pkgs/development/python-modules/editorconfig/default.nix
index 6449a3da767c..32e446d71a3b 100644
--- a/nixpkgs/pkgs/development/python-modules/editorconfig/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/editorconfig/default.nix
@@ -1,20 +1,35 @@
 { lib
 , buildPythonPackage
-, fetchgit
+, fetchFromGitHub
 , cmake
 }:
 
+let
+  tests = fetchFromGitHub {
+    owner = "editorconfig";
+    repo = "editorconfig-core-test";
+    rev = "e407c1592df0f8e91664835324dea85146f20189";
+    sha256 = "sha256-9WSEkMJOewPqJjB6f7J6Ir0L+U712hkaN+GszjnGw7c=";
+  };
+in
 buildPythonPackage rec {
   pname = "editorconfig";
   version = "0.12.3";
 
-  # fetchgit used to ensure test submodule is available
-  src = fetchgit {
-    url = "https://github.com/editorconfig/editorconfig-core-py";
-    rev = "1a8fb62b9941fded9e4fb83a3d0599427f5484cb"; # Not tagged
-    sha256 = "0vx8rl7kii72965jsi01mdsz9rfi1q9bwy13x47iaqm6rmcwc1rb";
+  src = fetchFromGitHub {
+    owner = "editorconfig";
+    repo = "editorconfig-core-py";
+    rev = "v${version}";
+    sha256 = "sha256-ZwoTMgk18+BpPNtXKQUMXGcl2Lp+1RQVyPHgk6gHWh8=";
+    # workaround until https://github.com/editorconfig/editorconfig-core-py/pull/40 is merged
+    # fetchSubmodules = true;
   };
 
+  postUnpack = ''
+    cp -r ${tests}/* source/tests
+    chmod +w -R source/tests
+  '';
+
   nativeBuildInputs = [
     cmake
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/elastic-apm/default.nix b/nixpkgs/pkgs/development/python-modules/elastic-apm/default.nix
index f273b1a6428c..ea14989dbb13 100644
--- a/nixpkgs/pkgs/development/python-modules/elastic-apm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/elastic-apm/default.nix
@@ -28,7 +28,7 @@
 
 buildPythonPackage rec {
   pname = "elastic-apm";
-  version = "6.8.0";
+  version = "6.8.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -37,7 +37,7 @@ buildPythonPackage rec {
     owner = "elastic";
     repo = "apm-agent-python";
     rev = "v${version}";
-    sha256 = "sha256-5G+ALFDEClItXvSQFGari0QdhW+RGV8FukxUoxqphFg=";
+    sha256 = "sha256-bH7XCk1jPsGalFQ68rQhSyZv9nCZE+xUJyWX828PQQI=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/elementpath/default.nix b/nixpkgs/pkgs/development/python-modules/elementpath/default.nix
index 4dc34f92365e..e756701ab4e4 100644
--- a/nixpkgs/pkgs/development/python-modules/elementpath/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/elementpath/default.nix
@@ -6,7 +6,7 @@
 
 buildPythonPackage rec {
   pname = "elementpath";
-  version = "2.4.0";
+  version = "2.5.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     owner = "sissaschool";
     repo = "elementpath";
     rev = "v${version}";
-    sha256 = "1f3w5zyvrkl4gab81i5z9b41ybs54b37znj5r7hrcf25x8hrqgvv";
+    sha256 = "sha256-I2Vg0rpCFH1Z+N+JgtDv2se6lXsggzOsJn3Fj252aTQ=";
   };
 
   # avoid circular dependency with xmlschema which directly depends on this
diff --git a/nixpkgs/pkgs/development/python-modules/elkm1-lib/default.nix b/nixpkgs/pkgs/development/python-modules/elkm1-lib/default.nix
index 6e30203ad0f8..6b877a58dd0b 100644
--- a/nixpkgs/pkgs/development/python-modules/elkm1-lib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/elkm1-lib/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "elkm1-lib";
-  version = "1.2.0";
+  version = "1.2.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "gwww";
     repo = "elkm1";
     rev = version;
-    hash = "sha256-+rFW7qFpay/ebUz9EEB8nn0kuqVtVmG5ZHOWG2bMPts=";
+    hash = "sha256-Jr9f+essHB1FkzD6zM0G6jgE9C9lfDJuFIPrKRhVt+g=";
   };
 
   nativeBuildInputs = [
@@ -36,7 +36,9 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [ "elkm1_lib" ];
+  pythonImportsCheck = [
+    "elkm1_lib"
+  ];
 
   meta = with lib; {
     description = "Python module for interacting with ElkM1 alarm/automation panel";
diff --git a/nixpkgs/pkgs/development/python-modules/env-canada/default.nix b/nixpkgs/pkgs/development/python-modules/env-canada/default.nix
index 32b3098ffc73..18047eb719aa 100644
--- a/nixpkgs/pkgs/development/python-modules/env-canada/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/env-canada/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "env-canada";
-  version = "0.5.20";
+  version = "0.5.21";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "michaeldavie";
     repo = "env_canada";
     rev = "v${version}";
-    sha256 = "sha256-gYl5+rtOzci3nhgP74VM37tNk9pPWgcNBfcSSG1fSJs=";
+    sha256 = "sha256-jildWpYWll5j7siYhNECMBjz9bF41xFA6NyydWNdgQE=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/etuples/default.nix b/nixpkgs/pkgs/development/python-modules/etuples/default.nix
index bfb4552732b2..5ad7696ae1cf 100644
--- a/nixpkgs/pkgs/development/python-modules/etuples/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/etuples/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "etuples";
-  version = "0.3.4";
+  version = "0.3.5";
 
   src = fetchFromGitHub {
     owner = "pythological";
     repo = "etuples";
-    rev = "35d760ceb64ec318f302a6e4d3a4a80feda97a9e";
-    sha256 = "sha256-CXD8MhsdWYAcG5WDVTT/A2HDtiO1xfQbrwlYVnxXpBU=";
+    rev = "v${version}";
+    sha256 = "sha256-gJNxrO2d/eF4t3bBlz/BwF+9eT1nKrVrTP3F6/dEN00=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/evdev/default.nix b/nixpkgs/pkgs/development/python-modules/evdev/default.nix
index 1a3f2a0e642e..86149cbd865a 100644
--- a/nixpkgs/pkgs/development/python-modules/evdev/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/evdev/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "evdev";
-  version = "1.4.0";
+  version = "1.5.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "8782740eb1a86b187334c07feb5127d3faa0b236e113206dfe3ae8f77fb1aaf1";
+    sha256 = "sha256-WzOxdPfIRXbn3WBx5Di/WtIn2pXv1DVqOf5Mg1VBL+Y=";
   };
 
   buildInputs = [ linuxHeaders ];
diff --git a/nixpkgs/pkgs/development/python-modules/fakeredis/default.nix b/nixpkgs/pkgs/development/python-modules/fakeredis/default.nix
index 3127ac0dcdbf..5860a959afcd 100644
--- a/nixpkgs/pkgs/development/python-modules/fakeredis/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fakeredis/default.nix
@@ -3,7 +3,6 @@
 , async_generator
 , buildPythonPackage
 , fetchPypi
-, fetchpatch
 , hypothesis
 , lupa
 , pytest-asyncio
@@ -17,29 +16,16 @@
 
 buildPythonPackage rec {
   pname = "fakeredis";
-  version = "1.7.0";
-
+  version = "1.7.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-yb0S5DAzbL0+GJ+uDpHrmZl7k+dtv91u1n+jUtxoTHE=";
+    hash = "sha256-fCxLobQuCnUzfFS3d78GcQVrRWllDj/5J+S5s4WvyOw=";
   };
 
-  patches = [
-    (fetchpatch {
-      # redis 4.1.0 compatibility
-      # https://github.com/jamesls/fakeredis/pull/324
-      url = "https://github.com/jamesls/fakeredis/commit/8ef8dc6dacc9baf571d66a25ffbf0fadd7c70f78.patch";
-      sha256 = "sha256:03xlqmwq8nkzisrjk7y51j2jd6qdin8nbj5n9hc4wjabbvlgx4qr";
-      excludes = [
-        "setup.cfg"
-      ];
-    })
-  ];
-
   propagatedBuildInputs = [
     aioredis
     lupa
@@ -60,11 +46,6 @@ buildPythonPackage rec {
     "fakeredis"
   ];
 
-  postPatch = ''
-    substituteInPlace setup.cfg \
-      --replace "redis<4.1.0" "redis"
-  '';
-
   meta = with lib; {
     description = "Fake implementation of Redis API";
     homepage = "https://github.com/jamesls/fakeredis";
diff --git a/nixpkgs/pkgs/development/python-modules/faraday-plugins/default.nix b/nixpkgs/pkgs/development/python-modules/faraday-plugins/default.nix
index 01857660a749..42f8a4860509 100644
--- a/nixpkgs/pkgs/development/python-modules/faraday-plugins/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/faraday-plugins/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "faraday-plugins";
-  version = "1.6.0";
+  version = "1.6.1";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "infobyte";
     repo = "faraday_plugins";
     rev = "v${version}";
-    sha256 = "sha256-mvYbX8puqcT9kl1Abi785ptmmg9CxKZVTO6gPpk4sKU=";
+    sha256 = "sha256-NpPVA+fruI/xX0KMjRuRuMK8HYc/0ErbDhJOCNXKhyY=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/fastcore/default.nix b/nixpkgs/pkgs/development/python-modules/fastcore/default.nix
index 9d0ce4f2ec72..2e43ab9a15d2 100644
--- a/nixpkgs/pkgs/development/python-modules/fastcore/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fastcore/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "fastcore";
-  version = "1.3.29";
+  version = "1.4.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "fastai";
     repo = pname;
     rev = version;
-    sha256 = "sha256-V5mJJqWsCy8Wes8VzEkCKeb2/1ahvtbUO80R8IFLvNU=";
+    sha256 = "sha256-U7tZkqfBbl5IVZlC2/JBIx7Bm5iIiXTMSm0QHmzNiys=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/flake8-blind-except/default.nix b/nixpkgs/pkgs/development/python-modules/flake8-blind-except/default.nix
index c3974d0e007b..ee3f46d078ca 100644
--- a/nixpkgs/pkgs/development/python-modules/flake8-blind-except/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flake8-blind-except/default.nix
@@ -1,16 +1,32 @@
-{ lib, fetchPypi, buildPythonPackage }:
+{ lib
+, fetchPypi
+, buildPythonPackage
+, pythonOlder
+}:
 
 buildPythonPackage rec {
   pname = "flake8-blind-except";
-  version = "0.2.0";
+  version = "0.2.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
   src = fetchPypi {
     inherit pname version;
-    sha256 = "02a860a1a19cb602c006a3fe0778035b0d14d3f57929b4b798bc7d6684f204e5";
+    hash = "sha256-8lpXWp3LPus8dgv5wi22C4taIxICJO0fqppD913X3RY=";
   };
-  meta = {
-    homepage = "https://github.com/elijahandrews/flake8-blind-except";
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "flake8_blind_except"
+  ];
+
+  meta = with lib; {
     description = "A flake8 extension that checks for blind except: statements";
-    maintainers = with lib.maintainers; [ johbo ];
-    license = lib.licenses.mit;
+    homepage = "https://github.com/elijahandrews/flake8-blind-except";
+    license = licenses.mit;
+    maintainers = with maintainers; [ johbo ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/flake8-bugbear/default.nix b/nixpkgs/pkgs/development/python-modules/flake8-bugbear/default.nix
index 083abcaf6b8c..ef014011bdff 100644
--- a/nixpkgs/pkgs/development/python-modules/flake8-bugbear/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flake8-bugbear/default.nix
@@ -10,13 +10,13 @@
 
 buildPythonPackage rec {
   pname = "flake8-bugbear";
-  version = "22.1.11";
+  version = "22.3.23";
 
   src = fetchFromGitHub {
     owner = "PyCQA";
     repo = pname;
     rev = version;
-    sha256 = "sha256-sTg69Hgvi77wtLWEH4JtcIAMFk7exr5CBXmyS0nE5Vc=";
+    sha256 = "sha256-s1EnPM2He+R+vafu14XI1Xuft8Rg6W3vPH2Atc6N7I0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/flask/default.nix b/nixpkgs/pkgs/development/python-modules/flask/default.nix
index cf1079166b08..6c05367b3d47 100644
--- a/nixpkgs/pkgs/development/python-modules/flask/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flask/default.nix
@@ -38,7 +38,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    homepage = "http://flask.pocoo.org/";
+    homepage = "https://flask.palletsprojects.com/";
     description = "The Python micro framework for building web applications";
     longDescription = ''
       Flask is a lightweight WSGI web application framework. It is
diff --git a/nixpkgs/pkgs/development/python-modules/flatdict/default.nix b/nixpkgs/pkgs/development/python-modules/flatdict/default.nix
new file mode 100644
index 000000000000..186118d30100
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/flatdict/default.nix
@@ -0,0 +1,27 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+}:
+
+buildPythonPackage rec {
+  pname = "flatdict";
+  version = "4.0.0";
+
+  src = fetchFromGitHub {
+    owner = "gmr";
+    repo = pname;
+    rev = version;
+    hash = "sha256-qH4MMDSXf92BPavnRdCka6lRoWZg+2KnHpHA8kt5JaM=";
+  };
+
+  pythonImportsCheck = [
+    "flatdict"
+  ];
+
+  meta = with lib; {
+    description = "Python module for interacting with nested dicts as a single level dict with delimited keys";
+    homepage = "https://github.com/gmr/flatdict";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ lovesegfault ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/forecast-solar/default.nix b/nixpkgs/pkgs/development/python-modules/forecast-solar/default.nix
index 6a77f57acf92..a1d3741584ca 100644
--- a/nixpkgs/pkgs/development/python-modules/forecast-solar/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/forecast-solar/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "forecast-solar";
-  version = "2.1.0";
+  version = "2.2.0";
 
   src = fetchFromGitHub {
     owner = "home-assistant-libs";
     repo = "forecast_solar";
     rev = version;
-    sha256 = "sha256-UrLy+j8YDWuS9pciEDKb/+UoCcw54XWiIUAEYC72/W0=";
+    sha256 = "sha256-2gex50QEN55uUa8SfAQA7iDZ3SVnpOTXfD3Sxq7KvNw=";
   };
 
   PACKAGE_VERSION = version;
diff --git a/nixpkgs/pkgs/development/python-modules/gaphas/default.nix b/nixpkgs/pkgs/development/python-modules/gaphas/default.nix
index c3541bcc30a0..3c8933686b22 100644
--- a/nixpkgs/pkgs/development/python-modules/gaphas/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gaphas/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "gaphas";
-  version = "3.5.0";
+  version = "3.6.0";
   disabled = pythonOlder "3.7";
 
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "526f1943dd54efe91fbf45db38049103611fbac5939c42ad172ba9d2dce71fe1";
+    sha256 = "sha256-yleYbAJdDVzZrMQ3izi9UX3Ji1vIuQDc+RK5+wzrMi4=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/gcovr/default.nix b/nixpkgs/pkgs/development/python-modules/gcovr/default.nix
index 5e9b32048f1f..88fc47ad2a59 100644
--- a/nixpkgs/pkgs/development/python-modules/gcovr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gcovr/default.nix
@@ -4,15 +4,19 @@
 , jinja2
 , lxml
 , pygments
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "gcovr";
-  version = "5.0";
+  version = "5.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1d80264cbaadff356b3dda71b8c62b3aa803e5b3eb6d526a24932cd6660a2576";
+    hash = "sha256-d4CEQ1m/8LlsBBR9r/8l5uWF4FWFvVQjabvDd9ad4SE=";
   };
 
   propagatedBuildInputs = [
@@ -33,8 +37,9 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "A Python script for summarizing gcov data";
-    license = licenses.bsd0;
+    description = "Python script for summarizing gcov data";
     homepage = "https://www.gcovr.com/";
+    license = licenses.bsd0;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/glean-parser/default.nix b/nixpkgs/pkgs/development/python-modules/glean-parser/default.nix
index 30d4db0d2613..953e3faa67bb 100644
--- a/nixpkgs/pkgs/development/python-modules/glean-parser/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/glean-parser/default.nix
@@ -1,33 +1,34 @@
 { lib
-, buildPythonPackage
-, fetchPypi
-, pytestCheckHook
-, pythonOlder
-, setuptools-scm
-# build inputs
 , appdirs
+, buildPythonPackage
 , click
 , diskcache
+, fetchPypi
 , jinja2
 , jsonschema
+, pytestCheckHook
+, pythonOlder
 , pyyaml
+, setuptools-scm
 , yamllint
 }:
 
 buildPythonPackage rec {
-  pname = "glean_parser";
+  pname = "glean-parser";
   version = "5.1.0";
+  format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
-    inherit pname version;
-    sha256 = "sha256-8oMbaGsW5Lkw9OluNsXXe2IBNbjeoIb9vDjVOt+uHR0=";
+    pname = "glean_parser";
+    inherit version;
+    hash = "sha256-8oMbaGsW5Lkw9OluNsXXe2IBNbjeoIb9vDjVOt+uHR0=";
   };
 
-  postPatch = ''
-    substituteInPlace setup.py --replace "pytest-runner" ""
-  '';
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
 
   propagatedBuildInputs = [
     appdirs
@@ -38,24 +39,29 @@ buildPythonPackage rec {
     pyyaml
     yamllint
   ];
-  nativeBuildInputs = [
-    setuptools-scm
-  ];
 
   checkInputs = [
     pytestCheckHook
   ];
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "pytest-runner" ""
+  '';
+
   disabledTests = [
     # https://bugzilla.mozilla.org/show_bug.cgi?id=1741668
     "test_validate_ping"
   ];
 
-  pythonImportsCheck = [ "glean_parser" ];
+  pythonImportsCheck = [
+    "glean_parser"
+  ];
 
   meta = with lib; {
     description = "Tools for parsing the metadata for Mozilla's glean telemetry SDK";
     homepage = "https://github.com/mozilla/glean_parser";
     license = licenses.mpl20;
-    maintainers = [ maintainers.kvark ];
+    maintainers = with maintainers; [ kvark ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/glean-sdk/default.nix b/nixpkgs/pkgs/development/python-modules/glean-sdk/default.nix
index f2c2f92c9f0d..8bfc7dcafeda 100644
--- a/nixpkgs/pkgs/development/python-modules/glean-sdk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/glean-sdk/default.nix
@@ -1,22 +1,27 @@
 { lib
 , buildPythonPackage
-, fetchPypi
-, rustPlatform
-, rustc
 , cargo
-, setuptools-rust
-# build inputs
 , cffi
+, fetchPypi
 , glean-parser
+, iso8601
+, pytest-localserver
+, pytestCheckHook
+, pythonOlder
+, rustc
+, rustPlatform
+, setuptools-rust
 }:
 
 buildPythonPackage rec {
   pname = "glean-sdk";
   version = "44.0.0";
 
+  disabled = pythonOlder "3.6";
+
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-gzLsBwq3wrFde5cEb5+oFLW4KrwoiZpr22JbJhNr1yk=";
+    hash = "sha256-gzLsBwq3wrFde5cEb5+oFLW4KrwoiZpr22JbJhNr1yk=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
@@ -26,22 +31,36 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    rustc
     cargo
-    setuptools-rust
+    rustc
     rustPlatform.cargoSetupHook
+    setuptools-rust
   ];
+
   propagatedBuildInputs = [
     cffi
     glean-parser
+    iso8601
   ];
 
-  pythonImportsCheck = [ "glean" ];
+  checkInputs = [
+    pytest-localserver
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace glean-core/python/setup.py \
+      --replace "glean_parser==5.0.1" "glean_parser>=5.0.1"
+  '';
+
+  pythonImportsCheck = [
+    "glean"
+  ];
 
   meta = with lib; {
-    description = "Modern cross-platform telemetry client libraries and are a part of the Glean project";
+    description = "Telemetry client libraries and are a part of the Glean project";
     homepage = "https://mozilla.github.io/glean/book/index.html";
     license = licenses.mpl20;
-    maintainers = [ maintainers.kvark ];
+    maintainers = with maintainers; [ kvark ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix b/nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix
index ef809dcf7002..6895db19abc1 100644
--- a/nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "globus-sdk";
-  version = "3.5.0";
+  version = "3.6.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "globus";
     repo = "globus-sdk-python";
     rev = version;
-    hash = "sha256-doyKTGPm4tpmLrXQgsDOGklG54HSN8VFCAXa4Q73Uos=";
+    hash = "sha256-SBLQ+uSZE8YkT+fQWIKGlfhocJXX5k9kSejAbjazjM8=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/google-auth-oauthlib/default.nix b/nixpkgs/pkgs/development/python-modules/google-auth-oauthlib/default.nix
index 1d23af5a3d46..6ee0cb065401 100644
--- a/nixpkgs/pkgs/development/python-modules/google-auth-oauthlib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-auth-oauthlib/default.nix
@@ -11,11 +11,11 @@
 
 buildPythonPackage rec {
   pname = "google-auth-oauthlib";
-  version = "0.4.6";
+  version = "0.5.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-qQoHL2mT8sMnBnv2UnAEY4TNpajssguU6ppofx8jOno=";
+    sha256 = "sha256-MFlrgk/GgI/ayi8EjkmYzED7SzWZ6upm0o3HCFs2xbg=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/google-auth/default.nix b/nixpkgs/pkgs/development/python-modules/google-auth/default.nix
index c7fcb1a48ed1..9eddb0eca981 100644
--- a/nixpkgs/pkgs/development/python-modules/google-auth/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-auth/default.nix
@@ -18,11 +18,11 @@
 
 buildPythonPackage rec {
   pname = "google-auth";
-  version = "2.6.0";
+  version = "2.6.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-rRYPweqPGeMxoWoUp589ZD2BOmlTS6lhHSyA3BBDna0=";
+    sha256 = "sha256-YNRJ+BQsdC23YPTAvjkSG8jZvoVVVdeEwlLerKHO0/U=";
   };
 
   postPatch = ''
@@ -59,6 +59,15 @@ buildPythonPackage rec {
     "test_request_headers"
     "test_request_error"
     "test_request_basic"
+  ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
+    # E MemoryError: Cannot allocate write+execute memory for ffi.callback().
+    # You might be running on a system that prevents this.
+    # For more information, see https://cffi.readthedocs.io/en/latest/using.html#callbacks
+    "test_configure_mtls_channel_with_callback"
+    "test_configure_mtls_channel_with_metadata"
+    "TestDecryptPrivateKey"
+    "TestMakeMutualTlsHttp"
+    "TestMutualTlsAdapter"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/google-cloud-bigquery/default.nix b/nixpkgs/pkgs/development/python-modules/google-cloud-bigquery/default.nix
index a7ee6a72913b..86ac3048e0ab 100644
--- a/nixpkgs/pkgs/development/python-modules/google-cloud-bigquery/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-cloud-bigquery/default.nix
@@ -70,6 +70,9 @@ buildPythonPackage rec {
     "test_parameterized_types_round_trip"
     "test_structs"
     "test_table_snapshots"
+    "test__initiate_resumable_upload"
+    "test__initiate_resumable_upload_mtls"
+    "test__initiate_resumable_upload_with_retry"
   ];
 
   pythonImportsCheck = [
diff --git a/nixpkgs/pkgs/development/python-modules/google-cloud-bigtable/default.nix b/nixpkgs/pkgs/development/python-modules/google-cloud-bigtable/default.nix
index 9ffa885ab4a5..9763cd4e0ba3 100644
--- a/nixpkgs/pkgs/development/python-modules/google-cloud-bigtable/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-cloud-bigtable/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-bigtable";
-  version = "2.7.0";
+  version = "2.7.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-TUgC/6IZ9kNE5iDtbhKPHJqo3sv9W+nl7KcxuXfrbyM=";
+    hash = "sha256-TUMgrv1JNt8h6DzCNtk0Fm4LQFC73/FNfpgTs9jhkYs=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/google-cloud-container/default.nix b/nixpkgs/pkgs/development/python-modules/google-cloud-container/default.nix
index b66ff08cff8a..ae3c6a8be74a 100644
--- a/nixpkgs/pkgs/development/python-modules/google-cloud-container/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-cloud-container/default.nix
@@ -8,20 +8,33 @@
 , proto-plus
 , pytestCheckHook
 , pytest-asyncio
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "google-cloud-container";
-  version = "2.10.6";
+  version = "2.10.7";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-dBt2Vs9J0+l534YtKS70MuUEUegwVoU66zghmcz7fGk=";
+    hash = "sha256-I3oYldj915GBCX5VLEZRqGS7jMHWasQGVIvj50EUTK4=";
   };
 
-  propagatedBuildInputs = [ google-api-core grpc-google-iam-v1 libcst proto-plus ];
+  propagatedBuildInputs = [
+    google-api-core
+    grpc-google-iam-v1
+    libcst
+    proto-plus
+  ];
 
-  checkInputs = [ mock pytestCheckHook pytest-asyncio ];
+  checkInputs = [
+    mock
+    pytestCheckHook
+    pytest-asyncio
+  ];
 
   disabledTests = [
     # requires credentials
diff --git a/nixpkgs/pkgs/development/python-modules/google-cloud-core/default.nix b/nixpkgs/pkgs/development/python-modules/google-cloud-core/default.nix
index 84937102ac32..e59e6a5cb5f7 100644
--- a/nixpkgs/pkgs/development/python-modules/google-cloud-core/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-cloud-core/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-core";
-  version = "2.2.2";
+  version = "2.2.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-fRm/iGi0ENC99aA0aKPz8tsjPA7oagI/TswreksV9zY=";
+    sha256 = "sha256-idL3GJvG3HTeEo1CPqUsyHGfCl28zZyoBDP2UEogJVw=";
   };
 
   propagatedBuildInputs = [ google-api-core ];
diff --git a/nixpkgs/pkgs/development/python-modules/google-cloud-redis/default.nix b/nixpkgs/pkgs/development/python-modules/google-cloud-redis/default.nix
index fc1ca3121252..ab432454bbaf 100644
--- a/nixpkgs/pkgs/development/python-modules/google-cloud-redis/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-cloud-redis/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-redis";
-  version = "2.7.1";
+  version = "2.8.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-tz2upcRjgE6/4cB0riARwot3Vhw4QSKqqHTlJS3i7is=";
+    hash = "sha256-7L3SjViQmzTp//5LWWG9VG+TQuPay70KZdUuzhy7HS0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/google-cloud-speech/default.nix b/nixpkgs/pkgs/development/python-modules/google-cloud-speech/default.nix
index e461b4cdcb53..72e9f672047a 100644
--- a/nixpkgs/pkgs/development/python-modules/google-cloud-speech/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-cloud-speech/default.nix
@@ -8,6 +8,7 @@
 , pytestCheckHook
 , pytest-asyncio
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
@@ -26,6 +27,7 @@ buildPythonPackage rec {
     libcst
     google-api-core
     proto-plus
+    setuptools
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/google-cloud-storage/default.nix b/nixpkgs/pkgs/development/python-modules/google-cloud-storage/default.nix
index bce214102094..629c323506b1 100644
--- a/nixpkgs/pkgs/development/python-modules/google-cloud-storage/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-cloud-storage/default.nix
@@ -9,15 +9,19 @@
 , google-cloud-testutils
 , google-resumable-media
 , mock
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "google-cloud-storage";
-  version = "2.2.0";
+  version = "2.2.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-01mWgBE11R20m7j3p+Kc7cwlqotDXu0MTA7y+e5W0dk=";
+    hash = "sha256-AkT0YScQy17ERfxndDh1ZOI/mCM2P7QIsock4hAkAbc=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/google-cloud-vision/default.nix b/nixpkgs/pkgs/development/python-modules/google-cloud-vision/default.nix
index 61c383dca6ed..b73baab08108 100644
--- a/nixpkgs/pkgs/development/python-modules/google-cloud-vision/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-cloud-vision/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-vision";
-  version = "2.7.1";
+  version = "2.7.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Ty80C73K3/TebsdSHinmp2y8TKgOftqT5PIDafq1GgM=";
+    hash = "sha256-4NTWyf3rndw1zHINlBMtoEmdfSXGnU/jEhxab807Vg4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/googleapis-common-protos/default.nix b/nixpkgs/pkgs/development/python-modules/googleapis-common-protos/default.nix
index 55380e3081a7..66a3fe507858 100644
--- a/nixpkgs/pkgs/development/python-modules/googleapis-common-protos/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/googleapis-common-protos/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "googleapis-common-protos";
-  version = "1.54.0";
+  version = "1.56.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-pAMdbsbCsbbcPgvn4Qob1y+wsYsH75vntR8sEATOJDc=";
+    sha256 = "sha256-QAdQB5W8/CadJ58PfSU64Y1twf9dWnNhP/5FIDix7F8=";
   };
 
   propagatedBuildInputs = [ grpc protobuf ];
diff --git a/nixpkgs/pkgs/development/python-modules/gphoto2/default.nix b/nixpkgs/pkgs/development/python-modules/gphoto2/default.nix
index f6fc6db7f387..6b9125db64e6 100644
--- a/nixpkgs/pkgs/development/python-modules/gphoto2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gphoto2/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "gphoto2";
-  version = "2.3.2";
+  version = "2.3.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "3b1b52ec3004ad6a6927a015b0572878a0a56314caaf1e62b07550e7a2e09465";
+    sha256 = "sha256-bhHGvUGzXrk7snMzv+R0fd/gnZTFJ3xfse5i2Krpl3I=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/python-modules/graphql-subscription-manager/default.nix b/nixpkgs/pkgs/development/python-modules/graphql-subscription-manager/default.nix
index 660a6f51688a..2ca6a134ee27 100644
--- a/nixpkgs/pkgs/development/python-modules/graphql-subscription-manager/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/graphql-subscription-manager/default.nix
@@ -8,7 +8,8 @@
 
 buildPythonPackage rec {
   pname = "graphql-subscription-manager";
-  version = "0.5.4";
+  version = "0.5.5";
+  format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
@@ -16,7 +17,7 @@ buildPythonPackage rec {
     owner = "Danielhiversen";
     repo = "PyGraphqlWebsocketManager";
     rev = version;
-    sha256 = "sha256-J3us0xZN1jOFRcvUQg8PQP6AVHa/swGjKU8IivmfjQE=";
+    hash = "sha256-7MqFsttMNnWmmWKj1zaOORBTDGt6Wm8GU7w56DfPl2c=";
   };
 
   propagatedBuildInputs = [
@@ -27,7 +28,9 @@ buildPythonPackage rec {
   # no tests implemented
   doCheck = false;
 
-  pythonImportsCheck = [ "graphql_subscription_manager" ];
+  pythonImportsCheck = [
+    "graphql_subscription_manager"
+  ];
 
   meta = with lib; {
     description = "Python3 library for graphql subscription manager";
diff --git a/nixpkgs/pkgs/development/python-modules/gruut-ipa/default.nix b/nixpkgs/pkgs/development/python-modules/gruut-ipa/default.nix
index ad1da8b2917a..f0824670731d 100644
--- a/nixpkgs/pkgs/development/python-modules/gruut-ipa/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gruut-ipa/default.nix
@@ -1,32 +1,33 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, pkgs
+, espeak
+, numpy
 , python
 }:
 
 buildPythonPackage rec {
   pname = "gruut-ipa";
-  version = "0.12.0";
+  version = "0.13.0";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "rhasspy";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-6pMdBKbp++/5321rc8A2euOSXZCHzHg+wmaEaMZ0egw=";
+    sha256 = "sha256-Q2UKELoG8OaAPxIrZNCpXgeWZ2fCzb3g3SOVzCm/gg0=";
   };
 
   postPatch = ''
-    patchShebangs bin/speak-ipa
+    patchShebangs bin/*
     substituteInPlace bin/speak-ipa \
       --replace '${"\${src_dir}:"}' "$out/lib/${python.libPrefix}/site-packages:" \
-      --replace "do espeak" "do ${pkgs.espeak}/bin/espeak"
+      --replace "do espeak" "do ${espeak}/bin/espeak"
   '';
 
-  postInstall = ''
-    install -m0755 bin/speak-ipa $out/bin/speak-ipa
-  '';
+  propagatedBuildInputs = [
+    numpy
+  ];
 
   checkPhase = ''
     runHook preCheck
diff --git a/nixpkgs/pkgs/development/python-modules/gruut/default.nix b/nixpkgs/pkgs/development/python-modules/gruut/default.nix
index f1e490a65cb2..5078c6fdb390 100644
--- a/nixpkgs/pkgs/development/python-modules/gruut/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gruut/default.nix
@@ -36,14 +36,14 @@ let
 in
 buildPythonPackage rec {
   pname = "gruut";
-  version = "2.2.0";
+  version = "2.2.3";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "rhasspy";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-9vj3x2IjTso8ksN1cqe5frwg0Y3GhOB6bPWvaBSBOf8=";
+    sha256 = "sha256-B5fPUW4YaMzDDXxncfrWwxGdUizuaxnPImNMf1ZZJ/I=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/h2/default.nix b/nixpkgs/pkgs/development/python-modules/h2/default.nix
index a73d9960f693..97ccb7b91206 100644
--- a/nixpkgs/pkgs/development/python-modules/h2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/h2/default.nix
@@ -39,6 +39,6 @@ buildPythonPackage rec {
     description = "HTTP/2 State-Machine based protocol implementation";
     homepage = "https://github.com/python-hyper/h2";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/habanero/default.nix b/nixpkgs/pkgs/development/python-modules/habanero/default.nix
index 9dc3193957f6..0352ec41139d 100644
--- a/nixpkgs/pkgs/development/python-modules/habanero/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/habanero/default.nix
@@ -1,26 +1,31 @@
-{ buildPythonPackage, lib, fetchFromGitHub
-, requests, tqdm
-, nose, vcrpy
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, requests
+, tqdm
+, nose
+, vcrpy
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "habanero";
-  version = "1.0.0";
+  version = "1.2.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
-  # Install from Pypi is failing because of a missing file (Changelog.rst)
   src = fetchFromGitHub {
     owner = "sckott";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0lhbd5c4sypcd65nh4cgxddsqrxwg89nn1qiii6m5l4fzsvblggv";
+    hash = "sha256-jxaO8nCR5jhXCPjhjVLKaGeQp9JF3ECQ1+j3TOJKawg=";
   };
 
-  propagatedBuildInputs = [ requests tqdm ];
-
-  # almost the entirety of the test suite makes network calls
-  pytestFlagsArray = [
-    "test/test-filters.py"
+  propagatedBuildInputs = [
+    requests
+    tqdm
   ];
 
   checkInputs = [
@@ -28,10 +33,19 @@ buildPythonPackage rec {
     vcrpy
   ];
 
-  meta = {
+  pythonImportsCheck = [
+    "habanero"
+  ];
+
+  # almost the entirety of the test suite makes network calls
+  pytestFlagsArray = [
+    "test/test-filters.py"
+  ];
+
+  meta = with lib; {
     description = "Python interface to Library Genesis";
-    homepage = "https://habanero.readthedocs.io/en/latest/";
-    license = lib.licenses.mit;
-    maintainers = [ lib.maintainers.nico202 ];
+    homepage = "https://habanero.readthedocs.io/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ nico202 ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/hacking/default.nix b/nixpkgs/pkgs/development/python-modules/hacking/default.nix
index 44a7a2deb75b..ad7d4a9def73 100644
--- a/nixpkgs/pkgs/development/python-modules/hacking/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hacking/default.nix
@@ -20,6 +20,10 @@ buildPythonPackage rec {
   postPatch = ''
     substituteInPlace requirements.txt \
       --replace "flake8<3.9.0,>=3.8.0" "flake8"
+    substituteInPlace hacking/checks/python23.py \
+      --replace 'H236: class Foo(object):\n    __metaclass__ = \' 'Okay: class Foo(object):\n    __metaclass__ = \'
+    substituteInPlace hacking/checks/except_checks.py \
+      --replace 'H201: except:' 'Okay: except:'
   '';
 
   nativeBuildInputs = [ pbr ];
@@ -35,9 +39,7 @@ buildPythonPackage rec {
   ];
 
   checkPhase = ''
-    stestr run -e <(echo "
-      hacking.tests.test_doctest.HackingTestCase.test_flake8
-    ")
+    stestr run
   '';
 
   pythonImportsCheck = [ "hacking" ];
diff --git a/nixpkgs/pkgs/development/python-modules/hahomematic/default.nix b/nixpkgs/pkgs/development/python-modules/hahomematic/default.nix
index 515d6ed8d950..6b39369eeb03 100644
--- a/nixpkgs/pkgs/development/python-modules/hahomematic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hahomematic/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "hahomematic";
-  version = "0.36.3";
+  version = "1.0.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "danielperna84";
     repo = pname;
     rev = version;
-    sha256 = "sha256-S5KWyW7aeR2qdBzXQ4ka2nuxGPt69LHyq2CUdRPG9ig=";
+    sha256 = "sha256-neYFYzBNx/Rm3PWCsQ5ooisU3Z+kJO+O+KNpbwSsUB4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/httplib2/default.nix b/nixpkgs/pkgs/development/python-modules/httplib2/default.nix
index 9a8a8853780a..cd2134418a75 100644
--- a/nixpkgs/pkgs/development/python-modules/httplib2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/httplib2/default.nix
@@ -55,6 +55,7 @@ buildPythonPackage rec {
   ] ++ lib.optionals (stdenv.isDarwin) [
     # fails with HTTP 408 Request Timeout, instead of expected 200 OK
     "test_timeout_subsequent"
+    "test_connection_close"
   ];
 
   pytestFlagsArray = [
diff --git a/nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix b/nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
index 6345eebad1bc..b505182b4fb5 100644
--- a/nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
@@ -11,11 +11,11 @@
 
 buildPythonPackage rec {
   pname = "ibm-cloud-sdk-core";
-  version = "3.15.0";
+  version = "3.15.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-oHQXgiW80zqgpyt5osbBCtoT3XYCGEk4mgKPIsMmBHY=";
+    sha256 = "sha256-bGTr8Qf7ywlbsl6/FEJEjFB/bqyyMwfmjVVAsrgmkTg=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix b/nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix
index e8ecdfff32ba..d169190ef8c8 100644
--- a/nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ibm-watson/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "ibm-watson";
-  version = "5.3.1";
+  version = "6.0.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "watson-developer-cloud";
     repo = "python-sdk";
     rev = "v${version}";
-    sha256 = "1x6r8j0xyi81jb0q4pzr6l7aglykrwqz8nw45clv79v33i2sgdcs";
+    sha256 = "sha256-AvWcw1VV47v2yvaqukPSql7rA7wVwrvtCDsvYtPZXKs=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/identify/default.nix b/nixpkgs/pkgs/development/python-modules/identify/default.nix
index 9f2a066ebdf2..18a12fe9e198 100644
--- a/nixpkgs/pkgs/development/python-modules/identify/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/identify/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "identify";
-  version = "2.4.11";
+  version = "2.4.12";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "pre-commit";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Q86n2uAjmA05h+0NE77TBkbPiKoRYqB1b2H3MbOVmMY=";
+    sha256 = "sha256-kXhUlt+lcqK3ohOA8eziFcrm4U/FAYWpie4rH5xRejI=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/iminuit/default.nix b/nixpkgs/pkgs/development/python-modules/iminuit/default.nix
index 1b99cd05f03b..ead72b3fbf98 100644
--- a/nixpkgs/pkgs/development/python-modules/iminuit/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/iminuit/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "iminuit";
-  version = "2.9.0";
+  version = "2.10.0";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "656410ceffead79a52d3d727fdcd2bac78d7774239bef0efc3b7a86bae000ff3";
+    sha256 = "sha256-k7M8ptL/1z6AtA6KQAyj28cOBWYvG9OQ4rYEAnkQFIU=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/development/python-modules/influxdb-client/default.nix b/nixpkgs/pkgs/development/python-modules/influxdb-client/default.nix
index 85456fcc15f8..226d43b2bc4c 100644
--- a/nixpkgs/pkgs/development/python-modules/influxdb-client/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/influxdb-client/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "influxdb-client";
-  version = "1.26.0";
+  version = "1.27.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "influxdata";
     repo = "influxdb-client-python";
     rev = "v${version}";
-    hash = "sha256-9MI6AgFTEw9dnBWdry3FnPERXnXZJhbYX4tXj9sGMkg=";
+    hash = "sha256-M0Ob3HjIhlYSIWXGM54NXiEMSCmZzNLLNsCRyxAcjMc=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/intellifire4py/default.nix b/nixpkgs/pkgs/development/python-modules/intellifire4py/default.nix
index 329d7a77dfde..b93b9b9c957b 100644
--- a/nixpkgs/pkgs/development/python-modules/intellifire4py/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/intellifire4py/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "intellifire4py";
-  version = "1.0.0";
+  version = "1.0.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "jeeftor";
     repo = pname;
     rev = version;
-    hash = "sha256-lQV5KpASbrz+wCi9x/0rNYrQE+dLCZzsNBFhYAQvPH4=";
+    hash = "sha256-t3wJQ7dXX65yqxMYsFggViqqGvLCdASw1QLc5DJBn+4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/internetarchive/default.nix b/nixpkgs/pkgs/development/python-modules/internetarchive/default.nix
index d197ba9691bf..c50563f55007 100644
--- a/nixpkgs/pkgs/development/python-modules/internetarchive/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/internetarchive/default.nix
@@ -1,7 +1,6 @@
 { buildPythonPackage
 , fetchPypi
 , pytest
-, six
 , tqdm
 , pyyaml
 , docopt
@@ -10,25 +9,25 @@
 , args
 , schema
 , responses
-, backports_csv
-, isPy3k
 , lib
 , glibcLocales
 , setuptools
 , urllib3
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "internetarchive";
-  version = "2.3.0";
+  version = "3.0.0";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "fa89dc4be3e0a0aee24810a4a754e24adfd07edf710c645b4f642422c6078b8d";
+    sha256 = "sha256-fRcqsT8p/tqXUpU2/9lAEF1IT8Cy5KK0+jKaeVwZshI=";
   };
 
   propagatedBuildInputs = [
-    six
     tqdm
     pyyaml
     docopt
@@ -38,7 +37,7 @@ buildPythonPackage rec {
     schema
     setuptools
     urllib3
-  ] ++ lib.optionals (!isPy3k) [ backports_csv ];
+  ];
 
   checkInputs = [ pytest responses glibcLocales ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/invocations/default.nix b/nixpkgs/pkgs/development/python-modules/invocations/default.nix
new file mode 100644
index 000000000000..78ace76b762e
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/invocations/default.nix
@@ -0,0 +1,43 @@
+{ buildPythonPackage
+, blessings
+, fetchFromGitHub
+, invoke
+, lib
+, releases
+, semantic-version
+, tabulate
+, twine
+}:
+
+buildPythonPackage rec {
+  pname = "invocations";
+  version = "2.6.0";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "pyinvoke";
+    repo = pname;
+    rev = version;
+    hash = "sha256-eyOJKVRfn7elyEkERl7hvRTNFmq7O9Pr03lBS6xp0wE=";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "semantic_version>=2.4,<2.7" "semantic_version" \
+      --replace "tabulate==0.7.5" "tabulate"
+  '';
+
+  propagatedBuildInputs = [ blessings invoke releases semantic-version tabulate twine ];
+
+  # There's an error loading the test suite. See https://github.com/pyinvoke/invocations/issues/29.
+  doCheck = false;
+
+  pythonImportsCheck = [ "invocations" ];
+
+  meta = with lib; {
+    description = "Common/best-practice Invoke tasks and collections";
+    homepage = "https://invocations.readthedocs.io/";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ samuela ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/invoke/default.nix b/nixpkgs/pkgs/development/python-modules/invoke/default.nix
index 45c341c209cf..45711a3dc20e 100644
--- a/nixpkgs/pkgs/development/python-modules/invoke/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/invoke/default.nix
@@ -2,15 +2,19 @@
 , bash
 , buildPythonPackage
 , fetchPypi
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "invoke";
-  version = "1.6.0";
+  version = "1.7.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "374d1e2ecf78981da94bfaf95366216aaec27c2d6a7b7d5818d92da55aa258d3";
+    hash = "sha256-4zLkneQEY/IBYxX1HfQjE4VXcr6GQ1aGFWvBj0W1zGw=";
   };
 
   patchPhase = ''
@@ -20,8 +24,14 @@ buildPythonPackage rec {
   # errors with vendored libs
   doCheck = false;
 
-  meta = {
+  pythonImportsCheck = [
+    "invoke"
+  ];
+
+  meta = with lib; {
     description = "Pythonic task execution";
-    license = lib.licenses.bsd2;
+    homepage = "https://www.pyinvoke.org/";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/ipykernel/default.nix b/nixpkgs/pkgs/development/python-modules/ipykernel/default.nix
index 0827e611679e..e888fdcd3209 100644
--- a/nixpkgs/pkgs/development/python-modules/ipykernel/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ipykernel/default.nix
@@ -4,7 +4,6 @@
 , fetchPypi
 , pythonOlder
 , argcomplete
-, debugpy
 , ipython
 , jupyter-client
 , tornado
@@ -20,8 +19,13 @@ buildPythonPackage rec {
     sha256 = "d82b904fdc2fd8c7b1fbe0fa481c68a11b4cd4c8ef07e6517da1f10cc3114d24";
   };
 
+  # debugpy is optional, see https://github.com/ipython/ipykernel/pull/767
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "'debugpy>=1.0.0,<2.0'," ""
+  '';
+
   propagatedBuildInputs = [
-    debugpy
     ipython
     jupyter-client
     tornado
diff --git a/nixpkgs/pkgs/development/python-modules/itemadapter/default.nix b/nixpkgs/pkgs/development/python-modules/itemadapter/default.nix
index 5d85ad719527..b082387e23cf 100644
--- a/nixpkgs/pkgs/development/python-modules/itemadapter/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/itemadapter/default.nix
@@ -1,25 +1,33 @@
-{ lib, buildPythonPackage, fetchPypi, isPy27 }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+}:
 
 buildPythonPackage rec {
   pname = "itemadapter";
-  version = "0.4.0";
+  version = "0.5.0";
+  format = "setuptools";
 
-  disabled = isPy27;
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f05df8da52619da4b8c7f155d8a15af19083c0c7ad941d8c1de799560ad994ca";
+    hash = "sha256-BbanndMaepk9+y6Dhqkcl+O4xs8otyVT6AjmJeC4fCA=";
   };
 
-  doCheck = false; # infinite recursion with Scrapy
+  # Infinite recursion with Scrapy
+  doCheck = false;
 
-  pythonImportsCheck = [ "itemadapter" ];
+  pythonImportsCheck = [
+    "itemadapter"
+  ];
 
   meta = with lib; {
     description = "Common interface for data container classes";
     homepage = "https://github.com/scrapy/itemadapter";
     changelog = "https://github.com/scrapy/itemadapter/raw/v${version}/Changelog.md";
     license = licenses.bsd3;
-    maintainers = [ maintainers.marsam ];
+    maintainers = with maintainers; [ marsam ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/jax/default.nix b/nixpkgs/pkgs/development/python-modules/jax/default.nix
index d5e536540195..332cac3133cc 100644
--- a/nixpkgs/pkgs/development/python-modules/jax/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jax/default.nix
@@ -19,7 +19,7 @@ let
 in
 buildPythonPackage rec {
   pname = "jax";
-  version = "0.3.1";
+  version = "0.3.4";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -27,8 +27,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "google";
     repo = pname;
-    rev = "${pname}-v${version}";
-    sha256 = "0bpqmyc4hg25i8cfnrx3y2bwgp6h5rri2a1q9i8gb6r0id97zvcn";
+    rev = "jax-v${version}";
+    sha256 = "sha256-RZqSJP2vtt8U6nmftV2VzfkMGkkk3100QqsjI7PpQbc=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/jaxlib/bin.nix b/nixpkgs/pkgs/development/python-modules/jaxlib/bin.nix
index 7e6b00429dfa..0929831e32a4 100644
--- a/nixpkgs/pkgs/development/python-modules/jaxlib/bin.nix
+++ b/nixpkgs/pkgs/development/python-modules/jaxlib/bin.nix
@@ -120,9 +120,15 @@ buildPythonPackage rec {
     done
   '';
 
-  # pip dependencies and optionally cudatoolkit. Note that cudatoolkit is
-  # necessary since jaxlib looks for "ptxas" in $PATH.
-  propagatedBuildInputs = [ absl-py flatbuffers scipy ] ++ lib.optional cudaSupport cudatoolkit_11;
+  propagatedBuildInputs = [ absl-py flatbuffers scipy ];
+
+  # Note that cudatoolkit is snecessary since jaxlib looks for "ptxas" in $PATH.
+  # See https://github.com/NixOS/nixpkgs/pull/164176#discussion_r828801621 for
+  # more info.
+  postInstall = lib.optional cudaSupport ''
+    mkdir -p $out/bin
+    ln -s ${cudatoolkit_11}/bin/ptxas $out/bin/ptxas
+  '';
 
   pythonImportsCheck = [ "jaxlib" ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/jaxlib/default.nix b/nixpkgs/pkgs/development/python-modules/jaxlib/default.nix
index 664e109719ad..363bfe561346 100644
--- a/nixpkgs/pkgs/development/python-modules/jaxlib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jaxlib/default.nix
@@ -259,7 +259,13 @@ buildPythonPackage {
 
   src = "${bazel-build}/jaxlib-${version}-cp${builtins.replaceStrings ["."] [""] python.pythonVersion}-none-manylinux2010_${stdenv.targetPlatform.linuxArch}.whl";
 
+  # Note that cudatoolkit is necessary since jaxlib looks for "ptxas" in $PATH.
+  # See https://github.com/NixOS/nixpkgs/pull/164176#discussion_r828801621 for
+  # more info.
   postInstall = lib.optionalString cudaSupport ''
+    mkdir -p $out/bin
+    ln -s ${cudatoolkit}/bin/ptxas $out/bin/ptxas
+
     find $out -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
       addOpenGLRunpath "$lib"
       patchelf --set-rpath "${cudatoolkit}/lib:${cudatoolkit.lib}/lib:${cudnn}/lib:${nccl}/lib:$(patchelf --print-rpath "$lib")" "$lib"
diff --git a/nixpkgs/pkgs/development/python-modules/jdatetime/default.nix b/nixpkgs/pkgs/development/python-modules/jdatetime/default.nix
index f2e9b66b7b3c..463d3ce5e033 100644
--- a/nixpkgs/pkgs/development/python-modules/jdatetime/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jdatetime/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "jdatetime";
-  version = "4.0.0";
+  version = "4.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-01uuou0hPk6Hu4QMYWNwAVQL0h6ORFS9EjUrBlkewI4=";
+    sha256 = "sha256-SmeoLuV+NbX2+ff75qDtpj9Wzh3Yr0CbTComozQEV9s=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/jsbeautifier/default.nix b/nixpkgs/pkgs/development/python-modules/jsbeautifier/default.nix
index a0818e1e571f..746619a61445 100644
--- a/nixpkgs/pkgs/development/python-modules/jsbeautifier/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jsbeautifier/default.nix
@@ -1,21 +1,45 @@
-{ lib, fetchPypi, buildPythonApplication, editorconfig, pytest, six }:
+{ lib
+, fetchPypi
+, buildPythonApplication
+, editorconfig
+, pytestCheckHook
+, pythonOlder
+, six
+}:
 
 buildPythonApplication rec {
   pname = "jsbeautifier";
-  version = "1.14.0";
+  version = "1.14.1";
+  format = "setuptools";
 
-  propagatedBuildInputs = [ six editorconfig ];
-  checkInputs = [ pytest ];
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "84fdb008d8af89619269a6aca702288b48f837a99427a0f529aa57ecfb36ee3c";
+    hash = "sha256-ZfT3dLDkywIutJmbRc1ndi92Qnxe80CCq6VLwdjvI+s=";
   };
 
+  propagatedBuildInputs = [
+    editorconfig
+    six
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "jsbeautifier"
+  ];
+
+  pytestFlagsArray = [
+    "jsbeautifier/tests/testindentation.py"
+  ];
+
   meta = with lib; {
-    homepage    = "http://jsbeautifier.org";
-    description = "JavaScript unobfuscator and beautifier.";
-    license     = licenses.mit;
+    description = "JavaScript unobfuscator and beautifier";
+    homepage = "http://jsbeautifier.org";
+    license = licenses.mit;
     maintainers = with maintainers; [ apeyroux ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/jupyterlab-lsp/default.nix b/nixpkgs/pkgs/development/python-modules/jupyterlab-lsp/default.nix
index ad6286f4de4a..276632a327c5 100644
--- a/nixpkgs/pkgs/development/python-modules/jupyterlab-lsp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jupyterlab-lsp/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "jupyterlab-lsp";
-  version = "3.10.0";
+  version = "3.10.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-8/ZGTIwpFuPiYVGZZLF+1Gc8aJcWc3BirtXdahYKwt8=";
+    sha256 = "sha256-mtbvIsSXK4VIB5cDT8eRRyjrePGFa02rM2Fobk8gyd0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/jxmlease/default.nix b/nixpkgs/pkgs/development/python-modules/jxmlease/default.nix
index 727548f21d50..5036ede5e5e9 100644
--- a/nixpkgs/pkgs/development/python-modules/jxmlease/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jxmlease/default.nix
@@ -18,6 +18,10 @@ buildPythonPackage rec {
     lxml
   ];
 
+  # tests broken in expat bump
+  # https://github.com/Juniper/jxmlease/issues/26
+  doCheck = false;
+
   checkPhase = ''
     runHook preCheck
     ${python.interpreter} -m unittest discover -v
diff --git a/nixpkgs/pkgs/development/python-modules/keyrings-google-artifactregistry-auth/default.nix b/nixpkgs/pkgs/development/python-modules/keyrings-google-artifactregistry-auth/default.nix
new file mode 100644
index 000000000000..d77dc444f80d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/keyrings-google-artifactregistry-auth/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, google-auth
+, keyring
+, pluggy
+, requests
+, setuptools-scm
+, toml
+}:
+
+buildPythonPackage rec {
+  pname = "keyrings.google-artifactregistry-auth";
+  version = "1.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-gvoX5SP0A39Ke0VRlplETJF8gIP+QzK6xNReRxM8UnA=";
+  };
+
+  buildInputs = [
+    setuptools-scm
+    toml
+  ];
+
+  propagatedBuildInputs = [
+    google-auth
+    keyring
+    pluggy
+    requests
+  ];
+
+  pythonImportsCheck = [
+    "keyrings.gauth"
+  ];
+
+
+  meta = with lib; {
+    description = "Python package which allows you to configure keyring to interact with Python repositories stored in Artifact Registry";
+    homepage = "https://pypi.org/project/keyrings.google-artifactregistry-auth";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ lovesegfault ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/keystoneauth1/default.nix b/nixpkgs/pkgs/development/python-modules/keystoneauth1/default.nix
index cecbc6fd1d26..e4886e08c2d6 100644
--- a/nixpkgs/pkgs/development/python-modules/keystoneauth1/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/keystoneauth1/default.nix
@@ -24,11 +24,11 @@
 
 buildPythonPackage rec {
   pname = "keystoneauth1";
-  version = "4.4.0";
+  version = "4.5.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "34662a6be67ab29424aabe6f99a8d7eb6b88d293109a07e60fea123ebffb314f";
+    sha256 = "sha256-SbNIiWakPusCAOpRG5l+ZAPCXVY6mExjMOgqDr/EVAw=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/kubernetes/default.nix b/nixpkgs/pkgs/development/python-modules/kubernetes/default.nix
index 3df049c1cec6..2342ec5bde4a 100644
--- a/nixpkgs/pkgs/development/python-modules/kubernetes/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/kubernetes/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , buildPythonPackage
 , fetchFromGitHub
 , pythonOlder
@@ -54,6 +55,11 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  disabledTests = lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
+    # AssertionError: <class 'urllib3.poolmanager.ProxyManager'> != <class 'urllib3.poolmanager.Poolmanager'>
+    "test_rest_proxycare"
+  ];
+
   meta = with lib; {
     description = "Kubernetes python client";
     homepage = "https://github.com/kubernetes-client/python";
diff --git a/nixpkgs/pkgs/development/python-modules/libcst/default.nix b/nixpkgs/pkgs/development/python-modules/libcst/default.nix
index 774cb572e95b..0c4a8985e401 100644
--- a/nixpkgs/pkgs/development/python-modules/libcst/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/libcst/default.nix
@@ -1,11 +1,9 @@
 { lib
-, black
 , buildPythonPackage
 , dataclasses
 , fetchFromGitHub
 , hypothesis
-, isort
-, pytest
+, pytestCheckHook
 , python
 , pythonOlder
 , pyyaml
@@ -50,9 +48,7 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    black
-    isort
-    pytest
+    pytestCheckHook
   ];
 
   preCheck = ''
diff --git a/nixpkgs/pkgs/development/python-modules/limnoria/default.nix b/nixpkgs/pkgs/development/python-modules/limnoria/default.nix
index 0467790c2976..27550c30dbfe 100644
--- a/nixpkgs/pkgs/development/python-modules/limnoria/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/limnoria/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "limnoria";
-  version = "2022.2.3";
+  version = "2022.3.17";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Jc11hS+WrRnjgYOUpc+GdkRoNV/DUJhQK6rI2lUkEIA=";
+    hash = "sha256-sSZFbEDlkc+F0PIwvseVEBoQQZVTFypW2nvLmPDD4u0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/luxtronik/default.nix b/nixpkgs/pkgs/development/python-modules/luxtronik/default.nix
index 7df8532a4e2a..7466397ebb71 100644
--- a/nixpkgs/pkgs/development/python-modules/luxtronik/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/luxtronik/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "luxtronik";
-  version = "0.3.10";
+  version = "0.3.11";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "Bouni";
     repo = "python-luxtronik";
     rev = version;
-    sha256 = "sha256-JPY1HbNZanEsUpQ5W2kAwEFvwNGQI2hoogTZUGIg3YY=";
+    sha256 = "sha256-pngtkEuWmOD1MG7/Bh+8iqCxU0l/fGHA8uZxYoxOE5Y=";
   };
 
   # Project has no tests
diff --git a/nixpkgs/pkgs/development/python-modules/manimpango/default.nix b/nixpkgs/pkgs/development/python-modules/manimpango/default.nix
index b717b4491173..f77aa81bbb60 100644
--- a/nixpkgs/pkgs/development/python-modules/manimpango/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/manimpango/default.nix
@@ -1,37 +1,65 @@
-{ stdenv, lib, buildPythonPackage, fetchFromGitHub, python, pkg-config, pango, cython, AppKit, pytestCheckHook }:
+{ lib
+, stdenv
+, buildPythonPackage
+, fetchFromGitHub
+, python
+, pkg-config
+, pango
+, cython
+, AppKit
+, pytestCheckHook
+, pythonOlder
+}:
 
 buildPythonPackage rec {
   pname = "manimpango";
-  version = "0.4.0.post2";
+  version = "0.4.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "ManimCommunity";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-BMRlEdvJJOUbsvKEoZx2qJqHSbL475dhBthUpnsXkn4=";
+    hash = "sha256-ourSUYBAFONdupdsjo/PtwRQpXS7HqLxrHj0Ejr/Wdw=";
   };
 
-  postPatch = ''
-    substituteInPlace setup.cfg --replace "--cov --no-cov-on-fail" ""
-  '';
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
+  buildInputs = [
+    pango
+  ] ++ lib.optionals stdenv.isDarwin [
+    AppKit
+  ];
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ pango ] ++ lib.optionals stdenv.isDarwin [ AppKit ];
   propagatedBuildInputs = [
     cython
   ];
 
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    substituteInPlace setup.cfg \
+      --replace "--cov --no-cov-on-fail" ""
+  '';
+
   preBuild = ''
     ${python.interpreter} setup.py build_ext --inplace
   '';
 
-  checkInputs = [ pytestCheckHook ];
-  pythonImportsCheck = [ "manimpango" ];
+  pythonImportsCheck = [
+    "manimpango"
+  ];
 
   meta = with lib; {
+    description = "Binding for Pango";
     homepage = "https://github.com/ManimCommunity/ManimPango";
     license = licenses.mit;
-    description = "Binding for Pango";
-    maintainers = [ maintainers.emilytrau ];
+    maintainers = with maintainers; [ emilytrau ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/mcstatus/default.nix b/nixpkgs/pkgs/development/python-modules/mcstatus/default.nix
index 5045964ffde7..fcacc7cbf763 100644
--- a/nixpkgs/pkgs/development/python-modules/mcstatus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mcstatus/default.nix
@@ -9,21 +9,20 @@
 , pytest-asyncio
 , pytestCheckHook
 , pythonOlder
-, six
 }:
 
 buildPythonPackage rec {
   pname = "mcstatus";
-  version = "8.0.0";
+  version = "9.0.3";
   format = "pyproject";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
-    owner = "Dinnerbone";
+    owner = "py-mine";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-19VO5L5abVGm5zEMt88o67ArLjBCnGO2DxfAD+u1hF4=";
+    hash = "sha256-ckT3eSjOgIG2/Ci9Ig6QLCrO9iMF9VyZNJy9KfHUg4A=";
   };
 
   nativeBuildInputs = [
@@ -34,7 +33,6 @@ buildPythonPackage rec {
     asyncio-dgram
     click
     dnspython
-    six
   ];
 
   checkInputs = [
@@ -45,19 +43,25 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace 'asyncio-dgram = "1.2.0"' 'asyncio-dgram = ">=1.2.0"' \
-      --replace 'dnspython = "2.1.0"' 'dnspython = "^2.1.0"' \
-      --replace 'six = "1.14.0"' 'six = ">=1.14.0"' \
-      --replace 'click = "7.1.2"' 'click = ">=7.1.2"'
+      --replace 'version = "0.0.0"' 'version = "${version}"' \
+      --replace " --cov=mcstatus --cov-append --cov-branch --cov-report=term-missing -vvv --no-cov-on-fail" "" \
+      --replace 'asyncio-dgram = "2.1.2"' 'asyncio-dgram = ">=2.1.2"' \
+      --replace 'dnspython = "2.2.1"' 'dnspython = ">=2.2.0"'
   '';
 
   pythonImportsCheck = [
     "mcstatus"
   ];
 
+  disabledTests = [
+    # DNS features are limited in the sandbox
+    "test_query"
+    "test_query_retry"
+  ];
+
   meta = with lib; {
     description = "Python library for checking the status of Minecraft servers";
-    homepage = "https://github.com/Dinnerbone/mcstatus";
+    homepage = "https://github.com/py-mine/mcstatus";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/mdformat/default.nix b/nixpkgs/pkgs/development/python-modules/mdformat/default.nix
index 1ab425ade551..23bef4bda405 100644
--- a/nixpkgs/pkgs/development/python-modules/mdformat/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mdformat/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "mdformat";
-  version = "0.7.13";
+  version = "0.7.14";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "executablebooks";
     repo = pname;
     rev = version;
-    sha256 = "sha256-9ssDe7Wjuwuq2j7xwRyLqKouqeIt6NCUbEXjPdu2VZ8=";
+    sha256 = "sha256-bImBW6r8g/4MQ9yNrBBhk7AGqKRXFyAew6HHEmqelxw=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/meilisearch/default.nix b/nixpkgs/pkgs/development/python-modules/meilisearch/default.nix
new file mode 100644
index 000000000000..9671c43df081
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/meilisearch/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, requests
+}:
+
+buildPythonPackage rec {
+  pname = "meilisearch";
+  version = "0.18.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "meilisearch";
+    repo = "meilisearch-python";
+    rev = "v${version}";
+    hash = "sha256-Rd2GmomNzW0+oI2QEGcPY4g8H+4FN7eLKY1ljcibsLw=";
+  };
+
+  propagatedBuildInputs = [
+    requests
+  ];
+
+  pythonImportsCheck = [
+    "meilisearch"
+  ];
+
+  # Tests spin up a local server and are not mocking the requests
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Client for the Meilisearch API";
+    homepage = "https://github.com/meilisearch/meilisearch-python";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/meshtastic/default.nix b/nixpkgs/pkgs/development/python-modules/meshtastic/default.nix
index 9a7c834c0ef3..4c92063de660 100644
--- a/nixpkgs/pkgs/development/python-modules/meshtastic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/meshtastic/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "meshtastic";
-  version = "1.2.90";
+  version = "1.2.93";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "meshtastic";
     repo = "Meshtastic-python";
     rev = version;
-    sha256 = "sha256-n/M1Q6YS3EkUcn45ffiTy0wuj9yKf6qBLLfD2XJkhHU=";
+    sha256 = "sha256-4jh5AYjr1qnr3nOeJSLwtAzdPlmpW1BBrEXfB86NrL0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/metar/default.nix b/nixpkgs/pkgs/development/python-modules/metar/default.nix
index 4a7bf9edc5ae..9c4b30925783 100644
--- a/nixpkgs/pkgs/development/python-modules/metar/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/metar/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , pytestCheckHook
 }:
 
@@ -15,6 +16,19 @@ buildPythonPackage rec {
     sha256 = "sha256-pl2NWRfFCYyM2qvBt4Ic3wgbGkYZvAO6pX2Set8zYW8=";
   };
 
+  patches = [
+    (fetchpatch {
+      # Fix flapping test; https://github.com/python-metar/python-metar/issues/161
+      url = "https://github.com/python-metar/python-metar/commit/716fa76682e6c2936643d1cf62e3d302ef29aedd.patch";
+      hash = "sha256-y82NN+KDryOiH+eG+2ycXCO9lqQLsah4+YpGn6lM2As=";
+    })
+    (fetchpatch {
+      # Fix failing test: https://github.com/python-metar/python-metar/issues/165
+      url = "https://github.com/python-metar/python-metar/commit/a4f9a4764b99bb0313876366d30728169db2770b.patch";
+      hash = "sha256-sURHUb4gCKVMqEWFklTsxF0kr0SxC02Yr0287rZIvC0=";
+    })
+  ];
+
   checkInputs = [ pytestCheckHook ];
 
   pythonImportsCheck = [ "metar" ];
diff --git a/nixpkgs/pkgs/development/python-modules/minidb/default.nix b/nixpkgs/pkgs/development/python-modules/minidb/default.nix
index 599b1d70d42e..5723138ecc3e 100644
--- a/nixpkgs/pkgs/development/python-modules/minidb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/minidb/default.nix
@@ -1,32 +1,37 @@
-{ lib, buildPythonPackage, fetchFromGitHub, isPy3k
-, nose
-, pytest
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "minidb";
-  version = "2.0.5";
-  disabled = !isPy3k;
+  version = "2.0.6";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "thp";
     repo = "minidb";
     rev = version;
-    sha256 = "sha256-aUXsp0E89OxCgTaz7MpKmqTHZfnjDcyHa8Ckzof9rfg=";
+    hash = "sha256-H7W+GBapT9uJgbPlARp4ZLKTN7hZlF/FbNo7rObqDM4=";
   };
 
-  # module imports are incompatible with python2
-  doCheck = isPy3k;
-  checkInputs = [ nose pytest ];
-  checkPhase = ''
-    pytest
-  '';
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "minidb"
+  ];
 
   meta = with lib; {
-    description = "A simple SQLite3-based store for Python objects";
+    description = "SQLite3-based store for Python objects";
     homepage = "https://thp.io/2010/minidb/";
     license = licenses.isc;
-    maintainers = [ maintainers.tv ];
+    maintainers = with maintainers; [ tv ];
   };
-
 }
+
diff --git a/nixpkgs/pkgs/development/python-modules/minikerberos/default.nix b/nixpkgs/pkgs/development/python-modules/minikerberos/default.nix
index 4b75006bea46..a6e9fd68c2bd 100644
--- a/nixpkgs/pkgs/development/python-modules/minikerberos/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/minikerberos/default.nix
@@ -5,24 +5,26 @@
 , fetchPypi
 , oscrypto
 , pythonOlder
+, unicrypto
 }:
 
 buildPythonPackage rec {
   pname = "minikerberos";
-  version = "0.2.18";
+  version = "0.2.20";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-5bmuCbX4a69sP9SnHkB4OQrOHmFufUTlchHkgu6iBYk=";
+    hash = "sha256-eJ+AImP6GIL3AbEj9u7ASLRc1zG/G1KIcABdrwdAIEc=";
   };
 
   propagatedBuildInputs = [
     asn1crypto
     asysocks
     oscrypto
+    unicrypto
   ];
 
   # no tests are published: https://github.com/skelsec/minikerberos/pull/5
diff --git a/nixpkgs/pkgs/development/python-modules/mitmproxy/default.nix b/nixpkgs/pkgs/development/python-modules/mitmproxy/default.nix
index bc5835fac539..f3b24ffabff2 100644
--- a/nixpkgs/pkgs/development/python-modules/mitmproxy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mitmproxy/default.nix
@@ -45,14 +45,14 @@
 
 buildPythonPackage rec {
   pname = "mitmproxy";
-  version = "7.0.4";
+  version = "8.0.0";
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-424WNG9Yj+Zfo1UTh7emknZ7xTtpFPz7Ph+FpE149FM=";
+    sha256 = "sha256-Efazsi8BjBrk7lBKSn2APKHxCc7mzxNrC92BL0VsnCM=";
   };
 
   propagatedBuildInputs = [
@@ -74,7 +74,6 @@ buildPythonPackage rec {
     passlib
     protobuf
     publicsuffix2
-    pyasn1
     pyopenssl
     pyparsing
     pyperclip
@@ -87,8 +86,6 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    beautifulsoup4
-    glibcLocales
     hypothesis
     parver
     pytest-asyncio
@@ -98,8 +95,6 @@ buildPythonPackage rec {
     requests
   ];
 
-  doCheck = !stdenv.isDarwin;
-
   postPatch = ''
     # remove dependency constraints
     sed 's/>=\([0-9]\.\?\)\+\( \?, \?<\([0-9]\.\?\)\+\)\?\( \?, \?!=\([0-9]\.\?\)\+\)\?//' -i setup.py
diff --git a/nixpkgs/pkgs/development/python-modules/mkdocs-material/default.nix b/nixpkgs/pkgs/development/python-modules/mkdocs-material/default.nix
new file mode 100644
index 000000000000..dc67a5158240
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mkdocs-material/default.nix
@@ -0,0 +1,41 @@
+{ lib, callPackage, buildPythonApplication, fetchFromGitHub
+, jinja2
+, markdown
+, mkdocs
+, mkdocs-material-extensions
+, pygments
+, pymdown-extensions
+}:
+
+buildPythonApplication rec {
+  pname = "mkdocs-material";
+  version = "8.2.7";
+
+  src = fetchFromGitHub {
+    owner = "squidfunk";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-Jh0FmtBCYCEk6mYFLOKb1HQXQ4Wc9Z6JCHFVu420IBk=";
+  };
+
+  propagatedBuildInputs = [
+    jinja2
+    markdown
+    mkdocs
+    mkdocs-material-extensions
+    pygments
+    pymdown-extensions
+  ];
+
+  # No tests for python
+  doCheck = false;
+
+  pythonImportsCheck = [ "mkdocs" ];
+
+  meta = with lib; {
+    description = "Material for mkdocs";
+    homepage = "https://squidfunk.github.io/mkdocs-material/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ dandellion ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/mkdocs-material/mkdocs-material-extensions.nix b/nixpkgs/pkgs/development/python-modules/mkdocs-material/mkdocs-material-extensions.nix
new file mode 100644
index 000000000000..2d03c8fa8c5d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/mkdocs-material/mkdocs-material-extensions.nix
@@ -0,0 +1,24 @@
+{ lib, fetchFromGitHub, buildPythonPackage }:
+
+buildPythonPackage rec {
+  pname = "mkdocs-material-extensions";
+  version = "1.0.3";
+
+  src = fetchFromGitHub {
+    owner = "facelessuser";
+    repo = pname;
+    rev = version;
+    sha256 = "1mvc13lz16apnli2qcqf0dvlm8mshy47jmz2vp72lja6x8jfq2p3";
+  };
+
+  doCheck = false; # Circular dependency
+
+  pythonImportsCheck = [ "materialx" ];
+
+  meta = with lib; {
+    description = "Markdown extension resources for MkDocs Material";
+    homepage = "https://github.com/facelessuser/mkdocs-material-extensions";
+    license = licenses.mit;
+    maintainers = with maintainers; [ dandellion ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/mlflow/default.nix b/nixpkgs/pkgs/development/python-modules/mlflow/default.nix
index add6ee40de4c..49d6bd7a3248 100644
--- a/nixpkgs/pkgs/development/python-modules/mlflow/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mlflow/default.nix
@@ -27,12 +27,12 @@
 
 buildPythonPackage rec {
   pname = "mlflow";
-  version = "1.23.1";
+  version = "1.24.0";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "03rfyhli7vbb1pz0zw75mdwj9pz3awxi3dadxn5glpwn953w6r5y";
+    sha256 = "sha256-6hZwiOuHtB8RFwgyfPeV8plLBPlnAdVP1f1bNah4en4=";
   };
 
   # run into https://stackoverflow.com/questions/51203641/attributeerror-module-alembic-context-has-no-attribute-config
diff --git a/nixpkgs/pkgs/development/python-modules/motionblinds/default.nix b/nixpkgs/pkgs/development/python-modules/motionblinds/default.nix
index 8bed74a4d520..5d67133b2559 100644
--- a/nixpkgs/pkgs/development/python-modules/motionblinds/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/motionblinds/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "motionblinds";
-  version = "0.6.1";
+  version = "0.6.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "starkillerOG";
     repo = "motion-blinds";
     rev = version;
-    sha256 = "sha256-31ofLiBQjSMDtptgYF5rqS1bB5UDUbsbo25Nrk4WvIY=";
+    sha256 = "sha256-Y5yF/dJUm0ICUY8UU8ILypSAnCVanvW4hzyz7ZOdBrc=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/msgpack/default.nix b/nixpkgs/pkgs/development/python-modules/msgpack/default.nix
index 3feeca74ccd6..805d347389c0 100644
--- a/nixpkgs/pkgs/development/python-modules/msgpack/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/msgpack/default.nix
@@ -1,7 +1,8 @@
-{ buildPythonPackage
+{ lib
+, buildPythonPackage
 , fetchPypi
-, pytest
-, lib
+, pytestCheckHook
+, setuptools
 }:
 
 buildPythonPackage rec {
@@ -13,17 +14,17 @@ buildPythonPackage rec {
     sha256 = "51fdc7fb93615286428ee7758cecc2f374d5ff363bdd884c7ea622a7a327a81e";
   };
 
-  checkPhase = ''
-    py.test
-  '';
+  nativeBuildInputs = [
+    setuptools
+  ];
 
-  checkInputs = [ pytest ];
+  checkInputs = [ pytestCheckHook ];
 
-  meta = {
+  meta = with lib;  {
     homepage = "https://github.com/msgpack/msgpack-python";
     description = "MessagePack serializer implementation for Python";
     changelog = "https://github.com/msgpack/msgpack-python/blob/master/ChangeLog.rst";
-    license = lib.licenses.asl20;
-    # maintainers =  ?? ;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/mutag/default.nix b/nixpkgs/pkgs/development/python-modules/mutag/default.nix
index ee190008f592..b9701073e0bd 100644
--- a/nixpkgs/pkgs/development/python-modules/mutag/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mutag/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, fetchgit
+, fetchFromGitHub
 , isPy3k
 , pyparsing
 }:
@@ -10,10 +10,11 @@ buildPythonPackage {
   version = "0.0.2-2ffa0258ca";
   disabled = ! isPy3k;
 
-  src = fetchgit {
-    url = "https://github.com/aroig/mutag.git";
-    sha256 = "0axdnwdypfd74a9dnw0g25m16xx1yygyl828xy0kpj8gyqdc6gb1";
+  src = fetchFromGitHub {
+    owner = "aroig";
+    repo = "mutag";
     rev = "2ffa0258cadaf79313241f43bf2c1caaf197d9c2";
+    sha256 = "sha256-YT3DGvYPyTuB70gg6p/3oXcTahEPcNuSIqe56xu3rSs=";
   };
 
   propagatedBuildInputs = [ pyparsing ];
diff --git a/nixpkgs/pkgs/development/python-modules/myfitnesspal/default.nix b/nixpkgs/pkgs/development/python-modules/myfitnesspal/default.nix
index 567eeaf69698..f6df7b88f852 100644
--- a/nixpkgs/pkgs/development/python-modules/myfitnesspal/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/myfitnesspal/default.nix
@@ -8,24 +8,23 @@
 , measurement
 , python-dateutil
 , requests
-, six
 , rich
 , pytestCheckHook
 , mock
 , nose
+, pythonOlder
 }:
 
-# TODO: Define this package in "all-packages.nix" using "toPythonApplication".
-# This currently errors out, complaining about not being able to find "etree" from "lxml" even though "lxml" is defined in "propagatedBuildInputs".
-
 buildPythonPackage rec {
   pname = "myfitnesspal";
-  version = "1.16.6";
+  version = "1.17.0";
   format = "setuptools";
 
+  disabled = pythonOlder "3.7";
+
   src = fetchPypi {
     inherit pname version;
-    sha256 = "ac07369ede3ca4c6d673e02f2b9e0893b17d079f3085e36fdfdbdd1cba9f37db";
+    sha256 = "sha256-UXFvKQtC44EvscYWXK7KI/do3U0wTWI3zKwvsRdzKrs=";
   };
 
   propagatedBuildInputs = [
@@ -36,7 +35,6 @@ buildPythonPackage rec {
     measurement
     python-dateutil
     requests
-    six
     rich
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix b/nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix
index b224d40ee0bc..a9e4a3eed5cd 100644
--- a/nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "mypy-boto3-builder";
-  version = "7.3.0";
+  version = "7.5.4";
   format = "pyproject";
 
   disabled = pythonOlder "3.10";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "vemel";
     repo = "mypy_boto3_builder";
     rev = version;
-    hash = "sha256-X/dPO2p6GmnyJwcVPOmyo9zYda2uYfBAkuKTeX0Bt0Q=";
+    hash = "sha256-NS8lFetL/8hcvCnIHw+GDtdEKFsN81MPybEA4PGaP/Q=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/nassl/default.nix b/nixpkgs/pkgs/development/python-modules/nassl/default.nix
index b9e19439251a..3e159dfe7cee 100644
--- a/nixpkgs/pkgs/development/python-modules/nassl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nassl/default.nix
@@ -9,6 +9,7 @@
 , tls-parser
 , cacert
 , pytestCheckHook
+, pythonAtLeast
 , pythonOlder
 }:
 
@@ -50,9 +51,11 @@ let
         "enable-tls1_3"
         "no-async"
       ];
-      patches = builtins.filter (
-        p: (builtins.baseNameOf (toString p)) != "macos-yosemite-compat.patch"
-      ) oldAttrs.patches;
+      patches = builtins.filter
+        (
+          p: (builtins.baseNameOf (toString p)) != "macos-yosemite-compat.patch"
+        )
+        oldAttrs.patches;
       buildInputs = oldAttrs.buildInputs ++ [ zlibStatic cacert ];
       meta = oldAttrs.meta // {
         knownVulnerabilities = [
@@ -76,9 +79,11 @@ let
         sha256 = "1zqb1rff1wikc62a7vj5qxd1k191m8qif5d05mwdxz2wnzywlg72";
       };
       configureFlags = oldAttrs.configureFlags ++ nasslOpensslFlagsCommon;
-      patches = builtins.filter (
-        p: (builtins.baseNameOf (toString p)) == "darwin64-arm64.patch"
-      ) oldAttrs.patches;
+      patches = builtins.filter
+        (
+          p: (builtins.baseNameOf (toString p)) == "darwin64-arm64.patch"
+        )
+        oldAttrs.patches;
       buildInputs = oldAttrs.buildInputs ++ [ zlibStatic ];
       # openssl_1_0_2 needs `withDocs = false`
       outputs = lib.remove "doc" oldAttrs.outputs;
@@ -87,42 +92,54 @@ let
 in
 buildPythonPackage rec {
   pname = "nassl";
-  version = "4.0.1";
+  version = "4.0.2";
+  format = "setuptools";
+
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "nabla-c0d3";
     repo = pname;
     rev = version;
-    hash = "sha256-QzO7ABh2weBO6NVFIj7kZpS8ashbDGompuvdKteJeUc=";
+    hash = "sha256-lLyHXLmBVvT+LgsKBU8DcUXd0qaLSrwvXxFnIB9CHcU=";
   };
 
-  postPatch = let
-    legacyOpenSSLVersion = lib.replaceStrings ["."] ["_"] opensslLegacyStatic.version;
-    modernOpenSSLVersion = lib.replaceStrings ["."] ["_"] opensslStatic.version;
-    zlibVersion = zlibStatic.version;
-  in ''
-    mkdir -p deps/openssl-OpenSSL_${legacyOpenSSLVersion}/
-    cp ${opensslLegacyStatic.out}/lib/libssl.a \
-      ${opensslLegacyStatic.out}/lib/libcrypto.a \
-      deps/openssl-OpenSSL_${legacyOpenSSLVersion}/
-    ln -s ${opensslLegacyStatic.out.dev}/include deps/openssl-OpenSSL_${legacyOpenSSLVersion}/include
-    ln -s ${opensslLegacyStatic.bin}/bin deps/openssl-OpenSSL_${legacyOpenSSLVersion}/apps
+  postPatch =
+    let
+      legacyOpenSSLVersion = lib.replaceStrings [ "." ] [ "_" ] opensslLegacyStatic.version;
+      modernOpenSSLVersion = lib.replaceStrings [ "." ] [ "_" ] opensslStatic.version;
+      zlibVersion = zlibStatic.version;
+    in
+    ''
+      mkdir -p deps/openssl-OpenSSL_${legacyOpenSSLVersion}/
+      cp ${opensslLegacyStatic.out}/lib/libssl.a \
+        ${opensslLegacyStatic.out}/lib/libcrypto.a \
+        deps/openssl-OpenSSL_${legacyOpenSSLVersion}/
+      ln -s ${opensslLegacyStatic.out.dev}/include deps/openssl-OpenSSL_${legacyOpenSSLVersion}/include
+      ln -s ${opensslLegacyStatic.bin}/bin deps/openssl-OpenSSL_${legacyOpenSSLVersion}/apps
 
-    mkdir -p deps/openssl-OpenSSL_${modernOpenSSLVersion}/
-    cp ${opensslStatic.out}/lib/libssl.a \
-      ${opensslStatic.out}/lib/libcrypto.a \
-      deps/openssl-OpenSSL_${modernOpenSSLVersion}/
-    ln -s ${opensslStatic.out.dev}/include deps/openssl-OpenSSL_${modernOpenSSLVersion}/include
-    ln -s ${opensslStatic.bin}/bin deps/openssl-OpenSSL_${modernOpenSSLVersion}/apps
+      mkdir -p deps/openssl-OpenSSL_${modernOpenSSLVersion}/
+      cp ${opensslStatic.out}/lib/libssl.a \
+        ${opensslStatic.out}/lib/libcrypto.a \
+        deps/openssl-OpenSSL_${modernOpenSSLVersion}/
+      ln -s ${opensslStatic.out.dev}/include deps/openssl-OpenSSL_${modernOpenSSLVersion}/include
+      ln -s ${opensslStatic.bin}/bin deps/openssl-OpenSSL_${modernOpenSSLVersion}/apps
 
-    mkdir -p deps/zlib-${zlibVersion}/
-    cp ${zlibStatic.out}/lib/libz.a deps/zlib-${zlibVersion}/
-  '';
+      mkdir -p deps/zlib-${zlibVersion}/
+      cp ${zlibStatic.out}/lib/libz.a deps/zlib-${zlibVersion}/
+    '';
 
-  propagatedBuildInputs = [ tls-parser ];
+  nativeBuildInputs = [
+    invoke
+  ];
+
+  propagatedBuildInputs = [
+    tls-parser
+  ];
 
-  nativeBuildInputs = [ invoke ];
+  checkInputs = [
+    pytestCheckHook
+  ];
 
   buildPhase = ''
     invoke build.nassl
@@ -131,19 +148,23 @@ buildPythonPackage rec {
 
   doCheck = true;
 
-  pythonImportsCheck = [ "nassl" ];
-
-  checkInputs = [ pytestCheckHook ];
+  pythonImportsCheck = [
+    "nassl"
+  ];
 
   disabledTests = [
     "Online"
+  ] ++ lib.optionals (pythonAtLeast "3.10") [
+    "test_write_bad"
+    "test_client_authentication_no_certificate_supplied"
+    "test_client_authentication_succeeds"
   ];
 
   meta = with lib; {
+    description = "Low-level OpenSSL wrapper for Python";
     homepage = "https://github.com/nabla-c0d3/nassl";
-    description = "Low-level OpenSSL wrapper for Python 3.7+";
-    platforms = with platforms; linux ++ darwin;
     license = licenses.agpl3Only;
     maintainers = with maintainers; [ veehaitch ];
+    platforms = with platforms; linux ++ darwin;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/nbxmpp/default.nix b/nixpkgs/pkgs/development/python-modules/nbxmpp/default.nix
index f230e0c80c65..749d3e6e30cc 100644
--- a/nixpkgs/pkgs/development/python-modules/nbxmpp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nbxmpp/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "nbxmpp";
-  version = "2.0.4";
+  version = "2.0.6";
 
   disabled = pythonOlder "3.7";
 
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "gajim";
     repo = "python-nbxmpp";
     rev = "nbxmpp-${version}";
-    sha256 = "1c2ncx1k93gxndaw183x0vlqgjnippl3v6sknklj3z2yjcj0l1ks";
+    sha256 = "sha256:03iydz0r9m8559srawwnhaqzqm9liwrnc8v6abj4w3m1lil32bid";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ndspy/default.nix b/nixpkgs/pkgs/development/python-modules/ndspy/default.nix
index 9c4d91df9d65..7408949649fa 100644
--- a/nixpkgs/pkgs/development/python-modules/ndspy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ndspy/default.nix
@@ -1,22 +1,44 @@
-{ lib, buildPythonPackage, fetchPypi, crcmod }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, crcmod
+, pytestCheckHook
+, pythonOlder
+}:
 
 buildPythonPackage rec {
   pname = "ndspy";
-  version = "3.0.0";
+  version = "4.0.0";
+  format = "setuptools";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1s0i81gspas22bjwk9vhy3x5sw1svyybk7c2j1ixc77drr9ym20a";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "RoadrunnerWMC";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0x3sp10had1mq192m7kgjivvs8kpjagxjgj9d4z95dfjhzzbjh70";
   };
 
-  propagatedBuildInputs = [ crcmod ];
+  propagatedBuildInputs = [
+    crcmod
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "ndspy"
+  ];
 
-  doCheck = false; # there are no tests
-  pythonImportsCheck = [ "ndspy" ];
+  preCheck = ''
+    cd tests
+  '';
 
   meta = with lib; {
+    description = "Python library for many Nintendo DS file formats";
     homepage = "https://github.com/RoadrunnerWMC/ndspy";
-    description = "A Python library for many Nintendo DS file formats";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ xfix ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/neo4j-driver/default.nix b/nixpkgs/pkgs/development/python-modules/neo4j-driver/default.nix
index 6b81af0c2940..63a2efafbd6e 100644
--- a/nixpkgs/pkgs/development/python-modules/neo4j-driver/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/neo4j-driver/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "neo4j-driver";
-  version = "4.4.1";
+  version = "4.4.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "neo4j";
     repo = "neo4j-python-driver";
     rev = version;
-    sha256 = "sha256-aGOqD6mmd3dulQ/SdaDPDZhkCwXdYCucHw+CrkJf1M0=";
+    sha256 = "sha256-rYedmxQvT+RjVdbDckLv00J4YuEQtMuIc8Q5FGWr3Rw=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/nested-lookup/default.nix b/nixpkgs/pkgs/development/python-modules/nested-lookup/default.nix
new file mode 100644
index 000000000000..7e56158ff145
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/nested-lookup/default.nix
@@ -0,0 +1,36 @@
+{ buildPythonPackage
+, fetchFromGitHub
+, lib
+, pytestCheckHook
+, six
+}:
+
+buildPythonPackage rec {
+  pname = "nested-lookup";
+  version = "0.2.23";
+
+  src = fetchFromGitHub {
+    owner = "russellballestrini";
+    repo = "nested-lookup";
+    # https://github.com/russellballestrini/nested-lookup/issues/47
+    rev = "c1b0421479efa378545bc71efa3b72882e8fec17";
+    sha256 = "sha256-jgfYLSsFLQSsOH4NzbDPKFIG+tWWZ1zTWcZEaX2lthg=";
+  };
+
+  propagatedBuildInputs = [
+    six
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "nested_lookup" ];
+
+  meta = with lib; {
+    description = "Python functions for working with deeply nested documents (lists and dicts)";
+    homepage = "https://github.com/russellballestrini/nested-lookup";
+    license = licenses.publicDomain;
+    maintainers = with maintainers; [ tboerger ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/nilearn/default.nix b/nixpkgs/pkgs/development/python-modules/nilearn/default.nix
index c79ea52f558c..60e11ef1d12d 100644
--- a/nixpkgs/pkgs/development/python-modules/nilearn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nilearn/default.nix
@@ -12,7 +12,8 @@ buildPythonPackage rec {
 
   checkInputs = [ pytestCheckHook ];
   disabledTests = [ "test_clean_confounds" ];  # https://github.com/nilearn/nilearn/issues/2608
-  pytestFlagsArray = [ "nilearn" ];
+  # do subset of tests which don't fetch resources
+  pytestFlagsArray = [ "nilearn/connectome/tests" ];
 
   propagatedBuildInputs = [
     joblib
diff --git a/nixpkgs/pkgs/development/python-modules/nocasedict/default.nix b/nixpkgs/pkgs/development/python-modules/nocasedict/default.nix
index a9cb021a8413..982f2abe880d 100644
--- a/nixpkgs/pkgs/development/python-modules/nocasedict/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nocasedict/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "nocasedict";
-  version = "1.0.2";
+  version = "1.0.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "86e2dae49e34de7c31b65b486c8f9aa58b66dc2e8ee9b34c390c6c58885c85a0";
+    sha256 = "sha256-giC5e6BrCOst7e13TEBsd+DKDVNSrnEkn2+dHyoXvXs=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/nocaselist/default.nix b/nixpkgs/pkgs/development/python-modules/nocaselist/default.nix
index e7947eba92ae..5fc6bd6f8e66 100644
--- a/nixpkgs/pkgs/development/python-modules/nocaselist/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nocaselist/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "nocaselist";
-  version = "1.0.4";
+  version = "1.0.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "73a9c0659e7135c66e46a6ab06e2cb637ce9248d73c690ebd31afb72a4e03ac0";
+    sha256 = "sha256-4cEsoq6dNFs0lI8sj2DjiUYZ4r4u0otOzF5/HeoRfR0=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/notifymuch/default.nix b/nixpkgs/pkgs/development/python-modules/notifymuch/default.nix
new file mode 100644
index 000000000000..bc1610e2ca94
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/notifymuch/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonApplication
+, isPy3k
+, fetchFromGitHub
+, notmuch
+, pygobject3
+, gobject-introspection
+, libnotify
+, wrapGAppsHook
+, gtk3
+}:
+
+buildPythonApplication rec {
+  pname = "notifymuch";
+  version = "0.1";
+  disabled = !isPy3k;
+
+  src = fetchFromGitHub {
+    owner = "kspi";
+    repo = "notifymuch";
+    # https://github.com/kspi/notifymuch/issues/11
+    rev = "9d4aaf54599282ce80643b38195ff501120807f0";
+    sha256 = "1lssr7iv43mp5v6nzrfbqlfzx8jcc7m636wlfyhhnd8ydd39n6k4";
+  };
+
+  propagatedBuildInputs = [
+    notmuch
+    pygobject3
+    libnotify
+    gtk3
+  ];
+
+  nativeBuildInputs = [
+    gobject-introspection
+    wrapGAppsHook
+  ];
+
+  dontWrapGApps = true;
+
+  preFixup = ''
+    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
+  strictDeps = false;
+
+  meta = with lib; {
+    description = "Display desktop notifications for unread mail in a notmuch database";
+    homepage = "https://github.com/kspi/notifymuch";
+    maintainers = with maintainers; [ arjan-s ];
+    license = licenses.gpl3;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/networking/mailreaders/alot/notmuch.nix b/nixpkgs/pkgs/development/python-modules/notmuch2/default.nix
index bd195b52d44e..5d74270a58c2 100644
--- a/nixpkgs/pkgs/applications/networking/mailreaders/alot/notmuch.nix
+++ b/nixpkgs/pkgs/development/python-modules/notmuch2/default.nix
@@ -14,6 +14,12 @@ buildPythonPackage {
 
   buildInputs = [ python notmuch cffi ];
 
+  # since notmuch 0.35, this package expects _notmuch_config.py that is
+  # generated by notmuch's configure script
+  postPatch = ''
+    cp ${notmuch.bindingconfig}/_notmuch_config.py .
+  '';
+
   # no tests
   doCheck = false;
   pythonImportsCheck = [ "notmuch2" ];
diff --git a/nixpkgs/pkgs/development/python-modules/obfsproxy/default.nix b/nixpkgs/pkgs/development/python-modules/obfsproxy/default.nix
index 0c0781bc577b..5f652cb97f3c 100644
--- a/nixpkgs/pkgs/development/python-modules/obfsproxy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/obfsproxy/default.nix
@@ -12,7 +12,7 @@ buildPythonPackage rec {
   version = "0.2.13";
 
   src = fetchgit {
-    url = meta.repositories.git;
+    url = "https://git.torproject.org/pluggable-transports/obfsproxy.git";
     rev = "refs/tags/${pname}-${version}";
     sha256 = "04ja1cl8xzqnwrd2gi6nlnxbmjri141bzwa5gybvr44d8h3k2nfa";
   };
@@ -30,7 +30,6 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "A pluggable transport proxy";
     homepage = "https://www.torproject.org/projects/obfsproxy";
-    repositories.git = "https://git.torproject.org/pluggable-transports/obfsproxy.git";
     maintainers = with maintainers; [ thoughtpolice ];
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/ocrmypdf/default.nix b/nixpkgs/pkgs/development/python-modules/ocrmypdf/default.nix
index ed672b7d01c5..fe5211802807 100644
--- a/nixpkgs/pkgs/development/python-modules/ocrmypdf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ocrmypdf/default.nix
@@ -27,7 +27,7 @@
 
 buildPythonPackage rec {
   pname = "ocrmypdf";
-  version = "13.4.0";
+  version = "13.4.1";
 
   src = fetchFromGitHub {
     owner = "jbarlow83";
@@ -39,7 +39,7 @@ buildPythonPackage rec {
     extraPostFetch = ''
       rm "$out/.git_archival.txt"
     '';
-    sha256 = "sha256-LgHhF+vztXPCn71d87OMn0umLvps7We6vyjdRJZw+3E=";
+    sha256 = "sha256-gxgeEwm3cYNllcmRTZhdyIWWGKXTewyVW314k732swE=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
@@ -80,6 +80,12 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  postPatch = ''
+    # https://github.com/ocrmypdf/OCRmyPDF/issues/933
+    substituteInPlace setup.cfg \
+      --replace "pdfminer.six!=20200720,>=20191110,<=20211012" "pdfminer.six!=20200720,>=20191110,<=20220319"
+  '';
+
   pythonImportsCheck = [
     "ocrmypdf"
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/openai/default.nix b/nixpkgs/pkgs/development/python-modules/openai/default.nix
index bbe9d4a01caf..4fb744826b79 100644
--- a/nixpkgs/pkgs/development/python-modules/openai/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/openai/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "openai";
-  version = "0.15.0";
+  version = "0.16.0";
 
   disabled = pythonOlder "3.7.1";
 
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "openai";
     repo = "openai-python";
     rev = "v${version}";
-    sha256 = "sha256-HOMBVrAz3cP8r4w8CKXKy6epxf00myYJiKv1PQ1iqhQ=";
+    sha256 = "sha256-9BxFOiGIf3Cy7OU0as6onV5ltECInM9wwCr+qCMuPbU=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/openapi-core/default.nix b/nixpkgs/pkgs/development/python-modules/openapi-core/default.nix
index 0d48ab04a1db..199ea38ae4ab 100644
--- a/nixpkgs/pkgs/development/python-modules/openapi-core/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/openapi-core/default.nix
@@ -1,34 +1,40 @@
 { lib
+, attrs
 , buildPythonPackage
+, dictpath
+, django
+, djangorestframework
+, falcon
 , fetchFromGitHub
+, flask
 , isodate
-, dictpath
-, openapi-spec-validator
-, openapi-schema-validator
-, six
 , lazy-object-proxy
-, attrs
-, werkzeug
-, parse
+, mock
 , more-itertools
+, openapi-schema-validator
+, openapi-spec-validator
+, parse
 , pytestCheckHook
-, falcon
-, flask
-, django
-, djangorestframework
+, pythonOlder
 , responses
-, mock
+, six
+, webob
+, werkzeug
+, python
 }:
 
 buildPythonPackage rec {
   pname = "openapi-core";
   version = "0.14.2";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "p1c2u";
     repo = "openapi-core";
     rev = version;
-    sha256 = "1npsibyf8zx6z230yl19kyap8g25kqvgm7z1w6rm6jxv58yqsp7r";
+    hash = "sha256-+VyNPSq7S1Oz4eGf+jaeRTx0lZ8pUA+G+KZ/5PyK+to=";
   };
 
   postPatch = ''
@@ -36,31 +42,34 @@ buildPythonPackage rec {
   '';
 
   propagatedBuildInputs = [
-    isodate
+    attrs
     dictpath
-    openapi-spec-validator
+    isodate
+    lazy-object-proxy
+    more-itertools
     openapi-schema-validator
+    openapi-spec-validator
+    parse
     six
-    lazy-object-proxy
-    attrs
     werkzeug
-    parse
-    more-itertools
   ];
 
   checkInputs = [
-    pytestCheckHook
-    falcon
-    flask
     django
     djangorestframework
-    responses
+    falcon
+    flask
     mock
+    pytestCheckHook
+    responses
+    webob
   ];
 
   disabledTestPaths = [
     # AttributeError: 'str' object has no attribute '__name__'
     "tests/integration/validation"
+    # Unable to detect SECRET_KEY and ROOT_URLCONF
+    "tests/integration/contrib/test_django.py"
   ];
 
   disabledTests = [
diff --git a/nixpkgs/pkgs/development/python-modules/opensfm/default.nix b/nixpkgs/pkgs/development/python-modules/opensfm/default.nix
index dec998f451c1..ae1ef7b59555 100644
--- a/nixpkgs/pkgs/development/python-modules/opensfm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/opensfm/default.nix
@@ -44,19 +44,15 @@ let
 in
 buildPythonPackage rec {
   pname = "OpenSfM";
-  version = "0.5.2";
+  version = "unstable-2022-03-10";
 
   src = fetchFromGitHub {
     owner = "mapillary";
     repo = pname;
-    rev = "79aa4bdd8bd08dc0cd9e3086d170cedb29ac9760";
-    sha256 = "sha256-dHBrkYwLA1OUxUSoe7DysyeEm9Yy70tIJvAsXivdjrM=";
+    rev = "536b6e1414c8a93f0815dbae85d03749daaa5432";
+    sha256 = "Nfl20dFF2PKOkIvHbRxu1naU+qhz4whLXJvX5c5Wnwo=";
   };
   patches = [
-    (fetchpatch {
-      url = "https://github.com/mapillary/OpenSfM/pull/872/commits/a76671db11038f3f4dfe5b8f17582fb447ad7dd5.patch";
-      sha256 = "sha256-4nizQiZIjucdydOLrETvs1xdV3qiYqAQ7x1HECKvlHs=";
-    })
     ./0002-cmake-find-system-distributed-gtest.patch
     ./0003-cmake-use-system-pybind11.patch
     ./0004-pybind_utils.h-conflicts-with-nixpkgs-pybind.patch
@@ -121,6 +117,7 @@ buildPythonPackage rec {
   meta = {
     maintainers = [ lib.maintainers.SomeoneSerge ];
     license = lib.licenses.bsd2;
+    changelog = "https://github.com/mapillary/OpenSfM/blob/${src.rev}/CHANGELOG.md";
     description = "Open source Structure-from-Motion pipeline from Mapillary";
     homepage = "https://opensfm.org/";
   };
diff --git a/nixpkgs/pkgs/development/python-modules/openstackdocstheme/default.nix b/nixpkgs/pkgs/development/python-modules/openstackdocstheme/default.nix
index 797a524e0172..0a04006704c1 100644
--- a/nixpkgs/pkgs/development/python-modules/openstackdocstheme/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/openstackdocstheme/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "openstackdocstheme";
-  version = "2.3.1";
+  version = "2.4.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-zzWgAozJrYMFyGWzoDLYbeoY+IPlgzmVhnX7lgM6BXs=";
+    sha256 = "sha256-dFrZTObRDKB8aw1/i6febpttymbY3cPzA3ckNuhVt4c=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/ormar/default.nix b/nixpkgs/pkgs/development/python-modules/ormar/default.nix
index bbf95e98cffe..5546f58b2624 100644
--- a/nixpkgs/pkgs/development/python-modules/ormar/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ormar/default.nix
@@ -24,7 +24,7 @@
 
 buildPythonPackage rec {
   pname = "ormar";
-  version = "0.10.25";
+  version = "0.11.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -33,7 +33,7 @@ buildPythonPackage rec {
     owner = "collerek";
     repo = pname;
     rev = version;
-    hash = "sha256-AggrsXw9fUYfc38AiSDSoh7SIEf4gPf+LlAvrxZiFL4=";
+    hash = "sha256-I41asBWwOwmi6Yhw/JZ/EcpDWMAoPyxPIGIPiZQV+Yk=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/osc-lib/default.nix b/nixpkgs/pkgs/development/python-modules/osc-lib/default.nix
index 95c5e5d6a328..e9a662412b77 100644
--- a/nixpkgs/pkgs/development/python-modules/osc-lib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/osc-lib/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , cliff
 , oslo-i18n
 , oslo-utils
@@ -13,13 +13,18 @@
 
 buildPythonPackage rec {
   pname = "osc-lib";
-  version = "2.5.0";
+  version = "unstable-2022-03-09";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "sha256-2PikUPqyoSlOCu+M3JolWhvMW1jhsvYJjjXm2x4T6dE=";
+  src = fetchFromGitHub {
+    owner = "openstack";
+    repo = "osc-lib";
+    rev = "65c73fd5030276e34f3d52c03ddb9d27cd8ec6f5";
+    sha256 = "sha256-CLE9lrMMlvVrihe+N4wvIKe8t9IZ1TpHHVdn2dnvAOI=";
   };
 
+  # fake version to make pbr.packaging happy and not reject it...
+  PBR_VERSION = "2.5.0";
+
   nativeBuildInputs = [
     pbr
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/osmnx/default.nix b/nixpkgs/pkgs/development/python-modules/osmnx/default.nix
index 4cc0ce80d4d1..75a2ce44630b 100755
--- a/nixpkgs/pkgs/development/python-modules/osmnx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/osmnx/default.nix
@@ -3,14 +3,14 @@
 
 buildPythonPackage rec {
   pname = "osmnx";
-  version = "1.1.1";
+  version = "1.1.2";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner  = "gboeing";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "0dkv3fnlq23d7d30lhdf4a313lxy3a5qfldidvszs1z9n16ycnwb";
+    sha256 = "sha256-qrTAXZFm88elMrVjvGwfdNwTA/PRdCOHFqpcgoKVGNk=";
   };
 
   propagatedBuildInputs = [ geopandas matplotlib networkx numpy pandas requests Rtree shapely folium scikit-learn scipy gdal rasterio ];
diff --git a/nixpkgs/pkgs/development/python-modules/panel/default.nix b/nixpkgs/pkgs/development/python-modules/panel/default.nix
index c5da10a30b07..48247112d958 100644
--- a/nixpkgs/pkgs/development/python-modules/panel/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/panel/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "panel";
-  version = "0.12.6";
+  version = "0.12.7";
 
   format = "wheel";
 
@@ -23,7 +23,7 @@ buildPythonPackage rec {
   # tries to fetch even more artifacts
   src = fetchPypi {
     inherit pname version format;
-    hash = "sha256-ARAbBM0QYZlZqV51lMRoEZEQH1jlHRhlon3nfTi7dnM=";
+    hash = "sha256-VcoMGYT48WduyuyTB/4KJybT/pBKV0hB1pSpZGagAeA=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/paramiko/default.nix b/nixpkgs/pkgs/development/python-modules/paramiko/default.nix
index d7be0348d54a..aef257fcb4ff 100644
--- a/nixpkgs/pkgs/development/python-modules/paramiko/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/paramiko/default.nix
@@ -9,16 +9,17 @@
 , pynacl
 , pytest-relaxed
 , pytestCheckHook
+, fetchpatch
 }:
 
 buildPythonPackage rec {
   pname = "paramiko";
-  version = "2.9.2";
+  version = "2.10.3";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "944a9e5dbdd413ab6c7951ea46b0ab40713235a9c4c5ca81cfe45c6f14fa677b";
+    sha256 = "sha256-3bGXeFOu+CgEs11yoOWXskT6MmxATDUL0AxbAdv+5xo=";
   };
 
   propagatedBuildInputs = [
@@ -48,6 +49,15 @@ buildPythonPackage rec {
     "paramiko"
   ];
 
+  patches = [
+    # Fix usage of dsa keys
+    # https://github.com/paramiko/paramiko/pull/1606/
+    (fetchpatch {
+      url = "https://github.com/paramiko/paramiko/commit/18e38b99f515056071fb27b9c1a4f472005c324a.patch";
+      sha256 = "sha256-bPDghPeLo3NiOg+JwD5CJRRLv2VEqmSx1rOF2Tf8ZDA=";
+    })
+  ];
+
   __darwinAllowLocalNetworking = true;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/parver/default.nix b/nixpkgs/pkgs/development/python-modules/parver/default.nix
index 268e90020100..878b2746758c 100644
--- a/nixpkgs/pkgs/development/python-modules/parver/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/parver/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , six
 , attrs
-, pytest
+, pytestCheckHook
 , hypothesis
 , pretend
 , arpeggio
@@ -18,11 +18,27 @@ buildPythonPackage rec {
     sha256 = "c902e0653bcce927cc156a7fd9b3a51924cbce3bf3d0bfd49fc282bfd0c5dfd3";
   };
 
-  propagatedBuildInputs = [ six attrs arpeggio ];
-  checkInputs = [ pytest hypothesis pretend ];
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "arpeggio ~= 1.7" "arpeggio"
+  '';
 
-  meta = {
-    description = "parver allows parsing and manipulation of PEP 440 version numbers.";
-    license = lib.licenses.mit;
+  propagatedBuildInputs = [
+    six
+    attrs
+    arpeggio
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    hypothesis
+    pretend
+  ];
+
+  meta = with lib; {
+    description = "Allows parsing and manipulation of PEP 440 version numbers";
+    homepage = "https://github.com/RazerM/parver";
+    license = licenses.mit;
+    maintainers = with maintainers; [ SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/passlib/default.nix b/nixpkgs/pkgs/development/python-modules/passlib/default.nix
index c4bcfaf85932..ab29ab74d684 100644
--- a/nixpkgs/pkgs/development/python-modules/passlib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/passlib/default.nix
@@ -1,4 +1,5 @@
-{ buildPythonPackage
+{ lib
+, buildPythonPackage
 , fetchPypi
 , nose
 , bcrypt
@@ -18,8 +19,9 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ bcrypt argon2_cffi ];
   propagatedNativeBuildInputs = [ argon2_cffi ];
 
-  meta = {
+  meta = with lib; {
     description = "A password hashing library for Python";
-    homepage    = "https://code.google.com/p/passlib/";
+    homepage = "https://foss.heptapod.net/python-libs/passlib";
+    license = licenses.bsdOriginal;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pathable/default.nix b/nixpkgs/pkgs/development/python-modules/pathable/default.nix
new file mode 100644
index 000000000000..39679fb1f575
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pathable/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+, poetry-core
+}:
+
+buildPythonPackage rec {
+  pname = "pathable";
+  version = "0.4.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "p1c2u";
+    repo = pname;
+    rev = version;
+    hash = "sha256-3qekweG+o7f6nm1cnCEHrWYn/fQ42GZrZkPwGbZcU38=";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  postPatch = ''
+    sed -i "/--cov/d" pyproject.toml
+  '';
+
+  pythonImportsCheck = [
+    "pathable"
+  ];
+
+  meta = with lib; {
+    description = "Library for object-oriented paths";
+    homepage = "https://github.com/p1c2u/pathable";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pdfminer_six/default.nix b/nixpkgs/pkgs/development/python-modules/pdfminer_six/default.nix
index 725fb9ab9f93..449ea4f7fd77 100644
--- a/nixpkgs/pkgs/development/python-modules/pdfminer_six/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pdfminer_six/default.nix
@@ -1,8 +1,8 @@
-{ lib, buildPythonPackage, fetchFromGitHub, isPy3k, cryptography, chardet, nose, sortedcontainers }:
+{ lib, buildPythonPackage, fetchFromGitHub, isPy3k, cryptography, chardet, pytestCheckHook }:
 
 buildPythonPackage rec {
   pname = "pdfminer_six";
-  version = "20201018";
+  version = "20220319";
 
   disabled = !isPy3k;
 
@@ -10,10 +10,10 @@ buildPythonPackage rec {
     owner = "pdfminer";
     repo = "pdfminer.six";
     rev = version;
-    sha256 = "1a2fxxnnjqbx344znpvx7cnv1881dk6585ibw01inhfq3w6yj2lr";
+    sha256 = "sha256-sjO7jmHSe4EDmJ1rfiXx+lsHxc+DfKeMet37Nbg03WQ=";
   };
 
-  propagatedBuildInputs = [ chardet cryptography sortedcontainers ];
+  propagatedBuildInputs = [ chardet cryptography ];
 
   postInstall = ''
     for file in $out/bin/*.py; do
@@ -21,11 +21,14 @@ buildPythonPackage rec {
     done
   '';
 
-  checkInputs = [ nose ];
-  checkPhase = ''
-    nosetests
+  postPatch = ''
+    # Verion is not stored in repo, gets added by a GitHub action after tag is created
+    # https://github.com/pdfminer/pdfminer.six/pull/727
+    substituteInPlace pdfminer/__init__.py --replace "__VERSION__" ${version}
   '';
 
+  checkInputs = [ pytestCheckHook ];
+
   meta = with lib; {
     description = "PDF parser and analyzer";
     homepage = "https://github.com/pdfminer/pdfminer.six";
diff --git a/nixpkgs/pkgs/development/python-modules/pdfx/default.nix b/nixpkgs/pkgs/development/python-modules/pdfx/default.nix
index 3b63e67fddec..25efc4418bf9 100644
--- a/nixpkgs/pkgs/development/python-modules/pdfx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pdfx/default.nix
@@ -13,7 +13,8 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace requirements.txt \
-      --replace "chardet==4.0.0" "chardet"
+      --replace "chardet==4.0.0" "chardet" \
+      --replace "pdfminer.six==20201018" "pdfminer.six"
   '';
 
   propagatedBuildInputs = [ pdfminer chardet ];
diff --git a/nixpkgs/pkgs/development/python-modules/pex/default.nix b/nixpkgs/pkgs/development/python-modules/pex/default.nix
index 4a03d60f1eea..353b69cb0a8b 100644
--- a/nixpkgs/pkgs/development/python-modules/pex/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pex/default.nix
@@ -2,16 +2,19 @@
 , buildPythonPackage
 , fetchPypi
 , flit-core
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "pex";
-  version = "2.1.71";
+  version = "2.1.74";
   format = "flit";
 
+  disabled = pythonOlder "3.7";
+
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-jJ7J4upDL1X1Eut1kUWdJu3Ih2mheNFt0wI+QTZMKow=";
+    hash = "sha256-SyKOwESn+0pFtm2GBFcS+kzIuv5cNXcayTtI7OyFpQg=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pint-pandas/default.nix b/nixpkgs/pkgs/development/python-modules/pint-pandas/default.nix
new file mode 100644
index 000000000000..385c4c13bd6d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pint-pandas/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, fetchpatch
+, setuptools-scm
+, pint
+, pandas
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "pint-pandas";
+  version = "0.2";
+
+  src = fetchPypi {
+    pname = "Pint-Pandas";
+    inherit version;
+    sha256 = "sha256-b2DS6ArBAuD5St25IG4PbMpe5C8Lf4kw2MeYAC5B+oc=";
+  };
+
+  patches = [
+    # Fixes a failing test, see: https://github.com/hgrecco/pint-pandas/issues/107
+    (fetchpatch{
+      url = "https://github.com/hgrecco/pint-pandas/commit/4c31e25609af968665ee60d019b9b5366f328680.patch";
+      sha256 = "vIT0LI4S73D4MBfGI8vtCZAM+Zb4PZ4E3xfpGKNyA4I=";
+    })
+  ];
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    pint
+    pandas
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Pandas support for pint";
+    license = licenses.bsd3;
+    homepage = "https://github.com/hgrecco/pint-pandas";
+    maintainers = with maintainers; [ doronbehar ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/plexapi/default.nix b/nixpkgs/pkgs/development/python-modules/plexapi/default.nix
index 02831000e883..29532a23b0c4 100644
--- a/nixpkgs/pkgs/development/python-modules/plexapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/plexapi/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "plexapi";
-  version = "4.10.0";
+  version = "4.10.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "pkkid";
     repo = "python-plexapi";
     rev = version;
-    sha256 = "sha256-paj1QFSHQw7MfOor1yYwb2vkF9b5RPj6R6dRstK24gA=";
+    sha256 = "sha256-0j3uf3wSDFSyDGo3oRi99KNKfhuGP2puSi0KgVjsXnQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/portend/black-19.10b0.patch b/nixpkgs/pkgs/development/python-modules/portend/black-19.10b0.patch
deleted file mode 100644
index e781139e3192..000000000000
--- a/nixpkgs/pkgs/development/python-modules/portend/black-19.10b0.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/test_portend.py b/test_portend.py
-index b2de8c2..3f90276 100644
---- a/test_portend.py
-+++ b/test_portend.py
-@@ -21,7 +21,7 @@ def socket_infos():
- 
- 
- def id_for_info(info):
--    af, = info[:1]
-+    (af,) = info[:1]
-     return str(af)
- 
- 
\ No newline at end of file
diff --git a/nixpkgs/pkgs/development/python-modules/portend/default.nix b/nixpkgs/pkgs/development/python-modules/portend/default.nix
index a3cb25624f7a..bf84e41610cb 100644
--- a/nixpkgs/pkgs/development/python-modules/portend/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/portend/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi
-, pytest, setuptools-scm, tempora, pytest-black, pytest-cov }:
+, pytestCheckHook, setuptools-scm, tempora  }:
 
 buildPythonPackage rec {
   pname = "portend";
@@ -10,19 +10,11 @@ buildPythonPackage rec {
     sha256 = "239e3116045ea823f6df87d6168107ad75ccc0590e37242af0cc1e98c5d224e4";
   };
 
-  postPatch = ''
-    substituteInPlace pytest.ini --replace "--flake8" ""
-  '';
-
   nativeBuildInputs = [ setuptools-scm ];
 
   propagatedBuildInputs = [ tempora ];
 
-  checkInputs = [ pytest pytest-black pytest-cov ];
-
-  checkPhase = ''
-    py.test --deselect=test_portend.py::TestChecker::test_check_port_listening
-  '';
+  checkInputs = [ pytestCheckHook ];
 
   # Some of the tests use localhost networking.
   __darwinAllowLocalNetworking = true;
diff --git a/nixpkgs/pkgs/development/python-modules/preprocess-cancellation/default.nix b/nixpkgs/pkgs/development/python-modules/preprocess-cancellation/default.nix
new file mode 100644
index 000000000000..d671cb4d66eb
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/preprocess-cancellation/default.nix
@@ -0,0 +1,31 @@
+{ lib, fetchFromGitHub, buildPythonPackage, pythonOlder, poetry-core
+, pytestCheckHook, pytest-cov
+, shapely }:
+
+buildPythonPackage rec {
+  pname = "preprocess-cancellation";
+  version = "0.2.0";
+  disabled = pythonOlder "3.6"; # >= 3.6
+  format = "pyproject";
+
+  # No tests in PyPI
+  src = fetchFromGitHub {
+    owner = "kageurufu";
+    repo = "cancelobject-preprocessor";
+    rev = version;
+    hash = "sha256-mn3/etXA5dkL+IsyxwD4/XjU/t4/roYFVyqQxlLOoOI=";
+  };
+
+  nativeBuildInputs = [ poetry-core ];
+
+  propagatedBuildInputs = [ shapely ];
+
+  checkInputs = [ pytestCheckHook pytest-cov ];
+
+  meta = with lib; {
+    description = "Klipper GCode Preprocessor for Object Cancellation";
+    homepage = "https://github.com/kageurufu/cancelobject-preprocessor";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ zhaofengli ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/protonvpn-nm-lib/default.nix b/nixpkgs/pkgs/development/python-modules/protonvpn-nm-lib/default.nix
index 6680b19908e9..9f12f220cfe9 100644
--- a/nixpkgs/pkgs/development/python-modules/protonvpn-nm-lib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/protonvpn-nm-lib/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "protonvpn-nm-lib";
-  version = "3.7.0";
+  version = "3.8.0";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "ProtonVPN";
     repo = pname;
     rev = version;
-    sha256 = "sha256-RZ10p/Lg9GQj0CohW2v+THch5EaD236rEHETGjNStdY=";
+    sha256 = "sha256-fAaP9c66LcbZgezadGPUt400YRnrnFoBvpzlc1zxuc4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/proxmoxer/default.nix b/nixpkgs/pkgs/development/python-modules/proxmoxer/default.nix
index 125984554a0c..33b233bd6096 100644
--- a/nixpkgs/pkgs/development/python-modules/proxmoxer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/proxmoxer/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "proxmoxer";
-  version = "1.2.0";
+  version = "1.3.0";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "sha256-ElHocXrazwK+b5vdjYSJAYB4ajs2n+V8koj4QKkdDMQ=";
+    sha256 = "sha256-3EpId20WVVjXA/wxwy1peyHPcXdiT3fprABkcNBpZtE=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/publicsuffix2/default.nix b/nixpkgs/pkgs/development/python-modules/publicsuffix2/default.nix
index 30a02ec2f0dd..67699b107ab5 100644
--- a/nixpkgs/pkgs/development/python-modules/publicsuffix2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/publicsuffix2/default.nix
@@ -1,26 +1,28 @@
-{ lib, buildPythonPackage, fetchFromGitHub, requests }:
+{ lib, buildPythonPackage, fetchFromGitHub }:
 
 buildPythonPackage rec {
   pname = "publicsuffix2";
-  version = "2.20191221";
+  version = "2.2019-12-21";
 
-  # Tests are missing in the sdist
-  # See: https://github.com/nexB/python-publicsuffix2/issues/12
   src = fetchFromGitHub {
     owner = "nexB";
     repo = "python-publicsuffix2";
-    rev = "release-2.2019-12-21";
+    rev = "release-${version}";
     sha256 = "1dkvfvl0izq9hqzilnw8ipkbgjs9xyad9p21i3864hzinbh0wp9r";
   };
 
-  nativeBuildInputs = [ requests ];
+  postPatch = ''
+    # only used to update the interal publicsuffix list
+    substituteInPlace setup.py \
+      --replace "'requests >= 2.7.0'," ""
+  '';
+
+  pythonImportsCheck = [ "publicsuffix2" ];
 
   meta = with lib; {
-    description = ''
-      Get a public suffix for a domain name using the Public Suffix
-      List. Forked from and using the same API as the publicsuffix package.
-    '';
-    homepage = "https://pypi.python.org/pypi/publicsuffix2/";
+    description = "Get a public suffix for a domain name using the Public Suffix List";
+    homepage = "https://github.com/nexB/python-publicsuffix2";
     license = licenses.mpl20;
+    maintainers = with maintainers; [ SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pubnub/default.nix b/nixpkgs/pkgs/development/python-modules/pubnub/default.nix
index 0c87391aba01..c5fbe3d28590 100644
--- a/nixpkgs/pkgs/development/python-modules/pubnub/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pubnub/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "pubnub";
-  version = "6.1.0";
+  version = "6.2.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = "python";
     rev = "v${version}";
-    hash = "sha256-rAeZxCaSY9tgoMk7l+mlqqiZfD2yIGoywITC0Y2z7oI=";
+    hash = "sha256-QOOPcWhhEqg7c0INQv88+eOP0povN8W4lLoaly9TGu0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pulsectl/default.nix b/nixpkgs/pkgs/development/python-modules/pulsectl/default.nix
index 584ef5538a0f..1990915eef44 100644
--- a/nixpkgs/pkgs/development/python-modules/pulsectl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pulsectl/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pulsectl";
-  version = "22.1.3";
+  version = "22.3.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-8o/kuIHdLMFE0tlPg+xg2MWaUmQqCtNjXMTQ+EBvSFg=";
+    sha256 = "sha256-zBdOHO69TmIixbePT0FfEugHU8mrdas1QVm0y1lQsIQ=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/py-synologydsm-api/default.nix b/nixpkgs/pkgs/development/python-modules/py-synologydsm-api/default.nix
index 3d2e1b05e101..0ebd218aa9cc 100644
--- a/nixpkgs/pkgs/development/python-modules/py-synologydsm-api/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/py-synologydsm-api/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "py-synologydsm-api";
-  version = "1.0.6";
+  version = "1.0.8";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "mib1185";
     repo = "synologydsm-api";
     rev = "v${version}";
-    sha256 = "sha256-jAdD6FCbsBocJNX7o+dpthgHaPLIueFWJMzBNoKAq7w=";
+    sha256 = "sha256-9bh7uLt9+uda6yFCWV6xUh//jFC4DgiS+KtRXQrU3A8=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyaussiebb/default.nix b/nixpkgs/pkgs/development/python-modules/pyaussiebb/default.nix
index 63edd6e60f8a..86d2f59e9424 100644
--- a/nixpkgs/pkgs/development/python-modules/pyaussiebb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyaussiebb/default.nix
@@ -3,6 +3,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , loguru
+, pydantic
 , poetry-core
 , pythonOlder
 , requests
@@ -10,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "pyaussiebb";
-  version = "0.0.11";
+  version = "0.0.15";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -19,7 +20,7 @@ buildPythonPackage rec {
     owner = "yaleman";
     repo = "aussiebb";
     rev = "v${version}";
-    hash = "sha256-aL+n2ut7n6UUyymMEHoFMhRvK9iFRRunYE9ZirKFXhc=";
+    hash = "sha256-V9yN05Bkv5vkHgXZ77ps3d6JS39M5iMuiijOGRBFi0U=";
   };
 
   nativeBuildInputs = [
@@ -30,6 +31,7 @@ buildPythonPackage rec {
     aiohttp
     requests
     loguru
+    pydantic
   ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pybullet/default.nix b/nixpkgs/pkgs/development/python-modules/pybullet/default.nix
index 961ca5badbee..df9c1a0d21ea 100644
--- a/nixpkgs/pkgs/development/python-modules/pybullet/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pybullet/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "pybullet";
-  version = "3.2.0";
+  version = "3.2.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "df02fb0ab74a6e7c4e1d7a3e2ffd7e4760a30cdeccb9fa6dd19f334122ec00f2";
+    sha256 = "sha256-Rtq2RZ2CjgS2YbuA4BS8+xPJ8bpAwCLl6xEy78/guOA=";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pycep-parser/default.nix b/nixpkgs/pkgs/development/python-modules/pycep-parser/default.nix
index f286e6b45bdb..d76f72630a6b 100644
--- a/nixpkgs/pkgs/development/python-modules/pycep-parser/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pycep-parser/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "pycep-parser";
-  version = "0.3.1";
+  version = "0.3.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "gruebel";
     repo = "pycep";
     rev = version;
-    hash = "sha256-S4jBqMgyreWrEp1SuR8J5RVFc+i1O0xbfgux1UvFP5k=";
+    hash = "sha256-ud26xJQWdu7wtv75/K16HSSw0MvaSr3H1hDZBPjSzYE=";
   };
 
   nativeBuildInputs = [
@@ -41,7 +41,7 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace 'version = "0.3.1-alpha.1"' 'version = "${version}"' \
+      --replace 'version = "0.3.2-alpha.4"' 'version = "${version}"' \
       --replace 'regex = "^2022.3.2"' 'regex = "*"'
   '';
 
diff --git a/nixpkgs/pkgs/development/python-modules/pyclip/default.nix b/nixpkgs/pkgs/development/python-modules/pyclip/default.nix
index ac79eb8293f4..7d317120ed8d 100644
--- a/nixpkgs/pkgs/development/python-modules/pyclip/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyclip/default.nix
@@ -3,19 +3,23 @@
 , fetchFromGitHub
 , buildPythonPackage
 , pytest
+, pythonOlder
 , xclip
 , xvfb-run
 }:
 
 buildPythonPackage rec {
   pname = "pyclip";
-  version = "0.5.4";
+  version = "0.6.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "spyoungtech";
     repo = pname;
     rev = "v${version}";
-    sha256 = "19ff9cgnfx03mbmy5zpbdi986ppx38a5jf97vkqnic4g5sd1qyrn";
+    hash = "sha256-NCWmCp4VGwwvubqN8FUUJ0kcZbXjOEyB6+BfGky1Kj4=";
   };
 
   postPatch = ''
@@ -23,7 +27,12 @@ buildPythonPackage rec {
       --replace docs/README.md README.md
   '';
 
-  checkInputs = [ pytest ] ++ lib.optionals stdenv.isLinux [ xclip xvfb-run ];
+  checkInputs = [
+    pytest
+  ] ++ lib.optionals stdenv.isLinux [
+    xclip
+    xvfb-run
+  ];
 
   checkPhase = ''
     runHook preCheck
diff --git a/nixpkgs/pkgs/development/python-modules/pycrypto/default.nix b/nixpkgs/pkgs/development/python-modules/pycrypto/default.nix
index a9a302cf51bd..364a218aaa1b 100644
--- a/nixpkgs/pkgs/development/python-modules/pycrypto/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pycrypto/default.nix
@@ -4,8 +4,8 @@
 # https://github.com/NixOS/nixpkgs/issues/21671
 
 buildPythonPackage rec {
-  version = pycryptodome.version;
   pname = "pycrypto";
+  version = pycryptodome.version;
 
   # Cannot build wheel otherwise (zip 1980 issue)
   SOURCE_DATE_EPOCH=315532800;
@@ -21,8 +21,8 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = {
-    homepage = "http://www.pycrypto.org/";
-    description = "Python Cryptography Toolkit";
+    homepage = "https://www.pycrypto.org/";
+    description = "Drop-in replacement for pycrypto using pycryptodome";
     platforms = pycryptodome.meta.platforms;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pycurl/default.nix b/nixpkgs/pkgs/development/python-modules/pycurl/default.nix
index 0b87aba81655..3585148b31c0 100644
--- a/nixpkgs/pkgs/development/python-modules/pycurl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pycurl/default.nix
@@ -7,18 +7,17 @@
 , openssl
 , bottle
 , pytestCheckHook
-, nose
 , flaky
 }:
 
 buildPythonPackage rec {
   pname = "pycurl";
-  version = "7.45.0";
+  version = "7.45.1";
   disabled = isPyPy || (pythonOlder "3.5"); # https://github.com/pycurl/pycurl/issues/208
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-UDbFPG9BBukWDQU6S6o0M6AhX7M4YHPiESc8VqOpXz0=";
+    sha256 = "sha256-qGOtGP9Hj1VFkkBXiHza5CLhsnRuQWdGFfaHSY6luIo=";
   };
 
   preConfigure = ''
@@ -38,7 +37,6 @@ buildPythonPackage rec {
   checkInputs = [
     bottle
     pytestCheckHook
-    nose
     flaky
   ];
 
@@ -76,9 +74,9 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    homepage = "http://pycurl.sourceforge.net/";
-    description = "Python wrapper for libcurl";
-    license = licenses.lgpl2Only;
+    homepage = "http://pycurl.io/";
+    description = "Python Interface To The cURL library";
+    license = with licenses; [ lgpl2Only mit ];
     maintainers = with maintainers; [];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pyeclib/default.nix b/nixpkgs/pkgs/development/python-modules/pyeclib/default.nix
index d55fb416a79e..7dd36c8fd6a1 100644
--- a/nixpkgs/pkgs/development/python-modules/pyeclib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyeclib/default.nix
@@ -1,12 +1,14 @@
-{ lib, stdenv, buildPythonPackage, fetchPypi, liberasurecode, six }:
+{ lib, stdenv, buildPythonPackage, fetchFromGitHub, liberasurecode, six }:
 
 buildPythonPackage rec {
   pname = "pyeclib";
-  version = "1.6.0";
+  version = "unstable-2022-03-11";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "sha256-gBHjHuia5/uZymkWZgyH4BCEZqmWK9SXowAQIJdOO7E=";
+  src = fetchFromGitHub {
+    owner = "openstack";
+    repo = "pyeclib";
+    rev = "b50040969a03f7566ffcb468336e875d21486113";
+    sha256 = "sha256-nYYjocStC0q/MC6pum3J4hlXiu/R5xODwIE97Ho3iEY=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pygame/default.nix b/nixpkgs/pkgs/development/python-modules/pygame/default.nix
index 68e5a90d0cfd..909ce1caa38b 100644
--- a/nixpkgs/pkgs/development/python-modules/pygame/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pygame/default.nix
@@ -25,6 +25,7 @@ buildPythonPackage rec {
       buildinputs_include = builtins.toJSON (builtins.concatMap (dep: [
         "${lib.getDev dep}/"
         "${lib.getDev dep}/include"
+        "${lib.getDev dep}/include/SDL2"
       ]) buildInputs);
       buildinputs_lib = builtins.toJSON (builtins.concatMap (dep: [
         "${lib.getLib dep}/"
diff --git a/nixpkgs/pkgs/development/python-modules/pyglet/default.nix b/nixpkgs/pkgs/development/python-modules/pyglet/default.nix
index fbf5ccf9edef..db436983f3af 100644
--- a/nixpkgs/pkgs/development/python-modules/pyglet/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyglet/default.nix
@@ -18,13 +18,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.5.22";
+  version = "1.5.23";
   pname = "pyglet";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-VjDcNuoA/cEa06g5TGdkF+w2WyX92a9XoQfhmtxBGw8=";
+    sha256 = "sha256-3ukgIDzzBhWcUDurti84eHJocIl39clF0oM3WUt5fEY=";
     extension = "zip";
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/pygmt/default.nix b/nixpkgs/pkgs/development/python-modules/pygmt/default.nix
index 6f06065457ed..f7728cfa28db 100644
--- a/nixpkgs/pkgs/development/python-modules/pygmt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pygmt/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "pygmt";
-  version = "0.5.0";
+  version = "0.6.0";
 
   disabled = pythonOlder "3.6";
 
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "GenericMappingTools";
     repo = "pygmt";
     rev = "v${version}";
-    sha256 = "1mazljxwh162df971cvv7cwnqr300r17qfs7k09s6yd6hajyhz49";
+    sha256 = "sha256-QzqQKnANReSHIsDbiKSZ1ZgMgbj3NAfq4bmRQktnRjQ=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pyinfra/default.nix b/nixpkgs/pkgs/development/python-modules/pyinfra/default.nix
new file mode 100644
index 000000000000..fed8628ea2da
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyinfra/default.nix
@@ -0,0 +1,60 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, gevent
+, click
+, colorama
+, configparser
+, distro
+, jinja2
+, paramiko
+, python-dateutil
+, pywinrm
+, setuptools
+, six
+}:
+
+buildPythonPackage rec {
+  pname = "pyinfra";
+  version = "1.7.2";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-qA65l0+E5jVdPghjcX2YiVtdhHRxt4ey28xOedgwHaM=";
+  };
+
+  propagatedBuildInputs = [
+    click
+    colorama
+    configparser
+    distro
+    gevent
+    jinja2
+    paramiko
+    python-dateutil
+    pywinrm
+    setuptools
+    six
+  ];
+
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "pyinfra"
+  ];
+
+  meta = with lib; {
+    description = "Python-based infrastructure automation";
+    longDescription = ''
+      pyinfra automates/provisions/manages/deploys infrastructure. It can be used for
+      ad-hoc command execution, service deployment, configuration management and more.
+    '';
+    homepage = "https://github.com/Fizzadar/pyinfra";
+    maintainers = with maintainers; [ totoroot ];
+    license = licenses.mit;
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pykrakenapi/default.nix b/nixpkgs/pkgs/development/python-modules/pykrakenapi/default.nix
index 41efa9a54d24..a064390b1cef 100644
--- a/nixpkgs/pkgs/development/python-modules/pykrakenapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pykrakenapi/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "pykrakenapi";
-  version = "0.2.4";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "dominiktraxl";
     repo = "pykrakenapi";
     rev = "v${version}";
-    hash = "sha256-i2r6t+JcL6INI8Y26gvVvNjv6XxMj4G+pF9Xf/hsx1A=";
+    hash = "sha256-ZhP4TEWFEGIqI/nk2It1IVFKrX4HKP+dWxu+gLJNIeg=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pymarshal/default.nix b/nixpkgs/pkgs/development/python-modules/pymarshal/default.nix
index 0da93a6d8a43..7da938526422 100644
--- a/nixpkgs/pkgs/development/python-modules/pymarshal/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymarshal/default.nix
@@ -3,9 +3,6 @@
 , fetchFromGitHub
 , pythonOlder
 , bson
-, pytest
-, pytest-cov
-, pytest-runner
 , pytestCheckHook
 , pyyaml
 , setuptools
@@ -23,9 +20,15 @@ buildPythonPackage rec {
     sha256 = "sha256-Ds8JV2mtLRcKXBvPs84Hdj3MxxqpeV5muKCSlAFCj1A=";
   };
 
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "'pytest-runner'" ""
+    substituteInPlace setup.cfg \
+      --replace "--cov=pymarshal --cov-report=html --cov-report=term" ""
+  '';
+
   nativeBuildInputs = [
     setuptools
-    pytest-runner
   ];
 
   propagatedBuildInputs = [
@@ -35,8 +38,6 @@ buildPythonPackage rec {
   checkInputs = [
     pytestCheckHook
     bson
-    pytest
-    pytest-cov
     pyyaml
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pymavlink/default.nix b/nixpkgs/pkgs/development/python-modules/pymavlink/default.nix
index 8bf43a445437..361f8bff615d 100644
--- a/nixpkgs/pkgs/development/python-modules/pymavlink/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymavlink/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pymavlink";
-  version = "2.4.27";
+  version = "2.4.29";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-DzW1jB7L7sD9WAhk/3/0UD8PW7Nw/bHTI527NmMV6CY=";
+    sha256 = "sha256-0k6DKkb/Izk15JKrSOC0u5wL3vT4x2CelZt112vc/p0=";
   };
 
   propagatedBuildInputs = [ future lxml ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyoverkiz/default.nix b/nixpkgs/pkgs/development/python-modules/pyoverkiz/default.nix
index 60d09f35a464..0c3aeada8e80 100644
--- a/nixpkgs/pkgs/development/python-modules/pyoverkiz/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyoverkiz/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "pyoverkiz";
-  version = "1.3.10";
+  version = "1.3.12";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "iMicknl";
     repo = "python-overkiz-api";
     rev = "v${version}";
-    hash = "sha256-XvQDCCxqqY902cpn7Ee48XOvbjBhs0UsJH/b4skjazE=";
+    hash = "sha256-guL//OHiwlKN55kyoRPIUXuoHOVrho+vSgeV3SAdfNM=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pypandoc/default.nix b/nixpkgs/pkgs/development/python-modules/pypandoc/default.nix
index cd7a322a2aef..32bada43c154 100644
--- a/nixpkgs/pkgs/development/python-modules/pypandoc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pypandoc/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "pypandoc";
-  version = "1.7.2";
+  version = "1.7.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1wk8jxnysb7sa55zhxx5brylv00ivamqbk1b4lbzi58ziij08p03";
+    sha256 = "sha256-KN4j9kbZ6ARAPGth180yptdso1arx563IXvb/2dI+G4=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyrect/default.nix b/nixpkgs/pkgs/development/python-modules/pyrect/default.nix
index e8041786b07b..54566658443c 100644
--- a/nixpkgs/pkgs/development/python-modules/pyrect/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyrect/default.nix
@@ -7,11 +7,11 @@
 }:
 buildPythonPackage rec {
   pname = "PyRect";
-  version = "0.1.4";
+  version = "0.2.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-Oy+nNTzjKhGqawoVSVlo0qdjQjyJR64ki5LAN9704gI=";
+    sha256 = "sha256-9lFV9t+bkptnyv+9V8CUfFrlRJ07WA0XgHS/+0egm3g=";
   };
 
   checkInputs = [ tox pytestCheckHook pygame ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyrogram/default.nix b/nixpkgs/pkgs/development/python-modules/pyrogram/default.nix
index dfc10c638e0d..971b8015a417 100644
--- a/nixpkgs/pkgs/development/python-modules/pyrogram/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyrogram/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "pyrogram";
-  version = "1.4.8";
+  version = "1.4.12";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     pname = "Pyrogram";
     inherit version;
-    hash = "sha256-mUJEV8DLYhXNvYiuiVDCfgMmZRDCNZuydngj9C9FvQU=";
+    hash = "sha256-rNGdWnZuhCU0Kg/CkeNjazKb76h8/VanZdF4yi0KWGU=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-core/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-core/default.nix
index 758c848c7ecc..7a13dc79aa99 100644
--- a/nixpkgs/pkgs/development/python-modules/pyroute2-core/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-core/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pyroute2-core";
-  version = "0.6.8";
+  version = "0.6.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "pyroute2.core";
     inherit version;
-    hash = "sha256-gkvr1FgFWI1eurjbuUYhYj0D4eZTIBsDMRXSWrKiCP4=";
+    hash = "sha256-lH0Mi2nR4jqawvpvVfn79U0AflxE8lU1VLKvqAEXDOo=";
   };
 
   # pyroute2 sub-modules have no tests
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-ethtool/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-ethtool/default.nix
index 4838b6690424..dae025618b7a 100644
--- a/nixpkgs/pkgs/development/python-modules/pyroute2-ethtool/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-ethtool/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pyroute2-ethtool";
-  version = "0.6.8";
+  version = "0.6.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "pyroute2.ethtool";
     inherit version;
-    hash = "sha256-+/B+YQOluzyGYmnwAZonsjgZeiZPYl8LhJ9OjnvV/64=";
+    hash = "sha256-6o75plLeSle6ZFgoIZGKLCjx1hg4Z2okOq2RqAT2g8E=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-ipdb/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-ipdb/default.nix
index 4704d95279ff..22991fe20268 100644
--- a/nixpkgs/pkgs/development/python-modules/pyroute2-ipdb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-ipdb/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pyroute2-ipdb";
-  version = "0.6.8";
+  version = "0.6.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "pyroute2.ipdb";
     inherit version;
-    hash = "sha256-sjlJ1eBoMQaJzEF/4Qk9ZwZB0s/yvR5wUUDP3UWBA50=";
+    hash = "sha256-sJ9Zzlrh9FWVWL7StyHpPPuXo6TtNLz2/lQBCl53Wrk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-ipset/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-ipset/default.nix
index 1889b5ead881..7bf625c08864 100644
--- a/nixpkgs/pkgs/development/python-modules/pyroute2-ipset/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-ipset/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pyroute2-ipset";
-  version = "0.6.8";
+  version = "0.6.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "pyroute2.ipset";
     inherit version;
-    hash = "sha256-j2vEQyfuuMH0QRtXw6acX9AMureQwgeS+Ap7m2uP9OY=";
+    hash = "sha256-icEMJno03WKUdIYTZ6BIAo9lm43RwMjxNXcoSkYF81M=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-ndb/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-ndb/default.nix
index 86bbde3e52ab..47c309cbc321 100644
--- a/nixpkgs/pkgs/development/python-modules/pyroute2-ndb/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-ndb/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pyroute2-ndb";
-  version = "0.6.8";
+  version = "0.6.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "pyroute2.ndb";
     inherit version;
-    hash = "sha256-90DAbXCkoIFUbWZotKYkCSGsQvb7LrEpf6xGCviP40w=";
+    hash = "sha256-ASk6ycw3dQNMV4xmaxPAHDL1KtrY1JGQ5yJYcJ+OgUE=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-nftables/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-nftables/default.nix
index 4a3d58c896c2..3c76692016d9 100644
--- a/nixpkgs/pkgs/development/python-modules/pyroute2-nftables/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-nftables/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "pyroute2-nftables";
-  version = "0.6.8";
+  version = "0.6.9";
 
   src = fetchPypi {
     pname = "pyroute2.nftables";
     inherit version;
-    sha256 = "sha256-SNebxs0mCFEI4bejuLMeU3wrO8KZZT1frnfQw8Gko6E=";
+    sha256 = "sha256-8BLz8IIobmrGb64PhXz1XWfl3KJTOhOL+j1C4/jlXuI=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-nslink/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-nslink/default.nix
index 0f47e7228d34..387a9b403df5 100644
--- a/nixpkgs/pkgs/development/python-modules/pyroute2-nslink/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-nslink/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pyroute2-nslink";
-  version = "0.6.8";
+  version = "0.6.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "pyroute2.nslink";
     inherit version;
-    hash = "sha256-bTGzXouEdVUFaT5mxGfonFu3aOMxZKRTDMaHFciofec=";
+    hash = "sha256-WZjRexKn1FWXj+5KZxqZXB0aZmnd0ECKWt3hvVDdz4w=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2-protocols/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2-protocols/default.nix
index 84c9813b5eaa..99c146d41e4d 100644
--- a/nixpkgs/pkgs/development/python-modules/pyroute2-protocols/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2-protocols/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pyroute2-protocols";
-  version = "0.6.8";
+  version = "0.6.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "pyroute2.protocols";
     inherit version;
-    hash = "sha256-l07CEwZzDxym+QAnKFFEpX690RStOA+rAwMXiEd7FOs=";
+    hash = "sha256-7vP4rbid2cVGKlYUM5qsmYXQhUfvIWoaDXYnxSUnSJY=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyroute2/default.nix b/nixpkgs/pkgs/development/python-modules/pyroute2/default.nix
index a2ae4d3c3857..9b15711ef0f2 100644
--- a/nixpkgs/pkgs/development/python-modules/pyroute2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyroute2/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "pyroute2";
-  version = "0.6.8";
+  version = "0.6.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-WhqjvCwKrUUBLKvjpva7pc94UIZvTf7j705Bt2DHyKQ=";
+    hash = "sha256-PRxNGnH7VpyrV49V9xNO8C1I6LMYK05+ZrKndWKO2vs=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pysaml2/default.nix b/nixpkgs/pkgs/development/python-modules/pysaml2/default.nix
index e658ca40be7a..1c6d9b45c568 100644
--- a/nixpkgs/pkgs/development/python-modules/pysaml2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysaml2/default.nix
@@ -22,7 +22,7 @@
 
 buildPythonPackage rec {
   pname = "pysaml2";
-  version = "7.1.1";
+  version = "7.1.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     owner = "IdentityPython";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-uRfcn3nCK+tx6ol6ZFarOSrDOh0cfC9gZXBZ7EICQzw=";
+    sha256 = "sha256-nyQcQ1OO9PuuQROg+km2vIRF1sZ22MZhiHpmVXWl+is=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pysigma-backend-splunk/default.nix b/nixpkgs/pkgs/development/python-modules/pysigma-backend-splunk/default.nix
index f3b122b4ecac..2fc5c6a6ccda 100644
--- a/nixpkgs/pkgs/development/python-modules/pysigma-backend-splunk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysigma-backend-splunk/default.nix
@@ -3,13 +3,14 @@
 , fetchFromGitHub
 , poetry-core
 , pysigma
+, pysigma-pipeline-sysmon
 , pytestCheckHook
 , pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "pysigma-backend-splunk";
-  version = "0.1.1";
+  version = "0.2.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -18,7 +19,7 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma-backend-splunk";
     rev = "v${version}";
-    hash = "sha256-AGT+7BKtINe2ukmomYyoUa5PHYAH1N0tUTtbyjMD+kw=";
+    hash = "sha256-NAhAWK1eSSGQAlMGgMHrW/RTpT9LJMqwkhE9/8xWGT8=";
   };
 
   nativeBuildInputs = [
@@ -30,6 +31,7 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
+    pysigma-pipeline-sysmon
     pytestCheckHook
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-crowdstrike/default.nix b/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-crowdstrike/default.nix
index 22f589d3b149..2d2aadb9eaec 100644
--- a/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-crowdstrike/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-crowdstrike/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "pysigma-pipeline-crowdstrike";
-  version = "0.1.3";
+  version = "0.1.4";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma-pipeline-crowdstrike";
     rev = "v${version}";
-    hash = "sha256-JNJHKydMzKreN+6liLlGMT1CFBUr/IX8Ah+exddKR3g=";
+    hash = "sha256-Riu2u1IouS1BMtXauXrNMIl06TU11pHdC0jjlOiR71s=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-sysmon/default.nix b/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-sysmon/default.nix
index e784ac1eca16..7c1e959d7406 100644
--- a/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-sysmon/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-sysmon/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "pysigma-pipeline-sysmon";
-  version = "0.1.1";
+  version = "0.1.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma-pipeline-sysmon";
     rev = "v${version}";
-    hash = "sha256-BBJt2SAbnPEzIwJ+tXW4NmA4Nrb/glIaPlnmYHLoMD0=";
+    hash = "sha256-uJgV7emBqQN792EvfOz85BKoZY8DCCr8aUN7Ai8R9js=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pysigma/default.nix b/nixpkgs/pkgs/development/python-modules/pysigma/default.nix
index 39ab5c9918b5..cd3e9ed88595 100644
--- a/nixpkgs/pkgs/development/python-modules/pysigma/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysigma/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "pysigma";
-  version = "0.3.2";
+  version = "0.4.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma";
     rev = "v${version}";
-    hash = "sha256-V/E2rZqVrk0kIvk+hPhNcAifhMM/rN3mk3pB+CGd43w=";
+    hash = "sha256-NE6XmylUc3MeDRMOJo51jtb6J0Vi9tDT6tbYBepDsvw=";
   };
 
   nativeBuildInputs = [
@@ -36,21 +36,9 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  patches = [
-    # Switch to poetry-core, https://github.com/SigmaHQ/pySigma/pull/31
-    (fetchpatch {
-      name = "switch-to-poetry-core.patch";
-      url = "https://github.com/SigmaHQ/pySigma/commit/b7a852d18852007da90c2ec35bff347c97b36f07.patch";
-      sha256 = "sha256-zgg8Bsc37W2uuQluFpIZT4jHCQaitY2ZgS93Wk6Hxt0=";
-    })
-  ];
-
   postPatch = ''
-    # https://github.com/SigmaHQ/pySigma/issues/32
-    # https://github.com/SigmaHQ/pySigma/issues/33
     substituteInPlace pyproject.toml \
-      --replace 'pyparsing = "^2.4.7"' 'pyparsing = "*"' \
-      --replace 'pyyaml = "^5.3.1"' 'pyyaml = "*"'
+      --replace 'pyparsing = "^3.0.7"' 'pyparsing = "*"' \
   '';
 
   pythonImportsCheck = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyskyqhub/default.nix b/nixpkgs/pkgs/development/python-modules/pyskyqhub/default.nix
index 1f3ad1874621..b0d1f8010fbb 100644
--- a/nixpkgs/pkgs/development/python-modules/pyskyqhub/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyskyqhub/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pyskyqhub";
-  version = "0.1.4";
+  version = "0.1.8";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "RogerSelwyn";
     repo = "skyq_hub";
     rev = version;
-    sha256 = "EVkTvynMPmCr7DPuDqfpMvVPCvpPpJHfqsNjD3tn8zg=";
+    sha256 = "sha256-1KNgF3d5w+aNKNkOZVkdD3VVLz/F8NyQ5MxO1UaWrFk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pytesseract/default.nix b/nixpkgs/pkgs/development/python-modules/pytesseract/default.nix
index 6fcb9f97d32c..4aac6902ce3b 100644
--- a/nixpkgs/pkgs/development/python-modules/pytesseract/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytesseract/default.nix
@@ -1,12 +1,12 @@
-{ buildPythonPackage, fetchPypi, lib, pillow, tesseract, substituteAll }:
+{ buildPythonPackage, fetchPypi, lib, pillow, tesseract, substituteAll, packaging }:
 
 buildPythonPackage rec {
   pname = "pytesseract";
-  version = "0.3.8";
+  version = "0.3.9";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-YUigHkN1dghi6PVupxjiK10TsoFFTfRuqNrJgHeT/Fo=";
+    sha256 = "sha256-fiuvx/SNG7cUQ85GM6VvXiGSWpjyIKNsM2KX7c0ZVtA=";
   };
 
   patches = [
@@ -17,7 +17,7 @@ buildPythonPackage rec {
   ];
 
   buildInputs = [ tesseract ];
-  propagatedBuildInputs = [ pillow ];
+  propagatedBuildInputs = [ pillow packaging ];
 
   # the package doesn't have any tests.
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix
index 5d4d8d1798fc..80e31e8effae 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-cases/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "pytest-cases";
-  version = "3.6.10";
+  version = "3.6.11";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-W8Syxgl/lPqDX2zdzvpk3Q/0aNBWM8JeUOXGDBYyamM=";
+    sha256 = "sha256-9rcXPoGxR3sxX3tFbv1O/T7kfrKnIB2XV1mJvSH5WQ4=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-console-scripts/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-console-scripts/default.nix
index 6bc6fb22b031..32ccd22c9692 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-console-scripts/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-console-scripts/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "pytest-console-scripts";
-  version = "1.3";
+  version = "1.3.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-w8rb9nz7MKHrHMHp5py23kTDpkhCbxub9j6F2XNX/H8=";
+    hash = "sha256-XGw9qunPn77Q5lUHISiThgAZPcACpc8bGHJIZEugKFc=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-json-report/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-json-report/default.nix
index 2b89fe715921..95a0bcb325f1 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-json-report/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-json-report/default.nix
@@ -5,17 +5,21 @@
 , pytest-metadata
 , pytest-xdist
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "pytest-json-report";
-  version = "1.4.1";
+  version = "1.5.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "numirias";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-OS9ASUp9iJ12Ovr931RQU/DHEAXqbgcRMCBP4h+GAhk=";
+    hash = "sha256-hMB/atDuo7CjwhHFUOxVfgJ7Qp4AA9J428iv7hyQFcs=";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-box/default.nix b/nixpkgs/pkgs/development/python-modules/python-box/default.nix
index 0edf2b695807..30666ef47064 100644
--- a/nixpkgs/pkgs/development/python-modules/python-box/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-box/default.nix
@@ -11,14 +11,16 @@
 
 buildPythonPackage rec {
   pname = "python-box";
-  version = "5.4.1";
+  version = "6.0.1";
+  format = "setuptools";
+
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "cdgriffith";
     repo = "Box";
     rev = version;
-    sha256 = "sha256-SkteajcWG7rBFMm6Xp6QCfkZfwthRituGL/RtICbtYk=";
+    hash = "sha256-kH8qHAFuYDXO5Dsl6BpTYCIqh0Xi8Rbwmia+y3sTn6Y=";
   };
 
   propagatedBuildInputs = [
@@ -32,7 +34,9 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [ "box" ];
+  pythonImportsCheck = [
+    "box"
+  ];
 
   meta = with lib; {
     description = "Python dictionaries with advanced dot notation access";
diff --git a/nixpkgs/pkgs/development/python-modules/python-cinderclient/default.nix b/nixpkgs/pkgs/development/python-modules/python-cinderclient/default.nix
index fe421fa55d38..2f08341a2c4f 100644
--- a/nixpkgs/pkgs/development/python-modules/python-cinderclient/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-cinderclient/default.nix
@@ -17,11 +17,11 @@
 
 buildPythonPackage rec {
   pname = "python-cinderclient";
-  version = "8.2.0";
+  version = "8.3.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "7b2f08a2d1cc05d2c1f84f02fadb2208678b1acb501acfe2de33720078ec7b9f";
+    sha256 = "sha256-4AEDh1Ap3IXLtZEx0AzMhTT2kpVqzeMrWjzFr0wkWAs=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-crfsuite/default.nix b/nixpkgs/pkgs/development/python-modules/python-crfsuite/default.nix
index cd2adc48c6fa..7cb9281a7ba1 100644
--- a/nixpkgs/pkgs/development/python-modules/python-crfsuite/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-crfsuite/default.nix
@@ -2,16 +2,17 @@
 , buildPythonPackage
 , fetchPypi
 , pytestCheckHook
+, pythonAtLeast
 }:
 
 buildPythonPackage rec {
   pname = "python-crfsuite";
-  version = "0.9.7";
+  version = "0.9.8";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1ryfcdfpqbrf8rcd2rlay2gfiba3px3q508543jf81shrv93hi9v";
+    sha256 = "sha256-DgPPbro2KHF8zwbfoPSiuoYohgrbF0y/0lCnpGkoZaE=";
   };
 
   preCheck = ''
@@ -32,5 +33,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/scrapinghub/python-crfsuite";
     license = licenses.mit;
     maintainers = teams.tts.members;
+    broken = pythonAtLeast "3.10"; # https://github.com/scrapinghub/python-crfsuite/issues/130
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/python-http-client/default.nix b/nixpkgs/pkgs/development/python-modules/python-http-client/default.nix
index aa2c4d020e55..78a3b018c7ea 100644
--- a/nixpkgs/pkgs/development/python-modules/python-http-client/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-http-client/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "python_http_client";
-  version = "3.3.6";
+  version = "3.3.7";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "sendgrid";
     repo = "python-http-client";
     rev = version;
-    sha256 = "sha256-Xchf/jVkQ7SYOzI9f81iS/G72k//6wkl2bMvHprOP9Y=";
+    sha256 = "sha256-8Qs5Jw0LMV2UucLnlFKJQ2PUhYaQx6uJdIV/4gaPH3w=";
   };
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-kasa/default.nix b/nixpkgs/pkgs/development/python-modules/python-kasa/default.nix
index 17c3cb07be36..6adfbf5745d2 100644
--- a/nixpkgs/pkgs/development/python-modules/python-kasa/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-kasa/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "python-kasa";
-  version = "0.4.1";
+  version = "0.4.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "sha256-4e9jpUDorZlKCYwWtqrba61zbkJl57oWUhEpFcaS9ak=";
+    sha256 = "sha256-5Ohks3yfqAAe+CiLEucibezmibl6TtktDXMHAhecXzA=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-novaclient/default.nix b/nixpkgs/pkgs/development/python-modules/python-novaclient/default.nix
index afc8a51988ed..e654c75bfe88 100644
--- a/nixpkgs/pkgs/development/python-modules/python-novaclient/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-novaclient/default.nix
@@ -16,11 +16,11 @@
 
 buildPythonPackage rec {
   pname = "python-novaclient";
-  version = "17.6.0";
+  version = "17.7.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-yRDCCFMQ2mNfs0NYXxBwcS/w+cs8j3nUTKPWMsTyMPU=";
+    sha256 = "sha256-Trwn9M4GwVW46ZGkRGO5NYWW5oVs8XHJr43HVo2Gi+0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix b/nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix
index 4f484a845402..b41ddf01a8e9 100644
--- a/nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "python-smarttub";
-  version = "0.0.29";
+  version = "0.0.30";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "mdz";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-utUpNuemyS8XEVhfhLgOwTRkPFqCBXyK1s1LWemywmU=";
+    sha256 = "sha256-PzmE0j/sas1Dc/U022dS3krROm292xJlL37+EWPEs+g=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pytorch/bin.nix b/nixpkgs/pkgs/development/python-modules/pytorch/bin.nix
index df3e5da4c5ab..24533a08e475 100644
--- a/nixpkgs/pkgs/development/python-modules/pytorch/bin.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytorch/bin.nix
@@ -4,6 +4,7 @@
 , isPy37
 , isPy38
 , isPy39
+, isPy310
 , python
 , addOpenGLRunpath
 , future
@@ -19,7 +20,7 @@ let
   pyVerNoDot = builtins.replaceStrings [ "." ] [ "" ] python.pythonVersion;
   srcs = import ./binary-hashes.nix version;
   unsupported = throw "Unsupported system";
-  version = "1.10.0";
+  version = "1.11.0";
 in buildPythonPackage {
   inherit version;
 
@@ -28,7 +29,7 @@ in buildPythonPackage {
 
   format = "wheel";
 
-  disabled = !(isPy37 || isPy38 || isPy39);
+  disabled = !(isPy37 || isPy38 || isPy39 || isPy310);
 
   src = fetchurl srcs."${stdenv.system}-${pyVerNoDot}" or unsupported;
 
diff --git a/nixpkgs/pkgs/development/python-modules/pytorch/binary-hashes.nix b/nixpkgs/pkgs/development/python-modules/pytorch/binary-hashes.nix
index 61f1e59d09e8..945af484a4af 100644
--- a/nixpkgs/pkgs/development/python-modules/pytorch/binary-hashes.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytorch/binary-hashes.nix
@@ -6,46 +6,61 @@
 # To add a new version, run "prefetch.sh 'new-version'" to paste the generated file as follows.
 
 version : builtins.getAttr version {
-  "1.10.0" = {
+  "1.11.0" = {
     x86_64-linux-37 = {
-      name = "torch-1.10.0-cp37-cp37m-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu113/torch-1.10.0%2Bcu113-cp37-cp37m-linux_x86_64.whl";
-      hash = "sha256-KpDbklee2HXSqgrWr1U1nj8EJqUjBWp7SbACw8xtKtg=";
+      name = "torch-1.11.0-cp37-cp37m-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu113/torch-1.11.0%2Bcu113-cp37-cp37m-linux_x86_64.whl";
+      hash = "sha256-9WMzRw2uo8lweLN2B+ADXMz3L8XDb9hFRuGkuNmUTys=";
     };
     x86_64-linux-38 = {
-      name = "torch-1.10.0-cp38-cp38-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu113/torch-1.10.0%2Bcu113-cp38-cp38-linux_x86_64.whl";
-      hash = "sha256-zM3cMriUG9A+3in/ChzOLytRETpe4ju4uXkxasIRQYM=";
+      name = "torch-1.11.0-cp38-cp38-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu113/torch-1.11.0%2Bcu113-cp38-cp38-linux_x86_64.whl";
+      hash = "sha256-tqeZvbbuPZFOXmK920J21KECSMGvTy0hdzjl+e4nSFs=";
     };
     x86_64-linux-39 = {
-      name = "torch-1.10.0-cp39-cp39-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu113/torch-1.10.0%2Bcu113-cp39-cp39-linux_x86_64.whl";
-      hash = "sha256-w8UJDh4b5cgDu7ZSvDoKzNH4hiXEyRfvpycNOg+wJOg=";
+      name = "torch-1.11.0-cp39-cp39-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu113/torch-1.11.0%2Bcu113-cp39-cp39-linux_x86_64.whl";
+      hash = "sha256-6RJrCl2VcEvuQKnQ7xy9gtjceGPkY4o3a+9wLf1lk3A=";
+    };
+    x86_64-linux-310 = {
+      name = "torch-1.11.0-cp310-cp310-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu113/torch-1.11.0%2Bcu113-cp310-cp310-linux_x86_64.whl";
+      hash = "sha256-powzZXpUYTHrm8ROKpjS+nBKr66GFGCwUbgoE4Usy0Q=";
     };
     x86_64-darwin-37 = {
-      name = "torch-1.10.0-cp37-none-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-1.10.0-cp37-none-macosx_10_9_x86_64.whl";
-      hash = "sha256-RJkFVUcIfX736KdU8JwsTxRwKXrj5UkDY9umbHVQGyE=";
+      name = "torch-1.11.0-cp37-none-macosx_10_9_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-1.11.0-cp37-none-macosx_10_9_x86_64.whl";
+      hash = "sha256-aGCx0b8LsLZ6a9R/haDkyCW1GO6hO11hAZmdu8vVvAw=";
     };
     x86_64-darwin-38 = {
-      name = "torch-1.10.0-cp38-none-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-1.10.0-cp38-none-macosx_10_9_x86_64.whl";
-      hash = "sha256-rvevti6bF0tODl4eSkLjurO4SQpmjWZvYvfUUXVZ+/I=";
+      name = "torch-1.11.0-cp38-none-macosx_10_9_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-1.11.0-cp38-none-macosx_10_9_x86_64.whl";
+      hash = "sha256-DMyFzQYiej7fgJ4seV/Vdiw9Too4tcn3RMbnz4QTYbs=";
     };
     x86_64-darwin-39 = {
-      name = "torch-1.10.0-cp39-none-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-1.10.0-cp39-none-macosx_10_9_x86_64.whl";
-      hash = "sha256-1u+HRwtE35lw6EVCVH1bp3ILuJYWYCRB31VaObEk4rw=";
+      name = "torch-1.11.0-cp39-none-macosx_10_9_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-1.11.0-cp39-none-macosx_10_9_x86_64.whl";
+      hash = "sha256-UP2b+FxXjIccKPHLCs6d/GAkQBx/OZsXT7DzcImfRFQ=";
+    };
+    x86_64-darwin-310 = {
+      name = "torch-1.11.0-cp310-none-macosx_10_9_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-1.11.0-cp39-none-macosx_10_9_x86_64.whl";
+      hash = "sha256-UP2b+FxXjIccKPHLCs6d/GAkQBx/OZsXT7DzcImfRFQ=";
     };
     aarch64-darwin-38 = {
-      name = "torch-1.10.0-cp38-none-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-1.10.0-cp38-none-macosx_11_0_arm64.whl";
-      hash = "sha256-1hhYJ7KFeAZTzdgdd6Cf3KdqWxkNWYbVUr4qXEQs+qQ=";
+      name = "torch-1.11.0-cp38-none-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-1.11.0-cp38-none-macosx_11_0_arm64.whl";
+      hash = "sha256-wVVOSddPGyw+cgLXcFa6LddGVDdYW6xkBitYD3FKROk=";
     };
     aarch64-darwin-39 = {
-      name = "torch-1.10.0-cp39-none-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-1.10.0-cp39-none-macosx_11_0_arm64.whl";
-      hash = "sha256-7qZ17AHsS0oGVf0phPFmpco7kz2uatTrTlLrpwJtwXY=";
+      name = "torch-1.11.0-cp39-none-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-1.11.0-cp39-none-macosx_11_0_arm64.whl";
+      hash = "sha256-DkivZq11Xw+cXyZkAopBT1fEnWrcN+d+Bv4ABNpO22E=";
+    };
+    aarch64-darwin-310 = {
+      name = "torch-1.11.0-cp310-none-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-1.11.0-cp39-none-macosx_11_0_arm64.whl";
+      hash = "sha256-DkivZq11Xw+cXyZkAopBT1fEnWrcN+d+Bv4ABNpO22E=";
     };
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytorch/prefetch.sh b/nixpkgs/pkgs/development/python-modules/pytorch/prefetch.sh
index debf26bfa20a..31aae438dc56 100755
--- a/nixpkgs/pkgs/development/python-modules/pytorch/prefetch.sh
+++ b/nixpkgs/pkgs/development/python-modules/pytorch/prefetch.sh
@@ -5,12 +5,21 @@ set -eou pipefail
 
 version=$1
 
-bucket="https://download.pytorch.org/whl/cu113"
+linux_bucket="https://download.pytorch.org/whl/cu113"
+darwin_bucket="https://download.pytorch.org/whl/cpu"
 
 url_and_key_list=(
-  "x86_64-linux-37 $bucket/torch-${version}%2Bcu113-cp37-cp37m-linux_x86_64.whl torch-${version}-cp37-cp37m-linux_x86_64.whl"
-  "x86_64-linux-38 $bucket/torch-${version}%2Bcu113-cp38-cp38-linux_x86_64.whl torch-${version}-cp38-cp38-linux_x86_64.whl"
-  "x86_64-linux-39 $bucket/torch-${version}%2Bcu113-cp39-cp39-linux_x86_64.whl torch-${version}-cp39-cp39-linux_x86_64.whl"
+  "x86_64-linux-37 $linux_bucket/torch-${version}%2Bcu113-cp37-cp37m-linux_x86_64.whl torch-${version}-cp37-cp37m-linux_x86_64.whl"
+  "x86_64-linux-38 $linux_bucket/torch-${version}%2Bcu113-cp38-cp38-linux_x86_64.whl torch-${version}-cp38-cp38-linux_x86_64.whl"
+  "x86_64-linux-39 $linux_bucket/torch-${version}%2Bcu113-cp39-cp39-linux_x86_64.whl torch-${version}-cp39-cp39-linux_x86_64.whl"
+  "x86_64-linux-310 $linux_bucket/torch-${version}%2Bcu113-cp310-cp310-linux_x86_64.whl torch-${version}-cp310-cp310-linux_x86_64.whl"
+  "x86_64-darwin-37 $darwin_bucket/torch-${version}-cp37-none-macosx_10_9_x86_64.whl torch-${version}-cp37-none-macosx_10_9_x86_64.whl"
+  "x86_64-darwin-38 $darwin_bucket/torch-${version}-cp38-none-macosx_10_9_x86_64.whl torch-${version}-cp38-none-macosx_10_9_x86_64.whl"
+  "x86_64-darwin-39 $darwin_bucket/torch-${version}-cp39-none-macosx_10_9_x86_64.whl torch-${version}-cp39-none-macosx_10_9_x86_64.whl"
+  "x86_64-darwin-310 $darwin_bucket/torch-${version}-cp310-none-macosx_10_9_x86_64.whl torch-${version}-cp310-none-macosx_10_9_x86_64.whl"
+  "aarch64-darwin-38 $darwin_bucket/torch-${version}-cp38-none-macosx_11_0_arm64.whl torch-${version}-cp38-none-macosx_11_0_arm64.whl"
+  "aarch64-darwin-39 $darwin_bucket/torch-${version}-cp39-none-macosx_11_0_arm64.whl torch-${version}-cp39-none-macosx_11_0_arm64.whl"
+  "aarch64-darwin-310 $darwin_bucket/torch-${version}-cp310-none-macosx_11_0_arm64.whl torch-${version}-cp310-none-macosx_11_0_arm64.whl"
 )
 
 hashfile="binary-hashes-$version.nix"
diff --git a/nixpkgs/pkgs/development/python-modules/pyudev/default.nix b/nixpkgs/pkgs/development/python-modules/pyudev/default.nix
index aabf9cd5de52..89cd50f085f6 100644
--- a/nixpkgs/pkgs/development/python-modules/pyudev/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyudev/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchPypi, buildPythonPackage
-, six, systemd, pytest, mock, hypothesis, docutils
+, six, udev, pytest, mock, hypothesis, docutils
 }:
 
 buildPythonPackage rec {
@@ -13,7 +13,7 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace src/pyudev/_ctypeslib/utils.py \
-      --replace "find_library(name)" "'${lib.getLib systemd}/lib/libudev.so'"
+      --replace "find_library(name)" "'${lib.getLib udev}/lib/libudev.so'"
     '';
 
   checkInputs = [ pytest mock hypothesis docutils ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyvesync/default.nix b/nixpkgs/pkgs/development/python-modules/pyvesync/default.nix
index 1cd6de8ef41b..96669c52634b 100644
--- a/nixpkgs/pkgs/development/python-modules/pyvesync/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyvesync/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "pyvesync";
-  version = "1.4.3";
+  version = "2.0.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-DEDgZXMQrINYImXaWmv/7W7q8RvqK8oMG/B2XsDdZDM=";
+    sha256 = "sha256-+054tFirjMF3sGLRpTVCZ3V2KN627b57+fFl6GBMMcU=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyvex/default.nix b/nixpkgs/pkgs/development/python-modules/pyvex/default.nix
index 595b4c357375..e3a810be9160 100644
--- a/nixpkgs/pkgs/development/python-modules/pyvex/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyvex/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "pyvex";
-  version = "9.1.11752";
+  version = "9.1.12332";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-DI+Jc5MtDd2XXfjIDtPd8qt4/eQ/3nwbDUqWE2haUhM=";
+    hash = "sha256-e1lruHgppQ8mJbTx6xsUDSkLCYQISqM9c1vsjdQU4eI=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pywlroots/default.nix b/nixpkgs/pkgs/development/python-modules/pywlroots/default.nix
index 7dc17cf74ecd..b4f23f71d748 100644
--- a/nixpkgs/pkgs/development/python-modules/pywlroots/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pywlroots/default.nix
@@ -18,11 +18,11 @@
 
 buildPythonPackage rec {
   pname = "pywlroots";
-  version = "0.15.10";
+  version = "0.15.11";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "VWfcDhMAuUkYObRiaXRfcB7dI75SM7zVwWWvnlrxV0k=";
+    sha256 = "sha256-L+59uf3/wqWnmWpqm8RAyIEarbj2Sdwf1Pbweh/z9C8=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyxbe/default.nix b/nixpkgs/pkgs/development/python-modules/pyxbe/default.nix
index 4c101ccdc3fb..43cc501d80e5 100644
--- a/nixpkgs/pkgs/development/python-modules/pyxbe/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyxbe/default.nix
@@ -2,17 +2,21 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "pyxbe";
-  version = "unstable-2021-01-10";
+  version = "0.0.4";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "mborgerson";
     repo = pname;
-    rev = "a7ae1bb21b02a57783831eb080c1edbafaad1d5d";
-    sha256 = "1cp9a5f41z8j7bzip6nhka8qnxs12v75cdf80sk2nzgf1k15wi2p";
+    rev = "v${version}";
+    hash = "sha256-mHUmSSy/ygteJhRX6AbgZJ+c5MZMZcgNRoTOfxhV+XQ=";
   };
 
   checkInputs = [
@@ -25,7 +29,9 @@ buildPythonPackage rec {
       --replace "'xbefiles'" "'tests/xbefiles'"
   '';
 
-  pythonImportsCheck = [ "xbe" ];
+  pythonImportsCheck = [
+    "xbe"
+  ];
 
   meta = with lib; {
     description = "Library to work with XBE files";
diff --git a/nixpkgs/pkgs/development/python-modules/pyzbar/default.nix b/nixpkgs/pkgs/development/python-modules/pyzbar/default.nix
new file mode 100644
index 000000000000..4ba523f6b21a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyzbar/default.nix
@@ -0,0 +1,40 @@
+{ lib, buildPythonPackage, fetchFromGitHub, numpy, pillow, zbar, pytestCheckHook }:
+
+buildPythonPackage rec {
+  pname = "pyzbar";
+  version = "0.1.9";
+
+  src = fetchFromGitHub {
+    owner = "NaturalHistoryMuseum";
+    repo = "pyzbar";
+    rev = "v${version}";
+    sha256 = "8IZQY6qB4r1SUPItDlTDnVQuPs0I38K3yJ6LiPJuwbU=";
+  };
+
+  propagatedBuildInputs = [ zbar pillow numpy ];
+
+  checkInputs = [ pytestCheckHook ];
+
+  # find_library doesn't return an absolute path
+  # https://github.com/NixOS/nixpkgs/issues/7307
+  postPatch = ''
+    substituteInPlace pyzbar/zbar_library.py \
+      --replace "find_library('zbar')" "'${lib.getLib zbar}/lib/libzbar.so.0'"
+  '';
+
+  disabledTests = [
+    # find_library has been replaced by a hardcoded path
+    # the test fails due to find_library not called
+    "test_found_non_windows"
+    "test_not_found_non_windows"
+  ];
+
+  pythonImportsCheck = [ "pyzbar" ];
+
+  meta = with lib; {
+    description = "Read one-dimensional barcodes and QR codes from Python using the zbar library.";
+    homepage = "https://github.com/NaturalHistoryMuseum/pyzbar";
+    license = licenses.mit;
+    maintainers = with maintainers; [ gador ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/qcengine/default.nix b/nixpkgs/pkgs/development/python-modules/qcengine/default.nix
index ea5325ea660c..795b8460b5db 100644
--- a/nixpkgs/pkgs/development/python-modules/qcengine/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qcengine/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "qcengine";
-  version = "0.22.0";
+  version = "0.23.0";
 
   checkInputs = [ pytestCheckHook ];
 
@@ -25,7 +25,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "685a08247b561ed1c7a7b42e68293f90b412e83556626304a3f826a15be51308";
+    sha256 = "sha256-gDn0Nu6ALTr3KyZnYDSA6RE3S5JQj562FP2RI9U3Gxs=";
   };
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/development/python-modules/qiling/default.nix b/nixpkgs/pkgs/development/python-modules/qiling/default.nix
index 51c762c81075..729954328140 100644
--- a/nixpkgs/pkgs/development/python-modules/qiling/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qiling/default.nix
@@ -8,18 +8,22 @@
 , multiprocess
 , pefile
 , pyelftools
+, pythonOlder
 , python-registry
+, pyyaml
 , unicorn
 }:
 
 buildPythonPackage rec {
   pname = "qiling";
-  version = "1.4.1";
+  version = "1.4.2";
   format = "setuptools";
 
+  disabled = pythonOlder "3.7";
+
   src = fetchPypi {
     inherit pname version;
-    sha256 = "e72dc5856cbda975f962ddf063063a32bd6c3b825f75e0795e94ba6840a7d45f";
+    hash = "sha256-myUGzNP4bf90d2gY5ZlYbVlTG640dj/Qha8/aMydvuw=";
   };
 
   propagatedBuildInputs = [
@@ -30,14 +34,10 @@ buildPythonPackage rec {
     pefile
     pyelftools
     python-registry
+    pyyaml
     unicorn
   ];
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "pefile==2021.5.24" "pefile>=2021.5.24"
-  '';
-
   # Tests are broken (attempt to import a file that tells you not to import it,
   # amongst other things)
   doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/qtpy/default.nix b/nixpkgs/pkgs/development/python-modules/qtpy/default.nix
index 5c4984ca3f81..6c574c47e755 100644
--- a/nixpkgs/pkgs/development/python-modules/qtpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qtpy/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "QtPy";
-  version = "2.0.0";
+  version = "2.0.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "777e333df4d711b2ec9743117ab319dadfbd743a5a0eee35923855ca3d35cd9d";
+    sha256 = "13zbhnl2rm30xafwrzfwdb4mjp7gk4s9h2xagbf83pnjzczhgzdd";
   };
 
   propagatedBuildInputs = [
@@ -46,7 +46,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Abstraction layer for PyQt5/PyQt4/PySide2/PySide";
+    description = "Abstraction layer for PyQt5/PyQt6/PySide2/PySide6";
     homepage = "https://github.com/spyder-ide/qtpy";
     license = licenses.mit;
   };
diff --git a/nixpkgs/pkgs/development/python-modules/readme_renderer/default.nix b/nixpkgs/pkgs/development/python-modules/readme_renderer/default.nix
index b7709da9dca4..122c4fdf6653 100644
--- a/nixpkgs/pkgs/development/python-modules/readme_renderer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/readme_renderer/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "readme-renderer";
-  version = "33.0";
+  version = "34.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "readme_renderer";
     inherit version;
-    sha256 = "sha256-47U7yEvWrwVOTMH+NWfcGuGfVUE0IhBDo/jGdOIiCds=";
+    sha256 = "sha256-37TRfyFwbRRfdHPgthyiRbpY6BDPmyIJpII5Z3+C5bA=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/releases/default.nix b/nixpkgs/pkgs/development/python-modules/releases/default.nix
new file mode 100644
index 000000000000..9c1fc34cae46
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/releases/default.nix
@@ -0,0 +1,37 @@
+{ buildPythonPackage
+, fetchFromGitHub
+, lib
+, semantic-version
+, sphinx
+}:
+
+buildPythonPackage rec {
+  pname = "releases";
+  version = "1.6.3";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "bitprophet";
+    repo = pname;
+    rev = version;
+    hash = "sha256-XX2e6bjBNMun31h0sNJ9ieZE01U+PhA5JYYNOuMgD20=";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.py --replace "semantic_version<2.7" "semantic_version"
+  '';
+
+  propagatedBuildInputs = [ semantic-version sphinx ];
+
+  # Test suite doesn't run. See https://github.com/bitprophet/releases/issues/95.
+  doCheck = false;
+
+  pythonImportsCheck = [ "releases" ];
+
+  meta = with lib; {
+    description = "A Sphinx extension for changelog manipulation";
+    homepage = "https://github.com/bitprophet/releases";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ samuela ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/renault-api/default.nix b/nixpkgs/pkgs/development/python-modules/renault-api/default.nix
index 2ddd65790fa0..2312078c5fc6 100644
--- a/nixpkgs/pkgs/development/python-modules/renault-api/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/renault-api/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "renault-api";
-  version = "0.1.9";
+  version = "0.1.10";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "hacf-fr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-CZDxJ5vgk9I1cRDXoqcrUHu+buPWYVrEcHaRXcyts7I=";
+    sha256 = "sha256-PXycRRUrKIkU/MgQbW4BjvBhpEi6InY5jZHPw4Nyv2s=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/reorder-python-imports/default.nix b/nixpkgs/pkgs/development/python-modules/reorder-python-imports/default.nix
new file mode 100644
index 000000000000..860188eba606
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/reorder-python-imports/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+, aspy-refactor-imports
+}:
+
+buildPythonPackage rec {
+  pname = "reorder-python-imports";
+  version = "3.0.1";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "asottile";
+    repo = "reorder_python_imports";
+    rev = "v${version}";
+    sha256 = "1bdKM1sUhpZHy03DdoTzpt1iGm1t1nWnuPyTgl3KhCY=";
+  };
+
+  propagatedBuildInputs = [ aspy-refactor-imports ];
+
+  pythonImportsCheck = [
+    "reorder_python_imports"
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  # prints an explanation about PYTHONPATH first
+  # and therefore fails the assertion
+  disabledTests = [
+    "test_success_messages_are_printed_on_stderr"
+  ];
+
+  meta = with lib; {
+    description = "Tool for automatically reordering python imports";
+    homepage = "https://github.com/asottile/reorder_python_imports";
+    license = licenses.mit;
+    maintainers = with maintainers; [ gador ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/requests-aws4auth/default.nix b/nixpkgs/pkgs/development/python-modules/requests-aws4auth/default.nix
index fa97942e226f..d2de7dff212f 100644
--- a/nixpkgs/pkgs/development/python-modules/requests-aws4auth/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/requests-aws4auth/default.nix
@@ -1,30 +1,46 @@
-{ lib, buildPythonPackage, fetchPypi, python, requests, six }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, httpx
+, pytestCheckHook
+, python
+, pythonOlder
+, requests
+, six
+}:
 
-with lib;
 buildPythonPackage rec {
   pname = "requests-aws4auth";
-  version = "1.1.1";
+  version = "1.1.2";
+  format = "setuptools";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "c0883346ce30b5018903a67da88df72f73ff06e1a320845bba9cd85e811ba0ba";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "tedder";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-/SqU/ojP9I4JXzR0c5tLzxx9UyNaVsON7LG/dbdeiH0=";
   };
 
-  propagatedBuildInputs = [ requests six ];
+  propagatedBuildInputs = [
+    httpx
+    requests
+    six
+  ];
 
-  # pypi package no longer contains tests
-  doCheck = false;
-  checkPhase = ''
-    cd requests_aws4auth
-    ${python.interpreter} test/requests_aws4auth_test.py
-  '';
+  checkInputs = [
+    pytestCheckHook
+  ];
 
-  pythonImportsCheck = [ "requests_aws4auth" ];
+  pythonImportsCheck = [
+    "requests_aws4auth"
+  ];
 
-  meta = {
-    description = "Amazon Web Services version 4 authentication for the Python Requests library.";
+  meta = with lib; {
+    description = "Amazon Web Services version 4 authentication for the Python Requests library";
     homepage = "https://github.com/sam-washington/requests-aws4auth";
     license = licenses.mit;
-    maintainers = [ maintainers.basvandijk ];
+    maintainers = with maintainers; [ basvandijk ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/robotframework/default.nix b/nixpkgs/pkgs/development/python-modules/robotframework/default.nix
index b0b363d8ca2c..a0c805c66a46 100644
--- a/nixpkgs/pkgs/development/python-modules/robotframework/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/robotframework/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "robotframework";
-  version = "4.1.3";
+  version = "5.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "0j71awmfkwk7prz82kr1zbcl3nrih3396sshrygnqlrdjmgivd3p";
+    sha256 = "sha256-AblBSkTCUrYlX4M35IHUIw7j2PGzALbGXpApiJgZlWE=";
   };
 
   checkInputs = [ jsonschema ];
diff --git a/nixpkgs/pkgs/development/python-modules/rokuecp/default.nix b/nixpkgs/pkgs/development/python-modules/rokuecp/default.nix
index 358c2ed600e2..fefec51c2bcd 100644
--- a/nixpkgs/pkgs/development/python-modules/rokuecp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/rokuecp/default.nix
@@ -6,7 +6,7 @@
 , buildPythonPackage
 , cachetools
 , fetchFromGitHub
-, poetry
+, poetry-core
 , pytest-asyncio
 , pytestCheckHook
 , pythonOlder
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "rokuecp";
-  version = "0.15.0";
+  version = "0.16.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -25,12 +25,11 @@ buildPythonPackage rec {
     owner = "ctalkington";
     repo = "python-rokuecp";
     rev = version;
-    hash = "sha256-yNmnCoHIBlpQCLd+YcsKCKd1wWh8WZNpILWmChZGWH4=";
+    hash = "sha256-MeugjIZorwO8d0Yb7bthI6f4NNo6GX9JrRbxrVSdWv0=";
   };
 
   nativeBuildInputs = [
-    # Requires poetry not poetry-core
-    poetry
+    poetry-core
   ];
 
   propagatedBuildInputs = [
@@ -50,12 +49,14 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace pyproject.toml \
+      --replace 'version = "0.0.0"' 'version = "${version}"' \
       --replace " --cov" ""
   '';
 
   disabledTests = [
-    # https://github.com/ctalkington/python-rokuecp/issues/249
+    # Network related tests are having troube in the sandbox
     "test_resolve_hostname"
+    "test_get_dns_state"
     # Assertion issue
     "test_guess_stream_format"
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/ropper/default.nix b/nixpkgs/pkgs/development/python-modules/ropper/default.nix
index 1237fd09ea41..391e8d36139b 100644
--- a/nixpkgs/pkgs/development/python-modules/ropper/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ropper/default.nix
@@ -1,12 +1,12 @@
 { lib
-, buildPythonApplication
+, buildPythonPackage
 , fetchPypi
 , capstone
 , filebytes
 , pytest
 }:
 
-buildPythonApplication rec {
+buildPythonPackage rec {
   pname = "ropper";
   version = "1.13.6";
 
diff --git a/nixpkgs/pkgs/development/python-modules/s3-credentials/default.nix b/nixpkgs/pkgs/development/python-modules/s3-credentials/default.nix
new file mode 100644
index 000000000000..dd142cd09c79
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/s3-credentials/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, click
+, click-default-group
+, boto3
+, pytestCheckHook
+, hypothesis
+, pytest-mock
+}:
+
+buildPythonPackage rec {
+  pname = "s3-credentials";
+  version = "0.10";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "simonw";
+    repo = pname;
+    rev = version;
+    hash = "sha256-JgqKmZG3K4JwQ1Bzw2oll/LQ1njA9wFhX0/uYr9XjAU=";
+  };
+
+  propagatedBuildInputs = [
+    click
+    click-default-group
+    boto3
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    hypothesis
+    pytest-mock
+  ];
+
+  pythonImportsCheck = [
+    "s3_credentials"
+  ];
+
+  meta = with lib; {
+    description = "Python CLI utility for creating credentials for accessing S3 buckets";
+    homepage = "https://github.com/simonw/s3-credentials";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ techknowlogick ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/sabyenc3/default.nix b/nixpkgs/pkgs/development/python-modules/sabyenc3/default.nix
index d2dbb2e40581..2dec98d5ca1a 100644
--- a/nixpkgs/pkgs/development/python-modules/sabyenc3/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sabyenc3/default.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "sabyenc3";
-  version = "5.1.1";
+  version = "5.1.5";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-muqJCn5FcSp5KNZqfW433NCOxfj1DvFvlZPClmNkPR0=";
+    hash = "sha256-JwCzy3QRCzxT8B0VM5SXIIWlYi08tT8eLj/QKtMYLRE=";
   };
 
   # Tests are not included in pypi distribution
diff --git a/nixpkgs/pkgs/development/python-modules/samplerate/default.nix b/nixpkgs/pkgs/development/python-modules/samplerate/default.nix
index 9c26c9e2e2b3..99424bbc67c2 100644
--- a/nixpkgs/pkgs/development/python-modules/samplerate/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/samplerate/default.nix
@@ -2,16 +2,18 @@
 , buildPythonPackage
 , numpy
 , pkgs
+, fetchFromGitHub
 }:
 
 buildPythonPackage {
   pname = "scikits.samplerate";
   version = "0.3.3";
 
-  src = pkgs.fetchgit {
-    url = "https://github.com/cournape/samplerate";
+  src = fetchFromGitHub {
+    owner = "cournape";
+    repo = "samplerate";
     rev = "a536c97eb2d6195b5f266ea3cc3a35364c4c2210";
-    sha256 = "0mgic7bs5zv5ji05vr527jlxxlb70f9dg93hy1lzyz2plm1kf7gg";
+    sha256 = "sha256-7x03Q6VXfP9p8HCk15IDZ9HeqTyi5F1AlGX/otdh8VU=";
   };
 
   buildInputs =  [ pkgs.libsamplerate ];
diff --git a/nixpkgs/pkgs/development/python-modules/samsungtvws/default.nix b/nixpkgs/pkgs/development/python-modules/samsungtvws/default.nix
index b4bebb79a0fd..cd137b1547ea 100644
--- a/nixpkgs/pkgs/development/python-modules/samsungtvws/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/samsungtvws/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "samsungtvws";
-  version = "2.3.0";
+  version = "2.5.0";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-2ly9lbnIHGHB55ml10jKE7dC5LdN1ToGW4GqfxTC5kI=";
+    sha256 = "sha256-AFCN1b80GZ24g3oWe1qqc72yWQy4+/sorL8zwOYM7vo=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/sasmodels/default.nix b/nixpkgs/pkgs/development/python-modules/sasmodels/default.nix
index f7d0e62ff15b..700fb05bc67f 100644
--- a/nixpkgs/pkgs/development/python-modules/sasmodels/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sasmodels/default.nix
@@ -8,33 +8,53 @@
 , docutils
 , pyopencl
 , opencl-headers
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "sasmodels";
-  version = "1.0.5";
+  version = "1.0.6";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "SasView";
     repo = "sasmodels";
     rev = "v${version}";
-    sha256 = "19h30kcgpvg1qirzjm0vhgvp1yn60ivlglc8a8n2b4d9fp0acfyd";
+    hash = "sha256-RVEPu07gp1ScciJQmjizyELcOD2WSjIlxunj5LnmXdw=";
   };
 
-  buildInputs = [ opencl-headers ];
+  buildInputs = [
+    opencl-headers
+  ];
+
+  propagatedBuildInputs = [
+    docutils
+    matplotlib
+    numpy
+    scipy
+    pyopencl
+  ];
+
   # Note: the 1.0.5 release should be compatible with pytest6, so this can
   # be set back to 'pytest' at that point
-  checkInputs = [ pytest ];
-  propagatedBuildInputs = [ docutils matplotlib numpy scipy pyopencl ];
+  checkInputs = [
+    pytest
+  ];
 
   checkPhase = ''
     HOME=$(mktemp -d) py.test -c ./pytest.ini
   '';
 
-  meta = {
+  pythonImportsCheck = [
+    "sasmodels"
+  ];
+
+  meta = with lib; {
     description = "Library of small angle scattering models";
-    homepage = "http://sasview.org";
-    license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ rprospero ];
+    homepage = "https://github.com/SasView/sasmodels";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ rprospero ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/scancode-toolkit/default.nix b/nixpkgs/pkgs/development/python-modules/scancode-toolkit/default.nix
index afde27967dbb..a5fdf3d547ed 100644
--- a/nixpkgs/pkgs/development/python-modules/scancode-toolkit/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scancode-toolkit/default.nix
@@ -131,6 +131,7 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace setup.cfg \
+      --replace "pdfminer.six >= 20200101" "pdfminer.six" \
       --replace "pluggy >= 0.12.0, < 1.0" "pluggy" \
       --replace "pygmars >= 0.7.0" "pygmars" \
       --replace "license_expression >= 21.6.14" "license_expression"
diff --git a/nixpkgs/pkgs/development/python-modules/scikit-fmm/default.nix b/nixpkgs/pkgs/development/python-modules/scikit-fmm/default.nix
index 4f823a54580b..34cf4ddaae02 100644
--- a/nixpkgs/pkgs/development/python-modules/scikit-fmm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scikit-fmm/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "scikit-fmm";
-  version = "2022.2.2";
+  version = "2022.3.26";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-0Pvm6Sn0OWOwEX7E4OhBwo2hxzQmGzV2Yvytkm14+ls=";
+    sha256 = "sha256-wxVfltcz3qh5FRS3CXYsYdL3z94x7Y0rjCbKFnNW3o4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/scikit-hep-testdata/default.nix b/nixpkgs/pkgs/development/python-modules/scikit-hep-testdata/default.nix
index d8240fd83333..803daeb2ab3a 100644
--- a/nixpkgs/pkgs/development/python-modules/scikit-hep-testdata/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scikit-hep-testdata/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "scikit-hep-testdata";
-  version = "0.4.11";
+  version = "0.4.12";
   format = "pyproject";
 
   # fetch from github as we want the data files
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "scikit-hep";
     repo = pname;
     rev = "v${version}";
-    sha256 = "18r5nk8d5y79ihzjkjm5l0hiw2sjgj87px7vwb0bxbs73f5v353b";
+    sha256 = "sha256-ZnsOmsajW4dDv53I/Cuu97mPJywGiwFhNGpT1WRfxSw=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/scmrepo/default.nix b/nixpkgs/pkgs/development/python-modules/scmrepo/default.nix
index f4a024a46e99..23ce846ecc54 100644
--- a/nixpkgs/pkgs/development/python-modules/scmrepo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scmrepo/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "scmrepo";
-  version = "0.0.7";
+  version = "0.0.14";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "iterative";
     repo = pname;
     rev = version;
-    hash = "sha256-tZsogqcfAqpSo9yOz4z0mgY9SVU1epPmcBuyLJsHLfY=";
+    hash = "sha256-/J8cCcGAWGrJmUvznOKXtNiHasdOJ3CzsGMeakgL0sY=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/scrapy/default.nix b/nixpkgs/pkgs/development/python-modules/scrapy/default.nix
index c26ec74ac310..073059aec626 100644
--- a/nixpkgs/pkgs/development/python-modules/scrapy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scrapy/default.nix
@@ -22,6 +22,7 @@
 , service-identity
 , sybil
 , testfixtures
+, tldextract
 , twisted
 , w3lib
 , zope_interface
@@ -29,13 +30,13 @@
 
 buildPythonPackage rec {
   pname = "scrapy";
-  version = "2.5.1";
+  version = "2.6.1";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit version;
     pname = "Scrapy";
-    sha256 = "13af6032476ab4256158220e530411290b3b934dd602bb6dacacbf6d16141f49";
+    sha256 = "56fd55a59d0f329ce752892358abee5a6b50b4fc55a40420ea317dc617553827";
   };
 
   nativeBuildInputs = [
@@ -54,6 +55,7 @@ buildPythonPackage rec {
     pyopenssl
     queuelib
     service-identity
+    tldextract
     twisted
     w3lib
     zope_interface
@@ -68,22 +70,6 @@ buildPythonPackage rec {
     testfixtures
   ];
 
-  patches = [
-    # Require setuptools, https://github.com/scrapy/scrapy/pull/5122
-    (fetchpatch {
-      name = "add-setuptools.patch";
-      url = "https://github.com/scrapy/scrapy/commit/4f500342c8ad4674b191e1fab0d1b2ac944d7d3e.patch";
-      sha256 = "14030sfv1cf7dy4yww02b49mg39cfcg4bv7ys1iwycfqag3xcjda";
-    })
-    # Make Twisted[http2] installation optional, https://github.com/scrapy/scrapy/pull/5113
-    (fetchpatch {
-      name = "remove-h2.patch";
-      url = "https://github.com/scrapy/scrapy/commit/c5b1ee810167266fcd259f263dbfc0fe0204761a.patch";
-      sha256 = "0sa39yx9my4nqww8a12bk9zagx7b56vwy7xpxm4xgjapjl6mcc0k";
-      excludes = [ "tox.ini" ];
-    })
-  ];
-
   LC_ALL = "en_US.UTF-8";
 
   preCheck = ''
diff --git a/nixpkgs/pkgs/development/python-modules/sense-energy/default.nix b/nixpkgs/pkgs/development/python-modules/sense-energy/default.nix
index 57a7e367d726..b3f2d6955709 100644
--- a/nixpkgs/pkgs/development/python-modules/sense-energy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sense-energy/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , aiohttp
+, pythonOlder
 , requests
 , websocket-client
 , websockets
@@ -9,14 +10,16 @@
 
 buildPythonPackage rec {
   pname = "sense-energy";
-  version = "0.10.2";
+  version = "0.10.4";
   format = "setuptools";
 
+  disabled = pythonOlder "3.7";
+
   src = fetchFromGitHub {
     owner = "scottbonline";
     repo = "sense";
     rev = version;
-    hash = "sha256-0D0AagmLozF5nLbdcmtE9q65vG2WxWv+hZLTnjmmfEY=";
+    hash = "sha256-yflI17lLZMXXB0ye+jz3VWWMdZtcBTwbg8deA4ENmWw=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix b/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix
index dbb85c911102..51e6c76de5db 100644
--- a/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix
@@ -40,14 +40,14 @@
 
 buildPythonPackage rec {
   pname = "sentry-sdk";
-  version = "1.5.6";
+  version = "1.5.8";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "getsentry";
     repo = "sentry-python";
     rev = version;
-    sha256 = "sha256-PxoxOeFdmmfpXBnGs9D5aKP6vlGKx9nPO3ngYuTa+Rs=";
+    sha256 = "sha256-28MkwQog+Abk1PSDPWbah650YATiGCBWaTbFO52KgzY=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix b/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix
index fa813c4b5fd1..1c2c206f87f0 100644
--- a/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "simplisafe-python";
-  version = "2022.02.1";
+  version = "2022.03.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = version;
-    sha256 = "sha256-r+TcSzFkEGRsuTtEHBT/GMNa9r6GsIyvbLaF32cFfeQ=";
+    sha256 = "sha256-B4Tg122S2lJaBXBKUSN2ndt5EOiC5HyORTQXofZKUpw=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/sip/default.nix b/nixpkgs/pkgs/development/python-modules/sip/default.nix
index 5cd8136f84ef..6904714a60c7 100644
--- a/nixpkgs/pkgs/development/python-modules/sip/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sip/default.nix
@@ -10,6 +10,13 @@ buildPythonPackage rec {
     sha256 = "a1cf8431a8eb9392b3ff6dc61d832d0447bfdcae5b3e4256a5fa74dbc25b0734";
   };
 
+  patches = [
+    # on non-x86 Linux platforms, sip incorrectly detects the manylinux version
+    # and PIP will refuse to install the resulting wheel.
+    # remove once upstream fixes this, hopefully in 6.5.2
+    ./fix-manylinux-version.patch
+  ];
+
   propagatedBuildInputs = [ packaging toml ];
 
   # There aren't tests
diff --git a/nixpkgs/pkgs/development/python-modules/sip/fix-manylinux-version.patch b/nixpkgs/pkgs/development/python-modules/sip/fix-manylinux-version.patch
new file mode 100644
index 000000000000..4b8e99ae8e47
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/sip/fix-manylinux-version.patch
@@ -0,0 +1,19 @@
+diff --git a/sipbuild/project.py b/sipbuild/project.py
+--- a/sipbuild/project.py
++++ b/sipbuild/project.py
+@@ -336,13 +336,13 @@ class Project(AbstractProject, Configurable):
+             # We expect a two part tag so leave anything else unchanged.
+             parts = platform_tag.split('-')
+             if len(parts) == 2:
+-                if self.minimum_glibc_version > (2, 17):
++                if self.minimum_glibc_version > (2, 17) or parts[1] not in {"x86_64", "i686", "aarch64", "armv7l", "ppc64", "ppc64le", "s390x"}:
+                     # PEP 600.
+                     parts[0] = 'manylinux'
+                     parts.insert(1,
+                             '{}.{}'.format(self.minimum_glibc_version[0],
+                                     self.minimum_glibc_version[1]))
+-                elif self.minimum_glibc_version > (2, 12):
++                elif self.minimum_glibc_version > (2, 12) or parts[1] not in {"x86_64", "i686"}:
+                     # PEP 599.
+                     parts[0] = 'manylinux2014'
+                 elif self.minimum_glibc_version > (2, 5):
diff --git a/nixpkgs/pkgs/development/python-modules/slixmpp/default.nix b/nixpkgs/pkgs/development/python-modules/slixmpp/default.nix
index 4a4386ff5bc0..4743639c43d1 100644
--- a/nixpkgs/pkgs/development/python-modules/slixmpp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/slixmpp/default.nix
@@ -4,31 +4,25 @@
 , aiohttp
 , fetchPypi
 , gnupg
-, isPy3k
 , pyasn1
 , pyasn1-modules
 , pytestCheckHook
 , substituteAll
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "slixmpp";
-  version = "1.8.0.1";
+  version = "1.8.1";
+  format = "setuptools";
 
-  disabled = !isPy3k;
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-J3znZl77jST94KhUBQcCxSK0qnsVWIYTG6u3po5FHh8=";
+    hash = "sha256-QgTIC+4JtAD9nnS+fJKZwF0aJEIrFmPHkYg8cPgXmcA=";
   };
 
-  patches = [
-    (substituteAll {
-      src = ./hardcode-gnupg-path.patch;
-      inherit gnupg;
-    })
-  ];
-
   propagatedBuildInputs = [
     aiodns
     aiohttp
@@ -36,15 +30,28 @@ buildPythonPackage rec {
     pyasn1-modules
   ];
 
-  checkInputs = [ pytestCheckHook ];
+  checkInputs = [
+    pytestCheckHook
+  ];
 
-  # Exclude live tests
-  disabledTestPaths = [ "tests/live_test.py" ];
+  patches = [
+    (substituteAll {
+      src = ./hardcode-gnupg-path.patch;
+      inherit gnupg;
+    })
+  ];
+
+  disabledTestPaths = [
+    # Exclude live tests
+    "tests/live_test.py"
+  ];
 
-  pythonImportsCheck = [ "slixmpp" ];
+  pythonImportsCheck = [
+    "slixmpp"
+  ];
 
   meta = with lib; {
-    description = "Elegant Python library for XMPP";
+    description = "Python library for XMPP";
     homepage = "https://slixmpp.readthedocs.io/";
     license = licenses.mit;
     maintainers = with maintainers; [ fab ];
diff --git a/nixpkgs/pkgs/development/python-modules/soco/default.nix b/nixpkgs/pkgs/development/python-modules/soco/default.nix
index e79a38d8cf5b..50a134df2d2a 100644
--- a/nixpkgs/pkgs/development/python-modules/soco/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/soco/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "soco";
-  version = "0.26.4";
+  version = "0.27.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "SoCo";
     repo = "SoCo";
     rev = "v${version}";
-    hash = "sha256-DoONq6Iqi8t47jtqggKYMHSNJAf/Kha3tszR6mYeB9Y=";
+    hash = "sha256-8U7wfxqen+hgK8j9ooPHCAKvd9kSZicToTyP7XzQFrg=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/sslyze/default.nix b/nixpkgs/pkgs/development/python-modules/sslyze/default.nix
index f76ba96a5b8f..bc3e2c238c9f 100644
--- a/nixpkgs/pkgs/development/python-modules/sslyze/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sslyze/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "sslyze";
-  version = "5.0.2";
+  version = "5.0.3";
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "nabla-c0d3";
     repo = pname;
     rev = version;
-    hash = "sha256-8xtnE5oFxH3wo2Smt65/xGDHxivexN6ggUpyUg42Cjk=";
+    hash = "sha256-d465WJIDsgNAPe8KW5v2KDSgzMH7OPLSiFfFH9n+jiA=";
   };
 
   patchPhase = ''
diff --git a/nixpkgs/pkgs/development/python-modules/stripe/default.nix b/nixpkgs/pkgs/development/python-modules/stripe/default.nix
index e98112628381..04adc9721f98 100644
--- a/nixpkgs/pkgs/development/python-modules/stripe/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stripe/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "stripe";
-  version = "2.67.0";
+  version = "2.68.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-cYuT1qGBBSQ7zgybSOUY9y8fCD0n8H4HuL2zpUH+ODU=";
+    hash = "sha256-X3lYAxM/KlC4NjBJrq/4Gze37wpcVKTA11VaQRpAt68=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/stups-pierone/default.nix b/nixpkgs/pkgs/development/python-modules/stups-pierone/default.nix
index f627f0e7231e..3df2a3e2895b 100644
--- a/nixpkgs/pkgs/development/python-modules/stups-pierone/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stups-pierone/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "stups-pierone";
-  version = "1.1.50";
+  version = "1.1.51";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "zalando-stups";
     repo = "pierone-cli";
     rev = version;
-    hash = "sha256-YAoj+Ou0Q64QRN5R0CQSxQGP7xDQQNISS6VT5txV0sw=";
+    hash = "sha256-OypGYHfiFUfcUndylM2N2WfPnfXXJ4gvWypUbltYAYE=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/subarulink/default.nix b/nixpkgs/pkgs/development/python-modules/subarulink/default.nix
index ab514735ec26..72101eaf29d8 100644
--- a/nixpkgs/pkgs/development/python-modules/subarulink/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/subarulink/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "subarulink";
-  version = "0.4.3";
+  version = "0.5.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "G-Two";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-q+a+OFFMAGl8KQi+KZ8h21+Pj0XEqP9ZIJii2PCgD6E=";
+    hash = "sha256-q+a+OFFMAGl8KQi+KZ8h21+Pj0XEqP9ZIJii2PCgD6E=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/svg2tikz/default.nix b/nixpkgs/pkgs/development/python-modules/svg2tikz/default.nix
index 38516ab73c3e..c15e88ebeb24 100644
--- a/nixpkgs/pkgs/development/python-modules/svg2tikz/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/svg2tikz/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, fetchgit
+, fetchFromGitHub
 , lxml
 , isPy27
 }:
@@ -12,10 +12,12 @@ buildPythonPackage {
 
   propagatedBuildInputs = [ lxml ];
 
-  src = fetchgit {
-    url = "https://github.com/kjellmf/svg2tikz";
-    sha256 = "429428ec435e53672b85cdfbb89bb8af0ff9f8238f5d05970729e5177d252d5f";
+  src = fetchFromGitHub {
+    owner = "kjellmf";
+    repo = "svg2tikz";
     rev = "ad36f2c3818da13c4136d70a0fd8153acf8daef4";
+    sha256 = "sha256-QpQo7ENeU2crhc37uJu4rw/5+COPXQWXBynlF30lLV8=";
+    fetchSubmodules = true;
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/swift/default.nix b/nixpkgs/pkgs/development/python-modules/swift/default.nix
index b61e998c3c9f..e06e7917be18 100644
--- a/nixpkgs/pkgs/development/python-modules/swift/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/swift/default.nix
@@ -23,11 +23,11 @@
 
 buildPythonPackage rec {
   pname = "swift";
-  version = "2.29.0";
+  version = "2.29.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-sGHARvi1PAFajz82GAegDVpy6A98QEyMfrDHZjNtDGQ=";
+    sha256 = "sha256-PoTob/Qz/XxEv/A271RQWT11rIIJBejVGjpAT14iKUg=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/tempora/default.nix b/nixpkgs/pkgs/development/python-modules/tempora/default.nix
index 6999655c5dc5..79b04b7ebbb2 100644
--- a/nixpkgs/pkgs/development/python-modules/tempora/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tempora/default.nix
@@ -1,7 +1,6 @@
 { lib, buildPythonPackage, fetchPypi
-, setuptools-scm, pytest, pytest-freezegun, freezegun, backports_unittest-mock
+, setuptools-scm, pytestCheckHook, pytest-freezegun, freezegun, backports_unittest-mock
 , six, pytz, jaraco_functools, pythonOlder
-, pytest-flake8, pytest-cov, pytest-black, pytest-mypy
 }:
 
 buildPythonPackage rec {
@@ -20,14 +19,9 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ six pytz jaraco_functools ];
 
   checkInputs = [
-    pytest-freezegun pytest freezegun backports_unittest-mock
-    pytest-flake8 pytest-cov pytest-black pytest-mypy
+    pytest-freezegun pytestCheckHook freezegun backports_unittest-mock
   ];
 
-  checkPhase = ''
-    pytest
-  '';
-
   meta = with lib; {
     description = "Objects and routines pertaining to date and time";
     homepage = "https://github.com/jaraco/tempora";
diff --git a/nixpkgs/pkgs/development/python-modules/tensorflow-tensorboard/default.nix b/nixpkgs/pkgs/development/python-modules/tensorflow-tensorboard/default.nix
index ceebad2a4769..a4a04d898566 100644
--- a/nixpkgs/pkgs/development/python-modules/tensorflow-tensorboard/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tensorflow-tensorboard/default.nix
@@ -42,7 +42,8 @@ buildPythonPackage rec {
     pushd unpacked/tensorboard-${version}
 
     substituteInPlace tensorboard-${version}.dist-info/METADATA \
-      --replace "google-auth (<2,>=1.6.3)" "google-auth (<3,>=1.6.3)"
+      --replace "google-auth (<2,>=1.6.3)" "google-auth (<3,>=1.6.3)" \
+      --replace "google-auth-oauthlib (<0.5,>=0.4.1)" "google-auth-oauthlib (<0.6,>=0.4.1)"
 
     popd
     wheel pack ./unpacked/tensorboard-${version}
diff --git a/nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix b/nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix
index 4809fde718d2..5cdc1dafc034 100644
--- a/nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "teslajsonpy";
-  version = "1.8.0";
+  version = "1.9.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "zabuldon";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-9EFbsJPn543fVGQ46cikEE9rE4qBr/2q6vX7u4tui7I=";
+    sha256 = "sha256-Q/ltNdr2Huvfj1RmKFopJbaR4FSM7ziWadmDKPS26vc=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/thinc/default.nix b/nixpkgs/pkgs/development/python-modules/thinc/default.nix
index 417cd8e056c9..a25c8d235674 100644
--- a/nixpkgs/pkgs/development/python-modules/thinc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/thinc/default.nix
@@ -30,14 +30,14 @@
 
 buildPythonPackage rec {
   pname = "thinc";
-  version = "8.0.14";
+  version = "8.0.15";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-3MC8ao6BTiDyaCXj/X+DNCTpMYcTWVJFSl0X+sCc5J0=";
+    sha256 = "sha256-LjFQINqFw3keGR+/N8SiQz9XzzIuJzgNoM1N6Z2WBTs=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/timetagger/default.nix b/nixpkgs/pkgs/development/python-modules/timetagger/default.nix
index 1da2887a12f1..65b22f905ef9 100644
--- a/nixpkgs/pkgs/development/python-modules/timetagger/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/timetagger/default.nix
@@ -9,13 +9,13 @@
 
 python3Packages.buildPythonPackage rec {
   pname = "timetagger";
-  version = "22.2.3";
+  version = "22.3.1";
 
   src = fetchFromGitHub {
     owner = "almarklein";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-tQel+IVqP+MngAvFgr7Yh+XCSIPWpzCBXHOj9b0Os98=";
+    sha256 = "sha256-pHogDjqXuoQp5afSnPvMPaKoBtPE6u3kMi87SzY5yoU=";
   };
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/nixpkgs/pkgs/development/python-modules/tls-parser/default.nix b/nixpkgs/pkgs/development/python-modules/tls-parser/default.nix
index ad35fe501282..a886e116e458 100644
--- a/nixpkgs/pkgs/development/python-modules/tls-parser/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tls-parser/default.nix
@@ -7,23 +7,29 @@
 
 buildPythonPackage rec {
   pname = "tls-parser";
-  version = "1.2.2";
+  version = "2.0.0";
+  format = "setuptools";
+
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "nabla-c0d3";
     repo = "tls_parser";
     rev = version;
-    sha256 = "12qj3vg02r5a51w6gbgb1gcxicqc10lbbsdi57jkkfvbqiindbd0";
+    hash = "sha256-A1lYRe1sHDoOFdF20DP+xRMcPBWzokIXFphIpaBmwBc=";
   };
 
-  checkInputs = [ pytestCheckHook ];
+  checkInputs = [
+    pytestCheckHook
+  ];
 
-  pythonImportsCheck = [ "tls_parser" ];
+  pythonImportsCheck = [
+    "tls_parser"
+  ];
 
   meta = with lib; {
-    homepage = "https://github.com/nabla-c0d3/tls_parser";
     description = "Small library to parse TLS records";
+    homepage = "https://github.com/nabla-c0d3/tls_parser";
     platforms = with platforms; linux ++ darwin;
     license = licenses.mit;
     maintainers = with maintainers; [ veehaitch ];
diff --git a/nixpkgs/pkgs/development/python-modules/torchaudio/bin.nix b/nixpkgs/pkgs/development/python-modules/torchaudio/bin.nix
index 1f6ae80b0329..ba504102329d 100644
--- a/nixpkgs/pkgs/development/python-modules/torchaudio/bin.nix
+++ b/nixpkgs/pkgs/development/python-modules/torchaudio/bin.nix
@@ -2,6 +2,10 @@
 , stdenv
 , buildPythonPackage
 , fetchurl
+, isPy37
+, isPy38
+, isPy39
+, isPy310
 , python
 , pytorch-bin
 , pythonOlder
@@ -10,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "torchaudio";
-  version = "0.10.0";
+  version = "0.11.0";
   format = "wheel";
 
   src =
@@ -19,7 +23,7 @@ buildPythonPackage rec {
         srcs = (import ./binary-hashes.nix version)."${stdenv.system}-${pyVerNoDot}" or unsupported;
     in fetchurl srcs;
 
-  disabled = ! (pythonAtLeast "3.7" && pythonOlder "3.10");
+  disabled = !(isPy37 || isPy38 || isPy39 || isPy310);
 
   propagatedBuildInputs = [
     pytorch-bin
diff --git a/nixpkgs/pkgs/development/python-modules/torchaudio/binary-hashes.nix b/nixpkgs/pkgs/development/python-modules/torchaudio/binary-hashes.nix
index 764b9db426b9..70ae3357221f 100644
--- a/nixpkgs/pkgs/development/python-modules/torchaudio/binary-hashes.nix
+++ b/nixpkgs/pkgs/development/python-modules/torchaudio/binary-hashes.nix
@@ -6,21 +6,61 @@
 # To add a new version, run "prefetch.sh 'new-version'" to paste the generated file as follows.
 
 version : builtins.getAttr version {
-  "0.10.0" = {
+  "0.11.0" = {
     x86_64-linux-37 = {
-      name = "torchaudio-0.10.0-cp37-cp37m-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu113/torchaudio-0.10.0%2Bcu113-cp37-cp37m-linux_x86_64.whl";
-      hash = "sha256-FspXTTODdkO0nPUJcJm8+vLIvckUa8gRfBPBT9LcKPw=";
+      name = "torchaudio-0.11.0-cp37-cp37m-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu113/torchaudio-0.11.0%2Bcu113-cp37-cp37m-linux_x86_64.whl";
+      hash = "sha256-AdqgntXh2rTD7rBePshFAQ2tVl7b+734wG4r471/Y2U=";
     };
     x86_64-linux-38 = {
-      name = "torchaudio-0.10.0-cp38-cp38-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu113/torchaudio-0.10.0%2Bcu113-cp38-cp38-linux_x86_64.whl";
-      hash = "sha256-Mf7QdXBSIIWRfT7ACthEwFA1V2ieid8legbMnRQnzqI=";
+      name = "torchaudio-0.11.0-cp38-cp38-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu113/torchaudio-0.11.0%2Bcu113-cp38-cp38-linux_x86_64.whl";
+      hash = "sha256-zuCHDpz3bkOUjYWprqX9VXoUbXfR8Vhdf1VFfOUg8z4=";
     };
     x86_64-linux-39 = {
-      name = "torchaudio-0.10.0-cp39-cp39-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu113/torchaudio-0.10.0%2Bcu113-cp39-cp39-linux_x86_64.whl";
-      hash = "sha256-LMSGNdmku1iHRy1jCRTTOYcQlRL+Oc9jjZC1nx++skA=";
+      name = "torchaudio-0.11.0-cp39-cp39-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu113/torchaudio-0.11.0%2Bcu113-cp39-cp39-linux_x86_64.whl";
+      hash = "sha256-btI9TpsOjeLnIz6J56avNv4poJTpXjjhDbMy6+ZFQvI=";
+    };
+    x86_64-linux-310 = {
+      name = "torchaudio-0.11.0-cp310-cp310-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu113/torchaudio-0.11.0%2Bcu113-cp310-cp310-linux_x86_64.whl";
+      hash = "sha256-Zk+AWytEXfJ+HM69BAPhVsvN6pgQwC6uaW7Xux2row4=";
+    };
+    x86_64-darwin-37 = {
+      name = "torchaudio-0.11.0-cp37-cp37m-macosx_10_15_x86_64.whl";
+      url = "https://download.pytorch.org/whl/torchaudio-0.11.0-cp37-cp37m-macosx_10_15_x86_64.whl";
+      hash = "sha256-uaTT4athEWHAZe0hBoBIM/9LhfZNhAIexZBGg2MWn50=";
+    };
+    x86_64-darwin-38 = {
+      name = "torchaudio-0.11.0-cp38-cp38-macosx_10_15_x86_64.whl";
+      url = "https://download.pytorch.org/whl/torchaudio-0.11.0-cp38-cp38-macosx_10_15_x86_64.whl";
+      hash = "sha256-9OndqejTzgu9XnkZJiGfUFS4uFNlx5vi7pAzOs+a2/w=";
+    };
+    x86_64-darwin-39 = {
+      name = "torchaudio-0.11.0-cp39-cp39-macosx_10_15_x86_64.whl";
+      url = "https://download.pytorch.org/whl/torchaudio-0.11.0-cp39-cp39-macosx_10_15_x86_64.whl";
+      hash = "sha256-cNi8B/J3YI0jqaoI2z+68DVmAlS8EtmzYWQMRVZ3dVk=";
+    };
+    x86_64-darwin-310 = {
+      name = "torchaudio-0.11.0-cp310-cp310-macosx_10_15_x86_64.whl";
+      url = "https://download.pytorch.org/whl/torchaudio-0.11.0-cp310-cp310-macosx_10_15_x86_64.whl";
+      hash = "sha256-g2Pj2wqK9YIP19O/g5agryPcgiHJqdS2Di44mAVJKUQ=";
+    };
+    aarch64-darwin-38 = {
+      name = "torchaudio-0.11.0-cp38-cp38-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/torchaudio-0.11.0-cp38-cp38-macosx_11_0_arm64.whl";
+      hash = "sha256-MX/Y7Dn92zrx2tkGWTuezcPt9o5/V4DEL43pVlha5IA=";
+    };
+    aarch64-darwin-39 = {
+      name = "torchaudio-0.11.0-cp39-cp39-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/torchaudio-0.11.0-cp39-cp39-macosx_11_0_arm64.whl";
+      hash = "sha256-5eVRP83VeHAGGWW++/B2V4eyX0mcPgC1j02ETkQYMXc=";
+    };
+    aarch64-darwin-310 = {
+      name = "torchaudio-0.11.0-cp310-cp310-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/torchaudio-0.11.0-cp310-cp310-macosx_11_0_arm64.whl";
+      hash = "sha256-06OyzOuV8E7ZNtozvFO9Zm2rBxWnnbM65HGYUiQdwtI=";
     };
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/torchaudio/prefetch.sh b/nixpkgs/pkgs/development/python-modules/torchaudio/prefetch.sh
index 4e62ab4ed359..294c917e0d17 100755
--- a/nixpkgs/pkgs/development/python-modules/torchaudio/prefetch.sh
+++ b/nixpkgs/pkgs/development/python-modules/torchaudio/prefetch.sh
@@ -5,12 +5,21 @@ set -eou pipefail
 
 version=$1
 
-bucket="https://download.pytorch.org/whl/cu113"
+linux_bucket="https://download.pytorch.org/whl/cu113"
+darwin_bucket="https://download.pytorch.org/whl"
 
 url_and_key_list=(
-  "x86_64-linux-37 $bucket/torchaudio-${version}%2Bcu113-cp37-cp37m-linux_x86_64.whl torchaudio-${version}-cp37-cp37m-linux_x86_64.whl"
-  "x86_64-linux-38 $bucket/torchaudio-${version}%2Bcu113-cp38-cp38-linux_x86_64.whl torchaudio-${version}-cp38-cp38-linux_x86_64.whl"
-  "x86_64-linux-39 $bucket/torchaudio-${version}%2Bcu113-cp39-cp39-linux_x86_64.whl torchaudio-${version}-cp39-cp39-linux_x86_64.whl"
+  "x86_64-linux-37 $linux_bucket/torchaudio-${version}%2Bcu113-cp37-cp37m-linux_x86_64.whl torchaudio-${version}-cp37-cp37m-linux_x86_64.whl"
+  "x86_64-linux-38 $linux_bucket/torchaudio-${version}%2Bcu113-cp38-cp38-linux_x86_64.whl torchaudio-${version}-cp38-cp38-linux_x86_64.whl"
+  "x86_64-linux-39 $linux_bucket/torchaudio-${version}%2Bcu113-cp39-cp39-linux_x86_64.whl torchaudio-${version}-cp39-cp39-linux_x86_64.whl"
+  "x86_64-linux-310 $linux_bucket/torchaudio-${version}%2Bcu113-cp310-cp310-linux_x86_64.whl torchaudio-${version}-cp310-cp310-linux_x86_64.whl"
+  "x86_64-darwin-37 $darwin_bucket/torchaudio-${version}-cp37-cp37m-macosx_10_15_x86_64.whl torchaudio-${version}-cp37-cp37m-macosx_10_15_x86_64.whl"
+  "x86_64-darwin-38 $darwin_bucket/torchaudio-${version}-cp38-cp38-macosx_10_15_x86_64.whl torchaudio-${version}-cp38-cp38-macosx_10_15_x86_64.whl"
+  "x86_64-darwin-39 $darwin_bucket/torchaudio-${version}-cp39-cp39-macosx_10_15_x86_64.whl torchaudio-${version}-cp39-cp39-macosx_10_15_x86_64.whl"
+  "x86_64-darwin-310 $darwin_bucket/torchaudio-${version}-cp310-cp310-macosx_10_15_x86_64.whl torchaudio-${version}-cp310-cp310-macosx_10_15_x86_64.whl"
+  "aarch64-darwin-38 $darwin_bucket/torchaudio-${version}-cp38-cp38-macosx_11_0_arm64.whl torchaudio-${version}-cp38-cp38-macosx_11_0_arm64.whl"
+  "aarch64-darwin-39 $darwin_bucket/torchaudio-${version}-cp39-cp39-macosx_11_0_arm64.whl torchaudio-${version}-cp39-cp39-macosx_11_0_arm64.whl"
+  "aarch64-darwin-310 $darwin_bucket/torchaudio-${version}-cp310-cp310-macosx_11_0_arm64.whl torchaudio-${version}-cp310-cp310-macosx_11_0_arm64.whl"
 )
 
 hashfile=binary-hashes-"$version".nix
diff --git a/nixpkgs/pkgs/development/python-modules/torchvision/bin.nix b/nixpkgs/pkgs/development/python-modules/torchvision/bin.nix
index f7041dbb519d..8b1d0e2ec8de 100644
--- a/nixpkgs/pkgs/development/python-modules/torchvision/bin.nix
+++ b/nixpkgs/pkgs/development/python-modules/torchvision/bin.nix
@@ -5,6 +5,7 @@
 , isPy37
 , isPy38
 , isPy39
+, isPy310
 , patchelf
 , pillow
 , python
@@ -15,7 +16,7 @@ let
   pyVerNoDot = builtins.replaceStrings [ "." ] [ "" ] python.pythonVersion;
   srcs = import ./binary-hashes.nix version;
   unsupported = throw "Unsupported system";
-  version = "0.11.1";
+  version = "0.12.0";
 in buildPythonPackage {
   inherit version;
 
@@ -25,7 +26,7 @@ in buildPythonPackage {
 
   src = fetchurl srcs."${stdenv.system}-${pyVerNoDot}" or unsupported;
 
-  disabled = !(isPy37 || isPy38 || isPy39);
+  disabled = !(isPy37 || isPy38 || isPy39 || isPy310);
 
   nativeBuildInputs = [
     patchelf
diff --git a/nixpkgs/pkgs/development/python-modules/torchvision/binary-hashes.nix b/nixpkgs/pkgs/development/python-modules/torchvision/binary-hashes.nix
index b608bab24409..271968391ef0 100644
--- a/nixpkgs/pkgs/development/python-modules/torchvision/binary-hashes.nix
+++ b/nixpkgs/pkgs/development/python-modules/torchvision/binary-hashes.nix
@@ -6,21 +6,61 @@
 # To add a new version, run "prefetch.sh 'new-version'" to paste the generated file as follows.
 
 version : builtins.getAttr version {
-  "0.11.1" = {
+  "0.12.0" = {
     x86_64-linux-37 = {
-      name = "torchvision-0.11.1-cp37-cp37m-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu113/torchvision-0.11.1%2Bcu113-cp37-cp37m-linux_x86_64.whl";
-      hash = "sha256-2xKWqWNKqmOMyVJnPfbtF+B9PQ7z4S66J1T3P8EvM0I=";
+      name = "torchvision-0.12.0-cp37-cp37m-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu113/torchvision-0.12.0%2Bcu113-cp37-cp37m-linux_x86_64.whl";
+      hash = "sha256-i/qktZT+5HQYQjtTHtxOV751DcsP9AHMsSV9/svsGzA=";
     };
     x86_64-linux-38 = {
-      name = "torchvision-0.11.1-cp38-cp38-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu113/torchvision-0.11.1%2Bcu113-cp38-cp38-linux_x86_64.whl";
-      hash = "sha256-bFxvJaNEomytXXANHng+oU8YSLGkuO/TSzkoDskkaIE=";
+      name = "torchvision-0.12.0-cp38-cp38-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu113/torchvision-0.12.0%2Bcu113-cp38-cp38-linux_x86_64.whl";
+      hash = "sha256-NxM+jFsOwvAZmeWRFvbQ422a+xx/j1i9DD3ImW+DVBk=";
     };
     x86_64-linux-39 = {
-      name = "torchvision-0.11.1-cp39-cp39-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu113/torchvision-0.11.1%2Bcu113-cp39-cp39-linux_x86_64.whl";
-      hash = "sha256-ysN3LmSKR+FVKYGnCGQJqa8lVApVT5rPMO+NHmmazAc=";
+      name = "torchvision-0.12.0-cp39-cp39-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu113/torchvision-0.12.0%2Bcu113-cp39-cp39-linux_x86_64.whl";
+      hash = "sha256-bGO5q+KEnv7SexmbbUWaIbsBcIxyDbL8pevZQbLwDbg=";
+    };
+    x86_64-linux-310 = {
+      name = "torchvision-0.12.0-cp310-cp310-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu113/torchvision-0.12.0%2Bcu113-cp310-cp310-linux_x86_64.whl";
+      hash = "sha256-ocsGOHa967HcZGV+1omD/xMHufmoi166Yg2Hr+SEhfE=";
+    };
+    x86_64-darwin-37 = {
+      name = "torchvision-0.12.0-cp37-cp37m-macosx_10_9_x86_64.whl";
+      url = "https://download.pytorch.org/whl/torchvision-0.12.0-cp37-cp37m-macosx_10_9_x86_64.whl";
+      hash = "sha256-GJM7xZf0VjmTJJcZqWqV28fTN0yQ+7MNPafVGPOv60I=";
+    };
+    x86_64-darwin-38 = {
+      name = "torchvision-0.12.0-cp38-cp38-macosx_10_9_x86_64.whl";
+      url = "https://download.pytorch.org/whl/torchvision-0.12.0-cp38-cp38-macosx_10_9_x86_64.whl";
+      hash = "sha256-DWAuCb1Fc2/y55aOjduw7s6Vb/ltcVSLGxtIeP33S9g=";
+    };
+    x86_64-darwin-39 = {
+      name = "torchvision-0.12.0-cp39-cp39-macosx_10_9_x86_64.whl";
+      url = "https://download.pytorch.org/whl/torchvision-0.12.0-cp39-cp39-macosx_10_9_x86_64.whl";
+      hash = "sha256-RMye+ZLS4qtjsIg/fezrwiRNupO3JUe6EfV6yEUvbq0=";
+    };
+    x86_64-darwin-310 = {
+      name = "torchvision-0.12.0-cp310-cp310-macosx_10_9_x86_64.whl";
+      url = "https://download.pytorch.org/whl/torchvision-0.12.0-cp310-cp310-macosx_10_9_x86_64.whl";
+      hash = "sha256-aTZW5nkLarIeSm6H6BwpgrrZ5FW16yThS7ZyOC7GEw8=";
+    };
+    aarch64-darwin-38 = {
+      name = "torchvision-0.12.0-cp38-cp38-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/torchvision-0.12.0-cp38-cp38-macosx_11_0_arm64.whl";
+      hash = "sha256-n0JCD38LKc09YXdt8xV4JyV6DPFrLAJ3bcFslquxJW0=";
+    };
+    aarch64-darwin-39 = {
+      name = "torchvision-0.12.0-cp39-cp39-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/torchvision-0.12.0-cp39-cp39-macosx_11_0_arm64.whl";
+      hash = "sha256-adgvR7Z7rW3cu4eDO6WVCmwnG6l7quTAlVYQBxvwNPU=";
+    };
+    aarch64-darwin-310 = {
+      name = "torchvision-0.12.0-cp310-cp310-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/torchvision-0.12.0-cp310-cp310-macosx_11_0_arm64.whl";
+      hash = "sha256-oL5FAcoLobGVZEySQ/SaHEmiblKn83kkxCOdC/XsvY0=";
     };
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/torchvision/prefetch.sh b/nixpkgs/pkgs/development/python-modules/torchvision/prefetch.sh
index 686d1b3e6200..5f38bce8d8b3 100755
--- a/nixpkgs/pkgs/development/python-modules/torchvision/prefetch.sh
+++ b/nixpkgs/pkgs/development/python-modules/torchvision/prefetch.sh
@@ -5,12 +5,21 @@ set -eou pipefail
 
 version=$1
 
-bucket="https://download.pytorch.org/whl/cu113"
+linux_bucket="https://download.pytorch.org/whl/cu113"
+darwin_bucket="https://download.pytorch.org/whl"
 
 url_and_key_list=(
-  "x86_64-linux-37 $bucket/torchvision-${version}%2Bcu113-cp37-cp37m-linux_x86_64.whl torchvision-${version}-cp37-cp37m-linux_x86_64.whl"
-  "x86_64-linux-38 $bucket/torchvision-${version}%2Bcu113-cp38-cp38-linux_x86_64.whl torchvision-${version}-cp38-cp38-linux_x86_64.whl"
-  "x86_64-linux-39 $bucket/torchvision-${version}%2Bcu113-cp39-cp39-linux_x86_64.whl torchvision-${version}-cp39-cp39-linux_x86_64.whl"
+  "x86_64-linux-37 $linux_bucket/torchvision-${version}%2Bcu113-cp37-cp37m-linux_x86_64.whl torchvision-${version}-cp37-cp37m-linux_x86_64.whl"
+  "x86_64-linux-38 $linux_bucket/torchvision-${version}%2Bcu113-cp38-cp38-linux_x86_64.whl torchvision-${version}-cp38-cp38-linux_x86_64.whl"
+  "x86_64-linux-39 $linux_bucket/torchvision-${version}%2Bcu113-cp39-cp39-linux_x86_64.whl torchvision-${version}-cp39-cp39-linux_x86_64.whl"
+  "x86_64-linux-310 $linux_bucket/torchvision-${version}%2Bcu113-cp310-cp310-linux_x86_64.whl torchvision-${version}-cp310-cp310-linux_x86_64.whl"
+  "x86_64-darwin-37 $darwin_bucket/torchvision-${version}-cp37-cp37m-macosx_10_9_x86_64.whl torchvision-${version}-cp37-cp37m-macosx_10_9_x86_64.whl"
+  "x86_64-darwin-38 $darwin_bucket/torchvision-${version}-cp38-cp38-macosx_10_9_x86_64.whl torchvision-${version}-cp38-cp38-macosx_10_9_x86_64.whl"
+  "x86_64-darwin-39 $darwin_bucket/torchvision-${version}-cp39-cp39-macosx_10_9_x86_64.whl torchvision-${version}-cp39-cp39-macosx_10_9_x86_64.whl"
+  "x86_64-darwin-310 $darwin_bucket/torchvision-${version}-cp310-cp310-macosx_10_9_x86_64.whl torchvision-${version}-cp310-cp310-macosx_10_9_x86_64.whl"
+  "aarch64-darwin-38 $darwin_bucket/torchvision-${version}-cp38-cp38-macosx_11_0_arm64.whl torchvision-${version}-cp38-cp38-macosx_11_0_arm64.whl"
+  "aarch64-darwin-39 $darwin_bucket/torchvision-${version}-cp39-cp39-macosx_11_0_arm64.whl torchvision-${version}-cp39-cp39-macosx_11_0_arm64.whl"
+  "aarch64-darwin-310 $darwin_bucket/torchvision-${version}-cp310-cp310-macosx_11_0_arm64.whl torchvision-${version}-cp310-cp310-macosx_11_0_arm64.whl"
 )
 
 hashfile="binary-hashes-$version.nix"
diff --git a/nixpkgs/pkgs/development/python-modules/towncrier/default.nix b/nixpkgs/pkgs/development/python-modules/towncrier/default.nix
index 83215f5e0af3..b039277f2019 100644
--- a/nixpkgs/pkgs/development/python-modules/towncrier/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/towncrier/default.nix
@@ -7,6 +7,7 @@
 , pytestCheckHook
 , toml
 , twisted
+, setuptools
 , git # shells out to git
 }:
 
@@ -25,6 +26,7 @@ buildPythonPackage rec {
     incremental
     jinja2
     toml
+    setuptools
   ];
 
   # zope.interface collision
diff --git a/nixpkgs/pkgs/development/python-modules/trimesh/default.nix b/nixpkgs/pkgs/development/python-modules/trimesh/default.nix
index de28f70bca00..54e2da8e4ed1 100644
--- a/nixpkgs/pkgs/development/python-modules/trimesh/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/trimesh/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "trimesh";
-  version = "3.10.2";
+  version = "3.10.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-PcR84la6ZJjtpjg4WGVUkyZJqVT8Ge7vjk90X6gStAo=";
+    sha256 = "sha256-OYor+DQJkkQx8C5E0pmeGaymiYEyKkuKBLp12jkrhS8=";
   };
 
   propagatedBuildInputs = [ numpy ];
diff --git a/nixpkgs/pkgs/development/python-modules/twentemilieu/default.nix b/nixpkgs/pkgs/development/python-modules/twentemilieu/default.nix
index 425b7eddfe99..382e90e14c82 100644
--- a/nixpkgs/pkgs/development/python-modules/twentemilieu/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/twentemilieu/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "twentemilieu";
-  version = "0.5.0";
+  version = "0.6.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "frenck";
     repo = "python-twentemilieu";
     rev = "v${version}";
-    sha256 = "sha256-7HQ0+h8oiyY+TacQdX84K0r994rH0AMZAvZz8PUvQl0=";
+    sha256 = "sha256-UE7fhbSThXmMns1XfUUQqw0wn5/w/x+UncansIBiank=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/twisted/default.nix b/nixpkgs/pkgs/development/python-modules/twisted/default.nix
index b09ccebde198..4641e4af4046 100644
--- a/nixpkgs/pkgs/development/python-modules/twisted/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/twisted/default.nix
@@ -17,12 +17,12 @@
 }:
 buildPythonPackage rec {
   pname = "Twisted";
-  version = "21.7.0";
+  version = "22.2.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "tar.gz";
-    sha256 = "01lh225d7lfnmfx4f4kxwl3963gjc9yg8jfkn1w769v34ia55mic";
+    sha256 = "1wml02jxni8k15984pskks7d6yin81w4d2ac026cpyiqd0gjpwsp";
   };
 
   propagatedBuildInputs = [ zope_interface incremental automat constantly hyperlink pyhamcrest attrs setuptools typing-extensions ];
diff --git a/nixpkgs/pkgs/development/python-modules/txtorcon/default.nix b/nixpkgs/pkgs/development/python-modules/txtorcon/default.nix
index 93c9c95a62ef..c5fc7e1c6a44 100644
--- a/nixpkgs/pkgs/development/python-modules/txtorcon/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/txtorcon/default.nix
@@ -4,7 +4,7 @@
 
 buildPythonPackage rec {
   pname = "txtorcon";
-  version = "21.1.0";
+  version = "22.0.0";
 
   checkInputs = [ pytest mock lsof GeoIP ];
   propagatedBuildInputs = [
@@ -15,7 +15,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "aebf0b9ec6c69a029f6b61fd534e785692e28fdcd2fd003ce3cc132b9393b7d6";
+    sha256 = "sha256-iaG2XjKks2nWfmwWY4f7xGjMXQUidEjSOaXn6XGKoFM=";
   };
 
   # Based on what txtorcon tox.ini will automatically test, allow back as far
diff --git a/nixpkgs/pkgs/development/python-modules/typed-settings/default.nix b/nixpkgs/pkgs/development/python-modules/typed-settings/default.nix
index ea5092cb2ae8..6e903b684077 100644
--- a/nixpkgs/pkgs/development/python-modules/typed-settings/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/typed-settings/default.nix
@@ -12,13 +12,13 @@
 
 buildPythonPackage rec {
   pname = "typed-settings";
-  version = "0.11.1";
+  version = "1.0.0";
   format = "pyproject";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-gcyOeUyRAwU5s+XoQO/yM0tx7QHjDsBeyoe5HRZHtIs=";
+    sha256 = "sha256-c+iOb1F8+9IoRbwpMTdyDfOPW2ZEo4xDAlbzLAxgSfk=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/types-dateutil/default.nix b/nixpkgs/pkgs/development/python-modules/types-dateutil/default.nix
index 4614a92ae64f..4cefc57ed594 100644
--- a/nixpkgs/pkgs/development/python-modules/types-dateutil/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/types-dateutil/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-python-dateutil";
-  version = "2.8.9";
+  version = "2.8.10";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-kPlaa21Pq6NZKH8XosrlEczJ1KvImwGWm9rBGFgVwF0=";
+    sha256 = "sha256-a886rnJC5Xk7r9eyvPtOJV63srMUSs0N8OGC3OWMytM=";
   };
 
   pythonImportsCheck = [ "dateutil-stubs" ];
diff --git a/nixpkgs/pkgs/development/python-modules/types-freezegun/default.nix b/nixpkgs/pkgs/development/python-modules/types-freezegun/default.nix
index 687ddd1b17cc..a288a25fe5c9 100644
--- a/nixpkgs/pkgs/development/python-modules/types-freezegun/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/types-freezegun/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-freezegun";
-  version = "1.1.6";
+  version = "1.1.7";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-XHCkt0RLjH3SgA4AY9b+chqxEgk5kmT6D3evJT3YsU8=";
+    hash = "sha256-6dEyfpjGyqj2XeABje0nQ0fo40GY1ZqppcJK2SZdXl4=";
   };
 
   # Module doesn't have tests
diff --git a/nixpkgs/pkgs/development/python-modules/types-paramiko/default.nix b/nixpkgs/pkgs/development/python-modules/types-paramiko/default.nix
index f43fc5ed507b..5b87e8079a5e 100644
--- a/nixpkgs/pkgs/development/python-modules/types-paramiko/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/types-paramiko/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "types-paramiko";
-  version = "2.8.16";
+  version = "2.8.17";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-HWkCWoa5509G2OHyPFijb5RVORAvE1tQEgL7myxP0SI=";
+    sha256 = "sha256-1toFPkau9cYpvE6lvatWZwhlNerg/P2N6EBpQ7g00uY=";
   };
 
   pythonImportsCheck = [
diff --git a/nixpkgs/pkgs/development/python-modules/types-protobuf/default.nix b/nixpkgs/pkgs/development/python-modules/types-protobuf/default.nix
index 1055a91b675d..5393a1604c9c 100644
--- a/nixpkgs/pkgs/development/python-modules/types-protobuf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/types-protobuf/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-protobuf";
-  version = "3.19.12";
+  version = "3.19.15";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-sCIkc0dHEhmsvi/mjS82I9eIJS6Z6blzWLerkE0ming=";
+    sha256 = "sha256-03HQpbMueMLWhDKaXUSR04Xm6tyrSXs3xBFy3tMoxdk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/types-pytz/default.nix b/nixpkgs/pkgs/development/python-modules/types-pytz/default.nix
index 1fc7dd5f9b61..eecf45c82fa5 100644
--- a/nixpkgs/pkgs/development/python-modules/types-pytz/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/types-pytz/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-pytz";
-  version = "2021.3.5";
+  version = "2021.3.6";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-/vjeI47pUTWVIimiojv7h71j1abIWYEGpGz89I8Gnqg=";
+    sha256 = "sha256-dFR/2Q2NirTx7t86NEp9GG2XSGlziV+BIhpxLh4s2ZM=";
   };
 
   # Modules doesn't have tests
diff --git a/nixpkgs/pkgs/development/python-modules/types-requests/default.nix b/nixpkgs/pkgs/development/python-modules/types-requests/default.nix
index c62190ff5dab..95e263135ecb 100644
--- a/nixpkgs/pkgs/development/python-modules/types-requests/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/types-requests/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-requests";
-  version = "2.27.12";
+  version = "2.27.15";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-/ROC+i4o6shI+u2wMyhAIE8G8MtRcAjjx7goLKU+VtI=";
+    sha256 = "sha256-LTcRg8U1II0syP50c9m0nDRMcHfrcDAutwhjj7hghqg=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/types-setuptools/default.nix b/nixpkgs/pkgs/development/python-modules/types-setuptools/default.nix
index 46fe7da5d1c7..c59baea3c6e3 100644
--- a/nixpkgs/pkgs/development/python-modules/types-setuptools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/types-setuptools/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-setuptools";
-  version = "57.4.10";
+  version = "57.4.11";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-mhNRNnnGQPZhbi2atQ1DHJnKiumEipckP4h8gP1c8pQ=";
+    sha256 = "sha256-Ji90BuDH1wWta7RSa1t2H6UAv5nqt03oWsNZIYfWKTU=";
   };
 
   # Module doesn't have tests
diff --git a/nixpkgs/pkgs/development/python-modules/types-tabulate/default.nix b/nixpkgs/pkgs/development/python-modules/types-tabulate/default.nix
index 9e5c9b628b2d..6d7ceade85c9 100644
--- a/nixpkgs/pkgs/development/python-modules/types-tabulate/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/types-tabulate/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "types-tabulate";
-  version = "0.8.5";
+  version = "0.8.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-A/KDvzhOoSG3tqWK+zj03vl/MHBPyhOg2mhpNrDzkqw=";
+    hash = "sha256-P037eVRJwheO1cIU7FEUwESx7t1xrQoQA7xnDwnYcQo=";
   };
 
   # Module doesn't have tests
diff --git a/nixpkgs/pkgs/development/python-modules/unicorn/default.nix b/nixpkgs/pkgs/development/python-modules/unicorn/default.nix
index 1f2876bdc693..8a568a47c0e4 100644
--- a/nixpkgs/pkgs/development/python-modules/unicorn/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/unicorn/default.nix
@@ -20,7 +20,10 @@ buildPythonPackage rec {
   '';
 
   # needed on non-x86 linux
-  setupPyBuildFlags = lib.optionals stdenv.isLinux [ "--plat-name" "linux" ];
+  setupPyBuildFlags = lib.optionals stdenv.isLinux [ "--plat-name" "linux" ]
+                   # aarch64 only available from MacOS SDK 11 onwards, so fix the version tag.
+                   # otherwise, bdist_wheel may detect "macosx_10_6_arm64" which doesn't make sense.
+                   ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ "--plat-name" "macosx_11_0" ];
 
   propagatedBuildInputs = [
     setuptools
diff --git a/nixpkgs/pkgs/development/python-modules/unicrypto/default.nix b/nixpkgs/pkgs/development/python-modules/unicrypto/default.nix
new file mode 100644
index 000000000000..56a57ccaf0ef
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/unicrypto/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pycryptodomex
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "unicrypto";
+  version = "0.0.5";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-aSQPJgSTNGhh5jlpfi/aJF8UZWx98grm2eaxuzassp4=";
+  };
+
+  propagatedBuildInputs = [
+    pycryptodomex
+  ];
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "unicrypto"
+  ];
+
+  meta = with lib; {
+    description = "Unified interface for cryptographic libraries";
+    homepage = "https://github.com/skelsec/unicrypto";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/urwid/default.nix b/nixpkgs/pkgs/development/python-modules/urwid/default.nix
index 7dcc56d9f6e8..3df7f6703a79 100644
--- a/nixpkgs/pkgs/development/python-modules/urwid/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/urwid/default.nix
@@ -1,8 +1,16 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k, isPy27, glibcLocales }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, isPy3k
+, isPy27
+, glibcLocales
+}:
 
 buildPythonPackage rec {
   pname = "urwid";
   version = "2.1.2";
+  format = "setuptools";
+
   disabled = isPy27;
 
   src = fetchPypi {
@@ -17,13 +25,14 @@ buildPythonPackage rec {
   # tests which assert on strings don't decode results correctly
   doCheck = isPy3k;
 
-  pythonImportsCheck = [ "urwid" ];
+  pythonImportsCheck = [
+    "urwid"
+  ];
 
   meta = with lib; {
     description = "A full-featured console (xterm et al.) user interface library";
-    homepage = "https://excess.org/urwid";
-    repositories.git = "git://github.com/wardi/urwid.git";
-    license = licenses.lgpl21;
+    homepage = "https://urwid.org/";
+    license = licenses.lgpl21Plus;
     maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/vertica-python/default.nix b/nixpkgs/pkgs/development/python-modules/vertica-python/default.nix
index a456c5232d80..cd6186e574f3 100644
--- a/nixpkgs/pkgs/development/python-modules/vertica-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/vertica-python/default.nix
@@ -1,27 +1,52 @@
-{ lib, buildPythonPackage, fetchPypi, future, python-dateutil, six, pytest, mock, parameterized }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, future
+, mock
+, parameterized
+, pytestCheckHook
+, python-dateutil
+, pythonOlder
+, six
+}:
 
 buildPythonPackage rec {
   pname = "vertica-python";
-  version = "1.0.3";
+  version = "1.0.4";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "cfe1794c5ba9fdfbd470a55d82f60c2e08e129828367753bf64199a58a539bc2";
+    hash = "sha256-IpdrR9mDG+8cNnXgSXkmXahSEP4EGnEBJqZk5SNu9pA=";
   };
 
-  propagatedBuildInputs = [ future python-dateutil six ];
+  propagatedBuildInputs = [
+    future
+    python-dateutil
+    six
+  ];
+
+  checkInputs = [
+    mock
+    parameterized
+    pytestCheckHook
+  ];
 
-  checkInputs = [ pytest mock parameterized ];
+  disabledTestPaths = [
+    # Integration tests require an accessible Vertica db
+    "vertica_python/tests/integration_tests"
+  ];
 
-  # Integration tests require an accessible Vertica db
-  checkPhase = ''
-    pytest --ignore vertica_python/tests/integration_tests
-  '';
+  pythonImportsCheck = [
+    "vertica_python"
+  ];
 
   meta = with lib; {
     description = "Native Python client for Vertica database";
     homepage = "https://github.com/vertica/vertica-python";
     license = licenses.asl20;
-    maintainers = [ maintainers.arnoldfarkas ];
+    maintainers = with maintainers; [ arnoldfarkas ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/vt-py/default.nix b/nixpkgs/pkgs/development/python-modules/vt-py/default.nix
index 13eeb86be8db..8228047d9ce9 100644
--- a/nixpkgs/pkgs/development/python-modules/vt-py/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/vt-py/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "vt-py";
-  version = "0.13.2";
+  version = "0.14.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "VirusTotal";
     repo = pname;
     rev = version;
-    sha256 = "sha256-ULzMz81s/C5wjIUtZ+Rz5o1Uump1FV0rTcNW9keERDk=";
+    sha256 = "sha256-901VW56vr6ysMlzspgVbPMLnDIpJRgSEOEQ8ohHp+mc=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/wrf-python/default.nix b/nixpkgs/pkgs/development/python-modules/wrf-python/default.nix
index 94234b2626e2..14e81df65fcd 100644
--- a/nixpkgs/pkgs/development/python-modules/wrf-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/wrf-python/default.nix
@@ -1,14 +1,27 @@
-{lib, fetchFromGitHub, pythonOlder, buildPythonPackage, gfortran, mock, xarray, wrapt, numpy, netcdf4, setuptools}:
+{lib
+, fetchFromGitHub
+, pythonOlder
+, buildPythonPackage
+, gfortran
+, xarray
+, wrapt
+, numpy
+, netcdf4
+, setuptools
+}:
 
 buildPythonPackage rec {
   pname = "wrf-python";
-  version = "1.3.2.6";
+  version = "1.3.3";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "NCAR";
     repo = "wrf-python";
     rev = version;
-    sha256 = "046kflai71r7xrmdw6jn0ifn5656wj9gpnwlgxkx430dgk7zbc2y";
+    hash = "sha256-+v4FEK0FVE0oAIb18XDTOInHKfxXyykb1ngk9Uxwf0c=";
   };
 
   propagatedBuildInputs = [
@@ -24,9 +37,8 @@ buildPythonPackage rec {
 
   checkInputs = [
     netcdf4
-  ] ++ lib.optional (pythonOlder "3.3") mock;
+  ];
 
-  doCheck = true;
   checkPhase = ''
     runHook preCheck
     cd ./test/ci_tests
@@ -34,10 +46,14 @@ buildPythonPackage rec {
     runHook postCheck
   '';
 
-  meta = {
+  pythonImportsCheck = [
+    "wrf"
+  ];
+
+  meta = with lib; {
     description = "WRF postprocessing library for Python";
     homepage = "http://wrf-python.rtfd.org";
-    license = lib.licenses.asl20;
-    maintainers = with lib.maintainers; [ mhaselsteiner ];
+    license = licenses.asl20;
+    maintainers = with maintainers; [ mhaselsteiner ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/xhtml2pdf/default.nix b/nixpkgs/pkgs/development/python-modules/xhtml2pdf/default.nix
index efdb40cd6f87..5a47fc90f67f 100644
--- a/nixpkgs/pkgs/development/python-modules/xhtml2pdf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xhtml2pdf/default.nix
@@ -1,34 +1,53 @@
 { lib
+, arabic-reshaper
 , buildPythonPackage
-, fetchPypi
-, pillow
+, fetchFromGitHub
 , html5lib
-, pypdf2
-, reportlab
-, six
+, pillow
+, pypdf3
+, pytestCheckHook
 , python-bidi
-, arabic-reshaper
-, setuptools
+, pythonOlder
+, reportlab
+, svglib
 }:
 
 buildPythonPackage rec {
   pname = "xhtml2pdf";
-  version = "0.2.5";
+  version = "0.2.6";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-EyIERvAC98LqPTMCdwWqTkm1RiMhikscL0tnMZUHIT8=";
+  };
 
   propagatedBuildInputs = [
-    pillow html5lib pypdf2 reportlab six
-    setuptools python-bidi arabic-reshaper
+    arabic-reshaper
+    html5lib
+    pillow
+    pypdf3
+    python-bidi
+    reportlab
+    svglib
   ];
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "6797e974fac66f0efbe927c1539a2756ca4fe8777eaa5882bac132fc76b39421";
-  };
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "xhtml2pdf"
+  ];
 
   meta = with lib; {
     description = "A PDF generator using HTML and CSS";
     homepage = "https://github.com/xhtml2pdf/xhtml2pdf";
     license = licenses.asl20;
+    maintainers = with maintainers; [ ];
   };
-
 }
diff --git a/nixpkgs/pkgs/development/python-modules/xmlschema/default.nix b/nixpkgs/pkgs/development/python-modules/xmlschema/default.nix
index 1687b113b42f..8616463915e6 100644
--- a/nixpkgs/pkgs/development/python-modules/xmlschema/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xmlschema/default.nix
@@ -8,7 +8,7 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.9.2";
+  version = "1.10.0";
   pname = "xmlschema";
 
   disabled = pythonOlder "3.6";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "sissaschool";
     repo = "xmlschema";
     rev = "v${version}";
-    sha256 = "1d18x150g0jz3nw5al5dygizwkjgzdnmd5kf46v8ribfz48iirr6";
+    sha256 = "sha256-er6+/2fZTw+CDIwCGqTNoXi7KJ3XOsbcWYaH8A2SSgo=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/yalexs/default.nix b/nixpkgs/pkgs/development/python-modules/yalexs/default.nix
index 22440766fd03..2eb38dd0784e 100644
--- a/nixpkgs/pkgs/development/python-modules/yalexs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/yalexs/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "yalexs";
-  version = "1.1.22";
+  version = "1.1.23";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "bdraco";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-qtJSGvvYcdGYUUHnRnKe+z+twFqLGAn1Zl47F4CGnvc=";
+    sha256 = "sha256-CnAVkwCOADBNY0cUvq9Dt6JR+fIr4LiZVMzJIIFqzG0=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/yamale/default.nix b/nixpkgs/pkgs/development/python-modules/yamale/default.nix
index 7444d8d24ac5..5cd60f02b589 100644
--- a/nixpkgs/pkgs/development/python-modules/yamale/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/yamale/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "yamale";
-  version = "4.0.3";
+  version = "4.0.4";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "23andMe";
     repo = pname;
     rev = version;
-    sha256 = "sha256-EkCKUSPRrj3g2AY17tquBDxf+nWfpdnILu5AS/2SsLo=";
+    sha256 = "sha256-1GFvgfy3MDsJGKSEm0yaQoLM7VqIS2wphw16trNTUOc=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/youtube-search-python/default.nix b/nixpkgs/pkgs/development/python-modules/youtube-search-python/default.nix
index f7298f4b8c95..6795ba581273 100644
--- a/nixpkgs/pkgs/development/python-modules/youtube-search-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/youtube-search-python/default.nix
@@ -1,27 +1,37 @@
-{ lib, buildPythonPackage, pythonOlder, fetchPypi, httpx }:
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchPypi
+, httpx
+}:
 
 buildPythonPackage rec {
   pname = "youtube-search-python";
-  version = "1.6.2";
+  version = "1.6.3";
+  format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-PeWi1eygUSgUXZ68bUJ44IoffNDme06JNR9ns6njqMU=";
+    hash = "sha256-zAza1XMKLIMZFFS0v/4ATqh6j7aEB2Y+eliE/hNPORw=";
   };
 
-  propagatedBuildInputs = [ httpx ];
+  propagatedBuildInputs = [
+    httpx
+  ];
 
-  pythonImportsCheck = [ "youtubesearchpython" ];
+  pythonImportsCheck = [
+    "youtubesearchpython"
+  ];
 
-  # project has no tests
+  # Project has no tests
   doCheck = false;
 
   meta = with lib; {
-    description = "Search for YouTube videos, channels & playlists & get video information using link WITHOUT YouTube Data API v3";
+    description = "Search for YouTube videos, channels & playlists & get video information using link without YouTube Data API";
     homepage = "https://github.com/alexmercerind/youtube-search-python";
     license = licenses.mit;
-    maintainers = [ maintainers.marsam ];
+    maintainers = with maintainers; [ marsam ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/zipstream-ng/default.nix b/nixpkgs/pkgs/development/python-modules/zipstream-ng/default.nix
new file mode 100644
index 000000000000..b1f620557bfa
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/zipstream-ng/default.nix
@@ -0,0 +1,38 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "zipstream-ng";
+  version = "1.3.4";
+
+  disabled = pythonOlder "3.7";
+  src = fetchFromGitHub {
+    owner = "pR0Ps";
+    repo = "zipstream-ng";
+    rev = "v${version}";
+    sha256 = "NTsnGCddGDUxdHbEoM2ew756psboex3sb6MkYKtaSjQ=";
+  };
+
+  pythonImportsCheck = [
+    "zipstream"
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Library to generate streamable zip files";
+    longDescription = ''
+      A modern and easy to use streamable zip file generator. It can package and stream many files
+      and folders on the fly without needing temporary files or excessive memory
+    '';
+    homepage = "https://github.com/pR0Ps/zipstream-ng";
+    license = licenses.lgpl3Only;
+    maintainers = with maintainers; [ gador ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/zstandard/default.nix b/nixpkgs/pkgs/development/python-modules/zstandard/default.nix
index 856ca0ee0249..5c0536166aab 100755
--- a/nixpkgs/pkgs/development/python-modules/zstandard/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zstandard/default.nix
@@ -3,27 +3,41 @@
 , fetchPypi
 , cffi
 , hypothesis
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "zstandard";
   version = "0.17.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "fa9194cb91441df7242aa3ddc4cb184be38876cb10dd973674887f334bafbfb6";
   };
 
-  propagatedNativeBuildInputs = [ cffi ];
+  propagatedNativeBuildInputs = [
+    cffi
+  ];
+
+  propagatedBuildInputs = [
+    cffi
+  ];
 
-  propagatedBuildInputs = [ cffi ];
+  checkInputs = [
+    hypothesis
+  ];
 
-  checkInputs = [ hypothesis ];
+  pythonImportsCheck = [
+    "zstandard"
+  ];
 
   meta = with lib; {
     description = "zstandard bindings for Python";
     homepage = "https://github.com/indygreg/python-zstandard";
     license = licenses.bsdOriginal;
-    maintainers = [ maintainers.arnoldfarkas ];
+    maintainers = with maintainers; [ arnoldfarkas ];
   };
 }
diff --git a/nixpkgs/pkgs/development/quickemu/default.nix b/nixpkgs/pkgs/development/quickemu/default.nix
index aa9906c77ecd..7aa5b1602c38 100644
--- a/nixpkgs/pkgs/development/quickemu/default.nix
+++ b/nixpkgs/pkgs/development/quickemu/default.nix
@@ -43,17 +43,16 @@ in
 
 stdenv.mkDerivation rec {
   pname = "quickemu";
-  version = "3.11";
+  version = "3.14";
 
   src = fetchFromGitHub {
     owner = "quickemu-project";
     repo = "quickemu";
     rev = version;
-    sha256 = "1xwf9vwbr57wmyxfcqzl1jnmfx3ffh7sfqf0zcdq41wqkm8s106n";
+    sha256="sha256-7zaXazGzb36Nwk/meJ3lGD+l+fylWZYnhttDL1CXN9s=";
   };
 
   patches = [
-    ./efi_vars_ensure_writable.patch
     ./input_overrides.patch
   ];
 
diff --git a/nixpkgs/pkgs/development/quickemu/efi_vars_ensure_writable.patch b/nixpkgs/pkgs/development/quickemu/efi_vars_ensure_writable.patch
deleted file mode 100644
index e146d0ba7682..000000000000
--- a/nixpkgs/pkgs/development/quickemu/efi_vars_ensure_writable.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/quickemu b/quickemu
-index a9a60a5..1a932ac 100755
---- a/quickemu
-+++ b/quickemu
-@@ -197,7 +197,7 @@ function efi_vars() {
- 
-   if [ ! -e "${VARS_OUT}" ]; then
-     if [ -e "${VARS_IN}" ]; then
--      cp "${VARS_IN}" "${VARS_OUT}"
-+      cp "${VARS_IN}" "${VARS_OUT}" && chmod +w "${VARS_OUT}"
-     else
-       echo "ERROR! ${VARS_IN} was not found. Please install edk2."
-       exit 1
diff --git a/nixpkgs/pkgs/development/quickemu/input_overrides.patch b/nixpkgs/pkgs/development/quickemu/input_overrides.patch
index 228624edcf1b..42e4d2e18294 100644
--- a/nixpkgs/pkgs/development/quickemu/input_overrides.patch
+++ b/nixpkgs/pkgs/development/quickemu/input_overrides.patch
@@ -1,20 +1,29 @@
 diff --git a/quickemu b/quickemu
-index 1a932ac..ab2f752 100755
+index 24e1007..39cd5e4 100755
 --- a/quickemu
 +++ b/quickemu
+@@ -196,7 +196,7 @@ function efi_vars() {
+ 
+   if [ ! -e "${VARS_OUT}" ]; then
+     if [ -e "${VARS_IN}" ]; then
+-      cp "${VARS_IN}" "${VARS_OUT}"
++      cp "${VARS_IN}" "${VARS_OUT}" && chmod +w "${VARS_OUT}"
+     else
+       echo "ERROR! ${VARS_IN} was not found. Please install edk2."
+       exit 1
 @@ -383,7 +383,10 @@ function vm_boot() {
      # https://bugzilla.redhat.com/show_bug.cgi?id=1929357#c5
      case ${secureboot} in
        on)
--        if [ -e "/usr/share/OVMF/OVMF_CODE_4M.secboot.fd" ]; then
+-         if [ -e "/usr/share/OVMF/OVMF_CODE_4M.secboot.fd" ]; then
 +        if [[ ${ENV_EFI_CODE_SECURE} && ${ENV_EFI_CODE_SECURE-x} ]] && [[ ${ENV_EFI_VARS_SECURE} && ${ENV_EFI_VARS_SECURE-x} ]]; then
-+          EFI_CODE="${ENV_EFI_CODE_SECURE}"
-+          efi_vars "${ENV_EFI_VARS_SECURE}" "${EFI_VARS}"
++           EFI_CODE="${ENV_EFI_CODE_SECURE}"
++           efi_vars "${ENV_EFI_VARS_SECURE}" "${EFI_VARS}"
 +        elif [ -e "/usr/share/OVMF/OVMF_CODE_4M.secboot.fd" ]; then
            EFI_CODE="/usr/share/OVMF/OVMF_CODE_4M.secboot.fd"
            efi_vars "/usr/share/OVMF/OVMF_VARS_4M.fd" "${EFI_VARS}"
          elif [ -e "/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd" ]; then
-@@ -402,7 +405,10 @@ function vm_boot() {
+@@ -408,7 +411,10 @@ function vm_boot() {
          fi
          ;;
        *)
diff --git a/nixpkgs/pkgs/development/r-modules/bioc-experiment-packages.nix b/nixpkgs/pkgs/development/r-modules/bioc-experiment-packages.nix
index 46c8c0e069f5..5974766e04bd 100644
--- a/nixpkgs/pkgs/development/r-modules/bioc-experiment-packages.nix
+++ b/nixpkgs/pkgs/development/r-modules/bioc-experiment-packages.nix
@@ -107,7 +107,7 @@ in with self; {
   KOdata = derive2 { name="KOdata"; version="1.20.0"; sha256="11ar6bp6j615hcqa8w0dha1d57r8kxwjr0aikmxl3j058yrv2p6m"; depends=[]; };
   LRcellTypeMarkers = derive2 { name="LRcellTypeMarkers"; version="1.2.0"; sha256="0c7nwyskm5kx2z56vr8wb1c8ll8z3z7ywi52s4d1nmhmj9dyzmb3"; depends=[ExperimentHub]; };
   LiebermanAidenHiC2009 = derive2 { name="LiebermanAidenHiC2009"; version="0.32.0"; sha256="1kgydp7x3kdhh5kzwrh9fjc9zfw1jx4bbkgxc46vh1dwz8kbkbch"; depends=[IRanges KernSmooth]; };
-  ListerEtAlBSseq = derive2 { name="ListerEtAlBSseq"; version="1.26.0"; sha256="0ag820shlpknc2zbqiwafisbg4hr7paqv3g26ghrvyvbkmqmj1w8"; depends=[methylPipe]; };
+  ListerEtAlBSseq = derive2 { name="ListerEtAlBSseq"; version="1.26.0"; sha256="0ag820shlpknc2zbqiwafisbg4hr7paqv3g26ghrvyvbkmqmj1w8"; depends=[]; };
   LungCancerACvsSCCGEO = derive2 { name="LungCancerACvsSCCGEO"; version="1.30.0"; sha256="0sfadyna4njvz1dn0z3vhvyykl864534qr200swj4cmsny52bsdh"; depends=[]; };
   LungCancerLines = derive2 { name="LungCancerLines"; version="0.32.0"; sha256="1clsdv7ryk46i7640sj77xnwqqw32aa9gy9g8hvhg4sliiqmgvjw"; depends=[Rsamtools]; };
   M3DExampleData = derive2 { name="M3DExampleData"; version="1.20.0"; sha256="0qnbd53lhfq78k2v9qpkwpcf75mg9asf6765pqq2f0ivi2a4jrjs"; depends=[]; };
diff --git a/nixpkgs/pkgs/development/r-modules/bioc-packages.nix b/nixpkgs/pkgs/development/r-modules/bioc-packages.nix
index 5358d3e58049..965b3d504710 100644
--- a/nixpkgs/pkgs/development/r-modules/bioc-packages.nix
+++ b/nixpkgs/pkgs/development/r-modules/bioc-packages.nix
@@ -42,7 +42,7 @@ in with self; {
   AllelicImbalance = derive2 { name="AllelicImbalance"; version="1.32.0"; sha256="1s6arjd0nxgxyqy7vhqcb78k0ss7vwrhv41pm346hs1nyr5dkzaq"; depends=[AnnotationDbi BiocGenerics Biostrings BSgenome GenomeInfoDb GenomicAlignments GenomicFeatures GenomicRanges gridExtra Gviz IRanges lattice latticeExtra nlme Rsamtools S4Vectors seqinr SummarizedExperiment VariantAnnotation]; };
   AlphaBeta = derive2 { name="AlphaBeta"; version="1.8.0"; sha256="0ya3dqvdf8iyd5bscc9lc476vkc7kamiqgjvxhxl4ay5j4vn02nr"; depends=[BiocParallel data_table dplyr expm ggplot2 gtools igraph optimx plotly stringr]; };
   AlpsNMR = derive2 { name="AlpsNMR"; version="3.4.0"; sha256="0h8y9hi97zbv3qzjskxh81qjarmwx2w790kpspljgxa214f58fzv"; depends=[assertthat baseline BiocParallel dplyr fs furrr future GGally ggplot2 ggrepel glue htmltools magrittr matrixStats mixOmics pcaPP plyr purrr readxl reshape2 rlang rmarkdown S4Vectors signal speaq stringr SummarizedExperiment tibble tidyr tidyselect vctrs writexl zip]; };
-  AnVIL = derive2 { name="AnVIL"; version="1.6.2"; sha256="0qiadpn9pwhm7dqmsycpiaqvwf5il4gy2058hl5mnm954bj9hna4"; depends=[BiocManager dplyr futile_logger httr jsonlite rapiclient rlang tibble tidyr tidyselect]; };
+  AnVIL = derive2 { name="AnVIL"; version="1.6.5"; sha256="0ipf3916xwmg22kmc0qk7x8sw3bb6579cffmdwsizr1mw84cdjwd"; depends=[BiocManager dplyr futile_logger httr jsonlite rapiclient rlang tibble tidyr tidyselect]; };
   AnVILBilling = derive2 { name="AnVILBilling"; version="1.4.0"; sha256="0pg5r6qn18i91z2ixapdkranaacv9z8ljmdb33vdn2dqwv2w85b1"; depends=[bigrquery DBI dplyr DT ggplot2 lubridate magrittr plotly shiny shinytoastr]; };
   AnVILPublish = derive2 { name="AnVILPublish"; version="1.4.1"; sha256="0jvh22kz9mg4r49mbzvbvzbn58lzj5mvk7qb4pizn4sd8xsbvmyq"; depends=[AnVIL httr jsonlite readr rmarkdown whisker yaml]; };
   Anaquin = derive2 { name="Anaquin"; version="2.18.0"; sha256="0b9clpqy2jfhign30nab1369xswrkmqm6dx14mf6wjrvcl9xpm2s"; depends=[DESeq2 ggplot2 knitr locfit plyr qvalue ROCR]; };
@@ -50,12 +50,11 @@ in with self; {
   AnnotationDbi = derive2 { name="AnnotationDbi"; version="1.56.2"; sha256="01zwq14msbbwzxv8rgpmyr74ymvhq0vnmxkxxwd886iac5vjlgi8"; depends=[Biobase BiocGenerics DBI IRanges KEGGREST RSQLite S4Vectors]; };
   AnnotationFilter = derive2 { name="AnnotationFilter"; version="1.18.0"; sha256="15fp1228yb06jm5cblvhw3qv9mlpbjfggaz2nvi3p46mby1vs64w"; depends=[GenomicRanges lazyeval]; };
   AnnotationForge = derive2 { name="AnnotationForge"; version="1.36.0"; sha256="02wvni5q560idi6677g5f4md73z4qzjl5yycxv5dbvgbl2picisz"; depends=[AnnotationDbi Biobase BiocGenerics DBI RCurl RSQLite S4Vectors XML]; };
-  AnnotationHub = derive2 { name="AnnotationHub"; version="3.2.1"; sha256="08d9hfjj79c1rrmq3gf132zfx0gld5q0jwmqgghfvmn8zrppz8sf"; depends=[AnnotationDbi BiocFileCache BiocGenerics BiocManager BiocVersion curl dplyr httr interactiveDisplayBase rappdirs RSQLite S4Vectors yaml]; };
+  AnnotationHub = derive2 { name="AnnotationHub"; version="3.2.2"; sha256="08dk4h07gpi3rk9s80wrbx2ww2chj688qzbwlx8n4dz788lqbfz8"; depends=[AnnotationDbi BiocFileCache BiocGenerics BiocManager BiocVersion curl dplyr httr interactiveDisplayBase rappdirs RSQLite S4Vectors yaml]; };
   AnnotationHubData = derive2 { name="AnnotationHubData"; version="1.24.2"; sha256="00n195xbja01r64mjsjvk3xpwx9mwj5x8n4l810jspf4cdjv5cbl"; depends=[AnnotationDbi AnnotationForge AnnotationHub Biobase BiocCheck BiocGenerics BiocManager biocViews Biostrings DBI futile_logger GenomeInfoDb GenomicFeatures GenomicRanges graph IRanges jsonlite OrganismDbi RCurl Rsamtools RSQLite rtracklayer S4Vectors XML]; };
   ArrayExpress = derive2 { name="ArrayExpress"; version="1.54.0"; sha256="1rfvycrjlw0x1sqjrmiyf8i7yjiwjqf8x83i7pfg78yg9k5sh9vi"; depends=[Biobase limma oligo XML]; };
   ArrayExpressHTS = derive2 { name="ArrayExpressHTS"; version="1.44.0"; sha256="1mjnddy05y06bn25xcjdx8kz538z3k4gvyqrb1lg4z8593xaw40i"; depends=[Biobase BiocGenerics biomaRt Biostrings bitops edgeR GenomicRanges Hmisc IRanges R2HTML RColorBrewer Rhtslib rJava Rsamtools sampling sendmailR ShortRead snow svMisc XML]; };
   AssessORF = derive2 { name="AssessORF"; version="1.12.0"; sha256="0rn2ijnpa8a6w2zv3cvm1s5bhcvzmb4xk18d96wjc60gxk51i5wy"; depends=[Biostrings DECIPHER GenomicRanges IRanges]; };
-  Autotuner = derive2 { name="Autotuner"; version="1.7.0"; sha256="0k07gs6bnxs0894iqi1lhk96mifjcdf68bv4q9fjv50nzqpzqd8l"; depends=[assertthat Biobase cluster entropy MSnbase mzR RColorBrewer scales]; };
   BAC = derive2 { name="BAC"; version="1.54.0"; sha256="1xplpx3r34l3h43a4zgv9s5z4sw61vlq828gqwc7f0i73a2jbck3"; depends=[]; };
   BADER = derive2 { name="BADER"; version="1.32.0"; sha256="1ngi4nrw0gfz7k4x1c5harl6a9bxfv8m7f1smxs5awnwr0jnv9pa"; depends=[]; };
   BAGS = derive2 { name="BAGS"; version="2.34.0"; sha256="0lkg4c4ay20bhas9lr6aifxhw0yhh999v6d1kbbplw4hhd1b93ha"; depends=[Biobase breastCancerVDX]; };
@@ -92,7 +91,7 @@ in with self; {
   BgeeDB = derive2 { name="BgeeDB"; version="2.20.0"; sha256="0pjymal01sjl5dc37g66wykgxnksarlbvwnbvhg7w0i7y92zavqk"; depends=[Biobase curl data_table digest dplyr graph R_utils RCurl RSQLite tidyr topGO]; };
   BiFET = derive2 { name="BiFET"; version="1.14.0"; sha256="0vidypvphnj76g4ra5ijrgqx2dnzw0fmvdvz35gsqswrr3k20jkk"; depends=[GenomicRanges poibin]; };
   BiGGR = derive2 { name="BiGGR"; version="1.30.0"; sha256="1g01666wwznk148776s4vr1hfi3dfl448dhgk4d1qy2wv6sxh9kr"; depends=[hyperdraw hypergraph LIM limSolve rsbml stringr]; };
-  BiRewire = derive2 { name="BiRewire"; version="3.26.0"; sha256="0ki4rcwjgbixzy5q9s30ajx5zhpl18q50znrb60fchvl4hj9h93w"; depends=[igraph Matrix slam tsne]; };
+  BiRewire = derive2 { name="BiRewire"; version="3.26.2"; sha256="114qljg6yqx55yi0w5nmhdz9260dzkj73bjgqh8w9kpfvcb0439l"; depends=[igraph Matrix slam tsne]; };
   BiSeq = derive2 { name="BiSeq"; version="1.34.0"; sha256="05namdzj196rzjg3wqvamj3xpn039dbfhfpmc6p8ifxn9c9dnd3c"; depends=[betareg Biobase BiocGenerics Formula GenomeInfoDb GenomicRanges globaltest IRanges lokern rtracklayer S4Vectors SummarizedExperiment]; };
   BicARE = derive2 { name="BicARE"; version="1.52.0"; sha256="1g8vrsc05cysb36gsw8sfmr6dgbh4aji37vcq9qwkmkv3jgvnlf6"; depends=[Biobase GSEABase multtest]; };
   BindingSiteFinder = derive2 { name="BindingSiteFinder"; version="1.0.0"; sha256="0mvl2mh2px315ilfmf9ax5qjz3282l56qm1a0v142bb7cxld13v7"; depends=[GenomicRanges ggforce ggplot2 matrixStats rtracklayer S4Vectors tidyr]; };
@@ -102,7 +101,7 @@ in with self; {
   BioNERO = derive2 { name="BioNERO"; version="1.2.0"; sha256="0ddrzv1g46hvm52dzrcj5nbyyw9a16cqk8zg20wnkrh3qw1h4d9p"; depends=[BiocParallel ComplexHeatmap DESeq2 dynamicTreeCut GENIE3 ggnetwork ggnewscale ggplot2 ggpubr igraph intergraph matrixStats minet NetRep networkD3 RColorBrewer reshape2 SummarizedExperiment sva WGCNA]; };
   BioNet = derive2 { name="BioNet"; version="1.54.0"; sha256="05rj14jn4gn0hfn57amf19b8fqwkd3y2ji3mg7m1yg1w7n4qxqsg"; depends=[AnnotationDbi Biobase graph igraph RBGL]; };
   BioNetStat = derive2 { name="BioNetStat"; version="1.14.0"; sha256="13br8x4809hrr4ibz6iy5qjza9j6cazmkpvfikvw6bs588csxwf8"; depends=[BiocParallel DT ggplot2 Hmisc igraph knitr markdown pathview pheatmap plyr psych RColorBrewer RJSONIO rmarkdown shiny shinyBS whisker yaml]; };
-  BioPlex = derive2 { name="BioPlex"; version="1.0.1"; sha256="0fzvr72rjhrq9aldzb2hs61x6f1hbmv1a6gcblmzj9f11hny8va1"; depends=[BiocFileCache GEOquery graph SummarizedExperiment]; };
+  BioPlex = derive2 { name="BioPlex"; version="1.0.2"; sha256="0n9hz10nak8vws90g0xl21xcrj2gy769ra6xwjx6nj19giyk4749"; depends=[BiocFileCache GEOquery graph SummarizedExperiment]; };
   BioQC = derive2 { name="BioQC"; version="1.22.0"; sha256="190336qk0plg79gzvfn6wfplsi8nq0nj8508g7m0w3z6bdgwy407"; depends=[Biobase edgeR Rcpp]; };
   BioTIP = derive2 { name="BioTIP"; version="1.8.0"; sha256="0xmy5c4i9gf6d04gara6lbnnldqmzjaascb2pd2ih60jw2mvl4ys"; depends=[cluster GenomicRanges Hmisc igraph MASS psych stringr]; };
   Biobase = derive2 { name="Biobase"; version="2.54.0"; sha256="0kar2kgaayp5l7xv9zcxj61l01m8jlwnppql6qf01wsz36dacgww"; depends=[BiocGenerics]; };
@@ -147,7 +146,6 @@ in with self; {
   CGHcall = derive2 { name="CGHcall"; version="2.56.0"; sha256="1r4y8zakgmdbnpwgp14kwh4iwqgqcmjq2yg4nc7j37p09bw1c8zr"; depends=[Biobase CGHbase DNAcopy impute snowfall]; };
   CGHnormaliter = derive2 { name="CGHnormaliter"; version="1.48.0"; sha256="1zz4iaxyf5b03xalq58idnkrwcpsvh8zlz6hlxz487caw7c8xx6p"; depends=[Biobase CGHbase CGHcall]; };
   CGHregions = derive2 { name="CGHregions"; version="1.52.0"; sha256="1g337b6fjmbbkpn9pw20z6bvacrlfh582n6lss3qw0s6x6w5cygs"; depends=[Biobase CGHbase]; };
-  CHETAH = derive2 { name="CHETAH"; version="1.9.0"; sha256="1nfz8zpkrghfh942cr8xwvrj0d47h1nbf3nv534mp7rii38v07j3"; depends=[bioDist corrplot cowplot dendextend ggplot2 gplots pheatmap plotly reshape2 S4Vectors shiny SingleCellExperiment SummarizedExperiment]; };
   CHRONOS = derive2 { name="CHRONOS"; version="1.22.0"; sha256="18fdvbdbl0rms1fs27yi6lvf3xnn3pjfm1qngaaz4c06v207mg9w"; depends=[biomaRt circlize doParallel foreach graph igraph openxlsx RBGL RCurl rJava XML]; };
   CIMICE = derive2 { name="CIMICE"; version="1.2.0"; sha256="0d2sglrp8ansh8nibbqyg3pvhaaw33q5mzci382pwky05mpy9sjk"; depends=[assertthat dplyr ggcorrplot ggplot2 ggraph glue igraph maftools Matrix networkD3 purrr relations tidyr visNetwork]; };
   CINdex = derive2 { name="CINdex"; version="1.22.0"; sha256="0a73rdhmsprbbq69yvnnhgp86wic255yxrj82k1i1k62f3bsi74c"; depends=[bitops dplyr GenomeInfoDb GenomicRanges gplots gridExtra IRanges png S4Vectors som stringr]; };
@@ -160,7 +158,7 @@ in with self; {
   CNORode = derive2 { name="CNORode"; version="1.36.0"; sha256="11l8lw4i8n71ki2fl218wpf7imsxpamxx9abj2axwi467cziq55x"; depends=[CellNOptR genalg]; };
   CNTools = derive2 { name="CNTools"; version="1.50.0"; sha256="198mvxz8zm32mvnq825iivzc8z1ff187g40kb867ck4svn1mysf6"; depends=[genefilter]; };
   CNVPanelizer = derive2 { name="CNVPanelizer"; version="1.26.0"; sha256="0v4abknw96zrvir2g676kh81l5jhbxwb10xymzcn1bk3l9vknnpm"; depends=[BiocGenerics exomeCopy foreach GenomeInfoDb GenomicRanges ggplot2 gplots IRanges NOISeq openxlsx plyr reshape2 Rsamtools S4Vectors shiny shinyFiles shinyjs stringr testthat]; };
-  CNVRanger = derive2 { name="CNVRanger"; version="1.10.0"; sha256="0pqzs7268c17nh2i6hmg630wfpks2ixyp122iakyl0hxvxd0v2w7"; depends=[BiocGenerics BiocParallel data_table edgeR GDSArray gdsfmt GenomeInfoDb GenomicRanges IRanges lattice limma plyr qqman RaggedExperiment rappdirs reshape2 S4Vectors SNPRelate SummarizedExperiment]; };
+  CNVRanger = derive2 { name="CNVRanger"; version="1.10.3"; sha256="0z7gps8nv7diphgk3nbc2gcdhjd7mbqcmjhassa9vg3nh9848m0a"; depends=[BiocGenerics BiocParallel data_table edgeR GDSArray gdsfmt GenomeInfoDb GenomicRanges IRanges lattice limma plyr qqman RaggedExperiment rappdirs reshape2 S4Vectors SNPRelate SummarizedExperiment]; };
   CNVfilteR = derive2 { name="CNVfilteR"; version="1.8.0"; sha256="0ap1k0aikfynwbynwd19l2nkj48d9h86smm7vrrfr1chrmglv84k"; depends=[assertthat Biostrings CopyNumberPlots GenomeInfoDb GenomicRanges IRanges karyoploteR pracma regioneR Rsamtools SummarizedExperiment VariantAnnotation]; };
   CNVgears = derive2 { name="CNVgears"; version="1.2.0"; sha256="1vswa2vyxknykims3cgwhbx9v0cw5978639bpgf7d7mwk63h6k6c"; depends=[data_table ggplot2]; };
   CNViz = derive2 { name="CNViz"; version="1.2.0"; sha256="08273c1jwrxcg4xyh6z7aqsy0sgk4ds8jzg8d8dxwscpfjjdbdcp"; depends=[CopyNumberPlots dplyr DT GenomicRanges karyoploteR magrittr plotly scales shiny]; };
@@ -230,7 +228,6 @@ in with self; {
   CopywriteR = derive2 { name="CopywriteR"; version="2.26.0"; sha256="0xm5gjzi4r1xzyn7r669blqxhyhmbk9rh9k2gn696j14hbhc1hcy"; depends=[BiocParallel chipseq CopyhelpeR data_table DNAcopy futile_logger GenomeInfoDb GenomicAlignments GenomicRanges gtools IRanges matrixStats Rsamtools S4Vectors]; };
   CoreGx = derive2 { name="CoreGx"; version="1.6.0"; sha256="12825lplihp10wvvg90gkk96vabvycfi32kpbs2garbzcjshqygh"; depends=[Biobase BiocGenerics BiocParallel BumpyMatrix checkmate crayon data_table glue lsa MatrixGenerics MultiAssayExperiment piano rlang S4Vectors SummarizedExperiment]; };
   Cormotif = derive2 { name="Cormotif"; version="1.40.0"; sha256="1dzsnfgrgjgjk9a1jbsjfarcjvxnvswph495lcaiw8fh5mibf9qb"; depends=[affy limma]; };
-  CountClust = derive2 { name="CountClust"; version="1.21.0"; sha256="17px9jkpjwz0j2f5h8xv52wh24ilqvlb6dvczjc36lb7mq4cw3sq"; depends=[cowplot flexmix ggplot2 gtools limma maptpx picante plyr reshape2 slam SQUAREM]; };
   CoverageView = derive2 { name="CoverageView"; version="1.32.0"; sha256="0sb1h5qsk41c9xisq73agqh502wv6p2j1k45s32a4bkdynf696as"; depends=[GenomicAlignments GenomicRanges IRanges Rsamtools rtracklayer S4Vectors]; };
   CrispRVariants = derive2 { name="CrispRVariants"; version="1.22.0"; sha256="0jvrsc0fz8li8v6xigvkq514x0pirnbrp7lgvjqxxj8i3l7y536i"; depends=[AnnotationDbi BiocParallel Biostrings GenomeInfoDb GenomicAlignments GenomicRanges ggplot2 gridExtra IRanges reshape2 Rsamtools S4Vectors]; };
   CyTOFpower = derive2 { name="CyTOFpower"; version="1.0.0"; sha256="1h2dmnkjv62ws7ljixq1nj50hnqk3r70xhzkh159cjkirf9r4xwn"; depends=[CytoGLMM diffcyt dplyr DT ggplot2 magrittr rlang shiny shinyFeedback shinyjs shinyMatrix SummarizedExperiment tibble tidyr]; };
@@ -262,7 +259,7 @@ in with self; {
   DMCHMM = derive2 { name="DMCHMM"; version="1.16.0"; sha256="0r12m3ldbi1h0fdg4hgxfq1f0lrz49a08i7kr6imdspzm8hl2j65"; depends=[BiocParallel calibrate fdrtool GenomicRanges IRanges multcomp rtracklayer S4Vectors SummarizedExperiment]; };
   DMRScan = derive2 { name="DMRScan"; version="1.16.0"; sha256="0iza3yyjmggkxgn24raiwzppf4lvdj1lgq34lpk08mf6p5v0v601"; depends=[GenomeInfoDb GenomicRanges IRanges MASS Matrix mvtnorm RcppRoll]; };
   DMRcaller = derive2 { name="DMRcaller"; version="1.26.0"; sha256="0qn3y2nj0pyy9kqpbv8nwsiypwl6kixxs2yj3bvhkhb5dgqj6p6w"; depends=[betareg GenomicRanges IRanges Rcpp RcppRoll S4Vectors]; };
-  DMRcate = derive2 { name="DMRcate"; version="2.8.4"; sha256="03nh7q8mlpc2ffs5gh3aqvks2wd20zyq9vqhkhxq69xxi53wrbm3"; depends=[bsseq DMRcatedata DSS edgeR ExperimentHub GenomeInfoDb GenomicRanges Gviz IRanges limma minfi missMethyl plyr S4Vectors SummarizedExperiment]; };
+  DMRcate = derive2 { name="DMRcate"; version="2.8.5"; sha256="1346s2z1lj57asil8zmapv5fsgmywsn7q0qdskpfzm05rd4h91ny"; depends=[bsseq DSS edgeR ExperimentHub GenomeInfoDb GenomicRanges Gviz IRanges limma minfi missMethyl plyr S4Vectors SummarizedExperiment]; };
   DMRforPairs = derive2 { name="DMRforPairs"; version="1.30.0"; sha256="1f8b63chg3jrqbf669l2nk3a8wy5rya545zbypgzr2r51s284k7b"; depends=[GenomicRanges Gviz R2HTML]; };
   DNABarcodeCompatibility = derive2 { name="DNABarcodeCompatibility"; version="1.10.0"; sha256="1dj4c8h648ckzrz0k6qrzvfgqz00wj0pdahhp35nlrldcavp90p6"; depends=[DNABarcodes dplyr numbers purrr stringr tidyr]; };
   DNABarcodes = derive2 { name="DNABarcodes"; version="1.24.0"; sha256="07yaz98r18mjny1ilmfnjxcra7xpklnd183pw0kasvsri01ccwxg"; depends=[BH Matrix Rcpp]; };
@@ -285,12 +282,12 @@ in with self; {
   DelayedRandomArray = derive2 { name="DelayedRandomArray"; version="1.2.0"; sha256="1hi9pvxny8nm4akhshicksd04p7vflqa3m38k6kcs50slhgdp5ys"; depends=[BH DelayedArray dqrng Rcpp]; };
   DelayedTensor = derive2 { name="DelayedTensor"; version="1.0.0"; sha256="0yg7r6j7r1sikc4wi6khh3dsbflzpj51sdh41q337lkmlxagwpbb"; depends=[BiocSingular DelayedArray DelayedRandomArray einsum HDF5Array irlba Matrix rTensor]; };
   DepecheR = derive2 { name="DepecheR"; version="1.10.0"; sha256="1500jivij7zdycdd0i0b7mgp44w4z0hqnpzqbq8nhvzzdigic8x9"; depends=[beanplot doSNOW dplyr FNN foreach ggplot2 gmodels gplots MASS matrixStats mixOmics moments Rcpp RcppEigen reshape2 robustbase viridis]; };
-  DiffBind = derive2 { name="DiffBind"; version="3.4.9"; sha256="1fpr96hfi7hy3pzf4rgnmrz2fk3qajwgsy32yqr839vjfsvw532z"; depends=[amap apeglm ashr BiocParallel DESeq2 dplyr GenomicAlignments GenomicRanges ggplot2 ggrepel gplots GreyListChIP IRanges lattice limma locfit RColorBrewer Rcpp Rhtslib Rsamtools S4Vectors SummarizedExperiment systemPipeR]; };
+  DiffBind = derive2 { name="DiffBind"; version="3.4.11"; sha256="1xprj3x3s3yh6fwsdcl4zgfbhn640422x1lhhrmvdr836jr8sxcj"; depends=[amap apeglm ashr BiocParallel DESeq2 dplyr GenomicAlignments GenomicRanges ggplot2 ggrepel gplots GreyListChIP IRanges lattice limma locfit RColorBrewer Rcpp Rhtslib Rsamtools S4Vectors SummarizedExperiment systemPipeR]; };
   DiffLogo = derive2 { name="DiffLogo"; version="2.18.0"; sha256="1axpyjr86a176rgv9wnrk04dv9llgkw9vr7h00scr6jw77wqya4n"; depends=[cba]; };
   Dino = derive2 { name="Dino"; version="1.0.0"; sha256="1k83rhva7bxk1w6qvvdhx0r95p9nbzfdm3m7g6wpyq3qp0ifx5xp"; depends=[BiocParallel BiocSingular Matrix matrixStats S4Vectors scran Seurat SingleCellExperiment SummarizedExperiment]; };
   Director = derive2 { name="Director"; version="1.20.0"; sha256="1f0a8rkpz698c5a41j7ii7ahxxaqn92rhx8sh3q66gpv0br8h44g"; depends=[htmltools]; };
   DirichletMultinomial = derive2 { name="DirichletMultinomial"; version="1.36.0"; sha256="06nallp9jj2vmaa7d18g6hiymjc109szdv8sp51r87n7s38bvyq6"; depends=[BiocGenerics IRanges S4Vectors]; };
-  DiscoRhythm = derive2 { name="DiscoRhythm"; version="1.10.0"; sha256="1cb51c6bmvc1vgxih3sqcalbzhxn1b9ilf1q8j0ijwk7sxsdhy5l"; depends=[BiocGenerics BiocStyle broom data_table dplyr DT ggExtra ggplot2 gridExtra heatmaply kableExtra knitr magick matrixStats matrixTests MetaCycle plotly reshape2 rmarkdown S4Vectors shiny shinyBS shinycssloaders shinydashboard shinyjs SummarizedExperiment UpSetR VennDiagram viridis zip]; };
+  DiscoRhythm = derive2 { name="DiscoRhythm"; version="1.10.1"; sha256="0bb8fmswicjnffa0w5j2iyy484zjcvh1isxk7gkjxm9snxbglmz6"; depends=[BiocGenerics BiocStyle broom data_table dplyr DT ggExtra ggplot2 gridExtra heatmaply kableExtra knitr magick matrixStats matrixTests MetaCycle plotly reshape2 rmarkdown S4Vectors shiny shinyBS shinycssloaders shinydashboard shinyjs SummarizedExperiment UpSetR VennDiagram viridis zip]; };
   DominoEffect = derive2 { name="DominoEffect"; version="1.14.0"; sha256="13lksli177d11rw5692bc5qmp0x5bfkasriccaa28hklnqmbyjsc"; depends=[AnnotationDbi biomaRt Biostrings data_table GenomeInfoDb GenomicRanges IRanges SummarizedExperiment VariantAnnotation]; };
   Doscheda = derive2 { name="Doscheda"; version="1.16.0"; sha256="0lpmxnid43fvi41mc5r89mvvxn19baja8f4zr38j3dkb126dr476"; depends=[affy calibrate corrgram drc DT ggplot2 gridExtra httr jsonlite limma matrixStats prodlim readxl reshape2 shiny shinydashboard stringr vsn]; };
   DriverNet = derive2 { name="DriverNet"; version="1.34.0"; sha256="1qfjg5x3m2z5yjm0lgnw7rqhclic2fgzcdnq0nnwlqyp4i5na10q"; depends=[]; };
@@ -316,7 +313,7 @@ in with self; {
   EnMCB = derive2 { name="EnMCB"; version="1.6.0"; sha256="050mzns1zh643pxzqzc935hwczpk7xwa16qq7z88cagab2r8yx7j"; depends=[boot doParallel foreach ggplot2 glmnet IlluminaHumanMethylation450kanno_ilmn12_hg19 mboost minfi rms survival survivalROC survivalsvm]; };
   EnhancedVolcano = derive2 { name="EnhancedVolcano"; version="1.12.0"; sha256="19l1yz522hzmwwsgqqhwqrazqf6w015fi3j85n9pxqkyisz2r2x2"; depends=[ggalt ggplot2 ggrastr ggrepel]; };
   EnrichedHeatmap = derive2 { name="EnrichedHeatmap"; version="1.24.0"; sha256="1wbbasz3467jg6anzm57y4kijsysfkah1l5f82qw6ckrhv3rxylc"; depends=[circlize ComplexHeatmap GenomicRanges GetoptLong IRanges locfit matrixStats Rcpp]; };
-  EnrichmentBrowser = derive2 { name="EnrichmentBrowser"; version="2.24.1"; sha256="1g08xvd6zav59cjj8sv12m03x35655npagxpnzg6awkmnx5x811s"; depends=[AnnotationDbi BiocFileCache BiocManager edgeR GO_db graph graphite GSEABase hwriter KEGGgraph KEGGREST limma pathview Rgraphviz S4Vectors safe SPIA SummarizedExperiment]; };
+  EnrichmentBrowser = derive2 { name="EnrichmentBrowser"; version="2.24.2"; sha256="0b1pgmfvbb7qba447szjakxdp1v9f63gmkvfqdw4g89f0k2ra40q"; depends=[AnnotationDbi BiocFileCache BiocManager edgeR GO_db graph graphite GSEABase hwriter KEGGgraph KEGGREST limma pathview Rgraphviz S4Vectors safe SPIA SummarizedExperiment]; };
   EpiDISH = derive2 { name="EpiDISH"; version="2.10.0"; sha256="1fqyg3hfc40d1pvw02d95wr1lm2wi82yx3vrrsf7gs53i9gdm2q0"; depends=[e1071 locfdr MASS Matrix matrixStats quadprog stringr]; };
   EpiTxDb = derive2 { name="EpiTxDb"; version="1.6.0"; sha256="0vmn4wqxwczq0ckx0pq20jbjp3a01nxj3knax1d3jx77cqqkwsaz"; depends=[AnnotationDbi BiocFileCache BiocGenerics Biostrings curl DBI GenomeInfoDb GenomicFeatures GenomicRanges httr IRanges Modstrings RSQLite S4Vectors tRNAdbImport xml2]; };
   EventPointer = derive2 { name="EventPointer"; version="3.2.0"; sha256="0kg5psygc410gx6prb8as00csh6v3s1psbcn2ym4i4k5wnyzmbn3"; depends=[abind affxparser Biostrings BSgenome cobs doParallel foreach GenomeInfoDb GenomicFeatures GenomicRanges glmnet graph igraph IRanges iterators limma lpSolve MASS Matrix matrixStats nnls poibin prodlim qvalue RBGL rhdf5 S4Vectors SGSeq speedglm stringr SummarizedExperiment tximport]; };
@@ -340,7 +337,6 @@ in with self; {
   FastqCleaner = derive2 { name="FastqCleaner"; version="1.12.0"; sha256="1cw0916qdn1an3wcnx5659q2f22rs78p9m5v2xp9nyp5phjb97pp"; depends=[Biostrings DT htmltools IRanges Rcpp S4Vectors shiny shinyBS ShortRead]; };
   FilterFFPE = derive2 { name="FilterFFPE"; version="1.4.0"; sha256="1c9mfhc4hms2f861f71i7hbhnn3s1xlzabcmdjzybwiv16dl139w"; depends=[doParallel foreach GenomicRanges IRanges Rsamtools S4Vectors]; };
   FindIT2 = derive2 { name="FindIT2"; version="1.0.3"; sha256="0xgnsgpai7l7birivnpca0df74zh02q6l35dncz8i50x1yrf83hm"; depends=[BiocGenerics BiocParallel dplyr GenomeInfoDb GenomicFeatures GenomicRanges ggplot2 ggrepel glmnet IRanges MultiAssayExperiment patchwork progress purrr qvalue rlang rtracklayer S4Vectors stringr SummarizedExperiment tibble tidyr withr]; };
-  FindMyFriends = derive2 { name="FindMyFriends"; version="1.23.0"; sha256="0xbhl6ljxb522r5062vv6xdziaaqkkwylmvlymvc5f1grjz0a4z9"; depends=[Biobase BiocGenerics BiocParallel Biostrings digest dplyr filehash ggdendro ggplot2 gtable igraph IRanges kebabs Matrix Rcpp reshape2 S4Vectors]; };
   FitHiC = derive2 { name="FitHiC"; version="1.20.0"; sha256="0a3d2bxp98lmbf3i864zgfwxwvxyqfcrh75z9yz7ra7y44pkjr4y"; depends=[data_table fdrtool Rcpp]; };
   FlowSOM = derive2 { name="FlowSOM"; version="2.2.0"; sha256="062xrv8li2z849qa8mv5dhafqli6ziz099ikjfvi7v2fr7174p8f"; depends=[BiocGenerics colorRamps ConsensusClusterPlus CytoML dplyr flowCore flowWorkspace ggforce ggnewscale ggplot2 ggpointdensity ggpubr ggrepel igraph magrittr pheatmap RColorBrewer rlang Rtsne scattermore tidyr XML]; };
   FoldGO = derive2 { name="FoldGO"; version="1.12.0"; sha256="07wk3i9q8m8jaamwfwnnxlm3xc0r7frlk6s2mndkkjs1sfrdb5z3"; depends=[ggplot2 tidyr topGO]; };
@@ -356,7 +352,7 @@ in with self; {
   GDCRNATools = derive2 { name="GDCRNATools"; version="1.14.0"; sha256="1h0gfi6mhr5kzwhqxkzgxz12abkn7svnbbzga70pp7az8m8vxmnn"; depends=[BiocParallel biomaRt clusterProfiler DESeq2 DOSE DT edgeR GenomicDataCommons ggplot2 gplots jsonlite limma org_Hs_eg_db pathview rjson shiny survival survminer XML]; };
   GDSArray = derive2 { name="GDSArray"; version="1.14.1"; sha256="0v8kxy7xfhgghz4qg2djc4nxh2w3bk48b0cx1jx7lc45hm2qsdfx"; depends=[BiocGenerics DelayedArray gdsfmt S4Vectors SeqArray SNPRelate]; };
   GEM = derive2 { name="GEM"; version="1.20.0"; sha256="19jars2vajfgy2v9xrgp45gc2yn2hq31d9ikdpnkd9gvpqm99nkv"; depends=[ggplot2]; };
-  GENESIS = derive2 { name="GENESIS"; version="2.24.0"; sha256="1n1h9aiyn8f8cznm8dkvndm3708nls2xr4v21sspz4vj8ahwvgaz"; depends=[Biobase BiocGenerics BiocParallel data_table gdsfmt GenomicRanges GWASTools igraph IRanges Matrix reshape2 S4Vectors SeqArray SeqVarTools SNPRelate]; };
+  GENESIS = derive2 { name="GENESIS"; version="2.24.1"; sha256="10b72yy6bx9alw8zr9rz22wgkqm1m6b2lr1flrf80mvxjihfy7as"; depends=[Biobase BiocGenerics BiocParallel data_table gdsfmt GenomicRanges GWASTools igraph IRanges Matrix reshape2 S4Vectors SeqArray SeqVarTools SNPRelate]; };
   GENIE3 = derive2 { name="GENIE3"; version="1.16.0"; sha256="0ms769267pimrx3xwwkgjy03qilkxxs7xwhzfca01f65i4n3l6fw"; depends=[dplyr reshape2]; };
   GEOexplorer = derive2 { name="GEOexplorer"; version="1.0.0"; sha256="01hgjdp14b9r2044h0sd136f0px983n0il08wiii41vq1jgisvhb"; depends=[Biobase DT factoextra GEOquery ggplot2 heatmaply htmltools impute limma maptools pheatmap plotly scales shiny shinyBS shinybusy shinyHeatmaply stringr umap]; };
   GEOfastq = derive2 { name="GEOfastq"; version="1.2.0"; sha256="03ya7x7dph6g97aa3gf3d7dinjcy8qipd0dyxqpdhdm1w1gx83by"; depends=[doParallel foreach plyr RCurl rvest stringr xml2]; };
@@ -413,12 +409,11 @@ in with self; {
   GeneStructureTools = derive2 { name="GeneStructureTools"; version="1.14.0"; sha256="1w7nckmjc4zg5a20f4hjqjavmkdwngkjp70akrf3bh1qmbvpdr2a"; depends=[Biostrings BSgenome_Mmusculus_UCSC_mm10 data_table GenomicRanges Gviz IRanges plyr rtracklayer S4Vectors stringdist stringr]; };
   GeneTonic = derive2 { name="GeneTonic"; version="1.6.1"; sha256="1kcl87bjjy933z8xkqc3nx5yy6b89f62iaf7p6hc69z4vw5xrydf"; depends=[AnnotationDbi backbone bs4Dash circlize colorspace colourpicker ComplexHeatmap dendextend DESeq2 dplyr DT dynamicTreeCut expm ggforce ggplot2 ggrepel GO_db igraph matrixStats plotly RColorBrewer rintrojs rlang rmarkdown S4Vectors scales shiny shinyAce shinycssloaders shinyWidgets SummarizedExperiment tidyr tippy viridis visNetwork]; };
   GeneticsPed = derive2 { name="GeneticsPed"; version="1.56.0"; sha256="1gvk3wg5mqyc8j95l4djfc55ymv4i08az67znnly3r8376m07mqw"; depends=[gdata genetics MASS]; };
-  GenoGAM = derive2 { name="GenoGAM"; version="2.11.0"; sha256="058qix2h0zm2k9csmbdhci2wqih3lyggjj591cqn0ls2nv7bnyvj"; depends=[BiocParallel Biostrings data_table DelayedArray DESeq2 futile_logger GenomeInfoDb GenomicAlignments GenomicRanges HDF5Array IRanges Matrix Rcpp RcppArmadillo rhdf5 Rsamtools S4Vectors sparseinv SummarizedExperiment]; };
   GenomeInfoDb = derive2 { name="GenomeInfoDb"; version="1.30.1"; sha256="1ly851w6xy144qvmpdv7p64yc45bqxmvny2rzgz691h3qbin3x55"; depends=[BiocGenerics GenomeInfoDbData IRanges RCurl S4Vectors]; };
   GenomicAlignments = derive2 { name="GenomicAlignments"; version="1.30.0"; sha256="1jwksis94mk8bmdggk0w3kvxqwp4di6x78xgsjk6ij54710adyq9"; depends=[BiocGenerics BiocParallel Biostrings GenomeInfoDb GenomicRanges IRanges Rsamtools S4Vectors SummarizedExperiment]; };
   GenomicDataCommons = derive2 { name="GenomicDataCommons"; version="1.18.0"; sha256="1nr504dchiifbagrjq0cck5rzd23dcfnvx6bsw9wikw5mg4gib9l"; depends=[dplyr GenomicRanges httr IRanges jsonlite magrittr rappdirs readr rlang S4Vectors SummarizedExperiment tibble xml2]; };
   GenomicDistributions = derive2 { name="GenomicDistributions"; version="1.2.0"; sha256="07c3rxvgm2abs01kzczbpy7kmn3yzcdf5z35dlk1bc2ry3s5dsd1"; depends=[Biostrings data_table dplyr GenomeInfoDb GenomicRanges ggplot2 IRanges plyr reshape2]; };
-  GenomicFeatures = derive2 { name="GenomicFeatures"; version="1.46.4"; sha256="0r0vi6hkp5yhgdw1df2y8ivz7fbcbxs9zqpavlkyklpfbrs32yay"; depends=[AnnotationDbi Biobase BiocGenerics BiocIO biomaRt Biostrings DBI GenomeInfoDb GenomicRanges IRanges RCurl RSQLite rtracklayer S4Vectors XVector]; };
+  GenomicFeatures = derive2 { name="GenomicFeatures"; version="1.46.5"; sha256="1fhahqh87cikfrwqkm2z4nq3jyi530qvsbmf09j2hyhsm87hhrgg"; depends=[AnnotationDbi Biobase BiocGenerics BiocIO biomaRt Biostrings DBI GenomeInfoDb GenomicRanges IRanges RCurl RSQLite rtracklayer S4Vectors XVector]; };
   GenomicFiles = derive2 { name="GenomicFiles"; version="1.30.0"; sha256="0i5y6dk6z18yqj5k4zy756c6l57z9jq2w5a5dksh2di4qgdgjx3x"; depends=[BiocGenerics BiocParallel GenomeInfoDb GenomicAlignments GenomicRanges IRanges MatrixGenerics Rsamtools rtracklayer S4Vectors SummarizedExperiment VariantAnnotation]; };
   GenomicInteractions = derive2 { name="GenomicInteractions"; version="1.28.0"; sha256="090kxq5jn1jfr9fgbkvbjr5g4bcxzgsaal3gc9yx1n7pgmhccfmb"; depends=[Biobase BiocGenerics data_table dplyr GenomeInfoDb GenomicRanges ggplot2 gridExtra Gviz igraph InteractionSet IRanges Rsamtools rtracklayer S4Vectors stringr]; };
   GenomicOZone = derive2 { name="GenomicOZone"; version="1.8.0"; sha256="1dx72y7kmj7ng3r6qn9bzlmgq9pf7g738myhgrnmk4ivjl6f615w"; depends=[biomaRt Ckmeans_1d_dp GenomeInfoDb GenomicRanges ggbio ggplot2 gridExtra IRanges lsr plyr Rdpack S4Vectors]; };
@@ -457,8 +452,6 @@ in with self; {
   Harshlight = derive2 { name="Harshlight"; version="1.66.0"; sha256="0a0zxy2f5ff74gaa24mahym2az2azp4k4i4hw8kgj7zj4mj6pzjz"; depends=[affy altcdfenvs Biobase]; };
   Heatplus = derive2 { name="Heatplus"; version="3.2.0"; sha256="0yrnjrbfn8vjzvp2742lyxdqca4s18h73j44qxw7ib95x3p4lndf"; depends=[RColorBrewer]; };
   HelloRanges = derive2 { name="HelloRanges"; version="1.20.0"; sha256="1f9fyafp3spxb76xl8ncww0dzfi4dbzh9ijqzs89dc7m10saq89p"; depends=[BiocGenerics Biostrings BSgenome docopt GenomeInfoDb GenomicAlignments GenomicFeatures GenomicRanges IRanges Rsamtools rtracklayer S4Vectors SummarizedExperiment VariantAnnotation]; };
-  Herper = derive2 { name="Herper"; version="1.3.0"; sha256="038cavnbz7gvmv9mpnf88n8dzrg7yl306y68zsq5hpkrj6qax9vr"; depends=[reticulate rjson withr]; };
-  HiCBricks = derive2 { name="HiCBricks"; version="1.11.0"; sha256="12s01r9z569pp6amlvcs7fqmwivw9jb2ahnnyq6nzflsyn5277kl"; depends=[BiocParallel curl data_table digest GenomeInfoDb GenomicRanges ggplot2 IRanges jsonlite R_utils R6 RColorBrewer readr reshape2 rhdf5 S4Vectors scales stringr tibble viridis]; };
   HiCDCPlus = derive2 { name="HiCDCPlus"; version="1.2.1"; sha256="0ywy0xwymrd9pknnz654vz31463js3rl3f1avmzjzd4krkf2vdgh"; depends=[bbmle Biostrings BSgenome data_table dplyr GenomeInfoDb GenomicInteractions GenomicRanges InteractionSet IRanges MASS pscl R_utils Rcpp rlang rtracklayer S4Vectors tibble tidyr]; };
   HiCcompare = derive2 { name="HiCcompare"; version="1.16.0"; sha256="0g2gsy27prk8b4anywim0qskishc52zh0p3854v04l6jax26675r"; depends=[BiocParallel data_table dplyr GenomicRanges ggplot2 gridExtra gtools InteractionSet IRanges KernSmooth mgcv pheatmap QDNAseq rhdf5 S4Vectors]; };
   HiLDA = derive2 { name="HiLDA"; version="1.8.0"; sha256="02yss2nr6f9zb6kd11id4p3zcgdvr66zlf4s404nh1aag221bc7h"; depends=[abind BiocGenerics Biostrings BSgenome_Hsapiens_UCSC_hg19 cowplot forcats GenomicFeatures GenomicRanges ggplot2 R2jags Rcpp S4Vectors stringr tidyr TxDb_Hsapiens_UCSC_hg19_knownGene XVector]; };
@@ -542,7 +535,6 @@ in with self; {
   MBASED = derive2 { name="MBASED"; version="1.28.0"; sha256="11rbsaki3nbzil2p8fv7b7biykb60398ayq8sc8drqpiam15myy7"; depends=[BiocGenerics BiocParallel GenomicRanges RUnit SummarizedExperiment]; };
   MBAmethyl = derive2 { name="MBAmethyl"; version="1.28.0"; sha256="1jkvx523spv55qrikg26xc2r9qb72y7kfa161ha6jjm8l57rb6bv"; depends=[]; };
   MBCB = derive2 { name="MBCB"; version="1.48.0"; sha256="06idlf8s0a59q45rckflxi5m3i7rgn8lphzyw2fgajvv4df5j7q3"; depends=[preprocessCore tcltk2]; };
-  MBQN = derive2 { name="MBQN"; version="2.5.0"; sha256="01pf9wkk3dsxgx1y8mxfxn9m2j2hqipc5kajm7w8g60bj9flg09j"; depends=[BiocFileCache ggplot2 limma PairedData preprocessCore rappdirs RCurl rpx SummarizedExperiment xml2]; };
   MBttest = derive2 { name="MBttest"; version="1.22.0"; sha256="115bkavx4pqy7sh70m5jmghk784f4cqm6z91z5s44m8c00a58vnp"; depends=[gplots gtools]; };
   MCbiclust = derive2 { name="MCbiclust"; version="1.18.0"; sha256="1sswmmdkxw41pzqzqxs8rq581jx1wprcmafagnn4n39h2mw00wwy"; depends=[AnnotationDbi BiocParallel cluster GGally ggplot2 GO_db org_Hs_eg_db scales WGCNA]; };
   MDTS = derive2 { name="MDTS"; version="1.14.0"; sha256="124ixdshragwgnr4rz5qii2j0j74ybm5h8y3k2h1kba56632ff1s"; depends=[Biostrings DNAcopy GenomicAlignments GenomicRanges IRanges Rsamtools stringr]; };
@@ -562,7 +554,7 @@ in with self; {
   MLSeq = derive2 { name="MLSeq"; version="2.12.0"; sha256="0z722cbbvkkfpzli47n9dhyj3n02gibffy1l06imwvzxcvahcfyj"; depends=[Biobase caret DESeq2 edgeR foreach ggplot2 limma pamr plyr sSeq SummarizedExperiment testthat VennDiagram xtable]; };
   MMAPPR2 = derive2 { name="MMAPPR2"; version="1.8.0"; sha256="1fl8dmbxr407f0vzv4q3jpaia28igzqxjb6azbck7zgn64wh5i3c"; depends=[Biobase BiocGenerics BiocParallel data_table dplyr ensemblVEP GenomeInfoDb GenomicRanges gmapR IRanges magrittr Rsamtools S4Vectors stringr tidyr VariantAnnotation VariantTools]; };
   MMDiff2 = derive2 { name="MMDiff2"; version="1.22.0"; sha256="1a74q87mlf1pvgy47gyncllsdz460iyk1nrh4m75jywhbxjf36z0"; depends=[Biobase Biostrings BSgenome GenomicRanges ggplot2 locfit RColorBrewer Rsamtools S4Vectors shiny]; };
-  MMUPHin = derive2 { name="MMUPHin"; version="1.8.0"; sha256="00gi53nm19q1282lk435mvm908ldslfcqs70fbz69ysxp6a4qv9v"; depends=[cowplot dplyr fpc ggplot2 igraph Maaslin2 metafor tidyr]; };
+  MMUPHin = derive2 { name="MMUPHin"; version="1.8.1"; sha256="161s7505hyacn9632yaq8a0arqac1g11vbz4awjrhqjlma12c9m1"; depends=[cowplot dplyr fpc ggplot2 igraph Maaslin2 metafor tidyr]; };
   MODA = derive2 { name="MODA"; version="1.20.0"; sha256="00v40gsp1x5gbjg4ilnsjq1j512lwl3sbhqmavyxs20i8c8xjcqf"; depends=[AMOUNTAIN cluster dynamicTreeCut igraph RColorBrewer WGCNA]; };
   MOFA2 = derive2 { name="MOFA2"; version="1.4.0"; sha256="0vl2ffvh9nsdgw94yavkdkkhihpcb8fdbn3f19aygmwbfg78j3w9"; depends=[basilisk corrplot cowplot DelayedArray dplyr forcats ggplot2 ggrepel HDF5Array magrittr pheatmap RColorBrewer reshape2 reticulate rhdf5 Rtsne stringi tidyr uwot]; };
   MOGAMUN = derive2 { name="MOGAMUN"; version="1.4.0"; sha256="0jq863ql6ydykrbriw5h6ibinchkhsgxq8908gyg5f5jl2sgc8pc"; depends=[BiocParallel igraph RCy3 RUnit stringr]; };
@@ -577,15 +569,14 @@ in with self; {
   MSnID = derive2 { name="MSnID"; version="1.28.0"; sha256="0dks5h3vp9ly8x24px2rl5blqicxybpxjnxvg2p1bwq8zvjkm38p"; depends=[AnnotationDbi AnnotationHub Biobase BiocGenerics BiocStyle Biostrings data_table doParallel dplyr foreach ggplot2 iterators msmsTests MSnbase mzID mzR ProtGenerics purrr R_cache Rcpp reshape2 rlang RUnit stringr tibble xtable]; };
   MSnbase = derive2 { name="MSnbase"; version="2.20.4"; sha256="0d3b0i154dyz1wvy2jwf5831bzbmalw7rzvxj8rd7658zjhghgzc"; depends=[affy Biobase BiocGenerics BiocParallel digest ggplot2 impute IRanges lattice MALDIquant MASS MsCoreUtils mzID mzR pcaMethods plyr ProtGenerics Rcpp S4Vectors scales vsn XML]; };
   MSstats = derive2 { name="MSstats"; version="4.2.0"; sha256="1i36a0vhqb2sjllyh6ascfm5fbzf8awazbk1vjq5n8mh2cq72ri9"; depends=[checkmate data_table ggplot2 ggrepel gplots limma lme4 marray MASS MSstatsConvert preprocessCore Rcpp RcppArmadillo survival]; };
-  MSstatsConvert = derive2 { name="MSstatsConvert"; version="1.4.0"; sha256="0p44g7kv2zyknmiki94w0v4zq1qpa2ly17hbfqkfy9c1xql7b38g"; depends=[checkmate data_table log4r stringi]; };
+  MSstatsConvert = derive2 { name="MSstatsConvert"; version="1.4.1"; sha256="0n8dhc8x9z9n3j91zac67asqgx6q6ikwhcpd56h5x1rhggy8s5db"; depends=[checkmate data_table log4r stringi]; };
   MSstatsLOBD = derive2 { name="MSstatsLOBD"; version="1.2.0"; sha256="0d78hd9ip2amkj5pjmwy376qhzfd46wqmzl38rbm52d946c69sb8"; depends=[ggplot2 minpack_lm Rcpp]; };
   MSstatsLiP = derive2 { name="MSstatsLiP"; version="1.0.0"; sha256="1vf3f3yd9sgaqs9asq1x2819wkj2x68086g8hag1ln6q7q5j0xws"; depends=[Biostrings checkmate data_table dplyr factoextra ggplot2 ggpubr gridExtra MSstats MSstatsConvert MSstatsPTM purrr Rcpp scales stringr tibble tidyr tidyverse]; };
   MSstatsPTM = derive2 { name="MSstatsPTM"; version="1.4.2"; sha256="1g4m2z9hw86w7fj0539jkfjwjdx47kp4lhy9xa7032dr4aiwkvbh"; depends=[Biostrings checkmate data_table dplyr ggplot2 ggrepel gridExtra MSstats MSstatsConvert MSstatsTMT Rcpp stringr]; };
   MSstatsQC = derive2 { name="MSstatsQC"; version="2.12.0"; sha256="087lr0maf5kpl642kvvkd9pyakqxy152rzhvrlaj0rxbrfqgxnsw"; depends=[dplyr ggExtra ggplot2 MSnbase plotly qcmetrics]; };
   MSstatsQCgui = derive2 { name="MSstatsQCgui"; version="1.14.0"; sha256="0ygw1zrq219grfy6h650icai9khx49fvdbby5cyydrqbp8m64w77"; depends=[dplyr ggExtra gridExtra MSstatsQC plotly shiny]; };
   MSstatsSampleSize = derive2 { name="MSstatsSampleSize"; version="1.8.0"; sha256="0ckdy0qy2s2rvh4ijdddkk9calf1s9s0hr52y0kpgr4mb5zrl0jp"; depends=[BiocParallel caret ggplot2 gridExtra MSstats reshape2]; };
-  MSstatsTMT = derive2 { name="MSstatsTMT"; version="2.2.0"; sha256="0bx96v57lhr8mmvy30cpmbr3mc4ykqwjvqld5gvc01f0h79x8545"; depends=[checkmate data_table ggplot2 limma lme4 lmerTest MSstats MSstatsConvert]; };
-  MSstatsTMTPTM = derive2 { name="MSstatsTMTPTM"; version="1.1.2"; sha256="16qnddwhwhjjfr5akdrmp93gkxq2r41s82hb1blbz47lwbj5kaj5"; depends=[dplyr ggplot2 gridExtra MSstatsTMT Rcpp reshape2 stringr]; };
+  MSstatsTMT = derive2 { name="MSstatsTMT"; version="2.2.7"; sha256="158s2hdnxlaxcpvybg1r5n89qyhj1rvzvxhp02mc2v4m27rw256n"; depends=[checkmate data_table ggplot2 limma lme4 lmerTest MSstats MSstatsConvert]; };
   MVCClass = derive2 { name="MVCClass"; version="1.68.0"; sha256="088gzh33vjkjf78xczqfs89pyg0k7c3533yfvijqxl84ni2ky78z"; depends=[]; };
   MWASTools = derive2 { name="MWASTools"; version="1.18.0"; sha256="0i8880nb6y7sanb9w8cwvd69990p1zmfyi3d98259hl2ly65zywj"; depends=[boot car ComplexHeatmap ggplot2 glm2 gridExtra igraph KEGGgraph KEGGREST ppcor qvalue RCurl SummarizedExperiment]; };
   Maaslin2 = derive2 { name="Maaslin2"; version="1.8.0"; sha256="08zncj3ywc5pcywi3zgqvvlmqgp9j165b3vrkipvwv15b647jqvp"; depends=[biglm car chemometrics cplm data_table dplyr edgeR ggplot2 glmmTMB hash lme4 lmerTest logging lpsymphony MASS metagenomeSeq optparse pbapply pcaPP pheatmap pscl robustbase vegan]; };
@@ -593,7 +584,7 @@ in with self; {
   MassArray = derive2 { name="MassArray"; version="1.46.0"; sha256="1m3a0h5jmjifm16z9l37rij00jka0k22qryq0lmhvfmidzvn7pbf"; depends=[]; };
   MassSpecWavelet = derive2 { name="MassSpecWavelet"; version="1.60.0"; sha256="1icqyxkx5a9y3wahkxpxngw85c7l4hih1ym9nwwn9qy93pnw1zi4"; depends=[waveslim]; };
   MatrixGenerics = derive2 { name="MatrixGenerics"; version="1.6.0"; sha256="1s75p8rrmj24r0vcbaiyw8xg8y84j388mv6iawai7pypfcl8s1z3"; depends=[matrixStats]; };
-  MatrixQCvis = derive2 { name="MatrixQCvis"; version="1.2.0"; sha256="0isahwrq232fkls7bsjlnsfi2q1yimfx61k7as8in82a5jf56rs1"; depends=[ComplexHeatmap dplyr ggplot2 Hmisc htmlwidgets impute imputeLCMD limma openxlsx pcaMethods plotly proDA rlang rmarkdown Rtsne S4Vectors shiny shinydashboard shinyhelper shinyjs SummarizedExperiment tibble tidyr umap UpSetR vegan vsn]; };
+  MatrixQCvis = derive2 { name="MatrixQCvis"; version="1.2.2"; sha256="1czw4v7dyggk6dkhvqsx01wd5rp9rds3h4g9dbycgb9gz5qmza0h"; depends=[ComplexHeatmap dplyr ggplot2 Hmisc htmlwidgets impute imputeLCMD limma openxlsx pcaMethods plotly proDA rlang rmarkdown Rtsne S4Vectors shiny shinydashboard shinyhelper shinyjs SummarizedExperiment tibble tidyr umap UpSetR vegan vsn]; };
   MatrixRider = derive2 { name="MatrixRider"; version="1.26.0"; sha256="0mv0w3m7waqfm8gy39hmdn00p6cq0a0ndr01scfg1js29jm6sgc2"; depends=[Biostrings IRanges S4Vectors TFBSTools XVector]; };
   MeSHDbi = derive2 { name="MeSHDbi"; version="1.30.0"; sha256="0m4vak1sqh28dz4s2i3nhvhpns024kqnapqa6ibqq0spac8fvknr"; depends=[AnnotationDbi Biobase RSQLite]; };
   MeasurementError_cor = derive2 { name="MeasurementError.cor"; version="1.66.0"; sha256="119d7wz374vshg89p72qbnnxwdk32h4rhz8ay505vnnqkyyiw5ag"; depends=[]; };
@@ -602,14 +593,13 @@ in with self; {
   MesKit = derive2 { name="MesKit"; version="1.4.0"; sha256="1bz5krwx8v63s9mzbxivkj88vp0f1i3xk4mplkhra8wrn5kc7qvf"; depends=[AnnotationDbi ape Biostrings circlize ComplexHeatmap cowplot data_table dplyr ggplot2 ggrepel ggridges IRanges mclust phangorn pracma RColorBrewer S4Vectors tidyr]; };
   MetCirc = derive2 { name="MetCirc"; version="1.24.0"; sha256="0wgf6l6ficl4456sa56ccjgj4z9iwp94ar2dhqjyjqz5fxdz4cvk"; depends=[amap circlize ggplot2 MSnbase S4Vectors scales shiny]; };
   MetID = derive2 { name="MetID"; version="1.12.0"; sha256="08n0b76vzv5zlcw0icc2155wbyik2r7x43gf7rxj929l9yx213py"; depends=[ChemmineR devtools igraph Matrix stringr]; };
-  MetNet = derive2 { name="MetNet"; version="1.12.0"; sha256="1h8n595qz0wjg4mx4wccmxz7j9wlkqzbg8c2a30gkhlwknc3k8qh"; depends=[BiocParallel bnlearn dplyr GENIE3 ggplot2 mpmi parmigene ppcor psych rlang S4Vectors stabs SummarizedExperiment tibble tidyr]; };
+  MetNet = derive2 { name="MetNet"; version="1.12.1"; sha256="0s54q5q9lw2aljdvy5ab4f9j52jiji582mfa0n26mcv8waq39r4i"; depends=[BiocParallel bnlearn dplyr GENIE3 ggplot2 mpmi parmigene ppcor psych rlang S4Vectors stabs SummarizedExperiment tibble tidyr]; };
   MetaCyto = derive2 { name="MetaCyto"; version="1.16.0"; sha256="0rhxnj7s01mvfg6bnrx86qm88dihzcivz66z0l52qvc13q38zxv7"; depends=[cluster fastcluster flowCore FlowSOM ggplot2 metafor tidyr]; };
   MetaNeighbor = derive2 { name="MetaNeighbor"; version="1.14.0"; sha256="16j9xx7hka13shih9cb3l49vd06ay83pg434lxz0pkdl3zlfhkak"; depends=[beanplot dplyr ggplot2 gplots igraph Matrix matrixStats RColorBrewer SingleCellExperiment SummarizedExperiment tibble tidyr]; };
   MetaVolcanoR = derive2 { name="MetaVolcanoR"; version="1.8.0"; sha256="178wva1km2j53yr3j49pzahsixqlcln750l433vzl111p7db1xc6"; depends=[cowplot data_table dplyr ggplot2 htmlwidgets metafor metap plotly rlang tidyr topconfects]; };
   Metab = derive2 { name="Metab"; version="1.28.0"; sha256="1syd548djqcmx8d094mzgj4mw9zzfq2sn9fqxm4z2kpgzqnmy400"; depends=[pander svDialogs xcms]; };
   MetaboCoreUtils = derive2 { name="MetaboCoreUtils"; version="1.2.0"; sha256="1srmpyccpdqxxlwq68d03yddb74a3kb6yw6yb6v92mpfal1qgdss"; depends=[MsCoreUtils stringr]; };
   MetaboSignal = derive2 { name="MetaboSignal"; version="1.24.0"; sha256="1rn6i6masadz5y2lrhjfw2rkfri25rnfnx0gxg9pqsg523bz2plb"; depends=[AnnotationDbi biomaRt EnsDb_Hsapiens_v75 hpar igraph KEGGgraph KEGGREST MWASTools mygene org_Hs_eg_db RCurl]; };
-  MethCP = derive2 { name="MethCP"; version="1.7.0"; sha256="1smhwmrgckgivf6xfk54sz197cw1mar95chzkrfpf4wxw3jzbbkn"; depends=[BiocParallel bsseq DNAcopy DSS GenomeInfoDb GenomicRanges IRanges methylKit S4Vectors]; };
   MethPed = derive2 { name="MethPed"; version="1.22.0"; sha256="1a48yhnaw0lxb9cj0ywd59j7yf109bii0qq7d8v9rl9l1l4apmy8"; depends=[Biobase randomForest]; };
   MethReg = derive2 { name="MethReg"; version="1.4.0"; sha256="1axqcza16r7wqnd78bdzh2sv5yi00ikymawkq0y2spcafb85facr"; depends=[DelayedArray dplyr GenomicRanges ggplot2 ggpubr IRanges MASS Matrix plyr progress pscl readr rlang S4Vectors sesameData sfsmisc stringr SummarizedExperiment tibble tidyr]; };
   MethTargetedNGS = derive2 { name="MethTargetedNGS"; version="1.26.0"; sha256="1n5gsizg9cfq2mi2v7f81ika423ci7vdgddnlxj5x8vszn5jfavk"; depends=[Biostrings gplots seqinr stringr]; };
@@ -621,26 +611,26 @@ in with self; {
   MiPP = derive2 { name="MiPP"; version="1.66.0"; sha256="1m42rv20f9cwnr97ckx4lm193zf0kjr2v33fisymyaq5rrl7ppfn"; depends=[Biobase e1071 MASS]; };
   MiRaGE = derive2 { name="MiRaGE"; version="1.36.0"; sha256="10laq0b1acsirykb5cjxlpj91lqvmhsd3ammk331njaaczh4mjrx"; depends=[AnnotationDbi Biobase BiocGenerics BiocManager S4Vectors]; };
   MicrobiomeProfiler = derive2 { name="MicrobiomeProfiler"; version="1.0.0"; sha256="13awswgm1n30fy73xxlph5aay8a4nkb1gjjzhqy9w7djpm99nw8g"; depends=[clusterProfiler config DT enrichplot ggplot2 golem htmltools magrittr shiny shinycustomloader shinyWidgets]; };
-  MicrobiotaProcess = derive2 { name="MicrobiotaProcess"; version="1.6.4"; sha256="0vfmsdbn5czz90kg6mzgrfgrv1y5l9vxplj1j17k0s19z525w1kj"; depends=[ape Biostrings coin dplyr dtplyr foreach ggplot2 ggrepel ggsignif ggstar ggtree ggtreeExtra magrittr MASS patchwork pillar rlang SummarizedExperiment tibble tidyr tidyselect tidytree treeio vegan zoo]; };
+  MicrobiotaProcess = derive2 { name="MicrobiotaProcess"; version="1.6.5"; sha256="065axmzs5nzbfm85aah6a5gyp5clffndml26h62fhs0i2msiz3j9"; depends=[ape Biostrings coin dplyr dtplyr foreach ggplot2 ggrepel ggsignif ggstar ggtree ggtreeExtra magrittr MASS patchwork pillar rlang SummarizedExperiment tibble tidyr tidyselect tidytree treeio vegan zoo]; };
   MineICA = derive2 { name="MineICA"; version="1.34.0"; sha256="00pbhbz44dx5gfzzf1drwny4a779zxk4hjavb1fkpg15cm7c152x"; depends=[annotate AnnotationDbi Biobase BiocGenerics biomaRt cluster colorspace fastICA foreach fpc ggplot2 GOstats graph gtools Hmisc igraph JADE lumi lumiHumanAll_db marray mclust plyr RColorBrewer Rgraphviz scales xtable]; };
   MinimumDistance = derive2 { name="MinimumDistance"; version="1.38.0"; sha256="077prww1k374czkd8dlpy081ki101vpl2gpi4dmjbzzq5q45ld7f"; depends=[Biobase BiocGenerics data_table DNAcopy ff foreach GenomeInfoDb GenomicRanges IRanges lattice MatrixGenerics matrixStats oligoClasses S4Vectors SummarizedExperiment VanillaICE]; };
   ModCon = derive2 { name="ModCon"; version="1.2.0"; sha256="1pgvkscvsacm7ag6yyqlpxs6c5vyb3hlmk6gzkiarsc1b29iqhm4"; depends=[data_table]; };
   Modstrings = derive2 { name="Modstrings"; version="1.10.0"; sha256="0lnfvv8k0ffpf72zvhxy6831mgr4gajd4miad8rjzaajhqndr2yf"; depends=[BiocGenerics Biostrings crayon GenomicRanges IRanges S4Vectors stringi stringr XVector]; };
   MoonlightR = derive2 { name="MoonlightR"; version="1.20.0"; sha256="1sxdalili8vkp07fn558pcg3azi3v1gqjp6h9cvv1cxdcnjrykkh"; depends=[Biobase circlize clusterProfiler doParallel DOSE foreach GEOquery gplots HiveR limma parmigene randomForest RColorBrewer RISmed SummarizedExperiment TCGAbiolinks]; };
   MotifDb = derive2 { name="MotifDb"; version="1.36.0"; sha256="0a2zg26zzk7bj5c33mbwl8dx9lh1hns8q8kwp09rbfjdichv7425"; depends=[BiocGenerics Biostrings GenomicRanges IRanges rtracklayer S4Vectors splitstackshape]; };
-  MouseFM = derive2 { name="MouseFM"; version="1.4.1"; sha256="1b80syai2wj9xg3ivxnjqkb1nwkfwmkrm40j7g085fdmdd2r08q1"; depends=[biomaRt curl data_table dplyr GenomeInfoDb GenomicRanges ggplot2 gtools httr IRanges jsonlite reshape2 rlist scales tidyr]; };
+  MouseFM = derive2 { name="MouseFM"; version="1.4.2"; sha256="0pjqzf10541qd651m26l3265q01g1nziajy8428n1lwn9h2n74ai"; depends=[biomaRt curl data_table dplyr GenomeInfoDb GenomicRanges ggplot2 gtools httr IRanges jsonlite reshape2 rlist scales tidyr]; };
   MsBackendMassbank = derive2 { name="MsBackendMassbank"; version="1.2.0"; sha256="10dgck0rwzfxzlbdf8fclrci6858iqbl9g690fva4zsjllzykbl5"; depends=[BiocParallel DBI IRanges MsCoreUtils ProtGenerics S4Vectors Spectra]; };
   MsBackendMgf = derive2 { name="MsBackendMgf"; version="1.2.0"; sha256="0p7lmiijxgms01qsrgih9r8y5q355w67nqmpj5l70c0b52cv3ri9"; depends=[BiocParallel IRanges MsCoreUtils S4Vectors Spectra]; };
   MsBackendRawFileReader = derive2 { name="MsBackendRawFileReader"; version="1.0.0"; sha256="0gg71a5y6m46xnm45cmkjqbss4c416v8k8s21yp3qids7zc36izi"; depends=[BiocParallel IRanges MsCoreUtils rawrr S4Vectors Spectra]; };
-  MsCoreUtils = derive2 { name="MsCoreUtils"; version="1.6.0"; sha256="1w8d1v2r3plwwcz23zhbpvklhapf2a6x3xmglyh4sh6sy9ynkgrv"; depends=[clue MASS Rcpp S4Vectors]; };
+  MsCoreUtils = derive2 { name="MsCoreUtils"; version="1.6.2"; sha256="0614a830gf676ck8j5lkm04158pfvhjb61p3xfdd69gg3d44mk1d"; depends=[clue MASS Rcpp S4Vectors]; };
   MsFeatures = derive2 { name="MsFeatures"; version="1.2.0"; sha256="020ifrijlzdd3qk4bhd9z4knj5d87ildrkl3wcmxvwkvs9rbh8rq"; depends=[MsCoreUtils ProtGenerics SummarizedExperiment]; };
   Mulcom = derive2 { name="Mulcom"; version="1.44.0"; sha256="0s03qi0288fzzby5iyzgy4rarrxfxcyp6434755268vzz2s6pyj5"; depends=[Biobase fields]; };
   MultiAssayExperiment = derive2 { name="MultiAssayExperiment"; version="1.20.0"; sha256="1h3b8vqlbd04amjprxd1814zksdrbi01a0xn3906vkbqi43hfyn9"; depends=[Biobase BiocGenerics GenomicRanges IRanges S4Vectors SummarizedExperiment tidyr]; };
   MultiBaC = derive2 { name="MultiBaC"; version="1.4.0"; sha256="0pwg6zmrfqrzra1r6ai68ya5fjf6dy2sl035xnxl617iii96jada"; depends=[ggplot2 Matrix MultiAssayExperiment plotrix ropls]; };
   MultiDataSet = derive2 { name="MultiDataSet"; version="1.22.0"; sha256="17asldnxqvp3sijx7nbi2lbbgnq4iq8z72qlg9080sm5lga1yy1s"; depends=[Biobase BiocGenerics GenomicRanges ggplot2 ggrepel IRanges limma qqman S4Vectors SummarizedExperiment]; };
   MultiMed = derive2 { name="MultiMed"; version="2.16.0"; sha256="1dkvvrvjfc04ad48zywbrmbvm1lcnni6rvvl9gdax11y9lz19341"; depends=[]; };
-  MungeSumstats = derive2 { name="MungeSumstats"; version="1.2.0"; sha256="06n1nxk2hz9gx6wwz0wljxjhyjz3j4njjdwy0vx7zai7rzdv0211"; depends=[Biostrings BSgenome data_table dplyr GenomeInfoDb GenomicRanges googleAuthR httr jsonlite magrittr R_utils RCurl rtracklayer stringr VariantAnnotation]; };
-  MutationalPatterns = derive2 { name="MutationalPatterns"; version="3.4.0"; sha256="1n9rakj57yf17hay1bzvwc2h761yijmlflb3crg1bzwvmn32yhsl"; depends=[BiocGenerics Biostrings BSgenome cowplot dplyr GenomeInfoDb GenomicRanges ggalluvial ggdendro ggplot2 IRanges magrittr NMF pracma purrr RColorBrewer S4Vectors stringr tibble tidyr VariantAnnotation]; };
+  MungeSumstats = derive2 { name="MungeSumstats"; version="1.2.3"; sha256="04lv8yqpjwa6p9n6jpd9mpnnn0r1yv8b6rig6w1zgmhi31cigz7j"; depends=[Biostrings BSgenome data_table dplyr GenomeInfoDb GenomicRanges googleAuthR httr jsonlite magrittr R_utils RCurl rtracklayer stringr VariantAnnotation]; };
+  MutationalPatterns = derive2 { name="MutationalPatterns"; version="3.4.1"; sha256="0i6fq6736gvrqn45r7nrhl0ns45qwj1bl4yc6qlalw2g46mjxf6k"; depends=[BiocGenerics Biostrings BSgenome cowplot dplyr GenomeInfoDb GenomicRanges ggalluvial ggdendro ggplot2 IRanges magrittr NMF pracma purrr RColorBrewer S4Vectors stringr tibble tidyr VariantAnnotation]; };
   NADfinder = derive2 { name="NADfinder"; version="1.18.0"; sha256="0glcjxgydj2k7h4963fl465y398xqvq4g393ainvwcgz77kx4sk0"; depends=[ATACseqQC baseline BiocGenerics corrplot csaw EmpiricalBrownsMethod GenomeInfoDb GenomicAlignments GenomicRanges IRanges limma metap Rsamtools rtracklayer S4Vectors signal SummarizedExperiment trackViewer]; };
   NBAMSeq = derive2 { name="NBAMSeq"; version="1.10.0"; sha256="1him4qg3xmgisl3jsws690ciknvj2876xn8n9gxc8l08cihfminf"; depends=[BiocParallel DESeq2 genefilter mgcv S4Vectors SummarizedExperiment]; };
   NBSplice = derive2 { name="NBSplice"; version="1.12.0"; sha256="12i5zqzxqzh4rfqh02mf2lr9k7xsz1hb945lcng0fc01l7dawd0a"; depends=[BiocParallel car edgeR ggplot2 MASS mppa reshape2]; };
@@ -680,7 +670,7 @@ in with self; {
   OmicCircos = derive2 { name="OmicCircos"; version="1.32.0"; sha256="1lkncbdq93azp1gv0z4bwdi6l1gpywm096hhn45q7w6f0dy5ydqs"; depends=[GenomicRanges]; };
   OmicsLonDA = derive2 { name="OmicsLonDA"; version="1.10.0"; sha256="1vdnpsbpm4zyc17nah5qnlw66bihc7svqvbwgbxmyfp84c2vbxjy"; depends=[BiocGenerics BiocParallel ggplot2 gss plyr pracma SummarizedExperiment zoo]; };
   Omixer = derive2 { name="Omixer"; version="1.4.0"; sha256="1pdsxcih642csqga7wy93bbhib2v08pywa8aw67zy7p62hvrxwim"; depends=[dplyr forcats ggplot2 gridExtra magrittr readr stringr tibble tidyselect]; };
-  OmnipathR = derive2 { name="OmnipathR"; version="3.2.5"; sha256="0kmkbgkn6dw4jc0kd8p6pb2qvwyz1is24qld22h018v4rry3xa9s"; depends=[checkmate crayon curl digest dplyr httr igraph jsonlite later logger magrittr progress purrr rappdirs readr readxl rlang stringr tibble tidyr tidyselect xml2 yaml]; };
+  OmnipathR = derive2 { name="OmnipathR"; version="3.2.8"; sha256="0vr16ar3rbjsfw4qz2g86lbhvmqwgq0vcahc6vrc4d9rdjxwg6sb"; depends=[checkmate crayon curl digest dplyr httr igraph jsonlite later logger magrittr progress purrr rappdirs readr readxl rlang stringr tibble tidyr tidyselect xml2 yaml]; };
   OncoScore = derive2 { name="OncoScore"; version="1.22.0"; sha256="0pva48qjbxibgk2wxpaxr4xfq9i8dxbml418wx2nrjj20dn2dhcv"; depends=[biomaRt]; };
   OncoSimulR = derive2 { name="OncoSimulR"; version="3.2.0"; sha256="0dcx1qg42pxlcdpl07f53zkk32qpa8hd7fzdz5acvq3zm8yjmhlk"; depends=[car data_table dplyr ggplot2 ggrepel graph gtools igraph RColorBrewer Rcpp Rgraphviz smatr stringr]; };
   OpenStats = derive2 { name="OpenStats"; version="1.6.0"; sha256="17gvfvii7z8w9l6w5p0i05374d6sw704w627fnasbrcmkfqnvwka"; depends=[AICcmodavg car Hmisc jsonlite knitr MASS nlme rlist summarytools]; };
@@ -713,7 +703,7 @@ in with self; {
   PSEA = derive2 { name="PSEA"; version="1.28.0"; sha256="14whd775m4pvf0mggrdw0jyz5wrhqdyj647qvrnkjnvnfkhivh1a"; depends=[Biobase MASS]; };
   PSICQUIC = derive2 { name="PSICQUIC"; version="1.32.0"; sha256="0zqz9jyca75ahmkds61cl03i68n3v25n7nmfwc9niv23ikp18pj4"; depends=[BiocGenerics biomaRt httr IRanges plyr RCurl]; };
   PWMEnrich = derive2 { name="PWMEnrich"; version="4.30.0"; sha256="16nphxfmfrxpf6w4xccpr132a7jz34nhjv0rg58n6n7kfsf9h4k7"; depends=[BiocGenerics Biostrings evd gdata S4Vectors seqLogo]; };
-  PanVizGenerator = derive2 { name="PanVizGenerator"; version="1.22.0"; sha256="0rhx2jc5kc9bl00v16frh8b4075n0jqn4s37pkvqp3ypcbqws32d"; depends=[FindMyFriends igraph jsonlite pcaMethods shiny]; };
+  PanVizGenerator = derive2 { name="PanVizGenerator"; version="1.22.0"; sha256="0rhx2jc5kc9bl00v16frh8b4075n0jqn4s37pkvqp3ypcbqws32d"; depends=[igraph jsonlite pcaMethods shiny]; };
   Path2PPI = derive2 { name="Path2PPI"; version="1.24.0"; sha256="07a0z9islqnla01pmqni4a3l90iq1c4bwhycnarmdhhrcq4ms2v9"; depends=[igraph]; };
   PathNet = derive2 { name="PathNet"; version="1.34.0"; sha256="1syd5k54jj74f39z871a9xc5snslmsv6h9f0lacpf8chcpbs47hy"; depends=[]; };
   PathoStat = derive2 { name="PathoStat"; version="1.20.0"; sha256="0vaidkwnny60m0qpkraz6cnzmwm344niwk325dyqyc348r99bk1s"; depends=[ape BiocStyle ComplexHeatmap corpcor DESeq2 devtools dplyr DT edgeR ggplot2 glmnet gmodels knitr limma matrixStats phyloseq plotly plyr RColorBrewer rentrez reshape2 ROCR scales shiny shinyjs tidyr vegan webshot XML]; };
@@ -724,7 +714,7 @@ in with self; {
   PhenStat = derive2 { name="PhenStat"; version="2.30.0"; sha256="0b423kkbyyjk4ns4pdwh1lag2k0v7wn17h4l4aca3zkjrsf5522n"; depends=[car corrplot ggplot2 graph knitr lme4 logistf MASS msgps nlme nortest pingr reshape SmoothWin]; };
   PhenoGeneRanker = derive2 { name="PhenoGeneRanker"; version="1.2.0"; sha256="1x5fbipgsiz2ipg9yh2r8wr8w1s6q01vq4149gjjxgx779xz250n"; depends=[doParallel dplyr foreach igraph Matrix]; };
   PhosR = derive2 { name="PhosR"; version="1.4.0"; sha256="0ssfvc9qqj25j48srjjissq034f7giddx45w236yssaynw3ykslr"; depends=[BiocGenerics circlize dendextend dplyr e1071 GGally ggdendro ggplot2 ggpubr ggtext igraph limma network pcaMethods pheatmap preprocessCore RColorBrewer reshape2 rlang ruv S4Vectors SummarizedExperiment tidyr]; };
-  PhyloProfile = derive2 { name="PhyloProfile"; version="1.8.5"; sha256="06ky4bhhmk251j1rfa0l9vsy9zvc99l6b280l7p8zfhj2kbpr6h1"; depends=[ape BiocStyle bioDist Biostrings colourpicker data_table DT energy ExperimentHub ggplot2 gridExtra OmaDB pbapply plyr RColorBrewer RCurl shiny shinyBS shinyFiles shinyjs xml2 yaml zoo]; };
+  PhyloProfile = derive2 { name="PhyloProfile"; version="1.8.6"; sha256="157g1xj5iwyy9zmgd26jwws2qwln79pkn2chg6rmj54kslk1shyg"; depends=[ape BiocStyle bioDist Biostrings colourpicker data_table DT energy ExperimentHub ggplot2 gridExtra OmaDB pbapply plyr RColorBrewer RCurl shiny shinyBS shinyFiles shinyjs xml2 yaml zoo]; };
   Pi = derive2 { name="Pi"; version="2.6.0"; sha256="14bpqzwx59shx5467nj0g6wj58qh9zqhy1i9l1n1gk7wd52ig5ql"; depends=[BiocGenerics caret dnet dplyr GenomeInfoDb GenomicRanges ggnetwork ggplot2 ggrepel glmnet igraph IRanges lattice MASS Matrix osfr plot3D purrr randomForest RCircos readr ROCR scales supraHex tibble tidyr]; };
   Pigengene = derive2 { name="Pigengene"; version="1.20.0"; sha256="1rdz2d5fy6gpdvzv5vfgxngwkag062i6bvvjqkyflabn0yijjpmi"; depends=[BiocStyle bnlearn C50 clusterProfiler DBI dplyr gdata ggplot2 GO_db graph impute MASS matrixStats openxlsx partykit pheatmap preprocessCore ReactomePA Rgraphviz WGCNA]; };
   PloGO2 = derive2 { name="PloGO2"; version="1.6.0"; sha256="0i5b7nfifjx1ywvdq4mhvy3wzdg8cqdcc7sw1awsz9xfnrjnhcdp"; depends=[GO_db GOstats httr lattice openxlsx xtable]; };
@@ -738,13 +728,13 @@ in with self; {
   ProteoMM = derive2 { name="ProteoMM"; version="1.12.0"; sha256="1y7w6rs11kclh5nipnrh02ny12bgf2rkb2dghqcybl80s6r8m6bm"; depends=[biomaRt gdata ggplot2 ggrepel gtools matrixStats]; };
   ProteomicsAnnotationHubData = derive2 { name="ProteomicsAnnotationHubData"; version="1.24.0"; sha256="0qs5hbx7pww7qxxaimp2xqvs3lwcd41ndls0xcvvlk7pnp4i4sk8"; depends=[AnnotationHub AnnotationHubData Biobase BiocManager Biostrings GenomeInfoDb MSnbase mzR RCurl]; };
   PubScore = derive2 { name="PubScore"; version="1.6.0"; sha256="0b68pzz9iav2d18w6prpp4h6623mfm4qkp36mmr7jqd1ghgj4nc7"; depends=[dplyr ggplot2 ggrepel igraph intergraph network progress rentrez sna]; };
-  PureCN = derive2 { name="PureCN"; version="2.0.1"; sha256="0527sfywa692pvj1kh6xvciryivmvyx1czq502rj3qi3abdqzwl8"; depends=[Biobase BiocGenerics Biostrings data_table DNAcopy futile_logger GenomeInfoDb GenomicFeatures GenomicRanges ggplot2 gridExtra IRanges Matrix mclust RColorBrewer rhdf5 Rsamtools rtracklayer S4Vectors SummarizedExperiment VariantAnnotation VGAM]; };
+  PureCN = derive2 { name="PureCN"; version="2.0.2"; sha256="0hc752ylpd30hjicj76hqf582akdp5ayh1g2rhvc14v2pin452w8"; depends=[Biobase BiocGenerics Biostrings data_table DNAcopy futile_logger GenomeInfoDb GenomicFeatures GenomicRanges ggplot2 gridExtra IRanges Matrix mclust RColorBrewer rhdf5 Rsamtools rtracklayer S4Vectors SummarizedExperiment VariantAnnotation VGAM]; };
   Pviz = derive2 { name="Pviz"; version="1.28.0"; sha256="0n5bgnhngb38fgrjbibjs7wvmrglrlsr62c27y7k7rqckyrpv21l"; depends=[Biostrings biovizBase data_table GenomicRanges Gviz IRanges]; };
   QDNAseq = derive2 { name="QDNAseq"; version="1.30.0"; sha256="1sza9br8agpdz1k9fn5wisir44sj8v0rk4wbx35d2c2kp9q70pqj"; depends=[Biobase CGHbase CGHcall DNAcopy future_apply GenomicRanges IRanges matrixStats R_utils Rsamtools]; };
   QFeatures = derive2 { name="QFeatures"; version="1.4.0"; sha256="1rvdfs50hi4a6i9iah916c0yxl31yljs4k62mr839bi162zg4pj1"; depends=[AnnotationFilter Biobase BiocGenerics igraph IRanges lazyeval MsCoreUtils MultiAssayExperiment plotly ProtGenerics S4Vectors SummarizedExperiment]; };
   QSutils = derive2 { name="QSutils"; version="1.12.0"; sha256="1qcxarsk9625xsms0fpmlkrpzfbj4rnd8m03k6h1n08imj6x8z4d"; depends=[ape BiocGenerics Biostrings psych]; };
   QUBIC = derive2 { name="QUBIC"; version="1.22.0"; sha256="0arhrnn9mfcb3jppkxvv4a1g9rpziv53y9scin2gsk1qrqk17gfa"; depends=[biclust Matrix Rcpp RcppArmadillo]; };
-  Qtlizer = derive2 { name="Qtlizer"; version="1.8.0"; sha256="1a9fq4qv9qsgfkddpxdgl0m879aprf1sijmys83lrx834kggzy02"; depends=[curl GenomicRanges httr stringi]; };
+  Qtlizer = derive2 { name="Qtlizer"; version="1.8.1"; sha256="0jbk7jmxvxnya2myh0i6syii8cxk61fx5j431vk9rq4dcdylzxcs"; depends=[curl GenomicRanges httr stringi]; };
   QuartPAC = derive2 { name="QuartPAC"; version="1.26.0"; sha256="01v4icdwfx9l1md2wxcwh3qn8m7lc133slwdlssa0f1h6r2f7w0g"; depends=[data_table GraphPAC iPAC SpacePAC]; };
   QuasR = derive2 { name="QuasR"; version="1.34.0"; sha256="0d292xgaq8d3cdpa9anabda03lis46xc29iw9c5k5i3sj7dcr4g5"; depends=[AnnotationDbi Biobase BiocGenerics BiocParallel Biostrings BSgenome GenomeInfoDb GenomicFeatures GenomicFiles GenomicRanges IRanges Rbowtie Rhtslib Rsamtools rtracklayer S4Vectors ShortRead]; };
   QuaternaryProd = derive2 { name="QuaternaryProd"; version="1.28.0"; sha256="0ijig5jmh5b1dzsmibzij1hhdn4b3nz6rvjx9rdvk0rhs7nhh5c1"; depends=[dplyr Rcpp yaml]; };
@@ -848,10 +838,9 @@ in with self; {
   Ringo = derive2 { name="Ringo"; version="1.58.0"; sha256="0bjsyp6gsdgny0jg363z46sihqmv0xka7mzzkv1gjhiyk7zh8gs6"; depends=[Biobase BiocGenerics genefilter lattice limma Matrix RColorBrewer vsn]; };
   Risa = derive2 { name="Risa"; version="1.36.0"; sha256="0fmdsl86swj1sv6j4g3ljbcxp6xqnnxjpzqabjyzbicl3flmqcyv"; depends=[affy Biobase biocViews Rcpp xcms]; };
   Rmagpie = derive2 { name="Rmagpie"; version="1.50.0"; sha256="0yn1v4z25ifb00xg3mp0ajskv8502yl317pj2j04ax62qny95ykg"; depends=[Biobase e1071 kernlab pamr]; };
-  RmiR = derive2 { name="RmiR"; version="1.49.0"; sha256="16nwh4a97qvyicm4f102xs52lx8cld0b80fykgil86kkd6v8zlja"; depends=[DBI RmiR_Hs_miRNA]; };
   Rmmquant = derive2 { name="Rmmquant"; version="1.12.0"; sha256="0wklqi37jgdfsf26zgfhq0rvb6xvg4v9z197mcwirqp7y1jm8rmm"; depends=[BiocStyle DESeq2 devtools GenomicRanges org_Mm_eg_db Rcpp S4Vectors SummarizedExperiment TBX20BamSubset TxDb_Mmusculus_UCSC_mm9_knownGene]; };
   RnBeads = derive2 { name="RnBeads"; version="2.12.2"; sha256="042bh4p567xkwqn0hxqji7mk0lhbh0vxdrrhcpya22yyrs1716d0"; depends=[BiocGenerics cluster ff fields GenomicRanges ggplot2 gplots gridExtra illuminaio IRanges limma MASS matrixStats methylumi plyr S4Vectors]; };
-  RnaSeqSampleSize = derive2 { name="RnaSeqSampleSize"; version="2.4.0"; sha256="04zf30583wdn2q7wnj3hp81sa1h4dhd6yvl22sj0yxdqw919jvrj"; depends=[biomaRt edgeR heatmap3 KEGGREST matlab Rcpp RnaSeqSampleSizeData]; };
+  RnaSeqSampleSize = derive2 { name="RnaSeqSampleSize"; version="2.4.1"; sha256="1rmzgvkf3vpdpjx792lcgk3j0br5mbp36cb0hzz5y10fn8qxyml8"; depends=[biomaRt edgeR heatmap3 KEGGREST matlab Rcpp RnaSeqSampleSizeData]; };
   Rnits = derive2 { name="Rnits"; version="1.28.0"; sha256="0wzg0wq0kyarl6s8lmmd6nkqfvvph46bvd4wxh5zy94zqbad7q0b"; depends=[affy Biobase boot ggplot2 impute limma qvalue reshape2]; };
   RpsiXML = derive2 { name="RpsiXML"; version="2.36.0"; sha256="19jc5dhwyy2z1cwbvgvw54v7kkbgh7g0wzy4frxv91zdgaj7wmhy"; depends=[annotate AnnotationDbi Biobase graph hypergraph RBGL XML]; };
   Rqc = derive2 { name="Rqc"; version="1.28.0"; sha256="0hcxkrfja0gmd8r2llijdvaw2xiiplk037305inimz0qna6w2071"; depends=[BiocGenerics BiocParallel BiocStyle Biostrings biovizBase GenomicAlignments GenomicFiles ggplot2 IRanges knitr markdown plyr Rcpp reshape2 Rsamtools S4Vectors shiny ShortRead]; };
@@ -885,7 +874,7 @@ in with self; {
   SIMD = derive2 { name="SIMD"; version="1.12.0"; sha256="0bsp7ma0c9j9k3agxchyp54kp126qjvgmaqgi2flgmgwnmkwwbii"; depends=[edgeR methylMnM statmod]; };
   SIMLR = derive2 { name="SIMLR"; version="1.20.0"; sha256="19vhv7j29hiimznazpz986api12ry6pd8cgpkwrnwybr4gdvkm7c"; depends=[Matrix pracma Rcpp RcppAnnoy RSpectra]; };
   SISPA = derive2 { name="SISPA"; version="1.24.0"; sha256="1gzcc2vq9wvsh92lp80y0dlsi67bws6ng76ab2a4ak1n2lqhm7ak"; depends=[changepoint data_table genefilter ggplot2 GSVA plyr]; };
-  SLGI = derive2 { name="SLGI"; version="1.54.0"; sha256="03jwdq4k44rys3f773c6l985a6v1bacbdghw97p0qpwspmzra8rs"; depends=[AnnotationDbi Biobase BiocGenerics GO_db lattice ScISI]; };
+  SLGI = derive2 { name="SLGI"; version="1.54.0"; sha256="03jwdq4k44rys3f773c6l985a6v1bacbdghw97p0qpwspmzra8rs"; depends=[AnnotationDbi Biobase BiocGenerics GO_db lattice]; };
   SLqPCR = derive2 { name="SLqPCR"; version="1.60.0"; sha256="1sy722nw7fax0m9nnv2d3gy9g5fc4x2xfar521x7x7psfydmy5b6"; depends=[]; };
   SMAD = derive2 { name="SMAD"; version="1.10.0"; sha256="1l0x22cg14aj40039jzw1yl3cncil91nv97y9sqs54ay8rvyr5aj"; depends=[dplyr magrittr Rcpp RcppAlgos tidyr]; };
   SMAP = derive2 { name="SMAP"; version="1.58.0"; sha256="03fdxaqsxjdq93xazw8rgv22smdwr0ji1rcf6rk20a0p0wvrdpxh"; depends=[]; };
@@ -909,7 +898,6 @@ in with self; {
   STROMA4 = derive2 { name="STROMA4"; version="1.18.0"; sha256="10v8kgmx79zd2vgzwij3il80l724sdl0k4a3rm73kd4jw2wvhkrh"; depends=[Biobase BiocParallel cluster matrixStats]; };
   SWATH2stats = derive2 { name="SWATH2stats"; version="1.24.0"; sha256="0ifl1y3rs0r2zqkpcpiibyv12mjqz6wxs296f691k1qfz9qvx8kg"; depends=[biomaRt data_table ggplot2 reshape2]; };
   SamSPECTRAL = derive2 { name="SamSPECTRAL"; version="1.48.0"; sha256="1xxz5ggxj10psrz5rm0xjr8mxwc3cfyl9chsa9w2wxrrixypdnah"; depends=[]; };
-  ScISI = derive2 { name="ScISI"; version="1.65.0"; sha256="0q3bbfsink5d8xslhp129qwvlq5mdzw8zkv9msd0q8qmkclsbiz1"; depends=[annotate AnnotationDbi apComplex GO_db org_Sc_sgd_db RpsiXML]; };
   Scale4C = derive2 { name="Scale4C"; version="1.16.0"; sha256="0gw89mnnpspi5y03ck8gqinnwbkykmf2k65gxm8m9j4l63gg33m8"; depends=[GenomicRanges IRanges smoothie SummarizedExperiment]; };
   ScaledMatrix = derive2 { name="ScaledMatrix"; version="1.2.0"; sha256="0vz8441gl5gycy1ypybwhq97bnyvhhlg6gxpi1dsdy2c9b6d81kc"; depends=[DelayedArray Matrix S4Vectors]; };
   Sconify = derive2 { name="Sconify"; version="1.14.0"; sha256="0dan0nbar8f5x6l7cwlx4f4yycpxj3j3f0xx3nfm8n07g1gbcf04"; depends=[dplyr flowCore FNN ggplot2 magrittr readr Rtsne tibble]; };
@@ -938,7 +926,7 @@ in with self; {
   SpatialDecon = derive2 { name="SpatialDecon"; version="1.4.3"; sha256="11hb28m7h78cvzz9s545jzssnbxjbhfmdb03rxbvxq1rdh0whljr"; depends=[Biobase GeomxTools Matrix repmis SeuratObject]; };
   SpatialExperiment = derive2 { name="SpatialExperiment"; version="1.4.0"; sha256="1jn2xr51hv1pm53pgsilhbwal0bnz7mc17z5plpjxgh7jn9bx4x2"; depends=[BiocFileCache BiocGenerics DropletUtils magick rjson S4Vectors SingleCellExperiment SummarizedExperiment]; };
   SpeCond = derive2 { name="SpeCond"; version="1.48.0"; sha256="1mpzf9l7yim59wfg244rzqxm9vb10lp88688p5v2whcv5xx0a34a"; depends=[Biobase fields hwriter mclust RColorBrewer]; };
-  Spectra = derive2 { name="Spectra"; version="1.4.1"; sha256="01vaxhk1xz54wxcywnsx8z3qbjchg1i8rv0ks7i2c72sqmamhajc"; depends=[BiocGenerics BiocParallel fs IRanges MsCoreUtils ProtGenerics S4Vectors]; };
+  Spectra = derive2 { name="Spectra"; version="1.4.3"; sha256="0dyjczbvyxx86rqw8h2svgx5ridil7nwb7lj675j8vgj5dcn0rza"; depends=[BiocGenerics BiocParallel fs IRanges MsCoreUtils ProtGenerics S4Vectors]; };
   SpectralTAD = derive2 { name="SpectralTAD"; version="1.10.0"; sha256="00yx87zkyyzpzkm9slmhs78pqivcfladsrnvh3wwlkgi2rky7qps"; depends=[BiocParallel cluster dplyr GenomicRanges HiCcompare magrittr Matrix PRIMME]; };
   SpidermiR = derive2 { name="SpidermiR"; version="1.24.0"; sha256="1mwqfg5vgc262bhjnbhn8yvjgmqyafc9kzln1a5pidpj5gyr757q"; depends=[AnnotationDbi gdata ggplot2 gplots gridExtra httr igraph lattice latticeExtra MAGeCKFlute miRNAtap miRNAtap_db org_Hs_eg_db TCGAbiolinks]; };
   SplicingFactory = derive2 { name="SplicingFactory"; version="1.2.0"; sha256="0gdk14591slhwnb6rpnksdirzgd7ga03sqkr3k7wndgk5h6dp2jb"; depends=[SummarizedExperiment]; };
@@ -973,7 +961,7 @@ in with self; {
   TIN = derive2 { name="TIN"; version="1.26.0"; sha256="07m8q3lgcflmrchpw88y4w62iwq5cxd0sw1lbassvgych7dnq3ks"; depends=[aroma_affymetrix data_table impute squash stringr WGCNA]; };
   TMixClust = derive2 { name="TMixClust"; version="1.16.0"; sha256="1i69q92ss9q2vv6hyxvq8wv55w1937rmda43a8qfblzy0jr5avww"; depends=[Biobase BiocParallel cluster flexclust gss mvtnorm SPEM zoo]; };
   TNBC_CMS = derive2 { name="TNBC.CMS"; version="1.10.0"; sha256="1iz2jb895hsliavk9g93mvvccla461cmifmsam3qdscj09gfl17x"; depends=[e1071 forestplot GGally ggplot2 ggpubr GSVA pheatmap pracma quadprog R_utils RColorBrewer SummarizedExperiment survival]; };
-  TOAST = derive2 { name="TOAST"; version="1.7.1"; sha256="1r0kpk6i1b5r5swp4l5yw8mid719li4yqa82p9kzmgg7z0xxvmaz"; depends=[corpcor EpiDISH limma nnls SummarizedExperiment]; };
+  TOAST = derive2 { name="TOAST"; version="1.8.2"; sha256="1j0a3ll0mkp0jgw8hfl8xs5yj4baqjxfvg09zb8sh82jim1my77z"; depends=[corpcor doParallel EpiDISH GGally ggplot2 limma nnls quadprog SummarizedExperiment tidyr]; };
   TPP = derive2 { name="TPP"; version="3.22.1"; sha256="0vr8sv22rhhrv63arz33vbkp5i3cwd03bz54qwx3zbdcf5l3snhy"; depends=[Biobase biobroom broom data_table doParallel dplyr foreach futile_logger ggplot2 gridExtra knitr limma magrittr MASS mefa nls2 openxlsx plyr purrr RColorBrewer RCurl reshape2 rmarkdown stringr tibble tidyr VennDiagram VGAM]; };
   TPP2D = derive2 { name="TPP2D"; version="1.10.0"; sha256="183gf3v1nj0nqll817whxdif0kiwscil88ig0vjj1hn3936q59v6"; depends=[BiocParallel doParallel dplyr foreach ggplot2 limma MASS openxlsx RCurl stringr tidyr]; };
   TRESS = derive2 { name="TRESS"; version="1.0.0"; sha256="0zmzbpzhcsykbpifs5m8md2lhami0ya7y9sf2rdmadgbx17gvzj7"; depends=[AnnotationDbi GenomicFeatures GenomicRanges IRanges Matrix matrixStats Rsamtools rtracklayer S4Vectors]; };
@@ -1023,7 +1011,6 @@ in with self; {
   ViSEAGO = derive2 { name="ViSEAGO"; version="1.8.0"; sha256="0chb10y97j7kv00i4wbnkxyd7iwf28ybdnkd4ijsamf7ddl814hq"; depends=[AnnotationDbi AnnotationForge biomaRt data_table dendextend DiagrammeR DT dynamicTreeCut fgsea ggplot2 GO_db GOSemSim heatmaply htmlwidgets igraph plotly processx R_utils RColorBrewer scales topGO UpSetR]; };
   VplotR = derive2 { name="VplotR"; version="1.4.0"; sha256="0ahf7nqxymx46w3rs8qq6jpvw41avzmssw7apnax13x9gn29kbg6"; depends=[cowplot GenomeInfoDb GenomicAlignments GenomicRanges ggplot2 IRanges magrittr RColorBrewer reshape2 Rsamtools S4Vectors zoo]; };
   Wrench = derive2 { name="Wrench"; version="1.12.0"; sha256="1vzv7sswijgb8nq58yrc19wlw2nnpjvans86fqqzs4p8wvq8j06n"; depends=[limma locfit matrixStats]; };
-  XCIR = derive2 { name="XCIR"; version="1.7.0"; sha256="0n42pw01wv1sk06hby9kwijx6zwaw4lrlpsa0wlkrkf323slkllw"; depends=[biomaRt data_table ggplot2 IRanges readxl S4Vectors seqminer VariantAnnotation]; };
   XDE = derive2 { name="XDE"; version="2.40.0"; sha256="0f7liqy2gf6ka7wjj591yi8805m3nn21c440vz9iqsanszxnsi6q"; depends=[Biobase BiocGenerics genefilter GeneMeta gtools mvtnorm RColorBrewer siggenes]; };
   XINA = derive2 { name="XINA"; version="1.12.0"; sha256="14j1rn3p7i0rlqkbbg0a6pyhb97ifzvsbw6vfxw9pna7zv7rbhsp"; depends=[alluvial ggplot2 gridExtra igraph mclust plyr STRINGdb]; };
   XNAString = derive2 { name="XNAString"; version="1.2.2"; sha256="0rc02n3dijcmfj9dr02zlvqr38vmjy3w2drj2fg8i7yrhqp51a9l"; depends=[Biostrings BSgenome data_table formattable future_apply GenomicRanges IRanges Rcpp S4Vectors stringi stringr]; };
@@ -1069,20 +1056,20 @@ in with self; {
   antiProfiles = derive2 { name="antiProfiles"; version="1.34.0"; sha256="0h9jvb579vy8744mmhg5m7964f24pwm4v02fivxq0z06ccbm79dm"; depends=[locfit matrixStats]; };
   apComplex = derive2 { name="apComplex"; version="2.60.0"; sha256="09014csh7wic7hsjri45ply2fkg93gq7xp4ckaj0yr4invjrw3m3"; depends=[graph org_Sc_sgd_db RBGL Rgraphviz]; };
   apeglm = derive2 { name="apeglm"; version="1.16.0"; sha256="11w4vyc1sllmm5lh42krhidazid78n4s3lhikpy9kk2l57jmifbr"; depends=[emdbook GenomicRanges Rcpp RcppEigen RcppNumerical SummarizedExperiment]; };
-  appreci8R = derive2 { name="appreci8R"; version="1.12.0"; sha256="10sxxsp1c3mmhf4pgqb71vpj3izy16dcm30gklw5axkv45lkpp7f"; depends=[Biostrings BSgenome BSgenome_Hsapiens_UCSC_hg19 COSMIC_67 DT GenomicFeatures GenomicRanges GenomicScores Homo_sapiens IRanges MafDb_1Kgenomes_phase3_hs37d5 MafDb_ExAC_r1_0_hs37d5 MafDb_gnomADex_r2_1_hs37d5 openxlsx PolyPhen_Hsapiens_dbSNP131 rentrez Rsamtools rsnps S4Vectors seqinr shiny shinyjs SIFT_Hsapiens_dbSNP137 SNPlocs_Hsapiens_dbSNP144_GRCh37 stringr SummarizedExperiment TxDb_Hsapiens_UCSC_hg19_knownGene VariantAnnotation XtraSNPlocs_Hsapiens_dbSNP144_GRCh37]; };
+  appreci8R = derive2 { name="appreci8R"; version="1.12.1"; sha256="15dp3arq80cmqnbd7qnca7liy5hrmm96f5x9z1y9zkhpr0q6jpgv"; depends=[Biostrings BSgenome BSgenome_Hsapiens_UCSC_hg19 COSMIC_67 DT GenomicFeatures GenomicRanges GenomicScores Homo_sapiens IRanges MafDb_1Kgenomes_phase3_hs37d5 MafDb_ExAC_r1_0_hs37d5 MafDb_gnomADex_r2_1_hs37d5 openxlsx PolyPhen_Hsapiens_dbSNP131 rentrez Rsamtools rsnps S4Vectors seqinr shiny shinyjs SIFT_Hsapiens_dbSNP137 SNPlocs_Hsapiens_dbSNP144_GRCh37 stringr SummarizedExperiment TxDb_Hsapiens_UCSC_hg19_knownGene VariantAnnotation XtraSNPlocs_Hsapiens_dbSNP144_GRCh37]; };
   aroma_light = derive2 { name="aroma.light"; version="3.24.0"; sha256="12qa85hsp8d1xhgn27iymknbhpnp9bd7hsgqxwvp1i8kki06z5hp"; depends=[matrixStats R_methodsS3 R_oo R_utils]; };
   arrayMvout = derive2 { name="arrayMvout"; version="1.52.0"; sha256="180bdk6p1lmd24ihc90b8r6dgr0vgclassgzblnwd95ya68a25xq"; depends=[affy affyContam Biobase lumi mdqc parody]; };
   arrayQuality = derive2 { name="arrayQuality"; version="1.72.0"; sha256="1qlg9xb17sgxfbsnxqs48qzmxc5fhchv5sszxxafkjd0pbfzkllv"; depends=[gridBase hexbin limma marray RColorBrewer]; };
   arrayQualityMetrics = derive2 { name="arrayQualityMetrics"; version="3.50.0"; sha256="034xdnqvgwqy1wh17mmjzmhzj0iy8sdx4al0ngdxdfnxcjk4gfny"; depends=[affy affyPLM beadarray Biobase genefilter gridSVG Hmisc hwriter lattice latticeExtra limma RColorBrewer setRNG svglite vsn XML]; };
   artMS = derive2 { name="artMS"; version="1.12.0"; sha256="0gaxd759zv273jh15l5zifh7k995sx8yda097lhjafdph7jmf0nh"; depends=[AnnotationDbi bit64 circlize cluster corrplot data_table dplyr getopt ggdendro ggplot2 ggrepel gplots limma MSstats openxlsx org_Hs_eg_db pheatmap plotly plyr RColorBrewer scales seqinr stringr tidyr UpSetR VennDiagram yaml]; };
   atSNP = derive2 { name="atSNP"; version="1.10.0"; sha256="0yy731ivpcrmjwpljxzvlk7n2pygydw2q58gq90d1midch1nf0lx"; depends=[BiocFileCache BiocParallel BSgenome data_table ggplot2 lifecycle motifStack rappdirs Rcpp testthat]; };
-  atena = derive2 { name="atena"; version="1.0.1"; sha256="0v7asl17wvdj5qbss2kpkb2xvkmlxf04f7f1cmkzk8kv0xa9qa1h"; depends=[BiocGenerics BiocParallel GenomeInfoDb GenomicAlignments GenomicRanges IRanges Matrix Rsamtools S4Vectors sparseMatrixStats SQUAREM SummarizedExperiment]; };
+  atena = derive2 { name="atena"; version="1.0.5"; sha256="0w593x10xls1ypbagdwb7cpfjfdxcd98rm7c4i09qg5zdrwad476"; depends=[BiocGenerics BiocParallel GenomeInfoDb GenomicAlignments GenomicRanges IRanges Matrix Rsamtools S4Vectors sparseMatrixStats SQUAREM SummarizedExperiment]; };
   attract = derive2 { name="attract"; version="1.46.0"; sha256="1vh6wgi6wmjry25khzbq32s67jjn581zjhhfqbl7y2dkfq2fvybf"; depends=[AnnotationDbi Biobase cluster GOstats KEGGREST limma org_Hs_eg_db reactome_db]; };
   autonomics = derive2 { name="autonomics"; version="1.2.0"; sha256="1j0nsbdw7sahy031bvp8pg8a1fg7ql0is65d0mfh8345lbmr29sn"; depends=[abind assertive BiocFileCache BiocGenerics colorspace data_table edgeR ggplot2 ggrepel gridExtra limma magrittr matrixStats MultiAssayExperiment pcaMethods R_utils rappdirs readxl rlang S4Vectors scales stringi SummarizedExperiment tidyr]; };
   awst = derive2 { name="awst"; version="1.2.0"; sha256="0qxi4f7ngfsx17q9szhl95bhihcfx36bw4n175zyfdnac6cb9kap"; depends=[SummarizedExperiment]; };
   bacon = derive2 { name="bacon"; version="1.22.0"; sha256="13dhma34j9ggryainn4x6qvd3hphpxks5gf0mysia00r9hhpwwlc"; depends=[BiocParallel ellipse ggplot2]; };
   ballgown = derive2 { name="ballgown"; version="2.26.0"; sha256="0fiky82arvgzgxrm4bqn74m5kngqpdaqf6ks4cr89nlnhfq0v6rf"; depends=[Biobase GenomeInfoDb GenomicRanges IRanges limma RColorBrewer rtracklayer S4Vectors sva]; };
-  bambu = derive2 { name="bambu"; version="2.0.3"; sha256="0yfkmihy8gn55hps2cmldhq26f8lp2ad4iyp601rrmim6s7axwsc"; depends=[BiocGenerics BiocParallel data_table dplyr GenomeInfoDb GenomicAlignments GenomicFeatures GenomicRanges IRanges Rcpp RcppArmadillo Rsamtools S4Vectors SummarizedExperiment tidyr xgboost]; };
+  bambu = derive2 { name="bambu"; version="2.0.6"; sha256="049pc2npfzmlxpnypi5gfvick5jq6yj6clwy388ijz9g3b50x5d9"; depends=[BiocGenerics BiocParallel BSgenome data_table dplyr GenomeInfoDb GenomicAlignments GenomicFeatures GenomicRanges IRanges Rcpp RcppArmadillo Rsamtools S4Vectors SummarizedExperiment tidyr xgboost]; };
   bamsignals = derive2 { name="bamsignals"; version="1.26.0"; sha256="03m3yaagplh7j4q5hp3cfcdqwsnh1pwrlla9cv3ajnfd83s8ncqv"; depends=[BiocGenerics GenomicRanges IRanges Rcpp Rhtslib zlibbioc]; };
   banocc = derive2 { name="banocc"; version="1.18.0"; sha256="0p5v601j1lkgh9prlvalp3xpqw87xq7ql0bak212443n15pfj3a4"; depends=[coda mvtnorm rstan stringr]; };
   barcodetrackR = derive2 { name="barcodetrackR"; version="1.2.0"; sha256="1z7sj2ykp34g9bf0x0s3qavrprbiaksgk5r4hsakb24jjbi65jnh"; depends=[circlize cowplot dplyr ggdendro ggplot2 ggridges magrittr plyr proxy RColorBrewer rlang S4Vectors scales shiny SummarizedExperiment tibble tidyr vegan viridis]; };
@@ -1139,7 +1126,7 @@ in with self; {
   caOmicsV = derive2 { name="caOmicsV"; version="1.24.0"; sha256="0snr67g9bqwyvrr1gxmgdjhrybgcpl38dwik583752sgdyf84c6p"; depends=[bc3net igraph]; };
   cageminer = derive2 { name="cageminer"; version="1.0.0"; sha256="140w8ccm5j5kl3gyn6437a2zqlzf5277k3g3c9i22n1jkdp947yn"; depends=[BioNERO GenomeInfoDb GenomicRanges ggbio ggplot2 ggtext IRanges reshape2]; };
   calm = derive2 { name="calm"; version="1.8.0"; sha256="1sq78fv4s6ja9yw84k20zl10pbkk8g2kf38p6nbxkhi4rvz8b5r2"; depends=[mgcv]; };
-  canceR = derive2 { name="canceR"; version="1.28.0"; sha256="1iii7r1dg4khplqacr1lncks7iqqvgzqfb5vd84bbw2cvc9dbl63"; depends=[Biobase cgdsr circlize Formula geNetClassifier GSEABase phenoTest plyr rpart RUnit survival tcltk2 tkrplot]; };
+  canceR = derive2 { name="canceR"; version="1.28.02"; sha256="00h8jklisp1vapqz8z4l4qk2273p2n33f0sfrgc6gpraiypvqr10"; depends=[Biobase cgdsr circlize Formula geNetClassifier GSEABase phenoTest plyr rpart RUnit survival tcltk2 tkrplot]; };
   cancerclass = derive2 { name="cancerclass"; version="1.38.0"; sha256="1kp764g9jms7r95wh58c4d1yli7xfvhfvi50x2s8rzi4bhi3zik6"; depends=[binom Biobase]; };
   casper = derive2 { name="casper"; version="2.28.0"; sha256="0z85zq5crf3806c16hv0gpv072k2bf7hdyhq958y33282wybr4zd"; depends=[Biobase BiocGenerics coda EBarrays gaga GenomeInfoDb GenomicFeatures GenomicRanges gtools IRanges limma mgcv Rsamtools rtracklayer S4Vectors sqldf survival VGAM]; };
   categoryCompare = derive2 { name="categoryCompare"; version="1.38.0"; sha256="1175is4gr6nr393lk5ha2c3rqsdzsl1mfnhkajcym8n0927rx8n8"; depends=[annotate AnnotationDbi Biobase BiocGenerics Category colorspace GOstats graph GSEABase hwriter RCy3]; };
@@ -1148,7 +1135,7 @@ in with self; {
   ccfindR = derive2 { name="ccfindR"; version="1.14.0"; sha256="00xaspkckhnflkaj0wfs06kbz6y6cfshr1mq4zhh7yszppgqflzd"; depends=[ape gtools irlba Matrix RColorBrewer Rcpp RcppEigen Rdpack Rmpi Rtsne S4Vectors SingleCellExperiment SummarizedExperiment]; };
   ccmap = derive2 { name="ccmap"; version="1.20.0"; sha256="1z5lyv7m55wcncjlrqzflmp1jm2580k1pvajj3gjqif8kx477q3d"; depends=[AnnotationDbi BiocManager ccdata data_table doParallel foreach lsa xgboost]; };
   ccrepe = derive2 { name="ccrepe"; version="1.30.0"; sha256="05wazs9bv4nlkzb3r98v31w0vpkv4071f9zw9dlh9jd8cm91ppk1"; depends=[infotheo]; };
-  ceRNAnetsim = derive2 { name="ceRNAnetsim"; version="1.6.0"; sha256="126wkhzj2f5b691jc34a6cqn2rznv531gg1cqfqs4j7k47hfy0in"; depends=[dplyr furrr future ggplot2 ggraph igraph purrr rlang tibble tidygraph tidyr]; };
+  ceRNAnetsim = derive2 { name="ceRNAnetsim"; version="1.6.99"; sha256="1309ccqq3p970p5v0b2syqv91vs2d0svij0xdqzr6g46sazgkrr7"; depends=[dplyr furrr future ggplot2 ggraph igraph purrr rlang tibble tidygraph tidyr]; };
   celaref = derive2 { name="celaref"; version="1.12.0"; sha256="0rxcy7sw1l2r8j1sralvqwl7ml2hf6x74qmfam87s6gal021z6qj"; depends=[BiocGenerics DelayedArray dplyr ggplot2 magrittr MAST Matrix readr rlang S4Vectors SummarizedExperiment tibble]; };
   celda = derive2 { name="celda"; version="1.10.0"; sha256="1qlkkh1h6pjv6rjk5p50iq1dhzn1l6sqnm61y6jlg1hqkdc76wbb"; depends=[circlize ComplexHeatmap data_table dbscan DelayedArray digest doParallel enrichR foreach ggplot2 ggrepel gtable Matrix matrixStats MCMCprecision multipanelfigure plyr RColorBrewer Rcpp RcppEigen reshape2 Rtsne S4Vectors scales scater scran SingleCellExperiment stringr SummarizedExperiment uwot withr]; };
   cellHTS2 = derive2 { name="cellHTS2"; version="2.58.0"; sha256="0h5vif8xi7axfh41mmp0b8zm1r07mnlnqq6bp0fkwqyas7gbzahh"; depends=[Biobase BiocGenerics Category genefilter GSEABase hwriter locfit RColorBrewer splots vsn]; };
@@ -1195,11 +1182,9 @@ in with self; {
   coMET = derive2 { name="coMET"; version="1.26.0"; sha256="0n4fhhx27qrqs855qjx6ng7xdgcxlv3krj5sy4sxrhsahslad9v4"; depends=[biomaRt colortools corrplot GenomicRanges gridExtra Gviz hash IRanges psych rtracklayer S4Vectors]; };
   coRdon = derive2 { name="coRdon"; version="1.12.0"; sha256="1m5k0cp61x50izgpb748h8dh2ab98i3vlsf63lhcvhvirind96fw"; depends=[Biobase Biostrings data_table dplyr ggplot2 purrr stringr]; };
   codelink = derive2 { name="codelink"; version="1.62.0"; sha256="13ydy59qk5walsifyl8gfd181wbkf1jam3242407fsskw5ia4kfv"; depends=[annotate Biobase BiocGenerics limma]; };
-  coexnet = derive2 { name="coexnet"; version="1.15.0"; sha256="1h3l7rjk757qbddyg0p8l21h8z3i4n3ml295lmavszsm9knyc2fk"; depends=[acde affy Biobase GEOquery igraph limma minet rmarkdown siggenes STRINGdb SummarizedExperiment vsn]; };
   cogena = derive2 { name="cogena"; version="1.28.0"; sha256="077cmcsqvc2d26ywm6537l538pnn9473sh3q0z91zvmw0886iava"; depends=[amap apcluster Biobase biwt class cluster corrplot devtools doParallel dplyr fastcluster foreach ggplot2 gplots kohonen mclust reshape2 stringr tibble tidyr]; };
   cola = derive2 { name="cola"; version="2.0.0"; sha256="13ibslqhqa0xgg79n3cbgpmzlhf9nhibn4wm4mdcyxarxlqlqrsh"; depends=[BiocGenerics brew circlize clue cluster ComplexHeatmap crayon digest doParallel eulerr foreach GetoptLong GlobalOptions httr impute irlba knitr markdown matrixStats mclust microbenchmark png RColorBrewer Rcpp skmeans xml2]; };
   combi = derive2 { name="combi"; version="1.6.0"; sha256="0wca0wjmyr0jfy366b2xqfk56qd1y2s43ccbnhbzmvaj7hafnnbc"; depends=[alabama BB Biobase cobs ggplot2 limma Matrix nleqslv phyloseq reshape2 SummarizedExperiment tensor vegan]; };
-  compEpiTools = derive2 { name="compEpiTools"; version="1.27.0"; sha256="0hk3yd7ql91wg9r24r57ybhs1nx6zbd5v199sv7xd91k980n2ay5"; depends=[AnnotationDbi BiocGenerics Biostrings GenomeInfoDb GenomicFeatures GenomicRanges GO_db gplots IRanges methylPipe Rsamtools S4Vectors topGO XVector]; };
   compartmap = derive2 { name="compartmap"; version="1.12.0"; sha256="0dhkrskw1hb2vxq3dkxl6ccf0mxpydszpd7d6lpqrk2x62i7hhk5"; depends=[BiocSingular DelayedArray DelayedMatrixStats GenomicRanges ggplot2 HDF5Array Matrix RaggedExperiment reshape2 RMTstat rtracklayer scales SummarizedExperiment]; };
   compcodeR = derive2 { name="compcodeR"; version="1.30.0"; sha256="0793wkv967w5sicg4spx1mw48pgn18rwb7wkcqc98sc7d0fvi1vb"; depends=[caTools edgeR ggplot2 gplots gtools KernSmooth knitr lattice limma markdown MASS modeest ROCR sm stringr vioplot]; };
   conclus = derive2 { name="conclus"; version="1.2.0"; sha256="1c4n4ybm0ppd83ydhxghs5kv93djqxin0ppkg4n6rbjw7m9qx1p2"; depends=[AnnotationDbi Biobase BiocFileCache biomaRt clusterProfiler dbscan doParallel dplyr factoextra foreach fpc GEOquery ggplot2 gridExtra pheatmap Rtsne scales scater scran SingleCellExperiment stringr SummarizedExperiment]; };
@@ -1237,13 +1222,13 @@ in with self; {
   cycle = derive2 { name="cycle"; version="1.48.0"; sha256="1zcxvf41ick80pi929vabbs632dml2rcxwjzz5z5pvz9ppm70vab"; depends=[Biobase Mfuzz]; };
   cydar = derive2 { name="cydar"; version="1.18.0"; sha256="0wsfcwfsm7lf6q13cgcwg189zjabdxnlaqbdb6gh1pk27mh3s70g"; depends=[Biobase BiocGenerics BiocNeighbors BiocParallel flowCore Rcpp S4Vectors shiny SingleCellExperiment SummarizedExperiment viridis]; };
   cytoKernel = derive2 { name="cytoKernel"; version="1.0.0"; sha256="1n48bz8ainax53m6d5i5zyjlja3v5nv9vhx45r5746sr9rppbljw"; depends=[ashr BiocParallel circlize ComplexHeatmap data_table dplyr magrittr Rcpp rlang S4Vectors SummarizedExperiment]; };
-  cytolib = derive2 { name="cytolib"; version="2.6.1"; sha256="16m5w6cp28p4fs2p8c8rjcg1d686xl8mpas816i7zxfh8m0bcqc9"; depends=[BH Rcpp RcppArmadillo RcppParallel Rhdf5lib RProtoBufLib]; };
+  cytolib = derive2 { name="cytolib"; version="2.6.2"; sha256="0ycr4wmkfi0rvzwicblkfjgppk72gwwpim0rfiz1s44lycsf4py5"; depends=[BH Rcpp RcppArmadillo RcppParallel Rhdf5lib RProtoBufLib]; };
   cytomapper = derive2 { name="cytomapper"; version="1.6.0"; sha256="0vmklch5g82pbhpax2flizglyndhs1dmdq015wclj0a9wyflzn6d"; depends=[BiocParallel DelayedArray EBImage ggbeeswarm ggplot2 HDF5Array matrixStats raster RColorBrewer rhdf5 S4Vectors shiny shinydashboard SingleCellExperiment SummarizedExperiment svglite svgPanZoom viridis]; };
   dStruct = derive2 { name="dStruct"; version="1.0.0"; sha256="0sy05n0zgd9d8jm352drw7xbcd37ghxzq7fwc3icm8hgqfx43qyk"; depends=[ggplot2 IRanges purrr reshape2 rlang S4Vectors zoo]; };
   daMA = derive2 { name="daMA"; version="1.66.0"; sha256="0m7192md5956mbklw0j7z0b82inr6h0p2c9vvjsmd5ivlbz1zdri"; depends=[MASS]; };
   dada2 = derive2 { name="dada2"; version="1.22.0"; sha256="1mj2fiqanr8lp1883bali00la38d9g1krqz9v7f396s1f5x8yll6"; depends=[BiocGenerics Biostrings ggplot2 IRanges Rcpp RcppParallel reshape2 ShortRead XVector]; };
   dagLogo = derive2 { name="dagLogo"; version="1.32.0"; sha256="1gqb56zg11cl7ldww15zmn09f1f5i60mshwrv7gsb3yc79zs48s1"; depends=[BiocGenerics biomaRt Biostrings motifStack pheatmap UniProt_ws]; };
-  dasper = derive2 { name="dasper"; version="1.4.1"; sha256="03k6gw6csllqysx6mcn8h5a2wq01r3pmk6b0jvqr4iwppn8jspry"; depends=[basilisk BiocFileCache BiocParallel data_table dplyr GenomeInfoDb GenomicFeatures GenomicRanges ggplot2 ggpubr ggrepel IRanges magrittr megadepth plyranges readr reticulate rtracklayer S4Vectors stringr SummarizedExperiment tidyr]; };
+  dasper = derive2 { name="dasper"; version="1.4.2"; sha256="1c0kz52wwz7b8fxgzj7drs8mqr5r2cl25n58rralqb7mgn926v62"; depends=[basilisk BiocFileCache BiocParallel data_table dplyr GenomeInfoDb GenomicFeatures GenomicRanges ggplot2 ggpubr ggrepel IRanges magrittr megadepth plyranges readr reticulate rtracklayer S4Vectors stringr SummarizedExperiment tidyr]; };
   dcGSA = derive2 { name="dcGSA"; version="1.22.0"; sha256="0j697q02zys9brmc7xn1yh7lir7k1m7hlr752ykydqx9qzzw0m77"; depends=[BiocParallel Matrix]; };
   dcanr = derive2 { name="dcanr"; version="1.10.0"; sha256="0xrfdwcs4qxgasm318nd2cdqmr9ksaxig1frs8h6a7lg8wvh5f2x"; depends=[circlize doRNG foreach igraph Matrix plyr RColorBrewer reshape2 stringr]; };
   dce = derive2 { name="dce"; version="1.2.0"; sha256="0wzi9hv975ib7nvd6qqnlhzfzgx9wydxxs1pkklzzgwlwm4gr971"; depends=[assertthat CombinePValue dplyr edgeR epiNEM expm ggplot2 ggraph glm2 glue graph graphite harmonicmeanp igraph logger MASS Matrix metap mnem naturalsort org_Hs_eg_db pcalg ppcor purrr reshape2 Rgraphviz rlang tidygraph tidyverse]; };
@@ -1285,7 +1270,6 @@ in with self; {
   dpeak = derive2 { name="dpeak"; version="1.6.0"; sha256="12a1zz8zj0kp2iprnckij98illb9jf2lg4nz144wjlfwiv3mq0y6"; depends=[BSgenome IRanges MASS Rcpp]; };
   drawProteins = derive2 { name="drawProteins"; version="1.14.0"; sha256="1imsisl2bwzf3dzhslmlqm6zwzil8a2l8kk7fkkc0dqka63kcwai"; depends=[dplyr ggplot2 httr readr tidyr]; };
   drugTargetInteractions = derive2 { name="drugTargetInteractions"; version="1.2.0"; sha256="1jcmkh1rjhk862f6kzqfw9zkk795yiwxq57bxbsqf9kwyykgwq7y"; depends=[AnnotationFilter BiocFileCache biomaRt dplyr ensembldb rappdirs RSQLite S4Vectors UniProt_ws]; };
-  dualKS = derive2 { name="dualKS"; version="1.53.0"; sha256="16cfcylmmcj8x2808529lbpm7qbbrxygic0jkaglhqcdxgrqw3rw"; depends=[affy Biobase]; };
   dupRadar = derive2 { name="dupRadar"; version="1.24.0"; sha256="06s3661vlsy4n9p59wb8f9gmmwd2kwz0z2ydq2diix0hajz8h5fi"; depends=[Rsubread]; };
   dyebias = derive2 { name="dyebias"; version="1.54.0"; sha256="0iha3n4p01gphsp5jn5ypm9b8mfn2dlz1sdz179i5cmycwgg6p7s"; depends=[Biobase marray]; };
   easier = derive2 { name="easier"; version="1.0.0"; sha256="1wlpmx9ghbz9ikmw70b0lhsvkbcry5rmrkq8kxm0439wwwfd0ayj"; depends=[arules BiocParallel coin DESeq2 dorothea dplyr easierData ggplot2 ggrepel matrixStats progeny quantiseqr reshape2 rlang ROCR rstatix]; };
@@ -1299,7 +1283,7 @@ in with self; {
   eisaR = derive2 { name="eisaR"; version="1.6.0"; sha256="1gfcmxdbzpb8rfdk7c1y7jhqanipa6jyxy2cg6f9jsp9x73fs61w"; depends=[BiocGenerics edgeR GenomicRanges IRanges limma S4Vectors SummarizedExperiment]; };
   enhancerHomologSearch = derive2 { name="enhancerHomologSearch"; version="1.0.0"; sha256="1v8zgp33kabf5qjf7aklb1lbzsvlh1jv30g0f79djf2i9khcxlkm"; depends=[BiocFileCache BiocGenerics BiocParallel Biostrings BSgenome GenomeInfoDb GenomicRanges httr IRanges jsonlite Matrix motifmatchr Rcpp rtracklayer S4Vectors]; };
   enrichTF = derive2 { name="enrichTF"; version="1.10.0"; sha256="0ssjsl5vh0wdq0584yl6c61d8bp5n3qvkgfrqdlpjfwb7b7gh4xv"; depends=[BiocGenerics BSgenome clusterProfiler GenomeInfoDb GenomicRanges ggplot2 ggpubr heatmap3 IRanges JASPAR2018 magrittr motifmatchr pipeFrame R_utils rmarkdown rtracklayer S4Vectors TFBSTools]; };
-  enrichplot = derive2 { name="enrichplot"; version="1.14.1"; sha256="0nsx96mkcg0hhg3x8jndzq3xvq9bq7m4yf1b3ry73b17ladx81ch"; depends=[aplot DOSE ggplot2 ggraph ggtree GOSemSim igraph magrittr plyr purrr RColorBrewer reshape2 scatterpie shadowtext yulab_utils]; };
+  enrichplot = derive2 { name="enrichplot"; version="1.14.2"; sha256="1rjiqmc32c9gxckgrgbypxpp0m8y0kahvhzvjzymda25xp8zqjs2"; depends=[aplot DOSE ggplot2 ggraph ggtree GOSemSim igraph magrittr plyr purrr RColorBrewer reshape2 scatterpie shadowtext yulab_utils]; };
   ensemblVEP = derive2 { name="ensemblVEP"; version="1.36.0"; sha256="1b9i8qv16mrr31qpvvcimcd80nkykky8dygi90jinkzgvkzdxi64"; depends=[BiocGenerics Biostrings GenomeInfoDb GenomicRanges S4Vectors SummarizedExperiment VariantAnnotation]; };
   ensembldb = derive2 { name="ensembldb"; version="2.18.3"; sha256="0rbd8ycvl1aydbd8xcbkhgqxqkrflymgah3wm6nx76csapbzh4q9"; depends=[AnnotationDbi AnnotationFilter Biobase BiocGenerics Biostrings curl DBI GenomeInfoDb GenomicFeatures GenomicRanges IRanges ProtGenerics Rsamtools RSQLite rtracklayer S4Vectors]; };
   epiNEM = derive2 { name="epiNEM"; version="1.18.0"; sha256="0xs9jzy0d9iv45d5ina7ki79wix96318yp17mxhp1l4vdkpm3fk7"; depends=[BoolNet e1071 graph gtools igraph latex2exp lattice latticeExtra minet mnem pcalg RColorBrewer]; };
@@ -1415,7 +1399,7 @@ in with self; {
   ggmsa = derive2 { name="ggmsa"; version="1.0.0"; sha256="0w4jqmsa87ijflmyya8fnwmgha6s5ax2r9d67b0a3d7yz3d1kms8"; depends=[aplot Biostrings dplyr ggalt ggforce ggplot2 magrittr R4RNA RColorBrewer seqmagick tidyr]; };
   ggspavis = derive2 { name="ggspavis"; version="1.0.0"; sha256="0lm7z8fzvw47zq618lfyxszy42qwhjr71xsyjsygvcl604z68jx0"; depends=[ggplot2 ggside SingleCellExperiment SpatialExperiment SummarizedExperiment]; };
   ggtree = derive2 { name="ggtree"; version="3.2.1"; sha256="0qk39gdpy4kznjhmvi25y2spcdj2r1i6mv673vx8dzf66zfs20v8"; depends=[ape aplot dplyr ggfun ggplot2 magrittr purrr rlang scales tidyr tidytree treeio yulab_utils]; };
-  ggtreeExtra = derive2 { name="ggtreeExtra"; version="1.4.1"; sha256="1lrnwzpkddc3byag4zyjiqhvkdkln03yq9qrxq0981cp6mai3aq7"; depends=[ggnewscale ggplot2 ggtree rlang]; };
+  ggtreeExtra = derive2 { name="ggtreeExtra"; version="1.4.2"; sha256="0c7kf0a5hr63y9w6f09z8dfd3apbhx6i6cd31fvl1wiy977pn2ly"; depends=[ggnewscale ggplot2 ggtree rlang]; };
   girafe = derive2 { name="girafe"; version="1.46.0"; sha256="1al296zsp454lap05mh58y5lmrd0bfc4vmwaq5icnna56i4bi9m9"; depends=[Biobase BiocGenerics Biostrings genomeIntervals intervals IRanges Rsamtools S4Vectors ShortRead]; };
   glmGamPoi = derive2 { name="glmGamPoi"; version="1.6.0"; sha256="1yffzcy910cawz2lzjqg8h1hrjvrkhz3pdif5q352kpzjklr5qjm"; depends=[beachmat BiocGenerics DelayedArray DelayedMatrixStats HDF5Array matrixStats Rcpp RcppArmadillo SummarizedExperiment]; };
   glmSparseNet = derive2 { name="glmSparseNet"; version="1.12.0"; sha256="14qyj2jgjapjjznjzhslhcfbyxm9z0p28z8qrjqkxcb5z2hw9arq"; depends=[biomaRt dplyr forcats futile_logger ggplot2 glmnet glue httr loose_rock Matrix MultiAssayExperiment readr reshape2 sparsebn sparsebnUtils stringr SummarizedExperiment survminer]; };
@@ -1443,7 +1427,7 @@ in with self; {
   gwasurvivr = derive2 { name="gwasurvivr"; version="1.12.0"; sha256="1q31ydns5i8jk4p4731i57f80iwx6qm0r9fka4xd4wdxzk5kps8z"; depends=[GWASTools matrixStats SNPRelate SummarizedExperiment survival VariantAnnotation]; };
   h5vc = derive2 { name="h5vc"; version="2.28.0"; sha256="0i4p122cavihc29javrgg5ywqn1fkg73hp46hfj3v2qmwakihk4w"; depends=[abind BatchJobs BiocParallel Biostrings GenomeInfoDb GenomicRanges ggplot2 gridExtra h5vcData IRanges reshape rhdf5 Rhtslib Rsamtools S4Vectors]; };
   hapFabia = derive2 { name="hapFabia"; version="1.36.0"; sha256="0niwlfy2ljsx1ivdxrpm0f8w75bs03xb2l43dkcm5gclwac2ys1v"; depends=[Biobase fabia]; };
-  hca = derive2 { name="hca"; version="1.2.1"; sha256="0yczfbs3w4f4zwv2zq9m58w7xirhjys654g87j643yr1rfixf7l1"; depends=[BiocFileCache digest dplyr httr jsonlite readr tibble tidyr]; };
+  hca = derive2 { name="hca"; version="1.2.2"; sha256="0jdn93r48id24n8ha2yn2d256mz446j6hfvn0dz0y1kniff154cc"; depends=[BiocFileCache digest dplyr httr jsonlite readr tibble tidyr]; };
   heatmaps = derive2 { name="heatmaps"; version="1.18.0"; sha256="11fi0kzqx6ihvvwc852xhj34xv4aik0zyv47ad4zbhvb1mvxqv8a"; depends=[BiocGenerics Biostrings EBImage GenomeInfoDb GenomicRanges IRanges KernSmooth Matrix plotrix RColorBrewer]; };
   hiAnnotator = derive2 { name="hiAnnotator"; version="1.28.0"; sha256="1hjgn9gszr38q9syjl9qqw3lml5falp08asn01mq4h1m53akwxxv"; depends=[BSgenome dplyr foreach GenomicRanges ggplot2 iterators rtracklayer scales]; };
   hiReadsProcessor = derive2 { name="hiReadsProcessor"; version="1.30.0"; sha256="02y6gy9h841aag0v88j1g0hw0ckd4zd3agjgvzi9mcmb76zhxz8k"; depends=[BiocGenerics BiocParallel Biostrings dplyr GenomicAlignments GenomicRanges hiAnnotator readxl sonicLength]; };
@@ -1495,7 +1479,7 @@ in with self; {
   inveRsion = derive2 { name="inveRsion"; version="1.42.0"; sha256="0205fmv174x23gl5ka8k5j2x1lrwqc31zx7p0ngr9877kbi5idrj"; depends=[haplo_stats]; };
   ipdDb = derive2 { name="ipdDb"; version="1.12.0"; sha256="0q4lrhj3l5ayfx1bba9176r2wybpn710yxxrcprgr87h95wqac8v"; depends=[AnnotationDbi AnnotationHub assertthat Biostrings DBI GenomicRanges IRanges RSQLite]; };
   isobar = derive2 { name="isobar"; version="1.40.0"; sha256="0njl7b0k5hnwlj060ry6a8zjw035c21d107n0j2fyxg8nx4icqsx"; depends=[Biobase biomaRt distr ggplot2 plyr]; };
-  isomiRs = derive2 { name="isomiRs"; version="1.22.0"; sha256="16af3cqdc283bhz1b365hiq7xmkgamggdw8bgsvpqifzssqs2jj1"; depends=[AnnotationDbi assertive_sets Biobase BiocGenerics broom cluster cowplot DEGreport DESeq2 DiscriMiner dplyr GenomicRanges GGally ggplot2 gplots gridExtra gtools IRanges limma RColorBrewer readr reshape rlang S4Vectors stringr SummarizedExperiment tibble tidyr]; };
+  isomiRs = derive2 { name="isomiRs"; version="1.22.1"; sha256="1jzk47dxwk396adc7mzi9pil1dzbs0vjsibgclgs8lggm37dxq93"; depends=[AnnotationDbi assertive_sets Biobase BiocGenerics broom cluster cowplot DEGreport DESeq2 DiscriMiner dplyr GenomicRanges GGally ggplot2 gplots gridExtra gtools IRanges limma RColorBrewer readr reshape rlang S4Vectors stringr SummarizedExperiment tibble tidyr]; };
   iterClust = derive2 { name="iterClust"; version="1.16.0"; sha256="0ggr9h3kyyjnfiqwk4w22icg8fg5bln1vygk1ip0badcxk2b6gyw"; depends=[Biobase cluster]; };
   iterativeBMA = derive2 { name="iterativeBMA"; version="1.52.0"; sha256="1s86cq9c5a330cpxjpxgj1ibphmfsrxp1dn2gp7n50qkp2pyjsqa"; depends=[Biobase BMA leaps]; };
   iterativeBMAsurv = derive2 { name="iterativeBMAsurv"; version="1.52.0"; sha256="0jrjyrg2kfmgiybwdglrbfvfziy8i6jnkzb2ddr8z0670bmv8wxw"; depends=[BMA leaps survival]; };
@@ -1511,10 +1495,10 @@ in with self; {
   les = derive2 { name="les"; version="1.44.0"; sha256="08kahiq7j7xwr9hpynzcnbr3jchdd83iacywrnb03plz5jx22q9n"; depends=[boot fdrtool gplots RColorBrewer]; };
   levi = derive2 { name="levi"; version="1.12.0"; sha256="0mn8hcbld16qcdmb35hamg9p1rs7264k25s1bhw2ipcipkjv6fh3"; depends=[colorspace dplyr DT ggplot2 httr igraph knitr RColorBrewer Rcpp reshape2 rmarkdown shiny shinydashboard shinyjs testthat xml2]; };
   lfa = derive2 { name="lfa"; version="1.24.0"; sha256="02b90xjb2lfm86hbsdrvzpv20pijnq78ibz4dwjzqd9v4xhia3wr"; depends=[corpcor]; };
-  limma = derive2 { name="limma"; version="3.50.0"; sha256="05ypmax1s6y1nz42bxn61wxhzzw6185q633crzpdcbbz3dz4vgvy"; depends=[]; };
+  limma = derive2 { name="limma"; version="3.50.1"; sha256="0plffhwh73k6rkcpyhhzvfgni1kgxg9zmqaf08l8ir6x04fgw8kz"; depends=[]; };
   limmaGUI = derive2 { name="limmaGUI"; version="1.70.0"; sha256="0g4bp8ih848kh907ykmn6q1nzwabg5ifqb7123m87wdhrw224xjp"; depends=[limma R2HTML tkrplot xtable]; };
   lionessR = derive2 { name="lionessR"; version="1.8.0"; sha256="0n4ky9g2a4n5wisvkj9afkvaqdq4yxfabnx26vrjy8g34dg5dz3l"; depends=[S4Vectors SummarizedExperiment]; };
-  lipidr = derive2 { name="lipidr"; version="2.8.0"; sha256="0w300ac15ra2yl3lz05wdg4vy2skxqdmnwljjcldgacgdfs012zb"; depends=[data_table dplyr fgsea forcats ggplot2 imputeLCMD limma magrittr rlang ropls S4Vectors SummarizedExperiment tidyr]; };
+  lipidr = derive2 { name="lipidr"; version="2.8.1"; sha256="0a007pbn438ba8zykf99x4lhb5yni5ycsd1wcacj8vmx34g1k0zd"; depends=[data_table dplyr fgsea forcats ggplot2 imputeLCMD limma magrittr rlang ropls S4Vectors SummarizedExperiment tidyr]; };
   lisaClust = derive2 { name="lisaClust"; version="1.2.0"; sha256="0n3vwawlmybjbgvgb66pc0if63dn7mqhk74jpskqzv7c6f5nbvdv"; depends=[BiocGenerics BiocParallel class concaveman data_table dplyr ggplot2 purrr S4Vectors spatstat_core spatstat_geom spicyR tidyr]; };
   lmdme = derive2 { name="lmdme"; version="1.36.0"; sha256="0wi1lsaix6dgmj69kpm8rg5jbhv2a7r7a4n6zz1zg0q288pzs34s"; depends=[limma pls stemHypoxia]; };
   loci2path = derive2 { name="loci2path"; version="1.14.0"; sha256="18wzbsa22ix5q6icr2mmcfijrlv4dg222icyixlpzrcbhc8r42sq"; depends=[BiocParallel data_table GenomicRanges pheatmap RColorBrewer S4Vectors wordcloud]; };
@@ -1533,14 +1517,14 @@ in with self; {
   maanova = derive2 { name="maanova"; version="1.64.0"; sha256="1bifi7fzjhc00j8ckifh8vs4l3vxmqfh5kpwd1qgcg8q25hpx7gw"; depends=[Biobase]; };
   macat = derive2 { name="macat"; version="1.68.0"; sha256="17jxgq0cblw77anx4kd3gnj1yjffid1iw2yg8kw2wvslzwyrnyn9"; depends=[annotate Biobase]; };
   made4 = derive2 { name="made4"; version="1.68.0"; sha256="0jnzxd9dk3ihbjpybb9f43iww1xsz8l85ivav9a4s8zwc8nbwn8c"; depends=[ade4 Biobase gplots RColorBrewer scatterplot3d SummarizedExperiment]; };
-  maftools = derive2 { name="maftools"; version="2.10.0"; sha256="1s8w3xwwigz803l81bs9cb2dbvvw5r9z8jjcav1rmh9wm8909nfd"; depends=[data_table RColorBrewer Rhtslib survival zlibbioc]; };
+  maftools = derive2 { name="maftools"; version="2.10.05"; sha256="1m38j8b79xdkfaar62gpv2b31g61n6giijffmff8ryicvhkb157k"; depends=[data_table RColorBrewer Rhtslib survival zlibbioc]; };
   maigesPack = derive2 { name="maigesPack"; version="1.58.0"; sha256="19xixj4mk4vgh1rvxgnscyz6mx17nyqyhj64pixhz80mwa1w5vdd"; depends=[convert graph limma marray]; };
   makecdfenv = derive2 { name="makecdfenv"; version="1.70.0"; sha256="1v4x4x6x65sjdl194adhsz3l2lgcri9mmwix6dvcvd0pb321jpwn"; depends=[affy affyio Biobase zlibbioc]; };
   mapscape = derive2 { name="mapscape"; version="1.18.0"; sha256="0cim9svg45glfyli0liphhix2k0864fr0kl9kafv4zigbmfv83jy"; depends=[base64enc htmlwidgets jsonlite stringr]; };
   marr = derive2 { name="marr"; version="1.4.0"; sha256="00wq5s68fxp9cdc77frzk6pyim89yk3gk9786g6szx2acbaqas0j"; depends=[dplyr ggplot2 magrittr Rcpp rlang S4Vectors SummarizedExperiment]; };
   marray = derive2 { name="marray"; version="1.72.0"; sha256="1la805y8j522vpiazm1z6wpq4ibia9bib5fpiia5mxmpzmqg6gzz"; depends=[limma]; };
   martini = derive2 { name="martini"; version="1.14.0"; sha256="0ml5b38ivszn5qyqfi5c8xs43z05xiqhgybqaqxiasfl7rv18ikd"; depends=[igraph Matrix Rcpp RcppEigen snpStats]; };
-  maser = derive2 { name="maser"; version="1.12.0"; sha256="1yb0c4jyxanqkzrznqzddhdm0lv3m991irkk0by11sssbqbmpsnd"; depends=[BiocGenerics data_table dplyr DT GenomeInfoDb GenomicRanges ggplot2 Gviz IRanges reshape2 rtracklayer]; };
+  maser = derive2 { name="maser"; version="1.12.1"; sha256="1axgjckdf88nia8p6bpkxzblqydql4hbnapfspgwb4pv08409537"; depends=[BiocGenerics data_table dplyr DT GenomeInfoDb GenomicRanges ggplot2 Gviz IRanges reshape2 rtracklayer]; };
   maskBAD = derive2 { name="maskBAD"; version="1.38.0"; sha256="1fkzisfa0bazg0n41g9ixzh5xaw34wdkb56dx0ljg8n1dkq28jbn"; depends=[affy gcrma]; };
   massiR = derive2 { name="massiR"; version="1.30.0"; sha256="142lidx7j4n1sfizwwlschjc4di2cqz5v1q9p4v4i1xndpdxdwya"; depends=[Biobase cluster diptest gplots]; };
   matchBox = derive2 { name="matchBox"; version="1.36.0"; sha256="13i22m51g72jahxpxnfjr1jxbphiihy7yhwhm0ywxra9vmabpknp"; depends=[]; };
@@ -1575,7 +1559,6 @@ in with self; {
   methylInheritance = derive2 { name="methylInheritance"; version="1.18.0"; sha256="1vz2aww1523h7lrac04sq4p521bbhw4l1cx4j20ijjddd9v5kr45"; depends=[BiocParallel GenomicRanges ggplot2 gridExtra IRanges methylKit rebus S4Vectors]; };
   methylKit = derive2 { name="methylKit"; version="1.20.0"; sha256="02px46h2ynprss7kwll3i0jz0clrdg0bys70jacd432xw34nm2sx"; depends=[data_table emdbook fastseg GenomeInfoDb GenomicRanges gtools IRanges KernSmooth limma mclust mgcv qvalue R_utils Rcpp Rhtslib Rsamtools rtracklayer S4Vectors zlibbioc]; };
   methylMnM = derive2 { name="methylMnM"; version="1.32.0"; sha256="1l87588frvl2cs9gf45axq90xhz94xx825zhm1w0gg7pjxgkwdmb"; depends=[edgeR statmod]; };
-  methylPipe = derive2 { name="methylPipe"; version="1.27.0"; sha256="0z2md9n1flzfsgsbzwffn4q6yfcjyj03bg1vi4phcknigbhg1viy"; depends=[BiocGenerics Biostrings data_table GenomeInfoDb GenomicAlignments GenomicRanges gplots Gviz IRanges marray Rsamtools S4Vectors SummarizedExperiment]; };
   methylSig = derive2 { name="methylSig"; version="1.6.0"; sha256="0kp1ckxbidwlbv4690g236qhbh9rzjglx8gpmkihq67hfci7537v"; depends=[bsseq DelayedArray DelayedMatrixStats DSS GenomeInfoDb GenomicRanges IRanges S4Vectors]; };
   methylclock = derive2 { name="methylclock"; version="1.0.1"; sha256="00j1crflmpk02xxs0gfidrd04s8gaw3l1hiqs7qj522j13ks1q45"; depends=[Biobase devtools dplyr dynamicTreeCut ExperimentHub ggplot2 ggpmisc ggpubr impute methylclockData minfi PerformanceAnalytics preprocessCore quadprog Rcpp RPMM tibble tidyr tidyverse]; };
   methylscaper = derive2 { name="methylscaper"; version="1.2.0"; sha256="0ygkx6fs8rjbqp4ry3am7vd3jsqx3nac1z1hdiib2pvgr7b6h1r7"; depends=[BiocParallel Biostrings data_table Rfast seqinr seriation shiny shinyFiles shinyjs SummarizedExperiment]; };
@@ -1591,15 +1574,15 @@ in with self; {
   miRSM = derive2 { name="miRSM"; version="1.12.0"; sha256="1p6qg1wnill41amv8sppz51b4li8zdlh8fq577fwl6yrp63rp319"; depends=[BiBitR BicARE biclust Biobase dbscan dynamicTreeCut energy fabia flashClust GFA GSEABase iBBiG igraph isa2 linkcomm MatrixCorrelation MCL mclust miRspongeR NMF org_Hs_eg_db PMA ppclust Rcpp rqubic s4vd SOMbrero subspace SummarizedExperiment WGCNA]; };
   miRcomp = derive2 { name="miRcomp"; version="1.24.0"; sha256="1kknr5m62ly03p5yzam5c3hwpaky25g3y92h6z3sg7xfjgsd9qpz"; depends=[Biobase KernSmooth miRcompData]; };
   miRmine = derive2 { name="miRmine"; version="1.16.0"; sha256="0cx7181dsfclq2dplx1wcgnaqhxlgyfxsi0g4ii82yp1ka5fpml4"; depends=[SummarizedExperiment]; };
-  miRspongeR = derive2 { name="miRspongeR"; version="1.20.0"; sha256="06nczhbbvx1dmmwry88057zbvw3dq64qn5mn91ipi5qfnckb84wd"; depends=[clusterProfiler corpcor DOSE igraph linkcomm MCL org_Hs_eg_db Rcpp ReactomePA survival varhandle]; };
-  mia = derive2 { name="mia"; version="1.2.3"; sha256="1la5p4p2m1c4j3i3mzlm0in8vrivkbwrfil597yjlp0z4j9ai481"; depends=[ape BiocGenerics BiocParallel Biostrings DECIPHER decontam DelayedArray DelayedMatrixStats DirichletMultinomial dplyr IRanges MASS MultiAssayExperiment rlang S4Vectors scater scuttle SingleCellExperiment SummarizedExperiment tibble tidyr TreeSummarizedExperiment vegan]; };
+  miRspongeR = derive2 { name="miRspongeR"; version="1.20.1"; sha256="1xzi7irlgdqnnh9s4qrwv3p7l8y7k44iiqlc8hnyymxfhbymadym"; depends=[clusterProfiler corpcor DOSE igraph linkcomm MCL org_Hs_eg_db Rcpp ReactomePA survival varhandle]; };
+  mia = derive2 { name="mia"; version="1.2.7"; sha256="10mk41v88xjk0sanxrdsa6q41j2m5a35b2b9sp993b5xrglxdrlz"; depends=[ape BiocGenerics BiocParallel Biostrings DECIPHER decontam DelayedArray DelayedMatrixStats DirichletMultinomial dplyr IRanges MASS MultiAssayExperiment rlang S4Vectors scater scuttle SingleCellExperiment SummarizedExperiment tibble tidyr TreeSummarizedExperiment vegan]; };
   miaSim = derive2 { name="miaSim"; version="1.0.0"; sha256="0870jvqwcg08fyzb4c9qsb6sk7r4sxqzrrfzijd25sdjbqly4zzx"; depends=[deSolve poweRlaw SummarizedExperiment]; };
   miaViz = derive2 { name="miaViz"; version="1.2.1"; sha256="02fm69mfdgh8p10ajyxrl55c5f9kwql3a2xniwllv2cic0fcf1xi"; depends=[ape BiocGenerics BiocParallel DelayedArray DirichletMultinomial dplyr ggnewscale ggplot2 ggraph ggtree mia purrr rlang S4Vectors scater SummarizedExperiment tibble tidygraph tidyr tidytree TreeSummarizedExperiment viridis]; };
   microRNA = derive2 { name="microRNA"; version="1.52.0"; sha256="0x145alfh8qnbnhahxhfygcqc4xwiiirabl9k9nbcyadc5fawfc1"; depends=[Biostrings]; };
   microbiome = derive2 { name="microbiome"; version="1.16.0"; sha256="0j00xbw5gh53bfij8q3q2pa8lwvn3wb23vs9lybvlhjp725h064z"; depends=[dplyr ggplot2 phyloseq reshape2 Rtsne scales tibble tidyr vegan]; };
   microbiomeDASim = derive2 { name="microbiomeDASim"; version="1.8.0"; sha256="0g3lnwr5v62lkfz5fwdpjs9lr9vb8h8grqqrvwhyin5xmgkr5lnn"; depends=[Biobase ggplot2 MASS Matrix metagenomeSeq mvtnorm pbapply phyloseq tmvtnorm]; };
   microbiomeExplorer = derive2 { name="microbiomeExplorer"; version="1.4.0"; sha256="0ghsv6yf6v3b2xqv6a5r2q0glzajmy5wa3qhsnds6v0gj62v5ycg"; depends=[Biobase biomformat broom car DESeq2 dplyr DT forcats heatmaply knitr limma lubridate magrittr matrixStats metagenomeSeq plotly purrr RColorBrewer readr reshape2 rlang rmarkdown shiny shinycssloaders shinydashboard shinyjs shinyWidgets stringr tibble tidyr vegan]; };
-  microbiomeMarker = derive2 { name="microbiomeMarker"; version="1.0.1"; sha256="1q0d3vi0gvxyj7sala385b7xxy6qynq4agmn6lhfgipw05qr1fyk"; depends=[ALDEx2 ANCOMBC Biobase BiocGenerics biomformat Biostrings caret coin ComplexHeatmap DESeq2 dplyr edgeR ggplot2 ggsignif ggtree IRanges limma magrittr MASS metagenomeSeq multtest patchwork phyloseq plotROC purrr rlang S4Vectors tibble tidyr tidytree yaml]; };
+  microbiomeMarker = derive2 { name="microbiomeMarker"; version="1.0.2"; sha256="1caf3cd5rl1kikyf66zjzwfk7w43ix0hh0f98r3y0mipdcp97rfw"; depends=[ALDEx2 ANCOMBC Biobase BiocGenerics biomformat Biostrings caret coin ComplexHeatmap DESeq2 dplyr edgeR ggplot2 ggsignif ggtree IRanges limma magrittr MASS metagenomeSeq multtest patchwork phyloseq plotROC purrr rlang S4Vectors tibble tidyr tidytree yaml]; };
   midasHLA = derive2 { name="midasHLA"; version="1.2.0"; sha256="1dnqx9h3qz5p6l19s0nm90a35523cn32ymgg8pri5rc3jfrilv9k"; depends=[assertthat broom dplyr formattable HardyWeinberg kableExtra knitr magrittr MultiAssayExperiment qdapTools rlang S4Vectors stringi SummarizedExperiment tibble]; };
   miloR = derive2 { name="miloR"; version="1.2.0"; sha256="1pvd8kdh6mmv10ryq038qwr07w5g0n6pnpchb653i3dixygkgd94"; depends=[BiocNeighbors BiocParallel BiocSingular cowplot dplyr edgeR ggbeeswarm ggplot2 ggraph ggrepel gtools igraph irlba limma Matrix matrixStats patchwork RColorBrewer S4Vectors SingleCellExperiment stringr SummarizedExperiment tibble tidyr]; };
   mimager = derive2 { name="mimager"; version="1.18.0"; sha256="0xd5yxbljyxzvdr8y28qk1pl9sy44q9pxkpcfmxphsbf6bvy0d5b"; depends=[affy affyPLM Biobase BiocGenerics DBI gtable oligo oligoClasses preprocessCore S4Vectors scales]; };
@@ -1725,10 +1708,8 @@ in with self; {
   pepStat = derive2 { name="pepStat"; version="1.28.0"; sha256="07k5hilmnjhqcndq6vmibargf7fr0ah4zpcd2mm6656w3xy1ywax"; depends=[Biobase data_table fields GenomicRanges ggplot2 IRanges limma plyr]; };
   pepXMLTab = derive2 { name="pepXMLTab"; version="1.28.0"; sha256="0wk502spk5cmhvygnirfywk4dq13imvvbnxy97ak2c011phpaxf1"; depends=[XML]; };
   periodicDNA = derive2 { name="periodicDNA"; version="1.4.0"; sha256="1v6rl234qs0la2r7qwiahslw7yr8mppcdcpand2lk8w862k67nda"; depends=[BiocParallel Biostrings BSgenome cowplot GenomeInfoDb GenomicRanges ggplot2 IRanges magrittr rtracklayer S4Vectors zoo]; };
-  perturbatr = derive2 { name="perturbatr"; version="1.13.0"; sha256="0ssk8cr42hibn917s2z2nzcdan54c7xiydypbi8f3g4w68q4ly31"; depends=[assertthat diffusr doParallel dplyr foreach formula_tools ggplot2 igraph lazyeval lme4 magrittr rlang scales tibble tidyr]; };
   pgca = derive2 { name="pgca"; version="1.18.0"; sha256="1wrp4k0b1sj75yhw799aqcb6dmimza6gvcxkn5ayfn6x3hfifwwl"; depends=[]; };
   phantasus = derive2 { name="phantasus"; version="1.14.0"; sha256="0p8xa0jqasgn61qzzva7wrjk8d2xcsn9kd20c4dbc61sg3cxrcir"; depends=[AnnotationDbi assertthat Biobase ccaPP curl DESeq2 fgsea GEOquery ggplot2 gtable htmltools httpuv httr jsonlite limma Matrix opencpu pheatmap protolite rhdf5 Rook scales stringr svglite]; };
-  phemd = derive2 { name="phemd"; version="1.9.0"; sha256="0hqivlc9hzcfcprng1499nas84fwvgisg8976vsjciyn903355jr"; depends=[Biobase BiocGenerics cluster cowplot destiny ggplot2 igraph maptree monocle phateR pheatmap pracma RANN RColorBrewer reticulate Rtsne S4Vectors scatterplot3d Seurat SingleCellExperiment SummarizedExperiment transport VGAM]; };
   phenoTest = derive2 { name="phenoTest"; version="1.42.0"; sha256="0ci44hwicvz32sgv6mywawyygd1wzz2bayx6rshwvpmz1mixncq6"; depends=[annotate AnnotationDbi Biobase biomaRt BMA Category ellipse genefilter ggplot2 gplots GSEABase Heatplus hgu133a_db Hmisc hopach limma mgcv survival xtable]; };
   phenopath = derive2 { name="phenopath"; version="1.18.0"; sha256="1c0cxm3cwxprjkkwimzgjz0h67dykx2jy7jin13h7vzpwwvphh2p"; depends=[dplyr ggplot2 Rcpp SummarizedExperiment tibble tidyr]; };
   philr = derive2 { name="philr"; version="1.20.1"; sha256="1ra7wnnn0blxvxvsa570cf6jiqd9fh0ki90j2vbckrzh33z6plyv"; depends=[ape ggplot2 ggtree phangorn tidyr]; };
@@ -1744,7 +1725,7 @@ in with self; {
   plgem = derive2 { name="plgem"; version="1.66.0"; sha256="06w8xlw4j1fc9ipdgw55dvhp07f04icmhr20lqzwwhqd5pskrra3"; depends=[Biobase MASS]; };
   plier = derive2 { name="plier"; version="1.64.0"; sha256="1sw89kici1h2xfg7zvrfdm7b7iw5n3mzwhyz82676w2vk0lgkpn4"; depends=[affy Biobase]; };
   plotGrouper = derive2 { name="plotGrouper"; version="1.12.0"; sha256="191grbs8sy8jfxz9a6vsp9qf3zaqppp23fcl5qdrmfzims9krhlw"; depends=[colourpicker dplyr egg ggplot2 ggpubr gridExtra gtable Hmisc magrittr readr readxl rlang scales shiny shinythemes stringr tibble tidyr]; };
-  plotgardener = derive2 { name="plotgardener"; version="1.0.12"; sha256="0rayzw2bkkkv3rvgsdv8zmm3j9vflasf8wdrf4yz5hacshr3ng7i"; depends=[curl data_table dplyr ggplotify IRanges plyranges purrr RColorBrewer Rcpp rlang strawr]; };
+  plotgardener = derive2 { name="plotgardener"; version="1.0.15"; sha256="0gwvxvfcvcank7dny901kr74a3n52l16bf9lmas660ydhfn7g4x0"; depends=[curl data_table dplyr ggplotify IRanges plyranges purrr RColorBrewer Rcpp rlang strawr]; };
   plyranges = derive2 { name="plyranges"; version="1.14.0"; sha256="1s4zyr57x71v9ywdz6s27z158nhazwhmhkx3944l8zsqd5ciwnnc"; depends=[BiocGenerics dplyr GenomeInfoDb GenomicAlignments GenomicRanges IRanges magrittr rlang Rsamtools rtracklayer S4Vectors tidyselect]; };
   pmm = derive2 { name="pmm"; version="1.26.0"; sha256="0vmkpqxf0lfgkbmyvham128201d33dv3wf9g31nrlwnxd0jcxszn"; depends=[lme4]; };
   pmp = derive2 { name="pmp"; version="1.6.0"; sha256="15yggymqh329f2ibhmg9wmh76hbyn0gpz9k1cxzkvh787lss1w72"; depends=[ggplot2 impute matrixStats missForest pcaMethods reshape2 S4Vectors SummarizedExperiment]; };
@@ -1785,7 +1766,7 @@ in with self; {
   qckitfastq = derive2 { name="qckitfastq"; version="1.10.0"; sha256="177agr9q2rjdk67kc2nv6idnqqk2aq595yc83r8pq6h2wp2ynmn0"; depends=[data_table dplyr ggplot2 magrittr Rcpp reshape2 rlang RSeqAn seqTools zlibbioc]; };
   qcmetrics = derive2 { name="qcmetrics"; version="1.32.0"; sha256="1wfc8v1z77wpqfslls8vkw9vi51ylnr8ssr6lm8xz1jd9zijf9ny"; depends=[Biobase knitr pander S4Vectors xtable]; };
   qpcrNorm = derive2 { name="qpcrNorm"; version="1.52.0"; sha256="0zbp5kd6lm1qg9xzg9mibcqm7r3ap9gz7fhaf07ls5q1zk63cdj9"; depends=[affy Biobase limma]; };
-  qpgraph = derive2 { name="qpgraph"; version="2.28.0"; sha256="03xkx3ck41xd62v5xnyzkqr4mj9cxsyx20fm4cw5688a1w6znafc"; depends=[annotate AnnotationDbi Biobase BiocParallel GenomeInfoDb GenomicFeatures GenomicRanges graph IRanges Matrix mvtnorm qtl Rgraphviz S4Vectors]; };
+  qpgraph = derive2 { name="qpgraph"; version="2.28.1"; sha256="1xn414b4sibvzf2lynn3a2555kvp2lrb821dry76d2csbcdp92xk"; depends=[annotate AnnotationDbi Biobase BiocParallel GenomeInfoDb GenomicFeatures GenomicRanges graph IRanges Matrix mvtnorm qtl Rgraphviz S4Vectors]; };
   qrqc = derive2 { name="qrqc"; version="1.48.0"; sha256="1bnm1shj543kfzljlp5hzk40k6sijja161g2fi06xy2qydilxsml"; depends=[Biostrings biovizBase brew ggplot2 plyr reshape Rhtslib testthat xtable]; };
   qsea = derive2 { name="qsea"; version="1.20.0"; sha256="095ais50x4csqxjj3nq7w2h3xkr4acn3bbkmqilmy7nnpj9z9dnz"; depends=[BiocGenerics BiocParallel Biostrings BSgenome GenomeInfoDb GenomicRanges gtools HMMcopy IRanges limma Rsamtools rtracklayer zoo]; };
   qsmooth = derive2 { name="qsmooth"; version="1.10.0"; sha256="01h7amkhbnzrp5m3j5gb1qqmfszi1qpz5vsimkrzkmpvidg932jh"; depends=[Hmisc SummarizedExperiment sva]; };
@@ -1821,7 +1802,7 @@ in with self; {
   reconsi = derive2 { name="reconsi"; version="1.6.0"; sha256="0djiq9l70wvicbqia14n1bbd9c7ykvsyrp0r2arw2b2pqh8281fh"; depends=[ggplot2 KernSmooth matrixStats phyloseq reshape2]; };
   recount = derive2 { name="recount"; version="1.20.0"; sha256="1maa0fi6dqkcsjlbm52gl0r37qcv951xrc6m4rc6fvp6cb83x68p"; depends=[BiocParallel derfinder downloader GenomeInfoDb GenomicRanges GEOquery IRanges RCurl rentrez rtracklayer S4Vectors SummarizedExperiment]; };
   recount3 = derive2 { name="recount3"; version="1.4.0"; sha256="0ciaab6q0pix7zhz7948b8w3qki8dfy9lpa0wffhqjr7fvfh2km2"; depends=[BiocFileCache data_table GenomicRanges Matrix R_utils RCurl rtracklayer S4Vectors sessioninfo SummarizedExperiment]; };
-  recountmethylation = derive2 { name="recountmethylation"; version="1.4.0"; sha256="14b06842a97q9cggz6l7kfrlal1kaiq49j2f8sql4b2p6qdh4dpn"; depends=[BiocFileCache HDF5Array minfi R_utils RCurl rhdf5 S4Vectors]; };
+  recountmethylation = derive2 { name="recountmethylation"; version="1.4.2"; sha256="11z8ssn7s5mgb92jcr6jcw2rxja8kdddv7bwrqhgns2qkgj52n6w"; depends=[BiocFileCache HDF5Array IlluminaHumanMethylation450kmanifest minfi R_utils RCurl rhdf5 S4Vectors]; };
   recoup = derive2 { name="recoup"; version="1.22.0"; sha256="00qxkjjb4bx6vak50jjpl2l9y7myri9x7m17h01j2v2cncg48s55"; depends=[BiocGenerics biomaRt Biostrings circlize ComplexHeatmap GenomeInfoDb GenomicAlignments GenomicFeatures GenomicRanges ggplot2 httr IRanges Rsamtools RSQLite rtracklayer S4Vectors stringr]; };
   regionReport = derive2 { name="regionReport"; version="1.28.1"; sha256="03d7nbfsk55mrlhzzr81mx3ndswkfj7fajyh1yz4jakjdclvzlxm"; depends=[BiocStyle DEFormats derfinder DESeq2 GenomeInfoDb GenomicRanges knitr knitrBootstrap RefManageR rmarkdown S4Vectors SummarizedExperiment]; };
   regioneR = derive2 { name="regioneR"; version="1.26.1"; sha256="0k500fdmv5l0v7b9pj73bjk3h9k261mfqi6vl52khlw0fafn9b6p"; depends=[Biostrings BSgenome GenomeInfoDb GenomicRanges IRanges memoise rtracklayer S4Vectors]; };
@@ -1909,7 +1890,7 @@ in with self; {
   selectKSigs = derive2 { name="selectKSigs"; version="1.6.0"; sha256="03c1dm883vdm5cq4v0dp7kbglxvjljxls6hf7rqqaq7xbw6c9l33"; depends=[gtools HiLDA magrittr Rcpp]; };
   semisup = derive2 { name="semisup"; version="1.18.0"; sha256="0zjpcw04mrxg2c31cwbfiv1kymq9zpfmwwffjhq046fiikvkda51"; depends=[VGAM]; };
   seq2pathway = derive2 { name="seq2pathway"; version="1.26.0"; sha256="0r780ralqw02871ww4prm73g18wh6nxs0g0cck135kcmp1a9nbwr"; depends=[biomaRt GenomicRanges GSA nnet seq2pathway_data WGCNA]; };
-  seqCAT = derive2 { name="seqCAT"; version="1.16.0"; sha256="1c63yp16rp1bfgrd6cxycwpgzglqm4hngbcr7gy4myxqqhsbrimi"; depends=[dplyr GenomeInfoDb GenomicRanges ggplot2 IRanges rlang rtracklayer S4Vectors scales SummarizedExperiment tidyr VariantAnnotation]; };
+  seqCAT = derive2 { name="seqCAT"; version="1.16.1"; sha256="011rfyb5jgcfc2g92v9d19n75wsziga16s3iqg78zb5vp3vcwnlk"; depends=[dplyr GenomeInfoDb GenomicRanges ggplot2 IRanges rlang rtracklayer S4Vectors scales SummarizedExperiment tidyr VariantAnnotation]; };
   seqCNA = derive2 { name="seqCNA"; version="1.40.0"; sha256="1v8j1mm40r67ab5x38jzynrfmmlpfkwv7afrsr3zwcmxr3h2c7i3"; depends=[adehabitatLT doSNOW GLAD seqCNA_annot]; };
   seqLogo = derive2 { name="seqLogo"; version="1.60.0"; sha256="013hwj2lp29nqa8mkvm25aliarg0k725crg4cpsbj0iiskyrs6rl"; depends=[]; };
   seqPattern = derive2 { name="seqPattern"; version="1.26.0"; sha256="1mik575qaxw9h9qyjn971207pfgbc8p1mx60jrb20jbrrihgg2na"; depends=[Biostrings GenomicRanges IRanges KernSmooth plotrix]; };
@@ -1917,7 +1898,7 @@ in with self; {
   seqbias = derive2 { name="seqbias"; version="1.42.0"; sha256="1q608c1madij8l52ljl3w52vi3cssr6ikny84yj6n8s7yvpx5jpr"; depends=[Biostrings GenomicRanges Rhtslib]; };
   seqcombo = derive2 { name="seqcombo"; version="1.16.0"; sha256="0xyrjbvgrld5sy6g6sp79f43j93jnyccwg21il65fqrzb7z4d7xk"; depends=[Biostrings cowplot dplyr ggplot2 igraph magrittr yulab_utils]; };
   seqsetvis = derive2 { name="seqsetvis"; version="1.14.1"; sha256="1ja286qz7m15k97ms7rm81l0picsjjpm7fmsdpbklc66y3syl089"; depends=[data_table eulerr GenomeInfoDb GenomicAlignments GenomicRanges ggplot2 ggplotify IRanges limma pbapply pbmcapply png RColorBrewer Rsamtools rtracklayer S4Vectors UpSetR]; };
-  sesame = derive2 { name="sesame"; version="1.12.8"; sha256="047wpk7lvl5fik7iy0bf8jhqf3yp86gka0pkr0y9xl0a17gd5imz"; depends=[BiocParallel DNAcopy e1071 fgsea GenomicRanges ggplot2 ggrepel illuminaio IRanges KernSmooth MASS matrixStats preprocessCore randomForest reshape2 S4Vectors sesameData stringr SummarizedExperiment tibble wheatmap]; };
+  sesame = derive2 { name="sesame"; version="1.12.9"; sha256="0sqmykp5nc87ixhf330bhz0vh28si3c6kfvr8rrfhhf3jvy34a2k"; depends=[BiocParallel DNAcopy e1071 fgsea GenomicRanges ggplot2 ggrepel illuminaio IRanges KernSmooth MASS matrixStats preprocessCore randomForest reshape2 S4Vectors sesameData stringr SummarizedExperiment tibble wheatmap]; };
   sevenC = derive2 { name="sevenC"; version="1.14.0"; sha256="06m6479ps7896zaks8jnnak8l7c6abbsdx56k3l5ir78681g4bq1"; depends=[BiocGenerics boot data_table GenomeInfoDb GenomicRanges InteractionSet IRanges purrr readr rtracklayer S4Vectors]; };
   sevenbridges = derive2 { name="sevenbridges"; version="1.24.0"; sha256="03p7p1mwa3m8zvyz5761xmqhch6cfgy42cv0swwgj0n9jr83sc23"; depends=[curl data_table docopt httr jsonlite objectProperties S4Vectors stringr uuid yaml]; };
   shinyMethyl = derive2 { name="shinyMethyl"; version="1.30.0"; sha256="0ihs4l4r46qyv7j8a2g590x86y0dwki2gzllwq2a31il34jrbgq5"; depends=[BiocGenerics IlluminaHumanMethylation450kmanifest matrixStats minfi RColorBrewer shiny]; };
@@ -1991,7 +1972,7 @@ in with self; {
   switchBox = derive2 { name="switchBox"; version="1.30.0"; sha256="09z9wi8yzjq49rjmn707a1kvf7c203lbxcnc7znwhy7lv51svj67"; depends=[gplots pROC]; };
   switchde = derive2 { name="switchde"; version="1.20.0"; sha256="1n815zwj5znddgc3pz87089q8bvb14n2g61zfang8d8pna4zbf7v"; depends=[dplyr ggplot2 SingleCellExperiment SummarizedExperiment]; };
   synapsis = derive2 { name="synapsis"; version="1.0.0"; sha256="1kqapzcd2zvmyaqshcrfxkkaf6k7kwaqnd6g4dhnjcf2wqnf6fs5"; depends=[EBImage]; };
-  synergyfinder = derive2 { name="synergyfinder"; version="3.2.6"; sha256="05jzj18lc0dznq32g5jp14dpqx816yqln8kfk7mayqx7rfwh52lf"; depends=[dplyr drc furrr future ggforce ggplot2 ggrepel gstat kriging lattice magrittr metR mice nleqslv pbapply plotly purrr reshape2 sp SpatialExtremes stringr tidyr tidyverse vegan]; };
+  synergyfinder = derive2 { name="synergyfinder"; version="3.2.8"; sha256="07fjam0c6j5ga75601vsbp4x1x8h31gxwxanwjxmixnv7md0pdms"; depends=[dplyr drc furrr future ggforce ggplot2 ggrepel gstat kriging lattice magrittr metR mice nleqslv pbapply plotly purrr reshape2 sp SpatialExtremes stringr tidyr tidyverse vegan]; };
   synlet = derive2 { name="synlet"; version="1.24.0"; sha256="1xidxlkppap0x8h9iiyl78lcx50ckpg46n8pl49vz4435vd6grp2"; depends=[doBy dplyr ggplot2 magrittr RankProd RColorBrewer reshape2]; };
   systemPipeR = derive2 { name="systemPipeR"; version="2.0.5"; sha256="1j91pyfjsqngxxlxjqc477pznlfax4vayrks2q12rxw76ija80hf"; depends=[BiocGenerics Biostrings crayon GenomicRanges ggplot2 htmlwidgets magrittr Rsamtools S4Vectors ShortRead stringr SummarizedExperiment yaml]; };
   systemPipeShiny = derive2 { name="systemPipeShiny"; version="1.4.0"; sha256="0h803ijajf32igfknkaivlzrc323apzligq1j8ghpf02q7f5q830"; depends=[assertthat bsplus crayon dplyr drawer DT ggplot2 glue htmltools magrittr openssl plotly R6 rlang RSQLite rstudioapi shiny shinyAce shinydashboard shinydashboardPlus shinyFiles shinyjqui shinyjs shinytoastr shinyWidgets spsComps spsUtil stringr styler tibble vroom yaml]; };
@@ -2030,9 +2011,9 @@ in with self; {
   traseR = derive2 { name="traseR"; version="1.24.0"; sha256="0ch8hamhjjdcpi95gjqybzmk8vgx2j70gnlfiswvp8bjwf15hlfp"; depends=[BSgenome_Hsapiens_UCSC_hg19 GenomicRanges IRanges]; };
   traviz = derive2 { name="traviz"; version="1.0.0"; sha256="03w4jpx5vp4cf3g77cks6dp8dkl66bbjsixr4j25xc3xr26g6kw0"; depends=[Biobase ggplot2 mgcv princurve RColorBrewer rgl SingleCellExperiment slingshot SummarizedExperiment viridis]; };
   treeio = derive2 { name="treeio"; version="1.18.1"; sha256="19i8jhvycv57zbxhpn5gx5ymdiws64kc3nidc00xh1j9a8xkj1aq"; depends=[ape dplyr jsonlite magrittr rlang tibble tidytree]; };
-  treekoR = derive2 { name="treekoR"; version="1.2.0"; sha256="1xrq8j7cr6s4a9171xqm1iw3a1dzdnmgyy68knilr42nxak064nn"; depends=[ape data_table diffcyt dplyr edgeR ggiraph ggplot2 ggtree hopach lme4 multcomp patchwork SingleCellExperiment tidyr]; };
+  treekoR = derive2 { name="treekoR"; version="1.2.1"; sha256="07bgxrb523abdvzg1c7ahl1mkkfiisl1z97jb3yjdp024zg64qdi"; depends=[ape data_table diffcyt dplyr edgeR ggiraph ggplot2 ggtree hopach lme4 multcomp patchwork SingleCellExperiment tidyr]; };
   trena = derive2 { name="trena"; version="1.16.0"; sha256="1kz68z0dixiiryd62diddq352h8sx6r15flxm7h715abcniniyjn"; depends=[AnnotationDbi biomaRt Biostrings BSgenome BSgenome_Hsapiens_UCSC_hg19 BSgenome_Hsapiens_UCSC_hg38 BSgenome_Mmusculus_UCSC_mm10 DBI GenomicRanges glmnet lassopv MotifDb org_Hs_eg_db randomForest RMySQL RPostgreSQL RSQLite SNPlocs_Hsapiens_dbSNP150_GRCh38 vbsr WGCNA xgboost]; };
-  tricycle = derive2 { name="tricycle"; version="1.2.0"; sha256="1jcvbzpd5cfyyy6n6kvi0biyrv4m86z5fdmhjkg5wm4dm61r5n9q"; depends=[AnnotationDbi circular dplyr GenomicRanges ggplot2 IRanges RColorBrewer S4Vectors scater scattermore SingleCellExperiment SummarizedExperiment]; };
+  tricycle = derive2 { name="tricycle"; version="1.2.1"; sha256="19yh7yif8630j845m9rddva2z0xy4jcw9j4hvyr076jqbyxz998r"; depends=[AnnotationDbi circular dplyr GenomicRanges ggplot2 IRanges RColorBrewer S4Vectors scater scattermore SingleCellExperiment SummarizedExperiment]; };
   trigger = derive2 { name="trigger"; version="1.40.0"; sha256="0irlxzy6vhp2q3lr9b4qnv7w43c3sdh7ali3rw1fgfpg29i4jc1f"; depends=[corpcor qtl qvalue sva]; };
   trio = derive2 { name="trio"; version="3.32.0"; sha256="16bnh1q53b2pkw4v7why5b1srl39zw6iza34yxynv34b8529sl46"; depends=[LogicReg siggenes survival]; };
   triplex = derive2 { name="triplex"; version="1.34.0"; sha256="0niyiafps242y9gnrc85ncb28c1q9ny1b20la53397h5w46sqq6i"; depends=[Biostrings GenomicRanges IRanges S4Vectors XVector]; };
@@ -2049,7 +2030,7 @@ in with self; {
   uSORT = derive2 { name="uSORT"; version="1.20.0"; sha256="0y6a6ksvbrxyqri0mc01nbls107sacs66zmbjs4qxq52rmy5xvcd"; depends=[Biobase BiocGenerics cluster fpc gplots igraph Matrix monocle plyr RANN RSpectra VGAM]; };
   uncoverappLib = derive2 { name="uncoverappLib"; version="1.4.0"; sha256="0nh5z1iirqdiv5q66k1r8byv9dasnzyinl0plan68gxvia770cnb"; depends=[BiocFileCache BSgenome_Hsapiens_UCSC_hg19 condformat DT EnsDb_Hsapiens_v75 EnsDb_Hsapiens_v86 GenomicRanges Gviz Homo_sapiens markdown openxlsx org_Hs_eg_db OrganismDbi processx rappdirs rlist Rsamtools shiny shinyBS shinycssloaders shinyjs shinyWidgets stringr TxDb_Hsapiens_UCSC_hg19_knownGene TxDb_Hsapiens_UCSC_hg38_knownGene]; };
   unifiedWMWqPCR = derive2 { name="unifiedWMWqPCR"; version="1.30.0"; sha256="0kw26bm2yyna38q5r4zb2alpa3j4gx7v970419mnjlif4g0hmggk"; depends=[BiocGenerics HTqPCR]; };
-  universalmotif = derive2 { name="universalmotif"; version="1.12.3"; sha256="00kdhjyjgxjiab4n9lxagc1bb629xnwc68cqy2gc0wnxx1j3v262"; depends=[BiocGenerics Biostrings ggplot2 IRanges MASS Rcpp RcppThread rlang S4Vectors yaml]; };
+  universalmotif = derive2 { name="universalmotif"; version="1.12.4"; sha256="01skcvzd815m3c15ka2pk7z6bggc4l8bhvaf4z9v95i36k4mn5zd"; depends=[BiocGenerics Biostrings ggplot2 IRanges MASS Rcpp RcppThread rlang S4Vectors yaml]; };
   variancePartition = derive2 { name="variancePartition"; version="1.24.0"; sha256="0f5y61dpzwmr8v7npim18zvxa8n49rbzclb9j72haba0px6ibhvw"; depends=[Biobase BiocParallel doParallel foreach ggplot2 gplots iterators limma lme4 lmerTest MASS Matrix pbkrtest progress reshape2 rlang scales]; };
   vbmp = derive2 { name="vbmp"; version="1.62.0"; sha256="0yavhi3n9nlgq2s0xvglsnfi9yxdl0di8vs30h9p6a0hh3d1c8ql"; depends=[]; };
   velociraptor = derive2 { name="velociraptor"; version="1.4.0"; sha256="16v1qxl8z5pr3ygvby5n2klw0wm468fbsch1b9a67il8bjxslg0j"; depends=[basilisk BiocGenerics BiocParallel BiocSingular DelayedArray Matrix reticulate S4Vectors scuttle SingleCellExperiment SummarizedExperiment zellkonverter]; };
@@ -2079,11 +2060,30 @@ in with self; {
   zinbwave = derive2 { name="zinbwave"; version="1.16.0"; sha256="05w95bnq63a339d8x4932k81ycqf825s3qwn98vr52v5g2hv46fq"; depends=[BiocParallel edgeR genefilter Matrix SingleCellExperiment softImpute SummarizedExperiment]; };
   zlibbioc = derive2 { name="zlibbioc"; version="1.40.0"; sha256="0a0dl7z58zxdj6938zbxixphgljj1giylk1nd05bb7qsccmp0xhj"; depends=[]; };
   ALPS = derive2 { name="ALPS"; version="1.5.0"; sha256="1aydvzc6x0871iasij68xqdlhjyg69qbqxm0qh1q52w8gj2nyq3p"; depends=[assertthat BiocParallel ChIPseeker corrplot data_table dplyr genefilter GenomicRanges GGally gghalves ggplot2 ggseqlogo Gviz magrittr org_Hs_eg_db plyr reshape2 rtracklayer stringr tibble tidyr TxDb_Hsapiens_UCSC_hg19_knownGene TxDb_Hsapiens_UCSC_hg38_knownGene]; broken = true; };
+  Autotuner = derive2 { name="Autotuner"; version="1.7.0"; sha256="0k07gs6bnxs0894iqi1lhk96mifjcdf68bv4q9fjv50nzqpzqd8l"; depends=[assertthat Biobase cluster entropy MSnbase mzR RColorBrewer scales]; broken = true; };
+  CHETAH = derive2 { name="CHETAH"; version="1.9.0"; sha256="1nfz8zpkrghfh942cr8xwvrj0d47h1nbf3nv534mp7rii38v07j3"; depends=[bioDist corrplot cowplot dendextend ggplot2 gplots pheatmap plotly reshape2 S4Vectors shiny SingleCellExperiment SummarizedExperiment]; broken = true; };
   CompGO = derive2 { name="CompGO"; version="1.28.0"; sha256="16nlrk9wbxj51y8s7s58mdhpi70ghfacxi283406gwya3cm79f0n"; depends=[GenomicFeatures ggplot2 pathview pcaMethods reshape2 Rgraphviz rtracklayer TxDb_Mmusculus_UCSC_mm9_knownGene]; broken = true; };
+  CountClust = derive2 { name="CountClust"; version="1.21.0"; sha256="17px9jkpjwz0j2f5h8xv52wh24ilqvlb6dvczjc36lb7mq4cw3sq"; depends=[cowplot flexmix ggplot2 gtools limma maptpx picante plyr reshape2 slam SQUAREM]; broken = true; };
   EasyqpcR = derive2 { name="EasyqpcR"; version="1.31.0"; sha256="0lb2px789668fr1gxghycy7lbdkpwmippv6xmmwws6rbanvfd6v4"; depends=[matrixStats plotrix plyr]; broken = true; };
+  FindMyFriends = derive2 { name="FindMyFriends"; version="1.23.0"; sha256="0xbhl6ljxb522r5062vv6xdziaaqkkwylmvlymvc5f1grjz0a4z9"; depends=[Biobase BiocGenerics BiocParallel Biostrings digest dplyr filehash ggdendro ggplot2 gtable igraph IRanges kebabs Matrix Rcpp reshape2 S4Vectors]; broken = true; };
   FlowRepositoryR = derive2 { name="FlowRepositoryR"; version="1.23.0"; sha256="04lk2cahf6zqnhpzh0zwas4vmvaz4kcik9ri65bs9d9ximzjam91"; depends=[jsonlite RCurl XML]; broken = true; };
+  GenoGAM = derive2 { name="GenoGAM"; version="2.11.0"; sha256="058qix2h0zm2k9csmbdhci2wqih3lyggjj591cqn0ls2nv7bnyvj"; depends=[BiocParallel Biostrings data_table DelayedArray DESeq2 futile_logger GenomeInfoDb GenomicAlignments GenomicRanges HDF5Array IRanges Matrix Rcpp RcppArmadillo rhdf5 Rsamtools S4Vectors sparseinv SummarizedExperiment]; broken = true; };
+  Herper = derive2 { name="Herper"; version="1.3.0"; sha256="038cavnbz7gvmv9mpnf88n8dzrg7yl306y68zsq5hpkrj6qax9vr"; depends=[reticulate rjson withr]; broken = true; };
+  HiCBricks = derive2 { name="HiCBricks"; version="1.11.0"; sha256="12s01r9z569pp6amlvcs7fqmwivw9jb2ahnnyq6nzflsyn5277kl"; depends=[BiocParallel curl data_table digest GenomeInfoDb GenomicRanges ggplot2 IRanges jsonlite R_utils R6 RColorBrewer readr reshape2 rhdf5 S4Vectors scales stringr tibble viridis]; broken = true; };
+  MBQN = derive2 { name="MBQN"; version="2.5.0"; sha256="01pf9wkk3dsxgx1y8mxfxn9m2j2hqipc5kajm7w8g60bj9flg09j"; depends=[BiocFileCache ggplot2 limma PairedData preprocessCore rappdirs RCurl rpx SummarizedExperiment xml2]; broken = true; };
   MSEADbi = derive2 { name="MSEADbi"; version="1.2.0"; sha256="1g1kg3nh7iwg5nrpmig6srw6as4yfwmbqn965pffrk0zp19llsbf"; depends=[AnnotationDbi Biobase DBI RSQLite]; broken = true; };
+  MSstatsTMTPTM = derive2 { name="MSstatsTMTPTM"; version="1.1.2"; sha256="16qnddwhwhjjfr5akdrmp93gkxq2r41s82hb1blbz47lwbj5kaj5"; depends=[dplyr ggplot2 gridExtra MSstatsTMT Rcpp reshape2 stringr]; broken = true; };
+  MethCP = derive2 { name="MethCP"; version="1.7.0"; sha256="1smhwmrgckgivf6xfk54sz197cw1mar95chzkrfpf4wxw3jzbbkn"; depends=[BiocParallel bsseq DNAcopy DSS GenomeInfoDb GenomicRanges IRanges methylKit S4Vectors]; broken = true; };
+  RmiR = derive2 { name="RmiR"; version="1.49.0"; sha256="16nwh4a97qvyicm4f102xs52lx8cld0b80fykgil86kkd6v8zlja"; depends=[DBI RmiR_Hs_miRNA]; broken = true; };
+  ScISI = derive2 { name="ScISI"; version="1.65.0"; sha256="0q3bbfsink5d8xslhp129qwvlq5mdzw8zkv9msd0q8qmkclsbiz1"; depends=[annotate AnnotationDbi apComplex GO_db org_Sc_sgd_db RpsiXML]; broken = true; };
   SwimR = derive2 { name="SwimR"; version="1.29.0"; sha256="0n58x3i4k3icvhg8z60zlhpszv8bb9pain07nl9rszyvmpi71vg2"; depends=[gplots R2HTML signal]; broken = true; };
+  XCIR = derive2 { name="XCIR"; version="1.7.0"; sha256="0n42pw01wv1sk06hby9kwijx6zwaw4lrlpsa0wlkrkf323slkllw"; depends=[biomaRt data_table ggplot2 IRanges readxl S4Vectors seqminer VariantAnnotation]; broken = true; };
   affyPara = derive2 { name="affyPara"; version="1.51.0"; sha256="01165f84snc3ksk0ghw631i2l5jklp4n826jwy5926wvxy3zlwz0"; depends=[affy affyio aplpack snow vsn]; broken = true; };
+  coexnet = derive2 { name="coexnet"; version="1.15.0"; sha256="1h3l7rjk757qbddyg0p8l21h8z3i4n3ml295lmavszsm9knyc2fk"; depends=[acde affy Biobase GEOquery igraph limma minet rmarkdown siggenes STRINGdb SummarizedExperiment vsn]; broken = true; };
+  compEpiTools = derive2 { name="compEpiTools"; version="1.27.0"; sha256="0hk3yd7ql91wg9r24r57ybhs1nx6zbd5v199sv7xd91k980n2ay5"; depends=[AnnotationDbi BiocGenerics Biostrings GenomeInfoDb GenomicFeatures GenomicRanges GO_db gplots IRanges methylPipe Rsamtools S4Vectors topGO XVector]; broken = true; };
+  dualKS = derive2 { name="dualKS"; version="1.53.0"; sha256="16cfcylmmcj8x2808529lbpm7qbbrxygic0jkaglhqcdxgrqw3rw"; depends=[affy Biobase]; broken = true; };
   methyAnalysis = derive2 { name="methyAnalysis"; version="1.34.0"; sha256="05k3n7iy5ijidbnblbqqas8dsj8drwzbhyrbs8wl1ypkg51havi0"; depends=[annotate AnnotationDbi Biobase BiocGenerics biomaRt genefilter GenomeInfoDb GenomicFeatures GenomicRanges Gviz IRanges lumi methylumi org_Hs_eg_db rtracklayer SummarizedExperiment VariantAnnotation]; broken = true; };
+  methylPipe = derive2 { name="methylPipe"; version="1.27.0"; sha256="0z2md9n1flzfsgsbzwffn4q6yfcjyj03bg1vi4phcknigbhg1viy"; depends=[BiocGenerics Biostrings data_table GenomeInfoDb GenomicAlignments GenomicRanges gplots Gviz IRanges marray Rsamtools S4Vectors SummarizedExperiment]; broken = true; };
+  perturbatr = derive2 { name="perturbatr"; version="1.13.0"; sha256="0ssk8cr42hibn917s2z2nzcdan54c7xiydypbi8f3g4w68q4ly31"; depends=[assertthat diffusr doParallel dplyr foreach formula_tools ggplot2 igraph lazyeval lme4 magrittr rlang scales tibble tidyr]; broken = true; };
+  phemd = derive2 { name="phemd"; version="1.9.0"; sha256="0hqivlc9hzcfcprng1499nas84fwvgisg8976vsjciyn903355jr"; depends=[Biobase BiocGenerics cluster cowplot destiny ggplot2 igraph maptree monocle phateR pheatmap pracma RANN RColorBrewer reticulate Rtsne S4Vectors scatterplot3d Seurat SingleCellExperiment SummarizedExperiment transport VGAM]; broken = true; };
 }
diff --git a/nixpkgs/pkgs/development/r-modules/cran-packages.nix b/nixpkgs/pkgs/development/r-modules/cran-packages.nix
index 62f68de90913..ee3f719fd12e 100644
--- a/nixpkgs/pkgs/development/r-modules/cran-packages.nix
+++ b/nixpkgs/pkgs/development/r-modules/cran-packages.nix
@@ -4,7 +4,7 @@
 # Rscript generate-r-packages.R cran >new && mv new cran-packages.nix
 
 { self, derive }:
-let derive2 = derive { snapshot = "2022-02-08"; };
+let derive2 = derive { snapshot = "2022-03-10"; };
 in with self; {
   A3 = derive2 { name="A3"; version="1.0.0"; sha256="017hq9pjsv1h9i7cqk5cfx27as54shlhdsdvr6jkhb8jfkpdb6cw"; depends=[pbapply xtable]; };
   AATtools = derive2 { name="AATtools"; version="0.0.1"; sha256="08is383xhs2lc9wfffykcwqyl8mwcxfpk3lnvlpkp96hq9m9ikbf"; depends=[doParallel dplyr foreach magrittr]; };
@@ -24,9 +24,11 @@ in with self; {
   ACNE = derive2 { name="ACNE"; version="0.8.1"; sha256="0kzapsalzw6jsi990qicp4glijh5ddnfimsg5pidgbwxg4i05grl"; depends=[aroma_affymetrix aroma_core MASS matrixStats R_filesets R_methodsS3 R_oo R_utils]; };
   ACSWR = derive2 { name="ACSWR"; version="1.0"; sha256="195vjrkang5cl7gwsna0aq4p0h4jym9xg9yh94bnf8vq6wf8j83n"; depends=[MASS]; };
   ACTCD = derive2 { name="ACTCD"; version="1.2-0"; sha256="0mzjxxr2zfdidw8ibh6w8mvpkw3q3nvngqi05g9ind26ckvk053p"; depends=[GDINA R_methodsS3]; };
+  ACWR = derive2 { name="ACWR"; version="0.1.0"; sha256="19q8m5swp7ivrxi8rbkpp37d6fwr35zd8xs4ygpfgd07axc9451s"; depends=[r2d3]; };
   ADAPTS = derive2 { name="ADAPTS"; version="1.0.21"; sha256="0ddmgk1syi0mafgp3fyvgz95ny8disyvmkd859ya32lykjjmwsxv"; depends=[ComICS doParallel e1071 foreach missForest nnls pcaMethods pheatmap preprocessCore quantmod ranger]; };
   ADCT = derive2 { name="ADCT"; version="0.1.0"; sha256="1glf83ydx4v3ld8c4gb9h3jk6srd054bis5l8k57p1ba4fnqnnpp"; depends=[mvtnorm]; };
   ADDT = derive2 { name="ADDT"; version="2.0"; sha256="044bb1jw2m8vwk5q8l7rlz4kqphjvy8i9d59rjg0k5q5l9vczfrp"; depends=[coneproj Matrix nlme]; };
+  ADER = derive2 { name="ADER"; version="1.4"; sha256="0ada3b0ykbg1pdqj8i3ir5ldzb2prf3bhwm2mpln14h19hxc6i35"; depends=[]; };
   ADGofTest = derive2 { name="ADGofTest"; version="0.3"; sha256="0ik817qzqp6kfbckjp1z7srlma0w6z2zcwykh0jdiv7nahwk3ncw"; depends=[]; };
   ADMM = derive2 { name="ADMM"; version="0.3.3"; sha256="04biinzr0x3jkwss00q6zxfnzk62dafc6386z5vfqs4ch0ifh60n"; depends=[doParallel foreach Matrix Rcpp RcppArmadillo Rdpack]; };
   ADMMnet = derive2 { name="ADMMnet"; version="0.1.1"; sha256="1la92fwg75ylqbz00znqd0rhv5r509kgh9wwznjacppif773wp6i"; depends=[Matrix Rcpp RcppEigen]; };
@@ -46,7 +48,7 @@ in with self; {
   AGD = derive2 { name="AGD"; version="0.39"; sha256="0hmq684snnffc2v7vmns4ky200a6zh1ggiap03n5cvpb3nlqc6lr"; depends=[gamlss gamlss_dist]; };
   AGHmatrix = derive2 { name="AGHmatrix"; version="2.0.4"; sha256="1pvnv3fzxfdzjz9il0022k46kkcb57ypz31qn0br7mck64bkzsia"; depends=[Matrix zoo]; };
   AGPRIS = derive2 { name="AGPRIS"; version="1.0"; sha256="0xlaz75d19adfq79sh5aa52bzpmjqawshay2a3vw9mq8l23z64if"; depends=[Matrix matrixcalc maxLik plyr rgdal sp spacetime spdep]; };
-  AGSDest = derive2 { name="AGSDest"; version="2.3.2"; sha256="0f3qchvdi2n1cr8ipjj332dw8hdza58dvfk21p0c6bhmxzg7f71i"; depends=[ldbounds]; };
+  AGSDest = derive2 { name="AGSDest"; version="2.3.4"; sha256="140bqzgaagdyzgxsn998jw2sxak448i47xyacn2psfnps440gfjr"; depends=[ldbounds]; };
   AGread = derive2 { name="AGread"; version="1.1.1"; sha256="0ar0cnlaxxmvn2gdydmm9vr45xjhx06kky556d17l93k0xwfvzm3"; depends=[anytime binaryLogic data_table DescTools dplyr GGIR lubridate magrittr PAutilities Rcpp reshape2 rlang seewave stringr]; };
   AHM = derive2 { name="AHM"; version="1.0.1"; sha256="00r1rn7d64a18rckbxvla5yapqv00p9ajxv72fx7s6p80kfal89w"; depends=[devtools dplyr glmnet Matrix mixexp plgp quadprog tibble tidyr]; };
   AHMbook = derive2 { name="AHMbook"; version="0.2.3"; sha256="0ygdxyliq9wmpmjgmq1wb6a1g9pv6jl0lzaz7545gzwn7nwdw1y7"; depends=[coda mvtnorm plotrix RandomFields raster sp spdep unmarked]; };
@@ -100,12 +102,12 @@ in with self; {
   ARDL = derive2 { name="ARDL"; version="0.1.1"; sha256="0vmx21dvbz5l67drdma77z9x30j6sw650lhkrkcbifjn915x6dks"; depends=[aod dplyr dynlm lmtest msm stringr zoo]; };
   ARHT = derive2 { name="ARHT"; version="0.1.0"; sha256="1fz81a202r8vk655dg6a03zfq3gfkimqjvmc95k3j02xz0iv58kn"; depends=[]; };
   ARIbrain = derive2 { name="ARIbrain"; version="0.2"; sha256="18c7yxkrnqh18gcfzvdc5wqig6ywdmjcy8rlz0fdj3b8fb84dfpr"; depends=[hommel plyr RNifti]; };
-  AROC = derive2 { name="AROC"; version="1.0-3"; sha256="07kzkb0mlx8nj8c0kz2b6in51biwawv7vvqqkg0h5zfj92k26hdb"; depends=[Hmisc MASS Matrix moments nor1mix np spatstat spatstat_geom]; };
-  ARPALData = derive2 { name="ARPALData"; version="1.2.2"; sha256="1mp5wrkl6d0yg8vrp7p2b6jg6d1gchkda1nyxhcpa7wj96khnh2w"; depends=[aweek data_table doParallel dplyr eurostat ggplot2 lubridate magrittr moments purrr readr rlang RSocrata sf stringi stringr tibble tidyr tidyselect tidyverse tm]; };
+  AROC = derive2 { name="AROC"; version="1.0-4"; sha256="0wwv63mlh8pl5pzaih57l2qy70fz2wpfyxns1lyp95sxhq7ddwza"; depends=[Hmisc MASS Matrix moments nor1mix np spatstat_geom]; };
+  ARPALData = derive2 { name="ARPALData"; version="1.2.3"; sha256="1zpl3dpqkf9m9d4hqqmcbqb3dz8gcqyp0rhs8gvs5vgidsy5sjv8"; depends=[aweek data_table doParallel dplyr eurostat ggplot2 lubridate magrittr moments mondate purrr readr rlang RSocrata sf stringi stringr tibble tidyr tidyselect tidyverse tm]; };
   ARPobservation = derive2 { name="ARPobservation"; version="1.2.1"; sha256="1gpq5wl3mwp4hi49h1g6nnizzpnfc19pv8chdyhv8y5sraq1k2ag"; depends=[]; };
   ART = derive2 { name="ART"; version="1.0"; sha256="186w1ivj5v3h906crl953qxgai5wiznaih83dgvwgnmabs9p1wvk"; depends=[car]; };
   ARTP2 = derive2 { name="ARTP2"; version="0.9.45"; sha256="12nqxry2jkl1n07rbms38mrnp39cn00d0h272d9f1z5x883flv62"; depends=[data_table Formula]; };
-  ARTofR = derive2 { name="ARTofR"; version="0.3.3"; sha256="1ha76ilbbl8bfls8sbk98k6qysymy3jphmkn51j9sr60ghsdlxg4"; depends=[bannerCommenter clipr]; };
+  ARTofR = derive2 { name="ARTofR"; version="0.4.1"; sha256="1dw9aascnqr5cbk8a862rlma94b39ndgkrhf826qf4k58y92nf5q"; depends=[bannerCommenter clipr rstudioapi shiny]; };
   ARTool = derive2 { name="ARTool"; version="0.11.1"; sha256="16awxcncyhry0ygk8gdvlff787837rr8qsyg1pxd11w4v1llrqrf"; depends=[car dplyr emmeans lme4 magrittr plyr]; };
   ARpLMEC = derive2 { name="ARpLMEC"; version="2.1"; sha256="0fj5mcaqpvgcwb6zp8yc5747clm6js99r3lqx5d3536w6k0f51r0"; depends=[gmm lmec MASS Matrix mnormt MomTrunc mvtnorm numDeriv sandwich tmvtnorm TTmoment]; };
   ASGS_foyer = derive2 { name="ASGS.foyer"; version="0.3.1"; sha256="089c4vm629rni0dfgg3r2a9s9yisdx1qs2dwssg44qw1w4hf1f50"; depends=[sp]; };
@@ -125,7 +127,6 @@ in with self; {
   AUC = derive2 { name="AUC"; version="0.3.0"; sha256="0ripcib2qz0m7rgr1kiz68nx8f6p408l1ww7j78ljqik7p3g41g7"; depends=[]; };
   AUCRF = derive2 { name="AUCRF"; version="1.1"; sha256="00d7jcg2dyvf7sc9w7vxxd85m7nsbcmfqsavrv236vxfpfc9yn7i"; depends=[randomForest]; };
   AUtests = derive2 { name="AUtests"; version="0.99"; sha256="0ima350mjlqvij6f9xy6wfcibvlji7nh0prpqngj7apn82ri4m2k"; depends=[logistf]; };
-  AWAPer = derive2 { name="AWAPer"; version="0.1.46"; sha256="02n662wvd8qwshfmj9qfff730qs6ls82hkdsphw05jj6llddi4k5"; depends=[chron Evapotranspiration maptools ncdf4 raster sp xts zoo]; };
   AWR = derive2 { name="AWR"; version="1.11.189-1"; sha256="1imvpmq6br0z7l67w66a5s1ylbv6xvypj0wc09bmjy7sapdmkn4x"; depends=[rJava]; };
   AWR_Athena = derive2 { name="AWR.Athena"; version="2.0.7-0"; sha256="1j9bqhyk0jzry4g379ml65gwxlszn7pjif1dywgns98jbry8mavh"; depends=[rJava RJDBC]; };
   AWR_KMS = derive2 { name="AWR.KMS"; version="0.1"; sha256="00aqhyqlncsv0vfcyhaazxaclwm63v5kscssash7529avdwd4gqg"; depends=[AWR jsonlite rJava]; };
@@ -145,7 +146,7 @@ in with self; {
   AdaSampling = derive2 { name="AdaSampling"; version="1.3"; sha256="1c8dh8lxyb076317n4qk2g3qv5j4mc1dszbh3k1p2b0nxiprqk5i"; depends=[caret class e1071 MASS]; };
   AdapEnetClass = derive2 { name="AdapEnetClass"; version="1.2"; sha256="01k3mj4g1ckbng7wkzzn9h0k9yf01cpnnkly0sjda574c5jhj0rc"; depends=[glmnet imputeYn lars quadprog]; };
   AdapSamp = derive2 { name="AdapSamp"; version="1.1.1"; sha256="1jayjrsiib2ij4rxxj59g71r3xhzl5yqh0lhi8k6cfy03i7dkvis"; depends=[pracma]; };
-  AdaptFitOS = derive2 { name="AdaptFitOS"; version="0.67"; sha256="0s8vv960pkbccpwlfsg1jsfjnfmq9iy8cj1fak5fn2s60zb7nm0a"; depends=[MASS mgcv nlme SemiPar]; };
+  AdaptFitOS = derive2 { name="AdaptFitOS"; version="0.68"; sha256="0hcmqiczb03377msz1m75nnpa6wc6zfgpz3cp0qpc9msdl1y83hh"; depends=[MASS mgcv nlme SemiPar]; };
   AdaptGauss = derive2 { name="AdaptGauss"; version="1.5.6"; sha256="076jjnqp4ayq4kh95qns4kfzfvl6mjllhsq6hfp66bww7w976xxh"; depends=[DataVisualizations pracma Rcpp shiny]; };
   AdaptiveSparsity = derive2 { name="AdaptiveSparsity"; version="1.6"; sha256="0imr5m8mll9j6n4icsv6z9rl5kbnwsp9wvzrg7n90nnmcxq2cz91"; depends=[MASS Matrix Rcpp RcppArmadillo]; };
   AdequacyModel = derive2 { name="AdequacyModel"; version="2.0.0"; sha256="0amp6ic1wylk24sp9wpx3ci38njj7b9qjqfp89j39hkl6kc1q7sq"; depends=[]; };
@@ -170,8 +171,9 @@ in with self; {
   AllPossibleSpellings = derive2 { name="AllPossibleSpellings"; version="1.1"; sha256="0ksfm2pfjka3yjgcd257v7sns1niaylsfxvhhh2jwdi016cpdw10"; depends=[]; };
   AlleleRetain = derive2 { name="AlleleRetain"; version="2.0.2"; sha256="0b6h5giskqbjbrk8nf29i75wrhxsjw1c87laiqzrpbp9n717bl20"; depends=[]; };
   AlleleShift = derive2 { name="AlleleShift"; version="1.0-2"; sha256="0pmjh5nq67fxnwlszp5rlmnmzg4gdjkr9dzaz6b0p7vh2cfy9m45"; depends=[adegenet BiodiversityR vegan]; };
-  AlphaPart = derive2 { name="AlphaPart"; version="0.9.0"; sha256="0k9fk1kks4sghv7b7bip2jrwy944b6fcgmaxwgrbanw9q16i309n"; depends=[directlabels dplyr gdata ggplot2 magrittr pedigree Rcpp reshape]; };
-  AlphaSimR = derive2 { name="AlphaSimR"; version="1.0.4"; sha256="115rn03dgpgcb5h9f2f5rz7kmlrfqdr0xdw7l9f4v7wkbdmr9h0l"; depends=[BH R6 Rcpp RcppArmadillo]; };
+  Allspice = derive2 { name="Allspice"; version="1.0.3"; sha256="1l11alczi3bq8l9np4wzwf19sfnkqpbllqw54mx30py7qz6p1ng3"; depends=[]; };
+  AlphaPart = derive2 { name="AlphaPart"; version="0.9.2"; sha256="1k0ib1v8jssdgnjjkwapiy4vjf380dk103kmxlziz771vq2wsaix"; depends=[directlabels dplyr gdata ggplot2 magrittr pedigree Rcpp reshape]; };
+  AlphaSimR = derive2 { name="AlphaSimR"; version="1.1.2"; sha256="0pc3byi19ydlnmddgc76gdqgvlyw7ixa3k55471x8kxnz22fhcx1"; depends=[BH R6 Rcpp RcppArmadillo]; };
   Amelia = derive2 { name="Amelia"; version="1.8.0"; sha256="0plrnmlwn91bmrx8ip83nqb15ykjxjl6m49788sinq5cinkdbh9y"; depends=[foreign Rcpp RcppArmadillo]; };
   AmericanCallOpt = derive2 { name="AmericanCallOpt"; version="0.95"; sha256="1nhy44j5bmmjsp6g79nrn741rzzxikhdnxk4wwbdj9igcc1bs573"; depends=[]; };
   AmesHousing = derive2 { name="AmesHousing"; version="0.0.4"; sha256="080r0fkmqsdrjgwbmdzacnkmd8py611z54i6r7nzj14r295d5qhk"; depends=[dplyr magrittr]; };
@@ -180,7 +182,6 @@ in with self; {
   AmpGram = derive2 { name="AmpGram"; version="1.0"; sha256="1j5zx6n8cyzh6dnv96234zmlfj90fs9w4vm32xw8iqgvpcviqyz6"; depends=[biogram devtools pbapply ranger shiny stringi]; };
   AmpliconDuo = derive2 { name="AmpliconDuo"; version="1.1.1"; sha256="0vw06x47vc0dqzafgpkn4abdsrhxfs9dq8nnrr2pl49skj5n4hks"; depends=[ggplot2 xtable]; };
   AmyloGram = derive2 { name="AmyloGram"; version="1.1"; sha256="1xdi3i3nw4fzj4d040r55f0gid72gy3vbz5nbdrvapl97zk3kp8c"; depends=[biogram ranger seqinr shiny]; };
-  AnDE = derive2 { name="AnDE"; version="1.0"; sha256="1yil8ab50wvlqmdla9kmfba8vfgy5r694r6igb58s6vnmld78yf2"; depends=[discretization foreign functional stringr]; };
   AnaCoDa = derive2 { name="AnaCoDa"; version="0.1.4.4"; sha256="1b03bxysvw9v4j3bzsmrjf5ci06v6s83ix89qxy73ba5akf2gb7h"; depends=[mvtnorm Rcpp VGAM]; };
   AnalyzeFMRI = derive2 { name="AnalyzeFMRI"; version="1.1-24"; sha256="0qkhw6bik6s82h4yb5bashqjl8wfxarivvz6r5ffn9cgrvlwyahd"; depends=[fastICA R_matlab]; };
   AncestryMapper = derive2 { name="AncestryMapper"; version="2.0"; sha256="1fr2y1a5rn7rq8aly94f618kywix32jwysi70nfhaqx8hf4zzprb"; depends=[svd]; };
@@ -189,7 +190,6 @@ in with self; {
   AnglerCreelSurveySimulation = derive2 { name="AnglerCreelSurveySimulation"; version="1.0.2"; sha256="1nhd0i30g5wb5jh96gfaa0lgnbnj0m2vy4gz7v2c3142396zalnx"; depends=[dplyr ggplot2]; };
   AnimalHabitatNetwork = derive2 { name="AnimalHabitatNetwork"; version="0.1.0"; sha256="1bhqypkiw5v9w26jbdmhndqj5hjfmf7zwivrq2hgs0zcjxwa8gfn"; depends=[ggplot2 igraph]; };
   AnnoProbe = derive2 { name="AnnoProbe"; version="0.1.6"; sha256="182m711l5m037mfyvr6334pmv338fxb3007j6713abvylsh6x06q"; depends=[Biobase DT ggplot2 ggpubr pheatmap]; };
-  AnnotLists = derive2 { name="AnnotLists"; version="1.2"; sha256="1g2khb2ggniwg2zcjamsm3bxyrl2zabvk540b5vyy9am9k83m1g9"; depends=[]; };
   AnnotationBustR = derive2 { name="AnnotationBustR"; version="1.3.0"; sha256="1q5yxzzmzvw1r64r4y0xh1fiyhaqbx5q4lzpawqaggra4w9igdl8"; depends=[ape seqinr]; };
   AnnuityRIR = derive2 { name="AnnuityRIR"; version="1.0-0"; sha256="0yvfqzwhm5nhywfhzkxkfm07c0qi6z21j1cdaypz89qn567aj1d9"; depends=[actuar EnvStats fitdistrplus mc2d tseries]; };
   AntAngioCOOL = derive2 { name="AntAngioCOOL"; version="1.2"; sha256="1krwms0y3xppc2y4m0az51wcbh4jq7mlr0jwinp66w8gh4k3qnp2"; depends=[caret rJava rpart RWeka]; };
@@ -202,13 +202,14 @@ in with self; {
   AovBay = derive2 { name="AovBay"; version="0.1.0"; sha256="110y9wbqr0m9b6wr1c5mncrdjpg247308989bswkqnim2msvnzcf"; depends=[BayesFactor BH broom car dplyr DT highcharter htmltools moments nortest purrr Rcpp RcppEigen RcppParallel reshape rstan rstantools shiny shinycssloaders shinydashboard shinydashboardPlus StanHeaders stringr tibble waiter]; };
   ApacheLogProcessor = derive2 { name="ApacheLogProcessor"; version="0.2.3"; sha256="0h4snigh1yhp34vw52h4b6qbh9c4cvwz2cx8fwvbnw6lslmg5cgv"; depends=[doParallel foreach stringr]; };
   AppliedPredictiveModeling = derive2 { name="AppliedPredictiveModeling"; version="1.1-7"; sha256="1wi0sw5w1c51rmh9z98wdpk5rgzsylkkb6g019djiwxvj92l99hh"; depends=[CORElearn ellipse lattice MASS plyr reshape2]; };
+  AquaBPsim = derive2 { name="AquaBPsim"; version="0.0.1"; sha256="0bf83kp8j7il5q9kr8r0pxlnsf6l9nvhgkny4y5wgc8pbki0dsmz"; depends=[MASS matlib pedigree readxl]; };
   AquaEnv = derive2 { name="AquaEnv"; version="1.0-4"; sha256="07yx7mbslqgqg7ky67n3xfhskaj7s3w5mvl7xkih48xbsdlmxi4l"; depends=[minpack_lm]; };
   ArArRedux = derive2 { name="ArArRedux"; version="1.0"; sha256="11h88gnj54cn5fbxf163s8kjqc1q452nzb218fjlwsxxwzaz5gbr"; depends=[]; };
   ArCo = derive2 { name="ArCo"; version="0.3-1"; sha256="1afjdmcalx3m19jlvqs83fg5qlds59l5zzg3pzk13qk31r0hz7mk"; depends=[boot glmnet Matrix]; };
   ArDec = derive2 { name="ArDec"; version="2.0"; sha256="14niggcq7xlvpdhxhy8j870gb11cpk4rwn9gwsfmcfvh49g58i80"; depends=[]; };
   ArchaeoChron = derive2 { name="ArchaeoChron"; version="0.1"; sha256="1qma2432mm73h72g9ah1k02wlcb6yrhc6mpai9nj7v58s126ffxn"; depends=[ArchaeoPhases Bchron coda rjags]; };
-  ArchaeoPhases = derive2 { name="ArchaeoPhases"; version="1.5"; sha256="1jp5ip595vvni1iqqm5wiqmqw9g2d1vvvwl06cr8qj8yh4n6xsfw"; depends=[coda digest dplyr DT ggalt ggplot2 ggthemes gplots hdrcde magrittr readr reshape2 shiny shinythemes tibble toOrdinal]; };
-  ArchaeoPhases_dataset = derive2 { name="ArchaeoPhases.dataset"; version="0.1.0"; sha256="1bwfw3azhz4cbcinimj1nnmz04zw4lmn3bh419w73jmcswqrym0n"; depends=[]; };
+  ArchaeoPhases = derive2 { name="ArchaeoPhases"; version="1.6"; sha256="0yhvk5lc80fdhcc0m2rp7li0l370c6d1ka0hf00nwcf4xdmd9hsy"; depends=[coda digest dplyr DT ggalt ggplot2 ggraph ggthemes gplots gtools hdrcde magrittr readr reshape2 shiny shinythemes tibble toOrdinal]; };
+  ArchaeoPhases_dataset = derive2 { name="ArchaeoPhases.dataset"; version="0.2.0"; sha256="0yffzc9jmyiil3p0bvf0fpq64mn55swcnizi3bgsl44d4j93y68q"; depends=[]; };
   Arothron = derive2 { name="Arothron"; version="2.0.3"; sha256="0rb1n9pmp7q2wdihn26kbpyvyznlk8mrs8c26l1ar4q29jw44rw4"; depends=[abind alphashape3d compositions doParallel foreach geometry Morpho rgl Rvcg stringr vegan]; };
   AsioHeaders = derive2 { name="AsioHeaders"; version="1.16.1-1"; sha256="0hp08v6if476745v2mk9k2sp1ikiac94fcnp8v9jdcyx954fqqlq"; depends=[]; };
   AssetCorr = derive2 { name="AssetCorr"; version="1.0.4"; sha256="0r98li2lxhfap1hn6h0l78phpm9m1nlcqhwzpq0ahhw0b1rd4qkf"; depends=[boot ggplot2 knitr mvQuad mvtnorm numDeriv qpdf Rdpack VineCopula]; };
@@ -219,7 +220,7 @@ in with self; {
   AsthmaNHANES = derive2 { name="AsthmaNHANES"; version="1.1.0"; sha256="106c6fh20s98fzixs4jpa4d413himrfg31rzwsxp72yldqxg70fx"; depends=[]; };
   AsyK = derive2 { name="AsyK"; version="1.5.5"; sha256="0mr09gfxq2xsdrh7h28fkczhs44m367gf7zj09kc5lc5zwd9fs83"; depends=[DELTD]; };
   AsynchLong = derive2 { name="AsynchLong"; version="2.1"; sha256="111kg1cacqlz4df1lnijybnrifjscjm78ji9p0ia615gacvdcfxa"; depends=[]; };
-  AtmChile = derive2 { name="AtmChile"; version="0.2.0"; sha256="0hrga00jsg6k7cjck7a4pqj0gx8n4issblp372vxhnpa5slqy1gg"; depends=[data_table DT lubridate openair plotly shiny shinycssloaders]; };
+  AtmChile = derive2 { name="AtmChile"; version="0.2.1"; sha256="1f4csk8qa6pimyhycnbd7jyj85gzadcxlfq8bfmjrs7rqydx7bqh"; depends=[data_table DT lubridate openair plotly shiny shinycssloaders]; };
   AtmRay = derive2 { name="AtmRay"; version="1.31"; sha256="162078jd032i72sgaar9hqcnn1lh60ajcqpsz4l5ysxfkghcxlh8"; depends=[]; };
   AugmenterR = derive2 { name="AugmenterR"; version="0.1.0"; sha256="0hi501p8ksaqzc9dq16dbmkz50kakgw3k0awdkbpci5can2sqvfl"; depends=[]; };
   AurieLSHGaussian = derive2 { name="AurieLSHGaussian"; version="0.2.0"; sha256="0dzwqv396inbx4r6758vr4gip1y42ahavspadgm4xhafvipg73rb"; depends=[flexclust igraph lsa reshape2 stringdist]; };
@@ -265,7 +266,7 @@ in with self; {
   BASS = derive2 { name="BASS"; version="1.2.2"; sha256="14zimfdkpsil22n1z4ldpi9smmja5kf7qqlklr5sr7y5avnh0hd9"; depends=[hypergeo truncdist]; };
   BASiNET = derive2 { name="BASiNET"; version="0.0.4"; sha256="0pmn4znqhpav729ai7zr027a7sx6bz2lmlk086crmwm1fnwipqq4"; depends=[Biostrings igraph randomForest rJava rmcfs RWeka]; };
   BASiNETEntropy = derive2 { name="BASiNETEntropy"; version="0.99.1"; sha256="1jacfcnl86frnrnhil4xx8hi7v2l0na7ldb8nfhic1cdrmz323jr"; depends=[Biostrings igraph randomForest]; };
-  BAT = derive2 { name="BAT"; version="2.7.1"; sha256="03p2nfws16ya9zxqdnx7v02pvd0hqh34j6g0xk72wa2kpx4lv0jr"; depends=[ape geometry hypervolume MASS nls2 raster vegan]; };
+  BAT = derive2 { name="BAT"; version="2.8.0"; sha256="102z5x2c1dvmizza4zbzldimxl0vrvr9dnsm9jq7k9ml2mbipv3l"; depends=[ape geometry hypervolume MASS nls2 raster vegan]; };
   BAYSTAR = derive2 { name="BAYSTAR"; version="0.2-9"; sha256="0crillww1f1jvhjw639sf09lpc3wpzd69milah143gk9zlrkhmz2"; depends=[coda mvtnorm]; };
   BAwiR = derive2 { name="BAwiR"; version="1.2.7"; sha256="1vvym7bbfbi1x91962nfcqql0fiyv4svdk5329rq43nnh188i456"; depends=[Anthropometry dplyr ggplot2 ggthemes httr lubridate magrittr plyr purrr reshape2 rvest rworldmap scales stringi stringr tibble tidyr xml2]; };
   BB = derive2 { name="BB"; version="2019.10-1"; sha256="0kf9sfsm3n036a8a8gjfpc9qdryvadb019kqjh80n1szdv7bdl04"; depends=[quadprog]; };
@@ -287,7 +288,6 @@ in with self; {
   BCHM = derive2 { name="BCHM"; version="1.00"; sha256="1nyf65grcyf74sixixzl12gylk2rzh7n5id4mbhim4lzdm4j272i"; depends=[cluster coda crayon knitr plyr rjags]; };
   BCRA = derive2 { name="BCRA"; version="2.1.2"; sha256="17h0ara1y3fh2xyhjarbw3b549v6kq108bg946ndh7kjykara9dd"; depends=[]; };
   BCSub = derive2 { name="BCSub"; version="0.5"; sha256="0c8dlxsx23qfyygmajg2amj78ax01kb3808d9hvy7g3hkgp2i2fp"; depends=[MASS mcclust nFactors Rcpp RcppArmadillo]; };
-  BCT = derive2 { name="BCT"; version="1.1"; sha256="058iir5mhgc7zy1nha8g6299ya9jvg1skxj3flgn3b97snjx5qky"; depends=[igraph Rcpp stringr]; };
   BCellMA = derive2 { name="BCellMA"; version="0.3.4"; sha256="1njprs7ksv0w18ffs0agz0290aa2akw48225iaa3bjhbl08dpidl"; depends=[ggplot2 reshape2]; };
   BCgee = derive2 { name="BCgee"; version="0.1"; sha256="0ad0dj2ymgvkmcmq3jlpmn0pgigdql0xgvcwsbpdydv33a6snr04"; depends=[]; };
   BClustLonG = derive2 { name="BClustLonG"; version="0.1.3"; sha256="1p6fm60vhs9l3b120h2l7nz4rf4ckhka7124kzwjd7znax2a336g"; depends=[lme4 MASS mcclust Rcpp RcppArmadillo]; };
@@ -323,6 +323,7 @@ in with self; {
   BHTSpack = derive2 { name="BHTSpack"; version="0.6"; sha256="01y3ly83i70lkg2kgbw1r7r1g4k9rk41qyzzscbp8zgc9z63ll8z"; depends=[R2HTML xtable]; };
   BI = derive2 { name="BI"; version="1.0.0"; sha256="192qdw2ag8sdw5v7xsc19y2a6w7gs58lnlh0yakc2i0jjad3iyw5"; depends=[]; };
   BICORN = derive2 { name="BICORN"; version="0.1.0"; sha256="0mqk8vgp6jdk7f0paa06yqlibkd1y3vs69pg7i9mkvxmda7p4nkq"; depends=[]; };
+  BIEN = derive2 { name="BIEN"; version="1.2.5"; sha256="0s98n6zbf48vssd3h63k6kashcxv1kawcb026n0ngsfpc5dv6i48"; depends=[ape DBI doParallel fasterize foreach raster rgdal rgeos RPostgreSQL sf sp]; };
   BIFIEsurvey = derive2 { name="BIFIEsurvey"; version="3.3-12"; sha256="1kphczvj3rxyjvi93cx2j714scvmmpqv5wrg5pdyy8l891jxsr89"; depends=[miceadds Rcpp RcppArmadillo]; };
   BIGDAWG = derive2 { name="BIGDAWG"; version="3.0.3"; sha256="1zbikvhyaksbddv2kz8nqkidjy4qsfp6a8wwyxjy5a0wcnqnwsxf"; depends=[haplo_stats httr XML]; };
   BIGL = derive2 { name="BIGL"; version="1.6.5"; sha256="1ksp88nspjd2si0kicv3j6fvb8i46phgpf6mw8ihfxkn9mrjbs2v"; depends=[ggplot2 MASS minpack_lm nleqslv numDeriv progress rgl robustbase scales]; };
@@ -331,6 +332,7 @@ in with self; {
   BIOM_utils = derive2 { name="BIOM.utils"; version="0.9"; sha256="0xckhdvf15a62awfk9rjyqbi6rm7p4awxz7vg2m7bqiqzdll80p7"; depends=[]; };
   BIOMASS = derive2 { name="BIOMASS"; version="2.1.7"; sha256="015gfn7b0viymrb06q33gwz8ljpiwawrdscb2q2bk0j6vi1gnncx"; depends=[data_table jsonlite minpack_lm proj4 rappdirs raster sp]; };
   BIOdry = derive2 { name="BIOdry"; version="0.8"; sha256="1zga8g50wjnnz2h9b3ak9q67qnl1f14cq6hvdzf9f84pphsnpasa"; depends=[ecodist nlme]; };
+  BISdata = derive2 { name="BISdata"; version="0.1-1"; sha256="0h0fw2qhv0jq9h7mig7rfg5w9gc9q3hz6jl5n3v85yjkw5fxfdns"; depends=[]; };
   BKPC = derive2 { name="BKPC"; version="1.0.1"; sha256="17gmhf6qq8jn2xzkqvjq60xzy0slz6kgfpd0d6hlpnf30ww7q923"; depends=[kernlab]; };
   BLCOP = derive2 { name="BLCOP"; version="0.3.3"; sha256="08y9vmx3cknjvk6ngfwxlfnc03cqpj97i1ijrs1cw5sahjc0vmhc"; depends=[fBasics fMultivar fPortfolio knitr MASS quadprog rmarkdown RUnit timeSeries]; };
   BLModel = derive2 { name="BLModel"; version="1.0.2"; sha256="0l5f2v5ggadmrci3qhhmxm3j9i6jii0anq5rv5vk50y2qzii2q15"; depends=[]; };
@@ -372,15 +374,15 @@ in with self; {
   BRDT = derive2 { name="BRDT"; version="0.1.0"; sha256="1yv2fh4cc9h35l8cngpxnqa83a7bx79pr7c1gp9h84p1pigg8282"; depends=[]; };
   BRETIGEA = derive2 { name="BRETIGEA"; version="1.0.3"; sha256="0q4phggz6smzd294znr1fp0gskpcwdbd6hnvvl3q3z1h7cpf40sn"; depends=[]; };
   BRINDA = derive2 { name="BRINDA"; version="0.1.3"; sha256="1nq7wlwwlyfff0rn4yv8bws0ibd7wssb1jd6ccc7xvhdb2bqv9kc"; depends=[berryFunctions data_table dplyr Hmisc rlang]; };
-  BRISC = derive2 { name="BRISC"; version="1.0.2"; sha256="1qkb98wlqyhi378darx62f5ymsr290pqq82msqwcj6ks0xi9mj2s"; depends=[matrixStats pbapply RANN rdist]; };
+  BRISC = derive2 { name="BRISC"; version="1.0.4"; sha256="1gvasqx9876jirh37imvxhlnr2qri0gd5nz5fjk9d0vj15w7kxsc"; depends=[matrixStats pbapply RANN rdist]; };
   BRL = derive2 { name="BRL"; version="0.1.0"; sha256="13qi78v3057qn4hfby14sp26hy3ibl50f06x8gpak6gi76g8bhwi"; depends=[]; };
   BRugs = derive2 { name="BRugs"; version="0.9-1"; sha256="1m3dlw6201bzf6fcm4qscpsmgjkpidwiil3m4iwfn0b0iv3dclcv"; depends=[coda]; };
   BSBT = derive2 { name="BSBT"; version="1.2.0"; sha256="1whf34fbnsjargby8dq2784rj9mj80ldjgdd3nm897h05h17bs9f"; depends=[expm igraph MASS]; };
   BSDA = derive2 { name="BSDA"; version="1.2.1"; sha256="0vcf3h1rkgs0mr6rri2zjkb3c62dmndm281zh4ddz2vyw27wpwg2"; depends=[e1071 lattice]; };
   BSGS = derive2 { name="BSGS"; version="2.0"; sha256="08m8g4zbsp55msqbic4f17lcry07mdn0f5a61zdcy2msn2ihzzf9"; depends=[batchmeans MASS plyr pscl]; };
   BSGW = derive2 { name="BSGW"; version="0.9.2"; sha256="1q6qvm9yxh35wywrzs3kr31jsa0bmbwrqh0r3qjc0dzi6q8n6pjy"; depends=[doParallel foreach MfUSampler survival]; };
-  BSL = derive2 { name="BSL"; version="3.2.3"; sha256="14114fwvvjzd5h17kzdgcfbm16m00g9iqzdfjvbq74ydy5jh3bm1"; depends=[coda copula DBI doRNG foreach ggplot2 glasso gridExtra MASS mvtnorm Rcpp RcppArmadillo Rdpack stringr whitening]; };
-  BSPADATA = derive2 { name="BSPADATA"; version="1.0"; sha256="1g709i0icxlxq2ljb2sm5iyc8ljqxadi62xc4mg702fsgl0x5ny9"; depends=[mvtnorm pscl spdep]; };
+  BSL = derive2 { name="BSL"; version="3.2.4"; sha256="16w5lkzwq8b393cxga4cdcwk1f185g24k7lq0xr842g94cc8jdpl"; depends=[coda copula DBI doRNG foreach ggplot2 glasso gridExtra MASS mvtnorm Rcpp RcppArmadillo Rdpack stringr whitening]; };
+  BSPADATA = derive2 { name="BSPADATA"; version="1.1.0"; sha256="190zmjvw5q5gg47g21n2imclz1qg585cvjxl501mm910gx50rldb"; depends=[coda mvtnorm pbapply pscl spdep]; };
   BSS = derive2 { name="BSS"; version="0.1.0"; sha256="1lxmrdmr6c0niqz61kc9ybzszprn66jyinfy4dr9r6i161gvs4qg"; depends=[hypergeo MASS phangorn]; };
   BSSasymp = derive2 { name="BSSasymp"; version="1.2-3"; sha256="1nqj8w8ilyhladjzhjp1rhi3ff7ik1m76pdhgs16ph7pzdw36w6i"; depends=[fICA JADE]; };
   BSSprep = derive2 { name="BSSprep"; version="0.1"; sha256="0dkhx8vx9kg902i6nzkzbighf2szq12l0p8iwinlpb2qdf526lk6"; depends=[Rcpp RcppArmadillo]; };
@@ -393,7 +395,7 @@ in with self; {
   BTYDplus = derive2 { name="BTYDplus"; version="1.2.0"; sha256="1shai7kij20g3isd6l29i696pkzymr0qq2i9gzfsxmvdb4g4pcm2"; depends=[bayesm BTYD coda data_table mvtnorm Rcpp]; };
   BTdecayLasso = derive2 { name="BTdecayLasso"; version="0.1.0"; sha256="0x1s2zvv3vnapk5wp8582zwflsqvgc8khkvl5ch9i70v739jxp15"; depends=[ggplot2 optimr]; };
   BUCSS = derive2 { name="BUCSS"; version="1.2.1"; sha256="1nf0xpy5r49yfd0xydzxxxrc6isj14s8lswrf5nhh7g60nkkwcxr"; depends=[]; };
-  BVAR = derive2 { name="BVAR"; version="1.0.2"; sha256="12x6jkfgmskhvr8xgyfik8i5hkb8garq27k3nyvl69ickhgwrjk3"; depends=[mvtnorm]; };
+  BVAR = derive2 { name="BVAR"; version="1.0.3"; sha256="0x0cb0hj7a7lww0mvgj2i907ww390wyznwqqn5b5dk0pgi28wy5z"; depends=[mvtnorm]; };
   BVARverse = derive2 { name="BVARverse"; version="0.0.1"; sha256="00nghvd5bavmn5hw89pcz20x5kbpxr707r5yvvsakn77rdis37ig"; depends=[BVAR generics ggplot2 rlang tidyr]; };
   BVSNLP = derive2 { name="BVSNLP"; version="1.1.9"; sha256="1k2sr9wq0q7lq2hmgp75hzxy6v688lw5npwvpma88975yqi6ghiw"; depends=[doParallel foreach Rcpp RcppArmadillo RcppEigen RcppNumerical]; };
   BWGS = derive2 { name="BWGS"; version="0.2.1"; sha256="1473lvkmpf2dsgnccwl5a8wp9yvddciqdql4naba4lwghimxy39w"; depends=[BGLR brnn e1071 glmnet randomForest rrBLUP stringi]; };
@@ -402,6 +404,7 @@ in with self; {
   BaM = derive2 { name="BaM"; version="1.0.2"; sha256="017x6i8glbbx8aqglyglv9pvcss4vg6l6rnwzaa4vbln95y4582d"; depends=[dlm MASS mice]; };
   BaPreStoPro = derive2 { name="BaPreStoPro"; version="0.1"; sha256="0zyyyrr5h8dhjsmgaii8jmb8ignvixpc9nzbfishw9yymjswvm57"; depends=[]; };
   BaSTA = derive2 { name="BaSTA"; version="1.9.4"; sha256="1j092gsdip7rpw0g74ha0kjsrqpp5swi7wd4sxlmx6zarcqnxlal"; depends=[snowfall]; };
+  BaSkePro = derive2 { name="BaSkePro"; version="0.1.0"; sha256="06wnl128anr0isq07qn2xr426c8iybmrbixz93hxx1pshcm64f37"; depends=[MASS]; };
   BacArena = derive2 { name="BacArena"; version="1.8.2"; sha256="1fv3hmr8frqgdl22cvp5w5089ppmqzw42llw2ls054dvsdadlqm9"; depends=[deSolve ggplot2 glpkAPI igraph Matrix plyr R_matlab Rcpp RcppArmadillo RcppEigen ReacTran reshape2 stringr sybil]; };
   BalanceCheck = derive2 { name="BalanceCheck"; version="0.2"; sha256="0aal641vfbjk3w6ipwbqqmm9nnxs962hjmpph9wnqaqk5r6s7brs"; depends=[ade4 mvtnorm]; };
   BalancedSampling = derive2 { name="BalancedSampling"; version="1.5.5"; sha256="01ayvjfs83dbnk0m9xb7y9rnxxpfpb6w4qjdffd6hdhcn2s5f73d"; depends=[Rcpp SamplingBigData]; };
@@ -417,7 +420,7 @@ in with self; {
   BatchGetSymbols = derive2 { name="BatchGetSymbols"; version="2.6.1"; sha256="0jm4bswczmha7p8xb78n4q3wxyjxmi7ya5zrfm0gb31g7r275wba"; depends=[crayon curl dplyr furrr future lubridate purrr quantmod rvest scales stringr tibble tidyr XML zoo]; };
   BatchJobs = derive2 { name="BatchJobs"; version="1.8"; sha256="1zz4sspj596pijxlz321g0jy2rg9ki83j6fihbwisjwr66p2vk1m"; depends=[backports BBmisc brew checkmate data_table DBI digest RSQLite sendmailR stringi]; };
   BayHaz = derive2 { name="BayHaz"; version="0.1-3"; sha256="08ilghlkgyma5758yw7mdgqycqcillqmx73knzzdlg2kzc77dvg6"; depends=[]; };
-  BayLum = derive2 { name="BayLum"; version="0.2.0"; sha256="1i0pfqygn8s6r63089wgs74fx6cwm7ypascr70g4zwgbgkp8l80d"; depends=[ArchaeoPhases coda hexbin KernSmooth Luminescence rjags runjags]; };
+  BayLum = derive2 { name="BayLum"; version="0.2.1"; sha256="0h0x18al2rqs6wjf4jayc1qv8lkn7rvkbjmr5h1gcggn2c4byyjn"; depends=[ArchaeoPhases coda hexbin KernSmooth Luminescence rjags runjags]; };
   BaySIC = derive2 { name="BaySIC"; version="1.0"; sha256="023ji6q1nvksmhp3ny8ad39xxccc0a1rv9iaiaagwavgzzc0pjd9"; depends=[fields poibin rjags]; };
   BayesARIMAX = derive2 { name="BayesARIMAX"; version="0.1.1"; sha256="1rcfq0r8sqiqs65mbpcr8i4667cdb50k6bx6wdh9spr0djh8gfv0"; depends=[coda forecast]; };
   BayesBEKK = derive2 { name="BayesBEKK"; version="0.1.0"; sha256="0fykcmf54820krwy7q573gmlcrx96i94knx7rgzc83i287lnpnfg"; depends=[coda MTS mvtnorm]; };
@@ -470,10 +473,9 @@ in with self; {
   BayesTree = derive2 { name="BayesTree"; version="0.3-1.4"; sha256="0saca1ln582szqzc2c78z24b1lszzhc9hvsin73kb7r2dlg5ciii"; depends=[nnet]; };
   BayesTreePrior = derive2 { name="BayesTreePrior"; version="1.0.1"; sha256="13igmvw1wj8kzfijzsrhdqr52kv4vqrm91i71ay6f7jnkry3spaw"; depends=[]; };
   BayesTwin = derive2 { name="BayesTwin"; version="1.0"; sha256="026blnhihbx9bpd63mxhbp0kpvj0lwbj7mg72alyfr2jnrh1n3lp"; depends=[coda foreign matrixStats rjags]; };
-  BayesValidate = derive2 { name="BayesValidate"; version="0.0"; sha256="1gli65avpkb90asx92l1yjbwaxcsyb920idyjwgd2sl2b3l657ly"; depends=[]; };
   BayesVarSel = derive2 { name="BayesVarSel"; version="2.0.1"; sha256="1107amhj3bclc434qizffjfmsa2w36qkp6gq7vgl0hwv0ncc0vyn"; depends=[MASS mvtnorm]; };
   BayesX = derive2 { name="BayesX"; version="0.3-1"; sha256="0g4cdkvicqzg75qgr62j89dc9mni38ai7705j6jbfx59vn6dbrr5"; depends=[coda colorspace maptools shapefiles sp]; };
-  BayesXsrc = derive2 { name="BayesXsrc"; version="3.0-1.1"; sha256="00q7hwan8db1a3wxczksl52bghyhfql3wj7sjvq50zsp0pjr6vng"; depends=[]; };
+  BayesXsrc = derive2 { name="BayesXsrc"; version="3.0-2"; sha256="04p17d87b2gg3p08jmdmg570ppdzci8r4qxcq115qs58bvqih47v"; depends=[]; };
   BayesianAnimalTracker = derive2 { name="BayesianAnimalTracker"; version="1.2"; sha256="1pgjijqznfdpvw296h5vksnxgspxs7qhy6s84ww7abnlhg59bz5s"; depends=[TrackReconstruction]; };
   BayesianFROC = derive2 { name="BayesianFROC"; version="1.0.0"; sha256="03f0cj528cb4rhkzs4vw4k1wq4gxb3zq121pamjwhbal93b8mz7a"; depends=[bridgesampling car crayon fastDummies ggplot2 knitr pracma Rcpp rhandsontable rstan shiny shinydashboard shinyjs shinythemes]; };
   BayesianGLasso = derive2 { name="BayesianGLasso"; version="0.2.0"; sha256="09yb1qqx6qlsspk3ndrcqxy0956iqznw0rmyvqxgxxp3zd3y21xp"; depends=[MASS statmod]; };
@@ -484,7 +486,7 @@ in with self; {
   BayesianTools = derive2 { name="BayesianTools"; version="0.1.7"; sha256="0330bbnny35h4gsmwg31p3n3i511wrckzmp174ydm55pvsdkhjdg"; depends=[bridgesampling coda DHARMa ellipse emulator gap IDPmisc MASS Matrix msm mvtnorm numDeriv Rcpp tmvtnorm]; };
   Bayesiangammareg = derive2 { name="Bayesiangammareg"; version="0.1.0"; sha256="0b0fqmig7vgmlrq2884q0apfd89nn5k4dj8rqjizkkbw4qpzmylb"; depends=[mvtnorm]; };
   Bayesiantreg = derive2 { name="Bayesiantreg"; version="1.0"; sha256="0m8snwhjskwxdm0a2wsmf1j7d0xxvg4sh0ix64zss71l610wica7"; depends=[MASS Matrix mvtnorm]; };
-  Bayesrel = derive2 { name="Bayesrel"; version="0.7.1"; sha256="080wxv9ik1ph7h74xfsa57dsddsvlvag0iybgrdajkn0svc5qb9m"; depends=[coda LaplacesDemon lavaan MASS Rcpp RcppArmadillo Rdpack]; };
+  Bayesrel = derive2 { name="Bayesrel"; version="0.7.4"; sha256="1mjfjyvzacbc4gmg69vr6mdkxl9133dl13czy4dvf6phgfwqgz2b"; depends=[coda LaplacesDemon lavaan MASS progress Rcpp RcppArmadillo Rdpack]; };
   BcDiag = derive2 { name="BcDiag"; version="1.0.10"; sha256="1gyinmx5wn2kk70hiy28ghilkhfirfjbfqdrqq5h3wfb4khnq6pz"; depends=[fabia]; };
   Bchron = derive2 { name="Bchron"; version="4.7.6"; sha256="1s8bx9a5rpcrw0msnjf565crz3d2fykvy5fj1chbqxzjh7qm865w"; depends=[checkmate coda dplyr ggforce ggplot2 ggridges magrittr MASS mclust purrr scales stringr]; };
   BeSS = derive2 { name="BeSS"; version="2.0.3"; sha256="09zxpzcaj13fn38cwd0xk0254aphb3jn1wdwn9hiq9vapfsgn0dx"; depends=[glmnet Matrix Rcpp RcppEigen survival]; };
@@ -496,24 +498,25 @@ in with self; {
   Bestie = derive2 { name="Bestie"; version="0.1.4"; sha256="1w8d1zrxp5v0wlldzj0kmcrdwyn5f2klbdpkhd79hvpf3lpq6h68"; depends=[BiDAG mvtnorm Rcpp]; };
   BetaBit = derive2 { name="BetaBit"; version="1.4"; sha256="11cvl9m20ycc0zsxbdapjflgsiaxx4dzaygjhv948adjfi5fycbn"; depends=[digest]; };
   BetaPASS = derive2 { name="BetaPASS"; version="1.1-1"; sha256="17q1bfmijv38zyaj5fxlylf5zmkqry4ca9wm5km6zpksgsg2kjjq"; depends=[betareg ggplot2 pbapply]; };
+  BetterReg = derive2 { name="BetterReg"; version="0.1.0"; sha256="0v9vw77h469352w0apy3ybwcjq64qdrizlrlmxk8c1x9kc624264"; depends=[car dplyr]; };
   BeviMed = derive2 { name="BeviMed"; version="5.8"; sha256="12ngw3b05mqsf95svvkk5s8w0fs1yfbpbfk8x9a9v2yva5n65y7a"; depends=[Matrix Rcpp]; };
   BeyondBenford = derive2 { name="BeyondBenford"; version="1.4"; sha256="04jdx35955g44v2is6zxfw1gip7zh3li8divc7iy5hl0jrshfhv3"; depends=[ggplot2]; };
   Bhat = derive2 { name="Bhat"; version="0.9-10"; sha256="1vg4pzrk3y0dk1kbf80mxsbz9ammkysh6bn26maiplmjagbj954v"; depends=[]; };
   BiBitR = derive2 { name="BiBitR"; version="0.3.1"; sha256="0wfwph6nw12hb43j14i9ycj8m2zn0m5ynp7afq9cray8rbgvxfv6"; depends=[biclust cluster dendextend foreign lattice randomcoloR viridis]; };
   BiDAG = derive2 { name="BiDAG"; version="2.0.4"; sha256="1vbkjz7sdmnqyhc5br8d0g1dgrx59v0lqjbk9ya64c2c6izhlq3c"; depends=[graph pcalg RBGL Rcpp Rgraphviz]; };
-  BiDimRegression = derive2 { name="BiDimRegression"; version="2.0.0"; sha256="0k0708z6xn04zjkc4sk15649wji6hl5q4rvd28sz5kbq7z54j1j5"; depends=[Formula]; };
+  BiDimRegression = derive2 { name="BiDimRegression"; version="2.0.1"; sha256="00zcvk5v8rn3dp02sivs5z7cch9y8csp5cjhhs4ragdgcry0c3i5"; depends=[Formula]; };
   BiProbitPartial = derive2 { name="BiProbitPartial"; version="1.0.3"; sha256="0y19b8bkwr7rpygmj03013slmfbyd7aj6714hm14w5rdbnckymw3"; depends=[coda Formula mvtnorm numDeriv optimr pbivnorm Rcpp RcppArmadillo RcppTN]; };
   BiSEp = derive2 { name="BiSEp"; version="2.2"; sha256="1ha7rc1q54dr2xl4bpkiwl703igmmi9qphsgv2h0flq7iz0gr351"; depends=[AnnotationDbi GOSemSim mclust]; };
   BiTrinA = derive2 { name="BiTrinA"; version="1.3"; sha256="0sjq5a21vpsjs0ad0v8gsqlbk3n8virg1hzj0nvgm3h3xqhymh1d"; depends=[diptest]; };
-  BiasCorrector = derive2 { name="BiasCorrector"; version="0.2.0"; sha256="1kkadpwcbd1x5vgfrhwf1560fc4b624wiq8ciciakb8l5hyw53bq"; depends=[data_table DT magrittr rBiasCorrection shiny shinydashboard shinyjs]; };
+  BiasCorrector = derive2 { name="BiasCorrector"; version="0.2.1"; sha256="1f1r1s7rbia6n7v5xnz1kj459n34xdz0qwkf5pipknmjzsc9f4nj"; depends=[data_table DT magrittr rBiasCorrection shiny shinydashboard shinyjs]; };
   BiasedUrn = derive2 { name="BiasedUrn"; version="1.07"; sha256="13i2lgfnjhlbbm2yxfc2l5hswqw6x03pwba5csjmirv8kpjw4xr3"; depends=[]; };
   BibPlots = derive2 { name="BibPlots"; version="0.0.8"; sha256="0zvbyh8spr0ywj64b2rc8jcq4fgn87858km4mkkh17g30ympg767"; depends=[]; };
   BifactorIndicesCalculator = derive2 { name="BifactorIndicesCalculator"; version="0.2.2"; sha256="1vnwksw0j4lc2knlcmm5748pf4d7r44sn34s1mrv9p50hlnkk85p"; depends=[lavaan mirt mnormt MplusAutomation tidyr]; };
-  BigQuic = derive2 { name="BigQuic"; version="1.1-10"; sha256="0gq55419vwd52k626igjjvb6fwmq3q5sc57x0r56qippzgljqlwv"; depends=[Matrix Rcpp scalreg]; };
+  BigQuic = derive2 { name="BigQuic"; version="1.1-11"; sha256="1dxzkj26hd05mi02i35k7dknlikjfbsgvjrqwf42k3kjpf501xh4"; depends=[Matrix Rcpp scalreg]; };
   BigVAR = derive2 { name="BigVAR"; version="1.0.6"; sha256="03d5a61clkngq67mkf2pyjj3k633kxp7g37myfplbxi55bdfmdlz"; depends=[lattice MASS Rcpp RcppArmadillo RcppEigen zoo]; };
   BimodalIndex = derive2 { name="BimodalIndex"; version="1.1.9"; sha256="1m1dcj0ryjicaqjlkch7aymsklmvjvn2dvnbssi1cpi54bzn8l7g"; depends=[mclust oompaBase]; };
   BinGSD = derive2 { name="BinGSD"; version="0.0.1"; sha256="0ygr5na7s82xa6vv9f3j6ns5sfhdacyykl1fg422lpkwbss39dnn"; depends=[mvtnorm]; };
-  BinMat = derive2 { name="BinMat"; version="0.1.3"; sha256="0wfvi02srdjchnsyi0vd8ym1jck68xmysfqn97d7h6psnxngq9vi"; depends=[ggpubr magrittr MASS pvclust tibble]; };
+  BinMat = derive2 { name="BinMat"; version="0.1.5"; sha256="1brgv0zmprvwx6x670mmxxlk50nh4ds63bip48mlh0p1qv8pm9db"; depends=[ggpubr MASS pvclust tibble]; };
   BinNonNor = derive2 { name="BinNonNor"; version="1.5.3"; sha256="0ijjv2w4bx0i3mks7s4vii21hc9iq69p3jld1qg68a6115njsm24"; depends=[BB corpcor Matrix mvtnorm]; };
   BinNor = derive2 { name="BinNor"; version="2.3.3"; sha256="07r7nf4ygilp470z93x9dc5zddc96m2dkw6d2s4an8fbr4pljc1y"; depends=[corpcor Matrix mvtnorm psych]; };
   BinOrdNonNor = derive2 { name="BinOrdNonNor"; version="1.5.2"; sha256="17981jfjjgsfzjwbv9cjgqdha846rf03nfd8kgj4wiljgz855mz9"; depends=[BB corpcor GenOrd Matrix mvtnorm OrdNor]; };
@@ -568,7 +571,7 @@ in with self; {
   BoltzMM = derive2 { name="BoltzMM"; version="0.1.4"; sha256="17nsjr2y8nniaxd6f13g85gb9rshar72qqp45yh2ygg4zrx1d226"; depends=[BH Rcpp RcppArmadillo]; };
   BonEV = derive2 { name="BonEV"; version="1.0"; sha256="0lmgrg53b0abb5hidyjjmwn7lf2ani84k9fil7g6j6mdajjhh1b7"; depends=[qvalue]; };
   BondValuation = derive2 { name="BondValuation"; version="0.1.0"; sha256="1sgnf5a6rm1br6i82bmp7s044012bwfxa9yb6bjkq8kr83mf7i6v"; depends=[Rcpp timeDate]; };
-  BoneProfileR = derive2 { name="BoneProfileR"; version="2.0"; sha256="067fvsrldg79csvjn3qizfrsggm2s9kn3wzf5516ggq6v5k0842a"; depends=[HelpersMG imager knitr rmarkdown shiny]; };
+  BoneProfileR = derive2 { name="BoneProfileR"; version="2.1"; sha256="1wdwf15x6rz7dciqyyqjlgzgqxas9lzmg3410qhbvcslf6w9gq0y"; depends=[HelpersMG imager knitr rmarkdown shiny]; };
   BoolFilter = derive2 { name="BoolFilter"; version="1.0.0"; sha256="14z4fzf8p4wgi939qs6v39a3xizccjcx7j4szsydllpkvxbwggbw"; depends=[BoolNet Rlab]; };
   BoolNet = derive2 { name="BoolNet"; version="2.1.5"; sha256="11fysc39vfk3zb9qklryi8gl42c3hqgzlvci4jj0zkqnm0v9amqk"; depends=[igraph XML]; };
   Boom = derive2 { name="Boom"; version="0.9.7"; sha256="0zw5i6xigpg8jnk4k2w8iqnxlbgk8zzd5dmfmi5wjc153vgssk12"; depends=[MASS]; };
@@ -580,7 +583,6 @@ in with self; {
   Boptbd = derive2 { name="Boptbd"; version="1.0.5"; sha256="1p786avc37yq5g01zh6sqx7b1rvbxrh6gbxsad4bdvr12cjdsss6"; depends=[igraph MASS Matrix]; };
   Boruta = derive2 { name="Boruta"; version="7.0.0"; sha256="0y2w4wb45kfnzrxcrdsiwgal9fsnlr3wad1sqdc70qv8gp921xbg"; depends=[ranger]; };
   BosonSampling = derive2 { name="BosonSampling"; version="0.1.3"; sha256="0dxvjdvzv2b3763x4wrkw02q57l42286w9bg2xhcngmcpdhnkg51"; depends=[Rcpp RcppArmadillo]; };
-  BoutrosLab_plotting_general = derive2 { name="BoutrosLab.plotting.general"; version="6.0.3"; sha256="0sirpdp7k28wwn5k5wyc0ib6abb5b1qpjrrk3m168x5yg1s2hqkf"; depends=[cluster e1071 gridExtra gtable hexbin lattice latticeExtra MASS]; };
   BradleyTerry2 = derive2 { name="BradleyTerry2"; version="1.1-2"; sha256="0vss3ib74cz2zn1afmrvllawghj9z2ay4x1ysvk4rqvjmiia4a2i"; depends=[brglm gtools lme4 qvcalc]; };
   BrailleR = derive2 { name="BrailleR"; version="0.32.1"; sha256="0hnwfn3z9d22jp9xqgz7sz3yqlay863ys9czvd07xyscqpzq973k"; depends=[devtools dplyr extrafont ggplot2 gridGraphics gridSVG hunspell knitr magrittr mathjaxr moments nortest reticulate rlang rmarkdown roloc rolocISCCNBS whisker XML xtable]; };
   BrainCon = derive2 { name="BrainCon"; version="0.1.0"; sha256="10c76l14kdvcyfhph5zsrn4ayh0x454cxbn1v85jamcalp610n69"; depends=[glmnet MASS]; };
@@ -600,14 +602,15 @@ in with self; {
   BusinessDuration = derive2 { name="BusinessDuration"; version="0.2.0"; sha256="17923n1r3n8kp7qqzr2dv8ffax355yyc3b9f6mv2hxy6k31hrrb8"; depends=[chron]; };
   BuyseTest = derive2 { name="BuyseTest"; version="2.3.10"; sha256="19mp6hyj4fdq7gmpd9jfg6rgf7mazbgxzpf9fs258s91pm35vljp"; depends=[data_table doParallel foreach ggplot2 lava prodlim Rcpp RcppArmadillo riskRegression]; };
   Bvalue = derive2 { name="Bvalue"; version="1.0"; sha256="17zlllzjrcq4grggal3hlg384990n62wnflr2g21fa6hcnglwy7d"; depends=[]; };
-  C443 = derive2 { name="C443"; version="3.2.2"; sha256="0fs8pcqwhb9wqwharghr05v6jvgsqln3mya2v0zzcmir6qql33v2"; depends=[cluster ggplot2 gridExtra igraph MASS partykit plyr qgraph RColorBrewer reshape2 rpart]; };
+  BwQuant = derive2 { name="BwQuant"; version="0.1.0"; sha256="0pna0ppj9hkxpc2mbyy0ss7zrl5y736h5xsfkhmqr0389vmgibrj"; depends=[KernSmooth nleqslv quantreg]; };
+  C443 = derive2 { name="C443"; version="3.2.3"; sha256="0zjnwkn17213x2zhflmmrplp6kr8zg04pfynpkwsgmf4rqyfyjvx"; depends=[cluster ggplot2 gridExtra igraph MASS partykit plyr qgraph RColorBrewer reshape2 rpart]; };
   C50 = derive2 { name="C50"; version="0.1.6"; sha256="1d4cy6xps17c97r5hipa2ar9hrw17iq1ld7afv5fd1v2cpic086c"; depends=[Cubist partykit]; };
-  CA3variants = derive2 { name="CA3variants"; version="3.0"; sha256="0n0a4rxaskz94kibcycrsg46w8r515r4pzadvlv6b43qpgwrqh92"; depends=[checkmate ggforce ggplot2 ggrepel gridExtra multichull plotly]; };
+  CA3variants = derive2 { name="CA3variants"; version="3.1"; sha256="0gfr8giwb9z840gbf0xzdyd1xxjhd2m28fg4djja83kdwjf73fb5"; depends=[checkmate ggforce ggplot2 ggrepel gridExtra multichull plotly]; };
   CADFtest = derive2 { name="CADFtest"; version="0.3-3"; sha256="06bwv728ckalzibxginzfica24w18m4g87i0i064m3q89ghmnlqm"; depends=[dynlm sandwich tseries urca]; };
   CADStat = derive2 { name="CADStat"; version="3.0.8"; sha256="0wdglw1vyd5gz70r9ma0mwshvizv39nb4ahp8pvr70c4qqzsfhc0"; depends=[bio_infer car gdata gmodels JavaGD JGR lattice MASS quantreg rJava rpart XML]; };
   CAISEr = derive2 { name="CAISEr"; version="1.0.16"; sha256="08br6hdpgf9y2fix299diwd8r3q4gylpbzll4knpxq0vi18a3hz3"; depends=[assertthat ggplot2 gridExtra pbmcapply]; };
   CALANGO = derive2 { name="CALANGO"; version="1.0.8"; sha256="0i9n03km29bnhikk0a4dsh4pdchbynqmcvwzply7y2fgzs9bfwx4"; depends=[ape assertthat BiocManager dendextend DT ggplot2 heatmaply htmltools htmlwidgets knitr nlme pbmcapply pkgdown plotly rmarkdown taxize]; };
-  CALF = derive2 { name="CALF"; version="1.0.16"; sha256="1y3db8yxgman6jx8ghqcqfh201zj1fykinm9rhfbgb0ixk9dq1yc"; depends=[data_table ggplot2]; };
+  CALF = derive2 { name="CALF"; version="1.0.17"; sha256="021x1gp0493g6qnfih755c0xcddz77i3p22bgjlx1lpzgqmrgrki"; depends=[data_table ggplot2]; };
   CALIBERrfimpute = derive2 { name="CALIBERrfimpute"; version="1.0-6"; sha256="0ghi6pkv9ki0iz4lkli3hkrsk6xiph2ha2pij6dg4wi7mcjdhsbi"; depends=[mice mvtnorm randomForest]; };
   CAMAN = derive2 { name="CAMAN"; version="0.74"; sha256="0d932fbqzlxlhn7m8zfx7wr02pc7fm8398rym1jh2cdy2fk5im08"; depends=[mvtnorm sp]; };
   CAMML = derive2 { name="CAMML"; version="0.1.1"; sha256="06xszdr3v41qqd2l0s3kdbzwn03054imazndplbihx5a7032gxvj"; depends=[AnnotationDbi dplyr edgeR MASS Matrix org_Hs_eg_db org_Mm_eg_db Seurat SeuratObject VAM]; };
@@ -645,7 +648,6 @@ in with self; {
   CDM = derive2 { name="CDM"; version="7.5-15"; sha256="159ny2dz0rf1r3k1mqlfwambffc8rx425sggf5bn51nybpzanq3l"; depends=[mvtnorm polycor Rcpp RcppArmadillo]; };
   CDNmoney = derive2 { name="CDNmoney"; version="2012.4-2"; sha256="1isbvfq0lygs75y1hn3klqms8q7g1xbkcr8fgj75h1c99d4khvm6"; depends=[]; };
   CDROM = derive2 { name="CDROM"; version="1.1"; sha256="0mvhqs4m8jp39x1rk31a1sqqmfq1avcnasgh8bizlyxx62igmi1b"; depends=[]; };
-  CDSeq = derive2 { name="CDSeq"; version="1.0.8"; sha256="06pjp9hn9ziz4wgkaj0r0zzw69r7635j10rmnl331abc4mchpazy"; depends=[Biobase clue dirmult doParallel dplyr foreach ggplot2 ggpubr gplots iterators magrittr MASS Matrix matrixStats qlcMatrix Rcpp RcppArmadillo RcppThread rlang Seurat]; };
   CDVineCopulaConditional = derive2 { name="CDVineCopulaConditional"; version="0.1.1"; sha256="1wyy324vrwipdsq0p021bj1gdhyxg09g3dkw8wv5v6rfrrs84m9k"; depends=[combinat VineCopula]; };
   CDatanet = derive2 { name="CDatanet"; version="0.0.1"; sha256="05nh56w18bf1yk2i74ppslvd3307b6pqif7bbjcgm8q6nha2mrfq"; depends=[ddpcr Formula formula_tools Matrix Rcpp RcppArmadillo RcppProgress]; };
   CEC = derive2 { name="CEC"; version="0.10.3"; sha256="0yypiy5xxrlckly4qpnf1wxg4hwza4y4da6y0jz4ldz918vskaci"; depends=[]; };
@@ -653,6 +655,7 @@ in with self; {
   CEDARS = derive2 { name="CEDARS"; version="1.90"; sha256="1fngyc08kvilfd2d75gjg0s6c5zvjywym35sk568yzxnsz89b7yy"; depends=[fastmatch jsonlite mongolite readr shiny udpipe]; };
   CEGO = derive2 { name="CEGO"; version="2.4.2"; sha256="00nc6c1b6ylqlh6hm8lh8nasz7q12pqckdqbf1yq21khki9ldbll"; depends=[DEoptim fastmatch MASS Matrix ParamHelpers quadprog]; };
   CENFA = derive2 { name="CENFA"; version="1.1.1"; sha256="0b1zpazbqynlnmf8k25r5bjmidymskqc96xpmwqkl23xlz1f2x3s"; depends=[doSNOW foreach magrittr pbapply raster Rcpp snow sp]; };
+  CEOdata = derive2 { name="CEOdata"; version="0.2"; sha256="1zc69acy2jvawbv43wg52gnak3klavcr1yzab6rbabav5vk53vhn"; depends=[dplyr haven jsonlite stringr urltools]; };
   CEoptim = derive2 { name="CEoptim"; version="1.2"; sha256="0bbjrhl63cbx1rsr5gclbqhjpnjid8ynk2ygaf1chf8z381n7650"; depends=[MASS msm sna]; };
   CFAcoop = derive2 { name="CFAcoop"; version="1.0.0"; sha256="1qnqbqh3p8grp6mxhqrwfm1nf1sxhqa6pjxkpf7vk9nx40g815gn"; depends=[Hmisc]; };
   CFC = derive2 { name="CFC"; version="1.1.2"; sha256="0k0685cgsd0lm7id6h216r4x236xn3nqj4h906qn2i0kvwmx4nda"; depends=[abind doParallel foreach Rcpp RcppArmadillo RcppProgress survival]; };
@@ -668,10 +671,11 @@ in with self; {
   CHFF = derive2 { name="CHFF"; version="0.1.0"; sha256="0jv75p1bnwsad2vpxf1zwq97al9xxhk2hpnpsilf0jn0w7g9b2d3"; depends=[]; };
   CHMM = derive2 { name="CHMM"; version="0.1.1"; sha256="07fdvnwhblwvljbl2z0vs42nwki67yl5ly3fj40p50k3rnqqmavj"; depends=[mclust]; };
   CHNCapitalStock = derive2 { name="CHNCapitalStock"; version="0.1.0"; sha256="1w8abj1rxkpql696dr6w19xsgxjmkm0jwnln7lp48fnxdsa424x8"; depends=[dplyr magrittr]; };
-  CHNOSZ = derive2 { name="CHNOSZ"; version="1.4.1"; sha256="0q541a7gr8lg25y37qy067aik0ncay401hm7ml0sag0gwl1whi4k"; depends=[]; };
+  CHNOSZ = derive2 { name="CHNOSZ"; version="1.4.3"; sha256="0hckcvrl9hk3gin5v3jbb6wp40k4vhqdnwb2z34fmaksdngnag3y"; depends=[]; };
   CHOIRBM = derive2 { name="CHOIRBM"; version="0.0.2"; sha256="1ak9swfnc0i23pv6mg5bav09pb7v0afdr7h08s1pyd77wyzf95df"; depends=[ggplot2 rlang stringr]; };
   CHsharp = derive2 { name="CHsharp"; version="0.4"; sha256="19mb5zzi9x4pm2z9jbha5dz4k5f1iqjv31aisyv4qh14k5ysdz2i"; depends=[KernSmooth scatterplot3d]; };
   CIAAWconsensus = derive2 { name="CIAAWconsensus"; version="1.3"; sha256="0yhay4fp5lyf0sdcf807yvys17qz9cr5f5ikim25mq336p7fp03x"; depends=[Matrix mvtnorm numDeriv stringr]; };
+  CIARA = derive2 { name="CIARA"; version="0.1.0"; sha256="0nr7wks9231326x0lhpbh824c6vcb5hr5jn89s9bmg9mci907bsf"; depends=[Biobase ggplot2 ggraph magrittr]; };
   CICA = derive2 { name="CICA"; version="0.1.0"; sha256="0f765c1sqvcg11071008vn6gnk0v0lwmlhnqxgqy0r8cw05s2ggq"; depends=[ica NMFN]; };
   CIDER = derive2 { name="CIDER"; version="0.99.0"; sha256="1qjr2xrcxhbkjjdv7714i6fyyn5rb5r9g79h5vnbd2bmswsgdyi3"; depends=[dbscan doParallel edgeR foreach ggplot2 igraph kernlab limma pheatmap Seurat viridis]; };
   CIEE = derive2 { name="CIEE"; version="0.1.1"; sha256="03kq9cp0v41y0r2l9j5imcrsail2xsvlzhhhsrw454d4s9gqdql9"; depends=[survival]; };
@@ -692,7 +696,6 @@ in with self; {
   CLA = derive2 { name="CLA"; version="0.96-2"; sha256="0cfa7zm13bin8hx8ki20kaz8fvkwdaiyl0pjghhld8vr5d3289kq"; depends=[]; };
   CLME = derive2 { name="CLME"; version="2.0-12"; sha256="161maq22r8wbd6c2dc8b47mh6991vc4iqmjr8g6yqb5gcwca8zhg"; depends=[isotone lme4 MASS nlme openxlsx prettyR shiny stringr]; };
   CLONETv2 = derive2 { name="CLONETv2"; version="2.2.1"; sha256="1axkkagydpxdrz7ypw3x7bavaxk34lzj9bsdn1nah9nfr3cdia6h"; depends=[arules dbscan ggplot2 ggrepel sets]; };
-  CLSOCP = derive2 { name="CLSOCP"; version="1.0"; sha256="0rkwq9rl2ph4h5zwb2i3yphjyzxmh6b6k23a8gcczycx6xdq4yhw"; depends=[Matrix]; };
   CLUSTShiny = derive2 { name="CLUSTShiny"; version="0.1.0"; sha256="19mh5g1ylvlab4xjxw7girxk9zkpxxczhbfijf11b592hbw0qxqk"; depends=[cluster dplyr klaR MASS psycho rmarkdown shiny]; };
   CLVTools = derive2 { name="CLVTools"; version="0.9.0"; sha256="11vifpsq3acdkrkjpssd29w69rwxccv7848rd71375dc26x22sw1"; depends=[data_table ggplot2 lubridate MASS Matrix optimx Rcpp RcppArmadillo RcppGSL]; };
   CMAPSS = derive2 { name="CMAPSS"; version="0.1.1"; sha256="1rig2v1cl9ybnbikqfwbp4ji1jcxm6383xbdf8wz2f3lxk7iis8z"; depends=[Rdpack]; };
@@ -726,7 +729,7 @@ in with self; {
   COST = derive2 { name="COST"; version="0.1.0"; sha256="06xgnsccd621ihlrdmnnh14vh83q1r2bnp3iqi7vp5553b3y4l3w"; depends=[copula mvtnorm]; };
   COUNT = derive2 { name="COUNT"; version="1.3.4"; sha256="02f7779fy0d2bql88x5v9csbxljhnyvl8wb8h83xrmwl7kaxsdpy"; depends=[MASS msme sandwich]; };
   COUSCOus = derive2 { name="COUSCOus"; version="1.0.0"; sha256="1ykqi72v8v1b3g9qy6h34dvk5fynzf1rl2mby65p08axmaba5798"; depends=[bio3d matrixcalc]; };
-  COVID19 = derive2 { name="COVID19"; version="3.0.1"; sha256="190l1g3hfwsbjhxbx58zlw5fyi7cqkh9avzkvss15iafr5crbvkj"; depends=[data_table R_utils]; };
+  COVID19 = derive2 { name="COVID19"; version="3.0.2"; sha256="0ljhvip944gv44b5nswcp59n0qjsyniynq2wiwcb03lv6pvvmz1x"; depends=[data_table R_utils]; };
   COVIDIBGE = derive2 { name="COVIDIBGE"; version="0.1.8"; sha256="014g50ixnm9rnw2pgsgw6qvfk7wn75hbss3n2ylr1i5ndnr72m49"; depends=[dplyr httr magrittr projmgr RCurl readr readxl survey tibble timeDate]; };
   CP = derive2 { name="CP"; version="1.6"; sha256="18zblf13riiz3mq3hkvg6vhiwjzpsn6mvgc2p0bqyldy98v4aisd"; depends=[survival]; };
   CPAT = derive2 { name="CPAT"; version="0.1.0"; sha256="0zygncwww3cazwmx06bhzq0g41xcqfpw307azdhygc8jmcy6qj71"; depends=[purrr Rcpp RcppArmadillo Rdpack]; };
@@ -765,13 +768,13 @@ in with self; {
   CTTShiny = derive2 { name="CTTShiny"; version="0.1"; sha256="1c9vsiqyig6kfjpy3dfrysc466h4v9530m49aynz65i1njplswyh"; depends=[CTT ltm psych shiny shinyAce]; };
   CTTinShiny = derive2 { name="CTTinShiny"; version="0.1.0"; sha256="1dc6kaxajkvviszmrcvhh9cg2k8g1hbpf1f6fg3wlgnb80fsx9b7"; depends=[CTT foreign shiny]; };
   CUB = derive2 { name="CUB"; version="1.1.4"; sha256="1l47fkfvd91mbfzgl0vwaahbyi53jv3md6zah9ns85ns6xlwap7n"; depends=[Formula]; };
-  CUFF = derive2 { name="CUFF"; version="1.7"; sha256="1fvzr5fq4ciwqkfcasv9lad3g831l2nmx307ya91qamjblaaryqb"; depends=[DT lmerTest nlme xlsx xtable]; };
+  CUFF = derive2 { name="CUFF"; version="1.8"; sha256="09rf08nm1zmwgw342kixph9hdxd5397rlx1bb29fj0zgfp071czc"; depends=[dplyr DT haven lmerTest nlme xlsx xtable]; };
   CUMP = derive2 { name="CUMP"; version="2.0"; sha256="0rdscywmi4sylpjpr8r472iapddizb1mqyrd532cvw6frxins7w0"; depends=[]; };
   CUSUMdesign = derive2 { name="CUSUMdesign"; version="1.1.5"; sha256="1qxq1a8b5pnmlq6rpjzvcp32scn2qknafch3h7qjsy8499zzbxx8"; depends=[]; };
   CVD = derive2 { name="CVD"; version="1.0.2"; sha256="0agb0liwbp4wvmxbyxgfb7471ki1agfb6ssh77kvwbkxqmrc8d96"; depends=[]; };
   CVEK = derive2 { name="CVEK"; version="0.1-2"; sha256="03z4s0szi8rl3izc651rvrhl2z247aaflyphzizplgmpw81xv1ry"; depends=[limSolve MASS]; };
   CVR = derive2 { name="CVR"; version="0.1.1"; sha256="1y8m9r409jq5h6xx1rvz7c7aj882jldfxly89zf3cvp2qg3jh7rj"; depends=[PMA Rcpp RcppArmadillo]; };
-  CVST = derive2 { name="CVST"; version="0.2-2"; sha256="05l3yzkfrbds09ah9cdwn2sn4ryhq78lz33ryzrgkv176jc8qjw5"; depends=[kernlab Matrix]; };
+  CVST = derive2 { name="CVST"; version="0.2-3"; sha256="0bgk0d6w3dyhb5s30idnp6jpb3m8wf3b79wqlg127wwm0cird8pg"; depends=[kernlab Matrix]; };
   CVThresh = derive2 { name="CVThresh"; version="1.1.1"; sha256="19d7pslzj8r3z5gn3cplpz2h2ayz6k1nrfx3s2b7a8w1il3vmi69"; depends=[EbayesThresh wavethresh]; };
   CVTuningCov = derive2 { name="CVTuningCov"; version="1.0"; sha256="1bwzis82lqwcqp2djy4bnd3vvjr47krlv3pdc5msh12wcs0xhs7n"; depends=[]; };
   CVXR = derive2 { name="CVXR"; version="1.0-10"; sha256="0cklfwsr3p4x4w7n6y3h3m4i3si8q0pwyp2vzv7kzawrmqc80484"; depends=[bit64 ECOSolveR gmp Matrix osqp R6 Rcpp RcppEigen Rmpfr scs]; };
@@ -799,6 +802,7 @@ in with self; {
   CatEncoders = derive2 { name="CatEncoders"; version="0.1.1"; sha256="1q9wzq06lac8z9y8b65alsxpb48bw8wqmifd893kknk51xq6r9kl"; depends=[data_table Matrix]; };
   CatPredi = derive2 { name="CatPredi"; version="1.3"; sha256="0wj37pav20s273ha8pwmzypcdl8frakrxn5k149lg6vkgl6qmj8x"; depends=[mgcv rgenoud rms survival]; };
   CatReg = derive2 { name="CatReg"; version="2.0.3"; sha256="02pxarc4v45w8ncx8hq084m69qgl9s2lkrv1biz60vrvl99dg016"; depends=[Rcpp Rdpack]; };
+  CatastRo = derive2 { name="CatastRo"; version="0.2.1"; sha256="1ccigv8d3qrh2r99c2hkgbnx2xnagq692l0s3sw9gmqcb5zs6wd8"; depends=[dplyr httr lifecycle mapSpain rappdirs sf stringi terra tibble xml2]; };
   CateSelection = derive2 { name="CateSelection"; version="1.0"; sha256="194lk6anrb05gaarwdg8lj5wm6k61b4r702cja3nf3z91i8paqi7"; depends=[]; };
   CauchyCP = derive2 { name="CauchyCP"; version="0.1.0"; sha256="012aw8cgrwwcsbs93nfsdlv1j72mc96gaxvdrhs9njqd9anamsgl"; depends=[survival]; };
   CausalGAM = derive2 { name="CausalGAM"; version="0.1-4"; sha256="1riz11hfg96iks7734rg692l75nfrd3hmr9gw563j27rkk1nfkl6"; depends=[gam]; };
@@ -817,6 +821,7 @@ in with self; {
   Census2016 = derive2 { name="Census2016"; version="0.2.0"; sha256="1c88jmd565v19w8dbvai10f9y5lyfmzsxsjblc3gdykf9kharvcq"; depends=[data_table]; };
   CepLDA = derive2 { name="CepLDA"; version="1.0.0"; sha256="15vhk7l5mw2kicw2x60r4z71hc415g8kaf2p06jgf7ykxmzkj7kg"; depends=[astsa class MASS multitaper]; };
   CerioliOutlierDetection = derive2 { name="CerioliOutlierDetection"; version="1.1.9"; sha256="0s3pd4y165v69m4wmg9jlc7dl4gz64la9yic67l3n4242wa84p19"; depends=[robustbase]; };
+  Certara_R = derive2 { name="Certara.R"; version="1.0.0"; sha256="0na4411rxxqjyrxjmj27i9b5lrig2jysazk9fnpvrws8c63zl39y"; depends=[batchtools data_table dplyr DT ggplot2 htmltools jsonlite magrittr plotly remotes reshape rlang shiny shinyjqui shinyjs shinymaterial shinyWidgets sortable ssh xml2]; };
   CfEstimateQuantiles = derive2 { name="CfEstimateQuantiles"; version="1.0"; sha256="1qf85pnl81r0ym1mmsrhbshwi4h1iv19a2wjnghbylpjaslgxp6i"; depends=[]; };
   ChIPtest = derive2 { name="ChIPtest"; version="1.0"; sha256="1yn5b5s56k2dbhw6damxj18xbaiz180ym7fiq2i3p2gkcgwpddbz"; depends=[]; };
   ChainLadder = derive2 { name="ChainLadder"; version="0.2.15"; sha256="1csi6hbbxnm4ilss2qganimh2sqgk2xb8dxa6fz0bdh0s5f6x79j"; depends=[actuar cplm ggplot2 lattice MASS Matrix statmod systemfit tweedie]; };
@@ -828,13 +833,12 @@ in with self; {
   ChaosGame = derive2 { name="ChaosGame"; version="1.1"; sha256="1gwrym3vjcqlj0ih479ipbajypajy9ga9sr3laj7g5zxx3cm4y4c"; depends=[colorRamps ggplot2 gridExtra plot3D RColorBrewer rgl sphereplot]; };
   ChargeTransport = derive2 { name="ChargeTransport"; version="1.0.2"; sha256="0mq06ckp3yyj5g1z2sla79fiqdk2nlbclm618frhqcgmq93h0vha"; depends=[]; };
   CheckDigit = derive2 { name="CheckDigit"; version="0.1-1"; sha256="0091q9f77a0n701n668zaghi6b2k3n2jlb1y91nghijkv32a7d0j"; depends=[]; };
-  ChemoSpec = derive2 { name="ChemoSpec"; version="6.1.0"; sha256="01g0jlg77j5aw9jraghn5vpx7bb13wc2h6c8002xmd65j0vxsxig"; depends=[ChemoSpecUtils ggplot2 magrittr patchwork plotly plyr readJDX reshape2]; };
+  ChemoSpec = derive2 { name="ChemoSpec"; version="6.1.2"; sha256="0g09zr1ysafzafs8gjzacrqpgd6vad39i1vsmr3smprp8f4739mq"; depends=[ChemoSpecUtils ggplot2 magrittr patchwork plotly plyr readJDX reshape2]; };
   ChemoSpec2D = derive2 { name="ChemoSpec2D"; version="0.5.0"; sha256="05k46fn2i0ipn14zignxvykr8018wxql26x2r5b479hbkg1rk5s4"; depends=[ChemoSpecUtils colorspace ggplot2 readJDX]; };
   ChemoSpecUtils = derive2 { name="ChemoSpecUtils"; version="1.0.0"; sha256="15w9v4g7myw0ygd9dvalz900yzgz5j2jnmw4j3zfp04fgm3wgbfq"; depends=[ggplot2 ggrepel magrittr plotly plyr]; };
   ChillModels = derive2 { name="ChillModels"; version="1.0.2"; sha256="06hgg893anh5z8an4l1xl4liz7d0m79n21h116vkdlymayccydbr"; depends=[]; };
   ChineseNames = derive2 { name="ChineseNames"; version="1.1.1"; sha256="1vkf4573iq7fqxwig7sphsbfpa9jbx36dayywdjx3n8nx8lksdqa"; depends=[bruceR data_table]; };
   ChoR = derive2 { name="ChoR"; version="0.0-4"; sha256="08mildsx542zfm0kcdakcv7c71hb4jgbcq1lhidf0fz76zj1pzk1"; depends=[commonsMath rJava]; };
-  ChoiceModelR = derive2 { name="ChoiceModelR"; version="1.2"; sha256="0dkp3354gvrn44010s8fjbmkpgn1hpl4xbfs5xslql8sk8rw0n2c"; depends=[]; };
   CholWishart = derive2 { name="CholWishart"; version="1.1.2"; sha256="0lms6bnd0czb25ir4ls0lxv4d2ygqiq8ampnv9j7l6hj28xmqyjj"; depends=[]; };
   CircMLE = derive2 { name="CircMLE"; version="0.3.0"; sha256="1nr6qicy5y247j970jw74pkbyhx4zjgajf2ygkxmdw6gfx5byn64"; depends=[circular energy]; };
   CircNNTSR = derive2 { name="CircNNTSR"; version="2.2-1"; sha256="0mpm6vrkl3ap67khky8dndwvl9yzycm0rlv0vzznlygvlsg8sc38"; depends=[]; };
@@ -856,6 +860,7 @@ in with self; {
   CliftLRD = derive2 { name="CliftLRD"; version="0.1-1"; sha256="0qsdv568klxg6chgw329jbfjmf6w61hly2vxp90yzdfkca03z2s4"; depends=[CNLTreg liftLRD]; };
   ClimClass = derive2 { name="ClimClass"; version="2.1.0"; sha256="1r836md31z2r5d9xckkbalzbhm4kf5paljv71kxpy53q92k7yi91"; depends=[geosphere ggplot2 reshape2]; };
   ClimInd = derive2 { name="ClimInd"; version="0.1-3"; sha256="0n5kd001nkpks16c3msvn2qvzyrjawa2rqwh8zph2qr5hgpwcpg7"; depends=[chron SPEI weathermetrics]; };
+  ClimMobTools = derive2 { name="ClimMobTools"; version="0.4.5"; sha256="1cnjhk1gw2qc0kl669g4nlnf7cfzld05qfwrxm3yml6rpv781lwx"; depends=[httr jsonlite Matrix RSpectra sf]; };
   ClimProjDiags = derive2 { name="ClimProjDiags"; version="0.1.3"; sha256="1grhg0ajf5lfm7pi5mm0hgp0cmln1jwrgkrfb4ci85fpqn96ddji"; depends=[climdex_pcic multiApply PCICt plyr]; };
   ClinSigMeasures = derive2 { name="ClinSigMeasures"; version="1.0"; sha256="0fw89a1q92ck32z6w4zn1ldvky6ag1gi7b9bbv10mhmqhq4w3k58"; depends=[]; };
   ClinicalTrialSummary = derive2 { name="ClinicalTrialSummary"; version="1.1.1"; sha256="0b5by4sn9yvrvxr9921yqsgp8ma3g1hi2qbp5j9m836db1zjhyla"; depends=[Rcpp]; };
@@ -895,7 +900,7 @@ in with self; {
   CoTiMA = derive2 { name="CoTiMA"; version="0.5.4"; sha256="02bg0bckg5h8bk4plxjni5kya9rmqhz5d9dvfa19hmyd384hdxhv"; depends=[abind crayon ctsem doParallel foreach lavaan MASS MBESS OpenMx openxlsx psych rootSolve RPushbullet scholar stringi zcurve]; };
   CodataGS = derive2 { name="CodataGS"; version="1.43"; sha256="1bjn6s1f5jn64gwrvjz5kvwfkbqrqhavib6dj9k37rb5nzqkwhp6"; depends=[Matrix]; };
   CodeDepends = derive2 { name="CodeDepends"; version="0.6.5"; sha256="0l7kiv3awx50glf5cs841b4zzsff1ml90f0zr868ygvwsr4ps1hq"; depends=[codetools graph XML]; };
-  CohortPlat = derive2 { name="CohortPlat"; version="1.0.3"; sha256="0na4idcckfqwwynx3kbfyqimzl46pna24aa9xlyjwbczf441gafm"; depends=[doParallel dplyr epitools forcats foreach ggplot2 openxlsx plotly purrr tidyr zoo]; };
+  CohortPlat = derive2 { name="CohortPlat"; version="1.0.5"; sha256="01jvi7k3lvx684c4cwn3xrpwjsksk7gjvs3db64ji7chc4lkajv4"; depends=[doParallel dplyr epitools forcats foreach ggplot2 openxlsx plotly purrr tidyr zoo]; };
   CoinMinD = derive2 { name="CoinMinD"; version="1.1"; sha256="0invnbj5589wbs0k2w5aq9qak7axc3s0g9nw85c48lnl0v95s91i"; depends=[MCMCpack]; };
   Coinprofile = derive2 { name="Coinprofile"; version="0.1.9"; sha256="1bcip62gm34cx5m8a1mx9px2rhgvdmsgnn6q9q40k8p5hw4cx9g0"; depends=[coin exactRankTests ggplot2 plyr Rdpack zoo]; };
   CollapseLevels = derive2 { name="CollapseLevels"; version="0.3.0"; sha256="1d2grxh95893j260igh4yh2z3rm3zymlpadqyp6w3na91birazb4"; depends=[dplyr ggplot2 lazyeval magrittr]; };
@@ -961,10 +966,10 @@ in with self; {
   CopernicusDEM = derive2 { name="CopernicusDEM"; version="1.0.2"; sha256="1jgvq1c86xgdyp17z1pmz01lfw5nsfc2x71pcn399vcgij5j1jrf"; depends=[doParallel foreach glue sf]; };
   Copula_Markov = derive2 { name="Copula.Markov"; version="2.9"; sha256="18krq0q5i3j211g88sl153f1fa5crdcgclvl5lqawm7zykyzblh2"; depends=[]; };
   Copula_Markov_survival = derive2 { name="Copula.Markov.survival"; version="1.0.0"; sha256="1sxg0ir39f4hj4m6imija0c88j513j6fflcp7xc0599iglwsrbvs"; depends=[survival]; };
-  Copula_surv = derive2 { name="Copula.surv"; version="1.1"; sha256="1zs2jvb07948g2aspy8877j4hdzavd57lmv4x2yrf6gb4xzs3x3n"; depends=[]; };
+  Copula_surv = derive2 { name="Copula.surv"; version="1.2"; sha256="1sashpxwbw0a5q8qvs8pwgxk0h5d3njw7j4gqrc8fh7bx71bqq7l"; depends=[]; };
   CopulaCenR = derive2 { name="CopulaCenR"; version="1.1.3"; sha256="03hd6cw1mymkdcjf211g2c4m049d61hva8n4nxsrp2lpzxq3yz3s"; depends=[caret copula corpcor flexsurv icenReg magrittr plotly pracma survival]; };
   CopulaDTA = derive2 { name="CopulaDTA"; version="1.0.0"; sha256="1bx0jvlbhaxf4yhrfpd5l5zp7kmp6f17ckb1y9974sgc7s3hpqcd"; depends=[ggplot2 plyr reshape2 rstan]; };
-  CopulaREMADA = derive2 { name="CopulaREMADA"; version="1.3"; sha256="152g8nfa3ksj0dlzlch9a6g18b1vi6dlw748a6m55haghchbyr9l"; depends=[matlab mc2d statmod tensor]; };
+  CopulaREMADA = derive2 { name="CopulaREMADA"; version="1.5"; sha256="0ryqh6aikakpkrkqxy853qlyxzwhmhwgiz7ba2w872wysdpp82k3"; depends=[matlab mc2d statmod tensor]; };
   CopyDetect = derive2 { name="CopyDetect"; version="1.3"; sha256="1g3bwd805h62x93xvvn67acf9v6vn7s7ghxpvjhwcfdfj7fwzh6l"; depends=[mirt]; };
   CorBin = derive2 { name="CorBin"; version="1.0.0"; sha256="0mjvhj9cw21xjg96fz5bcyfxgwdw367l1942a38by77ylypdfq3y"; depends=[]; };
   CorDiff = derive2 { name="CorDiff"; version="1.0"; sha256="12rgfhygrdq1ign4ybr8g171wxic8zbp83n1xdsnqpj910k5jdr5"; depends=[mcc]; };
@@ -972,7 +977,7 @@ in with self; {
   CornerstoneR = derive2 { name="CornerstoneR"; version="2.0.2"; sha256="04dvryhcyi7f6bmm4067cn5vmy7kdqi3bys7ln8nnsc0kkdjxhi5"; depends=[checkmate data_table minpack_lm ranger SpatialTools vcd]; };
   CorrBin = derive2 { name="CorrBin"; version="1.6"; sha256="0iwad5qf7hqii02s5f85155c5s7v8ghnac4l6l3c45dshrpapp2m"; depends=[boot combinat dirmult geepack mvtnorm]; };
   CorrMixed = derive2 { name="CorrMixed"; version="1.0"; sha256="0rj987k8pzsw9n9a20ky23rwc3zyqsl0fcibpmry7p8pw2miaj0z"; depends=[nlme psych]; };
-  CorrToolBox = derive2 { name="CorrToolBox"; version="1.6.3"; sha256="1mvw23f411vcmjq8lz4jx559ix8iz1c9zaynpkaviqz007amh6wa"; depends=[BinNonNor BinOrdNonNor GenOrd moments mvtnorm psych]; };
+  CorrToolBox = derive2 { name="CorrToolBox"; version="1.6.4"; sha256="1bff6vfyrgrij78l7n6dpk5g434iyr1h3qxdj7r0gvfzhw188h7p"; depends=[BinNonNor BinOrdNonNor GenOrd moments mvtnorm psych]; };
   CorrectOverloadedPeaks = derive2 { name="CorrectOverloadedPeaks"; version="1.2.17"; sha256="1g7irjbhwnbhk74y3qxcjlrsn2yz8q6wn7ih16wq669nswryxhxk"; depends=[bitops digest XML]; };
   CorrectedFDR = derive2 { name="CorrectedFDR"; version="1.1"; sha256="1p0gp7m7v6nly0kr4pkjwxaa941z80nfc8ji5w0y73i79d024c2s"; depends=[]; };
   CosW = derive2 { name="CosW"; version="0.1"; sha256="12l4w8b5jnr8773hxk7khrdn705x6bdbw7s8z8w95bfbbi12dj6v"; depends=[fdrtool pracma]; };
@@ -985,6 +990,7 @@ in with self; {
   CovSelHigh = derive2 { name="CovSelHigh"; version="1.1.1"; sha256="0dvvpkqml2k00gicpgp475z1rjspq3s37ys1mam29k54qlshhny6"; depends=[bartMachine bindata bnlearn doParallel doRNG foreach glmnet MASS Matching randomForest tmle xtable]; };
   CovTools = derive2 { name="CovTools"; version="0.5.4"; sha256="1bkqg3kzy2ahjqldcf6x55wkrmb4s6y72y9cj0jwb1fph0a1p3sm"; depends=[doParallel expm foreach geigen Matrix mvtnorm pracma Rcpp RcppArmadillo Rdpack shapes SHT]; };
   CovidMutations = derive2 { name="CovidMutations"; version="0.1.3"; sha256="03bl9frjfj8i7ydgi245113yzyg8rkgqxasicmqcjdd68zbz00kn"; depends=[cowplot dplyr ggplot2 ggpubr seqinr stringr VennDiagram]; };
+  CoxBcv = derive2 { name="CoxBcv"; version="0.0.1.0"; sha256="14lrvkv983hq5fvy1p7n8y435w6yfp1iq7g50l8qy4ppaaixgwq0"; depends=[pracma survival]; };
   CoxICPen = derive2 { name="CoxICPen"; version="1.1.0"; sha256="0m6g4gi33y5vmpf790x38y8g8vpxvr5935lcz9vjw5kkmsjkln0g"; depends=[foreach]; };
   CoxPhLb = derive2 { name="CoxPhLb"; version="1.2.0"; sha256="0jlh2k5ygj896sfx7dcw5qlb80bl64rsvqfayv0c6a107bmrzsw4"; depends=[survival]; };
   CoxPlus = derive2 { name="CoxPlus"; version="1.1.1"; sha256="038wsz206bgc0pnzx403b5ihcwhxpkrpxmwvrvqcxf8333pb62l5"; depends=[Rcpp RcppArmadillo]; };
@@ -992,7 +998,6 @@ in with self; {
   CpGFilter = derive2 { name="CpGFilter"; version="1.1"; sha256="0ccvk7lawmay0wqdyhs6ww7396dcfzazn72sq6zwyw7dl45k2j0i"; depends=[matrixStats]; };
   CpGassoc = derive2 { name="CpGassoc"; version="2.60"; sha256="1zx18x8pxjl2ajnj7a7lb8383m75ysg17f4mzz0vkgl5mnf617ny"; depends=[nlme]; };
   Cprob = derive2 { name="Cprob"; version="1.4.1"; sha256="1m4ys8xpj1jbn3lf8fym935y94dxipiimsf9zxwyw5sy71y7skgq"; depends=[geepack lattice lgtdl prodlim tpr]; };
-  CreditMetrics = derive2 { name="CreditMetrics"; version="0.0-2"; sha256="16g3xw8r6axqwqv2f0bbqmwicgyx7nwzff59dz967iqna1wh3spi"; depends=[]; };
   CreditRisk = derive2 { name="CreditRisk"; version="0.1.3"; sha256="09ks8xlsrbp3an1drcwmmd6df4fsfz61z21ma2p62a1pk0bnc86c"; depends=[fOptions]; };
   Cronbach = derive2 { name="Cronbach"; version="0.1"; sha256="1gkapi7pgf1mwidhgdf3y5cm4bz5igzb7mdflz560aa67asp1qyf"; depends=[boot]; };
   CropDetectR = derive2 { name="CropDetectR"; version="0.0.1"; sha256="14sabqld94if7f2m39bh6652cb62hcwx53k8q5k23anzzsn93qlj"; depends=[dplyr EBImage imager reshape2]; };
@@ -1008,7 +1013,7 @@ in with self; {
   CustosAscensor = derive2 { name="CustosAscensor"; version="0.1.0"; sha256="1axyhwf9rc9dvrrcrpmx69kp49nwb0an7csn9qbjmx9jwwav11l5"; depends=[]; };
   CutpointsOEHR = derive2 { name="CutpointsOEHR"; version="0.1.2"; sha256="0r772zb7g10akcfnf2hnyvpvba4px9pgslyns7drmijdsh0ncnvj"; depends=[survival]; };
   Cyclops = derive2 { name="Cyclops"; version="3.1.2"; sha256="13nwcksfxvjz2wh7dr500y0xy69hfl4k0ddsr6m24qh2km8spp6n"; depends=[Andromeda BH bit64 dplyr Matrix Rcpp RcppEigen rlang survival]; };
-  CytOpT = derive2 { name="CytOpT"; version="0.9.2"; sha256="0cmdn0sjymz9cx3ja4yh4pa010h9sjsbib19nj9fn7dpkkblp40z"; depends=[ggplot2 MetBrewer patchwork reshape2 reticulate testthat]; };
+  CytOpT = derive2 { name="CytOpT"; version="0.9.4"; sha256="008qm2kzclp0sy4ys7y0dsc894qrn7mazz9216w97rs2sn7kcrzx"; depends=[ggplot2 MetBrewer patchwork reshape2 reticulate testthat]; };
   CytobankAPI = derive2 { name="CytobankAPI"; version="1.4.0"; sha256="19jlpx914sqiqfba9ypylnaiswvbn641wkgzaihbjj1h61jjzihk"; depends=[curl httr jsonlite]; };
   CytobankBridgeR = derive2 { name="CytobankBridgeR"; version="1.0.0"; sha256="0m8gxbm3p9gvdszymqx10n5rzb406r4f70a0in798c56mp2rcsl4"; depends=[CytobankAPI]; };
   D2MCS = derive2 { name="D2MCS"; version="1.0.0"; sha256="14c02p9shfhvpafvm10xpy2r5x1h2pqrbj07dnz7pviqndxjp7ma"; depends=[caret devtools dplyr FSelector ggplot2 ggrepel gridExtra infotheo mccr mltools ModelMetrics questionr R6 recipes tictoc varhandle]; };
@@ -1021,17 +1026,19 @@ in with self; {
   DAIME = derive2 { name="DAIME"; version="2.1.3"; sha256="099pbzgryz9lxhcqlrywcv8zl5af4ir5dyyqvgc16xi5bddxk7ld"; depends=[]; };
   DAISIE = derive2 { name="DAISIE"; version="3.0.1"; sha256="10b55m4ycb07l0mfjx58zfmckk627arj575p9via6kr7lp1c3j59"; depends=[DDD deSolve doParallel foreach magrittr Matrix pracma subplex tensor testit]; };
   DAKS = derive2 { name="DAKS"; version="2.1-3"; sha256="0vmpwxvksnmyq40faimbgpj0y3zbk519986n38ipwdfzllcg0zs4"; depends=[relations sets]; };
-  DALEX = derive2 { name="DALEX"; version="2.3.0"; sha256="0x8rcl3p1h1dpzgsfnalfjhvv345gg5v0z8dxqwrk6i32xk5wmzb"; depends=[ggplot2 iBreakDown ingredients]; };
+  DALEX = derive2 { name="DALEX"; version="2.4.0"; sha256="1s7r7k5ihdbj69r27vbcs3ghra9s4yqw7cyh2rkm2ry901zq3114"; depends=[ggplot2 iBreakDown ingredients]; };
   DALEXtra = derive2 { name="DALEXtra"; version="2.1.1"; sha256="1xqqisrqal0spzkbc1x5rj3xpycfqj4g87wc3nl2j76frj8mnmdy"; depends=[DALEX ggplot2 reticulate]; };
   DALY = derive2 { name="DALY"; version="1.5.0"; sha256="1v7ld01xcn5jiygl1c3xhd5h71ip90lks87fs9gmpnivp8jz5cr5"; depends=[]; };
   DAMOCLES = derive2 { name="DAMOCLES"; version="2.3"; sha256="0pk9gq82qa18fl7zp74d47bgy8lhj9rkvfq23w8844nz9kn58s1f"; depends=[ape caper DDD deSolve expm Hmisc Matrix matrixStats picante]; };
   DAMisc = derive2 { name="DAMisc"; version="1.7.2"; sha256="1mg40fqb0bj8jlw50dkkby67rj83g6pjhw9vbqvfxq30a1pq9inm"; depends=[AICcmodavg boot car clarkeTest coda dplyr DT effects ggplot2 haven janitor jtools lattice latticeExtra magrittr MASS nnet optiscale rlang srvyr survey tibble tidyr tidyselect xtable]; };
   DAP = derive2 { name="DAP"; version="1.0"; sha256="0zzb05yxfaqp6qnr979q20rqy8sl5l825mxs0x9366qr7mz5k5ws"; depends=[MASS]; };
+  DArand = derive2 { name="DArand"; version="0.0.1.2"; sha256="1pwd5srrjy8mhs40k6g6x5j3vk9cr5hylk8sdyiiqalpq490nzqy"; depends=[]; };
   DBEST = derive2 { name="DBEST"; version="1.8"; sha256="1a598g02hpfgv572gchllqkppynnsp4lx764jg0g66w3b66k0kdy"; depends=[zoo]; };
   DBGSA = derive2 { name="DBGSA"; version="1.2"; sha256="04zqh9y3nqcdzs5jn8aaq5idy9zl450ikvl788xs860wlg692qv2"; depends=[fdrtool]; };
   DBI = derive2 { name="DBI"; version="1.1.2"; sha256="0n2gf5flmcrkad7p0pzsnsgwjl5006yi7lyz9lisqxhw8xykgv2n"; depends=[]; };
   DBItest = derive2 { name="DBItest"; version="1.7.2"; sha256="0zx58nq6l21g0sbrmrnmckw0x20i2f6lv81cczh02yrv4r968cmh"; depends=[blob callr DBI desc hms lubridate palmerpenguins R6 rlang testthat vctrs withr]; };
   DBfit = derive2 { name="DBfit"; version="2.0"; sha256="1b5fy4xya5k31937ccjsq1gj9y39lh1vb48jfc0sr56isrx0c496"; depends=[Rfit]; };
+  DBpower = derive2 { name="DBpower"; version="0.1.0"; sha256="04wwhzlc9g6il478ax5yvh74bbb6hs29jyslkiz3k1hi25hlpkrn"; depends=[combinat dplyr GBJ kit magrittr mvtnorm]; };
   DCA = derive2 { name="DCA"; version="2.0"; sha256="1acy33vyf814kr0aj6kdvi9f1qzgynwwzv57ll01gd0iqq36374f"; depends=[coin elasticnet GPArotation locfdr modeest mvtnorm PMA]; };
   DCCA = derive2 { name="DCCA"; version="0.1.1"; sha256="06xdx79r7dr14dlk5vgcyd8ar4sc72imlyk66bnia1kvlynvdy69"; depends=[checkmate]; };
   DCD = derive2 { name="DCD"; version="0.1.0"; sha256="0p6vk8fdvpcvb1bb5fwy3h1v8y3djlvcm5jl5lnx30ngqj6d7rcj"; depends=[data_table doParallel foreach ggplot2 igraph lattice lsa Matrix plyr qlcMatrix Rdpack ROCR WGCNA]; };
@@ -1090,12 +1097,14 @@ in with self; {
   DIMORA = derive2 { name="DIMORA"; version="0.2.0"; sha256="1ig2h2v199r5ryia35fx2540px7n2qshpma73599l82dr7k9hb33"; depends=[deSolve forecast minpack_lm numDeriv reshape2]; };
   DIRECT = derive2 { name="DIRECT"; version="1.0.1"; sha256="00z4xlc9kxn19lw2b8xq6krsf5v3wfbr1ghl5ah5shr9dnv84lc1"; depends=[]; };
   DISTRIB = derive2 { name="DISTRIB"; version="1.0"; sha256="0whwmmdx2k2vrjjkz4ww9v7z9ad3835819pby91119lyic27w727"; depends=[]; };
-  DIZutils = derive2 { name="DIZutils"; version="0.0.12"; sha256="06c1iz2ji4jn32kwkfiagq7y2zhy97cm5a0mjb8a6fki8658ly31"; depends=[config data_table DBI Hmisc magrittr parsedate psych rapportools RJDBC RJSONIO RPostgres shiny shinyjs xml2]; };
+  DIZtools = derive2 { name="DIZtools"; version="0.0.4"; sha256="17fgkcj27cx19q4w5c6r6gr3cqlgvdbnsk640zzhwgk67cavq3v4"; depends=[cleaR config logger magrittr parsedate]; };
+  DIZutils = derive2 { name="DIZutils"; version="0.0.15"; sha256="1hnpzv0mqqwh5sdyw8pvalr7bm2girmgd7gh4f2l704ihffp3r36"; depends=[data_table DBI DIZtools Hmisc psych RJDBC RJSONIO RPostgres xml2]; };
   DIconvex = derive2 { name="DIconvex"; version="1.0.0"; sha256="0bnrq9nmryshir6ll43nz20aaqmmw0zjvfml72cpwbvrma8a3qmz"; depends=[lpSolveAPI]; };
   DImodels = derive2 { name="DImodels"; version="1.1"; sha256="0767xanj4dck6hxx392fcavwsjz8d30wymxnabr5v8s7pcsmv18p"; depends=[hnp rootSolve]; };
   DIscBIO = derive2 { name="DIscBIO"; version="1.2.0"; sha256="1m1c9ivblk3sir6lfq0msx2vlrx37dd5v7y6003k6fmsgrfpi9fs"; depends=[AnnotationDbi boot cluster fpc ggplot2 httr igraph impute mclust NetIndices org_Hs_eg_db philentropy png RColorBrewer rpart rpart_plot RWeka SingleCellExperiment statmod TSCAN tsne]; };
   DJL = derive2 { name="DJL"; version="3.7"; sha256="0j8535gdn5h1rjc357w30sdmarmm9sx9n62fiji191wpk1mm1dmh"; depends=[car lpSolveAPI]; };
   DLASSO = derive2 { name="DLASSO"; version="2.0.2"; sha256="0xdygf6h89d9z4kqb46iqfxgdzq9dmkrxf9ypw78l4d8n9xx2gaa"; depends=[MASS]; };
+  DLL = derive2 { name="DLL"; version="1.0.0"; sha256="00xj6r1i4qhv0lq9ky88pw26nkc3ywhl23j9rsh2z5jn4dqpwpcg"; depends=[glmnet locpol MASS SAM]; };
   DLMtool = derive2 { name="DLMtool"; version="6.0.3"; sha256="00gh4di7ngn56v5hy7l5ybj6zg71fxaqyp1chmz22arb7rvj4q08"; depends=[dplyr ggplot2 MSEtool Rcpp]; };
   DMCfun = derive2 { name="DMCfun"; version="2.0.2"; sha256="1phzi3an03akf04q1j6s1dmqmfzg1r52ga7685wimcbxy4cbq323"; depends=[BH DEoptim dplyr pbapply Rcpp shiny tidyr]; };
   DMLLZU = derive2 { name="DMLLZU"; version="0.1.1"; sha256="0ck87abcd5gkq69q1g5g0yshfhx94m3vgayvxgzgnkidn9mivx22"; depends=[caret gbm ISLR lmtest nnet randomForest rlang sandwich]; };
@@ -1107,6 +1116,7 @@ in with self; {
   DMwR2 = derive2 { name="DMwR2"; version="0.0.2"; sha256="1vzfbz2k05j8r2hpig3d2grb99rnnh2s1sviii3prcyqicxfh0i9"; depends=[class DBI dplyr quantmod readr rpart xts zoo]; };
   DNAseqtest = derive2 { name="DNAseqtest"; version="1.0"; sha256="1mpmf40vrpw8m75rlqchsnyrz12pgg5bkz7wfca5yy5sbbiwk5pf"; depends=[]; };
   DNAtools = derive2 { name="DNAtools"; version="0.2-3"; sha256="10j95g9jqr7jk9ph9j3i2yblkmp4v4py8vq70rv7q56cv7dq7z32"; depends=[multicool Rcpp RcppParallel RcppProgress Rsolnp]; };
+  DNH4 = derive2 { name="DNH4"; version="0.1.12"; sha256="0g3ibacsbsk34b6411j3n3q9dxqq1iqdnisppmmq7s2bp94ab771"; depends=[httr rvest tibble tidyr]; };
   DNLC = derive2 { name="DNLC"; version="1.0.0"; sha256="05410xgpfjsydjmnzry454qcjpws9vhh252q2xq7l0scdj87ly00"; depends=[caTools fdrtool GOstats igraph locfdr mvtnorm spdep]; };
   DNMF = derive2 { name="DNMF"; version="1.3"; sha256="09yp6x6vd44ahklcag96fpjgyphyn45rkqkbwr1n36a2d8vxk9nc"; depends=[doParallel foreach gplots Matrix]; };
   DOBAD = derive2 { name="DOBAD"; version="1.0.6"; sha256="0ifrrfm4yp1416z58qgnak042rgj1xvqby2vvzgrv19z6b3250p3"; depends=[lattice Matrix numDeriv]; };
@@ -1123,8 +1133,9 @@ in with self; {
   DPQmpfr = derive2 { name="DPQmpfr"; version="0.3-1"; sha256="0f3l6dhiqnlix5vdz65pnxic43hcd4xiz64sh3cp8xs8cbmlnqcw"; depends=[DPQ gmp Rmpfr]; };
   DPWeibull = derive2 { name="DPWeibull"; version="1.8"; sha256="05sasi42cakq0k3syvn2hnvb0sl2dflw6x98riwgrjvsmnw6bh2g"; depends=[binaryLogic prodlim Rcpp RcppArmadillo survival truncdist]; };
   DPtree = derive2 { name="DPtree"; version="1.0.1"; sha256="0d7zf695lwkx4gv50f08cbi3p3mjjay0qgrbmvybf9m15i4zmyd7"; depends=[MASS MCMCpack plyr Rdpack]; };
-  DQAstats = derive2 { name="DQAstats"; version="0.2.3"; sha256="0fxa9xpjjgab3wsaqnkh1v31gsb8zzsg3g18376w3cy4j8np6x2z"; depends=[data_table DIZutils future future_apply jsonlite kableExtra knitr magrittr parsedate rmarkdown tinytex]; };
-  DR_SC = derive2 { name="DR.SC"; version="2.5"; sha256="0s19vrzf8xyfqdssg5makj45fm08p2shgplqfdvgmzvb7hwfalr7"; depends=[CompQuadForm cowplot ggplot2 GiRaF MASS Matrix mclust purrr RColorBrewer Rcpp RcppArmadillo S4Vectors Seurat spatstat_geom]; };
+  DQAgui = derive2 { name="DQAgui"; version="0.1.9"; sha256="1cq002anhdk6hqnlskngyr14jbaaxvwzql4ry30g4j0d6x6dy5s6"; depends=[data_table daterangepicker DIZtools DIZutils DQAstats DT jsonlite knitr lubridate magrittr parsedate shiny shinyalert shinydashboard shinyFiles shinyjs shinyWidgets waiter]; };
+  DQAstats = derive2 { name="DQAstats"; version="0.2.6"; sha256="1z3mmrd5vdd9z973y8d77r610b1ns8viwmncckcl813rd2fz2dki"; depends=[data_table DIZtools DIZutils future future_apply jsonlite kableExtra knitr magrittr parsedate rmarkdown tinytex]; };
+  DR_SC = derive2 { name="DR.SC"; version="2.7"; sha256="1ap30phavskiy9vn7jzh8iajfr1ds3gwpcdh59vawf8xv1w8lwpi"; depends=[CompQuadForm cowplot ggplot2 GiRaF MASS Matrix mclust purrr RColorBrewer Rcpp RcppArmadillo S4Vectors Seurat spatstat_geom]; };
   DRAYL = derive2 { name="DRAYL"; version="1.0"; sha256="0cf5pyx6nwh8srdylpnmymv3dr67fm6qqpwd1hvj1wmyfc8fznpp"; depends=[cubature pracma RConics rmutil]; };
   DRDID = derive2 { name="DRDID"; version="1.0.3"; sha256="1xlz4vc43myxximzcf87bk52pd5rplcbi5655m18xk7jx2l95ksb"; depends=[BMisc trust]; };
   DRDRtest = derive2 { name="DRDRtest"; version="0.1"; sha256="1vrvwr441w526a80s0r2fwqlllvn05ir8v2152jz2wxrwhnpq1s0"; depends=[KernSmooth SuperLearner]; };
@@ -1134,7 +1145,7 @@ in with self; {
   DRR = derive2 { name="DRR"; version="0.0.4"; sha256="1y70si1gig4l7jx5jiqsqliyywfsvimkx53x3zh1lc3yj2j6bqwk"; depends=[CVST kernlab Matrix]; };
   DRaWR = derive2 { name="DRaWR"; version="1.0.1"; sha256="1pfdczwzd236c64yw94bgbk0hbl4dhlgjfjwkljmqgqrzsddvgqh"; depends=[Matrix ROCR]; };
   DRomics = derive2 { name="DRomics"; version="2.4-0"; sha256="1ld83nwslbxcd63s1xhkc4380q87wnmgzx3kx5nv978zh9dqc92x"; depends=[DESeq2 ggplot2 limma SummarizedExperiment]; };
-  DRviaSPCN = derive2 { name="DRviaSPCN"; version="0.1.0"; sha256="1h8wy577q5fy1pjnyr7cfk33yg0cvw59ppky8gml2ir6hggyd88p"; depends=[ChemmineR clusterProfiler GSVA igraph pheatmap rvest xml2]; };
+  DRviaSPCN = derive2 { name="DRviaSPCN"; version="0.1.2"; sha256="1j6iss2aavrckkr3m50kcw7yrc1wqbpgmd60rw9bgk8vycd1m2iw"; depends=[ChemmineR clusterProfiler GSVA igraph pheatmap rvest xml2]; };
   DSAIDE = derive2 { name="DSAIDE"; version="0.9.3"; sha256="11sz57a0mmhk3lj621wnccmcbbrxp0ipg99phfk3wb927985p0zv"; depends=[adaptivetau deSolve dplyr ggplot2 gridExtra lhs nloptr plotly rlang shiny XML]; };
   DSAIRM = derive2 { name="DSAIRM"; version="0.9.3"; sha256="1igwm6zm987xjyfvwakxa5ckb1chiaykcjcambkxpjyi1b6gg6gf"; depends=[adaptivetau boot deSolve dplyr ggplot2 gridExtra lhs nloptr plotly rlang shiny XML]; };
   DSBayes = derive2 { name="DSBayes"; version="1.1"; sha256="0iv4l11dww45qg8x6xcf82f9rcz8bcb9w1mj7c7ha9glv5sfb25v"; depends=[BB]; };
@@ -1148,9 +1159,8 @@ in with self; {
   DSjobtracker = derive2 { name="DSjobtracker"; version="0.1.1"; sha256="1vi07n7ygsdjj4830rnx7kvacmnizl146c6bfw2fnby47apg38f9"; depends=[]; };
   DSpoty = derive2 { name="DSpoty"; version="0.1.0"; sha256="18z8gk3zj7k2szxg9579qy5klrqjw6zsk5x9jmwrv4qhb98fyji6"; depends=[dplyr httr purrr stringr]; };
   DSsim = derive2 { name="DSsim"; version="1.1.5"; sha256="0dr8dc91m7s5c198k9cb26a09f14wb8ihr46c0mr9cg33l2wf3nv"; depends=[fields mgcv mrds rgeos shapefiles sp splancs]; };
-  DStree = derive2 { name="DStree"; version="1.0"; sha256="14wba25ylmsyrndh007kl377dv4r34wr1555yxl6kyxrs4yg3jir"; depends=[Ecdat pec Rcpp rpart rpart_plot survival]; };
   DSviaDRM = derive2 { name="DSviaDRM"; version="1.0"; sha256="1hj2pgnldrpgapwwz1kf4k6mvyzwdvb1i6czd7sbimsx5hafwps8"; depends=[igraph ppcor]; };
-  DT = derive2 { name="DT"; version="0.20"; sha256="17xs18i439p15agyk7z2xyyrwgrpn5pw09kd3jwxn7qhxi4pyvf6"; depends=[crosstalk htmltools htmlwidgets jquerylib jsonlite magrittr promises]; };
+  DT = derive2 { name="DT"; version="0.21"; sha256="1yhlph9h8z78wqjddv598l2xrqpp605d70cxfb69m53hanw4hmzn"; depends=[crosstalk htmltools htmlwidgets jquerylib jsonlite magrittr promises]; };
   DTAT = derive2 { name="DTAT"; version="0.3-4"; sha256="1ddmih8cxbgc1p4m0sm8gdbnf0d3ka8z7014zd4aykz75j3pr002"; depends=[data_table dplyr Hmisc jsonlite km_ci pomp r2d3 shiny survival]; };
   DTAXG = derive2 { name="DTAXG"; version="0.1.0"; sha256="1jxa0ix0z35i0xdnjl698j8iqjmp6nz8ckah9bap5ay9rkq0xd7f"; depends=[]; };
   DTAplots = derive2 { name="DTAplots"; version="1.0.2.5"; sha256="1jwfh8j8ahaj2z19g2f70r652j77q4f0b7j91mggsb0dgk449342"; depends=[]; };
@@ -1183,7 +1193,7 @@ in with self; {
   Data2LD = derive2 { name="Data2LD"; version="3.2.1"; sha256="1y6nyysm96q5mlrcl0vkjhq5lr624n2266xpmyl4ck0h1dhjb6bz"; depends=[deSolve fda knitr rmarkdown]; };
   DataClean = derive2 { name="DataClean"; version="1.0"; sha256="0wkafjyp6c2mx7g1bpz2pbxyl5nm2wba2hly8miizv0fdc762za5"; depends=[xlsx XML]; };
   DataCombine = derive2 { name="DataCombine"; version="0.2.21"; sha256="0iwb4726bk0cjhay694dp43b1553yyk9lpxbncs85kz229b26arm"; depends=[data_table dplyr]; };
-  DataEditR = derive2 { name="DataEditR"; version="0.1.4"; sha256="0skra1453ndzjbsfqb17yzb1h25hl3g3jpqc67kh0m3ijc7ch0ps"; depends=[htmltools miniUI rhandsontable rstudioapi shiny shinyBS shinyjs shinythemes]; };
+  DataEditR = derive2 { name="DataEditR"; version="0.1.5"; sha256="0kwjgr6kaai42mhcljjs6i93m966x45gic5jgqsrkgfwjmmgf043"; depends=[bslib htmltools miniUI rhandsontable rstudioapi shiny shinyBS shinyjs]; };
   DataExplorer = derive2 { name="DataExplorer"; version="0.8.2"; sha256="0451fnlaqvyzpqhn25g6lj2svjfsfaxii9vmwhqw7p29fl71zaln"; depends=[data_table ggplot2 gridExtra networkD3 reshape2 rmarkdown scales]; };
   DataFakeR = derive2 { name="DataFakeR"; version="0.1.2"; sha256="0158ffj6yfvdirxar39rl6n730sza0lzq48v65p43whz6jbf9ybb"; depends=[dplyr glue magrittr purrr R6 tibble tidygraph yaml]; };
   DataGraph = derive2 { name="DataGraph"; version="1.2.5"; sha256="0f5wh2lyddr48wdcqgk1y1jbs9q9rim86v4g1c7m4xgnvyp81mih"; depends=[Rcpp]; };
@@ -1192,11 +1202,11 @@ in with self; {
   DataSpaceR = derive2 { name="DataSpaceR"; version="0.7.5"; sha256="0n7f7092lmhac1xb7yw4a68nmnk0cad2j6lkaj2v0d1nl2q7pvam"; depends=[assertthat curl data_table digest httr jsonlite R6 Rlabkey]; };
   DataVisualizations = derive2 { name="DataVisualizations"; version="1.2.2"; sha256="1fqsim2kz57f4c9isj6pivxnsabhdpj17dpyly4d4jh5bgyscqzm"; depends=[ggplot2 pracma Rcpp RcppArmadillo reshape2 sp]; };
   DataViz = derive2 { name="DataViz"; version="0.2.8"; sha256="1dr5nvdzc63x9ymlysvv5i8b7zcffq13pa39q0ychdwr1s3x7vzw"; depends=[Rcpp tibble]; };
-  DatabaseConnector = derive2 { name="DatabaseConnector"; version="5.0.0"; sha256="1gv5awdd6xm72j7w787aiq8y8zbf56xswkpr67zjynhkh8q6jrf1"; depends=[bit64 DBI readr rJava rlang SqlRender stringr urltools]; };
+  DatabaseConnector = derive2 { name="DatabaseConnector"; version="5.0.2"; sha256="03gh1x560c2zflcha7k04y3zcav03jb8wqpnk50389mwmggl9k4q"; depends=[bit64 DBI readr rJava rlang SqlRender stringr urltools]; };
   DatabaseConnectorJars = derive2 { name="DatabaseConnectorJars"; version="1.1.0"; sha256="18m6ynj30r5xdy51b3s39h0jcz1k2wgka888skr6ds2233lhqk2w"; depends=[rJava]; };
   DatabionicSwarm = derive2 { name="DatabionicSwarm"; version="1.1.5"; sha256="1m5ydlyj54ybw38b6i78krrvqj29bp24x19xbqz9fgwpqimnv79y"; depends=[deldir GeneralizedUmatrix Rcpp RcppArmadillo]; };
   DatastreamDSWS2R = derive2 { name="DatastreamDSWS2R"; version="1.8.2"; sha256="018733gm5z90qhbci6khxx27pn074si176mwnlq53bd6r722jiwm"; depends=[dplyr foreach httr jsonlite stringi stringr xts zoo]; };
-  Davies = derive2 { name="Davies"; version="1.1-9"; sha256="19n2szki2dc8z01zh5a7bq4scgisnpd2qqbiimgrswjrykgh2fpm"; depends=[]; };
+  Davies = derive2 { name="Davies"; version="1.2-0"; sha256="0n2pqipv0b1w2zjvycms0kyk7h8ps49f5jlzgyxhy9dlyr0ivaml"; depends=[mathjaxr]; };
   DeCAFS = derive2 { name="DeCAFS"; version="3.3.1"; sha256="1508pl1jwp9ypfg31ygyrx1abckivv3xb69qd7hq6w1xvlkc83qr"; depends=[ggplot2 Rcpp robustbase]; };
   DeLorean = derive2 { name="DeLorean"; version="1.5.0"; sha256="1ry6j4mvxms9hddi9c56p9yhjh66fzss41wqkf6xq398h1wbn4q1"; depends=[BH broom coda dplyr fastICA functional ggplot2 kernlab lattice MASS memoise Rcpp RcppEigen reshape2 rstan rstantools seriation StanHeaders stringr]; };
   DeRezende_Ferreira = derive2 { name="DeRezende.Ferreira"; version="0.1.0"; sha256="05c99z3hlwwm0p02cl9z6gjwfxfq2b2qn90l85270bi16llgf42h"; depends=[xts]; };
@@ -1206,7 +1216,6 @@ in with self; {
   Deducer = derive2 { name="Deducer"; version="0.7-9"; sha256="14kakyf28i654pndlswjzp6h3h7szpznrg6xznqg150mmn0bs3s6"; depends=[car e1071 effects foreign ggplot2 JGR MASS multcomp plyr rJava scales]; };
   DeducerPlugInExample = derive2 { name="DeducerPlugInExample"; version="0.2-0"; sha256="03aw7wr957xzw920ybyzxnck5kx0q2xpcrpq8jh2afyzszy6hzbi"; depends=[Deducer]; };
   DeducerPlugInScaling = derive2 { name="DeducerPlugInScaling"; version="0.1-0"; sha256="1qg11vi4szznchh54p9345jbmrfzfr9z5l3x5xz4m86myjkys1mb"; depends=[Deducer GPArotation irr klaR mvnormtest psych]; };
-  DeducerSpatial = derive2 { name="DeducerSpatial"; version="0.7"; sha256="0133qk3yjcifyha7c4pqr5s0hmbci72bzgil2r0sxjmrljs3q727"; depends=[Deducer Hmisc JavaGD maptools OpenStreetMap rgdal scales sp UScensus2010]; };
   DeducerSurvival = derive2 { name="DeducerSurvival"; version="0.1-0"; sha256="03qk3y4pibvrxbnxbm5rlksw807dvbilip1jbpn1r7k02ibzq676"; depends=[Deducer]; };
   DeducerText = derive2 { name="DeducerText"; version="0.1-2"; sha256="0if2p9j74wa5rva4iv0i8iax22grl9j7lqcqzqlywjgqwnlzxa05"; depends=[Deducer RColorBrewer SnowballC tm wordcloud]; };
   DeductiveR = derive2 { name="DeductiveR"; version="1.0.0"; sha256="0bx1ad2gw0pf03z0im31mzaa26jxwws6fkbcj319kd8b4s4wp92y"; depends=[dplyr ggplot2 moments reshape2]; };
@@ -1241,9 +1250,8 @@ in with self; {
   DiNAMIC_Duo = derive2 { name="DiNAMIC.Duo"; version="1.0.0"; sha256="0yln7cvw3rribcqzdp20widdvlzgl64js7zvib0jn3ynxdl06n2y"; depends=[biomaRt dinamic plyr reticulate]; };
   DiPALM = derive2 { name="DiPALM"; version="1.1"; sha256="0wni4xz8a9mf9pih332k1fmc62bha9rs63x56dn6w85hsd8wqz7n"; depends=[ggplot2 limma WGCNA]; };
   DiPhiSeq = derive2 { name="DiPhiSeq"; version="0.2.0"; sha256="11l2inf99vxz9k292307j8c2b25kc1066svy3vxrfl72rrm4fqa7"; depends=[]; };
-  DiPs = derive2 { name="DiPs"; version="0.6.2"; sha256="13n50wakvh7ny342xl007k1dfbwmgzg8kxvgcpfblaypqn48q09f"; depends=[liqueueR mvnfast plyr]; };
   DiSSMod = derive2 { name="DiSSMod"; version="1.0.0"; sha256="199yipbc2sx2lsl51rpfyh80bfxaahfd2llqmfsp946gvj7339hv"; depends=[MASS matrixcalc psych sfsmisc]; };
-  DiagrammeR = derive2 { name="DiagrammeR"; version="1.0.8"; sha256="0cyj9mc7rf4kylr9h2k6grfimc6mjyjk14qv1bza9pay44k7n5dr"; depends=[downloader dplyr glue htmltools htmlwidgets igraph influenceR magrittr purrr RColorBrewer readr rlang rstudioapi scales stringr tibble tidyr viridis visNetwork]; };
+  DiagrammeR = derive2 { name="DiagrammeR"; version="1.0.9"; sha256="1gqaqk7jdh37zzadv0aymr9yb8lpqgj3l8n1n3cds38i4zz2d934"; depends=[downloader dplyr glue htmltools htmlwidgets igraph influenceR magrittr purrr RColorBrewer readr rlang rstudioapi scales stringr tibble tidyr viridis visNetwork]; };
   DiagrammeRsvg = derive2 { name="DiagrammeRsvg"; version="0.1"; sha256="0j2cm1mx3zrb2k3pcrb96z2z3kws61gyyjsjjv5rqcb5lzdgi65k"; depends=[V8]; };
   DiallelAnalysisR = derive2 { name="DiallelAnalysisR"; version="0.4.0"; sha256="087kzxdvhabl1f9q5mbr4dllrpsx86a08bs34xsam2g2x63vmdxq"; depends=[ggplot2]; };
   DiceDesign = derive2 { name="DiceDesign"; version="1.9"; sha256="1a8ixa65xgyfri03cviic8qi2plbhdyz8m02bwif8w94w0q3ghlk"; depends=[]; };
@@ -1265,10 +1273,10 @@ in with self; {
   DirectEffects = derive2 { name="DirectEffects"; version="0.2.1"; sha256="0cjqp4gam1psd11d6h99pi3ramnaybp6bij86wbgqji2icqlvghg"; depends=[Formula glue sandwich]; };
   DirectStandardisation = derive2 { name="DirectStandardisation"; version="1.3"; sha256="1qlfvzlig3a2v78fiq6sbbpxklmjczikxdw57m6mqngzrl9vdl2g"; depends=[]; };
   DirectedClustering = derive2 { name="DirectedClustering"; version="0.1.1"; sha256="1shdqz0c5bbgknvfqr3ais26cb5mpywnah3d3584w97sy8v7gxm2"; depends=[igraph]; };
-  Directional = derive2 { name="Directional"; version="5.2"; sha256="19vz0i3q4560fknvr9d7b5plq3xvydrw2kk91qngrx5dsml0mx0k"; depends=[bigstatsr doParallel foreach ggplot2 magrittr RANN Rfast Rfast2 rgl rnaturalearth sf]; };
+  Directional = derive2 { name="Directional"; version="5.3"; sha256="0a6yp939dlfm23glwvb4hcpd8g9lajw9jbj9k4kwism23jbx9kcg"; depends=[bigstatsr doParallel foreach ggplot2 magrittr RANN Rfast Rfast2 rgl rnaturalearth sf]; };
   DirichletReg = derive2 { name="DirichletReg"; version="0.7-1"; sha256="1ql5mwb7zb06y9j6inrlngq7c15as4j17wd8kc71fxs0a2jdj7xi"; depends=[Formula maxLik]; };
   DisHet = derive2 { name="DisHet"; version="1.0.0"; sha256="056jcs1qpiyadnmlzd0cj4kp0qzkichxi0pdnxypyq1fsqnpvan3"; depends=[gtools matrixStats]; };
-  DisImpact = derive2 { name="DisImpact"; version="0.0.15"; sha256="1cksc68gqvlah6rzlh1h7glsl55v9kxkayvv05hz6fkcds01qkga"; depends=[dplyr purrr rlang tidyr tidyselect]; };
+  DisImpact = derive2 { name="DisImpact"; version="0.0.16"; sha256="0zybgv09d1l2wbqz773sya9kldmz9dy4m8ll2df9f11hwlpaf4dz"; depends=[dplyr purrr rlang tidyr tidyselect]; };
   DisaggregateTS = derive2 { name="DisaggregateTS"; version="1.0"; sha256="1r55ipjssyxp8frw02587mmpmsgi169hbsj6c5bccd9agcys9h5s"; depends=[lars Matrix Rdpack withr zoo]; };
   DiscreteFDR = derive2 { name="DiscreteFDR"; version="1.3.6"; sha256="06z9phxg3wjxvndcl3fnh99wbs2j8j2m7wndm0hskhcgijab5cgg"; depends=[Rcpp]; };
   DiscreteInverseWeibull = derive2 { name="DiscreteInverseWeibull"; version="1.0.2"; sha256="0vjsvl4m4zccfgizv7mzidbbpzqcm101x448vllcdcrn2xlnkmnq"; depends=[Rsolnp]; };
@@ -1278,6 +1286,7 @@ in with self; {
   DiscriMiner = derive2 { name="DiscriMiner"; version="0.1-29"; sha256="1ii8aa4dwfk991qdnpmkva20wvs5fqcna9030c799ybf11qpdass"; depends=[]; };
   Disequilibrium = derive2 { name="Disequilibrium"; version="1.1"; sha256="1jm5n01ih4rnga13058yh939zp2lvjn5pgb6rrwp5fdlk5kqsgb0"; depends=[Formula numDeriv optimr]; };
   DisimForMixed = derive2 { name="DisimForMixed"; version="0.2"; sha256="00mknsalikangr17946877m5fy2jgkgasgl6ng4f2nr44f0q9l6q"; depends=[cluster dplyr]; };
+  DistPlotter = derive2 { name="DistPlotter"; version="0.0.1"; sha256="02260wl216zq69l3acllcx026y3zy2cxyhxgfp7in7wdd4c3jxj2"; depends=[colourpicker dplyr DT extraDistr ggplot2 rio scales shiny shinyalert shinyBS shinyjs shinyWidgets stringi stringr]; };
   Distance = derive2 { name="Distance"; version="1.0.4"; sha256="14sdkggacwv3dl8wd2vspy9vn1psz8yw2nvs12c2vjkgxa75dgcl"; depends=[dplyr mrds rlang]; };
   DistatisR = derive2 { name="DistatisR"; version="1.0.1"; sha256="0myzfki8yrk0nhgdgsqs4wjbqhzmkdil1g005hc7p4lz3gi09bfx"; depends=[car prettyGraphs]; };
   DistributionFitR = derive2 { name="DistributionFitR"; version="0.1"; sha256="0wg43gqsdy1ja0l489k27k9q1w2zq45wzmqnv9wfc734rf8kvlba"; depends=[doParallel foreach stringr]; };
@@ -1304,9 +1313,8 @@ in with self; {
   DoubleML = derive2 { name="DoubleML"; version="0.4.1"; sha256="01mrak86wwyb83jnya0rk4wm4yp77sandzgkhzv8mia74w6p2h77"; depends=[checkmate clusterGeneration data_table mlr3 mlr3learners mlr3misc mlr3tuning mvtnorm R6 readstata13]; };
   Dowd = derive2 { name="Dowd"; version="0.12"; sha256="1fgaq22n7gm8pqxdfkiayqgjfqjn7knjjjr1x12jgv77cv08xyjk"; depends=[bootstrap forecast MASS]; };
   Dpit = derive2 { name="Dpit"; version="1.0"; sha256="02pnc00sk3bwxmxrg27638x0q62r7nsx2nr14zjjc5q880prdisv"; depends=[fitdistrplus gsl moments VGAM]; };
-  DrBats = derive2 { name="DrBats"; version="0.1.5"; sha256="1iaffippp9kwfrwryf7klmn8nsm2k8pc0bkgpxcsl4vxyy2na3mp"; depends=[ade4 coda MASS Matrix rstan sde]; };
+  DrBats = derive2 { name="DrBats"; version="0.1.6"; sha256="1623h8s6y4klq8xmj480ga2wl6n4c2f26v1dwysyvcrk6lnaghdm"; depends=[ade4 coda MASS Matrix rstan sde]; };
   DrImpute = derive2 { name="DrImpute"; version="1.0"; sha256="1adzarrwqb282pqgx2yqswp9rpwd1naxsmar54kddr6qyd6b923b"; depends=[Rcpp RcppArmadillo]; };
-  DrInsight = derive2 { name="DrInsight"; version="0.1.2"; sha256="1zz9i4aj0ijqfgp30wv0bvrgx2n003dysqg0pm13f7hni27819ff"; depends=[igraph qusage]; };
   DramaAnalysis = derive2 { name="DramaAnalysis"; version="3.0.2"; sha256="0nsnwais0r592c50nphfzkr1bbygl67mriwsx7dxbvmpdsswlvl1"; depends=[data_table git2r httr readr reshape2 stringr tokenizers xml2]; };
   DriftBurstHypothesis = derive2 { name="DriftBurstHypothesis"; version="0.4.0.1"; sha256="1pmsbv1rl79s520nxj536m8gf7xyfjskj8r88rxmxscbgp8c1xz2"; depends=[Rcpp RcppArmadillo xts zoo]; };
   DrillR = derive2 { name="DrillR"; version="0.1"; sha256="0n7pim5kk0wfdjcc67v4vvdb7wyhn5bcgi2a12nbyfyydss7pk1g"; depends=[httr]; };
@@ -1367,12 +1375,12 @@ in with self; {
   EGRETci = derive2 { name="EGRETci"; version="2.0.4"; sha256="1g01a03smn5yp261cyk3x310m1mcv4bqyh8y123wam9gpa7dxrp6"; depends=[binom EGRET]; };
   EHR = derive2 { name="EHR"; version="0.4-4"; sha256="0b42ny3xc936qgbfgibywpmancrbdvkcwwhy55lbqlm8xhzyr6s8"; depends=[data_table lubridate pkdata]; };
   EHRtemporalVariability = derive2 { name="EHRtemporalVariability"; version="1.1.4"; sha256="02izrgl526znn4xs10c5l3gv0b5chmgr376i26nli988cypmf32h"; depends=[dplyr lubridate MASS plotly RColorBrewer scales viridis xts zoo]; };
-  EIAdata = derive2 { name="EIAdata"; version="0.1.2"; sha256="0yssiylp516a7jbxzjsf28abm3d8rab03f2b93jy8vh1mmvpi2lg"; depends=[XML xts zoo]; };
+  EIAdata = derive2 { name="EIAdata"; version="0.1.3"; sha256="0cx8x16jn8pfik7yd6vfqh23fqlfxnfj3ya42h5zbvsbka8rislh"; depends=[httr XML xts zoo]; };
   EILA = derive2 { name="EILA"; version="0.1-2"; sha256="0wxl9k4fa0f7jadw3lvn97iwy7n2d02m8wvm9slnhr2n8r8sx3hb"; depends=[class quantreg]; };
   EIX = derive2 { name="EIX"; version="1.2.0"; sha256="02ry0aqqnd0zh6zbvx1dbq3sdahyqcgabhkvbbw4ig0qk70w62aj"; depends=[DALEX data_table ggiraphExtra ggplot2 ggrepel iBreakDown MASS purrr scales tidyr xgboost]; };
   EKMCMC = derive2 { name="EKMCMC"; version="1.1.2"; sha256="0filw1xikbv55h7xswlqifd30d43b9y3h2m6i0zv8v54y8mmszfg"; depends=[numDeriv]; };
-  EL = derive2 { name="EL"; version="1.0"; sha256="13r7vjy2608h8jph8kwy69rnkg98b2v69117nrl728r3ayc46a18"; depends=[]; };
   EL2Surv = derive2 { name="EL2Surv"; version="1.1"; sha256="0bn2481rf61qnia468y7k95hhazjaghrv919a2y9ar5wcz5nq2kk"; depends=[survival]; };
+  ELCIC = derive2 { name="ELCIC"; version="0.2.0"; sha256="1iildkyiia2zinnfjyxvcmc1xd7chrcsdqzc0v7cl9b1jsqa8361"; depends=[bindata geepack MASS mvtnorm PoisNor wgeesel]; };
   ELISAtools = derive2 { name="ELISAtools"; version="0.1.5"; sha256="18f2adhw85f0hsz5gb6xhi0w2phcq364xy9y1jri6ckzs8g0pny7"; depends=[minpack_lm R2HTML stringi]; };
   ELMR = derive2 { name="ELMR"; version="1.0"; sha256="0pd3drv485xbdyfwm28kjpd0nd0zv1khfwzki1gh5p1gz9ndwr2x"; depends=[]; };
   ELMSO = derive2 { name="ELMSO"; version="1.0.1"; sha256="14wnrqrbbfb37f3wp91qib28bcanflw3asv1y0v748n36x1xbv3m"; depends=[]; };
@@ -1387,6 +1395,7 @@ in with self; {
   EMDSVRhybrid = derive2 { name="EMDSVRhybrid"; version="0.1.0"; sha256="0wis8dh4xd5xldrrfzfr625pix2fvp139q6kj9ff2m6p5wafiabw"; depends=[e1071 EMD]; };
   EML = derive2 { name="EML"; version="2.0.5"; sha256="0g4ilk2d68i1iz2b0ip6kngygvsw457x17f2vhfy3b26xf6ch2q1"; depends=[digest dplyr emld jqr jsonlite rmarkdown uuid xml2]; };
   EMMAgeo = derive2 { name="EMMAgeo"; version="0.9.7"; sha256="1wz4zw45xfqbk589cpd188j7619h2ar2czfkisil9x8ksijfixls"; depends=[caTools GPArotation limSolve matrixStats shiny]; };
+  EMMIXSSL = derive2 { name="EMMIXSSL"; version="1.1.0"; sha256="14zhb065amcs7w7kr3ygwpclnf0fxil8xbipb2w0pq24d091vlxd"; depends=[mvtnorm]; };
   EMMIXgene = derive2 { name="EMMIXgene"; version="0.1.3"; sha256="0a5q78s9y6ba1641lrv87kglg39x9wbk5xg7ihzbpl4adrb5sz4f"; depends=[BH ggplot2 mclust Rcpp RcppArmadillo reshape scales]; };
   EMMIXmfa = derive2 { name="EMMIXmfa"; version="2.0.11"; sha256="06lfmpw908chhzx512anqacixvvx3y02wm1n4wmpb890rd85n11r"; depends=[]; };
   EMMLi = derive2 { name="EMMLi"; version="0.0.3"; sha256="1b36kyzvrdljmkysggv8jyaip78pj32ms0xhj2y568hd419lkh2p"; depends=[]; };
@@ -1400,7 +1409,7 @@ in with self; {
   EMVS = derive2 { name="EMVS"; version="1.2.1"; sha256="1aikms2i77hwv6hrk8kn9wrh1v5j5zm918cwdwm5s6cy8fcqf406"; depends=[Rcpp RcppArmadillo]; };
   EMbC = derive2 { name="EMbC"; version="2.0.3"; sha256="0ns6jmshblf00n4harhls03q9c6h1wvgvjzn8jvr3kf4gm2iz2jd"; depends=[maptools mnormt RColorBrewer Rcpp RcppArmadillo sp]; };
   EMpeaksR = derive2 { name="EMpeaksR"; version="0.2.0"; sha256="1f8s6p3h5594aajrvrx8iv5x8m97xbc1pynsrk6i13aw5r73ysb1"; depends=[]; };
-  ENMTools = derive2 { name="ENMTools"; version="1.0.5"; sha256="1lvvby77j3abf3gmm12091mcgijxcg7vilr2j9q3fi5n87wqhl12"; depends=[dismo ENMeval forcats ggplot2 ggpubr gridExtra knitr lhs magrittr raster rgdal rgeos sp spatstat spatstat_core spatstat_geom]; };
+  ENMTools = derive2 { name="ENMTools"; version="1.0.6"; sha256="0idjq7jk1yrbk9w0799x991n1sj71j09hkgn6dhwshgpyxh7c4qj"; depends=[dismo ENMeval forcats ggplot2 ggpubr gridExtra knitr lhs magrittr raster rgdal rgeos sp spatstat_geom spatstat_random]; };
   ENMeval = derive2 { name="ENMeval"; version="2.0.3"; sha256="0h9wikxs01xhpkp1khhxnnqvg4fgmdvh37jh15nz7i4xilx1ffab"; depends=[dismo doParallel doSNOW dplyr foreach ggplot2 glmnet magrittr maxnet rangeModelMetadata raster rlang sp testthat tidyr]; };
   EPGMr = derive2 { name="EPGMr"; version="1.0.0"; sha256="1ii4lccv4hyydy3sd5l7c22pgx27x3mdml20sfbdj85pmpyab6q9"; depends=[]; };
   EPP = derive2 { name="EPP"; version="0.3.6.1"; sha256="015hp5f3nrf0hqi11cgsi43a97h9cvny4d75hfjd10zf0fj261h9"; depends=[assertthat curl deldir dplyr flexclust httr leaflet leaflet_extras maptools nngeo osrm plyr rgdal rgeos sf sp]; };
@@ -1415,8 +1424,8 @@ in with self; {
   ESEA = derive2 { name="ESEA"; version="1.0"; sha256="06r5lki32mxkznj6yxvlz0ikqcxm3jbaralv4qp9xrw6dy6yyg27"; depends=[igraph parmigene XML]; };
   ESG = derive2 { name="ESG"; version="1.2"; sha256="17kw82dikcibqsdb1fvbx2x2f3shzbqggygabprcvwki8bg9hgni"; depends=[]; };
   ESTER = derive2 { name="ESTER"; version="0.2.0"; sha256="1jiyqq5hgqc754r434sik9jnlpw66xz56cjdf5ig95qkffzsg224"; depends=[brms cowplot doParallel dplyr foreach ggplot2 lme4 magrittr rlang tidyr]; };
-  ETAS = derive2 { name="ETAS"; version="0.4.7"; sha256="1l8l0vmar720jz893kv8d2gg1m1jyxh1dkanh9aaiivdw0wg6k9b"; depends=[fields goftest lattice maps Rcpp spatstat spatstat_core spatstat_geom]; };
-  ETC = derive2 { name="ETC"; version="1.3"; sha256="1nvb9n0my7h1kq996mk91canxi6vxy3mzhrshrvm13ixvl48lkkh"; depends=[mvtnorm]; };
+  ETAS = derive2 { name="ETAS"; version="0.4.9"; sha256="11sv5slr3s6w82ksgbw0qlzi9palznbzprq2n9iiifxz6ff5drvd"; depends=[fields goftest lattice maps Rcpp spatstat_core spatstat_geom spatstat_random]; };
+  ETC = derive2 { name="ETC"; version="1.5"; sha256="16ciff8bf2p56941r83y7405sp5pfms63dwjd232ih3mnznjpc0f"; depends=[mvtnorm]; };
   ETLUtils = derive2 { name="ETLUtils"; version="1.5"; sha256="0s0q4f3wzpdd87l3pnzysa8aq7zgz29589xnm65a6xfy9znbpzs3"; depends=[bit ff]; };
   EValue = derive2 { name="EValue"; version="4.1.3"; sha256="0ip4cyipbs6g0znrdh5zs4xizmqgdznq8riggkgyv06wipgx9a2j"; depends=[boot dplyr ggplot2 metadat metafor MetaUtility]; };
   EW = derive2 { name="EW"; version="1.1"; sha256="0wc3v9qisiikvlp28xhlgsxb92fhkm6vslia6d0vpihyai0p1h1g"; depends=[]; };
@@ -1427,14 +1436,13 @@ in with self; {
   Eagle = derive2 { name="Eagle"; version="2.5"; sha256="18y0hc5461gh7kp095xfpwpfnl7k3v545r8w6nrhabrhwsflrrij"; depends=[data_table fontawesome ggplot2 ggthemes mmap plotly R_utils Rcpp RcppEigen shiny shinyBS shinyFiles shinyjs shinythemes]; };
   EasyABC = derive2 { name="EasyABC"; version="1.5"; sha256="17qv6y8sf2iwwqcv5wfg6sii259gv5jyr72dnfpir2bw78wb3mqx"; depends=[abc lhs MASS mnormt pls tensorA]; };
   EasyDescribe = derive2 { name="EasyDescribe"; version="0.1.1"; sha256="15g37m28l40w71bvj02cbhfc6x77bjvr8mjr89iipdqzndp23g1i"; depends=[CATT fitdistrplus FSA gmodels multiCA nortest psych rcompanion]; };
-  EasyHTMLReport = derive2 { name="EasyHTMLReport"; version="0.1.1"; sha256="1hgg8i7py7bx48cldyc7yydf0bggmbj3fx3kwiv9jh1x5wyh929z"; depends=[base64enc ggplot2 knitr markdown reshape2 scales xtable]; };
   EasyMx = derive2 { name="EasyMx"; version="0.2-12"; sha256="00wj08nwv5zi5d4a1fss40f4cms4svam1hmmxvh60hvc55ygsc3z"; depends=[OpenMx]; };
   EbayesThresh = derive2 { name="EbayesThresh"; version="1.4-12"; sha256="07a2dd3za2dc81n6m2xy794sclp3yw7f46lg1igaflh7m9407198"; depends=[wavethresh]; };
   Ecdat = derive2 { name="Ecdat"; version="0.3-9"; sha256="112yg3v0pwssfw38nbbrrn1zrlg2h39brr79m3rdlp8hr810q92b"; depends=[Ecfun]; };
   Ecfun = derive2 { name="Ecfun"; version="0.2-5"; sha256="0lwpgpjax149kyc9fzxdz0v4marm5agrhdgfmvm9956sslzksabj"; depends=[BMA fda jpeg MASS mvtnorm rvest stringi TeachingDemos tis xml2]; };
   EcoDiet = derive2 { name="EcoDiet"; version="1.0.0"; sha256="19x2ypmsw6jnq1s0nqk3pdkwi5g3g92r6fgxrxlnyvd0jqi9l8b3"; depends=[coda ggplot2 rjags]; };
   EcoHydRology = derive2 { name="EcoHydRology"; version="0.4.12.1"; sha256="075kgy6cxppkclk6nj5xs1f5yv9w8cpr09xwhf2101a6wswknb88"; depends=[DEoptim operators topmodel XML]; };
-  EcoIndR = derive2 { name="EcoIndR"; version="1.7"; sha256="1sa6207zvmbgvl060i43yzsq6nb2mqgpvm2bzg742qll6y4nh217"; depends=[rgeos]; };
+  EcoIndR = derive2 { name="EcoIndR"; version="1.8"; sha256="008wgp9zc8a8knz9ighgavrdm0yf37m5jahnq5kndjhld0359z6h"; depends=[rgeos]; };
   EcoNetGen = derive2 { name="EcoNetGen"; version="0.2.3"; sha256="05j8m9vzkwlsw1h69s5myhbg85vyhqdxcl9r5mdwsrk9f58wajmz"; depends=[ggplot2 igraph]; };
   EcoTroph = derive2 { name="EcoTroph"; version="1.6"; sha256="0zi6g0ra107s47r32mm9h6r1wll3avi0mpjmhcr0nj9y48nv14w3"; depends=[XML]; };
   EcoVirtual = derive2 { name="EcoVirtual"; version="1.1"; sha256="1aryl2sb5ak390lgnm427ilm6xv9lmsjhwdnapzc033zvqb099gj"; depends=[]; };
@@ -1449,6 +1457,7 @@ in with self; {
   EffectTreat = derive2 { name="EffectTreat"; version="1.1"; sha256="1kw1vq9y1q3xyiqsk855wjn9jqkzdh6h4xklbl9kvbqsvvhhsgkz"; depends=[]; };
   EffectsRelBaseline = derive2 { name="EffectsRelBaseline"; version="0.5"; sha256="1dsnakcrgmlx44599ii92wvhxbxrh0hij59709wsskx1x1152zvh"; depends=[]; };
   EfficientMaxEigenpair = derive2 { name="EfficientMaxEigenpair"; version="0.1.4"; sha256="1s0i9a2vk2g4f5gadsvzjfkw91hcjsrbyjg2vgnj1v17xrwgp40w"; depends=[]; };
+  EgoCor = derive2 { name="EgoCor"; version="0.1.0"; sha256="197wf7v51qf2wc2gks68v3kpkcv0fmrbj3wrksixh1sphbl52rig"; depends=[geoR lme4 Rdpack shiny SpatialTools]; };
   EigenR = derive2 { name="EigenR"; version="1.2.2"; sha256="02cg898hm2byhnbfihg8mnygjsfpyrpq4y3lw2dnrglcj75qr71b"; depends=[Rcpp RcppEigen]; };
   EleChemr = derive2 { name="EleChemr"; version="1.2.0"; sha256="1wr2lkaf56qxsnqi7mgbgzy72lhkr0xlr1w1l9hy1dpmmqcqw7l3"; depends=[ggplot2]; };
   ElliptCopulas = derive2 { name="ElliptCopulas"; version="0.1.1"; sha256="00cxyn6w9zy993lqyyn9yjvpw7h4wckp63s3apf1jv8b09l0kdn5"; depends=[Matrix pcaPP Runuran]; };
@@ -1458,7 +1467,7 @@ in with self; {
   ElstonStewart = derive2 { name="ElstonStewart"; version="1.1"; sha256="1y2g4x3fhi78c2406bk8r8c3x9zhx8ya3qlbnypdm65j0minixsn"; depends=[digest kinship2]; };
   EmbedSOM = derive2 { name="EmbedSOM"; version="2.1.1"; sha256="1w61dni4vsglxqdhwdy5dcmzb6hx1wb9fhfki8wmal1yaza23ljy"; depends=[FNN ggplot2 igraph Matrix Rtsne umap uwot]; };
   EmiStatR = derive2 { name="EmiStatR"; version="1.2.3.0"; sha256="1cwzzkynhnpjd1slnifdmkrshfpv99ryilxj27f98kwgbnb6i81a"; depends=[doParallel foreach lattice xts zoo]; };
-  EmissV = derive2 { name="EmissV"; version="0.665.5.2"; sha256="056xg4gmjwykgjzd5x21blkvwprfw8yl8rw8h1ym0kp1cljy2qdm"; depends=[data_table ncdf4 raster rgdal sf sp units]; };
+  EmissV = derive2 { name="EmissV"; version="0.665.6.0"; sha256="06bsn9lgi8bzcs073d664i1q61bqg4w08x60qk9scvxhb3b5q49i"; depends=[data_table ncdf4 raster sf sp units]; };
   EmpiricalCalibration = derive2 { name="EmpiricalCalibration"; version="3.0.0"; sha256="02mcnxd3ndz7zafpxhyf52am5ncbwz743apy2n3q0i07hs33blyk"; depends=[ggplot2 gridExtra Rcpp rlang]; };
   EncDNA = derive2 { name="EncDNA"; version="1.0.2"; sha256="0wy2cmcvyqjhg5mqbvdzmihfv8swx7ym2n9mjdqgx0kgnc7k614y"; depends=[Biostrings]; };
   EnergyOnlineCPM = derive2 { name="EnergyOnlineCPM"; version="1.0"; sha256="1a3wvclqdwcvq5inhliwjnd7xzqbjvzs8h8ncy6qlhjq6s5n7nm8"; depends=[energy MASS]; };
@@ -1475,7 +1484,7 @@ in with self; {
   EnvExpInd = derive2 { name="EnvExpInd"; version="0.1.0"; sha256="063f3c10a7k9j3f85xilj1s6dd9ky5sw8sbvhzkhg5hg92c9dpns"; depends=[dplyr gstat maptools RCurl sp stringi zoo]; };
   EnvNJ = derive2 { name="EnvNJ"; version="0.1.3"; sha256="1wxb4zhhn7iahgsi7rg1vmfaa3vypifqx7kkcvmmgk0263z4sj5v"; depends=[ape bio3d phangorn philentropy seqinr stringr]; };
   EnvNicheR = derive2 { name="EnvNicheR"; version="1.4"; sha256="0hxx9wmzlw0clvdgdsy8msc78nvm81j3naxr57i7lqqa360sjy3a"; depends=[IDPmisc]; };
-  EnvStats = derive2 { name="EnvStats"; version="2.5.0"; sha256="1xx7cn6jdr5917fdknmwdd8da8s8a6g5ppd6f09l3gnvr5kalxsg"; depends=[ggplot2 MASS nortest]; };
+  EnvStats = derive2 { name="EnvStats"; version="2.7.0"; sha256="10axzd4458lwvjibkk3i1szpmnx1hnhair3ihclwfmh8nvaz19h9"; depends=[ggplot2 MASS nortest]; };
   EnviroPRA = derive2 { name="EnviroPRA"; version="1.0"; sha256="0yirh3vy7wap0qmm3kvjz9y68gcvp9i8qshv80wh8aijxwklpr8n"; depends=[fitdistrplus kSamples MASS truncdist]; };
   EnviroStat = derive2 { name="EnviroStat"; version="0.4-2"; sha256="0ckax6vkx0vwczn21nm1dr8skvpm59xs3dgsa5bs54a3xhn5z9hs"; depends=[MASS]; };
   Epi = derive2 { name="Epi"; version="2.44"; sha256="1wcxr1f7irgfdwzz4vf67114yhxrhxxxnhy4hfaww0zy91vzxx10"; depends=[cmprsk data_table dplyr etm MASS Matrix mgcv numDeriv plyr purrr survival zoo]; };
@@ -1524,6 +1533,7 @@ in with self; {
   ExPosition = derive2 { name="ExPosition"; version="2.8.23"; sha256="0x9400ggmgrnaish0cfgnyvw549g4ibfv9aj6vzq7j68n58vq405"; depends=[prettyGraphs]; };
   Exact = derive2 { name="Exact"; version="3.1"; sha256="1kz3hw11sl142mai4ly2r85rwdbjz8q7b38ybmjym6r0n5qmqzyn"; depends=[rootSolve]; };
   ExactCIdiff = derive2 { name="ExactCIdiff"; version="1.3"; sha256="1vayq8x7gk1fnr1jrlscg6rb58wncriybw4m1z0glfgzr259103y"; depends=[]; };
+  ExactMed = derive2 { name="ExactMed"; version="0.1.0"; sha256="0mnmlfnpqkz82iphga3b3xd85xh7jb211m6ahx4jf6y6y4rv5isj"; depends=[logistf]; };
   ExactMultinom = derive2 { name="ExactMultinom"; version="0.1.2"; sha256="1ygsiwcsmda0pbp7lzr03sb461mr9fff7hxp1lil40y9z0xgdmmb"; depends=[Rcpp]; };
   ExamPAData = derive2 { name="ExamPAData"; version="0.5.0"; sha256="1wjzg5b3xcl5njk95h2c8xz4k727d62182nbf49qrvd3nbd3bscj"; depends=[]; };
   ExceedanceTools = derive2 { name="ExceedanceTools"; version="1.2.2"; sha256="084sc6pggfbcyavhfnd5whyigw7dyjhb4cxmxi0kh2jiam5k8v5b"; depends=[SpatialTools splancs]; };
@@ -1552,20 +1562,20 @@ in with self; {
   FAIRmaterials = derive2 { name="FAIRmaterials"; version="0.0.2"; sha256="169hcwjm0plhkqbhz3b5cqgc2nnkibn94cimrs39sn9z62radb7x"; depends=[dplyr glue stringr]; };
   FAMILY = derive2 { name="FAMILY"; version="0.1.19"; sha256="1912l2zj2cmh8yx8lkg8fpgvfddn6wbi1vrr4yx04mh73gk1s5mk"; depends=[pheatmap pROC]; };
   FAMT = derive2 { name="FAMT"; version="2.5"; sha256="0mn85yy9zmiklfwqjbhbhzbawwp2yqrm9pvm8jhasn9c3kw1pcp2"; depends=[impute mnormt]; };
-  FAMetA = derive2 { name="FAMetA"; version="0.1.2"; sha256="1ik3dl9sfcnba9kg0mbgnjiny1zvs3cmqgixi04yypmyqxs4d2mq"; depends=[accucor gplots gtools knitr LipidMS minpack_lm plyr rmarkdown scales tidyr]; };
+  FAMetA = derive2 { name="FAMetA"; version="0.1.4"; sha256="1c5y3x06ln1w8nkwmnc13hn8jhj0vbmwbx70kylcf93a1fq5rkbz"; depends=[accucor gplots gtools knitr LipidMS minpack_lm plyr rmarkdown scales tidyr]; };
   FAMoS = derive2 { name="FAMoS"; version="0.3.0"; sha256="14gr9wv9bpibk0rrzzwijvdncx1fgnpbv55nqzbb4jhq7fdckmsa"; depends=[future R_utils]; };
   FAO56 = derive2 { name="FAO56"; version="0.1.0"; sha256="0dl56gdsmx3ixxakz2xqrirss5xxbz62mvp7jdrgaizrn8xd802i"; depends=[]; };
   FAOSTAT = derive2 { name="FAOSTAT"; version="2.2.3"; sha256="12wjcjyjdw8jgla9yqddr3ibi6v47lfdlnyf5s5d8ms3ck6ic8sl"; depends=[classInt data_table ggplot2 labeling MASS plyr RJSONIO XML]; };
   FARDEEP = derive2 { name="FARDEEP"; version="1.0.1"; sha256="0blvjakcpkh9vpxryk7qyaqnija0r375ckv37kjlr34xg8pg9qnm"; depends=[nnls preprocessCore]; };
   FASeg = derive2 { name="FASeg"; version="0.1.9"; sha256="0lazx8dyycyycr8467m9rkxkxhp4r2w737kpkb40y59wncmbvkik"; depends=[]; };
-  FAVAR = derive2 { name="FAVAR"; version="0.1.0"; sha256="04ajrq5wii4mccnaxn3wsn7kdfd2pydxaygk6dnbhc6610xs8bc5"; depends=[bvartools coda doParallel dplyr foreach ggplot2 magrittr matlab Matrix MCMCpack]; };
-  FAdist = derive2 { name="FAdist"; version="2.3"; sha256="0vy9yavg5apawjfvch5a7abrmsnx36zhlk8jff3dvcx409lykrrn"; depends=[]; };
-  FAmle = derive2 { name="FAmle"; version="1.3.5"; sha256="1j6x5bbxnrwp9d6xlxc861xslawzfqhi3d11nphyc97afsz0ymnr"; depends=[mvtnorm]; };
+  FAdist = derive2 { name="FAdist"; version="2.4"; sha256="166w9i8fgklx12jiq4n7l081znmdi6yvazhlxny4rgqif0z2kr9q"; depends=[]; };
+  FAmle = derive2 { name="FAmle"; version="1.3.7"; sha256="1g6jacbphbfqn0kkfgdv0g9v8xnzx70872byy0rxp5g2ags6hj2b"; depends=[mvtnorm]; };
   FAwR = derive2 { name="FAwR"; version="1.1.2"; sha256="1x90wvp0w7fhid7i5160b4fiv4xn5mpvy33zjzy0mvqvp0yp8xf0"; depends=[glpkAPI lattice MASS]; };
   FBFsearch = derive2 { name="FBFsearch"; version="1.1"; sha256="17fi501prnwwy5dh7kv7cx2zlz2dknjj542ga024s7jvg7i2rhg0"; depends=[Rcpp RcppArmadillo]; };
   FBN = derive2 { name="FBN"; version="1.5.1"; sha256="0723krsddfi4cy2i3vd6pi483qjxniychnsi9r8nw7dm052nb4sf"; depends=[]; };
   FCGR = derive2 { name="FCGR"; version="1.0-0"; sha256="015nnnc9fasx0qjrc3lbxv14rqwyx36xzsw9076grwm5pqahrdsb"; depends=[kerdiest KernSmooth MASS mgcv nlme pspline sfsmisc]; };
   FCMapper = derive2 { name="FCMapper"; version="1.1"; sha256="1yjh8rs65nqslvwv7x4rif469zds41s7v3vhq6pca1y17kvj2in1"; depends=[igraph]; };
+  FCO = derive2 { name="FCO"; version="0.7.2"; sha256="1bavlkrd0957lxv3n8wqv83sxddpihrwr91f2sgshwlczksl05kn"; depends=[checkmate data_table lavaan semTools]; };
   FCPS = derive2 { name="FCPS"; version="1.3.0"; sha256="0cz04pjhps7grnvx50gnpmhlp4rvl9xx1dnsabn2pg075y5r5bgk"; depends=[DataVisualizations ggplot2 mclust]; };
   FCSlib = derive2 { name="FCSlib"; version="1.3.0"; sha256="1191ba6dwpakcdnbcq61zm5xq24isxjnn98nmvk67fpf1ycw70w9"; depends=[bitops fields stringr tiff]; };
   FCVAR = derive2 { name="FCVAR"; version="0.1.1"; sha256="1vnfy3485mm29w0hzkmpr50yc9prmgha9hxxb7k9b9li3pzyhl17"; depends=[fracdist pracma]; };
@@ -1576,6 +1586,7 @@ in with self; {
   FDRsampsize = derive2 { name="FDRsampsize"; version="1.0"; sha256="0g8kawzyi9x5yndvh330wzqw6rvcnprwq56ngd0j6z51hvvw8qhw"; depends=[]; };
   FDX = derive2 { name="FDX"; version="1.0.4"; sha256="15qjy216n87ylk8kwjhgz0mwdhgy57xn2l8x38ffgff3n3v0gwcn"; depends=[DiscreteFDR PoissonBinomial pracma Rcpp]; };
   FDboost = derive2 { name="FDboost"; version="1.0-0"; sha256="1227fda2m8lsq3cndv0xgbgbcfdxhc4fjiyj2dmha1z4sycd7a28"; depends=[gamboostLSS MASS Matrix mboost mgcv stabs zoo]; };
+  FEA = derive2 { name="FEA"; version="0.0.1"; sha256="0rg7l5hmaksiz5hg8llwa5kk17by29qvqncyksv16bf8rsjlm732"; depends=[geometry geosphere MASS ptinpoly sp]; };
   FENmlm = derive2 { name="FENmlm"; version="2.4.3"; sha256="1a205a4iv54haixanyzx210lzqg7cnryjvqayvkdj1lhmdql4anw"; depends=[Formula MASS numDeriv Rcpp]; };
   FER = derive2 { name="FER"; version="0.94"; sha256="0319dz0qvk8s9cfngqas3j212bw0f4rzw3gqcd7r7sl0249dla7p"; depends=[statmod]; };
   FESta = derive2 { name="FESta"; version="1.0.0"; sha256="1kf5iqw8x8079gjaxicrgax5l798l8hxcc5y83l5pqh0ync5bxm6"; depends=[]; };
@@ -1588,6 +1599,7 @@ in with self; {
   FHDI = derive2 { name="FHDI"; version="1.4.1"; sha256="1n1rbrqdphp0prmkili6rnpxwdb7fgwsgncllr6yxlrkr5rb76pm"; depends=[]; };
   FHtest = derive2 { name="FHtest"; version="1.5"; sha256="00mql2r4f5hxhdqf27q3x9s5rz2zzakx2myym97b1w1s7c5znl4q"; depends=[interval KMsurv MASS perm survival]; };
   FI = derive2 { name="FI"; version="1.0"; sha256="17qzl8qvxklpqrzsmvw4wq3lyqz3zkidr7ihxc4vdzmmz69pyh2f"; depends=[]; };
+  FIESTAutils = derive2 { name="FIESTAutils"; version="1.0.0"; sha256="144q4z6g5lflha3wdizc09lpwr2bgxgpbq4bbmflr2ijrq25zy88"; depends=[data_table DBI hbsae JoSAE mase nlme RColorBrewer Rcpp rgdal RPostgreSQL RSQLite sae sf sp sqldf units xml2]; };
   FILEST = derive2 { name="FILEST"; version="1.1.2"; sha256="0x95in9yad93j8kbxjykz04x756i1c1cq854c220cc0l3rm3npnl"; depends=[KRIS rARPACK]; };
   FIT = derive2 { name="FIT"; version="0.0.6"; sha256="1nkjms9cvigc9sjha1krzhd3nmwsfh8pi0f1plf5k8zpb773zzb2"; depends=[gglasso MASS Rcpp RcppEigen XML]; };
   FITSio = derive2 { name="FITSio"; version="2.1-6"; sha256="1qch6z9r8h95jijjdwsi81majgacl42ryzlkn0m1wifkly9mjjrb"; depends=[]; };
@@ -1598,6 +1610,7 @@ in with self; {
   FLLat = derive2 { name="FLLat"; version="1.2-1"; sha256="0306bpwp2az4x4m5sv88hlh7vs0y5isfby7lxrn2gjnk76gg6mw1"; depends=[gplots]; };
   FLR = derive2 { name="FLR"; version="1.0"; sha256="0k50vi73qj7sjps0s6b2hq1cmpa4qr2vwkpd2wv2w1hhhrj8lm0n"; depends=[combinat]; };
   FLSSS = derive2 { name="FLSSS"; version="8.6.6"; sha256="0kw28zmvgdy4zmj2vnrs84n0rg6jvqj3x8f3ihjjkzkwqrqyiia9"; depends=[Rcpp RcppParallel]; };
+  FLightR = derive2 { name="FLightR"; version="0.5.2"; sha256="0scbz1c3pm40v8h4h5qxckrpg2zixx29g9wwxiq06wlc7vajlh77"; depends=[bit CircStats circular fields ggmap ggplot2 ggsn maptools mgcv nlme RcppArmadillo rgdal rgeos sp truncnorm]; };
   FMAdist = derive2 { name="FMAdist"; version="0.1.0"; sha256="0aa4sw93ia6cp386hrq6x448x4w0p6k198rjaqs474j25gqgxrv0"; depends=[EnvStats extraDistr fitdistrplus MASS quadprog STAR]; };
   FMC = derive2 { name="FMC"; version="1.0.0"; sha256="1pfqxx7slgcmw4al7i8hy59f4han6b0b7b5az7yh1mscdnghl9bj"; depends=[minimalRSD]; };
   FMCCSD = derive2 { name="FMCCSD"; version="1.0"; sha256="0c50km5ba6biq9p3mycxhy00ij2gr6y5zf3q8ycq0g1mbk8ybfb7"; depends=[numDeriv orthopolynom Rcpp RcppArmadillo splines2]; };
@@ -1621,12 +1634,12 @@ in with self; {
   FREEtree = derive2 { name="FREEtree"; version="0.1.0"; sha256="1i2liqbcg993snj5vq341mmafzhn1yrwljvx4f3kyzy0pa59k6rn"; depends=[glmertree MASS pre WGCNA]; };
   FREQ = derive2 { name="FREQ"; version="1.0"; sha256="01nra30pbnqdd63pa87lcws3hnhhzybcjvx2jqyxjghn6khz47j0"; depends=[]; };
   FRESA_CAD = derive2 { name="FRESA.CAD"; version="3.3.1"; sha256="1d8ya1pqy1zc9hxp7s211n0wa3n63jgpxh5ngysbh0dn488l8vgg"; depends=[Hmisc miscTools pROC Rcpp RcppArmadillo stringr]; };
-  FRK = derive2 { name="FRK"; version="2.0.3"; sha256="0xyb3sb22vvsa8ymlcpagjml66ykyny8jgd4rq31k4fsq4ki5xsp"; depends=[digest dplyr ggplot2 ggpubr Hmisc Matrix plyr Rcpp RcppEigen reshape2 scales sp spacetime sparseinv statmod TMB]; };
-  FSA = derive2 { name="FSA"; version="0.9.1"; sha256="19acr6cwy4qh78d0zyawwrpkl6kkv88bqzyz4a40b3ajyg69cqbn"; depends=[car dplyr dunn_test lmtest plotrix sciplot withr]; };
-  FSAdata = derive2 { name="FSAdata"; version="0.3.8"; sha256="0i7wkz0baxcf1dv6qvc891b4ja4x65p4qicil472k6a9gcf5d4qm"; depends=[]; };
+  FRK = derive2 { name="FRK"; version="2.0.4"; sha256="119r0hnmffmlj27v0bwcrq99k4lg5dzws4m2nskddr4v37wpwpv8"; depends=[digest dplyr ggplot2 ggpubr Hmisc Matrix plyr Rcpp RcppEigen reshape2 scales sp spacetime sparseinv statmod TMB]; };
+  FSA = derive2 { name="FSA"; version="0.9.3"; sha256="10ax191r71gny976hgxgs0gz2548sjjaq3hqy7xkzbj2mcmjq41w"; depends=[car dunn_test lmtest plotrix withr]; };
+  FSAdata = derive2 { name="FSAdata"; version="0.3.9"; sha256="1ycllz83lmbd93fdrkj0sjg8bygivp60fv768kk0diamjb16xlmq"; depends=[]; };
   FSDAM = derive2 { name="FSDAM"; version="2020.11-18"; sha256="09l7zvmbvmbcr5pxizdhs5fn79r6cl4ic0hsz2bazdymsqv3s3nm"; depends=[kyotil reticulate]; };
   FSInteract = derive2 { name="FSInteract"; version="0.1.2"; sha256="1aci1398aaz0nrl5jy6yh7xik355wf7pwngrsak4qsi94vdj05iy"; depends=[Matrix Rcpp]; };
-  FSK2R = derive2 { name="FSK2R"; version="0.1.2"; sha256="0baar5dg9zz89bz4f9x074qknxs296bdclipdy8m1ljzclhxpsbf"; depends=[dplyr googlesheets purrr R_utils readtext readxl rjson rlang shiny stringr tibble tidyr XML xml2 zip]; };
+  FSK2R = derive2 { name="FSK2R"; version="0.1.3"; sha256="0hsrg49q42by4i3dywi59wwy5h56fnfdr10s6rk1y9dyliksmj43"; depends=[dplyr purrr R_utils readtext readxl rjson rlang shiny tibble tidyr XML xml2 zip]; };
   FSM = derive2 { name="FSM"; version="1.0.0"; sha256="03w182a9i7mra7wpvkm4q4kwhzjs5kc9h4hh26gygl49jkcvril8"; depends=[]; };
   FSMUMI = derive2 { name="FSMUMI"; version="1.0"; sha256="06ri1zi86cm4arjdlp2pha2bvcc8vz6irvd9n3ja074hv62wxcw4"; depends=[FuzzyR lsa]; };
   FSSF = derive2 { name="FSSF"; version="0.1.1"; sha256="024g2rv64yqxmbbwrbkpkrzdfshl0n6jll6axsgsp4q4ia4r9401"; depends=[Rcpp RcppArmadillo]; };
@@ -1642,9 +1655,9 @@ in with self; {
   FactoClass = derive2 { name="FactoClass"; version="1.2.7"; sha256="0hvlr9cw6wfckl8rzl5qqyp0h8rv8gcnyj6x930jq7h44kj0ji7d"; depends=[ade4 ggplot2 ggrepel KernSmooth scatterplot3d xtable]; };
   FactoInvestigate = derive2 { name="FactoInvestigate"; version="1.7"; sha256="0lndh80pmr5zhhh7j9lhxl4j007rak5gh3dwxd1883cy0d6whjs9"; depends=[FactoMineR ggplot2 rmarkdown rrcov]; };
   FactoMineR = derive2 { name="FactoMineR"; version="2.4"; sha256="0lg8n9fxxk46nchnj4pbpqqf4swxfsq7r9jzr36dmd36kb7avqxr"; depends=[car cluster DT ellipse flashClust ggplot2 ggrepel lattice leaps MASS scatterplot3d]; };
-  FactorAssumptions = derive2 { name="FactorAssumptions"; version="1.1.2"; sha256="0k5jjqfajrq5wc0vp07s6kbfyjks6124hpy09nxw2blrai66vhcm"; depends=[MASS psych]; };
+  FactorAssumptions = derive2 { name="FactorAssumptions"; version="2.0.1"; sha256="0d7dh67r8s0v952palhx9h6bhhlxw9xcjbj7dxsp2hdhwap72s2y"; depends=[MASS psych]; };
   FactorCopula = derive2 { name="FactorCopula"; version="0.8"; sha256="1zrla429hmqlnjxkyscwcs58fav65wwyk1h2m4kwzsqf3g6hqnyr"; depends=[abind matlab polycor statmod VineCopula]; };
-  FactorsR = derive2 { name="FactorsR"; version="1.4"; sha256="1nw63j9bi4x09pgdvdml0w0qxfy1dda5hkxbhd3d6f7rky1z0nyf"; depends=[]; };
+  FactorsR = derive2 { name="FactorsR"; version="1.5"; sha256="1rla44g75hrqalrblr1yaawmyixmivlacn50marqgd9fjh8blgcd"; depends=[]; };
   Factoshiny = derive2 { name="Factoshiny"; version="2.4"; sha256="0szdpdghaqrfjdx3c9klgww8i09dh69500sls2lyjz6c8gi80vcx"; depends=[colourpicker DT FactoInvestigate FactoMineR ggplot2 ggrepel missMDA shiny shinydashboard shinyjqui]; };
   Fahrmeir = derive2 { name="Fahrmeir"; version="2016.5.31"; sha256="16fbc1zb9x9p04bl7y5nd375pha6bd3hfqqchlk1bqxrj4879y5g"; depends=[]; };
   FairMclus = derive2 { name="FairMclus"; version="2.2.1"; sha256="0mhccn6yyf35qb856psh3dpiwdf24l3w2lqr643lkn38lhbmyvn8"; depends=[cluster data_table doParallel dplyr foreach irr magrittr rlist tidyr]; };
@@ -1658,7 +1671,8 @@ in with self; {
   FastGP = derive2 { name="FastGP"; version="1.2"; sha256="120qai1yw3yhwm762zridk78n4qclpivwm9f2hkij4bz851qibqv"; depends=[MASS mvtnorm rbenchmark Rcpp RcppEigen]; };
   FastGaSP = derive2 { name="FastGaSP"; version="0.5.2"; sha256="1i54gxnc27fjgdbcrf2n1s5p6jgadcz2v4g0hq4xay0kfr593a7g"; depends=[Rcpp RcppEigen RobustGaSP]; };
   FastHCS = derive2 { name="FastHCS"; version="0.0.7"; sha256="0l3fi3siwg2jhsj0jbhgccx8pnwd8h8f4z37g1najb41hw8dwn8d"; depends=[matrixStats Rcpp RcppEigen]; };
-  FastJM = derive2 { name="FastJM"; version="1.0.1"; sha256="1l2m4spma6p146wp2fi4gd0hpn8bfhrawvlscm05mxzfr405f15k"; depends=[dplyr MASS mvtnorm nlme Rcpp RcppEigen statmod survival]; };
+  FastImputation = derive2 { name="FastImputation"; version="2.1"; sha256="1h6nvrb7d0l5vdqzxi20cgh6yw90mmjrzbnn1lrkwr3n9fzfqw0l"; depends=[Matrix]; };
+  FastJM = derive2 { name="FastJM"; version="1.1.2"; sha256="1ip5s8jrgkyrs51i7n0xqv2gicpp4kdizm7h6kff9da675bcv9jr"; depends=[dplyr MASS mvtnorm nlme Rcpp RcppEigen statmod survival]; };
   FastKM = derive2 { name="FastKM"; version="1.0"; sha256="0sqxd2pg9y6yn1lnxni32ca3bgbmz04k9z37q9pzgijvf9qvik3f"; depends=[rARPACK]; };
   FastKNN = derive2 { name="FastKNN"; version="0.0.1"; sha256="1iz8ybzkvbyqwb00s7cp1zvy9xlmyjid441mf62dq08a0zncnyss"; depends=[assertthat pdist]; };
   FastLZeroSpikeInference = derive2 { name="FastLZeroSpikeInference"; version="2018.12.10"; sha256="0ybpmns7bc1j5xzqjl7734grihmvvpa3h52gixv3h70l0r89d8ys"; depends=[]; };
@@ -1700,7 +1714,6 @@ in with self; {
   FishResp = derive2 { name="FishResp"; version="1.1.0"; sha256="12b0akpx8xjarhjrn47x930vqh3kswm784xd1k14fx6bxjjy8ais"; depends=[chron lattice mclust respirometry rMR]; };
   FisherEM = derive2 { name="FisherEM"; version="1.6"; sha256="18xn0hnj5diq7falrjl04abqyyrvyzaikb9l6wh7hfhflhsd382c"; depends=[elasticnet ellipse ggplot2 MASS plyr]; };
   FitAR = derive2 { name="FitAR"; version="1.94"; sha256="1mkk3kvfq4v0pdabnhbwrk31ji2mv2v6ns16xsvvr1qyg2fnx6hq"; depends=[bestglm lattice leaps ltsa]; };
-  FitARMA = derive2 { name="FitARMA"; version="1.6.1"; sha256="02di0pkz6hh92glpn3li6z9azkcqa64ja8zfpy0mkh1l97mw6jsv"; depends=[FitAR]; };
   FitUltD = derive2 { name="FitUltD"; version="3.1.0"; sha256="17fj211riybq71k63wjfv2ndc2h46ay5svrac2v5i3b92cb9hkbv"; depends=[ADGofTest assertthat cowplot fitdistrplus ggplot2 MASS mclust purrr]; };
   FixSeqMTP = derive2 { name="FixSeqMTP"; version="0.1.2"; sha256="0v1cwq8gapgandm7wiw8p6av6qigydlpmwi6w02p1y7f0hf5ifnp"; depends=[]; };
   FixedPoint = derive2 { name="FixedPoint"; version="0.6.2"; sha256="1jgqc7m3cvyvxlpkvcqqyfmjl8harsb4kl7msk3qd8mn4qjvvyms"; depends=[MASS]; };
@@ -1715,7 +1728,8 @@ in with self; {
   FlowScreen = derive2 { name="FlowScreen"; version="1.2.6"; sha256="1s9xyrvfsgrl2zxm2an5qj3rs1qx7v7j8wc83jzl28pkwa5xr351"; depends=[changepoint evir zyp]; };
   FluMoDL = derive2 { name="FluMoDL"; version="0.0.3"; sha256="0vp3w6hpph6svz8940w9yk9c5iv4n9mj94f9si1ks0xjbi948rqd"; depends=[dlnm mvmeta tsModel]; };
   FlyingR = derive2 { name="FlyingR"; version="0.2.0"; sha256="0smishimssanzssndbwh9d276sq8vdldpzb3ww9c4nlwypxjmr8z"; depends=[kableExtra knitr Rcpp rmarkdown]; };
-  FoReco = derive2 { name="FoReco"; version="0.2.1"; sha256="19mrw1yah2nzajgzai1vxm38pp8mry3143wjm3g3447iajjh1hry"; depends=[cli corpcor mathjaxr Matrix osqp]; };
+  FlywayNet = derive2 { name="FlywayNet"; version="0.1.0"; sha256="00sp3m3iv6qifrkk0rncmzidv15b5fj138g0mai95lp280b040va"; depends=[EasyABC igraph modeest Rcpp]; };
+  FoReco = derive2 { name="FoReco"; version="0.2.2"; sha256="01ak3dpvsmlvzb2k714scxsaavihfjsi4gwsqyv0hxpq457sd3rr"; depends=[cli corpcor mathjaxr Matrix osqp]; };
   ForIT = derive2 { name="ForIT"; version="1.0"; sha256="0mi2cw09mbc54s8qwcwxin2na1gfyi60cdssy2ncynma7alq3733"; depends=[]; };
   ForImp = derive2 { name="ForImp"; version="1.0.3"; sha256="0ai4i6q233sdsi8xilpbkxjqdf4pxw93clkdkhcxal6q43rnf7vd"; depends=[homals mvtnorm sampling]; };
   ForeCA = derive2 { name="ForeCA"; version="0.2.7"; sha256="1falhz9v0z76h60gz66rh9wvk3jsjv8fvbkhkx9jmzbrkla397cd"; depends=[astsa MASS reshape2]; };
@@ -1733,7 +1747,7 @@ in with self; {
   FourWayHMM = derive2 { name="FourWayHMM"; version="1.0.0"; sha256="0zi42d214dq70ypgj8g57fwjbqfih4z0956njpj2739aqsnjq5v4"; depends=[data_table doSNOW foreach LaplacesDemon mclust snow tensor tidyr withr]; };
   FourgameteP = derive2 { name="FourgameteP"; version="0.1.0"; sha256="15yn47737768fkjjv8ykc9lw7x58pq44k90d9d4c9hp20zw5f3by"; depends=[]; };
   FrF2 = derive2 { name="FrF2"; version="2.2-2"; sha256="048awbsyzpjmr0kmz3k5yi5vksa9iiffabp6q8xsww097vcngxzb"; depends=[DoE_base igraph scatterplot3d sfsmisc]; };
-  FrF2_catlg128 = derive2 { name="FrF2.catlg128"; version="1.2-1"; sha256="0i4m5zb9dazpvmnp8wh3k51bm0vykh4gncnhdg71mfk4hzrfpdac"; depends=[FrF2]; };
+  FrF2_catlg128 = derive2 { name="FrF2.catlg128"; version="1.2-2"; sha256="0r5v3922gsrsyrdin5dwdygnj9i23gwa67p7kll6ac6xxp8gig4w"; depends=[FrF2]; };
   FracKrigingR = derive2 { name="FracKrigingR"; version="1.0.0"; sha256="08ai69wnpa4l1gpmgrs9c9ad9h56h0x55v3gnbci30yxkivbnvxw"; depends=[clusterGeneration psych]; };
   FractalParameterEstimation = derive2 { name="FractalParameterEstimation"; version="1.1.2"; sha256="16xm2g723dm1n1h6as6yvy92sigzhj31f269g5rrzqjcd4d5m8an"; depends=[]; };
   Fragman = derive2 { name="Fragman"; version="1.0.9"; sha256="03vmvmnyza4i46v1awkdjz6ccbsiq49dm0mlmwsm801rq6yfihgp"; depends=[]; };
@@ -1743,7 +1757,6 @@ in with self; {
   Fstability = derive2 { name="Fstability"; version="0.1.2"; sha256="0kscdmrs5namvhi112b47c811w0bg9s3xg48mfa566pxwxz1nv45"; depends=[]; };
   FunCC = derive2 { name="FunCC"; version="1.0"; sha256="0n8fnrq3grsxxcz1841d3d643nyrwc7y15na1205zxq6rmdjx7wa"; depends=[biclust ggplot2 narray RColorBrewer reshape]; };
   FunChisq = derive2 { name="FunChisq"; version="2.5.2"; sha256="0ds8gx86bi882nmdlivvigr53kq1dcq4cqj03szg44j8p6q3vhkx"; depends=[BH dqrng Rcpp Rdpack]; };
-  FunCluster = derive2 { name="FunCluster"; version="1.09"; sha256="0i73asn1w4s6ydf2ddn5wpr0mwbbxzgmaly1pslarzkx71wk03fz"; depends=[cluster Hmisc]; };
   FunWithNumbers = derive2 { name="FunWithNumbers"; version="1.1"; sha256="16w5hna0dm89alkch9wf7n8mqqz75scwg0g84qf57bl6sihnp750"; depends=[gmp Rmpfr]; };
   FuncMap = derive2 { name="FuncMap"; version="1.0.10"; sha256="0iaay6qz9a2s77xjfpp7wm37y7xwnvmlw6s5k5riccmqzc6dcjs7"; depends=[mvbutils]; };
   FuncNN = derive2 { name="FuncNN"; version="1.0"; sha256="0kcr7c54igzi0imp8w9a0mnrqaa2qcls9777scsjz5sbcxdy3if3"; depends=[caret doParallel fda fda_usc flux foreach ggplot2 ggpubr keras Matrix pbapply reshape2 tensorflow]; };
@@ -1752,12 +1765,13 @@ in with self; {
   Fuzzy_p_value = derive2 { name="Fuzzy.p.value"; version="1.1"; sha256="13h6armh9g57zqxyjqk6mq81jlfqxqrg2sb5p9rrhslka5m01zis"; depends=[FuzzyNumbers]; };
   FuzzyAHP = derive2 { name="FuzzyAHP"; version="0.9.5"; sha256="02sx32vlvnr0fzw8rf0f6hiikqn7xp1ibpqzxhxwv8yij2qkiyci"; depends=[MASS]; };
   FuzzyLP = derive2 { name="FuzzyLP"; version="0.1-6"; sha256="0k1cqyswhzp31dq91xigirkqhw3imkx68n4vasyvrgq6fm97dl1n"; depends=[FuzzyNumbers ROI ROI_plugin_glpk]; };
+  FuzzyM = derive2 { name="FuzzyM"; version="0.1.0"; sha256="12arx4flgykdkynnj341pgpd85k7xh6491bv9v9da63w6rp0kdm6"; depends=[]; };
   FuzzyMCDM = derive2 { name="FuzzyMCDM"; version="1.1"; sha256="0ss0s65mm6j0nax4mb9g668d9n9cgl0l016mc3h9hbjxfpqrbkks"; depends=[RankAggreg]; };
   FuzzyNumbers = derive2 { name="FuzzyNumbers"; version="0.4-7"; sha256="12xficdsln31rzfziycw6z0912cgrq6mkvz3f1nbli9lzqrypxzl"; depends=[]; };
   FuzzyNumbers_Ext_2 = derive2 { name="FuzzyNumbers.Ext.2"; version="3.2"; sha256="0gldq0bg1p1vmrn35prha44d7lyymz0jzshdyp2c5rx433mny7h5"; depends=[FuzzyNumbers]; };
   FuzzyQ = derive2 { name="FuzzyQ"; version="0.1.0"; sha256="1camdw7rnzf02nqjlmkr7mqpc38dafq9nw8x7pzwi1lh5xwv5dia"; depends=[cluster]; };
   FuzzyR = derive2 { name="FuzzyR"; version="2.3.2"; sha256="0d0zf8diw7m10zfx0r5zg5arhf4a90sva77h6rvfywixldwrnk7s"; depends=[plyr shiny]; };
-  FuzzyResampling = derive2 { name="FuzzyResampling"; version="0.4.0"; sha256="1gn4a7vk799n622g2hry5j07hylqk69isr9yplj3af1yl9fpc8ym"; depends=[ttutils]; };
+  FuzzyResampling = derive2 { name="FuzzyResampling"; version="0.4.1"; sha256="0dli2r4w8s8wx6i3y31lpy181l1awx8qg8gvnn2yhpcija389zjs"; depends=[ttutils]; };
   FuzzySTs = derive2 { name="FuzzySTs"; version="0.2"; sha256="0zs1pyn9apysspxa0glqc96h6npmvvhiqvqpcm0brslz0b6xnilp"; depends=[FuzzyNumbers polynom]; };
   FuzzyStatProb = derive2 { name="FuzzyStatProb"; version="2.0.4"; sha256="1jpqb8xczi1d4g306vrwpi02f9h59aki1pgnckvfmiclr306prpb"; depends=[DEoptim FuzzyNumbers MultinomialCI]; };
   FuzzyStatTra = derive2 { name="FuzzyStatTra"; version="1.0"; sha256="1ijrlnlmq9d5ahgrpzba6kzkaq1zq59zqdgcizybsf9alsswcm00"; depends=[]; };
@@ -1794,10 +1808,10 @@ in with self; {
   GCalignR = derive2 { name="GCalignR"; version="1.0.3"; sha256="0fq5jglgbw2cqm4pa7x4lczqjr1w65ddnhzlr2i97skzk0gcdlr5"; depends=[ggplot2 pbapply readr reshape2 stringr tibble]; };
   GD = derive2 { name="GD"; version="1.10"; sha256="1sy77yxnwh2n48zahh498v30nl3hivrsmyp0jf3gyyzhxm8z1n5l"; depends=[badger]; };
   GDAdata = derive2 { name="GDAdata"; version="0.93"; sha256="13ks97i289rc4i7gpqrifwbj0m9rx8csjhnfg8mad10qmjwz7p8b"; depends=[]; };
-  GDAtools = derive2 { name="GDAtools"; version="1.7"; sha256="1fsx2kxilvfvm9nccn1a9ly6kavz9l8np6az2ax9dd00rbvqjcjl"; depends=[FactoMineR GGally ggplot2 ggrepel MASS nleqslv nnet RColorBrewer rlang wdm]; };
+  GDAtools = derive2 { name="GDAtools"; version="1.7.2"; sha256="0rqrc9andckh4nf8s87gwkpw2kgc2jsynsvsy1xlnvfp753d4dxp"; depends=[FactoMineR GGally ggplot2 ggrepel MASS nleqslv nnet RColorBrewer rlang wdm]; };
   GDELTtools = derive2 { name="GDELTtools"; version="1.5"; sha256="1lhsyf7kd1lnx2dgifmrd89yl95sf9k6ay19dll2p8b9h3vs7hci"; depends=[dplyr plyr TimeWarp]; };
   GDINA = derive2 { name="GDINA"; version="2.8.8"; sha256="1slq1npsq8s8aghnrpm6vvc6kxj4svz0kr2x0akblndrcr25wxjr"; depends=[alabama ggplot2 MASS numDeriv Rcpp RcppArmadillo Rsolnp shiny shinydashboard]; };
-  GDPuc = derive2 { name="GDPuc"; version="0.5.1"; sha256="1pdhl8mccxb613994f3y59a89rvksi8kb7j2aaf7msnh67rndrrn"; depends=[cli crayon dplyr glue lifecycle magrittr rlang stringr tibble tidyselect]; };
+  GDPuc = derive2 { name="GDPuc"; version="0.8.0"; sha256="0nbqhqddz5k3rcwif69pzf7cbkg5ycwvlscx470c9rhzrdffsm16"; depends=[cli crayon dplyr glue lifecycle magrittr rlang tibble tidyselect withr]; };
   GE = derive2 { name="GE"; version="0.2.6"; sha256="0vxrw08851n6vfqsvr11746l36n8m4sq5qyhgw1yrcj5g4qwnbf9"; depends=[CGE data_tree DiagrammeR]; };
   GEEaSPU = derive2 { name="GEEaSPU"; version="1.0.2"; sha256="02pwjqd94kranc1f69bx9rzk27kchavhvhl9fygjhrr40nwq3pbg"; depends=[gee Rcpp RcppArmadillo]; };
   GEEmediate = derive2 { name="GEEmediate"; version="1.1.3"; sha256="1xprkpjp1pkq4ci1n32d3yy80hx3r4xf2j7f6hv7dvsn4cvdp417"; depends=[gee]; };
@@ -1822,8 +1836,9 @@ in with self; {
   GFE = derive2 { name="GFE"; version="0.1.0"; sha256="0ywrg23z13kp8ggw4wbm4jvr2rvb6kra7ma0mgfj8xzkrxs6vi6m"; depends=[data_table dplyr TeachingSampling]; };
   GFGM_copula = derive2 { name="GFGM.copula"; version="1.0.4"; sha256="0cw8ih9dj86cvks0qcpffzjx8lv6qiwvk3f1wri8zashj8lk9am6"; depends=[cmprsk compound_Cox joint_Cox]; };
   GFM = derive2 { name="GFM"; version="1.1.0"; sha256="02k1g2rq32ghd3yivjrfz0wjid1kbkraqrb5cmc8640lv7k8l0xr"; depends=[doSNOW MASS]; };
-  GFisher = derive2 { name="GFisher"; version="0.1.0"; sha256="1k5ik1q78gy2x0qr15shdr9rry93dh68876l6ifh21ppqw3y1x9j"; depends=[Matrix mvtnorm]; };
+  GFisher = derive2 { name="GFisher"; version="0.2.0"; sha256="0ilvl8y118iicq5anzcsm94yz3bq890mb627dxi6z61cqazjbbai"; depends=[Matrix mvtnorm]; };
   GGClassification = derive2 { name="GGClassification"; version="0.1"; sha256="03wis5ng2mnfhp33xrag8xbmvjagzr1909a6x94wv7s2spji00rp"; depends=[Rcpp RcppEigen]; };
+  GGEBiplots = derive2 { name="GGEBiplots"; version="0.1.3"; sha256="0h7irlmq283bx1hlqyv8bi228kd6xkc7sdw6nq18v3s7b0a9bhcm"; depends=[ggforce ggplot2 scales]; };
   GGIR = derive2 { name="GGIR"; version="2.6-0"; sha256="1pzgmly9zda3m9k8dm31qar4md4mknxnpjf389818jih8v9a7ihf"; depends=[activityCounts bitops data_table doParallel foreach GENEAread ineq matlab R_utils Rcpp read_gt3x signal tuneR unisensR zoo]; };
   GGMncv = derive2 { name="GGMncv"; version="2.1.1"; sha256="0lih9dyb5aqrawhiy2vhv63b132hhzq6zq0x6rbrhy8kbkldhigr"; depends=[GGally ggplot2 glassoFast MASS mathjaxr network numDeriv pbapply Rcpp RcppArmadillo Rdpack reshape sna]; };
   GGMnonreg = derive2 { name="GGMnonreg"; version="1.0.0"; sha256="1bhqk172ddc7xq1hqj1i6q8np6jvmf2xypvd8kp3w1bcsafsbms8"; depends=[bestglm corpcor doParallel foreach GGally GGMncv ggplot2 MASS Matrix network poibin psych Rdpack sna]; };
@@ -1833,7 +1848,6 @@ in with self; {
   GGUM = derive2 { name="GGUM"; version="0.4-3"; sha256="1r4ijkc5xrlp2sq4jnhcrzzmkzilc4lbz3q5zc0kgcz348hf1a7w"; depends=[abind psych Rdpack viridis xlsx]; };
   GGally = derive2 { name="GGally"; version="2.1.2"; sha256="1r98zgh2grn8330cf26r1c20gl131zm778szvn5wj6q6pwv2yd9h"; depends=[dplyr forcats ggplot2 gtable lifecycle plyr progress RColorBrewer reshape rlang scales tidyr]; };
   GHS = derive2 { name="GHS"; version="0.1"; sha256="1khjfy62a67r59s2rax9mmnqy5xnnwhbydzhqwwmyspl48mxycdj"; depends=[MASS]; };
-  GHap = derive2 { name="GHap"; version="2.0.0"; sha256="0br9civfdlksn5xmyrvz2y0knikcd2i175kddxjdqmiyyayckc8w"; depends=[class data_table e1071 lme4 Matrix]; };
   GIC = derive2 { name="GIC"; version="1.0.0"; sha256="0wjrv5rpzcyng0vvpr59l148lxzqnqq4c045fw2x9ynffyb71h99"; depends=[cluster ggplot2 randomForest]; };
   GIFTr = derive2 { name="GIFTr"; version="0.1.0"; sha256="101vr2qasky8hnxp5i3lhlnymwzciypqwvhpl6mrr0r0czgpcz2f"; depends=[glue stringr]; };
   GIGrvg = derive2 { name="GIGrvg"; version="0.5"; sha256="0mx4n4kf34343yiww80fw5yy0x624xsj71n8fr4dm0a2338pxq8v"; depends=[]; };
@@ -1920,9 +1934,9 @@ in with self; {
   GSelection = derive2 { name="GSelection"; version="0.1.0"; sha256="052vh1haxlzbh3c5i24nrwphapik1y8ribmh6q4axd447ggc0ff9"; depends=[gdata penalized SAM]; };
   GSparO = derive2 { name="GSparO"; version="1.0"; sha256="0xna2crxqwy8fj0s79rxbdcaz9x912rp1vdwqv1557fsnmfv2yf0"; depends=[ggplot2 ThreeWay]; };
   GUIDE = derive2 { name="GUIDE"; version="1.2.7"; sha256="0klaczmn3jnlzyh45yaqlc897irjfk467f4w03awmflaiwan3h6v"; depends=[rpanel tkrplot]; };
-  GUILDS = derive2 { name="GUILDS"; version="1.3"; sha256="0zl6x0vn93ybps63fqazvd93f2zwdq0rqqrp7d6n5rnamx99mm8d"; depends=[pracma Rcpp]; };
+  GUILDS = derive2 { name="GUILDS"; version="1.4.1"; sha256="1j0nhrd2anxmd35v5xz1y3bq8w757qif7h69r5wh0yphrkcxqn4v"; depends=[pracma Rcpp subplex]; };
   GUIProfiler = derive2 { name="GUIProfiler"; version="2.0.1"; sha256="10m4d7f2rhw6cmkrnw3jh4iqlkfphf4v7mpfwzw17laq0ncmsx5r"; depends=[graph MASS Nozzle_R1 proftools Rgraphviz rstudioapi]; };
-  GUTS = derive2 { name="GUTS"; version="1.2.2"; sha256="1782qqnxp7r2s228cwyx064h4kva859jym7gipq3l913v9n9l45h"; depends=[Rcpp]; };
+  GUTS = derive2 { name="GUTS"; version="1.2.3"; sha256="1hmd8i21v81k798la5gdmfah1jqb3v891vxm22s41vvxcz0iw1j0"; depends=[Rcpp]; };
   GUniFrac = derive2 { name="GUniFrac"; version="1.4"; sha256="1dya9shxcd1xbwhlk1vqpxag2vnwzca2lddcy1kfn8yjrws8slk8"; depends=[ape dirmult foreach ggplot2 ggrepel lmerTest MASS Matrix matrixStats modeest Rcpp rmutil statmod vegan]; };
   GVARX = derive2 { name="GVARX"; version="1.3"; sha256="00iqwkshp1i9338x9khh8hyszad6150qb11jlvky5fm488wcw1y3"; depends=[lmtest lubridate sandwich strucchange tsDyn urca vars xts]; };
   GWASExactHW = derive2 { name="GWASExactHW"; version="1.01"; sha256="19qmk8h7kxmn9kzw0x4xns5p3qqz27xkqq4q6zmh4jzizd0fsl78"; depends=[]; };
@@ -1935,7 +1949,7 @@ in with self; {
   GWLelast = derive2 { name="GWLelast"; version="1.2.2"; sha256="1nm4w5m4ca6npmpvh9nb0cnrbzlyv95nvvhgs3pqcrw4igagm4hj"; depends=[doParallel foreach geosphere glmnet sp spgwr]; };
   GWPR_light = derive2 { name="GWPR.light"; version="0.1.1"; sha256="130mndfvxq8mr4ml57pr5xp3wv1b6z99f965pw6fnrgwl4hyl584"; depends=[data_table doParallel dplyr foreach GWmodel iterators lmtest plm sp]; };
   GWRM = derive2 { name="GWRM"; version="2.1.0.4"; sha256="13g91bx7b0cf1rnyc6azkvjilvc3kjynb8nclmbh8n3ccm6b0v2r"; depends=[doParallel foreach]; };
-  GWSDAT = derive2 { name="GWSDAT"; version="3.1.0"; sha256="1ka461xilsdqc4frh46bicxfnm543k95chnlxghq6j9rjgkx4k0q"; depends=[deldir digest geometry Kendall lattice lubridate MASS Matrix officer raster readxl rhandsontable sf shiny shinycssloaders shinydashboard shinyjs sm sp splancs zoo]; };
+  GWSDAT = derive2 { name="GWSDAT"; version="3.1.1"; sha256="0z35ywf33lpbsv0fkdqq5d17nfq1cp0za8pq4lb1ckbkv3w974ls"; depends=[deldir digest geometry Kendall lattice lubridate MASS Matrix officer raster readxl rhandsontable sf shiny shinycssloaders shinydashboard shinyjs sm sp splancs zoo]; };
   GWmodel = derive2 { name="GWmodel"; version="2.2-8"; sha256="18jd18mysf7li6c7ywd5cjkwzcvpprc93z8ycndyh0jmyzdr062v"; depends=[FNN maptools Rcpp RcppArmadillo robustbase sp spacetime spatialreg spdep]; };
   GWnnegPCA = derive2 { name="GWnnegPCA"; version="0.0.4"; sha256="1yinzlp22z9z5fk9f1nm14i408yfm5kfgkn3pqnh4bkghs569ivg"; depends=[geodist nsprcomp pracma sf sp spData]; };
   GWpcor = derive2 { name="GWpcor"; version="0.1.7"; sha256="0q43673pmm2c6kss688fpz10b39y3jn1kblv13p8ky0bk82hmcvi"; depends=[corpcor doParallel dplyr foreach geodist pracma sf sp]; };
@@ -1975,6 +1989,7 @@ in with self; {
   GeneticSubsetter = derive2 { name="GeneticSubsetter"; version="0.8"; sha256="0bd4snv3dwabc7mknmd2rjmffj67xq535x0bycajhd83d1jhjars"; depends=[]; };
   GenoScan = derive2 { name="GenoScan"; version="0.1"; sha256="0p98imfvvz7l94kim3pxypyjs2pbxng4a2nagbafbady82ylr2vi"; depends=[data_table MASS Matrix seqminer SKAT]; };
   GenomeAdapt = derive2 { name="GenomeAdapt"; version="1.0.0"; sha256="0jsxqhx62vbsr0hcqk9wrfsg3l3wbnx64pzxx18ps366vg7fxmii"; depends=[gdsfmt qvalue robust SNPRelate]; };
+  GenomeAdmixR = derive2 { name="GenomeAdmixR"; version="2.1.7"; sha256="14qnabg1pj8sg2bvd3k4m467bh1q2zfjr0ljxn1ny031sqwis4cy"; depends=[ggplot2 ggridges hierfstat Rcpp RcppArmadillo RcppParallel rlang stringr tibble vcfR]; };
   GenomicMating = derive2 { name="GenomicMating"; version="2.0"; sha256="02v1pkarmardf7g8hf2n4jj4cq4707g5lcc7gnwsiyyh7pknd1y6"; depends=[dplyr emoa kohonen LowRankQP magrittr plotly qtl Rcpp RcppArmadillo scatterplot3d SOMbrero]; };
   GenomicTools = derive2 { name="GenomicTools"; version="0.2.9.7"; sha256="196shxbrcgiwaa7aav2aipsbj1smrkbhinn44aw9qfvz2x9zdz0m"; depends=[circlize data_table GenomicTools_fileHandler gMWT Rcpp RcppArmadillo snpStats stringr]; };
   GenomicTools_fileHandler = derive2 { name="GenomicTools.fileHandler"; version="0.1.5.9"; sha256="09l87wf78bj49cdh7r3x81hn15c4pihxih8l59xxrpgdhp69268c"; depends=[data_table snpStats]; };
@@ -1991,12 +2006,12 @@ in with self; {
   GerminaR = derive2 { name="GerminaR"; version="2.1.3"; sha256="07hsv8hj9p6qg0d51jfrlv28s3ddfarcnhdv6y073blrcfigi70n"; depends=[agricolae dplyr DT ggplot2 purrr shiny tibble tidyr]; };
   GetBCBData = derive2 { name="GetBCBData"; version="0.6"; sha256="0dwkps7396rkk5fsh8ynl1l9465s6zm5mind16a5y2n8swi2ndyk"; depends=[curl dplyr furrr future jsonlite lubridate memoise purrr RCurl readr stringr]; };
   GetDFPData = derive2 { name="GetDFPData"; version="1.6"; sha256="1yxf1i5bipz16pbydl6qxlalh2zpdiigbxd1qczbjc1z78bl5727"; depends=[crayon curl dplyr lubridate readr reshape2 stringr tibble xlsx XML]; };
-  GetDFPData2 = derive2 { name="GetDFPData2"; version="0.5"; sha256="0grriq5a6n36gbb24cwajrm3971dqvc0ascdgych9wqdj23c3gjr"; depends=[curl dplyr lubridate magrittr memoise purrr RCurl readr rvest shiny stringr tidyr writexl xml2]; };
+  GetDFPData2 = derive2 { name="GetDFPData2"; version="0.6.1"; sha256="03wjxy9f0aqbc87awl8j2c70cm9dvchp6dxvc94in8zarvbsi5pf"; depends=[dplyr lubridate magrittr memoise purrr RCurl readr rvest shiny stringr tidyr writexl xml2]; };
   GetFREData = derive2 { name="GetFREData"; version="0.7"; sha256="134aw3dginxv0b1bvrfm71qyfg8a01d87f2bnagcsksg7403npia"; depends=[dplyr lubridate magrittr purrr readr rvest stringr XML xml2]; };
   GetLattesData = derive2 { name="GetLattesData"; version="1.4"; sha256="129hnhmw8aw81whyj3g7npwgmg4fmvsji9h2xfg78nrp0abjxijv"; depends=[curl dplyr readr stringdist stringr XML]; };
   GetQuandlData = derive2 { name="GetQuandlData"; version="0.1.0"; sha256="1g1as4m853ab1wp57rzqm0552g0vm7kxzypibv0xywc85084pnmc"; depends=[dplyr jsonlite memoise purrr readr scales stringr]; };
   GetR = derive2 { name="GetR"; version="0.1"; sha256="1b2wirhz4nhvmf863czwb8z8b42ilsyjjrg9rc4nd9b7nz50bmjg"; depends=[party]; };
-  GetTDData = derive2 { name="GetTDData"; version="1.4.2"; sha256="1qz75hq1c89riq0jpzjkr9gbk5y7894kb0ydhdyji7kjl1kvgyvx"; depends=[bizdays curl RCurl readxl rvest stringi stringr tidyr XML xml2]; };
+  GetTDData = derive2 { name="GetTDData"; version="1.4.4"; sha256="0hgnwja6z8x9faj8g2kyvdhj5j8qxpgy39863hhqyil71vxmlcrw"; depends=[bizdays curl dplyr readxl rvest stringr tidyr xml2]; };
   GetoptLong = derive2 { name="GetoptLong"; version="1.0.5"; sha256="00fpm6nd3kqa2ikasxa62jzywi46fvvmx1mdavcp5yrxxn37j8wc"; depends=[crayon GlobalOptions rjson]; };
   Ghat = derive2 { name="Ghat"; version="0.1.0"; sha256="1w5agphnbngc0ldb3gbgh4b8ww956lf31bfyxw2zp56crx4akcxf"; depends=[rrBLUP]; };
   Ghost = derive2 { name="Ghost"; version="0.1.0"; sha256="0anrb1n3f3jnq2p0dgqzw5a0gby2slafv2bybgy5gm3f9fsj831w"; depends=[R6]; };
@@ -2015,7 +2030,7 @@ in with self; {
   GlobalDeviance = derive2 { name="GlobalDeviance"; version="0.4"; sha256="0s318arq2kmn8fh0rd5hd1h9wmadr9q8yw8ramsjzvdc41bxqq1a"; depends=[snowfall]; };
   GlobalFit = derive2 { name="GlobalFit"; version="1.2"; sha256="01s51nxcsl8xxn6khbv5jsvpwblwf0iamvr477a1rraqqqj94zx0"; depends=[sybil]; };
   GlobalOptions = derive2 { name="GlobalOptions"; version="0.1.2"; sha256="0gkm77w6db9ajyncy1xdcivplap06a51zi99m009kylccschd2a7"; depends=[]; };
-  GmAMisc = derive2 { name="GmAMisc"; version="1.2.0"; sha256="1rdypld7viski65kqh5m6jhmxgxx8mc3dn8kvy710h5wsii3nn04"; depends=[caTools classInt cluster coin corrplot DescTools dismo ggplot2 ggrepel gridExtra Hmisc InPosition kimisc lsr maptools plyr pROC raster RcmdrMisc rgdal rgeos sp spatstat spatstat_core spatstat_geom spatstat_linnet]; };
+  GmAMisc = derive2 { name="GmAMisc"; version="1.2.1"; sha256="0rvdphdgk1bdfamwf6spy5k9qa5ws92mvf3q3dlhn6qfazp7j4hr"; depends=[caTools classInt cluster coin corrplot DescTools dismo ggplot2 ggrepel gridExtra Hmisc InPosition kimisc lsr maptools plyr pROC raster RcmdrMisc rgdal rgeos sp spatstat_core spatstat_geom spatstat_random]; };
   Gmedian = derive2 { name="Gmedian"; version="1.2.6"; sha256="1kb60f9r9lq5blv07jjln1j5fq1whjcc54zn7bglpp4hl4f74j5d"; depends=[Rcpp RcppArmadillo robustbase RSpectra]; };
   Gmisc = derive2 { name="Gmisc"; version="3.0.0"; sha256="051bcp15xpxpdq2r2d29wgm49c0n5r0vikwgzciclxs64j1a57ip"; depends=[abind checkmate forestplot glue Hmisc htmlTable knitr lattice lubridate magrittr Rcpp rlang rmarkdown stringr XML yaml]; };
   GoFKernel = derive2 { name="GoFKernel"; version="2.1-1"; sha256="0xygsdmggl35fafyp431mkwalwixw2r3f32qll1pf72dfwd8y8d3"; depends=[KernSmooth]; };
@@ -2059,8 +2074,9 @@ in with self; {
   HBglm = derive2 { name="HBglm"; version="0.1"; sha256="1sral7lh5qw5mn31n8459pk52frgw1bjq0z5ckpsnbc4qf3xxcjn"; depends=[bayesm Formula MfUSampler sns]; };
   HCD = derive2 { name="HCD"; version="0.1"; sha256="158szwhpxwj2dj7sibyh8l92dk9cmy6acapmk8wf5hmfybdpgbsh"; depends=[data_table data_tree dendextend irlba Matrix randnet RSpectra stringr]; };
   HCR = derive2 { name="HCR"; version="0.1.1"; sha256="14s46dyw3ifp3pwwlcwbbl47i6hy2whjj1n65i28am5a33nycgha"; depends=[data_table]; };
+  HCTDesign = derive2 { name="HCTDesign"; version="0.7.0"; sha256="0qg6c8sndyk5jgihfdcgk4syp7rwcd8zkb5ndx3rfzdmyfcyrl31"; depends=[diversitree flexsurv mvtnorm Rdpack survival]; };
   HCTR = derive2 { name="HCTR"; version="0.1.1"; sha256="1hg8mpallwxpmamk6q8x87w5hlqqwvbahfw5zmr9pisiagbwcsay"; depends=[glmnet harmonicmeanp MASS ncvreg Rdpack]; };
-  HCV = derive2 { name="HCV"; version="1.1.0"; sha256="09jmrwgzwih08cwjk1rgmn4ssraq4a41fk9fq1qjbjgbsbkkihj8"; depends=[BLSM cluster geometry M3C MASS Matrix rgeos sp]; };
+  HCV = derive2 { name="HCV"; version="1.2.0"; sha256="00ry36w2v4h3vkf2jq3djcma23xflr7fx7icy2vzwk9ffnmzvpxd"; depends=[BLSM cluster geometry M3C MASS Matrix rgeos sp]; };
   HCmodelSets = derive2 { name="HCmodelSets"; version="1.1.2"; sha256="05w742g89r0hr90awwjqlszib2jjfly52l9c7ag3n22vg4d1ixw1"; depends=[ggplot2 mvtnorm survival]; };
   HDBRR = derive2 { name="HDBRR"; version="1.1.3"; sha256="1awz9s7g5fcy2anrq3fmyjcvi3kr2b3vmky63nv964821b8x9vh1"; depends=[bigstatsr MASS numDeriv]; };
   HDCI = derive2 { name="HDCI"; version="1.0-2"; sha256="0wxbv54kbygymhh4r7052vnbj603c1kya01ykvmqzzkjyyfzidkz"; depends=[doParallel foreach glmnet iterators lattice Matrix mvtnorm slam]; };
@@ -2079,7 +2095,7 @@ in with self; {
   HDclust = derive2 { name="HDclust"; version="1.0.3"; sha256="18l4qp261gj3kscfxs3s03kmb9y5ml31vnpgpm1iy125bks4mr2y"; depends=[Rcpp RcppProgress Rtsne]; };
   HDcpDetect = derive2 { name="HDcpDetect"; version="0.1.0"; sha256="0ai35d9df5pmva52sb1rr20f11h0mbal6d179g865b7w6n90kfr1"; depends=[]; };
   HDiR = derive2 { name="HDiR"; version="1.1.1"; sha256="1j9y1sc642ghz0rfdsrsg46c56mgdg9444a4b5zv2ami9b4zs2an"; depends=[circular Directional movMF NPCirc rgl]; };
-  HDoutliers = derive2 { name="HDoutliers"; version="1.0.3"; sha256="167g72b23jpjfhnz2faxia2lma328gvqkrlnz6xizzq7vb7cmb18"; depends=[FactoMineR FNN mclust]; };
+  HDoutliers = derive2 { name="HDoutliers"; version="1.0.4"; sha256="0vc3g36cghs2ln8a3pb344b3vw1jpz9r8ld77ldd898vg9rhkq2m"; depends=[FactoMineR FNN mclust]; };
   HDtest = derive2 { name="HDtest"; version="2.1"; sha256="1c9x4s59762sp7drbm5h1xv22kpifq7p0x3dkrfcd0ficbbma5v8"; depends=[checkmate clime doParallel expm fastclime foreach MASS mvtnorm]; };
   HDtweedie = derive2 { name="HDtweedie"; version="1.1"; sha256="14awd7sws0464f68f5xwnv1xvr0xflvx2z2zzcfj1csvk3af0zzj"; depends=[]; };
   HEDA = derive2 { name="HEDA"; version="0.1.5"; sha256="0arya76isiaxmgmhl7q93vmga9apmbkq3scgz7zhgnrkd8mkh0i1"; depends=[dplyr ggplot2 lubridate rlang zoo]; };
@@ -2144,7 +2160,7 @@ in with self; {
   HazardDiff = derive2 { name="HazardDiff"; version="0.1.0"; sha256="048lvhb4545a487kyknf5b5v8q3a9nsipbh0ii2k3pcc5vfql1h4"; depends=[ahaz Rdpack rootSolve survival]; };
   HeckmanEM = derive2 { name="HeckmanEM"; version="0.1.2"; sha256="1q9sad19ccq30ggvcj1byhka4dwa94k6z31ig56vi3031nx2424n"; depends=[MomTrunc mvtnorm PerformanceAnalytics sampleSelection]; };
   HellCor = derive2 { name="HellCor"; version="1.3"; sha256="1bzc2ipm7vw7s849d43lcs0xrk2rs67h223dn9kahqg152mmknza"; depends=[energy FNN orthopolynom]; };
-  HelpersMG = derive2 { name="HelpersMG"; version="5.0"; sha256="03ad9p0z5ggsv7s2yzid4jrxgqiwrdm588snwgny91vc0n7xzixx"; depends=[coda lme4 MASS Matrix]; };
+  HelpersMG = derive2 { name="HelpersMG"; version="5.1"; sha256="0wdqfg3vlia2mx8vpm406pcb9l4aa9q94var912k8lsv0al7d30i"; depends=[coda lme4 MASS Matrix]; };
   HeritSeq = derive2 { name="HeritSeq"; version="1.0.2"; sha256="0jzf3pq43lllxvvmf0rqzxz9fx6931mgb0ipminlw1iakz8wa6w3"; depends=[cplm DESeq2 lme4 MASS pbapply SummarizedExperiment tweedie]; };
   HeterFunctionalData = derive2 { name="HeterFunctionalData"; version="0.1.0"; sha256="0qrfmxwrxn0rd2ncy3afhraf7m0010nf9739jkj19h1j5vksi9n1"; depends=[]; };
   HeteroGGM = derive2 { name="HeteroGGM"; version="0.1.0"; sha256="0cfzqhbnsy2254m1n6vbpcxlmiqw7cs26v81f5wyawlyyvdydmxi"; depends=[igraph MASS Matrix]; };
@@ -2175,12 +2191,11 @@ in with self; {
   HuraultMisc = derive2 { name="HuraultMisc"; version="1.1.1"; sha256="0bi1y7icrg0f4n9ah9dsrijnfr39bqg3799rz4hccd1b061f0rvj"; depends=[cowplot dplyr ggplot2 HDInterval Hmisc magrittr reshape2 rstan tidyr]; };
   HyPhy = derive2 { name="HyPhy"; version="1.0"; sha256="0994ymv7sswbp8qw3pay34s926cflw2hq2gnchw7rknybvlsrinq"; depends=[ape R_utils]; };
   HyRiM = derive2 { name="HyRiM"; version="2.0.1"; sha256="09njf2gscn13x5mfd7g76cam9bzbibcnc383gb8h0kks7x16d3p9"; depends=[compare grImport2 orthopolynom purrr Rglpk]; };
-  HybridMC = derive2 { name="HybridMC"; version="0.2"; sha256="1wgzfyk0scwq9s2sdmc91fj7r4d7zlgwgnj6mdiia8w88ja8kzqy"; depends=[coda]; };
   HydeNet = derive2 { name="HydeNet"; version="0.10.11"; sha256="1qi87k2drizqba1nz8psh697ks8ai8xz492kzsrs76xlxpbk1i9k"; depends=[checkmate DiagrammeR dplyr graph magrittr nnet pixiedust plyr rjags stringr]; };
   HydroCode = derive2 { name="HydroCode"; version="1.0.2"; sha256="1igshik28xcxrdg116vs9s2yfbz5fik9xvlgfkgai3w9qj0x1h5q"; depends=[sp]; };
   HydroMe = derive2 { name="HydroMe"; version="2.0-1"; sha256="1pzf3z3f2xqmj7ixdg01k8552l4vz7yaf2mb53q59ihfhlbqchni"; depends=[]; };
   HyperG = derive2 { name="HyperG"; version="1.0.0"; sha256="0w84ph0vd03i22s8g52jf2w96yd80ynbh6x0p88apg92jdsapcrc"; depends=[gtools igraph Matrix mclust proxy RSpectra]; };
-  HyperbolicDist = derive2 { name="HyperbolicDist"; version="0.6-2"; sha256="1wgqbx9ascyk6gw1dmvfz6hljvbh49gb9shr9qgf22qbq83waiva"; depends=[]; };
+  HyperbolicDist = derive2 { name="HyperbolicDist"; version="0.6-4"; sha256="0xsgy995z79qdamwdgs335r8zr2bk5cyw4wijqyvgwx3pqmwvvmr"; depends=[]; };
   HypergeoMat = derive2 { name="HypergeoMat"; version="4.0.1"; sha256="0l000hanjlyz76vvvp7sh6d03m3mj7wld4ph9dzhf1z9b4x9i2bz"; depends=[EigenR gsl JuliaConnectoR Rcpp RcppEigen]; };
   IASD = derive2 { name="IASD"; version="1.1"; sha256="1slhd42k639mbyxccl7n69p7ng2qx6pqag8wz3kdwn479spkavzn"; depends=[]; };
   IAT = derive2 { name="IAT"; version="0.3"; sha256="110rn2q09gspfd4msyh30dllxdxdraffkr18h1nm72brzhmx9cfi"; depends=[dplyr ggplot2 lazyeval]; };
@@ -2225,14 +2240,16 @@ in with self; {
   ICglm = derive2 { name="ICglm"; version="0.1.0"; sha256="1dmnz6sf311xsvyg8dh082pxgzizm701cf1ml0xg4s9kls3fd2i8"; depends=[Matrix]; };
   ICsurv = derive2 { name="ICsurv"; version="1.0"; sha256="1mbndpy3x5731c9y955wscy76jrxlgv33bf6ldqp65cwyvdgxl86"; depends=[MASS matrixcalc]; };
   ICtest = derive2 { name="ICtest"; version="0.3-4"; sha256="130n25xxq0iav5y2anyhjjkpvfs438qxjgrbil7yzpaaifhxrmi2"; depends=[GGally ggplot2 ICS ICSNP JADE png Rcpp RcppArmadillo survey xts zoo]; };
-  ICvectorfields = derive2 { name="ICvectorfields"; version="0.1.1"; sha256="15djyammyss0vqvknkd30xxd2pwmi4jzrb2x711sxhz9yx8arhqf"; depends=[fftwtools Rcpp terra]; };
+  ICvectorfields = derive2 { name="ICvectorfields"; version="0.1.2"; sha256="0h10ijh00ahk2aawg090sspdyxzln8cwzvrfqyi45p19sbx93503"; depends=[fftwtools Rcpp terra]; };
   IDCard = derive2 { name="IDCard"; version="0.3.0"; sha256="06b5zqmgh4clni3mv6ab2a52r4z34isbz0hd1i61793gps9fkc0y"; depends=[stringr]; };
+  IDConverter = derive2 { name="IDConverter"; version="0.2.0"; sha256="1w0j833wxmfc3sy2jwnvz15bvlgy0zss9m9s7md1jkkvhjbxcvnk"; depends=[data_table httr]; };
   IDE = derive2 { name="IDE"; version="0.3.0"; sha256="1m1y7gd8i14kl54qxhjy7bnf2md5vs7bb73k7k92nizv941qn0mn"; depends=[DEoptim dplyr FRK ggplot2 Matrix sp spacetime sparseinv tidyr]; };
-  IDF = derive2 { name="IDF"; version="2.1.0"; sha256="01hfnjiq0a9xmg605kyvvx44pm1fm1h1li6gkp0yw3ryz15r654n"; depends=[evd fastmatch ismev pbapply RcppRoll]; };
+  IDF = derive2 { name="IDF"; version="2.1.1"; sha256="045z32zv18hnzddhqk3r7dgql6lavkrjwgsn9lwcjhv1v8j3x6cw"; depends=[evd fastmatch ismev pbapply RcppRoll]; };
   IDPSurvival = derive2 { name="IDPSurvival"; version="1.2"; sha256="0hifs8vw3rxlb5vlxs1433pcv2dh7p0mxpgb2n03d98f20vkdwfw"; depends=[gtools Rsolnp survival]; };
   IDPmisc = derive2 { name="IDPmisc"; version="1.1.20"; sha256="0zy6mxqa8arq0vvhsdcifzm3085c23rnwa1n36fhircph1xwvfdw"; depends=[lattice]; };
   IDSA = derive2 { name="IDSA"; version="2.1"; sha256="0ld2359ksnw9jrjicnqikh5r321mfy2i7vzlhh9phm60k0qf5j98"; depends=[GD ggplot2 kableExtra reshape2]; };
   IDSL_IPA = derive2 { name="IDSL.IPA"; version="1.3"; sha256="1lmmr43cblxi0652hi6nk08c8yv3s6m1aqyysmk4xh2mhnr8hqpb"; depends=[BiocManager doSNOW foreach ggplot2 gridExtra mzR png Rcpp readxl]; };
+  IDSL_MXP = derive2 { name="IDSL.MXP"; version="1.0"; sha256="09r4s7zkc25cfg0dsli5igv9cpywifgqiysspfs5bah4abv4v7f1"; depends=[base64enc xml2]; };
   IDSL_UFA = derive2 { name="IDSL.UFA"; version="1.0"; sha256="0digl6s13mnknihpg5zy0b2ak9rmwz40ya9bym10bsam86rx3r93"; depends=[BiocManager doParallel doSNOW foreach GA ggplot2 gridExtra IDSL_IPA mzR Rcpp readxl stringi]; };
   IDSL_UFAx = derive2 { name="IDSL.UFAx"; version="1.0.1"; sha256="11jc1np6b22qr33rilvb557c0aphvb07601a3hw9zmf8s31xs2dg"; depends=[BiocManager doSNOW foreach IDSL_IPA IDSL_UFA mzR Rcpp RcppAlgos readxl stringr]; };
   IDSpatialStats = derive2 { name="IDSpatialStats"; version="0.3.12"; sha256="0gkicafnzq8aq9bmbbr9n868sh91dwkhs1dk4wry5vkbfaawfxis"; depends=[doParallel foreach igraph spatstat_core spatstat_geom]; };
@@ -2246,11 +2263,11 @@ in with self; {
   IGG = derive2 { name="IGG"; version="1.0"; sha256="1cibb9z18xc1zx1813lk14n6p5am84hm7w0hkrsif4j3p89lrwif"; depends=[GIGrvg glmnet MASS Matrix pscl]; };
   IGP = derive2 { name="IGP"; version="0.2.0"; sha256="1hsyl6cjm84w4f4v0gw4hi5y483r8v78xb3k3h1ixix9ymjqr8y5"; depends=[R6 reticulate]; };
   IGST = derive2 { name="IGST"; version="0.1.0"; sha256="12ycrfsgwakaj3k39k1j4ky58wr7a2ibyz6j9cznvjjv6cgz9zg5"; depends=[BootMRMR e1071]; };
+  IGoRRR = derive2 { name="IGoRRR"; version="0.3.1"; sha256="0vbg3rm0l1fx9s0waj9ginqgyyr781nmj38m78mhxsvbhccqdjr0"; depends=[clipr dplyr feather fst fuzzyjoin ggformula glue haven Hmisc htmltools jsonlite lubridate magrittr mapsf purrr readODS readxl rhandsontable rio shiny shinydashboard shinyFiles shinyWidgets skimr sortable stringr tables tibble tidyr zoo]; };
   IHSEP = derive2 { name="IHSEP"; version="0.2"; sha256="1qb6mn9bsd69pifmphywmj6j71v14wklydw23pbj5980c5hrlwsj"; depends=[lpint Rcpp]; };
   IIVpredictor = derive2 { name="IIVpredictor"; version="0.1.0"; sha256="15361j8b60jj3bh8cjxs39d9bir1aywy9bd254s5w94cakhy0ld5"; depends=[lavaan R2jags]; };
   ILS = derive2 { name="ILS"; version="0.2"; sha256="0lj3ripkaq6jn00lpxjihjhm8g1gbkppmb1y9kkrymphg80k1by7"; depends=[depthTools fda_usc lattice MASS multcomp]; };
   ILSE = derive2 { name="ILSE"; version="1.1.7"; sha256="0jx0f7lk18k0wsypi4ynq1zqbb9hsmcmf0chxyrpqkadfqb6mgwr"; depends=[pbapply Rcpp RcppArmadillo]; };
-  IMAGE = derive2 { name="IMAGE"; version="1.0"; sha256="0xgrja7qhklcmbm0zz5xg94gw5kl05nk3v77l7vxq2d5sk0435g3"; depends=[doParallel foreach Matrix Rcpp RcppArmadillo]; };
   IMD = derive2 { name="IMD"; version="1.0.2"; sha256="13l15gdwib09gs5bqga1hr5z9vym0f9jiki4il22mrzkhw34y2j8"; depends=[devtools dplyr Hmisc httr janitor readODS readr readxl rlang tibble tidyr]; };
   IMEC = derive2 { name="IMEC"; version="0.2.0"; sha256="1k85pr6s6lysn53n59i8rcdhyg7r3il5avbckvvz43p6lh0fgxpy"; depends=[igraph IsingSampler qgraph]; };
   IMFData = derive2 { name="IMFData"; version="0.2.0"; sha256="1mlxpsbyvh1zi8ivdblbd58zfv5hflnknbasz5z8xk9911czrn6p"; depends=[httr jsonlite plyr]; };
@@ -2266,7 +2283,7 @@ in with self; {
   INQC = derive2 { name="INQC"; version="2.0.5"; sha256="1gz7gyq5n2bmh18yrg29nz8kmdc0b35chwqxr6y2sggdm8j28akd"; depends=[evd gdata suncalc]; };
   INSPIRE = derive2 { name="INSPIRE"; version="1.5"; sha256="0938l50yxnb5q628mp874ayx9ybvcjddis20y1hzm5cmlsg0hqhg"; depends=[missMDA]; };
   INTRIGUE = derive2 { name="INTRIGUE"; version="0.1.0"; sha256="1l1vfl0m4iqniwp4bp1bfjpqhwahg341fpyxhryr0j8lypqaw7si"; depends=[dplyr rlist SQUAREM]; };
-  IOHanalyzer = derive2 { name="IOHanalyzer"; version="0.1.6.1"; sha256="0iipdksj9bxcf3k2acm6ay1sjk9hcp860kqf7dflvcmf3i271rfc"; depends=[bsplus colorRamps colorspace colourpicker data_table dplyr DT ggplot2 httr kableExtra knitr magrittr markdown plotly RColorBrewer Rcpp reshape2 shiny shinydashboard shinyjs stringi]; };
+  IOHanalyzer = derive2 { name="IOHanalyzer"; version="0.1.6.3"; sha256="1y8qvjm9mrdfxzgxyn5w8798gay0mf4l5lw7s845bcglpyr91q6p"; depends=[colorRamps colorspace data_table dplyr ggplot2 httr knitr magrittr plotly RColorBrewer Rcpp reshape2 shiny stringi]; };
   IOHexperimenter = derive2 { name="IOHexperimenter"; version="0.1.4"; sha256="0aacliznncl488rjsnx02pfj1mchhcyb36v816g959ll38pvc6bk"; depends=[assertthat BH magrittr Rcpp]; };
   IPCAPS = derive2 { name="IPCAPS"; version="1.1.8"; sha256="17ifkgjjnvvcc8dp065ng4ad9lr85lcdcb401vi84yy8m2llbypw"; depends=[apcluster expm fpc KRIS LPCM MASS Matrix Rmixmod]; };
   IPCWK = derive2 { name="IPCWK"; version="1.0"; sha256="0hah1xl6zli0346jh57rjc5x8vynhaysj0l481rmvznsghv6im23"; depends=[MASS survival]; };
@@ -2274,7 +2291,6 @@ in with self; {
   IPDfromKM = derive2 { name="IPDfromKM"; version="0.1.10"; sha256="1pqi6cshiha4gnra25fgpggyi42mn2hg25s9m9mh091rn5km44q0"; depends=[dplyr ggplot2 gridExtra readbitmap survival]; };
   IPEC = derive2 { name="IPEC"; version="0.1.3"; sha256="0h1b9h33zxx23rj8c9790nsqykwhznavy8hfkgv9gx7nphrsy5ma"; depends=[MASS numDeriv]; };
   IPLGP = derive2 { name="IPLGP"; version="2.0.0"; sha256="0vzppfc42p51a7rjg6w02w45kh0rymqjfgb6979g9pm35dpppbgz"; depends=[ggplot2 sommer]; };
-  IPMRF = derive2 { name="IPMRF"; version="1.2"; sha256="1zvwwhiy0p134zvm5ldc92pdd1ap72bhbrlf02rz9m2hlsxmwy67"; depends=[gbm party randomForest]; };
   IPMbook = derive2 { name="IPMbook"; version="0.1.3"; sha256="0wjzp3l7w4cp0g6c1q84l18pkb0sjjnspidxdv32pn7rqj7wsmcf"; depends=[abind]; };
   IPPP = derive2 { name="IPPP"; version="1.1"; sha256="19ccs25fd56ns7ssi51w2jzjd4d57vyimwmfvf27mmigb537bd5y"; depends=[]; };
   IPV = derive2 { name="IPV"; version="0.2.0"; sha256="0qkh4c865rlzzcj9j8bdwj9y57s8mahry7lxg2q61dqzb51nlvsn"; depends=[ggforce ggplot2 lavaan Matrix reshape2 stringr]; };
@@ -2284,7 +2300,6 @@ in with self; {
   IRCcheck = derive2 { name="IRCcheck"; version="1.0.0"; sha256="035sx36qf5hdnc51h8251qwxfm30r8h2v2qs2x161ip4cqghw019"; depends=[corpcor GGMncv glmnet MASS Rdpack]; };
   IRISMustangMetrics = derive2 { name="IRISMustangMetrics"; version="2.4.4"; sha256="0pnqmzzzbyqdg5hy4jjmlw38cpi81gsphfs4bqwbhmx77dp7ib06"; depends=[dplyr IRISSeismic pracma RCurl seismicRoll signal stringr XML]; };
   IRISSeismic = derive2 { name="IRISSeismic"; version="1.6.3"; sha256="0krq0xxxwl59cp8mn82f9xlincvl6l8r6cq5axfmk99nrzcfdy5g"; depends=[pracma RCurl seismicRoll signal stringr XML]; };
-  IRSF = derive2 { name="IRSF"; version="1.0.3"; sha256="1cq196z2i4by7dfij6w849a49d8dzzcdk5a68nxvmvwq3xskywam"; depends=[abind randomForestSRC survival]; };
   IRTBEMM = derive2 { name="IRTBEMM"; version="1.0.7"; sha256="09siwm2shjb8hhk64r66fspzykzr2r0m011pv8qcl9k7g040mxpi"; depends=[]; };
   IRTShiny = derive2 { name="IRTShiny"; version="1.2"; sha256="094ax94y6k5z4vlxfla2w19f57q0z32nwwd5npjbgmnkhvfhhl9v"; depends=[beeswarm CTT ltm psych shiny shinyAce]; };
   IRdisplay = derive2 { name="IRdisplay"; version="1.1"; sha256="0awdiv4rr93y8jb1d64sm1iy37ywyniqm7w98yv6qm0zz47h7sw3"; depends=[repr]; };
@@ -2308,12 +2323,12 @@ in with self; {
   IUPS = derive2 { name="IUPS"; version="1.0"; sha256="01pv03ink668fi2vxqybli0kgva13gxhqfdxkwz6qk5rnpzwvf5w"; depends=[boot Matching R2jags]; };
   IVYplot = derive2 { name="IVYplot"; version="0.1.0"; sha256="1v739xlim3mcw09cyp4z3cbb25ipkpwm9h378fwy2ycp8lmq32gy"; depends=[plyr]; };
   Iboot = derive2 { name="Iboot"; version="0.1-1"; sha256="1fahh86kgv2axj2qg14n87v888sc0kb567s6zr3fh5zv361phwkq"; depends=[]; };
-  IceSat2R = derive2 { name="IceSat2R"; version="1.0.0"; sha256="196wwzf2sd2xh21grbqgjrq5sn7g4b6bp7i4v64p7ddqz7v8l7h6"; depends=[data_table doParallel foreach glue httr leafgl leaflet leaflet_extras leafsync lwgeom magrittr miniUI rnaturalearth sf shiny units]; };
+  IceSat2R = derive2 { name="IceSat2R"; version="1.0.1"; sha256="0xmx6schcg03p1c7v86m8r7yh78gc5dgiqa1v1d3s030r787ds6a"; depends=[data_table doParallel foreach glue httr leafgl leaflet leaflet_extras leafsync lubridate lwgeom magrittr miniUI rnaturalearth rvest sf shiny units]; };
   IgAScores = derive2 { name="IgAScores"; version="0.1.2"; sha256="0ckqjbn0xc894dc23gbaqzr6z6rl5h0k8gc5gjhbhwvrc2zlyfsp"; depends=[]; };
   ImaginR = derive2 { name="ImaginR"; version="0.1.7"; sha256="12ypfrqw6xym84i1axd3h0qd2md96rc0glas3rgzpdhdyw4lbfmn"; depends=[imager jpeg]; };
   Imap = derive2 { name="Imap"; version="1.32"; sha256="0b4w0mw9ljw6zxwvi0qzb08yq9n169lzgkdcwizrd07x9k9xjxs7"; depends=[]; };
   Immigrate = derive2 { name="Immigrate"; version="0.2.1"; sha256="0pnnvv63kkg7pgyblb1vlx54c6169n40fn58aypdy5xcnknabvxn"; depends=[pROC Rcpp]; };
-  ImpactEffectsize = derive2 { name="ImpactEffectsize"; version="0.6.1"; sha256="12pl4kif6s8jllncm3r5133vrknq98h8awbskq4sh55p1ldaldfq"; depends=[caTools matrixStats parallelDist Rcpp]; };
+  ImpactEffectsize = derive2 { name="ImpactEffectsize"; version="0.6.2"; sha256="06dywikscwvigcw50h9yd3fjf3h25ymkxphwy8r6n3v2nl9iba3m"; depends=[caTools matrixStats parallelDist Rcpp]; };
   ImportExport = derive2 { name="ImportExport"; version="1.3"; sha256="07i7p9xha1f23r07lw87ak13hd4wavdvwh8vb8sg2gyvnpa5njwp"; depends=[chron gdata haven Hmisc readxl RODBC writexl]; };
   ImputeRobust = derive2 { name="ImputeRobust"; version="1.3-1"; sha256="1zvwlpffpm4gqysz57clf8jkqr72yjbzx90pdy95la51m0b6cdbd"; depends=[extremevalues gamlss gamlss_dist lattice mice purrr]; };
   InDisc = derive2 { name="InDisc"; version="1.1.0"; sha256="0halx4m503b9d4vk5y0qmx6qyvc6lwjr4ys4xdcj6bnzv8wi8ymw"; depends=[matrixStats psych]; };
@@ -2360,7 +2375,7 @@ in with self; {
   Inventorymodel = derive2 { name="Inventorymodel"; version="1.1.0"; sha256="1l87xghdksgmb2k3a8j382p7ffi2pma38a6pn31sfjsa6bgmrdnk"; depends=[e1071 GameTheoryAllocation]; };
   Irescale = derive2 { name="Irescale"; version="2.3.0"; sha256="037bzli0zwlfbf5xmllqg2pi0shs33ggrnw69kzyw2sf780y3hs2"; depends=[e1071 fBasics ggplot2 imager Rdpack reshape2 sp]; };
   IrishDirectorates = derive2 { name="IrishDirectorates"; version="1.4"; sha256="1mwjrmqga7f0p5w2m4f0i6mb68jimx6791pz03r8iqj3yx0vzkh0"; depends=[Rcpp RcppArmadillo]; };
-  IrregLong = derive2 { name="IrregLong"; version="0.3.3"; sha256="1qmpim7r5wzifr73bb261xhpsxz93n5h70yc883wiaikjg031abb"; depends=[data_table geepack survival]; };
+  IrregLong = derive2 { name="IrregLong"; version="0.3.4"; sha256="0gavbvmn9m1kamlyg9sb5zxpwq9gc32xcz14m6aqqrdps2xyv3kn"; depends=[data_table geepack survival]; };
   Iscores = derive2 { name="Iscores"; version="1.1.0"; sha256="01xv3003yni984dyn0iwnn3kkl05ij8j21cxbmj9jl9zbw44pzi1"; depends=[kernlab ranger]; };
   IsingFit = derive2 { name="IsingFit"; version="0.3.1"; sha256="1prdzzp15klkdy72379bjksdgxr15nk16pqm35w95341cddxchc7"; depends=[glmnet Matrix qgraph]; };
   IsingSampler = derive2 { name="IsingSampler"; version="0.2.1"; sha256="1cs4vk53b5fy6kywvycfjf62571yx92nvgp5i8hlvms1362ir7gv"; depends=[dplyr magrittr nnet plyr Rcpp]; };
@@ -2370,11 +2385,11 @@ in with self; {
   IsoCorr = derive2 { name="IsoCorr"; version="1.0"; sha256="0rhbclbpfd9d0dawbwwprlzx2j9k59gsmrb11yabiv5305b7vpx8"; depends=[]; };
   IsoGene = derive2 { name="IsoGene"; version="1.0-24"; sha256="0flm0mszankvl3aizwsazyhvz2xkr4gfqiqywpc0r1swqj19610r"; depends=[affy Biobase ff Iso xtable]; };
   IsoSpecR = derive2 { name="IsoSpecR"; version="2.1.3"; sha256="0cy9y3lh20xxj9sah8s2zrwnbzk39s5xmscj4mskvn897bmlksh6"; depends=[Rcpp]; };
-  IsoplotR = derive2 { name="IsoplotR"; version="4.2"; sha256="18yc6d09850fjrgxdmnfgm572czyx0z40smhlix81pwn2pm8vq92"; depends=[MASS]; };
-  IsoplotRgui = derive2 { name="IsoplotRgui"; version="4.2"; sha256="0l30bv9nzamh6aj2b5497hnn298lcim5nhp3isqnm0r1wpnpjk71"; depends=[httpuv IsoplotR jsonlite later]; };
+  IsoplotR = derive2 { name="IsoplotR"; version="4.3"; sha256="0m77ffpwhnhpig8fli36jmwj728s2866wyjmdl8a2jd9lnygw4vw"; depends=[MASS]; };
+  IsoplotRgui = derive2 { name="IsoplotRgui"; version="4.3"; sha256="1yql59cvljh63k5lmgxajbr8slbk4nsi140s5hmr9q1qfk90bncj"; depends=[httpuv IsoplotR jsonlite later]; };
   IsoriX = derive2 { name="IsoriX"; version="0.8.2"; sha256="1yk2xlz658c1kvm3kb89qmacy5g9qnzjawi2pk5xkn7g9v214adr"; depends=[lattice latticeExtra numDeriv raster rasterVis sp spaMM viridisLite]; };
   IsotopeR = derive2 { name="IsotopeR"; version="0.5.4"; sha256="0xgha5alh5y5qfz00rl73q4xlamnmrwij7kckljmy6zgrlrdnl6x"; depends=[colorspace ellipse fgui plotrix runjags]; };
-  IxPopDyMod = derive2 { name="IxPopDyMod"; version="0.1.0"; sha256="12b4ffkq8788yhj2xs6fsm8dw0607ifj3yy1lylcy3z2nn2bzap7"; depends=[dplyr ggplot2 igraph magrittr readr rlang stringr tibble tidyr yaml]; };
+  IxPopDyMod = derive2 { name="IxPopDyMod"; version="0.2.0"; sha256="0qnxf9a0d9lmvna5rzmddp5gsq9scpk9aw0kamhbmrxbxaxm4q9l"; depends=[dplyr ggplot2 igraph magrittr readr rlang stringr tibble tidyr yaml]; };
   JADE = derive2 { name="JADE"; version="2.0-3"; sha256="1fj2wawx5ac1fvlp28naqha0i17f1sb47j2qqzgccvx17ycqmmjn"; depends=[clue]; };
   JASPAR = derive2 { name="JASPAR"; version="0.0.1"; sha256="0wiyn7cz45hwy9zkvacx28zdrg78q6715cg4r9xgcb39q25s0dcy"; depends=[gtools]; };
   JBrowseR = derive2 { name="JBrowseR"; version="0.9.0"; sha256="0wwcz5dzjmss2rdqdfxrxbaj01f9avh7h5clzl9aqvql2g0gllbl"; depends=[cli dplyr htmltools htmlwidgets httpuv ids jsonlite magrittr mime reactR readr stringr]; };
@@ -2386,7 +2401,7 @@ in with self; {
   JM = derive2 { name="JM"; version="1.5-1"; sha256="1nx4dcd3p8f30kryp09iylnnlrvhx0dbx4f51ag7ij5m4ml80zxc"; depends=[MASS nlme survival]; };
   JMI = derive2 { name="JMI"; version="0.1.0"; sha256="05phkwfb9v4g9jixlvbj6br7sbi64zvrgjwfr0v87ijddkxc9si9"; depends=[Rcpp RcppArmadillo]; };
   JMbayes = derive2 { name="JMbayes"; version="0.8-85"; sha256="0s11jpzflc2zg60g4ffcw23c2f4zz3mzddrc2cl5y43xl2v304lb"; depends=[doParallel foreach Hmisc jagsUI MASS nlme Rcpp RcppArmadillo rstan shiny survival xtable]; };
-  JMbayes2 = derive2 { name="JMbayes2"; version="0.1-8"; sha256="16fy3j52xd3d1bjpzrs0qaajiw9fvpdvm19jx0nbwh16npid494f"; depends=[coda ggplot2 GLMMadaptive gridExtra matrixStats nlme Rcpp RcppArmadillo survival]; };
+  JMbayes2 = derive2 { name="JMbayes2"; version="0.2-0"; sha256="1r28b5bgw5q1a23lmdyapahpd50s9259xq7hzq4x0xl0cln8l95l"; depends=[coda ggplot2 GLMMadaptive gridExtra matrixStats nlme Rcpp RcppArmadillo survival]; };
   JMdesign = derive2 { name="JMdesign"; version="1.2"; sha256="0l3cc7dacjx78l81v0fxda20jd8mlbaaf6vflbn6y42aq79s1yyq"; depends=[]; };
   JOPS = derive2 { name="JOPS"; version="0.1.15"; sha256="01yaw657826vfsfdscv3aqgswb5s2054s755agfxqm7g6sswpa13"; depends=[boot colorspace fds fields ggplot2 MASS rpart SemiPar spam SpATS]; };
   JOUSBoost = derive2 { name="JOUSBoost"; version="2.1.0"; sha256="0f3rr7aw20nvmlpqrq3wzgmr55lqdqhk3wphpqq7msgvaf1zrcl7"; depends=[doParallel foreach Rcpp rpart]; };
@@ -2433,7 +2448,6 @@ in with self; {
   KMunicate = derive2 { name="KMunicate"; version="0.2.1"; sha256="19bsnixy59jqpj414827l2r65jimf0swxg36bi90s3pr4mvf7snq"; depends=[checkmate cowplot ggplot2 pammtools survival tidyr]; };
   KNNShiny = derive2 { name="KNNShiny"; version="0.1.0"; sha256="16zm8bhdivaap3mvhdx2qn1b1j2iqyarclb0y2qd1n4viwcfm9c1"; depends=[caret dplyr e1071 FNN psycho rhandsontable rmarkdown shiny]; };
   KOBT = derive2 { name="KOBT"; version="0.1.0"; sha256="0dw6s68x95d4z5a6p8bs1368jcxv5jx0wd87js28i2qm3q57ss71"; depends=[glmnet knockoff MASS Rdpack spcov xgboost]; };
-  KODAMA = derive2 { name="KODAMA"; version="1.8"; sha256="0i1lwjzxjpm9yng763hkbi88q13i9bhcwwin6b3lkif34r4c3n8y"; depends=[minerva Rcpp RcppArmadillo]; };
   KOGMWU = derive2 { name="KOGMWU"; version="1.2"; sha256="1vz0099gp1r10n7w4p480l8rswdw100sns196d9xin2ibmmd2fx9"; depends=[pheatmap]; };
   KONPsurv = derive2 { name="KONPsurv"; version="1.0.4"; sha256="08z24w04rzydm86z201crcmyw88sg92yqma5hzj0blj0fyqakwmi"; depends=[Rcpp survival]; };
   KPC = derive2 { name="KPC"; version="0.1.1"; sha256="09zhmjv7dskkdkhrk5alxpxiwlgl9n2whfhxf237q5zfyxxa8pm9"; depends=[data_table kernlab mlpack proxy RANN]; };
@@ -2461,8 +2475,8 @@ in with self; {
   KnapsackSampling = derive2 { name="KnapsackSampling"; version="0.1.0"; sha256="17yzmd11k1n5iy54vbcvpzvkm8ypbl6n1kfi931wwrrcq9y7hg22"; depends=[lpSolve]; };
   KneeArrower = derive2 { name="KneeArrower"; version="1.0.0"; sha256="1blmim4l7375psa9c3wbpksywj5nfbawly4001n6311wcv4dybl5"; depends=[signal]; };
   KnockoffScreen = derive2 { name="KnockoffScreen"; version="0.3.0"; sha256="01r04d9ha9l5pkz3lwdcb5x5qqwk8vil9avnbnfn76wg63mdfhbk"; depends=[bigmemory CompQuadForm data_table irlba Matrix seqminer SPAtest]; };
-  Knoema = derive2 { name="Knoema"; version="0.1.19"; sha256="16izh1viaqxvhgfxy2g6b9hhvm1n6nbjsj2xd45qwdibl3ly8d0f"; depends=[base64enc digest httr jsonlite lubridate xts zoo]; };
-  KnowBR = derive2 { name="KnowBR"; version="2.0"; sha256="0i934gff8ldg0lm5cfcf3ip7abnparaaviq8avs7cbnacs6nw8i1"; depends=[fossil mgcv plotrix sp vegan]; };
+  KnockoffTrio = derive2 { name="KnockoffTrio"; version="1.0.0"; sha256="1lsaslv4p5f4488rqf8fqydpdykdqifsdf2aa9dg1mx8d1agzcb5"; depends=[]; };
+  KnowBR = derive2 { name="KnowBR"; version="2.1"; sha256="0r4df95axsrsr72ksy3sdc37sjjd6fvcpj5si7jag7q7ffs8kzmw"; depends=[fossil mgcv plotrix sp vegan]; };
   KoulMde = derive2 { name="KoulMde"; version="3.2.1"; sha256="0yx04my2vwjpi4l35h1i5xwqckca8b72divww39y1frcvia33g08"; depends=[expm Rcpp RcppArmadillo]; };
   Kpart = derive2 { name="Kpart"; version="1.2.2"; sha256="02df0pr8a0gm8558gbw9svxf5sybmg27grymy71ar9hjnhw5xlf2"; depends=[leaps]; };
   KraljicMatrix = derive2 { name="KraljicMatrix"; version="0.2.1"; sha256="0yzilmiiyzd2x3v0cnjphf0wdwiblh37kgrvmfrdy49qly48pvi2"; depends=[dplyr ggplot2 magrittr tibble]; };
@@ -2476,7 +2490,6 @@ in with self; {
   LA = derive2 { name="LA"; version="0.1.3"; sha256="0yvgrm64g910h4zgavinj6ri5gvy5yjd3ydr9gqm7qdj05dsgz66"; depends=[LHD]; };
   LAGOSNE = derive2 { name="LAGOSNE"; version="2.0.2"; sha256="0fhy590mnkypknxk34c7vrhwrgsjrkf1f0yvfbjy1kvzvla0hjkl"; depends=[curl dplyr lazyeval magrittr memoise progress purrr qs rappdirs rlang sf stringr tibble tidyr]; };
   LAM = derive2 { name="LAM"; version="0.5-15"; sha256="18p8w2n2k4788vpxhdxnmcafwj7a5bvihk530fiynkra3xrn1cr4"; depends=[CDM Rcpp RcppArmadillo sirt]; };
-  LANDD = derive2 { name="LANDD"; version="1.1.0"; sha256="13szkww9nw8zywfrqd8mwgj9csgragm0bx8ia52rcpakpc3hv3hx"; depends=[BH doParallel fdrtool foreach GGally ggplot2 GOSemSim GOstats igraph intergraph Matrix modeest mvtnorm pROC Rcpp]; };
   LARF = derive2 { name="LARF"; version="1.4"; sha256="1sqib7smgjacn07ishwls1nlbvcb6fpp1vhrjwf9g4xf9jk30i8h"; depends=[Formula]; };
   LARGB = derive2 { name="LARGB"; version="0.1.0"; sha256="0ksyagp4wy1rm7kll6rgdx2735k6ywlaf08d6yys9cv090rpc8l3"; depends=[dplyr imager]; };
   LARisk = derive2 { name="LARisk"; version="1.0.0"; sha256="13d008v8aypqlx35bf16y7rcfcv5qnbsi8q0zpfcl03rzxmqpb8b"; depends=[dplyr Rcpp]; };
@@ -2495,7 +2508,6 @@ in with self; {
   LDAvis = derive2 { name="LDAvis"; version="0.3.2"; sha256="1y9wd379rfv3rd3f65ll21nvh6i8yafvv11f8gw8nn06194dgfzg"; depends=[proxy RJSONIO]; };
   LDLcalc = derive2 { name="LDLcalc"; version="1.1"; sha256="1vxf6280kjy144mqxyrhvxa9hr3jg8qvyd9dff5haa604sr2s778"; depends=[caret caretEnsemble corrplot Cubist data_table earth gbm glmnet kernlab lares lattice randomForest RColorBrewer resample]; };
   LDNN = derive2 { name="LDNN"; version="1.10"; sha256="092mnjdmc0l471vd8nym09r9sfx1scp4x6nh22mj6413vaicagq0"; depends=[devtools keras reticulate tensorflow]; };
-  LDOD = derive2 { name="LDOD"; version="1.0"; sha256="0mf2sy01yv57mqicrz08a17m6crigklx6fmw9zpxv7g85qw1iq4v"; depends=[Rmpfr Rsolnp]; };
   LDPD = derive2 { name="LDPD"; version="1.1.2"; sha256="1khdx8vwlpliyjc4sxcdiywbxl8lc9f5s3457vcip1j8dv537lbm"; depends=[MASS nleqslv]; };
   LDRTools = derive2 { name="LDRTools"; version="0.2-1"; sha256="05srfyplsypi3whfa71lx7pnad23irpf0p7rxmrpv28jgdmrz6wf"; depends=[]; };
   LDcorSV = derive2 { name="LDcorSV"; version="1.3.3"; sha256="0wr8i9q9p48vpcia8v3rd8bb2pfijr9r6kg9x26k4wncpg7n83cp"; depends=[]; };
@@ -2515,24 +2527,24 @@ in with self; {
   LIC = derive2 { name="LIC"; version="0.0.1"; sha256="1fmd3sjzzkcpbin9ak72yvv4ibrrwhzqxymmpsppqfv1syk6h6s4"; depends=[]; };
   LICORS = derive2 { name="LICORS"; version="0.2.0"; sha256="0p9y21k1mj1v397jpb5g6jiw7rpzbyfwr4kv2rp3lyxyasy2ykf0"; depends=[fields FNN locfit Matrix mvtnorm RColorBrewer zoo]; };
   LIHKGr = derive2 { name="LIHKGr"; version="0.1.0"; sha256="16yyalsdbaxncgfabsz2q2fixzmwyd62gvnvnxazf4vlypp6xlqz"; depends=[dplyr magrittr purrr R6 raster RSelenium rvest tibble xml2]; };
-  LIHNPSD = derive2 { name="LIHNPSD"; version="0.2.1"; sha256="08ils29vvaq6abkgxbh028vwjw6l6h10cirbnwr65s458zvh4xqv"; depends=[BB Bolstad2 moments optimx Rmpfr sn]; };
   LIM = derive2 { name="LIM"; version="1.4.6"; sha256="03x1gnm06bw1wrzc01110bjzd2mvjdzbc2mbrazh22jrmb32w5d8"; depends=[diagram limSolve]; };
   LINselect = derive2 { name="LINselect"; version="1.1.3"; sha256="1qxqwph5ja2kf1s4ggsv8w6hjgf9mr53a0gahhjix2v78309z42g"; depends=[elasticnet gtools MASS mvtnorm pls randomForest]; };
   LIStest = derive2 { name="LIStest"; version="2.1"; sha256="1gk253v3f1jcr4z5ps8nrqf1n7isjhbynxsi9jq729w7h725806a"; depends=[]; };
-  LKT = derive2 { name="LKT"; version="1.0.1"; sha256="1a3mpjzl04gp7688gaknp8la84ljsj49id06b5y6r51kyiqip6dv"; depends=[data_table glmnet glmnetUtils LiblineaR lme4 Matrix SparseM]; };
+  LKT = derive2 { name="LKT"; version="1.1.0"; sha256="18dphv8rgdf3plci4i57hdryra43mvaifr4xh88ckddza42a3af7"; depends=[data_table glmnet glmnetUtils LiblineaR lme4 Matrix SparseM]; };
   LLM = derive2 { name="LLM"; version="1.1.0"; sha256="0kxppzaim7cmjawg5rjih4dsz8adq0asairgq3vx5lyjppb2cybx"; depends=[partykit reghelper RWeka scales stringr survey]; };
   LLSR = derive2 { name="LLSR"; version="0.0.3.1"; sha256="0nci8p3gw35a3ifwrq7r2jih718p2iwmmh3495qnh0fk304y7kbi"; depends=[crayon digest dplyr ggplot2 minpack_lm nleqslv openxlsx rootSolve svDialogs svglite]; };
   LMERConvenienceFunctions = derive2 { name="LMERConvenienceFunctions"; version="3.0"; sha256="0jg889qh5a9wdi01yiw6z7kivs9dzh5dcq39f4zifdpqzglhshzb"; depends=[fields LCFdata lme4 Matrix mgcv]; };
   LMMELSM = derive2 { name="LMMELSM"; version="0.1.0"; sha256="1wrda19629k7fg3rryk9sf16h1w5915cifv7iiqqg64k8w1vwnaj"; depends=[BH Formula loo MASS nlme Rcpp RcppEigen rstan rstantools StanHeaders]; };
   LMMsolver = derive2 { name="LMMsolver"; version="1.0.0"; sha256="0ri89i5q3026ambm1zk24adi0jf22wb9assklwsqzz2kmh54k282"; depends=[agridat ggplot2 maps Matrix Rcpp sp spam]; };
-  LMMstar = derive2 { name="LMMstar"; version="0.4.4"; sha256="0fjw0q65xid0389in4jiha6m4n720444cm7plc0l59rcp65n8xwg"; depends=[emmeans ggplot2 lava Matrix multcomp nlme numDeriv reshape2 sandwich]; };
+  LMMstar = derive2 { name="LMMstar"; version="0.5.2"; sha256="0s5j6lwyh8wswkkgi3d2j0cb3md5x2xk086hr3hjhimbazcr46xr"; depends=[emmeans ggplot2 lava Matrix multcomp nlme numDeriv reshape2 sandwich]; };
+  LMN = derive2 { name="LMN"; version="1.1.2"; sha256="17xsf61dnpvbhxwbgqjj9k26xwd9s90vfzv2ymj1i2g5zdd6w9k7"; depends=[Rcpp RcppEigen SuperGauss]; };
   LMest = derive2 { name="LMest"; version="3.0.2"; sha256="0x80cgd54qw1l4wayxwyyccmajn5i227727wlsgm6s4chnpvispz"; depends=[diagram Formula MASS mclust mix MultiLCIRT mvtnorm scatterplot3d]; };
   LMfilteR = derive2 { name="LMfilteR"; version="0.1.3"; sha256="0c27154jghfl83n3sn26pr8mjcybrq02glvnjcx8hllrmz4gmnmi"; depends=[MASS]; };
   LMoFit = derive2 { name="LMoFit"; version="0.1.6"; sha256="10xiaa5h8c0sq9z70yjs29z8jnjyqgybdv33d6s2100h3n46jd31"; depends=[ggplot2 lmom pracma sf]; };
   LNIRT = derive2 { name="LNIRT"; version="0.5.1"; sha256="0w32qvz5mhzg6f8050p57v26amn6d2il2icjfiypf7yi3gsx7w09"; depends=[MASS]; };
   LOGAN = derive2 { name="LOGAN"; version="1.0.0"; sha256="00y8kcykw01gv2g20vmpwkc3qqyafwbiw5pa731xlfnh1b8sn0hi"; depends=[dplyr foreign ggplot2 magrittr modules pander psych rlang stringr]; };
   LOGICOIL = derive2 { name="LOGICOIL"; version="0.99.0"; sha256="1wgg7kigzzk5ghjn3hkjf1bb8d6mvjfmkwq64phri5jpxd742ps9"; depends=[nnet]; };
-  LOMAR = derive2 { name="LOMAR"; version="0.1.0"; sha256="1rd3xnidhk6a3yawlk8ilr8v1a8ghsj3sxx5mp2x47dc8k4bj4da"; depends=[aws data_table dbscan doParallel EBImage ff foreach pracma proxy RANN reshape2 TDA transport]; };
+  LOMAR = derive2 { name="LOMAR"; version="0.2.0"; sha256="1wfkair4zzd58s36mc9gyk7d24cp6y2lrg7qsg0acx3b00wzdjwq"; depends=[aws BH data_table dbscan doParallel EBImage ff FNN foreach pracma proxy RANN Rcpp reshape2 transport]; };
   LOPART = derive2 { name="LOPART"; version="2020.6.29"; sha256="1zxaag5pj3l9rzxhlrkx8q4adlap7wsdysb4y6ijvsmxvv63j22k"; depends=[data_table Rcpp]; };
   LOST = derive2 { name="LOST"; version="2.0.2"; sha256="15ggmvjy2k4j692y9h3anfzmb0hgnx66cbr76grwvcfysdx87ick"; depends=[e1071 gdata geomorph MASS miscTools pcaMethods rgl shapes]; };
   LPBkg = derive2 { name="LPBkg"; version="1.2"; sha256="1pgv6cb7m2j7qnrzybnv6x67a3ry8kpvisqj86rvxzclc9q56fdn"; depends=[Hmisc orthopolynom polynom]; };
@@ -2550,6 +2562,7 @@ in with self; {
   LPower = derive2 { name="LPower"; version="0.1.1"; sha256="00sabp2snfm0175c0cfyv83yd1zb3b8h2wrr7yxgkmr4i3py1fn7"; depends=[MASS nlme]; };
   LPsmooth = derive2 { name="LPsmooth"; version="0.1.3"; sha256="0fvn6vwfl37xhzzj44vadk8fr3d85zv58jjg7qfdjqvyw8khd59p"; depends=[Hmisc LPBkg LPGraph nloptr orthopolynom polynom truncnorm]; };
   LREP = derive2 { name="LREP"; version="0.1.1"; sha256="1dh6f12zvm8ff7vkl118bygyly68rdw6bqf2isjd01ji7d4w70cj"; depends=[]; };
+  LRMF3 = derive2 { name="LRMF3"; version="0.1.0"; sha256="0j9hnin3yic118766if6gysq0g4mkqw40b0873g4ggjkgxndxrqn"; depends=[glue Matrix]; };
   LRQMM = derive2 { name="LRQMM"; version="1.2.3"; sha256="149z6wggyz9p39vanw5m2iw5v69spxdj8ciarrswj5ddvkli7940"; depends=[GeneticsPed kinship2 Matrix MCMCglmm quantreg R_matlab rsvd SparseM sparsesvd]; };
   LRTH = derive2 { name="LRTH"; version="1.3"; sha256="08vakwb7ca7956gifynzijka441yyx0wd5bq5jfhz56lzcxgfb99"; depends=[]; };
   LRcontrast = derive2 { name="LRcontrast"; version="1.0"; sha256="0fs06p853r42nws2camvs87py39hb1ssxhfm6d5n9kkq81snfx4q"; depends=[DoseFinding]; };
@@ -2559,8 +2572,8 @@ in with self; {
   LSAmitR = derive2 { name="LSAmitR"; version="1.0-2"; sha256="15qyij193scrvc1ghcssr6qdzxc4l4qh199s09bz5hvr62zwfdgb"; depends=[Hmisc lme4]; };
   LSC = derive2 { name="LSC"; version="0.1.5"; sha256="1nlnwqb24sbgvl96azh8a833ij5xknjr2wr8shs59lm2n63a3ql9"; depends=[fields gam LICORS Matrix RColorBrewer]; };
   LSD = derive2 { name="LSD"; version="4.1-0"; sha256="17pbdlcbhzf3v7l42mjikln1ga5xjp5r78gjg6a88iahk0lwwlvm"; depends=[]; };
-  LSDinterface = derive2 { name="LSDinterface"; version="1.1.0"; sha256="0mr4d7l7hvn4m2ny8zz6ffyxxmlgqjg5v7pc83q4gq1fzvxs2bhy"; depends=[abind boot]; };
-  LSDsensitivity = derive2 { name="LSDsensitivity"; version="1.1.2"; sha256="10654gc46szavgw2nzg3s6bid57jgd291qbb6xl0wprzwsg006j5"; depends=[abind car DiceKriging diptest kSamples lawstat LSDinterface randtoolbox rgenoud sensitivity tseries]; };
+  LSDinterface = derive2 { name="LSDinterface"; version="1.2.0"; sha256="00adw2cdfcfnp2f3i31fcm531iw9ik9csfhygd2171a32rdkj752"; depends=[abind boot TSdist]; };
+  LSDsensitivity = derive2 { name="LSDsensitivity"; version="1.2.0"; sha256="0fi3k5j3si85p95b40jp6fqfsy7qay0xf3sjq6a0pf4j7j59agb3"; depends=[abind car DiceKriging diptest kSamples lawstat LSDinterface randtoolbox rgenoud sensitivity tseries]; };
   LSE = derive2 { name="LSE"; version="1.0.0"; sha256="01qj0zasv7dbwg0qxryz1d5jp4rapvnm9i6a4jd7c4pxqdm11j7y"; depends=[MASS pracma]; };
   LSMRealOptions = derive2 { name="LSMRealOptions"; version="0.2.1"; sha256="0paa5yahpyr8jpgy8aqk2fcixdny6ip09vqm8varvpiqfxrjd6ww"; depends=[]; };
   LSMonteCarlo = derive2 { name="LSMonteCarlo"; version="1.0"; sha256="0w5042phkba5dw92r67ppp2s4khjpw5mm701dh9dya9lhj88bz6s"; depends=[fBasics mvtnorm]; };
@@ -2569,11 +2582,12 @@ in with self; {
   LST = derive2 { name="LST"; version="1.1.0"; sha256="0vmdd4mvpm1mkb2qffkjpzwsg7xiw8sr2q4a69694bsy59vk43cd"; depends=[raster]; };
   LSTS = derive2 { name="LSTS"; version="2.1"; sha256="0pxcw5awm6fr6v1n8gd7yap0y1mba9khwgq27qlv9h2kmrzbr3hp"; depends=[ggplot2 patchwork Rdpack scales]; };
   LSVAR = derive2 { name="LSVAR"; version="1.2"; sha256="0lhx9a5l3s2c5isd3fhvxxfdazdxddpkg07hk4rckvhmxln7j1dj"; depends=[igraph mvtnorm pracma]; };
-  LSX = derive2 { name="LSX"; version="1.0.2"; sha256="16dmi4nl4mxx37bb0cp5bpx2817smhq4vxh3bsz4p3am1jfrhzak"; depends=[digest ggplot2 ggrepel irlba locfit Matrix proxyC quanteda quanteda_textstats reshape2 rsparse RSpectra rsvd stringi]; };
+  LSWPlib = derive2 { name="LSWPlib"; version="0.1.0"; sha256="1z4lcpmbm3wdzbi04flvspkimk4jfhjqi5pd0ab4pbb0ii1z26hs"; depends=[waveslim wavethresh]; };
+  LSX = derive2 { name="LSX"; version="1.1.1"; sha256="0dmxxqy0yjyif3w3dxfxyfkmnyvxfrjgr4mvy41cw5smkrhh7b49"; depends=[digest ggplot2 ggrepel irlba locfit Matrix proxyC quanteda quanteda_textstats reshape2 rsparse RSpectra rsvd stringi]; };
   LTPDvar = derive2 { name="LTPDvar"; version="1.2"; sha256="0r9v5g5y9n85jdcvm7zpapm73ism48m3mmybpcmgcs028h2ndv7v"; depends=[]; };
   LTRCforests = derive2 { name="LTRCforests"; version="0.5.5"; sha256="0f0am4wydk4wqiwjzxj2ibdkp5sd47qam4218nn0489knkvas3s7"; depends=[ipred partykit prodlim survival]; };
   LTRCtrees = derive2 { name="LTRCtrees"; version="1.1.1"; sha256="1k16m2fpwn8m4dvm1b82srf3bgkvkwf6kcjpwjgkdappifc7p5m8"; depends=[icenReg Icens interval inum partykit rpart survival]; };
-  LUCIDus = derive2 { name="LUCIDus"; version="2.1.0"; sha256="133cxmvsxm26jmx65snfswqf69ch10bnfbninkks80h2c1y46kq6"; depends=[boot glasso glmnet lbfgs mclust networkD3 nnet]; };
+  LUCIDus = derive2 { name="LUCIDus"; version="2.1.4"; sha256="1df3k5jl57l07f13k854izmxf1vnml54lx1d3zrz3gqvhhzrpl40"; depends=[boot glasso glmnet jsonlite mclust networkD3 nnet]; };
   LVGP = derive2 { name="LVGP"; version="2.1.5"; sha256="03sd777s16nv04ikn9b3rj67ad6n4bwi0rycc7wqdnq0dx6xgniy"; depends=[lhs randtoolbox]; };
   LW1949 = derive2 { name="LW1949"; version="1.1.0"; sha256="147ymp7j98ihp1dcz3p5v9ar6h767phjdnga5q5vf1wwa2mxawg7"; depends=[MASS mgcv plotrix]; };
   LWFBrook90R = derive2 { name="LWFBrook90R"; version="0.4.5"; sha256="1mqxay678baxqkmbcknn5bq3bw6fk9nr04ljsbh13wqxz27iw5bj"; depends=[data_table doFuture foreach future iterators progressr vegperiod]; };
@@ -2587,7 +2601,8 @@ in with self; {
   Lahman = derive2 { name="Lahman"; version="9.0-0"; sha256="0q6whyqlxdkm17i6hichnd89y3pnjc0xc5aabdanf1i4lpv5vynr"; depends=[dplyr]; };
   LakeMetabolizer = derive2 { name="LakeMetabolizer"; version="1.5.0"; sha256="06mvdrdyl0rh9rwd0jxww0sycadcp7cj08hq35q6vyzq0jkxn2xf"; depends=[plyr rLakeAnalyzer]; };
   Lambda4 = derive2 { name="Lambda4"; version="3.0"; sha256="04ikkflfr0nmy1gr3gfldlh2v8mpl82k1wwnzp57d2kn75m9vbxz"; depends=[]; };
-  LambertW = derive2 { name="LambertW"; version="0.6.6"; sha256="02pi98nnscaz044jkh2nrxxdyafdbiy9x0szdfkx894s3bwrf29i"; depends=[ggplot2 lamW MASS RColorBrewer Rcpp reshape2]; };
+  LambertW = derive2 { name="LambertW"; version="0.6.7"; sha256="15ad642cldn2dy6c1dcsyngv94901imi76v6yi50nr1qqad0jilq"; depends=[ggplot2 lamW MASS RColorBrewer Rcpp reshape2]; };
+  Landmarking = derive2 { name="Landmarking"; version="1.0.0"; sha256="1gkfv1xcjkbh417kv9dkflfg6agvgrd893v8ams25c2pazfmrmnz"; depends=[dplyr ggplot2 mstate nlme pec prodlim riskRegression survival]; };
   Langevin = derive2 { name="Langevin"; version="1.3.1"; sha256="0sg3way9hlk875dfwbby59qm5dxwq7d763a0xjgjwaygpwqc83kz"; depends=[Rcpp RcppArmadillo]; };
   LaplaceDeconv = derive2 { name="LaplaceDeconv"; version="1.0.4"; sha256="0n56cmrb536j1vmfizzag1x8wm68c2znpclwbdl8qraqzp8rmffx"; depends=[orthopolynom polynom]; };
   LaplacesDemon = derive2 { name="LaplacesDemon"; version="16.1.6"; sha256="1dsfp65cg06f25zjzd5ib4qyn1alfhbhpgyvpcw5n6bszn13idap"; depends=[]; };
@@ -2631,7 +2646,7 @@ in with self; {
   LinkageMapView = derive2 { name="LinkageMapView"; version="2.1.2"; sha256="101g4djzkxgxbn87an2vz4s9nwn8gwz7a3p3wg0y4zpdd1pdp716"; depends=[plotrix qtl RColorBrewer]; };
   LinkedGASP = derive2 { name="LinkedGASP"; version="1.0"; sha256="1win1yd8y677rmic531dyd29f49p7pr1r3kbjysvv9syi5nkydyj"; depends=[nloptr spBayes]; };
   LinkedMatrix = derive2 { name="LinkedMatrix"; version="1.4.0"; sha256="0p6qjnrljxnj3c5nynmx563vcqhxj4jf7czqdg750h38gjy8qzxi"; depends=[crochet]; };
-  LipidMS = derive2 { name="LipidMS"; version="3.0.2"; sha256="02h60gqbm6dp553m68zjf5vwwxnlym6k5qi2r6r5s5mpsd4vlp0l"; depends=[CHNOSZ doParallel foreach iterators readMzXmlData scales shiny shinythemes]; };
+  LipidMS = derive2 { name="LipidMS"; version="3.0.3"; sha256="0i7b9lw40i6hrbzzqs9jncw9qx2hm8z7xc4jnn3nyjlw2qps5asg"; depends=[CHNOSZ doParallel foreach iterators readMzXmlData scales shiny shinythemes]; };
   Lmoments = derive2 { name="Lmoments"; version="1.3-1"; sha256="0pc63bj9a8hzr5m3yssrc4kin39fffwkl8rggs3sagzr12d4i7bw"; depends=[Rcpp RcppArmadillo]; };
   LncFinder = derive2 { name="LncFinder"; version="1.1.5"; sha256="0mb41fjph4svn2amdx6fb2j8pzgll17c0xxwnsan9vjipnmj59hi"; depends=[caret e1071 seqinr]; };
   LncPath = derive2 { name="LncPath"; version="1.1"; sha256="1cpsy681yq96867nr9g75xb0dilb016shqlhxpdn5xyiakrgjl4v"; depends=[igraph]; };
@@ -2641,13 +2656,13 @@ in with self; {
   Lock5Data = derive2 { name="Lock5Data"; version="3.0.0"; sha256="1407vkcdphy5pb4sgy2ms36vjffiwg2l2753gbszm9wv2m0wrnv4"; depends=[]; };
   Lock5withR = derive2 { name="Lock5withR"; version="1.2.2"; sha256="10x3i11pb4cig4pgfmw9984na5zjbg7d41y6crakiimf53ihx0c2"; depends=[]; };
   LogConcDEAD = derive2 { name="LogConcDEAD"; version="1.6-5"; sha256="0pwq1bdmn040bkwal7xsmjv2asvpyshipbglqb16h2z7yq0vwmv7"; depends=[MASS mclust mvtnorm]; };
-  LogRegEquiv = derive2 { name="LogRegEquiv"; version="0.1.2"; sha256="158glnha6vl8kc2g6rg8m8xi400pyqgrh2scmb3bsxbbbqd5z1p8"; depends=[]; };
+  LogRegEquiv = derive2 { name="LogRegEquiv"; version="0.1.5"; sha256="1j23w3fmd2swk2mzbmsq7hy878cm7cs1li65srjc9m79az9vgr3h"; depends=[]; };
   LogicReg = derive2 { name="LogicReg"; version="1.6.4"; sha256="0517rp55c1h8hwrz3dmnkdc6wzs6ialzdpw50icadcg9q8d0h9i0"; depends=[survival]; };
   LogisticDx = derive2 { name="LogisticDx"; version="0.3"; sha256="1hry32grqwlarp0cplx8szf4pf7ml1nxd11ahffmr72ihcv5ckga"; depends=[aod data_table pROC RColorBrewer rms speedglm statmod]; };
-  LogitNet = derive2 { name="LogitNet"; version="0.1-1"; sha256="08xi5rpbqkc1b3qj24blv3l0r68wcqbsbjcqxiypm75f3c2irc4i"; depends=[]; };
+  LogisticRCI = derive2 { name="LogisticRCI"; version="1.1"; sha256="158rl8jjmmhnja287i29rjiq309niwbvxmzx4f9lkl83nxn4mzf7"; depends=[]; };
   LogrankA = derive2 { name="LogrankA"; version="1.0"; sha256="005zkpzi8h03qvqlpkygrf9xv4q77klafkfxw47x04jvkhklwigb"; depends=[]; };
   LongCART = derive2 { name="LongCART"; version="3.1"; sha256="0f6kzlswxb1jb8hg4c3966ihwcqbkd5mkfqjjkzviq8idpyhsk4x"; depends=[Formula magic nlme rpart survival survminer]; };
-  LongDat = derive2 { name="LongDat"; version="1.0.1"; sha256="05xjazgr3ms0bl8lrca920bd835h9562zb30hkqlv7q5i09z4rha"; depends=[bestNormalize car dplyr effsize emmeans ggplot2 glmmTMB lme4 magrittr MASS patchwork reshape2 rlang rstatix stringr tibble tidyr]; };
+  LongDat = derive2 { name="LongDat"; version="1.0.3"; sha256="05mb6nszh7dl81n9rps1bvslsc4hf9cq1mfnigkkkfv6z4pg4rf1"; depends=[bestNormalize car dplyr effsize emmeans ggplot2 glmmTMB lme4 magrittr MASS patchwork reshape2 rlang rstatix stringr tibble tidyr]; };
   LongMemoryTS = derive2 { name="LongMemoryTS"; version="0.1.0"; sha256="0n378sad8i283vs7q63spdhwpwjly2d5zj15d4v2085j7sc7z8vi"; depends=[fracdiff longmemo mvtnorm partitions Rcpp RcppArmadillo]; };
   LongituRF = derive2 { name="LongituRF"; version="0.9"; sha256="0h70g0qhv0rgz40i58ykrcak1wibbvya7fql0v79xkd21217y1av"; depends=[latex2exp mvtnorm randomForest rpart]; };
   LoopAnalyst = derive2 { name="LoopAnalyst"; version="1.2-6"; sha256="1gy9v6qiwkwbwp4snif2imf6zn50ffjrig54ln57c5v5pk3phnvv"; depends=[nlme]; };
@@ -2672,14 +2687,13 @@ in with self; {
   MAKL = derive2 { name="MAKL"; version="1.0.0"; sha256="0x0b7jpx3hiipmy7jgh8dnz1rnbh512g81fv62049c8v6wg47pd7"; depends=[AUC grplasso]; };
   MALDIquant = derive2 { name="MALDIquant"; version="1.21"; sha256="1y1g3819ss06dry70kfhg2syddw71682qmzkcyppfsma6hhghw87"; depends=[]; };
   MALDIquantForeign = derive2 { name="MALDIquantForeign"; version="0.13"; sha256="0xxdvfg9h6vl2g2wlxfmrskn8576rd958mn5jblryyqg9xbanlhr"; depends=[base64enc digest MALDIquant readBrukerFlexData readMzXmlData XML]; };
-  MALDIrppa = derive2 { name="MALDIrppa"; version="1.0.5-1"; sha256="0wchd0g5bl4hd1y8a6ic13n35l9b68rlzx8sa745grj3bnb2a955"; depends=[lattice MALDIquant robustbase signal]; };
+  MALDIrppa = derive2 { name="MALDIrppa"; version="1.1.0"; sha256="0463wm7y4xj15f8601ng744gzsn3bj4iczv8bsjyx0asbsxha9fx"; depends=[lattice MALDIquant robustbase signal waveslim]; };
   MAMS = derive2 { name="MAMS"; version="2.0.0"; sha256="05pnrxziwsgnhy05fac8smxcm65zxi2dl7lar2jakiamd2hxv3c2"; depends=[future future_apply mvtnorm]; };
   MANCIE = derive2 { name="MANCIE"; version="1.4"; sha256="0940xl3z5bca6hcnj2bj341l79wajilxlxzmyz3dlgrz0b3bbdmm"; depends=[]; };
   MANOVA_RM = derive2 { name="MANOVA.RM"; version="0.5.3"; sha256="0gdyd7avdc7jh1hp03wlbqi5krijxrgargkivq97qyk83zf387dx"; depends=[data_table ellipse magic MASS Matrix multcomp plotrix plyr]; };
   MAP = derive2 { name="MAP"; version="0.1.3"; sha256="19d0m30jh50ibbdgvcvq1vsz5i1vf8qvl0d0nbqklvnndch61jhk"; depends=[flexmix Matrix]; };
   MAPA = derive2 { name="MAPA"; version="2.0.4"; sha256="02s223s58k2jk49m0xlz3q9m3nip3h4dl4v58j18z2vgi54dwnjr"; depends=[forecast RColorBrewer smooth]; };
   MAPITR = derive2 { name="MAPITR"; version="1.1.2"; sha256="0vmsdspja4qfs2z14p835g78zggk8h54v25cn268z1hg2p6zxish"; depends=[CompQuadForm doParallel Rcpp RcppArmadillo]; };
-  MAPLES = derive2 { name="MAPLES"; version="1.0"; sha256="0hzsh7z1k7qazpxjqbm9842zgdpl51irg7yfd119a7b2sd3a8li9"; depends=[mgcv]; };
   MARSANNhybrid = derive2 { name="MARSANNhybrid"; version="0.1.0"; sha256="1xs0gjdjl9c5i1i8ds9s3sq0764267h6gngkbwimfa8miq287idm"; depends=[earth neuralnet]; };
   MARSS = derive2 { name="MARSS"; version="3.11.4"; sha256="10mf1vs51yqqg6s2435j84xbaxvr6wdraha07mqlr2rmprgl5a0r"; depends=[KFAS mvtnorm nlme]; };
   MARSSVRhybrid = derive2 { name="MARSSVRhybrid"; version="0.1.0"; sha256="10b8d75q5hiqf8id1qsvjx379xyx4vphq5r1iwvykjaw4zxbyx65"; depends=[e1071 earth]; };
@@ -2692,7 +2706,6 @@ in with self; {
   MATTOOLS = derive2 { name="MATTOOLS"; version="1.1"; sha256="1nzrkm3a08rpsd9vplyf33rrkadlrd0ln70k95qxj98ndh2v97px"; depends=[]; };
   MAVE = derive2 { name="MAVE"; version="1.3.11"; sha256="01n204bxabbm8pcpayy2s0jvhg73r5cv0026lb3vbk0m40z02kcz"; depends=[mda Rcpp RcppArmadillo]; };
   MAVTgsa = derive2 { name="MAVTgsa"; version="1.3"; sha256="0rzal9nsi8y873cbf6hrdyzyxnpd4r1yr9fj66cn0s1c8g93ls0y"; depends=[corpcor foreach MASS multcomp randomForest]; };
-  MAc = derive2 { name="MAc"; version="1.1.1"; sha256="1dawqmziffaz8wgcqzwc0yifdq65abgn24vafkrwa9850048c26f"; depends=[]; };
   MAclinical = derive2 { name="MAclinical"; version="1.0-5"; sha256="1g0ka1kqww2xim8rp5rznkzn0a541zvf841s3lbphfh9k3y3ixs3"; depends=[e1071 party plsgenomics st]; };
   MAd = derive2 { name="MAd"; version="0.8-2.1"; sha256="096vdhfsp7bd3zvv6ydai6p230r16jx8zlqc4hlhnzma8rqypm35"; depends=[]; };
   MAnorm2 = derive2 { name="MAnorm2"; version="1.2.0"; sha256="0g2njf2jfra1yd8i6bxivpp4jhqxkwn1hlhfg7n3ggzixmnbgai6"; depends=[locfit scales statmod]; };
@@ -2701,10 +2714,10 @@ in with self; {
   MBC = derive2 { name="MBC"; version="0.10-5"; sha256="0iks5nhk4im7l1dxgwcwi4mlnh271zfq9mrlaklpk38zakzyf2n4"; depends=[energy FNN Matrix]; };
   MBCbook = derive2 { name="MBCbook"; version="0.1.1"; sha256="0jmvgyzrahnxfkwdn86k3ffk0zfbbd34ya4zmlnsmp2m9xds7lgn"; depends=[MASS mclust mvtnorm Rmixmod]; };
   MBCluster_Seq = derive2 { name="MBCluster.Seq"; version="1.0"; sha256="0xbi2r0g0gzsy05qrq1ljr5f5s3glwxj204vk2f1lgwdx3fd116m"; depends=[]; };
-  MBESS = derive2 { name="MBESS"; version="4.8.1"; sha256="09r9rkyprajrq30v671xsf1q5nmy2fijw19dd73rpnfmdg3nqiyf"; depends=[boot lavaan MASS mnormt nlme OpenMx sem semTools]; };
+  MBESS = derive2 { name="MBESS"; version="4.9.0"; sha256="0qmyvjx2zn5hlzdbz8c94g8l4707swhn7sq9mxkdqiydmflzv0b5"; depends=[boot lavaan MASS mnormt nlme OpenMx sem semTools]; };
   MBHdesign = derive2 { name="MBHdesign"; version="2.2.2"; sha256="1z5jg4gb9jkc7cjy0413zj3lszqb28zx39bfmk59lls9d016iaak"; depends=[class geometry mgcv mvtnorm randtoolbox raster]; };
   MBI = derive2 { name="MBI"; version="1.0"; sha256="1lb0sjwa6x360n9a9pagz6yhxh37gxq1fk0f5c3i2sd56ny9jpns"; depends=[]; };
-  MBNMAdose = derive2 { name="MBNMAdose"; version="0.3.0"; sha256="12ij19828nd1r0x1vp7clkwr0zfksk3f755xghzylz0ryjjb716d"; depends=[checkmate dplyr formatR igraph magrittr R2jags Rdpack reshape2 rgeos rjags scales utf8]; };
+  MBNMAdose = derive2 { name="MBNMAdose"; version="0.4.1"; sha256="1825vqdwzachig7fg3s8gq64m1gdh9gjccv5y9r0qh9x5015s0f1"; depends=[checkmate dplyr igraph magrittr R2jags Rdpack reshape2 rgeos rjags scales]; };
   MBNMAtime = derive2 { name="MBNMAtime"; version="0.2.1"; sha256="1qm8g9hljl3qsnh434dzg2y0iyq635ym1ygfzr0q8l6h76qr7p1j"; depends=[checkmate dplyr knitr magrittr R2jags Rdpack reshape2 rjags]; };
   MBSGS = derive2 { name="MBSGS"; version="1.1.0"; sha256="1h5vhmpgrqza12j7ivhwgd5wyb7kkb8mjbxl5w756vyid8g03flz"; depends=[MASS MCMCpack mgcv mnormt truncnorm]; };
   MBSP = derive2 { name="MBSP"; version="1.0"; sha256="0mds6jfqgmnm4saqqqqqfcg8zh4qsvd2503g3ij1sn70f0aakwaj"; depends=[coda GIGrvg MASS Matrix MCMCpack]; };
@@ -2723,10 +2736,10 @@ in with self; {
   MCMC4Extremes = derive2 { name="MCMC4Extremes"; version="1.1"; sha256="06p6xdbja7vrdq4vnhybpkmyf4rkaihcmy9sc81sb0h2wa21vcq0"; depends=[evir]; };
   MCMCglmm = derive2 { name="MCMCglmm"; version="2.33"; sha256="1z6l2lbirjrdvvkd6yp55p6gjlc0bcz79k2yl2i5zvgqk7kp4vdm"; depends=[ape coda corpcor cubature Matrix tensorA]; };
   MCMChybridGP = derive2 { name="MCMChybridGP"; version="5.4"; sha256="19nbch76g7jf53nrb1lyzr3zd0z6rpz2k86mq1r9aidwwxh81g7p"; depends=[MASS]; };
-  MCMCpack = derive2 { name="MCMCpack"; version="1.6-0"; sha256="16zjx8yz29ii75wfxj3p562l657bng8jnwzp2b54s7fiaws4kfdm"; depends=[coda lattice MASS mcmc quantreg]; };
+  MCMCpack = derive2 { name="MCMCpack"; version="1.6-1"; sha256="1skanp6czfk83s13dnjrb699m9z6a0r59q0f79fv0k560jc8vbrj"; depends=[coda lattice MASS mcmc quantreg]; };
   MCMCprecision = derive2 { name="MCMCprecision"; version="0.4.0"; sha256="0r0qchiv61sk3drrb0rhwsk55gci4w343hd2gsvclrlyb8r9qhaf"; depends=[combinat Matrix Rcpp RcppArmadillo RcppEigen RcppProgress]; };
   MCMCtreeR = derive2 { name="MCMCtreeR"; version="1.1"; sha256="00r6f62h7ryil7qxd25icvkqypjjssjsrz4i5sbqsnw5cdy5al8z"; depends=[ape coda sn]; };
-  MCMCvis = derive2 { name="MCMCvis"; version="0.15.3"; sha256="0519pm6khya2jxkqbyiv6h17m0ijczivq7sfn3i8jmgvz4r7zqmr"; depends=[coda overlapping rlang rstan]; };
+  MCMCvis = derive2 { name="MCMCvis"; version="0.15.5"; sha256="1sh8znwk2s6gx7q6h1ps5yid24ywj2fpng0c7nckrfkywb5h5j14"; depends=[coda colorspace overlapping rstan]; };
   MCPAN = derive2 { name="MCPAN"; version="1.1-21"; sha256="0q1m0xg8825q9zjwxcz2h2n0dyr21q5bk29qbqpdhirlwm6f1a51"; depends=[magic MCMCpack multcomp mvtnorm plyr]; };
   MCPMod = derive2 { name="MCPMod"; version="1.0-10.1"; sha256="0j15dpxy62vwbd6pcsvkbpi1nklh0yjzwf53kcmv4jhj0v6xmpp9"; depends=[lattice mvtnorm]; };
   MCPModGeneral = derive2 { name="MCPModGeneral"; version="0.1-1"; sha256="0izhbiivlb818ak49hl1f7li1chlyrxk5f80cmw4zkim3l6ddaxq"; depends=[DoseFinding MASS]; };
@@ -2754,6 +2767,7 @@ in with self; {
   MEGENA = derive2 { name="MEGENA"; version="1.3.7"; sha256="0cr10pmj1n831scz5kgaq3nkglr3imwgc62cxng2dvdxr9991g21"; depends=[BH cluster doParallel foreach fpc ggplot2 ggraph ggrepel igraph Matrix Rcpp reshape]; };
   MEMSS = derive2 { name="MEMSS"; version="0.9-3"; sha256="0fq85jrajfwavq2fvsw2x9hknc57wc253zw2vw970f04khfbragd"; depends=[lme4]; };
   MEPDF = derive2 { name="MEPDF"; version="3.0"; sha256="15hbp7g5dsdpvi239jm6jn11fn371ir6la31g0flqkilq6sr1sqd"; depends=[gtools mvtnorm plyr pracma]; };
+  MERO = derive2 { name="MERO"; version="0.1.1"; sha256="0kzqx6m0vyq5g3ngah58mryvqdcxvlk3iqp4v4m2dq172dm47ig0"; depends=[doParallel foreach ggpubr missForest progress]; };
   MESS = derive2 { name="MESS"; version="0.5.7"; sha256="0c3fs07szzr023pw92drd3a85vqp0ydfh30x235f0cssny1kxlj8"; depends=[geeM geepack ggformula ggplot2 glmnet kinship2 MASS Matrix mvtnorm Rcpp RcppArmadillo]; };
   MEclustnet = derive2 { name="MEclustnet"; version="1.2.2"; sha256="0rs58dafxngk2lkq14cy14ayjwgnz1gmi12jmi4z74sdj0b3h0gw"; depends=[e1071 ellipse latentnet MASS mvtnorm nnet vegan]; };
   MEtest = derive2 { name="MEtest"; version="1.1"; sha256="0dxm3fs0lqnas70a1ckikvjp2ib9rqsknwcs9n9jfsmm1fqhxdpf"; depends=[statmod]; };
@@ -2761,6 +2775,7 @@ in with self; {
   MFAg = derive2 { name="MFAg"; version="1.8"; sha256="1kkcx6290ffk8g3amakaa5z5hz07z9iiqp2jxvma4pk85w6qay83"; depends=[]; };
   MFDFA = derive2 { name="MFDFA"; version="1.1"; sha256="0nr78p6y4jpg1hrl0h7b7hyvwbr61paf85y3f2dx815x5hscmdhy"; depends=[numbers]; };
   MFHD = derive2 { name="MFHD"; version="0.0.1"; sha256="0gb8y297y1x03wy46530psmlawyv4z5dydilk36qcmadlk1wx02k"; depends=[deldir depth depthTools fda_usc matrixStats]; };
+  MFO = derive2 { name="MFO"; version="0.1.0"; sha256="0i8zkdwmngdq21f1rmn1fmgsr525xfzyjd7nxwy8p7fns6hsq31r"; depends=[dplyr ggplot2 magrittr minpack_lm openxlsx readxl stringr tibble tidyr]; };
   MFPCA = derive2 { name="MFPCA"; version="1.3-9"; sha256="1cajh9aiirngc8p68kfll17mf2a874pk55cjrmxzr1l8p3ipd7s5"; depends=[abind foreach funData irlba Matrix mgcv plyr]; };
   MFSIS = derive2 { name="MFSIS"; version="0.1.2"; sha256="0s4rswhc5aigp7f0yq91f131ghx2jjsmxikp9i2ycqg8bcza17nv"; depends=[Ball cli crayon doParallel dr foreach fs MASS reticulate survival]; };
   MFT = derive2 { name="MFT"; version="2.0"; sha256="0n1xws3dw0650037qyqgp600p8cf098qa5hkbncdfdbl0w34qamy"; depends=[]; };
@@ -2810,7 +2825,7 @@ in with self; {
   MLDAShiny = derive2 { name="MLDAShiny"; version="0.1.0"; sha256="14n8pffzw5y7lq3qx1xly4jwm05cyvs14gn838h6y9yssb16xnmr"; depends=[caret DiscriMiner dplyr e1071 klaR MASS rhandsontable rmarkdown shiny]; };
   MLDAShiny2 = derive2 { name="MLDAShiny2"; version="0.1.0"; sha256="1mx8js54mrrf16jriy467dysxpkcsza9fvdmpdbmxr5m3y564sc7"; depends=[caret DiscriMiner dplyr e1071 klaR MASS rhandsontable rmarkdown shiny]; };
   MLDS = derive2 { name="MLDS"; version="0.4.901"; sha256="0zswlng1vksnx1m6ycna2hbqmzzcfpqz1wgy519fr0j87bqxks69"; depends=[MASS]; };
-  MLDataR = derive2 { name="MLDataR"; version="0.1.2"; sha256="1b35rsd1scjkw0j7rbx5kn2p8h1g2i3bq84cj3sgf77cmc22cgb2"; depends=[caret ConfusionTableR dplyr parsnip ranger recipes rsample workflows]; };
+  MLDataR = derive2 { name="MLDataR"; version="0.1.3"; sha256="13jfq4i0dz9nwkzfkc6lx52cni23q4369lmca7vd0jfzffn4zzvv"; depends=[caret ConfusionTableR dplyr ggplot2 OddsPlotty parsnip ranger recipes rsample varhandle workflows]; };
   MLEcens = derive2 { name="MLEcens"; version="0.1-4"; sha256="0zlmrcjraypscgs2v0w4s4hm7qccsmaz4hjsgqpn0058vx622945"; depends=[]; };
   MLGL = derive2 { name="MLGL"; version="0.6.5"; sha256="1qrqw39hghdlbrs0dkv38awrgwdf8lj95rhb3hixcc6nfb2lkr8j"; depends=[FactoMineR fastcluster gglasso MASS Matrix parallelDist]; };
   MLGdata = derive2 { name="MLGdata"; version="0.1.0"; sha256="0ysvrnx8m903h99wr40zgg1c6d26m9vsh62zjxh8mvndh69ikzid"; depends=[]; };
@@ -2820,8 +2835,6 @@ in with self; {
   MLModelSelection = derive2 { name="MLModelSelection"; version="1.0"; sha256="1qfy2rfx2nvkwisl9wwllqsq2qhqzsdmrh90z5zn5qs07d0305wn"; depends=[MASS Rcpp RcppArmadillo RcppDist]; };
   MLMusingR = derive2 { name="MLMusingR"; version="0.1.0"; sha256="1yq5ifp12k1pd59s5m1306934f4f2l9vlhqlfg22vcr7l9pqkw9s"; depends=[lme4 Matrix nlme]; };
   MLPUGS = derive2 { name="MLPUGS"; version="0.2.0"; sha256="1yda37073g640g1qrkjrwa8hbyq6bjlcw3wpznx0bk5h0639bc0s"; depends=[]; };
-  MLRShiny = derive2 { name="MLRShiny"; version="0.1.0"; sha256="06zcyz8l4754sjbcql3jd3nq1d2lgj92p5h2bh708z52mww71isw"; depends=[corrgram dplyr forecast psych QuantPsyc shiny shinyAce]; };
-  MLRShiny2 = derive2 { name="MLRShiny2"; version="0.1.0"; sha256="1ygamp0ldz1i0w2xyi205rpd1gd5asw61l36z06j41ghdyiz1lww"; depends=[corrgram dplyr forecast psych QuantPsyc shiny shinyAce]; };
   MLVSBM = derive2 { name="MLVSBM"; version="0.2.2"; sha256="0cxjk89i1pjq829168ad30dw73x65ywsc4d6vj6q6wlg746a1izf"; depends=[ape blockmodels cluster magrittr R6]; };
   MLZ = derive2 { name="MLZ"; version="0.1.3"; sha256="0yj9241k3yk8qy6w2q26gwbj9b9qynv3s3jpyfxixvkc9kji3wc2"; depends=[dplyr ggplot2 gplots RcppEigen reshape2 TMB]; };
   MLeval = derive2 { name="MLeval"; version="0.3"; sha256="1g2w5lrr7199n4zyaalbp9xdgl858hdg1pqr3rpd7v5fmamawc69"; depends=[ggplot2]; };
@@ -2904,8 +2917,8 @@ in with self; {
   MSRDT = derive2 { name="MSRDT"; version="0.1.0"; sha256="1i35zsip6p177k9pnbmvkjdc1hpr6nclhbx2sfah95ls5v6xnzz8"; depends=[dplyr gtools reshape2]; };
   MSSQL = derive2 { name="MSSQL"; version="1.0.0"; sha256="15glgn2dr1yygxps0mx68435zqc2hi4hvgr4rvgrwyxdnlm5g35y"; depends=[RODBC]; };
   MST = derive2 { name="MST"; version="2.2"; sha256="0p833nyq9p0r0hy02f4sy6gv1wm9flj3dxkv73ihy8503r89bbzz"; depends=[Formula MASS partykit survival]; };
-  MSbox = derive2 { name="MSbox"; version="1.4.4"; sha256="00fh7qb8yj8b8yfipwvrly2340il3aygzm44sqbwq2684p8ivw36"; depends=[crayon ggfortify ggplot2 plotly reshape2 stringr xml2]; };
-  MSclassifR = derive2 { name="MSclassifR"; version="0.1.0"; sha256="1b5giaqspnw6blpmmnvx9gzqa7hk006qhrmam6xz6716m2ay6ns0"; depends=[caret dplyr e1071 fuzzyjoin ggplot2 glmnet MALDIquant MALDIquantForeign MALDIrppa metap mixOmics nnet reshape2 VSURF xgboost]; };
+  MSbox = derive2 { name="MSbox"; version="1.4.6"; sha256="1wlfbkjsw2bzznh6fwhfllgnj80zpfab82x43a83k3mjd41rf9f9"; depends=[crayon ggfortify ggplot2 plotly reshape2 stringr xml2]; };
+  MSclassifR = derive2 { name="MSclassifR"; version="0.2.0"; sha256="1450i3f3f02sp6bnvvwgj4r64bfkjcb5dbcyy5src3lmly6d6jdi"; depends=[caret dplyr e1071 fuzzyjoin ggplot2 glmnet MALDIquant MALDIquantForeign MALDIrppa metap mixOmics nnet reshape2 VSURF xgboost]; };
   MScombine = derive2 { name="MScombine"; version="1.4"; sha256="0s3gbf3s5mf00d5mkbqhd9wwnyps7qb4r3zbal8j8nsaspql9nd3"; depends=[plyr]; };
   MSiP = derive2 { name="MSiP"; version="1.3.7"; sha256="1n8yl5icd3qkpmx2knxsp4g6jvkbg6hl82jxg9apxkx4nmsvkawz"; depends=[caret dplyr e1071 magrittr mice plyr pROC PRROC ranger tibble tidyr]; };
   MSwM = derive2 { name="MSwM"; version="1.5"; sha256="0ny5apvww1537qhiwb3f8x173rh7mypvgpw0i46dkvn897i0dq36"; depends=[nlme]; };
@@ -2915,7 +2928,7 @@ in with self; {
   MTE = derive2 { name="MTE"; version="1.0.1"; sha256="0ybzf8fsysxld9d17jh1wggglaa58n5szynnrhif12cifgcrl2dx"; depends=[glmnet quantreg]; };
   MTLR = derive2 { name="MTLR"; version="0.2.1"; sha256="070121qn7vmxmxgvzv7ymhk19j9kxks4xa7qpd8vkc2rp3ara4cp"; depends=[Rcpp RcppArmadillo survival]; };
   MTPS = derive2 { name="MTPS"; version="1.0.1"; sha256="1jdlw943ywmrp64w1qrjqymqjh2jahnq0i5px8af1l3msznj20x4"; depends=[class e1071 glmnet MASS rpart]; };
-  MTS = derive2 { name="MTS"; version="1.0.3"; sha256="1v1pid42a7jw4qrvp2y3pqzfn6vcldfkgvny5c6z8bsrjlc9ah8n"; depends=[fBasics fGarch mvtnorm Rcpp]; };
+  MTS = derive2 { name="MTS"; version="1.1.1"; sha256="0mb7h4h94a2x104ybkg9836k3szdimlcdccwxjc5naarxhdifv60"; depends=[fBasics fGarch mvtnorm Rcpp RcppEigen]; };
   MTSYS = derive2 { name="MTSYS"; version="1.2.0"; sha256="04dkan3hxl3difflskp7d1lw1bvxhg4s28ssy2v4m7z7wbpj3v1m"; depends=[]; };
   MUACz = derive2 { name="MUACz"; version="2.1.0"; sha256="1d771vb2aimr87kyqj7zkmwarmxcxzbh7mvr396pf2zr3h8wi30c"; depends=[dplyr epiDisplay ggplot2]; };
   MUS = derive2 { name="MUS"; version="0.1.6"; sha256="0xid624rz0mvd03iy7ydvmx7gkscvsg4kdbaf2nji54ahai3pmn3"; depends=[]; };
@@ -2937,7 +2950,7 @@ in with self; {
   MXM = derive2 { name="MXM"; version="1.5.2"; sha256="0h95v74sk0c10i1rvbbl6f98spv86jfz7xji3d3wd1v4zacq3hhz"; depends=[bigmemory coxme doParallel dplyr energy foreach geepack Hmisc knitr lme4 MASS nnet ordinal quantreg relations Rfast Rfast2 survival visNetwork]; };
   MaOEA = derive2 { name="MaOEA"; version="0.6.2"; sha256="0s8jvp7821mb6xff8xwnh78mhz4qfrbk4g7sp4dfnm2ii7ah9c6b"; depends=[e1071 gtools lhs MASS nnet nsga2R pracma randtoolbox reticulate stringr]; };
   MaXact = derive2 { name="MaXact"; version="0.2.1"; sha256="1n7af7kg54jbr09qk2a8gb9cjh25cnxzj2snscpn8sr8cmcrij0i"; depends=[mnormt]; };
-  MachineShop = derive2 { name="MachineShop"; version="3.2.0"; sha256="1m3p2m19dl2z9rlmd9si67xzc592y9gym9mn919cdgsy3zrif4ld"; depends=[abind cli dials foreach ggplot2 kernlab magrittr Matrix nnet party polspline progress Rcpp recipes rlang rsample Rsolnp survival tibble]; };
+  MachineShop = derive2 { name="MachineShop"; version="3.3.0"; sha256="1xrj6c0bryd2dldh2npaqznzvy4588jx4lplhsgffn07j4z0wz9g"; depends=[abind cli dials foreach ggplot2 kernlab magrittr Matrix nnet party polspline progress recipes rlang rsample Rsolnp survival tibble]; };
   Maeswrap = derive2 { name="Maeswrap"; version="1.7"; sha256="0cnnr5zq7ax1j7dx7ira7iccqppc6qpdjghjarvdb2zj0lf69yyb"; depends=[geometry lattice rgl stringr]; };
   MajKMeans = derive2 { name="MajKMeans"; version="0.1.0"; sha256="1zphrxyx3jd6rnh1y1qnc6bip34kfqk1a5ms4ps39gfngznh482m"; depends=[MASS]; };
   MakefileR = derive2 { name="MakefileR"; version="1.0"; sha256="1pfjic2lsar8ghbb6byr4rqrs30qrgfih092z4rxdpsiwkk3y7l1"; depends=[magrittr]; };
@@ -2962,7 +2975,7 @@ in with self; {
   MatManlyMix = derive2 { name="MatManlyMix"; version="1.1.1"; sha256="1d2vd5b9lirdybjclxh0nn4mghq64qjj4l8vnj95cni5pfa18a2c"; depends=[]; };
   MatSkew = derive2 { name="MatSkew"; version="0.1.5"; sha256="019v2b1r0bvw84xs50smjb3jdz7gd2adz5d84xd8zq43lnml96d1"; depends=[]; };
   MatTransMix = derive2 { name="MatTransMix"; version="0.1.15"; sha256="1s2wmhiqn024x9l217xak3wp3dbd3mfrih70xc5mc1b4555f2fbm"; depends=[mvtnorm]; };
-  MatchIt = derive2 { name="MatchIt"; version="4.3.3"; sha256="1gqcfzicvwd8j9snky0alsx6rmwjjchg1qz41lfqkdpf5cx90zkx"; depends=[backports Rcpp RcppProgress]; };
+  MatchIt = derive2 { name="MatchIt"; version="4.3.4"; sha256="052dv7zk156qlrg5j4kjzr3mryj1g7cmbc5zal7vky6ss87ahid6"; depends=[backports Rcpp RcppProgress]; };
   MatchLinReg = derive2 { name="MatchLinReg"; version="0.7.3"; sha256="1si0zn6vlgyj08841hfjx8an96a8ipnawl4zbalabmpy7r5bfwx8"; depends=[Hmisc Matching]; };
   MatchThem = derive2 { name="MatchThem"; version="1.0.1"; sha256="1g3vzbxrbmgmxlnn6i2i1wdk949i547ywgxcw05na71kc1nvwvfd"; depends=[MatchIt mice rlang survey WeightIt]; };
   Matching = derive2 { name="Matching"; version="4.9-11"; sha256="123np8gwjrbmkl65kj7qfa52i9msnkjyhvj4pwwqh5mkca2clw8w"; depends=[MASS]; };
@@ -2980,21 +2993,21 @@ in with self; {
   MaxentVariableSelection = derive2 { name="MaxentVariableSelection"; version="1.0-3"; sha256="1cmxfdkm5k85b4ivlfy5521hkfj0gq2pb1qlxxklh0fprw87kp9c"; depends=[ggplot2 raster]; };
   MaximinInfer = derive2 { name="MaximinInfer"; version="1.0.0"; sha256="1m6xb4blpahgm7b4h96rdg2qakgn893sfjk45flxnvn8gipbwlrh"; depends=[CVXR glmnet intervals MASS SIHR]; };
   MazamaCoreUtils = derive2 { name="MazamaCoreUtils"; version="0.4.10"; sha256="0085miwwda387k33hf6l8p3f0pp8714nq0whzmf89l3yn932ai33"; depends=[devtools digest dplyr futile_logger lubridate magrittr purrr rlang rvest stringr tibble xml2]; };
-  MazamaLocationUtils = derive2 { name="MazamaLocationUtils"; version="0.3.1"; sha256="1aiyaz2svh93dp076hvib25agiwq7vydmj6gqqjxbknhx63kj769"; depends=[dplyr geodist httr jsonlite leaflet lubridate magrittr MazamaCoreUtils MazamaSpatialUtils readr rlang stringr tidygeocoder]; };
+  MazamaLocationUtils = derive2 { name="MazamaLocationUtils"; version="0.3.3"; sha256="1ysdqrsifxf547i9gpbssd801sxh11cyvahkziz0zqwpcp301424"; depends=[dplyr geodist httr jsonlite leaflet lubridate magrittr MazamaCoreUtils MazamaSpatialUtils readr rlang stringr tidygeocoder]; };
   MazamaRollUtils = derive2 { name="MazamaRollUtils"; version="0.1.3"; sha256="1433xy64n3wpxg9d0jlwdfp8hlvmq0ndg3fv6kfxq3pasm600jgc"; depends=[Rcpp]; };
   MazamaSpatialPlots = derive2 { name="MazamaSpatialPlots"; version="0.1.2"; sha256="1gkxq6lnvdv24nvc34fmxz4qilzljxcls1lq29a5ag67dffz7kcj"; depends=[dplyr magrittr MazamaCoreUtils MazamaSpatialUtils rlang sf sp tmap]; };
   MazamaSpatialUtils = derive2 { name="MazamaSpatialUtils"; version="0.7.6"; sha256="07qr6cwa29brsp567vjhfv8pkqijxhhz98bxvagrpjj5gbx1179s"; depends=[cleangeo countrycode dplyr magrittr MazamaCoreUtils rgdal rgeos rlang rmapshaper sp stringr]; };
+  MazamaTimeSeries = derive2 { name="MazamaTimeSeries"; version="0.2.2"; sha256="1snx71jcv9q1fw7njfccd0lvgi3mim6sahzcnc6136pblnjs29kg"; depends=[dplyr geodist lubridate magrittr MazamaCoreUtils readr rlang stringr]; };
   Mcomp = derive2 { name="Mcomp"; version="2.8"; sha256="1wz5fr3dhxn4s0qvxm2mzq9dbz3x0vgh6pixjrgk9d4i9w2p7s60"; depends=[forecast ggplot2]; };
   MeTo = derive2 { name="MeTo"; version="0.1.0"; sha256="14hdyh3p3q8yb9w2li2y9pc356jnymsn6n2750zdsrh52b751lpm"; depends=[lubridate]; };
   MedDietCalc = derive2 { name="MedDietCalc"; version="0.1.1"; sha256="11q1yn6l697qa33wqik9y9lji39r6pph109yxkkprg9p80c187xy"; depends=[]; };
   MedLEA = derive2 { name="MedLEA"; version="1.0.1"; sha256="0lw3m0wdsiypkyvpiacj4k9534x9clna38pwr4mrdy09hc435q3j"; depends=[patchwork tidyverse tm wordcloud2]; };
-  MedOr = derive2 { name="MedOr"; version="0.1"; sha256="1rwc14s16lnzgb78ac2017hv9pss7zw7nw3y7vrvq1qx4fgiw6f8"; depends=[]; };
   MedSurvey = derive2 { name="MedSurvey"; version="1.1.1.3.0"; sha256="11lkli2arl5w2aizzd93fb6xsy30000nf3qc08qirrm07rwypaly"; depends=[lavaan Matrix survey]; };
   MediaK = derive2 { name="MediaK"; version="1.0"; sha256="19cmxl2wksw9kvjsfn1m4nkr5gpcx6bk0sqrabj1n0dla1l32v2a"; depends=[Rcpp RcppEigen]; };
   Mediana = derive2 { name="Mediana"; version="1.0.8"; sha256="0j1ikc2iaxl70134v0gijj2i2g0xgjafvn8rc108r9fhm8rpw564"; depends=[doParallel doRNG foreach MASS mvtnorm survival]; };
   MedianaDesigner = derive2 { name="MedianaDesigner"; version="0.7"; sha256="177wzlq8z0b5qw2vpzy224i11a9x9179ni81bmxi8cvza4rx211h"; depends=[devEMF doParallel doRNG flextable foreach mvtnorm officer Rcpp RcppEigen RcppNumerical shiny shinydashboard shinyMatrix]; };
   Mega2R = derive2 { name="Mega2R"; version="1.0.9"; sha256="1wpn03csv88958ppg4idwidcdvr1gf3bps4c0sf5z3ri78awb28f"; depends=[AnnotationDbi DBI famSKATRC gdsfmt GenomeInfoDb kinship2 pedgene Rcpp RSQLite SKAT]; };
-  MendelianRandomization = derive2 { name="MendelianRandomization"; version="0.5.1"; sha256="1qi5v4m19025zcigl6wxmj3vi6zjlzgsm6cj75kywq2qabrzk2fw"; depends=[ggplot2 glmnet iterpc knitr Matrix plotly quantreg rjson rmarkdown robustbase]; };
+  MendelianRandomization = derive2 { name="MendelianRandomization"; version="0.6.0"; sha256="0qf2kb04ia5rdasvs34ziwyan5k327gi45frjkhmi5qsz64z51bg"; depends=[ggplot2 glmnet iterpc knitr Matrix plotly quantreg rjson rmarkdown robustbase]; };
   Mercator = derive2 { name="Mercator"; version="1.1.1"; sha256="0jg5dm65smq67k35p8acqd5kdsv7py8plaamagbsc84617r0iaik"; depends=[ClassDiscovery cluster dendextend flexmix igraph KernSmooth kohonen Polychrome Rtsne Thresher umap]; };
   MetABEL = derive2 { name="MetABEL"; version="0.2-0"; sha256="0rqjv85mgswrbbp8b8ip6cdmz0cvfy9lm5mcr8a7h38rzgx3g3i3"; depends=[]; };
   MetAlyzer = derive2 { name="MetAlyzer"; version="0.1.0"; sha256="1mqc2037q71n1k7ncym52vn0cc5ndsxq4r87k492lp1b3i7h1wi3"; depends=[agricolae dplyr openxlsx rlang tibble tidyr]; };
@@ -3024,14 +3037,13 @@ in with self; {
   MetabolomicsBasics = derive2 { name="MetabolomicsBasics"; version="1.2"; sha256="0gd93l9rm00x9g6ffppywpbccmhxgl4s4z4ba7al8lpjval9srzw"; depends=[C50 caret e1071 mixOmics pcaMethods plyr rlang ropls rpart]; };
   MetaheuristicFPA = derive2 { name="MetaheuristicFPA"; version="1.0"; sha256="096k866mgrdgj55rzvdj080z80hzlj0667mydpz7gjaqdfriw8jg"; depends=[Rcpp RcppArmadillo]; };
   Metatron = derive2 { name="Metatron"; version="0.1-1"; sha256="0apz2k3za19px1bcg4ls0axaljrpxnqhs86b6s862c370sspc1x8"; depends=[lme4 Matrix mpt]; };
-  Meth27QC = derive2 { name="Meth27QC"; version="1.1"; sha256="0ad30svs2kjzmmyvcm0jmv64iyq7slp1x1xl35h2rv1b6zbd4658"; depends=[gplots]; };
   MethComp = derive2 { name="MethComp"; version="1.30.0"; sha256="1vmwb4zw4gm2x0j2nzm2vjfj7x19ws8njr6dcglzjpbbha7nxjp6"; depends=[coda nlme rjags]; };
   MethodCompare = derive2 { name="MethodCompare"; version="0.1.2"; sha256="1nxr2fgmfixjkdparavi156qqqchjwaxpjk9i2xgc1yhp1p01pll"; depends=[nlme]; };
   Methplot = derive2 { name="Methplot"; version="1.0"; sha256="0aaqss9zfn55qi45jffxkksnkw510npjnkygafx49vl77bkagqh5"; depends=[ggplot2 reshape]; };
   MethylCapSig = derive2 { name="MethylCapSig"; version="1.0.1"; sha256="16ch9aldr6a9jn42h387n7qvnzs0yx28f2yj6xq0kp476q7rf4ql"; depends=[geepack]; };
   Metrics = derive2 { name="Metrics"; version="0.1.4"; sha256="0fh8qbjlwzagh272lgwr4bxcqcjb1qpz53mgs8rzlvncax6nk5bk"; depends=[]; };
   MetricsWeighted = derive2 { name="MetricsWeighted"; version="0.5.4"; sha256="1hv2bgd64km303l09kva0pa9wx95f82qa9c4zl8nrmfhi2dvckqh"; depends=[]; };
-  MfUSampler = derive2 { name="MfUSampler"; version="1.0.4"; sha256="0i5siq1jacxbfvakb97qnj3h7pk471rrx8ckwm0d8nl3j586s36y"; depends=[ars coda HI]; };
+  MfUSampler = derive2 { name="MfUSampler"; version="1.0.6"; sha256="0lw60dnlkcs59wf5yzqj3yq8k529s5mrjj33nyvzqgqqmln9v1x8"; depends=[ars coda HI]; };
   MiDA = derive2 { name="MiDA"; version="0.1.2"; sha256="144gxsxqljzskxsw5k0y69ix0pxlfvyyznxkjpf2ng4l47pg11z5"; depends=[caret gbm genefilter limma preprocessCore pROC SQN]; };
   MiRKAT = derive2 { name="MiRKAT"; version="1.2.1"; sha256="1ypxs6p8jzd2y5rxbfrr2z1xib6im9i58wvcz4cqcgpw298w7ard"; depends=[CompQuadForm GUniFrac lme4 MASS Matrix mixtools PearsonDS permute quantreg survival]; };
   MiRNAQCD = derive2 { name="MiRNAQCD"; version="1.1.2"; sha256="1alpa7xsk669rsh0s7kjdnk1ymlfm81rw011pk29fi7p2jc505iv"; depends=[ggplot2 pROC]; };
@@ -3041,7 +3053,7 @@ in with self; {
   MicSim = derive2 { name="MicSim"; version="1.1.0"; sha256="0nkprbb9lgnfzl1bj0k4rkd7v8g35cvhl9bqa91q2lc2rimzfl20"; depends=[chron rlecuyer snowfall]; };
   MicroDatosEs = derive2 { name="MicroDatosEs"; version="0.8.2"; sha256="0k0hmi3ciipizmgjw1i5rrsg34yx21s1msn40vc4qc9s1n4wd8dl"; depends=[readr]; };
   MicroMacroMultilevel = derive2 { name="MicroMacroMultilevel"; version="0.4.0"; sha256="1q5cyqr4hdl1wp2isk6p4p084i83kg6hd406wdp1nj9lv5i0xvgw"; depends=[]; };
-  MicroMoB = derive2 { name="MicroMoB"; version="0.0.9"; sha256="1a4abp2mb13dknqb7j0p0ch6insh3q15255zgf84ws5a70wn5rwf"; depends=[abind extraDistr]; };
+  MicroMoB = derive2 { name="MicroMoB"; version="0.0.11"; sha256="1a3fknakn98k73mkfk81fypznhhr2npd9w34s57yaqj5z3c4i5xj"; depends=[abind extraDistr httpuv jsonlite plumber]; };
   MicroNiche = derive2 { name="MicroNiche"; version="1.0.0"; sha256="166ci4crkwnnh05rhs5hyrljgm4cdf7gp0ff8kjxjmd60byw80mz"; depends=[ggplot2 reshape2]; };
   MicroSEC = derive2 { name="MicroSEC"; version="1.1.3"; sha256="1imdxm15f792xw5kc9lhry5jsw739j6y3f2fs64abj22hqxfwypi"; depends=[BiocGenerics Biostrings data_table dplyr GenomeInfoDb GenomicAlignments gtools magrittr openxlsx R_utils Rsamtools stringr tidyr]; };
   MicrobiomeStat = derive2 { name="MicrobiomeStat"; version="1.1"; sha256="1j5sar85a1gksc83pc4ypxwb0c7whxglx069zarphrgqfazcr1m4"; depends=[foreach ggplot2 ggrepel lmerTest MASS Matrix matrixStats modeest phyloseq statmod]; };
@@ -3052,6 +3064,7 @@ in with self; {
   Miney = derive2 { name="Miney"; version="0.1"; sha256="0sgln0653rgglinr8rns5s2az0lgyp9slmynyhhhs265grkhrfj0"; depends=[]; };
   Minirand = derive2 { name="Minirand"; version="0.1.3"; sha256="19lib0qh3xfzvpgsskl3yypmjygss0w7pimz0136av0px5b4jran"; depends=[]; };
   MisRepARMA = derive2 { name="MisRepARMA"; version="0.0.2"; sha256="0bay8grq49yin9yy9h9ynb8flsbrb10h4lp7sdzp9ih5b9w21y7z"; depends=[boot mixtools tseries]; };
+  MitoHEAR = derive2 { name="MitoHEAR"; version="0.1.0"; sha256="1lb36w374wjp6f9ydkas21rwc2shlav1xq2rfzig1k034fkva8bj"; depends=[Biostrings circlize ComplexHeatmap dynamicTreeCut GenomicRanges ggplot2 gridExtra IRanges magrittr mcclust rdist reshape2 rlist Rsamtools]; };
   MittagLeffleR = derive2 { name="MittagLeffleR"; version="0.4.1"; sha256="1qlz418im27v7q3xk09a2w3zdx7ky5imcyi3kpg1s3bz5zx57p2f"; depends=[stabledist]; };
   MixAll = derive2 { name="MixAll"; version="1.5.1"; sha256="1jsh29ygy1n7lbz93ks725li9hnvfa0kp1qik13m72nmgw7g7q5a"; depends=[Rcpp rtkore]; };
   MixGHD = derive2 { name="MixGHD"; version="2.3.6"; sha256="0vx32ay7r8d22j53fsi6ff8l2zg97524dy7ir59ldafjfn15nc7k"; depends=[Bessel cluster e1071 ghyp MASS mixture mvtnorm numDeriv]; };
@@ -3062,8 +3075,8 @@ in with self; {
   MixSAL = derive2 { name="MixSAL"; version="1.0"; sha256="15dymyzfs3bwskaf6xndj291g6nhw7k1q93y1cba55a6fdjh5qz9"; depends=[MASS]; };
   MixSIAR = derive2 { name="MixSIAR"; version="3.1.12"; sha256="07wiv7x2c9mhqk37zndxvdb76m9shizc48qz2bp2f4g5z9hciid7"; depends=[bayesplot coda ggmcmc ggplot2 lattice loo MASS MCMCpack R2jags RColorBrewer reshape reshape2 splancs]; };
   MixSim = derive2 { name="MixSim"; version="1.1-5"; sha256="16l27y8wgy44zpavl3as0qdm1csjrmh2iy7idd2j6l8cba8z2l0i"; depends=[MASS]; };
-  MixTwice = derive2 { name="MixTwice"; version="1.1"; sha256="1vzy31aaxyfr28xsk9358laqg429lnrkxdmm63maz15wcbxha9zq"; depends=[alabama ashr fdrtool]; };
-  MixedIndTests = derive2 { name="MixedIndTests"; version="0.1.5"; sha256="1vlkpm1qx3mh3c08d0hwyzdap8s8kpdiiik49yphgmqgb8xg7i9n"; depends=[doParallel foreach ggplot2 survey]; };
+  MixTwice = derive2 { name="MixTwice"; version="2.0"; sha256="11j591z1pnql84sfczvry7mg4hs0jghgp170y5j5wwhs7l5kc7r7"; depends=[alabama ashr fdrtool Iso]; };
+  MixedIndTests = derive2 { name="MixedIndTests"; version="0.8.0"; sha256="0hafcz05042nhl8qwrjhr04k6xwz4pkd90ca7vcyijcay2nvx20z"; depends=[copula doParallel foreach ggplot2 survey]; };
   MixedPoisson = derive2 { name="MixedPoisson"; version="2.0"; sha256="0g5mpzj0wda6g46q3cg5mm3x4dvpz9gdclzn2m17l62lzny2i10p"; depends=[gaussquad MASS Rmpfr]; };
   MixedPsy = derive2 { name="MixedPsy"; version="1.1.0"; sha256="1iz3cl19xlznzbqxvichbjhyhams4v9611p9094r6q5fpmf71p88"; depends=[beepr boot brglm ggplot2 lme4 Matrix mnormt]; };
   MixedTS = derive2 { name="MixedTS"; version="1.0.4"; sha256="0gwcg115idbcm5llgzqsygvqgshq8dywawxkaddsmw4sbbhj4555"; depends=[MASS]; };
@@ -3106,24 +3119,24 @@ in with self; {
   MortalityLaws = derive2 { name="MortalityLaws"; version="1.9.3"; sha256="12sfc4lhp01caknpw25gmchh8gv2wjlgpq0lby7iayl9lnsg1x92"; depends=[minpack_lm pbapply RCurl tidyr]; };
   MortalityTables = derive2 { name="MortalityTables"; version="2.0.3"; sha256="0ldj8gq5xpbxkjcvdysrcq7a0xv7caz1rc8v6bpn5hkr866lqnmw"; depends=[ggplot2 pracma scales]; };
   MplusAutomation = derive2 { name="MplusAutomation"; version="1.0.0"; sha256="0hkz76gmmz1cpsjmz7jscwvdc8aar1g9468b5cr21zyl5slna0cg"; depends=[boot checkmate coda data_table digest fastDummies ggplot2 gsubfn lattice pander plyr rlang texreg xtable]; };
-  MplusTrees = derive2 { name="MplusTrees"; version="0.1.1"; sha256="1s119p1fgr27rkh671zpzbfnd368m0s1607r8xwgjm0y5ncxwkv7"; depends=[MplusAutomation nlme rpart rpart_plot]; };
+  MplusTrees = derive2 { name="MplusTrees"; version="0.2.1"; sha256="0bc8663h746wxrb4x1b65k013byfpz80l9mz0090jwa3q710g506"; depends=[MplusAutomation nlme rpart rpart_plot]; };
   Mqrcm = derive2 { name="Mqrcm"; version="1.2"; sha256="1alfv76b90frimihjcq8whzqkwvhnnw2fd92nrfpnfj5dw0b56f5"; depends=[Hmisc pch]; };
   MrSGUIDE = derive2 { name="MrSGUIDE"; version="0.1.2"; sha256="1hd0lvvy12r6kxa64vwnjavyv2f7a9jqgjxgmlw86wwh5g09hvfd"; depends=[BH magrittr Rcpp RcppArmadillo yaml]; };
   MsdeParEst = derive2 { name="MsdeParEst"; version="1.7"; sha256="1zhi1jr30sl7jpsw37lc3akfzixlhm9k2hjkha1pjy5fmd5lddlx"; depends=[MASS moments mvtnorm sde]; };
   MtreeRing = derive2 { name="MtreeRing"; version="1.4.5"; sha256="1i6ljz950n9fpgci9b5777dg3b88ihhz8jvyw621hg218imswhxz"; depends=[bmp dplR dplyr imager jpeg magick magrittr measuRing png shiny shinydashboard shinyWidgets spatstat_geom tiff]; };
   MuChPoint = derive2 { name="MuChPoint"; version="0.6.1"; sha256="15bqsc7bsjg55qxjwxh58bxbwz61a6wv4xxph994g4020b98l01x"; depends=[capushe Matrix Rcpp shiny]; };
   MuFiCokriging = derive2 { name="MuFiCokriging"; version="1.2"; sha256="09p8wdmlsf21ibqyjigwdipcin3ij0naxcd035hqgfj76v20wiyv"; depends=[DiceKriging]; };
-  MuMIn = derive2 { name="MuMIn"; version="1.43.17"; sha256="1ac78wg94j37ikwb8r1lxk6jlj3m804q94630i5vcm663p99cqdc"; depends=[Matrix nlme]; };
+  MuMIn = derive2 { name="MuMIn"; version="1.46.0"; sha256="0290dn4vw082rp4ps324bdpbifzmjs4jqca9c33yky7004qwklik"; depends=[Matrix nlme]; };
   MuViCP = derive2 { name="MuViCP"; version="1.3.2"; sha256="1wkiwdz4bblxf1zr57khljqkga9ks9aj1lnidvmhib94q6b8fnf4"; depends=[gtools MASS sm]; };
   MullerPlot = derive2 { name="MullerPlot"; version="0.1.2"; sha256="0am5brdmbh2mw74fbw9nha6h4qlhj8psg3142mql1ad99bd0zg4w"; depends=[RColorBrewer]; };
   MultAlloc = derive2 { name="MultAlloc"; version="1.2"; sha256="0c3sqfaa08s8mk4yz77kh6q6v9ic5xp52g9prfw1k2kv4nw1k2qd"; depends=[Rglpk]; };
   MultBiplotR = derive2 { name="MultBiplotR"; version="1.3.30"; sha256="0cnn8m4yd2w0izbsvrlqgxif41554nq3hj7m169lxwxrb0csybcf"; depends=[car dae deldir dunn_test geometry GPArotation gplots Hmisc lattice MASS mirt mvtnorm optimr polycor rgl scales xtable]; };
-  MultEq = derive2 { name="MultEq"; version="2.3"; sha256="0fshv7i97q8j7vzkxrv6f20kpqr1kp9v6pbw50g86h37l0jghj7r"; depends=[]; };
+  MultEq = derive2 { name="MultEq"; version="2.4"; sha256="0x0mfmrfcjdv7v5nlakmjh2ilmgn15xgzc4qgm6djkif6565v46i"; depends=[]; };
   MultIS = derive2 { name="MultIS"; version="0.6.2"; sha256="02ca1r8qfsl1b8rfawdn4xrlwhg5yab260rrsx8ckyv3v75knk8f"; depends=[cluster clv clValid dplyr foreach ggplot2 igraph ltm plyr poweRlaw RColorBrewer reshape2 rlang rmutil]; };
   MultNonParam = derive2 { name="MultNonParam"; version="1.3.6"; sha256="034a6yx2z93llkg7m3f20ibajwc2m23i13jqsk3fpgzx6f1dnbfk"; depends=[ICSNP]; };
   MultOrdRS = derive2 { name="MultOrdRS"; version="0.1-2"; sha256="0bra4z37njkcgah3a1k6mxcnmxq85188jywhgx3fdb1wnv5ic549"; depends=[Rcpp RcppArmadillo statmod]; };
   MultSurvTests = derive2 { name="MultSurvTests"; version="0.2"; sha256="04crh4hbfhl8cr0faawv71lyabyilhxpg6i8sr9ki80982mbzcnd"; depends=[Rcpp RcppArmadillo Rdpack]; };
-  MultiATSM = derive2 { name="MultiATSM"; version="0.0.1"; sha256="0p35is4kgpwxhmnmjsmphgy33dbj4f4jmysjmi75dbxbns129lig"; depends=[ggplot2 hablar pracma wrapr zoo]; };
+  MultiATSM = derive2 { name="MultiATSM"; version="0.1.1"; sha256="0c9vjlpyn0gm46mwhcvni3vw9k5djbw3aiws1pz1aih93pdsyvrx"; depends=[ggplot2 hablar pracma wrapr zoo]; };
   MultiBD = derive2 { name="MultiBD"; version="0.2.0"; sha256="1qjfr8hx8sr5m8370yzi09r8jnh3i6907wzj3v4h83vmjh81db71"; depends=[BH Rcpp RcppParallel]; };
   MultiCNVDetect = derive2 { name="MultiCNVDetect"; version="0.1-1"; sha256="0mfisblw3skm4y8phfg4wa0rdchl01wccarsq79hv63y78pfhh13"; depends=[]; };
   MultiFit = derive2 { name="MultiFit"; version="1.1.1"; sha256="086bnqp61mfanrhi7dqaq5j2ddg3rfiyms0f5wj34svcjal9wjvc"; depends=[data_table Rcpp RcppArmadillo]; };
@@ -3154,6 +3167,8 @@ in with self; {
   MulvariateRandomForestVarImp = derive2 { name="MulvariateRandomForestVarImp"; version="0.0.2"; sha256="0gbr44rwwb4nq2s4ix1ckfdjahsfx9sjfbww5wjcm1v68w6bk5ca"; depends=[MASS MultivariateRandomForest]; };
   MvBinary = derive2 { name="MvBinary"; version="1.1"; sha256="1lrrxvphxv4gmlazx67q4bck9373nqylqgkwcjzwb52291a3zyiv"; depends=[mgcv]; };
   My_stepwise = derive2 { name="My.stepwise"; version="0.1.0"; sha256="10wka6kzk8krwdsyjfnn78dfqflq4zg3vjkk0i2ywjm5vap6aqa5"; depends=[car lmtest survival]; };
+  Mychisq = derive2 { name="Mychisq"; version="0.1.2"; sha256="0yf1xgrp5gajla7prb1524586662wnjjjkc1xpyim6zfjkg89rbr"; depends=[]; };
+  N2H4 = derive2 { name="N2H4"; version="0.6.1"; sha256="00bbdy2f4bsb8b4j6n2zhmp7zif79yx14g4f4jylh1050r1y31rk"; depends=[dplyr httr jsonlite lubridate rvest tibble urltools]; };
   N2R = derive2 { name="N2R"; version="1.0.1"; sha256="12bv7xx6j6222qgpv6g61i68017fz0x6fjg9a9k5yhgw3zk05hpk"; depends=[Matrix Rcpp RcppEigen RcppSpdlog]; };
   NACHO = derive2 { name="NACHO"; version="1.1.0"; sha256="0ji9kcfbnsrn6h4p0y0ly5nwyfwh3y01wm80a7syg4mjj0nd4z0g"; depends=[cli crayon dplyr ggbeeswarm ggforce ggplot2 ggrepel knitr magrittr purrr rlang rmarkdown rstudioapi scales sessioninfo shiny shinyWidgets tibble tidyr]; };
   NADA = derive2 { name="NADA"; version="1.6-1.1"; sha256="0jp4mqr77cx7q5lff84s6wb0dwjy9mi0jyhbjc5fsx50bdczc3v7"; depends=[survival]; };
@@ -3170,7 +3185,7 @@ in with self; {
   NBBttest = derive2 { name="NBBttest"; version="1.0.0"; sha256="165j4smwqz4yra3946nd7ssgfwf7wjpysn22yj0bml36qk9y6vs7"; depends=[gplots gtools]; };
   NBDdirichlet = derive2 { name="NBDdirichlet"; version="1.3"; sha256="1657mqwn5i1b0g0gva387zl02vpymn98f71b0p7i7xv033mqnpqw"; depends=[]; };
   NBDesign = derive2 { name="NBDesign"; version="2.0.0"; sha256="0593rh2lf8wlxzjmwh2xx3jsb6miqx0wipqw9di10cbxbf6binb1"; depends=[MASS PWEALL]; };
-  NBLDA = derive2 { name="NBLDA"; version="1.0.0"; sha256="0sw84h1mgzhr6vmvxi4smk57r4gplg3kxq38gydcy6ckv2g8nzz2"; depends=[ggplot2]; };
+  NBLDA = derive2 { name="NBLDA"; version="1.0.1"; sha256="0h71c3kgqaijpnrz2cx2k4311j61paxnj96kwpv2dcdy9rhkbwar"; depends=[ggplot2]; };
   NBPSeq = derive2 { name="NBPSeq"; version="0.3.0"; sha256="0l4ylxhs2k9ww21jjqs67fygk92avdchhx2y1ixzl7yr2yh1y9by"; depends=[qvalue]; };
   NBR = derive2 { name="NBR"; version="0.1.4"; sha256="1dkrknml2nkgya5hm4iai6ivxp4jmr8s794xiqcm7ih6mk8a0wj0"; depends=[nlme]; };
   NBShiny = derive2 { name="NBShiny"; version="0.1.0"; sha256="0hcmdhj26hc3c8d5nb6yb7amv0rbdxywima0l0jqkxipx56idlcx"; depends=[caret dplyr e1071 rhandsontable rmarkdown shiny]; };
@@ -3185,7 +3200,7 @@ in with self; {
   NEONiso = derive2 { name="NEONiso"; version="0.5.3"; sha256="19w2za7f6vy1b2h4np4r1cpp9z3aha0485rh08zb3p5y15j1c021"; depends=[data_table dplyr httr lifecycle lubridate magrittr neonUtilities R_utils rhdf5 rlang tidyselect zoo]; };
   NEff = derive2 { name="NEff"; version="1.1"; sha256="16ys1fi28kbzg3am9vz1c5pc9x0ac47pl6za04h63lspk99yplzk"; depends=[bit msm]; };
   NEpiC = derive2 { name="NEpiC"; version="1.0.1"; sha256="11zf112xcsg3k93vks2fnsflw2v2d56a0bsjpd460d21k3gipfz8"; depends=[igraph PairedData]; };
-  NFCP = derive2 { name="NFCP"; version="1.2.0"; sha256="1dav6h0bk4c787g5wskpsfqdbsgalq0xpbzq6nk1sg54g6wd76q2"; depends=[curl FKF_SP LSMRealOptions MASS mathjaxr numDeriv Rdpack rgenoud]; };
+  NFCP = derive2 { name="NFCP"; version="1.2.1"; sha256="16dvk8jiyzd94lfif0nkwc0ix05is8bhyykaaa6p1irwgzk8cia4"; depends=[curl FKF_SP LSMRealOptions MASS mathjaxr numDeriv Rdpack rgenoud]; };
   NFLSimulatoR = derive2 { name="NFLSimulatoR"; version="0.3.0"; sha256="0gmr47pzyys3d4kmmbxznhs3vsi83vb6xv16bhg0zljkdp80fp44"; depends=[data_table progress]; };
   NFP = derive2 { name="NFP"; version="0.99.4"; sha256="1ybkkqdwq72inwyak5d2598xizfph5sg3zzb855l0kpxplcqnp2f"; depends=[apcluster dplyr ggplot2 graph igraph KEGGgraph magrittr plyr stringr tidyr]; };
   NFWdist = derive2 { name="NFWdist"; version="0.1.0"; sha256="0833lg0pd763awrc6ibidwf2ldl79w9lmm5acq4bnpd2hzsx60l8"; depends=[]; };
@@ -3195,7 +3210,7 @@ in with self; {
   NHANES = derive2 { name="NHANES"; version="2.1.0"; sha256="0aphv3rakfcfrv2km1xyxpj1bxiazy6gwrvs7lyhxmq468fk4c9a"; depends=[]; };
   NHLData = derive2 { name="NHLData"; version="1.0.0"; sha256="0dfqalccbkmqrn3h1z6s78l818c8sqn7d6yc8mg872ygmszryci7"; depends=[]; };
   NHMM = derive2 { name="NHMM"; version="3.11"; sha256="1ynxk4dpllb3w8229dmxzjdmf0zh5cgmh3wa55d02disc6yhm77k"; depends=[BayesLogit MASS MCMCpack msm Rcpp]; };
-  NHMSAR = derive2 { name="NHMSAR"; version="1.17"; sha256="149zzk8apl4zv60xagl8zk3zv1fnrbfijmlwn8c4vypvlfdsr981"; depends=[glasso lars ncvreg ucminf]; };
+  NHMSAR = derive2 { name="NHMSAR"; version="1.19"; sha256="0xbnzq3zlpda1xcfiz1lsa5q5frvrsf87z3xc41fvk1n5viak5fk"; depends=[glasso lars ncvreg ucminf]; };
   NHPoisson = derive2 { name="NHPoisson"; version="3.3"; sha256="1i6n59ckcxk1hwyz97jmnv4yb96ianjma6ka8lpz79ivs41jniad"; depends=[car]; };
   NHSDataDictionaRy = derive2 { name="NHSDataDictionaRy"; version="1.2.5"; sha256="17jvyjxc28bmxadvcjhal4shklh24636zw6hrc7p7m71lbcw86aw"; depends=[dplyr httr magrittr purrr rvest stringr tibble xml2]; };
   NHSRdatasets = derive2 { name="NHSRdatasets"; version="0.3.0"; sha256="1l4zrprnb3fsb2mibq8749a15xbvhn1g5yajbjf7gls81c8f2r7p"; depends=[tibble]; };
@@ -3206,7 +3221,6 @@ in with self; {
   NISTnls = derive2 { name="NISTnls"; version="0.9-13"; sha256="03a1c8a5dr5l5x4wbclnsh3vmx3dy7migfdzdx7d7p3s7hj3ibif"; depends=[]; };
   NISTunits = derive2 { name="NISTunits"; version="1.0.1"; sha256="0km9l3k9p35sb1qrhrz4ijjsdihvsp6j7cz5kh46lgf7nn6xdk7a"; depends=[]; };
   NITPicker = derive2 { name="NITPicker"; version="1.0.1"; sha256="00jmin7y1bp7a4a1qcvv3rkgiy9qij7gbkxcdgpiyzcs6aaif59z"; depends=[fda fda_usc fdasrvf]; };
-  NLMR = derive2 { name="NLMR"; version="1.1"; sha256="1m08nm71wbam6d8nj8akwqrm6nq5bvm3v76kdlasdgs7v36xzri6"; depends=[checkmate dplyr fasterize igraph RandomFields raster Rcpp sf spatstat_core spatstat_geom tibble]; };
   NLP = derive2 { name="NLP"; version="0.2-1"; sha256="1dpj04fmld2lnhg072ahgjbhmciqqy9h1lrz0wf32mr7mm9s9sh5"; depends=[]; };
   NLPclient = derive2 { name="NLPclient"; version="1.0"; sha256="0jhlz9mqziyk5574vl8qjjs4g75x27rlk90wvzm3q9kjrjyvad35"; depends=[curl NLP xml2]; };
   NLPutils = derive2 { name="NLPutils"; version="0.0-5"; sha256="1jxxly85iajzb9qckkkar0przyxv005cyvry0qi5dkzhbyl5k490"; depends=[NLP qdap SnowballC]; };
@@ -3222,7 +3236,7 @@ in with self; {
   NMdata = derive2 { name="NMdata"; version="0.0.11"; sha256="0yzjrx885zq7pnajm3s2nxjcza8pcxbn0ni60bwvr85havcs1wpj"; depends=[data_table]; };
   NMproject = derive2 { name="NMproject"; version="0.6.7"; sha256="0sri85n5i5w56bmbcg3yca3r5lh9j59gwwjidwhvxvxbg6czw6n7"; depends=[crayon diffobj dplyr DT dygraphs git2r htmltools lifecycle magrittr miniUI reshape2 rlang rmarkdown rprojroot rstudioapi shiny stringr tidyr usethis]; };
   NNMIS = derive2 { name="NNMIS"; version="1.0.1"; sha256="1w2i4xlx249p589yqdgbx1ra406ycxw729vbk1lqadbn71m6blaz"; depends=[survival]; };
-  NNS = derive2 { name="NNS"; version="0.8.4.1"; sha256="0dlsdmbrcgiz16vj2kljcw1h7ds63mij2nqrczqfl3fkxsfkp5ir"; depends=[caret data_table doParallel dtw dynlm meboot Quandl Rfast rgl stringr tdigest tseries zoo]; };
+  NNS = derive2 { name="NNS"; version="0.8.5"; sha256="0yf0r6zvxydwj883ahvp5mx2pr9qifrkiizd0mnc8w7g6cmw7bm8"; depends=[caret data_table doParallel dtw dynlm meboot Quandl Rfast rgl stringr tdigest tseries zoo]; };
   NNTbiomarker = derive2 { name="NNTbiomarker"; version="0.29.11"; sha256="0sqlf7vzhpmq2g98c2qlrcqn3ba4ycfxbczgcjiqqhqsvgkpacc1"; depends=[magrittr mvbutils shiny stringr xtable]; };
   NNbenchmark = derive2 { name="NNbenchmark"; version="3.2.0"; sha256="086smk3xy6p6ianw41h3gx806q7h28v1dg9d3khsrwyyf9gn8xyp"; depends=[pkgload R6]; };
   NO_PING_PONG = derive2 { name="NO.PING.PONG"; version="0.1.4"; sha256="10q5h9kafni3wlnn1gdsgd9a90km5snrjz1nr0ilafmdvw9vg6v1"; depends=[MASS MCMCglmm metafor]; };
@@ -3237,7 +3251,6 @@ in with self; {
   NPIstats = derive2 { name="NPIstats"; version="0.1.0"; sha256="0hbx2mzz1z2158c943dqfn0pq1aybj1xxy55mmvld4djr5zrlz9w"; depends=[dplyr]; };
   NPMLEcmprsk = derive2 { name="NPMLEcmprsk"; version="3.0"; sha256="0nm88fsxgrfk0j0lmir57bhxy4p8ah503gpj6jdlvjqw862jigiq"; depends=[]; };
   NPMLEmix = derive2 { name="NPMLEmix"; version="1.2"; sha256="056jb3kz34lajryfbzkhq0g372iib6h8mr74mq18xkarp5blgmsl"; depends=[CAMAN dplyr FDRreg Hmisc latexpdf Matrix mosaic pbapply pracma progress R_utils Rcpp REBayes Rmosek spatstat]; };
-  NPMVCP = derive2 { name="NPMVCP"; version="1.1"; sha256="13jpm46abwziq8859jhl6hg1znk3ws1q7g4vlr2jyri3qa6h22dd"; depends=[]; };
   NPP = derive2 { name="NPP"; version="0.4.0"; sha256="1891s5j39i728vqs6xz1bywnvgalsbiknn3yqsg71zlhj3h8ikll"; depends=[]; };
   NPRED = derive2 { name="NPRED"; version="1.0.6"; sha256="1mdnjfh100hckyqkyq4651ymi6lzbgfy6dy4xjxbal2q5rn6swvl"; depends=[]; };
   NPS = derive2 { name="NPS"; version="1.1"; sha256="02idja149a2sj97sks4lhsaflpifyxi6n0rjlcq9993f84szfgsi"; depends=[]; };
@@ -3256,15 +3269,16 @@ in with self; {
   NatureSounds = derive2 { name="NatureSounds"; version="1.0.4"; sha256="1l8c0zn0bbrcdf098pcbr8fvrl614cl6iq820q0sd7sr36n3k1jr"; depends=[knitr tuneR]; };
   NbClust = derive2 { name="NbClust"; version="3.0"; sha256="1vwb48zy6ln1ddpqmfngii1i80n8qmqyxnzdp6gbaq96lakl3w3c"; depends=[]; };
   NegBinBetaBinreg = derive2 { name="NegBinBetaBinreg"; version="1.0"; sha256="0ryi9gdf4sis77c0qxm6r86mfkk1nq9djs297y64nr6ng3rv9p9d"; depends=[boot Matrix mvtnorm]; };
+  NegativeControlOutcomeAdjustment = derive2 { name="NegativeControlOutcomeAdjustment"; version="0.0.4"; sha256="1lx60nl73y6c5785h0a1b59wz04lldrpsydbrwnb9ixbp8ibzp5h"; depends=[]; };
   Neighboot = derive2 { name="Neighboot"; version="1.0.0"; sha256="116q82svg8sw1xwnx253nd8vrv5i70rj45v7lf00m778rh9l2rmr"; depends=[dplyr igraph magrittr RDS RDStreeboot]; };
   NestedCategBayesImpute = derive2 { name="NestedCategBayesImpute"; version="1.2.1"; sha256="15j54whvhqy26v1iikpk8ys75d7m5b188ggdzrlgzhjg0f9j45fl"; depends=[coda dplyr Rcpp RcppParallel]; };
   NetCluster = derive2 { name="NetCluster"; version="0.2"; sha256="0aby8kfniw07jap795cwk69z83p45q5rap73zp1qbmkm3qcb31g4"; depends=[sna]; };
   NetComp = derive2 { name="NetComp"; version="1.6"; sha256="11rxpdihn575diqfvc7yvxhlr2c19fig4v4a5c6jhqyfdsd60fsv"; depends=[gdata]; };
   NetDA = derive2 { name="NetDA"; version="0.1.0"; sha256="01wrngk0cdlz3qf1kj2z75p2b4q0lhkpyjgaskn6vldsdgh94wri"; depends=[glasso]; };
-  NetData = derive2 { name="NetData"; version="0.3"; sha256="1jf05zwy0c6gmm7kvxlwvai61bz4wpsw7cl0h4i21ipzn1rqxmqj"; depends=[]; };
   NetExplorer = derive2 { name="NetExplorer"; version="0.0.2"; sha256="0k8jhl0p2dp45lx4h77r0bkcff8vn1f9gvr475cshpmyipziiwnq"; depends=[]; };
   NetFACS = derive2 { name="NetFACS"; version="0.3.1"; sha256="0z4smbh8dcb0nffyzn0yyndzniw6wh026hvdj18bz5qqv32pcq1b"; depends=[arrangements doParallel dplyr ggplot2 ggraph igraph magrittr patchwork picante Rfast rlang tibble tidygraph tidyr]; };
   NetIndices = derive2 { name="NetIndices"; version="1.4.4"; sha256="0ydivbri8l8zkxi18ghj9h66915scyhca8i9mcyq4b06mjfigss8"; depends=[MASS]; };
+  NetLogoR = derive2 { name="NetLogoR"; version="0.3.10"; sha256="1ns35pn5h63lg5wzwyvbyyv770vkxhh2b7n85h8rfazgkyv0w3la"; depends=[abind CircStats data_table matrixStats quickPlot raster rgeos sp SpaDES_tools]; };
   NetMix = derive2 { name="NetMix"; version="0.2.0"; sha256="097cyk0lf3h4v3ff0icqj7a80yvs06damw1sc4hdqf2f21d6qihh"; depends=[clue gtools igraph lda MASS Matrix poisbinom Rcpp RcppArmadillo]; };
   NetOrigin = derive2 { name="NetOrigin"; version="1.1-4"; sha256="061hfllic8z3ps4znk3c7qjhzqdifk99ikvczxacih5hw86a9j4m"; depends=[colorspace corpcor Hmisc igraph mvtnorm plyr]; };
   NetPreProc = derive2 { name="NetPreProc"; version="1.1"; sha256="0r51dqymf2nqm86py4zwdlf7qf120j0bg9r6a9c0gsyyijh4z40p"; depends=[graph]; };
@@ -3273,7 +3287,7 @@ in with self; {
   NetSimR = derive2 { name="NetSimR"; version="0.1.1"; sha256="01w2nlk1g0h81pbn3g3ch09k3ljcisysgpwihv6wlgd1wclaafmz"; depends=[]; };
   NetSwan = derive2 { name="NetSwan"; version="0.1"; sha256="1mwdy3ahagiifj2bd1ajrafvnxzi74a1x1d3i2laf1hqpz3fbgld"; depends=[igraph]; };
   NetWeaver = derive2 { name="NetWeaver"; version="0.0.6"; sha256="058fi3vbp11mbg69n4yp1zf48akfdl6s2p0qpa0v6ngmk2zjk0bq"; depends=[]; };
-  NetworkChange = derive2 { name="NetworkChange"; version="0.7"; sha256="0d9p52n4krhxy5l3f27xs90jw4am0slvyv3p6q57ba8sbwliafrf"; depends=[abind GGally ggplot2 ggrepel ggvis gridExtra igraph MASS MCMCpack mvtnorm network qgraph RColorBrewer reshape rlang Rmpfr sna tidyr]; };
+  NetworkChange = derive2 { name="NetworkChange"; version="0.8"; sha256="03rzyfiwbqpr4jj3wdg3s1gnfizz39j07yk0q2fkq3a8pfx4w306"; depends=[abind GGally ggplot2 ggrepel ggvis gridExtra igraph MASS MCMCpack mvtnorm network qgraph RColorBrewer reshape rlang Rmpfr tidyr]; };
   NetworkComparisonTest = derive2 { name="NetworkComparisonTest"; version="2.2.1"; sha256="0a4v69p1xykzb4s9sqj2bqm333a6sx2j8f8jdnp3l7dlkwg9clqp"; depends=[IsingFit IsingSampler Matrix qgraph reshape2]; };
   NetworkDistance = derive2 { name="NetworkDistance"; version="0.3.4"; sha256="0z3q15aq5jqwbyxr4464nq74ib7644f185h8wfzvfi491xkrl4cr"; depends=[doParallel foreach graphon igraph Matrix network pracma Rcpp RcppArmadillo Rdpack RSpectra]; };
   NetworkExtinction = derive2 { name="NetworkExtinction"; version="0.1.1"; sha256="1958kpdcqp4hhkqmfjg2qnrzhwcmfkbgdriq9iyqmmcr7qm8c1y7"; depends=[broom dplyr ggplot2 magrittr network scales sna tidyr]; };
@@ -3296,7 +3310,7 @@ in with self; {
   NobBS = derive2 { name="NobBS"; version="0.1.0"; sha256="0i0jyny1c29knpcl4szqwyxvdc3dqjfk5lf2xvwjdx3qas92w03l"; depends=[coda dplyr magrittr rjags]; };
   NoiseFiltersR = derive2 { name="NoiseFiltersR"; version="0.1.0"; sha256="0y90si8f5hsi273g10hw700r72la30hwqlwg59gaq76wqlkm8j0p"; depends=[caret e1071 kknn MASS nnet randomForest rJava rpart RWeka]; };
   NominalLogisticBiplot = derive2 { name="NominalLogisticBiplot"; version="0.2"; sha256="0m9442d9i78x57gdwyl3ckwp1m6j27cam774zkb358dw5nmwxbmz"; depends=[gmodels MASS mirt]; };
-  NonCompart = derive2 { name="NonCompart"; version="0.4.9"; sha256="0c1dhljc1xzqxs5483nkq3sjqxk75c8809ah8jr97y6ff4i1pvb9"; depends=[]; };
+  NonCompart = derive2 { name="NonCompart"; version="0.5.0"; sha256="0chskza5d14pf4drj4i56hpf61md69vqnq4w75zsxy3zrsb23xcy"; depends=[]; };
   NonNorMvtDist = derive2 { name="NonNorMvtDist"; version="1.0.2"; sha256="11xqdrx03q3anavyxpzb0hz6mcbdy252rzzjlpa2byfdlrfvn178"; depends=[cubature]; };
   NonParRolCor = derive2 { name="NonParRolCor"; version="0.6.0"; sha256="0z4c5f2x995k2lgfwnylag69sgrzq1n3qg9c8fn1mhzkdw4y4108"; depends=[colorspace doParallel foreach gtools pracma scales]; };
   NonProbEst = derive2 { name="NonProbEst"; version="0.2.4"; sha256="1w2ihnwwdnxlnphyd26261lsxaknpi51c15rmn9m183djz9gsvdv"; depends=[caret e1071 glmnet Matrix sampling]; };
@@ -3308,10 +3322,10 @@ in with self; {
   NormalBetaPrime = derive2 { name="NormalBetaPrime"; version="2.2"; sha256="03il9c57dbwgw38rzckkk0wkc37z8kfdrb7b4k471gm7mqhsm3m3"; depends=[GIGrvg glmnet HyperbolicDist MASS Matrix pracma pscl truncnorm]; };
   NormalGamma = derive2 { name="NormalGamma"; version="1.1"; sha256="0r3hhfscif0sx9v8f450yf119gpvf3ilpb8n3ziy4v4qf2jlcfnk"; depends=[histogram optimx]; };
   NormalLaplace = derive2 { name="NormalLaplace"; version="0.3-0"; sha256="0njgjdx2yvvy5jb5zn6zr7jdz5hck5bbkicv15z4ai4ibmckqjmh"; depends=[DistributionUtils GeneralizedHyperbolic]; };
-  NormalityAssessment = derive2 { name="NormalityAssessment"; version="0.0.1"; sha256="1syxv75dmwshxh8ahwywyd1jyk3ryhdi5ig22gw1k2kkddy5j49f"; depends=[dplyr DT ggplot2 rio shiny shinyalert shinyBS stringi stringr]; };
+  NormalityAssessment = derive2 { name="NormalityAssessment"; version="0.0.2"; sha256="0i02mqxgyzm6y02rbk6skqp58hf35cg4wpfa9abx8rsmbg09jpxj"; depends=[dplyr DT ggplot2 rio shiny shinyalert shinyBS stringi stringr]; };
   NostalgiR = derive2 { name="NostalgiR"; version="1.0.2"; sha256="0rpvwi815sdhaxqpji1y6g0vy8mkn5k6wci0a4jf54pkywwkwrwp"; depends=[txtplot]; };
   Nozzle_R1 = derive2 { name="Nozzle.R1"; version="1.1-1"; sha256="05sjip4sz12mwd3jcbvk342p83kdmrd4l2jrh17p18w4l7w4nn0z"; depends=[]; };
-  Numero = derive2 { name="Numero"; version="1.8.4"; sha256="0kkska60ilk3lqf5w6z21pjldipg4pky0qgzpbsl69ial62z8xsy"; depends=[Rcpp]; };
+  Numero = derive2 { name="Numero"; version="1.9.0"; sha256="0knfp10f8apq2bbp4pbkqwhzwhlvcxnbihdy4gn7parfm07q5wws"; depends=[Rcpp]; };
   NutrienTrackeR = derive2 { name="NutrienTrackeR"; version="1.2.0"; sha256="0n54kgxcj8w3r3iqdr13kia49b9zgxiki64h90yygpbg32hqdn8b"; depends=[ggplot2 shiny]; };
   OAIHarvester = derive2 { name="OAIHarvester"; version="0.3-3"; sha256="00j5f6kw67qr83cmds9y5rzwiv2sb2b2bfbr5cclpr3wcsw278fs"; depends=[curl xml2]; };
   OBASpatial = derive2 { name="OBASpatial"; version="1.8"; sha256="1xc4qz3i5pphgf17asyiafdnlhv5k88rw0fwkwfh8cz767wip1hw"; depends=[cubature HDInterval invgamma LaplacesDemon modeest mvtnorm truncdist]; };
@@ -3340,7 +3354,7 @@ in with self; {
   OOS = derive2 { name="OOS"; version="1.0.0"; sha256="0jnj5y26rv0i2561mywcxb7aavmpq16ippq6rblb8jiqjd05nhib"; depends=[caret dplyr forecast furrr future ggplot2 glmnet imputeTS lmtest lubridate magrittr purrr sandwich tidyr vars xts zoo]; };
   OOmisc = derive2 { name="OOmisc"; version="1.2"; sha256="09vaxn5czsgn6wpr27lka40kzd76jzqgqxavf26ms3m9kkdf83g4"; depends=[]; };
   OPDOE = derive2 { name="OPDOE"; version="1.0-10"; sha256="04z944i4f3i0cjnxh32wf7n2dfyynnvkz4lxdkn90flam2np58yv"; depends=[crossdes gmp mvtnorm nlme orthopolynom polynom]; };
-  OPI = derive2 { name="OPI"; version="2.10.0"; sha256="05vxk30hrbikfrd07g39qvxzp9zl1dlgi6fqblwxpyhnp3pn4ckf"; depends=[]; };
+  OPI = derive2 { name="OPI"; version="2.10.1"; sha256="0yzl3s0bkygwh1mg2fshf370k7hr0iw091k1jpwf92fvym1a68ia"; depends=[]; };
   ORCI = derive2 { name="ORCI"; version="1.1"; sha256="0xy5lvz2scz06fphjyhqbdhp4bizmv87a8xykp9dbgx8b4ssnqgz"; depends=[BiasedUrn BlakerCI PropCIs]; };
   ORCME = derive2 { name="ORCME"; version="2.0.2"; sha256="1pm8ajj24qqj2fir0gjzq5f4mfpl1cnj6fm2z5qg6g3sbnm57ayk"; depends=[Iso]; };
   ORDER2PARENT = derive2 { name="ORDER2PARENT"; version="1.0"; sha256="04c80vk6z227w6qsnfls89ig4vqyiiymdarhq1pxa0gpr8j2ssx5"; depends=[Matrix]; };
@@ -3351,7 +3365,7 @@ in with self; {
   ORTSC = derive2 { name="ORTSC"; version="1.0.0"; sha256="0byja1gi44ymn68cfai8apcimlxmnflqr1pj8k4y7l8lqd3fyz60"; depends=[googleAuthR googleCloudVisionR]; };
   ORdensity = derive2 { name="ORdensity"; version="1.0"; sha256="1g9d85dyfhlqmwsigdn64hifasbvw70g3wpph2h9v2ksvia0cd31"; depends=[cluster distances doParallel doRNG foreach plyr Rfast]; };
   OSCV = derive2 { name="OSCV"; version="1.0"; sha256="17wrfak6b6m2l3iqbhdwcfh0rlqb14rkvrbari7v46gya9v7hq20"; depends=[mc2d]; };
-  OSDR = derive2 { name="OSDR"; version="1.1.3"; sha256="059sj003zsrabmjfhwvvpi599ssrckcqpiw2b3vz405ljnhjmlap"; depends=[]; };
+  OSDR = derive2 { name="OSDR"; version="1.1.4"; sha256="0yf9l0fkqf9adanl8182nyislj2s2xvsnf2xp5y7pdj3af2k4m7w"; depends=[]; };
   OSMscale = derive2 { name="OSMscale"; version="0.5.1"; sha256="0rjhyhh1iafgd9h1pbd2clyg2sh0gg7y1aqmiislqyn6h6jrvgqn"; depends=[berryFunctions OpenStreetMap sp]; };
   OSNMTF = derive2 { name="OSNMTF"; version="0.1.0"; sha256="0g83wqh97iz3g4ganj2dy3biyn8cmb0v8zz6rydald1hfszj8aa2"; depends=[dplyr MASS]; };
   OSTE = derive2 { name="OSTE"; version="1.0"; sha256="0l8whr883g3jp5ckgxr4zf9vj055jrjb7pfraacd15smnrbl0v5d"; depends=[pec prodlim ranger survival]; };
@@ -3372,15 +3386,15 @@ in with self; {
   Ohit = derive2 { name="Ohit"; version="1.0.0"; sha256="132d4drc2phw9ppxnczb1ycdg3dv085k8p6bcaj3v866j0hfxjgb"; depends=[]; };
   OjaNP = derive2 { name="OjaNP"; version="1.0-0"; sha256="0xddspnnwlcxh2i66ilh6i920k53y7fv6m1hgj9h28qg2wy0vyah"; depends=[ICS ICSNP Rcpp]; };
   OkNNE = derive2 { name="OkNNE"; version="1.0.0"; sha256="0ggx508cqkqc51qw10cajm8r3k5h474n7y8dgck2fr4db047zmcm"; depends=[FNN]; };
+  OlinkAnalyze = derive2 { name="OlinkAnalyze"; version="3.0.0"; sha256="1kgfv8v9q2kx8cn1rvizvlybv7qd5qc6n27cxackv97w8jx73s59"; depends=[broom car dplyr emmeans forcats generics ggplot2 ggpubr ggrepel lme4 lmerTest magrittr readxl rlang stringr tibble tidyr tidyselect]; };
   OmegaG = derive2 { name="OmegaG"; version="1.0.1"; sha256="1aihcrgml67rvnx9vpnq2nnbc79kicw4ks1fradsa36ykkdz6b1g"; depends=[]; };
   OmicInt = derive2 { name="OmicInt"; version="1.1.7"; sha256="1rrh2z8hbfvha8yi7d7m7bpgz514cp9dzv5vs4yn5pagzca6r5np"; depends=[cluster dendextend dplyr ggExtra ggplot2 gtools igraph knitr lattice mclust pheatmap plotly RColorBrewer RCurl reshape2 rmarkdown STRINGdb stringr tidyr tidyselect]; };
   OmicKriging = derive2 { name="OmicKriging"; version="1.4.0"; sha256="08frr38yf5d0l3zwkbq9465xrbyzsn8sx9icqc3yvfnxrkhrpzig"; depends=[doParallel foreach irlba ROCR]; };
   OmicNavigator = derive2 { name="OmicNavigator"; version="1.8.0"; sha256="081ibvrz5qc6biql6mx0454kfgmm5sgfrjgdf7y3kb1bn7b2x9wq"; depends=[data_table jsonlite]; };
   OmicsPLS = derive2 { name="OmicsPLS"; version="2.0.2"; sha256="08vx4925j5ln366h7nzhf1ra5ciplrqw911258chi9di7gpm8g50"; depends=[dplyr ggplot2 magrittr softImpute tibble]; };
-  Omisc = derive2 { name="Omisc"; version="0.1.4"; sha256="1f6aakywjabq0xds5yl70ivr1jmw26zry2m65xszfp8p5mp45c7g"; depends=[copula MASS psych]; };
   OmnibusFisher = derive2 { name="OmnibusFisher"; version="1.0"; sha256="0x3q04g45nixgsrl4biqqi6bk4kx79spq5whm3n4ppr0nkv8dw4h"; depends=[CompQuadForm stringr survey]; };
   OnAge = derive2 { name="OnAge"; version="1.0.1"; sha256="1zby5sf92c185b5m19jv4ndgbv6mz107nc47zn1d6bijrypzpc20"; depends=[]; };
-  OncoBayes2 = derive2 { name="OncoBayes2"; version="0.8-2"; sha256="0hhj1sdn0yzcib0dh5prc93ill2a3mvh5a8jjsvigk3j5bvhbfwi"; depends=[abind assertthat bayesplot BH checkmate dplyr Formula ggplot2 Rcpp RcppEigen RcppParallel rlang rstan rstantools scales StanHeaders tibble tidyr tidyselect]; };
+  OncoBayes2 = derive2 { name="OncoBayes2"; version="0.8-5"; sha256="09im0d01cknxc9kwzpl6xr34fhbj3yqgjgjpfczwmxf4gdhvxvx2"; depends=[abind assertthat bayesplot BH checkmate dplyr Formula ggplot2 Rcpp RcppEigen RcppParallel rlang rstan rstantools scales StanHeaders tibble tidyr tidyselect]; };
   Oncotree = derive2 { name="Oncotree"; version="0.3.3"; sha256="147rc9ci66lxbb91ys2ig40sgmldi15p604yysrd4ccbxpbk2zwf"; depends=[boot]; };
   OneR = derive2 { name="OneR"; version="2.2"; sha256="1k7rzhcwq5b2yi4zfsc1r0yb6w65gxj9835d2a1dclallja3zav2"; depends=[]; };
   OneSampleMR = derive2 { name="OneSampleMR"; version="0.1.0"; sha256="0gxsfx5www0ndmxaymva2krsyricf4b6nyvjz1hlyjckl3drmqbw"; depends=[Formula gmm ivreg lmtest msm]; };
@@ -3392,7 +3406,7 @@ in with self; {
   OpenImageR = derive2 { name="OpenImageR"; version="1.2.1"; sha256="16c80b62f2cinvhr5v3rdhkx2s69nvjq25szbnj5ipky31ap5aif"; depends=[jpeg png R6 Rcpp RcppArmadillo shiny tiff]; };
   OpenLand = derive2 { name="OpenLand"; version="1.0.2"; sha256="02d1dflcbjvm9hgvsm5gpc3s0n0njf4w3224yqk9nc0i49nw01fi"; depends=[circlize dplyr ggplot2 gridExtra networkD3 raster tidyr]; };
   OpenML = derive2 { name="OpenML"; version="1.10"; sha256="132swv22ymm0wxq8y65y2niq8chmga1mnl1lgn6m3cgljvwad47r"; depends=[backports BBmisc checkmate curl data_table digest httr jsonlite memoise stringi XML]; };
-  OpenMx = derive2 { name="OpenMx"; version="2.20.3"; sha256="1jv22mldcxzbk0karwiih909sx2z139l2588a86ifj83fah7f36s"; depends=[BH digest lifecycle MASS Matrix Rcpp RcppEigen RcppParallel rpf StanHeaders]; };
+  OpenMx = derive2 { name="OpenMx"; version="2.20.6"; sha256="1v969100hllh0lwlxd2gv0k7krrsp9gc07iinx0nn04wkzh0rib5"; depends=[BH digest lifecycle MASS Matrix Rcpp RcppEigen RcppParallel rpf StanHeaders]; };
   OpenRepGrid = derive2 { name="OpenRepGrid"; version="0.1.12"; sha256="02p9b2y99z9yrrm2pl86p0yqwah0yjic2wdcd4k0mhccimmmkaip"; depends=[abind colorspace GPArotation openxlsx plyr psych pvclust rgl stringr XML]; };
   OpenRepGrid_ic = derive2 { name="OpenRepGrid.ic"; version="0.5.1"; sha256="06yy2c64lrqj6h36swbxqsmphsglynxlbb76s5rc79d1627hsmdc"; depends=[dplyr DT formattable igraph magrittr openxlsx RColorBrewer reshape2 rintrojs scales shiny shinyBS shinycssloaders shinydashboard shinydashboardPlus shinyFeedback shinyjs shinythemes shinyWidgets stringr testthat tidyr tidyverse withr]; };
   OpenSpecy = derive2 { name="OpenSpecy"; version="0.9.3"; sha256="1wm720g21x0f79ayrjm46vp08zkapjk78p9b5m2ch11vs9blxkd5"; depends=[digest dplyr hexView hyperSpec osfr rlang shiny signal]; };
@@ -3402,6 +3416,7 @@ in with self; {
   OptCirClust = derive2 { name="OptCirClust"; version="0.0.4"; sha256="0g34kn2gmvy9r4ph0vbssc9gl8bcpw6d72b8zpf38iml4zh52b0n"; depends=[Ckmeans_1d_dp plotrix Rcpp Rdpack reshape2]; };
   OptGS = derive2 { name="OptGS"; version="1.1.1"; sha256="1acwwjng5ri5vganv7b5pagp7524ifr0q8h1pbfb5g6z3x6w08kh"; depends=[]; };
   OptHedging = derive2 { name="OptHedging"; version="1.0"; sha256="0g7qaf5abvbcqv2h1dciwn3gwpz084ryqjjk0yabdm4ym0y38ddm"; depends=[]; };
+  OptHoldoutSize = derive2 { name="OptHoldoutSize"; version="0.1.0.0"; sha256="0ab0vvbg1nmpbbhq5a5nkwv7ap0fq4542l5da7g8qlwc23h6sfs5"; depends=[matrixStats mle_tools mnormt mvtnorm ranger]; };
   OptInterim = derive2 { name="OptInterim"; version="3.0.1"; sha256="1ks24yv5jjhlvscwjppad27iass59da1mls99hlif0li9mvkbvyk"; depends=[clinfun mvtnorm]; };
   OptM = derive2 { name="OptM"; version="0.1.6"; sha256="1x3df5qmbs920rgxpc32grwran49nxpnw9swrba9877c0ixg2dww"; depends=[boot SiZer]; };
   OptSig = derive2 { name="OptSig"; version="2.1"; sha256="1k43qsjdc00plgsindjkfn6v098v0zfy7sjkh4n4ybib2qx3v8fn"; depends=[pwr]; };
@@ -3433,10 +3448,10 @@ in with self; {
   PAGWAS = derive2 { name="PAGWAS"; version="2.0"; sha256="0bz47ivd32kx1amgqllqbxyyvj773q7wasgk924hmibabiixa8nx"; depends=[foreach lars mnormt]; };
   PAMA = derive2 { name="PAMA"; version="1.2.0"; sha256="12fvkcdkn66gzr193fq9byf64qlq2x9dkjv9hpfw770l4yw496jn"; depends=[ExtMallows mc2d PerMallows rankdist Rcpp]; };
   PAMhm = derive2 { name="PAMhm"; version="0.1.2"; sha256="0k0n3ni0ypcizri39v76x1vv7hlxlmbpfi7w81yxy9inz7zz4zfw"; depends=[cluster heatmapFlex plyr R_utils RColorBrewer readmoRe readxl robustHD]; };
-  PAMmisc = derive2 { name="PAMmisc"; version="1.8.0"; sha256="0r3p9bys4mdnf145frsvq3gdyq7xxd0yshiqbz65yyybc8di26fw"; depends=[dplyr geosphere ggplot2 hoardr httr lubridate magrittr ncdf4 PamBinaries purrr RcppRoll rerddap RSQLite seewave stringr tuneR viridis viridisLite xml2]; };
-  PAMpal = derive2 { name="PAMpal"; version="0.15.0"; sha256="0blcxwbax8j7glz28pncs6l4c0gfgc2k1166prh5w6l30l30h5pi"; depends=[data_table dplyr gam ggplot2 knitr lubridate manipulate PamBinaries PAMmisc purrr reticulate rlang RSQLite rstudioapi seewave signal stringr tidyr tuneR xml2]; };
+  PAMmisc = derive2 { name="PAMmisc"; version="1.8.3"; sha256="0k1zg992ygg9c75lf5nmnrvq2fbl2j5hgcyhzxyjdm0hmznv6r6m"; depends=[dplyr geosphere ggplot2 hoardr httr lubridate magrittr ncdf4 PamBinaries purrr RcppRoll rerddap RSQLite seewave stringr tuneR viridis viridisLite xml2]; };
+  PAMpal = derive2 { name="PAMpal"; version="0.16.0"; sha256="0chpsqwrimn6v5i24r77dr4ib9kgi71ppmjzjyhck1ygv702g260"; depends=[data_table dplyr gam ggplot2 knitr lubridate manipulate PamBinaries PAMmisc purrr reticulate rlang RSQLite rstudioapi seewave signal stringr tidyr tuneR xml2]; };
   PAS = derive2 { name="PAS"; version="1.2.5"; sha256="175p3bnpnhknfsc29hri0l2ipz1x6qcxs2bq7awns8lccam466r2"; depends=[glmnet]; };
-  PASSED = derive2 { name="PASSED"; version="1.1-1"; sha256="06dr5q14lyam6ywn6bg6vfkb68jqb6hw2phd10jcpdzcjvhsbz0r"; depends=[betareg rootSolve]; };
+  PASSED = derive2 { name="PASSED"; version="1.2-1"; sha256="1qzxc2xwqw1vc4ld8iask1aijmsl0jhw17rgph08hwl8cqmnm4nd"; depends=[betareg rootSolve]; };
   PASWR = derive2 { name="PASWR"; version="1.1"; sha256="1rxymnqvflypc6m62f5vw65l8x1m2yah7r11hhpmzdq2l2sg8fci"; depends=[e1071 lattice MASS]; };
   PASWR2 = derive2 { name="PASWR2"; version="1.0.5"; sha256="124ybvqdz2ikwqagq6bw74487psrscwxkj0gqwz43p8kinkvx3ks"; depends=[e1071 ggplot2 lattice]; };
   PASenseWear = derive2 { name="PASenseWear"; version="1.0"; sha256="0x84j1vdds4g08birmjxb0c2g1ahwv83bk11532jkmg32dnhmj58"; depends=[ggplot2]; };
@@ -3455,7 +3470,7 @@ in with self; {
   PBSmodelling = derive2 { name="PBSmodelling"; version="2.68.8"; sha256="07qaqb6sd1idmryxlz0gxb4d3apzql9vp4b16nazba08ksx0y7wf"; depends=[XML]; };
   PCA4TS = derive2 { name="PCA4TS"; version="0.1"; sha256="1qi9nlaf5181afrdvddh10a9vxyhry102n3dhai86im8yz4if9y6"; depends=[tseries]; };
   PCADSC = derive2 { name="PCADSC"; version="0.8.0"; sha256="0pwkmmnsw3c6ch2k5wdc8ig71994pdp79v3a5aa9n9aq55a8c2ir"; depends=[ggplot2 Matrix pander reshape2]; };
-  PCAmatchR = derive2 { name="PCAmatchR"; version="0.3.0"; sha256="181glfz5nqffdyycycf4w96lyjkvqsbs3av47ah2hagl3innr1vk"; depends=[]; };
+  PCAmatchR = derive2 { name="PCAmatchR"; version="0.3.2"; sha256="1dpilm3f6jylm2zggdpdz1gx0z6i56p8rxj744d9lqs1lp6nf37y"; depends=[]; };
   PCAmixdata = derive2 { name="PCAmixdata"; version="3.1"; sha256="0flrsnbchwk06dmkg3vqykp9n4pqs265szn1r10navp8ki3rrmvh"; depends=[]; };
   PCDimension = derive2 { name="PCDimension"; version="1.1.11"; sha256="0kpw0rpb9k82psfpd19vvvsakvm0pcz1n3kkkcihagp1kzlv4xkw"; depends=[changepoint ClassDiscovery cpm kernlab oompaBase]; };
   PCFAM = derive2 { name="PCFAM"; version="1.0"; sha256="196jzv0f6j60zkyagm9n98339ipn8mrhmhl3q4g053z8f6mm9zmv"; depends=[]; };
@@ -3466,7 +3481,6 @@ in with self; {
   PCMBase = derive2 { name="PCMBase"; version="1.2.12"; sha256="0p18g660yax8mmnhq1pd4nax4saf8syqj7c1xpspjbfkr78kh15q"; depends=[ape data_table expm ggplot2 mvtnorm xtable]; };
   PCMBaseCpp = derive2 { name="PCMBaseCpp"; version="0.1.9"; sha256="0k40mxs8w1vk7qwpkv8gnq6cq3kpj7wvf0i6f1qn1wmm2vvz1kfy"; depends=[abind data_table PCMBase Rcpp RcppArmadillo]; };
   PCMRS = derive2 { name="PCMRS"; version="0.1-3"; sha256="02dkszfaqkwksyf0wics4lldyqlwviw2mpc8kb04nhxnwh50vy1g"; depends=[cubature ltm mvtnorm Rcpp RcppArmadillo statmod]; };
-  PCObw = derive2 { name="PCObw"; version="0.0.0"; sha256="1mz9fpd8k0fs14gvs9bhzrpydz200fsg52njaw2nr08184q78r4y"; depends=[Rcpp RcppEigen]; };
   PCPS = derive2 { name="PCPS"; version="1.0.7"; sha256="0gxymz0yws1q1bxkpxi0lmbv57xx62h3dl7z3i2cnbagswkax3zh"; depends=[ape nlme phylobase picante RcppArmadillo SYNCSA vegan]; };
   PCRedux = derive2 { name="PCRedux"; version="1.1"; sha256="0714q5afki3i8vja3qakzjx7r082m99zhsimzlsqjhq4fa3jb8q2"; depends=[bcp changepoint chipPCR ecp fda_usc MBmca pbapply pracma qpcR robustbase segmented shiny zoo]; };
   PCS = derive2 { name="PCS"; version="1.2"; sha256="0488h6s1yz6fwiqf88z2vgckn6i0kwls8cazmpw3wspnaqvl2n4s"; depends=[multtest statmod]; };
@@ -3475,11 +3489,12 @@ in with self; {
   PDE = derive2 { name="PDE"; version="1.3.0"; sha256="1nz0xrhs2iin2grqvxhp99775q8wrjp7isyr1i415vi936jabs0i"; depends=[tcltk2]; };
   PDFEstimator = derive2 { name="PDFEstimator"; version="3.1"; sha256="0l9iq7jr266f44laxbhj23ngp5m4fimhxmr4nszajr0j3w14wmrl"; depends=[]; };
   PDM = derive2 { name="PDM"; version="0.1"; sha256="1pbdy13ji9c6krgh2r1qgrzmf4hdmrdzylsr71n3hh5jq4n9xg8x"; depends=[jpeg]; };
+  PDMIF = derive2 { name="PDMIF"; version="0.1.0"; sha256="0mlc31f4z0k5xk1fil0hx5dcbm7afia74kxb7xmnx4jcblidxnd2"; depends=[diagonals ncvreg quantreg]; };
   PDN = derive2 { name="PDN"; version="0.1.0"; sha256="082ydvwcjc2rs7hlakrkgbbm9c419m408a14a9dgfdwm16yif3jd"; depends=[ggplot2 glmnet network survival]; };
   PDQutils = derive2 { name="PDQutils"; version="0.1.6"; sha256="0mmfi0ifwbkjm0274sddpwkj27cvdkwngnka8vdmfm4b2nn7vgsp"; depends=[moments orthopolynom]; };
   PDSCE = derive2 { name="PDSCE"; version="1.2"; sha256="17lc6d8ly6jbvjijpzg45dvqrzrh5s1sp415nycazgpbg9ypwr2h"; depends=[]; };
   PDShiny = derive2 { name="PDShiny"; version="0.1.0"; sha256="0s09sywvy83dj06rkxzyi06wfymwnfpgf3lpgjbb8ps8q3byd4vs"; depends=[shiny]; };
-  PDtoolkit = derive2 { name="PDtoolkit"; version="0.1.0"; sha256="0am2plgl8hvkgnm9lcldyrypp2c0p700xbbp8m679pd9h1pc1888"; depends=[dplyr monobin rpart]; };
+  PDtoolkit = derive2 { name="PDtoolkit"; version="0.2.0"; sha256="1glfwq8yw4m4iwipnbc95lp4gbkg0xp28f5cz6gixg4ik3a789px"; depends=[dplyr monobin rpart]; };
   PEACH = derive2 { name="PEACH"; version="0.1.1"; sha256="0ciq2cci35rv39pgpp7i30jxlmr85726kh07ww22ryq3bm04ylg8"; depends=[MASS metap mnormt]; };
   PEGroupTesting = derive2 { name="PEGroupTesting"; version="1.0"; sha256="1z863ard0cc2g8ibxnmxhiqhvs53r6b8gpnavnfchm9432ifcbwi"; depends=[]; };
   PEIP = derive2 { name="PEIP"; version="2.2-3"; sha256="1ljalgffgrn9l3q914jjxrn1j740jqk4j8q1vzn3si4np9mz92vp"; depends=[bvls fields geigen Matrix pracma RSEIS]; };
@@ -3496,13 +3511,14 @@ in with self; {
   PHInfiniteEstimates = derive2 { name="PHInfiniteEstimates"; version="2.1"; sha256="1q10ccdc1jhnddfrh5017cx05kdpfpq1z5jvhnidxaz50sccymmf"; depends=[coxphf lpSolve mlogit Rdpack survival]; };
   PHSMM = derive2 { name="PHSMM"; version="1.0"; sha256="1phfdzhfdhyry11plfd8a2lcn3rg02m84brw7fp2lg3hsxjg5ch7"; depends=[Rcpp RcppArmadillo]; };
   PHYLOGR = derive2 { name="PHYLOGR"; version="1.0.11"; sha256="1fq2ny093b4881nwgj6wr8qd5g4dcxb51sdx40ndyxxpq6jj16n9"; depends=[]; };
+  PHclust = derive2 { name="PHclust"; version="0.1.0"; sha256="18jby44hnk132l0wviqb0wi6nxkg1xisqjh8cxpss2rhwah3l4h1"; depends=[]; };
   PHeval = derive2 { name="PHeval"; version="0.5.4"; sha256="06fy5dm4mnp29f01163rw1d1hyl7rlcp4pfw18s87ckpr931qyma"; depends=[survival]; };
   PICBayes = derive2 { name="PICBayes"; version="1.0"; sha256="1js6zrnyc8v345cds3pypb2g9dd3vvj3bjq159qc113m9ll2xk0b"; depends=[coda MCMCpack survival]; };
   PIGShift = derive2 { name="PIGShift"; version="1.0.1"; sha256="115dnsh4b1rxx1d2kc8x3vl5366h5f0i6gg8l1w3v0f8309qigis"; depends=[ape mvtnorm]; };
   PINSPlus = derive2 { name="PINSPlus"; version="2.0.6"; sha256="0mws1064kwfm3csdzpfn4g2pwjasdmx9nz5x28znxv8hwrlgm2zw"; depends=[cluster doParallel entropy FNN foreach impute irlba matrixStats mclust Rcpp RcppArmadillo RcppParallel]; };
   PIPS = derive2 { name="PIPS"; version="1.0.1"; sha256="1c5v3s6xys9p1q32k6mpsffhi9gwsq951rh12hs76dmak862yspc"; depends=[]; };
   PK = derive2 { name="PK"; version="1.3-5"; sha256="1wzz2qv6h6nc2hcsg4098951i608xbbhc9f9ngamfigh5sbmzbh6"; depends=[]; };
-  PKI = derive2 { name="PKI"; version="0.1-9"; sha256="1j8zwjp59bvm1f6cid232n242afjg23q1s438dbzz9wsyc2hx7y6"; depends=[base64enc]; };
+  PKI = derive2 { name="PKI"; version="0.1-10"; sha256="08h9am4k69x3ayvp8ah42m2k989ii5j1lm9240v60l2dailij48m"; depends=[base64enc]; };
   PKLMtest = derive2 { name="PKLMtest"; version="1.0.1"; sha256="0i1kxczlhn95jw1w7vw87svqhpq9j6xi4fhy974yjx9xhax171hq"; depends=[ranger]; };
   PKNCA = derive2 { name="PKNCA"; version="0.9.5"; sha256="0grz5akbpb6i2dg8s9v34qr1zw1r8pczqw2amm6ihi8bxr799223"; depends=[digest dplyr nlme purrr rlang tibble tidyr]; };
   PKPDmodels = derive2 { name="PKPDmodels"; version="0.3.2"; sha256="1h893civ77ahbgjnc6kq3l7rszmqmx9dlxwavldigpq3r79vd86k"; depends=[]; };
@@ -3539,6 +3555,7 @@ in with self; {
   PP = derive2 { name="PP"; version="0.6.3-11"; sha256="1z7v5jiljm534lhr92vz9z3cafwcp6hdxyrr1nhli2arxc1nin76"; depends=[Rcpp]; };
   PP3 = derive2 { name="PP3"; version="1.2"; sha256="1g36al9w1rxyhfzbvpw9siqq57h2xl0zr94wysz8i0jzqkkqkrvf"; depends=[]; };
   PPCI = derive2 { name="PPCI"; version="0.1.5"; sha256="141811iq0g2rq7lxpz9a44kyjfylj85yqgcjq7b23xfg2wbcp8dd"; depends=[rARPACK]; };
+  PPLasso = derive2 { name="PPLasso"; version="1.0"; sha256="0lhqkjl3l77117sk6zq2abc54q7vr2bdbfhfw4nfrzl0m7ypqqba"; depends=[cvCovEst genlasso ggplot2 glmnet MASS]; };
   PPMR = derive2 { name="PPMR"; version="1.0"; sha256="07fky5xc1dmmn23wwdjm46c86i7q20dv5f2147828v52hhky873g"; depends=[Rcpp RcppArmadillo]; };
   PPQplan = derive2 { name="PPQplan"; version="1.1.0"; sha256="072r7myqsnpyla37q6bj9glwvbygb9g8xkl60q055yzxmfh4rsbr"; depends=[ggplot2 plotly]; };
   PPRL = derive2 { name="PPRL"; version="0.3.6"; sha256="08z7fnvz9wdsdba6n19qxg6n32azka9890w16jj7qpv25bpkqvl1"; depends=[Rcpp settings]; };
@@ -3558,10 +3575,9 @@ in with self; {
   PROJ = derive2 { name="PROJ"; version="0.4.0"; sha256="1rqw28qqcyzla3ssif9jghvv0nyms9riabj2lxhlx1l3rbz0rsfx"; depends=[]; };
   PROMETHEE = derive2 { name="PROMETHEE"; version="1.1"; sha256="0r53mb9ndwm4yli3h50cfamsjzpq6b67g72mszm7lpbqpj58wqw6"; depends=[lpSolve]; };
   PROSPER = derive2 { name="PROSPER"; version="0.3.3"; sha256="1wdrdqii7d4yfky6706n9xjmabnz99jjja1c80nbj3fp8idsbli5"; depends=[data_table]; };
-  PROTOLIDAR = derive2 { name="PROTOLIDAR"; version="0.1"; sha256="0bz3071b0wlcvh40vl3dyiiixk5avsj6kjjnvlvx264i5g08rij4"; depends=[]; };
   PROreg = derive2 { name="PROreg"; version="1.1"; sha256="0jws41hgrpcih5ispp6f627f81sjbdygzgjbw4gawf31n5z8pi5a"; depends=[car fmsb Matrix matrixcalc numDeriv RColorBrewer rootSolve]; };
-  PROscorer = derive2 { name="PROscorer"; version="0.0.1"; sha256="0mgj0mi0vzdk0agimsx4k9i4bss0j5lqiayzhldr1hrqrx2a4f3d"; depends=[PROscorerTools]; };
-  PROscorerTools = derive2 { name="PROscorerTools"; version="0.0.1"; sha256="1vliffkfqdn5l96bncfgayv19i20kmawlxi8q853wamj6npdpv5r"; depends=[]; };
+  PROscorer = derive2 { name="PROscorer"; version="0.0.3"; sha256="1wmv3yg1njgjc7vr3nkmq4643xfyxinrgjsfkkpahp5xbyyqb222"; depends=[PROscorerTools]; };
+  PROscorerTools = derive2 { name="PROscorerTools"; version="0.0.2"; sha256="0fd50c54afa7w687nzw6gpnpn63pjv8brsivrgsv93b1iz8762k4"; depends=[]; };
   PROsetta = derive2 { name="PROsetta"; version="0.3.5"; sha256="1igwhksfqv6pxf5jrhds4xvax0sif62vwj7hk3d3gdq0brgi27b9"; depends=[equate lavaan mirt mvnfast plink psych]; };
   PRP = derive2 { name="PRP"; version="0.1.1"; sha256="1q4idlk2crxsd841b203hkcyp9glqhsg83liddqlxixxih7rkzp1"; depends=[mvtnorm]; };
   PRROC = derive2 { name="PRROC"; version="1.3.1"; sha256="1m28h8pcd78049lz2qixhkcr9h5b3jik3maqzfbvq9y58z71i4a7"; depends=[]; };
@@ -3572,6 +3588,7 @@ in with self; {
   PSAgraphics = derive2 { name="PSAgraphics"; version="2.1.1"; sha256="05c0k94dxddyrhsnhnd4jcv6fxbbv9vdkss2hvlf3m3xc6jbwvh9"; depends=[rpart]; };
   PSCBS = derive2 { name="PSCBS"; version="0.66.0"; sha256="14rs2wywipbkia3dbzfhpnkmfgdvm2bf586lggsx63sywlv5d02q"; depends=[aroma_light DNAcopy future listenv matrixStats R_cache R_methodsS3 R_oo R_utils]; };
   PSF = derive2 { name="PSF"; version="0.4"; sha256="1hjry8vjqr6zk2i2ppf3fcpsr4v4jm1705qv6i1iz2agl6g2rcnp"; depends=[cluster data_table forecast knitr]; };
+  PSGD = derive2 { name="PSGD"; version="1.0.0"; sha256="08wrz1vwvicjxjkj38xr28s84ckvyvaxybvb6fw8m3gkfmgkd7b8"; depends=[Rcpp RcppArmadillo]; };
   PSIMEX = derive2 { name="PSIMEX"; version="1.1"; sha256="0cndzasvg4y49incyd9nfz8y3z88ywbc7xk0zzjir665pv2xn23b"; depends=[knitr MCMCglmm pedigree plotrix]; };
   PSLM2015 = derive2 { name="PSLM2015"; version="0.2.0"; sha256="1f8kzlqil2ac8a9fbj9fhdni2narh2yaaz044mlx7gsv2ns3ai19"; depends=[dplyr ggplot2 magrittr]; };
   PSPManalysis = derive2 { name="PSPManalysis"; version="0.3.7"; sha256="1l8pik1abfrcid8ffwp3gjl9z5iby6l5xcmv1vcg1cbd96z4rvqn"; depends=[pkgbuild rstudioapi]; };
@@ -3583,14 +3600,14 @@ in with self; {
   PSweight = derive2 { name="PSweight"; version="1.1.6"; sha256="1llb6x30gn230qvgmfzd1fz7f8g6dgjy9mq0x8820mprpd9sjyxs"; depends=[gbm ggplot2 MASS nnet numDeriv SuperLearner]; };
   PTAk = derive2 { name="PTAk"; version="1.4-0"; sha256="0hm1xij32wgirj7k7qv162zl5r7aj1iyyhpnlbm9wx1mbw72ccbc"; depends=[tensor]; };
   PTE = derive2 { name="PTE"; version="1.7"; sha256="1azkrij4kfmvp03lnzm88gwgvz8g54jq94j0qg8ynxvyjzrppc98"; depends=[doParallel foreach survival]; };
-  PTSR = derive2 { name="PTSR"; version="0.1.1"; sha256="17l0sg72a2yjb4wz0rkpv5lq1hrgzznaqk4abshddf0mm211n0fp"; depends=[actuar extraDistr numDeriv SuppDists]; };
+  PTSR = derive2 { name="PTSR"; version="0.1.2"; sha256="0zwqw8zdp0p05nm64yg658iqfbj26n3v2py8r5m6g1sjispm5whf"; depends=[actuar extraDistr numDeriv SuppDists]; };
   PTXQC = derive2 { name="PTXQC"; version="1.0.12"; sha256="0k9qvaf2dxfy2lcqnw0zyi17l682rma4c4hhh56m4bycwl2prmv2"; depends=[data_table ggdendro ggplot2 gtable jsonlite kableExtra knitr ontologyIndex plyr R6 R6P RColorBrewer reshape2 rmarkdown seqinr UpSetR xml2 yaml]; };
   PTwins = derive2 { name="PTwins"; version="0.1.1"; sha256="166mc7w52n9d3n72h5jvvhbki87prkils3yigdf57dn9pyixrd66"; depends=[]; };
+  PUMP = derive2 { name="PUMP"; version="1.0.0"; sha256="03xy77hq9d375v2hpszbnh700lkb4yfd2xn20lwh0bawx94m7rsy"; depends=[dplyr future ggplot2 ggpubr here magrittr mvtnorm purrr randomizr readr rlang stringr tibble tidyr tidyselect]; };
   PUPAIM = derive2 { name="PUPAIM"; version="0.2.0"; sha256="1ky6f4yhm3hjrfxwk8vfalzzjgkq1922my26w457q8nfng7f2m53"; depends=[Metrics minpack_lm nls2]; };
   PUlasso = derive2 { name="PUlasso"; version="3.2.4"; sha256="0mcmya0a5wzmssq05vpmkx9icfrq49kc0dc9ri3d9kx4w0sabffh"; depends=[doParallel foreach ggplot2 Matrix Rcpp RcppEigen]; };
   PVAClone = derive2 { name="PVAClone"; version="0.1-6"; sha256="0fj5p3z2cwnyshrr4rq88wpij2xax5p4aq0x4p342kadx9d6x2ga"; depends=[coda dclone dcmle]; };
   PVR = derive2 { name="PVR"; version="0.3"; sha256="0pcnazkiwmicr3k6k70r8skqk0pd46fcqhhxghawxjs4slgnygkj"; depends=[ape MASS splancs]; };
-  PVplr = derive2 { name="PVplr"; version="0.1.0"; sha256="1ssmdhq2qczk6n50f8jj4j3nym7jj9bshfc1f29lccvmp7wxdp9a"; depends=[broom cluster dplyr ggplot2 magrittr minpack_lm purrr rlang segmented stlplus tidyr]; };
   PWD = derive2 { name="PWD"; version="1.0"; sha256="0ksr3biaqd4p5a4lv28i4cwk1fn9822ndq2161mgvc1c344p06fj"; depends=[Rcpp RcppArmadillo]; };
   PWEALL = derive2 { name="PWEALL"; version="1.3.0"; sha256="0nb0v6wvj9ay90qcbrr9drg2g84fb7a9m78pzb69wp8789i8ixhk"; depends=[survival]; };
   PWFSLSmoke = derive2 { name="PWFSLSmoke"; version="1.2.117"; sha256="0140j2bg6mqxsg86ndq3c0ls1kdvd33r2qrwih2cjgmnfq31adkj"; depends=[cluster curl dplyr dygraphs geosphere ggmap glue httr jsonlite leaflet lubridate magrittr mapproj maps maptools MazamaCoreUtils MazamaSpatialUtils openair png purrr raster RColorBrewer readr reshape2 rgdal RgoogleMaps rlang sf slippymath sp stringr tibble tidyr xts]; };
@@ -3622,7 +3639,6 @@ in with self; {
   ParallelDSM = derive2 { name="ParallelDSM"; version="0.3.1"; sha256="02m7hvjjzwxz1apw4dv8ypxkd8i41if5s83fp2algf4kyv2s44nx"; depends=[caret geoR gstat pryr quantregForest randomForest raster rgdal snowfall sp stringr]; };
   ParallelLogger = derive2 { name="ParallelLogger"; version="3.0.0"; sha256="1vvh1kzdq3bz7s3yg8kr3zc15qj0qy3d4k13ygd546374w1ywn0k"; depends=[jsonlite snow xml2]; };
   ParallelPC = derive2 { name="ParallelPC"; version="1.2"; sha256="07y7xb16865khxkvwsk1yglzyy7ja4aj2wpkipaz48i77c3x8bi2"; depends=[]; };
-  ParallelTree = derive2 { name="ParallelTree"; version="0.1.3"; sha256="1h53qwhc63fglm452b3by7f3g6f3hyqwkmwmbdqdb9rv3j4gvnvg"; depends=[ggplot2]; };
   ParamHelpers = derive2 { name="ParamHelpers"; version="1.14"; sha256="1sx2ddm8hwvvmk0z65wa689w80py3fny82zjd4d29qwxlv854xmi"; depends=[backports BBmisc checkmate fastmatch]; };
   Pareto = derive2 { name="Pareto"; version="2.4.2"; sha256="0396jixa4scqcgq8qyhin91mppg4knz2bfik67jh119clwdrd8vj"; depends=[]; };
   ParetoPosStable = derive2 { name="ParetoPosStable"; version="1.1"; sha256="1fwji5wrhbxr089dll812csamvb5q2pxn1607rpirarifgfbj28m"; depends=[ADGofTest doParallel foreach lmom]; };
@@ -3638,7 +3654,7 @@ in with self; {
   PeakSegJoint = derive2 { name="PeakSegJoint"; version="2018.10.3"; sha256="0f0dw6swhhf301j4ci3rs8cmzd39dcjlb0kqxpdh7f00gp3qn7da"; depends=[PeakError penaltyLearning]; };
   PeakSegOptimal = derive2 { name="PeakSegOptimal"; version="2018.05.25"; sha256="0j39jzy4r0h787vs3klgbpcmb096ds3hzhvv5w3xs53kl0qkypj4"; depends=[penaltyLearning]; };
   PearsonDS = derive2 { name="PearsonDS"; version="1.2.1"; sha256="094q0vxqkm8r30rhgck3vh44qbaj00liddn23cnl7rglil5y6jrm"; depends=[]; };
-  PearsonICA = derive2 { name="PearsonICA"; version="1.2-4"; sha256="0jkbqha1nb9pf72ffki47wymsdmd50smkdhvpzvanv4y2rmqfhvg"; depends=[]; };
+  PearsonICA = derive2 { name="PearsonICA"; version="1.2-5"; sha256="04xi911wzkgsh1ajqamgwgv7wnpgyc20brjcr4jh6gfkfhacjprv"; depends=[]; };
   PedCNV = derive2 { name="PedCNV"; version="0.1"; sha256="09qxcjzwdgzdkbj28rzmfv7k3q2qsiapnvx3m45a835r57h5gynp"; depends=[ggplot2 Rcpp RcppArmadillo]; };
   PeerPerformance = derive2 { name="PeerPerformance"; version="2.2.5"; sha256="0cdv7ndbjxzaayxkrxh99jsyivlipbnipv21d4rmf8j8ssfq74r5"; depends=[lmtest sandwich]; };
   PenCoxFrail = derive2 { name="PenCoxFrail"; version="1.0.1"; sha256="0snjf8jxzyf30xj3wx9p6g073dqw592l1j1c6yxfg8y4kgzhzwq7"; depends=[Matrix Rcpp RcppArmadillo survival]; };
@@ -3663,7 +3679,7 @@ in with self; {
   PharmPow = derive2 { name="PharmPow"; version="1.0"; sha256="0gabkd8p4zsig9p697lyk8m2jxb5abjk81rpzd5ih1yk1qanhsn5"; depends=[scatterplot3d]; };
   Phase123 = derive2 { name="Phase123"; version="2.1"; sha256="0bz867wsnrflzlzrql1vgacymx70rb9wik9jw3g34i2vigpl8x8i"; depends=[Rcpp RcppArmadillo survival]; };
   Phase12Compare = derive2 { name="Phase12Compare"; version="1.5"; sha256="0n9rjgdllpnj451a8d4p8x3mjf23czcmk7cn1c9v3l7mg4jn18h2"; depends=[mvtnorm Rcpp RcppArmadillo]; };
-  PhaseTypeR = derive2 { name="PhaseTypeR"; version="1.0.1"; sha256="0kr8ysk2zlaap70v1nz9kcxppc9zb49xrwcv103lcn7gacz0iavx"; depends=[expm igraph]; };
+  PhaseTypeR = derive2 { name="PhaseTypeR"; version="1.0.2"; sha256="0xm8h1wnq4j76my5ygih8ykrkji70fw74s9bpn2fwxm069h38npy"; depends=[expm igraph]; };
   PheCAP = derive2 { name="PheCAP"; version="1.2.1"; sha256="00dfy0iby21kqfxz2npz4dn1klxcdlll8xrk2hsmc56fjfidbdhz"; depends=[glmnet RMySQL]; };
   PheNorm = derive2 { name="PheNorm"; version="0.1.0"; sha256="10223yfaajzq1ip5qj3kk6iyjzrbb619jkrsxawb0dpkrj56d8v7"; depends=[]; };
   PheVis = derive2 { name="PheVis"; version="1.0.2"; sha256="0pb6lxyz0ikgl64872dqjk1zj7pa793ggrp53hrg2y5m76wn8drr"; depends=[dplyr ggplot2 glmnet knitr lme4 purrr randomForest Rcpp tidyr viridis zoo]; };
@@ -3693,7 +3709,7 @@ in with self; {
   PlotRegionHighlighter = derive2 { name="PlotRegionHighlighter"; version="1.0"; sha256="0n1nkfr3sdaq6f5p9kgx4slrsvhpdbax3rinrkfkb1vnjj4swj77"; depends=[]; };
   PoA = derive2 { name="PoA"; version="1.2.1"; sha256="0y8aqz1ainxdglxlfp9iqhvkmirpmc7dvwrcxz2l8lln86yrfqx6"; depends=[dplyr nloptr pracma tibble]; };
   PoDBAY = derive2 { name="PoDBAY"; version="1.4.3"; sha256="1c1dmggcc8k4h56063r97gjavd44llc51j54qs1wck9zir414i8w"; depends=[dplyr ggplot2 Rcpp]; };
-  PoPdesign = derive2 { name="PoPdesign"; version="1.0.0"; sha256="09bp31j3qvxancfiz242g752jms5nkjdsl63qinfi96pdq6snbrj"; depends=[Iso knitr magick]; };
+  PoPdesign = derive2 { name="PoPdesign"; version="1.0.1"; sha256="14bfxsnbbyfql590f2yhm161qdbnfj7apb0jpiiw5d2bpppx3np8"; depends=[Iso knitr magick]; };
   PoSI = derive2 { name="PoSI"; version="1.1"; sha256="1xwlj8dibaik37z6vj9q9vawavi7d49906wvxdd4drjzxzapq4ng"; depends=[]; };
   PogromcyDanych = derive2 { name="PogromcyDanych"; version="1.7"; sha256="1fld65ksw47hvp0k1mjll0pxcpf0cjdqj5qhjx88mrbsr2f1y7x4"; depends=[dplyr SmarterPoland]; };
   PoiClaClu = derive2 { name="PoiClaClu"; version="1.0.2.1"; sha256="1q89b0nypz2iivmgwg1nb1l7p285wy00s40j3qp8zc78ra1rjhyx"; depends=[]; };
@@ -3707,7 +3723,6 @@ in with self; {
   PoissonBinomial = derive2 { name="PoissonBinomial"; version="1.2.4"; sha256="0nx1xqqwsxrfyzrxl3lqmd7d7ljgp6k3z3cw49xbc2z6gbizgm7g"; depends=[Rcpp]; };
   PoissonMultinomial = derive2 { name="PoissonMultinomial"; version="1.0"; sha256="0h8486f5a74yik340ghg6mwb80sj38r02lzjsm0wvv07kb7zq9zp"; depends=[mvtnorm Rcpp RcppArmadillo]; };
   PoissonPCA = derive2 { name="PoissonPCA"; version="1.0.3"; sha256="0hdfnq427cywkpb34nj8kdjrc3yligzqag0729qnhh90si0ad036"; depends=[]; };
-  PoissonSeq = derive2 { name="PoissonSeq"; version="1.1.2"; sha256="1hhx0gv06cp6hm6h36mqy411qn9x15y45crpzbyf8crfs85c6gbg"; depends=[combinat]; };
   PolicyPortfolios = derive2 { name="PolicyPortfolios"; version="0.2.2"; sha256="1mfhyy4qyadk389jj6q8livfj45qdwb57wx74cg85jiqd2g19d90"; depends=[dplyr ggplot2 ineq mgcv reshape2 vegan]; };
   PolyHaplotyper = derive2 { name="PolyHaplotyper"; version="1.0.1"; sha256="1sc1n42h78nyv004ddykvh1ljjczyiv5rl9sgxhi207lql1zd3wa"; depends=[XML]; };
   PolyPatEx = derive2 { name="PolyPatEx"; version="0.9.2"; sha256="1z1hwvsw7b6cz5xfy35a5ldrzb3fhp3swiyz56v1zqblpsaz8n9g"; depends=[gtools]; };
@@ -3719,7 +3734,6 @@ in with self; {
   PooledCohort = derive2 { name="PooledCohort"; version="0.0.1"; sha256="1zf8waqiw4282iyr30byd7czrdnf9rvp3mra6b7slqqs1z53lhr2"; depends=[glue]; };
   PooledMeanGroup = derive2 { name="PooledMeanGroup"; version="1.0"; sha256="0i9s7qskjnji3mf6clsi69rnni57v8cysgr9gh3hvxjzlf1sq8y7"; depends=[]; };
   PopED = derive2 { name="PopED"; version="0.6.0"; sha256="0s8lr17s6w8isjig4z8jzgpnpsb1kg98d32y7kslbwzl08cbnza0"; depends=[boot codetools dplyr ggplot2 gtools magrittr MASS mvtnorm purrr stringr tibble]; };
-  PopGenKit = derive2 { name="PopGenKit"; version="1.0"; sha256="0l4mbm0cyppgvcw2cbimrv29aiciyj00k8wfwcj5zr8sh7fgfhs4"; depends=[]; };
   PopGenReport = derive2 { name="PopGenReport"; version="3.0.4"; sha256="0x9j9f9k65rfr4fxyrxqa9220psfh1bicls6vwbxmqsfdsfnvs0j"; depends=[ade4 adegenet calibrate data_table dismo gap gdistance genetics GGally ggplot2 knitr lattice mmod pegas plyr R_utils raster reshape rgdal RgoogleMaps sp vegan xtable]; };
   PopGenome = derive2 { name="PopGenome"; version="2.7.5"; sha256="0xdwgih1n7bkykbzrnp293yzrlj80vr2v6rlsww61nxlhynbh9yn"; depends=[ff]; };
   PopVar = derive2 { name="PopVar"; version="1.3.0"; sha256="1yc2qz7g5jv752yrhjq1ymfdjbqwdcp0hv7pm93qsn51k8fc8i9i"; depends=[BGLR qtl rrBLUP]; };
@@ -3735,7 +3749,7 @@ in with self; {
   PottsUtils = derive2 { name="PottsUtils"; version="0.3-3"; sha256="165k4sjh3kqkb8bzi68wx00yl77yfbgs70fcbpzmsmcw4g4hdpzn"; depends=[miscF]; };
   Power2Stage = derive2 { name="Power2Stage"; version="0.5-4"; sha256="1g4zrprbd5q1dn4jfq5c9ayss4p0ljhbsfr3h8h9sjbmcg62rsal"; depends=[cubature mvtnorm PowerTOST]; };
   PowerNormal = derive2 { name="PowerNormal"; version="1.2.0"; sha256="1kryqcjvgwk0l4z3gqxdiz47mha3jw5583jlb9z7ml6v7cam06sm"; depends=[]; };
-  PowerTOST = derive2 { name="PowerTOST"; version="1.5-3"; sha256="0473vm267hsq7s8ggm4m01jig067qcpm30cza0j1kx9cw6ghq68d"; depends=[cubature mvtnorm TeachingDemos]; };
+  PowerTOST = derive2 { name="PowerTOST"; version="1.5-4"; sha256="0k7vbgw0jswynwrammzzlc5radszjyqw9y5h3kh22bzpq4njvl1z"; depends=[cubature mvtnorm TeachingDemos]; };
   PowerUpR = derive2 { name="PowerUpR"; version="1.1.0"; sha256="0bnkngdqhzhsbkzp4cxhgm8rzn83q4vm3fj2gkp7z4qznp37lh3j"; depends=[]; };
   PracTools = derive2 { name="PracTools"; version="1.2.5"; sha256="1ysp8cwfmr9hihvb59y7gc74gw2a3bgbh57h99xp246i7d12bbhn"; depends=[]; };
   PracticalEquiDesign = derive2 { name="PracticalEquiDesign"; version="0.0.3"; sha256="0jms5j9vg5g1llwkzjglj6k26wgj16jxdigllra4gjzk0azbgn9q"; depends=[dplyr ggplot2 numDeriv Temporal tidyr]; };
@@ -3748,7 +3762,7 @@ in with self; {
   PredictABEL = derive2 { name="PredictABEL"; version="1.2-4"; sha256="144xmfsp62ssmg501f4y173jrqyv8vps36j4yrwg6ghcmyc01wf8"; depends=[Hmisc lazyeval PBSmodelling ROCR]; };
   PredictionR = derive2 { name="PredictionR"; version="1.0-12"; sha256="0kgc8rjdqskasdaxsbir9gwvm55rw5cpdg3y9nsj7ccg9fc1ji19"; depends=[fitdistrplus Renext]; };
   PredictiveRegression = derive2 { name="PredictiveRegression"; version="0.1-4"; sha256="15vkisj3q4hinc3d537s8inhj3wk62q67qhy050xmp9j563ainmd"; depends=[]; };
-  PresenceAbsence = derive2 { name="PresenceAbsence"; version="1.1.9"; sha256="17qn4ggkr5aqml45nkihj1j35y479ywkm1xcfkb2g8ky66jb0c0s"; depends=[]; };
+  PresenceAbsence = derive2 { name="PresenceAbsence"; version="1.1.10"; sha256="0z4wc0ahqb5n6ikharpamcaim3g3mww0bkyblz61xaq2yzyny9jr"; depends=[]; };
   PressPurt = derive2 { name="PressPurt"; version="1.0.2"; sha256="05kca0rlhlvhgnw3r3p4sh42zwvhrhcjdwz65ykp14jxybfhc8in"; depends=[data_table ggplot2 gridExtra reticulate]; };
   PrevMap = derive2 { name="PrevMap"; version="1.5.4"; sha256="12cw4dmbsnx9c4y5l5k0paqn1wwbxy9ciw46r254n5rd275fhksh"; depends=[lme4 Matrix maxLik numDeriv pdist raster splancs truncnorm]; };
   PriceIndices = derive2 { name="PriceIndices"; version="0.0.6"; sha256="18ci20z07xx7q1mr007hwn2sx65fmvli9w23brgvbpa1wyhh3lhg"; depends=[caret dplyr ggplot2 lubridate reclin reshape strex stringr xgboost]; };
@@ -3756,7 +3770,7 @@ in with self; {
   PriorGen = derive2 { name="PriorGen"; version="1.1.2"; sha256="0qvdqqdy7wdwwcq95mkgfyf7xf6xlpwdfs3gq299yyv2ba57flnm"; depends=[rootSolve]; };
   PrivateLR = derive2 { name="PrivateLR"; version="1.2-22"; sha256="0d142fa3wk7yadvs8jszajs6hq9m03p0j6h5r4pbw7j0d1l72hgc"; depends=[]; };
   ProAE = derive2 { name="ProAE"; version="0.2.8"; sha256="1dx5ddkvd8a8z53y1bvx7w7iljyzg15g1gcwqza0skc14s62p4zk"; depends=[DescTools dplyr ExactCIdiff ggnewscale ggplot2 ggtext gridExtra Hmisc magrittr]; };
-  ProDenICA = derive2 { name="ProDenICA"; version="1.0"; sha256="04gnsnd0xzw3bfbssdp06bar0lk305ry2c97pmwxgiz3ay88dfsj"; depends=[gam]; };
+  ProDenICA = derive2 { name="ProDenICA"; version="1.1"; sha256="0g1ldrb6gsrgm09xjl0dynqaargkj1in8k39rnpanf4zzyrj5181"; depends=[gam]; };
   ProFit = derive2 { name="ProFit"; version="1.3.3"; sha256="0jrw0v7dg5mf4zxg7pqybh9qzsiqb3nnz8g5qlc4iz73mhr9gm2b"; depends=[celestial checkmate cubature FITSio LaplacesDemon magicaxis RColorBrewer]; };
   ProFound = derive2 { name="ProFound"; version="1.14.1"; sha256="1p2mdy0z5p7as1x6vc572wjcl6f0acwgpvb39rmk2273kb1ldwz5"; depends=[celestial data_table FITSio foreach magicaxis RColorBrewer Rcpp]; };
   ProPublicaR = derive2 { name="ProPublicaR"; version="1.1.1"; sha256="08bhqm64r79ywj394l1ywwcsjc79wzi85wlbp5xnr49bxzaysfp1"; depends=[config dplyr httr lubridate stringr]; };
@@ -3802,8 +3816,8 @@ in with self; {
   Q7 = derive2 { name="Q7"; version="0.1.0"; sha256="09jhqraajvlm7iiri4f7xlllkcx8q5h3sg472ishj47wg5qf2rym"; depends=[magrittr]; };
   QAIG = derive2 { name="QAIG"; version="0.1.7"; sha256="04ygizvplvrzhf1p0vwj75x7k8sl0ym5zbrsvn63y983awih2p6i"; depends=[Formula stringr]; };
   QBAsyDist = derive2 { name="QBAsyDist"; version="0.1.2"; sha256="1yql29npaq9yz02bv3hqf5m2mhscjms7qqf4vlaxm8s665rxcxad"; depends=[ald Deriv GoFKernel locpol nloptr quantreg scdensity zipfR]; };
-  QBMS = derive2 { name="QBMS"; version="0.6"; sha256="083asm4qck29n7mm0b39h1gv7mbsa62w7xn16vy7cmyim9si5h3z"; depends=[httr jsonlite]; };
-  QCA = derive2 { name="QCA"; version="3.14"; sha256="1c4fkrvr066hf5kl1s1l02gcjcxfjsfs7blwamgmjdk6hq4hgsyh"; depends=[admisc shiny venn]; };
+  QBMS = derive2 { name="QBMS"; version="0.7.0"; sha256="14mq0l2ih6vchn7q2ssscxyrhrvfic3hnb4qyhd6sfy9a8cs8klm"; depends=[httr jsonlite]; };
+  QCA = derive2 { name="QCA"; version="3.15"; sha256="1rijfdslq44w8abamplhj5f0l9jq43jcklcza64rfyxqfavc8mia"; depends=[admisc shiny venn]; };
   QCAcluster = derive2 { name="QCAcluster"; version="0.1.0"; sha256="094p11c9arry793zibr8x3xhpbrym9bfky95nds53g3yliprdd63"; depends=[data_table magrittr plyr purrr QCA rlist stringi testit UpSetR]; };
   QCAfalsePositive = derive2 { name="QCAfalsePositive"; version="1.1.1"; sha256="03qzb6vdnbri52gfx3laz14988p2swdv9m8i5z7gpsv3f3bjrxbp"; depends=[]; };
   QCApro = derive2 { name="QCApro"; version="1.1-2"; sha256="1glfb1x1h05cs07nq5glqvlil58wp3c0kaxi1l7k94y797i8r7hq"; depends=[lpSolve]; };
@@ -3821,6 +3835,7 @@ in with self; {
   QGglmm = derive2 { name="QGglmm"; version="0.7.4"; sha256="0ghvicz4ia1180byj28lmg49889hqhb94g1jrkhm6hnzgqbjnfmd"; depends=[cubature]; };
   QHOT = derive2 { name="QHOT"; version="0.1.0"; sha256="02z0n2jawd6m7bvyvpcy0j13p1c0zm036g62n56xva18qnq5c9lb"; depends=[]; };
   QHScrnomo = derive2 { name="QHScrnomo"; version="2.2.0"; sha256="1g7gx1mhvqnldqwi9dx5f7nxqrra9mgfn5rq467f1nhlv6m2kzn6"; depends=[cmprsk Hmisc rms]; };
+  QI = derive2 { name="QI"; version="0.1.0"; sha256="1r65xq892mga54dfbh5va5zji5d1dx8k0fy611kbdviwqf0dfhx5"; depends=[ggplot2]; };
   QLearning = derive2 { name="QLearning"; version="0.1.1"; sha256="1bx77yxsnzh0ny3ghala5fw54lxzrxqk9s32qk3dzvfbyp4paggn"; depends=[]; };
   QPmin = derive2 { name="QPmin"; version="0.5-1"; sha256="1hfvbi2qfynnkg2pmr7qsw75bmijwglnxchbzxcbikm5yw3sd2mz"; depends=[Matrix]; };
   QQperm = derive2 { name="QQperm"; version="1.0.1"; sha256="06xhv54zgnx8i22j23a0dqxhh7my416idpkkwq93qd1rdzgamzc8"; depends=[]; };
@@ -3831,10 +3846,10 @@ in with self; {
   QRank = derive2 { name="QRank"; version="1.0"; sha256="1f924r5bf5vjfl12hk1n5m3f94g30f6vmvzq2bn8295dflyndck0"; depends=[quantreg]; };
   QRegVCM = derive2 { name="QRegVCM"; version="1.2"; sha256="0fcydkf6r2qxd59ylr8vn76bkxks91v58gfzvq3rjd5mqf9vsaaq"; depends=[quantreg SparseM truncSP]; };
   QSARdata = derive2 { name="QSARdata"; version="1.3"; sha256="0dhldnh0jzzb4assycc0l14s45ymvha48w04jbnr34lrwgr9krh4"; depends=[]; };
-  QTL_gCIMapping = derive2 { name="QTL.gCIMapping"; version="3.3.1"; sha256="01lxa52fm6pzicjg252fxqy9hcj0rf511nzc3fcq25cfi9cly0v1"; depends=[data_table doParallel foreach glmnet MASS openxlsx qtl Rcpp stringr]; };
+  QTL_gCIMapping = derive2 { name="QTL.gCIMapping"; version="3.4"; sha256="17f2xmgklbi8kicv7v951zm3bf1q4bdx9lcfbxpac3i7xm985fgr"; depends=[data_table doParallel foreach glmnet lars MASS openxlsx qtl Rcpp readxl stringr]; };
   QTL_gCIMapping_GUI = derive2 { name="QTL.gCIMapping.GUI"; version="2.1.1"; sha256="0a155vl869i3li2i67b89p056x50ycqp9yk0ll5g3fp3xcdl80zs"; depends=[data_table doParallel foreach glmnet MASS openxlsx qtl QTL_gCIMapping Rcpp shiny stringr]; };
   QTLEMM = derive2 { name="QTLEMM"; version="1.1.0"; sha256="0gwxrsbpbn1v3z0yal8qrnamzq1gjax9d9nja8bbcgw8cbf3gamf"; depends=[mvtnorm]; };
-  QTLRel = derive2 { name="QTLRel"; version="1.8"; sha256="0lalxscwyih6657ir4c24gsc09a70pkmd2s6li603bk75i8lx5vl"; depends=[gdata lattice]; };
+  QTLRel = derive2 { name="QTLRel"; version="1.9"; sha256="10lydj6zgijk2dxkncp35vrvic1v2s3v1zv44w7xi1i3wb3ifksx"; depends=[gdata lattice]; };
   QTOCen = derive2 { name="QTOCen"; version="0.1.1"; sha256="0wlbxk1rd56k02jf3pfzbx6xx5mmf6sb7gvds0067cvb7m42ghcr"; depends=[MatrixModels quantreg Rdpack rgenoud survival]; };
   QUALYPSO = derive2 { name="QUALYPSO"; version="1.2"; sha256="0hp99hhlv7rijn34ncshpvbnmhbx3f5km7bzr0z7yr7l3j1vx3sc"; depends=[doParallel expm foreach MASS Rfast]; };
   QWDAP = derive2 { name="QWDAP"; version="1.1.11"; sha256="1kin58d2kaxy1zyzln95xxj8lrjir3zq9gfc2c026sq2pcaqlxkv"; depends=[CORElearn MTS pls progress StepReg]; };
@@ -3844,11 +3859,11 @@ in with self; {
   Qtools = derive2 { name="Qtools"; version="1.5.5"; sha256="0kmd5cd299gjw5qbk8yhlzxcwa3ykrr36zcpk773mykyz57q46hb"; depends=[boot glmx gtools MASS Matrix np numDeriv quantreg Rcpp RcppArmadillo]; };
   QuACN = derive2 { name="QuACN"; version="1.8.0"; sha256="1597blp8gqc5djvbgpfzi8wamvy0x50wh5amxj9cy99qa0jlglxi"; depends=[combinat graph igraph RBGL]; };
   QuClu = derive2 { name="QuClu"; version="0.1.0"; sha256="0a2malh9vz5jcjgdx4d98k0c61vz3ip8ynqh5i85x8hzcby11qgj"; depends=[]; };
+  QuESTr = derive2 { name="QuESTr"; version="0.1.1"; sha256="1vvvraqgy570dj86km4qpiax4a0zhfym94am0fn6ld43p3iixg02"; depends=[ggplot2 kernlab]; };
   QuadRoot = derive2 { name="QuadRoot"; version="0.2.0"; sha256="0p6d8s3qrynaky3xv7srh7qrpm6b0xrlq70m8gqsfddlgrvxl668"; depends=[]; };
   QualInt = derive2 { name="QualInt"; version="1.0.0"; sha256="1ms96m3nz54848gm9kdcydnk5kn2i8p1rgl2dwn7cqcqblfvsr4j"; depends=[ggplot2 survival]; };
   Quandl = derive2 { name="Quandl"; version="2.11.0"; sha256="1bsba6blbcq0my8wm0qcy0qabbgx344gjljnjwaqfrqkjcphf5xs"; depends=[httr jsonlite xts zoo]; };
   QuantNorm = derive2 { name="QuantNorm"; version="1.0.5"; sha256="1hds9ybwsgnmcpa22vlmgdq02ilhn0c6a7z1qjiq4i5iqjd4gwf6"; depends=[]; };
-  QuantPsyc = derive2 { name="QuantPsyc"; version="1.5"; sha256="1i9bh88r8zxndzjqsj14qw64gnvm5a9kvhjhzk3qsrvl3qzjgh93"; depends=[boot MASS]; };
   QuantTools = derive2 { name="QuantTools"; version="0.5.7.1"; sha256="1nkf7ihzfwgz7svh1jybgcvqwbim2dqzi00l4m9pma463va4q19d"; depends=[data_table fasttime R6 Rcpp RCurl readxl]; };
   QuantileGH = derive2 { name="QuantileGH"; version="0.1.1"; sha256="0ah1l5zzlsda2s6x0i4rcln8smg52jwpxcaf52zfarfbw30a88jp"; depends=[ggplot2 goftest LaplacesDemon rstpm2 scales tclust]; };
   QuantileGradeR = derive2 { name="QuantileGradeR"; version="0.1.1"; sha256="1zwc6bg636gk8zll7wpznd3pzl611hcj2fmzp8b9505rra13p0g2"; depends=[]; };
@@ -3878,7 +3893,7 @@ in with self; {
   R2HTML = derive2 { name="R2HTML"; version="2.3.2"; sha256="00kxny7hajs9r2kw63qk7d03ggdxx2j1g8vbrmzp806y8aczvik9"; depends=[]; };
   R2MLwiN = derive2 { name="R2MLwiN"; version="0.8-7"; sha256="1r12b0gy5747acn0jyf3n2f210a51pgl6vkk1rd4fbbj0dk5bwmf"; depends=[broom coda digest doParallel foreach foreign lattice Matrix memisc R2WinBUGS texreg tibble]; };
   R2OpenBUGS = derive2 { name="R2OpenBUGS"; version="3.2-3.2.1"; sha256="0689aqa034xkbyy46m3sjanjkxrii4ma1crm5qw5kaqbx7dg153c"; depends=[boot coda]; };
-  R2SWF = derive2 { name="R2SWF"; version="0.9-6"; sha256="0ag4w9cgxwfxfpywq3nv04n2mlwj07r04pg48pmlvkw0h7fjlfjl"; depends=[sysfonts]; };
+  R2SWF = derive2 { name="R2SWF"; version="0.9-7"; sha256="1pr3klgb731zwhwkz2c0wj2mvhy5qixzg1x451ik683ycni81qlw"; depends=[sysfonts]; };
   R2WinBUGS = derive2 { name="R2WinBUGS"; version="2.1-21"; sha256="0k8k214x712vjj2k1am4zzf6scccs3b98ysiz4lwxpzm818wp1ps"; depends=[boot coda]; };
   R2admb = derive2 { name="R2admb"; version="0.7.16.2"; sha256="1gwp850ff76lqqn6amj75rjqb1szk6x2vlhqgwng4z45i56bmdf7"; depends=[coda lattice]; };
   R2jags = derive2 { name="R2jags"; version="0.7-1"; sha256="0si2f0lmnpjcsmy54k51kwj1fkx24dshiidv46h8j2xjq1hp429v"; depends=[abind coda R2WinBUGS rjags]; };
@@ -3922,7 +3937,6 @@ in with self; {
   RBPcurve = derive2 { name="RBPcurve"; version="1.2"; sha256="0zkfvnhm780vid4qqdrx9mnc6jxxrmrnq47pqvk35rm3m4l96782"; depends=[BBmisc checkmate mlr shape TeachingDemos]; };
   RBaseX = derive2 { name="RBaseX"; version="1.0.0"; sha256="0nj9sc14bc0m0xkdqnc3h7frcn4y0wbdpr6wnd8kvnipcrr3jcrl"; depends=[data_table dplyr httr magrittr openssl pingr R6 RCurl rex stringr tibble]; };
   RBesT = derive2 { name="RBesT"; version="1.6-3"; sha256="0nbqkxsi6di4sd26l9c212sjs2lsvnabwbnf0cx00hmxrxzy0lhl"; depends=[assertthat bayesplot BH checkmate dplyr Formula ggplot2 mvtnorm Rcpp RcppEigen RcppParallel rstan rstantools StanHeaders]; };
-  RBestMatch = derive2 { name="RBestMatch"; version="0.1.1"; sha256="1nx1dnhlqi4gad1yw6h91av911wv6dap252hza98dgjysv46spya"; depends=[DiPs mvnfast plyr]; };
   RBitmoji = derive2 { name="RBitmoji"; version="0.0.2"; sha256="1v9qj3vmqsvnccsy735nbflmd81183h2flm0f1ckd4kl08r2fr3f"; depends=[getPass httr jsonlite png RCurl]; };
   RBtest = derive2 { name="RBtest"; version="1.1"; sha256="09da721zfj6cw4i9gifn5f0sv3nj0qfjb96c5w9g9gzx55ihssnk"; depends=[mice nnet psych]; };
   RCA = derive2 { name="RCA"; version="2.0"; sha256="0pidb5czrf0dc3ywy6cwm5akgsc62pvf94kfyxibzmd1favykx1h"; depends=[gplots igraph]; };
@@ -3930,28 +3944,29 @@ in with self; {
   RCALI = derive2 { name="RCALI"; version="0.3.1"; sha256="0hc7h55qi8bpmp9rfh1wgxqs28kbs4yqxch2jlgl42vk5383askq"; depends=[splancs]; };
   RCBR = derive2 { name="RCBR"; version="0.5.9"; sha256="1nxaf485jfg1kr80bxwczf27xz5ab7yz61c5l3bg9192jdf432ql"; depends=[Formula Matrix mvtnorm orthopolynom REBayes Rmosek]; };
   RCCPCA = derive2 { name="RCCPCA"; version="0.1.0"; sha256="0nix6d8cxi64qfnsk00rpzq9kf07a5skc8zkvywl2y2aw6wrlvnd"; depends=[]; };
+  RCDT = derive2 { name="RCDT"; version="1.0.0"; sha256="1l72dbgxkkhv4v8mjrz1zsq3jhvan4krgkjbjyd9hd5faj7hhrcy"; depends=[gplots randomcoloR Rcpp RcppArmadillo]; };
   RCEIM = derive2 { name="RCEIM"; version="0.3"; sha256="1kil5r88b6lf8vxmswz0wn0hhjxjm8jmlcl5kxjwl6fwjyy2z120"; depends=[]; };
   RCGLS = derive2 { name="RCGLS"; version="1.0.3"; sha256="12mmfs91fmhdxdxr7q16hnjlg7bz2bbkf8chld4cyf8clnflzvsj"; depends=[ncdf4 raster RCurl sp]; };
-  RCLabels = derive2 { name="RCLabels"; version="0.1.0"; sha256="0p41i2cxv81g57xv1vba2dzn2xqpv7gy04wpyaxg325xh3zf1mf0"; depends=[assertthat Hmisc magrittr purrr]; };
+  RCLabels = derive2 { name="RCLabels"; version="0.1.1"; sha256="1nvjq40labgrrn3lbyvnk9zir0ghgxkqrniddp4w7wffsfz4dj00"; depends=[assertthat Hmisc magrittr purrr]; };
   RCMinification = derive2 { name="RCMinification"; version="1.0"; sha256="1n8rb5lz0bansggma8gs45xbmmzh98xcsg1vcwwviv2zgq8ww7jf"; depends=[]; };
-  RCPA3 = derive2 { name="RCPA3"; version="1.0.1"; sha256="07avk7m8w8ky72c5dq8bkr44vlvgglhfzgvx7s8cjbjn01m7l64j"; depends=[beepr car descr haven Hmisc knitr lmtest survey weights]; };
+  RCPA3 = derive2 { name="RCPA3"; version="1.1.1"; sha256="0zq700g7gwnf3rw0zd4m4h0rhp10d4ar5fdxwzbkn708c2m4znxg"; depends=[beepr car descr haven Hmisc knitr lmtest survey weights]; };
   RCPmod = derive2 { name="RCPmod"; version="2.190"; sha256="1r24g8fcizyqzgp0da90sxpwalgcsgz2b168j2smpylxraiqb037"; depends=[fishMod glmnet gtools MASS]; };
   RCRnorm = derive2 { name="RCRnorm"; version="0.0.2"; sha256="1mz1jb7mc9c47hbk9flnddny4zir6r2k5qis30iynwqny521l6ln"; depends=[truncnorm]; };
   RCSF = derive2 { name="RCSF"; version="1.0.2"; sha256="1hjl7qsdgcddn3nh2likndhfhnw9gj3453xqq96gddgb1y0m3bh1"; depends=[Rcpp]; };
   RCT = derive2 { name="RCT"; version="1.1.1"; sha256="01ir440zgxjvzwn5vazxib0w14nqy7lk7glwvba39xqghb3xw85z"; depends=[broom dplyr forcats ggplot2 glue lfe magrittr MASS pracma purrr rlang stringr tidyr tidyselect]; };
-  RCarb = derive2 { name="RCarb"; version="0.1.4"; sha256="0mlas45ypwdkk6gr35fhsrjgn8am06ikh123drmky1yj1kkg6p76"; depends=[interp matrixStats]; };
+  RCarb = derive2 { name="RCarb"; version="0.1.5"; sha256="1ww10kzc6lhhfsipfdf005ic2wf6kmr5dyahsj4bi2jp2fbh2g0m"; depends=[interp matrixStats]; };
   RCassandra = derive2 { name="RCassandra"; version="0.1-3"; sha256="0xa241s81cyw6lfjb522f2mlyrd0gav9yz3z5jab9hpdpgg9ri38"; depends=[]; };
   RChest = derive2 { name="RChest"; version="1.0.3"; sha256="112y6g1lyk3wky825g77sy49wgqs8vqdi90lrp0qza6cqjg381mq"; depends=[Rdpack reticulate]; };
   RChronoModel = derive2 { name="RChronoModel"; version="0.4"; sha256="0haqxwic160pnnm90bgchzxmsdwmi6m97i9xrh8js8bp2xn76l5f"; depends=[hdrcde]; };
   RCircos = derive2 { name="RCircos"; version="1.2.2"; sha256="1z0aam60p1b6q7csn50rrwdilm07myr05bw54s9ah8idzyxc7gav"; depends=[]; };
+  RClickhouse = derive2 { name="RClickhouse"; version="0.6.3"; sha256="1xvx098amys1816lkb1gdz5wz5lp58dw9bp9f4dlgbzjdl027ns5"; depends=[bit64 DBI dbplyr dplyr Rcpp]; };
   RClimacell = derive2 { name="RClimacell"; version="0.1.4"; sha256="03w2psiix74d2cbaz06bk77pclc6lfjhfdi057rdmw4nv3xv1fqi"; depends=[assertthat dplyr httr lubridate magrittr rlang stringr tibble tidyr tidyselect]; };
-  RClone = derive2 { name="RClone"; version="1.0.3"; sha256="1zcb7s88qkpcbkhvawggsckzs5d9s9l9kr2c2njrr86ymq7lgwdj"; depends=[]; };
   RColetum = derive2 { name="RColetum"; version="0.2.1"; sha256="1hgk9p234m3w49sw2j2rg8c14z3gz1mabvb69b1bxrg7f1mz9slg"; depends=[dplyr httr jsonlite]; };
   RColorBrewer = derive2 { name="RColorBrewer"; version="1.1-2"; sha256="1pfcl8z1pnsssfaaz9dvdckyfnnc6rcq56dhislbf571hhg7isgk"; depends=[]; };
   RConics = derive2 { name="RConics"; version="1.0"; sha256="1lwr7hi1102gm8fi9k5ra24s0rjmnkccihhqn3byckqx6y8kq7ds"; depends=[]; };
   RCreliability = derive2 { name="RCreliability"; version="0.1.0"; sha256="083n6ix9yjnv4aafp11qac891gdhk62mhxmwkx9z3i0sxddwdb6r"; depends=[mgcv sandwich]; };
   RCriteo = derive2 { name="RCriteo"; version="1.0.2"; sha256="1vyhnblw9zr5h6c25lf76p9vn95k8vr0hpq1sjkccdwl9yvsyhfy"; depends=[httr plyr RCurl XML]; };
-  RCurl = derive2 { name="RCurl"; version="1.98-1.5"; sha256="13b9vlvknxlcmqgaaxb33srvyshsh59zmdsz4pfgz24i0fd7q63k"; depends=[bitops]; };
+  RCurl = derive2 { name="RCurl"; version="1.98-1.6"; sha256="18nif4phr5vfhri07mnchiym0qfm31ak9nxvb2v9ac84mij6idbc"; depends=[bitops]; };
   RCytoGPS = derive2 { name="RCytoGPS"; version="1.2.1"; sha256="1ppxyrm9h09kk6lnr6yg3n3xl08l9zp4rqliz92k5h42hmgj6f02"; depends=[rjson]; };
   RCzechia = derive2 { name="RCzechia"; version="1.9.1"; sha256="1xwzbbap6h02z7jpzrgh0lmrzxssdjh0gr8fk0ivnl8zgfqrfk86"; depends=[curl httr jsonlite magrittr sf]; };
   RDIDQ = derive2 { name="RDIDQ"; version="1.0"; sha256="09gincmxv20srh4h82ld1ifwncaibic9b30i56zhy0w35353pxm2"; depends=[]; };
@@ -3981,15 +3996,15 @@ in with self; {
   RESS = derive2 { name="RESS"; version="1.3"; sha256="1vddmifp47ia0sk35rnjpvw6gr9ygygafqczq268h17i1qs6ar22"; depends=[]; };
   REST = derive2 { name="REST"; version="1.0.1"; sha256="16v89z7p9qkg7bsypf9vkrnbmb2n7gw3fqnfzbyxwj496wzxdv1x"; depends=[Rcmdr]; };
   REdaS = derive2 { name="REdaS"; version="0.9.3"; sha256="09mmcvzgsxvrcq7sq3pw81pxgb1493p8lx8p5hhz8i42vshza6pn"; depends=[]; };
-  REddyProc = derive2 { name="REddyProc"; version="1.3.1"; sha256="1n9ykffn7sw6y7ywg0hl9gldn9nrzjmis03ikfjjd8khz4jrqhgy"; depends=[bigleaf dplyr magrittr mlegp purrr Rcpp readr rlang solartime tibble]; };
+  REddyProc = derive2 { name="REddyProc"; version="1.3.2"; sha256="1irclh991wp1ns2wb9dd88kqd5vg1kd8vk83a7w0kjpf20yqnkvp"; depends=[bigleaf dplyr magrittr purrr Rcpp readr rlang solartime tibble]; };
   REddyProcNCDF = derive2 { name="REddyProcNCDF"; version="1.1.4"; sha256="099f4mzqj7pjlrs8rdjg44mjm0058x3pj2imrfvk892hmlk4r53p"; depends=[REddyProc]; };
   REndo = derive2 { name="REndo"; version="2.4.3"; sha256="1h7ycxwklb9dbb8q0g9cagjl93jhbjc86l25s1imdp1rqfsv8i6c"; depends=[AER corpcor data_table Formula lme4 lmtest Matrix mvtnorm optimx Rcpp RcppEigen]; };
   RFCCA = derive2 { name="RFCCA"; version="1.0.7"; sha256="0v0himz0zz6f52vvc5h33qiij0101zgihzwak8cw5193xzsfmr4g"; depends=[CCA PMA]; };
   RFGLS = derive2 { name="RFGLS"; version="1.1"; sha256="13ggxj74h5b2hfhjyc50ndxznkvlg18j80m78hkzwh25d3948fsk"; depends=[bdsmatrix Matrix]; };
-  RFLPtools = derive2 { name="RFLPtools"; version="1.9"; sha256="0vcxlvfhm6sksjs7zx45jss31310fvglzaj948j49xhf08rik0iz"; depends=[RColorBrewer]; };
+  RFLPtools = derive2 { name="RFLPtools"; version="2.0"; sha256="07hw0hyyxqy31qakkb410gb3i0g5jvpmigv5cqhxqss2cwzpch0d"; depends=[RColorBrewer]; };
   RFOC = derive2 { name="RFOC"; version="3.4-6"; sha256="0cs5wmpvrlag9aisbfiwkvwcb3skv5z4sawl30krmsq49mzj7yhd"; depends=[GEOmap MASS RPMG RSEIS splancs]; };
   RFclust = derive2 { name="RFclust"; version="0.1.1"; sha256="0030d6831lvlhy7k9q5pin1jarzz4z242wncfsa520md1kvqs77d"; depends=[ConsensusClusterPlus iCluster randomForest]; };
-  RFishBC = derive2 { name="RFishBC"; version="0.2.3"; sha256="1xhjsinb6dfr1zzzyvawc6bb10dnr3nbx86mi6lrzav42sbq31ni"; depends=[cli clisymbols crayon readbitmap rlang settings stringr tidyr withr]; };
+  RFishBC = derive2 { name="RFishBC"; version="0.2.4"; sha256="1wh1j5lciff1vgjwrmc2hhr0yfq289l6k917pzhpl5bk6r4ml0fs"; depends=[cli clisymbols crayon readbitmap rlang settings stringr tidyr withr]; };
   RFmerge = derive2 { name="RFmerge"; version="0.1-10"; sha256="1gcdd0a0czimzmzq2izskdaj26cc7qchrwlhssvnh5k59yx54r4l"; depends=[pbapply randomForest raster sf sp zoo]; };
   RFormatter = derive2 { name="RFormatter"; version="0.1.1"; sha256="0jmzdc2cl4vvffsyfwp493fiygh9xinhv970qxp1667rw8wlap8l"; depends=[formatR]; };
   RFpredInterval = derive2 { name="RFpredInterval"; version="1.0.5"; sha256="1ri62dfgwsbgrvjx7qn4mbv1p0mk2ynkrnw9s1klv31p2431rli5"; depends=[data_table data_tree DiagrammeR hdrcde ranger]; };
@@ -3997,7 +4012,6 @@ in with self; {
   RGA = derive2 { name="RGA"; version="0.4.2"; sha256="0pjizgvrh0gbjlyxlb3v93nhigg8rpq3mziv1qlp6r0s5y7cmpi9"; depends=[httr jsonlite lubridate plyr]; };
   RGBM = derive2 { name="RGBM"; version="1.0-8"; sha256="0xd64g07y808nzs4zvbx6bxdpbj2ndqg6yzc3p0l43pxm4hyxva0"; depends=[doParallel foreach plyr]; };
   RGCCA = derive2 { name="RGCCA"; version="2.1.2"; sha256="0zcxakqnmih0243y5b6r9nmcfanzxd6q344pd5bca5pnm3y43wr0"; depends=[Deriv MASS]; };
-  RGCxGC = derive2 { name="RGCxGC"; version="1.1-2"; sha256="03ihqra8q50a98adgxrx8l7js963f41kg2fy3lxzh9zma4gzj62q"; depends=[colorRamps mixOmics ptw Rdpack RNetCDF]; };
   RGE = derive2 { name="RGE"; version="1.0"; sha256="1ild1if10xicfapfcmydz1cgvn5fyydrik8qclb90i95bl9bs4ia"; depends=[coda Matrix MatrixModels]; };
   RGENERATE = derive2 { name="RGENERATE"; version="1.3.7"; sha256="0w6hqrf2lr6qz79skml2vjpfwfv5vxj94rghxxa3rp9dqzhi7rc0"; depends=[magrittr RMAWGEN]; };
   RGENERATEPREC = derive2 { name="RGENERATEPREC"; version="1.2.9"; sha256="0bnw77vny61pkhp9pb3v3ckz6immm4pp9f7qzyhc97646fci9ysl"; depends=[blockmatrix copula Matrix RGENERATE RMAWGEN stringr]; };
@@ -4035,14 +4049,14 @@ in with self; {
   RImpact = derive2 { name="RImpact"; version="1.0"; sha256="010bdq6r2fv4rs78kl1ixnw1di39v90ckh8bblzi0wv4adlbaza4"; depends=[]; };
   RInSp = derive2 { name="RInSp"; version="1.2.4"; sha256="1rfikmrz1y7sx9qwsqh5ifqryf6218n9dbhfmk2w2vl2pdgw4xyr"; depends=[]; };
   RInside = derive2 { name="RInside"; version="0.2.16"; sha256="03iabanmj5xkgq7r1n1rkmzjf2zz484637nmd1qg61ga53hsvr3s"; depends=[Rcpp]; };
-  RItools = derive2 { name="RItools"; version="0.1-17"; sha256="1shcvkgsyjk9jmpf7icj1zjlvmqa11scmymc8cycnffax604frbm"; depends=[abind SparseM survival svd xtable]; };
+  RItools = derive2 { name="RItools"; version="0.1-18"; sha256="0a591xm1nxrlhx3r6yss0ii0rv5gd6nfv4yzbmfzxjjaw3c8aiki"; depends=[abind SparseM survival svd xtable]; };
   RJDBC = derive2 { name="RJDBC"; version="0.2-8"; sha256="1qfq1vjlxhg3hmb1169zkss7kng74jhjninqkfr3cca8x1fq9593"; depends=[DBI rJava]; };
   RJDemetra = derive2 { name="RJDemetra"; version="0.1.9"; sha256="0av3yqibyipxvch5p2zv9r82pvpvl406nxd5pkm4pnbjndw09j3s"; depends=[rJava]; };
   RJSDMX = derive2 { name="RJSDMX"; version="2.3-3"; sha256="02lbg82g4abng5vcn2g8ghvmg69q35my8smnbvd09yvha8hb49ps"; depends=[rJava zoo]; };
   RJSONIO = derive2 { name="RJSONIO"; version="1.3-1.6"; sha256="17x0ayk7daprbc8w2hvb2jl9mfnw4dic9yc3sr5adcjqfzmcklc2"; depends=[]; };
   RJSplot = derive2 { name="RJSplot"; version="2.7"; sha256="02q5isc137nx7qil2p3903xfsjwk54507rs72dfaiy6a8scys5j9"; depends=[]; };
   RJafroc = derive2 { name="RJafroc"; version="2.0.1"; sha256="1vrjnqn1lv10945ba29zjlbkh3zyw28ppv4093v24lirw8vzmjp4"; depends=[bbmle binom dplyr ggplot2 mvtnorm numDeriv openxlsx Rcpp readxl stringr]; };
-  RJcluster = derive2 { name="RJcluster"; version="3.2.3"; sha256="01cbq49iiyqhb6xdln0h1mv4bcx4sphb75xbd8q0d1m37zd01v56"; depends=[foreach infotheo matrixStats mclust profvis Rcpp RcppArmadillo rlang]; };
+  RJcluster = derive2 { name="RJcluster"; version="3.2.4"; sha256="157dmi5gksq7s16ip4n9j5bj9s9bawl078rh13s1xxyr6f51yp09"; depends=[foreach infotheo matrixStats mclust profvis Rcpp RcppArmadillo rlang]; };
   RKEA = derive2 { name="RKEA"; version="0.0-6"; sha256="1dncplg83b4zznh1zh90wr8jv5259cy93imrry86c5kqdijmhrrp"; depends=[rJava RKEAjars tm]; };
   RKEAjars = derive2 { name="RKEAjars"; version="5.0-4"; sha256="1j4643xc8k3zy4rv0h8dd154jafihnjr43wzz3d93j11g2w9xhq3"; depends=[rJava]; };
   RKEEL = derive2 { name="RKEEL"; version="1.3.3"; sha256="1m9jxi7nwkjaq172rx28fk73i144bny2h4aliqkvg2ffsdjyi685"; depends=[arules doParallel foreach gdata Matrix pmml R6 rJava RKEELdata RKEELjars XML]; };
@@ -4051,20 +4065,20 @@ in with self; {
   RKHSMetaMod = derive2 { name="RKHSMetaMod"; version="1.1"; sha256="1h8gqqfmlrzyj4n997yn13vqpaw2kwzl45gscy3fdhskzmyg0ss3"; depends=[Rcpp RcppEigen RcppGSL]; };
   RKUM = derive2 { name="RKUM"; version="0.1.1"; sha256="1w0v6l61dm7xixnyywsc7xziixz7k9r1ja26zcy77nry5kn6v60q"; depends=[]; };
   RKelly = derive2 { name="RKelly"; version="1.0"; sha256="0mkpc95j67rg2gcj2fc4w8kv4v31cpiyvh660y8kc2fjr5q4aj3l"; depends=[]; };
-  RKorAPClient = derive2 { name="RKorAPClient"; version="0.7.1"; sha256="0caqj4dj6pnjzkaa3xjxblwwypff3fksv6cgkg7dxg0qznkyac7g"; depends=[broom dplyr ggplot2 highcharter httr jsonlite keyring lubridate magrittr PTXQC purrr R_cache stringr tibble tidyr urltools]; };
+  RKorAPClient = derive2 { name="RKorAPClient"; version="0.7.2"; sha256="0rgk3bpxpdxqjgkbp75cfyykkzgz9fl8mfz504ng0j3mpj0mzaig"; depends=[broom curl dplyr ggplot2 highcharter httr jsonlite keyring lubridate magrittr PTXQC purrr R_cache stringr tibble tidyr urltools]; };
   RLRsim = derive2 { name="RLRsim"; version="3.1-6"; sha256="1wkkibr250frsbfq70m9jdrylxb492zibf5w03z6zis98pjffssp"; depends=[lme4 mgcv nlme Rcpp]; };
   RLT = derive2 { name="RLT"; version="3.2.4"; sha256="1vycsi213pcy5x9qpvim0nbsx4sk2125bficssv9v154w2xrgvf8"; depends=[]; };
   RLeafAngle = derive2 { name="RLeafAngle"; version="1.0"; sha256="1anks22hn6qpac556p99kilkhc80h572dvcyz3wj1nqffdrhgrh3"; depends=[]; };
   RLogicalOps = derive2 { name="RLogicalOps"; version="0.1"; sha256="1qyn80x3x3bb5wgzyzw6pxs8a6q26yq1fkmkz7f5wywsnrj8hzfj"; depends=[rstackdeque stringr]; };
-  RLumCarlo = derive2 { name="RLumCarlo"; version="0.1.7"; sha256="1r70d68y3l43pb47wxhhbgbirnnx0hyaklvphlqrhnlkxp04r4xk"; depends=[abind doParallel foreach khroma magrittr Rcpp RcppArmadillo scatterplot3d]; };
-  RLumModel = derive2 { name="RLumModel"; version="0.2.9"; sha256="15cllm4iywa74bmxlvasy7xkr86c4ghw2ii0656q0413dgasygjr"; depends=[deSolve Luminescence Rcpp RcppArmadillo]; };
+  RLumCarlo = derive2 { name="RLumCarlo"; version="0.1.8"; sha256="0j4c3xfdxmdpkqpvhv8mybslwk4xvwpw6w8khpp8x3q7806z4wyx"; depends=[abind doParallel foreach khroma magrittr Rcpp RcppArmadillo scatterplot3d]; };
+  RLumModel = derive2 { name="RLumModel"; version="0.2.10"; sha256="1klb7zvxksij517bi8xi68bia6y7jlp3ils659mmwdm2w0ljmwa6"; depends=[deSolve khroma Luminescence Rcpp RcppArmadillo]; };
   RLumShiny = derive2 { name="RLumShiny"; version="0.2.3"; sha256="12dc30q41b1vha52mn9rr1m86ykp3yfsyxcxxwklavd60g76b8vd"; depends=[data_table DT googleVis knitr Luminescence markdown RCarb readxl rhandsontable shiny shinydashboard]; };
   RM_weights = derive2 { name="RM.weights"; version="2.0"; sha256="1by1z7gwwx0jjhhvsjkr7f6m7n0x43bj080ah5275cja7xqr5nm6"; depends=[Hmisc psychotools]; };
-  RM2 = derive2 { name="RM2"; version="0.0"; sha256="1v57nhwg8jrpv4zi22fhrphw0p0haynq13pg9k992sb0c72dx70a"; depends=[msm]; };
   RM2006 = derive2 { name="RM2006"; version="0.1.1"; sha256="1bx2y58c8fkpv0d1sn5abxbajks3sbz2v00idnvbp7rw1i05i5q4"; depends=[]; };
   RMAT = derive2 { name="RMAT"; version="0.2.0"; sha256="15bn9smlw9czryh6dvkpqxcp25sqd1vfq2cbs8wpg7nq58xyc6y4"; depends=[dplyr magrittr purrr]; };
   RMAWGEN = derive2 { name="RMAWGEN"; version="1.3.7"; sha256="10hgssy59fcjbv333grpf6f3m7924hav66xxqhdlsdnwix19q7sb"; depends=[chron date vars]; };
   RMBC = derive2 { name="RMBC"; version="0.1.0"; sha256="1fqbr28d09j01rmr9gylzkpvrd6bc9rnjbyzv06hmlx5mmjmzkb4"; depends=[ktaucenters MASS mvtnorm]; };
+  RMCC = derive2 { name="RMCC"; version="0.1.0"; sha256="12ksv4yms1pgk7yj40yjmbc5rz1ai1mn8xd3a4w2pdx0mwjin6sz"; depends=[BH Rcpp]; };
   RMKdiscrete = derive2 { name="RMKdiscrete"; version="0.1"; sha256="0b4adw46sn98qmy4nxv5l5svcjrp5532x7slfhhgsskqx408lzjf"; depends=[]; };
   RMLPCA = derive2 { name="RMLPCA"; version="0.0.1"; sha256="1xzh6fwl71dzdpbqgpkqnmdzdk8rblg6n1ddic5yxxfvzg3bh13x"; depends=[Matrix pracma RSpectra]; };
   RMOA = derive2 { name="RMOA"; version="1.0.2"; sha256="16j01m9drrhxr1vv5lwg3x42jc0ivbm3p2pkjhmsv6m6a87hhggl"; depends=[rJava RMOAjars]; };
@@ -4074,7 +4088,7 @@ in with self; {
   RMTL = derive2 { name="RMTL"; version="0.9"; sha256="08da67wvzmibziqhnlzh43sydaihk4rsq2k5hs6ih3jkkidrhlgv"; depends=[corpcor doParallel foreach MASS psych]; };
   RMThreshold = derive2 { name="RMThreshold"; version="1.1"; sha256="0wkc42vcggib002ad6ch43h6avpdgl12szrrrfd2p0wl72cwn5n1"; depends=[Matrix png]; };
   RMTstat = derive2 { name="RMTstat"; version="0.3"; sha256="1nn25q4kmh9kj975sxkrpa97vh5irqrlqhwsfinbck6h6ia4rsw1"; depends=[]; };
-  RMVL = derive2 { name="RMVL"; version="0.0.4.3"; sha256="039xcwyk3mb9ns5kp6cdp06di9f77a65gfx04rah7qdnfvr7zirg"; depends=[]; };
+  RMVL = derive2 { name="RMVL"; version="0.0.4.4"; sha256="01w649iw62kpyp4a3lyrqcfb8iqcd0v8zwz6aq1cnxhw04hz0c1w"; depends=[]; };
   RMaCzek = derive2 { name="RMaCzek"; version="1.3.5"; sha256="19hb25rl4fmyyaklj0jlvdh41zg9k2d6hkmm4ixvh8y9dbp675c8"; depends=[GA seriation]; };
   RMallow = derive2 { name="RMallow"; version="1.1"; sha256="1s6a3347739rfc8rrh2773b278gcbp8hf5j5psm61fz7bavy9gcj"; depends=[combinat]; };
   RMariaDB = derive2 { name="RMariaDB"; version="1.2.1"; sha256="032zrwqf2w1cfkm0ryblc4sms2y5cl0fzyp0ijlk7kjld04nl5y9"; depends=[bit64 blob DBI hms lubridate plogr Rcpp rlang]; };
@@ -4095,14 +4109,15 @@ in with self; {
   RNHANES = derive2 { name="RNHANES"; version="1.1.0"; sha256="045ykpgxvc22blbp47ysbk6a6x4akjd39pjr114cr23s7f48g6h4"; depends=[dplyr foreign rvest survey xml2]; };
   RNOmni = derive2 { name="RNOmni"; version="1.0.0"; sha256="1zn0yswycvzc3bm5rd7n84b2jbb5rdl66m4x5miz9pv7h6wsckkv"; depends=[plyr Rcpp RcppArmadillo]; };
   RNaviCell = derive2 { name="RNaviCell"; version="0.2"; sha256="15k8hkagn5520fy7x672fy329s2v7l0x44s44f6v7ql9mmg4b635"; depends=[RCurl RJSONIO]; };
-  RNeXML = derive2 { name="RNeXML"; version="2.4.5"; sha256="1wsl4xq9w5bp3wk69dw57bg0qcw1vs6ajwya4p0w1r00ck5pwrib"; depends=[ape dplyr httr lazyeval plyr reshape2 stringi stringr tidyr uuid XML xml2]; };
+  RNeXML = derive2 { name="RNeXML"; version="2.4.6"; sha256="0k56brcg80mvx35hgc5gj8arwba4k7q0075g38qp0qgq9d1b87cs"; depends=[ape dplyr httr lazyeval plyr reshape2 rlang stringi stringr tidyr uuid XML xml2]; };
   RNentropy = derive2 { name="RNentropy"; version="1.2.2"; sha256="0chvmrvpyyghilwb63y6pd1zp94i5qhpv5w19x9nw0ypk86pp2dj"; depends=[]; };
   RNetCDF = derive2 { name="RNetCDF"; version="2.5-2"; sha256="0i5a0v6ajabn59y73sbm5j85ppgpchr1ggm27xl8m4x07jj4dzpq"; depends=[]; };
   RNetLogo = derive2 { name="RNetLogo"; version="1.0-4"; sha256="1z7jp454k197c0zbkn64zmf25wadkiznv3w2csgiz917cbx6xcn1"; depends=[igraph rJava]; };
   RNewsflow = derive2 { name="RNewsflow"; version="1.2.6"; sha256="06hz5fim5ad8kbpc4crs9vdn7k9q5phhzscd46s4xk0b3n0i8wi1"; depends=[data_table igraph Matrix quanteda Rcpp RcppEigen RcppProgress scales stringi tm wordcloud]; };
-  RNifti = derive2 { name="RNifti"; version="1.3.1"; sha256="0bz10ar6hrgkvlzh9j2im24kwi3s2nnax668z40a2wj6s5xghqlr"; depends=[Rcpp]; };
+  RNifti = derive2 { name="RNifti"; version="1.4.0"; sha256="0kkj9dby85iwnlqb7zwrh1xidlvqip7i1mbgckb5qg4b0a3zgibc"; depends=[Rcpp]; };
   RNiftyReg = derive2 { name="RNiftyReg"; version="2.7.0"; sha256="0y7s2zcjjnb9jakdhyd6hmdj9axdpvbnhijs2finnlwc0d09jpz1"; depends=[ore Rcpp RcppEigen RNifti]; };
   ROAuth = derive2 { name="ROAuth"; version="0.9.6"; sha256="0vhsp8qybrl94898m2znqs7hmlnlbsh8sm0q093dwdb2lzrqww4m"; depends=[digest RCurl]; };
+  ROCFTP_MMS = derive2 { name="ROCFTP.MMS"; version="1.0.0"; sha256="022cz5vh79c50r31rxn5fjghl65wn1ns8xdgq3b05hjf9psjvg4x"; depends=[vctrs]; };
   ROCR = derive2 { name="ROCR"; version="1.0-11"; sha256="0amvvrkiflmr3qygrsgrsja4gaf2v6r6h6i2bgpsm8r069vmlf2p"; depends=[gplots]; };
   ROCS = derive2 { name="ROCS"; version="1.3"; sha256="11vdf8701ap6ya7c7kx9jhvg7qfc6vkij3jridna6f4xj384grki"; depends=[poibin rgl]; };
   ROCaggregator = derive2 { name="ROCaggregator"; version="1.0.1"; sha256="1l53z1xz5ww0bdd3pcmscmm4ypg0fdl4a03vv8ya2jk0zzlndlnq"; depends=[magrittr]; };
@@ -4138,7 +4153,7 @@ in with self; {
   ROP = derive2 { name="ROP"; version="1.0"; sha256="12gh83r3hp1qdmw3p5rr1wfhsh90pirx67q456gl9ai6zgd8nkq8"; depends=[ROCR]; };
   ROSE = derive2 { name="ROSE"; version="0.0-4"; sha256="0y3v9zkgaxpv4f4zn22ra1gkkqg5hdz8js47ppciqahfydjbfl3p"; depends=[]; };
   ROlogit = derive2 { name="ROlogit"; version="0.1.2"; sha256="09j9c24f7plzpnnhpmzdi4gapb7w1377ksjwk6i2xpyr4bfsrr5k"; depends=[evd survival]; };
-  ROpenCVLite = derive2 { name="ROpenCVLite"; version="4.52.0"; sha256="1vm50h7ys24az57pbnpgkzkpkdbvhb98rm09yb3z0wvnwyx7k8qv"; depends=[pkgbuild]; };
+  ROpenCVLite = derive2 { name="ROpenCVLite"; version="4.52.1"; sha256="0fwbizw9rb44fqi4hry0s0i44l7bs36wqsjjk49b79728b6sirpy"; depends=[pkgbuild]; };
   ROpenDota = derive2 { name="ROpenDota"; version="0.1.2"; sha256="17s73yj2w5hlpy09ad83m4s2d9shg5h4zg64wvbp1ivyvpp7l308"; depends=[jsonlite RCurl]; };
   ROpenFIGI = derive2 { name="ROpenFIGI"; version="0.2.8"; sha256="0fvd25vsqkgi3jv4s2lnfag5qksyzyb48d7rhfw6z8piz37n4xaj"; depends=[httr jsonlite]; };
   ROpenWeatherMap = derive2 { name="ROpenWeatherMap"; version="1.1"; sha256="0h1yw93v06bx8svhghh1fsrf837qax9896klh64b06djpgg9ngb9"; depends=[httr jsonlite RCurl]; };
@@ -4148,7 +4163,6 @@ in with self; {
   ROptSpace = derive2 { name="ROptSpace"; version="0.2.3"; sha256="18fz285hr4fdkkbs4b13gmwz0sqbgk6di6m3c6ic0wvs35mpmcfz"; depends=[Rcpp RcppArmadillo Rdpack]; };
   ROracle = derive2 { name="ROracle"; version="1.3-1.1"; sha256="1k5w6fi1f83mhlc8hx6y305llcwxl22h6lpkib1yvm4557k1c7zz"; depends=[DBI]; };
   RPANDA = derive2 { name="RPANDA"; version="2.0"; sha256="1xszarf0857msiq27ghq8vz0sr8lziajwssm07k46x7p3jk4rk3b"; depends=[ape bipartite cluster coda deSolve fields fpc glassoFast igraph Matrix mvMORPH phytools picante pspline pvclust raster Rmpfr TESS]; };
-  RPCLR = derive2 { name="RPCLR"; version="1.0"; sha256="03kpyszsjb656lfwx2yszv0a9ygxs1x1dla6mpkhcnqw00684fab"; depends=[MASS survival]; };
   RPEGLMEN = derive2 { name="RPEGLMEN"; version="1.1.1"; sha256="1hm68f6ipiy2518viz182psqgh5krq9aihid0njg4817cyssg95z"; depends=[Rcpp RcppEigen RPEIF]; };
   RPEIF = derive2 { name="RPEIF"; version="1.2.4"; sha256="002f8753gfqx1ddcb60hz7xy6l19zvp3d3arackkqjh26zcw1paj"; depends=[RobStatTM xts zoo]; };
   RPESE = derive2 { name="RPESE"; version="1.2.4"; sha256="0m80b5k0jq0yglb9gnzxl4h8j5y9ir2npni7gdwil2kw6nnhrb3f"; depends=[boot RobStatTM RPEGLMEN RPEIF xts zoo]; };
@@ -4173,10 +4187,11 @@ in with self; {
   RQEntangle = derive2 { name="RQEntangle"; version="0.1.3"; sha256="178haddk8nnscy2vym3k2a3ca9lf6nl7rpjja8lxqdjninvhvwb2"; depends=[iterators itertools]; };
   RQuantLib = derive2 { name="RQuantLib"; version="0.4.15"; sha256="18j3bm5imxbx888pywqhzfbc19b8xlll18jy0g4g8bskqycfqh69"; depends=[Rcpp zoo]; };
   RRBoost = derive2 { name="RRBoost"; version="0.1"; sha256="0zp3csrpi0awk88m6sq5sf5v7j32q5sd4mwv61x6bblg991k404k"; depends=[RobStatTM rpart]; };
+  RRF = derive2 { name="RRF"; version="1.9.3"; sha256="04mvnijxgmjinc6bbasvximbdlw78pldb6ym5dm32ap68jh5bxyy"; depends=[]; };
   RRI = derive2 { name="RRI"; version="1.1"; sha256="0msdc5j5vx4snl8r3q5nn0mw2i80jds5pjykhmigcrx6jzg6h6i7"; depends=[Rcpp RcppArmadillo]; };
   RRMLRfMC = derive2 { name="RRMLRfMC"; version="0.4.0"; sha256="0y8gs9rirrcjb89jqxr7rrp89pjal7lzcscnh4kmabhih3f2d729"; depends=[nnet]; };
   RRNA = derive2 { name="RRNA"; version="1.0"; sha256="14rcqh95ygybci8hb8ays8ikb22g3850s9f3sgx3r4f0ky52dcba"; depends=[]; };
-  RRPP = derive2 { name="RRPP"; version="1.1.2"; sha256="1h40gql8id8a0skvfnc2vra13g76lfhlhks4h7janjg3p4ykymib"; depends=[ape ggplot2 Matrix]; };
+  RRPP = derive2 { name="RRPP"; version="1.2.1"; sha256="0pzm0i250pscgj403s5yfbxn9hyh0kmsrkljf55aa3smycic4hqa"; depends=[ape ggplot2 Matrix]; };
   RRRR = derive2 { name="RRRR"; version="1.1.0"; sha256="0h5r668qn8hp4j4zhxhn4b3lqm138n6kc1c7vf95hmbh4ah6wzf7"; depends=[expm ggplot2 magrittr matrixcalc mvtnorm]; };
   RRTCS = derive2 { name="RRTCS"; version="0.0.4"; sha256="16v6f5yvfq9l1b4h5mr4y0i2k404vdv354yz4k780w79qib7g39p"; depends=[sampling samplingVarEst]; };
   RRate = derive2 { name="RRate"; version="1.0"; sha256="1q3f2gphdf50aijnk5xqfpxcqfd4jq7byb1gpb0vcnaxgi3a9lwm"; depends=[]; };
@@ -4199,14 +4214,14 @@ in with self; {
   RSNNS = derive2 { name="RSNNS"; version="0.4-14"; sha256="081c20dcac8xxb0sp7kwzm4b7h5jrgcxxsfckjbxbda95g5n4qkz"; depends=[Rcpp]; };
   RSPS = derive2 { name="RSPS"; version="1.0"; sha256="0ynxhgnxsf27qm8r5d9lyd59zksnc3kvx35hy25vff8j3bg7fqgi"; depends=[gridExtra lattice plyr]; };
   RSQL = derive2 { name="RSQL"; version="0.1.4"; sha256="0zda6cgsx1bd3xw2r9flsphbkrgma95qqv5vz70f234y9gkmc6v3"; depends=[DBI knitr lgr R6 RSQLite]; };
-  RSQLite = derive2 { name="RSQLite"; version="2.2.9"; sha256="075vsnbkcwpwnn87b06mhbg2fflqhjvbylhbkg0d3v3rl7zg28s4"; depends=[bit64 blob DBI memoise pkgconfig plogr Rcpp]; };
+  RSQLite = derive2 { name="RSQLite"; version="2.2.10"; sha256="1a00i24g4d4gvp7qmivpyfm24yfz4w4wsy2kplgfz0i0j0rzzbh6"; depends=[bit64 blob DBI memoise pkgconfig plogr Rcpp]; };
   RSSL = derive2 { name="RSSL"; version="0.9.5"; sha256="1h94dhs5yl1i7n153rbmj883iz3hql0b0cr12357nk4nvf36yih8"; depends=[cluster dplyr ggplot2 kernlab MASS Matrix quadprog Rcpp RcppArmadillo reshape2 scales tidyr]; };
   RSSOP = derive2 { name="RSSOP"; version="1.1"; sha256="119xrxpaf68qdb2kj2pbaja6im2nbxsgibb1bnlpnc3fcxkmqcsf"; depends=[]; };
   RSSampling = derive2 { name="RSSampling"; version="1.0"; sha256="0p10l7qmksx4ysz1jb84f9nbqzig8wxhwy33yk8hq29nb5i4c9ik"; depends=[LearnBayes]; };
   RSarules = derive2 { name="RSarules"; version="1.0"; sha256="0lrql4q45hyhqbix86ixl12mknnjbz3137gx2zkvqpz91bsk145j"; depends=[arules Matrix]; };
   RSauceLabs = derive2 { name="RSauceLabs"; version="0.1.6"; sha256="1p7hw6vnlg6w5ggmfpc3q3s6n1fikjkjnxzz97jifiy0zwn5dp9i"; depends=[data_table httr jsonlite whisker xml2]; };
   RScelestial = derive2 { name="RScelestial"; version="1.0.3"; sha256="1bxp3xl90s9fblm6d2mmsnws4iv9f3kxj8cs55kmbakz5dq4nqxc"; depends=[Rcpp]; };
-  RSclient = derive2 { name="RSclient"; version="0.7-6"; sha256="0vhj2f7bgjcfbshbprqxqyxv6bxkfzn3gpjp7hqnw72da602igya"; depends=[]; };
+  RSclient = derive2 { name="RSclient"; version="0.7-8"; sha256="0iy2y63yl35im6n8hg77gzfr6mk7z4yi4lpl50mig1jj9rvqw3n5"; depends=[]; };
   RSeed = derive2 { name="RSeed"; version="0.1.60"; sha256="0rvb6w4z5c2wcdgx5w6vv7c8il8d0096pgv3fyvw21ag25z605jc"; depends=[graph RBGL sybil]; };
   RSelenium = derive2 { name="RSelenium"; version="1.7.7"; sha256="1xn5fdbzmq7b1f5fc9ls23g177bmnd8bn4p4d8aafr6z3jwkmfir"; depends=[binman caTools httr openssl wdman XML]; };
   RSentiment = derive2 { name="RSentiment"; version="2.2.2"; sha256="15d1llzxg1apkwykpb7pic2d5lfj9i9a55hab067wrz2yq5jsyfa"; depends=[NLP openNLP plyr stringr]; };
@@ -4220,7 +4235,7 @@ in with self; {
   RSpincalc = derive2 { name="RSpincalc"; version="1.0.2"; sha256="09fjwfz1bzpbca1bpzxj18ki8wh9mrr5h6k75sc97cyhlixqd37s"; depends=[]; };
   RSqlParser = derive2 { name="RSqlParser"; version="1.5"; sha256="0q5wa7bq7m94xx8hcf9p29v5vvkrqzygs3v6yy5xl6jgvshvscvi"; depends=[stringi stringr]; };
   RStata = derive2 { name="RStata"; version="1.1.1"; sha256="1wx6cz4567xkfplybmbwmw25snhlaxn48yi620cv6p5xqv458yp7"; depends=[foreign]; };
-  RStoolbox = derive2 { name="RStoolbox"; version="0.2.6"; sha256="1pq0vxq53x8f0358qfq1rakb59cdfi4micp7hjb9fbz95q9am8mj"; depends=[caret codetools doParallel foreach geosphere ggplot2 raster Rcpp RcppArmadillo reshape2 rgdal rgeos sp XML]; };
+  RStoolbox = derive2 { name="RStoolbox"; version="0.3.0"; sha256="1xjj3bm2brywl02n3d2n8n5zlbv2p98bzbmcx9yj6c2j5rcxhsz7"; depends=[caret codetools doParallel dplyr exactextractr foreach ggplot2 lifecycle raster Rcpp RcppArmadillo reshape2 rgdal sf sp terra XML]; };
   RStorm = derive2 { name="RStorm"; version="1.0"; sha256="1n2kiy9b8w6rnv2zmzbl22grwibf619hadf2cjq1ch7rmbr7qb65"; depends=[plyr]; };
   RStripe = derive2 { name="RStripe"; version="0.1"; sha256="0vp7zsd5xm8rf7196fivb76kkmxfx3gawxlyjhn9xqv92vawivra"; depends=[httr jsonlite RCurl]; };
   RSurveillance = derive2 { name="RSurveillance"; version="0.2.1"; sha256="02jbm9xl2jg9cgq53i1cvj1rivhprgd07k1rxsayzrskvbmvyjpd"; depends=[epiR epitools mc2d]; };
@@ -4231,9 +4246,9 @@ in with self; {
   RTD = derive2 { name="RTD"; version="0.4.1"; sha256="0zsv62hx1y9q5a6rd8ri91ff64671b84jr3f88h0q4yni2mribhr"; depends=[dplyr httr jsonlite purrr RcppMsgPack readr urltools uuid]; };
   RTDE = derive2 { name="RTDE"; version="0.2-1"; sha256="1dkv0g760384jmyypffl5kbnsancjx272j91ffpgmg3lmsy8nhqq"; depends=[]; };
   RTIGER = derive2 { name="RTIGER"; version="0.99.0"; sha256="0g1qccjslf90lsc965klnkdkij16frfk3ig6yjpldh8j2yv66zg3"; depends=[e1071 GenomeInfoDb GenomicRanges ggplot2 IRanges JuliaCall qpdf reshape2 TailRank]; };
-  RTL = derive2 { name="RTL"; version="0.1.91"; sha256="0950mpm6vx2kbx7fgin7131l1icmbibkm0nwcbxggspz4lw0rsrp"; depends=[dplyr fabletools feasts ggplot2 httr jsonlite lubridate magrittr plotly purrr RCurl readr rlang stringr tibble tidyquant tidyr timetk tsibble xts zoo]; };
+  RTL = derive2 { name="RTL"; version="1.0.0"; sha256="19v9npbnr0hp6gk9minil53imjvhqhzzvq3fg3xlg2kdf0d4s87d"; depends=[cli dplyr fabletools feasts ggplot2 glue httr jsonlite lifecycle lubridate magrittr plotly purrr RCurl readr rlang stringr tibble tidyquant tidyr timetk tsibble withr xts zoo]; };
   RTOMO = derive2 { name="RTOMO"; version="1.1-6"; sha256="03jb96ahzgp662vj2v65giv8ss61vad5w26kvq8hg9q06z879jza"; depends=[GEOmap RPMG RSEIS splancs]; };
-  RTTWebClient = derive2 { name="RTTWebClient"; version="0.1.2"; sha256="0r5nkaypym79h5r7n8h932i08awkpzn5fygww0z5q7y5m6kchbmx"; depends=[base64enc data_table digest httr jsonlite withr]; };
+  RTTWebClient = derive2 { name="RTTWebClient"; version="0.1.3"; sha256="1d4dmw7z90nih9bzajlyqgqvpfmpkxwyhw0w56q396kvw8k644cp"; depends=[base64enc data_table digest httr jsonlite withr]; };
   RTaxometrics = derive2 { name="RTaxometrics"; version="3.2"; sha256="0nrj5iccxqj3nk28s9z6bncpih5zq2nz4pylmm0pkpl5dfz923m4"; depends=[]; };
   RTextTools = derive2 { name="RTextTools"; version="1.4.3"; sha256="0fxjviqc36k06rn8xzbi8ylzzj9zgf3zsp6xv0kssakss1a45lzz"; depends=[caTools e1071 glmnet ipred nnet randomForest SparseM tau tm tree]; };
   RTextureMetrics = derive2 { name="RTextureMetrics"; version="1.1"; sha256="0d0mvpmcpd62cvqlajrqp32lnvpflyf9bqvdzly2v8v1kb8274fc"; depends=[]; };
@@ -4242,7 +4257,7 @@ in with self; {
   RUVIIIC = derive2 { name="RUVIIIC"; version="1.0.19"; sha256="1px87p4nmdgkxwarsqyc91kmwr13dy16c1qqqc86qlwm2w46smf6"; depends=[progress Rcpp RcppEigen RcppProgress RSpectra]; };
   RUnit = derive2 { name="RUnit"; version="0.4.32"; sha256="1wc1gwb7yw7phf8b0gkig6c23klya3ax11c6i4s0f049k42r78r3"; depends=[]; };
   RVA = derive2 { name="RVA"; version="0.0.5"; sha256="1a0av2vhqnkc4w76q5dhds0p12icmkkxyr1d04rsd83srwkwh4fb"; depends=[circlize clusterProfiler ComplexHeatmap data_table dplyr edgeR ggplot2 ggpubr gridExtra GSEABase GSVAdata haven msigdbr org_Hs_eg_db plotly purrr rlang rWikiPathways stringr tibble tidyr XML]; };
-  RVAideMemoire = derive2 { name="RVAideMemoire"; version="0.9-81"; sha256="1niq4imvgn8v9lkcysfksb9mhmdkf3790sycfk8c85psrh9l294x"; depends=[ade4 boot car FactoMineR lme4 MASS mixOmics nnet pls pspearman vegan]; };
+  RVAideMemoire = derive2 { name="RVAideMemoire"; version="0.9-81-2"; sha256="137374nikk2jji1fnx1vnsj1v6n3s9kbif5rcvla0kbg3xn6ndps"; depends=[ade4 boot car FactoMineR lme4 MASS mixOmics nnet pls pspearman vegan]; };
   RVCompare = derive2 { name="RVCompare"; version="0.1.5"; sha256="17ralm3xbzgi1ngblwf6pmpaz7c5vwkfinnpwyxvlrwi8mxi554h"; depends=[ggplot2 pracma Rcpp]; };
   RVFam = derive2 { name="RVFam"; version="1.1"; sha256="0gw8rgq11zndnqmay6y3y5rmmljvwhxzm2pqa90vs5413dnchq92"; depends=[coxme kinship2 lme4 MASS Matrix survival]; };
   RVIpkg = derive2 { name="RVIpkg"; version="0.2.8"; sha256="0hh3kqzfwbp0qc1v5baixnl3px54dwvljd1r23s8lxlg434pl7fz"; depends=[]; };
@@ -4259,8 +4274,8 @@ in with self; {
   RWekajars = derive2 { name="RWekajars"; version="3.9.3-2"; sha256="06nsylv65z9hxym1b6qnwllh306bq5phsgr0qn4nyr5im8cv1rhn"; depends=[rJava]; };
   RWiener = derive2 { name="RWiener"; version="1.3-3"; sha256="0afrgflyfjv4jqm04had74zz4cs934zwvyxaan1r4qpg383kibpq"; depends=[]; };
   RWildbook = derive2 { name="RWildbook"; version="0.9.3"; sha256="1pznzmv8n33hhj61h07fha1gzafcx705n8323cnz3mx6ziijfh28"; depends=[data_table jsonlite marked]; };
-  RWmisc = derive2 { name="RWmisc"; version="0.1.1"; sha256="1p2ksnwwbp5dhj4lmz09fbghs010p7nhpx039lc96n1h7y6azzqs"; depends=[raster sf sp units]; };
-  RWsearch = derive2 { name="RWsearch"; version="4.9.8"; sha256="068kbbh13a7j0h356dl0dy29221r37mjazvki7wpf64nb01r916d"; depends=[brew latexpdf networkD3 sig sos XML]; };
+  RWmisc = derive2 { name="RWmisc"; version="0.1.2"; sha256="0wf593g8aif081v8vyqcffrzaffh1ifbba7mwmj4mnwcksballvw"; depends=[raster sf sp units]; };
+  RWsearch = derive2 { name="RWsearch"; version="5.0.5"; sha256="161fnkl0dzk11wvzj7vz4807pjq33gvnhniw8ms2ipz0vmd0pk7c"; depends=[brew latexpdf networkD3 sig sos XML]; };
   RXKCD = derive2 { name="RXKCD"; version="1.9.2"; sha256="1yk12ic6kdbwc44ppag2yfnga7xjmifkglhvcw93vc3qg469mm15"; depends=[jpeg plyr png RJSONIO]; };
   RXMCDA = derive2 { name="RXMCDA"; version="1.5.5"; sha256="1ci73q8xf3xxqw8b7sk83v5vz2cqgcb4lkx7qi3hd1ff4xkz1fpa"; depends=[kappalab XML]; };
   RXshrink = derive2 { name="RXshrink"; version="2.0"; sha256="105laxdjnqpkp74675asihcry6ahaihphkbnpxyi6xpskga0k1ka"; depends=[ellipse lars]; };
@@ -4303,7 +4318,7 @@ in with self; {
   RapidPolygonLookup = derive2 { name="RapidPolygonLookup"; version="0.1.1"; sha256="0h4snn3haa4a5rkafg98419by4nnz219wsm3y0dqgm4hw4bvha0g"; depends=[PBSmapping RANN RgoogleMaps sp]; };
   RapidoPGS = derive2 { name="RapidoPGS"; version="2.1.0"; sha256="038x4q6h0pf062nhjivfbb74f43li35pgjl8w8rzwr5pcsbjsif8"; depends=[bigreadr bigsnpr coloc curl data_table dplyr GenomicRanges IRanges RCurl]; };
   Raquifer = derive2 { name="Raquifer"; version="0.1.0"; sha256="148inkn6yiyvicw0b4kw99n172xsvhrrdx1khghqs966smjw54wy"; depends=[dplyr gsl magrittr pracma Rdpack]; };
-  RareComb = derive2 { name="RareComb"; version="1.0"; sha256="09hrsxnw50033hlc45hrb9vvv8ycj1i9i11kpqnk0rp0vqph3lzl"; depends=[arules dplyr magrittr pwr reshape2 sqldf stringr tidyr]; };
+  RareComb = derive2 { name="RareComb"; version="1.1"; sha256="0q22a61zd51ffnq30gmhba6paaaagmhrr6vx1mfw37fb9n5fpyn6"; depends=[arules dplyr magrittr pwr reshape2 sqldf stringr tidyr]; };
   Rarefy = derive2 { name="Rarefy"; version="1.1"; sha256="1flpi5amv2q2kl75gab4bwv1b7nmsnr6lyanwwiky6zq0xridkw5"; depends=[ade4 adiv ape dplyr geiger vegan]; };
   Rarity = derive2 { name="Rarity"; version="1.3-6"; sha256="1m742qrgc0c5vda9sb2q5n3ghmqnlnfhr1cfpxfs7s5ic707gmlb"; depends=[]; };
   RaschSampler = derive2 { name="RaschSampler"; version="0.8-8"; sha256="0y7dkgv1cy6r1mbmyqm27qwl10rl12g1svpx9jkzq5hq0hnm2xhw"; depends=[]; };
@@ -4313,7 +4328,7 @@ in with self; {
   Ravages = derive2 { name="Ravages"; version="1.0.0"; sha256="1967s8hp6nd1a1d385rx6sp4hd01h0gcd7hvdakc2lh7xbdnlj8i"; depends=[bedr BH curl dfidx Formula gaston mlogit Rcpp RcppEigen RcppParallel]; };
   RavenR = derive2 { name="RavenR"; version="2.1.7"; sha256="1aapipzsy389zl0b8p0p0zfm72syki8vv9n2zr54drb8vm33ipjs"; depends=[colorspace cowplot DiagrammeR dplyr dygraphs gdata ggplot2 igraph lubridate magrittr purrr Rcpp RCurl scales stringr tidyr visNetwork xts zoo]; };
   RawHummus = derive2 { name="RawHummus"; version="0.2.1"; sha256="1x23mzqj13mns80pac4zmxj7c571y9k4qss2zmz6fza7hvarkdcf"; depends=[data_table dplyr kableExtra markdown plotly purrr RaMS RColorBrewer rmarkdown shiny shinycustomloader shinydashboard shinydashboardPlus shinyFiles shinyMatrix shinyvalidate]; };
-  Rbeast = derive2 { name="Rbeast"; version="0.9.2"; sha256="1vmnmyj6470mm3wvb6dy5hb39hdjrm12lzwizlqvh9pjkvi339v3"; depends=[]; };
+  Rbeast = derive2 { name="Rbeast"; version="0.9.3"; sha256="1mh9gmg1gj1l42av16ndyzndix4y2jbgn59adhcgdyyb1cm3d62n"; depends=[]; };
   Rbent = derive2 { name="Rbent"; version="0.1.0"; sha256="0xkb57dhhfd3342rv0xwbhbhn4zp5fbfch84fbh0sickm09l9vrj"; depends=[Rfit]; };
   Rbgs = derive2 { name="Rbgs"; version="0.2"; sha256="1q0dnbcpgx7x9klr6z33z6g2p9p8mrmhnsqjy6qw15ch720rrgn3"; depends=[imager magrittr rJava]; };
   Rbitcoin = derive2 { name="Rbitcoin"; version="0.9.2"; sha256="0ndq4kg1jq6h0jxwhpdp8sw1n5shg53lwa1x0bi7rifmy0gnh66f"; depends=[data_table digest RCurl RJSONIO]; };
@@ -4343,7 +4358,6 @@ in with self; {
   RcmdrPlugin_EcoVirtual = derive2 { name="RcmdrPlugin.EcoVirtual"; version="1.0"; sha256="0q879wnrmgbaddv883q9zdnp0i7kjcgn8cffv7lp8nrsqil6l7mc"; depends=[EcoVirtual Rcmdr]; };
   RcmdrPlugin_Export = derive2 { name="RcmdrPlugin.Export"; version="0.3-1"; sha256="17fn3si6b6h20c52k1k6fv9mslw3f9v0x1kxixzcvq54scdx0sk0"; depends=[Hmisc Rcmdr xtable]; };
   RcmdrPlugin_FactoMineR = derive2 { name="RcmdrPlugin.FactoMineR"; version="1.7"; sha256="1145rpzhq219sl0j2bg5xa0ihq13lmr7ahcn3db4a8mqlz2fp8zy"; depends=[FactoMineR Rcmdr]; };
-  RcmdrPlugin_FuzzyClust = derive2 { name="RcmdrPlugin.FuzzyClust"; version="1.1"; sha256="1lg6k3h4n45s6wjkl3ycwfngfr2i6mkhirifhbazsvv297bg0iba"; depends=[clue doParallel foreach ggplot2 iterators MASS Rcmdr reshape2 tcltk2 tkrplot]; };
   RcmdrPlugin_GWRM = derive2 { name="RcmdrPlugin.GWRM"; version="1.0.2"; sha256="01q4k9s815pgd5cavm6nyxy5npmpxryari9v6wys4n5cjpn5g6xq"; depends=[GWRM Rcmdr RcmdrMisc]; };
   RcmdrPlugin_HH = derive2 { name="RcmdrPlugin.HH"; version="1.1-47"; sha256="1bba11izs1jhjsyb0d45c34gcihapk231qbiabcxf8x93sdmg6ga"; depends=[HH lattice mgcv Rcmdr]; };
   RcmdrPlugin_IPSUR = derive2 { name="RcmdrPlugin.IPSUR"; version="0.2-1.1"; sha256="0dbdsxdxhxm79cq7hi0rh8qphan73521lmivcnb4ca8g6ha2y32v"; depends=[Rcmdr]; };
@@ -4388,7 +4402,7 @@ in with self; {
   RcppCCTZ = derive2 { name="RcppCCTZ"; version="0.2.10"; sha256="0jj4w8141xl3yvr4ss8c48kiib5d0rsj7f6csn3hq9viqy71hy1s"; depends=[Rcpp]; };
   RcppCGAL = derive2 { name="RcppCGAL"; version="5.3.1.1"; sha256="0pxfvcpizvqlixz8547m7wf7haza5ca9bslvg8wwwmnpwrifz4fy"; depends=[Rcpp]; };
   RcppCNPy = derive2 { name="RcppCNPy"; version="0.2.10"; sha256="175bn75akwgz3vcp0n59kiqqz7q9cwkvih241nj8v810cp4gpmkp"; depends=[Rcpp]; };
-  RcppCWB = derive2 { name="RcppCWB"; version="0.5.0"; sha256="0zywvljyg9vfdg6qkwc7xl2b5wc5m3jw1dfg4r6wvl8lgq06ihcr"; depends=[Rcpp]; };
+  RcppCWB = derive2 { name="RcppCWB"; version="0.5.1"; sha256="0ly5snza8jryrmnlk3bi8br5mcc4nhnk35r6y2drschzbi60fybk"; depends=[fs Rcpp]; };
   RcppCensSpatial = derive2 { name="RcppCensSpatial"; version="0.1.0"; sha256="0ckyl88b81l58dkk0s40mcanjqaibi106q6jsrak79as93g1dbh1"; depends=[ggplot2 gridExtra MomTrunc mvtnorm Rcpp RcppArmadillo RcppProgress Rdpack roptim tlrmvnmvt]; };
   RcppClassic = derive2 { name="RcppClassic"; version="0.9.12"; sha256="0v9v34i1c4dkplavdl14kz1k2rnk4hsaiyv6rkc9403z9isvzzr0"; depends=[Rcpp]; };
   RcppClassicExamples = derive2 { name="RcppClassicExamples"; version="0.1.2"; sha256="0dr2104miy7psr73nicfs84652ai0d5liw6wxcwyrx7fmys3p638"; depends=[Rcpp RcppClassic]; };
@@ -4400,7 +4414,7 @@ in with self; {
   RcppDynProg = derive2 { name="RcppDynProg"; version="0.2.0"; sha256="10nc0sx3n83kg8rddbajifr9q8iyjmm59z5xcpqfmmfi345i26al"; depends=[Rcpp RcppArmadillo wrapr]; };
   RcppEigen = derive2 { name="RcppEigen"; version="0.3.3.9.1"; sha256="0qp9gypar280lm84pc8w0fxw4jgwqygwi3qnl5sl52kpkcj8c14a"; depends=[Matrix Rcpp]; };
   RcppEigenAD = derive2 { name="RcppEigenAD"; version="1.0.0"; sha256="18zm9hsfqwiicxsdm87ix3qc261ljxxn2s736p6aayx82b6vwkz6"; depends=[BH functional memoise Rcpp RcppEigen Rdpack readr]; };
-  RcppEnsmallen = derive2 { name="RcppEnsmallen"; version="0.2.18.1.1"; sha256="1xbxyxsx2vczf003b9kj3xyph3bkawp3h4lvxblxmklxpd1s8lfb"; depends=[Rcpp RcppArmadillo]; };
+  RcppEnsmallen = derive2 { name="RcppEnsmallen"; version="0.2.18.2.1"; sha256="10y86c809ijzvli3vbkm7i6si3ik83ppsr6pivqznx9wslzvk79i"; depends=[Rcpp RcppArmadillo]; };
   RcppExamples = derive2 { name="RcppExamples"; version="0.1.9"; sha256="0568zipgjxgmx086mlfpp5n7v8kf50gwrylvhl1bgvzb2vvr9dhj"; depends=[Rcpp]; };
   RcppFaddeeva = derive2 { name="RcppFaddeeva"; version="0.1.0"; sha256="1rah18sdfmbcxy83i7vc9scrwyr34kn9xljkv9pa31js68gn2jrl"; depends=[knitr Rcpp]; };
   RcppFarmHash = derive2 { name="RcppFarmHash"; version="0.0.2"; sha256="0nkismq7hmp1ahwv4z438zrcj7mqsfmas2yd6av6k2cmkgklqkbk"; depends=[Rcpp]; };
@@ -4419,16 +4433,16 @@ in with self; {
   RcppParallel = derive2 { name="RcppParallel"; version="5.1.5"; sha256="1sn211ajlb1p12sglxqns175rg078yvww268m8cp0vvd7cmk55k3"; depends=[]; };
   RcppProgress = derive2 { name="RcppProgress"; version="0.4.2"; sha256="0j2b37gwjpgmrnr00srdzm751hzlpsjb54ph63xxmcdfnwhlnqmi"; depends=[]; };
   RcppQuantuccia = derive2 { name="RcppQuantuccia"; version="0.1.0"; sha256="0nclclhrhvdma8s07jly0xrmaf8iqigln137wmjnsmj6hg7r8ph9"; depends=[BH Rcpp]; };
-  RcppRedis = derive2 { name="RcppRedis"; version="0.1.11"; sha256="0aill5ng6ifcafsij1nsqcchca8sxdd87645c45sx7dznpsgrhvj"; depends=[BH RApiSerialize Rcpp]; };
+  RcppRedis = derive2 { name="RcppRedis"; version="0.2.0"; sha256="070q8kp5lkz22g4w8fkh5cg3lcc2zwvkpkqz1smi6xcjv7m37bnh"; depends=[RApiSerialize Rcpp]; };
   RcppRoll = derive2 { name="RcppRoll"; version="0.3.0"; sha256="0srzfhzkk42kzrdjnhbb37946jp1p688rgysy6k3i2is8jb21zyb"; depends=[Rcpp]; };
   RcppSMC = derive2 { name="RcppSMC"; version="0.2.6"; sha256="1svpzx4h9baipqnx2793vkjh1lnr92y82whpryqzzm4i7b6zx27i"; depends=[Rcpp RcppArmadillo]; };
-  RcppSimdJson = derive2 { name="RcppSimdJson"; version="0.1.6"; sha256="06d2w7a57sidw06ymk3kb0bc1xp0fzzz39m7niwpz0f10203ky0z"; depends=[Rcpp]; };
+  RcppSimdJson = derive2 { name="RcppSimdJson"; version="0.1.7"; sha256="0ajbm7qy3fqlaadpzfhzsaczszlw6l5p31mmr1xd2cb31wszpg9r"; depends=[Rcpp]; };
   RcppSpdlog = derive2 { name="RcppSpdlog"; version="0.0.7"; sha256="13cn8dm68mhpgimgvk2ybsccs3qjg8c975zdjr8h86vfwyjj4gnv"; depends=[Rcpp]; };
   RcppStreams = derive2 { name="RcppStreams"; version="0.1.3"; sha256="06il7q3afaws57m0fxf04f2p5dvs23l1f7gl78pxwzclacdy3839"; depends=[BH Rcpp]; };
   RcppTN = derive2 { name="RcppTN"; version="0.2-2"; sha256="0m2wc5n1fzxv56s4gqqnygb24dbadgrpgjm4bs4hr6qazgjapymf"; depends=[Rcpp]; };
   RcppTOML = derive2 { name="RcppTOML"; version="0.1.7"; sha256="0h8517ipwqhqkhcfiyqmvsb585g01p0ra0azbpzyxip6pq6g029g"; depends=[Rcpp]; };
-  RcppThread = derive2 { name="RcppThread"; version="2.0.2"; sha256="1hkv4074b1lm60rgryhl6167axbc54ci2qxlsan079ak6vzlx31b"; depends=[]; };
-  RcppUUID = derive2 { name="RcppUUID"; version="1.0.0"; sha256="0sx25z71bkjsf3ggljqkv1pji5kc32i3lkq28igiwixxfl2kj89b"; depends=[BH Rcpp]; };
+  RcppThread = derive2 { name="RcppThread"; version="2.1.1"; sha256="14i3bphg4gkw1hsd5d2w3sjys6da8ac7lbd470v4m98v4d3d0hcd"; depends=[]; };
+  RcppUUID = derive2 { name="RcppUUID"; version="1.1.1"; sha256="0sxdj5ay90i1bs3wizij31n21ym8l0q0c79959arp1gd303sd8b8"; depends=[BH Rcpp]; };
   RcppXPtrUtils = derive2 { name="RcppXPtrUtils"; version="0.1.1"; sha256="0jh64c46gp99d2nsih14vx34pamc8i7gkmiy2nj94rx3sxq62yh5"; depends=[Rcpp]; };
   RcppXsimd = derive2 { name="RcppXsimd"; version="7.1.6"; sha256="1iwiz4964dw015cbxcanks8xkjan39hfzf8x6bhvf6dqqwkc4bh7"; depends=[Rcpp]; };
   RcppXts = derive2 { name="RcppXts"; version="0.0.4"; sha256="143rhz97qh8sbr6p2fqzxz4cgigwprbqrizxpkjxyhq8347g8p4i"; depends=[Rcpp xts]; };
@@ -4439,13 +4453,13 @@ in with self; {
   Rcssplot = derive2 { name="Rcssplot"; version="1.0.0"; sha256="0hnzwjwk9zh4zbzy8sa0z6amikvpd9k1p1abd38khr8q8k1k8jiv"; depends=[]; };
   Rcurvep = derive2 { name="Rcurvep"; version="1.2.0"; sha256="1j067b98hcwm2ha0yrzbwjm54f4z5yqi04y9jkh9k2avpcpdbqxx"; depends=[boot dplyr ggplot2 magrittr purrr Rdpack rlang stringr tibble tidyr tidyselect]; };
   Rd2md = derive2 { name="Rd2md"; version="0.0.5"; sha256="1kqni87jg3avpcir1ls2kkf6qafkkdkcv51d9azsbqmji5168vlf"; depends=[knitr]; };
-  Rd2roxygen = derive2 { name="Rd2roxygen"; version="1.12"; sha256="0ajbi1v2hgfal5phrgdp172qkl0n1x67pqi0srbclk1ymjnlnrjh"; depends=[formatR roxygen2 xfun]; };
+  Rd2roxygen = derive2 { name="Rd2roxygen"; version="1.13"; sha256="1dbysss9m1av5405w7cvkfzkzb3pyl9xlikk6az7qzfdr56zm4b3"; depends=[formatR roxygen2 xfun]; };
   Rdca = derive2 { name="Rdca"; version="0.1.0"; sha256="06s4n5xpla937q9f55xmsickvdiwiapxmwqvn6k0zsacisscaagl"; depends=[dplyr magrittr minpack_lm Rcpp RcppArmadillo Rdpack]; };
   Rdiagnosislist = derive2 { name="Rdiagnosislist"; version="1.0"; sha256="0f7dikc23z7gyhi29dg2l4l1q178d16nad98xvmdbygah8k1b377"; depends=[bit64 data_table]; };
   Rdice = derive2 { name="Rdice"; version="1.0.0"; sha256="1xibvm690808p2g3jch7rh1825yrpgln2hjfclgxjwn822qvs4xr"; depends=[data_table]; };
   Rdimtools = derive2 { name="Rdimtools"; version="1.0.9"; sha256="1fb5daizc615g58yai6p4lqczwi8kq6fyyifnyn8izxjdpqh0ivm"; depends=[CVXR maotai MASS mclustcomp RANN Rcpp RcppArmadillo RcppDE RcppDist Rcsdp Rdpack RSpectra]; };
   Rdistance = derive2 { name="Rdistance"; version="2.1.3"; sha256="03wh6y9h5jgfc6xdncpgyz0v7lqavikp3pf5wwfmm2rqfj7yjr8c"; depends=[]; };
-  Rdpack = derive2 { name="Rdpack"; version="2.1.3"; sha256="1f2m9pxm4s4gkrqh58jznkqj2fcw6f29c1l05k5mmkwsdf3ai0c3"; depends=[rbibutils]; };
+  Rdpack = derive2 { name="Rdpack"; version="2.1.4"; sha256="0r242a352wa7kha0n62ng6ri0qi14hwjknnyjvfcd7mx4qvfwhgv"; depends=[rbibutils]; };
   Rdroolsjars = derive2 { name="Rdroolsjars"; version="1.0.1"; sha256="1l9bc1bwpj10irr973hzkhr04i1f3g998n8hcl2k2i9kgv1naqmz"; depends=[rJava]; };
   Rdrw = derive2 { name="Rdrw"; version="1.0.2"; sha256="1487r8z6h1y0v6fxkp7qfbh7j96hw8gqbb0fc90m4cxwz0hrqrn2"; depends=[mvtnorm]; };
   Rdsdp = derive2 { name="Rdsdp"; version="1.0.5.1"; sha256="0x5dcgl25i6j2pg6d69rinal0yi8w0jwlfg05bnk9bg9v7i7db67"; depends=[]; };
@@ -4467,7 +4481,7 @@ in with self; {
   RecordLinkage = derive2 { name="RecordLinkage"; version="0.4-12.3"; sha256="11nlmg1hcf4nv69ampc4mdq2lz27mq9yn4q7c0k45g0ilydb0pg3"; depends=[ada data_table DBI e1071 evd ff ipred nnet rpart RSQLite xtable]; };
   RecordTest = derive2 { name="RecordTest"; version="2.1.0"; sha256="0a5hbhqx97kllwf5k6lrhcqixhqqj8ndklcvpmsp9jdf011b1100"; depends=[ggplot2]; };
   Records = derive2 { name="Records"; version="1.0"; sha256="08y1g2m6bdrvv4rpkhd5v2lh7vprxy9bcx9ahp1f7p062bn2lwji"; depends=[]; };
-  RedditExtractoR = derive2 { name="RedditExtractoR"; version="3.0.5"; sha256="09f815av0sn9cz5n3l02k1rrl91d4f67xkwqpdpadw7hnv516pwf"; depends=[RJSONIO rlang]; };
+  RedditExtractoR = derive2 { name="RedditExtractoR"; version="3.0.6"; sha256="18apw0qjzk4lc02bx8kfi7hqxyb23zz2r7zw93dgf04aa8q49x2i"; depends=[RJSONIO rlang]; };
   RedisBaseContainer = derive2 { name="RedisBaseContainer"; version="1.0.1"; sha256="0pnjj3rbp2as7h92907g338bd173ygl1zfnlfw6c9wpzfvw909rr"; depends=[DockerParallel]; };
   Rediscover = derive2 { name="Rediscover"; version="0.3.0"; sha256="0396shg9gf0r7q5jlrab5mr003fz7kj8xdq5chnzmild6kwyq3sk"; depends=[data_table maftools Matrix matrixStats PoissonBinomial RColorBrewer ShiftConvolvePoibin speedglm]; };
   Redmonder = derive2 { name="Redmonder"; version="0.2.0"; sha256="02qrz1b0g7hdacj2s2bks5gfwnypkbiwlmn0bv7im1zz1swg9cp8"; depends=[]; };
@@ -4481,7 +4495,6 @@ in with self; {
   RelValAnalysis = derive2 { name="RelValAnalysis"; version="1.0"; sha256="1jl1gfj44gfkmc1yp6g5wwn4miydwpvxwrg76rnkv9454zrc5pvp"; depends=[zoo]; };
   Relatedness = derive2 { name="Relatedness"; version="2.0"; sha256="1aidklwk8q2wdfsmhlbd3vzq9kzsyh4wn1g28biyb6lq7iwq1hl4"; depends=[]; };
   Relectoral = derive2 { name="Relectoral"; version="0.1.0"; sha256="0kpdafdvpcs6iicpc10i634nlk7dqk2nymdnnlkpp5frdxlbycvx"; depends=[dplyr ggforce ggplot2 readxl rmarkdown sf xlsx]; };
-  Reliability = derive2 { name="Reliability"; version="0.0-2"; sha256="12zsicgbjqih3grbs62pw37x8wlkmnyc7g0yz6bqnfb4ym2yb7fg"; depends=[]; };
   RelimpPCR = derive2 { name="RelimpPCR"; version="0.2.4"; sha256="0svfyh313wawzqx9hfb4cg0wn2ir6nd769z1k3dckdsb8d7xkh3q"; depends=[caret ggplot2 relaimpo reshape2 Rmisc]; };
   Renext = derive2 { name="Renext"; version="3.1-0"; sha256="074djs4y71667aylpgh514pzijr90rgpzm4w5ayq9cgaqz22m3am"; depends=[evd numDeriv]; };
   RenvModule = derive2 { name="RenvModule"; version="1.1"; sha256="1wmz6k0f9lpa8d7qxqm308l7h11k0cj07q3qisfjic5sp308c3d2"; depends=[]; };
@@ -4509,12 +4522,12 @@ in with self; {
   Rexperigen = derive2 { name="Rexperigen"; version="0.2.1"; sha256="158ksnd1gvzq7ii0ys2v0wrfnr001hni0i8m77p1fn1arixgmqdw"; depends=[digest jsonlite RCurl]; };
   RfEmpImp = derive2 { name="RfEmpImp"; version="2.1.5"; sha256="1bvjk71rfhpbj2j7raibsb0y3skbv1qba7yl2g00npnkk2zk14xj"; depends=[mice ranger]; };
   Rfacebook = derive2 { name="Rfacebook"; version="0.6.15"; sha256="0hp2mbm0hnyasizszvh5x9hv7z2q633zck1a1gvk36nbxb1shx7c"; depends=[httpuv httr rjson]; };
-  Rfast = derive2 { name="Rfast"; version="2.0.4"; sha256="1n9imwkkq14ickp0g34jyha4jkr180xj0ar8xh3hqqi4dvihg6cm"; depends=[Rcpp RcppArmadillo RcppZiggurat]; };
+  Rfast = derive2 { name="Rfast"; version="2.0.6"; sha256="0zxykq021h57mq0n6giqbx8ncjsdly0arhmaj3fcp3yfcxf4ns9l"; depends=[Rcpp RcppArmadillo RcppZiggurat]; };
   Rfast2 = derive2 { name="Rfast2"; version="0.1.1"; sha256="1sqd5614gw1ag7wjidjv8bxf3qz8lkz7m9gangihgrlf0bm4944h"; depends=[RANN Rcpp RcppArmadillo Rfast]; };
   Rfit = derive2 { name="Rfit"; version="0.24.2"; sha256="1b3pza2xdpifvrcqbdp5r2wy82ws1844bnpna01hqj65xbw2iix8"; depends=[]; };
   Rfmtool = derive2 { name="Rfmtool"; version="4.1.4"; sha256="0vli7n957vrxs47nq5h4aqd9nwq7alj47q91zqc009rfx7wgx2k5"; depends=[]; };
   Rfolding = derive2 { name="Rfolding"; version="1.0"; sha256="15lf73zxr1slin9faj9k0z8qkb1g9nb7h080nfv99gsi2ks68ssg"; depends=[]; };
-  Rforestry = derive2 { name="Rforestry"; version="0.9.0.72"; sha256="02azafn8rbni4jxjvnrr7gyg2s0j6zl9059xdwvdwh3dj3m2cx2z"; depends=[dplyr glmnet onehot Rcpp RcppArmadillo RcppThread visNetwork]; };
+  Rforestry = derive2 { name="Rforestry"; version="0.9.0.95"; sha256="0m6znm0yir0vlbp4vc517pxvbb81xg85cpgc9b12k5ay65lrzxq5"; depends=[dplyr glmnet onehot Rcpp RcppArmadillo RcppThread visNetwork]; };
   Rfractran = derive2 { name="Rfractran"; version="1.0"; sha256="0cwc069f7rhkxkr5kn0n43mdy8m47gh0q6d5ijwzkhncrijb10cy"; depends=[gmp]; };
   Rfssa = derive2 { name="Rfssa"; version="2.0.1"; sha256="07aj8gmr6sjrmx82g2g6xn40c3kb8i9bknsd0db0av6kfd8x6giy"; depends=[dplyr fda ggplot2 hrbrthemes httr lattice markdown plotly Rcpp RcppArmadillo RcppEigen RSpectra Rssa shiny tibble]; };
   Rga4gh = derive2 { name="Rga4gh"; version="0.1.1"; sha256="0h5y722blkkwn6ask6vjnhl22v9l6511chdm50ig6xcs5dvjam2m"; depends=[httr jsonlite]; };
@@ -4523,11 +4536,10 @@ in with self; {
   Rglpk = derive2 { name="Rglpk"; version="0.6-4"; sha256="19mzpyimzq9zqnbi05j79b2di3nzaln8swggs9p8sqdr60qvr3d2"; depends=[slam]; };
   RgoogleMaps = derive2 { name="RgoogleMaps"; version="1.4.5.3"; sha256="02v8k0bw70q4qwx4lcdy8p25q7n3ql2ll46lfpqllxa1p26svmfi"; depends=[png sp]; };
   RhpcBLASctl = derive2 { name="RhpcBLASctl"; version="0.21-247.1"; sha256="0scpr6jq25xx7wmqyc380ann4h536ll0g7wblikk25yqvpamzrav"; depends=[]; };
-  RichR = derive2 { name="RichR"; version="1.0.0"; sha256="0z0ri90jqdmw0vwxd1b4wr9if5cgm1gqpf6g9p1fdvncf4sdi9by"; depends=[magrittr metap plyr reshape2]; };
   RidgeFusion = derive2 { name="RidgeFusion"; version="1.0-3"; sha256="10llmrsfpcqrkcbw7zj44kvfy7ywn9rk49n7zplilz8h94zzcmjv"; depends=[mvtnorm]; };
   Ridit = derive2 { name="Ridit"; version="1.1"; sha256="02cni6hzf1bsns7vi8vklnhc0pfb5vwqhjnnfnjnnaxpzpsbvdfn"; depends=[]; };
   RiemBase = derive2 { name="RiemBase"; version="0.2.5"; sha256="1ikv7n8hp23a5dbmnfypdkx74vxwjd9br0hvysnhhpg1ffvr5vhi"; depends=[pracma Rcpp RcppArmadillo Rdpack]; };
-  Riemann = derive2 { name="Riemann"; version="0.1.3"; sha256="1yy4vc70raa57iz5chp367qwd8dgy3cdl7kzlkq1jchwry6l27xc"; depends=[CVXR DEoptim ggrepel lpSolve maotai Matrix Rcpp RcppArmadillo Rdimtools Rdpack RiemBase T4cluster]; };
+  Riemann = derive2 { name="Riemann"; version="0.1.4"; sha256="1a3mlfgnzdvl5x1nqnmm4v3xb2nkdq87c21m6xyxbm7zh5vx5b6m"; depends=[CVXR DEoptim lpSolve maotai Matrix Rcpp RcppArmadillo Rdimtools Rdpack RiemBase T4cluster]; };
   Riex = derive2 { name="Riex"; version="1.0.2"; sha256="03627dik6dd9d2kwv757zanh0i4invmcwg162m9ayhv41ygj5z1l"; depends=[dplyr ggplot2 httr purrr quantmod rjson stringr tibble tidyr TTR urltools xts zoo]; };
   Rilostat = derive2 { name="Rilostat"; version="1.1.8"; sha256="02fmz4jla151w6bz0zg766q4d34kz1jf43156yr2f90zj8x4jjx4"; depends=[data_table dplyr DT haven plyr RCurl readr stringr tibble tidyr xml2]; };
   Rip46 = derive2 { name="Rip46"; version="1.0.2"; sha256="0wfp6fm5mgmjqjkn0c5hvjd95yn4zcv0s8xc5294qf5jqxp8b1w7"; depends=[Rcpp]; };
@@ -4541,7 +4553,7 @@ in with self; {
   Rivivc = derive2 { name="Rivivc"; version="0.9"; sha256="0gl3040pp9nqm4g2ympnx80z64zfnn1hfsxka8ynd2cqhjn3b5i1"; depends=[signal]; };
   RkMetrics = derive2 { name="RkMetrics"; version="1.3"; sha256="1k6vnr1r4h69iznib638z45gd0f8wc4g4h0ji9f0017883g77li1"; depends=[]; };
   Rlab = derive2 { name="Rlab"; version="2.15.1"; sha256="1pb0pj84i1s4ckdmcglqxa8brhjha4y4rfm9x0na15n7d9lzi9ag"; depends=[]; };
-  Rlabkey = derive2 { name="Rlabkey"; version="2.8.2"; sha256="1ja7ac41nb0x82ajr1k7av1fvx1blpsnbdm5771li6jwnmasf8hh"; depends=[httr jsonlite Rcpp]; };
+  Rlabkey = derive2 { name="Rlabkey"; version="2.8.3"; sha256="0p6b0vm7kp7fq9cghj92j98zkiwy22dnpbaqcsms25dd08ra49x7"; depends=[httr jsonlite Rcpp]; };
   Rlda = derive2 { name="Rlda"; version="0.2.6"; sha256="0i8n01h9072q339p1kiqhcpwphw0d2x6bsszbhgfqc2b160dk2bl"; depends=[coda doParallel foreach gtools Rcpp RcppArmadillo RcppProgress]; };
   Rlgt = derive2 { name="Rlgt"; version="0.1-3"; sha256="0g610v5rch5s31gc7dy9zx4mcgsdhn82y1pmr2rs14qma0v7x515"; depends=[BH forecast Rcpp RcppEigen rstan rstantools sn StanHeaders]; };
   Rlibeemd = derive2 { name="Rlibeemd"; version="1.4.2"; sha256="0hzsnrz30429pavf7qghknykah9ks4msb96zwa1xgvqb4zd512dg"; depends=[Rcpp]; };
@@ -4587,7 +4599,7 @@ in with self; {
   RobustLinearReg = derive2 { name="RobustLinearReg"; version="1.2.0"; sha256="06137f516gyj64qdmwby7m1xnvj4hxzpqj454jn0xcinvl89380w"; depends=[]; };
   RobustRankAggreg = derive2 { name="RobustRankAggreg"; version="1.1"; sha256="1pslqyr1lji1zvcrwyax4zg2s81p1jnhfldz8mdfhsp5y7v8iar3"; depends=[]; };
   RockFab = derive2 { name="RockFab"; version="1.2"; sha256="1b5mhfll5vmqwl4pblmclyx9604vn07jyza02rm0jcsx915ms8sc"; depends=[EBImage rgl]; };
-  Rodam = derive2 { name="Rodam"; version="0.1.12"; sha256="01pjyz4sjdvmjicvajvhryv9b3kzwdyba0vwj0gvyrf6wiahv4qx"; depends=[httr]; };
+  Rodam = derive2 { name="Rodam"; version="0.1.14"; sha256="1vnr57qq56svrlixmimh4x0irprsvanj2hz95yb7fhl26kgy0mmk"; depends=[httr]; };
   Rogue = derive2 { name="Rogue"; version="2.1.0"; sha256="1dr7rknvkrwkd53ah92wkrn1k3jr3bkzkp5r90v9mq0vlq9hvvn2"; depends=[ape cli fastmatch matrixStats Rdpack Rfast TreeDist TreeTools]; };
   RolWinMulCor = derive2 { name="RolWinMulCor"; version="1.2.0"; sha256="0vfsgp0qvv6pnpai8nyy0xzzlzyjwx98xrhlwlks9dbm84wg8vqr"; depends=[colorspace gtools pracma scales zoo]; };
   RonFHIR = derive2 { name="RonFHIR"; version="0.4.0"; sha256="1ajpgpp300m0zzqzzwsn8sfy8x751hrr8py9n9xvzjmkgyrh4hhw"; depends=[httr jsonlite R6 stringr]; };
@@ -4614,9 +4626,9 @@ in with self; {
   Rquefts = derive2 { name="Rquefts"; version="1.2-1"; sha256="1v548wys8fd6xqz4hfvqkckl6szjf6zr383n1x0kc6f2pfrc6jnf"; depends=[meteor Rcpp]; };
   Rramas = derive2 { name="Rramas"; version="0.1-6"; sha256="16aapvz9j81lvi5ryj41bvn3wf51b0gynnzs0jpvva4m3mvzw6an"; depends=[diagram]; };
   Rraven = derive2 { name="Rraven"; version="1.0.13"; sha256="0nlqr1hzbzbz4rb3hjy01iw8czhaqvwmy9hh728fgl5vajwqwn8g"; depends=[NatureSounds pbapply seewave tuneR warbleR]; };
-  Rrdap = derive2 { name="Rrdap"; version="1.0.1"; sha256="1mnk1s1nyrj9cz9j2gkw6p9wdj79jajb2hjzynanfw1zmgmnd45g"; depends=[curl rjson stringr]; };
+  Rrdap = derive2 { name="Rrdap"; version="1.0.2"; sha256="1v4q5pgk4ycwi2m807iqz6j2bvsm4x4dvqg5vr5fa8ggfw40xvz7"; depends=[curl rjson stringr]; };
   Rrdrand = derive2 { name="Rrdrand"; version="0.1-16"; sha256="0j9yyvq8r1cgwj3kw1ak6hyazr67f2q0c1m651wdm0wcvm1ajx7f"; depends=[]; };
-  RsSimulx = derive2 { name="RsSimulx"; version="1.0.1"; sha256="0fg19mmgcqz39mxhnxlsd1l1qmkjrvbc3149hrib0mayy1b1fqw4"; depends=[ggplot2 gridExtra]; };
+  RsSimulx = derive2 { name="RsSimulx"; version="2.0.0"; sha256="11ji1fvf6rclzh8yw1d7d4zkfzsyw4jsfwyhxlx9j0kqyr0jz5bc"; depends=[ggplot2 gridExtra]; };
   Rsagacmd = derive2 { name="Rsagacmd"; version="0.1.2"; sha256="0zj9a63hq8pm592lvf3n62pzn0lfkh02d4v4mkqhgixx7jaxyz2x"; depends=[foreign generics processx raster rgdal rlang rvest sf stars stringr terra tibble]; };
   Rsampling = derive2 { name="Rsampling"; version="0.1.1"; sha256="14rp3j7iaii4rc3jkbijmbgvlagxxqjkz3vvfwwpxix43rsi8zsk"; depends=[]; };
   Rsconctdply = derive2 { name="Rsconctdply"; version="0.1.3"; sha256="12xc1laxgivv4szp8341pvhmxnzzzzc2s4jhnqsqrbx71lbd9szg"; depends=[dplyr rjson rsconnect]; };
@@ -4624,7 +4636,7 @@ in with self; {
   Rsfar = derive2 { name="Rsfar"; version="0.0.1"; sha256="1xskvvvavkdyjhb99qlii9qc0q1m36mxx6g0ybgwbq26lq4ypq7l"; depends=[fda]; };
   Rsgf = derive2 { name="Rsgf"; version="1.0.0"; sha256="1d2bk20ixnfkzbimvsj56arf7brgkwlyrs80snfn5cnvmwic0h8i"; depends=[ggplot2 png stringi stringr]; };
   RsimMosaic = derive2 { name="RsimMosaic"; version="1.0.3"; sha256="0jlzrs9xxlpazvq3iw8znk0bd00bzlry7bgxsxq7xl23akizj0ji"; depends=[fields jpeg RANN]; };
-  Rsmlx = derive2 { name="Rsmlx"; version="3.0.0"; sha256="04d47l8s8hi8gyca4j60zj35wpvr4mml282w586c8x24g62jznvk"; depends=[ggplot2 gridExtra MASS]; };
+  Rsmlx = derive2 { name="Rsmlx"; version="4.0.2"; sha256="05g89qpfbivw1j647vgsdqkqalzzcywkqy21vyiwi0j9va92482p"; depends=[dplyr ggplot2 gridExtra MASS]; };
   Rsolnp = derive2 { name="Rsolnp"; version="1.16"; sha256="0w7nkj6igr0gi7r7jg950lsx7dj6aipgxi6vbjsf5f5yc9h7fhii"; depends=[truncnorm]; };
   Rspc = derive2 { name="Rspc"; version="1.2.2"; sha256="1cnzqpnh009wfs51dc4id9q3giaa8b6dc75b1lhzpwcvw0cxcy4y"; depends=[]; };
   Rspotify = derive2 { name="Rspotify"; version="0.1.2"; sha256="1q8ajjx5ghlgxgch9gifvhi2gmsi0ph8pygwrb9jrd3ijahlw5k4"; depends=[dplyr httr jsonlite magrittr plyr]; };
@@ -4652,7 +4664,6 @@ in with self; {
   Rwave = derive2 { name="Rwave"; version="2.6-0"; sha256="1si4iambn5kxagc24gy83hlvv5zgypz6dqxbzk24qxzfwglkhqzb"; depends=[]; };
   RweaveExtra = derive2 { name="RweaveExtra"; version="1.0-0"; sha256="1jg4dn2x8d74z0wy9j9azvb8f1g0449ji5yl6g964lv2g3fpq6qh"; depends=[]; };
   Rwhois = derive2 { name="Rwhois"; version="1.0.9"; sha256="0jf7byg5ah4djj4b3l0760x9bk9yh6b23aa3w0q1cqlx4j9drf2w"; depends=[stringr]; };
-  Rwinsteps = derive2 { name="Rwinsteps"; version="1.0-1.1"; sha256="0kaxhaa65k1hkhl4kqfxyyk6v967xncrdr5hy8b808zlbqriankc"; depends=[]; };
   Rwofost = derive2 { name="Rwofost"; version="0.8-3"; sha256="1x6ia49xrdqcxilq12g47gd00smm5jdrq7xavndd3dcnvl1nqk1y"; depends=[meteor Rcpp]; };
   Rwordseg = derive2 { name="Rwordseg"; version="0.3-2"; sha256="10jhfalh45rrcm76hwz4b5yl408ndx2wkr0i3q1avx6z6i45d8s6"; depends=[HMM tmcn]; };
   Rwtss = derive2 { name="Rwtss"; version="0.9.1"; sha256="0ihpn96l0bj34ph747q7rfq78sbjjb4hhdjr2a7agc97rrggcr94"; depends=[assertthat dplyr geosphere ggplot2 httr jsonlite lubridate magrittr purrr reshape2 stringr tibble zoo]; };
@@ -4662,11 +4673,11 @@ in with self; {
   Ryacas = derive2 { name="Ryacas"; version="1.1.3.1"; sha256="0c258p7ibas4xbq1wh8c1nfqf6r9d0hicrf8mkkyriw4mb6wmzqq"; depends=[magrittr Rcpp]; };
   Ryacas0 = derive2 { name="Ryacas0"; version="0.4.3"; sha256="1qsj6hbydi923bvc8qy1k34nl73xf3fsmr5ww3dw9gzn1kzg2470"; depends=[Rcpp settings xml2]; };
   S2sls = derive2 { name="S2sls"; version="0.1"; sha256="0qq1rff2cdgrm5rj69jxgrl71i0wmzyn424fdvcg02zdv9ggqhd3"; depends=[spanel]; };
-  SACCR = derive2 { name="SACCR"; version="3.1"; sha256="1nngjaay4n856a1naw8niw30rhzrxxvnkma6wx721r4zv24nkw3k"; depends=[data_tree jsonlite Trading]; };
+  SACCR = derive2 { name="SACCR"; version="3.2"; sha256="1sp8hjpwzyczj85saps6a6yw30yh5098ig2xmlf79jvzv86nqgn1"; depends=[data_tree jsonlite Trading]; };
   SACOBRA = derive2 { name="SACOBRA"; version="1.2"; sha256="1v45l56vifkg3v2bfhk3kfg4fn0dfvrjcgy13zzymm8blr7vazi5"; depends=[mgcv R6 testit]; };
   SADEG = derive2 { name="SADEG"; version="1.0.0"; sha256="02ilykbdanx1isbd80c43hqpzkckq6dg40y0rklcnck6v96qky3n"; depends=[]; };
   SADISA = derive2 { name="SADISA"; version="1.2"; sha256="0yn7f360wl5ykys5zln159xh2h8bx7zb5ddwhv1migjlqry506hp"; depends=[DDD pracma]; };
-  SAEval = derive2 { name="SAEval"; version="0.1.0"; sha256="1vakvgcr289b9c58x83mjj88ksshbh71gxcna0vfpiyl4rdc052b"; depends=[car ggplot2 ggspatial lmtest]; };
+  SAEval = derive2 { name="SAEval"; version="0.1.1"; sha256="036k13q0746rcshpwzrf33mrwa8c3i4bdh14s53xngzzdfxckxlr"; depends=[car ggplot2 ggspatial lmtest]; };
   SAFARI = derive2 { name="SAFARI"; version="0.1.0"; sha256="10fmav9dbq5kbgy8gjsp3561vi46bjvkh2wqjs39vx5z8x1ml7i3"; depends=[caTools EBImage lattice png]; };
   SAFD = derive2 { name="SAFD"; version="2.1"; sha256="078ki9wrmcf80bwhx4d56gas79xrc17a0081i13yxvjqn6w7f7jd"; depends=[]; };
   SAGMM = derive2 { name="SAGMM"; version="0.2.4"; sha256="18ig7ncmrfs5cyc28xpbqk9zjhwqfp7gwix7y2v1j4j2wbdc2hzs"; depends=[lowmemtkmeans mclust MixSim Rcpp RcppArmadillo]; };
@@ -4684,12 +4695,10 @@ in with self; {
   SAR = derive2 { name="SAR"; version="1.0.3"; sha256="1cnf0hsq82lzssvz5xs2abvnrjxda0g6mjx70a1j223zdwjqmw64"; depends=[AzureRMR AzureStor dplyr httr jsonlite Matrix R6 Rcpp RcppArmadillo RcppParallel]; };
   SARP_compo = derive2 { name="SARP.compo"; version="0.1.5"; sha256="17pvgc7alv59lxnrz1rj5gdl2lg90jxfwkyn8j802n22r3bmzcsm"; depends=[car igraph]; };
   SARP_moodle = derive2 { name="SARP.moodle"; version="0.8.7"; sha256="1yq1rvalibdja12461nivaifhdip3w0qzm0z99zcl0h13r6zl55r"; depends=[base64enc]; };
-  SASPECT = derive2 { name="SASPECT"; version="0.1-1"; sha256="1d3yqxg76h9y485pl5mvlx6ls1076f80b320yvx4zxmqq9yxmaba"; depends=[]; };
   SAScii = derive2 { name="SAScii"; version="1.0"; sha256="0nq859xmrvpbifk8q1kbx3svg61rqdg8p8gr1pn85fr0j3w7h666"; depends=[]; };
   SASmarkdown = derive2 { name="SASmarkdown"; version="0.4.3"; sha256="0jc21ylflvv4snik13731acxh9zw79s7hpswk58p2wzvavq8k9zn"; depends=[knitr]; };
   SASmixed = derive2 { name="SASmixed"; version="1.0-4"; sha256="0491x4a3fwiy26whclrc19alcdxccn40ghpsgwjkn9sxi8vj5wvm"; depends=[]; };
   SASxport = derive2 { name="SASxport"; version="1.7.0"; sha256="1na94lxrn8kbhxpiflg14nkdx13rjq9bvvqbxyxh1mq0q7vz7a2l"; depends=[Hmisc stringi]; };
-  SAVE = derive2 { name="SAVE"; version="1.0"; sha256="1m9rrga8x00hlvn0c1jcz6yz14pdm6h3dq14905mq49sw63c7zll"; depends=[coda DiceKriging]; };
   SAVER = derive2 { name="SAVER"; version="1.1.2"; sha256="1s1kw8idkaj7j90fw4qn9k0wd4vz0sblsk06ry6lm4afcar0p158"; depends=[doParallel foreach glmnet iterators Matrix]; };
   SAutomata = derive2 { name="SAutomata"; version="0.1.0"; sha256="0d9q7bm2f7s4aslml40n43vwcdkc8rnn9ygydccwi4b9a7y23k58"; depends=[]; };
   SBAGM = derive2 { name="SBAGM"; version="0.1.0"; sha256="0vb1679016b0bhz2xlka9wgr2fxwa0447ymfncm1n5fks60rrnnf"; depends=[forecast MSGARCH rugarch]; };
@@ -4741,7 +4750,6 @@ in with self; {
   SDT = derive2 { name="SDT"; version="1.0.0"; sha256="1jwpfd1pnzy9wcl90qv5bgwi19shsw9064dvml9zwbif8yw8dzjj"; depends=[quadprog]; };
   SDaA = derive2 { name="SDaA"; version="0.1-3"; sha256="0z10ba4s9r850fjhnrirj2jgnfj931vwzi3kw9502r5k7941lsx0"; depends=[]; };
   SE_EQ = derive2 { name="SE.EQ"; version="1.0"; sha256="09fqx2rcqpiv072l6gqgfz9pdhas98q4kkkm7m4y28k13q2gicgl"; depends=[MASS]; };
-  SEA = derive2 { name="SEA"; version="2.0"; sha256="1pw1509qjjqz63a8biwakdxqgln7kjviacqrjvp1323vf55bi4fs"; depends=[data_table doParallel foreach kolmim KScorrect MASS shiny]; };
   SEAGLE = derive2 { name="SEAGLE"; version="1.0.1"; sha256="1j5wjjw7fl2m4h9brg8dyahf1vmn9wgc7jaajaz6z1xqm6fc0d9k"; depends=[CompQuadForm Matrix]; };
   SEAsic = derive2 { name="SEAsic"; version="0.1"; sha256="1mg01sag6n1qldjvmvbasac86s7sbhi4k99kdkav2hdh6n9jg467"; depends=[]; };
   SECFISH = derive2 { name="SECFISH"; version="0.1.7"; sha256="0yd9k6anz9g4psg5kh1bhp0lr1i4y7in1m0mxk4qp14nl1zqy4fy"; depends=[ggplot2 Hmisc optimization]; };
@@ -4751,7 +4759,6 @@ in with self; {
   SEL = derive2 { name="SEL"; version="1.0-2"; sha256="1nrk0fx6ff330abq8askvp0790xnfv00m3sraqcr32hciw6ks421"; depends=[lattice quadprog]; };
   SELF = derive2 { name="SELF"; version="0.1.1"; sha256="1yafjhxwsanr33dqy7w9x61ghldr29s8k6h68idq6nnfb77ghjyx"; depends=[bnlearn CompareCausalNetworks data_table Rcpp xgboost]; };
   SEMID = derive2 { name="SEMID"; version="0.4.0"; sha256="1888l4m7d944j4cmh6l19fjmrsh6r6xlfwjzpvyanxd769xmyfzc"; depends=[igraph R_methodsS3 R_oo R_utils]; };
-  SEMModComp = derive2 { name="SEMModComp"; version="1.0"; sha256="1za67470f13z8jsy3z588c7iiiz993d3vjqrb8v9fann2r6sf1md"; depends=[mvtnorm]; };
   SEMgraph = derive2 { name="SEMgraph"; version="1.0.5"; sha256="1yr77c46y009h7ra842flvlmi7q1n9bk6ji9wlwkyl62caqn5ksi"; depends=[boot cate corpcor dagitty diffusr flip gdata ggm GGMncv glmnet graph igraph lavaan Matrix pbapply protoclust RcppEigen Rgraphviz]; };
   SEMrushR = derive2 { name="SEMrushR"; version="0.1.0"; sha256="19prwbh429ra69nz3nx4vzqmb46xssci74rk9mhpnzbi52ycg5gd"; depends=[]; };
   SEMsens = derive2 { name="SEMsens"; version="1.0.2"; sha256="18qcwhn1j9ci6338spwgym9g8590p5nc5sdvnpby3xrs9wv76nqs"; depends=[lavaan]; };
@@ -4776,18 +4783,16 @@ in with self; {
   SIDES = derive2 { name="SIDES"; version="1.16"; sha256="0hp0dkdmc5srqjbpvcq2ynwzrfdx06xn4s4a7a3wlssmn4indj69"; depends=[doParallel foreach MASS memoise multicool nnet survival]; };
   SIGN = derive2 { name="SIGN"; version="0.1.0"; sha256="1ak4zv5a50iknrxpfw1iffn8gv8mc0rz2gk96nzky9zx6li5drhk"; depends=[GSVA survcomp survival]; };
   SIHR = derive2 { name="SIHR"; version="0.2.0"; sha256="1km82hrwsdz0chkpsad7bylnkcc7pwc7j0s9ng2hd0w5m85cigc4"; depends=[CVXR glmnet Matrix qpdf Rdpack scalreg]; };
-  SII = derive2 { name="SII"; version="1.0.3.1"; sha256="1xvk04b7725ksfd7h4p7px5zanbf6s7xlmjpb7w0nvbi6km2f7ri"; depends=[]; };
   SILGGM = derive2 { name="SILGGM"; version="1.0.0"; sha256="1lhmisgg2zbfksl7czz0fqag3732gkjc44n615ipxbdi2pvnc7m0"; depends=[glasso MASS Rcpp reshape]; };
   SILM = derive2 { name="SILM"; version="1.0.0"; sha256="1iaivpdx18djfm5dqak0q9kfl1xfrnx3gk5x9a4y53h1d7jhl9p6"; depends=[glmnet hdi scalreg SIS]; };
   SIMEXBoost = derive2 { name="SIMEXBoost"; version="0.1.0"; sha256="0gxw8xb2hvsizawfd863c268q5wq1cdsmdsand5iys2b9gry1pmq"; depends=[MASS]; };
-  SIMMS = derive2 { name="SIMMS"; version="1.3.1"; sha256="0kgaky1hpvvbs2hbzaili9h9pv34c5drfh0d1rc8vf9099xw8575"; depends=[doParallel foreach glmnet MASS randomForestSRC survival]; };
-  SIMPLE_REGRESSION = derive2 { name="SIMPLE.REGRESSION"; version="0.1.3"; sha256="1qs9avqsa3k6gw757k8jq9aq3dwhiq74jbblvdd3g46srma5z9ry"; depends=[nlme]; };
+  SIMPLE_REGRESSION = derive2 { name="SIMPLE.REGRESSION"; version="0.1.4"; sha256="0psmkkfm3i4wffnplm3mclpvkd28lb6kfj8idspmcpvp7414xl3m"; depends=[nlme]; };
   SIN = derive2 { name="SIN"; version="0.6"; sha256="0vq80m3vl8spdnlkwvwy0gk3ziyybqzjp3scnfdcpn942ds7sgg9"; depends=[]; };
   SIPDIBGE = derive2 { name="SIPDIBGE"; version="0.1.6"; sha256="1g8sz5jcndx33456cxciq85lq1jf8sbny649rzq1figbwvcz83ih"; depends=[cli COVIDIBGE PNADcIBGE png PNSIBGE POFIBGE purrr rstudioapi tibble]; };
   SIRE = derive2 { name="SIRE"; version="1.1.0"; sha256="0f624j087k7krg73bqn2qxdgzq66jyhvzz8n024vz3h4hwagxs5n"; depends=[dplyr igraph magrittr MASS Matrix matrixcalc numDeriv psych Rsolnp stringr systemfit]; };
   SIRmcmc = derive2 { name="SIRmcmc"; version="1.1"; sha256="1dqcp0mrddw0zl3zx0z077vd1x0p3q1j5cv8hxln9blmiv1lggx1"; depends=[Rcpp]; };
   SIS = derive2 { name="SIS"; version="0.8-8"; sha256="1f5czwcgpmmn8habm24p3xh4w7jn2faais2x2gmaiq4dpjfnv6h8"; depends=[glmnet ncvreg survival]; };
-  SISIR = derive2 { name="SISIR"; version="0.1-2"; sha256="1bhvgkcnv27av2z5pifs76j4dwpkhzwg7c3jxpc8pwac1s9jiz53"; depends=[doParallel expm foreach glmnet Matrix RSpectra]; };
+  SISIR = derive2 { name="SISIR"; version="0.1-3"; sha256="093a202byak1839d6949yv4f0i43jlcvfmzd41qy4l0i7qdhvr72"; depends=[doParallel expm foreach glmnet Matrix RSpectra]; };
   SITH = derive2 { name="SITH"; version="1.1.0"; sha256="1626nsbnz4fh49wymxm1cqb0nrfyxhmh9fmdxr62dzj5b53amknc"; depends=[Rcpp scatterplot3d]; };
   SIfEK = derive2 { name="SIfEK"; version="0.1.0"; sha256="037ps6yfy7w6i8vm0b78c8w9kdmw312dl5nc2qz86rfk8kjg7w27"; depends=[MASS numDeriv ramcmc smfsb]; };
   SK = derive2 { name="SK"; version="1.1"; sha256="19yg7yc2k4zz29bh42lw2jpjvkdj33f26xkfs8vz8lpp98yjf2vx"; depends=[FitAR GD MASS RColorBrewer rgeos rtop sp]; };
@@ -4807,7 +4812,6 @@ in with self; {
   SMARTAR = derive2 { name="SMARTAR"; version="1.1.0"; sha256="0ymhka4pjlqlnpv47abmc76ggijfw83i3jp9mrspnzcnb4d378xm"; depends=[MASS]; };
   SMARTbayesR = derive2 { name="SMARTbayesR"; version="2.0.0"; sha256="15s6vzxgbskjvgd91q0vb9qxmmsj391bjbw7s51j879cfqd16xg2"; depends=[LaplacesDemon]; };
   SMARTp = derive2 { name="SMARTp"; version="0.1.1"; sha256="0gkhl9j4l67brfmln28m4q4hfi271jlg5aijnjwahlj8nsi6384y"; depends=[covr mvtnorm sn]; };
-  SMC = derive2 { name="SMC"; version="1.1"; sha256="1r4ajgi785lmpnlxrba0n6phmk1f0mb6b5yqk6hx8gng2w8ggclz"; depends=[]; };
   SMCRM = derive2 { name="SMCRM"; version="0.0-3"; sha256="1x06w00sdijhg5h1s61q4ym5wgk97pw9md6api7if2cxjv7h5zcy"; depends=[]; };
   SMDIC = derive2 { name="SMDIC"; version="0.1.3"; sha256="050lbrgbvyj5pzjswb85dn94fzzhcq1pb212qap64f20l0nzlway"; depends=[backports e1071 GSVA maftools MASS pheatmap pracma preprocessCore quadprog RColorBrewer samr survival survminer]; };
   SMFI5 = derive2 { name="SMFI5"; version="1.0"; sha256="10qp33l0dig00y9gfhpzqig6dbkjw76ch9pfq64dn4xrdkpq1kx5"; depends=[corpcor ggplot2 reshape]; };
@@ -4827,6 +4831,7 @@ in with self; {
   SMVar = derive2 { name="SMVar"; version="1.3.3"; sha256="17wr4lixy3p32gr4jq02d7zsr88yrbddjsvynzdsdrwbxf4mwqhp"; depends=[]; };
   SNFtool = derive2 { name="SNFtool"; version="2.3.1"; sha256="05hz230aq5wbzhknxzr4iqv3nqjhbpf66n6bp1rc5h2jgz2yfbwq"; depends=[alluvial ExPosition]; };
   SNPMClust = derive2 { name="SNPMClust"; version="1.3"; sha256="1gad1jfla4qpczh8vpwyss5cckzgpffsyj0d71r8drbspr4i3r90"; depends=[MASS mclust]; };
+  SNPannotator = derive2 { name="SNPannotator"; version="0.2.0.0"; sha256="080gxik9ab0n7vl7l3grmqdc63b3df8wqcr7m8bc1963x014g2cs"; depends=[data_table doParallel foreach ggplot2 httr jsonlite kableExtra openxlsx progress rmarkdown xml2]; };
   SNPassoc = derive2 { name="SNPassoc"; version="2.0-11"; sha256="13njyhz4qk9kx9jv1hspzh1y8j8v8igxg9jcmlkfljvniam5cf6g"; depends=[BiocStyle Biostrings GenomicRanges ggplot2 haplo_stats IRanges mvtnorm org_Hs_eg_db plyr poisbinom S4Vectors survival tidyr TxDb_Hsapiens_UCSC_hg19_knownGene VariantAnnotation]; };
   SNPfiltR = derive2 { name="SNPfiltR"; version="0.1.1"; sha256="1g0hj277cfx6n21zic2n96xlrg9dhziwmvk9hh1gx1vxr6qxb2zf"; depends=[adegenet cluster ggplot2 ggridges gridExtra Rtsne vcfR]; };
   SNPknock = derive2 { name="SNPknock"; version="0.8.2"; sha256="121pdgvdffj61hw8x8m76na0cg5iw5gb586q05ikw5d959mmbzrs"; depends=[Rcpp RcppArmadillo RcppProgress Rdpack]; };
@@ -4843,7 +4848,7 @@ in with self; {
   SOMbrero = derive2 { name="SOMbrero"; version="1.4-1"; sha256="0b9w8xr067hz2lzvxn7xz3llzhyqynskh08rsx7d73gnm56kdcp2"; depends=[ggplot2 ggwordcloud igraph interp markdown metR scatterplot3d shiny]; };
   SOP = derive2 { name="SOP"; version="1.0"; sha256="1c9haq0ds90rwhvmdicaxhzf7vz2m343491sw9qw7w7fbs4fn9fp"; depends=[MASS]; };
   SOPC = derive2 { name="SOPC"; version="0.0.1"; sha256="0xji7c2v8rmsdvpk8g35m8bx9lk0cy29yc5f4q8zv8qjxiy9yz7v"; depends=[elasticnet]; };
-  SOPIE = derive2 { name="SOPIE"; version="1.5"; sha256="0isvb2vzzpn57bq0ix2pfaqdnl5z8qk6v6fvf15vnxcqg2sm63q5"; depends=[ADGofTest circular]; };
+  SOPIE = derive2 { name="SOPIE"; version="1.6"; sha256="1q6991l1wldywv685dv1pkd8ma8jlx4inqr6p1fw1xr7ymm8b1q2"; depends=[ADGofTest circular]; };
   SOR = derive2 { name="SOR"; version="0.23.1"; sha256="1accs4bqy080nfmgkdg7bgamdrcwcn01y6nydvvq12w3v8asdvwh"; depends=[Matrix]; };
   SOUP = derive2 { name="SOUP"; version="1.1"; sha256="0k8nlvl4681cz07xjazprcc0jhknfa5hgr7w1qxxmgrp3sprr8r4"; depends=[tensor]; };
   SP2000 = derive2 { name="SP2000"; version="0.2.0"; sha256="01wrc7p36js20jv04zhphj2vq7qqfgxmrzic066wij0c0mnh0xn5"; depends=[DT jsonlite pbmcapply purrr rlist tibble urltools XML xml2]; };
@@ -4857,14 +4862,13 @@ in with self; {
   SPCALDA = derive2 { name="SPCALDA"; version="1.0"; sha256="1bmp2zz0favmpyp0ap8a2r1mg1nlan7zg5cj75drdnfpqlsn5vgl"; depends=[MASS]; };
   SPCAvRP = derive2 { name="SPCAvRP"; version="0.4"; sha256="10bvr4lqnim40fihq495a4fy4f33pvfd7gsaqjj9bh6gy0z8y4mi"; depends=[MASS]; };
   SPCDAnalyze = derive2 { name="SPCDAnalyze"; version="0.1.0"; sha256="0zaxlc4dw678s0v22ghv7mc4vqsgkcnmbxh7065w6qj9vm7pg5kz"; depends=[lme4 nlme plyr]; };
-  SPECIES = derive2 { name="SPECIES"; version="1.0"; sha256="0p45llf2wjr467bqr4pbljfank9zz3fm42yl3i0r3jbkxgz0rjf0"; depends=[]; };
-  SPEDInstabR = derive2 { name="SPEDInstabR"; version="1.8"; sha256="09kdky1v5vx1xjdlb27228hijfb2g70nxsddj950gdp9sllxkncz"; depends=[]; };
+  SPEDInstabR = derive2 { name="SPEDInstabR"; version="1.9"; sha256="0z27h9yl5lyayqa1wqj700kxrgyi1h13bqm3bbq8zml91dyq209c"; depends=[]; };
   SPEI = derive2 { name="SPEI"; version="1.7"; sha256="0lj7d3bbik7q4di5nqc3a1rn94z2y2v9x45r1jjkvgf03frj96qd"; depends=[ggplot2 lmomco]; };
   SPIAssay = derive2 { name="SPIAssay"; version="1.1.0"; sha256="0y02122lj4v95g62w84jmdjdazfz3rch133aid5sgakj2kv68cvh"; depends=[]; };
   SPIGA = derive2 { name="SPIGA"; version="1.0.0"; sha256="0yd06x5rh1h1s4v9apj43c90rkz8m5kssbny7y5mnw5mr2acds9b"; depends=[GA]; };
   SPINA = derive2 { name="SPINA"; version="4.1.0"; sha256="0x7y150iq072qqci2niqk7j8pvhcylb7kdvwambg1r1gi3ffycm9"; depends=[]; };
   SPIn = derive2 { name="SPIn"; version="1.1"; sha256="109xxrg7bsmmfd6ik85kxrw2qclxbh5ipsh5mmrdl4hki3hnyp2s"; depends=[quadprog]; };
-  SPLICE = derive2 { name="SPLICE"; version="1.0.0"; sha256="1rmva1nl05f5dfv4nl7bcj6sa8rnpy9ikshasaa54r40217b5832"; depends=[SynthETIC zoo]; };
+  SPLICE = derive2 { name="SPLICE"; version="1.1.0"; sha256="1jcw7nikla75aqfbplv2cklq19rfd8naamldvllzy2pjb879vqkk"; depends=[lifecycle SynthETIC zoo]; };
   SPODT = derive2 { name="SPODT"; version="0.9-1"; sha256="01yq429a4s63855bwpn2mqjj2k3cz4187kfpi7n7qqdpdvmxz109"; depends=[rgdal sp tree]; };
   SPORTSCausal = derive2 { name="SPORTSCausal"; version="1.0"; sha256="1ww1wi3kflwj1f5slfv0mfi7gbaj7y8rk1m3n15szpxb9zm8grks"; depends=[CausalImpact keras]; };
   SPOT = derive2 { name="SPOT"; version="2.5.18"; sha256="1zgcvz78q8hd9bzhayv35rwgwansank1d9yb2qyihy3m0jw6c428"; depends=[DEoptim ggplot2 glmnet laGP MASS nloptr plgp plotly randomForest ranger rgenoud rpart rsm]; };
@@ -4873,10 +4877,10 @@ in with self; {
   SPREDA = derive2 { name="SPREDA"; version="1.1"; sha256="0fn4p5apjq8zgd3zms2b88ga5wbsv86y59ac5x06w75rf071xglv"; depends=[nlme survival]; };
   SPRT = derive2 { name="SPRT"; version="1.0"; sha256="1r4pfqh8k5avi8qgpk5x1cy8lmkn341yvjvd2r7wqwb3mr242r0v"; depends=[]; };
   SPSL = derive2 { name="SPSL"; version="0.1-9"; sha256="0kf6mmbvavid3dw2l4fkclk669wi13wkyykhwn5272d6qnhlhhca"; depends=[]; };
-  SPSP = derive2 { name="SPSP"; version="0.1.0"; sha256="15ad0binagm1g1gmk11n0zxy3rbkz3n49cc1jaa0vvzbwcvhh65r"; depends=[glmnet lars MASS Rcpp]; };
+  SPSP = derive2 { name="SPSP"; version="0.1.1"; sha256="0bzlgjijwp5y6lk9hjqc2p8b1i6mp8jd7j7gsl47whc3lavr1nn8"; depends=[glmnet lars Rcpp]; };
   SPUTNIK = derive2 { name="SPUTNIK"; version="1.4"; sha256="1sspsvll7b03z2ag2iixydcbbjr2glg1n6k7m1lapq4ra77arh7i"; depends=[doSNOW e1071 edgeR foreach ggplot2 imager infotheo irlba reshape spatstat spatstat_core spatstat_data spatstat_geom spatstat_linnet spatstat_sparse spatstat_utils testthat viridis]; };
   SPYvsSPY = derive2 { name="SPYvsSPY"; version="0.1.1"; sha256="1hxc73wwrzqh1r1xr9yd4hy4ma24virg4iv978lfyc9f9n56znp5"; depends=[]; };
-  SPlit = derive2 { name="SPlit"; version="1.0"; sha256="10al2qzcxirrzdsgrjhnh7k1l9faqfbqgy50a81bjns0v3kk4m27"; depends=[Rcpp RcppArmadillo]; };
+  SPlit = derive2 { name="SPlit"; version="1.1"; sha256="0vxbwclcipf0wz391yp5qb8ndxqxq8pzkf4vz7fszdb70yrqa5b7"; depends=[Rcpp RcppArmadillo]; };
   SPmlficmcm = derive2 { name="SPmlficmcm"; version="1.4"; sha256="1acs3560a7h6xx286m40abr9b7i5qihn6wni8flj0biahmsszzx6"; depends=[nleqslv]; };
   SPreg = derive2 { name="SPreg"; version="1.0"; sha256="1702i86qcbnqyi7r5wc2ciyk3l46329kmnrz91jzqq85z8cwgak1"; depends=[sn ucminf]; };
   SQB = derive2 { name="SQB"; version="0.4"; sha256="12ii8xlwd2r77bj76j7l43898ras25z3plhhv106jaklhpcnk23m"; depends=[caret nnet pls rpart]; };
@@ -4902,6 +4906,7 @@ in with self; {
   SSRA = derive2 { name="SSRA"; version="0.1-0"; sha256="1d0lg2dz8vf1d63366s5apm0ygrsfxivbrsij907r244zj6i1c37"; depends=[shape stringr]; };
   SSRMST = derive2 { name="SSRMST"; version="0.1.1"; sha256="15s6vcmk8a27yw3rlfkajby6qkizp4sfiyi63m7hc86svd15x4wg"; depends=[survival survRM2]; };
   SSRTcalc = derive2 { name="SSRTcalc"; version="0.3.3"; sha256="0m8qc1rzx3rag69m0jvanx524d49smkgnmj99fl54frzqh0ji1ss"; depends=[]; };
+  SSVS = derive2 { name="SSVS"; version="1.0.0"; sha256="1x8s93cfhx6xrdknqmhgaqidk1qhgnbkdv9snpshvkfc92byh162"; depends=[bayestestR BoomSpikeSlab checkmate ggplot2 rlang]; };
   SSrat = derive2 { name="SSrat"; version="1.1"; sha256="1mmwla7yqqldv0s5hqljq2k2qljdfhq97m5128gvf3iy7n2yjzgj"; depends=[plyr sna]; };
   SSsimple = derive2 { name="SSsimple"; version="0.6.6"; sha256="1nhwr9kvlx899wsgzp47ykq3awp7p54zcvsdmjjh9ch4qcm9q2sm"; depends=[mvtnorm]; };
   STAND = derive2 { name="STAND"; version="2.0"; sha256="07wrpmvk0jjlghvrb37xyai48vgzj0fby8y09qdxsxdlgwqg1f3s"; depends=[survival]; };
@@ -4923,26 +4928,25 @@ in with self; {
   STV = derive2 { name="STV"; version="1.0.2"; sha256="02cd78z2k08gg5kskw1m53dc2xyl9f8qhcnhvy9n90ckakw6h19h"; depends=[]; };
   STraTUS = derive2 { name="STraTUS"; version="1.1.2"; sha256="0n3i7gbycp1f10058h9xlh3yk21w2izdb3xgs793mmh1i1sjy394"; depends=[ape ggplot2 ggtree gmp igraph phangorn RcppAlgos]; };
   SUE = derive2 { name="SUE"; version="1.0"; sha256="0akv724s84v2zixvwywj1ydfnfvcjnaabv6gm0601nsrh6ij1mi6"; depends=[]; };
-  SUMMER = derive2 { name="SUMMER"; version="1.2.0"; sha256="1y9mq6smpnhwl6ah6z57z0rcm4jqyi82076w0xb9ghwidncpszz4"; depends=[data_table ggplot2 ggridges Matrix RColorBrewer reshape2 shadowtext sp spdep survey survival viridis]; };
+  SUMMER = derive2 { name="SUMMER"; version="1.2.1"; sha256="0wg9nz46dy5mll7dam8g24iaxn390lnggl7x2b88rrzy2kgcd11l"; depends=[data_table ggplot2 ggridges Matrix RColorBrewer reshape2 scales shadowtext sp spdep survey survival viridis]; };
   SUNGEO = derive2 { name="SUNGEO"; version="0.2.288"; sha256="0c8y0ngx1020rw2v00rxmq8syd72f41ckik5sg7gigg7d80gi31w"; depends=[automap cartogram data_table dplyr fasterize httr jsonlite measurements packcircles purrr RANN raster Rcpp RCurl rlang rmapshaper sf sp spdep]; };
   SVMMaj = derive2 { name="SVMMaj"; version="0.2.9"; sha256="1405gigyjfp8by8nfx4g3rhw9x6r6g7dkpgw52jllv6n4036xa3h"; depends=[dplyr ggplot2 gridExtra kernlab reshape2 scales]; };
   SVMMatch = derive2 { name="SVMMatch"; version="1.1"; sha256="1ykwrhlid4hs466xh3kv6y2qdhgk0jiglg0l3zwk5qlni6p26zc9"; depends=[Rcpp RcppArmadillo]; };
   SVN = derive2 { name="SVN"; version="1.0.1"; sha256="0n93lqb1f2s2qvzc8lrcqmr0fhd57xqbi0ymrqqmll31ns679m92"; depends=[data_table igraph memoise]; };
   SWIM = derive2 { name="SWIM"; version="1.0.0"; sha256="1pfrwxn4rha7a68b82lq18x6acyhjy9d8nn2hdwd9hhf576vkvhg"; depends=[ggplot2 Hmisc nleqslv plyr Rdpack reshape2]; };
   SWMPr = derive2 { name="SWMPr"; version="2.4.1"; sha256="1dqhsqigfbfj167mp2h0wfybaymj9zlywh5d3syrrmpr694f9kz5"; depends=[data_table dplyr ggplot2 gridExtra httr lattice maptools oce openair RColorBrewer reshape2 tictoc tidyr XML zoo]; };
-  SWMPrExtension = derive2 { name="SWMPrExtension"; version="2.1.0"; sha256="1vb3gj3hpyr8cadgz01c151akyr4w6ss37hr9rz2fjdr8xq5ihp7"; depends=[broom dplyr EnvStats flextable ggplot2 ggthemes lubridate magrittr officer purrr RColorBrewer rlang scales sf SWMPr tidyr tidyselect]; };
-  SWTools = derive2 { name="SWTools"; version="0.2.2.0"; sha256="07cp2v7njzzclq3x6wl55y8ymv5f55g1b31ss26xbiwsc4ri5z8k"; depends=[dplyr forcats ggmap ggplot2 ggrepel httr hydroTSM jsonlite lubridate magrittr RColorBrewer reshape2 rlang rmarkdown segmented sf stringr tibble tidyr zoo]; };
+  SWMPrExtension = derive2 { name="SWMPrExtension"; version="2.1.1"; sha256="1d8lpz2ywr50m9w0a53rff26l33vx2a1lbx5hsiiq0mbg4m5r9jc"; depends=[broom dplyr EnvStats flextable ggplot2 ggthemes lubridate magrittr officer purrr RColorBrewer rlang scales sf SWMPr tidyr tidyselect]; };
+  SWTools = derive2 { name="SWTools"; version="0.2.3.0"; sha256="04csm7m9xrs4d5b37yy2hzi35m03rm6kqxmzh8lwqj5qbyd07gdp"; depends=[dplyr forcats ggmap ggplot2 httr hydroTSM jsonlite lubridate magrittr readr reshape2 rlang rmarkdown segmented sf sp stringr tibble tidyr zoo]; };
   SYNCSA = derive2 { name="SYNCSA"; version="1.3.4"; sha256="0n9za302x638s666xs86zy94qch9wn0rln8xy6x9jymhhq9zn0kj"; depends=[FD permute RcppArmadillo vegan]; };
   SailoR = derive2 { name="SailoR"; version="1.2"; sha256="04qrnps40845ypapf37jg1c1g05nii6iwk4fv1x5xyca963hl5ii"; depends=[]; };
   Sample_Size = derive2 { name="Sample.Size"; version="1.0"; sha256="1vfnb2gg3rax4sxd81xqznfvh300nv45nn7zjsyrdjyg1n3ym7nw"; depends=[]; };
   SampleSize4ClinicalTrials = derive2 { name="SampleSize4ClinicalTrials"; version="0.2.3"; sha256="0s8svsgwh79rcwnskz0my2xqasyp370hn7aixqm9m6zqlvf42zc2"; depends=[]; };
   SampleSizeMeans = derive2 { name="SampleSizeMeans"; version="1.1"; sha256="1wbc46n8b8wbcxl21blbzs5728dr8r0l8d3jpzbha8pcav0xrh1m"; depends=[]; };
-  SampleSizeProportions = derive2 { name="SampleSizeProportions"; version="1.0"; sha256="0mvkvx3nni0l8ys68sq3h2zlbjvksdcdzxqlf03k0ca5bbcmdf9l"; depends=[]; };
   SamplerCompare = derive2 { name="SamplerCompare"; version="1.3.2"; sha256="09j06ycr749dbr6xbn5pxw7rp1p3cri40z38hf1kp5kvjxkkpy2w"; depends=[mvtnorm]; };
   SamplingBigData = derive2 { name="SamplingBigData"; version="1.0.0"; sha256="0khrh7vfqqzpfp16x0ic5ml854wr2fj28cx95s6c0pz91hzlxkns"; depends=[]; };
   SamplingStrata = derive2 { name="SamplingStrata"; version="1.5-2"; sha256="1wqqcqka2an5ily91c2z8qw061xfbxgnxr783h584lbyx6ckzj4a"; depends=[doParallel glue memoise pbapply SamplingBigData]; };
   SanFranBeachWater = derive2 { name="SanFranBeachWater"; version="0.1.0"; sha256="18w2q3hzcrbmagnjyrn1ikwiyjh723mjb2vy0d8p1a6za0460p9w"; depends=[dplyr lubridate magrittr readr rvest tibble xml2]; };
-  SangerTools = derive2 { name="SangerTools"; version="1.0.1"; sha256="01r8nfpwspsrcxix536c4kc139vn2214hgn38qriz9l5giwfa7r3"; depends=[DBI dplyr ggplot2 ggtext ggthemes janitor magrittr odbc readr readxl scales]; };
+  SangerTools = derive2 { name="SangerTools"; version="1.0.2"; sha256="0ijxfa1h3mx86jk1s27qp7l4sz2d7i7llkwjvgnih9zjk0ybrdzw"; depends=[DBI dplyr ggplot2 ggtext ggthemes janitor magrittr odbc readr readxl rlang scales tibble]; };
   Scalelink = derive2 { name="Scalelink"; version="1.0"; sha256="0likfjw5999zd0kv1ykby78bl0x3xgh0v1yjssk7fnw1ghkxgdib"; depends=[Rcpp RcppParallel]; };
   SciViews = derive2 { name="SciViews"; version="0.9-13.1"; sha256="0wm4vnjh65jxyg82m8l08kanl414qiaz0cc6srshb8sdx2sixkfi"; depends=[ellipse]; };
   ScoreEB = derive2 { name="ScoreEB"; version="0.1.1"; sha256="0lvdywkw2g0xdgf7zj39h1903rd0jg2lzgqq7cfni11pniv6265n"; depends=[data_table]; };
@@ -4991,7 +4995,7 @@ in with self; {
   SeqMADE = derive2 { name="SeqMADE"; version="1.0"; sha256="0nf1xjhk0kpmmzgcxycg3ccxvwq6gydjq7xq6n9m7k7v35v9v3qf"; depends=[MASS]; };
   SeqNet = derive2 { name="SeqNet"; version="1.1.3"; sha256="1ix3c249q758si6670hqa56g1snqqwqdrwshfwajvynl7k2zqzmv"; depends=[fitdistrplus ggplot2 igraph mvtnorm purrr Rcpp Rdpack rlang tibble]; };
   SequenceSpikeSlab = derive2 { name="SequenceSpikeSlab"; version="1.0.0"; sha256="1aa89qnx43ia6lkaaz26jcrx8i9yxjsx5dpz8rpa0hv1h12g5ani"; depends=[Rcpp RcppProgress selectiveInference]; };
-  Sequential = derive2 { name="Sequential"; version="4.1"; sha256="1wl499i18nkxjwv27c030jsxij2wa68c99h2wa445wa5xrhn6kvx"; depends=[boot]; };
+  Sequential = derive2 { name="Sequential"; version="4.2"; sha256="0ilpbzxgdqp8xzhyk51kvzigy0s8vpcwsjq9j7n83ca37anc83hf"; depends=[boot]; };
   SequentialDesign = derive2 { name="SequentialDesign"; version="1.0"; sha256="1gi37pixwbpy7358id1c75rckr352hs8vjs8sk8qgsr97pkm5xdq"; depends=[Sequential]; };
   SetMethods = derive2 { name="SetMethods"; version="3.0"; sha256="14hh1rb8bma0cx3v9dmn58mkv6sky7xcnhwxwij5x8hp93a1i9is"; depends=[admisc betareg fmsb ggplot2 ggrepel QCA scatterplot3d stargazer]; };
   SetRank = derive2 { name="SetRank"; version="1.1.0"; sha256="0p7vwsw05s5hfw1mfh3fbm9nfzsymnxzrdjin7k21dx7asb618wy"; depends=[data_table igraph XML]; };
@@ -5019,7 +5023,7 @@ in with self; {
   SigOptR = derive2 { name="SigOptR"; version="0.0.1"; sha256="1sylchhhz6kx4r8jx95cvsmjsacjh8pin7acf2fyw2a4nlx9r1a6"; depends=[httr jsonlite]; };
   SigTree = derive2 { name="SigTree"; version="1.10.6"; sha256="18gh7azjr979ijc2y4yyskj24ay697rw3j7znc5p4a63s4vpxr9w"; depends=[ape MASS phyext2 phylobase phyloseq RColorBrewer vegan]; };
   SightabilityModel = derive2 { name="SightabilityModel"; version="1.4.2"; sha256="0hll6cfl0zkxvdbfs7cdmqazinyyrg9vk4px2gb9s1dqix7cyvv5"; depends=[formula_tools Matrix msm plyr survey]; };
-  Signac = derive2 { name="Signac"; version="1.5.0"; sha256="1dl05n2pmfn8yk1p1073a47l6d54p5wc46h5lzfcll9s58qgpq64"; depends=[BiocGenerics data_table dplyr fastmatch future future_apply GenomeInfoDb GenomicRanges ggforce ggplot2 ggrepel ggseqlogo IRanges irlba lsa Matrix patchwork pbapply qlcMatrix Rcpp RcppRoll Rsamtools S4Vectors scales Seurat SeuratObject stringi tidyr]; };
+  Signac = derive2 { name="Signac"; version="1.6.0"; sha256="1fh0n15snbj3cv1wfzl084188g9xsxxi4j511j3rvji3ik0nbd6z"; depends=[BiocGenerics data_table dplyr fastmatch future future_apply GenomeInfoDb GenomicRanges ggforce ggplot2 ggrepel ggseqlogo IRanges irlba lsa Matrix patchwork pbapply qlcMatrix Rcpp RcppRoll Rsamtools S4Vectors scales Seurat SeuratObject stringi tidyr tidyselect]; };
   SignacX = derive2 { name="SignacX"; version="2.2.5"; sha256="0b38k3lxca985mqwvbbdczkjnn2x79kga05yw995gb6d20cjh96v"; depends=[igraph jsonlite lme4 Matrix neuralnet pbmcapply RColorBrewer RJSONIO Seurat]; };
   SignifReg = derive2 { name="SignifReg"; version="4.2"; sha256="0bgw6dkn15rlpcqfpbar3nxvcvwd0afa3lss4idnb65kvcyzzljk"; depends=[car]; };
   Sim_DiffProc = derive2 { name="Sim.DiffProc"; version="4.8"; sha256="16pzcs1g5ihza9a2glnkgd5pxi77l6w34vkn0vxcb78gc6syhbrd"; depends=[Deriv MASS]; };
@@ -5051,11 +5055,9 @@ in with self; {
   SimilaR = derive2 { name="SimilaR"; version="1.0.8"; sha256="1wlxscl94r3gxwsc9yw0y4z5nj28nxilijp0pbzv4z2n4aqc7vy6"; depends=[BH Rcpp stringi]; };
   SimilarityMeasures = derive2 { name="SimilarityMeasures"; version="1.4"; sha256="1w4klcln4hy9vcik9csg7b3b8kk4raxgckwfrhqg089d80xbqsxj"; depends=[]; };
   Simile = derive2 { name="Simile"; version="1.3.3"; sha256="1izyjp18m1inac3svkf59z3lddrv44m7pdkhisgkr987xs8gdch4"; depends=[]; };
-  SimpleTable = derive2 { name="SimpleTable"; version="0.1-2"; sha256="1rkybrp7zlb7cj37799npss1ldic0yf519q5l7a6ikal4yl1afyb"; depends=[hdrcde locfit MCMCpack]; };
   SimplicialCubature = derive2 { name="SimplicialCubature"; version="1.3"; sha256="06dpbawn650lzybd5j4xkygbg5s2nqfz6b4g0skm4z7lsb2d9dhb"; depends=[]; };
   SimplifyStats = derive2 { name="SimplifyStats"; version="2.0.4"; sha256="08775g6fdx09y8pkfq4k8zxbxpwah7yqq5cg30lmxl7zrpmza5hv"; depends=[assertthat broom dplyr moments tibble]; };
   SimplyAgree = derive2 { name="SimplyAgree"; version="0.0.2"; sha256="1jax36yqr1j9zwbv69x81fyyd5ymy84k9mvvn3qvvngab6daqxlg"; depends=[boot cccrm dplyr emmeans ggplot2 jmvcore lme4 magrittr sjstats stringr tidyr tidyselect]; };
-  Simpsons = derive2 { name="Simpsons"; version="0.1.0"; sha256="1pm6wga1yxc35zgz72plzq23d3l4bbzfdvhszdxmkn1pkk64h8ms"; depends=[mclust]; };
   SinIW = derive2 { name="SinIW"; version="0.2"; sha256="1z7rcjy0i09a9hjpjj1x8i46lv042l20lvb6b0pnsky2sx3v78pd"; depends=[fdrtool pracma]; };
   SingleCaseES = derive2 { name="SingleCaseES"; version="0.5.0"; sha256="17fvh327cwc809v3zkz3xqb0i1nc954xha60yq6wjc8n33d8qlqy"; depends=[dplyr magrittr purrr rlang tidyr tidyselect]; };
   SiteAdapt = derive2 { name="SiteAdapt"; version="1.1.0"; sha256="1k79j29d92a8m578xj61iavljikksdmjr2vlzwmdvxpa6rp1i2ff"; depends=[ggplot2 ggpubr glmulti hydroGOF hyfo RColorBrewer solaR]; };
@@ -5109,6 +5111,7 @@ in with self; {
   SpNMF = derive2 { name="SpNMF"; version="0.1.1"; sha256="1xybxx47i3ww5d7chwl38xc48fbsclgyxcki8h85c6dkm49dxy8i"; depends=[NMF]; };
   SpNetPrep = derive2 { name="SpNetPrep"; version="1.2"; sha256="1jhjyrb0k5z21vn9bc444rxax3lxsyzyhggrcy7zl9ps7p4ra990"; depends=[leaflet maptools prodlim raster rgdal shiny shinythemes sp spatstat spatstat_core spatstat_geom spatstat_linnet]; };
   SpaCCr = derive2 { name="SpaCCr"; version="0.1.0"; sha256="0qm1fr6nnax3i1i77fi73x1z8db557avh6kivs0nskb1dfj8ri4m"; depends=[abind dplyr ggplot2 Rcpp RcppArmadillo tidyr]; };
+  SpaDES = derive2 { name="SpaDES"; version="2.0.8"; sha256="0gzhhqfszssf56v7mi735znwk4x061k5rar3baibs1qdf17p0c12"; depends=[quickPlot reproducible SpaDES_core SpaDES_tools]; };
   SpaDES_addins = derive2 { name="SpaDES.addins"; version="0.1.3"; sha256="0bhn9rj9p5rkcxz0pn2n1l3vij6khxhla0vgzrazh9f7s4hyyymp"; depends=[devtools magrittr miniUI reproducible rstudioapi shiny SpaDES_core stringi]; };
   SpaDES_core = derive2 { name="SpaDES.core"; version="1.0.10"; sha256="0yg3fdw1m7gfr9g3zy73qnpqb33v0brkx68fwmlbmygfk9yhzqh5"; depends=[crayon data_table fastdigest igraph qs quickPlot raster reproducible Require whisker]; };
   SpaDES_tools = derive2 { name="SpaDES.tools"; version="0.3.10"; sha256="151csnabpckzl3jgxj26jnfnghkmahdp35rf7r0wmajcaddhfk5s"; depends=[backports checkmate CircStats data_table fastmatch fpCompare magrittr quickPlot raster Rcpp Require rgeos sp]; };
@@ -5123,7 +5126,7 @@ in with self; {
   SparseMDC = derive2 { name="SparseMDC"; version="0.99.5"; sha256="0d3ashk3l9fjdbiyjhaxc05ayyscissrg7lwhnh46hv3fydbixlj"; depends=[doParallel doRNG foreach]; };
   SparseMSE = derive2 { name="SparseMSE"; version="2.0.1"; sha256="1alpvj0ya3r64wwfdzz2aaxgaf6512glzl65p97606c2fwrm6db7"; depends=[lpSolve Rcapture]; };
   SparseTSCGM = derive2 { name="SparseTSCGM"; version="4.0"; sha256="01lfb3j907244hgapb85kba7zdmgzhw452gri208qgrjzfv2x9yh"; depends=[abind glasso huge longitudinal MASS mvtnorm network]; };
-  SpatEntropy = derive2 { name="SpatEntropy"; version="2.0-1"; sha256="1hr81babgml8mikpfkzk99xhpmxg36dxi9m7f22p23mhvg1xmn5i"; depends=[spatstat spatstat_core spatstat_geom spatstat_linnet]; };
+  SpatEntropy = derive2 { name="SpatEntropy"; version="2.1-1"; sha256="0navil5wjzw67diz87ijnaikx4ws7fnbqqbmpdxhla6dfdd8yhd5"; depends=[spatstat spatstat_core spatstat_geom spatstat_linnet spatstat_random]; };
   SpatialAcc = derive2 { name="SpatialAcc"; version="0.1-4"; sha256="09rkzfzg6nh4n7dizkqrz651kp617l2557c9qpxacspl3ngbm82i"; depends=[sp]; };
   SpatialBSS = derive2 { name="SpatialBSS"; version="0.12-0"; sha256="173zr8r0wp7zcg4ziqagfzzlwf5gjcywj5nqvsnnpwbgjagpfla1"; depends=[JADE Rcpp RcppArmadillo sp]; };
   SpatialBall = derive2 { name="SpatialBall"; version="0.1.0"; sha256="09iy1smfqnb0rd2s9a1wqgscb1plwcwwph6a8215l4zrs6svszv2"; depends=[dplyr ggplot2 hexbin lubridate RColorBrewer]; };
@@ -5131,7 +5134,7 @@ in with self; {
   SpatialExtremes = derive2 { name="SpatialExtremes"; version="2.0-9"; sha256="1mhn1c8n3bmgf0fjyac3wji4790zswzkqliqcv3n8kv9806crb0y"; depends=[fields maps]; };
   SpatialFloor = derive2 { name="SpatialFloor"; version="1.1.0"; sha256="07mwgcvkkq478l6wxvrdjs9d578x0kgs5xy86lgy5my0xqfcv6y8"; depends=[blocksdesign fields reshape2 taRifx]; };
   SpatialGraph = derive2 { name="SpatialGraph"; version="1.0-2"; sha256="0cwswa5g3a6ng8qkwi04jz9pma4i0c16m7jpq6z3djzjin0znyk2"; depends=[igraph rgeos shape sp splancs]; };
-  SpatialKDE = derive2 { name="SpatialKDE"; version="0.6.2"; sha256="00gdx9jhfybxvfigsym122wfc72vks9bs4zlsij5wp9d1l3r0kfr"; depends=[dplyr glue magrittr raster Rcpp rlang sf vctrs]; };
+  SpatialKDE = derive2 { name="SpatialKDE"; version="0.7.0"; sha256="0qmky12886bw2i7lnhcqq9zzyzmbh1670c8l2adqjiz9k0cykmp4"; depends=[dplyr glue magrittr raster Rcpp rlang sf vctrs]; };
   SpatialKWD = derive2 { name="SpatialKWD"; version="0.4.0"; sha256="0nsrf30bl3yc1h1kldv1ah1jjb4qh4hd99rd1nz9q9rqmdp0dcrw"; depends=[Rcpp]; };
   SpatialML = derive2 { name="SpatialML"; version="0.1.3"; sha256="0akip0kkd1jjid12iwmaxkhkvcfzkxmrnrsv0b6nnvpjdl1jb589"; depends=[randomForest]; };
   SpatialNP = derive2 { name="SpatialNP"; version="1.1-5"; sha256="0cxh1f4182mfihq6m82zh2lgafrsiqvgrfxbk66zkjrrbfn8gkcl"; depends=[]; };
@@ -5155,13 +5158,13 @@ in with self; {
   Spillover = derive2 { name="Spillover"; version="0.1.0.1"; sha256="0jwhih0jzd6grd9y967k7j5vwv9sd20xqi2270y1cgl64v21bjzm"; depends=[fastSOM vars zoo]; };
   Splinets = derive2 { name="Splinets"; version="1.0.0"; sha256="1fws9svxvn03xgfqmqwr169wgl544zv87yrdi4nl5z32cq5c9yk5"; depends=[]; };
   SplitGLM = derive2 { name="SplitGLM"; version="1.0.2"; sha256="0708jz8j44lw6zs5f6w4v9pf7apd22j15g7lszc8kwlm8xsnnkf6"; depends=[Rcpp RcppArmadillo]; };
-  SplitKnockoff = derive2 { name="SplitKnockoff"; version="1.0"; sha256="0mnjrxcd5gq723i9cf62jpijyl879j8lkp808mm860islnqsm1qq"; depends=[ggplot2 glmnet latex2exp MASS Matrix mvtnorm RSpectra]; };
+  SplitKnockoff = derive2 { name="SplitKnockoff"; version="1.1"; sha256="090q3hw010rnnqj7qi615h6xlbkaxkrv9gsaxdfwhcffvpfi9anr"; depends=[ggplot2 glmnet latex2exp MASS Matrix mvtnorm RSpectra]; };
   SplitReg = derive2 { name="SplitReg"; version="1.0.2"; sha256="1s012qldrsq8rpfpzf7kyd7631b65zai269x53xcaqn75r5ssh3f"; depends=[Rcpp RcppArmadillo]; };
   SplitSoftening = derive2 { name="SplitSoftening"; version="2.1-0"; sha256="1fgcqax81zpknw642fm9dx1f6dpdgbcf3va0m1bhj6kl98yq7dqd"; depends=[]; };
   SportsAnalytics = derive2 { name="SportsAnalytics"; version="0.2"; sha256="1vb080ak1mfvr6d0q9i3r8hd547ba80bavjdcri0gclqqcjf1ach"; depends=[]; };
   SportsTour = derive2 { name="SportsTour"; version="0.1.0"; sha256="06d66yv0b7c3mg1bcnrlg576njxgri107ni0vnl27hzf46fyidwa"; depends=[]; };
   SpotSampling = derive2 { name="SpotSampling"; version="0.1.0"; sha256="0s47dvigzkcl9ynrdiwrjzwap18dpkb29jngi8ddvf9m4xywj4al"; depends=[BalancedSampling MASS pracma sampling WaveSampling]; };
-  SqlRender = derive2 { name="SqlRender"; version="1.8.3"; sha256="0j03lrxv3pakfyay8hnjk4523f22ch5v6hfvwjpyqvcdw0ip4v8q"; depends=[rJava rlang]; };
+  SqlRender = derive2 { name="SqlRender"; version="1.9.0"; sha256="1ivikd86kb6z5w6i7aqpn9a51g9z6p298amf36l1a9azqwggxm5l"; depends=[rJava rlang]; };
   Sshaped = derive2 { name="Sshaped"; version="1.0"; sha256="0zvbgn9hxp2a23g3q028k8ywrwkbzx17a3szvmbj0gcn3kcafvdi"; depends=[Rcpp RcppArmadillo]; };
   Sstack = derive2 { name="Sstack"; version="1.0.1"; sha256="137vsas2kw3l37c141g51sgx0j6z8ys6hbxjmsdymz1fxsjr4adg"; depends=[doParallel dplyr foreach randomForest]; };
   StAMPP = derive2 { name="StAMPP"; version="1.6.3"; sha256="0yqvy4yw9ccsbpjm6z1b9lh3435minfl7acnc1ha0zgiw8bvs2n2"; depends=[adegenet doParallel foreach pegas]; };
@@ -5178,7 +5181,7 @@ in with self; {
   Stat2Data = derive2 { name="Stat2Data"; version="2.0.0"; sha256="1fpp3b4k7x915a9wkpyj4dvvqp0wz7c3lpbh154vrxrdsr712z0k"; depends=[]; };
   StatDA = derive2 { name="StatDA"; version="1.7.4"; sha256="1ld7fx1lip54n24r2d9zvd4hri3w02vd174bdi8pi9j5n8xpxl02"; depends=[cluster e1071 geoR MASS MBA mgcv rgl robustbase sgeostat sp xtable]; };
   StatDataML = derive2 { name="StatDataML"; version="1.0-26"; sha256="1lcckapbhqdbg6alnhm2yls66lnkxnxamdlzx6pbfqv1dhsy36gf"; depends=[XML]; };
-  StatMatch = derive2 { name="StatMatch"; version="1.4.0"; sha256="0nd4s57rzq4zgi5b7krbdhz9vwxvj5j63kazdyhlwwqk4b6r2042"; depends=[ggplot2 lpSolve proxy survey]; };
+  StatMatch = derive2 { name="StatMatch"; version="1.4.1"; sha256="1iavyaj6q8rbvhki98q8zwikfrgjrp6w8prhnqhiv0yb8k27jm0c"; depends=[ggplot2 lpSolve proxy survey]; };
   StatMeasures = derive2 { name="StatMeasures"; version="1.0"; sha256="1bnbz803xx8kqhy1cx545b35si6f10za0mp5z82qfvd4kv9a9izz"; depends=[data_table]; };
   StatPerMeCo = derive2 { name="StatPerMeCo"; version="0.1.0"; sha256="1nm6brlj6h7jx8nqagrfk294ay3pfmkiizabwlb87qfnsfwchpk3"; depends=[]; };
   StatRank = derive2 { name="StatRank"; version="0.0.6"; sha256="14d8v3bp8vgksi6q0mxajwd9s8zi6lns3qwi1vcr5xp9rjp4n6iy"; depends=[ggplot2 plyr truncdist]; };
@@ -5225,7 +5228,7 @@ in with self; {
   SunterSampling = derive2 { name="SunterSampling"; version="1.0.1"; sha256="0qfld3j8xlpgp7c58zqw6gzm38m4d740lvdj5vmcflfcc6ja98sf"; depends=[]; };
   SupMZ = derive2 { name="SupMZ"; version="0.2.0"; sha256="1n81wqacrpk5x6i1pd1zsjivv2jk41743kg1h7gnp0rb3k58vp7r"; depends=[dplyr magrittr]; };
   SuperExactTest = derive2 { name="SuperExactTest"; version="1.0.7"; sha256="1ysfsdzbkldcn7hzxhqikf5h2h9747xhfrirqgr8xx8q81wq989s"; depends=[]; };
-  SuperGauss = derive2 { name="SuperGauss"; version="2.0.2"; sha256="1wbx1s1260qg731n4zj212b6kffdppxw1fg0n8yjp2mc8zgp7r9d"; depends=[fftw R6 Rcpp RcppEigen]; };
+  SuperGauss = derive2 { name="SuperGauss"; version="2.0.3"; sha256="174gicpk2jwbzg39m44sxp7506cja9cnn95r287sq7049lrj302a"; depends=[fftw R6 Rcpp RcppEigen]; };
   SuperLearner = derive2 { name="SuperLearner"; version="2.0-28"; sha256="00any24msgflyagy87nznpfjz5g9v15frqda6c679wa8plx26hjz"; depends=[cvAUC gam nnls]; };
   SuperPCA = derive2 { name="SuperPCA"; version="0.4.0"; sha256="0bpcxg9rh3ig5fzml026glws13daf5hiqbvdy7hsriv8y8qlxnfk"; depends=[fBasics glmnet MASS matlab matlabr Matrix matrixStats pracma psych R_matlab RSpectra spls timeSeries]; };
   SuperRanker = derive2 { name="SuperRanker"; version="1.2.0"; sha256="01wilk3cy33z50yhg4i4gci298fj8s4xbrkb7k3i9gn8q13vviin"; depends=[prodlim Rcpp]; };
@@ -5239,20 +5242,17 @@ in with self; {
   SurrogateTest = derive2 { name="SurrogateTest"; version="1.3"; sha256="0vs1ii3l6i6cmswyv6xjbya5filfixppyzmnw099g9s4x8kn0kq7"; depends=[survival]; };
   SurvCorr = derive2 { name="SurvCorr"; version="1.0"; sha256="01rqdl503q1qnkn49iqnsjzis6azdsfi6s2hjky5k2zd6c9g18k5"; depends=[fields survival]; };
   SurvDisc = derive2 { name="SurvDisc"; version="0.1.1"; sha256="0ajvnm0a4krbm0m584bg58hd7dzl0f2rz5as1zsajx8agywb5qmv"; depends=[cubature MASS mvtnorm nlme simex survival]; };
-  SurvGSD = derive2 { name="SurvGSD"; version="1.0.0"; sha256="0aa5zaf9akkqkxs8iqwnm93sfwakhhhs3qfafbk0vrwmb5yvzzm1"; depends=[flexsurv ldbounds mnormt]; };
   SurvHiDim = derive2 { name="SurvHiDim"; version="0.1.1"; sha256="1kix00zfrbx11pwx2dfag8vz5nvf8siw2kbxi8g4fb7xib9wh2na"; depends=[factoextra glmnet igraph Rdpack readr survival tidyverse useful]; };
   SurvLong = derive2 { name="SurvLong"; version="1.1"; sha256="1lkbz5wa6ggwvg2aq13bc4hm6lqsj3wal5c33kamnrg9pk2cssj8"; depends=[]; };
   SurvMI = derive2 { name="SurvMI"; version="0.1.0"; sha256="0qgsgz11vz73v83bkxrrjwk7i26rllkxk97if3nw2rgl9jnmiih0"; depends=[survival zoo]; };
-  SurvMetrics = derive2 { name="SurvMetrics"; version="0.4.0"; sha256="1z5m46f5yl4iiczbhbygvwfl7iklhna7cvqwf9sdl39cfljhfk2c"; depends=[MASS survival survminer]; };
+  SurvMetrics = derive2 { name="SurvMetrics"; version="0.4.5"; sha256="0mdvygcx7cdffsfyxzg30ri9n2kn31cbwy6izq9g7dm2g0gxplg8"; depends=[MASS survival survminer]; };
   SurvRegCensCov = derive2 { name="SurvRegCensCov"; version="1.5"; sha256="0p39xqrnx2x0fgdfdr9ffv2x9zcgi53kqya821gpbnn3ccjzxx58"; depends=[numDeriv survival]; };
   SurvTrunc = derive2 { name="SurvTrunc"; version="0.1.0"; sha256="0b6s7llljp75agd57lmc1yq5acnfwy113khrfjcbm1l5ply6pz7f"; depends=[survival]; };
-  Survgini = derive2 { name="Survgini"; version="1.0"; sha256="1gxkdv2j1njbgnwb52vyhz7p2lrcg3hp6sry3kyhp4wkvf6gnhxi"; depends=[survival]; };
   SurviMChd = derive2 { name="SurviMChd"; version="0.1.1"; sha256="1sj3i950nmam3r70as85kdx6nd88iidb5jpiz2a5a39i5lb7mgf7"; depends=[dplyr ICBayes icenReg R2jags Rdpack readr rjags rlang survival tidyverse]; };
   SvyNom = derive2 { name="SvyNom"; version="1.1"; sha256="1jym2x6nd9a3y7nk5hflqpy54gs67y4sqqspkvkalf5l2cc64did"; depends=[Hmisc rms survey survival]; };
   SwarmSVM = derive2 { name="SwarmSVM"; version="0.1-6"; sha256="09xq7jx70qjyhblzh6kc40hdr0636rqqdnbka7m6rawhd8ivp8yz"; depends=[BBmisc checkmate e1071 kernlab LiblineaR Matrix SparseM]; };
   SwimmeR = derive2 { name="SwimmeR"; version="0.13.0"; sha256="16vimqdbsj7nb1cv0in6qza00qicajpdcpmzf3lv47wm5kp2iv6n"; depends=[dplyr magrittr pdftools purrr readr rvest stringr xml2]; };
   SwissAir = derive2 { name="SwissAir"; version="1.1.5"; sha256="0lh69924vhyilgn562jqn8m7z4dq3xmdj09501sbs7hbxfaiiyly"; depends=[]; };
-  SyNet = derive2 { name="SyNet"; version="2.0"; sha256="0mb9dscddkvmkf7l3bbcy4dlfmrvvy588vxdqy5dr783bpa5dkiw"; depends=[tkrplot]; };
   SyScSelection = derive2 { name="SyScSelection"; version="1.0.2"; sha256="16zx507hlzhdxbh6gzndbgmzpyp6vc59h441l4gv8lx58zi9kyjd"; depends=[pracma]; };
   SymTS = derive2 { name="SymTS"; version="1.0-1"; sha256="1g1kjcba25g3nphbndkzvkipvihiqb6lvijsicqr7qh57g94gqpl"; depends=[]; };
   SymbolicDeterminants = derive2 { name="SymbolicDeterminants"; version="2.0.0"; sha256="0hf9b9g2vgpyqbxgi5rkkls2b8vw1zrwl8lymwvwb6y1vwfl9pym"; depends=[arrangements fs]; };
@@ -5260,7 +5260,7 @@ in with self; {
   SyncRNG = derive2 { name="SyncRNG"; version="1.3.0"; sha256="0sywfmmy6mq6qsxkxjc67665snn1jds01j3h7ni1200igja139g2"; depends=[]; };
   SynchWave = derive2 { name="SynchWave"; version="1.1.1"; sha256="127hllvig8kcs9gr2q14crswzhacv6v2s4zrgj50qdyprj14is18"; depends=[fields]; };
   Synth = derive2 { name="Synth"; version="1.1-5"; sha256="1cfvh91nz6skjk8jv04fhwv3ga9kcsfgq3mdy8lx75jkx16zr0pk"; depends=[kernlab optimx]; };
-  SynthCast = derive2 { name="SynthCast"; version="0.2.0"; sha256="1jw6w32cdi1nyr1ljswylci39mp74i0i7ix75j44dghvql9a99rn"; depends=[dplyr forcats Synth tidyr]; };
+  SynthCast = derive2 { name="SynthCast"; version="0.2.1"; sha256="0gln7x1vlfdnr0qaqgagr93r484hv3dp65n24b3wl3p02msz9bgn"; depends=[dplyr forcats Synth tidyr]; };
   SynthETIC = derive2 { name="SynthETIC"; version="1.0.2"; sha256="1z7jyal707a93hv0fsgnkxpnywqw6ksifk0546alzm32g5lp4655"; depends=[ggplot2 magrittr rlang]; };
   SynthTools = derive2 { name="SynthTools"; version="1.0.1"; sha256="19vasz3nnm5vgwqs6g2a5bibmk44br1bxga5zavsx938x3jw9gnd"; depends=[dplyr magrittr Rdpack]; };
   SystemicR = derive2 { name="SystemicR"; version="0.1.0"; sha256="1vk08w734zxvrwzd81iy0azwcj53k6wvgc1qlaxw96hirdwdg6zr"; depends=[igraph Matrix quantreg xts]; };
@@ -5282,7 +5282,6 @@ in with self; {
   TCGAretriever = derive2 { name="TCGAretriever"; version="1.5"; sha256="1xg1rz2h5jbpdd5axli3ripqxb0bj64yrd4y5nzr8axajiaybkj9"; depends=[httr]; };
   TCIApathfinder = derive2 { name="TCIApathfinder"; version="1.0.6"; sha256="15f3w6vhbqy4xzidxasjnqigxchd3jbr2kpm3gggjnkp7rzsfgaf"; depends=[httr jsonlite]; };
   TCIU = derive2 { name="TCIU"; version="1.2.0"; sha256="0cyagbvcb8x1bszwq8id75838n53l1kcdah7hhm679j2wm4i487s"; depends=[AnalyzeFMRI cubature doParallel dplyr DT extraDistr fancycut fmri foreach forecast geometry ggplot2 ggpubr gridExtra ICSNP MultiwayRegression plotly pracma RColorBrewer reshape2 rrcov scales spatstat_core spatstat_geom tidyr zoo]; };
-  TDA = derive2 { name="TDA"; version="1.8.5"; sha256="16dpbgwkp58ibjck3yjziv5p852vn8qxv4v77z17r18909a0j8lp"; depends=[BH FNN igraph Rcpp RcppEigen scales]; };
   TDAkit = derive2 { name="TDAkit"; version="0.1.2"; sha256="1gvcv3016kjk98qm07i972fi66bcljj1avmagyc8qxs29cq3ngg3"; depends=[energy ggplot2 maotai Rcpp RcppArmadillo Rdpack T4cluster TDAstats]; };
   TDAmapper = derive2 { name="TDAmapper"; version="1.0"; sha256="0cxgr2888v8azgdr3sg4vlcdyivkrxkk6dsp1ahv4frrwvg2z09k"; depends=[]; };
   TDAstats = derive2 { name="TDAstats"; version="0.4.1"; sha256="1zmickqk60vm9rzy67hib835v3c45aqjk441p31vpbvhbiy58nq5"; depends=[ggplot2 Rcpp]; };
@@ -5290,7 +5289,7 @@ in with self; {
   TDD = derive2 { name="TDD"; version="0.4"; sha256="193y8brybkjsajrbnlx1sdnw1wyyn9rhlm5wvp4aamqhvi8z13vn"; depends=[pracma RSEIS signal]; };
   TDMR = derive2 { name="TDMR"; version="2.2"; sha256="19ljgj5iy41m7rrawzkxkln7acydssk8zm05k3sfb483s8zygwiq"; depends=[adabag SPOT testit twiddler]; };
   TDPanalysis = derive2 { name="TDPanalysis"; version="1.0"; sha256="0kvbsgwl7b9a3hn4d3snajqmynbajd2d8lc1na0hri2cv8qm8x9h"; depends=[plyr]; };
-  TDbook = derive2 { name="TDbook"; version="0.0.4"; sha256="04ljp2rxk959143wri4l5xq4yhby0ld42a0s9z027i1z7qn4072v"; depends=[]; };
+  TDbook = derive2 { name="TDbook"; version="0.0.5"; sha256="0g3kj17l176j7sg5vf3992icg61sbrjkhjmp7j53hpxz8xh2kygg"; depends=[]; };
   TDboost = derive2 { name="TDboost"; version="1.2"; sha256="0sc9vby4892gm5b5h8gbdl4misqvgbkfp8fms53dk83malxkw1zx"; depends=[lattice]; };
   TE = derive2 { name="TE"; version="0.3-0"; sha256="15530a5qjlh74c1qji76j25mm4c59gifp34y066f8j21f70rahfs"; depends=[MASS rainbow]; };
   TEAM = derive2 { name="TEAM"; version="0.1.0"; sha256="1yj7fw935rr7fh7h2p4ra8d3ynz5c6b30fqzm1djgav1k84wcin2"; depends=[ggplot2 ks plyr]; };
@@ -5310,10 +5309,11 @@ in with self; {
   TITAN2 = derive2 { name="TITAN2"; version="2.4.1"; sha256="16zf42s1as2xrvyhd0lnv36mgnr5w19xv11pkl0k8imb5bdkhxa2"; depends=[cowplot dplyr ggplot2 ggridges glue purrr snow tibble]; };
   TInPosition = derive2 { name="TInPosition"; version="0.13.6.1"; sha256="1c0h9zg71whmsjn5rnzv5kdrabl9kqrq627caznvrpa74c7pjks9"; depends=[ExPosition InPosition prettyGraphs TExPosition]; };
   TLMoments = derive2 { name="TLMoments"; version="0.7.5.2"; sha256="0l9d4yafkkn3qdg9ypy3fiqnzxzv8yzxkq6mh1j28g94s4h6lybh"; depends=[ggplot2 hypergeo lmomco Rcpp]; };
-  TMB = derive2 { name="TMB"; version="1.7.22"; sha256="116k7ffgadhkqq4lckfd4403qvybcls1hcs1ap1b7lkylghjahf2"; depends=[Matrix RcppEigen]; };
+  TMB = derive2 { name="TMB"; version="1.8.0"; sha256="158spsz8inxhs3dw6cq2wwkkhvgkfjyyz577s89x08yly7layq2l"; depends=[Matrix RcppEigen]; };
   TMDb = derive2 { name="TMDb"; version="1.1"; sha256="062n9mi2f9g2xxpnymja57xnpl855d8mwyfwci7a8cq4c7w7avj7"; depends=[httr jsonlite stringi]; };
   TMTI = derive2 { name="TMTI"; version="0.1.0"; sha256="16fa512f8hhfsinn57p98yvw58hjymki7xnvrfz9fidkqva0wm1x"; depends=[dplyr]; };
   TNC = derive2 { name="TNC"; version="0.1.0"; sha256="0639wvylmk9mapvmz79ij65g1phv3ylc683awi4pgaf9yfwlmjkn"; depends=[]; };
+  TNRS = derive2 { name="TNRS"; version="0.3.0"; sha256="0r4pd8r7whd9hd47isy3hxzkv9ar3i5hqhixaxr691ck1szkj1f2"; depends=[httr jsonlite]; };
   TOC = derive2 { name="TOC"; version="0.0-5"; sha256="0zk6j1yc4gpvkswnfrlyfvqc69wr4q3ys59y7v03fhzwasqj0an2"; depends=[bit raster rgdal]; };
   TOHM = derive2 { name="TOHM"; version="1.4"; sha256="15i9hrvxlnwbs9vrsyrfhnm4xwmi97hss2da0xqs1xj5nmzwymqh"; depends=[EQL igraph Matrix nloptr Rmpfr]; };
   TOSTER = derive2 { name="TOSTER"; version="0.4.0"; sha256="0zfalngjjg1p4516r60ma03d2ndw2w417p7bp3b9l4cyv5jy5qjv"; depends=[cowplot distributional ggdist ggplot2 jmv jmvcore R6 tidyr]; };
@@ -5350,7 +5350,7 @@ in with self; {
   TSMSN = derive2 { name="TSMSN"; version="0.0.1"; sha256="0zy9r6i1p161h1zh0vnz1npsh48q3nc2c5hcgzvf78nfznnn6wg1"; depends=[mvtnorm numDeriv progress sn]; };
   TSMining = derive2 { name="TSMining"; version="1.0"; sha256="1n32acagffiw31pr485ly3phx33zw7vj009bvw4lbqpixa1pszj2"; depends=[foreach ggplot2 plyr reshape2]; };
   TSMySQL = derive2 { name="TSMySQL"; version="2015.4-1"; sha256="1gdda7li320ba9qfxfl5c4cwl2ln5jdbvid98cryj175g0nbmx7b"; depends=[DBI RMySQL tframe TSdbi TSsql]; };
-  TSP = derive2 { name="TSP"; version="1.1-11"; sha256="0gdwxbj2gria7jhsswmfvc32r43sdd63z3lyy21gbvmfcakvb8j9"; depends=[foreach]; };
+  TSP = derive2 { name="TSP"; version="1.2-0"; sha256="022k0972kcxb0w6qhx09l9cif8fmpkpvwddvgxiy60bx343ywzia"; depends=[foreach]; };
   TSPostgreSQL = derive2 { name="TSPostgreSQL"; version="2015.4-1"; sha256="11201zpbrva6gwc9hg8pynadrps6d8pb3syzba9nyjpv2ck6x3ry"; depends=[DBI RPostgreSQL tframe tframePlus TSdbi TSsql]; };
   TSPred = derive2 { name="TSPred"; version="5.1"; sha256="14dzpm5i5iml9kb49rnw7kq1ga03l4c6m485b1p8p3ya0n6mivkl"; depends=[dplyr e1071 elmNNRcpp EMD forecast keras KFAS magrittr ModelMetrics MuMIn nnet plyr randomForest Rlibeemd RSNNS tfdatasets vars wavelets]; };
   TSS_RESTREND = derive2 { name="TSS.RESTREND"; version="0.3.1"; sha256="1la1ff9ajcabdsz5f2761647304fpwp779gv0gjds4mg25rf6n2f"; depends=[bfast broom ggplot2 mblm RcppRoll strucchange]; };
@@ -5358,7 +5358,7 @@ in with self; {
   TSSS = derive2 { name="TSSS"; version="1.3.1"; sha256="06wnbj741yyi5b483zhbaccvqpbg8lh3z9vnrxy64x28hnn79cly"; depends=[]; };
   TSTr = derive2 { name="TSTr"; version="1.2"; sha256="0nljkqsrwzg7i82arpfrz2k9m1k1akin1akf01c5cadxq4rgarsf"; depends=[data_table stringdist stringr]; };
   TSTutorial = derive2 { name="TSTutorial"; version="1.2.3"; sha256="0hpk6k3lc72p8pdz5aad04lcjsz9k443h5gs09dc3i10wqw3yhxs"; depends=[MASS]; };
-  TSVC = derive2 { name="TSVC"; version="1.2.1"; sha256="11qivqrss54mzgkma0bkjrpiks5rxc43bmygp6i4chka45k8xiq3"; depends=[mgcv plotrix]; };
+  TSVC = derive2 { name="TSVC"; version="1.2.2"; sha256="0c2dwsb17al6vfgk38xlbzww08xa1i2lji1bhzc3zlp7nb4mkxy8"; depends=[mgcv plotrix]; };
   TSclust = derive2 { name="TSclust"; version="1.3.1"; sha256="1pj984sf7z0bakr55jqcrxr4mh4gihdv197m2k05phpp5hsplsjh"; depends=[cluster dtw forecast KernSmooth locpol longitudinalData pdc]; };
   TScompare = derive2 { name="TScompare"; version="2015.4-1"; sha256="0jmxnrbsdg368f29bp70rc9i88si5zjblbcn8rcjyn2k9vpd3q2f"; depends=[DBI tfplot tframe TSdbi]; };
   TSdata = derive2 { name="TSdata"; version="2016.8-1"; sha256="199dy4phc6z0kzbp4kks55519c3xgsx4dkwrypr9sg8xhprrwnib"; depends=[]; };
@@ -5399,7 +5399,7 @@ in with self; {
   TauStar = derive2 { name="TauStar"; version="1.1.4"; sha256="06bb6570mqzfbjw2qp4bjl4a1bdpwsvcr0vw2y4l1x444m670ds1"; depends=[Rcpp RcppArmadillo]; };
   TaxicabCA = derive2 { name="TaxicabCA"; version="0.1.1"; sha256="0izjf6vrdjvs9axvafr2mamr157i8w6d7m5sfjch1p5c174cpr9c"; depends=[]; };
   Taxonstand = derive2 { name="Taxonstand"; version="2.4"; sha256="0zph4618bwjfvx41ap9d2534kknbni216y90nmcvaniskw4ixm7d"; depends=[pbapply]; };
-  TcGSA = derive2 { name="TcGSA"; version="0.12.7"; sha256="0l28sldpavyvhm9hab9gb7i7rmlxpj7ivffi6xx8lg7qjn6d21v5"; depends=[cluster cowplot ggplot2 GSA gtools lme4 multtest reshape2 stringr]; };
+  TcGSA = derive2 { name="TcGSA"; version="0.12.10"; sha256="1bdffzq3zwvr0qsp71mp0fqf9dgx9n3f08c53adwavycwr6zg1l7"; depends=[cluster cowplot ggplot2 GSA gtools lme4 multtest reshape2 stringr]; };
   Tcomp = derive2 { name="Tcomp"; version="1.0.1"; sha256="1k0gsf3yr5n9zc2yi6szxm6s7bf61lz4fx8m3v48jlp5w900prwb"; depends=[forecast Mcomp]; };
   TeXCheckR = derive2 { name="TeXCheckR"; version="0.7.0"; sha256="0r85yhk3p4ibkzkbjm7j9zpryp1dhajbmaqyfwr4bv1zh29smrxa"; depends=[clisymbols crayon data_table fastmatch hunspell hutils magrittr rstudioapi zoo]; };
   TeachHist = derive2 { name="TeachHist"; version="0.1.2"; sha256="0s1bmg0ff0b045r99xxy47ydwda55mzsbnsc21g92qxvsh8hlcga"; depends=[dplyr ggplot2]; };
@@ -5409,6 +5409,7 @@ in with self; {
   Tejapi = derive2 { name="Tejapi"; version="1.0.1"; sha256="1v80yjbik6shqad2nvi374dpzs9bjv9ah26agy0khmwnbz6029rk"; depends=[httr jsonlite]; };
   TempCont = derive2 { name="TempCont"; version="0.1.0"; sha256="1pl0czrpw74zfm5vycyl0h8hc3n5whf4g6a2759a22384gk5fq7k"; depends=[nlme]; };
   Temporal = derive2 { name="Temporal"; version="0.3.0"; sha256="1f1gp7zqaa2phv9rik6nmlj4dcqlm7z9s6y5iify3v6vai9sky72"; depends=[dplyr expint numDeriv tidyr]; };
+  TemporalGSSA = derive2 { name="TemporalGSSA"; version="1.0.0"; sha256="05jcixlakjzn2bkwxqpaypp1zyxfziaqdlb2830rjidamf3qrdr2"; depends=[]; };
   Tendril = derive2 { name="Tendril"; version="2.0.4"; sha256="1wvczfklsccs8jd081vb6d6h7i35lhf6na925fm7wq8ars0b23wd"; depends=[dplyr ggplot2 magrittr plotly plyr reshape2 scales]; };
   TensorClustering = derive2 { name="TensorClustering"; version="1.0.2"; sha256="094pk4v78d97sanrkirk0dyhy6w2i43imcw21q2r76w11d62w7k7"; depends=[abind combinat MASS mvtnorm pracma Rcpp rTensor tensr TRES]; };
   TensorComplete = derive2 { name="TensorComplete"; version="0.1.0"; sha256="06lr0blkf5pv1zwlffn7m0xxscjii4jg930nkzrh2k7dnbka6vsx"; depends=[MASS pracma tensorregress]; };
@@ -5428,6 +5429,7 @@ in with self; {
   TextMiningGUI = derive2 { name="TextMiningGUI"; version="0.3"; sha256="0hl4rswc3icwf11idk9ydrbd3ghz6mb1vnabknal0fxffpdi37dd"; depends=[dplyr ggplot2 ggwordcloud RColorBrewer slam syuzhet tibble tidyr tidytext tm]; };
   ThankYouStars = derive2 { name="ThankYouStars"; version="0.2.0"; sha256="0r77ns3102wj1wvrfsa06l427imxyfhigpbs36cdxl2j87qrjzl6"; depends=[httr jsonlite]; };
   ThermIndex = derive2 { name="ThermIndex"; version="0.2.0"; sha256="0s9d55577dq61qixwwfwmqc2k2c8my00j2ng97ng42cw0jc7aylm"; depends=[]; };
+  ThermalSampleR = derive2 { name="ThermalSampleR"; version="0.1.0"; sha256="1cl14scgczsc9xvvp5cjk548a48a7vmnc6dgsdhl8bqlkkrp1aly"; depends=[cowplot dplyr EnvStats ggplot2 janitor magrittr MASS purrr rlang sn tidyr]; };
   Thermimage = derive2 { name="Thermimage"; version="4.1.3"; sha256="1623r64v97ii8qq6cfrg0jrdl7nwxswjgif5l85vak8xjkfwsq7q"; depends=[png tiff]; };
   Thinknum = derive2 { name="Thinknum"; version="1.3.0"; sha256="0j48vgr4wsc2chm95aprq0xm0dk720xk5zmiijxasg92sfp0va6n"; depends=[RCurl RJSONIO]; };
   ThreeArmedTrials = derive2 { name="ThreeArmedTrials"; version="1.0-3"; sha256="06jhgl1fzvkvnhrjs4xcyw6yymwl499rw9xnfwpx44dzxi7nynxj"; depends=[MASS numDeriv]; };
@@ -5444,8 +5446,8 @@ in with self; {
   TideTables = derive2 { name="TideTables"; version="0.0.3"; sha256="0xfwikz9f58pw1j5vp45wp44lbr8b8ijlac474nzahq46d411afp"; depends=[chron data_table]; };
   Tides = derive2 { name="Tides"; version="2.1"; sha256="0da3z010ali83qf8mf1znicqv8vvsa5r93mc40ax60ln2w33nlrm"; depends=[]; };
   TidyConsultant = derive2 { name="TidyConsultant"; version="0.1.0"; sha256="1ipv0nx0xmba62c7qjgadpjsr850d9dl0z5zjkh1rj6kfxdgiis2"; depends=[autostats badger framecleaner pacman presenter tidybins validata]; };
-  TidyDensity = derive2 { name="TidyDensity"; version="0.0.1"; sha256="159931aa5m7g1w6g7wyka6fvxhfzlsrwi5iid4xz7ixpq68c3b3k"; depends=[dplyr ggplot2 healthyR_ai magrittr plotly purrr rlang stringr tidyr]; };
-  TidyMultiqc = derive2 { name="TidyMultiqc"; version="1.0.0"; sha256="1dbkn6vgzkmp3vs528f1vf10hk4ph381z6bq8nshim5ggmvl4wvy"; depends=[assertthat dplyr jsonlite magrittr purrr rlang stringr tibble]; };
+  TidyDensity = derive2 { name="TidyDensity"; version="1.0.0"; sha256="0wzl2jijzga2wc65hjk7v4nlifapc9cg8318jcwiaprndm5gd2cg"; depends=[actuar dplyr ggplot2 magrittr plotly purrr rlang stringr tidyr]; };
+  TidyMultiqc = derive2 { name="TidyMultiqc"; version="1.0.2"; sha256="0acgq3npl7l2j3wv9gxlnkajb7sjacnsaxh3p4jrcqvam173bkps"; depends=[assertthat dplyr jsonlite magrittr purrr rlang stringr tibble]; };
   TileManager = derive2 { name="TileManager"; version="0.4.1"; sha256="0pcskdqxxm07j47bw1j4d3jqf64pk0jqwcp5379hnpi6kr7f5gvh"; depends=[APfun raster rgeos sp XML]; };
   TimeProjection = derive2 { name="TimeProjection"; version="0.2.0"; sha256="04yr4cg2khkw9n3y3qk0ni1327k4pxm09zz2xg8mpjdvgi4p9yi3"; depends=[lubridate Matrix timeDate]; };
   TimeSeries_OBeu = derive2 { name="TimeSeries.OBeu"; version="1.2.4"; sha256="0ihigrbdkfbqqjxqfx3y5q8ii8n60301s7190jr50a88l1xzgmh8"; depends=[forecast jsonlite locfit trend tseries]; };
@@ -5454,7 +5456,7 @@ in with self; {
   Tinflex = derive2 { name="Tinflex"; version="1.8"; sha256="053w4l5j499brlbbh1bc41nj01j1533ixd9vggmvpkzk7zgdsasy"; depends=[]; };
   TipDatingBeast = derive2 { name="TipDatingBeast"; version="1.1-0"; sha256="07lw6jnr76qrxwrwv90hi5ih2xf6g4sz4hfapk5vf1y3ayfskkl0"; depends=[DescTools mclust TeachingDemos]; };
   Tlasso = derive2 { name="Tlasso"; version="1.0.2"; sha256="1svjl2va3vpa1m13wmyy3bpx76xxivalwprzbaavwxf8lgk34wgr"; depends=[expm huge igraph rTensor]; };
-  TmCalculator = derive2 { name="TmCalculator"; version="1.0.2"; sha256="10simpmvf3gb20vp6k3gzn0qy9989yg9zddz2xns7ab4fhksgf40"; depends=[]; };
+  TmCalculator = derive2 { name="TmCalculator"; version="1.0.3"; sha256="1zrsndpdl9bcl1w6szz8rdzadk7jsbd14fajnndliz9fra1ra7xg"; depends=[]; };
   Tmisc = derive2 { name="Tmisc"; version="1.0.0"; sha256="1zs7zxawl13pils9hff0i5aplxy32ccp27jcmjdh39lgf083s3v3"; depends=[dplyr magrittr rstudioapi tibble]; };
   TooManyCellsR = derive2 { name="TooManyCellsR"; version="0.1.1.0"; sha256="0cypjf4a9q2kw4gwxlr59nbwn25wrrhrcmpksxi2yhd3qhk71q8n"; depends=[cowplot ggplot2 imager jsonlite Matrix]; };
   ToolsForCoDa = derive2 { name="ToolsForCoDa"; version="1.0.6"; sha256="1c37xv8h4jycnn9cnxlvby3p8hl3gfp4bdsbxm06bb323qj774pd"; depends=[calibrate HardyWeinberg MASS]; };
@@ -5499,6 +5501,7 @@ in with self; {
   TropFishR = derive2 { name="TropFishR"; version="1.6.3"; sha256="0nkw7dcb2kvgvvfla6ns60n460wsamwcp88281q6lyb6yb8k14bv"; depends=[doParallel GA GenSA MASS Matrix msm reshape2]; };
   TrtCombo_FactorialExp_SR = derive2 { name="TrtCombo.FactorialExp.SR"; version="4.0.4"; sha256="1kc5nqivsia801hdll5zcl4w6ayx7pabx7xz70l75h1f966ahnr7"; depends=[]; };
   TrueSkillThroughTime = derive2 { name="TrueSkillThroughTime"; version="0.1.0"; sha256="1ak7w10qss1jlf8gy4sri678nqcw6rc79kwr6anqcjxick1000j9"; depends=[hash]; };
+  TruncExpFam = derive2 { name="TruncExpFam"; version="1.0.0"; sha256="0059afyfvzliwpw4l1846yxcpqqdy9c2kk0xa0fl5nxh89c2hr7v"; depends=[invgamma rmutil]; };
   TruncatedNormal = derive2 { name="TruncatedNormal"; version="2.2.2"; sha256="05cfn7mdq0hgw97bbb227in9ccjz727sp67xpnpx2r1ajvl6gxdf"; depends=[alabama nleqslv randtoolbox Rcpp RcppArmadillo]; };
   Tsphere = derive2 { name="Tsphere"; version="1.0"; sha256="0xgxw2hfj40k5s0b54dcmz7savl8wy4midmmgc7lq4pyb8vd58xx"; depends=[glasso rms]; };
   TukeyC = derive2 { name="TukeyC"; version="1.3-4"; sha256="1ly09pll86zkn6m8rc6d66f3d7hf98fiij0psaigq6wdgf5an8ig"; depends=[doBy xtable]; };
@@ -5509,6 +5512,7 @@ in with self; {
   TwitterAutomatedTrading = derive2 { name="TwitterAutomatedTrading"; version="0.1.0"; sha256="1aa6fxxvy0s8al30w19wa2pwzp60zbbdvp5myigv8x26k6w2jwgv"; depends=[curl dplyr jsonlite lubridate magrittr naptime plyr purrr tibble tidytext twitteR]; };
   TwoArmSurvSim = derive2 { name="TwoArmSurvSim"; version="0.2"; sha256="0isb1nmm6hxwn6p52an1axj30ilkr5c8xi86zx2b8acivdz2xr12"; depends=[blockrand dplyr simsurv survival]; };
   TwoCop = derive2 { name="TwoCop"; version="1.0"; sha256="1ycxq8vbp68z82r2dfg2wkc9zk3bn33d94xay20g2p55lnzl2ifd"; depends=[]; };
+  TwoPhaseInd = derive2 { name="TwoPhaseInd"; version="1.1.2"; sha256="1ifdj17rlr8nd0pqpcqi6835ymdhngif279i27s6lvwha924l81c"; depends=[survival]; };
   TwoRegression = derive2 { name="TwoRegression"; version="0.1.2"; sha256="0qr9zrfmbh4c4207gvwa384q5njjx6nsl6lc58d25m8bkfalifpi"; depends=[data_table dplyr magrittr seewave]; };
   TwoSampleTest_HD = derive2 { name="TwoSampleTest.HD"; version="1.0"; sha256="0xdib7hwbpy549pxihai8dpy91h94wwl3b76jn7p0m15ky7z18df"; depends=[]; };
   TwoStepCLogit = derive2 { name="TwoStepCLogit"; version="1.2.5"; sha256="050y7na91izg36gkwd8yn8rx3r39dk6qlvhd3137f3jnk4v00bck"; depends=[survival]; };
@@ -5524,7 +5528,6 @@ in with self; {
   UKgrid = derive2 { name="UKgrid"; version="0.1.3"; sha256="1x44iry2j5qbvd8ac9rv9dmg60hbhry2v4jj9hmm49bx10iwl9h2"; depends=[data_table dplyr lubridate magrittr tsibble xts zoo]; };
   UMR = derive2 { name="UMR"; version="1.1.0"; sha256="05g2gk7bmhzyill6fgq396yk0yi7qz4mdcy3cfzzx5nyr11rc8a7"; depends=[decon distr trust]; };
   UNCLES = derive2 { name="UNCLES"; version="2.0"; sha256="0c61sm09dh0yfrjrjjnizg7qrf8xgc1zdldwhjh64kq8k8g5wa69"; depends=[class kohonen pdist]; };
-  UNF = derive2 { name="UNF"; version="2.0.7"; sha256="1i7aj9w90c1bn581l820iasxhs4ibs7xwbhid7gdkz9f87cz568r"; depends=[base64enc digest]; };
   UNPaC = derive2 { name="UNPaC"; version="1.1.0"; sha256="12w6vjvkzivnqa6jd75dwr8h8d8xbc2519pqnqw9fk3yanqzx9rk"; depends=[huge PDSCE]; };
   UPCM = derive2 { name="UPCM"; version="0.0-3"; sha256="1apah04qdgvxxf6q6xr53716pcrmds86sn8f7ykxj93ggg8k0bvl"; depends=[cubature ltm mvtnorm numDeriv Rcpp RcppArmadillo statmod]; };
   UPG = derive2 { name="UPG"; version="0.2.2"; sha256="01w54qbbyiwlw1dymi5gmxd26vds1am7r32p3gpq2ybfghk9kxbw"; depends=[coda ggplot2 knitr matrixStats mnormt pgdraw Rcpp RcppArmadillo RcppProgress reshape2]; };
@@ -5581,8 +5584,8 @@ in with self; {
   VEwaningVariant = derive2 { name="VEwaningVariant"; version="1.2"; sha256="1zhyjyp3vdlpjvx7q3zdf4c8gdfpwphqhl6vzpfl12486nlxlv2q"; depends=[ggplot2 Rcpp RcppArmadillo survival]; };
   VFP = derive2 { name="VFP"; version="1.4"; sha256="0p964fag5a0p23x6jgyc5bx4kp3ar9jdh88n4nybiv884sdfbk90"; depends=[gnm MASS VCA]; };
   VFS = derive2 { name="VFS"; version="1.0.2"; sha256="1b8sl8id2gj4iqkpjzd3giybbix2jvskwsbw1kqj3zqr77hygxwg"; depends=[e1071 nleqslv]; };
-  VGAM = derive2 { name="VGAM"; version="1.1-5"; sha256="1fx123h4x5awzshv0m4jqbbllrdjfpslb2i8gl9phm1y1wahn69h"; depends=[]; };
-  VGAMdata = derive2 { name="VGAMdata"; version="1.1-5"; sha256="1n5g2ymcanf6msjix6y9lsff65iq4898zmd5blfj57d2vbp6ibsa"; depends=[VGAM]; };
+  VGAM = derive2 { name="VGAM"; version="1.1-6"; sha256="05yl1lbpambwg3i3rqn6aanaym7c3s8g7hi0bph98iyxqnx62sj4"; depends=[]; };
+  VGAMdata = derive2 { name="VGAMdata"; version="1.1-6"; sha256="14s8118k66yy0dljr364dbq1hrvjwmg69n3ls3dbmxfm1f9vrmnw"; depends=[VGAM]; };
   VGAMextra = derive2 { name="VGAMextra"; version="0.0-5"; sha256="11s7s2dm2yf5s9qbwbyavz01l9fk86grp4mlhrh8hd6lfmxxxcxm"; depends=[VGAM]; };
   VHDClassification = derive2 { name="VHDClassification"; version="0.3"; sha256="1ij4h3gzxb9mm9q743kc3sg2q609mnqz6mhlrbim1wcjji2b7bv4"; depends=[e1071 lattice]; };
   VIC5 = derive2 { name="VIC5"; version="0.2.4"; sha256="1q4ayvq0adln9vv3r05gc2rmkd2pbzrsqd8dsgmindzwqbxsps36"; depends=[foreach lubridate Rcpp RcppArmadillo]; };
@@ -5635,11 +5638,11 @@ in with self; {
   WA = derive2 { name="WA"; version="1.0"; sha256="0i6hkajfalwpvxmmzfl7nhk4x6hhrf0xqpgny8b1gk1hw05yv03m"; depends=[]; };
   WACS = derive2 { name="WACS"; version="1.1.0"; sha256="09fmdlpb99q9dw17lwp0bwpklgvgiqq7bfs9ryx5r54m0niklr9d"; depends=[mclust mnormt mvtnorm tmvtnorm]; };
   WARN = derive2 { name="WARN"; version="1.2-4"; sha256="18gfk9vqcqarj7j5i240wqv2dclg3csng4mih5izj40xaaxaf6q5"; depends=[MASS]; };
-  WASP = derive2 { name="WASP"; version="1.4.1"; sha256="1af2qqsq811bvcwns4i0kvy36xxi9pkdawwq2n75yd9dhpv5whav"; depends=[ggplot2 sp tidyr waveslim]; };
+  WASP = derive2 { name="WASP"; version="1.4.2"; sha256="0gdz1vqd7mj9n683qz3ngmk844ba81g2fz1pi9fi2mly5lfp28n3"; depends=[ggplot2 sp tidyr waveslim]; };
   WCE = derive2 { name="WCE"; version="1.0.2"; sha256="105pwpd9ikm0gwz4r12jl6cgs1riwsk9pn5qk9cn3msgwa0sdynx"; depends=[plyr survival]; };
   WCM = derive2 { name="WCM"; version="0.2.2"; sha256="0w1m2vcxc64ksw3dm94wdigil2fpv3cvzyqmkhs2zrfjlgrdchcd"; depends=[pracma raster]; };
   WCQ = derive2 { name="WCQ"; version="0.2"; sha256="1yhkr2iazd7lh9r68xz1lh32z6r1sdnmqrjshcrm4rbwai0j3lkr"; depends=[]; };
-  WDI = derive2 { name="WDI"; version="2.7.5"; sha256="0ipka3mhm0jciq1fb3qsp1cl2k53vihwq2ja9xw2ps6rjply5rii"; depends=[RJSONIO]; };
+  WDI = derive2 { name="WDI"; version="2.7.6"; sha256="1466mcxn04qbs71r121h5v5jl5bfsjja2cg932rxnf9s9s261vkp"; depends=[RJSONIO]; };
   WEE = derive2 { name="WEE"; version="1.0"; sha256="0i3h67p72lr708mwdw3rbzr1lqqr8n2dxv7f0bwyqzxv41sx1iz3"; depends=[doParallel foreach quantreg]; };
   WEGE = derive2 { name="WEGE"; version="0.1.0"; sha256="17g4cgx0ajgj7lgxzi467cjbmbc47skyarcm88vqjc3i1j55dw12"; depends=[raster sf sp]; };
   WGCNA = derive2 { name="WGCNA"; version="1.70-3"; sha256="1m6b4a2xpb02c1ajndhk8qlqnhwxa7lkkwj6nzv3l618jy1kp15r"; depends=[AnnotationDbi doParallel dynamicTreeCut fastcluster foreach GO_db Hmisc impute matrixStats preprocessCore Rcpp survival]; };
@@ -5659,7 +5662,7 @@ in with self; {
   WRTDStidal = derive2 { name="WRTDStidal"; version="1.1.2"; sha256="1ssrqqf2hypif4nnfyl4lq03glyyg9ry9s14llf1njxamhjggfgg"; depends=[caret dplyr fields foreach forecast ggplot2 gridExtra lubridate purrr quantreg RColorBrewer survival tidyr]; };
   WSGeometry = derive2 { name="WSGeometry"; version="1.2.1"; sha256="073cvvbhzx5nllrwfyz6bxvskmkm88i7wq93m2d0q60pzwzsxwzl"; depends=[expm imager lpSolve Matrix plot3D Rcpp RcppArmadillo RSpectra transport]; };
   WVPlots = derive2 { name="WVPlots"; version="1.3.2"; sha256="07gwb984mmfwi9b7m44d60f787szw089xlvqwclpkpjgz677k1cg"; depends=[cdata ggplot2 gridExtra mgcv rqdatatable rquery sigr wrapr]; };
-  WWGbook = derive2 { name="WWGbook"; version="1.0.1"; sha256="0q8lnd1fp4rmz715x0lf61py3xw8wg55yq3gvswaqwy68dlqrzjc"; depends=[]; };
+  WWGbook = derive2 { name="WWGbook"; version="1.0.2"; sha256="05dzgb2b1md981882sp85dvmrsak5v7gwkww1shqfm34zmk9dbkn"; depends=[]; };
   WWR = derive2 { name="WWR"; version="1.2.2"; sha256="0ia1dd12r1l08s9nhgvk55jmqwv58jawm25gd2ni6wpa3mcmq02g"; depends=[inline]; };
   WaMaSim = derive2 { name="WaMaSim"; version="1.0.0"; sha256="0sa7qd2bpn3sp06mlpissxxkfhg7j1d07nnwlnz7nyg7pivwnpan"; depends=[magrittr]; };
   Watersheds = derive2 { name="Watersheds"; version="1.1"; sha256="1gn52nl0rr29pqq94gjasc4fi1kjxlrpjdkgm2x56j5jbd162drk"; depends=[lattice maptools rgeos sp splancs]; };
@@ -5668,6 +5671,7 @@ in with self; {
   WaveletArima = derive2 { name="WaveletArima"; version="0.1.1"; sha256="19hz2q280m41qh3m9lx3i9p6p5fl6pw8r9b06xk6sn04hxbim8xx"; depends=[forecast fracdiff wavelets]; };
   WaveletComp = derive2 { name="WaveletComp"; version="1.1"; sha256="07w2aa0jiflvxyqhgh48705hg8hjspd103jd00i2pcw2v42hwmf8"; depends=[]; };
   WaveletGARCH = derive2 { name="WaveletGARCH"; version="0.1.1"; sha256="0dj5bmvzfhj1cpn8qi2ax3iipr7jlq0f9vk4b1idqgh5dmdi8lh6"; depends=[FinTS forecast fracdiff rugarch wavelets]; };
+  WaveletRF = derive2 { name="WaveletRF"; version="0.1.0"; sha256="08czmifw1dz2arz9f4jk76vlwwnf24ha9pm3dfihqkxjcc16dkgz"; depends=[forecast fracdiff randomForest tsutils wavelets]; };
   WaveletSVR = derive2 { name="WaveletSVR"; version="0.1.0"; sha256="05sqvqklbz7barf1jfrhd7n4mj60z57sqpikl3lykigl3m9ravhm"; depends=[e1071 forecast fracdiff tsutils wavelets]; };
   WaverR = derive2 { name="WaverR"; version="1.0"; sha256="084fhzggzm075w6wp2lqd3j0an21idhw8z5l8ynz4y96mpmn204a"; depends=[kimisc MASS]; };
   Wcompo = derive2 { name="Wcompo"; version="1.0"; sha256="1rd7y86q8qi7w9878ng0zdk3zpxnjyzpmrm2mj5lm60hkd72xyrw"; depends=[survival]; };
@@ -5676,7 +5680,7 @@ in with self; {
   WebGestaltR = derive2 { name="WebGestaltR"; version="0.4.4"; sha256="1rgf9s80hk35baiknrwgnqnhxssrcxdansgpvpyhqv07bqd472nn"; depends=[apcluster doParallel doRNG dplyr foreach httr igraph jsonlite Rcpp readr rlang svglite whisker]; };
   WebPower = derive2 { name="WebPower"; version="0.6"; sha256="1gw6191v9sgycis3vyjznaaiyhmp0j23h9k8g8adchpyss7017ab"; depends=[lavaan lme4 MASS PearsonDS]; };
   WeibullFit = derive2 { name="WeibullFit"; version="0.1.0"; sha256="1a80gcqbmvb1rz2dr2syy16wn6ixjn6l40gayys9zy8302hky9ir"; depends=[e1071 FAdist glue kSamples mixdist optimx R_methodsS3 R_oo sqldf xtable]; };
-  WeibullR = derive2 { name="WeibullR"; version="1.1"; sha256="09b8rjc1k80d6k01vppayswmkdiqmvfqfsw812b5000kk1zng2sm"; depends=[Rcpp RcppArmadillo]; };
+  WeibullR = derive2 { name="WeibullR"; version="1.1.5"; sha256="1dkvdja7zm1v7z9011qms9k84wqywbl7k64jlfrp6fn2k0y6nxgj"; depends=[Rcpp RcppArmadillo]; };
   WeightIt = derive2 { name="WeightIt"; version="0.12.0"; sha256="1x71ifvxl1zn1iaapfz8sscag2h4yim3ycqiink02sy3sfl0hj4n"; depends=[backports cobalt crayon ggplot2]; };
   WeightSVM = derive2 { name="WeightSVM"; version="1.7-9"; sha256="0467rj0qvlyzzpjdxbwwa8gzyalifvjza4pvakbrl7b332v36dwq"; depends=[]; };
   Weighted_Desc_Stat = derive2 { name="Weighted.Desc.Stat"; version="1.0"; sha256="030i12mnwlj976avvk3grrccgprsckmc35dm2ajwdfc9dijhypnj"; depends=[]; };
@@ -5701,7 +5705,7 @@ in with self; {
   WordR = derive2 { name="WordR"; version="0.3.2"; sha256="1bng0rhhhnryhjw9xpd38v7sdcw9cgqrdryh5bfwk26wjk8jjdms"; depends=[dplyr flextable officer xml2]; };
   WorldFlora = derive2 { name="WorldFlora"; version="1.10"; sha256="0wh5jmzfy1fja6iw4vd8p9xir2kd3yh6y4plqs95dlhf1s84awyb"; depends=[]; };
   WrightMap = derive2 { name="WrightMap"; version="1.2.3"; sha256="0i84xkd1agyp45r84zsk8vvc02ln8qhxvl4n72xjqib12b38kqzl"; depends=[]; };
-  WriteXLS = derive2 { name="WriteXLS"; version="6.3.0"; sha256="0ssjdv7vr66sl1yfg0l38xddrvrfzhf7vdq342izc22bprx9h78b"; depends=[]; };
+  WriteXLS = derive2 { name="WriteXLS"; version="6.4.0"; sha256="1dqr98kx930y6mcvb9b39xiwshhs250gkd2vw2v6iil34sl90jv4"; depends=[]; };
   WtTopsis = derive2 { name="WtTopsis"; version="1.0"; sha256="0zwx75rgdyh7pjxjvd5xvxqkfryvhq2csn4sd0py0dgmjxb5p3ja"; depends=[]; };
   WufooR = derive2 { name="WufooR"; version="1.0.1"; sha256="0iq1lc1b22zdvclkr4yivxxf8z5mdxik7lx9r3b38h2qy2rckqb2"; depends=[dplyr httr jsonlite]; };
   XBRL = derive2 { name="XBRL"; version="0.99.19"; sha256="0l25lfy8vzkgdq7i4bafh8b1246f8p2a6sy7c4kswzz4bnxnrihc"; depends=[Rcpp]; };
@@ -5709,7 +5713,8 @@ in with self; {
   XICOR = derive2 { name="XICOR"; version="0.3.3"; sha256="0xhb58bk3r8spd8ah3r7568np27nlrc18cswcsgavaikjpfda9vr"; depends=[psychTools]; };
   XKCDdata = derive2 { name="XKCDdata"; version="0.1.0"; sha256="1lx9frlbc549qrh4d3m79r3l9icfzqkgfgp8raa8x46a2havi0a5"; depends=[assertthat dplyr glue htmltools httr jsonlite magrittr tibble]; };
   XLConnect = derive2 { name="XLConnect"; version="1.0.5"; sha256="1b8nr8mjxi8bq4b2c191n4gpjq1fx2vqblp5kb3zmk18gzsjwp4p"; depends=[rJava]; };
-  XML = derive2 { name="XML"; version="3.99-0.8"; sha256="0l3bsgqw4bicv3sl2bfag7p4rh1y2pcyg0ajr73kkbg85qf6j7q8"; depends=[]; };
+  XLS = derive2 { name="XLS"; version="0.0.9"; sha256="0c9x1rlh7q0x1m57dg4knbvdhqg3mffnwcd50yr29a4h6dy7jjf9"; depends=[mpoly rlang]; };
+  XML = derive2 { name="XML"; version="3.99-0.9"; sha256="02ba407ddgil4jbjzrbw756hlxzy3mihc5dk1ngcbvsp67gxw5cw"; depends=[]; };
   XML2R = derive2 { name="XML2R"; version="0.0.6"; sha256="0azfh950r2b7ck3n1vzk3mdll7zy844nx3mbk676jxnj8gg7nxk5"; depends=[plyr RCurl XML]; };
   XNomial = derive2 { name="XNomial"; version="1.0.4"; sha256="1mwx302576rmsjllbq2clfxilm3hkyp5bw0wmwqbn0kgv5wpy8z6"; depends=[]; };
   XR = derive2 { name="XR"; version="0.7.2"; sha256="0j8rkjw9y7mb0yj24nlisfd84148pnnakz8i2y35y2b8gmh5zhvz"; depends=[jsonlite]; };
@@ -5745,6 +5750,7 @@ in with self; {
   aCRM = derive2 { name="aCRM"; version="0.1.1"; sha256="0kzp568hd9c9a9qgniia5s5gv0q5f89xfvvwpzb197gqhs3x092v"; depends=[ada dummies kernelFactory randomForest]; };
   aGE = derive2 { name="aGE"; version="0.0.9"; sha256="17niwni6sd2mdvhskq6vfwplynh67hwq9ijrlgjvhkcslpb2ilp3"; depends=[MASS nlme survey]; };
   aLFQ = derive2 { name="aLFQ"; version="1.3.6"; sha256="0kphpvhz36859f5l0k8mbf59g9871mynbs4ybdi0h5nm2cdjy9vx"; depends=[bio3d caret data_table lattice plyr randomForest reshape2 ROCR seqinr]; };
+  aMNLFA = derive2 { name="aMNLFA"; version="1.1.2"; sha256="1bks7g6zc8817gr4j1mxzmyhw23mwafb6816a26vylk8d9k9d315"; depends=[devtools dplyr ggplot2 gridExtra MplusAutomation plyr reshape2 stringi stringr]; };
   aPCoA = derive2 { name="aPCoA"; version="1.3"; sha256="0ybp7jd1q0md4wbal5cmcl6hg3c1wkdz5mi1w5qddgi472vv1z83"; depends=[ape car cluster randomcoloR vegan]; };
   aRchi = derive2 { name="aRchi"; version="1.0.5"; sha256="1sn321d2qh7vvwfbr62lg3c5ggg8df0w0q6mwcg5pr3jqhiif076"; depends=[circular data_table DiceKriging dplyr FNN gtools lidR pkgcond plyr progress rgl stringr]; };
   aRpsDCA = derive2 { name="aRpsDCA"; version="1.1.1"; sha256="0ghg43rd6bnv4jp8pkpd1ixp5l6kq5pr0mxq61q24s24g0m3s64p"; depends=[]; };
@@ -5761,7 +5767,7 @@ in with self; {
   abc = derive2 { name="abc"; version="2.1"; sha256="0ngzaaz2y2s03fhngvwipmy4kq38xrmyddaz6a6l858rxvadrlhb"; depends=[abc_data locfit MASS nnet quantreg]; };
   abc_data = derive2 { name="abc.data"; version="1.0"; sha256="1bv1n68ah714ws58cf285n2s2v5vn7382lfjca4jxph57lyg8hmj"; depends=[]; };
   abcADM = derive2 { name="abcADM"; version="1.0"; sha256="0vcabnnnwc0psv9v3rda5aap9s8cq1pjh02zva3ki64hlavf2a10"; depends=[BH Rcpp]; };
-  abcdeFBA = derive2 { name="abcdeFBA"; version="0.4"; sha256="1rxjripy8v6bxi25vdfjnbk24zkmf752qbl73cin6nvnqflwxkx4"; depends=[corrplot lattice rgl Rglpk]; };
+  abclass = derive2 { name="abclass"; version="0.1.0"; sha256="1942a0sws4y6hj9z95rn5vdy9qw9xcdqhdb2pjpk7r6g0vckap07"; depends=[Rcpp RcppArmadillo]; };
   abcrf = derive2 { name="abcrf"; version="1.8.1"; sha256="1ghbd24yhqy3xhdxas6ccn84nkavqpgldx5ck8kijknc7qjm8k27"; depends=[doParallel foreach MASS matrixStats ranger Rcpp RcppArmadillo readr stringr]; };
   abcrlda = derive2 { name="abcrlda"; version="1.0.3"; sha256="04pcdnk2szfpc2ylcw5ds7y895ivy03bycal03kxw7cwylzxasks"; depends=[]; };
   abctools = derive2 { name="abctools"; version="1.1.3"; sha256="07s9dg10i8lsxl73b4n2hynca2fjgb0ykb0dz8c3zv6cgw3cyx97"; depends=[abc abind Hmisc plyr]; };
@@ -5780,7 +5786,7 @@ in with self; {
   abstractr = derive2 { name="abstractr"; version="0.1.0"; sha256="1ymwp7syrynwd4i8aj2x5n8jdi9d96fjzl6jb09n0bnr5fgl7vig"; depends=[colourpicker emojifont ggplot2 gridExtra rintrojs shiny shinythemes]; };
   abtest = derive2 { name="abtest"; version="1.0.1"; sha256="0jz2ry5364p8h8xlk5a5sycn8xlpxd1iasfg99bcr4jqzd92jfqg"; depends=[Matrix mvtnorm plotrix qgam RColorBrewer Rcpp sn truncnorm]; };
   abundant = derive2 { name="abundant"; version="1.2"; sha256="15m3ngj5aipjg961yy5kvdg9xlfcpliw30dq6gchzxabhnfzcipd"; depends=[glasso]; };
-  academictwitteR = derive2 { name="academictwitteR"; version="0.3.0"; sha256="07fmkrh90ji04qkcad6f3xk4ndin38w1w5ywygv588in1psqfjci"; depends=[dplyr httr jsonlite lubridate magrittr purrr rlang tibble tidyr tidyselect usethis]; };
+  academictwitteR = derive2 { name="academictwitteR"; version="0.3.1"; sha256="055n0y8g2ibai5zyvw9cqbi0l1zi792cgf65jhy6mrf7j6lgrzhw"; depends=[dplyr httr jsonlite lubridate magrittr purrr rlang tibble tidyr tidyselect usethis]; };
   acc = derive2 { name="acc"; version="1.3.3"; sha256="1ii2vm47djxbixa75h690q1s2f9m9x6i8nkygik93j6dayr6kr1m"; depends=[circlize DBI ggplot2 iterators mhsmm nleqslv PhysicalActivity plyr R_utils Rcpp RcppArmadillo RSQLite zoo]; };
   accSDA = derive2 { name="accSDA"; version="1.0.0"; sha256="0sgxy5y8kkc1n35657kifwfjsba7y5m1vbr7rkk5lmbpkzahqm61"; depends=[ggplot2 ggthemes gridExtra MASS rARPACK sparseLDA]; };
   acca = derive2 { name="acca"; version="0.2"; sha256="0h9dyzd1pbr4rvxqz69vlfmbibcd1n72qqgjvci7fdjjvfq2mc9p"; depends=[ggplot2 plyr]; };
@@ -5818,14 +5824,16 @@ in with self; {
   actuaryr = derive2 { name="actuaryr"; version="1.1.1"; sha256="08dzn565ax2l2hrn2m32k6magjbskybywl0hsgkg11nrjvkznwnx"; depends=[crayon dplyr lubridate magrittr purrr tibble]; };
   acumos = derive2 { name="acumos"; version="0.4-4"; sha256="15i4xbcdk5vxjrgac32zh4439v0vmabnw3jvsmxiipap5frp7rpi"; depends=[httr jsonlite RestRserve RProtoBuf Rserve yaml]; };
   ada = derive2 { name="ada"; version="2.0-5"; sha256="1h3a07czp0w3hrhjcg1fz721y8vsfclzqi3rq8qfzgpfb4h1f06r"; depends=[rpart]; };
+  adaHuber = derive2 { name="adaHuber"; version="1.1"; sha256="0giypz04m9anssa2r3hlf95lnj74i3ir48p5j898i2z1gmf8m14w"; depends=[Rcpp RcppArmadillo]; };
   adabag = derive2 { name="adabag"; version="4.2"; sha256="109wrl1pwvmyv2l909hrvk7dg4aa9pv449mvdycp50zwrsw9w0a7"; depends=[caret doParallel foreach rpart]; };
   adagio = derive2 { name="adagio"; version="0.8.4"; sha256="0ihv05402iq003m0338f85pnqnlnrmx0pf1mg8cz9sgi5h98mbnl"; depends=[lpSolve]; };
   adamethods = derive2 { name="adamethods"; version="1.2.1"; sha256="150awbd3skb1mqca18bqjykhyycqw8crviw66s6qrcnmcsbk77pj"; depends=[Anthropometry archetypes FNN foreach nnls tolerance univOutl]; };
+  adana = derive2 { name="adana"; version="1.1.0"; sha256="0zi3a17rapc1z074k3yzgjv2b6ba6c9d54b1hm0ivvgfd335981f"; depends=[optimx ROI ROI_plugin_optimx]; };
   adapt4pv = derive2 { name="adapt4pv"; version="0.2-1"; sha256="0kl7fh2nmc1kb0hxfxg6ml1a2ygi5b8zzfb4mv29qszlhsmpjldd"; depends=[doParallel foreach glmnet Matrix speedglm xgboost]; };
   adaptDiag = derive2 { name="adaptDiag"; version="0.1.0"; sha256="02xpphdhvryc06yji89mn7m2djgkpy19ph4sd52rhfsma7xn6hyf"; depends=[doParallel extraDistr foreach pbmcapply]; };
   adaptMCMC = derive2 { name="adaptMCMC"; version="1.4"; sha256="0yydliqhkz1y8lm4sb2biikbk8wmcyfqmamhm059843yk46nr6an"; depends=[coda Matrix ramcmc]; };
   adaptMT = derive2 { name="adaptMT"; version="1.0.0"; sha256="1yllz1zd4cryf5bj8b2lcrj6zl79yjkllyh9p02ikryy5qmg419b"; depends=[]; };
-  adaptTest = derive2 { name="adaptTest"; version="1.0"; sha256="08d7a5dlzhaj236jvaw3c91008l66vf5i4k5anhcs32a3j8yh2iv"; depends=[lattice]; };
+  adaptTest = derive2 { name="adaptTest"; version="1.1"; sha256="1qfhb3c64a5pl23vk7z6a3h46yb69cvzp1bpxnpybhxs42s80l5q"; depends=[lattice]; };
   adaptalint = derive2 { name="adaptalint"; version="0.2.4"; sha256="15qdcvnnbgcps8j5k79354wsc9alswijv8lcafg2i3lghaw536yf"; depends=[dplyr lintr purrr]; };
   adaptiveGPCA = derive2 { name="adaptiveGPCA"; version="0.1.2"; sha256="0bb6hw77dfa66b12xyazlp992gwjb1plylixlmq4cv4yjhnl9n5z"; depends=[ape ggplot2 phyloseq shiny]; };
   adaptivetau = derive2 { name="adaptivetau"; version="2.2-3"; sha256="1jficl4yidix35q8yqs3pcv813wq3pg4hpw4ah4dprvg95bl7wwx"; depends=[]; };
@@ -5844,7 +5852,7 @@ in with self; {
   addreg = derive2 { name="addreg"; version="3.0"; sha256="13bwmgxylwi02g60j1rr51cr5jvvkl2nvf2lnnhnq46fhvs2ma7s"; depends=[combinat glm2 turboEM]; };
   ade4 = derive2 { name="ade4"; version="1.7-18"; sha256="09f5kh2mwygqpnvf53k0r54k0cvaafxm9x4nm819gwv05k2g9dpc"; depends=[MASS pixmap sp]; };
   ade4TkGUI = derive2 { name="ade4TkGUI"; version="0.3-1"; sha256="1y0f62n8iv002ayd1nyl3bmszw558niwnfzjpvk0a7cbvfdyvwcg"; depends=[ade4 adegraphics lattice]; };
-  adea = derive2 { name="adea"; version="1.2.1"; sha256="0crhv3kfxlmw0g5qb2rpq519bzd4w46lbhalqg2rfq324apxvmdj"; depends=[Benchmarking combinat knitr lpSolveAPI rmarkdown]; };
+  adea = derive2 { name="adea"; version="1.3.1"; sha256="0jvxgqwfga4gsn5jcdklfq2qci3xyvmkdfjappjwf72swb2rkv0n"; depends=[Benchmarking combinat knitr lpSolveAPI rmarkdown]; };
   adegenet = derive2 { name="adegenet"; version="2.1.5"; sha256="1wjp31634n6z6wglf4z3ydrhhn5jmpwwckmp3n2b0v5f3p2fivp4"; depends=[ade4 ape boot dplyr ggplot2 igraph MASS reshape2 seqinr shiny vegan]; };
   adegraphics = derive2 { name="adegraphics"; version="1.0-16"; sha256="0fpch8mffac68b64gh8jah8k9zcg8pphi38i9ddw5qggmvlrr9bv"; depends=[ade4 KernSmooth lattice latticeExtra RColorBrewer sp]; };
   adehabitatHR = derive2 { name="adehabitatHR"; version="0.4.19"; sha256="1zmsvv651l13pyc1f2jhmnzcv1a620mb7y3gmi7sdfh7jgms3g76"; depends=[ade4 adehabitatLT adehabitatMA deldir sp]; };
@@ -5866,18 +5874,21 @@ in with self; {
   adjustedcranlogs = derive2 { name="adjustedcranlogs"; version="0.1.0"; sha256="08apfvpqvnnalx230p4qf5ckrwm1sgzras4zfrysgym5d4map9ci"; depends=[cranlogs dplyr lubridate rvest xml2]; };
   adklakedata = derive2 { name="adklakedata"; version="0.6.1"; sha256="1lzj3ib4bgfkq5lq12n47pwc52h7k35xbbwj6brwsgx1gd4fx3x6"; depends=[httr rappdirs]; };
   adlift = derive2 { name="adlift"; version="1.4-1"; sha256="14q7fnhlqvxdhnfjhdhfmadz241srplbm069a7ybbsql21cphpf3"; depends=[EbayesThresh]; };
-  admisc = derive2 { name="admisc"; version="0.23"; sha256="0md0sygwdglyw7ss0dw6h235n70vpf25npp1q5b5nmb4db0fq80c"; depends=[]; };
+  admiral = derive2 { name="admiral"; version="0.6.3"; sha256="0b40v2y09ia8fhl70i261dmhl18vcn9dy5crr2hb44dnz3rb533c"; depends=[admiral_test assertthat dplyr hms lubridate magrittr purrr rlang stringr tidyr tidyselect]; };
+  admiral_test = derive2 { name="admiral.test"; version="0.1.2"; sha256="0p5qv43cbyyxj2i6awkayrfk9rc07h55ck9xpknyd5nf9c08gd1y"; depends=[dplyr magrittr rlang]; };
+  admisc = derive2 { name="admisc"; version="0.25"; sha256="0cf8dy0mi3ynm2ic8jp0qi1samyzashwlzz0l64izqqv2s4hpyzp"; depends=[]; };
   admix = derive2 { name="admix"; version="0.3.2"; sha256="0si2avjqw6rmv2ndsj1ppmqkafnsjx06m2h4jxfrwf2kxfp2rrn1"; depends=[fdrtool Iso latex2exp MASS orthopolynom pracma Rcpp]; };
   admixr = derive2 { name="admixr"; version="0.9.1"; sha256="0wszpzs53cbnha13g2ldpq6z5ndw2v2xgrzadqkjm3hsp6akv4bl"; depends=[dplyr magrittr readr rlang stringr tibble]; };
   admmDensestSubmatrix = derive2 { name="admmDensestSubmatrix"; version="0.1.0"; sha256="1a5lfm10aj6wdjibdnmffn75zvy6x69w8nqcx2i23gxg6v0xlqcl"; depends=[Rdpack]; };
   adnuts = derive2 { name="adnuts"; version="1.1.2"; sha256="0nkciv5sfj3bws6kpgrnaq4ziasibaz44w64mb86zmr8420nyc1q"; depends=[ellipse ggplot2 R2admb rlang rstan snowfall]; };
-  adobeanalyticsr = derive2 { name="adobeanalyticsr"; version="0.2.1"; sha256="1bibaayvcgmcxyd9wnmbg86jj6rp0pyi6pjpb84kbqhq91q78z41"; depends=[assertthat dplyr ggplot2 glue httr jose jsonlite knitr lifecycle lubridate progress purrr purrrlyr R6 rlang scales stringr tibble tidyr vctrs]; };
+  adobeanalyticsr = derive2 { name="adobeanalyticsr"; version="0.3.0"; sha256="1i5bc6lmsynfyhz7kr7zv2nx5ixlnkh6zl5grr2yh0n5g44m19nr"; depends=[assertthat dplyr ggplot2 glue httr jose jsonlite lifecycle lubridate memoise openssl progress purrr R6 rlang scales stringr tibble tidyr vctrs]; };
   adoptr = derive2 { name="adoptr"; version="1.0.0"; sha256="08d2fsqh5vczfr9cc8l554p6f0x85g58i5zg5j2m0chlmcispfk2"; depends=[glue nloptr]; };
   adpss = derive2 { name="adpss"; version="0.1.1"; sha256="0p2gyfc4rxmms8zdsq4hjsh1njfl2s736arq8aq1am2wh1w9k5ch"; depends=[Rcpp]; };
   ads = derive2 { name="ads"; version="1.5-5"; sha256="1i6cv296i5di9irmch9wg6bpxg7s026axspq0mhcwrfyqnw8xnxs"; depends=[ade4 spatstat_geom]; };
   adsDataHubR = derive2 { name="adsDataHubR"; version="0.1.1"; sha256="19csivbg3f0g2r11l7jrciqq2lhg50km7qv29xfs6ba5cf678hb9"; depends=[httr jsonlite lubridate]; };
   advclust = derive2 { name="advclust"; version="0.4"; sha256="1g8a8q4zh6d4152jb66fh7wj7k6ks5k4kfcazzw70jdn10yi6b38"; depends=[clue ggplot2 knitr MASS reshape2]; };
   adventr = derive2 { name="adventr"; version="0.1.8"; sha256="0nja1a2xhaimz1fg2bb838x9a37sswjqjc68mp59gbdwkfpdii37"; depends=[BayesFactor boot car dplyr effects effsize forcats GGally ggplot2 Hmisc learnr lm_beta nlme readr robust sandwich sjstats tidyr WRS2]; };
+  adw = derive2 { name="adw"; version="0.1.0"; sha256="1s1w68d7xw3sff5lkvr9bnhhkjxpc2r5gqj2lw8mkw0fm48m9ky0"; depends=[geosphere magrittr rnaturalearth sf]; };
   adwave = derive2 { name="adwave"; version="1.3"; sha256="11iy50ng0zxvwsvdsvx262j8zgqaai308lp5is47az7xzvk57mx7"; depends=[waveslim]; };
   adwordsR = derive2 { name="adwordsR"; version="0.3.1"; sha256="1w5qg4psm8pj89f09pz7in8zkafaimik1n6hx29y55jpmbxbk2gn"; depends=[RCurl rjson]; };
   afc = derive2 { name="afc"; version="1.4.0"; sha256="1iy1wa88kf6zi6x7lbd0jdir653cvzvdraliqpxbac413wwb5gwl"; depends=[]; };
@@ -5892,7 +5903,7 @@ in with self; {
   afthd = derive2 { name="afthd"; version="1.1.0"; sha256="0gg2cp3sj28f3pi5rqh737hna3imwarwas01jacm0m2h27587k7y"; depends=[glmnet photobiology R2jags rstpm2 survival]; };
   agRee = derive2 { name="agRee"; version="0.5-3"; sha256="1wi8jn14kpsj5z49my6fz8j6zxysddxm8svw86cnzsmnbj6mzq7x"; depends=[coda lme4 miscF R2jags]; };
   aggregation = derive2 { name="aggregation"; version="1.0.1"; sha256="0j9g604m2ccc7hcy02539yja9cf3xcbl25gvp838bp4x8w18my46"; depends=[]; };
-  aghq = derive2 { name="aghq"; version="0.3.1"; sha256="1sl2w6avkrz3j1yhyzvg88l1yvf2mi6zbdjr3zdrzm2ccgkww725"; depends=[Matrix mvQuad numDeriv polynom rlang]; };
+  aghq = derive2 { name="aghq"; version="0.4.0"; sha256="12zzadx0qfh5wg8092w777c9ymd1m6gq3gwmfp9pf9bn3s31vij3"; depends=[Matrix mvQuad numDeriv polynom rlang]; };
   aglm = derive2 { name="aglm"; version="0.4.0"; sha256="0rcyrzfi3l1k53c9qs1gfrcflnhdnri9sq6py8s6fw4wcn55kf67"; depends=[assertthat glmnet mathjaxr]; };
   agop = derive2 { name="agop"; version="0.2-3"; sha256="1z90a07wzn5z4cbafwpfh3l3v1bgq9g89qbdjm51f78zynnb27dk"; depends=[]; };
   agriTutorial = derive2 { name="agriTutorial"; version="0.1.5"; sha256="0c0p0bqcrnx34q5brnvgq10wkzahvgyybaz2xfmcghbdvzahd2dx"; depends=[emmeans ggplot2 lattice lmerTest nlme pbkrtest]; };
@@ -5906,7 +5917,7 @@ in with self; {
   agsemisc = derive2 { name="agsemisc"; version="1.3-1"; sha256="1905q35jgjhghlawql43yh296kbpysp927x3hj750yshz5zayzyr"; depends=[lattice MASS]; };
   agtboost = derive2 { name="agtboost"; version="0.9.3"; sha256="1z2ys4cn859vas3q1if50k46cryn7wwy1pjqbc8n9dhdn5zxn3sk"; depends=[Rcpp RcppEigen]; };
   agvgd = derive2 { name="agvgd"; version="0.1.1"; sha256="015izbi0f208ff0b6n2h4vjkdvi7wjzx8qkcyh7c556ikhijaxk5"; depends=[crayon dplyr grantham magrittr purrr rlang seqinr stringr tibble tidyr vctrs]; };
-  ahMLE = derive2 { name="ahMLE"; version="1.20"; sha256="1hxbl5hgflkbz18h2zjjpjvhpy4zwdiap1699ypj06s4a2a18nxj"; depends=[invGauss Matrix Rcpp RcppArmadillo survival]; };
+  ahMLE = derive2 { name="ahMLE"; version="1.20.1"; sha256="1phfzl0kynrq1if12h736jdxrfqc3i4kd32hp7sy2k2z7hkj1dkm"; depends=[invGauss Matrix Rcpp RcppArmadillo survival]; };
   ahaz = derive2 { name="ahaz"; version="1.14"; sha256="1z7w5rxd5cya7kxhgxqvn72k87y33ginxra9g7j9wrfs5jgx6kvx"; depends=[Matrix survival]; };
   ahnr = derive2 { name="ahnr"; version="0.3.1"; sha256="1g8m3q108ricfyn4fjjaihpr93xz7fm2sfzg3i0fz1n1i703jwm8"; depends=[ggplot2 magrittr matrixcalc pdist pracma purrr visNetwork]; };
   ahpsurvey = derive2 { name="ahpsurvey"; version="0.4.1"; sha256="1r7x4c318nzbx0ppm9272kfpz2bln1cafkv9irnj85nsdcravr33"; depends=[dplyr knitr magrittr randomNames Rdpack tidyr]; };
@@ -5918,9 +5929,10 @@ in with self; {
   aif360 = derive2 { name="aif360"; version="0.1.0"; sha256="0r9x9q8kc9alk1j3p0y23ispcbfac89q0c043vh8dw89q267plf8"; depends=[reticulate rstudioapi]; };
   aimPlot = derive2 { name="aimPlot"; version="1.0.0"; sha256="1d52b7kccxba6j7n0gbd7pzs0p87zn32vv8gdf2f7lyr75qzgz7x"; depends=[ggplot2]; };
   aimsir17 = derive2 { name="aimsir17"; version="0.0.2"; sha256="0v804maqaygqhw3y9wqap3h9vvjniqnnbsv1psjj500r2yscicxs"; depends=[tibble]; };
-  airGR = derive2 { name="airGR"; version="1.6.12"; sha256="1jcnjrx7pgdj1mr1vrpm0cvmh243lpgwn1h3zsbk7rjwvapr3hji"; depends=[]; };
+  airGR = derive2 { name="airGR"; version="1.7.0"; sha256="0miqkhapw3ch4wss8dkygf5j5rj9jwdm7xdb4c5jfdnxdbbsxwjs"; depends=[]; };
   airGRdatassim = derive2 { name="airGRdatassim"; version="0.1.3"; sha256="05c108rcj4rlzrbabai95abxhyjsrrrsgvds4zamvyzpjl64f9ps"; depends=[airGR]; };
-  airGRteaching = derive2 { name="airGRteaching"; version="0.2.12"; sha256="0l6isv18fj1ka5n97nfhn7pgmvn8xpb23ry7dw22rd7rb2p63bxa"; depends=[airGR dygraphs markdown plotrix shiny shinyjs xts]; };
+  airGRiwrm = derive2 { name="airGRiwrm"; version="0.6.1"; sha256="1dr7xg8a6xfdihmf4x03wm268iz78lks15fx9hmpw6sp15xv5kdj"; depends=[airGR DiagrammeR dplyr]; };
+  airGRteaching = derive2 { name="airGRteaching"; version="0.2.13"; sha256="1j95b1rz83f1x8gp6107rdk9g81j47yhgdlf8y17f0ffgrvwwfky"; depends=[airGR dygraphs markdown plotrix shiny shinyjs xts]; };
   aire_zmvm = derive2 { name="aire.zmvm"; version="0.8.2"; sha256="0z9knqdl7ihx2vph154qi1lh4s6yvlcw6kwry8k47mhh3p7pynsd"; depends=[dplyr httr lubridate progress readr readxl rvest sp stringr tidyr xml2]; };
   airportr = derive2 { name="airportr"; version="0.1.3"; sha256="1h8h0cdfqgxv8cf9hp82sx5n4a1z88qyyxicj7d2kmmybqqz2r5n"; depends=[dplyr]; };
   airports = derive2 { name="airports"; version="0.1.0"; sha256="1ahfqqfcvr731hj0h7d00jd87h1adiryh42sv4mh318lk5rglm6f"; depends=[]; };
@@ -5936,13 +5948,12 @@ in with self; {
   akmedoids = derive2 { name="akmedoids"; version="1.3.0"; sha256="19d9fh1cygn04riwc7y7lzdncyxki9rzikf9f5m96vp0y687z2ka"; depends=[clusterCrit dplyr ggplot2 Hmisc kml signal]; };
   alabama = derive2 { name="alabama"; version="2015.3-1"; sha256="0mlgk929gdismikwx4k2ndqq57nnqj7mlgvd3479b214hksgq036"; depends=[numDeriv]; };
   alakazam = derive2 { name="alakazam"; version="1.2.0"; sha256="0lqvfamx9lqcg6ig70zzxan2zchab68g6qxa734d6dsdgyfkiwnm"; depends=[airr ape Biostrings dplyr GenomicAlignments ggplot2 igraph IRanges Matrix progress Rcpp readr rlang scales seqinr stringi tibble tidyr]; };
-  albatross = derive2 { name="albatross"; version="0.3-2"; sha256="1rwaw7809lzdv89lfq9li8jdb7pbb0wjqyiidxl7pxg7d5nxj06h"; depends=[lattice Matrix multiway pracma]; };
+  albatross = derive2 { name="albatross"; version="0.3-4"; sha256="0fnywnydzn7mmdnlb413px08k09y5ac2ib3p8jic77i09g1v554m"; depends=[CMLS lattice Matrix multiway pracma]; };
   albopictus = derive2 { name="albopictus"; version="0.5"; sha256="0kw1agm9jqi9wl5zbx8bryngy751g3sih36rgbrx0m2170cy42d9"; depends=[]; };
   ald = derive2 { name="ald"; version="1.3.1"; sha256="12nf9vakayw24clrg56fh9x85kg277iricbs8ymahkjqjnc1p3cz"; depends=[]; };
   aldvmm = derive2 { name="aldvmm"; version="0.8.4"; sha256="1dnmm3driw8ybqd10zlsaink5zh5f0pj2qqxda7y34s9shz7yqh9"; depends=[checkmate numDeriv optimr]; };
   alfr = derive2 { name="alfr"; version="1.2.1"; sha256="1ldq8gvgqjjabn86hdqb6hxch8x4hvr6djv5ly4mx039dipc8jxi"; depends=[httr jsonlite magrittr stringr]; };
   alfred = derive2 { name="alfred"; version="0.2.0"; sha256="1y0s6vn0piq4wnlc6v143va0qkklm67aa653lwgq926nfnjxz6as"; depends=[curl dplyr httr jsonlite lubridate magrittr rlang tibble tidyr]; };
-  algaeClassify = derive2 { name="algaeClassify"; version="1.2.0"; sha256="1sna5rij2ngpgqfz5cviqdbyr43xph8cbjc4vnm238n72zgg7cb6"; depends=[httr lubridate plyr RCurl rvest taxize XML xml2]; };
   algo = derive2 { name="algo"; version="0.1.0"; sha256="1g18p8jyj9crkqm16y2im3r9xzqwa36javv4vi1wvsqkg31d81si"; depends=[glue htmltools jsonlite]; };
   algorithmia = derive2 { name="algorithmia"; version="0.3.0"; sha256="1ccmcsyxncyv8k0fjvr5y44amygqi7qx2dy6rsy3a5pw281hllr4"; depends=[base64enc httr rjson]; };
   aliases2entrez = derive2 { name="aliases2entrez"; version="0.1.2"; sha256="11myzwvmagnj35qrrxr35hklzv76c0c4h2zl64y3lzzn5rfii0n6"; depends=[AnnotationDbi doParallel foreach limma org_Hs_eg_db RCurl readr]; };
@@ -5950,38 +5961,40 @@ in with self; {
   allcontributors = derive2 { name="allcontributors"; version="0.0.2"; sha256="0b9qiwp6z33fgci7np4qhsb39rzmarajsj3pa98vkmdn71bw1bxf"; depends=[cli clipr ghql git2r httr jsonlite magrittr]; };
   alleHap = derive2 { name="alleHap"; version="0.9.9"; sha256="1fqrw645s3f5363p7jl3dzy8xphxdr1v6wdsjmqcqwpgvjqfr2zz"; depends=[abind]; };
   allelematch = derive2 { name="allelematch"; version="2.5.1"; sha256="00117cj01psax4rjvy2nja5r2ss9l8zzjicczh46kp401i1ghmwc"; depends=[dynamicTreeCut]; };
-  allestimates = derive2 { name="allestimates"; version="0.2.1"; sha256="1znjzqansh2117xpnwpsw450z20q6rz91h2kg35ygssg5skk8z6q"; depends=[broom dplyr ggplot2 speedglm stringr survival tibble tidyr]; };
+  allestimates = derive2 { name="allestimates"; version="0.2.2"; sha256="0g0j6q810665lfa3a9xwmv0hkgcp2a8g0xq0vfpvyykyqykgid3z"; depends=[broom dplyr ggplot2 speedglm stringr survival tibble tidyr]; };
   alluvial = derive2 { name="alluvial"; version="0.1-2"; sha256="039frwrsxq1lb97s7vf2vbyyadimkigs628ymym06fxka53drdkp"; depends=[]; };
   almanac = derive2 { name="almanac"; version="0.1.1"; sha256="0qsczk74ihy7ac5c4dzd6ax5gfmr56wfnjxg396qc2c3xykb7dd5"; depends=[glue lubridate magrittr R6 rlang V8 vctrs]; };
   alookr = derive2 { name="alookr"; version="0.3.5"; sha256="04ivvr9x5glxsz5077z0ahw0x242dgxnch4i6ybmv59jp6gpf4hg"; depends=[caTools cli dlookr dplyr future ggmosaic ggplot2 glmnet MASS MLmetrics party purrr randomForest ranger rlang ROCR rpart tibble tidyr tidyselect unbalanced xgboost]; };
   alpaca = derive2 { name="alpaca"; version="0.3.3"; sha256="1mpyy9wg2wvznkd9vgzaxyz87py9zmlrlrzrhqbmqiwqh5y99wnq"; depends=[data_table Formula MASS Rcpp RcppArmadillo]; };
   alphaOutlier = derive2 { name="alphaOutlier"; version="1.2.0"; sha256="09yrbv7jsiymw5gzp8p92ki70v1fys2k75x4sb9s7wy3c58wn1cd"; depends=[nleqslv quantreg Rsolnp]; };
   alphabetr = derive2 { name="alphabetr"; version="0.2.2"; sha256="1pmp6zwhgycb38y5jbvrbv2nza7gyjh508vy09ml483c2cysvc1r"; depends=[clue dplyr multicool Rcpp]; };
-  alphahull = derive2 { name="alphahull"; version="2.2"; sha256="024d70z9pasyfp83zwgh7fkjky70l74pbzw1wvazzq75p9m91vzv"; depends=[ggplot2 R_utils sgeostat spatstat splancs tripack]; };
+  alphahull = derive2 { name="alphahull"; version="2.3"; sha256="0vir69bgydkb3l47kn0fs8x6nkh6vgbhrjsfhf1gnzvwj66iig29"; depends=[ggplot2 R_utils sgeostat spatstat_geom spatstat_random splancs tripack]; };
   alphashape3d = derive2 { name="alphashape3d"; version="1.3.1"; sha256="0d3rxvsb0yl900dlpr1v5w56z8ci9rbp5dlwx7l2laifyprsns2i"; depends=[geometry rgl]; };
   alphastable = derive2 { name="alphastable"; version="0.2.1"; sha256="01gwrcxlj2jlb8axs5qmrsixk3a8b7044ypyjg6dpdcxfbcf5fvp"; depends=[mvtnorm nlme nnls stabledist]; };
   alphavantager = derive2 { name="alphavantager"; version="0.1.2"; sha256="0c97p8njga4xffvsa0kj0s4y0agjr44y9bnjxs5phm1ldcqjs0yj"; depends=[dplyr glue httr jsonlite purrr readr stringr tibble tidyr timetk]; };
   alr4 = derive2 { name="alr4"; version="1.0.6"; sha256="0v98yzi0fcjxq0ak0w05001h8m9nfa9l0ann9bqvz8bwcmb3jlr2"; depends=[car effects]; };
   altR2 = derive2 { name="altR2"; version="1.0.0"; sha256="15nvbq3n76p2857ipyf3q6rs2mwjqsp9gr3rmzbjfm8lrj0faxsv"; depends=[gsl purrr]; };
   altadata = derive2 { name="altadata"; version="0.1.1"; sha256="0wv8a0423k0gw5i0qgz5d3wqw22a9pk7r80fp33pn0mxq9b54zdv"; depends=[httr jsonlite]; };
-  altair = derive2 { name="altair"; version="4.1.1"; sha256="0fdhv23clmfcajjdrph0m8psrh5wr2giwhydbcrap9mdgbr0rkbk"; depends=[assertthat htmlwidgets magrittr repr reticulate vegawidget]; };
+  altair = derive2 { name="altair"; version="4.2.1"; sha256="1132q369yxrfix76xizw22rpbixqbfsf23c3p1m751h536hmx2f6"; depends=[assertthat htmlwidgets magrittr repr reticulate vegawidget]; };
   altfuelr = derive2 { name="altfuelr"; version="0.1.0"; sha256="0k3f4wr9gbn5aig40xg817hrnz2lx8g4adyy18s59fs8dw03v87h"; depends=[dplyr httr jsonlite lubridate magrittr purrr stringr]; };
-  altmeta = derive2 { name="altmeta"; version="3.3"; sha256="1xq12hnzxh7kgv2i36xprg4lkvqfmxwz3sq4a1jlq2d5g3narvcm"; depends=[coda lme4 Matrix metafor rjags]; };
-  amanida = derive2 { name="amanida"; version="0.1.0"; sha256="1z6i76b1qljw4fdaa5bbv0jhim1hyn3ysvl9ls2rglg4qzbv5bdn"; depends=[dplyr ggplot2 ggrepel kableExtra knitr magrittr readr readxl rmarkdown tibble tidyr tidyverse]; };
+  altmeta = derive2 { name="altmeta"; version="4.0"; sha256="17cyiydf4n5j64izj7jph2v43h4x9kfd5b0x6m0ik5ci2aw8xzr5"; depends=[coda lme4 Matrix metafor rjags]; };
+  amanida = derive2 { name="amanida"; version="0.2.0"; sha256="164ln3dagmdcbqbgywhgxkq0nbnf83p8hw16bvkdhydhzg82s021"; depends=[dplyr ggplot2 ggrepel kableExtra knitr magrittr readr readxl rmarkdown tibble tidyr tidyverse webchem]; };
   amanpg = derive2 { name="amanpg"; version="0.3.3"; sha256="0hmdc4kiaxa41hvva93dl48c1lbwih24pjpy569n0cg1zq16fc9x"; depends=[]; };
   amap = derive2 { name="amap"; version="0.8-18"; sha256="0zpcb73w413na23f6giml9311jh0j0y766w2fh9i40d2h7bbvyvs"; depends=[]; };
   amapGeocode = derive2 { name="amapGeocode"; version="0.6.0"; sha256="0j04hg2ks7578fiaymj295yll77xm6x5svmxx6m4n0djky8j10n1"; depends=[data_table furrr httr jsonlite magrittr sjmisc xml2]; };
   ambhasGW = derive2 { name="ambhasGW"; version="0.0.2"; sha256="0v517i4whip45pk6bwlwval9pz367pcgzz62b2z22mrwgi6m6bck"; depends=[raster rgdal yaml]; };
   ambient = derive2 { name="ambient"; version="1.0.0"; sha256="0b8nd8g0ydglql2cwi4wmlnv5kyid8q51vz0p08f9m5x73k3z2bd"; depends=[Rcpp rlang]; };
-  ambiorix = derive2 { name="ambiorix"; version="1.0.2"; sha256="1yzrh5nqhcri9ik25fc969fvckkwxp0hnwhfbdk61lp2gx6ll93k"; depends=[assertthat cli fs glue here httpuv jsonlite log promises websocket]; };
+  ambiorix = derive2 { name="ambiorix"; version="2.0.0"; sha256="106lcrg4pj6zniib5zm8bp2s94lhwr9nmx2lxv684vg145m4pia5"; depends=[assertthat cli fs glue httpuv jsonlite log promises websocket]; };
   amelie = derive2 { name="amelie"; version="0.2.1"; sha256="0f4rfijskrw9nmyzbrbz6yfa9d0a5cxjw8n9c36hc6jvh377i7k7"; depends=[]; };
   amen = derive2 { name="amen"; version="1.4.4"; sha256="00c4dw6s8yxagbgadvcpw4ima89aqjqgpm3460zi97xwq9404f1d"; depends=[]; };
+  amerifluxr = derive2 { name="amerifluxr"; version="1.0.0"; sha256="099vv1axgp4jfi9ic4rqsdcv8a5dz1z0zdmdx8r8h474p3jdqm7c"; depends=[heatmaply httr jsonlite memoise RCurl readxl]; };
   amerika = derive2 { name="amerika"; version="0.1.0"; sha256="1c0bi0wrc89d0zv0wzmdvka66mcikgi1w4gn1i22mvg5bivhzaqx"; depends=[]; };
   aml = derive2 { name="aml"; version="0.1-1"; sha256="09xxlxp784wlb561apns3j8f2h9pfk497cy5pk8wr4hhqqv4d3al"; depends=[lars]; };
+  ammiBayes = derive2 { name="ammiBayes"; version="1.0-0"; sha256="1j5zr1yk2qwba1j5kjc48f9jygi6zn6d33m13jarmczn8y6nxf22"; depends=[bayesplot coda distfree_cr Hmisc lattice latticeExtra movMF msm spam]; };
   ammistability = derive2 { name="ammistability"; version="0.1.2"; sha256="0ak20y5iv1cg5y06srdlfk5qp5c463ky41l350shnqpq550azy11"; depends=[agricolae ggcorrplot ggplot2 mathjaxr Rdpack reshape2]; };
   ampd = derive2 { name="ampd"; version="0.2"; sha256="0bi8qngd37n60ym516yjcahxc536vdwm60rq5ld32170hww69j7c"; depends=[]; };
   ampir = derive2 { name="ampir"; version="1.1.0"; sha256="0nnsxrnq3m1frrjp3i8bhm67x6xnl0scyb67wxgm5x7b187svhfj"; depends=[caret kernlab Peptides Rcpp]; };
-  amt = derive2 { name="amt"; version="0.1.6"; sha256="1jcv21n95xh7gl86fh9k1vjn9qxadcd4nf521fidwavih2lhwmfi"; depends=[checkmate circular ctmm dplyr fitdistrplus lubridate magrittr purrr raster Rcpp Rdpack rgeos rlang sf sp survival tibble tidyr]; };
+  amt = derive2 { name="amt"; version="0.1.7"; sha256="04sjvb4zvalv22q90n50rdkkj002vr5shhpgxacaac7hy0pgpcyc"; depends=[checkmate circular ctmm dplyr fitdistrplus lubridate magrittr purrr raster Rcpp Rdpack rgeos rlang sf sp survival tibble tidyr]; };
   anMC = derive2 { name="anMC"; version="0.2.2"; sha256="0ab215nrqn535g9ayqzvgdckhwcrij1mc1296pvlj3grn3f8rhws"; depends=[mvtnorm Rcpp RcppArmadillo]; };
   anacor = derive2 { name="anacor"; version="1.1-3"; sha256="0mj8g9p4fla0ax9jvcq7kii4lrhj8g872p11nys06anva22qjp51"; depends=[car colorspace fda]; };
   analogsea = derive2 { name="analogsea"; version="1.0.3"; sha256="1mf9baniria2vq5k5djm8jfj3lyr2p9q9idcy0ifcrmzyrmgwwi3"; depends=[httr jsonlite magrittr yaml]; };
@@ -5991,7 +6004,6 @@ in with self; {
   analyz = derive2 { name="analyz"; version="1.4"; sha256="0qdh1gld2dkl0krbhm2vcqg8dfs03dn51rclgsw02554s06dlgxw"; depends=[]; };
   analyzer = derive2 { name="analyzer"; version="1.0.1"; sha256="1729dnghdca7dr4l5cxazg68ipkm63mvk2danwm3bva62sza29p6"; depends=[dplyr ggplot2 gridExtra]; };
   anapuce = derive2 { name="anapuce"; version="2.3"; sha256="05k3ypy4dc8q4jv0by37k66pdwb1wmsd24i6nciris5knfdy9csg"; depends=[]; };
-  anchors = derive2 { name="anchors"; version="3.0-8"; sha256="12gd2526y7s2a8i6b9xma2c3sc6zxnwzl6sn8b50hbxizwr8d34j"; depends=[MASS rgenoud]; };
   andrews = derive2 { name="andrews"; version="1.0"; sha256="130i86qkdy1xpcf611jpzqgmd17iik7j7spdcfwzk48f31biyp8v"; depends=[]; };
   andurinha = derive2 { name="andurinha"; version="0.0.2"; sha256="1cpz16zv3al6lmsqsb7dl5v6kml2a0hg084rbmwa4wsyk5ygl8bm"; depends=[cowplot ggplot2 plyr rlang signal tidyr]; };
   anesrake = derive2 { name="anesrake"; version="0.80"; sha256="1p2g51w80jiadlf4asbnsw46asarzlzr5c1yfhdb31ymqxd7p76q"; depends=[Hmisc weights]; };
@@ -6013,7 +6025,7 @@ in with self; {
   anscombiser = derive2 { name="anscombiser"; version="1.0.0"; sha256="0jpmxgr5hfyv1hcjn4h1063ch3b3xlgqv983f4f9d2ajz5i5mdwv"; depends=[]; };
   antaresEditObject = derive2 { name="antaresEditObject"; version="0.3.0"; sha256="04rdq3kbliac1iaxqflf3qhh58qgl9pxb2qh44wkknb91ga0845x"; depends=[antaresRead assertthat data_table doParallel pbapply whisker]; };
   antaresProcessing = derive2 { name="antaresProcessing"; version="0.18.1"; sha256="1dlq850xqh9534ws88ma3vv5r79cbabn6r6a2jmicxx116s7wjrz"; depends=[antaresRead data_table]; };
-  antaresRead = derive2 { name="antaresRead"; version="2.2.9"; sha256="1g91fm614q3v5i5v6smp70fipya9rlcdshqixcsjniqcwvpvb01c"; depends=[bit64 data_table doParallel httr jsonlite lubridate pbapply plyr shiny stringr]; };
+  antaresRead = derive2 { name="antaresRead"; version="2.2.95"; sha256="0w6pzgrj4bgfz9n8g6fjy13gfp2pybav5k23jpmlp5wsnq8lmb7i"; depends=[bit64 data_table doParallel httr jsonlite lubridate pbapply plyr shiny stringr]; };
   antaresViz = derive2 { name="antaresViz"; version="0.17"; sha256="18f398qvy88w9rlkd08h5gvk7vwh349cjxi4pa59s5fs4ihhmdd2"; depends=[antaresProcessing antaresRead assertthat data_table dygraphs geojsonio htmltools htmlwidgets leaflet leaflet_minicharts lubridate manipulateWidget plotly rAmCharts raster rgeos shiny sp spMaps webshot]; };
   anthro = derive2 { name="anthro"; version="1.0.0"; sha256="169h2vhdd2kxh4228lx1ab3fipixvka4686ngx6h8g15li9828s9"; depends=[survey]; };
   anthroplus = derive2 { name="anthroplus"; version="0.9.0"; sha256="1wnj2idgdnh2gdw34x40adijf2sxp3k72j45pqqxg4aqc1wrvvv1"; depends=[anthro]; };
@@ -6040,10 +6052,10 @@ in with self; {
   apcf = derive2 { name="apcf"; version="0.1.7"; sha256="071gax2w9b0l74vls59y6syg2swiagz5xkab1x2wmmxk16y49l1s"; depends=[Rcpp]; };
   apcluster = derive2 { name="apcluster"; version="1.4.9"; sha256="0wnbb3kj9m7rfq63xr43jjf6n8jxm1r2wvvx6g0qkss0wvipbb1s"; depends=[Matrix Rcpp]; };
   apdesign = derive2 { name="apdesign"; version="1.0.0"; sha256="041zyd7ih9nnj92jj9vb9ya1ij9lmj1dzx64q74vyiadw1ix5l66"; depends=[Matrix]; };
-  ape = derive2 { name="ape"; version="5.6-1"; sha256="1xzpq3a4q5hmksc8nl530c9n31fdkj3nigqm1qhd3vkncl1iwh15"; depends=[lattice nlme Rcpp]; };
+  ape = derive2 { name="ape"; version="5.6-2"; sha256="0mqjsh7maczd02iwa4fb896q3kgd9jnlilq7y1yz18ch0c54aqlv"; depends=[lattice nlme Rcpp]; };
   apercu = derive2 { name="apercu"; version="0.2.4"; sha256="046gf4dzypl6mmq7xqkyrdasq9rsjxzsii7w4nxkbn4c40kh7bf7"; depends=[pls]; };
   apex = derive2 { name="apex"; version="1.0.4"; sha256="1ddzbzpnc17yvbl5yfyp0widqlx48qwlh80xcmyzhv045s680rdk"; depends=[adegenet ape phangorn]; };
-  apexcharter = derive2 { name="apexcharter"; version="0.3.0"; sha256="1ds2qil4jwvfbiv39agpiwq3r54pbi4963n6i25nzfkdclw3hbjl"; depends=[ggplot2 htmltools htmlwidgets jsonlite magrittr rlang shiny]; };
+  apexcharter = derive2 { name="apexcharter"; version="0.3.1"; sha256="1kvlsnsvgiz3akcqpiyxin264qpjbz3m8g98jgfwyiqkjhqs441a"; depends=[ggplot2 htmltools htmlwidgets jsonlite magrittr rlang shiny]; };
   aphid = derive2 { name="aphid"; version="1.3.3"; sha256="1jqpn7w5sgy4k49qd9ci6yj89s55gzwl5w5ldw793mzpg6if7lfn"; depends=[kmer openssl Rcpp]; };
   aphylo = derive2 { name="aphylo"; version="0.2-1"; sha256="0kvxz5r1z63610k127ji7dangrq7pd0zfgf5yqsvn0v7j4c9c5v5"; depends=[ape coda fmcmc MASS Matrix Rcpp xml2]; };
   apisensr = derive2 { name="apisensr"; version="0.3.0"; sha256="1mis266s4m0hp34m7b7p008dvw7780r8rypgbpk7h5hgd1w5d7m0"; depends=[config episensr ggplot2 ggraph glue golem htmltools igraph rhandsontable rmarkdown shiny shinyjs shinymaterial]; };
@@ -6061,26 +6073,25 @@ in with self; {
   aprean3 = derive2 { name="aprean3"; version="1.0.1"; sha256="17rnq02sncl6rzwyln10200s43b8z1s2j0kdi9kgcb6qr51v12rv"; depends=[]; };
   aprof = derive2 { name="aprof"; version="0.4.1"; sha256="14qclp88j4ygd4vrxxpgy2s9939wcajjsqycdzpvn64ws29sdpvh"; depends=[testthat]; };
   apsimx = derive2 { name="apsimx"; version="2.3.1"; sha256="1d1ipzf9ahdb3540zjcyzj4dwx5v8b73av790ahhbmc128vdmspj"; depends=[DBI jsonlite knitr RSQLite xml2]; };
-  apsrtable = derive2 { name="apsrtable"; version="0.8-8"; sha256="1qmm89npjgqij0bh6p393wywl837lfsshp2mv9b5izh1sg2qfwvw"; depends=[]; };
   apt = derive2 { name="apt"; version="3.0"; sha256="14njvpf6q34nffm3r9gqcszlabzbydsxqj0ln9nk4mv59izp8sqm"; depends=[car erer urca]; };
   apyramid = derive2 { name="apyramid"; version="0.1.2"; sha256="0ws6dfd6v3p9rhpmf06786yl2gaw1h2n1d76a054iap8bvgyahzw"; depends=[dplyr forcats ggplot2 glue rlang scales tidyselect]; };
-  aqp = derive2 { name="aqp"; version="1.40"; sha256="07xs6yk3mqlhipwbnwygc0hklm6pr8rc6lmyl5n24vm01zkfnzwp"; depends=[cluster data_table lattice plyr sp stringr]; };
-  aquodom = derive2 { name="aquodom"; version="0.1.0"; sha256="1ww80pglvpyi84z6zi475y9clx2zyys0qy2g2579wmyqs4hc36p6"; depends=[cachem dplyr glue httr lubridate magrittr memoise openxlsx readr rlang stringr tibble]; };
+  aqp = derive2 { name="aqp"; version="1.41"; sha256="1md0ah0i8ifcmqc7q38mgbdhpnxvjmiax9ic8w0bqayw6lh9vyi6"; depends=[cluster data_table lattice plyr sp stringr]; };
+  aquodom = derive2 { name="aquodom"; version="0.1.1"; sha256="11w3qf1fwa5gqbiwfq23hrw8k009xbn8rwdb5fgckykyc49lhqbk"; depends=[cachem dplyr glue httr lubridate magrittr memoise openxlsx readr rlang stringr tibble]; };
   ar_matrix = derive2 { name="ar.matrix"; version="0.1.0"; sha256="1d531hkl50szfa1q0zbp8dp1a9jli63kwvxjgc9n0ar279y47qdz"; depends=[MASS Matrix sp sparseMVN]; };
   arabic2kansuji = derive2 { name="arabic2kansuji"; version="0.1.1"; sha256="0fb8qn9a7xyk2civs1s3cx61hxmkrj6pkwnfq7pbjdm2dh6xjfky"; depends=[purrr stringr]; };
   arabicStemR = derive2 { name="arabicStemR"; version="1.2"; sha256="1vflynbi7aln7x2p4jg9gsvfrxn4v6qkb4wbrzxmj561lqy9fcay"; depends=[]; };
-  arakno = derive2 { name="arakno"; version="1.1.1"; sha256="0l17h1xzd2nlq79n4g89cp6rmrk03vlnw01rja46cm1ckhyhw1by"; depends=[httr jsonlite rgbif rworldmap rworldxtra]; };
+  arakno = derive2 { name="arakno"; version="1.2.0"; sha256="00byazqa95zjgm04ycky2lvw0i2dwp66nwb1k1vdf8s3cx9jv3hr"; depends=[httr jsonlite rgbif rworldmap rworldxtra]; };
   arc = derive2 { name="arc"; version="1.3"; sha256="0isfa7d26jpj004lf4f06krbfa68zyzrh5431xa63k2dykvg8c5j"; depends=[arules discretization Matrix R_utils]; };
   archdata = derive2 { name="archdata"; version="1.2-1"; sha256="1dahfl9xdnqiwzdrff98x23k1dl19sfdqnv7jlg1xzgvhj1fhk0d"; depends=[]; };
-  archeofrag = derive2 { name="archeofrag"; version="0.7"; sha256="15bz2czjxiw0q46sbalfcqk3jacpf4zcaa8x8d6jvbsf4hib6i28"; depends=[igraph RBGL]; };
+  archeofrag = derive2 { name="archeofrag"; version="0.8"; sha256="148fhivihph2sg1wmdzw6ls1i3z28phywp4nvl0dsr00y09vsh4k"; depends=[igraph RBGL]; };
   archetyper = derive2 { name="archetyper"; version="0.1.0"; sha256="1d4vz7kj7n5j81fwfxvr47if8c7fdycci6n33wf8paac0v2paqli"; depends=[bannerCommenter config feather here knitr log4r ps readr rmarkdown skimr snakecase stringr testthat tidyverse]; };
   archetypes = derive2 { name="archetypes"; version="2.2-0.1"; sha256="0ibxsr173ib77gjhid91m85s8gjii4mi2w3d52q5301igv20p7r0"; depends=[modeltools nnls]; };
   archiDART = derive2 { name="archiDART"; version="3.4"; sha256="1wvjlg2rwy39czf3qqh9igk9rmk9i7pxa9yl5x9yqmsagwd1av3n"; depends=[geometry gtools sp XML]; };
   archive = derive2 { name="archive"; version="1.1.4"; sha256="1bhw3k1fwvvvacgsz1qgzc513lsz3y62cnvnvgabl6aqpn6fs29n"; depends=[cli cpp11 glue rlang tibble]; };
-  archiveRetriever = derive2 { name="archiveRetriever"; version="0.1.0"; sha256="1pfq63db0g818vavf9syf2psqvj7xk9n243hqilf21ijgqwfh165"; depends=[anytime dplyr ggplot2 gridExtra httr jsonlite lubridate rvest stringr tibble tidyr xml2]; };
+  archiveRetriever = derive2 { name="archiveRetriever"; version="0.1.1"; sha256="0vm2nncf98vhdv5yq8k66z9bffpxq9hck11r09dmcls997h2p27x"; depends=[anytime dplyr ggplot2 gridExtra httr jsonlite lubridate rvest stringr tibble tidyr xml2]; };
   archivist = derive2 { name="archivist"; version="2.3.6"; sha256="0q1qysack30xzxdbvvi56rk7r85hsj4ghls9r70ki7bl3rqwr4c9"; depends=[DBI digest flock httr lubridate magrittr RCurl RSQLite]; };
   archivist_github = derive2 { name="archivist.github"; version="0.2.6"; sha256="092fzi505vx9xbk41m86d0isxna42iflp7q2kjiqa6z1ccvim2yx"; depends=[archivist digest git2r httr jsonlite]; };
-  arcpullr = derive2 { name="arcpullr"; version="0.2.1"; sha256="12gr2q5ipm20clbpv1snhfff9cp2dr60m3mv0s4iibipv7fhpl4s"; depends=[dplyr ggplot2 httr jsonlite raster rlang sf tidyr]; };
+  arcpullr = derive2 { name="arcpullr"; version="0.2.3"; sha256="1g0038pc20nq4wj6ra0vjdynvlkqv95x33ncvrmi4pfa7wbsgh4x"; depends=[bslib dplyr DT ggplot2 httr jsonlite raster rgdal rlang sf tidyr]; };
   arctools = derive2 { name="arctools"; version="1.1.4"; sha256="0ldhmv2fs3gi5v5d36y8i1mbw3w4vf2h8f7avlk5zgywn46j75zf"; depends=[lubridate runstats]; };
   areabiplot = derive2 { name="areabiplot"; version="1.0.0"; sha256="0izgvlg174jbr3fm3qc8zh23kfs7hn9bwd40x6vm90iivrrgdcp7"; depends=[nipals]; };
   areal = derive2 { name="areal"; version="0.1.7"; sha256="1kdnf7c21g51mhf428nl5jl96cfrk5iw1npzp5rv5ys3jp2mvhhi"; depends=[dplyr glue purrr rlang sf]; };
@@ -6089,7 +6100,7 @@ in with self; {
   arenar = derive2 { name="arenar"; version="0.2.0"; sha256="08b865v7ringqzm5m4ib4nrmlyqywir6bjj7alzmg06dy7mrl9s7"; depends=[auditor DALEX fairmodels gistr iBreakDown ingredients jsonlite plumber]; };
   arfima = derive2 { name="arfima"; version="1.7-0"; sha256="0kj8qv6m2fcdw8x735n8fk9cynm0jxi5v9hif0f879sxk6qkxb9y"; depends=[ltsa]; };
   argo = derive2 { name="argo"; version="3.0.1"; sha256="1q7gbyk2f8vimwzdmd1mfqyaql2gyawywilwzs6g1716gbk3gd80"; depends=[boot glmnet Matrix XML xtable xts zoo]; };
-  argoFloats = derive2 { name="argoFloats"; version="1.0.3"; sha256="085bw6jwm73yryibd5znzs4a0qf1f9w2iha15kkpx517y4z71pgn"; depends=[oce]; };
+  argoFloats = derive2 { name="argoFloats"; version="1.0.4"; sha256="0n3c7gs5991fv6ypiagyxb0kzrbv80r7z0kspzbsp8ss04q2ymgc"; depends=[oce]; };
   argon2 = derive2 { name="argon2"; version="0.4-0"; sha256="09hzl0wz0lw2v7g64rdv0lij2hq36zl37a6rmxwvinmjdzijcsyw"; depends=[]; };
   argonDash = derive2 { name="argonDash"; version="0.2.0"; sha256="1wykr7y5375g1nb18ynybccxmd948xrr0gdwxxqsfjf782vlgd2d"; depends=[argonR htmltools shiny]; };
   argonR = derive2 { name="argonR"; version="0.2.0"; sha256="15hlvansqnky9bnq4r7xza3hb1hzylmhz8117wxz9lxa1wiky2is"; depends=[htmltools rstudioapi]; };
@@ -6099,7 +6110,7 @@ in with self; {
   ari = derive2 { name="ari"; version="0.3.5"; sha256="03w99c918jp23d0kl26vx4m7xjicpgwl5rhn9d0fsm4kvv7j87li"; depends=[hms progress purrr rmarkdown rvest text2speech tuneR webshot xml2]; };
   ariExtra = derive2 { name="ariExtra"; version="0.3.1"; sha256="1j8x2m9799i5kxrvsf2cjrffb5p6r4zjrr0khsy4i22xn7kyl8nf"; depends=[ari docxtractr httr jsonlite magrittr mime pdftools rmarkdown rvest text2speech tuneR xml2 yaml]; };
   aricode = derive2 { name="aricode"; version="1.0.0"; sha256="0i6vynhby4sjiaxscjrgrb5d96f307yjr8r9ff1fhv264lydcqwl"; depends=[Matrix Rcpp]; };
-  arkdb = derive2 { name="arkdb"; version="0.0.14"; sha256="1ih85bc9yz3a9j4k5dgfv7mg907mxj839f4g0w8fdrny0j11dnfg"; depends=[DBI]; };
+  arkdb = derive2 { name="arkdb"; version="0.0.15"; sha256="0gbhqkfdivb1b6pw7w7xiypd305kwawdgswb87pq9jld0h0dwzlp"; depends=[DBI]; };
   arkhe = derive2 { name="arkhe"; version="0.4.0"; sha256="15dvkbixkxlayd9kwv03y8bx2kvhaiv1sb2s7xgcv9kqf43zankf"; depends=[]; };
   arm = derive2 { name="arm"; version="1.12-2"; sha256="0pagrc1vkaz460d0lvrgb4xj6gcd920f4mrc8zpzw07c3v1s2sw1"; depends=[abind coda lme4 MASS Matrix nlme]; };
   armada = derive2 { name="armada"; version="0.1.0"; sha256="191iwf5y1za3wssawkyi9jcingfqqxcvv88hglpw6j7y3x5f47hf"; depends=[anapuce circlize ClustOfVar ComplexHeatmap doParallel FAMT glmnet impute mvtnorm qvalue VSURF]; };
@@ -6113,7 +6124,7 @@ in with self; {
   arrApply = derive2 { name="arrApply"; version="2.1"; sha256="0qy7iwi580rrf3sycsbv6qgxsqcdy9pdbnkdrx81j68qni9iw737"; depends=[Rcpp RcppArmadillo]; };
   arrangements = derive2 { name="arrangements"; version="1.1.9"; sha256="0nrlyxgn6667l2rb1q5rvps1anld9aq88qqr3ch2i6zchnqxrdg9"; depends=[gmp R6]; };
   arrayhelpers = derive2 { name="arrayhelpers"; version="1.1-0"; sha256="02rl530qxi1idiqpmzg5wr9vl5c7phizhpj64k5pn8xq9zfxbpaz"; depends=[svUnit]; };
-  arrow = derive2 { name="arrow"; version="6.0.1"; sha256="14fghz9xijcrck0c65crvfidgyhgzy9b2apwmg7qrgn2sy09xm0p"; depends=[assertthat bit64 purrr R6 rlang tidyselect vctrs]; };
+  arrow = derive2 { name="arrow"; version="7.0.0"; sha256="1s9h2aw6iig45nz2rfk13qbp0qydx6cc4r6qs58f9cm9vgwsg76l"; depends=[assertthat bit64 cpp11 purrr R6 rlang tidyselect vctrs]; };
   ars = derive2 { name="ars"; version="0.6"; sha256="0zs1rk3i7pc9wcvxrvjcls194mfbvmkz7cb6pwd1cm3fzjwsyxsp"; depends=[]; };
   arse = derive2 { name="arse"; version="1.0.0"; sha256="0ssaalc058m09gfcr1n0s729rx2plia3zkhlynj67drclyvhyb0i"; depends=[dplyr pracma]; };
   arsenal = derive2 { name="arsenal"; version="3.6.3"; sha256="0qvs3ld28djnjnggdhqjwq8sbv8zz322qahlvf7dnx35yqf6xkms"; depends=[knitr]; };
@@ -6135,7 +6146,7 @@ in with self; {
   asd = derive2 { name="asd"; version="2.2"; sha256="0p3r4qjam3sl3rpcilb0pgx4xx3ly71xqnvkv31vzjs885lgxz4l"; depends=[mvtnorm]; };
   asdreader = derive2 { name="asdreader"; version="0.1-3"; sha256="15a922aw0v5w4hrha03xifx8cpifcc773gambgwqq6i5nz08ya26"; depends=[]; };
   ash = derive2 { name="ash"; version="1.0-15"; sha256="1ay2a2agdmiz7zzvn26mli0x0iwk09g5pp4yy1r23knhkp1pn2lb"; depends=[]; };
-  ashr = derive2 { name="ashr"; version="2.2-47"; sha256="1rqb5j30ylaf1h4l66x4jxyn5inrvhc42d90qd5mgkxsq0ghdlr4"; depends=[etrunct invgamma Matrix mixsqp Rcpp SQUAREM truncnorm]; };
+  ashr = derive2 { name="ashr"; version="2.2-54"; sha256="177xs3apnc6yy6737qqv4z8snf0hkpbghab63hrplbyb9wfssfga"; depends=[etrunct invgamma Matrix mixsqp Rcpp SQUAREM truncnorm]; };
   asht = derive2 { name="asht"; version="0.9.7"; sha256="15sd6hvg41z1bvv1003p0hmy4350if67wqp124nfz0m6ix0xb7lw"; depends=[bpcp coin exact2x2 exactci perm ssanv]; };
   askpass = derive2 { name="askpass"; version="1.1"; sha256="07q0ik8jzk44vpwh48rr3fnpd7dzsdhjjsl4l850rffv3dyq4h6v"; depends=[sys]; };
   aslib = derive2 { name="aslib"; version="0.1.1"; sha256="0vzrxxj298skgv6gn9cbhr75ywmh5amsk9m02zncl20jcydf9j91"; depends=[BatchExperiments BatchJobs BBmisc checkmate corrplot ggplot2 llama mlr parallelMap ParamHelpers plyr reshape2 RWeka stringr yaml]; };
@@ -6165,11 +6176,11 @@ in with self; {
   assertr = derive2 { name="assertr"; version="2.8"; sha256="00764vv86r3bn4r85in4w637harffyw605fgq0dj6mrbrwcfb650"; depends=[dplyr MASS rlang]; };
   assertthat = derive2 { name="assertthat"; version="0.2.1"; sha256="17wy5bdfzg73sg2clisg1k3zyn1adkj59x56m5nwia2k8z67zkw5"; depends=[]; };
   assignPOP = derive2 { name="assignPOP"; version="1.2.4"; sha256="1zzapgzf09l39bckwykzr8im2wxmndpmzykll2wi7njwlklpjry3"; depends=[caret doParallel e1071 foreach ggplot2 MASS randomForest reshape2 stringr tree]; };
-  assignR = derive2 { name="assignR"; version="2.1.1"; sha256="10494lg0ph5c4ks2z2ndajx3fiwv2my4i32jg89l0z0dxgfaz7lf"; depends=[maptools mvnfast raster rgdal rlang sp]; };
+  assignR = derive2 { name="assignR"; version="2.2.0"; sha256="0bz45d9j6d4xq8bdqzv5g063ail38k1j2xmpd88nzj448ch3kcig"; depends=[geosphere maptools mvnfast raster rgdal rlang sp]; };
   assist = derive2 { name="assist"; version="3.1.7"; sha256="0avxaa3v4gvb5d7fg761f9l5nr8nyqdq6sq408zpyaki6s6q3acf"; depends=[lattice nlme]; };
   assocInd = derive2 { name="assocInd"; version="1.0.1"; sha256="16yzgvlqbapjhvzm5nw8vfrhh8mp9llnhck4bpgmszyrh93z1ha5"; depends=[]; };
   assortnet = derive2 { name="assortnet"; version="0.12"; sha256="1vyzrb8vsi9pcdn6jd83k77bg0q2a3dwdvlnmxnshqiif2pakb8m"; depends=[]; };
-  asteRisk = derive2 { name="asteRisk"; version="1.3.0"; sha256="0im8rz4vgrlxc4jgjagwwxvx8wwwzwb6in78h4p5yvwjqm0vsfl8"; depends=[deSolve nanotime onion Rcpp RcppParallel]; };
+  asteRisk = derive2 { name="asteRisk"; version="1.4.0"; sha256="0sph8jjayrgq0gl6n8hlhxpi4xv5bk2h2g47xx1jajihgkh88wgm"; depends=[deSolve nanotime onion Rcpp RcppParallel]; };
   aster = derive2 { name="aster"; version="1.1-2"; sha256="0vf1ffkn4a3bz2lgz1gn2hjgp8c2v9ch05d5r1gh2q77zijvry1m"; depends=[trust]; };
   aster2 = derive2 { name="aster2"; version="0.3"; sha256="17d200sg0vn1fj6lb480dhszm70q6ipjldilb3x0jp72hiczakk9"; depends=[Matrix]; };
   astroFns = derive2 { name="astroFns"; version="4.1-0"; sha256="0g5q0y067xf1ah91b4lg8mr9imj0d6lgig7gbj3b69fn335k363g"; depends=[]; };
@@ -6186,12 +6197,12 @@ in with self; {
   asymptor = derive2 { name="asymptor"; version="1.0"; sha256="0fdib7wnfdb0vjflds68638wafw79i0wvwa5ak8q3f7ywawzngzx"; depends=[]; };
   asypow = derive2 { name="asypow"; version="2015.6.25"; sha256="0il38djkmw5ka7czpalmhq6yycx7flpdpgbd7p5nx52rsjdv49mj"; depends=[]; };
   ata = derive2 { name="ata"; version="1.1.1"; sha256="08wcnfkbcq2al5ivdjkrjr8alaz0026992ra3ihyw6sd74mcracx"; depends=[lpSolve]; };
-  atable = derive2 { name="atable"; version="0.1.10"; sha256="1jbpqsyhkkpiwnhwy9alh5s8q68amh0mylyzlc5pilpw0mnq9cjd"; depends=[DescTools doBy effsize Hmisc plyr reshape2 settings]; };
+  atable = derive2 { name="atable"; version="0.1.11"; sha256="0xna86l26f00n22hm3fn7kiqij87k6k7b5pa8jmld1bhw6j3cl4w"; depends=[DescTools doBy effsize Hmisc plyr reshape2 settings]; };
   atakrig = derive2 { name="atakrig"; version="0.9.8"; sha256="14li2lpb2bksrfdhvnhs4k22jw4r4x9rm6lq9kn9hzif7gsibwr9"; depends=[doSNOW FNN foreach gstat MASS Rcpp rgeos snow sp]; };
   atlas = derive2 { name="atlas"; version="1.0.0"; sha256="02wm22j40llmdi6z3rzgbc5fpkzmjfq0xar33bypvj1dx1zxygnd"; depends=[httr testthat]; };
   atmcmc = derive2 { name="atmcmc"; version="1.0"; sha256="05k69b5wlysz3kh0yiqvshgvr0nyz34zkvn6bjs30cwz7s9j21pn"; depends=[]; };
   atmopt = derive2 { name="atmopt"; version="0.1.0"; sha256="1h79ngq1236gz4w29fs3nj46a3m1x8a28z3xnhc6wn3a46cf8zzi"; depends=[DoE_base gtools hierNet]; };
-  atom4R = derive2 { name="atom4R"; version="0.1-1"; sha256="131v4shky6ppnl5i7s0wmlwjaaq1h9cj238f80pg3xd6wiw5ybkj"; depends=[httr jsonlite keyring R6 rdflib XML zip]; };
+  atom4R = derive2 { name="atom4R"; version="0.1-2"; sha256="19wv79gy2n0fxi1djlhcswggr43na42qqhpw60q5s1zaiqcfc3k9"; depends=[httr jsonlite keyring R6 rdflib XML zip]; };
   atsd = derive2 { name="atsd"; version="1.2.0"; sha256="0jan8r5f2r3l2xpdf9rrv4smkr2l645rfdgdfjb1xa54jd3pqvqs"; depends=[httr RCurl]; };
   attachment = derive2 { name="attachment"; version="0.2.4"; sha256="1nvq94l544rgddx5jcvwhap7qz8h292pphvb97ip6jljgjc1dlqw"; depends=[desc glue knitr magrittr rmarkdown roxygen2 stringr]; };
   attempt = derive2 { name="attempt"; version="0.3.1"; sha256="1ylgg7jcp8wqmxgf1mydnvh26k0mr8jyjla4hw06730r40yrs58m"; depends=[rlang]; };
@@ -6207,9 +6218,11 @@ in with self; {
   audit = derive2 { name="audit"; version="0.1-2"; sha256="0c8b94a5am196sbvmjxya7cg4aq6fcxr8c958fxx3jmy9r4hn6s2"; depends=[]; };
   auditor = derive2 { name="auditor"; version="1.3.3"; sha256="1y6qpbc78yv2w1y9p0mczv69s661i9n2y0x09c5p3hdka7km662w"; depends=[DALEX ggplot2 ggrepel gridExtra hnp scales]; };
   audrex = derive2 { name="audrex"; version="1.0.1"; sha256="06r9gn3rdqxln197iyajdsx8ikq0m2hik171403y3dxxr5bf8jsf"; depends=[abind fANCOVA ggplot2 imputeTS lubridate modeest moments narray purrr rBayesianOptimization readr scales stringr tictoc xgboost]; };
+  audubon = derive2 { name="audubon"; version="0.1.1"; sha256="14p07cxswgsdsmblwid9m5nmr0qr00cficg50qlb53fal8n1fajq"; depends=[dplyr magrittr memoise purrr readr rlang stringi V8]; };
   augSIMEX = derive2 { name="augSIMEX"; version="3.7.4"; sha256="0620yxqi160ar91shl5macn890zpc60c9nqy4w8i6m7sskv6gl3z"; depends=[Formula MASS nleqslv Rcpp]; };
   augmentedRCBD = derive2 { name="augmentedRCBD"; version="0.1.5"; sha256="1bfb1jqakghf1nb3zwzf69cywwxwr1whzvyig8g3qa8ciq5f1h3i"; depends=[dplyr emmeans flextable ggplot2 mathjaxr moments multcomp multcompView officer Rdpack reshape2 stringi]; };
   auk = derive2 { name="auk"; version="0.5.1"; sha256="0mf2rwf7sihmk6mla87gznh0s1rqxpijcjjv035iq3id6c81h03l"; depends=[assertthat countrycode dplyr httr magrittr readr rlang stringi stringr tidyr]; };
+  aum = derive2 { name="aum"; version="2022.2.7"; sha256="0a2nh1fnn7z4c592gj280w8yb54wi8msfdmg8gzbz52m1x3pxbi0"; depends=[data_table Rcpp]; };
   aurelius = derive2 { name="aurelius"; version="0.8.4"; sha256="00bpf9sggvnajpmg3zsdgfjinkb6wbrcf1ris7qfhh1rp5rz4m4m"; depends=[gbm glmnet jsonlite]; };
   aurin = derive2 { name="aurin"; version="0.6.0"; sha256="0nh6jy0pkwfxzcxz1xcdcnqd9pkrddmdmfb2pjalfmp04z66h6dv"; depends=[checkmate cli glue httr jsonlite magrittr ows4R R6 sf stringr]; };
   ausplotsR = derive2 { name="ausplotsR"; version="1.2.7"; sha256="0vlldbdbgplk6a9n2xkac8i5nxf0y2p4zbrw5q9a3qc71zfl33yj"; depends=[betapart curl ggplot2 gtools httr jose jsonlite mapdata maps maptools plyr R_utils sp vegan]; };
@@ -6221,6 +6234,7 @@ in with self; {
   autoFRK = derive2 { name="autoFRK"; version="1.4.3"; sha256="1k3h2gsck06dnvrifg9rhxi6b3fwfjrkvg0q2wzb9kdnnzgiwcln"; depends=[fields filehash filehashSQLite filematrix FNN LatticeKrig MASS mgcv Rcpp RcppEigen RcppParallel RSpectra spam]; };
   autoMFA = derive2 { name="autoMFA"; version="1.0.0"; sha256="1sbcl38cq7y7hln1qffk5s71xgg9hs7dlwyvynqf96z2z2421pw4"; depends=[abind expm MASS Matrix pracma Rdpack Rfast usethis]; };
   autoMrP = derive2 { name="autoMrP"; version="1.0.1"; sha256="1ipqzjd9knpyz2ajxw38z8sbg4w4cgyg6627xlyx8i14wbdgrxmy"; depends=[doParallel doRNG dplyr e1071 EBMAforecast forcats foreach gbm ggplot2 glmmLasso knitr lme4 purrr R_rsp rlang tibble tidyr]; };
+  autoRasch = derive2 { name="autoRasch"; version="0.1.5"; sha256="16xwh8v6p3ympn0xljb7d77n04g31gcppv8v39p96yfc9vaxkhsw"; depends=[doParallel foreach lavaan Rcpp RcppArmadillo]; };
   autoReg = derive2 { name="autoReg"; version="0.1.0"; sha256="1c5b02jxfsjk9byyj5z5491lv7dbzx2hp3kwbjcy0wvpz7wg1gnc"; depends=[boot broom cmprsk dplyr flextable ggplot2 mice moonBook nortest officer patchwork purrr rlang stringr survival tidyr tidyselect]; };
   autoTS = derive2 { name="autoTS"; version="0.9.11"; sha256="1mwpazynp5hdc2ccnhvddkajfcd4qam23pvjl9accq1rnxzxkiyv"; depends=[dplyr forecast ggplot2 lubridate magrittr plotly prophet RcppRoll rlang shiny shinycssloaders tidyr]; };
   autocart = derive2 { name="autocart"; version="1.4.5"; sha256="1zgcmrm4dkdnr130hwwka2nwdczgvc3jc9hxrb6nfs8ijb24gl36"; depends=[fields mgcv Rcpp RcppArmadillo RcppParallel]; };
@@ -6235,10 +6249,10 @@ in with self; {
   automl = derive2 { name="automl"; version="1.3.2"; sha256="1nrg8q3y6rv69nmnsylg8rps4b4prx46j5a8ljlr24yc34504ck3"; depends=[]; };
   autoplotly = derive2 { name="autoplotly"; version="0.1.4"; sha256="1z577jvadgiz028z7x0786d3qhlkrvv9i34xmllizvg94kxv3bl1"; depends=[ggfortify ggplot2 plotly]; };
   autoshiny = derive2 { name="autoshiny"; version="0.0.2"; sha256="0s06ynnirgsh19x8qq4020piirkhvjqpvz372syygvlal062y6cn"; depends=[shiny]; };
-  autostats = derive2 { name="autostats"; version="0.2.0"; sha256="0w2ca0lxbcjgvvd9zz7ym7bnfdp94kjk72igq7v93l6hq2s681jr"; depends=[agtboost BBmisc broom broom_mixed Ckmeans_1d_dp dials dplyr flextable forcats framecleaner ggeasy ggplot2 ggstance ggthemes glmnet gtools hardhat janitor jtools lubridate magrittr Matrix nnet parsnip party patchwork presenter purrr readr recipes rlang rlist rsample stringr tibble tidyr tidyselect tune workflows xgboost yardstick]; };
+  autostats = derive2 { name="autostats"; version="0.3.0"; sha256="11girpxlqfvxwp7356yjin8gyxw5mj64yr1gpj35ljc7ycx6j1kz"; depends=[agtboost BBmisc broom broom_mixed Ckmeans_1d_dp data_table dials dplyr flextable FOCI forcats framecleaner ggeasy ggplot2 ggstance ggthemes glmnet gtools hardhat janitor jtools lubridate magrittr Matrix nnet parsnip party patchwork presenter purrr readr recipes rlang rlist rsample stringr tibble tidyr tidyselect tune workflows xgboost XICOR yardstick]; };
   autostsm = derive2 { name="autostsm"; version="3.0.0"; sha256="1pv8pfj0wmfrxng2a3vkq0asa1dld4ibz5px4hkk0pfkkqvwg8m3"; depends=[data_table doSNOW foreach forecast ggplot2 ggrepel gridExtra lmtest lubridate maxLik progress Rcpp RcppArmadillo sandwich strucchange]; };
   autothresholdr = derive2 { name="autothresholdr"; version="1.4.0"; sha256="1n8kfl7zk7smwmkj1rlp4j4i0jnwi2f0aw58jhlf7ivahrq0rmnk"; depends=[checkmate ijtiff magrittr purrr Rcpp rlang strex stringr]; };
-  av = derive2 { name="av"; version="0.6.0"; sha256="0g6815y24h4la714a5bkj7nj4n39jycfynkli6y3jlijql96j2il"; depends=[]; };
+  av = derive2 { name="av"; version="0.7.0"; sha256="004crdrsgh2dak64zmr5w0pj94vpalgmb76g1cb452djavbp7rxl"; depends=[]; };
   available = derive2 { name="available"; version="1.0.5"; sha256="1mlyzmfskam3d0mnr5hncxi2jhc5lhny1ynvxvbnx15vj8f6r7y5"; depends=[cli clisymbols crayon desc glue jsonlite memoise SnowballC stringdist tibble tidytext udapi yesno]; };
   avar = derive2 { name="avar"; version="0.1.1"; sha256="1i0bk3y0ca58ihwn4di8rpkp5vs2j5b80rcvaf72n9h2hp8i2ncz"; depends=[Rcpp RcppArmadillo simts]; };
   averisk = derive2 { name="averisk"; version="1.0.3"; sha256="02j27d4jxgy2bk5sgxp1xdfyqr321civs99qj0g8cp34gwqk0j3m"; depends=[MASS]; };
@@ -6266,9 +6280,9 @@ in with self; {
   bRacatus = derive2 { name="bRacatus"; version="1.0.7"; sha256="1xzrwmd6wj5c1nqrg7wry4zjq2np010dzilg631vgf7f7vg9ch94"; depends=[data_table geojsonio jsonlite maptools plotfunctions raster rgbif rgdal rgeos rworldmap sp]; };
   bReeze = derive2 { name="bReeze"; version="0.4-3"; sha256="17nc6qvw9l6sq8knd1mk193md2y3z1jlcjymqzl389yxj8s0i2il"; depends=[lubridate]; };
   bSims = derive2 { name="bSims"; version="0.3-0"; sha256="055hqa5w4gaqz9mms9yj85wg0pgl6xa568nbjxm4qc75rsy91qg5"; depends=[deldir intrval MASS mefa4 pbapply]; };
-  bWGR = derive2 { name="bWGR"; version="1.6.6"; sha256="1m5spafvl5pn0s60vaf8wz7iaibsa7laq7kp8y9xj20pp3f76hvr"; depends=[Rcpp]; };
+  bWGR = derive2 { name="bWGR"; version="2.0"; sha256="16yhy6gnjkgrlj41mszfadzvb83c8l4wa5gvlvzlm7cdrdrp33p0"; depends=[Matrix Rcpp RcppEigen]; };
   baRcodeR = derive2 { name="baRcodeR"; version="0.1.5"; sha256="1fdywv7mvxx3q8pildsfllmw814f2p71xcwvfmplngv2vgrpzz9w"; depends=[DT miniUI qrcode rstudioapi shiny]; };
-  baRulho = derive2 { name="baRulho"; version="1.0.5"; sha256="0419nfhk5846ysc5p3dnlzfc1q5nsksgpwbjcif23fk4w13c7b9x"; depends=[fftw pbapply seewave tuneR warbleR]; };
+  baRulho = derive2 { name="baRulho"; version="1.0.6"; sha256="17g3xs0lxdpbbi52x27r00vfdgxdhjblyy939scm3c5z01fhxxnb"; depends=[fftw pbapply seewave tuneR warbleR]; };
   babar = derive2 { name="babar"; version="1.0"; sha256="13j5klrcnd4dwrgdbxlvwcj56l9mzi4j9ga6jj5i04pgdc6vsfx5"; depends=[]; };
   babel = derive2 { name="babel"; version="0.3-0"; sha256="1iwvx69051yhlxbcl6bypvc3mcih0q8bf3i29r3i79356hp12xqa"; depends=[edgeR]; };
   babelgene = derive2 { name="babelgene"; version="21.4"; sha256="1gk5pm3b3shr1id66a11ywc1b823gbj8yckg24szzfhj8g4ixyf0"; depends=[dplyr rlang]; };
@@ -6284,13 +6298,12 @@ in with self; {
   backtest = derive2 { name="backtest"; version="0.3-4"; sha256="1s0mf247dz2vvyf4m3sp9xiqhv7xcs4rphyg9gdcy73060sah2ad"; depends=[lattice]; };
   bacondecomp = derive2 { name="bacondecomp"; version="0.1.1"; sha256="1sd6pbhmx8vxz5c2cvvadbjy7p15y91gzs3n0ish7h5br1vq8fpm"; depends=[]; };
   bacr = derive2 { name="bacr"; version="1.0.1"; sha256="14zr1v4rihx0ra3x0vsb81vsz0g8gzskkdxkg7nhiz835hp2fiy8"; depends=[MCMCpack]; };
-  badgecreatr = derive2 { name="badgecreatr"; version="0.2.0"; sha256="0mdixklaxky5gs8zm99ky280vxxlbq1mxnaarq6x0d1cb71bzv4l"; depends=[git2r]; };
   badger = derive2 { name="badger"; version="0.1.0"; sha256="09g8183dz58546mcql7fs2px71ycpi2jfw69zca9d96c9py98ryn"; depends=[desc dlstats rvcheck usethis]; };
   bagged_outliertrees = derive2 { name="bagged.outliertrees"; version="1.0.0"; sha256="0fcd54j6vci2yvlb609dck4pwbn54irkdk472cjc965rcw6dz9z7"; depends=[data_table doSNOW dplyr foreach outliertree rlist]; };
   baggedcv = derive2 { name="baggedcv"; version="1.0"; sha256="1rqs4sm6g1anck5s2dxlm1vcmylpphcbs2dpvf1sjki5lrzdq9z4"; depends=[doParallel foreach kedd mclust]; };
   baggingbwsel = derive2 { name="baggingbwsel"; version="1.0"; sha256="0khvkxml4nwkahgl5ijdv0bjgwabmznzq99p71iw26ck808hafkl"; depends=[doParallel foreach kedd mclust misc3d nor1mix Rcpp rgl rpanel sm tkrplot]; };
   baggr = derive2 { name="baggr"; version="0.6.18"; sha256="0qmsg3w6blpj9nlk0blzlm7l04z4r33gw17r6n52l2wf8x0giirx"; depends=[bayesplot BH crayon forestplot ggplot2 gridExtra Rcpp RcppEigen RcppParallel rstan rstantools StanHeaders testthat]; };
-  baguette = derive2 { name="baguette"; version="0.1.1"; sha256="0srvvnyhi22r3l8j996zpq8mm140imdrijc0xhb8j9qgkqaia1b7"; depends=[butcher C50 dials dplyr earth furrr generics hardhat magrittr parsnip purrr rlang rpart rsample tibble tidyr withr]; };
+  baguette = derive2 { name="baguette"; version="0.2.0"; sha256="0ik19w7cgbzp4n4f9v1s7sf668m45sqfw4m4ny7mbfjdq53iag28"; depends=[butcher C50 dials dplyr earth furrr generics hardhat magrittr parsnip purrr rlang rpart rsample tibble tidyr withr]; };
   bahc = derive2 { name="bahc"; version="0.3.0"; sha256="0yz0v33fhm38ivhr7bvajk9v7wdmhg9qg7ac8r2qr00rns82m6y3"; depends=[fastcluster matrixStats]; };
   bain = derive2 { name="bain"; version="0.2.8"; sha256="101rlxf1m6nrmzwxxv2w0m2a9s26l39a5nfjnad8gza5rvj7q076"; depends=[lavaan]; };
   baker = derive2 { name="baker"; version="1.0.0"; sha256="166j6b2j3r0apsnvcnfycxhf1kv4nblscmnjdl2xsw5wwrbx677f"; depends=[abind binom coda ggplot2 ggpubr gridExtra lubridate mgcv mvbutils R2jags reshape2 rjags robCompositions shinydashboard shinyFiles]; };
@@ -6304,7 +6317,6 @@ in with self; {
   bannerCommenter = derive2 { name="bannerCommenter"; version="1.0.0"; sha256="1i0b3v4n0xylcbrg9i3a28z037m27vjfg61xz2hl99wavn0bsl1j"; depends=[]; };
   banter = derive2 { name="banter"; version="0.9.4"; sha256="076jjgfw193bzmymqgsgg4fppd2zvwskjw9b3zxzybnydyz7shfi"; depends=[dplyr ggplot2 gridExtra magrittr randomForest rfPermute rlang swfscMisc tibble tidyr]; };
   banxicoR = derive2 { name="banxicoR"; version="0.9.0"; sha256="0vchm2hnqm45fhn8k38rcam4vkazmifcl40390s2r04bgvqr0pnl"; depends=[rvest stringr xml2]; };
-  bapred = derive2 { name="bapred"; version="1.0"; sha256="08kvc4cc984jv08ikwbja8zxidrcdiwi5w88hlqakbm8yc6hzssa"; depends=[affy affyPLM Biobase FNN fuzzyRankTests glmnet lme4 MASS mnormt sva]; };
   barcode = derive2 { name="barcode"; version="1.1"; sha256="14zh714cwgq80zspvhw88cs5b82gvz4b6yfbshj9b7x0y2961nxd"; depends=[lattice]; };
   bardr = derive2 { name="bardr"; version="0.0.9"; sha256="02499b3j10j7qq3whz9qijfp3amp0s1ji8qk76c53dsnkj8f9hvs"; depends=[]; };
   barplot3d = derive2 { name="barplot3d"; version="1.0.1"; sha256="182kpiknv3id1bsgcc6b3ahbxmm8x3lxcpf1r6rckpr3s0whfx3g"; depends=[rgl]; };
@@ -6376,9 +6388,8 @@ in with self; {
   bayesloglin = derive2 { name="bayesloglin"; version="1.0.1"; sha256="0j2ziahf6mwsz2gvb1azvdzlmszlpqgr5zqcqa68pxgq947sa2cs"; depends=[igraph]; };
   bayeslongitudinal = derive2 { name="bayeslongitudinal"; version="0.1.0"; sha256="0g45ikpnbry1albb3asrzab5z3sy98yf74c64qn02d65xgafifwg"; depends=[LearnBayes MASS mvtnorm]; };
   bayesm = derive2 { name="bayesm"; version="3.1-4"; sha256="154glks7rsjkza0sfi1kj7wj727py9sl1ba6sswflwmwc9n226q6"; depends=[Rcpp RcppArmadillo]; };
-  bayesmeta = derive2 { name="bayesmeta"; version="2.7"; sha256="1zl2y916jgl40mqzphgjwsqr4mbxvvggp0irirbb9nyzj5frqpjg"; depends=[forestplot metafor numDeriv]; };
+  bayesmeta = derive2 { name="bayesmeta"; version="3.0"; sha256="035kjg86sfd3j8g9421id6z208rfmpk63qp0fpssv44zb96wy4wv"; depends=[forestplot metafor mvtnorm numDeriv]; };
   bayesmix = derive2 { name="bayesmix"; version="0.7-5"; sha256="0s1a221vwia92pinja2r5b5abm4dhcrs81m4frqnf0522qh0y75f"; depends=[coda rjags]; };
-  bayesmodels = derive2 { name="bayesmodels"; version="0.1.1"; sha256="1m9428fzirpfzypd2zdcqhjv2cm05s3qmlxj4ymz6i1dg32svqzr"; depends=[BASS bayesforecast brms bsts cli crayon dials dplyr magrittr modeltime parsnip purrr rlang Rlgt rstan rstudioapi tibble timetk workflows]; };
   bayesmove = derive2 { name="bayesmove"; version="0.2.1"; sha256="1l6i8qh7l53x0133gjc5jvri4vnnfviq9y3mcr1kfa5j84gfnmsf"; depends=[dplyr dygraphs furrr future ggplot2 leaflet lubridate magrittr MCMCpack progress progressr purrr Rcpp RcppArmadillo rlang sf shiny tictoc tidyr]; };
   bayesnec = derive2 { name="bayesnec"; version="2.0.2"; sha256="1ps00byg0s0wf86w9nq6yhn4ak1ca6gmkafz3bmycr4alxhgjdqr"; depends=[brms dplyr evaluate extraDistr formula_tools ggplot2 loo purrr rlang tidyr tidyselect]; };
   bayesplay = derive2 { name="bayesplay"; version="0.9.2"; sha256="06i16a36b26p0r635bl37kvk7k083p970154yhkv80p7qc84n4sv"; depends=[gginnards]; };
@@ -6393,7 +6404,7 @@ in with self; {
   bayfoxr = derive2 { name="bayfoxr"; version="0.0.1"; sha256="1295296mbjpmd0bg1pfxvyp0az3sry6gsq9ir3l8x64w5a4qrzd5"; depends=[]; };
   baymedr = derive2 { name="baymedr"; version="0.1.1"; sha256="0lsp9g9xjwwf2znh4vld41pgdn55ncvmdsyg84ifhdqzjrsgwc6f"; depends=[rlang stringr]; };
   baystability = derive2 { name="baystability"; version="0.1.0"; sha256="1zv4bf5a4p21w2qpr6lcsgsxb0xv15v8p33031rsypmnbs9i80dp"; depends=[dplyr ggfortify ggplot2 lme4 magrittr MASS matrixStats reshape2 rlang rstiefel scales tibble tidyr tidyverse]; };
-  baytrends = derive2 { name="baytrends"; version="2.0.5"; sha256="02cxb1iw6h0zj6f3qh52rndv50lvzkjbxnc7fqnkg022gximc201"; depends=[dataRetrieval digest lubridate memoise mgcv plyr survival]; };
+  baytrends = derive2 { name="baytrends"; version="2.0.7"; sha256="1nzwj2k07w4yvgs1vf0mbsqyvyppx2mj6hqkcvb9npalsc8g9dm4"; depends=[dataRetrieval digest dplyr fitdistrplus knitr lubridate memoise mgcv pander plyr readxl sessioninfo survival]; };
   bazar = derive2 { name="bazar"; version="1.0.11"; sha256="1q2w5pvlb51lzbb5k719sf1lrhffandkfqlcvi2prw4dmq7qjxv9"; depends=[kimisc]; };
   bbdetection = derive2 { name="bbdetection"; version="1.0"; sha256="1j6xcbfsrg3wcr1rpddj7ia33szn5bs0wk4mzq42d761clsr5qq8"; depends=[ggplot2 Rcpp xtable zoo]; };
   bbefkr = derive2 { name="bbefkr"; version="4.2"; sha256="1wjx652w3p41sq71a2zdzmb7frjxm6xvcgrc2ark2spwb0lbjjw6"; depends=[]; };
@@ -6401,8 +6412,8 @@ in with self; {
   bbl = derive2 { name="bbl"; version="1.0.0"; sha256="135i619lliy93dvgb7ymrcdh20y2b1j7s0y6awzcs3w0hbyd8j5z"; depends=[pROC RColorBrewer Rcpp]; };
   bbmle = derive2 { name="bbmle"; version="1.0.24"; sha256="1bck8rmink4wsk8pcbnj4d60svxymp29pxbzwj8p9gzsg42c1v81"; depends=[bdsmatrix lattice MASS Matrix mvtnorm numDeriv]; };
   bbo = derive2 { name="bbo"; version="0.2"; sha256="19xrbla3bb3csg3gjjrpkgyr379zfwyh293bcrcd6j8rnm6g4i01"; depends=[]; };
-  bbotk = derive2 { name="bbotk"; version="0.5.0"; sha256="15y1w3mi1g91p73786ql1mmqld011757vax17i1vq7zw1s51yzxz"; depends=[checkmate data_table lgr mlr3misc paradox R6]; };
-  bbreg = derive2 { name="bbreg"; version="2.0.1"; sha256="0wixhqfw8yp37874zwqb4vwi9xrzlkb761lbw7h70bds0dy6jcg5"; depends=[expint Formula pbapply statmod]; };
+  bbotk = derive2 { name="bbotk"; version="0.5.1"; sha256="1171vcs96j8f4n0rjsbbiscs4nxgd4209lr9biy99lvhjvjdsfsm"; depends=[checkmate data_table lgr mlr3misc paradox R6]; };
+  bbreg = derive2 { name="bbreg"; version="2.0.2"; sha256="0mi2834v4cvrhvpnzkb4lgkqq993c3c1yzsxdnmny4p6yxw1q547"; depends=[expint Formula pbapply statmod]; };
   bbricks = derive2 { name="bbricks"; version="0.1.4"; sha256="1hv4hvnns9vgl6c3n7kg3g9mfcp26ksps29hdl5nwi28cgkx80w2"; depends=[]; };
   bbsBayes = derive2 { name="bbsBayes"; version="2.3.8.2020"; sha256="043wj15w7vb5xzwyrzfzf19n3iccly9mdw75lw176i3wfdnprhfv"; depends=[dplyr geofacet ggplot2 ggrepel jagsUI latticeExtra progress rappdirs rgdal sbtools sf stringr]; };
   bbw = derive2 { name="bbw"; version="0.1.3"; sha256="1z3an561qh0rfi3jhh1ghsdbg8aimqmf4hpqri2jz39in3p0gwg4"; depends=[car]; };
@@ -6421,12 +6432,13 @@ in with self; {
   bcp = derive2 { name="bcp"; version="4.0.3"; sha256="0vhs89lb2wpanqsljclpvwbjmgdsc3jicws8bzqiqh8mbs3nzpxy"; depends=[Rcpp RcppArmadillo]; };
   bcpa = derive2 { name="bcpa"; version="1.1"; sha256="0rwbd39szp0ar9nli2rswhjiwil31zgl7lnwm9phd0qjv8q0ppar"; depends=[plyr Rcpp]; };
   bcpmeta = derive2 { name="bcpmeta"; version="1.0"; sha256="02fw1qz9cvr7pvmcng7qg7p04wxxpmvb2s8p78f52w4bf694iqhl"; depends=[mvtnorm]; };
-  bcputility = derive2 { name="bcputility"; version="0.2.0"; sha256="0aybhgi6pnl9xzx0gvinsj4g2gvnpxssar2v7imdz5yqsdvcw6yr"; depends=[data_table DBI odbc sf]; };
+  bcputility = derive2 { name="bcputility"; version="0.3.0"; sha256="19yyc15d11k2az7ah4ql0m6w9iwc3h370r0ak2nmzldsjsajm8fd"; depends=[data_table DBI odbc sf]; };
   bcrm = derive2 { name="bcrm"; version="0.5.4"; sha256="1j8bfa3x7h77vs41k4nqbqlb961szp1fkhc181wzb3zpbnzmjhhy"; depends=[ggplot2 knitr mvtnorm rlang]; };
   bcrypt = derive2 { name="bcrypt"; version="1.1"; sha256="1wwdin8x09y8n8zrwj1ylh5ikcz0v0la4wmrsvbdr61cg336wzx4"; depends=[openssl]; };
   bcv = derive2 { name="bcv"; version="1.0.1.4"; sha256="1iln1blr2sdjjv66g73jkj26h1kzfs2sfvw5k7b76mgc0703k45s"; depends=[]; };
   bdDwC = derive2 { name="bdDwC"; version="0.1.15"; sha256="0yraq8a0wgz12rzi2dx0gdcz5rx99qd2pzw972wjqyq3rs41pwx0"; depends=[shiny shinyBS shinydashboard shinyFiles shinyjs]; };
   bda = derive2 { name="bda"; version="15.2.5"; sha256="19m7xrsckw0lncmi0qsmy194f2c9lmi1vac37h9jfvkb3i30fx20"; depends=[boot]; };
+  bdc = derive2 { name="bdc"; version="1.0.0"; sha256="1hpdkdhhfs3c0i7xv27jmhfq0yrj4mn64c725m468v9kxnqpqih9"; depends=[CoordinateCleaner dplyr DT foreach fs ggplot2 here magrittr purrr qs readr rgnparser rnaturalearth sf stringdist stringi stringr taxadb tibble tidyselect]; };
   bdchecks = derive2 { name="bdchecks"; version="0.1.7"; sha256="1pzsvn1m1f9bdmhxmh57pvn9jm4z41rkvv6h60hq2lfgkapnjy7q"; depends=[bdDwC data_table DT finch knitr rgbif shiny shinyBS shinydashboard shinyjs spocc yaml]; };
   bdclean = derive2 { name="bdclean"; version="0.1.15"; sha256="14cy8yaqd6bg2zyh2wvndydk9sigaydavxl4cfypqz5kqdhj82z9"; depends=[bdchecks bdDwC data_table DT finch knitr leaflet rgbif rmarkdown shiny shinydashboard shinyjs spocc]; };
   bde = derive2 { name="bde"; version="1.0.1"; sha256="1f25gmjfl58x4pns89abfk85yq5aad3bgq9yqpv505g5gxk62d3v"; depends=[ggplot2 shiny]; };
@@ -6444,7 +6456,7 @@ in with self; {
   bdynsys = derive2 { name="bdynsys"; version="1.3"; sha256="07gfyp0qwq9y1cnh7lhcz7q0b1s51cjwlbpll50l2cza2dszmf29"; depends=[caTools deSolve Formula Hmisc MASS matrixStats plm pracma]; };
   bea_R = derive2 { name="bea.R"; version="1.0.6"; sha256="15pdbwz7av8862bl144n998qk0w9rqwip9m2brdm5hj7id5xdlif"; depends=[chron colorspace data_table DT ggplot2 googleVis gtable htmltools htmlwidgets httpuv httr jsonlite magrittr munsell plyr Rcpp scales shiny shinydashboard stringi stringr xtable yaml]; };
   beadarrayFilter = derive2 { name="beadarrayFilter"; version="1.1.0"; sha256="044dq5irc00v2f2gjz0vb69w7q7b84lppc55ganabdv4f0dxdblc"; depends=[beadarray RColorBrewer]; };
-  beadplexr = derive2 { name="beadplexr"; version="0.4.0"; sha256="0y5xrs88zm2bp2dlz8bndldispyj6ipgjr7vzrfl26yd2p7qjqd0"; depends=[cluster dplyr drc fpc ggplot2 magrittr mclust purrr raster rlang tibble tidyr yaml]; };
+  beadplexr = derive2 { name="beadplexr"; version="0.4.1"; sha256="1n37qk4p2kgcrb2w4xmgnrgibjv0pdmlzd1y0c1z6njszg2livgz"; depends=[cluster dplyr drc fpc ggplot2 magrittr mclust purrr raster rlang tibble tidyr yaml]; };
   beakr = derive2 { name="beakr"; version="0.4.3"; sha256="0l6475l5d58g5ahz4b3vrdlvl656p2rasni17gz4y1l2rd0pvvh4"; depends=[base64enc httpuv jsonlite magrittr mime R6 stringr webutils]; };
   beam = derive2 { name="beam"; version="2.0.2"; sha256="17c7zww1160jxm0q6vb5h59zipjjfyc3pls30y5v4vyk7kr9rdvx"; depends=[assertthat BH fdrtool igraph knitr Matrix Rcpp RcppArmadillo]; };
   beanplot = derive2 { name="beanplot"; version="1.2"; sha256="0wmkr704fl8kdxkjwmaxw2a2h5dwzfgsgpncnk2p2wd4768jknj9"; depends=[]; };
@@ -6474,7 +6486,7 @@ in with self; {
   benford_analysis = derive2 { name="benford.analysis"; version="0.1.5"; sha256="0y0c7l2r9s7lg9bw4ndcqwisa5l6a2cpydn1vmz88h3yva0l68cg"; depends=[data_table]; };
   bentcableAR = derive2 { name="bentcableAR"; version="0.3.0"; sha256="1gjrlv94av9955jqhicaiqm36rrgmy0avxn9y7wbp2s1sbg7fyg7"; depends=[]; };
   benthos = derive2 { name="benthos"; version="1.3-6"; sha256="1vywnc6k37gpaq7g59v3qa6619svcmnd8ri5zm5l0ila2s3ccb2c"; depends=[dplyr lazyeval readr]; };
-  berryFunctions = derive2 { name="berryFunctions"; version="1.20.1"; sha256="03kccwvkc5nwpyg97dsigmwgk8nwk4j9rpn2z8gc71pcf2b3ixyj"; depends=[abind]; };
+  berryFunctions = derive2 { name="berryFunctions"; version="1.21.0"; sha256="0pzb9lsbls7jcyaj1vg9cqgdqc8gbjab83xlsbdi8w40zgsv85vf"; depends=[abind]; };
   bestNormalize = derive2 { name="bestNormalize"; version="1.8.2"; sha256="0pbyn0ay43jcxssxgvivvfakcwq0y23c2qq6a01656q9lqbv9f1r"; depends=[butcher doParallel doRNG dplyr foreach LambertW nortest purrr recipes tibble]; };
   bestSDP = derive2 { name="bestSDP"; version="0.1.2"; sha256="1rff6jij9wmlpalzilvid8jvj2pczrchx0yrg0vhy00j64zg6jzs"; depends=[dplyr DT ggplot2 readxl rlist shiny shinyBS shinydashboard shinyjs shinythemes shinyWidgets stringr tidyr]; };
   bestglm = derive2 { name="bestglm"; version="0.37.3"; sha256="1zncy958hlwyyxrp6yvq1inq6mpyrbr6cdkf8maijfirr5j8f0ya"; depends=[glmnet grpreg lattice leaps pls]; };
@@ -6482,7 +6494,6 @@ in with self; {
   betaBayes = derive2 { name="betaBayes"; version="1.0"; sha256="15dp5dd0sw613xjkdfqw4iizfdagflp0qwykmng8ml6agwd21s4p"; depends=[betareg coda Rcpp RcppArmadillo]; };
   betaboost = derive2 { name="betaboost"; version="1.0.1"; sha256="1zdyzxl2kp2i5lkiz280wz4av9wqklbn25zmq6n4yb6a579yjfn8"; depends=[gamboostLSS mboost]; };
   betacal = derive2 { name="betacal"; version="0.1.0"; sha256="19wgpgf9yhckl9qx9v24f4yh055wfalphcxwm7lg68px6ap2pxl9"; depends=[]; };
-  betafam = derive2 { name="betafam"; version="1.0"; sha256="1nf5509alqnr5qpva36f1wb7rdnc084p170h91jv89xvzsidqxca"; depends=[]; };
   betafunctions = derive2 { name="betafunctions"; version="1.6.1"; sha256="051d4fryvcdfbsm087mxqlx247jz671wx5rffsffg828azj2mxh9"; depends=[]; };
   betalink = derive2 { name="betalink"; version="2.2.1"; sha256="1wskr8nh1jzcrnc8fn58lscphsvj5z9p1i1pnpfdjn60mdb09rkp"; depends=[igraph plyr stringr]; };
   betapart = derive2 { name="betapart"; version="1.5.4"; sha256="1m2rykch2vhh90s08s9s2kmmrxhp9ik32s5zkdw8991cbw2j7n68"; depends=[ape doSNOW fastmatch foreach geometry itertools picante rcdd snow]; };
@@ -6498,7 +6509,7 @@ in with self; {
   bfp = derive2 { name="bfp"; version="0.0-44"; sha256="1lh25g4ac1f1asz4i0mnizbxqzslz6kjlg1d7mcjnp6qn7pkmg20"; depends=[Rcpp]; };
   bfsMaps = derive2 { name="bfsMaps"; version="0.9.6"; sha256="0k3bwda32j0rfdkzddqf81mpaa1z73cm05xh19psa51vgrbn9gg9"; depends=[DescTools maptools rgdal rgeos rlang sp spdep]; };
   bfsl = derive2 { name="bfsl"; version="0.2.0"; sha256="10z3w1fk4va2ajvpnqp0llgw4a047iaya6xi57if1a7jd7r1jxfh"; depends=[generics]; };
-  bfw = derive2 { name="bfw"; version="0.4.1"; sha256="1dwl6p70wbgippysl7vk8nv6rc78f6h5xl8fna98zv99qf0ib31c"; depends=[coda MASS runjags]; };
+  bfw = derive2 { name="bfw"; version="0.4.2"; sha256="0qgq47axa0r9653d1sjm00fvfx49v28id5sngwyrgkppcngmbg9p"; depends=[circlize coda data_table dplyr ggplot2 magrittr MASS officer plyr png runjags rvg scales]; };
   bgeva = derive2 { name="bgeva"; version="0.3-1"; sha256="0qm4xknyab8hdyn3in2hsvm8s062cnmqqf41b5jvax1mi5hs0z8c"; depends=[magic mgcv trust]; };
   bggAnalytics = derive2 { name="bggAnalytics"; version="0.2.0"; sha256="01wflzgb2156xaial47ms740xaddvx9anyv8vv760dw2r79wfac0"; depends=[checkmate data_table pryr R6 stringr xml2]; };
   bggum = derive2 { name="bggum"; version="1.0.2"; sha256="04vr9z81awavkhk3lbi8yasmi242lrbnq0pzqp38xlrn5xkf8b1w"; depends=[Rcpp RcppDist]; };
@@ -6507,13 +6518,13 @@ in with self; {
   bgsmtr = derive2 { name="bgsmtr"; version="0.7"; sha256="17706qims9637ppwg0vszkcm6kmvhzyrdihkgigpiv5lknhk2q3m"; depends=[CholWishart coda EDISON glmnet inline LaplacesDemon Matrix matrixcalc miscTools mnormt mvtnorm Rcpp sparseMVN statmod]; };
   bgumbel = derive2 { name="bgumbel"; version="0.0.3"; sha256="18k8dy44x49hr4s37hjrq60c3cbw0slc9gjmd8gwcbz4slix2ydk"; depends=[coda MASS MCMCpack quantreg SparseM]; };
   bhm = derive2 { name="bhm"; version="1.17"; sha256="14n78ca8qxdjdk3pxi72fcajcw5ndfncc8a6bc8k2jqj6l0k05qf"; depends=[coda ggplot2 MASS survival]; };
-  bhmbasket = derive2 { name="bhmbasket"; version="0.9.4"; sha256="0zl1npc0mv08xfgy4wakvkgp093hs6s4nkn4xn3j75fv2a8vw1p5"; depends=[doRNG foreach R2jags]; };
+  bhmbasket = derive2 { name="bhmbasket"; version="0.9.5"; sha256="1mcgbvlnrmxlxqcjmc7ij7qn3zqfwsmbx2r2facbqrf043hmiipc"; depends=[doRNG foreach R2jags]; };
   bhpm = derive2 { name="bhpm"; version="1.7"; sha256="0fhk2gmghibf7la864dzm19bm76525gzbj03vw0y0zwbv9shbpcp"; depends=[coda]; };
   biClassify = derive2 { name="biClassify"; version="1.3"; sha256="14z3kmpmlvnkjwpjspajdfx5951cmck4binszzdd7nqbai5f1dwv"; depends=[DAAG expm fields MASS Matrix mvtnorm Rcpp RcppArmadillo]; };
   biasbetareg = derive2 { name="biasbetareg"; version="1.0"; sha256="1562zdin0y5mrp36ih11ir3h9cv49cx1l98chxd89fkj8x3c1fbg"; depends=[betareg]; };
   bib2df = derive2 { name="bib2df"; version="1.1.1"; sha256="0d57883df774qqwpssmly3f1gci32yc5sgwc3x8f2rjih23s1nf6"; depends=[dplyr httr humaniformat stringr]; };
   biblio = derive2 { name="biblio"; version="0.0.6"; sha256="079p0qzmi3sg2ff7ln9lg65lf7r402rldqfpxmfvckhm9s6b29b4"; depends=[stringr yamlme]; };
-  bibliometrix = derive2 { name="bibliometrix"; version="3.1.4"; sha256="14s1mn0j9120m1nh46380qbffy6d4zcx9ii3axbcwmhry0yr2ndw"; depends=[bibliometrixData dimensionsR dplyr DT factoextra FactoMineR forcats ggplot2 ggrepel igraph Matrix openxlsx plotly pubmedR RColorBrewer readr readxl rscopus shiny SnowballC stringdist stringr tidyr tidytext]; };
+  bibliometrix = derive2 { name="bibliometrix"; version="3.2.1"; sha256="1iar9v9isn8c445lj5g6wrznsy9xn7xmyik0km5c98hxjsibwfzx"; depends=[bibliometrixData dimensionsR dplyr DT factoextra FactoMineR forcats ggplot2 ggrepel igraph Matrix openxlsx plotly pubmedR RColorBrewer readr readxl rscopus shiny SnowballC stringdist stringr tidyr tidytext]; };
   bibliometrixData = derive2 { name="bibliometrixData"; version="0.1.0"; sha256="0fdfgqsfiq3iacj4vb3bvx98waqzqxdsn2ds8wq86a30lm055d7n"; depends=[]; };
   biblionetwork = derive2 { name="biblionetwork"; version="0.1.0"; sha256="0nhx9bk7r5l0bvj98clnmwf53ihghf48zai4nj6pcgr2rb69fvjj"; depends=[data_table Rdpack]; };
   bibs = derive2 { name="bibs"; version="1.1.1"; sha256="0slxqhcm4fhdmr2dj1c31zs8sgl39267179nbc59jlpb0z77z2d6"; depends=[GIGrvg]; };
@@ -6524,6 +6535,7 @@ in with self; {
   bidask = derive2 { name="bidask"; version="0.1.1"; sha256="1xykrk993bq1diflwbw4340b2jsn51l962qgwm50rz6hrakjhn6q"; depends=[xts zoo]; };
   bife = derive2 { name="bife"; version="0.7.1"; sha256="0d1hfzji3769nsa5xvlmn7sbn21igwx3aa7vxlcdn1b9ykh7fx76"; depends=[data_table Formula Rcpp RcppArmadillo]; };
   bifurcatingr = derive2 { name="bifurcatingr"; version="1.0.0"; sha256="0msbdr2m4xmvnd00yklk2b8c8qwr11d5gc1x22sqd16fgj9y0qvf"; depends=[igraph MASS]; };
+  bigDM = derive2 { name="bigDM"; version="0.4.1"; sha256="147xqnrmdsg0p359idxwhjqzi68w03mbhzbggzcfrngf5pj5dbyn"; depends=[crayon future future_apply MASS Matrix RColorBrewer Rdpack rlist sf spatialreg spdep]; };
   bigGP = derive2 { name="bigGP"; version="0.1-7"; sha256="0slg87g6lrdlzlcqxmcyxcwzrnmiz6ps0n14p27zcv0n687xifid"; depends=[Rmpi]; };
   bigMap = derive2 { name="bigMap"; version="2.3.1"; sha256="08c9s5sk672j70d6pnva7z52i4s3knkby06lva9al9n8a3jiwsvz"; depends=[BH bigmemory colorspace RColorBrewer Rcpp RcppArmadillo]; };
   bigQF = derive2 { name="bigQF"; version="1.6"; sha256="01qr1cw5v330kkddmgwk4fdlm6msnqcbx1kfzw390yfwq5pr84sy"; depends=[CompQuadForm coxme Matrix svd]; };
@@ -6536,10 +6548,10 @@ in with self; {
   bigchess = derive2 { name="bigchess"; version="1.9.1"; sha256="1vdzx185y1agh1xjf7qcfi2s6l7qzm1kx6b2kr3cbz2in88bws3n"; depends=[processx]; };
   bigdatadist = derive2 { name="bigdatadist"; version="1.1"; sha256="16gkybwcp9sxqb0iic2fhmc4gndr44ayg14wrfcjvjaj4g5r6xs2"; depends=[FNN MASS pdist rrcov]; };
   bigdist = derive2 { name="bigdist"; version="0.1.4"; sha256="1qfnmhyfadmnnagbhdl4jjrb53i1srszf19idp8fy6bczbjq85yi"; depends=[assertthat bigstatsr furrr proxy]; };
+  biglasso = derive2 { name="biglasso"; version="1.5.1"; sha256="18f7xa1fdgp3xjf4ihwhrhg8pk2rg79zgk3fcwgh0nywv6zmsfb8"; depends=[BH bigmemory Matrix ncvreg Rcpp RcppArmadillo]; };
   bigleaf = derive2 { name="bigleaf"; version="0.7.1"; sha256="0hsssz5973vapkmmh9dgzrijyjj1s75iarq3cpfi7ljm4n748qig"; depends=[robustbase solartime]; };
   biglm = derive2 { name="biglm"; version="0.9-2.1"; sha256="0iy9xr2bq42wlizgwlz7w5kh9206yqkw9h2cr6mcsmizgjg3rkvd"; depends=[DBI]; };
   biglmm = derive2 { name="biglmm"; version="0.9-2"; sha256="1zj1h2hszps3w913j2dk4cyj5jsqkkxsm3pcjlc4jnq810j100l6"; depends=[DBI]; };
-  bigmatch = derive2 { name="bigmatch"; version="0.6.2"; sha256="16nmc0n78gzk8x8jhxdilj47gjqqv46sgiivccn5zkv08k1h3jj2"; depends=[liqueueR mvnfast plyr rcbalance]; };
   bigmds = derive2 { name="bigmds"; version="2.0.1"; sha256="05sph85z4c4fiwd429hx9chgd7rsn48irr168yy1dj9daaqm49pl"; depends=[]; };
   bigmemory = derive2 { name="bigmemory"; version="4.5.36"; sha256="03pg8mxdc7q0249visjmc8bc3xmwxsfg3i2n6higicj4cfz7zihq"; depends=[BH bigmemory_sri Rcpp]; };
   bigmemory_sri = derive2 { name="bigmemory.sri"; version="0.1.3"; sha256="0mg14ilwdkd64q2ri9jdwnk7mp55dqim7xfifrs65sdsv1934h2m"; depends=[]; };
@@ -6548,8 +6560,8 @@ in with self; {
   bigreadr = derive2 { name="bigreadr"; version="0.2.4"; sha256="0650mbgbzl2582d02ma3kd8iqdimjajk9gnx70hdjl489q15w80f"; depends=[bigassertr data_table parallelly Rcpp]; };
   bigrquery = derive2 { name="bigrquery"; version="1.4.0"; sha256="02msq61l7vamzpvbhvalh3qil1aa7pr68pwpsivbb6pvz6p4zyns"; depends=[assertthat bit64 curl DBI gargle glue httr jsonlite lifecycle prettyunits progress rapidjsonr Rcpp rlang tibble]; };
   bigsimr = derive2 { name="bigsimr"; version="0.11.2"; sha256="1mygsc865hki6z2bilvbnymk8r4p73ams7iah9qpqi0ap6cqqz8p"; depends=[JuliaCall]; };
-  bigsnpr = derive2 { name="bigsnpr"; version="1.8.1"; sha256="1kwzphhhc3rmczv426sz67hsyfp67mbrhgna406fvw50p7ql76d8"; depends=[bigassertr bigparallelr bigreadr bigsparser bigstatsr bigutilsr data_table foreach ggplot2 magrittr Matrix Rcpp RcppArmadillo rmio vctrs]; };
-  bigsparser = derive2 { name="bigsparser"; version="0.5.0"; sha256="0g6fbhgc51jb2rnccimnsz3y0ivq9ylgk1rnm863l4hyc43balhp"; depends=[bigassertr Rcpp RcppEigen rmio]; };
+  bigsnpr = derive2 { name="bigsnpr"; version="1.9.11"; sha256="01ldd86mvavqidmdmd6hzsbrds34ygndys9s3pf9l8cxjr58r2az"; depends=[bigassertr bigparallelr bigreadr bigsparser bigstatsr bigutilsr data_table foreach ggplot2 magrittr Matrix Rcpp RcppArmadillo rmio vctrs]; };
+  bigsparser = derive2 { name="bigsparser"; version="0.6.0"; sha256="1v4jyxgz2ikjp7l91klrbshg93d644343y2qswsr5cbmnvc4fa3d"; depends=[bigassertr Rcpp RcppEigen rmio]; };
   bigsplines = derive2 { name="bigsplines"; version="1.1-1"; sha256="1kf04p2lglzdi1fdryk27nmj2a2jca2ii7ki8vak93sq21isb179"; depends=[quadprog]; };
   bigstatsr = derive2 { name="bigstatsr"; version="1.5.6"; sha256="1mir9fr2c9wrx0ldmwliv99z2qrpy8fij1bzjy40pzcaim9mfk7d"; depends=[bigassertr bigparallelr cowplot foreach ggplot2 ps Rcpp RcppArmadillo rmio RSpectra tibble]; };
   bigstep = derive2 { name="bigstep"; version="1.0.3"; sha256="0ygp1vljqqn5vzpjxlv9d6fxxv3bi2kfyqfs1gf0jgxwb9417b82"; depends=[bigmemory magrittr matrixStats R_utils RcppEigen speedglm]; };
@@ -6563,7 +6575,7 @@ in with self; {
   billboard = derive2 { name="billboard"; version="0.1.0"; sha256="1z3y8dijhc1381y91n5zq305xzm1gpvs0g4mdpfr7zrblpa8ws39"; depends=[tibble]; };
   billboarder = derive2 { name="billboarder"; version="0.3.1"; sha256="189ngvg84rcwhrivxskmjv3srhadvzr4p1v8pf11axyv2qn01b0x"; depends=[ggplot2 htmltools htmlwidgets jsonlite magrittr rlang scales shiny]; };
   bimetallic = derive2 { name="bimetallic"; version="1.0"; sha256="181qi4dr0zc7x6wziq7jdc1his20jmprfpq3hrfm56fr5n1sj8wl"; depends=[]; };
-  bimets = derive2 { name="bimets"; version="2.0.1"; sha256="08z3zvp8p0g9w2jzcnwd8qamdqfxahv4gl7k2lv5hl15f67mc3hf"; depends=[xts zoo]; };
+  bimets = derive2 { name="bimets"; version="2.0.2"; sha256="0ch83l0g5zalbwxj0682yak99mlfba2i0lnmb44g74dcsism6psg"; depends=[xts zoo]; };
   bimixt = derive2 { name="bimixt"; version="1.0"; sha256="0nhszpzjqy8z3vngl5jdzqxzshnn92wgi0ci5n3n5kzi24xkfrzc"; depends=[pROC]; };
   binGroup = derive2 { name="binGroup"; version="2.2-1"; sha256="0cb7j6b0s3y56mv1967awwri0kv0rf3sr3vwf9gc2zbjggxi9ffp"; depends=[partitions Rdpack]; };
   binGroup2 = derive2 { name="binGroup2"; version="1.1.0"; sha256="1hgz1w0bxbd82rx96s6b63wjczsb1x2l6j526wcnwix36kibv3p3"; depends=[ggplot2 partitions rBeta2009 Rcpp RcppArmadillo Rdpack scales]; };
@@ -6599,9 +6611,9 @@ in with self; {
   bioOED = derive2 { name="bioOED"; version="0.2.1"; sha256="0wx58bngpzlrbbcnx8l1lqhsg51y98wcym1238p87drf64x2mj1n"; depends=[bioinactivation corrplot dplyr FME ggplot2 MEIGOR rlang tidyr tidyselect tidyverse]; };
   bioPN = derive2 { name="bioPN"; version="1.2.0"; sha256="0mvqgsfc7d4h6npgg728chyp5jcsf49xhnq8cgjxfzmdayr1fwr8"; depends=[]; };
   bioRad = derive2 { name="bioRad"; version="0.5.2"; sha256="1kx1vh6p37170f1crylwyzap0c7s5d82rx7qqi95f8d26niqcjn9"; depends=[assertthat curl data_table fields ggmap ggplot2 lubridate lutz maptools raster rgdal rhdf5 sp tidyr viridis viridisLite]; };
-  bioacoustics = derive2 { name="bioacoustics"; version="0.2.7"; sha256="0jsvmx4kx1jx4ljrrax9v3nr3fs2r0kg4n1a0qbwcbfbgykqng87"; depends=[htmltools moments Rcpp stringr tuneR]; };
+  bioacoustics = derive2 { name="bioacoustics"; version="0.2.8"; sha256="08qhxx7xgswjamrgg82pkg1f7w50dx9ln67d50n1p3rvrxab4061"; depends=[htmltools moments Rcpp stringr tuneR]; };
   bioassays = derive2 { name="bioassays"; version="1.0.1"; sha256="1y32wxkv14l7r0f35y4hxxxh3zpw2gd4hsjmkajhmzmnvg5jdw78"; depends=[dplyr ggplot2 magrittr nplr reshape2 rlang]; };
-  bioclim = derive2 { name="bioclim"; version="0.1.0"; sha256="0v1bpcfhpw0hrvc2fl5l4dgjyyhgm4ypaqg2dy9nwb0di6pxd1qn"; depends=[berryFunctions ggplot2 reshape2 rmarkdown terra]; };
+  bioclim = derive2 { name="bioclim"; version="0.2.0"; sha256="101ykpwvjgn62hqvsdh0mhwivv7iv23y57v65c85bk054y7wv6nq"; depends=[berryFunctions ggplot2 reshape2 rmarkdown terra]; };
   biocompute = derive2 { name="biocompute"; version="1.1.0"; sha256="05pqrm1j0d21w70jnsf9zvh55h85i676xwvqzsk51llw52v16d4d"; depends=[cli crayon curl digest httr jsonlite jsonvalidate magrittr rmarkdown stringr uuid yaml]; };
   biodosetools = derive2 { name="biodosetools"; version="3.6.0"; sha256="06i6vg0n98x91j8mkh0mbh4m7a34ghr22x6msrhdig0xh522ia5z"; depends=[bsplus cli config dplyr ggplot2 golem htmltools magrittr MASS maxLik mixtools msm pkgload rhandsontable rlang rmarkdown shiny shinydashboard shinyWidgets tidyr]; };
   biogas = derive2 { name="biogas"; version="1.23.2"; sha256="05g6nyi872skvr34kw5c71ggnnjc3fv95imc327yjqhmqmwx3m19"; depends=[]; };
@@ -6612,7 +6624,7 @@ in with self; {
   bioinactivation = derive2 { name="bioinactivation"; version="1.2.3"; sha256="0gz1bbakf6b23jsbvrr8314yxajxcr1akm5srgm883lrf1p5ax13"; depends=[deSolve dplyr FME ggplot2 lazyeval MASS purrr rlang]; };
   biokNN = derive2 { name="biokNN"; version="0.1.0"; sha256="113lynbxmv88ycvbsq9drn2f75md7yajhicfw8qd8l6lawiq1fqc"; depends=[cluster desc dplyr ggplot2 lme4 magrittr mice mitml tidyr]; };
   biolink = derive2 { name="biolink"; version="0.1.7"; sha256="1i9aisvb3lvljird89fy9fx7h3s1wi6dpilycbynqyhz8xqnnszj"; depends=[DBI glue memoise rentrez RMySQL xml2]; };
-  biomartr = derive2 { name="biomartr"; version="0.9.2"; sha256="12bw15hvjg7fbrq1mwn2xgzbplydy8rlq982hs118mlwdrlqb06q"; depends=[biomaRt Biostrings curl data_table downloader dplyr fs httr jsonlite philentropy purrr R_utils RCurl readr stringr tibble XML]; };
+  biomartr = derive2 { name="biomartr"; version="1.0.2"; sha256="0hr7wks88lbfcqzjzm4x265dk4lpmc3i2ndp7xcrx8ssj76wrmkz"; depends=[biomaRt Biostrings curl data_table downloader dplyr fs httr jsonlite philentropy purrr R_utils RCurl readr stringr tibble withr XML]; };
   biometryassist = derive2 { name="biometryassist"; version="1.0.0"; sha256="1lh2bjagab644j68dwfk6q88nmb1rvclqi87mxb1cwx6y7mjyr69"; depends=[agricolae cowplot curl ellipsis farver ggplot2 interp lattice multcompView predictmeans rlang scales stringi withr]; };
   biomod2 = derive2 { name="biomod2"; version="3.5.1"; sha256="065cq36phf7ncd1na440f50aa467qbwkb7pchabsan05k3zk7v9h"; depends=[abind caret checkmate dismo doParallel dplyr earth ENMeval foreach gbm ggplot2 lattice MASS maxnet mda nnet PresenceAbsence pROC purrr randomForest raster rasterVis reshape rlang rpart sp tidyr]; };
   bionetdata = derive2 { name="bionetdata"; version="1.0.1"; sha256="1l362zxgcvxln47b1vc46ad6ww8ibwhqr2myxnz1dnk2a8nj7r2q"; depends=[]; };
@@ -6627,7 +6639,7 @@ in with self; {
   biotools = derive2 { name="biotools"; version="4.2"; sha256="1dyy9mk2afjbc8g1qygy6h1aksbhndm53c4sb5mfzriydl03ibxv"; depends=[boot MASS]; };
   bipartite = derive2 { name="bipartite"; version="2.16"; sha256="10flnwgsll86w1dgn4rswbshag8l35hski0nf7xkvp5fj39sy4wp"; depends=[fields igraph MASS permute sna vegan]; };
   bipartiteD3 = derive2 { name="bipartiteD3"; version="0.3.0"; sha256="1b4nw1hqw645j8blf2b1hhnar7ffc4bw0zb07ycfjqd2prnif8pd"; depends=[downloader dplyr purrr r2d3 RColorBrewer stringr tibble tidyr]; };
-  bipd = derive2 { name="bipd"; version="0.1"; sha256="14b6hx5l4xwicf7lvqm7p0ghb4ibsxwyxddg98bkkhsbg7rpdczq"; depends=[coda dplyr mvtnorm rjags]; };
+  bipd = derive2 { name="bipd"; version="0.2"; sha256="0lm6yi4xnpl1vrai75jb8958mqwzilp42vik7z282g6p4ggx4ka8"; depends=[coda dplyr mvtnorm rjags]; };
   biplotbootGUI = derive2 { name="biplotbootGUI"; version="1.2"; sha256="07lrs2n6s54h97vjriszszhksdbi14s2i234kwfhg7aq47k6l0jl"; depends=[cluster dendroextras MASS matlib rgl shapes tcltk2 tkrplot]; };
   birankr = derive2 { name="birankr"; version="1.0.1"; sha256="1azgrzgw5bnfac8p287ir5zl6kxc6jij20p6cfc3lbbl03f8sa1k"; depends=[data_table Matrix]; };
   birdring = derive2 { name="birdring"; version="1.4"; sha256="0rskrf0r5nrzfcac0zvc60vabvs9dws2zx1rxssvw6xmwyiiy1z6"; depends=[geosphere ks lazyData raster rgdal rgeos rworldmap rworldxtra sp]; };
@@ -6651,9 +6663,10 @@ in with self; {
   biwavelet = derive2 { name="biwavelet"; version="0.20.21"; sha256="0v7arwmng2i22svj836i57q8by9x5pghjv7d35g7r35wakrm8jyx"; depends=[fields foreach Rcpp]; };
   biwt = derive2 { name="biwt"; version="1.0"; sha256="1mb3x8ky3x8j4n8d859i7byyjyfzq035i674b2dmdca6mn7paa14"; depends=[MASS rrcov]; };
   bizdays = derive2 { name="bizdays"; version="1.0.9"; sha256="1ddl7mnxf5prvcmkdfmfhvxrcv8c7clm21qvmr54gwqf759afh07"; depends=[jsonlite]; };
+  bizicount = derive2 { name="bizicount"; version="1.0.0"; sha256="1h11cxl56j5mzdjrsb9x7csxad33xx4rd0sgvz3dbd759nbmi9am"; depends=[DHARMa Formula MASS numDeriv pbivnorm rlang texreg]; };
   bjscrapeR = derive2 { name="bjscrapeR"; version="0.1.0"; sha256="18chbgiwify272iqf0w4vsqh73wbk12d8m2awc5hbnfqblz3phwd"; depends=[dplyr glue readr tibble]; };
-  bkmr = derive2 { name="bkmr"; version="0.2.0"; sha256="0dk6dn73bqlvwinn3aginls4533931xcr3h59k0w60yxs3v8yakv"; depends=[dplyr fields magrittr MASS nlme tidyr tmvtnorm truncnorm]; };
-  bkmrhat = derive2 { name="bkmrhat"; version="1.1.1"; sha256="0mak91p8vrvmqscghqgpzwcrxn7mm9km6wks1lrwixivlq0g1cdj"; depends=[bkmr coda data_table future rstan]; };
+  bkmr = derive2 { name="bkmr"; version="0.2.1"; sha256="0606i94lkici73g86xap142xkgrxk5pjid8c6rybjqqz9vqz48cv"; depends=[dplyr fields magrittr MASS nlme tidyr tmvtnorm truncnorm]; };
+  bkmrhat = derive2 { name="bkmrhat"; version="1.1.2"; sha256="0wd8n9lwrrgs2mdxbhyx3sq5xkc7ifvbcwf260m8jgpblp9nn2yz"; depends=[bkmr coda data_table future rstan]; };
   blackbox = derive2 { name="blackbox"; version="1.1.32"; sha256="180y19ls0vdk98smhs9hxpcwg3hwpl62d19zdiml38bjlxmr0kav"; depends=[foreach geometry lattice MASS nloptr numDeriv pbapply proxy rcdd Rcpp RcppEigen spaMM]; };
   blaise = derive2 { name="blaise"; version="1.3.8"; sha256="1jvjli349rzyiij80ggb27fsqp0hd1fz2pw93rj6cssgipl911xl"; depends=[dplyr readr stringr tibble]; };
   blandr = derive2 { name="blandr"; version="0.5.1"; sha256="1rqas71hlf000b3z824d8ljshf8bx91bbrzaxxnx5n3chv19w6z6"; depends=[ggplot2 jmvcore knitr R6 rmarkdown stringr]; };
@@ -6667,7 +6680,7 @@ in with self; {
   blin = derive2 { name="blin"; version="0.0.1"; sha256="1h94azm7gli9i4v3li5c1p36p3rkcj2p5j6rqzlzf0pcqs0bsc09"; depends=[abind glmnet MASS Matrix mvtnorm]; };
   blindrecalc = derive2 { name="blindrecalc"; version="0.1.3"; sha256="1kaia4mpwjh9p0m9jc694i2gy1hfqa3k04w17cnmwsfppgwq11ls"; depends=[Rcpp]; };
   blink = derive2 { name="blink"; version="1.1.0"; sha256="053nw592sglzh6fgz7hj8ra6q7lqs83hhv14kcgs67b56q8a3crb"; depends=[plyr stringdist]; };
-  bliss = derive2 { name="bliss"; version="1.0.3"; sha256="0bzb4cybck466va4jhchwkf41z1ijzbsdp5pmkpnlxkv7kkcyfcl"; depends=[MASS Rcpp RcppArmadillo rockchalk]; };
+  bliss = derive2 { name="bliss"; version="1.0.4"; sha256="02kln40z10wngydn7y4x5shd2dff74gb340nhagf49k8ql9p78xw"; depends=[MASS Rcpp RcppArmadillo]; };
   blm = derive2 { name="blm"; version="2013.2.4.4"; sha256="1w6c30cq38j4i1q4hjg12l70mhy5viw886l1lsnxyvniy113in4i"; depends=[]; };
   blme = derive2 { name="blme"; version="1.0-5"; sha256="0413j7gwr5yj14jamkizj55q7xii1a0kgazzj0ilqn2ascclz6k7"; depends=[lme4]; };
   blmeco = derive2 { name="blmeco"; version="1.4"; sha256="1370djpy87816bfr0g8730x7q4d4xx9aa41iqm622q5b5zm2jzmp"; depends=[arm lme4 MASS]; };
@@ -6676,18 +6689,18 @@ in with self; {
   blockForest = derive2 { name="blockForest"; version="0.2.4"; sha256="14xggdm34hmdlz3hvvp5layk6mb016yppqf9x9rbia9lmmjbhgfh"; depends=[Matrix Rcpp RcppEigen survival]; };
   blockRAR = derive2 { name="blockRAR"; version="1.0.2"; sha256="1d9izlcgz85kcz1sh11mcxq96qh0cwv6638jha851h2f4lnc8aa4"; depends=[arm dplyr ldbounds magrittr tibble]; };
   blockcluster = derive2 { name="blockcluster"; version="4.5.1"; sha256="1f152m3fv0aaw2csgqvf1y231f5rjhwrkn69yyx9yb3ff65z49d8"; depends=[Rcpp rtkore]; };
-  blocklength = derive2 { name="blocklength"; version="0.1.4"; sha256="13hsk15r2m2rnmdjs1apz6bhpm877pkc0rph2lvwgpm85ki0rr7z"; depends=[tseries]; };
+  blocklength = derive2 { name="blocklength"; version="0.1.5"; sha256="06d62hgkf2pphr6h3nba1b5r0izr45bvmrymrzq0lyc7xiwrh6na"; depends=[tseries]; };
   blockmatrix = derive2 { name="blockmatrix"; version="1.0"; sha256="14k69ly4i8pb8z59005kaf5rpv611kk1mk96q6piyn1gz1s6sk6r"; depends=[]; };
   blockmodeling = derive2 { name="blockmodeling"; version="1.0.5"; sha256="1vc8gy4slsywcwxq532373i0dq73fhs5cac9mr6zz2pjaaxjghhq"; depends=[Matrix]; };
   blockmodels = derive2 { name="blockmodels"; version="1.1.5"; sha256="1h2g13yp8xhkw9icl5bi1nkc0qfqkqhlhdqbcsp0246g9amssci9"; depends=[digest Rcpp RcppArmadillo]; };
   blockrand = derive2 { name="blockrand"; version="1.5"; sha256="0bic3b8l7mp2hpwd8k1diwy6a4lj92i7s5k20i2wy8kw0c74jwfh"; depends=[]; };
   blocksdesign = derive2 { name="blocksdesign"; version="4.9"; sha256="1kr3fxs8vgc96clhx5ml11jkwll1rg9gf16xg93q14jpg4hg0j9h"; depends=[plyr PolynomF]; };
-  blogdown = derive2 { name="blogdown"; version="1.7"; sha256="0v3sxbq35azak6g4a7k6pq9z9qgx4yf138r1r5yl76grrq4k9gka"; depends=[bookdown htmltools httpuv jsonlite knitr later rmarkdown servr xfun yaml]; };
+  blogdown = derive2 { name="blogdown"; version="1.8"; sha256="05rzxwap8i7h5ijy04322cyim6kxhdhgq8y8nvp9q9gq3183bmrs"; depends=[bookdown htmltools httpuv jsonlite knitr later rmarkdown servr xfun yaml]; };
   blorr = derive2 { name="blorr"; version="0.3.0"; sha256="1ynvg6ar7c7p01225q9czy4gxks0p1vw3sx207l7vzqxw20wb1bn"; depends=[car data_table ggplot2 gridExtra lest Rcpp]; };
   blrm = derive2 { name="blrm"; version="1.0-1"; sha256="0p0nmbxil4l89fcryrgsg9mxzb5fyg93p50aqkjy00ms05hwd0hx"; depends=[boot mvtnorm openxlsx reshape2 rjags]; };
   blsR = derive2 { name="blsR"; version="0.2.1"; sha256="0wbcpvgj72fkhv4z1gllf9lkq45mdwwnf8dnmaqwl9i5qnihy1yy"; depends=[dplyr httr jsonlite purrr rlang]; };
   bltm = derive2 { name="bltm"; version="0.1.0"; sha256="1sx4ii65ddvdw45za8j320v1s9d1pz5k2gx979yymhyxi8fmq69z"; depends=[mvnfast Rfast]; };
-  bmabasket = derive2 { name="bmabasket"; version="0.1.1"; sha256="1hgbl1x38snhzbh5j1qz81azkdwzmm4idacyyyrn895vl71ypfrn"; depends=[partitions Rcpp RcppArmadillo]; };
+  bmabasket = derive2 { name="bmabasket"; version="0.1.2"; sha256="0w8y992ylyg0cyz1lfqll96fivng13lvxp0mhyb48flfnkg8rcdd"; depends=[partitions Rcpp RcppArmadillo]; };
   bmass = derive2 { name="bmass"; version="1.0.3"; sha256="0dafixd996lamn5kfbqpiawblalhyw1gi394j46n2sij2r209d76"; depends=[]; };
   bmem = derive2 { name="bmem"; version="1.8"; sha256="1nhybz8aarzlqjx4443hsflflgy2jcprz5dv6mwxacnyspm93vlq"; depends=[Amelia lavaan MASS sem snowfall]; };
   bmgarch = derive2 { name="bmgarch"; version="1.1.0"; sha256="1r7hlc5d8jmk7sy7wv9yrilhla57vi9ar21dhmvfakms2z7gyg9d"; depends=[BH forecast ggplot2 loo MASS Rcpp RcppEigen RcppParallel Rdpack rstan rstantools StanHeaders]; };
@@ -6714,13 +6727,13 @@ in with self; {
   bnviewer = derive2 { name="bnviewer"; version="0.1.6"; sha256="036jmypxg2ciiz388f90vm73l9djhpi6gzp1ibn9l0x3d072r7zz"; depends=[assertthat bnlearn caret e1071 igraph shiny visNetwork]; };
   boa = derive2 { name="boa"; version="1.1.8-2"; sha256="04lhqk5qfvaz1jk90glr2yi5vq7cdy0w8m6g2lnzk359l9y41zhp"; depends=[]; };
   bodenmiller = derive2 { name="bodenmiller"; version="0.1.1"; sha256="0rdbk3f95iw4352fl9d81ir503q072chbb4hn1k12sp1wjc3apid"; depends=[]; };
+  bodycomp = derive2 { name="bodycomp"; version="0.1.0"; sha256="1fzw8g1dxvigknx8s6kd05z13p7ak0941y9bqzklgsfm9afiaj4d"; depends=[]; };
   boilerpipeR = derive2 { name="boilerpipeR"; version="1.3.2"; sha256="1dws84ghc5r6zpnr23qd4l9bkazds8ar723wkrkikjni58vshjf1"; depends=[rJava]; };
   bolasso = derive2 { name="bolasso"; version="0.1.0"; sha256="1radw0h1y1gq0lzfrdh2phnvbrxzlklm7hhbz6x4xpw6vybwbp1j"; depends=[future_apply gamlr ggplot2 glmnet Matrix progressr Rdpack tibble]; };
   bold = derive2 { name="bold"; version="1.2.0"; sha256="0r54ylxgmq9qnh1f36k4hafh80n86ibk4a994f8b1rnb9bq9f5cg"; depends=[crul data_table jsonlite plyr reshape stringr tibble xml2]; };
   bookdown = derive2 { name="bookdown"; version="0.24"; sha256="1qqvvfbpbd6sin8vpvr3zzlhlyx1i6b98yp77xj5zl220nid5slb"; depends=[htmltools jquerylib knitr rmarkdown tinytex xfun yaml]; };
   bookdownplus = derive2 { name="bookdownplus"; version="1.5.8"; sha256="1cdxz5c69cgdk7wxr0xwhzw361rpg7j8xjv9hjf1877qqmhxbrkd"; depends=[bookdown knitr magick xaringan]; };
   boomer = derive2 { name="boomer"; version="0.1.0"; sha256="0nb58msk7ycim15ssjwig9i62x51ydnakq83jg6vcbqjg1a9anry"; depends=[crayon pryr rlang rstudioapi styler withr]; };
-  boostmtree = derive2 { name="boostmtree"; version="1.5.0"; sha256="18w5h8m6g4aszffyn0ixhzn2bgbrwrrcq2k54b70vbw00xqxmg1q"; depends=[nlme randomForestSRC]; };
   boot = derive2 { name="boot"; version="1.3-28"; sha256="0cjafhqv1c1mrjjcasqr767vs96wjcc6am9r1icryr8l4zymhwcz"; depends=[]; };
   boot_heterogeneity = derive2 { name="boot.heterogeneity"; version="1.1.5"; sha256="0g4zkvx8krqh54xvjh1a0ybwl3v5bg3l670ycgnps8kkw32w5p1f"; depends=[HSAUR3 knitr metafor pbmcapply rmarkdown]; };
   boot_pval = derive2 { name="boot.pval"; version="0.4"; sha256="05gxpky92f9jhvhv4faj49ql8a9mrfqdgk802i0hdw4lmnn90k7j"; depends=[boot car lme4 Rdpack survival]; };
@@ -6731,13 +6744,12 @@ in with self; {
   bootLR = derive2 { name="bootLR"; version="1.0.2"; sha256="1aj5l42d5y7czxzlg6r9ykdxyjf8m8bahl41xk4k6xpxckdnka14"; depends=[binom boot]; };
   bootPLS = derive2 { name="bootPLS"; version="0.9.9"; sha256="1i0bzykwjimyswb0z23sqbhm98b9lxifnkby682khva7yfk7k8qr"; depends=[bipartite boot doParallel foreach mvtnorm pls plsRglm spls]; };
   bootSVD = derive2 { name="bootSVD"; version="1.1"; sha256="16d3qv8vzhfvl9vbfglkb3csmc4npb29jcq9apv89hj7bkcapvi9"; depends=[ff]; };
-  bootStepAIC = derive2 { name="bootStepAIC"; version="1.2-0"; sha256="0p6v4zjsaj1p6c678010fazdh40lpv0rvhczd1halj8aic98avdx"; depends=[MASS]; };
+  bootStepAIC = derive2 { name="bootStepAIC"; version="1.3-0"; sha256="1dmziq6yfycpap4hhlzl3xg2hsx4y135hy7r6qh9p98vxpa6mycl"; depends=[MASS]; };
   bootUR = derive2 { name="bootUR"; version="0.4.2"; sha256="1vf6qynakcil8sz161c8jvkg7c5b5qmkzmsgd5vhp3yrjf1wbhf7"; depends=[parallelly Rcpp RcppArmadillo RcppParallel RcppThread urca]; };
   bootcluster = derive2 { name="bootcluster"; version="0.3.2"; sha256="0wkc9li0hqgns7pz72fby187q81yzrgl62qs8w5llayghf8lhaml"; depends=[cluster doParallel dplyr flexclust foreach fpc GGally ggplot2 gridExtra igraph intergraph mclust network plyr sna]; };
   bootf2 = derive2 { name="bootf2"; version="0.4.1"; sha256="17wrl678x9mb5pny2vwrr6sdl2hsqr1nbjzsizp2q6l3w5m6s152"; depends=[ggplot2 MASS minpack_lm readxl]; };
   bootnet = derive2 { name="bootnet"; version="1.5"; sha256="13pfmr259yikkb3y9438xz4bjn6kx5w5d2jhx441a00rvv1kb3hi"; depends=[abind corpcor dplyr ggplot2 gtools igraph IsingFit IsingSampler Matrix mgm mvtnorm NetworkToolbox networktools pbapply qgraph rlang snow tibble tidyr]; };
   bootruin = derive2 { name="bootruin"; version="1.2-4"; sha256="1gbvh99snchipf13kjhymcx60s2kni23y7lv8lhzd3d402grp68h"; depends=[]; };
-  bootsPLS = derive2 { name="bootsPLS"; version="1.1.2"; sha256="19ikz3l0qds25hgcxvhsvqy6jyshcdvnxw6774ifl9ylngxvlfh0"; depends=[mixOmics]; };
   bootspecdens = derive2 { name="bootspecdens"; version="3.0"; sha256="0hnxhfsc3ac4153lrjlxan8xi4sg1glwb5947ps6pkkyhixm0kc1"; depends=[MASS]; };
   bootstrap = derive2 { name="bootstrap"; version="2019.6"; sha256="1546jqhhw5h177ii8jkdikyd26rv6gwkav816np1zks4p7zgsljj"; depends=[]; };
   bootstrapFP = derive2 { name="bootstrapFP"; version="0.4.4"; sha256="1j9ag18s2n7cihs5hbjhibx8gikxf8fs5hx2ljfzcn0gv492qm02"; depends=[sampling]; };
@@ -6782,6 +6794,7 @@ in with self; {
   bread = derive2 { name="bread"; version="0.1.7"; sha256="1ynf27ibj5ahnkk09xpk75wf43y3z4321kx31k0964y17pxf1ksk"; depends=[data_table dplyr stringr]; };
   breakDown = derive2 { name="breakDown"; version="0.2.1"; sha256="1jm9zmyfcnr9mjz7b30k34h47msvik9ngfysi6dc48gvrk41yk9q"; depends=[ggplot2]; };
   breakage = derive2 { name="breakage"; version="1.1-1"; sha256="0zjazyz92criiimpz4wyd4hd8ccspvh3hhqpd4qkfdzdf9wp3kns"; depends=[Imap]; };
+  breakaway = derive2 { name="breakaway"; version="4.7.9"; sha256="149n30lxkyh9qapm9xfarxbrxlp2fkar437ndajryq8m4i39w08i"; depends=[ggplot2 lme4 magrittr MASS phyloseq tibble]; };
   breakfast = derive2 { name="breakfast"; version="2.2"; sha256="1bdzi0czhjwiqid6xz1b10p9wqy051sy5jhxnwzh9bxzh94a79lk"; depends=[ggplot2 plyr Rcpp]; };
   breakpoint = derive2 { name="breakpoint"; version="1.2"; sha256="004vi1qr7iib8ykg6sp7xzv0bb841h4vsz2x0cyrhkdp41frglx9"; depends=[doParallel foreach ggplot2 MASS msm]; };
   breathtestcore = derive2 { name="breathtestcore"; version="0.8.1"; sha256="1cdv3qc5bydpchw2qz8wgqsc1hjn0q97bsk05gm8s0xfxmkfn3jb"; depends=[assertthat broom dplyr ggfittext ggplot2 MASS multcomp nlme purrr readr readxl signal stringr tibble tidyr xml2]; };
@@ -6791,7 +6804,7 @@ in with self; {
   brglm2 = derive2 { name="brglm2"; version="0.8.2"; sha256="065ldmbagarhipl6hl25rlpcnp7c3h1adadyq2wgx0g09hq5ibjf"; depends=[enrichwith MASS Matrix nnet numDeriv]; };
   briKmeans = derive2 { name="briKmeans"; version="0.1"; sha256="026wga5lqr8i6zxi8jnw466d40r9qf1blb7l331h9vaj2j169iax"; depends=[boot cluster depthTools]; };
   brickr = derive2 { name="brickr"; version="0.3.5"; sha256="1a6yxhq2zly3i3gs4dd19xhyrin1qaxdr7x3a887j7zbcj0j4z9q"; depends=[colorspace dplyr farver ggplot2 magrittr purrr rgl scales tidyr]; };
-  bridgedist = derive2 { name="bridgedist"; version="0.1.0"; sha256="0hqkpwpi3nv6mfhljl65zcflf4wy72ag36hdam6s7kynfj41qz6w"; depends=[]; };
+  bridgedist = derive2 { name="bridgedist"; version="0.1.1"; sha256="1jvjfbk4p5n02xx74bis0z9nzpbn8c5in9qlfr2wpwfqdplprxhl"; depends=[]; };
   bridger = derive2 { name="bridger"; version="0.1.0"; sha256="1rx16zwa3zz4bs7h0b75vsx78dvkif8d9c7prb5pmwccizll7v53"; depends=[cowplot dplyr ggedit ggplot2 glue gridExtra kableExtra magrittr patchwork pdftools scales stringr tibble tidyr]; };
   bridger2 = derive2 { name="bridger2"; version="0.1.0"; sha256="0clp42nnbvd01n65azdi2ghp0mfqwsipzdl2d30q04lcvfkdpxrf"; depends=[BSDA data_table ggplot2 outliers plotly shiny shinydashboard]; };
   bridgesampling = derive2 { name="bridgesampling"; version="1.1-2"; sha256="0sry1xwiv4y52k44hq6z8y2kysp5kxgl4dix3m94svg3ladd7v2l"; depends=[Brobdingnag coda Matrix mvtnorm scales stringr]; };
@@ -6814,9 +6827,8 @@ in with self; {
   brotli = derive2 { name="brotli"; version="1.2"; sha256="07rgdgxh9bvn0qavpclxmkglwyl6ndqasxcs6j12if698dkn976b"; depends=[]; };
   brr = derive2 { name="brr"; version="1.0.0"; sha256="050ivnqcaxiyypd1sxfpy6ianhzzmvs6c77ga40g3440cvfigkgw"; depends=[gsl hypergeo pander stringr SuppDists TeachingDemos]; };
   brranching = derive2 { name="brranching"; version="0.7.0"; sha256="06jy3qhbr0v4m1j4j8a7fb7ic59sx4zhlsm1yb3g6rdwc00d67wj"; depends=[ape conditionz crul curl phylocomr phytools taxize]; };
-  bruceR = derive2 { name="bruceR"; version="0.8.3"; sha256="0q7amdl5imb9mm6fpa0ckjl0jxjwrvy7cc2fwv1jiv7197l7n2bf"; depends=[cowplot crayon data_table dplyr effectsize emmeans forcats ggplot2 ggtext glue interactions lavaan lmerTest mediation performance psych see stringr tidyr]; };
+  bruceR = derive2 { name="bruceR"; version="0.8.5"; sha256="04x2mvp9w0fngsmsgcrs40km6k1ydji7j515cm5bs7xbfm6li8l4"; depends=[afex cowplot crayon data_table dplyr effectsize emmeans forcats ggplot2 ggtext glue interactions lavaan lmerTest mediation performance psych see stringr tidyr]; };
   brulee = derive2 { name="brulee"; version="0.1.0"; sha256="18qglyb3s45rzdp2qxc582v9rpilgqf55cs3r7zyj423ik99sgf4"; depends=[cli coro dplyr generics ggplot2 glue hardhat rlang tibble torch]; };
-  brunnermunzel = derive2 { name="brunnermunzel"; version="1.4.1"; sha256="1lba5cpiray65zg1pv3xv6yl1xg78rqlwxkcmhgizlh1rhpd430p"; depends=[]; };
   brxx = derive2 { name="brxx"; version="0.1.2"; sha256="08qlfnf84k3yjcvr1wm6gd96mk26xf2gz59ychb3m981228hbbs6"; depends=[blavaan blme GPArotation MASS MCMCpack rstan TeachingDemos]; };
   bs4Dash = derive2 { name="bs4Dash"; version="2.0.3"; sha256="17vpng0s0sr3bnaqq3d545s72zd5a7isdbvzh01148lzq0va710g"; depends=[bslib fresh htmltools httpuv httr jsonlite lifecycle shiny waiter]; };
   bs4cards = derive2 { name="bs4cards"; version="0.1.1"; sha256="0fhjj3wjhxl263lhlbm5jw9l227a5k9cpannpankr5h8bkn1408h"; depends=[htmltools magrittr rlang]; };
@@ -6832,7 +6844,7 @@ in with self; {
   bsplus = derive2 { name="bsplus"; version="0.1.3"; sha256="1grn2i2xxq5fhkqb7lqsfhbfckr6i3ddy7mikgxz6lifk4rc4mxx"; depends=[glue htmltools jsonlite lubridate magrittr purrr rmarkdown stringr]; };
   bspm = derive2 { name="bspm"; version="0.3.9"; sha256="1r0c0gnj0ps5cs9grwss7jxx5znywi80kng0rsb3dsmacwsfpkk1"; depends=[]; };
   bspmma = derive2 { name="bspmma"; version="0.1-2"; sha256="1a3p1h7bks5yrxv791wfa680v4a6q10p59iz6wvfifhf3ndlaw49"; depends=[]; };
-  bsreg = derive2 { name="bsreg"; version="0.0.1"; sha256="06kabvchg9jk9x6rgjlphnggpbfppzghqj7pw2nx1wizi2dw0sal"; depends=[Matrix R6]; };
+  bsreg = derive2 { name="bsreg"; version="0.0.2"; sha256="13701llj5k7vssmgb4fvxswcf9bsc4pxjvh67znbsvrv5cmjh5x3"; depends=[Matrix R6]; };
   bssm = derive2 { name="bssm"; version="2.0.0"; sha256="10gk0b235c3szll3g48w9r2iryc0hfx6chh9bvxhm5r0qsfigmla"; depends=[checkmate coda diagis dplyr magrittr posterior ramcmc Rcpp RcppArmadillo rlang sitmo tidyr]; };
   bssn = derive2 { name="bssn"; version="1.0"; sha256="1brxbvcvqy8n9xpvp5kz47x5ps8hdqgnh6s49051qaylp95qm432"; depends=[ClusterR mvtnorm sn ssmn]; };
   bst = derive2 { name="bst"; version="0.3-23"; sha256="1wx039cl8s1j1dwjg50ivn39fckkf8mzgrm953bg02w0p0fpz5bh"; depends=[doParallel foreach gbm rpart]; };
@@ -6857,7 +6869,7 @@ in with self; {
   bundesbank = derive2 { name="bundesbank"; version="0.1-9"; sha256="05sc6m2v8bfgdka7v28rxhq5a8c88gsxkv0zjk08rpw8k8zql0dk"; depends=[]; };
   bundesligR = derive2 { name="bundesligR"; version="0.1.0"; sha256="0dnhbh9jh7dfbk7mfh8msq4ys5kakalr0kwkycycrb2q8rd049vp"; depends=[]; };
   bupaR = derive2 { name="bupaR"; version="0.4.4"; sha256="0ysxvp9ksn00mghll62k0a2qgrqccvprn5zwywsp77rhfb97pfdg"; depends=[data_table dplyr eventdataR forcats glue lubridate magrittr miniUI purrr rlang shiny stringr tidyr]; };
-  burnr = derive2 { name="burnr"; version="0.6.0"; sha256="1xpdd6nni3zca2mabrq1bkgiqlk67v6mn6ykfrx95h8afzjr4k1p"; depends=[forcats ggplot2 MASS plyr reshape2 rlang stringr tidyr]; };
+  burnr = derive2 { name="burnr"; version="0.6.1"; sha256="0pgki4inyql8h10i78yzqm73jy2h7rdp9ywsk65virxaadpngy9c"; depends=[forcats ggplot2 MASS plyr reshape2 rlang stringr tidyr]; };
   bursts = derive2 { name="bursts"; version="1.0-1"; sha256="172g09d1vmwl83xs6gr4gfblqmx3apvblpzdr5d7fcw1ybsx0kj6"; depends=[]; };
   busdater = derive2 { name="busdater"; version="0.2.0"; sha256="0hib73zay9r7rv49zv1lx0l15jzjyli9f1vrk414l8apggvx4c6s"; depends=[lubridate]; };
   butcher = derive2 { name="butcher"; version="0.1.5"; sha256="1yzp4zz2r9xwv2cxywwx2xmh9asnw0lyj15fix4h1ypadbxz68pd"; depends=[fs lobstr purrr rlang tibble usethis]; };
@@ -6872,16 +6884,16 @@ in with self; {
   bysykkel = derive2 { name="bysykkel"; version="0.3.1"; sha256="1lvqbax7dvli4265856f9667ckp9g5l4radz2cp0yk0slsjgsdpg"; depends=[glue httr jsonlite lubridate tibble]; };
   bytescircle = derive2 { name="bytescircle"; version="1.1.2"; sha256="0786dkdww0qyhqr1di7pdcwrnymdcqq7kwrjalagykc41aa4jgza"; depends=[]; };
   bzinb = derive2 { name="bzinb"; version="1.0.4"; sha256="1424lwsm2ra124h0ahbl42szbx500fqkf9ccw9k1688iwxnfg7f2"; depends=[BH Rcpp]; };
-  c060 = derive2 { name="c060"; version="0.2-8"; sha256="1lazxvlgj340bvnx9h1ihnnrjm9rrq8j9qv6glpyvaw1dzb1a60m"; depends=[glmnet lattice mlegp penalizedSVM peperr survival tgp]; };
+  c060 = derive2 { name="c060"; version="0.2-9"; sha256="0bcip5lydd3alll6c8r7i0avs92rxc14i40lhmbbg5nygif4h8dn"; depends=[glmnet lattice mlegp penalizedSVM peperr survival tgp]; };
   c212 = derive2 { name="c212"; version="0.98"; sha256="0pzg239602iq56nhxfdvlk26z58lz6vvlbwsdpwhmich0by4gx4x"; depends=[coda]; };
   c2c = derive2 { name="c2c"; version="0.1.0"; sha256="149np512wjnlr9glmqxpiamf6c31v0bh6ym95jpdhk0iw3ic9kvh"; depends=[]; };
   c2d4u_tools = derive2 { name="c2d4u.tools"; version="1.2"; sha256="1ssp3sk5kml8in1ggnir77cq2kpmdmrhjblvw67ydxp22sqw7vwr"; depends=[]; };
   c3 = derive2 { name="c3"; version="0.3.0"; sha256="1c2k7ml153bby749qi3a6nckhwwr71mvvps9dkbzkxkwnmlwpz1h"; depends=[data_table dplyr htmlwidgets jsonlite lazyeval viridis]; };
   c3net = derive2 { name="c3net"; version="1.1.1"; sha256="0m4nvrs41kmlakc6m203zlncqwgj94wns8kzcb31xngjcacmcq42"; depends=[igraph]; };
   cAIC4 = derive2 { name="cAIC4"; version="1.0"; sha256="1qg73g0g029wkzpmp0fgvyfz8p1k3x38yqx0404cpb3dxj4n4hcg"; depends=[lme4 Matrix mgcv mvtnorm nlme RLRsim]; };
-  cIRT = derive2 { name="cIRT"; version="1.3.1"; sha256="1x7cbawzzpzripzyg4yavc9s6kx06ff4q151kbvylr9wsf78s6qg"; depends=[Rcpp RcppArmadillo]; };
+  cIRT = derive2 { name="cIRT"; version="1.3.2"; sha256="1iwgxc1jl118j9yjhjix9f7dm75sj82iz7ic58g5625fxzdgnw25"; depends=[Rcpp RcppArmadillo]; };
   cNORM = derive2 { name="cNORM"; version="2.1.0"; sha256="01iigvxl01h320yppnjlr46j7s2gz2g6yk00kfcr7b5zq8qzil2j"; depends=[lattice latticeExtra leaps]; };
-  cOde = derive2 { name="cOde"; version="1.0.0"; sha256="12222wlsk9l6m9y477mjl8x279xhs8c1l1wsq92khwycm1j06jfy"; depends=[]; };
+  cOde = derive2 { name="cOde"; version="1.1.1"; sha256="1h3bp97lqd1jvgnablhxdncmvbf5qwphqbs7xy3r31vpamslz77i"; depends=[]; };
   cPCG = derive2 { name="cPCG"; version="1.0"; sha256="1pfbsv2rcjsryn6nr56a7i4yb7k0m3gdfn4q9l1kpzhmv9lic7m1"; depends=[Rcpp RcppArmadillo]; };
   cPseudoMaRg = derive2 { name="cPseudoMaRg"; version="1.0.1"; sha256="1mf78pilhx4mqv8n0xrdzn9wkvhnb3bs7rill7n588f18bnjp9mh"; depends=[]; };
   cRegulome = derive2 { name="cRegulome"; version="0.3.2"; sha256="0cvxad73l85zsgqmis5p24v71kkzi784b8v5z07f0dh9yp41p96q"; depends=[DBI ggplot2 ggridges httr igraph R_utils RSQLite UpSetR VennDiagram]; };
@@ -6889,12 +6901,12 @@ in with self; {
   ca = derive2 { name="ca"; version="0.71.1"; sha256="095lk7p2b9835hc3a03c4019wg0baf0dhz6c2vqpaq1m9k4jy304"; depends=[]; };
   caMST = derive2 { name="caMST"; version="0.1.4"; sha256="0467xfwqx6jwj442rlzkgyry8lnhvbxdazfpsy3wyd2iidb9a2g4"; depends=[catR diagram mstR]; };
   caROC = derive2 { name="caROC"; version="0.1.5"; sha256="0cklvzfg95yyr37hdfmrna2z6lnhf9f6rrqcjsba1wjmqs8abgsh"; depends=[quantreg RColorBrewer]; };
-  caRamel = derive2 { name="caRamel"; version="1.2"; sha256="15w1p770cjsxs198rlc8fzs9m8a4pg5day2iya7xz0fkwb3xmm2z"; depends=[geometry]; };
+  caRamel = derive2 { name="caRamel"; version="1.3"; sha256="0l83z74q1as4w33vqsbybyz2vkdqgw7y56jkw0s6f36mph8fdpf9"; depends=[geometry]; };
   caRecall = derive2 { name="caRecall"; version="0.1.0"; sha256="1ml8cfsi4h8q5f0y3m6s5v8sdldj302ndl75m6f7lagsiiiwhd77"; depends=[httr jsonlite tibble]; };
   caRpools = derive2 { name="caRpools"; version="0.83"; sha256="10m7fw1zfr9i6v2qg235diwf3fmfr88incxnqpvnhmqcn082mxrp"; depends=[biomaRt DESeq2 rmarkdown scatterplot3d seqinr sm VennDiagram xlsx]; };
   caTools = derive2 { name="caTools"; version="1.18.2"; sha256="14q2ry8gaszjl0m97qg62dxv5bpj6k02qwyi7q2lnxgcmwai3mkm"; depends=[bitops]; };
   cabinets = derive2 { name="cabinets"; version="0.6.0"; sha256="1pypn29v91zqncv5kxinfz0f633qmic7n87rf4amjrq83iiid6md"; depends=[cli crayon fs git2r glue R6 renv rstudioapi stringr]; };
-  cabootcrs = derive2 { name="cabootcrs"; version="2.0"; sha256="1a473ca90306brhfrzf5hw6d6v252kd2vfwkvgblwy26jmrrr2km"; depends=[lpSolve]; };
+  cabootcrs = derive2 { name="cabootcrs"; version="2.1.0"; sha256="0aqp8ip0s9raz4minhaw7vcn253xld4dgr957wsl2sp2nd8z66rq"; depends=[colorspace lpSolve]; };
   cacIRT = derive2 { name="cacIRT"; version="1.4"; sha256="145j6isqa8yj2nvlqkxagd076zs10ng3n44khi5p4jj77fjc8gh6"; depends=[]; };
   cache = derive2 { name="cache"; version="0.0.2"; sha256="0ffny3wbba755h6rs842z0hj5wyjhjin3b5lrxg09yqcjz03pll1"; depends=[cli digest here r_assert]; };
   cachem = derive2 { name="cachem"; version="1.0.6"; sha256="0r0q5w8lsxak46crnkbi739qzys90hlw7cqqqhv99xzkpkvm554s"; depends=[fastmap rlang]; };
@@ -6911,21 +6923,23 @@ in with self; {
   calibrateBinary = derive2 { name="calibrateBinary"; version="0.1"; sha256="1k6sl4bg05piyczpk6wsva914gcmy8viyz4423gx9i6ddflb7xdb"; depends=[gelnet GPfit kernlab randtoolbox]; };
   calibrator = derive2 { name="calibrator"; version="1.2-8"; sha256="1m9g1pmnr6d9jkg5ab0l0cbqfj7kmx7sdmcdqdhn9ifyhhn7812y"; depends=[cubature emulator mvtnorm]; };
   callr = derive2 { name="callr"; version="3.7.0"; sha256="02inaf3c7b0hikii7p2zwaphrq5myv4in92d9jxd1ilmhla5awnn"; depends=[processx R6]; };
-  calmate = derive2 { name="calmate"; version="0.12.1"; sha256="07sjbq7bcrhal52pdzsb5pfmk6a8a44wg8xn79sv4y5v74c5xaqz"; depends=[aroma_core MASS matrixStats R_filesets R_methodsS3 R_oo R_utils]; };
+  calmate = derive2 { name="calmate"; version="0.13.0"; sha256="17gfk3am8frj9pqx31pmjswm5nvca9nqbanl0qj4ypsr8wymix7w"; depends=[aroma_core MASS matrixStats R_filesets R_methodsS3 R_oo R_utils]; };
   calpassapi = derive2 { name="calpassapi"; version="0.0.3"; sha256="1vhx5h7ah75cs1mlw25x7hal90m47596kr7fx2pd8fslq7il7p1b"; depends=[digest dplyr httr jsonlite stringr]; };
   campfin = derive2 { name="campfin"; version="1.0.8"; sha256="06shr4p4g3cwxs1iszpvpk83k2mss6za68fqkv5pjiz44pc89v80"; depends=[dplyr fs ggplot2 glue httr lubridate magrittr purrr readr rlang scales stringdist stringr tibble]; };
+  campsis = derive2 { name="campsis"; version="1.2.0"; sha256="1nngm2g2j8q7kfa7pl11zg28mb8m9kyyc3lfxsldydm6vijlckv7"; depends=[assertthat campsismod dplyr ggplot2 MASS plyr purrr rlang tibble tidyr]; };
+  campsismod = derive2 { name="campsismod"; version="0.8.0"; sha256="1h919ci4jnwi812grbi4wjl7r86142xvb83hbhjni3yl93k0627s"; depends=[assertthat dplyr magrittr plyr purrr readr]; };
   camsRad = derive2 { name="camsRad"; version="0.3.0"; sha256="06gar6qan1ka01ngjvbpcv649yvfga697mplwn1x6qnfr4ngb7cs"; depends=[httr xml2]; };
   camtrapR = derive2 { name="camtrapR"; version="2.0.3"; sha256="13zg8kx28il7rbyr2p3c1xdxx84b7shpcmgavzjqzh6wjm5bh5mh"; depends=[data_table overlap secr sp]; };
   canadacovid = derive2 { name="canadacovid"; version="0.3.3"; sha256="1xgabz1klq4rgbs1wdffgyyq35kcs9giwc55g76kd7psnf2giclk"; depends=[dplyr httr jsonlite lubridate magrittr purrr rlang stringr tibble tidyr tidyselect]; };
   canadamaps = derive2 { name="canadamaps"; version="0.1"; sha256="1i3yjhr5p06k6id3gws5dzdhf4jy143brbfhi2z4srq67xlz5agl"; depends=[dplyr magrittr rlang rmapshaper sf]; };
   canadianmaps = derive2 { name="canadianmaps"; version="1.0.0"; sha256="1r45d65w8yfgwj8xf6lhsw0fi1b8j8gyayxrcs7wy56kacjjvym8"; depends=[dplyr ggplot2 ggrepel RColorBrewer rgdal sp]; };
-  cancensus = derive2 { name="cancensus"; version="0.4.8"; sha256="0j4q00av0wssd0nwhgkdsyrcvicc4lial66ibfh5pyzih5i0dhpg"; depends=[digest dplyr httr jsonlite rlang]; };
+  cancensus = derive2 { name="cancensus"; version="0.5.0"; sha256="0cnf16b2hn414w3saw84g7v06bhz2yi676ipzbp75dcsr0gk71pw"; depends=[digest dplyr httr jsonlite rlang]; };
   cancerGI = derive2 { name="cancerGI"; version="1.0.0"; sha256="1chkcyf9m98gbn6b3vmb1baw7kii4g5vxvg2xfi7i6wwdn8sqr65"; depends=[igraph qvalue reshape2 survival systemfit]; };
   cancerTiming = derive2 { name="cancerTiming"; version="3.1.8"; sha256="1sfi8q2f5ag7iak0sf9pmqncb89w3gnxdiwjwpivkwhr28ais4mq"; depends=[gplots LearnBayes]; };
   candisc = derive2 { name="candisc"; version="0.8-6"; sha256="17bhh3jgaq5hrlwaapwpsgk7f8a3sg2cmrjd1hgfxxx0z30a6icn"; depends=[car heplots]; };
   canprot = derive2 { name="canprot"; version="1.1.2"; sha256="1lwlgzy0gxp7jrak838awmqz3w0x7qd51bkyhydb1s61073w77x8"; depends=[CHNOSZ MASS rmarkdown xtable]; };
   cansim = derive2 { name="cansim"; version="0.3.10"; sha256="0cg6fjw7mbzhlbc83s0wv313hhvm2jc9phs6m97nigi5yy05faa2"; depends=[DBI digest dplyr httr jsonlite purrr readr rlang RSQLite rvest stringr tibble xml2]; };
-  canvasXpress = derive2 { name="canvasXpress"; version="1.37.0-1"; sha256="1knq67j40vbrcdqbr1z3g5b5i5x62i07jy89sqx3045y3p66wsma"; depends=[htmltools htmlwidgets httr jsonlite]; };
+  canvasXpress = derive2 { name="canvasXpress"; version="1.37.4"; sha256="00k7599b1lifbaxv7iqgb48mwd6r25wdkwi6qrzg4jzl41acx4pg"; depends=[htmltools htmlwidgets httr jsonlite]; };
   canvasXpress_data = derive2 { name="canvasXpress.data"; version="1.34.2"; sha256="10fdlb1yp5x9533jdammncfrrlxzpcz9as8i0209pwzjywvxby3s"; depends=[]; };
   cap = derive2 { name="cap"; version="1.0"; sha256="1pv8hskxjbp589dn7rx80yaa1ld76x1w37bss2fyrys1p3qr78aa"; depends=[MASS multigroup]; };
   cape = derive2 { name="cape"; version="3.1.0"; sha256="0r20c5z28jyc5djymwkfzczyi3rlnj20p00jhc4dsywjcp68fx6n"; depends=[abind caTools corpcor doParallel evd foreach here igraph Matrix pheatmap propagate qtl qtl2 qtl2convert R6 RColorBrewer regress shape stringr yaml]; };
@@ -6941,7 +6955,7 @@ in with self; {
   car = derive2 { name="car"; version="3.0-12"; sha256="00kk8l71508f73kyn21is1mx6kjbrzdq3ls94c5ajhiqmvpsd6dq"; depends=[abind carData lme4 maptools MASS mgcv nlme nnet pbkrtest quantreg]; };
   carData = derive2 { name="carData"; version="3.0-5"; sha256="06j52rpbqi6fj7chfjwjbwbr6slrbb7i3aygv66gnfiyndcp3rq2"; depends=[]; };
   carSurv = derive2 { name="carSurv"; version="1.0.0"; sha256="0wv7lp10i4sdfqyizg77ghblp3pcp7wzhs946sm0wl6w00krav9j"; depends=[corpcor fdrtool mboost Rcpp survival]; };
-  caracas = derive2 { name="caracas"; version="1.1.1"; sha256="0s97if3sgsji9qah66ha328lvsjgpdyw6wvkgmfcy5r4974qfi71"; depends=[magrittr reticulate]; };
+  caracas = derive2 { name="caracas"; version="1.1.2"; sha256="0my74q2l4vncans5s541mphl5pvkd4knxb0i396yf5w6a1vnqwlw"; depends=[magrittr reticulate]; };
   carat = derive2 { name="carat"; version="2.0.2"; sha256="0f6r4x5skjq7vcmwfhnrzrf69ry360y7wqrr5gsys8l5nv6qbjii"; depends=[ggplot2 gridExtra Rcpp RcppArmadillo stringr]; };
   carbonate = derive2 { name="carbonate"; version="0.1.3"; sha256="0y1wjrlh0rbfl1wz9028b637gs20giifp9ykg1yir2ak7fpwbq85"; depends=[clipr details httr magick R6 RSelenium rtweet wdman yaml]; };
   carcass = derive2 { name="carcass"; version="1.6"; sha256="0nhp35nxjqqmy15rf9vc0qyymy7d0v8mc84570b9nc62g5xac8xy"; depends=[arm expm lme4 MASS survival]; };
@@ -6964,9 +6978,8 @@ in with self; {
   cartography = derive2 { name="cartography"; version="3.0.1"; sha256="1ginq160ag0sv5xfiqc5a5vizsqvl3maw61yskwhfnjb2lcgk2yg"; depends=[classInt curl png raster Rcpp rgeos sf slippymath sp]; };
   cartools = derive2 { name="cartools"; version="0.1.0"; sha256="0gc5502373f0c2m2rh6awvyfqrg1wx1f341dm2byk9znba887lgs"; depends=[animation devtools dplyr gapminder ggplot2 knitr rlist rmarkdown roxygen2 sde shiny tidyverse usethis]; };
   carx = derive2 { name="carx"; version="0.7.1"; sha256="1qyqsj6pfzzqyaj6076zvgcimhl4cll6sxfb6aigm02rwfkq5gvh"; depends=[matrixStats mvtnorm nlme tmvtnorm xts zoo]; };
-  casabourse = derive2 { name="casabourse"; version="0.2.0"; sha256="0qpbcdb6lyzhjcn8yz1z7a7zb51brz72ja32j7f9spsq7xcplkf5"; depends=[gsheet httr rvest]; };
+  casabourse = derive2 { name="casabourse"; version="1.2.0"; sha256="13i8fzcqlld50522x6nlqfpdg9pf1f32l3r98i7c9y38kpf6yg8p"; depends=[gsheet RJSONIO rvest]; };
   cascadess = derive2 { name="cascadess"; version="0.1.0"; sha256="105m5w8rb8bkzmlc5nwb4g0wl8jgvz63jxq665x4jfq0z78qiwgd"; depends=[crayon htmltools magrittr rlang]; };
-  caschrono = derive2 { name="caschrono"; version="2.2"; sha256="0lbf7j6p5gzm4kk8sgzcmxwwzg59wp6g6l38m04609lpcsvxkd52"; depends=[Hmisc zoo]; };
   cascsim = derive2 { name="cascsim"; version="0.4"; sha256="0n6frnbby1pjpx1z9lzxflmja2mg0dy99c5f7biakpaqi82x5xjb"; depends=[copula fitdistrplus moments R2HTML scatterplot3d]; };
   caseMatch = derive2 { name="caseMatch"; version="1.0.8"; sha256="0bp2g0zzcspa6riinsa3bp1qwiip6z058hn2y5mw0w9xah8a685a"; depends=[]; };
   casebase = derive2 { name="casebase"; version="0.10.1"; sha256="0yrzl961apslhk77gdnl9mmh1sdxw1az8lpl393n30qs1kl6g4zv"; depends=[data_table ggplot2 mgcv survival VGAM]; };
@@ -6981,10 +6994,9 @@ in with self; {
   catR = derive2 { name="catR"; version="3.16"; sha256="1w39dxfzqk065v64qzmfamx8p1njsv13a461s6clagbqmhysmzbx"; depends=[]; };
   catSplit = derive2 { name="catSplit"; version="0.1.0"; sha256="0nifbwczfs5g9xxlmqfwvcaxd940k5xmbdmamwlhvgif7myi6xr4"; depends=[caret data_table dplyr farff OpenML rpart stringr]; };
   catSurv = derive2 { name="catSurv"; version="1.4.0"; sha256="02hrq51yk7zxz6vr4ykjwjnim9g09d63vpy3g0sm9hidbxryq139"; depends=[BH jsonlite ltm plyr Rcpp RcppArmadillo RcppGSL RcppParallel]; };
-  cata = derive2 { name="cata"; version="0.0.10.3"; sha256="0gqscxzz7n04lh71481rzf6lmdg2xdsdpgp6viwxmmqm4zl5g1xj"; depends=[]; };
+  cata = derive2 { name="cata"; version="0.0.10.8"; sha256="0mh74d1vr78ikpyrzv56sfc62ip4f8dhykzfgln9ri033nc5pvjp"; depends=[]; };
   catalog = derive2 { name="catalog"; version="0.1.0"; sha256="15bxlwypk0xgf0qggq6jgxa951ipmn61w370f3lcywkvaxw1h4ca"; depends=[dplyr sparklyr]; };
   catch = derive2 { name="catch"; version="1.0.1"; sha256="1a63d1a6pzzirdzswngjj036jmg41hbiadwriws7k05qp95jdh6a"; depends=[MASS Matrix tensr]; };
-  catchr = derive2 { name="catchr"; version="0.2.31"; sha256="0mj3cgv2d217hcmyr8x0i83wysxhixgly5y1fs6jb1x09gs1cwnd"; depends=[purrr rlang]; };
   catcont = derive2 { name="catcont"; version="0.5.0"; sha256="0ix6ipm3nn9aq5vxirjga2kwwfnxn4v8ggfjlg5v9027v2r8rb96"; depends=[dplyr]; };
   catdap = derive2 { name="catdap"; version="1.3.5"; sha256="0fyhl69z2lznymvpzxra9qvcg85ggzkfjy68c6mzdmf1ja44d2k5"; depends=[]; };
   catdata = derive2 { name="catdata"; version="1.2.2"; sha256="14kx7yi0cv6dyh9wjasb8gn6cp1bhglgwql7dc2a7lqvdcp0d5vj"; depends=[MASS]; };
@@ -6992,7 +7004,7 @@ in with self; {
   categoryEncodings = derive2 { name="categoryEncodings"; version="1.4.3"; sha256="0ns8ml2hm41650bi8yag6w3k9nb2ky43370444cgy3i7ajpzw87w"; depends=[data_table glmnet sparsepca]; };
   catenary = derive2 { name="catenary"; version="1.1.2"; sha256="1n64kq3lkaf00a2mghs67hnxvi4dp6g12pwifyx0bd418wkw9wf3"; depends=[boot broom dplyr ggplot2 tidyverse]; };
   catfun = derive2 { name="catfun"; version="0.1.4"; sha256="1482rll333fvy4h58f15flfs7qrck3vk9bzpdn3hayhnmc7svmma"; depends=[broom cli DescTools epitools Hmisc magrittr rlang]; };
-  cati = derive2 { name="cati"; version="0.99.3"; sha256="0hq6hdzriab380pc0mx6g8xqflqj5mznr4b7fqw2f51kx8ang8hg"; depends=[ade4 ape e1071 FD geometry hypervolume nlme rasterVis vegan]; };
+  cati = derive2 { name="cati"; version="0.99.4"; sha256="02g33kkp97kswiyjsd378zpa3fc9rjk2d9f4l1gdh7pzglabsmgl"; depends=[ade4 ape e1071 FD geometry hypervolume nlme rasterVis vegan]; };
   catlearn = derive2 { name="catlearn"; version="0.8"; sha256="0vk4amvl6l4cxhfcr9z5glyb752vfsizlzqb14jv04am391xl4qd"; depends=[doParallel dplyr foreach Rcpp RcppArmadillo tidyr]; };
   catmap = derive2 { name="catmap"; version="1.6.4"; sha256="18449qh10jxfi8p49gmbnib5y013nfdgdblbs4n0mfs0nnzb10sx"; depends=[forestplot metafor]; };
   catmaply = derive2 { name="catmaply"; version="0.9.0"; sha256="0x2pzvjjhbwnvj8q1882bvqg895nj2airgmcidkixjmbq267vajz"; depends=[dplyr lubridate magrittr plotly rlang tidyverse]; };
@@ -7074,7 +7086,7 @@ in with self; {
   cenROC = derive2 { name="cenROC"; version="1.2.0"; sha256="07ja3yyqmb9cs76if32aksgcwki3y6nh13lvn9j0bdgbgqx65f3r"; depends=[condSURV icenReg Rcpp RcppEigen survival]; };
   censCov = derive2 { name="censCov"; version="1.0-0"; sha256="0i9vmyi12f1m5xnrl4cxk3z9qv7ymzxsyf4gbnpg1ph63yfnhv3g"; depends=[survival]; };
   censNID = derive2 { name="censNID"; version="0-0-1"; sha256="1ij5ci6nkqf0rq51vyh4jw5sr3y46yndfkjmwl78ppdj66axxir5"; depends=[]; };
-  censReg = derive2 { name="censReg"; version="0.5-32"; sha256="044f3a1vkr318drcipv9zz5qsx85ld95x7fsy0w6cpc6zlkwxsyb"; depends=[glmmML maxLik miscTools plm sandwich]; };
+  censReg = derive2 { name="censReg"; version="0.5-34"; sha256="025r19w40bc1vzz45sz1zywsfwp9p157mmlr4k78mvp6c096idwl"; depends=[glmmML maxLik miscTools plm sandwich]; };
   censable = derive2 { name="censable"; version="0.0.3"; sha256="15274slkqkmwvipjb7p58knwpmq6iahpik2dg80j96fjdrpppl0g"; depends=[dplyr magrittr memoise rlang sf stringr tibble tidycensus]; };
   censo2017 = derive2 { name="censo2017"; version="0.6.1"; sha256="02q25kxv6kxj3634xk7vd3mwa8qvnmagwyh020z9yq6l6qfn2s6b"; depends=[cli crayon DBI duckdb httr purrr rstudioapi tibble]; };
   censorcopula = derive2 { name="censorcopula"; version="2.0"; sha256="16pk4xlpliif02qznrhvl8qmrr6k4kknygqxcm83nsjxy6dcyga8"; depends=[copula]; };
@@ -7098,7 +7110,7 @@ in with self; {
   ceterisParibus = derive2 { name="ceterisParibus"; version="0.4.2"; sha256="0hxklydsqb69y5sv2hanp5ja9k0063swf5si1j6gcj15lp7phpif"; depends=[DALEX ggplot2 gower knitr]; };
   cfa = derive2 { name="cfa"; version="0.10-0"; sha256="12z58y4ls9m58wpj1xa4ir2p2apzxaskps05sxy2946m24i71zfk"; depends=[]; };
   cfbfastR = derive2 { name="cfbfastR"; version="1.6.4"; sha256="0harc4b3qxdb2gy01p6si7na8lrqjidw6ysndj12snyhdrx2id1m"; depends=[cli dplyr furrr future glue httr janitor jsonlite magrittr mgcv nnet progressr purrr rlang stringi stringr tibble tidyr xgboost]; };
-  cfda = derive2 { name="cfda"; version="0.9.11"; sha256="0zlsrbn5yc3cvj8b3kgkc6ah6lqdqx1315cz1qac4m9yx9cybvlg"; depends=[diagram fda ggplot2 mgcv msm pbapply]; };
+  cfda = derive2 { name="cfda"; version="0.9.12"; sha256="0xhw3vkvgzg1gg7zvnzp1xpja82791sgmclb0pbl7lcx2fbqigcx"; depends=[diagram fda ggplot2 mgcv msm pbapply]; };
   cfdecomp = derive2 { name="cfdecomp"; version="0.4.0"; sha256="0g61gpihk5kbbrqzn15fqjv3bawsq1vq3sdssbzs5j96afmf2aq8"; depends=[]; };
   cffdrs = derive2 { name="cffdrs"; version="1.8.18"; sha256="15bl1sfm2yz897b5w0x0kvyf2z3rx32n436gsnsx5gd32v5v18w1"; depends=[data_table doParallel foreach geosphere raster rgdal]; };
   cffr = derive2 { name="cffr"; version="0.2.1"; sha256="0xnql538s5q8vdky343knkld7b400z22mx7znib17an7jjd4wz6v"; depends=[crayon desc jsonlite jsonvalidate yaml]; };
@@ -7132,7 +7144,7 @@ in with self; {
   changepoints = derive2 { name="changepoints"; version="1.0.0"; sha256="0ilzanfinzkadflknr9b4l9s1y2yl6vs4h5z1zi6kp9qps2asd10"; depends=[data_tree gglasso glmnet ks MASS Rcpp RcppArmadillo]; };
   changepointsHD = derive2 { name="changepointsHD"; version="0.3.3"; sha256="1wdhmkg21kb5jd95a0aqqp2qgdkndc69rbdxjf792gq8f1rigarh"; depends=[Rcpp RcppArmadillo]; };
   changepointsVar = derive2 { name="changepointsVar"; version="0.1.0"; sha256="0kj9m9jik1dm5fx4c4hb559f5irpl1mvxk4wwajd5577a2fdqxb5"; depends=[lars MASS]; };
-  changer = derive2 { name="changer"; version="0.0.3"; sha256="1pmnspadkshz7z9f275vks1xjh6a9k37h7j51dqdjrqilzq7y6sf"; depends=[available devtools git2r]; };
+  changer = derive2 { name="changer"; version="0.0.4-1"; sha256="0d5rh5a7ja5n390ikys939j8wc8kyvrv7pddpnzj8vmq7a90zzkd"; depends=[available devtools git2r]; };
   chantrics = derive2 { name="chantrics"; version="1.0.0"; sha256="0123mbdr4bkkp8w9w15bg9qxkbpd6nyp602fw690zsy1dyimm78k"; depends=[AER chandwich lmtest progress purrr rlang sandwich]; };
   charlatan = derive2 { name="charlatan"; version="0.4.0"; sha256="0hrc4kdympi05j6gx0x6vy4jb1mvxxi7pcrnpzcp8vxvd6r3wjmq"; depends=[R6 tibble whisker]; };
   chartql = derive2 { name="chartql"; version="0.1.0"; sha256="108csn7q8qrjhiss54f5bliv3av7psq7kfryspajbdb6wm9ciz3p"; depends=[ggplot2 stringr]; };
@@ -7155,7 +7167,7 @@ in with self; {
   cherryblossom = derive2 { name="cherryblossom"; version="0.1.0"; sha256="1fn0xi65y0w1gmyrjlh8lb2is34r2dc5bym0ynrgjv8h595nzhwp"; depends=[]; };
   chess = derive2 { name="chess"; version="1.0.1"; sha256="0b0lz8r48bvksjnh385p1ni22hw1yvs6255pjbpj49ga9dwziin0"; depends=[cli magrittr purrr reticulate rsvg]; };
   chessR = derive2 { name="chessR"; version="1.5.0"; sha256="0ikpr4xaysnjzclj1x9lq8fm7rak2z5y3wn9494dk6lgwmk3hrr6"; depends=[curl dplyr jsonlite lubridate magrittr purrr rlang rvest stringr tidyr xml2]; };
-  chest = derive2 { name="chest"; version="0.3.5"; sha256="0jmihq8p6gxyxgmpdgwmnhl98s38pqzdzdqzqiy54zyqgd69plh8"; depends=[broom dplyr forestplot generics ggplot2 MASS speedglm survival tibble]; };
+  chest = derive2 { name="chest"; version="0.3.6"; sha256="12n65l4r85cr16c3p2w1krnqnxkvalrpi8xnbzw4y2m0sp42ydgl"; depends=[broom dplyr forestplot ggplot2 MASS speedglm survival tibble]; };
   chi = derive2 { name="chi"; version="0.1"; sha256="1y91mwahj4j2wz0y5k5vdpq7ygq834h8jkn37n74lqnwvv1968rr"; depends=[]; };
   chi2x3way = derive2 { name="chi2x3way"; version="1.1"; sha256="13qc8sigiw4gcxk8y50q7yfgzbssjyl41fizzjqzcp3p14kpsmzw"; depends=[]; };
   chicane = derive2 { name="chicane"; version="0.1.8"; sha256="0963r5jzyjihidh18ny9nqkim00bys3psdgrxhbah43bbl0kx43r"; depends=[bedr data_table doParallel foreach gamlss gamlss_tr iterators knitr MASS rmarkdown]; };
@@ -7163,13 +7175,14 @@ in with self; {
   childdevdata = derive2 { name="childdevdata"; version="1.1.0"; sha256="016x6xhqq1mfqlj9m5qv63k639xnqnrf5h6rdcyaa8sxn7nv34zm"; depends=[]; };
   childesr = derive2 { name="childesr"; version="0.2.3"; sha256="1a58s0zph4mfmh9sdfbv7yaa20lx5gi0mca0ikzarfwxjl5knp39"; depends=[DBI dbplyr dplyr jsonlite magrittr purrr RMySQL]; };
   childhoodmortality = derive2 { name="childhoodmortality"; version="0.3.0"; sha256="1ixd10jyzgr1ssnjas35kngpsqyjzl73wwpvcspv06cn12sv2b8d"; depends=[dplyr matrixStats plyr]; };
-  childsds = derive2 { name="childsds"; version="0.7.6"; sha256="1h3p80byfma8zhivlq9jmdszm793chggnhb93qjnbl3vmnmnxgg7"; depends=[boot class dplyr gamlss gamlss_dist magrittr purrr purrrlyr reshape2 tibble tidyr VGAM]; };
+  childsds = derive2 { name="childsds"; version="0.8.0"; sha256="1vv02kbw17b8zva2yc1qgi750z9yhyfv5xbig29dhyzvj8k00yvb"; depends=[boot class dplyr gamlss gamlss_dist magrittr purrr purrrlyr reshape2 tibble tidyr VGAM]; };
   chilemapas = derive2 { name="chilemapas"; version="0.2"; sha256="0s2f5bhr7d64rlk4x7cv6zjrbnf5g86lgg026svgrdxvs1vqa4as"; depends=[dplyr magrittr rlang rmapshaper sf stringr]; };
   chillR = derive2 { name="chillR"; version="0.72.7"; sha256="0wjxvrinl2zshgq15pm2l4ibl3y7aihg767sn8awvcdywl0dfkxx"; depends=[assertthat dplyr fields GenSA ggplot2 httr jsonlite Kendall metR patchwork pls plyr R_utils raster Rcpp RCurl readxl reshape2 rlang RMAWGEN scales sp stringr tidyr XML]; };
   chinese_misc = derive2 { name="chinese.misc"; version="0.2.3"; sha256="0hlna52g00nh3908wgpb9ldgghff3gfjx24vmk5gikkazdqk9zrh"; depends=[jiebaR Matrix NLP purrr slam stringi tm]; };
   chipPCR = derive2 { name="chipPCR"; version="1.0-2"; sha256="0q30ncnvbipvqbpxrx2yb68i2ybdfl1fbzj3f12dd2wmjjl72q1x"; depends=[lmtest MASS outliers ptw quantreg Rfit robustbase shiny signal]; };
   chirps = derive2 { name="chirps"; version="0.1.4"; sha256="1yj91rvcsfsr2nmvk7qnxwfkbiblm4bdazs2p83g8ax4fwkrp39c"; depends=[httr jsonlite sf terra]; };
   chisq_posthoc_test = derive2 { name="chisq.posthoc.test"; version="0.1.2"; sha256="0lvj3jqhaj1ijjpzvpq3fn3a1y3fgv69pxh91j6k958pn6vmp40i"; depends=[]; };
+  chisquare = derive2 { name="chisquare"; version="0.1"; sha256="000y0wk2gh6yd4bh2n50v6zjr19ims6g7v7a1jc89iccqcgnff43"; depends=[formattable]; };
   chk = derive2 { name="chk"; version="0.8.0"; sha256="10gcv00mgi88vgxr9jrs0ar67crmdcdi4m9g86cm6pg3ly0v097y"; depends=[lifecycle rlang]; };
   chlorpromazineR = derive2 { name="chlorpromazineR"; version="0.2.0"; sha256="0w7v6xk3vyf9dyf9bh5v9516v78yhcdvy7h1140pg2yw8xmfyr0r"; depends=[]; };
   chngpt = derive2 { name="chngpt"; version="2021.5-12"; sha256="00g724b0w7dd95s2k9x10yi9xz2qfkxrpa98npbfq2w1pb8mgc57"; depends=[boot kyotil lme4 MASS RhpcBLASctl survival]; };
@@ -7184,24 +7197,23 @@ in with self; {
   chorrrds = derive2 { name="chorrrds"; version="0.1.9.5"; sha256="045m3hqfk63zlb44s07wflaawzn030fg0nqck4w852m52a0r1z5v"; depends=[dplyr forcats magrittr purrr rlang rvest stringr xml2]; };
   christmas = derive2 { name="christmas"; version="1.1.1"; sha256="0lxz71vbfqngkn4mg0c74ainww3vbzn8f4s5kmnw5bsd2mmwism7"; depends=[animation]; };
   chromer = derive2 { name="chromer"; version="0.1"; sha256="0fzl2ahvzyylrh4247w9yjmwib42q96iyhdlldchj97sld66c817"; depends=[data_table dplyr httr]; };
-  chromoMap = derive2 { name="chromoMap"; version="0.3.1"; sha256="06iy8rip99bsw5vadf6f7gpxarj4hs2japjq39zgzws8rrzvqccm"; depends=[htmltools htmlwidgets]; };
+  chromoMap = derive2 { name="chromoMap"; version="0.4.1"; sha256="0iiiwxzbq2d3vrzijgw1ahrw1zkk55bvp2g31jjfzzff3xs05h23"; depends=[htmltools htmlwidgets]; };
   chromseq = derive2 { name="chromseq"; version="0.1.3"; sha256="0m9dnm50iw176ffn6syd3538hxmjhkrxfzaf13210q100wk0lgz2"; depends=[]; };
   chron = derive2 { name="chron"; version="2.3-56"; sha256="0p9zz96jfyf139924hdwkzhr8knkjvx6547ac53rknm3a6wwngl6"; depends=[]; };
   chronicle = derive2 { name="chronicle"; version="0.3"; sha256="0yfrxr93fbxgpxjs1gb56pdx1kk4nn9xvy2csgl1rhzrgbl343m3"; depends=[data_table dplyr DT dygraphs ggplot2 glue knitr magrittr plotly prettydoc purrr readr rlang rmarkdown rmdformats scales skimr viridis zoo]; };
   chronochrt = derive2 { name="chronochrt"; version="0.1.0"; sha256="0n4921bxh7v5gbq65dsppcj9hs54ay6s219cmzqwhlgb2pv0mhmp"; depends=[dplyr ggplot2 magick magrittr readr rlang tibble tidyr tidyselect]; };
   chronosphere = derive2 { name="chronosphere"; version="0.4.1"; sha256="1x4w4kap7cwkmrq4v6bvhlzm299i8chh4k02873ipnnqrhjxdhka"; depends=[raster sp]; };
   chunkR = derive2 { name="chunkR"; version="1.1.1"; sha256="1kw3hsx5k4cdicx0hc1v0mf2nzvqg95shx2xv05vb2pass48qw48"; depends=[Rcpp]; };
-  chunked = derive2 { name="chunked"; version="0.5.1"; sha256="08gw05bng4p35kfd9zcxz1l73jhlxlymw55vrsl6f2771l1r4bz5"; depends=[DBI dplyr LaF progress rlang]; };
+  chunked = derive2 { name="chunked"; version="0.6.0"; sha256="1j16am4nzwy2ckisksl5mk8h05ala6lpdd5qrb1gwyrhli4lx45a"; depends=[DBI dplyr LaF progress rlang]; };
   chunkhooks = derive2 { name="chunkhooks"; version="0.0.1"; sha256="1kps7widb9ql01njy8xl03lplrybl2ci5fvx5vzzwnwps6s4y3fm"; depends=[knitr measurements prettyunits]; };
   chyper = derive2 { name="chyper"; version="0.3.1"; sha256="0ps66gqngi38lz8sq4zsvdbmj0qn4pz8aax9dgmngmwb8hdd503r"; depends=[]; };
   ciTools = derive2 { name="ciTools"; version="0.6.1"; sha256="0d6aq4wcxi1q59g4kfx49x1li41rfwx2z2v4xzz2xkldn6h1794z"; depends=[arm boot dplyr lme4 MASS survival]; };
   ciccr = derive2 { name="ciccr"; version="0.2.0"; sha256="0xmjqwlw2xq332pyagrn8ay6ipyvmxw1q7zf4cza4ly2mz9mf1ws"; depends=[]; };
   cicerone = derive2 { name="cicerone"; version="1.0.4"; sha256="1z3i720970kmczg01wxwbyqwd9zby69lchw3pgqwpn2bjr66jimh"; depends=[assertthat R6 shiny]; };
-  cif = derive2 { name="cif"; version="0.0.9"; sha256="1rs44di1qjf6j89xg2x0a3s3lsnqxwnz0wcnys8xp68q198gipb6"; depends=[lubridate]; };
+  cif = derive2 { name="cif"; version="0.1.1"; sha256="0z0dpq5vyv8s4cn4y8ph8y4b8nb63bkqsjmlixa1kr29l132gj1l"; depends=[lubridate]; };
   cifti = derive2 { name="cifti"; version="0.4.5"; sha256="092334lcpkzv52bg53hzx64dnrwq67f3p9fzwchmafx1l46xrqx9"; depends=[gifti oro_nifti R_utils xml2]; };
   ciftiTools = derive2 { name="ciftiTools"; version="0.8.0"; sha256="0riladbcjgx4xgjxd1hbiaaghpgr5qn7lvgrpky4xhng8qycckp7"; depends=[fields gifti oro_nifti RColorBrewer rgl RNifti viridisLite xml2]; };
   cimir = derive2 { name="cimir"; version="0.4-1"; sha256="0r8fmvqcihxsj0w1g2xm02wwqcgrwadbl5n1dzksw8zpcjfw7fkn"; depends=[curl dplyr glue jsonlite purrr rlang stringr tidyr]; };
-  cin = derive2 { name="cin"; version="0.1"; sha256="1pwvy5nh5nrnysfqrzllb9fcrpddqg02c7iw3w9fij2h8s2v6kq5"; depends=[]; };
   cinaR = derive2 { name="cinaR"; version="0.2.1"; sha256="0i0fkh5j494fy9zy0p67ashqsa7vw3jhf092sw3nfyvmb7k4spnj"; depends=[ChIPseeker DESeq2 dplyr edgeR fgsea GenomicRanges ggplot2 ggrepel limma pheatmap preprocessCore RColorBrewer sva TxDb_Hsapiens_UCSC_hg19_knownGene TxDb_Hsapiens_UCSC_hg38_knownGene TxDb_Mmusculus_UCSC_mm10_knownGene writexl]; };
   cinaRgenesets = derive2 { name="cinaRgenesets"; version="0.1.1"; sha256="0pz3iw559d8rsxmnwd1cqcpv8qnnh9bfvc9ydzwznx8jczbldls8"; depends=[]; };
   cinterpolate = derive2 { name="cinterpolate"; version="1.0.0"; sha256="1aw6hs41xin2hhgmi4pr5510v4sn6x735lachpc5gpbxch5h3f82"; depends=[]; };
@@ -7209,8 +7221,8 @@ in with self; {
   circacompare = derive2 { name="circacompare"; version="0.1.1"; sha256="15vpnh20wni2wmp86xql9737kbxbi28s9a4pi3rihr1w5mcgqfaj"; depends=[ggplot2]; };
   circle = derive2 { name="circle"; version="0.7.1"; sha256="04gb3575sdlhh5z6bkam8sj2wg9npgq0b9572qm2dlrspmjqvcd4"; depends=[cli httr jsonlite]; };
   circletyper = derive2 { name="circletyper"; version="1.0.1"; sha256="11jqcz0faxd7g50nmxa58c3gyaysvzcrgh6yalpxapz06md17wq5"; depends=[shiny]; };
-  circlize = derive2 { name="circlize"; version="0.4.13"; sha256="16rnqlkgzhnm69y70k9fiz8vvwlm5dyng04hlxqvvaxix3wdpfkc"; depends=[colorspace GlobalOptions shape]; };
-  circular = derive2 { name="circular"; version="0.4-93"; sha256="0hki85rs8wc5950pjaw28q54rly2napfbcrx3pchlfap6wwy5kkn"; depends=[boot mvtnorm]; };
+  circlize = derive2 { name="circlize"; version="0.4.14"; sha256="0b0yqjmbj1s1jg7y6cgyawadlfv0i6xrls8a4qy9qs7hz8zrpvb1"; depends=[colorspace GlobalOptions shape]; };
+  circular = derive2 { name="circular"; version="0.4-94"; sha256="0wanbd6n7g1avvyc7pm0lnkwg868dix2byiz4wm6vmxzm0y47fmr"; depends=[boot mvtnorm]; };
   circularEV = derive2 { name="circularEV"; version="0.1.0"; sha256="03qr0sfiqpz0zvm9xihwi07snhxkj5h6bcsxhrsr89xyb70wqwg0"; depends=[circular doParallel foreach ggplot2 mgcv NPCirc]; };
   circumplex = derive2 { name="circumplex"; version="0.3.8"; sha256="1c6h06ccsql3yy3304b537wl40wd8f0sgj3gwi376irfz5zq227j"; depends=[assertthat boot dplyr ggforce ggplot2 htmlTable magrittr purrr Rcpp RcppArmadillo rlang tibble tidyr]; };
   cit = derive2 { name="cit"; version="2.3.1"; sha256="1i1179d0rjnmrlwh031dxmvwp2w6k1c9fj5g3cfmzjk4xxb2bjha"; depends=[]; };
@@ -7224,7 +7236,8 @@ in with self; {
   ciuupi = derive2 { name="ciuupi"; version="1.1.0"; sha256="0czfmmf62p1vml24s87pdwv52spqycchpkqzwk8vyd4n1z27r5s2"; depends=[functional nloptr pracma statmod]; };
   ciuupi2 = derive2 { name="ciuupi2"; version="1.0.1"; sha256="04x02qmqqyrc4h4z4mpl4zn5vr9y28k6j6n30fbr9q238zd543db"; depends=[functional nloptr pracma PreciseSums statmod]; };
   civis = derive2 { name="civis"; version="3.0.0"; sha256="12q96bj21832zqqbisfxmnpqw7w72v350lyf7cpjgr7cq7b51brd"; depends=[future httr jsonlite memoise]; };
-  cjbart = derive2 { name="cjbart"; version="0.2.0"; sha256="04zcy1051q9kgvjf9y3a952qz07r2syw80asndg9hbwx0jbvvpqm"; depends=[BART ggplot2 randomForestSRC Rdpack rlang tidyr]; };
+  cjar = derive2 { name="cjar"; version="0.1.0"; sha256="1lachh62jsv4risbn4krd59hd8ni22figkfznh03w1mzygbvrkbg"; depends=[assertthat dplyr glue httr jose jsonlite lubridate magrittr memoise openssl progress purrr R6 rlang stringr tibble vctrs]; };
+  cjbart = derive2 { name="cjbart"; version="0.2.2"; sha256="11ml35q1vjc696n6pwpbhzhf6g9r62l1yahbwkqbyd1jnkhpxmw4"; depends=[BART ggplot2 randomForestSRC Rdpack rlang tidyr]; };
   cjoint = derive2 { name="cjoint"; version="2.1.0"; sha256="1bs380ji9vsc1d77wqhl0ij9xblww3g9x3hiwpcpz26wihqcx7ac"; depends=[DT ggplot2 lmtest Matrix sandwich shiny shinyBS shinyjs survey]; };
   ckanr = derive2 { name="ckanr"; version="0.6.0"; sha256="1fhyyyklfsi1zva9vg397x8p0zbnchajkjb1kcfm4f861xq60j16"; depends=[crul DBI dbplyr dplyr jsonlite magrittr]; };
   clValid = derive2 { name="clValid"; version="0.7"; sha256="18aiyjhnh5mfdxbzns4cy0r8bymfikhwkybpn4g04qhli5ls8z83"; depends=[class cluster]; };
@@ -7239,9 +7252,11 @@ in with self; {
   classifierplots = derive2 { name="classifierplots"; version="1.4.0"; sha256="0agxm3vrbs8lqhk1xvfc3wzf0q0hxhgyp23j5qi5mi1drgnw1jj1"; depends=[caret data_table ggplot2 gridExtra png Rcpp ROCR]; };
   classifly = derive2 { name="classifly"; version="0.4"; sha256="0mw1vcas0gr1r4yvh0j02zhk7kp5342r0bhhg776hqgqdczgh5zj"; depends=[class plyr]; };
   classmap = derive2 { name="classmap"; version="1.2.0"; sha256="0f5b1hx1n72042kkzkl4n9vr2w7q1pc1ivl0n907k4a7jzi3q63k"; depends=[cellWise cluster e1071 ggplot2 gridExtra kernlab randomForest robustbase rpart]; };
+  classyfireR = derive2 { name="classyfireR"; version="0.3.8"; sha256="1k1j4p5xmracrlaxfmvpp1r6krirvpfrv0f0jq8377kmhxmdwmm5"; depends=[cli clisymbols crayon dplyr httr jsonlite magrittr purrr rjson RSQLite stringr tibble tidyjson tidyr]; };
   cld2 = derive2 { name="cld2"; version="1.2.1"; sha256="01p64r2ij1i0xm3835vfnpxmmbnnaigp0md9x1hrq8gfsdwnzv3x"; depends=[Rcpp]; };
   cld3 = derive2 { name="cld3"; version="1.4.2"; sha256="1f276kpg5ir1dmaacii55zb05d9r11995zv70lzrs4jn3q2h3qn6"; depends=[Rcpp]; };
   clda = derive2 { name="clda"; version="0.1"; sha256="03zfanvpz1h42h2z38a63fck1p5hqig4w2svknzpw7mryji5q9b1"; depends=[MASS]; };
+  cleaR = derive2 { name="cleaR"; version="0.0.1"; sha256="080jgkrzhk1h16ijf4q0x7ks9f96sx92dgxvqz22956gm0q8yxjy"; depends=[]; };
   clean = derive2 { name="clean"; version="2.0.0"; sha256="0zvk3a5yz54g2mn7y1d91z6ljglbyq1hkh4iip1dfyi15chrqv7y"; depends=[cleaner]; };
   cleanNLP = derive2 { name="cleanNLP"; version="3.0.3"; sha256="0bc0ya36yhknqhqc76yf9clgiacyb6zypzirzg6i0213bqw2ihdp"; depends=[Matrix reticulate stringi udpipe]; };
   cleanTS = derive2 { name="cleanTS"; version="0.1.0"; sha256="0axrc6ax2d37mlx2cix9jbk9j2ksa86g074w70lymvl40f0zaz41"; depends=[anomalize data_table gganimate ggplot2 ggtext glue imputeTestbench imputeTS lubridate shiny stringr tibble tibbletime transformr]; };
@@ -7255,7 +7270,7 @@ in with self; {
   clespr = derive2 { name="clespr"; version="1.1.2"; sha256="1993kd70w48a110im47vcpll0c6nfrm7m33r6l8rzgwnpsmcls8g"; depends=[AER clordr doParallel foreach magic MASS pbivnorm survival]; };
   clevr = derive2 { name="clevr"; version="0.1.1"; sha256="077qhqfzcy1ciar70df7q98ms003b9mnqgji1nxkx5ncw9hdkzd4"; depends=[BH Matrix Rcpp]; };
   clhs = derive2 { name="clhs"; version="0.9.0"; sha256="04hd0p51j15294fv1a9qx61p5yfmh8hcx784v3x1s0kx7km34saz"; depends=[cluster ggplot2 plyr raster Rcpp RcppArmadillo reshape2 sf sp]; };
-  cli = derive2 { name="cli"; version="3.1.1"; sha256="1kslrx22djrs3wnf5xyligwy7h4hzsn5awl946x961fn980ydcy8"; depends=[glue]; };
+  cli = derive2 { name="cli"; version="3.2.0"; sha256="0qp8k1afrn6ppwi6d9n05fjgj02196qcsppji3q37ph99msinnnd"; depends=[glue]; };
   cliapp = derive2 { name="cliapp"; version="0.1.1"; sha256="0v62lbcsja0xmlpqcps370n5c7bk4j2n8pwh9xyif5s4wpf82qz1"; depends=[cli crayon fansi glue prettycode progress R6 selectr withr xml2]; };
   clickR = derive2 { name="clickR"; version="0.8.0"; sha256="0j8hl5cgdm4j4h3x3h7fp6w3xr8p350icvmf123z56f6fkj6c22z"; depends=[beeswarm stringdist]; };
   clickstream = derive2 { name="clickstream"; version="1.3.1"; sha256="0z1yy5lr9m5x9ybimjy3f6kn490abdi038xi0qw7ny80f1ca6ry7"; depends=[arules ClickClust data_table ggplot2 igraph linprog MASS plyr reshape2 Rsolnp]; };
@@ -7263,27 +7278,27 @@ in with self; {
   clifford = derive2 { name="clifford"; version="1.0-5"; sha256="1n7wra4z73nxv2hkdl65iwfl9cr3wn7sa6wpvfg1c7yp72kskbp0"; depends=[BH disordR magrittr mathjaxr partitions Rcpp]; };
   clifro = derive2 { name="clifro"; version="3.2-5"; sha256="1p2xy5r9axkj8yk6ywaq0w5i00bdfm15drjz227nx8p4vd3q6si8"; depends=[ggplot2 httr lubridate magrittr RColorBrewer reshape2 rvest scales stringr xml2]; };
   clikcorr = derive2 { name="clikcorr"; version="1.0"; sha256="0zdnbcl5q293mmm6pbn4ri7p1q6z6sff74axsb3nyd153v2xamr5"; depends=[mvtnorm]; };
-  climaemet = derive2 { name="climaemet"; version="1.0.0"; sha256="19i89274m7ybnlzgm5bgw6nwiwicc3fd2clmgiqklr23sq8zvn6w"; depends=[dplyr ggplot2 httr jsonlite lubridate rappdirs readr rlang tibble tidyr]; };
-  climate = derive2 { name="climate"; version="1.0.3"; sha256="0wdns4zndnc4k2f6k22imr85glld9lsg3l43cprn0r8vcnzlhn08"; depends=[curl data_table httr XML]; };
+  climaemet = derive2 { name="climaemet"; version="1.0.1"; sha256="1kvv0xbdcgkyg0pj7hs1552dqvl94z5gvik9p77lzq65kb17zsmg"; depends=[dplyr ggplot2 httr jsonlite rappdirs readr rlang tibble tidyr]; };
+  climate = derive2 { name="climate"; version="1.0.4"; sha256="03yccy41rsxa7vy1qjpdkhfnbaaz4nndrn7zbn2lk746pdckhkmz"; depends=[curl data_table httr XML]; };
   climateStability = derive2 { name="climateStability"; version="0.1.3"; sha256="1zag722sznr22xid2v1k4a9sh3sr3grfa3wwd2m943zpvyi1sk9a"; depends=[raster]; };
   climatol = derive2 { name="climatol"; version="3.1.2"; sha256="0p3nk4n7izj0cmmqd9apa1gix5lfdzp08ydy0n7rkl5kbkmrkb6n"; depends=[mapdata maps]; };
-  climatrends = derive2 { name="climatrends"; version="0.1.13"; sha256="1zpdh2fpgw3smksnagckhkayy6ccj8gixsdg51isk18gc8gqh7aw"; depends=[]; };
+  climatrends = derive2 { name="climatrends"; version="0.2"; sha256="1jhj8h4as0qkbf4692z4rcvpg86cfs2fjks386gn0q1ayqn0cq91"; depends=[]; };
   climdex_pcic = derive2 { name="climdex.pcic"; version="1.1-11"; sha256="01ax0kas43g3h21ixzc80f9gl4m9846gmk8v48rr0gkhcmbcc6jx"; depends=[PCICt Rcpp]; };
   clime = derive2 { name="clime"; version="0.4.1"; sha256="0qs9i7cprxddg1cmxhnmcfhl7v7g1r519ff2zfipxbs59m5xk9sf"; depends=[lpSolve]; };
   climextRemes = derive2 { name="climextRemes"; version="0.2.2"; sha256="04ra2xqkf9zg7hbmb5ycfql9nwkabxy8412d05ajshld4cr0gi45"; depends=[boot extRemes]; };
   climwin = derive2 { name="climwin"; version="1.2.3"; sha256="1r2x5941k8l9z3517389y120sfhrskdpchc0pkibznza8aa95r85"; depends=[evd ggplot2 gridExtra lme4 lubridate Matrix MuMIn nlme numDeriv RcppRoll reshape]; };
   clinDR = derive2 { name="clinDR"; version="2.3.5"; sha256="0p5pq0kpm8sfxv1a1dp2wyykp1qqbxbjz0c4f20igc25aazd7kaz"; depends=[doParallel DoseFinding dplyr foreach ggplot2 glue magrittr purrr rstan shiny tibble tidyr waiter]; };
-  clinDataReview = derive2 { name="clinDataReview"; version="1.2.1"; sha256="1p4kq18nkf5iqni17ry7zzxax85iri1v8nwn4vgwsv8qw8k29r8r"; depends=[bookdown clinUtils crosstalk data_table ggplot2 haven htmltools htmlwidgets jsonlite jsonvalidate knitr plotly plyr rmarkdown stringr yaml]; };
+  clinDataReview = derive2 { name="clinDataReview"; version="1.2.2"; sha256="0j9w2fvbar30c03zcbhmy8qgdcv5hwj0q873hslxs9l4sca108zd"; depends=[bookdown clinUtils crosstalk data_table ggplot2 haven htmltools htmlwidgets jsonlite jsonvalidate knitr plotly plyr rmarkdown stringr yaml]; };
   clinPK = derive2 { name="clinPK"; version="0.9.0"; sha256="1n1m8szd8mxdshwz8l3hfdxi7zrmsah46kxkv7jiffwnfhijfhsm"; depends=[curl testit]; };
   clinUtiDNA = derive2 { name="clinUtiDNA"; version="1.0"; sha256="0x3hb09073gkh60fc8ia0sfk948sm6z6j8sqkz275k4m8ryrabas"; depends=[]; };
-  clinUtils = derive2 { name="clinUtils"; version="0.1.0"; sha256="1sd71jxb0h69kpqj0606v4km2m28acqc8a5d4nhvr97l7isdm9lv"; depends=[crosstalk data_table DT haven htmlwidgets knitr plyr viridisLite]; };
-  clinfun = derive2 { name="clinfun"; version="1.0.15"; sha256="0cv1kdxj911scri82ms21lk9frsdp4251fawdsbqinby7k6hhmkc"; depends=[mvtnorm]; };
+  clinUtils = derive2 { name="clinUtils"; version="0.1.1"; sha256="0j06plczw3k54yc07dv6x931nmg2cfvkcmza16pji1zlx7nzs3sc"; depends=[crosstalk data_table DT haven htmlwidgets knitr plyr viridisLite]; };
+  clinfun = derive2 { name="clinfun"; version="1.1.0"; sha256="1fca5nd36xzb50ccbwrb4xxvzhqg7s60smwr42k5z9sfywfh79y8"; depends=[mvtnorm]; };
   clinmon = derive2 { name="clinmon"; version="0.6.0"; sha256="0cd5mrirfll0zbm9k8glwdqnh4qy4dlfnsypr3xhyf6ppgm35hlv"; depends=[signal]; };
   clinsig = derive2 { name="clinsig"; version="1.2"; sha256="1wgfl9kks57yizrf8z6x7dhmbl3a80q8nnj3a5n2hpc9yr8l9ijf"; depends=[]; };
   clinspacy = derive2 { name="clinspacy"; version="1.0.2"; sha256="134nvkircy1a1rmsg2nszk2r8bcdmikmrx6plchdz8gxyjd6jmya"; depends=[assertthat data_table magrittr rappdirs reticulate]; };
-  clintools = derive2 { name="clintools"; version="0.9.2"; sha256="1jz5mp5yvd4sc7i8z5y7chxz7gnvpcl5961g8jk01580knpnsz7b"; depends=[lme4 signal xml2]; };
+  clintools = derive2 { name="clintools"; version="0.9.3"; sha256="0cf0gc3nhhjp5mf90qnbxfl6dsxjfbvddfw88xhi6j5nnfaxd44x"; depends=[lme4 signal xml2]; };
   clipp = derive2 { name="clipp"; version="1.1.0"; sha256="1mh3rhkjm13yp1890d7zy2qn50nv177z74kr4pgnp5i7vlr8zqr6"; depends=[]; };
-  clipr = derive2 { name="clipr"; version="0.7.1"; sha256="1ywa4kipwc2d7na6iiz3wzdah99h6aynnh74yxl3nzl40xxlgbgz"; depends=[]; };
+  clipr = derive2 { name="clipr"; version="0.8.0"; sha256="1s9vvv3cxnz8w11gsi8z9ddv9jzib5qf5qqxnwqrrv7vj8cr7hij"; depends=[]; };
   clisymbols = derive2 { name="clisymbols"; version="1.2.0"; sha256="1q7gi2zmykhzas9v8fdnbpdq7pzdcpbhim1yxvd2062l777g4j86"; depends=[]; };
   clock = derive2 { name="clock"; version="0.6.0"; sha256="0vx77zgb19khwikvbl4cw6v0zkgxdz79l9j1knfl5l2cn4nj7sl5"; depends=[cpp11 ellipsis rlang tzdb vctrs]; };
   clockify = derive2 { name="clockify"; version="0.0.9"; sha256="1m8jpafraycb85g7z4nna3isjyd5vfacbrxwpgn9745rbkg5iwly"; depends=[anytime dplyr httr janitor logger lubridate purrr tibble tidyr]; };
@@ -7293,7 +7308,7 @@ in with self; {
   clordr = derive2 { name="clordr"; version="1.6.0"; sha256="1w9km87wndr4fssfn7c9g2sy5lnk1ik0sqqwqyas7qc2h48la4di"; depends=[doParallel foreach MASS pbivnorm rootSolve tmvmixnorm ttutils]; };
   cloudUtil = derive2 { name="cloudUtil"; version="0.1.12"; sha256="18g946j00anlk20d0fh01w0xyj1kwyy7jhlgz5a85wmp6s2gkz74"; depends=[]; };
   cloudml = derive2 { name="cloudml"; version="0.6.1"; sha256="1j15q9yb2rc4fbjxfh21fiq6is8dnb8nfyi7g8iazgfwb3p9ahpx"; depends=[config jsonlite packrat processx rprojroot rstudioapi tfruns withr yaml]; };
-  cloudos = derive2 { name="cloudos"; version="0.2.0"; sha256="0n0ldg81k6i0wqnzzimkr7pyi2q705g9hia4ckf1cp2sskgrfvj0"; depends=[dplyr ggplot2 httr jsonlite rappdirs tibble]; };
+  cloudos = derive2 { name="cloudos"; version="0.3.0"; sha256="1rb82p77ipwvc57h46ph9gy0p6a4sq6mcz1cmq29jhs5by87kr21"; depends=[dplyr ggplot2 httr jsonlite rappdirs tibble tidyr]; };
   cloudstoR = derive2 { name="cloudstoR"; version="0.2.0"; sha256="0x9pl9x5sjs5vwcz5i1r5ymyv3rlv9adjc5y9kvxljdxgvnv6i08"; depends=[cli curl getPass httr keyring rio XML]; };
   clr = derive2 { name="clr"; version="0.1.2"; sha256="088ks9lrhlyvg3yvlfmb0091yp6qp5bzg9h5r6ryv3bk6y56sajx"; depends=[dplyr lubridate magrittr]; };
   clttools = derive2 { name="clttools"; version="1.3"; sha256="0va9k1b4xsb2sgpxzvid6sa8m6b8i3r4kgghclmb78nnrs480cwi"; depends=[]; };
@@ -7303,6 +7318,7 @@ in with self; {
   cluscov = derive2 { name="cluscov"; version="1.1.0"; sha256="0345v5r6b53243h5bir29v0w77pmwjqjkqfrjnk5j5r1wbh98q1w"; depends=[MASS quantreg]; };
   clusrank = derive2 { name="clusrank"; version="1.0-2"; sha256="1kpcdq0mnanfnbsbpbcv96ijgf2gv3n6i69jihmw8id7mjqjh2a9"; depends=[MASS Rcpp]; };
   clust_bin_pair = derive2 { name="clust.bin.pair"; version="0.1.2"; sha256="11lqd3vmx4kg08n6iv9na8rra49dkldx4f8jyf43hppbjrbvfinm"; depends=[]; };
+  clustAnalytics = derive2 { name="clustAnalytics"; version="0.3.1"; sha256="1himrajf9fw7j06bq0y0l6k10wa9fsn1v9bdk95jfkjfyna71vc2"; depends=[boot dplyr fossil igraph mcclust mclust Rcpp Rdpack truncnorm]; };
   clustDRM = derive2 { name="clustDRM"; version="0.1-0"; sha256="1c5z08a15scp3nrwyh0c03pdaawvm3ivbygqpbglwxim7zf73rd2"; depends=[caret doParallel DoseFinding DT foreach IsoGene MCPMod multcomp ORCME ORIClust pheatmap RColorBrewer readr shiny]; };
   clustEff = derive2 { name="clustEff"; version="0.2.0"; sha256="0kh3jzzqnchkgp0w1pz2sjxr215lyjh62v5857g94h91h5kn70y6"; depends=[cluster fda ggplot2 ggpubr qrcm]; };
   clustMD = derive2 { name="clustMD"; version="1.2.1"; sha256="0w4s9dab2mm5x0xibyl6s101c64if945a2cmwin9psd95p76mcny"; depends=[ggplot2 MASS mclust msm mvtnorm reshape2 truncnorm viridis]; };
@@ -7310,6 +7326,7 @@ in with self; {
   clustcurv = derive2 { name="clustcurv"; version="2.0.1"; sha256="1xkl84pd1a3phl5yfm21yr5c0gbmmg1wk9b0lyl2x8466v5hl53q"; depends=[doParallel doRNG foreach ggfortify ggplot2 Gmedian npregfast RColorBrewer survival]; };
   cluster = derive2 { name="cluster"; version="2.1.2"; sha256="168l653ygkg21fwrqrf7lsqi5p6jzhgmcvhrwv7lznkdzdhag2jw"; depends=[]; };
   cluster_datasets = derive2 { name="cluster.datasets"; version="1.0-1"; sha256="0i68s9305q08fhynpq24qnlw03gg4hbk4184z3q3ycbi8njpr4il"; depends=[]; };
+  clusterCons = derive2 { name="clusterCons"; version="1.2"; sha256="1k1y6cqpb5fyi2mbx2i4jbiwz0fni44lnq0xnv3pl0x3dpscwh6q"; depends=[apcluster cluster lattice RColorBrewer]; };
   clusterCrit = derive2 { name="clusterCrit"; version="1.2.8"; sha256="10pz1bikdbkm2ky3xnagp0qv60whalavp6j39b4p7d75jj5xcxgk"; depends=[]; };
   clusterGeneration = derive2 { name="clusterGeneration"; version="1.3.7"; sha256="0p1dwl08bf20h7pnspnsycrp3v48nm2miwcnlklyc4gdyzc2jksk"; depends=[MASS]; };
   clusterGenomics = derive2 { name="clusterGenomics"; version="1.0"; sha256="127hvpg06is4x486g1d5x7dfkrbk7dj35qkds0pggnqxkq3wsc1c"; depends=[]; };
@@ -7336,12 +7353,12 @@ in with self; {
   cmaRs = derive2 { name="cmaRs"; version="0.1.1"; sha256="0y9p1r58q45adsb60fvdvqn6m0a6ad32vl15fsy9l83r7aimcwci"; depends=[AUC earth Matrix Rmosek Ryacas0 stringr]; };
   cmaes = derive2 { name="cmaes"; version="1.0-11"; sha256="1hwf49d1m660jdngqak9pqasysmpc4jcgr8m04szwbyzyy6xrm5k"; depends=[]; };
   cmaesr = derive2 { name="cmaesr"; version="1.0.3"; sha256="03zx2nrw24wmmjjpyh8pswasjjq0amf0g375fm2b3s111dx8fbj9"; depends=[BBmisc checkmate ggplot2 ParamHelpers smoof]; };
-  cmcR = derive2 { name="cmcR"; version="0.1.8"; sha256="06sxfmwrwplw0zghajaygzjlbl9cbnazn0sbff6n73ia8pl3yxkr"; depends=[assertthat dplyr ggnewscale ggplot2 imager magrittr purrr quantreg rlang scales stringr tibble tidyr x3ptools zoo]; };
+  cmcR = derive2 { name="cmcR"; version="0.1.9"; sha256="06pw7lbp85xfnglcc86h1b4ipy1igvf43ihpqm9m67d4jc9r6acs"; depends=[assertthat dplyr ggnewscale ggplot2 imager magrittr purrr quantreg rlang scales stringr tibble tidyr x3ptools zoo]; };
   cmce = derive2 { name="cmce"; version="0.1.0"; sha256="0d52ci906zbd4q43qylcyw93acxh7f20jn3r0k74ynyy47131dnd"; depends=[]; };
   cmdfun = derive2 { name="cmdfun"; version="1.0.2"; sha256="1pbcq7hi2lcmqnghmy3q2fsk0c9fy5m0637acyzmc096fxbx723j"; depends=[magrittr purrr R_utils rlang testthat usethis]; };
   cmenet = derive2 { name="cmenet"; version="0.1.1"; sha256="0f7bci6nn63q243i7wvhr9mqlf64gw8w042nc1lqb986p7zfxihk"; depends=[glmnet hierNet MASS Rcpp RcppArmadillo sparsenet]; };
-  cmfrec = derive2 { name="cmfrec"; version="3.3.1"; sha256="1rqma93wwmhn7zq8y48a46y74hx73xzc2x43nxn3qm1yk2wxifm3"; depends=[]; };
-  cml = derive2 { name="cml"; version="0.0.1"; sha256="18zzb1vldgn61jlds7p79wr13jl13q9icfiraj33kwdmx3q6yh2c"; depends=[MASS vegan]; };
+  cmfrec = derive2 { name="cmfrec"; version="3.4.2"; sha256="0qg2ssrijfsrpr4gl0rri7kxyf1s8ifdvsizpxm5r8srl0j64hq1"; depends=[]; };
+  cml = derive2 { name="cml"; version="0.0.2"; sha256="0i1c9xfrb5d5krza5p88cvnhkswp49csihy6ijwxqmqk20g78r3c"; depends=[MASS vegan]; };
   cmm = derive2 { name="cmm"; version="0.12"; sha256="0q6hs56hhi9vaanx7i7gg7ncv0h29lndla66g9chzmh3lchq3r20"; depends=[]; };
   cmmr = derive2 { name="cmmr"; version="0.1.2"; sha256="0nik1pzd1rckalvn7xh6s699kkdjnra3q3bn5x16c1lmpz5bp2s4"; depends=[httr progress RJSONIO]; };
   cmna = derive2 { name="cmna"; version="1.0.5"; sha256="161qc7q88ajm3l62bq03lpf35bdii1w1d111085zvs3hrf09iybw"; depends=[]; };
@@ -7365,6 +7382,7 @@ in with self; {
   cns = derive2 { name="cns"; version="0.1.0"; sha256="1kn1cq32pp05ag22n7iwjxn6lxpqn443npzk6vdskjm5pbnsc33k"; depends=[]; };
   cnum = derive2 { name="cnum"; version="0.1.3"; sha256="0iphbx5ii4ij0bi9nqdz793i4gk2164jlgz5xn8yzsayjmizhdk2"; depends=[BH Rcpp stringr]; };
   coRanking = derive2 { name="coRanking"; version="0.2.3"; sha256="09dq4xxpi632jb9vh96rsy2g51sn6apbccx9c8073hfsm078b4w6"; depends=[]; };
+  coala = derive2 { name="coala"; version="0.6.1"; sha256="0c29bwlls22gfkxyc51gx1fnk8725327j6kfvrjcg5ckyw5ydqhq"; depends=[assertthat digest R6 Rcpp RcppArmadillo rehh scrm]; };
   coalescentMCMC = derive2 { name="coalescentMCMC"; version="0.4-1"; sha256="0xxv1sw5byf84wdypg5sfazrmj75h4xpv7wh4x5cr9k0vgf80b3s"; depends=[ape coda lattice Matrix phangorn]; };
   coalitions = derive2 { name="coalitions"; version="0.6.20"; sha256="0v9345xscfdyn5qdj6ncwzbbpry942dlly91l997ba42f9j6qdjk"; depends=[checkmate dplyr ggplot2 gtools jsonlite lubridate magrittr purrr RCurl rlang rvest stringr tibble tidyr xml2]; };
   coarseDataTools = derive2 { name="coarseDataTools"; version="0.6-6"; sha256="1g9hxyp2vdhq1zr18qlf2aqwp9d9hr07k6grmvblj2xrwlzfvc1p"; depends=[MCMCpack]; };
@@ -7409,19 +7427,19 @@ in with self; {
   cohorttools = derive2 { name="cohorttools"; version="0.1.4"; sha256="1zpf3qgzkn34wc36r89ymzfx4fvlgl7x1yiwdwzzd20xv3nx2b5h"; depends=[cmprsk DiagrammeR DiagrammeRsvg Epi ggplot2 rsvg survival]; };
   coil = derive2 { name="coil"; version="1.2.3"; sha256="023sn4waf8wb99ryxf0biag8rfg3j3sslf8fw7d00llzci8px5zj"; depends=[ape aphid seqinr]; };
   coin = derive2 { name="coin"; version="1.4-2"; sha256="1cpv7jx840inzg98bkhrb5yscx0gpag6br237r5qpnc2gbrd2ikm"; depends=[libcoin matrixStats modeltools multcomp mvtnorm survival]; };
-  coinmarketcapr = derive2 { name="coinmarketcapr"; version="0.3.2"; sha256="0n62kcw7yxpvxd2bzki432cis5rvfw8b8syfvgv5wpq53bavq3px"; depends=[cli crayon curl data_table ggplot2 jsonlite]; };
+  coinmarketcapr = derive2 { name="coinmarketcapr"; version="0.4"; sha256="1h95fm32w03gxjka71n41lxkinfwpal4dl6hmhfdph8wywn7y50j"; depends=[cli crayon curl data_table ggplot2 jsonlite]; };
   cointReg = derive2 { name="cointReg"; version="0.2.0"; sha256="0n4s809avhlrmrjdqzc2s752m7x96c4432gnjd4qv77r2nns7dw4"; depends=[checkmate MASS matrixStats]; };
   cointmonitoR = derive2 { name="cointmonitoR"; version="0.1.0"; sha256="0rsacvib9prgb199m5ndi0zlgfsvf1giqc5s41wp0yvxdxjdq5lw"; depends=[cointReg matrixStats]; };
   cold = derive2 { name="cold"; version="2.0-3"; sha256="1y2l1v7s1v3m4nhlnl72n075h53vm93vxmfn4b6269n690wl9s6d"; depends=[cubature MASS]; };
   colf = derive2 { name="colf"; version="0.1.3"; sha256="1av82yrp6csw7700ymipd02j73cmzn0apv7ykachjw09nzk86kvj"; depends=[nlsr]; };
   collUtils = derive2 { name="collUtils"; version="1.0.5"; sha256="0gbk3lrb2lwq2ixrpcngng6qz6axjb4iyqy5606x1zmjm71c060p"; depends=[Rcpp rJava]; };
-  collapse = derive2 { name="collapse"; version="1.7.5"; sha256="13n6k0mairlzmkklq322ms8yzflcb4hphllyby6wjdbql6d3z0w9"; depends=[Rcpp]; };
+  collapse = derive2 { name="collapse"; version="1.7.6"; sha256="0hyxdmy3nm1jwls6h6q487hsx5yjiiy2l3wy1x29k4k69fc3xkxw"; depends=[Rcpp]; };
   collapsibleTree = derive2 { name="collapsibleTree"; version="0.1.7"; sha256="0b65pbp1wnpsrayqi630ds4r98jvcvynnlp6wxdqrnnr9nzw5343"; depends=[data_tree htmlwidgets]; };
   collateral = derive2 { name="collateral"; version="0.5.2"; sha256="1wnzgpayjsqnqry0cdmkijyjkkjhbc8hxwlkx7aj9qwaiz7wiibr"; depends=[crayon pillar purrr]; };
   collectArgs = derive2 { name="collectArgs"; version="0.4.0"; sha256="0fz5w1xsxiddzrwahrg50px4igyhd4plq655jaix6grancs7kvix"; depends=[magrittr]; };
   collections = derive2 { name="collections"; version="0.3.5"; sha256="053ig88pva78wxxwya3v7cz853k563dkpgxrf2xvd0l0d9fanxmz"; depends=[]; };
   collidr = derive2 { name="collidr"; version="0.1.3"; sha256="18ki8mwf5ihbgfbhdbbk9ljs44js3rqgl1g6g3ch6dynz61sr6hn"; depends=[dplyr jsonlite stringr]; };
-  collin = derive2 { name="collin"; version="0.0.1"; sha256="08yg1gdp04l5rxkyvm784n2iqszgb4rlsv3b46n5bzwr334nmsav"; depends=[dlnm MASS mgcv nlme VGAM]; };
+  collin = derive2 { name="collin"; version="0.0.2"; sha256="12gxndq5xqfvc9m10y6pjf99npr65dp1fhpy5lg9wnq7r4zv2610"; depends=[dlnm MASS mgcv nlme VGAM]; };
   collpcm = derive2 { name="collpcm"; version="1.2"; sha256="0v7a6mjchkahmxyf68ii051s1hvarb6knkmnhq5lfw8n4bdxh39x"; depends=[gtools latentnet network]; };
   colmozzie = derive2 { name="colmozzie"; version="1.1.1"; sha256="0sn7dqg7rnddnmdb10c6scws6kgi1lz4lw8nc698x63z431ah1p8"; depends=[]; };
   coloc = derive2 { name="coloc"; version="5.1.0"; sha256="1sxcav8z988x40883qayylvzg9wrnh84x6vv7r8jc1jxyk76abws"; depends=[data_table ggplot2 susieR viridis]; };
@@ -7446,7 +7464,7 @@ in with self; {
   colorpatch = derive2 { name="colorpatch"; version="0.1.2"; sha256="18p9hgccp37pbdf437xffkv6z500896v08fsw2jm8zcl9ladygaf"; depends=[colorspace ggplot2 gridExtra TSP]; };
   colorr = derive2 { name="colorr"; version="1.0.0"; sha256="1wwrgb9fc9gzxxwxrdrkwwrmhqqllv29wr4q8y1shj9d3nzcpwmh"; depends=[]; };
   colorscience = derive2 { name="colorscience"; version="1.0.8"; sha256="11fy8545g93b8dn2imihsb031lnf5g5z17km8q07q4y6g96xdbdv"; depends=[Hmisc pracma sp]; };
-  colorspace = derive2 { name="colorspace"; version="2.0-2"; sha256="0fhq2aykdkxh3r90i8aqjyb37p5api3mjd19ch8mzv99q4pcv4dq"; depends=[]; };
+  colorspace = derive2 { name="colorspace"; version="2.0-3"; sha256="0zw52s8g2gxp8i1ax96azxmxqrbhb7aad5px0c1vgr6n9p682mp7"; depends=[]; };
   colortools = derive2 { name="colortools"; version="0.1.5"; sha256="0z9sx0xzfyb5ii6bzhpii10vmmd2vy9vk4wr7cj9a3mkadlyjl63"; depends=[]; };
   colourlovers = derive2 { name="colourlovers"; version="0.3.6"; sha256="13fqn6hbqjk3d8krpqb3hmsq06qrbks8a9ia5441hd6m7m8wjjkc"; depends=[httr jsonlite png XML]; };
   colourpicker = derive2 { name="colourpicker"; version="1.1.1"; sha256="1q1wi3g403fbzp4ys3gsjbwdc86x770cx323qgi47ca8n219kl50"; depends=[ggplot2 htmltools htmlwidgets jsonlite miniUI shiny shinyjs]; };
@@ -7467,7 +7485,7 @@ in with self; {
   cometr = derive2 { name="cometr"; version="0.2.0"; sha256="0fbg1lfw0q4lfk4svflfwjfmwxbrdvmrvxry90xp39i7g8zd2ahd"; depends=[callr httr jsonlite R_utils R6 yaml]; };
   comf = derive2 { name="comf"; version="0.1.10"; sha256="0iimah487k6wf9sf4y39ldlm8ww017629bj8115ri9ffp0353g33"; depends=[plyr reshape]; };
   commentr = derive2 { name="commentr"; version="1.0.4"; sha256="0anlcbk8rj0yr8i23qmr6v5ws0695nkc3mvgr6pnq1fg2d4c4brj"; depends=[stringr]; };
-  commonmark = derive2 { name="commonmark"; version="1.7"; sha256="024iz1qp2kv6iz6y69ir0jk3qhjps86rhkzlcmhqsxx97rx7cjni"; depends=[]; };
+  commonmark = derive2 { name="commonmark"; version="1.8.0"; sha256="0s765c650id19ygx57bsjsw93fwxywmp50zid671bkxi6wlyf1vx"; depends=[]; };
   commonsMath = derive2 { name="commonsMath"; version="1.2.5"; sha256="1c4lgmggpc22mhwcpy521b2pg8wf4bbjp0a6rbcn0aki90xw9ckk"; depends=[]; };
   communication = derive2 { name="communication"; version="0.1"; sha256="08fkllwwcw2llpg5ivxhqghc88qfg1vdy0ciif3xazhhymb8wavb"; depends=[abind diagram GGally ggplot2 gtable gtools igraph magrittr plyr purrr RColorBrewer Rcpp RcppArmadillo reshape2 scales signal tuneR useful wrassp]; };
   comorbidity = derive2 { name="comorbidity"; version="1.0.0"; sha256="0cv3gay7mxba8kr19580dv7vyqlacdybxf5a2y96ll43g64w1gyp"; depends=[checkmate data_table stringi]; };
@@ -7534,23 +7552,24 @@ in with self; {
   conflicted = derive2 { name="conflicted"; version="1.1.0"; sha256="1qg9ar114r98wm0pnf65mss4v2ksq3924rlpm13mqp4s3p6j9yi4"; depends=[memoise rlang]; };
   conflr = derive2 { name="conflr"; version="0.1.1"; sha256="1bjdmvi0n8746g7dxwgzh3fi33sq4bgfr0nd3nqd2caj8ryi2gv9"; depends=[askpass commonmark curl glue httr knitr miniUI purrr R6 rlang rmarkdown rstudioapi shiny stringi xml2]; };
   conformalClassification = derive2 { name="conformalClassification"; version="1.0.0"; sha256="03v6xbgipb97byarqj0d38z9yb2g54mkkw343jxmi2j058z26yw7"; depends=[doParallel foreach mlbench randomForest]; };
-  conformalInference_fd = derive2 { name="conformalInference.fd"; version="1.0.0"; sha256="15ck2vi5zkf4y7y91n380v0ywjdgs9l2arw1rqyf9nr2n9j45wd0"; depends=[fda future future_apply ggplot2 gridExtra]; };
-  conformalInference_multi = derive2 { name="conformalInference.multi"; version="1.0.0"; sha256="1mriq2jkh8qzd04842jbza30yfbbs9cjypmdhr293msa6fjsad01"; depends=[future future_apply ggplot2 glmnet gridExtra hrbrthemes]; };
+  conformalInference_fd = derive2 { name="conformalInference.fd"; version="1.1.0"; sha256="00qdkp70ncwxqgj847yyak3lgfirjh3m81fapjww588hq34wds1v"; depends=[fda future future_apply ggplot2 gridExtra]; };
+  conformalInference_multi = derive2 { name="conformalInference.multi"; version="1.1.0"; sha256="1bixhwm8jrsrixzk80dp8m0kq85pmqjadj2hwwcqc2amyspcfbs7"; depends=[future future_apply ggplot2 glmnet gridExtra hrbrthemes]; };
   confoundr = derive2 { name="confoundr"; version="1.2"; sha256="000vf828qv04pplx8yc8q3mafxf4g0axip6z5zbsj2581yxv9jjh"; depends=[dplyr ggplot2 gridExtra magrittr purrr rlang Rmpfr scales stringr tidyr]; };
   confreq = derive2 { name="confreq"; version="1.5.6-4"; sha256="0mi6panjdvgpxwpylg6s3bhx9679jpqrxsicb14lq1w6c20rg7qj"; depends=[gmp vcd]; };
   conicfit = derive2 { name="conicfit"; version="1.0.4"; sha256="1d704xgiyqmbwfxnsmhqg885x10q8yqxmrk4khqpg3lh696bw97d"; depends=[geigen pracma]; };
   conics = derive2 { name="conics"; version="0.3"; sha256="06p6dj5dkkcy7hg1aa7spi9py45296dk0m6n8s2n3bzh3aal5nzq"; depends=[]; };
   conjoint = derive2 { name="conjoint"; version="1.41"; sha256="1iq3226a6fn1gddmh2nxlzvjcvbj7502r9520g9d4xdmk8smfx33"; depends=[AlgDesign broom cluster fpc ggfortify ggplot2]; };
   conjurer = derive2 { name="conjurer"; version="1.4.0"; sha256="0llvqjg0rrd75n1gz9b1njizs6s1mgygcv7hmalknqibvxd185ac"; depends=[]; };
-  conleyreg = derive2 { name="conleyreg"; version="0.1.6"; sha256="1q4i87l1bq17km0c60jm0585dsly05i85wddd2hbprkv5llxwbyp"; depends=[data_table doParallel fixest foreach lmtest lwgeom Matrix Rcpp RcppArmadillo Rdpack s2 sf]; };
+  conleyreg = derive2 { name="conleyreg"; version="0.1.7"; sha256="1mvbzqd83vd54ig4kbi1v3h4v0j6pyj8a5ja1f3w2n7k8aszy748"; depends=[data_table doParallel fixest foreach lmtest lwgeom Matrix Rcpp RcppArmadillo Rdpack s2 sf]; };
   conmet = derive2 { name="conmet"; version="0.1.0"; sha256="0iwr8mmh9lk0psqxkgnd7ldhg57ivbkv0b3a18gli06983mhzjdc"; depends=[dplyr DT foreign Hmisc lavaan openxlsx purrr semTools shiny shinydashboard shinyWidgets stringr summarytools waiter]; };
   connectwidgets = derive2 { name="connectwidgets"; version="0.1.1"; sha256="0sj8nik6dyyzflpq9vqd8wzlhky6jl2wfiaz788i6a2wdhckyc1m"; depends=[bslib crosstalk digest dplyr glue htmltools htmlwidgets httr jsonlite magrittr purrr R6 reactable reactR rlang sass tibble]; };
   conogive = derive2 { name="conogive"; version="1.0.0"; sha256="0a8v7v0fds0psfnbx9x45way8z1f1xn2ncgbrn5rb6fjq0a1zs4x"; depends=[assertthat checkmate mvtnorm psych]; };
   conos = derive2 { name="conos"; version="1.4.5"; sha256="1c2yn3nsvwwglgxghnrybmkcvdc16gxxbcfqfnp70q4h6nz7f65g"; depends=[abind ComplexHeatmap cowplot dendextend dplyr ggplot2 ggrepel gridExtra igraph irlba leidenAlg magrittr Matrix Matrix_utils N2R R6 Rcpp RcppArmadillo RcppEigen RcppProgress reshape2 rlang Rtsne sccore]; };
   conover_test = derive2 { name="conover.test"; version="1.1.5"; sha256="0f1p10klidk1xic1wd48j9rjh2fb3z6pfjx4y021lglx1w3av68k"; depends=[]; };
-  conquer = derive2 { name="conquer"; version="1.2.1"; sha256="0i9g27f52zl2kb2392g0y614drf6s87dqz12aphj889ajq7zjm0k"; depends=[caret Matrix matrixStats Rcpp RcppArmadillo]; };
+  conquer = derive2 { name="conquer"; version="1.2.2"; sha256="1z07p4xcrxvnicwgga7hqvqzcxavwirw828285i0xlnz54rqhsc8"; depends=[Matrix matrixStats Rcpp RcppArmadillo]; };
   conquestr = derive2 { name="conquestr"; version="0.8.5"; sha256="1xh09a379g1msib5fvf72llvf2gwqb7ciacw7j7iqrkb2ddpaglk"; depends=[ggplot2 ggrepel Rcpp reshape rlang stringr]; };
   conserveR = derive2 { name="conserveR"; version="1.0.4"; sha256="05b1pqgbd9sh4lyg9zqjfg4019dqp8xj3k1w31qqdld8m3g5lrd6"; depends=[cowplot GGally ggplot2 ggrepel magrittr network rlang scales sna]; };
+  consolechoice = derive2 { name="consolechoice"; version="1.0.0"; sha256="0f1ac4k3w2qkxhzxqsm9v9wanq27g0fr77g63zy84b38c9zkmgch"; depends=[]; };
   consort = derive2 { name="consort"; version="1.0.1"; sha256="16i7hd433f3lfs6saa20m2jk9926r9jaln74333dmx5ld0294q99"; depends=[]; };
   consortr = derive2 { name="consortr"; version="0.9.1"; sha256="1c71wvr7sckrv4k65l71l160z6d9amzyydbi6mf2b79zh9zv8g1g"; depends=[data_table DiagrammeR dplyr magrittr purrr rlang shiny shinydashboard tibble]; };
   constants = derive2 { name="constants"; version="1.0.1"; sha256="11nliijwphqphik95b3xpawpjg7w4s089wdhjci5bw4va4bgd1xm"; depends=[]; };
@@ -7559,7 +7578,7 @@ in with self; {
   contTimeCausal = derive2 { name="contTimeCausal"; version="1.0"; sha256="1lyiy0hs5xms6hgr7cv5cxh7v09612qsknjwmrr8w07y0h37qg5l"; depends=[dplyr survival zoo]; };
   contact = derive2 { name="contact"; version="1.2.8"; sha256="1db3vgjlz0ivw3sx37mwy7ngjx0in3rxlm3i3akh4xzbfp9gjj87"; depends=[ape data_table doParallel foreach igraph lubridate raster rgdal rgeos sp]; };
   contactdata = derive2 { name="contactdata"; version="0.2.0"; sha256="1hcibqkfisv28d38ymgvmkkbs4jl3lbp2safyd5abf185043263d"; depends=[]; };
-  container = derive2 { name="container"; version="1.0.0"; sha256="0yr06z6vdz1qz7vp3hf1zqnk0n2g77iaq9nfx6r9275m5v2hl6iw"; depends=[data_table R6]; };
+  container = derive2 { name="container"; version="1.0.1"; sha256="0a8wlszclnl2hm15mgrq25mkq13x890qv2mg9rqx8ns7953829sa"; depends=[data_table R6]; };
   contentid = derive2 { name="contentid"; version="0.0.15"; sha256="0r5lrq82vfv698g8md8kdhl83gi8rx5hrhk2qddykxlxk4krzagi"; depends=[curl fs httr openssl]; };
   contfrac = derive2 { name="contfrac"; version="1.1-12"; sha256="0sq5c7ny235yrkv2xc4insgxby6rvzc1qsj8h301cd2if3lwbgwm"; depends=[]; };
   conting = derive2 { name="conting"; version="1.7"; sha256="08f271j3gxcp4shda08kkv0v9ayaadvxgcglfsn6hjmw4hn298zg"; depends=[BMS coda gtools mvtnorm tseries]; };
@@ -7568,7 +7587,7 @@ in with self; {
   contourPlot = derive2 { name="contourPlot"; version="0.2.0"; sha256="0bjwq3p57d6hadln8vwjkh7c9sbb466h3zcq9kpx7kd31z6x8gnz"; depends=[interp RColorBrewer]; };
   contoureR = derive2 { name="contoureR"; version="1.0.5"; sha256="1izq1alkf24zd2sf2ir2adyrkwhdj7n89cv6z0dfh5mfqld5bkdn"; depends=[geometry plyr Rcpp reshape]; };
   contrast = derive2 { name="contrast"; version="0.24.1"; sha256="1119c7p8ly3zb5pxzgridqvmbq5v0jx557qqaa0rbmdr7rih74aq"; depends=[nlme rms sandwich]; };
-  contribution = derive2 { name="contribution"; version="0.2.0"; sha256="0di6jhljdfvzpifnb3pvyn2la5h5r1dw03dx4zhpn4y10dg6898p"; depends=[dplyr ggplot2 gh magrittr rlang tidyr]; };
+  contribution = derive2 { name="contribution"; version="0.2.1"; sha256="1m9bjpmf1ljygjlx3jg8hvnrq6sxx1cscg30dc3phpnj3w55jxln"; depends=[dplyr ggplot2 gh magrittr rlang tidyr]; };
   control = derive2 { name="control"; version="0.2.5"; sha256="02s8h5kwpzfrivx3ign84gwlybkcs03ibawyxdny9zz5yhb7x3bs"; depends=[expm Matrix pracma signal]; };
   controlTest = derive2 { name="controlTest"; version="1.1.0"; sha256="19r8nvi35ldzgayifskjj706fv76hv6sj68yvggybp27rgyqbjfl"; depends=[survival]; };
   convdistr = derive2 { name="convdistr"; version="1.5.3"; sha256="1cp2qpyl0jxp0lwznlc94mcigfgysyq9xmi1z7ihd7jxd9mk8aw9"; depends=[dplyr extraDistr ggplot2 MASS pryr RColorBrewer SHELF shiny tidyr]; };
@@ -7581,7 +7600,7 @@ in with self; {
   convey = derive2 { name="convey"; version="0.2.4"; sha256="0khhnvazslvv7ma4fk70qzcazgv1aair1vcvx22bsic2mvgdb0fc"; depends=[survey]; };
   convoSPAT = derive2 { name="convoSPAT"; version="1.2.7"; sha256="1pmiirigjdkrb3pzqcw6qlh6418z384mvaxqw5mrcm1gxzrqp649"; depends=[ellipse fields MASS plotrix StatMatch]; };
   cooccur = derive2 { name="cooccur"; version="1.3"; sha256="1wlaghhi4f3v8kzwhcgq3c6as7v3zlpkzhb232qz1amr7f0058kv"; depends=[ggplot2 gmp reshape2]; };
-  cooltools = derive2 { name="cooltools"; version="1.6"; sha256="1zll98ys9i7vcyqfqkrzyrzdvryrgig5isgdzgimmyxa1l0si3gv"; depends=[bit64 celestial cubature data_table jpeg magicaxis MASS plotrix png pracma raster Rcpp sp]; };
+  cooltools = derive2 { name="cooltools"; version="1.7"; sha256="147hpa1vavs51fp0r8siyf0g3830g5ngs1nwd5a4nrahzl6f1jn4"; depends=[bit64 celestial cubature data_table jpeg magicaxis MASS plotrix png pracma raster Rcpp sp]; };
   coop = derive2 { name="coop"; version="0.6-3"; sha256="0ww99ssgawsgn6rqy838wbx6iirzdrzyxirvz084ih8j50blx420"; depends=[]; };
   coopProductGame = derive2 { name="coopProductGame"; version="2.0"; sha256="1348pgqfvvysdixsjibgkvwjsmqasnlmwf9kyr39lw8jb81z25h0"; depends=[dplyr GameTheory ggplot2 gtools kappalab lpSolveAPI]; };
   cooptrees = derive2 { name="cooptrees"; version="1.0"; sha256="0izvwna1jsqik3v5fz1r4c86irvma42clw0p4rdvwswv5pk698i1"; depends=[gtools igraph optrees]; };
@@ -7618,7 +7637,7 @@ in with self; {
   corona = derive2 { name="corona"; version="0.3.0"; sha256="1hggsmvmbim7f6bybmdhxznmqib0k2plm370mjs7dp85i564sjkm"; depends=[gganimate ggplot2 gridExtra plyr qicharts2 reshape2]; };
   coronavirus = derive2 { name="coronavirus"; version="0.3.31"; sha256="187k5phjxkzkkgszrww0ayk50n399bxa83r59h3whk81788hdmwf"; depends=[devtools]; };
   corpcor = derive2 { name="corpcor"; version="1.6.10"; sha256="028fw61n61i79fhnaqx7gmdifdpbvp3yiaq9vvfrbv4k7i84r83i"; depends=[]; };
-  corpora = derive2 { name="corpora"; version="0.5"; sha256="0b4yw37msx9h8hf5mjs4h10gdmc1qc2gv5bzyj1r90n4gcli042d"; depends=[]; };
+  corpora = derive2 { name="corpora"; version="0.5-1"; sha256="1bkmarwxqfb4jf7aa1x82lhykmy25z1pknfmq1g1g789g074090k"; depends=[]; };
   corporaexplorer = derive2 { name="corporaexplorer"; version="0.8.4"; sha256="0ffickzig9798273gm401ma0lm32zgcd5p549935gfgbyjlxzxps"; depends=[data_table dplyr ggplot2 lubridate magrittr padr plyr RColorBrewer rlang rmarkdown scales shiny shinydashboard shinyjs shinyWidgets stringi stringr tibble tidyr]; };
   corpus = derive2 { name="corpus"; version="0.10.2"; sha256="0fxa38xbd5fyhh0q1ycx8snj7ly8hv9jclbs77agkb6pb6p7yr64"; depends=[utf8]; };
   corpustools = derive2 { name="corpustools"; version="0.4.9"; sha256="0239nx4r8q3jkzymr3l2zc9y0b75frp7rxn2wl6rv721p33dbykr"; depends=[data_table digest igraph Matrix pbapply quanteda R6 Rcpp RcppProgress RNewsflow rsyntax SnowballC stringi tokenbrowser udpipe wordcloud]; };
@@ -7628,7 +7647,7 @@ in with self; {
   corrcoverage = derive2 { name="corrcoverage"; version="1.2.1"; sha256="0r5n2g341jlinwrxxwxkav9i6qsf097pmfi07aiq663b13r3864x"; depends=[data_table magrittr matrixStats Rcpp RcppArmadillo]; };
   correctedAUC = derive2 { name="correctedAUC"; version="0.0.3"; sha256="0c2kq7asq5mp48p8niqb84wnw4q2q2985wxbrywrhsszm9p3xspb"; depends=[ICC mnormt]; };
   corregp = derive2 { name="corregp"; version="2.0.2"; sha256="1v048dibn2x3y5mi2damcsr9i5kdig5n53g5j9gf31lqkzzjmnh3"; depends=[data_table diagram ellipse gplots rgl]; };
-  correlation = derive2 { name="correlation"; version="0.7.1"; sha256="03ghgaf7c6zjsa5j3916l4f5fq4b6i1hn7g3njgzq2z2zz8nd5yn"; depends=[bayestestR datawizard insight parameters]; };
+  correlation = derive2 { name="correlation"; version="0.8.0"; sha256="0gpdif7pp12iacs06njqcvis93qfanpf8awzdy1f6kjn0rc2wrim"; depends=[bayestestR datawizard insight parameters]; };
   correlationfunnel = derive2 { name="correlationfunnel"; version="0.2.0"; sha256="0xil7cihqk7gzpy0q97sg5sw5z0gy7zqvx0f0bizcfks9gwp43cv"; depends=[cli crayon dplyr forcats ggplot2 ggrepel magrittr plotly purrr recipes rlang rstudioapi stringr tibble tidyr]; };
   correlbinom = derive2 { name="correlbinom"; version="0.0.1"; sha256="1ix3ccxzr7vqblbda5awsva3h95b69v7kc6adz622bbi8r36xxcq"; depends=[Rmpfr]; };
   corrgram = derive2 { name="corrgram"; version="1.14"; sha256="12dhvwaprdmzxxk52w8sb3cx99dmzb9yhcm01pri0vcz671p57v1"; depends=[]; };
@@ -7706,6 +7725,8 @@ in with self; {
   cpa = derive2 { name="cpa"; version="1.0"; sha256="14kcxayw4cdbjfa6bvfzqp8flwc0sr3hmh2dnr1dfax0hnccd71m"; depends=[]; };
   cpca = derive2 { name="cpca"; version="0.1.2"; sha256="1pccsjahb1qynnxa0akhfpcmhfmdg4rd1s6pfqrdl7bwbcmq4lqf"; depends=[]; };
   cpd = derive2 { name="cpd"; version="0.1.0"; sha256="1qcyb7n69ppa0py7w31msim7gf2wdh94hmsilsdk8ivxljc1gv8n"; depends=[fAsianOptions Rdpack]; };
+  cpfa = derive2 { name="cpfa"; version="1.0-0"; sha256="06aiq9zq4471hajzca15vs79nwsk4q3bbi5fh6vz0qra50i64ang"; depends=[doParallel e1071 foreach glmnet multiway randomForest]; };
+  cpi = derive2 { name="cpi"; version="0.1.4"; sha256="1gz92jcl8wg2vp8qhnkn37l2xs8wjdbjvnga22v9n943k9zsk2kh"; depends=[foreach knockoff lgr mlr3]; };
   cpk = derive2 { name="cpk"; version="1.3-1"; sha256="1njmk2w6zbp6j373v5nd1b6b8ni4slgzpf9qxn5wnqlws8801n73"; depends=[]; };
   cplm = derive2 { name="cplm"; version="0.7-9"; sha256="057m61rq2hzb55imj3922zmc9kjxh053k3kgy54a4l0jlxb90lyj"; depends=[biglm coda ggplot2 Matrix minqa nlme reshape2 statmod tweedie]; };
   cpm = derive2 { name="cpm"; version="2.3"; sha256="07zbvc5jkwv76lkzby6r073fxjsqgnrdl2w9lcph577knnip89jx"; depends=[]; };
@@ -7714,7 +7735,7 @@ in with self; {
   cpr = derive2 { name="cpr"; version="0.2.3"; sha256="1a2lza1bw74xzrs17a9gr9mnpvnnrykhwd73yqi63wp3k4sm42rb"; depends=[dplyr ggplot2 lazyeval lme4 magrittr plot3D Rcpp RcppArmadillo rgl tibble tidyr]; };
   cprobit = derive2 { name="cprobit"; version="1.0.2"; sha256="16fnndpkd226paahmadsddakj4yhybw7lp3csr73fwv78zfl2fj9"; depends=[car ggplot2 gridExtra nortest]; };
   cprr = derive2 { name="cprr"; version="0.2.0"; sha256="049xnma0rdnya7zp05iraq15nwjgmdmli9g7xxprab822047vld7"; depends=[]; };
-  cpsR = derive2 { name="cpsR"; version="0.4.5"; sha256="1maqc5lr21h59wk4449zl8b8p9fzp9z6va52mc3k6z4sq4f784na"; depends=[httr jsonlite tibble]; };
+  cpsR = derive2 { name="cpsR"; version="0.5.0"; sha256="0mfagw8in5qn48mwglvrfs5h8vkyz69hxrq9klfdd84x2wys5n30"; depends=[httr jsonlite tibble]; };
   cpss = derive2 { name="cpss"; version="0.0.2"; sha256="1a6nphzf9y1p1ic51f0zll6g3j3flr7szrvzac1w4a023fj7301r"; depends=[dplyr ggplot2 gridExtra magrittr mvtnorm Rcpp RcppArmadillo Rfast rlang tibble tidyr]; };
   cpsurvsim = derive2 { name="cpsurvsim"; version="1.2.1"; sha256="1wsb5hrds0ym49r0lyb3l37q1qpqy4qjhqcyd7awavdx2pk94pgi"; depends=[Hmisc knitr plyr]; };
   cpsvote = derive2 { name="cpsvote"; version="0.1.0"; sha256="0nmg79isqwvxyg7zkfbshndfjb2fnc2ffg32hxvjvsy714lpljf6"; depends=[dplyr forcats magrittr readr rlang stringr]; };
@@ -7731,10 +7752,9 @@ in with self; {
   cranlike = derive2 { name="cranlike"; version="1.0.2"; sha256="06xgxgwpmfrwmcd0gnr9prjjbhd1y0ky1zb8yh09v0bvsf6ixnyx"; depends=[DBI debugme desc RSQLite]; };
   cranlogs = derive2 { name="cranlogs"; version="2.1.1"; sha256="02d9qrqyjj33naq3g7ykaw9dzzl1dq8qf13id6h7kfx1fvx9b7zd"; depends=[httr jsonlite]; };
   cranly = derive2 { name="cranly"; version="0.5.4"; sha256="02g3r8y3yj6pajjzzf7akgpjgg6vnv3mp9pqpqcfrrckvmvysm35"; depends=[colorspace countrycode ggplot2 igraph magrittr stringr tm visNetwork wordcloud]; };
-  crantastic = derive2 { name="crantastic"; version="0.1"; sha256="0y2w9g100llnyw2qwjrib17k2r2q9yws77mf6999c93r8ygzn4f5"; depends=[]; };
   crassmat = derive2 { name="crassmat"; version="0.0.6"; sha256="1c4ii34vh8y5b3z2maby4cafb3n2m9bnxv3762cy0z12mbg7zk1s"; depends=[svMisc]; };
   crawl = derive2 { name="crawl"; version="2.2.1"; sha256="18mr7vp72jj5msj9mbq45jy3f6qhn45azsmkq07i2d30gwdj0c3a"; depends=[dplyr gdistance lubridate magrittr mvtnorm purrr raster Rcpp RcppArmadillo rmapshaper sf shiny sp tibble]; };
-  crayon = derive2 { name="crayon"; version="1.4.2"; sha256="0mxq87qsvz5znfncrb6yjchzv6iwpn9lr386i02y6xiycizkjd7f"; depends=[]; };
+  crayon = derive2 { name="crayon"; version="1.5.0"; sha256="0m3rckps0c8v14h9vqnr81acv0az1jqwlsradcbkb2ndvnpjq4j4"; depends=[]; };
   crch = derive2 { name="crch"; version="1.0-4"; sha256="18qjvh1lkw1f6rrhnb21f30xxrcq8whbs3x1jgkw6q14rf1483ri"; depends=[Formula ordinal sandwich scoringRules]; };
   crctStepdown = derive2 { name="crctStepdown"; version="0.2.1"; sha256="1v6r0w9wrwa7hwyyhzdybv1mshdw3wxa098mbn48101dhhy75945"; depends=[fastglm ggplot2 ggpubr lme4 Rcpp RcppArmadillo rlang stringr]; };
   credentials = derive2 { name="credentials"; version="1.3.2"; sha256="1f18j3zrq8c9kah57xwahmmljsjg5qphlgamvx507ynvpq8pryig"; depends=[askpass curl jsonlite openssl sys]; };
@@ -7744,7 +7764,7 @@ in with self; {
   cregg = derive2 { name="cregg"; version="0.4.0"; sha256="1a34jhdk4r9ywsrc5dc8wq5am3059cli60f6n2n8j04ls13fvlkd"; depends=[ggplot2 ggstance lmtest sandwich scales survey]; };
   crestr = derive2 { name="crestr"; version="1.0.0"; sha256="1vps3rf2mnzmfzml22cyvi7khgakjx6yzwiziyjdl8dalrhrpwsc"; depends=[clipr DBI plyr raster rgdal rgeos RPostgres scales sp stringr viridis]; };
   crfsuite = derive2 { name="crfsuite"; version="0.4"; sha256="0arxbszaf1y8cqgzbq9a5l58n3c3rhjfp78lnhdxg95cdmdzhcfd"; depends=[data_table Rcpp]; };
-  cricketdata = derive2 { name="cricketdata"; version="0.1.0"; sha256="1g47f2rskmpb98xq7jc5wbl11414fpyg8jdrbakmzfcvyzfw99cb"; depends=[dplyr lubridate magrittr progress readr rvest stringr tibble tidyr xml2]; };
+  cricketdata = derive2 { name="cricketdata"; version="0.1.1"; sha256="1xv85mkln539jp9r7p8gnigiyrwwppi3ska3yjcjbzrl617w0877"; depends=[dplyr lubridate magrittr progress readr rvest stringr tibble tidyr xml2]; };
   cricketr = derive2 { name="cricketr"; version="0.0.26"; sha256="1y1zf9f59v95knggq5nna5rp7fqpv1swwvkajwqbpicc12g2azq4"; depends=[dplyr forecast ggplot2 httr lubridate plotrix scatterplot3d XML]; };
   crimCV = derive2 { name="crimCV"; version="0.9.6"; sha256="14ckk88i7jk8a7kl51d7qfdis44jng6zz9zd72cdp80a57dvrvzq"; depends=[]; };
   crimedata = derive2 { name="crimedata"; version="0.2.0"; sha256="073zlk9b4saz72d33z73mc9qzfk49bxwjhph6zbw27nl38k74j7d"; depends=[digest dplyr httr magrittr purrr readr sf stringr tibble]; };
@@ -7752,7 +7772,7 @@ in with self; {
   crimeutils = derive2 { name="crimeutils"; version="0.3.0"; sha256="1g7na36k1na7bsq8xqi01ja2fpb09r2davpi56jn5k1lih93kp8k"; depends=[dplyr ggplot2 gridExtra gt magrittr readr rlang scales tidyr]; };
   crisp = derive2 { name="crisp"; version="1.0.0"; sha256="1gs8jnd9y9pd55w6kwv9mvmg3wd8hjiw3lwx7k242pxccsxklfxq"; depends=[MASS Matrix]; };
   crispRdesignR = derive2 { name="crispRdesignR"; version="1.1.6"; sha256="1h9153iv55qkx9hyf3gs118m99mkzj5mbj6i3jg58chfp0m6jx78"; depends=[BiocGenerics Biostrings DT gbm GenomeInfoDb GenomicRanges IRanges rtracklayer S4Vectors shiny stringr vtreat]; };
-  criticality = derive2 { name="criticality"; version="0.9.0"; sha256="0cv9lxkcc3qjfyyiamglr03csr3z1hd281kysqlknzqvzl0hddly"; depends=[bnlearn caret dplyr evd fitdistrplus ggplot2 keras magrittr reticulate scales]; };
+  criticality = derive2 { name="criticality"; version="0.9.1"; sha256="1bi2h56bbrbjybawrxjm724i2rcpla0rmlcf5vp3g5qfmcc4cz15"; depends=[bnlearn caret dplyr evd fitdistrplus ggplot2 keras magrittr reticulate scales]; };
   criticalpath = derive2 { name="criticalpath"; version="0.2.0"; sha256="1bnsmns1zrzfymy1wrbpbs7x1arcc55bqwapvvvjyz3mwxkbi56x"; depends=[dplyr igraph magrittr R6 stringr tibble]; };
   critpath = derive2 { name="critpath"; version="0.1.4"; sha256="1jr5ra8gwzcfnap87z4snb5mmfqq2iaas2x54kqqcsb2gsk3gchs"; depends=[DiagrammeR ggplot2 reshape2]; };
   crmPack = derive2 { name="crmPack"; version="1.0.0"; sha256="11zy1ci9d0zjbmc0gws9j9qrnfcqvky1ws9p41wjn0zifcckc5gi"; depends=[GenSA ggplot2 gridExtra MASS mvtnorm rjags]; };
@@ -7761,7 +7781,7 @@ in with self; {
   crn = derive2 { name="crn"; version="1.1"; sha256="1fw0cwx478bs6hxidisykz444jj5g136zld1i8cv859lf44fvx2d"; depends=[chron RCurl]; };
   crochet = derive2 { name="crochet"; version="2.3.0"; sha256="0zvjaf6cv0nrjb4l4llkr0mmgha7ig31p4ri2rlnqyjlxi5l8hyq"; depends=[]; };
   cromwellDashboard = derive2 { name="cromwellDashboard"; version="0.5.1"; sha256="0d57c1wdd1ds9fr7p256la63qbv8mirljgrvl1k8fp5gcnkps5wb"; depends=[dplyr DT httr shiny shinydashboard stringr]; };
-  cronR = derive2 { name="cronR"; version="0.6.1"; sha256="06xs7fb2cw9ax7jrm4lwagyfbs34vrrilrr5rnb1jl1b2lmzpfii"; depends=[digest]; };
+  cronR = derive2 { name="cronR"; version="0.6.2"; sha256="1w1100lapy3zi238nmh2vc7yadqvb8p3wz86k223bqgr6lia28ng"; depends=[digest]; };
   crone = derive2 { name="crone"; version="0.1.1"; sha256="03qznxml940rl3kfxy4jkg9nsx9ss0gf2ck0ry000xglw6rm2s42"; depends=[]; };
   cronologia = derive2 { name="cronologia"; version="0.2.0"; sha256="143wc9i9d99cybnjzg4dj7jn7sv3cc4bq3hh6mp50j9hwxnr1xhh"; depends=[glue htmltools]; };
   crop = derive2 { name="crop"; version="0.0-2"; sha256="1yjpk7584wrz9hjqs21irjnrlnahjg8lajra9yfdp6r927iimg1l"; depends=[]; };
@@ -7775,6 +7795,7 @@ in with self; {
   crossmap = derive2 { name="crossmap"; version="0.3.0"; sha256="0dw1sg1by5805l72s5sbldznyp9qph9qrm4sizvqdx74bhb59s1y"; depends=[backports broom dplyr purrr rlang]; };
   crossmatch = derive2 { name="crossmatch"; version="1.3-1"; sha256="082lrv2129mfhwlh99z3g8id3a29s8854skl152bl3ig8pk2gbjz"; depends=[nbpMatching survival]; };
   crossrun = derive2 { name="crossrun"; version="0.1.0"; sha256="0br57nraqhs5f1cpidc8kd31izm82wvhiw9pxcdj9v51l9vifbmx"; depends=[Rmpfr]; };
+  crosstable = derive2 { name="crosstable"; version="0.4.1"; sha256="1c3hzmm8s72qsppzh8z3ivf88hlx571jz1pymrzppdikxm9z013h"; depends=[checkmate dplyr flextable forcats glue lifecycle officer purrr rlang stringr tibble tidyr tidyselect]; };
   crosstalk = derive2 { name="crosstalk"; version="1.2.0"; sha256="180y7mhpj17axpadwhh7s0qvrpdnag7g977vk256l96d6nmvlds2"; depends=[htmltools jsonlite lazyeval R6]; };
   crossval = derive2 { name="crossval"; version="1.0.4"; sha256="0vshlyc6w4kfs03n56ylapiqgdyday7068wmfsphj4lhw322s4yp"; depends=[]; };
   crossvalidationCP = derive2 { name="crossvalidationCP"; version="1.0-1"; sha256="0hxy9c83j8afgf4zg560x21yc4iyb1ykfv6mi1ak5qf5czhnnckf"; depends=[changepoint FDRSeg stepR wbs]; };
@@ -7788,7 +7809,7 @@ in with self; {
   crrp = derive2 { name="crrp"; version="1.0"; sha256="1fq54jr6avrli91a4z1hp5img4kghyw1yvjr5xyccsanf9i35x8r"; depends=[cmprsk Matrix survival]; };
   crrstep = derive2 { name="crrstep"; version="2015-2.1"; sha256="03vd97prws9gxc7iv3jfzffvlrzhjh0g6kyvclrf87gdnwifyn1z"; depends=[cmprsk]; };
   crs = derive2 { name="crs"; version="0.15-33"; sha256="0zzi3l35r4slq5iplgds4pkw4nf5594i5cwp4jrz5rbncw2vp19a"; depends=[boot np quantreg]; };
-  crseEventStudy = derive2 { name="crseEventStudy"; version="1.2.1"; sha256="1nw96h23zyfybxzlwnkcn5rskjpbd3qgldizngxwgpaqkmkgm880"; depends=[sandwich]; };
+  crseEventStudy = derive2 { name="crseEventStudy"; version="1.2.2"; sha256="0zqqd1d1k200kah03qvpfiyshs18s5h4j8y9mwr0fbhkfj7xags7"; depends=[sandwich]; };
   crsmeta = derive2 { name="crsmeta"; version="0.3.0"; sha256="19v0bq80cma74jjl0k42pmlpd5jfv6b0hr7j2iq0d47h50pvrd02"; depends=[]; };
   crsnls = derive2 { name="crsnls"; version="0.2"; sha256="0rv0xrdl9ix6bhaf554gma8zf923w47f8j1dkbs8g6xjqjr1c40a"; depends=[]; };
   crso = derive2 { name="crso"; version="0.1.1"; sha256="1r10vz8z5y52a5v5phw22fhqwv9p7g66xfsx0906bcx74dn3f2b3"; depends=[foreach]; };
@@ -7801,9 +7822,9 @@ in with self; {
   cruts = derive2 { name="cruts"; version="1.1"; sha256="1ih6h9qk4yflzars00d61smjqj7s4bfvc2ikp6vlki9f6k012xcx"; depends=[lubridate ncdf4 raster sp stringr]; };
   cry = derive2 { name="cry"; version="0.4.1"; sha256="14wicmlg8vzrqv4wf5xzf37l29ch3cbglbanmgbqdi8p49jpw1cf"; depends=[zoo]; };
   crypto2 = derive2 { name="crypto2"; version="1.4.3"; sha256="0c4ih53s6k3wf7zksz4x1vp27685s1qlyxarcfgvs2176zhnd42h"; depends=[cli dplyr jsonlite lubridate plyr progress purrr tibble tidyr]; };
+  cryptoverse = derive2 { name="cryptoverse"; version="0.1.0"; sha256="169afkvinngwhrxi50a4r07lhgb6x9dxjbi3bj0gc7iyxa8cl9c5"; depends=[]; };
   cryptowatchR = derive2 { name="cryptowatchR"; version="0.2.0"; sha256="0lf94l5klkx1j1fgaq2qjqr2y8ckm5raa3a508x72ph45v10pfyq"; depends=[httr jsonlite lubridate]; };
   cryst = derive2 { name="cryst"; version="0.1.0"; sha256="04da19dy3mkngd3ma44cd8cdkb5acjy9lbhfipa9flp339j1pp57"; depends=[flux pracma]; };
-  csSAM = derive2 { name="csSAM"; version="1.2.4"; sha256="1ms8w4v5m9cxs9amqyljc2hr1178cz6pbhmv7iiq9yj1ijnl4r1x"; depends=[]; };
   csa = derive2 { name="csa"; version="0.7.0"; sha256="0cmabcvfxfplnzx7mdsfas3jhgz44y86411amaphm75zmv8khcif"; depends=[data_table doParallel foreach ggplot2 ggpubr Lmoments moments raster reshape2 scales]; };
   csabounds = derive2 { name="csabounds"; version="1.0.0"; sha256="15l7i15w5jk4h3148dlk8v2i4awns5vxvv6m59qcv0hzns6jhx9j"; depends=[BMisc ggplot2 pbapply progress qte]; };
   csampling = derive2 { name="csampling"; version="1.2-2.1"; sha256="0kqx7j96yafsqi9cz551fqpwkbcabxl8zpwa2jms862z41xbgsv3"; depends=[marg statmod survival]; };
@@ -7813,7 +7834,7 @@ in with self; {
   csodata = derive2 { name="csodata"; version="1.2.2"; sha256="1xm51vz45kbn6gckd96qbbafvzm10nllfrv01s9538nwbz1whb03"; depends=[dplyr httr jsonlite lubridate R_cache reshape2 rjstat sf]; };
   cspec = derive2 { name="cspec"; version="0.1.2"; sha256="049vynbffxyd5zwxwyz1jv05zgq7zrx1ypzv5j62ph64gl42m13p"; depends=[]; };
   cspp = derive2 { name="cspp"; version="0.3.2"; sha256="13iy6kz1v0dbrry18lkjmmgd6bsazbjbaa0bdabpg0hyw241j8b4"; depends=[csppData dplyr ggcorrplot ggplot2 haven mapproj purrr readr rlang stringr tidyselect]; };
-  csppData = derive2 { name="csppData"; version="0.1.4"; sha256="1wwj2fscwyrn5ghgr6i422mnbkn9hyqb1h8wwmqn82rxgcm12w9s"; depends=[]; };
+  csppData = derive2 { name="csppData"; version="0.2.51"; sha256="17w0wl6nc37ncdz481i3nm7nwsh6aim6lnaa5i6ralaa1pdyq2bd"; depends=[]; };
   csrplus = derive2 { name="csrplus"; version="1.03-0"; sha256="0kljndmiwblsvvdnxfywida9k0dmdwjq63d934l5yl6z7k4zd0xa"; depends=[sp]; };
   cssTools = derive2 { name="cssTools"; version="1.0"; sha256="1p8c21c1hilmd9ibqyz493fy1x95hb2pidybsyicch53gkb542br"; depends=[sna]; };
   cstab = derive2 { name="cstab"; version="0.2-2"; sha256="1lr401fvi88f4jv8jh4brx95ymncfw8clripz1r6a46inj80nj4j"; depends=[cluster fastcluster Rcpp]; };
@@ -7824,12 +7845,13 @@ in with self; {
   csvwr = derive2 { name="csvwr"; version="0.1.6"; sha256="1wwj0zx4jawfl5264qxa90qwll971c24hyk645r0c7wwvwa8dd9r"; depends=[jsonlite magrittr purrr readr rlang stringr]; };
   csvy = derive2 { name="csvy"; version="0.3.0"; sha256="0id015szw1c63vd1h0515jsqdhyn32sxpxm89f3sb1qkgq3yynmy"; depends=[data_table jsonlite yaml]; };
   cta = derive2 { name="cta"; version="1.3.0"; sha256="1i8psw6p6f4633ad17apm6v5ikrpv1dagm0s8pggpsjbbw8d655v"; depends=[intervals limSolve numDeriv]; };
+  ctbi = derive2 { name="ctbi"; version="1.0.1"; sha256="1p6qv4187qjnz36gs328bm337f72jybyf3x490qn18pxjwkczj4x"; depends=[data_table]; };
   ctf = derive2 { name="ctf"; version="0.1.0"; sha256="1vwqfh1y2if79rkpy6b0ay50fyis7h5rlpvhgikahnmcr2q5l14m"; depends=[iotools jsonlite]; };
   ctgdist = derive2 { name="ctgdist"; version="0.1.0"; sha256="1m3ryppfvd984n5xfphjqhi9i1sigl17v897mqaichj21dzaq62f"; depends=[mirt]; };
   ctgt = derive2 { name="ctgt"; version="2.0"; sha256="0g2ibk9pxay0idj55q0yh4vbdb6l6460r997fnapimn7fgyz6f66"; depends=[BH Rcpp]; };
   cthist = derive2 { name="cthist"; version="0.1.3"; sha256="03ns8ckacnz3k5dmyzkhg61wrp7syg1igmp96y4nwkl0z9lz3294"; depends=[dplyr httr jsonlite magrittr readr rlang rvest selectr stringr tibble]; };
   cthreshER = derive2 { name="cthreshER"; version="1.1.0"; sha256="18b66d08dq8pvnixmm4ir4r800b37z5yillaa88l317mdilbci9s"; depends=[Matrix]; };
-  ctl = derive2 { name="ctl"; version="1.0.0-4"; sha256="027cij4vdsq3xhi38izzn07q6xwja7n8v95l7kk1pp92y9qkvqv3"; depends=[MASS qtl]; };
+  ctl = derive2 { name="ctl"; version="1.0.0-7"; sha256="1a01rha6sgv8zmcfjb1c438s9d9bjzdjf2pmyml1m5jmz93q70ds"; depends=[MASS qtl]; };
   ctmcd = derive2 { name="ctmcd"; version="1.4.1"; sha256="01nflgdyb70kh4f8bnxpavr31fz4fh02kgz2nlx3zzblnm2idbcx"; depends=[coda expm numDeriv Rcpp RcppArmadillo]; };
   ctmcmove = derive2 { name="ctmcmove"; version="1.2.9"; sha256="1pxyxbbhfa8arqfb7qw10ya1b8hy9ylqbqqzys6d9dsixvdk98h0"; depends=[fda gdistance Matrix raster sp]; };
   ctmle = derive2 { name="ctmle"; version="0.1.2"; sha256="0qc1ji8fjpr88dn6mrpijfcx1ij4zkrxsbcw405hxal7rli0gyp3"; depends=[glmnet SuperLearner tmle]; };
@@ -7839,9 +7861,9 @@ in with self; {
   ctrdata = derive2 { name="ctrdata"; version="1.8.0"; sha256="15jaxwqhx8fwzsnjgqqxkc6ngd1pqcgn1ffyl1hpwr92p9j7vkf9"; depends=[clipr curl httr jsonlite nodbi rvest stringi xml2]; };
   ctrialsgov = derive2 { name="ctrialsgov"; version="0.2.5"; sha256="0hdh1fdfaja8amf7fkvk1c6yif703132bvacq0j9pk5jr97czgpw"; depends=[DBI dplyr ggplot2 htmlwidgets lubridate Matrix plotly purrr rlang stringi tibble]; };
   ctrlGene = derive2 { name="ctrlGene"; version="1.0.1"; sha256="0x7j11v7jj4k1jml6lrnjq79awhrvsm3pig1yxsd337jlfml3ra9"; depends=[psych]; };
-  ctsem = derive2 { name="ctsem"; version="3.5.4"; sha256="1gzv3i43nknd2fkjhrgwq8kf5z5vl52k5715sjzad9bmdjqf9wdl"; depends=[BH cOde data_table Deriv expm ggplot2 MASS Matrix mize mvtnorm pkgbuild plyr Rcpp RcppEigen RcppParallel rstan StanHeaders tibble]; };
+  ctsem = derive2 { name="ctsem"; version="3.5.5"; sha256="1pgyq5s22gxsx2g42li1rcgf68llc8qv7f2y1abz57rm9maq07yz"; depends=[BH cOde data_table Deriv expm ggplot2 MASS Matrix mize mvtnorm pkgbuild plyr Rcpp RcppEigen RcppParallel rstan StanHeaders tibble]; };
   ctsemOMX = derive2 { name="ctsemOMX"; version="1.0.4"; sha256="1sjsm573alsg3dvj58rwknqapcydx77zbs0b8hcf59qbbhfa3djv"; depends=[ctsem Matrix OpenMx plyr]; };
-  ctv = derive2 { name="ctv"; version="0.9-1"; sha256="0lq657n7km070l3h6k036qm5l65bqab4z7d6bvrdffcfa3abi6rn"; depends=[]; };
+  ctv = derive2 { name="ctv"; version="0.9-2"; sha256="1fzmsfmcvyhfrqi802s87fxc0x76p7n7azrnybl03kw14vv4k62p"; depends=[]; };
   cuRe = derive2 { name="cuRe"; version="1.0.1"; sha256="0vw2iv9inz8md7lz6f1p456wxjc07kap1mvqf58hixqxbrb23dgi"; depends=[date numDeriv relsurv rstpm2 statmod survival]; };
   cubature = derive2 { name="cubature"; version="2.0.4.2"; sha256="0kk9lw3s66h0sayza3in8rdj7bmgqn4v5lfckhslarpvj2fxsnv0"; depends=[Rcpp]; };
   cubelyr = derive2 { name="cubelyr"; version="1.0.1"; sha256="1g3pvam1fkqh63snibqcfaazvj7lrkfip8w9pjvwdclj0l8382kl"; depends=[dplyr glue pillar purrr rlang tibble tidyselect]; };
@@ -7893,7 +7915,7 @@ in with self; {
   cwbtools = derive2 { name="cwbtools"; version="0.3.4"; sha256="1wj42n6phniwh6ms5xfmfazd8a0lkaf46wzv916i9xzsaf6hzqr7"; depends=[cli curl data_table fs httr jsonlite lifecycle pbapply R6 RcppCWB rstudioapi stringi xml2 zen4R]; };
   cwhmisc = derive2 { name="cwhmisc"; version="6.6"; sha256="1pf365g4f51cfrhlff9mqw2ddvkps0abax17zcn3vw1ba2djalnp"; depends=[lattice]; };
   cwm = derive2 { name="cwm"; version="0.0.3"; sha256="1ln2l12whjhc2gx38hkf3xx26w5vz7m377kv67irh6rrywqqsyxn"; depends=[MASS matlab permute]; };
-  cxhull = derive2 { name="cxhull"; version="0.3.0"; sha256="1s6w6ni90lp75rw8hvcqbavy84vzzll1pc4gnvnbhw4kl4q55jbq"; depends=[rgl]; };
+  cxhull = derive2 { name="cxhull"; version="0.4.0"; sha256="0hgx4y1svx9dcwjx254hmawyswsv17wn7kg2wwg8hyal9qgmh0wa"; depends=[Morpho rgl Rvcg]; };
   cxr = derive2 { name="cxr"; version="1.0.0"; sha256="12rx7hna3h84a2xb2ir43xgb3zfmh0fhn5wcdjklk2g94dmwid28"; depends=[mvtnorm optimx]; };
   cxxfunplus = derive2 { name="cxxfunplus"; version="1.0"; sha256="0kyy5shgkn7wikjdqrxlbpfl3zkkv4v1p8a1vv0xkncwarjs4n8d"; depends=[inline]; };
   cycleRtools = derive2 { name="cycleRtools"; version="1.1.1"; sha256="1l7w2lm4s149ndd85v41pkdrdig6l3nmhl14bdx56aw8q57fxmb0"; depends=[Rcpp xml2]; };
@@ -7912,7 +7934,7 @@ in with self; {
   cytometree = derive2 { name="cytometree"; version="2.0.2"; sha256="18g7av73lmnyga1kk24bf8jy599zn9n6qhr13mxsqgi0zdinicfa"; depends=[cowplot ggplot2 GoFKernel igraph mclust Rcpp RcppArmadillo]; };
   cytominer = derive2 { name="cytominer"; version="0.2.2"; sha256="1n9yimjhdziv1vzjyni6ssi38nxcnfr5jpmzgxcn6vysffh5s9pz"; depends=[caret doParallel dplyr foreach futile_logger magrittr Matrix purrr rlang tibble tidyr]; };
   czechrates = derive2 { name="czechrates"; version="0.2.2"; sha256="162r9inbjkgfm3y73jb3d9pxmgid94jjy5kxjp7058jsiv2ibn05"; depends=[curl dplyr httr magrittr readr tibble tidyr]; };
-  czso = derive2 { name="czso"; version="0.3.7"; sha256="1gq5arnysd81i9psljzamkgxkjwxmlmqv074bhpi7xv6ij6j1886"; depends=[curl dplyr httr jsonlite lifecycle magrittr readr rlang stringr tibble usethis]; };
+  czso = derive2 { name="czso"; version="0.3.9"; sha256="1smvjgf0vjykx4nknmrlbq5iv0j84idl4yhhwcwg2rylsbbh7hi8"; depends=[cli curl dplyr httr jsonlite lifecycle magrittr readr rlang stringi tibble]; };
   d3Network = derive2 { name="d3Network"; version="0.5.2.1"; sha256="1gh979z9wksyxxxdzlfzibn0ysvf6h1ij7vwpd55fvbwr308syaw"; depends=[plyr rjson whisker]; };
   d3Tree = derive2 { name="d3Tree"; version="0.2.2"; sha256="142bc6gdmhzaikdfyxb1pq9nlybgkrgi2kjgk40w4wbxzx5mwkbh"; depends=[dplyr htmlwidgets magrittr plyr stringr]; };
   d3plus = derive2 { name="d3plus"; version="0.1.0"; sha256="0kadz83pals03n0v3zqhmhf6visigk52yn58xckhb57fid4xzj5w"; depends=[htmlwidgets magrittr]; };
@@ -7925,7 +7947,7 @@ in with self; {
   dCovTS = derive2 { name="dCovTS"; version="1.2"; sha256="0gzilpz2hwibvwjpndi2nw61knhi4v0bhz5z4idffszgc9mjw1wm"; depends=[dcov doParallel foreach Rfast Rfast2]; };
   dGAselID = derive2 { name="dGAselID"; version="1.2"; sha256="0da7fi872i3ycb3j5v4isr4x2z39a68w4mdq859zslmqhiqd43b6"; depends=[ALL Biobase genefilter MLInterfaces]; };
   dHSIC = derive2 { name="dHSIC"; version="2.1"; sha256="1c1xz1f1fp937w4rlylvqv3ii0p9dafvmn4fqq8rzxhcg5rn9j4l"; depends=[Rcpp]; };
-  dLagM = derive2 { name="dLagM"; version="1.1.6.2"; sha256="0hh9nyk5x0yzy2l8gnjn0zkq3xx26pdlvk8myl7ma4y0qyk77587"; depends=[AER dynlm formula_tools lmtest MASS nardl plyr roll sandwich strucchange wavethresh]; };
+  dLagM = derive2 { name="dLagM"; version="1.1.7"; sha256="1i5fwzdscp7wpzbsdvwvak26p0aj0xviisp0aglaa7nrwixx8y0w"; depends=[AER dynlm formula_tools lmtest MASS nardl plyr roll sandwich strucchange wavethresh]; };
   dMod = derive2 { name="dMod"; version="1.0.2"; sha256="1fnv3f5xlng8f3df5hvxncfnnadzwcsdiklrb2g67llf3m06bq74"; depends=[cOde deSolve doParallel dplyr foreach ggplot2 plyr rootSolve stringr]; };
   dPCP = derive2 { name="dPCP"; version="1.0.4"; sha256="1wxni1m9iaak0isc1sl205dnx3v8pzqyj22aj7alzwim6d6a4hjq"; depends=[dbscan e1071 exactci ggplot2 ggpubr raster rlist scales shiny shinyjs stringr]; };
   dSVA = derive2 { name="dSVA"; version="1.0"; sha256="0vy0flyg82x0n9vw6jf9f76qy84sp0wnis91faj37ac5hdv3pvsb"; depends=[sva]; };
@@ -7936,6 +7958,7 @@ in with self; {
   dad = derive2 { name="dad"; version="4.0.0"; sha256="154afqf3xwbdjp9qr3rlz06ln2cnwzafk3p9h73k0h2g5n8yp5b9"; depends=[DescTools e1071 ggplot2]; };
   dadjoke = derive2 { name="dadjoke"; version="1.0"; sha256="118pacwc2qb3c5zbhr71zf4zj1ab2g4rs5h6bvrscjyd7a71jc3f"; depends=[]; };
   dadjokeapi = derive2 { name="dadjokeapi"; version="1.0.2"; sha256="143xs3nkf6ynr83z5gggz318nvpnsbfmskl1ipavlzrqk785dlac"; depends=[beepr curl dplyr httr png]; };
+  dados = derive2 { name="dados"; version="0.1.0"; sha256="1jdna8s10qz50zrsrm36y1jx489sznd86akx2lwdmriiiz3abn65"; depends=[AmesHousing babynames dplyr forcats fueleconomy gapminder ggplot2 Lahman nasaweather nycflights13 palmerpenguins pixarfilms rlang tibble tidyr yaml]; };
   dae = derive2 { name="dae"; version="3.2-13"; sha256="0mq94ah21p1glvsbvdmi2p7nlgz1bvq7w3rz2z3mdqq18kz6nkjw"; depends=[ggplot2 plyr]; };
   daewr = derive2 { name="daewr"; version="1.2-7"; sha256="138hmmrm3zcdb2rcilvrasndvsq38agp9bpikd3xbb7j4z1nrsl7"; depends=[FrF2 lattice stringi]; };
   daff = derive2 { name="daff"; version="0.3.5"; sha256="00zcdf215m7p3xm9yv571v09znhdqacxg69hb5b5j749mp4wdsyj"; depends=[jsonlite V8]; };
@@ -7953,13 +7976,12 @@ in with self; {
   dams = derive2 { name="dams"; version="0.3.0"; sha256="1jlx1b4cir1vwq75jnmk0pc6j95syfpi0hlnkx82g7pwfxwrdrib"; depends=[crul fauxpas janitor readxl]; };
   dang = derive2 { name="dang"; version="0.0.15"; sha256="0zy72rlviisjb3syvj2fq9zliwk02m33kjd7h9q7n3xq3876bi4w"; depends=[tidyCpp]; };
   dani = derive2 { name="dani"; version="0.1-1"; sha256="0ff0hcb5r8k6m6kv1zhjrpvl7gr1al3q0zlk4yjj89qd2j5byqp8"; depends=[Epi]; };
-  dann = derive2 { name="dann"; version="0.2.2"; sha256="115mc2mrmriyp24i8xgr58bjfgz6rzccl7s4akzp8rq5vhca707y"; depends=[fpc ggplot2 MASS purrr Rcpp RcppArmadillo rlang stringr tibble]; };
+  dann = derive2 { name="dann"; version="0.2.6"; sha256="1kmhif5vpj221pmpv5l3a8dspcgqg4ygbvi4s51yyi9pxnlf3mvw"; depends=[fpc ggplot2 MASS purrr Rcpp RcppArmadillo rlang stringr tibble]; };
   danstat = derive2 { name="danstat"; version="0.2.0"; sha256="16b0dl41g56s6iyxndpl403wgqqj1l3g9k78y3ciq5djq3a25m97"; depends=[httr jsonlite readr]; };
   dapr = derive2 { name="dapr"; version="0.0.3"; sha256="136chxijyxrl5sbiggxf56zga26zqds647z1z2igwn5mdff1wxyb"; depends=[]; };
   daqapo = derive2 { name="daqapo"; version="0.3.1"; sha256="09fmnpp4nl6n1z834dxzs2v56ba9sfb4mrmc1nrrixxhfsxshmb7"; depends=[bupaR dplyr edeaR glue lubridate magrittr miniUI purrr readr rlang shiny stringdist stringr tidyr xesreadR]; };
   darksky = derive2 { name="darksky"; version="1.3.0"; sha256="1740cw5qifgvqa0nafd6lmllxi32n1zm45zlify1yn3h1qdcszhb"; depends=[ggplot2 gridExtra gtable httr plyr]; };
   dartR = derive2 { name="dartR"; version="1.9.9.1"; sha256="1i2ha796k5xhyzz8q26pygc9hy2ay2b357h50ljfs2rf4np6l0sz"; depends=[adegenet ape crayon devtools dplyr foreach ggplot2 gridExtra HardyWeinberg hierfstat MASS plyr PopGenReport robustbase SNPRelate sp StAMPP stringr tidyr vegan]; };
-  darts = derive2 { name="darts"; version="1.0"; sha256="07i5349s335jaags352mdx8chf47ay41q7b0mh2xjwn2h9kzgqib"; depends=[]; };
   dash = derive2 { name="dash"; version="0.9.3"; sha256="1wsvhnvh7sxi4gr88k6kycdr6is8akz9qjy70pl3whykyvx4cjq0"; depends=[assertthat base64enc brotli crayon digest fiery glue htmltools jsonlite magrittr mime plotly R6 reqres rlang routr]; };
   dashCoreComponents = derive2 { name="dashCoreComponents"; version="1.10.0"; sha256="11jrlls6k6qlvi81741ga908aw22m05fhhr9jpzli982s611jrwl"; depends=[]; };
   dashHtmlComponents = derive2 { name="dashHtmlComponents"; version="1.0.3"; sha256="01zrwjlhwwajk2lnv7is1r6nril83l65pynx856y9mvnm05xkb7m"; depends=[]; };
@@ -7977,7 +7999,7 @@ in with self; {
   dataMeta = derive2 { name="dataMeta"; version="0.1.1"; sha256="13xxayqxbps07h0xr5b7sb7q30gy5zm7jzzaq4k20fskkjrzhzcm"; depends=[dplyr]; };
   dataPreparation = derive2 { name="dataPreparation"; version="1.0.4"; sha256="05vjngp9d2fzfb15z6zfkdhcsw3nsf12pskbidzs25v8xh6avlg7"; depends=[data_table lubridate Matrix progress stringr]; };
   dataReporter = derive2 { name="dataReporter"; version="1.0.2"; sha256="1rjm6j1s229j1j9yb5y1sdi03x22qzrkmhc09k4xdmwmwmpi3s58"; depends=[ggplot2 gridExtra haven htmltools magrittr pander rmarkdown robustbase stringi whoami]; };
-  dataRetrieval = derive2 { name="dataRetrieval"; version="2.7.10"; sha256="0lmd2j9inc29s2xk09gk7rbypgcqzpb2vmnnbmbg1liw96jsz5wl"; depends=[curl httr jsonlite lubridate readr xml2]; };
+  dataRetrieval = derive2 { name="dataRetrieval"; version="2.7.11"; sha256="0dhayggsnxjqr4wpplydayya3cns78iikmzsn3dclvyr3aw8352r"; depends=[curl httr jsonlite lubridate readr xml2]; };
   datacleanr = derive2 { name="datacleanr"; version="1.0.3"; sha256="0mrfqm3lgb6sl2j35sfd00gb5121j9wmlff8k0vczr3sgmqz4dg8"; depends=[bslib clipr dplyr DT formatR fs glue htmltools htmlwidgets lubridate magrittr plotly purrr RColorBrewer rlang rstudioapi shiny shinyFiles shinyWidgets summarytools]; };
   datadigest = derive2 { name="datadigest"; version="1.0.2"; sha256="1v4nwflrgjhwkrdlrjnqyq1spv1jkgxn1kmapml0zrvnvwf0r1a1"; depends=[haven Hmisc htmltools htmlwidgets jsonlite miniUI shiny tibble]; };
   datadogr = derive2 { name="datadogr"; version="0.1.2"; sha256="10zbxb9gkymw78ras9y4wrifz7cxh3y630yzjcf9ds2p557vcjzp"; depends=[anytime dplyr glue httr lubridate purrr stringr tibble tidyr]; };
@@ -7985,14 +8007,12 @@ in with self; {
   dataframes2xls = derive2 { name="dataframes2xls"; version="0.4.7"; sha256="10krlv0l5w021z0qd7rj93pzfjjmcjlda4xz4vq470bxbjmn1bss"; depends=[]; };
   datafsm = derive2 { name="datafsm"; version="0.2.4"; sha256="0klhkbwpaqxk2mnxha8b03mpgfxk107ff9d2nx6cky59il3c1825"; depends=[caret GA Rcpp]; };
   datagovindia = derive2 { name="datagovindia"; version="1.0.5"; sha256="1k04k2bz56d3k1nbx8p8pc1x3cxrdmnpgbrgmxl5i1qg3yashj91"; depends=[curl dplyr httr magrittr plyr rlang stringr]; };
-  datamap = derive2 { name="datamap"; version="0.1-1"; sha256="0qm4zb9ldg4wz1a7paj5ilr1dhyagq81rk9l2v43hmkv52sssgkv"; depends=[DBI]; };
   datamart = derive2 { name="datamart"; version="0.5.2"; sha256="0c0l157fzkcp30ch4ymaalcx18zhz6sa5srr50w9izhbx3pmldxp"; depends=[base64 gsubfn markdown RCurl RJSONIO XML]; };
   datamods = derive2 { name="datamods"; version="1.2.0"; sha256="1k5nbpy40jzk6jhgigq74qxvb0ni44p3iwb342950qbnb8aniwxw"; depends=[data_table DT htmltools phosphoricons readxl rio rlang shiny shinyWidgets tibble]; };
   datanugget = derive2 { name="datanugget"; version="1.0.0"; sha256="1ki4kgz6y9a313f07jml39pdxhadgs287rkpnlwvcw6kgj5qxala"; depends=[doSNOW foreach]; };
   dataonderivatives = derive2 { name="dataonderivatives"; version="0.4.0"; sha256="0bp1ynarz70c2clsz60dqfd4vmgm3251jv6821db5n7fffdrr7qa"; depends=[httr2 readr tibble vetr]; };
   dataone = derive2 { name="dataone"; version="2.2.1"; sha256="1gnzyjiwppx5mjwf38nm146vvmy6vlpqy9ibd2rc5f744pdvifxb"; depends=[base64enc datapack hash httr jsonlite parsedate plyr stringi stringr uuid XML]; };
   datapack = derive2 { name="datapack"; version="1.4.0"; sha256="1n69ycca7f7igl9n6spdhn2s431vrljmd0v80q3s5jnyb4mf4xyd"; depends=[digest hash redland uuid XML]; };
-  datapackage_r = derive2 { name="datapackage.r"; version="1.3.5"; sha256="01xx8alj3niznkrn3y2w9j1g60zn1fq0a2clf4r5p2pjyr2rqgy3"; depends=[config future httr iterators jsonlite jsonvalidate purrr R_utils R6 readr rlist stringr tableschema_r urltools V8]; };
   datapasta = derive2 { name="datapasta"; version="3.1.0"; sha256="0sqv29iv2rv50rbw1601rn8p7gv7rsw00djhl7h1znr0igzi5b82"; depends=[clipr readr rstudioapi]; };
   dataprep = derive2 { name="dataprep"; version="0.1.5"; sha256="1v48ry6xk0qg73j6js6m6fqd1bdhjv500bndb60zzl2qifrjfk2a"; depends=[data_table doParallel dplyr foreach ggplot2 reshape2 scales zoo]; };
   dataquieR = derive2 { name="dataquieR"; version="1.0.9"; sha256="0wc7vjjjffvmg9ahbqnygfrsk97n7k4y1y0ichvpr2nc8pfi7772"; depends=[dplyr emmeans ggplot2 ggpubr lme4 lubridate MASS MultinomialCI parallelMap patchwork R_devices reshape rlang robustbase]; };
@@ -8009,16 +8029,16 @@ in with self; {
   datastepr = derive2 { name="datastepr"; version="0.0.2"; sha256="039yggdj8jdici7hwmkjwgix45lvwjl7rw5h2rfzsm9xaq6vw1z2"; depends=[dplyr lazyeval magrittr R6 tibble]; };
   datastructures = derive2 { name="datastructures"; version="0.2.9"; sha256="0prw24iy1af02g1nzw588dv085bdnl6pzvizpxspmwzj6vrfbaav"; depends=[BH purrr Rcpp]; };
   dataverse = derive2 { name="dataverse"; version="0.3.10"; sha256="0fhxzd83hl2qgif8d5caw893i5w2b951yl7a5dmbj69ihcn0xfrg"; depends=[checkmate httr jsonlite readr xml2]; };
-  datawizard = derive2 { name="datawizard"; version="0.2.3"; sha256="0hcnwz42zy9hp32brga31jwk34bz063myqjp2wfxsqm4sqrkv2rx"; depends=[insight]; };
+  datawizard = derive2 { name="datawizard"; version="0.3.0"; sha256="1jmrkfymh66d0n4256hamvrbqipfl3bl05q618z4flmq2byifibs"; depends=[insight]; };
   date = derive2 { name="date"; version="1.2-39"; sha256="0mwp1619rxqyyyyxk224fh0x6g4rgyvr97q0kj076cxp71b97cdm"; depends=[]; };
-  datefixR = derive2 { name="datefixR"; version="0.1.3"; sha256="0vphkw0db0wvcq10kclz5xw5kfckmj6nqp2p3l8l82p5aqgp0ij8"; depends=[stringr]; };
+  datefixR = derive2 { name="datefixR"; version="0.1.4"; sha256="185lv1dap6xkmyqkv4fjmlmf6w95gm6szi0pps0pfrmcj42ng1fa"; depends=[stringr]; };
   datelife = derive2 { name="datelife"; version="0.6.1"; sha256="0fv478ykka6m5j3d6k7265xp76qc78fr7ms9khx349qbylj67306"; depends=[abind ape BiocManager bold cluster compare geiger httr ips knitcitations paleotree phangorn phylobase phylocomr phytools plyr rotl stringr taxize treebase]; };
   daterangepicker = derive2 { name="daterangepicker"; version="0.1.0"; sha256="1605ch84ad3nmmad0yy3id0izv0nz536lxwib6rkdkjik5761gqk"; depends=[htmltools jsonify shiny]; };
   datetime = derive2 { name="datetime"; version="0.1.4"; sha256="0nn1yxknsn3crmwbkws5kvfjhd65dw0fkfbg67gba0dyaqp1jg37"; depends=[]; };
   datetimeutils = derive2 { name="datetimeutils"; version="0.5-0"; sha256="030md2pydhgx8x8chga7byl8x41m2dbw94b4ds7md2nqkdrq7hqz"; depends=[]; };
   dateutils = derive2 { name="dateutils"; version="0.1.5"; sha256="03xch5wcvv15fy9x70smrki6374lddhf0sfp0inymdsq4g8wp4bc"; depends=[data_table Rcpp RcppArmadillo seasonal]; };
   datoramar = derive2 { name="datoramar"; version="0.1.0"; sha256="0zq6vhq6dmsyagmqrmb85z6fy9qhwra3s3iasr3jgc4ryr009pml"; depends=[httr jsonlite tibble]; };
-  datos = derive2 { name="datos"; version="0.3.0"; sha256="0q0qjk9iahxzz4gycmiq4nb34kiqxb9bxbh55slp31bvx32zcz6n"; depends=[babynames dplyr forcats fueleconomy gapminder ggplot2 Lahman nasaweather nycflights13 rlang tibble tidyr yaml]; };
+  datos = derive2 { name="datos"; version="0.4.0"; sha256="0clr3g8iaypazlb8gmx8mnydg34bn8wv9q7x6z01jp58z5hp5fyc"; depends=[babynames dplyr forcats fueleconomy gapminder ggplot2 Lahman nasaweather nycflights13 palmerpenguins rlang tibble tidyr yaml]; };
   datplot = derive2 { name="datplot"; version="1.0.0"; sha256="1y9pls1g2flz8n3jbh4jcp1fn78qwfbgsrzyf3jms9f6w8fs0f1d"; depends=[]; };
   datr = derive2 { name="datr"; version="0.1.0"; sha256="0sqwhn6zdaq8i45ry207mpbda1djjaxp9mcn13hi5wkry6z0bmlr"; depends=[devtools]; };
   datrProfile = derive2 { name="datrProfile"; version="0.1.0"; sha256="1bhyk3xjgwf92i765z3bkdnzkxg8fshriz9r6m371q1c75xysfil"; depends=[dplyr odbc RSQLite]; };
@@ -8032,7 +8052,7 @@ in with self; {
   dbMC = derive2 { name="dbMC"; version="1.0.0"; sha256="0gcgn3m10sx0naim206jkw7szl0mr7vbnkn25avvv9f8iy3y9vcv"; depends=[softImpute]; };
   dbWebForms = derive2 { name="dbWebForms"; version="0.1.0"; sha256="0diz5mh4fhwrwqa7jr70vzj2jks7h2n91v2hr1mvvlbc7rzd9yki"; depends=[data_table DBI html5 stringi]; };
   dbarts = derive2 { name="dbarts"; version="0.9-20"; sha256="0ap9lmkx2z4fgc5b9kws6pgvshkr9ngr1z1qgmivf698h6ayfx8x"; depends=[]; };
-  dbcsp = derive2 { name="dbcsp"; version="0.0.1.0"; sha256="08y111ivy5f8jgmlsmf52vxxc64j2z4lijvdx1bx6a90vcvlqc51"; depends=[caret geigen ggplot2 MASS Matrix parallelDist plyr TSdist]; };
+  dbcsp = derive2 { name="dbcsp"; version="0.0.2.0"; sha256="1g4f4l20g9ljm53hvq9caz87fsch6ikqqdmaf856bmc2bh6dckca"; depends=[caret geigen ggplot2 MASS Matrix parallelDist plyr TSdist zoo]; };
   dbd = derive2 { name="dbd"; version="0.0-22"; sha256="13qdm0y5dvc107xnv6663gbvmkw77150r073lp1jppf3gs8s587b"; depends=[]; };
   dbflobr = derive2 { name="dbflobr"; version="0.2.1"; sha256="0q736fpz18kq18jr8ga1jxh3vggmd7xws0sda83h95gkfx96pf8p"; depends=[blob chk clisymbols crayon DBI flobr glue rlang RSQLite]; };
   dbglm = derive2 { name="dbglm"; version="1.0.0"; sha256="1ljfi31n8d1mh1lr4q00klp74fz0c0jy9wdy2svhlzaszbrg76ky"; depends=[DBI dbplyr dplyr knitr purrr rlang stringr tibble tidypredict tidyr tidyverse vctrs]; };
@@ -8051,6 +8071,7 @@ in with self; {
   dc3net = derive2 { name="dc3net"; version="1.2.0"; sha256="19ibsvbnq6y88vqvgkm31zrqwjhpml59d792bz0zkk50r1q5bnyr"; depends=[c3net igraph RedeR]; };
   dcGOR = derive2 { name="dcGOR"; version="1.0.6"; sha256="0rvwa25r23yayx1i6xhkfaw2z85d2iyfx3slg3aq1m0fa7kj380p"; depends=[dnet igraph Matrix]; };
   dccmidas = derive2 { name="dccmidas"; version="0.1.0"; sha256="0ng46i9rv4aw26af03ryhmcrb8xhhd8d72zbqiwrzhhkh18azbgx"; depends=[lubridate maxLik Rcpp RcppArmadillo Rdpack roll rugarch rumidas tseries xts zoo]; };
+  dccpp = derive2 { name="dccpp"; version="0.0.2"; sha256="06mykc25398bpp7dk903ykb3q5jx8m3nl7hxzsl7m2sa7iaikpnx"; depends=[Rcpp RcppArmadillo]; };
   dccvalidator = derive2 { name="dccvalidator"; version="0.3.0"; sha256="1l74pqvac0n7dyfzkz2m0m6j19c8icymbwcifp2g5qvrpznfhxjb"; depends=[config ggplot2 glue golem htmltools knitr markdown purrr reactable readr readxl reticulate rlang shiny shinyBS shinydashboard shinyjs skimr tibble visdat]; };
   dclone = derive2 { name="dclone"; version="2.3-0"; sha256="0w1bhzsnmnhsrrw5ffm89pj2wy2fmx14y7g6b1mb2wlwbczjzzsh"; depends=[coda Matrix rjags rstan]; };
   dclust = derive2 { name="dclust"; version="0.1.0"; sha256="1icfx52v3g7kkkc11pw0xlrc8dlx5q3n2zbrd3fccmw17jzxqbg7"; depends=[openssl phylogram]; };
@@ -8061,7 +8082,6 @@ in with self; {
   dcov = derive2 { name="dcov"; version="0.1.1"; sha256="0c3a5dzpizsxlsh723pcd0d7n0mgfc9y35vrfhmskp3c1x639mh3"; depends=[Rcpp RcppArmadillo]; };
   dcurver = derive2 { name="dcurver"; version="0.9.2"; sha256="1v4h480lff1cyjjwb80dksiffh0y4b3s07lq2l2r21rn1l4mav6c"; depends=[Rcpp RcppArmadillo]; };
   dcurves = derive2 { name="dcurves"; version="0.2.0"; sha256="0vm1cg6sr152fg5bgy2inf4x42vkbvw9ahy5b1dda8jgc6s7zr9v"; depends=[broom dplyr ggplot2 glue purrr rlang scales survival tibble]; };
-  dcv = derive2 { name="dcv"; version="0.1.1"; sha256="12c716x8dnxnqksibpmyysqp2axggvy9dpd55s9bhnsvqvi6dshj"; depends=[lmtest]; };
   ddalpha = derive2 { name="ddalpha"; version="1.3.11"; sha256="1sdnb47r534nh138zk3a6b2mgi74nvshc7p5m304vjs9jlx4l2y3"; depends=[BH class geometry MASS Rcpp robustbase sfsmisc]; };
   dde = derive2 { name="dde"; version="1.0.1"; sha256="0qgnxb27a2wnrbfk5v22i985mqhjp4hp05vl1ccsapbxkpf0gqcv"; depends=[ring]; };
   ddi = derive2 { name="ddi"; version="0.1.0"; sha256="0pnkylz7l6brx6i73wys637w811psxhnr39lcmkag41s6jcgabd5"; depends=[]; };
@@ -8084,9 +8104,9 @@ in with self; {
   debugr = derive2 { name="debugr"; version="0.0.1"; sha256="0lfq0s0hibd00558vl3dmvrkzxjc7q62xr8sqzai0pv9a9lhixcn"; depends=[rprojroot rstudioapi]; };
   decido = derive2 { name="decido"; version="0.3.0"; sha256="14y3z5ys5y3kffgm0dk92rx4vd1mi9jvxn7pqvwi4jhyx7wx06pw"; depends=[Rcpp]; };
   decision = derive2 { name="decision"; version="0.1.0"; sha256="13d0yyg5zp7n3r92l0l1dsffxfph6vacrlzga9rz41l5pja72z6g"; depends=[]; };
-  decisionSupport = derive2 { name="decisionSupport"; version="1.109"; sha256="1ijrnbxx6l500jzlwmjrgb6na09avdp0s4gral8kh9zdswnm380n"; depends=[assertthat chillR dplyr fANCOVA ggplot2 ggstance magrittr msm mvtnorm nleqslv patchwork rriskDistributions stringr tidyr tidyselect]; };
+  decisionSupport = derive2 { name="decisionSupport"; version="1.110"; sha256="1yqdffrqk18vmna6vv699pa987cd266gihsccs47a2vdhlhgrk2m"; depends=[assertthat chillR dplyr fANCOVA ggplot2 ggstance magrittr msm mvtnorm nleqslv patchwork rriskDistributions stringr tidyr tidyselect]; };
   deckgl = derive2 { name="deckgl"; version="0.2.7"; sha256="0ifv6j0kbwayl60bf1rwd1h7424npqsqsvb44ngg7v0ik4bgbyfx"; depends=[base64enc htmltools htmlwidgets jsonlite magrittr readr tibble yaml]; };
-  declared = derive2 { name="declared"; version="0.8"; sha256="16i2gahyw853wkb13aa3wc21gidjd8xzgjf1nfppcyixm1qb7fh9"; depends=[admisc]; };
+  declared = derive2 { name="declared"; version="0.11"; sha256="1m882i1hrz3zv4hawnypl06izv9d3bb16mhdyhb419b5nh2vksyg"; depends=[admisc]; };
   decode = derive2 { name="decode"; version="1.2"; sha256="1qp0765gl3pgfdzjwj7icf3zminxxmrlw6gx3vj51y6c2y5ws4as"; depends=[]; };
   decoder = derive2 { name="decoder"; version="1.2.2"; sha256="1jxgd32bn36ldal26wivhdxgjy247l7r4ickacr1p8rrwxvhpk18"; depends=[]; };
   decomposedPSF = derive2 { name="decomposedPSF"; version="0.1.3"; sha256="0p9n0qi21facdp9c4fzs78ap4w1wvpvkv51kgx1gkr949kw8cv4n"; depends=[forecast PSF Rlibeemd tseries]; };
@@ -8123,7 +8143,7 @@ in with self; {
   deldir = derive2 { name="deldir"; version="1.0-6"; sha256="1igq0l2knsbhizncgydcsidgkvvlwwlkrifbcdyhnzk0bhrdixkd"; depends=[]; };
   delt = derive2 { name="delt"; version="0.8.2"; sha256="06g03wy9r2qvly0lnv5fv4k366mhlk56qkvak0xaxy99p1i34kmv"; depends=[denpro]; };
   deltaPlotR = derive2 { name="deltaPlotR"; version="1.6"; sha256="15vjg3viyfrxvvh34p8i7j8p0vpg5628g8198adhi0i2ri3ygz9a"; depends=[MASS]; };
-  deltar = derive2 { name="deltar"; version="1.0.0"; sha256="1ki89ysz4qlq5z094ybg3aqfcb6g633ccvpj1cg6nri9z5qjwpm1"; depends=[Bchron]; };
+  deltaccd = derive2 { name="deltaccd"; version="1.0.2"; sha256="1iqyycjfmclr9y8gfj61naxwafjgmfwahyrc110qxzb239b501rw"; depends=[data_table doRNG foreach ggplot2 rlang scales statmod]; };
   dematel = derive2 { name="dematel"; version="0.1.0"; sha256="1m84sd46cg7188wnjx09g88xvxdp7i0mdxnynwlqkgcmnwx4bdjw"; depends=[ggplot2 knitr]; };
   deming = derive2 { name="deming"; version="1.4"; sha256="1yx3qrbik6jpqgsi0gqgc7y2cra13qlisg2gq8rvnv57nvcvb421"; depends=[boot]; };
   demoGraphic = derive2 { name="demoGraphic"; version="0.1.0"; sha256="0b2fqa0z875wwd7qdqh2qfvkzh2cpbmck4smf9c0p31wv5yin0sq"; depends=[magrittr MASS officer]; };
@@ -8134,7 +8154,7 @@ in with self; {
   demu = derive2 { name="demu"; version="0.3.0"; sha256="1mp5iz8mg0d6cyqi3f6fdhk6x5xxvng5bi13b7jnlp60wpjrq0il"; depends=[ClusterR fields Matrix Rcpp RcppArmadillo spam]; };
   dendRoAnalyst = derive2 { name="dendRoAnalyst"; version="0.1.3"; sha256="1rg8xra4z3q9czkqydn2587iqwp7whscv8camrkhjpc38788cf4q"; depends=[boot pspline zoo]; };
   dendextend = derive2 { name="dendextend"; version="1.15.2"; sha256="06wjs8451hmnimzgngpzbai3yrgy33133vzzapa8jib9crdqi8sb"; depends=[ggplot2 magrittr viridis]; };
-  dendroTools = derive2 { name="dendroTools"; version="1.2.6"; sha256="0s395c24k0q0wp818mswph09f2qi9cywggbyyxd8482n34g1pq6x"; depends=[boot brnn Cubist dplR dplyr ggplot2 knitr lubridate magrittr MLmetrics oce plotly psych randomForest reshape2 scales viridis]; };
+  dendroTools = derive2 { name="dendroTools"; version="1.2.7"; sha256="00a37mvka1wqj0jghgss3jp4jwvcr74lpf5shmba3jwiaapm3ab9"; depends=[boot brnn Cubist dplR dplyr ggplot2 knitr lubridate magrittr MLmetrics oce plotly psych randomForest reshape2 scales viridis]; };
   dendroextras = derive2 { name="dendroextras"; version="0.2.3"; sha256="0hb7crbgsnbcwvbk05iz5ik45n7zgysmwjj6xc46131yd8l0i1qx"; depends=[]; };
   dendrometeR = derive2 { name="dendrometeR"; version="1.0.0"; sha256="1par27ipgbfbrmdlwvkf82i5dgnfrcawmavakrf8lplin2hhb7gs"; depends=[forecast pspline zoo]; };
   dendsort = derive2 { name="dendsort"; version="0.3.4"; sha256="0rs7y471wrhkgibxdmfh5xhp3pa004rrlm2w08b6qli5gq4im5d2"; depends=[]; };
@@ -8145,7 +8165,7 @@ in with self; {
   densEstBayes = derive2 { name="densEstBayes"; version="1.0-2"; sha256="16fb7vkic9q5p8s4f0f215zmb36fcizqr4r2vm9dxxj9rasrg2f3"; depends=[BH MASS nlme Rcpp RcppArmadillo RcppEigen RcppParallel rstan StanHeaders]; };
   denseFLMM = derive2 { name="denseFLMM"; version="0.1.2"; sha256="1lfhd73zvvz6glq41lb2a9x63fjwjfp53zmy9g78fg6gz5lbnbpm"; depends=[MASS Matrix mgcv mvtnorm]; };
   densitr = derive2 { name="densitr"; version="0.1.0"; sha256="1vqdvfka6wdfxqfy2qcacss0h6wxykmwyijr5blpvlpafjdmngaq"; depends=[changepoint]; };
-  densityClust = derive2 { name="densityClust"; version="0.3"; sha256="1zry0vafajzmr37aylglxfvwplhdygbkb9cvzvh8cy0xgnjrnx13"; depends=[FNN ggplot2 ggrepel gridExtra RColorBrewer Rcpp Rtsne]; };
+  densityClust = derive2 { name="densityClust"; version="0.3.2"; sha256="05x2fi1zdnkrg2nimf8k904j3lpyw0f7nmk6ax5p7x7a98wb2iqs"; depends=[FNN ggplot2 ggrepel gridExtra RColorBrewer Rcpp Rtsne]; };
   densratio = derive2 { name="densratio"; version="0.2.1"; sha256="0x333kfx5mdzzjsqy37j4bmv9iddlgp3wi4774lx8d159lbr6irp"; depends=[]; };
   denstrip = derive2 { name="denstrip"; version="1.5.4"; sha256="0hzxphj740q6pfa1q42knr7n12bmnawg7b2fs74msxn83dka5cmq"; depends=[lattice]; };
   denvax = derive2 { name="denvax"; version="0.1.2"; sha256="0a8x7z7jagshc5h6xy24xrvqv0gm08f78ik6y8ki4i0mhl8c5fyx"; depends=[]; };
@@ -8159,7 +8179,7 @@ in with self; {
   depthTools = derive2 { name="depthTools"; version="0.7"; sha256="00pn4ccsg1hjv83xqk4g0g24cz2a87shlbg8kd2dri4dcagzifg0"; depends=[]; };
   dequer = derive2 { name="dequer"; version="2.0-1"; sha256="04kzlff8xa733qkkx0gacgig7d4l7yvgqmzva0mj8di12byh214p"; depends=[]; };
   derivmkts = derive2 { name="derivmkts"; version="0.2.4"; sha256="1ncqhi6f69jv75dad1l9wsrfxi5m2wizywikkbg7i9qmh42xkh8w"; depends=[mnormt]; };
-  desc = derive2 { name="desc"; version="1.4.0"; sha256="0jfnwn1kpiill8v4hmzdk90yz4gk2ha0prr2p0hq36s40v3y8842"; depends=[crayon R6 rprojroot]; };
+  desc = derive2 { name="desc"; version="1.4.1"; sha256="0m3g5m0g08k674zh4lq0ihmqiwz8jpsfqrdwfqp5p4ngxi8vp7lg"; depends=[cli R6 rprojroot]; };
   descomponer = derive2 { name="descomponer"; version="1.6"; sha256="1yznb6j850gap1bacvx5dkh4030x38041ll61z6an6h7j71yyc5p"; depends=[]; };
   descr = derive2 { name="descr"; version="1.1.5"; sha256="00l3h71y4yfys60sqhifxyxvnjbkxxfxdb4zqjyy0v91pf3z2zv9"; depends=[xtable]; };
   describedata = derive2 { name="describedata"; version="0.1.0"; sha256="10ryy886jr2gwi6h90girl82ivwrmhz1vcwi4f6khmmpwsy95hav"; depends=[broom dplyr forcats ggplot2 haven lmtest purrr rlang stringr tibble tidyr]; };
@@ -8194,9 +8214,9 @@ in with self; {
   devoid = derive2 { name="devoid"; version="0.1.1"; sha256="14cf75wih7401vmrfmswc9cihgmbyn90wg2vjkzv628mm5fgg01h"; depends=[]; };
   devtoolbox = derive2 { name="devtoolbox"; version="0.1.0"; sha256="0ry0liw7a27nndhb5p7migx2ji2g3n1qpip1yr7mlikb7vxap2d6"; depends=[dplyr DT flexdashboard ggiraph ggplot2 gh htmltools httr jsonlite lubridate magrittr markdown purrr reshape2 rmarkdown stringr tidyr tidyselect]; };
   devtools = derive2 { name="devtools"; version="2.4.3"; sha256="0kvbw218jp8pd2lgdjyn94v2iji75s385hkn1qbikcm0pjlmj8g4"; depends=[callr cli desc ellipsis fs httr lifecycle memoise pkgbuild pkgload rcmdcheck remotes rlang roxygen2 rstudioapi rversions sessioninfo testthat usethis withr]; };
-  dexter = derive2 { name="dexter"; version="1.1.4"; sha256="0clyhpnzm8an5hcs4lf34ydqnvj0gpsikfwhd3pmh4sg9rkhiwl5"; depends=[DBI dplyr MASS Rcpp RcppArmadillo rlang RSQLite tidyr]; };
-  dexterMST = derive2 { name="dexterMST"; version="0.9.2"; sha256="118y8a33l85klj6w5vj5mkr64xvmbf16n6ff3nsk7nx7v1f26x6d"; depends=[crayon DBI dexter dplyr igraph Rcpp RcppArmadillo rlang RSQLite tidyr]; };
-  dextergui = derive2 { name="dextergui"; version="0.2.4"; sha256="1vaxgfclbnqdgsgpa0nlqrn0d9fxxj73ggsdp5hnww9j7qwhvn2w"; depends=[Cairo DBI dexter dplyr DT ggExtra ggplot2 ggridges htmltools htmlwidgets jsonlite networkD3 RCurl readODS readxl rlang shiny shinyBS shinyFiles shinyjs tibble tidyr writexl]; };
+  dexter = derive2 { name="dexter"; version="1.1.5"; sha256="013yjv36nfkqxch513gwhasbiwch084235q02lblqg1hyg1fswnx"; depends=[DBI dplyr MASS Rcpp RcppArmadillo rlang RSQLite tidyr]; };
+  dexterMST = derive2 { name="dexterMST"; version="0.9.3"; sha256="1c30v83lx6p90l8a9kia5p0361j3ymbabyb2r6dkkak8n8zwfydl"; depends=[crayon DBI dexter dplyr igraph Rcpp RcppArmadillo rlang RSQLite tidyr]; };
+  dextergui = derive2 { name="dextergui"; version="0.2.5"; sha256="1ms5ypi734yyjp4bxd3hvllm9lpamdk9ynlgfcypw0sji5x7g19j"; depends=[Cairo DBI dexter dplyr DT ggExtra ggplot2 ggridges htmltools htmlwidgets jsonlite networkD3 RCurl readODS readxl rlang shiny shinyBS shinyFiles shinyjs tibble tidyr writexl]; };
   dfCompare = derive2 { name="dfCompare"; version="1.0.0"; sha256="1lhx69j0bkjbnp5jz23hrbxjcf04vf3big4k593ixz003xs2077f"; depends=[]; };
   dfadjust = derive2 { name="dfadjust"; version="1.0.3"; sha256="0s9wsws1nxf3fij0jgi6aqqvbx0clk1rdjjyw9in3d1a6ywzcx89"; depends=[]; };
   dfcomb = derive2 { name="dfcomb"; version="3.0-0"; sha256="1vsqlhmajv33nbnh8igisyv3rzzh2fdwbk5y0zlnrwvr79r19k5w"; depends=[BH Rcpp RcppProgress]; };
@@ -8232,7 +8252,7 @@ in with self; {
   dialrjars = derive2 { name="dialrjars"; version="8.12.42"; sha256="0fn2ic9vllar3wgmgvzx4b2sw5sixzfnjmmk71fnmkii2mfp3s38"; depends=[rJava]; };
   dials = derive2 { name="dials"; version="0.1.0"; sha256="02i9ddzi7gk5bwg87x8bpazk89mn102awgxzp9yw85dgbafqsydh"; depends=[DiceDesign dplyr glue hardhat lifecycle purrr rlang scales tibble vctrs withr]; };
   diaplt = derive2 { name="diaplt"; version="1.3.0"; sha256="1kkqhkv3s8rrpqd05jidjdnqmlnb3s9f8rr34rfqj7k4nh0qzzcz"; depends=[]; };
-  diathor = derive2 { name="diathor"; version="0.0.9"; sha256="1p6y89vi37a8i3fwnj7rb0hdggk6qrxnsrw0sbpajzkwv1jvyal0"; depends=[algaeClassify data_table ggplot2 purrr stringdist stringr tibble tidyr vegan]; };
+  dibble = derive2 { name="dibble"; version="0.1.0"; sha256="1b1z53w6n1ks3iiz1p2rs7ry9w03g5c8vzx4i3zqaqh16shn8p26"; depends=[dplyr pillar rlang tibble tidyselect vctrs]; };
   dice = derive2 { name="dice"; version="1.2"; sha256="0gic7lqnsdmwv3dbzwwmcwdfyfqlq8kpr2pciqphd1j2ligzwl3s"; depends=[gtools]; };
   diceR = derive2 { name="diceR"; version="1.1.0"; sha256="01jh69b7x4agw5w2y9dal9g0nbq8s1ff36vcz2xfsjc0vi76irfs"; depends=[abind assertthat class clue clusterCrit clValid dplyr ggplot2 infotheo klaR magrittr mclust NMF purrr RankAggreg Rcpp stringr tidyr yardstick]; };
   dichromat = derive2 { name="dichromat"; version="2.0-0"; sha256="1l8db1nk29ccqg3mkbafvfiw0775iq4gapysf88xq2zp6spiw59i"; depends=[]; };
@@ -8293,11 +8313,11 @@ in with self; {
   dirichletprocess = derive2 { name="dirichletprocess"; version="0.4.0"; sha256="1gspaynxq5czvnpni57swcqqy17lryjlh3cn9x0mghl527rkbpna"; depends=[ggplot2 gtools mvtnorm]; };
   dirmcmc = derive2 { name="dirmcmc"; version="1.3.3"; sha256="117p3jvinmha7a2phcpzq38ig05kcranp15xbxqvv0cgh3c95fjr"; depends=[mcmcse]; };
   dirmult = derive2 { name="dirmult"; version="0.1.3-4"; sha256="1r9bhw1z0c1cgfv7jc0pvdx3fpnwplkxwz8j8jjvw14zyx803rnz"; depends=[]; };
-  disaggR = derive2 { name="disaggR"; version="1.0.2"; sha256="1vm9p0kil0yr18g1d8xqkf89la3fnxz6r8b6hjlbpv96j3gj0zjk"; depends=[RColorBrewer]; };
+  disaggR = derive2 { name="disaggR"; version="1.0.3.1"; sha256="1nl19kr14i73c165nagb8crhzn8yr18q21f2i7508n90yl61cnfk"; depends=[RColorBrewer]; };
   disaggregation = derive2 { name="disaggregation"; version="0.1.3"; sha256="04wmwwhmcgi1cdr8iyhilsphpzb7r5xs04vhqx5z01y7cgardivx"; depends=[cowplot doParallel dplyr foreach ggplot2 maptools Matrix raster RcppEigen rgdal rgeos sp sparseMVN splancs TMB]; };
   disastr_api = derive2 { name="disastr.api"; version="1.0.5"; sha256="1h5i6pwak16w0gdk8qjz4w9qpffjhzlsrvjkb4acrvgjgrsvz9kp"; depends=[httr jsonlite]; };
   discAUC = derive2 { name="discAUC"; version="0.4.0"; sha256="1l80xz5wrcikrs2b2i05jq3qkx468k891gwmmy5d1mymp4si3z0h"; depends=[dplyr glue rlang tibble]; };
-  discSurv = derive2 { name="discSurv"; version="1.4.1"; sha256="0xi016ah8xc8bv92qvyslvx30anncrki49ccg3qw79yh5vzns1wk"; depends=[data_table functional mgcv mvtnorm]; };
+  discSurv = derive2 { name="discSurv"; version="2.0.0"; sha256="0k585cyz02vqk4w7w20rhn6g9rspmmlbdpv7k837021iyhwwb838"; depends=[data_table functional geepack mgcv mvnfast mvtnorm ranger Rdpack rpart treeClust VGAM]; };
   discfrail = derive2 { name="discfrail"; version="0.1"; sha256="1ll8c0fwwmz2yw8w582422r8bk9lr1570d7m7w2n1flrnqpqmk8j"; depends=[Matrix numDeriv survival]; };
   discgolf = derive2 { name="discgolf"; version="0.2.0"; sha256="07clh1awnibgrh7vl4a51r8dbya2rbmicm8v8x8mq8h8am2b3j0s"; depends=[crul jsonlite xml2]; };
   discharge = derive2 { name="discharge"; version="1.0.0"; sha256="1hwsdrbajmpfdc9arb1pjhx2w45dy3zrba9ibcrnpyqhhr4i1c5m"; depends=[boot checkmate CircStats ggplot2 lmom]; };
@@ -8314,11 +8334,11 @@ in with self; {
   discretecdAlgorithm = derive2 { name="discretecdAlgorithm"; version="0.0.7"; sha256="01x3qfjj7dwv0m9q8zdhfrpbj9ys9y5p7d3z8ywjrqy4jw88svjs"; depends=[igraph Rcpp RcppEigen sparsebnUtils]; };
   discretefit = derive2 { name="discretefit"; version="0.1.2"; sha256="0xyv3lff6xmz9q1k2lprll68fw9ckqhgl1z87pd9rm0ldy969m9p"; depends=[Rcpp]; };
   discretization = derive2 { name="discretization"; version="1.0-1"; sha256="00vq2qsssnvgpx7ihbi9wcafpb29rgv01r06fwqf9nmv5hpwqbmp"; depends=[]; };
-  discrim = derive2 { name="discrim"; version="0.1.3"; sha256="1m54qq2a9k5xphmz7a1701vxvfzyb0g477mb74x0s152gj49xcm0"; depends=[dials parsnip purrr rlang tibble withr]; };
+  discrim = derive2 { name="discrim"; version="0.2.0"; sha256="1w8ji9wj2wm8gvzi3w78dcf6jabjzn32hf2saiz1mybix63rpqxd"; depends=[dials parsnip purrr rlang tibble withr]; };
   disdat = derive2 { name="disdat"; version="1.0-0"; sha256="1q8v40m0vjni3kx0f04qb99adxcx783p9lfixvvq6viz13v1ygcw"; depends=[]; };
   diseasemapping = derive2 { name="diseasemapping"; version="1.5.1"; sha256="0pqilkl56753j1fxy6mh7nx24n6qg2j5faxyxj6abcm6xrnkhmy9"; depends=[rgeos sp]; };
-  diseq = derive2 { name="diseq"; version="0.4.1"; sha256="0cczj2qy7lr7a2sd1k55l3pvc702vjzgxpmpyv3r7fpaaiv1kp9m"; depends=[bbmle dplyr Formula magrittr MASS Rcpp RcppGSL RcppParallel rlang systemfit tibble tidyr]; };
-  disk_frame = derive2 { name="disk.frame"; version="0.6.1"; sha256="0bqsj9qbjy0mfdbygxi65657c4r0bi215r6v7d3swq649pz09r3j"; depends=[benchmarkme bigreadr bit64 crayon data_table dplyr fs fst future future_apply globals glue jsonlite pryr purrr Rcpp rlang stringr]; };
+  diseq = derive2 { name="diseq"; version="0.4.3"; sha256="1dfcgw1qzw2fax5vzw9fjh72hnim2n4d3wa3nd616vx6ydly216l"; depends=[bbmle dplyr Formula magrittr MASS Rcpp RcppGSL RcppParallel rlang systemfit tibble tidyr]; };
+  disk_frame = derive2 { name="disk.frame"; version="0.7.2"; sha256="016sxjvbw8j6inwr1y66hck1dzpnjr79v2fiiylcpgdnc39hc0hn"; depends=[arrow benchmarkme bigreadr bit64 crayon data_table dplyr fs fst future future_apply globals glue jsonlite pryr purrr Rcpp rlang stringr]; };
   diskImageR = derive2 { name="diskImageR"; version="1.0.0"; sha256="1r19k5fdjn6vkn11p5df77fnxfqaz3nciiaai0f3pr2bgpfppzka"; depends=[subplex zoo]; };
   dismo = derive2 { name="dismo"; version="1.3-5"; sha256="1rqf6h4imbqvs7hjd1k4my6154wg0qnmnp5byan403rcshr1jbl1"; depends=[raster Rcpp sp terra]; };
   disordR = derive2 { name="disordR"; version="0.0-9"; sha256="1x9lvdwgvi6gmjfgl03ccqkjpmibz3kswlqnw8flj7x2sx969i4h"; depends=[digest]; };
@@ -8329,7 +8349,7 @@ in with self; {
   disposables = derive2 { name="disposables"; version="1.0.3"; sha256="0q5wacjclspn2fh7z1pg2l67ll51n75wck5h2fdq2vxy3qn3vwis"; depends=[]; };
   dispositionEffect = derive2 { name="dispositionEffect"; version="1.0.0"; sha256="0vx87xylpx3np6afwwylzwp0nb9g8r04ngn8mgr88ycys815fkqw"; depends=[dplyr lubridate magrittr progress purrr rlang]; };
   disprofas = derive2 { name="disprofas"; version="0.1.3"; sha256="16gbd9algrs6pqid8k96p9r9pzfy337jv506alnajvwirs59sldd"; depends=[boot ggplot2]; };
-  disprose = derive2 { name="disprose"; version="0.1.4"; sha256="1lqg2dqbxikvfsnw7kka5kdiz1c7cwzm0ns4jz90bss3nmi3lfy4"; depends=[]; };
+  disprose = derive2 { name="disprose"; version="0.1.5"; sha256="0drnqpgmisavy9rqk3p0f1safw4fshpjn9lq3vjay4k5s8dg37h7"; depends=[]; };
   dissCqN = derive2 { name="dissCqN"; version="0.1.0"; sha256="142f4ggzwdhf2vm9kisayna9a5j17mmy2jckhjrvxh4k5dc3ssf6"; depends=[]; };
   dissUtils = derive2 { name="dissUtils"; version="1.0"; sha256="00fzlmkdfw2s3k824wp2pk3v7cvxnywi1hfp86g4mm95z2qlw9br"; depends=[]; };
   dissever = derive2 { name="dissever"; version="0.2-3"; sha256="1lgs5nmv3lpm4gsryxvcwiwibvvg9flv23q8maisp77x49c18qcp"; depends=[boot caret dplyr foreach magrittr plyr raster sp viridis]; };
@@ -8347,7 +8367,7 @@ in with self; {
   disto = derive2 { name="disto"; version="0.2.0"; sha256="09pafy8y1ifgglqmal32dy34acx06ypsq2bgwsn6fjiqr9kw401j"; depends=[assertthat broom dplyr factoextra fastcluster fastmatch ggplot2 pbapply proxy tidyr]; };
   distory = derive2 { name="distory"; version="1.4.4"; sha256="1ljrs91h4v1h5lb295hjki8bmra2lg3d1bn5x731pnv43pf3ck06"; depends=[ape]; };
   distr = derive2 { name="distr"; version="2.8.0"; sha256="1dyff4m33xmw6hxb3jxzr8vvajg3qz3rfcrfxjxwsswlddfz0zdv"; depends=[MASS sfsmisc startupmsg]; };
-  distr6 = derive2 { name="distr6"; version="1.6.4"; sha256="1h1f42mcsj44px1j7pnj0mmbi4129nsai2nsyvhqrs7iadyx3z27"; depends=[checkmate data_table param6 R6 Rcpp set6]; };
+  distr6 = derive2 { name="distr6"; version="1.6.7"; sha256="0drk81lhmfx199pb5vq5chbxcm8774iqyzw605pj6n2jcz09zhq2"; depends=[checkmate data_table param6 R6 Rcpp set6]; };
   distrDoc = derive2 { name="distrDoc"; version="2.8.0"; sha256="1iq2gbfbsf3h279yh3fnqsi39gdw15vc6r1g33xcb8kgmmqmvf0p"; depends=[distr distrEx distrMod distrSim distrTeach distrTEst MASS RandVar startupmsg]; };
   distrEllipse = derive2 { name="distrEllipse"; version="2.8.0"; sha256="1ymfa8xpgs8zjp4psiwmll5z0vji496fivxmcavspzxy31cw70wx"; depends=[distr distrEx distrSim mvtnorm setRNG startupmsg]; };
   distrEx = derive2 { name="distrEx"; version="2.8.0"; sha256="1gwhsnlrnzyp2x97d9wfdy5pa9z3q5il934wjv4kxs9wsvkwsr5h"; depends=[distr startupmsg]; };
@@ -8378,7 +8398,7 @@ in with self; {
   divest = derive2 { name="divest"; version="0.10.2"; sha256="1r49glh66vdrj7hp8xlqc3g1c13hjl24x7rhd27vv6l1jgvhllgb"; depends=[Rcpp RNifti]; };
   divo = derive2 { name="divo"; version="1.0.1"; sha256="06c4kjl6llvvdr2gk480jcmj2abmqwph7x4vk5nflxm7piimvg7v"; depends=[cluster]; };
   divseg = derive2 { name="divseg"; version="0.0.4"; sha256="0iwxckdfsb28wgpv6d1r8idyn974c38ylpiaxsvn9m8x1wnpnbp7"; depends=[dplyr magrittr rlang sf tibble tidyselect units]; };
-  dixon = derive2 { name="dixon"; version="0.0-7"; sha256="0crpzkshil8836axcywj0r95qmkv31vrw9gqnjqj3xgx6hml6xym"; depends=[spatstat spatstat_geom splancs]; };
+  dixon = derive2 { name="dixon"; version="0.0-8"; sha256="1mflg9mpcidjq1ljgzqdwp6x0g930v9y5jgma1qxi5c5l3irkvg3"; depends=[spatstat spatstat_geom splancs]; };
   dixonTest = derive2 { name="dixonTest"; version="1.0.3"; sha256="1a3yc30g5rbb0jhm2b0iir5i1dy4jyl67spkhx4yysg4snz131wv"; depends=[]; };
   diyar = derive2 { name="diyar"; version="0.4.1"; sha256="0ydpwvjg1vlqn571lwcgsi1ahczqd316c8qc1szg36ashn1imj7f"; depends=[ggplot2 Rfast rlang]; };
   dkDNA = derive2 { name="dkDNA"; version="0.1.1"; sha256="0ycyzn5bmhjl5idp0lndffkninpm9n23wrkrzi59ac8z8ghsnhf4"; depends=[]; };
@@ -8441,7 +8461,7 @@ in with self; {
   doex = derive2 { name="doex"; version="1.2"; sha256="1r999z30ipa04pgck0hfalqxihb1bj8sdhlkkhf4plb7maaz3qm3"; depends=[]; };
   dominanceanalysis = derive2 { name="dominanceanalysis"; version="2.0.0"; sha256="0qxldvlgbysy9j17kb0a9p132a04a4j12h4m0r70zv2752fj24c0"; depends=[]; };
   domino = derive2 { name="domino"; version="0.3.1"; sha256="0f67w0z5jy82kgm3l1rji430ayigw30vmmwp3i1nz0xibsx7jxv4"; depends=[]; };
-  domir = derive2 { name="domir"; version="0.2.0"; sha256="0zy0ymsx6m6d26szpk3h85yknqraa7gxi8765qdxjs1cajl0dgll"; depends=[]; };
+  domir = derive2 { name="domir"; version="0.3.0"; sha256="141xs38j0cdrygqv7pdrbrbfa7b74dgk01d6apxvk3lafy1b8fqv"; depends=[]; };
   donut = derive2 { name="donut"; version="1.0.2"; sha256="0idynkhcdn9va32m1n1rxjyb7ghbkhyy1959wks2bn1a7k4yg87i"; depends=[]; };
   doolkit = derive2 { name="doolkit"; version="1.0.1"; sha256="09kgd1ca1aacvh9gjfns85m36zl5bj095j21avn1jgp8h5mk7301"; depends=[concaveman ggplot2 igraph MASS Morpho rgl Rvcg sp tis usethis]; };
   doremi = derive2 { name="doremi"; version="1.0.0"; sha256="005kp6f4jh8y1ykhri3mjnvc9w66b1a51bji574rkbxd1ans6mal"; depends=[data_table deSolve futile_logger ggplot2 gridExtra lme4 lmerTest zoo]; };
@@ -8461,7 +8481,7 @@ in with self; {
   doubt = derive2 { name="doubt"; version="0.1.0"; sha256="16avp0f7ks2zd4ckakvfm57zng2jk0fg3fz6vbm05lzhqymh6y30"; depends=[unglue]; };
   downlit = derive2 { name="downlit"; version="0.4.0"; sha256="10zvrqdpwavdy97h3q26bqh3k63z61fmc04w9vwsnvmnv8hnh3vl"; depends=[brio desc digest evaluate fansi memoise rlang vctrs yaml]; };
   downloader = derive2 { name="downloader"; version="0.4"; sha256="1axggnsc27zzgr7snf41j3zd1vp3nfpmq4zj4d01axc709dyg40q"; depends=[digest]; };
-  downloadthis = derive2 { name="downloadthis"; version="0.3.0"; sha256="11k53xb2cl324qr77l26jndd07wyrj9gwl0dj59xnqcsknlqdjz1"; depends=[bsplus fs ggplot2 glue htmltools jsonlite magrittr mime readr writexl zip]; };
+  downloadthis = derive2 { name="downloadthis"; version="0.3.1"; sha256="1367hxfi5si9df8pnnq8v8cx6n91hlp95yyl7as8875qbfpjw10v"; depends=[base64enc bsplus fs ggplot2 htmltools magrittr mime readr writexl zip]; };
   downscale = derive2 { name="downscale"; version="4.2-0"; sha256="1ha36jiahvrg75qwzp9wpgnqqizw6ivc02q24fyz5frzssda6wd8"; depends=[cubature minpack_lm raster Rmpfr sp]; };
   downscaledl = derive2 { name="downscaledl"; version="1.0"; sha256="0lqxngzpxj65b48j5w0n8dg6fp4lgg5zpgxc2wj6d9wh5f97l71b"; depends=[dplyr keras magrittr raster Rcpp RcppArmadillo rgdal rstack sp tensorflow]; };
   downsize = derive2 { name="downsize"; version="0.2.2"; sha256="18b9shd79z0bsdnp0apqqwv6c73j4wnfiv41ywqz761nmxbldxbn"; depends=[magrittr R_utils]; };
@@ -8472,7 +8492,7 @@ in with self; {
   dplR = derive2 { name="dplR"; version="1.7.2"; sha256="1g57azixwv3c6x60l1kqdnzylf0ayv3s15wi0av2qcca35z3baa1"; depends=[digest lattice Matrix matrixStats plyr png R_utils signal stringi stringr XML]; };
   dplRCon = derive2 { name="dplRCon"; version="1.0"; sha256="10xnawgnhxp5y949fxs1vvadc1qz2ldy0s9w9w7kf6iqh59d35sw"; depends=[]; };
   dplbnDE = derive2 { name="dplbnDE"; version="0.1.1"; sha256="0hwb4lvydqlkbcxp3jwgzkqk6sqdjkcmkya1cah60sc15n816ksd"; depends=[bnclassify]; };
-  dplyr = derive2 { name="dplyr"; version="1.0.7"; sha256="0g8jsxclj9cgm7a2lyazy78sj62rbzw812lsw3fdsbz0pknkmznj"; depends=[ellipsis generics glue lifecycle magrittr pillar R6 rlang tibble tidyselect vctrs]; };
+  dplyr = derive2 { name="dplyr"; version="1.0.8"; sha256="0xb04ckp29pva1h2rfahqhmk9gcwp2dbbx3av8ip40v7dnha6siv"; depends=[generics glue lifecycle magrittr pillar R6 rlang tibble tidyselect vctrs]; };
   dplyr_teradata = derive2 { name="dplyr.teradata"; version="0.4.1"; sha256="0ygn8cq4dnmzzxfskcir7g0bksgby5sw2j135gvrk599z3v6avg1"; depends=[bit64 DBI dbplyr dplyr odbc]; };
   dplyrAssist = derive2 { name="dplyrAssist"; version="0.1.0"; sha256="1lqizh70b1apyr4578917gv6s0i7p84ak96a57kvwipmh36a4ywn"; depends=[DT magrittr miniUI plyr rstudioapi shiny shinyAce shinyWidgets stringr tidyr tidyverse]; };
   dpmr = derive2 { name="dpmr"; version="0.1.9"; sha256="1cnjywkvjb4fhbf4shjmsrq47f1fg2x21hcm1q5512bm0wg9i6jd"; depends=[digest httr jsonlite magrittr rio]; };
@@ -8531,6 +8551,7 @@ in with self; {
   dst = derive2 { name="dst"; version="1.5.1"; sha256="08cw09hf5jx1qfmrqmhm4713gzq21p0ss3nx7qrs92mpsvprq3yc"; depends=[]; };
   dstat = derive2 { name="dstat"; version="1.0.4"; sha256="023jp0xdbg200ww1gnr3fzgjqd82acag0jps7q6j6m27q11psvgz"; depends=[]; };
   dtangle = derive2 { name="dtangle"; version="2.0.9"; sha256="0yg1fbrqixqp93vdw3grvz1la5l2kidgs730qp6yihkp3260cxf3"; depends=[DEoptimR]; };
+  dtgiw = derive2 { name="dtgiw"; version="0.1.0"; sha256="0iamvnf8s19wxs1wddzag4sgg6dhcplgj4gz8z2zalskpx02ss11"; depends=[]; };
   dti = derive2 { name="dti"; version="1.5.1"; sha256="08da7v7sl88g2jixfplvw9rc5rvlifq3fvyrgh9naa5jsmd8h5ia"; depends=[adimpro aws awsMethods gsl oro_dicom oro_nifti quadprog rgl]; };
   dtp = derive2 { name="dtp"; version="0.1.0"; sha256="0qy8nrbq22bfbajkxq6blkq7583pc5mb392gmqb3c9daxmqn42vb"; depends=[Formula gtools plyr]; };
   dtpcrm = derive2 { name="dtpcrm"; version="0.1.1"; sha256="0k25fm0z3snpx1v2kwd50svgnkjhn5c0hy1gnlw2lif6rjz1fzd9"; depends=[dfcrm diagram]; };
@@ -8539,14 +8560,15 @@ in with self; {
   dtree = derive2 { name="dtree"; version="0.4.2"; sha256="1cpv0pyf515610djxzfw1c83p3alk5a93clg4x9gk7a7qy4cyhr1"; depends=[caret evtree party partykit rpart]; };
   dtt = derive2 { name="dtt"; version="0.1-2"; sha256="0n8gj5iylfagdbaqirpykb01a9difsy4zl6qq55f0ghvazxqdvmn"; depends=[]; };
   dttr2 = derive2 { name="dttr2"; version="0.4.0"; sha256="1a7fmby2bassj3wnx2wk3c4fzzx63saw3963kfs6pq58cbwpqk09"; depends=[chk hms lifecycle]; };
+  dtts = derive2 { name="dtts"; version="0.1.0"; sha256="0jha4fpx7fi9xrw0677i07ip7ydrvyq8g2lfy8g80jkfy6d6pbdd"; depends=[bit64 data_table nanotime Rcpp RcppCCTZ RcppDate]; };
   dtw = derive2 { name="dtw"; version="1.22-3"; sha256="004gm4mzgdzdj807j3bwqsv5lizmnmz5jq514bdjshhkysnzjz6z"; depends=[proxy]; };
   dtwSat = derive2 { name="dtwSat"; version="0.2.7"; sha256="16crcvwj1s45gkg1gl6blll64wf4676qmzrx0kv55sylq0rjlxhf"; depends=[caret data_table dtw ggplot2 lubridate mgcv plyr proxy raster RColorBrewer Rdpack reshape2 rgdal scales sp xtable zoo]; };
-  dtwclust = derive2 { name="dtwclust"; version="5.5.7"; sha256="1frcji5wrwdggww0x4c0mniaxd5d2xjnvadz2vbq046hz46srn63"; depends=[clue cluster dplyr dtw flexclust foreach ggplot2 ggrepel Matrix proxy Rcpp RcppArmadillo RcppParallel RcppThread reshape2 RSpectra shiny shinyjs]; };
+  dtwclust = derive2 { name="dtwclust"; version="5.5.8"; sha256="11kyppfhcw6p9dw8mp1rxj1ba293v0dlcw8r32zz9ji2lmnixv6n"; depends=[clue cluster dplyr dtw flexclust foreach ggplot2 ggrepel Matrix proxy Rcpp RcppArmadillo RcppParallel RcppThread reshape2 RSpectra shiny shinyjs]; };
   dual = derive2 { name="dual"; version="0.0.3"; sha256="1alxh9mj610m7wgr6a97mpzy5ia9vzckhz6wmxyix7xh9mzbn1gw"; depends=[]; };
   dualtrees = derive2 { name="dualtrees"; version="0.1.4"; sha256="05mxwiwnv48jf6ya5qmfc7g2w8wkzhk56k9g0gr2m4cpfab7d5h2"; depends=[]; };
   duawranglr = derive2 { name="duawranglr"; version="0.6.7"; sha256="0hxmvyl81xlp3vv1w7462cjfa9hdz5lki0p5pn0ik7dv5aap3wbq"; depends=[digest dplyr haven readr readxl]; };
   dub = derive2 { name="dub"; version="0.2.0"; sha256="066lzyk44380mf17vx4db4a3a4rs7zl85mj5hjg172khjbqnbixw"; depends=[]; };
-  duckdb = derive2 { name="duckdb"; version="0.3.2"; sha256="0wd7wwxnmkpmm19l55bxxvrvq1y1gxvxs1vlqdnkv1iraqfdhsqr"; depends=[DBI]; };
+  duckdb = derive2 { name="duckdb"; version="0.3.2-1"; sha256="1z0zpw4aqr21lwsdb9c8rj8nmnd2xh7cbwqiv3mlmrl0xn6jgjxs"; depends=[DBI]; };
   duckduckr = derive2 { name="duckduckr"; version="1.0.0"; sha256="1wki8xvqp5hr27iafd9jbryl9faywfkdkpn0pa0afywbic39k2cm"; depends=[crul jsonlite]; };
   dumbbell = derive2 { name="dumbbell"; version="0.1"; sha256="0v0b4wbfskvcnzx10z9v4rf3mq8ccswz63pd6i1z7mggnwv38ps5"; depends=[data_table dplyr ggplot2 rlang rstatix tidyr tidyverse]; };
   dummies = derive2 { name="dummies"; version="1.5.6"; sha256="01f84crqx17xd6xy55qxlvsj3knm8lhw7jl26p2rh2w3y0nvqlbm"; depends=[]; };
@@ -8574,6 +8596,7 @@ in with self; {
   dynaTree = derive2 { name="dynaTree"; version="1.2-10"; sha256="1ng672mlv98xnsbd4xq70hxc8j158la4n63y46rw74granaz29ya"; depends=[]; };
   dynamAedes = derive2 { name="dynamAedes"; version="2.0.2"; sha256="0pxj09pz9l2p5g5r31a6jgw283xj12jh3j0x2s63lczj236agl97"; depends=[doParallel drc fields foreach insol raster slam sp]; };
   dynamac = derive2 { name="dynamac"; version="0.1.11"; sha256="0dzw4h128z53vwdpkikhxqil0xjrcjrp1zmz0fy2qhq0n74sdyar"; depends=[lmtest MASS]; };
+  dynamic = derive2 { name="dynamic"; version="1.1.0"; sha256="15jxly44rj2x79jvps2ln0hrm1384p56yll9jk96w1vhaf3gbsxm"; depends=[dplyr ggplot2 lavaan magrittr patchwork purrr simstandard stringr tibble tidyr]; };
   dynamicTreeCut = derive2 { name="dynamicTreeCut"; version="1.63-1"; sha256="1fadbql7g5r2vvlkr89nlrjxwp4yx4xrdqmv077qvmnx9vv0f4w3"; depends=[]; };
   dynamichazard = derive2 { name="dynamichazard"; version="1.0.1"; sha256="0z0hyj8qrs7x5cfj20sww1rs207v4bqgz86x0nq1z7mwdrpa7b4v"; depends=[boot Rcpp RcppArmadillo survival]; };
   dynatop = derive2 { name="dynatop"; version="0.2.1"; sha256="0by0kvb1pivh5mjsf1a7qcgzz3x160cvgvwwcsynh37askxd2wf1"; depends=[R6 Rcpp xts zoo]; };
@@ -8594,12 +8617,11 @@ in with self; {
   dynr = derive2 { name="dynr"; version="0.1.16-27"; sha256="0rrzi2x19sdi42vpdi8a3lpsbna5kpf2rzvpf3m632b16wca2vnx"; depends=[car deSolve fda ggplot2 latex2exp magrittr MASS Matrix mice numDeriv plyr Rdpack reshape2 stringi tibble xtable]; };
   dynsbm = derive2 { name="dynsbm"; version="0.7"; sha256="169yk539vynjbn89q6vs3l3fx7hk8n3i1msa4jws5vypgljc2rir"; depends=[RColorBrewer Rcpp riverplot]; };
   dynsim = derive2 { name="dynsim"; version="1.2.3"; sha256="1fk23cp2hvkn7msxrdc9cnm4pmcmhcdf3q6rwm507bniigrswnx4"; depends=[ggplot2 gridExtra MASS]; };
-  dynsurv = derive2 { name="dynsurv"; version="0.4-2"; sha256="0gy9q7l7k37bxm3d37adpvqa45lvr048a309jqc052f179v38mlb"; depends=[BH data_table ggplot2 nleqslv splines2 survival]; };
+  dynsurv = derive2 { name="dynsurv"; version="0.4-3"; sha256="1vqf0f3x671vz1w5s2axq159jb1pzjx402qjiwy5ymp05vi0kql3"; depends=[BH data_table ggplot2 nleqslv splines2 survival]; };
   dynutils = derive2 { name="dynutils"; version="1.0.9"; sha256="1pcj4igaw1g898xb42kcpzfmqy80xai5ki5bpnkf8hg738wm00qz"; depends=[assertthat crayon desc dplyr magrittr Matrix proxyC purrr Rcpp remotes stringr tibble]; };
   dynwrap = derive2 { name="dynwrap"; version="1.2.2"; sha256="0jsikx274nyjq4w286j4wqxrwyv6hvgx923clvdm6ygng1pn1cfr"; depends=[assertthat babelwhale crayon dplyr dynparam dynutils glue igraph magrittr Matrix processx purrr readr reshape2 stringr tibble tidyr yaml]; };
   e1071 = derive2 { name="e1071"; version="1.7-9"; sha256="09i2hmyf1bxansqp24p9n9djlzzarclqs173gjjv3fg0giga3ycv"; depends=[class proxy]; };
   eAnalytics = derive2 { name="eAnalytics"; version="0.1.4"; sha256="15hhd4q2yxzq3a3awvk81ixa43hk519ym8ap7v1ahghyr0njnyyf"; depends=[dplyr DT energyr googleVis leaflet plotly shiny shinydashboard shinytest shinyWidgets]; };
-  eBsc = derive2 { name="eBsc"; version="4.13"; sha256="0n4v07462kxcsyjdy0cjbkn48ryzfnrvj28gxpsxwzn2sddfpl86"; depends=[Brobdingnag MASS Matrix nlme Rcpp RcppArmadillo]; };
   eCAR = derive2 { name="eCAR"; version="0.1.1"; sha256="01yfvvp4615vj6sdz751xkmvf5j22jk5fgrj6bhblr6xv0j25xc0"; depends=[Matrix]; };
   eChem = derive2 { name="eChem"; version="1.0.0"; sha256="0wmf204hqd4s5har5l9bkcbrbmbqbb8m11w2aivi2gs98f3hy51p"; depends=[animation plot3D]; };
   eDMA = derive2 { name="eDMA"; version="1.5-3"; sha256="0wyp81si6lcispqng4c7lii22qbyblvijgnlxvcsnkcxj5hpm76j"; depends=[Rcpp RcppArmadillo xts zoo]; };
@@ -8610,7 +8632,7 @@ in with self; {
   eMLEloglin = derive2 { name="eMLEloglin"; version="1.0.1"; sha256="087zw48lykls2jcsmpqd5jkrlpr0j423snp00liszjhdpdh59saq"; depends=[lpSolveAPI]; };
   eNchange = derive2 { name="eNchange"; version="1.0"; sha256="07vdi05fr6mynb86haas21izdcjiagw14p1h8n0qr1hb3klvs8n5"; depends=[ACDm doParallel foreach hawkes iterators Rcpp]; };
   ePCR = derive2 { name="ePCR"; version="0.9.9-11"; sha256="0bkvjvygdnzcc23sslgkcrx11mzwgsqss37lwnbr7rq0jp1sw46s"; depends=[Bolstad2 glmnet hamlet impute pracma survival timeROC]; };
-  eRTG3D = derive2 { name="eRTG3D"; version="0.6.4"; sha256="1illpky5p3jappqia1334ra804h18l065r1vkfvpjw8y3hxg2ls2"; depends=[CircStats ggplot2 pbapply plotly raster rasterVis tiff]; };
+  eRTG3D = derive2 { name="eRTG3D"; version="0.7.0"; sha256="1d559p1z73zqd5ym0bs7lpp1w1di7sxpryq41hvkj7azrlijy0ry"; depends=[CircStats ggplot2 pbapply plotly raster rasterVis tiff]; };
   eRm = derive2 { name="eRm"; version="1.0-2"; sha256="0smym010kswc5vx90qr3x1vl16xj1x1i54rvrj006dc4agc1vmlk"; depends=[colorspace lattice MASS Matrix psych]; };
   eSDM = derive2 { name="eSDM"; version="0.3.7"; sha256="0rv5hhjsdkq0837822d52xfvfbj9qx1kjmqj8wyny335gv631205"; depends=[dplyr magrittr purrr rlang ROCR sf shiny units]; };
   eSIR = derive2 { name="eSIR"; version="0.4.2"; sha256="05gpskdzjdm3kp7skqvy7dmj8sgh4jhpkm6akmxlfxn8b627zvg1"; depends=[chron coda data_table ggplot2 gtools reshape2 rjags scales]; };
@@ -8625,8 +8647,8 @@ in with self; {
   easyAHP = derive2 { name="easyAHP"; version="0.1.1"; sha256="161mn90j9ph1p9277mj61hch8ndcv7k9izs32q93y5wp474gzynd"; depends=[]; };
   easyCODA = derive2 { name="easyCODA"; version="0.34.3"; sha256="1s1zjjvswl3444m84n6c5sznva4y19kcm171xkcy1zdx3wqmd2m3"; depends=[ca ellipse vegan]; };
   easyDes = derive2 { name="easyDes"; version="6.0"; sha256="12p7ls0q9srrz5h0f0996mmw33shrfbya481s0d5d509vbw8ik6d"; depends=[multcomp PMCMRplus]; };
-  easyDifferentialGeneCoexpression = derive2 { name="easyDifferentialGeneCoexpression"; version="0.9"; sha256="0nmfkb5dsz93h56vcmz70irr1pd9y8195q5fd079l3bhslabymk2"; depends=[annotate Biobase diffcoexp geneExpressionFromGEO GEOquery jetset magrittr R_utils stringi xml2]; };
-  easyNCDF = derive2 { name="easyNCDF"; version="0.1.0"; sha256="1p6b1lcbw2ix6hqqghgfid5yd58yqg1cqnj99r5svli3ivr7x6js"; depends=[abind ClimProjDiags ncdf4]; };
+  easyDifferentialGeneCoexpression = derive2 { name="easyDifferentialGeneCoexpression"; version="1.0"; sha256="1dzm01hscq8dyb2kpra3bh9hfh6pjwvxbf4dip18sjgsl8vn058r"; depends=[annotate Biobase diffcoexp geneExpressionFromGEO GEOquery jetset limma magrittr R_utils stringi xml2]; };
+  easyNCDF = derive2 { name="easyNCDF"; version="0.1.1"; sha256="1ffpl5zf9i62ifiasimv32j9s9bpmbqi9wrv520124arv4lwcyix"; depends=[abind ClimProjDiags ncdf4]; };
   easyPSID = derive2 { name="easyPSID"; version="0.1.2"; sha256="0npih5xpf2a5xw2iz68z9ckm8d4cpradzzdn50rdpg4gqvaq7azp"; depends=[foreign LaF stringr]; };
   easyPubMed = derive2 { name="easyPubMed"; version="2.13"; sha256="1wd8idyqz7kgygp34mjp2abx82775ry8l07vsqdlqnc6fdnvg55d"; depends=[]; };
   easySVG = derive2 { name="easySVG"; version="0.1.0"; sha256="03gl5gl0yqgpygd4kna79wrhflbnq3zrz3iq2i8hk9xqd83mszh3"; depends=[]; };
@@ -8634,6 +8656,7 @@ in with self; {
   easyVerification = derive2 { name="easyVerification"; version="0.4.4"; sha256="08mih1arx01vj7cs1jsln644pcvslpyw1rgr6jmv2czr6xd8qb7d"; depends=[pbapply Rcpp SpecsVerification]; };
   easyalluvial = derive2 { name="easyalluvial"; version="0.3.0"; sha256="02l0jy3bwp3qrz6g5iknl2fsfqi6a6wzn8q18k8518xczlsn1gbd"; depends=[dplyr forcats ggalluvial ggplot2 ggridges gridExtra magrittr progress progressr purrr randomForest RColorBrewer recipes rlang stringr tibble tidyr]; };
   easyanova = derive2 { name="easyanova"; version="7.0"; sha256="1zpwh3r1r0n11hgqzph8f2aac44qb6rpnhk73hcblq0f9vs0an55"; depends=[nlme]; };
+  easycensus = derive2 { name="easycensus"; version="0.2.1"; sha256="1kf1pszhxw8b95dy07fby16zspdicjisblngyxs5iahi5fhjfl71"; depends=[cli dplyr rlang stringr tidycensus]; };
   easycsv = derive2 { name="easycsv"; version="1.0.8"; sha256="1i2k5372b6a5pypk6m0rsvvkcy0y51pvh57a60rpgqk8q0yq8pig"; depends=[data_table]; };
   easylabel = derive2 { name="easylabel"; version="0.2.4"; sha256="1pqdaymcrqjdqj0fhb1q7i1i8p7r7iwzcn08mcq5wlwr52kcpvfy"; depends=[DT gtools plotly RColorBrewer shiny shinybusy shinycssloaders splus2R]; };
   easynls = derive2 { name="easynls"; version="5.0"; sha256="1ma2q4y5dxk6q99v880vqfsgy1fha96j7pi8ch699l0pi6bx0d6c"; depends=[]; };
@@ -8656,6 +8679,7 @@ in with self; {
   ebirdst = derive2 { name="ebirdst"; version="0.3.3"; sha256="05k388rsqjgia9jgnlq799l22zg10kvxs7l4b51kknrpqd5pis8d"; depends=[DBI dplyr fasterize gbm ggplot2 gridExtra jsonlite magrittr mgcv PresenceAbsence rappdirs raster rgdal rlang RSQLite sf stringr tidyr viridisLite xml2]; };
   ebmc = derive2 { name="ebmc"; version="1.0.1"; sha256="1z6s1blc2b6b13pk2sd6lcczdcldgjh65cnycjcw7d2g2hnxcifh"; depends=[C50 e1071 pROC randomForest rpart smotefamily]; };
   ebmstate = derive2 { name="ebmstate"; version="0.1.3"; sha256="04pg9yqbjrq10ai13c8zm8sy7spnf96ldbbql7qysjl91ljgrqz6"; depends=[HDInterval mstate Rcpp survival]; };
+  ebnm = derive2 { name="ebnm"; version="1.0-9"; sha256="0izzfylcmq6zajngjyw85kbr8jys49qcgsadqkj85v2k1hg2jw7q"; depends=[ashr deconvolveR dplyr ggplot2 horseshoe magrittr mixsqp rlang truncnorm trust]; };
   ebreg = derive2 { name="ebreg"; version="0.1.3"; sha256="1xrs9afjd5hkdmhglj3md5i5hm7awlcdlccz3y2lw4c73lx31ywz"; depends=[lars Rdpack]; };
   ec50estimator = derive2 { name="ec50estimator"; version="0.1.0"; sha256="1zg4p1734q2jzifzfi2lf9wz3687s3cdn0yzkiwbc6w49mgdw877"; depends=[dplyr drc magrittr tibble tidyr]; };
   ecap = derive2 { name="ecap"; version="0.1.2"; sha256="0d260y4phh1a7zlj2lgvdf7xd2z14l9djv7nrwa84pwqqyijc7rl"; depends=[ggplot2 quadprog]; };
@@ -8663,8 +8687,7 @@ in with self; {
   ecce = derive2 { name="ecce"; version="1.0.9"; sha256="071ahimmwc1bgcwli4c40h7drdg5ldhh0w1ldzxkjc78qyw8s23d"; depends=[purrr RCurl rjson stringr]; };
   ecd = derive2 { name="ecd"; version="0.9.1"; sha256="0d8mf5q6n7k5qj6kxvrb3habl0qmn2rxv814kydkrz2bg0scvm1q"; depends=[digest ggplot2 gridExtra gsl moments optimx polynom RcppFaddeeva Rmpfr RSQLite stabledist xtable xts yaml zoo]; };
   ecdfHT = derive2 { name="ecdfHT"; version="0.1.1"; sha256="1n3n9n86pj8c54l3xvp7knvi0ajbnjmz9pi79p7wfq92a90fqx48"; depends=[rgl]; };
-  ecespa = derive2 { name="ecespa"; version="1.1-13"; sha256="0a8s923xzw6wkl9240mqsr7lpvjmi20kqn2zsbax3rrrdf4gqfkx"; depends=[spatstat spatstat_core spatstat_geom]; };
-  ech = derive2 { name="ech"; version="0.1.1.2"; sha256="1mw68dkm6n6zj27rmyw33gaha1nly1srr6v1d5iib72b1gwnik8l"; depends=[assertthat curl dplyr fs geouy glue haven janitor labelled laeken purrr readxl rlang srvyr statar stringr survey tidyr]; };
+  ecespa = derive2 { name="ecespa"; version="1.1-14"; sha256="07pldcwm1pi117rjl3y05x6kxl5lxs4y5aiwq0jd02mx43zy296c"; depends=[spatstat spatstat_core spatstat_geom spatstat_random]; };
   echarts4r = derive2 { name="echarts4r"; version="0.4.3"; sha256="1hjjqbc6dvz6bi6lsqlvlkrmzqv1g205cd0f8k0a7lq37hcqsw7s"; depends=[broom corrplot countrycode dplyr htmltools htmlwidgets jsonlite purrr rstudioapi scales shiny]; };
   echarty = derive2 { name="echarty"; version="1.4.3"; sha256="047vqwspl7x94xlj2726hyma9f61406vq7vm7hk3j94r2zk64vs1"; depends=[dplyr htmltools htmlwidgets jsonlite shiny]; };
   echelon = derive2 { name="echelon"; version="0.1.0"; sha256="0dw15igx8jwgfr1f7p5pspxjiqhqmfp7shdhq8g07f4bj76irzm4"; depends=[]; };
@@ -8675,9 +8698,9 @@ in with self; {
   eclust = derive2 { name="eclust"; version="0.1.0"; sha256="01x327w02m357lngmgv3drni2s67sass25xk9vni1z434n8i4428"; depends=[caret data_table dynamicTreeCut magrittr pacman pander stringr WGCNA]; };
   ecm = derive2 { name="ecm"; version="6.3.0"; sha256="1g8y8wks7asjyybdh4nf19w5v8kvl56n69dl0sd0mlir98i4jmr3"; depends=[car earth lmtest sandwich urca]; };
   ecmwfr = derive2 { name="ecmwfr"; version="1.3.0"; sha256="0xwbcgd590vk4civa4s039avvvxsazzh9y05lw591mpm79lz19mj"; depends=[curl getPass httr keyring memoise]; };
-  ecoCopula = derive2 { name="ecoCopula"; version="1.0.1"; sha256="18gkib3m4p7vi9jgzyrnznl9kcjizlh77icqrv8xjpi40ksw9m2r"; depends=[betareg doParallel foreach glasso glm2 igraph MASS mgcv mvabund ordinal plyr sna tweedie]; };
+  ecoCopula = derive2 { name="ecoCopula"; version="1.0.2"; sha256="1j3n9h7rm66r8vmzzhy5mjh36gs1qnsh7rq33ymjpkkfy698gbpm"; depends=[betareg doParallel foreach glasso glm2 igraph MASS mgcv mvabund ordinal plyr sna tweedie]; };
   ecochange = derive2 { name="ecochange"; version="2.5"; sha256="1lvwsi4g0b1whdcjpiri6ml90155cc5nfvxp9cnhmp9q3j9bjy1a"; depends=[curl data_table dplyr forcats gdalUtilities getPass ggplot2 httr landscapemetrics lattice R_utils raster rasterDT readr rgdal rgeos rlang rvest sf tibble viridis xml2]; };
-  ecocomDP = derive2 { name="ecocomDP"; version="1.2.0"; sha256="0kfj4fn6wa0fygrdzxqm3msvwrljiazwav35gk57yp2zvdj2n34z"; depends=[data_table dplyr EML emld geosphere ggplot2 httr lubridate magrittr neonUtilities RColorBrewer rlang rmarkdown stringr tidyr uuid xml2]; };
+  ecocomDP = derive2 { name="ecocomDP"; version="1.2.1"; sha256="06im6d0fx749ic6kjbxa6mk4cn98lz2q7939v627qrhwjkmmgx7a"; depends=[data_table dplyr EML emld geosphere ggplot2 httr lubridate magrittr neonUtilities RColorBrewer rlang rmarkdown stringr tidyr uuid xml2]; };
   ecodist = derive2 { name="ecodist"; version="2.0.7"; sha256="1dkf2m6glry5wzwfjiyw6sac89v6g0frbagr9cyfp2hcp0y5g4n2"; depends=[]; };
   ecolMod = derive2 { name="ecolMod"; version="1.2.6"; sha256="1n30faldfhpm2jkaw793vr220kgn3bmn8hxhw32rax294krmwn4v"; depends=[deSolve diagram rootSolve shape]; };
   ecolTest = derive2 { name="ecolTest"; version="0.0.1"; sha256="0gkhf8gdjvkys54x0qx0h5i0lz0ksba6xdy15wzblzhym43vh9wf"; depends=[]; };
@@ -8706,7 +8729,6 @@ in with self; {
   ed50simulation = derive2 { name="ed50simulation"; version="0.1.1"; sha256="00fknpssrpin8bpjhf2lsjx3lbpinrmqa6jzmgy3nslkc51x0939"; depends=[boot]; };
   eda4treeR = derive2 { name="eda4treeR"; version="0.3.0"; sha256="1shhajd9m9cxj9hdz34bnbs6sx20si37wh6ljw0wx5yrc9m7z9ib"; depends=[dae dplyr emmeans ggplot2 lme4 magrittr pbkrtest tidyverse]; };
   edbuildmapr = derive2 { name="edbuildmapr"; version="0.3.1"; sha256="0hc5vfpilqxva88dzgp57j9cgsq64r75vhm3hhl8lhi2wwapwk1d"; depends=[dplyr magrittr sf spdep stringr tibble tidyselect tmap]; };
-  edbuildr = derive2 { name="edbuildr"; version="0.3.0"; sha256="19fsk8qkxyzncn614fy6hmmxpv1dikqghs101hbzd0g0a511xk8f"; depends=[dplyr magrittr openxlsx scales stringr tidyselect]; };
   edcc = derive2 { name="edcc"; version="1.0-0"; sha256="036fi6mnn9480hkb378xb5jilkfvdydjmkyw4mcc9s1lz195f62w"; depends=[spc]; };
   edci = derive2 { name="edci"; version="1.1-3"; sha256="1f1ry2adfranfrrvf1gkiy58pra3z6bray4v5fgr0z9n1ybcaff0"; depends=[]; };
   edcpR = derive2 { name="edcpR"; version="1.0.1"; sha256="02d33cd9pkcjrbl9qipcjzkhrc68j7bybg1hpnsngiz4wmf3bfik"; depends=[]; };
@@ -8760,9 +8782,8 @@ in with self; {
   eflm = derive2 { name="eflm"; version="0.3.0"; sha256="0pl1z0yy257x4yhy2m7w6xkicr2a5b37rdsrf7a5ramk7z2nvs4m"; depends=[tibble]; };
   efreadr = derive2 { name="efreadr"; version="0.2.2"; sha256="1h27by1m451wrnw017005avs5yj3fjzrm2lq5153aqm1mbbxxwvs"; depends=[dplyr ensurer magrittr readr]; };
   ega = derive2 { name="ega"; version="2.0.0"; sha256="04kwh24aap22yclmcrix3vi553qb30hd43mgfzpdl0cw3ibrh7xg"; depends=[ggplot2 mgcv]; };
-  egcm = derive2 { name="egcm"; version="1.0.12"; sha256="0nssf5six1j7z6fss7478zdbsfx60myzw833m7nsnaf1r8n4ixaf"; depends=[ggplot2 MASS pracma quantmod tseries urca xts zoo]; };
   egg = derive2 { name="egg"; version="0.4.5"; sha256="1fy7srpiavfn8kyrr1m84an7acgwi6ydzrg71m3b0vk7y9ybmj0m"; depends=[ggplot2 gridExtra gtable]; };
-  eggCounts = derive2 { name="eggCounts"; version="2.3-1"; sha256="0pm96j7sacy56kvif6950jdxqqzn8y3alnkd4j4pr2a6a3mszfzj"; depends=[BH boot coda lattice numbers Rcpp RcppEigen RcppParallel rootSolve rstan rstantools StanHeaders]; };
+  eggCounts = derive2 { name="eggCounts"; version="2.3-2"; sha256="1hb7a78db97xz5hm311d60n2kg1wdlrf57vg4ixamqihyrcs5r4v"; depends=[BH boot coda lattice numbers Rcpp RcppEigen RcppParallel rootSolve rstan rstantools StanHeaders]; };
   egor = derive2 { name="egor"; version="1.22.1"; sha256="15nl5lz5n3qil84fsfq966q6rks7wgx1dc2bfcgiaavff4n22acz"; depends=[dplyr purrr rlang srvyr tibble tidygraph tidyr]; };
   eha = derive2 { name="eha"; version="2.9.0"; sha256="069nxf7mfx2b2r1961jf0mcgxbc132ljykr17p3k8pax39m2p78n"; depends=[survival]; };
   ehaGoF = derive2 { name="ehaGoF"; version="0.1.1"; sha256="15hpzj3ridl6w3pd5z86d88cc88jw09qpqhsdwkar4dby8lgxhi0"; depends=[]; };
@@ -8785,6 +8806,7 @@ in with self; {
   eive = derive2 { name="eive"; version="2.3"; sha256="073hwx944db7zxq6yib6yvciaic11k49zl1iqphippcd5ygkad80"; depends=[Rcpp]; };
   eivtools = derive2 { name="eivtools"; version="0.1-8"; sha256="0ynmrql6dv10m7cwba5mzwlbvp6ab53nzqqvk3ihwyiqzmnnmpk4"; depends=[R2jags]; };
   eixport = derive2 { name="eixport"; version="0.5.0"; sha256="1k5p9v5jmw5cs31sn69fjdfhh5yyzk85828aljsmsyx1ycibnwmg"; depends=[cptcity data_table ncdf4 raster sf sp]; };
+  eks = derive2 { name="eks"; version="1.0.0"; sha256="1r9f5j2drsc8ladhbhsls29wqsmm4wprfmapas0ba3h2anw75scd"; depends=[dplyr FNN ggplot2 isoband ks mapsf sf]; };
   elaborator = derive2 { name="elaborator"; version="1.1"; sha256="1kq3qqqywpzrk1ichsljvfijhsybmj7s0scmswmwi2crqi67gzp8"; depends=[bsplus dendextend dplyr forcats haven purrr RColorBrewer reshape2 rlang seriation shape shiny shinydashboard shinyWidgets tidyr]; };
   elasdics = derive2 { name="elasdics"; version="0.1.5"; sha256="1q6l32v3y5l1n9g4si6swc3ck1nndn4xsj0hw1q9b4x5dlxvfziv"; depends=[numDeriv]; };
   elasso = derive2 { name="elasso"; version="1.1"; sha256="0nz3vw803dvk4s45zc9swyrkjwna94z84dn4vfj3j17h74a0cij2"; depends=[glmnet SiZer]; };
@@ -8802,6 +8824,7 @@ in with self; {
   elevatr = derive2 { name="elevatr"; version="0.4.2"; sha256="1a5j7hb9fsy9ybrdlywbm552kb2hj6ch1m8kvi2hybm99yw33n81"; depends=[furrr future httr jsonlite progressr purrr raster sf slippymath sp units]; };
   elexr = derive2 { name="elexr"; version="1.0"; sha256="1xmrzlp55z6k3psdg4a3x3rsilvq3k37v9r7ydfn80ahvqjz0fqh"; depends=[]; };
   elfDistr = derive2 { name="elfDistr"; version="1.0.0"; sha256="11h91mwiw2pr0c8zvyzqql275falpiajv784n2rd5xs9azprqdd0"; depends=[Rcpp]; };
+  elfgen = derive2 { name="elfgen"; version="2.2.3"; sha256="00rkhw4h7i1clnfmg6dhc8gz9wwmaaywnc9wrs28h0b8a8lls9nh"; depends=[ggplot2 quantreg RJSONIO scales sqldf stringr testit]; };
   elhmc = derive2 { name="elhmc"; version="1.1.0"; sha256="0ngva7rnfj75fq93ycsv929m9ykijp48r7cvd6sfmi0sqsjinax5"; depends=[emplik MASS plyr]; };
   elisr = derive2 { name="elisr"; version="0.1.1"; sha256="1kz07fyffaqgda9rqidxzxz0bxzhyb8pyxpzqsvjsn1i9w98cb5k"; depends=[]; };
   elitism = derive2 { name="elitism"; version="1.0.4"; sha256="0n5g1nd1dd5wc76qa2va1lyxahg9p062l8wdqzq43ah6943pjzgr"; depends=[MASS]; };
@@ -8815,17 +8838,17 @@ in with self; {
   elrm = derive2 { name="elrm"; version="1.2.5"; sha256="1kqwr0nfmnb729h01p14a24kd9scsw7j7qj133kpg0ppcfsnygld"; depends=[coda]; };
   elsa = derive2 { name="elsa"; version="1.1-28"; sha256="01sj2a4yhv5m6qj6ih26zw4yzd8s27lll7yp0yysjjrwz79a0fbq"; depends=[raster sp]; };
   eltr = derive2 { name="eltr"; version="0.1.0"; sha256="0f4sy2hhsbghasl5xcnqlgxqhb503pl73c5vdkgpcm73smrqbpbv"; depends=[data_table]; };
+  emIRT = derive2 { name="emIRT"; version="0.0.13"; sha256="1z6yd9m6vggbp42qms2sg0rbxjpg15x9m8gkdz1p3q4aqrc2ncj0"; depends=[pscl Rcpp RcppArmadillo]; };
   emayili = derive2 { name="emayili"; version="0.7.5"; sha256="1kkcnj7knfiq1pr0yq2sfldvrxjw5j9xg62crsiiwsj0ilnzw6bk"; depends=[base64enc commonmark curl digest dplyr glue htmltools httr logger magrittr mime purrr rmarkdown rvest stringi stringr tidyr urltools xfun xml2]; };
   emba = derive2 { name="emba"; version="0.1.8"; sha256="1bzp1cplr977w87bm0pvabvgai91a3j51pfjn4lc1ncjbr2v6wl0"; depends=[Ckmeans_1d_dp dplyr igraph purrr readr rje stringr tibble tidyr tidyselect usefun visNetwork]; };
   embed = derive2 { name="embed"; version="0.1.5"; sha256="029ysbfvgb1sb14xs0p6dswcxbpgnhvshhs2hcqbrizysb7c7bj2"; depends=[dplyr generics keras lifecycle purrr recipes rlang rsample tensorflow tibble tidyr uwot withr]; };
-  embryogrowth = derive2 { name="embryogrowth"; version="8.2"; sha256="1dq3vz70ai63mfmhfs9mavmx3kqsbdy2m7pfv74lk3gj42rzdbvx"; depends=[deSolve HelpersMG numDeriv optimx]; };
+  embryogrowth = derive2 { name="embryogrowth"; version="8.3-4"; sha256="0f2ks472c9nr4k9vr2ig1jr2syklm8yahhlchs8b6af10dz7sf0n"; depends=[deSolve HelpersMG numDeriv optimx]; };
   emdbook = derive2 { name="emdbook"; version="1.3.12"; sha256="0ls3zxxlwmdv7zn1v9i1y9zc2sn0hbgmyjvsj7zn3ajsw7wwlih6"; depends=[bbmle coda lattice MASS plyr]; };
   emdi = derive2 { name="emdi"; version="2.1.1"; sha256="1imw4zlx338yfp4kb6ax4z1ni5f6q5mlcvfx7xm05j0nqigjphv9"; depends=[boot formula_tools ggplot2 gridExtra HLMdiag MASS moments MuMIn nlme openxlsx parallelMap readODS reshape2 saeRobust spdep stringr]; };
-  emdist = derive2 { name="emdist"; version="0.3-1"; sha256="1z14pb9z9nkd0f2c8pln4hzkfqa9dk9n3vg8czc8jiv0ndnqi7rq"; depends=[]; };
+  emdist = derive2 { name="emdist"; version="0.3-2"; sha256="05mv6xhm15b0mq9kzyiblkb14bdqmjrwl64ghdk66il0w8i7p6nh"; depends=[]; };
   emg = derive2 { name="emg"; version="1.0.9"; sha256="04sm05xnjns7wcvpk35ywkxy6g0mm84r060mkmzh64wq58c2q06l"; depends=[moments]; };
   emhawkes = derive2 { name="emhawkes"; version="0.9.5"; sha256="0b6kjwx2lsz5rj8819n71nvvchjpys90ns5n6gcgfwn5afzfdvql"; depends=[maxLik]; };
   emld = derive2 { name="emld"; version="0.5.1"; sha256="0cvnfvzskvpcqzs6fwrpjcqrc6yrfciliy9jj0c9h4iyag0g0b9b"; depends=[jsonld jsonlite xml2 yaml]; };
-  emma = derive2 { name="emma"; version="0.1-0"; sha256="0psd8lrbcqla8mkhp0wlassaaimgwlmqy5yv2wwcq59mc5k1v27f"; depends=[clusterSim earth]; };
   emme2 = derive2 { name="emme2"; version="0.9"; sha256="035s4h95ychqb14wib0dqbg4sjy9q01fsryr0ri25g1hsi5f8lpm"; depends=[reshape]; };
   emmeans = derive2 { name="emmeans"; version="1.7.2"; sha256="1g112yvqvxi83x128hwz4qpifwihlm0y5szg82cdsx3c9cm1rrfk"; depends=[estimability mvtnorm numDeriv xtable]; };
   emoa = derive2 { name="emoa"; version="0.5-0.1"; sha256="0rkr4d4fyqxmsrlbzar27z97qkw4cl1dkvfnhbdwpgg9fi1cixmz"; depends=[]; };
@@ -8867,7 +8890,7 @@ in with self; {
   ensr = derive2 { name="ensr"; version="0.1.0"; sha256="18b81iswvby7k5akbfdyc6a8j1621d4d35hxmgjip5kyvf5cb3p8"; depends=[data_table ggplot2 glmnet]; };
   ensurer = derive2 { name="ensurer"; version="1.1"; sha256="1gbbni73ayzcmzhxb88pz6xx418lqjbp37sdkggbrxcyhsxpdkid"; depends=[]; };
   entcn = derive2 { name="entcn"; version="1.0.0"; sha256="0zwhhjrc24d3hr9494p9ayxlkd0g6jml9raxwv59mpvpprrasdws"; depends=[RYoudaoTranslate stringr]; };
-  entropart = derive2 { name="entropart"; version="1.6-8"; sha256="1z6v7gszlmjppp9q69k0awjdkjp0xj2b57g1m52klhcvrf8cp8ad"; depends=[ade4 ape EntropyEstimation ggplot2 ggpubr reshape2 SPECIES tibble vegan]; };
+  entropart = derive2 { name="entropart"; version="1.6-9"; sha256="0xwsascm9m2fxbnb0msv20kbg8xjrn17fggsl7ws8pdq8xg912c8"; depends=[ape EntropyEstimation ggplot2 ggpubr reshape2 tibble vegan]; };
   entropy = derive2 { name="entropy"; version="1.3.1"; sha256="1f0j8jsn6pzf4gi5g0akixx6x5vc69ci5f4m2vnwp40frvsqjnkg"; depends=[]; };
   entrymodels = derive2 { name="entrymodels"; version="0.2.1"; sha256="0fz7jzax12pzw47iry4amgg9z4z3z94kig6r5dhcqa84kq02294v"; depends=[dplyr magrittr readr]; };
   envDocument = derive2 { name="envDocument"; version="2.4.1"; sha256="074m7adnasvys28kjdgj9071fi90vsl4yv5zvpxik4crlx098dlw"; depends=[]; };
@@ -8882,6 +8905,7 @@ in with self; {
   envlpaster = derive2 { name="envlpaster"; version="0.1-2"; sha256="11a5n40k1ln5gxxvwq1vh4dhmhifhlm89hkhf36qnhj4bjh3v3y0"; depends=[aster aster2 caTools MASS]; };
   envnames = derive2 { name="envnames"; version="0.4.1"; sha256="1fkbid2x60m63dnrxrdq7im49spn8m70g1gd8nqjq3xlv642ianm"; depends=[]; };
   envoutliers = derive2 { name="envoutliers"; version="1.1.0"; sha256="1wgrrkkpkmf300qb56mq6nxigwnpq551sjxlk05lk3ckawx66srf"; depends=[car changepoint ecp ismev lokern MASS robustbase]; };
+  envstat = derive2 { name="envstat"; version="0.0.2"; sha256="1lyv8dh3h4g4zcndv9b5m7zp0g22hznzshy4z55i058w82079c7d"; depends=[cli httr2 rstudioapi yaml]; };
   eoR = derive2 { name="eoR"; version="0.4.0"; sha256="0vn4s4af94n9h6x7z14qwpz94rgsd5m3mv55wva7x3h99ryhm83s"; depends=[data_table]; };
   eoffice = derive2 { name="eoffice"; version="0.2.1"; sha256="03g8r3xnsnnlyj7y07jm3qjhlv3pkf8v2lxpqzd24ncncxmbcxmi"; depends=[broom devEMF dplyr flextable ggplot2 ggplotify htmlwidgets magick magrittr officer plotly R_devices rvg]; };
   epade = derive2 { name="epade"; version="0.3.8"; sha256="1alvsifc6i71ilm1xxs1d7sqlapb48bqd6z2n4wi6pqcjvwp7bif"; depends=[plotrix]; };
@@ -8892,11 +8916,12 @@ in with self; {
   epcc = derive2 { name="epcc"; version="1.4.7"; sha256="0j4cb17gvwsaacmhvm8qp5chr384kl7gj6089gjrc2hqi6kjr0rx"; depends=[cowplot deSolve formattable ggplot2 httr nls2 proto raster readxl rgdal rlang sp]; };
   eph = derive2 { name="eph"; version="0.4.0"; sha256="0yznfhsp6sgymq02m4g477pnqlmmbdvwv32sidaa2giaf3nr4izj"; depends=[assertthat attempt curl dplyr expss glue htmltools janitor leaflet magrittr purrr questionr readr readxl rlang rvest stringr tibble tidyr tidyverse xml2 zoo]; };
   epiDisplay = derive2 { name="epiDisplay"; version="3.5.0.1"; sha256="08ym6hcbmajzr4rasdb35fxk79vgpzfc16rmcm34f7f3zzz09dyl"; depends=[foreign MASS nnet survival]; };
-  epiR = derive2 { name="epiR"; version="2.0.41"; sha256="14al2v0pn2m581smz2lia79hp37cjy1z4j428sl5nk18lcdgi9gh"; depends=[BiasedUrn lubridate pander sf survival]; };
+  epiR = derive2 { name="epiR"; version="2.0.43"; sha256="0kicviwj3kvak1n58snmr9vz6ir8n624pzv5sdk9cc7kambydldi"; depends=[BiasedUrn lubridate pander sf survival zoo]; };
   epibasix = derive2 { name="epibasix"; version="1.5"; sha256="0ivr51x37cbdryli9b4p4iq9v2c90zwmywrwdmg7ryq5vprvvbp0"; depends=[]; };
   epicontacts = derive2 { name="epicontacts"; version="1.1.2"; sha256="07vnvfqm9vghmrjy3g1x3mz6qsf09qi04xq2nm9n4cgxjmbr0gia"; depends=[colorspace dplyr igraph threejs visNetwork]; };
   epidata = derive2 { name="epidata"; version="0.4.0"; sha256="0v3s1vrf2iqh03rkkwrlz6mhpbsbjxkayrqdx04vrnja4i9ljshk"; depends=[dplyr httr jsonlite purrr readr rvest stringi tidyr tinytest xml2]; };
   epidemia = derive2 { name="epidemia"; version="1.0.0"; sha256="1lfbibcpm58a05wrikwfzxkfqxw6yk41b1q07wpchxpz1lfv2v5y"; depends=[bayesplot BH dplyr ggplot2 hrbrthemes lme4 magrittr Matrix Rcpp RcppEigen Rdpack rlang rstan rstanarm rstantools scales StanHeaders tidyr zoo]; };
+  epidm = derive2 { name="epidm"; version="1.0.2"; sha256="0ckm5rg4729f27gkg5zynv52gi6z8v45575paf9pvrzpsblsyhw5"; depends=[data_table DBI odbc phonics purrr readr stringi stringr]; };
   epifitter = derive2 { name="epifitter"; version="0.3.0"; sha256="104hl3b3951psi023hv95486ygcv9ilmqkzw96yygym7rhkaww9m"; depends=[DescTools deSolve dplyr ggplot2 knitr magrittr minpack_lm tibble tidyr]; };
   epiflows = derive2 { name="epiflows"; version="0.2.0"; sha256="09ri1p73ih0i08irc06ff169hi5vcl8bdi63b056kzxgmv17yqkp"; depends=[epicontacts geosphere ggmap ggplot2 htmltools htmlwidgets leaflet sp tibble visNetwork]; };
   epigraphdb = derive2 { name="epigraphdb"; version="0.2.3"; sha256="11ja2r024a4sfk6xjhwn2mj4fz2msf6jx85w3cxr2hvp9sl3zgc9"; depends=[glue httr jsonlite magrittr purrr tibble]; };
@@ -8926,7 +8951,6 @@ in with self; {
   epxToR = derive2 { name="epxToR"; version="0.4-1"; sha256="00m64ham9fd9dsw37ic2m62fy4pvmwfwmjx8cg6n4rwbgq9q49sg"; depends=[httr XML]; };
   eq5d = derive2 { name="eq5d"; version="0.10.1"; sha256="00474dmjpifl7xrm2ln5znghyy7sm1r16dqfk49vafnd4wa89wm1"; depends=[]; };
   eqs2lavaan = derive2 { name="eqs2lavaan"; version="3.0"; sha256="1lj6jwkfd84h9ldb6l74lrx2pnsl1c0d7mnrcrjkska87djb2nzd"; depends=[lavaan stringr]; };
-  eqtl = derive2 { name="eqtl"; version="1.1-7"; sha256="0xfr8344irhzyxs9flnqn4avk3iv1scqhzac5c2ppmzqhb398azr"; depends=[qtl]; };
   equalCovs = derive2 { name="equalCovs"; version="1.0"; sha256="18w7panyd6mhdr3x1iz9fkrw7min22rishs4xhkxgxs3nnyglkrn"; depends=[]; };
   equaltestMI = derive2 { name="equaltestMI"; version="0.6.1"; sha256="09wh4907vf54z3g2a1i1j4m5vkaz97jp3qyrmxbg0bbbq0c68ffg"; depends=[lavaan]; };
   equatags = derive2 { name="equatags"; version="0.1.1"; sha256="0rw9vipqk0gdkd73b04lw13fs5pjdvjqnn17n7xg1z0fk11k4qqw"; depends=[locatexec xml2 xslt]; };
@@ -8937,7 +8961,7 @@ in with self; {
   equivUMP = derive2 { name="equivUMP"; version="0.1.1"; sha256="05ihbr6dd9qv89ll90ynk4g3d3xy2w5q0m696djfa63f1x92c01w"; depends=[]; };
   equivalence = derive2 { name="equivalence"; version="0.7.2"; sha256="170l5gnk0dkjkfsx7qyrw56ircwsjzz9cvhakgyrqh7bj5734i79"; depends=[boot lattice PairedData]; };
   equivalenceTest = derive2 { name="equivalenceTest"; version="0.0.1.1"; sha256="1lr1qc4mv8f9hwqidj1rwhxqm1fb8cf1hnb1k32xpdqwzsxbfa47"; depends=[cubature polynom Rdpack rootSolve]; };
-  era = derive2 { name="era"; version="0.3.1"; sha256="1x633yz49sfm27gby5sa6nbwx0mc1h606hxh5yvrjqnjlkk7xpgr"; depends=[magrittr pillar rlang vctrs]; };
+  era = derive2 { name="era"; version="0.4.0"; sha256="1r726zcaayg6chh1466z9q4y3vd1z5hbz3kvqbfp6dqj7dx8qhgw"; depends=[pillar rlang vctrs]; };
   erah = derive2 { name="erah"; version="1.1.2"; sha256="0dyjb2ja5199z8is11in11a95l2dbhaa2qj42pikh0ydk47qhd6v"; depends=[igraph ncdf4 nnls quantreg Rcpp signal XML]; };
   erboost = derive2 { name="erboost"; version="1.3"; sha256="09hlpn6mqsmxfrrf7j3iy8ibb2lc4aw7rxy21g3pgqdmd9sbprim"; depends=[lattice]; };
   ercv = derive2 { name="ercv"; version="1.0.1"; sha256="0rs4yhm9sjnqkrgqqy6b8wj9fgk910hxc8d7zi4qwql0v1gid27l"; depends=[]; };
@@ -8981,7 +9005,7 @@ in with self; {
   essHist = derive2 { name="essHist"; version="1.2.2"; sha256="0rvlxfcl42h4pjqf37mx7bc4k21iwvnys6l5rf2jsl7yk1b9hmbn"; depends=[Rcpp]; };
   essentials = derive2 { name="essentials"; version="0.1.0"; sha256="163wv4szfanbpiw5f6lhw1dnns5prql43iz27zgcp5z2rsxlb894"; depends=[]; };
   essurvey = derive2 { name="essurvey"; version="1.0.8"; sha256="1b78am4vnyg3k2hjjkjyhnjgm6rsmjwvqys030qybkgfplsbgra3"; depends=[haven httr rvest tibble xml2]; };
-  estadistica = derive2 { name="estadistica"; version="0.2.0"; sha256="1f7bw1clprkrcxxcp0rb1v2bdhz0ynk8f2850vv67sydnqlqal5k"; depends=[data_table dplyr forecast ggplot2 gridExtra knitr magrittr plotly rio shiny shinydashboard tidyr tidyverse]; };
+  estadistica = derive2 { name="estadistica"; version="0.2.1"; sha256="0r0hchsdfraiafjldkd3sy6ndx7qm6p5c04gnk6rbhbbfr8xhyhy"; depends=[data_table dplyr forecast ggplot2 gridExtra knitr magrittr plotly rio shiny shinydashboard tidyr tidyverse]; };
   estatapi = derive2 { name="estatapi"; version="0.4.0"; sha256="0wp5w9w0b832fnl7kchjqmychnf5896q50grw8hwdc1km14dfzkg"; depends=[dplyr httr purrr readr rlang tibble]; };
   estimability = derive2 { name="estimability"; version="1.3"; sha256="0cifdaa71spkcxl4db4z884jrya865sg3dhcv4isd8fnzg2pjcd3"; depends=[]; };
   estimatr = derive2 { name="estimatr"; version="0.30.6"; sha256="03y9hcdj5y2bhz7k8sh5mmv619zpbqh4gyv82sf9s57infhc3zph"; depends=[Formula generics Rcpp RcppEigen rlang]; };
@@ -9008,14 +9032,14 @@ in with self; {
   eurocordexr = derive2 { name="eurocordexr"; version="0.2.2"; sha256="081p9qs09xif2cck0gmmqgzaly1r2p77kla2nhcvjgxgdylbsdkd"; depends=[data_table fs lubridate magrittr ncdf4 ncdf4_helpers PCICt]; };
   europepmc = derive2 { name="europepmc"; version="0.4.1"; sha256="16japbndid34shqg8n0bmjrxn84xmhrylvz832zclcllm6i93fn1"; depends=[dplyr httr jsonlite plyr progress purrr rlang tibble tidyr urltools xml2]; };
   europop = derive2 { name="europop"; version="0.3.1"; sha256="1ym257bxr4a0dmln1j8x3pf87wrryzgqyzhvk61whc6n2bj62x1s"; depends=[]; };
-  eurostat = derive2 { name="eurostat"; version="3.7.5"; sha256="1398jmg4z9lnlm7hsr492ybj958gnn4hk5fmy7dillfvimx9x2gy"; depends=[broom classInt countrycode curl dplyr httr jsonlite lubridate magrittr RColorBrewer readr RefManageR sf stringi stringr tibble tidyr]; };
+  eurostat = derive2 { name="eurostat"; version="3.7.10"; sha256="05132pid3gjp9qgksvz087vy323dp1s31w46q7a9553kxsqkgkw5"; depends=[broom classInt countrycode curl dplyr httr jsonlite lubridate rappdirs readr RefManageR regions stringi stringr tibble tidyr]; };
   eva = derive2 { name="eva"; version="0.2.6"; sha256="1b5hrwgdbw19c63ywhkvxlz3843c0mgvsxlmab6zv6r2lrrdkf62"; depends=[EnvStats Matrix]; };
   evabic = derive2 { name="evabic"; version="0.0.3"; sha256="0wd5wjsj9gbvbncaa97g1sp0211aq3nn5jc91lvhka6h34wxkcgc"; depends=[]; };
   evalITR = derive2 { name="evalITR"; version="0.2.2"; sha256="0xdf3jyrsnf2jb28fwf8ydlid1n74ka7mx98jp6fidzcinw4mzmj"; depends=[]; };
-  evaluate = derive2 { name="evaluate"; version="0.14"; sha256="0a2y7j534gbgixkwj9r1z76l2vssw4g1hznzbpclc076wkdqpj58"; depends=[]; };
+  evaluate = derive2 { name="evaluate"; version="0.15"; sha256="0pbwj02y2j7r0msa7747ih1p32xm9bcyr8fa7bysfslb199ywnl8"; depends=[]; };
   evclass = derive2 { name="evclass"; version="1.1.1"; sha256="00lbhcgswpv0amz0mb93kx9p91sf0d7zvxfw9i8x1zpmpfd6nhcj"; depends=[FNN]; };
   evclust = derive2 { name="evclust"; version="2.0.2"; sha256="107x61vmkfmy3bmcaywz96qj35bmz4nydd0zn9amm2xnbb37lg31"; depends=[FNN limSolve Matrix mclust plyr quadprog R_utils]; };
-  evd = derive2 { name="evd"; version="2.3-3"; sha256="1d2r8ppblxrq6s60pf0gv4rp8ja58j8lbpax8a996ais1hpfzi9g"; depends=[]; };
+  evd = derive2 { name="evd"; version="2.3-4"; sha256="1vkg50kha3jskrsf80ir5nv9gnpcgbiw9ls9jmvcwz8wca5ml511"; depends=[]; };
   evdbayes = derive2 { name="evdbayes"; version="1.1-1"; sha256="0lfjfkvswnw3mqcjsamxnl8hpvz08rba05xcg0r47h5vkgpw5lgd"; depends=[]; };
   event = derive2 { name="event"; version="1.1.1"; sha256="0w3v8j61y7vr0cjl8a1rkvi4pyjlfhmzzn1n4dgkivac4iafzqjj"; depends=[rmutil]; };
   eventInterval = derive2 { name="eventInterval"; version="1.3"; sha256="0nybzy2mpmazcvz06mkv7l9741mjm3i2q2sindq0777vb2k4504v"; depends=[MASS]; };
@@ -9028,7 +9052,7 @@ in with self; {
   evian = derive2 { name="evian"; version="2.1.0"; sha256="1slnzq55gg3p16fs22v69mafiggiy5f70sj8fh65lc0hphybh6w2"; depends=[doParallel foreach ProfileLikelihood sandwich]; };
   evidence = derive2 { name="evidence"; version="0.8.10"; sha256="02kqk95kx4nv13fg6z55a5rv6sq6lv8azg0jjxbkg1j6hg15p7ai"; depends=[LaplacesDemon lattice LearnBayes loo rstan rstanarm]; };
   evidenceFactors = derive2 { name="evidenceFactors"; version="1.8"; sha256="0g9w1q8ir6qmvk5vvbpipiyias7nj74ks2h94ja7al8sz68gralx"; depends=[sensitivitymv]; };
-  evident = derive2 { name="evident"; version="1.0.2"; sha256="1dniqb6k28c7fisav7yvi94qfl582hssf78qxxmpj4yp58jw1i6z"; depends=[DOS2 MASS sensitivity2x2xk sensitivitymult sensitivitymv senstrat]; };
+  evident = derive2 { name="evident"; version="1.0.4"; sha256="1nffcfkny79d3f776p8j4g71cc3n991v56jwjyrg3vkgs05w13cn"; depends=[DOS2 MASS sensitivity2x2xk sensitivitymult sensitivitymv senstrat]; };
   evir = derive2 { name="evir"; version="1.7-4"; sha256="1h7a7z7v5k33y5hsdfczsri3vpbwspfgazhv4saknv2h11rgfpki"; depends=[]; };
   evmix = derive2 { name="evmix"; version="2.12"; sha256="02rabc9snci00s1x7h0svfr66lmw1wjcdg0149wc52mnccsdaivf"; depends=[gsl MASS SparseM]; };
   evobiR = derive2 { name="evobiR"; version="1.1"; sha256="0502xj1gv2g943vfqyllz4sr5z4mixf5vqlqi2v96mymnv9iwsr8"; depends=[ape geiger phytools seqinr shiny]; };
@@ -9052,7 +9076,7 @@ in with self; {
   exams2sakai = derive2 { name="exams2sakai"; version="0.3"; sha256="0lgnk2g4q0vbkvcrhb815lah24rhaknnmsbhhkgbdkl0c5mx1yjg"; depends=[exams glue stringi stringr xml2]; };
   exceedProb = derive2 { name="exceedProb"; version="0.0.1"; sha256="02pb8b0rxygbv6501rcr2hb0bhz1r78k5znav161kk25fb9bxs5v"; depends=[BH Rcpp]; };
   excelR = derive2 { name="excelR"; version="0.4.0"; sha256="1pb4sy54zjv5vrh7gjjv7qlpab74km6mfsmfyl0yhmr0jx01hrw0"; depends=[htmlwidgets jsonlite]; };
-  exceldata = derive2 { name="exceldata"; version="0.1.0"; sha256="0jx3ar3kg3aqkkzqxchqpg57py0dq71yrh2i0b280ahqqafan1d0"; depends=[dplyr ggplot2 lubridate readxl scales]; };
+  exceldata = derive2 { name="exceldata"; version="0.1.1"; sha256="03s284pvbvhxzmqbdx00ic4a2xyg3y3hzr1ks913bxacz46g157d"; depends=[dplyr ggplot2 lubridate readxl scales]; };
   excelstrippr = derive2 { name="excelstrippr"; version="0.1.2"; sha256="1ly76qja9b5l3xwfhigm1apd114y2iq5wdl27sd2h1y80n8xxf2v"; depends=[dplyr readxl tidyr]; };
   excerptr = derive2 { name="excerptr"; version="2.0.1"; sha256="0lmcxlpxvldxwqxrprqq39hk5f770ii1x38jm2jbs4n75smp4m21"; depends=[checkmate reticulate]; };
   excessmort = derive2 { name="excessmort"; version="0.6.1"; sha256="0qkj30csq96qg7r8vdl79n31dhz69vh49qz4gpb3r2fr32pn497k"; depends=[dplyr ggplot2 lubridate rlang scales tidyr]; };
@@ -9071,7 +9095,7 @@ in with self; {
   expectreg = derive2 { name="expectreg"; version="0.51"; sha256="0ab9xkfa3wkhrzj7lj6jgdcxzgp1xjsk6ah71f6qd11bafq7j720"; depends=[BayesX colorspace fields Matrix mboost quadprog Rcpp RcppEigen]; };
   experDesign = derive2 { name="experDesign"; version="0.1.0"; sha256="1v2j3jyxyzwkzc3y5n6pzd31yigkfwcmf12df3104m3kn86iq81r"; depends=[]; };
   experiment = derive2 { name="experiment"; version="1.2.0"; sha256="0f8h4pj2y7cd2s1q44q4mrg9cirnpz0bkn4xm04hz1rpjxb4xlv1"; depends=[boot MASS]; };
-  expert = derive2 { name="expert"; version="1.0-0"; sha256="0y9vcigvzhymalpv31b9nvmr86z1dz7x29yj838vks0dsv23rgrf"; depends=[]; };
+  experimentr = derive2 { name="experimentr"; version="0.1.0"; sha256="0ji2031r108rzna00zhsh70kfcnhcscz0an0jv0vvj00hrakl0yr"; depends=[]; };
   expint = derive2 { name="expint"; version="0.1-6"; sha256="0iai25cglcdnf44d2d1fz1xpw4q600my4zq4493fk4cs5673mlf7"; depends=[]; };
   expirest = derive2 { name="expirest"; version="0.1.2"; sha256="1fzgs8pniypgd1ws5dkiylgjdwgxwyrblcnvirmwfzcrgyvbmwfs"; depends=[ggplot2]; };
   explor = derive2 { name="explor"; version="0.3.9"; sha256="0sfpw9lgpr9hyn93jwxhijbfqnj466wc5ilszki2r7ziik3nb79i"; depends=[dplyr DT formatR ggplot2 highr RColorBrewer scatterD3 shiny tidyr]; };
@@ -9159,12 +9183,12 @@ in with self; {
   fUnitRoots = derive2 { name="fUnitRoots"; version="3042.79"; sha256="1hsv47dm0hx3s04g9h0bjdgi79zbfihnfxxdc2jskqp94yl7azsy"; depends=[fBasics timeDate timeSeries urca]; };
   fabCI = derive2 { name="fabCI"; version="0.2"; sha256="1vga322xpqzsh40n74v8vqiq8zbzrabvg58mp50bcx2ml0dikgnm"; depends=[MASS]; };
   fabMix = derive2 { name="fabMix"; version="5.0"; sha256="1gii3mdii9nw423xxn9mhv1pjbw967wdarn828w04zm9dkdcwm48"; depends=[coda corrplot doParallel foreach ggplot2 label_switching MASS mclust mvtnorm RColorBrewer Rcpp RcppArmadillo]; };
-  fabisearch = derive2 { name="fabisearch"; version="0.0.3.9"; sha256="0nzv2wkv1l4r2pqq6j2y16lj61djp6bjydsk4xvxlhdnifx5cmhm"; depends=[doParallel doRNG foreach NMF pkgmaker reshape2 rgl]; };
+  fabisearch = derive2 { name="fabisearch"; version="0.0.4.3"; sha256="08wb7r6mzcxfb87nwyicklj43j6vrvdbws7gawxrqfb1x4xi6q30"; depends=[doParallel doRNG foreach NMF pkgmaker reshape2 rgl]; };
   fable = derive2 { name="fable"; version="0.3.1"; sha256="185l3gd83nys11k389ha2ssdm9rkw9aackmz2cd2mvlym72rsnq7"; depends=[distributional dplyr fabletools Rcpp rlang tibble tidyr tsibble]; };
   fable_ata = derive2 { name="fable.ata"; version="0.0.3"; sha256="0rjy5kj10sw2i9ghrsz67l40j7niw9mxm14kzg6prnc34200ki0n"; depends=[ATAforecasting distributional dplyr fabletools lubridate rlang tibble tsbox tsibble]; };
   fable_prophet = derive2 { name="fable.prophet"; version="0.1.0"; sha256="12y2k05plg6d6lgqk6617q6z5m6xz33zdsjh56k86h230qqw68rp"; depends=[distributional dplyr fabletools lubridate prophet Rcpp rlang tsibble]; };
   fabletools = derive2 { name="fabletools"; version="0.3.2"; sha256="1appg3pzw6b08nxh0p1ldbvv1j091v0kcygm808nf04v9axp5f95"; depends=[distributional dplyr generics ggplot2 lifecycle progressr R6 rlang tibble tidyr tidyselect tsibble vctrs]; };
-  fabricatr = derive2 { name="fabricatr"; version="0.14.0"; sha256="1smy9c34y47xdfmkgm90xyxagnj9qsgxg70mf75z1006m4npbdg8"; depends=[rlang]; };
+  fabricatr = derive2 { name="fabricatr"; version="0.16.0"; sha256="0f9p90klcv7k6ajcwqrwzzgxna3ciwpms4vcsxnkb3vy2skhbrzz"; depends=[rlang]; };
   fabricerin = derive2 { name="fabricerin"; version="0.1.2"; sha256="0ynvnxzxx1iybyy5pvwfsj5y9jjixyrpji9vcl5fq5mjnpg8mpqk"; depends=[glue htmltools]; };
   face = derive2 { name="face"; version="0.1-6"; sha256="0lvagpn6sa22zj4phz1vi1ccd8xasrgcq6ypwj7qx4bf1xjc95b1"; depends=[Matrix matrixcalc mgcv]; };
   facerec = derive2 { name="facerec"; version="0.1.0"; sha256="1dipcnxjz6yd34w0jrrvj5p0pwdgz1l5m9zvri7mflnz7g34gmaj"; depends=[dplyr httr jsonlite knitr magrittr rlang snakecase stringr]; };
@@ -9174,7 +9198,6 @@ in with self; {
   factor_switching = derive2 { name="factor.switching"; version="1.2"; sha256="1va8xah0r7622svybv9r2v0s9wbl15p4lkrbqmaf5p5izijg32xs"; depends=[coda HDInterval lpSolve MCMCpack]; };
   factorEx = derive2 { name="factorEx"; version="1.0.1"; sha256="03dgxxykxgq63cgan5gy5vz4hnwqmg48z2wdv8f69mk9452mg9m2"; depends=[arm doParallel estimatr foreach genlasso igraph mvtnorm pbapply pbmcapply prodlim sandwich stringr]; };
   factorMerger = derive2 { name="factorMerger"; version="0.4.0"; sha256="127k5h1gbbnjr6gxgck2n9glvvwkd69xq7n6gzmrq8gszk8v1x5m"; depends=[agricolae colorRamps dplyr forcats formula_tools ggplot2 ggpubr knitr magrittr MASS mvtnorm proxy reshape2 scales survival]; };
-  factorQR = derive2 { name="factorQR"; version="0.1-4"; sha256="1vl01fm5qfyhnqbl5y86vkr50b8cv07vzlqs3v6smqaqq6yp4lv4"; depends=[lattice]; };
   factorial2x2 = derive2 { name="factorial2x2"; version="0.2.0"; sha256="045887hwknwm92wlrp0jlvxj5aal50vpnc7ddbh7c8smawmrdwfd"; depends=[mvtnorm survival]; };
   factormodel = derive2 { name="factormodel"; version="1.0"; sha256="0yvp8mk42hi1vhrw29djabndc8pbbpjbr6bwss95wsmk7zvvf6i2"; depends=[dplyr gtools nnet pracma]; };
   factorplot = derive2 { name="factorplot"; version="1.1-2"; sha256="025lfk122w66yxym3njcpzwnbhg40xi7p1c9vnxczcb8kz31745s"; depends=[multcomp nnet]; };
@@ -9182,7 +9205,7 @@ in with self; {
   factory = derive2 { name="factory"; version="0.1.0"; sha256="1715bx2rn8kk5qd196jnrv5f95l54n4y0aqqdzfkgrmqihcy8ahx"; depends=[purrr rlang]; };
   factset_analyticsapi_engines = derive2 { name="factset.analyticsapi.engines"; version="3.0.1"; sha256="0v96z837dii1q7mbpd48zwpl2qjzqnhignb80g0xkc4iygsnrrms"; depends=[caTools httr jsonlite R6 rlang]; };
   factset_protobuf_stach_v2 = derive2 { name="factset.protobuf.stach.v2"; version="1.0.3"; sha256="1b8w4fcjlznpwziwb7cv9a5nhc410h8a9af09430379qhmvin9mx"; depends=[R6 RProtoBuf]; };
-  factualR = derive2 { name="factualR"; version="0.5"; sha256="1wz8ibcmilcx62yy29nd2i1pdmjf7fm0g9i5s58gdn8cjlhnw1jl"; depends=[RCurl RJSONIO]; };
+  factset_protobuf_stachextensions = derive2 { name="factset.protobuf.stachextensions"; version="1.0.1"; sha256="1mqni01ryv8m4yw87c1m0qf4nr5zhs3654ph04xbqxhq5h0qrwng"; depends=[jsonlite R6 stringr]; };
   fad = derive2 { name="fad"; version="0.3-3"; sha256="1xii15lcfb72jmwgqfb4x0h0xs7cxj1hzx8289sq1ibakiwkkv5l"; depends=[Matrix Rcpp RcppEigen RSpectra]; };
   fail = derive2 { name="fail"; version="1.3"; sha256="0vfm6kmpmgsamda5p0sl771kbnsscan31l2chzssyw93kwmams7d"; depends=[BBmisc checkmate]; };
   fairadapt = derive2 { name="fairadapt"; version="0.2.1"; sha256="13qly0yjf33z1n1id2a5hrciq17fgfw87rj7gyicy23jsc21va0w"; depends=[assertthat cowplot ggplot2 igraph qrnn quantreg ranger scales]; };
@@ -9199,7 +9222,7 @@ in with self; {
   fam2r = derive2 { name="fam2r"; version="1.2"; sha256="0pq5cmzwk3s8cz5x8dsfb2d6qfpapkrwbzvkqmqkhcwhwryy40mm"; depends=[Familias paramlink]; };
   famSKATRC = derive2 { name="famSKATRC"; version="1.1.0"; sha256="1xbh0by4sjxrmy00v1svcj3lb98p9krpncbhpjbli1jd2p47yk60"; depends=[bdsmatrix CompQuadForm coxme kinship2]; };
   fame = derive2 { name="fame"; version="2.21.1"; sha256="18lzf2vxyzlmd73m9q0si663mjjm66nrf7q1iy0fw73gpvxqr9bf"; depends=[tis]; };
-  familial = derive2 { name="familial"; version="1.0.1"; sha256="01vswgjr2kpmrrfhlbkz023mawklw2ff9l9z9nx2x2hs48kxgkh1"; depends=[DepthProc ggplot2 matrixStats]; };
+  familial = derive2 { name="familial"; version="1.0.2"; sha256="1pk4l8bgfs6nl8d3w8gksv4szfbqnw6sv0lzh1piyvkpyylfm1i7"; depends=[DepthProc ggplot2 matrixStats]; };
   familiar = derive2 { name="familiar"; version="1.0.0"; sha256="04shvnx81vppswyj3x4zi4rp0mll8l165ckmv27fsbgf5iija70m"; depends=[data_table rlang rstream stringi survival]; };
   fanc = derive2 { name="fanc"; version="2.2"; sha256="1gdkxb2ay0lyldjpg4s2fbavjxl4q1bf9q438csqa4vzl5ywv2w8"; depends=[Matrix]; };
   fancycut = derive2 { name="fancycut"; version="0.1.2"; sha256="1xg5qjxf77g10h07x6rvb8c3klc9gbr77bkw352qpas268pkswl2"; depends=[]; };
@@ -9237,6 +9260,7 @@ in with self; {
   fastText = derive2 { name="fastText"; version="1.0.1"; sha256="0l0pkr3a8qckvzazh6rsz94rab8v96y4wis2my29srkwv4h447bn"; depends=[data_table ggplot2 glue Rcpp]; };
   fastTextR = derive2 { name="fastTextR"; version="2.0.0"; sha256="1ggmwsw2qnq8v3s8iaxi8q66c898pc15wfgpsp6h0mc761qih5lf"; depends=[Rcpp slam]; };
   fasta = derive2 { name="fasta"; version="0.1.0"; sha256="0wnppxn3039dj58xm0b66fsyq537bk8k8m56im11xj1iwc3zc6vw"; depends=[]; };
+  fastadi = derive2 { name="fastadi"; version="0.1.0"; sha256="0vrsz2vf2rxj2vyv1dcjwy8g7s942j5695lb7jkmdaw6lp3k4gh0"; depends=[ellipsis glue logger LRMF3 Matrix Rcpp RcppArmadillo RSpectra]; };
   fastai = derive2 { name="fastai"; version="2.1.0"; sha256="1ssmx49c4qzvr4m84s8vwyrg890l2vfglh9rqkf4ljc1x2bkf8z1"; depends=[generics ggplot2 ggpubr glue png reticulate]; };
   fastclime = derive2 { name="fastclime"; version="1.4.1"; sha256="0zcir8r11b2hxr9vvkmvxlzmhfcaxbr0wbjy86ysr912mp8fs9i3"; depends=[igraph lattice MASS Matrix]; };
   fastcluster = derive2 { name="fastcluster"; version="1.2.3"; sha256="009amz7i5yndqw2008fgd3p11n4fsb291k2ypg3pip6dw4lr28hz"; depends=[]; };
@@ -9254,7 +9278,7 @@ in with self; {
   fastmaRching = derive2 { name="fastmaRching"; version="1.1.0"; sha256="085xr5i6h6vwl1flzbkwqsm8d815s0p02p0mir60jqjvy0s7haip"; depends=[raster rgdal sp]; };
   fastmap = derive2 { name="fastmap"; version="1.1.0"; sha256="0aw29hnq3ppn7bsnwg9d9sp84k1cvq30lrmfzqn315n0nhkfa4wi"; depends=[]; };
   fastmatch = derive2 { name="fastmatch"; version="1.1-3"; sha256="0qcq1gwl9pijgp34giyq5y9rk0ly3d7xza2b7r68xx63ifqa1vqx"; depends=[]; };
-  fastmatrix = derive2 { name="fastmatrix"; version="0.3-8196"; sha256="1dlgjz7kh995hwz74kgin7ip8x0nnar18gnc3h4mm6bvc9yf1ykj"; depends=[]; };
+  fastmatrix = derive2 { name="fastmatrix"; version="0.4"; sha256="1mbqyrj01fqbnpncqy9lk2dshqk1l55i2r2ll7gs10ykqbbjjlsp"; depends=[]; };
   fastmit = derive2 { name="fastmit"; version="0.1.1"; sha256="13hczsfbzssd272kpbq8l2l64lqrkmi2j6f3xyp9jvvxdd506kq0"; depends=[Rcpp RcppArmadillo]; };
   fastnet = derive2 { name="fastnet"; version="1.0.0"; sha256="1c07msypxj8ilpa1il9jjbgylwpdxv8j8gak362xdmbm4b1bwlm6"; depends=[doParallel foreach igraph tidygraph]; };
   fastpos = derive2 { name="fastpos"; version="0.4.1"; sha256="0h6drzzc3f1dc5ydi5x9c7wday18sgzi8zn4pf5wxlzsc4qj0pzf"; depends=[future MASS plyr Rcpp RcppArmadillo RcppProgress]; };
@@ -9264,7 +9288,7 @@ in with self; {
   fastrmodels = derive2 { name="fastrmodels"; version="1.0.2"; sha256="1333546nk429l6s4icbmx8hmh29wsc252wbmmhsmgb116l4ra9zi"; depends=[xgboost]; };
   fastshap = derive2 { name="fastshap"; version="0.0.7"; sha256="0gxch67i3bj6m8nb94m5hswq058w6n1q9war4dy2qnimlv7cmhdv"; depends=[abind ggplot2 gridExtra matrixStats plyr Rcpp RcppArmadillo tibble]; };
   fasttime = derive2 { name="fasttime"; version="1.0-2"; sha256="11i4c0zrkvvqsax0az1fvmc0jxfsjyx28434k1qgzhj9g2j9m9cf"; depends=[]; };
-  fastverse = derive2 { name="fastverse"; version="0.2.1"; sha256="0ys75qw5ag7mynwk4xyjb8jlsgbffqjxn2h1dznxzhsa953v39xk"; depends=[collapse data_table fst kit magrittr matrixStats]; };
+  fastverse = derive2 { name="fastverse"; version="0.2.3"; sha256="1jp9lipx19zihakjp2la8rk4pxks0p8saagp75nr0xq2vdylqg27"; depends=[collapse data_table fst kit magrittr matrixStats]; };
   fat2Lpoly = derive2 { name="fat2Lpoly"; version="1.2.5"; sha256="08bbd17aqmfcacvk283bpf9cp1isf5pgfdciwxn0f7ahdzd81g4s"; depends=[kinship2 multgee]; };
   faux = derive2 { name="faux"; version="1.1.0"; sha256="0cmgsm8c8w5d5zk00j4872x7fby0rdi7lmw0w0ncahlnh72grpjm"; depends=[dplyr ggplot2 jsonlite lme4 rlang truncnorm]; };
   fauxnaif = derive2 { name="fauxnaif"; version="0.6.1"; sha256="1hw6lkxvxd65wajr0mpmbg8lvx0sd84py1apzqfnr7xpb4r1hi85"; depends=[glue lifecycle rlang]; };
@@ -9274,9 +9298,9 @@ in with self; {
   fbRads = derive2 { name="fbRads"; version="0.2"; sha256="1a65gfvizzm6psspcvlhkxligdf9j1whrgzkg7ww520lk3z8lnnd"; depends=[bit64 data_table digest futile_logger jsonlite plyr RCurl]; };
   fbRanks = derive2 { name="fbRanks"; version="2.0"; sha256="17kbmdpgqkj2n951c6mdsrgfga6kiij1gqiw1wpi0q3fq4dlfrzx"; depends=[igraph stringr]; };
   fbar = derive2 { name="fbar"; version="0.6.0"; sha256="005725xiz6k868hrj12ryq3xlyin2r94n0yychimjzhfsppx2zba"; depends=[assertthat dplyr magrittr Matrix purrr rlang ROI ROI_plugin_ecos stringr tibble tidyr]; };
-  fbati = derive2 { name="fbati"; version="1.0-4"; sha256="0vqn73zcqgg89zkfgf0ika0s87f4gb6nxds1dmliiq36p28dhv2c"; depends=[fgui pbatR rootSolve]; };
+  fbati = derive2 { name="fbati"; version="1.0-5"; sha256="037rzw2mnhb7m83hrx8pzwy2n4fyhbjzg2nhmlgxyr1qra638p3v"; depends=[fgui pbatR rootSolve]; };
   fbroc = derive2 { name="fbroc"; version="0.4.1"; sha256="1v73wl3yckcqx43fz1lzcsy6v08vmbmi7yi623yhgqywixxv2bx3"; depends=[ggplot2 Rcpp]; };
-  fbst = derive2 { name="fbst"; version="1.6"; sha256="01l7lpk5m7qbr0zp2wghmanfrj7dsjr1r161vklhn7f02hdin2va"; depends=[bayestestR]; };
+  fbst = derive2 { name="fbst"; version="1.7"; sha256="1gawrkv13yizmsyvlz8rcq0jbylh423ip28hbicpkycr6hb3xnkh"; depends=[bayestestR]; };
   fc = derive2 { name="fc"; version="0.1.0"; sha256="0x41xfchy499kz0qi7fp12vpkbcddprv19mmk48lxzavv4f5avfh"; depends=[codetools]; };
   fca = derive2 { name="fca"; version="0.1.0"; sha256="0jcdyylb0byz70k3kypa2mdd5sc5nq81jfbpljjg2amczq7s5wzy"; depends=[]; };
   fcaR = derive2 { name="fcaR"; version="1.1.1"; sha256="1jhhjsgw3vsgrz5mv961m61y39cs5zpi0m82yf38r6ngrjy52cqg"; depends=[forcats fractional magrittr Matrix purrr R6 Rcpp registry settings stringr tibble tikzDevice]; };
@@ -9297,7 +9321,6 @@ in with self; {
   fdaMocca = derive2 { name="fdaMocca"; version="0.1-0"; sha256="0jqk07cs62hhsp68bpf0lcggn547jp7qjc4w55dq51fhshppc280"; depends=[doParallel fda foreach Matrix mvtnorm]; };
   fdaPDE = derive2 { name="fdaPDE"; version="1.0-9"; sha256="06hm1f30rpy37xz9ybvhk759y10p8ijy7slnl9cvp4gqwzy2i8b7"; depends=[geometry Matrix plot3D plot3Drgl RcppEigen rgl]; };
   fdaPOIFD = derive2 { name="fdaPOIFD"; version="1.0.2"; sha256="0rs61ja58mxpadfgkvdjq14rgaikcga0alc5a1afnrjx4djswl1k"; depends=[FastGP fdapace ggplot2 magrittr MASS patchwork reshape2 tibble]; };
-  fdacluster = derive2 { name="fdacluster"; version="0.1.0"; sha256="17vk3v8saf3xqab8h92k88l2xfwa3mb0x40p1mdgywgg23nvk3mm"; depends=[dplyr ggplot2 magrittr nloptr purrr Rcpp RcppArmadillo tibble tidyr]; };
   fdadensity = derive2 { name="fdadensity"; version="0.1.2"; sha256="1i2xzchlsixgjzyfmbv547sy6mq90xrnyc2kpd11wwfgfrpj1ix3"; depends=[fdapace Rcpp]; };
   fdakma = derive2 { name="fdakma"; version="1.2.1"; sha256="0j9qgblrl7v4586dd6v0hjicli6jh8pkk5lzn8afpl75xfs24six"; depends=[]; };
   fdaoutlier = derive2 { name="fdaoutlier"; version="0.2.0"; sha256="1jpd9mszd0grn7rwi3dmgl6l5dggwsnz1kyljz2gcfm2wck2zhbz"; depends=[MASS]; };
@@ -9325,6 +9348,7 @@ in with self; {
   features = derive2 { name="features"; version="2015.12-1"; sha256="0rd8r1dxzddb6718hcm8ck7531c9wdrjfy8n67875bbxgzcvds61"; depends=[lokern]; };
   featuretoolsR = derive2 { name="featuretoolsR"; version="0.4.4"; sha256="0zrb3hb9axcfqc1b5cyhasm3p6jvgh7hd3085w7zag66pizqjwws"; depends=[caret cli dplyr magrittr purrr reticulate rstudioapi stringr testthat tibble]; };
   featurizer = derive2 { name="featurizer"; version="0.2"; sha256="05jvwsvpbdj94q3wl7ld6xmfc9p7ff9zsmryd3mmxz0hzbq2cnkc"; depends=[]; };
+  febr = derive2 { name="febr"; version="1.9.9"; sha256="13jkp5dbjvb94da1a4vcfkr6gp04xyfj8lv76d8xc3af507k3mqs"; depends=[data_table]; };
   fec16 = derive2 { name="fec16"; version="0.1.3"; sha256="0azvrg98li535mqa2awhmfisfyfr4d8dw0ynikxmp0z1w9l3dx1p"; depends=[dplyr readr vroom]; };
   fechner = derive2 { name="fechner"; version="1.0-3"; sha256="0bassigcipwlr2g8cdjh8jyhmb903k3hla9gnigcbz7qwzlfwa86"; depends=[]; };
   federalregister = derive2 { name="federalregister"; version="0.2.0"; sha256="0qr8nd3ylnwcv1wxspw5i7ray5sh30zr648spg0lpqq8dp2b8p7b"; depends=[curl httr jsonlite]; };
@@ -9343,19 +9367,20 @@ in with self; {
   fflr = derive2 { name="fflr"; version="2.0.2"; sha256="057m2lgzfvid4618vlzmxgrw7vg1bff6i0qy8b2khk8dynk8p25v"; depends=[httr jsonlite tibble]; };
   ffmanova = derive2 { name="ffmanova"; version="1.1.0"; sha256="0019m9vxnh5yxr5k7zflzyhd533a842cjjkcpqyannshnrbfndvy"; depends=[]; };
   ffmetadata = derive2 { name="ffmetadata"; version="1.0.0"; sha256="0gjv5fl3p0kz28c91l4qf34a2685a24l5841ixdg7wivfs5v9npv"; depends=[httr jsonlite]; };
-  ffp = derive2 { name="ffp"; version="0.1.0"; sha256="11c25lcy5fzchc00cv7r9g92gnb6iffmcylibs1w42245r69bsnh"; depends=[assertthat dplyr forcats ggdist ggplot2 lubridate magrittr mvtnorm NlcOptim pracma purrr rlang scales tibble tidyr usethis vctrs xts]; };
+  ffp = derive2 { name="ffp"; version="0.2.0"; sha256="1bx9ymd7mmic01wkwaczdxw1y4a7cb8ayl42k743hznqnr8vrpmn"; depends=[assertthat crayon dplyr forcats ggdist ggplot2 lubridate magrittr mvtnorm NlcOptim nloptr purrr rlang scales stringr tibble tidyr vctrs]; };
   ffscrapr = derive2 { name="ffscrapr"; version="1.4.7"; sha256="1qfclfvz1xa9mamn9rjmwyrrpsj8cr6ri5040g2gfxjag0by5n21"; depends=[cachem checkmate dplyr glue httr jsonlite lifecycle magrittr memoise nflreadr purrr rappdirs ratelimitr rlang stringr tibble tidyr]; };
   ffsimulator = derive2 { name="ffsimulator"; version="1.2.0"; sha256="134qcvi698ynrf3c1pg4mfd5hf2jv4x5qh1jsldfy1fhmrnaxj81"; depends=[checkmate cli data_table ffscrapr glue magrittr nflreadr Rglpk rlang tidytable]; };
   ffstream = derive2 { name="ffstream"; version="0.1.6"; sha256="036ikhah4y85khgfmvxwsn3vavvw1is8i9k2lw474wxlh4cxa3kd"; depends=[Rcpp]; };
   fftw = derive2 { name="fftw"; version="1.0-6.1"; sha256="1s16r8qr1w85k5i0wfj4gc3cnwqg3yx2nbk9mcfb3j95jx7jphzz"; depends=[]; };
   fftwtools = derive2 { name="fftwtools"; version="0.9-11"; sha256="0zrchp4l0jdbir2gibjf00x225y9giqk80zvqmr2yyvc12lwkw7i"; depends=[]; };
   fgac = derive2 { name="fgac"; version="0.6-1"; sha256="0paddf5a4w0g2i0ay7my0bppwh534d8ghy6csfxl5jj034xjgwkk"; depends=[]; };
-  fgdr = derive2 { name="fgdr"; version="1.1.0"; sha256="0xllws7z3crbwibyhm3w06zagvlbmn3rcy8ccgkdhl0am3q7dz0a"; depends=[data_table jpmesh magrittr purrr raster readr rlang sf stars stringr terra tibble units xml2]; };
+  fgdr = derive2 { name="fgdr"; version="1.1.1"; sha256="12rccdh1dmh8azwid8wgkdz8d7lqrdzr5n294j2fawqf4naff2gm"; depends=[data_table jpmesh magrittr purrr raster readr rlang sf stars stringr terra tibble units xml2]; };
   fgeo = derive2 { name="fgeo"; version="1.1.4"; sha256="0axglmk05li3plb79rccskhddjzq3pdx3mgxr8yqysymf1nscrq6"; depends=[cli crayon dplyr fgeo_analyze fgeo_plot fgeo_tool fgeo_x glue magrittr purrr rlang rstudioapi]; };
   fgeo_analyze = derive2 { name="fgeo.analyze"; version="1.1.14"; sha256="0pnmvq6imnffvr4qlmygmmw18g33s81f5jrrs7n4ahwi0qmf5qaj"; depends=[dplyr fgeo_tool glue lubridate magrittr MASS purrr rlang tibble tidyr withr]; };
   fgeo_plot = derive2 { name="fgeo.plot"; version="1.1.10"; sha256="0lg74ckdm3nn91526cg6gly3lpsv315n2kfmf4bsmprj8k0zj31s"; depends=[dplyr fgeo_tool ggplot2 ggrepel glue magrittr purrr rlang stringr]; };
   fgeo_tool = derive2 { name="fgeo.tool"; version="1.2.7"; sha256="1272zaa78s6ypfavhf6fy0fl23i71w4s549bpkb94rvalg2026ak"; depends=[dplyr glue magrittr purrr readr rlang tibble tidyselect]; };
   fgeo_x = derive2 { name="fgeo.x"; version="1.1.4"; sha256="0swps9rli74fmfb2j4kf55kw39gxz0q49m74ad4vcs0ylyp0sxrb"; depends=[memoise]; };
+  fgitR = derive2 { name="fgitR"; version="0.2.0"; sha256="0ncwd3wgkll11447qjlq3ihx876d1jv067pcrfswia31jrb700wl"; depends=[devtools git2r httr]; };
   fglsnet = derive2 { name="fglsnet"; version="1.0"; sha256="00qn4k4xm1zfkz77lys468c1mfx3vyfjkf19wdbcvgssrmf6w0xd"; depends=[lmtest MASS Matrix matrixcalc network sandwich sna]; };
   fgm = derive2 { name="fgm"; version="1.0"; sha256="0i6lbqxxjq78dql14qwqs7slnn0kyls2g3a9biabny2narwf6n3m"; depends=[fdapace JGL]; };
   fgof = derive2 { name="fgof"; version="0.2-1"; sha256="0bclkb3as0fl2gyggqxczndfyj9pfnni5pa3inpn5msrnjg4g2j2"; depends=[mvtnorm numDeriv]; };
@@ -9365,6 +9390,7 @@ in with self; {
   fiberLD = derive2 { name="fiberLD"; version="0.1-6"; sha256="1i3bl2qsc77m81l11an9ihl4vy86s8jd5x6pasib77rl2877ad4x"; depends=[doParallel foreach Matrix VGAM]; };
   fic = derive2 { name="fic"; version="1.0.0"; sha256="18xz94w1ab17jfi61bdg9z3pm63g488v17ns2ivizkza4gg07pv8"; depends=[abind ggplot2 mvtnorm numDeriv scales survival tensor]; };
   fidelius = derive2 { name="fidelius"; version="0.0.2"; sha256="18dsw069j3jzl0splgjjdsybny1hq0dmiyygri8nlfwshijkw15h"; depends=[askpass fs htmltools readr rlang rmarkdown rstudioapi sodium whisker]; };
+  fido = derive2 { name="fido"; version="1.0.0"; sha256="09gfji61hixwcr7yrygjzw49c7d586a6b497mvkj9whjdi1dw4vv"; depends=[BH dplyr ggplot2 phyloseq purrr Rcpp RcppEigen RcppNumerical RcppZiggurat rlang tidybayes tidyr]; };
   fieldRS = derive2 { name="fieldRS"; version="0.2.3"; sha256="0jr2l5cnrawd6wibmb6r0sngd851z9mbz4mwprnbbqbv3hzzrpm9"; depends=[caret concaveman geosphere ggplot2 raster rgeos sp stringdist vegan]; };
   fields = derive2 { name="fields"; version="13.3"; sha256="1hs4k5a9hh0r5fsrnpnvs6wvf78xpjzj8a2j6643dsz73a5q6ln6"; depends=[maps spam viridis]; };
   fiery = derive2 { name="fiery"; version="1.1.3"; sha256="1rwnmm4n59wdsvb57bj8mx1qhz93jbvfb73sl111nwqazphrhid1"; depends=[assertthat crayon future glue httpuv later R6 reqres stringi uuid]; };
@@ -9372,7 +9398,7 @@ in with self; {
   file2meco = derive2 { name="file2meco"; version="0.2.1"; sha256="1m9r7vp766p4lsbzpfzwfp37ylrbnsz63fwnl0h4ykcfqmf9b12m"; depends=[ape dplyr magrittr Matrix microeco R6 rhdf5 tidyr yaml]; };
   filearray = derive2 { name="filearray"; version="0.1.3"; sha256="10kpr5c7yq9hk1b6x611vi1pcsis0x1xpi0rs1dqgv310hswa0k5"; depends=[BH digest Rcpp]; };
   filebin = derive2 { name="filebin"; version="0.0.5"; sha256="1k13vwppk3f3acnyz32wrjmr80x0lbdzv0sx74xr87n1kbrrv5fn"; depends=[dplyr httr janitor logger purrr stringi tibble tidyr]; };
-  filehash = derive2 { name="filehash"; version="2.4-2"; sha256="14zv7h5195dmfksgk8qvjgc2qq8253vga6267aa1bqs5bpvmdl5n"; depends=[]; };
+  filehash = derive2 { name="filehash"; version="2.4-3"; sha256="1ga17smgjd4qsnf5a7qk0giwhpc5969ylqj520favs1k6b4y557k"; depends=[]; };
   filehashSQLite = derive2 { name="filehashSQLite"; version="0.2-4"; sha256="1higvkmj4wvnwpvayqinzaygiksij20d77dx118q0gffsczadamh"; depends=[DBI filehash RSQLite]; };
   filelock = derive2 { name="filelock"; version="1.0.2"; sha256="00ql5fw1hidpfnm0szaavf43ahmsnvdbi8i5lr1nrcc90yaiaadc"; depends=[]; };
   filematrix = derive2 { name="filematrix"; version="1.3"; sha256="1v3aj1ng742msb0sfdnjsbqb508mqjf8jlq2v33vxldhradw5w0b"; depends=[]; };
@@ -9390,7 +9416,7 @@ in with self; {
   findR = derive2 { name="findR"; version="0.2.1"; sha256="1a7cf6kd7i2l4ffr2b17nb9xnpsjhf6fcwpjy06r0qgcapnfp54b"; depends=[pdftools stringr]; };
   findpython = derive2 { name="findpython"; version="1.0.7"; sha256="0jf10jpqla90x03kl3k77gnd255zmw9rvr8d724vb17cqawh9yar"; depends=[]; };
   findviews = derive2 { name="findviews"; version="0.1.3"; sha256="1l1yhw5hvrn0rpkdsch8m69d2q5284jwccvv7r4ia4m0iqjfipj7"; depends=[ggplot2 gridExtra scales shiny]; };
-  finetune = derive2 { name="finetune"; version="0.1.0"; sha256="1raj7knxw6qw1jvd4dgps6v8zcn7akncxar7xwz63sqvw8yav45g"; depends=[cli dials dplyr ggplot2 purrr ranger rlang tibble tidyr tidyselect tune vctrs workflows yardstick]; };
+  finetune = derive2 { name="finetune"; version="0.1.1"; sha256="0yi76ww7m4nfd1b7cd3ixarbjwpzh8g016byz2pvchmz2mb10s6h"; depends=[cli dials dplyr ggplot2 purrr rlang tibble tidyr tidyselect tune vctrs workflows]; };
   fingerPro = derive2 { name="fingerPro"; version="1.1"; sha256="1a1lj8gyrbgcg8hr03cj2bjzlaafddspri7abc83ys1raqwd4j68"; depends=[car GGally ggplot2 gridExtra klaR MASS plyr Rcmdr Rcpp RcppGSL RcppProgress reshape rgl scales]; };
   fingerprint = derive2 { name="fingerprint"; version="3.5.7"; sha256="04jcwkydjrs31pia6kq8z2n9s54im950q08hs2ay15xjxxkmb8ic"; depends=[]; };
   finiteruinprob = derive2 { name="finiteruinprob"; version="0.6"; sha256="0z4l0crymh58chxniqq70fqmvi6f5jkgvz72vbc7s3l9lrrapgr3"; depends=[numDeriv sdprisk]; };
@@ -9401,17 +9427,17 @@ in with self; {
   fipe = derive2 { name="fipe"; version="0.0.1"; sha256="055jav8h4wws76jahm2d5dj49wkvzchh3f2vk5d50pny4dc7smar"; depends=[dplyr forcats furrr future httr jsonlite lubridate magrittr purrr readr stringr tibble tidyr]; };
   fipio = derive2 { name="fipio"; version="1.1.0"; sha256="1y153096wkihzcwcycf492wbc4mwlmqsm8hyjljx3zddmx2iklvk"; depends=[]; };
   fipp = derive2 { name="fipp"; version="1.0.0"; sha256="0wr3czwsqwa1bpdcjk0r1739vjanxc0fv0vnl3r5lgykrbhw9v3r"; depends=[matrixStats Rcpp RcppArmadillo]; };
-  firebase = derive2 { name="firebase"; version="1.0.0"; sha256="0bva63wkawvw74r3kj0lagx3bkq7yx4lzjafhxa2jk9xrnsg6gmw"; depends=[base64enc cli htmltools jose jsonlite openssl R6 shiny]; };
+  firebase = derive2 { name="firebase"; version="1.0.1"; sha256="0sdv3l13byqn4sfp360scj4260adyvnbvzxkc88zvg3k33fx5hmn"; depends=[base64enc cli htmltools jose jsonlite openssl R6 shiny]; };
   firebehavioR = derive2 { name="firebehavioR"; version="0.1.2"; sha256="10krny60dkpgwjjnriap91qmrnfq1rl5ck4ynf4h6x016bv0m374"; depends=[ggplot2]; };
   fishMod = derive2 { name="fishMod"; version="0.29"; sha256="0pbs4z27vwa3c42xdw3mr6l2i581bgvn2pk52kawbcnnlsff92ar"; depends=[]; };
   fishbc = derive2 { name="fishbc"; version="0.2.1"; sha256="15mlr113qgndjhyry8img50jfk0si81kw2cdgl896b0g4djc5la3"; depends=[]; };
   fishdata = derive2 { name="fishdata"; version="1.0.1"; sha256="0hskmw93pyrm5wxn1dw8vi18v11jnf03yx375hjkk38hcfnp6n5k"; depends=[]; };
   fisheye = derive2 { name="fisheye"; version="0.1.0"; sha256="0yrgr0nhnn768q6hc2dsjz7y3n7p7ci0rdfqsickafgv2srdrh83"; depends=[sf]; };
-  fisheyeR = derive2 { name="fisheyeR"; version="0.9"; sha256="1w6va7gakqq2q8hsvdszpn8s2ysdfc648bk5p5v3wbl5s403bci8"; depends=[tkrplot]; };
   fishkirkko2015 = derive2 { name="fishkirkko2015"; version="1.0.0"; sha256="1s8vsf604rc6qk0gahn61p3q8p9dhsbq14wsmrin7icq2xgl3y81"; depends=[]; };
   fishmethods = derive2 { name="fishmethods"; version="1.11-3"; sha256="17fghylmc4xs8b9p2ybgdpjxkjb4zg7qxhb75sdj0q0bvs1mhyiq"; depends=[boot bootstrap data_table lme4 MASS numDeriv]; };
   fishmove = derive2 { name="fishmove"; version="0.3-3"; sha256="1knbv087cg0czjcgdbrlpg69pp1dxb57b7ak5j1mcy7ay3a41a9h"; depends=[boot ggplot2 MASS plyr]; };
   fishtree = derive2 { name="fishtree"; version="0.3.4"; sha256="00g8p885z5xcqp2chncb177s0l6lab2f069szj861z9dyf93xx4z"; depends=[ape jsonlite memoise rlang]; };
+  fishualize = derive2 { name="fishualize"; version="0.2.3"; sha256="0iygh6mlxlsk6yq26i5rry9gh6qkrn5sbgsa2wpdxmm1ip1nzml0"; depends=[curl downloader dplyr ggplot2 gridExtra httr magrittr png rlang scales stringr tidyr]; };
   fit_models = derive2 { name="fit.models"; version="0.64"; sha256="1nk4x2q8cv79zcls61saf627ac0fci6jcrd6lmzk61asm2zhc27p"; depends=[lattice]; };
   fitConic = derive2 { name="fitConic"; version="1.2"; sha256="0mwnbq32mpj8d4127jwb283mn3gs4hm0klwk9prsrfkdnhqai41i"; depends=[pracma]; };
   fitDRC = derive2 { name="fitDRC"; version="1.1.1"; sha256="09z9l27iwl0fd3zy6rsdhmy8qbm5d9a4wcaj5rxp7ynlnpi102aa"; depends=[]; };
@@ -9420,19 +9446,20 @@ in with self; {
   fitPoly = derive2 { name="fitPoly"; version="3.0.0"; sha256="0ws1vsh8if9i9i7820ak32b0bysjc0z09nbrk17qpms0b11cpc3g"; depends=[foreach]; };
   fitTetra = derive2 { name="fitTetra"; version="1.0"; sha256="0ia6wk4gicpmn6kclsd28p7v1npwfv2blagiz0cxzwfw3njv103g"; depends=[]; };
   fitbitScraper = derive2 { name="fitbitScraper"; version="0.1.8"; sha256="0b4d7xw6inp6l1dkfwyrzxwg4vspp4vzlwrhv14ajxrqz6irj8a0"; depends=[httr jsonlite stringr]; };
-  fitbitViz = derive2 { name="fitbitViz"; version="1.0.2"; sha256="1jvjb7plgfzak3j6wpgp0rzm7y6caja5ibkqfahfhid3li2iiwv0"; depends=[data_table exactextractr geodist ggplot2 ggthemes glue hms httr jsonlite leafgl leaflet lubridate magrittr OpenImageR paletteer patchwork raster rayshader rstudioapi scales sf sp varian viridis XML]; };
+  fitbitViz = derive2 { name="fitbitViz"; version="1.0.4"; sha256="1cp5nkaj9ikqcv3yp030id1wklj3jnx002sz2ib0vzza81zyw8bw"; depends=[data_table ggplot2 ggthemes glue hms httr jsonlite leafgl leaflet lubridate magrittr paletteer patchwork raster rayshader rstudioapi scales sf terra varian viridis XML]; };
   fitbitr = derive2 { name="fitbitr"; version="0.2.0"; sha256="1v5mhqdiynla7rmspxp5bg6xjjxac0y3qh2nv82pr3fvzvxrrqz8"; depends=[dplyr httr janitor jsonlite lubridate magrittr purrr rlang tibble tidyr]; };
-  fitdc = derive2 { name="fitdc"; version="0.0.1"; sha256="1b1abib7jkl7a6r686r53qjw2ywb9q2h67is8691kkaqxpawg30p"; depends=[]; };
   fitdistrplus = derive2 { name="fitdistrplus"; version="1.1-6"; sha256="1glnbcm1gghzgvzpxcfsmn7dp2f9jqyx39n3ydwp9fx38409khhp"; depends=[MASS survival]; };
   fitmix = derive2 { name="fitmix"; version="0.1.0"; sha256="1z7jgxz119lkyggmgpykcslv56z1i7pnbp872jkdni77sx94x89c"; depends=[]; };
   fitplc = derive2 { name="fitplc"; version="1.2-3"; sha256="1yg3ch907c4gk7q8hxgwqxgngkmy125j3ni917nkzi7hn59krd1n"; depends=[car nlme]; };
-  fitteR = derive2 { name="fitteR"; version="0.1.0"; sha256="1kgnyl7am966vkfap8gmvchlpankrcj5dv5aj7ws8ix9shr76db6"; depends=[dplyr DT maxLik R_utils shiny]; };
+  fitscape = derive2 { name="fitscape"; version="0.1.0"; sha256="0y9x0n61y366f35d594523l3c5sjaf87msxhnlbs2w3g7d53yvfb"; depends=[]; };
+  fitteR = derive2 { name="fitteR"; version="0.2.0"; sha256="0l33j69fdfpsp77a1vwqg07b65qaxs875r7lhy2bfi6mxgcklby9"; depends=[dplyr DT maxLik R_utils shiny]; };
   fitur = derive2 { name="fitur"; version="0.6.2"; sha256="0bx1w1bpz3i2ybwl386s8y8nxyqwk6w33aqyyw94aq6ink3bw2aw"; depends=[actuar DT e1071 fitdistrplus ggplot2 goftest miniUI rstudioapi shiny]; };
   fitzRoy = derive2 { name="fitzRoy"; version="1.1.0"; sha256="1vv1sahxbabmqh3h8p60af8xbjp3irp2nmdd3a1w4nwjpykycrqy"; depends=[cli dplyr glue httr jsonlite lubridate magrittr progress purrr readr rlang rvest stringr tibble tidyr tidyselect xml2]; };
   fivethirtyeight = derive2 { name="fivethirtyeight"; version="0.6.2"; sha256="0nja8zbbkrxrvznyi1c38yzv6djx58ac5y4l1nkf07ph5d9i3k81"; depends=[]; };
   fixedTimeEvents = derive2 { name="fixedTimeEvents"; version="1.0.1"; sha256="18cqbxrs69p60anvii22mhqkwh5y2mxapmznff9g7j1j6h4h62lr"; depends=[]; };
   fixerapi = derive2 { name="fixerapi"; version="0.1.6"; sha256="0ikf8dn0l9c9gshp4bph3wasl0bh6lfybinc8n1rvb202231hmgb"; depends=[jsonlite tibble tidyr]; };
-  fixest = derive2 { name="fixest"; version="0.10.1"; sha256="0gjzgchlcx8vmfbqg80xwj6azna5l7dw9l31bcybd2fg817mixvm"; depends=[dreamerr nlme numDeriv Rcpp sandwich]; };
+  fixest = derive2 { name="fixest"; version="0.10.3"; sha256="1idc20ih5qmifi0w74zp1ak19qcz4k0718i2210k0b2rc2axl4fm"; depends=[dreamerr nlme numDeriv Rcpp sandwich]; };
+  fixtuRes = derive2 { name="fixtuRes"; version="0.1.3"; sha256="1vmdbx1pfk4kcxq5q5hj4v6rz403xw66gpg6zpvrxkpcgkx2dwyz"; depends=[checkmate dplyr glue lubridate purrr R6 rlang stringi yaml]; };
   fizzbuzzR = derive2 { name="fizzbuzzR"; version="0.1.1"; sha256="119gbi9y4n8r52hk9vj7zf795dv9xnk7lnngljjcd7ydnhygwd4h"; depends=[]; };
   flacco = derive2 { name="flacco"; version="1.8"; sha256="15h2q9xgddy7gw6r52c2nk618f3z1mjn4xz9pzdvhm1d3kqggwa4"; depends=[BBmisc checkmate mlr]; };
   flagr = derive2 { name="flagr"; version="0.3.2"; sha256="195c78cml2pjzfvpkaxbzcg1dfdqxi76138p0v3x3zzva9d8nlji"; depends=[]; };
@@ -9454,7 +9481,7 @@ in with self; {
   flexCWM = derive2 { name="flexCWM"; version="1.92"; sha256="1fxwq12mki10ikf5lyh1pb58svfzs4llg68v4d9iznia8aa0grhq"; depends=[ContaminatedMixt mclust numDeriv statmod]; };
   flexclust = derive2 { name="flexclust"; version="1.4-0"; sha256="0x7wxk8y46ndyz6fdacym0rd6p9wh3pcfr28chjcg5d7fm849zl2"; depends=[class lattice modeltools]; };
   flexdashboard = derive2 { name="flexdashboard"; version="0.5.2"; sha256="1bh759llp15fxrx2rwvxd8p3w84vjmkid32ism7zg49a127fjib4"; depends=[htmltools htmlwidgets jsonlite knitr rmarkdown shiny]; };
-  flexiblas = derive2 { name="flexiblas"; version="3.0.0"; sha256="1nlddwqnqkq5lv0bnsg0rbci6sjwkplqp71zdxn6pqyysyq036gb"; depends=[]; };
+  flexiblas = derive2 { name="flexiblas"; version="3.1.0"; sha256="0kgkxzx8lgw0lmszwd4fipvhpgak753bdcm81w25ilp5pzd8x6ii"; depends=[]; };
   flexmet = derive2 { name="flexmet"; version="1.1"; sha256="1xcs4gs5aanvfsf6bgj28jsjdxrx0dz475xsw8hd6y44qdgw1sqb"; depends=[]; };
   flexmix = derive2 { name="flexmix"; version="2.3-17"; sha256="0jangf89174p0idh9afbicfiln2sz8jxc3bjc6n0j9036dw9n09n"; depends=[lattice modeltools nnet]; };
   flexmixNL = derive2 { name="flexmixNL"; version="0.0.1"; sha256="0bk5v0cnsn1qkd1b86vj0bnpr4l9d6523kpkgzb1l1sqyscawfmm"; depends=[flexmix gnm]; };
@@ -9462,10 +9489,10 @@ in with self; {
   flexrsurv = derive2 { name="flexrsurv"; version="1.4.5"; sha256="1xwh6fj854hr5j1mdh4cbp3hbrbdl4nb2ili876rq08wb9wq5pkf"; depends=[Epi formula_tools matrixcalc orthogonalsplinebasis statmod survival]; };
   flexsurv = derive2 { name="flexsurv"; version="2.1"; sha256="0kwij9nkdvnsn1kn12fj3hjkd2qpgw7bdda4qad7basq5p6divlp"; depends=[assertthat deSolve dplyr generics magrittr Matrix mstate muhaz mvtnorm numDeriv purrr quadprog Rcpp rlang rstpm2 survival tibble tidyr tidyselect]; };
   flexsurvcure = derive2 { name="flexsurvcure"; version="1.2.0"; sha256="06qppcjml380drd6brc60j1swasqrmdx82h6x69xpb65zn9wpa3c"; depends=[flexsurv gtools survival]; };
-  flextable = derive2 { name="flextable"; version="0.6.10"; sha256="01nm0357b0z4dgrplbq9ms63j51n0rgvvxyy068zdsc5p7j3lql2"; depends=[base64enc data_table gdtools htmltools knitr officer rlang rmarkdown uuid xml2]; };
+  flextable = derive2 { name="flextable"; version="0.7.0"; sha256="15vr5lb87712mymsvv01kz9s1fb54sx5kybsa2x547k5g10dbrbm"; depends=[base64enc data_table gdtools htmltools knitr officer rlang rmarkdown uuid xml2]; };
   flifo = derive2 { name="flifo"; version="0.1.5"; sha256="03x66l3ryrjvwbxxd0ncjrb5w9kc7fswmp5psb1cb7r87f395gm3"; depends=[bazar pryr]; };
   flightplot = derive2 { name="flightplot"; version="0.1.0"; sha256="1276lsahr9kdsvp1ismm3b5syvhfr7ifizzd79f8w1h2rjblva8x"; depends=[dplyr geosphere ggplot2 ggrepel magrittr rlang sf tibble]; };
-  flightsbr = derive2 { name="flightsbr"; version="0.0.1"; sha256="1la95d397jx4s5mhg4ck5hb8r4m61lsnpbd0gkdpijiqsjhwp8zr"; depends=[data_table httr]; };
+  flightsbr = derive2 { name="flightsbr"; version="0.1.1"; sha256="0wgiikbz8jm3pgj47jad9mzvdgbp1wbwfr3ps0ncrk11vdw2iqpf"; depends=[data_table httr parzer pbapply rvest]; };
   flintyR = derive2 { name="flintyR"; version="0.0.2"; sha256="13bzglcwd4r6q8ix8diy2dljns722k29zbd782fvkxc59ikx7dja"; depends=[assertthat doParallel foreach Rcpp RcppArmadillo testthat]; };
   flip = derive2 { name="flip"; version="2.5.0"; sha256="08x5hwxaxbgc745gblja7gcy0b5wbp7jf90lkha75zl5cc9iyksl"; depends=[cherry e1071 plyr someMTP]; };
   flipbookr = derive2 { name="flipbookr"; version="0.1.0"; sha256="0ls51risk3qn5fagw31i2kibrxk7xk3845a1cccd83sc4c8ilgjx"; depends=[dplyr glue knitr magrittr purrr rmarkdown stringi stringr tibble tidyr]; };
@@ -9479,7 +9506,7 @@ in with self; {
   flock = derive2 { name="flock"; version="0.7"; sha256="1zg93p74icj4bhxnmnssj2xp6vw4yaksyavq03497v33xfpdxss7"; depends=[Rcpp]; };
   flood = derive2 { name="flood"; version="0.1.1"; sha256="0nlmjh2l7dij1aqd70hhj0m550knlin3am14azqkx4pacs1kir3p"; depends=[copula evd magrittr TLMoments]; };
   flora = derive2 { name="flora"; version="0.3.4"; sha256="17drlfvvrndal4cf5nw20xb9viybagvb4vll1kxdrhvsvfz5yap6"; depends=[dplyr httr jsonlite stringdist]; };
-  flow = derive2 { name="flow"; version="0.0.2"; sha256="0aa2nfk1i99mcsnfmziyfbsg4w1x58xnqzgwpyrx31yigrd20515"; depends=[htmlwidgets nomnoml rstudioapi styler webshot]; };
+  flow = derive2 { name="flow"; version="0.1.0"; sha256="1d5cj0qbmx6cwzik83vb0vijryq4b93y5wwgm8k92wg3lgknzdj6"; depends=[here htmlwidgets lifecycle nomnoml rstudioapi styler webshot]; };
   flower = derive2 { name="flower"; version="1.0"; sha256="1h2fvpjrvpbyrqb8hd51sslr1ibpwa7h9fiqy9anvf2yim5j11yq"; depends=[]; };
   flowfield = derive2 { name="flowfield"; version="1.0"; sha256="1cx3i0w3xq781mmms4x20fshlf1i9bwxw9bxx562crix3fq3m50j"; depends=[]; };
   flowr = derive2 { name="flowr"; version="0.9.11"; sha256="1cbbfrvgzqclvbhy20vjwgxbvnn3ljh0k1k54jf2si10bfw3zzi5"; depends=[diagram params readr whisker]; };
@@ -9498,7 +9525,7 @@ in with self; {
   fmpcloudr = derive2 { name="fmpcloudr"; version="0.1.5"; sha256="07fvmrprv0pka1wgp5ygcvv86jvn3h30xxkx44ssin15hfmank69"; depends=[dplyr httr jsonlite lubridate magrittr tidyr]; };
   fmri = derive2 { name="fmri"; version="1.9.6"; sha256="1wh77xwpm8f9d9vky3r7vfmkik3hls008ifk8hkm2rq6i06jj53n"; depends=[aws metafor nlme]; };
   fmriqa = derive2 { name="fmriqa"; version="0.3.0"; sha256="1z09nf1c305a78c129jvs21b9z91wyhazz41wrn4bimmhfhx7szv"; depends=[ggplot2 gridExtra imager optparse pracma RcppEigen reshape2 RNifti tidyr viridisLite]; };
-  fmsb = derive2 { name="fmsb"; version="0.7.2"; sha256="1ylwj4385wg7rymx0m3kayyvrbil89wxb7phdl0fvi0xq2krkzhb"; depends=[]; };
+  fmsb = derive2 { name="fmsb"; version="0.7.3"; sha256="1gi94xr0b1yk9xzwfprfafxi25yic1lcivd66p73n6iqfzdaimbk"; depends=[]; };
   fmtr = derive2 { name="fmtr"; version="1.5.5"; sha256="0vxdcjr0azmcsq59gp31c1zkgcf2sbi5z8qmjcz0507sn81r73wf"; depends=[crayon Rcpp tibble]; };
   focusedMDS = derive2 { name="focusedMDS"; version="1.3.3"; sha256="18s86dbbpyajscqr9frprf2vp1zif7vh4lw5m0cjskfc6gmsdp2p"; depends=[htmlwidgets]; };
   foghorn = derive2 { name="foghorn"; version="1.4.2"; sha256="11riav36ncxybx4yrrrwrykg9xmh2fpp5m92zl9prhi7g0rllg6f"; depends=[clisymbols crayon curl httr jsonlite rlang rvest tibble xml2]; };
@@ -9516,9 +9543,10 @@ in with self; {
   foodingraph = derive2 { name="foodingraph"; version="0.1.0"; sha256="0v40yk7lx0zxvpd3vz48h5gzx8ds8v3l12i2r7v9safgfvip6fvn"; depends=[cowplot dplyr ggplot2 ggraph igraph labeling magrittr minerva rlang stringr tibble tidyr viridis]; };
   foodweb = derive2 { name="foodweb"; version="1-0"; sha256="1zm2a87g9bkpz90j9lax28s5hq1w7ia28qqb6vnvr1d7a47g9zi9"; depends=[rgl]; };
   foolbox = derive2 { name="foolbox"; version="0.1.1"; sha256="06lcr5v6bcqqxskrwdm16b46zq4h67x8bwqya88jxs5bgi5w0hj3"; depends=[magrittr rlang]; };
+  footBayes = derive2 { name="footBayes"; version="0.1.0"; sha256="1q2xcrrw4x2jdvxr5q3l9lh0sfg3wjw06s9qzil11pb93h5l2ik6"; depends=[arm bayesplot dplyr extraDistr ggplot2 magrittr matrixStats metRology numDeriv reshape2 rstan tidyverse]; };
   footballpenaltiesBL = derive2 { name="footballpenaltiesBL"; version="1.0.0"; sha256="1my67157frp4pxl84sb6dnb7rzp99g59mp9iwwv1s6wc391zfbsp"; depends=[]; };
   footprint = derive2 { name="footprint"; version="0.1"; sha256="00m3jaxiacf9wxa0wg0qxhp6c0prbf2l5c2cid6anz8rc5b6angv"; depends=[airportr dplyr magrittr rlang]; };
-  foqat = derive2 { name="foqat"; version="2.0.0"; sha256="0f4zakfj4f2x3sy0h048vbzx7bvr8jffz125ncd7yydhgxbl7v8v"; depends=[dplyr ggnewscale ggplot2 ggplotify gridExtra lmodel2 lubridate magrittr patchwork plyr reshape2 rvest scales stringr xml2]; };
+  foqat = derive2 { name="foqat"; version="2.0.1"; sha256="1p607kiw04cq6jrpbmcmpaqilaa2c1mhvqz10fld01mz6k29f7p0"; depends=[dplyr ggnewscale ggplot2 ggplotify gridExtra lmodel2 lubridate magrittr patchwork plyr reshape2 rvest scales stringr xml2]; };
   forImage = derive2 { name="forImage"; version="0.1.0"; sha256="1p8zfndvm7x7pnryphz944hgxcchvc6mwnr6ap15m0i6kwsh0nb4"; depends=[dplyr magrittr reticulate tibble]; };
   forams = derive2 { name="forams"; version="2.0-5"; sha256="1fh3m9896ksv1h7b027yb955bzyv70yafhqvn5crkzalzk3jpb0s"; depends=[vegan]; };
   forcats = derive2 { name="forcats"; version="0.5.1"; sha256="12d2nv2w15085jscgidmjdnr1ryymciflcmal6ldmgp2fkl9dyy4"; depends=[ellipsis magrittr rlang tibble]; };
@@ -9529,10 +9557,11 @@ in with self; {
   forecastHybrid = derive2 { name="forecastHybrid"; version="5.0.19"; sha256="1pg3wbmlagr01j3nikfh4dvh5lvbdfp7069wx9h9xsl7d4481ly1"; depends=[doParallel foreach forecast ggplot2 purrr thief zoo]; };
   forecastML = derive2 { name="forecastML"; version="0.9.0"; sha256="01lqbmdmd6sk5xka19i9d466bzihxgp652v0kr13r82b591f67vq"; depends=[data_table dplyr dtplyr future_apply ggplot2 lubridate magrittr purrr rlang tibble tidyr]; };
   forecastSNSTS = derive2 { name="forecastSNSTS"; version="1.3-0"; sha256="0p47x7ic2ib7znqbp8br4b2ci75f5w8x413z9g4n30m002p7irp1"; depends=[Rcpp]; };
+  forecasteR = derive2 { name="forecasteR"; version="1.1.6"; sha256="1lqlmiwr34rim50y9vxinf23xi9gj0y6p1y1wp3vlfycdkd0lca5"; depends=[colourpicker config DT echarts4r forecast golem htmltools htmlwidgets lubridate rlang scales shiny shinyAce shinycustomloader shinydashboard shinydashboardPlus shinyjs stringr]; };
   foreign = derive2 { name="foreign"; version="0.8-82"; sha256="1yw07yqzfm4w1h92ijyamrmf7rmkqxgamqfd74x7zv4vsn20dvgq"; depends=[]; };
   forensic = derive2 { name="forensic"; version="0.2"; sha256="0kn8wn6p3fm67w88fbarg467vfnb42pc2cdgibs0vlgzw8l2dmig"; depends=[combinat genetics]; };
   forensim = derive2 { name="forensim"; version="4.3"; sha256="1jhlv9jv832qxxw39zsfgsf4gbkpyvywg11djldlr9vav7dlh3iw"; depends=[tcltk2 tkrplot]; };
-  forestControl = derive2 { name="forestControl"; version="0.2.1"; sha256="1m75s98bs8n3qad8gp6a333dh3mbi0rbbic9iwnsqyklzkhmx1nr"; depends=[dplyr magrittr purrr Rcpp tibble]; };
+  forestControl = derive2 { name="forestControl"; version="0.2.2"; sha256="0g81ml12xhq2a868vlpsybpsqz7p4hn9jnxh3dvq6g4k1hc1292x"; depends=[dplyr magrittr purrr Rcpp tibble]; };
   forestError = derive2 { name="forestError"; version="1.1.0"; sha256="1dk19sgx760ph464cya4gxb1i3rpnydnhrbqyb25jja0dryjapcm"; depends=[data_table purrr]; };
   forestHES = derive2 { name="forestHES"; version="1.0-1"; sha256="05l04ly3l8xkdz3rnnrfa4y0wfmh1am2ixbz1vfarnqkc0zppwpj"; depends=[]; };
   forestRK = derive2 { name="forestRK"; version="0.0-5"; sha256="0zm0q7bckmjl1j3yh5pw4r6rq64rfmzjvmvqniza5691jagjz60m"; depends=[ggplot2 igraph knitr mlbench partykit pkgKitten rapportools]; };
@@ -9541,7 +9570,7 @@ in with self; {
   forestmangr = derive2 { name="forestmangr"; version="0.9.4"; sha256="1zlp7lnawbfqw60552cwnh280spqj7p2qvn2xwz5y7wly2d7d4fm"; depends=[broom car dplyr FinCal ggdendro ggplot2 ggpmisc ggthemes gridExtra magrittr miniUI minpack_lm plyr purrr rlang scales shiny systemfit tibble tidyr]; };
   forestmodel = derive2 { name="forestmodel"; version="0.6.2"; sha256="0pl9r8j2qd00b9kl585b4k54kic5fvzc56i8cn3hm5yp2hrrwyws"; depends=[broom dplyr ggplot2 rlang tibble]; };
   forestplot = derive2 { name="forestplot"; version="2.0.1"; sha256="0bzwi6ws0qjq1pqiadssynbkxxd4zjp974jfdplmv16fcyszqhyi"; depends=[checkmate magrittr]; };
-  forestploter = derive2 { name="forestploter"; version="0.1.1"; sha256="0flqxadq89bfbdck9b5lvbys87lcyq37jwhsfx6k5jvplm70vrxw"; depends=[gridExtra gtable]; };
+  forestploter = derive2 { name="forestploter"; version="0.1.2"; sha256="1vqc1prlzgssc7ywvlgd7c6rysrmb9145fh9akhra6rs1pnrv9pf"; depends=[gridExtra gtable]; };
   forestr = derive2 { name="forestr"; version="2.0.2"; sha256="1kz8f3x2dmsprj2r23gz61fpwg7n14nbjxr16x4cpixvnk427p94"; depends=[dplyr ggplot2 moments plyr tibble tidyr viridis]; };
   forestry = derive2 { name="forestry"; version="0.1.0"; sha256="0q7m0mrig8z2b2z2fng58qlqa6g58xlhfzchil2dvjh6xf3qvsh8"; depends=[data_tree]; };
   foretell = derive2 { name="foretell"; version="0.2.0"; sha256="18vi438n480gizfhnciw67gngvbjnmky19186b1wy75av7fgc1gp"; depends=[nloptr]; };
@@ -9552,7 +9581,7 @@ in with self; {
   formulaic = derive2 { name="formulaic"; version="0.0.8"; sha256="1nx6a73vw2hjbnqaw8x17ghhljd6z2avxv4arz3c3785pyayhg9k"; depends=[data_table]; };
   formulops = derive2 { name="formulops"; version="0.5.0"; sha256="1mkpv5xjykrhgknq0gh4yg2a3j4xb8q2d6dh0wv8zd9h59hvrzda"; depends=[]; };
   forplo = derive2 { name="forplo"; version="0.1.0"; sha256="15zkzq8vb6ydvic3r2lsna64vqlq12225cpdr7dsrfkn6kqjjzd5"; depends=[]; };
-  forrel = derive2 { name="forrel"; version="1.3.0"; sha256="0dlp318dh77fwjcqyzx9ldwvcxa4xpwkpvnizgvbifnwxkggdj7j"; depends=[glue pedmut pedprobr pedtools ribd]; };
+  forrel = derive2 { name="forrel"; version="1.4.1"; sha256="1328cbcnnpy3n8na2brxf2q5i3czkkiajri6zi5yfajwrb2vyg33"; depends=[glue pedmut pedprobr pedtools ribd]; };
   forsearch = derive2 { name="forsearch"; version="1.0.0"; sha256="047iizf9pfgq292zkhkdwq44ij4kixvxd7d0qqyayckh3c1k9290"; depends=[Cairo ggplot2 Hmisc nlme tibble]; };
   fortunes = derive2 { name="fortunes"; version="1.5-4"; sha256="109ly9kpfn6hy294ava8795wy5z9l1bnl98hhhv8kn9naf4camdg"; depends=[]; };
   forward = derive2 { name="forward"; version="1.0.5"; sha256="0cc0s534s32b9ark2zazwqhgy0zsxb2p63r6503v82784rpqv2yv"; depends=[MASS]; };
@@ -9565,7 +9594,6 @@ in with self; {
   fpCompare = derive2 { name="fpCompare"; version="0.2.3"; sha256="1pyv52rvbqd5v6ns86pc119q019ps070bd819x7a98s4hmbf76zq"; depends=[]; };
   fpa = derive2 { name="fpa"; version="1.0"; sha256="0kgpl9qq0l10h0vdd2f8vnir0kdylh1jvvv5z4d9ygj1pl9qywhk"; depends=[fields reshape]; };
   fpc = derive2 { name="fpc"; version="2.2-9"; sha256="0f7sfmpcycr9y7cy5gasyjm2ardxa62kglqms92mcr68jrp01c19"; depends=[class cluster diptest flexmix kernlab MASS mclust prabclus robustbase]; };
-  fpca = derive2 { name="fpca"; version="0.2-1"; sha256="13b102026xlfb7c2rb3xsqsymm7xpmaxppaafjkb5dx0b1lz0jrc"; depends=[sm]; };
   fpcb = derive2 { name="fpcb"; version="0.1.0"; sha256="086060z6r79m527bb9ah6yk2z15xq8x27gyvbz23xbm6mhrxsa1y"; depends=[FNN]; };
   fpeek = derive2 { name="fpeek"; version="0.1.2"; sha256="0kv46g21ndxchg3q8ynq7hjjkh6i2zlc21axn5y1jjzigrw047ii"; depends=[Rcpp]; };
   fpest = derive2 { name="fpest"; version="0.1.1"; sha256="013r8295spm02j558aqvnrnbkg2g73gl5vi4lqzngbw8yr8qlkri"; depends=[]; };
@@ -9597,12 +9625,12 @@ in with self; {
   frbs = derive2 { name="frbs"; version="3.2-0"; sha256="0biv6j31qi0f4i063ygmbp6v6ws1nxijn5kyhg5sz1rnbr0msl28"; depends=[]; };
   frechet = derive2 { name="frechet"; version="0.2.0"; sha256="1006mgy9avwkwy0666maac59xp4j27wq5yy3pwc3h1r05myxw379"; depends=[corrplot fdadensity fdapace Matrix osqp pracma]; };
   fredr = derive2 { name="fredr"; version="2.1.0"; sha256="0073qh0drf1p38hc84m54n35hyza90m8zn48ihx3alxkiq1m8ijp"; depends=[httr jsonlite rlang tibble]; };
-  free = derive2 { name="free"; version="1.0"; sha256="1cy9v4cfksnnzi4fx89kai3zdb8lpwawi04x4y58wh7322bb0w0j"; depends=[Rcpp RcppArmadillo]; };
+  free = derive2 { name="free"; version="1.0.1"; sha256="0r9vd1d4pi19mnvdchx95axp0hiqs8lpgp0fn40dm89h5fd6zyb0"; depends=[Rcpp RcppArmadillo]; };
   freealg = derive2 { name="freealg"; version="1.0-4"; sha256="0bv31pydjhqhfin4ydd49aqzsxn0zhhismm0l4ijabrrvkw3n1hc"; depends=[disordR mathjaxr partitions Rcpp]; };
   freedom = derive2 { name="freedom"; version="1.0.1"; sha256="1mrdl2cqdm2c68lx7lyixgiqw6xzwnx9c8j5q4annhiz107i9i22"; depends=[]; };
   freegroup = derive2 { name="freegroup"; version="1.1-3"; sha256="11v0ph0mhk8g9zwapcp2wgr1sbdwdqh7nhbrci87myapypdncqjc"; depends=[magic magrittr plyr]; };
   freesurfer = derive2 { name="freesurfer"; version="1.6.8"; sha256="0ks6ms5vp38pykcg66w960nmfgq383iprrbbzw5dlx9xnrx4yhbh"; depends=[neurobase R_utils reshape2]; };
-  freesurferformats = derive2 { name="freesurferformats"; version="0.1.16"; sha256="0aax9dimig3cn8mqnl8xdj9khs7fga08fx7vw9qkwrv4bnls8zvz"; depends=[pkgfilecache rmarkdown xml2]; };
+  freesurferformats = derive2 { name="freesurferformats"; version="0.1.17"; sha256="125vmx9gw9czlp86c2byv1fdslzhjn8q0plgqnk065sjhbla46cn"; depends=[pkgfilecache rmarkdown xml2]; };
   frenchCurve = derive2 { name="frenchCurve"; version="0.1.0"; sha256="1b8lkmhydz4jq8h5p117fwaygbsillzcfx0p7w0ljj8b8v57r6l9"; depends=[sp]; };
   frenchdata = derive2 { name="frenchdata"; version="0.2.0"; sha256="13n0phncbxim9ak897hmjw1p7ph5wi3jn2m8hgmm3bywxbxcg1qz"; depends=[assertthat cli dplyr fs httr magrittr purrr readr rlang rvest stringr tibble tidyr]; };
   freqdist = derive2 { name="freqdist"; version="0.1"; sha256="1pb45jabv9s3qa7v1isd5wm9b0g9p04q5h18spcaax8397s0d2fv"; depends=[]; };
@@ -9617,8 +9645,9 @@ in with self; {
   frequentdirections = derive2 { name="frequentdirections"; version="0.1.0"; sha256="0rmifh221c8z3cqyqg0bfxnih9f64hvv98jz44i6grnlablfwwgw"; depends=[ggplot2]; };
   frequentistSSD = derive2 { name="frequentistSSD"; version="0.1.0"; sha256="0r2vy8n6d8c2vdijd0cyg9vv4m0w0a6m2piblky48c1wm2qznfd2"; depends=[survival]; };
   fresh = derive2 { name="fresh"; version="0.2.0"; sha256="1787mm6w2s5x9scxy7r9cb77rgpmy4ngwkn4z8g3gs48mrab4bd9"; depends=[htmltools rstudioapi sass shiny]; };
+  frictionless = derive2 { name="frictionless"; version="1.0.0"; sha256="17an6wxwb9qcj42rsm3311jx1f2d91fpq0d0831xswngc548bmp5"; depends=[assertthat dplyr glue httr jsonlite purrr readr yaml]; };
   friends = derive2 { name="friends"; version="0.1.0"; sha256="164p9g07vq3xs2lgg250yvzca4b0mp81pqbnjfdkzcqh5hmahsan"; depends=[tibble]; };
-  fritools = derive2 { name="fritools"; version="3.1.0"; sha256="0yfhz73v7zp6zrq8pyl57j8nmdaqx1giwyssx5l73p0jqjc6d528"; depends=[]; };
+  fritools = derive2 { name="fritools"; version="3.2.0"; sha256="1kjzc97ivz95rvhs0jzfvyfvznkcgklc7f9xplbim3yfl07w2hsc"; depends=[]; };
   frm = derive2 { name="frm"; version="1.2.2"; sha256="1dl0vca9r2dams99sc13pfpi0b3yb02x59f4c1jz07zz005c8l23"; depends=[]; };
   frmhet = derive2 { name="frmhet"; version="1.1.3"; sha256="07sgsfhzrci8g1b0gicjfca1mgd8ppfqpkpp4q9bdxnjvdvlf45s"; depends=[]; };
   frmpd = derive2 { name="frmpd"; version="1.1.0"; sha256="0irgqdr0vr8k408lsxcrjkjbjvqvmy5mnjw9c1ghs86isrp5mciz"; depends=[]; };
@@ -9631,22 +9660,21 @@ in with self; {
   frscore = derive2 { name="frscore"; version="0.1.1"; sha256="0x5hyjh3n28yanpgx4yb2afjlwknaa4dd5fsy857hbdm0wf2jz9v"; depends=[cna dplyr magrittr Rfast rlang]; };
   fruclimadapt = derive2 { name="fruclimadapt"; version="0.4.4"; sha256="19siwjjcjh0kh2wpbabgzjwrfgg2al0g7d4z91wdcp3spwx308vk"; depends=[data_table lubridate tidyverse zoo]; };
   fs = derive2 { name="fs"; version="1.5.2"; sha256="11qr3v0xn65vfhgcxl4l6yv48s4w0w3ldp3anpzc25vd3mwd3jim"; depends=[]; };
-  fsMTS = derive2 { name="fsMTS"; version="0.1.5"; sha256="1vxj9wkzpbk44hby4fdyhj72748c65by612kpphs6vmgzmw4y471"; depends=[freqdom glasso lars mpmi randomForestSRC]; };
-  fsbrain = derive2 { name="fsbrain"; version="0.5.2"; sha256="1vqj8x6wsaz89dl58nqhmz9vla0vjzdn8gzppkfggb44i2q1xm55"; depends=[data_table fields freesurferformats magick pkgfilecache reshape rgl squash viridis]; };
+  fsbrain = derive2 { name="fsbrain"; version="0.5.3"; sha256="10xfc6b9wwadafqr8ndz9rkbi94ql4kywpb085b5k5yncmfcbq5m"; depends=[data_table fields freesurferformats magick pkgfilecache reshape rgl squash viridis]; };
   fscaret = derive2 { name="fscaret"; version="0.9.4.4"; sha256="18fhyfl3f8syyc3g937qx87dmwbv7dray6b97p1s6lnssiv61gsw"; depends=[caret gsubfn hmeasure]; };
   fsdaR = derive2 { name="fsdaR"; version="0.6-5"; sha256="0j6nvlp527b4g36jg6mcq8w2mc8p795q68d11yi41fvlcw7v6vym"; depends=[ggplot2 rJava rrcov]; };
   fsia = derive2 { name="fsia"; version="1.1.1"; sha256="0id7cnswrqylgpwjil1zfn89ryrdpl20fim8x1srl8s1hm5bg35r"; depends=[]; };
   fslr = derive2 { name="fslr"; version="2.24.1"; sha256="1psjqvjv8krlkj7dcfwygz563a4cpn7h21z330hxh5q10rwhabi8"; depends=[neurobase oro_nifti R_utils]; };
-  fsn = derive2 { name="fsn"; version="0.1"; sha256="1a5vsrk9l19rh46kxrfmgcv07l0pr4zn1q2f0chivq43pwmfm194"; depends=[Rfast]; };
+  fsn = derive2 { name="fsn"; version="0.2"; sha256="12n1v8nhfn5pjjsrp41wk848yw797wxa9anx9dm8rd278smrk01f"; depends=[Rfast]; };
   fso = derive2 { name="fso"; version="2.1-1"; sha256="0hn2ypm0nwfbmnh9il78pi30x7gfmayfangqyh0d63ngyz40bvma"; depends=[labdsv]; };
   fspe = derive2 { name="fspe"; version="0.1.0"; sha256="0cdl6749nqz2nmknn8mjxxxm8axix9iv2micviwg7fhynqhsffp1"; depends=[corpcor GPArotation psych]; };
   fsr = derive2 { name="fsr"; version="1.0.1"; sha256="1h0ljb28nffjjjry93lsvw2i109g0mmjgdd335y7r3zgz1s34x2d"; depends=[dplyr e1071 FuzzyR ggplot2 lwgeom pso rlang sf stringr tibble]; };
-  fst = derive2 { name="fst"; version="0.9.6"; sha256="08vbjr5fjrirmpl4ynmibgy6ph3fahfc7d213cwbzvhq2pdp3yqh"; depends=[Rcpp]; };
+  fssemR = derive2 { name="fssemR"; version="0.1.8"; sha256="1rja69b6x5vc302nksh5m6ssp2lx8drv9gjnkv6j9xr3hd2407xi"; depends=[glmnet igraph MASS Matrix mvtnorm qpdf qtl Rcpp RcppEigen stringr]; };
+  fst = derive2 { name="fst"; version="0.9.8"; sha256="0r96inwrr960m7wmc80603bw2vvvwab225bh9dq3lalwhy4yiis4"; depends=[fstcore Rcpp]; };
   fstcore = derive2 { name="fstcore"; version="0.9.8"; sha256="1qicjwsm87wgjm5mxrsgi697fmcfz6wyqcxfgngwxrf8kq4awjsf"; depends=[Rcpp]; };
   fsthet = derive2 { name="fsthet"; version="1.0.1"; sha256="0z6az1jcvdahgn97r6cpj1s6fn0lvr7j12gcw2r7wbpajrvyl5j6"; depends=[]; };
   ftDK = derive2 { name="ftDK"; version="1.0"; sha256="1xs2rr2afjza97kpym5zkas3k78pilxjlh7lp1gc66banldr71g2"; depends=[dplyr httr pbapply purrr tibble]; };
   ftExtra = derive2 { name="ftExtra"; version="0.3.0"; sha256="1aal3cwdp9gnc0gnigk7789rak3s6i5jav01d9z25gm977683b76"; depends=[dplyr flextable jsonlite magrittr purrr rlang rmarkdown stringr tibble tidyr tidyselect vctrs xfun yaml]; };
-  ftnonpar = derive2 { name="ftnonpar"; version="0.1-88"; sha256="0df9zxwjpfc939ccnm1iipwhpf76b34v0x74nsi1mm1g927dfl0i"; depends=[]; };
   ftrCOOL = derive2 { name="ftrCOOL"; version="2.0.0"; sha256="0jy0dhkf7hlrriz32abp0h52fw92i5k8x25bjqlzd0khyv2vhj0i"; depends=[]; };
   fts = derive2 { name="fts"; version="0.9.9.2"; sha256="08pwhi19db173d4nsk5rl8xa8qmaddj4bn3cjxb8ql4kny59i57q"; depends=[BH zoo]; };
   ftsa = derive2 { name="ftsa"; version="6.1"; sha256="0j8jr0sbvxfzqfy8va7axljp660jkpqwg9djbis9ikf4x9n9f7n9"; depends=[boot colorspace e1071 ecp evgam fda fdapace fGarch forecast glue KernSmooth LaplacesDemon MASS pcaPP pdfCluster psych rainbow ROOPSD sde strucchange vars]; };
@@ -9669,9 +9697,9 @@ in with self; {
   funchir = derive2 { name="funchir"; version="0.2.0"; sha256="1rj5khv1xcaaip5xh8kcsp2jgmbmnc9q5kwr46l4mxvxyndndi1k"; depends=[data_table]; };
   functClust = derive2 { name="functClust"; version="0.1.6"; sha256="0mdfxvrx3wk497a9bbkwnzbm6hm2s4wqs3h09m3hj48ybpqmhz9i"; depends=[clusterCrit multcompView]; };
   functional = derive2 { name="functional"; version="0.6"; sha256="120qq9apg6bf39n9vnp68db5rdhwvnj2vi12a8j8243vq8kqxdqr"; depends=[]; };
-  functiondepends = derive2 { name="functiondepends"; version="0.2.1"; sha256="0i6ppm5xz1m3m29lvz4nqm31k33w18j8af160lalgc01i1n4n11c"; depends=[dplyr magrittr purrr stringr tibble tidyr tidyselect]; };
+  functiondepends = derive2 { name="functiondepends"; version="0.2.3"; sha256="0p831i8l81dbrncmr69024gm5g14p0xiv7li0ljdlqnrbc0fj64n"; depends=[dplyr magrittr purrr stringr tibble tidyr tidyselect]; };
   fundiversity = derive2 { name="fundiversity"; version="0.2.1"; sha256="11gz1h7mlb0880w3cv5sb4h6qpfs6az3vfhd3527s6sw43n87l29"; depends=[future_apply geometry Matrix vegan]; };
-  fungible = derive2 { name="fungible"; version="1.99"; sha256="1hjngz3jbrcx0ri7054rbhcnhb3d1yf7mlb9m1ivdmpih8f5c3vj"; depends=[clue GPArotation lattice MASS mvtnorm nleqslv Rcsdp RSpectra]; };
+  fungible = derive2 { name="fungible"; version="2.0"; sha256="1xwmw6d3lzq4b2n8amhllciq28x85wrcmd7mpxml3zn9las19wrx"; depends=[clue GPArotation lattice MASS mvtnorm nleqslv Rcsdp RSpectra]; };
   funique = derive2 { name="funique"; version="0.0.1"; sha256="0p9k4nxjns1xid9vmslkaap0hm6yq6pbyvylgygd808if4q1z8k6"; depends=[]; };
   funmediation = derive2 { name="funmediation"; version="1.0.1"; sha256="1h4jic73f7ywk2g1mkg188q0bq6x8sn9sm7jhr8gvrnmh167ajw7"; depends=[boot refund tvem]; };
   funnelR = derive2 { name="funnelR"; version="0.1.0"; sha256="143lb048krgh8rkkz6sm8h464kdy62w29fvvyar795vqi10bb5fy"; depends=[ggplot2]; };
@@ -9680,7 +9708,7 @@ in with self; {
   funr = derive2 { name="funr"; version="0.3.2"; sha256="11mjd1ba9kwawh7k5py54mkq4g1df79d7qivan8fj11qfwfzm679"; depends=[]; };
   funrar = derive2 { name="funrar"; version="1.4.1"; sha256="0xqccch59f8cz4a7ybjdr6k625bir5nsjrp4iyfirrb877d17m5z"; depends=[cluster]; };
   funreg = derive2 { name="funreg"; version="1.2.2"; sha256="0dagzz5pl16l2jkkj11z41y68s75jxmyl46csda6vzlgjc7n4ji8"; depends=[MASS mgcv mvtnorm]; };
-  funtimes = derive2 { name="funtimes"; version="8.1"; sha256="08vz05db6krrcppk0fd05n366isrqrmgwbp6y6c0n9rzbgav511k"; depends=[dbscan FNN igraph Jmisc Kendall Rdpack TDA]; };
+  funtimes = derive2 { name="funtimes"; version="8.2"; sha256="15fhqjagarzfd1zicl684rlcy0rcifpl4wl1fs645nr8lq4y9ygg"; depends=[dbscan FNN igraph Jmisc Kendall Rdpack]; };
   furniture = derive2 { name="furniture"; version="1.9.10"; sha256="02dqs0b0vpn2chqhjylanq9xdrj2hw7ynd6xv94gkfk8syz3dqda"; depends=[dplyr knitr]; };
   furrr = derive2 { name="furrr"; version="0.2.3"; sha256="001p2yhznrpnrjvdcmf2h3wpgdnw01wnqgid7wbq8bhavhi3888a"; depends=[ellipsis future globals lifecycle purrr rlang vctrs]; };
   fusen = derive2 { name="fusen"; version="0.3.0"; sha256="11rsk5yzdzdak24knpxp38p83j0qhbhqc5skfvpmdwncyzf6fv5r"; depends=[attachment cli desc devtools glue here magrittr parsermd roxygen2 stringr tibble tidyr usethis]; };
@@ -9691,19 +9719,18 @@ in with self; {
   futile_options = derive2 { name="futile.options"; version="1.0.1"; sha256="0w15agpi88y3qkv6fl72zy2pzyplzgvnj41a4ixhg64mw1sck73s"; depends=[]; };
   futile_paradigm = derive2 { name="futile.paradigm"; version="2.0.4"; sha256="14xsp1mgwhsawwmswqq81bv6jfz2z6ilr6pmnkx8cblyrl2nwh0v"; depends=[futile_options RUnit]; };
   futility = derive2 { name="futility"; version="0.4"; sha256="0zjb87brz7pkx3nq3q30y69cmcxpqqsra447p60qh7005kgr9vx4"; depends=[]; };
-  future = derive2 { name="future"; version="1.23.0"; sha256="1y5qzpsg0r2dccynyybbb2ngxbl1y3phs1dq2jj3f2bwhc7chsfq"; depends=[digest globals listenv parallelly]; };
+  future = derive2 { name="future"; version="1.24.0"; sha256="0xmj17fq9paww796490bmakv6pcvrzk15i8mzhxk1mp9l0mj32vv"; depends=[digest globals listenv parallelly]; };
   future_apply = derive2 { name="future.apply"; version="1.8.1"; sha256="1ix61bfbk43pwnjb0wk8lkfgdsy5zi8svk74gar5nrl90b5w6nqd"; depends=[future globals]; };
   future_batchtools = derive2 { name="future.batchtools"; version="0.10.0"; sha256="1ly98h2g7wpfxp2r8vl1hy7wqqgwgawjagz0m2iczjmcj4ix6avk"; depends=[batchtools future]; };
   future_callr = derive2 { name="future.callr"; version="0.7.0"; sha256="0y5x2xz29j7aidk3c1iby3dk23gpxmgzp4f5z5bdgd1w0n4jslg4"; depends=[callr future]; };
   future_tests = derive2 { name="future.tests"; version="0.3.0"; sha256="1ssr0sd9h10151m5iaad17zqii7d18nnszq2svj0i8izk83xhrik"; depends=[cli crayon future prettyunits sessioninfo]; };
   futureheatwaves = derive2 { name="futureheatwaves"; version="1.0.3"; sha256="122b2z86bzxfch67y6cpq8wj62mw0dgkzbmnpwi247kdx7w5mw1f"; depends=[data_table dplyr ggplot2 ggthemes leaflet Rcpp stringr tidyr]; };
   fuzzr = derive2 { name="fuzzr"; version="0.2.2"; sha256="1cwq7a5j6lzrlz9dw3hsfap988rh1kkgf03yni7c33zl69xp5w77"; depends=[assertthat progress purrr]; };
-  fuzzyFDR = derive2 { name="fuzzyFDR"; version="1.0"; sha256="0zd8i9did0d9gp42xjmwrccm32glabvvy08kl8phhwb1yaq53h7w"; depends=[]; };
   fuzzyRankTests = derive2 { name="fuzzyRankTests"; version="0.4"; sha256="04841fh4nf7qriqk0b2ny943bji60bj42j8czg056d2dza4q4039"; depends=[]; };
   fuzzySim = derive2 { name="fuzzySim"; version="3.7"; sha256="0m37fgqiy025db5ciz8lb2a8132iprn6fssy1bpingw3nb88r3vp"; depends=[modEvA]; };
   fuzzyforest = derive2 { name="fuzzyforest"; version="1.0.8"; sha256="0sb7qia01a5h6p12riq6vdq9likmqb6i949axsxszy5sf1zk50v5"; depends=[doParallel foreach ggplot2 mvtnorm randomForest]; };
   fuzzyjoin = derive2 { name="fuzzyjoin"; version="0.1.6"; sha256="0s5rhqz8vih4za3a8k1k7i3gq8hj0w7bqnakw40k6mg87jvyzsj7"; depends=[dplyr geosphere purrr stringdist stringr tibble tidyr]; };
-  fuzzyreg = derive2 { name="fuzzyreg"; version="0.5.2"; sha256="1ppgyavkq8nys6fs9is7x08kclaa9g4h04a55bdkk6jjm36if914"; depends=[limSolve quadprog]; };
+  fuzzyreg = derive2 { name="fuzzyreg"; version="0.6"; sha256="1v100flbnw3mjmakgswj0zfla2rm0s0vpg8w8v7j1lr9sfjz4s7c"; depends=[limSolve quadprog]; };
   fuzzywuzzyR = derive2 { name="fuzzywuzzyR"; version="1.0.5"; sha256="1g73xivxyh5fvppccgnxhgar6jsl6zsr2djkg0bhh10i633l56ia"; depends=[R6 reticulate]; };
   fwi_fbp = derive2 { name="fwi.fbp"; version="1.7"; sha256="1wk9cr0kk6zkbf111bv87n7b1wwx1qrsbjxydvbjvy8bgz0nfa62"; depends=[]; };
   fwildclusterboot = derive2 { name="fwildclusterboot"; version="0.7"; sha256="1rhaisq2x9skhlils9iry7x8xzsi59pp6i9whg6jrjphgz96976f"; depends=[collapse dqrng dreamerr Formula generics gtools Matrix Matrix_utils Rcpp RcppEigen]; };
@@ -9735,7 +9762,7 @@ in with self; {
   gTests = derive2 { name="gTests"; version="0.2"; sha256="1h1sd8mrzcniq7rx7frdlxwpnsn8lifng1x99fqq703hs3znl1yq"; depends=[ade4]; };
   gWQS = derive2 { name="gWQS"; version="3.0.4"; sha256="1yhbcmznii3n2sbw0z2rw1sdn0zlk5v2z7ww3nl7rn005g4q04hi"; depends=[broom cowplot dplyr future future_apply ggplot2 ggrepel kableExtra knitr MASS Matrix nnet plotROC pscl reshape2 rlist]; };
   gWidgets2 = derive2 { name="gWidgets2"; version="1.0-9"; sha256="1ifljpdazzmwf3mgkg9g76365n2cmw8dd3da161fpvw84xxyznfl"; depends=[digest]; };
-  gWidgets2tcltk = derive2 { name="gWidgets2tcltk"; version="1.0-7"; sha256="0w7l3zrmi5y3vxgccgx26r4296wb2kqylv68qnqqpdypd0413374"; depends=[digest gWidgets2 memoise]; };
+  gWidgets2tcltk = derive2 { name="gWidgets2tcltk"; version="1.0-8"; sha256="02ic4avpa33dnqsnm1mzg7ci1psngk1p169pqf259szf6v39qf8h"; depends=[digest gWidgets2 memoise]; };
   gadget2 = derive2 { name="gadget2"; version="2.3.7"; sha256="1p7jpwy65gdl6kli1h2m9yi5p5ah1vm23xs03sm9l42fcbn7ffdw"; depends=[]; };
   gafit = derive2 { name="gafit"; version="0.5.1"; sha256="160z3cv22prf7118447dla9g1gimwkfad8zdil3fg8n4l22rk51a"; depends=[]; };
   gaiah = derive2 { name="gaiah"; version="0.0.4"; sha256="1ibsbmmpagr7ix1c3bszrglqx95w44qyfy80vcq3w2dprs8vrrw6"; depends=[dplyr geosphere magrittr maptools raster rlang sp]; };
@@ -9764,8 +9791,9 @@ in with self; {
   gamlss_countKinf = derive2 { name="gamlss.countKinf"; version="3.5.1"; sha256="1xalp909gxxhyhh4chlr1ssyfhydhw1w3szzbynajji98576zaqv"; depends=[gamlss gamlss_dist]; };
   gamlss_data = derive2 { name="gamlss.data"; version="6.0-2"; sha256="07mpdl4h9rwmnpl9jmsn6ig8ji11an6pyjfsvg62h2alapwbdcyv"; depends=[]; };
   gamlss_demo = derive2 { name="gamlss.demo"; version="4.3-3"; sha256="01p6abppwbnh2a2ks1g08z4iwq2fxf125y9s4qzssybsn76a3gf3"; depends=[gamlss_dist gamlss_tr rpanel]; };
-  gamlss_dist = derive2 { name="gamlss.dist"; version="6.0-1"; sha256="0m41n7zf7m0mh1w9ql70wqnzsf2f013ql699im7zmp6fdggb8qxm"; depends=[MASS]; };
+  gamlss_dist = derive2 { name="gamlss.dist"; version="6.0-3"; sha256="1gqjr419v8z2ygh0h1xz7bipnsbp820njzwq7z3r9f41rn1ym47c"; depends=[MASS]; };
   gamlss_foreach = derive2 { name="gamlss.foreach"; version="1.1-3"; sha256="0q9r92q21miisarbgvjdlqy6mp4b76ns49fw09zx8xypg74m2kl9"; depends=[doParallel foreach gamlss gamlss_data gamlss_dist glmnet]; };
+  gamlss_ggplots = derive2 { name="gamlss.ggplots"; version="1.0-0"; sha256="0z19jvgan08jijijcx5aswq2c4c5pbdyhhgb9idvhv7bir5qim06"; depends=[ellipse gamlss gamlss_dist gamlss_foreach ggplot2 ggridges]; };
   gamlss_inf = derive2 { name="gamlss.inf"; version="1.0-1"; sha256="0m091zxjm5wvhm6mzbpzkr275n3qnlb3v4099k0a1jymahk4w7vr"; depends=[gamlss gamlss_dist]; };
   gamlss_lasso = derive2 { name="gamlss.lasso"; version="1.0-1"; sha256="03c8k6hl23ag98dihznfz1h0qc3pwxbnpv58pvmx3xbb3lipfjfb"; depends=[gamlss glmnet lars Matrix]; };
   gamlss_mx = derive2 { name="gamlss.mx"; version="6.0-0"; sha256="0b06nb6nq36ay0p5z57j5d4hrly5917wcsal7986mp1270iwnpip"; depends=[gamlss gamlss_dist nnet]; };
@@ -9779,8 +9807,8 @@ in with self; {
   gamma = derive2 { name="gamma"; version="1.0.1"; sha256="1m2wxqprfxb51fih5f9l4s0lk42gyglbgvhfxc0cm9n7pn3dhprl"; depends=[ggplot2 IsoplotR rlang rxylib]; };
   gamreg = derive2 { name="gamreg"; version="0.3"; sha256="1svrgbb8qdy2hzpq1g38v2lzmlbrn7qljix827biqzwgiajy69gg"; depends=[doParallel foreach glmnet Rcpp RcppArmadillo robustHD]; };
   gamsel = derive2 { name="gamsel"; version="1.8-2"; sha256="1w1z2g0njsfv1ah6w3zw4lcgnaxask5mgykb204jzp6hpnc1a6cb"; depends=[foreach mda]; };
-  gamselBayes = derive2 { name="gamselBayes"; version="1.0-1"; sha256="02rnamzfsmkk7hqm334jydybn9yv35f6iz406yk6xwfjz6wxhgh1"; depends=[Rcpp RcppArmadillo]; };
-  ganGenerativeData = derive2 { name="ganGenerativeData"; version="1.2.0"; sha256="1ha7sf69ys8gz3fv1k3h32qr6cfjvrirkx0rcyq7pscxychwslca"; depends=[Rcpp tensorflow]; };
+  gamselBayes = derive2 { name="gamselBayes"; version="1.0-2"; sha256="1dqxc7g529lkdk2lvn3ls4gxij7djs5xycrzlw49wf79pns2s5cc"; depends=[Rcpp RcppArmadillo]; };
+  ganGenerativeData = derive2 { name="ganGenerativeData"; version="1.3.3"; sha256="07hdvch67c4liqb9f01j3aflivgpzgxdsg16zvvhwbyzch94xmv2"; depends=[Rcpp tensorflow]; };
   ganalytics = derive2 { name="ganalytics"; version="0.10.7"; sha256="03jf7325cgg5p6lzcrzzzx0b40vf3l5vhw95lih098kpmlr1zadf"; depends=[assertthat googleAnalyticsR httpuv httr jsonlite lazyeval lubridate plyr R6 rvest scales selectr stringr tibble XML xml2]; };
   gap = derive2 { name="gap"; version="1.2.3-1"; sha256="1rw93dnv3id64al46iybyznnvprv871qa4lnwdx18x8ym66fafil"; depends=[]; };
   gap_datasets = derive2 { name="gap.datasets"; version="0.0.4"; sha256="1zlxm3nh1b1mqb94fq2b7sc7v99m9ywz7bz9lz5bhwblk5fzmjii"; depends=[]; };
@@ -9792,9 +9820,9 @@ in with self; {
   garchx = derive2 { name="garchx"; version="1.3"; sha256="0fpanzl6nfq6dar5chmqqfndb3w01mcypkhj0ya6v3d77m02b5mf"; depends=[zoo]; };
   gargle = derive2 { name="gargle"; version="1.2.0"; sha256="0fypj70c1fjmvs57birik76wfx8a2fs4gzicbb52k57i6clwlijd"; depends=[cli fs glue httr jsonlite rappdirs rlang rstudioapi withr]; };
   gargoyle = derive2 { name="gargoyle"; version="0.0.1"; sha256="0lsjplfrc047lb3zjfsc8wl47kll7d85v824k7zlr0n34xbbypq7"; depends=[attempt shiny]; };
-  garma = derive2 { name="garma"; version="0.9.10"; sha256="1a6j1ym4rn4bvnh6b17gczg9x7f8gvmjw094694smkw0js5v7ig8"; depends=[BB crayon dfoptim FKF forecast GA ggplot2 lubridate nloptr pracma pso Rsolnp signal tswge zoo]; };
+  garma = derive2 { name="garma"; version="0.9.11"; sha256="05jhac1cm82xjpz1dnwp7xcs58b3lxbzh4wmr4z7hkn5jdh3gsv5"; depends=[BB crayon dfoptim FKF forecast GA ggplot2 lubridate nloptr pracma pso Rsolnp signal tswge zoo]; };
   garray = derive2 { name="garray"; version="1.1.2"; sha256="0s2dgi556x9jnhafvzz4qkxdbq9dm12gsvsqd2g9iy3468fx9flq"; depends=[]; };
-  gaselect = derive2 { name="gaselect"; version="1.0.9"; sha256="089gyllcmq5rgf5yffclifc7rc8rmq4wk1dhznigxkij4zap67hx"; depends=[Rcpp RcppArmadillo]; };
+  gaselect = derive2 { name="gaselect"; version="1.0.10"; sha256="14gz6429hap8gj7is0p9qigdzn1zzyqh1dykrpk4wvhqbid8ir73"; depends=[Rcpp RcppArmadillo]; };
   gasfluxes = derive2 { name="gasfluxes"; version="0.4-4"; sha256="0gi0zk0h5rw75n6znada0cwa9qzy8higsiiqwgdm3q827j1x8iva"; depends=[AICcmodavg data_table MASS sfsmisc]; };
   gasper = derive2 { name="gasper"; version="1.1.1"; sha256="10kl5d8lm2jvqrfk0qliyb3afmk9bhjm5zvs4g31zpa3icbz9r2p"; depends=[ggplot2 Matrix Rcpp RcppArmadillo RSpectra]; };
   gastempt = derive2 { name="gastempt"; version="0.5.4"; sha256="02b35y0sq0piq5p8k5fviymqyqx1c2k793pm7j79xymmpzf8f52r"; depends=[assertthat BH dplyr ggplot2 nlme Rcpp RcppEigen RcppParallel rstan shiny StanHeaders stringr tibble utf8]; };
@@ -9803,7 +9831,7 @@ in with self; {
   gatepoints = derive2 { name="gatepoints"; version="0.1.4"; sha256="0gwyrkxn4xd79cl60xa312k6nz17mdjdiym65dq7s2384fa80wbm"; depends=[]; };
   gauseR = derive2 { name="gauseR"; version="1.1"; sha256="0jlbaylglyza6hlf62g3z0n349zlzlhx6g4jwdzg8b2sh4c3c9yn"; depends=[deSolve]; };
   gaussDiff = derive2 { name="gaussDiff"; version="1.1"; sha256="0fqjdxp2ibbami75ba16d02dz4rz5sk8mni45di9anydx44g9d45"; depends=[]; };
-  gausscov = derive2 { name="gausscov"; version="0.1.4"; sha256="0y46whvzlsck6nlbxjsdv8fj94g622pqqczgzbc7nxj2ylpgbrj9"; depends=[]; };
+  gausscov = derive2 { name="gausscov"; version="0.1.5"; sha256="0628bwazanqp8zkci93nyaa7hqwdwwlbcq4mwmkgf6xkbqmi00z8"; depends=[]; };
   gaussfacts = derive2 { name="gaussfacts"; version="0.0.2"; sha256="095x7k7m7sy1gqkbm6wiqn26252dclz62sbnkv6cjvmbdxajl7m9"; depends=[]; };
   gaussplotR = derive2 { name="gaussplotR"; version="0.2.5"; sha256="0amkgzgh6764ri30210nhbi3wcll3248fmkpclx010dxc3hllfdx"; depends=[ggplot2 metR rgl viridisLite]; };
   gaussquad = derive2 { name="gaussquad"; version="1.0-2"; sha256="0bcvkssmwwngcd4cnv924n9h3c8z1w3x9c9bkwn5jbz9zyv1lfms"; depends=[orthopolynom polynom]; };
@@ -9816,7 +9844,7 @@ in with self; {
   gbm = derive2 { name="gbm"; version="2.1.8"; sha256="1h9f4ww9yc3nsvghgr2q7jjrlz29ibabxjbax1sk5wmqh2wy6pbx"; depends=[lattice survival]; };
   gbm_auto = derive2 { name="gbm.auto"; version="1.5.0"; sha256="03fn5kr7pl1wzmmw6k86v2yv0a3l6pwyggvvdxsqnamd29jm5h54"; depends=[beepr dismo gbm mapplots maptools raster rgdal rgeos sf shapefiles]; };
   gbm2sas = derive2 { name="gbm2sas"; version="2.1"; sha256="0ssjlv849vssmncn01ccpp2myqib5f3g88g0d4rqma2z0ivdpk23"; depends=[gbm]; };
-  gbmt = derive2 { name="gbmt"; version="0.1.2"; sha256="1jk04wjykxb89b9m7ppyl6hp4z00f4vbmsrhisvzz184bwghigdf"; depends=[Matrix]; };
+  gbmt = derive2 { name="gbmt"; version="0.1.3"; sha256="10dyghrxjd9ddgk7gp2af8a46skzb2m9vazr9s216r20257ijd13"; depends=[Matrix]; };
   gbp = derive2 { name="gbp"; version="0.1.0.4"; sha256="0awg724gsfwlb0fjcvw0450qdsk4m8x8is16pj5c8fx6nc8rn8bv"; depends=[data_table magrittr Rcpp RcppArmadillo rgl]; };
   gbs2ploidy = derive2 { name="gbs2ploidy"; version="1.0"; sha256="0gdjfqs9ccyaw7vi22wbyc742n1badr5ypr08g6rvi8ka5lmx836"; depends=[MASS rjags]; };
   gbts = derive2 { name="gbts"; version="1.2.0"; sha256="1v8x4dnja8va28rjznyqa6js9wazndijasb95lfj2qwhxhgf5h65"; depends=[doParallel doRNG earth foreach gbm]; };
@@ -9834,7 +9862,7 @@ in with self; {
   gcookbook = derive2 { name="gcookbook"; version="2.0"; sha256="11g1q187l4j31b6cdzdx5z3s14z3s09l7ynl36pzzn9j19l8cmrc"; depends=[]; };
   gdalUtilities = derive2 { name="gdalUtilities"; version="1.2.0"; sha256="0nxnw9azlml13a6rqhxjrwq8v7fb2pjcb07dp5r2p5bzyzvldm7a"; depends=[sf]; };
   gdalUtils = derive2 { name="gdalUtils"; version="2.0.3.2"; sha256="0krapdy50nd5dvcdflz39dzxpig3zklng3hgxavqg2nvwazalvsc"; depends=[foreach R_utils raster rgdal sp]; };
-  gdalcubes = derive2 { name="gdalcubes"; version="0.5.1"; sha256="15d17if1513pylqbnv2yqy3i9p6m7x8frw5kjqx1jil9xck55iil"; depends=[jsonlite ncdf4 Rcpp RcppProgress]; };
+  gdalcubes = derive2 { name="gdalcubes"; version="0.6.0"; sha256="05hgnplbps3kk7p19mf7j0a3dlf7061yxi2sq9p9ydaywav0z4ji"; depends=[jsonlite ncdf4 Rcpp]; };
   gdata = derive2 { name="gdata"; version="2.18.0"; sha256="0zwdj7lscgxr8r62ii8hbdh4mb7sa9w4f5nv32zzrxdvymcpya2b"; depends=[gtools]; };
   gde = derive2 { name="gde"; version="0.2.0"; sha256="1xrncdmidzz9dv51bnbcrdh92im0lr97xi4rgb30p5sfxc4axml9"; depends=[data_table dplyr DT ggplot2 httr jsonlite leaflet progress R_utils readr RSQLite shiny shinycssloaders shinyWidgets stringr XML]; };
   gdiff = derive2 { name="gdiff"; version="0.2-2"; sha256="0hg9mf3qyg19wwpiv3lz2z1000jw73s2pwb8y8hjgpv69wwsskfi"; depends=[magick pdftools]; };
@@ -9843,11 +9871,11 @@ in with self; {
   gdns = derive2 { name="gdns"; version="0.5.0"; sha256="1bicimkxsyfg9yqaikapwlv8x9xdvsb00fqnfka07i6b63109sxh"; depends=[httr jsonlite magrittr stringi tinytest]; };
   gdpc = derive2 { name="gdpc"; version="1.1.2"; sha256="0g1mnxm78n928g7qjf0w7jzfm27z6mvz5p1rm25mxv7wsif5m6s6"; depends=[doParallel foreach Rcpp RcppArmadillo xts zoo]; };
   gds = derive2 { name="gds"; version="0.1.1"; sha256="0gwq0k80rnbg4ibz6dz8sk6hqaklrdbv4vzv8zyk74am3aqipn20"; depends=[]; };
-  gdtools = derive2 { name="gdtools"; version="0.2.3"; sha256="1p3ip0qwpg8f63jfx0b8vbac6l20ddid8xvxzkfi6i858pybnawp"; depends=[Rcpp systemfonts]; };
+  gdtools = derive2 { name="gdtools"; version="0.2.4"; sha256="0a1hqg5b484ji4g9dy0zi06wn9w7pk6hiy5ljzc1zgj9mbhlr21j"; depends=[Rcpp systemfonts]; };
   gdxdt = derive2 { name="gdxdt"; version="0.1.0"; sha256="1yrjixq4srmaiy5iaprix4096yhf3ldyklgjag4kxd3l5acwap4h"; depends=[data_table]; };
   gear = derive2 { name="gear"; version="0.3.4"; sha256="0ibn2kr0rjj546cbcqhr6x69s25xh7si5fri59055j42g62mdnxy"; depends=[autoimage optimx Rcpp]; };
   geckor = derive2 { name="geckor"; version="0.2.0"; sha256="06infn0icgsa10szsc8bqams57swx6a4ch3a1n2a68rp8q2f6lw2"; depends=[curl dplyr httr jsonlite knitr lifecycle magrittr rlang tibble tidyr tidyselect]; };
-  gee = derive2 { name="gee"; version="4.13-20"; sha256="167pzgnmj4cjc41ykps1mfwi6s7y32zxyycn5z17vn4v0pp4q0ak"; depends=[]; };
+  gee = derive2 { name="gee"; version="4.13-22"; sha256="1wbwn7bjqz09l6clh43dy3x5qgv9b9wwn7xnfw9fkkrhn6rvc3rw"; depends=[]; };
   geeCRT = derive2 { name="geeCRT"; version="0.1.1"; sha256="1dwll5k99mj1a6nakxzihk87dvnqfsymly7kn1b8wkrfpljhrj4v"; depends=[MASS mvtnorm rootSolve]; };
   geeM = derive2 { name="geeM"; version="0.10.1"; sha256="1r9zyjv7r7r7avdqi54dvczf971frz8pgrs1a04kan5mh4ls6xpy"; depends=[Matrix]; };
   geeasy = derive2 { name="geeasy"; version="0.1.1"; sha256="1b874hacl0hhd16yfaag3kpqrc0336mmkzja0pa3gf7zj8d6n777"; depends=[geeM geepack ggplot2 lme4 Matrix MESS]; };
@@ -9880,7 +9908,6 @@ in with self; {
   geneExpressionFromGEO = derive2 { name="geneExpressionFromGEO"; version="0.9"; sha256="15dvx2f4nsmw1mgjfpcdcfnx8335fd043xb4hdnqcbjzf9h228bp"; depends=[annotate Biobase BiocManager GEOquery markdown R_utils xml2]; };
   geneHummus = derive2 { name="geneHummus"; version="1.0.11"; sha256="1m6yyjsvmn3w87cw4da8js5vi74k5y739gxdx1yscx1n50bc3m34"; depends=[curl dplyr httr rentrez stringr]; };
   geneListPie = derive2 { name="geneListPie"; version="1.0"; sha256="0z2gawfzhm05dafj4zlj6ifmf0dy7p1hrpa59lzxrnrc0wr6laji"; depends=[]; };
-  geneNetBP = derive2 { name="geneNetBP"; version="2.0.1"; sha256="0sp1chyln5k2zsq7cdhvrqxwr2nhrll1pdl1l5g6fd4gjl2m1nwk"; depends=[bnlearn ggm gRain graph igraph Rgraphviz scales]; };
   geneSignatureFinder = derive2 { name="geneSignatureFinder"; version="2014.02.17"; sha256="1s9jj87wnzzgm9hnws09yhrxdlb6jw56i3ddwznvmh8vpzrspv4h"; depends=[class cluster survival]; };
   genekitr = derive2 { name="genekitr"; version="0.5.3"; sha256="1znbxgfhq652gxl75if0gzk1n7bclacazwjh5vn97cmm78kkm20k"; depends=[clusterProfiler dplyr ggplot2 rlang stringi stringr tibble tidyr VennDiagram]; };
   genemodel = derive2 { name="genemodel"; version="1.1.0"; sha256="1x6n6k9ifv2swhyrghvm6fsz5vh85cdik8225175i9msvmkh928n"; depends=[stringr]; };
@@ -9892,6 +9919,7 @@ in with self; {
   generics = derive2 { name="generics"; version="0.1.2"; sha256="162q9hdsnfcwjj255ahbi6v9vnyynvda7gb75p721y28j5xb7sk3"; depends=[]; };
   genero = derive2 { name="genero"; version="0.1.0"; sha256="0akwwy5xbh7s40v8dr1zr7jfglv0iyh4zn0sb0rnz4r57qr6nh8w"; depends=[]; };
   genesysr = derive2 { name="genesysr"; version="1.0.0"; sha256="05jp8z7313r5wi9a5yw7fh198l7nd2ywzwg4f23yp4kfrkkgawn5"; depends=[dplyr httr jsonlite]; };
+  geneticae = derive2 { name="geneticae"; version="0.3.0"; sha256="1f3ixsmpn87cjrbmwrlzqjxf29vxym6xq8dkgl40zzr7hp628an7"; depends=[bcv calibrate dplyr GGEBiplots ggforce ggplot2 MASS matrixStats missMDA pcaMethods prettydoc reshape2 rrcov scales tidyr]; };
   genetics = derive2 { name="genetics"; version="1.3.8.1.3"; sha256="0lljxvz7nc6y2z303icphar2niir0i407w5cyhy2pwspd9gwkwpy"; depends=[combinat gdata gtools MASS mvtnorm]; };
   genie = derive2 { name="genie"; version="1.0.5"; sha256="07w6rf4a3d34j7dwz9zcxshg2sk1cd5v59xs3jxph17c9gga0nlq"; depends=[genieclust Rcpp]; };
   genieclust = derive2 { name="genieclust"; version="1.0.0"; sha256="1gbbblr5yv686llych5cj9jc8vc57y53qknzld5z51za9aw6azn3"; depends=[Rcpp]; };
@@ -9900,7 +9928,7 @@ in with self; {
   geniusr = derive2 { name="geniusr"; version="1.2.0"; sha256="04h0a61ngs0cmjf23imx76bm82dzkp4q4j31h3xlic05dx2lvyan"; depends=[curl dplyr httr purrr rvest stringr tibble xml2]; };
   genlasso = derive2 { name="genlasso"; version="1.5"; sha256="07f0gqvngiyd3x01qxbqz7xrz10ck1cbypp51ldg8lg8ln1zw76y"; depends=[igraph Matrix]; };
   genlogis = derive2 { name="genlogis"; version="1.0.0"; sha256="01av5invhviii7adqihh10ib47rjzwfsqdgw3lfg1c72kzrqywgr"; depends=[distr doParallel foreach ggplot2 manipulate]; };
-  geno2proteo = derive2 { name="geno2proteo"; version="0.0.3"; sha256="1q054ai42f5gmrj791abj02f663zs7ymdh3pfs3b2lq6i4w9s2fb"; depends=[BiocGenerics GenomicRanges IRanges R_utils RUnit S4Vectors]; };
+  geno2proteo = derive2 { name="geno2proteo"; version="0.0.5"; sha256="0aaxjgl037xmxdni03vrmlk444bpmw0c170ai8ijiyhy3j6xi8hk"; depends=[BiocGenerics GenomicRanges IRanges R_utils RUnit S4Vectors]; };
   genoPlotR = derive2 { name="genoPlotR"; version="0.8.11"; sha256="01qn81nsdk3s150gqwisb7xnm4hq5sfzd2zrzpn9kj0rigzgf9zi"; depends=[ade4]; };
   genodds = derive2 { name="genodds"; version="1.1.0"; sha256="1qsl134grmpk3yvgg106kawrx7g423jqlqgg9r2r46ry31i3hvhv"; depends=[Rcpp]; };
   genogeographer = derive2 { name="genogeographer"; version="0.1.19"; sha256="0q56ysv5333i27iv1gmd9ilbgn3rw8sb9yq7z76gmn1fak5aqci8"; depends=[dplyr DT forcats ggplot2 knitr leaflet magrittr maps purrr readr rio rlang rmarkdown shiny shinycssloaders shinyjs shinyWidgets tibble tidyr]; };
@@ -9943,9 +9971,9 @@ in with self; {
   geojsonR = derive2 { name="geojsonR"; version="1.1.0"; sha256="0yqmz5snl5mpkbp2m5nddvqy7y72kcpgzy3d5b55l4sfzh7wfg4d"; depends=[R6 Rcpp RcppArmadillo]; };
   geojsonio = derive2 { name="geojsonio"; version="0.9.4"; sha256="13lzc5hcs84gs1qnyi7lvy3yq1jz68jibmnww04lb91920msdxjv"; depends=[crul geojson geojsonsf jqr jsonlite magrittr maptools readr rgeos sf sp V8]; };
   geojsonlint = derive2 { name="geojsonlint"; version="0.4.0"; sha256="0l6xlf6l9shyvdd2ghkhcgbkxpmycapfpxakzbvd92j1x8dmr9az"; depends=[crul jsonlite jsonvalidate V8]; };
-  geojsonsf = derive2 { name="geojsonsf"; version="2.0.1"; sha256="1gxzi0wqmrif6bkw7z21aa2j8i0bd7a5nyyrkjiybv7v7d1l1ps2"; depends=[geometries jsonify rapidjsonr Rcpp sfheaders]; };
+  geojsonsf = derive2 { name="geojsonsf"; version="2.0.2"; sha256="1fj8jazpyjx1qygyasbw58mgl91ahqjdrk8cj9y861c709szs4vd"; depends=[geometries jsonify rapidjsonr Rcpp sfheaders]; };
   geoknife = derive2 { name="geoknife"; version="1.6.6"; sha256="0g4aia9v9f76njpjnd0silx7mqapycp2w5akyipwdag9gyizps61"; depends=[curl httr progress sp whisker xml2]; };
-  geomander = derive2 { name="geomander"; version="2.0.2"; sha256="1kpqsv21avw07bxd77galmwv2a8pkkvva8mzx42k3qg6c9qfaj6k"; depends=[censable cli dataverse dplyr geos ggplot2 magrittr Rcpp readr sf stringr tibble tidyr tigris]; };
+  geomander = derive2 { name="geomander"; version="2.0.3"; sha256="05qbq6a4cdnaazh0bwi5l523lm8y1ax5zf32pyl34rlqv70450sd"; depends=[censable cli dataverse dplyr geos ggplot2 magrittr Rcpp readr sf stringr tibble tidyr tigris]; };
   geomapdata = derive2 { name="geomapdata"; version="1.0-4"; sha256="1g89msnav87kim32xxbayqcx1v4439x4fsmc8xhlvq4jwlhd5xxw"; depends=[]; };
   geomedb = derive2 { name="geomedb"; version="2.0.1"; sha256="1l35c9x1mhqd7z5ragd7w3ay8v2fdnbmbfx9grwi622j8yz1fbmq"; depends=[ape httr jsonlite]; };
   geomerge = derive2 { name="geomerge"; version="0.3.2"; sha256="1i6n88k8icwihr9w7ipjb50f68zad602dipb3hd887y4kyf14wni"; depends=[geosphere ggplot2 gridExtra inlmisc lubridate raster scales sp spdep]; };
@@ -9953,10 +9981,10 @@ in with self; {
   geometr = derive2 { name="geometr"; version="0.2.10"; sha256="00yhw6k9wj3q0mmhwrjvhybsz5fcx86ms5n1q2l492jljplp46cr"; depends=[checkmate crayon deldir dplyr purrr raster Rcpp rgdal rlang sf sp tibble]; };
   geometries = derive2 { name="geometries"; version="0.2.0"; sha256="05036q4dccmmd955g4n2s5ncc9zxd9v9qyamszszwn147i7hkxcc"; depends=[Rcpp]; };
   geometry = derive2 { name="geometry"; version="0.4.5"; sha256="1n10l8ax3783v3lgaacb15qsn8b3f0wpmhg3k39j31s6ciyd3vcg"; depends=[linprog lpSolve magic Rcpp RcppProgress]; };
-  geomorph = derive2 { name="geomorph"; version="4.0.1"; sha256="05qiqyrc0vn1hi8g4hfs6hcysar3yqkw9r6hr3fg5f6qdnlznm4x"; depends=[ape ggplot2 jpeg Matrix rgl RRPP]; };
+  geomorph = derive2 { name="geomorph"; version="4.0.3"; sha256="0qz2hiqpn8sxd5kqvmvr1fx2vl8h70jj4jxcmbjg31gfybnppmwg"; depends=[ape ggplot2 jpeg Matrix rgl RRPP]; };
   geomtextpath = derive2 { name="geomtextpath"; version="0.1.0"; sha256="19hxqwzz3vli7f5631njz142ca01b4zfs72g4wwpswm5vkpkizdx"; depends=[ggplot2 rlang scales systemfonts textshaping]; };
   geonames = derive2 { name="geonames"; version="0.999"; sha256="0yz1b7y3vwa4izrhpry4n3iwzb7y67s5p3kgnd7d29cl5pcbpmqx"; depends=[rjson]; };
-  geonapi = derive2 { name="geonapi"; version="0.5-2"; sha256="0zf4g1k439a14sq9pvajpsbvvasy1bqa4cpbqs9mzzlzbwpbjm8y"; depends=[geometa httr keyring openssl R6 XML]; };
+  geonapi = derive2 { name="geonapi"; version="0.5-3"; sha256="0kmqax0wvhdw0rhrj5091wlhcsdfala6grspdss9s4q857xacx85"; depends=[geometa httr keyring openssl R6 XML]; };
   geonet = derive2 { name="geonet"; version="0.6.0"; sha256="0zav0r4q8i8mxwnr3a7j2ldprfb979pmcx76ssks4p6cfqp0syj4"; depends=[dplyr ggplot2 igraph Matrix mgcv spatstat_core spatstat_geom spatstat_linnet]; };
   geonetwork = derive2 { name="geonetwork"; version="0.4.1"; sha256="04vf39hxl1a2kbgqc054xg9w6hbd3fwag6sy0j8a9agrd5wgks7h"; depends=[geosphere igraph rgdal sf sp]; };
   geophys = derive2 { name="geophys"; version="1.4-1"; sha256="1s64sbr0chv0z2vaw059khfkv8iga1kr6428kkglgafq5x2d6h3q"; depends=[cluster GEOmap RFOC RPMG RSEIS]; };
@@ -9969,7 +9997,8 @@ in with self; {
   geosphere = derive2 { name="geosphere"; version="1.5-14"; sha256="0bg4vfmrw140j2ax0p6bflvb77w03ir39wa87l96rj473jpa9hzj"; depends=[sp]; };
   geospt = derive2 { name="geospt"; version="1.0-2"; sha256="1814nn0naxvbn0bqfndpmizjbqcs6rm87g2s378axkn6qpii4bh8"; depends=[fields genalg gsl gstat limSolve MASS minqa plyr sgeostat sp TeachingDemos]; };
   geosptdb = derive2 { name="geosptdb"; version="0.5-0"; sha256="0m0dlazhq2za71mi3q8mz2zvz7yrmda7lha02kh9n820bx89v33z"; depends=[FD fields geospt gsl limSolve minqa sp StatMatch]; };
-  geostats = derive2 { name="geostats"; version="1.3"; sha256="1k999b8dgwvajialsbijscndvbbm4hvvdlmycn8xwbbiqdz074ms"; depends=[]; };
+  geostan = derive2 { name="geostan"; version="0.2.1"; sha256="136y4d5wk0pcsbi0av6k3knjqdw665cb9hv892gdslclqlkni0r4"; depends=[BH ggplot2 gridExtra MASS Matrix Rcpp RcppEigen RcppParallel rstan rstantools sf signs spdep StanHeaders truncnorm]; };
+  geostats = derive2 { name="geostats"; version="1.4"; sha256="0knxv0jnrpijc6wg46qrrrsjikd37dgrkdp8l2kva18zl4cgh922"; depends=[]; };
   geotech = derive2 { name="geotech"; version="1.0"; sha256="18s7w6h1svc4n1hcgj5njfkf3nflkc53cdwsq5112p3442rlz33f"; depends=[]; };
   geotools = derive2 { name="geotools"; version="0.1"; sha256="0d0vf9dvrrv68ivssp58qzaj8vra26ms33my097jmzmgagwy1spd"; depends=[]; };
   geotoolsR = derive2 { name="geotoolsR"; version="1.1"; sha256="162s37j7wh14h91b6acn453bvgpk3cakfi7mgrdvr5bjdqqn7j7v"; depends=[dplyr geoR ggplot2 tidyr]; };
@@ -10018,6 +10047,7 @@ in with self; {
   ggBubbles = derive2 { name="ggBubbles"; version="0.1.4"; sha256="116rl8j0s9xwhh9jl5yj9fspkhv2zrirbx9247hhns9ngrdn4i3x"; depends=[dplyr ggplot2]; };
   ggChernoff = derive2 { name="ggChernoff"; version="0.2.0"; sha256="09bh9isvx3hwwvg72fv6z3fvp8dimpbhvbp328z8amq8jjhph4vf"; depends=[ggplot2 scales]; };
   ggDCA = derive2 { name="ggDCA"; version="1.1"; sha256="0jpg7n6nk2jgq668ff0l9zk26zk39abc74f6w5x8gf4zsb8y0zp9"; depends=[base_rms do ggplot2 rms set survival]; };
+  ggDoubleHeat = derive2 { name="ggDoubleHeat"; version="0.1.0"; sha256="106n2r6l4grg0g8w8z5nb4fw33sh62nyssbqmkq1w82xs73529i4"; depends=[ggnewscale ggplot2 rlang]; };
   ggESDA = derive2 { name="ggESDA"; version="0.1.0"; sha256="0j2ix9abzsxdmjklg44ajz69hlhpg9a31rjqrwymrlkdgdswpzvk"; depends=[dplyr ggforce ggplot2 ggpubr ggthemes gridExtra gtools magrittr prodlim R6 rlang RSDA stringr tibble tidyr tidyverse]; };
   ggExtra = derive2 { name="ggExtra"; version="0.9"; sha256="18mbi6gblqmrsciad1d2c9ngllk6mayaqj43k40hjq9ydqnvjbgj"; depends=[colourpicker ggplot2 gtable miniUI R6 scales shiny shinyjs]; };
   ggHoriPlot = derive2 { name="ggHoriPlot"; version="1.0.0"; sha256="198l1jzs2wybg8ixq8aacrs3b7g2hpxbi7gajr2z5hyiv7317lrq"; depends=[dplyr ggplot2 glue magrittr stringr tidyr]; };
@@ -10026,7 +10056,6 @@ in with self; {
   ggQC = derive2 { name="ggQC"; version="0.0.31"; sha256="1j9cs97hcj5zmqvn5rjr3gl0b9748s3pv2nb7v66dsyjdwvj7wyy"; depends=[dplyr ggplot2 tidyr]; };
   ggQQunif = derive2 { name="ggQQunif"; version="0.1.5"; sha256="0vrxmqxy946mwdq0mb2m1ch41r0chrw7hcn18dr3mp10bv7pl7wj"; depends=[dplyr ggplot2 scales]; };
   ggROC = derive2 { name="ggROC"; version="1.0"; sha256="0p9gdy7ia59d5m84z9flz5b03ri7nbigb3fav2v2wrml300d24vn"; depends=[ggplot2]; };
-  ggRandomForests = derive2 { name="ggRandomForests"; version="2.0.1"; sha256="0f8m0j79d8wbac14zk1s8812rz6vgf04bz1iqq8p4d3sxwnvaj7q"; depends=[ggplot2 randomForest randomForestSRC survival tidyr]; };
   ggResidpanel = derive2 { name="ggResidpanel"; version="0.3.0"; sha256="1vsjw229pd36100ix1sgfmk5lb9b0fx3l6pxg1irsfhm2ypbg1ig"; depends=[cowplot ggplot2 MASS plotly qqplotr stringr]; };
   ggThemeAssist = derive2 { name="ggThemeAssist"; version="0.1.5"; sha256="1biw91a8p13h62v4w3yim6ghr98khmyhb3qd0h04asf91vvmpxbv"; depends=[formatR ggplot2 miniUI rstudioapi shiny]; };
   ggTimeSeries = derive2 { name="ggTimeSeries"; version="1.0.2"; sha256="0sd39svwi3ai81szahd49a8qvsydi1922z4q6r2r70fpbfwi4qrq"; depends=[data_table ggplot2]; };
@@ -10037,12 +10066,14 @@ in with self; {
   ggalt = derive2 { name="ggalt"; version="0.4.0"; sha256="0ssa274d41vhd6crzjz7jqzbwgnjimxwxl23p2cx35aqs5wdfjpc"; depends=[ash dplyr extrafont ggplot2 gtable KernSmooth maps MASS plotly proj4 RColorBrewer scales tibble]; };
   ggamma = derive2 { name="ggamma"; version="1.0.1"; sha256="1zc4p2bz4pxqycrzgb9wwl53lxqcikxsihna6ff8pmw1n623j85z"; depends=[]; };
   gganimate = derive2 { name="gganimate"; version="1.0.7"; sha256="046v6j92xxgaghsnh88dy5h8x040qsfa8csvhp4dmsfmrrf0dz0f"; depends=[ggplot2 glue plyr progress rlang scales stringi tweenr]; };
+  ggarchery = derive2 { name="ggarchery"; version="0.2.0"; sha256="1w9dfjvhxrf8alf155jjjhk5380pk1n3asmqayg0rggsq98bj0jh"; depends=[ggplot2 glue purrr rlang tidyverse]; };
   ggasym = derive2 { name="ggasym"; version="0.1.6"; sha256="1vgsqq2m4w5clmf27mmj6jqn2s8m1izz3gj2bxqpmdcvzf5vxkgr"; depends=[dplyr ggplot2 magrittr purrr rlang scales stringr tibble tidyr]; };
   ggbeeswarm = derive2 { name="ggbeeswarm"; version="0.6.0"; sha256="0crk29p5vi1r3a988kms4y7r0iqwgwzsikgvh18r9wbzyr98bb5v"; depends=[beeswarm ggplot2 vipor]; };
   ggborderline = derive2 { name="ggborderline"; version="0.1.0"; sha256="02m7g0fmayp0zscj3x167n96cj6kn62a8nw67d42k6p74bard2sy"; depends=[ggplot2 scales]; };
   ggbreak = derive2 { name="ggbreak"; version="0.0.9"; sha256="1m93dwdhbibvmhzdk06z9kxdsv435rrs3g2m6lji5pajmf6qf72s"; depends=[aplot ggfun ggplot2 ggplotify rlang]; };
   ggbuildr = derive2 { name="ggbuildr"; version="0.1.0"; sha256="0pld635v6fv46ky7s4icwxlcnr7z6bp5ikf20adpkljwhy0wwxak"; depends=[ggplot2 purrr readr]; };
   ggbump = derive2 { name="ggbump"; version="0.1.0"; sha256="15cnzv2q3gylkmd1zj044cp14ldnkc4fzwmxaqpc8cagwf9i10zk"; depends=[dplyr ggplot2 purrr tidyr]; };
+  ggchangepoint = derive2 { name="ggchangepoint"; version="0.1.0"; sha256="0brd9z8wj563j2kcx12bz4kyg2ynppxx5cz8k23xli1qijlib98p"; depends=[changepoint changepoint_np dplyr ecp ggplot2 Rdpack tibble]; };
   ggcharts = derive2 { name="ggcharts"; version="0.2.1"; sha256="1c0gdn8skkm82f3qxv9551l36zwqcga9b9sbc48q8hp71ay4ac6b"; depends=[colorspace dplyr ggplot2 lifecycle magrittr patchwork rlang]; };
   ggcleveland = derive2 { name="ggcleveland"; version="0.1.0"; sha256="1pl9qhj7p5kflx0ni59hq1k9afqchghg5wig9v1ml5pqrjz70pxa"; depends=[dplyr egg ggplot2 lattice magrittr readr rlang stringr tibble tidyr vctrs]; };
   ggconf = derive2 { name="ggconf"; version="0.1.3"; sha256="0g4xasqhdiqfqahakv6p5npl56f2iakx4bnc9v9zcjr077kdda4n"; depends=[ggplot2 rly]; };
@@ -10050,8 +10081,9 @@ in with self; {
   ggdag = derive2 { name="ggdag"; version="0.2.4"; sha256="18085dxp9fv1l192mgadwlsa114fj370pd8r98q3g5pd1ppw8bip"; depends=[dagitty dplyr forcats ggplot2 ggraph ggrepel igraph magrittr pillar purrr stringr tibble tidygraph]; };
   ggdark = derive2 { name="ggdark"; version="0.2.1"; sha256="1w93g2j4g45x9s841v9zi18lxzda81ipa13fajqc6p9xk8frvgrf"; depends=[ggplot2]; };
   ggdemetra = derive2 { name="ggdemetra"; version="0.2.2"; sha256="1j0nwmv2acyrkpn230jj6yf5nnl40kpqdqaglrnrfqw5rp357krp"; depends=[ggplot2 ggrepel gridExtra RJDemetra]; };
-  ggdendro = derive2 { name="ggdendro"; version="0.1.22"; sha256="0skbj487b6f6pj2iz4yq2b9gbgb39cv5dyzhdl3w7ay1k0s5z9ph"; depends=[ggplot2 MASS]; };
-  ggdist = derive2 { name="ggdist"; version="3.0.1"; sha256="0g8b3ipj0yk9ckf0f1d7lxhaw2x5rscga74mbi0hkfygsks1iafa"; depends=[distributional dplyr ggplot2 HDInterval rlang scales tibble tidyselect vctrs withr]; };
+  ggdendro = derive2 { name="ggdendro"; version="0.1.23"; sha256="1f4fz9llmbpb8gh90aid7dvriadx16xdhsl7832yw4pyqj4fjcrs"; depends=[ggplot2 MASS]; };
+  ggdensity = derive2 { name="ggdensity"; version="0.0.1"; sha256="0jvybcxcrdr05ca9s9l7941zklr5dpvx5rg789591dvdllfz0dbm"; depends=[ggplot2 isoband MASS scales]; };
+  ggdist = derive2 { name="ggdist"; version="3.1.1"; sha256="177dnaz3gzs8mw95dwcssf87va5cyjm1g4ds3b6mwmz88ywq4a6r"; depends=[distributional dplyr ggplot2 glue HDInterval numDeriv rlang scales tibble tidyselect vctrs withr]; };
   ggdmc = derive2 { name="ggdmc"; version="0.2.6.0"; sha256="1gncv7npl548k3zd41x2gwg5qywn5rp6zb4i7ga78sy77mvi3x92"; depends=[coda data_table ggplot2 matrixStats Rcpp RcppArmadillo]; };
   gge = derive2 { name="gge"; version="1.7"; sha256="1lis0w4n0fns1fsl95p1pbvbqkb3vlwzb5pk5hqlzadjrnrs6gzw"; depends=[nipals reshape2]; };
   ggeasy = derive2 { name="ggeasy"; version="0.1.3"; sha256="0zp9jhm8vc1gpja5s6g92snd1jnskadafc226l51y8cps7lj8f6q"; depends=[ggplot2 rlang]; };
@@ -10085,7 +10117,7 @@ in with self; {
   gginference = derive2 { name="gginference"; version="0.1.3"; sha256="1r960cglnkii8xih4r1r7wd857jqn53f08zi9dnj54bpqrs374zx"; depends=[ggplot2 rlang]; };
   gginnards = derive2 { name="gginnards"; version="0.1.0-1"; sha256="1kgyrssmkyaqkahdqbc7abx955iyfls96kfamryhcarvbclkf2jx"; depends=[ggplot2 magrittr rlang stringr tibble]; };
   ggip = derive2 { name="ggip"; version="0.2.0"; sha256="0jfh6sr34nbqwqypx6qdjggl2q6qbmpl17cmy45v6zdr5phrzhrx"; depends=[dplyr ggplot2 glue ipaddress Rcpp rlang tidyr vctrs]; };
-  ggiraph = derive2 { name="ggiraph"; version="0.8.1"; sha256="0skdf7ga8a169xrbgljydk6yc18spi1m1s5604m576pkbc47zv87"; depends=[ggplot2 htmltools htmlwidgets purrr Rcpp rlang systemfonts uuid]; };
+  ggiraph = derive2 { name="ggiraph"; version="0.8.2"; sha256="1wqc490ly9v3m3xszk8xj2x6i36bppzmm39xn4w0qfabrnqzzbg0"; depends=[ggplot2 htmltools htmlwidgets purrr Rcpp rlang systemfonts uuid]; };
   ggiraphExtra = derive2 { name="ggiraphExtra"; version="0.3.0"; sha256="0q8ppixw5i1hpphmswpw6lvq7gx8rx4gfs2b8d31wbn32ziiv2rk"; depends=[dplyr ggiraph ggplot2 magrittr mgcv mycor plyr ppcor purrr RColorBrewer reshape2 scales sjlabelled sjmisc stringr tidyr]; };
   ggjoy = derive2 { name="ggjoy"; version="0.4.1"; sha256="012md2m0jqfcccb933j423m3ck31v3p0pd41gjxpyg9082y7ixyj"; depends=[ggplot2 ggridges]; };
   gglasso = derive2 { name="gglasso"; version="1.5"; sha256="12l0ac1n54z41yw7c00fm6q2mjmhp9blk4f8vp7q2my2xxwh1fmj"; depends=[]; };
@@ -10104,7 +10136,7 @@ in with self; {
   ggmuller = derive2 { name="ggmuller"; version="0.5.4"; sha256="0y7bm9fm5i8acpy6fa903ca2r9yasky7kg2hicm4xz5ni09jm20x"; depends=[ape dplyr ggplot2]; };
   ggmulti = derive2 { name="ggmulti"; version="1.0.4"; sha256="07kqhfpg7alayfq4a86wq18jzdcmxd99607w1amzidizmwgd54d8"; depends=[dplyr ggplot2 tidyr]; };
   ggnetwork = derive2 { name="ggnetwork"; version="0.5.10"; sha256="0gqdgy5yh700dg0f7xb80hczlnqfisn8l55j7amd1n7fp2x5sr8v"; depends=[ggplot2 ggrepel igraph network sna]; };
-  ggnewscale = derive2 { name="ggnewscale"; version="0.4.5"; sha256="1hjysfagd2lqy8yivqq9q7l6hbvyq8kasw3zqh5fk9xn18ikc702"; depends=[ggplot2]; };
+  ggnewscale = derive2 { name="ggnewscale"; version="0.4.6"; sha256="08xqhv6y9m9f2p8q3h0dh7mbpqg3r2i590x2983k69plfa5jxzv3"; depends=[ggplot2]; };
   ggnormalviolin = derive2 { name="ggnormalviolin"; version="0.1.2"; sha256="1gbv2b86nznw5bs05c4ns96b8hsxkhikhcf8syl2qbbafzy8vx6y"; depends=[dplyr ggplot2 magrittr scales]; };
   ggnuplot = derive2 { name="ggnuplot"; version="0.1.0"; sha256="0i09ybmxdjyr15z1a651k3bkbqskri4ipcyjap93020zbfv05r9c"; depends=[ggplot2]; };
   ggokabeito = derive2 { name="ggokabeito"; version="0.1.0"; sha256="07lbzq87zl2yswidp0f90l8szl7y4wwn8psgacyl90wn2gd9mdcp"; depends=[ggplot2]; };
@@ -10113,6 +10145,7 @@ in with self; {
   ggparallel = derive2 { name="ggparallel"; version="0.2.0"; sha256="0zxaff0jbqkbavsmh1yyp3vdrxsam6a66hjw8lamv9pksdw1s2wf"; depends=[ggplot2 plyr reshape2]; };
   ggparliament = derive2 { name="ggparliament"; version="2.0.0"; sha256="04za4lm3lir95bgda1rzlsyil2fkac3j5f5f1pjw2samy6pjz80r"; depends=[dplyr ggplot2 rlang]; };
   ggparty = derive2 { name="ggparty"; version="1.0.0"; sha256="0s6hr5p930kl3pj6ajwgwqz6yikc3l9hhzy1yn0nqc0r8pp2jyqf"; depends=[checkmate ggplot2 gtable partykit rlang survival]; };
+  ggpattern = derive2 { name="ggpattern"; version="0.4.2"; sha256="12xzvdhq2g3h5gggmm6rk7hdjici2kl7wjs98l5yh6yqnbglig74"; depends=[ggplot2 glue gridpattern rlang scales]; };
   ggperiodic = derive2 { name="ggperiodic"; version="1.0.1"; sha256="084n37jwldnhqx61ayq9b55bi4dp2iqyrj2qbp67w0ps1xn5jm6b"; depends=[data_table dplyr ggplot2 sticky tidyselect]; };
   ggplot_multistats = derive2 { name="ggplot.multistats"; version="1.0.0"; sha256="1afzfa86vc484bcwpg7m1ky03jpax584rigzgai8w06pifkmz0il"; depends=[ggplot2 hexbin rlang scales]; };
   ggplot2 = derive2 { name="ggplot2"; version="3.3.5"; sha256="1si46bf9p09qzs208hqffwcb40305p361whmwhc1pwrsmx7jjxdh"; depends=[digest glue gtable isoband MASS mgcv rlang scales tibble withr]; };
@@ -10123,6 +10156,7 @@ in with self; {
   ggplotlyExtra = derive2 { name="ggplotlyExtra"; version="0.0.1"; sha256="1m2rhylpzj934gb50lxjp47rxz0kwl9i1p3n7w1rz4qi96pr5p1c"; depends=[ggplot2 plotly rlang]; };
   ggpmisc = derive2 { name="ggpmisc"; version="0.4.5"; sha256="036y3zhl9ndj5wlqy2nkp95vi7pjfpvf63ndsigramzad0fz0c98"; depends=[dplyr generics ggplot2 ggpp lmodel2 lubridate MASS plyr polynom quantreg rlang scales splus2R tibble]; };
   ggpointdensity = derive2 { name="ggpointdensity"; version="0.1.0"; sha256="0c9a14j3b0hvamqylhzldw2hjdxmfbllwahjkf3gg2rw337ld9iy"; depends=[ggplot2]; };
+  ggpointless = derive2 { name="ggpointless"; version="0.0.1"; sha256="01w4aa84lrk4lwv2a0jhbia8c60mc9jqp9jplrnvngna17wlq2f1"; depends=[ggplot2]; };
   ggpol = derive2 { name="ggpol"; version="0.0.7"; sha256="11xr26kwmkjjb51wm44ydv0vcinc6k6faqwx4s2faj4iwidlys1m"; depends=[dplyr ggplot2 glue gtable plyr rlang tibble]; };
   ggpolar = derive2 { name="ggpolar"; version="0.2.0"; sha256="0i795635yziz1qssrvnvpbar5fdp4vxfmzaaxdlw6cccf3qfnnvq"; depends=[ggplot2]; };
   ggpolypath = derive2 { name="ggpolypath"; version="0.1.0"; sha256="0g9zfal3vqcx16fi4abxm6l5sam475lk1f6bdik487wc2v0dkq83"; depends=[ggplot2]; };
@@ -10174,7 +10208,7 @@ in with self; {
   ggx = derive2 { name="ggx"; version="0.1.1"; sha256="13yvckny2b7b7rhgi28xm8379paskin78wm5095s1ily9a2dxgkg"; depends=[ggplot2 sets]; };
   gh = derive2 { name="gh"; version="1.3.0"; sha256="077drbxz3rx7idv6w24ipj1p6jnzv86a3iyryab699cc9q2kjh54"; depends=[cli gitcreds httr ini jsonlite]; };
   ghclass = derive2 { name="ghclass"; version="0.2.1"; sha256="0jpfc2mjwi6i3bcrfjjl6k4im4m110pq2n00mij2n9czz6v2chla"; depends=[base64enc cli dplyr fs gh glue httr lubridate purrr rlang tibble whisker withr]; };
-  ghcm = derive2 { name="ghcm"; version="2.0.0"; sha256="0c09galykcn4nsbkvgh0i5mk8jxwi1vddqq4my2q3ybjipcv23if"; depends=[CompQuadForm MASS refund]; };
+  ghcm = derive2 { name="ghcm"; version="3.0.0"; sha256="0byzi0q3amz7q6if0y54mk3wac0pycci9ypagr65p8rlhx04gqv3"; depends=[CompQuadForm MASS Rcpp refund]; };
   ghee = derive2 { name="ghee"; version="0.1.0"; sha256="0b3czx2ibi5p8xl7i36zxnab032vrkh5bv204r7wgg1xpx8pdlra"; depends=[gh jsonlite]; };
   ghibli = derive2 { name="ghibli"; version="0.3.2"; sha256="0762dy3x7w0q1swag2lh33cpqdr9bbqw0963ymdpnchawdh5m50z"; depends=[prismatic]; };
   ghql = derive2 { name="ghql"; version="0.1.0"; sha256="19awg98r2hwwwwrwh0166y8ij1clf58vrf02i8fhhfzddx3an6bz"; depends=[crul graphql jsonlite R6]; };
@@ -10196,17 +10230,18 @@ in with self; {
   gistr = derive2 { name="gistr"; version="0.9.0"; sha256="0ac9ikrdg6i8xvlma0gizvsdva46408lk7hvsgkqirhy2ljy02hp"; depends=[assertthat crul dplyr httr jsonlite knitr magrittr rmarkdown]; };
   git2r = derive2 { name="git2r"; version="0.29.0"; sha256="13nlrhma6kavvhranb43w3003vadfkyrn2f4l3r63iqavj0s3xzq"; depends=[]; };
   git2rdata = derive2 { name="git2rdata"; version="0.3.1"; sha256="0nvx6lfp66l44n3xwkj5biirrzwvl52dssfx8jysqjl1kgfrwwh3"; depends=[assertthat git2r yaml]; };
+  git4r = derive2 { name="git4r"; version="0.1.1"; sha256="1z00m1l5gd1r03pnr7jcdzfba3vcak84xv3fbwhw8zcfjghsp3rc"; depends=[diffr git2r]; };
   gitcreds = derive2 { name="gitcreds"; version="0.1.1"; sha256="1snzn7nxy0rwz0bzjsg6k04c0n811dgn8gn9cmn2v78aj57ayjmi"; depends=[]; };
-  gitdown = derive2 { name="gitdown"; version="0.1.5"; sha256="0qmrjfh0a3n39yjhz2nfl6n19d1kzvaci7p0z3x3l1w7d1isrln1"; depends=[attempt bookdown dplyr git2r knitr magrittr purrr rmarkdown stringi tidyr]; };
+  gitdown = derive2 { name="gitdown"; version="0.1.6"; sha256="16g4kngal0w0vjrympxmnq16rpxks4wbj35aasvr3p2srgqn86by"; depends=[attempt bookdown dplyr git2r knitr magrittr purrr rmarkdown stringi tidyr]; };
   gitear = derive2 { name="gitear"; version="1.0.0"; sha256="139h19yyi7bpkps2vskdnga43ggpgb9fg8jdr7n8vgadxjamv98p"; depends=[dplyr httr jsonlite magrittr mockery Rcpp stringr tibble tidyr]; };
   gitgadget = derive2 { name="gitgadget"; version="0.6.6"; sha256="1c8404mqcl5cp5wxm2mszry7a29da96hd5ng3f2ynbfvxis709km"; depends=[callr curl dplyr jsonlite markdown miniUI rstudioapi shiny shinyFiles usethis]; };
   githubinstall = derive2 { name="githubinstall"; version="0.2.2"; sha256="0hqh86r2007hzdbm8rr0fwqhhsna7ji8sdgmdnrxkxraa5f2pfz3"; depends=[curl data_table devtools httr jsonlite mockery]; };
   gitignore = derive2 { name="gitignore"; version="0.1.5"; sha256="1jph54ah4ajb5xakbpnbmp44ddqz5np7c60441vhfn7nxa5b9cpx"; depends=[clipr clisymbols crayon curl glue here jsonlite purrr xfun]; };
   gitlabr = derive2 { name="gitlabr"; version="2.0.0"; sha256="0snd1pscv09wn3vjvfbvf87dcd43i25m2x3ra8vw37c2zd8hj500"; depends=[arpr base64enc dplyr httr magrittr purrr shiny stringr tibble]; };
   gitlink = derive2 { name="gitlink"; version="0.1.3"; sha256="1g34cyx35wlpq42alsayk69x708zxqgvbdndb7j6n1q0rm4vncvd"; depends=[htmltools rlang]; };
-  gittargets = derive2 { name="gittargets"; version="0.0.1"; sha256="02j5dlyxbzs5cf3240a77zc27ir2b9fp6f264fkfvm8f7cwm3z3y"; depends=[cli data_table gert processx targets tibble uuid]; };
+  gittargets = derive2 { name="gittargets"; version="0.0.3"; sha256="00mv901r116s1jshbxinfnckh88q2083628898dag31ixj3bqlim"; depends=[cli data_table gert processx targets tibble uuid]; };
   givitiR = derive2 { name="givitiR"; version="1.3"; sha256="0y2slhxhj7k413kjaydin9hq3x2xgx4cgjshdplwnmg3x2nakn31"; depends=[alabama rootSolve]; };
-  gjam = derive2 { name="gjam"; version="2.5.1"; sha256="1lcciarfnj5azdhjr310xays5kpkdzjnk9jh0pxkhrfdpg43jgvz"; depends=[MASS RANN Rcpp RcppArmadillo]; };
+  gjam = derive2 { name="gjam"; version="2.5.2"; sha256="0shq8cq7dq13f3x0ycx56izf9158aap76kghlcxhl8y42mgarxl5"; depends=[MASS RANN Rcpp RcppArmadillo]; };
   gk = derive2 { name="gk"; version="0.5.1"; sha256="1hgxb1lp78pbnj22i7ryf46im301j05y7hh75z2fxvv5nqgg2v75"; depends=[Ecdat lubridate progress]; };
   gkgraphR = derive2 { name="gkgraphR"; version="1.0.2"; sha256="1sb52hhpwm3bq7rn2xdq5vly6z1c5yab9a26xzgj3c5s47vk02pa"; depends=[httr ISOcodes jsonlite]; };
   gkmSVM = derive2 { name="gkmSVM"; version="0.81.0"; sha256="119g5rhc7ffyviz04r04aj5z1g6abnj3ddd01g7db505sdr6lapj"; depends=[kernlab Rcpp ROCR seqinr]; };
@@ -10255,14 +10290,14 @@ in with self; {
   glmpca = derive2 { name="glmpca"; version="0.2.0"; sha256="02xjf0gg52925hw9nw2j0znfmzfzfwbv0fxjl9d2fy9j63drr2h4"; depends=[MASS]; };
   glmtlp = derive2 { name="glmtlp"; version="2.0.1"; sha256="0ax3jhbib75gzp5a2y4nj80qss4qmn65rra8bsnkmwgcn4qg8xja"; depends=[doParallel foreach ggplot2]; };
   glmtoolbox = derive2 { name="glmtoolbox"; version="0.1.2"; sha256="1f3kw9w5i8jd9j9xmdq9327dh77xichssw53nsayn9w41n9ky431"; depends=[numDeriv Rfast]; };
-  glmtrans = derive2 { name="glmtrans"; version="1.0.0"; sha256="1r8zgdybl2z9bivcfdmbx2wfpaj82d95gdkaixwzwjknjn50ccyv"; depends=[assertthat caret doParallel foreach formatR ggplot2 glmnet]; };
+  glmtrans = derive2 { name="glmtrans"; version="2.0.0"; sha256="10d9z1rrjnxkw3nmim01ql5yfn1w62sncgclmprznr5kbna49yj3"; depends=[assertthat caret doParallel foreach formatR ggplot2 glmnet]; };
   glmtree = derive2 { name="glmtree"; version="0.2"; sha256="07b7ma38r5cjv6c33q1n2f8xvzn3lj004i8v947pqdhg3fi9wlc6"; depends=[caret dplyr magrittr partykit]; };
   glmulti = derive2 { name="glmulti"; version="1.0.8"; sha256="0zviahj99645s1xs2f9z7rnv95x4rdz7mfwzy3qjfw46yqpfj5cn"; depends=[leaps rJava]; };
   glmvsd = derive2 { name="glmvsd"; version="1.4"; sha256="03axsn85axs4d6fdlr3wcdwq6qa4991svkqc7k9r52kk1ar0w5zz"; depends=[brglm glmnet MASS ncvreg]; };
   glmx = derive2 { name="glmx"; version="0.1-1"; sha256="06v2qxgr16w0qnfhjr9vdqcad5v475pwg2yhw0i236yzqbnsssh6"; depends=[Formula lmtest MASS sandwich]; };
   glmxdiag = derive2 { name="glmxdiag"; version="1.0.0"; sha256="0m077j7prjc38yshq8ahprfsai0rc20qma2njjbdi975mrwxi25c"; depends=[VGAM]; };
   globalGSA = derive2 { name="globalGSA"; version="1.0"; sha256="1f3xv03m6g2p725ff0xjhvn2xcfm7r7flyrba080i4ldy6fd8jg8"; depends=[]; };
-  globalKinhom = derive2 { name="globalKinhom"; version="0.1.3"; sha256="1hj2f8sd9mfr44g93y2j6sazrlkpkgb10jw5fcjcf3w5738pvh5a"; depends=[spatstat spatstat_core spatstat_geom]; };
+  globalKinhom = derive2 { name="globalKinhom"; version="0.1.4"; sha256="0ah05yl0fxiih3lfh8gxls01ikanwg3z8npbgv625zjfrqp1qwsw"; depends=[spatstat_core spatstat_geom spatstat_random]; };
   globalOptTests = derive2 { name="globalOptTests"; version="1.1"; sha256="0yf4p82dpjh36ddpfrby7m3fnj2blf5s76lncflch917sq251h4f"; depends=[]; };
   globals = derive2 { name="globals"; version="0.14.0"; sha256="1wrjiiif6rpc268zz79pvpw33si6n6ffgxdnxmmcracwhb5vqg90"; depends=[codetools]; };
   globe = derive2 { name="globe"; version="1.2-0"; sha256="0xa0q5dac0g7xdlr679f3km8nqxlm7gi4msp9fbfivfvy0rmri96"; depends=[]; };
@@ -10270,7 +10305,7 @@ in with self; {
   glow = derive2 { name="glow"; version="0.10.1"; sha256="1br29hy5j30k5q4xk1dglxlhqalhm76hnx8xg73v6whcg5j11392"; depends=[ggplot2 R6 Rcpp RcppEigen RcppParallel scales]; };
   glpkAPI = derive2 { name="glpkAPI"; version="1.3.3"; sha256="07bksiqmq2n7ki3f3sxph4v44k7q2b0d88jwjgfxzdn33i65wqyq"; depends=[]; };
   glrt = derive2 { name="glrt"; version="2.0"; sha256="0p2b0digndvnn396ynv56cdg436n3ll7pxkb81rs3dhwbyqyc948"; depends=[survival]; };
-  glue = derive2 { name="glue"; version="1.6.1"; sha256="1nvqm4fmxyszz9b2y0gjiwbvwssdqj9jflcz00b4487i8jajz31i"; depends=[]; };
+  glue = derive2 { name="glue"; version="1.6.2"; sha256="1gzxk5jgdh2xq9r7z09xs306ygzf27vhg3pyfl7ck1755gqii9cx"; depends=[]; };
   gluedown = derive2 { name="gluedown"; version="1.0.4"; sha256="1rvaac27kc4mppmw9kdwjaqsa7lwfzwffv63c8cky1z0xrsc5zz1"; depends=[glue magrittr]; };
   gluvarpro = derive2 { name="gluvarpro"; version="4.0"; sha256="09l9yincr1k5j9wnj3zvfzsffjh3r54aa8fn0ik8vhlbq13ag8kp"; depends=[ggplot2 gridExtra pracma scales tidyr zoo]; };
   glvmfit = derive2 { name="glvmfit"; version="0.1.0"; sha256="1nb34dm4m0nq7cr9f9jsacnk0xjv451m419sdwbk11ykpqkh9cdk"; depends=[]; };
@@ -10288,7 +10323,8 @@ in with self; {
   gmm = derive2 { name="gmm"; version="1.6-6"; sha256="16vkb472bjlfccfpl94mz772nbyf76wkwb2shai18jja3fnj3cxi"; depends=[sandwich]; };
   gmnl = derive2 { name="gmnl"; version="1.1-3.2"; sha256="01pviab3gyvjdlv5jy7wzp33909znhpn47kar55bwkm6gm3bdlg8"; depends=[Formula maxLik mlogit msm plotrix truncnorm]; };
   gmodels = derive2 { name="gmodels"; version="2.18.1"; sha256="0s8kd8krqk4kwv2zqxpsfy3w8qdwf5naf4b5l383vidq9sil0qb2"; depends=[gdata MASS]; };
-  gmp = derive2 { name="gmp"; version="0.6-2.1"; sha256="1mj7hy6riaxl9n4q2cnyyjazwad90xbjszk25si968618rih4n64"; depends=[]; };
+  gmp = derive2 { name="gmp"; version="0.6-4"; sha256="0vfhz5cpffcrmq011h7jvy1r6d5pbbpkxj8431bhj5x5h25x7sjn"; depends=[]; };
+  gmpoly = derive2 { name="gmpoly"; version="1.0.0"; sha256="0nl5cbp6kk382nd1w7zpb571zyf4jark51xih34bnhy6kyq04xkw"; depends=[gmp mvp purrr]; };
   gms = derive2 { name="gms"; version="0.4.0"; sha256="1m7bhy4vsz6l09pal9ibjlskmbyjmc29hqwjim1x8yansd5bxpzv"; depends=[dplyr rlang stringr yaml]; };
   gmt = derive2 { name="gmt"; version="2.0.2"; sha256="0z5abh0kw97y90nxkkxxg2xgv1avxijf71v88lwhy25jgv8r7b38"; depends=[]; };
   gmvarkit = derive2 { name="gmvarkit"; version="2.0.2"; sha256="0si4a4ds9804rssim7vljv3q7ny54kd1lf9sljisrfilnbj69qsy"; depends=[Brobdingnag gsl mvnfast pbapply]; };
@@ -10302,8 +10338,9 @@ in with self; {
   gnumeric = derive2 { name="gnumeric"; version="0.7-8"; sha256="0iwl00mzsg8h8q67bjp6485idjlmj24362b1rbmkifckss8hrc98"; depends=[XML]; };
   goeveg = derive2 { name="goeveg"; version="0.5.1"; sha256="1dg0aw3sfar706jyiy5m5qz3nzs6sy3ljs9jp0p65b0v01rw8sbs"; depends=[fields Hmisc mgcv vegan]; };
   gofCopula = derive2 { name="gofCopula"; version="0.4-1"; sha256="17bdrn8xsqjz64caa5wdigkv798i18gc2f9jiin1bz840bqn1abg"; depends=[copula crayon doSNOW foreach MASS numDeriv progress R_utils SparseGrid VineCopula yarrr]; };
+  gofar = derive2 { name="gofar"; version="0.1"; sha256="10c1qgmkdhzxk9m2sd0xxww453y9lf5vjsrbmrbzbln91i6svy8j"; depends=[glmnet magrittr MASS Rcpp RcppArmadillo rrpack]; };
   gofastr = derive2 { name="gofastr"; version="0.3.0"; sha256="02jn4xbbafl7siwvkqns1818wmw813x9cvqfcnpnmcippiqhrb0b"; depends=[data_table quanteda slam SnowballC tm]; };
-  gofcat = derive2 { name="gofcat"; version="0.1.1"; sha256="1r3yb1dx97gqnzx1j7pn6fpqxdizw79rip2h9l1kmqqmsch3yygp"; depends=[crayon epiR Matrix reshape stringr VGAM]; };
+  gofcat = derive2 { name="gofcat"; version="0.1.2"; sha256="0jkkavws3p336i3gzlkd24q467zd1clfndcpimwc6scy8zh67q9l"; depends=[crayon epiR Matrix reshape stringr VGAM]; };
   goffda = derive2 { name="goffda"; version="0.1.0"; sha256="0xxqq6bnc543k7b69ix255x4hv95cy4w2ffiq5v22dal456ggy9m"; depends=[fda_usc glmnet ks Rcpp RcppArmadillo]; };
   gofgamma = derive2 { name="gofgamma"; version="1.0"; sha256="00wda3fandrd1kkm20fb615g5fd0wykk3s0xn0xh9da28q08yh2m"; depends=[]; };
   goft = derive2 { name="goft"; version="1.3.6"; sha256="0ag1bks44hm787sgbab70ab9q0dzbfsx70ldprafjx92gg1cqv5s"; depends=[fitdistrplus sn]; };
@@ -10311,14 +10348,14 @@ in with self; {
   gogarch = derive2 { name="gogarch"; version="0.7-2"; sha256="03gpl73zc6kx4gni59xbg7b38dkpd7p4c7kvlqm46f58j257viik"; depends=[fastICA fGarch]; };
   goldi = derive2 { name="goldi"; version="1.0.1"; sha256="191ac02bwrxr3khq6qirhxzfhv7pqfhqyg7jb473p5vwygpvc53l"; depends=[dplyr futile_logger magrittr Rcpp RcppArmadillo SnowballC tm]; };
   goldilocks = derive2 { name="goldilocks"; version="0.3.0"; sha256="1h16kfalyklc7i3rix1ml83wjcbi9wv3z3rwxa83gp2h6nfpzpwl"; depends=[dplyr fastlogranktest pbmcapply PWEALL rlang survival]; };
-  golem = derive2 { name="golem"; version="0.3.1"; sha256="1amasx97ywyp0x7khdwmliaql4cnpc6gsn10rbd128wqcbma504k"; depends=[attempt cli config crayon desc dockerfiler fs here htmltools jsonlite pkgload remotes rlang roxygen2 rstudioapi shiny testthat usethis yaml]; };
+  golem = derive2 { name="golem"; version="0.3.2"; sha256="008zhhmbgx6v3acw1gmzgzcpq8xj1i5mxpns6ixn538slrhlj5fx"; depends=[attempt brio cli config crayon desc fs here htmltools pkgload roxygen2 rstudioapi shiny usethis yaml]; };
   gomms = derive2 { name="gomms"; version="1.0"; sha256="1i9d5y28wrhal990x7xxy99v3z9y2pzlakj7wnynd3dpx5pqr0jj"; depends=[]; };
   gontr = derive2 { name="gontr"; version="1.1.0"; sha256="0asvpc3nizcn7cqdxr1j9hvhprmrazd8c7a2svhmln4vg9x1zzkp"; depends=[]; };
   good = derive2 { name="good"; version="1.0.1"; sha256="0lgp8kpdiaprq78fzny5c344m2s1vb24y9x9m8rkg1kd769h56pv"; depends=[copula maxLik plyr]; };
   goodpractice = derive2 { name="goodpractice"; version="1.0.2"; sha256="08rnm8z0pry5mwpc7p37r6f2rd56dry9djpcvvs9yl170w56psx0"; depends=[clisymbols covr crayon cyclocomp desc jsonlite lintr praise rcmdcheck rstudioapi whoami withr xml2 xmlparsedata]; };
   googleAnalyticsR = derive2 { name="googleAnalyticsR"; version="1.0.1"; sha256="02lipd1li3jmnjyc0f19fsblji3sjjzdy9zyq1f0ay5lfa6j2x51"; depends=[assertthat cli dplyr googleAuthR httr jsonlite magrittr measurementProtocol memoise purrr rlang tibble tidyr usethis whisker]; };
   googleAuthR = derive2 { name="googleAuthR"; version="2.0.0"; sha256="1svgjrh4wb3qdavhmks2lmncqrapvw17dvlbk0z1nbny7fplnl5s"; depends=[assertthat cli digest gargle httr jsonlite memoise rlang]; };
-  googleCloudRunner = derive2 { name="googleCloudRunner"; version="0.4.1"; sha256="0mvwgx2i4n0qymib1a7v3n7fa88hpwqh6fffclasxsr1ncdxankq"; depends=[assertthat cli curl googleAuthR googleCloudStorageR httr jose jsonlite openssl plumber progress usethis yaml]; };
+  googleCloudRunner = derive2 { name="googleCloudRunner"; version="0.5.0"; sha256="14nynl56gc8aj03wxbj243fz80j1wxd93ywfaivy1cgyfi3rid6z"; depends=[assertthat cli curl googleAuthR googleCloudStorageR googlePubsubR httr jose jsonlite openssl plumber usethis withr yaml]; };
   googleCloudStorageR = derive2 { name="googleCloudStorageR"; version="0.7.0"; sha256="1yp8h87i17kald9pkr9icxd918n5vywk0h9q8lclip2slx9bry1p"; depends=[assertthat cli curl googleAuthR httr jsonlite openssl yaml zip]; };
   googleCloudVisionR = derive2 { name="googleCloudVisionR"; version="0.2.0"; sha256="1n4gkmnwp9wadxz1izggxnpcpm4bz3imhq5y3i2szr8zwafcqqjv"; depends=[data_table glue googleAuthR jsonlite purrr]; };
   googleComputeEngineR = derive2 { name="googleComputeEngineR"; version="0.3.0"; sha256="1s0qvnijzkja645lim373swk815n3s1292q6sk3q36ss70q42cfg"; depends=[assertthat future googleAuthR httr jsonlite]; };
@@ -10333,11 +10370,11 @@ in with self; {
   googleformr = derive2 { name="googleformr"; version="0.0.3"; sha256="0smykcjyqmk61ws5jk462l8x5hg0h9nwq55q5pqfgcq1j3yfniqh"; depends=[httr rvest xml2]; };
   googlenlp = derive2 { name="googlenlp"; version="0.2.0"; sha256="0d0g18i3im2s5f14k69ym3vwf9a7zkaval3nwrip97xcl6kf4x9h"; depends=[dplyr httr jsonlite purrr readr rlang]; };
   googler = derive2 { name="googler"; version="0.0.1"; sha256="1aayji3ncqxl58k29d93dbx05s9rp9bc63fl2cpl1cys7gilblxx"; depends=[jsonlite tibble]; };
-  googlesheets = derive2 { name="googlesheets"; version="0.3.0"; sha256="11q07nxys72wkxx9mawmjyf20gvwvrb7h3gpa73h6lgh2vgrwnv8"; depends=[cellranger dplyr httr jsonlite purrr readr stringr tibble tidyr xml2]; };
   googlesheets4 = derive2 { name="googlesheets4"; version="1.0.0"; sha256="0yncqwv9l5knyrv88ys5gwcv44hl1j0mbklpins6v7f9m9v7s40a"; depends=[cellranger cli curl gargle glue googledrive httr ids magrittr purrr rematch2 rlang tibble vctrs]; };
   googleway = derive2 { name="googleway"; version="2.7.6"; sha256="07jyawybdrfb7rzxba6mqlz98slv6j1bdqv5lqc06zf5x84r0wwd"; depends=[curl googlePolylines htmltools htmlwidgets jpeg jqr jsonlite magrittr scales shiny viridisLite]; };
   goric = derive2 { name="goric"; version="1.1-2"; sha256="004nx29wz191rp0naa73r762bf6lap931lwrxifhz7izl47jzfj0"; depends=[MASS Matrix mvtnorm nlme quadprog]; };
   gorica = derive2 { name="gorica"; version="0.1.2"; sha256="0id0xqdw4rwqviym8l0a5gnl5a68ci5f4gn4bhywmzb6fh1nxj33"; depends=[bain lavaan limSolve lme4 MASS mvtnorm quadprog]; };
+  gosset = derive2 { name="gosset"; version="0.3"; sha256="0symqdgihj3m4a8j0nl1xw9kj3n13k75m1b9dzyhpp60q017nd59"; depends=[BradleyTerry2 ggparty ggplot2 partykit patchwork PlackettLuce psychotools qvcalc tidyr]; };
   gotop = derive2 { name="gotop"; version="0.1.2"; sha256="1dvcgz7ha637ixjqmgcwhvl3f9kpx4fdq8im40iz8xwnxqwmrlgx"; depends=[htmltools jsonlite]; };
   govStatJPN = derive2 { name="govStatJPN"; version="0.1"; sha256="03sywa7rl5rblvv370mfszz5ngp850qf32yydy1fdx10lv5amrfl"; depends=[]; };
   govdown = derive2 { name="govdown"; version="0.10.1"; sha256="00ndpp3v6z2497xlhhc92pa7w93qk9x8m6ibswj9dfh978d07028"; depends=[rmarkdown]; };
@@ -10345,7 +10382,7 @@ in with self; {
   goxygen = derive2 { name="goxygen"; version="1.0.3"; sha256="0825zl16ap0k3jqhrjw4hfsw97ils77jmf4yqq347k3bb8i3dm79"; depends=[citation gms pander stringi yaml]; };
   gpairs = derive2 { name="gpairs"; version="1.3.3"; sha256="08m1ydrr239vnhjbl47mng3i2w9bqmd8fijrwsraq5ysvn826n27"; depends=[barcode colorspace lattice MASS vcd]; };
   gpbStat = derive2 { name="gpbStat"; version="0.3.5"; sha256="1inmh8r02fn48p2f150d3prxlkf61549027vc64a3kyyk5q167ib"; depends=[data_table dplyr magrittr]; };
-  gpboost = derive2 { name="gpboost"; version="0.7.1"; sha256="1gr01myg7kja6lza3nhgqh21smahca7dp8n7v53xqigfrbmnmq57"; depends=[data_table Matrix R6 RJSONIO]; };
+  gpboost = derive2 { name="gpboost"; version="0.7.2"; sha256="05khnv1zfp0f8aj4ljkfrlwhqay565imr5ks636sgy6ivsb6c1w0"; depends=[data_table Matrix R6 RJSONIO]; };
   gpclib = derive2 { name="gpclib"; version="1.5-6"; sha256="11jjgg74l8hy9jz4jylhriqnzv8jcf12y1bkx22v29z3fhgkwkps"; depends=[]; };
   gpg = derive2 { name="gpg"; version="1.2.6"; sha256="17rvi3qff2kanqr3g20dzhn48bfh5sv57g0wsamndzcif7rhjhby"; depends=[askpass curl]; };
   gpindex = derive2 { name="gpindex"; version="0.4.2"; sha256="1id5mmdmjw34y80cnjfxgldd83bzfifh0jk4ym4wp7h3dbpqr8n5"; depends=[]; };
@@ -10380,7 +10417,7 @@ in with self; {
   grapes = derive2 { name="grapes"; version="1.0.0"; sha256="079b7w2xhb0a481s7qihhka0l9ydkjdph0865wjjkcbpr4775p26"; depends=[magrittr]; };
   grapesAgri1 = derive2 { name="grapesAgri1"; version="1.1.0"; sha256="0bsnxk7fqick6y76z6s1kwrg1y8spvg0awmdg5hk37g0f3wxgyas"; depends=[agricolae corrplot desplot dplyr ggplot2 ggpubr gridGraphics gtools Hmisc kableExtra knitr magrittr PairedData pastecs RColorBrewer Rdpack reshape2 rmarkdown shiny shinyWidgets summarytools]; };
   graph3d = derive2 { name="graph3d"; version="0.2.0"; sha256="1c4pmx37nf4nm6svrn9dqr50gb2fckx8635zg0n4gnzgdca1iyv4"; depends=[htmlwidgets lazyeval]; };
-  graph4lg = derive2 { name="graph4lg"; version="1.2.0"; sha256="0bfmi74hsd1hvvxls5a0gqdhxirjdzkjrpnq0p84na6sblmfbja6"; depends=[adegenet diveRsity ecodist foreign gdistance ggplot2 igraph knitr MASS Matrix pegas rappdirs raster Rdpack rmarkdown sf sp spatstat_core spatstat_geom spatstat_linnet stringr tidyr vegan]; };
+  graph4lg = derive2 { name="graph4lg"; version="1.4.0"; sha256="0lllz8wcqb2qf0byn6npklk88nl0k6f7q21iv02q1x4kdhsd5d95"; depends=[adegenet diveRsity ecodist foreign gdistance ggplot2 igraph MASS Matrix pegas rappdirs raster Rdpack sf sp spatstat_geom spatstat_linnet stringr tidyr vegan]; };
   graphTweets = derive2 { name="graphTweets"; version="0.5.3"; sha256="0jf52lclwvqgybdj6fknzx046bh6jgwxvqs4c5g1ii8f2lsz9y07"; depends=[combinat dplyr igraph magrittr purrr rlang tidyr zeallot]; };
   grapherator = derive2 { name="grapherator"; version="1.0.0"; sha256="071by9b8figbsf4g0f8a8mgcdksjksc57mnlgggilw7py1yjnjlh"; depends=[BBmisc checkmate deldir ggplot2 lhs reshape2 vegan]; };
   graphframes = derive2 { name="graphframes"; version="0.1.2"; sha256="1bv7d0sggwab4rd486ayw9gkb5ja5p5fin5pn92xnrmz8cgwsfxq"; depends=[forge sparklyr tibble]; };
@@ -10404,7 +10441,7 @@ in with self; {
   grec = derive2 { name="grec"; version="1.4.1"; sha256="1vy3idjvayzx9j9pf5bv5bxycjca3w3c4x4lzzbrdi3c97508sa8"; depends=[imagine raster]; };
   greed = derive2 { name="greed"; version="0.5.1"; sha256="1g33wzcld9gh4x7nhbfb022xjrn2lz8dwf4aqir8ymm0sr6cln87"; depends=[cba future GGally ggplot2 ggpubr listenv Matrix Rcpp RcppArmadillo RSpectra]; };
   greekLetters = derive2 { name="greekLetters"; version="0.0.7"; sha256="0r6c4y6dnd3mm5i7y5cy7xz3w2j7qkfkkvxg9ig138has6115gjj"; depends=[assertthat stringr]; };
-  greeks = derive2 { name="greeks"; version="0.4.1"; sha256="0szs1hyzh31mvbys5c4bc96rlq5z0514q1jz0v8kb8l0209bb539"; depends=[dqrng magrittr matrixStats Rcpp]; };
+  greeks = derive2 { name="greeks"; version="0.5.0"; sha256="0nwpw9iqczm4i2asqsh679s5pd2ia7ifdjaz6mdml1gdjkp85zlk"; depends=[dqrng magrittr Rcpp]; };
   greenclust = derive2 { name="greenclust"; version="1.1.0"; sha256="198ix55x8cl5wx09p6ahzy3bvig86mvqf2qywjfilp6b4hnjgk7l"; depends=[]; };
   gregRy = derive2 { name="gregRy"; version="0.1.0"; sha256="1b8c8wwp8r2v51ayy7rbav24wfz75z1pylg0p4vsasaw9p06dlbz"; depends=[dplyr magrittr purrr tidyr]; };
   gremes = derive2 { name="gremes"; version="0.1.0"; sha256="1ih5303sis2icic1q13gh6h3qbb1fzw0j7pdla75csiffjc77hw7"; depends=[abind copula gRbase gRim igraph mev mvtnorm quadprog]; };
@@ -10425,8 +10462,8 @@ in with self; {
   gridGeometry = derive2 { name="gridGeometry"; version="0.2-0"; sha256="0y7y1ld03cqpibmjssid6n3n8gf98hi9ngcfbkh6acyzck812bc7"; depends=[polyclip]; };
   gridGraphics = derive2 { name="gridGraphics"; version="0.5-1"; sha256="12yswy02j3h5wir7m5jnkhpjmb0sa4snn61vjd68i49qwsa6w219"; depends=[]; };
   gridGraphviz = derive2 { name="gridGraphviz"; version="0.3"; sha256="1jz0d6kc8ci55ffm6dns8bhak9xnaq7mg5mpv3fk53lircn7mwl5"; depends=[graph Rgraphviz]; };
-  gridSVG = derive2 { name="gridSVG"; version="1.7-2"; sha256="0vxhdz6a759q6q9lpmyjwkvrjr52dfz609jbwrd0pnfyffmmpzh0"; depends=[jsonlite XML]; };
-  gridpattern = derive2 { name="gridpattern"; version="0.4.0"; sha256="19kqgp8nq6ylc6mw5a8h03c2b74x3h1jvg9lj7rknnvin4xnm74w"; depends=[glue memoise png rlang sf]; };
+  gridSVG = derive2 { name="gridSVG"; version="1.7-4"; sha256="1jspjn56yrkx98hhs98npzm0k0kwpv8x1hg40kphx5ikhvincxmr"; depends=[jsonlite XML]; };
+  gridpattern = derive2 { name="gridpattern"; version="0.5.1"; sha256="1yql0kwp7rs95w1iqh5qwd5s9bfpzrqqrr2z84z7l7n6yxkgfs9w"; depends=[glue memoise png rlang sf]; };
   gridsampler = derive2 { name="gridsampler"; version="0.6"; sha256="0wqpqg9c372sv8zqks6v93gawiyfghw58hn7m8q45dxpqm16ss3k"; depends=[BiasedUrn ggplot2 plyr reshape2 shiny shinyBS shinythemes]; };
   gridtext = derive2 { name="gridtext"; version="0.1.4"; sha256="131kw7nkfwksviwfifd2kk7lyvhxzzzv1nnj8rahkr3dik3akk61"; depends=[jpeg markdown png Rcpp RCurl rlang stringr xml2]; };
   gripp = derive2 { name="gripp"; version="0.2.20"; sha256="0rshipm8rdynl19a4dsvvvlhkd0n4vjfkidwnv5iilc5ini7c4qr"; depends=[GA GenSA usethis]; };
@@ -10442,10 +10479,10 @@ in with self; {
   groupTesting = derive2 { name="groupTesting"; version="1.0.0"; sha256="00jy1gw6whslmfcqic99hmbxh2z75rj14cjzrm5mnpcajn37s66j"; depends=[pracma]; };
   groupWQS = derive2 { name="groupWQS"; version="0.0.3"; sha256="1c5yrsfgkhbg1fcjbrilfmf0phjry5z34536yfizc8wbc7mmmj0c"; depends=[glm2 MASS rjags Rsolnp]; };
   groupdata2 = derive2 { name="groupdata2"; version="2.0.0"; sha256="1s642fj0zwr6lw5dwf4y351igz0y2yl7g42wa8wi1wpa65p62553"; depends=[checkmate dplyr lifecycle numbers plyr purrr rearrr rlang tibble tidyr]; };
-  grouped = derive2 { name="grouped"; version="0.6-0"; sha256="1glxgacpwk7yjbkwg5ci6bmb2il6hf5zhydwi5bbq6hc032m9976"; depends=[MASS]; };
   groupedSurv = derive2 { name="groupedSurv"; version="1.0.4.2"; sha256="015av2087i0vxh3axl91crwvparhpc4w2p2j9fq7wylg1gsarraa"; depends=[BH doParallel foreach qvalue Rcpp RcppEigen]; };
   groupr = derive2 { name="groupr"; version="0.1.0"; sha256="1gych92dpyxg2vfm3h6djw61d9z2n6q2kvbz1xpq1p0zcyiw16gy"; depends=[dplyr purrr rlang tibble tidyr vctrs]; };
   groupsubsetselection = derive2 { name="groupsubsetselection"; version="1.0.3"; sha256="118cj5xc8nbq4fs2gbzg1nhynixaflbl0si77gyy4ybw0drsz4nj"; depends=[]; };
+  groupwalk = derive2 { name="groupwalk"; version="0.1.1"; sha256="1l7yk0nllap4q0sqybj4bl93399ddn6xc0bbrgrvsk9qvzywgd9q"; depends=[]; };
   grove = derive2 { name="grove"; version="1.1"; sha256="0fqsj5dx7py7cin3hvfkxglh8v3x0dwj6cxy4h5vbddjl687db5x"; depends=[Rcpp RcppArmadillo wavethresh]; };
   growfunctions = derive2 { name="growfunctions"; version="0.15"; sha256="0rj0kypjvqj7wlswzq4kxqizhlw56zgaydf37cbfjm5090h43fzi"; depends=[ggplot2 Rcpp RcppArmadillo reshape2 spam]; };
   growth = derive2 { name="growth"; version="1.1.1"; sha256="05yxjlbv1i4ly8yp3aqbxzq1z2mp7sfx7xyqw48qsdv0acqai7jy"; depends=[rmutil]; };
@@ -10468,7 +10505,6 @@ in with self; {
   gsalib = derive2 { name="gsalib"; version="2.1"; sha256="1k3zjdydzb0dfh1ihih08d4cw6rdamgb97cdqna9mf0qdjc3pcp1"; depends=[]; };
   gsarima = derive2 { name="gsarima"; version="0.1-5"; sha256="0nmn4hlvhl8dw7pkpf010x9qjd6w8drdlcj47qv0sap8wngrwhzg"; depends=[MASS]; };
   gsbDesign = derive2 { name="gsbDesign"; version="1.0-2"; sha256="1q958l9f03lk0wpcgqxqwcbj6jlgkmj6vj4gyj51pp8kfkxal59x"; depends=[gsDesign lattice]; };
-  gsbm = derive2 { name="gsbm"; version="0.2.1"; sha256="16j4g0wl9phmx85dbrzxsdjcv0nnipgj214fvbz9m6n66khr5pkp"; depends=[doParallel foreach Matrix RSpectra softImpute]; };
   gscaLCA = derive2 { name="gscaLCA"; version="0.0.5"; sha256="12zksjp0wh95qg7vxh22z652hk35r9sp0qxrms4y1laixa8vr71x"; depends=[devtools doSNOW fastDummies fclust foreach ggplot2 gridExtra MASS nnet progress psych stringr]; };
   gscounts = derive2 { name="gscounts"; version="0.1-4"; sha256="1wcna4bcm38ivmys5hv30b72bvn0ja0n30zhwns94n4v2z1d24k4"; depends=[Rcpp]; };
   gset = derive2 { name="gset"; version="1.1.0"; sha256="1gingqw6la8n7mnl47wpz9sicxca4zi2m8p35n6cnihrniibhajc"; depends=[Hmisc MCMCpack mvtnorm]; };
@@ -10488,13 +10524,13 @@ in with self; {
   gsubfn = derive2 { name="gsubfn"; version="0.7"; sha256="00j6b8b6xsx6v370h220x233rpk6asca78165y3d48jpwvwisdc9"; depends=[proto]; };
   gsw = derive2 { name="gsw"; version="1.0-6"; sha256="1sqxxbghsii5lph4r9j6w752zd95xxi2hwfbz6d7jxsplwyyfz0l"; depends=[]; };
   gsynth = derive2 { name="gsynth"; version="1.2.1"; sha256="1a4s8ghxc5zw295ys8hp22nx93gc1vyakn7r1dcq3ghikh02nzaa"; depends=[abind doParallel doRNG foreach future GGally ggplot2 lfe MASS mvtnorm Rcpp RcppArmadillo]; };
-  gt = derive2 { name="gt"; version="0.3.1"; sha256="06b029z32za010pfjj1pp5nqjamc58k87nxj5fsx2mpi8vjgxlfx"; depends=[base64enc bitops checkmate commonmark dplyr fs ggplot2 glue htmltools magrittr rlang sass scales stringr tibble tidyselect]; };
+  gt = derive2 { name="gt"; version="0.4.0"; sha256="1sqb2a9amc0xwbm7vshs290aikhy9bd744qyx18j7c45rp6p8v9g"; depends=[base64enc bitops checkmate commonmark dplyr fs ggplot2 glue htmltools magrittr rlang sass scales stringr tibble tidyselect]; };
   gt4ireval = derive2 { name="gt4ireval"; version="2.0"; sha256="1d567iz57xqszm45l1wq4n2qrrmyz8ssll1vllfmncb9ibbnx4f3"; depends=[]; };
   gtWAS = derive2 { name="gtWAS"; version="1.1.0"; sha256="1kbkz0iwc3gfj982m93m2wdr1xm5rhy70k6bdc7kms9ivh5fh6sh"; depends=[]; };
   gtable = derive2 { name="gtable"; version="0.3.0"; sha256="1lyncxf2dqdjgw1071cn9c8zwzkz6sldnd5cgmicf70bc726qf7x"; depends=[]; };
   gtcorr = derive2 { name="gtcorr"; version="0.2-1"; sha256="1n56zmyv58jwr95p453jb86j82pdnq57gfc8m15jndjc9p31zl0m"; depends=[]; };
   gte = derive2 { name="gte"; version="1.2-2"; sha256="1x528iakyjhh4j92cgm6fr49a3rdi4cqy28qhsfr2dwvxzxchl6h"; depends=[survival]; };
-  gtfs2gps = derive2 { name="gtfs2gps"; version="1.5-4"; sha256="0hqqi4gm6zbrys0yd0ayyas2pxfx4r98fi45rfmdzffrx8qd0p9r"; depends=[data_table furrr future gtfsio lwgeom magrittr pbapply progressr raster Rcpp readr rgdal rgeos sf sfheaders sp units]; };
+  gtfs2gps = derive2 { name="gtfs2gps"; version="2.0-1"; sha256="10v8b7qs0s5w4api08acjgll8zs1frz4ar02g68gmipwks5d6mvg"; depends=[data_table furrr future gtfsio lwgeom magrittr pbapply progressr Rcpp readr sf sfheaders terra units]; };
   gtfsio = derive2 { name="gtfsio"; version="1.0.0"; sha256="05210ii5b754ryk296knqm3sf9yi5xwvcrq6rb9w71njqgvykwcj"; depends=[data_table zip]; };
   gtfsrouter = derive2 { name="gtfsrouter"; version="0.0.5"; sha256="0yxgc4pi0g2wqswvwba0ij263i8b8p6wgsy6hbvklq0gim616shi"; depends=[cli data_table geodist Rcpp]; };
   gtfstools = derive2 { name="gtfstools"; version="1.0.0"; sha256="0qwpnhjl80g0h0samsh8hs3df85ax329aaaxgjzn5b8h6xi31p6z"; depends=[checkmate cpp11 data_table gtfsio sf sfheaders units]; };
@@ -10503,18 +10539,17 @@ in with self; {
   gtop = derive2 { name="gtop"; version="0.2.0"; sha256="1nvvbf181x0miw3q0r2g0nklz29ljdsd07cazaajfls7pmhi0xw9"; depends=[hts lassoshooting quadprog]; };
   gtrendsR = derive2 { name="gtrendsR"; version="1.5.0"; sha256="15jpda67c81j9qsjcx1kffk0my198z7myafsdw91chj7hjzyw6kl"; depends=[anytime curl ggplot2 jsonlite]; };
   gtsummary = derive2 { name="gtsummary"; version="1.5.2"; sha256="1vmzlpn7h68cgxpnsh49qj6xzanhrxa2v3d1f4s96y6kwla0s395"; depends=[broom broom_helpers cli dplyr forcats glue gt knitr lifecycle purrr rlang stringr tibble tidyr]; };
-  guaguas = derive2 { name="guaguas"; version="0.2.0"; sha256="1b5bmjd3l9npmjlmd3qq3kxcrm1dqv8m60s89fcybjlaf0942ms8"; depends=[]; };
+  guaguas = derive2 { name="guaguas"; version="0.3.0"; sha256="0ngdwg297ndn763vx0qnvcsy5bhsr026hv8hvwgrz5w32mpw252d"; depends=[]; };
   guardianapi = derive2 { name="guardianapi"; version="0.1.1"; sha256="17xmmr6pfzhdnmf45jzvk84gbfnmlw1qfv1gqjaw85vgm8b6jn6l"; depends=[dplyr httr jsonlite rlang tibble]; };
   guess = derive2 { name="guess"; version="0.1"; sha256="198pxi0yipgm9wccpj3y4a0gkibhyxcmb7v5dz7ipzrk44ha5g6j"; depends=[Rsolnp]; };
-  guf = derive2 { name="guf"; version="1.0.2"; sha256="1dfmja2da211pcid4hr7x9q0sgz37756rpykm1ax862avdl8hsmc"; depends=[]; };
-  guiplot = derive2 { name="guiplot"; version="0.1.0"; sha256="0h14ki1lwr9gln9yqhg2y81sgnz60sjy31cygxplapf215xbmjs2"; depends=[DT ggplot2 magrittr R6 rlang shiny svglite]; };
+  guiplot = derive2 { name="guiplot"; version="0.2.0"; sha256="03anbbd5iqmjv12aqgcmii5s0shig0vikz1rhabjrhpz9scabc53"; depends=[DT ggplot2 magrittr R6 rlang shiny svglite]; };
   gumbel = derive2 { name="gumbel"; version="1.10-2"; sha256="0s9idcrssnl683abwky9zvqylciy0b51z935yfvb2bm8b0b0b4ij"; depends=[]; };
   gumboot = derive2 { name="gumboot"; version="1.0.0"; sha256="0c31rxkq08wzycwiwii7q166pzwfbdg35259rymwy0g38pnjnjp6"; depends=[dplyr ggplot2 hydroGOF lubridate ncdf4 reshape2 stringr]; };
   gunit = derive2 { name="gunit"; version="1.0.0"; sha256="0vmm47f21n9f334aj38gzrmv1c4sp76njk95ld9gv6fcfxgsipyh"; depends=[magrittr stringr tibble units]; };
   gunsales = derive2 { name="gunsales"; version="0.1.2"; sha256="02vz16lhym72vvf48yai1g371wygdlmi63a6ylc147l0b69jgw31"; depends=[data_table dplyr ggplot2 seasonal x13binary zoo]; };
   gustave = derive2 { name="gustave"; version="0.4.3"; sha256="08az0j9cfalf2jf6qhsxhml3ranvacan85xp4d6zqdrgly00qsr2"; depends=[Matrix]; };
   gutenbergr = derive2 { name="gutenbergr"; version="0.2.1"; sha256="0rsk583x4i1ac6rbxr5f5cmczr4525bkv20jw7777n8fwn91zvyr"; depends=[dplyr lazyeval purrr readr stringr urltools]; };
-  gvc = derive2 { name="gvc"; version="6.2.0"; sha256="1m15kjdh1c5x1d0ly6hz0svssv1hn03ijrkp7dgipxcldcnv5rq9"; depends=[decompr diagonals]; };
+  gvc = derive2 { name="gvc"; version="6.2.1"; sha256="1ndg0hmnzn30i5xqp454lp5gwmfl4x3fwpcmjzj3by9i1aa8z2a3"; depends=[decompr diagonals]; };
   gvcR = derive2 { name="gvcR"; version="0.1.0"; sha256="0r54924b9a65k11p8y3p7jxbvmpb7s7vs87v65hhl98gxacj5hk8"; depends=[dplyr eda4treeR lme4 magrittr]; };
   gvcm_cat = derive2 { name="gvcm.cat"; version="1.9"; sha256="1kwfcmnl1ivv1lh3zxccwls2xfyx3l8v71ngc0bg6441i81d4xp5"; depends=[MASS Matrix mgcv]; };
   gvlma = derive2 { name="gvlma"; version="1.0.0.3"; sha256="16dhd407bwjs91c3p9kk43646197s7n9vbyghxb4ckrpv3fsaxp0"; depends=[]; };
@@ -10522,17 +10557,14 @@ in with self; {
   gwasforest = derive2 { name="gwasforest"; version="1.0.0"; sha256="122fg4pc409lvw4yvrc8ijm6d6j29b4aacd319a16caxkkydgwlb"; depends=[colorspace data_table dplyr ggplot2 ggrepel glue]; };
   gwasrapidd = derive2 { name="gwasrapidd"; version="0.99.12"; sha256="0pn7mdip361s2l3nqmjl0zqmr0g5406cfr1v5l20m2gkacxqfds6"; depends=[assertthat concatenate dplyr glue httr jsonlite lubridate magrittr pingr plyr progress purrr rlang stringr testthat tibble tidyr urltools]; };
   gwavr = derive2 { name="gwavr"; version="0.1.0"; sha256="04myyx5jll0xiarsdj513rlqg5hci1204kyzfknff874l2qxm2j7"; depends=[dplyr httr jsonlite leaflet leaflet_extras magrittr miniUI nhdplusTools promises purrr scales sf shiny shinyWidgets tidyr units]; };
-  gwdegree = derive2 { name="gwdegree"; version="0.1.1"; sha256="0p06hjp7vay83kbpqsgfr1d8z3ayv483rxbv86fdka94gvi1sjyc"; depends=[dplyr ergm ggplot2 gtools magrittr network scales shiny shinydashboard sna tidyr]; };
   gwer = derive2 { name="gwer"; version="3.0"; sha256="0jiq5v37mbn6y7vl5gs8qahb796jrfqj0m54sd38vim8yhhjwfy8"; depends=[assertthat glogis GWmodel maptools Matrix sp spData spdep spgwr]; };
-  gwerAM = derive2 { name="gwerAM"; version="1.0"; sha256="1c3rzd1jf52a4dn63hh43m9s9xnjvqn67amlm9z1ndrnn6fwfg1b"; depends=[MASS Matrix]; };
   gwfa = derive2 { name="gwfa"; version="0.0.4"; sha256="0jz82d9lfyd07z0jjlfqzsg7a3vnyz0s1j0rrb5sg9pnvcfjk9qy"; depends=[Rcpp sp]; };
   gwpcormapper = derive2 { name="gwpcormapper"; version="0.1.3"; sha256="0d8skx6rxas5qvhg7ykhymrzd6dawj45421vr66r4wi4hbdfjbzx"; depends=[attempt config corpcor crosstalk dplyr DT geodist glue golem htmltools leaflet pkgload plotly processx Rcpp sf shiny shinydashboard shinyjs viridis]; };
   gwrpvr = derive2 { name="gwrpvr"; version="1.0"; sha256="0x15nv2pfv99c04lgs6q6hgczarld34xc4aqw9bn179m7j02v6m3"; depends=[]; };
   gwrr = derive2 { name="gwrr"; version="0.2-1"; sha256="1fjk217pimnmxsimqp9sn02nr1mwy3hw3vsr95skbfsd6vdda14d"; depends=[fields lars]; };
-  gwsem = derive2 { name="gwsem"; version="2.1.4"; sha256="0qqcbkxkkfwraz750wvk1f86mqy6f2ndkspd8qr0ypnnlh3i0yzl"; depends=[BH data_table lifecycle OpenMx qqman Rcpp]; };
   gym = derive2 { name="gym"; version="0.1.0"; sha256="0vcwzgawqwjsf65hr1mbjkz3px8zsibfkn42jpsg39n13jpfjq8v"; depends=[httr jsonlite]; };
   gyro = derive2 { name="gyro"; version="0.1.0"; sha256="0knghb9hb9f1vli860qcaklb4d6pfmzyyx5ffyld7mimwmcwxyns"; depends=[clipr cxhull Morpho purrr rgl rstudioapi Rvcg]; };
-  h2o = derive2 { name="h2o"; version="3.36.0.2"; sha256="1rkjq72g08r24q1y3g7nx60jr2bqv06hkwx2i4wkggrl0c30wsfv"; depends=[jsonlite RCurl]; };
+  h2o = derive2 { name="h2o"; version="3.36.0.3"; sha256="0jn1nkh5vgcx6dqzja64fr3qlpn34r7ajgnivqdfqkcjhbj6j8qn"; depends=[jsonlite RCurl]; };
   h2o4gpu = derive2 { name="h2o4gpu"; version="0.3.3"; sha256="004sskj3a1mzjfh86m0rq02z1f3kd6650bzv1d3j8pj0xdmqb86c"; depends=[magrittr reticulate]; };
   h3jsr = derive2 { name="h3jsr"; version="1.2.3"; sha256="0amj7ks83zisy18fgnsy6zx4rg88ldyr0vhanh96dw3fbhhdh7kc"; depends=[geojsonsf sf tidyr V8]; };
   hBayesDM = derive2 { name="hBayesDM"; version="1.1.1"; sha256="16ilkmhyb7lgfd8s2qhjg952gfwkmfg154w4nw306j988a2ivc6h"; depends=[BH data_table ggplot2 loo Rcpp RcppEigen rstan StanHeaders]; };
@@ -10541,16 +10573,15 @@ in with self; {
   hNMF = derive2 { name="hNMF"; version="1.0"; sha256="08xn9i24dcykvbcsqzmk33li5fm1alkvcmq2fp0a2ysw4lvwfwqs"; depends=[MASS NMF nnls oro_nifti rasterImage]; };
   hR = derive2 { name="hR"; version="0.2.50"; sha256="1zslalsb2zi6b91fb2k1m0vsbsdazls2gnnl7gv2xqvn6kdh4nf6"; depends=[data_table knitr rhandsontable shiny]; };
   hSDM = derive2 { name="hSDM"; version="1.4.1"; sha256="1jwqjzr0zpckzh2jpqh17v6ypq4mzn5khlv6p37y59zz8bh9mvxp"; depends=[coda]; };
-  haarfisz = derive2 { name="haarfisz"; version="4.5"; sha256="1qmh4glwzqwqx3pvxc71rlcimp1l0plgdf380v9hk0b4gj7g3pkf"; depends=[wavethresh]; };
   hablar = derive2 { name="hablar"; version="0.3.0"; sha256="12gm5n3p2kmjwhkf60n4bjn3lrj7lrs5sgmvads9sfp2ckhaiysk"; depends=[dplyr lubridate purrr]; };
   hackeRnews = derive2 { name="hackeRnews"; version="0.1.0"; sha256="0vrdbk4dxbykb3hs35nxkl3s2ds92gs5qz66p85w8j5zjmwbw2x6"; depends=[future_apply httr jsonlite tibble]; };
   hacksaw = derive2 { name="hacksaw"; version="0.0.2"; sha256="1ls4l53bsaxyd6lwka9z9sb6ypa2ymbxpfxhsj9k966031jv2vk3"; depends=[dplyr magrittr purrr rlang tibble tidyselect zeallot]; };
-  hacksig = derive2 { name="hacksig"; version="0.1.1"; sha256="1gf80drfriw0x86mf4bwlvjypz1q7vcjk35c9df5mms6ly1dnfkc"; depends=[dplyr future_apply rlang tibble tidyr]; };
+  hacksig = derive2 { name="hacksig"; version="0.1.2"; sha256="0sc35vyi00r2b3hgn1xw2zffd704adschjwhx0niv5a1l33dxbkp"; depends=[dplyr future_apply rlang tibble tidyr]; };
   hadron = derive2 { name="hadron"; version="3.1.2"; sha256="04qd3lb6im5shf24ss88jkskab1rwn7m2d94x0ybbmfcg3l5dhm0"; depends=[abind boot dplyr R6 Rcpp stringr]; };
   hagis = derive2 { name="hagis"; version="3.1.3"; sha256="1x2vnym7da8kbj3ifi09z9dlqgprh73n03535gankqzd6pd7n1k4"; depends=[data_table ggplot2 pander]; };
   hakaiApi = derive2 { name="hakaiApi"; version="1.0.0"; sha256="0wk0qmg2g1hj6bsvhr5xys02l32adn1qypv8rdma643qfvlcp46c"; depends=[httr R6 readr tibble]; };
-  hal9001 = derive2 { name="hal9001"; version="0.4.2"; sha256="1s9yp4yk89s0r762svgicpcnlndqgqqgvb3h920707nnj9vdlqfq"; depends=[assertthat data_table glmnet Matrix origami Rcpp RcppEigen stringr]; };
-  haldensify = derive2 { name="haldensify"; version="0.2.2"; sha256="1g7ar16303gpnpx74krwmvjxip54rfbh0n9cxwzilyrn4bghlfsj"; depends=[assertthat data_table dplyr future_apply ggplot2 hal9001 matrixStats origami Rdpack rlang rsample scales tibble]; };
+  hal9001 = derive2 { name="hal9001"; version="0.4.3"; sha256="132qnrk6rm2qc5gw17iw61plx1ghnyzi7km8bp36vnqn19x9wj7j"; depends=[assertthat data_table glmnet Matrix origami Rcpp RcppEigen stringr]; };
+  haldensify = derive2 { name="haldensify"; version="0.2.3"; sha256="071lgx6j92n40bjlrp3khmnavvkla371rkm1ssx20ig5pkay23pw"; depends=[assertthat data_table dplyr future_apply ggplot2 hal9001 matrixStats origami Rdpack rlang rsample scales tibble]; };
   halfcircle = derive2 { name="halfcircle"; version="0.1.0"; sha256="1gbqbv3cn8w09i3f2ji3qq0snb4fy9243y12agw686fx46dfmhxs"; depends=[scales]; };
   hamlet = derive2 { name="hamlet"; version="0.9.6"; sha256="076fh28grlrv38qywshi79m84jsz1ck9k4n0rg4svvr3gqkdbcn2"; depends=[]; };
   handlr = derive2 { name="handlr"; version="0.3.0"; sha256="0l0jwlslz2pyg7q447k56acfhgmx5njsriqdrwd02zzbsc3g6wm5"; depends=[crul jsonlite mime urltools xml2 yaml]; };
@@ -10563,12 +10594,12 @@ in with self; {
   haploR = derive2 { name="haploR"; version="4.0.6"; sha256="1cg92v64xdzmr5hbjhd11rz6rkdddsxcxkqdgbj5hd1ldqsrjj45"; depends=[DT httr plyr RCurl RJSONIO RUnit tibble XML]; };
   haplotyper = derive2 { name="haplotyper"; version="0.1"; sha256="0pcshlh29c4zazhkcq4371kqh9inrbx494y5a1qb1k2c92fkax31"; depends=[]; };
   haplotypes = derive2 { name="haplotypes"; version="1.1.2"; sha256="07grdwli0kxnnnf7mg8z7gjpny88h71vf867g50f08yybgb46y70"; depends=[ape network phangorn plotrix sna]; };
-  happign = derive2 { name="happign"; version="0.1.2"; sha256="1p3nrlirwd4kkffj2khw2lch1a8ixq7754vi77nmf9l5783h8y0x"; depends=[curl dplyr httr magrittr sf stars stringr tidyr xml2]; };
+  happign = derive2 { name="happign"; version="0.1.3"; sha256="099zmz8dsr6hwb9lxlrkndcq5sfm327n0fpxzqr3cr4f52pgwvmx"; depends=[curl dplyr httr magrittr sf stars tidyr xml2]; };
   happytime = derive2 { name="happytime"; version="0.1.0"; sha256="03iblwb6w2dh9sibfi4nlswidck13hzsn7123838zp4sxfnrp041"; depends=[]; };
   hapsim = derive2 { name="hapsim"; version="0.31"; sha256="0jw6iw89d4y8wjy58biv40szp123ql7frz1mmdjdxljmwaby963h"; depends=[MASS]; };
   hardhat = derive2 { name="hardhat"; version="0.2.0"; sha256="0a4nq93cmps5xy8h0qsv6xyzrbsz9ka4iwkrvb8m8v10wq7wm5wl"; depends=[glue rlang tibble vctrs]; };
   harmonicmeanp = derive2 { name="harmonicmeanp"; version="3.0"; sha256="17irfw8788yhh36698p9w8wab6wcin1yzfinlbs3gdg70d42zcnd"; depends=[FMStable]; };
-  harmonizer = derive2 { name="harmonizer"; version="0.2.0"; sha256="16js4dnrqzlvmc8s34aic1rchp1nwalbyx3v52zzxbln8f3xxacs"; depends=[]; };
+  harmonizer = derive2 { name="harmonizer"; version="0.2.1"; sha256="1zqb375i2bqlw2ag184implm09ydh9g09wbgv6mbnf1gx49qk1dr"; depends=[]; };
   harmony = derive2 { name="harmony"; version="0.1.0"; sha256="0jkj9y4j6ja2d6y5j0akmkkgpppprk65i6bwwhs163g918i8qng0"; depends=[cowplot dplyr ggplot2 irlba Matrix Rcpp RcppArmadillo RcppProgress rlang tibble tidyr]; };
   harrietr = derive2 { name="harrietr"; version="0.2.3"; sha256="0n6vsqysj4ijh06z6nqmj8x1z4w9711dxhbfp8p8fwi0l75pj0cj"; depends=[ape dplyr ggtree lazyeval magrittr rlang tidyr]; };
   harrypotter = derive2 { name="harrypotter"; version="2.1.1"; sha256="1j3sv0rpp4lcrf09j4a3an4lkwi2x1z18iv62fk6c2kpp9b14b8r"; depends=[ggplot2 gridExtra]; };
@@ -10585,13 +10616,14 @@ in with self; {
   hbim = derive2 { name="hbim"; version="1.0.3"; sha256="1480nydsi2xj7zbfk4zw24mhsjadf83d827kpqzbmn0yh6srp3ps"; depends=[mvtnorm]; };
   hbm = derive2 { name="hbm"; version="1.0"; sha256="0qz28azm91a6pbss1mfc47a21d3q9rs3mmw0kgwc7i2a2m43mysm"; depends=[doParallel foreach Matrix]; };
   hbmem = derive2 { name="hbmem"; version="0.3-3"; sha256="1rajd5h9gp0rrpc0q0m0fx37mv2n70da3gnfvvnjc5a77mzfyqkp"; depends=[]; };
-  hbsae = derive2 { name="hbsae"; version="1.0"; sha256="1iwmpi0pn5fxyxkwqkbmy6w1f1wcx0p809jnviim0ypwib32mhh7"; depends=[arm Matrix]; };
+  hbsae = derive2 { name="hbsae"; version="1.2"; sha256="0fg782gxivkkwhqvxf09j1q20f2dqm7bd1y9bp99fy7mg88zp0gn"; depends=[Matrix]; };
   hcandersenr = derive2 { name="hcandersenr"; version="0.2.0"; sha256="0r8z8kb9hwvgcsxbd7arbmqclhwlbcjpnf3p9mp5vgyxm84iz515"; depends=[]; };
   hcc = derive2 { name="hcc"; version="0.54"; sha256="14b3pamkywb0wsjpbm0wpflcds0b5mfymvgk92rmf6ngz1bkpdbq"; depends=[]; };
   hcci = derive2 { name="hcci"; version="1.0.0"; sha256="11piy1ajg3j3dbh66szzf7lhc3x28fz75ai39vlx0gl5nc2v5zs5"; depends=[]; };
   hchinamap = derive2 { name="hchinamap"; version="0.1.0"; sha256="1pia593g50zf3286f9g51slkvrpj1iy7lws9d7a3nqgb2v3yji1y"; depends=[htmlwidgets]; };
   hcp = derive2 { name="hcp"; version="0.1"; sha256="0hhcy70g13kclxv733kgiys7qn5bi28abpkli5n2vj0a58ac333m"; depends=[]; };
   hctrial = derive2 { name="hctrial"; version="0.1.0"; sha256="19li8i8hx0r3b63q80cnj6pr72rdbmykxq0kcfbn4azq3sdd046y"; depends=[clinfun GenBinomApps]; };
+  hdImpute = derive2 { name="hdImpute"; version="0.1.0"; sha256="1n0y3k4rbjq1b2cr13c6axnx2c253ahch6ys53sb5v15xns78954"; depends=[dplyr magrittr missForest missRanger plyr purrr tibble tidyselect tidyverse usethis]; };
   hda = derive2 { name="hda"; version="0.2-14"; sha256="0azfxyws7yslcqplfddmdp5ngk91j5h7llvrg77yh5z0kkd09j1b"; depends=[e1071]; };
   hdbinseg = derive2 { name="hdbinseg"; version="1.0.1"; sha256="0fy9cqrygsnxkb3nxg56md19svrvkbijpxkqfk9p18cj5ibwrq94"; depends=[doParallel foreach iterators Rcpp RcppArmadillo]; };
   hdbm = derive2 { name="hdbm"; version="0.9.0"; sha256="0lvaica195chl6bb10wvvr7fbmh8b954fpxcm9r0gyp0d0i2a2w4"; depends=[Rcpp RcppArmadillo]; };
@@ -10610,10 +10642,10 @@ in with self; {
   hds = derive2 { name="hds"; version="0.8.1"; sha256="1smg5ixrl7f2x3wn7s5i26dyadn5sigpf4jsk236z1bhnz617ax4"; depends=[survival tensor]; };
   healthcareai = derive2 { name="healthcareai"; version="2.5.0"; sha256="05qsmgrnaagnavlrs9c6j01j9c3lcc9j7cmbrx3y6lb6pf4zs195"; depends=[caret cowplot data_table dplyr e1071 generics ggplot2 glmnet lubridate MLmetrics purrr ranger recipes rlang ROCR stringr tibble tidyr xgboost]; };
   healthfinance = derive2 { name="healthfinance"; version="0.1.0"; sha256="163zhdd5mqp0q872dmr3xzw2ppapnwp46rr7vkkfnglz635nxvpz"; depends=[ggplot2 lubridate readr scales shiny tibble]; };
-  healthyR = derive2 { name="healthyR"; version="0.1.7"; sha256="1ci1am982ym9xjrxalwr6k2ygkf4nycjmnwh2dzi4y8s4j9n1jwn"; depends=[cowplot dplyr ggplot2 ggrepel lubridate magrittr plotly purrr rlang scales sqldf stringr tibble tidyr timetk writexl]; };
-  healthyR_ai = derive2 { name="healthyR.ai"; version="0.0.5"; sha256="0jzzzyjhm5v570qb04n10pm2jv1gin650dgjsbw96m2k2x0f8758"; depends=[broom dplyr forcats ggplot2 ggrepel h2o magrittr purrr recipes rlang rsample tibble tidyr]; };
+  healthyR = derive2 { name="healthyR"; version="0.1.8"; sha256="0phqlf38g38rrvp1h8cvcfqrnb4bik2ndhsli5nkhlhywh4azjfm"; depends=[cowplot dplyr ggplot2 ggrepel lubridate magrittr plotly purrr rlang scales sqldf stringr tibble tidyr timetk writexl]; };
+  healthyR_ai = derive2 { name="healthyR.ai"; version="0.0.6"; sha256="0vpry1ixnwh6nfjx36xk6pql57ym84xzw5jmanzbnbsf8jnnq1zy"; depends=[broom dplyr forcats ggplot2 ggrepel h2o magrittr purrr recipes rlang tibble tidyr]; };
   healthyR_data = derive2 { name="healthyR.data"; version="1.0.1"; sha256="18b7aqdy9a0ldf2ib2d0a07k6bfmgdp61y8hl8yl19v35nqj6dvh"; depends=[]; };
-  healthyR_ts = derive2 { name="healthyR.ts"; version="0.1.7"; sha256="04sihmw238ddd3c9zp16lf579czzahxdbikwn5g26c6g8a5z44wp"; depends=[cowplot dplyr earth forcats ggplot2 lubridate magrittr modeltime parsnip plotly purrr recipes rlang stringi tibble tidyquant tidyr timetk workflowsets]; };
+  healthyR_ts = derive2 { name="healthyR.ts"; version="0.1.8"; sha256="09p3bc4ajdhr13k8hgwa6mha9p6l5p61fq4sgki0w6f2g2gcqrkq"; depends=[cowplot dplyr earth forcats ggplot2 lubridate magrittr modeltime parsnip plotly purrr recipes rlang stringi tibble tidyquant tidyr timetk workflowsets]; };
   healthyverse = derive2 { name="healthyverse"; version="1.0.2"; sha256="1ngxadwpd62lx6y41szqckv1f2j8ja1hy4qx08vccpjbmlcg8v1b"; depends=[cli crayon dplyr healthyR healthyR_ai healthyR_data healthyR_ts magrittr purrr rlang rstudioapi tibble TidyDensity]; };
   heapsofpapers = derive2 { name="heapsofpapers"; version="0.1.0"; sha256="1b88ff4j6rh0qif43iyb12wipkkjmp5qx33qfzgffr5m54df4kfy"; depends=[aws_s3 curl dplyr fs magrittr rlang scales]; };
   heatex = derive2 { name="heatex"; version="1.0"; sha256="0c7bxblq24m80yi24gmrqqlcw8jh0lb749adsh51yr6nzpap6i9n"; depends=[]; };
@@ -10665,7 +10697,7 @@ in with self; {
   hhcartr = derive2 { name="hhcartr"; version="1.0.0"; sha256="104xy3ihpi031pyzifnpc0jfq68gsbc12gzv6hp1vjrgy0nqw5l1"; depends=[bookdown captioner checkmate DiagrammeR DiagrammeRsvg ggplot2 hash Matrix rsvg]; };
   hhh4contacts = derive2 { name="hhh4contacts"; version="0.13.1"; sha256="1cqwn09iqgh6131cm4b5j0kx7k5vil0ak42v064g4maayj0yqy7p"; depends=[surveillance]; };
   hhi = derive2 { name="hhi"; version="1.2.0"; sha256="1yl52c3nqdi8v60sr01l0vv8359803dm2i4c9ifazgj3h3a4h0yp"; depends=[ggplot2]; };
-  hhsmm = derive2 { name="hhsmm"; version="0.2.4"; sha256="00rzjxdw3p334yr6in9vfxzf3s347d6369ad8fnmgnzk8d14l6p0"; depends=[CMAPSS cpr MASS mice mvtnorm psych Rcpp Rdpack]; };
+  hhsmm = derive2 { name="hhsmm"; version="0.3.1"; sha256="1jxic441bg7g15fv4jvl6xfrl61781s7p7x05wcfqayia82c76vr"; depends=[CMAPSS cpr magic MASS mice mvtnorm progress psych Rcpp Rdpack splines2]; };
   hht = derive2 { name="hht"; version="2.1.4"; sha256="0i4rjr507k555pvf7q6y6b3df56rjc6igrv8dk0mhyfws49jw9m9"; depends=[EMD fields spatstat spatstat_core spatstat_geom spatstat_linnet]; };
   hiPOD = derive2 { name="hiPOD"; version="1.0"; sha256="1i15ickz2s0kffh99qq30pl5hsl0lbj0kp55jnbv4x72hndzhmla"; depends=[rgl]; };
   hibayes = derive2 { name="hibayes"; version="1.0.1"; sha256="0ah81gwbsz2j466jwk39w6h4fi02ivwxi9ppir9svyf1nxig409j"; depends=[BH bigmemory Matrix Rcpp RcppArmadillo RcppProgress]; };
@@ -10691,7 +10723,7 @@ in with self; {
   highlightHTML = derive2 { name="highlightHTML"; version="0.2.5"; sha256="0j3zrvil7k5wfsbgfj2b4nbx77qsj3b4makv5angcf8s59p7q80r"; depends=[]; };
   highmean = derive2 { name="highmean"; version="3.0"; sha256="1lq7z0l1737j4wvsy7951405afylyywp7vf2i7girzh459fdfzpc"; depends=[MASS mnormt mvtnorm]; };
   highr = derive2 { name="highr"; version="0.9"; sha256="0kgdv2vf1lz3b5kbal9s83gg6812nw7fvrq0rkyr0v4k1lwi3zxy"; depends=[xfun]; };
-  highriskzone = derive2 { name="highriskzone"; version="1.4.6"; sha256="1nl3l7zq4j0vmkflkl716519llpbixjfknvb6razrrdwi6mml250"; depends=[deldir fields ks maps Matrix mvtnorm rgeos spatstat spatstat_core spatstat_geom]; };
+  highriskzone = derive2 { name="highriskzone"; version="1.4.7"; sha256="1ylbmk6a2d6prwips2da6syzxpbfhda93abdw98pjj658p7l3m0r"; depends=[deldir fields ks maps Matrix mvtnorm rgeos spatstat spatstat_core spatstat_geom spatstat_random]; };
   higlasso = derive2 { name="higlasso"; version="0.9.0"; sha256="09d500jsxlrv658i90xnb2wj1ad89v1iwb6y7vascyvg3cff104h"; depends=[gcdnet gglasso purrr Rcpp RcppArmadillo]; };
   higrad = derive2 { name="higrad"; version="0.1.0"; sha256="0q9av8qyvmvgy6a3l7svcmbkjjgnp4iny1cld4g3qsbaz3yp3jaj"; depends=[Matrix]; };
   hilbertSimilarity = derive2 { name="hilbertSimilarity"; version="0.4.3"; sha256="1251df3q7c7c69f8q9y9bxj210bk2dh80c8ca4s58isf0hr2x7zp"; depends=[entropy Rcpp]; };
@@ -10725,7 +10757,7 @@ in with self; {
   hmgm = derive2 { name="hmgm"; version="1.0.3"; sha256="12gaz2pi9ny7y772yzrfvl02p3n89cq1l5dzmcksd172gv9ayyz1"; depends=[binaryLogic glmnet MASS Matrix nat Rcpp rgl]; };
   hmi = derive2 { name="hmi"; version="1.0.0"; sha256="0fjcw13mkxza6nkq3fhp188ga1sjspq1sc6wjm4hy13xh7vdjpqq"; depends=[boot broom_mixed coda linLIR lme4 MASS Matrix MCMCglmm mice msm mvtnorm nlme nnet ordinal pbivnorm rlang tmvtnorm]; };
   hmlasso = derive2 { name="hmlasso"; version="0.0.1"; sha256="0ydcyz9pw30ji8ghrvkgcbmp27d661vajl97b8cwis52605a3gfx"; depends=[BH MASS Matrix Rcpp RSpectra]; };
-  hmm_discnp = derive2 { name="hmm.discnp"; version="3.0-6"; sha256="0jb4ga50d0qy9kz13qjsbwbvyhn8qiqsjsai2m6kvxb7qzd33g26"; depends=[nnet]; };
+  hmm_discnp = derive2 { name="hmm.discnp"; version="3.0-7"; sha256="09nr7hmb7iwn8pk6lkcjagkyql53hh68245chx3xxlbvjxy8l471"; depends=[nnet]; };
   hmma = derive2 { name="hmma"; version="1.1.0"; sha256="1qsvczqq44h46z0nfblv4rarbg64imz8m0jhxdhva27kbzdvqf97"; depends=[bnlearn graph MCMCpack mhsmm Rgraphviz]; };
   hmmm = derive2 { name="hmmm"; version="1.0-4"; sha256="1sbr85lcmcw3lv0ygqwfbarr91dp3br1xnlygy49145cvl93nfci"; depends=[MASS mvtnorm nleqslv quadprog]; };
   hmmr = derive2 { name="hmmr"; version="1.0-0"; sha256="1m0jmw0i66hm5z5rycvpdmasq8zhgsz91km491n0n923mm480hmh"; depends=[depmixS4]; };
@@ -10772,7 +10804,7 @@ in with self; {
   hrqglas = derive2 { name="hrqglas"; version="1.0.1"; sha256="1fmizzs7d42dziih5yaj449k1gw6fxraw72z9h1l2jz6qqgd8938"; depends=[MASS Matrix Rcpp]; };
   hrt = derive2 { name="hrt"; version="1.0.1"; sha256="0l0hjspncr6pkc3sg11p63k1gy1jmc70g6581ykh6zy0b07zm8rk"; depends=[CompQuadForm Rcpp RcppEigen]; };
   hscovar = derive2 { name="hscovar"; version="0.4.2"; sha256="06bkqcp0vcnkp0jqi0qjvxnw0lk0w4mrf88h1769ak7r49vzlr6f"; depends=[foreach Matrix pwr rlist]; };
-  hsdar = derive2 { name="hsdar"; version="1.0.3"; sha256="1slb2m62j86hn1kvpv72fvp48sxl7zb2znrr70jqqbrah8n1ynnl"; depends=[Boruta caret raster rgdal signal]; };
+  hsdar = derive2 { name="hsdar"; version="1.0.4"; sha256="1z38qmy8jqzy52qwpbsr4xgdby2c73144bxrn0ywyqdgjz1b6g8j"; depends=[Boruta caret raster rgdal signal]; };
   hse = derive2 { name="hse"; version="0.0-28"; sha256="14w09wm1kk7b4q8cl5cwjfqvzm2fb4ls8qjw6i0l54184fmw4dah"; depends=[]; };
   hsem = derive2 { name="hsem"; version="1.0"; sha256="0dgp65isbfmw0q4sn36l5226sf6vrl7mvn7gn50xvgybh0l6y7vk"; depends=[boot Matrix mvtnorm numDeriv]; };
   hsicCCA = derive2 { name="hsicCCA"; version="1.0"; sha256="1d4lkjrihwhl3jrsj7250ccd90nfwpllyavc3mp15fhcy2jnjci8"; depends=[]; };
@@ -10782,6 +10814,7 @@ in with self; {
   hsrecombi = derive2 { name="hsrecombi"; version="0.3.4"; sha256="0ca6672px0y5cibv9hk4hc638rp4d3bhbw0qn81irwwk84yacspv"; depends=[curl data_table dplyr hsphase quadprog Rcpp rlist]; };
   hsstan = derive2 { name="hsstan"; version="0.8.1"; sha256="0k7sqwx73zid68ji9l2hfihqdlk3rdpid81pp8g3fmi8dpvrzkms"; depends=[BH ggplot2 loo pROC Rcpp RcppEigen RcppParallel rstan rstantools StanHeaders]; };
   htdp = derive2 { name="htdp"; version="0.1.4"; sha256="0w579qp0p544xryb5r08m1nhqf7rmgv9q0lyx6my4av62l70ka5w"; depends=[Rcpp]; };
+  htestClust = derive2 { name="htestClust"; version="0.2.1"; sha256="01gcg2ad1fprn6fwzwjcjpvirz9dvrlns9l8rhf5h9j17p6vb1d1"; depends=[bootstrap MASS]; };
   htm2txt = derive2 { name="htm2txt"; version="2.1.1"; sha256="09q026yy8qm1fb3a4bf9vsp4j09kayl7xmk0p58ikar5l3bmfdjv"; depends=[]; };
   html2R = derive2 { name="html2R"; version="0.1.0"; sha256="1zdnwbqlpjh8r2xcl83da9pzh9cb8h908krnrs61vqhka7zb82ng"; depends=[glue shiny shinyAce shinyjqui shinythemes]; };
   html5 = derive2 { name="html5"; version="0.1.0"; sha256="0ainfi0gb3ylg10j910z61j6qppfl6jh8399ng9wlpv8c7pjzs8l"; depends=[]; };
@@ -10832,7 +10865,7 @@ in with self; {
   hybridModels = derive2 { name="hybridModels"; version="0.3.7"; sha256="0fj3dvv7s1hlicvlb077pkhbj894brzgdxhp67jck9zpy2qymzxq"; depends=[doParallel doRNG foreach ggplot2 GillespieSSA reshape2 stringr]; };
   hybridogram = derive2 { name="hybridogram"; version="0.3.2"; sha256="14p2gwmgcaf84aycdc2a51frw2pccrffsjk8n83gvj2ans8phrr9"; depends=[pheatmap]; };
   hydra = derive2 { name="hydra"; version="0.1.0"; sha256="0r3r8cds4h15narawxhzkrvgnf00vlgrgqdgnmbzjyyb1dmry8wn"; depends=[]; };
-  hydraulics = derive2 { name="hydraulics"; version="0.4.0"; sha256="0kabxcg7ajl1kgfiy2zr0zsb10wp13742s5nmphgx59wbm67vjz1"; depends=[ggplot2 gtools reshape2 units]; };
+  hydraulics = derive2 { name="hydraulics"; version="0.4.1"; sha256="0pqll9k2240jqc59n36iygygcl364jw8nsga81i4vx39x7yfms19"; depends=[ggplot2 gtools reshape2 units]; };
   hydroApps = derive2 { name="hydroApps"; version="0.1-1"; sha256="1ycv7l2ywwnx2mgklg6rry7n24jyhi4spvp1xl345yvyn9kf15dz"; depends=[nsRFA]; };
   hydroEvents = derive2 { name="hydroEvents"; version="0.10"; sha256="1w7nswdmg52ldzzz4gphqnp5gfgh9pvgyq9w0phpzj5ff19bxbxz"; depends=[]; };
   hydroGOF = derive2 { name="hydroGOF"; version="0.4-0"; sha256="0fw8b66k7gdkdjxgmdpp3lk9d8p0wmlvhq2rkcvajjb5wd09f43a"; depends=[hydroTSM xts zoo]; };
@@ -10859,6 +10892,7 @@ in with self; {
   hypothesestest = derive2 { name="hypothesestest"; version="1.0"; sha256="0g8sm386m1zm9i3900r62x83wb600cy8hqk7dlvbx6wcgrxg82sm"; depends=[]; };
   hypothesisr = derive2 { name="hypothesisr"; version="0.1.1"; sha256="0z06risagphhvqiw4lrxy52q6q2yr10w2yxsm8iz1wh9ik097pcv"; depends=[dplyr httr jsonlite]; };
   hypr = derive2 { name="hypr"; version="0.2.2"; sha256="1bmg8pz57qxyyicfsyv3s2mk9y914jsids4glsm640kvpy9a59q6"; depends=[cli magrittr MASS pracma]; };
+  hypsoLoop = derive2 { name="hypsoLoop"; version="0.2.0"; sha256="0kwxzw2r406li2pmby92a3jik4k3z1vdgs54m4q45a8r8vz3y1nn"; depends=[dplyr ggplot2 PolynomF sf sjPlot stars terra]; };
   hystReet = derive2 { name="hystReet"; version="0.0.2"; sha256="01nrbk48r1hf1yc953yf1pzryzrjjckwdqhb3pbnwfza8q0aqsfq"; depends=[httr jsonlite lubridate]; };
   hysteresis = derive2 { name="hysteresis"; version="2.7"; sha256="1nnfr50nafhimj2j5xpxly3i8xvkwwddz864gklwm9jzdpmv02yh"; depends=[car MASS msm]; };
   hzar = derive2 { name="hzar"; version="0.2-5"; sha256="000l4ki3hvznnhkxc5j422h5ifnsfqalv666j48yby1hsf1lc3kg"; depends=[coda foreach MCMCpack]; };
@@ -10887,7 +10921,7 @@ in with self; {
   iGasso = derive2 { name="iGasso"; version="1.4"; sha256="17xxqncl5xcphdqclghcazygcgibf8ijdf4kkl3ga11xf70sahj2"; depends=[CompQuadForm lattice]; };
   iGraphMatch = derive2 { name="iGraphMatch"; version="2.0.0"; sha256="0xqf04wc5rm7x281pmnpz6a5ax26i9drgy90ixl4bchcx5ma0mr5"; depends=[clue igraph irlba Matrix Rcpp]; };
   iIneq = derive2 { name="iIneq"; version="1.0.2"; sha256="15487majkslabw33dgqfx0jmbzzjhiy8z07bki5540d1wf6rmmnn"; depends=[doParallel foreach]; };
-  iMRMC = derive2 { name="iMRMC"; version="1.2.3"; sha256="1qga4mm5vslfmxcm3p99nijr4573kq71pfb6yd2ayl6lgjf3y0c3"; depends=[]; };
+  iMRMC = derive2 { name="iMRMC"; version="1.2.4"; sha256="1cs5ghrd78h92bmws5z8adawjalvplri9wx2p9w7nq76h31wqhzw"; depends=[]; };
   iMediate = derive2 { name="iMediate"; version="0.5.5"; sha256="1lwhrzm4g2fcazh782g7p11v5pyx165ig1dzgkmdmjffpwk0w8b4"; depends=[MBESS mvtnorm plotly]; };
   iNEXT = derive2 { name="iNEXT"; version="2.0.20"; sha256="14bagsb0ja3j53i0g4a2ax2gj7lyc6sjcc7isdjx94clbnc2zcsg"; depends=[ggplot2 reshape2]; };
   iNZightMR = derive2 { name="iNZightMR"; version="2.2.6"; sha256="1r2lzi9fw46q2k87zfhrfninmvbz15805za60lbfmlv32b29d82y"; depends=[]; };
@@ -10927,7 +10961,6 @@ in with self; {
   ibr = derive2 { name="ibr"; version="2.0-3"; sha256="1plyz4sl0i8qhk9dh3h7zvh9h8wqr589jvasmvp7r3slp4ndhp1r"; depends=[mgcv]; };
   ibs = derive2 { name="ibs"; version="1.4"; sha256="06zyg6c083437nhilqfhcf6yzlvazkpxhi3dh5d3dqv2zhxixlz4"; depends=[Rcpp]; };
   ic_infer = derive2 { name="ic.infer"; version="1.1-6"; sha256="14vcwx5592br4zky9mq82akwk8pfiz7p1rx2jvyb48prrs2mm9gy"; depends=[boot kappalab mvtnorm quadprog]; };
-  ic50 = derive2 { name="ic50"; version="1.4.2"; sha256="1a5ddmbdfr3ls132fvalbkh4yaawv9k58rgpy54s5qddrm6aas2s"; depends=[]; };
   icRSF = derive2 { name="icRSF"; version="1.2"; sha256="1a7046lspk70cvrvzwzhnqcmc3cqa5a9bmzlw012jvcn39m2ca3l"; depends=[icensmis Rcpp]; };
   ica = derive2 { name="ica"; version="1.0-2"; sha256="0ya1nph1zwhad0bfz4yxs27kl45yk1dhnphdlrq34p8pqrpmj8g7"; depends=[]; };
   ical = derive2 { name="ical"; version="0.1.6"; sha256="1raanaagas1c8w66d8s045z5ip1i97xca4233d55jk6cazv0mb1w"; depends=[V8]; };
@@ -10945,11 +10978,16 @@ in with self; {
   icensBKL = derive2 { name="icensBKL"; version="1.2"; sha256="1zzv80jnn8ilnc1gv4nj24l2fl8805rjhqjgkb0xx4y9zhpg1jkp"; depends=[gtools Icens MASS mvtnorm smoothSurv survival TeachingDemos]; };
   icensmis = derive2 { name="icensmis"; version="1.5.0"; sha256="1afpn07a25j2jh89r78bvarg2kr0sk3ap8gdmvk75lc6g3dhvri9"; depends=[Rcpp]; };
   icertool = derive2 { name="icertool"; version="0.0.3"; sha256="0wwkqcvjmv2z8a8j597c2fjjcka1jz932i94rmqxcy31brvbi2nl"; depends=[digest DT ggplot2 ggrepel purrr readxl shiny shinyhelper shinythemes tidyverse]; };
-  icesAdvice = derive2 { name="icesAdvice"; version="2.0-0"; sha256="0sx93fsx2srmynnvs3bjb525m9a5w70qr9lghmkqa07crd991vfr"; depends=[]; };
-  icesDatras = derive2 { name="icesDatras"; version="1.3-0"; sha256="0yaqlximxa3rcjxgrd0mii02mm9gpcxgw3i8pymp00bk8zixvj30"; depends=[]; };
+  icesAdvice = derive2 { name="icesAdvice"; version="2.1.1"; sha256="1i47kz45m45nn23j0ydq8vahw97py2im80yxadlqbvldjcm98vdw"; depends=[]; };
+  icesConnect = derive2 { name="icesConnect"; version="1.0.0"; sha256="067jh43vp79pcw8bs1iarrd680x0ajc25vp91ckpjpzm22311wbr"; depends=[base64enc getPass httr jsonlite keyring whoami]; };
+  icesDatras = derive2 { name="icesDatras"; version="1.4.0"; sha256="00vfd589y617lbjadmajjdq9c9d9w2c81pxqfzlsh50rz9y7qjsk"; depends=[]; };
+  icesDatsu = derive2 { name="icesDatsu"; version="1.1.0"; sha256="0vprh8y6x28q33b6zx9qhq991q0aqn5rhccf44k8211n5dwa555k"; depends=[httr icesConnect jsonlite]; };
+  icesDatsuQC = derive2 { name="icesDatsuQC"; version="1.0.0"; sha256="18c48qvls9ngf6mszx5wdkm1xxijc9i005kfa5zkww6bj0ran80g"; depends=[icesDatsu sqldf]; };
+  icesSAG = derive2 { name="icesSAG"; version="1.4.0"; sha256="0y6sajhl8bj2yzyrdnmlaq2kfnf3jzz99s66gg1gjpdhksn77dba"; depends=[httr icesVocab openssl png xml2]; };
+  icesSD = derive2 { name="icesSD"; version="2.0.0"; sha256="1k0i79hh63bmsqw5m6ym2h3dydrjji57lkysp5n9x293lgh04pf2"; depends=[httr icesConnect]; };
   icesTAF = derive2 { name="icesTAF"; version="3.6.0"; sha256="1g2qlpbi94731vvzdnc16f1gpgn49sxzlsljzzapfgk14dcm96b1"; depends=[glue jsonlite lattice purrr roxygen2]; };
-  icesVocab = derive2 { name="icesVocab"; version="1.1.9"; sha256="14zbc31xb7lizz1ki85nxb6lzmwjdyfajv0j43hmbbh3yscjd9p3"; depends=[xml2]; };
-  ichimoku = derive2 { name="ichimoku"; version="1.2.5"; sha256="0d4pcfq153csaxabs0z09gcjv08nmp2ry3nf79lsrlmzc51sl6nm"; depends=[cpp11 curl ggplot2 gtable jsonlite tibble xts zoo]; };
+  icesVocab = derive2 { name="icesVocab"; version="1.2.0"; sha256="0cd2w0w2m176mpfd3lzvxl88bcli1qrkjrli539i764nlyh0ipl0"; depends=[xml2]; };
+  ichimoku = derive2 { name="ichimoku"; version="1.3.0"; sha256="1h4h0ms88sh841gcwb1sgwhg9j4qvikajfzflylr0xbrlly9rhp6"; depends=[curl ggplot2 jsonlite tibble xts zoo]; };
   icmm = derive2 { name="icmm"; version="1.2"; sha256="179q8w60g4yrv6wqgfmg47by1zc1mbhsdjgl7jq4wirqvwnxvgym"; depends=[EbayesThresh]; };
   iconr = derive2 { name="iconr"; version="0.1.0"; sha256="17q7zj92yrj49slmrpwkxkjd0imrl9ildms9zj8qx7yc7dcv4c1s"; depends=[igraph magick rgdal]; };
   icosa = derive2 { name="icosa"; version="0.10.1"; sha256="025bqlgx4p1kxpmizfzgiamcq2f5nj5m2ky25fpgdm714sybvwvi"; depends=[igraph Rcpp sp]; };
@@ -10957,14 +10995,13 @@ in with self; {
   icr = derive2 { name="icr"; version="0.6.2"; sha256="1xqvzn02x13d706irv83zycpxhm8yq1c34rh1nphddy5gri7gwjb"; depends=[Rcpp]; };
   icrf = derive2 { name="icrf"; version="2.0.0"; sha256="0kx687q0fv5agjwfsqx12wbayrzr02x316gg3y0rklqyq5aapvfv"; depends=[]; };
   icsw = derive2 { name="icsw"; version="1.0.0"; sha256="0g7bcqs0rpbs1p202i9wjbl8hhy3r196zambm044xyf7kvsbzzf6"; depends=[]; };
-  idar = derive2 { name="idar"; version="1.2"; sha256="0bsh0dx44fi2ggf33xin94fh2yjkr0bbib68cy7k5c9z363zwhfc"; depends=[ape FD picante spatstat spatstat_core spatstat_geom]; };
+  idar = derive2 { name="idar"; version="1.3"; sha256="16n2vpc6zx8sz2pr8nmza7127s3vwinjrrmmxc63q8cmb1ifi3gv"; depends=[ape FD picante spatstat spatstat_core spatstat_geom spatstat_random]; };
   idbg = derive2 { name="idbg"; version="1.0"; sha256="1rxmj04hswxybrg7dfib3mjy8v8mdiv13zwbscp2q55z55hhf1m5"; depends=[]; };
   idbr = derive2 { name="idbr"; version="1.0"; sha256="0silsd3ydrrg924klga8dascxjfmi2czw7sz3ap2j7gkgvxcfcpv"; depends=[countrycode dplyr httr jsonlite purrr rnaturalearthdata sf]; };
   ideamdb = derive2 { name="ideamdb"; version="0.0.9"; sha256="1f4dcv6c8ny7pik547f4840vhll26mzfcijnfsiqx31xhn0gsizd"; depends=[dplyr ggplot2 stringr tidyr]; };
   idefix = derive2 { name="idefix"; version="1.0.1"; sha256="1hqq9w0hssczmy8kvpp438fz0r5wdrxzxpkhrljz50rqazr61asy"; depends=[dplyr MASS mlogit Rcpp RcppArmadillo Rdpack scales shiny tmvtnorm]; };
   idem = derive2 { name="idem"; version="5.1"; sha256="1i5h0hg76rrxharlfv33kcbwmvkfyfk92wim93dvpkflnbwsmzfl"; depends=[BH mice Rcpp RcppEigen rstan sqldf StanHeaders survival]; };
   idendr0 = derive2 { name="idendr0"; version="1.5.3"; sha256="11c12d166bp2i498d8y6ipg5jhz1xsdsrmnhjqnrqqzp9avvrsjp"; depends=[tkrplot]; };
-  identity = derive2 { name="identity"; version="0.2-1"; sha256="1j5wb5cj5j49in2g6r1shdm4ri4cfzj22hpqazvcmq4dm291sdi9"; depends=[]; };
   ider = derive2 { name="ider"; version="0.1.0"; sha256="021s4fybki7a6mdsr6gkjrzfhaqdcg0m2a6r24y91jklxlxqxmws"; depends=[FNN]; };
   idiogramFISH = derive2 { name="idiogramFISH"; version="2.0.8"; sha256="1m45858da25zwrm74h69a2a5ly4yy0cl12vkkaqrwzn72snsq3c2"; depends=[crayon dplyr plyr rlang tidyr]; };
   idm = derive2 { name="idm"; version="1.8.2"; sha256="04f0i0kwdxywmj2i184knx5a5v9svx0lbam6wpz49hghg7qpy0w5"; depends=[animation ca corpcor dummies ggplot2 ggrepel]; };
@@ -10979,11 +11016,11 @@ in with self; {
   iemisc = derive2 { name="iemisc"; version="0.9.9"; sha256="1hay4d85xw81cgzkm21db8mssqqb8cw4bsg3qypm59bqwmqpl8md"; depends=[CHNOSZ data_table fpCompare gsubfn iemiscdata pracma r_import rgdal sp stringi testit units zoo]; };
   iemiscdata = derive2 { name="iemiscdata"; version="0.6.1"; sha256="0a9x90kisgmrka0frk9myb1qdq3nl092n78wrif31b42arifa8h9"; depends=[]; };
   iemisctext = derive2 { name="iemisctext"; version="0.9.99"; sha256="02rr7sjjbrvfxwjl87f2ki245a8cw5fvx7z2z4rl8ixxlyxj9p5v"; depends=[]; };
+  ifCNVR = derive2 { name="ifCNVR"; version="0.1.0"; sha256="0qcmgd3vi413n4ipa6ybkr7a1kwxyr2al8cw4gfr8fp2av1sk4vc"; depends=[data_table isotree rmarkdown]; };
   ifa = derive2 { name="ifa"; version="7.0"; sha256="1cxafd7iwvyidzy27lyk1b9m27vk785ipj9ydkyx9z1v0zna2wnl"; depends=[mvtnorm]; };
   ifaTools = derive2 { name="ifaTools"; version="0.23"; sha256="16xf3165gkmh3f9843m0n4wqdwwdfs6rjh64qcpz8srsm2z5y3l2"; depends=[ggplot2 OpenMx reshape2 rpf shiny]; };
   ifctools = derive2 { name="ifctools"; version="0.3.4"; sha256="1cxxk1ysb5ya81g669xyalzmkpfjsjsrrqmvnsg1z0kwh5yv54ds"; depends=[]; };
   ifs = derive2 { name="ifs"; version="0.1.5"; sha256="03g9cgs0zp89b1d7rpcn5clkvmg0spnariwrifd8hha476ldvfcy"; depends=[]; };
-  ifultools = derive2 { name="ifultools"; version="2.0-23"; sha256="16a7rbvlym3bnfm93ikr5kl0l86ppk0s41fva6idvcx765g3fqkk"; depends=[MASS splus2R]; };
   ig_vancouver_2014_topcolour = derive2 { name="ig.vancouver.2014.topcolour"; version="0.1.2.0"; sha256="0yclvm6xppf4w1qf25nf82hg1pliah68z7h3f683svv0j62q748h"; depends=[]; };
   igate = derive2 { name="igate"; version="0.3.3"; sha256="0b8dk976z0764cmxwcq6w2f3akv7iivivharinq029p90b600qza"; depends=[dplyr ggplot2 kableExtra knitr rmarkdown stringr xtable]; };
   igcop = derive2 { name="igcop"; version="1.0.1"; sha256="0jl107mdwbldi319qflqjzy8vk02sr4nihky8jl5kcgr6x55qh6z"; depends=[Rcpp rlang vctrs]; };
@@ -11011,10 +11048,11 @@ in with self; {
   image_dlib = derive2 { name="image.dlib"; version="0.1.0"; sha256="118zwalpxcnn2fgjv8xsp763yvbqcyv81p6fblxizlnimyrjva71"; depends=[Rcpp]; };
   image_libfacedetection = derive2 { name="image.libfacedetection"; version="0.1"; sha256="0mr7zrqd73mhvs918615lwsf2bgg63x3wh16wdpwhb2zd7ybm87a"; depends=[Rcpp]; };
   image_textlinedetector = derive2 { name="image.textlinedetector"; version="0.1.5"; sha256="1bbakqz7zrsdyzxgvv6czh8cgwj0qbazhfpacbm04pbpji5iilxw"; depends=[magick Rcpp]; };
+  image2data = derive2 { name="image2data"; version="1.0.0"; sha256="0jyicd6i15lb7d5vp1d7r2b2nsind1glylscix86lpkv6pcdz1as"; depends=[readbitmap]; };
   imageData = derive2 { name="imageData"; version="0.1-61"; sha256="0bavyd8njfjd0l8dcsm6gklgc81kykl275w2gpvb5cxrhb9yp32n"; depends=[dae GGally ggplot2 Hmisc RColorBrewer readxl reshape]; };
   imagefluency = derive2 { name="imagefluency"; version="0.2.3"; sha256="0f4kizxc86q6pgx5dbp14y6866b1ldyf7zgpfikd2iqhvxbs7qwa"; depends=[magick OpenImageR pracma R_utils readbitmap]; };
   imagefx = derive2 { name="imagefx"; version="0.4.1"; sha256="1mxd33y8zbq8kig6m6xihb5w8wrjppgmpyjspvaxjwk7si9a09k1"; depends=[moments signal]; };
-  imager = derive2 { name="imager"; version="0.42.11"; sha256="1a1jhmgrpv1d0fk14axj88qvxgb25bqnj65d60g1k985ipzvgy27"; depends=[downloader igraph jpeg magrittr png purrr Rcpp readbitmap stringr]; };
+  imager = derive2 { name="imager"; version="0.42.13"; sha256="0zygnmxwbbmj5i2l2affzdz90xvsa7b5pbkzkhjbm40is69rh2nr"; depends=[downloader igraph jpeg magrittr png purrr Rcpp readbitmap stringr]; };
   imagerExtra = derive2 { name="imagerExtra"; version="1.3.2"; sha256="1f6mxfn7am4ph9acbbx53r4bk4vsm73p7arh8rvrsic9pgma3gqf"; depends=[fftwtools imager magrittr Rcpp]; };
   imageseg = derive2 { name="imageseg"; version="0.4.0"; sha256="1i3bwhc4251ah2vq3s7jy941qdxy8jjrs3ay8297nd2b4v18y8as"; depends=[doParallel dplyr foreach keras magick magrittr purrr tibble]; };
   imageviewer = derive2 { name="imageviewer"; version="0.1.0"; sha256="1rsrwy5v0gnsmbay1zqijhvll2l1bs844m52w65588j9nlx4fci9"; depends=[htmlwidgets]; };
@@ -11038,7 +11076,7 @@ in with self; {
   impactflu = derive2 { name="impactflu"; version="0.1.0"; sha256="0wpaq2q61g6hl9fffs5cjbzdz1qc8dxsbknfs0iarwkn08460bn5"; depends=[dplyr glue lubridate magrittr Rcpp rlang tibble]; };
   impactr = derive2 { name="impactr"; version="0.4.0"; sha256="0nywix00j2j4gql83w81c7kyhlvfzydvjgzd1495xsiyy0a8c4jn"; depends=[glue lubridate lvmisc pillar pracma purrr Rcpp rlang signal stringr tibble toOrdinal vroom]; };
   impimp = derive2 { name="impimp"; version="0.3.1"; sha256="0xkxph4f1rcpkryx9v339bfbsnq3xwdj1flb4j2dgh99apj126sq"; depends=[]; };
-  implicitMeasures = derive2 { name="implicitMeasures"; version="0.2.0"; sha256="0w0dwnzfhw5v5j7q3zpfsca4ydmq7b9fzspvyf9sibyh587isb9c"; depends=[ggplot2 stringr tidyr xtable]; };
+  implicitMeasures = derive2 { name="implicitMeasures"; version="0.2.1"; sha256="177d69fbyzrg28ddxqlqbf7hm25mj5rpmpslh0mad2xqzyvdylvn"; depends=[ggplot2 stringr tidyr xtable]; };
   implied = derive2 { name="implied"; version="0.4.0"; sha256="00wv05pb59p86ddfwha7ilfss36si8yljnmkmayiqcazn32ylzg8"; depends=[]; };
   implyr = derive2 { name="implyr"; version="0.4.0"; sha256="0rblsmx1z2n4g3fims5wa3wyf5znr0gkwd2yfz3130bcm6346da0"; depends=[assertthat DBI dbplyr dplyr rlang tidyselect]; };
   r_import = derive2 { name="import"; version="1.2.0"; sha256="018s0x224gqnv4cjfh0fwliyfg6ma9vslmwybrlizfsmqcc5wp37"; depends=[]; };
@@ -11047,18 +11085,18 @@ in with self; {
   impressionist_colors = derive2 { name="impressionist.colors"; version="1.0"; sha256="03z5w7y7vbvlnn30r9y3ip93h364f87nhwdb9hcki26csiq2bnlv"; depends=[]; };
   imptree = derive2 { name="imptree"; version="0.5.1"; sha256="0f087000092ydnpj3ch4mbip8wp32scn8xw4vlkq5lf6130gfs1b"; depends=[Rcpp]; };
   imputeFin = derive2 { name="imputeFin"; version="0.1.2"; sha256="11qd43zs8gd3fg3f47lrb6b4r0w7kxczain61bxc67ppzflrafmd"; depends=[magrittr MASS mvtnorm zoo]; };
+  imputeGeneric = derive2 { name="imputeGeneric"; version="0.1.0"; sha256="16680bkx1p5w0l5jh6g8f0qbcv0alw9xr2gkbhfs0rpbv5canl7f"; depends=[gower parsnip]; };
   imputeLCMD = derive2 { name="imputeLCMD"; version="2.0"; sha256="10v3iv1iw6mnss6ry836crq9zdgid2y1h3pvigzjsrmnp5n89mfz"; depends=[impute norm pcaMethods tmvtnorm]; };
   imputeMDR = derive2 { name="imputeMDR"; version="1.1.2"; sha256="0ds5a4wav9vb9z5nji8hv5l76310rd970xf702fd0ckx1sh6rgd7"; depends=[]; };
   imputeMissings = derive2 { name="imputeMissings"; version="0.0.3"; sha256="1dfhi235j1qz2mv89j92b903j5mdwlzisiyvvi9mmiacdj5ln89z"; depends=[randomForest]; };
   imputeMulti = derive2 { name="imputeMulti"; version="0.8.3"; sha256="0vk5fz6cr14czr2ycvvc1xh2cdf0k7sw0jbbjaf7dp8i4hr1j1vn"; depends=[data_table gtools Rcpp]; };
-  imputePSF = derive2 { name="imputePSF"; version="0.1.0"; sha256="0xfd2mybg0cbi3n35j28s4xq4iwr5rq4mqwgdqml7l2rlzidcwc8"; depends=[PSF]; };
   imputeR = derive2 { name="imputeR"; version="2.2"; sha256="0jfyl6k285x4lc58q13fhi004l4yaqas0d4g08rx78ml7p6l1r48"; depends=[reshape2]; };
   imputeTS = derive2 { name="imputeTS"; version="3.2"; sha256="19kzwa4xih7y1rilgqa945d35agma9qfnj9fraancy49b06axrx9"; depends=[forecast ggplot2 ggtext magrittr Rcpp stinepack]; };
   imputeTestbench = derive2 { name="imputeTestbench"; version="3.0.3"; sha256="0yc1l3r7g7x2pgyli6j08ikvsbvr24kijnn7pdj54blw7c0pdmm2"; depends=[dplyr forecast ggplot2 imputeTS reshape2 tidyr zoo]; };
   imputeYn = derive2 { name="imputeYn"; version="1.3"; sha256="1b21w1aa5f7yiq8k0wa86wvbg4ij7f6ldwn6asfqwb0b90rvsgvs"; depends=[boot emplik mvtnorm quadprog survival]; };
   imsig = derive2 { name="imsig"; version="1.1.3"; sha256="175is0b39grc609dskv9274czv4iwnmlg81dl4nr01xdp6f7g487"; depends=[ggplot2 gridExtra HiClimR igraph RColorBrewer survival]; };
   in2extRemes = derive2 { name="in2extRemes"; version="1.0-3"; sha256="1lgsqm29zmjyf8kynyra2p3q7bs4fyd7ac4v6s3pbahzhhzdk94y"; depends=[extRemes]; };
-  inTextSummaryTable = derive2 { name="inTextSummaryTable"; version="3.1.0"; sha256="0a7r6k1fkky0x13z2shy6smkh0nl7pm8kkyk001f4s8g008v2bc2"; depends=[clinUtils cowplot flextable ggplot2 ggrepel magrittr officer plyr reshape2 scales]; };
+  inTextSummaryTable = derive2 { name="inTextSummaryTable"; version="3.1.1"; sha256="0js287j0bz7plc9xaclksvss2xj43g735xczvxsfnydrma2wvhzi"; depends=[clinUtils cowplot flextable ggplot2 ggrepel magrittr officer plyr reshape2 scales]; };
   inaparc = derive2 { name="inaparc"; version="1.1.0"; sha256="0ni34bkl7v1ypci8j8qhkfbf7gnx77wi4v9w1ww18z2jizsrk5h3"; depends=[kpeaks lhs]; };
   inbreedR = derive2 { name="inbreedR"; version="0.3.3"; sha256="0g7h4jgmnbpm4c6pb6fkmpzdg4adkc0k72444jpxbvyddq3hqh24"; depends=[data_table]; };
   incR = derive2 { name="incR"; version="1.1.0"; sha256="0q41bs7pf6hqyfwvcwc2sxq44jq95qq3qsddz53f8gphwjsyf1v7"; depends=[dplyr ggplot2 lubridate maptools rgeos]; };
@@ -11072,16 +11110,15 @@ in with self; {
   indelmiss = derive2 { name="indelmiss"; version="1.0.9"; sha256="0i4qnvc0xb3ngnk8xdscmx7qnicfs7s6czawf6schb1nh2pjpzyq"; depends=[ape numDeriv phangorn Rcpp]; };
   independence = derive2 { name="independence"; version="1.0.1"; sha256="0yln5wd8m5fgh4h7k80vq22byf06k4d6574zxyqcig63hls7v568"; depends=[Rcpp]; };
   index0 = derive2 { name="index0"; version="0.0.1"; sha256="1kdjc86312a9x800h0i7z0z7bwbxyrqds8wnrm15aljkvk83xwxl"; depends=[]; };
-  indicspecies = derive2 { name="indicspecies"; version="1.7.9"; sha256="1xza0ha42frz5wizf268j49y3201vpsm4kgj0czsw9wygzjl008f"; depends=[permute]; };
+  indicspecies = derive2 { name="indicspecies"; version="1.7.12"; sha256="0ihlbbqygjpp6ynpk047f6n041fghhcyy9xkkgvrciqqvnif17vq"; depends=[permute]; };
   indiedown = derive2 { name="indiedown"; version="0.1.1"; sha256="0r46r6s0asd182gs5map4wilhfb7jhgrcinnl36ib3q1xxn06457"; depends=[cli fs gfonts rlang withr]; };
-  indirect = derive2 { name="indirect"; version="0.2.0"; sha256="1k7xwsx655nzl43s1mkaysyn5gydq973gynmqip67lssnm7cnch4"; depends=[gplots MASS]; };
+  indirect = derive2 { name="indirect"; version="0.2.1"; sha256="1iaks18xcxqr2afzbzgxj4jr77p6gw2zmgb1398cgqkgdwb1yj13"; depends=[gplots MASS]; };
   individual = derive2 { name="individual"; version="0.1.7"; sha256="0by56qwxdgrb8f1x8d1yv5alf22m375a6gjcr3i31hvzn53ncc6w"; depends=[R6 Rcpp testthat]; };
   industRial = derive2 { name="industRial"; version="0.1.0"; sha256="0zgnykbr71pi3nii178ijmzd8ijwf3g8y8yz6g3jy4c0by7w676s"; depends=[dplyr ggplot2 lattice magrittr rlang SixSigma tidyr]; };
   inegiR = derive2 { name="inegiR"; version="3.0.0"; sha256="1rhkdmpz7mxi7ddyygss5rlh3c8hgxhzdk3fnvnlizc1l55cc6c0"; depends=[jsonlite lubridate plyr tibbletime XML zoo]; };
   ineq = derive2 { name="ineq"; version="0.2-13"; sha256="09fsxyrh0j7mwmb5hkhmrzgcy7kf85jxkh7zlwpgqgcsyl1n91z0"; depends=[]; };
   ineqJD = derive2 { name="ineqJD"; version="1.0"; sha256="0anv384jwzn5gkc0jqsl81bkmrjd21br99c5q30xd6ncxavj4s57"; depends=[]; };
   infer = derive2 { name="infer"; version="1.0.0"; sha256="1qbpcn7jqbvgwnpiyylj021j8m33p58a204yd1pfkpzd3x2lbsm6"; depends=[broom dplyr generics ggplot2 glue magrittr patchwork purrr rlang tibble tidyr]; };
-  inference = derive2 { name="inference"; version="0.1.0"; sha256="0j92isfkbhk13yx2hd3a5dd7ikcbgjc04zisd1n5kmg6ajw2aj6r"; depends=[sandwich]; };
   inferference = derive2 { name="inferference"; version="1.0.2"; sha256="171h9zhvaza7fklcg07wk9sm8k2fy39k3cdjkzb3vk8p8acd051v"; depends=[Formula lme4 numDeriv]; };
   inferr = derive2 { name="inferr"; version="0.3.1"; sha256="1ma90f31jcd65l5v3wqbx4x61gw3iay1a2hwjsd5aln1ivbgmzsv"; depends=[data_table magrittr Rcpp]; };
   infinitefactor = derive2 { name="infinitefactor"; version="1.0"; sha256="0j6f9q8z81znwakyx4h0l8ypz0y4yv11d7l3rwljmn4rgspyjl5c"; depends=[ggplot2 Rcpp RcppArmadillo reshape2]; };
@@ -11118,7 +11155,7 @@ in with self; {
   insect = derive2 { name="insect"; version="1.4.2"; sha256="0pbac9il1jrhii0hxvvqjc3phyr2iamxwzanxx5mrkyjh2wsl3jh"; depends=[ape aphid kmer openssl phylogram RANN seqinr xml2]; };
   insee = derive2 { name="insee"; version="1.1.3"; sha256="103b9aw6afq169k839lydfc904wqrwh1bh2r69wa2s61rpwiinwc"; depends=[crayon dplyr httr openssl purrr rappdirs readsdmx rlang stringr tibble tidyselect xml2]; };
   insiderTrades = derive2 { name="insiderTrades"; version="0.0.1"; sha256="1hz2jmghfihbn1dbrr38zlwa0s44gm84pjhhk0yfrnljg9mqf4qy"; depends=[magrittr RCurl stringr]; };
-  insight = derive2 { name="insight"; version="0.15.0"; sha256="1vizx515a24v5x4f5mzbigl0wl4gz75hp5gqw8lkijygw71li8fn"; depends=[]; };
+  insight = derive2 { name="insight"; version="0.16.0"; sha256="0gcyps0889rys04bj70br5zfvzcqxd55yawykmns17n9hsixfi3r"; depends=[]; };
   insol = derive2 { name="insol"; version="1.2.2"; sha256="166kgxgzbh55y2qqya6c2si22x0v7asi70im054g6xxwc5187kh3"; depends=[raster]; };
   inspectdf = derive2 { name="inspectdf"; version="0.0.11"; sha256="19ainhxgda58cb70gwxki618wln1v1k4iwvnlvy6s7aldry4wgc4"; depends=[dplyr ggfittext ggplot2 magrittr progress Rcpp tibble tidyr]; };
   inspector = derive2 { name="inspector"; version="1.0.3"; sha256="16gc98af6wmwf32fz8zml5v17g5lkiybzyzsqgphx0k19hrbc6kr"; depends=[Rdpack]; };
@@ -11141,6 +11178,7 @@ in with self; {
   intensity_analysis = derive2 { name="intensity.analysis"; version="0.1.6"; sha256="1ydmn7njqk6i2667zaha8mvfndss4im39czadg1f3z6sndp2lsji"; depends=[diffeR ggplot2 raster reshape2 rgdal]; };
   intensitynet = derive2 { name="intensitynet"; version="1.0.0"; sha256="1mwgz8rp180x7n08clqr0g19f0kxnparv10k98ysxq7shpwqimr1"; depends=[ggplot2 igraph intergraph Matrix sna spatstat_geom spdep viridis]; };
   interactionR = derive2 { name="interactionR"; version="0.1.3"; sha256="1wckp3vz06ary2ydk22iykp1ck3i0bqhq51d8jyafq2h0rjhkyc8"; depends=[car flextable msm officer]; };
+  interactionRCS = derive2 { name="interactionRCS"; version="0.1.0"; sha256="07yhcgp9jc0fd29drsvdcpg8hw3zafr3njkx4qa5qhp3jsn0m3pm"; depends=[boot mlbench msm pryr pspline rms survival]; };
   interactionTest = derive2 { name="interactionTest"; version="1.2"; sha256="0ycr839l07xahakr4r2jvlmd0fcxfm4qi3g8agnyh24c2kwl3ck2"; depends=[]; };
   interactions = derive2 { name="interactions"; version="1.1.5"; sha256="16lrlj0rc9bkxgmackpvcx8wx9pbsnr55vak6zx022ss820h3ljj"; depends=[cli crayon generics ggplot2 jtools rlang tibble]; };
   interep = derive2 { name="interep"; version="0.3.2"; sha256="1a4ws8wsrlkiq8dxrx85cq758dim3ym0sirag1k7hhv6pl825cxs"; depends=[MASS Rcpp RcppArmadillo]; };
@@ -11162,7 +11200,7 @@ in with self; {
   intervals = derive2 { name="intervals"; version="0.15.2"; sha256="0mvwfwc03ifb30a3dzbmkv9adwqb8ajxhcw24d8xip8px063plhb"; depends=[]; };
   intervcomp = derive2 { name="intervcomp"; version="0.1.2"; sha256="1l6x1fl84li6is3b92b96q3fbv0rpgqy2lvw9cbi2cq8nh9imnyx"; depends=[]; };
   interventionalDBN = derive2 { name="interventionalDBN"; version="1.2.2"; sha256="0wpp4bfi22ncvl0vdivniwwvcqgnpifpgxb4g5jbyvr0z735cd9w"; depends=[]; };
-  inti = derive2 { name="inti"; version="0.5.2"; sha256="1h0xkp9lqqqly5ldjz6ycja9b1q62ydysihjz2w7ajvrkjxhagbs"; depends=[agricolae dplyr DT emmeans FactoMineR ggplot2 lme4 purrr shiny stringi stringr tibble tidyr]; };
+  inti = derive2 { name="inti"; version="0.5.4"; sha256="1y6hpxhish3byrd3jlsinhwwfvz4mpcmhbhzxc2fjwyc4a3h36kh"; depends=[agricolae dplyr DT emmeans FactoMineR ggplot2 lme4 purrr shiny stringi stringr tibble tidyr]; };
   intkrige = derive2 { name="intkrige"; version="1.0.1"; sha256="1p3fn5nzn1iliy025187k590qrsw3z3d47p67gzwwd6h050yrl86"; depends=[gstat raster Rcpp RcppArmadillo Rdpack sp]; };
   intmed = derive2 { name="intmed"; version="0.1.2"; sha256="0amcqzinj35yvb9nfy808bz098dqmnds13z335lgqm6sykriyjpl"; depends=[doParallel dplyr foreach MASS mice stringr tibble]; };
   intrinsicDimension = derive2 { name="intrinsicDimension"; version="1.2.0"; sha256="0cka20ifxx9njnvp18bzhrvmh3cwjnxkc0a23qzi43dahc51ijbc"; depends=[yaImpute]; };
@@ -11179,6 +11217,7 @@ in with self; {
   invctr = derive2 { name="invctr"; version="0.1.0"; sha256="0jrbr53kvwrf800z18vz9df9bk7swpd4avnyf59ggz2bc0z2ijwk"; depends=[plyr rlang]; };
   inventorize = derive2 { name="inventorize"; version="1.0.6"; sha256="01rwqqljmlk5bwnvlx0qy6n67q2swjcxp90fp2wipyvl1f46h3m1"; depends=[dplyr ggplot2 magrittr plotly plyr tidyr]; };
   inverseRegex = derive2 { name="inverseRegex"; version="0.1.0"; sha256="1wk3ac2rfy0m8442sa2m75s6l3wadx4d4cwas6c8n2xqkrphci87"; depends=[]; };
+  invertiforms = derive2 { name="invertiforms"; version="0.1.0"; sha256="131h5dlyj38bis2rk2ji3dpdd45iiavfwb4d6cf0gn8rr7ldkwgl"; depends=[glue Matrix sparseLRMatrix]; };
   investr = derive2 { name="investr"; version="1.4.0"; sha256="0l47bfwxssfr3maprkpwnmgxnxccl3ch4grc7f968iiqk83mcxw9"; depends=[nlme]; };
   invgamma = derive2 { name="invgamma"; version="1.1"; sha256="12ga2y4wc9bc5zz6vimvxwgjpsx3ys3209nq63gscbw559ydxa5a"; depends=[]; };
   io = derive2 { name="io"; version="0.3.2"; sha256="1cyl8wvbngdrdkkckng1bs699rjp737j99kbd8r155fjj0370nx4"; depends=[filenamer stringr]; };
@@ -11188,7 +11227,7 @@ in with self; {
   ionr = derive2 { name="ionr"; version="0.3.0"; sha256="18rv5n5gihb6pz36s45yj17sdjsbj4485k4lnggdjj1gbbjkz2ni"; depends=[gplots psych]; };
   iopsych = derive2 { name="iopsych"; version="0.90.1"; sha256="0adxwxnb1zdlld3icdggx7cq6cp8z4h1jf105485w322a8c6s9ik"; depends=[mco mvtnorm]; };
   iosmooth = derive2 { name="iosmooth"; version="0.94"; sha256="06xgzhjgb6pznjzfli193q7kn8sh5jmqsssgymwj98bw7iwn4q3z"; depends=[]; };
-  iotables = derive2 { name="iotables"; version="0.4.7"; sha256="0v8ixajmdxi1rczdxvl8kzqmj3yg2ihblg5x1bx044lp489mk4mw"; depends=[assertthat dplyr eurostat forcats glue kableExtra knitr lubridate magrittr plyr readxl rlang tibble tidyr]; };
+  iotables = derive2 { name="iotables"; version="0.9"; sha256="0kjy6lh9s8x7fdm9pnp52zj2rgrkm89fjwfdhffmah4n3ra13664"; depends=[assertthat dplyr eurostat forcats glue kableExtra knitr lubridate magrittr plyr readxl rlang tibble tidyr tidyselect]; };
   iotools = derive2 { name="iotools"; version="0.3-2"; sha256="07q0z0kszm1xx5hfhisfliyrcsxd8dc5mx0a2bwwnv5l1xzmix17"; depends=[]; };
   ip2location = derive2 { name="ip2location"; version="8.0.1"; sha256="0mf6ncckjjrq4dvd8pifz4izn4vqmsqq0pw36gm1zqzbyyvmqqya"; depends=[jsonlite reticulate stringr]; };
   ip2proxy = derive2 { name="ip2proxy"; version="1.1.0"; sha256="1hs7n33cn2drqig0p2ns0bnyx2af58x2rslih3yj85xx0dn87qgp"; depends=[jsonlite reticulate stringr]; };
@@ -11206,7 +11245,6 @@ in with self; {
   ipkg = derive2 { name="ipkg"; version="1.0.4"; sha256="12ddzqfdvz98568kwzrhlxv5j51g2qmxi2jyyvfm39rxncvsgrx1"; depends=[remotes]; };
   iplots = derive2 { name="iplots"; version="1.1-7.1"; sha256="1bz8n9cnx6zy3wsr49h55r0l5ikfl0xjg4r76fi4giid2a3ba4lf"; depends=[png rJava]; };
   ipmr = derive2 { name="ipmr"; version="0.0.4"; sha256="1j1dkfgglsx80872ck2hfd2bl4f2hzhfmlnlvyw6vdj2cnh728jv"; depends=[magrittr purrr Rcpp rlang]; };
-  ipptoolbox = derive2 { name="ipptoolbox"; version="1.2"; sha256="0scbny4crgr23qcp0vgsxhwmj5g5q5c1c4mb5mmb5njyvc34s01l"; depends=[AlgDesign copula evd kolmim triangle]; };
   ipr = derive2 { name="ipr"; version="0.1.0"; sha256="1db06r784c6jga0anp6p5b3k47yfhr84nzxyjn52pc9zkg3yifjm"; depends=[]; };
   ipred = derive2 { name="ipred"; version="0.9-12"; sha256="0hsq00382pfd9hzpcgphjxazbxm4zx0k2r6pk6kib56k0ibm7qfn"; depends=[class MASS nnet prodlim rpart survival]; };
   iprior = derive2 { name="iprior"; version="0.7.3"; sha256="15qzqwikxy85fcd7psz363b5wb0kpi85icfyb47hbgdhln8fi2qb"; depends=[doSNOW foreach ggplot2 mvtnorm Rcpp RcppEigen reshape2 scales]; };
@@ -11218,6 +11256,7 @@ in with self; {
   ipwErrorY = derive2 { name="ipwErrorY"; version="2.1"; sha256="14p22mwc120kdlf6r1hfx4kp7nqrz2nl2vpvy45j8rbrc571b6ka"; depends=[nleqslv]; };
   iqLearn = derive2 { name="iqLearn"; version="1.5"; sha256="1zn43zvx0mjzh96bm73scacmladamy8jmhxim7hcfq39cfhiw3c8"; depends=[]; };
   irace = derive2 { name="irace"; version="3.4.1"; sha256="1dhlspv1gqg7cm7j95zhl0k2zr0s159krjmxm07k5fp68ax95sky"; depends=[R6]; };
+  irboost = derive2 { name="irboost"; version="0.1-1.1"; sha256="03rgcmaahq1mhv15lid41n39wiqn4lrnc4q0rq25q7xg328vc9d5"; depends=[mpath xgboost]; };
   ircor = derive2 { name="ircor"; version="1.0"; sha256="07apa4l4ib11xw25d44b403s3la29sqlid13q41hjrlfxafm91ld"; depends=[]; };
   irg = derive2 { name="irg"; version="0.1.6"; sha256="1c9v5yk1512ga51356fjyl8zblw61p9m55vx89fy81qi0vcwxrgj"; depends=[chk data_table RcppRoll]; };
   iriR = derive2 { name="iriR"; version="0.2.2"; sha256="0dzjafj2bnp9ss173pmzx61l50rr9a5lpiljjlf7y1pai9k0aay8"; depends=[dplyr ggplot2 ggsci gsheet reshape2 scales WDI]; };
@@ -11240,7 +11279,7 @@ in with self; {
   isdals = derive2 { name="isdals"; version="2.0-4"; sha256="15p432fskdz2r8523cw122mfhvrq8vdsdsrd0kz9yfin4b5z3zfh"; depends=[]; };
   isdparser = derive2 { name="isdparser"; version="0.4.0"; sha256="05xkffmiiyhas5hzdjdylbrvh6fjc2fjh7s00iwjxkp4ba7rwq3g"; depends=[data_table lubridate tibble]; };
   isingLenzMC = derive2 { name="isingLenzMC"; version="0.2.5"; sha256="1pd1s3a1rv7vlxd5db1pgwdjps8w5im4zz2h3qzal9cwbis0hb51"; depends=[]; };
-  islasso = derive2 { name="islasso"; version="1.4.2"; sha256="0nks1ck5im83745argdkl53h2al3d23mmpws9qr688z800yxsznl"; depends=[glmnet Matrix]; };
+  islasso = derive2 { name="islasso"; version="1.4.3"; sha256="0ym8yxpqhs8msi5svqa3mzp3x4jd7j4d8aampwchpkzyp2306rmv"; depends=[glmnet Matrix]; };
   ismev = derive2 { name="ismev"; version="1.42"; sha256="19giigxwf62cdkf7mglsca649n2ignb9bxyg9zl7im1vm3ngnmqd"; depends=[mgcv]; };
   isni = derive2 { name="isni"; version="1.3"; sha256="02a4vbhk26w796kxsyzqfp3bqxn64byfd5x5qma09lmdaxzmm71m"; depends=[Formula lme4 matrixcalc mvtnorm nlme nnet]; };
   isnullptr = derive2 { name="isnullptr"; version="1.0.1"; sha256="0kwjxq59n3qncdw63vsdvz7v5mzbl5lmckdfgiiw35pzmahnxzh9"; depends=[]; };
@@ -11257,17 +11296,16 @@ in with self; {
   isokernel = derive2 { name="isokernel"; version="0.1.0"; sha256="04mrbq2822yhcq4q82xwm61a38zsk6w55jgjkp0xnardpv8a39pb"; depends=[Matrix RANN]; };
   isopam = derive2 { name="isopam"; version="0.9-13"; sha256="0y1yy0922kq5jxyc40gz8sk9vlzwfkfg5swmc6lk4007g9mgc8fm"; depends=[cluster vegan]; };
   isopat = derive2 { name="isopat"; version="1.0"; sha256="0fznvgycyd35dh7pbq1xhp667gsficlmycn5pcrqcbs89069xr1s"; depends=[]; };
-  isoreader = derive2 { name="isoreader"; version="1.3.2"; sha256="0d0h57imbis7g58gdn7j0pwmc1s71b8ymqwqkg3byagd0yhrxf0w"; depends=[dplyr future glue lubridate magrittr progress purrr R_utils readr rlang stringr tibble tidyr tidyselect UNF vctrs]; };
   isotone = derive2 { name="isotone"; version="1.1-0"; sha256="0alk0cma5h3yn4w2nqcahprijsm89b0gby9najbngzi5vnxr6nvn"; depends=[nnls]; };
   isotonic_pen = derive2 { name="isotonic.pen"; version="1.0"; sha256="1lgw15df08f4dhrjjfr0jqkcvxwad92kflj2px526pcxwkj7cj3i"; depends=[coneproj Matrix]; };
-  isotracer = derive2 { name="isotracer"; version="1.1.0"; sha256="14px45yqr0xgaqj7ssn2mb9n3gf6vpl6mvfg4qav6y082w5bgrgl"; depends=[BH coda data_table dplyr latex2exp magrittr pillar purrr Rcpp RcppEigen rlang rstan rstantools StanHeaders tibble tidyr tidyselect]; };
-  isotree = derive2 { name="isotree"; version="0.5.5"; sha256="0w54rn3nq9qdqfjhliqfh4qzzm4q9gp8l8b9vvn72srq1svz3ir2"; depends=[Rcpp]; };
+  isotracer = derive2 { name="isotracer"; version="1.1.2"; sha256="1p78p6604hcrnjvahk6q9dqcg6fcqgbqanrc820zxixn34k49v15"; depends=[BH coda data_table dplyr latex2exp magrittr pillar purrr Rcpp RcppEigen rlang rstan StanHeaders tibble tidyr tidyselect]; };
+  isotree = derive2 { name="isotree"; version="0.5.14"; sha256="1bza63nm9sxlr126rilvlvpc43dng0ln4mp40lwb5s8xiv5qai29"; depends=[Rcpp]; };
   ispd = derive2 { name="ispd"; version="0.2"; sha256="06h4z342d17rkpr2wwck4sq79kprdq6fgqf10jg8cs1f52q6pq0h"; depends=[ibd]; };
   isqg = derive2 { name="isqg"; version="1.3"; sha256="1988bc5n4b5mgxrfl1774vfgaw7rxm9vlaxnkx26phjzhlr1ix9h"; depends=[BH R6 Rcpp Rdpack]; };
   istacr = derive2 { name="istacr"; version="0.1.3"; sha256="14nhd3v8l827mb1fxfhsxklzxbf4316ijp2qkc99qp7ydmxbk0rd"; depends=[curl jsonlite]; };
   isva = derive2 { name="isva"; version="1.9"; sha256="05qx9q0kg4ma23v4abhihw0vz017nq6hv2jzsiqx4d20ngh1dl4z"; depends=[fastICA JADE qvalue]; };
   italy = derive2 { name="italy"; version="0.1.0"; sha256="0is90xp6980ja12jzi3816jq1y90ifcw6cvfmybb7invj6rr1cks"; depends=[]; };
-  itan = derive2 { name="itan"; version="2.0.1"; sha256="0bvdi18dmjvxf5wrvipsf1q2bsmiwh2pb57kyrb2zlkfz3hz53ww"; depends=[ggplot2 reshape]; };
+  itan = derive2 { name="itan"; version="3.1.1"; sha256="14aabrwvmqiyn8mypiaz80m24a0bczz2fl00f4dk9ham6hww4v1q"; depends=[ggplot2 reshape]; };
   itcSegment = derive2 { name="itcSegment"; version="0.8"; sha256="032wj34313m3wigdfalq356srdzg0cvnvxnaxwxws6bc44r78izf"; depends=[maptools raster rgeos sp]; };
   itdr = derive2 { name="itdr"; version="1.0"; sha256="1113lr17m370ipg3sxghqvk4fj36bgqs5bfvnli8rss2ffyzfin0"; depends=[MASS]; };
   iteRates = derive2 { name="iteRates"; version="3.1"; sha256="1dycmlm3vldc60wz2jjdfbla14383911zfahgal5mx8whxwq95c5"; depends=[ape apTreeshape geiger gtools MASS partitions VGAM]; };
@@ -11279,6 +11317,7 @@ in with self; {
   itraxR = derive2 { name="itraxR"; version="1.4"; sha256="0gybgzc37q1i2zdik1xjn1l6p98jx8r8k722fsgfb17pxj4l4bkf"; depends=[broom compositions dplyr ggcorrplot ggfortify ggplot2 janitor readr rlang stringr tibble tidyr tiff]; };
   its_analysis = derive2 { name="its.analysis"; version="1.6.0"; sha256="1ig7yq59y5xl1z182bbvgx8vsqs9sb1xscf6zxqn1qmy9f0ggf7v"; depends=[boot car forecast ggplot2 plyr]; };
   itsadug = derive2 { name="itsadug"; version="2.4"; sha256="0759l7hhvj05dp92pz59xwrxjm9s1iwkwrdhs68l0fq57550j70l"; depends=[mgcv plotfunctions]; };
+  itscalledsoccer = derive2 { name="itscalledsoccer"; version="0.1.0"; sha256="03ssjjzwjizmydy8534y27n020y2mvzdwinjckj96cfgrdw1px7m"; depends=[clisymbols crayon data_table dplyr glue httpcache httr jsonlite magrittr R6 rlang stringi tidyr]; };
   itsdm = derive2 { name="itsdm"; version="0.1.1"; sha256="17r9m726grqwfjyy6gmnagc0yav358sxgcglyyww7k39cbhmyk57"; depends=[checkmate dplyr ecospat fastshap ggplot2 isotree ncdf4 outliertree patchwork raster rlang ROCit sf stars stringr tidyselect]; };
   itsmr = derive2 { name="itsmr"; version="1.9"; sha256="0dmijaq6q31irwrjqv5gq1yfbgggwb3m6rwbg4lx1r9l3cqays7i"; depends=[]; };
   iva = derive2 { name="iva"; version="0.1.0"; sha256="0dchb263ygilxapwsw2gpl18z12wcjsz8zz5fg7h068hmcysa88g"; depends=[Formula ucminf]; };
@@ -11297,12 +11336,13 @@ in with self; {
   ivsacim = derive2 { name="ivsacim"; version="2.1.0"; sha256="0pldg086kaaqc2wab1m61anabqaf0mffv1hsb8plz1qn2f8gdcp3"; depends=[Rcpp RcppArmadillo]; };
   ivtools = derive2 { name="ivtools"; version="2.3.0"; sha256="1wv0r9dy893hafbbrjcjrphb8dgql71ya4zfbkl5dfp7d4ncfxl0"; depends=[ahaz data_table nleqslv numDeriv Rcpp survival]; };
   ivx = derive2 { name="ivx"; version="1.1.0"; sha256="1dg09aajk9rqmrlwq4xw7qd5ra1z8wjxipy5l85sl1nzii250drq"; depends=[Rcpp RcppArmadillo]; };
-  jSDM = derive2 { name="jSDM"; version="0.1.0"; sha256="0lkapg6v5lh53vnsg5hcr9qis8qimb6ilds23dqcyhi6w3dys9nb"; depends=[coda corrplot Rcpp RcppArmadillo RcppGSL]; };
+  jSDM = derive2 { name="jSDM"; version="0.2.0"; sha256="13l3xpk7qfwvsq3zbpiq20j6168f4xxric055vf5p1siw0akvsh1"; depends=[coda corrplot doParallel foreach MASS Rcpp RcppArmadillo RcppGSL stringi]; };
   jScore = derive2 { name="jScore"; version="0.1.0"; sha256="0hb63l10cwvpvix155d16v35lp1v88lp69f6q1s09njc6qdsg212"; depends=[]; };
   jSonarR = derive2 { name="jSonarR"; version="1.1.1"; sha256="054q3ly471xa64yyz2as6vkr440ip1y8n5wl6s3zbhqy3bqkdqif"; depends=[jsonlite RCurl]; };
+  jaatha = derive2 { name="jaatha"; version="3.2.2"; sha256="1if21hlbf0gz6p6f9h21cxdxcqxv3b54wx5zl4hmiaq9i6zrf8rr"; depends=[assertthat R6]; };
   jab_adverse_reactions = derive2 { name="jab.adverse.reactions"; version="1.0.1"; sha256="0z7i6ni1bhih5yxwng1xxf8cgg3bb1il3p32rp5vfz2hfdm68vag"; depends=[]; };
   jaccard = derive2 { name="jaccard"; version="0.1.0"; sha256="1dmla6qc1k8iw2d7zfjqhf13gqd2lpsrj09yh47ljf994fpab936"; depends=[dplyr magrittr qvalue Rcpp]; };
-  jack = derive2 { name="jack"; version="1.1.1"; sha256="1mp7cfmh3bzfansb3dyqq347qk6kkf4ndn23pbd78h1xcb54555b"; depends=[DescTools gmp multicool mvp partitions]; };
+  jack = derive2 { name="jack"; version="2.0.0"; sha256="1pm2d1k138qfz3rvvh83ybyvgr687y95c352629lyy1j87bsd15g"; depends=[DescTools gmp JuliaConnectoR multicool mvp partitions Ryacas]; };
   jackalope = derive2 { name="jackalope"; version="1.1.3"; sha256="1cslrl2cvcpi2kisb2plkz8c3wfxkbkf816nnyb06k4mv3gy4r5d"; depends=[ape R6 Rcpp RcppArmadillo RcppProgress Rhtslib zlibbioc]; };
   jackknifeKME = derive2 { name="jackknifeKME"; version="1.2"; sha256="0c5shl6s46kz7a623gccqk2plrrf2g29nwr6vbny6009pq3jvzam"; depends=[imputeYn]; };
   jackstrap = derive2 { name="jackstrap"; version="0.1.0"; sha256="09y9pgb920lnbzlgm6j188q8lw1air83kx383a2f89zz7hhgg7jr"; depends=[Benchmarking doParallel dplyr fBasics foreach ggplot2 plyr reshape rlang scales tidyr]; };
@@ -11327,7 +11367,7 @@ in with self; {
   jenga = derive2 { name="jenga"; version="1.0.0"; sha256="1lnqvq979yw3im2cll2bynqafgcs81ndqkzi37smys4fnlb7kyi6"; depends=[abind ggplot2 imputeTS lubridate modeest moments narray philentropy purrr readr scales stringr tictoc]; };
   jetpack = derive2 { name="jetpack"; version="0.5.2"; sha256="15hmkppq775crmwichg0fsg3ki7xqfavm9bz4li79armyiry44w2"; depends=[desc docopt remotes renv]; };
   jetset = derive2 { name="jetset"; version="3.4.0"; sha256="0c99h5npsv2gf5d59s4qhkaqmjhbwa3prcykk24wzhnpfq6y6xhp"; depends=[AnnotationDbi org_Hs_eg_db]; };
-  jfa = derive2 { name="jfa"; version="0.6.2"; sha256="12lm051zslby401417p6r150cjv64lrz8q9534lwsynbihiad7aw"; depends=[extraDistr]; };
+  jfa = derive2 { name="jfa"; version="0.6.3"; sha256="1p4lw8yfkrw7187q4pcjai3ly5xlxvivwghi61jh89zrq8n54vbb"; depends=[extraDistr]; };
   jgcricolors = derive2 { name="jgcricolors"; version="1.0.0"; sha256="1lg6yzqly5y2cf396b6rvfqplnfyz9v9ay2g4q9m110mng5ln96l"; depends=[ggplot2 knitr markdown RColorBrewer stringr]; };
   jiebaR = derive2 { name="jiebaR"; version="0.11"; sha256="08v64xwr9jp4vh88x7y935khh4cmj8rwsjaxfd2c67n0445qppmd"; depends=[jiebaRD Rcpp]; };
   jiebaRD = derive2 { name="jiebaRD"; version="0.1"; sha256="1wadpcdca4pm56r8q22y4axmqdbb2dazsh2vlhjy73rpymqfcph4"; depends=[]; };
@@ -11342,7 +11382,7 @@ in with self; {
   jmotif = derive2 { name="jmotif"; version="1.1.1"; sha256="0b2qllpfgs6q5fwfhxl5b4xdyzbvnja7ld766akf0xxznxvglkrg"; depends=[Rcpp RcppArmadillo]; };
   jmuOutlier = derive2 { name="jmuOutlier"; version="2.2"; sha256="1vj9n1hsf780f7l0a22kmi3qm84j4dzjybjkh5zwh6bhwfjnjws3"; depends=[]; };
   jmv = derive2 { name="jmv"; version="2.0"; sha256="0fhjp3ih46r34yiqxbd2kpwp88nhyrqfwh729l14sj3aw142nlbi"; depends=[afex BayesFactor car emmeans GGally ggplot2 ggridges GPArotation jmvcore lavaan MASS multcomp mvnormtest nnet PMCMR psych R6 ROCR vcd vcdExtra]; };
-  jmvReadWrite = derive2 { name="jmvReadWrite"; version="0.2.4"; sha256="1sn17bbc7qijpv8z7libqx92ww1rp608dj9hbjbfraf6fjs5fq7q"; depends=[rjson zip]; };
+  jmvReadWrite = derive2 { name="jmvReadWrite"; version="0.3.1"; sha256="0yg6j122x9hcyjw5lfdz6fj4mpj5w8z3cdn9nlfi79yl7ivzf9dm"; depends=[rjson zip]; };
   jmvconnect = derive2 { name="jmvconnect"; version="2.0.0"; sha256="1q412v8z0wbiqab4czabg75w976591lh59gbbhqz1avkas3jjhf2"; depends=[BH evaluate httr jmvcore rappdirs Rcpp]; };
   jmvcore = derive2 { name="jmvcore"; version="2.2"; sha256="009hkg378vfkzxbz323m7zfmfyh0j742xf4381qb6s81v3wmg4dq"; depends=[base64enc jsonlite R6 rlang stringi]; };
   job = derive2 { name="job"; version="0.3.0"; sha256="0d7pw3q5lqlgmav1vx63y8l6gdav96656bg378wj001rx5gx052h"; depends=[digest rstudioapi]; };
@@ -11357,7 +11397,7 @@ in with self; {
   jointNmix = derive2 { name="jointNmix"; version="1.0"; sha256="0ibh7hqkpzlfk3bk4d2dd64jhr8cvw563k082vwnljiam7k5nj4b"; depends=[]; };
   jointPm = derive2 { name="jointPm"; version="2.3.1"; sha256="1c2cn9sqwfyv9ksd63w8rrz0kh18jm2wv2sfdkgncjb7vfs4hbv9"; depends=[]; };
   jointseg = derive2 { name="jointseg"; version="1.0.2"; sha256="0zilkxk30w3l9mwikmsgvpy5misjggs98c3bjrjy1pfc4b0is943"; depends=[acnr DNAcopy matrixStats]; };
-  jomo = derive2 { name="jomo"; version="2.7-2"; sha256="1sbcpacxnxbzwa8rr9x2bq7hh0s3sw6yznr90dkp43n6xk5xaqir"; depends=[lme4 MASS ordinal survival]; };
+  jomo = derive2 { name="jomo"; version="2.7-3"; sha256="0qq03zspmh8x2c8w882ynsw7wshr9b0fyrpwnqx5yc1xlzrqffcx"; depends=[lme4 MASS ordinal survival tibble]; };
   jordan = derive2 { name="jordan"; version="1.0-1"; sha256="1d0my0lf8bmlmygz9f23skywzsrhy4xaykyrblbmhb00l0vxpa5s"; depends=[emulator mathjaxr onion]; };
   josaplay = derive2 { name="josaplay"; version="0.1.3"; sha256="0q6kjk3mjxwbqvq3zz0ylpi1viznp9pxzngqpjzv5sibv0ndh0lf"; depends=[magrittr utf8]; };
   jose = derive2 { name="jose"; version="1.2.0"; sha256="09k6wnnqlsbmlag4156rcsnavph52grqagkax9kd1sxgpknril3v"; depends=[jsonlite openssl]; };
@@ -11365,6 +11405,7 @@ in with self; {
   joyn = derive2 { name="joyn"; version="0.1.4"; sha256="17x9rwcrqv7qx9w0cfyshjsij9cdl0fk13cfqbv0ibnc2nfycw87"; depends=[cli data_table glue rlang]; };
   jpeg = derive2 { name="jpeg"; version="0.1-9"; sha256="0wihj538wdnr71wdldym83qadb4kh68a6rkallwbh2f25r27b881"; depends=[]; };
   jpmesh = derive2 { name="jpmesh"; version="2.1.0"; sha256="0q8adf582h92qwdwgh4dk53s8rixrrh96r8vzy6bwxvizqf0i3y8"; depends=[leaflet magrittr memoise miniUI purrr rlang sf shiny tibble units vctrs]; };
+  jpstat = derive2 { name="jpstat"; version="0.2.0"; sha256="051mlyxd3xbik8fw1343xi72smmbaz6lvyn340m745y4jjx48006"; depends=[dplyr httr lubridate navigatr pillar progress purrr rlang stringi stringr tibble tidyr vctrs]; };
   jqr = derive2 { name="jqr"; version="1.2.2"; sha256="1v3qjqblwn15mlw3cgmrmh78kcckqrj54wnfyfhrfxdsiqi5d0dk"; depends=[lazyeval magrittr]; };
   jquerylib = derive2 { name="jquerylib"; version="0.1.4"; sha256="04a40v4znpj98j7y6009d74a6g9dchj5rr3p08cgz9p3rlfw3g7h"; depends=[htmltools]; };
   jrc = derive2 { name="jrc"; version="0.5.1"; sha256="0lg647nfijj6grlmwkasd6di5h6286dxmw1373k6n5gwym1g1l36"; depends=[httpuv jsonlite mime R_utils R6 stringi stringr]; };
@@ -11373,14 +11414,14 @@ in with self; {
   jrvFinance = derive2 { name="jrvFinance"; version="1.4.3"; sha256="0g3w65avys5chni0zlahzwqgv09z9na08yhay385ax33ddwrcrjv"; depends=[]; };
   js = derive2 { name="js"; version="1.2"; sha256="0s5rj845255a4fzv4h76gcnnqyl5cg3c03r2ay3f00jxnxvvigcg"; depends=[V8]; };
   jsTree = derive2 { name="jsTree"; version="1.2"; sha256="06mmz55brm6w19vnlk1w8qaz0n3czlyl4fs62nzgdlsdjn8pad1h"; depends=[data_table htmltools htmlwidgets jsonlite]; };
-  jsTreeR = derive2 { name="jsTreeR"; version="1.5.0"; sha256="1bi36ic69a44191w5c7fkwvy2jq4rf7p5pklirrdwbdkhzirhgp2"; depends=[base64enc fontawesome htmltools htmlwidgets jquerylib miniUI R_utils rstudioapi shiny shinyAce]; };
+  jsTreeR = derive2 { name="jsTreeR"; version="1.6.0"; sha256="0dq9616dcg9pmrj8gn2njfqh509f7syyy10kmlpdcry9fji8msz6"; depends=[base64enc fontawesome htmltools htmlwidgets jquerylib miniUI R_utils rstudioapi shiny shinyAce]; };
   jskm = derive2 { name="jskm"; version="0.4.3"; sha256="04bm4haylhjj5wf09jmpznav7shnlnhag7kxl4yqp3z5572dvj1g"; depends=[ggplot2 gridExtra scales survey survival]; };
   jsmodule = derive2 { name="jsmodule"; version="1.3.0"; sha256="0a8ckml3i792y0ddff34l686f07vl1bqrs6q3gjmqs0hcrwl0lll"; depends=[data_table devEMF DT epiDisplay geepack GGally ggplot2 ggpubr haven Hmisc jskm jstable labelled MatchIt maxstat officer pROC purrr RColorBrewer readr readxl rstudioapi rvg see shiny shinycustomloader shinyWidgets survC1 survey survIDINRI survival timeROC]; };
   json64 = derive2 { name="json64"; version="0.1.3"; sha256="19q8qgf4wnd3np12ajy180klpjy0g2csw5micwb4sl7qfzl6wc7j"; depends=[jsonlite]; };
   jsonStrings = derive2 { name="jsonStrings"; version="1.0.0"; sha256="1rcgfzcbypmq2fcngl63ik6z13ir1687ya8aww2v8bk56h19pdxa"; depends=[Rcpp]; };
   jsonify = derive2 { name="jsonify"; version="1.2.1"; sha256="1kpv6whi6bggi0ij7krzfr0fly6c2j9y54fr5ahgcjp36amr34cj"; depends=[rapidjsonr Rcpp]; };
   jsonld = derive2 { name="jsonld"; version="2.2"; sha256="0bplz2s97wl9yp383jazykh5647iw6kbr1zanqai2s0sxp1xbwn8"; depends=[curl jsonlite V8]; };
-  jsonlite = derive2 { name="jsonlite"; version="1.7.3"; sha256="0n65x9ifxjssb000g7psgh9pgl374ax2ni1if9kp3sx56rg0n2kj"; depends=[]; };
+  jsonlite = derive2 { name="jsonlite"; version="1.8.0"; sha256="0k6dal7gmm19jl5sjsry5gwbnhsbrnn00q3iixig8k6bxgpr463v"; depends=[]; };
   jsonstat = derive2 { name="jsonstat"; version="0.0.2"; sha256="0p0d3snl1971p5ikrkmwqrjjh4fy0b89qk3rnd1dayfb0r80xnnj"; depends=[cli dplyr jsonlite rlang]; };
   jsontools = derive2 { name="jsontools"; version="0.1.0"; sha256="13i1g8lmzgs7hd0xay4gm8z2myzbjzi73fwp9x4f4f9mywj7zl5s"; depends=[bit64 DBI glue jsonlite magrittr pillar purrr rlang RSQLite tibble tidyselect vctrs withr]; };
   jsonvalidate = derive2 { name="jsonvalidate"; version="1.3.2"; sha256="0myvm93azl6mj60l8fp91qa3ln3nnwj4p48xli8k215sm6zhhv1b"; depends=[V8]; };
@@ -11391,7 +11432,7 @@ in with self; {
   jtrans = derive2 { name="jtrans"; version="0.2.1"; sha256="18zggqdjzjhjwmsmdhl6kf35w9rdajpc2nffag4rs6134gn81i3m"; depends=[]; };
   jubilee = derive2 { name="jubilee"; version="0.3.3"; sha256="1j2y44pfx9z2k169lh42b4dnfrrnk8jqsjn3wz4l9iscr6r91lx7"; depends=[data_table dplyr readxl xts yaml zoo]; };
   juicr = derive2 { name="juicr"; version="0.1"; sha256="0vkbgbagcgaxj6k62b033ik85jnkzvshg8dm9cz7vq4yjqj3icip"; depends=[RCurl XML]; };
-  junctions = derive2 { name="junctions"; version="2.0.1"; sha256="19fjh9nf3dp88gdxf6a1f49bann7g21g9rhrqj0fv38wss97cssr"; depends=[nloptr Rcpp RcppParallel tibble]; };
+  junctions = derive2 { name="junctions"; version="2.0.3"; sha256="0lm3n8n9dfi9nsdazj74pd57kxm2kzrd1gxdzd0izzwgkjnsrsqc"; depends=[nloptr Rcpp RcppParallel tibble]; };
   just_install = derive2 { name="just.install"; version="1.0.2"; sha256="1g82g4lhdk8mf1v4j47y2pgdrryz4175djx42kmg85vw7mlpvlcj"; depends=[dplyr remotes]; };
   justifier = derive2 { name="justifier"; version="0.2.2"; sha256="1ww9rdi9khylvr15crkjibdzydlynwscphqyrcpnfig346i9yv72"; depends=[data_tree DiagrammeR DiagrammeRsvg purrr yaml yum]; };
   jvcoords = derive2 { name="jvcoords"; version="1.0.3"; sha256="1ixmz3pj18zddgah59iqd4zbm5praw0dvn6c93dn5mrwx92pa65c"; depends=[]; };
@@ -11412,7 +11453,7 @@ in with self; {
   kaps = derive2 { name="kaps"; version="1.0.2"; sha256="0jg4smbq51v88i3815icb284j97iam09pc52rv3izxa57nv9a0gz"; depends=[coin Formula survival]; };
   karaoke = derive2 { name="karaoke"; version="1.0"; sha256="1kx11lijdffhhh8prjgsamshgg2v29b2i129fjqi079waa335352"; depends=[seewave tuneR]; };
   karel = derive2 { name="karel"; version="0.1.0"; sha256="0ncjzfzm8a6vx2mswvck3j6vnpqhzrjd5gd371xa5cgi0w1figa9"; depends=[dplyr gganimate ggplot2 gifski magrittr purrr tidyr]; };
-  katex = derive2 { name="katex"; version="1.3.0"; sha256="07f381ja2pwgnjz9794zc6cg4qzr16zfm116f4dwjghyfblxs3qa"; depends=[V8]; };
+  katex = derive2 { name="katex"; version="1.4.0"; sha256="0kgz2qck90h9kaxvy40nii03ib02z757bmw8sgacik82hmj0fxx8"; depends=[V8]; };
   kayadata = derive2 { name="kayadata"; version="1.0.0"; sha256="1zmdwds1p430770426lhwhffissb44x27wqh1vbz7z52ma0h7l91"; depends=[dplyr forcats ggplot2 magrittr scales stringr tidyr]; };
   kazaam = derive2 { name="kazaam"; version="0.1-0"; sha256="0j7vysnmiv9sggcxdn3nrgfvyl52pza4kkjnsa0xlb3fzq9qpwlz"; depends=[pbdMPI]; };
   kcirt = derive2 { name="kcirt"; version="0.6.0"; sha256="1gm3c89i5dq7lj8khc12v30j1c0l1gwb4kv24cyy1yw6wg40sjig"; depends=[corpcor mvtnorm snowfall]; };
@@ -11433,7 +11474,7 @@ in with self; {
   kendallRandomWalks = derive2 { name="kendallRandomWalks"; version="0.9.4"; sha256="1mfqblvsn9p6gdcnbypfpzk0xzn6bz1ajbrkz2dap5w35dia3kxa"; depends=[actuar dplyr ggplot2 tibble]; };
   kequate = derive2 { name="kequate"; version="1.6.3"; sha256="1ii3wlypm2qqkfxr3z1sdnmgc43h2zzlw6v4h2xxjdlznzxkp3mr"; depends=[equateIRT ltm mirt]; };
   kerTests = derive2 { name="kerTests"; version="0.1.3"; sha256="0981q4n4wrv62x4b8jccj5hx58n975rls3sn3s0mz7ajhh1xxbi9"; depends=[]; };
-  keras = derive2 { name="keras"; version="2.7.0"; sha256="004z9aajc0b7lw7g68ri7ndabdwbylmnlyvmziljmm29z6fzk8y5"; depends=[ellipsis generics glue magrittr R6 reticulate rlang tensorflow tfruns zeallot]; };
+  keras = derive2 { name="keras"; version="2.8.0"; sha256="10zvy4lmhb2sbn0gsm12pf95pxj9bmi8241ap1n6170xsld9phcf"; depends=[ellipsis generics glue magrittr R6 reticulate rlang tensorflow tfruns zeallot]; };
   kerasR = derive2 { name="kerasR"; version="0.6.1"; sha256="1yi7710vgcwz0jhishbga41sc6qyk83a0avmq01dvqjsz3cdfsfc"; depends=[reticulate]; };
   kerastuneR = derive2 { name="kerastuneR"; version="0.1.0.4"; sha256="1xpilrlf0l323aikq1lflc166wr0xffj0psq1pfhlmm51zhv8190"; depends=[crayon data_table dplyr echarts4r keras magick plotly reticulate rjson RJSONIO rstudioapi tensorflow tidyjson]; };
   kerdiest = derive2 { name="kerdiest"; version="1.2"; sha256="16xj2br520ls8vw5qksxq9hqlpxlwmxccfk5balwgk5n2yhjs6r3"; depends=[chron date evir]; };
@@ -11447,6 +11488,7 @@ in with self; {
   kernlab = derive2 { name="kernlab"; version="0.9-29"; sha256="0vqhndl4zm7pvkfvq0f6i9cbrm7pij6kmdp7d7w39pa100x6knn3"; depends=[]; };
   kernplus = derive2 { name="kernplus"; version="0.1.2"; sha256="0z5zpj89nw7cdphg6frmjwqjxsl6g95xsa8zgsxmw2q75wwj1saz"; depends=[circular KernSmooth mixtools]; };
   kernscr = derive2 { name="kernscr"; version="1.0.5"; sha256="1kcj710q8jbc34g6fcv2nk07hpsb81mfx8hvivgxq8x58028gjzs"; depends=[MASS mvtnorm]; };
+  kesernetwork = derive2 { name="kesernetwork"; version="0.1.0"; sha256="0q42zry3qgg38aas0cxy7lwpj9mj45crcbs353d1d1is0w1avh09"; depends=[config data_table dplyr DT ggplot2 golem htmltools plotly reactable rintrojs rlang shiny shinyBS shinycssloaders shinydashboard shinydashboardPlus shinyhelper shinyWidgets stringr visNetwork yaml]; };
   keyATM = derive2 { name="keyATM"; version="0.4.0"; sha256="1505r5753fv2xifcm960mzis0w8z4ax7rdbvvcy8bqckzi873m7n"; depends=[dplyr fastmap future_apply ggplot2 ggrepel magrittr MASS Matrix matrixNormal pgdraw purrr quanteda Rcpp RcppEigen RcppProgress rlang stringr tibble tidyr]; };
   keyToEnglish = derive2 { name="keyToEnglish"; version="0.2.1"; sha256="1wzn93gp1v6y8qh9kypydqadnf6fc7xzjili77b7j402hvb0a8zg"; depends=[jsonlite openssl stringr]; };
   keyholder = derive2 { name="keyholder"; version="0.1.6"; sha256="0f8pqmp4va8y92zlld42shig0r9idif5wi1vi378753pkibfd4yb"; depends=[dplyr rlang tibble]; };
@@ -11455,7 +11497,7 @@ in with self; {
   keyring = derive2 { name="keyring"; version="1.3.0"; sha256="1j8l6nmh4dr70kwybiais8yh687fdwrj134xynq68igw1b1rm8ga"; depends=[askpass assertthat filelock openssl R6 rappdirs sodium yaml]; };
   keyringr = derive2 { name="keyringr"; version="0.4.0"; sha256="04f0z6mqj75l5qhiab0zvjsvz3jz1bp6dfazkpgihjmls5k11dnh"; depends=[stringr]; };
   keys = derive2 { name="keys"; version="0.1.1"; sha256="0jq7c70hyxpaxkrciy2jz4bf2mdcbcnmpjniwqffk1lkaxr0ni9b"; depends=[htmltools jsonlite shiny]; };
-  kfa = derive2 { name="kfa"; version="0.1.0"; sha256="1nq4lmnw9bfck98q43ldnbg94q0cq495qb0xsfgzpagg0y7dhml5"; depends=[caret doParallel flextable foreach GPArotation knitr lavaan officer rmarkdown semPlot semTools simstandard]; };
+  kfa = derive2 { name="kfa"; version="0.2.0"; sha256="10y01rrmla58w7w10mbskf0hszfxy91r2d8cjmvzxg9qr0zsyyaw"; depends=[caret doParallel flextable foreach GPArotation knitr lavaan officer rmarkdown semPlot semTools simstandard]; };
   kfda = derive2 { name="kfda"; version="1.0.0"; sha256="0861hzry55gj8ykdd8cwil1wb7234pkmipp4v1749fpmzggq1xgi"; depends=[kernlab MASS]; };
   kfigr = derive2 { name="kfigr"; version="1.2.1"; sha256="0kys4j2n2n1v918v877798m34q431fpz0p0s6gxnfqnn26z2hy14"; depends=[knitr]; };
   kgc = derive2 { name="kgc"; version="1.0.0.2"; sha256="14zbcimnglh5jj07dcaxp1dfjaz8syswy29nf8z39qmslv1hg9kk"; depends=[plyr shiny shinythemes]; };
@@ -11481,8 +11523,8 @@ in with self; {
   kknn = derive2 { name="kknn"; version="1.3.1"; sha256="1nzkg3dxaiqp87p56wm895qx5xn86hv5hjr73qvl1yiaxiq0x112"; depends=[igraph Matrix]; };
   kko = derive2 { name="kko"; version="1.0.1"; sha256="08mgi7j1kirfnjsj3xi2wgr32cnqb88vxs15gfm6f1gq853xvhch"; depends=[doParallel ExtDist foreach grpreg knockoff]; };
   klaR = derive2 { name="klaR"; version="0.6-15"; sha256="1bhgkq6spjawy5lsh663rnby4fzrx4k2qwqp4ci4p9pq8g35pzjv"; depends=[combinat MASS questionr]; };
-  klassR = derive2 { name="klassR"; version="0.1.7"; sha256="1y2jbpb7yyah62a6ii61xllskz5h4jcnw7sxmwzfnw6jpnd5m3gr"; depends=[httr jsonlite tm]; };
-  klausuR = derive2 { name="klausuR"; version="0.12-10"; sha256="12fjs4dnwaki8sz718xgsg8qrqhsgf87cs0bylf0p3f5k8hrmk4b"; depends=[polycor psychometric xtable]; };
+  klassR = derive2 { name="klassR"; version="0.1.9"; sha256="1drpiwmqyql6q69ldr8ya8sqg1m2jld5j7xs4dghwdpjlbipy6zv"; depends=[httr jsonlite tm]; };
+  klausuR = derive2 { name="klausuR"; version="0.12-13"; sha256="0j05vmdcw0jagixw5b1s4lasv1n7bdlayxdqrnz97iv501pkj2qb"; depends=[psych xtable]; };
   kldtools = derive2 { name="kldtools"; version="1.2"; sha256="1r6j6ddylzxsfmymnf8hp7sm8c2ckr8xrdz75xlkgp4fgay106r2"; depends=[]; };
   klexdatr = derive2 { name="klexdatr"; version="0.1.2"; sha256="141xs03sb0ixhjpr388fwf5h124mqkbj0k1xqw0whdhrm5051qsz"; depends=[sf]; };
   klic = derive2 { name="klic"; version="1.0.4"; sha256="1ggsdq8xcg6hi12rq356myhngx3j475gpwlvpynm1581r4z0lkbk"; depends=[cluster coca Matrix pheatmap RColorBrewer]; };
@@ -11506,7 +11548,7 @@ in with self; {
   knn_covertree = derive2 { name="knn.covertree"; version="1.0"; sha256="0msfcmwydws7q7m5jdb0dxab0nkbl7mq5llg6v3r4qrnlvrdggvz"; depends=[Matrix Rcpp RcppEigen]; };
   knnIndep = derive2 { name="knnIndep"; version="2.0"; sha256="1fwkldgs2994svf3sj90pwsfx6r22cwwa22b30hdmd24l8v9kzn7"; depends=[]; };
   knnp = derive2 { name="knnp"; version="2.0.0"; sha256="0qgq8la3zndlb1wwqv9b2kw52y9ns36pi4ds68pkm81bhzq5nqis"; depends=[doParallel foreach forecast parallelDist plyr]; };
-  knnwtsim = derive2 { name="knnwtsim"; version="0.1.0"; sha256="0b902w012lkj18piyfn8mkjh45fdvw19v3wpsw5ng9gk4j7g4mwj"; depends=[]; };
+  knnwtsim = derive2 { name="knnwtsim"; version="1.0.0"; sha256="1sxz1hzbx41z3w1qf2zf8fmf3pd64jrnc37ndxx28yc70vhwjd1n"; depends=[]; };
   knockoff = derive2 { name="knockoff"; version="0.3.5"; sha256="00nh1wwj66krdng4afxkv0c0xyi5lk6f2g8iwzcd7c5l5ladab7y"; depends=[corpcor glmnet gtools Matrix Rdsdp RSpectra]; };
   knotR = derive2 { name="knotR"; version="1.0-2"; sha256="0kd1b9wibpwyaanz9ny61qgfvcg4d3rzpy05sfshlpp0b1y8d3xj"; depends=[]; };
   kntnr = derive2 { name="kntnr"; version="0.4.4"; sha256="1af5qhj82dixf1qcbz3sfj52pzgy8gnafzifwxnhrp7vpn4rnv6m"; depends=[base64enc dplyr httr jsonlite lubridate purrr rlang rstudioapi stringr tibble tidyr]; };
@@ -11516,7 +11558,6 @@ in with self; {
   kofnGA = derive2 { name="kofnGA"; version="1.3"; sha256="0w0881ydnqdah04sifi25ypzxdwnsiqxfq1xam4yhr670bdak1vm"; depends=[bigmemory]; };
   kohonen = derive2 { name="kohonen"; version="3.0.10"; sha256="1ck7j13x701g67bx81x7plszz804jfhl1yg42krcj9x88vm5cscr"; depends=[Rcpp]; };
   kokudosuuchi = derive2 { name="kokudosuuchi"; version="1.0.0"; sha256="0h4r7bd9989pahx34lc2i5h1f8nipir941l7sahhgz28lskfkc3h"; depends=[glue rlang sf stringr tibble]; };
-  kolmim = derive2 { name="kolmim"; version="1.0"; sha256="0g1i0cazi4nhfwdd3ywqrar1sn7bw77w38qjii045w5vqg05srkp"; depends=[]; };
   komaletter = derive2 { name="komaletter"; version="0.4.2"; sha256="1cll8cb69gyxl5mg04jibxf7szh38xrqksjkcswbgjcqidp6yxi2"; depends=[rmarkdown]; };
   konfound = derive2 { name="konfound"; version="0.4.0"; sha256="14d8a1ngrf24gbxfg8c8h4svjvsjc3gflcnzxza17xv2rcgzygnr"; depends=[broom broom_mixed crayon dplyr ggplot2 mice purrr rlang tibble tidyr]; };
   kosel = derive2 { name="kosel"; version="0.0.1"; sha256="1gdsy4i58byqxddpsm5nk1r3hlgik5gs2b8jqcm8n1r4ib6pg0ay"; depends=[glmnet ordinalNet]; };
@@ -11529,7 +11570,7 @@ in with self; {
   kriging = derive2 { name="kriging"; version="1.1"; sha256="04bxr34grf2nlrwvgrlh84pz7yi0r8y7dc2wk0v5h5z6yf5a085w"; depends=[]; };
   krippendorffsalpha = derive2 { name="krippendorffsalpha"; version="1.1-1"; sha256="1vaqwimlmbxh2jy08f3bkpb9r4fz6gkx6cpzjkgiyspjaqhc8a1a"; depends=[]; };
   krm = derive2 { name="krm"; version="2020.5-20"; sha256="1b6477cjv5k30djvrlbmwn91ghgwk24cfd58cb0q80xqhgiqvrzb"; depends=[kyotil]; };
-  ks = derive2 { name="ks"; version="1.13.3"; sha256="0wyfdmhr753vpizns9kl7h7pfnnb16c7m7w9a4bpz62xcvgq1yyy"; depends=[FNN kernlab KernSmooth Matrix mclust mgcv multicool mvtnorm plot3D pracma]; };
+  ks = derive2 { name="ks"; version="1.13.4"; sha256="15sm1ys7sk0gn7hr1vik4xrn4jdf837knwk7j8h32lr29w9mh917"; depends=[FNN kernlab KernSmooth Matrix mclust mgcv multicool mvtnorm plot3D pracma]; };
   ksNN = derive2 { name="ksNN"; version="0.1.2"; sha256="06x471hck95xqy7rbh53ibhzh6kfjra7y9ipqdj2rqdkmfdj72q8"; depends=[Rcpp]; };
   kselection = derive2 { name="kselection"; version="0.2.0"; sha256="1arg96r2pldvb89rfqnfpjxwksyac2mhmbimbkwzm7wrnbnrcn5d"; depends=[]; };
   ksharp = derive2 { name="ksharp"; version="0.1.0.1"; sha256="1dnkj838y8c1b53mlljhjqs3nd864i9xcqsv9n4fw28b4br9m570"; depends=[]; };
@@ -11553,7 +11594,7 @@ in with self; {
   l1ball = derive2 { name="l1ball"; version="0.1.0"; sha256="1ryq1vfkwg465kgxbb2wf8df7qa85yr8lbx3a58j0az8dqkyzqix"; depends=[VGAM]; };
   l1kdeconv = derive2 { name="l1kdeconv"; version="1.2.0"; sha256="1mk92sz9nsmxsn7yplhfcz07k022lrr61114ckrmm0x8hfd89zj8"; depends=[ggplot2 mixtools]; };
   l1spectral = derive2 { name="l1spectral"; version="0.99.6"; sha256="19q30g67pf2gx2h6s3il87n910f011lih3lh9321pkh4idl4awnb"; depends=[aricode caret cvTools dplyr ggplot2 glmnet igraph Matrix Rcpp RcppArmadillo]; };
-  l2boost = derive2 { name="l2boost"; version="1.0.1"; sha256="0f2gapzpvjnr8n1jgn60jpmcas4s8nk2q8q4k5v4ypwvpfqp7kk1"; depends=[MASS]; };
+  l2boost = derive2 { name="l2boost"; version="1.0.3"; sha256="1ma11x5wb2iqh10wdlwbwdvgzm4qxp94c5pxgvnmwqzmjgngirdh"; depends=[MASS]; };
   laGP = derive2 { name="laGP"; version="1.5-5"; sha256="1a269cy9qmjldb5hv1nl9naq1rr35z37xjpp4kannj6p560fm476"; depends=[tgp]; };
   labdsv = derive2 { name="labdsv"; version="2.0-1"; sha256="099rzl9hy70rmb5fg0vx26mlhr4ra2s0hl3jgv22s8hqpvlmakas"; depends=[cluster MASS mgcv Rtsne]; };
   label_switching = derive2 { name="label.switching"; version="1.8"; sha256="0xwwhn249aibip12yxjwlrpyqj6zvc95zc7n9jf2vjjpashyc3yk"; depends=[combinat lpSolve]; };
@@ -11570,16 +11611,15 @@ in with self; {
   lacrmr = derive2 { name="lacrmr"; version="1.0.3"; sha256="0zpfc4a7krwkwbf31idpmdzks4qassqnhxk1f9fcq1qjzqzhjkvi"; depends=[dplyr httr janitor jsonlite magrittr sjmisc stringr]; };
   lactater = derive2 { name="lactater"; version="0.1.0"; sha256="0g3hl8q3rdxpn8m4yngmlswyqlnlgj528amn26msybcjzp7r2dbz"; depends=[broom dplyr forcats ggplot2 ggtext lubridate magrittr minpack_lm patchwork pracma rlang segmented stringr tidyr]; };
   lactcurves = derive2 { name="lactcurves"; version="1.1.0"; sha256="1ksllpgz519gzrs8gwfgg7743vj3j7ikmbwgisdjs77sdxxl7xyz"; depends=[orthopolynom polynom]; };
-  lacunaritycovariance = derive2 { name="lacunaritycovariance"; version="1.1-2"; sha256="15s05igbrvsl0jlc84750l4i1pahigjacvq6b6gjj9gbyjfs6cbm"; depends=[RcppRoll spatstat spatstat_core spatstat_geom spatstat_linnet]; };
+  lacunaritycovariance = derive2 { name="lacunaritycovariance"; version="1.1-3"; sha256="0rf74mxylg9j5apcxk40wyfbwgsjwh322kc6wxbqxm4rgscs6shw"; depends=[RcppRoll spatstat spatstat_core spatstat_geom spatstat_random]; };
   laeken = derive2 { name="laeken"; version="0.5.2"; sha256="1p3ccbaydlr52p8qmgmm2l6kryvq6jjjx7mqn2vv0gpjaxqhyy92"; depends=[boot MASS]; };
-  laercio = derive2 { name="laercio"; version="1.0-1"; sha256="0la6fxv5k9zq4pyn8dxjiayx3vs9ksm9c6qg4mnyr9vs12z53imm"; depends=[]; };
   lagged = derive2 { name="lagged"; version="0.3-1"; sha256="1zkfx1s6xvxagn4vrv3zkfkrwwibmqmilrfras2813v4y419kfcd"; depends=[]; };
   lagsarlmtree = derive2 { name="lagsarlmtree"; version="1.0-1"; sha256="1v3a580scxb1v5na3ab3ax9qlzbnay7nhm3ln5l8f9zgsqrg5lyh"; depends=[Formula partykit spatialreg]; };
   lakemorpho = derive2 { name="lakemorpho"; version="1.2.0"; sha256="0fcmrl6yi1dd0i1r4kyp8bf4yw1nwdk6862sdakfwr2jd1rxhi9q"; depends=[cluster geosphere raster rgdal rgeos sp]; };
   laketemps = derive2 { name="laketemps"; version="0.5.1"; sha256="04742r379bzgbfr4243wwkb26cvfmnw50jzgygq7vblq00grzska"; depends=[dplyr reshape2]; };
   lamW = derive2 { name="lamW"; version="2.1.1"; sha256="05b37kx4jpszx2hkm47d7cjkf8544f7r8x26q68yp9c6zqm9gbc3"; depends=[Rcpp RcppParallel]; };
   lambda_r = derive2 { name="lambda.r"; version="1.2.4"; sha256="1mh1g0gsd58gng0hb29vww2yqb2jfs07kba5kxnnqck5j3izwlnj"; depends=[formatR]; };
-  lambdaTS = derive2 { name="lambdaTS"; version="1.0.0"; sha256="0bd1kvvw573vagx7k2nylawgaf826bvqms4ar56cx54hys0blmm5"; depends=[abind bestNormalize bizdays fANCOVA ggplot2 imputeTS lubridate modeest narray purrr readr scales stringr tictoc torch]; };
+  lambdaTS = derive2 { name="lambdaTS"; version="1.1"; sha256="0fb44q5997588y6cv10kq3jv3qvwhg99q15i4cka4hsww08i9ib2"; depends=[abind bizdays car fANCOVA ggplot2 imputeTS lubridate modeest narray purrr readr scales stringr tictoc torch]; };
   lambdr = derive2 { name="lambdr"; version="1.1.0"; sha256="02piqnw1n444sa396bbmplf3br7bh70qkn4dwvkzxj558ddv9l83"; depends=[httr jsonlite logger]; };
   lamme = derive2 { name="lamme"; version="0.0.1"; sha256="1x9jl79iqikpjixajly1k8w2nkzskns2m0v242giknl0ikw298h1"; depends=[]; };
   landest = derive2 { name="landest"; version="1.1"; sha256="1gcjxn9g3zq37glb92xgv2r9w5yq6hwsmgfmv2ijr66lla0qxsf4"; depends=[survival]; };
@@ -11590,14 +11630,14 @@ in with self; {
   landscapeR = derive2 { name="landscapeR"; version="1.2"; sha256="1zm5mj861ycbc2m28yjqnkifx8grc4l718mf8r422m78jfakvcjy"; depends=[raster Rcpp]; };
   landscapemetrics = derive2 { name="landscapemetrics"; version="1.5.4"; sha256="1qsm0h6lcg4a7s6g1am305rcxbrrf2hb6ypd29g5k7kj80fwg1rl"; depends=[cli ggplot2 raster Rcpp RcppArmadillo sp tibble]; };
   landscapetools = derive2 { name="landscapetools"; version="0.5.0"; sha256="11zp6r414nkj8vhsbryzhkxmpal2bva8msaxf1v69xax70ilxyf1"; depends=[ggplot2 raster Rcpp tibble]; };
-  landsepi = derive2 { name="landsepi"; version="1.1.1"; sha256="036f9gr5dhjh803958vrw2nnrd4fqqwh79j95fcrr2bx5lnf5x4g"; depends=[DBI doParallel fields foreach Matrix mvtnorm Rcpp RSQLite sf sp splancs testthat]; };
+  landsepi = derive2 { name="landsepi"; version="1.1.2"; sha256="18mgscfc21rl4fdsrhw06ydrd29w2wwfn69lm3cvw4illb2vn64r"; depends=[DBI doParallel fields foreach Matrix mvtnorm Rcpp RSQLite sf sp splancs testthat]; };
   languageR = derive2 { name="languageR"; version="1.5.0"; sha256="1iipnr2b4hd2w718prbh075j56m5xnchlcb2vg26m16qpydp6afn"; depends=[]; };
   languagelayeR = derive2 { name="languagelayeR"; version="1.2.4"; sha256="1q82shdcdd84nr6bnfwgyyb81z8dycvj1i3vhwvdg710s15rgiyk"; depends=[attempt curl httr jsonlite]; };
   languageserver = derive2 { name="languageserver"; version="0.3.12"; sha256="0dmsjnn84r3wlzrf91xwxcwi4y9vcrwiymz14ixw0jc0kys185a3"; depends=[callr collections fs jsonlite lintr R6 roxygen2 stringi styler xml2 xmlparsedata]; };
   languageserversetup = derive2 { name="languageserversetup"; version="0.1.2"; sha256="05i8kcp1zpbkrqpq5vxxvxk9p7phyngxl0q6v76va0i7qnmy1v7a"; depends=[]; };
   lans2r = derive2 { name="lans2r"; version="1.1.0"; sha256="0svqaz1j8vhfnm31bfp4gqshdj73wmljva4kxcv2qajmcdiqbd2s"; depends=[dplyr ggplot2 R_matlab reshape2 rlang tidyr]; };
   lar = derive2 { name="lar"; version="0.1-2"; sha256="0qda0y4ag10kg83wxs3z754kc8c1dg2rwciy64klk7an4ln43i5b"; depends=[data_table treemap xlsx]; };
-  lares = derive2 { name="lares"; version="5.0.5"; sha256="1gn72dl3w6zdnllmj30s5wy8v0x0ww98ydhshx42hn3miil1cv32"; depends=[dplyr ggplot2 h2o httr jsonlite lubridate magrittr openxlsx patchwork pROC rlang rpart rpart_plot rvest stringr tidyr yaml]; };
+  lares = derive2 { name="lares"; version="5.1.0"; sha256="0g85csp1f2yc8jwlzanjivp6s3jx44w4p3ippcarq6s7nrz9p228"; depends=[dplyr ggplot2 h2o httr jsonlite lubridate magrittr openxlsx patchwork pROC rlang rpart rpart_plot rvest stringr tidyr yaml]; };
   largeList = derive2 { name="largeList"; version="0.3.1"; sha256="0csijzlxajj0rh24w5n7fs6ss301zr6zfv5khyq4a9g437bwhc2i"; depends=[]; };
   lars = derive2 { name="lars"; version="1.2"; sha256="0blj44wqrx6lmym1m9v6wkz8zxzbjax2zl6swgdczci0ixb5nx34"; depends=[]; };
   lasso2 = derive2 { name="lasso2"; version="1.2-22"; sha256="1l87djh539m444p5nl9975dd3v5nc7j8af9rj4xr54h5d0mbcbjv"; depends=[]; };
@@ -11609,7 +11649,7 @@ in with self; {
   latentgraph = derive2 { name="latentgraph"; version="1.1"; sha256="11h7nrd81licvdikiwwfkz4x9i7drz09w5ns672b7fw0pj4qqgsr"; depends=[glmnet MASS pracma Rcpp RcppArmadillo]; };
   latentnet = derive2 { name="latentnet"; version="2.10.5"; sha256="05yjf7a16imv1p2lg5dmfk183xll49crnkg0mbz4c4b39nksy85v"; depends=[abind coda ergm MASS mvtnorm network sna statnet_common]; };
   later = derive2 { name="later"; version="1.3.0"; sha256="0acqg29hcm2iq1418b54np7zb5pnr3xzrwc3ijv2pz9wra10ix88"; depends=[Rcpp rlang]; };
-  latex2exp = derive2 { name="latex2exp"; version="0.9.3"; sha256="1r3jab71hl7hqi53cd63r819xlyn2ay6867184gzkxm0m3nhhcnh"; depends=[magrittr stringr]; };
+  latex2exp = derive2 { name="latex2exp"; version="0.9.4"; sha256="0zbbrbgg524lpm733j8qsqk5ssg75c51s6dgzb18c6fk8byrx945"; depends=[magrittr stringr]; };
   latexdiffr = derive2 { name="latexdiffr"; version="0.1.0"; sha256="021lhswy8nik2h1951h1affg8x5lchsa2amyx7fwrajp4bgq72yk"; depends=[fs rprojroot]; };
   latexpdf = derive2 { name="latexpdf"; version="0.1.7"; sha256="0n0hzr9jkg13kn56jcghcg4a6y8x0c3jffcvxv621azd9ldljgfl"; depends=[]; };
   latrend = derive2 { name="latrend"; version="1.2.1"; sha256="1dn0s015mjb9kv4gjswd439hbmr6r8xn0s4ckwp23wg6srhnmiza"; depends=[assertthat data_table foreach magrittr matrixStats R_utils Rdpack]; };
@@ -11638,7 +11678,6 @@ in with self; {
   lazysf = derive2 { name="lazysf"; version="0.1.0"; sha256="19g0qzm0dxsa8m4dj4zmz8r674dw43pqs5gg6n3xfgm5dl9772jb"; depends=[DBI dbplyr dplyr magrittr sf tibble]; };
   lazysql = derive2 { name="lazysql"; version="0.1.3"; sha256="18vff80rl8ckjwfqi9dhzs1q35a1wrxvynidji6dy2kvvk38xnpa"; depends=[checkmate magrittr plyr]; };
   lazytrade = derive2 { name="lazytrade"; version="0.5.3"; sha256="055wyaf36f5g27wly24i0sbf2k0rriga8xcgn241gszlzagrnh55"; depends=[cluster dplyr ggplot2 h2o lifecycle lubridate openssl readr ReinforcementLearning stringr tibble]; };
-  lba = derive2 { name="lba"; version="2.4.4"; sha256="0izqndm992zv3sg8v5lpnxbdbxhpxl6hq3bf6xgq3pnw8vl3f6nb"; depends=[alabama MASS plotrix rgl scatterplot3d]; };
   lbfgs = derive2 { name="lbfgs"; version="1.2.1"; sha256="0p99g4f3f63vhsw0s1m0y241is9lfqma86p26pvja1szlapz3jf5"; depends=[Rcpp]; };
   lbfgsb3c = derive2 { name="lbfgsb3c"; version="2020-3.2"; sha256="07mhiaxhjjma5c65z3pz7wchgsqn4b19labzyq25ncnmj319fxrg"; depends=[numDeriv Rcpp RcppArmadillo]; };
   lbiassurv = derive2 { name="lbiassurv"; version="1.1"; sha256="1i6l3y4rasqpqka7j39qjx22wjbilgc9pkp05an52aysfvfxy193"; depends=[actuar]; };
@@ -11647,7 +11686,6 @@ in with self; {
   lbreg = derive2 { name="lbreg"; version="1.3"; sha256="1z9vixf6sl0k9lizngc3859lk32srkk1d8y133sl6s37ppmqb4s2"; depends=[MASS]; };
   lcars = derive2 { name="lcars"; version="0.3.7"; sha256="1hjlcl57aazcm5hgjiwmi116rk13z2gr65mpgcvyc0p9xih8bvdf"; depends=[ggplot2 shiny trekcolors]; };
   lcc = derive2 { name="lcc"; version="1.1.3"; sha256="0hbv0nv421ldk10b4qr8dq7ww4w1342sl3s8gw0slfigxbbxv4bh"; depends=[doRNG doSNOW foreach ggplot2 hnp nlme]; };
-  lcda = derive2 { name="lcda"; version="0.3"; sha256="1ximsyn6qw2gfn7b1hdpbjs6h6nk7hrignlii0np1lbf0k8l4xxl"; depends=[poLCA]; };
   lchemix = derive2 { name="lchemix"; version="0.1.0"; sha256="1g2w57fi6kvsyir14hnxh0v6xwjdnbisafvjxvn1g6a4h55dg9i0"; depends=[MCMCpack mvtnorm]; };
   lclGWAS = derive2 { name="lclGWAS"; version="1.0.3"; sha256="03b6ijqvyirv96hc3dsqf4f0zzqlmq5451mcb14d2mw3s6xy1vmq"; depends=[BH Rcpp]; };
   lcmm = derive2 { name="lcmm"; version="1.9.5"; sha256="0c88hy8bqkf2h8a6q06l5sk294g68hkwniv3dv6c4nf9dazvzi7n"; depends=[mvtnorm nlme randtoolbox survival]; };
@@ -11664,10 +11702,10 @@ in with self; {
   ldat = derive2 { name="ldat"; version="0.3.3"; sha256="1n8v4nzfv3ayr46ahrz60vasam8mx1phb4vss05d9xh7sxlkx7gv"; depends=[BH lvec Rcpp]; };
   ldatuning = derive2 { name="ldatuning"; version="1.0.2"; sha256="0367y6k5i4sccwfcm89xyc62qblrlwnm6hsa2jf346rnrfz9hkkc"; depends=[ggplot2 reshape2 Rmpfr scales slam topicmodels]; };
   ldbod = derive2 { name="ldbod"; version="0.1.2"; sha256="1ylzkswnhf4jnjx2ijasy49pj78ffx333za0bx2fnf3g85kicqiv"; depends=[mnormt RANN]; };
-  ldbounds = derive2 { name="ldbounds"; version="1.1-1.1"; sha256="10rmkidvvhwnrkc62c5ld44xhbvx1k8mch28h1yryakn8gznp3p8"; depends=[lattice]; };
+  ldbounds = derive2 { name="ldbounds"; version="2.0.0"; sha256="0sm2hy1bqp4z78vgd7m4a307mzqz8jwfwdyga683yr2jk5grs9yl"; depends=[]; };
   lddmm = derive2 { name="lddmm"; version="0.1.0"; sha256="19y2249fj1k1qq4lp6qzbd3jjwlz2li1710k3l7j7a9gg3rq9gfs"; depends=[dplyr ggplot2 gtools LaplacesDemon latex2exp plyr RColorBrewer Rcpp RcppArmadillo RcppProgress reshape2 rgen tidyr]; };
   ldhmm = derive2 { name="ldhmm"; version="0.5.1"; sha256="1jwgxwzz56n6hhpp1qks1x0jsfbrjgfsl6h5sp7498l4d2f279ij"; depends=[ecd ggplot2 moments optimx scales xts zoo]; };
-  ldsep = derive2 { name="ldsep"; version="2.1.2"; sha256="1kpqmwphkhw9l2s8mz4s6mjfjlysivpzqvhpncw5nphhgdqd22j6"; depends=[abind ashr corrplot doParallel foreach lpSolve matrixStats modeest Rcpp RcppArmadillo]; };
+  ldsep = derive2 { name="ldsep"; version="2.1.4"; sha256="0wl446ajx4k8zsfybr4n385phblxpa74gi7d3m86zyn1x4z9md50"; depends=[abind ashr corrplot doParallel foreach lpSolve matrixStats modeest Rcpp RcppArmadillo]; };
   ldsr = derive2 { name="ldsr"; version="0.0.2"; sha256="0wmxpglad1mk2c1gi9kxmh149r8ad0l8i2xlfs1hdjb6a4wxsklr"; depends=[data_table foreach MASS Rcpp RcppArmadillo]; };
   leabRa = derive2 { name="leabRa"; version="0.1.0"; sha256="08yiwyfg9bp4i9w5yyw9p63wyvgj39kd64y3h21j2jmpw8zxncdq"; depends=[plyr R6]; };
   leaderCluster = derive2 { name="leaderCluster"; version="1.2"; sha256="1lqhckarqffm2l3ynji53a4hrfn0x7zab7znddia76r2h6nr02zb"; depends=[]; };
@@ -11676,8 +11714,8 @@ in with self; {
   leafdown = derive2 { name="leafdown"; version="1.0.0"; sha256="1zvgbglrb4javazvyph7b48x3qab7kiziiya1a1wccdm9l6qh58w"; depends=[checkmate leaflet magrittr R6 shiny shinyjs]; };
   leafem = derive2 { name="leafem"; version="0.1.6"; sha256="0ml110rva6ca8ycy0mrivq3wsj0dvyi5f62i92948r7mk6kf0l6a"; depends=[base64enc geojsonsf htmltools htmlwidgets leaflet png raster sf]; };
   leafgl = derive2 { name="leafgl"; version="0.1.1"; sha256="042jps6zh4xr0xj19a7fbgrcb6q6gsw2q5f191lyskr8iajdrz1h"; depends=[geojsonsf htmltools jsonify leaflet sf]; };
-  leaflegend = derive2 { name="leaflegend"; version="0.6.0"; sha256="0gdagadqv8ka5pzc1rz4bnklmi6j04s538xv12jikaq3y13zlwn7"; depends=[base64enc htmltools htmlwidgets leaflet]; };
-  leaflet = derive2 { name="leaflet"; version="2.0.4.1"; sha256="07whi3zkz1lmbqx5ydpiya802ck22ny0s7gskwnx7r8xbwlkiw5h"; depends=[base64enc crosstalk htmltools htmlwidgets leaflet_providers magrittr markdown png raster RColorBrewer scales sp viridis]; };
+  leaflegend = derive2 { name="leaflegend"; version="0.6.1"; sha256="1wby363xbl8kc47pn5057gl812kazyi892067928ikyxq81lxqgl"; depends=[base64enc htmltools htmlwidgets leaflet]; };
+  leaflet = derive2 { name="leaflet"; version="2.1.0"; sha256="0i2ziy3zmya3i0v4ma0b1ymw4mds7di0xjirs452n20z8l31lhhs"; depends=[base64enc crosstalk htmltools htmlwidgets leaflet_providers magrittr markdown png raster RColorBrewer scales sp viridis]; };
   leaflet_esri = derive2 { name="leaflet.esri"; version="1.0.0"; sha256="01bwzxh2rdhpvvazaxsji8axl765q1ix1fdxla6i61nvqkpw3dz1"; depends=[htmltools leaflet leaflet_extras]; };
   leaflet_extras = derive2 { name="leaflet.extras"; version="1.0.0"; sha256="0li7651cwlz7sg04xdrmvhkrf0n6amaydck7gqz0wkb6wq8hcyzw"; depends=[htmltools htmlwidgets leaflet magrittr stringr]; };
   leaflet_extras2 = derive2 { name="leaflet.extras2"; version="1.1.0"; sha256="138d2ajma3fkz7nsh50z4gw5zaflas39gsy7k5l120hxr7nmzgfk"; depends=[htmltools leaflet magrittr]; };
@@ -11703,15 +11741,17 @@ in with self; {
   learnstats = derive2 { name="learnstats"; version="0.1.1"; sha256="1sa064cr7ykl4s1ssdfmb3v1sjrnkbwdh04hmwwd9b3x0llsi9vv"; depends=[ggplot2 Rcmdr shiny]; };
   leastcostpath = derive2 { name="leastcostpath"; version="1.8.0"; sha256="1106wh2yy048jimiyb3gwm9d00jfq4wk0dnj4a5sfk90rkg28acw"; depends=[gdistance Matrix pbapply raster rgdal rgeos sp]; };
   ledger = derive2 { name="ledger"; version="2.0.9"; sha256="0ynr1g7vfkabl78zjnshyxixk45g28bi9h1p4zjfl83009yhqjwx"; depends=[dplyr rlang stringr tibble tidyr tidyselect]; };
+  leem = derive2 { name="leem"; version="0.1.0"; sha256="1sm9v3m95fbg3apvv3jjf47qxn8v6ipdsm1103dqk4zngmsz4xia"; depends=[tkrplot]; };
   leerSIECyL = derive2 { name="leerSIECyL"; version="1.0.2"; sha256="1zx28gpnys9mmhq7wwljfnq92wj1h1vxgqiirnfmn36z942nvmxl"; depends=[RCurl]; };
-  lefko3 = derive2 { name="lefko3"; version="4.2.0"; sha256="1fg9bmpf604prmffkbi92b4zx084dv4ka8ishc9fjqgmsy3mfnd2"; depends=[BH glmmTMB lme4 MASS MuMIn pscl Rcpp RcppArmadillo SparseM VGAM]; };
+  lefko3 = derive2 { name="lefko3"; version="5.0.1"; sha256="1mf507kxl4g6jyvnvn5g8f8h3p18napgrbnvkmpnda8b564960m2"; depends=[BH glmmTMB lme4 MASS MuMIn pscl Rcpp RcppArmadillo SparseM VGAM]; };
   legco = derive2 { name="legco"; version="0.1.4"; sha256="0fd1d2zf510lyrwclsy57d8lgqprk6p8c6ghxglgm6gbx9d2yrgg"; depends=[dplyr httr jsonlite]; };
-  legion = derive2 { name="legion"; version="0.1.0"; sha256="0lpxg3jx9ll3748aixr84yl44ig8arqj6axzr80402kzjndc2z3h"; depends=[greybox nloptr pracma Rcpp RcppArmadillo smooth statmod zoo]; };
+  legion = derive2 { name="legion"; version="0.1.1"; sha256="11gh281hf3nqzd3lbiqdp7y2qbpb933p92ix92hyg3rqai1fd0hb"; depends=[generics greybox nloptr Rcpp RcppArmadillo smooth zoo]; };
   legislatoR = derive2 { name="legislatoR"; version="1.0"; sha256="1553hpb2cmv3hw6v4c7qwgg8n18jwx101yaqnmaaiv8gfyh6j43m"; depends=[curl dplyr]; };
   legocolors = derive2 { name="legocolors"; version="0.3.1"; sha256="0ds9c2x0x590yk7mrjm4hh7k72p51slssg7jlprd71mw6hry91ma"; depends=[]; };
   lehdr = derive2 { name="lehdr"; version="1.0.1"; sha256="0hg5a4w37wi6bqks2298ajsj8q6y3lvbx80wwg5364vnv7na3308"; depends=[dplyr glue httr rappdirs readr rlang stringr]; };
   leiden = derive2 { name="leiden"; version="0.3.9"; sha256="03gaxpcab3a1av5lk8r5ll1s858gvyx5ndknci1sia96w1v44xc1"; depends=[igraph Matrix reticulate]; };
-  leidenAlg = derive2 { name="leidenAlg"; version="1.0.1"; sha256="0d7g7l06gmind603v525nqgl3h2c24mbhrn6j6fi7hipbihzjnsm"; depends=[igraph Matrix Matrix_utils Rcpp RcppArmadillo RcppEigen sccore]; };
+  leidenAlg = derive2 { name="leidenAlg"; version="1.0.2"; sha256="04n2sfz2s6jvls9i6x5ka5nday2ah6j2npwksh1dqwjib8dsqnsf"; depends=[igraph Matrix Matrix_utils Rcpp RcppArmadillo RcppEigen sccore]; };
+  leidenbase = derive2 { name="leidenbase"; version="0.1.8"; sha256="0i8s9glgqffqiiriwcvmv6zlm83wbgkwwsd6wdkw7b7ladyzmhlf"; depends=[igraph]; };
   leiv = derive2 { name="leiv"; version="2.0-7"; sha256="15ay50886xx9k298npyksfpva8pck7fhqa40h9n3d7fzvqm5h1jp"; depends=[]; };
   lemna = derive2 { name="lemna"; version="0.9.1"; sha256="0aamkqcjw8n9mly8a7m1s1wfi6j5mx2kbbxfn9vbb21b9pqi2jl5"; depends=[deSolve ggplot2 gridExtra]; };
   lemon = derive2 { name="lemon"; version="0.4.5"; sha256="1y3ljidhqdakxlya2npj2w0az820g8kw6gl1cfm4f0cxvzgd1ly4"; depends=[ggplot2 gridExtra gtable knitr lattice plyr rlang scales]; };
@@ -11720,7 +11760,7 @@ in with self; {
   leprechaun = derive2 { name="leprechaun"; version="1.0.0"; sha256="1y30s519502bqabzsf1njf3zzqlbmr4sbmsm57ci1r6dv4miijkh"; depends=[cli fs jsonlite roxygen2 usethis]; };
   leri = derive2 { name="leri"; version="0.0.1"; sha256="1309v58xdw3p6y2wpnl64vgsds5kvfiary2a3fa041kz23jzbp3c"; depends=[ncdf4 raster]; };
   lero_lero = derive2 { name="lero.lero"; version="0.2"; sha256="03ll7jzcay0swwpmxyf0y9k2h8mxx4p5v3ggm9dgdz4j99934l70"; depends=[]; };
-  lessR = derive2 { name="lessR"; version="4.1.5"; sha256="1s08jsrrmhxdizcy6rzs5q2g3qklw423c8hjqc8czzwsksz1a60h"; depends=[colorspace ellipse knitr lattice latticeExtra leaps openxlsx robustbase shiny viridisLite]; };
+  lessR = derive2 { name="lessR"; version="4.1.6"; sha256="0b62cyvq40fx0kd829c58nwmpz2p0qdvqrc9ndynalrph6l183kx"; depends=[colorspace ellipse knitr lattice latticeExtra leaps openxlsx robustbase shiny viridisLite]; };
   lest = derive2 { name="lest"; version="1.1.0"; sha256="1d69kvdl31crv4ik8bwylq3s3f4skzrjc4x49c79w443g64n2jp9"; depends=[]; };
   lestat = derive2 { name="lestat"; version="1.9"; sha256="1skxymdf3ncmdbskh7711xxgwsmwxfxnl52gcgw06jscx6s6wrsd"; depends=[MASS]; };
   letsR = derive2 { name="letsR"; version="4.0"; sha256="07l1wgwnkqnvh47ssg62vj88vgml52n0934w00pjxdk90kk3c5zs"; depends=[fields geosphere maps maptools raster rgdal rgeos sp XML]; };
@@ -11744,7 +11784,7 @@ in with self; {
   lgrdata = derive2 { name="lgrdata"; version="0.1.1"; sha256="0h1crdhqfp6hzx30lp0w015scf2566hhrl2i7mkxy868rkl3aig9"; depends=[]; };
   lgtdl = derive2 { name="lgtdl"; version="1.1.5"; sha256="1sixq56d2px36q0xq3kl0zwj2yzm3q8fhgqjvmajcdd5jl8l7130"; depends=[]; };
   lhmixr = derive2 { name="lhmixr"; version="0.1.0"; sha256="1c4ydgq1z2y0xk8xqdsim6xvgxdbl3gglfk5kcr9k4m01arvv0rf"; depends=[]; };
-  lhs = derive2 { name="lhs"; version="1.1.3"; sha256="1l861h76q5w0nbnbybhgg7hiw7fks677jakyd49n1whwvd48sfz4"; depends=[Rcpp]; };
+  lhs = derive2 { name="lhs"; version="1.1.4"; sha256="1dim6pw2vjvsk269dff5bzpnyh9rp4qa9gj8y61bd31384q5c92c"; depends=[Rcpp]; };
   liGP = derive2 { name="liGP"; version="1.0.1"; sha256="01yhrzx67gz7j201mkv1aracrvjh4hxkrc7jn48cfwz0dp1lznws"; depends=[doParallel foreach hetGP laGP]; };
   liayson = derive2 { name="liayson"; version="1.0.4"; sha256="0xxl2l24km563n649kxzr15q0f6ks7l5yab3ig229s50i6sbn8nd"; depends=[ape arules biomaRt distances e1071 gplots matlab phangorn plyr proxy RColorBrewer]; };
   libbib = derive2 { name="libbib"; version="1.6.2"; sha256="1d6d4fc9bpj8lkkblqcccdcsf21136vdr38kzy91259z3525gvcg"; depends=[curl data_table pbapply stringr xml2]; };
@@ -11755,7 +11795,7 @@ in with self; {
   librarysnapshot = derive2 { name="librarysnapshot"; version="0.1.2"; sha256="0v4x564zpm58kxs5n84bi6mcjhbzjg6a2lc30vsc8kbm3qy0nq38"; depends=[]; };
   libsoc = derive2 { name="libsoc"; version="0.7.3"; sha256="0baglknb67gmzr4cimlvz44f11np8glcdjdgs3jy8qlz0c8pm95p"; depends=[]; };
   libstableR = derive2 { name="libstableR"; version="1.0.2"; sha256="1gkcgbc8a7ks9x8mqmlz98hk55q3qy62izam7csz1s0r5dzsyqcr"; depends=[Rcpp RcppGSL]; };
-  lidR = derive2 { name="lidR"; version="3.2.3"; sha256="0132vbfdppw9fr029w8c6lcfg8jxbfvb2y3p3wgs2n776c6y6wky"; depends=[BH data_table future geometry glue lazyeval raster Rcpp RcppArmadillo rgl rlas sf sp]; };
+  lidR = derive2 { name="lidR"; version="4.0.0"; sha256="1vmkmcgp509g6fcn8dphs8qv9hf9n6f5cx23n8h8d38mzf71x9vi"; depends=[BH classInt data_table glue lazyeval raster Rcpp RcppArmadillo rgl rlas sf sp stars terra]; };
   lidaRtRee = derive2 { name="lidaRtRee"; version="3.1.2"; sha256="09gbiy18jd08h7fvshv36zil51hjmiib2sqcpv1vnrnmfly2fyrs"; depends=[car gvlma imager leaps lidR raster reldist sp]; };
   lifecontingencies = derive2 { name="lifecontingencies"; version="1.3.8"; sha256="0q9lvckd98w87xl0045b0n76yy1q0yxacwrmh3xgp1xnzxv95wph"; depends=[markovchain Rcpp]; };
   lifecourse = derive2 { name="lifecourse"; version="2.0"; sha256="1m8ihqvzhzpq2m2pdvh37bpq9pdbj23r3y0jkl3q8farh3qj473d"; depends=[TraMineR]; };
@@ -11774,13 +11814,14 @@ in with self; {
   likelihoodExplore = derive2 { name="likelihoodExplore"; version="0.1.0"; sha256="13cnql7pbx8qq1j3cfb3lkzzf2k55shpfa0jd00z30ys6imxzcfn"; depends=[lazyeval plyr]; };
   likelihoodR = derive2 { name="likelihoodR"; version="1.0.7"; sha256="1bcrfx3v9xjyb2q44x26wf4d7p0f8nbcp1xhimk7y9rg05s7cxc9"; depends=[]; };
   likert = derive2 { name="likert"; version="1.3.5"; sha256="0c4irxs7pp1z8nj4s8cq23daw4h94n3h7x4f6q1d85614qcl9l3p"; depends=[ggplot2 gridExtra plyr psych reshape2 xtable]; };
-  lilikoi = derive2 { name="lilikoi"; version="2.0.4"; sha256="037iq4kqn9iwdq70hq1l7w1ak533ba43npnkr6yk6jnl7avf4bma"; depends=[car caret dplyr gbm ggplot2 glmnet h2o impute infotheo limma M3C Metrics MLmetrics pathifier pathview plyr preprocessCore pROC RCy3 reshape reticulate RWeka scales stringr survival survminer]; };
+  lilikoi = derive2 { name="lilikoi"; version="2.1.0"; sha256="1xdw5vfwg5ccjzw4n63fqcgnn6v3i7c94dvhpfa1dd1qm7p4daf8"; depends=[car caret dplyr gbm ggplot2 glmnet h2o impute infotheo limma M3C Metrics MLmetrics pathview plyr preprocessCore princurve pROC RCy3 reshape reticulate RWeka scales stringr survival survminer]; };
   lillies = derive2 { name="lillies"; version="0.2.9"; sha256="0ljqfl9w26z61fivzlr4sh371s418alzzkdlhghsq0w03871wd3h"; depends=[ddpcr dplyr knitr pracma progress rlang survival tidyr]; };
   limSolve = derive2 { name="limSolve"; version="1.5.6"; sha256="1829rd2cnd8qj80z9a7sgc7gx4sf3kvl5g6d2a0lqqw30f9sjzmr"; depends=[lpSolve MASS quadprog]; };
   lime = derive2 { name="lime"; version="0.5.2"; sha256="03b88s82f0386c44j3z74dwp9f765wx9n1ahrjpy0s2j0pfa5z09"; depends=[assertthat ggplot2 glmnet gower Matrix Rcpp RcppEigen stringi]; };
   liminal = derive2 { name="liminal"; version="0.1.2"; sha256="1ka16fm0gzhpydlk5pjf1vjcb7ygx1d3iv4z8cs6ywzrq4bb5r61"; depends=[dplyr jsonlite matrixStats miniUI rlang shiny tourr vegawidget]; };
-  limitplot = derive2 { name="limitplot"; version="1.2"; sha256="0wj1xalm80fa5pvjwh2zf5hpvxa3r1hnkh2z9z285wkbrcl0qfl2"; depends=[]; };
   limonaid = derive2 { name="limonaid"; version="0.1.1"; sha256="0zch942aqxznxs1fghnxxxi5j700xfxnj2xn968nmnlnvayp8hhs"; depends=[httr jsonlite R6]; };
+  limorhyde = derive2 { name="limorhyde"; version="1.0.1"; sha256="0ksz8chs5v7qss5yf24zcpszi6v0ylbn98zaxy7mz62qfx5i441g"; depends=[pbs]; };
+  limorhyde2 = derive2 { name="limorhyde2"; version="0.0.7"; sha256="06w3yf391gzaz0rssbl8jp3n9jmywwkmaxbf8mqxds5zy94f4bry"; depends=[abind ashr checkmate data_table DESeq2 foreach HDInterval iterators limma mashr pbs zeallot]; };
   lin_eval = derive2 { name="lin.eval"; version="0.1.2"; sha256="05saxzzwh3gs6a4ii63n5kjm06p399xkyrjnqvn9f164322p7pwb"; depends=[broom]; };
   linERR = derive2 { name="linERR"; version="1.0"; sha256="1mhiyqfpwagg161ncp5ndd22hlh12qzr360nms13rgyd8a077cq7"; depends=[survival]; };
   linLIR = derive2 { name="linLIR"; version="1.1"; sha256="1v5bwki5j567x2kndfd5nli5i093a33in31025h9hsvkbal1dxgp"; depends=[]; };
@@ -11806,14 +11847,13 @@ in with self; {
   linl = derive2 { name="linl"; version="0.0.4"; sha256="1wq0wm3k12sfvg0nzdsdxb4qc79kny7qvckxplfgaj6y62vcjxxl"; depends=[knitr rmarkdown]; };
   linne = derive2 { name="linne"; version="0.0.2"; sha256="19x13hf3skvxihlpa8wy05vlc94yv7nfs8b1pr8br76wk1xdkjvx"; depends=[cli magrittr purrr R6 rlang shiny]; };
   linpk = derive2 { name="linpk"; version="1.1.1"; sha256="0bii49b19kf50gbnv2am7kwy2gb9gkxv8vplcwlmm6k9b4gw9pjb"; depends=[mvtnorm]; };
-  linprog = derive2 { name="linprog"; version="0.9-2"; sha256="1ki14an0pmhs2mnmfjjvdzd76pshiyvi659zf7hqvqwj0viv4dw9"; depends=[lpSolve]; };
+  linprog = derive2 { name="linprog"; version="0.9-4"; sha256="1d34m2nyk7m6j2dci69bhy5mlw479xax1517j7f14pq7vhpsm9l1"; depends=[lpSolve]; };
   lintools = derive2 { name="lintools"; version="0.1.5"; sha256="08n4nrrpp9k39f8zl75zn88gk3wdm3cvfsxcp4jzpwhlzz9v5bh9"; depends=[]; };
   lintr = derive2 { name="lintr"; version="2.0.1"; sha256="14yfh641afg6griaadbdciyr3k94fl55s055qwzghgk5gdsj61zy"; depends=[codetools crayon cyclocomp digest httr jsonlite knitr rex rstudioapi testthat xml2 xmlparsedata]; };
   lipidomeR = derive2 { name="lipidomeR"; version="0.1.2"; sha256="1a9zi821mn7w18lg7psc9bagi3c5snvwqgda2f10rw5jff60fkfd"; depends=[BiocManager dplyr ggplot2 knitr limma reshape2 shadowtext stringr tableone tidyr]; };
   liqueueR = derive2 { name="liqueueR"; version="0.0.1"; sha256="0rpjib0dz39la63gy9bw9gmdfq2fcx40y4y4wcb6ky41qcjdp1nd"; depends=[itertools]; };
   lira = derive2 { name="lira"; version="2.0.1"; sha256="10bjmapnlw5z5cnbdpkwisvjkmk7zi9xqrvgmb5psj317zcxfc2p"; depends=[coda rjags]; };
   lisa = derive2 { name="lisa"; version="0.1.2"; sha256="05hijs66jfyr68yvmm1dn262p1k6y4q7f2zvqkfagcb483rhwi53"; depends=[tibble]; };
-  lisp = derive2 { name="lisp"; version="0.1"; sha256="025sq46277q9i21189cbmx5dnrh5wfshc5k6la1wjilhr1iqf6nj"; depends=[]; };
   lisrelToR = derive2 { name="lisrelToR"; version="0.1.4"; sha256="0zicq0z3hhixan1p1apybnf3v5s6v6ysll4pcz8ivygwr2swv3p5"; depends=[]; };
   list = derive2 { name="list"; version="9.2"; sha256="1gn0g4qq9rr6vwnwq6525hx7iy3q3vmy3g2v3ba69v4jcdc0a0mx"; depends=[arm coda corpcor gamlss_dist magic MASS mvtnorm quadprog sandwich VGAM]; };
   listArray = derive2 { name="listArray"; version="0.1.1"; sha256="0j8hdsda7p6m1q06mi32yh3wqsdjr77kb8js42nm63dgpfy7mvv5"; depends=[]; };
@@ -11832,7 +11872,7 @@ in with self; {
   liureg = derive2 { name="liureg"; version="1.1.2"; sha256="1zhc5fs47whjvvwwiivykxfchzbjbldyvdmqh9rp7ccwba2q3956"; depends=[]; };
   live = derive2 { name="live"; version="1.5.13"; sha256="1s6yrbwlc4wqszl2yvy1x6d93my18ba8sm8pwfy547cd1x055vig"; depends=[breakDown data_table dplyr e1071 forestmodel ggplot2 gower MASS mlr shiny]; };
   livechatR = derive2 { name="livechatR"; version="0.1.0"; sha256="1k0z6q3s9iw962m1lwlx45p95flzl5jg1xh6ng426v9jh1yyrbb2"; depends=[data_table dplyr jsonlite magrittr purrr]; };
-  liver = derive2 { name="liver"; version="1.10"; sha256="0mmlaw8xn4fwwwxchi7mlvhcg4z04v6x472478qsmmf3vsbdjg3a"; depends=[class ggplot2]; };
+  liver = derive2 { name="liver"; version="1.11"; sha256="1lrs33qvgg6flapazjx9x2han0x0n45zchdi63xvsbafi6cg3a93"; depends=[class ggplot2]; };
   ljr = derive2 { name="ljr"; version="1.4-0"; sha256="0jby94ml8w6pwnxbmv6qfjww2myvvnn9vrmlqpdh71dhgp3z35py"; depends=[]; };
   llama = derive2 { name="llama"; version="0.10.1"; sha256="1rw4lbz172hwb24r424qq86bw7m3xxl66k474wx1scpcrsix2nzw"; depends=[BBmisc checkmate data_table ggplot2 mlr parallelMap plyr rJava]; };
   llbayesireg = derive2 { name="llbayesireg"; version="1.0.0"; sha256="0jhkmrjkqfm1flwsbpv6060j6g7cj4ngm0drvrlvsiqpni0k96mh"; depends=[coda ggplot2 llogistic MASS MCMCpack Rcpp rstan StanHeaders]; };
@@ -11854,11 +11894,8 @@ in with self; {
   lmeNBBayes = derive2 { name="lmeNBBayes"; version="1.3.1"; sha256="13shfsh9x6151xy8gicb25sind90imrwclnmfj96b76p5dvhzabm"; depends=[]; };
   lmeSplines = derive2 { name="lmeSplines"; version="1.1-10"; sha256="0fy6hspk7rqqkzv0czvvs8r4ishvs7zsf4ykvia65nj26w7yhyia"; depends=[nlme]; };
   lmec = derive2 { name="lmec"; version="1.0"; sha256="09shj01h2dl5lh7ch0wayr7qyhlmk0prv3p1vfgy91sn0wpbqlxr"; depends=[mvtnorm]; };
-  lmem_qtler = derive2 { name="lmem.qtler"; version="0.1.1"; sha256="0qbllj66y294n1m8dsyrnwyvzscbzg8mb2dmjyghcrfaz925vkin"; depends=[lattice lme4 pastecs qtl stringr]; };
   lmerTest = derive2 { name="lmerTest"; version="3.1-3"; sha256="1zd8gqjkazhxgpnnr484xwsq30p62fq8592nzyc171zjyplpbaim"; depends=[ggplot2 lme4 MASS numDeriv]; };
-  lmeresampler = derive2 { name="lmeresampler"; version="0.2.0"; sha256="1qjxv3vrgw183hvya2k4qidnnx9w64lcksjm6v727kcigl3x9h1f"; depends=[catchr dplyr forcats ggdist ggplot2 HLMdiag magrittr Matrix nlmeU purrr statmod]; };
   lmf = derive2 { name="lmf"; version="1.2"; sha256="1xqlqmjl7wf5b2s2a1k1ara21v74b3wvwl4mhbj9dkdb0jcrgfva"; depends=[]; };
-  lmfor = derive2 { name="lmfor"; version="1.5"; sha256="1r301ajcp9ag23n0nw1rgwg8ss5cvinwqargbdg0jpqbhdrgaq7y"; depends=[magic nlme spatstat]; };
   lmls = derive2 { name="lmls"; version="0.1.0"; sha256="0gv7mawdpcqvvf3f61aa1l0yi32z9bs41i36ggn1nwga837g33k3"; depends=[generics]; };
   lmm = derive2 { name="lmm"; version="1.3"; sha256="13b5rvdbzljir1fn4zxv2lshbga64vwzn6884izif9v5dkd5b29j"; depends=[]; };
   lmmot = derive2 { name="lmmot"; version="0.1.4"; sha256="1a8msh9yvvd7cv1zxlxdv8arlfvxqghxzcxls23v6ifl5jf4d1p3"; depends=[MASS maxLik]; };
@@ -11880,7 +11917,7 @@ in with self; {
   loadings = derive2 { name="loadings"; version="0.1.1"; sha256="0nickkdjkfsjy8k52243181fdd1jvj3rgpzkcfjsmacbjcdl169g"; depends=[]; };
   loadr = derive2 { name="loadr"; version="0.1.3"; sha256="01nsjsv7c8grsizfisczqwjrz5saff0pgn7716ig4i8nzargvz7a"; depends=[]; };
   lobstr = derive2 { name="lobstr"; version="1.1.1"; sha256="0vkif17825x33cz8r89j0qph4wj5l8fzfgl8nh2g7m2v140cxjdq"; depends=[crayon Rcpp rlang]; };
-  locStra = derive2 { name="locStra"; version="1.7"; sha256="0pvxifzhafhb0iv2d9ar90j2436zjgdzav0dyjir7xrc4s597bxk"; depends=[Matrix Rcpp RcppEigen Rdpack RSpectra]; };
+  locStra = derive2 { name="locStra"; version="1.8"; sha256="1013xilzp6ly88nr26jzmcyvxadccv72m4s6pc9z5qv2baykbisw"; depends=[Matrix Rcpp RcppEigen Rdpack RSpectra]; };
   localFDA = derive2 { name="localFDA"; version="1.0.0"; sha256="099hqnd0q4ylg03qi7icc6a9w1x7p76vlv5wxk8f53l7y9pp27b3"; depends=[]; };
   localICE = derive2 { name="localICE"; version="0.1.1"; sha256="1pyq6kdahsy9qa0jzmring48r0i9h4rkp8lxpf9afksgm1qn0c5z"; depends=[checkmate ggplot2]; };
   localIV = derive2 { name="localIV"; version="0.3.1"; sha256="1z3q5hk6qfc1pzqdrxwm8y3am27648lfz66lm84bf8abifw4kk60"; depends=[KernSmooth mgcv rlang sampleSelection]; };
@@ -11891,7 +11928,7 @@ in with self; {
   locatexec = derive2 { name="locatexec"; version="0.1.1"; sha256="03vssc243nczwqp6z4adchcxql5aq0h3cs0daq5xwnncjmy3k7mx"; depends=[]; };
   locationgamer = derive2 { name="locationgamer"; version="0.1.0"; sha256="0y99m003s177x57m4ynxd8jd2xzl5zb4bj7jnbc04h22ffdl6m6f"; depends=[]; };
   locfdr = derive2 { name="locfdr"; version="1.1-8"; sha256="1falkbp2xz07am8jlhwlvyqvxnli4nwl188kd0g58vdfjcjy3mj2"; depends=[]; };
-  locfit = derive2 { name="locfit"; version="1.5-9.4"; sha256="1vcw16qww4v4547w0gfvhqg60l051bsdlxa6zfcgcj9xbxf6dlyr"; depends=[lattice]; };
+  locfit = derive2 { name="locfit"; version="1.5-9.5"; sha256="08yywswywmvyys8380576n43h3xyiviq1p2392zcivlbknnjp7zx"; depends=[lattice]; };
   locits = derive2 { name="locits"; version="1.7.3"; sha256="0sjnwqiqwzdkglvbdxbkg17gjp0vyqvywsy0qq7adxj5hh0yah05"; depends=[igraph wavethresh]; };
   locpol = derive2 { name="locpol"; version="0.7-0"; sha256="1p915n0l09kbwkly627074jslxl01yssp1rf0c7sygvsw6sgy5lm"; depends=[]; };
   locpolExpectile = derive2 { name="locpolExpectile"; version="0.1.1"; sha256="1phwcnbk1vmdk3qmfx2nd6crplly2lb8gb57yl67ky3c4sryh358"; depends=[expectreg lestat locpol matrixcalc quantreg]; };
@@ -11901,7 +11938,7 @@ in with self; {
   lodr = derive2 { name="lodr"; version="1.0"; sha256="0bmdw489dv1069krnx9yi0bcgx1vx4ymc6s4pix4shha5c5fbiz4"; depends=[Rcpp RcppArmadillo Rdpack]; };
   loe = derive2 { name="loe"; version="1.1"; sha256="1n16pgfxg9vcn729xxjbbvavg2ywbdcch9v2ph8nv3z7psc0q46c"; depends=[MASS]; };
   loewesadditivity = derive2 { name="loewesadditivity"; version="0.1.0"; sha256="0j9vvh2ys09hy2k3mbrlf0p493ymrxvfsdcjw0p6rlls54z9lqqc"; depends=[dplyr ggplot2 gridExtra magrittr metR rlang rootSolve tidyr viridis]; };
-  log = derive2 { name="log"; version="1.1.0"; sha256="04cl8qb2ivdili89h4cghcjqywpkz85v48g2vkg6hdlimcd63wff"; depends=[cli crayon R6]; };
+  log = derive2 { name="log"; version="1.1.1"; sha256="1vzssrg2qqxd27b9d36v3mmkhgkx8n724ql9yhl5p8dy28zgsdxd"; depends=[cli crayon R6]; };
   log4r = derive2 { name="log4r"; version="0.4.2"; sha256="0d7yxp3h7iy0miaprgp16n5vbxk0mvy8aci8r0mmml6wcl2h4jlj"; depends=[]; };
   logKDE = derive2 { name="logKDE"; version="0.3.2"; sha256="09gachibj0klqa9ijw572lwphbh9qj6zqray5byq1dh7zsiq516q"; depends=[pracma Rcpp]; };
   logNormReg = derive2 { name="logNormReg"; version="0.5-0"; sha256="0lv5m6yz1v8pi1svw9qh3gkq3r0lp13qhx3p6g6yvzqwd0px0pip"; depends=[]; };
@@ -11926,14 +11963,14 @@ in with self; {
   logitnorm = derive2 { name="logitnorm"; version="0.8.38"; sha256="01svs20dr0f1h66j5vn3ychjlgwzak96f8p9lmzd29anjlkm9x9q"; depends=[]; };
   logitr = derive2 { name="logitr"; version="0.5.0"; sha256="13rg9ki20px0bhajbhx0q66kg1qs915vrg66v13nckrzqkiza2fk"; depends=[MASS nloptr randtoolbox]; };
   loglognorm = derive2 { name="loglognorm"; version="1.0.1"; sha256="0rhx769a5nmidpbpngs2vglsbkpgw9badz3kj3jfmpj873jfnbln"; depends=[]; };
-  logmult = derive2 { name="logmult"; version="0.7.3"; sha256="10dmvvwlaw8dn6h0343d8apn7rlc2b8nys3f38x9wlvd9xhhlwxm"; depends=[gnm qvcalc]; };
+  logmult = derive2 { name="logmult"; version="0.7.4"; sha256="1k9izgna3bfi8gvnpks85gj3zv3lp35991ml58q7pcqqr78giii2"; depends=[gnm qvcalc]; };
   lognorm = derive2 { name="lognorm"; version="0.1.10"; sha256="021g3g7hyxcrj2lzqfjxj2ypcn8c6qminr0l6sdydynvjdjjv0pc"; depends=[Matrix]; };
-  logr = derive2 { name="logr"; version="1.2.8"; sha256="1pagik5ivaw7wqp7zr2n6nfm6v1q4sm9shl75n9fjk5g9f5ffrw0"; depends=[this_path withr]; };
+  logr = derive2 { name="logr"; version="1.2.9"; sha256="0kji2dp2bnfff4x4lq1gz57k4zsjc4i56slb8kxiiipchmv6drrj"; depends=[this_path withr]; };
   logspline = derive2 { name="logspline"; version="2.1.16"; sha256="12hkdi77vkic05p2vhap025xdcg1n53ywm239v18713pihdlj63l"; depends=[]; };
   lokern = derive2 { name="lokern"; version="1.1-9"; sha256="1fms79bb4y6ryzmxhpc544zh52xgd879gpcigc24bjhd7whl9nry"; depends=[sfsmisc]; };
   lolR = derive2 { name="lolR"; version="2.1"; sha256="0lrmn9lzyyfr1y0i7qp6xfpdxyisbkajwg0jkrqkiw687psnh2rc"; depends=[abind ggplot2 irlba MASS pls robust robustbase]; };
   lolog = derive2 { name="lolog"; version="1.3"; sha256="0lfb3d7rxssvzd70gixpmr8r8hcmxplg5yy181hdrvjsdc8w8jn4"; depends=[BH ggplot2 intergraph Matrix network Rcpp reshape2]; };
-  lomb = derive2 { name="lomb"; version="2.0"; sha256="08h1qk28vvia19rjcicjf8j1f7fhvk23k79yg7bprmffhj9r6vxw"; depends=[ggplot2 gridExtra]; };
+  lomb = derive2 { name="lomb"; version="2.1.0"; sha256="1hgf28bs5g07v7j05qxahs0q3j683401ssqk1r256pvk8x9j445l"; depends=[ggplot2 gridExtra plotly pracma]; };
   longCatEDA = derive2 { name="longCatEDA"; version="0.31"; sha256="0dji41lsknfwmgb2fczzm37dm97wvi45rh878w7pwlzwdh9vq8va"; depends=[]; };
   longROC = derive2 { name="longROC"; version="1.0"; sha256="1fs11vqi4hy99d7shzzdvd6ic5gay6rh2027w6j0qpd04n8q88m8"; depends=[survival]; };
   longRPart2 = derive2 { name="longRPart2"; version="0.2.3"; sha256="1vqcsxi6c4hqrpk3ns7yhghfryin1psxl38qkz2xz8cvyn58f685"; depends=[formula_tools ggplot2 MASS nlme rpart]; };
@@ -11964,7 +12001,7 @@ in with self; {
   lori = derive2 { name="lori"; version="2.2.2"; sha256="1153ilp1i849rwbbms4vfc6c1mxgpav04zfqm2sdj7s63nvknx6r"; depends=[data_table rARPACK svd]; };
   lotri = derive2 { name="lotri"; version="0.3.1"; sha256="042jbvpaawmfklak56gnmwyp43q9scm539crlv38j8aafik1g2s5"; depends=[]; };
   lowmemtkmeans = derive2 { name="lowmemtkmeans"; version="0.1.2"; sha256="08zhdw48rzw47yzhg4s37bkliyngxs46cyb57dvng1s3m0w0dhvi"; depends=[Rcpp RcppArmadillo]; };
-  lowpassFilter = derive2 { name="lowpassFilter"; version="1.0-0"; sha256="1f05z18nn3184rksmsarfz79bxn3gj760f1z9h5h3agqc180krm3"; depends=[Rcpp]; };
+  lowpassFilter = derive2 { name="lowpassFilter"; version="1.0-1"; sha256="02an3845dsxym2r8xb4xlg699vha28gw2jgy1hhmxs0mgklj6w2a"; depends=[Rcpp]; };
   lpSolve = derive2 { name="lpSolve"; version="5.6.15"; sha256="1fpkyjyqykwa1dxnhiky01pm09syxg169lm7hpy39bdbg10vw9s6"; depends=[]; };
   lpSolveAPI = derive2 { name="lpSolveAPI"; version="5.5.2.0-17.7"; sha256="1fsmipb97gglihrf424mz063fn67bf55jjahnbh53svkmm2qxg4y"; depends=[]; };
   lpbrim = derive2 { name="lpbrim"; version="1.0.0"; sha256="1cbkzl23vgs9hf83ggkcnkmxvvj8867k5b9vhfdrznpqyqv1f2gp"; depends=[Matrix plyr RColorBrewer]; };
@@ -11983,7 +12020,7 @@ in with self; {
   lrequire = derive2 { name="lrequire"; version="0.1.3"; sha256="03c8h9v2xhlv7bj5jv117a27gaqaly2kdxs9zyihsm9yh9rg3d79"; depends=[]; };
   lrgs = derive2 { name="lrgs"; version="0.5.4"; sha256="0mf6wqlv21z68w81hvpmhgngvdsklf3x2678d9c9lxfmqmpv4a7y"; depends=[mvtnorm]; };
   lrmest = derive2 { name="lrmest"; version="3.0"; sha256="1yddkgza672z9y0ipgl92pg9prhmr387zsqf0qbi9k2yzfz2vvs6"; depends=[MASS psych]; };
-  lrstat = derive2 { name="lrstat"; version="0.1.2"; sha256="06radfm59xq0m74bjf868nv8grl71fwxmwxqlks637l989z6kbrg"; depends=[Rcpp]; };
+  lrstat = derive2 { name="lrstat"; version="0.1.3"; sha256="1fcqpaw3rkns0lsaixfv2fh4k852gz063y21kk65v4hdv7aizlwr"; depends=[Rcpp]; };
   lsa = derive2 { name="lsa"; version="0.73.2"; sha256="1a33irqa6qvbc02z12rgbgv8kxq2gmahy7j5bg8b23lvvaxif06b"; depends=[SnowballC]; };
   lsasim = derive2 { name="lsasim"; version="2.1.2"; sha256="1x6vgdslw6v91l1p1igrvnj3s4ap2igqcx3m95y1ada7kpl3b2jk"; depends=[cli mvtnorm polycor]; };
   lsbclust = derive2 { name="lsbclust"; version="1.1"; sha256="1pbai58pfvhfcrd0nj13d54vrn9wrx2xapqhgqa1pkrjwbk5amj7"; depends=[clue doParallel foreach ggplot2 gridExtra mvtnorm plyr Rcpp reshape2]; };
@@ -11992,6 +12029,7 @@ in with self; {
   lsdv = derive2 { name="lsdv"; version="1.1"; sha256="0rl1xszr9r8v71j98gjpav30n2ncsci19hjlc9flzs1s20sb1xpr"; depends=[]; };
   lsei = derive2 { name="lsei"; version="1.3-0"; sha256="1dka0rigfw4vj809qma2dkiwjb3nw5635ynnba5cm299cn7hb2b2"; depends=[]; };
   lshorth = derive2 { name="lshorth"; version="0.1-6"; sha256="0nbjakx0zx4fg09fv26pr9dlrbvb7ybi6swg84m2kwjky8399vvx"; depends=[]; };
+  lsirm12pl = derive2 { name="lsirm12pl"; version="1.0.0"; sha256="0lsmp2nrzi2nqch0qhbgfm17a8ibkwpxving5pka4kzyrbc02qzh"; depends=[ggplot2 GPArotation MCMCpack Rcpp RcppArmadillo]; };
   lsl = derive2 { name="lsl"; version="0.5.6"; sha256="1hwzklx1qp5ljc059j2hridg3caw4cgn7rbqs8xh2arzcvqdw3rb"; depends=[ggplot2 lavaan reshape2]; };
   lslx = derive2 { name="lslx"; version="0.6.10"; sha256="189gpp1ikcp5ld4avipwckdz997v1cx2zas5a8b54nv246kb5hmd"; depends=[ggplot2 lavaan R6 Rcpp RcppEigen]; };
   lsm = derive2 { name="lsm"; version="0.2.1.2"; sha256="1sp6c3r3g0q9lynzpcjvfwrp7xml11q66cqcisjvidm79vxjgi5v"; depends=[dplyr ggplot2]; };
@@ -12004,7 +12042,7 @@ in with self; {
   lss2 = derive2 { name="lss2"; version="1.1"; sha256="1rkv26zq36zyh891xkkllxphwplljmzpy15g619x1w4qvsajyyg8"; depends=[quantreg]; };
   ltable = derive2 { name="ltable"; version="2.0.1"; sha256="15il58g7m09z0alln12xp1g6y3i8vaxggf229nbgb5gmcf4z97dx"; depends=[clipr Rcpp RcppGSL]; };
   ltbayes = derive2 { name="ltbayes"; version="0.4"; sha256="0kv5k56hmc1m7bv5pmmmk46822szsgwqgpwydn0x56az7xn6hjk6"; depends=[mcmc MHadaptive numDeriv]; };
-  ltm = derive2 { name="ltm"; version="1.1-1"; sha256="1qrgzwx5l58qf5rfp1knxc84r0g943q5sdr3ky74zzwpnmrf2vf7"; depends=[MASS msm polycor]; };
+  ltm = derive2 { name="ltm"; version="1.2-0"; sha256="0vhgbk6j0z3limsrbjkjkpfn2whiaij5j4jf1gg66mjs9dlylap1"; depends=[MASS msm polycor]; };
   ltmix = derive2 { name="ltmix"; version="0.2.1"; sha256="03i0gr79xiqnny57g0y9w5dfpw51gqhrkff2rh8rggsni20pzm1h"; depends=[gtools pracma]; };
   ltmle = derive2 { name="ltmle"; version="1.2-0"; sha256="1mqrf77319cjs3q48iigrkjc3rjibz7qyij49a7l0nim3c1hd0b0"; depends=[Matrix matrixStats speedglm]; };
   ltsa = derive2 { name="ltsa"; version="1.4.6"; sha256="10wmw9r00400ng2zlysd8jqgypjclshxj83x32002j2a9cz4f186"; depends=[]; };
@@ -12074,9 +12112,9 @@ in with self; {
   madsim = derive2 { name="madsim"; version="1.2.1"; sha256="11gfyimbz363p5xy1x6rsz5fcgzcr55myc5aaz5lazjkcnfn17aq"; depends=[]; };
   magclass = derive2 { name="magclass"; version="6.0.9"; sha256="1a7qs93hww88skzcbrqlajhlxqp7x39bwclw4kd2af263iwjch4h"; depends=[abind data_table forcats maptools sp]; };
   magi = derive2 { name="magi"; version="1.1.5"; sha256="0f322m2rrq1r8wnr9x86zs0kv2ca4wqf0a72saf37qg8r66gnf1b"; depends=[BH deSolve gridBase gridExtra Rcpp RcppArmadillo roptim]; };
-  magic = derive2 { name="magic"; version="1.5-9"; sha256="0snmdh6vk0p6ar1swsihisinxrx7l8371dri5lk0z24ysgr5w7gs"; depends=[abind]; };
+  magic = derive2 { name="magic"; version="1.6-0"; sha256="1gybia2aq80ldk1d845y5srncfzbbmpqhgl7vfaz7qqqjs6d85j5"; depends=[abind]; };
   magicLamp = derive2 { name="magicLamp"; version="0.1.0"; sha256="1nfcnbqd6vawz8l3vgkbhmm462xdvaa4pn6axzmz8hl05xv2k3cv"; depends=[httr tibble]; };
-  magicaxis = derive2 { name="magicaxis"; version="2.2.1"; sha256="1ba8psg3ja8b69s1afywsjz5sfljryhk5vvq1n4dzm1gsz6c772l"; depends=[celestial mapproj MASS plotrix RANN RColorBrewer sm]; };
+  magicaxis = derive2 { name="magicaxis"; version="2.2.14"; sha256="1gqnivn6qjmf7axdi0pff6a40clklbipcr6qvm6ivzqbqhpbcb7v"; depends=[celestial mapproj MASS plotrix RANN sm]; };
   magicfor = derive2 { name="magicfor"; version="0.1.0"; sha256="07l33fczr1x42sfxrsqq4q6r65sdflin6l8f5cgclnvx1858jdip"; depends=[]; };
   magick = derive2 { name="magick"; version="2.7.3"; sha256="0h942bn7wfnzbbgq9hrs75c7igmg5r1c5sad2v0znhza4cp7p1w3"; depends=[curl magrittr Rcpp]; };
   magickGUI = derive2 { name="magickGUI"; version="1.3.0"; sha256="114l5mga9x3vn9qqydyq1v75gqldh4p6m4i8ak0xw3v7p6wsf8gn"; depends=[magick]; };
@@ -12087,15 +12125,15 @@ in with self; {
   maicChecks = derive2 { name="maicChecks"; version="0.1.2"; sha256="1c2n8avrhx0lvw9hi5slymm49lzf37hbkqzkqy230aikgmpv0cpa"; depends=[data_table ggplot2 lpSolve quadprog tidyr]; };
   mail = derive2 { name="mail"; version="1.0"; sha256="1m89cvw5ba4d87kp2dj3f8bvd6sgj9k56prqmw761q919xwprgw6"; depends=[]; };
   mailR = derive2 { name="mailR"; version="0.8"; sha256="0p6vxzpyms1pxdb0j07izzxinw8xfmmbsj35nkypxyjv92qi802k"; depends=[assertthat R_utils rJava stringr]; };
-  mailmerge = derive2 { name="mailmerge"; version="0.2.3"; sha256="0sc2201cvyis59lqs56x520q9hpp39hcm807diqr0wnip41h0f3i"; depends=[commonmark dplyr fs glue gmailr googledrive googlesheets4 lifecycle magrittr miniUI purrr rmarkdown rstudioapi shiny withr]; };
+  mailmerge = derive2 { name="mailmerge"; version="0.2.4"; sha256="0rffvkh7v9r3pdbdclj5mx78dk5qszqpm8z7jp4x9h3jiyrh40gp"; depends=[commonmark fs glue gmailr googledrive lifecycle magrittr miniUI purrr rmarkdown rstudioapi shiny]; };
   mailtoR = derive2 { name="mailtoR"; version="0.1.0"; sha256="0mnzblhy2vbxkf0k49bw1g08jw84s59zxbjrva2j2q347wzf4rgk"; depends=[glue htmltools]; };
   majesticR = derive2 { name="majesticR"; version="0.1.1"; sha256="0x23p4js9cfnj8c33cp0fql5pvs4fn4frbbzpq85mxjhiifkxxpf"; depends=[jsonlite urltools]; };
   makeFlow = derive2 { name="makeFlow"; version="1.0.2"; sha256="0r7a0klgx144rnks0fhjflnf8vfyyx2544n86nnxkp6cdvw0b4pw"; depends=[dplyr RColorBrewer]; };
   makeProject = derive2 { name="makeProject"; version="1.0"; sha256="09q8xa5j4s5spgzzr3y06l3xis93lqxlx0q66s2nczrhd8nrz3ca"; depends=[]; };
   makedummies = derive2 { name="makedummies"; version="1.2.1"; sha256="062rvijhy2dybpgxzp44cg46bfyb8lp9yasv3mhskhf3yg717sqp"; depends=[tibble]; };
-  makemyprior = derive2 { name="makemyprior"; version="1.0.0"; sha256="0l4xpalw13x07fr1g9h6dfcmb16dk712pp70mnshqjhy1vlq2ajp"; depends=[ggplot2 knitr MASS Matrix rlang rmarkdown shiny shinyBS shinyjs testthat visNetwork]; };
+  makemyprior = derive2 { name="makemyprior"; version="1.0.1"; sha256="0lal0nklw0f9340gdrl2icp9qvcnjasx07a04zr3iw2rgaq5r48c"; depends=[ggplot2 MASS Matrix rlang shiny shinyBS shinyjs visNetwork]; };
   makepipe = derive2 { name="makepipe"; version="0.1.0"; sha256="087lp7s70nx1zfs3mw4jk43miw4sc0gfd5faxqpnkgbpx01iaa51"; depends=[cli R6 visNetwork]; };
-  maketools = derive2 { name="maketools"; version="1.2.0"; sha256="1i2s48s0qfk9nwkkbx5hr0q7b0c8xziyrsg1klianmk9jqfngg36"; depends=[sys]; };
+  maketools = derive2 { name="maketools"; version="1.2.2"; sha256="1p98vg5404np5fbiqajznmiqah8lyfv2xf741wjfm2jqkki9nk40"; depends=[sys]; };
   malan = derive2 { name="malan"; version="1.0.2"; sha256="0qwf0r2gwpb93gzvyp8vaw7j6rhghr6nbrfp8xw876n5j5b9jhj3"; depends=[dplyr igraph magrittr Rcpp RcppArmadillo RcppProgress tibble tidygraph]; };
   malani = derive2 { name="malani"; version="1.0"; sha256="1jps28gfkiysr356ackxf1my5xz6rpx3a2bv68pziy2614hrqbs9"; depends=[e1071]; };
   malariaAtlas = derive2 { name="malariaAtlas"; version="1.0.1"; sha256="0k0406pn65ars4d6zlirfdd7z3rl2z82vsx5p97gmxnjjp6gjdpa"; depends=[curl dplyr ggplot2 gridExtra httr raster rgdal rlang sp stringi tidyr xml2]; };
@@ -12114,10 +12152,10 @@ in with self; {
   manymodelr = derive2 { name="manymodelr"; version="0.3.7"; sha256="0kc4y9i21qkcg0pkwlas2mm06s54s70w5ybw4215qjwiy6xax268"; depends=[caret dplyr e1071 ggplot2 lme4 Metrics]; };
   maotai = derive2 { name="maotai"; version="0.2.4"; sha256="178gsci0sdlqzdi18cnc7qvs008w5db50hd9ayzlvabsc0dk19z2"; depends=[cluster dbscan fastcluster labdsv Matrix RANN Rcpp RcppArmadillo RcppDist Rdpack RSpectra Rtsne shapes]; };
   mapReasy = derive2 { name="mapReasy"; version="1.0"; sha256="13va0z967ckwxnnianki5aj66km0x6r37nj4mz9qd3b0bps4g2kj"; depends=[Hmisc rgdal sp]; };
-  mapSpain = derive2 { name="mapSpain"; version="0.5.0"; sha256="0xilniivfwh9k6yhpbfajxl54785kshm6xbyr40r6l833xw8ysnn"; depends=[countrycode giscoR rappdirs sf]; };
+  mapSpain = derive2 { name="mapSpain"; version="0.6.1"; sha256="1zjg6g96fc76wkrawzan8gmhvy5n55zb9lgqv67jm8gxrzh8li69"; depends=[countrycode giscoR rappdirs sf]; };
   mapStats = derive2 { name="mapStats"; version="2.4"; sha256="18pp1sb9p4p300ffvmzjrg5bv1i7f78mhpggq83myc26c3a593na"; depends=[classInt colorspace Hmisc lattice maptools RColorBrewer reshape2 sp survey]; };
   mapaccuracy = derive2 { name="mapaccuracy"; version="0.1.0"; sha256="1rrnbmar8s48kww2x9qjlm68xs55mbc8cnms2crdsaah7787s6aa"; depends=[assertthat gtools reshape]; };
-  mapbayr = derive2 { name="mapbayr"; version="0.5.0"; sha256="12k8n3fcm9km14ih4vspv4p314yqqim2v3hgcd4h98jwsp3ls6aq"; depends=[dplyr ggplot2 magrittr mrgsolve optimx purrr rlang stringr tibble tidyr]; };
+  mapbayr = derive2 { name="mapbayr"; version="0.6.0"; sha256="06kczyij4y10xs0ydj85qhgxbgcw2dwa8gjc19di7cwjhbzp9si7"; depends=[dplyr ggplot2 magrittr mrgsolve optimx purrr rlang stringr tibble tidyr]; };
   mapboxapi = derive2 { name="mapboxapi"; version="0.3.1"; sha256="1rqkzc3ggccvn9s1ib23yv3531j433z4xwl0alr8qk23pj3290ff"; depends=[aws_s3 curl dplyr geojsonsf httr jpeg jsonlite leaflet magick png protolite purrr raster rlang sf slippymath stringi tidyr units]; };
   mapboxer = derive2 { name="mapboxer"; version="0.4.0"; sha256="0f873js87dgk8nqnhpxh88svvsbnk81vkm7gycb62mkr4xqsgqs7"; depends=[geojsonsf htmltools htmlwidgets magrittr purrr yaml]; };
   mapcan = derive2 { name="mapcan"; version="0.0.1"; sha256="1a4135wc1h4nzcv6xq0bg75i744wyq8p7q0ix7y2x2gb6s35w46k"; depends=[dplyr ggplot2 magrittr]; };
@@ -12143,7 +12181,7 @@ in with self; {
   mapscanner = derive2 { name="mapscanner"; version="0.0.6"; sha256="017m33v2523rjmspfbzq1xnb3clzmbn4p1qqzp480j71wy5c1dry"; depends=[cli curl fs glue magick magrittr memoise pdftools png purrr raster Rcpp reproj RNiftyReg sf slippymath tibble]; };
   mapsf = derive2 { name="mapsf"; version="0.4.0"; sha256="1h6szi33rbk279sh1ws4vhx6h7dl6zk5dpd7rjhay7811dq6q7wh"; depends=[classInt Rcpp sf]; };
   maptiles = derive2 { name="maptiles"; version="0.3.0"; sha256="025n9fpl55n9wnslpjqr4z5y0q4mn68dplb3fm7wyn968kw7sbig"; depends=[curl png sf slippymath terra]; };
-  maptools = derive2 { name="maptools"; version="1.1-2"; sha256="0fa4a43zax8gn3jdp4ngqav61x4g6l33bg9wzqbngkbjhipck59r"; depends=[foreign lattice sp]; };
+  maptools = derive2 { name="maptools"; version="1.1-3"; sha256="0ixvh4qbdjjl19ghgbb2r26yksya977q1yzs4yn5wshwm0763xph"; depends=[foreign lattice sp]; };
   maptpx = derive2 { name="maptpx"; version="1.9-7"; sha256="0f85i3vwr5rvz261z6j7x15gsahxrq4qqddfb0qyhypgihvwh857"; depends=[slam]; };
   maptree = derive2 { name="maptree"; version="1.4-7"; sha256="1k7v84wvy6wz6g0dyiwvd3lvf78rlfidk60ll4fz7chvr2nrqdp4"; depends=[cluster rpart]; };
   mapview = derive2 { name="mapview"; version="2.10.0"; sha256="1amscd7h5c26r8w6bp68a855vy7y8h84z7dvcc8vz6jbcln915xm"; depends=[base64enc htmltools htmlwidgets lattice leafem leaflet leafpop png raster satellite scales servr sf sp webshot]; };
@@ -12152,11 +12190,12 @@ in with self; {
   marcher = derive2 { name="marcher"; version="0.0-2"; sha256="0hcxbfrwniih4kvx5sxhlffz1pc87kf52v8hvaf193rhhdykis5q"; depends=[magrittr Matrix minpack_lm mvtnorm numDeriv plyr RColorBrewer scales zoo]; };
   marelac = derive2 { name="marelac"; version="2.1.10"; sha256="08phsghzvi0z78pkb5lkamni83fsw0bqfri99j6bjf6y14aygif9"; depends=[seacarb shape]; };
   marg = derive2 { name="marg"; version="1.2-2.1"; sha256="1r6rl7dhvm8dghm7pm4hfw3924qja65hczl6d47v9ixnv4rxyzr9"; depends=[statmod survival]; };
-  marginaleffects = derive2 { name="marginaleffects"; version="0.3.3"; sha256="0ns77ffnai4dl9b3rwg95dxjv1ylpf84cq2hi8f5cr1xwpsx9bmm"; depends=[checkmate generics insight]; };
+  margaret = derive2 { name="margaret"; version="0.1.1"; sha256="0qbbbc3ca8ps6b2k3i3rbhz5yr2szrwypqhrjqlhs893nybh3nlq"; depends=[devtools dplyr igraph lubridate purrr readr rlang rvest scholar SnowballC stringi stringr tibble tidyr tidytext tidyverse treemapify usethis widyr writexl]; };
+  marginaleffects = derive2 { name="marginaleffects"; version="0.3.4"; sha256="0ph91ga6jfdsm480kcmyjlrxf44qxcaywq2fqdaw3md0m1hkkxrl"; depends=[checkmate generics insight]; };
   marginalizedRisk = derive2 { name="marginalizedRisk"; version="2021.2-4"; sha256="0kagl9xghq9nsh9qvx165j1a5plh08zxhb6nm8j402mnl8pq7a4z"; depends=[]; };
   margins = derive2 { name="margins"; version="0.3.26"; sha256="0sx5xjbzz1rjz8bklfna3171s53xsh123x4bh0kmwp006v8rv309"; depends=[data_table MASS prediction]; };
   marima = derive2 { name="marima"; version="2.2"; sha256="03nvh93r4052li84yjqzc106gwh1542q9s192s980gs6sgy8scm6"; depends=[]; };
-  mark = derive2 { name="mark"; version="0.4.1"; sha256="1lcax5bi00n7as4pm2149rjvymrlasf0837k0iyvb58k7nyhwv9x"; depends=[magrittr]; };
+  mark = derive2 { name="mark"; version="0.5.0"; sha256="11w0lkc0nvm2rprkn0mwh5acdr6wf86ijhqzqjd6aw95ziqyrkgj"; depends=[magrittr]; };
   markdown = derive2 { name="markdown"; version="1.1"; sha256="06zwbrp14bri3470anadd7dvgmw06xf8df6v2pk64wx3f9sd934d"; depends=[mime xfun]; };
   markdownInput = derive2 { name="markdownInput"; version="0.1.2"; sha256="1qxil2liikbbn6w8niyc03fwqvwvdv6wiy98ip8j77729i7g2hln"; depends=[markdown shiny shinyAce]; };
   marked = derive2 { name="marked"; version="1.2.6"; sha256="0k367sjyac1w894rndz5m0drmbd56nzyx5mr7mvhsqzq3gnv4dw5"; depends=[bookdown coda data_table expm kableExtra knitr lme4 Matrix numDeriv optimx R2admb Rcpp TMB truncnorm]; };
@@ -12168,7 +12207,7 @@ in with self; {
   markovchain = derive2 { name="markovchain"; version="0.8.6"; sha256="1al3b76qi6var3gpfqxy6kp0varyp7sbblrhm6hvzf8nwqvl3hq2"; depends=[expm igraph matlab Matrix Rcpp RcppArmadillo RcppParallel]; };
   marl = derive2 { name="marl"; version="1.0"; sha256="0rndnf3rbcibv3gsrw1kfp5zhg37cw9wwlz0b7dbwprd0m71l3pm"; depends=[]; };
   marmap = derive2 { name="marmap"; version="1.0.6"; sha256="16r7in3m63l7fdwxwfdphcd4fr073fb675zabjxphpxmclikyxdz"; depends=[adehabitatMA DBI gdistance geosphere ggplot2 ncdf4 plotrix raster reshape2 RSQLite shape sp]; };
-  marqLevAlg = derive2 { name="marqLevAlg"; version="2.0.5"; sha256="0cp3p9cgnb9hw08s8gjs7yj51d4fsa5zkkrikbgzkw0skj1gaa51"; depends=[doParallel foreach]; };
+  marqLevAlg = derive2 { name="marqLevAlg"; version="2.0.6"; sha256="12jvrya818rdg6bn45v16hz78kxzzf53w914vdfqcd644438xad8"; depends=[doParallel foreach]; };
   mase = derive2 { name="mase"; version="0.1.3"; sha256="10wyrvh3p344inx5qbzkwh4rr3lmpnh1ikhrghmlqr5607kiy3fm"; depends=[boot dplyr glmnet magrittr Rdpack rpms survey]; };
   mashr = derive2 { name="mashr"; version="0.2.57"; sha256="1jjmqd3z3f7bxj6zw7yw6k9j6aiwnihd8cm14271kkpyy0id8slm"; depends=[abind ashr assertthat mvtnorm plyr Rcpp RcppArmadillo RcppGSL rmeta softImpute]; };
   maskRangeR = derive2 { name="maskRangeR"; version="1.0"; sha256="12g9cx7l2bwl3wzka11p73r6w47h4nma3rdlhm9kq1a69ig5cm68"; depends=[dismo dplyr e1071 gdalUtils lubridate magrittr maptools raster rgdal sp tidyverse virtualspecies]; };
@@ -12177,8 +12216,7 @@ in with self; {
   mastif = derive2 { name="mastif"; version="1.0.1"; sha256="1jw7dz4qxyj848qm7lwg0klcw028260nizdi5gdwf7wd5a2nis9c"; depends=[corrplot RANN Rcpp RcppArmadillo repmis xtable]; };
   matR = derive2 { name="matR"; version="0.9.1"; sha256="1qw2vqmpq7gc3dmr9r000ccjj7xa0h82waxnvryz3l17ggryyjjm"; depends=[BIOM_utils MGRASTer]; };
   matahari = derive2 { name="matahari"; version="0.1.3"; sha256="03mhn4qh1vcz2hr0mxp6gijwgrzvbpfb8dq7lqhchbk5gq5g3fnh"; depends=[clipr jsonlite purrr readr rlang rstudioapi tibble]; };
-  match2C = derive2 { name="match2C"; version="1.2.1"; sha256="0p4k69a7az6snjbi8skswzizvfah70ipqhxb0qn380y1vjnwd0jv"; depends=[ggplot2 mvnfast rcbalance Rcpp]; };
-  matchMulti = derive2 { name="matchMulti"; version="1.1.7"; sha256="0k5psmjzcyr7pm603vni7w2hvslck05r81cngm26pql2prdrv5yk"; depends=[coin Hmisc MASS mvtnorm plyr rcbsubset weights]; };
+  match2C = derive2 { name="match2C"; version="1.2.2"; sha256="0sacmxq9igvkn4qq1fzynbyiq13jj92k2gx42bbfnm4g8gjlhpch"; depends=[ggplot2 mvnfast rcbalance Rcpp]; };
   matchbook = derive2 { name="matchbook"; version="1.0.7"; sha256="0xfqg8z2zkn215kqmjjkqdwrgsk7cn4jdpxfgd6razhcbvflg48j"; depends=[]; };
   matchingMarkets = derive2 { name="matchingMarkets"; version="1.0-2"; sha256="1jj5hzxiivqinkpddmkqdxgi83jm6blann9wgv4g8prn3lvp0i85"; depends=[lattice lpSolve partitions Rcpp RcppArmadillo RcppProgress rJava]; };
   matchingR = derive2 { name="matchingR"; version="1.3.3"; sha256="1wr1faaixn5scx2c8g2jfvfm489k0ah9isza67gz0db8knja9nig"; depends=[Rcpp RcppArmadillo]; };
@@ -12186,7 +12224,7 @@ in with self; {
   matchr = derive2 { name="matchr"; version="0.1.0"; sha256="01nvas5ngkhzhr98n1786zsih2n2lbxx3ajwaqfd96ai0yqw2jnh"; depends=[rlang]; };
   matconv = derive2 { name="matconv"; version="0.4.2"; sha256="1iyy344p3fsfx3gw9kzr0x9zhsplba22fpzl1mhk10wvf99xiwb3"; depends=[]; };
   materialmodifier = derive2 { name="materialmodifier"; version="1.1.0"; sha256="116d8pppibi4kfd4jx4pc80n036lj86fprjnakkv4m890nkbznjr"; depends=[downloader imager jpeg magrittr moments png readbitmap stringr]; };
-  mathjaxr = derive2 { name="mathjaxr"; version="1.4-0"; sha256="0rywdm4ki569hzmpwnzhr3h6slkkakf4l19rb2fa74ym6s13fmxs"; depends=[]; };
+  mathjaxr = derive2 { name="mathjaxr"; version="1.6-0"; sha256="0yf1sfkb2kjsplipl2v4k2gp20li9xzsynclg228sy0v243pdi7c"; depends=[]; };
   mathpix = derive2 { name="mathpix"; version="0.4.0"; sha256="0wwagf8v7awgiyi8vrfay5m2pbl1czn62g5bkg037wwy0c68n8va"; depends=[base64enc httr magick purrr rstudioapi texPreview]; };
   matie = derive2 { name="matie"; version="1.2"; sha256="1ymx49cyvz63imqw5n48grilphiqvvdirwsrv82p7jgxdyav2xv0"; depends=[cba dfoptim gplots igraph mvtnorm seriation]; };
   matlab = derive2 { name="matlab"; version="1.0.2"; sha256="0m21k2vzbc5d3c93p2hk4208xyd2av2slg55q5j1ibjidiryqgd2"; depends=[]; };
@@ -12222,7 +12260,7 @@ in with self; {
   maxnet = derive2 { name="maxnet"; version="0.1.4"; sha256="05l24dksdgb43dpi4py4qkh8j9ynrnsglydy3gph1b61ygnfa8gx"; depends=[glmnet]; };
   maxnodf = derive2 { name="maxnodf"; version="1.0.0"; sha256="1czhy3177bb4a5rxi2s4j3c9xn9f0b2pbkdka1dzw6ga389wdwb3"; depends=[Rcpp]; };
   maxstat = derive2 { name="maxstat"; version="0.7-25"; sha256="114z1rwxwvk05ijjhdppzm148n1h192fp0w12ky10zkrhf6kphbg"; depends=[exactRankTests mvtnorm]; };
-  maybe = derive2 { name="maybe"; version="0.1.0"; sha256="1n77n2l9xf4625y8il936dwfpmkq95pfbrs8cgd713il4dq1jy0d"; depends=[]; };
+  maybe = derive2 { name="maybe"; version="0.2.0"; sha256="1nr7ivz9d5rpkxha89na8wgy7ds2v1n3pmjzxq5qdpfjfaphp84z"; depends=[]; };
   mazeGen = derive2 { name="mazeGen"; version="0.1.3"; sha256="192xygg3l4rpqp49sgd5hpp4h3f8wjhyldn0l8abxhsks7jd2kfb"; depends=[igraph]; };
   mazealls = derive2 { name="mazealls"; version="0.2.0"; sha256="14j6syw1zkgs4cnmxzqpm6klmgvck2gg97wkzmy9al6n0biy8gmb"; depends=[TurtleGraphics]; };
   mazeinda = derive2 { name="mazeinda"; version="0.0.1"; sha256="0ns4ib73y4fghf7p1wg0a05js4mqr66dpp49p1h039pqrb0f1vwd"; depends=[foreach]; };
@@ -12279,12 +12317,11 @@ in with self; {
   mcmcse = derive2 { name="mcmcse"; version="1.5-0"; sha256="0qvlkv7j35h2lxdzhbsbsrf1cgsbgf4in7lxgwmx7vs85k10v0ja"; depends=[ellipse fftwtools Rcpp RcppArmadillo testthat]; };
   mco = derive2 { name="mco"; version="1.15.6"; sha256="10h5d2lw6ybyva44nn5wml6v3ljpnv9m1b2lh36vg2cwrdwy5sqp"; depends=[]; };
   mcompanion = derive2 { name="mcompanion"; version="0.5-3"; sha256="0051agyzbhrsxi9wpfpqcq98h7y25627s2czf30qxcq80m7xbhj0"; depends=[gbutils MASS Matrix Rdpack]; };
-  mcp = derive2 { name="mcp"; version="0.3.1"; sha256="07acx5mvp4znibjyacyjrnb4f5glq1xh4qhzysvkqj4vl1wai6vl"; depends=[bayesplot coda dplyr future future_apply ggplot2 loo magrittr patchwork rjags rlang stringr tibble tidybayes tidyr tidyselect]; };
+  mcp = derive2 { name="mcp"; version="0.3.2"; sha256="0vqn0lb7nc5hp2ls2h17ybldxrqj6l1hd4pk5pr4d22yyidlvx96"; depends=[bayesplot coda dplyr future future_apply ggplot2 loo magrittr patchwork rjags rlang stringr tibble tidybayes tidyr tidyselect]; };
   mcparallelDo = derive2 { name="mcparallelDo"; version="1.1.0"; sha256="1ivh0d4f7ks6xwcjywk62h1zhr7h5bbhzpisky7973wi4g8vipbn"; depends=[checkmate R_utils R6]; };
   mcprofile = derive2 { name="mcprofile"; version="1.0-1"; sha256="118n3pxzjm4j9y09d1n2hw7pm0b8b0m8mnm5v9kq76vignklh75l"; depends=[ggplot2 mvtnorm quadprog]; };
   mcr = derive2 { name="mcr"; version="1.2.2"; sha256="0n1wd8z7j9s20ym8m6vbpixibmfb3qkykb3z92jv3pbamjf2sxsc"; depends=[]; };
   mcreplicate = derive2 { name="mcreplicate"; version="0.1.2"; sha256="12pmfp75sc00cdrkx4xniq74qqx3y67qxwdrrbp2mf562pdn2gmn"; depends=[]; };
-  mcsm = derive2 { name="mcsm"; version="1.0"; sha256="13sx7s3ywis5n4a70ld2szld9fb8jkfsc82dy6iskhy17vy8pml0"; depends=[coda MASS]; };
   mctest = derive2 { name="mctest"; version="1.3.1"; sha256="1d248r9ifwl1xhvka6z69l943rvbq7s7ag6vqp9lljkcybvg75f2"; depends=[]; };
   mctq = derive2 { name="mctq"; version="0.1.0"; sha256="1j4f5jfwq827x0dd19xfwjrxf1rclr5813l2rcirxifsncs5hbnc"; depends=[checkmate cli dplyr hms lifecycle lubridate]; };
   mcunit = derive2 { name="mcunit"; version="0.3.2"; sha256="16nnm50g87iaf058b1w5w5hphx99xplczndcbv1356f2gs2gfy6l"; depends=[Rdpack rlang simctest testthat]; };
@@ -12296,7 +12333,7 @@ in with self; {
   mdapack = derive2 { name="mdapack"; version="0.0.2"; sha256="1dfcjh8yax06m890ql0kc2rn539z4xbhw7bq9a8cbrm7jnkq03iq"; depends=[covr curl devtools FactoMineR ggplot2 gh git2r httr knitr mice openssl pkgbuild reshape2 rlang rmarkdown roxygen2 spelling testthat VIM]; };
   mdatools = derive2 { name="mdatools"; version="0.12.0"; sha256="11dav3ljfff945lr1ldbn9g7grjnny5dmk0w723lrk63cx6jd5f0"; depends=[Matrix]; };
   mdbr = derive2 { name="mdbr"; version="0.1.2"; sha256="1c33v2dqz1jjh730p486bi07h9m9clpcfrbvhbvwb8fslqxg76qd"; depends=[readr]; };
-  mde = derive2 { name="mde"; version="0.3.1"; sha256="07idj8yp5adw2qx8nvq0zyg83db6mgp2ndb33grkkzy75vyhgs50"; depends=[dplyr tidyr]; };
+  mde = derive2 { name="mde"; version="0.3.2"; sha256="121bzypndsx4abls1f7rjrvg98rqkb155vd5aiql8vi1lwgzy9jl"; depends=[dplyr tidyr]; };
   mded = derive2 { name="mded"; version="0.1-2"; sha256="1j8fcz5yc70p9qd9l010xj1b625scdps8z1pqh75b45p2hiqbhlc"; depends=[]; };
   mdendro = derive2 { name="mdendro"; version="2.1.0"; sha256="1hpm7aqfg340nrrn8m962kwaw67myvcrkv9yihdrxh5gmcjdbhxf"; depends=[Rcpp]; };
   mdftracks = derive2 { name="mdftracks"; version="0.2.1"; sha256="0j1j3dbl5g8zv59ppyvnxp39vpd24ygxbdhnavjwnw1v1fpippbf"; depends=[]; };
@@ -12312,9 +12349,8 @@ in with self; {
   mdsr = derive2 { name="mdsr"; version="0.2.5"; sha256="0mw6kpd2p0yqkjjl1jy6bhc8dy2skxiq0k204y8kzr0l9rqk76zs"; depends=[babynames DBI dbplyr downloader dplyr fs ggplot2 htmlwidgets kableExtra RMySQL skimr stringr tibble webshot]; };
   mdthemes = derive2 { name="mdthemes"; version="0.1.0"; sha256="1k0fylg8jz0xdfwq85wap6lgrb9zi219vhmry4lysqssx2szkngk"; depends=[cowplot ggplot2 ggtext ggthemes hrbrthemes tvthemes]; };
   mdw = derive2 { name="mdw"; version="2020.6-17"; sha256="0jjajgb1w3vx7vqn2z90xq39hvbcrrd2ky8p31g5absqwwm7lwpa"; depends=[kyotil MASS Matrix]; };
-  meaRtools = derive2 { name="meaRtools"; version="1.0.4"; sha256="1nxyvdq4670696mhg0svxxlvk9hnr8szai8b18pw6754kmw1bjvn"; depends=[emdist ggplot2 gridExtra gtools lattice plyr Rcpp reshape2]; };
   meanShiftR = derive2 { name="meanShiftR"; version="0.56"; sha256="1bn75r5mf3pr1mr8384w175yabw75cynxlz2xh1gl2nar86k4m0x"; depends=[]; };
-  meanr = derive2 { name="meanr"; version="0.1-3"; sha256="1b2xj62qz9919qgy62qn7k4cfxaizfb79rzbca5ksyb2fh8qwh5s"; depends=[]; };
+  meanr = derive2 { name="meanr"; version="0.1-4"; sha256="1k5ygyxa5ixynvh1nfkgm4x9w0wk637m1jnrvkjhyq3jaqwwi859"; depends=[]; };
   meantables = derive2 { name="meantables"; version="0.1.0"; sha256="1007w4vjb472v15ny1h8dxdzxhddk4z5s5n77ayvcbwpc8nlzmk7"; depends=[dplyr rlang tibble]; };
   measuRing = derive2 { name="measuRing"; version="0.5"; sha256="0yblqkv5444y75jkb6d0zs728i6vybm294h7b5622pwfjqlfhnh2"; depends=[dplR pastecs png tiff]; };
   measurementProtocol = derive2 { name="measurementProtocol"; version="0.1.0"; sha256="0vyfkrlinwq2930xqwp1hb8g7g3q7h7yg6y0c8gkwgscrxswifhg"; depends=[assertthat cli httr jsonlite rappdirs]; };
@@ -12343,14 +12379,14 @@ in with self; {
   mefa4 = derive2 { name="mefa4"; version="0.3-8"; sha256="09y8mhmcd82gz582lskvy0yx6vh6jjyxmh7i35041knqcjyp6lpc"; depends=[Matrix]; };
   meifly = derive2 { name="meifly"; version="0.3"; sha256="1x3lhy7fmasss0rq60z5qp74ni32sahw62s8cnp2j431sp95pczc"; depends=[leaps MASS plyr]; };
   mekko = derive2 { name="mekko"; version="0.1.0"; sha256="09y50k4r4mnx351a5zhkqg9s2xyl3d149dhmfy2z6hzm5yg2ajyi"; depends=[ggplot2]; };
-  melt = derive2 { name="melt"; version="1.2.0"; sha256="0l1437q32kv5zg9555xnm6zrc2a0pm43blgmy5sb3w86zxmg8441"; depends=[Rcpp RcppEigen RcppProgress]; };
+  melt = derive2 { name="melt"; version="1.3.0"; sha256="1fxzffz1rwlmp58i4a00707flnzch1kyhm9izvsqykwqx4rqdbca"; depends=[Rcpp RcppEigen RcppProgress]; };
   meltr = derive2 { name="meltr"; version="1.0.0"; sha256="0pcpgwk7if9f441z0vwh9g0ydhzkv3h4db433snkk5g4rfikx3ad"; depends=[cli cpp11 R6 rlang tibble]; };
-  meltt = derive2 { name="meltt"; version="0.4.1"; sha256="1113rdw0jglwkcd3g31llhgzqmwpxfz2bp60m3x2zdbdrvwc1z9n"; depends=[dplyr ggplot2 leaflet plyr Rcpp RcppArmadillo reticulate shiny shinyjs tibble tidyr]; };
+  meltt = derive2 { name="meltt"; version="0.4.2"; sha256="0pj4z5nlb3ngx50r25d80z275rcf571imapq83yg0djp5lwzml0c"; depends=[dplyr ggplot2 leaflet plyr Rcpp RcppArmadillo reticulate shiny shinyjs tibble tidyr]; };
   mem = derive2 { name="mem"; version="2.16"; sha256="16xm9hai1aqhrbpxln6az4qbwz3kk2izmq39nzpzjc3ardpq1ljr"; depends=[boot dplyr EnvStats ggplot2 mclust purrr RColorBrewer RcppRoll sm tidyr]; };
   memapp = derive2 { name="memapp"; version="2.14"; sha256="0w2lbypz0bc50s6yrvidz96wpz53cxpk5a9yhbq7rp8chr9r8cm3"; depends=[dplyr DT foreign formattable ggplot2 haven mem openxlsx plotly RColorBrewer readxl RODBC shiny shinyBS shinydashboard shinyjs shinythemes shinyWidgets stringi stringr tidyr]; };
   meme = derive2 { name="meme"; version="0.2.3"; sha256="009gkl9zmj2s6wmd7rl0khf04m05zcbbjjds2w7krnbr8h0dqpqm"; depends=[ggplot2 gridGraphics magick showtext sysfonts]; };
   memery = derive2 { name="memery"; version="0.5.6"; sha256="0rlq0pjl13wsc025z3ycd5m48lnlagw61fbn51x9npysrmii4rvh"; depends=[Cairo colourpicker cowplot ggplot2 jpeg magrittr png purrr shiny shinyBS shinycssloaders showtext sysfonts]; };
-  memgene = derive2 { name="memgene"; version="1.0.1"; sha256="1x3vf2f1yh40xw5vqcjlrn07zn9zh3sx4kc9dijxzygd9crl5a29"; depends=[ade4 gdistance raster vegan]; };
+  memgene = derive2 { name="memgene"; version="1.0.2"; sha256="1f1v651vab4b3bfxn8wp5p848h6vy7ylr52zirwhnhxj37fzhkq6"; depends=[ade4 gdistance raster sp vegan]; };
   memify = derive2 { name="memify"; version="0.1.1"; sha256="1dnbaz57v50mg2kxn5y7cdfrsv1h046cwqh48mpabgh6vf018w4y"; depends=[]; };
   memisc = derive2 { name="memisc"; version="0.99.30.7"; sha256="0j1y4dv38irz3117inz2d298rbi3lj2r68acaynfj6lj21nx292k"; depends=[data_table lattice MASS repr]; };
   memo = derive2 { name="memo"; version="1.0.1"; sha256="14nvqi1qsin45ksd0wp9cigjk1gghr4jijdqkaqh177dwa244r9j"; depends=[digest]; };
@@ -12369,9 +12405,8 @@ in with self; {
   merror = derive2 { name="merror"; version="2.0.2"; sha256="13d9r5r83zai8jnzxaz1ak40876aw20zbpr244gs55rvj5j7f87q"; depends=[]; };
   meshed = derive2 { name="meshed"; version="0.2.1"; sha256="1n19d1isy0x8yramkvj1ckk3s92qagppm2rngxsz2kj6ir2nyyb9"; depends=[dplyr glue magrittr Rcpp RcppArmadillo rlang]; };
   messaging = derive2 { name="messaging"; version="0.1.0"; sha256="0q19cqp1zgh0yhk1ql0jqf414bhx6jwhkairq6wx2cmkli2g7k1y"; depends=[dplyr glue magrittr rlang stringr]; };
-  messydates = derive2 { name="messydates"; version="0.2.0"; sha256="193rc2723i6a75g8qmrf743h89nsxm9j1dlvxncsxk1jpj5hzd43"; depends=[dplyr lubridate purrr stringr tibble]; };
-  met = derive2 { name="met"; version="0.1.0"; sha256="0714103xzc4n178307czxmcv7ygjiigjr9b6xnj240ljp7qmln19"; depends=[DiPs]; };
-  metR = derive2 { name="metR"; version="0.11.0"; sha256="09ar9lckrzbvcy0jgnwlrnj96ln426yh70dgjfmlac68bhinv2fw"; depends=[checkmate data_table digest fields Formula formula_tools ggplot2 gtable isoband lubridate memoise plyr purrr RCurl scales sp stringr]; };
+  messydates = derive2 { name="messydates"; version="0.2.1"; sha256="0nqllz9rkfhwg1c6fhi1l7wib7sn96274d7p4z2p9l6h5vw8b4dg"; depends=[dplyr lubridate purrr stringr tibble]; };
+  metR = derive2 { name="metR"; version="0.12.0"; sha256="0zz45zxzkfx5bgvwrrpbsndd01qncsvfw2pbi5kivic309r89c4s"; depends=[checkmate data_table digest fields Formula formula_tools ggplot2 gtable isoband lubridate memoise plyr purrr RCurl scales sp stringr]; };
   metRology = derive2 { name="metRology"; version="0.9-28-1"; sha256="1syjwblyd18myxrs0hx4m91fgb6zs3r4g7w701j2f2pw6j9mvz0y"; depends=[MASS numDeriv robustbase]; };
   metScanR = derive2 { name="metScanR"; version="1.2.3"; sha256="1v7zrxj3wspx6f5n5s75skcygbf3r85rn4p0z9iwbrbrgxwi4qgs"; depends=[geosphere leaflet matlab plyr RCurl]; };
   meta = derive2 { name="meta"; version="5.2-0"; sha256="0x3v6xxlxrmyv1cpyjr83n39v29439qpzd9v2avyirbk58v85qyb"; depends=[CompQuadForm lme4 metafor xml2]; };
@@ -12390,13 +12425,15 @@ in with self; {
   metaSDTreg = derive2 { name="metaSDTreg"; version="0.2.1"; sha256="0nqnb0isjz2czvih6zr4jglrwfmf9ahm9a3nwkvr2cwbmdh5clq2"; depends=[Matrix maxLik ordinal truncnorm]; };
   metaSEM = derive2 { name="metaSEM"; version="1.2.5.1"; sha256="027qwbnn63c09ac560gr99fxv4ccfzd1drdcp2r610y5z9079i7i"; depends=[ellipse lavaan MASS Matrix mvtnorm numDeriv OpenMx]; };
   metaSurvival = derive2 { name="metaSurvival"; version="0.1.0"; sha256="05f103fi287y64gys73a55snw54bnph69q8dykfii10dykd44g0y"; depends=[mvtnorm survival]; };
-  metaboData = derive2 { name="metaboData"; version="0.6.2"; sha256="1iiy9ipyp3h1rvcbjld6bdy1jgnxbixvgs5xqwly1yj4mvri0bsg"; depends=[dplyr fs magrittr piggyback purrr readr rlang stringr tibble yaml]; };
+  metaboData = derive2 { name="metaboData"; version="0.6.3"; sha256="0a8jz7q0a5dri5p2qyw0ah0j4w0xjyfj6gkh2gcsazac1d5fl02i"; depends=[dplyr fs magrittr piggyback purrr readr rlang stringr tibble yaml]; };
   metabolic = derive2 { name="metabolic"; version="0.1.0"; sha256="1bk8d0sxlgc17d7x02zmx23fdqz39c9zpin16bzhcj602kjcq0y8"; depends=[cli dplyr forcats ggfittext ggimage ggplot2 glue magrittr meta patchwork purrr rmarkdown scales stringr tibble tidyr usethis]; };
+  metabolighteR = derive2 { name="metabolighteR"; version="0.1.3"; sha256="0ip7cy40jndcwp8yc42pjzklv35dkxjd3pdlpwk0r0jngp7nbjim"; depends=[crayon dplyr httr magrittr purrr]; };
   metacart = derive2 { name="metacart"; version="2.0-3"; sha256="1wim72fvhx6cyc16c9gl8cwzbhlpzilk7q8gi4jnzzazqmc1kb5n"; depends=[ggplot2 gridExtra Rcpp rpart]; };
   metacoder = derive2 { name="metacoder"; version="0.3.5"; sha256="0d0ihglsal9cx03jjq472x2xlqdflgxhzkr0vwvjpq0rqvq5syva"; depends=[ape cowplot crayon dplyr GA ggfittext ggplot2 igraph lazyeval magrittr R6 Rcpp RCurl readr rlang seqinr stringr taxize tibble vegan]; };
   metacom = derive2 { name="metacom"; version="1.5.3"; sha256="0c0gzn28cl2sl52wx2n36jm9c18d9s3yqjyx88kgbmd9069z1nvk"; depends=[vegan]; };
   metaconfoundr = derive2 { name="metaconfoundr"; version="0.1.0"; sha256="13b0xbfm90g14grvpffnj7xhkgymzcayq1hh2vi0q1ah8bl8z504"; depends=[dplyr ellipsis forcats ggplot2 glue magrittr purrr rlang shiny stringr tibble tidyr tidyselect]; };
   metacor = derive2 { name="metacor"; version="1.0-2.1"; sha256="0y3z7jbhw5c2dbn9fx9wlw1311irjc2xvnm5hnaixbbj53qz24n0"; depends=[gsl rmeta]; };
+  metacore = derive2 { name="metacore"; version="0.0.3"; sha256="19q88g9vcqwp5p42x6agsxhwmvlqgprdq3ydqvv9c41yp03bqypq"; depends=[dplyr magrittr purrr R6 readxl rlang stringr tibble tidyr tidyselect XML]; };
   metadat = derive2 { name="metadat"; version="1.0-0"; sha256="172bvdkmjvxx5cylb4wxbrhnmlzrc3ipfq7343ggypqln975lczd"; depends=[mathjaxr]; };
   metadynminer = derive2 { name="metadynminer"; version="0.1.6"; sha256="0zg08lwnimnmfwac0d5kg8yhsl88gmn029dra18phy1jzkfnsx34"; depends=[Rcpp]; };
   metadynminer3d = derive2 { name="metadynminer3d"; version="0.0.1"; sha256="0riqr2hhk4h0rm7m4njb2dd2f24jff7lzf9chh83sq4q3wldgpz5"; depends=[metadynminer misc3d Rcpp rgl]; };
@@ -12415,7 +12452,7 @@ in with self; {
   metamisc = derive2 { name="metamisc"; version="0.2.5"; sha256="1fg6k2sr74iprjx2bwqqfnp67c493fkilncy2nbynv4sqmbl8s0i"; depends=[dplyr ggplot2 lme4 metafor mvtnorm plyr pROC]; };
   metan = derive2 { name="metan"; version="1.16.0"; sha256="09qa46069xb7vrmp8r0nq84fvwzzx5bqav3x3cfc2shxm6dxmf0g"; depends=[dplyr GGally ggforce ggplot2 ggrepel lme4 lmerTest magrittr mathjaxr patchwork purrr rlang tibble tidyr tidyselect]; };
   metansue = derive2 { name="metansue"; version="2.4"; sha256="1ja7a3z4d764a1rcf256kmzf8xc6d8x7mqq12vzznw5ks8r2p9hk"; depends=[]; };
-  metap = derive2 { name="metap"; version="1.7"; sha256="0hlcyl8lgcnihzc7xfsm1wmq2kksaz2n342l512dwdqfgmh13dfr"; depends=[lattice mathjaxr mutoss Rdpack TFisher]; };
+  metap = derive2 { name="metap"; version="1.8"; sha256="0asmypxfxly4xmcjf3yzid5zqlzg88z0brij2splfk4avsl035gf"; depends=[lattice mathjaxr mutoss qqconf Rdpack TFisher]; };
   metapack = derive2 { name="metapack"; version="0.1.5"; sha256="112mhfg01hci09qj9l2l3xww3za20kd1z6jshj4893mlqpmvl177"; depends=[BH Formula ggplot2 gridExtra Rcpp RcppArmadillo RcppProgress]; };
   metaplot = derive2 { name="metaplot"; version="0.8.3"; sha256="1zw8bq2fy9m15dfc92ag0dz2k9dqrf5jbvfaycizcgsgaqd79s1c"; depends=[dplyr encode ggplot2 gridExtra gtable lattice magrittr rlang scales tidyr]; };
   metaplotr = derive2 { name="metaplotr"; version="0.0.3"; sha256="01iala6cxsxv30fnlh80md5mpy3ksd2piw90zcls8f68g1c6v1jy"; depends=[ggplot2 gridExtra]; };
@@ -12460,8 +12497,9 @@ in with self; {
   mgarchBEKK = derive2 { name="mgarchBEKK"; version="0.0.2"; sha256="1k4c34srnckbh5kchzmm44l91ma9sw0gi4y225igs3cl79212q9c"; depends=[mvtnorm tseries]; };
   mgc = derive2 { name="mgc"; version="2.0.2"; sha256="1l9qs4nz1rn56qp569nh26yz3c7i4zh3r43c209zh7kvizpagx0i"; depends=[abind boot energy MASS raster]; };
   mgcViz = derive2 { name="mgcViz"; version="0.1.9"; sha256="09n18ypjdwcca38i2v636ijgnzwalv7wh55z82a0pfrbzabiynn1"; depends=[gamm4 GGally ggplot2 gridExtra KernSmooth matrixStats mgcv miniUI plyr qgam shiny viridis]; };
-  mgcv = derive2 { name="mgcv"; version="1.8-38"; sha256="1fyx8b0xjyx75mp90v314gayzydkca5y90p76jnwxzfnhxbys4nd"; depends=[Matrix nlme]; };
+  mgcv = derive2 { name="mgcv"; version="1.8-39"; sha256="15h1k9qyn8s8xy4x2361mj42vdq8ml5xskzqpkc45zj1a3gss6w4"; depends=[Matrix nlme]; };
   mgee2 = derive2 { name="mgee2"; version="0.2"; sha256="1bhjajcjvm8brc92v6ij378i0d3vniip77m4pz7n02sgswj0w61a"; depends=[ggplot2 MASS]; };
+  mglasso = derive2 { name="mglasso"; version="0.1.1"; sha256="0h5npy9innq8dxyp1aq0agffrp29zrzfrcs8bzy43a60bhsil55l"; depends=[corpcor gridExtra Matrix R_utils reticulate]; };
   mglmn = derive2 { name="mglmn"; version="0.1.0"; sha256="1g642hhs28q6x34xgrfrmmsb2jsn9zy4jxad0x5ai3px48zzdb4r"; depends=[mvabund snowfall]; };
   mgm = derive2 { name="mgm"; version="1.2-12"; sha256="0p5l1mcgz47rri800i78q7f89s2ll5w5kqmj1lkd4i93fj4bh585"; depends=[glmnet gtools Hmisc qgraph stringr]; };
   mgpd = derive2 { name="mgpd"; version="1.99"; sha256="0cxpgza9i0hjm5w1i5crzlgh740v143120zwjn95cav8pk8n2wyb"; depends=[corpcor evd fields numDeriv]; };
@@ -12519,7 +12557,7 @@ in with self; {
   microsynth = derive2 { name="microsynth"; version="2.0.31"; sha256="0wmrp9igylzp4qbvdr13r2rxfkcq9xwg8gw29j1g6kcqyq4aflds"; depends=[boot kernlab LowRankQP nleqslv pracma survey]; };
   midas = derive2 { name="midas"; version="1.0.1"; sha256="1alqxk23651jnkg0xn4rpvk71z5rhvx3y0wjrgkw2qw95s7jjn72"; depends=[shiny xml2]; };
   midas2 = derive2 { name="midas2"; version="0.1.0"; sha256="0k670ppbw12s4wgliiqgc5fr0sajr5axlkwa5i54hrappkh1vlb4"; depends=[coda MCMCpack R2jags]; };
-  midasml = derive2 { name="midasml"; version="0.1.9"; sha256="0mvs472ml80ka6nz4p6mbp0igrn73gn43qqvbx691d5xq3dv04nd"; depends=[doParallel doRNG foreach lubridate Matrix mcGlobaloptim]; };
+  midasml = derive2 { name="midasml"; version="0.1.9-1"; sha256="15r6sdq788x3gj8n8b2ykhrp8habx8rjhsiy3phlp98vm7m58b2z"; depends=[doParallel doRNG foreach lubridate Matrix mcGlobaloptim]; };
   midasr = derive2 { name="midasr"; version="0.8"; sha256="0mzyxf8q2wmbsiczkhhgigy7jmi8zr4w4a83f97va35vfhxi217k"; depends=[forecast Formula MASS Matrix numDeriv optimx quantreg sandwich texreg zoo]; };
   midastouch = derive2 { name="midastouch"; version="1.3"; sha256="1pjzcf0hjfhr5p0la8pz1njw7bhfrcrzpqfsdqk2z5c6dbh4awzq"; depends=[]; };
   midrangeMCP = derive2 { name="midrangeMCP"; version="3.1.1"; sha256="1yfwyglyxxk4i914m8n148cjydlcg7r16zl8acb1w8h963svirk9"; depends=[SMR writexl xtable]; };
@@ -12538,18 +12576,18 @@ in with self; {
   mimsy = derive2 { name="mimsy"; version="0.6.2"; sha256="01dy1fryrgq07jdfnxcnks97h0gq632dvqk7hnfs0f5fnx0k0vvf"; depends=[dplyr lubridate magrittr openxlsx]; };
   minMSE = derive2 { name="minMSE"; version="0.5.1"; sha256="1fj6njqdc6zn73n2q60x01znwn6xlprjldwy5c13d8rd1n5shccm"; depends=[MASS Rcpp]; };
   minSNPs = derive2 { name="minSNPs"; version="0.0.1"; sha256="0kj3kalr11c4jab9b5w0i2w2z0dsdmm22szgfzyrc3y2w6jdhvjw"; depends=[BiocParallel]; };
-  mind = derive2 { name="mind"; version="0.1.4"; sha256="0zalbxd4mbi5snidz60pdnm1bkgbp5pabwc4p3qfvix6ll863kmc"; depends=[data_table dplyr JWileymisc MASS Matrix qdap]; };
+  mind = derive2 { name="mind"; version="0.1.5"; sha256="104cya2g0fw4cg1ihmznhhwwrbmwbbck9zfwgr5snmmhs4q244dy"; depends=[data_table dplyr JWileymisc MASS Matrix qdap tm]; };
   mindr = derive2 { name="mindr"; version="1.3.2"; sha256="0nv3wripimpbi8zf1h8fkj80ibrzava36kcai9f1gl8frincafr9"; depends=[htmlwidgets knitr]; };
   mineCitrus = derive2 { name="mineCitrus"; version="1.0.0"; sha256="031nfhrsc5rlqls3vyrk18lx0pd4ssdk96cmfr4ifaciz0rgv8h2"; depends=[ggplot2]; };
   minerva = derive2 { name="minerva"; version="1.5.10"; sha256="03srkii3rmx40lyr050bnrxil6w0hfv5pr64k339m66ciwyka9ig"; depends=[Rcpp RcppArmadillo]; };
-  miniCRAN = derive2 { name="miniCRAN"; version="0.2.14"; sha256="1i1rf97m7c8x65rfy8c26l0kbl4zq7ha1f9yi413fk9jlngxajj3"; depends=[assertthat httr igraph]; };
+  miniCRAN = derive2 { name="miniCRAN"; version="0.2.16"; sha256="1rr5wrh27055ikkvpsf19q9bkfhckafgmrn174iwzjh9s42w3nbq"; depends=[assertthat httr igraph]; };
   miniGUI = derive2 { name="miniGUI"; version="0.8-1"; sha256="0qb2fbkjwzn909yrk89d4951bwf8n05i0s265l8v2d4lpns9hc2i"; depends=[]; };
   miniMeta = derive2 { name="miniMeta"; version="0.2"; sha256="03r6xwcgchw42irqr8jy5hsbv8brk6f77h4zi9qhhz3zmkryjbw2"; depends=[colourpicker jsonlite markdown meta metafor readxl rhandsontable shiny shinyjs shinyWidgets WriteXLS]; };
   miniUI = derive2 { name="miniUI"; version="0.1.1.1"; sha256="1h5h2sc57h95d6bsgs95l26911g38hvjc1v50bc31xl9689l2as5"; depends=[htmltools shiny]; };
-  minidown = derive2 { name="minidown"; version="0.3.0"; sha256="1x0xsag8lbghnbgjlwd73m24cpvil75056pl3j2fhhsydbikhifw"; depends=[htmltools knitr mime rmarkdown xfun]; };
+  minidown = derive2 { name="minidown"; version="0.4.0"; sha256="0h4szlw0dgxbdsw8grnzv50bq0qzzk3lm8zr1zp2pybisfvqaqkr"; depends=[htmltools katex knitr mime rmarkdown sass xfun]; };
   minimalRSD = derive2 { name="minimalRSD"; version="1.0.0"; sha256="1p1jpi8lnv952k4c1wjgbgpb0hv4zg0f9qrd43cx0caibkqvhzf7"; depends=[]; };
   minimap = derive2 { name="minimap"; version="0.1.0"; sha256="0y5yzic9pwpzs01gnl82syankijcjp85n22jn5zda0bp3y01r53r"; depends=[]; };
-  minimax = derive2 { name="minimax"; version="1.0"; sha256="1g0d9q5h1avbb0yg7ajw5330820i3n5cgkpsif754l4j3ikya8p3"; depends=[]; };
+  minimax = derive2 { name="minimax"; version="1.1"; sha256="0108gwdaaag219f2azzmd365d866bvlxvg247xin58f7sfdy038w"; depends=[]; };
   minimaxdesign = derive2 { name="minimaxdesign"; version="0.1.5"; sha256="0mraklk79w2r4rx450pkajgh5s9pk7wa3gcbd98xkd03ns11s9v8"; depends=[conf_design DiceDesign DoE_base doParallel doSNOW foreach FrF2 geometry gmp gtools jpeg MaxPro nloptr pdist randtoolbox Rcpp RcppArmadillo]; };
   minimist = derive2 { name="minimist"; version="0.1"; sha256="007y829d766b1v6wkrhk7pkg99r38bvmhc8bwvs8rs13dr7444ln"; depends=[V8]; };
   minpack_lm = derive2 { name="minpack.lm"; version="1.2-1"; sha256="18ym2pdql5vzngc7q5gn66d153hrfrnd8ilv8yh6vd7j7sx7vjql"; depends=[]; };
@@ -12559,6 +12597,7 @@ in with self; {
   minxent = derive2 { name="minxent"; version="0.01"; sha256="1a0kak4ff1mnpvc9arr3sihp4adialnxxyaacdgmwpw61wgcir7h"; depends=[]; };
   mipfp = derive2 { name="mipfp"; version="3.2.1"; sha256="1gxazpg81vj5dywpb6jb29188jw28qil6pfygawa7znnjn3k5ca6"; depends=[cmm numDeriv Rsolnp]; };
   mipplot = derive2 { name="mipplot"; version="0.3.1"; sha256="126arvxq6gmaiwk3n3p0slnb1mhs3qf993m4lx95nlmnv612ag66"; depends=[data_table dplyr ggplot2 readr readxl reshape reshape2 rlang shiny shiny_i18n shinyalert shinyWidgets showtext showtextdb stringr tidyr]; };
+  mirai = derive2 { name="mirai"; version="0.1.0"; sha256="014mqn9f25hgzrvyh46axhgak8h945asdslyflf99w0pdl6xl22x"; depends=[nanonext]; };
   mirt = derive2 { name="mirt"; version="1.35.1"; sha256="0gmssa6cx2rdphq6v5d3jhxrjkhc4sngsp7bj3szaj3xkd4px2vq"; depends=[dcurver Deriv GPArotation gridExtra lattice Matrix mgcv Rcpp RcppArmadillo vegan]; };
   mirtCAT = derive2 { name="mirtCAT"; version="1.12"; sha256="0pi6xwvia0njkmdpvr8bbp7ha05rcazw3qbva9gf518ffwvda9gy"; depends=[lattice lpSolve markdown mirt pbapply Rcpp RcppArmadillo shiny]; };
   mirtjml = derive2 { name="mirtjml"; version="1.4.0"; sha256="1zvm8acywpzi87lz0hpxmr8c9kyqkbx0490q3vlwxd90ffcdp9ml"; depends=[GPArotation Rcpp RcppArmadillo]; };
@@ -12574,7 +12613,7 @@ in with self; {
   miscset = derive2 { name="miscset"; version="1.1.0"; sha256="1gwi7jnqdf2fa8yk8gmcc7dcv72bbdl7yj3yccj3r5jjk41vdp91"; depends=[data_table devtools ggplot2 gridExtra Rcpp xtable]; };
   mise = derive2 { name="mise"; version="0.1.0"; sha256="1ydbm76w3y0p5h82shxjblwlzbrmzwx0bgq9w2axjwz2nx8jfw0a"; depends=[]; };
   miselect = derive2 { name="miselect"; version="0.9.0"; sha256="0dfqni7r5zwdvwmrmvqhycmxhazivz6vnz2ccjy0hyfad29g0v7s"; depends=[]; };
-  mispitools = derive2 { name="mispitools"; version="0.1.5"; sha256="0mipc3s0n7j48nrahb2zz5kmh9656gx2gp67riva3nsj5iax0d7g"; depends=[DirichletReg dplyr forrel highcharter pedtools plotly tidyr tidyverse]; };
+  mispitools = derive2 { name="mispitools"; version="0.1.9"; sha256="1p9w742jsp7dx104s29z5hk2c61m48kg52db7vifj5m85l5g0i5b"; depends=[DirichletReg dplyr forrel highcharter pedtools plotly tidyr tidyverse]; };
   mispr = derive2 { name="mispr"; version="1.0.0"; sha256="166piax3f7di8h0i07fbdx45lxz1p47j378v6yl6zdc3525adpjx"; depends=[e1071 MASS penalized]; };
   misreport = derive2 { name="misreport"; version="0.1.1"; sha256="1f78zcw4cg51mjvflhwd64hip2gj8x9ng1mhh4w43yv3x8hmbd6h"; depends=[mvtnorm numDeriv VGAM]; };
   missCompare = derive2 { name="missCompare"; version="1.0.3"; sha256="03j69xw54d076znx19dplw4xznvgky90hxh3wgypg0g5pjg63y53"; depends=[Amelia data_table dplyr ggdendro ggplot2 Hmisc ltm magrittr MASS Matrix mi mice missForest missMDA pcaMethods plyr rlang tidyr VIM]; };
@@ -12582,7 +12621,7 @@ in with self; {
   missDiag = derive2 { name="missDiag"; version="1.0.1"; sha256="04zd3nds44sy7nz73kdq9wjis3r9zyp0kda54mfqps1sh9jnizlq"; depends=[cobalt Formula]; };
   missForest = derive2 { name="missForest"; version="1.4"; sha256="0y02dhrbcx10hfkakg5ysr3kpyrsh2d9i5b0qzhj9x5x0d5q11gp"; depends=[foreach itertools randomForest]; };
   missMDA = derive2 { name="missMDA"; version="1.18"; sha256="1s7ph89y0mrksdi73nnjnxl2354401ny8ziijzf036rcsiyvl8m5"; depends=[doParallel FactoMineR foreach ggplot2 mice mvtnorm]; };
-  missMethods = derive2 { name="missMethods"; version="0.2.0"; sha256="0rsx7fdg0k8ajpj81ybl2jc9s8sprc2si6zx7mkvcqgw9iacrdik"; depends=[]; };
+  missMethods = derive2 { name="missMethods"; version="0.3.0"; sha256="12hr9j0433cjm1qk8fma7sqlim4klay83mvpai9csqil214sb73a"; depends=[]; };
   missRanger = derive2 { name="missRanger"; version="2.1.3"; sha256="1kk64q9ip6hhjcyrvnm5yd8ikilrvvw1vjz8166c6jb8xrqwbb2v"; depends=[FNN ranger]; };
   missSBM = derive2 { name="missSBM"; version="1.0.2"; sha256="09i7cm4nsssn0scr5lmxs4yczcm7z3b4crj8jl7nhqf1azsvcd0n"; depends=[future_apply ggplot2 igraph magrittr Matrix nloptr R6 Rcpp RcppArmadillo rlang RSpectra sbm]; };
   missSOM = derive2 { name="missSOM"; version="1.0.0"; sha256="02hi37jha49dppcv5cyzpcayb4b7mpmcp56nspbrlnxp9dgy7pim"; depends=[kpodclustr Rcpp]; };
@@ -12590,7 +12629,7 @@ in with self; {
   mistat = derive2 { name="mistat"; version="2.0.3"; sha256="068ycnnkqcmf3sracsa279lggyc1qxdkpcba7ghax0xl4y505yxj"; depends=[]; };
   mistr = derive2 { name="mistr"; version="0.0.5"; sha256="02jm6z4a6zkqh7bfdmc1pqvdvz03crihwi9s60gv15c8xwr1dq7p"; depends=[bbmle]; };
   mistral = derive2 { name="mistral"; version="2.2.1"; sha256="19iq9a3k7xyxafvm73ib8mj1k7ys69aznplqhidl5z8vdl92dmb7"; depends=[DiceKriging doParallel e1071 emoa foreach ggplot2 iterators Matrix mvtnorm quadprog Rcpp]; };
-  misty = derive2 { name="misty"; version="0.4.3"; sha256="1i18yd6swhx945g99yfh9dcs8zm4gzln4qhw5lzf65ggwhcwqkdy"; depends=[haven lavaan lme4 norm readxl]; };
+  misty = derive2 { name="misty"; version="0.4.4"; sha256="1cixlngn782gcjpyzci0xbw5lk852azrc5540kdci6bpx5h677mj"; depends=[ggplot2 haven lavaan lme4 nlme norm r2mlm readxl writexl]; };
   mitml = derive2 { name="mitml"; version="0.4-3"; sha256="00i18nnvrdrg91crgcp2a431xs71cawaip3xkqk2myv0iav3xga9"; depends=[haven jomo pan]; };
   mitools = derive2 { name="mitools"; version="2.4"; sha256="0c2x2n1p53lcw0vx4vmy5j7m2f95i7g2iwbryl89imr99rvz617j"; depends=[DBI]; };
   mitre = derive2 { name="mitre"; version="1.0.0"; sha256="0r5phzxiibwwhx3qh623grfy070c3vzm4q07rzhsp5q5ycb5jhn5"; depends=[dplyr igraph jsonlite plyr RJSONIO rlang stringr tidyr]; };
@@ -12617,7 +12656,7 @@ in with self; {
   mixedsde = derive2 { name="mixedsde"; version="5.0"; sha256="0ss1ng4nx91gxj85wxxfyh9ljxsj3ag6lsj1a5d2815p9jzl7dsv"; depends=[MASS moments plot3D sde]; };
   mixexp = derive2 { name="mixexp"; version="1.2.5"; sha256="0nbf10xhrr51rb1b2apcj4p3ci8xbi7flgz500ar3mxh8h8l74sq"; depends=[daewr gdata lattice]; };
   mixl = derive2 { name="mixl"; version="1.3.3"; sha256="0vxvs6lvnkijhdy78lw19hp11ylf4afyg0v5xc5izbhwk3cp5nga"; depends=[maxLik numDeriv randtoolbox Rcpp readr sandwich stringr]; };
-  mixlm = derive2 { name="mixlm"; version="1.2.5"; sha256="0k7sy2bkf6vsp5qkz33327p1kjyzn3cxmxzc6dmw6g29c4dyxkac"; depends=[car leaps multcomp pls pracma]; };
+  mixlm = derive2 { name="mixlm"; version="1.2.6"; sha256="1qccwiaqyvmpyklbbp6ay3xvln9wfizaxi6fjizzx2bjpng5043p"; depends=[car leaps multcomp pls pracma]; };
   mixmeta = derive2 { name="mixmeta"; version="1.2.0"; sha256="093f6jjq0hc49k5kmjp17s2lv3swpssfxnra80bwv59ggav8w8d8"; depends=[]; };
   mixpoissonreg = derive2 { name="mixpoissonreg"; version="1.0.0"; sha256="1pk45p96kwl3gvi5523vm824s1bb5aqpn9qqpqy8kjy2pd2a4k32"; depends=[dplyr Formula gamlss gamlss_dist generics ggplot2 ggrepel gridExtra lmtest magrittr pbapply Rfast rlang statmod tibble]; };
   mixreg = derive2 { name="mixreg"; version="2.0-10"; sha256="1vmidnhb899lmprybym71w0l869msrgvlqr3099kwj05sph85pwm"; depends=[]; };
@@ -12634,7 +12673,7 @@ in with self; {
   mkde = derive2 { name="mkde"; version="0.1"; sha256="04v84arpnmjrkk88ffphnhkz32x7y0dypk75jfmbbgcgv59xlglv"; depends=[raster Rcpp sp]; };
   mkin = derive2 { name="mkin"; version="1.0.5"; sha256="1nxdzll5v8551sgq0whqs2270lzvw923rl0kxvxbcwnsz27z26da"; depends=[deSolve inline lmtest nlme numDeriv pkgbuild purrr R6]; };
   mknapsack = derive2 { name="mknapsack"; version="0.1.0"; sha256="1kzmx7d512681a4hjirfgcd7a8rvndb4da66p16gms5nnxzsby9c"; depends=[assertthat data_table lpSolve]; };
-  mkssd = derive2 { name="mkssd"; version="1.1"; sha256="1qqzy6fn6sc3lxahc19hzzf1hzxsyvxqi7npynw0vkknlrvh2ijp"; depends=[]; };
+  mkssd = derive2 { name="mkssd"; version="1.2"; sha256="1vgg5azr4qydqb6xbdbff9256bwz7gl3k3hpn7998rm9jhdmynnd"; depends=[]; };
   mlVAR = derive2 { name="mlVAR"; version="0.5"; sha256="11mn7gaqlmw01gvg7psqkkr5bgv4iclv0590av4xzbvq8496f5g2"; depends=[abind arm clusterGeneration corpcor dplyr graphicalVAR lme4 MplusAutomation mvtnorm plyr qgraph rlang]; };
   mlapi = derive2 { name="mlapi"; version="0.1.0"; sha256="023vk5bp8cjcq88sapkl87kdxr92bay1dyxl6xirnyj699pyj51k"; depends=[Matrix R6]; };
   mlbench = derive2 { name="mlbench"; version="2.1-3"; sha256="157iqsld0wj8g8cbs7nh6p2x6kasmkhs3078hsmqac946gk2pydi"; depends=[]; };
@@ -12648,8 +12687,7 @@ in with self; {
   mleur = derive2 { name="mleur"; version="1.0-6"; sha256="0mddphq3b6y2jaafaa9y41842kcaqdl3dh7j4pva55q2vcjcclj7"; depends=[fGarch lattice stabledist urca]; };
   mlf = derive2 { name="mlf"; version="1.2.1"; sha256="09ihnibpknpp26hdlbxyr99yz7z0n8qpsjs5aq3zngng0yh3wdn9"; depends=[]; };
   mlfit = derive2 { name="mlfit"; version="0.5.3"; sha256="0nyk5vmy2gkpz022djacy80gibskv96z0rsmjz2rw14zhc5kizsh"; depends=[BB dplyr forcats hms kimisc lifecycle Matrix plyr rlang tibble wrswoR]; };
-  mlflow = derive2 { name="mlflow"; version="1.23.0"; sha256="1g50nnqcdm82q4sbwa6mqq7v10nxqb2y2izhj9adjz8fkgyj8icl"; depends=[base64enc forge fs git2r glue httpuv httr ini jsonlite openssl processx purrr reticulate rlang swagger tibble withr yaml zeallot]; };
-  mlgt = derive2 { name="mlgt"; version="0.16"; sha256="1nvdq6mvgr39ikkf73aggsb6pmbw132injj8fdkr8hgcmwm6lgd9"; depends=[seqinr]; };
+  mlflow = derive2 { name="mlflow"; version="1.24.0"; sha256="0yqz0zlm2plz0i2p1zb3jaz4v8slr1p4jbk96cj9b5f6jsrvdkr2"; depends=[base64enc forge fs git2r glue httpuv httr ini jsonlite openssl processx purrr reticulate rlang swagger tibble withr yaml zeallot]; };
   mlica2 = derive2 { name="mlica2"; version="2.1"; sha256="0c3m1zd9x99n6lw12hfzmd59355z51xa8rhg1h7qwfn9p86r826f"; depends=[]; };
   mlmRev = derive2 { name="mlmRev"; version="1.0-8"; sha256="0ln4nazhc1prnlmvhfzhx268vx3klb0xnz1nsiwh0pwyskskyzym"; depends=[lme4]; };
   mlma = derive2 { name="mlma"; version="6.1-1"; sha256="1z3v00g7ji0xkpz9ri4li3r7s8g2rcp2pc1p060cwsaidizs38dr"; depends=[abind car coxme gplots lme4 survival]; };
@@ -12657,31 +12695,32 @@ in with self; {
   mlmi = derive2 { name="mlmi"; version="1.1.1"; sha256="0ksx5qih54ww983ycs08hhr50ms2c2k6pk07mrcwdgli7irzc2cc"; depends=[cat gsl MASS Matrix mix nlme norm]; };
   mlmm_gwas = derive2 { name="mlmm.gwas"; version="1.0.6"; sha256="14xp8k7sww1skyw5l2006gpaw2c6yrri5nmfx4yav4vqdlhcj2k1"; depends=[coxme Matrix multcomp multcompView sommer]; };
   mlmmm = derive2 { name="mlmmm"; version="0.3-1.2"; sha256="1m5ziiqs3ll1xjm1yf7x4sdc910jypn3kjnbadf95xxkvqmfrsqq"; depends=[]; };
+  mlmts = derive2 { name="mlmts"; version="1.0.0"; sha256="0vgrwcbhj4a3vlf9bddzfnicc6bsq0q2ryilq7kdv4yn58d5ggxx"; depends=[AID caret ClusterR complexplus DescTools dtw e1071 evolqg fda_usc forecast freqdom geigen ggplot2 MASS Matrix MTS multiwave pracma pspline psych quantspec ranger Rdpack Rfast TSA TSclust TSdist tseries tseriesChaos tsfeatures waveslim]; };
   mlogit = derive2 { name="mlogit"; version="1.1-1"; sha256="0hyi6gi03n895iydrfr1ba2ifbsd6lyjyhkq62d95ghhniysjgkg"; depends=[dfidx Formula lmtest MASS Rdpack statmod zoo]; };
   mlogitBMA = derive2 { name="mlogitBMA"; version="0.1-6"; sha256="1wl8ljh6rr1wx7dxmd1rq5wjbpz3426z8dpg7pkf1x9wr94a2q25"; depends=[abind BMA maxLik]; };
   mlpack = derive2 { name="mlpack"; version="3.4.2.1"; sha256="0fqpajcmqn9rijzjg7qj0zd2lik4xmhp5dmhbm3mdc9ssdg0axbr"; depends=[BH Rcpp RcppArmadillo RcppEnsmallen]; };
   mlquantify = derive2 { name="mlquantify"; version="0.2.0"; sha256="1fpwvix0f4bmqb1y1b6wryndqp6j24dwsspbfx1zrnhzwj1v4i9i"; depends=[caret FNN randomForest]; };
   mlr = derive2 { name="mlr"; version="2.19.0"; sha256="04v1br59ykzhzaiybjyyknbrc7ai5nl5l106b7482r49afscjj8i"; depends=[backports BBmisc checkmate data_table ggplot2 parallelMap ParamHelpers stringi survival XML]; };
-  mlr3 = derive2 { name="mlr3"; version="0.13.1"; sha256="052685d08cfsrh3r31yn05ngwi6z3fmz26gwiy32z7cpcigz8jjs"; depends=[backports checkmate data_table future future_apply lgr mlbench mlr3measures mlr3misc palmerpenguins paradox parallelly R6 uuid]; };
+  mlr3 = derive2 { name="mlr3"; version="0.13.3"; sha256="010kl51zsgpc0qv63g1fg9kiw9m0wzqskcr14f1j8b9zi1lwi0bf"; depends=[backports checkmate data_table evaluate future future_apply lgr mlbench mlr3measures mlr3misc palmerpenguins paradox parallelly R6 uuid]; };
   mlr3benchmark = derive2 { name="mlr3benchmark"; version="0.1.3"; sha256="0j56l8yi1c0sa3fsychrvv42rpip2d300yccps0bj636c5r7na64"; depends=[checkmate data_table ggplot2 mlr3misc R6]; };
   mlr3cluster = derive2 { name="mlr3cluster"; version="0.1.2"; sha256="15sbxpp3lawh30dh3hznig12xp68p83p4rz6si6b6jjddcgsw3rq"; depends=[backports checkmate clue clusterCrit data_table mlr3 mlr3misc paradox R6]; };
   mlr3data = derive2 { name="mlr3data"; version="0.5.0"; sha256="1bck1rsnp4a9bkzyjrdxn1n12lkgkj0gwiwxrf9maj0l8x3kfpyw"; depends=[]; };
   mlr3db = derive2 { name="mlr3db"; version="0.4.2"; sha256="17gahnzhraixxxmyinsh1pnrsfqy5kznw5ynfcwyrzpbinx4drih"; depends=[backports checkmate data_table mlr3 mlr3misc R6]; };
   mlr3filters = derive2 { name="mlr3filters"; version="0.5.0"; sha256="14qq42rj8r6304yb54bs4fjld202zqf2lwd0vrz8ak6sn6jn7dbs"; depends=[backports checkmate data_table mlr3 mlr3misc paradox R6]; };
   mlr3fselect = derive2 { name="mlr3fselect"; version="0.6.1"; sha256="064rc35ij833pwcwg0xx600j8vbv762irr4cld7x356ijprd51ys"; depends=[bbotk checkmate data_table lgr mlr3 mlr3misc mlr3pipelines paradox R6]; };
-  mlr3hyperband = derive2 { name="mlr3hyperband"; version="0.3.0"; sha256="0l6sljxgllpw5pf5d81lf92nn21r02cqpk2f0y8f6gn94yrk1mwb"; depends=[bbotk checkmate data_table lgr mlr3 mlr3misc mlr3tuning paradox R6]; };
+  mlr3hyperband = derive2 { name="mlr3hyperband"; version="0.4.0"; sha256="0r7wm6s1k5jsx18f625970vxj7mccla5hxwnxhn6m8w5fic2kaa3"; depends=[bbotk checkmate data_table lgr mlr3 mlr3misc mlr3tuning paradox R6]; };
   mlr3learners = derive2 { name="mlr3learners"; version="0.5.2"; sha256="1d9hcrnj622ynrzg0ii0fkhz2n66ip46yln21jq1pwpwkqwqzv35"; depends=[checkmate data_table mlr3 mlr3misc paradox R6]; };
   mlr3measures = derive2 { name="mlr3measures"; version="0.4.1"; sha256="1kbw3xd7c9x65v9zzs8i5skmrvl0mf2wsbyssmiif0lvrbzfhcmb"; depends=[checkmate PRROC]; };
   mlr3misc = derive2 { name="mlr3misc"; version="0.10.0"; sha256="1wnzyij1x67smkb3gjb9gpp7iy5andfl0s1c78xx4wylhycc6m11"; depends=[backports checkmate data_table digest R6]; };
   mlr3oml = derive2 { name="mlr3oml"; version="0.5.0"; sha256="1w4hjzzmy968mzgyg6ybcpq09n9zkhiwi2ccm41rvwaysl27rgfd"; depends=[backports checkmate curl data_table jsonlite lgr mlr3 mlr3misc R6 stringi]; };
   mlr3pipelines = derive2 { name="mlr3pipelines"; version="0.4.0"; sha256="0913f67c1r9bi68gxh1prsp0vch21bl6plahnvjrlbq8rrs1sr6p"; depends=[backports checkmate data_table digest lgr mlr3 mlr3misc paradox R6 withr]; };
-  mlr3proba = derive2 { name="mlr3proba"; version="0.4.3"; sha256="1giwab6hdn15xn0vnimnqihl3grrk6vw0p2yf1r590nnqmnyadic"; depends=[checkmate data_table distr6 mlr3 mlr3misc paradox R6 Rcpp survival]; };
+  mlr3proba = derive2 { name="mlr3proba"; version="0.4.4"; sha256="03ypd6mvqapgisb75y619v5pqdbpx3s68q5vdffp4nzpj2wzvnmi"; depends=[checkmate data_table distr6 mlr3 mlr3misc paradox R6 Rcpp survival]; };
   mlr3shiny = derive2 { name="mlr3shiny"; version="0.2.0"; sha256="0s581aqi3a3kg35db0gnsmmg62zwl5bij4vbszjhc63i3xg0ayiz"; depends=[data_table DT e1071 mlr3 mlr3learners mlr3measures plyr purrr ranger readxl shiny shinyalert shinydashboard shinyjs shinythemes shinyWidgets stringr]; };
-  mlr3spatial = derive2 { name="mlr3spatial"; version="0.1.1"; sha256="05ix722xmaxgv1w2gmr07dalail32hpblmlsy5wgkscyp0slqzzg"; depends=[checkmate data_table lgr mlr3 mlr3misc R6 terra]; };
-  mlr3spatiotempcv = derive2 { name="mlr3spatiotempcv"; version="1.0.0"; sha256="0y04w96xk3m786aamqv9p91gqqyi19dc0shgkwlba32lkd5rqj0w"; depends=[checkmate data_table ggplot2 mlr3 mlr3misc paradox R6]; };
-  mlr3tuning = derive2 { name="mlr3tuning"; version="0.11.0"; sha256="0avs0yj11xw3910mksv5bynip8w39mcqjda8qf0a2mnwnjx29kri"; depends=[bbotk checkmate data_table lgr mlr3 mlr3misc paradox R6]; };
+  mlr3spatial = derive2 { name="mlr3spatial"; version="0.1.2"; sha256="1iwbrr9bmwk3bdf7qycn8kpfyqb6n8cracrjj2cafb3xj2r5vimn"; depends=[checkmate data_table lgr mlr3 mlr3misc R6 terra]; };
+  mlr3spatiotempcv = derive2 { name="mlr3spatiotempcv"; version="1.0.1"; sha256="1fws2jqjbjkbcww1nkl6pvj1gzwb3b52q8fykwf7mivgqf93ipzf"; depends=[checkmate data_table ggplot2 mlr3 mlr3misc paradox R6]; };
+  mlr3tuning = derive2 { name="mlr3tuning"; version="0.12.1"; sha256="0qly6bsfazqcf0a7c2a6k3wghczm8v1fxw9pxa76gpw51x2j2ld0"; depends=[bbotk checkmate data_table lgr mlr3 mlr3misc paradox R6]; };
   mlr3tuningspaces = derive2 { name="mlr3tuningspaces"; version="0.1.1"; sha256="14hsm00n3nk7x6521kccakkj0hpmw3c3yjl7dh6hjhggg9p6xkz9"; depends=[checkmate data_table mlr3 mlr3misc mlr3tuning paradox R6]; };
-  mlr3verse = derive2 { name="mlr3verse"; version="0.2.2"; sha256="1rgvhxjqxdrdhbslfxcli4mlafgvswc164yzv7rms60asvq1sndw"; depends=[bbotk data_table mlr3 mlr3cluster mlr3data mlr3filters mlr3fselect mlr3learners mlr3misc mlr3pipelines mlr3proba mlr3tuning mlr3viz paradox]; };
+  mlr3verse = derive2 { name="mlr3verse"; version="0.2.4"; sha256="02bmdvkh76qzimkrkaqkmjxpzx1sds3wkawp8d62a3dqd5225f9s"; depends=[bbotk data_table mlr3 mlr3cluster mlr3data mlr3filters mlr3fselect mlr3hyperband mlr3learners mlr3misc mlr3pipelines mlr3proba mlr3tuning mlr3tuningspaces mlr3viz paradox]; };
   mlr3viz = derive2 { name="mlr3viz"; version="0.5.7"; sha256="1agl6s6i9l7mk8mrvmnz7csqsc77dwjnymlrqcy5vxddr2nfc47l"; depends=[checkmate data_table ggplot2 mlr3misc]; };
   mlrCPO = derive2 { name="mlrCPO"; version="0.3.7-3"; sha256="0vq163ca446l2sb3jbn8wmvj26zsrpz52b1w7d8xgb0jjf2jhp91"; depends=[backports BBmisc checkmate mlr ParamHelpers stringi]; };
   mlrMBO = derive2 { name="mlrMBO"; version="1.1.5"; sha256="1f2ryd0mrlnnwxgwiria2sxqkb09kskfqjzsh32cbxh6ml4d3fbs"; depends=[backports BBmisc checkmate data_table lhs mlr parallelMap ParamHelpers smoof]; };
@@ -12725,9 +12764,8 @@ in with self; {
   mobilityIndexR = derive2 { name="mobilityIndexR"; version="0.2.1"; sha256="0bs2wvbjcrfh82b483vz4lr16y2vaajz2fb1p5bw05qb78jqj9bd"; depends=[]; };
   mobirep = derive2 { name="mobirep"; version="0.2.3"; sha256="06f7vn3ndkadwp60qvvh3yikdx97r6fkqldn67l1506vdr60pxfm"; depends=[copBasic copula ggplot2 ks lattice SpatialExtremes texmex viridis zoo]; };
   mobr = derive2 { name="mobr"; version="2.0.2"; sha256="0dvsarxkjcjn3f40qkx5pdjpvq7hr6l5nvdz6adxlr1sdbadfcws"; depends=[dplyr egg geosphere ggplot2 pbapply plotrix purrr rlang scales tibble tidyr vctrs]; };
-  mobsim = derive2 { name="mobsim"; version="0.2.0"; sha256="0an8j5kj0cs1bjz9kwzwc54hm0zaiz5rsaw78ihldw0mx5n175gn"; depends=[Rcpp sads vegan]; };
   moc = derive2 { name="moc"; version="2.0"; sha256="0fgp8dg9qf7aw1qawmszlxs4bcccqmd87y4kkzdqggm807c2k5gh"; depends=[]; };
-  mockery = derive2 { name="mockery"; version="0.4.2"; sha256="16zayzi2qdmiy513hvlci9f4p8jwry24006yfzrgmrvf6sf293lq"; depends=[testthat]; };
+  mockery = derive2 { name="mockery"; version="0.4.3"; sha256="0sj77m9vgn4bzb8c8nq93xb9lm8ih8rcb7sfccripraibibg3jcz"; depends=[testthat]; };
   mockr = derive2 { name="mockr"; version="0.1"; sha256="0340v6189ivlzzriwk7yhf3v2k651x05fd1xrqfxxjgwhysaqj6z"; depends=[lazyeval]; };
   mockthat = derive2 { name="mockthat"; version="0.2.6"; sha256="12srlafk3ykzhrw65s1qzw3l566j285hi28rzrcpbgyr12720raa"; depends=[]; };
   mod = derive2 { name="mod"; version="0.1.3"; sha256="0z5a6ps2m0cbw0n9kn44767m5jnbf1dl077i2p40fipv8xali9fb"; depends=[]; };
@@ -12744,8 +12782,8 @@ in with self; {
   modelDown = derive2 { name="modelDown"; version="1.1"; sha256="1l0aggkh0ykpqrp59bdz1cyl1ai397cw4hya80b7fm7s49imwczg"; depends=[archivist auditor breakDown DALEX devtools drifter DT ggplot2 kableExtra psych svglite whisker]; };
   modelObj = derive2 { name="modelObj"; version="4.1"; sha256="0afws8vd7qj9m2ikj0ph1vp2rgr3v979hp3qjapgmln1cwglchlw"; depends=[]; };
   modelROC = derive2 { name="modelROC"; version="1.0"; sha256="0iyx7c98ym7dy6pfssj7474h9wjpzjwy0fyc5bnqyi1lmjgd508k"; depends=[do ggplot2 ROCit survivalROC tmcn]; };
-  modelStudio = derive2 { name="modelStudio"; version="3.0.0"; sha256="0gs9r5502ks44ks1phfj8lq13rh6pl8rc2d2fcxadfpvm7ym7x5r"; depends=[DALEX digest iBreakDown ingredients jsonlite progress r2d3]; };
-  modelbased = derive2 { name="modelbased"; version="0.7.1"; sha256="1gf7lw3z0vw6hc9xp6kfky7778wmd1m4lyh1wyhsn6dsv5d0kbl1"; depends=[bayestestR datawizard effectsize insight parameters performance]; };
+  modelStudio = derive2 { name="modelStudio"; version="3.1.0"; sha256="0hd3x5jnj3s4b0hahxzjxfclhr92adf1xhs7hgc1k8bm9ngnqqxm"; depends=[DALEX digest iBreakDown ingredients jsonlite progress r2d3]; };
+  modelbased = derive2 { name="modelbased"; version="0.7.2"; sha256="1akwp565ab26w32v3s1w1xi3baw5mrp46jjjv347w6nbbb7c1w4f"; depends=[bayestestR datawizard effectsize insight parameters performance]; };
   modelc = derive2 { name="modelc"; version="1.0.0.0"; sha256="0xz1zgv5yyvq0yfnhm1kvb4wvlyn4ccd0lkwji55vq8hndvjvk98"; depends=[]; };
   modeldata = derive2 { name="modeldata"; version="0.1.1"; sha256="0jgrwf9k8p9j3ywg3yv2wzwsx3snlwm3dd9vfqwhlr7j63jg3cm4"; depends=[]; };
   modeldb = derive2 { name="modeldb"; version="0.2.2"; sha256="14s8xh05qxv414xcnww1b3s0jqwnjb3l1dqf7q1qbw33ilwcmsfb"; depends=[dplyr ggplot2 progress purrr rlang tibble tidypredict]; };
@@ -12754,7 +12792,7 @@ in with self; {
   modelimpact = derive2 { name="modelimpact"; version="1.0.0"; sha256="16sy7r6bw5nzx77rd27ihgvp7bs39xchgid94ssklj6syc3kn2vq"; depends=[dplyr magrittr]; };
   modelplotr = derive2 { name="modelplotr"; version="1.1.0"; sha256="0i1ssfcyl97zaxc9khdngrmsq9ydrmgv2nd7c6kc6i9z93jbkk4k"; depends=[dplyr ggfittext ggplot2 gridExtra magrittr RColorBrewer rlang scales]; };
   modelr = derive2 { name="modelr"; version="0.1.8"; sha256="1i31nff7bqibk6r4hhd4j1vzwbyaf8493v0bjaagn36njmysfnw2"; depends=[broom magrittr purrr rlang tibble tidyr tidyselect vctrs]; };
-  modelsummary = derive2 { name="modelsummary"; version="0.9.5"; sha256="0bnz3khb6ajnvsv42j2nmwwmyc2cpvxi7c6d6wd0kxr49iw1z3ik"; depends=[broom checkmate generics glue insight kableExtra parameters performance rlang tables]; };
+  modelsummary = derive2 { name="modelsummary"; version="0.9.6"; sha256="1nzahrqqfkc7zbksmlpyvnp7izpcyvck7nhg3nmr6q5paxm1g0f6"; depends=[broom checkmate generics glue insight kableExtra parameters performance rlang tables]; };
   modeltests = derive2 { name="modeltests"; version="0.1.4"; sha256="0ii5sh8yz5yvf0gq41ia55dvbg8x9042x82j52ck6haxa0w8zpfy"; depends=[dplyr generics purrr testthat tibble]; };
   modeltime = derive2 { name="modeltime"; version="1.1.1"; sha256="1m888hbnwvxmvbf4mk219vhiq2fglc6545j26hc1m73bfaxg73dv"; depends=[cli dials doParallel dplyr forcats foreach forecast ggplot2 glue gt hardhat janitor magrittr parsnip plotly prophet purrr reactable rlang scales StanHeaders stringr tibble tidyr timetk workflows xgboost yardstick]; };
   modeltime_ensemble = derive2 { name="modeltime.ensemble"; version="1.0.0"; sha256="01mi6pkjn97c77kyddz6xsyz11kchkdqy6672p8r96h0wy7530a1"; depends=[cli doParallel dplyr foreach generics glue magrittr modeltime modeltime_resample parsnip purrr recipes rlang rsample stringr tibble tictoc tidyr timetk tune workflows yardstick]; };
@@ -12799,11 +12837,12 @@ in with self; {
   monitoR = derive2 { name="monitoR"; version="1.0.7"; sha256="1h1g0m1j13mz37xxwck4s7a0bfqvi0nrzfw60j7bkzaah8zxcc9n"; depends=[tuneR]; };
   monmlp = derive2 { name="monmlp"; version="1.1.5"; sha256="19cx60csm8mnf6ksg64vlhi8wi1c7bmv9l55y9zmaljblr0kmzxf"; depends=[optimx]; };
   monoClust = derive2 { name="monoClust"; version="1.2.1"; sha256="18zb4wfb09rpzzr9bc0nr71994nhgsk74s512dxlss50isvfqjqd"; depends=[cluster doParallel dplyr foreach ggplot2 permute purrr rlang stringr tibble tidyr]; };
-  monobin = derive2 { name="monobin"; version="0.2.1"; sha256="13261k81xpjvbjny938y124r2cqn36c93s177gbg1m0c8k4jlb4i"; depends=[dplyr Hmisc]; };
+  monobin = derive2 { name="monobin"; version="0.2.2"; sha256="1l3nc1sw206wdxswrz1l93zh0p9bi8xzipnszrab4jbcydn1f6qd"; depends=[dplyr Hmisc]; };
   monobinShiny = derive2 { name="monobinShiny"; version="0.1.0"; sha256="1ix376j39fby5571irf8i5bmz8i7nnvfzbvs5cv0k42dcgq93m0g"; depends=[dplyr DT monobin shiny shinydashboard shinyjs]; };
   monochromeR = derive2 { name="monochromeR"; version="0.1.0"; sha256="1zm5d4ipjlkvlhcqnq2cl5amv85n3iflb34915n12rjs68hbcjmd"; depends=[scales]; };
   monographaR = derive2 { name="monographaR"; version="1.2.1"; sha256="09fkcw13h7dx7j5vyp48fk6yzv9n64568zf2zvmm2c008jw3gkbm"; depends=[circular maptools png raster rmarkdown sp]; };
   monomvn = derive2 { name="monomvn"; version="1.9-13"; sha256="1hm5qf28bh0q7f4zcjqx1qxw3l8hzkx349c1y3nwyfg7436vff6a"; depends=[lars MASS mvtnorm pls quadprog]; };
+  monoreg = derive2 { name="monoreg"; version="2.0"; sha256="059y5rj74b2rgkqmqqa4v74ih6knydj3kb2hr7hz4xj36cg01x54"; depends=[]; };
   monotone = derive2 { name="monotone"; version="0.1.0"; sha256="1091xqa88gdp64b65610mfcknyz29kb980iqbvwnmlk12csszr1w"; depends=[]; };
   monotonicity = derive2 { name="monotonicity"; version="1.3.1"; sha256="0bb6sl8yykry25a86qfggi36ggr1xrxcqsnzp6rb6na228hbwa2z"; depends=[lmtest MASS sandwich]; };
   monreg = derive2 { name="monreg"; version="0.1.4"; sha256="15qgfhbd8ny05rjd1nn33ynh4i7m7wcy8az53jraghlk760bymwg"; depends=[]; };
@@ -12834,6 +12873,7 @@ in with self; {
   motifr = derive2 { name="motifr"; version="1.0.0"; sha256="01synariq39mzhx12jbcpwn982piakakl97sgs33xa8xrbwzcxgm"; depends=[dplyr ggplot2 ggraph igraph intergraph network purrr RColorBrewer reshape2 reticulate rlang scales tibble tidygraph]; };
   motmot = derive2 { name="motmot"; version="2.1.3"; sha256="09qsyc4ifdl316kjqqkarmflpjcd0ivkhx5fzi3502anj6dxpjnq"; depends=[ape caper coda ks mvtnorm Rcpp]; };
   motoRneuron = derive2 { name="motoRneuron"; version="1.0.0"; sha256="1hdsf4c1v5hfaqpi5y1v60zqq5fdmlqdvzpsq77diclp9vzdshja"; depends=[dygraphs ggplot2]; };
+  moult = derive2 { name="moult"; version="2.2.1"; sha256="1aarny5p0rpmzibfsz27allr6xc6267ylc3wvpk7pzch6yj759zm"; depends=[Formula Matrix]; };
   mountainplot = derive2 { name="mountainplot"; version="1.3"; sha256="1mgvcv58pb3ximrf7gq1ii53gmjrn1qajayjlx8qqzsvjkn3myin"; depends=[lattice]; };
   mousetrack = derive2 { name="mousetrack"; version="1.0.0"; sha256="0lf0xh0c3xl27nh5w8wwyrm2jfzfajm2f73xjdgf746dp365qc8n"; depends=[pracma]; };
   mousetrap = derive2 { name="mousetrap"; version="3.2.1"; sha256="12vlb5fhq9m2f3c073xzdqk98gdq7jk2rwj6kcckxx6x7wg20fyd"; depends=[cstab diptest dplyr fastcluster fields ggplot2 lifecycle magrittr pracma psych RColorBrewer Rcpp rlang scales tidyr]; };
@@ -12842,11 +12882,10 @@ in with self; {
   moveHMM = derive2 { name="moveHMM"; version="1.7"; sha256="031msh427hgjyr37imalr7smd79yqscw9xq5rjrixxc2w5qly9jj"; depends=[boot CircStats geosphere ggmap ggplot2 MASS numDeriv Rcpp RcppArmadillo sp]; };
   moveVis = derive2 { name="moveVis"; version="0.10.5"; sha256="1lj22yr6v3vg795r72gkbhyabycppxbjsaldqiqgckhkdfh3lziw"; depends=[av cowplot curl ggplot2 gifski lubridate lwgeom magick magrittr move pbapply raster sf slippymath]; };
   moveWindSpeed = derive2 { name="moveWindSpeed"; version="0.2.3"; sha256="14a2iymn4j831xlh42z5qxmhnh7xpp5bxasgpkhnb3v0b5ldyilh"; depends=[move Rcpp]; };
-  movecost = derive2 { name="movecost"; version="1.4"; sha256="1fmfzrgk7a5fcqp61a8755fyasn217ixkwmpmjkpjfk77m1wdali"; depends=[chron elevatr gdistance maptools raster rgdal rgeos sp spatstat_geom]; };
+  movecost = derive2 { name="movecost"; version="1.5"; sha256="0f80gpzghxnq80sl17zzpi3xj4gxgfiyx5jh1j01bngq1iy7m0r1"; depends=[chron elevatr gdistance maptools raster rgdal rgeos sp spatstat_geom]; };
   mozzie = derive2 { name="mozzie"; version="0.1.0"; sha256="09dwrv4r0hi19gzi1vpif3q4wlbny9h22430g1hhv0wkqs86mhmw"; depends=[]; };
   mp = derive2 { name="mp"; version="0.4.1"; sha256="0awvwqwb25q47j14b450k1k5mh2yzwhn7gizjv5j7lyiamk30iwq"; depends=[Rcpp RcppArmadillo]; };
-  mpa = derive2 { name="mpa"; version="0.7.3"; sha256="0mhnsbgr77fkn957zfiw8skyvgd084rja1y4wk5zf08q5xjs2zvn"; depends=[network]; };
-  mpath = derive2 { name="mpath"; version="0.4-2.20"; sha256="08ph3vzrd2k2njd1gl4pxlmrnn2sxrs60ah8cb0m6f173lcapgwm"; depends=[bst doParallel foreach glmnet MASS numDeriv pamr pscl WeightSVM]; };
+  mpath = derive2 { name="mpath"; version="0.4-2.22"; sha256="0i4vyli3sr1lzrj0ayzsq55cpsv0xrwn216lgzmfyjr5n8r9aw7r"; depends=[bst doParallel foreach glmnet MASS numDeriv pamr pscl WeightSVM]; };
   mpbart = derive2 { name="mpbart"; version="0.2"; sha256="1145n0lxmm0kjm2lc358d79hqws48crj17pjvmchl1pbfd7zi4r8"; depends=[bayesm cvTools mlbench mlogit]; };
   mpcmp = derive2 { name="mpcmp"; version="0.3.6"; sha256="1jzrmaxm133zy4wi5pzjlj6gnh89nx4j69dnwm4s4y3i7ixch908"; depends=[dplyr generics ggplot2 ggpubr purrr Rcpp rlang stringr tibble]; };
   mpcv = derive2 { name="mpcv"; version="1.1"; sha256="0vwycspiw9saj811f6alkbijivy7szpahf35bxn2rpn2bdhbn21i"; depends=[lpSolve]; };
@@ -12868,12 +12907,12 @@ in with self; {
   mra = derive2 { name="mra"; version="2.16.11"; sha256="0268msdy4cs2ifpagmwiabi6aav54ckn214ai18aqv2h97hmixw0"; depends=[]; };
   mratios = derive2 { name="mratios"; version="1.4.2"; sha256="18pi0dks0qmw0gv76yqm4gvxdqrcvr25j1vb8k4mkp5p35kzkzff"; depends=[multcomp mvtnorm survival survPresmooth]; };
   mrbayes = derive2 { name="mrbayes"; version="0.5.1"; sha256="11n3d18di01vmwqs5a0i1h8839aammzbcavi1jk58bmrwb3l771j"; depends=[BH plyr Rcpp RcppEigen rstan rstantools StanHeaders]; };
-  mrbin = derive2 { name="mrbin"; version="1.6.2"; sha256="1vvccsb3rlr01bpp3khn11q2ad18dn5pgkcj72ln8jn1yfw2jckm"; depends=[]; };
+  mrbin = derive2 { name="mrbin"; version="1.6.3"; sha256="0w9m1mmvp6m3zhkxdr7fj96z143kq0qnc6kpg2ixn1sl4nzdfx0c"; depends=[]; };
   mrbsizeR = derive2 { name="mrbsizeR"; version="1.2.1.1"; sha256="0v06sd5sh7ghlr8lgrv6l4glmv7chj3951pw4ssxrly4hz2rh6i0"; depends=[fields maps Rcpp]; };
   mrds = derive2 { name="mrds"; version="2.2.5"; sha256="1659nzdykl4mgfgyniwnwrn1a0m6wiz7c02ygwpm90bnz8f4g5y2"; depends=[mgcv numDeriv optimx Rsolnp]; };
   mreg = derive2 { name="mreg"; version="1.1"; sha256="06la0yy2yys161jhlzlcm5lcv0664wm6sa8gjdnpd1s1nx52jkqf"; depends=[]; };
   mregions = derive2 { name="mregions"; version="0.1.6"; sha256="0ix77hqcllhcpldchlnvciiflm6ysylynnnqvczpf8vx7gwa3lrk"; depends=[data_table httr jsonlite rappdirs sp tibble wellknown xml2]; };
-  mrf = derive2 { name="mrf"; version="0.1.5"; sha256="169sw6wvxdy6j9b1vcng6dsxvq1h23pyzp0dnry3yp06yjz76wq6"; depends=[DEoptim forecast limSolve monmlp nnfor]; };
+  mrf = derive2 { name="mrf"; version="0.1.6"; sha256="0jqpx0ng0l8f7y941awpi82yqbv8ir0sixiw6zdkqpj82d9a7j9m"; depends=[DEoptim forecast limSolve monmlp nnfor]; };
   mrf2d = derive2 { name="mrf2d"; version="1.0"; sha256="0fmxn178bkw77iz51bnjxala9xmhs44km57m8msvlw0k69sddyif"; depends=[dplyr ggplot2 Rcpp RcppArmadillo Rdpack tidyr]; };
   mrfDepth = derive2 { name="mrfDepth"; version="1.0.13"; sha256="177331j30n707mcl1ghxjc53xjs9qsal15kccc71b0rabkjdq2wv"; depends=[abind geometry ggplot2 matrixStats Rcpp RcppArmadillo RcppEigen reshape2]; };
   mrfse = derive2 { name="mrfse"; version="0.2"; sha256="1dx21m54jsprlngj20q1bgvbw1bbm0sm8i01xanj68bx796ng14j"; depends=[]; };
@@ -12922,6 +12961,7 @@ in with self; {
   mstDIF = derive2 { name="mstDIF"; version="0.1.6"; sha256="0zhslqzvvk8wbgqvcipmzhy94awwfmkv5yfl812m8wmwgpkcqzpb"; depends=[eRm expm Matrix mirt PP scDIFtest]; };
   mstR = derive2 { name="mstR"; version="1.2"; sha256="0v8cv9pswkvw0lva6jx5vavsb20dawgq83gn4rgydyhvigcl5szd"; depends=[]; };
   mstate = derive2 { name="mstate"; version="0.3.2"; sha256="054dzrd5b0xjjjl7862q3aq1jwgrxbkqz7zpvbdirqsld3zksirw"; depends=[data_table lattice RColorBrewer rlang survival viridisLite]; };
+  mstclustering = derive2 { name="mstclustering"; version="1.0.0.0"; sha256="1m2hmjia3r5ph5zl2314kq8dmjggzvw3ad8cixjjd70hi8570fpw"; depends=[data_table reshape2]; };
   mstherm = derive2 { name="mstherm"; version="0.4.7"; sha256="04jrp0w17svwmrvx356jmh04npbwhk9nvfy3r39vqr82yrvn6jip"; depends=[doParallel foreach nls2 plotrix RColorBrewer]; };
   mstknnclust = derive2 { name="mstknnclust"; version="0.3.1"; sha256="0bg38gnaf2jjva8l2wk862ch2cpqvw7szvvvpb2bnz02fp795p3g"; depends=[igraph]; };
   mstrio = derive2 { name="mstrio"; version="11.3.0.1"; sha256="1qjqxrgy2amm0ikfixkqjix3d6jzh1y3abnbzq41ibl5qiz8pjxy"; depends=[crul data_table httr jsonlite openssl R6 rstudioapi shiny shinyjs]; };
@@ -12961,6 +13001,7 @@ in with self; {
   multiPIM = derive2 { name="multiPIM"; version="1.4-3"; sha256="0j7d0cgs8zcyiyibzmfhcandad76sf4gm57wkcv98bf96wkls58l"; depends=[lars penalized polspline rpart]; };
   multiRDPG = derive2 { name="multiRDPG"; version="1.0.1"; sha256="0r6n148pakixw4caj0zwib8zirgl98lm0mxqmhvmqjh389icskxc"; depends=[]; };
   multiROC = derive2 { name="multiROC"; version="1.1.1"; sha256="15ydbxpkdyvsc55di13jvwh9p6dzxc1yj93w1cwsd8jp2y10wsd3"; depends=[boot magrittr zoo]; };
+  multiUS = derive2 { name="multiUS"; version="1.1.0"; sha256="077qyqfbp2r5ah08biiswn4jg03h2jcvi0gij6h5wip16vr0d0yx"; depends=[gplots MASS]; };
   multiband = derive2 { name="multiband"; version="0.1.0"; sha256="1f4gmy0yf9zid7kl05zncvvig6hs4nl1h9wkrkc24rxx9risw9k9"; depends=[]; };
   multibiplotGUI = derive2 { name="multibiplotGUI"; version="1.0"; sha256="0ig7r4p8mq594cjwclbqwjk8saqkvjqjbbnnxj1hc1sdj7qdlcpf"; depends=[cluster dendroextras Matrix rgl shapes tcltk2 tkrplot]; };
   multiblock = derive2 { name="multiblock"; version="0.8.1"; sha256="1c7k5qkzh638xi07yknzjycsadkcnlrb6sdgq44nakna8ax4kdr2"; depends=[ade4 car FactoMineR geigen knitr lme4 MASS mixlm plotrix pls plsVarSel pracma progress r_jive Rcpp RcppEigen RegularizedSCA RGCCA RSpectra SSBtools]; };
@@ -12973,7 +13014,7 @@ in with self; {
   multicon = derive2 { name="multicon"; version="1.6"; sha256="16glkgnm4vlpxkhf1xw1gl1q10yavx9479i21v29lldag35z8pqx"; depends=[abind foreach mvtnorm psych sciplot]; };
   multicool = derive2 { name="multicool"; version="0.1-12"; sha256="0djacq0irfqz4nlnx238kja73yvr1n5qybbfyl6bw1n6qgcjhza8"; depends=[Rcpp]; };
   multicross = derive2 { name="multicross"; version="2.1.0"; sha256="17hk03wsms9ij6hp6dw77cvvngdb5i66is6pcl1q21pyp327zqi6"; depends=[crossmatch MASS Matrix nbpMatching]; };
-  multid = derive2 { name="multid"; version="0.3.0"; sha256="1wpbb8npxns8wiwszb10hzy6i2nc7vsqi18n6zx5qi4mxhhad2mh"; depends=[dplyr emmeans glmnet lavaan pROC]; };
+  multid = derive2 { name="multid"; version="0.4.0"; sha256="14vp8k1iwn0s97p877bwzc4ng12kdhcr1zs3w35aaypa5d2khsyx"; depends=[dplyr emmeans glmnet lavaan lme4 pROC]; };
   multidplyr = derive2 { name="multidplyr"; version="0.1.1"; sha256="1cc8p9l6nn6n3dvivqyn8pwj0wn2vz40jcbb38zkg109a4c06jbb"; depends=[callr crayon dplyr magrittr qs R6 rlang tibble tidyselect vctrs]; };
   multifamm = derive2 { name="multifamm"; version="0.1.1"; sha256="09s6hnyi5x48yp97499zai7b959ylkk17zbbc6d8a71ynvfas8ir"; depends=[data_table funData MFPCA mgcv sparseFLMM zoo]; };
   multifear = derive2 { name="multifear"; version="0.1.2"; sha256="15nxyb17qzwld3ngw5k60nsr5nnam09jc1ky87rvsvslj6f3v696"; depends=[BayesFactor bayestestR bootstrap broom dplyr effectsize effsize esc ez forestplot ggplot2 nlme purrr reshape2 stringr tibble]; };
@@ -12983,21 +13024,23 @@ in with self; {
   multigraphr = derive2 { name="multigraphr"; version="0.1.0"; sha256="018kwpphwkpm07by7pvrwp5wvrasnpaxbs67pdrbfxzc139d15q9"; depends=[]; };
   multigroup = derive2 { name="multigroup"; version="0.4.5"; sha256="1d3m2c3md9iiv1gfqfyik1xj3fsas85bmf2vbkaks8ljxa42f55k"; depends=[MASS]; };
   multilaterals = derive2 { name="multilaterals"; version="1.0"; sha256="11zfdhn6qzqz0n31g23bn40wnfzkjndb753iiqvihirphzb74v5v"; depends=[ape igraph]; };
-  multilevel = derive2 { name="multilevel"; version="2.6"; sha256="19zrvpq23dn69d7kai1rgw5b8ibmgybnbg6isliq0n8bv9jvrzia"; depends=[MASS nlme]; };
+  multilevel = derive2 { name="multilevel"; version="2.7"; sha256="0ds7q3q2ncldb4iik24xisyxyyv1yv8l1yz7zd7cy036bna1yp5i"; depends=[MASS nlme]; };
   multilevelPSA = derive2 { name="multilevelPSA"; version="1.2.5"; sha256="0926jaicdxk846vyfphb2hyg3zan3wal44x1bwamws0zf4flc4hj"; depends=[ggplot2 MASS party plyr PSAgraphics psych reshape xtable]; };
   multilevelTools = derive2 { name="multilevelTools"; version="0.1.1"; sha256="01fzx7j0mkb4fr7axv34184w6w5nfsdcr51nscci1mi5b2805x1s"; depends=[cowplot data_table extraoperators ggplot2 JWileymisc lavaan lme4 lmerTest nlme zoo]; };
-  multimark = derive2 { name="multimark"; version="2.1.3"; sha256="13arvjxfnxq7dr5r8cqwxxkravwwf4dq5hq263ss353fdi2qv4i0"; depends=[Brobdingnag coda Matrix mvtnorm prodlim raster RMark sp statmod]; };
+  multilinguer = derive2 { name="multilinguer"; version="0.2.2"; sha256="1i8c3sz6h42nca13ycjkmsmjbg8lj1xhkvyga97lp2wgkrrywpwb"; depends=[askpass rappdirs sys usethis]; };
+  multimark = derive2 { name="multimark"; version="2.1.4"; sha256="1x194h1jzxm3va933vqqk0qdg7pgrc5hqwdd1bwh0sjavygwanqz"; depends=[Brobdingnag coda Matrix mvtnorm prodlim raster RMark sp statmod]; };
   multimode = derive2 { name="multimode"; version="1.5"; sha256="0qxb67qss2pmid0wiwblqng5qmihqchdhbkyjklgj20pvbjz1wjm"; depends=[diptest ks rootSolve]; };
   multimorbidity = derive2 { name="multimorbidity"; version="0.5.0"; sha256="1x4869pqckldx6g4zhawjbin03glkxzfszb4qiq7yy2xi444jkl0"; depends=[devtools dplyr lubridate magrittr rlang sqldf stringr tidyr tidyselect tidyverse]; };
   multinbmod = derive2 { name="multinbmod"; version="1.0"; sha256="1c4jyzlcjkqdafj9b6hrqp6zs33q6qnp3wb3d7ldlij7ns9fhg71"; depends=[]; };
   multinet = derive2 { name="multinet"; version="4.0.1"; sha256="0j4hdw47vf5rkd4vqr6bs5740h17kvw7208a434q0ms2vlmm40cg"; depends=[igraph RColorBrewer Rcpp]; };
   multinets = derive2 { name="multinets"; version="0.2.2"; sha256="1i5jsq1xy0g0l5d1z3hz4gj6inj4rhd6lf2s5xzd5k8ccp5aba8c"; depends=[igraph Rcpp]; };
-  multinma = derive2 { name="multinma"; version="0.4.1"; sha256="02mk8z3dca32ap8ijs3f9jyqlf6wakbzc3ym5kj0g4axxivj5dhw"; depends=[bayesplot BH copula dplyr forcats ggdist ggplot2 ggraph glue igraph Matrix purrr randtoolbox Rcpp RcppEigen RcppParallel Rdpack rlang rstan rstantools StanHeaders stringr tibble tidyr truncdist]; };
+  multinma = derive2 { name="multinma"; version="0.4.2"; sha256="128p2a20kcdkqv9zq4i9hiy9fyqasmrfz162yz00fmyxkp50g63a"; depends=[bayesplot BH copula dplyr forcats ggdist ggplot2 ggraph glue igraph Matrix purrr randtoolbox Rcpp RcppEigen RcppParallel Rdpack rlang rstan rstantools StanHeaders stringr tibble tidyr truncdist]; };
   multinomRob = derive2 { name="multinomRob"; version="1.8-6.1"; sha256="1fdjfk77a79fy7jczhpd2jlbyj6dyscl1w95g64jwxiq4hsix9s6"; depends=[MASS mvtnorm rgenoud]; };
+  multinomineq = derive2 { name="multinomineq"; version="0.2.3"; sha256="0hf3sv8gmdga7grina97wsya3d1cvb63h2j0sv6s10k9ccpv0ysn"; depends=[coda quadprog Rcpp RcppArmadillo RcppProgress RcppXPtrUtils Rglpk]; };
   multipanelfigure = derive2 { name="multipanelfigure"; version="2.1.2"; sha256="0cm5bd7k0fx6d3gybcll6vvh14byanyk6dj4civqij7psa48iagc"; depends=[assertive_base assertive_files assertive_numbers assertive_properties assertive_types ggplot2 gridGraphics gtable magick magrittr stringi]; };
   multipleNCC = derive2 { name="multipleNCC"; version="1.2-2"; sha256="0bnc14l5b3x68qnwf3ma8wrclmp6n7fxsc0sbd7cfaayhp8dzcb1"; depends=[mgcv survival]; };
   multiplestressR = derive2 { name="multiplestressR"; version="0.1.1"; sha256="167ch16bdlk4syjbgn1149q1np90w6299ph35p9npdh1zcynm95f"; depends=[ggplot2 patchwork viridis]; };
-  multiplex = derive2 { name="multiplex"; version="2.9.7"; sha256="0l6ag5d1gr7jvvjs8wq234vylvhav13wd29crx7axckd5jgx2k0h"; depends=[]; };
+  multiplex = derive2 { name="multiplex"; version="2.9.8"; sha256="1rc5jj92s3dkkqp2aa833zn16g0h3nl4qk3vwqg5a08rqk5qyi87"; depends=[]; };
   multipol = derive2 { name="multipol"; version="1.0-7"; sha256="1rkrg3kayxa05jayg8bk1mm3hcvi76570wqfja5953hd9j4krgha"; depends=[abind]; };
   multirich = derive2 { name="multirich"; version="2.1.3"; sha256="1vv4jhhq46wp6znfv9c47q9z4smn1c560wnbp77qfhiix098wzfj"; depends=[]; };
   multiridge = derive2 { name="multiridge"; version="1.9"; sha256="1z77gabrm8dpyp4fssh1rqw58y1fspp5ypv2xybwr7k3fbvyd1vg"; depends=[mgcv pROC risksetROC snowfall survival]; };
@@ -13020,8 +13063,9 @@ in with self; {
   mumm = derive2 { name="mumm"; version="0.2.1"; sha256="1wjg2pqn2wb9hk9mqgpi3k26qwjnkmp4apx09lxcwrz35bbwhfzv"; depends=[lme4 Matrix Rcpp RcppEigen stringr TMB]; };
   munfold = derive2 { name="munfold"; version="0.3.5"; sha256="17zizx9r0f8dxb7dkgn1nn0fp7ydy6r155p1zfz0v93jc26lc1hb"; depends=[MASS memisc]; };
   munsell = derive2 { name="munsell"; version="0.5.0"; sha256="16g1fzisbpqb15yh3pqf3iia4csppva5dnv1z88x9dg263xskwyh"; depends=[colorspace]; };
-  munsellinterpol = derive2 { name="munsellinterpol"; version="2.7-1"; sha256="13b8bac9z1zg4qxf1fphwx2dx29p6znzd9pyw1i76h2ccpyxbsl5"; depends=[rootSolve spacesRGB spacesXYZ]; };
+  munsellinterpol = derive2 { name="munsellinterpol"; version="2.8-2"; sha256="0ypvlfzvy0kv9ih0w0h5f5jnljlhgp7nj08rlp6hafajbhqp6k1y"; depends=[rootSolve spacesRGB spacesXYZ]; };
   murphydiagram = derive2 { name="murphydiagram"; version="0.12.2"; sha256="0f699cdfsl4f9w9f18cxkdlq1vyhsv83ynl6ck0r3wwh8f1zsmnd"; depends=[]; };
+  musclesyneRgies = derive2 { name="musclesyneRgies"; version="1.1.3"; sha256="12cmxavj6k08pbk0ywmip1wph5jgq9y1ghj0dwq177sf8icmy9l6"; depends=[FNN ggplot2 gridExtra gtools plyr proxy reshape2 signal umap]; };
   music = derive2 { name="music"; version="0.1.1"; sha256="04ygmlga7i8bpxcrlmj8wc956asf73krghga6fnh2flm675dp42f"; depends=[audio crayon]; };
   musicNMR = derive2 { name="musicNMR"; version="0.0.2"; sha256="09xxc78ajk428yc3617jfxqp5fy89nfc24f1rig6cw28fflwqj0k"; depends=[seewave]; };
   musica = derive2 { name="musica"; version="0.1.3"; sha256="0cfzfar706l0xdb0n11m18mayj5rrplvf4qry36vgxsiaxcba90r"; depends=[data_table lubridate magrittr qmap]; };
@@ -13041,12 +13085,13 @@ in with self; {
   mvQuad = derive2 { name="mvQuad"; version="1.0-6"; sha256="016477dhjdkqiadc631vzpbp967mn4yli6by3s1k348mlfirwsi3"; depends=[data_table statmod]; };
   mvSLOUCH = derive2 { name="mvSLOUCH"; version="2.7.3"; sha256="1f048j48mv654n8yswvlj9q4rr2kpyi4b4mibg28cspayidq9yyc"; depends=[abind ape Matrix matrixcalc mvtnorm ouch PCMBase TreeSim]; };
   mvShapiroTest = derive2 { name="mvShapiroTest"; version="1.0"; sha256="0zcv5l28gwipkmymk12l4wcj9v047pr8k8q5avljdrs2a37f74v1"; depends=[]; };
-  mvabund = derive2 { name="mvabund"; version="4.1.12"; sha256="107pwv2bwird1a98chcnbld2wqj9prkf4pkncyrrp304zpdkkby1"; depends=[MASS Rcpp RcppGSL statmod tweedie]; };
+  mvabund = derive2 { name="mvabund"; version="4.2.1"; sha256="01kss9dx4an1ir5zs46jypvhj8sdc8wcs00i1223ai09av4lcsgd"; depends=[MASS Rcpp RcppGSL statmod tweedie]; };
   mvbutils = derive2 { name="mvbutils"; version="2.8.232"; sha256="0awd0jy492ha321c20kmmgl20kqphdmrmswakc0rq6h8z9d55kdg"; depends=[]; };
-  mvc = derive2 { name="mvc"; version="1.3"; sha256="0kmh6vp7c2y9jf71f4a29b0fxcl0h7m4p8wig4dk3fi7alhjf7ym"; depends=[rattle]; };
+  mvc = derive2 { name="mvc"; version="1.3"; sha256="0kmh6vp7c2y9jf71f4a29b0fxcl0h7m4p8wig4dk3fi7alhjf7ym"; depends=[]; };
   mvcluster = derive2 { name="mvcluster"; version="1.0"; sha256="0yfl31scdgsiljvpv1yxc5bwwzr6kbhpjwqh2kql7xf0m0hc1pr4"; depends=[Rcpp RcppArmadillo]; };
   mvctm = derive2 { name="mvctm"; version="1.2"; sha256="0810bmk748cvbls4djspqvkk65j605djqicqg4rkwy2a799l3rgc"; depends=[Formula MNM nlme quantreg Rfit SpatialNP]; };
   mvdalab = derive2 { name="mvdalab"; version="1.6"; sha256="0i4hhm9bkp13j8cy6fspdn619d00jh615njwr49rwzgjyj418k6l"; depends=[car dummies ggplot2 MASS moments penalized plyr reshape2 sn]; };
+  mvgb = derive2 { name="mvgb"; version="0.0.1"; sha256="0rp9z6zp2nl09aq1xxq08h23zb5pidxjq0byryf3vy72ldq7y72c"; depends=[mvtnorm]; };
   mvglmmRank = derive2 { name="mvglmmRank"; version="1.2-2"; sha256="00zxqby8syb959fqgw9i7b0yamgjwddq32jlin6qmnzys5bg1556"; depends=[MASS Matrix numDeriv]; };
   mvinfluence = derive2 { name="mvinfluence"; version="0.8-3"; sha256="0nygsldkm61ny5ljcc1r667rywj239j4x59ssi81cb2005kkjgm5"; depends=[car heplots]; };
   mvmesh = derive2 { name="mvmesh"; version="1.6"; sha256="1y6p7xp9fv0xswjdc6py1xqlx1ys1iyr559s9wkyja4hzcpya2my"; depends=[abind geometry rcdd rgl SimplicialCubature]; };
@@ -13069,11 +13114,11 @@ in with self; {
   mvtsplot = derive2 { name="mvtsplot"; version="1.0-1"; sha256="0g5grrha77rsnkfasw5pxnpmkl7vgb728ms8apyg8xnbmgilg9vv"; depends=[RColorBrewer]; };
   mwTensor = derive2 { name="mwTensor"; version="0.99.5"; sha256="11zn2g1gxl1x6ci3wqkr7a37jwc4rdcbgdagy5gf3jgkmmr5an3w"; depends=[ccTensor ica igraph MASS nnTensor rTensor]; };
   mwa = derive2 { name="mwa"; version="0.4.3"; sha256="100d3c1070ir64iv848kws5fna141gcq5p66ip873cr632a042qs"; depends=[cem MASS rJava]; };
-  mwaved = derive2 { name="mwaved"; version="1.1.8"; sha256="092sqd9harx289bgghw9x495llzhab0vkgkjka5jhi4ad1rfk3vh"; depends=[Rcpp shiny]; };
   mwcsr = derive2 { name="mwcsr"; version="0.1.2"; sha256="1s7l3id3yashmscdd1kdcw1i4agpd6z12c7wxj18h3g2c82s7ad6"; depends=[igraph Rcpp]; };
   mwshiny = derive2 { name="mwshiny"; version="2.1.0"; sha256="0c1a0d9qnaszffhzanmk31mdxqi7j3rn6bk7a3dwg4bq1da3rlgl"; depends=[htmltools shiny]; };
-  mxkssd = derive2 { name="mxkssd"; version="1.1"; sha256="0m9763dqrk8qkrvp18bsv96jv0xhc2m8sbxdk6x3w6kdjcl663p2"; depends=[]; };
+  mxkssd = derive2 { name="mxkssd"; version="1.2"; sha256="19zz5y5gz84a7qicaj3v2j6l558vr6w8lcy67b3kmkq64mnnirda"; depends=[]; };
   mxmmod = derive2 { name="mxmmod"; version="1.1.0"; sha256="0x4m6y4ngb3vm9xpvwvn1zcbch2fhz8pb267hg2sb3kk5m504xxq"; depends=[OpenMx]; };
+  mxnorm = derive2 { name="mxnorm"; version="1.0.1"; sha256="0crqzbxvb459pzi6znhm06irfs09f1nsy0r1lnglzi7v1r5sh9n0"; depends=[caret data_table dplyr e1071 fda fossil ggplot2 glue KernSmooth kSamples lme4 magrittr psych reticulate rlang stringr tidyr uwot]; };
   myTAI = derive2 { name="myTAI"; version="0.9.3"; sha256="0fd6srvwzqir8zif56cnyi02c952fgc67xzc17wn7xvmvljfvh4x"; depends=[cpp11 doParallel dplyr edgeR fitdistrplus foreach ggplot2 gridExtra nortest RColorBrewer Rcpp RcppArmadillo readr reshape2 scales taxize tibble]; };
   mycobacrvR = derive2 { name="mycobacrvR"; version="1.0"; sha256="1xd9ackzdd8db6bayza0bg4n256mi9rdqih0cdc0nl212c3iz75g"; depends=[]; };
   mycor = derive2 { name="mycor"; version="0.1.1"; sha256="00hqmvga22bv43833s974s7ky7lbry3r2bb5kza7kvkn1p6773rg"; depends=[lattice]; };
@@ -13086,7 +13131,7 @@ in with self; {
   nFCA = derive2 { name="nFCA"; version="0.3"; sha256="1jyyzagmppm3i7vh3ia4ic0zql1w04f66z81v0zpdihd4cbl5ra7"; depends=[]; };
   nFactors = derive2 { name="nFactors"; version="2.4.1"; sha256="1diybai7pwaj9adn60b7nhvvpjjkwg3jimwp2ahgca9askmv93h2"; depends=[lattice MASS psych]; };
   nJira = derive2 { name="nJira"; version="0.1.1"; sha256="0vh167kxljp68f0dx307wl6fp8nlp34vgrkr815z30mhx03p8j9r"; depends=[httr plyr rjson]; };
-  nLTT = derive2 { name="nLTT"; version="1.4.3"; sha256="0gpmlvam7k4gsiidblfl4f57mgkbq2pakzqak4yx4pxa9f8gpilm"; depends=[ape coda deSolve testit]; };
+  nLTT = derive2 { name="nLTT"; version="1.4.6"; sha256="1w073m8pq9372y1df5w77ghqsf0pyhld6hkpwf18bzwdr57nzr64"; depends=[ape coda testit]; };
   nVennR = derive2 { name="nVennR"; version="0.2.3"; sha256="035gblc8427v0vq288rib3jfpz5fmcpvqg6nfaijwmbkz3gd41b6"; depends=[Rcpp]; };
   na_tools = derive2 { name="na.tools"; version="0.3.1"; sha256="1lbzsckfg297n85kzbin65x1l6qgg9l50hd3xi2gflxc7n2xb8bw"; depends=[]; };
   naaccr = derive2 { name="naaccr"; version="1.0.0"; sha256="1hw74a2gjm3gxq0s0qlndhqw0vij6p31walz1ic741z7hqsffqq7"; depends=[data_table stringi]; };
@@ -13098,21 +13143,20 @@ in with self; {
   naivereg = derive2 { name="naivereg"; version="1.0.5"; sha256="1cxfl419pp7xh1xrad29gvpn6hm0rhk40vylj97ypndh6gmnynzz"; depends=[glmnet gmm grpreg ncvreg]; };
   nakagami = derive2 { name="nakagami"; version="1.1.0"; sha256="0bxsg5k51x7qrw34l16da79ck212drkgvzgn9d5zanx5dwv5asl2"; depends=[assertthat]; };
   namedCapture = derive2 { name="namedCapture"; version="2020.4.1"; sha256="0zdw3h3n4qjv9cpidb3g523ld6rrh49l2c1yhfqhk5wb7vddrs46"; depends=[]; };
-  namedropR = derive2 { name="namedropR"; version="2.2.1"; sha256="1svwpv7q0jbjikx81j3g75i2gwil4q4rqxhyd5w7ylqc633yjgji"; depends=[bib2df dplyr here htmltools lubridate qrcode readr webshot]; };
-  namer = derive2 { name="namer"; version="0.1.5"; sha256="1687x6rc46bp2bmqkixzry5cc7lxjqwjk8ngrbg2fk7mzb4pwvnq"; depends=[dplyr fs glue magrittr purrr rstudioapi tibble]; };
+  namedropR = derive2 { name="namedropR"; version="2.2.3"; sha256="08280hsb23pvjr0zrgfjmgmr4jiasrv0lbkjp92lwhkaljlhrpfy"; depends=[bib2df dplyr here htmltools lubridate qrcode readr webshot]; };
   namespace = derive2 { name="namespace"; version="0.9.1"; sha256="1bsx5q19l7m3q2qys87izvq06zgb22b7hqblx0spkvzgiiwlq236"; depends=[]; };
   nametagger = derive2 { name="nametagger"; version="0.1.1"; sha256="17g8y7x83p1pkgj5hgildndchxsp70va25h93p7r1yjllm56zqv8"; depends=[Rcpp]; };
   nandb = derive2 { name="nandb"; version="2.1.0"; sha256="1rbn4nibjzvwpccpmqn84w9a167f1avyl18kjlapy5dhafvixgbz"; depends=[assertthat autothresholdr BBmisc checkmate detrendr dplyr filesstrings ggplot2 glue ijtiff magrittr purrr Rcpp reshape2 rlang stringr viridis withr]; };
   naniar = derive2 { name="naniar"; version="0.6.1"; sha256="0l3l2x85v3srilww483kpgp4zlwixyml257b0cqly8kcpwawlinm"; depends=[dplyr forcats ggplot2 glue magrittr norm purrr rlang tibble tidyr UpSetR viridis visdat]; };
-  nanonext = derive2 { name="nanonext"; version="0.1.0"; sha256="0bilvm2sw5hmp39pgjj7sd8k90knmad5b9mlml3jgqx27cvsgmab"; depends=[]; };
+  nanonext = derive2 { name="nanonext"; version="0.2.0"; sha256="04r119v74i1wymhdyjjcdybjvd7i5fhx8n8zq233iq7rrszcr8cd"; depends=[]; };
   nanop = derive2 { name="nanop"; version="2.0-6"; sha256="007gdc93pk0vpfmsw7zgfma2k1045n2cxwwsyy276smy0ys9fdhp"; depends=[distrEx rgl]; };
   nanostringr = derive2 { name="nanostringr"; version="0.2.0"; sha256="13rcc33zfqlx8m5bmr5hh87gp0g5wlg2cwlj1683kw9adj2y3fdf"; depends=[assertthat ccaPP dplyr epiR magrittr purrr rlang]; };
-  nanotime = derive2 { name="nanotime"; version="0.3.5"; sha256="1813740pjm4h27xhyipw58f4049qb49840axhnjcxfjjhkjsmpj4"; depends=[bit64 Rcpp RcppCCTZ RcppDate zoo]; };
+  nanotime = derive2 { name="nanotime"; version="0.3.6"; sha256="1pv8hlw76n7qqrmw9lirjgg0zlp7ffy367ndca3sra8wn5f1lxfz"; depends=[bit64 Rcpp RcppCCTZ RcppDate zoo]; };
   naptime = derive2 { name="naptime"; version="1.3.0"; sha256="1cadfv5sdsmz61kf96hf2gbnghf24q40g5c3h9b8prvkxslap691"; depends=[lubridate]; };
   nardl = derive2 { name="nardl"; version="0.1.6"; sha256="1vf8im4zs4j0v3k617aaskq9n2fg8sn3j5bllcbz2ircrpijr21m"; depends=[car Formula gtools MASS strucchange tseries]; };
   narray = derive2 { name="narray"; version="0.4.1.1"; sha256="1xyyn6v3khk5x759fr9h96z036hbb87fzfqgdpw907bc95gjnkz9"; depends=[progress stringr]; };
   nasadata = derive2 { name="nasadata"; version="0.9.0"; sha256="0y88qdy8c1y0prsajxic5vdqfixv9knjsbhw3vbfac8wv3a69bjl"; depends=[dplyr jsonlite plyr png]; };
-  nasapower = derive2 { name="nasapower"; version="4.0.4"; sha256="16cigpzfsw3w7hnq561w6243lhcpk1z4cr9plf7i9yyz09l8l4p5"; depends=[crul jsonlite lubridate readr tibble]; };
+  nasapower = derive2 { name="nasapower"; version="4.0.6"; sha256="0pz0v4waipd52saq92fws1xlh3fcal1q4dpcdspnp78n6z3nsxjc"; depends=[crul jsonlite lubridate readr tibble]; };
   nasaweather = derive2 { name="nasaweather"; version="0.1"; sha256="05pqrsf2vmkzc7l4jvvqbi8wf9f46854y73q2gilag62s85vm9xb"; depends=[]; };
   naspaclust = derive2 { name="naspaclust"; version="0.2.1"; sha256="1p4ilv2z5140h4kdix2w1v32vz1n8v33wq0fhc8n8mi7baknhd1i"; depends=[beepr rdist Rdpack stabledist]; };
   nat = derive2 { name="nat"; version="1.8.18"; sha256="0sbyd16109nbi20fk4fwjz0p9hva8pbn370a60wjwjgn9jd90b90"; depends=[digest filehash igraph nabor nat_utils plyr rgl yaml]; };
@@ -13126,17 +13170,18 @@ in with self; {
   naturaList = derive2 { name="naturaList"; version="0.4.2"; sha256="03a5gbp5hv93p6y9ribagzs5q94c5v54j20zmg306irnp8n58iqy"; depends=[dplyr fasterize htmltools leaflet leaflet_extras magrittr raster rlang sf shiny shinydashboard shinyWidgets sp stringr tidytext vegan]; };
   natural = derive2 { name="natural"; version="0.9.0"; sha256="0zxwbf3gg2h0bhl2w0md3rd162vlsgg0dv3187hc0ax7333cc4cx"; depends=[glmnet Matrix]; };
   naturalsort = derive2 { name="naturalsort"; version="0.1.3"; sha256="0mz801y9mzld9ypp3xmsjw2d8l9q97sdnv09wrci9xi3yg2sjf6d"; depends=[]; };
-  navigatr = derive2 { name="navigatr"; version="0.1.0"; sha256="1q421jflgjxasyzaa7dxpars8jzlprqsrzn9c6yfsh7bzngb95vz"; depends=[cli dplyr pillar purrr rlang tibble tidyselect vctrs]; };
+  navigatr = derive2 { name="navigatr"; version="0.1.1"; sha256="0yy3vj3r7lgi9k930nb8cnlrwcc0vg73szkdcmmsy8bj98d0gb3s"; depends=[cli dplyr pillar purrr rlang tidyselect vctrs]; };
   nawtilus = derive2 { name="nawtilus"; version="0.1.4"; sha256="1agqx9wiiypkpjrwahwlw5qkvqgkh01swyzc75csf9698x0779pm"; depends=[MASS]; };
   nbTransmission = derive2 { name="nbTransmission"; version="1.1.2"; sha256="0vaj2zfyvm2vm1ly1419ysxxrqkv73802n96ifajknh1pair31zk"; depends=[caret dplyr lubridate poisbinom rlang tidyr]; };
   nbapalettes = derive2 { name="nbapalettes"; version="0.1.0"; sha256="1wrh2qcm90fcybhcc8wvs2s4a4z8y3mrhc28dvrkwynqwzsbalzs"; depends=[dplyr]; };
   nbconvertR = derive2 { name="nbconvertR"; version="1.3.2"; sha256="0yhmz177r1miain65vspclahhz8cg7638ldbpsw8ylgf7a60l0sg"; depends=[]; };
   nberwp = derive2 { name="nberwp"; version="1.1.0"; sha256="0wy3n8p16l7x2hf35k3r7apxm72k38nmc407vh883jg5fci41ljn"; depends=[]; };
-  nbody = derive2 { name="nbody"; version="1.30"; sha256="1wmaxh5k0c1zwvjwabm9qs8vn94vvsx4h14as6sspblcgpva96v6"; depends=[magicaxis Rcpp]; };
+  nbfar = derive2 { name="nbfar"; version="0.1"; sha256="1gr9q83ff950x2lcyv9apsnjah4kpi8805mci9m0s3gvr7llpjq4"; depends=[glmnet magrittr MASS mpath Rcpp RcppArmadillo RcppParallel rrpack]; };
+  nbody = derive2 { name="nbody"; version="1.31"; sha256="0a5lqpbmb4gqb4mgp9hqc2fz92x9aaiqfqas1xxry7jvjngby30n"; depends=[magicaxis Rcpp]; };
   nbpMatching = derive2 { name="nbpMatching"; version="1.5.1"; sha256="0f90k9vq05gkc0sgywb98frig63df0ih4z41dq7m2inx1zk5rqns"; depends=[Hmisc MASS]; };
   nc = derive2 { name="nc"; version="2020.8.6"; sha256="19qsa5k38ajsbigccpch05m156n5wnd7c54j09fanjrpzy2048w2"; depends=[data_table]; };
   ncappc = derive2 { name="ncappc"; version="0.3.0"; sha256="0bf00iskrd3x43839bwn957mi3qvm2dhcmqa7hl1ib0gp2r1cnzx"; depends=[bookdown Cairo dplyr ggplot2 gridExtra gtable knitr lazyeval magrittr PopED purrr readr reshape2 rlang rmarkdown scales tibble tidyr xtable]; };
-  ncar = derive2 { name="ncar"; version="0.4.4"; sha256="1b37isgj7njpyh3js2kyl6vil9v8azh7n04m5yn4pcvyz02sqkx8"; depends=[NonCompart rtf]; };
+  ncar = derive2 { name="ncar"; version="0.4.5"; sha256="1ymxb3av7vd7vljr8h3ga6v01z6nf5j9mc095z0hi31d1khwrd02"; depends=[NonCompart rtf]; };
   ncbit = derive2 { name="ncbit"; version="2013.03.29"; sha256="0f07h8v68119rjvgm84b75j0j7dvcrl6dq62vp41adlm2hgjg024"; depends=[]; };
   ncdf4 = derive2 { name="ncdf4"; version="1.19"; sha256="0qzvin2fjzcb7h2knlnw14s6043pwi1nm7yf6p27ax7w269173fb"; depends=[]; };
   ncdf4_helpers = derive2 { name="ncdf4.helpers"; version="0.3-6"; sha256="0qnm41rbxb6v7aqh1mdkjhcc2rhs4wg6wmrllldzd99mzz8slv1r"; depends=[abind ncdf4 PCICt]; };
@@ -13151,9 +13196,11 @@ in with self; {
   ndjson = derive2 { name="ndjson"; version="0.8.0"; sha256="0lvzbgfi1sg4kya1mvv67z14qk3vz9q57x22qh57xq8ampdkg812"; depends=[data_table Rcpp tibble]; };
   ndl = derive2 { name="ndl"; version="0.2.18"; sha256="0b235v6jf98rrqp5aqw3jkk7mq8dbqmhb758zbzza1mavh4n2k7s"; depends=[Hmisc MASS Rcpp]; };
   ndtv = derive2 { name="ndtv"; version="0.13.2"; sha256="0symd0rwzk8kcq7f0flbw3pnyigybgsypjaaq5b5p1pjm1dz0c8j"; depends=[animation base64 jsonlite MASS network networkDynamic sna statnet_common]; };
+  ndvtest = derive2 { name="ndvtest"; version="1.0-0"; sha256="15jqh58n63g2vr919z10d5ryhvk7325bv4gmd2xgdpi76p2dbyg0"; depends=[CompQuadForm nonnest2 Rdpack sandwich]; };
   neariso = derive2 { name="neariso"; version="1.0.1"; sha256="1b2gnws75kkqsi8mg9n0zzdaawx57a6zz47cswabj5m6nb09ikh8"; depends=[]; };
   neat = derive2 { name="neat"; version="1.2.3"; sha256="0mdv47l50wzxnjfk1sway7gzpkyf57svqip16fqn0hrc1fsrifbn"; depends=[igraph]; };
   neatRanges = derive2 { name="neatRanges"; version="0.1.3"; sha256="1zfp6f1q7m0bks0shvzr120nd5jxba28xhi7vrd55qfy7g72167g"; depends=[data_table Rcpp]; };
+  neatStats = derive2 { name="neatStats"; version="1.10.1"; sha256="0miamjzk5sa0f76pgni2fx3sczd065axxc92dzphx66xczql98fw"; depends=[BayesFactor bayestestR car data_table Exact ez fBasics ggplot2 ggpubr logspline MBESS pROC viridis]; };
   neatmaps = derive2 { name="neatmaps"; version="2.1.0"; sha256="1kz1na3fzpd8vkxmpp5rz8ksyf8q2wk456csiii82winv9a2zxc9"; depends=[ConsensusClusterPlus dplyr ggplot2 heatmaply igraph]; };
   nebula = derive2 { name="nebula"; version="1.2.0"; sha256="1a4jsqxprp4pn7f5nxgha3jvjkcp7rdjlpcjwfc3f89530jhmnyv"; depends=[MASS Matrix nloptr Rcpp RcppEigen Rfast trust]; };
   needmining = derive2 { name="needmining"; version="0.1.1"; sha256="0qsj0ihjchrnl4s44rpsizbcz033z00dmzvic2y1msv0bnfawl6p"; depends=[randomForest rtweet SnowballC SparseM stringr tau tm]; };
@@ -13171,7 +13218,7 @@ in with self; {
   nephro = derive2 { name="nephro"; version="1.2"; sha256="1izmzx8lah322xzb42asfnrvr2c9yqd0zf7fmrhwd3p4rr1rqa7d"; depends=[]; };
   neptune = derive2 { name="neptune"; version="0.2.1"; sha256="1lnrhld77rq3s01fx4168a9ixmyxinpc32m0yyvzz5wk7bkx928s"; depends=[ggplot2 htmlwidgets plotly reticulate rstudioapi this_path]; };
   nesRdata = derive2 { name="nesRdata"; version="0.3.1"; sha256="1lxvg11g8nizfn8sghirq2749fs9i4w1wiaz3v1djqbkzqcqfrcj"; depends=[dataone dplyr purrr rappdirs readr]; };
-  nestfs = derive2 { name="nestfs"; version="1.0"; sha256="0lzbjj287s5kmw9635gfyl3jdgfh5mxbwxqxmnwynbwccixk0akc"; depends=[dgof pROC]; };
+  nestfs = derive2 { name="nestfs"; version="1.0.1"; sha256="1y10plfiyv5ws4xpmwgvm77kp07525zv02rza08xm8qhyq4f64zc"; depends=[dgof pROC]; };
   nestr = derive2 { name="nestr"; version="0.1.2"; sha256="0qgd1sl6x5y70r3l4vf0qqynlrkdyq7mmpb8mwjn7f1hjnym1gaj"; depends=[magrittr rlang tidyselect vctrs]; };
   net4pg = derive2 { name="net4pg"; version="0.1.0"; sha256="0aqagzrycgm6qnappbgi6pin10gnf9h3gj39wnncdsb2nf417ynr"; depends=[data_table graph magrittr Matrix]; };
   netClust = derive2 { name="netClust"; version="1.0.1"; sha256="1h58ispdx8ddsnqrrmcxn2rbqb0hb89gpjg4p14mr7vhxw5c9zva"; depends=[Rcpp RcppArmadillo]; };
@@ -13229,29 +13276,30 @@ in with self; {
   newsanchor = derive2 { name="newsanchor"; version="0.1.1"; sha256="1s8qhq9jk5gnsimnvy7kdayya0ks0ly309l7zxm5rafj5x7k5vwn"; depends=[askpass devtools httr jsonlite lubridate tidyr xml2]; };
   newscatcheR = derive2 { name="newscatcheR"; version="0.1.0"; sha256="0rm91dfzfjhi51gk65gvq2z7aywg6y8ay3hrjnp6frlmyvh661sp"; depends=[tidyRSS]; };
   newsmap = derive2 { name="newsmap"; version="0.7.4"; sha256="1k7jbfz3hrpy8z3zfn0gcm9fzmfiaf3qkx1m89c5q072zpdpiajn"; depends=[Matrix quanteda quanteda_textstats stringi]; };
-  newsmd = derive2 { name="newsmd"; version="0.3.1"; sha256="0xgrxz0ppvja4avff2l4kjnbw90ynbrziih0iqfjsvnvy92msalg"; depends=[R6]; };
+  newsmd = derive2 { name="newsmd"; version="0.4.0"; sha256="1pzsblkvs374nc6795llm9lbqj5z410g1mgr3q4fgpm0398zmsrv"; depends=[R6]; };
   nfer = derive2 { name="nfer"; version="1.0.1"; sha256="1dbvadpfgwanfdc9kvm620r5nj7l9kvbbhfcg80z5jbdn38jgh3r"; depends=[]; };
   nfl4th = derive2 { name="nfl4th"; version="1.0.1"; sha256="11hk9446ckhg46dzkbvd12n6k02m6qx265spwqdm23xpncamjlkk"; depends=[dplyr glue httr janitor jsonlite magrittr mgcv nflfastR nflreadr purrr stringr tibble tidyr tidyselect xgboost]; };
   nflfastR = derive2 { name="nflfastR"; version="4.3.0"; sha256="1vg27m51q01m6rypaksr5dw7qg3i638dypm31v5gimbdkjmgs2j7"; depends=[cli curl dplyr fastrmodels furrr future glue janitor lifecycle mgcv nflreadr progressr rlang stringr tibble tidyr tidyselect xgboost]; };
   nflplotR = derive2 { name="nflplotR"; version="1.0.0"; sha256="0jcj3jv7qsjn7nxs9rycqc039rcx69nznfv2adg4xv4ybw0s1q6s"; depends=[cli ggplot2 magick magrittr nflreadr rlang scales]; };
   nflreadr = derive2 { name="nflreadr"; version="1.1.3"; sha256="1wif90lngvpzj36s7r1frchi50qksbsjscy156n740x2f3by9zjx"; depends=[cachem cli curl data_table glue memoise qs rappdirs Rcpp RcppParallel rlang]; };
   nflseedR = derive2 { name="nflseedR"; version="1.0.2"; sha256="061jd3mr06mxs5riwlph3a1hsk5jypws71jy9jzhhqnijdy96bki"; depends=[cli crayon curl dplyr furrr future glue gsubfn magrittr progressr purrr readr rlang tibble tidyr]; };
-  nflverse = derive2 { name="nflverse"; version="1.0.0"; sha256="0z2q49bm9fi3nwip7iyrgkyw8ppm3fhn1kxm1rryzn615050gj0q"; depends=[cli crayon magrittr nfl4th nflfastR nflplotR nflreadr nflseedR rlang rstudioapi]; };
+  nflverse = derive2 { name="nflverse"; version="1.0.1"; sha256="1miacjvfl3968m54d6b5qgs7y3w6qw49nw96qxdwb2175gwhbl51"; depends=[cli crayon magrittr nfl4th nflfastR nflplotR nflreadr nflseedR rlang rstudioapi]; };
   nftbart = derive2 { name="nftbart"; version="1.2"; sha256="18yca2qg6d2960yvnplf70a7kd61qhmp42rd3alhg901a8py6qk5"; depends=[nnet Rcpp survival]; };
+  ngboostForecast = derive2 { name="ngboostForecast"; version="0.0.2"; sha256="1jh3acr2asc8ih7kv05z4n7ialvvbkg61w01n9avvvgjw9ifsf4x"; depends=[dplyr forecast magrittr R6 reticulate]; };
   ngram = derive2 { name="ngram"; version="3.2.0"; sha256="1g57md4s73qpxzqxr8sgzvbkx3y4zmw4hfq6zsysnw4h2dbqxm1l"; depends=[]; };
   ngramr = derive2 { name="ngramr"; version="1.7.5"; sha256="1zs6ninvhz6lavxnp59105wy0n0j839ps6yaaz21s42xk11lfp1k"; depends=[cli dplyr ggplot2 httr lifecycle RCurl rjson rlang scales stringr textutils tibble tidyr xml2]; };
   ngramrr = derive2 { name="ngramrr"; version="0.2.0"; sha256="1p8s4p3h27g647rxx9qjfad5dzbngjbmvhw4gz0jbsmfqrsf72by"; depends=[tau tm]; };
   ngspatial = derive2 { name="ngspatial"; version="1.2-2"; sha256="09hdvmbna4m62zv18k5kj9718wzw7p43wnal2j6aa0m5sd2rx9rz"; depends=[batchmeans Rcpp RcppArmadillo]; };
   nhanesA = derive2 { name="nhanesA"; version="0.6.5.3"; sha256="00sfbzh7r2lvc19prjm3zfgs62j6frh5rw6jvb25z8wzrhw52z3f"; depends=[Hmisc magrittr plyr rvest stringr xml2]; };
   nhdR = derive2 { name="nhdR"; version="0.5.7"; sha256="1nvnfkp60y317cgqpyxz6hbkqhm3xaicdicjljmb9hhqm04hbjp5"; depends=[curl dplyr foreign ggplot2 httr maps memoise purrr rappdirs rgdal rlang rvest sf stringr units xml2]; };
-  nhdplusTools = derive2 { name="nhdplusTools"; version="0.4.3"; sha256="01462pmvmy8j3p5l9qdd6xdn1jv7gi9m1vn9mbcn0gmdkll888vd"; depends=[dataRetrieval dplyr fst httr igraph jsonlite magrittr pbapply prettymapr R_utils RANN rosm sf tidyr units xml2 zip]; };
+  nhdplusTools = derive2 { name="nhdplusTools"; version="0.5.1"; sha256="0f0vph1931cdkh9kx4d4nm7nmj9rav99wlcd1l8684mb8l9p9z7c"; depends=[dataRetrieval dplyr fst httr jsonlite magrittr pbapply prettymapr R_utils RANN rosm sf tidyr units xml2 zip]; };
   nhlapi = derive2 { name="nhlapi"; version="0.1.4"; sha256="1c5s7fd9agzk20xi8v38dk8ih6lmn8c90mxncyr996bhipgr7vl3"; depends=[jsonlite]; };
   nhlscrape = derive2 { name="nhlscrape"; version="0.1.3"; sha256="0x6y747j6lha3jw4v2wavgd12xw5nx4m8biv9rmq9z0qy53vncjc"; depends=[DBI httr jsonlite RSQLite rvest xml2]; };
   nhm = derive2 { name="nhm"; version="0.1.0"; sha256="1yf9hnbmfb7xj8mbhnq40wvd0pd88x9qspy1jr3x0n8nb75i3jlp"; depends=[deSolve maxLik mvtnorm]; };
   nhs_predict = derive2 { name="nhs.predict"; version="1.4.0"; sha256="0lgyi1v940pjqfpwligw5ml6vagiz8wwsxbr9kfd1j70b5i0kjwd"; depends=[]; };
   nhsnumber = derive2 { name="nhsnumber"; version="0.1.2"; sha256="10vm3591gjr13ggnagjkh0v2915yl05mwyphpckimmrrbc3zsdip"; depends=[]; };
   nhstplot = derive2 { name="nhstplot"; version="1.1.0"; sha256="1yk7q731a4y9mhngdsb8xdw2id6m1q78329ja19hdpi6nnd7nhgn"; depends=[ggplot2]; };
-  niaidMI = derive2 { name="niaidMI"; version="1.0.0"; sha256="0n7hhvcbnhzfvj3whvqd66bh4sbl70278qms9q8bzss6d0w2wp1k"; depends=[Rcpp]; };
+  niaidMI = derive2 { name="niaidMI"; version="1.1.0"; sha256="0cg349qdlbixdyfzs5ahaf218a8gcpb2rvm0xaabsq9ray9gmq1a"; depends=[Rcpp]; };
   nic = derive2 { name="nic"; version="0.0.1"; sha256="0nr84a0vvl682ahp9xq50y6mk5dsircgz4l2rqp0jgv2h7fkd0n2"; depends=[]; };
   nice = derive2 { name="nice"; version="0.4-1"; sha256="1p8vmimiq9sbjvbx6c2wqwwkpnzw4kkdvjry6qyadmm3frwhj5qb"; depends=[]; };
   nicheROVER = derive2 { name="nicheROVER"; version="1.1.0"; sha256="0chg2bnz929mq17qylf3f57g6bg4ih6w20019yh7vkz7mwjnvi3p"; depends=[]; };
@@ -13260,7 +13308,7 @@ in with self; {
   nightmares = derive2 { name="nightmares"; version="0.0.2"; sha256="1dmqrb17ncwazy1nb0zzfy7fq51ah7rz0xmhmmx6d30paaix2vc7"; depends=[raster rgdal sp]; };
   nilde = derive2 { name="nilde"; version="1.1-6"; sha256="0ibml22frqmk4llzymvd4h1p2qnn46x5l0z4111m8h12czr1d9hw"; depends=[]; };
   nima = derive2 { name="nima"; version="0.6.2"; sha256="0n8r8h1m0v0ssbpv6p32jby49f45qbicwr0awm7x054p48qk49cy"; depends=[assertthat dplyr ggplot2 ggthemes gridExtra gtools scales]; };
-  nimble = derive2 { name="nimble"; version="0.12.1"; sha256="1n37g22wj5zlvb8lgxh9gi7mk011lyrmg3kaibhcpj2858hz681m"; depends=[coda igraph R6]; };
+  nimble = derive2 { name="nimble"; version="0.12.2"; sha256="06qs22q0l1iv82q5q48f5hpn0jxy8pds378k9cxhnzws2nms7xra"; depends=[coda igraph R6]; };
   nimbleAPT = derive2 { name="nimbleAPT"; version="1.0.4"; sha256="0615fm6sa6nf607ay98r81m0pp8yvydpwzn3972imf87irps2k3l"; depends=[nimble]; };
   nimbleCarbon = derive2 { name="nimbleCarbon"; version="0.1.2"; sha256="1cj1yik4knxniag12qr8hqxkqhcm5lhq8xw7g8iibv3rxq0jvkki"; depends=[coda doSNOW foreach nimble rcarbon snow]; };
   nimbleEcology = derive2 { name="nimbleEcology"; version="0.4.1"; sha256="1z4byxsana1fa2y7qhmiqbb8ana6zbas0cmbgcc703mqh1642jb2"; depends=[nimble]; };
@@ -13290,7 +13338,7 @@ in with self; {
   nlnet = derive2 { name="nlnet"; version="1.4"; sha256="13lv4b6chsjrhimny3wc1y9ljgbxmm1byj4j04n4vj8icn87gyfd"; depends=[coin e1071 earth fdrtool igraph randomForest ROCR TSP]; };
   nloptr = derive2 { name="nloptr"; version="2.0.0"; sha256="16k124ll14p3ygny6i1zd7yza83bv2sk87x922n1bfn9rx4k3jk5"; depends=[testthat]; };
   nlpred = derive2 { name="nlpred"; version="1.0.1"; sha256="05jna8hzd5v36a0dwag6zr8ms1pkryas3qarwb946bkxlslffp27"; depends=[assertthat bde cvAUC data_table np Rdpack ROCR SuperLearner]; };
-  nlraa = derive2 { name="nlraa"; version="0.98"; sha256="1vihk6k8582iwwn2gzpbs1amg8wbvpiar4diljvjx75172lc1s0h"; depends=[boot knitr MASS Matrix mgcv nlme]; };
+  nlraa = derive2 { name="nlraa"; version="1.2"; sha256="1h4hhjxys3sgk3cvhjcmfpxaqmkcmvsr5an6rgqqbg0zwgqizl1s"; depends=[boot knitr MASS Matrix mgcv nlme]; };
   nlreg = derive2 { name="nlreg"; version="1.2-2.2"; sha256="0gkcxg5m287axhvkl00xy26vidawhhb1ii1s13rh49v0yccwvvqh"; depends=[statmod survival]; };
   nlrr = derive2 { name="nlrr"; version="0.1"; sha256="09wm8s5sadkhkq9pb3fjk66cb2xn8py46w1d7yp7fjhczh31bjsq"; depends=[Hmisc rms]; };
   nlrx = derive2 { name="nlrx"; version="0.4.3"; sha256="1w788fs9zkcbg99csiynd6cw9p8na2g5sg85065d17l6wxmxk7va"; depends=[crayon dplyr EasyABC furrr genalg GenSA igraph lhs magrittr progressr purrr raster readr rstudioapi sensitivity sf stringr tibble tidyr XML]; };
@@ -13349,8 +13397,8 @@ in with self; {
   nombre = derive2 { name="nombre"; version="0.4.0"; sha256="0bc66vc8xxg8q2x7nh4si04qgb2gxzl61jf4k10vc6v8dsglk77k"; depends=[fracture]; };
   nomclust = derive2 { name="nomclust"; version="2.5.0"; sha256="17vqxbx5bpja2fxp83w0sbgbs61b2vaak9zzvvxkicxqwk09ix2v"; depends=[cluster Rcpp]; };
   nominatimlite = derive2 { name="nominatimlite"; version="0.1.5"; sha256="0x3vaidx7w5v0713ddsj3dgczf788dpq7irjl63ihslvd4ncr6ba"; depends=[dplyr jsonlite rlang sf tibble]; };
-  nomisr = derive2 { name="nomisr"; version="0.4.5"; sha256="15wfvklrc5ffv21n08qq9a4031qhm97vgbv7cvv662pndg853gj8"; depends=[dplyr httr jsonlite rlang rsdmx snakecase tibble]; };
-  nomnoml = derive2 { name="nomnoml"; version="0.2.3"; sha256="08zraip0v4jc51zv2zsvka6k8d1ry2ac9d70xpavfggbgmrmz987"; depends=[htmlwidgets lifecycle png rlang webshot]; };
+  nomisr = derive2 { name="nomisr"; version="0.4.6"; sha256="1d1qyx7iv22d1n274yz11wj0cpm3xycs330s2m7ri4cjhnw8wwjn"; depends=[dplyr httr jsonlite rlang rsdmx snakecase tibble]; };
+  nomnoml = derive2 { name="nomnoml"; version="0.2.5"; sha256="1c1pv3c1s6cdc75malnhy69cc9za3hmikd46d35x1n2ww54lmldc"; depends=[htmlwidgets lifecycle png rlang webshot]; };
   nomogramEx = derive2 { name="nomogramEx"; version="3.0"; sha256="16235rwblnzn8k53817llwy2pzhnpifh6ij159nxymjm8ar9qpbp"; depends=[pracma rms]; };
   nomogramFormula = derive2 { name="nomogramFormula"; version="1.2.0.0"; sha256="1j6g5kndl0n2g8acwq8pn09sk0bjcsphbcd77ha1j5dnwdmy73c0"; depends=[do Hmisc rms]; };
   nomordR = derive2 { name="nomordR"; version="0.1"; sha256="02d5gk5pd4vpd61ys9x81maxjrmbshx1wdv6xxsvafrnz7a7pmks"; depends=[]; };
@@ -13366,8 +13414,6 @@ in with self; {
   nonpar = derive2 { name="nonpar"; version="1.0.2"; sha256="0gflldd3kjbpdlvbwi073igj6shcqr9g5x6zcp5gfa12404qpflq"; depends=[]; };
   nonparaeff = derive2 { name="nonparaeff"; version="0.5-8"; sha256="1kkn68m7cqlzx3v539cjxw3x5a2y86lvmyv2k98s87m3yvqg0gdk"; depends=[gdata geometry Hmisc lpSolve psych pwt rms]; };
   nonparametric_bayes = derive2 { name="nonparametric.bayes"; version="0.0.1"; sha256="1acrjh0fcr15b9k2hpg0ihfav0w2lzjdpjyayz3f4hx596j32vi8"; depends=[mvtnorm progress]; };
-  nontarget = derive2 { name="nontarget"; version="1.9"; sha256="0ndqcr73sja5ks5kdahhakpz9lw3rp26imklagdv4f5agqnb608s"; depends=[enviPat mgcv nontargetData]; };
-  nontargetData = derive2 { name="nontargetData"; version="1.1"; sha256="07cdbpmn64sg4jfhljdcx503d55azyz58x7nkji044z3jmdryzqw"; depends=[]; };
   nopaco = derive2 { name="nopaco"; version="1.0.6"; sha256="0q705b7bjzq0b6vfp6yargybc8h07adx8al1ip7pxkmfcpilj66v"; depends=[Matrix]; };
   nopp = derive2 { name="nopp"; version="1.1.0"; sha256="1zn3ss89i7fwqps6b8syd9jzm68k95p3fdlf285q819dzlk61ypk"; depends=[MASS mlogit]; };
   nor1mix = derive2 { name="nor1mix"; version="1.3-0"; sha256="1817wcvlmxs70vs4db0jkxd7i037744zz8ay3c2a9949z29fxr4w"; depends=[]; };
@@ -13386,6 +13432,7 @@ in with self; {
   nos = derive2 { name="nos"; version="1.1.0"; sha256="0hbncama8cx8q0rc56bil38fbj33z49v4d6zdkvxs6wgmmglnrfs"; depends=[dplyr gmp]; };
   nose = derive2 { name="nose"; version="1.0"; sha256="17l78vmfqc22inq6zaqpnk2m91wp0nfjbbwfcpfqykf8lk9ipqna"; depends=[]; };
   nosoi = derive2 { name="nosoi"; version="1.1.0"; sha256="1b7csrgax5ig9ibiwbhh2cl357hvdc6my4408vld498c8jjf0lyw"; depends=[data_table raster]; };
+  not = derive2 { name="not"; version="1.3"; sha256="0ks1xpr5r0b7v77pyr9fnk7gkznrk95fsdicww8wv4mv3jplvh1h"; depends=[]; };
   notifyR = derive2 { name="notifyR"; version="1.02"; sha256="0jx76ic5r1crcgg0n0yqnka0gwniflfxakh838a98j9wb11wi6h5"; depends=[RCurl rjson]; };
   notifyme = derive2 { name="notifyme"; version="0.3.0"; sha256="0b6xrv6c4id7rs0dafg96pl4brn4yma5xh9wjz78ql44bg3w5s91"; depends=[dplyr httr magrittr]; };
   novelforestSG = derive2 { name="novelforestSG"; version="1.2.1"; sha256="17gn4qc5f3n0gdmm0r1zlg6jlzd3n5d8a3fx6fynxnj8ncq604i7"; depends=[]; };
@@ -13398,7 +13445,7 @@ in with self; {
   npROCRegression = derive2 { name="npROCRegression"; version="1.0-6"; sha256="122sy722wbslmd0yq5gc9zs87ng45zlwcsfvl962czk3yncrn1bv"; depends=[lattice]; };
   nparACT = derive2 { name="nparACT"; version="0.8"; sha256="0zwhz52j526n3xd21s7kghjaby56a8g296bkkc6scaa23zn1xg4b"; depends=[ggplot2 stringr zoo]; };
   nparLD = derive2 { name="nparLD"; version="2.1"; sha256="1asq00lv1rz3rkz1gqpi7f83p5vhzfib3m7ka1ywpf2wfbfng27n"; depends=[MASS]; };
-  nparMD = derive2 { name="nparMD"; version="0.1.0"; sha256="0kxbcykc01b1c68hk3akfhs9xzmshxvjvhm69k4j1c4nvpz8y9z9"; depends=[Formula gtools MASS matrixcalc matrixStats]; };
+  nparMD = derive2 { name="nparMD"; version="0.2.1"; sha256="0wfmw1d4w8frbimq62749siy28bzci3h3lhsl5jx7zl7mxpl0q9a"; depends=[Formula gtools MASS matrixcalc matrixStats]; };
   nparcomp = derive2 { name="nparcomp"; version="3.0"; sha256="1cs1idaylxdajb9vwpp6rkk56178i4c9nd0rxj8jbmdr56w4nrgq"; depends=[multcomp mvtnorm]; };
   nparsurv = derive2 { name="nparsurv"; version="0.1.0"; sha256="1qy9qkkpqrk49vjxbyvl25i4kfk0py6v64izd8lmaw38dynybpy2"; depends=[survival TH_data]; };
   npbr = derive2 { name="npbr"; version="1.6"; sha256="1jvq4snwrwjhhjgm8n8yxd5y94ks5zzi0xwdn931yp300qnikyzc"; depends=[Benchmarking np quadprog Rglpk]; };
@@ -13420,7 +13467,7 @@ in with self; {
   nppbib = derive2 { name="nppbib"; version="1.2-0"; sha256="1nn6wf89jhr3gy4rcd6px0cd5b1bsr7pbaxng4adba8n3yrss7vs"; depends=[]; };
   npphen = derive2 { name="npphen"; version="1.1.1"; sha256="0xfsi6y4233gwslrh86chfpc71fdp5pfh4v9c9qcjqaib9hxvixn"; depends=[ks lubridate raster rgdal snow]; };
   nprcgenekeepr = derive2 { name="nprcgenekeepr"; version="1.0.5"; sha256="1j6pfc694yf1m42a0fhlbh5wdbmgs61fswbw7083h69d2sr2zq05"; depends=[anytime futile_logger htmlTable lubridate Matrix plotrix readxl Rlabkey rlang shiny stringi WriteXLS]; };
-  npreg = derive2 { name="npreg"; version="1.0-6"; sha256="0a28hj4a8j46zyh483y4b5abwy18yl648rf99nj8a2blhdmipyla"; depends=[]; };
+  npreg = derive2 { name="npreg"; version="1.0-7"; sha256="1gr3nbzwa88favbfg9s3053s0jybblfbmhllfjc1a6p32s2p3yax"; depends=[]; };
   npregderiv = derive2 { name="npregderiv"; version="1.0"; sha256="1k873cs3rs15l13z8017n4anacandx7di6yk1zlamcc5p3vlh59n"; depends=[]; };
   npregfast = derive2 { name="npregfast"; version="1.5.1"; sha256="0s9ci3nybzwykrgi9z2rqp6l15mqbxf759ks0clvkbm7wxv3whk5"; depends=[doParallel foreach ggplot2 mgcv sfsmisc shiny shinyjs wesanderson]; };
   nprobust = derive2 { name="nprobust"; version="0.4.0"; sha256="1vry64r3xms6xls6bqq918prjyhs5svhl2yjvq0jxycaaqw2sgyp"; depends=[ggplot2 Rcpp RcppArmadillo]; };
@@ -13452,7 +13499,7 @@ in with self; {
   nspmix = derive2 { name="nspmix"; version="1.5-0"; sha256="1jaaw5ibn614yhlid0csnzj31npdx5zivm2nhnvyghzcmvyxavr8"; depends=[lsei]; };
   nsprcomp = derive2 { name="nsprcomp"; version="0.5.1-2"; sha256="1zlc1ximx96f235c0l8qfs6vbp1kpnbf943wxsfahnnlnxvwi59f"; depends=[]; };
   nsrr = derive2 { name="nsrr"; version="0.2.0"; sha256="1x1c7pvyfvzmaymxcz6ghr5002wz48796c3hsihwbx6951w623sq"; depends=[digest httr jsonlite]; };
-  nsyllable = derive2 { name="nsyllable"; version="1.0"; sha256="004qb43j8ygr9ay63b38w0fwm24bhlzd206sxg88hh5ia69fw8ms"; depends=[]; };
+  nsyllable = derive2 { name="nsyllable"; version="1.0.1"; sha256="1rxzfivg5pkx8485l4bxxrdnvik31g5jps5l386x0w7mfs6498jg"; depends=[]; };
   nucim = derive2 { name="nucim"; version="1.0.11"; sha256="12qfs4xd8lnkjhb0gkvxym07rndrwh5idvppj16v78amrk96rj5z"; depends=[bioimagetools EBImage fields stringr]; };
   nullabor = derive2 { name="nullabor"; version="0.3.9"; sha256="19nfmsnzndg9pdjg7m9w4vm4c3209ny52cpjdhmmhggvf7dxaiyg"; depends=[dplyr forecast fpc ggplot2 magrittr MASS moments purrr rlang tibble tidyr tsibble viridis]; };
   numDeriv = derive2 { name="numDeriv"; version="2016.8-1.1"; sha256="0idk02pqkziik932bd8k72d1q775g1is3m4bc861pcxfz6gx3i6q"; depends=[]; };
@@ -13463,6 +13510,7 @@ in with self; {
   numbersBR = derive2 { name="numbersBR"; version="0.0.2"; sha256="0ihxlny745gpz1ngq862rydn1zwn8zni1xw9mmgw8hkylsrnjfq8"; depends=[stringr]; };
   numform = derive2 { name="numform"; version="0.7.0"; sha256="0n96jm141h4awazr8sads9d99faw8kdy3vbhmjr58d8iqf7793f8"; depends=[glue]; };
   nutriNetwork = derive2 { name="nutriNetwork"; version="0.1.1"; sha256="0ya95h88jkiwc7cg7ic8bmyd7b0lgnhxrywwqvi2j6m6nbvvaxzy"; depends=[glasso huge igraph Matrix tmvtnorm]; };
+  nutrientr = derive2 { name="nutrientr"; version="0.1"; sha256="09623rimvy0jd6i26bm8d80jhvgwril9r2vbnlcwznmqr4fr6fhm"; depends=[dplyr ggplot2 httr jsonlite qpdf stringr testthat tibble tidyr tidyselect]; };
   nvctr = derive2 { name="nvctr"; version="0.1.4"; sha256="1r7q9snr9ya1586fwbyvnk8rlb9yikl4yp3bn9kni0sw820npk1d"; depends=[magrittr pracma]; };
   nvmix = derive2 { name="nvmix"; version="0.0-8"; sha256="0vm10zjk69qmwii7qsgwwi6vp7mak2vxbm051ww6vzk0zfbhmvrf"; depends=[ADGofTest copula Matrix mnormt pcaPP pracma qrng]; };
   nycflights13 = derive2 { name="nycflights13"; version="1.0.2"; sha256="07aa76c77pm1wpzkwjmzv8n6ir5i6fxawx8wx586gwc5wajcb1qf"; depends=[tibble]; };
@@ -13471,7 +13519,7 @@ in with self; {
   nzilbb_labbcat = derive2 { name="nzilbb.labbcat"; version="1.0-1"; sha256="0lypdwyvihza88jnccvh4wapfivsjy9sgxj4hvai52bkrw92578d"; depends=[httr jsonlite rstudioapi stringr]; };
   nzpullover = derive2 { name="nzpullover"; version="0.3.0"; sha256="0b3mz5i58m48fa1x7gv4l3gqj0gvrar201ph2l1gkbcnfmazwjp8"; depends=[]; };
   o2geosocial = derive2 { name="o2geosocial"; version="1.1.0"; sha256="158nbc45h4k677lgx9n976d9kz7hy8fb7z5s2v6pmkmh521jdn2a"; depends=[data_table geosphere ggplot2 outbreaker2 Rcpp visNetwork]; };
-  o2plsda = derive2 { name="o2plsda"; version="0.0.14"; sha256="17b31kp6hvl7z0faklbhns9k7p016jnw2cwb3q2k8kp05j7kds5z"; depends=[dplyr ggplot2 ggrepel magrittr Rcpp RcppArmadillo]; };
+  o2plsda = derive2 { name="o2plsda"; version="0.0.15"; sha256="0ngnj0r14w5zjiv3y4a3ijgr3jb1kvvlifnzk25m5zidz36lyjap"; depends=[dplyr ggplot2 ggrepel magrittr Rcpp RcppArmadillo]; };
   oRus = derive2 { name="oRus"; version="1.0.0"; sha256="0q6hgiidcpm95pyisndihxjg78v6k1zycdqd72309aankdk0g5h4"; depends=[dplyr knitr rmarkdown stringr tibble tidytext tm topicmodels xlsx]; };
   oaColors = derive2 { name="oaColors"; version="0.0.4"; sha256="040sdqrk9dciylnnrrshlj06s9qhvngii9shx1p8412ip7mk8r1m"; depends=[MASS RColorBrewer]; };
   oaPlots = derive2 { name="oaPlots"; version="0.0.25"; sha256="0c5ig1ar02vg38pjjmp3gd53ij1j7pzajs0zrlfajz141qkv2ysr"; depends=[ggplot2 oaColors]; };
@@ -13489,10 +13537,11 @@ in with self; {
   obsSens = derive2 { name="obsSens"; version="1.3"; sha256="1vfm1mzsycwkqa39vf3fcdv1s6adps9hw1rxlvl8v9kq746hcabw"; depends=[]; };
   observer = derive2 { name="observer"; version="0.1.2"; sha256="1027827k57qb4xppx0xxxffd1s3n7pz754irdx3v1v3piix8xi8m"; depends=[bazar bit dplyr lazyeval magrittr tibble]; };
   occ = derive2 { name="occ"; version="1.1"; sha256="1aka29qqwbd494kvi15yyyqkb9hks4ky2gcvykxhx2drm2fnsn4g"; depends=[]; };
+  occCite = derive2 { name="occCite"; version="0.5.2"; sha256="0v0zjnjxd2swj5m1vaclajfrf9jgqyvpnfkzzcg7hjl6f870b368"; depends=[bib2df BIEN curl DBI dplyr ggplot2 htmltools httr leaflet lubridate RColorBrewer rgbif rlang RPostgreSQL stringr taxize tidyr viridis waffle]; };
   occupancy = derive2 { name="occupancy"; version="1.2"; sha256="0j50vg1405n1hp72xqsq1hp3gdbfx5yq9w1zdv6dzjc6vjhbx00d"; depends=[matrixStats]; };
   ocd = derive2 { name="ocd"; version="1.1"; sha256="06pyc352pvn85k76z9797gwk0ksbb3snvh6krysp68k3lcygq872"; depends=[]; };
-  oce = derive2 { name="oce"; version="1.5-0"; sha256="0iw171is4jjdb5kaq0a10anspq8an4bn76x1mp6l33qk2xml8phs"; depends=[gsw Rcpp]; };
-  oceanic = derive2 { name="oceanic"; version="0.1.1"; sha256="0rnvr2jq27rq109nnddz0fylsrkzx26lgay8ipsmwp54c00glmmx"; depends=[rgdal sf sp]; };
+  oce = derive2 { name="oce"; version="1.6-1"; sha256="1w0pbhki3z9qwaq6qgq3l4wr77yhs6xpd5fxpckw9ciwbj62v4ci"; depends=[gsw Rcpp]; };
+  oceanic = derive2 { name="oceanic"; version="0.1.2"; sha256="15pnq3sf1h75np3xjvi3yap76z4jcpj1djm6i6cn16dbdx5p9cv3"; depends=[broom ggplot2 maps rgdal rgeos sf sp spData]; };
   oceanis = derive2 { name="oceanis"; version="1.8.4"; sha256="0m0mhab74wnd9hm0im47c14m5mzsrvs61d07vikd8f1sly36h943"; depends=[classInt dplyr DT ggplot2 leaflet leaflet_extras lwgeom mapview sf shiny shinyBS shinyjs shinythemes stringr zip]; };
   oceanmap = derive2 { name="oceanmap"; version="0.1.1"; sha256="06h4yxqcn3rjr3m2n82w128z110a4k5rg6msrbd0gcqksxc4vd2v"; depends=[abind extrafont fields lubridate mapdata maps maptools ncdf4 plotrix raster sp]; };
   oceanwaves = derive2 { name="oceanwaves"; version="0.2.0"; sha256="1v4gj4ippv1l3r77z2ic19x5zi5lpsh5wihaqay3264zhpb3kv9a"; depends=[bspec ggplot2 signal]; };
@@ -13512,16 +13561,17 @@ in with self; {
   odeintr = derive2 { name="odeintr"; version="1.7.1"; sha256="0wfb5lgv10p0qyfbn9hdg14bda37v43lpgbwv6nbw63zzbsbazqi"; depends=[BH Rcpp]; };
   odin = derive2 { name="odin"; version="1.2.1"; sha256="0xx31wyjdmad66ijwks64irf0j78hdjcifs5i8pla587xyv26ykk"; depends=[cinterpolate deSolve digest glue jsonlite R6 ring withr]; };
   odk = derive2 { name="odk"; version="1.5"; sha256="0fcnr4c1clwx1sk6fgg4cx506gdi90n2h05g0i47p4s5bra0qwwl"; depends=[gsheet openxlsx]; };
-  odpc = derive2 { name="odpc"; version="2.0.4"; sha256="1525apa5x4jqf8ijdc9xl60fgxsi5xsirhd35cmnc362sd7k2jjd"; depends=[doParallel foreach forecast MASS Rcpp RcppArmadillo]; };
+  odpc = derive2 { name="odpc"; version="2.0.5"; sha256="0cbkq8parb8br1j386xk5mgwz8gkmwvp79f9sjvzhs7z6wlbp0pv"; depends=[doParallel foreach forecast MASS Rcpp RcppArmadillo]; };
   odr = derive2 { name="odr"; version="1.2.1"; sha256="1k5qr5s28x14k831l92gx3zwfadq0q7nbnxj172hadhmggxfhkqc"; depends=[]; };
   oem = derive2 { name="oem"; version="2.0.10"; sha256="1nf9ja4l7b9gnnvv216dz9siy02432qgyg930vcrqq3l8g05r6zc"; depends=[BH bigmemory foreach Matrix Rcpp RcppArmadillo RcppEigen]; };
   oenb = derive2 { name="oenb"; version="0.0.2"; sha256="1jgxw7ycx2lcdzglg9nix8k08fs4r6i5jdsjzrd6w1dg6smsinl5"; depends=[dplyr XML]; };
   ofGEM = derive2 { name="ofGEM"; version="1.0"; sha256="0xdkl8k12an9pdy6i5nay4m2iakrwsp0lr3zl8gphii75j0ywz7k"; depends=[CompQuadForm forestplot MASS]; };
-  officedown = derive2 { name="officedown"; version="0.2.3"; sha256="1wz3312hq5ybichb0js7jiig7y0wb1nyd2lcsk1nlq70cqsgrv4w"; depends=[knitr memoise officer rlang rmarkdown rvg uuid xml2 yaml]; };
+  officedown = derive2 { name="officedown"; version="0.2.4"; sha256="0h2zd7dzg63chakxsdb9n1w3sz684p63r6g1fphh4jcdmsbs5z2n"; depends=[knitr memoise officer rlang rmarkdown rvg uuid xml2 yaml]; };
   officer = derive2 { name="officer"; version="0.4.1"; sha256="1gfx299zr4q2264q37994pirv5bd5isn1cszccz603ij3q40wajr"; depends=[R6 uuid xml2 zip]; };
   offlineChange = derive2 { name="offlineChange"; version="0.0.4"; sha256="005afrm4ki4zz3zkgrf8c1v9gf5cjhc5g50mjkqya3r8npaccwq2"; depends=[Rcpp]; };
   oglmx = derive2 { name="oglmx"; version="3.0.0.0"; sha256="13axmhbqhv4kkcdsdmp9r7p0d0kyqlsaqgyyllbkxlxb4hfz79b6"; depends=[maxLik]; };
   ohenery = derive2 { name="ohenery"; version="0.1.1"; sha256="0i7cc110c30y7dm86srh2xkikkmlr28mvy0kkjxywxmiwnrsmzjq"; depends=[dplyr magrittr maxLik Rcpp]; };
+  ohoegdm = derive2 { name="ohoegdm"; version="0.1.0"; sha256="1p1jica3fr4a5ilz1m2gxyzbapxjvgiw4v5rn90d5qgsmbp1hj42"; depends=[Rcpp RcppArmadillo]; };
   ohtadstats = derive2 { name="ohtadstats"; version="2.1.1"; sha256="0hkjs322vii1dsminlkwpwi12sc9pd88jag7p4dmy6nfw2hh2d69"; depends=[lattice]; };
   oii = derive2 { name="oii"; version="1.0.2.1"; sha256="1n41hikn53ikyynsravg127cw5csa8s0s1l63w5hym7c6j625ya5"; depends=[Deducer gmodels rapportools]; };
   ojsr = derive2 { name="ojsr"; version="0.1.2"; sha256="0nwdws9kqnya9qjc939b7ksrf7ri6d25zzcdxhyhabirhnrqdg7m"; depends=[dplyr magrittr purrr rlang rvest tidyr urltools xml2]; };
@@ -13533,6 +13583,7 @@ in with self; {
   omd = derive2 { name="omd"; version="1.0"; sha256="0s1wcgivqapbkzjammga8m12gqgw113729kzfzgn02nsfzmsxspv"; depends=[]; };
   omics = derive2 { name="omics"; version="0.1-5"; sha256="1y2x33mfgq98nglhvpr1wq1v6nfiq4njy2yac47x72rpwxsj9vb1"; depends=[lme4 pheatmap]; };
   omicwas = derive2 { name="omicwas"; version="0.8.0"; sha256="03l53vbsard0hpaffcaa9l1aa3nh3w16j00k2jz2jqrrg02z0d7h"; depends=[broom data_table dplyr ff glmnet magrittr MASS matrixStats purrr rlang tidyr]; };
+  omnibus = derive2 { name="omnibus"; version="1.1.2"; sha256="12fv9hlffxfs1b86gbq994yq4ha10yakrs8b44j11ncqjk1n16dk"; depends=[]; };
   omopr = derive2 { name="omopr"; version="0.2"; sha256="1ng94jnarj7pszxzvdlnrr2dbcvv5p5yrscjw6ihqkskpraw9f7w"; depends=[DBI dbplyr dplyr RSQLite]; };
   ompr = derive2 { name="ompr"; version="1.0.2"; sha256="0n68i5papc3nsx2zf6azxw1gz0x7zsj8q0hqmv73fk885l1awyd0"; depends=[data_table fastmap lazyeval listcomp Matrix rlang]; };
   ompr_roi = derive2 { name="ompr.roi"; version="1.0.0"; sha256="1nv6cpnhfxz55r0y27i7rk81v45wblqhb9gis14rqdiypb74paif"; depends=[Matrix ompr ROI slam]; };
@@ -13549,7 +13600,7 @@ in with self; {
   oneclust = derive2 { name="oneclust"; version="0.2.1"; sha256="04nafy0bv3g5vjd5k7858lvs9rc141kzpblsdcb7sl4kfw76s11z"; depends=[magrittr Rcpp]; };
   onehot = derive2 { name="onehot"; version="0.1.1"; sha256="1cdsz007wr054k5phvihhg4qx0fc039k2s6484m92kws8mb2ziix"; depends=[]; };
   onelogin = derive2 { name="onelogin"; version="0.2.0"; sha256="06p3a8kaxmvsj8nn7dy8w6wv1jjw67is991hqg9q0fa20ifym3dl"; depends=[glue jsonlite magrittr R6 safer tibble]; };
-  onemap = derive2 { name="onemap"; version="2.8.1"; sha256="0rc714ymwcgk05qcqzsispm8y8ip8h0y17fscgfyhwq2jh65a9sd"; depends=[dendextend dplyr ggplot2 ggpubr htmlwidgets plotly princurve RColorBrewer Rcpp rebus reshape2 smacof stringi tidyr vcfR]; };
+  onemap = derive2 { name="onemap"; version="2.8.2"; sha256="14p3p3bvcgl63fk8sivwgqdcm7cydyh106rz26zk30gcjgvn91rm"; depends=[dendextend dplyr ggplot2 ggpubr htmlwidgets plotly princurve RColorBrewer Rcpp rebus reshape2 smacof stringi tidyr vcfR]; };
   onemapsgapi = derive2 { name="onemapsgapi"; version="1.0.0"; sha256="11w3xkjxhjf0b78hfjxjk650giswaf1js471backz4pcb97gaigl"; depends=[dplyr furrr future httr purrr rlang stringr tidyr]; };
   onepass = derive2 { name="onepass"; version="0.1.2"; sha256="1r8wk00aqc0sc7l6mmy1k4hkijfikynysrx5vvahbd6mlcdb3bmp"; depends=[jsonlite]; };
   onewaytests = derive2 { name="onewaytests"; version="2.6"; sha256="05q2ir65x9pvsiim4l029hjhm12niiqjgk5rsx47i6vx23ffg8ir"; depends=[car ggplot2 moments nortest]; };
@@ -13572,8 +13623,9 @@ in with self; {
   oompaBase = derive2 { name="oompaBase"; version="3.2.9"; sha256="1cmw2s5dznmv675484jgvkzgvi6vhg0zbxsq6zhpqsisf672pjhl"; depends=[cluster]; };
   oompaData = derive2 { name="oompaData"; version="3.1.1"; sha256="0by9qfxlx6fdmp12qnphlli5hdn5balvx4ckg64fw6vwa291g7b0"; depends=[]; };
   ooplah = derive2 { name="ooplah"; version="0.2.0"; sha256="1p74jh9g62yicrw0lhpbn0diqi2myl24z28kpd2b3mglyffadr0b"; depends=[R6]; };
-  oops = derive2 { name="oops"; version="0.1.0"; sha256="06kyb01f09ah8aamyrazpyafbvs5vq32p16kbn12qi9zkwn0m9kk"; depends=[pryr]; };
+  oops = derive2 { name="oops"; version="0.2.0"; sha256="0xg69riqphvsqqa953v4mlcakvl0invf29678nrljibg31n4wak5"; depends=[]; };
   opGMMassessment = derive2 { name="opGMMassessment"; version="0.3"; sha256="1y6g65y6r3l0p7dbw70w8lbp4c888llwd7ak9wliwin0a54y13lz"; depends=[AdaptGauss caTools cluster ClusterR DataVisualizations DistributionOptimization doParallel dplyr foreach ggplot2 mclust mixAK mixtools multimode NbClust rlang]; };
+  opa = derive2 { name="opa"; version="0.2.0"; sha256="05jqqqrrzv6mmhk78zjyryjy5lh693ywg1rnaanmxzbjmwikinrs"; depends=[assertthat combinat ggplot2 Rcpp]; };
   opalr = derive2 { name="opalr"; version="3.0.2"; sha256="0nwa77l4d4zz3jxmfgm8h8k823lvcvjzbk3i6ahscrhzw2ky2phc"; depends=[httr jsonlite labelled mime progress]; };
   opdisDownsampling = derive2 { name="opdisDownsampling"; version="0.8.1"; sha256="18y2p13q9ib5siml00ycjq395saqpnn0wa0jf2936v48ji4kjjzp"; depends=[benchmarkme caTools doParallel foreach memuse pracma twosamples]; };
   openCR = derive2 { name="openCR"; version="2.2.2"; sha256="1w3lrlc4w60fv026sbvmdki2jvg45m8mlbidwyd749vm93i3w6cs"; depends=[abind BH MASS nlme plyr Rcpp RcppParallel secr stringr]; };
@@ -13586,17 +13638,18 @@ in with self; {
   openVA = derive2 { name="openVA"; version="1.0.13"; sha256="1hps67qlimhrjk3ymmr0jgqac8z6vilqgrchqp6z7vydqirfyp5l"; depends=[cli crayon ggplot2 InSilicoVA InterVA4 InterVA5 Tariff]; };
   openadds = derive2 { name="openadds"; version="0.2.0"; sha256="1jb8zd3rpxfkjkg895iab6m4cfi53p5vy3nnpjkgq7ym6499qjcv"; depends=[crul dplyr jsonlite maptools rappdirs readr tibble xml2]; };
   openair = derive2 { name="openair"; version="2.8-6"; sha256="1h3klcg6gjr6q2pgcd317zyw9rpj4ngmkii0azcvrkpmqpbdkzrp"; depends=[cluster dplyr hexbin lattice latticeExtra lubridate mapproj MASS mgcv purrr Rcpp readr rlang tidyr]; };
+  openbankeR = derive2 { name="openbankeR"; version="0.1.1"; sha256="04jh3nnp53dzbk96dcz0xi67jqmp66mzbj81cy8mhhd2rl5ry9cj"; depends=[dplyr glue httpcode httr jsonlite magrittr tidyr]; };
   openblender = derive2 { name="openblender"; version="0.5.81"; sha256="01akixxj04kgrxhv04icrivfpnipnpg9j62i3y19q3jkl9846lh1"; depends=[httr jsonlite]; };
   opencage = derive2 { name="opencage"; version="0.2.2"; sha256="1sjkpp6cj6ivd68p6ql6vwgdvy0fwfkjv84wgwgb4i7f4mnxgnff"; depends=[crul dplyr jsonlite lifecycle memoise progress purrr ratelimitr rlang tibble tidyr withr]; };
-  opencpu = derive2 { name="opencpu"; version="2.2.6"; sha256="0cmjfhkbk4im3x8aas0q5pivlsxgqixf4f3jiindchki7g9nsw91"; depends=[brew curl evaluate httpuv jsonlite knitr mime openssl protolite rappdirs remotes sys webutils zip]; };
+  opencpu = derive2 { name="opencpu"; version="2.2.7"; sha256="06jpmk95hm39ib5c75xw0mdrdv9x9zz1qil3m8ysb6pp1xx47jz0"; depends=[brew curl evaluate httpuv jsonlite knitr mime openssl protolite rappdirs remotes sys webutils zip]; };
   opencv = derive2 { name="opencv"; version="0.2.1"; sha256="1zb6qdvlgylzm9afq8ybcrn2w5wcym6zi4b36sycp4clbc7gncq5"; depends=[magrittr Rcpp]; };
   opendatatoronto = derive2 { name="opendatatoronto"; version="0.1.4"; sha256="0ggf25ry31xz69fl95cglg45ld8w7rc83wci609fmb63bhj8dzlg"; depends=[ckanr curl magrittr readxl sf tibble xml2]; };
   opendotaR = derive2 { name="opendotaR"; version="0.1.4"; sha256="17cygsw3nkg6zincfrcdh1509rlz3n5zrv9wvv7mjngm61sn79nf"; depends=[dplyr jsonlite lubridate]; };
   openeo = derive2 { name="openeo"; version="1.1.0"; sha256="1vdga91jiw2dxfvjwr12kip60m8pdcvsan3g9cn9hhhpxsgidw6q"; depends=[base64enc httr jsonlite lubridate R6]; };
-  openintro = derive2 { name="openintro"; version="2.2.0"; sha256="0jvgbb9az73sidr58lpz2p8gjigmi4873dpvzqbv7r8jzr1vqhvz"; depends=[airports cherryblossom ggplot2 readr rmarkdown tibble usdata]; };
+  openintro = derive2 { name="openintro"; version="2.3.0"; sha256="0iknd0sk28qwm09zcs1dqqwlq28ph00swp75rbp6sfl0ypcnm7m5"; depends=[airports cherryblossom ggplot2 readr rmarkdown tibble usdata]; };
   openmetrics = derive2 { name="openmetrics"; version="0.3.0"; sha256="0bcljsirlkxn0h87j2g2jb6spcik84h7nms06mcj40ckx188yr82"; depends=[R6]; };
-  openssl = derive2 { name="openssl"; version="1.4.6"; sha256="0na3yficxg0hjql9pvz96f66yh4g5k2hfwcricb705z7f2pk5f23"; depends=[askpass]; };
-  opentimsr = derive2 { name="opentimsr"; version="1.0.11"; sha256="0ad0kgy2byr228ljl0y6412zw3gy0kr17jyx7022bygpzv9d2158"; depends=[DBI Rcpp RSQLite]; };
+  openssl = derive2 { name="openssl"; version="2.0.0"; sha256="0jsnzxa72bfxsdai25xyklmmrraaf9yv2nmqmf0bgzrkbzkgsa7b"; depends=[askpass]; };
+  opentimsr = derive2 { name="opentimsr"; version="1.0.12"; sha256="1anxp7lk7dya68lqsy4fs5wf1baaridir1v1qwdlspc7wr0xb9yh"; depends=[DBI Rcpp RSQLite]; };
   opentraj = derive2 { name="opentraj"; version="1.0"; sha256="13nqal96199l8vkgmkvl542ksnappkscb6rbdmdapxyi977qrgxk"; depends=[doParallel foreach maptools openair plyr raster reshape rgdal sp]; };
   opentripplanner = derive2 { name="opentripplanner"; version="0.4.0"; sha256="1q0szrbgcjzc7ny08gilv2q0v1x81i626mzsahkii79qqb7capr1"; depends=[checkmate curl data_table geodist googlePolylines lubridate pbapply rjson sf sfheaders]; };
   openxlsx = derive2 { name="openxlsx"; version="4.2.5"; sha256="0695b265g7jwiqk5c3vmmfkvagx82bkpwhvqzhqaqmmn34l6vl35"; depends=[Rcpp stringi zip]; };
@@ -13609,7 +13662,6 @@ in with self; {
   optBiomarker = derive2 { name="optBiomarker"; version="1.0-28"; sha256="10i9ir0056qxyiayg10v6v25m1b94m1wd7c8ssigiqjhjncpddw5"; depends=[e1071 ipred MASS Matrix msm randomForest rgl rpanel]; };
   optCluster = derive2 { name="optCluster"; version="1.3.0"; sha256="0vzdd9awxli0zzyh2xb7j7wxza3fz5awyz6bjwf13qbjrrq43q2q"; depends=[cluster gplots kohonen MBCluster_Seq mclust RankAggreg]; };
   optR = derive2 { name="optR"; version="1.2.5"; sha256="0q7jf4m0gzm11izl5lff17pvr855smqmc6zzi1bc7m6h3z865l32"; depends=[]; };
-  optband = derive2 { name="optband"; version="0.2.1"; sha256="1rv4r7h7x3xipav917cz9bcr6nqjzbinfrqxv8mcls9gdl9ha3y9"; depends=[LambertW]; };
   optbdmaeAT = derive2 { name="optbdmaeAT"; version="1.0.1"; sha256="1y1mvcyjihpj1wgjmifhmd10717wr1srp7h87azs4gfypgsiqchn"; depends=[igraph MASS Matrix]; };
   optbin = derive2 { name="optbin"; version="1.1"; sha256="1v79qq1az8sg1slh9k3rqznw3dmppg0d0x7i2j5sz78b8gfq2m17"; depends=[]; };
   optedr = derive2 { name="optedr"; version="1.0.1"; sha256="0ywq5s3y30r0il2vsd99qgd8m7c1xsk59fgzz8zs5ips3xsjmnwg"; depends=[cli crayon dplyr DT ggplot2 hrbrthemes magrittr nleqslv orthopolynom plotly purrr rlang shiny shinyalert shinydashboard shinyjs]; };
@@ -13627,9 +13679,10 @@ in with self; {
   optimParallel = derive2 { name="optimParallel"; version="1.0-2"; sha256="178ayfaivkbxkghxbg97lx4gl27kxkmgaaw9y8q5206r4cncd6qg"; depends=[]; };
   optimStrat = derive2 { name="optimStrat"; version="2.3"; sha256="1jkwhgpw7nknd7h8c01z25x566bw2qb388i6g5nwcygxsshdgpri"; depends=[cubature mvtnorm shiny]; };
   optimalThreshold = derive2 { name="optimalThreshold"; version="1.0"; sha256="1m39q36p7i7z31b90awriq5jf9rfybyw5lj3m1w33v2ssipkzp1n"; depends=[ars coda HDInterval mgcv rjags]; };
+  optimall = derive2 { name="optimall"; version="0.1.1"; sha256="15cq4b50j39ahpx84g0wrg7gs9n36rx4ij2srm14zcjsmvnxbv9p"; depends=[dplyr glue magrittr rlang tibble]; };
   optimbase = derive2 { name="optimbase"; version="1.0-10"; sha256="0hdzbqr03jwy1vz3q9iw0kvii5p9g1vm4c3hs3jxszcj1rgrfm12"; depends=[Matrix]; };
   optimg = derive2 { name="optimg"; version="0.1.2"; sha256="0fc7d3g5nxjjcbwh6v5m0ryhanw80v250j8m7j2gv4c9ql4g650d"; depends=[ucminf]; };
-  optimization = derive2 { name="optimization"; version="1.0-8"; sha256="0xxspcv0vwnczi18ndifl8v2jg5i0vy6rp959vrsqcvxqpxp3q2l"; depends=[colorspace Rcpp]; };
+  optimization = derive2 { name="optimization"; version="1.0-9"; sha256="1pg9a78hhm0h4pfagj13r1dmynv714knhw2dxhzhcvlgk9inpam8"; depends=[colorspace Rcpp]; };
   optimos_prime = derive2 { name="optimos.prime"; version="0.1.2"; sha256="1a76gfzpd2s4gq15cd3frndak7wc6q3xqh9sllkk665031fx6z1h"; depends=[ggplot2 plotly tidyverse]; };
   optimr = derive2 { name="optimr"; version="2019-12.16"; sha256="003wz9r3xdi47ad22l4dkhp0dalknb2s9fp82yamjx7x1xbfvcbk"; depends=[numDeriv optextras Rcgmin Rvmmin setRNG]; };
   optimsimplex = derive2 { name="optimsimplex"; version="1.0-8"; sha256="1q5hfbiq265q5im6wg78spaqsfj421hpzh8bz51zmi188h6xwnwr"; depends=[optimbase]; };
@@ -13640,7 +13693,6 @@ in with self; {
   optionstrat = derive2 { name="optionstrat"; version="1.4.1"; sha256="0vidaf888zdls5yxy7637fqg6r39l3rxw9bhn16s4xmag7kawljv"; depends=[]; };
   optiscale = derive2 { name="optiscale"; version="1.2.2"; sha256="1ay2lfk4isv0gir5diwxlx4ml5bv5qyqbwm34py85fp6bh92987r"; depends=[lattice]; };
   optistock = derive2 { name="optistock"; version="0.0.1"; sha256="1nyz64bfi4s10i4mq7crdkn3b3zqr674vfxkdd3kphjqk0wmiv1j"; depends=[]; };
-  optmatch = derive2 { name="optmatch"; version="0.9-15"; sha256="1n4ifrb2mvvvjp3q0slfqqx3ly9jlcsdg5x00dkg3drrv6zgs03m"; depends=[digest Rcpp RItools survey survival]; };
   optparse = derive2 { name="optparse"; version="1.7.1"; sha256="1rqz0y4r94y3mwbb9kyz97cjqpnprka96qbncvbnbmgg2d630kij"; depends=[getopt]; };
   optpart = derive2 { name="optpart"; version="3.0-3"; sha256="18h659gbgzflq81lcchc058xjgljkmhpsjkh51ylygwrv1qjrz2i"; depends=[cluster labdsv MASS plotrix]; };
   optrcdmaeAT = derive2 { name="optrcdmaeAT"; version="1.0.0"; sha256="16g4612mwyfsckn6l71fbrjnnjv4yvnac1cccbrn3k8jh07qgb1h"; depends=[igraph MASS Matrix]; };
@@ -13654,7 +13706,7 @@ in with self; {
   orcutt = derive2 { name="orcutt"; version="2.3"; sha256="0pj7pqzbcg4gp35nsz3avyawmx69dgj0l2w0x8ypw5qwl4zhmnyk"; depends=[lmtest]; };
   ordDisp = derive2 { name="ordDisp"; version="2.1.1"; sha256="0906y98ydiadyqhz9ad2ssw1282a10c418k20vkbwzad2xip7grg"; depends=[VGAM]; };
   ordPens = derive2 { name="ordPens"; version="1.0.0"; sha256="1q6v3xkaahpzkycjnn75a62narwj4g86ha9m786nfp941ql44vlr"; depends=[glmpath grplasso mgcv quadprog RLRsim]; };
-  ordbetareg = derive2 { name="ordbetareg"; version="0.2.0"; sha256="1rga6vfl9zjdmcn58cwd84ab636a01b5r0in183n8dv5nr0bla3a"; depends=[brms dplyr faux tidyr]; };
+  ordbetareg = derive2 { name="ordbetareg"; version="0.2.1"; sha256="0qxb5vx56250l4l5gk1drrzjwhm74267g98145cn8lwykcwh7vdp"; depends=[brms dplyr faux tidyr]; };
   ordcrm = derive2 { name="ordcrm"; version="1.0.0"; sha256="1hy24s23l099b21w5j3p2f0748s8xmhxhslfp65fg7ycwda5qsyw"; depends=[rms]; };
   orderbook = derive2 { name="orderbook"; version="1.03"; sha256="0dlvjrzdhhh8js4g1lvxs46q7fdxfxavxnb4nj6xlwca75i51675"; depends=[hash lattice]; };
   ordering = derive2 { name="ordering"; version="0.7.0"; sha256="0sgwgcjg6sazmi11c9qvxfrzg671kcp18i2q20xbmbj4v3yqhwbh"; depends=[]; };
@@ -13667,7 +13719,7 @@ in with self; {
   ordinalCont = derive2 { name="ordinalCont"; version="2.0.2"; sha256="1azwcr1si3b8dxf2y59d3rxw4msfq79khzg7zgqd0kbzyka4ygl8"; depends=[boot Deriv]; };
   ordinalForest = derive2 { name="ordinalForest"; version="2.4-2"; sha256="0s5isf8z6rrksl4jv1aizffxy3bcl726qjpj5j6z7642wkdkpygi"; depends=[combinat nnet Rcpp verification]; };
   ordinalLBM = derive2 { name="ordinalLBM"; version="1.0"; sha256="1sfzkm3f9s5nbalakgk5v919wr7hdlr5p280rw2p8dy4wxr3xk3s"; depends=[RColorBrewer reshape2]; };
-  ordinalNet = derive2 { name="ordinalNet"; version="2.10"; sha256="0d2762scs1hwch5dc54dcin8j7ls9an69k68blabpcwq2i429ncz"; depends=[]; };
+  ordinalNet = derive2 { name="ordinalNet"; version="2.11"; sha256="1xqrg5aglpm20ddi4ywhkcndi06fw3xxkfffqiapjs4bjayqfjji"; depends=[]; };
   ordinalRR = derive2 { name="ordinalRR"; version="1.1"; sha256="1sfkq8gryyls22208ympw5scgb4jkd27pyc1qklw4x7cz9wfnfbp"; depends=[rjags]; };
   ordinalgmifs = derive2 { name="ordinalgmifs"; version="1.0.6"; sha256="0axpndyyns649mwifq8f16l8n8x9nic8cv8l71ljyr2gwlm0nqz0"; depends=[survival]; };
   ordinalpattern = derive2 { name="ordinalpattern"; version="0.2.0"; sha256="0nf7323wd8wm4qxlhr6cvm1l87rwfdr5c4qivhncy0m2n5vknc1c"; depends=[gtools mvtnorm]; };
@@ -13705,7 +13757,7 @@ in with self; {
   osmgeosample = derive2 { name="osmgeosample"; version="0.1"; sha256="1vcdisf147mcdqkc35czcphjh6rhaix9vy6l5inknaarmmajri3x"; depends=[dplyr geoR mapview nngeo osmdata pdist processx qpdf Rcpp rgdal sf sp splancs tibble]; };
   osmose = derive2 { name="osmose"; version="3.3.4"; sha256="144mklbish59amzz7j95qmn98yqlz3bqzd2rp03wg9f5s69bxjj6"; depends=[fields knitr mgcv ncdf4 rlist rmarkdown stringr]; };
   osmplotr = derive2 { name="osmplotr"; version="0.3.3"; sha256="0p94phv7jn0q9k25300zz59ldfphm9xgy6i7n3r8xj4zay0c7mf2"; depends=[e1071 ggm ggplot2 mapproj osmdata rgeos sp spatstat spatstat_core spatstat_geom]; };
-  ospsuite_utils = derive2 { name="ospsuite.utils"; version="1.0.0"; sha256="1zbnxqabil52icpr8ykif5b3vs4rb18jiqicw26bvvv5q8aw1hf8"; depends=[R6]; };
+  ospsuite_utils = derive2 { name="ospsuite.utils"; version="1.2.0"; sha256="16gcqnkqz0nz7mhgbnji3p1k2vv43jypx2xbcz4i4d8v1368akly"; depends=[R6]; };
   osqp = derive2 { name="osqp"; version="0.6.0.5"; sha256="1djsd2fval9g18vx1dym8bnsnlv8p166zfyzdsj105ydn346kz08"; depends=[Matrix R6 Rcpp]; };
   osrm = derive2 { name="osrm"; version="3.5.1"; sha256="1fii7xgcnrqmfp9rak6hfn6fh5pgwvww2nj9zfmrz6ams22ac6sw"; depends=[curl googlePolylines isoband jsonlite sf]; };
   osrmr = derive2 { name="osrmr"; version="0.1.36"; sha256="1vnf6g1d9fjckz9ay910nb9gr1km2adwk3b0k460mxvpr36izkh7"; depends=[assertthat bitops R_utils rjson stringr]; };
@@ -13716,6 +13768,7 @@ in with self; {
   otrimle = derive2 { name="otrimle"; version="2.0"; sha256="0rca8ln9cyikfpsf1af550cfx2zx110c8jxv64xf8dnnd09s9h7b"; depends=[doParallel foreach mclust mvtnorm robustbase]; };
   otsad = derive2 { name="otsad"; version="0.2.0"; sha256="1jb6raxm70aywbgs7bdyw8vccy1nj924f4hkpjrlgnvzmy0hyhvs"; depends=[ggplot2 plotly reticulate sigmoid]; };
   ottr = derive2 { name="ottr"; version="1.1.3"; sha256="1sdr03sid4kix00ip0ipirr9qswxpj40mbhg17hzlj7gvjka77ka"; depends=[jsonlite pryr R6 testthat yaml zip]; };
+  ottrpal = derive2 { name="ottrpal"; version="1.0.1"; sha256="02y917r48mqkga27f8019cdbx4mh45dr8l9s2ai1anxgvccnb4yi"; depends=[bookdown curl dplyr fs glue httr knitr magrittr purrr R_utils readr rmarkdown rprojroot rvest stringr xml2 yaml]; };
   otuSummary = derive2 { name="otuSummary"; version="0.1.1"; sha256="04l667qmp7wqkbdsk87j92gf89s13090kzs8cjlmxsp6i69r34z2"; depends=[reshape2 vegan]; };
   otvPlots = derive2 { name="otvPlots"; version="0.2.1"; sha256="0fjx0kl9y77mazwy7lg4mxc9sg8ysvvbl4h3k6bvfpnjm5x62hff"; depends=[data_table ggplot2 gridExtra Hmisc moments quantreg scales stringi]; };
   ouch = derive2 { name="ouch"; version="2.17"; sha256="1a7r24j59xz3lxa5wc694j6b80j8m5l86zd1sw9pvs66l8gd98kf"; depends=[subplex]; };
@@ -13725,7 +13778,7 @@ in with self; {
   outcomerate = derive2 { name="outcomerate"; version="1.0.1"; sha256="07mwml7r98qjgvrp938sqf7klyspz110583j0zwb72j69n4whmrj"; depends=[Rdpack]; };
   outlierensembles = derive2 { name="outlierensembles"; version="0.1.0"; sha256="0m2iaf3rbpwvyrjz6qglbrinmz676hnbqqm6vc38zb3k3cjcllaq"; depends=[airt apcluster EstCRM psych]; };
   outliers = derive2 { name="outliers"; version="0.14"; sha256="0vcqfqmmv4yblyp3s6bd25r49pxb7hjzipiic5a82924nqfqzkmn"; depends=[]; };
-  outliertree = derive2 { name="outliertree"; version="1.7.6-1"; sha256="0hb44l5rr2acpv1szfrmj4gxh1zj25gw6zjvymh2vgk4i9aa20im"; depends=[Rcereal Rcpp]; };
+  outliertree = derive2 { name="outliertree"; version="1.8.1"; sha256="00fa8f4m48gig97hk7709r0x9c7v7jncryd4x4py0f9hd18vv4ix"; depends=[Rcereal Rcpp]; };
   outreg = derive2 { name="outreg"; version="0.2.2"; sha256="04f1x7mxq4swbd7bfwjjgx4838jm6qj4piaighmhcscwrdkxa1cp"; depends=[magrittr reshape2 sandwich stringr tidyr]; };
   outsider = derive2 { name="outsider"; version="0.1.1"; sha256="082yygvjs31clz8b3p59gkc26249gqp8hl1071gm6zi4vi2ng43x"; depends=[crayon curl jsonlite outsider_base remotes tibble yaml]; };
   outsider_base = derive2 { name="outsider.base"; version="0.1.4"; sha256="1wlr3a14a330r9p4lahdmgs4hbgfsp05rsbzr30djwpv21bfl03a"; depends=[callr cli crayon devtools pkgload sys tibble yaml]; };
@@ -13738,7 +13791,7 @@ in with self; {
   overviewR = derive2 { name="overviewR"; version="0.0.7"; sha256="1y8iqgyhppl2w9z59azi3h1kgzrw5a1zqw09zyjp0ghlvpjbn9cn"; depends=[dplyr ggplot2 tibble]; };
   owd = derive2 { name="owd"; version="1.0.6"; sha256="08f1zzlnkfdzm5rlw14qm6yvn68j2yas21zjsy31pc59rh3lzkyh"; depends=[]; };
   owdbr = derive2 { name="owdbr"; version="1.0.1.1"; sha256="0q4654zr5aw04sssy7127vafry72b7p3d8i44fqvqg3055awin0i"; depends=[data_table dplyr httr jsonlite magrittr tibble]; };
-  owidR = derive2 { name="owidR"; version="1.1.0"; sha256="1i9lqmabwk8nnva428syfk3zbr60s6crx6dq8y8i4272xprqd5dk"; depends=[curl dplyr forcats ggplot2 ggrepel htmltools jsonlite leaflet magrittr purrr readr rlang rvest scales sf stringr xml2]; };
+  owidR = derive2 { name="owidR"; version="1.2.0"; sha256="0c0i0sbnzg61sx9nbc7srahkypk1fwysvbnrhp6j3vbd1rf6jqfk"; depends=[curl dplyr forcats ggplot2 ggrepel htmltools httr jsonlite leaflet magrittr purrr readr rlang rvest scales sf stringr xml2]; };
   owmr = derive2 { name="owmr"; version="0.8.2"; sha256="0qlb5aw6n06yf8y2gd2fjp8kp3w0xgqh3fka7rxqndgvaqmin1a6"; depends=[httr jsonlite magrittr plyr tibble tidyr]; };
   ows4R = derive2 { name="ows4R"; version="0.2-1"; sha256="19mm328slb2d8i0qg6nzifah276x637gcivrad24iz8zwn0msdc4"; depends=[geometa httr keyring openssl R6 rgdal sf XML]; };
   ox = derive2 { name="ox"; version="0.1.0"; sha256="0j0va301bmppvmk6paqaqqaw85h8yf92i3pz7i59f2j8q9im82rx"; depends=[]; };
@@ -13761,11 +13814,10 @@ in with self; {
   pROC = derive2 { name="pROC"; version="1.18.0"; sha256="1abvbzdss12n64pp9vlgnn0q3abh0nj4n0a8cinwwvhphjrm9vym"; depends=[plyr Rcpp]; };
   pRSR = derive2 { name="pRSR"; version="3.1.1"; sha256="1irx95b7cwvx3gpn9brjjn4k947m8frz542r18nilc9f1159mb3s"; depends=[]; };
   pRecipe = derive2 { name="pRecipe"; version="0.1.1"; sha256="05lhviyzsrfh1f7jfp77i9xk5nnj4k3kgynw8brxmkyjnr68rayf"; depends=[curl data_table dplyr gdalUtils getPass ggplot2 hdf5r lubridate maps ncdf4 R_utils raster rgdal sp stringr viridis zoo]; };
-  pTITAN2 = derive2 { name="pTITAN2"; version="1.0.1"; sha256="10slq7bazzj8fml0nsc3fkdyljhkh0ni6sf23iwav3f20kyqrzi4"; depends=[data_table]; };
+  pTITAN2 = derive2 { name="pTITAN2"; version="1.0.2"; sha256="1mwx7k8ql4l572xvwb5gns9n4kqk779wwm4sg7nbgzz8xvcdh665"; depends=[data_table]; };
   pa = derive2 { name="pa"; version="1.2-1"; sha256="1pfgzxirkb0p8f6smjlrbp1qpsh0vsvqf306cvldaj9zx8cw0q9f"; depends=[ggplot2]; };
   pacbpred = derive2 { name="pacbpred"; version="0.92.2"; sha256="13p405vh9rf1r5idxl5payc85vwlzcd87wm15163vc9gmil1ncsf"; depends=[]; };
   pack = derive2 { name="pack"; version="0.1-1"; sha256="0x4p8clwp49s2y67y7in530xwhjngnqwagf9xnyb1jp0z3myd3r7"; depends=[]; };
-  packClassic = derive2 { name="packClassic"; version="0.5.2"; sha256="04a1sg9vx3r0sq54q9kj0kpahp6my246jy3bivgy09g5fjk0dmkj"; depends=[]; };
   packDAMipd = derive2 { name="packDAMipd"; version="0.2.2"; sha256="0n32vqpl6ym9wjwk8apsgkh7i4jin253l1v0gphvy2v1azcpyrc9"; depends=[broom car data_table dplyr effects flexsurv ggplot2 gvlma hash haven IPDFileCheck lme4 lmtest MASS nlme readxl relaimpo reshape2 rlang stringr survival survminer SurvRegCensCov systemfit tibble tidyr tidyverse tm valueEQ5D]; };
   packHV = derive2 { name="packHV"; version="2.2"; sha256="0bj7zhlz2283y1hfdqdn7xil4wscwri1f5hszarwjwczx4n5sv81"; depends=[survival WriteXLS]; };
   packMBPLSDA = derive2 { name="packMBPLSDA"; version="0.8.0"; sha256="0jn47zhcfssa2rwjh8jc2zc93g766pslxx8vjm0bsnzyzjl2yqb9"; depends=[ade4 DiscriMiner doParallel FactoMineR foreach MASS pROC]; };
@@ -13781,17 +13833,17 @@ in with self; {
   pacman = derive2 { name="pacman"; version="0.5.1"; sha256="0z7gngd6h83cpjhq1vg75wvzhdjbgjh7gj5d4zvvi9gd2lmagjcy"; depends=[remotes]; };
   paco = derive2 { name="paco"; version="0.4.2"; sha256="0p02fdc5f7d7sbdvxill8jln76p1ndiw95k6s9j41slfriq647vd"; depends=[ape plyr vegan]; };
   pacotest = derive2 { name="pacotest"; version="0.4.1"; sha256="1ry0lwzphgivmlc8swhk6l26q4ca6x36rm8r7vvjb64y0fvayqk5"; depends=[ggplot2 gridExtra numDeriv Rcpp RcppArmadillo VineCopula]; };
-  pacs = derive2 { name="pacs"; version="0.3.5"; sha256="0a8k6i7v26r4njbpcy3zp556kxn1p9rx6v7375k1r4w2b49jba6k"; depends=[memoise stringi xml2]; };
+  pacs = derive2 { name="pacs"; version="0.4.3"; sha256="1pa5s69rgxv7z3jyxxkd835pf76zjz24h3hdpqqnxr11mipvv256"; depends=[curl jsonlite memoise renv stringi xml2]; };
   pacviz = derive2 { name="pacviz"; version="1.0.1"; sha256="0afh10zf32lk6gh42y6mjfgdw2blhjavhbq2n3s8h62w9blfad5g"; depends=[circlize e1071 plotrix]; };
   padr = derive2 { name="padr"; version="0.6.0"; sha256="1l8i40vqpy033j8nc8fqp9ymn378bhyy4hkj8xhk94npv7jibqkk"; depends=[dplyr lubridate Rcpp rlang]; };
   paf = derive2 { name="paf"; version="1.0"; sha256="0wrqn67jfrjjxwcrkka6dljgi3mdk00vfjkzzcv2v7c97gx1zvwn"; depends=[survival]; };
   pafdR = derive2 { name="pafdR"; version="1.0"; sha256="1yimsd4h23hcf752p5flda3dqk8hgn6qm9k0pmbapxj4jbsw14w5"; depends=[curl exams stringr]; };
   pafr = derive2 { name="pafr"; version="0.0.2"; sha256="0ali4m1pv73y88x1dk5rvmg1ysy48janjnc1hnqfcndszfz2b0wm"; depends=[dplyr ggplot2 rlang stringr tibble]; };
-  pagedown = derive2 { name="pagedown"; version="0.16"; sha256="0ia1x6sjhwzicw8dr6i12ihcgpf8h0qn3c5343bfvw5lncmrpb74"; depends=[bookdown htmltools httpuv jsonlite later processx rmarkdown servr websocket xfun]; };
+  pagedown = derive2 { name="pagedown"; version="0.17"; sha256="100av273xnky7zb0mxxwswv2n711qbc692sz7708pl52xvx29cqs"; depends=[bookdown htmltools httpuv jsonlite later processx rmarkdown servr websocket xfun]; };
   pagemap = derive2 { name="pagemap"; version="0.1.3"; sha256="1rwspbk7xmp27iadrd1471a7z71qyzlb0vnkw4ssjk7wi8q48fnj"; depends=[htmlwidgets]; };
   pagenum = derive2 { name="pagenum"; version="1.2"; sha256="0nid26wmrm76ifxqpqqry232q4alf80i7df1rg237qil8asx06k1"; depends=[]; };
   pageviews = derive2 { name="pageviews"; version="0.5.0"; sha256="1fhlm2y288wx625y0glxybjb0xv9sqvvln35jqlwqq38h3grcpqd"; depends=[curl httr jsonlite]; };
-  pagoda2 = derive2 { name="pagoda2"; version="1.0.8"; sha256="1fxcn6g197na4fjs4ra1s1gz1nihcvai2zk4p55hk0qf3nz2r707"; depends=[dendsort drat fastcluster igraph irlba magrittr MASS Matrix mgcv N2R plyr R_utils R6 Rcpp RcppArmadillo RcppEigen RcppProgress rjson rlang RMTstat Rook Rtsne sccore urltools]; };
+  pagoda2 = derive2 { name="pagoda2"; version="1.0.9"; sha256="0dzq40wc9yyfmycb8cghvfmvd6y5qg7q5p3m3g8r1bcjc8qfbl2f"; depends=[dendsort drat fastcluster igraph irlba magrittr MASS Matrix mgcv N2R plyr R_utils R6 Rcpp RcppArmadillo RcppEigen RcppProgress rjson rlang RMTstat Rook Rtsne sccore urltools]; };
   pagoo = derive2 { name="pagoo"; version="0.3.12"; sha256="16d935lwsx2b9g57k8sh48pc6ldgga0q6z2pgm6p4ia07l0p4rd4"; depends=[BiocGenerics Biostrings dendextend DT GenomicRanges ggfortify ggplot2 heatmaply magrittr plotly R6 reshape2 S4Vectors shiny shinydashboard shinyWidgets vegan]; };
   painbow = derive2 { name="painbow"; version="1.0.1"; sha256="10c8spknh7sqa4vl0q4bjdwd03nl4qk28hj2qa9sbyb1ryc7p4j9"; depends=[ggplot2]; };
   painter = derive2 { name="painter"; version="0.1.0"; sha256="0qr6p13h50rlavcsamxmijfr4dfrbv1k088m28qf8a4gam3ap85b"; depends=[]; };
@@ -13830,7 +13882,7 @@ in with self; {
   pan = derive2 { name="pan"; version="1.6"; sha256="1dk3jjj826p7xrz10qz04vyc068xnypg7bp0pj4c32z3da0xzh5d"; depends=[]; };
   pander = derive2 { name="pander"; version="0.6.4"; sha256="1knjcr50xxns3w3kh15myjpsizn4d7fdqx071a4yj90imif07qjh"; depends=[digest Rcpp]; };
   pandocfilters = derive2 { name="pandocfilters"; version="0.1-4"; sha256="1nlnvnvq3zwzpf6hnf8akl0w25kr7hrbr98rw5vgncxw35314xdp"; depends=[jsonlite]; };
-  panelView = derive2 { name="panelView"; version="1.1.5"; sha256="1pvi1b571sbqbhma7m277ppcv98c9yc720fr9pgqfdy8hswsd2rd"; depends=[ggplot2 gridExtra]; };
+  panelView = derive2 { name="panelView"; version="1.1.9"; sha256="1qrlw4n5sw1mdchgn6p2f2zijmmm87nq5ffdgg4m1gyzkd40qfw8"; depends=[ggplot2 gridExtra]; };
   panelWranglR = derive2 { name="panelWranglR"; version="1.2.13"; sha256="0zj0m08518zi6xsa7qik61ys1qqa2lqiar4l7acclkw58w5zrmbc"; depends=[caret data_table Hmisc]; };
   panelaggregation = derive2 { name="panelaggregation"; version="0.1.1"; sha256="0x8ldqb9216pclfvs4ymdpian43v2ydkyflpf0k6lcn35r04xfr6"; depends=[data_table]; };
   panelr = derive2 { name="panelr"; version="0.7.6"; sha256="0vc57c261n9himhxs0yy2pd5vd935cg42hf6jnk84y61glw7dgxk"; depends=[crayon dplyr Formula ggplot2 jtools lme4 lmerTest magrittr purrr rlang stringr tibble]; };
@@ -13850,11 +13902,11 @@ in with self; {
   parallelMap = derive2 { name="parallelMap"; version="1.5.1"; sha256="1qg7zpz5sd9jp8wzjqahkhipwj1jn192llwg06q4gv9mlcsac261"; depends=[BBmisc checkmate]; };
   parallelPlot = derive2 { name="parallelPlot"; version="0.1.0"; sha256="1zppgd0dwxfryv6wfl6k7jrny1yqb5q4f8phnnmzz9ydlv7xyv32"; depends=[htmlwidgets]; };
   parallelly = derive2 { name="parallelly"; version="1.30.0"; sha256="0fwzkzw9vjblwk5rg56yl8qfn7irnbpm70405lmj7awvf35q1c5a"; depends=[]; };
-  param6 = derive2 { name="param6"; version="0.2.3"; sha256="1d4fhs82qpb18480wg6i1q59kw65hqvafv5nb7p7jqys16mmsj3i"; depends=[checkmate data_table dictionar6 R6 set6]; };
+  param6 = derive2 { name="param6"; version="0.2.4"; sha256="0h4r2l670zvsbq0cakbm7f5yc0ghaf40kby80q3ql8lwgfnay1jd"; depends=[checkmate data_table dictionar6 R6 set6]; };
   paramGUI = derive2 { name="paramGUI"; version="2.1.4"; sha256="0k2wkl99ji3w7xmd9k7zzvrr3dbf3237q7lxm527dnrq331pmxmi"; depends=[colorspace fields shiny shinydashboard TIMP]; };
   parameters = derive2 { name="parameters"; version="0.16.0"; sha256="1i295d5nqjr3pvp9vz59wiasrxy9n78q518phcd15sxcjzcj0l27"; depends=[bayestestR datawizard insight]; };
   paramhetero = derive2 { name="paramhetero"; version="0.2.0"; sha256="16gvs8328bnqvhx47f0xwnmbmlakxmp4ivnjxk2b13z6qjs70ij4"; depends=[ggplot2 ggpubr lme4 survey]; };
-  paramlink = derive2 { name="paramlink"; version="1.1-2"; sha256="0y6wsrxwyavipmrjjznr2n920w0p6qlwapxc9mnkh9c6w3yznka2"; depends=[assertthat kinship2 maxLik]; };
+  paramlink = derive2 { name="paramlink"; version="1.1-4"; sha256="1dwm7kv1a9d07hpk3l6mih6qbq9ga7idqlyqs0impxnd83lwp093"; depends=[assertthat kinship2 maxLik]; };
   paramlink2 = derive2 { name="paramlink2"; version="1.0.3"; sha256="0ypn0fdrphblw64sdnfmyf9q4zbakqvl4xzr451phvhx52n1gb73"; depends=[pedprobr pedtools]; };
   params = derive2 { name="params"; version="0.7.3"; sha256="0zii9nxgl2z46vyqn2l0kdjmib90534ybpizck74mp2wp1vh9ndj"; depends=[glue purrr RcppTOML readr whisker]; };
   paramtest = derive2 { name="paramtest"; version="0.1.0"; sha256="0yn1s1qkgby8x0qn7cy1zhxzc0wyi7bm30pkvijhn5h5afjpylsy"; depends=[boot]; };
@@ -13872,9 +13924,9 @@ in with self; {
   parqr = derive2 { name="parqr"; version="0.1.0"; sha256="11956dvv46sgpmbv429c24wxdhfqvc07jxc1i4yymyz1l8wgr3yb"; depends=[arrow magrittr purrr]; };
   parseRPDR = derive2 { name="parseRPDR"; version="0.2.1"; sha256="1k4153bhf623xla6b174as4n8fh8ic0wnw8psxwa2vj3q3nifwbx"; depends=[bigmemory data_table doParallel foreach readr reticulate stringr]; };
   parsec = derive2 { name="parsec"; version="1.2.5"; sha256="1qd9gyb6zkahql74x9nds72fmx0i5cyg9kank929cz5iziqf85y5"; depends=[igraph netrankr]; };
-  parsedate = derive2 { name="parsedate"; version="1.2.1"; sha256="05l6f1n3dsm383w7jfg3j38klvmzzfvc7qi9zr5ij13rljj8s1vb"; depends=[rematch2]; };
+  parsedate = derive2 { name="parsedate"; version="1.3.0"; sha256="1c2cpsvma3fkx6zp191bpfvf5rmpsr13g8rzqk6ycyb0n7b9k4qy"; depends=[]; };
   parsermd = derive2 { name="parsermd"; version="0.1.2"; sha256="15fy5vgzbrxq1yj4bgd0q1n5gjwvfh6s03ar5mj3hpp5mz6qmsdg"; depends=[BH checkmate cli dplyr lifecycle magrittr pillar purrr Rcpp readr rlang rmarkdown tibble tidyr tidyselect withr yaml]; };
-  parsnip = derive2 { name="parsnip"; version="0.1.7"; sha256="12chngdzplwkk1c9k8y7cwaqlyy72yamlknp7ksg7g9p3b58f1fb"; depends=[dplyr generics globals glue hardhat lifecycle magrittr prettyunits purrr rlang tibble tidyr vctrs]; };
+  parsnip = derive2 { name="parsnip"; version="0.2.0"; sha256="0g213c91lzwq9hd22yxkj3igqw04czncnbc4jddnpghp4gpfn1kn"; depends=[cli dplyr generics ggplot2 globals glue hardhat lifecycle magrittr prettyunits purrr rlang tibble tidyr vctrs withr]; };
   partDSA = derive2 { name="partDSA"; version="0.9.14"; sha256="1kp0cdsdjiay349jz22iqfzvspny8s343cfan8xahgf931k9h8p6"; depends=[survival]; };
   partR2 = derive2 { name="partR2"; version="0.9.1"; sha256="06ky0hhrq0mcsn9rwrzvwn0rrjj0l8rxs0hqp10668gdq5hjk8bn"; depends=[dplyr ggplot2 lme4 magrittr pbapply purrr rlang tibble tidyr]; };
   partialOR = derive2 { name="partialOR"; version="0.9"; sha256="02vbvln8lswysaafpxq5rxb6crp7yhlc13i42kybv8fr10jaagjj"; depends=[nnet]; };
@@ -13927,7 +13979,7 @@ in with self; {
   paws = derive2 { name="paws"; version="0.1.12"; sha256="0kn1z045r106fwqcaz52hb02bhrcblh479cajfjiq480s1iljcw6"; depends=[paws_analytics paws_application_integration paws_compute paws_cost_management paws_customer_engagement paws_database paws_developer_tools paws_end_user_computing paws_machine_learning paws_management paws_networking paws_security_identity paws_storage]; };
   paws_analytics = derive2 { name="paws.analytics"; version="0.1.12"; sha256="04gnaxmj21l312xkrsd9bisi0bz9h6h5fyhwlqylcxi077z1yb2g"; depends=[paws_common]; };
   paws_application_integration = derive2 { name="paws.application.integration"; version="0.1.12"; sha256="0llyd9hc679pad1ih0rcc38q5xxpzinhwrl8cvrkgsjgbc3agq42"; depends=[paws_common]; };
-  paws_common = derive2 { name="paws.common"; version="0.3.15"; sha256="0kj5b4253j4rljkj0ibh21kh9r1yq9idz9vf1f4ag775ivsc2dk5"; depends=[base64enc digest httr jsonlite xml2]; };
+  paws_common = derive2 { name="paws.common"; version="0.3.16"; sha256="0mdbnbjprghiwz4i9abh62l5q6mncz3iq76wxvj7ncinf89kd83w"; depends=[base64enc digest httr jsonlite xml2]; };
   paws_compute = derive2 { name="paws.compute"; version="0.1.12"; sha256="1km6fng6il5fcjlrbbndahsw2dr2ql83hwac9wlpd67zm3wy9lky"; depends=[paws_common]; };
   paws_cost_management = derive2 { name="paws.cost.management"; version="0.1.12"; sha256="0in4f8ygw5g2v6vl3lz2y0v51llglh8b1ymbd04d54xxlgn83knh"; depends=[paws_common]; };
   paws_customer_engagement = derive2 { name="paws.customer.engagement"; version="0.1.12"; sha256="0ac6hzn4ilfjhzdmc9x80999fl18cz16mky31qd3y09m93w2xkdj"; depends=[paws_common]; };
@@ -13963,18 +14015,18 @@ in with self; {
   pcaPP = derive2 { name="pcaPP"; version="1.9-74"; sha256="1dlrz5plb8b89vr3j6sn9jwryyhcwflqkiilxkybbr379m1pp0sh"; depends=[mvtnorm]; };
   pcadapt = derive2 { name="pcadapt"; version="4.3.3"; sha256="01wvcflfsnlsq23vq03n870fxsab3ab29k26nqlqxw82lbvx99s3"; depends=[bigutilsr data_table ggplot2 magrittr mmapcharr Rcpp rmio RSpectra]; };
   pcal = derive2 { name="pcal"; version="1.0.0"; sha256="07119k5f4h9jc48bicl4q5i7bdrkha3rz22r6g44c8ilnkvjhw6j"; depends=[Rdpack]; };
-  pcalg = derive2 { name="pcalg"; version="2.7-4"; sha256="0yph4w5hvw8ss8w6wkpka4crk9nwmm6d091gz3pr1vv2qifx98ii"; depends=[abind bdsmatrix BH clue corpcor fastICA ggm graph igraph RBGL Rcpp RcppArmadillo robustbase sfsmisc vcd]; };
+  pcalg = derive2 { name="pcalg"; version="2.7-5"; sha256="136w94s0pi5llyfkh7vdff94yl3x6ajbnzb112fd485wr60f7d5x"; depends=[abind bdsmatrix BH clue corpcor fastICA ggm graph igraph RBGL Rcpp RcppArmadillo robustbase sfsmisc vcd]; };
   pcalls = derive2 { name="pcalls"; version="1.0"; sha256="1vdgvrzfv69p3p5zc9i6gxq53f36s0mia4idzrbsda661f1bhmxk"; depends=[]; };
   pcatsAPIclientR = derive2 { name="pcatsAPIclientR"; version="1.0.0"; sha256="07klw04zq3q18d13grmgjl4fywby7bazxm28v25snrim33n2ybhp"; depends=[httr jsonlite testthat]; };
   pccc = derive2 { name="pccc"; version="1.0.5"; sha256="0jh8yadks76ip9jmgvld9nycdm74f5gllkyhfmnrir8vi6xwvbad"; depends=[dplyr Rcpp]; };
   pcdpca = derive2 { name="pcdpca"; version="0.4"; sha256="0ys4hrin0w3f87d1d986wvrfkfwapzj9hz7d7v92r60ns74g7r5m"; depends=[fda freqdom]; };
-  pcds = derive2 { name="pcds"; version="0.1.2"; sha256="1xzjs1pyjr0mrr9wdn30vkzp2bzc4ms7cby0pb95ysmvrdxl81d7"; depends=[combinat interp plot3D plotrix Rdpack]; };
+  pcds = derive2 { name="pcds"; version="0.1.4"; sha256="0fqd5hxnmg4yybwn7wva224paxhnxx4fb2pymrxp716brxwi7gaf"; depends=[combinat interp plot3D plotrix Rdpack]; };
   pcensmix = derive2 { name="pcensmix"; version="1.2-1"; sha256="1yrz4hdj52in8z65qyl18kh7frv75rb8ss5ljv3vbm6yhxi32jnd"; depends=[]; };
   pcev = derive2 { name="pcev"; version="2.2.2"; sha256="1l0afcdzkxzkhkc8ln2fzi50hc7nfq46lg6hhx6rrzkb41w82iqw"; depends=[corpcor RMTstat]; };
   pcg = derive2 { name="pcg"; version="1.1"; sha256="194j72hcp7ywq1q3dd493pwkn1fmdg647gmhxcd1jm6xgijhvv87"; depends=[]; };
   pcgen = derive2 { name="pcgen"; version="0.2.0"; sha256="1v2fmxbj9gz5sg0hizw03ad8cfm9v25708h7fvnf6gb42b2mmyb3"; depends=[ggm graph Hmisc lme4 MASS Matrix pcalg sommer]; };
   pch = derive2 { name="pch"; version="2.0"; sha256="1nnawsc6mscwd4z62hhilpn04a9iapx551vvjm3alwk2makhj0wf"; depends=[Hmisc survival]; };
-  pchc = derive2 { name="pchc"; version="0.6"; sha256="10mjsw07yiwclh5ziy0bkd6mdwawxs5xv18pwxp7pc6bq2ikjjhb"; depends=[bigstatsr bnlearn Rfast Rfast2 robustbase]; };
+  pchc = derive2 { name="pchc"; version="0.7"; sha256="0m5s5mdrgnppy54zalc6c7hjvwfd47jr3yls1jvm7455chz18nr9"; depends=[bigstatsr bnlearn Rfast Rfast2 robustbase]; };
   pcmabc = derive2 { name="pcmabc"; version="1.1.1"; sha256="1bacxxgcrgsa7h1baybwwinw3n95cx5wkkfm5cb4iscgk910mfmb"; depends=[ape distory geiger mvSLOUCH phangorn TreeSim yuima]; };
   pcnetmeta = derive2 { name="pcnetmeta"; version="2.7"; sha256="0jibi4wylxkisgj740xbibjqs60d5xg9my4sx7vshgfl941y9wcv"; depends=[coda rjags]; };
   pco = derive2 { name="pco"; version="1.0.1"; sha256="0k1m450wfmlym976g7p9g8arqrvnsxgdpcazk5kh3m3jsrvrcchf"; depends=[]; };
@@ -13990,11 +14042,11 @@ in with self; {
   pdc = derive2 { name="pdc"; version="1.0.3"; sha256="0503n7aiy0qrl790yfjvpm7bbyz1i4818rlg96q0fvzb58zqmyvc"; depends=[]; };
   pder = derive2 { name="pder"; version="1.0-2"; sha256="0qrf0igxzalvsanj1mqryi0xl9lq0wlpg8bbgasbx3ibq4yqwn0s"; depends=[plm]; };
   pdfCluster = derive2 { name="pdfCluster"; version="1.0-3"; sha256="13m7b2wivvf58vyqbysj4r04w0nj2b5x0xnaxip712a6c66x1h7l"; depends=[geometry]; };
-  pdfetch = derive2 { name="pdfetch"; version="0.2.5"; sha256="0dfi259yyhydfbrq09m3x8m12bxpmhm1l187b8m85mp38hwpz504"; depends=[curl httr jsonlite lubridate reshape2 stringr XML xml2 xts zoo]; };
+  pdfetch = derive2 { name="pdfetch"; version="0.2.6"; sha256="1nqnjmci2653hvqsh1957vn3pkx1n0264v4sk76manrsdk1s42zk"; depends=[curl httr jsonlite lubridate reshape2 stringr XML xml2 xts zoo]; };
   pdfminer = derive2 { name="pdfminer"; version="1.0"; sha256="0hm9nalazqcg4n1sqcjan8wm1rvv4lnflmlkrqkj5yhhmza7xkfh"; depends=[checkmate jsonlite]; };
   pdfsearch = derive2 { name="pdfsearch"; version="0.3.0"; sha256="0mk1s8b7cdz025xn9kg5xnw388sndhjm80ckf71daxviknrzcscf"; depends=[pdftools stringi tibble tokenizers]; };
   pdftables = derive2 { name="pdftables"; version="0.1"; sha256="1gnwjijr89cczchc7yi4w5xiw0dalbymvj23rymm8cfra34iwn5p"; depends=[httr]; };
-  pdftools = derive2 { name="pdftools"; version="3.0.1"; sha256="1dcbs5n5y8zi7bbyx491m9ik8kkmjr301x8ms85fmwdfb5a97m8k"; depends=[qpdf Rcpp]; };
+  pdftools = derive2 { name="pdftools"; version="3.1.1"; sha256="1lflqf2ypdm4w033vyjykmsy8cl34sp42fzkfgfdhvl2d0xjhl96"; depends=[qpdf Rcpp]; };
   pdi = derive2 { name="pdi"; version="0.4.2"; sha256="04lz16al9c3ycdswfpf1fanghglpzbl8pfggr9bjmcn7k2v91ysv"; depends=[dplyr magrittr purrr randomForest readxl stringr tibble tidyr tidyselect]; };
   pdist = derive2 { name="pdist"; version="1.2"; sha256="18nd3mgad11f2zmwcp0w3sxlch4a9y6wp8dfdyzvjn7y4b4bq0dd"; depends=[]; };
   pdmod = derive2 { name="pdmod"; version="1.0.1"; sha256="04bk9gjg2c55hk6k1hy0m29927s8a5ig6mr4xb89npam68g0pcms"; depends=[mco]; };
@@ -14010,7 +14062,7 @@ in with self; {
   peakPick = derive2 { name="peakPick"; version="0.11"; sha256="1zf7ff9arm4hkdxrfhb0p8p7npd51icy773g2raaqsfys825xwhm"; depends=[matrixStats]; };
   peakRAM = derive2 { name="peakRAM"; version="1.0.2"; sha256="0mj7f8jqkfky61xag2km0svbgvfmif3c1d8ccav6pv1963cg3cvv"; depends=[]; };
   pearson7 = derive2 { name="pearson7"; version="1.0-3"; sha256="0vdhhds1lngaff7dkx4b1az3syqw8b22w2jskcrw0m49wp1dbbha"; depends=[]; };
-  pec = derive2 { name="pec"; version="2021.10.11"; sha256="1cb63qrc1lwds5kv55jd2mibsw49bpfaj066kwhs1wgby25h8ydi"; depends=[foreach lava prodlim riskRegression rms survival timereg]; };
+  pec = derive2 { name="pec"; version="2022.03.06"; sha256="1v43k2l46dz1myas9afyd5cp9a9rw7l71i7k4z8pwlw6aydispnm"; depends=[foreach lava prodlim riskRegression rms survival timereg]; };
   pecora = derive2 { name="pecora"; version="0.1.1"; sha256="0l66brd5d24hn279ck785jy4qnxiv9lc3d1czh4f3l25d0hj99xi"; depends=[matrixStats Rcpp RcppArmadillo]; };
   pedSimulate = derive2 { name="pedSimulate"; version="1.3.1"; sha256="0rbk8w742i8s9avn9xn8290nkd2mb9aa7p8vzya1dk72x7l51y7b"; depends=[]; };
   pedalfast_data = derive2 { name="pedalfast.data"; version="1.0.0"; sha256="02s6igrybcfs8nyxr50iiwclhrwnq3x2x5w886imrlp2wbkf13m4"; depends=[]; };
@@ -14025,7 +14077,7 @@ in with self; {
   pedquant = derive2 { name="pedquant"; version="0.1.8"; sha256="0rzpnsf6d509f4wkkdcrsw7rfdlvg12mr25ha3dy6a47nqscxlhp"; depends=[curl data_table ggplot2 gridExtra httr jsonlite PerformanceAnalytics plotly readr readxl rvest scales stringi TTR webdriver xml2 zoo]; };
   pedsuite = derive2 { name="pedsuite"; version="1.1.0"; sha256="19vbfn8dy7a4hrrv8zsja721lchng55gvc26xlkzx5dl96d2xp9w"; depends=[dvir forrel ibdsim2 paramlink2 pedbuildr pedmut pedprobr pedtools ribd segregatr verbalisr]; };
   pedtools = derive2 { name="pedtools"; version="1.1.0"; sha256="0cm2arhn81dl4w26rc701f8b7ldz1r1ad7g7lnw67lq2irnfkgfg"; depends=[kinship2]; };
-  peermodels = derive2 { name="peermodels"; version="0.10.2"; sha256="0zmkpfgji375155h8sgz2n1vw2ir9z0n6hd6ha3as3af797bx7f4"; depends=[httr jsonlite stringr]; };
+  peermodels = derive2 { name="peermodels"; version="0.10.3"; sha256="116xn5w7rwm9q0m7bj4z29l4hspj2nqdcxzir9dqpdqmf7z58v67"; depends=[curl httr httr2 jsonlite stringr]; };
   pegas = derive2 { name="pegas"; version="1.1"; sha256="0ngd0laqbs139ji9hm9kwsm9rm56agw2yyfcplxgqva936l93fl7"; depends=[ape]; };
   pema = derive2 { name="pema"; version="0.1.0"; sha256="0z56r7jjigyw3lxf2bvzhfb3a7bs79pj4w7r9qg231z30sf4m1fz"; depends=[BH Rcpp RcppEigen RcppParallel rstan rstantools sn StanHeaders]; };
   pems_utils = derive2 { name="pems.utils"; version="0.2.29.1"; sha256="0nmawl1l2wf77r02qpazqwm5708fk98k7l07wyybviwb1j3x1pqj"; depends=[baseline dplyr ggplot2 lattice latticeExtra loa RColorBrewer Rcpp rlang]; };
@@ -14038,7 +14090,7 @@ in with self; {
   penalizedSVM = derive2 { name="penalizedSVM"; version="1.1.2"; sha256="03zw95bc6svbnzak9x72s3b8l9gh581mxn2di1fl89gxlh864amd"; depends=[corpcor e1071 lhs MASS mlegp statmod tgp]; };
   penalizedclr = derive2 { name="penalizedclr"; version="0.1.0"; sha256="0ka27azfdj4wa1p628b99pkrfjy1x8yjyd3d5g2v8mbsfg3j3bwg"; depends=[clogitL1 penalized survival tidyverse]; };
   penaltyLearning = derive2 { name="penaltyLearning"; version="2020.5.13"; sha256="0297rp5zn6d0axl44i3baq2vqvhrx6s8irrysvqdcx1rkishf4j0"; depends=[data_table ggplot2]; };
-  pencal = derive2 { name="pencal"; version="1.0.1"; sha256="1vlan2578racspfgysj741k5kl2rs4m77jw03pnvjffcnbazalng"; depends=[doParallel dplyr foreach glmnet lcmm magic MASS Matrix nlme survcomp survival survivalROC]; };
+  pencal = derive2 { name="pencal"; version="1.0.2"; sha256="1p9s9d8awc3v1g4qkigpp76gmicmhy7mia8vnfpinwmvik6bazim"; depends=[doParallel dplyr foreach glmnet lcmm magic MASS Matrix nlme survcomp survival survivalROC]; };
   pencopulaCond = derive2 { name="pencopulaCond"; version="0.2"; sha256="18hjjxnd0l2ms20ddqkghfbd4as5kq2rgwqzpz4y38k6nw76x511"; depends=[doParallel fda foreach igraph lattice latticeExtra pacotest quadprog TSP]; };
   pendensity = derive2 { name="pendensity"; version="0.2.13"; sha256="1wcsib7m2161nqqrmgdvrj7lr8zq6njc9xr935hwfh3qbbgkmfjb"; depends=[fda lattice]; };
   penfa = derive2 { name="penfa"; version="0.1.1"; sha256="1r8lq4kvlwlk7q0mdzkrdm9sx7lqq4l27jfxa1zcfh50sk1qlam2"; depends=[GJRM MASS mgcv trust]; };
@@ -14046,7 +14098,7 @@ in with self; {
   pense = derive2 { name="pense"; version="2.1.0"; sha256="1gz9p3khmv6v4m9aw314zdxdr33qmddb4s2pads0lm5iylngjd4j"; depends=[lifecycle Matrix Rcpp RcppArmadillo rlang]; };
   pensim = derive2 { name="pensim"; version="1.3.3"; sha256="1raap4zlqgcqh8x83kp1ss5qcn0p7bwribp4dhfhrh9rl92hh92a"; depends=[MASS penalized]; };
   peopleanalyticsdata = derive2 { name="peopleanalyticsdata"; version="0.2.1"; sha256="0ig65y4sl6wagzcvj8wwjw2dblb61hgbsqvp76wvxbhga1q0wnpf"; depends=[]; };
-  peperr = derive2 { name="peperr"; version="1.3"; sha256="0pcz7vjl4hgp25a8zv2zcsz3s3ly1zfngkpdnvvviycvq070plv4"; depends=[snowfall survival]; };
+  peperr = derive2 { name="peperr"; version="1.4"; sha256="0fcznmpm4f1jvl4yl7aqb637l387g74xk86vj3lwp65jzq6g8i0a"; depends=[snowfall survival]; };
   peppm = derive2 { name="peppm"; version="0.0.1"; sha256="1lvk1rjsx39mb93s9pclriw4fmf1sx05s59qqx5m3aqb4q8ffxkg"; depends=[Rcpp]; };
   pepr = derive2 { name="pepr"; version="0.4.0"; sha256="0mnigx4lpl397k526sxp7ckrnp59hfrnm9gqcq0nx6j5d7379sp9"; depends=[data_table pryr stringr yaml]; };
   peptider = derive2 { name="peptider"; version="0.2.2"; sha256="109z81x6jcsx2651lclff7ak55zb1i89pyi58rxri40aamx4b1x2"; depends=[discreteRV dplyr plyr]; };
@@ -14093,7 +14145,7 @@ in with self; {
   pgam = derive2 { name="pgam"; version="0.4.15"; sha256="12llflsb32dfvxl3nbyb9bsl9bmd35g5g163hd3axzmg1bgi21ls"; depends=[]; };
   pgdraw = derive2 { name="pgdraw"; version="1.1"; sha256="1s1b1izpgryrqsjkdh3yvr137054sipj3kwdkzlx2af8xjr53f85"; depends=[Rcpp]; };
   pgee_mixed = derive2 { name="pgee.mixed"; version="0.1.0"; sha256="115vvpv54q80486i3xs2yhmfyx476cf4g1v43q6l7wj3jwzcrvbg"; depends=[copula mvtnorm Rcpp RcppArmadillo]; };
-  pgirmess = derive2 { name="pgirmess"; version="1.7.1"; sha256="1jdirknw7hrgjrnpb4va0p58ar5d74vwiyyxvny7synn3bbv8anz"; depends=[boot maptools rgdal rgeos sp spdep splancs]; };
+  pgirmess = derive2 { name="pgirmess"; version="2.0.0"; sha256="1j15spsmx1k2kw6vc4brcinpva3wzw4i78626fb5cdrwb8q34i4y"; depends=[boot sf sp spdep]; };
   pglm = derive2 { name="pglm"; version="0.2-3"; sha256="16ghdgnpwyqgfa6z6gc93bw933dvazb3alv1867cbn7qnp2gaj3j"; depends=[Formula maxLik plm statmod]; };
   pgmm = derive2 { name="pgmm"; version="1.2.5"; sha256="09cpjvhjdncrjs7v2hy6xdqq9p57gd1n8gmaq0p3jmhvrbnsgpfy"; depends=[]; };
   pgnorm = derive2 { name="pgnorm"; version="2.0"; sha256="1k9z7pvmranr8m62v7amc0pj6lwzh3wqi79gg3mflifn1mr6c057"; depends=[]; };
@@ -14129,7 +14181,7 @@ in with self; {
   phenopix = derive2 { name="phenopix"; version="2.4.2"; sha256="0rrp4ch32hzlm727xpwsvfsw7d4qypv7iiq8hrg9az6nb39pbvp7"; depends=[bcp doParallel foreach gtools iterators jpeg plyr raster sp stringr strucchange zoo]; };
   phiDelta = derive2 { name="phiDelta"; version="1.0.1"; sha256="0g1g5516p8i1gfpvsy75rdirib8sx1ki2mbf1cvgsnzh70h72gbv"; depends=[]; };
   phia = derive2 { name="phia"; version="0.2-1"; sha256="0rv2akl5a488vax4sd9wnx765mch4vvcmg3iyxyljzl5kpqh5r00"; depends=[car Matrix]; };
-  philentropy = derive2 { name="philentropy"; version="0.5.0"; sha256="0bs1kk28gjmplnk257cy064hwy360lc378dj4dz3gwsqaj19m7mk"; depends=[dplyr KernSmooth Rcpp]; };
+  philentropy = derive2 { name="philentropy"; version="0.6.0"; sha256="1dpf4hfflp4mcql4na46wzcq1flabkipiwyycz9wj5xbxlmcz2hk"; depends=[KernSmooth poorman Rcpp]; };
   phm = derive2 { name="phm"; version="0.1.2"; sha256="0jm4w2rj80jz24134y8sj6w7f2icdizs644zfbiq77vzfj1mg8i6"; depends=[data_table shiny slam tm]; };
   phonR = derive2 { name="phonR"; version="1.0-7"; sha256="0al2cbynnbvmd90lk1w1g1ppslqq0ng8vbb6bl7m4kqwd2lgv056"; depends=[deldir plotrix splancs]; };
   phonTools = derive2 { name="phonTools"; version="0.2-2.1"; sha256="01i481mhswsys3gpasw9gn6nxkfmi7bz46g5c84m13pg0cv8hxc7"; depends=[]; };
@@ -14146,7 +14198,6 @@ in with self; {
   photobiologySensors = derive2 { name="photobiologySensors"; version="0.5.0"; sha256="122cfy6nsxngd8hnbq5frkgnzrb9fxw83l7mfwk0wy6gx7zsfx5s"; depends=[photobiology]; };
   photobiologySun = derive2 { name="photobiologySun"; version="0.4.1"; sha256="15wp8q29m5c4qplind9098ikxmm1r60lw8cm0pa48lmh33638ia3"; depends=[photobiology]; };
   photobiologyWavebands = derive2 { name="photobiologyWavebands"; version="0.4.5"; sha256="0lvj5birzzjrkcikg515zgxa2gd06bsbr5i575y9ppxw7kbyqga9"; depends=[photobiology]; };
-  photosynthesis = derive2 { name="photosynthesis"; version="2.0.1"; sha256="0drbic4sdx841pzcqvi0gkny7qrnzixlc0wsr6m0llh7pfyl99s6"; depends=[checkmate crayon dplyr furrr future ggplot2 glue gunit magrittr minpack_lm nlme pkgnet purrr rlang stringr tealeaves tidyselect units]; };
   phuassess = derive2 { name="phuassess"; version="1.1"; sha256="0jplj9gih32dllx2hw5aqvc9b94sbrbv66s3a5r8mdbpjh93rhng"; depends=[]; };
   phyclust = derive2 { name="phyclust"; version="0.1-30"; sha256="0fy9q95vmlm9idpax7alhpfwn30gflnc9md72g91jypyxkx5nr7p"; depends=[ape]; };
   phyext2 = derive2 { name="phyext2"; version="0.0.4"; sha256="0j871kgqm9fll0vdgh071z77ib51y8pxxm0ssjszljvvpx1mb8rb"; depends=[ape phylobase]; };
@@ -14170,7 +14221,6 @@ in with self; {
   phyr = derive2 { name="phyr"; version="1.1.0"; sha256="0jvjxvxx2nz9ra9vp00bmm3dxr2am4zs8cvxij8w4jjyskznxc96"; depends=[ape dplyr gridExtra latticeExtra lme4 Matrix mvtnorm nloptr Rcpp RcppArmadillo tidyr]; };
   phyreg = derive2 { name="phyreg"; version="1.0.2"; sha256="0m1psq79zl7h8791pl8g6i0ybda7vgddza8r9mwqhg4sw1q4bzcp"; depends=[]; };
   physiology = derive2 { name="physiology"; version="1.2.1"; sha256="1z7xymwgj7bqn0yvcz3q8pvwhpr5vx5qd0x8sayal1vgpqc0nccb"; depends=[Rcpp]; };
-  physx = derive2 { name="physx"; version="1.0"; sha256="1b6bx08jzfg4pxicawkn013bqrvqkp19pigxl3iwjrqclvi8mx73"; depends=[celestial cubature data_table docore MASS pracma Rcpp]; };
   phytools = derive2 { name="phytools"; version="1.0-1"; sha256="1j0s7ai3mmhsc94m4gka11mnw9ryvrhnf7s8298i21a2xhsmvgxp"; depends=[ape clusterGeneration coda combinat expm maps MASS mnormt nlme numDeriv phangorn plotrix scatterplot3d]; };
   phytotools = derive2 { name="phytotools"; version="1.0"; sha256="049znviv2vvzv23biy1l28axm7bc7biwmq4bnn0cnjqgkk48ysz3"; depends=[FME insol]; };
   piRF = derive2 { name="piRF"; version="0.1.0"; sha256="04k09ylc6hqw57dlv7sfnisn1167dr550y1j9xl7prvlf3jksg06"; depends=[Rdpack]; };
@@ -14178,8 +14228,8 @@ in with self; {
   picante = derive2 { name="picante"; version="1.8.2"; sha256="19savjzj44b7ifdxcp02ynj22z4n4ikq2aipc74ljzy3yykmqmjn"; depends=[ape nlme vegan]; };
   picasso = derive2 { name="picasso"; version="1.3.1"; sha256="1z7zm88wjp7fia7054l7i55f152iddrjj9wbcpcskhc8s6kfg53c"; depends=[MASS Matrix]; };
   pid = derive2 { name="pid"; version="0.50"; sha256="05s3xqf95d4avh7gkr49jsm8jzacbv694c3wgppkkc40zip6vkc7"; depends=[DoE_base FrF2 FrF2_catlg128 ggplot2 png]; };
-  piecemaker = derive2 { name="piecemaker"; version="1.0.0"; sha256="0qm9bbsxfmiycbhappzpm98arlwnbck29c75xjyg03m1dbfykvnk"; depends=[purrr rlang stringi stringr]; };
-  piecepackr = derive2 { name="piecepackr"; version="1.9.2"; sha256="01vwp0h4955g9vbblsiq1m4mgc6ilx6iryfv07n81yd6b6s0690d"; depends=[backports gridGeometry grImport2 jpeg png purrr R6 stringr tibble]; };
+  piecemaker = derive2 { name="piecemaker"; version="1.0.1"; sha256="1i9k88i0rqsbf2564ims69x1pind1xgvljaf9smnnjpi77442jiw"; depends=[rlang stringi stringr]; };
+  piecepackr = derive2 { name="piecepackr"; version="1.10.1"; sha256="189dqwh7kkgcvw2j8bqqff2r9si6i89avip0zdm1h941akc66kdv"; depends=[gridGeometry grImport2 jpeg png purrr R6 rlang stringr tibble]; };
   piecewiseSEM = derive2 { name="piecewiseSEM"; version="2.1.2"; sha256="1qxwc1drx26p4cgymrfjmg5i7ypl7gddv40virkpmc0qaag9pq36"; depends=[car DiagrammeR emmeans igraph lme4 MASS multcomp nlme]; };
   piggyback = derive2 { name="piggyback"; version="0.1.1"; sha256="1d448hkk772d21ix1l1cgq2a0spyjnppyrn1myjcv3dcrfxndn83"; depends=[clisymbols crayon fs gh httr jsonlite lubridate memoise]; };
   pillar = derive2 { name="pillar"; version="1.7.0"; sha256="1fqk18vc9ashf12gdqkdi6n1nj5lh324vwhgiib3b2fcb2bghhbq"; depends=[cli crayon ellipsis fansi glue lifecycle rlang utf8 vctrs]; };
@@ -14219,20 +14269,21 @@ in with self; {
   pkdata = derive2 { name="pkdata"; version="0.1.0"; sha256="1kmcalidw2zidd6i8ds0k057b3187by2k8z6764va43d5garbbcv"; depends=[lubridate]; };
   pkgKitten = derive2 { name="pkgKitten"; version="0.2.2"; sha256="0rappcycpkdfdivzl6nn3jq1f42r9jqqmkb33asvhmpjs35fyc3s"; depends=[]; };
   pkgbuild = derive2 { name="pkgbuild"; version="1.3.1"; sha256="0j6v5nbp8kg1m3j999gd1qsbdmqcqm1mf28ngmm177miwv8q4skw"; depends=[callr cli crayon desc prettyunits R6 rprojroot withr]; };
-  pkgcache = derive2 { name="pkgcache"; version="1.3.0"; sha256="0wclbg0q5gx6dsy58979j3nzpfd6b6y4gxzrihlw37zf7c54cpxx"; depends=[assertthat callr cli curl digest filelock glue jsonlite prettyunits processx R6 rappdirs rlang tibble uuid]; };
+  pkgcache = derive2 { name="pkgcache"; version="2.0.1"; sha256="0krgsisnm53vxs4bbz7dm968s9322i6rqdj3bsykqm1hdy669p8s"; depends=[callr cli curl filelock glue jsonlite prettyunits processx R6 rappdirs]; };
   pkgcond = derive2 { name="pkgcond"; version="0.1.1"; sha256="03a4blq3niw1mljzylamvmr3l43czqlww4i6n7zb0dlym9x8gs1w"; depends=[assertthat]; };
   pkgconfig = derive2 { name="pkgconfig"; version="2.0.3"; sha256="0l1qph8zyi2sic3k2qcd7vlfl7rzfh1q7z7zvjkl5f7y1x2fy3rk"; depends=[]; };
-  pkgdepends = derive2 { name="pkgdepends"; version="0.2.0"; sha256="152dpxrsdw5rp0zi0h65p6q0a2hs076wbjpslj5hhqwnwphdpbsr"; depends=[callr cli crayon curl desc filelock glue jsonlite lpSolve pkgbuild pkgcache prettyunits processx ps R6 rematch2 rprojroot tibble withr zip]; };
+  pkgdepR = derive2 { name="pkgdepR"; version="1.0.0"; sha256="098fcj1s5rcjxmn57449f4zk9z2w4mqwxkvxxjazd1nj7wa45z8p"; depends=[dplyr magrittr scales viridisLite visNetwork]; };
+  pkgdepends = derive2 { name="pkgdepends"; version="0.3.0"; sha256="1pzfm9k8s7w2jacachppgznf8562dshzm23yg7vwd37b7wvr6qxn"; depends=[callr cli crayon curl desc filelock glue jsonlite lpSolve pkgbuild pkgcache prettyunits processx ps R6 rprojroot withr zip]; };
   pkgdown = derive2 { name="pkgdown"; version="2.0.2"; sha256="11grx7a2rz6b4kwspm7c8crjav677c22hysnp4bkwh5g8kr5nm2h"; depends=[bslib callr crayon desc digest downlit fs httr jsonlite magrittr memoise purrr ragg rlang rmarkdown tibble whisker withr xml2 yaml]; };
   pkgfilecache = derive2 { name="pkgfilecache"; version="0.1.4"; sha256="1fr650yb4wjz6flq4f8p2p5bck5q4kkrhlhlwjn832payq9p4zsp"; depends=[downloader rappdirs]; };
   pkggraph = derive2 { name="pkggraph"; version="0.2.3"; sha256="1isiywgm20rypc5qr03p0k7lis76zzd96x5ncbvia644d2n13brm"; depends=[curl data_table dplyr ggnetwork ggplot2 htmltools igraph intergraph Matrix network networkD3 plyr RColorBrewer tibble]; };
   pkglite = derive2 { name="pkglite"; version="0.2.0"; sha256="1qjym8kkbmzdz46xn6a4ir8b07ws30s3m7zdrgh98nf0vrv9bkj8"; depends=[cli magrittr remotes]; };
   pkgload = derive2 { name="pkgload"; version="1.2.4"; sha256="03yr9mswx9nij27bp21q6c533zx310xwzhwm52dwr7554k42p4fn"; depends=[cli crayon desc rlang rprojroot rstudioapi withr]; };
   pkgmaker = derive2 { name="pkgmaker"; version="0.32.2"; sha256="14ggsd24n5g5rvn0wl4w90ipxzmywqikh28llj89q6kpxwnv4iff"; depends=[assertthat codetools digest registry stringr withr xtable]; };
-  pkgndep = derive2 { name="pkgndep"; version="1.1.0"; sha256="1fd42v91z2ad6h7vcwy9rbg1s886laapz9n2737vdxywc00ylidb"; depends=[BiocManager brew ComplexHeatmap GetoptLong hash]; };
+  pkgndep = derive2 { name="pkgndep"; version="1.1.1"; sha256="0dr5b3ibhvj29f9yvi0v3k41ac6krf85ghxswwr6p4m9vsblmdfx"; depends=[BiocManager BiocVersion brew ComplexHeatmap GetoptLong GlobalOptions hash]; };
   pkgnet = derive2 { name="pkgnet"; version="0.4.2"; sha256="0y1b5psn680agsnyiy8yr5m5pzb1y6wsa7gms43nwgj6jjmmvgvv"; depends=[assertthat covr data_table DT futile_logger glue igraph knitr magrittr R6 rlang rmarkdown visNetwork]; };
   pkgnews = derive2 { name="pkgnews"; version="0.0.2"; sha256="0kqyy1fchpcyclxh6gly23pkfcf5b3hpsq1bhj4ykzbl4bc002h2"; depends=[]; };
-  pkgsearch = derive2 { name="pkgsearch"; version="3.0.3"; sha256="1icn8qw6jpcgbmidqpml4ifpv1i5z2i4hp6b0gpb1xk9dlf6mnl2"; depends=[assertthat curl jsonlite parsedate prettyunits tibble]; };
+  pkgsearch = derive2 { name="pkgsearch"; version="3.1.0"; sha256="1xr4k7x3qhny9qpn9sr2img6hakp3k2qy85l1hsirnz7kjk4dgbn"; depends=[curl jsonlite parsedate prettyunits]; };
   pkgverse = derive2 { name="pkgverse"; version="0.0.1"; sha256="0lsv7s9vsjvfpy19nxbdlbm363j01wwqqnrp0nlrik590hfq4w83"; depends=[devtools usethis]; };
   pkmon = derive2 { name="pkmon"; version="1.0"; sha256="0j2v4zlf7vgy5gld29xiii15m9i85cpiwc25rmzjm02cz2p32c72"; depends=[]; };
   pkr = derive2 { name="pkr"; version="0.1.2"; sha256="0m045dlcq3rls1w0smy4jvk3c57ckpqdv8xnz261k1gnnyjmz1k2"; depends=[binr foreign forestplot rtf]; };
@@ -14249,7 +14300,7 @@ in with self; {
   plantecophys = derive2 { name="plantecophys"; version="1.4-6"; sha256="1qf9a38n8nvvz8dvqra9mdsmkbkhxymjrin0wfis8g1ndf1f406c"; depends=[]; };
   plantecowrap = derive2 { name="plantecowrap"; version="1.0.4"; sha256="0syxf63xy5whzw03ys5cxyw7689mr7ihgmqddv53jb8rlbwm84p8"; depends=[ggplot2 minpack_lm plantecophys tidyr]; };
   plaqr = derive2 { name="plaqr"; version="2.0"; sha256="15pdb57123m3cahvcsyrrvxjwxvs2f389yxip91gjxn68jf6cx1l"; depends=[quantreg]; };
-  plater = derive2 { name="plater"; version="1.0.3"; sha256="1sjf1wkpgz5pa5z149bj40haa4srvf4a66rh3ij25bvgasslshfq"; depends=[dplyr rlang]; };
+  plater = derive2 { name="plater"; version="1.0.4"; sha256="0k2ha44ydcf180y44cgxd1haq55k96df39lahs6fji04imh75fii"; depends=[dplyr rlang]; };
   platetools = derive2 { name="platetools"; version="0.1.5"; sha256="0qzq7r8ff27cwmxw649jvk9irm6ny2mz4ylmrpzdkahkskfb5arj"; depends=[ggplot2 RColorBrewer]; };
   platowork = derive2 { name="platowork"; version="0.0.1"; sha256="09ps20lqli50nhhd3368fwf8cjsbshn428fbbbckbxnynxk5cwsy"; depends=[]; };
   plde = derive2 { name="plde"; version="0.1.2"; sha256="1g1b1sgyfxgfkjcr3sdkan8jd6r7yyi0izc83vyj11bdk08jx22h"; depends=[]; };
@@ -14263,7 +14314,7 @@ in with self; {
   plink = derive2 { name="plink"; version="1.5-1"; sha256="0rn2i9i8af9aq0xgxhpcdchs2952lq2d2sg8x3js0zi3vcml76k0"; depends=[lattice MASS statmod]; };
   plinkFile = derive2 { name="plinkFile"; version="0.1.0"; sha256="0803hp822v9rqh4h437q2nmab19yamc4dbyi6iimm67ykp0d5xss"; depends=[]; };
   plinkQC = derive2 { name="plinkQC"; version="0.3.4"; sha256="0l5gf7wf33fhzby0n2qzph02v7an2gj2dji1i129hxsxqnynx7dy"; depends=[cowplot data_table dplyr ggforce ggplot2 ggrepel igraph optparse R_utils sys UpSetR]; };
-  plm = derive2 { name="plm"; version="2.6-0"; sha256="16i31p9r58i4hrhllgx1m6n9c1rbjpxmhb3s5lbfp68iss8h65yv"; depends=[bdsmatrix collapse Formula lattice lmtest MASS maxLik nlme Rdpack sandwich zoo]; };
+  plm = derive2 { name="plm"; version="2.6-1"; sha256="1sanrpphdj6pc9f0xcixm19kkr0nl04zhywf7hklmadby4372318"; depends=[bdsmatrix collapse Formula lattice lmtest MASS maxLik nlme Rdpack sandwich zoo]; };
   plmm = derive2 { name="plmm"; version="0.1-1"; sha256="1dfxd1mqqjy2mf7qc6mh4wx5ya9q8fkqgrf01apisb66xxx5zya7"; depends=[Formula nlme sm]; };
   pln = derive2 { name="pln"; version="0.2-2"; sha256="03jjmfr1dwz6p652y917g9rv2alyam9ws6xh9ig02d3w78b0rsv9"; depends=[]; };
   plogr = derive2 { name="plogr"; version="0.2.0"; sha256="0a8dhzlna79ggyhfr0nncgh15a9n6r0dsz664pz0ah323wpblqqf"; depends=[]; };
@@ -14303,12 +14354,12 @@ in with self; {
   plsdepot = derive2 { name="plsdepot"; version="0.1.17"; sha256="1i00wxr451xpfy6dnvcm11aqf9106jsh5hj7gpds22ysgm4iq5w4"; depends=[]; };
   plsdof = derive2 { name="plsdof"; version="0.3-0"; sha256="1axi8bailiq9mjs0dvasy895b7c62114hdsaygxwz4zymfa6a3ny"; depends=[MASS]; };
   plsgenomics = derive2 { name="plsgenomics"; version="1.5-2"; sha256="1pvb50nv6jc99bm2hsxpzazg26y49yi24wwwim5xcjj6j1szbip4"; depends=[boot fields MASS plyr reshape2 RhpcBLASctl]; };
-  plsmod = derive2 { name="plsmod"; version="0.1.2"; sha256="08flqzgdsyq6zff9scqij1xfsg04rkhc46vw64lz952340c8kxfr"; depends=[dplyr generics magrittr mixOmics parsnip purrr rlang tibble tidyr]; };
+  plsmod = derive2 { name="plsmod"; version="0.2.0"; sha256="1xw3m4z78g1ms4kl6k5jh41q8ip4v3ndm91jv0j9lczb2zqhnvxs"; depends=[dplyr generics magrittr mixOmics parsnip purrr rlang tibble tidyr]; };
   plsmselect = derive2 { name="plsmselect"; version="0.2.0"; sha256="044mwdqv5vw0apmx3yhn6xkdmw6baalvb8c6hhmawcs279kwi1m9"; depends=[dplyr glmnet mgcv survival]; };
   plsr = derive2 { name="plsr"; version="0.0.1"; sha256="0l413m49zjpb35v0zw8dlxn53nh7fghinbmwfmldl3jgdvay2s7x"; depends=[boot ggplot2 reshape2 shiny]; };
   pltesim = derive2 { name="pltesim"; version="1.0"; sha256="0mvqp8di2gwhd9wc9kvnnpxd3hkr9b9lj6g5qlkqcbrgkq6fjahs"; depends=[coreSim ggplot2]; };
   plu = derive2 { name="plu"; version="0.2.1"; sha256="12m2mb5h5xniy870akmbzgjp6019pnjjzrdkifmlri8vhbyilvh9"; depends=[backports lifecycle]; };
-  plugdensity = derive2 { name="plugdensity"; version="0.8-3"; sha256="1jdmq4kbs8yzgkf9f5dc7c8c52ia68fgavw7nsnc2hnz5ylw1qy9"; depends=[]; };
+  plugdensity = derive2 { name="plugdensity"; version="0.8-4"; sha256="0kj7vixfyg4nxq05xgmrhsjd56myz2s1jplhbkmq25kf2r9pb89y"; depends=[]; };
   plumber = derive2 { name="plumber"; version="1.1.0"; sha256="0rwr3vx0y2n70bz4aqd9iag9s0ksz4vlvsw16qz84wfcky1b79pi"; depends=[crayon ellipsis httpuv jsonlite lifecycle magrittr mime promises R6 rlang sodium stringi swagger webutils]; };
   plumberDeploy = derive2 { name="plumberDeploy"; version="0.2.1"; sha256="0icl35wck94scjyqw6di2sl6fq7zlvd8hm13fw79iqr0wyrich0r"; depends=[analogsea jsonlite lifecycle ssh]; };
   plumbertableau = derive2 { name="plumbertableau"; version="0.1.0"; sha256="1wkd15l5s7fs1nzyl83s41wbrx87yhklpw1fb6f3llrgbjn8rd77"; depends=[curl debugme glue htmltools httpuv httr jsonlite knitr later magrittr markdown plumber promises rlang stringi urltools]; };
@@ -14322,21 +14373,21 @@ in with self; {
   pmcgd = derive2 { name="pmcgd"; version="1.1"; sha256="1pybzvyjmzpcnxrjsas06diy3x83i1r5491s6ccyr63l56hs55d5"; depends=[mixture mnormt]; };
   pmclust = derive2 { name="pmclust"; version="0.2-1"; sha256="0wldf0bj406qxmlc7hsbamiak7qcwf8ixng9dfkswh511m3p05jd"; depends=[MASS pbdMPI]; };
   pmd = derive2 { name="pmd"; version="0.2.1"; sha256="14xra1d6qx6gxnpiwfsxz200qhmm7s4zy2j8h5kwbvbpnykdyr5c"; depends=[data_table enviGCMS igraph RColorBrewer]; };
-  pmetar = derive2 { name="pmetar"; version="0.3.2"; sha256="1vx80pzwks0czvsyh48svvm2gb4jyz1m2r5l60dnia07kpz9wrjd"; depends=[curl dplyr httr lubridate magrittr RCurl stringr tidyr]; };
+  pmetar = derive2 { name="pmetar"; version="0.3.3"; sha256="0vfsmdkw62ahhic2gqgsbyphnx2phjkswpn3ymb9gdpnzy45aq6h"; depends=[curl dplyr httr lubridate magrittr RCurl stringr tidyr]; };
   pmhtutorial = derive2 { name="pmhtutorial"; version="1.5"; sha256="1hcw8hwpsivbhz86lnzy08q9n8vahnq8f7rmi4xkmg6b44582cqx"; depends=[mvtnorm Quandl]; };
   pmlbr = derive2 { name="pmlbr"; version="0.2.0"; sha256="1f0i52ws8ywkz4c0s3ax3qa3qinqhv1k9qlghkama3b027zkl9zn"; depends=[FNN]; };
   pmledecon = derive2 { name="pmledecon"; version="0.1.0"; sha256="0bpfx3lkg7wl7b189gl1m2xz72zna98wiw98yx3hvk6ndv55jy03"; depends=[rmutil splitstackshape]; };
-  pmml = derive2 { name="pmml"; version="2.5.1"; sha256="1spi8xfj6ab7niidlalnpwfd16800xdvambkmizjdh5w9i5hklzk"; depends=[stringr XML]; };
+  pmml = derive2 { name="pmml"; version="2.5.2"; sha256="1faad5yqyh6dx40056w74vlyw4wxjgh41jv8b2vf2gh26laf22kk"; depends=[stringr XML]; };
   pmmlTransformations = derive2 { name="pmmlTransformations"; version="1.3.3"; sha256="0315kb5x04pidpzr04yaxyynp0mz4ilzp7vkspq4agjkds5hyc88"; depends=[]; };
+  pmparser = derive2 { name="pmparser"; version="1.0.4"; sha256="0qf71w6m6cgmx2isizadihjxildqrxygm8vm906fb13ydxslj1xq"; depends=[data_table DBI foreach glue iterators jsonlite R_utils RCurl withr xml2]; };
   pmpp = derive2 { name="pmpp"; version="0.1.1"; sha256="1srmkih6zsyf8yf1f045xy1afcz0if6nf1ncslgrq6rgm7330lkw"; depends=[data_table dplyr ggplot2 magrittr MASS Matrix minqa moments plm pracma]; };
   pmr = derive2 { name="pmr"; version="1.2.5"; sha256="0dq97dfjmgxlhr3a2n20vyyzfmamcicw878hdxpw31lw02xs6yls"; depends=[]; };
-  pmsampsize = derive2 { name="pmsampsize"; version="1.1.1"; sha256="09z1bhqk451jw5knl58mr3hs1il66hq40g2a9960gz55a8jj6fva"; depends=[]; };
+  pmsampsize = derive2 { name="pmsampsize"; version="1.1.2"; sha256="0msbkjpzssgkc4ndx9s1rb8mgg07bx7fdlq48j5s8ak8n1gwdkyk"; depends=[]; };
   pmultinom = derive2 { name="pmultinom"; version="1.0.0"; sha256="0p2amb3y4jl24r21fii1qpmdbn5pfgywrx8k7x1jxpg49rk7k0rp"; depends=[fftw]; };
   pmwg = derive2 { name="pmwg"; version="0.2.0"; sha256="1f1r66ml24ys7nx5558c189a4gcaqkr16y87dmi4ravick9l5yfi"; depends=[checkmate coda condMVNorm MASS MCMCpack mvtnorm]; };
   pmxTools = derive2 { name="pmxTools"; version="1.2.1"; sha256="0r5y09ab6k31d7fbd5pn8lzaafq1ix2lrjci1bsvg0wwcxmdipw6"; depends=[chron data_tree DiagrammeR dplyr ggplot2 ggrepel gridExtra magrittr MASS stringr xml2]; };
   png = derive2 { name="png"; version="0.1-7"; sha256="0g2mcp55lvvpx4kd3mn225mpbxqcq73wy5qx8b4lyf04iybgysg2"; depends=[]; };
   pnmtrem = derive2 { name="pnmtrem"; version="1.3"; sha256="0053gg368sdpcw2qzydpq0c5v2cxdlwgf5k68cbw0yx41csjgvz0"; depends=[MASS]; };
-  pnn = derive2 { name="pnn"; version="1.0.1"; sha256="1s6ib60sbdas4720hrsr5lsszsa474kfblqcalsb56c84gkl42ka"; depends=[]; };
   poLCA = derive2 { name="poLCA"; version="1.4.1"; sha256="0bknnndcxsnlq6z9k1vbhqiib1mlzlx4badz85kc7a3xbrdrfs9f"; depends=[MASS scatterplot3d]; };
   pocketapi = derive2 { name="pocketapi"; version="0.1"; sha256="0n4fyx4ldm14zy3pz7gygwhahi3p25misvxlmy8l9kqqr51fg26a"; depends=[dplyr glue httr jsonlite magrittr purrr tibble usethis]; };
   pocrm = derive2 { name="pocrm"; version="0.13"; sha256="0d4iggxjbl95fz872q9v1wr30nga39sdd5dvwa2zrrm73ak81cz3"; depends=[dfcrm nnet]; };
@@ -14353,20 +14404,20 @@ in with self; {
   poisDoubleSamp = derive2 { name="poisDoubleSamp"; version="1.1"; sha256="13wyj9jf161218y4zjv2haavlmanihp9l59cvh7x8pfr9dh2dwr8"; depends=[Rcpp]; };
   poisFErobust = derive2 { name="poisFErobust"; version="2.0.0"; sha256="1i6y3745i385y3r45i0xk7ciw1k6brmn709k5qhx8xphq0k4an5n"; depends=[data_table glmmML]; };
   poisbinom = derive2 { name="poisbinom"; version="1.0.1"; sha256="0mjxg0s3nck7qrmq4bbrhwxfwr6fqml54s9k8q1mkfzlifa7qyf7"; depends=[Rcpp]; };
-  poismf = derive2 { name="poismf"; version="0.3.1-3"; sha256="0li2v84rvyk413h06393ccq5rp0mjy8359frq83k94ii946kf2zl"; depends=[Matrix]; };
+  poismf = derive2 { name="poismf"; version="0.4.0"; sha256="0hrmirwri30p68m5l6icjkiygkb8950cl6m95xq9caybkl6yjpck"; depends=[Matrix]; };
   poisson = derive2 { name="poisson"; version="1.0"; sha256="1diyf1b84sr6iai3ghd3kcp6fc6w7fan49wzs1lzvxxsmp15ag2d"; depends=[]; };
   poisson_glm_mix = derive2 { name="poisson.glm.mix"; version="1.2"; sha256="0328m279jfa1fasi9ha304k4wcybzr7hldww7wn0cl7anfxykbv8"; depends=[]; };
   poissonMT = derive2 { name="poissonMT"; version="0.3-5"; sha256="14qkc8qz3423b13gp6gsp8cbb1nv9wwjjfa4i9zc15qy5i99ha26"; depends=[checkmate MASS robcbi robustbase]; };
-  poissonreg = derive2 { name="poissonreg"; version="0.1.1"; sha256="0ip17j69b7qfyb691f3qlwydp0qayxrbww63nq8jnh8b92lvvxxs"; depends=[dplyr generics glue parsnip purrr rlang tibble tidyr]; };
+  poissonreg = derive2 { name="poissonreg"; version="0.2.0"; sha256="0j6435gqc3cmcx7bfvj926s8hyhkiksjavr69iwbdlw0gw3s20j3"; depends=[dplyr generics glue parsnip purrr rlang tibble tidyr]; };
   poistweedie = derive2 { name="poistweedie"; version="1.0.1"; sha256="0236cz8fn3la7df8mk1la8hmr0zzjc1majnq8p0c8grma833j6kp"; depends=[]; };
   poker = derive2 { name="poker"; version="0.8.8"; sha256="14ik77440z22k4kwq0p1fn7adzi0p8mh8j8hd7ayinvrab4b5r85"; depends=[]; };
   polaroid = derive2 { name="polaroid"; version="0.0.1"; sha256="0m3jbiz4n7mgbbdkd28m6dqsclyjcgshpxd6ws8df7zchx7fch07"; depends=[argonDash argonR colourpicker ggplot2 hexSticker png shiny shinyWidgets]; };
   policytree = derive2 { name="policytree"; version="1.1.1"; sha256="0xk3l5cy46br73g8m1gm3dbim72asq0wfsa50mnchkhk42rxv6a3"; depends=[BH grf Rcpp]; };
   polimetrics = derive2 { name="polimetrics"; version="1.2.1.14"; sha256="0zzqzcfmvb6a9lav5sdgzhx4637r068q3kyjqk1ykdjg2d7s7lrv"; depends=[car dplyr formula_tools ggplot2 gplots MASS purrr rlang rstatix stringr tidyverse]; };
   poliscidata = derive2 { name="poliscidata"; version="2.3.0"; sha256="1ywfhksc6gcc2xk5lp6s8nn4wib92sv7p3wq92dzabf75q6mscix"; depends=[abind car descr gplots Hmisc plotrix plyr survey weights xtable]; };
-  polished = derive2 { name="polished"; version="0.5.0"; sha256="1gpk16lm6il4hdbw7rcgdf02a4npmmf68cx5zv8hv5k2j31ixq0h"; depends=[automagic digest dplyr DT htmltools httr jose jsonlite lubridate purrr R6 rlang shiny shinycssloaders shinydashboard shinyFeedback shinyjs shinyWidgets stringr tibble tidyr uuid yaml]; };
+  polished = derive2 { name="polished"; version="0.6.1"; sha256="08n8pf1gqd2fyar9mawlvakg9nj715nx4vfnm8ywzb88gmkr64fg"; depends=[automagic digest dplyr DT htmltools httr jose jsonlite lubridate purrr rlang rmarkdown shiny shinycssloaders shinydashboard shinyFeedback shinyjs shinyWidgets stringr tibble tidyr uuid yaml]; };
   polite = derive2 { name="polite"; version="0.1.1"; sha256="15hiifaf63hx0xn453lr0xhdnxqifrgyrgrymp0a9k3j7qja59jk"; depends=[here httr magrittr memoise ratelimitr robotstxt rvest usethis]; };
-  politeness = derive2 { name="politeness"; version="0.8.5"; sha256="05lwzz6x5afycha0gikffr21z6rplvlnrsi3x96pg8n6mfr8xgam"; depends=[data_table ggplot2 glmnet quanteda spacyr stringi stringr textir tm]; };
+  politeness = derive2 { name="politeness"; version="0.8.6"; sha256="12h7gn8br5mrbp3pyls7ljyrqmf8b110kqdz9vspbc1p4w1g6rz2"; depends=[data_table ggplot2 glmnet quanteda spacyr stringi stringr textir tm]; };
   pollen = derive2 { name="pollen"; version="0.82.0"; sha256="0vmggbvacpbdz4zvn3cinip1b0ac44vgbydmsk6698hwgx9iwmfp"; depends=[dplyr lubridate purrr]; };
   pollimetry = derive2 { name="pollimetry"; version="1.0.1"; sha256="09zmcwlgzl4fnkdg2m424ibv3izzrm595c7pi4mc3bd1g8sa2ypn"; depends=[brms repmis]; };
   pollster = derive2 { name="pollster"; version="0.1.3"; sha256="1b5m5g9v8xbs3zz6as4xvzwaqr39477adi4vzxmjvxjsaij6ih5h"; depends=[dplyr forcats labelled rlang stringr tidyr]; };
@@ -14374,7 +14425,7 @@ in with self; {
   polspline = derive2 { name="polspline"; version="1.1.19"; sha256="0rhzf735hmbqfn2xbgcln4sqx7m9far72g5gq9mghgkw016kqglm"; depends=[]; };
   polyCub = derive2 { name="polyCub"; version="0.8.0"; sha256="1f63ikiz988hdihvgd5f2p897qfgv54ysgp2h8avmlc4cj6hgkgl"; depends=[sp]; };
   polyMatrix = derive2 { name="polyMatrix"; version="0.9.16"; sha256="13amrjl0nsyz6d9c9xxgnlkhdiicy8rx27ds5k47r8x48386vz14"; depends=[Matrix polynom]; };
-  polyRAD = derive2 { name="polyRAD"; version="1.5"; sha256="12677bbp9hvdr6nkqnl3gi3db2gn7wjvwwm773bhxln9ymh3jnw0"; depends=[fastmatch pcaMethods Rcpp stringi]; };
+  polyRAD = derive2 { name="polyRAD"; version="1.6"; sha256="1xvhjzryf35vrnf6iz82g14vbmbbm4g88il02ss5pmvsgxq70x5n"; depends=[fastmatch pcaMethods Rcpp stringi]; };
   polySegratio = derive2 { name="polySegratio"; version="0.2-5"; sha256="0djw49mbhd7x6jr0f5qkb9akw3fw3ax4w9xv8iwa5f65q5gbxpdf"; depends=[gdata]; };
   polySegratioMM = derive2 { name="polySegratioMM"; version="0.6-4"; sha256="162xj52566kaxgfk7c14170xx07isyjmqb9skvhrdg7sz20lc3l1"; depends=[coda gtools lattice polySegratio]; };
   polyaAeppli = derive2 { name="polyaAeppli"; version="2.0"; sha256="0kyz3ap92xz7aqyviyrpggfmicy1gybrx7y19djsmixcwz53zqch"; depends=[]; };
@@ -14393,7 +14444,8 @@ in with self; {
   polywog = derive2 { name="polywog"; version="0.4-1"; sha256="02qk1cyvkd77mwlvhj1zzzi0bmy7qxz29j2v730wp7rz4w7h5x5n"; depends=[foreach Formula glmnet iterators Matrix miscTools ncvreg Rcpp stringr]; };
   pom = derive2 { name="pom"; version="1.1"; sha256="02jv19apn0kmp1ric2cxajlaad2fmsz4nm4izd2c3691vzas7l83"; depends=[matrixcalc]; };
   pomcheckr = derive2 { name="pomcheckr"; version="0.1.1"; sha256="0fm2v388ya7v4vrb5rvilghlf49d15jlwz0isf95ldr81a55m9ij"; depends=[assertthat dplyr ggplot2 magrittr rlang stringr tidyr]; };
-  pomdp = derive2 { name="pomdp"; version="0.99.3"; sha256="0mj2k3s69acgwl00jknxy9ywb73kgqxv5r7yqjlxxsnlp8rixla4"; depends=[igraph]; };
+  pomdp = derive2 { name="pomdp"; version="1.0.0"; sha256="1wj84qj7xssnw0a9985nr529i93z827b1js5i8mdsgxp8fdl1dgd"; depends=[igraph pomdpSolve]; };
+  pomdpSolve = derive2 { name="pomdpSolve"; version="1.0.0"; sha256="0iqpp1y8gz3ihifgln7b5xmwjrvripmkkwg6mr4938yqv7103mz1"; depends=[]; };
   pomodoro = derive2 { name="pomodoro"; version="3.3.0"; sha256="170lvp27gyn189kcpn7nmnkfq2pj6i1ihxqjnf37h7m74msn64si"; depends=[caret dplyr gbm ipred pROC randomForest readr tibble]; };
   pomp = derive2 { name="pomp"; version="4.1"; sha256="1yv29iqzzqdfr34z98x0l8j3s3c45jhaqvb83njv996g11wxbkw4"; depends=[coda deSolve digest magrittr mvtnorm plyr reshape2]; };
   pompom = derive2 { name="pompom"; version="0.2.1"; sha256="09jy4lrb2p71yk604ndfhqfz6znlc3bq72k42f0d1i1a8g3by8h6"; depends=[ggplot2 lavaan qgraph reshape2]; };
@@ -14411,7 +14463,7 @@ in with self; {
   popPyramid = derive2 { name="popPyramid"; version="0.1.1"; sha256="1fvq63d0pjhpzyf6pb2v5w9wy0pskiv2n07jipg98bgyiih1w584"; depends=[dplyr ggplot2 tibble]; };
   popRF = derive2 { name="popRF"; version="1.0.0"; sha256="0w3w1ffyy5b8glviib7ryjqzhmfp5aw6am3z8qpvis6l745p7vgh"; depends=[doParallel foreach gdalUtils plyr quantregForest randomForest raster]; };
   popReconstruct = derive2 { name="popReconstruct"; version="1.0-6"; sha256="0nmf93dy2qf7z9mafpy99ry53aapbxlismn7drn732r8gvravapx"; depends=[coda]; };
-  popbayes = derive2 { name="popbayes"; version="1.0"; sha256="01p0highanjqdslbavykx67ss7w7f5xwczqx1l5pw4gkrvngm992"; depends=[R2jags usethis]; };
+  popbayes = derive2 { name="popbayes"; version="1.1"; sha256="04vzz214lrdkzgj8yksb8r81h1mgnbq6pz3r7c115cy4dn0f2m1f"; depends=[R2jags usethis]; };
   popbio = derive2 { name="popbio"; version="2.7"; sha256="02dbb2sinn1n8a9dg8lvf35sc8hb14c90mjymz2gk64xdysf0m2j"; depends=[]; };
   popdemo = derive2 { name="popdemo"; version="1.3-1"; sha256="0xvqp71spqh5khi2gdzxmj8pp71i6l2qpcgcw8s9xbqwx9w905mq"; depends=[expm MCMCpack]; };
   popgenr = derive2 { name="popgenr"; version="0.2"; sha256="164dhizka0yadzihbjqkfs5p0hknw966mq0grigs7r9ppbq9kajh"; depends=[]; };
@@ -14433,7 +14485,7 @@ in with self; {
   postHoc = derive2 { name="postHoc"; version="0.1.3"; sha256="1l7r9md9iyav5vvjykpsnqv9whspzcmnppfpqm6qy5s5vk6b8zfd"; depends=[igraph multcomp]; };
   postcards = derive2 { name="postcards"; version="0.2.3"; sha256="0kc8nbrqw5h14qw47rxl20yz9q0s8gk2g3lg7kcgsx7f1q514qsw"; depends=[rmarkdown rstudioapi]; };
   posterdown = derive2 { name="posterdown"; version="1.0"; sha256="13plrrnylw3yldm0md1gr5drccfjk9f2wwlhz6lrmb3px7w5nqs0"; depends=[pagedown rmarkdown yaml]; };
-  posterior = derive2 { name="posterior"; version="1.2.0"; sha256="11j3jgk8mykicqi77a6frn0gck7fx0i6sl6g774sqj44m48ig81b"; depends=[abind checkmate distributional matrixStats pillar rlang tensorA tibble vctrs]; };
+  posterior = derive2 { name="posterior"; version="1.2.1"; sha256="1qdg22l868daqg2axr36szl1m9z0rfpgx8zmv1x1xwm1hmlf0mxp"; depends=[abind checkmate distributional matrixStats pillar rlang tensorA tibble vctrs]; };
   postinfectious = derive2 { name="postinfectious"; version="0.1.0"; sha256="1v327zxxiwc1cdksk6s39lkkgck5dxg169pp3jiqmm7xs35dcl6y"; depends=[]; };
   postlightmercury = derive2 { name="postlightmercury"; version="1.2"; sha256="1345ckp50jplcdqp3a250c6mhapqh9322jzpxj5dyqmbg2nmgp9i"; depends=[crul jsonlite purrr rvest tibble xml2]; };
   postlogic = derive2 { name="postlogic"; version="0.1.0.1"; sha256="11bpmfn375zpyg90dh44h86cvppzri1smmkn26jyydqjz74f4q9w"; depends=[]; };
@@ -14479,8 +14531,7 @@ in with self; {
   prLogistic = derive2 { name="prLogistic"; version="1.2"; sha256="1abwz7nqkz2qbyqyr603kl9a3rkad3f4vxhck6a9kl80xrmfrj9s"; depends=[boot Hmisc lme4]; };
   prWarp = derive2 { name="prWarp"; version="1.0.0"; sha256="1rx9yby7xwa2bgqa6a1zllan6qfchgfrg2waadmwfmjhcp8qb1mj"; depends=[Morpho]; };
   prabclus = derive2 { name="prabclus"; version="2.3-2"; sha256="0hg4d7y1w18jpgvw10z8833bbbcnlkwiasx0wh6iwa2pnnybq8gl"; depends=[MASS mclust]; };
-  pracma = derive2 { name="pracma"; version="2.3.6"; sha256="1pmqk7b6c600v6pn0s047p3msl13azwk611zvh05w5f993yq7b0p"; depends=[]; };
-  pragma = derive2 { name="pragma"; version="0.1.3"; sha256="1n30a346pph4d8cj4p4qx2l6fnwhkxa8yxdisx47pix376ljpjfx"; depends=[]; };
+  pracma = derive2 { name="pracma"; version="2.3.8"; sha256="0r17siivm37k4gp253v9mlg5m7cwqp85h9kk2hbp2wkf81ad80i3"; depends=[]; };
   prais = derive2 { name="prais"; version="1.1.2"; sha256="16h3771lr6vn0g92bfpdq7r3wpdkspbhmrl5948p4isc5qxy2cgx"; depends=[lmtest pcse sandwich]; };
   praise = derive2 { name="praise"; version="1.0.0"; sha256="1gfyypnvmih97p2r0php9qa39grzqpsdbq5g0fdsbpq5zms5w0sw"; depends=[]; };
   praktikum = derive2 { name="praktikum"; version="0.1"; sha256="0kkydgglvqw371fxh46fi86fmdndhwq1n8qj0ynbh2gz1cn86aw1"; depends=[]; };
@@ -14488,7 +14539,7 @@ in with self; {
   prcbench = derive2 { name="prcbench"; version="1.0.2"; sha256="0ilann11cfmbw7xj7j6y6j5y0hlfjf7wvfbq2hfvlxi87hijh3ka"; depends=[assertthat ggplot2 gridExtra memoise precrec PRROC R6 ROCR]; };
   prclust = derive2 { name="prclust"; version="1.3"; sha256="0p0sf8248aigs99py8mpzz743jnrf7n1nv5shag15arxz9yx7zn3"; depends=[Rcpp]; };
   prcr = derive2 { name="prcr"; version="0.2.1"; sha256="0k5vl14akqf8qvak6h7a19qxn4wzpyxq7lyvdhxfh8l4gs4ca2l6"; depends=[class dplyr forcats ggplot2 irr lpSolve magrittr purrr tibble tidyr]; };
-  pre = derive2 { name="pre"; version="1.0.1"; sha256="1wvwdwn65n98bzrsghqbxhf1hv2mcpizjxvzx00mplm4xjbzkk7g"; depends=[earth Formula glmnet Matrix MatrixModels partykit rpart stringr survival]; };
+  pre = derive2 { name="pre"; version="1.0.2"; sha256="1j2jcq51gkqzy1ip4inf9j3z1p9cr134vjf6mfpq4331hp493hql"; depends=[earth Formula glmnet Matrix MatrixModels partykit rpart stringr survival]; };
   precintcon = derive2 { name="precintcon"; version="2.3.0"; sha256="1sf0mfqa77aqhbx3hg8pv582ibmfnv6vigqcd3xqsbq7nigy2ms9"; depends=[ggplot2 scales]; };
   precisePlacement = derive2 { name="precisePlacement"; version="0.1.0"; sha256="1w48k4kv3xm8br7dgbpx2rcdxjh0g0aw8xa1snqy0ig8a992804b"; depends=[]; };
   precisely = derive2 { name="precisely"; version="0.1.2"; sha256="1zzg2fgf58gjq081rklqjf8wxz8mf7rc3vyhbji3j3n6j0x125n4"; depends=[dplyr ggplot2 magrittr purrr rlang shiny shinycssloaders shinythemes tidyr]; };
@@ -14505,7 +14556,6 @@ in with self; {
   predictrace = derive2 { name="predictrace"; version="2.0.0"; sha256="1bk1l9gai4hyck72h81znsm1dzqwm5wddbz0bm9g5igs6zkar2ka"; depends=[dplyr]; };
   predint = derive2 { name="predint"; version="1.0.0"; sha256="043nsjvn88dhwvp5snbhmh64m8iy22ws4l474mbkm3rb488i9is9"; depends=[dplyr lme4]; };
   predkmeans = derive2 { name="predkmeans"; version="0.1.1"; sha256="0352c50zlyzn8fczrkinayllj9jp978njjl7dazzkzypx0p20va5"; depends=[e1071 maxLik mgcv Rcpp RcppArmadillo]; };
-  predmixcor = derive2 { name="predmixcor"; version="1.1-1"; sha256="0v99as0dzn0lqnbbzycq9j885rgsa1cy4qgbya37bbjd01b3pykd"; depends=[]; };
   predtools = derive2 { name="predtools"; version="0.0.2"; sha256="1bp0pvpd6s190q9kylvkcfh61jblbsla4d7rmnqv2rhza71mdfkj"; depends=[dplyr ggplot2 magrittr pROC RConics Rcpp]; };
   predtoolsTS = derive2 { name="predtoolsTS"; version="0.1.1"; sha256="0f9fapw9yjdzj6pwcskbyfwjsvg09ahn20vrv4bgi0dx8am291rl"; depends=[caret forecast Metrics tseries TSPred]; };
   prefeR = derive2 { name="prefeR"; version="0.1.1"; sha256="1wgbwbmghsnc2cargwndda0xhcdswvzd0nkjq5g895kl8zcwgpyf"; depends=[entropy mcmc]; };
@@ -14522,7 +14572,7 @@ in with self; {
   presenter = derive2 { name="presenter"; version="0.1.1"; sha256="13q9cn2kglrr37cng9rz3bpl2ipmbiaaf233bn1bw83c6fisrq6m"; depends=[badger berryFunctions dplyr flextable formattable framecleaner janitor lubridate magrittr officer openxlsx purrr randomcoloR rlang rvg stringi stringr tibble tidyr tidyselect]; };
   presentes = derive2 { name="presentes"; version="0.1.0"; sha256="0d6zhishc7wxcvvglgw44pc6c172qpxb8i4iw3lqbmji7ash5zpx"; depends=[]; };
   preseqR = derive2 { name="preseqR"; version="4.0.0"; sha256="1g2rnnmi45649vpy6z45v5i3wxm54s138ajqrzwi3a5r7x3xnhq1"; depends=[polynom]; };
-  presize = derive2 { name="presize"; version="0.2.3"; sha256="0gwavbi9fbwh454n5yg0rwqy13a8zjhs2yj7jhlmjn1bjjmxp8j4"; depends=[kappaSize shiny]; };
+  presize = derive2 { name="presize"; version="0.3.1"; sha256="1fmv760c2vgg0cni46fvhlhxs7z94rm2pbxsc8nlh7rn842wv917"; depends=[kappaSize shiny]; };
   presmTP = derive2 { name="presmTP"; version="1.1.0"; sha256="134p58zzk8i0whscvl5qdfn4niksypyxavq1m15cvw4zzk4dk6fw"; depends=[mgcv survPresmooth]; };
   presser = derive2 { name="presser"; version="1.1.0"; sha256="1slkdfh0wq242adp6a60612sjz117bii3pbahn00bfmnpa9g1wya"; depends=[]; };
   prettifyAddins = derive2 { name="prettifyAddins"; version="2.4.0"; sha256="0r8kbcrl5d7wvbk1wc40h1d2xk14r9mwpb4xkm8q74jhaxvpxz4f"; depends=[httr rstudioapi shiny webdriver xml2 XRJulia]; };
@@ -14537,12 +14587,11 @@ in with self; {
   prevR = derive2 { name="prevR"; version="3.4.1"; sha256="02qfyc5j7rgvwl7a5pr1l41jmgjxxsrc674xfm08hcydwda5clq1"; depends=[directlabels fields foreign GenKern ggplot2 gstat maptools rgdal sp]; };
   prevalence = derive2 { name="prevalence"; version="0.4.0"; sha256="0vnmglxj1p66sgkw4ffc4wgn0w4s281fk2yifx5cn4svwijv30q0"; depends=[coda rjags]; };
   prevederer = derive2 { name="prevederer"; version="0.0.1"; sha256="0vkx9nrlgp36xbl95lrb5sb5yivxlcw4yvbs8hgbm31kh0vbz32f"; depends=[httr]; };
-  previsionio = derive2 { name="previsionio"; version="11.3.3"; sha256="0mx604y4kwj7d4ssnb1i61fyh3cd6df81yhvpjpf2k4bi6ifcx2s"; depends=[data_table futile_logger httr jsonlite magrittr Metrics plotly XML]; };
+  previsionio = derive2 { name="previsionio"; version="11.7.0"; sha256="08hrklr3ngphdhp50lkz6ls9nn1bzdvs6xj583spsw4vm7j44yfr"; depends=[data_table futile_logger httr jsonlite magrittr Metrics plotly XML]; };
   prevtoinc = derive2 { name="prevtoinc"; version="0.12.0"; sha256="0ypdxcx9gh87a7ih3cw3yai47rzv41qwh4kpk6007ai8jkjv4n9w"; depends=[dplyr purrr rlang tibble]; };
   prewas = derive2 { name="prewas"; version="1.1.1"; sha256="16dpwpks0sqfq7pdhbpipb8hnm2viic2dnz1g7v86ar51z8db4xk"; depends=[ape future future_apply phangorn vcfR]; };
   priceR = derive2 { name="priceR"; version="0.1.6"; sha256="1c2yxjrd9v5i76hc5dn0hc6k2shy9cs32mvhr579w7n990ksjw23"; depends=[curl dplyr gsubfn jsonlite lubridate purrr stringi stringr]; };
   pricesensitivitymeter = derive2 { name="pricesensitivitymeter"; version="1.2.2"; sha256="0clbc1p809rjgqilv548ck7pfbyajkp2i47vxx8yrrdgkx824gpn"; depends=[ggplot2 rlang survey]; };
-  prider = derive2 { name="prider"; version="1.0.2"; sha256="0a7n4b2a0p91q8llgn14czfxvi588v62x5azl7nndvjdk6g4cmmy"; depends=[blaster dplyr gplots magrittr purrr Rcpp stringr tibble tidyr]; };
   prim = derive2 { name="prim"; version="1.0.20"; sha256="0z07ddpz6r3sbi5141n9a0snzcc26rdlxiivfnacs8zavs1sk73x"; depends=[plot3D scales]; };
   primePCA = derive2 { name="primePCA"; version="1.2"; sha256="0w3w50x17q7gwji19m6dx5vq46h8p62alf3axd10mycl609jlbcb"; depends=[MASS Matrix softImpute]; };
   primefactr = derive2 { name="primefactr"; version="0.1.1"; sha256="11hi75jwjxrl9p5m8yjwjb20pc9y9vkhi8sjrnisdq2hm53m483w"; depends=[]; };
@@ -14554,7 +14603,7 @@ in with self; {
   printr = derive2 { name="printr"; version="0.2"; sha256="0lf538m7skrd7cmy0n118y5s0qk48q0xgqvqag20j34if1h44r4a"; depends=[knitr]; };
   prinvars = derive2 { name="prinvars"; version="0.1.0"; sha256="1fajvl041sxwf6ydqyixqmxinj0k8d413h332gvkqkyyfmx5gnys"; depends=[Rdpack]; };
   prioGene = derive2 { name="prioGene"; version="1.0.1"; sha256="0k1rlvmfhj1m2zp5zaac8wcwjypd6f4dd8fxxsyrzsafp9aw189l"; depends=[AnnotationDbi org_Hs_eg_db]; };
-  prioriactions = derive2 { name="prioriactions"; version="0.3.3"; sha256="1gn786sw52bb05jwfrab00hrfw5pn0xhgp9xzmdvnflbz86a1q2p"; depends=[assertthat BH dplyr magrittr Matrix proto Rcpp RcppArmadillo rlang Rsymphony tidyr]; };
+  prioriactions = derive2 { name="prioriactions"; version="0.4"; sha256="17nypbjfwk77a6vg33my2x5qi82d80rrkpg5h0m9m31mf74pyraw"; depends=[assertthat BH dplyr magrittr Matrix proto Rcpp RcppArmadillo rlang Rsymphony tidyr]; };
   prioritizr = derive2 { name="prioritizr"; version="7.1.1"; sha256="1d2nsbixfn6nk6icb78kiddpgpn7z2gvinmd19laqdj7a3lbknax"; depends=[ape assertthat BH data_table doParallel exactextractr fasterize igraph magrittr Matrix plyr proto raster Rcpp RcppArmadillo rgeos sf slam sp tibble uuid withr]; };
   prioritizrdata = derive2 { name="prioritizrdata"; version="0.2.4"; sha256="0027nbkvp8b2w4cciabiqjdyxhjwh47k7dc36p79mkqfarh04rgv"; depends=[raster sp]; };
   prioritylasso = derive2 { name="prioritylasso"; version="0.2.5"; sha256="1myci7akab1fg7p72q1hrchkixs7q5lagdsfpmdbvd13yy4q3h5z"; depends=[glmnet survival]; };
@@ -14570,7 +14619,7 @@ in with self; {
   probFDA = derive2 { name="probFDA"; version="1.0.1"; sha256="093k50kyady54rkrz0n9x9z98z5ws36phlj42j25yip7pzhfd6sv"; depends=[MASS]; };
   probably = derive2 { name="probably"; version="0.0.6"; sha256="0g7d6mw4nj6lynbpaa4qbnyzpwgw1bwl44b7zxm6x1wal6p679ga"; depends=[dplyr generics rlang tidyselect vctrs yardstick]; };
   probemod = derive2 { name="probemod"; version="0.2.1"; sha256="1cgjr03amssc9rng8ky4w3abhhijj0d2byzm118dfdjzrgmnrf9g"; depends=[]; };
-  probout = derive2 { name="probout"; version="1.1.1"; sha256="1hasrvxdig8n3fhzsbmq27050dyanzp1j0qlybnrkb41k9gyljda"; depends=[FNN MASS mclust]; };
+  probout = derive2 { name="probout"; version="1.1.2"; sha256="1x7q878xzw1b1c6jfx856akxzcxrwanv67jji2ifkcdx2hgmgvpx"; depends=[FNN MASS mclust]; };
   proccalibrad = derive2 { name="proccalibrad"; version="0.14"; sha256="0vr55rpcqh9wvy3bklssrimp42x85w3sanjgshfij657v68vmx46"; depends=[]; };
   proceduralnames = derive2 { name="proceduralnames"; version="0.2.1"; sha256="0c8yx4yz62aa80v7ildsacxp2vav3skgffb90kn65nz4wryddq37"; depends=[]; };
   processR = derive2 { name="processR"; version="0.2.6"; sha256="1k6ili4vx2s36l9xdvm7livnjr4r1pcdg5f92ivdivarcb3h907w"; depends=[diagram dplyr flextable ggplot2 ggrepel interactions lavaan officer predict3d psych purrr rlang rmarkdown rrtable semTools stringr tidyr tidyselect ztable]; };
@@ -14592,7 +14641,7 @@ in with self; {
   profileModel = derive2 { name="profileModel"; version="0.6.1"; sha256="01m5nb8cmq0aq555pxk2a99182si65hhmn68yn9nal2j3zl2bp4i"; depends=[]; };
   profileR = derive2 { name="profileR"; version="0.3-5"; sha256="0fgc7585a7194c67irafjnx8g2j6mn3qhcfn76c6dh28clp20qp9"; depends=[ggplot2 lavaan RColorBrewer reshape]; };
   profmem = derive2 { name="profmem"; version="0.6.0"; sha256="0gg6ja0ifwn9jj42rw1gnyil55sl9r2y5rjb6yjcvqwd5arajp3l"; depends=[]; };
-  profoc = derive2 { name="profoc"; version="0.9.0"; sha256="1s9qn17yhxcljnya5cfidv41q731v4283jka9k33brrryk9h2l5c"; depends=[abind Matrix Rcpp RcppArmadillo RcppProgress splines2]; };
+  profoc = derive2 { name="profoc"; version="0.9.1"; sha256="033c036ck273zxg0k7qjcvgxm5k05gjxrvnqvyw7hh9g4lgh8824"; depends=[abind Matrix Rcpp RcppArmadillo RcppProgress splines2]; };
   profr = derive2 { name="profr"; version="0.3.3"; sha256="00bv1q0qn46nz4zjfs0l2yfh3hk71rajlp2rrlwg442z11k79ap9"; depends=[plyr stringr]; };
   proftools = derive2 { name="proftools"; version="0.99-3"; sha256="095pxyyv6k818qwcjygbz1h24k0xkqi1agns8cqh2m5g64aynd70"; depends=[]; };
   profvis = derive2 { name="profvis"; version="0.3.7"; sha256="1f86m426pcf90l29hf4hkirzf8f38dihk52bxbdq2gvrrdili5s3"; depends=[htmlwidgets stringr]; };
@@ -14605,6 +14654,7 @@ in with self; {
   projects = derive2 { name="projects"; version="2.1.3"; sha256="0ljrhswr5sfq051x0aicl9yvwakw9d9drgrmcz9d8qhgw1if0mky"; depends=[dplyr fs lubridate magrittr purrr readr rlang rstudioapi sessioninfo stringr tibble vctrs zip]; };
   projmgr = derive2 { name="projmgr"; version="0.1.0"; sha256="1iysxcl6awvp7zbm04zyq4d9659fcz3sy711jnycsxhsk8hsvmc2"; depends=[gh magrittr]; };
   projpred = derive2 { name="projpred"; version="2.0.2"; sha256="0nx514mrfh3gv854pr71w5x3zgdnn0kinf5nh7z90q3h7ysry2mg"; depends=[dplyr gamm4 ggplot2 lme4 loo magrittr MASS mgcv optimx Rcpp RcppArmadillo rngtools rstantools tidyverse]; };
+  prome = derive2 { name="prome"; version="0.0.0.8"; sha256="1c9jzpapjyfhpxvjw59p7ch99la00c7nhmvdmsxc4fwi0wcj9pb1"; depends=[BH Rcpp RcppEigen RcppParallel rstan rstantools StanHeaders]; };
   promethee123 = derive2 { name="promethee123"; version="0.1.0"; sha256="0s1wkcrvm32dpqg9ahn10kni1xv3ll7akqz4y6yn1d36km81bf21"; depends=[cowplot ggplot2]; };
   promises = derive2 { name="promises"; version="1.2.0.1"; sha256="1dy4cbqw17awh4q8m7cy3anaj0n9iynabfzflb1g94cyj0bq4fld"; depends=[later magrittr R6 Rcpp rlang]; };
   promote = derive2 { name="promote"; version="1.1.1"; sha256="1cdz4xqinyzpbbgkxxd4f86n1h8zj88vp5z6w01cxd5ykyjf5411"; depends=[httr jsonlite stringr]; };
@@ -14618,7 +14668,7 @@ in with self; {
   prophet = derive2 { name="prophet"; version="1.0"; sha256="06mryavky9xj54ig4scqjgpx7i56nwhs53g0zqsbs9f6qxja7gll"; depends=[BH dplyr dygraphs extraDistr ggplot2 lubridate Rcpp RcppEigen RcppParallel rlang rstan rstantools scales StanHeaders tidyr xts]; };
   proportion = derive2 { name="proportion"; version="2.0.0"; sha256="0a71f6hz6blb7550m9x0di84vp51yjhnn952301rwlrh3axf6dbr"; depends=[ggplot2 TeachingDemos]; };
   propr = derive2 { name="propr"; version="4.2.6"; sha256="16ghgzpwz6q9zlaa0pc8wqv0wpz81c75n7zwjyr1lv9y19qwlkfg"; depends=[fastcluster ggplot2 igraph Rcpp]; };
-  prospectr = derive2 { name="prospectr"; version="0.2.2"; sha256="1nlwwz777nlpdcnsn36j6s0gpdb7ria08x20hklmsa49q2aiqfc1"; depends=[foreach iterators lifecycle mathjaxr Rcpp RcppArmadillo]; };
+  prospectr = derive2 { name="prospectr"; version="0.2.3"; sha256="1c2p9dy6h6w31v1hviqjr3kkzzzd303s64qhywcjp0ymjvbzlprp"; depends=[foreach iterators lifecycle mathjaxr Rcpp RcppArmadillo]; };
   protViz = derive2 { name="protViz"; version="0.7.0"; sha256="0l1pmfr9kmc90rl5s9b0141451rxrjmiiasp3lsvl2x3ps0smqaj"; depends=[Rcpp]; };
   protag = derive2 { name="protag"; version="1.0.0"; sha256="1iaw2w1d7hdvlg5vplpqc49wq08dgmm0ifvp2v0ggqb8invvdnw8"; depends=[dplyr ggplot2 RColorBrewer]; };
   protein8k = derive2 { name="protein8k"; version="0.0.1"; sha256="11qj4sadhcsp1kk5kjmvzj2jnd3srsm5mp0q9h9khp1ps6dk35yw"; depends=[dplyr ggplot2 gridExtra lattice magick pryr rjson rlang shiny]; };
@@ -14632,7 +14682,7 @@ in with self; {
   proton = derive2 { name="proton"; version="1.0"; sha256="1mgaw54is8l6ac1rf8s70rj7kv9xgsfdrlvjz01ggfwg7c6pyr3s"; depends=[digest]; };
   prototest = derive2 { name="prototest"; version="1.2"; sha256="07g58hq2qdpczqhjsv6dq1bya9rs958r103n91icw5yc19bvyhi2"; depends=[glmnet intervals MASS Rcpp RcppArmadillo]; };
   protr = derive2 { name="protr"; version="1.6-2"; sha256="13vgiqkqqq1w2yj5f6i6scag0mr189zmisyvi6fgaw8g9dgxpxan"; depends=[]; };
-  protti = derive2 { name="protti"; version="0.2.1"; sha256="1k656bmlm9jysy15ga854ncr20n8xlvj6d26snjbrb47sc4sc9im"; depends=[curl data_table dplyr forcats ggplot2 ggrepel janitor lifecycle magrittr plotly progress purrr readr rlang stringr tibble tidyr]; };
+  protti = derive2 { name="protti"; version="0.2.2"; sha256="11g04c7yscvxqixjslyiq7nx1l1rq8ari3mzaiw3afb4y87hp4x5"; depends=[curl data_table dplyr forcats ggplot2 ggrepel httr janitor lifecycle magrittr plotly progress purrr readr rlang stringr tibble tidyr]; };
   proustr = derive2 { name="proustr"; version="0.4.0"; sha256="1qp4v4vb1qh137qn7zi1d2g999z17kq6kpyxy9355mj8c49iy8pn"; depends=[attempt rlang SnowballC stringr tidyr tokenizers]; };
   provDebugR = derive2 { name="provDebugR"; version="1.0.1"; sha256="0ynz5m1gkaj1wks5l71r3iz7npf3mz0r04jsa8zwg670zsv2x7rf"; depends=[httr jsonlite provGraphR provParseR textutils]; };
   provExplainR = derive2 { name="provExplainR"; version="1.1"; sha256="1jgxmpzgigpbdqh3r8gy6h0akv11ssl494h2jscdyb8zpjmc92fg"; depends=[diffobj digest dplyr provParseR stringr]; };
@@ -14640,7 +14690,7 @@ in with self; {
   provParseR = derive2 { name="provParseR"; version="0.3"; sha256="0cmyb6da9l0822xrzni19r1ha6zzya385hk2ym9rmchvb34lax53"; depends=[jsonlite]; };
   provSummarizeR = derive2 { name="provSummarizeR"; version="1.4.2"; sha256="1pfnrvgqzpdhrsyh0y75idwj13zgcdj7ql6frpjmc0f5cggv7q1q"; depends=[dplyr provParseR]; };
   provTraceR = derive2 { name="provTraceR"; version="1.0"; sha256="19iillyh5zw64mmr6ik4ci1n2p651xqzxa4iq5bwa70imbzyy5ip"; depends=[provParseR]; };
-  provViz = derive2 { name="provViz"; version="1.0.7"; sha256="0bjq8mywgm2jr0m0458wk6n5al7jr1psvh4g31z4qzlrrkfqgzzg"; depends=[]; };
+  provViz = derive2 { name="provViz"; version="1.0.8"; sha256="0zdfvr9mj2d7h20ahq2fksqqjg6isbhhf4kwg2brxb5fcb9462a4"; depends=[]; };
   provenance = derive2 { name="provenance"; version="3.3"; sha256="0kdpv1gjvgv9nxfsarm1z042xas9d4n2smhrqccs450a2mhb5fxr"; depends=[IsoplotR MASS]; };
   proverbs = derive2 { name="proverbs"; version="0.1.0"; sha256="1i3aqlk4xb6zrjb7izyz7m9ys950cc6msvac8ixx74a7s57j99p1"; depends=[cli crayon httr lubridate magrittr purrr]; };
   proxirr = derive2 { name="proxirr"; version="0.2"; sha256="0ffnzmd9zy43vzp0mc0ncjwfj5d7p2gzwk8gcwhk1f9yvgiw4wc1"; depends=[]; };
@@ -14672,12 +14722,12 @@ in with self; {
   psoptim = derive2 { name="psoptim"; version="1.0"; sha256="1yziabkd3h05cfl5jy5l8ji2y3w21acvxsq3inxyh0iwyr8qdkkl"; depends=[]; };
   psp = derive2 { name="psp"; version="0.1"; sha256="0ls8nqfddl9yqsz6binjf5smg3vbs5r65dqv92zn6hmb51akf7q5"; depends=[]; };
   pspearman = derive2 { name="pspearman"; version="0.3-0"; sha256="1l5mqga7b5nvm6v9gbl1xsspdqsjqyhhdn4gc4qlz6ld7fqfq6cx"; depends=[]; };
-  pspline = derive2 { name="pspline"; version="1.0-18"; sha256="1iwsw52miil1v1yl99mzl28qi8gdjr56rlasmh8faqjlpn9z477p"; depends=[]; };
+  pspline = derive2 { name="pspline"; version="1.0-19"; sha256="0h7y9l64knx291ms5mlc65dl3ljzgmrfzdqk1rd7iy8x7wcvymds"; depends=[]; };
   pspline_inference = derive2 { name="pspline.inference"; version="1.0.4"; sha256="1ijz642igm27xg3928w9ffvykai26aar5awbcilrjbkm6fk7yd4w"; depends=[assertthat dplyr magrittr mgcv plotrix plyr reshape2 rlang]; };
-  psqn = derive2 { name="psqn"; version="0.3.0"; sha256="0kb607d8jmxy152s1iigz6qwzrdn38q5bjc5klm8fhkndgj3y91c"; depends=[Matrix Rcpp RcppEigen testthat]; };
+  psqn = derive2 { name="psqn"; version="0.3.1"; sha256="05nzyapilhzwjgc3lizg424i28mshmwirpggg79hssjqmqraflpj"; depends=[Matrix Rcpp RcppEigen testthat]; };
   psr = derive2 { name="psr"; version="0.1.0"; sha256="0lnszaspilk88hmdjbgid7nh0zrpc57mymchva4kqc3cpckw247a"; depends=[dplyr psych tidyr]; };
   psre = derive2 { name="psre"; version="0.1.0"; sha256="01g0p5sfhahjs2q13dcaqk816ch3niv1gxw6fpivih3n92r5yygj"; depends=[boot car cowplot DAMisc dplyr fANCOVA ggplot2 ggrepel lawstat magrittr MASS metap mgcv multcomp normwhn_test nortest rlang sm tibble tidyr]; };
-  psrwe = derive2 { name="psrwe"; version="3.0"; sha256="0a8lwz24gyahk7pkyvr0m2386ahgsfx5axx5cd9qmddzzcp5lfhs"; depends=[BH cowplot dplyr ggplot2 randomForest Rcpp RcppEigen RcppParallel rstan rstantools StanHeaders survival]; };
+  psrwe = derive2 { name="psrwe"; version="3.1"; sha256="0gmsh0294jzazxw4ss6jys92dckgfh4fqirfcdi3pzr6a7nnam8s"; depends=[BH cowplot dplyr ggplot2 randomForest Rcpp RcppEigen RcppParallel rstan rstantools StanHeaders survival]; };
   pssm = derive2 { name="pssm"; version="1.1"; sha256="0r3d1mzc7bcz238lqq4y518400m2dqm5a1fb9gkfiari1ax099lv"; depends=[abind MASS MHadaptive numDeriv]; };
   pssmooth = derive2 { name="pssmooth"; version="1.0.3"; sha256="08syh52gjaf72kq01v6b5dljmwi29nvmjmkkgmjb97zsi15z1wd3"; depends=[chngpt MASS np osDesign]; };
   pstest = derive2 { name="pstest"; version="0.1.3.900"; sha256="1rhd4vgqpr9yq0pc3xql3nfgl30v20ldywapp9n967ky2dja4k0z"; depends=[glmx MASS]; };
@@ -14688,7 +14738,6 @@ in with self; {
   psychTools = derive2 { name="psychTools"; version="2.1.12"; sha256="0fqxlggbhi5g016vyiby8g42ll0080fig15p689cas2ydwn5zklk"; depends=[foreign psych]; };
   psychmeta = derive2 { name="psychmeta"; version="2.6.2"; sha256="0yacf2d2svb95a95cxa37szxpags156kwmn5knpfyn4hgbwp390g"; depends=[boot curl dplyr ggplot2 mathjaxr metafor progress purrr rlang tibble tidyr]; };
   psycho = derive2 { name="psycho"; version="0.6.1"; sha256="1a3qccr9jwrbwkfbrvckkhhk9qygrc5n4mq80kpzx0zy5bylxi0a"; depends=[bayestestR dplyr effectsize ggplot2 insight parameters scales stringr]; };
-  psychometric = derive2 { name="psychometric"; version="2.2"; sha256="1b7cx6icixh8k3bv60fqxjjks23qn09vlcimqfv2x3m3nkf8p1s9"; depends=[multilevel nlme]; };
   psychomix = derive2 { name="psychomix"; version="1.1-8"; sha256="0lfhfcmrk65gkr1yp317b515vmadbcf0vjcnc76d07yp6yfkz5qw"; depends=[flexmix Formula lattice modeltools psychotools]; };
   psychonetrics = derive2 { name="psychonetrics"; version="0.10"; sha256="09jv7ladas5yfj51nv323z2hgyamd6q40vi07wfypimpi3h4szyh"; depends=[abind combinat corpcor dplyr GA glasso IsingSampler lavaan magrittr Matrix mgcv numDeriv optimx pbapply pbv psych qgraph Rcpp RcppArmadillo rlang roptim tidyr VCA]; };
   psychotools = derive2 { name="psychotools"; version="0.7-0"; sha256="11gybrf9d90nbqfm76qr2z9y4bn498j1csg5zir38k5inpw5bk3x"; depends=[]; };
@@ -14703,7 +14752,7 @@ in with self; {
   ptest = derive2 { name="ptest"; version="1.0-8"; sha256="1d30a23yknf7xgqj8adgr36pnh9dpffl1v5fq682f26fk3ss30qp"; depends=[quantreg]; };
   ptf = derive2 { name="ptf"; version="0.0.1"; sha256="1s9nzn823z2capil83vcfs7frg8f6bpygx8aw1zz4sacnhvryr52"; depends=[Matrix plyr rARPACK Rcpp RcppArmadillo]; };
   ptinpoly = derive2 { name="ptinpoly"; version="2.8"; sha256="126chp92ha48agx5i819bzdij79zbgj32msijvaid3zhxjx7qy1j"; depends=[misc3d]; };
-  ptm = derive2 { name="ptm"; version="0.2.4"; sha256="00szxlil7657ciwh17jkk1mv28m5h1la97ksgn3glypf5z7hsrd4"; depends=[bio3d Biostrings curl httr igraph jsonlite muscle RCurl seqinr xml2]; };
+  ptm = derive2 { name="ptm"; version="0.2.5"; sha256="0q3j081fhs0pin8zx6m280hc000cdf9dmbmilyf88c0ryd1cx5bb"; depends=[bio3d Biostrings curl httr igraph jsonlite muscle RCurl seqinr xml2]; };
   ptmixed = derive2 { name="ptmixed"; version="1.1.1"; sha256="12yjm73grs14gzwnh61qp0vzbikmwfl1f26s9xfclsp6g61k3rzg"; depends=[aod GLMMadaptive lme4 matrixcalc moments mvtnorm numDeriv tweeDEseq]; };
   pts2polys = derive2 { name="pts2polys"; version="0.1.3"; sha256="0rmgryv0vds20npvaqvvwrhrx0grfcz9qwdy2w3bx945r0chhw39"; depends=[Rcpp]; };
   ptspotter = derive2 { name="ptspotter"; version="1.0.1"; sha256="1yppjmsxx01n9x0a0bbqsaxjixvrzyjq3112p94igg2xpp6h6cvl"; depends=[beepr log4r pryr stringr this_path]; };
@@ -14733,7 +14782,7 @@ in with self; {
   pushbar = derive2 { name="pushbar"; version="0.1.0"; sha256="1gxarv6x32y6ssrhsq3pyihzcvpnnj7bg0jf2cpcr99da78n1d9b"; depends=[jsonlite shiny]; };
   pushoverr = derive2 { name="pushoverr"; version="1.1.0"; sha256="05ma76jhk00m9872f7gb0vwmk2q3l79r1ddaf1slbhgd57l1avk2"; depends=[checkmate cli glue httr rlang]; };
   puzzle = derive2 { name="puzzle"; version="0.0.1"; sha256="073n074irsvn4w1jy5xmr6l24a209kn0ypvf1d2zn3p6yd93wzss"; depends=[dplyr kableExtra lubridate plyr readr readxl reshape reshape2 sqldf tidyverse]; };
-  pvLRT = derive2 { name="pvLRT"; version="0.3"; sha256="0fhnyj0ax9c4k0vah0p7dlf825abxr45bkcx5ifrgbmwdnj783gl"; depends=[bit64 data_table ggplot2 glue magrittr progress RColorBrewer]; };
+  pvLRT = derive2 { name="pvLRT"; version="0.4"; sha256="1rvavmnfcbc6qqd5d4611h54hzvd18m2vwxy6xc6grr2w2rrngn1"; depends=[bit64 data_table ggfittext ggplot2 glue magrittr progress RColorBrewer]; };
   pvaluefunctions = derive2 { name="pvaluefunctions"; version="1.6.2"; sha256="10dxzbz6fw01qgfm6mmxb1xy14pwxgif0d603m3x146337pccc7q"; depends=[ggplot2 gsl pracma scales zipfR]; };
   pvar = derive2 { name="pvar"; version="2.2.5"; sha256="1a5dxhki5nd5s1d5wwnc1dkg7mdib2s8w1i0l8mdg3f1g3l00klz"; depends=[Rcpp]; };
   pvclass = derive2 { name="pvclass"; version="1.4"; sha256="1g6x75qz3xybq1xnik0hzi7mcs0gzzqd3f0iwfkzi5d1zcddnw13"; depends=[Matrix]; };
@@ -14743,7 +14792,7 @@ in with self; {
   pvsR = derive2 { name="pvsR"; version="0.3"; sha256="1ijmqlcsc8z0aphdd3j37ci8yqsy50wnr2fwn7h8fxbyd12ax2nj"; depends=[httr nnet XML]; };
   pwr = derive2 { name="pwr"; version="1.3-0"; sha256="1kfzy73v3z6ipc3kdfkcjrp4b4p5k54nwk796gqi36srm93hgc2v"; depends=[]; };
   pwr2 = derive2 { name="pwr2"; version="1.0"; sha256="0zfv7z5yymw310r1sqm8ivsc2pv6dgk2k4b1axmm92gsaj53cn7p"; depends=[]; };
-  pwr2ppl = derive2 { name="pwr2ppl"; version="0.2.0"; sha256="0v0f632b0zl4vbzb2x0294xqvsidvckx8b84qmqx5fbwp8jz8kgx"; depends=[afex car dplyr ez lavaan MASS MBESS nlme phia tidyr]; };
+  pwr2ppl = derive2 { name="pwr2ppl"; version="0.3.0"; sha256="0ffwsldx9xplf2lqzi0m5a0715437c4g3352r8408n1p53lj2scd"; depends=[afex broom car dplyr ez lavaan lmtest MASS MBESS nlme phia quantreg semTools tidyr]; };
   pwrAB = derive2 { name="pwrAB"; version="0.1.0"; sha256="0ifyw40m9gsijw3vm9qb8qk4yydmdixfdpdp45x2hk93j8v61jm1"; depends=[]; };
   pwrFDR = derive2 { name="pwrFDR"; version="2.8.9"; sha256="16qlxwhljhf878a7jif2kjj7hvga01bgr8zb6bh555yacxxh4yiz"; depends=[]; };
   pwrRasch = derive2 { name="pwrRasch"; version="0.1-2"; sha256="13fr4yfk8aky1vv36pllx673l4lg9q7i661vbyn2zabyizd2rw3b"; depends=[]; };
@@ -14764,7 +14813,7 @@ in with self; {
   qGaussian = derive2 { name="qGaussian"; version="0.1.8"; sha256="02xy35xg4swr1ldnsbywnz2h0ga1pbsivnj0aqmpll7kvwl9qz4c"; depends=[Rcpp robustbase zipfR]; };
   qLearn = derive2 { name="qLearn"; version="1.0"; sha256="1ilxmgazm8gjz8c1hhbp4fccibnvnalxrag8b0rn081zsqmhf094"; depends=[]; };
   qMRI = derive2 { name="qMRI"; version="1.2"; sha256="10x59g8awxjib5j5mc1yd5wsibk3z6ki6zifxsg8azl0zblxbscf"; depends=[adimpro aws awsMethods oro_nifti stringr]; };
-  qacBase = derive2 { name="qacBase"; version="1.0.2"; sha256="0gm3djmgxh1xgq6592xqh698cvfrbn413ah5raxybnsd51k5rg8p"; depends=[crayon dplyr ggcorrplot ggExtra ggplot2 haven multcompView patchwork PMCMRplus purrr rlang tidyr]; };
+  qacBase = derive2 { name="qacBase"; version="1.0.3"; sha256="0rmxmaaa162w1qrbkcm2fd2rnrp2kqjjh6mpszpv1lpfdaq7p4yq"; depends=[crayon dplyr ggcorrplot ggExtra ggplot2 haven multcompView patchwork PMCMRplus purrr rlang tidyr]; };
   qad = derive2 { name="qad"; version="1.0.1"; sha256="0b6zpffyxqqp76xajv5sf1ylz8glnsd2ajj91ijdads21hxqfrnw"; depends=[copula cowplot data_table dplyr ggExtra ggplot2 Rcpp viridis]; };
   qap = derive2 { name="qap"; version="0.1-1"; sha256="0d2d1ni1camixyi45lfy00f4pn3p063k7bsi8gj5scp6n15mdgb0"; depends=[]; };
   qape = derive2 { name="qape"; version="1.1"; sha256="168jcs2p1213k7fdsqvi1hqp9d2y8j2amrbrcxf2cjr5hnck19w9"; depends=[dplyr lme4 Matrix mvtnorm plyr]; };
@@ -14776,6 +14825,8 @@ in with self; {
   qcc = derive2 { name="qcc"; version="2.7"; sha256="0lc26w7p3d023lfr8v6v75m2vwqg9vi9pdipap19l4vbdq29l4zz"; depends=[MASS]; };
   qccrs = derive2 { name="qccrs"; version="0.1.0"; sha256="0lwrmf2809zzdj5f25bb1psh57ibyw90ra41fy2i9vjmgph9wgiq"; depends=[dplyr magrittr purrr tibble]; };
   qch = derive2 { name="qch"; version="1.0.0"; sha256="1kizr319kjr6xsgz7n0dhgp8rxr4j1x4bcr5cnifkp6z2zh92vka"; depends=[ks mclust]; };
+  qcpm = derive2 { name="qcpm"; version="0.1"; sha256="08y02wdmnjlv5r1li3dm2g9hzbl0jm7krb4q5r9q4nf4fvbsm50m"; depends=[broom cSEM quantreg]; };
+  qcr = derive2 { name="qcr"; version="1.4"; sha256="14nilw60p2kcabh9w5k8bvdjqx4lm5lj79qiigg3i372byq5gb7r"; depends=[fda_usc MASS mvtnorm qcc]; };
   qcv = derive2 { name="qcv"; version="1.0"; sha256="0hf02l9c1cpzs02mfn9swfc8l635qsvh6xrhj21g19h5rxaf8jwg"; depends=[]; };
   qdap = derive2 { name="qdap"; version="2.4.3"; sha256="1fadzq7afavxfhcd8q6xy3g8d7jwy24zz1da2ig9bd8vrk5zjmnx"; depends=[chron dplyr gender ggplot2 gridExtra igraph NLP openNLP openxlsx plotrix qdapDictionaries qdapRegex qdapTools RColorBrewer RCurl reshape2 scales stringdist tidyr tm venneuler wordcloud XML]; };
   qdapDictionaries = derive2 { name="qdapDictionaries"; version="1.0.7"; sha256="0jdx7bxmvc4p41jb4fhaagg5jsbsi7gva870cmyia72li52grhyn"; depends=[]; };
@@ -14787,7 +14838,7 @@ in with self; {
   qgcomp = derive2 { name="qgcomp"; version="2.8.6"; sha256="00wfslhj7hm5qgpbz8zg4a3dwrbvnn0g6m0vcq56mjvfinnip8aw"; depends=[arm future future_apply generics ggplot2 gridExtra pscl survival tibble]; };
   qgcompint = derive2 { name="qgcompint"; version="0.6.6"; sha256="13r0nzxwz9w5papxiqkxjw594qljpqqxw1wkrhj2n68ykvbvl1n7"; depends=[arm future future_apply ggplot2 gridExtra qgcomp survival]; };
   qgg = derive2 { name="qgg"; version="1.0.4"; sha256="1xyviy73jl76bpv5izlkgf171qrypgv2wm5mi3s06cb7md8psrkb"; depends=[data_table MASS MCMCpack statmod]; };
-  qgraph = derive2 { name="qgraph"; version="1.9"; sha256="1ahhzp64jdgki5p2wga5mn8a2n1x2zldgpilrpf7hy5l9nf4imz1"; depends=[abind colorspace corpcor fdrtool ggplot2 glasso gtools Hmisc igraph jpeg lavaan Matrix pbapply plyr png psych Rcpp reshape2]; };
+  qgraph = derive2 { name="qgraph"; version="1.9.2"; sha256="0r225b7rnsv6wz41ij0msmqr1xy0iqxh9dbsvjixbi1hvgv91wds"; depends=[abind colorspace corpcor fdrtool ggplot2 glasso gtools Hmisc igraph jpeg lavaan Matrix pbapply plyr png psych Rcpp reshape2]; };
   qgshiny = derive2 { name="qgshiny"; version="0.1.0"; sha256="0ydhwg4abn8n9pwnjnwf1n1k854zw31z8f2splzdm5j279lsjg3r"; depends=[rmarkdown shiny]; };
   qgtools = derive2 { name="qgtools"; version="2.0"; sha256="1gj7vbam53yr2rnxzfxng1p107bjcyjmyj47cxyzaiv19pznkbmw"; depends=[]; };
   qha = derive2 { name="qha"; version="0.0.8"; sha256="0sdf6g6884wn73i237xkwszg2mq8xddhvyy225qzpplh5za4pnhl"; depends=[ade4 FactoClass FactoMineR]; };
@@ -14808,7 +14859,7 @@ in with self; {
   qpdf = derive2 { name="qpdf"; version="1.1"; sha256="03lnfncw8qd1fwfyqh1mjvnsjr3b63wxbah0wp5g7z7gba90dwbi"; depends=[askpass curl Rcpp]; };
   qpmadr = derive2 { name="qpmadr"; version="1.1.0-0"; sha256="0krv3zhr42z2mkkbn2bkglzfxbf06dmd9vnnc3rcyhm1r85n4fbq"; depends=[checkmate Rcpp RcppEigen]; };
   qqboxplot = derive2 { name="qqboxplot"; version="0.1.0"; sha256="0807ww7cvc84hmwrwp2q5gy6v0qd01mwhj537403iy9z4z3wsvhv"; depends=[ggplot2]; };
-  qqconf = derive2 { name="qqconf"; version="1.1.1"; sha256="1khaipqwhji30jvzn7kh46s7nc8df3w1r3g7c8i48qps3qrimfmh"; depends=[distr dplyr ggplot2 magrittr MASS rlang robustbase]; };
+  qqconf = derive2 { name="qqconf"; version="1.2.1"; sha256="195m60wy065yfp3x18hkxn6sr75igg9bcq0rgn8qcfyz4hc2pmgf"; depends=[distr dplyr ggplot2 magrittr MASS Rcpp rlang robustbase]; };
   qqman = derive2 { name="qqman"; version="0.1.8"; sha256="1a6qp5wv9bvwjchfw8x4jh48hkynlnfr21a8vqgnswldvwbq7njq"; depends=[calibrate]; };
   qqplotr = derive2 { name="qqplotr"; version="0.0.5"; sha256="1ija4ik3bc404yjm5pw4y32krs1gxn6jd05pqmc0ajawydvr4w1r"; depends=[dplyr ggplot2 MASS robustbase]; };
   qqr = derive2 { name="qqr"; version="0.0.1"; sha256="1vi4nbm356vahm4hnvy686nysbn4n63p9cjd4i9dm73lhsf9ilmn"; depends=[dplyr rvest stringr tidyverse xml2]; };
@@ -14829,7 +14880,7 @@ in with self; {
   qrmtools = derive2 { name="qrmtools"; version="0.0-14"; sha256="1gjaq6i0xhsivcmivbn4xxsqasbvf95p1w0rzpycxzgcfarxwwx3"; depends=[ADGofTest lattice Quandl quantmod rugarch xts zoo]; };
   qrng = derive2 { name="qrng"; version="0.0-8"; sha256="1yagh7llrg208mdmwyq7gy4c7h20hj4s5ikp6nc3q8pl7avmq3jc"; depends=[copula randtoolbox]; };
   qrnn = derive2 { name="qrnn"; version="2.0.5"; sha256="0ligz67kbfg5cmvacnb7y0ms1v0c7mbvbcfsxyfiz543ppl3xn1v"; depends=[]; };
-  qs = derive2 { name="qs"; version="0.25.2"; sha256="1gswppmw8rhd7h50hffhss4c4niz0x54r9sc8pgqzy26vkjqlhpy"; depends=[RApiSerialize Rcpp stringfish]; };
+  qs = derive2 { name="qs"; version="0.25.3"; sha256="0sxy497v5arjv6lwxng7chkbzrn703waqmgsxv77i7y12ahzdbai"; depends=[RApiSerialize Rcpp stringfish]; };
   qsimulatR = derive2 { name="qsimulatR"; version="1.0"; sha256="0d2al6rnsyj58jhwczn2rx09b007s2yjihpk7i65law7v8dmxiaf"; depends=[]; };
   qsort = derive2 { name="qsort"; version="0.2.3"; sha256="1xvp29dijfa2207wyw3z09rmffn61fngfy0f00qjk284n1jnnvrg"; depends=[cowplot ggplot2 gridExtra purrr]; };
   qst = derive2 { name="qst"; version="0.1.2"; sha256="0f5c4088y9c5fxyy2dyfkp049lnzvys3zyizazxsa82xwkwsbc8a"; depends=[DBI dbplyr dplyr magrittr RSQLite tibble]; };
@@ -14868,13 +14919,13 @@ in with self; {
   quantable = derive2 { name="quantable"; version="0.3.6"; sha256="15q4phc2j7aihl8f4qzpdwxcvshq2cfzkfcxc8k4qypsxk9a00sb"; depends=[caret dplyr e1071 ggplot2 ggrepel gplots Matrix plyr pROC RColorBrewer readr reshape2 rlang scales stringr tibble tidyr]; };
   quantdates = derive2 { name="quantdates"; version="1.0"; sha256="1hyds8rwr1yg740aq4w5fqjrwdf3dl4phf8mj8qsgbb7i0wbbf3q"; depends=[lubridate]; };
   quantdr = derive2 { name="quantdr"; version="1.2.0"; sha256="03dhcb5p9kkyl6qvpxbsjlrnjq0970xcr62j15jyhi878llzqk2n"; depends=[dr KernSmooth MTS mvtnorm quantreg]; };
-  quanteda = derive2 { name="quanteda"; version="3.2.0"; sha256="0q72jsc6zalnl35qq02z9niissnyax4zxzqzpfpjsmgmxpd797mw"; depends=[fastmatch magrittr Matrix Rcpp RcppArmadillo RcppParallel SnowballC stopwords stringi xml2 yaml]; };
+  quanteda = derive2 { name="quanteda"; version="3.2.1"; sha256="102wlx6481fskgdr5wv467n29f666q0qg9kjm0ivqfg9xsbvza12"; depends=[fastmatch magrittr Matrix Rcpp RcppArmadillo RcppParallel SnowballC stopwords stringi xml2 yaml]; };
   quanteda_textmodels = derive2 { name="quanteda.textmodels"; version="0.9.4"; sha256="0r2nls93nriw97z0rmmpn2bb8c3jr571hv5slqj68p7ibr06rh1h"; depends=[glmnet LiblineaR Matrix quanteda Rcpp RcppArmadillo RcppParallel RSpectra SparseM stringi]; };
   quanteda_textplots = derive2 { name="quanteda.textplots"; version="0.94"; sha256="1as7mpy3ihja5d9nw7c30w0yhaklpmn41bgw2cvpic2rbp5828fa"; depends=[extrafont ggplot2 ggrepel igraph Matrix network quanteda RColorBrewer Rcpp sna stringi]; };
   quanteda_textstats = derive2 { name="quanteda.textstats"; version="0.95"; sha256="100125n2l3mhj0clbwpy3cbb84mwf83ix2c67sy8lmmh71vxz2rk"; depends=[Matrix nsyllable proxyC quanteda Rcpp RcppArmadillo RcppParallel stringi]; };
   quantification = derive2 { name="quantification"; version="0.2.0"; sha256="116cp88q9cmizxc2a8lsysa1vwyp1y86457fx5qkq5dcm4g721g8"; depends=[car]; };
   quantileDA = derive2 { name="quantileDA"; version="1.1"; sha256="0jbklxsy33j7clcw97qq4ijwkrb94v2m11gjcfa38vplfxm9913q"; depends=[]; };
-  quantilogram = derive2 { name="quantilogram"; version="2.1.1"; sha256="07mvgbk5qhkaihk2dn5c8cfac2xd9hfglh284sg4jkrkq0cfgrl8"; depends=[np quantreg SparseM]; };
+  quantilogram = derive2 { name="quantilogram"; version="2.2.1"; sha256="0gvr93d6jjixcrislym0mna2l3plqhl8adaqiagdvxg4y0adfmf0"; depends=[np quantreg SparseM]; };
   quantities = derive2 { name="quantities"; version="0.1.6"; sha256="0kz95q8npiir8nadvfnpnnm9z5jg9mqk7b1fp6l0bj8asmjyw1l3"; depends=[errors Rcpp units]; };
   quantkriging = derive2 { name="quantkriging"; version="0.1.0"; sha256="0v6kckgzhgsn3158sc06xszdhmk8sfny10j1qyppxsl2hk89n8jf"; depends=[ggplot2 hetGP Matrix reshape2]; };
   quantmod = derive2 { name="quantmod"; version="0.4.18"; sha256="0dbcrncv06iqcbkky95dd7l32xq0hhbnkb0kj8wwzym1jf748h5a"; depends=[curl TTR xts zoo]; };
@@ -14898,7 +14949,7 @@ in with self; {
   quickPlot = derive2 { name="quickPlot"; version="0.1.6"; sha256="0mffialxdim8f5s0bw9bb7p8dbrfdgq1wqih441x27lnmrvhlsa8"; depends=[backports data_table fpCompare ggplot2 gridBase igraph raster RColorBrewer rgdal rgeos sp]; };
   quickReg = derive2 { name="quickReg"; version="1.5.0"; sha256="1l1v3k8albxlaz18l2b2x2ryifq4pbdq6n4q7555hnfcik9rqmw5"; depends=[dplyr ggplot2 nortest psych rlang survival]; };
   quickblock = derive2 { name="quickblock"; version="0.2.0"; sha256="0ij4ivpnkjzdixbq7pg4g1xkb031qawadr22qhzp0q210qhmhc0m"; depends=[distances scclust]; };
-  quickcheck = derive2 { name="quickcheck"; version="0.0.1"; sha256="1y3h31p81m76vn2d7dfc12nxc725p585agaa5p4wv396i7ccjaik"; depends=[dplyr hedgehog hms purrr]; };
+  quickcheck = derive2 { name="quickcheck"; version="0.1.0"; sha256="005xv322bsmjkrfwsj21j3pci868yac9wbgzxnwl4bmcf81ri09v"; depends=[data_table hedgehog hms purrr testthat tibble]; };
   quickerstats = derive2 { name="quickerstats"; version="0.0.1"; sha256="0jlczz042701p6j4m60k425m9x3q88m27mmf62ngz80dylcl2fdx"; depends=[curl httr readr tibble]; };
   quickmapr = derive2 { name="quickmapr"; version="0.3.0"; sha256="0962qm8ak0wpqld8nrb8rvvb78743zfrfsq2xrwdlql681j2nv8c"; depends=[httr raster rgdal rgeos sf sp]; };
   quickmatch = derive2 { name="quickmatch"; version="0.2.1"; sha256="1qfslhjlbjpzigz8n6b7w41g8pwdiwri091ivd5igp1xy5pv8a3w"; depends=[distances sandwich scclust]; };
@@ -14920,7 +14971,7 @@ in with self; {
   r_proxy = derive2 { name="r.proxy"; version="0.1.0"; sha256="0k7bcgp1d53ps6aalqz764v33mkamz5czdp72fc69zwrfb9rz63w"; depends=[curl jsonlite]; };
   r02pro = derive2 { name="r02pro"; version="0.1"; sha256="1zciq86wpykvbd6zmh8b83dl4vpz53isi6hbbrz0h48sqb1g2006"; depends=[learnr]; };
   r2d2 = derive2 { name="r2d2"; version="1.0-0"; sha256="1zl0b36kx49ymfks8rm33hh0z460y3cz6189zqaf0kblg3a32nsi"; depends=[KernSmooth MASS sp]; };
-  r2d3 = derive2 { name="r2d3"; version="0.2.5"; sha256="1wfr5qnywrvps25z9iwn04n6wwvam4340jwpszxbbawby48kjppn"; depends=[htmltools htmlwidgets jsonlite rstudioapi]; };
+  r2d3 = derive2 { name="r2d3"; version="0.2.6"; sha256="15mphywsr0603ipbgzac65n1nj7m77fmw3ypc33p9ng4fllg035r"; depends=[htmltools htmlwidgets jsonlite rstudioapi]; };
   r2dRue = derive2 { name="r2dRue"; version="1.0.4"; sha256="1apdq7zj5fhs349wm9g6y06nn33x24pg3gdp4z1frd18qlacf8z5"; depends=[matrixStats rgdal sp]; };
   r2dictionary = derive2 { name="r2dictionary"; version="0.1"; sha256="0assylz2ih96l4jily76hp524h5xbnc27ln8yjvk9c4q88yr8xfy"; depends=[rstudioapi stringr]; };
   r2dii_analysis = derive2 { name="r2dii.analysis"; version="0.1.12"; sha256="1fnwq5x6mryiafblfn1pks1pf0kca64a9mx3ic9q5f466qjr3flp"; depends=[dplyr glue magrittr r2dii_data rlang tidyr tidyselect zoo]; };
@@ -14932,17 +14983,18 @@ in with self; {
   r2pmml = derive2 { name="r2pmml"; version="0.26.0"; sha256="15npzyjd5n1zysffhcfp4c0wykk2nhwgs8j2x8fqyn9cv2l8abjk"; depends=[]; };
   r2pptx = derive2 { name="r2pptx"; version="0.1.0"; sha256="12p3018b514kk1yxm1xyc0835j34zvpr1fz8k5rpiz30fbxjip58"; depends=[glue officer]; };
   r2r = derive2 { name="r2r"; version="0.1.1"; sha256="0vp0ak88m3ssca8b8kxf9w6qkxsdy0qs6cngrr9gqvbrnx0gh9j6"; depends=[digest rlang]; };
-  r2rtf = derive2 { name="r2rtf"; version="0.3.2"; sha256="18c430bhf0sk63yvljqmq3qdginp5ybs1j5bl73mmgz7h1p9wdsa"; depends=[]; };
+  r2rtf = derive2 { name="r2rtf"; version="0.3.3"; sha256="1a6hbx9cjak2fv5khhq0k4j583qn24sbs5bykz86z530rbwbrc8y"; depends=[]; };
   r2shortcode = derive2 { name="r2shortcode"; version="0.1"; sha256="03djy8m146k31xgvwcbrd1nzwj4wdlvvwzgviv80kskgr6ld9jrj"; depends=[magrittr stringr]; };
-  r2spss = derive2 { name="r2spss"; version="0.2.0"; sha256="1l3yy4fqnmdndm4mxcn5mnzwcdrsrfgq49z9liivjp587665n8jc"; depends=[car]; };
+  r2spss = derive2 { name="r2spss"; version="0.3.0"; sha256="1an0h4zpy0hjnwn6pihchfmbvkzjqd3vdzqnl1hxvs053z5i9549"; depends=[car ggplot2 scales]; };
   r2sundials = derive2 { name="r2sundials"; version="5.0.0-10"; sha256="1hv5wq6lxrv57pszxky4xiwhjhjlzxa4fh0flrrmrrk89dygkx9v"; depends=[Rcpp RcppArmadillo rmumps]; };
   r2symbols = derive2 { name="r2symbols"; version="0.1"; sha256="1i4sd015dgkv5i89d0cphp3jmn4jn4wqfazklfglysf85b2cm4iw"; depends=[]; };
   r3PG = derive2 { name="r3PG"; version="0.1.3"; sha256="188vjzjya3qxi2xgzxxvf6ys97yxgdbjivwc54f4as37k2ad7l6p"; depends=[]; };
   r3dmol = derive2 { name="r3dmol"; version="0.1.2"; sha256="06wzszqcy50gks1bss81j1l2a4adi271pnz6310w57g681q1ng19"; depends=[bio3d htmlwidgets magrittr]; };
+  r4googleads = derive2 { name="r4googleads"; version="0.1.1"; sha256="1v7nfr6fk9q5dchf3ig4169kv0vx1jrbbsgkdgfhhc2mz3cqck16"; depends=[curl jsonlite]; };
   r4lineups = derive2 { name="r4lineups"; version="0.1.1"; sha256="1p0dnrp21zx1l9lqx01jnq54d5ppb8siibv47i4gsp7c7db9ymxc"; depends=[boot dplyr ggplot2 ggrepel here magick magrittr pROC psych purrr]; };
   r4ss = derive2 { name="r4ss"; version="1.36.1"; sha256="03xin7avdbg5ayrcdbw5rx9sh6ingjq2kv3405h01vqf1jhkfsxk"; depends=[coda corpcor gdata gplots gtools kableExtra pso truncnorm]; };
   r511 = derive2 { name="r511"; version="0.1.1"; sha256="1njsnjf0746cv6x7fznq4cg556fczqcfawwb869r3w9zv0zj1iy9"; depends=[assertthat dplyr httr tibble xml2]; };
-  r5r = derive2 { name="r5r"; version="0.6.0"; sha256="0wzkv7m44vrc9zrffvjxlqnf97cjc40kzjfm6w24xz7ic54glc4z"; depends=[checkmate curl data_table httr raster rJava sf sfheaders]; };
+  r5r = derive2 { name="r5r"; version="0.7.0"; sha256="095db1bi06np8m4n3zprwnhazpa1r0jns86r24ddzdpm0ppdbga4"; depends=[checkmate curl data_table httr raster rJava sf sfheaders]; };
   r6extended = derive2 { name="r6extended"; version="0.1.2"; sha256="1kq1j5rx57053mslj8jx1s0wjvhis7x3y264zw44q4k2x48q9wxs"; depends=[digest hellno magrittr R6]; };
   r6methods = derive2 { name="r6methods"; version="0.1.0"; sha256="18q1qd7hkxbk0yilqdk17cp7qbl4c71jv10z732539wcmy8svb1v"; depends=[dplyr glue magrittr miniUI purrr rstudioapi shiny stringr]; };
   rADA = derive2 { name="rADA"; version="1.1.9"; sha256="0p47nqm8mki03pq5gzc2r5vx4vixs6hpf7am1fvadgi2bn2jrcl2"; depends=[car dplyr e1071 forestplot ggplot2 gridExtra Hmisc knitr lme4 lmerTest matrixStats openxlsx reshape2 stringr tidyr]; };
@@ -14957,7 +15009,7 @@ in with self; {
   rBMF = derive2 { name="rBMF"; version="1.1"; sha256="16yg1k7vv88q421nk1a70626c7c54bwnb3x7kiyxv2c0ha00f3g8"; depends=[Matrix Rcpp]; };
   rBayesianOptimization = derive2 { name="rBayesianOptimization"; version="1.2.0"; sha256="0gwdzv4wl4n940ph23yhjh0s192k9visvivww5k1kmy2b1j88cva"; depends=[data_table foreach GPfit magrittr]; };
   rBeta2009 = derive2 { name="rBeta2009"; version="1.0"; sha256="0ljzxlndn9ba36lh7s3k4biim2qkh2mw9c0kj22a507qbzw1vgnq"; depends=[]; };
-  rBiasCorrection = derive2 { name="rBiasCorrection"; version="0.3.2"; sha256="0lnx38bxf1jgq3frlj1419a957h0abl72hpj0hb0hnlja8vq6fx3"; depends=[data_table future future_apply ggplot2 magrittr nls2 polynom]; };
+  rBiasCorrection = derive2 { name="rBiasCorrection"; version="0.3.3"; sha256="0ld4agm490zhxgykcy0638pxdr8pgh9kb8kzsizizm7ws6cj3gw4"; depends=[data_table future future_apply ggplot2 magrittr nls2 polynom]; };
   rCAT = derive2 { name="rCAT"; version="0.1.6"; sha256="09jyjjbhpm44wrism3zgg56m01yimlcm3xks8g0cq36lsrclcigp"; depends=[pracma rgdal sp]; };
   rCBA = derive2 { name="rCBA"; version="0.4.3"; sha256="10rc08gwsf15f4lci8bbgwpwj8n7k1m23hxk633v68g9amla5nvx"; depends=[arules R_utils rJava TunePareto]; };
   rCMA = derive2 { name="rCMA"; version="1.1"; sha256="0dswshg80hbgcib5x9w791sh71q5s4435q8sm9dh170v4ngbax0w"; depends=[]; };
@@ -14969,9 +15021,8 @@ in with self; {
   rDNAse = derive2 { name="rDNAse"; version="1.1-1"; sha256="0cl51q61kwvdsm5f49cjjbzggqam1fnr6gp15cmy6m2yahyxg1lk"; depends=[]; };
   rDataPipeline = derive2 { name="rDataPipeline"; version="0.54.1"; sha256="0i0vb7gsjshh1wn0lksdma51xdyn6qw54j02cb0xmzcg896gl2p9"; depends=[assertthat cli configr dplyr git2r httr jsonlite openssl R6 rhdf5 semver usethis yaml]; };
   rDecode = derive2 { name="rDecode"; version="0.1.0"; sha256="1d0rrhycw9anhvx6czz7axkzhzqprdgi9sqfglmc962zf1x3hmn2"; depends=[]; };
-  rDotNet = derive2 { name="rDotNet"; version="0.9.1"; sha256="18cd5373pdfi1x958llb4cgjqdi1fb7h7m5nkdwcd4xw9hxhinzd"; depends=[Rcpp testthat]; };
   rDppDiversity = derive2 { name="rDppDiversity"; version="0.0.2"; sha256="0833v5wkamqipfxpsdxz040q6vlgg9qqpwiaivvh8ar5sci10v88"; depends=[Rcpp]; };
-  rEDM = derive2 { name="rEDM"; version="1.10.1"; sha256="0xd00fxxn6m0cg4r4m5sp0wxv28yfz1ldck8bx8m3l6xclvfdvvc"; depends=[Rcpp RcppThread]; };
+  rEDM = derive2 { name="rEDM"; version="1.10.2"; sha256="1cg4g47q6vl231279zmaq6w743gcxj05xa9kf47wf3hzp01lhl1r"; depends=[Rcpp RcppThread]; };
   rEMM = derive2 { name="rEMM"; version="1.1.0"; sha256="18bpskhrafj0b5rnzisrsk5x5gifqn7dpawcsgdrg7rbnz7y1wzr"; depends=[cluster clusterGeneration igraph MASS proxy]; };
   rENA = derive2 { name="rENA"; version="0.2.3"; sha256="067xpw1mgb2y15ld4qc6mnf4b9k7nw8am9qz4ms980wyfp4ffjmj"; depends=[concatenate data_table doParallel foreach magrittr plotly R6 Rcpp RcppArmadillo scales]; };
   rFDSN = derive2 { name="rFDSN"; version="0.0.0"; sha256="1ffiqpdzy4ipy2aci22zkih4373ifkjkpvsrza8awhyf9fwqwdsl"; depends=[XML]; };
@@ -14982,6 +15033,7 @@ in with self; {
   rGammaGamma = derive2 { name="rGammaGamma"; version="1.0.12"; sha256="1051ah6q11qkxj1my4xybbzc8xcqkxfmps8mv2his5cyfllwidbs"; depends=[gsl]; };
   rGhanaCensus = derive2 { name="rGhanaCensus"; version="0.1.0"; sha256="1i8z2cfzk64yhvkia1khsmw666dflai1sj8bhd8n2d97a45nb230"; depends=[]; };
   rGroovy = derive2 { name="rGroovy"; version="1.3"; sha256="172vm4diygzi4ipmw8bl03k0x3aps0h1vkvwvw539kamy7xb5w98"; depends=[rJava]; };
+  rHL7 = derive2 { name="rHL7"; version="1.0.0"; sha256="1irri5a0fb0wmldh7mv9wbd0scg90c9w9cwdcf4dgbvk08ff1831"; depends=[dplyr lubridate matlab randomNames stringi stringr]; };
   rHealthDataGov = derive2 { name="rHealthDataGov"; version="1.0.1"; sha256="0lkjprss15yl6n9wgh79r4clip3jndly2ab1lv4iijzxnxay099d"; depends=[bit64 httr jsonlite]; };
   rHpcc = derive2 { name="rHpcc"; version="1.0"; sha256="0096z90mmf1j2xpb9034a5ph52m8z6n6xjh3km2vrhw63g3cpwap"; depends=[RCurl XML]; };
   rIP = derive2 { name="rIP"; version="1.2.0"; sha256="1f3gbd3ij047n0rh4a7yy6wdjz3b89rki7zaz4y9zgw6bad6ylkl"; depends=[amerika dplyr httr iptools jsonlite]; };
@@ -14997,8 +15049,8 @@ in with self; {
   rLTP = derive2 { name="rLTP"; version="0.1.4"; sha256="04w432m03xwh0szshsrfw5h7wy43q4lj8z0y07k8w6gsf27cy5bx"; depends=[RCurl]; };
   rLakeAnalyzer = derive2 { name="rLakeAnalyzer"; version="1.11.4.1"; sha256="1bwg8mzddsc39km85b41bxp2hwqmb4g5a3010f6yp1qlgcb9rmj1"; depends=[plyr]; };
   rLiDAR = derive2 { name="rLiDAR"; version="0.1.5"; sha256="0sw79zr7hdwprlwijlg6qmn7pmpcnhxfr7ycdz09058c0kd815h8"; depends=[bitops deldir geometry plyr raster rgeos rgl sp spatstat_geom]; };
-  rMEA = derive2 { name="rMEA"; version="1.2.0"; sha256="1h5flmysyxv668si4ycfkkgairy7balk3nm0dsm91gns9xhvjqs0"; depends=[]; };
-  rMIDAS = derive2 { name="rMIDAS"; version="0.3.0"; sha256="1vs77dbd5fs8h61s1pz5zgi10g14707fms1bzisfpp2xnj93ybvg"; depends=[data_table mltools reticulate]; };
+  rMEA = derive2 { name="rMEA"; version="1.2.2"; sha256="18manb926yd6a3b6im7g2vf1cbvvdkg15i6zl223npckhna2nbx0"; depends=[]; };
+  rMIDAS = derive2 { name="rMIDAS"; version="0.4.0"; sha256="09dh6lc4vb4015vdhif0ybq149x8b1vd139was9r6w65n533iz1x"; depends=[data_table mltools reticulate]; };
   rMR = derive2 { name="rMR"; version="1.1.0"; sha256="0da1hclfnnlkp9by6zf2p079643p8nimplr9p3ipbjdy739j344z"; depends=[biglm]; };
   rMVP = derive2 { name="rMVP"; version="1.0.6"; sha256="0c3bmn7k5hgw8mgplyhwf6dkgvrxd29yj829wy5j9z1p88gq6wrk"; depends=[BH bigmemory MASS Rcpp RcppArmadillo RcppEigen RcppProgress]; };
   rMisbeta = derive2 { name="rMisbeta"; version="1.0"; sha256="1h4vilnndl0gnz9z0sgbywp4zy44718zpiqcqigbjbd4lymi0y61"; depends=[ROC]; };
@@ -15017,7 +15069,7 @@ in with self; {
   rQCC = derive2 { name="rQCC"; version="2.22.1"; sha256="0ahzc4aqx1aw50fcir4s5zig4lgllbqi7kvk1yddk6z0sgcg5p1r"; depends=[]; };
   rRAP = derive2 { name="rRAP"; version="1.1"; sha256="1nzvs8bjkbjraa33azxf9mrxsxh87qhh3qlldrcs5y4fq4ancyqb"; depends=[lars lassoshooting MASS]; };
   rRofex = derive2 { name="rRofex"; version="2.0.6"; sha256="0yg3bxadgmn5d7bljzn9bjzy833lfi6bwz24z52f8qcbm1nqchgb"; depends=[dplyr glue httr jsonlite later lifecycle magrittr purrr rlang tibble tidyr websocket]; };
-  rSAFE = derive2 { name="rSAFE"; version="0.1.2"; sha256="0m7xzk76armkd86g643fmpif43dri07vrbq348y8hmys1gnx7ikd"; depends=[DALEX dendextend ggplot2 ggpubr ingredients sets]; };
+  rSAFE = derive2 { name="rSAFE"; version="0.1.3"; sha256="0vhphn56y2yxll3437mb3zaayhhy4dxk0wxxy7lk6qgxw4xlbk04"; depends=[DALEX dendextend ggplot2 ggpubr ingredients sets]; };
   rSCA = derive2 { name="rSCA"; version="3.1"; sha256="0dhd5325x05cbnw34mlipndw5xnncl9kj7kppb2s5bx2gllcdqqd"; depends=[]; };
   rSEA = derive2 { name="rSEA"; version="2.1.1"; sha256="18108ds65ykxygbw1s4i5rb1ngzwymv1x3dhcv1lcwkmqplnaar9"; depends=[ggplot2 hommel]; };
   rSFA = derive2 { name="rSFA"; version="1.04"; sha256="0gd6ji1ynbb04rfv8jfdmp7dqnyz8pxcl5636fypd9a81fggl0gs"; depends=[MASS]; };
@@ -15026,7 +15078,7 @@ in with self; {
   rSPDE = derive2 { name="rSPDE"; version="1.1.1"; sha256="0zji1d292nr8bj149vdk0v48jcg6w56cbxr5xhfm7s5b999qrqxf"; depends=[Matrix]; };
   rSQM = derive2 { name="rSQM"; version="1.3.14"; sha256="0m69n2pnfv2085dln6p149a5gw0gif9xk00xmad5s9j68hwjdmym"; depends=[dplyr EcoHydRology ggplot2 gsubfn mise ncdf4 qmap reshape2 stringr yaml zoo]; };
   rStrava = derive2 { name="rStrava"; version="1.1.4"; sha256="00y400znkwyr6y33wiz0jikpa31a60hdcmsi9x3724zwjh28vynj"; depends=[bitops dplyr geosphere ggplot2 ggrepel googleway httpuv httr magrittr plyr purrr RCurl rvest tibble tidyr V8 XML xml2]; };
-  rTG = derive2 { name="rTG"; version="0.2.2"; sha256="0f1syh2v8a0klcz7rvi8nrn1qv8rjl69ssrliqnh2zpy7c6ck9xs"; depends=[brnn dplyr ggplot2 knitr magrittr mgcv]; };
+  rTG = derive2 { name="rTG"; version="1.0.0"; sha256="1v2wj2cv26hk5s7vm2l75lqgki28ivhkd0b8kspxw2c56cm82r70"; depends=[brnn dplyr ggplot2 knitr magrittr mgcv]; };
   rTLS = derive2 { name="rTLS"; version="0.2.5.2"; sha256="10fkd8ylj9xwvgwnirjw4n6c4vl8y5x8q4mq2zmwlpjryknx82kv"; depends=[alphashape3d boot data_table doSNOW foreach Rcpp RcppArmadillo RcppHNSW RcppProgress rgeos rgl sp]; };
   rTRNG = derive2 { name="rTRNG"; version="4.23.1-1"; sha256="0jlkr57afkg6axkdk020rd3nybx1qzwvy1hjgfw8fwvm79x0kpr7"; depends=[Rcpp RcppParallel]; };
   rTableICC = derive2 { name="rTableICC"; version="1.0.7"; sha256="1z896675kmm9p5dnmcnsz2205ynf05laqcxvlc9y0g5i0x8rf8v6"; depends=[aster partitions]; };
@@ -15039,10 +15091,10 @@ in with self; {
   rWishart = derive2 { name="rWishart"; version="0.1.2"; sha256="0wzijc454mrvmggb7a5jqwjbmk0kzr4bmy0iwniz5cn343pr1rri"; depends=[lazyeval MASS Matrix]; };
   rYoutheria = derive2 { name="rYoutheria"; version="1.0.3"; sha256="1r63ggy4knwzxnpjkmsn7zwmwfaznm8mmxl7r9ph10wz4sblgygl"; depends=[plyr RCurl reshape2 RJSONIO]; };
   ra4bayesmeta = derive2 { name="ra4bayesmeta"; version="1.0-7"; sha256="07fcjqw8w787pcfzjxxwq6160433ms6xk9qrvvm8ybxd7n0f5i44"; depends=[bayesmeta]; };
-  rabhit = derive2 { name="rabhit"; version="0.2.0"; sha256="1gakdwz05x4g0jqh71vf18qcbkmpbh8g5bb17j7f9d8sb1kpafpl"; depends=[alakazam cowplot data_table dendextend dplyr fastmatch ggdendro ggplot2 gridExtra gtable gtools htmlwidgets plotly plyr RColorBrewer reshape2 rlang splitstackshape stringi tidyr tigger]; };
+  rabhit = derive2 { name="rabhit"; version="0.2.1"; sha256="1hgn04qqpp0pbm8c180wc6g3i4dw0wv54b8p8adhkgg3jhbidyv1"; depends=[alakazam cowplot data_table dendextend dplyr fastmatch ggdendro ggplot2 gridExtra gtable gtools htmlwidgets plotly plyr RColorBrewer readr reshape2 rlang splitstackshape stringi tidyr tigger]; };
   rabi = derive2 { name="rabi"; version="1.0.2"; sha256="0jndx1gvsnsv1xrx3ismgvjp7d4kj3436zcawvw32c5klvxx0y4j"; depends=[numbers polynom shiny stringdist]; };
   racademyocean = derive2 { name="racademyocean"; version="0.1.0"; sha256="0xgsjg7ck532fzwyn62pn1hq9khkw0i1pdcam09j5l24ny1akajw"; depends=[cli dplyr httr2 pbapply purrr rappdirs retry rlang stringr tidyr withr]; };
-  raceland = derive2 { name="raceland"; version="1.1.1"; sha256="1sb56id7h1nm34a7kf6abfxwh4kmnnzc51x23cijq6fd3jm4ggnr"; depends=[comat fasterize plotwidgets raster Rcpp RcppArmadillo rgdal sf]; };
+  raceland = derive2 { name="raceland"; version="1.1.2"; sha256="0mkxxqbpq90iw540kzj12352l5r9scgfdj60swqv436jqj21gjah"; depends=[comat fasterize plotwidgets raster Rcpp RcppArmadillo rgdal sf]; };
   racir = derive2 { name="racir"; version="2.0.0"; sha256="0qpjnaifx4z1jvyrc8p5jny0ci20w2ri1rs68sv9b93nkaiixnps"; depends=[]; };
   ractivecampaign = derive2 { name="ractivecampaign"; version="0.2.0"; sha256="1l7266qryba2zijgs7xj4p073l69q0iin6qgsbnn7dafmggv5mlr"; depends=[cli dplyr httr pbapply retry stringr tidyr]; };
   radar = derive2 { name="radar"; version="1.0.0"; sha256="1wh5j3cfbj01jx2kbm9ca5cqhbb0vw7ifjn426bllm4lbbd8l273"; depends=[]; };
@@ -15060,14 +15112,14 @@ in with self; {
   radous = derive2 { name="radous"; version="0.1.3"; sha256="1pip3givlkzb8i65nz6w724818jjr8j8nizpc3g35r9bvpmn7c2y"; depends=[checkmate curl glue httr readr]; };
   radsafer = derive2 { name="radsafer"; version="2.2.6"; sha256="0dmxdrmi8rvng69hsgqj60gw22daasxmy69z1xygd0w7vcsvn9aw"; depends=[dplyr ggplot2 ggthemes magrittr qpdf RadData readr rlang scatterplot3d stringr utf8]; };
   rafalib = derive2 { name="rafalib"; version="1.0.0"; sha256="1dmxjl66bfdgrybhwyaa8d4i460liqcdw8b29a6w7shgksh29m0k"; depends=[RColorBrewer]; };
-  ragg = derive2 { name="ragg"; version="1.2.1"; sha256="08dknkibmmwllycga2cp2732idsi3jfkkl5ghh6r2g2wdli1n2y1"; depends=[systemfonts textshaping]; };
+  ragg = derive2 { name="ragg"; version="1.2.2"; sha256="1q43pwmljsqgrikkh2g1n7bpz9c8py5dnj44cfg3y2br7b4m2q9v"; depends=[systemfonts textshaping]; };
   rags2ridges = derive2 { name="rags2ridges"; version="2.2.5"; sha256="0aqfm8f58xrq81bd80parkwj28i6m0bxdpq6qp1iy3qyxsq5as64"; depends=[expm fdrtool ggplot2 graph gRbase Hmisc igraph RBGL Rcpp RcppArmadillo reshape RSpectra sfsmisc snowfall]; };
   ragt2ridges = derive2 { name="ragt2ridges"; version="0.3.4"; sha256="17i3z0p3a4dqa0bch5l1r830w5nlxhdg71y82jipp6cfiwli588z"; depends=[abind Biobase CGHbase expm fdrtool igraph MASS Matrix mvtnorm rags2ridges Rcpp RcppArmadillo]; };
   ragtop = derive2 { name="ragtop"; version="1.1.1"; sha256="0vgc2q71g8ysccq19kbk9a4swxgd5qj91xm4bshfgdg5chxqnb50"; depends=[futile_logger limSolve]; };
   rai = derive2 { name="rai"; version="1.0.0"; sha256="0qimfzchbrarkwmv3mxxbdgvqzk16sc8m1h140zm0cnfgr2pvi5p"; depends=[dplyr ggplot2 readr rlang]; };
   rainbow = derive2 { name="rainbow"; version="3.6"; sha256="11vfcck17d2xjc049ci5i8l1nqv345anmd110gdz7654i1pj9lb3"; depends=[cluster colorspace hdrcde ks MASS pcaPP]; };
   raincin = derive2 { name="raincin"; version="1.0.3"; sha256="1wi430vsp5c0vm9p1srrs0nrbdb8x31qh7zph4v3fy7j0z226cwh"; depends=[lme4 popdemo]; };
-  rainette = derive2 { name="rainette"; version="0.2.1"; sha256="1c1r0d8hddhcg98dg2d6y1wiyiryigwsiaz5xi24jxlwwm7ll2wm"; depends=[dendextend dplyr formatR ggplot2 ggwordcloud gridExtra highr miniUI progressr purrr quanteda quanteda_textstats Rcpp rlang RSpectra shiny stringr tidyr]; };
+  rainette = derive2 { name="rainette"; version="0.3.0"; sha256="0hg402i7g8rvb7lv36x1ivx6xjixa9c1lram7swk89mgb55vjjla"; depends=[dendextend dplyr ggplot2 ggwordcloud gridExtra highr miniUI progressr purrr quanteda quanteda_textstats Rcpp rlang RSpectra shiny stringr tidyr]; };
   rainfarmr = derive2 { name="rainfarmr"; version="0.1"; sha256="1gasnmyjnis6vv0krx6299ck2a6v9v1fgqajzqdpjaz2fsxn245i"; depends=[]; };
   rakeR = derive2 { name="rakeR"; version="0.2.1"; sha256="0cd89q6k0y9z1qk9k06iw56lhj4c52ckr0g4qv6q95lkyrbi3qg8"; depends=[ipfp wrswoR]; };
   ralger = derive2 { name="ralger"; version="2.2.4"; sha256="1j0np7h051dglva3dj9b64fagr99hvpsza1q2fnc7g3x1ki7mgni"; depends=[crayon curl dplyr robotstxt rvest stringi stringr tidyr xml2]; };
@@ -15088,7 +15140,7 @@ in with self; {
   random_polychor_pa = derive2 { name="random.polychor.pa"; version="1.1.4-4"; sha256="19yzpjidw5pbrqfa5ln5hgghv0mq3cwl92z2isq25yydfl6qsl6h"; depends=[boot MASS mvtnorm nFactors psych sfsmisc]; };
   randomForest = derive2 { name="randomForest"; version="4.7-1"; sha256="04q6gb917md4yw837cf9vlx1q8ljl06jw7yhykzb6nl47w55jnkq"; depends=[]; };
   randomForestExplainer = derive2 { name="randomForestExplainer"; version="0.10.1"; sha256="1ny8c3vn2zvdx12avwvlm4lp648jigkrkcvnhf5qmj8rh0w069v0"; depends=[data_table dplyr DT GGally ggplot2 ggrepel randomForest ranger reshape2 rmarkdown]; };
-  randomForestSRC = derive2 { name="randomForestSRC"; version="3.0.0"; sha256="02izhp3m2avmnxvvdyqz0bsvjs6pmkh8jhq5rv0fra1nqzgf6nwp"; depends=[data_tree DiagrammeR]; };
+  randomForestSRC = derive2 { name="randomForestSRC"; version="3.0.2"; sha256="0zfmz1m2kad3ph67zkhvmalaavvyyif5mk9qlc1q2b17246975na"; depends=[data_tree DiagrammeR]; };
   randomLCA = derive2 { name="randomLCA"; version="1.1-1"; sha256="08flank5pmyh5ih63bfw5qaby3g8vfh8p36sjbmxfylicdydfjl7"; depends=[boot doParallel doRNG fastGHQuad foreach lattice Matrix Rfast]; };
   randomNames = derive2 { name="randomNames"; version="1.5-0.0"; sha256="1lv1vqb4wgs0j1gqy84dpa30qsvbp6928zpshczpw87yf32k71vh"; depends=[crayon data_table toOrdinal]; };
   randomUniformForest = derive2 { name="randomUniformForest"; version="1.1.5"; sha256="1amr3m7h5xcb8gahrr58233chsnx1naf9x5vpjy9p5ivh71xcxf7"; depends=[cluster doParallel foreach ggplot2 gtools iterators MASS pROC Rcpp]; };
@@ -15129,7 +15181,7 @@ in with self; {
   rarms = derive2 { name="rarms"; version="1.0.0"; sha256="11wjxd3pxvjv1j2nz26l8f0kykk9w6lf08izhivfngp63dk2akns"; depends=[jsonlite]; };
   rasciidoc = derive2 { name="rasciidoc"; version="4.0.2"; sha256="1k3bh1bbjrzhmz2dz98qw8ad46jk7dx7srigp22valk5jz4ni7s5"; depends=[checkmate document fritools gert highr knitr reticulate]; };
   rasclass = derive2 { name="rasclass"; version="0.2.2"; sha256="1lsmv8kh519mz3szb4k9s17fz1480cw0i4qk12givhhm2rpzjy50"; depends=[car e1071 nnet randomForest RSNNS]; };
-  rassta = derive2 { name="rassta"; version="1.0.2"; sha256="1f8lkv6n701gy8lgzil9kha62w9pqvfzd8ns9900hvrw50kg6aiy"; depends=[cluster data_table dplyr DT foreach GGally ggplot2 histogram KernSmooth kohonen plotly raster rlang scales shiny stringdist stringi terra]; };
+  rassta = derive2 { name="rassta"; version="1.0.3"; sha256="1shkl4k2hlddph2h0v936yrn6r1gi0dggr19d7v9rqcq5jd84sa1"; depends=[cluster data_table dplyr DT foreach GGally ggplot2 histogram KernSmooth kohonen plotly raster rlang scales shiny stringdist stringi terra]; };
   raster = derive2 { name="raster"; version="3.5-15"; sha256="11fnznymwavpph733dayklhcx4phpjgrijfxlaszi122sg2x7ir9"; depends=[Rcpp sp terra]; };
   rasterDT = derive2 { name="rasterDT"; version="0.3.1"; sha256="1dl083jm4x0shl7lq4in2alksgi63hp1p7j2cnsvkmwjaxygzm9v"; depends=[data_table fasterize raster sf]; };
   rasterImage = derive2 { name="rasterImage"; version="0.4.0"; sha256="191m5k1rbbwziznmxbsq4g55afkw8gb5011i70f3wx3dscr3phxz"; depends=[plotrix]; };
@@ -15137,24 +15189,23 @@ in with self; {
   rasterList = derive2 { name="rasterList"; version="0.5.8"; sha256="0q7apglxzpah04463z07cpkzyd6l6dbbdhm601brzh6yk75z20vh"; depends=[raster]; };
   rasterVis = derive2 { name="rasterVis"; version="0.51.2"; sha256="0kgg6cm7xjqya2d46w0i1i1wjpkb8f99lyqy7rgwa7l9xmwzj5n1"; depends=[hexbin lattice latticeExtra raster RColorBrewer sp terra viridisLite zoo]; };
   rasterbc = derive2 { name="rasterbc"; version="1.0.1"; sha256="17knrhvy2qkdz5bvhnllfkv8w4cm5gjjninwh66pk1xfrqkd4skg"; depends=[sf terra]; };
-  rasterdiv = derive2 { name="rasterdiv"; version="0.2-3"; sha256="1n0zrncda3nk4x8l9wb0acdx25dlki9wwrg874qwhd73cx0iy0rp"; depends=[foreach progress proxy raster svMisc]; };
+  rasterdiv = derive2 { name="rasterdiv"; version="0.2-5"; sha256="1jprhbfih2w3wh9ywmnm42yhsyivqacycgzv9hckb2r49d87zlsv"; depends=[foreach progress proxy raster svMisc terra]; };
   rasterize = derive2 { name="rasterize"; version="0.1"; sha256="18nrhmq1qmi05rkyr86xsyc8nz0fbdpf2d45h62bbfzbfynqd4qy"; depends=[png]; };
   rasterly = derive2 { name="rasterly"; version="0.2.0"; sha256="1fv0ayh8r78qss7ikcwnj0i5x8iyz4c3icsfb554zji9bw30x7qr"; depends=[data_table ggplot2 magrittr plotly Rcpp rlang]; };
   rasterpdf = derive2 { name="rasterpdf"; version="0.1.1"; sha256="0zi54nifbb4dzb29i8rskynblw3z42vzaykwbq30ia5zs9q1bvm5"; depends=[png]; };
-  rasterpic = derive2 { name="rasterpic"; version="0.1.0"; sha256="0knrdca9s15sws2psqi4yc26b6nn5q2p65c5f9wf0n7211534rik"; depends=[png sf terra]; };
+  rasterpic = derive2 { name="rasterpic"; version="0.2.0"; sha256="0vlas1b9la6sp3qkcg831lkfa2n9ms2gq7s0k2wk4lqxmrpq0q66"; depends=[png sf terra]; };
   ratelimitr = derive2 { name="ratelimitr"; version="0.4.1"; sha256="06x759jxr5zcnvg9q120n5bpipkb16piw15kxrpk7i918mby889b"; depends=[assertthat]; };
   ratematrix = derive2 { name="ratematrix"; version="1.2.3"; sha256="0bnwwkmjsxlv4qkkwq93d7nrqb7pyyd70ffpm98xsxfy1ygdxjqq"; depends=[ape coda corpcor ellipse geiger MASS mvMORPH phylolm Rcpp RcppArmadillo readr]; };
   rater = derive2 { name="rater"; version="1.2.0"; sha256="1y4hhcnxdlw17w0ihv108p3rkwwdis7i7vc0rp7l6pfz7an8pw8r"; depends=[BH ggplot2 loo Rcpp RcppEigen RcppParallel rlang rstan rstantools StanHeaders]; };
   rateratio_test = derive2 { name="rateratio.test"; version="1.0-2"; sha256="1a2v12z2dr893ha80fhada1820z5ih53w4pnsss9r9xw3hi0m6k5"; depends=[]; };
   raters = derive2 { name="raters"; version="2.0.1"; sha256="16jnx6vv39k4niqkdlj4yhqx8qbrdi99bwzxjahsxr12ab5npbp1"; depends=[]; };
   ratesci = derive2 { name="ratesci"; version="0.4-0"; sha256="1imraj95vcwz3i6r767zwckjqs1vp7bfww9d792l5nvwi5zyddp4"; depends=[]; };
-  rationalfun = derive2 { name="rationalfun"; version="0.1-0"; sha256="15949vs9pdjz7426zhgqn7y87xzn79ikrpa2vyjnsid1igpyh0mp"; depends=[polynom]; };
+  rationalfun = derive2 { name="rationalfun"; version="0.1-1"; sha256="0xabnqgzl8qdc4x9547mmkr1rm78p3fysdvk6jhjdi8cp2p6kcjh"; depends=[polynom]; };
   ratios = derive2 { name="ratios"; version="1.2.0"; sha256="16q9v2lhgklvdp3hi9x3afdldznfpwg775p80m2g5074q2dzjpgg"; depends=[data_table stringr]; };
-  rattle = derive2 { name="rattle"; version="5.4.0"; sha256="1cg26k491f78yqwis07djad8b3f9ndqwqylbh5sh66l2j9bdpmz5"; depends=[bitops dplyr ggplot2 magrittr rpart_plot stringi stringr tibble tidyr XML]; };
-  rattle_data = derive2 { name="rattle.data"; version="1.0.2"; sha256="0cnmyzvy23jc4vz521c3jg0w4165waycvy5014l5773fy19zq75c"; depends=[]; };
   raveio = derive2 { name="raveio"; version="0.0.5"; sha256="0c17f9cgh453d22lxa2ds5q6si27chk55cyzlmp1klipx4mfq3jp"; depends=[callr data_table dipsaus edfReader filearray fst glue hdf5r ini jsonlite R_matlab R6 remotes stringr targets threeBrain yaml]; };
   ravelRy = derive2 { name="ravelRy"; version="0.1.0"; sha256="07mywv57rw2b309i2qisbpx1x3sb3z6n2b5gia9bdmb2m4hhpdai"; depends=[dplyr httr jsonlite purrr tibble tidyr]; };
   raven_rdf = derive2 { name="raven.rdf"; version="0.2.0"; sha256="12jy3md6d1qwzkks5iljn4h0iv5lj3n39ll7r3fvrxjwh7afvw7r"; depends=[]; };
+  ravetools = derive2 { name="ravetools"; version="0.0.3"; sha256="1jw58da0220889vf1pchgnyjwzh2m3zk5kh1ssdp9hx3v8w0jdcj"; depends=[digest filearray Rcpp signal waveslim]; };
   raw = derive2 { name="raw"; version="0.1.8"; sha256="1y2vhpgigzkd2xyj3986wlzm1g3pp99w6fspmhlff5czd73g16is"; depends=[]; };
   rawKS = derive2 { name="rawKS"; version="0.1.0"; sha256="1yiw9imhgij49qbm9hk6psb73zngqmxxwnaxq144ydwb7fbk6j0z"; depends=[dplyr ggplot2 magrittr ROCR tidyr]; };
   raws_profile = derive2 { name="raws.profile"; version="0.1.0"; sha256="04f7wk7x9j3rb6nn3zqss9vw0h9a4vpcjyilc2vqy0fm2by41xkg"; depends=[stringr tibble withr]; };
@@ -15166,7 +15217,7 @@ in with self; {
   rbace = derive2 { name="rbace"; version="0.2.2"; sha256="04jcbrcp0l1v2q8hhwr5w72spdja8r0fw71v68kx39yigy7m1sgp"; depends=[crul data_table tibble xml2]; };
   rbacon = derive2 { name="rbacon"; version="2.5.7"; sha256="14j84bkgmxigzj5nk909b89ails7mzys8wk92gvcywv2p9yhwk6b"; depends=[coda IntCal Rcpp]; };
   rbart = derive2 { name="rbart"; version="1.0"; sha256="1byfm1ycw9nfhdblqklyn8pxn6b9q5fa3inbgfpynqpsid97ig35"; depends=[Rcpp]; };
-  rbcb = derive2 { name="rbcb"; version="0.1.8"; sha256="07hnv19q10vgcq6qzzm4y4y0rfi8rzd41hvawl01lk3y8b9lz2v0"; depends=[httr jsonlite tibble xml2 xts]; };
+  rbcb = derive2 { name="rbcb"; version="0.1.9"; sha256="1vhdbrci803365ik5y6mbpa9wjg7ixz6vbxw78v31irrnn814ish"; depends=[httr jsonlite tibble xml2 xts]; };
   rbch = derive2 { name="rbch"; version="0.1-1"; sha256="0n2s5qfgjvg7vv65myz6dcmmaf37z883z1sw4hryngz2z6w4zz5q"; depends=[gmp httr openssl rjson]; };
   rbefdata = derive2 { name="rbefdata"; version="0.3.5"; sha256="12mcqz0pqgwfw5fmma0gwddj4zk0hpwmrsb74dvzqvgcvpfjnv98"; depends=[RColorBrewer RCurl rjson rtematres wordcloud XML]; };
   rbenchmark = derive2 { name="rbenchmark"; version="1.0.0"; sha256="010fn3qwnk2k411cbqyvra1d12c3bhhl3spzm8kxffmirj4p2al9"; depends=[]; };
@@ -15185,6 +15236,7 @@ in with self; {
   rbit = derive2 { name="rbit"; version="1.0.0"; sha256="09ywr711gv0vgfims2vfcxk3rnd0iadzlksil0q9159yarapfc59"; depends=[R6]; };
   rbitcoinchartsapi = derive2 { name="rbitcoinchartsapi"; version="1.0.4"; sha256="0r272jvjh3rzch8dmn4s0a5n5k6dsir7pr4qswzfvafqjdiwjajz"; depends=[RCurl RJSONIO]; };
   rblt = derive2 { name="rblt"; version="0.2.4.5"; sha256="1pfg8sgm532czz3lhpx7dmg5zik3bc0p4vdq9s0qk5zgq7nnm9sj"; depends=[data_table dygraphs hdf5r shiny xts]; };
+  rbmi = derive2 { name="rbmi"; version="1.1.1"; sha256="09d40aqdzri0364k54zwd5ixh7n7bf16nfjb3jb8bcjcpzqsywsr"; depends=[assertthat BH glmmTMB Matrix R6 Rcpp RcppEigen RcppParallel rstan rstantools StanHeaders]; };
   rbmn = derive2 { name="rbmn"; version="0.9-4"; sha256="039scbjzigj9ks62l8yagfpr3bpslvxg1nqv22pyw8jay8i6993g"; depends=[MASS]; };
   rbokeh = derive2 { name="rbokeh"; version="0.5.2"; sha256="1h2fpzqf17pw9d09r1g1iyxsj5qma4fsk8vnar7f1z4fjyypvi6q"; depends=[digest gistr hexbin htmlwidgets jsonlite lazyeval magrittr maps pryr scales]; };
   rbooster = derive2 { name="rbooster"; version="1.1.0"; sha256="0v524hjp3im94hbf6kbmi4xhqnak135mmpmq1sni1c97dqal2hqy"; depends=[earth Hmisc rpart]; };
@@ -15194,17 +15246,16 @@ in with self; {
   rbtc = derive2 { name="rbtc"; version="0.1-6"; sha256="1z5p1jn5b0hzwcbdpiwj224h45x01bbsgkskllir5j13l416561p"; depends=[gmp httr openssl rjson]; };
   rbtt = derive2 { name="rbtt"; version="0.1.0"; sha256="1gbsb0vmqxcl28c5nn0rz95bxrvl7i0b17lq90cj5ahbk6x9jblz"; depends=[data_table]; };
   rbundler = derive2 { name="rbundler"; version="0.3.7"; sha256="0wmahn59h9vqm6bq1gwnf6mvfkyhqh6xvdc5hraszn1419asy26f"; depends=[devtools]; };
-  rbw = derive2 { name="rbw"; version="0.3.0"; sha256="0mxkwxb54n8vmx0z574mc39v53hlcq91nfmyqcdmxlp2jaz20184"; depends=[dplyr rlang]; };
+  rbw = derive2 { name="rbw"; version="0.3.2"; sha256="12kldcx858gigd9sfki73rgg61smk7qcb43lx7z2r5y9dr0mwaa7"; depends=[dplyr rlang]; };
   rcDEA = derive2 { name="rcDEA"; version="1.0"; sha256="012l9l61p3mw38fk3y3rcfjjjj9ds5kb1v2cwfvad2il5w6s9smv"; depends=[Benchmarking np]; };
   rcage = derive2 { name="rcage"; version="1.1"; sha256="0k6x543c0v31yx6b7xiyq7pb3a68sxc7ap8l61h3lp840la6gidp"; depends=[ClustGeo ff fields ggplot2 gridExtra LaplacesDemon MASS Matrix pracma raster rgeos rlang sf sp]; };
   rcaiman = derive2 { name="rcaiman"; version="0.1.1"; sha256="0p6qn23mj90fj81j5gc7s8v1kihfqnv3r03xh9d8rax4jd2dni92"; depends=[colorspace magrittr pracma raster Rdpack rgdal sp spatial testthat]; };
   rcane = derive2 { name="rcane"; version="1.0"; sha256="0p2mgkq6fh0n289n2h19c52lnqxl05wvpmd6nwvgnjqwa4wwpa7r"; depends=[]; };
   rcanvec = derive2 { name="rcanvec"; version="0.2.1"; sha256="0gsk2cfiysxjw2lrnpl2l524lvhh9nhnyyh79n8p7vykyqj711yn"; depends=[rgdal sp]; };
-  rcarbon = derive2 { name="rcarbon"; version="1.4.2"; sha256="04s1gqrfa5hy93jnqj5sqii49gz7mq7nm23jnd0iwl48f847vka1"; depends=[doSNOW foreach iterators knitr snow sp spatstat spatstat_core spatstat_geom spatstat_linnet]; };
+  rcarbon = derive2 { name="rcarbon"; version="1.4.3"; sha256="18yxliq6bxrrkd6xhlrxbbh017lclsfkvmgq662zy58a6wfjmqxh"; depends=[doSNOW foreach iterators knitr snow sp spatstat spatstat_core spatstat_geom spatstat_linnet]; };
   rcartocolor = derive2 { name="rcartocolor"; version="2.0.0"; sha256="08ljaag2mnhz2671zvwji1sp003z94lz30vjidmybm9fp8piqw5g"; depends=[ggplot2 scales]; };
-  rcbalance = derive2 { name="rcbalance"; version="1.8.5"; sha256="15qlk3cqwsvixl17l1fxcajrabmz4y7q5gz0a1pd66f6i1xskcqq"; depends=[MASS plyr]; };
+  rcbalance = derive2 { name="rcbalance"; version="1.8.6"; sha256="140zibpamk9x2xj3ni9p9kgbhxv7rpszlfrvp72854604502zbia"; depends=[MASS plyr]; };
   rcbayes = derive2 { name="rcbayes"; version="0.2.0"; sha256="1qwbpx9snqgaz7gshvyhq9ylsf59grjhx56f7cnq25h2f76km9cc"; depends=[BH dplyr magrittr Rcpp RcppEigen RcppParallel Rdpack rlang rstan rstantools shiny shinythemes StanHeaders tibble tidybayes]; };
-  rcbsubset = derive2 { name="rcbsubset"; version="1.1.5"; sha256="0qfx8qzsrlgbgpymc67ywy9k8dgfjz5x54xwabf2bjjwrzv2mcl5"; depends=[MASS plyr rcbalance]; };
   rcc = derive2 { name="rcc"; version="1.0.0"; sha256="0a77d54c9qahhsjzpa0436ddsj4j44013r7rbxm0fjz04c0d2921"; depends=[]; };
   rccdates = derive2 { name="rccdates"; version="1.0.0"; sha256="1f87qlw62am2qy1zzrz91vmsn8axhld44gak61xa7046675hm98s"; depends=[rccmisc]; };
   rccmisc = derive2 { name="rccmisc"; version="0.3.7"; sha256="171s2ll759xjdnx0z24ih5ix2vcp4qnmf1nf107gij6wv8k450ab"; depends=[dplyr]; };
@@ -15221,10 +15272,10 @@ in with self; {
   rclipboard = derive2 { name="rclipboard"; version="0.1.5"; sha256="0c4h7bzv91issha1ss5mp0iq0aj3aw4y84kw56s3jkxwy9vgvmfn"; depends=[shiny]; };
   rcmdcheck = derive2 { name="rcmdcheck"; version="1.4.0"; sha256="1l696byn3kjq2xvz4wxybzaj6ink85h4lz3a35v2132ba5yyzm5v"; depends=[callr cli curl desc digest pkgbuild prettyunits R6 rprojroot sessioninfo withr xopen]; };
   rco = derive2 { name="rco"; version="1.0.2"; sha256="1ch7ak802ri4jr10jqvhvdi6q9fhyhql15ja395xfv6j81d5cmia"; depends=[]; };
-  rcol = derive2 { name="rcol"; version="0.2.0"; sha256="1ypn5fiwhyvfnmjs2davqqhxf5pjg7f0101v40bqrv4jz563h5n1"; depends=[crul data_table glue jsonlite tibble]; };
   rcolors = derive2 { name="rcolors"; version="0.1.0"; sha256="19lkwd1wdwq9if957qjgrz9mq6s8x49dig8snivhw9ksffcfy4xp"; depends=[magrittr]; };
   rcompanion = derive2 { name="rcompanion"; version="2.4.13"; sha256="0y5d4z903fj7z326y9alnnlr0hcmxspccv2swra8a4j927csr764"; depends=[boot coin DescTools lmtest multcompView nortest plyr]; };
   rcompendium = derive2 { name="rcompendium"; version="0.5.1"; sha256="0zg7051c4wg1jbdf7hshswy53y24x8h8myhshvg9z2pg8mvd8sir"; depends=[clisymbols crayon devtools gert gh gtools rmarkdown rstudioapi stringr usethis xfun]; };
+  rconfig = derive2 { name="rconfig"; version="0.1.1"; sha256="0jcwfhbqh4sb8y5wd8l05xz0y7nn28dhfkb2r40jbp6ycrvw8mpp"; depends=[jsonlite yaml]; };
   rcoreoa = derive2 { name="rcoreoa"; version="0.4.0"; sha256="0q5dprz0ag04w265bk7isd2lr61nahf223qza47m0izd9nyi9h8a"; depends=[crul hoardr jsonlite pdftools]; };
   rcorpora = derive2 { name="rcorpora"; version="2.0.0"; sha256="1b8xa81mn3afadz77576vda9b0d99f1k096drxrpqd989g993aqy"; depends=[jsonlite]; };
   rcosmo = derive2 { name="rcosmo"; version="1.1.3"; sha256="08zw2xnchima9gzjn3nchj8q1phf3cchq9340fffsac77l4am3mb"; depends=[cli entropy FITSio geoR mmap nnls Rcpp rgl tibble]; };
@@ -15235,15 +15286,15 @@ in with self; {
   rcube = derive2 { name="rcube"; version="0.5"; sha256="1162y7fs3fsbb5jj66g9kvxxhggprlifrabqbb9lqm8rrdwhz3r9"; depends=[magrittr]; };
   rdacca_hp = derive2 { name="rdacca.hp"; version="1.0-7"; sha256="0ww67wa3rjy0p2dgqr4h69sy9jb7ipmrmycx902491jya0gwsw2a"; depends=[ggplot2 vegan]; };
   rdatacite = derive2 { name="rdatacite"; version="0.5.2"; sha256="07zbxr89fxx9nlp5w7n60rjm3prck08h0fjrq0pnpkbnnkx9cv9a"; depends=[crul jsonlite tibble]; };
-  rdataretriever = derive2 { name="rdataretriever"; version="3.0.0"; sha256="1a01lrzn7gcxid01r0l8nnbpbryvs07z9nf43l1143w2n9bvgn24"; depends=[reticulate semver]; };
   rdbnomics = derive2 { name="rdbnomics"; version="0.6.4"; sha256="1h32wxjykz9y3k48rx31cvy485gsx8ix3194r2zgxlwdza3rl3lb"; depends=[curl data_table jsonlite]; };
   rdd = derive2 { name="rdd"; version="0.57"; sha256="1lpkzcjd18x51wzr4d1prdjfsw5978z6zap65psfs02nszy69nqp"; depends=[AER Formula lmtest sandwich]; };
+  rddapp = derive2 { name="rddapp"; version="1.3.0"; sha256="1yh5yx0jfvxs566kh4dmx4k9h6gh7n4rvvv8aw4mr52ihisradqm"; depends=[AER DT Formula lmtest plot3D R_utils sandwich shiny sp]; };
   rddensity = derive2 { name="rddensity"; version="2.2"; sha256="00xmdy3885j3j5sh3civlgggscr946gh7ibd6namqhbzhsnpwrd3"; depends=[ggplot2 lpdensity]; };
   rddtools = derive2 { name="rddtools"; version="1.6.0"; sha256="12lxdpazfhwn5kkzs91qhs0xcky30dj01yp0v5708ahr1ywqdxmd"; depends=[AER Formula ggplot2 KernSmooth lmtest locpol np rdd rdrobust rmarkdown sandwich]; };
   rde = derive2 { name="rde"; version="0.1.0"; sha256="1zw9gdh90hl0wc5c0xwl5x7566r611wk73sbqdmpzpswjyyl9aqm"; depends=[clipr]; };
   rdecision = derive2 { name="rdecision"; version="1.1.0"; sha256="1rj9sw6r6rimzxbyjjczi5znmdkvqb7kkrdsnzz35n8g43s7h2wr"; depends=[R6 rlang]; };
   rdetools = derive2 { name="rdetools"; version="1.0"; sha256="0pkl990viv7ifr7ihgdcsww93sk2wlzp2cg931wywagfp8dijd02"; depends=[]; };
-  rdflib = derive2 { name="rdflib"; version="0.2.4"; sha256="1i08l8s6077xgfm4hkxfs5zq7rkblhbkdiimh4gcynbscs4is0nc"; depends=[dplyr jsonld readr redland stringi tidyr]; };
+  rdflib = derive2 { name="rdflib"; version="0.2.5"; sha256="0qbqn72c26pi3mc53z0sip5zpmkdpwggysj5vrn4zgccs7932r79"; depends=[dplyr jsonld readr redland stringi tidyr]; };
   rdfp = derive2 { name="rdfp"; version="0.1.4"; sha256="1490227hhfjjscfmd8p897v1ijs61pk5sc0a2vr9yjnfmsnxpqrl"; depends=[curl data_table dplyr httr lubridate plyr purrr readr XML xml2]; };
   rdhs = derive2 { name="rdhs"; version="0.7.3"; sha256="156jsil81ha61az78w1fi8fzrwhlircidha5x6c29zl0l6m4jzv9"; depends=[brio digest foreign getPass haven httr iotools jsonlite magrittr qdapRegex R6 rappdirs rgdal storr xml2]; };
   rdi = derive2 { name="rdi"; version="1.0.0"; sha256="1c49mkxfyxhqz8fc155kgy1k5by0y2c1ahy8k6pn9k8l1j4m4m2q"; depends=[beanplot gplots pdist stringr]; };
@@ -15314,7 +15365,7 @@ in with self; {
   recapr = derive2 { name="recapr"; version="0.4.4"; sha256="1grp8aczn3qjm8ihn2466v5yay60vwyf1x7jsmihgxlvgwki6dh7"; depends=[MASS]; };
   recexcavAAR = derive2 { name="recexcavAAR"; version="0.3.0"; sha256="0b91jbgqzkgzvk658ckk639yyz1daa0xql3qgl0kzgqg68d53x20"; depends=[kriging Rcpp]; };
   rechonest = derive2 { name="rechonest"; version="1.2"; sha256="0vpff8q5p6in7vjyl62bx3wmksravcg4mpx20qlgy5ia47vyhqp2"; depends=[httr jsonlite RCurl]; };
-  recipes = derive2 { name="recipes"; version="0.1.17"; sha256="0gbdc5kvbn14s5zrf4vrdjvkfajs00p7vvb433ii0lqnl07bl87d"; depends=[dplyr ellipsis generics glue gower ipred lifecycle lubridate magrittr Matrix purrr rlang tibble tidyr tidyselect timeDate vctrs withr]; };
+  recipes = derive2 { name="recipes"; version="0.2.0"; sha256="1950rvva19ms6xy9d3jx94gzy589qprk115zjjd0ib4qxgip601x"; depends=[dplyr ellipsis generics glue gower hardhat ipred lifecycle lubridate magrittr Matrix purrr rlang tibble tidyr tidyselect timeDate vctrs withr]; };
   reclin = derive2 { name="reclin"; version="0.1.2"; sha256="0bskmlysc12g5invscr0vvshy8bp1gxjx4wihwbbfzmnk2951qrc"; depends=[dplyr ldat lpSolve lvec Rcpp stringdist]; };
   reclin2 = derive2 { name="reclin2"; version="0.1.1"; sha256="12pb8gp9c5vhfikl4v348dmz0xig10gbrnwxmgmn3jv75ys9ppzq"; depends=[data_table lpSolve Rcpp stringdist]; };
   recluster = derive2 { name="recluster"; version="2.9"; sha256="1nz5w4v5hhb3qjwxixc526gqsmr1imw582l9gj2acwar4z9mixjp"; depends=[ape cluster phangorn phytools picante plotrix vegan]; };
@@ -15330,7 +15381,7 @@ in with self; {
   recommenderlabBX = derive2 { name="recommenderlabBX"; version="0.1-1"; sha256="042yh0h8qxj7n9hysrfdxnpb3g0zb6s5b683s7hn5mjc55q7nn4g"; depends=[recommenderlab]; };
   recommenderlabJester = derive2 { name="recommenderlabJester"; version="0.1-2"; sha256="0kr9xc2gih2myn1a8h8dxxmdhibv1sjwjsvlrj9d5hvd1mgfhks5"; depends=[recommenderlab]; };
   reconstructKM = derive2 { name="reconstructKM"; version="0.3.0"; sha256="0fxdmvkm68g114nx2r2r8gy2lwqc5wkfcls7fpdfdfg0aazqqxwq"; depends=[dplyr magrittr rlang survival survminer]; };
-  reconstructr = derive2 { name="reconstructr"; version="2.0.2"; sha256="0pzpd2l1b6y1b1lnd95lpc5s8niz7p56vkmxgyi6g6b25vh9c2vi"; depends=[openssl Rcpp]; };
+  reconstructr = derive2 { name="reconstructr"; version="2.0.4"; sha256="05nvp19fkmyr2sc7k5qjz2521f8nrzxvjdbnqa148qs0mac84b16"; depends=[openssl Rcpp]; };
   recorder = derive2 { name="recorder"; version="0.8.2"; sha256="1j3fqqp5vi8z3hxqgb887v9r8x0cl5jikiyx3c7arwna7k89215a"; depends=[crayon data_table]; };
   recosystem = derive2 { name="recosystem"; version="0.5"; sha256="0xpkq500cbq6vzgwq5scq8bj33nrjj94n39zza2cm1fnars6msjq"; depends=[float Rcpp RcppProgress]; };
   recurse = derive2 { name="recurse"; version="1.1.2"; sha256="0bdm2nd8cq64dwz9b2hnbjv6c3fwpy7gnmbfi6p49nf285p8y632"; depends=[Rcpp]; };
@@ -15340,7 +15391,7 @@ in with self; {
   redcapAPI = derive2 { name="redcapAPI"; version="2.3"; sha256="1myycwdrlw1405fxc82zd8ps8bhdvf2ffsb91pia5ijf6952v8pf"; depends=[checkmate chron DBI httr labelVector lubridate readr stringr tidyr]; };
   reddPrec = derive2 { name="reddPrec"; version="0.4.0"; sha256="0zmkaiivvjq8mcaz310zgjjc7y0wgsqv29bf8nhli5qawaczvb9a"; depends=[fields snowfall]; };
   redist = derive2 { name="redist"; version="3.1.5"; sha256="18g78x6riqqczhi5rixr7fikfzhrf46b62y4ii18r99q9z65k4z4"; depends=[coda doParallel dplyr foreach ggplot2 patchwork Rcpp RcppArmadillo readr rlang servr sf stringr sys tidyselect vctrs]; };
-  redistmetrics = derive2 { name="redistmetrics"; version="1.0.0"; sha256="02d2mkgrkb81rgyqzj8yphgq4mbh4m2gah0j58mvqq1mrlhryg7j"; depends=[cli doParallel dplyr foreach geos magrittr Rcpp RcppArmadillo rlang sf]; };
+  redistmetrics = derive2 { name="redistmetrics"; version="1.0.1"; sha256="01s3aim2rmsbs74mc3banqv4m1mdb82qa38wg96pydw7qr7by63w"; depends=[cli doParallel dplyr foreach geos magrittr Rcpp RcppArmadillo rlang sf wk]; };
   redland = derive2 { name="redland"; version="1.0.17-16"; sha256="1nzxyczsz274751z48glh8qzv1v9rdv3raq6whyp63nsi2xdri90"; depends=[roxygen2]; };
   redlistr = derive2 { name="redlistr"; version="1.0.3"; sha256="003jxfmj1gryw77vnrvaxmpvjbshlq53wgcrj02mcywfcqzg4jcr"; depends=[plyr raster rgeos sp]; };
   redoc = derive2 { name="redoc"; version="2.0.0.49"; sha256="06nfqw6xs0ij21mjbqk9sdvhhh0pqf6fwankvagsbyrv742g7qkx"; depends=[jsonlite]; };
@@ -15353,6 +15404,7 @@ in with self; {
   refitME = derive2 { name="refitME"; version="1.2.2"; sha256="125hxp24vlwg3g0v1rlhi3zbvnnzyj95a6d9f52f98hf6bp05yhb"; depends=[caret dplyr expm MASS mgcv mvtnorm sandwich scales SemiPar VGAM VGAMdata]; };
   refnr = derive2 { name="refnr"; version="0.1.0"; sha256="1gjjzxpyxm1kf1pqk99bd7f2j85rzmww3r1268bccivf19rs881i"; depends=[]; };
   refreg = derive2 { name="refreg"; version="0.1.0"; sha256="0fgf99a9xki9x0kjrhi7lyr1f4gpfl52xis058fd70y4pj1zz37l"; depends=[doParallel foreach ggplot2 gridExtra KernSmooth ks matrixcalc mbend mgcv misc3d pracma RColorBrewer rgl sp stringr]; };
+  refreshr = derive2 { name="refreshr"; version="0.1.0"; sha256="0p240a7f2yajrd5qqjv0la49vm2cs6i32zyxxjcs6rd2a1z9xwfs"; depends=[crayon dplyr lubridate stringr]; };
   refset = derive2 { name="refset"; version="0.1.1"; sha256="1xbwvm9066g3f7pd34z5jh04vph4ddy2lkcgmf4kiwa1k5czpwg1"; depends=[]; };
   refuge = derive2 { name="refuge"; version="0.3.3"; sha256="0cq62rgawlam4j4h4sz4zvkgi0x21k4syy4vh7i40bxrq0z9ysyz"; depends=[dplyr httr jsonlite tibble]; };
   refund = derive2 { name="refund"; version="0.1-24"; sha256="089dl0vjn474gka9j18fk125aqvwd2gx61g1rv8cp6m0caq99pzg"; depends=[boot fda gamm4 ggplot2 grpreg lattice lme4 magic MASS Matrix mgcv nlme pbs RLRsim]; };
@@ -15363,7 +15415,9 @@ in with self; {
   regexPipes = derive2 { name="regexPipes"; version="0.0.1"; sha256="1hk0rhvmgzcyf5cyl8hjznl3ll25kpasqikfr6nxd6ian2slvmmb"; depends=[]; };
   regexSelect = derive2 { name="regexSelect"; version="1.0.0"; sha256="0xnb9qa8l63ang4r40ky4qhlrs5mbzvmj98dgij26j3mq1ys1pa7"; depends=[shiny shinyjs]; };
   regexTestR = derive2 { name="regexTestR"; version="0.1.3"; sha256="0nnp2xlrrywpi1lmj8ymsjgiqvq8777hhdgcwjq549m7whfw6lsg"; depends=[config data_table DT golem htmltools pkgload processx purrr RColorBrewer rvest shiny shinyBS shinythemes stringr tidyr xml2]; };
+  regfilter = derive2 { name="regfilter"; version="1.0.1"; sha256="19dp0219a789qjxc0flg14bwp297g3kcy5p65m9qsw72658pxw3z"; depends=[e1071 FNN gbm modelr nnet randomForest rpart]; };
   reghelper = derive2 { name="reghelper"; version="1.1.0"; sha256="16mj3v9rn9krx4a8xnb2l01wnk17hgn0pkmkvqh4baby9a479hv7"; depends=[ggplot2 lme4 MASS nlme]; };
+  regional = derive2 { name="regional"; version="0.3.0"; sha256="1x97jjpn08q0w3xw1r6k8dvildcl16zzwxwrwmbdhavqmcvf0lp8"; depends=[philentropy terra]; };
   regioncode = derive2 { name="regioncode"; version="0.1.1"; sha256="1h5qbpcfgl86g0cy5nz9vvwzqsp335lqhl4djil3k3mab38k778d"; depends=[dplyr knitr pinyin textshaping]; };
   regions = derive2 { name="regions"; version="0.1.8"; sha256="16i0w1my9zfwh0p9qvc3vcid0r6rb6gbvvrx03vbg81l6cxrglr4"; depends=[assertthat countrycode dplyr glue here magrittr purrr readxl rlang stringr tibble tidyr tidyselect]; };
   registr = derive2 { name="registr"; version="1.0.0"; sha256="1ysj2ab69w6g71d1kpcwyq0py71w6h7lfhk4nzgn2dhh6k8whwbn"; depends=[dplyr ggplot2 gridExtra magrittr Rcpp RcppArmadillo tidyr]; };
@@ -15384,7 +15438,7 @@ in with self; {
   regsubseq = derive2 { name="regsubseq"; version="0.12"; sha256="0879r4r8kpr8jd6a3fa9cifm7cv0sqzz8z1alkm1b2fr1625md3g"; depends=[]; };
   regtomean = derive2 { name="regtomean"; version="1.0"; sha256="1w5i75iwwc2w2nzw9yap86njhq9jz0pc9cn39ivxdam4a9693jjz"; depends=[effsize formattable mefa plotrix plyr sjlabelled sjmisc sjPlot]; };
   regtools = derive2 { name="regtools"; version="1.1.0"; sha256="1kia4h4bwjjfq7jm57ihdgspbqfn683ssbzngp5r069ki931h3nb"; depends=[dummies FNN mvtnorm sandwich]; };
-  regweight = derive2 { name="regweight"; version="1.0.1"; sha256="1crw4yw2hxla9xw1zj1dxxj2v1r77vijm9pf8mn9vpdz45mw8pkr"; depends=[checkmate dplyr ggplot2 glue gt lpdensity rlang scales tidyr tidyselect]; };
+  regweight = derive2 { name="regweight"; version="1.0.2"; sha256="1ziqii9xlp86n6ga99glwnh2kf6pkm8m326yra40yf2w3h180pbm"; depends=[checkmate dplyr ggplot2 glue gt lpdensity rlang scales tidyr tidyselect]; };
   rehh = derive2 { name="rehh"; version="3.2.2"; sha256="1kgabmg0vq8psdhkfcpdv3iy8gj5hmqzhb8bs8rld49nhnnbqs2x"; depends=[rehh_data]; };
   rehh_data = derive2 { name="rehh.data"; version="1.0.0"; sha256="1jkvwmnnmfa7iyvrabgcfzw3vfzx0dlgq47s6yf4zayi437v4di0"; depends=[]; };
   rehydratoR = derive2 { name="rehydratoR"; version="0.5.2"; sha256="1d94m9hv1l72l9lph2vzbq4qqbfcgyhv2qk82p9vb8l2ckavjzvv"; depends=[dplyr jsonlite rtweet tibble]; };
@@ -15392,10 +15446,9 @@ in with self; {
   reinsureR = derive2 { name="reinsureR"; version="0.1.0"; sha256="19ayikzcq6z4i7xrlby76yy2nwvrsv6xdfrmvzyr7rz934flh8kd"; depends=[data_table dplyr ggplot2 viridis viridisLite]; };
   relMix = derive2 { name="relMix"; version="1.3.3"; sha256="03zzmsx2i7ib1mhdfk5igvr1winl9g2dfjqz2kzvcx3rl7l6hjym"; depends=[Familias gWidgets2 gWidgets2tcltk]; };
   relSim = derive2 { name="relSim"; version="0.3-1"; sha256="1d6yihapfyjlfw87l370wyfyby7ivvykx04qljffdv3hi801gn7f"; depends=[multicool Rcpp rvest stringr xml2 xtable]; };
-  rela = derive2 { name="rela"; version="4.1"; sha256="00ksm7zh1mpd2d5c5d823id3sxj0h3x0ccg6a40fadibvr1ay3ny"; depends=[]; };
   relaimpo = derive2 { name="relaimpo"; version="2.2-6"; sha256="1v2zvakzrnc89dshhpkrikfwa7l786sk5vnz4khil5f53biahm4r"; depends=[boot corpcor MASS mitools survey]; };
   relatable = derive2 { name="relatable"; version="1.0.0"; sha256="0147gin6dn76gg7gassar64f0w2gny1sh0k60v7914qhb4sj4s7i"; depends=[compare]; };
-  relations = derive2 { name="relations"; version="0.6-10"; sha256="13h6snbbczwk4zcpsmbbrxvhy6dwv1pm2zwfh0cz2sr7djhb0q5n"; depends=[cluster sets slam]; };
+  relations = derive2 { name="relations"; version="0.6-11"; sha256="1nsl042djnd7l61ckv3pwndqwxjcwvnvpni6d52dxc982gm8sims"; depends=[cluster sets slam]; };
   relaxo = derive2 { name="relaxo"; version="0.1-2"; sha256="1rzmq7q3j271s6qwwrmwidv0vxcjpgjhyiqgr6fkczkai2lbnd8x"; depends=[lars]; };
   reldist = derive2 { name="reldist"; version="1.7-0"; sha256="0i04d6w3r6fzm4bykz6lnnh6dngmd61v5wlpli70r3fzdzhi7fji"; depends=[densEstBayes Hmisc mgcv]; };
   relen = derive2 { name="relen"; version="1.0.1"; sha256="0br7c3j30a1yc61pyinmk5lvk8zw9rivd0z2096g6crgmbzix8ml"; depends=[]; };
@@ -15406,7 +15459,7 @@ in with self; {
   reliabilitydiag = derive2 { name="reliabilitydiag"; version="0.2.0"; sha256="0qgvyjc512gwr0rbgxkkf9ipvxfl9y07215f1pdk15xhzkk94m53"; depends=[bde dplyr ggExtra ggplot2 magrittr purrr rlang tibble tidyr vctrs]; };
   relimp = derive2 { name="relimp"; version="1.0-5"; sha256="0ydn82g8xdqzhf34187080bbpcpw1zdjbj2i3dv1d6d35vvprb5c"; depends=[]; };
   relliptical = derive2 { name="relliptical"; version="1.1.0"; sha256="0qarn0gyr1zkr1y9hdy0xmlrx12cp9sfn1fglgprfbymbjr36ncc"; depends=[FuzzyNumbers_Ext_2 matrixcalc Rcpp RcppArmadillo Rdpack Ryacas0]; };
-  relsurv = derive2 { name="relsurv"; version="2.2-6"; sha256="11g07282k1h7r342ayi1xwk85z5h7j800fqr4zrwm8m00nlwcdch"; depends=[date ggplot2 pammtools scales survival]; };
+  relsurv = derive2 { name="relsurv"; version="2.2-7"; sha256="05w3j75fvli296bkza1s4jjxsjhiwzrv71dqrf8v7f9y1az4pj42"; depends=[date ggplot2 pammtools scales survival]; };
   rem = derive2 { name="rem"; version="1.3.1"; sha256="1q4p26irhhl1lvc0ydv9wmng1y635zm16szpl7gwq1kyn2p90rai"; depends=[doParallel foreach Rcpp]; };
   rema = derive2 { name="rema"; version="0.0.1"; sha256="15b68pynac9ff9bina0mf94absvfsn21xcdmvd4lbl97pxwj83ph"; depends=[progress Rcpp Rdpack]; };
   remap = derive2 { name="remap"; version="0.2.1"; sha256="0fvi0scrjcghkfamdilfyqqn0v9zlgpjdkqwk4ylhpb85x5pv534"; depends=[sf units]; };
@@ -15420,23 +15473,24 @@ in with self; {
   remss = derive2 { name="remss"; version="1.0.1"; sha256="15s3qvcfyp1880ddzpvgiw3q5av21052iy1vnpw0hib5pb7xfkfb"; depends=[survival]; };
   renpow = derive2 { name="renpow"; version="0.1-1"; sha256="0kbfpzr17fvf5zzxpzdhvfmrqmlkba2w3rzxl5q5ac1w3h75gfhc"; depends=[]; };
   rentrez = derive2 { name="rentrez"; version="1.2.3"; sha256="0x1g2f6hvkqqlb39z8m5qxhcvsizddic5i7rpqw0wy77xfbna9gv"; depends=[httr jsonlite XML]; };
-  renv = derive2 { name="renv"; version="0.15.2"; sha256="1nv5hz40cbvdbc2kkr2q2xqnpkgkmp47nlfbr7z57mpn579zyznh"; depends=[]; };
+  renv = derive2 { name="renv"; version="0.15.4"; sha256="0byfs4cydhyqzdrxjv7sa6i30xc7qhnx0qw9d8wwwlzdkv235flf"; depends=[]; };
   renz = derive2 { name="renz"; version="0.1.1"; sha256="0xanqqyz8cq8vfxy7vfxcf6fyh8r28bqpc7820fbl77g960cx5jw"; depends=[VGAM]; };
   repairData = derive2 { name="repairData"; version="0.1.0"; sha256="1l5ag952165b0nm59mp9v768dp53xm51ckg01i4c6l04qfzx1lm7"; depends=[]; };
   repana = derive2 { name="repana"; version="1.23.2"; sha256="1wic76sln37qjdrviaz689c5gjf4pc3ffdgvzcvjh0kjvl7d8jfh"; depends=[config DBI dplyr lubridate magrittr openxlsx pool processx readr rmarkdown rstudioapi]; };
-  repeated = derive2 { name="repeated"; version="1.1.4"; sha256="0mz0nrrqcfr560qykzq452i406f07jlx543jaagh5ap8m18s2nwa"; depends=[rmutil]; };
+  repeated = derive2 { name="repeated"; version="1.1.5"; sha256="1ng2w0zypaa48qrfpdx1mb085yvw9zgk81q96ki2y3rls4g6q84g"; depends=[rmutil]; };
   repec = derive2 { name="repec"; version="0.1.0"; sha256="0alr9fbmfxmnnnn1qymy65crcycynwz435jj0vangbb4p0qhv8pm"; depends=[jsonlite]; };
   repello = derive2 { name="repello"; version="1.0.1"; sha256="118m0vybgf5ys856zivn7gvjxqq163gkrhrpyl1avylib4bp3mcq"; depends=[dplyr httr stringr]; };
   repfdr = derive2 { name="repfdr"; version="1.2.3"; sha256="0jpk44arg1jib0h2w90h851bs5cd1ss32fab9bfvf9iir2jk8985"; depends=[Rcpp]; };
   replacer = derive2 { name="replacer"; version="1.0.1"; sha256="1y5f61r0rc4snpv8sjh4g5gc0f7rik5wdnh92sakafwiisjssmc1"; depends=[data_table]; };
-  replicateBE = derive2 { name="replicateBE"; version="1.1.0"; sha256="0ix6qmgyh4j9klhmb7dqj5zwb42y2grlqxijv72lmkbyl59yqqqw"; depends=[lmerTest nlme pbkrtest PowerTOST readxl]; };
+  replicateBE = derive2 { name="replicateBE"; version="1.1.1"; sha256="11xhn75n8hfw8ab5gkg9bi6vg66220hsdywjbskycdly4c5444jk"; depends=[lmerTest nlme pbkrtest PowerTOST readxl]; };
   replicatedpp2w = derive2 { name="replicatedpp2w"; version="0.1-3"; sha256="1h680xn403fm98ywyxqwhq7llsaghgd4ffjq7r5bdb1r9ahvxrv0"; depends=[spatstat spatstat_core spatstat_geom spatstat_utils]; };
   replicationInterval = derive2 { name="replicationInterval"; version="2.0.1"; sha256="1jyvyqr8r2fs1cmbz7zjcc8p116bnkslvx27pqi92y5pxgqvsqvr"; depends=[ggplot2 MASS MBESS pbapply]; };
   repmis = derive2 { name="repmis"; version="0.5"; sha256="0z5mjbsl24yjbl0aawr35grcal44rf2xbwv1hy7bdkms94ix79b5"; depends=[data_table digest httr plyr R_cache]; };
   repmod = derive2 { name="repmod"; version="0.1.7"; sha256="1rpmvxfw2m3bisi5g90sdfm8wmwg2gv9rzblq9kl70kvrs8pj1qs"; depends=[boot flextable lme4 lmerTest officer xtable]; };
   repo = derive2 { name="repo"; version="2.1.5"; sha256="13gdka37kbs4mp16pf65bh28f0dkyalrcrdik6lc67jw8r9h94f9"; depends=[digest]; };
+  repoRter_nih = derive2 { name="repoRter.nih"; version="0.1.0"; sha256="0kdjg0hmhw4h5gwmzxr44xrr1lkij3p75729mwbqxqfdgn784ajx"; depends=[assertthat crayon dplyr httr janitor jsonlite lubridate magrittr purrr tibble]; };
   repolr = derive2 { name="repolr"; version="3.4"; sha256="13kmy09c7lk8p1mkdss0krcsfb6d7zcnqpwnl38zkanvh8q3fqhm"; depends=[Matrix Rcpp RcppArmadillo]; };
-  report = derive2 { name="report"; version="0.5.0"; sha256="1wnyr15p2wycjlp37aqdnrwl8slcxqmj1wv859i8qaja00cdz39j"; depends=[bayestestR datawizard effectsize insight parameters performance]; };
+  report = derive2 { name="report"; version="0.5.1"; sha256="1x293zjg4zfkcrgl6dsa6jn0igpxr12ic7jlb4ps79221ygga873"; depends=[bayestestR datawizard effectsize insight parameters performance]; };
   reportROC = derive2 { name="reportROC"; version="3.5"; sha256="1f3vdxz45bhks1pm3b41pmh8g8vr2czfr1pn4ddy4kgw5h1x3n8n"; depends=[pROC]; };
   reportReg = derive2 { name="reportReg"; version="0.3.0"; sha256="0qwrpn61x69hmgln5fpc58dqfa3pba0lgjjyj0f3fh96wc9jyhq1"; depends=[nlme]; };
   reporter = derive2 { name="reporter"; version="1.2.9"; sha256="0aiv4wqv633jiazyf157dwi1bp6qgv6vnsnsral02cp9sm53cpq9"; depends=[crayon fmtr jpeg stringi]; };
@@ -15468,6 +15522,7 @@ in with self; {
   reshape = derive2 { name="reshape"; version="0.8.8"; sha256="0s6i0sqxg1vldxs6miv8mi0zydxbqzgpmzfiwkj8y7jix3yrfmad"; depends=[plyr]; };
   reshape2 = derive2 { name="reshape2"; version="1.4.4"; sha256="1n0jrajpvc8hjkh9z4g8bwq63qy5vy5cgl2pzjardyih4ngcz3fq"; depends=[plyr Rcpp stringr]; };
   resourcer = derive2 { name="resourcer"; version="1.1.1"; sha256="0zjr12fxjlw9zwa5n3l7r2m6vrksvczdzyhq3aj3hzqbm148z1cq"; depends=[httr R6]; };
+  respR = derive2 { name="respR"; version="2.0.0"; sha256="19pyhplwmghm9qcz6b99nvsr6g3wnilr03ssf1cakh0q8km3x4as"; depends=[assertthat broom cowplot data_table dplyr ggplot2 glue gridExtra lubridate magrittr marelac purrr readxl roll segmented stringr xml2]; };
   respirometry = derive2 { name="respirometry"; version="1.3.0"; sha256="1ffhkvf8a8zhkysghd636k47bl7k5bdwkkg4m0pr1zlxpfrif82c"; depends=[birk lubridate marelac measurements minpack_lm PKNCA seacarb segmented]; };
   responsePatterns = derive2 { name="responsePatterns"; version="0.1.0"; sha256="0iyx35kq82w18v8c7lfz7x31c2cgywn4xh8hg0ad3gsdygadq8hq"; depends=[]; };
   restatapi = derive2 { name="restatapi"; version="0.12.8"; sha256="10x6zik6szvkmjzasv6dpa363jwim1jim9z27jc3x29kd3nw79hl"; depends=[data_table rjson xml2]; };
@@ -15476,7 +15531,7 @@ in with self; {
   restimizeapi = derive2 { name="restimizeapi"; version="1.0.0"; sha256="1ss6fng5pmqg6cafc256g9ddz8f660c68ysxfan6mn4gdaigz7lb"; depends=[RCurl RJSONIO]; };
   restorepoint = derive2 { name="restorepoint"; version="0.2"; sha256="0pjp5dvycvfg75hhj8lrr2lrjn6n6bqj0ziwyd87lyi15b9j8w4s"; depends=[]; };
   restrictedMVN = derive2 { name="restrictedMVN"; version="1.0"; sha256="0qynkg244gzq0yjb0716w7g1sxdq66i11ss8jij86h2mz3ykj137"; depends=[MASS]; };
-  restriktor = derive2 { name="restriktor"; version="0.3-100"; sha256="0249zhlskvk3ib1vncqh1vfpssh3la7fxd566ag2anfd53a644m8"; depends=[boot ic_infer lavaan MASS mvtnorm quadprog]; };
+  restriktor = derive2 { name="restriktor"; version="0.3-400"; sha256="0iaxbjci4334aasx62w61jagv1v51355pyyjfj62392vvz11q4mj"; depends=[boot ic_infer lavaan MASS mvtnorm quadprog]; };
   resumer = derive2 { name="resumer"; version="0.0.5"; sha256="0k3s2i102hvsag7jiahgfpjc09646xjpxcpv5x3d91ch3xipdc0b"; depends=[dplyr rmarkdown useful]; };
   rethinker = derive2 { name="rethinker"; version="1.1.0"; sha256="02zfx08s5xisv1v4y16iqbddi9kb3fcr249b3414fzvs4nm5as94"; depends=[rjson]; };
   rethnicity = derive2 { name="rethnicity"; version="0.2.2"; sha256="0ccx6314gh08bnqca8a5x2bq4fk290lba0k72f0anszyamkvgfnj"; depends=[cli Rcpp RcppEigen RcppThread]; };
@@ -15520,14 +15575,14 @@ in with self; {
   rfisheries = derive2 { name="rfisheries"; version="0.2"; sha256="16j3hn1py8khqadmh81qsg76c62wzqkaq3fn39z0z5mgynmcm62j"; depends=[assertthat data_table ggplot2 httr rjson]; };
   rfishnet2 = derive2 { name="rfishnet2"; version="0.2.0"; sha256="0g90h4353kp7szv3971kb4l5x3x08qx4f9ln85n5g3b3zdg77dkz"; depends=[dplyr ggplot2 pracma rworldmap sf]; };
   rflexscan = derive2 { name="rflexscan"; version="1.0.0"; sha256="1azjdri1dnxqd128p3iya1x36bbhhrckmj08rp23jzfi5zd71c8s"; depends=[igraph Rcpp rgdal sp]; };
-  rflsgen = derive2 { name="rflsgen"; version="0.1.2"; sha256="1jjayksvk78jg9v6dhxd88lvq18vbnwinvxd490yllnpagfhz23x"; depends=[checkmate raster rgdal rJava]; };
+  rflsgen = derive2 { name="rflsgen"; version="1.0.0"; sha256="1ljmdxys25gmy0m928xnp9krq43lmrxwip6vwji0jghy4h9b0f49"; depends=[checkmate jsonlite raster rgdal rJava]; };
   rfm = derive2 { name="rfm"; version="0.2.2"; sha256="1s8h9ll4l5xq3m7ib83zrab49p5q4wclk8qiy2hgjr2hq1sb7wak"; depends=[dplyr ggplot2 ggthemes lubridate magrittr RColorBrewer rlang tibble tidyr xplorerr]; };
   rfoaas = derive2 { name="rfoaas"; version="2.1.0"; sha256="0w6m3lvfb60a2zfvyc0ksnfllb2ndy45b301vk9f3nr27lxdz6dm"; depends=[httr]; };
-  rfordummies = derive2 { name="rfordummies"; version="0.1.5"; sha256="1glzc20sbv90fbazy3wh6drqd5dkh47s3fjqzgm78dkmj6gp9hdv"; depends=[openxlsx]; };
+  rfordummies = derive2 { name="rfordummies"; version="0.1.6"; sha256="01xv6ds3h8gvi1wi5hgy3r1dhi0767mcgsnshvhva3bnvf1a8398"; depends=[]; };
   rforensicbatwing = derive2 { name="rforensicbatwing"; version="1.3.1"; sha256="1i521h2nmlkhcxfxqir8jfjv0llwr6cz0ck5w6hzplk48044bn16"; depends=[Rcpp]; };
-  rfviz = derive2 { name="rfviz"; version="1.0.0"; sha256="0rzyy7r2ybqjnp1g5bbkxydpa93h8q4r71kdaj77r475m2i4kb6b"; depends=[loon randomForest]; };
+  rfviz = derive2 { name="rfviz"; version="1.0.1"; sha256="1pxr9bsqg27vgbngj89hhjq0gyzgdlg69rz6kzvvd8gclg42wisv"; depends=[loon randomForest]; };
   rgabriel = derive2 { name="rgabriel"; version="0.7"; sha256="1c6awfppm1gqg7rm3551k6wyhqvjpyidqikjisg2p2kkhmyfkyzx"; depends=[]; };
-  rgbif = derive2 { name="rgbif"; version="3.6.0"; sha256="083zj5bcbag2qhx2c04ym666lclfyv10w4zd2kvbm7nqhmy8ah99"; depends=[conditionz crul data_table ggplot2 jsonlite lazyeval magrittr oai R6 tibble wellknown whisker xml2]; };
+  rgbif = derive2 { name="rgbif"; version="3.7.0"; sha256="03av5xzf13jnrmwg1jgdixvqb991v1z6kw9wvjihhvc842mbd44b"; depends=[conditionz crul data_table ggplot2 jsonlite lazyeval magrittr oai R6 tibble wellknown whisker xml2]; };
   rgdal = derive2 { name="rgdal"; version="1.5-28"; sha256="18k1w8cb77h4mw1m5b21r0fng40arb1md24fyriv83ccz8n46m3z"; depends=[sp]; };
   rgdax = derive2 { name="rgdax"; version="1.2.1"; sha256="01hpyyhb6jcw9w0q9h4ghgh4cbba27mfl9zdv4vv4ppakvl80czl"; depends=[digest httr jsonlite plyr RCurl]; };
   rgee = derive2 { name="rgee"; version="1.1.2"; sha256="0r0mr2gqj75dkga552xfikiiy76h14js8qh29swin3f23xr9dwz0"; depends=[cli crayon jsonlite leafem leaflet magrittr processx R6 reticulate rstudioapi]; };
@@ -15542,14 +15597,16 @@ in with self; {
   rgexf = derive2 { name="rgexf"; version="0.16.2"; sha256="00c2zka1n3k7p1l0mlchr063s6x58p9r3fb64d4wgl4rvsq55q3f"; depends=[igraph servr XML]; };
   rgl = derive2 { name="rgl"; version="0.108.3"; sha256="0fqkx079z9y5b1gdg6qfz2wpw2j8q3ddflfkd9wwrkyacas6xyc9"; depends=[htmltools htmlwidgets jsonlite knitr magrittr R6]; };
   rglobi = derive2 { name="rglobi"; version="0.2.27"; sha256="12rqd92i0n7lgnp57a4pfp1fpnhm8v0lmmlfzcy0d8vhvzwgfhw7"; depends=[curl RCurl readr rjson]; };
+  rglplus = derive2 { name="rglplus"; version="1.0"; sha256="1yr93laa48aj3rhnz8kih500kngynwnq2px1xnbgya9xsxyc2l5v"; depends=[rgl]; };
   rglwidget = derive2 { name="rglwidget"; version="0.2.1"; sha256="0siqxn3gyl98i84p0yha821b4rdrp2i0942mkx819wnf7qwrpqcv"; depends=[rgl]; };
   rgnparser = derive2 { name="rgnparser"; version="0.2.0"; sha256="01dmnyyprnayzn21vgdj9058l17kx8z4fisw4bp4lc6yif39q1r9"; depends=[jsonlite readr sys tibble]; };
-  rgoogleads = derive2 { name="rgoogleads"; version="0.4.1"; sha256="13fg1swqx761h3jwam0pfg772gagyc3pn551sb75ai44dnji2qwd"; depends=[cachem cli dplyr gargle httr jsonlite magrittr memoise pbapply purrr rappdirs rlang rlist rvest snakecase stringr tidyr withr]; };
+  rgoogleads = derive2 { name="rgoogleads"; version="0.5.1"; sha256="1j51pkk747vdryiymhd7j3by5z2dz9qi7mnlyp7vc53j835syzlr"; depends=[cachem cli dplyr gargle httr jsonlite magrittr memoise pbapply purrr rappdirs rlang rlist rvest snakecase stringr tidyr withr]; };
   rgoogleslides = derive2 { name="rgoogleslides"; version="0.3.2"; sha256="0h9gws1vcf0zdd21d8b65c2yz9kxppp3218h5lhd5iz879ajwa2i"; depends=[assertthat httr jsonlite R6]; };
   rgovcan = derive2 { name="rgovcan"; version="1.0.3"; sha256="0b1fk7w3x60y0j74pglv14i0d76f13pzslghrday04qzkxy9smvd"; depends=[ckanr cli crayon crul tibble]; };
   rgplates = derive2 { name="rgplates"; version="0.1.0"; sha256="1pxvccyq8m1dbq4rl0fi4vwp6k5w83gjwpga9r182z87cij97j43"; depends=[rgdal sp]; };
   rgr = derive2 { name="rgr"; version="1.1.15"; sha256="1mrnmbh2crhkwdi37q59hx76afvkhgzgaacg3688q7jp23d58z6x"; depends=[fastICA MASS]; };
-  rgrass7 = derive2 { name="rgrass7"; version="0.2-7"; sha256="0mk3v6md2cayn7jyfi4225fld51aqv93srzlvk1j53rphi9pzs81"; depends=[XML]; };
+  rgraph6 = derive2 { name="rgraph6"; version="2.0-1"; sha256="1gjw7pjjpz0n94rij6qnr3rdikk7hw3l9zf4hzsrry7fb3db5fv6"; depends=[Rcpp]; };
+  rgrass7 = derive2 { name="rgrass7"; version="0.2-8"; sha256="1crgrc68j7ps1hwph9qyrpamvysqvvi8q1rf8mghrq87vd7g18z8"; depends=[XML]; };
   rgrassdoc = derive2 { name="rgrassdoc"; version="1.0.0"; sha256="18fcacf4v9n8cd27rc2lidwqm04151ya30pcs0bfhkssz80x0zds"; depends=[cli rlang rstudioapi xml2]; };
   rgsp = derive2 { name="rgsp"; version="0.2.0"; sha256="1fk0k479srfr0f4a5abyzcrzwy9hr1v5xf0jgs36fbim9bh7njlc"; depends=[dplyr magrittr tibble]; };
   rgtmx = derive2 { name="rgtmx"; version="0.1.4"; sha256="0zqab6zhfkc302nsa13nbi5bc45xwrhsrn42g2jnjw2xpnfk3ynz"; depends=[httr jsonlite]; };
@@ -15567,19 +15624,20 @@ in with self; {
   rhosp = derive2 { name="rhosp"; version="1.10"; sha256="1k0rb4fchjlzinky6ysdvyk0xjsx5986aqwn3yc6s7m3v7y9wb9m"; depends=[]; };
   rhub = derive2 { name="rhub"; version="1.1.1"; sha256="05b4phrny85fshismspjbaz1h0klg1fpy4b309si94pnqffxaqx6"; depends=[assertthat callr cli crayon desc digest httr jsonlite parsedate pillar prettyunits processx R6 rappdirs rcmdcheck rematch tibble uuid whoami withr]; };
   rhymer = derive2 { name="rhymer"; version="1.1.0"; sha256="00piml975chmmm3ipskzhfbbp5sq47yg5a78hsisssbzwwxsmbs0"; depends=[httr jsonlite]; };
-  rhype = derive2 { name="rhype"; version="0.0.1"; sha256="148ssg1rxhw5wsm989fws5dc6lrx23nai22awxmpr1lx06khrm6a"; depends=[R6]; };
+  rhype = derive2 { name="rhype"; version="0.2.0"; sha256="0grfa62d54x129l08v22ybfvjvvlzv5la5yxp9wi1a203r792xkr"; depends=[Matrix R6 RSpectra]; };
   ri = derive2 { name="ri"; version="0.9"; sha256="00y01n9cx95bjhdpnh7vi0xd5p6al3sxbjszbyxafn7m9mygmnhv"; depends=[]; };
   ri2 = derive2 { name="ri2"; version="0.2.0"; sha256="0zadczx7awymn420hf15sci5z1hq5rpid866gpa1wmrhcyh177nh"; depends=[estimatr generics ggplot2 pbapply randomizr]; };
+  riAFTBART = derive2 { name="riAFTBART"; version="0.2.0"; sha256="1i2npxr1riip4ac9vlm8bqf72pp3zvl9mhni6w3r1qh53hx8d3q7"; depends=[BART cowplot dbarts doParallel dplyr foreach ggplot2 magrittr MASS MCMCpack msm nnet stringr survival tidyr twang]; };
   ribd = derive2 { name="ribd"; version="1.3.1"; sha256="1an3cifgvw7rrsq1plfycpk1yhlsncn83s2f9xl52161iyljwj6g"; depends=[glue kinship2 pedtools slam]; };
   ricegeneann = derive2 { name="ricegeneann"; version="1.0.2"; sha256="0wxqp4pfdhvq4mwzjrqi3m9jiayk5bp1ha222mpm4qz1pl41cy9w"; depends=[riceidconverter]; };
   riceidconverter = derive2 { name="riceidconverter"; version="1.1.1"; sha256="143f76v3k2q9ddcxf2nzvd04pjgy7p120ln0zkmxpal20c81dwq6"; depends=[dplyr]; };
   riceware = derive2 { name="riceware"; version="0.4"; sha256="0pky0bwf10qcdgg9fgysafr35xbmnr9q0jbh56fawj99nbyj3m70"; depends=[random]; };
   rich = derive2 { name="rich"; version="1.0.1"; sha256="0kasr9gb85qhngfayqy3fvrsr0a066krwxsx21nsxcnss0mrqygr"; depends=[boot vegan]; };
   ricu = derive2 { name="ricu"; version="0.5.1"; sha256="0p5lv9gwy3qkwagj946y60v6qwhpav3iqid4kgfbcxwczjybdapg"; depends=[assertthat backports cli curl data_table fansi fst glue jsonlite openssl prt readr rlang tibble vctrs]; };
-  ridge = derive2 { name="ridge"; version="3.1"; sha256="0aznp0bl19fny3ag1xvsqxm2bix3k9wi5v1syj733kb4vsb0wrrp"; depends=[]; };
+  ridge = derive2 { name="ridge"; version="3.2"; sha256="08bl83rbv2rqd96383ymanqk2xy0yr6blklrj6rzi95zvw2xq6jp"; depends=[]; };
   ridigbio = derive2 { name="ridigbio"; version="0.3.5"; sha256="0526nscxynl3857zybpms1wr3230qby29kxglm919pcdvpjb5kz5"; depends=[httr jsonlite plyr]; };
   ridittools = derive2 { name="ridittools"; version="0.1"; sha256="1m9xbwxb277l4cd85qxmpw66gyavpwamgwr8kyf8vqarzfbwiilr"; depends=[]; };
-  riem = derive2 { name="riem"; version="0.2.0"; sha256="1b0kag1drn45lmy786xqr94zsbfk16xp4ia9284x753hzcggnfqd"; depends=[httr jsonlite lubridate tibble]; };
+  riem = derive2 { name="riem"; version="0.3.0"; sha256="0a0nl1857x7qw8y8n5fq9hfhh1s25cihd2532zxfyvy14icwf72i"; depends=[httr2 jsonlite lubridate magrittr purrr rlang tibble]; };
   rifle = derive2 { name="rifle"; version="1.0"; sha256="1r0cfj3vzndgiarl9sb38zmpnpm4p8v9l5cm9c1m6g2q9kvpgpbs"; depends=[MASS]; };
   rigr = derive2 { name="rigr"; version="1.0.1"; sha256="0cjk03llklml3h6dmdahdbnxanynii64q664fax62dbkncxg5gqa"; depends=[Exact plyr sandwich survival tibble]; };
   riingo = derive2 { name="riingo"; version="0.3.1"; sha256="1ww9ps0v1yga9dwb68crbhf56xw2svl7az95ifrdrswyyikj02vj"; depends=[crayon glue httr jsonlite purrr rlang tibble vctrs]; };
@@ -15593,7 +15651,7 @@ in with self; {
   rioja = derive2 { name="rioja"; version="0.9-26"; sha256="02af6is38nakzr1hf9688n32m5glk1jyp2d9p4irn0mzk7r6r976"; depends=[mgcv vegan]; };
   ripserr = derive2 { name="ripserr"; version="0.1.1"; sha256="1rwsd1yi5vrzdscjgr27fw0d1a6nkc8g2w5hqgqijiwm25h4wl17"; depends=[Rcpp]; };
   rise = derive2 { name="rise"; version="1.0.4"; sha256="12r7mbaxp9pjypbpjxlsbqg7spw80gjgm2w0lsvgvclffc50a6ni"; depends=[dplyr ggplot2]; };
-  riskCommunicator = derive2 { name="riskCommunicator"; version="0.1.0"; sha256="1f8nfha6sgn52f3qvb2bkawv6c8ivrm5n6sy1ggx9337xjl35baz"; depends=[boot dplyr ggplot2 gridExtra magrittr purrr rlang tidyr tidyselect tidyverse]; };
+  riskCommunicator = derive2 { name="riskCommunicator"; version="1.0.0"; sha256="0j4pdz4b0mq116yy9zyz4bf5avvp74q3a026b5hn7dr2xhvp4hb3"; depends=[boot dplyr ggplot2 gridExtra magrittr MASS purrr rlang tidyr tidyselect]; };
   riskParityPortfolio = derive2 { name="riskParityPortfolio"; version="0.2.2"; sha256="1n2z1vhslrip209j79wm03wmwqdcnbm939sir2wfs5h2cfv126xk"; depends=[alabama Matrix nloptr quadprog Rcpp RcppEigen]; };
   riskPredictClustData = derive2 { name="riskPredictClustData"; version="0.2.6"; sha256="0mvy9299pg374gvvqs9lmj2j0f3bzyy279kjpz7jq35hkgz5wif3"; depends=[gee Hmisc MASS mvtnorm]; };
   riskR = derive2 { name="riskR"; version="1.1"; sha256="1qadfyb07idfw0bs006kb3917rzda83di6jmsr22941gv78z1wyv"; depends=[]; };
@@ -15617,7 +15675,7 @@ in with self; {
   rjdqa = derive2 { name="rjdqa"; version="0.1.1"; sha256="0d7jv3a2a7p7h6jnr5znln06x6m4mksb6cy44xdxir1pwcd1z6br"; depends=[plotrix RJDemetra XLConnect]; };
   rje = derive2 { name="rje"; version="1.10.16"; sha256="1a9lxikc5n4sb5fzlw8w8ys65npvlvqfail3mq5zi46smd1s9qp8"; depends=[knitr]; };
   rjmcmc = derive2 { name="rjmcmc"; version="0.4.5"; sha256="14rzvp6z5avlcnmlmvb6w4gvlh6v4ncbcai3v4c4svnjv555vz45"; depends=[coda madness mvtnorm]; };
-  rjpdmp = derive2 { name="rjpdmp"; version="1.0.0"; sha256="017cbrrmgh4p5almsyxrp86yg3kkg59kz5snnb1xb4qr068zfpm7"; depends=[data_table Rcpp RcppArmadillo]; };
+  rjpdmp = derive2 { name="rjpdmp"; version="2.0.0"; sha256="0r0r58zrwab4zxhgbfhh4qk6vbbza00m8h73mz70f5kqp786i9wy"; depends=[data_table Rcpp RcppArmadillo]; };
   rjqpd = derive2 { name="rjqpd"; version="0.2.3"; sha256="14vbp9s2859h4n3m3bq830nvxvk58h3mvvdnb27qsalbcfwd94v5"; depends=[]; };
   rjson = derive2 { name="rjson"; version="0.2.21"; sha256="1qm27r1w677zg31gsiln60hcciszbymkw78cnaq7s36cbk9mcawq"; depends=[]; };
   rjstat = derive2 { name="rjstat"; version="0.4.1"; sha256="0kqnl4wizmain70ady982aldhscf24870shvf3sviknplshhgk8j"; depends=[checkmate jsonlite]; };
@@ -15628,15 +15686,16 @@ in with self; {
   rknn = derive2 { name="rknn"; version="1.2-1"; sha256="1x9r01314q0wgqwqzd7d13ycjzb4jzghzd3whgjvm2rsmnabai95"; depends=[gmp]; };
   rkt = derive2 { name="rkt"; version="1.6"; sha256="1sqij8ivjrrb1lii3jwvgsx9zqv47ib1lhrh6zvvh5a67didwrih"; depends=[]; };
   rkvo = derive2 { name="rkvo"; version="0.1"; sha256="0ci8jqf9nc8hb063nckxdnp0nlyr4ghby356lxm00anw44jlmw8v"; depends=[Rcpp]; };
-  rlang = derive2 { name="rlang"; version="1.0.1"; sha256="0zxd44pzq620sb0f0vf97vzp8r2sxzv225m0k8rbw3akyz0db7z5"; depends=[]; };
-  rlas = derive2 { name="rlas"; version="1.5.0"; sha256="0i1sp8r9r3m9m0r0bn741l9dnz4prn63hfxxzf9i8pshqp1nnnvk"; depends=[BH data_table Rcpp]; };
+  rlang = derive2 { name="rlang"; version="1.0.2"; sha256="1k6pzl2x80pycpllvd8n1k62h5cfdwc0hsdwvbicrcxhdwz7rs4d"; depends=[]; };
+  rlas = derive2 { name="rlas"; version="1.5.2"; sha256="0ib7nd9fbqyw0bs0p0lh67ml1zfl70h45iyasqv2wvwrmsrh4hy9"; depends=[BH data_table Rcpp]; };
   rlc = derive2 { name="rlc"; version="0.4.1"; sha256="1znx2749m9af3jq3avxf50amkhzvimr5ybwmk4g9vhwka86c3vqk"; depends=[hwriter jrc jsonlite plyr R6 stringr]; };
+  rlcv = derive2 { name="rlcv"; version="1.0.0"; sha256="00fz949jabbzci22yjlhc7bh4j2h44llplcrgsrbi3h97lrg7hc0"; depends=[statmod]; };
   rld = derive2 { name="rld"; version="1.0"; sha256="1glv4q25z14hcwifwg623h77p4awpsn3nk843pnph4sb3p5qbmn3"; depends=[emdbook MASS survival]; };
   rle = derive2 { name="rle"; version="0.9.2"; sha256="0sagl0jggg40lihzy7pfq4593rfvc3b3f7g6ggi85s7n18qvwg40"; depends=[]; };
   rleafmap = derive2 { name="rleafmap"; version="0.2"; sha256="1i2qczipg7lr6fl35lcl896r54jia7libxx83darrfzc1hd9sdcq"; depends=[knitr raster sp]; };
   rlecuyer = derive2 { name="rlecuyer"; version="0.3-5"; sha256="09mniai7v8gapr6hd3zm8sm3vi1zcyhgym389904ykb2yx7l68s7"; depends=[]; };
   rless = derive2 { name="rless"; version="0.1.1"; sha256="0ham8kf2hbswrcnc5i5b3svywdwq3kwp9n66n4k9sllahl4x9jdn"; depends=[V8]; };
-  rlfsm = derive2 { name="rlfsm"; version="1.0.3"; sha256="0pnxy4gnkbk2alm4bjk6i1yik880li1jqkq63dwm7g441fhx30kx"; depends=[doParallel foreach ggplot2 plyr Rcpp Rdpack reshape2 stabledist]; };
+  rlfsm = derive2 { name="rlfsm"; version="1.1.1"; sha256="0pv6136b1b5q46q75msjc6bzzx1wcq23313kv1b3bvpwpiyw52gn"; depends=[doParallel foreach ggplot2 plyr Rcpp Rdpack reshape2 stabledist]; };
   rliger = derive2 { name="rliger"; version="1.0.0"; sha256="1gqdwmy073sg48id015q02bx20xsqyc6jpbw4nym3c09cqz681dr"; depends=[cowplot doParallel dplyr FNN foreach ggplot2 ggrepel hdf5r ica irlba Matrix mclust patchwork plyr psych RANN Rcpp RcppArmadillo RcppEigen RcppProgress riverplot rlang Rtsne uwot]; };
   rlist = derive2 { name="rlist"; version="0.4.6.2"; sha256="15q99rhbbjq8zd976yjmfnny45dd5fg2p2dv1sljg2kwi66nbppb"; depends=[data_table jsonlite XML yaml]; };
   rlmDataDriven = derive2 { name="rlmDataDriven"; version="0.4.0"; sha256="1fhh2siafpqmvpxi2piccxvvn5n38s5d6as6iyn43rgpsslswc8g"; depends=[MASS tseries]; };
@@ -15652,7 +15711,7 @@ in with self; {
   rmapzen = derive2 { name="rmapzen"; version="0.4.3"; sha256="1n44l4sj6s78nr3hqidabkyg9pradk9c1mqfvzhanj2nrfdrwnqj"; depends=[assertthat digest dplyr geojsonio httr jsonlite maps maptools purrr rgdal sf sp tibble tidyr]; };
   rmarchingcubes = derive2 { name="rmarchingcubes"; version="0.1.3"; sha256="0cdmy728irmbd40xsc2k4r2g8am7s72ks7cw465fa92ml2xa6iq8"; depends=[Rcpp RcppArmadillo]; };
   rmargint = derive2 { name="rmargint"; version="2.0.2"; sha256="0irq5114dd8pngl6k13r2rrsivijiqfldm6mby0q5a9wrj2vmwc9"; depends=[]; };
-  rmarkdown = derive2 { name="rmarkdown"; version="2.11"; sha256="0xcpg9d009a71p5i6jczw02qcp907p5d52lp6vclrsp7019jawck"; depends=[evaluate htmltools jquerylib jsonlite knitr stringr tinytex xfun yaml]; };
+  rmarkdown = derive2 { name="rmarkdown"; version="2.12"; sha256="1476b2wl60p3bq4llf6jzpj7c02fp6v04l2865v3qj32m3nskay3"; depends=[bslib evaluate htmltools jquerylib jsonlite knitr stringr tinytex xfun yaml]; };
   rmatio = derive2 { name="rmatio"; version="0.16.0"; sha256="1ar8736x5ww4cky4qp8fxlwa7p00yycs31ryrqsmbwhwvg2ddlkk"; depends=[Matrix]; };
   rmcfs = derive2 { name="rmcfs"; version="1.3.5"; sha256="0rbq2b9fw1x44v7ifxp8qgp4yciinw2sw9mqp4ms5jsxznpi2pi6"; depends=[data_table dplyr ggplot2 gridExtra igraph reshape2 rJava stringi yaml]; };
   rmcorr = derive2 { name="rmcorr"; version="0.4.5"; sha256="018d3rfh2688yqkarcmxqqfbmmzcmj6q3hwinns4kj6xnnlmv1xr"; depends=[psych RColorBrewer]; };
@@ -15671,7 +15730,7 @@ in with self; {
   rmi = derive2 { name="rmi"; version="0.1.1"; sha256="1y0395l9lhskdrk3x9ps2dmv0sznsba0n6a9fmma33dc9dhywgf9"; depends=[BH Rcpp RcppArmadillo]; };
   rminer = derive2 { name="rminer"; version="1.4.6"; sha256="1xydc43is756cy4vsm4k4micj88hhqgyrhb8cmvgv1y8zfrzg2qz"; depends=[adabag Cubist e1071 glmnet kernlab kknn lattice MASS mda nnet party plotrix pls randomForest rpart xgboost]; };
   rminizinc = derive2 { name="rminizinc"; version="0.0.8"; sha256="0yyg8ikdlksxlsc8ms4gb8dvpdjk26np6cpm5a7rjp748x8is6qx"; depends=[checkmate R6 Rcpp rjson rlang rlist]; };
-  rmio = derive2 { name="rmio"; version="0.3.0"; sha256="0gnd6n43waij1ikr1phv50wqk86zh0kgsdclkm159yr4hflqig01"; depends=[]; };
+  rmio = derive2 { name="rmio"; version="0.4.0"; sha256="1gkd8nkqyfpkp6nvqb7c698difak5ymih3vy6njzqd3gwdp09mhy"; depends=[bigassertr ff]; };
   rmonad = derive2 { name="rmonad"; version="0.7.0"; sha256="1vjx8kk57xk7c2a05c6kn75n17842ya7j41hqj3wmgq8yvaxrngx"; depends=[digest glue igraph magrittr pryr]; };
   rmoo = derive2 { name="rmoo"; version="0.1.7"; sha256="0dg6y9zvky5dy0b9948xdpg9cfbsczk0hm98lnl6wnikbvphijv4"; depends=[cdata dplyr ecr ggplot2 plotly reshape2]; };
   rmpw = derive2 { name="rmpw"; version="0.0.4"; sha256="1a49rvdwvmccv4gfir48fw0b9jyrpc2q9zfyk5j9b7nxsx6x7abl"; depends=[gtools MASS]; };
@@ -15682,7 +15741,7 @@ in with self; {
   rmsfuns = derive2 { name="rmsfuns"; version="1.0.0.1"; sha256="18bpj7xh3kc7pl6ivi3cripam26bsaf9r9099cjf22qndvy18hb6"; depends=[dplyr magrittr PerformanceAnalytics purrr readr tbl2xts xts zoo]; };
   rmt = derive2 { name="rmt"; version="1.0"; sha256="165cqnwqr0dx7b8dgq7xlfk4j55p9l6dr5b2rzyvfy5l23k4kckn"; depends=[]; };
   rmumps = derive2 { name="rmumps"; version="5.2.1-14"; sha256="1bl3wap6qjdryyrxqv85qnb9dv7xkx56c5y8qsaj2979748gwjjj"; depends=[Rcpp]; };
-  rmutil = derive2 { name="rmutil"; version="1.1.7"; sha256="16qk8z2a499c86yklyzfg5jbgk9d5sxh0gpf9rg1xclh0b1vnzqj"; depends=[]; };
+  rmutil = derive2 { name="rmutil"; version="1.1.9"; sha256="0g1kf2bf8f34r9qw5x4810kxg6lkml5nh2lnmdmwnkrrb10cqs1s"; depends=[]; };
   rmweather = derive2 { name="rmweather"; version="0.1.51"; sha256="0qd49lr12hc39dwg348b021aqxw57pfcb9xxhp51fvnw6gw6bgqd"; depends=[dplyr ggplot2 lubridate magrittr pdp purrr ranger stringr strucchange tibble viridis]; };
   rmytarget = derive2 { name="rmytarget"; version="2.4.0"; sha256="1csl5b76r706gzvzhqgg4pdznbdl4i3b0srazwa7xdfc6zbrzljp"; depends=[dplyr httr lubridate purrr stringr tidyr]; };
   rnassqs = derive2 { name="rnassqs"; version="0.5.0"; sha256="1mbkv32zidax9i6km93bbi3m7xpnsy805cz4ikdrid84qg94an09"; depends=[httr jsonlite]; };
@@ -15701,7 +15760,7 @@ in with self; {
   rnpn = derive2 { name="rnpn"; version="1.2.4"; sha256="0lq9c5in0pf3km6zvfnn71wbh34lk3hgav0b9waspmzsgki8fvl1"; depends=[curl data_table httr jsonlite magrittr plyr raster rgdal sp tibble XML]; };
   rnr = derive2 { name="rnr"; version="0.2.1"; sha256="1z9bab3qmq8d79bcvjzldbxlah2w8mqp2ifd0cn1348dafwa0dhi"; depends=[assertthat purrr]; };
   rnrfa = derive2 { name="rnrfa"; version="2.0.4"; sha256="0sy64bgb94ksgcy37kmj61iphf66i0jpx0qlrcsr24zr92syc1n2"; depends=[curl ggmap ggplot2 httr jsonlite lubridate rgdal sp tibble zoo]; };
-  roadoi = derive2 { name="roadoi"; version="0.7.1"; sha256="1diprwir4agp2ifcgfsla1kd5m0y5cnc7ixhh6pqdvlgax5wx96w"; depends=[dplyr httr jsonlite miniUI plyr purrr rlang shiny tibble tidyr]; };
+  roadoi = derive2 { name="roadoi"; version="0.7.2"; sha256="1q2mkd7r5aqvahx7rrzv58nd6d13gvlw7kjidqhm7z89na94pn8w"; depends=[dplyr httr jsonlite miniUI plyr purrr rlang shiny tibble tidyr]; };
   roahd = derive2 { name="roahd"; version="1.4.3"; sha256="089klcgxry6b8z30h1ssy024lqxqm1bz6qs2kx95qjfl8xgwlwm0"; depends=[dplyr ggplot2 magrittr plotly robustbase scales]; };
   robCompositions = derive2 { name="robCompositions"; version="2.3.1"; sha256="13m03r2mcs6srn3hk46lrjhyv5px9jyvqsqbxri1h79f31bji58b"; depends=[car cluster cvTools data_table e1071 fda fpc GGally ggfortify ggplot2 kernlab MASS mclust pls Rcpp RcppEigen reshape2 robustbase robustHD rrcov tidyr VIM zCompositions]; };
   robFitConGraph = derive2 { name="robFitConGraph"; version="0.1.0"; sha256="092nc0xnjs2zxd9ij0dl1xggb8mwl8nly284yjhhygmwlwsvhzxm"; depends=[MASS mvtnorm Rcpp]; };
@@ -15713,9 +15772,9 @@ in with self; {
   robeth = derive2 { name="robeth"; version="2.7-6"; sha256="1x0hzgq7jwl83wwmy581ia8009v0j95aksnr5ywpflnqm76rj6v2"; depends=[]; };
   robets = derive2 { name="robets"; version="1.4"; sha256="0lvzfpv6569pjysblhadd05sglx0qvyr9wipb9cpiya4a1992n61"; depends=[forecast Rcpp]; };
   robfilter = derive2 { name="robfilter"; version="4.1.2"; sha256="0mvpaf6g694b7175bl3yr6lxbwla4pwp7g4y34qb4klgl5n3nw03"; depends=[lattice MASS robustbase]; };
-  robin = derive2 { name="robin"; version="1.0.3"; sha256="1axn687pc6ym5lbrqhsfjw9h5p5famgzqp3q505drysn33fv6nlw"; depends=[DescTools fdatest ggplot2 gprege gridExtra igraph networkD3 qpdf]; };
+  robin = derive2 { name="robin"; version="1.1.0"; sha256="11z09g4nzswdqhx5w0vmx1gmxkh0k451hr50avcny6q1r7hykjk6"; depends=[DescTools fdatest ggplot2 gprege gridExtra igraph networkD3 qpdf]; };
   robis = derive2 { name="robis"; version="2.8.2"; sha256="0nlvp9w9j2kyv0rrsjkzr3sj77ciz8ink3yr615sjc69iqic34aw"; depends=[curl data_table dplyr ggplot2 httpcache httr jsonlite leaflet mapedit purrr rlang sf stringr tibble tidyr tidyselect xml2]; };
-  robmed = derive2 { name="robmed"; version="0.9.0"; sha256="0xjq97jy72hcc03s7z5ckl4f9jwsy2sbhwsr8r7hxgrcc8g1zvwf"; depends=[boot ggplot2 quantreg robustbase shiny sn]; };
+  robmed = derive2 { name="robmed"; version="0.10.0"; sha256="020l67zrijcmbfp4nd0hbip1sb5yxhjmjhjk9b5vbk4mz3iqvf4m"; depends=[boot ggplot2 quantreg robustbase sn]; };
   robmixglm = derive2 { name="robmixglm"; version="1.2-2"; sha256="117dhnnj55hihpzim45dw3cjm4ma6w21d8j77fybyri2bmpvlypa"; depends=[actuar bbmle boot doParallel doRNG fastGHQuad foreach MASS numDeriv Rcpp VGAM]; };
   robnptests = derive2 { name="robnptests"; version="1.0.0"; sha256="0bk3ngwav3r00lf2lb8hq2h578mkfc48gcm845lyxyn7i87vglgg"; depends=[checkmate gtools Rdpack robustbase statmod]; };
   robomit = derive2 { name="robomit"; version="1.0.6"; sha256="1yma6m4bxy3hikc9kx7mslqgq1fpi4my7qij9pz77ag836r9hcxm"; depends=[broom dplyr ggplot2 plm tibble tidyr]; };
@@ -15724,11 +15783,11 @@ in with self; {
   robregcc = derive2 { name="robregcc"; version="1.1"; sha256="06fapmc3jfrfdqvz02jr12dk1d5iw6s3mcb13jz1nm2bybw6r04a"; depends=[magrittr MASS Rcpp RcppArmadillo]; };
   robsel = derive2 { name="robsel"; version="0.1.0"; sha256="0vf9hry11hf6bi4pz18c6gh9janx0v6shm2m14kckscvh80z3k5b"; depends=[glasso Rcpp RcppEigen]; };
   robservable = derive2 { name="robservable"; version="0.2.1"; sha256="0v4d6yavs58nvwy9bz8wgmm1qb2cqsxkj7rbwngwfzr07ryznd2s"; depends=[htmlwidgets jsonlite]; };
-  robslopes = derive2 { name="robslopes"; version="1.0.2"; sha256="04767ggjjsgm31ysk5xw8jvdnjdbk4fmrrsi83ksz746kl0xafzp"; depends=[Rcpp RcppArmadillo]; };
+  robslopes = derive2 { name="robslopes"; version="1.1.0"; sha256="0nlz67nmrb9p1a71xnfdfx8c92h0aag68x4xxlvk464nf6s661qv"; depends=[Rcpp RcppArmadillo]; };
   robsurvey = derive2 { name="robsurvey"; version="0.2"; sha256="0ipkl3bvnymkrh1apnpidxwxpb1xmw5s66wwxs0kbwvsp6l6qh26"; depends=[KernSmooth survey]; };
   robumeta = derive2 { name="robumeta"; version="2.0"; sha256="1ynlfxlzh442jd1cf02j0f948m16d536a30gb4bf7208baqri1vg"; depends=[]; };
   robust = derive2 { name="robust"; version="0.7-0"; sha256="1fc4h19b7gn9ya2j2ia8vfgsycwlyc23frj54k11dr45w4qaq6jy"; depends=[fit_models lattice MASS robustbase rrcov]; };
-  robust2sls = derive2 { name="robust2sls"; version="0.1.0"; sha256="149wdrjjpzwm2zi1a2wrv6qcdxya77dz1i7d2vqz4vx4qzw55hf6"; depends=[AER doRNG foreach pracma]; };
+  robust2sls = derive2 { name="robust2sls"; version="0.2.0"; sha256="0rlajfhrxwap73xdmqdp9gy6qj4vki13i0nqahikr54ky9zypq3r"; depends=[AER doRNG foreach MASS mathjaxr pracma]; };
   robustBLME = derive2 { name="robustBLME"; version="0.1.3"; sha256="18wx116l1riy4wn4083kxl637mkyyi9wbwnmvhkgqw3vb36s4vxd"; depends=[doParallel foreach iterators lme4 mvtnorm numDeriv Rcpp RcppArmadillo]; };
   robustDA = derive2 { name="robustDA"; version="1.2"; sha256="0kxdqvv17dgnlqp0hkazwfqsg3h4g9gw1w57blwpay67xp4d1jyx"; depends=[MASS mclust Rsolnp]; };
   robustETM = derive2 { name="robustETM"; version="1.0"; sha256="1dlj79v08bls500lb81rya6vwx58h97rpq1sy9zwd3mfl9b6awp9"; depends=[]; };
@@ -15740,7 +15799,7 @@ in with self; {
   robustfa = derive2 { name="robustfa"; version="1.0-5"; sha256="04nk5ipml54snsmiqf5sbhx490i46gnhs7yibf4wscrsj1bh2mqy"; depends=[rrcov]; };
   robustgam = derive2 { name="robustgam"; version="0.1.7"; sha256="0s1z7jylj757g91najbyi1aiqnssd207jfm9yhias746540qp3kw"; depends=[mgcv Rcpp RcppArmadillo robustbase]; };
   robustlm = derive2 { name="robustlm"; version="0.1.0"; sha256="17l2kr9dc3z02b2jswfxal13md4xfpz4sqjfg6kyg6ilab1cfd06"; depends=[MASS matrixStats]; };
-  robustlmm = derive2 { name="robustlmm"; version="2.4-5"; sha256="0y8bjr9xbgnwbg2rilpgfqrdv45g8zxqfajnkfi4r7v0hsr20lz2"; depends=[cubature fastGHQuad ggplot2 lattice lme4 Matrix nlme Rcpp RcppEigen robustbase xtable]; };
+  robustlmm = derive2 { name="robustlmm"; version="2.5-0"; sha256="0y15w5vd16nfvs3mmvp496hhvgajfgnpgz6vl3vp5yhs1q2xkynk"; depends=[cubature fastGHQuad ggplot2 lattice lme4 Matrix nlme Rcpp RcppEigen robustbase xtable]; };
   robustrank = derive2 { name="robustrank"; version="2019.9-10"; sha256="1xikknrmnh95wpvyljdl7v510ddi1g7a88aw3l630s789nq5i02h"; depends=[kyotil]; };
   robustrao = derive2 { name="robustrao"; version="1.0-5"; sha256="1r8v9qjx70s8swh09imq9kzdxg0qhnmk00zrg939mig9b12mw1p6"; depends=[doParallel foreach gmp igraph iterpc quadprog]; };
   robustreg = derive2 { name="robustreg"; version="0.1-11"; sha256="08c6dyzki68hzl006s12bkjiirlw2n2isirjh8b79sd6zjrjlh72"; depends=[Matrix Rcpp RcppArmadillo]; };
@@ -15752,7 +15811,7 @@ in with self; {
   rocc = derive2 { name="rocc"; version="1.3"; sha256="1j15l28c7kv7x850ycjprqi5gpbsl6wfv97h9lbrx11q5l4r9ivb"; depends=[ROCR]; };
   roccv = derive2 { name="roccv"; version="1.2"; sha256="18kq2gzcbz97dw168xppql8k3slpkfl8yv1d8ac48damlhvipif1"; depends=[glmnet pROC]; };
   rock = derive2 { name="rock"; version="0.5.1"; sha256="1abyr9i2p1xjll6cry8hmbgskwr10ki4r0zw29qg8iz2rpxl0zpp"; depends=[data_tree DiagrammeR DiagrammeRsvg dplyr ggplot2 glue htmltools markdown purrr yaml yum]; };
-  rockchalk = derive2 { name="rockchalk"; version="1.8.144"; sha256="07dp1n155b9gfvk8l30h6bhjbhbylsjxfzns08mryn4mxj3nqpnb"; depends=[carData kutils lme4 MASS]; };
+  rockchalk = derive2 { name="rockchalk"; version="1.8.151"; sha256="17mfaxn3gj0vac5wdmsjj2z2668cszbpvan7hnxp7ic9bvsm1w2y"; depends=[carData kutils lme4 MASS]; };
   rocker = derive2 { name="rocker"; version="0.3.0"; sha256="07vlfhp3m8k4ykfmd513ryqk0005mpj2qi64wrpkcg760rbs6wjv"; depends=[DBI R6 sodium]; };
   rockr = derive2 { name="rockr"; version="1.0.0"; sha256="190xaxcbb7miqw5mxyfqqlb2vzacifc8a7a3cqfdlpxra4d4jc25"; depends=[httr jsonlite mime progress]; };
   roclang = derive2 { name="roclang"; version="0.1.4"; sha256="1wjpcdlqkfklllxql010yk2v0b6xvlrvmhdfm7ckwry33ijpi14y"; depends=[dplyr magrittr purrr rex rlang roxygen2 stringr tibble tidyr]; };
@@ -15781,7 +15840,7 @@ in with self; {
   ropenblas = derive2 { name="ropenblas"; version="0.2.10"; sha256="1709kk63d8xv923phadnk30pc895syf4rmfip7v9y3cn734ww38g"; depends=[cli fs getPass git2r glue magrittr pingr RCurl rlang rstudioapi rvest stringr withr XML]; };
   ropendata = derive2 { name="ropendata"; version="0.1.0"; sha256="1bv6y241abs6pb4wq5ybx9x4zh72kf8ffs3vlcgdsmhw4jwrsxdl"; depends=[httr jsonlite]; };
   ropensecretsapi = derive2 { name="ropensecretsapi"; version="1.0.1"; sha256="0d4yl0h4am3blskdnzk119hk374c3vx0cg99r20w07yh8jfafrw7"; depends=[RCurl RJSONIO]; };
-  roperators = derive2 { name="roperators"; version="1.1.0"; sha256="0klmk1jmh1iysgf345qa6qyjmn1pkz072ha254k90flprgicg7c6"; depends=[]; };
+  roperators = derive2 { name="roperators"; version="1.2.0"; sha256="1l9xyb07wi2bls2037a2428hzqbsay01yd3rzviznxcnaarak5ck"; depends=[]; };
   ropercenter = derive2 { name="ropercenter"; version="0.3.1"; sha256="1lpqwlw1wqj1whv0wma2y4h16pc15f4c38icwq63nhicn4whzr5w"; depends=[dplyr foreign haven magrittr readr rio RSelenium stringr tibble tidyr]; };
   roprov = derive2 { name="roprov"; version="0.1.2"; sha256="16w9i7svlkn2wbv35890f1zpcxilj0ar28d2xrdvmx7ni9vrz61q"; depends=[CodeDepends fastdigest igraph]; };
   roptim = derive2 { name="roptim"; version="0.1.5"; sha256="0qcdvs62k9b0dsa68z86yn90ps5aqhxgwg43p2pjml6jjid4rjn9"; depends=[Rcpp RcppArmadillo]; };
@@ -15806,7 +15865,7 @@ in with self; {
   roxygen2md = derive2 { name="roxygen2md"; version="1.0.0"; sha256="1gvrfy0sk5qi8d93zxj5f7xgnnw0w38zyxdik4ckf0pkk0zdm27a"; depends=[desc devtools enc rex rlang tibble usethis withr]; };
   roxytest = derive2 { name="roxytest"; version="0.0.1"; sha256="166m0pklgryh3vildg0bvzh9gs3p71sf61ivgkvkvyy9vhvnp3jf"; depends=[roxygen2]; };
   royston = derive2 { name="royston"; version="1.2"; sha256="1rywc89qzx0hldbq10201bjdhz60pq2gmgd9b9j52mza3w4canjz"; depends=[moments nortest]; };
-  rpact = derive2 { name="rpact"; version="3.2.1"; sha256="0wblcdmy0cpal4spi9cqd7vjfkg04kfqa9k7qxf798b3a449lbyi"; depends=[Rcpp]; };
+  rpact = derive2 { name="rpact"; version="3.2.3"; sha256="0znpxqnhvz3vkhv5y3qga8dv4i1b4dgbim1lfqpfq29jw906hsis"; depends=[Rcpp]; };
   rpanel = derive2 { name="rpanel"; version="1.1-5"; sha256="0656hxj17arjma8sk0xrjicv6mh7iyxhrvj36q4wdvxwlrvm76p3"; depends=[]; };
   rpart = derive2 { name="rpart"; version="4.1.16"; sha256="0p22657j6ps6z1dn0ja2fhq4k5xd1rv3cpwzk6nmjd2si8jpbv17"; depends=[]; };
   rpart_LAD = derive2 { name="rpart.LAD"; version="0.1.2"; sha256="1v1arv5b02n0jvyifb5km9w3z3wxg9x9g3g4xck4s319z5g6lp7n"; depends=[Rcpp rpart]; };
@@ -15838,24 +15897,24 @@ in with self; {
   rprime = derive2 { name="rprime"; version="0.1.2"; sha256="1h54vclc800pir3vxqcq4cmmxy9fcar1fydqmba2dzpj8dvlad7v"; depends=[assertthat plyr stringi stringr]; };
   rprintf = derive2 { name="rprintf"; version="0.2.1"; sha256="0rwqpln0igxb4m6d6jyp7h3shfb8sbp0kj7cgkffjp88hn9qm4h3"; depends=[stringi]; };
   rprojroot = derive2 { name="rprojroot"; version="2.0.2"; sha256="07wy07yhms8zln9qb0iwx69dq08h4lrdi8kavjcplfxcskq638az"; depends=[]; };
+  rprojtree = derive2 { name="rprojtree"; version="1.0.0"; sha256="0414srpgx2jgf8jaznpin131hiih17avx45vggf812b3xcicm11b"; depends=[dplyr jsonlite magrittr rjson]; };
   rpsftm = derive2 { name="rpsftm"; version="1.2.7"; sha256="0ncf9ci39pd7p048cgvhl6phhk975xwyjm4aqs1b4hjy1nml4iz2"; depends=[ggplot2 survival]; };
-  rpsychi = derive2 { name="rpsychi"; version="0.8"; sha256="1h40kbqvvwwjkz5hrclj6j22zhav3yyfbbhqahs1whwjkksnam4w"; depends=[gtools]; };
   rptR = derive2 { name="rptR"; version="0.9.22"; sha256="0vvjc6qiq71d5wckl77z606q1fp43mgrfzp1bxcab96n5whb2r9k"; depends=[lme4 pbapply]; };
   rpubs = derive2 { name="rpubs"; version="0.2.2"; sha256="18cnzhcvm7gx4k01ysqay53smrf8xqlbaszq41mny5c7qqh1fvpz"; depends=[rvest xml2]; };
-  rpymat = derive2 { name="rpymat"; version="0.1.1"; sha256="067czg4wkpkgrrw78j9r62i1b82bzfsxgx4mdgab2wq2szdij6rn"; depends=[fastmap rappdirs reticulate]; };
+  rpymat = derive2 { name="rpymat"; version="0.1.2"; sha256="1wq60xspjfzmpax79x6sd3bwa3m63mfklpdv7x797p1d0v636lhy"; depends=[fastmap glue IRkernel jsonlite rappdirs reticulate rstudioapi]; };
   rqPen = derive2 { name="rqPen"; version="2.2.2"; sha256="077kdvfdyp5h8630k8jigbz8mfyby8vkjiqxpqv0wfi6cqcjlaf2"; depends=[quantreg regpro]; };
   rqdatatable = derive2 { name="rqdatatable"; version="1.3.1"; sha256="1ml83gw9m9945qws2pi0x3bzm1jn4rh8n7zwivbir685hfprbhvn"; depends=[data_table rquery wrapr]; };
-  rquery = derive2 { name="rquery"; version="1.4.8"; sha256="06riv819rlmd6i70g7k2cflzjs8z9k6cw0flk7mzggqkvz5v79yv"; depends=[wrapr]; };
+  rquery = derive2 { name="rquery"; version="1.4.9"; sha256="12m80vr2sxm2ivvd1a27jy6vh9xvk5z4irlkaxm1f0sxi462brra"; depends=[wrapr]; };
   rr = derive2 { name="rr"; version="1.4"; sha256="1c2h6ibjfwrjfqh1if3c90pdh0g2rf3p71j4p9w23xbbrx2l80pl"; depends=[arm coda magic MASS]; };
   rr2 = derive2 { name="rr2"; version="1.0.2"; sha256="099vjg91ni2bnxlra18pvgsvzrl28zrj639cdjrh3wkpqv99d04q"; depends=[ape lme4 Matrix nlme phylolm]; };
   rrBLUP = derive2 { name="rrBLUP"; version="4.6.1"; sha256="1ny48ra25rzx3k69pmzpd31ka2zhqyqiq1v7ann862j3ris0w8z9"; depends=[]; };
-  rrapply = derive2 { name="rrapply"; version="1.2.3"; sha256="042b7q94lrprxxcyjw8cn3y20dxvq77yk0cihn2xk885gawhwxm6"; depends=[]; };
+  rrapply = derive2 { name="rrapply"; version="1.2.4"; sha256="06kdkclvcxyw5hsy18azz7345140079r134dksyb6wv94aiplzkm"; depends=[]; };
   rrat = derive2 { name="rrat"; version="1.0.0"; sha256="1j1jd32pgggn5cqv66l63sw5p4hblgpznf33wd0zdbfapwy8rx4r"; depends=[quantreg]; };
-  rrcov = derive2 { name="rrcov"; version="1.6-1"; sha256="142x60zcgz61iw0ps78hh4cmny3ch0hb3lac6z87bhys5c7m0fwz"; depends=[lattice mvtnorm pcaPP robustbase]; };
-  rrcov3way = derive2 { name="rrcov3way"; version="0.2-2"; sha256="0rkkm23njjyradi4qv4jsxdsdda141frxm2rqa92d4bdrgn2m7zx"; depends=[nnls pracma robustbase rrcov ThreeWay]; };
+  rrcov = derive2 { name="rrcov"; version="1.6-2"; sha256="18x8y2b9n2plpn4086nkjk9c27p7gb78kbrv5pj9r8fb0idl5rn5"; depends=[lattice mvtnorm pcaPP robustbase]; };
+  rrcov3way = derive2 { name="rrcov3way"; version="0.2-3"; sha256="0axgdxp216h1zdi4bb4hiynkr0kjxypdzxga51qq430pv9sdl6n0"; depends=[nnls pracma robustbase rrcov ThreeWay]; };
   rrcovHD = derive2 { name="rrcovHD"; version="0.2-7"; sha256="1srxgw5qcgpmxqfplvbrlryxvkx0mic5y7v5lxgfvqvlmcb3rm3f"; depends=[pcaPP pls Rcpp robustbase robustHD rrcov spls]; };
   rrcovNA = derive2 { name="rrcovNA"; version="0.4-15"; sha256="0r60chxm7bpc6sis60rp8k8xchwfrfa3lrfaidvv22ipx2q0psp7"; depends=[cluster lattice norm robustbase rrcov]; };
-  rrd = derive2 { name="rrd"; version="0.2.2"; sha256="104iz2y49vzm92a8nrvgzrjyljxl467mp1hjnjmzl4rhf9kl809y"; depends=[assertthat tibble]; };
+  rrd = derive2 { name="rrd"; version="0.2.4"; sha256="05njzrgd5p39zmyqxgnb2x9q3c7669fsv76vspdv9i9n804z5d5d"; depends=[assertthat tibble]; };
   rrecsys = derive2 { name="rrecsys"; version="0.9.7.3.1"; sha256="1qnjriv1xq4gjjhzz8jxrbk88mw5xddl2l2i4bmfhnxhi51d2rk3"; depends=[ggplot2 knitr MASS Rcpp registry]; };
   rredis = derive2 { name="rredis"; version="1.7.0"; sha256="0wzamwpmx20did8xj8x9dllri2ps83viyqjic18ari7i4h1bpixv"; depends=[]; };
   rredlist = derive2 { name="rredlist"; version="0.7.0"; sha256="1w77cnfrybmqnadsmfkpjv5m49kkr7yc6kcqq165lmj3bijnprnj"; depends=[crul jsonlite]; };
@@ -15873,6 +15932,7 @@ in with self; {
   rrum = derive2 { name="rrum"; version="0.2.0"; sha256="0w0f2n14if2b8x7n6v8y8q2vghd8j7xm1xhpxnvy3z50flinwgm7"; depends=[Rcpp RcppArmadillo rgen simcdm]; };
   rsae = derive2 { name="rsae"; version="0.1-5"; sha256="1f3ry3jwa6vg2vq2npx2pzzvfwadz8m48hjrqjk860nfjrymwgx5"; depends=[]; };
   rsample = derive2 { name="rsample"; version="0.1.1"; sha256="01xwhj4zfvxbv9cjb6mbz3aphxqc3cnjjx1xy2yx2wd94fbka42z"; depends=[dplyr ellipsis furrr generics lifecycle purrr rlang slider tibble tidyr tidyselect vctrs]; };
+  rsat = derive2 { name="rsat"; version="0.1.18"; sha256="1idm50m94qx4fgri05wwjb49w7fdzl911g1fa138y5rm6wkawsc5"; depends=[calendR curl fields httr leafem leaflet raster Rdpack rjson rvest sf sp stars terra tmap XML xml2 zip]; };
   rsatscan = derive2 { name="rsatscan"; version="0.3.9200"; sha256="00vgby24jknq8nl7rnqcwg7gawcxhwq8b7m98vjx2hkqx39n4g21"; depends=[foreign]; };
   rsbp = derive2 { name="rsbp"; version="0.1.0"; sha256="0aardngvj9apn8q5vhfpv67rf7d5iqb7xdq7rh8xmgr8341fvbgc"; depends=[dplyr lubridate magrittr purrr reshape2 tibble tidyr xml2]; };
   rscala = derive2 { name="rscala"; version="3.2.19"; sha256="1wq0wrdbh0gi0bx4m9526qlbjm7nxxqgc17ikdx5mrhcy2f61hjk"; depends=[]; };
@@ -15881,7 +15941,7 @@ in with self; {
   rsconnect = derive2 { name="rsconnect"; version="0.8.25"; sha256="1kyr4v7vds2yw3xmkk2yr56ylz1h95944brylwvwmwj5yxvm419w"; depends=[curl digest jsonlite openssl packrat rstudioapi yaml]; };
   rscontract = derive2 { name="rscontract"; version="0.1.2"; sha256="0gn0xcvg9nj6m97g4si6bgmgaj6hxpicz8yig7n84jnczh6w510x"; depends=[]; };
   rscopus = derive2 { name="rscopus"; version="0.6.6"; sha256="0kl6rv0j2396b8izvy0lp1f588il6w3yhq6d4swv8x8z14rsgcpw"; depends=[dplyr glue httr jsonlite plyr tidyr]; };
-  rscorecard = derive2 { name="rscorecard"; version="0.20.0"; sha256="0psh53r8hvyvg7n20p7dl2qnd5gznx1lfkxqrc05kfksl4zvrrm5"; depends=[dplyr httr jsonlite lazyeval magrittr purrr tidyr tidyselect]; };
+  rscorecard = derive2 { name="rscorecard"; version="0.21.0"; sha256="0jf7pan0v50sg8nz72c5rp3pi34b0r75j7laq9idqsfcgsp0flaj"; depends=[dplyr httr jsonlite lazyeval magrittr purrr tidyr tidyselect]; };
   rsdNE = derive2 { name="rsdNE"; version="1.0.0"; sha256="1faa6m2y4i6dqzgzj8glfcf5j438m3qqxcz1rgk7w20x3g24ddyx"; depends=[]; };
   rsdepth = derive2 { name="rsdepth"; version="0.1-5"; sha256="064jbb6gnx0sm41w3sbi6mvsbzsfkjqfici6frk8sfm9ybvm591j"; depends=[]; };
   rsdmx = derive2 { name="rsdmx"; version="0.6"; sha256="1sw8pp2j22rs1nlsyphyqbhywgplan9qmrs5wm9wvrn5g26k4bg9"; depends=[httr plyr R6 XML]; };
@@ -15897,7 +15957,7 @@ in with self; {
   rslp = derive2 { name="rslp"; version="0.2.0"; sha256="186k1gngirqhvhii4ysq77wjf5gf75c7gya73minb0pfg9fn16l7"; depends=[magrittr plyr stringi stringr tokenizers]; };
   rslurm = derive2 { name="rslurm"; version="0.6.1"; sha256="19451icfh7snjbbmpzpr1hrdf52q8ijv0ag1di3y55r2la3jxxcf"; depends=[whisker]; };
   rsm = derive2 { name="rsm"; version="2.10.3"; sha256="1dcjsn3wa7rqdpixh37vjgk3z5siwlyn70qffp49m3awn258hwpg"; depends=[estimability]; };
-  rsmatrix = derive2 { name="rsmatrix"; version="0.2.0"; sha256="0d3y0ihz32jhqmzlgh7lqw4c122dbai2ic56qkalg63ckfswpzrw"; depends=[Matrix]; };
+  rsmatrix = derive2 { name="rsmatrix"; version="0.2.1"; sha256="02l7hcbwjilcpmgxi2gs9hcf75kb7g2m2b31rmwd2kvhdn2w4s3q"; depends=[Matrix]; };
   rsnps = derive2 { name="rsnps"; version="0.5.0.0"; sha256="1pnf3j2hdgx4is1387ysrrg3izq1jyn2p00ia5hhdzkkfl1pbqcr"; depends=[crul data_table httr jsonlite plyr stringr]; };
   rsoi = derive2 { name="rsoi"; version="0.5.4"; sha256="1gchznfshp91i3if8077qph26flxzwa2xrw3q488ah50725d63hw"; depends=[curl memoise]; };
   rsolr = derive2 { name="rsolr"; version="0.0.11"; sha256="0h82x9ihzgw9l1ksn1l5w7x3vgyy6zlbdbvg9a4pa1iinhlf87ic"; depends=[BiocGenerics graph RCurl restfulr rjson S4Vectors XML]; };
@@ -15945,7 +16005,7 @@ in with self; {
   rtext = derive2 { name="rtext"; version="0.1.22"; sha256="0wsy0iqzbfin92pw0bqj4bxm2p4f2y4frr137l6c3yvd0jrax3q4"; depends=[digest hellno magrittr R6 Rcpp RSQLite stringb]; };
   rtf = derive2 { name="rtf"; version="0.4-14.1"; sha256="032ff0yavqmd2d9svgwkmvxwh0cxjbac6pj48v4cshi898f02rhh"; depends=[R_methodsS3 R_oo]; };
   rtgstat = derive2 { name="rtgstat"; version="0.3.0"; sha256="1zg2xhypv0pycabzn423df9fivyys2vgdwsy60a43s8j9al7iz63"; depends=[cli dplyr httr2 purrr snakecase stringr tidyr]; };
-  rticles = derive2 { name="rticles"; version="0.22"; sha256="0jgsmqwwqzvsxcbsm9fx0rp724mn3ipi70883bhvm7n9i8mq877m"; depends=[knitr rmarkdown tinytex xfun yaml]; };
+  rticles = derive2 { name="rticles"; version="0.23"; sha256="1ipblw3rmkma22jl2hf1pyfm6l8k31zcmm3swmwii6k0x7khiav1"; depends=[knitr rmarkdown tinytex xfun yaml]; };
   rticulate = derive2 { name="rticulate"; version="1.7.2"; sha256="0xgl36m63z9kzqj0srjp3lb65hfizszlgw0kwjwc9li607q4fy6m"; depends=[dplyr ggplot2 glue magrittr mgcv purrr readr rlang stringr tibble tidymv tidyr tidyselect tidyverse]; };
   rtide = derive2 { name="rtide"; version="0.0.9"; sha256="0gr0j52jy7y1w1s0s88rjv9l85yvavypagmi0qw2ix9ca2xadlzl"; depends=[abind chk dttr2 tibble]; };
   rties = derive2 { name="rties"; version="5.0.0"; sha256="1mxgzrlf41hhawab2664az151fmmhm8ivnnimmzm538yliilc0b7"; depends=[DataCombine DescTools deSolve dplyr ggplot2 gridExtra interactions lattice lme4 MASS mclust nlme nnet plyr zoo]; };
@@ -15969,6 +16029,7 @@ in with self; {
   rtweet = derive2 { name="rtweet"; version="0.7.0"; sha256="05pbvxm2vmf6935b9s6663k3aifnkr3m52wh2jvnplmrwyrfpn9n"; depends=[httpuv httr jsonlite magrittr progress Rcpp tibble]; };
   rtype = derive2 { name="rtype"; version="0.1-1"; sha256="0wjf359w7gb1nrhbxknzg7qdys0hdn6alv07rd9wm6zynnn1vwxy"; depends=[]; };
   rtypeform = derive2 { name="rtypeform"; version="2.1.0"; sha256="02qnsw2nd3fnyr0gbmx3690b78k899dxf04g4bqpjlg9y38g1cnr"; depends=[assertthat dplyr glue httr jsonlite lubridate purrr rlang tibble tidyr]; };
+  rubias = derive2 { name="rubias"; version="0.3.3"; sha256="0xphah4axkchscxcxx7231cb67pqfi4smvy3lazlzbyysgwmr1kk"; depends=[dplyr gtools magrittr Rcpp RcppParallel readr rlang stringr tibble tidyr]; };
   rucm = derive2 { name="rucm"; version="0.6"; sha256="1n6axmxss08f2jf5impvyamyhpbha13lvrk7pplxl0mrrrl5g0n8"; depends=[KFAS]; };
   rucrdtw = derive2 { name="rucrdtw"; version="0.1.4"; sha256="0865x8i2n63xjbq0pzalm4gd6rpg72yrcsm4rw40a3kzy2svvnlm"; depends=[Rcpp]; };
   rugarch = derive2 { name="rugarch"; version="1.4-7"; sha256="0i9483gk0x8jhxx9zsh0p3lbs8vslnchb3j78slpzgsc6am43zjh"; depends=[chron ks numDeriv Rcpp RcppArmadillo Rsolnp SkewHyperbolic spd xts zoo]; };
@@ -15980,7 +16041,7 @@ in with self; {
   runcharter = derive2 { name="runcharter"; version="0.2.0"; sha256="0n4jkgvlbpafjks22fjackazp246c7skphirjsrzkrg169qwdin0"; depends=[data_table ggplot2 magrittr zoo]; };
   runes = derive2 { name="runes"; version="0.1.0"; sha256="1s2vhwya434q70j4aq4qbds8wivscc5cyldr5pch7p41nqj0j7aw"; depends=[]; };
   runexp = derive2 { name="runexp"; version="0.2.1"; sha256="0pcxwz0kpfrcsfalwlcwp81k3dyc9rqm9rba25xkp51bwz5scv64"; depends=[doParallel foreach]; };
-  runjags = derive2 { name="runjags"; version="2.2.0-3"; sha256="0a5m1nlyrph22s0crmajacy4n4fw9j0bmg1srkgfrygcryqc07qv"; depends=[coda lattice]; };
+  runjags = derive2 { name="runjags"; version="2.2.1-5"; sha256="0jj5xacp6f3g7mkz6yd2qay149qmq2jmiza0a5gg42yc8jqb7h52"; depends=[coda lattice]; };
   runner = derive2 { name="runner"; version="0.4.1"; sha256="1iic84ab6gbikc2qfqhdg5i48i8hldz59l0k4466n8v6ha2k7hxi"; depends=[Rcpp]; };
   runonce = derive2 { name="runonce"; version="0.2.3"; sha256="04lmzw9ldc3b6zdc7sr3mrfiam24372j11l5p1y9i2zjb9rxk1nn"; depends=[bigassertr urltools]; };
   runstats = derive2 { name="runstats"; version="1.1.0"; sha256="0n9348af60j8a2mwgbafabspb4nm45ry92zlzmynja06zyx8lb2d"; depends=[fftwtools]; };
@@ -15990,7 +16051,7 @@ in with self; {
   ruta = derive2 { name="ruta"; version="1.1.0"; sha256="1qr2ryz55h2j3wlwg0535lhmk2ydm0idfxl07rlfxq1pi32cjms1"; depends=[keras purrr R_utils]; };
   rutifier = derive2 { name="rutifier"; version="1.0.4"; sha256="045pr8apd105azs1glpwqrbamglqddxfpml9yrfrlaivz3fjd9l8"; depends=[R_utils]; };
   ruv = derive2 { name="ruv"; version="0.9.7.1"; sha256="1n4q9mrp9f644spbns6bbnzmlabrg90hwkdfg3hnm3rxp9b4xid0"; depends=[ggplot2 gridExtra scales]; };
-  rv = derive2 { name="rv"; version="2.3.4"; sha256="0kn56agxv6p861r247yhwfkp8pj33bghy5444a6f3y22yyzc8ngz"; depends=[]; };
+  rv = derive2 { name="rv"; version="2.3.5"; sha256="1rjbhlvd7cxn7yw001p859zl5ibxl4di03j1aadm4zycq1zyr6q7"; depends=[]; };
   rvHPDT = derive2 { name="rvHPDT"; version="3.0"; sha256="05nrfnyvb8ar7k2bmn227rn20w1yzkp1smwi4sysc00hyjrlyg8s"; depends=[gtools]; };
   rvTDT = derive2 { name="rvTDT"; version="1.0"; sha256="09c2fbqnlwkhaxfmgpsdprl0bb447ajk9xl7qdlda201fvxkdc8v"; depends=[CompQuadForm]; };
   rvalues = derive2 { name="rvalues"; version="0.7.1"; sha256="0vgizlm5g6mnzvwsprgg0wj0k2y3nc8zn1bqdaw58py92mqpvj1d"; depends=[]; };
@@ -16010,6 +16071,7 @@ in with self; {
   rwebstat = derive2 { name="rwebstat"; version="1.1.0"; sha256="106dkhlr33ii17q45c1hrmbslwsj1qlmx325skch2q71mv7ii0lj"; depends=[dplyr getPass htmltools httr jsonlite readr stringr]; };
   rwfec = derive2 { name="rwfec"; version="0.2"; sha256="0wmalfms59zi8jdn2s2qbcdckfkifl9vg19hzx4389mm5gk6qsbh"; depends=[Rcpp]; };
   rwhatsapp = derive2 { name="rwhatsapp"; version="0.2.4"; sha256="004d0cigay7bz754lrxjdwp1xsclc23wh03dlzyby900xcdizxk7"; depends=[stringi tibble]; };
+  rwicc = derive2 { name="rwicc"; version="0.1.3"; sha256="14jyc0qq6rxrmwvwdm59axib72q347s6ra8j1h97p75ah59kxndr"; depends=[arm biglm dplyr ggplot2 lubridate magrittr pryr scales]; };
   rworldmap = derive2 { name="rworldmap"; version="1.3-6"; sha256="1q1h0n9qr0m5pdx10swrh9ddsvdj8kv5nqngrf3lnx9rg9iwivjk"; depends=[fields maptools sp]; };
   rworldxtra = derive2 { name="rworldxtra"; version="1.01"; sha256="183z01h316wf1r4vjvjhbj7cg4xarn4b8qbmnn5y7nrrdndzi163"; depends=[sp]; };
   rwstats = derive2 { name="rwstats"; version="0.1"; sha256="10jj2lkilysz7mmysblj6l4jjc560rqsps0ivkvyr7caj8gfhdlb"; depends=[]; };
@@ -16017,7 +16079,7 @@ in with self; {
   rwty = derive2 { name="rwty"; version="1.0.2"; sha256="0p0bpq5dk8vjqx8ry364xhaq3rgxa49planapggicg7by2mhaacc"; depends=[ape coda GGally ggdendro ggplot2 phangorn plyr reshape2 viridis]; };
   rwunderground = derive2 { name="rwunderground"; version="0.1.8"; sha256="02p26gkicd5v511kb04p1h3wxj57r7j5vr97n3ibywc6ivz7nqxa"; depends=[countrycode dplyr httr lubridate tibble]; };
   rxSeq = derive2 { name="rxSeq"; version="0.99.3"; sha256="0g0n2pzbssz61psghjp1vrlspgph4s39x1k1zhcz7ivdn5pjb2nx"; depends=[MASS numDeriv VGAM]; };
-  rxylib = derive2 { name="rxylib"; version="0.2.6"; sha256="0z0mfk5g7jdrw28f6jzifis2jsw35w7g1p0bv3b6a4rfmbnjhmwk"; depends=[BH Rcpp]; };
+  rxylib = derive2 { name="rxylib"; version="0.2.7"; sha256="1vc1g1vm61xhf2dvaxvz2y9z7mqk7508068slq83fjcdnkc1pbfr"; depends=[BH Rcpp]; };
   ryandexdirect = derive2 { name="ryandexdirect"; version="3.6.0"; sha256="0f1z8gp1pxfqx694alj435ihzxvd9ban04b1clzipgdq9la1hza8"; depends=[bitops data_table dplyr httr jsonlite magrittr purrr readr stringr tidyr xml2]; };
   rym = derive2 { name="rym"; version="1.0.5"; sha256="0brh8hm3x21swypnzj3bbbf7njgarsj4804fp5lcqlr4nadzx26y"; depends=[httr purrr stringr]; };
   ryouready = derive2 { name="ryouready"; version="0.4"; sha256="1d9z3paxcrkwsgn5g83x57jwz2iqarks30x0bwg48i5ispw6xbr3"; depends=[car ggplot2 stringr]; };
@@ -16027,7 +16089,7 @@ in with self; {
   s2 = derive2 { name="s2"; version="1.0.7"; sha256="0gwydn6wdl675ydkcckrci6ylcx30qn8nfhmrp4qx4r9mv3c2410"; depends=[Rcpp wk]; };
   s20x = derive2 { name="s20x"; version="3.1-31"; sha256="0gnp703blgawfymd6nxz98w8g7sabagrnk3qc3d3cxj887w83gih"; depends=[]; };
   s2dv = derive2 { name="s2dv"; version="1.1.0"; sha256="1sx7zmd0m0ny3jm7m5r1x327pw0qn8j0ny02yv6ki7kpbh6mk0pw"; depends=[abind bigmemory ClimProjDiags easyNCDF mapproj maps multiApply NbClust ncdf4 plyr SpecsVerification]; };
-  s2dverification = derive2 { name="s2dverification"; version="2.10.0"; sha256="0sf47jxhw463qfaajiqla21nz7343fw3fzkyzyq2j8zdp7lj7xr2"; depends=[abind bigmemory GEOmap geomapdata mapproj maps NbClust ncdf4 plyr SpecsVerification]; };
+  s2dverification = derive2 { name="s2dverification"; version="2.10.1"; sha256="06syzn04da3dka1j936hiqqnpif56mb9q2s42bfv95467zvvf3pg"; depends=[abind bigmemory GEOmap geomapdata mapproj maps NbClust ncdf4 plyr SpecsVerification]; };
   s2net = derive2 { name="s2net"; version="1.0.1"; sha256="1f6lc8azx8lax7jc5ggzirwnp5d9ka2plimfkg70vx783xf56zaw"; depends=[MASS Rcpp RcppArmadillo]; };
   s4vd = derive2 { name="s4vd"; version="1.1-1"; sha256="1rp3z42nxmrvb942h3c5cl544lngzx7nrnnr4zjw7dq495bym7yp"; depends=[biclust foreach irlba]; };
   sAIC = derive2 { name="sAIC"; version="1.0"; sha256="1ih63cfs98kb61gwbmrx2yq7iacb5qa1qrh1a264041qd27r5pj5"; depends=[]; };
@@ -16052,13 +16114,18 @@ in with self; {
   sads = derive2 { name="sads"; version="0.4.2"; sha256="1j6vdjvpnbqp4kwbvhcl8p51ln29mmk9n150718wsqlifb8d1lw9"; depends=[bbmle GUILDS MASS poilog VGAM]; };
   sae = derive2 { name="sae"; version="1.3"; sha256="1ncrlzgnga9pfa2j8x1y6axl2665rp08aff98zrim6gq6n6yap8z"; depends=[lme4 MASS]; };
   saeBest = derive2 { name="saeBest"; version="0.1.0"; sha256="0s68w9cikhpac1kdlm1pphvnks1izacs5s87d7r380c3lkgkzd76"; depends=[sae]; };
-  saeHB = derive2 { name="saeHB"; version="0.1.0"; sha256="1ny22mbf22zlpzl9kh8gxkldi49slw584nvwwi94rvs1wa8j9b8x"; depends=[coda rjags stringr]; };
+  saeHB = derive2 { name="saeHB"; version="0.2.0"; sha256="0ahll2jqn7bxd0l629n8zj80y37acspy2m6vhjbg96206i49mnr5"; depends=[CARBayesdata coda MASS nimble rjags stringr]; };
+  saeHB_hnb = derive2 { name="saeHB.hnb"; version="0.1.0"; sha256="00sms01xb290h555v5ngp5vnaancq165mcvli8dmni0mfdx5i7p3"; depends=[coda rjags stringr]; };
+  saeHB_panel = derive2 { name="saeHB.panel"; version="0.1.0"; sha256="1nj237lpypz9vpamic4qm17x0p36yqdy8mmgy778c1dhmpvmwrfs"; depends=[coda rjags stringr]; };
+  saeHB_spatial = derive2 { name="saeHB.spatial"; version="0.1.0"; sha256="0fqc3c5y4rwfpgfbwfsrdhqlwjbal28wi9djm1vlncr8phkzfpln"; depends=[coda rjags stringr]; };
+  saeHB_twofold = derive2 { name="saeHB.twofold"; version="0.1.0"; sha256="0jmabk649lfsrjx4an0a8x5kpb4agfw9gqjilsf1pmqvq725a9bv"; depends=[coda data_table rjags stringr]; };
+  saeHB_zinb = derive2 { name="saeHB.zinb"; version="0.1.0"; sha256="1gqb6xwfyz171md058m0kva2pj6hir09p784jwch2i1m9mvzinma"; depends=[coda rjags stringr]; };
   saeME = derive2 { name="saeME"; version="1.2.4"; sha256="02yf5rf2kavwl3icfnsjg0kxmifrcc7v4j5jsfrfa8ssfbwcivhn"; depends=[ClusterR dplyr expm MASS]; };
   saeRobust = derive2 { name="saeRobust"; version="0.2.0"; sha256="1bdfrsm59xwkga0kxl3r5n83mhhkyzj7gplrgx26gyflashyd1zc"; depends=[aoos assertthat ggplot2 magrittr MASS Matrix memoise modules pbapply Rcpp RcppArmadillo spdep]; };
   saeSim = derive2 { name="saeSim"; version="0.11.0"; sha256="0s0zcls4j3cx7wbvi0l3q4c3b0f9x9i2wcqnz4gzwyqik6pcfaic"; depends=[dplyr functional ggplot2 MASS parallelMap spdep tibble]; };
   saeeb = derive2 { name="saeeb"; version="0.1.0"; sha256="04vjxmnqcgqcamgjd9qq1dbx0msm40mnn94jjy9pzvsj2gsbws39"; depends=[COUNT MASS]; };
   saekernel = derive2 { name="saekernel"; version="0.1.1"; sha256="0zk124kkxrwr3bliy01d3ag4r0flnjg4z3lmm5wmq3w0r4gwgy4f"; depends=[]; };
-  saemix = derive2 { name="saemix"; version="2.4"; sha256="0w79n28xvkf2iw0vm9bw5dhxlp54bzm1lwl7q2hw356c2gmbpwjh"; depends=[]; };
+  saemix = derive2 { name="saemix"; version="3.0"; sha256="17ax2cvlk69y8f00xgbdibycxng45kx175b518sdlkrm49pdxm7h"; depends=[ggplot2 gridExtra npde rlang]; };
   saery = derive2 { name="saery"; version="1.0"; sha256="09x1v627llqbpiwkh1wr0z7gsndfdrjzag2hprhq1adbzh05k47z"; depends=[]; };
   safeBinaryRegression = derive2 { name="safeBinaryRegression"; version="0.1-3"; sha256="1g68r6pp5l41rbgyfqgcha1gpsisnl0ybdmdqr4ylr43f61dpgvd"; depends=[lpSolveAPI]; };
   safejoin = derive2 { name="safejoin"; version="0.1.0"; sha256="0qvra505g7cay3nhq6yqrddb7sw3kx50y8jhgvxi47rxdc3alzba"; depends=[dplyr glue]; };
@@ -16068,10 +16135,9 @@ in with self; {
   safetyData = derive2 { name="safetyData"; version="1.0.0"; sha256="1spa1wh1z8cqsz8vrkj3abny0xs3qp8d80dla8d031d70hvfkdjc"; depends=[]; };
   safetyGraphics = derive2 { name="safetyGraphics"; version="2.0.0"; sha256="1y1qj8vhq3z3g4ij2qkc5cpwc5zknmjnp3kpkbcr9cywjrdpa5pq"; depends=[datamods dplyr DT htmlwidgets jsonlite magrittr purrr rclipboard rlang safetyCharts safetyData shiny shinyjs sortable stringr yaml]; };
   sageR = derive2 { name="sageR"; version="0.3.0"; sha256="093qxwbkf8cqc3zjad232987qq2155faj8w2qplwxzvg881f0yi0"; depends=[ggplot2]; };
+  sahpm = derive2 { name="sahpm"; version="1.0.1"; sha256="1grhfxpqx9dyvqd2v91im3jgki2k3abcaal2ix9pcdzz93fc9xlw"; depends=[mvtnorm]; };
   sail = derive2 { name="sail"; version="0.1.0"; sha256="1wrh2dam5lblascqd8gl76jks72ys1amz84c6p08y8ykdmn2saq1"; depends=[gglasso glmnet]; };
-  salbm = derive2 { name="salbm"; version="1.0"; sha256="06nizpphyn5q292b2kbsjax0ljw3340n655qwiyp8lvi2zcnl6jy"; depends=[randomForestSRC]; };
-  salem = derive2 { name="salem"; version="0.2.0"; sha256="1pk27d57bmds0jvnvwai2scjy798lb7w6lb84yxl4ccgyn1ldh45"; depends=[]; };
-  salesforcer = derive2 { name="salesforcer"; version="1.0.0"; sha256="12gc77d6kg7yb9hvbwibahslka8xfqzmwim4q6nkiyq9b0x5wliv"; depends=[anytime base64enc curl data_table dplyr httr jsonlite lifecycle lubridate mime purrr readr rlang rlist tibble vctrs XML xml2 zip]; };
+  salesforcer = derive2 { name="salesforcer"; version="1.0.1"; sha256="19z4q5k0k1c1s2piqjg0z6nrwabap016nbx3jpf51lvmh5lp8ycf"; depends=[anytime base64enc curl data_table dplyr httr jsonlite lifecycle lubridate mime purrr readr rlang rlist tibble vctrs XML xml2 zip]; };
   salso = derive2 { name="salso"; version="0.3.0"; sha256="05nsnhbb5w69064ddmdkpvx7nw2gbd2l446b89myllw0jzaycza3"; depends=[]; };
   salty = derive2 { name="salty"; version="0.1.0"; sha256="1dxq62yrkv416fy09l03slc7ci6mnwiyvjlsxhbqnj8yjy3kbhr6"; depends=[assertthat purrr stringr]; };
   sambia = derive2 { name="sambia"; version="0.1.0"; sha256="15yz5lrjav5bs8m52crg3l43xmi4gf7wydji76p181ssyg43z2ln"; depends=[dplyr e1071 FNN mvtnorm pROC ranger smotefamily]; };
@@ -16095,9 +16161,9 @@ in with self; {
   sams = derive2 { name="sams"; version="0.4.2"; sha256="0k67vdjwnp7ljll87vjqb80axbcfgm05rgw5vadzn67dgghkqd0j"; depends=[]; };
   samurais = derive2 { name="samurais"; version="0.1.0"; sha256="0s00hd3ax4r662n8iqmd9i56sgyjxbgc59la7qvh3jwcnzcvmgz9"; depends=[MASS Rcpp RcppArmadillo]; };
   sand = derive2 { name="sand"; version="2.0.0"; sha256="0a8skj1wi1n9zlm7jb5cix1i4ssdzfpj4ym2854ala9jy6qj7g7n"; depends=[igraph igraphdata]; };
-  sandbox = derive2 { name="sandbox"; version="0.2.0"; sha256="1xwz8bddl9zf75d5xxvyvnljm6x45dwsf7lsks0fw7h5h97cv3xq"; depends=[RLumModel]; };
+  sandbox = derive2 { name="sandbox"; version="0.2.1"; sha256="0k86dgfjg7ib79cl6nwxv1g9i15pk501kd8ynlaj3mijpnhgvbal"; depends=[RLumModel]; };
   sandwich = derive2 { name="sandwich"; version="3.0-1"; sha256="12aa5083k3sfrfq1jy3l94wffss9h0rga8j71jy3n8pkhiq4nn7n"; depends=[zoo]; };
-  sandwichr = derive2 { name="sandwichr"; version="1.0.0"; sha256="1hrkj0c8vhvg1kdg9vkakdc9k63p6dj50075s6z1pmh96d96zags"; depends=[caret dplyr geodetector ggplot2 gridExtra lwgeom sf]; };
+  sandwichr = derive2 { name="sandwichr"; version="1.0.1"; sha256="114k981kxkf3a8kvzaciimkksnh1g5cyj2ams278r09vi3ic59ia"; depends=[caret dplyr geodetector ggplot2 gridExtra lwgeom sf]; };
   sanic = derive2 { name="sanic"; version="0.0.1"; sha256="05fd7jpi7cf9klfh6dqf8wklrjh5q1b3xqddxhdihcsqvcqhg48l"; depends=[Matrix Rcpp RcppEigen]; };
   sanitizers = derive2 { name="sanitizers"; version="0.1.0"; sha256="1c1831fnv1nzpq8nw9krgf9fm8v54w0gvcn4443b6jghnnbhn2n6"; depends=[]; };
   sanityTracker = derive2 { name="sanityTracker"; version="0.1.0"; sha256="0y041x840sg5c05ksljb1y4xag1cib19q5ygp443k13ryfbcgs9k"; depends=[checkmate data_table]; };
@@ -16108,17 +16174,17 @@ in with self; {
   santoku = derive2 { name="santoku"; version="0.6.0"; sha256="1kwyc9c8fhfxr6kh9wkrw1ywqx5hjrp0dfvl97qzcly0g28432fs"; depends=[assertthat lifecycle Rcpp vctrs]; };
   sanzo = derive2 { name="sanzo"; version="0.1.0"; sha256="1fqsx2mgjsy6vjvsp2avi2i5cw7cjs2p53l1z6hb3bzid3067s87"; depends=[]; };
   saotd = derive2 { name="saotd"; version="0.3.0"; sha256="11ql731w3rc4spmd2ii52r49sxymxkf7wj2ngdvb8pcs4idar059"; depends=[dplyr ggplot2 ggraph igraph ldatuning lubridate magrittr reshape2 rtweet scales stringr tidyr tidytext topicmodels widyr]; };
-  sapa = derive2 { name="sapa"; version="2.0-3"; sha256="0kj681rd4c2lvqr926lb6f4qwp281x5274dg6vbk8pf5y7s0qlpc"; depends=[ifultools splus2R]; };
   sapevom = derive2 { name="sapevom"; version="0.2.0"; sha256="0vq4rx85pdjc0wjxjf7wj8j5qs3cb20hwhlc2ypbgrlw7zkcp1z4"; depends=[]; };
   sapfluxnetr = derive2 { name="sapfluxnetr"; version="0.1.3"; sha256="06w3wm8m55ak1zxdyqq01ymgvyw71hk2m1vv378dppjxib7kvh3z"; depends=[assertthat dplyr furrr ggplot2 glue lubridate magrittr purrr rlang stringr tibble tidyr]; };
   saqgetr = derive2 { name="saqgetr"; version="0.2.21"; sha256="0s7mmc8gqx89697wkv369x6sp3d1wha4q2zkkwikh835i3alx4zd"; depends=[dplyr httr lubridate magrittr purrr readr stringr tidyr]; };
-  sarima = derive2 { name="sarima"; version="0.8.6"; sha256="0xkqw7fjj1dc02m3k2v2dgnlrhrhnwxgdjwyfirpicrbbv522xhh"; depends=[FitAR FitARMA Formula lagged ltsa numDeriv PolynomF Rcpp RcppArmadillo Rdpack]; };
-  sarp_snowprofile = derive2 { name="sarp.snowprofile"; version="1.0.0"; sha256="02g7d5kilfkhqxm02jkhkraqbamxaj1qzzi150k6m55d5bfy4wih"; depends=[data_table xml2]; };
-  sarp_snowprofile_alignment = derive2 { name="sarp.snowprofile.alignment"; version="1.0.2"; sha256="1yh4ybnscjzps28ncqd46xzv88fjcn4bhcx6rwz8kl1m253c4wpl"; depends=[dtw sarp_snowprofile shiny]; };
+  sara4r = derive2 { name="sara4r"; version="0.0.9"; sha256="1vfaz4fs0yayf01w0smsnviwhvjz10krfagp4vhy4lmdcs99s00h"; depends=[raster rgdal sp tcltk2]; };
+  sarima = derive2 { name="sarima"; version="0.9"; sha256="1wh84vg25vkr23ghfjfirsp0yj5537cybn2p623s18fypcfivlns"; depends=[Formula lagged ltsa numDeriv PolynomF Rcpp RcppArmadillo Rdpack]; };
+  sarp_snowprofile = derive2 { name="sarp.snowprofile"; version="1.2.1"; sha256="1nz9ldc6a2x4a934xkyd3q2rim2bbcvhs3ks1m08q5qdcv1w0hiq"; depends=[data_table xml2]; };
+  sarp_snowprofile_alignment = derive2 { name="sarp.snowprofile.alignment"; version="1.1.4"; sha256="0p3acphlc90d8kh0yyvc754vb5xvgzncw6819phzx11c63xmyqk9"; depends=[data_table dtw sarp_snowprofile shiny]; };
   sars = derive2 { name="sars"; version="1.3.5"; sha256="07jaagf3q8x4iwjh1avy5vzv9y62ipnjd43acbw0hizh983qlq3r"; depends=[AICcmodavg cli crayon doParallel foreach nortest numDeriv]; };
   sarsop = derive2 { name="sarsop"; version="0.6.9"; sha256="1rjpgicgy9vfi9q2vldrbbakybmazal5gh79p2kysnzhcr76v3z5"; depends=[BH digest Matrix processx xml2]; };
   sas7bdat = derive2 { name="sas7bdat"; version="0.5"; sha256="0qxlapb6wdhzpwlmzlhscy3av7va3h6gkzsppn4sx5q960310an3"; depends=[]; };
-  sasLM = derive2 { name="sasLM"; version="0.6.5"; sha256="1l9fwvzc91v12np0vxj276fqx3lhmf895ih9c1vq5x6ddy0f6rp3"; depends=[mvtnorm]; };
+  sasLM = derive2 { name="sasLM"; version="0.6.6"; sha256="04gmh6sakxl2dgslyfqm7pixyjngvnkhw1xpp9n67fv62rjs8vai"; depends=[mvtnorm]; };
   sasMap = derive2 { name="sasMap"; version="1.0.0"; sha256="11vhhxhakqm1gsb3p4s4966sapmrqfyw79zfppbx5lnqi3xr0ngn"; depends=[readr stringi stringr]; };
   sasfunclust = derive2 { name="sasfunclust"; version="1.0.0"; sha256="1ba7g3rxyq5h806na6bsdvh6mw6hydgcf3740qkfd4d5fx7m0mq4"; depends=[fda MASS Matrix matrixcalc mclust Rcpp RcppArmadillo]; };
   sass = derive2 { name="sass"; version="0.4.0"; sha256="0axw358bbk3vxsqg3wq0bz3xigasa6af8fxvi2ga8hli4cawl1kx"; depends=[fs htmltools R6 rappdirs rlang]; };
@@ -16153,7 +16219,7 @@ in with self; {
   scITD = derive2 { name="scITD"; version="1.0.1"; sha256="0x20yiwafalsfgxcmbia05vrfp7bpvwkgxgrdrxjpzhs07q527wk"; depends=[circlize ComplexHeatmap dplyr edgeR fgsea ggplot2 ggpubr ica Matrix mgcv msigdbr NMF RColorBrewer Rcpp RcppArmadillo RcppProgress reshape2 Rmisc rTensor sccore sva]; };
   scImmuneGraph = derive2 { name="scImmuneGraph"; version="1.1.3"; sha256="0mvajasskcl4v0bjwzvkqjdicxb0329nxk93ich7qr37wfcp2n1n"; depends=[BiocStyle cowplot dplyr easypackages forcats ggplot2 gtools plyr purrr RColorBrewer readr scales stringr tibble tidyr tidyverse]; };
   scLink = derive2 { name="scLink"; version="1.0.1"; sha256="0gcwx8kfik1lv949r9d9rqqnvrfkr4bj5cj2i9h1r7l1b76kna74"; depends=[glasso]; };
-  scMappR = derive2 { name="scMappR"; version="1.0.7"; sha256="08ifrdmr4ws4z6aq75j84sain8q55ax6h1gzqqnphyw593yh9918"; depends=[ADAPTS downloader ggplot2 gProfileR gprofiler2 GSVA limSolve pbapply pcaMethods pheatmap reshape Seurat]; };
+  scMappR = derive2 { name="scMappR"; version="1.0.9"; sha256="1b2jrbqy9dcvv9ng7mz8xxggqc5iy4n0h59xksin3m9gvpvsc0sw"; depends=[ADAPTS downloader ggplot2 gProfileR gprofiler2 GSVA limSolve pbapply pcaMethods pheatmap reshape Seurat]; };
   scModels = derive2 { name="scModels"; version="1.0.2"; sha256="02nn8nv77fgmskx5zsa34ij9lzq9jiv8w2vmw5863v55khzvfs53"; depends=[gamlss_dist Rcpp]; };
   scPOP = derive2 { name="scPOP"; version="0.1.0"; sha256="0bi9dmqj9cd8f09qmfl3d65922xn3j3jipxi6615jbk6bz67kkh9"; depends=[cluster Matrix RANN Rcpp RcppArmadillo]; };
   scRNAstat = derive2 { name="scRNAstat"; version="0.1.1"; sha256="0yv5np7jafmygg77bwisrha5y2rdb1va906ngzs4zc8mvxr0dvlm"; depends=[clustree dplyr ggplot2 magrittr Matrix patchwork Seurat stringr]; };
@@ -16177,7 +16243,7 @@ in with self; {
   scatr = derive2 { name="scatr"; version="1.0.1"; sha256="1c2z722i7d7qflh4mzb8kkix5i22wph98kwz2p98x2mhaml8802d"; depends=[cowplot ggplot2 ggridges ggstance jmvcore R6]; };
   scatterD3 = derive2 { name="scatterD3"; version="1.0.1"; sha256="187jq1y5va5npsmpkfyi6mhgynq956590q4z8v1ibadsrcldw34m"; depends=[digest ellipse htmlwidgets]; };
   scatterPlotMatrix = derive2 { name="scatterPlotMatrix"; version="0.1.0"; sha256="1xs1rzi6j3yrj4j4yjhlj24nkxdnc4xgpwrdv9p0bzwc4gcarw1j"; depends=[htmlwidgets]; };
-  scattermore = derive2 { name="scattermore"; version="0.7"; sha256="18nzlprmphkvjg946h10h2qq0wbkmv2526p8di6k2xl4gccq0qpk"; depends=[ggplot2 scales]; };
+  scattermore = derive2 { name="scattermore"; version="0.8"; sha256="1rgqm7r1k7j3h2y4i6d1a2y8fzivfcbmr7dj9d367c0w4vc77pfv"; depends=[ggplot2 scales]; };
   scatterpie = derive2 { name="scatterpie"; version="0.1.7"; sha256="1pmspv8a7k20zyd5xvmav2k9mnjrkfhdij3rr9k504zyki8hfy1z"; depends=[ggforce ggfun ggplot2 rlang tidyr]; };
   scatterplot3d = derive2 { name="scatterplot3d"; version="0.3-41"; sha256="152xqz9c70qab86mpgng049gxsg5f4fpf1m8dh93fb9v1avjd0sc"; depends=[]; };
   scbursts = derive2 { name="scbursts"; version="1.6"; sha256="09yxnq6m35xmp0priavjnh0bdcwkr5hhy7j33cz13xwkrd1cgw5j"; depends=[readxl tibble]; };
@@ -16213,6 +16279,7 @@ in with self; {
   scoringTools = derive2 { name="scoringTools"; version="0.1.2"; sha256="11bxmpqiqqkjyvmyxlnzz7j64jmy1pjw06128vvydmqhjxxyawjh"; depends=[discretization dplyr magrittr sqldf]; };
   scoringutils = derive2 { name="scoringutils"; version="0.1.7.2"; sha256="1njdvy6fzw20xb13mpdqczvap88jfxxnid31nmrkq9yzjdigjv2c"; depends=[data_table forcats ggplot2 goftest scoringRules]; };
   scout = derive2 { name="scout"; version="1.0.4"; sha256="0vr497g7g1xhf75cwjbjsns2fvdzy86iibbf5w0g2xylw82s4lh2"; depends=[glasso]; };
+  scpi = derive2 { name="scpi"; version="0.1"; sha256="06h8sqqhrja8m9ps8snwzm3zyp6iysdki9n47sv4xw0dixj7v5mp"; depends=[abind CVXR doRNG doSNOW dplyr ECOSolveR fastDummies foreach ggplot2 magrittr Matrix nloptr purrr Qtools rlang stringr tibble tidyr]; };
   scpm = derive2 { name="scpm"; version="2.0.0"; sha256="1ib46m3i50annp90n2ih4qdxabxik4ngg9j0a5hgspsvk1i4hrvp"; depends=[interp lattice MASS Matrix mvtnorm RandomFields rgl]; };
   scqe = derive2 { name="scqe"; version="1.0.0"; sha256="1113zbc2jyq03fh8l1h6yidf25hh5dcqrk6wkk9flqwnbrvfkwrr"; depends=[AER ggplot2]; };
   scraEP = derive2 { name="scraEP"; version="1.2"; sha256="1qkfd4bp3sd3xrh9bdaqwmmvx7f9rvjcch6hi2p387ky04ywwqn4"; depends=[data_table rvest XML xml2]; };
@@ -16220,9 +16287,9 @@ in with self; {
   scrappy = derive2 { name="scrappy"; version="0.0.1"; sha256="0dckq2pdqabnv5cinfqgbrjxp55x4z81lp8xh4yhyb2cnz9gdsqy"; depends=[magrittr rvest xml2]; };
   scrime = derive2 { name="scrime"; version="1.3.5"; sha256="0y2mh9fsffjf3i15bafpasa17z99c1s75r8g6h4hgcwfgpjx75sx"; depends=[]; };
   scriptName = derive2 { name="scriptName"; version="1.0.1"; sha256="1rd3qj7c7pg454a5mxhr64g4kp15cqf5lf8lbsh9x88llvkjci5v"; depends=[purrr rlang]; };
-  scriptests = derive2 { name="scriptests"; version="1.0-16"; sha256="11l145gvzkxqwbzw976rq94krly1p4lahqw051dwaacarq4hnrdg"; depends=[]; };
   scriptexec = derive2 { name="scriptexec"; version="0.3.1"; sha256="0k10x0npdga1nmchzz9xxv0qijnq2n9pb49z1g06bmva1z8wb4wg"; depends=[]; };
   scriptuRs = derive2 { name="scriptuRs"; version="0.1.0"; sha256="1wbvfqcc0raazhdc6pyp93q859ilxfz9rz338p3sb7fjyxvparbl"; depends=[]; };
+  scrm = derive2 { name="scrm"; version="1.7.4-0"; sha256="1kn6f0ypkl50jvnxz9sc6nyb0cdcnaccgka984jfsniky16f6sn9"; depends=[Rcpp]; };
   scrobbler = derive2 { name="scrobbler"; version="1.0.2"; sha256="14nnqcjrcc5xcdn2swwj0j2jsw5maayd9ba06s6d5i88png2xhv5"; depends=[httr jsonlite]; };
   scrollrevealR = derive2 { name="scrollrevealR"; version="0.2.0"; sha256="0k8ffapwxpb25wphm76arma095hrh3wf0gpkx1z6g4rplahf4jxa"; depends=[glue htmltools]; };
   scrypt = derive2 { name="scrypt"; version="0.1.3"; sha256="14iblgbp9v2by8fjbrpsd59iknp5babcz7j3yv1yxxzcwyb6wrrm"; depends=[Rcpp]; };
@@ -16237,7 +16304,7 @@ in with self; {
   sdafilter = derive2 { name="sdafilter"; version="1.0.0"; sha256="0y692j25pln46dp6xvaq17fkym0461yqfa6rv5avfw2b240k8jiq"; depends=[glasso glmnet huge POET]; };
   sdamr = derive2 { name="sdamr"; version="0.1.0"; sha256="19mgdipp2fwv0c8g5fc02j4vdnc6v4x0204570swv8mkb2r2acqy"; depends=[car dplyr ggplot2]; };
   sdat = derive2 { name="sdat"; version="1.1"; sha256="1mxijw2yfblqjvqqb2xrzhfn9c872i1q9ggw24xicvr2fk4lvjw6"; depends=[]; };
-  sdcHierarchies = derive2 { name="sdcHierarchies"; version="0.19.1"; sha256="128mxm7iphg7c5jxpfakdnldc995gdcrlnfaxddw7csvzv547dwa"; depends=[cli data_table jsonlite Rcpp rlang shiny shinyjs shinythemes shinyTree]; };
+  sdcHierarchies = derive2 { name="sdcHierarchies"; version="0.19.2"; sha256="198bk08qz5xr07pkc9yj3n9rzgv5ssijhg9fwhhrg35rf7jni1s8"; depends=[cli data_table jsonlite Rcpp rlang shiny shinyjs shinythemes shinyTree]; };
   sdcLog = derive2 { name="sdcLog"; version="0.4.0"; sha256="0rph0jha8x5mqzcpad3px89ppqbxccsx896mhpxw9pxrpk82aiig"; depends=[broom checkmate crayon data_table mathjaxr]; };
   sdcMicro = derive2 { name="sdcMicro"; version="5.6.1"; sha256="12maw34ibsa2fpdxy4ww8nbsllfvcjvf5idg4m4z0fjsbmd7li51"; depends=[car carData cluster data_table DT e1071 ggplot2 haven knitr MASS prettydoc Rcpp rhandsontable rmarkdown robustbase shiny shinyBS VIM xtable]; };
   sdcSpatial = derive2 { name="sdcSpatial"; version="0.1.1"; sha256="1szv2nb758k3x5scxml2ns11fi99rlmd11r3fhzy3dgylf0m0xnm"; depends=[raster]; };
@@ -16248,7 +16315,7 @@ in with self; {
   sdetorus = derive2 { name="sdetorus"; version="0.1.8"; sha256="1bf622k9szas3bfxz9f82dn28l1hdqxzpvgqwvzygy9vp2gi4gyp"; depends=[colorRamps mvtnorm Rcpp RcppArmadillo]; };
   sdm = derive2 { name="sdm"; version="1.1-8"; sha256="130zkhhq1l99r16dii21i87wphb4n10xq70rgimm4x0q7zn0jv5y"; depends=[raster sp]; };
   sdmApp = derive2 { name="sdmApp"; version="0.0.2"; sha256="1rfzy3bbdya7amyr43dhhv4cvmrxcan0fv167ldpbf0m9snqrnrx"; depends=[raster shiny sp]; };
-  sdmpredictors = derive2 { name="sdmpredictors"; version="0.2.11"; sha256="1fazdcxmgwa3m3nd010i3rprnh05ydwh152vvbship7c73czwcs1"; depends=[R_utils raster rgdal]; };
+  sdmpredictors = derive2 { name="sdmpredictors"; version="0.2.12"; sha256="1j3z16kdc256k5dn596k3y4dbbp3sjfxbh87a2jiplddq4a8bgff"; depends=[R_utils raster rgdal]; };
   sdmvspecies = derive2 { name="sdmvspecies"; version="0.3.2"; sha256="19avkag13ij1k65vqhmvcy8j50j8vrgw4mjc49x8i63w3d4z1wxh"; depends=[psych raster]; };
   sdpdth = derive2 { name="sdpdth"; version="0.2"; sha256="1yn8fsjxpbagargf3mv0p23vsgnl64dxfkggrzvfp0ylxsx8nnvc"; depends=[Matrix matrixcalc rCMA Rcpp RcppArmadillo rJava]; };
   sdprisk = derive2 { name="sdprisk"; version="1.1-6"; sha256="061x78irryc5phd8bv9cs2mfgiajgwmr85ryp1r47anadydb2haa"; depends=[numDeriv PolynomF rootSolve]; };
@@ -16261,14 +16328,14 @@ in with self; {
   searchConsoleR = derive2 { name="searchConsoleR"; version="0.4.0"; sha256="1ffg5359pbwylw265wbahwl3hy1b0qqv4al71v5r8lgfircibn0j"; depends=[googleAuthR stringr]; };
   searcher = derive2 { name="searcher"; version="0.0.6"; sha256="03q9nq5zkj344swq3ppliz6dhwaddls8xv633s6brccmrcgdaivm"; depends=[]; };
   seas = derive2 { name="seas"; version="0.5-2"; sha256="0hn4d5dc01zyycd7l3vj1sx6bq668n7fzffw9ypaa5l20fizs0ay"; depends=[MASS]; };
-  season = derive2 { name="season"; version="0.3.13"; sha256="0sn10vxdqvds162i4d7jg6if15h9p8fxia27ihlr4kfyp9113g98"; depends=[ggplot2 MASS survival]; };
+  season = derive2 { name="season"; version="0.3.14"; sha256="1hdn0ji631ga0wadd4w0vph0s59dpcq1q36g0aii07jd0mc1wifv"; depends=[ggplot2 MASS survival]; };
   seasonal = derive2 { name="seasonal"; version="1.8.4"; sha256="1mqlck752d9hmzmkmjw9qq7g9kkrwbzglsm7sx0xc03qbm5zxd3k"; depends=[x13binary]; };
   seasonalclumped = derive2 { name="seasonalclumped"; version="0.3.2"; sha256="0a9ryds9l00dw6pr9s6r6fzrby53zz63idjywh127a4ga48jwnq3"; depends=[ggplot2 gridExtra magrittr TTR]; };
   seasonalityPlot = derive2 { name="seasonalityPlot"; version="0.99.3"; sha256="12z15qlvyj9rrljzqbhgh384x53qqylwmzias4bhx0k3hq2qvsrj"; depends=[dygraphs htmltools magrittr plotrix quantmod zoo]; };
   seasonalview = derive2 { name="seasonalview"; version="0.3"; sha256="1l705yc7ssldsfckbgnvd95sh3zzhpkmf1rr6ar2s60s3wsyly4n"; depends=[dygraphs htmlwidgets openxlsx seasonal shiny shinydashboard xtable xts zoo]; };
   seastests = derive2 { name="seastests"; version="0.15.4"; sha256="1xy2hacd57v75y5snhn4al7bi71wr994jy6m2sdr6qzzsd5pbgpc"; depends=[forecast xts zoo]; };
   seawaveQ = derive2 { name="seawaveQ"; version="2.0.2"; sha256="1x4vvassal1lwb9xnwisrhlx2maaqxl84h7klfy8yg9x80fdrhsw"; depends=[lubridate plyr reshape2 rms survival]; };
-  secr = derive2 { name="secr"; version="4.5.1"; sha256="1vbxivrk3v6hkh56x8cp7n3aw30zb9mchaixxq06qihnjmn6prx5"; depends=[abind BH MASS mgcv nlme raster Rcpp RcppEigen RcppNumerical RcppParallel sp stringr]; };
+  secr = derive2 { name="secr"; version="4.5.3"; sha256="1rp36brvpalzria61az514f3drinjxql0c12jgjb71m01vcjqfad"; depends=[abind BH MASS mgcv nlme raster Rcpp RcppEigen RcppNumerical RcppParallel sf stringr terra]; };
   secrdesign = derive2 { name="secrdesign"; version="2.6.0"; sha256="0iaby8qpik6g5060m3cykrqslj8cl1ddg0hsqy6vjgy6gg9r6ach"; depends=[abind secr]; };
   secret = derive2 { name="secret"; version="1.1.0"; sha256="063gpyc2s2l6zw1j8b8ppzsv9kjsf0s77s5wcn7ipmwkj8qr2g4b"; depends=[assertthat curl jsonlite openssl rprojroot]; };
   secrettext = derive2 { name="secrettext"; version="0.1.0"; sha256="129v524yyb464mcij7hvzv05cxliaz5nm7v30g9g9ppskcdqhsx2"; depends=[dplyr magrittr rlang stringr testthat tidyr]; };
@@ -16276,7 +16343,7 @@ in with self; {
   secsse = derive2 { name="secsse"; version="2.1.7"; sha256="0cad1flym8bhra11chc16ylfa3i0nhi9jyy6r4nacwh6qpbbavjg"; depends=[ape apTreeshape DDD deSolve doParallel foreach geiger phylobase]; };
   secuTrialR = derive2 { name="secuTrialR"; version="1.0.9"; sha256="0g84jrh42kx3w1m6spw80rwx7vzjf7x1qabqap4h6ayrczacxq4r"; depends=[dplyr haven lubridate magrittr purrr readr readxl rlang stringr tibble tidyr]; };
   secure = derive2 { name="secure"; version="0.6"; sha256="1i0csl90w4qvhpnrxwrdhxzlmjw7hn30py36r41cd28igycz2bw3"; depends=[MASS Rcpp RcppArmadillo]; };
-  see = derive2 { name="see"; version="0.6.8"; sha256="0q7hfb94smpyq9wsf48j04hx05nkaijf875fwwz8lfhkfvd8z4kj"; depends=[bayestestR datawizard effectsize ggplot2 ggridges insight parameters rlang]; };
+  see = derive2 { name="see"; version="0.6.9"; sha256="0r42dm3zwjszfn6sga6ljgczaksgnn4n92y7bm3qysvcfnywvqq4"; depends=[bayestestR datawizard effectsize ggplot2 insight parameters]; };
   seeclickfixr = derive2 { name="seeclickfixr"; version="1.1.0"; sha256="1agsqq2msrqrssffc6liyjjs6nqm90xy2inlcjbkdac5dhinjc4n"; depends=[jsonlite RCurl]; };
   seecolor = derive2 { name="seecolor"; version="0.1.0"; sha256="1ijxyys8pwlm99ynmv86cgn8pzz1ivaxzh3rq1akzv17nz93jv61"; depends=[crayon dplyr fansi ggplot2 magrittr purrr rstudioapi stringr]; };
   seedCCA = derive2 { name="seedCCA"; version="3.0"; sha256="076pkv083dp71m6ifjzx9spfwmc1625r9d72spf0vhf8pwwsha4v"; depends=[CCA corpcor]; };
@@ -16285,7 +16352,7 @@ in with self; {
   seedreg = derive2 { name="seedreg"; version="1.0.2"; sha256="16nr2hkwc0vfkd76ky592r1ymlmpakvxsmammih3fii9d4l8mlab"; depends=[boot car crayon drc emmeans ggplot2 hnp multcomp multcompView stringr]; };
   seeds = derive2 { name="seeds"; version="0.9.1"; sha256="0adk7y5ripg78bwkdgnlfwq9w9h6mlpdrikgbnn5z8az2qahc0in"; depends=[callr coda Deriv deSolve dplyr ggplot2 Hmisc MASS matrixStats mvtnorm pracma R_utils Ryacas statmod tidyr]; };
   seer = derive2 { name="seer"; version="1.1.7"; sha256="018621hywk8p3p210dn7ikll5nl188xb8smxsqzkzrf9wc886s3y"; depends=[dplyr forecast forecTheta furrr future magrittr MASS purrr randomForest stringr tibble tsfeatures urca]; };
-  seewave = derive2 { name="seewave"; version="2.1.8"; sha256="1szcvryvl4kb3av2pcvl14bz6whl7xrq4wb1ck6w7lfc4mrlirhh"; depends=[tuneR]; };
+  seewave = derive2 { name="seewave"; version="2.2.0"; sha256="0bi1l47l3846c18k6h2vrv0xp9xh00n544a578jrndahzrj1hfwl"; depends=[tuneR]; };
   seg = derive2 { name="seg"; version="0.5-7"; sha256="165hl55vzyf3jqlykqji37p2syzhc8dxdjxd4wwr562qnlymzszx"; depends=[sp splancs]; };
   segMGarch = derive2 { name="segMGarch"; version="1.2"; sha256="0chw41h25jka9wa3rf3d8dq2ym47379jflv33q6qxaak8xy1kmd9"; depends=[corpcor doParallel fGarch foreach iterators mvtnorm Rcpp RcppArmadillo]; };
   segRDA = derive2 { name="segRDA"; version="1.0.2"; sha256="0az27z4pppyz5slckwmgk6qqix710m1s96drlq4fh8bqn2qmz812"; depends=[vegan]; };
@@ -16305,10 +16372,10 @@ in with self; {
   selectMeta = derive2 { name="selectMeta"; version="1.0.8"; sha256="0i0wzx5ggd60y26lnn4qk4n8h27ahll9732026ppks1djx14cdy0"; depends=[DEoptim]; };
   selectapref = derive2 { name="selectapref"; version="0.1.2"; sha256="0njibljh3hiqdn4wdb031bdg1bh3xpixgczbi5i01gaavybsq4cc"; depends=[]; };
   selection_index = derive2 { name="selection.index"; version="1.1.3"; sha256="0zvb6wr7ga5618v8rwdvc2bk7gw19gn3kpfn584cfac9j933m62v"; depends=[]; };
-  selectiongain = derive2 { name="selectiongain"; version="2.0.591"; sha256="11gd9xdn3jl3mg3c9ykw8bqvcxhihn19iqsy8dl8bacijjv84bva"; depends=[mvtnorm]; };
+  selectiongain = derive2 { name="selectiongain"; version="2.0.707"; sha256="17d1m3fmkxfrk0lx4pyz5cwkfdqnj9hca2w4pi406441lk8y4dsn"; depends=[mvtnorm]; };
   selectiveInference = derive2 { name="selectiveInference"; version="1.2.5"; sha256="07kzpvdmflca1sriqfzn20f84fx2b9kwwiqm91lqjpx854bsx5kh"; depends=[adaptMCMC glmnet intervals MASS Rcpp survival]; };
   selectr = derive2 { name="selectr"; version="0.4-2"; sha256="09y1n3iy297g49xlpl7xrjpwgnm57pskx5991lyfcpizbz8ax22m"; depends=[R6 stringr]; };
-  selectspm = derive2 { name="selectspm"; version="0.3"; sha256="1gl7wi4wfy9rnyralf9051v5yhr27fcw45a8ib4ashcwrd5wcs9j"; depends=[ecespa spatstat spatstat_core spatstat_geom]; };
+  selectspm = derive2 { name="selectspm"; version="0.4"; sha256="0yw5xwhv8kw3sizhq0r3wak8a32chkjil3lmxac8c6g9k47q8yrq"; depends=[ecespa spatstat spatstat_core spatstat_geom spatstat_random]; };
   seleniumPipes = derive2 { name="seleniumPipes"; version="0.3.7"; sha256="1krpzh2gy3yl07c2n1d8q21xjc2qcv5ac1kv7212710bxkdyfad6"; depends=[httr jsonlite magrittr whisker xml2]; };
   selfea = derive2 { name="selfea"; version="1.0.1"; sha256="0zyxbd5vg8nhigill3ndcvavzbb9sbh5bz6yrdsvzy8i5gzpspvx"; depends=[ggplot2 MASS plyr pwr]; };
   selfingTree = derive2 { name="selfingTree"; version="0.2"; sha256="18ylxmg2ms4ccgm4ahzfl65x614wiq5id7zazjjz5y75h8gs7gzj"; depends=[foreach]; };
@@ -16316,7 +16383,7 @@ in with self; {
   sem = derive2 { name="sem"; version="3.1-13"; sha256="0r9g4j0w6q4qy9jl9gkjkihml4109ymg3y6zmhyg806q19qryx07"; depends=[boot MASS mi]; };
   semEff = derive2 { name="semEff"; version="0.6.0"; sha256="0w919y49kl2vq9psnjn03cwwp99myip5cbvm6jmkkjiikx8iikh0"; depends=[boot gsl lme4]; };
   semPLS = derive2 { name="semPLS"; version="1.0-10"; sha256="0q5linjyv5npkw4grx3vq58iq2q1grf06ikivhkg8w7rvb7pqn6b"; depends=[lattice]; };
-  semPlot = derive2 { name="semPlot"; version="1.1.2"; sha256="0l1v9yi1pv59iwfknw4dh9qskk5y8r347jq1vq13gnfd3bmd71xr"; depends=[colorspace corpcor igraph lavaan lisrelToR OpenMx plyr qgraph regsem rockchalk sem XML]; };
+  semPlot = derive2 { name="semPlot"; version="1.1.5"; sha256="0d7v9yqc9nhx3hdrp444w1ah66zai3lg5y778m85r7ngh1prxlvc"; depends=[colorspace corpcor igraph lavaan lisrelToR OpenMx plyr qgraph rockchalk sem XML]; };
   semPower = derive2 { name="semPower"; version="1.2.0"; sha256="1y3j6b3ab19fqxzqrrssjcj7f0za0vkwq97s7qs6hwj9yfsg1nas"; depends=[]; };
   semTable = derive2 { name="semTable"; version="1.8"; sha256="0qr420rnz59q8arf6x05iy1zyh7pv31ldi2rsw1j2a00fbpp4ndf"; depends=[kutils lavaan plyr stationery xtable]; };
   semTools = derive2 { name="semTools"; version="0.5-5"; sha256="1dpsn43ifvfy5v8w2fqdy54yclmy0d3qlzix67lflr2r7isq7y6x"; depends=[lavaan pbivnorm]; };
@@ -16354,6 +16421,7 @@ in with self; {
   sensory = derive2 { name="sensory"; version="1.1"; sha256="1zd0ajrymxi6gygcq9fqgwgy0g6c3cqz53x0k5m0ihbmh11rc7s7"; depends=[gtools MASS Matrix]; };
   senstrat = derive2 { name="senstrat"; version="1.0.3"; sha256="0j6mb55v5ivqvk8nn8fjlzrbdgj6csa58yc6gy1g07m7gk2qz2np"; depends=[BiasedUrn MASS]; };
   sentencepiece = derive2 { name="sentencepiece"; version="0.2.1"; sha256="0mwmgnkmahlik8nl14pkzi351jv9c00iylj7f5h6wkjbrizkdd34"; depends=[Rcpp]; };
+  sentiment_ai = derive2 { name="sentiment.ai"; version="0.1.0"; sha256="1i7lihj66wgl1fciqm3kii3plflicjrrpzv8q899wcmky2whfgmf"; depends=[data_table jsonlite reticulate roperators tensorflow tfhub xgboost]; };
   sentimentr = derive2 { name="sentimentr"; version="2.9.0"; sha256="0i0lg2fl079wjv30lpqcxhx62miqakb9kzwwhrr4c18kl0bxbaav"; depends=[data_table ggplot2 lexicon stringi syuzhet textclean textshape]; };
   sentometrics = derive2 { name="sentometrics"; version="1.0.0"; sha256="06qvwfgshr70n1qgf2zqjvycwwrak8d5hfyn3v5k2qzkfaxkihmm"; depends=[caret data_table foreach ggplot2 glmnet ISOweek quanteda Rcpp RcppArmadillo RcppParallel RcppRoll stringi]; };
   sentryR = derive2 { name="sentryR"; version="1.1.0"; sha256="0kz81dbxg4zyns829cjhjm2g88pxzaaxdk7c8qabvl0zgqys2chy"; depends=[httr jsonlite stringr tibble uuid]; };
@@ -16366,7 +16434,7 @@ in with self; {
   seqR = derive2 { name="seqR"; version="1.0.1"; sha256="0a80w7pyf2hbyzlm010xj3xv1dzkdc2w9s48hhfbsig88f497ki7"; depends=[Matrix Rcpp RcppParallel rlang slam]; };
   seqRFLP = derive2 { name="seqRFLP"; version="1.0.1"; sha256="1i98hm8wgwr8b6hd237y2i9i0xgn35w4n2rxy4lqc5zq71gkwkvk"; depends=[]; };
   seqest = derive2 { name="seqest"; version="1.0.1"; sha256="06zk87n26305m0hy6lg7v3bpxmsqvinwkvw3dvmzkqp5jdkhwikb"; depends=[foreach geepack MASS mvtnorm nnet Rcpp RcppArmadillo VGAM]; };
-  seqgendiff = derive2 { name="seqgendiff"; version="1.2.2"; sha256="0vrmh4h2g4hvx8ix5jyc4bhp8vpr00fcqsfbf9r0808jqnlwgcnr"; depends=[assertthat cate clue irlba matchingR pdist sva]; };
+  seqgendiff = derive2 { name="seqgendiff"; version="1.2.3"; sha256="0vyrs4i3q3lyqx0b1as7h2rm3s5kbapq6jxzag8dwhf0ch7yz8gv"; depends=[assertthat cate clue irlba matchingR pdist sva]; };
   seqhandbook = derive2 { name="seqhandbook"; version="0.1.0"; sha256="0zncpjabazci92wzw126i491669gidkyiw7zjp7iw23m6jaf71l4"; depends=[TraMineR]; };
   seqinr = derive2 { name="seqinr"; version="4.2-8"; sha256="1xz9spln6s9mcwpgcv1m4jymn4gnl1bb6vh90bphqcn0vvlk8jsq"; depends=[ade4 segmented]; };
   seqmagick = derive2 { name="seqmagick"; version="0.1.5"; sha256="0h1vdsx88k3mpajfv0cgswk2s1560zm6y776b4dqrdkvkcgdbb3g"; depends=[Biostrings magrittr]; };
@@ -16378,10 +16446,10 @@ in with self; {
   sequenza = derive2 { name="sequenza"; version="3.0.0"; sha256="13l16lacdcf7fn96yj3xqxap0l19ma9ppkxxx5qk9f5abbvdk303"; depends=[copynumber iotools pbapply readr seqminer squash]; };
   sergeant = derive2 { name="sergeant"; version="0.9.1"; sha256="0mgrrlny1qfddznyc34awh8vkbjnyskbyqrxszdhsm2c5wgp2nwh"; depends=[bit64 DBI dbplyr dplyr htmltools httr jsonlite magrittr purrr readr scales stringi tibble]; };
   serial = derive2 { name="serial"; version="3.0"; sha256="1y1gj0lcdn5apiv6c6arks6pqhsbvnrfym6n2izjarx2c27ijrjj"; depends=[]; };
-  seriation = derive2 { name="seriation"; version="1.3.1"; sha256="08c37n3xxc4n4vbkw38k3l3hdlmck8drqpl6z274vkgi2sqv8qyf"; depends=[cluster colorspace gclus MASS qap registry TSP]; };
+  seriation = derive2 { name="seriation"; version="1.3.3"; sha256="1f6hxbrixqaj4vh4svff5pz9ny9h10snrrigk2r9c59amhkgih80"; depends=[cluster colorspace gclus MASS qap registry TSP]; };
   serieslcb = derive2 { name="serieslcb"; version="0.4.0"; sha256="1ip4k2xzg06hwsni62ai1whs1zzhwlf94507inpfpqz3jmmafrhq"; depends=[gplots shiny]; };
   seroincidence = derive2 { name="seroincidence"; version="2.0.0"; sha256="0sam4y7w6prswz0izkm1a9v2k5rv7z22g1ajy15n9xix9aml5ms4"; depends=[]; };
-  serp = derive2 { name="serp"; version="0.2.3"; sha256="0fbhcn10vvyg29sg5i39i004vks4in21br1gm8zhlx9sqmw7m0l0"; depends=[crayon ordinal]; };
+  serp = derive2 { name="serp"; version="0.2.4"; sha256="0hd25rxknj636ssy2289xjvq5fflp2p561yb9w0siqihfc7cfjpc"; depends=[crayon ordinal]; };
   serpstatr = derive2 { name="serpstatr"; version="0.1.0"; sha256="1myxw3dh3mkai803dnfdd1zyr2mjzsd2pw00l1fwmmbdplqg9q20"; depends=[httr]; };
   serrsBayes = derive2 { name="serrsBayes"; version="0.5-0"; sha256="1w8fs9k4zhy0hwkm30dvi360n28cl2gn9vdqaak64g0nlvb9jy1w"; depends=[Matrix Rcpp RcppEigen truncnorm]; };
   servosphereR = derive2 { name="servosphereR"; version="0.1.1"; sha256="0m1fjd3f1s2ss54xmcrm3p0c33hhi2dj0vim790g4y0mw2aicc8l"; depends=[data_table dplyr magrittr purrr rlang]; };
@@ -16392,12 +16460,12 @@ in with self; {
   set = derive2 { name="set"; version="1.2"; sha256="0f36dp9k0nxp1amsd7ybwgbv0vxvgd1kns7cbfsbsh0kljxyplzp"; depends=[do]; };
   set6 = derive2 { name="set6"; version="0.2.4"; sha256="06swz60p73a7m7rvsv1545hsr2chkk2w2hmnfwkwfz4hrbdxm709"; depends=[checkmate ooplah R6 Rcpp]; };
   setRNG = derive2 { name="setRNG"; version="2013.9-1"; sha256="02198cikj769yc32v8m2qrv5c01l2fxmx61l77m5ysm0hab3j6hs"; depends=[]; };
-  sets = derive2 { name="sets"; version="1.0-20"; sha256="1mkmqi3n1lh01k47yvkr0dlf4imqdi6d6bglx9bvrjmg816p4jr3"; depends=[]; };
+  sets = derive2 { name="sets"; version="1.0-21"; sha256="1h1a03b1850kh5hd3gxbspx2nxqxvk2gb0wm0s60b70qb6zg0csp"; depends=[]; };
   setter = derive2 { name="setter"; version="0.0-1"; sha256="10fwrx8yysp99rrkbnn3rbz79vyzr2h3p7zxxlqapw1k2lllp0r5"; depends=[assertive_base]; };
   settings = derive2 { name="settings"; version="0.2.7"; sha256="1i9ij5k8p2v9gxr48vas8hj337mbyx9c4ywv9bbdwkz6kzah46k5"; depends=[]; };
   sever = derive2 { name="sever"; version="0.0.7"; sha256="10jckf6q31blsl1yhs5f1mx7b8sm8sqb86iakcvaslf651ijx81m"; depends=[cli htmltools shiny]; };
   severity = derive2 { name="severity"; version="2.0"; sha256="1mp19y2pn7nl9m8xfljc515kk5dirv0r2kypazpmd956lcivziqq"; depends=[]; };
-  sf = derive2 { name="sf"; version="1.0-6"; sha256="1rmqip00nkfhda3i3a42q12k7xbsrz1p6fb2wynx5m9cxdgil33b"; depends=[classInt DBI magrittr Rcpp s2 units]; };
+  sf = derive2 { name="sf"; version="1.0-7"; sha256="0lsl4rh4lbv386hxlsnnwsjb5x1n9d3z0ckjmxakmmrqjjmiywyh"; depends=[classInt DBI magrittr Rcpp s2 units]; };
   sfa = derive2 { name="sfa"; version="1.0-1"; sha256="1acqxgydf8j5csdkx0yf169x3yaa31r0ccdrqarh6vj1hacm89ad"; depends=[]; };
   sfaR = derive2 { name="sfaR"; version="0.1.0"; sha256="1lgazgj6xfg0syspw6wzmd4xyczydhdgghpaf9kgrqvqfkaqcf8p"; depends=[dplyr emdbook fBasics Formula gsl marqLevAlg MASS maxLik moments nleqslv numDeriv primes qrng randtoolbox trustOptim ucminf]; };
   sfadv = derive2 { name="sfadv"; version="1.0.1"; sha256="1rfpm6km5pckwhqgpvidm6qsj5sjdaqqj5b0sgvpslivfa4c80cr"; depends=[gmm minpack_lm]; };
@@ -16406,8 +16474,9 @@ in with self; {
   sfcr = derive2 { name="sfcr"; version="0.2.1"; sha256="05ip1z6rh0k7az0y7nwp9c6rv1s53i0i698yfhx46lfnhzz87anf"; depends=[dplyr expm forcats igraph kableExtra magrittr purrr Rcpp RcppArmadillo Rdpack rlang rootSolve stringr tibble tidyr tidyselect vctrs]; };
   sfdct = derive2 { name="sfdct"; version="0.1.0"; sha256="0p3ipp6x8vnsi94078n098yk9wglnawvzh19imcgk2c1l5lazwgf"; depends=[dplyr RTriangle sf sp tibble]; };
   sfheaders = derive2 { name="sfheaders"; version="0.4.0"; sha256="0ig02nszrs6fkjkrkqibp23n4a8qr4i09yz7l741yjd0308ddg46"; depends=[geometries Rcpp]; };
+  sfhotspot = derive2 { name="sfhotspot"; version="0.2.0"; sha256="1fy0y3nshfi6951qfplmsnrhlw24hwapifqwrffigbk5cq7ls9d3"; depends=[rlang sf SpatialKDE spdep tibble]; };
   sfinx = derive2 { name="sfinx"; version="1.7.99"; sha256="14v47y00qwvc2s0vzjw19hwn85nzj8lna539c75qq6zkn6kir6va"; depends=[]; };
-  sfnetworks = derive2 { name="sfnetworks"; version="0.5.4"; sha256="15sxnwg62zwanl6rb1sl5a1l5gvhbvra6ildfi7wp87v99vpss4i"; depends=[crayon dplyr igraph lwgeom rlang sf sfheaders tibble tidygraph units]; };
+  sfnetworks = derive2 { name="sfnetworks"; version="0.5.5"; sha256="17lj828ds16v6splx84s8vykvinm3iz0whmx34cr08b7aadw0yqf"; depends=[crayon dplyr igraph lwgeom rlang sf sfheaders tibble tidygraph units]; };
   sfo = derive2 { name="sfo"; version="0.1.1"; sha256="0ja0kyrr6vqwk9fj1hq9bvfkak2vgav0hlqpgn4sa9h9j1s8r4js"; depends=[]; };
   sfsmisc = derive2 { name="sfsmisc"; version="1.1-12"; sha256="10h76pgzcxv1y5pkmba9607lvjrsyq62sq63s2n7ry7z5151h4lv"; depends=[]; };
   sft = derive2 { name="sft"; version="2.2-1"; sha256="0fxz64ba58n6ghfqsgq64n1c7qkvi8c3lsa86732mil9w71yxw33"; depends=[fda SuppDists]; };
@@ -16419,7 +16488,7 @@ in with self; {
   sgeostat = derive2 { name="sgeostat"; version="1.0-27"; sha256="1iq9p2jk8bpv1h853a1l91d5c5dxnhkk3cmkd01siqqvj04hv4vb"; depends=[]; };
   sglOptim = derive2 { name="sglOptim"; version="1.3.8"; sha256="15bkkvgp9v9vsp65wps48g3c2fa0fj1025hbrziywq14j7wayyjr"; depends=[BH doParallel foreach Matrix Rcpp RcppArmadillo RcppProgress]; };
   sglasso = derive2 { name="sglasso"; version="1.2.4"; sha256="0sdarn39857405ndmqyka5ksvwczb5ifl5aap96wpm625iz2a1pi"; depends=[igraph Matrix]; };
-  sglg = derive2 { name="sglg"; version="0.2.0"; sha256="0xhqilg1adn0758fypbbblxxc2fgf2g5j47003y3zc7v79hp93rz"; depends=[AdequacyModel Formula ggplot2 gridExtra moments plot3D pracma progress Rcpp survival TeachingSampling]; };
+  sglg = derive2 { name="sglg"; version="0.2.1"; sha256="1smvzlbcn7gjfb2jnzqdhda607f88kh14wapidc3vhz4l0wnn9xs"; depends=[AdequacyModel Formula ggplot2 gridExtra magrittr moments plot3D plotly pracma progress Rcpp survival TeachingSampling]; };
   sglr = derive2 { name="sglr"; version="0.7"; sha256="11gjbvq51xq7xbmpziyzwqfzf4avyxj2wpiz0kp4vfdj3v7p4fp9"; depends=[ggplot2 shiny]; };
   sgmcmc = derive2 { name="sgmcmc"; version="0.2.5"; sha256="0lq79c7i6bklh8c63wx3k6h9mk8s1abbr0hc41drcm96bbbg0aal"; depends=[reticulate tensorflow]; };
   sgmodel = derive2 { name="sgmodel"; version="0.1.1"; sha256="1i13vp91i8s61ylsyg0iij1sfclwif7v91slr2srl8ddz6lm23nx"; depends=[ggplot2 ramify Rtauchen]; };
@@ -16440,7 +16509,7 @@ in with self; {
   shapes = derive2 { name="shapes"; version="1.2.6"; sha256="1p9fr95zk3q2v277c5ksb0nh26mcpzwjzjb2lmag51z6hck8cb66"; depends=[MASS minpack_lm rgl scatterplot3d]; };
   shapper = derive2 { name="shapper"; version="0.1.3"; sha256="1jaj9j894md45611gdrz05n0kfakawf7vlcc3zxhwdh3f7kwz4lp"; depends=[DALEX ggplot2 reticulate]; };
   shapr = derive2 { name="shapr"; version="0.2.0"; sha256="1zzg58m38rkqsynczy5jwz97ph3s85aa975ffi4i5vml82zlhc4y"; depends=[condMVNorm data_table Matrix mvnfast Rcpp RcppArmadillo]; };
-  shar = derive2 { name="shar"; version="1.3.1"; sha256="10h8qk1syflz9grzzdkbxjl9ym22yimva14xx0m1xcbi20nd6a05"; depends=[classInt raster spatstat_core spatstat_geom]; };
+  shar = derive2 { name="shar"; version="1.3.2"; sha256="1fks9gpm01q5phicgv1znl2d7j63w3m0w63xd1a38qypvqd9gqxp"; depends=[classInt raster spatstat_core spatstat_geom spatstat_random]; };
   sharpData = derive2 { name="sharpData"; version="1.4"; sha256="1pnza52wqczjds4vp2fy9ky41y7lyj9ywam11nsr0mpv63jglnc5"; depends=[KernSmooth quadprog]; };
   sharpPen = derive2 { name="sharpPen"; version="1.7"; sha256="1nhmxfyrzmm6qgwrlfc046lm9n8n5r62ym44956zg2z1m2vhnysf"; depends=[glmnet KernSmooth MASS Matrix np]; };
   sharpeRratio = derive2 { name="sharpeRratio"; version="1.4.2"; sha256="1l0ix779kzci647v4irxs0j83zwfchd51k8576ivis7cr5f1a9v6"; depends=[ghyp Rcpp]; };
@@ -16471,7 +16540,7 @@ in with self; {
   shinyEffects = derive2 { name="shinyEffects"; version="0.2.0"; sha256="1ajar09hmrk7vcw89wkgvkz2yl0cfnkz915b57w1lmbvpxzgsq3i"; depends=[htmltools shiny]; };
   shinyFeedback = derive2 { name="shinyFeedback"; version="0.4.0"; sha256="1xfznq2d4wkk0b0y4k25rwg4d3bhn3gxlkf3chfqk44f4rgril11"; depends=[fontawesome htmltools jsonlite shiny]; };
   shinyFiles = derive2 { name="shinyFiles"; version="0.9.1"; sha256="0f8dfdiar376lx0979ccyghgx5rhr08v5z3z60asrrjsxlq4cs85"; depends=[fs htmltools jsonlite shiny tibble]; };
-  shinyGovstyle = derive2 { name="shinyGovstyle"; version="0.0.7"; sha256="08lslxzmlzyrphaf0i3pqj21q2iqqskmlr7dnhm4yrfvm6jllglz"; depends=[htmltools jsonlite shiny shinyjs]; };
+  shinyGovstyle = derive2 { name="shinyGovstyle"; version="0.0.8"; sha256="1czyz51k0xm62b9bzcsygslm2nd3fnmll4wjxwimlngy00rnjnng"; depends=[htmltools jsonlite shiny shinyjs]; };
   shinyHeatmaply = derive2 { name="shinyHeatmaply"; version="0.2.0"; sha256="1n7c7dvvb9kqay2phcf0bkwi990x1cjl7js6pq05xx7rli5bc5h4"; depends=[dplyr heatmaply htmltools plotly readxl rmarkdown shiny xtable]; };
   shinyIRT = derive2 { name="shinyIRT"; version="0.1"; sha256="01x7nhjs1dx2ldwznhbavc5vzqhgkn73xg395vlf2hgzbxa2ydvj"; depends=[irtoys magrittr mirt psych readxl shiny shinycssloaders shinydashboard]; };
   shinyKGode = derive2 { name="shinyKGode"; version="1.0.5"; sha256="004zwz4kqfijzvvwkq8v1gi25w1wrdlg8230g93w36gbi6cl2vk1"; depends=[ggplot2 gridExtra KGode mvtnorm pracma pspline reshape2 shiny shinyjs XML]; };
@@ -16501,7 +16570,7 @@ in with self; {
   shinyauthr = derive2 { name="shinyauthr"; version="1.0.0"; sha256="0apaqjkxpr96kx9indl0pifk5y75gdx5npfcvxfg5k2crpx9vmxk"; depends=[dplyr glue rlang shiny shinyjs sodium]; };
   shinybootstrap2 = derive2 { name="shinybootstrap2"; version="0.2.1"; sha256="17634l3swlvgj1sv56nvrpgd6rqv7y7qjq0gygljbrgpwmfj198c"; depends=[htmltools jsonlite shiny]; };
   shinybrms = derive2 { name="shinybrms"; version="1.6.0"; sha256="0dbj0sl65sgg293knrarj7rc5fc8xvhdh601b2srs0zqp6vjzhbn"; depends=[brms rlang rstan shiny]; };
-  shinybusy = derive2 { name="shinybusy"; version="0.2.2"; sha256="06vfkv382xcpjh30i7d4ym4vyravadp5vjsvrnw4npy0302pdmzl"; depends=[htmltools htmlwidgets jsonlite shiny]; };
+  shinybusy = derive2 { name="shinybusy"; version="0.3.0"; sha256="07cx7g55sq36i2fpnf2fz6d4a4dqys00j8fbkfj9kg61gfban5s3"; depends=[htmltools htmlwidgets jsonlite shiny]; };
   shinycssloaders = derive2 { name="shinycssloaders"; version="1.0.0"; sha256="0r3xm273lhdhzbs2mkgw1m2kwb7z1dh1pzya8yxy5vacda1l2ikl"; depends=[digest glue shiny]; };
   shinycustomloader = derive2 { name="shinycustomloader"; version="0.9.0"; sha256="1klx71vr26g0gjf6hbiia1qidqii5d467i1sdjvlrg1hxdcggqff"; depends=[glue shiny]; };
   shinydashboard = derive2 { name="shinydashboard"; version="0.7.2"; sha256="0hrqkwlpb8rnmp5j74p134g4c4cl16icmwc2ip6k1634fa2y8vm5"; depends=[htmltools promises shiny]; };
@@ -16532,23 +16601,24 @@ in with self; {
   shinyreforms = derive2 { name="shinyreforms"; version="0.0.1"; sha256="1g1blc57c6zkca0m52bqkw8jwgpplabns07x1cwkk46dmv6sgqci"; depends=[htmltools R6 shiny]; };
   shinyscreenshot = derive2 { name="shinyscreenshot"; version="0.2.0"; sha256="01vm2wc0r3j20hj65q9f0wgffj7r5q2cg5p5mywh1p2rkslgikk3"; depends=[base64enc jsonlite shiny uuid]; };
   shinyservicebot = derive2 { name="shinyservicebot"; version="0.1.0"; sha256="18xbggiai6ssyl3q0nqhnszxb7zlbffaw0iy3r7vbzswzqx522la"; depends=[digest htmltools htmlwidgets shiny]; };
-  shinystan = derive2 { name="shinystan"; version="2.5.0"; sha256="18alf5kiqw7y2l6m5nxxizwc2znsf9frxfsqhvgcad8hld9cbya5"; depends=[bayesplot colourpicker DT dygraphs ggplot2 gridExtra gtools markdown reshape2 rsconnect rstan shiny shinyjs shinythemes threejs xtable xts]; };
+  shinystan = derive2 { name="shinystan"; version="2.6.0"; sha256="0afm703zriyqprz1zvypir80lq2ylfff3qvj5i7p9n365mm8b150"; depends=[bayesplot colourpicker DT dygraphs ggplot2 gridExtra gtools markdown reshape2 rstan shiny shinyjs shinythemes threejs xtable xts]; };
   shinysurveys = derive2 { name="shinysurveys"; version="0.2.0"; sha256="01bj0g8r71jng03psw9dcjann78divy2xr5yn6y1pa82d96s46b5"; depends=[htmltools jsonlite sass shiny]; };
   shinytest = derive2 { name="shinytest"; version="1.5.1"; sha256="0pjcdkyv1f94fxzpbc9m02kdv8v6jh6dmxsc1kmr22qcj1cbql8s"; depends=[assertthat callr crayon debugme digest htmlwidgets httpuv httr jsonlite parsedate pingr R6 rematch rlang rstudioapi shiny testthat webdriver withr]; };
   shinythemes = derive2 { name="shinythemes"; version="1.2.0"; sha256="0qr9bfxw8afxns44i2j4msignf6g5qb2nzpay2lpv343rrlqbmip"; depends=[shiny]; };
   shinytitle = derive2 { name="shinytitle"; version="0.1.0"; sha256="1k05s2fmqvz3drnqkxcpxvvmn0sisdqivg7i4x5c6649b97rsbsx"; depends=[shiny]; };
   shinytoastr = derive2 { name="shinytoastr"; version="2.1.1"; sha256="01j2z4gf1wxblrjayykwxdr2s8394i7k930x8g4hmrj7c9pv264n"; depends=[shiny]; };
   shinyvalidate = derive2 { name="shinyvalidate"; version="0.1.1"; sha256="04sl1z8i3d2pndxzylc80m435jwjik2yl5g82gaylhz7kj3fqxn4"; depends=[glue htmltools rlang shiny]; };
-  shipunov = derive2 { name="shipunov"; version="1.16"; sha256="15960ngphpnljp8nvxcwrvfibs5pj7yygxbd5zlj9nkyaifl8ngs"; depends=[PBSmapping]; };
+  shipunov = derive2 { name="shipunov"; version="1.17"; sha256="15gakqapgi9yl9i31nqw1h6p89qphmlyn9dfhmf2ps3ki4ijq44k"; depends=[PBSmapping]; };
   shock = derive2 { name="shock"; version="1.0"; sha256="11m52al591xjznl62q1waxsg5m1a1afmd0yqcc5zsjlrplykg4lp"; depends=[capushe GGMselect glasso igraph mvtnorm]; };
   shopifyr = derive2 { name="shopifyr"; version="1.0.0"; sha256="05hih1v5vvr7vmwarizsdx8517g74s96fdsz3klcz3g12idx1nqn"; depends=[curl jsonlite R6]; };
   shortcuts = derive2 { name="shortcuts"; version="1.4.0"; sha256="0y77napfz1v3s667cmyn8357xg5lncbw1hc3hm5kra6nalhq1jps"; depends=[rstudioapi]; };
   shorts = derive2 { name="shorts"; version="1.1.6"; sha256="1krjyi9xd7gys5259kf3q2paqwvyhqzici0qbi98754vlbnq53sq"; depends=[ggplot2 LambertW nlme tidyr]; };
   shotGroups = derive2 { name="shotGroups"; version="0.8.1"; sha256="17lmdyimz4wsv284520qwb3f2ah7lg2w22rqswkqg0c46sy46gzm"; depends=[boot coin CompQuadForm KernSmooth robustbase]; };
   showimage = derive2 { name="showimage"; version="1.0.0"; sha256="1c0x3iqjdjsz3cdhc02b3qm2pwxjr1q2k87jwvxj9lnzzw81f1pl"; depends=[png]; };
-  showtext = derive2 { name="showtext"; version="0.9-4"; sha256="1gvj32wrs5q31bmg5dy6n85d0igm3jhkldhdv8kscw0pfrk89y36"; depends=[showtextdb sysfonts]; };
+  showtext = derive2 { name="showtext"; version="0.9-5"; sha256="1larnqxn9nanbqiadm35ah5hh89xrzm4fdj9pfc93zzzhlfrvhb3"; depends=[showtextdb sysfonts]; };
   showtextdb = derive2 { name="showtextdb"; version="3.0"; sha256="0hlnc3fhgrdkd46n7hb6id0gg1v0bf8s4679nrr7rchyp455szq2"; depends=[sysfonts]; };
   shp2graph = derive2 { name="shp2graph"; version="0-5"; sha256="1l9mg98hkb0bvr5dzd2p26g8mw5hqjxrym2gmbm10kyapvccfk56"; depends=[igraph maptools sp]; };
+  shrink = derive2 { name="shrink"; version="1.2.2"; sha256="0d80a0qqrsb9ybzqvg3m6a9r16ky7hqchq0hjvj8ipk430mmxdjm"; depends=[MASS mfp rms survival]; };
   shrinkDSM = derive2 { name="shrinkDSM"; version="0.1.0"; sha256="01yvs1shsp7npfm9w1caprb1x8w42zlzswc2fk9y6q340i51kfzm"; depends=[coda Rcpp RcppArmadillo RcppProgress shrinkTVP stochvol]; };
   shrinkTVP = derive2 { name="shrinkTVP"; version="2.0.5"; sha256="1qzk53l6n3a58ypqdisf2cj1nvgri2fvy0nz72wpvqnfsj3xcswz"; depends=[coda GIGrvg Rcpp RcppArmadillo RcppProgress stochvol zoo]; };
   shuffle = derive2 { name="shuffle"; version="1.0.1"; sha256="0aqb11h340picx7z2jg3k46l3pr6fkknlpyzc0z89hhrc90pss48"; depends=[]; };
@@ -16568,7 +16638,6 @@ in with self; {
   sift = derive2 { name="sift"; version="0.1.0"; sha256="030vv2rha5d20045bwsp6ihdcgiw9glnchyahpzwym3m6fnkg0y5"; depends=[cpp11 dplyr glue pastecs purrr rlang tibble tidyr tidyselect]; };
   sig = derive2 { name="sig"; version="0.0-5"; sha256="084wwpj5mnmq4k98ijbv23z80sj4axadc7c6hn3917dazsaa6ngn"; depends=[]; };
   sigInt = derive2 { name="sigInt"; version="0.2.0"; sha256="1y3qbfsynssam05q4947zqd0dkrpcnq5pla409i3xy511wv9702d"; depends=[Formula MASS maxLik pbivnorm randomForest stringr xtable]; };
-  sigQC = derive2 { name="sigQC"; version="0.1.22"; sha256="17b16mjadmsbqbai90bvryydkfy9k5ww9i65a5ahy3bfjch851f2"; depends=[biclust circlize class cluster ComplexHeatmap fmsb gplots gridGraphics GSVA KernSmooth lattice MASS mclust moments nnet RankProd]; };
   sigclust = derive2 { name="sigclust"; version="1.1.0"; sha256="0151v7lr4n4yyn93j0s06gzc9jh9xhdgvfw6kvpfy24jl6wdii7g"; depends=[]; };
   sigmaNet = derive2 { name="sigmaNet"; version="1.1.0"; sha256="1i0xikwad9kiyrqxi1klkc4h4hyqfkxr388sw4mrx9pswfpbv3xr"; depends=[htmlwidgets igraph jsonlite RColorBrewer]; };
   sigmajs = derive2 { name="sigmajs"; version="0.1.5"; sha256="1d26llpgnj687b8rwgbyhw88zakp334n4a9gabf72qwrg4awm1v5"; depends=[crosstalk dplyr htmltools htmlwidgets igraph jsonlite magrittr purrr scales shiny]; };
@@ -16578,7 +16647,7 @@ in with self; {
   signalHsmm = derive2 { name="signalHsmm"; version="1.5"; sha256="1d4v6cbvcbi8pb5zmn58s01h3jb0kv7yr7qvcnx4p2v82knvhik7"; depends=[Rcpp seqinr shiny]; };
   signed_backbones = derive2 { name="signed.backbones"; version="0.91.5"; sha256="0xk8sncblzihqzqfpaq7158slvrb6ww3dc4v5di1m2bqwhykncwi"; depends=[reshape2]; };
   signmedian_test = derive2 { name="signmedian.test"; version="1.5.1"; sha256="05n7a4h2bibv2r64cqschzhjnm204m2lm1yrwxvx17cwdp847hkm"; depends=[]; };
-  signnet = derive2 { name="signnet"; version="0.7.1"; sha256="06mzscjaay0wib8mmnbcacj8zy84nx9p00i8gcpr4nklxfarib3w"; depends=[igraph Matrix Rcpp RcppArmadillo]; };
+  signnet = derive2 { name="signnet"; version="0.8.0"; sha256="0iymm9crvppb7yrp163y5i605bl1mdw7bxzgr5s4zflhzf1njv4s"; depends=[igraph Matrix Rcpp RcppArmadillo]; };
   signs = derive2 { name="signs"; version="0.1.2"; sha256="0dzf5pydvs93rvj6idw9l2asv1bxwz20df7qis2db84hfww2kc6m"; depends=[rlang scales]; };
   sigora = derive2 { name="sigora"; version="3.1.1"; sha256="11abbvynyhbb7y7zndbkivb13yxj8l86nrn361mfv495g1d3ba8s"; depends=[slam]; };
   sigr = derive2 { name="sigr"; version="1.1.4"; sha256="1gx1dmdi8wjqlhp7a9cp915z0n5hl9xsv2hwzdmk0ijbjgipn7fh"; depends=[wrapr]; };
@@ -16621,6 +16690,7 @@ in with self; {
   simml = derive2 { name="simml"; version="0.3.0"; sha256="18qrpxf4fsqirfxj4ldkmdyc6zp2px2bcad9j50ihb3r2a33ny3x"; depends=[mgcv]; };
   simmr = derive2 { name="simmr"; version="0.4.5"; sha256="0kv3ip0yq3r2a9dglx0pkjvg5bkf9fg2x051dp6z0ld1c0f4p6ms"; depends=[bayesplot boot checkmate compositions ggplot2 MASS R2jags reshape2 viridis]; };
   simode = derive2 { name="simode"; version="1.2.0"; sha256="0wlnd01xfdqvjfvmkhkj6nvkrnv5ghjv4md5nhaqsjc8bycawyl0"; depends=[deSolve pracma quadprog]; };
+  simphony = derive2 { name="simphony"; version="1.0.0"; sha256="1r95wk526bc1frvcb11zx7hx3lrjvqw5wcwcv0j8mi4ylhhw9w9d"; depends=[data_table foreach]; };
   simpleCache = derive2 { name="simpleCache"; version="0.4.2"; sha256="0zayq4n8cc0xgszckjvvf55ygy8hwywv161pp8pqi2k4z91rq4lz"; depends=[]; };
   simpleFDR = derive2 { name="simpleFDR"; version="1.1"; sha256="09w7l8pb6kibzifwyqcgshlxjq2gn6s642i78939q00q0m9qvdbk"; depends=[dplyr tidyr]; };
   simpleMH = derive2 { name="simpleMH"; version="0.1.0"; sha256="02arll0w39b4cz7gslka26lvjg90xy83kqiyvm4gxnsbw7s9hkyr"; depends=[mvtnorm]; };
@@ -16634,12 +16704,12 @@ in with self; {
   simplegraph = derive2 { name="simplegraph"; version="1.0.0"; sha256="1gcpbljp1fgaprxnmq23izf1h2x3p5dnxlylwqsnlcj50bvm46gq"; depends=[]; };
   simplegraphdb = derive2 { name="simplegraphdb"; version="2021.03.10"; sha256="0573hrv23nimmf3d8dgdynii79h84a3mfr4xxk3cggxhsxpfmb2i"; depends=[DBI rjson RSQLite]; };
   simplermarkdown = derive2 { name="simplermarkdown"; version="0.0.4"; sha256="069pgx5m22rdqa21lyn5zqm9ym3g7w6z1d2wjwms8b1f2cp6266g"; depends=[rjson]; };
-  simplevis = derive2 { name="simplevis"; version="6.0.0"; sha256="09bhqql0a6dqzd9i2ay6f6fkk1rg266dvxnfj31v35rziq32550f"; depends=[dplyr forcats ggplot2 htmlwidgets leafem leaflet leafpop lifecycle lubridate magrittr plotly purrr rlang scales sf shiny snakecase stars stringr tidyr tidyselect viridis]; };
+  simplevis = derive2 { name="simplevis"; version="6.2.0"; sha256="1w4ahwr7d8s2cfc3n8s8sqkk2gwnwzanqlx03csjbip7kq2lc5qa"; depends=[dplyr forcats ggplot2 htmlwidgets kimisc leafem leaflet leafpop lubridate magrittr plotly purrr rlang scales sf shiny snakecase stars stringr tidyr tidyselect viridis]; };
   simplexreg = derive2 { name="simplexreg"; version="1.3"; sha256="1zkh00xbddhgz0qn0a5pj12n0hpx4f5kihpfj71x92pmxpzglcxh"; depends=[Formula plotrix]; };
   simplextree = derive2 { name="simplextree"; version="1.0.1"; sha256="18jvzcz4fdsi17j7qdqpjvx6zygvlcvpziikb8qxskaib5180l08"; depends=[magrittr Rcpp]; };
-  simpr = derive2 { name="simpr"; version="0.2.1"; sha256="070ps8sydj3pj738mfjs25bwb4lqgwmq6sm78lgv9w6v9p0jwbx1"; depends=[broom dplyr furrr generics magrittr purrr rlang tibble tidyr tidyselect]; };
+  simpr = derive2 { name="simpr"; version="0.2.2"; sha256="19gc6fxjw4fxz9swf27qf2z5d2mwgcdcg2dyfyvvx3rkzn51bwia"; depends=[broom dplyr furrr generics magrittr purrr rlang tibble tidyr tidyselect]; };
   simputation = derive2 { name="simputation"; version="0.2.7"; sha256="0jw0j57pgg06ix7yr01bbv314w2dh08idjvsa46s02xkqn37cb7q"; depends=[gower MASS rpart]; };
-  simr = derive2 { name="simr"; version="1.0.5"; sha256="1j5w93iliykfnpxl9kzh1rp6d3iy26ksj3j7yjl348yvplh0iyjl"; depends=[binom car iterators lme4 pbkrtest plotrix plyr RLRsim stringr]; };
+  simr = derive2 { name="simr"; version="1.0.6"; sha256="1q8ip54c5pc7pjf8127jpk56nr3f8rmwqdcrr84faj4lfbr27wqb"; depends=[binom car iterators lme4 lmerTest pbkrtest plotrix plyr RLRsim stringr]; };
   simrec = derive2 { name="simrec"; version="1.0.0"; sha256="17zzbzgdisp5qh0vlbmkjf6a3axnpwj2kw03wymfbb3z557pbxlr"; depends=[]; };
   simrel = derive2 { name="simrel"; version="2.1.0"; sha256="1knn8kw9m232agm4b3b0fc132frv5i7k8gxvmrcb1pnz62gsmg04"; depends=[FrF2 ggplot2 gridExtra jsonlite magrittr miniUI purrr reshape2 rlang rstudioapi scales sfsmisc shiny testthat tibble tidyr]; };
   sims = derive2 { name="sims"; version="0.0.3"; sha256="0wsq8plbrmk4xrs8i3g3pqwp2xkhfh1pffva1bwyx44l1r5imzs2"; depends=[chk future_apply nlist yesno]; };
@@ -16662,9 +16732,10 @@ in with self; {
   singcar = derive2 { name="singcar"; version="0.1.3"; sha256="17f80cqkgcyvmaavpqia9z54h3yf5as3v294fsc09l3zshzvbzg6"; depends=[CholWishart MASS withr]; };
   singleCellHaystack = derive2 { name="singleCellHaystack"; version="0.3.4"; sha256="08s31z15v4px3sfm2q2ips64qknahw04xhh6d5nmlsl65wbd143x"; depends=[ggplot2 Matrix reshape2]; };
   sinib = derive2 { name="sinib"; version="1.0.0"; sha256="08x2a5hn41vcsai3r36w1kgzka4ks53pkp6dxn90bsqh40ydb0db"; depends=[]; };
-  siplab = derive2 { name="siplab"; version="1.5"; sha256="1gfncsqgwj7ljm7cik6kmcqynzppqlqlq1f9qpmvzfpf6fd1ccxp"; depends=[spatstat]; };
+  siplab = derive2 { name="siplab"; version="1.6"; sha256="149crdvw7sz7p4sz58n1ryvv3l0pm57wbvfd93xnljw7hwwq1dvk"; depends=[spatstat spatstat_geom]; };
   siqr = derive2 { name="siqr"; version="0.8.1"; sha256="0yyb4abd7lghsb1qrw61zvbll3hs4dsldkvs3syrabwhxady8w43"; depends=[KernSmooth quantreg]; };
   sirad = derive2 { name="sirad"; version="2.3-3"; sha256="0vhmk2fmq4797gj6c8803zw1ipmdxfvdfgi2bygzxbn5bqd4da2n"; depends=[raster zoo]; };
+  siren = derive2 { name="siren"; version="1.0.1"; sha256="03hwrf40wp6jn6y6s3q0hgv4hnndrck2qb94c4jqj6lcwn673h9f"; depends=[EFA_MRFA lavaan psych]; };
   sirt = derive2 { name="sirt"; version="3.11-21"; sha256="06lazl1navs7cpm4ql19y00h4m8yijf2mrjpvr4rsh16b157rssb"; depends=[CDM pbv Rcpp RcppArmadillo TAM]; };
   sirus = derive2 { name="sirus"; version="0.3.2"; sha256="1j821vxy81x12yv229k334s8cwjl5fla2wvlhdz01rf688sv0hbs"; depends=[ggplot2 glmnet Matrix Rcpp RcppEigen ROCR]; };
   sisVIVE = derive2 { name="sisVIVE"; version="1.4"; sha256="1vh53irxgk8ahw52cdqbbm89dvmzyf54izg4lm8a3v92k5p6nzwz"; depends=[lars]; };
@@ -16688,11 +16759,12 @@ in with self; {
   sjstats = derive2 { name="sjstats"; version="0.18.1"; sha256="1cv80yjnyh6qihxf57zivihhia20gibr5f03x8aspy6382wnwlka"; depends=[bayestestR broom dplyr effectsize emmeans insight lme4 magrittr MASS modelr parameters performance purrr rlang sjlabelled sjmisc tidyr]; };
   skater = derive2 { name="skater"; version="0.1.1"; sha256="0cylcwxqc75a7fkyn7llwp0c7k35sfsbylxrjn0cpdnxbyf5xcx5"; depends=[corrr dplyr kinship2 magrittr purrr readr rlang tibble tidyr]; };
   skda = derive2 { name="skda"; version="0.1"; sha256="0a6mksr1d0j3pd0kz4jb6yh466gvl4fkrvgvnlmvivpv6b2gqs3q"; depends=[]; };
-  skedastic = derive2 { name="skedastic"; version="1.0.3"; sha256="0f6pq5mj3mbam13283z4zyw7zgkvsld5y7ak0ahby9gb0na1zyhm"; depends=[arrangements bazar berryFunctions boot broom CompQuadForm cubature data_table expm gmp Hmisc MASS mvtnorm pracma quantreg Rdpack Rmpfr]; };
+  skedastic = derive2 { name="skedastic"; version="1.0.4"; sha256="07i9sgqc96h9ih8r1n9fvryyw8znpap1bpmvbm62sm3qcj7m856p"; depends=[arrangements bazar boot broom CompQuadForm cubature data_table expm gmp MASS mvtnorm pracma quantreg Rdpack Rmpfr]; };
   skeletor = derive2 { name="skeletor"; version="1.0.4"; sha256="1jfbfbkjx8mdwamsrkhvcnyn470in702vgcyw3g2dbgs84gl29q8"; depends=[]; };
   skellam = derive2 { name="skellam"; version="0.2.0"; sha256="0r5wbs5h7xc3k2vjxd4axwnxr9cmwm008fcyj1vyixkg8fa680gx"; depends=[]; };
   sketch = derive2 { name="sketch"; version="1.1.17"; sha256="17lb4fnlwvdxgsm8iipcx4v6fn1vkf5wr9zwmm6m4p770651z116"; depends=[base64enc glue htmltools jsonlite magrittr purrr rlang rstudioapi shiny]; };
   sketcher = derive2 { name="sketcher"; version="0.1.3"; sha256="011lx15whrdj5q5h33h9brkzbn2fnpm1nx9ip1v9xl5xfkbj7952"; depends=[downloader dplyr imager jpeg magrittr png readbitmap stringr]; };
+  sketchy = derive2 { name="sketchy"; version="1.0.2"; sha256="0nvf87w3zcnly4b39rg8pa1651pk8zixkn6rj7y2hbf1qiyjwsqg"; depends=[crayon git2r knitr packrat stringi]; };
   skewMLRM = derive2 { name="skewMLRM"; version="1.6"; sha256="16gr0haag0pqw7k7nvfqlc6s5i92lkpd0ghkgvlwgql8jzw7zmlk"; depends=[clusterGeneration doParallel foreach MASS matrixcalc moments mvtnorm]; };
   skewlmm = derive2 { name="skewlmm"; version="1.0.0"; sha256="1z7rz520vmjqmnak2zgxnnj7yhg7k2phclx3ilvkwzn9v8pd224j"; depends=[dplyr furrr future ggplot2 ggrepel haven moments mvtnorm nlme numDeriv optimParallel purrr]; };
   skewsamp = derive2 { name="skewsamp"; version="1.0.0"; sha256="1b41zjjnn7vphcrbvrvqx66jfd9fb8v22xmgql6wh26a2y81bman"; depends=[]; };
@@ -16779,7 +16851,7 @@ in with self; {
   smss = derive2 { name="smss"; version="1.0-2"; sha256="04lgfdcvnzpnpplyl62fy7slyiy8wkqpjjrzmclgqis3c9zkkncp"; depends=[]; };
   smurf = derive2 { name="smurf"; version="1.1.2"; sha256="00q54pg42anilhcshhjvv277mkszbpzpkf1g7srs7cjd5skjvsaf"; depends=[catdata glmnet MASS Matrix mgcv RColorBrewer Rcpp RcppArmadillo speedglm]; };
   smvgraph = derive2 { name="smvgraph"; version="0.1.2"; sha256="06pvnrhd3q913nxhk1icj11xkd1is3qi31b0kv6zbc0qkixn1ym7"; depends=[DescTools fmsb MASS shiny shinydashboard sortable]; };
-  sn = derive2 { name="sn"; version="2.0.1"; sha256="1z58kwvq8igjm3biyyjdlhs2qq8hfjq5d9x0lzy80yk5hw08kcw6"; depends=[mnormt numDeriv quantreg]; };
+  sn = derive2 { name="sn"; version="2.0.2"; sha256="140p1pl5sq0laxhcm16kbqm986hlhqj90gj3jccga491gh14jywm"; depends=[mnormt numDeriv quantreg]; };
   sna = derive2 { name="sna"; version="2.6"; sha256="0ai0v4538d30m4wks5s3lch1yfmx1ml0nnrz7ihs097lv586a09s"; depends=[network statnet_common]; };
   snahelper = derive2 { name="snahelper"; version="1.4.0"; sha256="1anfjlp8yqqvw53nyqd96zlvh1pjm9z2yqkrfgmlbhs4m273x9bl"; depends=[colourpicker DT formatR ggplot2 ggraph graphlayouts igraph miniUI rstudioapi shiny]; };
   snakecase = derive2 { name="snakecase"; version="0.11.0"; sha256="1ky1x2cp5rd0ffd9m1fji9sq4z4jsrpxzg30brw8bb4ihfjj114r"; depends=[stringi stringr]; };
@@ -16854,10 +16926,10 @@ in with self; {
   sotkanet = derive2 { name="sotkanet"; version="0.9.79"; sha256="1d6g09rf7irk3d8hkm6ahp8zl6lj24jnipwvzr0njx2sqi3fwd4f"; depends=[curl httr jsonlite]; };
   sotu = derive2 { name="sotu"; version="1.0.2"; sha256="0aqwkawaydsm91hz13msjg1a5llg7xmv6hxmfmsaganrl7iaym3c"; depends=[]; };
   sound = derive2 { name="sound"; version="1.4.5"; sha256="1kbbb614d0fmj9l0yjiwf5yqnl7sby4xklp7qwp6rwjvq9bnm0ab"; depends=[]; };
-  soundClass = derive2 { name="soundClass"; version="0.0.9"; sha256="1bcjh07pwjg6jdhzjhn0v4mc96dyhyf31rlg2ngr77lwsrfzdnz0"; depends=[DBI dbplyr dplyr generics htmltools keras magrittr RSQLite seewave shiny shinyBS shinyFiles shinyjs signal tuneR zoo]; };
+  soundClass = derive2 { name="soundClass"; version="0.0.9.1"; sha256="1hjqp8pvi063wwimxvzwpzqkc175smlfcsn6z7iana25gypx0jip"; depends=[DBI dbplyr dplyr generics htmltools keras magrittr RSQLite seewave shiny shinyBS shinyFiles shinyjs signal tuneR zoo]; };
   soundcorrs = derive2 { name="soundcorrs"; version="0.4.0"; sha256="1azvsv3bghlab8q24wbb6xwd5a4cydx1cagvhk8h0h5ib9957zab"; depends=[]; };
   soundecology = derive2 { name="soundecology"; version="1.3.3"; sha256="16h6gbdlyav7wbfisdv1f2zsqhr45liidgj7qqk8giwjxgan8q97"; depends=[ineq oce pracma seewave tuneR vegan]; };
-  soundgen = derive2 { name="soundgen"; version="2.5.0"; sha256="0shvrz37l65ka8yxqzynanz33wmiiagglnvgqy4ihs6x8yxx10qs"; depends=[doParallel dtw foreach mvtnorm phonTools reshape2 seewave shiny shinyBS shinyjs signal tuneR zoo]; };
+  soundgen = derive2 { name="soundgen"; version="2.5.1"; sha256="1wzqlc1gnknpyixy0dv6nzgghqc1i2xd2bd688pfmfnqgmr2cm3r"; depends=[doParallel dtw foreach mvtnorm phonTools reshape2 seewave shiny shinyBS shinyjs signal tuneR zoo]; };
   sourceR = derive2 { name="sourceR"; version="1.1.0"; sha256="09mikl6rkigx2bdnwqsgxwksz40lspq27hsrhlnfyz5yhs31ssda"; depends=[assertthat cluster dplyr gplots gtools R6 Rcpp reshape2 SPIn tensorA]; };
   sourcetools = derive2 { name="sourcetools"; version="0.1.7"; sha256="1jnjir0q2dj724f1mjm6p5h77yzyx6xcqy9r2g7gmcxkxw349627"; depends=[]; };
   sovereign = derive2 { name="sovereign"; version="1.2.1"; sha256="1v5cchwia8v9h4fpb506v6nikp5k042axmryjmqrgimaly8dk9nv"; depends=[broom dplyr furrr future ggplot2 gridExtra lmtest lubridate magrittr mclust purrr randomForest sandwich stringr strucchange tidyr xts zoo]; };
@@ -16877,6 +16949,7 @@ in with self; {
   spNNGP = derive2 { name="spNNGP"; version="0.1.6"; sha256="12ys92r2xpmnhy6hw8sldcz0y28gnxpwnj6sm5jc1lfyz7k1ww6f"; depends=[coda Formula RANN]; };
   spNetwork = derive2 { name="spNetwork"; version="0.2.1"; sha256="0hmg68v5a7d1ixwj9nvh7kd948r7kspar6nd3yp02mgj495ps1z8"; depends=[BH cubature data_table future_apply ggplot2 igraph maptools progressr raster Rcpp RcppArmadillo RcppProgress Rdpack rgeos SearchTrees sp spdep]; };
   spOccupancy = derive2 { name="spOccupancy"; version="0.2.1"; sha256="12fpi7ijk1qlhdq280r352aqlymmkis1nbfjbqqr9kkrl141zi56"; depends=[abind coda doParallel foreach lme4 RANN spBayes]; };
+  spRingsteen = derive2 { name="spRingsteen"; version="0.0.1"; sha256="0dhrwnns06jqzqbc5mc7bjgs98xkcq591nm6scayxm34mqs3k47m"; depends=[]; };
   spTDyn = derive2 { name="spTDyn"; version="2.0.1"; sha256="1wprn2adw4l5pkwkfzdpcr07jxgycx9kaf8w8mfv27nka5hacgqx"; depends=[coda sp spacetime spTimer]; };
   spThin = derive2 { name="spThin"; version="0.2.0"; sha256="0j10j1cbbwp3baqm3b59rxlnd643mkx1mirlxpnr1ad2g7xpm69f"; depends=[fields knitr spam]; };
   spTimer = derive2 { name="spTimer"; version="3.3.1"; sha256="0lf39n32ifsmbcf35h0g60xniw72mlrzvzax3k6kz5c5k1wszlba"; depends=[coda extraDistr sp spacetime]; };
@@ -16884,7 +16957,7 @@ in with self; {
   spaa = derive2 { name="spaa"; version="0.2.2"; sha256="163iipz1knxx1lzby9a3n1f014yqkf25z1wpwwy4gbx7sia499d5"; depends=[]; };
   space = derive2 { name="space"; version="0.1-1.1"; sha256="09dpksbda4lg5hax47a9h9shjmggza6583slvdj0fldblykpyxck"; depends=[]; };
   spaceNet = derive2 { name="spaceNet"; version="1.2"; sha256="1s2672icxs0qvdhl52xhllgvh1i9mjfrn5j3icyw6h61ljbnhy11"; depends=[MASS mclust permute RcppTN Rfast sna vegan]; };
-  spacefillr = derive2 { name="spacefillr"; version="0.2.0"; sha256="1gqwz5j26z7ar3syzgj734mxi77m6mj0jrij32grcls79m8iy329"; depends=[Rcpp]; };
+  spacefillr = derive2 { name="spacefillr"; version="0.3.0"; sha256="0c4yasc1zizjmhd2ciyz86lg76fsrxvl19yjkb2fmkda9rmnc0bf"; depends=[Rcpp]; };
   spacejamr = derive2 { name="spacejamr"; version="0.2"; sha256="1hyf4wmwfjlw3qh3rw3wq94slybrpm2zmmcfgy7gqcycmfddrg8w"; depends=[crsuggest dplyr ggplot2 ggraph ggthemes igraph magrittr sf spatstat_geom spatstat_random]; };
   spacesRGB = derive2 { name="spacesRGB"; version="1.4-0"; sha256="1py93g7wglszcrkm09y0am2iia972q0jbgwb2wmickw3xsgip8p5"; depends=[]; };
   spacesXYZ = derive2 { name="spacesXYZ"; version="1.1-1"; sha256="1jxwhpnfbqa2nz86l8sdxxj3qmasw1wmbii7wr8sqp2819jr5lnd"; depends=[]; };
@@ -16892,13 +16965,12 @@ in with self; {
   spacey = derive2 { name="spacey"; version="0.1.1"; sha256="1p8kx3d08q9kz1wb286m3d8ckwkhfm5n42m65m4w5gz5kpfx0xfz"; depends=[httr jsonlite magrittr png raster rayshader rgdal]; };
   spacyr = derive2 { name="spacyr"; version="1.2.1"; sha256="1b2ccgwsiqkvp7w37x8k7699c676q16vfrybkrfvyczyhki4s6nw"; depends=[data_table reticulate]; };
   spaero = derive2 { name="spaero"; version="0.6.0"; sha256="0xigwi6w21y2fwicml0s2gylwnwp2qvrqskr0v8rd3bn01hg9ja3"; depends=[]; };
-  spagmix = derive2 { name="spagmix"; version="0.3-4"; sha256="032dmz8cx4j5vl229gi1xkncc1wggfrf1a24qqwl2bzxrdfp27rw"; depends=[abind mvtnorm RandomFields sparr spatstat spatstat_core spatstat_geom spatstat_linnet]; };
   spam = derive2 { name="spam"; version="2.8-0"; sha256="1ann2a2ifr3z983fcg1c0pkgmbxz6a0ym5q1dmq1r382bd1pg0fr"; depends=[dotCall64]; };
   spam64 = derive2 { name="spam64"; version="2.8-0"; sha256="105h8j1ps2g79csbhwfchfdfxhqbbs793pxk3hqln57p6nap74i6"; depends=[]; };
   spamtree = derive2 { name="spamtree"; version="0.2.2"; sha256="1z1dyv6cvcdilqyfpzgl3zr0jmzjn2sznrvypvxx7c8i6qfq8nd0"; depends=[dplyr FNN magrittr Rcpp RcppArmadillo rlang tibble]; };
   spanel = derive2 { name="spanel"; version="0.1"; sha256="1riyvvfij277mclgik41gyi01qv0k466wyk2wbqqhlvrlj79yzsc"; depends=[]; };
   spanish = derive2 { name="spanish"; version="0.4.2"; sha256="15drc11lh0qxpww50p0smi8qxfbln82bx0yd74jqf71irhk5jxyp"; depends=[magrittr xml2]; };
-  spant = derive2 { name="spant"; version="1.17.0"; sha256="0bsjxb72w7wpprxsnv6ylac54pg315ih35ww5z8mjmbpl2ilqmck"; depends=[abind expm fields foreach irlba jsonlite magrittr minpack_lm mmand nloptr numDeriv plyr pracma ptw RNifti RNiftyReg signal smoother stringr]; };
+  spant = derive2 { name="spant"; version="1.19.0"; sha256="12cnf8s4xzw4qvhc3i10mch2pck9rini5qkvjg19264p4rwh0xpd"; depends=[abind expm fields foreach irlba jsonlite magrittr minpack_lm mmand nloptr numDeriv plyr pracma ptw RNifti RNiftyReg signal smoother stringr]; };
   sparcl = derive2 { name="sparcl"; version="1.0.4"; sha256="138krflvfdlx4hlh90mswds51i8aw2vv00gm5lgkfsvxj4w324jg"; depends=[]; };
   spark_sas7bdat = derive2 { name="spark.sas7bdat"; version="1.4"; sha256="1s1hd6hvjxnfb3w10v93pggijmm2h4rcsf7ckl34j2sw9bvv7zka"; depends=[sparklyr]; };
   sparkavro = derive2 { name="sparkavro"; version="0.3.0"; sha256="0g6ac9msfbx8f8j8rj0hvlxjsn317zyam207q7i8kf0hshs1r58f"; depends=[DBI dplyr sparklyr]; };
@@ -16912,7 +16984,7 @@ in with self; {
   sparktf = derive2 { name="sparktf"; version="0.1.0"; sha256="0jd018n7553q0ldv6whxbj2s38myig0m8zq4fbp8fsv34q5wnsx4"; depends=[sparklyr]; };
   sparkwarc = derive2 { name="sparkwarc"; version="0.1.6"; sha256="0nzw6lgjrgqd1hj46jd52s8s3vdb7q2nc500jlgd0ydrr12zd123"; depends=[DBI Rcpp sparklyr]; };
   sparkxgb = derive2 { name="sparkxgb"; version="0.1.1"; sha256="1h7jk76v9wfm8qzqy6lhsmsp767wydwba9xyqszndl88295iac1j"; depends=[forge sparklyr]; };
-  sparr = derive2 { name="sparr"; version="2.2-15"; sha256="0c0vr4js6rcbyk85sld28m130d5zdymncpipzpkpzis3ismnlgp4"; depends=[doParallel foreach misc3d spatstat spatstat_core spatstat_geom spatstat_utils]; };
+  sparr = derive2 { name="sparr"; version="2.2-16"; sha256="0qhlkx7byx3245yzsk30zr4lgndjx5g1vr0s4azmcya245pp6rkw"; depends=[doParallel foreach misc3d spatstat spatstat_core spatstat_geom spatstat_random spatstat_utils]; };
   sparrpowR = derive2 { name="sparrpowR"; version="0.2.5"; sha256="187571srw0yhvqdgfpa374zmlaxhjmj9xlnh9gm2v4j46pfvrs5n"; depends=[doFuture doRNG fields foreach future iterators lifecycle raster sp sparr spatstat_geom spatstat_random]; };
   sparseBC = derive2 { name="sparseBC"; version="1.2"; sha256="0a1siyi9kc805qji4alnw3c21spf4iw4wpsbfl50zvs52p8vl8w2"; depends=[fields glasso]; };
   sparseEigen = derive2 { name="sparseEigen"; version="0.1.0"; sha256="0vqcy61rarmp3liz8fr3vs3y40hkb3wfw89b5xsj1byaiap4772s"; depends=[]; };
@@ -16930,6 +17002,7 @@ in with self; {
   sparsebn = derive2 { name="sparsebn"; version="0.1.2"; sha256="1b1601n3nmxck6a27xqxpsa79p4xnz7yyzdfqiddn9zd2b4v9wc5"; depends=[ccdrAlgorithm discretecdAlgorithm sparsebnUtils]; };
   sparsebnUtils = derive2 { name="sparsebnUtils"; version="0.0.8"; sha256="1x1phd33r3ci72sbm0pkmigwbi4x59pdz8n5919119mkxdf740vs"; depends=[Matrix nnet]; };
   sparsediscrim = derive2 { name="sparsediscrim"; version="0.3.0"; sha256="1fzvki3az1y5bz6d7lygv3hjbzn17gq8g2s7xqmldlpq1v4dhjar"; depends=[bdsmatrix corpcor dplyr ggplot2 mvtnorm rlang]; };
+  sparsegl = derive2 { name="sparsegl"; version="0.3.0"; sha256="0aiaspl9sybyg7sa9pzmnrbjdvxplsmzip0v5imrmqvjszrkbrf8"; depends=[assertthat dotCall64 ggplot2 magrittr Matrix rlang RSpectra tidyr]; };
   sparseinv = derive2 { name="sparseinv"; version="0.1.3"; sha256="06inzix9m7b5g7c97lyvyl2g7fdr4iz60791hl2w9mah7nd6bfja"; depends=[Matrix Rcpp spam]; };
   sparsenet = derive2 { name="sparsenet"; version="1.4"; sha256="1r7xmpn3r8dq1zm6ghygks3l014kqlrpfgsl8q23w7rly8ksw3m9"; depends=[Matrix shape]; };
   sparsepca = derive2 { name="sparsepca"; version="0.1.2"; sha256="0wk2nm37p15gb8i4s45izzzdmwywr56kv4g0j3jd5s3slm224vv4"; depends=[rsvd]; };
@@ -16959,21 +17032,21 @@ in with self; {
   spatialwarnings = derive2 { name="spatialwarnings"; version="3.0.2"; sha256="1yng9sxhqm04vliwz4jifqsqhvg1nk0icb6j21kp4cfwz81q2s2a"; depends=[future future_apply ggplot2 gsl plyr Rcpp RcppArmadillo segmented]; };
   spatialwidget = derive2 { name="spatialwidget"; version="0.2.3"; sha256="0j0v0cyqndlg9p7g03gp1br9b2i3p50abzpw67k3cawm96a87crj"; depends=[BH colourvalues geojsonsf geometries jsonify rapidjsonr Rcpp sfheaders]; };
   spatsoc = derive2 { name="spatsoc"; version="0.1.16"; sha256="1pyw6606kwskgcfnzvgzvy8n4i9s3mmn1789d1lhk04h14r33fns"; depends=[adehabitatHR data_table igraph rgeos sp]; };
-  spatstat = derive2 { name="spatstat"; version="2.3-0"; sha256="01jckks3j39854mhsarzyzn4rj82h1xrnyd2b6fyzizj48vl80ns"; depends=[spatstat_core spatstat_data spatstat_geom spatstat_linnet spatstat_utils]; };
-  spatstat_Knet = derive2 { name="spatstat.Knet"; version="2.0-0"; sha256="1w9ag7v18mvy4dl1gz2w8xjhw9n2sf9zycqz3mraajis831c76ix"; depends=[Matrix spatstat_core spatstat_data spatstat_geom spatstat_linnet spatstat_sparse spatstat_utils]; };
-  spatstat_core = derive2 { name="spatstat.core"; version="2.3-2"; sha256="0g7nj8nf9ywhdbc5irxlry6kzq6bwwbkk9cp22kyv1wigycnskbz"; depends=[abind goftest Matrix mgcv nlme rpart spatstat_data spatstat_geom spatstat_sparse spatstat_utils tensor]; };
+  spatstat = derive2 { name="spatstat"; version="2.3-3"; sha256="0skk377fw448gvdk6jkcviqbqdjn2vdz19vfk8aiilxax4xba1hr"; depends=[spatstat_core spatstat_data spatstat_geom spatstat_linnet spatstat_random spatstat_utils]; };
+  spatstat_Knet = derive2 { name="spatstat.Knet"; version="2.0-1"; sha256="1mxynbk5sclf94fbrf6vicc48hwmdpxhyxylcmpmlqji4nhs97vx"; depends=[Matrix spatstat spatstat_core spatstat_data spatstat_geom spatstat_linnet spatstat_random spatstat_sparse spatstat_utils]; };
+  spatstat_core = derive2 { name="spatstat.core"; version="2.4-0"; sha256="1dx6fh6l3bqxqfaczm9gxx1sirmdpx8biag462pj9wjqmw9m4j35"; depends=[abind goftest Matrix mgcv nlme rpart spatstat_data spatstat_geom spatstat_random spatstat_sparse spatstat_utils tensor]; };
   spatstat_data = derive2 { name="spatstat.data"; version="2.1-2"; sha256="1r8s4xl25xr71h4g5qqi5y370h2ik3kz5fb4qyml2b6dwsl1ildv"; depends=[Matrix spatstat_utils]; };
-  spatstat_geom = derive2 { name="spatstat.geom"; version="2.3-1"; sha256="1h3ja45in7hnar2gwqp18jkz4rcqi99gllar6jqzlsvdbb85hgpj"; depends=[deldir polyclip spatstat_data spatstat_utils]; };
-  spatstat_gui = derive2 { name="spatstat.gui"; version="2.0-0"; sha256="0v26pmi6ir38hsfhkmkz7njf8b12y8dgacqz54vy9giq73k71j14"; depends=[rpanel spatstat_core spatstat_data spatstat_geom spatstat_linnet spatstat_utils]; };
-  spatstat_linnet = derive2 { name="spatstat.linnet"; version="2.3-1"; sha256="1hrqa2i6mp7d79jw4h56b8hk9590959s79vh9xcsj6k5vbisd6qi"; depends=[Matrix spatstat_core spatstat_data spatstat_geom spatstat_sparse spatstat_utils]; };
-  spatstat_local = derive2 { name="spatstat.local"; version="4.1-1"; sha256="185ypf91d5faybm6ixiz419wsip2swsg3vsbbw3z4w1kqrj7m884"; depends=[spatstat_core spatstat_data spatstat_geom spatstat_sparse spatstat_utils tensor]; };
-  spatstat_random = derive2 { name="spatstat.random"; version="2.0-0"; sha256="0r22hm1rlk61nhhh4w3rbrbpzzirigb9v212hps1m2cibx1f816b"; depends=[spatstat_data spatstat_geom spatstat_sparse spatstat_utils]; };
+  spatstat_geom = derive2 { name="spatstat.geom"; version="2.3-2"; sha256="0aihimb4r6hmk3g7764d3b43a0znf9bzmc96i1lkqq9hwabj7151"; depends=[deldir polyclip spatstat_data spatstat_utils]; };
+  spatstat_gui = derive2 { name="spatstat.gui"; version="2.0-1"; sha256="1snvy4q0w4yn24n2yxyqvdi70i70zpqa7q13cm38d9135hm35cgk"; depends=[rpanel spatstat spatstat_core spatstat_data spatstat_geom spatstat_linnet spatstat_random spatstat_utils]; };
+  spatstat_linnet = derive2 { name="spatstat.linnet"; version="2.3-2"; sha256="0y1py6x0xbw4ad3pjwcspi4ysgfh61f5fd79787zzgyyh2va8y4w"; depends=[Matrix spatstat_core spatstat_data spatstat_geom spatstat_random spatstat_sparse spatstat_utils]; };
+  spatstat_local = derive2 { name="spatstat.local"; version="4.1-4"; sha256="07hmjxrq7k3z43l4f0a141alcg787xhqgl8skk405s1g29xzpnyc"; depends=[spatstat spatstat_core spatstat_data spatstat_geom spatstat_random spatstat_sparse spatstat_utils tensor]; };
+  spatstat_random = derive2 { name="spatstat.random"; version="2.1-0"; sha256="0ggzl64iqf7b6n81ga66wb01sm4rmzrbimv2pmgy047mjnqsnpq4"; depends=[spatstat_data spatstat_geom spatstat_utils]; };
   spatstat_sparse = derive2 { name="spatstat.sparse"; version="2.1-0"; sha256="148fxbxss569w73xaqpzwpz9rfjdgznh2ngf06gvm33631222680"; depends=[abind Matrix spatstat_utils tensor]; };
   spatstat_utils = derive2 { name="spatstat.utils"; version="2.3-0"; sha256="06nvn2ffyrskhzaavsy6lmdp0m8askkrp1fnwrhjsj01lbjnq2az"; depends=[]; };
-  spatsurv = derive2 { name="spatsurv"; version="1.6"; sha256="02bq3hvvjfxndskd5yrchq0r9dv7mxplzq3pvs3jrsd35sfcns3w"; depends=[fields iterators lubridate Matrix RandomFields raster RColorBrewer rgeos sp spatstat spatstat_core spatstat_geom stringr survival]; };
+  spatsurv = derive2 { name="spatsurv"; version="1.7"; sha256="01666mp43p0cv0hsn3wbv5vbb4gyjk506spff9ps119bcpqnwqjr"; depends=[fields iterators lubridate Matrix RandomFields raster RColorBrewer rgeos sp spatstat spatstat_core spatstat_geom spatstat_random stringr survival]; };
   spbabel = derive2 { name="spbabel"; version="0.5.5"; sha256="0yfkz28nfvl3rm0bxljb3y19zhnx7pabxy81d835pbfmjq5vvp51"; depends=[dplyr rlang sp tibble]; };
   spc = derive2 { name="spc"; version="0.6.5"; sha256="1s9f67m3a52mzk5s6hh9jv80m721s0z43x2qj2d4ski2jwqw0iyr"; depends=[]; };
-  spc4sts = derive2 { name="spc4sts"; version="0.5.4"; sha256="17pn6hn5x3isyn44xzvvwby2jiapa4gid0y4kirkcvxf6n7rdhjx"; depends=[gridExtra LS2Wstat rpart]; };
+  spc4sts = derive2 { name="spc4sts"; version="0.5.5"; sha256="14398a65fpdjlr39lwivin551m31mcr5hx47fx2dx7sklq8kr2bg"; depends=[gridExtra LS2Wstat rpart]; };
   spcadjust = derive2 { name="spcadjust"; version="1.1"; sha256="016i3zaaq800x4niz4fixa57nfj1m10sz5xskff4vq4v9fjn2sl0"; depends=[]; };
   spcosa = derive2 { name="spcosa"; version="0.4-0"; sha256="0aszpwhf4ww6kb7r75i17kf6mqy9cx021b0w5dzd6185p57g6sxv"; depends=[ggplot2 rJava sp]; };
   spcov = derive2 { name="spcov"; version="1.01"; sha256="1brmy64wbk56bwz9va7mc86a0ajbfy09qpjafyq2jv7gm7a35ph5"; depends=[]; };
@@ -16984,7 +17057,6 @@ in with self; {
   spdplyr = derive2 { name="spdplyr"; version="0.4.0"; sha256="0lijp78wgrky103137vfk3k4s051qppd6jq6s065k9i7y1azbpc1"; depends=[dplyr rlang sp spbabel tibble]; };
   spduration = derive2 { name="spduration"; version="0.17.1"; sha256="1hsz4hcw85f1rj2pd8ppzsd1r8fh4yf6axc11yf2hd287ghzzxzy"; depends=[corpcor forecast MASS plyr Rcpp RcppArmadillo separationplot xtable]; };
   spdynmod = derive2 { name="spdynmod"; version="1.1.6"; sha256="1zbh1p3lmil4vsrw7q6af3p5xqvhw2k9hx59kbzabnzj4gy8wjk3"; depends=[animation deSolve raster sp]; };
-  spe = derive2 { name="spe"; version="1.1.2"; sha256="0xyx42n3gcsgqmy80nc9la6p6gq07anpzx0afwffyx9fv20fvys0"; depends=[]; };
   speakr = derive2 { name="speakr"; version="3.2.0"; sha256="12m7f4m0jglnbv7i9ackmymh7jc90vjg6yr6ns08b8qcqmzmf9if"; depends=[ggplot2 lifecycle readr stringr tibble]; };
   speaq = derive2 { name="speaq"; version="2.6.1"; sha256="15v7lr2mczqc5ma2n9gyszfkyljnsds6c8lc5vy0qkvwfl01sv3v"; depends=[cluster data_table doSNOW foreach ggplot2 gridExtra impute MassSpecWavelet missForest mQTL reshape2 Rfast rvest xml2]; };
   spearmanCI = derive2 { name="spearmanCI"; version="1.0"; sha256="1xi51dphv91j5hgrd25sqs1li0g24cwpa1k162arw5b0qfl04f17"; depends=[emplik MASS]; };
@@ -17006,7 +17078,8 @@ in with self; {
   spectrolab = derive2 { name="spectrolab"; version="0.0.16"; sha256="0qfzkf8dm5r5sbadipcqvfs1965l365g9000rgl9713v9lmshmy6"; depends=[RColorBrewer shiny shinyjs]; };
   sped = derive2 { name="sped"; version="0.2-1"; sha256="05igpk8szdcs6kjhpmd9dmjvqdg199pz3hi0rwkhdjglxivvjzjn"; depends=[pooh]; };
   speech = derive2 { name="speech"; version="0.1.4"; sha256="17j4hwfqsazakkdxdrx87dfpmdsh51mms31sm3hpnzh4j7ijcg86"; depends=[dplyr lubridate magrittr pdftools purrr rvest stringr tibble tidyr tm]; };
-  speedglm = derive2 { name="speedglm"; version="0.3-3"; sha256="0f37w4lj8dpcg1sfkd7cv6qpdkanmb97mnd8zih2fxzv8bpd0rfh"; depends=[MASS Matrix]; };
+  speechbr = derive2 { name="speechbr"; version="1.0.0"; sha256="0nifv74rh4qla3cd92bnjn77n39fyxvxb4hlix3lk096c0qxgp7s"; depends=[abjutils dplyr glue httr janitor lubridate magrittr purrr rlang rvest stringr tibble tidyr xml2]; };
+  speedglm = derive2 { name="speedglm"; version="0.3-4"; sha256="1kj662nfkfhvx37jrbvxd4dyjclz5cm3xh50z7s5rbzapiyxn4hs"; depends=[MASS Matrix]; };
   speedycode = derive2 { name="speedycode"; version="0.2.0"; sha256="1fz8a6z77r17rld1qqiq3hsk65fpjz8f6czcfqsc8y2fxm0jy602"; depends=[dplyr purrr stringr]; };
   spef = derive2 { name="spef"; version="1.0.9"; sha256="115lmv2a21ws1mj22v1fbk72mqn3siqmw3frbg4nci96lnyr7qh6"; depends=[BB ggplot2 nleqslv plyr sm SQUAREM survival]; };
   speff2trial = derive2 { name="speff2trial"; version="1.0.4"; sha256="0dj5mh2sdp6j4ijgv14hjr39rasab8g83lx1d9y50av11yhbf2pw"; depends=[leaps survival]; };
@@ -17017,7 +17090,7 @@ in with self; {
   sperrorest = derive2 { name="sperrorest"; version="3.0.4"; sha256="169bv07vwlbn2ihw0f8hx10qrfdww9lqb2j8wgrkh1xnkskz13hv"; depends=[dplyr future future_apply ROCR stringr]; };
   spex = derive2 { name="spex"; version="0.7.1"; sha256="0lsmh1sywd4si0v10aix44hybwph3gan8w8cxz956dcgkz60p41v"; depends=[crsmeta quadmesh raster reproj sp]; };
   spfda = derive2 { name="spfda"; version="0.9.0"; sha256="156vs1f75x0wbf65fwzkhlbda649sryf58xixi7gbfjzn873w111"; depends=[mathjaxr]; };
-  spfilteR = derive2 { name="spfilteR"; version="1.1.2"; sha256="13dcw8apkcs13h4d0kkxgv8fnrsj1d5gfkcjjw1spqbq5pjaqvgv"; depends=[]; };
+  spfilteR = derive2 { name="spfilteR"; version="1.1.4"; sha256="0cxc7zrzwr07wk7yv26li6fwmbv3q57vdamzalfrj1npszzkg1s7"; depends=[]; };
   spflow = derive2 { name="spflow"; version="0.1.0"; sha256="0a5nirccwcc2z4dn3gxdlhdjz7sxv1r23clawy0kwn4ggdkmphp1"; depends=[coda Matrix Rdpack RSpectra]; };
   spftir = derive2 { name="spftir"; version="0.1.0"; sha256="07vw8igy698jx671cj6hmf6ll9xvaq81fb6la7j95pqbd6jl284z"; depends=[pracma]; };
   spgrass6 = derive2 { name="spgrass6"; version="0.8-9"; sha256="05xvdhisad0d7c69mvahzg6pvgvmb6dph50r34981palykic7qhn"; depends=[sp XML]; };
@@ -17036,7 +17109,7 @@ in with self; {
   spikeslab = derive2 { name="spikeslab"; version="1.1.5"; sha256="0dzkipbrpwki6fyk4hqlql3yhadwmclgbrx00bxahrmlaz1vjzh2"; depends=[lars randomForest]; };
   spinBayes = derive2 { name="spinBayes"; version="0.1.0"; sha256="1qgqxxk4n17wj3q07irm2qj6lwc5188iwwbdkf588hvfy86lwpj8"; depends=[glmnet MASS Rcpp RcppArmadillo]; };
   spind = derive2 { name="spind"; version="2.2.1"; sha256="1yasqy086h4dv348krisc024mic0dvdsncqys95l85924djlfipp"; depends=[gee geepack ggplot2 lattice MASS RColorBrewer rje rlang splancs stringr waveslim]; };
-  spinifex = derive2 { name="spinifex"; version="0.3.3"; sha256="15k09aih714cg635w39jk1jz4hnyqw2kics2pnhdywmxci23c74c"; depends=[gganimate ggplot2 magrittr plotly Rdimtools shiny tourr transformr]; };
+  spinifex = derive2 { name="spinifex"; version="0.3.5"; sha256="08sj1crngk28d9b1qayxffwgg16imcqk8mpnp7fsjfrjih68a7sw"; depends=[gganimate ggplot2 magrittr plotly Rdimtools shiny tourr transformr]; };
   spinyReg = derive2 { name="spinyReg"; version="0.1-0"; sha256="0kbg7rncrrl5xdsaw9vj909x97mfp77mjnvghczplmnwmmanyn72"; depends=[]; };
   spiralize = derive2 { name="spiralize"; version="1.0.5"; sha256="0m0809b34l8mp0czpcq144hw5p10g35lsb8z7l8ls2kclb8xjcs8"; depends=[circlize GetoptLong GlobalOptions lubridate]; };
   spiritR = derive2 { name="spiritR"; version="0.1.1"; sha256="1fjr63rl9hwqxzgm4lkb9v74cxxpi4lrlcgjixdm7zgccm8ihdvh"; depends=[httr magrittr xml2]; };
@@ -17089,7 +17162,8 @@ in with self; {
   sprm = derive2 { name="sprm"; version="1.2.2"; sha256="0iyijkjnyz4yx2cmazlnhkk0f5ls0c2q2aikwlzl13w6zbj040a8"; depends=[cvTools ggplot2 pcaPP reshape2 robustbase]; };
   sprsmdl = derive2 { name="sprsmdl"; version="0.1-0"; sha256="09klwsjp5w6p7dkn5ddmqp7m9a3zcmpr9vhcf00ynwyp1w7d26gi"; depends=[]; };
   sprtt = derive2 { name="sprtt"; version="0.1.0"; sha256="1lj4qrn8ajl9lmx9qrcxrrd187khs3afvmf2hpwmakxfn6sajm0z"; depends=[]; };
-  sps = derive2 { name="sps"; version="0.1.2"; sha256="1z5r7fmysv9qw8rjrw469mabrdj6pn70y726rqn3ys0kjiz3h47m"; depends=[]; };
+  spruce = derive2 { name="spruce"; version="0.99.1"; sha256="1kklv4d2ycjcxv183cpqa6qn46zn8nww1z8xn4sy7ipz394i10cf"; depends=[BayesLogit dplyr ggplot2 igraph MCMCpack mvtnorm patchwork Rcpp RcppArmadillo rlang Seurat tidyr tidyselect truncnorm]; };
+  sps = derive2 { name="sps"; version="0.1.3"; sha256="0lgrzkwbkyzwbk4fyl012qqvnfmq1ina8cdg3qr25bwjhwhscipx"; depends=[]; };
   spsComps = derive2 { name="spsComps"; version="0.3.2.0"; sha256="1ndii6jjnijkdngngqxwwdxi3p5fcn6g4lzajvhi2ywda0in492p"; depends=[assertthat crayon glue htmltools magrittr R6 shiny shinyAce shinytoastr stringr]; };
   spsUtil = derive2 { name="spsUtil"; version="0.2.2"; sha256="1hhiz2bmgrvpadag1d4ljynk7mhwknaslja9hcmf665l2x3hzdl6"; depends=[assertthat crayon glue httr magrittr R6 stringr]; };
   spselect = derive2 { name="spselect"; version="0.0.1"; sha256="02aiml4dh40n6yl52ypramn4847ykdi4y5lhsmchnnp4nnnqycsn"; depends=[magic pracma tester]; };
@@ -17097,7 +17171,7 @@ in with self; {
   spsi = derive2 { name="spsi"; version="0.1"; sha256="0q995hdp7knic6nca0kf5yzkvv8rsskisbzpkh9pijxjmp1wnjrx"; depends=[plot3D]; };
   spsur = derive2 { name="spsur"; version="1.0.2.0"; sha256="0dkbl5x2h1l34ybhb4zdygnf7fdga78aaq4nb9kqyw6xjfrcsazn"; depends=[car Formula ggplot2 gmodels gridExtra knitr lmtest MASS Matrix minqa numDeriv Rdpack rlang rmarkdown sparseMVN spatialreg spdep]; };
   spsurv = derive2 { name="spsurv"; version="1.0.0"; sha256="11jlbzvzxv3d1d0nwpbii46ddvphglrxv25rw7pvxbybcx2i7k6x"; depends=[BH coda loo MASS Rcpp RcppEigen rstan rstantools StanHeaders survival]; };
-  spsurvey = derive2 { name="spsurvey"; version="5.2.0"; sha256="1yc3r0jz2p08432nd3v958fzid97nwknk5jn277jylw2rkx7avd5"; depends=[boot crossdes deldir lme4 MASS sampling sf survey units]; };
+  spsurvey = derive2 { name="spsurvey"; version="5.3.0"; sha256="1wvl6lbww82c1z83928zgn5l1ciayppb6k84l2syxn6fs1xjadbc"; depends=[boot crossdes deldir lme4 MASS sampling sf survey units]; };
   spt = derive2 { name="spt"; version="2.5.1"; sha256="04j38d2b35p4798znnc49vqrg8r8bygwi07vybfj3nzimlp2mkrn"; depends=[]; };
   sptm = derive2 { name="sptm"; version="2019.11-25"; sha256="1hdymzngdppmh56dqh0k88n9hg68pbx9rgmimbz4ihnfx2plvadh"; depends=[kyotil survey survival]; };
   sptotal = derive2 { name="sptotal"; version="1.0.0"; sha256="0lcq7ldrgy93i1pk2hhwfmhqhmijv9g5p7jdsh9hrfky51w8vrql"; depends=[ggplot2 sp viridis]; };
@@ -17120,7 +17194,7 @@ in with self; {
   srm = derive2 { name="srm"; version="0.3-6"; sha256="0mc97pv1hsmia4v2wyb8yi37i3v1xypfv9xmhjb989xnnysf1lm3"; depends=[Rcpp RcppArmadillo]; };
   srp = derive2 { name="srp"; version="1.2.0"; sha256="0xdzfvi7z78xmyxwd8fha3lr86jwmgjba1w8hhn4sv3v5gc9vlkh"; depends=[fda mgcv]; };
   srt = derive2 { name="srt"; version="1.0.3"; sha256="0m94ycnrlgjvlx9jzb05rdg57yxwsw3p7zjih0m04vb1369j83q1"; depends=[]; };
-  srvyr = derive2 { name="srvyr"; version="1.1.0"; sha256="0gq53s3m7vzlyi04zijljmjllwy3gf8kjpb5w3hbiic77g1mlw21"; depends=[dplyr magrittr rlang survey tibble tidyr tidyselect vctrs]; };
+  srvyr = derive2 { name="srvyr"; version="1.1.1"; sha256="1sm86r9d9vc3cvi64xvypf65phqbnv527x7v3k3da0gzgz823wsf"; depends=[dplyr magrittr rlang survey tibble tidyr tidyselect vctrs]; };
   ss3sim = derive2 { name="ss3sim"; version="1.0.3"; sha256="0s2yajlhi07fvqc0rr4msd9g2jrswb83dx55wsxnw925vikqa5kz"; depends=[bbmle foreach ggplot2 gtools r4ss]; };
   ssMousetrack = derive2 { name="ssMousetrack"; version="1.1.5"; sha256="069jsp2l63jp4fv2hwadqxpkp89aqmbh439zy66rx55kws75b556"; depends=[BH CircStats cowplot dtw ggplot2 Rcpp RcppEigen rstan rstantools StanHeaders]; };
   ssaBSS = derive2 { name="ssaBSS"; version="0.1"; sha256="1gprl725am933fqlhhxzwrg7k08sy0xndmg8v8hifxfwq9nbk0w9"; depends=[BSSprep ggplot2 ICtest JADE tsBSS xts zoo]; };
@@ -17155,12 +17229,12 @@ in with self; {
   ssvd = derive2 { name="ssvd"; version="1.0"; sha256="1fdpr38qi59ijrz16jixn6ii1hvmxfjirjqfcp7dxrqz9nx8x0sk"; depends=[]; };
   ssym = derive2 { name="ssym"; version="1.5.7"; sha256="0l5d921vlhd4qwddllrgcxpq3bhivvy5ikh3ixdy3s140rzpgwrv"; depends=[Formula GIGrvg normalp numDeriv sandwich survival]; };
   st = derive2 { name="st"; version="1.2.7"; sha256="0j29k9fg8659yw1jwmcakiic51rin1dj1fmvpapy2wmz4c3pr0fp"; depends=[corpcor fdrtool sda]; };
-  stR = derive2 { name="stR"; version="0.4"; sha256="120k8k1l8cfy8x746808jym7lnaplgh4s3lycgyq2wia2c35r0rc"; depends=[foreach forecast Matrix quantreg rgl SparseM]; };
+  stR = derive2 { name="stR"; version="0.5"; sha256="1nlb2d8a11kxiipv96sfmmcq185051vmdiwjjqayln143gvhzp7w"; depends=[foreach forecast Matrix quantreg SparseM]; };
   sta = derive2 { name="sta"; version="0.1.5"; sha256="0q9pplx4ifndvbh2bfa96vjbcaaqdj6bq57kwlzhavq6hjq7d56v"; depends=[doParallel foreach geoTS iterators mapview raster RColorBrewer rgdal trend]; };
   staRdom = derive2 { name="staRdom"; version="1.1.23"; sha256="0gsix1dxk4gn2iq0zqbm7fyzxxnyzbgdlcbk11lqirx9x0xmwj80"; depends=[cdom data_table doParallel dplyr drc eemR foreach GGally ggplot2 gtools matrixStats MBA multiway pracma R_matlab readr stringr tibble tidyr viridisLite zoo]; };
-  stabiliser = derive2 { name="stabiliser"; version="0.1.1"; sha256="1m11gf0fi6x3b4g4ngnra4vdl0fwh045zvlbajh0mfbim3nkahx2"; depends=[bigstep broom caret dplyr ggplot2 glmnet knitr ncvreg purrr rsample stringr tibble tidyr]; };
+  stabiliser = derive2 { name="stabiliser"; version="0.1.2"; sha256="0vpmq1g4vmg02nydkg4q6li00zwvxwm0bad0prhn4kfnlzhkk864"; depends=[bigstep broom caret dplyr ggplot2 glmnet knitr ncvreg purrr rsample stringr tibble tidyr]; };
   stability = derive2 { name="stability"; version="0.5.0"; sha256="0mz7ikfhpfbdcp72klq7fi4zfmx2w18gz46yhwywcc4dyi277m11"; depends=[dplyr ggfortify ggplot2 lme4 magrittr matrixStats reshape2 rlang scales tibble tidyr]; };
-  stable = derive2 { name="stable"; version="1.1.4"; sha256="01azqg4yi5wl6wfdpjq57w41x5z2b4dsp5n3vpkz24b9avk6rm8s"; depends=[rmutil stabledist]; };
+  stable = derive2 { name="stable"; version="1.1.6"; sha256="194xsa291v5f0jya1c3aigbclg8cci427ffpb8brxamm6n57hf12"; depends=[rmutil]; };
   stableGR = derive2 { name="stableGR"; version="1.1"; sha256="1fbbghqkd6vpnlnzgc6fsdpvlc7lw6nxwy5whdg7zgxkwqvqj8n3"; depends=[mcmcse mvtnorm]; };
   stabledist = derive2 { name="stabledist"; version="0.7-1"; sha256="0scar396wiq6wkbkvwp4qrxqc1m075y56p37i6iry5rw796p1i86"; depends=[]; };
   stablelearner = derive2 { name="stablelearner"; version="0.1-3"; sha256="0h2xqm9g4zx72r6r0a7if1kyrqrjr8hs1pi07h294hbg8l7yvhxb"; depends=[e1071 MASS party partykit randomForest ranger]; };
@@ -17174,14 +17248,13 @@ in with self; {
   stagePop = derive2 { name="stagePop"; version="1.1-1"; sha256="0949r5ibl3sb10sr5xsswxap3wd824riglrylk7fx43ynsv5hzpy"; depends=[deSolve PBSddesolve]; };
   stagedtrees = derive2 { name="stagedtrees"; version="2.2.0"; sha256="01qb8pw0al3b3b6smcapd61i81p6xw3hh1x8i6dsb73pdvpbfyxj"; depends=[]; };
   staggered = derive2 { name="staggered"; version="1.1"; sha256="0z9358qbgn637j8iz5qwr4nyrlvi9w85l325vxpc61mcwksx5ip8"; depends=[coop dplyr magrittr MASS purrr Rcpp RcppEigen reshape2 tidyr]; };
-  stam = derive2 { name="stam"; version="0.0-1"; sha256="1x1j45fir64kffny0nssb2hwn4rcp8gd2cjv6fw4yy0l4d0xi5iv"; depends=[np sp]; };
   stampr = derive2 { name="stampr"; version="0.2"; sha256="10mc71kgnw5712q2gvzd4bmjaw1879r7s599hfsjap21idqb2k2m"; depends=[deldir maptools raster rgdal rgeos sp spdep]; };
   stan4bart = derive2 { name="stan4bart"; version="0.0-2"; sha256="0262z83rqwf38z2qrvngdz6wmnrz48w4ijv7wg81w1b1lp807y5s"; depends=[BH dbarts Matrix Rcpp RcppEigen RcppParallel]; };
   standardize = derive2 { name="standardize"; version="0.2.2"; sha256="008nz9vf08qxwdsn373yzpmsw5lhbm6mpm6dlwyys58wq0bdvh28"; depends=[lme4 MASS stringr]; };
   standartox = derive2 { name="standartox"; version="0.0.1"; sha256="1b5w66x4v8hfxzp3ahw97my6m0rcn22iv5nhgm2wzdq0if0cq8py"; depends=[curl data_table fst httr jsonlite]; };
   stapler = derive2 { name="stapler"; version="0.7.1"; sha256="1bzhahn72fzm2bjpis76hphv8whnkp2jq8bm1qldadhng4z1nsak"; depends=[matrixStats RNifti]; };
   staplr = derive2 { name="staplr"; version="3.1.1"; sha256="0g3a13qndi4w35wq9bm0gb2b8v9svih9gbj5ymggqlcwz1dzywga"; depends=[assertthat glue rJava stringr XML]; };
-  stargazer = derive2 { name="stargazer"; version="5.2.2"; sha256="1pij76r60hkjlvxw6zw1v7gkib81smiqmjq7mwszn6xclq9lmsvh"; depends=[]; };
+  stargazer = derive2 { name="stargazer"; version="5.2.3"; sha256="0ra284jxjb1n6sd3114zf5l5pjrb7m7j073k8bhnrx8wl549p3i0"; depends=[]; };
   starm = derive2 { name="starm"; version="0.1.0"; sha256="0y580c6inmfix6agwd5nr340l3hjk2xxs95s468j5pghpjpb8rmv"; depends=[Matrix]; };
   starma = derive2 { name="starma"; version="1.3"; sha256="07r0kyabhgbm2v39fcrw0qhxcxj9a9cb45g9chzcnn9qmvramcwx"; depends=[ggplot2 Rcpp RcppArmadillo scales]; };
   starnet = derive2 { name="starnet"; version="0.0.6"; sha256="0gbg8svyj4nh846q7986ap7jjry599kb1348k9lifz19kvyr4rn4"; depends=[cornet glmnet Matrix survival]; };
@@ -17189,12 +17262,12 @@ in with self; {
   starsExtra = derive2 { name="starsExtra"; version="0.2.7"; sha256="06l9rpgw1dmvvn3389zzqrq4y87192k4zzj7xgvwzrdlrcxsqdh7"; depends=[mgcv nngeo sf stars units]; };
   starsTileServer = derive2 { name="starsTileServer"; version="0.1"; sha256="1nw13r5gf8chr8zc3ypc6zzq811y8m0m2yin5y1gvim3wkfz63xj"; depends=[assertthat leaflet plumber png R6 rlang sf stars units]; };
   starschemar = derive2 { name="starschemar"; version="1.2.0"; sha256="0jjaic1zwdc3lvdlgs0vzkjjivjs2dskmhx4qg469ban34az0591"; depends=[dplyr generics pander purrr readr rlang snakecase tibble tidyr tidyselect]; };
-  startR = derive2 { name="startR"; version="2.1.0"; sha256="1cgn77jaiy7gfqbhh6w3x0bf57v32vzpp334mp50v827hgv439wy"; depends=[abind bigmemory ClimProjDiags easyNCDF future multiApply s2dverification]; };
+  startR = derive2 { name="startR"; version="2.2.0"; sha256="12kigspfpmzibnr7y8m906qj1hm596wx8asghi0fd4598nk1w0s3"; depends=[abind bigmemory ClimProjDiags easyNCDF future multiApply PCICt s2dv]; };
   starter = derive2 { name="starter"; version="0.1.8"; sha256="003ih4035hhka5cghr5j3h0gc9a2fxdafag8ffxxg8cvigh2m7fm"; depends=[dplyr fs gert glue here purrr R_utils readr renv rlang stringr tibble usethis]; };
-  startup = derive2 { name="startup"; version="0.16.0"; sha256="1lqjig4jvy71w7082b5s209kmkchn39n0fksnvjp1prjvygh575w"; depends=[]; };
+  startup = derive2 { name="startup"; version="0.17.0"; sha256="0i9qk9kqwqrgsazivg4prar48h1rvy2fiwrv2igmqggy253pnipm"; depends=[]; };
   startupmsg = derive2 { name="startupmsg"; version="0.9.6"; sha256="0vkqxir4ady4dn9s70dfg1fxck2xg8vnmrmxjzvk01i6pc9zyq0x"; depends=[]; };
   starvars = derive2 { name="starvars"; version="1.1.10"; sha256="1mq31g05ahpsmda2zrmkg1dlaqqk4c9hm9fjzhgrsxlg4j3klbbf"; depends=[doSNOW foreach ks lessR MASS matrixcalc optimParallel quantmod vars xts zoo]; };
-  starvz = derive2 { name="starvz"; version="0.7.0"; sha256="166mppribk0hsx4rs3km0k44s7yww6ss5bmxn4434caj43rda5lr"; depends=[arrow BH data_tree dplyr ggplot2 gtools lpSolve magrittr patchwork purrr RColorBrewer Rcpp readr rlang stringr tibble tidyr yaml zoo]; };
+  starvz = derive2 { name="starvz"; version="0.7.1"; sha256="0j22605vh0fpf17l78i3x9q5xia9qx841sg7hxhcjybn7vfkafsj"; depends=[arrow BH data_tree dplyr ggplot2 gtools lpSolve magrittr patchwork purrr RColorBrewer Rcpp readr rlang stringr tibble tidyr yaml zoo]; };
   starwarsdb = derive2 { name="starwarsdb"; version="0.1.2"; sha256="00n9qqw4lbfk698qgvw8i42sy3dv5i5fiiqma3zks4rr9yspkldq"; depends=[DBI duckdb magrittr tibble]; };
   stat_extend = derive2 { name="stat.extend"; version="0.2.1"; sha256="1qwjqnjds733xvxhby604yqvwlj1rkr3411diwzhbgwp89rhy11r"; depends=[sets]; };
   statGraph = derive2 { name="statGraph"; version="0.5.0"; sha256="0fd7jsngd8gihivnir3y58961kvbdd5g1m5gm1da91984qs7r9q1"; depends=[cluster doParallel foreach igraph MASS rARPACK]; };
@@ -17206,14 +17279,15 @@ in with self; {
   statebins = derive2 { name="statebins"; version="1.4.0"; sha256="1v67da939qg672aqni2i37w70pgasgx6r55b4fjjc3zzviq8gipx"; depends=[ggplot2 scales]; };
   states = derive2 { name="states"; version="0.3.1"; sha256="1yi7yigmxjcpa2p75bq0jj1pmiv5xh6zsxhayg7pa7p7fqdl3d9i"; depends=[dplyr lifecycle rlang]; };
   statespacer = derive2 { name="statespacer"; version="0.4.0"; sha256="06qjbnp40mkbjxq14cwzpwcqymafm14cli1kmjfqwl4g1v9bvsx3"; depends=[Rcpp RcppArmadillo Rdpack]; };
-  statgenGWAS = derive2 { name="statgenGWAS"; version="1.0.7"; sha256="1y740vpymxnyzdizayp6nqhwni363cgsf0323m0vxb76kd78jiid"; depends=[data_table ggplot2 Rcpp RcppArmadillo sommer]; };
+  statgenGWAS = derive2 { name="statgenGWAS"; version="1.0.8"; sha256="0n2vkmn1cgping3h05bn66m4yhsd55df9g6iv1y3pz11zvw4w28q"; depends=[data_table ggplot2 Rcpp RcppArmadillo sommer]; };
   statgenGxE = derive2 { name="statgenGxE"; version="1.0.4"; sha256="12v9a1lg12pmhzk28c929j1vhhh5x9gzb6ia9izvji2zjx2yigk4"; depends=[emmeans ggplot2 gridExtra knitr lme4 statgenSTA xtable]; };
   statgenHTP = derive2 { name="statgenHTP"; version="1.0.5"; sha256="1lclxc4al3h7z5cbjhmm6p1hr22gysz16hlvfams37czbc2prlha"; depends=[animation factoextra ggforce ggnewscale ggplot2 gridExtra locfit lubridate reshape2 scales SpATS]; };
-  statgenIBD = derive2 { name="statgenIBD"; version="1.0.2"; sha256="01pk5miwvs3mkx3dqj8pw9f38bikjk3vdih4h0gz2f7qav1kfyy9"; depends=[ggplot2 Rcpp RcppArmadillo]; };
+  statgenIBD = derive2 { name="statgenIBD"; version="1.0.4"; sha256="1hjixzzxwvi6a9dz8n3xrz1zy9r7wzf54gp9m76pfbdnhjga3hgk"; depends=[ggplot2 Rcpp RcppArmadillo]; };
   statgenSTA = derive2 { name="statgenSTA"; version="1.0.8"; sha256="1734gqcrwkxl3672pf147qh5n8lid4zk81zfanhqi6z83syw5ha5"; depends=[emmeans ggplot2 ggrepel gridExtra knitr lme4 mapproj maps qtl scales SpATS xtable]; };
   stationaRy = derive2 { name="stationaRy"; version="0.5.1"; sha256="1620fdlybn3hr96yngnp802imr9b7n90835lyyd86r2wn6psdzvl"; depends=[downloader dplyr lubridate lutz magrittr progress readr stringr tidyr]; };
   stationery = derive2 { name="stationery"; version="1.0"; sha256="07kwlmambjv7njgpw1dhsm2zrv1lk6xj2k6a6psysjllrf5zz8ga"; depends=[knitr kutils rmarkdown]; };
   statip = derive2 { name="statip"; version="0.2.3"; sha256="0kymc3ds1nx0h11ffmm3vmqr1w34gd0k788vf72x2v45h8c1ma2n"; depends=[clue rpart]; };
+  statisfactory = derive2 { name="statisfactory"; version="1.0.1"; sha256="0i5z9f1q7wi0qdgr0zj15x1q3jzavivnkwf07y5d1ch3nqxa4nqw"; depends=[omnibus rlist]; };
   statmod = derive2 { name="statmod"; version="1.4.36"; sha256="1hkvklcav6gj4zib4g3b4xwsdsbsmnzdblr0v6jaqv227p49gs0l"; depends=[]; };
   statnet = derive2 { name="statnet"; version="2019.6"; sha256="17dj6vjnjyqrfhzjq1lys5b29j942kd15zffb69jidni3slf20q9"; depends=[ergm ergm_count network networkDynamic sna statnet_common tergm tsna]; };
   statnet_common = derive2 { name="statnet.common"; version="4.5.0"; sha256="0bw8dwnv568i60xrj6d7gv0hnna1x7rvqaayy5i0827khvdj7nrw"; depends=[coda]; };
@@ -17221,7 +17295,7 @@ in with self; {
   statnipokladna = derive2 { name="statnipokladna"; version="0.7.0"; sha256="0xds27abs9x853nhy5xljldmxh5xrkxfgn5q6qw8b093ynrsvbrp"; depends=[curl dplyr httr jsonlite lifecycle lubridate magrittr purrr readr rlang stringi stringr tibble tidyr tidyselect usethis xml2]; };
   statprograms = derive2 { name="statprograms"; version="0.2.0"; sha256="0m7px7fmpz2zzlfdi7rbllcjvcjp8iy94f6fa1w4xinh7vz3y6vq"; depends=[]; };
   statpsych = derive2 { name="statpsych"; version="1.0.0"; sha256="0rakzsbafhp5xps9bbb4pljv4c49ij1rwz64z0q5jjglc95kw55s"; depends=[mathjaxr Rdpack]; };
-  statquotes = derive2 { name="statquotes"; version="0.2.2"; sha256="1xzc3ndddjrlyld0p4zcwwxkj7i3m3adj7c78x9l4lhlw9mxbbqg"; depends=[stringr tidytext wordcloud]; };
+  statquotes = derive2 { name="statquotes"; version="0.2.6"; sha256="04pk4fqq6hjpn15f2xp7hy25vhw5z1qj3v79sq6smzak1vz92zsa"; depends=[stringr tidytext wordcloud]; };
   stats19 = derive2 { name="stats19"; version="2.0.0"; sha256="0minav2ab9xa9xq5mardjcijaxhs3v1izxmy15v5zf04lhvz4f03"; depends=[readr sf]; };
   statsExpressions = derive2 { name="statsExpressions"; version="1.3.0"; sha256="0kml7q4nhnirh8na12mfqgg0ka4vl2333piabw94hx4rjhajwxll"; depends=[BayesFactor correlation datawizard dplyr effectsize glue insight magrittr parameters performance rlang tibble tidyr WRS2 zeallot]; };
   statsearchanalyticsr = derive2 { name="statsearchanalyticsr"; version="0.1.4"; sha256="0m2zv5sgv7w9yk6q7rwx8x2zy6xx5w0d6c9vynddr08pn4mdqjhs"; depends=[glue httr jsonlite lubridate purrr stringr tibble tidyr]; };
@@ -17240,6 +17314,7 @@ in with self; {
   stepPenal = derive2 { name="stepPenal"; version="0.2"; sha256="08gizl6c606ibbv7x2rdvfw37rghkrprwszha79yngkzpajw8gql"; depends=[caret dfoptim glmnet mvtnorm pROC]; };
   stepPlr = derive2 { name="stepPlr"; version="0.93"; sha256="1i54nyz8z5vq3mzfh6h2vd1q0hsdazc4mhrj9ad0zdvn0qnz61lv"; depends=[]; };
   stepR = derive2 { name="stepR"; version="2.1-1"; sha256="0mz88d7214g59nvr40c4gf4grq9skjqqlfgydbdzmc4l315nr4zv"; depends=[digest lowpassFilter R_cache Rcpp]; };
+  stepSplitReg = derive2 { name="stepSplitReg"; version="1.0.0"; sha256="0glsc11ylh4bqhw0p8sdf6r171lzb522skcnfg9vwxn4sm9s93zm"; depends=[nnls Rcpp RcppArmadillo SplitGLM]; };
   stepgbm = derive2 { name="stepgbm"; version="1.0.0"; sha256="1psjnxc7dadbm1405wm3vgsf9m2pn8bm82rn9md3cxhp33jqh1bx"; depends=[gbm spm steprf]; };
   stepjglm = derive2 { name="stepjglm"; version="0.0.1"; sha256="0xsb0wg7ka4ska2jkzaic7kqdzj2fkhpf5sxr3a116f2najj9ax2"; depends=[rsq]; };
   stepp = derive2 { name="stepp"; version="3.2.2"; sha256="1iyj1f9gzn44xllhm9y1j0ynfz4q48d2l8ic4mjvzc3p4z8cnpmz"; depends=[car rstudioapi scales survival]; };
@@ -17259,7 +17334,7 @@ in with self; {
   stlELM = derive2 { name="stlELM"; version="0.1.0"; sha256="1sn4yn24k2nkcc5vxdmzj7ym9kzwffyysd5ckbpv7fggf1vajnif"; depends=[forecast nnfor]; };
   stlTDNN = derive2 { name="stlTDNN"; version="0.1.0"; sha256="1j2f9kxlry15xp7bc03h5jr7v8gzq8frdxyzhq9s78m3d3dbixf4"; depends=[forecast nnfor]; };
   stlcsb = derive2 { name="stlcsb"; version="0.1.2"; sha256="08pnj1yb4xcbhnrp2wny8lq9rvcvmsgaza07k4358csfksvmcira"; depends=[dplyr lubridate purrr readr readxl rlang rvest sf stringr tibble xml2]; };
-  stlnpp = derive2 { name="stlnpp"; version="0.3.7"; sha256="0ycx423qq8h53w6bd1kw6xv0skfsw19fqzyrp2scpw1af2496snq"; depends=[spatstat spatstat_core spatstat_geom spatstat_linnet]; };
+  stlnpp = derive2 { name="stlnpp"; version="0.3.8"; sha256="1lx2fkqal2mf55xx0rwy9wf9fkr9n0vrp8fwic4grjcq0v5cf75k"; depends=[spatstat spatstat_core spatstat_geom spatstat_linnet spatstat_random]; };
   stlplus = derive2 { name="stlplus"; version="0.5.1"; sha256="14728xsm982z9sg4rbqg307pbwqlsiyzj8z3sr9wr6fi0dayf6z5"; depends=[lattice Rcpp yaImpute]; };
   stm = derive2 { name="stm"; version="1.3.6"; sha256="0qwq4nin2n9fjd06852r8k7arvcgh46kcfb3lm21swgx6j8bgrhb"; depends=[data_table glmnet lda Matrix matrixStats quadprog quanteda Rcpp RcppArmadillo slam stringr]; };
   stmCorrViz = derive2 { name="stmCorrViz"; version="1.3"; sha256="1a4pckrbzsihyf1bqvw3cl0hxrc4yq1pnkgxgf4b8jday6zkxwcv"; depends=[jsonlite SnowballC stm tm]; };
@@ -17283,14 +17358,13 @@ in with self; {
   stosim = derive2 { name="stosim"; version="0.0.14"; sha256="10k8j7manskjsrjc1l44yhy682b1qh0k2jx3cs5k69j2z42mnhmk"; depends=[Rcpp]; };
   stplanr = derive2 { name="stplanr"; version="0.8.7"; sha256="11a0cak6vf5snfpbbv0rbhcjryyd694d6vz1gyshxzwi6wgglhq0"; depends=[curl data_table dplyr geosphere httr jsonlite lwgeom magrittr maptools nabor pbapply raster Rcpp RcppArmadillo rgeos rlang sf sfheaders sp stringr]; };
   stpm = derive2 { name="stpm"; version="1.7.10"; sha256="0y9rpqjn33gdqjvag4kb6dr00w80paspgj9ic25brclfv1zmzbhf"; depends=[MASS nloptr Rcpp RcppArmadillo sas7bdat survival]; };
-  stpp = derive2 { name="stpp"; version="2.0-5"; sha256="1p7dxzfhi5pvva956nyypl7dfdgq3m0cara73hai87qzc342xcf0"; depends=[ggplot2 gridExtra KernSmooth plot3D rgl rpanel spatstat_core spatstat_geom splancs]; };
   str2str = derive2 { name="str2str"; version="0.2.1"; sha256="180m261hr0qr3mnm8hbvjbw3q44cr1kfrnq97fvkpypigdycd9z4"; depends=[abind checkmate plyr reshape]; };
   strand = derive2 { name="strand"; version="0.2.0"; sha256="0gd9nnbdilvk4bszg77bxilan6qpg1np7c38w1b7j5sr3r30y5in"; depends=[arrow dplyr ggplot2 lubridate Matrix R6 Rglpk rlang tibble tidyr yaml]; };
   strap = derive2 { name="strap"; version="1.4"; sha256="0gdvx02w0dv1cq9bb2yvap00lsssklfnqw0mwsgblcy2j6fln7b0"; depends=[ape geoscale]; };
   strat = derive2 { name="strat"; version="0.1"; sha256="1axxrp750kjzcgxjdqfscjmryv1mkv4l23zk8k23z8l4ymhd2f5w"; depends=[Hmisc Rcpp RcppArmadillo]; };
   stratEst = derive2 { name="stratEst"; version="1.1.4"; sha256="1g764h17sh499p0a5ixs61q8l1hssvi7v4c34i90rdf81l72i0mg"; depends=[Rcpp RcppArmadillo]; };
   stratallo = derive2 { name="stratallo"; version="0.1.0"; sha256="0i8vqhf70x25p9z8amka2aaij7r28d83sp0nijim4n225bdfj6sk"; depends=[]; };
-  stratamatch = derive2 { name="stratamatch"; version="0.1.7"; sha256="0jpdf042gzvg9mhkicpiacbk7kc1r7pvkmk47ja8nzs6icw90pqy"; depends=[dplyr Hmisc magrittr rlang survival]; };
+  stratamatch = derive2 { name="stratamatch"; version="0.1.8"; sha256="04shi4qyzqa2xpmwv8jr273575sdn0jkirilqvdj1hhxkb212zks"; depends=[dplyr Hmisc magrittr rlang survival]; };
   stratbr = derive2 { name="stratbr"; version="1.2"; sha256="15vkymmc61yz9szhfhc5663hfyqvh499ahwhr9mv1lhv5bikk0kb"; depends=[Rglpk snowfall stratification]; };
   strategicplayers = derive2 { name="strategicplayers"; version="1.0"; sha256="19vijrlzawd701vvk9ig7yhzbirh39dxxcwfz8ywwvxxiaky5x55"; depends=[sna]; };
   stratification = derive2 { name="stratification"; version="2.2-6"; sha256="1jlks3g8wpqlpci6v0ryyv93agiabdiklmk6ij0pc5icrfiynbhw"; depends=[]; };
@@ -17345,7 +17419,6 @@ in with self; {
   subrank = derive2 { name="subrank"; version="0.9.9.1"; sha256="19lgw7248jq6b34i17c7vw208wsvmppni7njswd02i9xdgyjn95z"; depends=[]; };
   subsamp = derive2 { name="subsamp"; version="0.1.0"; sha256="1bfz2z2qy1war3id8qr1asygwvwxgf2hhlh075hr6bjdkxz0j0nd"; depends=[]; };
   subscore = derive2 { name="subscore"; version="3.1"; sha256="1hb4ci62hxffz09sz0i27jfw7xn0pca87kiq6damz5zi418csa4v"; depends=[boot cocor CTT irtoys ltm sirt]; };
-  subscreen = derive2 { name="subscreen"; version="3.0.5"; sha256="0786p2n1a4xjsxnd31w2b079ggdzx9pgn14d5vbngrc6mgjm9hk8"; depends=[bsplus colourpicker data_table dplyr DT jsonlite plyr purrr randomForestSRC shiny shinyjs shinyWidgets]; };
   subselect = derive2 { name="subselect"; version="0.15.2"; sha256="0ggpm5bq4ncx4302855s8x1nj0afjizmi81cg6b7xc7rvpirw0fq"; depends=[corpcor ISwR MASS]; };
   subsemble = derive2 { name="subsemble"; version="0.1.0"; sha256="125msb0krcdj6jbdvzdl75179ajakb1l0xal45bp38am8w62a6zz"; depends=[SuperLearner]; };
   subspace = derive2 { name="subspace"; version="1.0.4"; sha256="0p2j0lnwj3ym1v4xla6r97zjikb8alnibdc690xn9c0z21hmv43v"; depends=[colorspace ggvis rJava stringr]; };
@@ -17356,7 +17429,8 @@ in with self; {
   sudokuAlt = derive2 { name="sudokuAlt"; version="0.2-1"; sha256="1y3li64xqag2ia8dg7q49jmlb1awl92rz6xa9zsbf0s9jman9wj9"; depends=[magrittr]; };
   sugarbag = derive2 { name="sugarbag"; version="0.1.3"; sha256="05j2b9vbhpkfr3xkam9wgm0w4k8blnm1ssf9cd6l5f1y2rrqizsv"; depends=[dplyr geosphere lwgeom progress purrr rlang rmapshaper sf tibble tidyr utf8]; };
   sugrrants = derive2 { name="sugrrants"; version="0.2.8"; sha256="08cs74afpkvjh32hlrwbl8sdsi3p0ga4ziw32r9pihs28a060fam"; depends=[dplyr ggplot2 gtable lubridate rlang]; };
-  sumFREGAT = derive2 { name="sumFREGAT"; version="1.2.2"; sha256="1phffgscn76xm759jz2fpx82czp91i7q261f6fxlj79kb164njk0"; depends=[GBJ Matrix seqminer]; };
+  sumFREGAT = derive2 { name="sumFREGAT"; version="1.2.3"; sha256="191jb3jc0k6ja12955w7r6s0hl6wmwvax9knrb1hd2i5wxaq556i"; depends=[GBJ Matrix seqminer]; };
+  sumR = derive2 { name="sumR"; version="0.4.4"; sha256="1cpb59yml038ki2kga3hc1fi4l2d1qa0h0kw0f1bq4vjhjab7wf2"; depends=[matrixStats]; };
   sumSome = derive2 { name="sumSome"; version="1.1.0"; sha256="1a70kxvp9d9hn38jnvgk934vwbz4bjb6k4kcngp6rp9gv9h2bh2r"; depends=[ARIbrain pARI Rcpp RNifti]; };
   summariser = derive2 { name="summariser"; version="2.3.0"; sha256="0zliqy8dlcr2yy4ky8k68qn256xvpla8fcv7via19y40bmla37ic"; depends=[dplyr]; };
   summarytools = derive2 { name="summarytools"; version="1.0.0"; sha256="04qcysfywljnqkcz2b7kzpy0xv3ykkvvb14vnda63z1wvmadyhkn"; depends=[base64enc checkmate dplyr htmltools lubridate magick matrixStats pander pryr rapportools tibble tidyr]; };
@@ -17367,8 +17441,10 @@ in with self; {
   supclust = derive2 { name="supclust"; version="1.1-1"; sha256="1iar957gdarp1m677fjmph0ll8zsqiy2bzkzx03gv37k56w1acpd"; depends=[class rpart]; };
   supcluster = derive2 { name="supcluster"; version="1.0"; sha256="1rkd4bpzzvzbmqaj907pqv53hxcgic0jklbsf5iayf0ra768b5w6"; depends=[gtools mvtnorm]; };
   superMDS = derive2 { name="superMDS"; version="1.0.2"; sha256="0jxbwm3izk7bc3bd01ygisn6ihnapg9k5lr6nbkr96d3blpikk04"; depends=[]; };
+  superMICE = derive2 { name="superMICE"; version="1.0.1"; sha256="007qw2ff0mnvwcmi7i1x1gpd54l1zxaqjsw9q55bfshm43zs49mj"; depends=[mice SuperLearner]; };
   superb = derive2 { name="superb"; version="0.9.7.8"; sha256="0szx5xrqfgganmgbqbdinaq9rljnl8b6l6ym56ysfjq0v6az2s8a"; depends=[foreign ggplot2 lsr MASS plyr psych Rdpack shiny shinyBS stringr]; };
   superbiclust = derive2 { name="superbiclust"; version="1.2"; sha256="0mk3d820skp99hl8ilwic2fz90yb9dwy2jq3vfjb726gj1qich3b"; depends=[biclust fabia Matrix]; };
+  supercells = derive2 { name="supercells"; version="0.8.2"; sha256="1qr990f4i8v9mahysadbdy5z692fbf7r4j3vcc707qqhhvwijris"; depends=[cpp11 future_apply philentropy sf terra]; };
   supercompress = derive2 { name="supercompress"; version="1.1"; sha256="1kz04m37r1g4lx4y0kzjn77p3wra2rq21y93v9llikycsh6vzwp1"; depends=[FNN]; };
   superdiag = derive2 { name="superdiag"; version="2.0"; sha256="0zfy9ain6agh276av0p66mks3rap42n8yma0dr6qbc14z3nh8w0m"; depends=[coda]; };
   superheat = derive2 { name="superheat"; version="0.1.0"; sha256="01v8s6px1k5fajlm6py3ksr1i853kwwlky1yryzhy3p1cxhwgg83"; depends=[dplyr ggdendro ggplot2 gtable magrittr plyr scales]; };
@@ -17415,7 +17491,7 @@ in with self; {
   survSens = derive2 { name="survSens"; version="0.1.0"; sha256="1s4s5l31yps93s2zdxpidkdg8kmmwj6vb3zfndmnxvc07arwhvbv"; depends=[directlabels ggplot2 survival]; };
   survSpearman = derive2 { name="survSpearman"; version="1.0.0"; sha256="06xric3fwv2rdrbapsawrg288s2sflzrbx1a4yc7lzxzxbsbs619"; depends=[]; };
   surveil = derive2 { name="surveil"; version="0.1.1"; sha256="135y4qdkwpb8dv63bybspdynfr0d3sqz0ayjm82nhy3flah2v5ka"; depends=[BH dplyr ggdist ggplot2 gridExtra Rcpp RcppEigen RcppParallel rlang rstan rstantools scales StanHeaders tidybayes tidyr]; };
-  surveillance = derive2 { name="surveillance"; version="1.19.1"; sha256="1665n26qs79b3hj4wdp13qjr13w6g32jvbpc4qpcn39bgql6i599"; depends=[MASS Matrix nlme polyCub Rcpp sp spatstat spatstat_geom xtable]; };
+  surveillance = derive2 { name="surveillance"; version="1.20.0"; sha256="0dbqr43fhg5zdh6wzw6licq6c5qqab710gw5ag45l8j1z3q06x8i"; depends=[MASS Matrix nlme polyCub Rcpp sp spatstat_geom xtable]; };
   survexp_fr = derive2 { name="survexp.fr"; version="1.0"; sha256="12rjpnih0xld4dg5gl7gwxdxmrdmyzsymm7j05v98ynldd1jkjl8"; depends=[survival]; };
   survey = derive2 { name="survey"; version="4.1-1"; sha256="0ljsszybzri531q6xab04r6zq11vchfs7y0snjzk57m3g0b9ms05"; depends=[lattice Matrix minqa mitools numDeriv survival]; };
   surveyCV = derive2 { name="surveyCV"; version="0.1.1"; sha256="03pyxav8z223qplsi9srmaf156zgdy3814k5krgskb86bhi0881d"; depends=[magrittr survey]; };
@@ -17426,21 +17502,20 @@ in with self; {
   surveyplanning = derive2 { name="surveyplanning"; version="4.0"; sha256="19ydgcwyvkhknf4qmlw7j25skcj9a4rd6s8j5n7bdqpljl60zync"; depends=[data_table laeken]; };
   surveysd = derive2 { name="surveysd"; version="1.3.0"; sha256="0d5xjdlccqaa1h437rz5zq6a829rpz426m55jgprhfpcps1wfhbk"; depends=[data_table ggplot2 laeken Rcpp]; };
   survidm = derive2 { name="survidm"; version="1.3.2"; sha256="0ass7ffpk70ph7dcdjm2f6xyzqaavlkhr1pcij2vcasiy4v1vyiv"; depends=[doParallel doRNG foreach ggplot2 gridExtra KernSmooth np plotly Rcpp survival TPmsm]; };
-  survival = derive2 { name="survival"; version="3.2-13"; sha256="0zrikancm9shixvgng89f1610sphlwljczi0fnjbdqn4l85rrarz"; depends=[Matrix]; };
+  survival = derive2 { name="survival"; version="3.3-1"; sha256="1isdrcvrzi118xiyigckj9sq1xl4m92180brmpzdqzhcrl2qg1ql"; depends=[Matrix]; };
   survival_svb = derive2 { name="survival.svb"; version="0.0-2"; sha256="13lipzn1cnkd5dcg8n69cdghycifiin3jnjvgzsv0g60l1jk0lmp"; depends=[glmnet Rcpp RcppEigen survival]; };
   survival666 = derive2 { name="survival666"; version="0.5"; sha256="11vs546lrbxnhpxjmwxhh2hnp6kwcf4hzgigi3x9525hr8n9cy01"; depends=[ggplot2 survival survminer]; };
-  survivalAnalysis = derive2 { name="survivalAnalysis"; version="0.2.0"; sha256="1sx7xjqkwc3788j0520kgv602m3gdlmpg1ps9fm8lhsjb8dmvlya"; depends=[cowplot dplyr forcats ggplot2 gridExtra magrittr purrr rlang scales stringr survival survminer tibble tidyr tidytidbits]; };
+  survivalAnalysis = derive2 { name="survivalAnalysis"; version="0.3.0"; sha256="0s4cihmjhg94zcbvr7c1pxdjyc0rpbqlw1gni5xkdhqp4lnqmygf"; depends=[cowplot dplyr forcats ggplot2 gridExtra magrittr purrr rlang scales stringr survival survminer tibble tidyr tidytidbits]; };
   survivalMPL = derive2 { name="survivalMPL"; version="0.2-1"; sha256="1rskhawhpkzi3laq452kgr1740p6998z7c7p95f2023ymkdm4rxv"; depends=[MASS survival]; };
   survivalMPLdc = derive2 { name="survivalMPLdc"; version="0.1.1"; sha256="1wqlzpwm1p7nq19l3d7c93zv6fnn0b1w24kak9zwsgyhar3f5lv9"; depends=[copula matrixcalc splines2 survival]; };
   survivalROC = derive2 { name="survivalROC"; version="1.0.3"; sha256="0wnd65ff5w679hxa1zrpfrx9qg47q21pjxppsga6m3h4iq1yfj8l"; depends=[]; };
-  survivalmodels = derive2 { name="survivalmodels"; version="0.1.9"; sha256="13plpgvxlljd953kv0krzzs1rfgl4yv9s7s5naplqfzjrapk0j7z"; depends=[Rcpp]; };
+  survivalmodels = derive2 { name="survivalmodels"; version="0.1.11"; sha256="0las1appms4j2g7c31yxm49z1aq2ahjgczilh4m3yy0xg5nckyr1"; depends=[Rcpp]; };
   survivalsvm = derive2 { name="survivalsvm"; version="0.0.5"; sha256="1b4hrdrqq1z0kfn8vpdwg54388m25df2s6w9i574x3mkxkmkjkga"; depends=[Hmisc kernlab Matrix pracma quadprog survival]; };
-  survivoR = derive2 { name="survivoR"; version="0.9.9"; sha256="0cvr4lvfrnlx5cb7zszqq7qx30p5s7w56k2c0nfdkx8b6inrvqbq"; depends=[dplyr ggplot2 magrittr stringr tidyr]; };
+  survivoR = derive2 { name="survivoR"; version="0.9.12"; sha256="0mda9zjag453m60c2njzjpifz88q09vjkys0xds8vsdzmi70vjvv"; depends=[dplyr ggplot2 magrittr stringr tidyr]; };
   survminer = derive2 { name="survminer"; version="0.4.9"; sha256="0byh0wxdbjfwdrzsnqv4xlmnik6lj0vkkzfxy7lssk8dv5zmj7nz"; depends=[broom dplyr ggplot2 ggpubr ggtext gridExtra magrittr maxstat purrr rlang scales survival survMisc tibble tidyr]; };
   survmixer = derive2 { name="survmixer"; version="1.3"; sha256="00s06h7nn8li4d2kn4yzlnj3px1wkpvnx5w73y98cvrcwm0ad71g"; depends=[]; };
   survsim = derive2 { name="survsim"; version="1.1.8"; sha256="0gv54bd94a6vdz8li0j409qv7r0h4d681l1p9hj9ilzk7y5bfm70"; depends=[eha statmod]; };
   survtmle = derive2 { name="survtmle"; version="1.1.1"; sha256="1l13rvwq4915ij2a55fxdj3b3wkgjca1fbqzcgkjlpzkcn97k1nj"; depends=[dplyr ggplot2 ggsci Matrix plyr speedglm stringr SuperLearner tidyr]; };
-  survxai = derive2 { name="survxai"; version="0.2.2"; sha256="09ig561754kjzpay2hy3n62zlk0bgwkjy8vnslrr428r8m1lj0qr"; depends=[breakDown ggplot2 pec prodlim scales survival survminer]; };
   susieR = derive2 { name="susieR"; version="0.11.92"; sha256="1wlw41vslbgf6dmppn2hv2mqrnnza5091qzjl0qjaydsp97h5b3b"; depends=[crayon ggplot2 Matrix matrixStats mixsqp reshape]; };
   sutteForecastR = derive2 { name="sutteForecastR"; version="0.1"; sha256="13dd0v3l3s7xb1wnpf6qvnvclzab87831z8bsxsq53vpb26xcw1b"; depends=[forecast forecastHybrid fracdiff robets]; };
   svDialogs = derive2 { name="svDialogs"; version="1.0.3"; sha256="0j00xjvkwv992ir48czhvyj29rb9vpd243vbyyj2binn0q0qa431"; depends=[rstudioapi svGUI]; };
@@ -17477,7 +17552,7 @@ in with self; {
   swamp = derive2 { name="swamp"; version="1.5.1"; sha256="1mj6cqrc19p07v051fg6ikhhbccsg2lvz7wjiakaswqqm0269843"; depends=[amap gplots impute MASS]; };
   swatches = derive2 { name="swatches"; version="0.5.0"; sha256="1kivscgka8gn44rjj0s5sjan1s04znnyn0nd37a74zaik0hm8zs0"; depends=[colorspace httr pack stringr xml2]; };
   swdft = derive2 { name="swdft"; version="1.0.0"; sha256="0529rw8nsl48hwiy741alvrzg5d5q1nhnjshrsfwchm5kdv0igva"; depends=[]; };
-  swdpwr = derive2 { name="swdpwr"; version="1.6"; sha256="0gyys5lv8zp6n8ywlnqnzpnmpply32ghhwiwi6rilin08nbd0wm8"; depends=[spatstat_core]; };
+  swdpwr = derive2 { name="swdpwr"; version="1.7"; sha256="0mljayrs629d0pxbd9lzzplvs31i33fqb0bfb01ryvwyv0ckwjx9"; depends=[spatstat_random]; };
   sweater = derive2 { name="sweater"; version="0.1.4"; sha256="1il3jmcawzy4pjdv0vhril37y5wqlczr0sapsnqgrmcc4szbsba9"; depends=[cli data_table LiblineaR proxy purrr quanteda Rcpp]; };
   sweep = derive2 { name="sweep"; version="0.2.3"; sha256="1705mcp9p5h50ifqjjwx61z5wl5izv889nxcgdkx1i0dlcr61l2a"; depends=[broom dplyr forecast lubridate rlang tibble tidyr timetk]; };
   sweidnumbr = derive2 { name="sweidnumbr"; version="1.4.2"; sha256="0zzjvwd60w9b5ybsb72aqa42sx6al4ymr591j3zryxgpl6rms5rh"; depends=[checkmate lubridate stringr]; };
@@ -17532,11 +17607,11 @@ in with self; {
   sysid = derive2 { name="sysid"; version="1.0.4"; sha256="0fr9gf5yjin3zvz850z4r4pqc1r4mwx8d46sl64i4csdm9qnqagy"; depends=[bitops ggplot2 polynom reshape2 signal tframe zoo]; };
   syslognet = derive2 { name="syslognet"; version="0.1.2.1"; sha256="0nwni2mn7w43pfasqa2dwy1l6r0ymlkwlsyd5q47fajdr8v1ir0q"; depends=[]; };
   systemfit = derive2 { name="systemfit"; version="1.1-24"; sha256="180ah91i98gjswpbkkdjgnc2c9rz3pl5bw035iks92nd5vl6w5wz"; depends=[car lmtest MASS Matrix sandwich]; };
-  systemfonts = derive2 { name="systemfonts"; version="1.0.3"; sha256="1fmv1ni77ncz6rrm4iv8a7l6pbqnk2ri0yzad2bs943gxbarjz34"; depends=[cpp11]; };
+  systemfonts = derive2 { name="systemfonts"; version="1.0.4"; sha256="1h44bal845jp7ya8i7ff1kz1n3wklkb00jk6hb9lgwa2p5snqxpg"; depends=[cpp11]; };
   systemicrisk = derive2 { name="systemicrisk"; version="0.4.2"; sha256="021ypw9fag5kmk2q041pj2jfzgfg640yda7wvh0yzdmg73p6fvsw"; depends=[lpSolve Rcpp]; };
   syt = derive2 { name="syt"; version="0.2.0"; sha256="1pfl3d6laa075z88fqgjnrsn21lgjsak0bjdws09b9knc0ifgfsz"; depends=[Matrix partitions]; };
   syuzhet = derive2 { name="syuzhet"; version="1.0.6"; sha256="16iccqdbw02iw82nah6kwz3gwfghi864j2y698n4b9dyc386ijzv"; depends=[dplyr dtt NLP rlang textshape tidyr zoo]; };
-  tLagPropOdds = derive2 { name="tLagPropOdds"; version="1.6"; sha256="0hgkg359rvinlijhd58x4236v7cmf9hmfn8ngb1i4f95s9v3v7ch"; depends=[dplyr R_utils survival]; };
+  tLagPropOdds = derive2 { name="tLagPropOdds"; version="1.7"; sha256="1wsjpn9n1bnhas9bl1kaas9dnmifr7p4g12ys19pvic3gj0867kb"; depends=[dplyr R_utils survival]; };
   tRnslate = derive2 { name="tRnslate"; version="0.0.3"; sha256="0sm0cqxylsxmnhqs1c8w81d6q2sj7nmm86mds59kiyspy9m67sbc"; depends=[]; };
   tRophicPosition = derive2 { name="tRophicPosition"; version="0.7.7"; sha256="1j06rc5s6jpz8i116m98ygc75sx6lk8jd9gw6fb8q342mbbmqh8h"; depends=[coda data_table ggplot2 gridExtra hdrcde MCMCglmm plyr rjags]; };
   tTOlr = derive2 { name="tTOlr"; version="0.2"; sha256="1fk33vp6y65mls1iczjf63wzj1rl1knbdcbd4rnqqfdcqhibb3p3"; depends=[lattice latticeExtra]; };
@@ -17553,12 +17628,13 @@ in with self; {
   tableExtra = derive2 { name="tableExtra"; version="1.0.1"; sha256="1rbcxd3rjhvcpayj6d7mh30vkbc7g4mv4qa7552xz3x1wny0n4mm"; depends=[gtable]; };
   tableHTML = derive2 { name="tableHTML"; version="2.1.0"; sha256="01bffjqi2qs66w67l5nc0imqdcaf4cky930srkd2wmvvawv85kwc"; depends=[htmltools jpeg magrittr png shiny webshot]; };
   tableMatrix = derive2 { name="tableMatrix"; version="0.82.0"; sha256="1sskijhbqakamrk2rv7v5zpjsdi8jw0jl2z96l0vhsvsiq0cz1c8"; depends=[data_table]; };
+  tableeasy = derive2 { name="tableeasy"; version="1.1.1"; sha256="1xvhxgdpx0a4fk4fv59i1kxplzzqyzjd3ha93l5wjadkl9hijwr9"; depends=[lmtest mgcv nortest survival tableone]; };
   tableone = derive2 { name="tableone"; version="0.13.0"; sha256="0ihk29gcbqvvif2y8aalgnpq8y87irrp8z6ik4iaxh2xb6ksawqw"; depends=[e1071 gmodels labelled MASS nlme survey zoo]; };
   tablerDash = derive2 { name="tablerDash"; version="0.1.0"; sha256="1mnp6lxa7d669r325aynq1n3f35r9sy4v1fvdh4cymbf33s8mkmm"; depends=[htmltools knitr shiny]; };
   tables = derive2 { name="tables"; version="0.9.6"; sha256="1y0gnqd2q0gn1dr2nxdlsvyl4g5jnj9y9lx18bhvhrfzb5038j5w"; depends=[htmltools knitr]; };
   tableschema_r = derive2 { name="tableschema.r"; version="1.1.1"; sha256="14cnbijxdhf7qbsiqbk8p516mfh9bgdbcg32vn5pycsp30k78b2h"; depends=[config future httr iterators jsonlite jsonvalidate lubridate purrr R6 RCurl rlist stringr urltools]; };
   tablesgg = derive2 { name="tablesgg"; version="0.8-1"; sha256="0vkl9386qnalr5d0libqs2ihszggs0qyx6ffyjn8j8ab3kczzxhr"; depends=[ggplot2 tables]; };
-  tablet = derive2 { name="tablet"; version="0.4.8"; sha256="17s13srv58jyxchcy44dnl1p7zbsy0ah2sx3im2cjs6n6sw3yxwl"; depends=[dplyr DT kableExtra rlang spork tidyr]; };
+  tablet = derive2 { name="tablet"; version="0.4.9"; sha256="1xn4iyah82y1y0mrg0c7sq7g69b0mah6bxrmn4iy7pxx4by54wc0"; depends=[dplyr DT kableExtra rlang spork tidyr]; };
   tabnet = derive2 { name="tabnet"; version="0.3.0"; sha256="04m8bg1glnhxb2pjcxnwlcwzbxvk0bskz00dkd4lyvgsq74xwmvi"; depends=[coro glue hardhat magrittr progress rlang tibble torch vctrs]; };
   tabr = derive2 { name="tabr"; version="0.4.5"; sha256="1nkzbqy9nb6pd895glld009vmry5rnhd7h9q31s8xh97kwlwk9c2"; depends=[crayon dplyr ggplot2 magrittr purrr tibble tidyr]; };
   tabshiftr = derive2 { name="tabshiftr"; version="0.3.2"; sha256="09fmz9p6ky1z45f4vyp5cq267cijhd5q9aqwwk7r830jhwnm9547"; depends=[checkmate crayon dplyr magrittr purrr rlang stringr testthat tibble tidyr tidyselect]; };
@@ -17567,6 +17643,7 @@ in with self; {
   tabularMLC = derive2 { name="tabularMLC"; version="0.0.3"; sha256="1gppzbf780ci4vrvy7rd3xa0bvwxca5f05a9xk194xv913vyd440"; depends=[Rcpp RcppArmadillo]; };
   tabularaster = derive2 { name="tabularaster"; version="0.7.0"; sha256="061nc82svcz37lvwsx549rn6s2q6x75wjs0j9k8zcvlzr5wyyfgi"; depends=[dplyr fasterize magrittr raster silicate spatstat_geom tibble]; };
   tabularmaps = derive2 { name="tabularmaps"; version="0.1.0"; sha256="07i76n2fpl2ma6jl3zdbay0zmmaaxrxhv1368xm2d575br42nri4"; depends=[ggforce ggplot2 purrr rlang]; };
+  tabulate = derive2 { name="tabulate"; version="0.1.0"; sha256="1x5rf8shd3jxa7k8p8ak5a6c2fmxv476is5vlrg1fsg6f964h01v"; depends=[cli magrittr Rcpp rlang]; };
   tabulator = derive2 { name="tabulator"; version="1.0.0"; sha256="1dylmw5prwir3qj13lxkvlzq6j7r23y3gz1g0bjyanb0xmzgxn4k"; depends=[assertthat data_table dplyr magrittr purrr rlang stringr tibble tidyr]; };
   tabulog = derive2 { name="tabulog"; version="0.1.1"; sha256="0n6qjd7kmvxx5na71f358pw3bbwa69vh8qjkrs5mkb3izxabcq67"; depends=[yaml]; };
   tabxplor = derive2 { name="tabxplor"; version="1.0.2"; sha256="0gwnw4psgz5byfrpvm3s5bfc13fwmw0wh8fafrr8rpbwm8gy33fy"; depends=[cli crayon DescTools dplyr forcats kableExtra magrittr pillar purrr rlang stringi stringr tibble tidyr tidyselect vctrs]; };
@@ -17593,12 +17670,12 @@ in with self; {
   tau = derive2 { name="tau"; version="0.0-24"; sha256="1q8pd7m6rd0899c44plxns5yydifhsccyb51glgw07ni5v4rz3gh"; depends=[]; };
   tauturri = derive2 { name="tauturri"; version="0.3.0"; sha256="014301f5mzy6vblqzb61bxjv46kdynmmrxjpxyvk01w1k8wkwfcn"; depends=[httr magrittr plyr purrr tibble]; };
   taxa = derive2 { name="taxa"; version="0.4.0"; sha256="1clvq69z68xidv5m1s8vmavh8l6bv6dpb9iln7axb5jbj0iqx1xj"; depends=[cli crayon dplyr jsonlite knitr lazyeval magrittr pillar R6 rlang stringr tibble tidyr vctrs viridisLite]; };
-  taxadb = derive2 { name="taxadb"; version="0.1.3"; sha256="1ai2p58h75170wh8701dpyjb9cx5lfzx5xpq33l4w8pybh24zaab"; depends=[arkdb contentid curl DBI dbplyr dplyr duckdb jsonlite magrittr memoise progress rappdirs readr rlang RSQLite stringi tibble]; };
+  taxadb = derive2 { name="taxadb"; version="0.1.4"; sha256="00cbbma9wahm6ka75kzpfqgns0cr2z2ri6bpp919icwkvi5rpbmr"; depends=[arkdb contentid curl DBI dbplyr dplyr duckdb jsonlite magrittr progress R_utils rappdirs readr rlang stringi tibble]; };
   taxalight = derive2 { name="taxalight"; version="0.1.5"; sha256="035jzz1dk1icxs9mbd6q091ljf1lalr0wwbcz6a90avwyqphjjx3"; depends=[contentid thor]; };
   taxize = derive2 { name="taxize"; version="0.9.99"; sha256="0738fzckbwkgf21vranxhcfjq487rp3kjdnz2gfvdd1dm21jfp8s"; depends=[ape bold cli conditionz crayon crul data_table foreach jsonlite natserv phangorn R6 ritis rotl rredlist tibble wikitaxa worrms xml2 zoo]; };
   taxizedb = derive2 { name="taxizedb"; version="0.3.0"; sha256="1d7wz6df624263myq4rlvr3mhzhhhdglrrs7f44j201z4f536a2z"; depends=[curl DBI dbplyr dplyr hoardr magrittr readr rlang RSQLite tibble]; };
   taxlist = derive2 { name="taxlist"; version="0.2.2"; sha256="0xdl7aw3ifn4v2wclk38iyayy9r71cx5diir1m4pws986qfdddb4"; depends=[foreign stringdist taxa taxize vegdata]; };
-  taxonbridge = derive2 { name="taxonbridge"; version="1.0.1"; sha256="1miqh3g75199w65k9f6gbkpdylms2gr43g9ncv6145nbf6f5cqk6"; depends=[dplyr ggplot2 purrr rje vroom]; };
+  taxonbridge = derive2 { name="taxonbridge"; version="1.0.4"; sha256="18n87w3nf3qb5f1ci0bcq7mji14mxh5cx6klb6qw4g8qzr35cznk"; depends=[dplyr ggplot2 purrr rje vroom withr]; };
   taxonomizr = derive2 { name="taxonomizr"; version="0.8.0"; sha256="0i1xn5x8c555hdlnfbhpga4vzn1l6kcqjgcw472y8yg0n7s2birx"; depends=[curl data_table R_utils RSQLite]; };
   taxotools = derive2 { name="taxotools"; version="0.0.79"; sha256="1q69dh1ifa7mc8y3bdgvvg97s9prflh6mczqr4clxnsysd3xhafs"; depends=[plyr sqldf stringdist stringr taxize wikitaxa]; };
   tayloRswift = derive2 { name="tayloRswift"; version="0.1.0"; sha256="1gr179hzqxih49v214dqawfhsbsahhyj1lbj77vqv00zq1siigpl"; depends=[]; };
@@ -17616,7 +17693,7 @@ in with self; {
   tcl = derive2 { name="tcl"; version="0.1.1"; sha256="01klrzvw7vc0iwqpmcikgqm8jx3g7536r5f8gb6vwcik912maxnl"; depends=[colorspace eRm lattice ltm MASS Matrix numDeriv psych psychotools]; };
   tcltk2 = derive2 { name="tcltk2"; version="1.2-11"; sha256="1ibxld379600xx7kiqq3fck083s8psry12859980218rnzikl65d"; depends=[]; };
   tclust = derive2 { name="tclust"; version="1.4-2"; sha256="1nb5iky4kc832627jf28lzj19wrvgwg5da6fyl3kyf0npmyx1p4m"; depends=[]; };
-  tcpl = derive2 { name="tcpl"; version="2.0.2"; sha256="0xic4jy8ldawmkvvwckiyy57ai5wif9yn7hyfndbxr6mvjl3rbbc"; depends=[data_table DBI numDeriv RColorBrewer RMySQL sqldf]; };
+  tcpl = derive2 { name="tcpl"; version="2.1.0"; sha256="1rp5i3va11l12q37hl1v26k21i88giganyzycb6x8flank1myjwr"; depends=[data_table DBI numDeriv RColorBrewer RMariaDB sqldf]; };
   tcplfit2 = derive2 { name="tcplfit2"; version="0.1.3"; sha256="1y69z27mgphcj5qkhlpgv0as59aralimf7mbfrdz5n6nkqfj5krr"; depends=[future future_apply numDeriv RColorBrewer stringr]; };
   tcsinvest = derive2 { name="tcsinvest"; version="0.1.1"; sha256="1harmb5ni70k241aq1vww5w7fmjqmlwd6nfma2xa44f3hj7nrf52"; depends=[data_table httr jsonlite websocket]; };
   td = derive2 { name="td"; version="0.0.6"; sha256="1zycwnl7n03jw76n8qrk2zhgnakj6npid25pflj6dnmbjc47ih32"; depends=[RcppSimdJson]; };
@@ -17637,9 +17714,10 @@ in with self; {
   telegram = derive2 { name="telegram"; version="0.6.0"; sha256="02wwa115f0vz2d9y4nf01397hjkpc3cv2gdl47snrajrm41gji7y"; depends=[curl httr jsonlite R6]; };
   telegram_bot = derive2 { name="telegram.bot"; version="2.4.0"; sha256="1bvfnr6k0zxdawrf63yh8wj9hcgq1xvy791xbqhiy0isaa86yfw9"; depends=[curl httr jsonlite R6]; };
   telemac = derive2 { name="telemac"; version="0.1.1"; sha256="12wkhya49yi0qqm73sizgnf6r5lkssg07wc6pq9iychjjd0cxfly"; depends=[data_table dplyr fs gstat magrittr purrr raster Rcpp RcppArmadillo rlang sf sp stringr sys tidyr tidyselect]; };
-  tempR = derive2 { name="tempR"; version="0.9.9.19"; sha256="0gr60hlah6lngkak158xqxbdavgad3kyq4casc686f52hz1llwic"; depends=[]; };
+  tempR = derive2 { name="tempR"; version="0.9.9.20"; sha256="12wnb9w5ql4q9n0gppjaxa66rrmdp0mklrhpp1chf9qr9wyzjkxi"; depends=[]; };
   tempdisagg = derive2 { name="tempdisagg"; version="1.0"; sha256="1n1ng7xki4syy305gsclz7wrqb48vkjw3la0vxs975apv1mc4pzr"; depends=[]; };
   temperatureresponse = derive2 { name="temperatureresponse"; version="0.2"; sha256="1id3wjzfs132hj8cm7gpf105qaay9dff07ixah9rmn5sk6si0zmq"; depends=[AICcmodavg broom dplyr minpack_lm numDeriv rootSolve]; };
+  templateICAr = derive2 { name="templateICAr"; version="0.3.1"; sha256="1786anjsw2qnbpq6c0xwzngm6qzi84475xms5mqcmmf8vwsa0hbd"; depends=[abind ciftiTools excursions fMRIscrub ica Matrix matrixStats pesel SQUAREM]; };
   templates = derive2 { name="templates"; version="0.3.0"; sha256="0xnzj3cvhw1r7zfqaijbfdyclka61jwixcdh05a5z9qwgv0076sh"; depends=[dat magrittr stringr]; };
   tempoR = derive2 { name="tempoR"; version="1.0.4.4"; sha256="0gn16j496833pvbjaf6wx26z9ilwssjp947mcyk6n2jb33x93rr2"; depends=[doParallel foreach pls]; };
   tenispolaR = derive2 { name="tenispolaR"; version="0.1.4"; sha256="0xpp1hi3xnkg55aixgy2bp5476i503h8gsiss9x7f15274kx0d7s"; depends=[stringr]; };
@@ -17648,19 +17726,19 @@ in with self; {
   tensorBF = derive2 { name="tensorBF"; version="1.0.2"; sha256="1dw1a6xqcsl4isbzbfiplgqq5nak5n9ffzm23mzzmkh1r1a8kl1y"; depends=[tensor]; };
   tensorBSS = derive2 { name="tensorBSS"; version="0.3.8"; sha256="1chgkdshjpxzy0cxkgjzpr5k4v2hyad1vchrxyqhsj9isfic2581"; depends=[abind fICA ggplot2 ICtest JADE Rcpp RcppArmadillo tensor tsBSS]; };
   tensorTS = derive2 { name="tensorTS"; version="0.1.2"; sha256="0hwskjw611vlrd3q6yypgk6g8p704yih6m9869hjyn3x0rf2kw7n"; depends=[abind expm MASS Matrix pracma rTensor tensor]; };
-  tensorflow = derive2 { name="tensorflow"; version="2.7.0"; sha256="0xgm8jb1hl8564vviqys3aqwzvfbh0d43m154cj07j9spdz306ng"; depends=[config processx reticulate rstudioapi tfautograph tfruns yaml]; };
+  tensorflow = derive2 { name="tensorflow"; version="2.8.0"; sha256="19ayjvlxmgjais0kx6fj9an1h1i8mh4c9dhah7dj6390p53pgz93"; depends=[config processx reticulate rstudioapi tfautograph tfruns yaml]; };
   tensorr = derive2 { name="tensorr"; version="0.1.1"; sha256="18xdvp328h96jn8y1iayxh7cyz2s8j5nn43nq18pyaxq271hkfyh"; depends=[assertive_base assertive_properties assertive_types Matrix purrr]; };
   tensorregress = derive2 { name="tensorregress"; version="4.0"; sha256="0pb512v3gahgv3qc31i5v2jg8wixi6ps3p920sq5dgpfrig9hg2q"; depends=[MASS pracma speedglm]; };
   tensorsparse = derive2 { name="tensorsparse"; version="3.0"; sha256="0xx003nh5bi87cbsqb7ikpcs4yhjhphh7pybzzas44qkwbn4fn1k"; depends=[]; };
   tensr = derive2 { name="tensr"; version="1.0.1"; sha256="1z6b3ra7fgn88mxbhsq65x3frj5j7p17n119s9kbw7sg9y633vfx"; depends=[assertthat]; };
   tergm = derive2 { name="tergm"; version="4.0.2"; sha256="0r1afidhfwmfkihcmry37j9imq26b55m84nxgv3r03y9cq8xdcas"; depends=[coda ergm MASS network networkDynamic nlme purrr robustbase statnet_common]; };
   tergmLite = derive2 { name="tergmLite"; version="2.5.5"; sha256="0sg19ppvmy1wfqbvchn98maxiqzaa67yz64g4mhyxviksh1yzwxd"; depends=[ergm network networkDynamic Rcpp statnet_common tergm tibble]; };
-  term = derive2 { name="term"; version="0.3.3"; sha256="04zl9hb3kgji5y3lq7d1pa4fh7mr0kxxjx1pmyj3dla8mqjxv22r"; depends=[chk extras lifecycle purrr rlang universals vctrs]; };
+  term = derive2 { name="term"; version="0.3.4"; sha256="0pa275bzqbi0y58qy6pn5n289w8l5pndmr94sm64al2xdrl4hddl"; depends=[chk extras lifecycle purrr rlang universals vctrs]; };
   ternvis = derive2 { name="ternvis"; version="1.2"; sha256="057i6i3ygxrin0npc18gsg3dpdldzafyb5sr6lix5mhy6b09lkxf"; depends=[dichromat maps quadprog]; };
-  terra = derive2 { name="terra"; version="1.5-17"; sha256="1rz6dd78i3aq82vl9q4fw17y5cxj2pcmra5mlhb0ca1df78mgb77"; depends=[Rcpp]; };
+  terra = derive2 { name="terra"; version="1.5-21"; sha256="0gzl0ka19jjw0dmaghjk2sgwi78kkz4w3rlfkym62rdarhlfj7h9"; depends=[Rcpp]; };
   terrainmeshr = derive2 { name="terrainmeshr"; version="0.1.0"; sha256="1xab6wzq2izzdvsss1rlgp5m3cn45naxhymq6cglipj0fd792jbr"; depends=[Rcpp]; };
-  terrainr = derive2 { name="terrainr"; version="0.6.0"; sha256="16wwvhxa56qcm8jfni9q7fg1iv7h56z71hvckivi07n4dkgml2ci"; depends=[base64enc ggplot2 httr magick png raster rgdal sf units]; };
-  tessellation = derive2 { name="tessellation"; version="1.0.0"; sha256="1v6c3k8724qlrijmn56xjlkryb2f5kp67h77h5cq6av5qnf3jyv0"; depends=[cxhull english hash R6 randomcoloR rgl scales sets]; };
+  terrainr = derive2 { name="terrainr"; version="0.6.1"; sha256="0xxvd536zgnmgb6p9fvkxaga4mqgb7qzd69xp8zm77a380j8dk05"; depends=[base64enc ggplot2 httr magick png raster rgdal sf units]; };
+  tessellation = derive2 { name="tessellation"; version="2.0.0"; sha256="1pgjaisykyh0096ilfxhp5hlh6p82lsi0p184jfig84afcihn9p8"; depends=[cxhull english hash interp R6 randomcoloR rgl Rvcg scales sets]; };
   tesseract = derive2 { name="tesseract"; version="5.0.0"; sha256="1xdwjm3bing15ljdicl20g88ymmd0bbjmlbah5hzvws5b656iicn"; depends=[curl digest pdftools rappdirs Rcpp]; };
   testDriveR = derive2 { name="testDriveR"; version="0.5.1"; sha256="0wjdqvsyv33fsg1lljp9m0bhz38mpfgpgickgj4zdspc9x6lbnv6"; depends=[]; };
   testarguments = derive2 { name="testarguments"; version="0.0.1"; sha256="1x77z0pljfi6z4bs6db3zsjbpyypsd3jbd0ykh4pq07595phh8x5"; depends=[dplyr ggplot2 magrittr plyr reshape2]; };
@@ -17678,8 +17756,8 @@ in with self; {
   tetragon = derive2 { name="tetragon"; version="1.0.0"; sha256="17n6g262f19bvxh0i35xcpf9qbdzaff80vvmx8vsijjiniw2hrbq"; depends=[abind ggplot2 greybox imputeTS lubridate modeest moments narray philentropy purrr readr scales stringr tictoc]; };
   texPreview = derive2 { name="texPreview"; version="1.5"; sha256="11njmn29qq50iff30in9i0yfi6ypnpqsx3317smr9fiw3hgda3c5"; depends=[base64enc details fs htmltools knitr lifecycle magick magrittr rematch2 rstudioapi svgPanZoom whisker xml2]; };
   texmex = derive2 { name="texmex"; version="2.4.8"; sha256="115x7j2kvifzsrmh8zy6xymm1p01sxk4c26zdmi0p51bsgvs46ih"; depends=[ggplot2 mvtnorm Rcpp]; };
-  texreg = derive2 { name="texreg"; version="1.37.5"; sha256="0cb3kvxfi9k9g958fkb73cgqdxx3h9bz2cnaakic4wgrkv27mk2c"; depends=[httr]; };
-  text = derive2 { name="text"; version="0.9.10"; sha256="1ramsv2pbg57yyxp5qjkls82gl5icda6f5116hr0w5s0w3jpajmj"; depends=[cowplot dplyr furrr future ggplot2 ggrepel magrittr parsnip purrr recipes reticulate rlang rsample stringr tibble tidyr tokenizers tune workflows yardstick]; };
+  texreg = derive2 { name="texreg"; version="1.38.5"; sha256="1d0syszvxhxiplwsbq12s6rw4lrrbn4w3mmljs7vkw8p4gd8fp78"; depends=[httr]; };
+  text = derive2 { name="text"; version="0.9.50"; sha256="0s81j3kbrzxcfbwxnk5hbdqlb3pjmlxjswjy8pj7s13h5gnsm1bw"; depends=[cowplot dplyr furrr future ggplot2 ggrepel magrittr overlapping parsnip purrr recipes reticulate rlang rsample stringi tibble tidyr tune workflows yardstick]; };
   text_alignment = derive2 { name="text.alignment"; version="0.1.2"; sha256="0qjnzdm7savn2jqmm23cd3rszyihnhb5rfnygc36ccfd15vav79j"; depends=[Rcpp]; };
   text2map = derive2 { name="text2map"; version="0.1.3"; sha256="0p8knb450rz79531cb9kkc4rlns3p7qrq212jss2jcwxfnl640dv"; depends=[doParallel dplyr fastmatch foreach igraph kit magrittr Matrix mlpack qgraph rlang stringi stringr text2vec tibble]; };
   text2sdg = derive2 { name="text2sdg"; version="0.1.2"; sha256="1yq46jh11jymiqb4dmbvl1w35jq9ww6v3kra8px013qfdxvdnvlg"; depends=[corpustools dplyr ggplot2 magrittr stringr tibble tidyr]; };
@@ -17730,20 +17808,21 @@ in with self; {
   tgp = derive2 { name="tgp"; version="2.4-17"; sha256="0hl9nv2nayhq9jiy6lrgn702lb95allqiq8v221rj9pzxpc1230c"; depends=[maptree]; };
   tgram = derive2 { name="tgram"; version="0.2-3"; sha256="0vlnry8drq3fqfy8dk50pcwcx9dj657kx6s19fs2b6acigkr4g7w"; depends=[zoo]; };
   tgstat = derive2 { name="tgstat"; version="2.3.16"; sha256="12apvcpdwfng0sp2v80xvpk7ynbadi2lvbfk14hlcsvw8h3rb268"; depends=[]; };
+  tgver = derive2 { name="tgver"; version="0.2.0"; sha256="0p8pm47kpajwhhk3a96rl2nfj69qqvbw5qwp1in3qv11wxv4cbyj"; depends=[callr geojsonsf plumber]; };
   thankr = derive2 { name="thankr"; version="1.0.0"; sha256="089ikp85d5ia6a1qzmw8dkgcmz628cibmwfzcpk7m3ii8acxq91w"; depends=[]; };
   theiaR = derive2 { name="theiaR"; version="0.4.0"; sha256="07m532r67cil2ya2w9lfhycrm8n0ga0r3x7jwbp5jbd83hw4l1p6"; depends=[askpass httr R6 raster XML]; };
   thematic = derive2 { name="thematic"; version="0.1.2.1"; sha256="1hr9373256n1rya3l2z2sqwfifypsh6wrs2s27aqchh9sm0blkmy"; depends=[farver ggplot2 rappdirs rlang rstudioapi scales]; };
   themis = derive2 { name="themis"; version="0.1.4"; sha256="0zc7djygyiy1sjgvbznb6nqcglfnbybxaz5frphns92m7smqy0l9"; depends=[dplyr generics purrr RANN recipes rlang ROSE tibble unbalanced withr]; };
   thermocouple = derive2 { name="thermocouple"; version="1.0.2"; sha256="1rlvhw3i83iq1vibli84gj67d98whvgkxafwpmisva1m4s1bmij4"; depends=[]; };
   thestats = derive2 { name="thestats"; version="0.1.0"; sha256="15y6ibw7i4nrm8990yirqf64gl1x4l7lj3ajk19vi6ccxw82x2gl"; depends=[dplyr]; };
-  thewitcher = derive2 { name="thewitcher"; version="1.0.0"; sha256="1xwmmgraaqhwmar1782bm3s5xx6vq6bc5xkclmrzvvy09il1y10v"; depends=[dplyr ggplot2 gridExtra magrittr MASS readr tidyverse usethis]; };
+  thewitcher = derive2 { name="thewitcher"; version="1.0.1"; sha256="140f0insb5gqrfdaq5cnzj6bl0akbif57jnyy7ai3rb2rwy9n2nv"; depends=[dplyr ggplot2 gridExtra magrittr MASS readr tidyverse usethis]; };
   thgenetics = derive2 { name="thgenetics"; version="0.4-2"; sha256="1314gry3xs9v4jy13g08q16qy4ax3s0bc7d74gi0wbpkgdrk3lql"; depends=[]; };
-  thickmatch = derive2 { name="thickmatch"; version="0.3.1"; sha256="0q7wpilbk8jm3q7m5hb114jpbv4ri1745v9sbdf222l6ymds6pia"; depends=[DiPs MASS plyr rcbalance]; };
   thief = derive2 { name="thief"; version="0.3"; sha256="12ymkkisg5p0g1gmvlczhp4dc7mirjg55fqqmz2d90673vlg6rfq"; depends=[forecast ggplot2 hts]; };
   thinkr = derive2 { name="thinkr"; version="0.15"; sha256="17mfw067advk8vxlz8x0w0vww3718zp2fcs00sca8ivlh8yh9fcg"; depends=[assertthat crayon devtools dplyr ggplot2 lazyeval lubridate magrittr officer purrr readr rvg stringi stringr tidyr]; };
   this_path = derive2 { name="this.path"; version="0.5.0"; sha256="0fcmdkwrg4gmss2q2xkwrlr6wy5v0qzqzb5l890adihmqvlhb8ra"; depends=[]; };
   thor = derive2 { name="thor"; version="1.1.2"; sha256="0r4kgzbydjb7z0j808g5zdkx5wmbqncqg453bqm4ylafpj5z79kv"; depends=[R6 storr]; };
   thorn = derive2 { name="thorn"; version="0.2.0"; sha256="0sybjqwv9al5khkhhc7khbgr7n2vy6aggarh9n75mxpa8hn7j2qr"; depends=[htmlwidgets]; };
+  thredds = derive2 { name="thredds"; version="0.1-1"; sha256="1ssx9sm55ycdny36nlydxqylfr0d51hyj3rgsmnk5d8wyhivnxb9"; depends=[httr magrittr R6 rlang xml2]; };
   threeBrain = derive2 { name="threeBrain"; version="0.2.4"; sha256="1pgfphw9xwn23rjzylh3crw10sj86qc7ihh4kzpr758w1b84mfd2"; depends=[digest dipsaus freesurferformats gifti htmlwidgets jsonlite oro_nifti R6 shiny stringr xml2]; };
   threeboost = derive2 { name="threeboost"; version="1.1"; sha256="033vwn42ys81w6z90w5ii41xfihjilk61vdnsgap269l9l0c8gmn"; depends=[Matrix]; };
   threejs = derive2 { name="threejs"; version="0.3.3"; sha256="1711h351nzxfkbbdwvfzyhciyvi9c6wx3jq1g97lzcqgnb45kivn"; depends=[base64enc crosstalk htmlwidgets igraph]; };
@@ -17754,27 +17833,29 @@ in with self; {
   threshr = derive2 { name="threshr"; version="1.0.3"; sha256="1vs2jfvh1pjzyfz1s4w92sw13yz2nhc28gc3iyqz8a82rrdm4mdq"; depends=[revdbayes rust]; };
   thriftr = derive2 { name="thriftr"; version="1.1.5"; sha256="1s8fn0imja6gh5bb0h2g1pmvkwk5v0dmpml9yvcd5dhz9lxy6vdj"; depends=[R6 rly stringi]; };
   thsls = derive2 { name="thsls"; version="0.1"; sha256="18z7apskydkg7iqrs2hgnzby578qsvyd73wx8v4z3aa338lssdi7"; depends=[Formula]; };
+  thunder = derive2 { name="thunder"; version="0.3.0"; sha256="0lzaab5acgy4s7qkq10l0yfdgrsya74757a025j205jin4m49hai"; depends=[aiRthermo climate dplyr Rcpp]; };
   thurstonianIRT = derive2 { name="thurstonianIRT"; version="0.12.1"; sha256="1qac1kg441x6fx3nxlhj1w1q7b3isivw6hzy7np3g1ics3kxpw8b"; depends=[BH dplyr knitr lavaan magrittr MplusAutomation mvtnorm Rcpp RcppEigen RcppParallel rlang rstan rstantools StanHeaders tibble tidyr]; };
   tibble = derive2 { name="tibble"; version="3.1.6"; sha256="14l2i6ri3v5y0h8g0ahc4kz0pdqsp5yabxk2w8wavss6y44xjcsv"; depends=[ellipsis fansi lifecycle magrittr pillar pkgconfig rlang vctrs]; };
   tibbletime = derive2 { name="tibbletime"; version="0.1.6"; sha256="0pfph4pyjxkxrir5ca1sh7xz07dylqnq40w0qyqiyaj5s23mbbmb"; depends=[assertthat dplyr glue hms lifecycle lubridate purrr Rcpp rlang tibble tidyselect vctrs zoo]; };
   tibblify = derive2 { name="tibblify"; version="0.1.0"; sha256="0mdi9x36nrlcbchl7b2rlf4j1k0y6c7657aznm7xa0396ciij5fk"; depends=[crayon purrr rlang tibble vctrs]; };
   tictactoe = derive2 { name="tictactoe"; version="0.2.2"; sha256="1fx8plj5zr04xwk5hfj3zqhcknidxlzya2q14cf0m3y33a86lx42"; depends=[hash]; };
   tictoc = derive2 { name="tictoc"; version="1.0.1"; sha256="0197f540fkcxx5blx9jjnbvwgdnsdv55znmvgdizdp8pqhsib6m0"; depends=[]; };
-  tidyBdE = derive2 { name="tidyBdE"; version="0.2.3"; sha256="1b55d5i3fcy9bhijxhmwrknla7xlzmqzrawdzzd660365rdbgkm4"; depends=[dplyr ggplot2 readr scales tibble]; };
+  tidyBdE = derive2 { name="tidyBdE"; version="0.2.4"; sha256="0qijyml3z38wq85vjfblgm85gvgmaz0vgffg1fiqjfgx78blk2f0"; depends=[dplyr ggplot2 readr scales tibble]; };
   tidyCpp = derive2 { name="tidyCpp"; version="0.0.6"; sha256="1w6fr4q137ar6557a8x1jpmfmlsga59621jwq0sf37bnn535i4gw"; depends=[]; };
+  tidyEmoji = derive2 { name="tidyEmoji"; version="0.1.0"; sha256="03amap4lik63nqdznncg8ymw74avmrhci36gy8ckwwskrn9gqw93"; depends=[dplyr emoji purrr stringr tibble tidyr]; };
   tidyHeatmap = derive2 { name="tidyHeatmap"; version="1.6.0"; sha256="15ih0pjm2d5xdqdyfy9mwg0yag1gvdmqdl70a1m3j46qwj5z6chg"; depends=[circlize ComplexHeatmap dendextend dplyr lifecycle magrittr patchwork purrr RColorBrewer rlang tibble tidyr viridis]; };
   tidyLPA = derive2 { name="tidyLPA"; version="1.1.0"; sha256="1lyd8cx90j49bm65330i57jyimiid75c2pvnzk7dcp6mbmglvimz"; depends=[dplyr ggplot2 gtable mclust mix MplusAutomation tibble]; };
-  tidyMicro = derive2 { name="tidyMicro"; version="1.47"; sha256="02pc6rh0l7xdrqhihi53zp17x0walc0mpm70spm7yrwzkbc486lv"; depends=[ade4 broom car cowplot dplyr Evomorph factoextra ggplot2 ggrepel gridExtra latex2exp lme4 lsr magrittr MASS Matrix plotly plyr png purrr rlang scales scatterplot3d shapes stringr ThreeWay tibble tidyr tidyverse vegan VGAM]; };
   tidyREDCap = derive2 { name="tidyREDCap"; version="0.2.2"; sha256="15xbkcfikzlglhh2y54rbpknbhzm6h9bq72f4h3g8bmfr44vy72g"; depends=[dplyr janitor magrittr purrr rlang stringr tibble tidyr]; };
   tidyRSS = derive2 { name="tidyRSS"; version="2.0.4"; sha256="0djkdjgs64f00pcs5gc8vmijyjsfb5sm0p64bybhs1y0kb3wlnl3"; depends=[anytime dplyr glue httr jsonlite magrittr purrr rlang tibble tidyselect vctrs xml2]; };
+  tidySEM = derive2 { name="tidySEM"; version="0.2.1"; sha256="1vq7dfqb2396lw49wa5mjn60nvha6hv9ziknh14b4cj1qh85pz7x"; depends=[ggplot2 gtable igraph lavaan MplusAutomation OpenMx psych]; };
   tidyUSDA = derive2 { name="tidyUSDA"; version="0.3.3"; sha256="1aqcvqc64qb8dbpmiw4cl06k0fh34fz5svzhjdgzrywl5qan3br3"; depends=[crayon dplyr fuzzyjoin ggplot2 httr jsonlite magrittr purrr sf tigris]; };
   tidybayes = derive2 { name="tidybayes"; version="3.0.2"; sha256="00672xhg8a8r4sk36sm827bb435r1hchkphl1jpnkld8vbdhvpd2"; depends=[arrayhelpers coda dplyr ggdist ggplot2 magrittr posterior rlang tibble tidyr tidyselect vctrs withr]; };
   tidybins = derive2 { name="tidybins"; version="0.1.0"; sha256="1kwwz0y1anlf1l8yl80xyiggdi8alsh0drb1529rijfk2jxlljg9"; depends=[badger ClusterR dplyr framecleaner ggplot2 janitor lubridate magrittr OneR purrr rlang rlist scales strex stringr tibble tidyselect xgboost]; };
   tidyboot = derive2 { name="tidyboot"; version="0.1.1"; sha256="0nss1ci763g9p5f33g163ppamx72axc8xhrils0cql3ka8439pmn"; depends=[dplyr modelr purrr rlang tidyr]; };
   tidycat = derive2 { name="tidycat"; version="0.1.2"; sha256="1c8ib5zcz2xk7yrzh4j5q4ccv6lnw58sh2ggqn04k2wp0gcj2zcs"; depends=[dplyr forcats magrittr stringr tibble tidyr]; };
-  tidycensus = derive2 { name="tidycensus"; version="1.1"; sha256="1h32f1qgb7fnlbmqdkgl98cql06ds5r25ad3zbqrcs58ckngs549"; depends=[crayon dplyr httr jsonlite purrr rappdirs readr rlang rvest sf stringr tidyr tigris units xml2]; };
+  tidycensus = derive2 { name="tidycensus"; version="1.1.2"; sha256="1762nqx8g6d3h2pl2ph30c8j2gs46ykdvfb17h977rv6m6bxm40m"; depends=[crayon dplyr httr jsonlite purrr rappdirs readr rlang rvest sf stringr tidyr tigris units xml2]; };
   tidycharts = derive2 { name="tidycharts"; version="0.1.3"; sha256="1clpjyvqv6xhv7n64xh411x867fnn581qckzcwn18xbbbs56k6nn"; depends=[htmlwidgets knitr lubridate magick magrittr rlang rsvg stringr testthat]; };
-  tidycmprsk = derive2 { name="tidycmprsk"; version="0.1.0"; sha256="00wp47kdwp5kln25mn1lvzwchxrf3fq3qlacn9pi2drhjcp7hwj4"; depends=[broom cli cmprsk dplyr ggplot2 gtsummary hardhat purrr rlang stringr survival tibble tidyr]; };
+  tidycmprsk = derive2 { name="tidycmprsk"; version="0.1.2"; sha256="1xmi6dgp5b2kad3g0ymayx7slvgw53dmaibyj88yxf67m97p757r"; depends=[broom cli cmprsk dplyr ggplot2 gtsummary hardhat purrr rlang stringr survival tibble tidyr]; };
   tidycode = derive2 { name="tidycode"; version="0.1.1"; sha256="0ahjhn1ar93xnd1snxnivdl43d1b6ica0pc30rgh8jpha87zbsay"; depends=[glue matahari pryr purrr rlang tibble]; };
   tidycomm = derive2 { name="tidycomm"; version="0.2.1"; sha256="1h1xixa7fbijp1iifpwl689b1pz1vvpy7v4sc9wnkqgw0q31b3iy"; depends=[broom dplyr forcats glue magrittr MBESS purrr rlang stringr tibble tidyr]; };
   tidycwl = derive2 { name="tidycwl"; version="1.0.6"; sha256="1i2z5dxrqz1l3366fmmgc4pfqnhm91nlc0m4y8mvzwgsgmf6dkxp"; depends=[dplyr htmlwidgets jsonlite magrittr visNetwork webshot yaml]; };
@@ -17783,7 +17864,7 @@ in with self; {
   tidydr = derive2 { name="tidydr"; version="0.0.3"; sha256="1sdh0grqccn1l2i4ji5q1yc5iz4vyzdfmd6qy5ypsza6bnkpgg1d"; depends=[ggplot2 rlang]; };
   tidyestimate = derive2 { name="tidyestimate"; version="1.1.0"; sha256="0cwk6clah4sapbmfl5vvcv6di39azxb07z73pypnqx4gd32kk5q7"; depends=[dplyr ggplot2 ggrepel glue rlang]; };
   tidyfast = derive2 { name="tidyfast"; version="0.2.1"; sha256="1bfs2wma705nx1lpndq75ama5dr9kkg8hwpklb20csnccnfrlvf6"; depends=[data_table Rcpp]; };
-  tidyfst = derive2 { name="tidyfst"; version="1.5.0"; sha256="1ibkdw8xibmn0s4na4ddypg4vbgyb2lqs4hnwz30j0sbpqk5xfgr"; depends=[data_table fst stringr]; };
+  tidyfst = derive2 { name="tidyfst"; version="1.6.0"; sha256="1x7aiypcwx9vdfpwgfza86xdk545kf038mc9gl84kga4binic4pl"; depends=[data_table fst stringr]; };
   tidyft = derive2 { name="tidyft"; version="0.4.5"; sha256="0l6ixaqj356q319ms0bf655f530cgiia9saqdx9lryaf0b6i2hxb"; depends=[data_table fst stringr]; };
   tidygapminder = derive2 { name="tidygapminder"; version="0.1.1"; sha256="1m6bynwnw1msrzvdmy12w3ympinqpd8j3may3rwmg9941nndjv2d"; depends=[data_table dplyr readxl tidyr]; };
   tidygate = derive2 { name="tidygate"; version="0.4.9"; sha256="0zs2z4xf76d9hw7zwwpd3bisjvq672smbmxl0qgjb7xdzh66cqsf"; depends=[dplyr lifecycle magrittr purrr RColorBrewer rlang scales stringr tibble tidyr viridis]; };
@@ -17801,7 +17882,7 @@ in with self; {
   tidymv = derive2 { name="tidymv"; version="3.3.0"; sha256="0r192jiwfj6pk41jpap8gfk0irjkx2877qiqxi1hm196hns6hpjg"; depends=[dplyr ggplot2 magrittr mgcv rlang tibble tidyr]; };
   tidync = derive2 { name="tidync"; version="0.2.4"; sha256="1nm3021m3xnn4xkprkxd9sj9bwvfbwhrdhfdkfhsc9azqy3rgg9f"; depends=[dplyr forcats magrittr ncdf4 ncmeta purrr rlang RNetCDF tibble tidyr]; };
   tidyndr = derive2 { name="tidyndr"; version="0.2.0"; sha256="1c4g57zp50mfrsh8lac4iava37fx39i2yrjfrb1m0j22grsczfml"; depends=[dplyr forcats janitor lubridate magrittr purrr rlang stringr tibble tidyr tidyselect vroom]; };
-  tidypaleo = derive2 { name="tidypaleo"; version="0.1.1"; sha256="0xpfzdl6asvpf07s20la4bmm5lr93j7h8kx7v3y79xfjk2q2fzvd"; depends=[digest dplyr ggplot2 ggstance purrr rioja rlang scales stringr styler tibble tidyr tidyselect vctrs withr]; };
+  tidypaleo = derive2 { name="tidypaleo"; version="0.1.2"; sha256="1pxn5hmlnj6bwc4hx45j3757djl1b4b1azgp1vsfkhsnl846lbjm"; depends=[digest dplyr ggplot2 ggstance purrr rioja rlang scales stringr styler tibble tidyr tidyselect vctrs withr]; };
   tidypmc = derive2 { name="tidypmc"; version="1.7"; sha256="1fijlvdiw4vwm34wizm4xlm0x10vvpkldzk7rrla44apq7y2w3yq"; depends=[dplyr readr stringr tibble tokenizers xml2]; };
   tidyposterior = derive2 { name="tidyposterior"; version="0.1.0"; sha256="1h1664sjrg6akph6nrk8ynn2kjiswv6gshy35gamam1h4axf6wah"; depends=[dplyr generics ggplot2 purrr rlang rsample rstanarm tibble tidyr tune vctrs workflowsets]; };
   tidypredict = derive2 { name="tidypredict"; version="0.4.8"; sha256="0fff349pkksss8h1k2qza78l81ha6avx63pxziv6dfa8h62qmrdy"; depends=[dplyr generics knitr purrr rlang stringr tibble tidyr]; };
@@ -17810,7 +17891,7 @@ in with self; {
   tidyqwi = derive2 { name="tidyqwi"; version="0.1.2"; sha256="16f0c2mdx6aiji6i7237kpc9awqdgrg6rhs408w6ag28dhxpgwlv"; depends=[dplyr furrr future httr jsonlite labelled magrittr purrr stringr tidyr xml2]; };
   tidyr = derive2 { name="tidyr"; version="1.2.0"; sha256="1a0k296a0jb2xi5zgfrqfmmw8197bwibjl7a04fm49vqx6livl4c"; depends=[cpp11 dplyr ellipsis glue lifecycle magrittr purrr rlang tibble tidyselect vctrs]; };
   tidyrules = derive2 { name="tidyrules"; version="0.1.5"; sha256="04y6pnrp132sckjpp9g8yl0z7glcsx9dcfdpa8r27wsc2g491i63"; depends=[assertthat magrittr partykit purrr stringr tibble]; };
-  tidyselect = derive2 { name="tidyselect"; version="1.1.1"; sha256="0ss8mq05mwif64cj8zmrfx0ljgy3n0fvyv7f37782shr8rknmsqq"; depends=[ellipsis glue purrr rlang vctrs]; };
+  tidyselect = derive2 { name="tidyselect"; version="1.1.2"; sha256="0w423pmg9wjx6q2rnp2ap66323rxvpmzd4nnsqq4m58pajqs7283"; depends=[ellipsis glue purrr rlang vctrs]; };
   tidyseurat = derive2 { name="tidyseurat"; version="0.5.1"; sha256="15i75qrvgi88ywn165dhjqmdsh47p4i5clp5mq7d9rc8g7fj984h"; depends=[cli dplyr ellipsis fansi ggplot2 lifecycle magrittr pillar plotly purrr rlang Seurat SeuratObject stringr tibble tidyr tidyselect ttservice]; };
   tidysmd = derive2 { name="tidysmd"; version="0.1.0"; sha256="0hbjcccs36i2cip6k56hv39awdxiljv322zlidlphkab7h95xiqc"; depends=[dplyr ellipsis glue purrr rlang smd tidyr tidyselect]; };
   tidysq = derive2 { name="tidysq"; version="1.1.3"; sha256="1k4ws5zymrc93rlh8118xxfgjdwr7g99cyhzjp34abcsip1c3g21"; depends=[checkmate cli crayon dplyr pillar Rcpp testthat tibble vctrs]; };
@@ -17818,12 +17899,12 @@ in with self; {
   tidystopwords = derive2 { name="tidystopwords"; version="0.9.1"; sha256="00kak679ddwdgvqmjs5312w9k8sapc1n7dxipgqqfjqw2xy0h1jh"; depends=[dplyr]; };
   tidystringdist = derive2 { name="tidystringdist"; version="0.1.4"; sha256="1srxh5gyspcghzvnmpyq36ky608ipf71vv0s1jg01mgf2i5pdkf4"; depends=[attempt rlang stringdist tibble]; };
   tidysynth = derive2 { name="tidysynth"; version="0.1.0"; sha256="0rckvp51gp22bjcwcszdhhn51bzjivwndnvjcf67h1vmyqa3zjkj"; depends=[dplyr forcats ggplot2 kernlab LowRankQP magrittr optimx rgenoud rlang tibble tidyr]; };
-  tidytable = derive2 { name="tidytable"; version="0.6.7"; sha256="0z0x1dswy25pyc1p1bf1rqj8pjhcvrx7shx0gsabs6dp6z12bmx5"; depends=[data_table glue lifecycle magrittr pillar rlang tidyselect vctrs]; };
+  tidytable = derive2 { name="tidytable"; version="0.7.0"; sha256="14acqg5wvyfndl85fjgnwkyjwvyyvdk0z2884w5gxvc4aj0xy2g3"; depends=[data_table glue lifecycle magrittr pillar rlang tidyselect vctrs]; };
   tidytext = derive2 { name="tidytext"; version="0.3.2"; sha256="0as7lscjl6ywk85almmb4f71vxmgkfds46g52ryggkg2isksvq3g"; depends=[dplyr generics hunspell janeaustenr lifecycle Matrix purrr rlang stringr tibble tokenizers vctrs]; };
   tidytidbits = derive2 { name="tidytidbits"; version="0.3.1"; sha256="0fqqmisp339ynr5p5qs2dzshx031kggp7c70zm2w1v932xpalsrz"; depends=[dplyr extrafont forcats magrittr purrr rlang stringr tibble tidyr tidyselect]; };
   tidytransit = derive2 { name="tidytransit"; version="1.3.0"; sha256="1n7c4iblxa1yifh51x4767k61qp99r6r4pchcyvz4bq7jbvclf18"; depends=[checkmate data_table digest dplyr geodist gtfsio hms httr rlang sf]; };
-  tidytreatment = derive2 { name="tidytreatment"; version="0.2.1"; sha256="09d9qiwb1mniwfyklkiylr1glix1f441kkxlbff2x99j1xij197x"; depends=[dplyr purrr readr rlang tidybayes tidyr]; };
-  tidytree = derive2 { name="tidytree"; version="0.3.7"; sha256="1wp411lf3syf0g1czhx3ksb4mx5d6vaw6ppipv0s0k69ivag45kq"; depends=[ape dplyr lazyeval magrittr rlang tibble tidyr tidyselect yulab_utils]; };
+  tidytreatment = derive2 { name="tidytreatment"; version="0.2.2"; sha256="04z3afharkqyjk5kk097kpqlrmvq5220bsdlzmbzwl5k56vgxgxx"; depends=[dplyr purrr readr rlang tidybayes tidyr]; };
+  tidytree = derive2 { name="tidytree"; version="0.3.9"; sha256="1prfv2jy6z4zp4gyi9krzbysipsbnjrkxcccflm4nwsd9i7mshqj"; depends=[ape dplyr lazyeval magrittr pillar rlang tibble tidyr tidyselect yulab_utils]; };
   tidytuesdayR = derive2 { name="tidytuesdayR"; version="1.0.2"; sha256="00xlbmgg8779ypqcrdgn56lyklqknhh3pmqfc49f84xa5hrkyjfs"; depends=[httr jsonlite lubridate magrittr purrr readr readxl rstudioapi rvest usethis xml2]; };
   tidyverse = derive2 { name="tidyverse"; version="1.3.1"; sha256="0ck6xmsw5p168jmw2fqv79fzfnw5jckfra7mfii261j6kl89bkw3"; depends=[broom cli crayon dbplyr dplyr dtplyr forcats ggplot2 googledrive googlesheets4 haven hms httr jsonlite lubridate magrittr modelr pillar purrr readr readxl reprex rlang rstudioapi rvest stringr tibble tidyr xml2]; };
   tidyvpc = derive2 { name="tidyvpc"; version="1.2.0"; sha256="1xih8gdc44ddi5kqx8kq9i3pz21hddha87fpb58wjfr5hsaw18sy"; depends=[classInt data_table fastDummies ggplot2 magrittr mgcv quantreg rlang]; };
@@ -17836,7 +17917,7 @@ in with self; {
   tigger = derive2 { name="tigger"; version="1.0.0"; sha256="12mcq3mvmcpmb7cc0c3sij03wa9i37c3ilxpa3fm2cr3g3yj2r1v"; depends=[alakazam doParallel dplyr foreach ggplot2 gridExtra gtools iterators lazyeval rlang shazam stringi tidyr]; };
   tightClust = derive2 { name="tightClust"; version="1.1"; sha256="0vqkp2g6z8y3b6dhzglmacjhf2qi1sg80kb941mwfafin2k40zbm"; depends=[]; };
   tigreBrowserWriter = derive2 { name="tigreBrowserWriter"; version="0.1.5"; sha256="0izgx1khci6qc6pz85dxj75kzxvpr30l0vhcv9476jrcbwqs4k8m"; depends=[DBI RSQLite]; };
-  tigris = derive2 { name="tigris"; version="1.5.1"; sha256="0siaal7d5q7398qhgf7v63k644n3kljw4b50gnv8mprnwp0hzz3r"; depends=[dplyr httr magrittr maptools rappdirs rgdal sf sp stringr uuid]; };
+  tigris = derive2 { name="tigris"; version="1.6"; sha256="0q8niaa5l4xh2qfp243321ybqxg7s974wvifr4fdwnjgyjxgn57s"; depends=[dplyr httr magrittr maptools rappdirs rgdal sf sp stringr uuid]; };
   tikzDevice = derive2 { name="tikzDevice"; version="0.12.3.1"; sha256="040yz6wi05151m9nal97symv66a133kk0a8c1h6nz058zk081vav"; depends=[filehash png]; };
   tiledb = derive2 { name="tiledb"; version="0.11.0"; sha256="1lgagf8ix8bnl6g7qp0lzaz4xd6wlp9xa02rqyxb30bk0g022ik7"; depends=[nanotime Rcpp]; };
   tilegramsR = derive2 { name="tilegramsR"; version="0.2.0"; sha256="11cnyvlghg8z7lr9ahzsjpyjrqnxqs77wdcydqvavrsqj745xvi2"; depends=[sf sp]; };
@@ -17875,12 +17956,12 @@ in with self; {
   tinyscholar = derive2 { name="tinyscholar"; version="0.1.4"; sha256="0lj5ax3m5kr18qf9xmrh6iyy00bp59wwi3ss96ynsyiajmndsajf"; depends=[curl dplyr ggplot2 gt jsonlite magrittr purrr R_utils rlang rvest stringr xml2]; };
   tinyspotifyr = derive2 { name="tinyspotifyr"; version="0.2.2"; sha256="19nicp1ml73lylja2np52rcc070maxm9286fjm7bfx3zsblxmakc"; depends=[httr jsonlite]; };
   tinytest = derive2 { name="tinytest"; version="1.3.1"; sha256="1mq31f7bzcz5bkgzl9khm1i80axfzra7gcjqxd2yqb4wrw1m3x4s"; depends=[]; };
-  tinytex = derive2 { name="tinytex"; version="0.36"; sha256="0y1vfq89yi302cwdcnassm02dk14j9ivk5vf83fp6rb8h6ww3rk5"; depends=[xfun]; };
+  tinytex = derive2 { name="tinytex"; version="0.37"; sha256="1na8g4z1crq0ia9ba17d0qxaif47jij2z3y14xlxjv7x243k6krg"; depends=[xfun]; };
   tipa = derive2 { name="tipa"; version="1.0.5"; sha256="1mdjpbdbgd5n22l7fc0bfansh536ib1bgjaxzrl8g534cjxdnhgl"; depends=[optimr]; };
   tipitaka = derive2 { name="tipitaka"; version="0.1.2"; sha256="0xf64bpzwywwjm0135c7zjn4ha0h1zj36rj2d4h8dskiq9z90xqi"; depends=[cpp11 dplyr magrittr stringi stringr]; };
-  tipom = derive2 { name="tipom"; version="1.0.2-1"; sha256="1gdfv0g5dw742j6ycmi0baqh6xcchp3yf2n1g8vn7jmqgz5mlhdr"; depends=[]; };
   tippy = derive2 { name="tippy"; version="0.1.0"; sha256="00c9v07ax7l0x5wpx3ca8hqvdqs3p62d58igp51rsbh9x1ylgjcn"; depends=[htmltools htmlwidgets jsonlite shiny]; };
   tipr = derive2 { name="tipr"; version="0.3.0"; sha256="1iaj3cklq12xr7xbvkam0mjnq3g2rcmwy1m3kdm26qm793082nyz"; depends=[glue purrr tibble]; };
+  tipsae = derive2 { name="tipsae"; version="0.0.4"; sha256="1cz0xwablrfaygq4yfqsq82f5n9im9mqb6ypczr4mgzj93m4v5k7"; depends=[BH broom callr ggplot2 ggpubr gridExtra loo maptools nlme Rcpp RcppEigen RcppParallel Rdpack rgeos rstan rstantools shiny sp spam spdep StanHeaders]; };
   tis = derive2 { name="tis"; version="1.39"; sha256="1sq3acz8mybsbxng5fga4ynqvh1ly9hs3ca727jiyx1gam712mis"; depends=[]; };
   titanic = derive2 { name="titanic"; version="0.1.0"; sha256="0mdmh0ciwfig00847bmvp50cyvj8pra6q4i4vdg7md19z5rjlx3j"; depends=[]; };
   titeIR = derive2 { name="titeIR"; version="0.1.0"; sha256="047vidn3zydbjijwgz6qm2d9j2ny8ng2sv5jzm8zb300y7k2426c"; depends=[Iso]; };
@@ -17903,7 +17984,7 @@ in with self; {
   tm_plugin_mail = derive2 { name="tm.plugin.mail"; version="0.2-1"; sha256="0rn8jqv622qmc0zkz534ka5qnbca2rlabxm3vjbqplr6fh1ahwb1"; depends=[NLP tm]; };
   tm_plugin_webmining = derive2 { name="tm.plugin.webmining"; version="1.3"; sha256="1694jidf01ilyk286q43bjchh1gg2fk33a2cwsf5jxv7jky3gl7h"; depends=[boilerpipeR NLP RCurl RJSONIO tm XML]; };
   tm1r = derive2 { name="tm1r"; version="1.1.8"; sha256="15w703rd7mfm32b62yv9mpms2fjq9ifmc1n460vsrpqz1dkiavb9"; depends=[httr jsonlite]; };
-  tmap = derive2 { name="tmap"; version="3.3-2"; sha256="16k2nh4b4rkiid5ny97n22wn89pvh4sn6pdykbbj6qjlqp2p9jrb"; depends=[abind classInt htmltools htmlwidgets leafem leaflet leafsync RColorBrewer rlang sf stars tmaptools units viridisLite widgetframe]; };
+  tmap = derive2 { name="tmap"; version="3.3-3"; sha256="012y50hbz2f87mwcmd9lp9ikcplvkz51g4fmanw3swlc1zpqxrb0"; depends=[abind classInt htmltools htmlwidgets leafem leaflet leafsync RColorBrewer rlang sf stars tmaptools units viridisLite widgetframe]; };
   tmaptools = derive2 { name="tmaptools"; version="3.1-1"; sha256="0bal3czrdr93qig8s5cf5szld5vjbbks67rismfhlkmlgw6wp2gx"; depends=[dichromat lwgeom magrittr RColorBrewer sf stars units viridisLite XML]; };
   tmbstan = derive2 { name="tmbstan"; version="1.0.3"; sha256="0y05albvggavhdijymwhw2ffg07jnvspppysmbz984c1my98zw4l"; depends=[BH Rcpp RcppEigen RcppParallel rstan StanHeaders TMB]; };
   tmcn = derive2 { name="tmcn"; version="0.2-13"; sha256="0rf8mz6kdm83pm85kzfyzb8kd3iwaxv5bgphjpxlnq6z32m9yds7"; depends=[]; };
@@ -17917,9 +17998,9 @@ in with self; {
   tmvmixnorm = derive2 { name="tmvmixnorm"; version="1.1.1"; sha256="0i1g3598d43azyy1bsrvkjybqa5cd991fpmfqi5wv5703zaha2fj"; depends=[MASS]; };
   tmvnsim = derive2 { name="tmvnsim"; version="1.0-2"; sha256="03xsvsg9bqvgl98ywid3h91mmlhax5s6wvmypp3hq91vmc5kvxlp"; depends=[]; };
   tmvtnorm = derive2 { name="tmvtnorm"; version="1.4-10"; sha256="1w3kmpx25l7rb80vpclqq4pbbv12qgysyqxjq3lp55l9nklkb7qs"; depends=[gmm Matrix mvtnorm]; };
-  tmvtnsim = derive2 { name="tmvtnsim"; version="0.1.0"; sha256="0lmngy3ilb4v3ix6414bgi2pzwxgq41vj8rzydh5h8vgc3z771q4"; depends=[Rcpp RcppArmadillo]; };
+  tmvtnsim = derive2 { name="tmvtnsim"; version="0.1.1"; sha256="1gf5gqb333q82cbdw3lfjmxnn8z7qds73xmc8dqm06zcqsfmdbv3"; depends=[Rcpp RcppArmadillo]; };
   tnet = derive2 { name="tnet"; version="3.0.16"; sha256="0922y9zb64zazl2irwfxxbghkgcwi2q57gylpiaxgmj4q6lc62l9"; depends=[igraph survival]; };
-  toOrdinal = derive2 { name="toOrdinal"; version="1.1-0.0"; sha256="0zg4zk7jx8s57g8nb0jw7r7gss00349jmkglf6sz26p7jldpgmff"; depends=[crayon testthat]; };
+  toOrdinal = derive2 { name="toOrdinal"; version="1.3-0.0"; sha256="1zfx91024dyafkfyjsm2829qsqkz57g6p5v47lp2x0ykrwpdbm37"; depends=[crayon testthat]; };
   toastui = derive2 { name="toastui"; version="0.2.1"; sha256="0c32410ylnp2b4h72aq7pig423jgcl63x8lmb8cf8m7h83xlj4ah"; depends=[htmltools htmlwidgets magrittr rlang shiny shinyWidgets]; };
   tobit1 = derive2 { name="tobit1"; version="0.1-3"; sha256="08rq1h3psxjzzfna6krji4ixrbd43v77qb9k00v1rysarlqyg0k1"; depends=[Formula generics margins numDeriv prediction Rdpack tibble]; };
   todor = derive2 { name="todor"; version="0.1.2"; sha256="1ncg88wh9l2mja5w53ry2b19sa5x9m6cnkvw8lszbmc92idpspig"; depends=[R_utils rex rstudioapi stringr]; };
@@ -17943,12 +18024,14 @@ in with self; {
   toprdata = derive2 { name="toprdata"; version="1.0.0"; sha256="1fyxhjj4c4j3268bcffq9wff1bkqan696hfz2y67bpg0xq1h3nbb"; depends=[]; };
   topsis = derive2 { name="topsis"; version="1.0"; sha256="056cgi684qy2chh1rvhgkxwhfv9nnfd7dfzc05m24gy2wyypgxj3"; depends=[]; };
   tor = derive2 { name="tor"; version="1.1.2"; sha256="1s34hzw3a4cm9gk85fcxgxwmn2xc7njs1iw1snd91id3gdl6vppx"; depends=[fs readr rlang tibble]; };
-  torch = derive2 { name="torch"; version="0.6.0"; sha256="05vxb84qxna1rpzqhjw6gwyc569zyz7rfbdkahglvihqjjwabc4x"; depends=[bit64 callr cli coro ellipsis magrittr R6 Rcpp rlang withr]; };
+  torch = derive2 { name="torch"; version="0.7.2"; sha256="163pvl3gyz7l2fmqhgg4k6pw4dmvfir71yp9l5ra2k4zc32lz166"; depends=[bit64 callr cli coro ellipsis magrittr R6 Rcpp rlang withr]; };
   torchaudio = derive2 { name="torchaudio"; version="0.2.0"; sha256="1bzx428lzjdwb9ds2pcq7nlalg75s7bvmiimjw3k8lvbq50yjlyh"; depends=[fs glue rappdirs Rcpp rlang torch withr]; };
   torchdatasets = derive2 { name="torchdatasets"; version="0.1.0"; sha256="1iliz3iv143zmffd4jvvfxzsqn8bzp1sg5573rqjjbhnvy958mgg"; depends=[fs pins stringr torch torchvision withr zip]; };
   torchvision = derive2 { name="torchvision"; version="0.4.1"; sha256="07pdsqcnlmsc1yx7ldi18a0lqkgqbqwsqh7109rbrycczxrc1dqv"; depends=[abind fs jpeg png rappdirs rlang torch withr]; };
+  torchvisionlib = derive2 { name="torchvisionlib"; version="0.1.0"; sha256="0kiix21gqpjw4qhz9xwpmlygjy66qxjdk3ja3dbrc1gz3x132drl"; depends=[glue Rcpp rlang torch]; };
   tornado = derive2 { name="tornado"; version="0.1.1"; sha256="12wvcc5p5fk6b1w3qhahjad5k0m34f744jszaid8hnrbbfysp8na"; depends=[assertthat ggplot2 gridExtra scales survival]; };
   tosca = derive2 { name="tosca"; version="0.3-2"; sha256="1z8svczy93lpdj7n1gk9jz8jgzkjsf886ldlkgq1mfi1j6m8557y"; depends=[data_table htmltools lda lubridate quanteda RColorBrewer stringr tm WikipediR]; };
+  toscutil = derive2 { name="toscutil"; version="2.1.0"; sha256="1ciyfxm3kbgvfqasv90i9ldrbvmkk0ryp310a1f44iih8rpvb2g6"; depends=[]; };
   tosls = derive2 { name="tosls"; version="1.0"; sha256="03nqwahap504yvcksvxdhykplbzmf5wdwgpzm7svn8bymdc472v2"; depends=[Formula]; };
   tosr = derive2 { name="tosr"; version="0.1.1"; sha256="1hif33q73pbzgrs92ffkfiisxgxk35fyf37bvxb5kccrpwly9zih"; depends=[bibliometrix CINNA dplyr igraph magrittr rebus rlang stringr tibble tidyr]; };
   totalcensus = derive2 { name="totalcensus"; version="0.6.6"; sha256="09c7hm9yys48p8pjp9kv3szbwrg9xb1xf47zya24yir0gxs7bfmi"; depends=[data_table magrittr purrr stringr]; };
@@ -17956,7 +18039,7 @@ in with self; {
   touchard = derive2 { name="touchard"; version="2.0.1"; sha256="06491r4x3ycmv3ddbqwig334wj9qvm395xlaifx4hjjyyi65xb3q"; depends=[MASS nleqslv numDeriv plotrix]; };
   tourr = derive2 { name="tourr"; version="0.6.0"; sha256="0mci0y6s851gh1b157mhpvz0p7hkq2f1ccq9jj22p5k7ipxwn8dh"; depends=[dplyr MASS tibble]; };
   toxEval = derive2 { name="toxEval"; version="1.2.0"; sha256="11rw8vjnz3kzikd59vbyiv8vc7dijpi6znyxlc7c4rpi41gs6c0m"; depends=[dplyr DT ggplot2 leaflet magrittr RColorBrewer readxl shiny shinyAce shinycssloaders shinydashboard tidyr]; };
-  toxpiR = derive2 { name="toxpiR"; version="1.0.2"; sha256="1n3kkhsj5bwampkh5pd70mfym8kcvn1y527ff0jrgs65yl4bfs8d"; depends=[BiocGenerics pryr rlang S4Vectors tidyr]; };
+  toxpiR = derive2 { name="toxpiR"; version="1.0.3"; sha256="1x72g8caja241cx2lgn70f89ps8af38a3c5lxn90yfpndcp0mb3x"; depends=[BiocGenerics pryr rlang S4Vectors tidyr]; };
   toxtestD = derive2 { name="toxtestD"; version="2.0"; sha256="0b7hmpfhwg626r8il12shni0kw94cqnbj49y4vfh8gn98x1s6m48"; depends=[]; };
   tpAUC = derive2 { name="tpAUC"; version="2.1.1"; sha256="0wix9qwcidj7xfqhh7bmrpnadd9qlkvg3515gaamdxkjbz2kyydc"; depends=[pROC]; };
   tpfp = derive2 { name="tpfp"; version="0.0.1"; sha256="0vm5qssaanvi0sck2hj1qgjra89a42i6nvzbva5z0aj2hkd5h4vh"; depends=[knitr readxl xlsx]; };
@@ -17971,12 +18054,13 @@ in with self; {
   trackdf = derive2 { name="trackdf"; version="0.2.2"; sha256="110m7dmciyqbcb69sxi02h5djnf098wzfr84d6yppyc73a81989y"; depends=[data_table lubridate sp tibble]; };
   trackdown = derive2 { name="trackdown"; version="1.1.1"; sha256="1l8mqdfpdf25vyibxqcqhyip6aqllb9riz2v6w4k1rfc8b9dl07f"; depends=[cli googledrive rmarkdown]; };
   trackeR = derive2 { name="trackeR"; version="1.5.2"; sha256="1f3giz6naxxyicgy9v0391ang43srwhy9zbiv4zmlc8i9v05b57i"; depends=[fda foreach ggmap ggplot2 ggridges gridExtra gtable jsonlite leaflet raster RSQLite scam sp xml2 zoo]; };
-  trackeRapp = derive2 { name="trackeRapp"; version="1.1"; sha256="0pys5vw3268j90i2gg6b1sgbx917vvk0x9k2ryh3l3p96vkrqv87"; depends=[changepoint colorspace DT foreach mapdeck mgcv plotly sf shiny shinydashboard shinyjs shinyWidgets trackeR V8 zoo]; };
+  trackeRapp = derive2 { name="trackeRapp"; version="1.2"; sha256="1y6n9hgzybz5860qpzj9rdb9yl4k6b9h13d91fqn3qarpnx9n5qr"; depends=[changepoint colorspace DT foreach mapdeck mgcv plotly sf shiny shinydashboard shinyjs shinyWidgets trackeR V8 zoo]; };
   trackr = derive2 { name="trackr"; version="0.10.7"; sha256="0h7ihymdvfvnnyxfxjwshslrxngh3i2ksqvhxynrp46m20mwjavd"; depends=[CodeDepends fastdigest ggplot2 gridGraphics histry htmltools lattice miniUI RJSONIO rlang rmarkdown roprov rsolr shiny]; };
   trackter = derive2 { name="trackter"; version="0.1.1"; sha256="11rk53w0y9p0az6ydiq3vy50j1pj4p4cml5dqabrpcgfz4icjkrs"; depends=[data_table dplyr EBImage features ggplot2 jpeg Momocs pastecs plyr raster zoo]; };
   tractor_base = derive2 { name="tractor.base"; version="3.3.3.1"; sha256="0w5jw7pf77npkgig7667yikpbwv4dfk1dcq63qm88l409ga2f95p"; depends=[ore reportr RNifti shades]; };
   trade = derive2 { name="trade"; version="0.8.0"; sha256="1ly8mb1gm40v72lwk29l3g55f2clrcmvn5vgfijfnc4nq37j1h0j"; depends=[antitrust]; };
   tradepolicy = derive2 { name="tradepolicy"; version="0.5.0"; sha256="1rjyx6mwqxgjprzll9908jgvl0q9dr8axjy6dp4fsxq2pvlnnz8m"; depends=[broom cli crayon dplyr ggplot2 lmtest magrittr msm purrr rstudioapi sandwich tibble tidyr]; };
+  tradestatistics = derive2 { name="tradestatistics"; version="3.0.2"; sha256="18v9iq588fp1w8p72an51dargqa7vcgaln8wiz9d2a0sjhq0gxxk"; depends=[crul data_table digest jsonlite memoise]; };
   trafo = derive2 { name="trafo"; version="1.0.1"; sha256="0gq3snjpkw0ncny7pkfi686qkgdhd8id73jxjk3chhqf5mzrrsbc"; depends=[FNN lmtest moments pryr]; };
   trainR = derive2 { name="trainR"; version="0.0.1"; sha256="0wmxhw8yxkxpw08jma3r0zy7dhsrkbh5wjvd3izp5gf9dn9533cd"; depends=[dplyr glue lubridate magrittr purrr RCurl stringr tibble tidyr usethis xml2]; };
   traineR = derive2 { name="traineR"; version="1.6.2"; sha256="1q6r7q6k0rsx21bxp2vp4rnrjnslngwbv55kmrlmzn4mw61xh33q"; depends=[ada adabag dplyr dummies e1071 ggplot2 glmnet glue kknn MASS neuralnet nnet randomForest ROCR rpart scales stringr xgboost]; };
@@ -17984,18 +18068,19 @@ in with self; {
   traitdataform = derive2 { name="traitdataform"; version="0.6.7"; sha256="1p5m480k8da4k091jiryqry0zwg8kw3s1cvvpgqjmjkz3v11dxsd"; depends=[curl data_table getPass plyr RCurl reshape2 suppdata taxize units XML]; };
   traits = derive2 { name="traits"; version="0.5.0"; sha256="04s2523wkbjqxpwllvcy7ikyfri5gldgnynjswsxdy0k945wacvz"; depends=[crul data_table hoardr httr jsonlite readr rvest taxize tibble xml2]; };
   traj = derive2 { name="traj"; version="1.2"; sha256="0mq6xdbxjqjivxyy7cwaghwmnmb5pccrah44nmalssc6qfrgys4n"; depends=[cluster GPArotation NbClust pastecs psych]; };
+  trajeR = derive2 { name="trajeR"; version="0.9.0.5"; sha256="1zy3hg1m1a5dpx494mlb72vfpng5892dcginv6rwxc2c1ggv6z86"; depends=[capushe MASS minpack_lm numDeriv Rcpp RcppArmadillo ucminf]; };
   trajectories = derive2 { name="trajectories"; version="0.2-3"; sha256="1k1fyjyng9mi3k5v6bpbv3vkqr7c9zjp4yiyynb3rjxqpn1fxx7k"; depends=[lattice sp spacetime zoo]; };
   trajr = derive2 { name="trajr"; version="1.4.0"; sha256="092hx27b6d0vy1pvmga1z3b245aa9gn9aw3hszbhhkkic5zfpgbq"; depends=[plotrix signal]; };
   tram = derive2 { name="tram"; version="0.6-4"; sha256="04vv1ydmcjc6rffl35a898jlc9lgvqrjnbc06k4krr0igq2s39ya"; depends=[basefun Formula Matrix mlt multcomp sandwich survival variables]; };
-  tramME = derive2 { name="tramME"; version="0.1.2"; sha256="1s6s5m1xkzjchmiwvcgdx7w68igm2dy3wc61v5gd8ihv4l26ccd7"; depends=[alabama basefun coneproj lme4 MASS Matrix mlt mvtnorm nlme numDeriv RcppEigen TMB tram variables]; };
+  tramME = derive2 { name="tramME"; version="0.1.3"; sha256="0gqvk15xk2wl12vlmshj9sz0qvih03wrbs700hkd1ifjlm2kjlnl"; depends=[alabama basefun coneproj lme4 MASS Matrix mlt mvtnorm nlme numDeriv RcppEigen TMB tram variables]; };
   tramnet = derive2 { name="tramnet"; version="0.0-6"; sha256="034ij8ir5v31n22pig7v6qizmyhpar1mklifvcskg0ydmpy7qkj4"; depends=[basefun CVXR lhs mlr mlrMBO mlt ParamHelpers sandwich smoof tram]; };
   trampoline = derive2 { name="trampoline"; version="0.1.1"; sha256="05inq5j8gvnpww6z21dzc57vilsm4gx3m274fpsamp54q85mi68s"; depends=[coro fastmap rlang]; };
   tranSurv = derive2 { name="tranSurv"; version="1.2.2"; sha256="17rvzjcn76z5niw1jappiadbkf66a9x0m7p3251lgb7qrnvpx3gk"; depends=[rootSolve SQUAREM survival truncSP]; };
   transcribeR = derive2 { name="transcribeR"; version="0.0.0"; sha256="0y2kxg2da71i962fhsjxsr2ic3b31fmffhj3gg97b0nykfpcviib"; depends=[httr]; };
   transfR = derive2 { name="transfR"; version="0.1.1"; sha256="1pdacv0w5rf7vn6pbyydrjj1v6w8m36v1jaghb28xv3gn27308iy"; depends=[doParallel foreach Rdpack sf stars units]; };
+  transforEmotion = derive2 { name="transforEmotion"; version="0.0.1"; sha256="1f4gv78dfbjyr42z908qc92giavhsbm05430c5adyicfpxwnpil7"; depends=[pbapply reticulate]; };
   transformmos = derive2 { name="transformmos"; version="0.1.0"; sha256="1hsp399cj6cnsysb4hm4ra075qm2fxkjhyq16m3nai51fvzkak0p"; depends=[]; };
   transformr = derive2 { name="transformr"; version="0.1.3"; sha256="1dn6h8i7vli2zv4408djyg74j9fv9sjrqf75hx9dh7qnj352wf69"; depends=[lpSolve Rcpp rlang sf tweenr]; };
-  translate = derive2 { name="translate"; version="0.1.2"; sha256="1w0xrg1xxwfdanlammmixf06hwq700ssbjlc3cfigl50p87dbc5x"; depends=[functional lisp RCurl RJSONIO]; };
   translateR = derive2 { name="translateR"; version="1.0"; sha256="11kh9hjpsj5rfmzybnh345n1gzb0pdksrjp04nzlv948yc0mg5gm"; depends=[httr RCurl RJSONIO textcat]; };
   translation_ko = derive2 { name="translation.ko"; version="0.0.1.5.2"; sha256="1w5xibg4znhd39f3i0vsqckp6iia43nblqxnzgj0ny6s7zmdq1wd"; depends=[]; };
   transmdl = derive2 { name="transmdl"; version="0.1.0"; sha256="16lvcjwb7hq4a4925kqnas7c4xqw3gpbad3fcghp0qm4whyig8dg"; depends=[Rcpp RcppEigen statmod survival]; };
@@ -18012,7 +18097,7 @@ in with self; {
   treeDA = derive2 { name="treeDA"; version="0.0.5"; sha256="0rdqvjj16w7ykpxd6m800h4zv79y9c1phhkl14xy10gbi2cqh10g"; depends=[ape ggplot2 gtable Matrix mvtnorm phyloseq reshape2 sparseLDA]; };
   treebalance = derive2 { name="treebalance"; version="1.1.0"; sha256="0wxsd9mx7bcz95vn4a9w1bzqvd8v1qk5qv00p3x58qks7nzxyzdv"; depends=[ape memoise]; };
   treebase = derive2 { name="treebase"; version="0.1.4"; sha256="1bx31jahb0wy2g8wl1z71vy659lfi8fq1sbbaxvyixzcwymix1wq"; depends=[ape httr RCurl XML]; };
-  treeclim = derive2 { name="treeclim"; version="2.0.5.1"; sha256="1gwsprvr9yi67slrkxf34kbqvqkr4csaqkcdbdi1vwivn2nyb3py"; depends=[abind boot ggplot2 lmodel2 lmtest np plyr Rcpp RcppArmadillo]; };
+  treeclim = derive2 { name="treeclim"; version="2.0.6.0"; sha256="0zdn766vxgycisjyjw7nh7hs817kqhdihyla3fhpzykw9pxnw0b2"; depends=[abind boot ggplot2 lmodel2 lmtest np plyr Rcpp RcppArmadillo]; };
   treecm = derive2 { name="treecm"; version="1.2.2"; sha256="0vrawg4vvy270dn20gb2k99xi4q89l4mjz0mm7ikpz8wxqypzq2l"; depends=[plyr]; };
   treedata_table = derive2 { name="treedata.table"; version="0.1.0"; sha256="0dhnb8if5wq6hzhjg40cw80sacigqmlm7nplm1f1ay5cqx1ynfi7"; depends=[ape data_table geiger lazyeval]; };
   treedater = derive2 { name="treedater"; version="0.5.0"; sha256="007rdrbv3v1z3qbyasla22rck105sqlqh93yfmxklihdydl7smfd"; depends=[ape limSolve]; };
@@ -18083,7 +18168,7 @@ in with self; {
   tryCatchLog = derive2 { name="tryCatchLog"; version="1.3.1"; sha256="0k40a48qzwmardjnkf0h5s5zryivzvdanz61kxdqdfqlil19ma0d"; depends=[]; };
   ts_extend = derive2 { name="ts.extend"; version="0.1.1"; sha256="03b358nywx0zynb6006886mzvz1mbbaim6b5m641drklh6k0l6r1"; depends=[]; };
   tsBSS = derive2 { name="tsBSS"; version="1.0.0"; sha256="04nsbifc6zkilqifj6iwc0vf2z84y8wcbf8pndgkzi039kk6c385"; depends=[boot BSSprep forecast ICtest JADE Rcpp RcppArmadillo xts zoo]; };
-  tsDyn = derive2 { name="tsDyn"; version="10-1.2"; sha256="0wwp18qaxljdy1zqww1qw9fa9ycvgwcf6j52cpx3v2f2177x7snc"; depends=[foreach forecast MASS Matrix mgcv mnormt nnet tseries tseriesChaos urca vars]; };
+  tsDyn = derive2 { name="tsDyn"; version="11.0.2"; sha256="0dplrl4vknha2aa0h3vg0sivn2dm0h23my6y2gdghhplvzy0qaa4"; depends=[foreach forecast MASS Matrix mgcv mnormt nnet tseries tseriesChaos urca vars]; };
   tsModel = derive2 { name="tsModel"; version="0.6"; sha256="0mkmhzj4g38ngzfcfx0zsiqpxs2qpw82kgmm1b8gl671s4rz00zs"; depends=[]; };
   tsPI = derive2 { name="tsPI"; version="1.0.3"; sha256="00p7275iq8qn6c6dpqjr5s9fzc0a6njqqi9gvqnh5s9lfx9mbk1v"; depends=[KFAS]; };
   tsSelect = derive2 { name="tsSelect"; version="0.1.8"; sha256="0ysijzhhwaj5n7h50jacshnla6d0h61q0f6lj19ic0lwvlz4yazy"; depends=[forecast]; };
@@ -18119,7 +18204,7 @@ in with self; {
   tspmeta = derive2 { name="tspmeta"; version="1.2"; sha256="028jbbd0pwpbjq4r6jcc1h0p7c4djcb9d2mvgzw1rmpphaxjvrkd"; depends=[BBmisc checkmate fpc ggplot2 MASS splancs stringr TSP vegan]; };
   tsqn = derive2 { name="tsqn"; version="1.0.0"; sha256="1iv1wwa6a9824dbgfk5a609szppc3a8j250z74hb8csjvwwx9qq9"; depends=[fracdiff MASS robustbase]; };
   tsriadditive = derive2 { name="tsriadditive"; version="1.0.0"; sha256="1zk97vz5ag6j0r8w3b5kgl2cx628jmdy73spmwmsw7x5yc24901d"; depends=[survival]; };
-  tsrobprep = derive2 { name="tsrobprep"; version="0.3.1"; sha256="1j4y4zslfrrnzimr87fl9am4n8g4b29sqkf608rrqywa08pahsq7"; depends=[glmnet MASS Matrix mclust quantreg textTinyR zoo]; };
+  tsrobprep = derive2 { name="tsrobprep"; version="0.3.2"; sha256="0y7h8kh721r859b7y5vxh4q7dmjlx50qcc6pib204x3hhzv1yyrc"; depends=[glmnet MASS Matrix mclust quantreg Rdpack textTinyR zoo]; };
   tssim = derive2 { name="tssim"; version="0.1.7"; sha256="154snb0npy8zbkspp475nv9rvv1ls6rbgxz3jr152j79vsiis3ng"; depends=[dsa timeDate tsbox xts zoo]; };
   tsutils = derive2 { name="tsutils"; version="0.9.2"; sha256="0gp8f0a9dn3h4lv38xiw04j832igwhfralzc5vd74r952x7b6hbx"; depends=[forecast MAPA plotrix RColorBrewer]; };
   tsviz = derive2 { name="tsviz"; version="0.1.0"; sha256="099ga750kr9hrkd8vaxhz6h4gha6zfr9jzqwrmgms2h2h1a7jxr7"; depends=[dplyr forecast ggplot2 lubridate magrittr miniUI plotly shiny shinyhelper]; };
@@ -18128,7 +18213,7 @@ in with self; {
   tsxtreme = derive2 { name="tsxtreme"; version="0.3.3"; sha256="1725rkdq377z3c06hc2g9l0dwgfy5gz3pgygpz1pyy83s5c7j869"; depends=[evd MASS mvtnorm tictoc]; };
   ttScreening = derive2 { name="ttScreening"; version="1.6"; sha256="1i8c9l3sdkzl99zxxyfqm84vkh6wjdh3a32l5q8ikf74g9dhxkf4"; depends=[corpcor limma MASS matrixStats simsalapar sva]; };
   ttTensor = derive2 { name="ttTensor"; version="1.0.1"; sha256="0ryfxx4chnc10cl5h5cb4hnvzf2cm64k8m36l4qbjz4f1vkw0a36"; depends=[Matrix PTAk rTensor tensorr]; };
-  ttbary = derive2 { name="ttbary"; version="0.2-0"; sha256="1231ssndf0a0b1g8sz8w5ckw7410c5qmflnsxmizc4v8iiscdibc"; depends=[Rcpp spatstat spatstat_core spatstat_geom spatstat_linnet]; };
+  ttbary = derive2 { name="ttbary"; version="0.2-2"; sha256="1h3ly8vk5v9ggs2fhl0xql074wc1vxip7x8vm70pnqnx5xzg6dfi"; depends=[Rcpp spatstat spatstat_core spatstat_geom spatstat_linnet spatstat_random]; };
   ttbbeer = derive2 { name="ttbbeer"; version="1.1.0"; sha256="1azffcizm3460kxvrxxkilc6qxspyi247x8drrw5ywfichwhmdhc"; depends=[]; };
   ttcg = derive2 { name="ttcg"; version="1.0.1"; sha256="1kha6jp89r8qx5rycwlcl1dprw33j71yng03k9l7q3b7d4lz4bg5"; depends=[numDeriv]; };
   ttdo = derive2 { name="ttdo"; version="0.0.8"; sha256="184rfmrd4y63j8i62w8cy7d6cqgvlhj8h6zgjzsvad9l6pq2hmb3"; depends=[diffobj tinytest]; };
@@ -18184,7 +18269,7 @@ in with self; {
   twoway = derive2 { name="twoway"; version="0.6.3"; sha256="02z2syb0g92d97gjxfkarpil9b2n25s128606h071jl0s88cr4ar"; depends=[]; };
   twowaytests = derive2 { name="twowaytests"; version="1.1"; sha256="00wz8l4ginv1pp1dbjwqbmn4q8i8fnmhz8x3v6riffndw5ag22f2"; depends=[car ggplot2 nortest onewaytests]; };
   twoxtwo = derive2 { name="twoxtwo"; version="0.1.0"; sha256="03wrxzjv21df5c8w9bixfw42m82yf9grv1c4nlw5dy09lsfhl8sv"; depends=[dplyr forcats knitr magrittr rlang tidyr]; };
-  txshift = derive2 { name="txshift"; version="0.3.7"; sha256="0s2wkms4cwkxyqwwd421mcg4mkc6j42kbw76qwdazrg5cw4dp9zc"; depends=[assertthat data_table ggplot2 hal9001 haldensify latex2exp lspline mvtnorm Rdpack scales stringr]; };
+  txshift = derive2 { name="txshift"; version="0.3.8"; sha256="0lniwb7lijcasqmhs1zryb9wqf5xka13q4yb9m2j8dblb51y3i79"; depends=[assertthat data_table ggplot2 hal9001 haldensify latex2exp lspline mvtnorm Rdpack scales stringr]; };
   txtplot = derive2 { name="txtplot"; version="1.0-4"; sha256="00sriml48y70j18jz235dsfm5x3a81bnzskfp3hnv6cbjwwsmca4"; depends=[]; };
   txtq = derive2 { name="txtq"; version="0.2.4"; sha256="1fvjprcwfqbw9c4sqcxv8r0jgvqmkip6d86r3cgrhwyic1ndk1l5"; depends=[base64url filelock R6]; };
   typed = derive2 { name="typed"; version="0.0.1"; sha256="096rzsxjdycf55jx33cxk1284rzb2vcxvp298y4q6v9x0w36php3"; depends=[waldo]; };
@@ -18202,13 +18287,13 @@ in with self; {
   ubms = derive2 { name="ubms"; version="1.1.0"; sha256="016rdjba3h2hm6ps4jrnqzy1hwm0nmn3yq922dbfw8396qvmr2zf"; depends=[BH ggplot2 gridExtra lme4 loo Matrix pbapply Rcpp RcppArmadillo RcppEigen RcppParallel RSpectra rstan rstantools StanHeaders unmarked]; };
   ucbthesis = derive2 { name="ucbthesis"; version="1.0"; sha256="0l855if3a7862lxlnkbx52qa617mby634sbb2gkprj21rwd7lcbp"; depends=[knitr stringr]; };
   uchardet = derive2 { name="uchardet"; version="1.1.0"; sha256="1dnvi45npk7l7sqbv3c1mrg0m7vrrp7iya9kjndcg9x3h0iial9z"; depends=[]; };
-  ucie = derive2 { name="ucie"; version="1.0.0"; sha256="02dk8r96dgi35qxr20s64jrsxaivj5mvwb22bgyjg8yrbwmwzf88"; depends=[colorspace dplyr geometry pracma ptinpoly remotes rgl]; };
+  ucie = derive2 { name="ucie"; version="1.0.1"; sha256="1bi55zw2niv8qixsihwjibfi3k22kvsbi8gcbwxwh93l1mcgicx9"; depends=[colorspace dplyr geometry pracma ptinpoly remotes rgl]; };
   uclust = derive2 { name="uclust"; version="1.0.0"; sha256="10i78fc81sy635mi8nn1gmryvcbqq7f99ws6byqlnhwyw79qmvb1"; depends=[dendextend robcor]; };
   ucminf = derive2 { name="ucminf"; version="1.1-4"; sha256="01vggwg1w71k98qs6fhb0x1843vi322mf4g3hbclks94kcpkisx2"; depends=[]; };
   udapi = derive2 { name="udapi"; version="0.1.3"; sha256="0qyn6fdh8ia913hn2dl0x99xsm20ps8zm52snswlyb00prinm668"; depends=[curl httr]; };
   udpipe = derive2 { name="udpipe"; version="0.8.8"; sha256="0bjl3l652lmq6yyhpc4nyhqgjb0drzk4ppmx4i9m0rrwrf997d9b"; depends=[data_table Matrix Rcpp]; };
   udunits2 = derive2 { name="udunits2"; version="0.13.2"; sha256="0sarkw5ciafiaq1haam8d8w0cmai63wrw2m4rcbjfa5k0648j07f"; depends=[]; };
-  ufRisk = derive2 { name="ufRisk"; version="1.0.1"; sha256="1ax01k7a54qngbyliqd5cr96wv1a63jcij2ywxzvq2ykiv02ksb0"; depends=[esemifar fracdiff rugarch smoots]; };
+  ufRisk = derive2 { name="ufRisk"; version="1.0.3"; sha256="0gqc5faf96pj8pgwddvcbgbp52sai9mscaxp20gx2xgx7zp66l89"; depends=[esemifar fracdiff rugarch smoots]; };
   ufs = derive2 { name="ufs"; version="0.5.2"; sha256="1lqnib0pizx97isqbr4v2r4qp7fph6znbd5arbjnxmlh2wblfbsl"; depends=[digest diptest dplyr ggplot2 ggrepel ggridges gridExtra gtable htmltools kableExtra knitr pander plyr pwr rmdpartials scales SuppDists]; };
   ugatsdb = derive2 { name="ugatsdb"; version="0.2.2"; sha256="0f5fgys80b5nlj5f8jadh5jpylhhb5hsknrsspfac5amncmb0yyv"; depends=[collapse data_table DBI RMySQL writexl]; };
   ugomquantreg = derive2 { name="ugomquantreg"; version="1.0.0"; sha256="1a5vc1qgy3kp1by5bp296w980lkxcghzzxibhap2jg06jnzjfcq8"; depends=[gamlss gamlss_dist pracma Rcpp]; };
@@ -18267,7 +18352,6 @@ in with self; {
   unusualprofile = derive2 { name="unusualprofile"; version="0.1.0"; sha256="0dasknh8hwbvc530d8i0xfizqxygrlz3w2bdnsgdd9sf84flqajl"; depends=[dplyr ggnormalviolin ggplot2 lavaan lifecycle magrittr patchwork purrr ragg rlang scales simstandard tibble tidyr]; };
   unvotes = derive2 { name="unvotes"; version="0.3.0"; sha256="1vfyvwqfbxp29x2a0sqng6l5pkp2hc3hadp95ysnpannnsd6x0jw"; depends=[]; };
   updog = derive2 { name="updog"; version="2.1.2"; sha256="0v8a5vlyv1gabjkxj5fnx05pfm1fqf549895gx6gsyzy2iz1652g"; depends=[assertthat doFuture doRNG foreach future ggplot2 ggthemes iterators Rcpp RcppArmadillo reshape2]; };
-  uplift = derive2 { name="uplift"; version="0.3.5"; sha256="11xikfmg6dg8mhwqq6wq9j9aw4ljh84vywpm9v0fk8r5a1wyy2f6"; depends=[coin MASS penalized RItools tables]; };
   upsetjs = derive2 { name="upsetjs"; version="1.10.11"; sha256="0wmd0hxa51d1aw7gglnkzcn8famrnrybypdaml7wi6yxgjy4wa5s"; depends=[htmlwidgets magrittr]; };
   upstartr = derive2 { name="upstartr"; version="0.1.1"; sha256="09xzj423v0x4qvqfgyqpxyg63p8f1n5ppjc8swpyv1747ll5zmg8"; depends=[beepr crayon dplyr ggplot2 glue here knitr librarian magrittr openxlsx purrr readr readxl rmarkdown scales sf stringr textclean tgamtheme tidytext]; };
   uptasticsearch = derive2 { name="uptasticsearch"; version="0.4.0"; sha256="19sf3zdj424pz4ms0xg4asplf2bczvhl8p22y13jna1g51xyv92a"; depends=[assertthat data_table futile_logger httr jsonlite purrr stringr uuid]; };
@@ -18278,7 +18362,7 @@ in with self; {
   urlshorteneR = derive2 { name="urlshorteneR"; version="1.5.1"; sha256="0vcjjb3r4cmfp5i0zcm3bmn6q4i4xazz1m994yka4gp34zqbz67n"; depends=[assertthat cli clipr httr jsonlite lubridate miniUI shiny stringr]; };
   urltools = derive2 { name="urltools"; version="1.7.3"; sha256="04x3my655dd287cbsszbnf75q0swmjlxxrblcsay7a8n3df3a830"; depends=[Rcpp triebeard]; };
   uroot = derive2 { name="uroot"; version="2.1-2"; sha256="0dsb1vdr2bwy64v889svhvkadg5jl9cl77mfiw79vl18b7ixjzxx"; depends=[]; };
-  ursa = derive2 { name="ursa"; version="3.9.5"; sha256="11vhfb9qivwn9hph8p6x7xjqnh4lcwqz85rc55n5galcmnr812ln"; depends=[jpeg png rgdal]; };
+  ursa = derive2 { name="ursa"; version="3.9.6"; sha256="19bc8sihvyrj4k8wj172b14kknzl5v7y4mpcv97f0pwij3ak7hhc"; depends=[jpeg png rgdal]; };
   us_census_geoheader = derive2 { name="us.census.geoheader"; version="1.0.2"; sha256="17mss1ggaqkd0ac7g9chgqdrpi5xlbfkxsm1jvj48rp2jfwpp4jw"; depends=[tibble]; };
   usa = derive2 { name="usa"; version="0.1.0"; sha256="0scdrd6b48n019f7qp77rrkqgmapnrknalq0hml1cy7m43llqf6d"; depends=[tibble]; };
   usdampr = derive2 { name="usdampr"; version="1.0.1"; sha256="0x84hzsylg22jhvhn4xhkzv4g8j17g73cpj274n7f8cwzcmpj9sx"; depends=[dplyr httr jsonlite tidyr]; };
@@ -18288,20 +18372,21 @@ in with self; {
   usedist = derive2 { name="usedist"; version="0.4.0"; sha256="0ddf1zcalbrn293qmr9kdzz3x16fzc4k1bwb1pjmwnspisqfi8kj"; depends=[]; };
   useful = derive2 { name="useful"; version="1.2.6"; sha256="0n50v1q75k518sq23id14jphwla35q4sasahrnrnllwrachl67v1"; depends=[assertthat dplyr ggplot2 magrittr Matrix plyr purrr scales]; };
   usefun = derive2 { name="usefun"; version="0.4.8"; sha256="0jbwfr04y65rlc2aa6483w9qcdqa4bmcx76j4rp9fracfszjb1hg"; depends=[dplyr]; };
-  usemodels = derive2 { name="usemodels"; version="0.1.0"; sha256="17cnjg7vw3f2jxkqlfvxh6kn891h49waf5k5a5vb4yaa2ay6nhp3"; depends=[cli dplyr purrr recipes rlang tidyr tune]; };
+  usemodels = derive2 { name="usemodels"; version="0.2.0"; sha256="1dc74v4dnbj532cdphskm0y7sqgq1q4yzq634dbvq2bjpqdzf3si"; depends=[cli clipr dplyr purrr recipes rlang tidyr tune]; };
   usethat = derive2 { name="usethat"; version="0.3.0"; sha256="0i6nw3vgll6i31l95iflhq88ssw86pmz46jgw8g6k6f58rgnykmc"; depends=[microservices purrr usethis withr]; };
   usethis = derive2 { name="usethis"; version="2.1.5"; sha256="0lph2rxv7nq3h022gp8d50wbq5lwicnx85d2l5dx876wxhb9wlvx"; depends=[cli clipr crayon curl desc fs gert gh glue jsonlite lifecycle purrr rappdirs rlang rprojroot rstudioapi whisker withr yaml]; };
   usfertilizer = derive2 { name="usfertilizer"; version="0.1.5"; sha256="05zjn39hqjjzzp4v4b1zbqq59205s7k0kikms951h57kbyvjz6vk"; depends=[tidyverse]; };
   ushr = derive2 { name="ushr"; version="0.2.3"; sha256="1ygyqgxw849165lpk81f114kgx9015b9a9dngavjy3ffqzrbb41k"; depends=[dplyr ggplot2 tidyr]; };
   uskewFactors = derive2 { name="uskewFactors"; version="2.0"; sha256="0ndi5987ak8sa7krgiglsibfg0k7z9j8fg47hg1m8ar0sq4r1yj6"; depends=[MASS MCMCpack mvtnorm tmvtnorm]; };
   usl = derive2 { name="usl"; version="3.0.0"; sha256="1ahry485kpzfc0pzi4zm039d5mpv1jycmhdpn0n0zn0drcrlhw0g"; depends=[nlsr]; };
-  usmap = derive2 { name="usmap"; version="0.5.2"; sha256="0p9f2g3nslxhvm8q7zwwfdw892fxnikr1x06z6rxnkibm4k48dj0"; depends=[]; };
+  usmap = derive2 { name="usmap"; version="0.6.0"; sha256="1jdn9rl6kkfmr9d6wrg1673nr7xh5h14ynv2mx64xcn581c9jzis"; depends=[usmapdata]; };
+  usmapdata = derive2 { name="usmapdata"; version="0.1.0"; sha256="13a4bj6ixqzfwm60r2c3i9zy96mr2hk77n720zs5i0i16acfnxav"; depends=[]; };
   ustyc = derive2 { name="ustyc"; version="1.0.0"; sha256="1267bng2dz3229cbbq47w22i2yq2ydpw26ngqa1nbi3ma6hwqsv4"; depends=[plyr XML]; };
   utc = derive2 { name="utc"; version="0.1.5"; sha256="1lhm5rhr78cxp3cz5n6j2zkhjphj7csk026xvvhkjqdi39rrq6i4"; depends=[]; };
   utf8 = derive2 { name="utf8"; version="1.2.2"; sha256="1x6qg19z4qih9lk3mvnmx0vailm1khp5lylw4hlwz6rssj3yw6m7"; depends=[]; };
   utile_tables = derive2 { name="utile.tables"; version="0.2.1"; sha256="0bj3rg4f9dby7qzf0m95dg626ws4nz5v2vn3m50x8g3pqq8m7lmp"; depends=[dplyr purrr rlang tidyselect utile_tools]; };
-  utile_tools = derive2 { name="utile.tools"; version="0.2.6"; sha256="1l3l6x37290ism459kjfbgm2s0w7sa84q93nzrij1z250gv6g0rp"; depends=[lubridate purrr vctrs]; };
-  utile_visuals = derive2 { name="utile.visuals"; version="0.3.0"; sha256="1653wds2126b82bfm22a17xgrkybw6an5j3apg53ag5ykak9pg87"; depends=[dplyr ggplot2 gridExtra purrr]; };
+  utile_tools = derive2 { name="utile.tools"; version="0.2.7"; sha256="1hclxfq7ccrhsirpnpl3kpybd2zn4dc4pk49adqfik5lg9xi8kxh"; depends=[lubridate purrr vctrs]; };
+  utile_visuals = derive2 { name="utile.visuals"; version="0.3.1"; sha256="1j13pvzgi8rv38clxl421ji3c47vg8scragg246xpgmd24yk64a5"; depends=[dplyr ggplot2 gridExtra purrr]; };
   utilities = derive2 { name="utilities"; version="0.4.0"; sha256="0wyi4qs1lzqdjqkx06xn73fcv25mgqax02zqv15cjvblgq4lil35"; depends=[]; };
   utility = derive2 { name="utility"; version="1.4.5"; sha256="0a11bxyg8la6yvxr04qbhay05jb2ihd7calc1zcisgj43kq6k7xd"; depends=[]; };
   utilityFunctionTools = derive2 { name="utilityFunctionTools"; version="0.1.1"; sha256="1225nl83yka31j0adm1210kc89vs3hi9i2pqrykax109sgk0nw97"; depends=[spatstat_geom]; };
@@ -18309,6 +18394,7 @@ in with self; {
   utiml = derive2 { name="utiml"; version="0.1.7"; sha256="16l64scyipj7plwyv6whv3h040sgvzxx43jhjxyhrcdci4pqwh94"; depends=[mldr ROCR]; };
   utr_annotation = derive2 { name="utr.annotation"; version="1.0.4"; sha256="0lldkd5fw86qxngjfvigmkdzynz0712wsk9p51xliqlavivvnpny"; depends=[AnnotationFilter AnnotationHub BiocGenerics biomaRt Biostrings data_table doParallel dplyr ensembldb foreach GenomicFeatures GenomicRanges IRanges keras readr rtracklayer stringr tidyr vcfR xml2]; };
   uuid = derive2 { name="uuid"; version="1.0-3"; sha256="0il35jnci537r8zkinyiy5jp5q530p85ln6dswpj884zclrlcvj5"; depends=[]; };
+  uwedragon = derive2 { name="uwedragon"; version="0.1.0"; sha256="00rrklym9ms74ad58cbn4xkibp8k5d12kcrnb68x7b27grvgfnqf"; depends=[gtools]; };
   uwo4419 = derive2 { name="uwo4419"; version="0.3.0"; sha256="0hk5qhyarjxz7ngj5ak37vx0rak6xv0hfb4sdrsbci3kv5fqijv7"; depends=[DescTools dplyr ggplot2 gmodels haven magrittr psych RColorBrewer rio tibble tidyr]; };
   uwot = derive2 { name="uwot"; version="0.1.11"; sha256="06ylzxmdh8jipbrzgqaiivd2lnqmbcva41cyvc0iyals6vqr1ksg"; depends=[dqrng FNN irlba Matrix Rcpp RcppAnnoy RcppProgress RSpectra]; };
   vICC = derive2 { name="vICC"; version="1.0.0"; sha256="13lcs7wwj1xfbjf3q7r8ssf00jg5hr1vjp2pyw0r42iz7mx47xjv"; depends=[coda ggplot2 nlme Rdpack rjags]; };
@@ -18333,17 +18419,19 @@ in with self; {
   valr = derive2 { name="valr"; version="0.6.4"; sha256="0dd41irvibh6rwi52bw4zg4m7wpyihlp1kdkb8fdji3csw2fiz4k"; depends=[broom dplyr ggplot2 Rcpp readr rlang rtracklayer stringr tibble]; };
   valse = derive2 { name="valse"; version="0.1-0"; sha256="0l3fdsgrmalifcxscjsxsfq07v8vipg0rdw6xh94q7xw5gdfsms0"; depends=[cowplot ggplot2 MASS reshape2]; };
   valueEQ5D = derive2 { name="valueEQ5D"; version="0.7.2"; sha256="1w1l07s1rfxc1ba6kdq0l1vmb2qib6gmdm91706cmy1azfa92n4d"; depends=[testthat]; };
+  valuemap = derive2 { name="valuemap"; version="2.0.0"; sha256="03n2jlmd80yi07vcnp0yjbr94dizf4in5hcqyhh70dl26i6qbmck"; depends=[devtools dplyr h3jsr htmltools leaflet sf]; };
   vamc = derive2 { name="vamc"; version="0.2.1"; sha256="04kkli4xzf3gzvs215lzch8bl877cdq3awh3mz1k321zhsa1d0jn"; depends=[Rdpack]; };
   vampyr = derive2 { name="vampyr"; version="1.1.1"; sha256="137sdv4shmjg1cpndjknrys2jkvyq3p9l11nrdh0bzp9xxc1wkh1"; depends=[corpcor EFA_MRFA fungible GPArotation lavaan moments PCovR psych semPlot]; };
+  vandalico = derive2 { name="vandalico"; version="0.0.1"; sha256="0ipx9yq5wgpwphy1wzpa8jh605k3b5nkhplj4k0bym107010s3qd"; depends=[ROCR]; };
   vanddraabe = derive2 { name="vanddraabe"; version="1.1.1"; sha256="094kd72slq0n3pk0p6zps241aszb9yql49h4mr007zf0kn8wlf8v"; depends=[bio3d cowplot fastcluster ggplot2 openxlsx reshape2 scales]; };
-  vannstats = derive2 { name="vannstats"; version="1.2.1.19"; sha256="0pj162nnzas63xrf03b1v86mf3b1fq66n36xgf4a9k0zvxvy6aj4"; depends=[car dplyr formula_tools ggplot2 gplots MASS purrr rlang rstatix stringr tidyverse]; };
+  vannstats = derive2 { name="vannstats"; version="1.2.2.27"; sha256="0ixad5934fpfyz831vc14300fkyyc95ia87w5jcqmk0l40sks4d7"; depends=[car dplyr formula_tools gdata ggplot2 gplots MASS purrr rlang rstatix stringr tidyverse]; };
   vanquish = derive2 { name="vanquish"; version="1.0.0"; sha256="01di1j36npl7vnyhgsagvyf6j8bxcw867dwf9dgi7l1328s7lf0l"; depends=[changepoint e1071 ggplot2 VGAM]; };
   vapour = derive2 { name="vapour"; version="0.8.5"; sha256="14sxn4vdig31vflrbyzpkqfwdcf9xj468wxd7yicvca0ibmr80yf"; depends=[Rcpp]; };
   varEst = derive2 { name="varEst"; version="0.1.0"; sha256="0i6nsxl5w4zipzrmdvx8plmxr33n405w2qhks3s7zzs3kcys32v6"; depends=[caret glmnet lm_beta SAM]; };
   varImp = derive2 { name="varImp"; version="0.4"; sha256="1bxlfqxi8iiv6raawl9668yhlmbak96ahd0ljzwrilnciqbclc2b"; depends=[measures party]; };
   varSel = derive2 { name="varSel"; version="0.2"; sha256="05dk2s4lzd4sxrwsfs2yqsj08qrdrfwx1fs07nb9a8sd0in6vlpj"; depends=[]; };
   varSelRF = derive2 { name="varSelRF"; version="0.7-8"; sha256="0h49rl1j13yfh97rsfsyh9s2c4wajny4rzms2qw77d0cavxqg53i"; depends=[randomForest]; };
-  varTestnlme = derive2 { name="varTestnlme"; version="1.3.0"; sha256="0hpzwzfwip3ly4ayr7whqdxch7l73aizgik7rkkm62js01iz7y53"; depends=[alabama anocva corpcor doParallel foreach lme4 lmeresampler Matrix merDeriv msm mvtnorm nlme quadprog saemix]; };
+  varTestnlme = derive2 { name="varTestnlme"; version="1.3.1"; sha256="0ql278pbifxkkz560yd9swlky322yb4bwyb043x9kf86fhf6njvj"; depends=[alabama anocva corpcor doParallel foreach lme4 Matrix merDeriv msm mvtnorm nlme nlmeU purrr quadprog saemix]; };
   varband = derive2 { name="varband"; version="0.9.0"; sha256="16z66rx7xq5zan8pnw100c9r5syw1ml4hgzi9mch52aia23v21p9"; depends=[Rcpp RcppArmadillo]; };
   varbin = derive2 { name="varbin"; version="0.2.1"; sha256="0gcynwc0vx7qlp3z0pcc4i7mjlnxkwy8ydxz2wr244fw32qgp4kq"; depends=[rpart]; };
   varbvs = derive2 { name="varbvs"; version="2.5-16"; sha256="0pji7vqpbih01y7n0q6zpxhfszznzig4z3hmmpr4jqpdplv13x8d"; depends=[lattice latticeExtra Matrix nor1mix Rcpp]; };
@@ -18369,7 +18457,7 @@ in with self; {
   vbsr = derive2 { name="vbsr"; version="0.0.5"; sha256="1avskbxxyinjjdga4rnghcfvd4sypv4m39ysfaij5avvmi89bx3b"; depends=[]; };
   vccp = derive2 { name="vccp"; version="0.1.1"; sha256="1c0mk46c74kj5y9rfniywbxxmwb2z16szzpq6b2sw8q0qi1cf5ji"; depends=[mosum mvtnorm VineCopula]; };
   vcd = derive2 { name="vcd"; version="1.4-9"; sha256="13sn77qdcyll9lz7nab0bxzfvpgj8f5rl2cq5ylpz8pibynj1d55"; depends=[colorspace lmtest MASS]; };
-  vcdExtra = derive2 { name="vcdExtra"; version="0.7-5"; sha256="0f822xmgw4iyzyz2p9bwiklj9b6faa2wy632p2895h1grgvnnxmd"; depends=[ca gnm MASS vcd]; };
+  vcdExtra = derive2 { name="vcdExtra"; version="0.7-6"; sha256="1y8yzy5686hn4pp10pg2kh5ga3z60h1849a3didl0fayvml6091q"; depends=[ca gnm MASS vcd]; };
   vcfR = derive2 { name="vcfR"; version="1.12.0"; sha256="0lhxb3ac4fafwik9q3cds46svzf0hyca8k54chw3dpk50c0zz1yx"; depends=[ape dplyr magrittr memuse pinfsc50 Rcpp stringr tibble vegan viridisLite]; };
   vcmeta = derive2 { name="vcmeta"; version="1.0.0"; sha256="18jg3kqdk9162qvhkmrvq0j86nq82iwws20wrfgb4hy1w63bzfz3"; depends=[ggplot2 mathjaxr Rdpack]; };
   vcov = derive2 { name="vcov"; version="0.0.1"; sha256="1w89mr8dk6436bxap28rszajgm9k7sjfqsr1i4p68dlhw8zk4yq1"; depends=[]; };
@@ -18408,7 +18496,7 @@ in with self; {
   versionsort = derive2 { name="versionsort"; version="1.0.0"; sha256="0inyzs6y4dsxwyfpwl90rqx11dyc3j3n4347zyqvyqp5icg7x5m0"; depends=[]; };
   vertexenum = derive2 { name="vertexenum"; version="1.0.2"; sha256="16ywz3z1kzhb3knhhi2i5igm3djdaaxyyrw69wkc5saa7ayhdb4y"; depends=[numbers]; };
   vesselr = derive2 { name="vesselr"; version="0.2.1"; sha256="1wzprnpiv04gxhqgki36gp1a0xj9l3mchllphwkfsdja4axq3prk"; depends=[oro_nifti pbapply pbmcapply]; };
-  vetiver = derive2 { name="vetiver"; version="0.1.1"; sha256="0q37mgwqy69q6vkkgjr9mhc8gl9k0sdf7pp7bym1fag41jspwfzp"; depends=[butcher cli generics glue hardhat httr jsonlite pins plumber purrr rapidoc readr rlang tibble vctrs withr]; };
+  vetiver = derive2 { name="vetiver"; version="0.1.3"; sha256="1yn4vhnkgqqgzkbg2qjpf8n3pm2xdx2p8plxb4y1xffbpzsspjan"; depends=[butcher cli curl generics glue hardhat httr jsonlite lifecycle pins plumber purrr rapidoc readr renv rlang tibble vctrs withr]; };
   vetools = derive2 { name="vetools"; version="1.3-28"; sha256="1470xgqdq9n5kj86gdfds15k3vqidk3h99zi3g76hhyfl8gyl1c0"; depends=[lubridate maptools plyr scales sp stringr tis xts]; };
   vetr = derive2 { name="vetr"; version="0.2.13"; sha256="0wbhi5wzwvvp645dg8na8mh1yxvvfzwdm34xqrqkzh6cvlvlby4c"; depends=[]; };
   vfcp = derive2 { name="vfcp"; version="1.4.0"; sha256="0zj1ihqdx5x1695al1xyi8k001yw8x7gdss72myxlnh7b4flnp9m"; depends=[copula extraDistr stringr]; };
@@ -18428,12 +18516,11 @@ in with self; {
   vines = derive2 { name="vines"; version="1.1.5"; sha256="057d2fdh03cq9kh4vz94arqscahmz14xbr2g59l0vn205lnyilf1"; depends=[ADGofTest copula cubature TSP]; };
   violinplotter = derive2 { name="violinplotter"; version="3.0.0"; sha256="02hyc85bmpc4lzpy4yay73gz4v00wns1ghkkf9sljl3kdgybmyi2"; depends=[]; };
   vioplot = derive2 { name="vioplot"; version="0.3.7"; sha256="1dmdasp3jldc41233z6r08w3j76vyyp9m3jrj7n4ahk48yd5siq6"; depends=[sm zoo]; };
-  viopoints = derive2 { name="viopoints"; version="0.2-1"; sha256="0cpbkkzm1rxch8gnvlmmzy8g521f5ang3nhlcnin419gha0w6avf"; depends=[]; };
   vip = derive2 { name="vip"; version="0.3.2"; sha256="1qsvyfms79sn46jdmq7q5r0d6gwjqhr9pll1y776rx0bj7vx1ax5"; depends=[ggplot2 gridExtra magrittr plyr tibble]; };
   vipor = derive2 { name="vipor"; version="0.4.5"; sha256="112gc0d7f8iavgf56pnzfxb7hy75yhd0zlyjzshdcfbnqcd2a6bx"; depends=[]; };
   viridis = derive2 { name="viridis"; version="0.6.2"; sha256="048kwhbhd49g86cq11fl7vm0whwhjl5gs9xjn040lwcjv78qrdb9"; depends=[ggplot2 gridExtra viridisLite]; };
   viridisLite = derive2 { name="viridisLite"; version="0.4.0"; sha256="0siwr0vq80gs3sbyd542zjb0cl9av5zqdm0fqnym5g6ribf5b6c4"; depends=[]; };
-  virtualPollen = derive2 { name="virtualPollen"; version="1.0.0"; sha256="16q1smwh3ryids3pa7lb4i4pxmjjyl449w6fikkrm9ybj1k8gfcf"; depends=[cowplot ggplot2 mgcv plyr tidyr viridis]; };
+  virtualPollen = derive2 { name="virtualPollen"; version="1.0.1"; sha256="0caiyl7h9qn3nv34dafv5rs4v7n4avyjpng0rkz6aw3ri1zn8sa0"; depends=[cowplot ggplot2 mgcv plyr tidyr viridis]; };
   virtualspecies = derive2 { name="virtualspecies"; version="1.5.1"; sha256="0l86awcjq6i1lqax596xy5qfmzwiz3cwp2rczvgg37fdrym97cm3"; depends=[ade4 raster rworldmap sp]; };
   virtuoso = derive2 { name="virtuoso"; version="0.1.8"; sha256="1smb8sjfqcp3jflplgf92swasxzrp72fnnqwyisf87pjknm91qsc"; depends=[curl DBI digest fs ini odbc processx ps rappdirs]; };
   virustotal = derive2 { name="virustotal"; version="0.2.2"; sha256="020kwhki5740857zd24xm18dg3whzhf527qhmfx1cxyqyld404wy"; depends=[httr plyr]; };
@@ -18450,7 +18537,7 @@ in with self; {
   visreg = derive2 { name="visreg"; version="2.7.0"; sha256="070yhyxxh3w16i54k790n47bgcjn4b10b6g1z553x6afjc3l3a6d"; depends=[lattice]; };
   vistime = derive2 { name="vistime"; version="1.2.1"; sha256="0fdjbzdwsy6fby6rf8l940qwdkbs43is0jy7xkf6gg6vlgc9jgni"; depends=[assertive_types ggplot2 ggrepel plotly RColorBrewer rlang]; };
   vistributions = derive2 { name="vistributions"; version="0.1.2"; sha256="1nzkbyqks38n7gp55iqhrlxqyfwxk4fvqzi9vsb45h0m0hlmwhxr"; depends=[ggplot2 magrittr]; };
-  visualFields = derive2 { name="visualFields"; version="1.0"; sha256="017djw2k9h9dqrndmij061ihjfyx2fdady1vbip09683lyqhggfi"; depends=[boot combinat deldir dplyr DT gtools Hmisc htmlTable oro_dicom plotrix polyclip pracma rlang shiny shinyjs XML]; };
+  visualFields = derive2 { name="visualFields"; version="1.0.1"; sha256="1z62xappwjdv9f7ql5spydkb626rdj3hvpvzy3d71fwm0y3qwki3"; depends=[boot combinat deldir dplyr DT gtools Hmisc htmlTable oro_dicom plotrix polyclip pracma rlang shiny shinyjs XML]; };
   visualize = derive2 { name="visualize"; version="4.4.0"; sha256="1k3jpvj1yysxc4g1a1w3m1y91104aqxqv8jh9qdd23gwy7a29525"; depends=[]; };
   visualpred = derive2 { name="visualpred"; version="0.1.0"; sha256="19jq9h9kiv4vbzqz8zrv5gqb1bprq5jy7mcxvdwpfnna2rja6q4z"; depends=[data_table dplyr e1071 FactoMineR gbm ggplot2 ggrepel magrittr MASS MBA mltools nnet pROC randomForest]; };
   visvow = derive2 { name="visvow"; version="1.3.3"; sha256="01mpiyc893sx8zhx6ddzhdqcgsssz516s4wm0sfkh5fpaz6h1mn5"; depends=[Cairo DT formattable ggdendro ggplot2 ggrepel MASS PBSmapping plot3D plyr pracma psych Rdpack readxl Rtsne shiny shinyBS shinybusy splitstackshape svglite tidyr tikzDevice WriteXLS]; };
@@ -18465,6 +18552,7 @@ in with self; {
   vlad = derive2 { name="vlad"; version="0.2.2"; sha256="0c3zfjm5nj7iisfnl822sk8wdszv6hcsaf51sn7aqnlp579hq2jk"; depends=[BH checkmate dplyr magrittr Rcpp RcppArmadillo tidyr]; };
   vlda = derive2 { name="vlda"; version="1.1.5"; sha256="17xn8qqh043dm05ib3h4l1qx07wxncf5d06x9l1wl6jbkvnsm2nq"; depends=[dplyr ggiraph ggplot2 ggrepel ggsci]; };
   vmd = derive2 { name="vmd"; version="0.1.0"; sha256="17c06a9l6i90ivpvf3rgv6yrsqv36qmywmmy92y5b81zqhgmh907"; depends=[ggplot2 magrittr R6 Rcpp reshape2 scales]; };
+  vmdTDNN = derive2 { name="vmdTDNN"; version="0.1.0"; sha256="1vxlqfcdkwajz9r6rmz48x87csl6d7dqshabhgwnvgvy206jh3b7"; depends=[forecast nnfor vmd]; };
   vmeasur = derive2 { name="vmeasur"; version="0.1.4"; sha256="17rqr8zpfnq3f0d3yi9w09wvrbq79g4w7rkqf4l2wyd8ic5npwb0"; depends=[av crayon doFuture dplyr foreach future ggplot2 ggpubr imager magrittr pdftools pracma progressr purrr readr rlang scales stringr svDialogs tidyr]; };
   vmr = derive2 { name="vmr"; version="0.0.3"; sha256="1qxcbmf71xwlmi5wyjs3a86ywjd0cj6f86kyq5bpw4ykn797kciw"; depends=[curl jsonlite]; };
   vntrs = derive2 { name="vntrs"; version="0.1.0"; sha256="0ffjjzcs7i4zli7bn83gkgi0q7dmgyxrhv9l3gdambma9hsig45c"; depends=[trust]; };
@@ -18490,12 +18578,13 @@ in with self; {
   vprr = derive2 { name="vprr"; version="0.1.0"; sha256="0wxcaw6r56wd8sxr5xc10xbhg9cbfz82z4cn4x0w8qhrzwl4v0zl"; depends=[dplyr ggplot2 gridExtra gsw interp lubridate magick metR oce stringr tidyr usethis]; };
   vrcp = derive2 { name="vrcp"; version="0.1.1"; sha256="1wrch1dqy752gkj24h1dgi2x3kf1797xj4pf1s9mszf3x3ic905d"; depends=[ggplot2]; };
   vrmlgen = derive2 { name="vrmlgen"; version="1.4.9"; sha256="0lifhhf41yml4k83wpkssl14jgn8jaw1lcknwbci1sd8s1c4478l"; depends=[]; };
-  vrnmf = derive2 { name="vrnmf"; version="1.0.1"; sha256="05azg867vir437rsi87sbx146fl3y0kf16ky09hs1bprmhvf2xvd"; depends=[ica lpSolveAPI Matrix nnls quadprog]; };
+  vrnmf = derive2 { name="vrnmf"; version="1.0.2"; sha256="0n0kmzhygaii9kipcmr943s0vcf8brxgsk25m9illd4fij6nwpp2"; depends=[ica lpSolveAPI Matrix nnls quadprog]; };
   vroom = derive2 { name="vroom"; version="1.5.7"; sha256="1plz20x6s01gkkcac51lhx4r2s024pgh778ri7y25hkiiwacp1yh"; depends=[bit64 cli cpp11 crayon glue hms lifecycle progress rlang tibble tidyselect tzdb vctrs withr]; };
   vrtest = derive2 { name="vrtest"; version="0.97"; sha256="00hdgb0r18nwv3qay97b09kqqw9xqsbya06rrjyddqh9r6ggx1y0"; depends=[]; };
   vscc = derive2 { name="vscc"; version="0.2"; sha256="1p14v8vd8kckd44g4dvzh51gdkd8jvsc4bkd2i4csx8vjiwrni5w"; depends=[mclust teigen]; };
   vsd = derive2 { name="vsd"; version="0.1.0"; sha256="18whnvary4glblzx1vxf3yzsllnnnbnyijwhbw7bi3agppnwrf22"; depends=[dplyr flexsurv ggplot2 ggpubr magrittr muhaz survival survminer]; };
   vsgoftest = derive2 { name="vsgoftest"; version="1.0-1"; sha256="0vypi4cf04bljmx3jwq3ixs86ivd6p7a825ik189y71fyqg9g70v"; depends=[fitdistrplus Rcpp]; };
+  vsp = derive2 { name="vsp"; version="0.1.0"; sha256="0fa3fdjhq59gpx0ac38ska0sfhq07g9x3vhbvrvlpc18kxwj5mzh"; depends=[ggplot2 glue invertiforms LRMF3 magrittr Matrix rlang RSpectra tibble withr]; };
   vstsr = derive2 { name="vstsr"; version="1.1.0"; sha256="071nfxkwwpbp2d8khxq7d1pp268pa1fcfj619bs6xwg4wk9srr3k"; depends=[httr jsonlite R6 RCurl]; };
   vtable = derive2 { name="vtable"; version="1.3.3"; sha256="1a1rw5n3j2ylhg0sjbdszkw5l9971s7lih9shmyhpikx79j4qgm5"; depends=[haven kableExtra knitr rstudioapi sjlabelled]; };
   vtreat = derive2 { name="vtreat"; version="1.6.3"; sha256="181nsjl811m3k1123bvgnnwr253sc2mbj4ljzmawz9wl7dfbwfij"; depends=[digest wrapr]; };
@@ -18504,16 +18593,15 @@ in with self; {
   vudc = derive2 { name="vudc"; version="1.1"; sha256="0zxz6n3ixa3xjzcinky8ymqjx9w8y8z65mz8d84dl00mxzkmkz4h"; depends=[]; };
   vueR = derive2 { name="vueR"; version="0.5.3"; sha256="0am4iwgadi9c9f7zm5zx3nrzyhy7w1qgp9rkyypzwb6bicjjb9cz"; depends=[htmltools htmlwidgets]; };
   vwline = derive2 { name="vwline"; version="0.2-2"; sha256="1hilr996xn5wh8kfyab55w2i1c02a8x909h4ahag5q6s7603qng5"; depends=[gridBezier polyclip]; };
-  vwr = derive2 { name="vwr"; version="0.3.0"; sha256="1h790vjcdfngs1siwldvqz8jrxpkajl3266lzadfnmchfan1x7xv"; depends=[lattice latticeExtra stringdist]; };
   wBoot = derive2 { name="wBoot"; version="1.0.3"; sha256="08qgkkv6jvqmxq5gvfp7jbrc3k8mxajfww7k8a3p8888aq411p7q"; depends=[boot simpleboot]; };
   wCorr = derive2 { name="wCorr"; version="1.9.5"; sha256="10mnrs5ymc3ms1z5vs0h05rjq1642n3asvm77x7lxq9qwx67s3vn"; depends=[minqa mnormt Rcpp RcppArmadillo]; };
+  wINEQ = derive2 { name="wINEQ"; version="1.0.1"; sha256="0vsi930gp7w2ddqfy7dw82w89v7vrrv8x5zg9j8bhiz4kaf53153"; depends=[dplyr sampling]; };
   wISAM = derive2 { name="wISAM"; version="0.2.8"; sha256="0c5ic98ihpzkycsj9wg0127civm4w1rmkkw6zsjp8sfn20cl8a8z"; depends=[MASS]; };
   wNNSel = derive2 { name="wNNSel"; version="0.1"; sha256="19j2yz6lvkxpmjr0vv6pjc7j1c02y0hb3gay5sy1y0xk706aggb5"; depends=[]; };
   wPerm = derive2 { name="wPerm"; version="1.0.1"; sha256="0f3v0kba87wkwyii0pzvs6a8ja897aifpvwkvryl2hzxxxaml7z4"; depends=[]; };
-  wSVM = derive2 { name="wSVM"; version="0.1-7"; sha256="0c7rblzgagwfb8mmddkc0nd0f9rv6kapw8znpwapv3fv0j2qzq7h"; depends=[MASS quadprog]; };
   wTO = derive2 { name="wTO"; version="1.6.3"; sha256="1cgbw37b734ipg5qhjsil55qysfn6xmymj1q99ybkadi0axp55nn"; depends=[data_table igraph magrittr plyr reshape2 shiny som visNetwork]; };
   waccR = derive2 { name="waccR"; version="0.1.0"; sha256="092p1bibyqx1gcrch68l9ilzilg5aqf46b6iagm562292cfi074l"; depends=[dplyr lubridate magrittr rvest tibble xml2]; };
-  wacolors = derive2 { name="wacolors"; version="0.2.1"; sha256="03ax5r3qshfdrywqwyhz5laqvwajkvvzwq8sh9a6mi3dgr7vcd0m"; depends=[ggplot2 scales]; };
+  wacolors = derive2 { name="wacolors"; version="0.3.1"; sha256="0c5ja70vgb2f1l2k5j7amxhkydbj44nc290ccr816xglj31nvsiy"; depends=[ggplot2 scales]; };
   wactor = derive2 { name="wactor"; version="0.0.1"; sha256="0dc7413jb3yz0nns2lc93w32wv6m4sg17j2ip63gc12vis0nf855"; depends=[ggplot2 Matrix R6 text2vec tibble tokenizers xgboost]; };
   waffle = derive2 { name="waffle"; version="0.7.0"; sha256="1qjmai33p96cyavi9lgi6k30h6fj7db5sr569v9jf4kwx92c61df"; depends=[extrafont ggplot2 gridExtra gtable RColorBrewer]; };
   wahc = derive2 { name="wahc"; version="1.0"; sha256="1324xhajgmxq6dxzpnkcvxdpm2m3g47drhyb2b3h227cn3aakxyg"; depends=[]; };
@@ -18521,15 +18609,15 @@ in with self; {
   wakefield = derive2 { name="wakefield"; version="0.3.6"; sha256="1rssh6v8m6fim2pvm4cjw8cbni77bv5qp0rwi6vwdl3jhi5zws7n"; depends=[chron dplyr ggplot2 stringi]; };
   wal = derive2 { name="wal"; version="0.1.0"; sha256="0n81c2i2wzmy33kk1k4zjjgv1irh8xqw05clif8n86qr4m0a01sv"; depends=[freesurferformats imager jpeg png spacesXYZ]; };
   waldo = derive2 { name="waldo"; version="0.3.1"; sha256="16q1xjbl9g04l1r1x3nid9hmz1sa35q6j33bigdzh4y4zcd8qb7c"; depends=[cli diffobj fansi glue rematch2 rlang tibble]; };
-  walker = derive2 { name="walker"; version="1.0.3-1"; sha256="05pqipf4jx6syfqdmh0cs2pljbp1acsy2igljmxbywfniabj3fqp"; depends=[bayesplot BH coda dplyr ggplot2 Hmisc KFAS loo Rcpp RcppArmadillo RcppEigen RcppParallel rlang rstan rstantools StanHeaders]; };
+  walker = derive2 { name="walker"; version="1.0.4"; sha256="0qfvzg6wchl3933f2zahzl665badyj12161h0rz8a92rji004p8i"; depends=[bayesplot BH coda dplyr ggplot2 Hmisc KFAS loo Rcpp RcppArmadillo RcppEigen RcppParallel rlang rstan rstantools StanHeaders]; };
   walkscoreAPI = derive2 { name="walkscoreAPI"; version="1.2"; sha256="1c2gfkl5yl3mkviah8s8zjnqk6lnzma1yilxgfxckdh5wywi39fx"; depends=[]; };
-  wallace = derive2 { name="wallace"; version="1.1.0"; sha256="0rbk6cma6w16aakqg0ibx2c6ziyb3k0lbsdp7wn3pk9zi8xrs5qk"; depends=[dismo dplyr DT ENMeval jsonlite leaflet leaflet_extras magrittr raster RColorBrewer rgdal rgeos rmarkdown shiny shinyjs shinythemes sp spocc spThin zip]; };
+  wallace = derive2 { name="wallace"; version="1.1.3"; sha256="0q9nppyiijzbmdi6dvgnh8l8i1vassqcl5wc7bv08hidxbkw3pqs"; depends=[dismo dplyr DT ecospat ENMeval jsonlite leaflet leaflet_extras magrittr raster RColorBrewer rgdal rgeos rmarkdown shiny shinyjs sp spocc spThin zip]; };
   wally = derive2 { name="wally"; version="1.0.10"; sha256="1d03vxn6q7v0nsrkd7dxkkv3siysgicv6c13fkvwmypln9vsl6sl"; depends=[data_table prodlim riskRegression]; };
   walmartAPI = derive2 { name="walmartAPI"; version="0.1.5"; sha256="1nng8izncj2nmmpywn1ggpzvjh8q7y3q6260qhy9kbmvrrl26spf"; depends=[dplyr glue httr magrittr purrr stringr tibble]; };
-  walrus = derive2 { name="walrus"; version="1.0.3"; sha256="1nk2glcvy4hyksl5ipq2mz8jy4fss90hx6cq98m3w96kzjni6jjj"; depends=[ggplot2 jmvcore R6 WRS2]; };
+  walrus = derive2 { name="walrus"; version="1.0.4"; sha256="0h1cxkkb53498flx2fbnl3w7pjqs8rgz0hc5nb69n6a4aj6vhyfk"; depends=[ggplot2 jmvcore R6 WRS2]; };
   wand = derive2 { name="wand"; version="0.5.0"; sha256="0y9xmh9a93lnadg83i223j2nf77jazz8m1ck1bmdf5jwj4vyzaqa"; depends=[]; };
   warabandi = derive2 { name="warabandi"; version="0.1.0"; sha256="0b1g2fpshhkd15b6fz4v3qwf425p5ahbh57acclqq6znl1acl1hg"; depends=[flextable lubridate readtext]; };
-  warbleR = derive2 { name="warbleR"; version="1.1.26"; sha256="1im3ifh1dwj0w8zz0j6023z615qvybm7ycy25sp9ynh67p9yza7v"; depends=[bioacoustics crayon dtw fftw knitr monitoR NatureSounds pbapply Rcpp RCurl rjson seewave stringi tuneR]; };
+  warbleR = derive2 { name="warbleR"; version="1.1.27"; sha256="1fd008v3di7z5ixljk5zwaw2wcc4zfqlnw9546894ybw5m9jsk26"; depends=[bioacoustics crayon dtw fftw knitr monitoR NatureSounds pbapply Rcpp RCurl rjson seewave stringi tuneR]; };
   warp = derive2 { name="warp"; version="0.2.0"; sha256="0s0acddc5h14245hi1faycxp0fyvw6nlgaz2df7da4fpyd2f638f"; depends=[]; };
   warpMix = derive2 { name="warpMix"; version="0.1.0"; sha256="13zbl4aifhg7j5b3vpwgzgs09hr7yblz0rckmj5qh40s78j8cpfn"; depends=[fda fields lme4 MASS nlme reshape2]; };
   washdata = derive2 { name="washdata"; version="0.1.3"; sha256="0m7rwwi189sbsv3144x14jqmfax30f6ri1pisy47yggmmjpdplps"; depends=[]; };
@@ -18540,7 +18628,7 @@ in with self; {
   waterYearType = derive2 { name="waterYearType"; version="1.0.1"; sha256="09brbqcd41khycz9lhn84w68wpk8lsdnzb6lzc10gm5s5ambgj06"; depends=[]; };
   waterfall = derive2 { name="waterfall"; version="1.0.2"; sha256="0jy6l9mx0dixwnkychdl18sf4xh73pm0qd1jyxp9rlnv1vcragjp"; depends=[lattice]; };
   waterfalls = derive2 { name="waterfalls"; version="0.1.2"; sha256="01gby1mlhrwcalizpywxcakkx2zifswb0188nrl6z9dkkd1866lm"; depends=[ggplot2]; };
-  waterquality = derive2 { name="waterquality"; version="0.2.6"; sha256="0386sd772l6vm5pdjj21i5byc6673hwbdixm0av6nc82pqf524xr"; depends=[caret dplyr magrittr pingr purrr raster rgdal vctrs]; };
+  waterquality = derive2 { name="waterquality"; version="0.3.0"; sha256="0aikgz4x2ny2q7mnxsyk5pl87yb9gq6pcvvnj1s32383683j5ys9"; depends=[caret dplyr magrittr pingr purrr raster rgdal vctrs]; };
   wavScalogram = derive2 { name="wavScalogram"; version="1.1.1"; sha256="15y5gqp39jx0ggsimmf7k22qg1142c55apd04q05jqi50ljzda70"; depends=[abind colorRamps fields]; };
   waveband = derive2 { name="waveband"; version="4.7.1"; sha256="1ja8jfvv790s6ih50iz6zykpq06dbzqi28cp8vyqcd1iz2bkdixp"; depends=[wavethresh]; };
   waved = derive2 { name="waved"; version="1.2"; sha256="0zv4rgazk9s295pggzfa7sc062zv68dgds1ngxcz7vg1fx0qkgxg"; depends=[]; };
@@ -18548,7 +18636,7 @@ in with self; {
   wavelets = derive2 { name="wavelets"; version="0.3-0.2"; sha256="07706rsjdmzj46ib2kfm5lfk4bnm2wfw7rby0ixs6x0myyzxdl92"; depends=[]; };
   wavemulcor = derive2 { name="wavemulcor"; version="3.1.2"; sha256="0a9qhcgf0l3zpwq8m476py94wb4rasy6a8xj302y6kwg3gvh1smm"; depends=[plot3D RColorBrewer waveslim]; };
   waver = derive2 { name="waver"; version="0.2.1"; sha256="1kl14cd96fwrqvk35sqbgi8bf31gc2ccxxy5d1v46scwyqkb0g5l"; depends=[geosphere rgdal rgeos sp]; };
-  waves = derive2 { name="waves"; version="0.2.1"; sha256="04zf4bfdranwmml1i9vz7p59siw199k873g7yjdhc7cncjdc6ain"; depends=[caret dplyr ggplot2 lifecycle magrittr pls prospectr randomForest readr rlang scales spectacles stringr tibble tidyr tidyselect]; };
+  waves = derive2 { name="waves"; version="0.2.3"; sha256="0k79mdvr08hbncxr7920blfkjn2pwrsi6qbcqk4bafs8s9c361bq"; depends=[caret dplyr ggplot2 lifecycle magrittr pls prospectr randomForest readr rlang scales spectacles stringr tibble tidyr tidyselect]; };
   waveslim = derive2 { name="waveslim"; version="1.8.2"; sha256="0ibivnhz0l06sss5rrrcvyiwg3qpbyk3qn4vx4pp90kj09x4yg0k"; depends=[]; };
   wavethresh = derive2 { name="wavethresh"; version="4.6.8"; sha256="1nz74bm7pgck1i9c28svxnic8wkwkm5dhc8bhrxiih5wxb36kcwk"; depends=[MASS]; };
   waydown = derive2 { name="waydown"; version="1.1.0"; sha256="1yjx9cd8h8rsi44s7dcqrvfmsbjhw7vkg2z7bl4knsgbki0c978g"; depends=[Matrix numDeriv]; };
@@ -18561,7 +18649,6 @@ in with self; {
   wcep = derive2 { name="wcep"; version="1.0.0"; sha256="1hpakygvh3b64i5hwkriwq5g8vnvghvgdj0jn9m59j43050k32cy"; depends=[coin dplyr progress tidyr]; };
   wdm = derive2 { name="wdm"; version="0.2.2"; sha256="1pidlfp67x3wnmkp0qgna4vz29qx09xsy7gfbqzrjqkdi7q1dihi"; depends=[Rcpp]; };
   wdman = derive2 { name="wdman"; version="0.2.5"; sha256="1yf41lsrr9dbf5n4f5hv9mlmzl736fhnp9gxkm2g9apws6gsig02"; depends=[assertthat binman processx semver yaml]; };
-  wdnr_gis = derive2 { name="wdnr.gis"; version="0.1.2"; sha256="03z9qayrv34lgajvwg77b0h7z65r04wzlkaazpdfxq9wk027g3a9"; depends=[arcpullr dplyr ggplot2 httr jsonlite rlang sf]; };
   wdpar = derive2 { name="wdpar"; version="1.3.2"; sha256="0fgypgv6dl22ni90m7g2fsw56b8ml9pvxrqkwkzmxnlb8hmg0r1k"; depends=[assertthat cli countrycode curl httr lwgeom progress rappdirs RSelenium sf sp tibble wdman xml2]; };
   weaana = derive2 { name="weaana"; version="0.1.1"; sha256="1wjvn78fkgc28ag1idy7h6sm0rvl57wbqdbxgbl3g5xv844vh8ls"; depends=[dplyr lubridate magrittr reshape2 rlang settings tibble]; };
   weakARMA = derive2 { name="weakARMA"; version="1.0.2"; sha256="1i4hkjjx35jkvg7jbiv1szmlnj1nx1s77sa7361407i7wmf41xkf"; depends=[CompQuadForm MASS matrixStats vars]; };
@@ -18611,11 +18698,12 @@ in with self; {
   wgaim = derive2 { name="wgaim"; version="2.0-1"; sha256="1qiyfkpsbzjr9xsq5kqq6rlqpndngkn2irdfh3gyi45h6hn118j4"; depends=[ggplot2 qtl]; };
   wgeesel = derive2 { name="wgeesel"; version="1.5"; sha256="0lybvsq5168cjybzv2dbyx2z8aakcx7i7ivm8zc90haiispm9n5x"; depends=[bindata CRTgeeDR geepack MASS PoisNor]; };
   whSample = derive2 { name="whSample"; version="0.9.6.2"; sha256="1dkw155xk36r9vmkqxlg2vw45nbpypivd8q5v3i5995biyib4l2k"; depends=[bit64 data_table dplyr magrittr openxlsx purrr]; };
-  wheatmap = derive2 { name="wheatmap"; version="0.1.0"; sha256="1c1xvzy194vw3idkwkqp9kyrfldzczj30cl15jw1bbnw87zcwdzy"; depends=[colorspace RColorBrewer]; };
+  wheatmap = derive2 { name="wheatmap"; version="0.2.0"; sha256="064idlrnb85xxav39gp3n854fic6514khvazrf5d0x48crpzyvdp"; depends=[colorspace RColorBrewer]; };
   whereami = derive2 { name="whereami"; version="0.1.9"; sha256="0mjq9haacsf0zkgh7xxx8dr67hnw5ijjdhaz8c69mfjmd2zfzfwq"; depends=[cli jsonlite rstudioapi]; };
   whereport = derive2 { name="whereport"; version="0.1"; sha256="1gdqzr2hrnpxbwl7cfps4m3xja8wkgwfs50i2nailybympvdnxm4"; depends=[dplyr]; };
+  whippr = derive2 { name="whippr"; version="0.1.0"; sha256="1anrbrb9bp9kll70wjc1861incmjp85w1cw7y9r7pah26ajvxm80"; depends=[broom cli dplyr ggplot2 glue lubridate magrittr minpack_lm nlstools patchwork pillar purrr readxl rlang stringr tibble tidyr usethis zoo]; };
   whisker = derive2 { name="whisker"; version="0.4"; sha256="1a7vz0dk95xfjvi38wbpw8vmf5qn3g8p490msz2rw0piwidmk1ks"; depends=[]; };
-  whitebox = derive2 { name="whitebox"; version="2.0.0"; sha256="0qw96ma3hbwqc258chcsjgg0c6c3xi6d1q0iin3rdr8nvczinxma"; depends=[]; };
+  whitebox = derive2 { name="whitebox"; version="2.1.0"; sha256="17g2kq21bmgq3ywhld14gxrns5l1ghahdi4vim849ybi703x37xn"; depends=[]; };
   whitechapelR = derive2 { name="whitechapelR"; version="0.3.0"; sha256="0mnq5m59mw8w5g1p0h2xzlz738j397b3444km59bm5yln3j0nsbi"; depends=[igraph plyr]; };
   whitening = derive2 { name="whitening"; version="1.3.0"; sha256="13c06sk4n2821pskqi8vk61khyhswddcir9qr8zy15czn5id3i1j"; depends=[corpcor]; };
   whitestrap = derive2 { name="whitestrap"; version="0.0.1"; sha256="1jcnxqxvkhyz9j6jay5834ncv5fxb9qiyyyj3b8al75mqknmn8ra"; depends=[]; };
@@ -18642,14 +18730,13 @@ in with self; {
   wilson = derive2 { name="wilson"; version="2.4.2"; sha256="050hi6rigs024is1ry0yymqapgqfhzpp0ghk5ya028k71k22lksx"; depends=[circlize colourpicker ComplexHeatmap data_table DESeq2 DT factoextra FactoMineR ggplot2 ggrepel gplots heatmaply log4r openssl plotly plyr R6 RColorBrewer reshape rintrojs rje rjson RJSONIO scales shiny shinycssloaders shinydashboard shinyjs shinyWidgets viridis zip]; };
   winRatioAnalysis = derive2 { name="winRatioAnalysis"; version="0.1.0"; sha256="1msvc06bfzw9clinxbvr5fdw38dff0c0xii46182nwnk5kj0libr"; depends=[data_table JM Matrix MLEcens mvtnorm nlme plyr pssm survival]; };
   winch = derive2 { name="winch"; version="0.0.7"; sha256="0h9xf4qpc1xk04q92dn4n1pjvlwz2sxg0rcv6nkwyp9qj67m6h88"; depends=[procmaps]; };
-  windAC = derive2 { name="windAC"; version="1.2.6"; sha256="0yx0jiz3c4slv366sic01k8l460idh4n6a797biy7wyrp6jj241x"; depends=[mvtnorm sf]; };
   windex = derive2 { name="windex"; version="2.0.3"; sha256="063lhxpa8gwkaxa5p61dac239s6b11mv53d8dcah5h1q04inshm0"; depends=[ape geiger phangorn scatterplot3d]; };
   windsoraiR = derive2 { name="windsoraiR"; version="0.1.2"; sha256="1smd3zw5ra1fba6mds3diadcmbw59jlvmrvfzzi4fss91wv50jql"; depends=[jsonlite]; };
   winfapReader = derive2 { name="winfapReader"; version="0.1-3"; sha256="1g5z9kg5ws9cdixky2y0c7dw3f7lmh3ykjxrh3jjmkm75gzgs7p0"; depends=[lubridate]; };
   wingui = derive2 { name="wingui"; version="0.2"; sha256="0yf6k33qpcjzyb7ckwsxpdw3pcsja2wsf08vaca7qw27yxrbmaa3"; depends=[Rcpp]; };
   wiqid = derive2 { name="wiqid"; version="0.3.0"; sha256="0jqnlyw5iljpm7135fgnkwjvxmbjbqiqq6lchwnjmhbb5xd3kbvr"; depends=[coda HDInterval MASS mcmcOutput plotrix truncnorm]; };
   wiseR = derive2 { name="wiseR"; version="1.0.1"; sha256="187ylwhk06957x9zm5r0m6w9wg08im83myz3s4gr927ig8yv3b5f"; depends=[arules bnlearn DescTools dplyr DT graph HydeNet igraph linkcomm missRanger psych RBGL Rgraphviz rhandsontable rintrojs shiny shinyalert shinyBS shinycssloaders shinydashboard shinyWidgets visNetwork]; };
-  withr = derive2 { name="withr"; version="2.4.3"; sha256="0k4x2bd9wb24n3dyg7rdjicdjs5ay2kk5lfgkrcjsv6cki2wgnlv"; depends=[]; };
+  withr = derive2 { name="withr"; version="2.5.0"; sha256="1h4bzj0am9lawbh1cam1jmgk1xjmn9da14r90w3q984hswz7nc9p"; depends=[]; };
   wk = derive2 { name="wk"; version="0.6.0"; sha256="1xga4rrqsr190g55by39az4nimnn06bf5b6mcjgwqvba0lvjhb5g"; depends=[]; };
   wkNNMI = derive2 { name="wkNNMI"; version="1.0.0"; sha256="0qpl1b2134kz9mjl38w93lp3g6kpv9ygv9hygpssm845k02hkw7c"; depends=[foreach infotheo]; };
   wkb = derive2 { name="wkb"; version="0.4-0"; sha256="0mah538345npkb06bcj18mb6qnnx8nn7bdqmvqqpbawallh546a9"; depends=[sp]; };
@@ -18674,17 +18761,18 @@ in with self; {
   wordler = derive2 { name="wordler"; version="0.3.1"; sha256="0pvnijh2gvwjbd86ivky0zbi8y1x40xazsv2bdy5s2rfsscf4l88"; depends=[crayon]; };
   wordmatch = derive2 { name="wordmatch"; version="1.0"; sha256="0zscp361qf79y1zsliga18hc7wj36cnydshrqb9pv67b65njrznz"; depends=[plyr reshape2]; };
   wordnet = derive2 { name="wordnet"; version="0.1-15"; sha256="158c5fps4kvfd9mj1im8jb9rv7ipfshyagrv0q3b55ywnkrkvjqb"; depends=[rJava]; };
-  wordpiece = derive2 { name="wordpiece"; version="2.0.1"; sha256="1szyj6yck4xvv41vw6l0bw31jxgxn4qg700cvx1bn40xlg2z05as"; depends=[dlr piecemaker purrr rlang stringi wordpiece_data]; };
-  wordpiece_data = derive2 { name="wordpiece.data"; version="1.0.2"; sha256="11nd5zxksyxb26gpp85vfmxgwigskvablgvyd5r914nil9lvi7ca"; depends=[]; };
+  wordpiece = derive2 { name="wordpiece"; version="2.1.3"; sha256="1xg9xsaqpz5l2f2vk1qnc7cwplnwvv6jl9wbdg0f92klhk1nanyp"; depends=[dlr fastmatch memoise piecemaker rlang stringi wordpiece_data]; };
+  wordpiece_data = derive2 { name="wordpiece.data"; version="2.0.0"; sha256="0x5m8vkszxpz8mf9pblzm39wpaa247336zkja560zsqgzdvcj3hx"; depends=[]; };
   wordpredictor = derive2 { name="wordpredictor"; version="0.0.3"; sha256="0079nkjimzz07yzqx8ksgk7isi0b5j1nxmisicbc8qvsamirm68v"; depends=[digest dplyr ggplot2 patchwork SnowballC stringr]; };
   words = derive2 { name="words"; version="1.0.1"; sha256="1kd9f5470c7bdayb324m4m72v7s2kknr68qbggl5m0ww29gxs9wd"; depends=[]; };
   wordsalad = derive2 { name="wordsalad"; version="0.2.0"; sha256="18kgwq6f9ymm1bmbvpmxq9gz5fx0qj64439scr21kk1cvsfl4y88"; depends=[fastTextR text2vec tibble word2vec]; };
-  wordspace = derive2 { name="wordspace"; version="0.2-6"; sha256="11y57mzd12klwd2xzr38nvlrxg9jsi33mxd8nnvc96hgrjsgwakl"; depends=[cluster iotools MASS Matrix Rcpp sparsesvd]; };
+  wordspace = derive2 { name="wordspace"; version="0.2-7"; sha256="0hrjv5mag7gwl4wj7np248sdyns5i623wl37b11hlgalhbmlypyf"; depends=[cluster iotools MASS Matrix Rcpp sparsesvd]; };
+  workboots = derive2 { name="workboots"; version="0.1.0"; sha256="17j4vz58i645br6pb8b75kk9jib44vs2zjgfc3slj3g39my7n01b"; depends=[assertthat dplyr generics purrr rlang rsample tibble tidyr vip workflows]; };
   workflowr = derive2 { name="workflowr"; version="1.7.0"; sha256="0j1ahxm7xjla1xa38dc8ykn1j5a4yw1p8ivjk3k3va25kam25cp3"; depends=[callr fs getPass git2r glue httpuv httr knitr rmarkdown rprojroot rstudioapi stringr whisker xfun yaml]; };
   workflows = derive2 { name="workflows"; version="0.2.4"; sha256="1sxrgza922p137z41jcj2iwk19lxzwh6kp4kz7h9kw0b8rvfqwab"; depends=[cli ellipsis generics glue hardhat lifecycle parsnip rlang tidyselect vctrs]; };
   workflowsets = derive2 { name="workflowsets"; version="0.1.0"; sha256="0596hb17mshpag3vjy2wl6fi2mdw54i9gc5za10vzy8vpkigb9jy"; depends=[cli dplyr generics ggplot2 hardhat lifecycle prettyunits purrr rlang rsample tibble tidyr tune vctrs withr workflows]; };
   workloopR = derive2 { name="workloopR"; version="1.1.4"; sha256="1gynlvmqxyibql5j3db9dwvc0jsc9jqzpy3d3gp43d5lcl11mcmq"; depends=[pracma signal]; };
-  worldfootballR = derive2 { name="worldfootballR"; version="0.4.9"; sha256="03jfjajyw0652dszway05f727i6viys7bhjpv0xk0a0sa497zz05"; depends=[dplyr glue janitor jsonlite lubridate magrittr progress purrr qdapRegex readr rlang rvest stringi stringr tidyr withr xml2]; };
+  worldfootballR = derive2 { name="worldfootballR"; version="0.4.10"; sha256="01fdrz94wys8kkpz6sdrj3iwi00jqkmycb7f6zcg6k1hhyizfqx6"; depends=[dplyr glue janitor jsonlite lubridate magrittr progress purrr qdapRegex readr rlang rvest stringi stringr tidyr withr xml2]; };
   worldmet = derive2 { name="worldmet"; version="0.9.5"; sha256="03dc93b6akah0pf36h0327jb65slsb3bypyv57cnkyxwyvni6w4s"; depends=[doParallel dplyr foreach leaflet openair purrr readr tidyr]; };
   worms = derive2 { name="worms"; version="0.2.2"; sha256="183chjdi5qvsmdznvc9igcxaz769a37rwh5nzgvf5zf012a85wir"; depends=[httr plyr]; };
   worrms = derive2 { name="worrms"; version="0.4.2"; sha256="1gpbyplfpcrapmci8axarrjjijsgh2dmhnsn79g1lhrafvm2ichs"; depends=[crul data_table jsonlite tibble]; };
@@ -18702,7 +18790,7 @@ in with self; {
   wqs = derive2 { name="wqs"; version="0.0.1"; sha256="14qaa9g9v4nqrv897laflib3wwhflyfaf9wpllmbi5xfv9223rcg"; depends=[glm2 Rsolnp]; };
   wrGraph = derive2 { name="wrGraph"; version="1.3.0"; sha256="1zw9c3dl5lwksggvxsch1a9brzy7a5m6yi513h4fxf31njpc5s7g"; depends=[lattice RColorBrewer wrMisc]; };
   wrMisc = derive2 { name="wrMisc"; version="1.8.1"; sha256="0bhdrjq2b26jvzgg5fchp1mvlr7rvqyx1imdgz25k853hk915cl2"; depends=[MASS]; };
-  wrProteo = derive2 { name="wrProteo"; version="1.5.0"; sha256="1zn847d28cx93d80c4hv9pfxxjzf1l4v5sl17wikhi84nk7j5aig"; depends=[knitr limma wrMisc]; };
+  wrProteo = derive2 { name="wrProteo"; version="1.6.0"; sha256="0iq75zdip51aw8y37ckah1mddm69cp0lds2cj0xaavrdbaarww49"; depends=[knitr limma wrMisc]; };
   wrTopDownFrag = derive2 { name="wrTopDownFrag"; version="1.0.2"; sha256="1rdg6rzjz2h514i3c8z89mvj2j3h1s7rr5fry2mq3xvrwrgd3738"; depends=[wrMisc wrProteo]; };
   wrangle = derive2 { name="wrangle"; version="0.5.7"; sha256="0gap15hinsgfjrxajr9kvs0rp76gl5kk2dqs92s9mfyh10kxxqpa"; depends=[dplyr magrittr rlang tidyr]; };
   wrappedtools = derive2 { name="wrappedtools"; version="0.7.9"; sha256="00qp61syakz3wx491ygi2yhlj9b868vjkp8f3d02z8pgljvan93r"; depends=[boot coin dplyr forcats ggplot2 glue kableExtra knitr magrittr purrr rlang stringr tibble tidyr tidyverse]; };
@@ -18735,16 +18823,15 @@ in with self; {
   xROI = derive2 { name="xROI"; version="0.9.20"; sha256="0xa12qsw5xbbfqyv60apr4f9gx7q6rad4ywayvw8l2zla2wnhq5h"; depends=[colourpicker data_table jpeg lubridate moments raster RCurl rgdal rjson shiny shinyjs sp stringr tiff]; };
   xSub = derive2 { name="xSub"; version="3.0.1"; sha256="0c3jc801pn85wm17jj911spryg6p3gq19im1506zkv8lqwsy1nab"; depends=[countrycode haven RCurl]; };
   xVA = derive2 { name="xVA"; version="0.8.5"; sha256="1scn7acp69k80q9ksygj7ns9937yim8iwhpi54ygm28h20jnfllr"; depends=[SACCR Trading]; };
-  xaringan = derive2 { name="xaringan"; version="0.22"; sha256="0qk8cp52g18l1pp7i5lhqbklafd20b51fhv7qil2dd397wjqcghk"; depends=[htmltools knitr rmarkdown servr xfun]; };
+  xaringan = derive2 { name="xaringan"; version="0.23"; sha256="010k6xhblyanjf0hr4k24m26sb547jizng0nidrb2d4q1m9v1wdm"; depends=[htmltools knitr rmarkdown servr xfun]; };
   xaringanthemer = derive2 { name="xaringanthemer"; version="0.4.1"; sha256="05gkk9ll5whfvhbd8x3p180qzqcz6krz2s26lfbrp2y7srpx9jr4"; depends=[colorspace glue purrr whisker]; };
   xbreed = derive2 { name="xbreed"; version="1.0.1.1"; sha256="032i04ginyf9dyabfkygnhrkq7lqdvvyw7s41vjimy2kvjrnkkkx"; depends=[BGLR]; };
   xdcclarge = derive2 { name="xdcclarge"; version="0.1.0"; sha256="1j8wsidwmfjygqlwavxinv4bqc6rddy42jdmlknsjfrrs49yj8kn"; depends=[nlshrink Rcpp RcppArmadillo]; };
   xergm_common = derive2 { name="xergm.common"; version="1.7.8"; sha256="03mjpafwfkmyj5ba84jydap9rp0i602izjlbd511xbxcw6dx2k0b"; depends=[ergm network]; };
   xesreadR = derive2 { name="xesreadR"; version="0.2.3"; sha256="1pvdx0mxg2f885bhy4hb3kqzcgva4q7hzzaipkfzyi5lnjdsbc81"; depends=[bupaR data_table dplyr lubridate purrr stringr tidyr XML xml2]; };
-  xfun = derive2 { name="xfun"; version="0.29"; sha256="1x2f49n3ak85nab937wq6q5sqi1mdlfzwbv8603kxl2k8rxvp1dz"; depends=[]; };
+  xfun = derive2 { name="xfun"; version="0.30"; sha256="1vn0cbskyrk8ww9yx75jni9s684yv4cvbj643lvg0lg00briry7b"; depends=[]; };
   xgb2sql = derive2 { name="xgb2sql"; version="0.1.2"; sha256="1gw5dw0ck5hip8mv347zaswrggk395bg2hgn02bvqs0d31jhmgvi"; depends=[data_table xgboost]; };
-  xgboost = derive2 { name="xgboost"; version="1.5.0.2"; sha256="04xbgrrb3aq067hrivslq5f2rd1v95yfv7lkj596ijyqi6ibjl27"; depends=[data_table jsonlite Matrix]; };
-  xgobi = derive2 { name="xgobi"; version="1.2-15"; sha256="03ym5mm16rb1bdwrymr393r3xgprp0ign45ryym3g0x2zi8dy557"; depends=[]; };
+  xgboost = derive2 { name="xgboost"; version="1.5.2.1"; sha256="13mi3rmpxhgm4qbm4xcqml9n5d1xyai2k1mi52i8x60jd5m8s319"; depends=[data_table jsonlite Matrix]; };
   xgxr = derive2 { name="xgxr"; version="1.1.1"; sha256="00fd9n2qivfxg2b7vynssc82afa7nskg4akk6cgxnyhcai5jbmra"; depends=[assertthat binom Deriv DescTools dplyr ggplot2 glue gtable Hmisc labeling magrittr minpack_lm pander png RCurl readr scales stringr tibble]; };
   xkcd = derive2 { name="xkcd"; version="0.0.6"; sha256="1z2y0ihn68ppay7xkglhw7djki5654g6z4bbpyy41if57z9q554f"; depends=[extrafont ggplot2 Hmisc]; };
   xkcdcolors = derive2 { name="xkcdcolors"; version="1.0"; sha256="07fnjv01r3b951dqca2zs9b9f6hsgbpbpsrggvb8rps53kpid0i7"; depends=[FNN]; };
@@ -18755,7 +18842,7 @@ in with self; {
   xlutils3 = derive2 { name="xlutils3"; version="0.1.0"; sha256="1cxishi62bd36zlsy5qhzix1p68akdf9kpjg9gfm9aqpcijzccb9"; depends=[magrittr readxl]; };
   xmeta = derive2 { name="xmeta"; version="1.3-0"; sha256="1yyqxrdfn23sqfa9765vj5fcwz2v46jvaa9wjkv1w4mvb2k2si4k"; depends=[aod glmmML MASS metafor mvmeta numDeriv plotrix]; };
   xml2 = derive2 { name="xml2"; version="1.3.3"; sha256="138w7hb487al9cbahmnk5rhi23k8a9g7nk7s5dyxd3k1646rqknb"; depends=[]; };
-  xml2relational = derive2 { name="xml2relational"; version="0.1.0"; sha256="03blvks4z7n4wxz5zbrn6c3a3l4hy9clcjpb834pc07ssz3c2v3g"; depends=[fs lubridate rlang stringr tidyr xml2]; };
+  xml2relational = derive2 { name="xml2relational"; version="0.1.1"; sha256="05nykrmwqa43f9h6wpk6m1spmqr22r0ffiki4hp3jsyw8k7i78hv"; depends=[fs lubridate rlang stringr tidyr xml2]; };
   xmlconvert = derive2 { name="xmlconvert"; version="0.1.2"; sha256="0vj5ar61i94if141jzqk7jq091mb2xwzl0x86dj7ddk8y3c1w9dv"; depends=[httr lubridate readr stringr tibble xml2]; };
   xmlparsedata = derive2 { name="xmlparsedata"; version="1.0.5"; sha256="1c6bnz3ng1qw7sfip8wq3a4dn36a4d6rbja0sadn0a4pbsmk8q3n"; depends=[]; };
   xmlr = derive2 { name="xmlr"; version="0.1.2"; sha256="00mxdb4899sx5py0ngzh3dvhz1sqsar2hmsrkm4jf0b3q9psc86w"; depends=[]; };
@@ -18790,11 +18877,11 @@ in with self; {
   xyz = derive2 { name="xyz"; version="0.2"; sha256="13w4sb4pvgciwr8wsz785dafj2k2kpx7znz46r5d32wx88vkycp4"; depends=[Rcpp]; };
   yaConsensus = derive2 { name="yaConsensus"; version="1.0"; sha256="1srph1yc8lr00yvx6sjm0br9h2cq94xqb9yjxfb0bqvvmskp6s2s"; depends=[doParallel foreach pheatmap]; };
   yaImpute = derive2 { name="yaImpute"; version="1.0-32"; sha256="1zvkrmlj48ahg9jq0fkbn7j603fmmld57yc0gjfas2mqa7cfbvh8"; depends=[]; };
-  yacca = derive2 { name="yacca"; version="1.1.1"; sha256="1hxgkyxipk27p74vdkiy8a3wjymhcsc6ad3y9mf15qsl2xim6wwl"; depends=[]; };
+  yacca = derive2 { name="yacca"; version="1.4-2"; sha256="197iv7qcbp9xx8kmpwb98acpkgzn9m7sncn6qi7k0chjx78095ws"; depends=[]; };
   yager = derive2 { name="yager"; version="0.1.1"; sha256="178ypdr3f0w9rb4ci8q2hshr62b7993m8q6zxc4pf0msq175n1ml"; depends=[lhs MLmetrics randtoolbox]; };
   yakmoR = derive2 { name="yakmoR"; version="0.1.1"; sha256="09aklz79s0911p2wnpd7gc6vrbr9lmiskhkahsc63pdigggmq9f7"; depends=[BBmisc checkmate Rcpp]; };
-  yaml = derive2 { name="yaml"; version="2.2.2"; sha256="0c7pk5fq79mkqpc398hg8zj01frv4araglyppli49sqr4yx6mp55"; depends=[]; };
-  yamlet = derive2 { name="yamlet"; version="0.8.1"; sha256="142d0wiymk9mncfsg77jwgmvbcwiiw1h1gfx9gmpgpdjcdbbcf2z"; depends=[csv dplyr encode ggplot2 rlang spork tidyr units xtable yaml]; };
+  yaml = derive2 { name="yaml"; version="2.3.5"; sha256="0h2ixd95ww12ir13fdzbvjq4lsz6l8hmgv4bbsi89qd0ah2nrpry"; depends=[]; };
+  yamlet = derive2 { name="yamlet"; version="0.8.5"; sha256="0yhfyqkbj147sjrm4sc9va1c59ayzh2wxwasaz8vr2ri9qmmk91i"; depends=[csv dplyr encode ggplot2 rlang spork tidyr units xtable yaml]; };
   yamlme = derive2 { name="yamlme"; version="0.1.1"; sha256="1cknx8ndcb9rz1j7z27244vba8hxyh5sa9zwsv6rwk9g1c52vmyg"; depends=[]; };
   yap = derive2 { name="yap"; version="0.1.1"; sha256="0m126vpfvlmwkpy14i9wbzr51hb8r6s3wcdm3vp9izfccpnxfxl2"; depends=[lhs randtoolbox]; };
   yaps = derive2 { name="yaps"; version="1.2.5"; sha256="0309vc67v5kfbdcah5gnvdqwdxir4k1ik47dw6msw2hvg6lpqvqf"; depends=[circular cowplot data_table ggplot2 ggrepel nloptr plyr Rcpp RcppEigen reshape2 splusTimeSeries tictoc TMB viridis zoo]; };
@@ -18813,6 +18900,7 @@ in with self; {
   ymlthis = derive2 { name="ymlthis"; version="0.1.5"; sha256="02flsiqzpasyvskzlygllmrc1vbd4cv6yx4cdfiqrcq1806kdrf2"; depends=[crayon fs glue magrittr miniUI purrr rlang rmarkdown rstudioapi shiny shinyBS stringr usethis whoami withr yaml]; };
   yonder = derive2 { name="yonder"; version="0.2.0"; sha256="1ilzn17w6skd0dhwxyrgnfzyazafp8hsi8q6pfxz6k16cd668mc0"; depends=[htmltools magrittr shiny]; };
   yorkr = derive2 { name="yorkr"; version="0.0.31"; sha256="0fsj7j3qlf9q708hd9fq2yqsxsyaxr8gd93crq48nnirw3q9nshn"; depends=[dplyr ggplot2 gridExtra reshape2 rpart_plot yaml]; };
+  youngSwimmers = derive2 { name="youngSwimmers"; version="0.0.1"; sha256="02ih66ad8v5qkgyszllkh9319sfd6fqcci4zrvbjr1dfwlwa2ri1"; depends=[data_table lifecycle]; };
   youtubecaption = derive2 { name="youtubecaption"; version="1.0.0"; sha256="15cafl7b03xrql2y2ayy6ajf6v764wym3xqs4pbzlf6ncy8qwl5r"; depends=[dplyr magrittr purrr reticulate stringr tibble writexl]; };
   yowie = derive2 { name="yowie"; version="0.1.0"; sha256="1sm3dg4sirvlb17ciwldvnc1zzfgwxm38x1k2n99nwa6sygn1nrw"; depends=[tsibble]; };
   ypr = derive2 { name="ypr"; version="0.5.2"; sha256="1bbcwy4hngai6cajgcir1g6hdjh9xdpfcxqzm8ba8ikyjfzwn9bw"; depends=[chk ggplot2 lifecycle purrr scales yesno]; };
@@ -18823,7 +18911,6 @@ in with self; {
   yum = derive2 { name="yum"; version="0.1.0"; sha256="1k9q34n1pzv4c7hp7cd4yhm8v1qv41an8vfh65n4byvyzipxp85y"; depends=[yaml]; };
   yummlyr = derive2 { name="yummlyr"; version="0.1.1"; sha256="0xrk6g58laksz92d8mxck923sk4j92g55szrkxk123wjp5kg9vx6"; depends=[httr jsonlite]; };
   zCompositions = derive2 { name="zCompositions"; version="1.4.0"; sha256="032kgr5k36d0ffmdg984xx6pl4sq3m9gsiz96qc8p631m05ps3d0"; depends=[MASS NADA truncnorm]; };
-  zGPS_AO = derive2 { name="zGPS.AO"; version="0.1.0"; sha256="18dqssnj4gch1yg0qvrj4j2ry95sy6a9z8yz2zi8nzhhsj8dz1qq"; depends=[doParallel doRNG dplyr foreach ggplot2 hrbrthemes MASS plotly pscl questionr viridis]; };
   zTree = derive2 { name="zTree"; version="1.0.7"; sha256="005zk6wpchpss6865ki35yawgf668pn70163ah97rnfkhfaswm6y"; depends=[plyr]; };
   zalpha = derive2 { name="zalpha"; version="0.3.0"; sha256="04hi5lxgcqzmkbqppp5fv8x7wdgap3bgr8b8pv4pvavzh73jlmxs"; depends=[]; };
   zbank = derive2 { name="zbank"; version="0.1.0"; sha256="0vzvlri3sncvbz2cdg8wzlpskm1lq9ji0jrfy5cx4ib19m6gxhpc"; depends=[crul jsonlite tibble]; };
@@ -18832,7 +18919,7 @@ in with self; {
   zeallot = derive2 { name="zeallot"; version="0.1.0"; sha256="1sd1igcfnv27pa3bqxlbyxchi562h7grnjg1l7wxx3bwr49i57s3"; depends=[]; };
   zebu = derive2 { name="zebu"; version="0.1.3.0"; sha256="1rlcrvhic110h8r0mqwhkzq8w566jfymxpcwv63bvs7fd8j98vsv"; depends=[foreach ggplot2 iterators plyr reshape2]; };
   zeitgebr = derive2 { name="zeitgebr"; version="0.3.5"; sha256="1h2zx3ah1xdyyag40ragrv7gvpnlzqmappbnjp971dn9khqdxfqs"; depends=[behavr data_table lomb pracma WaveletComp]; };
-  zen4R = derive2 { name="zen4R"; version="0.5-2"; sha256="0r9xzi8k4s03hdjg3vs67lbhbslsw3l5q2zplpiv8yw8hngh9dhx"; depends=[httr jsonlite keyring R6 xml2]; };
+  zen4R = derive2 { name="zen4R"; version="0.5-3"; sha256="1kw3gx1d1azhxg8rkqib8xvhqfwbxwr6r8gfjw0l9y1c69b6gbni"; depends=[httr jsonlite keyring R6 xml2]; };
   zendeskR = derive2 { name="zendeskR"; version="0.4"; sha256="06cjwk08w3x6dx717123psinid5bx6c563jnfn890373jw6xnfrk"; depends=[RCurl rjson]; };
   zenplots = derive2 { name="zenplots"; version="1.0.4"; sha256="1r105ay0p00wfly8z54dg18i1fq7ppvxzri49i7zrlimqawzv19s"; depends=[graph loon MASS PairViz]; };
   zeroEQpart = derive2 { name="zeroEQpart"; version="0.1.0"; sha256="1n24nqyl0irpyspwx4b73xy228a84aa8zsn9fcf2lrlni5vyzmm0"; depends=[MASS ppcor]; };
@@ -18852,7 +18939,7 @@ in with self; {
   zmisc = derive2 { name="zmisc"; version="0.2.1"; sha256="10cb1zmzasqxr5sdkqn4hylp7qaxzgdf9gzp0dc97yhgcf5p0i5n"; depends=[]; };
   zoeppritz = derive2 { name="zoeppritz"; version="1.0-8"; sha256="1711szx9zz17q6pfinyzlyrw7m9772c8ywlixqar2l165bkjalgm"; depends=[]; };
   zoib = derive2 { name="zoib"; version="1.5.5"; sha256="0inm7f2pc68ksqxvq12xp9jc99vj7ydylvs24ip12nksbj5k1n8f"; depends=[abind coda Formula rjags]; };
-  zoid = derive2 { name="zoid"; version="1.0.0"; sha256="12gvb80ybnhc3yij1kgffhx2xygamjr4yli405dyndh0n5q6kxvy"; depends=[BH compositions gtools Rcpp RcppEigen RcppParallel rstan rstantools StanHeaders]; };
+  zoid = derive2 { name="zoid"; version="1.1.0"; sha256="0x37250fq3a3jbl1a2p8zkbacwzhc1xylk1nnfmx2fcgjif40lmq"; depends=[BH compositions gtools Rcpp RcppEigen RcppParallel rstan rstantools StanHeaders]; };
   zoltr = derive2 { name="zoltr"; version="0.5.1"; sha256="12zh7y3pwidclscgvd0b0iaqq9j5y8mc8xd6pz4vs0jy5qs3ahar"; depends=[base64url dplyr httr jsonlite magrittr MMWRweek mockery readr rlang webmockr]; };
   zonator = derive2 { name="zonator"; version="0.6.0"; sha256="1plxchpd4ypp36phl13pi9yvlrqi3lk83lv5rldrhdqynhcgfw2k"; depends=[ggplot2 raster RColorBrewer reshape2 rgdal]; };
   zonebuilder = derive2 { name="zonebuilder"; version="0.0.2"; sha256="0mxf3dz0d6bi5wwjilqivdxhy5ypnq5svky8zygha0clv45l4dmn"; depends=[RColorBrewer sf]; };
@@ -18871,122 +18958,193 @@ in with self; {
   zzlite = derive2 { name="zzlite"; version="0.1.2"; sha256="0vi1slx2s4r5zf82lazqv0c3m12xq73wlgsbz6af4y00h0bkr3ps"; depends=[httr jsonlite]; };
   ACSNMineR = derive2 { name="ACSNMineR"; version="0.16.8.25"; sha256="0gh604s8qall6zfjlwcg2ilxjvz08dplf9k5g47idhv43scm748l"; depends=[ggplot2 gridExtra scales]; broken = true; };
   AMORE = derive2 { name="AMORE"; version="0.2-16"; sha256="0vw6hhykg1r6xxja6d4zb2y00x7pfkmhcq9xkidz8p4arinb7xnl"; depends=[]; broken = true; };
+  AWAPer = derive2 { name="AWAPer"; version="0.1.46"; sha256="02n662wvd8qwshfmj9qfff730qs6ls82hkdsphw05jj6llddi4k5"; depends=[chron Evapotranspiration maptools ncdf4 raster sp xts zoo]; broken = true; };
   AlphaVantageClient = derive2 { name="AlphaVantageClient"; version="0.0.1"; sha256="095m850v945lw7i3qd812p28srdb5hdk9h52zf6bkr166zai1ni0"; depends=[httr xts]; broken = true; };
+  AnDE = derive2 { name="AnDE"; version="1.0"; sha256="1yil8ab50wvlqmdla9kmfba8vfgy5r694r6igb58s6vnmld78yf2"; depends=[discretization foreign functional stringr]; broken = true; };
   AnimalAPD = derive2 { name="AnimalAPD"; version="1.0.0"; sha256="1csa6disrg11hpxg4zw0jay15srw9lsgbhl1xgl7hpdr3nqsv3s7"; depends=[activityGCMM brms circular ggplot2 gridExtra loo overlap]; broken = true; };
+  AnnotLists = derive2 { name="AnnotLists"; version="1.2"; sha256="1g2khb2ggniwg2zcjamsm3bxyrl2zabvk540b5vyy9am9k83m1g9"; depends=[]; broken = true; };
   BALD = derive2 { name="BALD"; version="1.0.0-3"; sha256="1azyqami07g3ax60j0ws3d1qha65k0svn2v5c9pisni0qch5xql0"; depends=[lattice logspline rjags]; broken = true; };
   BCA = derive2 { name="BCA"; version="0.9-3"; sha256="0ksd6b0ykydgdn33x29bwwqkrp23cvdj3imps0l6qs1p4465j5nf"; depends=[car clv flexclust Rcmdr RcmdrMisc rpart]; broken = true; };
-  BIEN = derive2 { name="BIEN"; version="1.2.4"; sha256="1dagrs54ciagm2mgqrvxl6k2akahr0qk63ifxqnks7iljm0x1gw6"; depends=[ape DBI doParallel fasterize foreach raster rgdal rgeos RPostgreSQL sf sp]; broken = true; };
+  BCT = derive2 { name="BCT"; version="1.1"; sha256="058iir5mhgc7zy1nha8g6299ya9jvg1skxj3flgn3b97snjx5qky"; depends=[igraph Rcpp stringr]; broken = true; };
   BIS = derive2 { name="BIS"; version="0.2.1"; sha256="0mngmchgc46wc9a7ksyqrvj6k46nm4ih7x69k3xijfia9bgkym0v"; depends=[dplyr readr rvest tidyr xml2]; broken = true; };
   BNN = derive2 { name="BNN"; version="1.0.2"; sha256="13h9xqfdqnc9d8brx1xlmvb4nrkpwncwjz98y7i3wijih85wkikd"; depends=[mvtnorm]; broken = true; };
+  BayesValidate = derive2 { name="BayesValidate"; version="0.0"; sha256="1gli65avpkb90asx92l1yjbwaxcsyb920idyjwgd2sl2b3l657ly"; depends=[]; broken = true; };
   BigDataStatMeth = derive2 { name="BigDataStatMeth"; version="0.99.14"; sha256="05mmi12wn0xis4vwjn9zi3gcpxm9jmp7kpfazxsasbwgvrdd9k3q"; depends=[beachmat BH data_table Rcpp RcppEigen RcppParallel RCurl rhdf5 Rhdf5lib RSpectra]; broken = true; };
   BigTSP = derive2 { name="BigTSP"; version="1.0"; sha256="1jdpa8rcnrhzn0hilb422pdxprdljrzpgr4f26668c1vv0kd6k4v"; depends=[gbm glmnet randomForest tree]; broken = true; };
   BioMedR = derive2 { name="BioMedR"; version="1.2.1"; sha256="0l3nmnqv0gzkbby4fhajbba910zpnbyckvxwds353pn54g9pcry7"; depends=[Biostrings ChemmineR fmcsR GOSemSim MASS org_Hs_eg_db pls randomForest rcdk RCurl rjson]; broken = true; };
+  BoutrosLab_plotting_general = derive2 { name="BoutrosLab.plotting.general"; version="6.0.3"; sha256="0sirpdp7k28wwn5k5wyc0ib6abb5b1qpjrrk3m168x5yg1s2hqkf"; depends=[cluster e1071 gridExtra gtable hexbin lattice latticeExtra MASS]; broken = true; };
   CCpop = derive2 { name="CCpop"; version="1.0"; sha256="10kgw3b98r0kn74w89znq6skgk8b3ldil6yb0hn5rlcf6lazjzca"; depends=[nloptr]; broken = true; };
+  CDSeq = derive2 { name="CDSeq"; version="1.0.8"; sha256="06pjp9hn9ziz4wgkaj0r0zzw69r7635j10rmnl331abc4mchpazy"; depends=[Biobase clue dirmult doParallel dplyr foreach ggplot2 ggpubr gplots iterators magrittr MASS Matrix matrixStats qlcMatrix Rcpp RcppArmadillo RcppThread rlang Seurat]; broken = true; };
+  CLSOCP = derive2 { name="CLSOCP"; version="1.0"; sha256="0rkwq9rl2ph4h5zwb2i3yphjyzxmh6b6k23a8gcczycx6xdq4yhw"; depends=[Matrix]; broken = true; };
+  ChoiceModelR = derive2 { name="ChoiceModelR"; version="1.2"; sha256="0dkp3354gvrn44010s8fjbmkpgn1hpl4xbfs5xslql8sk8rw0n2c"; depends=[]; broken = true; };
   ClimDown = derive2 { name="ClimDown"; version="1.0.8"; sha256="0qcag9jwvhi9yss55wy5jxabrvym9hljn1fs5gfkzjs5hiwv3gxv"; depends=[abind fields foreach ncdf4 PCICt seas udunits2]; broken = true; };
-  ClimMobTools = derive2 { name="ClimMobTools"; version="0.4.2"; sha256="0y0x5h281xr7bcwqzl19x5azysnf8f2bwqcncm2bnka1wvlckjby"; depends=[climatrends httr jsonlite Matrix PlackettLuce RSpectra sf]; broken = true; };
   ConfoundedMeta = derive2 { name="ConfoundedMeta"; version="1.3.0"; sha256="17l6dfff2v0a4p022qclrmkzi78ga9adkgxgrgk9imz0n9m9424d"; depends=[ggplot2 metafor]; broken = true; };
+  CreditMetrics = derive2 { name="CreditMetrics"; version="0.0-2"; sha256="16g3xw8r6axqwqv2f0bbqmwicgyx7nwzff59dz967iqna1wh3spi"; depends=[]; broken = true; };
   CytobankAPIstats = derive2 { name="CytobankAPIstats"; version="2.0"; sha256="0xczcgaxd8dv6fd1j5c8y4il852lq8859d1y16sxs8a3gqn9fbz2"; depends=[CytobankAPI pheatmap shiny shinyFiles xlsx]; broken = true; };
-  DArand = derive2 { name="DArand"; version="0.0.1.1"; sha256="0cmwqbhi073zj8ipgib6a6ss6h4r0x2w541xl24jyk5xz3c6s697"; depends=[]; broken = true; };
-  DNH4 = derive2 { name="DNH4"; version="0.1.11"; sha256="15a1hq8f8nz200apbm28dwyphl18rhicmf7irsdj0z1n1j898c44"; depends=[httr rvest tibble tidyr xml2]; broken = true; };
+  DStree = derive2 { name="DStree"; version="1.0"; sha256="14wba25ylmsyrndh007kl377dv4r34wr1555yxl6kyxrs4yg3jir"; depends=[Ecdat pec Rcpp rpart rpart_plot survival]; broken = true; };
   DataEntry = derive2 { name="DataEntry"; version="0.9-3"; sha256="0gfsg7wfwy88x7y1dwpgwi6fkizjnhrzj0a5ij70y4a4sjmyiy55"; depends=[digest gWidgets2 gWidgets2RGtk2 RGtk2]; broken = true; };
+  DeducerSpatial = derive2 { name="DeducerSpatial"; version="0.7"; sha256="0133qk3yjcifyha7c4pqr5s0hmbci72bzgil2r0sxjmrljs3q727"; depends=[Deducer Hmisc JavaGD maptools OpenStreetMap rgdal scales sp UScensus2010]; broken = true; };
   DengueRT = derive2 { name="DengueRT"; version="1.0.1"; sha256="11qfg4l6y3j8qh4dcsz13xjjj1n0q71c9a3c180nm5lgqv0nwb81"; depends=[drc ggplot2 nlme]; broken = true; };
+  DiPs = derive2 { name="DiPs"; version="0.6.2"; sha256="13n50wakvh7ny342xl007k1dfbwmgzg8kxvgcpfblaypqn48q09f"; depends=[liqueueR mvnfast plyr]; broken = true; };
   DominoPredictionLogging = derive2 { name="DominoPredictionLogging"; version="0.1.0"; sha256="1qzh8inzqk1s6cw9bsl7hazdf6cbfr11zs22723wl4xs31inp1lg"; depends=[lgr rjson uuid]; broken = true; };
+  DrInsight = derive2 { name="DrInsight"; version="0.1.2"; sha256="1zz9i4aj0ijqfgp30wv0bvrgx2n003dysqg0pm13f7hni27819ff"; depends=[igraph qusage]; broken = true; };
+  EL = derive2 { name="EL"; version="1.0"; sha256="13r7vjy2608h8jph8kwy69rnkg98b2v69117nrl728r3ayc46a18"; depends=[]; broken = true; };
+  EasyHTMLReport = derive2 { name="EasyHTMLReport"; version="0.1.1"; sha256="1hgg8i7py7bx48cldyc7yydf0bggmbj3fx3kwiv9jh1x5wyh929z"; depends=[base64enc ggplot2 knitr markdown reshape2 scales xtable]; broken = true; };
   Eunomia = derive2 { name="Eunomia"; version="1.0.1"; sha256="06a42qsf3nx1pbynikkdvmbhh1rmgnfmiggdn86b3a0ij6cq0p2r"; depends=[DatabaseConnector RSQLite SqlRender]; broken = true; };
-  FLightR = derive2 { name="FLightR"; version="0.5.1"; sha256="14188r6kk194ir0l8byaqlly4lsg8w58lw5xx2s4abyhbn35kwq8"; depends=[bit CircStats circular fields GeoLight ggmap ggplot2 ggsn maptools mgcv nlme RcppArmadillo rgdal rgeos sp truncnorm]; broken = true; };
+  FAVAR = derive2 { name="FAVAR"; version="0.1.0"; sha256="04ajrq5wii4mccnaxn3wsn7kdfd2pydxaygk6dnbhc6610xs8bc5"; depends=[bvartools coda doParallel dplyr foreach ggplot2 magrittr matlab Matrix MCMCpack]; broken = true; };
+  FitARMA = derive2 { name="FitARMA"; version="1.6.1"; sha256="02di0pkz6hh92glpn3li6z9azkcqa64ja8zfpy0mkh1l97mw6jsv"; depends=[FitAR]; broken = true; };
+  FunCluster = derive2 { name="FunCluster"; version="1.09"; sha256="0i73asn1w4s6ydf2ddn5wpr0mwbbxzgmaly1pslarzkx71wk03fz"; depends=[cluster Hmisc]; broken = true; };
   GGEBiplotGUI = derive2 { name="GGEBiplotGUI"; version="1.0-9"; sha256="0nd0ky3m1avy82z48g7hcysq0y0agxjxdn0g624dkm2w99avxw3j"; depends=[rgl tkrplot]; broken = true; };
-  GGEBiplots = derive2 { name="GGEBiplots"; version="0.1.2"; sha256="0zizc8xz16hfcw7jfwn8lmv1mqnnzrj0dx1dk0ak8j7svfkskw0y"; depends=[ggforce ggplot2 scales]; broken = true; };
+  GHap = derive2 { name="GHap"; version="2.0.0"; sha256="0br9civfdlksn5xmyrvz2y0knikcd2i175kddxjdqmiyyayckc8w"; depends=[class data_table e1071 lme4 Matrix]; broken = true; };
   GeneBook = derive2 { name="GeneBook"; version="1.0"; sha256="1cg8zyr7rbshj3shhzkrxs910dsz4brhh51jvn2qzipzd8dbvxiv"; depends=[dplyr repmis stringr svDialogs]; broken = true; };
-  GenomeAdmixR = derive2 { name="GenomeAdmixR"; version="2.1.2"; sha256="0b8h53gb1afgf159rav7412acvnb59rjad4zzba4ck8nzfrdaqwm"; depends=[ggplot2 ggridges hierfstat Rcpp RcppArmadillo RcppParallel rlang stringr tibble vcfR]; broken = true; };
   GeoLight = derive2 { name="GeoLight"; version="2.0.0"; sha256="1i49hyj3f5rcw0s6j2csnfwc6mnp5zn44vxjnk05wdkpw6dpvx5i"; depends=[changepoint fields maps MASS]; broken = true; };
   HRM_curve = derive2 { name="HRM.curve"; version="0.0.1"; sha256="0p3kvldpz347c0cdjkrdm0x2nfj85hm5cp59lirqhq77hf1zfnd5"; depends=[]; broken = true; };
   HSAR = derive2 { name="HSAR"; version="0.5.1"; sha256="03ryscvgiiwjcqk6gy3251nqqk43x508kz3ibw35hi84m2s7fsxj"; depends=[Rcpp RcppArmadillo spatialreg spdep]; broken = true; };
   HierO = derive2 { name="HierO"; version="0.2"; sha256="1lqj5grjly4kzxl7wb192aagz2kdvpnjdan2kcg5yxwvg1xcvwv1"; depends=[bitops RCurl rneos tcltk2 XML]; broken = true; };
   HierPorfolios = derive2 { name="HierPorfolios"; version="0.1.0"; sha256="0lx10lnslal689ykp7idvngc074yhfx3mkddyrax91djnqsc8aq4"; depends=[cluster fastcluster RiskPortfolios]; broken = true; };
+  HybridMC = derive2 { name="HybridMC"; version="0.2"; sha256="1wgzfyk0scwq9s2sdmc91fj7r4d7zlgwgnj6mdiia8w88ja8kzqy"; depends=[coda]; broken = true; };
   ICSsmoothing = derive2 { name="ICSsmoothing"; version="1.2.5"; sha256="08m8p6y5zk54ha3wp5x9xbx6f2xkkqx232hsan1f1s8k9j3q5avd"; depends=[ggplot2 polynom]; broken = true; };
+  IMAGE = derive2 { name="IMAGE"; version="1.0"; sha256="0xgrja7qhklcmbm0zz5xg94gw5kl05nk3v77l7vxq2d5sk0435g3"; depends=[doParallel foreach Matrix Rcpp RcppArmadillo]; broken = true; };
   IP = derive2 { name="IP"; version="0.1"; sha256="0ranpsacsl2nm8swc3saw6xh6cdsfdyq58jlpki04kk3hsqbr9p0"; depends=[stringi]; broken = true; };
+  IPMRF = derive2 { name="IPMRF"; version="1.2"; sha256="1zvwwhiy0p134zvm5ldc92pdd1ap72bhbrlf02rz9m2hlsxmwy67"; depends=[gbm party randomForest]; broken = true; };
   IRATER = derive2 { name="IRATER"; version="0.0.1"; sha256="0jxdvjmnmangbqy3ibb5qrj9jz3wrzs0wa1r2gjk4v8vsbk0ipcf"; depends=[coda lattice plyr R2admb]; broken = true; };
+  IRSF = derive2 { name="IRSF"; version="1.0.3"; sha256="1cq196z2i4by7dfij6w849a49d8dzzcdk5a68nxvmvwq3xskywam"; depends=[abind randomForestSRC survival]; broken = true; };
   ISEtools = derive2 { name="ISEtools"; version="3.1.1.1"; sha256="00d6znqz2mfmyi9ijgrg2pwl4lnvvsy00ysa7a7vjq7ip8qvcjfq"; depends=[coda Xmisc]; broken = true; };
   ISR3 = derive2 { name="ISR3"; version="0.98"; sha256="0mmpdl9ndlj9i0k3zl7ja0g7y9pm67igw925ld5qnz7a36plygxs"; depends=[]; broken = true; };
   IceCast = derive2 { name="IceCast"; version="2.1.0"; sha256="0h3z68lfjw5s51601m17m2gvn12vkwj5gzc70dqzfjmxdkgv3p28"; depends=[coda maptools MASS ncdf4 raster Rcpp RcppArmadillo rgeos sp]; broken = true; };
   IgorR = derive2 { name="IgorR"; version="0.8.1"; sha256="1lkiz3gxj8i1xbr5jp69z21rpk7kz3a68h29inp1qa7zi7gikmgx"; depends=[bitops]; broken = true; };
   Interpol_T = derive2 { name="Interpol.T"; version="2.1.1"; sha256="1fbsl1ypkc65y6c0p32gpi2a2aal8jg02mclz7ri57hf4c1k09gz"; depends=[chron date]; broken = true; };
   JMcmprsk = derive2 { name="JMcmprsk"; version="0.9.10"; sha256="1hkylfrr2036vgkxfs98szm3883bmyvvyr0f3a8xygccf3pn28xc"; depends=[dplyr MASS pracma Rcpp reshape2 statmod]; broken = true; };
+  KODAMA = derive2 { name="KODAMA"; version="1.8"; sha256="0i1lwjzxjpm9yng763hkbi88q13i9bhcwwin6b3lkif34r4c3n8y"; depends=[minerva Rcpp RcppArmadillo]; broken = true; };
   KernelICA = derive2 { name="KernelICA"; version="0.1.0"; sha256="1yq7w24qq23c81a9y0jn36iw7zjbxsj3b3p1rq6yl0lanzda9bsr"; depends=[ICtest inline JADE ManifoldOptim Rcpp RcppArmadillo RcppEigen]; broken = true; };
+  Knoema = derive2 { name="Knoema"; version="0.1.19"; sha256="16izh1viaqxvhgfxy2g6b9hhvm1n6nbjsj2xd45qwdibl3ly8d0f"; depends=[base64enc digest httr jsonlite lubridate xts zoo]; broken = true; };
   KnowGRRF = derive2 { name="KnowGRRF"; version="1.0"; sha256="0nk0baibd184rsg23jx1wg4c2fcaqf8ww7822xrs3w5ym6vwd0rs"; depends=[MASS PRROC randomForest RRF]; broken = true; };
+  LANDD = derive2 { name="LANDD"; version="1.1.0"; sha256="13szkww9nw8zywfrqd8mwgj9csgragm0bx8ia52rcpakpc3hv3hx"; depends=[BH doParallel fdrtool foreach GGally ggplot2 GOSemSim GOstats igraph intergraph Matrix modeest mvtnorm pROC Rcpp]; broken = true; };
   LBC = derive2 { name="LBC"; version="1.0"; sha256="027q5dk771a5v7g0il7kcczfyf6cqfb4vb3y0j7gwr02bq4360wm"; depends=[]; broken = true; };
+  LDOD = derive2 { name="LDOD"; version="1.0"; sha256="0mf2sy01yv57mqicrz08a17m6crigklx6fmw9zpxv7g85qw1iq4v"; depends=[Rmpfr Rsolnp]; broken = true; };
+  LIHNPSD = derive2 { name="LIHNPSD"; version="0.2.1"; sha256="08ils29vvaq6abkgxbh028vwjw6l6h10cirbnwr65s458zvh4xqv"; depends=[BB Bolstad2 moments optimx Rmpfr sn]; broken = true; };
+  LogitNet = derive2 { name="LogitNet"; version="0.1-1"; sha256="08xi5rpbqkc1b3qj24blv3l0r68wcqbsbjcqxiypm75f3c2irc4i"; depends=[]; broken = true; };
+  MAPLES = derive2 { name="MAPLES"; version="1.0"; sha256="0hzsh7z1k7qazpxjqbm9842zgdpl51irg7yfd119a7b2sd3a8li9"; depends=[mgcv]; broken = true; };
+  MAc = derive2 { name="MAc"; version="1.1.1"; sha256="1dawqmziffaz8wgcqzwc0yifdq65abgn24vafkrwa9850048c26f"; depends=[]; broken = true; };
   MHTcop = derive2 { name="MHTcop"; version="0.1.1"; sha256="1mr8y8brsi37b5qx3fqm0bj90dgknzzwhxfmvyd9kxbxh19whgxq"; depends=[copula matrixStats MCMCpack mvtnorm stabledist]; broken = true; };
   MLPA = derive2 { name="MLPA"; version="1.10.0"; sha256="1w8vhvs8ri8iyh068g59chz3mn0wapa4jr1wmhjlzwa2c651q2cx"; depends=[]; broken = true; };
+  MLRShiny = derive2 { name="MLRShiny"; version="0.1.0"; sha256="06zcyz8l4754sjbcql3jd3nq1d2lgj92p5h2bh708z52mww71isw"; depends=[corrgram dplyr forecast psych QuantPsyc shiny shinyAce]; broken = true; };
+  MLRShiny2 = derive2 { name="MLRShiny2"; version="0.1.0"; sha256="1ygamp0ldz1i0w2xyi205rpd1gd5asw61l36z06j41ghdyiz1lww"; depends=[corrgram dplyr forecast psych QuantPsyc shiny shinyAce]; broken = true; };
   MRMR = derive2 { name="MRMR"; version="0.1.4"; sha256="0dgbhlynaaka7mdzl6igwgcdzvy6cm2y8mbxaf9pfla8w3z8y0lq"; depends=[ggplot2 lmtest lubridate plyr reshape2]; broken = true; };
   MVT = derive2 { name="MVT"; version="0.3"; sha256="0vinlv3d5daf8q7pd9xgs51nxz2njgdba5750vygmv883srlzi9d"; depends=[]; broken = true; };
+  MedOr = derive2 { name="MedOr"; version="0.1"; sha256="1rwc14s16lnzgb78ac2017hv9pss7zw7nw3y7vrvq1qx4fgiw6f8"; depends=[]; broken = true; };
   MetaboLouise = derive2 { name="MetaboLouise"; version="1.0.0"; sha256="1agcp520in0wpxv3x2jvvmv61hasazdymnvjhzl66nwv8lifl98z"; depends=[igraph]; broken = true; };
+  Meth27QC = derive2 { name="Meth27QC"; version="1.1"; sha256="0ad30svs2kjzmmyvcm0jmv64iyq7slp1x1xl35h2rv1b6zbd4658"; depends=[gplots]; broken = true; };
   Myrrix = derive2 { name="Myrrix"; version="1.2"; sha256="05x2h4ppjhfm0wlpwyp8ycjg59qj3gv0yqdilxrzb1lkrzln92xb"; depends=[Myrrixjars rJava]; broken = true; };
   Myrrixjars = derive2 { name="Myrrixjars"; version="1.0-2"; sha256="1hhfg83z5kl6l250z3lippx3qc68k1wj1qlfzd6m66rgmk699gyl"; depends=[rJava]; broken = true; };
-  N2H4 = derive2 { name="N2H4"; version="0.5.9"; sha256="09ikdnn17zx9l683k6mrc4hifxnd5d7fjxm6qdvxxbn10dh6qgvj"; depends=[dplyr httr jsonlite lubridate rvest tibble tidyr xml2]; broken = true; };
-  NetLogoR = derive2 { name="NetLogoR"; version="0.3.9"; sha256="035nsxgzh7dg9bjcwqbf5228ph90ff629di4ff3pdvr40jki60f1"; depends=[abind car CircStats data_table Hmisc matrixStats plyr quickPlot raster rgeos sp SpaDES_tools]; broken = true; };
+  NLMR = derive2 { name="NLMR"; version="1.1"; sha256="1m08nm71wbam6d8nj8akwqrm6nq5bvm3v76kdlasdgs7v36xzri6"; depends=[checkmate dplyr fasterize igraph RandomFields raster Rcpp sf spatstat_core spatstat_geom tibble]; broken = true; };
+  NPMVCP = derive2 { name="NPMVCP"; version="1.1"; sha256="13jpm46abwziq8859jhl6hg1znk3ws1q7g4vlr2jyri3qa6h22dd"; depends=[]; broken = true; };
+  NetData = derive2 { name="NetData"; version="0.3"; sha256="1jf05zwy0c6gmm7kvxlwvai61bz4wpsw7cl0h4i21ipzn1rqxmqj"; depends=[]; broken = true; };
   OligoSpecificitySystem = derive2 { name="OligoSpecificitySystem"; version="1.3"; sha256="17mspf1ph2ybv046zckykfdcbrsiz40hrs6ib5mpwkfnrvsp1w7l"; depends=[tkrplot]; broken = true; };
+  Omisc = derive2 { name="Omisc"; version="0.1.4"; sha256="1f6aakywjabq0xds5yl70ivr1jmw26zry2m65xszfp8p5mp45c7g"; depends=[copula MASS psych]; broken = true; };
   OpenMPController = derive2 { name="OpenMPController"; version="0.2-5"; sha256="00hs8v47pr2d726z8izkfrgmayw147hdm16rr9rw1zs3ad216zjj"; depends=[]; broken = true; };
   OutlierDC = derive2 { name="OutlierDC"; version="0.3-0"; sha256="1vm3zx4qmj9l0ddfqbksm1qyqzzqrxf93gh4kj52h68zlsfxwv41"; depends=[Formula quantreg survival]; broken = true; };
   PANDA = derive2 { name="PANDA"; version="0.9.9"; sha256="1sf3c49v4mb3mz2imqlqdbh1iab7bc2pxpi8bmgj2jld133555ip"; depends=[cluster GO_db]; broken = true; };
+  PCObw = derive2 { name="PCObw"; version="0.0.0"; sha256="1mz9fpd8k0fs14gvs9bhzrpydz200fsg52njaw2nr08184q78r4y"; depends=[Rcpp RcppEigen]; broken = true; };
   POPdemog = derive2 { name="POPdemog"; version="1.0.3"; sha256="0j83c853ligmw8ag4pb0vj46sfn2w2ynh4wvgkabzs688hxxni8r"; depends=[]; broken = true; };
+  PROTOLIDAR = derive2 { name="PROTOLIDAR"; version="0.1"; sha256="0bz3071b0wlcvh40vl3dyiiixk5avsj6kjjnvlvx264i5g08rij4"; depends=[]; broken = true; };
+  PVplr = derive2 { name="PVplr"; version="0.1.0"; sha256="1ssmdhq2qczk6n50f8jj4j3nym7jj9bshfc1f29lccvmp7wxdp9a"; depends=[broom cluster dplyr ggplot2 magrittr minpack_lm purrr rlang segmented stlplus tidyr]; broken = true; };
+  ParallelTree = derive2 { name="ParallelTree"; version="0.1.3"; sha256="1h53qwhc63fglm452b3by7f3g6f3hyqwkmwmbdqdb9rv3j4gvnvg"; depends=[ggplot2]; broken = true; };
   PatternClass = derive2 { name="PatternClass"; version="2.0.1"; sha256="1xwlk6shms38nqxad3d15254wgnkfzy7jyf5w9bbm96kg05mndbz"; depends=[landscapemetrics raster]; broken = true; };
   Plasmode = derive2 { name="Plasmode"; version="0.1.0"; sha256="1qcni9zdckhsnw616jn7rdfd09kbl5wd4hljdja0w73jz1wd1z14"; depends=[arm epiDisplay foreign gbm glm2 lattice latticeExtra lme4 MASS Matrix mgcv nlme nnet RColorBrewer survey survival twang xtable]; broken = true; };
+  PoissonSeq = derive2 { name="PoissonSeq"; version="1.1.2"; sha256="1hhx0gv06cp6hm6h36mqy411qn9x15y45crpzbyf8crfs85c6gbg"; depends=[combinat]; broken = true; };
+  PopGenKit = derive2 { name="PopGenKit"; version="1.0"; sha256="0l4mbm0cyppgvcw2cbimrv29aiciyj00k8wfwcj5zr8sh7fgfhs4"; depends=[]; broken = true; };
   PoweR = derive2 { name="PoweR"; version="1.0.7"; sha256="040wc7hxa8y6bm1rs7ip2skdxmmwksxkyb6xzqgdjp8m7a25fppb"; depends=[Rcpp RcppArmadillo]; broken = true; };
+  QuantPsyc = derive2 { name="QuantPsyc"; version="1.5"; sha256="1i9bh88r8zxndzjqsj14qw64gnvm5a9kvhjhzk3qsrvl3qzjgh93"; depends=[boot MASS]; broken = true; };
   QuantumClone = derive2 { name="QuantumClone"; version="1.0.0.6"; sha256="1520jgkzp8g7gv7ggqhvlrdnpdyhygqjgsd1my5jq30afdqj6qmp"; depends=[DEoptim doParallel foreach fpc ggplot2 gridExtra NbClust optimx]; broken = true; };
   RAhrefs = derive2 { name="RAhrefs"; version="0.1.4"; sha256="0yd7jbv2x711dnhbvwjjg7qhg8h8bh5564amsv9bkqw661i042m3"; depends=[assertthat httr jsonlite testthat]; broken = true; };
+  RBestMatch = derive2 { name="RBestMatch"; version="0.1.1"; sha256="1nx1dnhlqi4gad1yw6h91av911wv6dap252hza98dgjysv46spya"; depends=[DiPs mvnfast plyr]; broken = true; };
   RCSL = derive2 { name="RCSL"; version="0.99.95"; sha256="1ngzbhrc74ljhidsf7a17k4hyx0igv2srgbf822gm2wawzsmp0y2"; depends=[ggplot2 igraph mclust NbClust pracma RcppAnnoy Rtsne SingleCellExperiment umap]; broken = true; };
-  RClickhouse = derive2 { name="RClickhouse"; version="0.6.0"; sha256="16n2d0fvqg5ckf40bjyis0hj4hhffg7k5gfrji9gnyc4xs935lx7"; depends=[bit64 DBI dbplyr dplyr Rcpp]; broken = true; };
+  RClone = derive2 { name="RClone"; version="1.0.3"; sha256="1zcb7s88qkpcbkhvawggsckzs5d9s9l9kr2c2njrr86ymq7lgwdj"; depends=[]; broken = true; };
   RDFTensor = derive2 { name="RDFTensor"; version="1.3"; sha256="1kfhhn0lb1r61bkgxn7rv1smgk8b7vxbc8y97hdmg5argiywc65i"; depends=[doParallel foreach Matrix pracma]; broken = true; };
+  RGCxGC = derive2 { name="RGCxGC"; version="1.1-2"; sha256="03ihqra8q50a98adgxrx8l7js963f41kg2fy3lxzh9zma4gzj62q"; depends=[colorRamps mixOmics ptw Rdpack RNetCDF]; broken = true; };
   RGtk2 = derive2 { name="RGtk2"; version="2.20.36.2"; sha256="1m3a3h3yxmr2qpcdyxrwxrdplvhb4rprvd8cnmfwk3zkazd69f9n"; depends=[]; broken = true; };
+  RM2 = derive2 { name="RM2"; version="0.0"; sha256="1v57nhwg8jrpv4zi22fhrphw0p0haynq13pg9k992sb0c72dx70a"; depends=[msm]; broken = true; };
   RNRCS = derive2 { name="RNRCS"; version="0.2.5"; sha256="19q78l8mh4701vqvr36vqc87n39s5ivzhiy5lvnxbd4dgibk1jr2"; depends=[ggplot2 magrittr rvest xml2]; broken = true; };
   ROI_plugin_clp = derive2 { name="ROI.plugin.clp"; version="0.4"; sha256="0fzrb4q2mcf3j4d4j8r354n6fyv2rik0ypp01l54zbm8s2r29bwb"; depends=[Matrix ROI slam]; broken = true; };
-  RRF = derive2 { name="RRF"; version="1.9.1"; sha256="135adnf7cfs8gddmmmgmzarjzg0qfrd7l67367yhy2b1k0s5ng1w"; depends=[]; broken = true; };
+  RPCLR = derive2 { name="RPCLR"; version="1.0"; sha256="03kpyszsjb656lfwx2yszv0a9ygxs1x1dla6mpkhcnqw00684fab"; depends=[MASS survival]; broken = true; };
   RSCABS = derive2 { name="RSCABS"; version="0.9.5"; sha256="193wbf1v18xv098i6abpglb239788d9gjzqbn8p3aai0la6y1pk3"; depends=[gWidgets2 gWidgets2RGtk2 R2HTML RGtk2]; broken = true; };
+  RcmdrPlugin_FuzzyClust = derive2 { name="RcmdrPlugin.FuzzyClust"; version="1.1"; sha256="1lg6k3h4n45s6wjkl3ycwfngfr2i6mkhirifhbazsvv297bg0iba"; depends=[clue doParallel foreach ggplot2 iterators MASS Rcmdr reshape2 tcltk2 tkrplot]; broken = true; };
   RcppMLPACK = derive2 { name="RcppMLPACK"; version="1.0.10-7"; sha256="07vh1wyp2rxhfrb4vi5njchrby99bynd88na8qjxcnbypkgsrhbl"; depends=[BH Rcpp RcppArmadillo]; broken = true; };
   RefFreeEWAS = derive2 { name="RefFreeEWAS"; version="2.2"; sha256="1aya34iz5v3xfpj86x9ab998m7fdwl138ly007mgdayacvqi4a6y"; depends=[quadprog]; broken = true; };
+  Reliability = derive2 { name="Reliability"; version="0.0-2"; sha256="12zsicgbjqih3grbs62pw37x8wlkmnyc7g0yz6bqnfb4ym2yb7fg"; depends=[]; broken = true; };
   Rhpc = derive2 { name="Rhpc"; version="0.21-247"; sha256="0r4zikqzkcyyvywxq1s8jcq6h559mxilkmzpnl79781hh537jvii"; depends=[]; broken = true; };
+  RichR = derive2 { name="RichR"; version="1.0.0"; sha256="0z0ri90jqdmw0vwxd1b4wr9if5cgm1gqpf6g9p1fdvncf4sdi9by"; depends=[magrittr metap plyr reshape2]; broken = true; };
+  Rwinsteps = derive2 { name="Rwinsteps"; version="1.0-1.1"; sha256="0kaxhaa65k1hkhl4kqfxyyk6v967xncrdr5hy8b808zlbqriankc"; depends=[]; broken = true; };
+  SASPECT = derive2 { name="SASPECT"; version="0.1-1"; sha256="1d3yqxg76h9y485pl5mvlx6ls1076f80b320yvx4zxmqq9yxmaba"; depends=[]; broken = true; };
+  SAVE = derive2 { name="SAVE"; version="1.0"; sha256="1m9rrga8x00hlvn0c1jcz6yz14pdm6h3dq14905mq49sw63c7zll"; depends=[coda DiceKriging]; broken = true; };
   SDraw = derive2 { name="SDraw"; version="2.1.13"; sha256="1kx8kfga3zspfdgf9vq2lclszrhf3bfwkfhwqri64kn8fdr34jsq"; depends=[covr deldir rgeos sp spsurvey]; broken = true; };
+  SEA = derive2 { name="SEA"; version="2.0"; sha256="1pw1509qjjqz63a8biwakdxqgln7kjviacqrjvp1323vf55bi4fs"; depends=[data_table doParallel foreach kolmim KScorrect MASS shiny]; broken = true; };
   SEAA = derive2 { name="SEAA"; version="0.9.6"; sha256="0f1j8pq3a0liyjxjlc91v8nm5y0fr8fq7qlhdayvkf1fx96srqs2"; depends=[clusterProfiler ggforce ggplot2 ggpubr ggrepel gridExtra org_Hs_eg_db org_Mm_eg_db reshape2 Rsubread tidyr]; broken = true; };
+  SEMModComp = derive2 { name="SEMModComp"; version="1.0"; sha256="1za67470f13z8jsy3z588c7iiiz993d3vjqrb8v9fann2r6sf1md"; depends=[mvtnorm]; broken = true; };
+  SII = derive2 { name="SII"; version="1.0.3.1"; sha256="1xvk04b7725ksfd7h4p7px5zanbf6s7xlmjpb7w0nvbi6km2f7ri"; depends=[]; broken = true; };
+  SIMMS = derive2 { name="SIMMS"; version="1.3.1"; sha256="0kgaky1hpvvbs2hbzaili9h9pv34c5drfh0d1rc8vf9099xw8575"; depends=[doParallel foreach glmnet MASS randomForestSRC survival]; broken = true; };
+  SMC = derive2 { name="SMC"; version="1.1"; sha256="1r4ajgi785lmpnlxrba0n6phmk1f0mb6b5yqk6hx8gng2w8ggclz"; depends=[]; broken = true; };
+  SPECIES = derive2 { name="SPECIES"; version="1.0"; sha256="0p45llf2wjr467bqr4pbljfank9zz3fm42yl3i0r3jbkxgz0rjf0"; depends=[]; broken = true; };
+  SampleSizeProportions = derive2 { name="SampleSizeProportions"; version="1.0"; sha256="0mvkvx3nni0l8ys68sq3h2zlbjvksdcdzxqlf03k0ca5bbcmdf9l"; depends=[]; broken = true; };
+  SimpleTable = derive2 { name="SimpleTable"; version="0.1-2"; sha256="1rkybrp7zlb7cj37799npss1ldic0yf519q5l7a6ikal4yl1afyb"; depends=[hdrcde locfit MCMCpack]; broken = true; };
+  Simpsons = derive2 { name="Simpsons"; version="0.1.0"; sha256="1pm6wga1yxc35zgz72plzq23d3l4bbzfdvhszdxmkn1pkk64h8ms"; depends=[mclust]; broken = true; };
   SoftRandomForest = derive2 { name="SoftRandomForest"; version="0.1.0"; sha256="1k439hcp53yg6f2x4bgafsri4jjgpva97dphzsdk5icfs5d38bh8"; depends=[boot]; broken = true; };
-  SpaDES = derive2 { name="SpaDES"; version="2.0.7"; sha256="186qds86nnlcq754mk9xpnhr75rw0ifrldi2gzjqn5xa07byjqjv"; depends=[quickPlot reproducible SpaDES_core SpaDES_tools]; broken = true; };
   SpatialEpiApp = derive2 { name="SpatialEpiApp"; version="0.3"; sha256="0svnnzqshk08s58ishy8xhqch44mb5svgfphkvpgysdd68dgaysr"; depends=[dplyr dygraphs ggplot2 htmlwidgets knitr leaflet mapproj maptools RColorBrewer rgdal rgeos rmarkdown shiny shinyjs SpatialEpi spdep xts]; broken = true; };
   StatCharrms = derive2 { name="StatCharrms"; version="0.90.96"; sha256="1451aj1476qjpmxhpbgd8g55i7rp2msml64xsiy25h7x9g6d9w05"; depends=[cairoDevice car clinfun coxme gWidgets2 gWidgets2RGtk2 lattice multcomp nlme R2HTML RGtk2 RSCABS survival]; broken = true; };
+  SurvGSD = derive2 { name="SurvGSD"; version="1.0.0"; sha256="0aa5zaf9akkqkxs8iqwnm93sfwakhhhs3qfafbk0vrwmb5yvzzm1"; depends=[flexsurv ldbounds mnormt]; broken = true; };
+  Survgini = derive2 { name="Survgini"; version="1.0"; sha256="1gxkdv2j1njbgnwb52vyhz7p2lrcg3hp6sry3kyhp4wkvf6gnhxi"; depends=[survival]; broken = true; };
+  SyNet = derive2 { name="SyNet"; version="2.0"; sha256="0mb9dscddkvmkf7l3bbcy4dlfmrvvy588vxdqy5dr783bpa5dkiw"; depends=[tkrplot]; broken = true; };
+  TDA = derive2 { name="TDA"; version="1.8.5"; sha256="16dpbgwkp58ibjck3yjziv5p852vn8qxv4v77z17r18909a0j8lp"; depends=[BH FNN igraph Rcpp RcppEigen scales]; broken = true; };
   TKCat = derive2 { name="TKCat"; version="0.7.1"; sha256="19iv6srfmvl30mnwxzxwzm5d6fmpgyan490fkszqhq7jjzjhbgg7"; depends=[base64enc DBI dplyr DT future getPass htmltools jsonlite jsonvalidate magrittr markdown promises RClickhouse readr ReDaMoR rlang shiny shinydashboard tidyselect uuid visNetwork xml2]; broken = true; };
   TLBC = derive2 { name="TLBC"; version="1.0"; sha256="08w187akbhfbz6nrrf7avf02lrhgj7bbrjmim9gkh4wlbjhzvw67"; depends=[caret HMM randomForest signal stringr]; broken = true; };
-  TNRS = derive2 { name="TNRS"; version="0.1.0"; sha256="146shb1dg4iyaanrdr1l8nqpiqf05la1ai34w74z6wsd1mpcchqy"; depends=[jsonlite RCurl rjson]; broken = true; };
   TrafficBDE = derive2 { name="TrafficBDE"; version="0.1.0"; sha256="1lnh9lbjxaradivnd1dkd2szggjh2r4v7klpyxb862dxsmdxxrqw"; depends=[caret data_table dplyr lubridate neuralnet RCurl zoo]; broken = true; };
   Tushare = derive2 { name="Tushare"; version="0.1.3"; sha256="12aabkwlifc82yiym3yijpfpjhmhfwpw8mz4fb11qm6n4igr1yhg"; depends=[data_table forecast httr tidyverse]; broken = true; };
-  TwoPhaseInd = derive2 { name="TwoPhaseInd"; version="1.1.1"; sha256="0xsqiq4x7vmhif9j8zi1smbchwm4fsbgb10i4vxi0biijybizk9z"; depends=[survival]; broken = true; };
+  UNF = derive2 { name="UNF"; version="2.0.7"; sha256="1i7aj9w90c1bn581l820iasxhs4ibs7xwbhid7gdkz9f87cz568r"; depends=[base64enc digest]; broken = true; };
   UncertainInterval = derive2 { name="UncertainInterval"; version="0.7.0"; sha256="1lywwjkbmlbxhp2ahmsw2f47i0p848cky7xx1lxrg5ydfzq9kzl5"; depends=[car MASS nloptr psych reshape2 shiny zoo]; broken = true; };
   VNM = derive2 { name="VNM"; version="7.1"; sha256="19qglcibb7r6jjz0n0piklwfv3hi4jphd6vmyfbm0ccjjkmn5nin"; depends=[Rcpp]; broken = true; };
   XPolaris = derive2 { name="XPolaris"; version="1.0.2"; sha256="1l05svscgkv9bzkawi2kp9zhchrhxxma3271b828j34pkrnnmq5m"; depends=[curl dplyr ggplot2 httr magrittr purrr raster sf tidyr]; broken = true; };
-  aMNLFA = derive2 { name="aMNLFA"; version="1.1.1"; sha256="1vghwkz14j8vwnkf54ykqgm4vk84wm260pnmaa66xh1466qf4i55"; depends=[devtools dplyr ggplot2 gridExtra MplusAutomation plyr reshape2 stringi stringr]; broken = true; };
   aRbs = derive2 { name="aRbs"; version="0.1.3"; sha256="19s4x2w036xllrsarapmp8rvyxcsky82k4h9mfr2rbhdfid6h1f3"; depends=[crayon data_table dlstats dplyr DT ggplot2 lubridate progress purrr rvest shiny shinyBS shinycssloaders shinydashboard stringr xml2]; broken = true; };
+  abcdeFBA = derive2 { name="abcdeFBA"; version="0.4"; sha256="1rxjripy8v6bxi25vdfjnbk24zkmf752qbl73cin6nvnqflwxkx4"; depends=[corrplot lattice rgl Rglpk]; broken = true; };
   abmR = derive2 { name="abmR"; version="1.0.4"; sha256="1sz27ym4lfzsf8413p3zdq51gcn9lp3bbgjgah0wfas4v3yyfsp4"; depends=[geosphere ggplot2 googledrive gstat gtsummary kableExtra purrr raster rgdal rgeos rnaturalearth rnaturalearthdata sf sp swfscMisc table1 tmap]; broken = true; };
   adoption = derive2 { name="adoption"; version="0.6.4"; sha256="1xjkvj1ys2xmjgswqfsrry27zyqcc9hk9khl0j4s72gcc8az8sz6"; depends=[quadprog RandomFieldsUtils tkrplot]; broken = true; };
   aemo = derive2 { name="aemo"; version="0.3.0"; sha256="108scwyf0dyvn969cks3ikbj2pf2g4dw051asahx26pl0ggw7ijw"; depends=[assertthat dplyr lubridate stringr]; broken = true; };
   agroclim = derive2 { name="agroclim"; version="0.1.0"; sha256="16cyqplzmwziqwkicix0sr06zhc0yx615iv3hda0cxbdyf2rllk3"; depends=[abind cowplot easyNCDF ggforce ggplot2 ggpubr gtable multiApply ncdf4 plyr raster reshape sp zoo]; broken = true; };
+  algaeClassify = derive2 { name="algaeClassify"; version="1.2.0"; sha256="1sna5rij2ngpgqfz5cviqdbyr43xph8cbjc4vnm238n72zgg7cb6"; depends=[httr lubridate plyr RCurl rvest taxize XML xml2]; broken = true; };
   amber = derive2 { name="amber"; version="1.0.3"; sha256="0kc7g5rb0wrs1id1k0qay56063gpffwvcll38983b1l3k215mxiv"; depends=[classInt doParallel foreach Hmisc latex2exp ncdf4 raster rgdal rgeos scico sp viridis xtable]; broken = true; };
+  anchors = derive2 { name="anchors"; version="3.0-8"; sha256="12gd2526y7s2a8i6b9xma2c3sc6zxnwzl6sn8b50hbxizwr8d34j"; depends=[MASS rgenoud]; broken = true; };
   anominate = derive2 { name="anominate"; version="0.6"; sha256="01p2qkqf88bzhwywyass5r8dwg2ycflmkbzmsps7fzy0kv3xyb02"; depends=[coda MCMCpack pscl wnominate]; broken = true; };
   aopdata = derive2 { name="aopdata"; version="0.2.3"; sha256="0zrk76p52lh5h34a9akm7fn4d71mk8ai9clsyiqya0hl2slymcm8"; depends=[curl data_table httr sf]; broken = true; };
   apricom = derive2 { name="apricom"; version="1.0.0"; sha256="1gyd1yln14cn0iswj7sjs4hav6j6d4f3ncps4gqbci5fwha5blcr"; depends=[logistf penalized rms shrink]; broken = true; };
+  apsrtable = derive2 { name="apsrtable"; version="0.8-8"; sha256="1qmm89npjgqij0bh6p393wywl837lfsshp2mv9b5izh1sg2qfwvw"; depends=[]; broken = true; };
   aptg = derive2 { name="aptg"; version="0.1.1"; sha256="0mdhgc0jrl2za3k2awm92vky2ghcssqq1x2h57ns9b17lwdrsdl4"; depends=[ape brranching phytools taxize xml2]; broken = true; };
   arcos = derive2 { name="arcos"; version="1.27"; sha256="02s4vpfsipww6i73lhrdawqlg01gp929n4sx6z869b12jixnq3ni"; depends=[curl dplyr httr jsonlite magrittr stringr tidyr urltools vroom]; broken = true; };
   artemis = derive2 { name="artemis"; version="1.1.1"; sha256="1v875xn0mvw7p7jdp6d3hpc4cp8yq2aq0b80rq1c619n9rkjq4ks"; depends=[BH ggplot2 lme4 loo Rcpp RcppEigen RcppParallel rstan rstantools StanHeaders]; broken = true; };
   aspline = derive2 { name="aspline"; version="0.1.0"; sha256="1xywp471ly6f0n88lwhpwlg54fizdkjxksli9c60vbi8r56n46mr"; depends=[dplyr fda ggplot2 magrittr Matrix mgcv pryr pspline Rcpp reshape2 rlang splines2 tidyr]; broken = true; };
   automultinomial = derive2 { name="automultinomial"; version="2.0.0"; sha256="04rjg3xjlhnkchzvdxqm762z5abm81s5b9czgzmli30zh07bf3fd"; depends=[igraph Matrix numDeriv]; broken = true; };
+  badgecreatr = derive2 { name="badgecreatr"; version="0.2.0"; sha256="0mdixklaxky5gs8zm99ky280vxxlbq1mxnaarq6x0d1cb71bzv4l"; depends=[git2r]; broken = true; };
+  bapred = derive2 { name="bapred"; version="1.0"; sha256="08kvc4cc984jv08ikwbja8zxidrcdiwi5w88hlqakbm8yc6hzssa"; depends=[affy affyPLM Biobase FNN fuzzyRankTests glmnet lme4 MASS mnormt sva]; broken = true; };
   batchr = derive2 { name="batchr"; version="0.0.2"; sha256="0fkrv6dlyla7bbl00f16lypnz5idyjz9kdqslgbx3pnfwx5hngwx"; depends=[chk cli furrr hms hmstimer yesno]; broken = true; };
+  bayesmodels = derive2 { name="bayesmodels"; version="0.1.1"; sha256="1m9428fzirpfzypd2zdcqhjv2cm05s3qmlxj4ymz6i1dg32svqzr"; depends=[BASS bayesforecast brms bsts cli crayon dials dplyr magrittr modeltime parsnip purrr rlang Rlgt rstan rstudioapi tibble timetk workflows]; broken = true; };
   bcc = derive2 { name="bcc"; version="1.3.1"; sha256="0ac0wasdifd0v47r9sxrsix5hv7masiphn6dyxpqdrd11z7iimgz"; depends=[qcc]; broken = true; };
-  biglasso = derive2 { name="biglasso"; version="1.4.1"; sha256="1q3lilqdbra8wm8cs49d9kl044dlsr69mjax1rvhb9jciyfbrbhw"; depends=[BH bigmemory Matrix ncvreg Rcpp RcppArmadillo]; broken = true; };
+  betafam = derive2 { name="betafam"; version="1.0"; sha256="1nf5509alqnr5qpva36f1wb7rdnc084p170h91jv89xvzsidqxca"; depends=[]; broken = true; };
+  bigmatch = derive2 { name="bigmatch"; version="0.6.2"; sha256="16nmc0n78gzk8x8jhxdilj47gjqqv46sgiivccn5zkv08k1h3jj2"; depends=[liqueueR mvnfast plyr rcbalance]; broken = true; };
   binnednp = derive2 { name="binnednp"; version="0.4.0"; sha256="1qswrr982x5hy2vl2fc603j98cjli9l40zzvvjy2l91p8xxrc5dn"; depends=[doParallel fitdistrplus foreach kedd mclust nor1mix Rcpp Rdpack]; broken = true; };
   binomialMix = derive2 { name="binomialMix"; version="1.0.1"; sha256="1ak3h0lgjmrv9miwn7fl6jvcp8xdld53swjz71q67q999s42np0m"; depends=[dplyr gmp lubridate MASS rlang Rmpfr stringr]; broken = true; };
   blockTools = derive2 { name="blockTools"; version="0.6-3"; sha256="0023p0msfmp8swq4f5aff40m976np7y051x8hjizzw91hrfa4w2n"; depends=[MASS tibble]; broken = true; };
   bmd = derive2 { name="bmd"; version="0.5"; sha256="0d4wxyymycb416sdn272292l70s1h2m5kv568vakx3rbvb8y6agy"; depends=[drc]; broken = true; };
   bmeta = derive2 { name="bmeta"; version="0.1.2"; sha256="19pm60xpmlanngq4nbibp0n5m98xw24b2xghz92ly31i3mkg2n68"; depends=[forestplot R2jags]; broken = true; };
   bnpmr = derive2 { name="bnpmr"; version="1.2"; sha256="0vpqhs1h2mphn9w5yngb7lxvmzrhn7mkj7ca6hykhhg48s2ra98g"; depends=[]; broken = true; };
+  boostmtree = derive2 { name="boostmtree"; version="1.5.0"; sha256="18w5h8m6g4aszffyn0ixhzn2bgbrwrrcq2k54b70vbw00xqxmg1q"; depends=[nlme randomForestSRC]; broken = true; };
   boostr = derive2 { name="boostr"; version="1.0.0"; sha256="123ag8m042i1dhd4i5pqayqxbkfdj4z0kq2fyhxfy92a7550gib2"; depends=[foreach iterators stringr]; broken = true; };
+  bootsPLS = derive2 { name="bootsPLS"; version="1.1.2"; sha256="19ikz3l0qds25hgcxvhsvqy6jyshcdvnxw6774ifl9ylngxvlfh0"; depends=[mixOmics]; broken = true; };
+  brunnermunzel = derive2 { name="brunnermunzel"; version="1.4.1"; sha256="1lba5cpiray65zg1pv3xv6yl1xg78rqlwxkcmhgizlh1rhpd430p"; depends=[]; broken = true; };
   cairoDevice = derive2 { name="cairoDevice"; version="2.28.2.1"; sha256="040gd6cyaabdi0lhfdba4isqjihj28hdxm7mc129nl863pxkx6qm"; depends=[]; broken = true; };
   caliver = derive2 { name="caliver"; version="2.0.0"; sha256="04qa3zrk70c8ak70djfh23jyfxs8293s8wzkk6cs0nyrknhaxzzj"; depends=[ggplot2 lubridate ncdf4 raster rworldmap]; broken = true; };
+  caschrono = derive2 { name="caschrono"; version="2.2"; sha256="0lbf7j6p5gzm4kk8sgzcmxwwzg59wp6g6l38m04609lpcsvxkd52"; depends=[Hmisc zoo]; broken = true; };
+  catchr = derive2 { name="catchr"; version="0.2.31"; sha256="0mj3cgv2d217hcmyr8x0i83wysxhixgly5y1fs6jb1x09gs1cwnd"; depends=[purrr rlang]; broken = true; };
   cecs = derive2 { name="cecs"; version="0.2.4"; sha256="1fm1yrb8kd7f97kgsp5wfp02fspzvndki2aqsfcwb0rlrlckflzf"; depends=[cec2013 stringr]; broken = true; };
+  cin = derive2 { name="cin"; version="0.1"; sha256="1pwvy5nh5nrnysfqrzllb9fcrpddqg02c7iw3w9fij2h8s2v6kq5"; depends=[]; broken = true; };
   circglmbayes = derive2 { name="circglmbayes"; version="1.3.0"; sha256="0i5aacr7vqznm3rhlznc02xjzjkjliadxhhvsmf8wb2cvivz0wir"; depends=[BH coda ggplot2 Rcpp RcppArmadillo reshape2 shiny]; broken = true; };
   clpAPI = derive2 { name="clpAPI"; version="1.3.1"; sha256="0hjpdbmwaww5fznqkkg9jli5y8f8zyd7crn0imdb0xxypmnp7zgf"; depends=[]; broken = true; };
   compstatr = derive2 { name="compstatr"; version="0.2.1"; sha256="0pg8yacfb7jvg9xr0gmis8a4g339isd77h6wr8dd6w900q47xac0"; depends=[dplyr fs httr janitor lubridate purrr readr rlang rvest sf stringr tibble tidyr xml2]; broken = true; };
@@ -18994,71 +19152,118 @@ in with self; {
   contextual = derive2 { name="contextual"; version="0.9.8.4"; sha256="0lww36nymg2cla83jdvl7a42cwn0il20apciz0ddplq8rw2i0a91"; depends=[data_table doParallel foreach Formula iterators itertools R_devices R6 rjson]; broken = true; };
   coreheat = derive2 { name="coreheat"; version="0.2.2"; sha256="1mahnd6k7whd7nj9ax1fhpm17j35i6prww06qx691l8dfn954ld9"; depends=[Biobase convertid heatmapFlex WGCNA]; broken = true; };
   cplexAPI = derive2 { name="cplexAPI"; version="1.4.0"; sha256="00h2zir1ffzjiglfyq8bsfmgq9z155jr0k0fxv8fsbfyw2x9dg10"; depends=[]; broken = true; };
-  crosstable = derive2 { name="crosstable"; version="0.3.2"; sha256="17agqfwcz04d69xsf7k6dybv66wlgjcvhsxym48p7sy8s19vrb6b"; depends=[checkmate dplyr flextable forcats glue lifecycle officer purrr rlang stringr survival tibble tidyr tidyselect]; broken = true; };
+  crantastic = derive2 { name="crantastic"; version="0.1"; sha256="0y2w9g100llnyw2qwjrib17k2r2q9yws77mf6999c93r8ygzn4f5"; depends=[]; broken = true; };
+  csSAM = derive2 { name="csSAM"; version="1.2.4"; sha256="1ms8w4v5m9cxs9amqyljc2hr1178cz6pbhmv7iiq9yj1ijnl4r1x"; depends=[]; broken = true; };
   cuml = derive2 { name="cuml"; version="0.2.1"; sha256="1dmk1gvvzkwfra63qslax9cgqjbsiqam5wcjl955wpb0wdqpa54k"; depends=[ellipsis hardhat magrittr parsnip Rcpp rlang]; broken = true; };
+  darts = derive2 { name="darts"; version="1.0"; sha256="07i5349s335jaags352mdx8chf47ay41q7b0mh2xjwn2h9kzgqib"; depends=[]; broken = true; };
+  datamap = derive2 { name="datamap"; version="0.1-1"; sha256="0qm4zb9ldg4wz1a7paj5ilr1dhyagq81rk9l2v43hmkv52sssgkv"; depends=[DBI]; broken = true; };
+  datapackage_r = derive2 { name="datapackage.r"; version="1.3.5"; sha256="01xx8alj3niznkrn3y2w9j1g60zn1fq0a2clf4r5p2pjyr2rqgy3"; depends=[config future httr iterators jsonlite jsonvalidate purrr R_utils R6 readr rlist stringr tableschema_r urltools V8]; broken = true; };
   datazoom_amazonia = derive2 { name="datazoom.amazonia"; version="0.2.0"; sha256="0l24blbscai47rj9s8a0znd5q4mayddp639107r8dib466ykrz3g"; depends=[data_table dplyr geobr googledrive Hmisc janitor labelled lubridate magrittr purrr RCurl readr readxl sf sidrar stringi stringr tibble tidyr XML]; broken = true; };
   dcortools = derive2 { name="dcortools"; version="0.1.2"; sha256="0p4qbah5jnb6jraka8bg6cks3namrz66bya2iz98q2adarqd517h"; depends=[ggplot2 Hmisc pheatmap Rcpp RcppArmadillo RcppEigen Rdpack Rfast]; broken = true; };
+  dcv = derive2 { name="dcv"; version="0.1.1"; sha256="12c716x8dnxnqksibpmyysqp2axggvy9dpd55s9bhnsvqvi6dshj"; depends=[lmtest]; broken = true; };
+  deltar = derive2 { name="deltar"; version="1.0.0"; sha256="1ki89ysz4qlq5z094ybg3aqfcb6g633ccvpj1cg6nri9z5qjwpm1"; depends=[Bchron]; broken = true; };
+  diathor = derive2 { name="diathor"; version="0.0.9"; sha256="1p6y89vi37a8i3fwnj7rb0hdggk6qrxnsrw0sbpajzkwv1jvyal0"; depends=[algaeClassify data_table ggplot2 purrr stringdist stringr tibble tidyr vegan]; broken = true; };
   diffman = derive2 { name="diffman"; version="0.1.1"; sha256="08b4kqxfg8pmyl2xg8flb581s9wnkdcy5rrmrxp8a89y265qmirx"; depends=[data_table dplyr igraph Matrix progress Rcpp sf tidyverse]; broken = true; };
   dpa = derive2 { name="dpa"; version="1.0-3"; sha256="0dmwi68riddi1q4b10c12wx6n7pqfmv30ix5x72zpdbgm72v343h"; depends=[igraph sem]; broken = true; };
   dynamicGraph = derive2 { name="dynamicGraph"; version="0.2.2.6"; sha256="1xnsp8mr3is4yyn0pyrvqhl893gdx2y1zv8d2d55aah2xbfk0fjj"; depends=[ggm]; broken = true; };
   dynatopmodel = derive2 { name="dynatopmodel"; version="1.2.1"; sha256="0lpfhj69bvagqzzg2kjqvn9xx8f93ii34flrrns20z3bxla6gds9"; depends=[deSolve lubridate maptools raster rgdal rgeos sp topmodel xts zoo]; broken = true; };
+  eBsc = derive2 { name="eBsc"; version="4.13"; sha256="0n4v07462kxcsyjdy0cjbkn48ryzfnrvj28gxpsxwzn2sddfpl86"; depends=[Brobdingnag MASS Matrix nlme Rcpp RcppArmadillo]; broken = true; };
+  ech = derive2 { name="ech"; version="0.1.1.2"; sha256="1mw68dkm6n6zj27rmyw33gaha1nly1srr6v1d5iib72b1gwnik8l"; depends=[assertthat curl dplyr fs geouy glue haven janitor labelled laeken purrr readxl rlang srvyr statar stringr survey tidyr]; broken = true; };
+  edbuildr = derive2 { name="edbuildr"; version="0.3.0"; sha256="19fsk8qkxyzncn614fy6hmmxpv1dikqghs101hbzd0g0a511xk8f"; depends=[dplyr magrittr openxlsx scales stringr tidyselect]; broken = true; };
   efts = derive2 { name="efts"; version="0.9-0"; sha256="1cdn37sij3q73z9gal6x3nnnds55whfj5ywyww119hx092xcb2h4"; depends=[lubridate magrittr ncdf4 plyr stringr udunits2 xts]; broken = true; };
-  emIRT = derive2 { name="emIRT"; version="0.0.11"; sha256="1h91q9vi9cv14bmkaakyynw2z9sx51w0c2kw2in0x91wx7scmd0p"; depends=[pscl Rcpp RcppArmadillo]; broken = true; };
+  egcm = derive2 { name="egcm"; version="1.0.12"; sha256="0nssf5six1j7z6fss7478zdbsfx60myzw833m7nsnaf1r8n4ixaf"; depends=[ggplot2 MASS pracma quantmod tseries urca xts zoo]; broken = true; };
+  emma = derive2 { name="emma"; version="0.1-0"; sha256="0psd8lrbcqla8mkhp0wlassaaimgwlmqy5yv2wwcq59mc5k1v27f"; depends=[clusterSim earth]; broken = true; };
   emstreeR = derive2 { name="emstreeR"; version="2.2.2"; sha256="0lchkkn6s265xnk25bprijlc6nl62nwcp0l9nwplyw7q492ysg0q"; depends=[BBmisc BH ggplot2 Rcpp RcppArmadillo RcppMLPACK scatterplot3d]; broken = true; };
   endogMNP = derive2 { name="endogMNP"; version="0.2-1"; sha256="0maxcp321ngbxrg0i23nlwhj849v771xahh53367x928ss4f8v7i"; depends=[]; broken = true; };
   epiGWAS = derive2 { name="epiGWAS"; version="1.0.2"; sha256="0jqblfmz02za3b2pgi15379bzgh98yv5kyv8kh0lkzhrmpgph2zj"; depends=[DescTools glmnet matrixStats SNPknock]; broken = true; };
+  eqtl = derive2 { name="eqtl"; version="1.1-7"; sha256="0xfr8344irhzyxs9flnqn4avk3iv1scqhzac5c2ppmzqhb398azr"; depends=[qtl]; broken = true; };
   evaluator = derive2 { name="evaluator"; version="0.4.3"; sha256="1gccymjb1ad3xw3kmqafchazv9rid6v6c3h8w96ai5b2jh8zlgwk"; depends=[cli crayon dplyr extrafont ggplot2 magrittr mc2d purrr readr readxl rlang rstudioapi scales stringi tibble tidyr vctrs viridis]; broken = true; };
   eventstudies = derive2 { name="eventstudies"; version="1.2.2"; sha256="01vpd0gnxaibxn3nq6618rxlwapm86idz86n0wj5kfz4a9kj7lsx"; depends=[boot sandwich testthat xts zoo]; broken = true; };
   expands = derive2 { name="expands"; version="2.1.3"; sha256="00zb57gmpj86c7rvpqywpn4c5wl51immps935n3hd2fyk73vqljh"; depends=[ape commonsMath flexclust flexmix gplots matlab moments NbClust plyr RColorBrewer rJava]; broken = true; };
+  expert = derive2 { name="expert"; version="1.0-0"; sha256="0y9vcigvzhymalpv31b9nvmr86z1dz7x29yj838vks0dsv23rgrf"; depends=[]; broken = true; };
   facilitation = derive2 { name="facilitation"; version="0.5.2"; sha256="0gyqa3njyynvdhfziq33xqc7cjhszii67mk8809ncvh6abkdx1hw"; depends=[animation Matrix Rcpp]; broken = true; };
+  factorQR = derive2 { name="factorQR"; version="0.1-4"; sha256="1vl01fm5qfyhnqbl5y86vkr50b8cv07vzlqs3v6smqaqq6yp4lv4"; depends=[lattice]; broken = true; };
+  factualR = derive2 { name="factualR"; version="0.5"; sha256="1wz8ibcmilcx62yy29nd2i1pdmjf7fm0g9i5s58gdn8cjlhnw1jl"; depends=[RCurl RJSONIO]; broken = true; };
   fasteraster = derive2 { name="fasteraster"; version="1.1.1"; sha256="1ycr2h046jds2758xvxn00rhglx3zarbzn3r38j66j5pnz2iiq4f"; depends=[Rcpp]; broken = true; };
   fctbases = derive2 { name="fctbases"; version="1.1.0"; sha256="1jf6ngdph45l105cib13lghan7d68hsjqdr8wsjz2kls8il6kz9s"; depends=[Rcpp RcppArmadillo]; broken = true; };
+  fdacluster = derive2 { name="fdacluster"; version="0.1.0"; sha256="17vk3v8saf3xqab8h92k88l2xfwa3mb0x40p1mdgywgg23nvk3mm"; depends=[dplyr ggplot2 magrittr nloptr purrr Rcpp RcppArmadillo tibble tidyr]; broken = true; };
   feedeR = derive2 { name="feedeR"; version="0.0.10"; sha256="1p64c7ibwn6k5k3vsjxrcjr84czild7g8bqw0yv4axk52vk5jfkx"; depends=[digest dplyr lubridate readr stringr tibble xml2]; broken = true; };
   fidap = derive2 { name="fidap"; version="0.0.3"; sha256="0zq07395qx59xxb3cj5axhpkwnad2h88qbm3aan43q5cip9wi2bx"; depends=[httr jsonlite]; broken = true; };
+  fisheyeR = derive2 { name="fisheyeR"; version="0.9"; sha256="1w6va7gakqq2q8hsvdszpn8s2ysdfc648bk5p5v3wbl5s403bci8"; depends=[tkrplot]; broken = true; };
   fishflux = derive2 { name="fishflux"; version="0.0.1.5"; sha256="0ni3r37s6dvj3mmr04fnr7fird4x2wxdxq9vxzabcgmx9f4ydfiz"; depends=[BH curl dplyr fishualize ggplot2 httr plyr Rcpp RcppEigen RcppParallel rfishbase rstan rstantools StanHeaders tidybayes tidyr]; broken = true; };
-  fishualize = derive2 { name="fishualize"; version="0.2.2"; sha256="19iq2n9pxqf1yl6k2231lrc0ny5r7s0h5s59whrhwfh328q5cfqa"; depends=[curl downloader dplyr ggplot2 gridExtra httr magrittr png rlang scales stringr tidyr]; broken = true; };
+  fitdc = derive2 { name="fitdc"; version="0.0.1"; sha256="1b1abib7jkl7a6r686r53qjw2ywb9q2h67is8691kkaqxpawg30p"; depends=[]; broken = true; };
   flightplanning = derive2 { name="flightplanning"; version="0.8.4"; sha256="1n0mjrqlnfv4fvl512slw3d3vmlcn2lhf89jlfg2s0xfrd9k4pq8"; depends=[rgdal rgeos sp]; broken = true; };
+  fpca = derive2 { name="fpca"; version="0.2-1"; sha256="13b102026xlfb7c2rb3xsqsymm7xpmaxppaafjkb5dx0b1lz0jrc"; depends=[sm]; broken = true; };
   fpmoutliers = derive2 { name="fpmoutliers"; version="0.1.0"; sha256="108bp3smk9jnckd5237xly4ywmal03rq1kidq5z61l6zrhc3yfh9"; depends=[arules doParallel foreach Matrix pmml pryr R_utils XML]; broken = true; };
   fractalRegression = derive2 { name="fractalRegression"; version="1.0"; sha256="0lkxm3f9xz1c4kc81rfhd521q9jzsdb3ngrgn7nsawllpi2zrgwb"; depends=[Rcpp RcppArmadillo]; broken = true; };
-  fssemR = derive2 { name="fssemR"; version="0.1.6"; sha256="1l80anvlf21kvwb95w5mn0i2q773z0vbznx1lqvgsawprhcdiv20"; depends=[glmnet igraph MASS Matrix mvtnorm qtl Rcpp RcppEigen stringr]; broken = true; };
+  fsMTS = derive2 { name="fsMTS"; version="0.1.5"; sha256="1vxj9wkzpbk44hby4fdyhj72748c65by612kpphs6vmgzmw4y471"; depends=[freqdom glasso lars mpmi randomForestSRC]; broken = true; };
+  ftnonpar = derive2 { name="ftnonpar"; version="0.1-88"; sha256="0df9zxwjpfc939ccnm1iipwhpf76b34v0x74nsi1mm1g927dfl0i"; depends=[]; broken = true; };
   fulltext = derive2 { name="fulltext"; version="2.0"; sha256="104wkas9azyb2drfaz1hrgbx2ilbb0k2mb8411l10rsbkqva099f"; depends=[aRxiv crul data_table digest fauxpas hoardr jsonlite magrittr microdemic pdftools rcrossref rentrez rplos storr tibble xml2]; broken = true; };
+  fuzzyFDR = derive2 { name="fuzzyFDR"; version="1.0"; sha256="0zd8i9did0d9gp42xjmwrccm32glabvvy08kl8phhwb1yaq53h7w"; depends=[]; broken = true; };
   gWidgets2RGtk2 = derive2 { name="gWidgets2RGtk2"; version="1.0-7"; sha256="14c933j0wj3lb5da75zxg3w3mfqh0nqk8rczbi4dnqd8sna6jks9"; depends=[gWidgets2 memoise RGtk2]; broken = true; };
   gdmp = derive2 { name="gdmp"; version="0.2.0"; sha256="0fy8x9l6swrb78apwq9d9msz2y8dkfd2fkyp1pkmzxwdb85lmcdm"; depends=[]; broken = true; };
-  geneticae = derive2 { name="geneticae"; version="0.2.0"; sha256="1rjl5jwx1a0kkbv0bncyhj7d4r8i70wbvf8czf2hl17q3iwfdwyd"; depends=[bcv calibrate dplyr GGEBiplots ggforce ggplot2 MASS matrixStats missMDA pcaMethods prettydoc reshape2 rrcov scales tidyr]; broken = true; };
+  geneNetBP = derive2 { name="geneNetBP"; version="2.0.1"; sha256="0sp1chyln5k2zsq7cdhvrqxwr2nhrll1pdl1l5g6fd4gjl2m1nwk"; depends=[bnlearn ggm gRain graph igraph Rgraphviz scales]; broken = true; };
   geobr = derive2 { name="geobr"; version="1.6.5"; sha256="08kl0215q524dq5scx2cm11a7m65xh0wzryl71grrlbqm5000pjj"; depends=[curl data_table httr sf]; broken = true; };
   geostatsp = derive2 { name="geostatsp"; version="1.8.6"; sha256="1ciyw84y5zbwsfqvl5dhq8swfpkqcmzhhvdm9hr5rhj3497sls9j"; depends=[abind Matrix numDeriv raster sp]; broken = true; };
   gfmR = derive2 { name="gfmR"; version="1.1-0"; sha256="0qzzbcra1fnbp0h31b1as20yhmqmi7p62xrhikj64an9avg9b277"; depends=[faraway nnet]; broken = true; };
+  ggRandomForests = derive2 { name="ggRandomForests"; version="2.0.1"; sha256="0f8m0j79d8wbac14zk1s8812rz6vgf04bz1iqq8p4d3sxwnvaj7q"; depends=[ggplot2 randomForest randomForestSRC survival tidyr]; broken = true; };
   ggguitar = derive2 { name="ggguitar"; version="0.1.1"; sha256="1lmfs54h91gzcxin37v4flkywbq3fs648mm1h9ak03xlj5nagzsi"; depends=[dplyr ggplot2 gridExtra lazyeval readr tibble]; broken = true; };
   glacierSMBM = derive2 { name="glacierSMBM"; version="0.1"; sha256="0117fzz2b1lccs0kkwz59w2yysi72j54yvz7373pz11w7rjds84f"; depends=[raster sp udunits2]; broken = true; };
+  googlesheets = derive2 { name="googlesheets"; version="0.3.0"; sha256="11q07nxys72wkxx9mawmjyf20gvwvrb7h3gpa73h6lgh2vgrwnv8"; depends=[cellranger dplyr httr jsonlite purrr readr stringr tibble tidyr xml2]; broken = true; };
   graphscan = derive2 { name="graphscan"; version="1.1.1"; sha256="1dgjb0grdymhimdgwnddjcivgy2i9r1i1nni4v9mx0447skcahk9"; depends=[ape rgl snowfall sp]; broken = true; };
+  grouped = derive2 { name="grouped"; version="0.6-0"; sha256="1glxgacpwk7yjbkwg5ci6bmb2il6hf5zhydwi5bbq6hc032m9976"; depends=[MASS]; broken = true; };
+  gsbm = derive2 { name="gsbm"; version="0.2.1"; sha256="16j4g0wl9phmx85dbrzxsdjcv0nnipgj214fvbz9m6n66khr5pkp"; depends=[doParallel foreach Matrix RSpectra softImpute]; broken = true; };
+  guf = derive2 { name="guf"; version="1.0.2"; sha256="1dfmja2da211pcid4hr7x9q0sgz37756rpykm1ax862avdl8hsmc"; depends=[]; broken = true; };
+  gwdegree = derive2 { name="gwdegree"; version="0.1.1"; sha256="0p06hjp7vay83kbpqsgfr1d8z3ayv483rxbv86fdka94gvi1sjyc"; depends=[dplyr ergm ggplot2 gtools magrittr network scales shiny shinydashboard sna tidyr]; broken = true; };
+  gwerAM = derive2 { name="gwerAM"; version="1.0"; sha256="1c3rzd1jf52a4dn63hh43m9s9xnjvqn67amlm9z1ndrnn6fwfg1b"; depends=[MASS Matrix]; broken = true; };
+  gwsem = derive2 { name="gwsem"; version="2.1.4"; sha256="0qqcbkxkkfwraz750wvk1f86mqy6f2ndkspd8qr0ypnnlh3i0yzl"; depends=[BH data_table lifecycle OpenMx qqman Rcpp]; broken = true; };
+  haarfisz = derive2 { name="haarfisz"; version="4.5"; sha256="1qmh4glwzqwqx3pvxc71rlcimp1l0plgdf380v9hk0b4gj7g3pkf"; depends=[wavethresh]; broken = true; };
   happybiRthday = derive2 { name="happybiRthday"; version="0.0.1"; sha256="0rrvi5kx09p74xwxvqcwibbh4qjlk4jxb89grx74chjxk9ak2yv8"; depends=[data_table dplyr gh lubridate tidyr]; broken = true; };
   hddtools = derive2 { name="hddtools"; version="0.9.4"; sha256="011yhs8c6riimz63pa2am56n5aip2yk5gryx2amvk29pzp1v6my9"; depends=[curl raster readxl rgdal sp tidyr XML zoo]; broken = true; };
   hdpGLM = derive2 { name="hdpGLM"; version="1.0.0"; sha256="04mn0cbbx66218rsd273yh29h28f1xl8k0whwlyn6hrg035mlk0x"; depends=[coda data_table dplyr formula_tools ggjoy ggplot2 ggpubr ggridges Hmisc isotone LaplacesDemon magrittr MASS MCMCpack mvtnorm purrr questionr Rcpp RcppArmadillo rprojroot stringr tibble tidyr tidyverse]; broken = true; };
   healthforum = derive2 { name="healthforum"; version="0.1.0"; sha256="13ih00amv9hrpngm6pxc8vzqzhx8c0yqgaprxdcp5li90lg5r3av"; depends=[magrittr purrr rvest stringr tokenizers xml2]; broken = true; };
   hockeyR = derive2 { name="hockeyR"; version="0.1.1"; sha256="1rzm67ib4i7qa0x302g9k5bm5vabg39l1da5brnkkh9fp6v37lb6"; depends=[dplyr glue httr janitor jsonlite lubridate magrittr polite purrr rvest stringr tidyr zoo]; broken = true; };
   horserule = derive2 { name="horserule"; version="1.0.0"; sha256="0d348pn0ld7lr9lfl1z05905l9kl296j0xic1pib6r5l1c5600r9"; depends=[gbm ggplot2 inTrees MASS mvnfast randomForest RColorBrewer Rdpack]; broken = true; };
-  htestClust = derive2 { name="htestClust"; version="0.2.0"; sha256="1nwj74w5hyz929jz2qci12x1zpk9gva75gn68k70l6xc5vya60qn"; depends=[bootstrap MASS]; broken = true; };
   iRF = derive2 { name="iRF"; version="2.0.0"; sha256="1ll4lxg743p2zipxcq13yjsc7j7dk766dcyixwxilllbisg0dh8y"; depends=[AUC data_table doParallel dplyr foreach Matrix RColorBrewer Rcpp]; broken = true; };
+  ic50 = derive2 { name="ic50"; version="1.4.2"; sha256="1a5ddmbdfr3ls132fvalbkh4yaawv9k58rgpy54s5qddrm6aas2s"; depends=[]; broken = true; };
+  identity = derive2 { name="identity"; version="0.2-1"; sha256="1j5wb5cj5j49in2g6r1shdm4ri4cfzj22hpqazvcmq4dm291sdi9"; depends=[]; broken = true; };
   ideq = derive2 { name="ideq"; version="0.1.4"; sha256="06xk9ghvh3fb79lbkmbqsk07xj06qaigiw41rzbi3bji3fjq1prw"; depends=[matrixcalc mvtnorm pdist Rcpp RcppArmadillo rgen]; broken = true; };
+  ifultools = derive2 { name="ifultools"; version="2.0-23"; sha256="16a7rbvlym3bnfm93ikr5kl0l86ppk0s41fva6idvcx765g3fqkk"; depends=[MASS splus2R]; broken = true; };
+  imputePSF = derive2 { name="imputePSF"; version="0.1.0"; sha256="0xfd2mybg0cbi3n35j28s4xq4iwr5rq4mqwgdqml7l2rlzidcwc8"; depends=[PSF]; broken = true; };
   inTrees = derive2 { name="inTrees"; version="1.2"; sha256="1mwn2ijkyw0y9xcgrr56wxd2326ikarlsi79l59dplvlx2iwbi6c"; depends=[arules data_table gbm RRF xgboost xtable]; broken = true; };
   incadata = derive2 { name="incadata"; version="0.9.1"; sha256="0987zazkp3cxvk88i3yqb70s2i1cg108vc8wyhh2867s3rqdrpgh"; depends=[decoder rvest sweidnumbr xml2]; broken = true; };
+  inference = derive2 { name="inference"; version="0.1.0"; sha256="0j92isfkbhk13yx2hd3a5dd7ikcbgjc04zisd1n5kmg6ajw2aj6r"; depends=[sandwich]; broken = true; };
   interacCircos = derive2 { name="interacCircos"; version="1.0.0"; sha256="1waj0saavvaw2qzhbwcj1k0a2dnmq7zbkdnmb93xj6j1lhfjhbdy"; depends=[htmlwidgets jsonlite plyr RColorBrewer]; broken = true; };
   ipmisc = derive2 { name="ipmisc"; version="6.0.2"; sha256="1dn815p2k1v371pv5fra6541zwc1hyjzxlx11m8pgfcyrfgmicyk"; depends=[dplyr magrittr rlang tibble tidyr zeallot]; broken = true; };
+  ipptoolbox = derive2 { name="ipptoolbox"; version="1.2"; sha256="0scbny4crgr23qcp0vgsxhwmj5g5q5c1c4mb5mmb5njyvc34s01l"; depends=[AlgDesign copula evd kolmim triangle]; broken = true; };
   iq = derive2 { name="iq"; version="1.9.1"; sha256="1n4hdkw37364ilc8v3bffmnwd7r8cpysn7jssf9h9jxh9pyd612y"; depends=[]; broken = true; };
+  isoreader = derive2 { name="isoreader"; version="1.3.2"; sha256="0d0h57imbis7g58gdn7j0pwmc1s71b8ymqwqkg3byagd0yhrxf0w"; depends=[dplyr future glue lubridate magrittr progress purrr R_utils readr rlang stringr tibble tidyr tidyselect UNF vctrs]; broken = true; };
   itemanalysis = derive2 { name="itemanalysis"; version="1.0"; sha256="1ksbd69mca45jlr2gpars87cf4jfm5rx6sz009sv6a83x831x5rq"; depends=[car ggplot2 polycor]; broken = true; };
   jdx = derive2 { name="jdx"; version="0.1.4"; sha256="0jqf0nkdyv9g4rifzlkls0n64fdcma2yphwl478772jlgfmxm2jb"; depends=[rJava]; broken = true; };
   joineRmeta = derive2 { name="joineRmeta"; version="0.1.2"; sha256="0lkj3rry8kvdcl3dxrkvnql8rl3fsgc4lk5qdifhl41aws2q7ccs"; depends=[ggplot2 gridExtra gtools JM joineR lme4 MASS Matrix meta msm statmod survival]; broken = true; };
   jsr223 = derive2 { name="jsr223"; version="0.3.4"; sha256="0rir9v0qhnbl2rgkx1qz2ydj68ba9ccbdzsg6y1acczdhpl03j51"; depends=[curl jdx R6 rJava]; broken = true; };
   kmcudaR = derive2 { name="kmcudaR"; version="1.1.0"; sha256="16dkv9ag5375zc23nqakbg7v6knxvh1pips9rjsls0d7rw2bg1bs"; depends=[Rcpp RcppEigen]; broken = true; };
+  kolmim = derive2 { name="kolmim"; version="1.0"; sha256="0g1i0cazi4nhfwdd3ywqrar1sn7bw77w38qjii045w5vqg05srkp"; depends=[]; broken = true; };
+  laercio = derive2 { name="laercio"; version="1.0-1"; sha256="0la6fxv5k9zq4pyn8dxjiayx3vs9ksm9c6qg4mnyr9vs12z53imm"; depends=[]; broken = true; };
   lass0 = derive2 { name="lass0"; version="1.1.0"; sha256="01fafgyhi3fw8ldjw2gf0z9w1si7il3ailwm197fxmw4wqgys9fl"; depends=[doRNG foreach ismev lpSolve]; broken = true; };
+  lba = derive2 { name="lba"; version="2.4.4"; sha256="0izqndm992zv3sg8v5lpnxbdbxhpxl6hq3bf6xgq3pnw8vl3f6nb"; depends=[alabama MASS plotrix rgl scatterplot3d]; broken = true; };
+  lcda = derive2 { name="lcda"; version="0.3"; sha256="1ximsyn6qw2gfn7b1hdpbjs6h6nk7hrignlii0np1lbf0k8l4xxl"; depends=[poLCA]; broken = true; };
   libproj = derive2 { name="libproj"; version="8.1.0-1"; sha256="16mavs0kpbn1lskfgyzgw5ns270kdvvh2991c8w26cyl23zrcys6"; depends=[cpp11 rappdirs]; broken = true; };
   likeLTD = derive2 { name="likeLTD"; version="6.3.0"; sha256="1mjf4667xd9pf2684d7vqaj54l5s9pgljn4vkfp32wzbfknq6y8r"; depends=[DEoptim gdata ggplot2 gtools rtf]; broken = true; };
+  limitplot = derive2 { name="limitplot"; version="1.2"; sha256="0wj1xalm80fa5pvjwh2zf5hpvxa3r1hnkh2z9z285wkbrcl0qfl2"; depends=[]; broken = true; };
+  lisp = derive2 { name="lisp"; version="0.1"; sha256="025sq46277q9i21189cbmx5dnrh5wfshc5k6la1wjilhr1iqf6nj"; depends=[]; broken = true; };
   lmSupport = derive2 { name="lmSupport"; version="2.9.13"; sha256="0ln5c91mbxkymgnv2nw5m3nrm5bwckpikgb9x1qhmjc55m98wkb8"; depends=[AICcmodavg car gplots gvlma lme4 pbkrtest psych pwr]; broken = true; };
+  lmem_qtler = derive2 { name="lmem.qtler"; version="0.1.1"; sha256="0qbllj66y294n1m8dsyrnwyvzscbzg8mb2dmjyghcrfaz925vkin"; depends=[lattice lme4 pastecs qtl stringr]; broken = true; };
+  lmeresampler = derive2 { name="lmeresampler"; version="0.2.0"; sha256="1qjxv3vrgw183hvya2k4qidnnx9w64lcksjm6v727kcigl3x9h1f"; depends=[catchr dplyr forcats ggdist ggplot2 HLMdiag magrittr Matrix nlmeU purrr statmod]; broken = true; };
+  lmfor = derive2 { name="lmfor"; version="1.5"; sha256="1r301ajcp9ag23n0nw1rgwg8ss5cvinwqargbdg0jpqbhdrgaq7y"; depends=[magic nlme spatstat]; broken = true; };
   maGUI = derive2 { name="maGUI"; version="3.0"; sha256="1ak2sa6y766v5zh54bf7j9hklmkia40nsdchyw834ybb9ijjyjsm"; depends=[Biobase gWidgets2 gWidgets2RGtk2 impute limma Rgraphviz RGtk2 ssize]; broken = true; };
   machQA = derive2 { name="machQA"; version="0.1.4"; sha256="1rdrjy9sxql2c9y691a1jrmgsv7m1ihsschixxb6wc7aahf7mav6"; depends=[machina plyr]; broken = true; };
   machina = derive2 { name="machina"; version="0.1.6"; sha256="009mzqb5jgnilj9b5ldmm5600008bljlqacm8jjxvqsfnfdfg8zv"; depends=[DT httr jsonlite lubridate rhandsontable xts]; broken = true; };
+  matchMulti = derive2 { name="matchMulti"; version="1.1.9"; sha256="0357bgwf6xcq19f1xfxv26gk6drq806jknjq4h32rldqn0sfab0p"; depends=[coin dplyr Hmisc MASS mvtnorm plyr rcbsubset rlang sandwich tidyr weights]; broken = true; };
   mcmcabn = derive2 { name="mcmcabn"; version="0.4"; sha256="0ym7ngai8pv9xalh1s53p8f96s8xpc05zi6ryih2rjv449ib06kq"; depends=[abn coda cowplot ggplot2 ggpubr gRbase]; broken = true; };
-  metabolighteR = derive2 { name="metabolighteR"; version="0.1.2"; sha256="1v50b0pp2hzn6b4xrlclaks3kd315rir44acm24mmqhqybj6lhls"; depends=[crayon dplyr httr magrittr purrr]; broken = true; };
+  mcsm = derive2 { name="mcsm"; version="1.0"; sha256="13sx7s3ywis5n4a70ld2szld9fb8jkfsc82dy6iskhy17vy8pml0"; depends=[coda MASS]; broken = true; };
+  meaRtools = derive2 { name="meaRtools"; version="1.0.4"; sha256="1nxyvdq4670696mhg0svxxlvk9hnr8szai8b18pw6754kmw1bjvn"; depends=[emdist ggplot2 gridExtra gtools lattice plyr Rcpp reshape2]; broken = true; };
+  met = derive2 { name="met"; version="0.1.0"; sha256="0714103xzc4n178307czxmcv7ygjiigjr9b6xnj240ljp7qmln19"; depends=[DiPs]; broken = true; };
   miceMNAR = derive2 { name="miceMNAR"; version="1.0.2"; sha256="1s607icaf3c25mn8xdi3zkzmm8m7qd9a6vjdlz5j7ig2gc9f2y2d"; depends=[GJRM mice mvtnorm pbivnorm sampleSelection]; broken = true; };
   microclustr = derive2 { name="microclustr"; version="0.1.0"; sha256="04xn8p4wgmxq1jbxawq0rhx6l7y1kddlbdfid8zsi4x4arkz7hvp"; depends=[Rcpp]; broken = true; };
   migrbc = derive2 { name="migrbc"; version="2.0.9"; sha256="1nbxdm70a9lvbp4sw78719hdpbqnziw1y7r4xk8i390q2c195am1"; depends=[dplyr futile_logger lubridate Rcpp stringr]; broken = true; };
@@ -19067,25 +19272,27 @@ in with self; {
   mixlink = derive2 { name="mixlink"; version="0.1.5"; sha256="0ywgrcplhspc0x5fniw52xqz20y7j9mwgy4ky8lv3vii659mr52m"; depends=[mvtnorm numDeriv Rcpp RcppGSL]; broken = true; };
   mlbstatsR = derive2 { name="mlbstatsR"; version="0.1.0.3"; sha256="0rcjfbi383rdk2fyrw47ni0jrzp7yj2sr8xzxvk3gmh321i3pn5d"; depends=[dplyr ggplot2 ggtext glue httr janitor jsonlite purrr rvest stringr tibble tidyr xml2]; broken = true; };
   mleap = derive2 { name="mleap"; version="1.1.0"; sha256="0s15srbnk8fs5vj12gdszpg6g563q17v42fng2rydkgi4q7m2vj6"; depends=[digest fs jsonlite purrr rJava sparklyr tibble]; broken = true; };
+  mlgt = derive2 { name="mlgt"; version="0.16"; sha256="1nvdq6mvgr39ikkf73aggsb6pmbw132injj8fdkr8hgcmwm6lgd9"; depends=[seqinr]; broken = true; };
   mmpca = derive2 { name="mmpca"; version="2.0.1"; sha256="05vir7hjv5dccfcizyn5n6qxx2p53111if16l44a7ifg5k599xj9"; depends=[digest gsl Rcpp RcppEigen]; broken = true; };
   mnlogit = derive2 { name="mnlogit"; version="1.2.6"; sha256="0dfwpkl8g7ap5xr48smiv8vdbamd2r1liy9nwpsn0kcsr9cj65n9"; depends=[Formula lmtest mlogit]; broken = true; };
+  mobsim = derive2 { name="mobsim"; version="0.2.0"; sha256="0an8j5kj0cs1bjz9kwzwc54hm0zaiz5rsaw78ihldw0mx5n175gn"; depends=[Rcpp sads vegan]; broken = true; };
   modcmfitr = derive2 { name="modcmfitr"; version="0.1.0"; sha256="1d6fi7pc10w2a97h1prhkg5cvzmxjp11c5bwrz90zry0m8anwjyh"; depends=[gtools nloptr]; broken = true; };
-  monoreg = derive2 { name="monoreg"; version="1.2"; sha256="16n622j1j998a5fhn1c1qbzk5bfa5h09d95ry89gsd00p40hqg0a"; depends=[]; broken = true; };
   mosaic_find = derive2 { name="mosaic.find"; version="0.1.2"; sha256="1fzgksh8sp701qjfrvjl2bg967qjkjpilxsfkrazhw71cgmzjgjl"; depends=[minpack_lm]; broken = true; };
-  moult = derive2 { name="moult"; version="2.2.0"; sha256="15r5s5ghqip28g12bwcn407lhgfv6408gndw4nvm3nhi8z0hwvrd"; depends=[Formula Matrix]; broken = true; };
+  mpa = derive2 { name="mpa"; version="0.7.3"; sha256="0mhnsbgr77fkn957zfiw8skyvgd084rja1y4wk5zf08q5xjs2zvn"; depends=[network]; broken = true; };
   mssqlR = derive2 { name="mssqlR"; version="1.0.0"; sha256="0qdnm7cx9cg14vfcnkmcjqr1jpxsw8xlrbnxldvzz44mzv2n878l"; depends=[magrittr RODBC]; broken = true; };
   multdyn = derive2 { name="multdyn"; version="1.6"; sha256="06yab2lmxp7lc7zjk8n194mn5vza0yjbp276iair3ry35my4h3v8"; depends=[data_table ggplot2 Rcpp RcppArmadillo reshape2]; broken = true; };
-  multilinguer = derive2 { name="multilinguer"; version="0.0.4"; sha256="0kavgvbzv8bvv9qlr92j8mx7b802w513mqalrdyln0pw36c9i13x"; depends=[askpass fs rstudioapi rvest sys usethis xml2 zip]; broken = true; };
-  multinomineq = derive2 { name="multinomineq"; version="0.2.1"; sha256="09h5nccfcrnl78rdxwsw5cqirfq40a6x4dmpkibc475z3xndk2rm"; depends=[coda quadprog Rcpp RcppArmadillo RcppProgress RcppXPtrUtils Rglpk]; broken = true; };
   mvst = derive2 { name="mvst"; version="1.1.0"; sha256="03q0kdychsmn4wcn50b6dqhxn4f2mjvrr5rac942xdv75w8qklc9"; depends=[MCMCpack mnormt mvtnorm]; broken = true; };
+  mwaved = derive2 { name="mwaved"; version="1.1.8"; sha256="092sqd9harx289bgghw9x495llzhab0vkgkjka5jhi4ad1rfk3vh"; depends=[Rcpp shiny]; broken = true; };
   nCal = derive2 { name="nCal"; version="2021.9-12"; sha256="133dpy2rp8sabwdlk0wjxs9rzixzcja73im94qaw26z5xsnaydhf"; depends=[drc gdata gWidgets2 kyotil]; broken = true; };
+  namer = derive2 { name="namer"; version="0.1.5"; sha256="1687x6rc46bp2bmqkixzry5cc7lxjqwjk8ngrbg2fk7mzb4pwvnq"; depends=[dplyr fs glue magrittr purrr rstudioapi tibble]; broken = true; };
   nearfar = derive2 { name="nearfar"; version="1.2"; sha256="116rq797a5fascirz8xg465fywjf40j1k5czryvqzpik0if0w00r"; depends=[car GenSA MASS nbpMatching]; broken = true; };
-  neatStats = derive2 { name="neatStats"; version="1.8.1"; sha256="0kxhl4h3xq6qg4fpxxji3j3p0yg5g271c3p9zbngkp7q8fiqz5vd"; depends=[BayesFactor bayestestR car Exact ez ggplot2 ggpubr logspline MBESS plyr PoweR pROC viridis]; broken = true; };
-  not = derive2 { name="not"; version="1.2"; sha256="1671j3yirzdyhb02khx1yddslyig5jlnb0bdbgdlkb21n4zwaqa4"; depends=[]; broken = true; };
+  nontarget = derive2 { name="nontarget"; version="1.9"; sha256="0ndqcr73sja5ks5kdahhakpz9lw3rp26imklagdv4f5agqnb608s"; depends=[enviPat mgcv nontargetData]; broken = true; };
+  nontargetData = derive2 { name="nontargetData"; version="1.1"; sha256="07cdbpmn64sg4jfhljdcx503d55azyz58x7nkji044z3jmdryzqw"; depends=[]; broken = true; };
   ntwk = derive2 { name="ntwk"; version="1.0.0"; sha256="1c12c3pq992f02z3ikx17zv2djq9d9ly232ha0j5jswsksqzx024"; depends=[assertthat copCAR ghyp Matrix mvtnorm pracma zoo]; broken = true; };
   oc = derive2 { name="oc"; version="1.2"; sha256="0cw1gvz6gk8j718zmywqp03h9cnzn132nwbv45gr00xg2s9h7dk7"; depends=[pscl]; broken = true; };
-  occCite = derive2 { name="occCite"; version="0.5.1"; sha256="1swarf4nwqy20ffy5ff44zq804i8gb095b7p9zay0iccfz9bn2jm"; depends=[bib2df BIEN DBI dplyr ggplot2 htmltools httr leaflet lubridate RColorBrewer rgbif rlang RPostgreSQL stringr taxize tidyr viridis waffle]; broken = true; };
-  optimall = derive2 { name="optimall"; version="0.1.0"; sha256="09vcznvfcgal1cr17byw6c2kwkch6q9v32wvdxyjxrykc5y45hip"; depends=[dplyr glue magrittr rlang tibble]; broken = true; };
+  optband = derive2 { name="optband"; version="0.2.1"; sha256="1rv4r7h7x3xipav917cz9bcr6nqjzbinfrqxv8mcls9gdl9ha3y9"; depends=[LambertW]; broken = true; };
+  optmatch = derive2 { name="optmatch"; version="0.9-17"; sha256="1q55dchgdv05s3q6x0k8ybzmfcvzxsf893gvhs2cgijxrfgvgyv0"; depends=[digest Rcpp survey survival]; broken = true; };
+  packClassic = derive2 { name="packClassic"; version="0.5.2"; sha256="04a1sg9vx3r0sq54q9kj0kpahp6my246jy3bivgy09g5fjk0dmkj"; depends=[]; broken = true; };
   pairheatmap = derive2 { name="pairheatmap"; version="1.0.1"; sha256="1awmqr5n9gbqxadkblpxwcjl9hm73019bwwfwy1f006jpn050d6l"; depends=[]; broken = true; };
   pairwiseComparisons = derive2 { name="pairwiseComparisons"; version="3.1.6"; sha256="0aiq8gr33pr5lia6cf6ak7zy5z81am5j5a0py0a2m9ljgmsgmn4s"; depends=[BayesFactor dplyr insight ipmisc parameters PMCMRplus purrr rlang WRS2]; broken = true; };
   panelAR = derive2 { name="panelAR"; version="0.1"; sha256="1ka2rbl9gs65xh2y2m4aqwh5qj4szibjy101hqfmza9wmdh25gpq"; depends=[car]; broken = true; };
@@ -19096,37 +19303,52 @@ in with self; {
   pbdRPC = derive2 { name="pbdRPC"; version="0.2-1"; sha256="1pz71zfs9qw96dj3h5mrm734vbbi4drlv9hrw91dbzm3a7jsxg4q"; depends=[]; broken = true; };
   pedometrics = derive2 { name="pedometrics"; version="0.7.0"; sha256="0rqldc67yrcg16i5q9wrmfmh3lw3qrfdxwdb4mxkjxx18v4fv737"; depends=[lattice latticeExtra Rcpp]; broken = true; };
   permGPU = derive2 { name="permGPU"; version="0.15"; sha256="1bxydc5dw7ka45k6ban35d5xb1dw9yq9480qns8b39cc0x3acmhc"; depends=[Biobase foreach RUnit survival]; broken = true; };
+  photosynthesis = derive2 { name="photosynthesis"; version="2.0.1"; sha256="0drbic4sdx841pzcqvi0gkny7qrnzixlc0wsr6m0llh7pfyl99s6"; depends=[checkmate crayon dplyr furrr future ggplot2 glue gunit magrittr minpack_lm nlme pkgnet purrr rlang stringr tealeaves tidyselect units]; broken = true; };
   phreeqc = derive2 { name="phreeqc"; version="3.6.3"; sha256="0z20gj1kqhnbvx33sswz5ivj7nk2p4hia4gr2npscs94nc50b5j4"; depends=[]; broken = true; };
+  physx = derive2 { name="physx"; version="1.0"; sha256="1b6bx08jzfg4pxicawkn013bqrvqkp19pigxl3iwjrqclvi8mx73"; depends=[celestial cubature data_table docore MASS pracma Rcpp]; broken = true; };
   pm4py = derive2 { name="pm4py"; version="1.2.7"; sha256="11xbsmsc9pxd98fy28l3nxzhb6c2pwvh1gmm34jnqn0rjbpb2n9i"; depends=[bupaR petrinetR purrr reticulate stringr]; broken = true; };
   pmdplyr = derive2 { name="pmdplyr"; version="0.3.3"; sha256="1grnqqydi84hnig1522lv4xbh9ds32wnq7sha7jn1q4186wlz1qa"; depends=[dplyr lubridate magrittr pillar rlang tibble tidyr tidyselect vctrs]; broken = true; };
+  pnn = derive2 { name="pnn"; version="1.0.1"; sha256="1s6ib60sbdas4720hrsr5lsszsa474kfblqcalsb56c84gkl42ka"; depends=[]; broken = true; };
   podr = derive2 { name="podr"; version="0.0.5"; sha256="135nq0dw1x6ngf6mxy3yds3xsxhaf5rnv1cmhavlrklhdfygc0a4"; depends=[assertthat DBI dplyr lubridate magrittr odbc plogr RPostgres rstudioapi shiny stringr tibble]; broken = true; };
   polyPK = derive2 { name="polyPK"; version="3.1.0"; sha256="0cb83sq8iz4swr73vwhh8n4k62p6321nsy1sz5fba0wiicycxf55"; depends=[circlize corrplot gplots Hmisc impute imputeLCMD mixOmics pcaMethods pkr plyr ropls sqldf xlsx]; broken = true; };
   polyglot = derive2 { name="polyglot"; version="0.3.0"; sha256="1mmmdqaq882qys41lmm009ncg9s9h5x1q8psv0v3pwpar0d7vgff"; depends=[magick pins]; broken = true; };
+  pragma = derive2 { name="pragma"; version="0.1.3"; sha256="1n30a346pph4d8cj4p4qx2l6fnwhkxa8yxdisx47pix376ljpjfx"; depends=[]; broken = true; };
+  predmixcor = derive2 { name="predmixcor"; version="1.1-1"; sha256="0v99as0dzn0lqnbbzycq9j885rgsa1cy4qgbya37bbjd01b3pykd"; depends=[]; broken = true; };
+  prider = derive2 { name="prider"; version="1.0.2"; sha256="0a7n4b2a0p91q8llgn14czfxvi588v62x5azl7nndvjdk6g4cmmy"; depends=[blaster dplyr gplots magrittr purrr Rcpp stringr tibble tidyr]; broken = true; };
+  psychometric = derive2 { name="psychometric"; version="2.2"; sha256="1b7cx6icixh8k3bv60fqxjjks23qn09vlcimqfv2x3m3nkf8p1s9"; depends=[multilevel nlme]; broken = true; };
   psyosphere = derive2 { name="psyosphere"; version="0.1.6"; sha256="1hcas3jk2n11lyw1ysmci0sysxf7qg9h2msqqg7q9nqp5gbf90np"; depends=[geosphere ggplot2 Hmisc lubridate plyr rgdal RgoogleMaps sp]; broken = true; };
-  qcr = derive2 { name="qcr"; version="1.3"; sha256="0jifg383qv935q9jlrlwy3y00nvjpgp2vm3qv5z0jdlr4kdw0pmm"; depends=[fda_usc MASS mvtnorm qcc]; broken = true; };
   qoma_smuggler = derive2 { name="qoma.smuggler"; version="0.0.1"; sha256="03p9i0kr6i3adpb9lcszcmdr9p26nfy7f8hw2sbydazglaw4hscr"; depends=[lubridate rhli tibble]; broken = true; };
+  rDotNet = derive2 { name="rDotNet"; version="0.9.1"; sha256="18cd5373pdfi1x958llb4cgjqdi1fb7h7m5nkdwcd4xw9hxhinzd"; depends=[Rcpp testthat]; broken = true; };
   rGEDI = derive2 { name="rGEDI"; version="0.1.11"; sha256="0fkvy4p82jyfbbfymkfbrdyh13hk6a6wghk2myb64p5nhz8kv7iz"; depends=[bit64 curl data_table fs getPass ggplot2 hdf5r jsonlite lazyeval raster RColorBrewer rgdal rgeos sp]; broken = true; };
   rKolada = derive2 { name="rKolada"; version="0.2.0"; sha256="0ikyjzg8xbzyah37dpfwq2slssz956irm4dj8b7zv6x9qxi09gj9"; depends=[dplyr glue httr jsonlite magrittr purrr rlang stringr tibble tidyr urltools]; broken = true; };
   rModeling = derive2 { name="rModeling"; version="0.0.3"; sha256="0xrjxayp59f31wwcqqkzs5my2j2lpbv1f4pp709fmqxz02vbdzhv"; depends=[caret e1071 MASS]; broken = true; };
   radix = derive2 { name="radix"; version="0.6"; sha256="0290n0yax8649srdjbq4439h0d9f6jsmxayyhp86igcnszcxilnb"; depends=[base64enc bookdown digest downloader htmltools jsonlite knitr lubridate mime png progress rmarkdown rprojroot rstudioapi stringr whisker xfun xml2 yaml]; broken = true; };
   randaes = derive2 { name="randaes"; version="0.3"; sha256="14803argy0xdd8mpn4v67gbp90qi2is4x6na9zw7i9pm504xji1x"; depends=[]; broken = true; };
   randomsearch = derive2 { name="randomsearch"; version="0.2.0"; sha256="0ywr4ms66p5nmq8bzy04gbvmpp0nhfyf8rvynhr2c4alqva9x3yi"; depends=[checkmate fs parallelMap ParamHelpers smoof]; broken = true; };
+  rattle = derive2 { name="rattle"; version="5.4.0"; sha256="1cg26k491f78yqwis07djad8b3f9ndqwqylbh5sh66l2j9bdpmz5"; depends=[bitops dplyr ggplot2 magrittr rpart_plot stringi stringr tibble tidyr XML]; broken = true; };
+  rattle_data = derive2 { name="rattle.data"; version="1.0.2"; sha256="0cnmyzvy23jc4vz521c3jg0w4165waycvy5014l5773fy19zq75c"; depends=[]; broken = true; };
   rawr = derive2 { name="rawr"; version="0.1.3"; sha256="0k0x1pmxs73j6dmjg33n4hhwjwzpnhzbmmmjza6kw7hj6lfmipx4"; depends=[clipr dplyr jsonlite rvest stringr xml2]; broken = true; };
   rbedrock = derive2 { name="rbedrock"; version="0.1.1"; sha256="0vh6pg1lg2764zjhciswznvq7ccrd71855bmdadlj6cc1gv0fphq"; depends=[bit64 digest dplyr fs magrittr purrr R6 rappdirs readr rlang stringr tibble tidyr vctrs]; broken = true; };
+  rcbsubset = derive2 { name="rcbsubset"; version="1.1.6"; sha256="0ks94x34fw7rcvbccli6b0rlvdj3asfy6h4rm19nb022r9dax86f"; depends=[MASS plyr rcbalance]; broken = true; };
+  rcol = derive2 { name="rcol"; version="0.2.0"; sha256="1ypn5fiwhyvfnmjs2davqqhxf5pjg7f0101v40bqrv4jz563h5n1"; depends=[crul data_table glue jsonlite tibble]; broken = true; };
   rdaemon = derive2 { name="rdaemon"; version="1.0.6"; sha256="1qr6v7kgk9nd5qp96667x51331xmpp1yz1r190dgd1fqigw735s5"; depends=[base64enc futile_logger Rcpp]; broken = true; };
+  rdataretriever = derive2 { name="rdataretriever"; version="3.0.0"; sha256="1a01lrzn7gcxid01r0l8nnbpbryvs07z9nf43l1143w2n9bvgn24"; depends=[reticulate semver]; broken = true; };
+  rela = derive2 { name="rela"; version="4.1"; sha256="00ksm7zh1mpd2d5c5d823id3sxj0h3x0ccg6a40fadibvr1ay3ny"; depends=[]; broken = true; };
   retrocombinator = derive2 { name="retrocombinator"; version="1.0.0"; sha256="0ci5cm9ml2gsn0n0scaahpfi8kyn6i0s3fb4mn7m9s83c0ls6xgv"; depends=[dplyr ggplot2 magrittr Rcpp rlang]; broken = true; };
-  rgho = derive2 { name="rgho"; version="2.0.1"; sha256="1byvq2swn2j9v0zy5smjklv7bkncrclhli62cf1f2wiah5qg8sv2"; depends=[curl dplyr httr jsonlite lazyeval magrittr memoise readr rlang tibble tidyr]; broken = true; };
+  rgho = derive2 { name="rgho"; version="2.0.2"; sha256="02p7xnfczbnvbm60hhfyywwg8iwsakk1gm29xsj9vq3ldxdjxbbv"; depends=[curl dplyr httr jsonlite lazyeval magrittr memoise readr rlang tibble tidyr]; broken = true; };
   rijkspalette = derive2 { name="rijkspalette"; version="1.0.2"; sha256="00726q8s36si08ghd9sgi7ikadcj11xqwhgv8f3cml6lvwz7ppzz"; depends=[crayon imager jsonlite]; broken = true; };
   rnetcarto = derive2 { name="rnetcarto"; version="0.2.4"; sha256="0fk5rym6zp049bl1f7bkl2231mjh3pgnxn0nhvmzpsah08rh4rr6"; depends=[]; broken = true; };
-  rsat = derive2 { name="rsat"; version="0.1.16"; sha256="0d40dh596yr9qk6hyyb37w0jl73595p80sk89yyjknvj3hilsj8y"; depends=[calendR curl fields httr leafem leaflet raster Rdpack rjson rvest sf sp stars terra tmap XML xml2 zip]; broken = true; };
-  rubias = derive2 { name="rubias"; version="0.3.2"; sha256="1dq7bjb3p87gvsg9b2vpd65xp8ihp68dic2w9my687mpc11fxp1v"; depends=[dplyr gtools magrittr Rcpp RcppParallel readr rlang stringr tibble tidyr]; broken = true; };
+  rpsychi = derive2 { name="rpsychi"; version="0.8"; sha256="1h40kbqvvwwjkz5hrclj6j22zhav3yyfbbhqahs1whwjkksnam4w"; depends=[gtools]; broken = true; };
   safedata = derive2 { name="safedata"; version="1.0.9"; sha256="0xcpgh4898rqdnnxx21vyxc8aqlwg26aywr591sllasrv1jzsmrc"; depends=[chron curl igraph jsonlite readxl sf]; broken = true; };
-  sara4r = derive2 { name="sara4r"; version="0.0.8"; sha256="0b8ir25f0348pd2ckwzv1pyz3iz98zy09baih3rkgxxn8hjdnxj7"; depends=[raster rgdal RGtk2 sp]; broken = true; };
+  salbm = derive2 { name="salbm"; version="1.0"; sha256="06nizpphyn5q292b2kbsjax0ljw3340n655qwiyp8lvi2zcnl6jy"; depends=[randomForestSRC]; broken = true; };
+  salem = derive2 { name="salem"; version="0.2.0"; sha256="1pk27d57bmds0jvnvwai2scjy798lb7w6lb84yxl4ccgyn1ldh45"; depends=[]; broken = true; };
+  sapa = derive2 { name="sapa"; version="2.0-3"; sha256="0kj681rd4c2lvqr926lb6f4qwp281x5274dg6vbk8pf5y7s0qlpc"; depends=[ifultools splus2R]; broken = true; };
+  scriptests = derive2 { name="scriptests"; version="1.0-16"; sha256="11l145gvzkxqwbzw976rq94krly1p4lahqw051dwaacarq4hnrdg"; depends=[]; broken = true; };
   seedwater = derive2 { name="seedwater"; version="2.0"; sha256="1q6q612245hqqx89jzlp77f73vj2baxi0bghd9l8kpjz4ydh6rv8"; depends=[rpanel]; broken = true; };
   sensR = derive2 { name="sensR"; version="1.5-2"; sha256="073za0z6dawba2nd45hs20m0143kckxn3iglkyqz9vdfqwyv7wlq"; depends=[MASS multcomp numDeriv]; broken = true; };
   sequoia = derive2 { name="sequoia"; version="2.3.5"; sha256="1n0c24g5zl0l63nsaywwjfqsjn0ql2ckd3iqmc381qngijnckc17"; depends=[plyr]; broken = true; };
   shinyypr = derive2 { name="shinyypr"; version="0.0.2"; sha256="1k6jsw6gnpwk90hkpa9grki0b68cab57vbd0h6ldjqr11giwcz8z"; depends=[bsplus chk dplyr DT ggplot2 lifecycle magrittr purrr readr shiny shinyjs waiter ypr]; broken = true; };
-  shrink = derive2 { name="shrink"; version="1.2.1"; sha256="0pd967wsys8fd7gyvr9y08km118yamfk5c1a1i2k8nr2ifpqmy0w"; depends=[MASS mfp rms survival]; broken = true; };
+  sigQC = derive2 { name="sigQC"; version="0.1.22"; sha256="17b16mjadmsbqbai90bvryydkfy9k5ww9i65a5ahy3bfjch851f2"; depends=[biclust circlize class cluster ComplexHeatmap fmsb gplots gridGraphics GSVA KernSmooth lattice MASS mclust moments nnet RankProd]; broken = true; };
   simLife = derive2 { name="simLife"; version="0.5.2"; sha256="1dhrjszfgxr0j4dkc2bwykyj515ji5rkb572nmnyjgkyi652j01v"; depends=[splancs]; broken = true; };
   simba = derive2 { name="simba"; version="0.3-5"; sha256="14kqxqavacckl5s1518iiwzrmlgbxz1lxy33y8c9qq7xaln41g9h"; depends=[vegan]; broken = true; };
   simfinR = derive2 { name="simfinR"; version="0.2.3"; sha256="1swlgwmd5frz72i3vjv7am8s6vr6i7mv76j7hxffk3l7xmq7y53s"; depends=[crayon digest dplyr jsonlite lubridate magrittr memoise purrr]; broken = true; };
@@ -19134,35 +19356,51 @@ in with self; {
   smartR = derive2 { name="smartR"; version="0.62.3"; sha256="0ardb4arhr7qmr30b3ahf7hkwlys9i420bm8h2688phahgfkk0y8"; depends=[caret chron cluster foreign ggplot2 ggrepel ggthemes gridExtra gstat gsubfn gWidgets2 gWidgets2RGtk2 igraph jpeg jsonlite lattice mapdata mapproj maps maptools marmap mtsdi nnls PBSmapping plyr R6 RColorBrewer reshape2 rgdal rgeos rjags ROCR rpart scales shape sp spdep sqldf vegan]; broken = true; };
   sobir = derive2 { name="sobir"; version="0.1.2"; sha256="0di9mk1c1jf8yr7jpmfm19w2w3p9lz1mkgrv3bmfyab83aghvbfp"; depends=[DescTools devtools dplyr ggplot2 raster rlang scales sp statmod stringr tidyr usethis]; broken = true; };
   spANOVA = derive2 { name="spANOVA"; version="0.99.3"; sha256="0w817zwbk6amh3n3j8wzjr15qqhfbk9s23c77b27iwcc5akdgbix"; depends=[ape car DT geoR gtools knitr MASS Matrix multcomp multcompView mvtnorm rmarkdown ScottKnott shiny shinyBS shinycssloaders shinythemes spatialreg spdep xtable]; broken = true; };
+  spagmix = derive2 { name="spagmix"; version="0.3-4"; sha256="032dmz8cx4j5vl229gi1xkncc1wggfrf1a24qqwl2bzxrdfp27rw"; depends=[abind mvtnorm RandomFields sparr spatstat spatstat_core spatstat_geom spatstat_linnet]; broken = true; };
   spate = derive2 { name="spate"; version="1.7"; sha256="1cr5jjrycfj9larsqgzfakk4qgfz8m5djg4ddzk6s3lg2iw06y43"; depends=[mvtnorm truncnorm]; broken = true; };
+  spe = derive2 { name="spe"; version="1.1.2"; sha256="0xyx42n3gcsgqmy80nc9la6p6gq07anpzx0afwffyx9fv20fvys0"; depends=[]; broken = true; };
   spfrontier = derive2 { name="spfrontier"; version="0.2.5"; sha256="1vnvwcjbhvbmyn5rp4760amzy8k3y156q629fjymw9rw6zy45pbf"; depends=[ezsim moments mvtnorm numDeriv optimx spdep tmvtnorm]; broken = true; };
   spiders = derive2 { name="spiders"; version="1.2"; sha256="1qklm178bgkgpvrjf024jphsdh9can8300sf0702l4h0rk2daqbq"; depends=[plyr]; broken = true; };
   spsann = derive2 { name="spsann"; version="2.2.0"; sha256="00nlrwk50ch128brzvfxld0pcpq1syks9rvwdrcf1i2pcxnva7d0"; depends=[pedometrics Rcpp sp SpatialTools]; broken = true; };
   sqp = derive2 { name="sqp"; version="0.5"; sha256="0l01zwcryv5bmzmd98gj0m5ip8nvr8lziq1awvfif1bzwvvd2kzx"; depends=[Matrix Rcpp RcppArmadillo RcppEigen Rdpack]; broken = true; };
   stacomiR = derive2 { name="stacomiR"; version="0.6.0"; sha256="0mcq7lcwcz9s18vdd7762dfr2fyb5fqvnv0b5ljp7kdbr3ia977y"; depends=[dplyr ggplot2 Hmisc intervals lattice lubridate magrittr mgcv pool RColorBrewer reshape2 rlang RPostgres stacomirtools stringr withr xtable]; broken = true; };
+  stam = derive2 { name="stam"; version="0.0-1"; sha256="1x1j45fir64kffny0nssb2hwn4rcp8gd2cjv6fw4yy0l4d0xi5iv"; depends=[np sp]; broken = true; };
   stanette = derive2 { name="stanette"; version="2.21.2"; sha256="1266555964cymrgrmfzjk2x12hpyjvd18c8q0lx92wdssnqzhhzr"; depends=[BH brew coda ggplot2 gridExtra inline lattice loo pkgbuild Rcpp RcppEigen RcppParallel StanHeaders V8 withr]; broken = true; };
+  stpp = derive2 { name="stpp"; version="2.0-5"; sha256="1p7dxzfhi5pvva956nyypl7dfdgq3m0cara73hai87qzc342xcf0"; depends=[ggplot2 gridExtra KernSmooth plot3D rgl rpanel spatstat_core spatstat_geom splancs]; broken = true; };
+  subscreen = derive2 { name="subscreen"; version="3.0.5"; sha256="0786p2n1a4xjsxnd31w2b079ggdzx9pgn14d5vbngrc6mgjm9hk8"; depends=[bsplus colourpicker data_table dplyr DT jsonlite plyr purrr randomForestSRC shiny shinyjs shinyWidgets]; broken = true; };
   subtee = derive2 { name="subtee"; version="1.0.0"; sha256="09ah1n3whdycygbi1a6pwgm5jqs1srd565p3ihkk5ygp4gl2r3z9"; depends=[ggplot2 MASS matrixStats survival]; broken = true; };
   survRatio = derive2 { name="survRatio"; version="0.1"; sha256="1xrqin3q3b7r8ga4i71ci97rsm4lj5ffd0720n7s563jkpnpyb9l"; depends=[ggplot2 ggpubr gridExtra survival]; broken = true; };
+  survxai = derive2 { name="survxai"; version="0.2.2"; sha256="09ig561754kjzpay2hy3n62zlk0bgwkjy8vnslrr428r8m1lj0qr"; depends=[breakDown ggplot2 pec prodlim scales survival survminer]; broken = true; };
   swissdd = derive2 { name="swissdd"; version="1.1.4"; sha256="0ad260b4sfism5q1jxjazg6q33283ncld1m7gfdrps3xg1kyfirs"; depends=[dplyr ggplot2 httr jsonlite lubridate purrr RCurl sf stringr tibble tidyr]; broken = true; };
   tabulizer = derive2 { name="tabulizer"; version="0.2.2"; sha256="0zd5cfqwgirqchw1mvziscxvzl8pb1y6rbfywkn9i9pxfydkm5vi"; depends=[png rJava tabulizerjars]; broken = true; };
   tabulizerjars = derive2 { name="tabulizerjars"; version="1.0.1"; sha256="005n2gyzzmq8h0mpj8xs6ri6llzwag7nqzpm4vnzp81vwy8kmf92"; depends=[rJava]; broken = true; };
   test2norm = derive2 { name="test2norm"; version="0.2.0"; sha256="02dmskqnxinfdxxq5s969p37fps0wpiz6mrcnx03f03a3gzqljl0"; depends=[mfp]; broken = true; };
   thectar = derive2 { name="thectar"; version="1.0.0"; sha256="1qh0qzg0ybb38kzm56xxlvhm201pdjm16aky5f1fdflcsszgy8mx"; depends=[proxy smacof]; broken = true; };
   themetagenomics = derive2 { name="themetagenomics"; version="1.0.2"; sha256="14i81cd9cyzhi3j2d9ygwlairkimhx8ffvva3pg3xwwvpywb6mla"; depends=[ggplot2 lda lme4 Matrix plotly Rcpp rstan scales shiny stm]; broken = true; };
-  tidySEM = derive2 { name="tidySEM"; version="0.2.0"; sha256="115nr2h3bz9pjxf5c1cw3b2v16nix5z41r49zjqzn8yrfjs59crw"; depends=[ggplot2 gtable igraph lavaan MplusAutomation OpenMx psych]; broken = true; };
+  thickmatch = derive2 { name="thickmatch"; version="0.3.1"; sha256="0q7wpilbk8jm3q7m5hb114jpbv4ri1745v9sbdf222l6ymds6pia"; depends=[DiPs MASS plyr rcbalance]; broken = true; };
+  tidyMicro = derive2 { name="tidyMicro"; version="1.47"; sha256="02pc6rh0l7xdrqhihi53zp17x0walc0mpm70spm7yrwzkbc486lv"; depends=[ade4 broom car cowplot dplyr Evomorph factoextra ggplot2 ggrepel gridExtra latex2exp lme4 lsr magrittr MASS Matrix plotly plyr png purrr rlang scales scatterplot3d shapes stringr ThreeWay tibble tidyr tidyverse vegan VGAM]; broken = true; };
+  tipom = derive2 { name="tipom"; version="1.0.2-1"; sha256="1gdfv0g5dw742j6ycmi0baqh6xcchp3yf2n1g8vn7jmqgz5mlhdr"; depends=[]; broken = true; };
   tlsh = derive2 { name="tlsh"; version="0.1.0"; sha256="0106y17cr3hq09ahy3rxhxqzgc0655w2jr0s3iyr8zvxsdv5ahb5"; depends=[bit64 blink igraph plyr]; broken = true; };
-  trajeR = derive2 { name="trajeR"; version="0.9.0.3"; sha256="08r7201ccqg1p7qpjxfc310814sjhqrj7gf07vzz0xkmyigbjzr9"; depends=[capushe MASS minpack_lm numDeriv Rcpp RcppArmadillo ucminf]; broken = true; };
+  translate = derive2 { name="translate"; version="0.1.2"; sha256="1w0xrg1xxwfdanlammmixf06hwq700ssbjlc3cfigl50p87dbc5x"; depends=[functional lisp RCurl RJSONIO]; broken = true; };
   turfR = derive2 { name="turfR"; version="0.8-7"; sha256="007jmkppfv1x4zzvvd65fhg5k15ybjhsya2zfjgwm77wm34y81ca"; depends=[dplyr]; broken = true; };
   uFTIR = derive2 { name="uFTIR"; version="0.1.4"; sha256="1blgwn6i0dadmr7vml6rbniv103mgr9hgx2dwgcxbagfyv00ah24"; depends=[raster Rcpp RcppArmadillo sp]; broken = true; };
   unfoldr = derive2 { name="unfoldr"; version="0.7.1"; sha256="1khas7d04g4y2kwldnsja5xk1n5mys2s66pln3l0gqlsbk67na12"; depends=[]; broken = true; };
+  uplift = derive2 { name="uplift"; version="0.3.5"; sha256="11xikfmg6dg8mhwqq6wq9j9aw4ljh84vywpm9v0fk8r5a1wyy2f6"; depends=[coin MASS penalized RItools tables]; broken = true; };
   uplifteval = derive2 { name="uplifteval"; version="0.1.0"; sha256="1gnn40c47rpx40j210bz6fb48d70p6spv3drr8hd5b3vzfz6686c"; depends=[dplyr ggplot2 gridExtra whisker]; broken = true; };
   usethis2 = derive2 { name="usethis2"; version="0.2.0"; sha256="0ljvfgwg73y71yvyz2pp4c1rzgiqk1x7kmgswxa1ay05zwdgyi0x"; depends=[microservices purrr usethis withr]; broken = true; };
   valuer = derive2 { name="valuer"; version="1.1.2"; sha256="0mbwzsvy34ppngyxdzpd9w1r4f00cik4maqab9kpiflrrv9xdp78"; depends=[ggplot2 orthopolynom R6 Rcpp RcppEigen timeDate yuima]; broken = true; };
   viewshed3d = derive2 { name="viewshed3d"; version="4.0.0"; sha256="039xx39w3k3hckf0qci7j1364s47vja5s18siqjh6c5yy1w8q737"; depends=[data_table hyper_fit lidR nabor pkgcond plotrix pracma raster rgl sp viridis]; broken = true; };
+  viopoints = derive2 { name="viopoints"; version="0.2-1"; sha256="0cpbkkzm1rxch8gnvlmmzy8g521f5ang3nhlcnin419gha0w6avf"; depends=[]; broken = true; };
   vmsbase = derive2 { name="vmsbase"; version="2.2.1"; sha256="1xxn0vm9r8kiix6whlc12r0wanf6acrl9a86h44nwm019xfmlfyp"; depends=[AMORE cairoDevice chron cluster DBI ecodist fields foreign ggmap ggplot2 gmt gsubfn gWidgets2 gWidgets2RGtk2 intervals mapdata maps maptools marmap outliers PBSmapping plotrix R6 RSQLite sp sqldf VennDiagram]; broken = true; };
+  vwr = derive2 { name="vwr"; version="0.3.0"; sha256="1h790vjcdfngs1siwldvqz8jrxpkajl3266lzadfnmchfan1x7xv"; depends=[lattice latticeExtra stringdist]; broken = true; };
+  wSVM = derive2 { name="wSVM"; version="0.1-7"; sha256="0c7rblzgagwfb8mmddkc0nd0f9rv6kapw8znpwapv3fv0j2qzq7h"; depends=[MASS quadprog]; broken = true; };
   water = derive2 { name="water"; version="0.8"; sha256="0qglf922dlgi41jzz3sivq7ckmzl8axqjfg4klcgnddycmm3ha5j"; depends=[raster rgdal sp]; broken = true; };
+  wdnr_gis = derive2 { name="wdnr.gis"; version="0.1.2"; sha256="03z9qayrv34lgajvwg77b0h7z65r04wzlkaazpdfxq9wk027g3a9"; depends=[arcpullr dplyr ggplot2 httr jsonlite rlang sf]; broken = true; };
   weathercan = derive2 { name="weathercan"; version="0.6.2"; sha256="1mr926rymacx1f8k79pwhcyl5xcymq77l4dxaa2ddlrx5cmyh5cv"; depends=[dplyr httr lubridate memoise purrr rappdirs readr rlang rvest stringi stringr tidyr tidyselect xml2]; broken = true; };
   wflo = derive2 { name="wflo"; version="1.6"; sha256="04qxm1vvmgxbpj1wwj7n48klhsprkj774jnj4qfhqza33mhymydb"; depends=[emstreeR plotrix progress raster rgdal sp]; broken = true; };
+  windAC = derive2 { name="windAC"; version="1.2.6"; sha256="0yx0jiz3c4slv366sic01k8l460idh4n6a797biy7wyrp6jj241x"; depends=[mvtnorm sf]; broken = true; };
   x12GUI = derive2 { name="x12GUI"; version="0.13.0"; sha256="1mga7g9gwb3nv2qs27lz4n9rp6j3svads28hql88sxaif6is3nk1"; depends=[cairoDevice Hmisc lattice RGtk2 stringr x12]; broken = true; };
+  xgobi = derive2 { name="xgobi"; version="1.2-15"; sha256="03ym5mm16rb1bdwrymr393r3xgprp0ign45ryym3g0x2zi8dy557"; depends=[]; broken = true; };
   xlsimple = derive2 { name="xlsimple"; version="1.0.5"; sha256="1snamzq6yljiqakqd6492ylznr9kfl8w0lnaayfn14fk3w03skck"; depends=[XLConnect]; broken = true; };
+  zGPS_AO = derive2 { name="zGPS.AO"; version="0.1.0"; sha256="18dqssnj4gch1yg0qvrj4j2ry95sy6a9z8yz2zi8nzhhsj8dz1qq"; depends=[doParallel doRNG dplyr foreach ggplot2 hrbrthemes MASS plotly pscl questionr viridis]; broken = true; };
 }
diff --git a/nixpkgs/pkgs/development/r-modules/default.nix b/nixpkgs/pkgs/development/r-modules/default.nix
index e2f0c53f110d..ffe277582392 100644
--- a/nixpkgs/pkgs/development/r-modules/default.nix
+++ b/nixpkgs/pkgs/development/r-modules/default.nix
@@ -323,7 +323,7 @@ let
     cairoDevice = [ pkgs.gtk2.dev ];
     Cairo = with pkgs; [ libtiff libjpeg cairo.dev xlibsWrapper fontconfig.lib ];
     Cardinal = [ pkgs.which ];
-    chebpol = [ pkgs.fftw ];
+    chebpol = [ pkgs.fftw.dev ];
     ChemmineOB = with pkgs; [ openbabel pkg-config ];
     curl = [ pkgs.curl.dev ];
     data_table = [ pkgs.zlib.dev ] ++ lib.optional stdenv.isDarwin pkgs.llvmPackages.openmp;
@@ -493,6 +493,7 @@ let
     HilbertVisGUI = with pkgs; [ pkg-config which ];
     textshaping = [ pkgs.pkg-config ];
     ragg = [ pkgs.pkg-config ];
+    qqconf = [ pkgs.pkg-config ];
   };
 
   packagesWithBuildInputs = {
@@ -649,6 +650,7 @@ let
     DropletUtils = [ pkgs.zlib.dev ];
     RMariaDB = [ pkgs.libmysqlclient.dev ];
     ragg = with pkgs; [ freetype.dev libpng.dev libtiff.dev zlib.dev libjpeg.dev bzip2.dev ];
+    qqconf = [ pkgs.fftw.dev ];
   };
 
   packagesRequiringX = [
@@ -1297,6 +1299,10 @@ let
     geomorph = old.geomorph.overrideDerivation (attrs: {
       RGL_USE_NULL = "true";
     });
+
+    RNifti = old.RNifti.overrideDerivation (attrs: {
+      patches = [ ./patches/RNifti.patch ];
+    });
   };
 in
   self
diff --git a/nixpkgs/pkgs/development/r-modules/patches/RNifti.patch b/nixpkgs/pkgs/development/r-modules/patches/RNifti.patch
new file mode 100644
index 000000000000..e8f3561e7508
--- /dev/null
+++ b/nixpkgs/pkgs/development/r-modules/patches/RNifti.patch
@@ -0,0 +1,33 @@
+diff --git a/configure.ac b/configure.ac
+index 05e8a1e..2dcde81 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -17,16 +17,5 @@ CXXFLAGS=`"${R_HOME}/bin/R" CMD config CXXFLAGS`
+ CPPFLAGS=`"${R_HOME}/bin/R" CMD config CPPFLAGS`
+ LDFLAGS=`"${R_HOME}/bin/R" CMD config LDFLAGS`
+ 
+-# Checks for libraries.
+-ZLIB_FLAGS="-Izlib"
+-ZLIB_OBJECTS=`ls -1 src/zlib/*.c | sed 's/^src\///' | sed 's/\\.c$/\\.o/'`
+-AC_SEARCH_LIBS([inflate], [z], [
+-    ZLIB_FLAGS=""
+-    ZLIB_OBJECTS=""
+-])
+-
+-AC_SUBST(ZLIB_FLAGS)
+-AC_SUBST(ZLIB_OBJECTS)
+-
+ AC_CONFIG_FILES([src/Makevars])
+ AC_OUTPUT
+diff --git a/src/Makevars.in b/src/Makevars.in
+index 77da572..358cc1d 100644
+--- a/src/Makevars.in
++++ b/src/Makevars.in
+@@ -1,5 +1,5 @@
+-PKG_CPPFLAGS = -DNDEBUG -DHAVE_ZLIB -DUSING_R -DRNIFTI_NIFTILIB_DEDUPLICATE -I../inst/include @ZLIB_FLAGS@
++PKG_CPPFLAGS = -DNDEBUG -DHAVE_ZLIB -DUSING_R -DRNIFTI_NIFTILIB_DEDUPLICATE -I../inst/include
+ PKG_LIBS = @LIBS@
+ 
+ NIFTI_OBJECTS = znzlib/znzlib.o niftilib/nifti1_io.o niftilib/nifti2_io.o
+-OBJECTS = main.o zzz.o @ZLIB_OBJECTS@ $(NIFTI_OBJECTS)
++OBJECTS = main.o zzz.o $(NIFTI_OBJECTS)
diff --git a/nixpkgs/pkgs/development/ruby-modules/bundler/default.nix b/nixpkgs/pkgs/development/ruby-modules/bundler/default.nix
index ecf98d75ce7d..584a13623ba3 100644
--- a/nixpkgs/pkgs/development/ruby-modules/bundler/default.nix
+++ b/nixpkgs/pkgs/development/ruby-modules/bundler/default.nix
@@ -4,8 +4,8 @@ buildRubyGem rec {
   inherit ruby;
   name = "${gemName}-${version}";
   gemName = "bundler";
-  version = "2.3.6";
-  source.sha256 = "1531z805j3gls2x0pqp2bp1vv1rf5k7ynjl4qk72h8lpm1skqk9r";
+  version = "2.3.9";
+  source.sha256 = "sha256-VZiKuSDP3sSoBXUPcPmwHR/GbZs47NIF+ZlXtHSZWzg=";
   dontPatchShebangs = true;
 
   postFixup = ''
diff --git a/nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix b/nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix
index a3d787ad8e9f..485def66de3c 100644
--- a/nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix
+++ b/nixpkgs/pkgs/development/ruby-modules/gem-config/default.nix
@@ -550,14 +550,6 @@ in
       "--with-libvirt-include=${libvirt}/include"
       "--with-libvirt-lib=${libvirt}/lib"
     ];
-    dontBuild = false;
-    postPatch = ''
-      # https://gitlab.com/libvirt/libvirt-ruby/-/commit/43543991832c9623c00395092bcfb9e178243ba4
-      substituteInPlace ext/libvirt/common.c \
-        --replace 'st.h' 'ruby/st.h'
-      substituteInPlace ext/libvirt/domain.c \
-        --replace 'st.h' 'ruby/st.h'
-    '';
   };
 
   ruby-lxc = attrs: {
diff --git a/nixpkgs/pkgs/development/tools/abuild/default.nix b/nixpkgs/pkgs/development/tools/abuild/default.nix
index 144ec8be9d4e..a597213b866c 100644
--- a/nixpkgs/pkgs/development/tools/abuild/default.nix
+++ b/nixpkgs/pkgs/development/tools/abuild/default.nix
@@ -1,32 +1,48 @@
 { lib
 , stdenv
 , fetchFromGitLab
+, makeWrapper
 , pkg-config
+, file
+, scdoc
 , openssl
 , zlib
 , busybox
+, apk-tools
+, perl
 }:
 
 stdenv.mkDerivation rec {
   pname = "abuild";
-  version = "3.7.0";
+  version = "3.9.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.alpinelinux.org";
     owner = "alpine";
     repo = pname;
-    rev = "v${version}";
-    sha256 = "1xsik9hyzzq861bi922sb5r8c6r4wpnpxz5kd30i9f20vvfpp5jx";
+    rev = version;
+    sha256 = "1zs8slaqiv8q8bim8mwfy08ymar78rqpkgqksw8y1lsjrj49fqy4";
   };
 
   buildInputs = [
     openssl
     zlib
     busybox
+    # for $out/bin/apkbuild-cpan and $out/bin/apkbuild-pypi
+    (perl.withPackages (ps: with ps; [
+      LWP
+      JSON
+      ModuleBuildTiny
+      LWPProtocolHttps
+      IPCSystemSimple
+    ]))
   ];
 
   nativeBuildInputs = [
     pkg-config
+    scdoc
+    makeWrapper
+    file
   ];
 
   patchPhase = ''
@@ -43,6 +59,24 @@ stdenv.mkDerivation rec {
     "sysconfdir=${placeholder "out"}/etc"
   ];
 
+  postInstall = ''
+    # this script requires unpackaged 'augeas' rubygem, no reason
+    # to ship it if we can't provide the dependencies for it
+    rm -f ${placeholder "out"}/bin/apkbuild-gem-resolver
+
+    # Find all executables that are not compiled binaries and wrap
+    # them, make `apk-tools` available in their PATH and also the
+    # $out directory since many of the binaries provided call into
+    # other binaries
+    for prog in \
+      $(find ${placeholder "out"}/bin -type f -exec ${file}/bin/file -i '{}' + \
+      | grep -v x-executable | cut -d : -f1); do
+      wrapProgram $prog \
+        --prefix PATH : "${lib.makeBinPath [ apk-tools ]}" \
+        --prefix PATH : "${placeholder "out"}/bin"
+    done
+  '';
+
   meta = with lib; {
     description = "Alpine Linux build tools";
     homepage = "https://gitlab.alpinelinux.org/alpine/abuild";
diff --git a/nixpkgs/pkgs/development/tools/air/default.nix b/nixpkgs/pkgs/development/tools/air/default.nix
index fcc3671ded5c..c57307391bd5 100644
--- a/nixpkgs/pkgs/development/tools/air/default.nix
+++ b/nixpkgs/pkgs/development/tools/air/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "air";
-  version = "1.27.10";
+  version = "1.28.0";
 
   src = fetchFromGitHub {
     owner = "cosmtrek";
     repo = "air";
     rev = "v${version}";
-    sha256 = "sha256-mgFLelf0TPjJK/keQz+s52fKlruSn6+KTPj+waJuQdU=";
+    sha256 = "sha256-JbFSEfm8SVyJBgZju3kfIv5WK/kFYTqkU0EH5HXl9cc=";
   };
 
   vendorSha256 = "sha256-MEIPkron42OJioV7PPhnLWVevjKDs5Bw3jDmvZbac9s=";
diff --git a/nixpkgs/pkgs/development/tools/allure/default.nix b/nixpkgs/pkgs/development/tools/allure/default.nix
new file mode 100644
index 000000000000..2988a559aa72
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/allure/default.nix
@@ -0,0 +1,39 @@
+{ lib, stdenv, makeWrapper, fetchurl, jre }:
+
+let
+  pname = "allure";
+  version = "2.17.3";
+in
+stdenv.mkDerivation rec {
+  inherit pname version;
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs = [ jre ];
+
+  src = fetchurl {
+    url = "https://github.com/allure-framework/allure2/releases/download/${version}/allure-${version}.tgz";
+    sha256 = "sha256-WGeCzWwyLEb4WmlA6Vs8L2TL3NTL6sky5TLeiwV8iJY=";
+  };
+  dontConfigure = true;
+  dontBuild = true;
+
+  installPhase = ''
+    mkdir -p "$out/share"
+    cd "$out/share"
+    tar xvzf $src
+    mkdir -p "$out/bin"
+    makeWrapper $out/share/${pname}-${version}/bin/allure $out/bin/${pname} \
+      --prefix PATH : "${jre}/bin"
+  '';
+
+  dontCheck = true;
+
+  meta = with lib; {
+    homepage = "https://docs.qameta.io/allure/";
+    description = "Allure Report is a flexible, lightweight multi-language test reporting tool.";
+    longDescription = "Allure Report is a flexible, lightweight multi-language test reporting tool. It provides clear graphical reports and allows everyone involved in the development process to extract the maximum of information from the everyday testing process";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ happysalada ];
+  };
+}
+
diff --git a/nixpkgs/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix b/nixpkgs/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
index 101a4f948fce..c0609118fc85 100644
--- a/nixpkgs/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-tarpaulin";
-  version = "0.19.1";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     owner = "xd009642";
     repo = "tarpaulin";
     rev = version;
-    sha256 = "sha256-H/EQTS+d317icCZdOWTvykzIFQC7ia7/jYFkImgogps=";
+    sha256 = "sha256-LMHaRGZZqFUCbrChzlLA/gUArlGC5DUI2fc1bkLU2CA=";
   };
 
   nativeBuildInputs = [
@@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ]
     ++ lib.optionals stdenv.isDarwin [ curl Security ];
 
-  cargoSha256 = "sha256-A3J5od6yT7eVU66WfvG/umne0RDBZCf8IvQpW6OTZSE=";
+  cargoSha256 = "sha256-ei+ilmrlJYmt08A+aV2Rc5pn5dkuEBgfm9kyLkfFe9A=";
   #checkFlags = [ "--test-threads" "1" ];
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/analysis/checkov/default.nix b/nixpkgs/pkgs/development/tools/analysis/checkov/default.nix
index 58fed0070d08..8cda4a0b2128 100644
--- a/nixpkgs/pkgs/development/tools/analysis/checkov/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/checkov/default.nix
@@ -32,13 +32,13 @@ with py.pkgs;
 
 buildPythonApplication rec {
   pname = "checkov";
-  version = "2.0.954";
+  version = "2.0.988";
 
   src = fetchFromGitHub {
     owner = "bridgecrewio";
     repo = pname;
     rev = version;
-    hash = "sha256-gCUciYTEL+4Pt9vAGbun0WFQWneOhDDXh7Dn9+sZbWw=";
+    hash = "sha256-0/SL20N5d/oqWdyvVMZ+pzpPbehrYepaPi8P8SS8DSA=";
   };
 
   nativeBuildInputs = with py.pkgs; [
@@ -53,6 +53,7 @@ buildPythonApplication rec {
     bc-python-hcl2
     boto3
     cachetools
+    charset-normalizer
     cloudsplaining
     colorama
     configargparse
diff --git a/nixpkgs/pkgs/development/tools/analysis/cppcheck/default.nix b/nixpkgs/pkgs/development/tools/analysis/cppcheck/default.nix
index 7f9e82162ea4..372e6dee806d 100644
--- a/nixpkgs/pkgs/development/tools/analysis/cppcheck/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/cppcheck/default.nix
@@ -1,15 +1,19 @@
-{ lib, stdenv, fetchurl, libxslt, docbook_xsl, docbook_xml_dtd_45, pcre, withZ3 ? true, z3 }:
+{ lib, stdenv, fetchFromGitHub, libxslt, docbook_xsl, docbook_xml_dtd_45, pcre, withZ3 ? true, z3, python3 }:
 
 stdenv.mkDerivation rec {
   pname = "cppcheck";
-  version = "2.7";
+  version = "2.7.3";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-rHTAlzxGoFJ2D0/3ymqEYWyleVUQVC0ZWm8SLFMHkpE=";
+  src = fetchFromGitHub {
+    owner = "danmar";
+    repo = "cppcheck";
+    rev = version;
+    sha256 = "0bwk89nkq67nphplb24daxvg75pv9bgh0kcqr2samhpzmjpvzxm5";
   };
 
-  buildInputs = [ pcre ] ++ lib.optionals withZ3 [ z3 ];
+  buildInputs = [ pcre
+    (python3.withPackages (ps: [ps.pygments]))
+  ] ++ lib.optionals withZ3 [ z3 ];
   nativeBuildInputs = [ libxslt docbook_xsl docbook_xml_dtd_45 ];
 
   makeFlags = [ "PREFIX=$(out)" "FILESDIR=$(out)/cfg" "HAVE_RULES=yes" ]
@@ -19,6 +23,8 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  doCheck = true;
+
   postInstall = ''
     make DB2MAN=${docbook_xsl}/xml/xsl/docbook/manpages/docbook.xsl man
     mkdir -p $man/share/man/man1
diff --git a/nixpkgs/pkgs/development/tools/analysis/flow/default.nix b/nixpkgs/pkgs/development/tools/analysis/flow/default.nix
index 6ef9806bf371..2d97b64b11e8 100644
--- a/nixpkgs/pkgs/development/tools/analysis/flow/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/flow/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flow";
-  version = "0.173.0";
+  version = "0.174.1";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = "flow";
     rev = "v${version}";
-    sha256 = "sha256-F0t85/sq9p+eNEf2XAGxw+ZWeRgUbkhrKFdGASijuAs=";
+    sha256 = "sha256-lfj6KyB9QYvUy4Ybo8f30omAg4K/jT5MEERJPm0aJ7U=";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/development/tools/analysis/rizin/default.nix b/nixpkgs/pkgs/development/tools/analysis/rizin/default.nix
index c4cdf85a7d8a..9b15cdd148d8 100644
--- a/nixpkgs/pkgs/development/tools/analysis/rizin/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/rizin/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config meson ninja cmake (python3.withPackages (ps: [ ps.setuptools ])) ];
 
-  # meson's find_library seems to not use our compiler wrapper if static paraemter
+  # meson's find_library seems to not use our compiler wrapper if static parameter
   # is either true/false... We work around by also providing LIBRARY_PATH
   preConfigure = ''
     LIBRARY_PATH=""
diff --git a/nixpkgs/pkgs/development/tools/analysis/tfsec/default.nix b/nixpkgs/pkgs/development/tools/analysis/tfsec/default.nix
index 87e7676da899..82e0e1515921 100644
--- a/nixpkgs/pkgs/development/tools/analysis/tfsec/default.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/tfsec/default.nix
@@ -1,31 +1,38 @@
 { lib
-, buildGoPackage
+, buildGoModule
 , fetchFromGitHub
 }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "tfsec";
-  version = "1.2.1";
+  version = "1.15.0";
 
   src = fetchFromGitHub {
     owner = "aquasecurity";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-KIS2o2pLus5aohRYsabWRxZs4KfYM6PXSNp0JZhhlZk=";
+    sha256 = "sha256-4YojzVwvPc+9Mn+xyRMxGEKv68eekXpH0RzSsrd8voY=";
   };
 
-  goPackagePath = "github.com/aquasecurity/tfsec";
-
   ldflags = [
-    "-w"
-    "-s"
-    "-X ${goPackagePath}/version.Version=${version}"
+    "-s" "-w"
+    "-X github.com/aquasecurity/tfsec/version.Version=${version}"
+    ## not sure if this is needed (https://github.com/aquasecurity/tfsec/blob/master/.goreleaser.yml#L6)
+    # "-extldflags '-fno-PIC -static'"
+  ];
+
+  vendorSha256 = "sha256-/r1KMX5YqJ3bVXNYJWv10cHkBQMuS90KMGXWUB6Idw8=";
+
+  subPackages = [
+    "cmd/tfsec"
+    "cmd/tfsec-docs"
+    "cmd/tfsec-checkgen"
   ];
 
   meta = with lib; {
     description = "Static analysis powered security scanner for terraform code";
     homepage = "https://github.com/aquasecurity/tfsec";
     license = licenses.mit;
-    maintainers = with maintainers; [ fab marsam ];
+    maintainers = with maintainers; [ fab marsam peterromfeldhk ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/bazel-gazelle/default.nix b/nixpkgs/pkgs/development/tools/bazel-gazelle/default.nix
index f78125ae990b..3d46a77108c7 100644
--- a/nixpkgs/pkgs/development/tools/bazel-gazelle/default.nix
+++ b/nixpkgs/pkgs/development/tools/bazel-gazelle/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "bazel-gazelle";
-  version = "0.24.0";
+  version = "0.25.0";
 
   src = fetchFromGitHub {
     owner = "bazelbuild";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-WWAOhV1H/OnARjhoWQYNmd9/y8pD3bRkhncmzt/36mA=";
+    sha256 = "sha256-wMhFhJruXHuAq81A4efxvR9eJ5YTp7QTnr1gj8RrIX8=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/development/tools/buf/default.nix b/nixpkgs/pkgs/development/tools/buf/default.nix
index 1b0ccab29644..0f7904fe9bbb 100644
--- a/nixpkgs/pkgs/development/tools/buf/default.nix
+++ b/nixpkgs/pkgs/development/tools/buf/default.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "buf";
-  version = "1.1.0";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "bufbuild";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-8GwZsFvxaTtG/q7DaWvZcGdbyJ4Cm41BqSvwq3SqoEg=";
+    sha256 = "sha256-rOT7HuvbJFRyBOmCNmx5Vic4zckYgS+1BB0PcpwD9OQ=";
   };
 
-  vendorSha256 = "sha256-g3bvfNF0XkC12/tRZsO+o2z20w+riWiHOer8Pzp1QF0=";
+  vendorSha256 = "sha256-qIWZYsl1hFV4Ts27WSyjQAQ+jWjtLLG+A+yS0Ms7hfI=";
 
   patches = [
     # Skip a test that requires networking to be available to work.
diff --git a/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix b/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix
index 44e8b9e44147..a133526514f7 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "bazel-remote";
-  version = "2.3.4";
+  version = "2.3.6";
 
   src = fetchFromGitHub {
     owner = "buchgr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ijR3RjGzm0HtVp5lSKGJemCGkRzhgQqaDOgg+MjDB1c=";
+    sha256 = "sha256-geb7uHCBvhmqyaDr8wK9sQUcHT3xVgSclovFDpHhIiw=";
   };
 
-  vendorSha256 = "sha256-NmTdS5xgv0o7AT4lBJk472Lq1e73EcrcfnI8RIxKEoc=";
+  vendorSha256 = "sha256-wXgW7HigMIeUZAcZpm5TH9thfCHmpz+M42toWHgwIYo=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/build-managers/fac/default.nix b/nixpkgs/pkgs/development/tools/build-managers/fac/default.nix
index b6481c621e98..ae5a5b30146d 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/fac/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/fac/default.nix
@@ -1,4 +1,4 @@
-{ lib, rustPlatform, fetchCrate, git }:
+{ lib, stdenv, rustPlatform, fetchCrate, git, CoreServices }:
 
 rustPlatform.buildRustPackage rec {
   pname = "fac-build";
@@ -10,6 +10,8 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-+JJVuKUdnjJoQJ4a2EE0O6jZdVoFxPwbPgfD2LfiDPI=";
   };
 
+
+  buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
   cargoSha256 = "sha256-XT4FQVE+buORuZAFZK5Qnf/Fl3QSvw4SHUuCzWhxUdk=";
 
   # fac includes a unit test called ls_files_works which assumes it's
@@ -40,7 +42,7 @@ rustPlatform.buildRustPackage rec {
     '';
     homepage = "https://physics.oregonstate.edu/~roundyd/fac";
     license = licenses.gpl2Plus;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = with maintainers; [ dpercy ];
     mainProgram = "fac";
   };
diff --git a/nixpkgs/pkgs/development/tools/build-managers/meson/default.nix b/nixpkgs/pkgs/development/tools/build-managers/meson/default.nix
index aeddf457f48d..8744407fb96d 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/meson/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/meson/default.nix
@@ -5,6 +5,7 @@
 , pkg-config
 , python3
 , substituteAll
+, withDarwinFrameworksGtkDocPatch ? false
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -61,6 +62,10 @@ python3.pkgs.buildPythonApplication rec {
     # Meson tries to update ld.so.cache which breaks when the target architecture
     # differs from the build host's.
     ./do-not-update-ldconfig-cache.patch
+  ] ++ lib.optionals withDarwinFrameworksGtkDocPatch [
+    # Fix building gtkdoc for GLib
+    # https://github.com/mesonbuild/meson/pull/10186
+    ./fix-gtkdoc-when-using-multiple-apple-frameworks.patch
   ];
 
   setupHook = ./setup-hook.sh;
diff --git a/nixpkgs/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch b/nixpkgs/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch
new file mode 100644
index 000000000000..eb6d9718bcb2
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch
@@ -0,0 +1,176 @@
+From 0a008a6c7ecee19f35c8b7ab17b1470d0d1a8a15 Mon Sep 17 00:00:00 2001
+From: Jan Tojnar <jtojnar@gmail.com>
+Date: Sat, 26 Mar 2022 02:26:27 +0100
+Subject: [PATCH] gnome: Fix gtkdoc when using multiple Apple frameworks
+
+The `-framework Foundation -framework CoreFoundation` ended up
+de-duplicated by OrderedSet into `-framework Foundation CoreFoundation`.
+
+Picked from https://github.com/mesonbuild/meson/pull/10186
+
+Also pick https://github.com/mesonbuild/meson/commit/68e684d51f1e469e0d9f4b499ffda15146cad98a when resolving conflict.
+
+diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
+index 7113f28d2..d3269b53f 100644
+--- a/mesonbuild/modules/gnome.py
++++ b/mesonbuild/modules/gnome.py
+@@ -384,13 +384,14 @@ class GnomeModule(ExtensionModule):
+     def _get_link_args(self, state, lib, depends, include_rpath=False,
+                        use_gir_args=False):
+         link_command = []
++        new_depends = list(depends)
+         # Construct link args
+         if isinstance(lib, build.SharedLibrary):
+             libdir = os.path.join(state.environment.get_build_dir(), state.backend.get_target_dir(lib))
+             link_command.append('-L' + libdir)
+             if include_rpath:
+                 link_command.append('-Wl,-rpath,' + libdir)
+-            depends.append(lib)
++            new_depends.append(lib)
+             # Needed for the following binutils bug:
+             # https://github.com/mesonbuild/meson/issues/1911
+             # However, g-ir-scanner does not understand -Wl,-rpath
+@@ -404,18 +405,24 @@ class GnomeModule(ExtensionModule):
+             link_command.append('--extra-library=' + lib.name)
+         else:
+             link_command.append('-l' + lib.name)
+-        return link_command
+-
+-    def _get_dependencies_flags(self, deps, state, depends, include_rpath=False,
+-                                use_gir_args=False, separate_nodedup=False):
+-        cflags = OrderedSet()
+-        internal_ldflags = OrderedSet()
+-        external_ldflags = OrderedSet()
++        return link_command, new_depends
++
++    def _get_dependencies_flags_raw(
++            self, deps,
++            state,
++            depends,
++            include_rpath: bool = False,
++            use_gir_args: bool = False,
++            ) -> T.Tuple[OrderedSet[str], OrderedSet[T.Union[str, T.Tuple[str, str]]], OrderedSet[T.Union[str, T.Tuple[str, str]]], OrderedSet[str],
++                         T.List]:
++        cflags: OrderedSet[str] = OrderedSet()
+         # External linker flags that can't be de-duped reliably because they
+-        # require two args in order, such as -framework AVFoundation
+-        external_ldflags_nodedup = []
+-        gi_includes = OrderedSet()
++        # require two args in order, such as -framework AVFoundation will be stored as a tuple.
++        internal_ldflags: OrderedSet[T.Union[str, T.Tuple[str, str]]] = OrderedSet()
++        external_ldflags: OrderedSet[T.Union[str, T.Tuple[str, str]]] = OrderedSet()
++        gi_includes: OrderedSet[str] = OrderedSet()
+         deps = mesonlib.listify(deps)
++        depends = list(depends)
+ 
+         for dep in deps:
+             if isinstance(dep, Dependency):
+@@ -427,21 +434,20 @@ class GnomeModule(ExtensionModule):
+                 cflags.update(state.get_include_args(dep.include_directories))
+                 for lib in dep.libraries:
+                     if isinstance(lib, build.SharedLibrary):
+-                        internal_ldflags.update(self._get_link_args(state, lib, depends, include_rpath))
+-                        libdepflags = self._get_dependencies_flags(lib.get_external_deps(), state, depends, include_rpath,
+-                                                                   use_gir_args, True)
++                        _ld, depends = self._get_link_args(state, lib, depends, include_rpath)
++                        internal_ldflags.update(_ld)
++                        libdepflags = self._get_dependencies_flags_raw(lib.get_external_deps(), state, depends, include_rpath,
++                                                                   use_gir_args)
+                         cflags.update(libdepflags[0])
+                         internal_ldflags.update(libdepflags[1])
+                         external_ldflags.update(libdepflags[2])
+-                        external_ldflags_nodedup += libdepflags[3]
+-                        gi_includes.update(libdepflags[4])
+-                extdepflags = self._get_dependencies_flags(dep.ext_deps, state, depends, include_rpath,
+-                                                           use_gir_args, True)
++                        gi_includes.update(libdepflags[3])
++                extdepflags = self._get_dependencies_flags_raw(dep.ext_deps, state, depends, include_rpath,
++                                                           use_gir_args)
+                 cflags.update(extdepflags[0])
+                 internal_ldflags.update(extdepflags[1])
+                 external_ldflags.update(extdepflags[2])
+-                external_ldflags_nodedup += extdepflags[3]
+-                gi_includes.update(extdepflags[4])
++                gi_includes.update(extdepflags[3])
+                 for source in dep.sources:
+                     if isinstance(source, GirTarget):
+                         gi_includes.update([os.path.join(state.environment.get_build_dir(),
+@@ -469,7 +475,7 @@ class GnomeModule(ExtensionModule):
+                     # If it's a framework arg, slurp the framework name too
+                     # to preserve the order of arguments
+                     if lib == '-framework':
+-                        external_ldflags_nodedup += [lib, next(ldflags)]
++                        external_ldflags.update([(lib, next(ldflags))])
+                     else:
+                         external_ldflags.update([lib])
+             elif isinstance(dep, (build.StaticLibrary, build.SharedLibrary)):
+@@ -480,21 +486,43 @@ class GnomeModule(ExtensionModule):
+                 continue
+ 
+         if use_gir_args and self._gir_has_option('--extra-library'):
+-            def fix_ldflags(ldflags):
+-                fixed_ldflags = OrderedSet()
++            def fix_ldflags(ldflags: T.Iterable[T.Union[str, T.Tuple[str, str]]]) -> OrderedSet[T.Union[str, T.Tuple[str, str]]]:
++                fixed_ldflags: OrderedSet[T.Union[str, T.Tuple[str, str]]] = OrderedSet()
+                 for ldflag in ldflags:
+-                    if ldflag.startswith("-l"):
++                    if isinstance(ldflag, str) and ldflag.startswith("-l"):
+                         ldflag = ldflag.replace('-l', '--extra-library=', 1)
+                     fixed_ldflags.add(ldflag)
+                 return fixed_ldflags
+             internal_ldflags = fix_ldflags(internal_ldflags)
+             external_ldflags = fix_ldflags(external_ldflags)
+-        if not separate_nodedup:
+-            external_ldflags.update(external_ldflags_nodedup)
+-            return cflags, internal_ldflags, external_ldflags, gi_includes
+-        else:
+-            return cflags, internal_ldflags, external_ldflags, external_ldflags_nodedup, gi_includes
++        return cflags, internal_ldflags, external_ldflags, gi_includes, depends
++
++    def _get_dependencies_flags(
++            self, deps,
++            state,
++            depends,
++            include_rpath: bool = False,
++            use_gir_args: bool = False,
++            ) -> T.Tuple[OrderedSet[str], T.List[str], T.List[str], OrderedSet[str],
++                         T.List]:
++
++        cflags, internal_ldflags_raw, external_ldflags_raw, gi_includes, depends = self._get_dependencies_flags_raw(deps, state, depends, include_rpath, use_gir_args)
++        internal_ldflags: T.List[str] = []
++        external_ldflags: T.List[str] = []
++
++        # Extract non-deduplicable argument groups out of the tuples.
++        for ldflag in internal_ldflags_raw:
++            if isinstance(ldflag, str):
++                internal_ldflags.append(ldflag)
++            else:
++                internal_ldflags.extend(ldflag)
++        for ldflag in external_ldflags_raw:
++            if isinstance(ldflag, str):
++                external_ldflags.append(ldflag)
++            else:
++                external_ldflags.extend(ldflag)
+ 
++        return cflags, internal_ldflags, external_ldflags, gi_includes, depends
+     def _unwrap_gir_target(self, girtarget, state):
+         if not isinstance(girtarget, (build.Executable, build.SharedLibrary,
+                                       build.StaticLibrary)):
+@@ -875,7 +903,7 @@ class GnomeModule(ExtensionModule):
+         # ldflags will be misinterpreted by gir scanner (showing
+         # spurious dependencies) but building GStreamer fails if they
+         # are not used here.
+-        dep_cflags, dep_internal_ldflags, dep_external_ldflags, gi_includes = \
++        dep_cflags, dep_internal_ldflags, dep_external_ldflags, gi_includes, depends = \
+             self._get_dependencies_flags(deps, state, depends, use_gir_args=True)
+         scan_cflags = []
+         scan_cflags += list(self._get_scanner_cflags(cflags))
+@@ -1170,7 +1198,7 @@ class GnomeModule(ExtensionModule):
+         deps = extract_as_list(kwargs, 'dependencies')
+         cflags = []
+         cflags.extend(mesonlib.stringlistify(kwargs.pop('c_args', [])))
+-        deps_cflags, internal_ldflags, external_ldflags, gi_includes = \
++        deps_cflags, internal_ldflags, external_ldflags, gi_includes, depends = \
+             self._get_dependencies_flags(deps, state, depends, include_rpath=True)
+         inc_dirs = mesonlib.extract_as_list(kwargs, 'include_directories')
+         for incd in inc_dirs:
diff --git a/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix b/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix
index 6e79bee6a242..21209638c85c 100644
--- a/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix
+++ b/nixpkgs/pkgs/development/tools/build-managers/mill/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mill";
-  version = "0.10.1";
+  version = "0.10.2";
 
   src = fetchurl {
     url = "https://github.com/com-lihaoyi/mill/releases/download/${version}/${version}-assembly";
-    hash = "sha256:hYQOmnJjsOIIri5H0/B5LhixwfiLxxpVoN4ON1NUkWg=";
+    hash = "sha256-lx5saJdGsMS7DLaUngoauzFS1UG4QYvrELEvTjIa1oQ=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/tools/cambalache/default.nix b/nixpkgs/pkgs/development/tools/cambalache/default.nix
new file mode 100644
index 000000000000..5845ed033c3e
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/cambalache/default.nix
@@ -0,0 +1,96 @@
+{ stdenv
+, lib
+, fetchFromGitLab
+, python3
+, meson
+, ninja
+, pkg-config
+, gobject-introspection
+, desktop-file-utils
+, shared-mime-info
+, wrapGAppsHook
+, glib
+, gtk3
+, gtk4
+, webkitgtk
+, nix-update-script
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "cambalache";
+  version = "0.8.2";
+
+  format = "other";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "jpu";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-1+IoBoaNHwvN8W+KRyV5cTFkFG+pTHJBehQ2VosCEfs=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    gobject-introspection # for setup hook
+    desktop-file-utils # for update-desktop-database
+    shared-mime-info # for update-mime-database
+    wrapGAppsHook
+  ];
+
+  pythonPath = with python3.pkgs; [
+    pygobject3
+    lxml
+  ];
+
+  buildInputs = [
+    glib
+    gtk3
+    gtk4
+    webkitgtk
+  ];
+
+  # Not compatible with gobject-introspection setup hooks.
+  # https://github.com/NixOS/nixpkgs/issues/56943
+  strictDeps = false;
+
+  # Prevent double wrapping.
+  dontWrapGApps = true;
+
+  postPatch = ''
+    patchShebangs postinstall.py
+  '';
+
+  preFixup = ''
+    # Let python wrapper use GNOME flags.
+    makeWrapperArgs+=(
+      # For broadway daemons
+      --prefix PATH : "${lib.makeBinPath [ gtk3 gtk4 ]}"
+      "''${gappsWrapperArgs[@]}"
+    )
+  '';
+
+  postFixup = ''
+    # Wrap a helper script in an unusual location.
+    wrapPythonProgramsIn "$out/${python3.sitePackages}/cambalache/priv/merengue" "$out $pythonPath"
+  '';
+
+  passthru = {
+    updateScript = nix-update-script {
+      attrPath = pname;
+    };
+  };
+
+  meta = with lib; {
+    homepage = "https://gitlab.gnome.org/jpu/cambalache";
+    description = "RAD tool for GTK 4 and 3 with data model first philosophy";
+    maintainers = teams.gnome.members;
+    license = with licenses; [
+      lgpl21Only # Cambalache
+      gpl2Only # tools
+    ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/cask/default.nix b/nixpkgs/pkgs/development/tools/cask/default.nix
index f9e7d215f320..2eadc6b877f7 100644
--- a/nixpkgs/pkgs/development/tools/cask/default.nix
+++ b/nixpkgs/pkgs/development/tools/cask/default.nix
@@ -20,20 +20,22 @@ stdenv.mkDerivation rec {
 
   buildPhase = ''
     runHook preBuild
+
     emacs --batch -L . -f batch-byte-compile cask.el cask-cli.el
+
     runHook postBuild
   '';
 
   installPhase = ''
     runHook preInstall
+
     mkdir -p $out/bin
-    mkdir -p $out/templates
-    mkdir -p $out/share/emacs/site-lisp/cask/bin
-    install -Dm644 *.el *.elc $out/share/emacs/site-lisp/cask
-    install -Dm755 bin/cask $out/share/emacs/site-lisp/cask/bin
-    install -Dm644 templates/* $out/templates/
+    dir=$out/share/emacs/site-lisp/cask
+    install -Dm444 -t $dir     *.el *.elc
+    install -Dm555 -t $dir/bin bin/cask
     touch $out/.no-upgrade
-    ln -s $out/share/emacs/site-lisp/cask/bin/cask $out/bin/cask
+    ln -s $dir/bin/cask $out/bin/cask
+
     runHook postInstall
   '';
 
@@ -48,7 +50,7 @@ stdenv.mkDerivation rec {
 
     homepage = "https://cask.readthedocs.io/en/latest/index.html";
     license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ flexw ];
     platforms = platforms.all;
-    maintainers = [ maintainers.flexw ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/cfn-nag/Gemfile b/nixpkgs/pkgs/development/tools/cfn-nag/Gemfile
new file mode 100644
index 000000000000..5ccc66872d41
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/cfn-nag/Gemfile
@@ -0,0 +1,2 @@
+source 'https://rubygems.org'
+gem 'cfn-nag'
diff --git a/nixpkgs/pkgs/development/tools/cfn-nag/Gemfile.lock b/nixpkgs/pkgs/development/tools/cfn-nag/Gemfile.lock
new file mode 100644
index 000000000000..86bfdad86108
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/cfn-nag/Gemfile.lock
@@ -0,0 +1,51 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    aws-eventstream (1.2.0)
+    aws-partitions (1.568.0)
+    aws-sdk-core (3.130.0)
+      aws-eventstream (~> 1, >= 1.0.2)
+      aws-partitions (~> 1, >= 1.525.0)
+      aws-sigv4 (~> 1.1)
+      jmespath (~> 1.0)
+    aws-sdk-kms (1.55.0)
+      aws-sdk-core (~> 3, >= 3.127.0)
+      aws-sigv4 (~> 1.1)
+    aws-sdk-s3 (1.113.0)
+      aws-sdk-core (~> 3, >= 3.127.0)
+      aws-sdk-kms (~> 1)
+      aws-sigv4 (~> 1.4)
+    aws-sigv4 (1.4.0)
+      aws-eventstream (~> 1, >= 1.0.2)
+    cfn-model (0.6.6)
+      kwalify (= 0.7.2)
+      psych (~> 3)
+    cfn-nag (0.8.9)
+      aws-sdk-s3 (~> 1.76)
+      cfn-model (= 0.6.6)
+      lightly (~> 0.3.2)
+      logging (~> 2.2.2)
+      netaddr (~> 2.0.4)
+      optimist (~> 3.0.0)
+      rexml
+    jmespath (1.6.1)
+    kwalify (0.7.2)
+    lightly (0.3.3)
+    little-plugger (1.1.4)
+    logging (2.2.2)
+      little-plugger (~> 1.1)
+      multi_json (~> 1.10)
+    multi_json (1.15.0)
+    netaddr (2.0.5)
+    optimist (3.0.1)
+    psych (3.3.2)
+    rexml (3.2.5)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  cfn-nag
+
+BUNDLED WITH
+   2.2.28
diff --git a/nixpkgs/pkgs/development/tools/cfn-nag/default.nix b/nixpkgs/pkgs/development/tools/cfn-nag/default.nix
new file mode 100644
index 000000000000..4e25f052401d
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/cfn-nag/default.nix
@@ -0,0 +1,19 @@
+{ lib, bundlerEnv, bundlerUpdateScript, ruby }:
+
+bundlerEnv {
+  pname = "cfn-nag";
+  version = "0.8.9";
+
+  inherit ruby;
+  gemdir = ./.;
+
+  passthru.updateScript = bundlerUpdateScript "cfn-nag";
+
+  meta = with lib; {
+    description = "Linting tool for CloudFormation templates";
+    homepage = "https://github.com/stelligent/cfn_nag";
+    license = licenses.mit;
+    maintainers = with maintainers; [ wolfangaukang ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/cfn-nag/gemset.nix b/nixpkgs/pkgs/development/tools/cfn-nag/gemset.nix
new file mode 100644
index 000000000000..e2e39f7a8137
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/cfn-nag/gemset.nix
@@ -0,0 +1,189 @@
+{
+  aws-eventstream = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1pyis1nvnbjxk12a43xvgj2gv0mvp4cnkc1gzw0v1018r61399gz";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  aws-partitions = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ap27g6hxcczpb5dj7v0wzxrvywfa2kf3zx69xnjz1qvxf3plw54";
+      type = "gem";
+    };
+    version = "1.568.0";
+  };
+  aws-sdk-core = {
+    dependencies = ["aws-eventstream" "aws-partitions" "aws-sigv4" "jmespath"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14ymvp06k46gvkpvz5zaqvbvr6wd8vdka5iq25q0wd0fzdx7aivm";
+      type = "gem";
+    };
+    version = "3.130.0";
+  };
+  aws-sdk-kms = {
+    dependencies = ["aws-sdk-core" "aws-sigv4"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fmpdll52ng1kfn4r5ndcyppn5553qvvxw87w58m9n70ga3avasi";
+      type = "gem";
+    };
+    version = "1.55.0";
+  };
+  aws-sdk-s3 = {
+    dependencies = ["aws-sdk-core" "aws-sdk-kms" "aws-sigv4"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0iafjly868kdzmpxkv1ndmqm524ik36ibs15mqh145vw32gz7bax";
+      type = "gem";
+    };
+    version = "1.113.0";
+  };
+  aws-sigv4 = {
+    dependencies = ["aws-eventstream"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1wh1y79v0s4zgby2m79bnifk65hwf5pvk2yyrxzn2jkjjq8f8fqa";
+      type = "gem";
+    };
+    version = "1.4.0";
+  };
+  cfn-model = {
+    dependencies = ["kwalify" "psych"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1b3ix36yfnfwyxb4w9ss8a7nc6w15m1wbj3q8rarsqjrs3xj6wjs";
+      type = "gem";
+    };
+    version = "0.6.6";
+  };
+  cfn-nag = {
+    dependencies = ["aws-sdk-s3" "cfn-model" "lightly" "logging" "netaddr" "optimist" "rexml"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "14qlnflxx5chjvda9n2ka2axcfcjbmn9h00cija8k7kvpy1dgqga";
+      type = "gem";
+    };
+    version = "0.8.9";
+  };
+  jmespath = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mnvb80cdg7fzdcs3xscv21p28w4igk5sj5m7m81xp8v2ks87jj0";
+      type = "gem";
+    };
+    version = "1.6.1";
+  };
+  kwalify = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1ngxg3ysq5vip9dn3d32ajc7ly61kdin86hfycm1hkrcvkkn1vjf";
+      type = "gem";
+    };
+    version = "0.7.2";
+  };
+  lightly = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sgj2r6j7qxb9vqzkx5isjbphi38rplk4h8838am0cjcpq5h3jb3";
+      type = "gem";
+    };
+    version = "0.3.3";
+  };
+  little-plugger = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1frilv82dyxnlg8k1jhrvyd73l6k17mxc5vwxx080r4x1p04gwym";
+      type = "gem";
+    };
+    version = "1.1.4";
+  };
+  logging = {
+    dependencies = ["little-plugger" "multi_json"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06j6iaj89h9jhkx1x3hlswqrfnqds8br05xb1qra69dpvbdmjcwn";
+      type = "gem";
+    };
+    version = "2.2.2";
+  };
+  multi_json = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pb1g1y3dsiahavspyzkdy39j4q377009f6ix0bh1ag4nqw43l0z";
+      type = "gem";
+    };
+    version = "1.15.0";
+  };
+  netaddr = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0r7nln9xvrralwwhd5s1q4sghp0k9y7g9z5pinzpqkx715xcpdxm";
+      type = "gem";
+    };
+    version = "2.0.5";
+  };
+  optimist = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vg2chy1cfmdj6c1gryl8zvjhhmb3plwgyh1jfnpq4fnfqv7asrk";
+      type = "gem";
+    };
+    version = "3.0.1";
+  };
+  psych = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10iawnkpa44hcfrapy7yw6zmjn4g1g0y09lw244qiv424f7jasn5";
+      type = "gem";
+    };
+    version = "3.3.2";
+  };
+  rexml = {
+    groups = ["default" "development"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53";
+      type = "gem";
+    };
+    version = "3.2.5";
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/circup/default.nix b/nixpkgs/pkgs/development/tools/circup/default.nix
index b620fa20e460..71ac08d26761 100644
--- a/nixpkgs/pkgs/development/tools/circup/default.nix
+++ b/nixpkgs/pkgs/development/tools/circup/default.nix
@@ -40,7 +40,7 @@ python3.pkgs.buildPythonApplication rec {
   '';
 
   pythonImportsCheck = [
-    " circup "
+    "circup"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/cloud-nuke/default.nix b/nixpkgs/pkgs/development/tools/cloud-nuke/default.nix
index f1f44a577755..719e13a5e12a 100644
--- a/nixpkgs/pkgs/development/tools/cloud-nuke/default.nix
+++ b/nixpkgs/pkgs/development/tools/cloud-nuke/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "cloud-nuke";
-  version = "0.11.0";
+  version = "0.11.3";
 
   src = fetchFromGitHub {
     owner = "gruntwork-io";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-G1RQEKb3vK8lg0jakCtIMgQXmWqfsq0QWHwU8TAbBbE=";
+    sha256 = "sha256-iMPTRPsULrwXbx1xQ9db1s0p9a6YejXkwp7sqZ1ayYU=";
   };
 
   vendorSha256 = "sha256-McCbogZvgm9pnVjay9O2CxAh+653JnDMcU4CHD0PTPI=";
diff --git a/nixpkgs/pkgs/development/mobile/cocoapods/Gemfile b/nixpkgs/pkgs/development/tools/cocoapods/Gemfile
index 329b51518e4c..329b51518e4c 100644
--- a/nixpkgs/pkgs/development/mobile/cocoapods/Gemfile
+++ b/nixpkgs/pkgs/development/tools/cocoapods/Gemfile
diff --git a/nixpkgs/pkgs/development/mobile/cocoapods/Gemfile-beta b/nixpkgs/pkgs/development/tools/cocoapods/Gemfile-beta
index dd4b350b4372..dd4b350b4372 100644
--- a/nixpkgs/pkgs/development/mobile/cocoapods/Gemfile-beta
+++ b/nixpkgs/pkgs/development/tools/cocoapods/Gemfile-beta
diff --git a/nixpkgs/pkgs/development/mobile/cocoapods/Gemfile-beta.lock b/nixpkgs/pkgs/development/tools/cocoapods/Gemfile-beta.lock
index 3904e6acf98a..3904e6acf98a 100644
--- a/nixpkgs/pkgs/development/mobile/cocoapods/Gemfile-beta.lock
+++ b/nixpkgs/pkgs/development/tools/cocoapods/Gemfile-beta.lock
diff --git a/nixpkgs/pkgs/development/mobile/cocoapods/Gemfile.lock b/nixpkgs/pkgs/development/tools/cocoapods/Gemfile.lock
index 2cc06eac2737..2cc06eac2737 100644
--- a/nixpkgs/pkgs/development/mobile/cocoapods/Gemfile.lock
+++ b/nixpkgs/pkgs/development/tools/cocoapods/Gemfile.lock
diff --git a/nixpkgs/pkgs/development/mobile/cocoapods/default.nix b/nixpkgs/pkgs/development/tools/cocoapods/default.nix
index 8559ff5c74ca..54411fc01586 100644
--- a/nixpkgs/pkgs/development/mobile/cocoapods/default.nix
+++ b/nixpkgs/pkgs/development/tools/cocoapods/default.nix
@@ -21,5 +21,6 @@ bundlerApp {
       peterromfeldhk
       lilyball
     ];
+    mainProgram = "pod";
   };
 }
diff --git a/nixpkgs/pkgs/development/mobile/cocoapods/gemset-beta.nix b/nixpkgs/pkgs/development/tools/cocoapods/gemset-beta.nix
index e1f573b89c31..e1f573b89c31 100644
--- a/nixpkgs/pkgs/development/mobile/cocoapods/gemset-beta.nix
+++ b/nixpkgs/pkgs/development/tools/cocoapods/gemset-beta.nix
diff --git a/nixpkgs/pkgs/development/mobile/cocoapods/gemset.nix b/nixpkgs/pkgs/development/tools/cocoapods/gemset.nix
index 7d74b857cf5c..7d74b857cf5c 100644
--- a/nixpkgs/pkgs/development/mobile/cocoapods/gemset.nix
+++ b/nixpkgs/pkgs/development/tools/cocoapods/gemset.nix
diff --git a/nixpkgs/pkgs/development/mobile/cocoapods/update b/nixpkgs/pkgs/development/tools/cocoapods/update
index 66f6f7b66fd4..66f6f7b66fd4 100755
--- a/nixpkgs/pkgs/development/mobile/cocoapods/update
+++ b/nixpkgs/pkgs/development/tools/cocoapods/update
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
index b6375f1c286a..32be3e432389 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
@@ -3,13 +3,13 @@
   nixosTests }:
 buildGoModule rec {
   pname = "buildkite-agent";
-  version = "3.33.3";
+  version = "3.34.1";
 
   src = fetchFromGitHub {
     owner = "buildkite";
     repo = "agent";
     rev = "v${version}";
-    sha256 = "sha256-RCKHVFYYcWraUwsGuD/anmWpNwc7cHc9jm0LwR9WRzA=";
+    sha256 = "sha256-OxZcMPJx83hBQOe4Pc8ERhO9QOc4euVVs+OMbPjA4U0=";
   };
 
   vendorSha256 = "sha256-n3XRxpEKjHf7L7fcGscWTVKBtot9waZbLoS9cG0kHfI=";
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/drone/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/drone/default.nix
index 0f36f8dc0277..7e00f481752f 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/drone/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/drone/default.nix
@@ -3,23 +3,23 @@
 
 buildGoModule rec {
   pname = "drone.io${lib.optionalString (!enableUnfree) "-oss"}";
-  version = "2.0.3";
+  version = "2.11.1";
 
-  vendorSha256 = "sha256-3qTH/p0l6Ke1F9SUcvK2diqZooOMnlXYO1PHLdJJ8PM=";
+  vendorSha256 = "sha256-oJBGHr4LjrX7e197s4tqkiysWJS3RRW6JWI9ncs/uHw=";
 
   doCheck = false;
 
   src = fetchFromGitHub {
-    owner = "drone";
+    owner = "harness";
     repo = "drone";
     rev = "v${version}";
-    sha256 = "sha256-MKV5kor+Wm9cuIFFcjSNyCgVKtY+/B9sgBOXMMRvMPI=";
+    sha256 = "sha256-bbWJo7PnwQaVKRpSnRK5pm0cD9orlkEOUa+y7UnACjg=";
   };
 
   tags = lib.optionals (!enableUnfree) [ "oss" "nolimit" ];
 
   meta = with lib; {
-    maintainers = with maintainers; [ elohmeier vdemeester ];
+    maintainers = with maintainers; [ elohmeier vdemeester techknowlogick ];
     license = with licenses; if enableUnfree then unfreeRedistributable else asl20;
     description = "Continuous Integration platform built on container technology";
   };
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/github-runner/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/github-runner/default.nix
index 222ffb0688fe..c8513d004af5 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/github-runner/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/github-runner/default.nix
@@ -43,13 +43,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "github-runner";
-  version = "2.288.1";
+  version = "2.289.1";
 
   src = fetchFromGitHub {
     owner = "actions";
     repo = "runner";
     rev = "v${version}";
-    hash = "sha256-bP+6aAKnu6PxN9eppFXsqOSVSGQ6Lv+gEF2MdEz52WE=";
+    hash = "sha256-5TS/tW1hnDvPZQdR659rw+spLq98niyUms3BrixaKRE=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/github-runner/deps.nix b/nixpkgs/pkgs/development/tools/continuous-integration/github-runner/deps.nix
index 1281b9515f59..0db944207322 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/github-runner/deps.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/github-runner/deps.nix
@@ -1,15 +1,16 @@
 { fetchNuGet }: [
   (fetchNuGet { pname = "Castle.Core"; version = "4.4.0"; sha256 = "0rpcbmyhckvlvp6vbzpj03c1gqz56ixc6f15vgmxmyf1g40c24pf"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.0"; sha256 = "1315hycfqlalh6k4zvvz7pz3dylpp0sr45j1v9avcb143hjqnav6"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.0"; sha256 = "0r6jyxl3h1asj30la78skd5gsxgwjpvkspmkw1gglxfg85hnqc8w"; })
   (fetchNuGet { pname = "Microsoft.AspNet.WebApi.Client"; version = "5.2.4"; sha256 = "00fkczf69z2rwarcd8kjjdp47517a0ca6lggn72qbilsp03a5scj"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.3"; sha256 = "1jpw4s862j4aa7b7wchi03gxcy02j6hhpbsfbcayiyx6ry788i15"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.3"; sha256 = "0rrrfgkr7rzhlnsnajvzb1ijkybp99d992bqxy9pbawmq7d60bdk"; })
   (fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.0.0"; sha256 = "18gdbsqf6i79ld4ikqr4jhx9ndsggm865b5xj1xmnmgg12ydp19a"; })
   (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.0.1"; sha256 = "0zxc0apx1gcx361jlq8smc9pfdgmyjh6hpka8dypc9w23nlsh6yj"; })
   (fetchNuGet { pname = "Microsoft.IdentityModel.Logging"; version = "5.2.1"; sha256 = "1gpka9jm2gl6f07pcwzwvaxw9xq1a19i9fskn0qs921c5grhlp3g"; })
   (fetchNuGet { pname = "Microsoft.IdentityModel.Tokens"; version = "5.2.1"; sha256 = "03v6145vr1winq8xxfikydicds4f10qmy1ybyz2gfimnzzx51w00"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.0"; sha256 = "0aska6s99rfg13ngsaxr151a6sk8r68lv3mj8yv0bhvwcpln4342"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.0"; sha256 = "146rbmk0svvqaf0c4msg67h17x4k4gd5kzsbb3iqvs14xfkli2xw"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.0"; sha256 = "0qaylw18flrfl3vxnbp8wsiz29znidmn6dhv7k4v4jj2za16wmji"; })
+  (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.0.0"; sha256 = "0bknyf5kig5icwjxls7pcn51x2b2qf91dz9qv67fl70v6cczaz2r"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.3"; sha256 = "1swbrmpsayy99ycwaq68dx9ydd5h3qv9brwig6ryff1xfn1llndq"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.3"; sha256 = "0gjj6p2nnxzhyrmmmwiyrll782famhll9lbgj8cji1i93amxq1pb"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.3"; sha256 = "0f04srx6q0jk81a60n956hz32fdngzp0xmdb2x7gyl77gsq8yijj"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1-rc2-24027"; sha256 = "1a0w5fv8slfr4q7m3mh78lb9awdwyz4zv3bb73vybkyq1f6z7lx8"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
@@ -21,7 +22,6 @@
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1-rc2-24027"; sha256 = "1j1458jska7540ng7fdf5i06k2vy71mxl5dld4x5s8gfndxpdzdj"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Windows.ApiSets"; version = "1.0.1-rc2-24027"; sha256 = "034m9p417iq3yzipg393wp4bddsh80di9iad78vvvh7w5difdv0x"; })
-  (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.0.0"; sha256 = "0bknyf5kig5icwjxls7pcn51x2b2qf91dz9qv67fl70v6cczaz2r"; })
   (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.0.0"; sha256 = "1bh5scbvl6ndldqv20sl34h4y257irm9ziv2wyfc3hka6912fhn7"; })
   (fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.0.0"; sha256 = "06mn31cgpp7d8lwdyjanh89prc66j37dchn74vrd9s588rq0y70r"; })
   (fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.0.1-rc2-24027"; sha256 = "1rvb076s4ksvmbvnxi4sv2f9f22izqp2rca0scjqya5x1qhcgkp0"; })
@@ -84,8 +84,8 @@
   (fetchNuGet { pname = "System.AppContext"; version = "4.3.0"; sha256 = "1649qvy3dar900z3g817h17nl8jp4ka5vcfmsr05kh0fshn7j3ya"; })
   (fetchNuGet { pname = "System.Buffers"; version = "4.0.0-rc2-24027"; sha256 = "1mqnay87pkxih73984jf5fm14d0m6yjq4cv4cqbj37nmgm54ssjp"; })
   (fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
-  (fetchNuGet { pname = "System.Collections"; version = "4.0.11-rc2-24027"; sha256 = "0ijpgf7iy3mcvr9327craxsb0lsznprajqzjy59sspc75gk0yahq"; })
   (fetchNuGet { pname = "System.Collections"; version = "4.0.11"; sha256 = "1ga40f5lrwldiyw6vy67d0sg7jd7ww6kgwbksm19wrvq9hr0bsm6"; })
+  (fetchNuGet { pname = "System.Collections"; version = "4.0.11-rc2-24027"; sha256 = "0ijpgf7iy3mcvr9327craxsb0lsznprajqzjy59sspc75gk0yahq"; })
   (fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
   (fetchNuGet { pname = "System.Collections.Concurrent"; version = "4.0.12-rc2-24027"; sha256 = "0yhc5q74vb9vb9cmyrr9p4dfql62dr7c8ajbaxnzzs917v2z68q4"; })
   (fetchNuGet { pname = "System.Collections.Concurrent"; version = "4.3.0"; sha256 = "0wi10md9aq33jrkh2c24wr2n9hrpyamsdhsxdcnf43b7y86kkii8"; })
@@ -96,43 +96,43 @@
   (fetchNuGet { pname = "System.ComponentModel.TypeConverter"; version = "4.3.0"; sha256 = "17ng0p7v3nbrg3kycz10aqrrlw4lz9hzhws09pfh8gkwicyy481x"; })
   (fetchNuGet { pname = "System.Console"; version = "4.0.0-rc2-24027"; sha256 = "072m313av0s5cfpr2rpq07p7c13dy4rh1ngigv3dnr1yyvab9081"; })
   (fetchNuGet { pname = "System.Console"; version = "4.3.0"; sha256 = "1flr7a9x920mr5cjsqmsy9wgnv3lvd0h1g521pdr1lkb2qycy7ay"; })
-  (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.0.11-rc2-24027"; sha256 = "11rz0kdzk4bw9yc85jmskxla7i1bs61kladqzvymrg8xn3lk488a"; })
   (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.0.11"; sha256 = "0gmjghrqmlgzxivd2xl50ncbglb7ljzb66rlx8ws6dv8jm0d5siz"; })
+  (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.0.11-rc2-24027"; sha256 = "11rz0kdzk4bw9yc85jmskxla7i1bs61kladqzvymrg8xn3lk488a"; })
   (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y"; })
   (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.0.0-rc2-24027"; sha256 = "1cizj1xvaz7dm701r4bl6s08858j1r2794y7xx8abyw8j91c957w"; })
   (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.3.0"; sha256 = "0z6m3pbiy0qw6rn3n209rrzf9x1k4002zh90vwcrsym09ipm2liq"; })
-  (fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.0.1-rc2-24027"; sha256 = "080gd86c1pkfkzz67ispkzxc426lfh82zajayiizbgwd6yqa7fv5"; })
   (fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.0.1"; sha256 = "19cknvg07yhakcvpxg3cxa0bwadplin6kyxd8mpjjpwnp56nl85x"; })
+  (fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.0.1-rc2-24027"; sha256 = "080gd86c1pkfkzz67ispkzxc426lfh82zajayiizbgwd6yqa7fv5"; })
   (fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "0in3pic3s2ddyibi8cvgl102zmvp9r9mchh82ns9f0ms4basylw1"; })
   (fetchNuGet { pname = "System.Diagnostics.TraceSource"; version = "4.3.0"; sha256 = "1kyw4d7dpjczhw6634nrmg7yyyzq72k75x38y0l0nwhigdlp1766"; })
   (fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.1.0-rc2-24027"; sha256 = "0a0c24lm8yn0hbvd5m64lv7xhs2bmhm5fdpk89xvxj14zdarqhm6"; })
   (fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4"; })
   (fetchNuGet { pname = "System.Dynamic.Runtime"; version = "4.0.11"; sha256 = "1pla2dx8gkidf7xkciig6nifdsb494axjvzvann8g2lp3dbqasm9"; })
   (fetchNuGet { pname = "System.Dynamic.Runtime"; version = "4.3.0"; sha256 = "1d951hrvrpndk7insiag80qxjbf2y0y39y8h5hnq9612ws661glk"; })
-  (fetchNuGet { pname = "System.Globalization"; version = "4.0.11-rc2-24027"; sha256 = "0yl161lr85smzdfzb7fbk0lfrqk5ns71hcnws6vm3sn2aqvfmhpn"; })
   (fetchNuGet { pname = "System.Globalization"; version = "4.0.11"; sha256 = "070c5jbas2v7smm660zaf1gh0489xanjqymkvafcs4f8cdrs1d5d"; })
+  (fetchNuGet { pname = "System.Globalization"; version = "4.0.11-rc2-24027"; sha256 = "0yl161lr85smzdfzb7fbk0lfrqk5ns71hcnws6vm3sn2aqvfmhpn"; })
   (fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; })
   (fetchNuGet { pname = "System.Globalization.Calendars"; version = "4.0.1-rc2-24027"; sha256 = "0whr2qird567iyc137s10qs0xi6607kjii9wi8a8g1f9lybzlz5k"; })
   (fetchNuGet { pname = "System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1xwl230bkakzzkrggy1l1lxmm3xlhk4bq2pkv790j5lm8g887lxq"; })
   (fetchNuGet { pname = "System.Globalization.Extensions"; version = "4.3.0"; sha256 = "02a5zfxavhv3jd437bsncbhd2fp1zv4gxzakp1an9l6kdq1mcqls"; })
   (fetchNuGet { pname = "System.IdentityModel.Tokens.Jwt"; version = "5.2.1"; sha256 = "08n1z9ngsi26qlhwpjzxafhwl3p279widfci64l2ahxf1gprfqsx"; })
-  (fetchNuGet { pname = "System.IO"; version = "4.1.0-rc2-24027"; sha256 = "0rwqmn743gl21xnb3rwqkdacshd5l86pn23mc4bviva3pbncbjs4"; })
   (fetchNuGet { pname = "System.IO"; version = "4.1.0"; sha256 = "1g0yb8p11vfd0kbkyzlfsbsp5z44lwsvyc0h3dpw6vqnbi035ajp"; })
+  (fetchNuGet { pname = "System.IO"; version = "4.1.0-rc2-24027"; sha256 = "0rwqmn743gl21xnb3rwqkdacshd5l86pn23mc4bviva3pbncbjs4"; })
   (fetchNuGet { pname = "System.IO"; version = "4.3.0"; sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f"; })
   (fetchNuGet { pname = "System.IO.Compression"; version = "4.1.0-rc2-24027"; sha256 = "07s5zxdw3ihxdv0mjxb2ywzg9phcp4bayrhkadzm95l4kcv0xaij"; })
   (fetchNuGet { pname = "System.IO.Compression"; version = "4.3.0"; sha256 = "084zc82yi6yllgda0zkgl2ys48sypiswbiwrv7irb3r0ai1fp4vz"; })
   (fetchNuGet { pname = "System.IO.Compression.ZipFile"; version = "4.0.1-rc2-24027"; sha256 = "0np6vf9rnfasz0sqys56kpryc84qcqi1a1rfskmycdlxk182p3s2"; })
   (fetchNuGet { pname = "System.IO.Compression.ZipFile"; version = "4.3.0"; sha256 = "1yxy5pq4dnsm9hlkg9ysh5f6bf3fahqqb6p8668ndy5c0lk7w2ar"; })
-  (fetchNuGet { pname = "System.IO.FileSystem"; version = "4.0.1-rc2-24027"; sha256 = "0hpw3ssnbcv9l1lnlcym2bv3h3sf2znif4brys2i3868s6h946k6"; })
   (fetchNuGet { pname = "System.IO.FileSystem"; version = "4.0.1"; sha256 = "0kgfpw6w4djqra3w5crrg8xivbanh1w9dh3qapb28q060wb9flp1"; })
+  (fetchNuGet { pname = "System.IO.FileSystem"; version = "4.0.1-rc2-24027"; sha256 = "0hpw3ssnbcv9l1lnlcym2bv3h3sf2znif4brys2i3868s6h946k6"; })
   (fetchNuGet { pname = "System.IO.FileSystem"; version = "4.3.0"; sha256 = "0z2dfrbra9i6y16mm9v1v6k47f0fm617vlb7s5iybjjsz6g1ilmw"; })
   (fetchNuGet { pname = "System.IO.FileSystem.AccessControl"; version = "4.4.0"; sha256 = "11sna2bv5ai4sivrs7g2gp7g0yjp02s0kasl01j3fa1cvnwwvgkv"; })
-  (fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.0.1-rc2-24027"; sha256 = "04q3sxrfxqgig9scmxblxlb6n6fypv535lby26pi20ixszs19dxc"; })
   (fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.0.1"; sha256 = "1s0mniajj3lvbyf7vfb5shp4ink5yibsx945k6lvxa96r8la1612"; })
+  (fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.0.1-rc2-24027"; sha256 = "04q3sxrfxqgig9scmxblxlb6n6fypv535lby26pi20ixszs19dxc"; })
   (fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.3.0"; sha256 = "0j6ndgglcf4brg2lz4wzsh1av1gh8xrzdsn9f0yznskhqn1xzj9c"; })
   (fetchNuGet { pname = "System.IO.FileSystem.Watcher"; version = "4.0.0-rc2-24027"; sha256 = "0g2h4q0w42frdz101z2cxs4n9zpxvzb43wnzawx1f26vpilz7km4"; })
-  (fetchNuGet { pname = "System.Linq"; version = "4.1.0-rc2-24027"; sha256 = "0icbsy0vq07achclz32jvnnfdchkgylsjj67gra3fn5906s40n24"; })
   (fetchNuGet { pname = "System.Linq"; version = "4.1.0"; sha256 = "1ppg83svb39hj4hpp5k7kcryzrf3sfnm08vxd5sm2drrijsla2k5"; })
+  (fetchNuGet { pname = "System.Linq"; version = "4.1.0-rc2-24027"; sha256 = "0icbsy0vq07achclz32jvnnfdchkgylsjj67gra3fn5906s40n24"; })
   (fetchNuGet { pname = "System.Linq"; version = "4.3.0"; sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7"; })
   (fetchNuGet { pname = "System.Linq.Expressions"; version = "4.1.0"; sha256 = "1gpdxl6ip06cnab7n3zlcg6mqp7kknf73s8wjinzi4p0apw82fpg"; })
   (fetchNuGet { pname = "System.Linq.Expressions"; version = "4.3.0"; sha256 = "0ky2nrcvh70rqq88m9a5yqabsl4fyd17bpr63iy2mbivjs2nyypv"; })
@@ -143,13 +143,13 @@
   (fetchNuGet { pname = "System.Net.Primitives"; version = "4.3.0"; sha256 = "0c87k50rmdgmxx7df2khd9qj7q35j9rzdmm2572cc55dygmdk3ii"; })
   (fetchNuGet { pname = "System.Net.Sockets"; version = "4.1.0-rc2-24027"; sha256 = "062kbbvm17nhwmcxjnakfv3i23vrk6c9gmz6x8q79kcr5hxr40qs"; })
   (fetchNuGet { pname = "System.Net.Sockets"; version = "4.3.0"; sha256 = "1ssa65k6chcgi6mfmzrznvqaxk8jp0gvl77xhf1hbzakjnpxspla"; })
-  (fetchNuGet { pname = "System.ObjectModel"; version = "4.0.12-rc2-24027"; sha256 = "065p89awfiz9kb304hqs7wkfpykd9z9kkv84ihm813msv54i8lvj"; })
   (fetchNuGet { pname = "System.ObjectModel"; version = "4.0.12"; sha256 = "1sybkfi60a4588xn34nd9a58png36i0xr4y4v4kqpg8wlvy5krrj"; })
+  (fetchNuGet { pname = "System.ObjectModel"; version = "4.0.12-rc2-24027"; sha256 = "065p89awfiz9kb304hqs7wkfpykd9z9kkv84ihm813msv54i8lvj"; })
   (fetchNuGet { pname = "System.ObjectModel"; version = "4.3.0"; sha256 = "191p63zy5rpqx7dnrb3h7prvgixmk168fhvvkkvhlazncf8r3nc2"; })
   (fetchNuGet { pname = "System.Private.DataContractSerialization"; version = "4.3.0"; sha256 = "06fjipqvjp559rrm825x6pll8gimdj9x1n3larigh5hsm584gndw"; })
   (fetchNuGet { pname = "System.Private.Uri"; version = "4.3.0"; sha256 = "04r1lkdnsznin0fj4ya1zikxiqr0h6r6a1ww2dsm60gqhdrf0mvx"; })
-  (fetchNuGet { pname = "System.Reflection"; version = "4.1.0-rc2-24027"; sha256 = "0717y8iqcw19g2zkcs0hkalvjhnpaq5mapd82kxkhiq1djgjhhi2"; })
   (fetchNuGet { pname = "System.Reflection"; version = "4.1.0"; sha256 = "1js89429pfw79mxvbzp8p3q93il6rdff332hddhzi5wqglc4gml9"; })
+  (fetchNuGet { pname = "System.Reflection"; version = "4.1.0-rc2-24027"; sha256 = "0717y8iqcw19g2zkcs0hkalvjhnpaq5mapd82kxkhiq1djgjhhi2"; })
   (fetchNuGet { pname = "System.Reflection"; version = "4.3.0"; sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m"; })
   (fetchNuGet { pname = "System.Reflection.Emit"; version = "4.0.1"; sha256 = "0ydqcsvh6smi41gyaakglnv252625hf29f7kywy2c70nhii2ylqp"; })
   (fetchNuGet { pname = "System.Reflection.Emit"; version = "4.3.0"; sha256 = "11f8y3qfysfcrscjpjym9msk7lsfxkk4fmz9qq95kn3jd0769f74"; })
@@ -157,29 +157,29 @@
   (fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.3.0"; sha256 = "0w1n67glpv8241vnpz1kl14sy7zlnw414aqwj4hcx5nd86f6994q"; })
   (fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.0.1"; sha256 = "1s4b043zdbx9k39lfhvsk68msv1nxbidhkq6nbm27q7sf8xcsnxr"; })
   (fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.3.0"; sha256 = "0ql7lcakycrvzgi9kxz1b3lljd990az1x6c4jsiwcacrvimpib5c"; })
-  (fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.0.1-rc2-24027"; sha256 = "0lgz7wwdb02vapa17hgdkf1jnq1mcsbq8gwy6a9iqd04d2mfanv7"; })
   (fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.0.1"; sha256 = "0m7wqwq0zqq9gbpiqvgk3sr92cbrw7cp3xn53xvw7zj6rz6fdirn"; })
+  (fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.0.1-rc2-24027"; sha256 = "0lgz7wwdb02vapa17hgdkf1jnq1mcsbq8gwy6a9iqd04d2mfanv7"; })
   (fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.3.0"; sha256 = "02bly8bdc98gs22lqsfx9xicblszr2yan7v2mmw3g7hy6miq5hwq"; })
   (fetchNuGet { pname = "System.Reflection.Metadata"; version = "1.6.0"; sha256 = "1wdbavrrkajy7qbdblpbpbalbdl48q3h34cchz24gvdgyrlf15r4"; })
-  (fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.0.1-rc2-24027"; sha256 = "1xjbwji89s69f9lq8wcjfkz8y9ym9zffgj2mg9bv0rxwyqcynpz8"; })
   (fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.0.1"; sha256 = "1bangaabhsl4k9fg8khn83wm6yial8ik1sza7401621jc6jrym28"; })
+  (fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.0.1-rc2-24027"; sha256 = "1xjbwji89s69f9lq8wcjfkz8y9ym9zffgj2mg9bv0rxwyqcynpz8"; })
   (fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.3.0"; sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276"; })
   (fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.3.0"; sha256 = "0y2ssg08d817p0vdag98vn238gyrrynjdj4181hdg780sif3ykp1"; })
   (fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.4.0"; sha256 = "0n9r1w4lp2zmadyqkgp4sk9wy90sj4ygq4dh7kzamx26i9biys5h"; })
-  (fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.0.1-rc2-24027"; sha256 = "06lkqk5hjkcna19inpda5fqbxvd9pq5cs61di7kmhrd2sgzbs6xj"; })
   (fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.0.1"; sha256 = "0b4i7mncaf8cnai85jv3wnw6hps140cxz8vylv2bik6wyzgvz7bi"; })
+  (fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.0.1-rc2-24027"; sha256 = "06lkqk5hjkcna19inpda5fqbxvd9pq5cs61di7kmhrd2sgzbs6xj"; })
   (fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49"; })
-  (fetchNuGet { pname = "System.Runtime"; version = "4.1.0-rc2-24027"; sha256 = "1g5ghiyfb8njzfz39cswizjbxgaamil7kgkzgab93fhgk7jksmyg"; })
   (fetchNuGet { pname = "System.Runtime"; version = "4.1.0"; sha256 = "02hdkgk13rvsd6r9yafbwzss8kr55wnj8d5c7xjnp8gqrwc8sn0m"; })
+  (fetchNuGet { pname = "System.Runtime"; version = "4.1.0-rc2-24027"; sha256 = "1g5ghiyfb8njzfz39cswizjbxgaamil7kgkzgab93fhgk7jksmyg"; })
   (fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7"; })
-  (fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.1.0-rc2-24027"; sha256 = "09k4c6is31dpccwgb749055m2ad0b84rnapk69fmj3wjswacg26p"; })
   (fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.1.0"; sha256 = "0rw4rm4vsm3h3szxp9iijc3ksyviwsv6f63dng3vhqyg4vjdkc2z"; })
+  (fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.1.0-rc2-24027"; sha256 = "09k4c6is31dpccwgb749055m2ad0b84rnapk69fmj3wjswacg26p"; })
   (fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60"; })
-  (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.0.1-rc2-24027"; sha256 = "0lw4amgaryahvija5xxb2vmybq7ks4b4ir7g7nc1xw6x9x58jf2q"; })
   (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.0.1"; sha256 = "1g0zrdi5508v49pfm3iii2hn6nm00bgvfpjq1zxknfjrxxa20r4g"; })
+  (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.0.1-rc2-24027"; sha256 = "0lw4amgaryahvija5xxb2vmybq7ks4b4ir7g7nc1xw6x9x58jf2q"; })
   (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8"; })
-  (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.1.0-rc2-24027"; sha256 = "0v5phdy7yr6d1q13fvb6hhd32k89l93z6x4hlkh5qhm1zlavaabl"; })
   (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.1.0"; sha256 = "01kxqppx3dr3b6b286xafqilv4s2n0gqvfgzfd4z943ga9i81is1"; })
+  (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.1.0-rc2-24027"; sha256 = "0v5phdy7yr6d1q13fvb6hhd32k89l93z6x4hlkh5qhm1zlavaabl"; })
   (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j"; })
   (fetchNuGet { pname = "System.Runtime.InteropServices.PInvoke"; version = "4.0.0-rc2-24027"; sha256 = "0qsgwvr6ppvllblb64p5plr7ssbmwfxxc4qf6l1xfincza8np34r"; })
   (fetchNuGet { pname = "System.Runtime.InteropServices.RuntimeInformation"; version = "4.0.0-rc2-24027"; sha256 = "03pgqbgahfgvigyrsd08snzsryg90shfjlbdv4jk6yzfr27va3n2"; })
@@ -212,37 +212,37 @@
   (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.3.0"; sha256 = "00a0a7c40i3v4cb20s2cmh9csb5jv2l0frvnlzyfxh848xalpdwr"; })
   (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.4.0"; sha256 = "11rr16fp68apc0arsymgj18w8ajs9a4366wgx9iqwny4glrl20wp"; })
   (fetchNuGet { pname = "System.ServiceProcess.ServiceController"; version = "4.4.0"; sha256 = "0hyijvysbcjh20mbbgajg9wh04nkjd6y5lqxgm0a6m28zjcjshl6"; })
-  (fetchNuGet { pname = "System.Text.Encoding"; version = "4.0.11-rc2-24027"; sha256 = "0qkaldb06dwmi8gb940h75n9cs5rgy6sqcpa6f443mhahmagmsbd"; })
   (fetchNuGet { pname = "System.Text.Encoding"; version = "4.0.11"; sha256 = "1dyqv0hijg265dwxg6l7aiv74102d6xjiwplh2ar1ly6xfaa4iiw"; })
+  (fetchNuGet { pname = "System.Text.Encoding"; version = "4.0.11-rc2-24027"; sha256 = "0qkaldb06dwmi8gb940h75n9cs5rgy6sqcpa6f443mhahmagmsbd"; })
   (fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
   (fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "4.4.0"; sha256 = "07bzjnflxjk9vgpljfybrpqmvsr9qr2f20nq5wf11imwa5pbhgfc"; })
-  (fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.0.11-rc2-24027"; sha256 = "02xic3hhfy48s50bxh25as1l9v3afgrhlxqfnd5ki4qirxly7qs6"; })
   (fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.0.11"; sha256 = "08nsfrpiwsg9x5ml4xyl3zyvjfdi4mvbqf93kjdh11j4fwkznizs"; })
+  (fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.0.11-rc2-24027"; sha256 = "02xic3hhfy48s50bxh25as1l9v3afgrhlxqfnd5ki4qirxly7qs6"; })
   (fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy"; })
   (fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.0.12-rc2-24027"; sha256 = "1111sgvbxrxq9c1i0nziqddlzfdc2bsawd0jcf2nna9nkcn4d6br"; })
   (fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.1.0"; sha256 = "1mw7vfkkyd04yn2fbhm38msk7dz2xwvib14ygjsb8dq2lcvr18y7"; })
   (fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.3.0"; sha256 = "1bgq51k7fwld0njylfn7qc5fmwrk2137gdq7djqdsw347paa9c2l"; })
-  (fetchNuGet { pname = "System.Threading"; version = "4.0.11-rc2-24027"; sha256 = "0aa4zaqma4yagjd44m2j13gr9qzn8rv8dbz3p9mjdk0dx1zpi4iq"; })
   (fetchNuGet { pname = "System.Threading"; version = "4.0.11"; sha256 = "19x946h926bzvbsgj28csn46gak2crv2skpwsx80hbgazmkgb1ls"; })
+  (fetchNuGet { pname = "System.Threading"; version = "4.0.11-rc2-24027"; sha256 = "0aa4zaqma4yagjd44m2j13gr9qzn8rv8dbz3p9mjdk0dx1zpi4iq"; })
   (fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
   (fetchNuGet { pname = "System.Threading.Channels"; version = "4.5.0"; sha256 = "0n6z3wjia7h2a5vl727p97riydnb6jhhkb1pdcnizza02dwkz0nz"; })
   (fetchNuGet { pname = "System.Threading.Overlapped"; version = "4.0.1-rc2-24027"; sha256 = "1ansaxwkc4xi2ngpiv8gjmv02d75y0nb4lfqzxy73r3radakqvdp"; })
-  (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.0.11-rc2-24027"; sha256 = "0fsgdzdxm3yj1cym421ymn8x8anhyzgzc1529q5xd1vq4yknwfq0"; })
   (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.0.11"; sha256 = "0nr1r41rak82qfa5m0lhk9mp0k93bvfd7bbd9sdzwx9mb36g28p5"; })
+  (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.0.11-rc2-24027"; sha256 = "0fsgdzdxm3yj1cym421ymn8x8anhyzgzc1529q5xd1vq4yknwfq0"; })
   (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7"; })
-  (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.0.0-rc2-24027"; sha256 = "108sdqpy3ga6gzksl59w1k21a3jlrh8x2igyxh3dm3212rca1pyg"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.0.0"; sha256 = "1cb51z062mvc2i8blpzmpn9d9mm4y307xrwi65di8ri18cz5r1zr"; })
+  (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.0.0-rc2-24027"; sha256 = "108sdqpy3ga6gzksl59w1k21a3jlrh8x2igyxh3dm3212rca1pyg"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.3.0"; sha256 = "1xxcx2xh8jin360yjwm4x4cf5y3a2bwpn2ygkfkwkicz7zk50s2z"; })
   (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.5.1"; sha256 = "1ikrplvw4m6pzjbq3bfbpr572n4i9mni577zvmrkaygvx85q3myw"; })
   (fetchNuGet { pname = "System.Threading.Thread"; version = "4.0.0-rc2-24027"; sha256 = "1gv963m4523m3m9gbn819bfzmhxqsv93m5kaqmbv4ijyziby2872"; })
   (fetchNuGet { pname = "System.Threading.ThreadPool"; version = "4.3.0"; sha256 = "027s1f4sbx0y1xqw2irqn6x161lzj8qwvnh2gn78ciiczdv10vf1"; })
   (fetchNuGet { pname = "System.Threading.Timer"; version = "4.0.1-rc2-24027"; sha256 = "06kwi42lgf3zw3b5yw668ammbjl6208y182wyqaaqrxgn5gs4yh7"; })
   (fetchNuGet { pname = "System.Threading.Timer"; version = "4.3.0"; sha256 = "1nx773nsx6z5whv8kaa1wjh037id2f1cxhb69pvgv12hd2b6qs56"; })
-  (fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.0.11-rc2-24027"; sha256 = "0vywggi6mqkbr6g1a1fh821hqfnyq1k829vlhfw908l7mj75k34d"; })
   (fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.0.11"; sha256 = "0c6ky1jk5ada9m94wcadih98l6k1fvf6vi7vhn1msjixaha419l5"; })
+  (fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.0.11-rc2-24027"; sha256 = "0vywggi6mqkbr6g1a1fh821hqfnyq1k829vlhfw908l7mj75k34d"; })
   (fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.3.0"; sha256 = "0c47yllxifzmh8gq6rq6l36zzvw4kjvlszkqa9wq3fr59n0hl3s1"; })
-  (fetchNuGet { pname = "System.Xml.XDocument"; version = "4.0.11-rc2-24027"; sha256 = "1rvglifac6xq1lawm78w49fq9cl8zvs1g4vrsd2hhf0vb4i85p1z"; })
   (fetchNuGet { pname = "System.Xml.XDocument"; version = "4.0.11"; sha256 = "0n4lvpqzy9kc7qy1a4acwwd7b7pnvygv895az5640idl2y9zbz18"; })
+  (fetchNuGet { pname = "System.Xml.XDocument"; version = "4.0.11-rc2-24027"; sha256 = "1rvglifac6xq1lawm78w49fq9cl8zvs1g4vrsd2hhf0vb4i85p1z"; })
   (fetchNuGet { pname = "System.Xml.XDocument"; version = "4.3.0"; sha256 = "08h8fm4l77n0nd4i4fk2386y809bfbwqb7ih9d7564ifcxr5ssxd"; })
   (fetchNuGet { pname = "System.Xml.XmlDocument"; version = "4.3.0"; sha256 = "0bmz1l06dihx52jxjr22dyv5mxv6pj4852lx68grjm7bivhrbfwi"; })
   (fetchNuGet { pname = "System.Xml.XmlSerializer"; version = "4.3.0"; sha256 = "07pa4sx196vxkgl3csvdmw94nydlsm9ir38xxcs84qjn8cycd912"; })
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix b/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
index 6dc0a7d30ee1..f2989545f5c4 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
@@ -1,7 +1,7 @@
 { lib, buildGoModule, fetchFromGitLab, fetchurl }:
 
 let
-  version = "14.8.2";
+  version = "14.9.1";
 in
 buildGoModule rec {
   inherit version;
@@ -14,17 +14,18 @@ buildGoModule rec {
     "-X ${commonPackagePath}.REVISION=v${version}"
   ];
 
-  vendorSha256 = "1aa04hbavr0bclddp5adjwwj21sp46gbhjydxc3w7vs1siw0ivq2";
+  vendorSha256 = "0ag3pmcrxksgikdcvl9rv2s3kn7l0dj41pf2m9dq0g2a1j45nydn";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-runner";
     rev = "v${version}";
-    sha256 = "1zwr09lrrc3xx3sp00vs30ks0n77d7v0xkz0mz9jy2qdls9nfmrv";
+    sha256 = "1h6fyhbc154fr6a8brva3clirgvga6sal6ikylf9mbkxbh7d9rcn";
   };
 
   patches = [
     ./fix-shell-path.patch
+    ./remove-bash-test.patch
   ];
 
   prePatch = ''
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/fix-shell-path.patch b/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/fix-shell-path.patch
index 4a3d37be09cd..b70b95e7be0b 100644
--- a/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/fix-shell-path.patch
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/fix-shell-path.patch
@@ -1,5 +1,5 @@
 diff --git a/shells/bash.go b/shells/bash.go
-index bd99eca1a..9873dff6b 100644
+index 18d608445..f158ffc0b 100644
 --- a/shells/bash.go
 +++ b/shells/bash.go
 @@ -3,6 +3,7 @@ package shells
@@ -10,16 +10,16 @@ index bd99eca1a..9873dff6b 100644
  	"path"
  	"runtime"
  	"strconv"
-@@ -300,7 +301,11 @@ func (b *BashShell) GetConfiguration(info common.ShellScriptInfo) (*common.Shell
- 	if info.User != "" {
- 		script.Command = "su"
- 		if runtime.GOOS == "linux" {
--			script.Arguments = append(script.Arguments, "-s", "/bin/"+b.Shell)
-+			shellPath, err := exec.LookPath(b.Shell)
-+			if err != nil {
-+				shellPath = "/bin/" + b.Shell
-+			}
-+			script.Arguments = append(script.Arguments, "-s", shellPath)
- 		}
- 		script.Arguments = append(
- 			script.Arguments,
+@@ -307,7 +308,11 @@ func (b *BashShell) GetConfiguration(info common.ShellScriptInfo) (*common.Shell
+
+ 	script.Command = "su"
+ 	if runtime.GOOS == OSLinux {
+-		script.Arguments = []string{"-s", "/bin/" + b.Shell, info.User, "-c", script.CmdLine}
++		shellPath, err := exec.LookPath(b.Shell)
++		if err != nil {
++			shellPath = "/bin/" + b.Shell
++		}
++		script.Arguments = []string{"-s", shellPath, info.User, "-c", script.CmdLine}
+ 	} else {
+ 		script.Arguments = []string{info.User, "-c", script.CmdLine}
+ 	}
diff --git a/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/remove-bash-test.patch b/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/remove-bash-test.patch
new file mode 100644
index 000000000000..5bffd0f4f75e
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/continuous-integration/gitlab-runner/remove-bash-test.patch
@@ -0,0 +1,80 @@
+diff --git a/shells/bash_test.go b/shells/bash_test.go
+index b8a48f85e..0e3173fc3 100644
+--- a/shells/bash_test.go
++++ b/shells/bash_test.go
+@@ -4,12 +4,9 @@
+ package shells
+ 
+ import (
+-	"runtime"
+ 	"testing"
+ 
+ 	"github.com/stretchr/testify/assert"
+-	"github.com/stretchr/testify/require"
+-	"gitlab.com/gitlab-org/gitlab-runner/common"
+ )
+ 
+ func TestBash_CommandShellEscapesLegacy(t *testing.T) {
+@@ -84,62 +81,3 @@ func TestBash_CheckForErrors(t *testing.T) {
+ 		})
+ 	}
+ }
+-
+-func TestBash_GetConfiguration(t *testing.T) {
+-	tests := map[string]struct {
+-		info common.ShellScriptInfo
+-		cmd  string
+-		args []string
+-		os   string
+-	}{
+-		`bash`: {
+-			info: common.ShellScriptInfo{Shell: "bash", Type: common.NormalShell},
+-			cmd:  "bash",
+-		},
+-		`bash -l`: {
+-			info: common.ShellScriptInfo{Shell: "bash", Type: common.LoginShell},
+-			cmd:  "bash",
+-			args: []string{"-l"},
+-		},
+-		`su -s /bin/bash foobar -c bash`: {
+-			info: common.ShellScriptInfo{Shell: "bash", User: "foobar", Type: common.NormalShell},
+-			cmd:  "su",
+-			args: []string{"-s", "/bin/bash", "foobar", "-c", "bash"},
+-			os:   OSLinux,
+-		},
+-		`su -s /bin/bash foobar -c $'bash -l'`: {
+-			info: common.ShellScriptInfo{Shell: "bash", User: "foobar", Type: common.LoginShell},
+-			cmd:  "su",
+-			args: []string{"-s", "/bin/bash", "foobar", "-c", "bash -l"},
+-			os:   OSLinux,
+-		},
+-		`su -s /bin/sh foobar -c $'sh -l'`: {
+-			info: common.ShellScriptInfo{Shell: "sh", User: "foobar", Type: common.LoginShell},
+-			cmd:  "su",
+-			args: []string{"-s", "/bin/sh", "foobar", "-c", "sh -l"},
+-			os:   OSLinux,
+-		},
+-		`su foobar -c $'bash -l'`: {
+-			info: common.ShellScriptInfo{Shell: "bash", User: "foobar", Type: common.LoginShell},
+-			cmd:  "su",
+-			args: []string{"foobar", "-c", "bash -l"},
+-			os:   "darwin",
+-		},
+-	}
+-
+-	for tn, tc := range tests {
+-		t.Run(tn, func(t *testing.T) {
+-			if tc.os != "" && tc.os != runtime.GOOS {
+-				t.Skipf("test only runs on %s", tc.os)
+-			}
+-
+-			sh := BashShell{Shell: tc.info.Shell}
+-			config, err := sh.GetConfiguration(tc.info)
+-			require.NoError(t, err)
+-
+-			assert.Equal(t, tc.cmd, config.Command)
+-			assert.Equal(t, tc.args, config.Arguments)
+-			assert.Equal(t, tn, config.CmdLine)
+-		})
+-	}
+-}
diff --git a/nixpkgs/pkgs/development/tools/database/prisma-engines/default.nix b/nixpkgs/pkgs/development/tools/database/prisma-engines/default.nix
index 48456166b92b..4a4724858fcc 100644
--- a/nixpkgs/pkgs/development/tools/database/prisma-engines/default.nix
+++ b/nixpkgs/pkgs/development/tools/database/prisma-engines/default.nix
@@ -10,19 +10,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "prisma-engines";
-  version = "3.10.0";
+  version = "3.11.0";
 
   src = fetchFromGitHub {
     owner = "prisma";
     repo = "prisma-engines";
     rev = version;
-    sha256 = "sha256-0m0RjIasEGB9QxZc7wKCMLnxHXkSlvCDA2QWa87mRRs=";
+    sha256 = "sha256-z7ebwidY+p350XaGeyohoSHWc2DhfzpRxsRDLON1BuA=";
   };
 
   # Use system openssl.
   OPENSSL_NO_VENDOR = 1;
 
-  cargoSha256 = "sha256-KNQa+wLLl4abz48QKYkWu7A+FTGIyB+1EWAnLuWpJwc=";
+  cargoSha256 = "sha256-PQdLoNJL9szPzPtFRznWS0lngTvtWK+Ko2rp4JWH9dQ=";
 
   nativeBuildInputs = [ pkg-config ];
 
@@ -56,6 +56,6 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://www.prisma.io/";
     license = licenses.asl20;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ pamplemousse pimeys ];
+    maintainers = with maintainers; [ pamplemousse pimeys superherointj ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/database/sqlcheck/default.nix b/nixpkgs/pkgs/development/tools/database/sqlcheck/default.nix
index 2afd004f4d73..a4aec98cbd09 100644
--- a/nixpkgs/pkgs/development/tools/database/sqlcheck/default.nix
+++ b/nixpkgs/pkgs/development/tools/database/sqlcheck/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sqlcheck";
-  version = "1.2";
+  version = "1.3";
 
   src = fetchFromGitHub {
     owner = "jarulraj";
     repo = "sqlcheck";
     rev = "v${version}";
-    sha256 = "0v8idyhwhbphxzmh03lih3wd9gdq317zn7wsf01infih7b6l0k69";
+    sha256 = "sha256-rGqCtEO2K+OT44nYU93mF1bJ07id+ixPkRSC8DcO6rY=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/development/tools/database/sqlfluff/default.nix b/nixpkgs/pkgs/development/tools/database/sqlfluff/default.nix
index 82b7ea8ea954..cc6757e239a7 100644
--- a/nixpkgs/pkgs/development/tools/database/sqlfluff/default.nix
+++ b/nixpkgs/pkgs/development/tools/database/sqlfluff/default.nix
@@ -5,13 +5,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "sqlfluff";
-  version = "0.11.0";
+  version = "0.11.2";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    hash = "sha256-Cem53w/pzSDTi9A9mh9VeLlRn1m6KhkxWaqJjEtfwUs=";
+    hash = "sha256-iEjfp6QXMIk/ehq0Ypa8JXv3/u40w39NHz7HhC1KBms=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/nixpkgs/pkgs/development/tools/doctl/default.nix b/nixpkgs/pkgs/development/tools/doctl/default.nix
index 3bcd0d6777d4..d7667538e8e5 100644
--- a/nixpkgs/pkgs/development/tools/doctl/default.nix
+++ b/nixpkgs/pkgs/development/tools/doctl/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "doctl";
-  version = "1.70.0";
+  version = "1.71.1";
 
   vendorSha256 = null;
 
@@ -31,7 +31,7 @@ buildGoModule rec {
     owner = "digitalocean";
     repo = "doctl";
     rev = "v${version}";
-    sha256 = "sha256-oLcWVUP9A/tcJYKiaBrqAdyNKESaVFOaNiG/fAVQb2c=";
+    sha256 = "sha256-Y6YabrpM1WcNGp5ksvq3SBuAS6KEUVzEfxsPmBDS+Io=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/documentation/gi-docgen/default.nix b/nixpkgs/pkgs/development/tools/documentation/gi-docgen/default.nix
index 05b7aac82c17..85836f435cba 100644
--- a/nixpkgs/pkgs/development/tools/documentation/gi-docgen/default.nix
+++ b/nixpkgs/pkgs/development/tools/documentation/gi-docgen/default.nix
@@ -1,6 +1,5 @@
 { lib
 , fetchFromGitLab
-, fetchpatch
 , meson
 , ninja
 , python3
@@ -8,7 +7,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "gi-docgen";
-  version = "2021.8";
+  version = "2022.1";
 
   format = "other";
 
@@ -17,18 +16,9 @@ python3.pkgs.buildPythonApplication rec {
     owner = "GNOME";
     repo = pname;
     rev = version;
-    sha256 = "Y1IdCH6bytxbKIj48IAw/3XUQhoqwPshvdj/d1hRS3o=";
+    sha256 = "35pL/2TQRVgPfAcfOGCLlSP1LIh4r95mFC+UoXQEEHo=";
   };
 
-  patches = [
-    # Fix building docs of some packages (e.g. gnome-builder)
-    # https://gitlab.gnome.org/GNOME/gi-docgen/-/issues/111
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/gi-docgen/-/commit/72f3c5dbe27aabb5f7a376afda23f3dfc3c2e212.patch";
-      sha256 = "iVXc3idmcjmFVZQdE2QX2V53YZ79lqxZid9nWdxAZ/Q=";
-    })
-  ];
-
   depsBuildBuild = [
     python3
   ];
diff --git a/nixpkgs/pkgs/development/tools/earthly/default.nix b/nixpkgs/pkgs/development/tools/earthly/default.nix
index 477b28b6a1fe..377d287e531e 100644
--- a/nixpkgs/pkgs/development/tools/earthly/default.nix
+++ b/nixpkgs/pkgs/development/tools/earthly/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "earthly";
-  version = "0.6.10";
+  version = "0.6.12";
 
   src = fetchFromGitHub {
     owner = "earthly";
     repo = "earthly";
     rev = "v${version}";
-    sha256 = "sha256-CzVcoIvf9sqomua5AJtNpCnGfPmCNJMwex/l7p+hEfw=";
+    sha256 = "sha256-M8DnSpQhW4i83cu9wp0ZKyP7137IQVjyBl0cgVvQmPI=";
   };
 
-  vendorSha256 = "sha256-uUx9C7uEdXjhDWxehGHuhuFQXdUjZAXK3qogESkRm8E=";
+  vendorSha256 = "sha256-GvTWj0uEsCyC4/RL6woym8UwA3OCFx8NWkNQApnVMM8=";
 
   ldflags = [
     "-s" "-w"
diff --git a/nixpkgs/pkgs/development/tools/efm-langserver/default.nix b/nixpkgs/pkgs/development/tools/efm-langserver/default.nix
index 29304d7d2654..a030a271b487 100644
--- a/nixpkgs/pkgs/development/tools/efm-langserver/default.nix
+++ b/nixpkgs/pkgs/development/tools/efm-langserver/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "efm-langserver";
-  version = "0.0.41";
+  version = "0.0.42";
 
   src = fetchFromGitHub {
     owner = "mattn";
     repo = "efm-langserver";
     rev = "v${version}";
-    sha256 = "sha256-0s6GmMbjtXGUcChzc8Pkqvmt3iU5uDUqe76OUDngboU=";
+    sha256 = "sha256-1IAPtqIozp9Wp3L95mmhFuWvWvCDuTh1VsCVaJSzyfk=";
   };
 
-  vendorSha256 = "sha256-tca+1SRrFyvU8ttHmfMFiGXd1A8rQSEWm1Mc2qp0EfI=";
+  vendorSha256 = "sha256-KABezphT5/o3XWSFNe2OvfawFR8uwsGMnjsI9xh378Q=";
   subPackages = [ "." ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/electron/default.nix b/nixpkgs/pkgs/development/tools/electron/default.nix
index 655ad71e7b23..24dc8614b29a 100644
--- a/nixpkgs/pkgs/development/tools/electron/default.nix
+++ b/nixpkgs/pkgs/development/tools/electron/default.nix
@@ -73,43 +73,43 @@ rec {
     headers = "0vvizddmhprprbdf6bklasz6amwc254bpc9j0zlx23d1pgyxpnhc";
   };
 
-  electron_14 = mkElectron "14.2.6" {
-    armv7l-linux = "fd115652f491fff6a28bf39dc41e3c7f1b638e7dcc7856c33b6a97c7763ea9a3";
-    aarch64-linux = "530df3030aeb2c0f67ba4bc210c0f0fe77670001d2ba30ad6858f74952528df2";
-    x86_64-linux = "c3f91ced7e429079d43c182f47cea1eceef17ab65c390e15f9c6af56e58ed3d9";
-    i686-linux = "d66881d0747c99618c500b46e044eb4e97442400624fbcf9a6af114743e6e8db";
-    x86_64-darwin = "15db43c17a33bf9e31f66f5025e0810dfbd2b237f7645eda51409de7930cc9d1";
-    aarch64-darwin = "a5f7b8cc5f6dfc7561368d2f09745967bb553a29a22ef74af8f795225483338a";
-    headers = "0rxbij6qvi0xzcmbxf3fm1snvakaxp9c512z9ni36y98sgg4s3l8";
+  electron_14 = mkElectron "14.2.7" {
+    armv7l-linux = "bb0c25671daa0dc235e212831d62f18b9a7f2692279bcd8e4a15f2d84ee7124d";
+    aarch64-linux = "149c5df2cf98ee0a2ce5445b3fb00752f42c3f7ab9677b7a54ba01fba2e2f4ec";
+    x86_64-linux = "ad80f424e8d8d79f0be078d8a1ddef8fd659fa3dd8aaf6704ab97f2a13489558";
+    i686-linux = "82b29272cb52dbe969c0bd6cf9b69896c86abe1d9ef473a3844c0ab3dc92b353";
+    x86_64-darwin = "2a5d8336dcd140158964801d482344756377d924a06e6605959034a41f7e026b";
+    aarch64-darwin = "b45869ff61bdf392bca498529b6445d47a784079f6a33af6b19d517953f03fd8";
+    headers = "0339fs3iyp869xi1xmn9z2b1n32wf408cc0z9bz6shns44ymkyhd";
   };
 
-  electron_15 = mkElectron "15.4.0" {
-    armv7l-linux = "40c073a3b416f83264327bdf5e33b334ffcd56a729ef237360d66f520f670d16";
-    aarch64-linux = "ef18ba74b4fa34a26f9ee819bb908c60d0dd9ec2048414629979760f262d72f8";
-    x86_64-linux = "5bdea4cbf5559491e9ad9f365fa6f7ec26603fd6f68bfa8848f2884ebd51662d";
-    i686-linux = "636d0e28bb20ca127c9b8722fe39e7e7d95fc63bd15b156b7af563296b3d9595";
-    x86_64-darwin = "8a132b2be0f27c7e8fa9a91a8b4b0fcdf3ec571c721cb5f5610dc8a6b3f0fd26";
-    aarch64-darwin = "82b29c37a427464a9278d617435ca19f472b00689c9e58163e99f30b90f33046";
-    headers = "0fc1sck7g160klpqzfcqv9zc45ia914mrncyma58zzcbzpk6k6yb";
+  electron_15 = mkElectron "15.4.1" {
+    armv7l-linux = "e0fe5daed46a5d718b3209fa301aea743df694daf6605f9313f4ca6c70fe5167";
+    aarch64-linux = "fa108edd4c146811bdee842fcd278b046ae0ff157de5e072c3ff3ac0bcb310c2";
+    x86_64-linux = "867095924d434b3918df8576e7af94fecea4d29461fcfb69c40161f02158ff15";
+    i686-linux = "8e79fa9f4125f254abb437445fed8f3f8ec10dd2462e1ced3e7df49c622e087d";
+    x86_64-darwin = "899d16a0e0157809c297ceb3710c53441ec4396333d9ad5b65297446874e14dc";
+    aarch64-darwin = "8295bf45dab1131dfdfd15654a0b1d85bfae221052ba64353368a2c0faaaa3ff";
+    headers = "073697wjq60cnz42xmnjsr0xqcmcsl4m48mmzrz1rxrc8mvi86gr";
   };
 
-  electron_16 = mkElectron "16.0.10" {
-    armv7l-linux = "1a72fe59011cfcc1f376f2948dd5a70d2f75d6c12fb682a0246d2e596227b5e0";
-    aarch64-linux = "46cd1393816364a666ead410505bce4b51d68ce872446a71d16886b88c4b275a";
-    x86_64-linux = "3b4779e41e27200ce5fa94d20f9df05ff5c757be6805eb0e8952fe198d66f324";
-    i686-linux = "9e1426a8135d3fe195ba9fc1a5ea5ad4d5ce96bd513691897b39106698e3c3c8";
-    x86_64-darwin = "00b0222efa67fbb29f723fabebc4221646ebd6d5fdc09524df9a203f63ce660c";
-    aarch64-darwin = "1203f6ec4e8b97312254ceb122ca4399f39ae67bfe1636e426a798c89ec2a9ee";
-    headers = "10f6px88vg6napyhniczi6l660qs4l5mm0b9gdlds4i1y94s1zrl";
+  electron_16 = mkElectron "16.1.0" {
+    armv7l-linux = "f3ab34c73b4100ffc5041ed9aa0608d1dc6b98fe3c2caa14be3d5c3ffbebda76";
+    aarch64-linux = "e80a7e4a59b94c7cd02b16ca37a2b0f26ddb58ddac23135c6180b238589f1c62";
+    x86_64-linux = "36c79af4d05e89ef9c9616a156f63adc5b453ee6bee5d8f4331e75ee77198e85";
+    i686-linux = "7129a96fc33de70cfe5d6d0e17ecff1b4dcf52d825a6ad05b10ca67da7b43665";
+    x86_64-darwin = "723859249e959948cdd339acf708022fb0195b433809af25b4a9f4d69b9da52f";
+    aarch64-darwin = "e76558028979f70107e5b1897275a9789be20b13991bfbcebeab7fc220f15764";
+    headers = "0yv9rssrfi0hdzrjf1n735dsz9sgy78jzxdcf9is2387yrr1qiyz";
   };
 
-  electron_17 = mkElectron "17.1.0" {
-    armv7l-linux = "09d92195821aad4ac03fbc858287a7372b6aa059081bb825d267853ee1b0425d";
-    aarch64-linux = "6a34d6802d44a391902f53baf0adc8b819d33e7c31b34614757b17b3223c9d1e";
-    x86_64-linux = "106ec28a5969366c1e1f642cc33ac41950c68bd182db23b04d7ac6886bfe28e8";
-    i686-linux = "19fe206be07a6df7f9f0ecdb411e3cafd3a53618edb19cc6adc77156f698444e";
-    x86_64-darwin = "bd80d6b0b62c9bec195d264aa21a255f4324a8b56849e04972c1fcc262757c31";
-    aarch64-darwin = "83fe2fc24976d09a0e0fcc3a60226f190cf9b67287fe4434d3d76d59fa45315c";
-    headers = "1zv1pigfbis1bsan28wx3bgkdwjc48pjq19wmxs73kd1khsy6w8r";
+  electron_17 = mkElectron "17.1.2" {
+    armv7l-linux = "b561c04c9fa8c512f418ea5c32f5526732e1ccd150ee4830a0091d0fa1b7e31c";
+    aarch64-linux = "cda7e66c6672def9edd881107c28e2eec09b7802a38227ac89bb233191ce4840";
+    x86_64-linux = "7e7c35e8c1a0fc451e7af19fa73264881ae2c4672c52a2ae1cdd61604650ca94";
+    i686-linux = "de87a7952c93c1d8e8c533a700bbfc76d3893e9ad438413507d11450b80a9c97";
+    x86_64-darwin = "d4382d3f01b750676a1f3c9e2273ad69cac16dc64a4145469c663bcda8d2471b";
+    aarch64-darwin = "135dec87211fcefdb53ab1fef13344c7b71a321f7c4f6846f260c1e0848e73bf";
+    headers = "15k234d044lgmc3psyxz9syy9wvzgn54znklak9sv6gcajjzll10";
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/evans/default.nix b/nixpkgs/pkgs/development/tools/evans/default.nix
index 29dadf243043..95e0839f46b3 100644
--- a/nixpkgs/pkgs/development/tools/evans/default.nix
+++ b/nixpkgs/pkgs/development/tools/evans/default.nix
@@ -2,18 +2,18 @@
 
 buildGoModule rec {
   pname = "evans";
-  version = "0.10.2";
+  version = "0.10.3";
 
   src = fetchFromGitHub {
     owner = "ktr0731";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-F9URMwQaSAQZaiZ95rDZqe8+YcJ9aMInSTIgQ7JLyOw=";
+    sha256 = "sha256-4KHJodqmx03uQ+HJBWmKbIBvkLh80N4fHnYL4GLciNc=";
   };
 
   subPackages = [ "." ];
 
-  vendorSha256 = "sha256-ICGnjI9sFwt81rZCnap/rggfSs4+pZNmLouoTY7CYKw=";
+  vendorSha256 = "sha256-to75gON3Kl0GHgVhhrW8I6GWOg9/KrUts3rwDLAfFnM=";
 
   meta = with lib; {
     description = "More expressive universal gRPC client";
diff --git a/nixpkgs/pkgs/development/tools/fq/default.nix b/nixpkgs/pkgs/development/tools/fq/default.nix
index cc80fbf74fcf..ad8c43195c9d 100644
--- a/nixpkgs/pkgs/development/tools/fq/default.nix
+++ b/nixpkgs/pkgs/development/tools/fq/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "fq";
-  version = "0.0.4";
+  version = "0.0.6";
 
   src = fetchFromGitHub {
     owner = "wader";
     repo = "fq";
     rev = "v${version}";
-    sha256 = "sha256-mnb/9zcFSeBasGPYSGWoBhnldljGW3VK070zTO8M/uk=";
+    sha256 = "sha256-/9TBnhFGYNOcCsQKUF0uuJEgnF+qRGly/5z1s3sYhqY=";
   };
 
-  vendorSha256 = "sha256-KPIO/ZuiwxlnjGLaEuClkDsJnx/fwW0jPDBc7aTT68A=";
+  vendorSha256 = "sha256-zvtYyNJO4QoTes3vf6CFa3dYMJqkp0PG9pnOk+aO97Y=";
 
   ldflags = [
     "-s"
@@ -24,6 +24,8 @@ buildGoModule rec {
     "-X main.version=${version}"
   ];
 
+  subPackages = [ "." ];
+
   passthru.tests = testVersion { package = fq; };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/frugal/default.nix b/nixpkgs/pkgs/development/tools/frugal/default.nix
index 5cb92b3b834b..ae0db9da3074 100644
--- a/nixpkgs/pkgs/development/tools/frugal/default.nix
+++ b/nixpkgs/pkgs/development/tools/frugal/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "frugal";
-  version = "3.14.15";
+  version = "3.15.0";
 
   src = fetchFromGitHub {
     owner = "Workiva";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-7840HndsU5+mWKQ/HXLVYA2dV7L8NlM7so1nk8Zdc2c=";
+    sha256 = "sha256-EIHaCkqwCyRV1sX+9f39FbByRvhms4rJA9nQoKxxkm8=";
   };
 
   subPackages = [ "." ];
diff --git a/nixpkgs/pkgs/development/tools/glade/default.nix b/nixpkgs/pkgs/development/tools/glade/default.nix
index 3e5c7b0438fd..adec880eabe0 100644
--- a/nixpkgs/pkgs/development/tools/glade/default.nix
+++ b/nixpkgs/pkgs/development/tools/glade/default.nix
@@ -1,6 +1,8 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , gettext
 , fetchurl
+, fetchpatch
 , python3
 , meson
 , ninja
@@ -30,6 +32,22 @@ stdenv.mkDerivation rec {
     sha256 = "1dxsiz9ahqkxg2a1dw9sbd8jg59y5pdz4c1gvnbmql48gmj8gz4q";
   };
 
+  patches = [
+    # Fix build with meson 0.61
+    # data/meson.build:4:5: ERROR: Function does not take positional arguments.
+    # Taken from https://gitlab.gnome.org/GNOME/glade/-/merge_requests/117
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/glade/-/commit/61304b2e8bac8ded76643cb7c3e781f73881dd2b.patch";
+      sha256 = "9x6RK8Wgnm8bDxeBLV3PlUkUuH2706Ba9kwE5S87DgE=";
+    })
+    # help/meson.build:6:6: ERROR: Tried to create target "help-glade-da-update-po", but a target of that name already exists.
+    # Taken from https://gitlab.gnome.org/GNOME/glade/-/merge_requests/117
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/glade/-/commit/04ba6f969f716fbfe3c7feb7e4bab8678cc1e9eb.patch";
+      sha256 = "j3XfF7P6rndL+0PWqnp+QYph7Ba6bgcp4Pkikr2wuJA=";
+    })
+  ];
+
   nativeBuildInputs = [
     meson
     ninja
diff --git a/nixpkgs/pkgs/development/tools/go-repo-root/default.nix b/nixpkgs/pkgs/development/tools/go-repo-root/default.nix
index b7653aa144e4..d17b2d0c5388 100644
--- a/nixpkgs/pkgs/development/tools/go-repo-root/default.nix
+++ b/nixpkgs/pkgs/development/tools/go-repo-root/default.nix
@@ -1,16 +1,16 @@
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "go-repo-root";
-  version = "20140911-${lib.strings.substring 0 7 rev}";
-  rev = "90041e5c7dc634651549f96814a452f4e0e680f9";
+  version = "unstable-2014-09-11";
 
   goPackagePath = "github.com/cstrahan/go-repo-root";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/cstrahan/go-repo-root";
-    sha256 = "1rlzp8kjv0a3dnfhyqcggny0ad648j5csr2x0siq5prahlp48mg4";
+  src = fetchFromGitHub {
+    owner = "cstrahan";
+    repo = "go-repo-root";
+    rev = "90041e5c7dc634651549f96814a452f4e0e680f9";
+    sha256 = "sha256-5FVELoUq34KjBl1kzYpExDQFvH2PYQ+dbUOBLSe6n+Y=";
   };
 
   goDeps = ./deps.nix;
diff --git a/nixpkgs/pkgs/development/tools/gofumpt/default.nix b/nixpkgs/pkgs/development/tools/gofumpt/default.nix
index 2c3922964948..9c8f5e20b7e5 100644
--- a/nixpkgs/pkgs/development/tools/gofumpt/default.nix
+++ b/nixpkgs/pkgs/development/tools/gofumpt/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gofumpt";
-  version = "0.3.0";
+  version = "0.3.1";
 
   src = fetchFromGitHub {
     owner = "mvdan";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-S6IF/MtNCkhPHHdaQJyT78j2z4xdf4z/xLfXDmCWR2Y=";
+    sha256 = "sha256-uXRYVLFDyRZ83mth8Fh+MG9fNv2lUfE3BTljM9v9rjI=";
   };
 
-  vendorSha256 = "sha256-LhiCxpjySEezhcgICfgD+mABd1QXyZn3uI1Fj+eWiyo=";
+  vendorSha256 = "sha256-Il1E1yOejLEdKRRMqelGeJbHRjx4qFymf7N98BEdFzg=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/golangci-lint/default.nix b/nixpkgs/pkgs/development/tools/golangci-lint/default.nix
index 6334c00fc0bb..28b15172e405 100644
--- a/nixpkgs/pkgs/development/tools/golangci-lint/default.nix
+++ b/nixpkgs/pkgs/development/tools/golangci-lint/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "golangci-lint";
-  version = "1.44.2";
+  version = "1.45.2";
 
   src = fetchFromGitHub {
     owner = "golangci";
     repo = "golangci-lint";
     rev = "v${version}";
-    sha256 = "sha256-RMZZLvCJcTMzHOzUfT6aEC21T5dCwu1YOUuQ9PLS3fc=";
+    sha256 = "sha256-Mr45nJbpyzxo0ZPwx22JW2WrjyjI9FPpl+gZ7NIc6WQ=";
   };
 
-  vendorSha256 = "sha256-X2hZ4BQgYHI1mx/Ywky0oo7IMtrppu+rLq2LRLPH3fY=";
+  vendorSha256 = "sha256-pcbKg1ePN8pObS9EzP3QYjtaty27L9sroKUs/qEPtJo=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/gomodifytags/default.nix b/nixpkgs/pkgs/development/tools/gomodifytags/default.nix
index 254113f21064..7a4070d96d6d 100644
--- a/nixpkgs/pkgs/development/tools/gomodifytags/default.nix
+++ b/nixpkgs/pkgs/development/tools/gomodifytags/default.nix
@@ -2,19 +2,17 @@
 
 buildGoModule rec {
   pname = "gomodifytags";
-  version = "1.6.0";
-
-  vendorSha256 = null;
-
-  doCheck = false;
+  version = "1.16.0";
 
   src = fetchFromGitHub {
     owner = "fatih";
     repo = "gomodifytags";
     rev = "v${version}";
-    sha256 = "1wmzl5sk5mc46njzn86007sqyyv6han058ppiw536qyhk88rzazq";
+    sha256 = "1yhkn9mdvsn9i5v03c5smz32zlhkylnxhkcbjb7llafxzbhzgfm6";
   };
 
+  vendorSha256 = "sha256-8efqJfu+gtoFbhdlDZfb8NsXV9hBDI2pvAQNH18VVhU=";
+
   meta = {
     description = "Go tool to modify struct field tags";
     homepage = "https://github.com/fatih/gomodifytags";
diff --git a/nixpkgs/pkgs/development/tools/google-java-format/default.nix b/nixpkgs/pkgs/development/tools/google-java-format/default.nix
index 35a7d7e71995..ddc26be1c647 100644
--- a/nixpkgs/pkgs/development/tools/google-java-format/default.nix
+++ b/nixpkgs/pkgs/development/tools/google-java-format/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "google-java-format";
-  version = "1.14.0";
+  version = "1.15.0";
 
   src = fetchurl {
     url = "https://github.com/google/google-java-format/releases/download/v${version}/google-java-format-${version}-all-deps.jar";
-    sha256 = "sha256-DSfT5Yw6nZHYm0JNRn+r3iToxntGYmBhU7zQGzg+vXc=";
+    sha256 = "sha256-o1a7AjaynFejq2ePF6ewJ6rWA7CWDBg6GPH+Mi5POOo=";
   };
 
   dontUnpack = true;
diff --git a/nixpkgs/pkgs/development/tools/gopls/default.nix b/nixpkgs/pkgs/development/tools/gopls/default.nix
index 0f57be390f2e..069cd2b37fe3 100644
--- a/nixpkgs/pkgs/development/tools/gopls/default.nix
+++ b/nixpkgs/pkgs/development/tools/gopls/default.nix
@@ -1,18 +1,18 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, buildGo118Module, fetchFromGitHub }:
 
-buildGoModule rec {
+buildGo118Module rec {
   pname = "gopls";
-  version = "0.8.0";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     owner = "golang";
     repo = "tools";
     rev = "gopls/v${version}";
-    sha256 = "sha256-VBan3IKqf3AFrPoryT/U7lGabFHSXMhaBpnNw3LRH/I=";
+    sha256 = "sha256-ypuZQt6iF1QRk/FsoTKnJlb5CWIEkvK7r37t4rSxhmU=";
   };
 
   modRoot = "gopls";
-  vendorSha256 = "sha256-pW4G89fYFwVM2EkIqTCsl2lhN677LIMFpKPvLVV2boY=";
+  vendorSha256 = "sha256-SY08322wuJl8F790oXGmYo82Yadi14kDpoVGCGVMF0c=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/gore/default.nix b/nixpkgs/pkgs/development/tools/gore/default.nix
index 0131908d0aac..58ff4125c0d0 100644
--- a/nixpkgs/pkgs/development/tools/gore/default.nix
+++ b/nixpkgs/pkgs/development/tools/gore/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gore";
-  version = "0.5.3";
+  version = "0.5.4";
 
   src = fetchFromGitHub {
     owner = "motemen";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-uLU4uZaQA9u6BUQZ0Rb4Yqg/oJOZ529gIiOwmmyg05A=";
+    sha256 = "sha256-ipHvflsVBSjqohV/PliS0s0Nhie4nIP/HgupNH/Yui4=";
   };
 
-  vendorSha256 = "sha256-/yggEibpQK9Uk116RkE5XbbJe6j4WsIC3GtKPU/P2hU=";
+  vendorSha256 = "sha256-HrdNWsUVz5G5tG/ZFz2z1Vt4kM12I088/6OIkRFyDl8=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/gosec/default.nix b/nixpkgs/pkgs/development/tools/gosec/default.nix
index d9e19fdac90e..ac653db1bf02 100644
--- a/nixpkgs/pkgs/development/tools/gosec/default.nix
+++ b/nixpkgs/pkgs/development/tools/gosec/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "gosec";
-  version = "2.10.0";
+  version = "2.11.0";
 
   src = fetchFromGitHub {
     owner = "securego";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-a3MDGsTqndHlT6fbUkdsBShDqWXOHQiJFUIjyMqvMq8=";
+    sha256 = "sha256-AYD45L1FFT/S1toLK489C2TTasTHVXIs4Tf7TLOaye0=";
   };
 
-  vendorSha256 = "sha256-3ZGzVGKwnNab8wUn0fRepl4FDo43MAqNAO3zijH90/0=";
+  vendorSha256 = "sha256-zzbINVp8EA5aIvwUiFlQRtD6YL0iytbgVzCHbo+clYI=";
 
   subPackages = [
     "cmd/gosec"
diff --git a/nixpkgs/pkgs/development/tools/gotags/default.nix b/nixpkgs/pkgs/development/tools/gotags/default.nix
index 274f7a476c2b..0a55fc66830f 100644
--- a/nixpkgs/pkgs/development/tools/gotags/default.nix
+++ b/nixpkgs/pkgs/development/tools/gotags/default.nix
@@ -1,15 +1,15 @@
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "gotags";
-  version = "20150803-${lib.strings.substring 0 7 rev}";
-  rev = "be986a34e20634775ac73e11a5b55916085c48e7";
+  version = "unstable-2015-08-03";
 
   goPackagePath = "github.com/jstemmer/gotags";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/jstemmer/gotags";
-    sha256 = "071wyq90b06xlb3bb0l4qjz1gf4nnci4bcngiddfcxf2l41w1vja";
+  src = fetchFromGitHub {
+    owner = "jstemmer";
+    repo = "gotags";
+    rev = "be986a34e20634775ac73e11a5b55916085c48e7";
+    sha256 = "sha256-Su7AA6HCdeZai8+yRSKzlrgXvsSEgrXGot2ABRL2PBw=";
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/gotools/default.nix b/nixpkgs/pkgs/development/tools/gotools/default.nix
index 285d546d7421..ea79baa96a70 100644
--- a/nixpkgs/pkgs/development/tools/gotools/default.nix
+++ b/nixpkgs/pkgs/development/tools/gotools/default.nix
@@ -1,14 +1,13 @@
 { lib, buildGoModule, fetchgit }:
 
 buildGoModule rec {
-  pname = "gotools-unstable";
-  version = "2021-01-13";
-  rev = "8b4aab62c064010e8e875d2e5a8e63a96fefc87d";
+  pname = "gotools";
+  version = "0.1.10";
 
   src = fetchgit {
-    inherit rev;
+    rev = "v${version}";
     url = "https://go.googlesource.com/tools";
-    sha256 = "1cmnm9fl2a6hiplj8s6x0l3czcw4xh3j3lvzbgccnp1l8kz8q2vm";
+    sha256 = "sha256-r71+//VhayW18uvMl/ls/8KYNbZ7uDZw3SWoqPL3Xqk=";
   };
 
   # The gopls folder contains a Go submodule which causes a build failure.
@@ -25,7 +24,7 @@ buildGoModule rec {
     rm -rf gopls
   '';
 
-  vendorSha256 = "18qpjmmjpk322fvf81cafkpl3spv7hpdpymhympmld9isgzggfyz";
+  vendorSha256 = "sha256-UJIXG8WKzazNTXoqEFlT/umC40F6z2Q5I8RfxnMbsPM=";
 
   doCheck = false;
 
@@ -53,4 +52,11 @@ buildGoModule rec {
   # Do not copy this without a good reason for enabling
   # In this case tools is heavily coupled with go itself and embeds paths.
   allowGoReference = true;
+
+  meta = with lib; {
+    description = "Additional tools for Go development";
+    homepage = "http://go.googlesource.com/tools";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ danderson ];
+  };
 }
diff --git a/nixpkgs/pkgs/development/tools/haskell/dconf2nix/dconf2nix.nix b/nixpkgs/pkgs/development/tools/haskell/dconf2nix/dconf2nix.nix
index 6ac6605797eb..8d6e19124711 100644
--- a/nixpkgs/pkgs/development/tools/haskell/dconf2nix/dconf2nix.nix
+++ b/nixpkgs/pkgs/development/tools/haskell/dconf2nix/dconf2nix.nix
@@ -1,14 +1,14 @@
-{ mkDerivation, base, containers, fetchgit, hedgehog, lib
+{ mkDerivation, base, containers, fetchFromGitHub, hedgehog, lib
 , optparse-applicative, parsec, template-haskell, text
 }:
 mkDerivation {
   pname = "dconf2nix";
   version = "0.0.11";
-  src = fetchgit {
-    url = "https://github.com/gvolpe/dconf2nix.git";
-    sha256 = "1kv88bxi7l5kcm66m5y85b8fz1zsdshvw37k715g2biwa0an5s6f";
+  src = fetchFromGitHub {
+    owner = "gvolpe";
+    repo = "dconf2nix";
     rev = "fe7e3d973caa87b1b706096aff3d670f65e39fda";
-    fetchSubmodules = true;
+    sha256 = "sha256-zuhiFVA8LvFKOPMMvqFu+ofv0CrIl2pMZbPQE/tCaM8=";
   };
   isLibrary = true;
   isExecutable = true;
diff --git a/nixpkgs/pkgs/development/tools/jbang/default.nix b/nixpkgs/pkgs/development/tools/jbang/default.nix
index 0bbd46b4294c..fbaa9fd1dba7 100644
--- a/nixpkgs/pkgs/development/tools/jbang/default.nix
+++ b/nixpkgs/pkgs/development/tools/jbang/default.nix
@@ -1,12 +1,12 @@
 { stdenv, lib, fetchzip, jdk, makeWrapper, coreutils, curl }:
 
 stdenv.mkDerivation rec {
-  version = "0.82.1";
+  version = "0.92.2";
   pname = "jbang";
 
   src = fetchzip {
     url = "https://github.com/jbangdev/jbang/releases/download/v${version}/${pname}-${version}.tar";
-    sha256 = "sha256-C2zsIJvna7iqcaCM4phJonbA9TALL89rACms5II9hhU=";
+    sha256 = "0gbdbjyyh2if3yfmwfd6d3yq8r25inhw7n44jbjw1pdqb6gk44z1";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -14,7 +14,6 @@ stdenv.mkDerivation rec {
   installPhase = ''
     runHook preInstall
     rm bin/jbang.{cmd,ps1}
-    rmdir tmp
     cp -r . $out
     wrapProgram $out/bin/jbang \
       --set JAVA_HOME ${jdk} \
diff --git a/nixpkgs/pkgs/development/tools/jd/default.nix b/nixpkgs/pkgs/development/tools/jd/default.nix
index 96d2807b9ab9..f6ed3f59ac0d 100644
--- a/nixpkgs/pkgs/development/tools/jd/default.nix
+++ b/nixpkgs/pkgs/development/tools/jd/default.nix
@@ -1,16 +1,16 @@
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "jd";
   version = "0.3.1";
-  rev = "2729b5af166cfd72bd953ef8959b456c4db940fc";
 
   goPackagePath = "github.com/tidwall/jd";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/tidwall/jd";
-    sha256 = "0dj4k38pf80dl77jns29vx2dj265s4ksg2q2s9n240b7b8z8mn5h";
+  src = fetchFromGitHub {
+    owner = "tidwall";
+    repo = "jd";
+    rev = "2729b5af166cfd72bd953ef8959b456c4db940fc";
+    sha256 = "sha256-sNiKPlpnASJs0gKLpyfRxQjZRN9JaCvPoQ0gd9GYRDY=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/jp/default.nix b/nixpkgs/pkgs/development/tools/jp/default.nix
index f1f5b37c10dc..ba78a4ce6bcc 100644
--- a/nixpkgs/pkgs/development/tools/jp/default.nix
+++ b/nixpkgs/pkgs/development/tools/jp/default.nix
@@ -1,18 +1,18 @@
-{ lib, buildGoPackage, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "jp";
-  version = "0.1.3";
-  rev = version;
-
-  goPackagePath = "github.com/jmespath/jp";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
-    inherit rev;
+    rev = version;
     owner = "jmespath";
     repo = "jp";
-    sha256 = "0fdbnihbd0kq56am3bmh2zrfk4fqjslcbm48malbgmpqw3a5nvpi";
+    hash = "sha256-a3WvLAdUZk+Y+L+opPDMBvdN5x5B6nAi/lL8JHJG/gY=";
   };
+
+  vendorSha256 = "sha256-K6ZNtART7tcVBH5myV6vKrKWfnwK8yTa6/KK4QLyr00=";
+
   meta = with lib; {
     description = "A command line interface to the JMESPath expression language for JSON";
     homepage = "https://github.com/jmespath/jp";
diff --git a/nixpkgs/pkgs/development/tools/jql/default.nix b/nixpkgs/pkgs/development/tools/jql/default.nix
index 732175edab9c..d7f557edfb01 100644
--- a/nixpkgs/pkgs/development/tools/jql/default.nix
+++ b/nixpkgs/pkgs/development/tools/jql/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "jql";
-  version = "3.1.1";
+  version = "3.1.3";
 
   src = fetchFromGitHub {
     owner = "yamafaktory";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-CntAxOsAaKkCvQanLZ4d99VEGrbsVM+IYOhUuimvjlA=";
+    sha256 = "sha256-kYAVgQa5NAfZ7EVzO/3fW3A5Zl8uaFXguvxBco8DfRY=";
   };
 
-  cargoSha256 = "sha256-mzHLAmm0wvF35ku+wg6QG/pKwIFjb22fOtBmMhgC0Ik=";
+  cargoSha256 = "sha256-Mz+1A7Wg7sh0pxg7umRym3UkXsMkRE0AQDTkt+e7l+s=";
 
   meta = with lib; {
     description = "A JSON Query Language CLI tool built with Rust";
diff --git a/nixpkgs/pkgs/development/tools/just/default.nix b/nixpkgs/pkgs/development/tools/just/default.nix
index 29694c08ed8d..c11d386d7464 100644
--- a/nixpkgs/pkgs/development/tools/just/default.nix
+++ b/nixpkgs/pkgs/development/tools/just/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "just";
-  version = "1.1.0";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "casey";
     repo = pname;
     rev = version;
-    sha256 = "sha256-hbBAbk0n80BbbIx81427bRz4x6enBsxJ0bHJKww44oc=";
+    sha256 = "sha256-hgXMWQ7UlGyeb/j7V/Uw4gZjk/r1hA7lMjVL8i8st7o=";
   };
 
-  cargoSha256 = "sha256-lZyFoOCWUE2ahU/lS+bIdrZXNm/sFEfLsQm1BxREg5w=";
+  cargoSha256 = "sha256-QJruh4voCB/q7xh5I6XnVtKA4Jbn9U84Mt2pHte7Kog=";
 
   nativeBuildInputs = [ installShellFiles ];
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
diff --git a/nixpkgs/pkgs/development/tools/k6/default.nix b/nixpkgs/pkgs/development/tools/k6/default.nix
index d50062e4bdbb..66ff4a8b2df4 100644
--- a/nixpkgs/pkgs/development/tools/k6/default.nix
+++ b/nixpkgs/pkgs/development/tools/k6/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "k6";
-  version = "0.36.0";
+  version = "0.37.0";
 
   src = fetchFromGitHub {
     owner = "grafana";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-yWEh0sPMGe6mNcLKhbmJEUCHzZKFGMcTRNQrHgiQ+BQ=";
+    sha256 = "sha256-5pxOg+pwa2VrEWinDadx2ZFYXiQgochbU4bCkJEezQw=";
   };
 
   subPackages = [ "./" ];
diff --git a/nixpkgs/pkgs/development/tools/kaf/default.nix b/nixpkgs/pkgs/development/tools/kaf/default.nix
new file mode 100644
index 000000000000..feb76c2a0b25
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/kaf/default.nix
@@ -0,0 +1,25 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "kaf";
+  version = "0.1.44";
+
+  src = fetchFromGitHub {
+    owner = "birdayz";
+    repo = "kaf";
+    rev = "v${version}";
+    sha256 = "sha256-gKg/iESUXS6l3v5ovdvvrfpvaUzahPtqh0/DH5OpXoY=";
+  };
+
+  vendorSha256 = "sha256-5WzREsQdcp9lelKUEXw+nHeemHBDsKrvRcG9v+qln/E=";
+
+  # Many tests require a running Kafka instance
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Modern CLI for Apache Kafka, written in Go";
+    homepage = "https://github.com/birdayz/kaf";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ zarelit ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/kcli/default.nix b/nixpkgs/pkgs/development/tools/kcli/default.nix
index 8f0aecba34d7..fc604a68ceea 100644
--- a/nixpkgs/pkgs/development/tools/kcli/default.nix
+++ b/nixpkgs/pkgs/development/tools/kcli/default.nix
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   vendorSha256 = "0zj2hls8m0l9xsfv680wiwq1g2qjdjslv2yx3yd4rzxdsv2wz09a";
 
-  doCheck = false;
-
   subPackages = [ "." ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/ko/default.nix b/nixpkgs/pkgs/development/tools/ko/default.nix
index a7562429db59..f7add96fbad9 100644
--- a/nixpkgs/pkgs/development/tools/ko/default.nix
+++ b/nixpkgs/pkgs/development/tools/ko/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "ko";
-  version = "0.10.0";
+  version = "0.11.2";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Xhe5WNHQ+Oa1m/6VwC3zCwWzXRc1spSfPp4jySsOcuU=";
+    sha256 = "sha256-BwK49dSt3D2BrYvluDOBYIH5qEt59HC1hssHl1D2Heg=";
   };
   vendorSha256 = null;
 
@@ -40,8 +40,9 @@ buildGoModule rec {
 
   postInstall = ''
     installShellCompletion --cmd ko \
-      --bash <($out/bin/ko completion) \
-      --zsh <($out/bin/ko completion --zsh)
+      --bash <($out/bin/ko completion bash) \
+      --fish <($out/bin/ko completion fish) \
+      --zsh <($out/bin/ko completion zsh)
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/ktlint/default.nix b/nixpkgs/pkgs/development/tools/ktlint/default.nix
index 73fdb3dff8f2..ad41cf6e4af7 100644
--- a/nixpkgs/pkgs/development/tools/ktlint/default.nix
+++ b/nixpkgs/pkgs/development/tools/ktlint/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ktlint";
-  version = "0.44.0";
+  version = "0.45.1";
 
   src = fetchurl {
     url = "https://github.com/pinterest/ktlint/releases/download/${version}/ktlint";
-    sha256 = "1l2pmvqw8rjl2xmsdp31j8015clshab6p81i3i05h40rjjz57mvr";
+    sha256 = "sha256-fEMLZ8lV1RNFlf5ApfJOG9jI8JumpgP673+XSOWgsKI=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/development/tools/kube-linter/default.nix b/nixpkgs/pkgs/development/tools/kube-linter/default.nix
index 1b94b956293d..d234e458c184 100644
--- a/nixpkgs/pkgs/development/tools/kube-linter/default.nix
+++ b/nixpkgs/pkgs/development/tools/kube-linter/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kube-linter";
-  version = "0.2.5";
+  version = "0.2.6";
 
   src = fetchFromGitHub {
     owner = "stackrox";
     repo = pname;
     rev = "${version}";
-    sha256 = "GUDrUEBorV4/ZqPnfNYcsbW4Zr1LpS3yL+4OgxFbTOk=";
+    sha256 = "nBF/AX4hgZxIj9/RYowpHX1eAJMMhvU7wunvEXWnO80=";
   };
 
-  vendorSha256 = "xGghTP9thICOGIfc5VPJK06DeXfLiTckwa4nXv83/P8=";
+  vendorSha256 = "HJW28BZ9qFLtdH1qdW8/K4TzHA2ptekXaMF0XnMKbOY=";
 
   ldflags = [
     "-s" "-w" "-X golang.stackrox.io/kube-linter/internal/version.version=${version}"
diff --git a/nixpkgs/pkgs/development/tools/kustomize/default.nix b/nixpkgs/pkgs/development/tools/kustomize/default.nix
index ef258b736c95..dcaafe676e9a 100644
--- a/nixpkgs/pkgs/development/tools/kustomize/default.nix
+++ b/nixpkgs/pkgs/development/tools/kustomize/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "kustomize";
-  version = "4.5.2";
+  version = "4.5.3";
   # rev is the commit of the tag, mainly for kustomize version command output
   rev = "b2d65ddc98e09187a8e38adc27c30bab078c1dbf";
 
@@ -17,7 +17,7 @@ buildGoModule rec {
     owner = "kubernetes-sigs";
     repo = pname;
     rev = "kustomize/v${version}";
-    sha256 = "sha256-l24uKKcTt5b7V/IHjJNMtVce55CEGdZVYlCzjUnEp1A=";
+    sha256 = "sha256-sy429uTTYvjnweZlsuolBamcggRXmaR8uxD043GUIQE=";
   };
 
   doCheck = true;
@@ -25,7 +25,7 @@ buildGoModule rec {
   # avoid finding test and development commands
   sourceRoot = "source/kustomize";
 
-  vendorSha256 = "sha256-GR1ohesxjxpMl1B7hWtBUAWWU8X7wHPAKdMoGM5L/VQ=";
+  vendorSha256 = "sha256-5kMMSr+YyuoASgW+qzkyO4CcDHFFANcsAZTUqHX5nGk=";
 
   meta = with lib; {
     description = "Customization of kubernetes YAML configurations";
diff --git a/nixpkgs/pkgs/development/tools/lazygit/default.nix b/nixpkgs/pkgs/development/tools/lazygit/default.nix
index 1902d9e969c1..4dca5d98e0b6 100644
--- a/nixpkgs/pkgs/development/tools/lazygit/default.nix
+++ b/nixpkgs/pkgs/development/tools/lazygit/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "lazygit";
-  version = "0.33";
+  version = "0.34";
 
   src = fetchFromGitHub {
     owner = "jesseduffield";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ltkBzhlxgNzioSBnlkBu9UtBHZlxFtnYlUhg/+lV0gc=";
+    sha256 = "sha256-AXbbgNP10r3BVRXg9R8Ssd8yORCcQwaGRuHV6yXz5i0=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/development/tools/license_finder/Gemfile b/nixpkgs/pkgs/development/tools/license_finder/Gemfile
new file mode 100644
index 000000000000..0a936674240b
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/license_finder/Gemfile
@@ -0,0 +1,2 @@
+source 'https://rubygems.org'
+gem 'license_finder'
diff --git a/nixpkgs/pkgs/development/tools/license_finder/Gemfile.lock b/nixpkgs/pkgs/development/tools/license_finder/Gemfile.lock
new file mode 100644
index 000000000000..9adea6fc73ff
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/license_finder/Gemfile.lock
@@ -0,0 +1,26 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    license_finder (7.0.1)
+      bundler
+      rubyzip (>= 1, < 3)
+      thor (~> 1.2)
+      tomlrb (>= 1.3, < 2.1)
+      with_env (= 1.1.0)
+      xml-simple (~> 1.1.9)
+    rexml (3.2.5)
+    rubyzip (2.3.2)
+    thor (1.2.1)
+    tomlrb (2.0.1)
+    with_env (1.1.0)
+    xml-simple (1.1.9)
+      rexml
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  license_finder
+
+BUNDLED WITH
+   2.1.4
diff --git a/nixpkgs/pkgs/development/tools/license_finder/default.nix b/nixpkgs/pkgs/development/tools/license_finder/default.nix
new file mode 100644
index 000000000000..954e2dcd5183
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/license_finder/default.nix
@@ -0,0 +1,19 @@
+{ lib, bundlerEnv, bundlerUpdateScript, ruby }:
+
+bundlerEnv {
+  pname = "license_finder";
+  version = "7.0.1";
+
+  inherit ruby;
+  gemdir = ./.;
+
+  passthru.updateScript = bundlerUpdateScript "license_finder";
+
+  meta = with lib; {
+    description = "Find licenses for your project's dependencies";
+    homepage = "https://github.com/pivotal/licensefinder";
+    license = licenses.mit;
+    maintainers = with maintainers; [ wolfangaukang ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/license_finder/gemset.nix b/nixpkgs/pkgs/development/tools/license_finder/gemset.nix
new file mode 100644
index 000000000000..89becfc04d35
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/license_finder/gemset.nix
@@ -0,0 +1,74 @@
+{
+  license_finder = {
+    dependencies = ["rubyzip" "thor" "tomlrb" "with_env" "xml-simple"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sig4ifxzvcz3fwjnz93dpv61v6sxpmlknj5f8n112ragrbcj8hb";
+      type = "gem";
+    };
+    version = "7.0.1";
+  };
+  rexml = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53";
+      type = "gem";
+    };
+    version = "3.2.5";
+  };
+  rubyzip = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0grps9197qyxakbpw02pda59v45lfgbgiyw48i0mq9f2bn9y6mrz";
+      type = "gem";
+    };
+    version = "2.3.2";
+  };
+  thor = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0inl77jh4ia03jw3iqm5ipr76ghal3hyjrd6r8zqsswwvi9j2xdi";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  tomlrb = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0a83cb5xpyzlr651d46rk5xgq37s46hs9nfqy9baawzs31hm9k2g";
+      type = "gem";
+    };
+    version = "2.0.1";
+  };
+  with_env = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1r5ns064mbb99hf1dyxsk9183hznc5i7mn3bi86zka6dlvqf9csh";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  xml-simple = {
+    dependencies = ["rexml"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pb9plyl71mdbjr4kllfy53qx6g68ryxblmnq9dilvy837jk24fj";
+      type = "gem";
+    };
+    version = "1.1.9";
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/literate-programming/Literate/default.nix b/nixpkgs/pkgs/development/tools/literate-programming/Literate/default.nix
index 88b2f63fd5a5..1582ca874026 100644
--- a/nixpkgs/pkgs/development/tools/literate-programming/Literate/default.nix
+++ b/nixpkgs/pkgs/development/tools/literate-programming/Literate/default.nix
@@ -1,13 +1,15 @@
-{ lib, stdenv, fetchgit, ldc, dub }:
+{ lib, stdenv, fetchFromGitHub, ldc, dub }:
 
 stdenv.mkDerivation {
   pname = "Literate";
   version = "unstable-2021-01-22";
 
-  src = fetchgit {
-    url = "https://github.com/zyedidia/Literate.git";
+  src = fetchFromGitHub {
+    owner = "zyedidia";
+    repo = "Literate";
     rev = "7004dffec0cff3068828514eca72172274fd3f7d";
-    sha256 = "0x4xgrdskybaa7ssv81grmwyc1k167v3nwj320jvp5l59xxlbcvs";
+    sha256 = "sha256-erNFe0+FlrslEENyO/YxYQbmec0voK31UWr5qVt+nXQ=";
+    fetchSubmodules = true;
   };
 
   buildInputs = [ ldc dub ];
diff --git a/nixpkgs/pkgs/development/tools/misc/act/default.nix b/nixpkgs/pkgs/development/tools/misc/act/default.nix
index 43bcaa57309d..10fc62fdeffa 100644
--- a/nixpkgs/pkgs/development/tools/misc/act/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/act/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "act";
-  version = "0.2.25";
+  version = "0.2.26";
 
   src = fetchFromGitHub {
     owner = "nektos";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Eo5uWBLriYa7tLpPMa34+l6BYQe9useL1tN9gqUSt0k=";
+    sha256 = "sha256-DBiBJf4hEjn/sJXjAvsiARWz66sDBIz0hFEdCgS8D4g=";
   };
 
-  vendorSha256 = "sha256-1v87WcQoVyTyCStiMAoThidIMRqJwdsYNF987kQp5YM=";
+  vendorSha256 = "sha256-5RvFdtEZEQBWvkUKIcV/A+tCSy9V9DJj4HujGQgTxq0=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/misc/blackfire/php-probe.nix b/nixpkgs/pkgs/development/tools/misc/blackfire/php-probe.nix
index c66c2a5bfd8e..cffc73b2dce1 100644
--- a/nixpkgs/pkgs/development/tools/misc/blackfire/php-probe.nix
+++ b/nixpkgs/pkgs/development/tools/misc/blackfire/php-probe.nix
@@ -19,11 +19,11 @@ let
   }.${lib.versions.majorMinor php.version} or (throw "Unsupported PHP version.");
 in stdenv.mkDerivation rec {
   pname = "php-blackfire";
-  version = "1.74.0";
+  version = "1.75.0";
 
   src = fetchurl {
     url = "https://packages.blackfire.io/debian/pool/any/main/b/blackfire-php/blackfire-php_${version}_amd64.deb";
-    sha256 = "79uOQmTovGbY0NLpc3m/xFULS899u2XdR16qd8L4FLw=";
+    sha256 = "MsmQJSEr1GOqzw2jq77ZJn13AYqMIGY+yez6dMxyOMo=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/tools/misc/cgdb/default.nix b/nixpkgs/pkgs/development/tools/misc/cgdb/default.nix
index e8136be0eb40..62d26c09e514 100644
--- a/nixpkgs/pkgs/development/tools/misc/cgdb/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/cgdb/default.nix
@@ -16,8 +16,6 @@ stdenv.mkDerivation rec {
 
     homepage = "https://cgdb.github.io/";
 
-    repositories.git = "git://github.com/cgdb/cgdb.git";
-
     license = licenses.gpl2Plus;
 
     platforms = with platforms; linux ++ cygwin;
diff --git a/nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix b/nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix
index 6a372fb40f19..4d39387991b1 100644
--- a/nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix
@@ -2,18 +2,18 @@
 
 buildGraalvmNativeImage rec {
   pname = "clojure-lsp";
-  version = "2022.02.23-12.12.12";
+  version = "2022.03.26-18.47.08";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "sha256-PfO1G66Z3zQ+Hyjb6J0bomsT8juQURwF2mPKJY5auMw=";
+    sha256 = "sha256-tlI4h9/DTc3JwqCM58YC5x4FDpuPm7Qeik3PJe64nVA=";
   };
 
   jar = fetchurl {
     url = "https://github.com/clojure-lsp/clojure-lsp/releases/download/${version}/clojure-lsp-standalone.jar";
-    sha256 = "sha256-f8bEALl9j0aDkKZtThLTseqibeYIUeOx4ulelPWQkoo=";
+    sha256 = "4973f5cf45f0b8120206d057d88d6a7fca03e071c8ad1ecd7229db46a0604ed2";
   };
 
   extraNativeImageBuildArgs = [
@@ -42,9 +42,9 @@ buildGraalvmNativeImage rec {
 
     latest_version=$(curl -s https://api.github.com/repos/clojure-lsp/clojure-lsp/releases/latest | jq --raw-output .tag_name)
 
-    old_jar_hash=$(nix-instantiate --eval --strict -A "clojure-lsp-standalone.jar.drvAttrs.outputHash" | tr -d '"' | sed -re 's|[+]|\\&|g')
+    old_jar_hash=$(nix-instantiate --eval --strict -A "clojure-lsp.jar.drvAttrs.outputHash" | tr -d '"' | sed -re 's|[+]|\\&|g')
 
-    curl -o clojure-lsp.jar -sL https://github.com/clojure-lsp/clojure-lsp/releases/download/$latest_version/clojure-lsp-standalone.jar
+    curl -o clojure-lsp-standalone.jar -sL https://github.com/clojure-lsp/clojure-lsp/releases/download/$latest_version/clojure-lsp-standalone.jar
     new_jar_hash=$(nix-hash --flat --type sha256 clojure-lsp-standalone.jar | sed -re 's|[+]|\\&|g')
 
     rm -f clojure-lsp-standalone.jar
diff --git a/nixpkgs/pkgs/development/tools/misc/d-feet/default.nix b/nixpkgs/pkgs/development/tools/misc/d-feet/default.nix
index 3db895f4de01..a394ee615773 100644
--- a/nixpkgs/pkgs/development/tools/misc/d-feet/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/d-feet/default.nix
@@ -1,6 +1,7 @@
 { lib
 , pkg-config
 , fetchurl
+, fetchpatch
 , meson
 , ninja
 , glib
@@ -25,6 +26,17 @@ python3.pkgs.buildPythonApplication rec {
     sha256 = "hzPOS5qaVOwYWx2Fv02p2dEQUogqiAdg/2D5d5stHMs=";
   };
 
+  patches = [
+    # Fix build with meson 0.61
+    # data/meson.build:15:0: ERROR: Function does not take positional arguments.
+    # data/meson.build:27:0: ERROR: Function does not take positional arguments.
+    # Patch taken from https://gitlab.gnome.org/GNOME/d-feet/-/merge_requests/32
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/d-feet/-/commit/05465d486afdba116dbc22fc22c1e6573aea4f22.patch";
+      sha256 = "sFI3nd0YE/deGws/YcTpzC/em9QNgicyb4j7cTfOdhY=";
+    })
+  ];
+
   nativeBuildInputs = [
     gettext
     gobject-introspection
diff --git a/nixpkgs/pkgs/development/tools/misc/gdb/default.nix b/nixpkgs/pkgs/development/tools/misc/gdb/default.nix
index 5bb5bc0652fe..f21808b1bf70 100644
--- a/nixpkgs/pkgs/development/tools/misc/gdb/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/gdb/default.nix
@@ -37,6 +37,8 @@ stdenv.mkDerivation rec {
   postPatch = if stdenv.isDarwin then ''
     substituteInPlace gdb/darwin-nat.c \
       --replace '#include "bfd/mach-o.h"' '#include "mach-o.h"'
+  '' else if stdenv.hostPlatform.isMusl then ''
+    substituteInPlace sim/ppc/emul_unix.c --replace sys/termios.h termios.h
   '' else null;
 
   patches = [
@@ -50,7 +52,11 @@ stdenv.mkDerivation rec {
     })
   ] ++ lib.optionals stdenv.isDarwin [
     ./darwin-target-match.patch
-  ];
+  ] ++ lib.optional stdenv.hostPlatform.isMusl (fetchpatch {
+    name = "musl-fix-pagesize-page_size.patch";
+    url = "https://sourceware.org/git/?p=binutils-gdb.git;a=patch;h=fd0975b96b16d96010dce439af9620d3dfb65426";
+    hash = "sha256-M3U7uIIFJnYu0g8/sMLJPhm02q7cGOi6pLjgsUUjeKI=";
+  });
 
   nativeBuildInputs = [ pkg-config texinfo perl setupDebugInfoDirs ];
 
diff --git a/nixpkgs/pkgs/development/tools/misc/gef/default.nix b/nixpkgs/pkgs/development/tools/misc/gef/default.nix
new file mode 100644
index 000000000000..0352ebc7cf32
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/misc/gef/default.nix
@@ -0,0 +1,77 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, makeWrapper
+, gdb
+, python3
+, file
+, ps
+, git
+, coreutils
+}:
+
+let
+  pythonPath = with python3.pkgs; makePythonPath [
+    keystone-engine
+    unicorn
+    capstone
+    ropper
+  ];
+
+in stdenv.mkDerivation rec {
+  pname = "gef";
+  version = "2022.01";
+
+  src = fetchFromGitHub {
+    owner = "hugsy";
+    repo = "gef";
+    rev = version;
+    sha256 = "sha256-Ot0OYMbXFGCzJdmDHD+LoZRDShCbYJ+IGzLTcU2Rfd4=";
+  };
+
+  dontBuild = true;
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    mkdir -p $out/share/gef
+    cp gef.py $out/share/gef
+    makeWrapper ${gdb}/bin/gdb $out/bin/gef \
+      --add-flags "-q -x $out/share/gef/gef.py" \
+      --set NIX_PYTHONPATH ${pythonPath} \
+      --prefix PATH : ${lib.makeBinPath [ python3 file ps ]}
+  '';
+
+  checkInputs = [
+    gdb
+    file
+    ps
+    git
+    python3
+    python3.pkgs.pytest
+    python3.pkgs.pytest-xdist
+    python3.pkgs.keystone-engine
+    python3.pkgs.unicorn
+    python3.pkgs.capstone
+    python3.pkgs.ropper
+  ];
+  checkPhase = ''
+    # Skip some tests that require network access.
+    sed -i '/def test_cmd_shellcode_get(self):/i \ \ \ \ @unittest.skip(reason="not available in sandbox")' tests/runtests.py
+    sed -i '/def test_cmd_shellcode_search(self):/i \ \ \ \ @unittest.skip(reason="not available in sandbox")' tests/runtests.py
+
+    # Patch the path to /bin/ls.
+    sed -i 's+/bin/ls+${coreutils}/bin/ls+g' tests/runtests.py
+
+    # Run the tests.
+    make test
+  '';
+
+  meta = with lib; {
+    description = "A modern experience for GDB with advanced debugging features for exploit developers & reverse engineers";
+    homepage = "https://github.com/hugsy/gef";
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ freax13 ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/misc/grcov/default.nix b/nixpkgs/pkgs/development/tools/misc/grcov/default.nix
index 45e1ba8e4bc0..04ed4a1046b7 100644
--- a/nixpkgs/pkgs/development/tools/misc/grcov/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/grcov/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "grcov";
-  version = "0.8.7";
+  version = "0.8.8";
 
   src = fetchFromGitHub {
     owner = "mozilla";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-4McF9tLIjDCftyGI29pm/LnTUBVWG+pY5z+mGFKySQM=";
+    sha256 = "sha256-OITtZdI9d5zQVI02s5gJF9lWCjZZgE7YZRfFROU040o=";
   };
 
-  cargoSha256 = "sha256-/filuQ4AWsKVIsXbDX7S1yhCArLNTZpOMEn3ID6WuMo=";
+  cargoSha256 = "sha256-AZVkS/huEsA1wdVB/xUGCCjY5AWJxaU1DD/OlEURw/c=";
 
   # tests do not find grcov path correctly
   checkFlags = let
diff --git a/nixpkgs/pkgs/development/tools/misc/lit/default.nix b/nixpkgs/pkgs/development/tools/misc/lit/default.nix
index 8a36c52e7ae3..aa991e8ea978 100644
--- a/nixpkgs/pkgs/development/tools/misc/lit/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/lit/default.nix
@@ -2,11 +2,11 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "lit";
-  version = "13.0.0";
+  version = "14.0.0";
 
   src = python3.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "4da976f3d114e4ba6ba06cbe660ce1393230f4519c4df15b90bc1840f00e4195";
+    sha256 = "45e08ce87b0ea56ab632aa02fa857418a5dd241a711c7c756878b73a130c3efe";
   };
 
   passthru = {
diff --git a/nixpkgs/pkgs/development/tools/misc/nrfutil/default.nix b/nixpkgs/pkgs/development/tools/misc/nrfutil/default.nix
index 848afb5b2ca8..7ffd92451bf5 100644
--- a/nixpkgs/pkgs/development/tools/misc/nrfutil/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/nrfutil/default.nix
@@ -68,5 +68,7 @@ buildPythonApplication rec {
     license = licenses.unfreeRedistributable;
     platforms = platforms.unix;
     maintainers = with maintainers; [ gebner ];
+    # libusb1 1.9.3 uses setuptools' 2to3 translation feature, which has been removed in setuptools 58
+    broken = true;
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/misc/strace/default.nix b/nixpkgs/pkgs/development/tools/misc/strace/default.nix
index 865784171786..1fd8db8c6e2e 100644
--- a/nixpkgs/pkgs/development/tools/misc/strace/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/strace/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "strace";
-  version = "5.16";
+  version = "5.17";
 
   src = fetchurl {
     url = "https://strace.io/files/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-3H2yMP8+V8JJgwupSsqyuGLaH8qsVUF+m4UEGoM8ooU=";
+    sha256 = "sha256-X7KY29EzH9HhvJTFwyOVhg03YQG4fGzT0bqfmqFcFh8=";
   };
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
diff --git a/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix b/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix
index de928d35fa0e..e85e014368af 100644
--- a/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/terraform-ls/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "terraform-ls";
-  version = "0.25.2";
+  version = "0.26.0";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-dFmXROqh1HYPthzmOE07oyZglaQyx7JqxqYDlLpysrM=";
+    sha256 = "sha256-Xq9HojFjUrdThXvQ4M8o4LLmxopVErnN3WGUgI79BCw=";
   };
-  vendorSha256 = "sha256-5g/s8WDzxobORFY12YdDQ6rDmr9gQzViv1FFrVwrVIE=";
+  vendorSha256 = "sha256-iSgK+FOD9olVN4bR2jmtWndaRHrh9pfo/42COTiIh9c=";
 
   ldflags = [ "-s" "-w" "-X main.version=v${version}" "-X main.prerelease=" ];
 
diff --git a/nixpkgs/pkgs/development/tools/misc/terraformer/default.nix b/nixpkgs/pkgs/development/tools/misc/terraformer/default.nix
index d4609db2d34e..ccd7c703366a 100644
--- a/nixpkgs/pkgs/development/tools/misc/terraformer/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/terraformer/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "terraformer";
-  version = "0.8.18";
+  version = "0.8.19";
 
   src = fetchFromGitHub {
     owner = "GoogleCloudPlatform";
     repo = pname;
     rev = version;
-    sha256 = "sha256-F+OmeXCb0Q2Qqu0T+dqdxvUYszg4ED/zoayH9iO6PCM=";
+    sha256 = "sha256-h6hqgAHyMNnE7AXNPTUM2srgHW9WGcGmO8d30U2IbSo=";
   };
 
-  vendorSha256 = "sha256-fCovSA3ZbKn9DrDlb/SXoe8iQTTEAiiDZFSpHUPmxzo=";
+  vendorSha256 = "sha256-bT6+fH0VJfcgehiiLIDTEYyWgVHIMUGuRaebzm2st60=";
 
   subPackages = [ "." ];
 
diff --git a/nixpkgs/pkgs/development/tools/misc/unused/default.nix b/nixpkgs/pkgs/development/tools/misc/unused/default.nix
index 4c3872377142..de12e527a295 100644
--- a/nixpkgs/pkgs/development/tools/misc/unused/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/unused/default.nix
@@ -1,18 +1,18 @@
 { lib, fetchFromGitHub, rustPlatform, cmake }:
 rustPlatform.buildRustPackage rec {
   pname = "unused";
-  version = "0.2.3";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "unused-code";
     repo = pname;
     rev = version;
-    sha256 = "sha256-1R50oCVvk+XJG4EhLusY1aY6RjWNeZvlIDS8PJXIA7o=";
+    sha256 = "sha256-+1M8dUfjjrT4llS0C6WYDyNxJ9QZ5s9v+W185TbgwMw=";
   };
 
   nativeBuildInputs = [ cmake ];
 
-  cargoSha256 = "sha256-PjCR+kHlgPWkTkhN0idotGmLSe/FaKkgI9AMEJtoRz8=";
+  cargoSha256 = "sha256-hCtkR20+xs1UHZP7oJVpJACVGcMQLQmSS1QE2tmIVhs=";
 
   meta = with lib; {
     description = "A tool to identify potentially unused code";
diff --git a/nixpkgs/pkgs/development/tools/misc/ycmd/default.nix b/nixpkgs/pkgs/development/tools/misc/ycmd/default.nix
index f77ced3a2ada..5853d40eceb1 100644
--- a/nixpkgs/pkgs/development/tools/misc/ycmd/default.nix
+++ b/nixpkgs/pkgs/development/tools/misc/ycmd/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchgit, cmake, llvmPackages, boost, python
+{ stdenv, lib, fetchFromGitHub, cmake, llvmPackages, boost, python
 , withGocode ? true, gocode
 , withGodef ? true, godef
 , withGotools? true, gotools
@@ -12,10 +12,12 @@ stdenv.mkDerivation {
   disabled = !python.isPy3k;
 
   # required for third_party directory creation
-  src = fetchgit {
-    url = "https://github.com/Valloric/ycmd.git";
+  src = fetchFromGitHub {
+    owner = "Valloric";
+    repo = "ycmd";
     rev = "9a6b86e3a156066335b678c328f226229746bae5";
-    sha256 = "1c5axdngxaxj5vc6lr8sxb99mr5adsm1dnjckaxc23kq78pc8cn7";
+    sha256 = "sha256-xzLELjp4DsG6mkzaFqpuquSa0uoaZWrYLrKr/mzrqrA=";
+    fetchSubmodules = true;
   };
 
   nativeBuildInputs = [ cmake ]
diff --git a/nixpkgs/pkgs/development/tools/ocaml/cppo/default.nix b/nixpkgs/pkgs/development/tools/ocaml/cppo/default.nix
index 55e9692a0a3b..3134c310c453 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/cppo/default.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/cppo/default.nix
@@ -61,7 +61,7 @@ stdenv.mkDerivation {
   makeFlags = [ "PREFIX=$(out)" ];
 
   preBuild = ''
-    mkdir $out/bin
+    mkdir -p $out/bin
   '';
 
 }
diff --git a/nixpkgs/pkgs/development/tools/ocaml/ocamlbuild/default.nix b/nixpkgs/pkgs/development/tools/ocaml/ocamlbuild/default.nix
index 7f53ba9203d9..2caf6c67857c 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/ocamlbuild/default.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/ocamlbuild/default.nix
@@ -1,13 +1,13 @@
 { lib, stdenv, fetchFromGitHub, ocaml, findlib }:
 stdenv.mkDerivation rec {
   pname = "ocaml${ocaml.version}-ocamlbuild";
-  version = "0.14.0";
+  version = "0.14.1";
 
   src = fetchFromGitHub {
     owner = "ocaml";
     repo = "ocamlbuild";
     rev = version;
-    sha256 = "1hb5mcdz4wv7sh1pj7dq9q4fgz5h3zg7frpiya6s8zd3ypwzq0kh";
+    sha256 = "sha256-ZL0BwOCWTNDjNkrwNAmzHjHF1Rpg3CUuV4lSqcwDqgI=";
   };
 
   createFindlibDestdir = true;
diff --git a/nixpkgs/pkgs/development/tools/ocaml/ocamlscript/Makefile.patch b/nixpkgs/pkgs/development/tools/ocaml/ocamlscript/Makefile.patch
index 4fc887c070d7..e26993f760ae 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/ocamlscript/Makefile.patch
+++ b/nixpkgs/pkgs/development/tools/ocaml/ocamlscript/Makefile.patch
@@ -1,42 +1,23 @@
---- a/Makefile	2012-02-04 01:24:21.000000000 +0000
-+++ b/Makefile	2014-10-29 14:42:08.690188302 +0000
-@@ -4,6 +4,8 @@
-   version.ml pipeline.mli pipeline.ml common.mli common.ml \
-   utils.mli utils.ml ocaml.mli ocaml.ml
- 
-+CAMLP4 := $(shell ocamlfind query camlp4)
-+
- STDBIN = $(shell dirname `which ocamlfind`)
- ifndef PREFIX
-   PREFIX = $(shell dirname $(STDBIN))
-@@ -15,7 +17,7 @@
+diff --git a/Makefile b/Makefile
+index 894e94d..9adc44b 100644
+--- a/Makefile
++++ b/Makefile
+@@ -17,7 +17,7 @@ ifndef BINDIR
  endif
  export BINDIR
  
 -PACKS = unix str
 +PACKS = unix str findlib
- PP = camlp4o -I . -parser pa_tryfinally.cmo -parser pa_opt.cmo
- export PP
- 
-@@ -36,11 +38,11 @@
+ # PP = camlp4o -I . -parser pa_opt.cmo
+ # export PP
  
- common: version.ml
- 	ocamlc -pp 'camlp4orf -loc _loc' -c \
--		-I +camlp4 pa_opt310.ml && \
-+		-I $(CAMLP4) pa_opt310.ml && \
- 		cp pa_opt310.cmo pa_opt.cmo && \
- 		cp pa_opt310.cmi pa_opt.cmi
- 	ocamlc -pp 'camlp4orf -loc _loc' -c \
--		-I +camlp4 pa_tryfinally310.ml && \
-+		-I $(CAMLP4) pa_tryfinally310.ml && \
- 		cp pa_tryfinally310.cmo pa_tryfinally.cmo && \
- 		cp pa_tryfinally310.cmi pa_tryfinally.cmi
- 
---- a/main.ml	2014-11-08 09:05:12.516401313 +0000
-+++ b/main.ml	2014-11-08 09:09:59.801311230 +0000
-@@ -250,9 +250,15 @@
- 			Sys.getcwd ())
-       | `File script_name -> "", get_dir script_name in
+diff --git a/main.ml b/main.ml
+index 288526a..b67c5e9 100644
+--- a/main.ml
++++ b/main.ml
+@@ -247,6 +247,11 @@ let write_header ~pos ~source ~source_option ~verbose ~prog_file lines =
+ 		    Sys.getcwd ())
+     | `File script_name -> "", get_dir script_name in
  
 +  let findlibdir =
 +    Filename.(
@@ -46,20 +27,24 @@
    let file, oc = Filename.open_temp_file "meta" ".ml" in
    fprintf oc "\
  #%i %S;;
+@@ -255,6 +260,7 @@ let () =
+   try Topdirs.dir_directory (Sys.getenv \"OCAML_TOPLEVEL_PATH\")
+   with Not_found -> ()
+ ;;
 +#directory \"%s\";;
  #use \"topfind\";;
  #require \"ocamlscript\";;
  Ocamlscript.Common.verbose := %s;;
-@@ -261,7 +267,7 @@
+@@ -263,7 +269,7 @@ Ocamlscript.Common.script_dir := %S;;
  open Ocamlscript;;
  open Utils;;
  #%i %S;;\n"
--     pos source verbose script_dir extra_args trash pos source;
-+     pos source findlibdir verbose script_dir extra_args trash pos source;
-   
+-    pos source verbose script_dir extra_args trash pos source;
++    pos source findlibdir verbose script_dir extra_args trash pos source;
+ 
    List.iter (output_line oc) lines;
  
-@@ -544,6 +550,7 @@
+@@ -550,6 +556,7 @@ let main () =
        exit compilation_status
  
  let _ =
@@ -67,4 +52,16 @@
    try main ()
    with Failure s ->
      eprintf "ocamlscript: %s\n%!" s;
- 
+diff --git a/ocaml.ml b/ocaml.ml
+index a1824c6..b8f287e 100644
+--- a/ocaml.ml
++++ b/ocaml.ml
+@@ -14,7 +14,7 @@ let ocamlfind = ref "ocamlfind"
+ let packs = ref []         (* findlib packages *)
+ let sources = ref []       (* extra sources *)
+ let use_ocamllex = ref false (* preprocess with ocamllex before camlp4 *)
+-let use_camlp4 = ref true  (* by default camlp4 is used *)
++let use_camlp4 = ref false  (* by default camlp4 is not used *)
+ let use_ocamlc = ref false (* by default we want native code *)
+ let use_ocamlfind = ref false (* used only if necessary *)
+ let revised = ref false    (* use this to use the revised syntax *)
diff --git a/nixpkgs/pkgs/development/tools/ocaml/ocamlscript/default.nix b/nixpkgs/pkgs/development/tools/ocaml/ocamlscript/default.nix
index 82a495b733b5..0b4b748f0586 100644
--- a/nixpkgs/pkgs/development/tools/ocaml/ocamlscript/default.nix
+++ b/nixpkgs/pkgs/development/tools/ocaml/ocamlscript/default.nix
@@ -1,26 +1,32 @@
-{lib, stdenv, fetchurl, ocaml, findlib, camlp4}:
+{ lib, stdenv, fetchFromGitHub, ocaml, findlib }:
+
+lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
+  "ocamlscript is not available for OCaml ${ocaml.version}"
+
 stdenv.mkDerivation rec {
-  pname = "ocamlscript";
-  version = "2.0.3";
-  src = fetchurl {
-    url = "https://mjambon.com/releases/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "1v1i24gijxwris8w4hi95r9swld6dm7jbry0zp72767a3g5ivlrd";
+  pname = "ocaml${ocaml.version}-ocamlscript";
+  version = "3.0.0";
+  src = fetchFromGitHub {
+    owner = "mjambon";
+    repo = "ocamlscript";
+    rev = "v${version}";
+    sha256 = "sha256:10xz8jknlmcgnf233nahd04q98ijnxpijhpvb8hl7sv94dgkvpql";
   };
 
-  propagatedBuildInputs = [ ocaml findlib camlp4 ];
+  propagatedBuildInputs = [ ocaml findlib ];
 
   patches = [ ./Makefile.patch ];
 
   buildFlags = [ "PREFIX=$(out)" ];
   installFlags = [ "PREFIX=$(out)" ];
 
-  preInstall = "mkdir $out/bin";
+  preInstall = "mkdir -p $out/bin";
   createFindlibDestdir = true;
 
   meta = with lib; {
-    homepage = "http://martin.jambon.free.fr/ocamlscript.html";
+    inherit (src.meta) homepage;
     license = licenses.boost;
-    platforms = ocaml.meta.platforms or [];
+    inherit (ocaml.meta) platforms;
     description = "Natively-compiled OCaml scripts";
     maintainers = [ maintainers.vbgl ];
   };
diff --git a/nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix b/nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix
index 1099e7cc800c..a3f3c7ce4403 100644
--- a/nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix
+++ b/nixpkgs/pkgs/development/tools/omnisharp-roslyn/default.nix
@@ -63,19 +63,24 @@ let
   '';
 
 in stdenv.mkDerivation rec {
-
   pname = "omnisharp-roslyn";
-  version = "1.38.0";
+  version = "1.38.1";
 
   src = fetchFromGitHub {
     owner = "OmniSharp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "00V+7Z1IoCSuSM0RClM81IslzCzC/FNYxHIKtnI9QDg=";
+    sha256 = "At8yfp5SDwPSoJM/WdQEBM4EG8q2SlHvp8qZIc9ftlE=";
   };
 
   nativeBuildInputs = [ makeWrapper dotnet-sdk ];
 
+  postPatch = ''
+    # Relax the version requirement
+    substituteInPlace global.json \
+      --replace '6.0.100' '${dotnet-sdk.version}'
+  '';
+
   buildPhase = ''
     runHook preBuild
 
diff --git a/nixpkgs/pkgs/development/tools/omnisharp-roslyn/deps.nix b/nixpkgs/pkgs/development/tools/omnisharp-roslyn/deps.nix
index 47af76fdd4ac..2744a81f7580 100644
--- a/nixpkgs/pkgs/development/tools/omnisharp-roslyn/deps.nix
+++ b/nixpkgs/pkgs/development/tools/omnisharp-roslyn/deps.nix
@@ -1,34 +1,34 @@
 { fetchurl }: [
   {
     pname = "cake.scripting.abstractions";
-    version = "0.8.1";
+    version = "0.9.0";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/cake.scripting.abstractions/0.8.1/cake.scripting.abstractions.0.8.1.nupkg";
-      sha256 = "0hrr7a3z1qddfm21pp21wr94q2f85w5kq1gavn5dylajiaqz505c";
+      url = "https://api.nuget.org/v3-flatcontainer/cake.scripting.abstractions/0.9.0/cake.scripting.abstractions.0.9.0.nupkg";
+      sha256 = "15nqr100crclha0lzgil25j1wn45517gb34059qypj05j8psfmjx";
     };
   }
   {
     pname = "cake.scripting.transport";
-    version = "0.8.1";
+    version = "0.9.0";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/cake.scripting.transport/0.8.1/cake.scripting.transport.0.8.1.nupkg";
-      sha256 = "0pfpgyr62r74s9h4i3kdxb92d21x14pmvwa1bfk3v2s5qdb3fxj8";
+      url = "https://api.nuget.org/v3-flatcontainer/cake.scripting.transport/0.9.0/cake.scripting.transport.0.9.0.nupkg";
+      sha256 = "1gpbvframx4dx4mzfh44cib6dfd26q7878vf073m9gv3y43sws7b";
     };
   }
   {
     pname = "dotnet.script.dependencymodel";
-    version = "1.1.0";
+    version = "1.3.1";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/dotnet.script.dependencymodel/1.1.0/dotnet.script.dependencymodel.1.1.0.nupkg";
-      sha256 = "0ly1jwvzndrhgvrwy7kagabyca40j8w9p5jvvfj4wlpffvxq44xl";
+      url = "https://api.nuget.org/v3-flatcontainer/dotnet.script.dependencymodel/1.3.1/dotnet.script.dependencymodel.1.3.1.nupkg";
+      sha256 = "0bi9rg6c77qav8mb0rbvs5pczf9f0ii8i11c9vyib53bv6fiifxp";
     };
   }
   {
     pname = "dotnet.script.dependencymodel.nuget";
-    version = "1.1.0";
+    version = "1.3.1";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/dotnet.script.dependencymodel.nuget/1.1.0/dotnet.script.dependencymodel.nuget.1.1.0.nupkg";
-      sha256 = "1kvjrm28jlfmcsy5fna8hy814chbcsc39ka12h8mgpdvjkr93njr";
+      url = "https://api.nuget.org/v3-flatcontainer/dotnet.script.dependencymodel.nuget/1.3.1/dotnet.script.dependencymodel.nuget.1.3.1.nupkg";
+      sha256 = "1v2xd0f2xrkgdznnjad5vhjan51k9qwi4piyg5vdz9mvywail51q";
     };
   }
   {
@@ -65,26 +65,26 @@
   }
   {
     pname = "microsoft.aspnetcore.app.runtime.win-arm64";
-    version = "6.0.0";
+    version = "6.0.3";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.aspnetcore.app.runtime.win-arm64/6.0.0/microsoft.aspnetcore.app.runtime.win-arm64.6.0.0.nupkg";
-      sha256 = "0k2011d3jbfblfm4qspwjyv5pg1xqac408vblshgmf4sz7hlyzb3";
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.aspnetcore.app.runtime.win-arm64/6.0.3/microsoft.aspnetcore.app.runtime.win-arm64.6.0.3.nupkg";
+      sha256 = "0wxnwqg43hd1hk07j1wqhfrwbjm5ly7bsy9z2jgy9zf8lya4qs9a";
     };
   }
   {
     pname = "microsoft.aspnetcore.app.runtime.win-x64";
-    version = "6.0.0";
+    version = "6.0.3";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.aspnetcore.app.runtime.win-x64/6.0.0/microsoft.aspnetcore.app.runtime.win-x64.6.0.0.nupkg";
-      sha256 = "1j8cn97swc67ly7ca7m05akczrswbg0gjsk7473vad6770ph79vm";
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.aspnetcore.app.runtime.win-x64/6.0.3/microsoft.aspnetcore.app.runtime.win-x64.6.0.3.nupkg";
+      sha256 = "11kv50kll3iq88kn40f5v5qlq8mydv6y6xz2cbzjw4aadd44njwq";
     };
   }
   {
     pname = "microsoft.aspnetcore.app.runtime.win-x86";
-    version = "6.0.0";
+    version = "6.0.3";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.aspnetcore.app.runtime.win-x86/6.0.0/microsoft.aspnetcore.app.runtime.win-x86.6.0.0.nupkg";
-      sha256 = "0l64rphcqjwlbsxvfc8albzs494xyhl3bgw6ll68h3imhml193k5";
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.aspnetcore.app.runtime.win-x86/6.0.3/microsoft.aspnetcore.app.runtime.win-x86.6.0.3.nupkg";
+      sha256 = "1c1qx840hwcp6a26dbx10f24pw9kzlvr15w3s1pakldygng5skwm";
     };
   }
   {
@@ -161,10 +161,10 @@
   }
   {
     pname = "microsoft.codeanalysis.analyzers";
-    version = "3.3.2";
+    version = "3.3.3";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.codeanalysis.analyzers/3.3.2/microsoft.codeanalysis.analyzers.3.3.2.nupkg";
-      sha256 = "162vb5894zxps0cf5n9gc08an7gwybzz87allx3lsszvllr9ldx4";
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.codeanalysis.analyzers/3.3.3/microsoft.codeanalysis.analyzers.3.3.3.nupkg";
+      sha256 = "09m4cpry8ivm9ga1abrxmvw16sslxhy2k5sl14zckhqb1j164im6";
     };
   }
   {
@@ -177,82 +177,82 @@
   }
   {
     pname = "microsoft.codeanalysis.common";
-    version = "4.0.0-6.21526.21";
+    version = "4.2.0-1.22074.8";
     src = fetchurl {
-      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.common/4.0.0-6.21526.21/microsoft.codeanalysis.common.4.0.0-6.21526.21.nupkg";
-      sha256 = "0sv5hxadf9pbclssc9kq2cnvfkrnb0f2f4gmqhp2cy4xkr9fjn92";
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.common/4.2.0-1.22074.8/microsoft.codeanalysis.common.4.2.0-1.22074.8.nupkg";
+      sha256 = "113232x2s787mm0bfvw0iiy5gl2wxs9jw6yrsxah2h7mg8q0s1h8";
     };
   }
   {
     pname = "microsoft.codeanalysis.csharp";
-    version = "4.0.0-6.21526.21";
+    version = "4.2.0-1.22074.8";
     src = fetchurl {
-      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.csharp/4.0.0-6.21526.21/microsoft.codeanalysis.csharp.4.0.0-6.21526.21.nupkg";
-      sha256 = "0cgp6rjw0lj3hr19sg5xvb5g29amrnng6y23rzcv5knw7a6zavs7";
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.csharp/4.2.0-1.22074.8/microsoft.codeanalysis.csharp.4.2.0-1.22074.8.nupkg";
+      sha256 = "017cljjhqyjxdp66f1l1pwxdi2qbfkbabih41frp93n0ips4qzkb";
     };
   }
   {
     pname = "microsoft.codeanalysis.csharp.features";
-    version = "4.0.0-6.21526.21";
+    version = "4.2.0-1.22074.8";
     src = fetchurl {
-      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.csharp.features/4.0.0-6.21526.21/microsoft.codeanalysis.csharp.features.4.0.0-6.21526.21.nupkg";
-      sha256 = "1a8xhrc4g2xlhmangcj0hv9872fw3zv1bcq52b54vczm6aym39pj";
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.csharp.features/4.2.0-1.22074.8/microsoft.codeanalysis.csharp.features.4.2.0-1.22074.8.nupkg";
+      sha256 = "04x7jdvlrg4syc3w3j2l3rz9icd6p64km3caaa93pb53k1wmhqb0";
     };
   }
   {
     pname = "microsoft.codeanalysis.csharp.scripting";
-    version = "4.0.0-6.21526.21";
+    version = "4.2.0-1.22074.8";
     src = fetchurl {
-      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.csharp.scripting/4.0.0-6.21526.21/microsoft.codeanalysis.csharp.scripting.4.0.0-6.21526.21.nupkg";
-      sha256 = "1mlf75v2nabfi9hwx9q2d14mcxlz3n8gdkczpyvvyfh3f72pl4x3";
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.csharp.scripting/4.2.0-1.22074.8/microsoft.codeanalysis.csharp.scripting.4.2.0-1.22074.8.nupkg";
+      sha256 = "1lbgxqwi07wfy1xsvqkd4lsw0rmbjkdnwzmzpzaa2lf9k07p9n3h";
     };
   }
   {
     pname = "microsoft.codeanalysis.csharp.workspaces";
-    version = "4.0.0-6.21526.21";
+    version = "4.2.0-1.22074.8";
     src = fetchurl {
-      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.csharp.workspaces/4.0.0-6.21526.21/microsoft.codeanalysis.csharp.workspaces.4.0.0-6.21526.21.nupkg";
-      sha256 = "04r6crnqml1c8mabsfrjzxc6bq6ndc9wwqwy8zsal80gwa54yj3v";
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.csharp.workspaces/4.2.0-1.22074.8/microsoft.codeanalysis.csharp.workspaces.4.2.0-1.22074.8.nupkg";
+      sha256 = "0jq0g8yi105vap8ssxir86ysmpj61gqh6lgfg2k0y1q67swganlw";
     };
   }
   {
     pname = "microsoft.codeanalysis.externalaccess.omnisharp";
-    version = "4.0.0-6.21526.21";
+    version = "4.2.0-1.22074.8";
     src = fetchurl {
-      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.externalaccess.omnisharp/4.0.0-6.21526.21/microsoft.codeanalysis.externalaccess.omnisharp.4.0.0-6.21526.21.nupkg";
-      sha256 = "1f7wp5829wz8nrafqwlr74p3xgw86591cl2d9dnhs8cp9p6y5ah9";
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.externalaccess.omnisharp/4.2.0-1.22074.8/microsoft.codeanalysis.externalaccess.omnisharp.4.2.0-1.22074.8.nupkg";
+      sha256 = "0wbbdqvzy0viz4vy6w1vpzjr7gpirkmvz5lcfvcvxv5ygjvxxi2w";
     };
   }
   {
     pname = "microsoft.codeanalysis.externalaccess.omnisharp.csharp";
-    version = "4.0.0-6.21526.21";
+    version = "4.2.0-1.22074.8";
     src = fetchurl {
-      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.externalaccess.omnisharp.csharp/4.0.0-6.21526.21/microsoft.codeanalysis.externalaccess.omnisharp.csharp.4.0.0-6.21526.21.nupkg";
-      sha256 = "1mc9h0svsqdrmr8bk1zgvjn1awc06mwhsp34q8grcb6n1w641hsp";
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.externalaccess.omnisharp.csharp/4.2.0-1.22074.8/microsoft.codeanalysis.externalaccess.omnisharp.csharp.4.2.0-1.22074.8.nupkg";
+      sha256 = "0k5lr898hywfcbkfyiz60c28ccd1dka9l07b3c6ccmbpc68ras1w";
     };
   }
   {
     pname = "microsoft.codeanalysis.features";
-    version = "4.0.0-6.21526.21";
+    version = "4.2.0-1.22074.8";
     src = fetchurl {
-      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.features/4.0.0-6.21526.21/microsoft.codeanalysis.features.4.0.0-6.21526.21.nupkg";
-      sha256 = "0bg93pzv89v0s74mn52ng4cz2ys2bk8z96b3ml06r9wa3piz08la";
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.features/4.2.0-1.22074.8/microsoft.codeanalysis.features.4.2.0-1.22074.8.nupkg";
+      sha256 = "1h0wsw4zg0f36ib3hjcc9y2y8jhaazwy17j2jv17363abbc3pf3l";
     };
   }
   {
     pname = "microsoft.codeanalysis.scripting.common";
-    version = "4.0.0-6.21526.21";
+    version = "4.2.0-1.22074.8";
     src = fetchurl {
-      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.scripting.common/4.0.0-6.21526.21/microsoft.codeanalysis.scripting.common.4.0.0-6.21526.21.nupkg";
-      sha256 = "0s5h10zj2qyfs0a09agdba06vc09pcq2wamr7pf8dx415vkjswyj";
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.scripting.common/4.2.0-1.22074.8/microsoft.codeanalysis.scripting.common.4.2.0-1.22074.8.nupkg";
+      sha256 = "06xzv4jlmz1q9v5r6d2ak734wwskld66maqp763nq3h62nhrxyxg";
     };
   }
   {
     pname = "microsoft.codeanalysis.workspaces.common";
-    version = "4.0.0-6.21526.21";
+    version = "4.2.0-1.22074.8";
     src = fetchurl {
-      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.workspaces.common/4.0.0-6.21526.21/microsoft.codeanalysis.workspaces.common.4.0.0-6.21526.21.nupkg";
-      sha256 = "0kp2l72zpfydfqv5cm8wqvk86wpgh946j8sw9hvhm3xwzflchl7b";
+      url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/d1622942-d16f-48e5-bc83-96f4539e7601/nuget/v3/flat2/microsoft.codeanalysis.workspaces.common/4.2.0-1.22074.8/microsoft.codeanalysis.workspaces.common.4.2.0-1.22074.8.nupkg";
+      sha256 = "09fivivc5s2p7iy5939gizs7kyvhn647sgjz55dbhmla5z774l80";
     };
   }
   {
@@ -265,18 +265,18 @@
   }
   {
     pname = "microsoft.csharp";
-    version = "4.3.0";
+    version = "4.7.0";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.csharp/4.3.0/microsoft.csharp.4.3.0.nupkg";
-      sha256 = "0gw297dgkh0al1zxvgvncqs0j15lsna9l1wpqas4rflmys440xvb";
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.csharp/4.7.0/microsoft.csharp.4.7.0.nupkg";
+      sha256 = "0gd67zlw554j098kabg887b5a6pq9kzavpa3jjy5w53ccjzjfy8j";
     };
   }
   {
     pname = "microsoft.diasymreader";
-    version = "1.3.0";
+    version = "1.4.0-beta2-21528-02";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.diasymreader/1.3.0/microsoft.diasymreader.1.3.0.nupkg";
-      sha256 = "1nswah83z3pfibaqmjd8y96fgnkrak8005qqinc8nqs5mpkf5pfb";
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.diasymreader/1.4.0-beta2-21528-02/microsoft.diasymreader.1.4.0-beta2-21528-02.nupkg";
+      sha256 = "14yfqjfmibyzipy0rdvknvy19brydac9llzrzj82wv6kwb8ap5x2";
     };
   }
   {
@@ -473,14 +473,6 @@
   }
   {
     pname = "microsoft.extensions.logging.abstractions";
-    version = "2.1.1";
-    src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.logging.abstractions/2.1.1/microsoft.extensions.logging.abstractions.2.1.1.nupkg";
-      sha256 = "1sgpwj0sa0ac7m5fnkb482mnch8fsv8hfbvk53c6lyh47s1xhdjg";
-    };
-  }
-  {
-    pname = "microsoft.extensions.logging.abstractions";
     version = "6.0.0";
     src = fetchurl {
       url = "https://api.nuget.org/v3-flatcontainer/microsoft.extensions.logging.abstractions/6.0.0/microsoft.extensions.logging.abstractions.6.0.0.nupkg";
@@ -552,51 +544,59 @@
     };
   }
   {
+    pname = "microsoft.net.stringtools";
+    version = "1.0.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.net.stringtools/1.0.0/microsoft.net.stringtools.1.0.0.nupkg";
+      sha256 = "06yakiyzgss399giivfx6xdrnfxqfsvy5fzm90scjanvandv0sdj";
+    };
+  }
+  {
     pname = "microsoft.netcore.app.host.win-arm64";
-    version = "6.0.0";
+    version = "6.0.3";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app.host.win-arm64/6.0.0/microsoft.netcore.app.host.win-arm64.6.0.0.nupkg";
-      sha256 = "1cbqpyha0ys7f6pm90mxmr0f070imhqfnn9kgvi3hqszbv9fv808";
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app.host.win-arm64/6.0.3/microsoft.netcore.app.host.win-arm64.6.0.3.nupkg";
+      sha256 = "1dhdr3ccaag3yb803qswkm1zvvwc9q6m3d9nvxvb5f8m94rsbhka";
     };
   }
   {
     pname = "microsoft.netcore.app.host.win-x64";
-    version = "6.0.0";
+    version = "6.0.3";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app.host.win-x64/6.0.0/microsoft.netcore.app.host.win-x64.6.0.0.nupkg";
-      sha256 = "1016ld3kg4dav2yxxh0i32cy0ixv7s0wl9czydbhkbs2d8669kfx";
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app.host.win-x64/6.0.3/microsoft.netcore.app.host.win-x64.6.0.3.nupkg";
+      sha256 = "1y428glba68s76icjzfl1v3p61pcz7rd78wybhabs8zq8w9cp2pj";
     };
   }
   {
     pname = "microsoft.netcore.app.host.win-x86";
-    version = "6.0.0";
+    version = "6.0.3";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app.host.win-x86/6.0.0/microsoft.netcore.app.host.win-x86.6.0.0.nupkg";
-      sha256 = "19fyd762mhgjw6zr65hms0gi32pg0iinsrzz88i00n75y6cmyg36";
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app.host.win-x86/6.0.3/microsoft.netcore.app.host.win-x86.6.0.3.nupkg";
+      sha256 = "0byyxiv8253zgymn0vwz8zxyasmhdwj891gxg3ydgnc2qf23f16g";
     };
   }
   {
     pname = "microsoft.netcore.app.runtime.win-arm64";
-    version = "6.0.0";
+    version = "6.0.3";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app.runtime.win-arm64/6.0.0/microsoft.netcore.app.runtime.win-arm64.6.0.0.nupkg";
-      sha256 = "0jd3h6q09v4wfam9dbl6yfkjy6b7y1wn87gqv2gzf088q9hfc1mc";
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app.runtime.win-arm64/6.0.3/microsoft.netcore.app.runtime.win-arm64.6.0.3.nupkg";
+      sha256 = "022kld62v6npxx27mvllg3nv7rpw142q49zwgprzvrxgnn5zszq1";
     };
   }
   {
     pname = "microsoft.netcore.app.runtime.win-x64";
-    version = "6.0.0";
+    version = "6.0.3";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app.runtime.win-x64/6.0.0/microsoft.netcore.app.runtime.win-x64.6.0.0.nupkg";
-      sha256 = "13x1nkigy3nhbr8gxalij7krmzxpciyq4i8k7jdy9278zs1lm5a6";
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app.runtime.win-x64/6.0.3/microsoft.netcore.app.runtime.win-x64.6.0.3.nupkg";
+      sha256 = "1rjkzs2013razi2xs943q62ys1jh8blhjcnj75qkvirf859d11qw";
     };
   }
   {
     pname = "microsoft.netcore.app.runtime.win-x86";
-    version = "6.0.0";
+    version = "6.0.3";
     src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app.runtime.win-x86/6.0.0/microsoft.netcore.app.runtime.win-x86.6.0.0.nupkg";
-      sha256 = "0p0y3njb618l4ihbsh033jhd8yn1sp8gfhwn722my2166saisjg5";
+      url = "https://api.nuget.org/v3-flatcontainer/microsoft.netcore.app.runtime.win-x86/6.0.3/microsoft.netcore.app.runtime.win-x86.6.0.3.nupkg";
+      sha256 = "0gsk9939f6vrqbgc7cw8g8q9c7669rkfwwlyhiq13piqmj2kni6g";
     };
   }
   {
@@ -680,14 +680,6 @@
     };
   }
   {
-    pname = "microsoft.net.stringtools";
-    version = "1.0.0";
-    src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/microsoft.net.stringtools/1.0.0/microsoft.net.stringtools.1.0.0.nupkg";
-      sha256 = "06yakiyzgss399giivfx6xdrnfxqfsvy5fzm90scjanvandv0sdj";
-    };
-  }
-  {
     pname = "microsoft.sourcelink.common";
     version = "1.0.0";
     src = fetchurl {
@@ -1320,38 +1312,6 @@
     };
   }
   {
-    pname = "runtime.win10-arm64.runtime.native.system.io.compression";
-    version = "4.3.0";
-    src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/runtime.win10-arm64.runtime.native.system.io.compression/4.3.0/runtime.win10-arm64.runtime.native.system.io.compression.4.3.0.nupkg";
-      sha256 = "1jrmrmqscn8cn2n3piar8n85gfsra7vlai23w9ldzprh0y4dw3v1";
-    };
-  }
-  {
-    pname = "runtime.win7.system.private.uri";
-    version = "4.3.0";
-    src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/runtime.win7.system.private.uri/4.3.0/runtime.win7.system.private.uri.4.3.0.nupkg";
-      sha256 = "0bxkcmklp556dc43bra8ngc8wymcbbflcydi0xwq0j22gm66xf2m";
-    };
-  }
-  {
-    pname = "runtime.win7-x64.runtime.native.system.io.compression";
-    version = "4.3.0";
-    src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/runtime.win7-x64.runtime.native.system.io.compression/4.3.0/runtime.win7-x64.runtime.native.system.io.compression.4.3.0.nupkg";
-      sha256 = "1dmbmksnxg12fk2p0k7rzy16448mddr2sfrnqs0rhhrzl0z22zi5";
-    };
-  }
-  {
-    pname = "runtime.win7-x86.runtime.native.system.io.compression";
-    version = "4.3.0";
-    src = fetchurl {
-      url = "https://api.nuget.org/v3-flatcontainer/runtime.win7-x86.runtime.native.system.io.compression/4.3.0/runtime.win7-x86.runtime.native.system.io.compression.4.3.0.nupkg";
-      sha256 = "08ppln62lcq3bz2kyxqyvh98payd5a7w8fzmb53mznkcfv32n55b";
-    };
-  }
-  {
     pname = "runtime.win.microsoft.win32.primitives";
     version = "4.3.0";
     src = fetchurl {
@@ -1408,6 +1368,38 @@
     };
   }
   {
+    pname = "runtime.win10-arm64.runtime.native.system.io.compression";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.win10-arm64.runtime.native.system.io.compression/4.3.0/runtime.win10-arm64.runtime.native.system.io.compression.4.3.0.nupkg";
+      sha256 = "1jrmrmqscn8cn2n3piar8n85gfsra7vlai23w9ldzprh0y4dw3v1";
+    };
+  }
+  {
+    pname = "runtime.win7-x64.runtime.native.system.io.compression";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.win7-x64.runtime.native.system.io.compression/4.3.0/runtime.win7-x64.runtime.native.system.io.compression.4.3.0.nupkg";
+      sha256 = "1dmbmksnxg12fk2p0k7rzy16448mddr2sfrnqs0rhhrzl0z22zi5";
+    };
+  }
+  {
+    pname = "runtime.win7-x86.runtime.native.system.io.compression";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.win7-x86.runtime.native.system.io.compression/4.3.0/runtime.win7-x86.runtime.native.system.io.compression.4.3.0.nupkg";
+      sha256 = "08ppln62lcq3bz2kyxqyvh98payd5a7w8fzmb53mznkcfv32n55b";
+    };
+  }
+  {
+    pname = "runtime.win7.system.private.uri";
+    version = "4.3.0";
+    src = fetchurl {
+      url = "https://api.nuget.org/v3-flatcontainer/runtime.win7.system.private.uri/4.3.0/runtime.win7.system.private.uri.4.3.0.nupkg";
+      sha256 = "0bxkcmklp556dc43bra8ngc8wymcbbflcydi0xwq0j22gm66xf2m";
+    };
+  }
+  {
     pname = "sqlitepclraw.bundle_green";
     version = "2.0.4";
     src = fetchurl {
diff --git a/nixpkgs/pkgs/development/tools/operator-sdk/default.nix b/nixpkgs/pkgs/development/tools/operator-sdk/default.nix
index 0cad56864222..fabc6e5ac4b9 100644
--- a/nixpkgs/pkgs/development/tools/operator-sdk/default.nix
+++ b/nixpkgs/pkgs/development/tools/operator-sdk/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "operator-sdk";
-  version = "1.18.0";
+  version = "1.18.1";
 
   src = fetchFromGitHub {
     owner = "operator-framework";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-TamtjFnh+HT7JHcRTEpALdkXM9MyZGulb644bNr/BQI=";
+    sha256 = "sha256-BusShYGgaUGwLMWr/EHS7kDUTnTJyHzWUztlaMJskAg=";
   };
 
-  vendorSha256 = "sha256-uci8/gQqLtjmxxqSlpgZhgBnvMotMvklNfwR+ua8H3M=";
+  vendorSha256 = "sha256-VH2ALKSr+UFk26Y5/1yhLP//wc1t8f9O5dMg0RGz4ZM=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/oras/default.nix b/nixpkgs/pkgs/development/tools/oras/default.nix
new file mode 100644
index 000000000000..94a81144ccc2
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/oras/default.nix
@@ -0,0 +1,40 @@
+{ lib, stdenv, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "oras";
+  version = "0.12.0";
+
+  src = fetchFromGitHub {
+    owner = "oras-project";
+    repo = "oras";
+    rev = "v${version}";
+    sha256 = "sha256-6W7vmWFjULIJnOVtgSrCEKw/83W8jNSbM0AF4LZZR6U=";
+  };
+  vendorSha256 = "sha256-3UKsH4Jbq7G5PRwhn5lW0NR80jhmuzT9daa++v2sFWk=";
+
+  ldflags = [
+    "-s"
+    "-w"
+    "-X github.com/oras-project/oras/internal/version.Version=${version}"
+    "-X github.com/oras-project/oras/internal/version.BuildMetadata="
+    "-X github.com/oras-project/oras/internal/version.GitTreeState=clean"
+  ];
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    runHook preInstallCheck
+
+    $out/bin/oras --help
+    $out/bin/oras version | grep "${version}"
+
+    runHook postInstallCheck
+  '';
+
+  meta = with lib; {
+    homepage = "https://oras.land/";
+    changelog = "https://github.com/oras-project/oras/releases/tag/v${version}";
+    description = "The ORAS project provides a way to push and pull OCI Artifacts to and from OCI Registries";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ jk ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/parsing/hammer/default.nix b/nixpkgs/pkgs/development/tools/parsing/hammer/default.nix
index 402f83bea16b..86697c0acdcb 100644
--- a/nixpkgs/pkgs/development/tools/parsing/hammer/default.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/hammer/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, fetchgit, glib, pkg-config, scons }:
+{ lib, stdenv, fetchFromGitHub, glib, pkg-config, scons }:
 
 stdenv.mkDerivation {
   pname = "hammer";
   version = "e7aa734";
 
-  src = fetchgit {
-    url = "git://github.com/UpstandingHackers/hammer";
-    sha256 = "01l0wbhz7dymxlndacin2vi8sqwjlw81ds2i9xyi200w51nsdm38";
+  src = fetchFromGitHub {
+    owner = "UpstandingHackers";
+    repo = "hammer";
     rev = "47f34b81e4de834fd3537dd71928c4f3cdb7f533";
+    sha256 = "sha256-aNSmbSgcABF9T1HoFhCnkmON4hY2MtUs7dW38+HigAY=";
   };
 
   nativeBuildInputs = [ pkg-config scons ];
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/default.nix b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/default.nix
index 484254a099c3..e3d74600c955 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/default.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/default.nix
@@ -20,6 +20,7 @@
 , enableShared ? !stdenv.hostPlatform.isStatic
 , enableStatic ? stdenv.hostPlatform.isStatic
 , webUISupport ? false
+, extraGrammars ? {}
 }:
 
 # TODO: move to carnix or https://github.com/kolloch/crate2nix
@@ -51,19 +52,18 @@ let
     runCommand "grammars" { } (''
       mkdir $out
     '' + (lib.concatStrings (lib.mapAttrsToList
-      (name: grammar: "ln -s ${fetchGrammar grammar} $out/${name}\n")
+      (name: grammar: "ln -s ${if grammar ? src then grammar.src else fetchGrammar grammar} $out/${name}\n")
       (import ./grammars { inherit lib; }))));
-
   builtGrammars =
     let
       change = name: grammar:
         callPackage ./grammar.nix { } {
           language = if grammar ? language then grammar.language else name;
           inherit version;
-          source = fetchGrammar grammar;
+          source = if grammar ? src then grammar.src else fetchGrammar grammar;
           location = if grammar ? location then grammar.location else null;
         };
-      grammars' = (import ./grammars { inherit lib; });
+      grammars' = import ./grammars { inherit lib; } // extraGrammars;
       grammars = grammars' //
         { tree-sitter-ocaml = grammars'.tree-sitter-ocaml // { location = "ocaml"; }; } //
         { tree-sitter-ocaml-interface = grammars'.tree-sitter-ocaml // { location = "interface"; }; } //
@@ -71,7 +71,7 @@ let
         { tree-sitter-typescript = grammars'.tree-sitter-typescript // { location = "typescript"; }; } //
         { tree-sitter-tsx = grammars'.tree-sitter-typescript // { location = "tsx"; }; };
     in
-    lib.mapAttrs change grammars;
+      lib.mapAttrs change (grammars);
 
   # Usage:
   # pkgs.tree-sitter.withPlugins (p: [ p.tree-sitter-c p.tree-sitter-java ... ])
@@ -95,7 +95,7 @@ let
               (lib.strings.replaceStrings [ "-" ] [ "_" ]
                 (lib.strings.removePrefix "tree-sitter-"
                   (lib.strings.removeSuffix "-grammar" name)))
-              + stdenv.hostPlatform.extensions.sharedLibrary;
+              + ".so";
             path = "${drv}/parser";
           }
         )
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
index eb2275d2724c..b7ae694c9181 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
@@ -34,6 +34,7 @@
   tree-sitter-gomod = lib.importJSON ./tree-sitter-gomod.json;
   tree-sitter-graphql = lib.importJSON ./tree-sitter-graphql.json;
   tree-sitter-haskell = lib.importJSON ./tree-sitter-haskell.json;
+  tree-sitter-hcl = lib.importJSON ./tree-sitter-hcl.json;
   tree-sitter-heex = lib.importJSON ./tree-sitter-heex.json;
   tree-sitter-hjson = lib.importJSON ./tree-sitter-hjson.json;
   tree-sitter-html = lib.importJSON ./tree-sitter-html.json;
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-clojure.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-clojure.json
index 3fccfc5f7b01..4527f8d000e8 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-clojure.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-clojure.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/sogaiu/tree-sitter-clojure",
-  "rev": "39bf0977d223879436c1425fe6bfeb3bcfd86f92",
-  "date": "2021-08-15T13:16:31+09:00",
-  "path": "/nix/store/7kpf74gw4a68fby6jiw4n7lc4jfkgcf4-tree-sitter-clojure",
-  "sha256": "0ryj75znysvyvv4qaghygx1srrhlwhfmzmdilm652prkgj6yzh6b",
+  "rev": "1b24766fe9feacb8f5006233fe5c2ebd0ba31eff",
+  "date": "2022-02-19T08:24:15+09:00",
+  "path": "/nix/store/1vxhbw0dxg95z8rbs1b96nrcjvhrhb52-tree-sitter-clojure",
+  "sha256": "0sqi825gyjndn3v00kvk9scw6s5q0lr3ig6v49sccqc2addnr6di",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json
index 47c6b811ff16..dfbdbd5d9317 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-cpp",
-  "rev": "656d7ea44b2b0daece78791e30281e283f30001e",
-  "date": "2022-01-17T09:06:11-06:00",
-  "path": "/nix/store/w4qqya24zf0cd7rqw1440szrrad8nf23-tree-sitter-cpp",
-  "sha256": "0vfgv9rw8pw4d41p5rndy7cjw8w0k0vnn54cwpxkm3r2vblnjn58",
+  "rev": "a832195eb3685a279856bb480ce19cff19554b6d",
+  "date": "2022-03-14T15:34:21-05:00",
+  "path": "/nix/store/ixca3nass3hkf0pycf7zhz15h2yq11sk-tree-sitter-cpp",
+  "sha256": "1y0i3w21zg8khns97wy5wpw57bhni4c8faszaz9qb0nrgarbf3i6",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cuda.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cuda.json
index d9fb78dd2723..282b95895ed7 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cuda.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cuda.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/thehamsta/tree-sitter-cuda",
-  "rev": "14cd86e18ba45e327017de5b3e0f8d8f7f8e98ec",
-  "date": "2022-01-24T00:39:28+01:00",
-  "path": "/nix/store/3lskjrhqd16ymvsbrwzcsdd80cyr7ljj-tree-sitter-cuda",
-  "sha256": "09qpl5mfv39788smz87zbzp04i3rdhsckjjqngvr0w24dsw30nyx",
+  "rev": "5178a7a5b25dc7ee4a69bf72f31bd6d3ff0a0795",
+  "date": "2022-03-16T21:48:20+01:00",
+  "path": "/nix/store/gd5s063qfyas370a9rd8mn9wc9d68s15-tree-sitter-cuda",
+  "sha256": "17zqpd27b09izpp9lvkgc1hcnq5nc58i98pak0qi46z85r6zgp6g",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dockerfile.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dockerfile.json
index 951daa9e3d9f..072f0eab727b 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dockerfile.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dockerfile.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/camdencheek/tree-sitter-dockerfile",
-  "rev": "7af32bc04a66ab196f5b9f92ac471f29372ae2ce",
-  "date": "2021-12-16T07:47:57-07:00",
-  "path": "/nix/store/gh1pnracilf89q9z5czqr4z7lkd480xb-tree-sitter-dockerfile",
-  "sha256": "06hy683mrp1jcg2ypd6msbmv0pm2z85y8nqxgrnbr9vbi6syvmp5",
+  "rev": "d34a0cebd094e830bdd2106a28cb2f1fb22401d8",
+  "date": "2022-01-27T11:20:14-07:00",
+  "path": "/nix/store/3whf6fv79zqk5w0d6jbzfgs5jzm4cll4-tree-sitter-dockerfile",
+  "sha256": "0kf4c4xs5naj8lpcmr3pbdvwj526wl9p6zphxxpimbll7qv6qfnd",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dot.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dot.json
index 63660cccfb3b..bc84c3b1f37c 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dot.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dot.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/rydesun/tree-sitter-dot",
-  "rev": "92877bac7033e409ccfb3f07fe28ef1dfd359457",
-  "date": "2021-10-13T19:28:51+08:00",
-  "path": "/nix/store/h3dyw3kcgw77lma750wjgr1n8pjllxn6-tree-sitter-dot",
-  "sha256": "1l8g348nqqil7lygkhzw1ydwf3q2m5786qddp1f9jg1bdrv9p8rl",
+  "rev": "917230743aa10f45a408fea2ddb54bbbf5fbe7b7",
+  "date": "2022-03-11T21:17:49+08:00",
+  "path": "/nix/store/3xvainpyzwpbhbm30mmvvgxpgh4agljh-tree-sitter-dot",
+  "sha256": "1q2rbv16dihlmrbxlpn0x03na7xp8rdhf58vwm3lryn3nfcjckn2",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-elixir.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-elixir.json
index b0bad04a86fb..c6257a25b157 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-elixir.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-elixir.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/elixir-lang/tree-sitter-elixir",
-  "rev": "de20391afe5cb03ef1e8a8e43167e7b58cc52869",
-  "date": "2022-01-10T10:35:12-06:00",
-  "path": "/nix/store/099pwd7iv86g1j4fplgq33a4jpwbvv60-tree-sitter-elixir",
-  "sha256": "0zrkrwhw3g1vazsxcwrfd1fk4wvs9hdwmwp6073mfh370bz4140h",
+  "rev": "b4027d7cfc96935b50878bdf9faf80bd64ac73cf",
+  "date": "2022-03-04T15:40:04+00:00",
+  "path": "/nix/store/h3qh2s4q51bnq66p1v067g1fb8bd1743-tree-sitter-elixir",
+  "sha256": "1pf2n1j8j5w7mrh81yzvha1gh4w3vffngikj04kzd5gkx9asf3x6",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-erlang.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-erlang.json
index b824f34f27a0..c948d53289b4 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-erlang.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-erlang.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/abstractmachineslab/tree-sitter-erlang",
-  "rev": "9d5fd0c329280a156bf7614a49dc5e8c58cc037c",
-  "date": "2021-08-03T11:57:52+02:00",
-  "path": "/nix/store/35ydhh12dgf4q016gjka35wnqnkwc1jg-tree-sitter-erlang",
-  "sha256": "0d6wl95wgys21vcix6j0bf7l000glkmk1n6shgcnp4baw9wxh009",
+  "rev": "fab680273af1a8f5cc0c3a0c62cbf5b1bea71f39",
+  "date": "2022-03-05T23:18:36+01:00",
+  "path": "/nix/store/vj28kyy3jg21qicwxq2g1ysrwfqd3mz9-tree-sitter-erlang",
+  "sha256": "0shzzik8yxwb76kxs3l0fccjwvkarck1q4wqyv5hdma6hwl52b69",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fennel.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fennel.json
index 8684e176cb69..5bea07ef1e3c 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fennel.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fennel.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/travonted/tree-sitter-fennel",
-  "rev": "fce4331731a960077ff5f98939bc675179f1908a",
-  "date": "2021-09-30T09:09:52-04:00",
-  "path": "/nix/store/mhpkw4gl6lzi306q21kckafqcdc0a715-tree-sitter-fennel",
-  "sha256": "1k8acyav26248liz0psk2r9dl7472mqgdyrjwg3pfxx94jgqjcik",
+  "rev": "d37fd84a702b78ff0282f223ece83c61ab062a6e",
+  "date": "2022-02-21T08:13:28-05:00",
+  "path": "/nix/store/lafx5rw9r9jp9056sv0sk89kxfjlb9x3-tree-sitter-fennel",
+  "sha256": "1wqvz8v877jh7shv50xbnx1bxvdlnfnpmndwzsb0smidnzx7lbw2",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fish.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fish.json
index b32445c2804c..a060a455955c 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fish.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fish.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/ram02z/tree-sitter-fish",
-  "rev": "04e54ab6585dfd4fee6ddfe5849af56f101b6d4f",
-  "date": "2021-08-02T21:46:56+01:00",
-  "path": "/nix/store/0n3jfh7gk16bmikix34y5m534ac12xgc-tree-sitter-fish",
-  "sha256": "1810z8ah1b09qpxcr4bh63bxsnxx24r6d2h46v2cpqv1lg0g4z14",
+  "rev": "d482d70ea8e191c05b2c1b613ed6fdff30a14da0",
+  "date": "2022-03-14T15:15:13+00:00",
+  "path": "/nix/store/5ajcf2hl1hph7iky6lwp5vh7a49k587s-tree-sitter-fish",
+  "sha256": "0idnm9lrvj1jhrvrgcddppkc09hr7inciz6k02d0nnxv8pqaw3w6",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json
index 622f2863290c..49a04edbc37b 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-go",
-  "rev": "0fa917a7022d1cd2e9b779a6a8fc5dc7fad69c75",
-  "date": "2022-01-06T10:54:10+01:00",
-  "path": "/nix/store/bw2hilbj37ys9lig2fzz58cvjy7nhn3l-tree-sitter-go",
-  "sha256": "0kgy4yyd0z8pydldnfwsfw2iwbhn4f43qxfhy94wvpwiwi74kfmg",
+  "rev": "07d722831382a043b16547b6d9202f3da07f3cb3",
+  "date": "2022-03-22T15:34:30+01:00",
+  "path": "/nix/store/9ay5gjwnip3jcmi096sw5fyi1kxqg1pk-tree-sitter-go",
+  "sha256": "0rc1p5jab08v1r81gzaz5xmxmbspl5i5zxba9immzax8ahzhhaxn",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-haskell.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-haskell.json
index 31114781f58c..e1d4462e225d 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-haskell.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-haskell.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-haskell",
-  "rev": "d6ccd2d9c40bdec29fee0027ef04fe5ff1ae4ceb",
-  "date": "2022-01-07T03:13:04+01:00",
-  "path": "/nix/store/biyjfajma7nr175xviaw65jksqfak893-tree-sitter-haskell",
-  "sha256": "0zfxi3adqhy7d1w2dvnywkms8a4vfxkjswdhar7p5sxyps8a5wry",
+  "rev": "ed976b81b00ce7b72b99bca75e7a616cc526220c",
+  "date": "2022-03-20T00:05:14+01:00",
+  "path": "/nix/store/wzkfkix4q3vcrlsj2v4q32ihw0vdp1li-tree-sitter-haskell",
+  "sha256": "19g5f59gh6s4xpphrppmrqlh0nfld0q8zffy85pkby4gd6xh73zm",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-hcl.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-hcl.json
new file mode 100644
index 000000000000..24d731be7a2d
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-hcl.json
@@ -0,0 +1,11 @@
+{
+  "url": "https://github.com/MichaHoffmann/tree-sitter-hcl",
+  "rev": "3cb7fc28247efbcb2973b97e71c78838ad98a583",
+  "date": "2021-09-20T21:50:41+02:00",
+  "path": "/nix/store/rgd0p162smlfn90ggyq3y6y4q9sgybwh-tree-sitter-hcl",
+  "sha256": "0hg7w3hsvxjwz1rb1izknn46msm4mkjx2cnq603lzn7i9mb1pbyr",
+  "fetchLFS": false,
+  "fetchSubmodules": false,
+  "deepClone": false,
+  "leaveDotGit": false
+}
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-java.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-java.json
index 6f9344437bfa..664e31613c5d 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-java.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-java.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-java",
-  "rev": "a24ae7d16de3517bff243a87d087d0b4877a65c5",
-  "date": "2022-01-12T08:57:59-08:00",
-  "path": "/nix/store/dipis7syj55xrmc72gvx2f9q672mn6dg-tree-sitter-java",
-  "sha256": "0p01xkxzdjwx32hd6k4kqidlhkgj8q9b9lp4g4fra5gx9w159iqm",
+  "rev": "881b84fe7078651af5077cc4cea4c85f9fddde3b",
+  "date": "2022-03-21T10:50:51+01:00",
+  "path": "/nix/store/ii1dwsg972sbllim6vrmjbcaw9fcy2b1-tree-sitter-java",
+  "sha256": "0kvqqrx669fyaxm55l0p5vbswf9bfknl0brsr6llyzdz81dl0vk4",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json
index 5cf20f27968f..739e6006c275 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/latex-lsp/tree-sitter-latex",
-  "rev": "323b609de40b7729073482a3c59de76cfba7744f",
-  "date": "2022-02-08T21:23:53+01:00",
-  "path": "/nix/store/f6kvr0x41rbb64s36ii6bj30fqaallz4-tree-sitter-latex",
-  "sha256": "1qsw5wcqs65ip0qq17vq6bf2snnpvw61iq2ahgwl9842ir15hrbr",
+  "rev": "b71e4928a63a6d75bc1670004a5b5a98c850a149",
+  "date": "2022-03-16T20:19:11+01:00",
+  "path": "/nix/store/gzpihd6k8cqsl0facz7kfgn2dh294fxw-tree-sitter-latex",
+  "sha256": "1z2ywj57fpxaym6bv5ixvc01h8szazbhzmzzw960f49mlrima3n6",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-markdown.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-markdown.json
index e34455069bc3..5da2dc0585e7 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-markdown.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-markdown.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/MDeiml/tree-sitter-markdown",
-  "rev": "8bee14c30ecadd55c2d65633973b4e81f93525e0",
-  "date": "2022-01-16T14:47:09+01:00",
-  "path": "/nix/store/cv7xqvcj4bjifzddkx5n2jd723dc6vlf-tree-sitter-markdown",
-  "sha256": "0vibmpp86pkqllfhb0kg6zhaz09sh8m6a2d1xa8p2qdi7ryy7wqa",
+  "rev": "b49b2da50864171eff56acc8ba067c3540a3991f",
+  "date": "2022-02-26T15:22:17+01:00",
+  "path": "/nix/store/vllxsz0nvlw6z9y6s199l5z8f5dlhcpv-tree-sitter-markdown",
+  "sha256": "1adypmkfsf6pgahba588d8l6ib59209rb2fkyk2dv0d3va76pr8x",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg.json
index 1743d2252cd6..a4846c64e694 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/nvim-neorg/tree-sitter-norg",
-  "rev": "b7f879eaf9f20852f6b670439154b0128fbb6558",
-  "date": "2022-02-08T12:24:02+01:00",
-  "path": "/nix/store/q02py98zm9cmalzc5a0yqw8lg73ybx9g-tree-sitter-norg",
-  "sha256": "07hm5sysb25ivlz52ijnbka02hlqksha259w7v03awap85i9ydk6",
+  "rev": "17d61df817c1e0a9cdef8d915d4e4c556b7cf68c",
+  "date": "2022-03-16T16:23:43+01:00",
+  "path": "/nix/store/xjsyabq06584fnwjvqbyqf6yd19i4gn9-tree-sitter-norg",
+  "sha256": "161pmkpfyfhf4lcgkzcl1wdi4bsmmpwxcz7kjcb0jpjy7bamikch",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-perl.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-perl.json
index 9585b6c60768..8b4175a4f3cc 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-perl.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-perl.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/ganezdragon/tree-sitter-perl",
-  "rev": "ab2b39439f2fc82fd5ea0b7e08509760d4cbacd5",
-  "date": "2022-01-23T13:55:11-05:00",
-  "path": "/nix/store/s55aybm3r5n7l7nx916mhjyry96xcvin-tree-sitter-perl",
-  "sha256": "16ap0yq9gmh0kbyka7zcpjw3dl368n23sxp3v82z4ccwzmgfmaw4",
+  "rev": "bbf86084d9b7eb4768f3fb9fe094b3e0600057b1",
+  "date": "2022-02-26T01:42:56+05:30",
+  "path": "/nix/store/cpsi8sjl3d1v5sg2rcsw3arf7zwm4l06-tree-sitter-perl",
+  "sha256": "037kdl6kq47p35qd3p6j4560x6w24zzmjxnz2fkd28xrm0lsh9lm",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-prisma.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-prisma.json
index ec69a798aad6..ad0fbd525ed8 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-prisma.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-prisma.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/victorhqc/tree-sitter-prisma",
-  "rev": "74a721e8eed1a4a25cf495d45974ba24f315f81a",
-  "date": "2021-11-19T19:52:32+01:00",
-  "path": "/nix/store/rbr2p57ic1kn0121ca6k0bh2r8svw066-tree-sitter-prisma",
-  "sha256": "1b8yil6v9jz9ndx2kzln639fkjkj1xb0qfcip1njxcq5mlqlfswd",
+  "rev": "bf0833cbedb2c5b39250f5ba900f1239a16c6749",
+  "date": "2022-03-18T18:56:29+01:00",
+  "path": "/nix/store/9pq2l5b34xvi3v6i9zq1qxh3r2ilg2qs-tree-sitter-prisma",
+  "sha256": "0idgrra41w4v3sa4sb0p3ba7k6sxfw74px4fkpprddjqjdnsrl50",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json
index 87cc40f83b89..670103d5c78d 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-rust",
-  "rev": "a250c4582510ff34767ec3b7dcdd3c24e8c8aa68",
-  "date": "2022-02-04T13:11:35-08:00",
-  "path": "/nix/store/i1f2zyrqghy98pl7dfnvcpbs3jsnmhay-tree-sitter-rust",
-  "sha256": "174j5pxwf80c4xniri39l3a6bb7nq96g2s8hh5sgv4i7xvbpfsmg",
+  "rev": "0509e440ae042db6483984b3a56b3c5f24b5d9b9",
+  "date": "2022-03-09T12:11:47+01:00",
+  "path": "/nix/store/9jrsqsrql5wlbzmqna111w4a02hf75z2-tree-sitter-rust",
+  "sha256": "1r8n8441b8bppizlzh4xw7yy3amz4apfxpqxm8hw0n3j3iwnw4pz",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-vim.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-vim.json
index 12322fe82b40..f4aaecb7bdf3 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-vim.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-vim.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/vigoux/tree-sitter-viml",
-  "rev": "bc573ef552adf8bed9e36eb687a0cccf43158634",
-  "date": "2022-01-24T16:13:56+01:00",
-  "path": "/nix/store/2i9n2fvjk0ymxv32ziq5z9ykv95svi7d-tree-sitter-viml",
-  "sha256": "0ckx9jh9fqfw5x9yb0sljczb0xsgxs8j6v2qbqywh5z6fcqx8sjc",
+  "rev": "c9d70082af14988842eb071c6c0b07e8d1d993ac",
+  "date": "2022-03-21T17:11:25+01:00",
+  "path": "/nix/store/z1bjg25frb0sq7kr0s3sp6jnz888p900-tree-sitter-viml",
+  "sha256": "05mf8i5ni0kp4g1gdpgwjxi2d86hna2ijp9k7c1gy9j33hsq9i8g",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-zig.json b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-zig.json
index 5ab34fb0e25b..a9de3692209e 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-zig.json
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-zig.json
@@ -1,9 +1,9 @@
 {
   "url": "https://github.com/maxxnino/tree-sitter-zig",
-  "rev": "93331b8bd8b4ebee2b575490b2758f16ad4e9f30",
-  "date": "2022-01-10T15:22:15+09:00",
-  "path": "/nix/store/g54w7vid7nf9shzfipch646dk4d88ah7-tree-sitter-zig",
-  "sha256": "0irckd6bh3i1vr5bi2lwsbvibbpih3jv3xqdq0dbsiy447dfiv50",
+  "rev": "42e93d02ca945094699e2dc4de785bbaf8f740ec",
+  "date": "2022-02-11T10:40:42+09:00",
+  "path": "/nix/store/2yv27si133zqb93bm9gia0ymib9q2y75-tree-sitter-zig",
+  "sha256": "14p02b04v67cvkvj7apipsmkmvv3jnhykm0qrrmqqxnkprac31im",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix
index 246574895e3c..961a5e96e0b5 100644
--- a/nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix
+++ b/nixpkgs/pkgs/development/tools/parsing/tree-sitter/update.nix
@@ -308,6 +308,10 @@ let
       orga = "milisims";
       repo = "tree-sitter-org";
     };
+    "tree-sitter-hcl" = {
+      orga = "MichaHoffmann";
+      repo = "tree-sitter-hcl";
+    };
   };
 
   allGrammars =
@@ -376,7 +380,7 @@ let
     if [[ "$(printf "%s" "$res" | ${jq}/bin/jq '.message?')" =~ "rate limit" ]]; then
       echo "rate limited" >&2
     fi
-    release="$(printf "%s" "$res" | ${jq}/bin/jq -r '.tag_name')"
+    release="$(printf "%s" "$res" | ${jq}/bin/jq -r '.tag_name' | tr -d \")"
     # github sometimes returns an empty list even tough there are releases
     if [ "$release" = "null" ]; then
       echo "uh-oh, latest for ${orga + "/" + repo} is not there, using HEAD" >&2
diff --git a/nixpkgs/pkgs/development/tools/patatt/default.nix b/nixpkgs/pkgs/development/tools/patatt/default.nix
new file mode 100644
index 000000000000..fce4f5063763
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/patatt/default.nix
@@ -0,0 +1,28 @@
+{ lib, python3Packages }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "patatt";
+  version = "0.4.9";
+
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-qHhNxgP43vBSjrHp2Ygzq5J/f6YyBD4VDTp9S1ud6zo=";
+  };
+
+  propagatedBuildInputs = with python3Packages; [
+    pynacl
+  ];
+
+  meta = with lib; {
+    homepage = "https://git.kernel.org/pub/scm/utils/patatt/patatt.git/about/";
+    license = licenses.mit0;
+    description = "Add cryptographic attestation to patches sent via email";
+    longDescription = ''
+      This utility allows an easy way to add end-to-end cryptographic
+      attestation to patches sent via mail.  It does so by adapting the
+      DKIM email signature standard to include cryptographic
+      signatures via the X-Developer-Signature email header.
+    '';
+    maintainers = with maintainers; [ yoctocell ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/pipenv/default.nix b/nixpkgs/pkgs/development/tools/pipenv/default.nix
index c7d22015d47a..50b47b3351bb 100644
--- a/nixpkgs/pkgs/development/tools/pipenv/default.nix
+++ b/nixpkgs/pkgs/development/tools/pipenv/default.nix
@@ -19,11 +19,11 @@ let
 
 in buildPythonApplication rec {
   pname = "pipenv";
-  version = "2022.1.8";
+  version = "2022.3.24";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f84d7119239b22ab2ac2b8fbc7d619d83cf41135206d72a17c4f151cda529fd0";
+    sha256 = "sha256-gAGY1DDnJPiZ5tsxnMZA1f1toqzbwwHOsaH5Z+mQQos=";
   };
 
   LC_ALL = "en_US.UTF-8";
diff --git a/nixpkgs/pkgs/development/tools/profiling/sysprof/capture.nix b/nixpkgs/pkgs/development/tools/profiling/sysprof/capture.nix
index 2d33dedbdd25..e6690fc0c68b 100644
--- a/nixpkgs/pkgs/development/tools/profiling/sysprof/capture.nix
+++ b/nixpkgs/pkgs/development/tools/profiling/sysprof/capture.nix
@@ -17,6 +17,7 @@ stdenv.mkDerivation rec {
   mesonFlags = [
     "-Dwith_sysprofd=none"
     "-Dlibsysprof=false"
+    "-Dlibunwind=false"
     "-Dhelp=false"
     "-Denable_tools=false"
     "-Denable_tests=false"
diff --git a/nixpkgs/pkgs/development/tools/profiling/sysprof/default.nix b/nixpkgs/pkgs/development/tools/profiling/sysprof/default.nix
index 319212da7705..e21e71907869 100644
--- a/nixpkgs/pkgs/development/tools/profiling/sysprof/default.nix
+++ b/nixpkgs/pkgs/development/tools/profiling/sysprof/default.nix
@@ -8,8 +8,10 @@
 , json-glib
 , itstool
 , libdazzle
+, libunwind
 , libxml2
-, meson, ninja
+, meson
+, ninja
 , pango
 , pkg-config
 , polkit
@@ -21,13 +23,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sysprof";
-  version = "3.42.1";
+  version = "3.44.0";
 
   outputs = [ "out" "lib" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "F5a4FATudf0eus9URkrXr/6/YvKFHu9STZ+OrAxKIAE=";
+    sha256 = "q12fW3GXOzCI1Yob/fHcI8OaAvX85OXpxz4DSxeLAFs=";
   };
 
   nativeBuildInputs = [
@@ -51,6 +53,7 @@ stdenv.mkDerivation rec {
     polkit
     systemd
     libdazzle
+    libunwind
   ];
 
   mesonFlags = [
diff --git a/nixpkgs/pkgs/development/tools/profiling/systemtap/default.nix b/nixpkgs/pkgs/development/tools/profiling/systemtap/default.nix
index ac00e3418782..cadf9b9eeb16 100644
--- a/nixpkgs/pkgs/development/tools/profiling/systemtap/default.nix
+++ b/nixpkgs/pkgs/development/tools/profiling/systemtap/default.nix
@@ -40,7 +40,6 @@ in runCommand "systemtap-${kernel.version}-${version}" {
   nativeBuildInputs = [ makeWrapper ];
   meta = {
     homepage = "https://sourceware.org/systemtap/";
-    repositories.git = url;
     description = "Provides a scripting language for instrumentation on a live kernel plus user-space";
     license = lib.licenses.gpl2;
     platforms = lib.platforms.linux;
diff --git a/nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/default.nix b/nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/default.nix
index 6fd939d00237..b880921e1e0c 100644
--- a/nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/default.nix
+++ b/nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/default.nix
@@ -1,24 +1,21 @@
-{ buildGoPackage
+{ buildGoModule
 , fetchFromGitHub
 , lib
 }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "protoc-gen-go-grpc";
-  version = "1.1.0";
-
-  goPackagePath = "google.golang.org/grpc";
+  version = "1.2.0";
+  modRoot = "cmd/protoc-gen-go-grpc";
 
   src = fetchFromGitHub {
     owner = "grpc";
     repo = "grpc-go";
     rev = "cmd/protoc-gen-go-grpc/v${version}";
-    sha256 = "14rjb8j6fm07rnns3dpwgkzf3y6rmia6i9n7ns6cldc5mbf7nwi3";
+    sha256 = "sha256-pIHMykwwyu052rqwSV5Js0+JCKCNLrFVN6XQ3xjlEOI=";
   };
 
-  subPackages = [ "cmd/protoc-gen-go-grpc" ];
-
-  goDeps = ./deps.nix;
+  vendorSha256 = "sha256-yxOfgTA5IIczehpWMM1kreMqJYKgRT5HEGbJ3SeQ/Lg=";
 
   meta = with lib; {
     description = "The Go language implementation of gRPC. HTTP/2 based RPC";
diff --git a/nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/deps.nix b/nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/deps.nix
deleted file mode 100644
index d559989244d9..000000000000
--- a/nixpkgs/pkgs/development/tools/protoc-gen-go-grpc/deps.nix
+++ /dev/null
@@ -1,333 +0,0 @@
-# file generated from go.mod using vgo2nix (https://github.com/nix-community/vgo2nix)
-[
-  {
-    goPackagePath = "cloud.google.com/go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/googleapis/google-cloud-go";
-      rev = "v0.26.0";
-      sha256 = "149v3ci17g6wd2pm18mzcncq5qpl9hwdjnz3rlbn5rfidyn46la1";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/BurntSushi/toml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/BurntSushi/toml";
-      rev = "v0.3.1";
-      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/census-instrumentation/opencensus-proto";
-    fetch = {
-      type = "git";
-      url = "https://github.com/census-instrumentation/opencensus-proto";
-      rev = "v0.2.1";
-      sha256 = "19fcx3sc99i5dsklny6r073z5j20vlwn2xqm6di1q3b1xwchzqfj";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/client9/misspell";
-    fetch = {
-      type = "git";
-      url = "https://github.com/client9/misspell";
-      rev = "v0.3.4";
-      sha256 = "1vwf33wsc4la25zk9nylpbp9px3svlmldkm0bha4hp56jws4q9cs";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/cncf/udpa/go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cncf/udpa";
-      rev = "5459f2c99403";
-      sha256 = "0i3al193dsp91j7iywqrm6fr56y2sz51ci4vf19mb3j4n2x44gsi";
-      moduleDir = "go";
-    };
-  }
-  {
-    goPackagePath = "github.com/davecgh/go-spew";
-    fetch = {
-      type = "git";
-      url = "https://github.com/davecgh/go-spew";
-      rev = "v1.1.0";
-      sha256 = "0d4jfmak5p6lb7n2r6yvf5p1zcw0l8j74kn55ghvr7zr7b7axm6c";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/envoyproxy/go-control-plane";
-    fetch = {
-      type = "git";
-      url = "https://github.com/envoyproxy/go-control-plane";
-      rev = "668b12f5399d";
-      sha256 = "0vmhc8ii081x1k2qw4kji7wjyg6l25zp1y6qxi27wq8m341i4rzb";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/envoyproxy/protoc-gen-validate";
-    fetch = {
-      type = "git";
-      url = "https://github.com/envoyproxy/protoc-gen-validate";
-      rev = "v0.1.0";
-      sha256 = "0kxd3wwh3xwqk0r684hsy281xq4y71cd11d4q2hspcjbnlbwh7cy";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/golang/glog";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/glog";
-      rev = "23def4e6c14b";
-      sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/golang/mock";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/mock";
-      rev = "v1.1.1";
-      sha256 = "0ap8wb6pdl6ccmdb43advjll2ly4sz26wsc3axw0hbrjrybybzgy";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/golang/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/protobuf";
-      rev = "v1.4.2";
-      sha256 = "0m5z81im4nsyfgarjhppayk4hqnrwswr3nix9mj8pff8x9jvcjqw";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/go-cmp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-cmp";
-      rev = "v0.5.0";
-      sha256 = "04pzp583p6b32y34c6jygfxarff9qjs39rarvfh6467z24sdd9k4";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/uuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/uuid";
-      rev = "v1.1.2";
-      sha256 = "1rbpfa0v0ly9sdnixcxhf79swki54ikgm1zkwwkj64p1ws66syqd";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/pmezard/go-difflib";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pmezard/go-difflib";
-      rev = "v1.0.0";
-      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/prometheus/client_model";
-    fetch = {
-      type = "git";
-      url = "https://github.com/prometheus/client_model";
-      rev = "14fe0d1b01d4";
-      sha256 = "0zdmk6rbbx39cvfz0r59v2jg5sg9yd02b4pds5n5llgvivi99550";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/stretchr/objx";
-    fetch = {
-      type = "git";
-      url = "https://github.com/stretchr/objx";
-      rev = "v0.1.0";
-      sha256 = "19ynspzjdynbi85xw06mh8ad5j0qa1vryvxjgvbnyrr8rbm4vd8w";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "github.com/stretchr/testify";
-    fetch = {
-      type = "git";
-      url = "https://github.com/stretchr/testify";
-      rev = "v1.5.1";
-      sha256 = "09r89m1wy4cjv2nps1ykp00qjpi0531r07q3s34hr7m6njk4srkl";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/crypto";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/crypto";
-      rev = "c2843e01d9a2";
-      sha256 = "01xgxbj5r79nmisdvpq48zfy8pzaaj90bn6ngd4nf33j9ar1dp8r";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/exp";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/exp";
-      rev = "509febef88a4";
-      sha256 = "02isrh39z8znrp5znplzy0dip2gnrl3jm1355raliyvhnhg04j6q";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/lint";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/lint";
-      rev = "d0100b6bd8b3";
-      sha256 = "0b0amr9x4ji66iv9ayfx7zrfx52k1m5g66qfcxkgj80qrb1y2yn7";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/net";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/net";
-      rev = "d8887717615a";
-      sha256 = "1wfm6ngxjyj7v5a2dqib6lw8bb2rdnf1kl48diykxjrsddn0s163";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/oauth2";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/oauth2";
-      rev = "d2e6202438be";
-      sha256 = "0wbn75fd10485nb93bm4kqldqifdim5xqy4v7r5sdvimvf3fyhn7";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sync";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sync";
-      rev = "112230192c58";
-      sha256 = "05i2k43j2d0llq768hg5pf3hb2yhfzp9la1w5wp0rsnnzblr0lfn";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev = "d0b11bdaac8a";
-      sha256 = "18yfsmw622l7gc5sqriv5qmck6903vvhivpzp8i3xfy3z33dybdl";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/text";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/text";
-      rev = "v0.3.0";
-      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/tools";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/tools";
-      rev = "2c0ae7006135";
-      sha256 = "1lsi2ssxajclj3bciz2a41v1vjv768ja3v6wnbyhxy8xphwkp4fk";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/xerrors";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/xerrors";
-      rev = "9bdfabe68543";
-      sha256 = "1yjfi1bk9xb81lqn85nnm13zz725wazvrx3b50hx19qmwg7a4b0c";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "google.golang.org/appengine";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/appengine";
-      rev = "v1.4.0";
-      sha256 = "06zl7w4sxgdq2pl94wy9ncii6h0z3szl4xpqds0sv3b3wbdlhbnn";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "google.golang.org/genproto";
-    fetch = {
-      type = "git";
-      url = "https://github.com/googleapis/go-genproto";
-      rev = "cb27e3aa2013";
-      sha256 = "0ml73ghqcwbz7ipfk8fnxb5indcml49b5p7vp1fsyny0abyyrmxf";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "google.golang.org/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/protobuf";
-      rev = "v1.25.0";
-      sha256 = "0apfl42x166dh96zfq5kvv4b4ax9xljik6bq1mnvn2240ir3mc23";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/check.v1";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/check.v1";
-      rev = "20d25e280405";
-      sha256 = "0k1m83ji9l1a7ng8a7v40psbymxasmssbrrhpdv2wl4rhs0nc3np";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/yaml.v2";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/yaml.v2";
-      rev = "v2.2.2";
-      sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
-      moduleDir = "";
-    };
-  }
-  {
-    goPackagePath = "honnef.co/go/tools";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dominikh/go-tools";
-      rev = "ea95bdfd59fc";
-      sha256 = "1763nw7pwpzkvzfnm63dgzcgbq9hwmq5l1nffchnhh77vgkaq4ic";
-      moduleDir = "";
-    };
-  }
-]
diff --git a/nixpkgs/pkgs/development/tools/protoc-gen-go/default.nix b/nixpkgs/pkgs/development/tools/protoc-gen-go/default.nix
index 79f97ddd745c..271d51042e25 100644
--- a/nixpkgs/pkgs/development/tools/protoc-gen-go/default.nix
+++ b/nixpkgs/pkgs/development/tools/protoc-gen-go/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "protoc-gen-go";
-  version = "1.27.1";
+  version = "1.28.0";
 
   src = fetchFromGitHub {
     owner = "protocolbuffers";
     repo = "protobuf-go";
     rev = "v${version}";
-    sha256 = "sha256-wkUvMsoJP38KMD5b3Fz65R1cnpeTtDcVqgE7tNlZXys=";
+    sha256 = "sha256-GXXhBXzeFgS4DjY3jDRaJu/9PbfUnmWJiE4BwDBh7Ns=";
   };
 
   vendorSha256 = "sha256-yb8l4ooZwqfvenlxDRg95rqiL+hmsn0weS/dPv/oD2Y=";
diff --git a/nixpkgs/pkgs/development/tools/pscale/default.nix b/nixpkgs/pkgs/development/tools/pscale/default.nix
index 50517db6ee9b..c375869603f6 100644
--- a/nixpkgs/pkgs/development/tools/pscale/default.nix
+++ b/nixpkgs/pkgs/development/tools/pscale/default.nix
@@ -2,16 +2,23 @@
 
 buildGoModule rec {
   pname = "pscale";
-  version = "0.89.0";
+  version = "0.90.0";
 
   src = fetchFromGitHub {
     owner = "planetscale";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-6iExcck9s5Z6c8QA+F+Fnk5g0WNmifaSQa2KaIS9m8M=";
+    sha256 = "sha256-uOKx367fFJQvoqakY5PmesOk2l9eYsnECf6AdO2NsuI=";
   };
 
-  vendorSha256 = "sha256-kNt7tMHubpcrfzAjf++GxV3kEj2g6fHFrP9cY8UPqB8=";
+  vendorSha256 = "sha256-IUntyI3EeYsf2tesvm0H+bNCtpnNfQV7WURLFvJXMac=";
+
+  ldflags = [
+    "-s" "-w"
+    "-X main.version=v${version}"
+    "-X main.commit=v${version}"
+    "-X main.date=unknown"
+  ];
 
   meta = with lib; {
     homepage = "https://www.planetscale.com/";
diff --git a/nixpkgs/pkgs/development/tools/pulumictl/default.nix b/nixpkgs/pkgs/development/tools/pulumictl/default.nix
index b9538235c466..baa9734d340e 100644
--- a/nixpkgs/pkgs/development/tools/pulumictl/default.nix
+++ b/nixpkgs/pkgs/development/tools/pulumictl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "pulumictl";
-  version = "0.0.29";
+  version = "0.0.30";
 
   src = fetchFromGitHub {
     owner = "pulumi";
     repo = "pulumictl";
     rev = "v${version}";
-    sha256 = "sha256-2jTxtgEg+x/NY/LTWT5+9K9bilOw2bLTUIctjd+qwLE=";
+    sha256 = "sha256-xAlc6dYD73JZqV0QDhvqPmtGF99mqhvdBbDhWlY/4PI=";
   };
 
   vendorSha256 = "sha256-xalfnLc6bPBvm2B42+FzpgrOH541HMWmNHChveI792s=";
diff --git a/nixpkgs/pkgs/development/tools/rover/default.nix b/nixpkgs/pkgs/development/tools/rover/default.nix
new file mode 100644
index 000000000000..7232089ee997
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rover/default.nix
@@ -0,0 +1,56 @@
+{ lib
+, callPackage
+, fetchFromGitHub
+, perl
+, rustPlatform
+, librusty_v8 ? callPackage ./librusty_v8.nix { }
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "rover";
+  version = "0.4.8";
+
+  src = fetchFromGitHub {
+    owner = "apollographql";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-9o2bGa9vxN7EprKgsy9TI7AFmwjo1OT1pDyiLierTq0=";
+  };
+
+  cargoSha256 = "sha256-4oNuyZ1xNK2jP9QFEcthCjEQRyvFykd5N0j5KCXrzVY=";
+
+  # The v8 package will try to download a `librusty_v8.a` release at build time
+  # to our read-only filesystem. To avoid this we pre-download the file and
+  # export it via RUSTY_V8_ARCHIVE
+  RUSTY_V8_ARCHIVE = librusty_v8;
+
+  nativeBuildInputs = [
+    perl
+  ];
+
+  # The rover-client's build script (crates/rover-client/build.rs) will try to
+  # download the API's graphql schema at build time to our read-only filesystem.
+  # To avoid this we pre-download it to a location the build script checks.
+  preBuild = ''
+    mkdir crates/rover-client/.schema
+    cp ${./schema}/etag.id        crates/rover-client/.schema/
+    cp ${./schema}/schema.graphql crates/rover-client/.schema/
+  '';
+
+  passthru.updateScript = ./update.sh;
+
+  # Some tests try to write configuration data to a location in the user's home
+  # directory. Since this would be /homeless-shelter during the build, point at
+  # a writeable location instead.
+  preCheck = ''
+    export APOLLO_CONFIG_HOME="$PWD"
+  '';
+
+  meta = with lib; {
+    description = "A CLI for managing and maintaining graphs with Apollo Studio";
+    homepage = "https://www.apollographql.com/docs/rover";
+    license = licenses.mit;
+    maintainers = [ maintainers.ivanbrennan ];
+    platforms = ["x86_64-linux"];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/rover/librusty_v8.nix b/nixpkgs/pkgs/development/tools/rover/librusty_v8.nix
new file mode 100644
index 000000000000..3dcb1f95acdd
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rover/librusty_v8.nix
@@ -0,0 +1,17 @@
+{ rust, stdenv, fetchurl }:
+
+let
+  arch = rust.toRustTarget stdenv.hostPlatform;
+  fetch_librusty_v8 = args: fetchurl {
+    name = "librusty_v8-${args.version}";
+    url = "https://github.com/denoland/rusty_v8/releases/download/v${args.version}/librusty_v8_release_${arch}.a";
+    sha256 = args.shas.${stdenv.hostPlatform.system};
+    meta = { inherit (args) version; };
+  };
+in
+fetch_librusty_v8 {
+  version = "0.38.1";
+  shas = {
+    x86_64-linux = "sha256-vRkb5ZrIOYSKa84UbsJD+Oua0wve7f1Yf3kMg/kkYSY=";
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/rover/schema/etag.id b/nixpkgs/pkgs/development/tools/rover/schema/etag.id
new file mode 100644
index 000000000000..369872c3115e
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rover/schema/etag.id
@@ -0,0 +1 @@
+1bdcf8916afc3cea660add457724dddd70154904f4e360e15da27fa7d5c43cd0
diff --git a/nixpkgs/pkgs/development/tools/rover/schema/schema.graphql b/nixpkgs/pkgs/development/tools/rover/schema/schema.graphql
new file mode 100644
index 000000000000..58198f7e181d
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rover/schema/schema.graphql
@@ -0,0 +1,172 @@
+"""An organization. Can have multiple members and graphs.""" type Account{auditLogExports:[AuditLogExport!]"""These are the roles that the account is able to use""" availableRoles:[UserPermission!]!"""Get an URL to which an avatar image can be uploaded. Client uploads by sending a PUT request
+with the image data to MediaUploadInfo.url. Client SHOULD set the "Content-Type" header to the
+browser-inferred MIME type, and SHOULD set the "x-apollo-content-filename" header to the
+filename, if such information is available. Client MUST set the "x-apollo-csrf-token" header to
+MediaUploadInfo.csrfToken.""" avatarUpload:AvatarUploadResult """Get an image URL for the account's avatar. Note that CORS is not enabled for these URLs. The size
+argument is used for bandwidth reduction, and should be the size of the image as displayed in the
+application. Apollo's media server will downscale larger images to at least the requested size,
+but this will not happen for third-party media servers.""" avatarUrl(size:Int!=40):String billingInfo:BillingInfo companyUrl:String currentBillingMonth:BillingMonth currentPlan:BillingPlan!currentPlanV2:BillingPlanV2!currentSubscription:BillingSubscription currentSubscriptionV2:BillingSubscriptionV2 experimentalFeatures:AccountExperimentalFeatures!expiredTrialSubscription:BillingSubscription expiredTrialSubscriptionV2:BillingSubscriptionV2 graphIDAvailable(id:ID!):Boolean!hasBeenOnTrial:Boolean!hasBeenOnTrialV2:Boolean!"""Globally unique identifier, which isn't guaranteed stable (can be changed by administrators).""" id:ID!"""Internal immutable identifier for the account. Only visible to Apollo admins (because it really
+shouldn't be used in normal client apps).""" internalID:ID!invitations(includeAccepted:Boolean!=false):[AccountInvitation!]invoices:[Invoice!]invoicesV2:[InvoiceV2!]!isOnExpiredTrial:Boolean!isOnTrial:Boolean!legacyIsOnTrial:Boolean!memberships:[AccountMembership!]"""Name of the organization, which can change over time and isn't unique.""" name:String!provisionedAt:Timestamp recurlyEmail:String """Returns a different registry related stats pertaining to this account.""" registryStatsWindow(from:Timestamp!resolution:Resolution to:Timestamp):RegistryStatsWindow requests(from:Timestamp!to:Timestamp!):Long requestsInCurrentBillingPeriod:Long roles:AccountRoles """How many seats would be included in your next bill, as best estimated today""" seatCountForNextBill:Int seats:Seats secondaryIDs:[ID!]!"""Graphs belonging to this organization.""" services(includeDeleted:Boolean):[Service!]!"""If non-null, this organization tracks its members through an upstream, eg PingOne;
+invitations are not possible on SSO-synchronized account.""" sso:OrganizationSSO state:AccountState """A list of reusable invitations for the organization.""" staticInvitations:[OrganizationInviteLink!]stats(from:Timestamp!"""Granularity of buckets. Defaults to the entire range (aggregate all data into a single durationBucket) when null.""" resolution:Resolution """Defaults to the current time when null.""" to:Timestamp):AccountStatsWindow!@deprecated(reason:"use Account.statsWindow instead")statsWindow(from:Timestamp!"""Granularity of buckets. Defaults to the entire range (aggregate all data into a single durationBucket) when null.""" resolution:Resolution """Defaults to the current time when null.""" to:Timestamp):AccountStatsWindow subscriptions:[BillingSubscription!]subscriptionsV2:[BillingSubscriptionV2!]!"""Gets a ticket for this org, by id""" ticket(id:ID!):ZendeskTicket """List of Zendesk tickets submitted for this org""" tickets:[ZendeskTicket!]}"""Columns of AccountBillingUsageStats.""" enum AccountBillingUsageStatsColumn{OPERATION_COUNT OPERATION_COUNT_PROVIDED_EXPLICITLY SCHEMA_TAG SERVICE_ID TIMESTAMP}type AccountBillingUsageStatsDimensions{operationCountProvidedExplicitly:String schemaTag:String serviceId:ID}"""Filter for data in AccountBillingUsageStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input AccountBillingUsageStatsFilter{and:[AccountBillingUsageStatsFilter!]in:AccountBillingUsageStatsFilterIn not:AccountBillingUsageStatsFilter """Selects rows whose operationCountProvidedExplicitly dimension equals the given value if not null. To query for the null value, use {in: {operationCountProvidedExplicitly: [null]}} instead.""" operationCountProvidedExplicitly:String or:[AccountBillingUsageStatsFilter!]"""Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID}"""Filter for data in AccountBillingUsageStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input AccountBillingUsageStatsFilterIn{"""Selects rows whose operationCountProvidedExplicitly dimension is in the given list. A null value in the list means a row with null for that dimension.""" operationCountProvidedExplicitly:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]}type AccountBillingUsageStatsMetrics{operationCount:Long!}input AccountBillingUsageStatsOrderBySpec{column:AccountBillingUsageStatsColumn!direction:Ordering!}type AccountBillingUsageStatsRecord{"""Dimensions of AccountBillingUsageStats that can be grouped by.""" groupBy:AccountBillingUsageStatsDimensions!"""Metrics of AccountBillingUsageStats that can be aggregated over.""" metrics:AccountBillingUsageStatsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}type AccountChecksStatsMetrics{totalFailedChecks:Long!totalSuccessfulChecks:Long!}type AccountChecksStatsRecord{id:ID!metrics:AccountChecksStatsMetrics!timestamp:Timestamp!}"""Columns of AccountEdgeServerInfos.""" enum AccountEdgeServerInfosColumn{BOOT_ID EXECUTABLE_SCHEMA_ID LIBRARY_VERSION PLATFORM RUNTIME_VERSION SCHEMA_TAG SERVER_ID SERVICE_ID TIMESTAMP USER_VERSION}type AccountEdgeServerInfosDimensions{bootId:ID executableSchemaId:ID libraryVersion:String platform:String runtimeVersion:String schemaTag:String serverId:ID serviceId:ID userVersion:String}"""Filter for data in AccountEdgeServerInfos. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input AccountEdgeServerInfosFilter{and:[AccountEdgeServerInfosFilter!]"""Selects rows whose bootId dimension equals the given value if not null. To query for the null value, use {in: {bootId: [null]}} instead.""" bootId:ID """Selects rows whose executableSchemaId dimension equals the given value if not null. To query for the null value, use {in: {executableSchemaId: [null]}} instead.""" executableSchemaId:ID in:AccountEdgeServerInfosFilterIn """Selects rows whose libraryVersion dimension equals the given value if not null. To query for the null value, use {in: {libraryVersion: [null]}} instead.""" libraryVersion:String not:AccountEdgeServerInfosFilter or:[AccountEdgeServerInfosFilter!]"""Selects rows whose platform dimension equals the given value if not null. To query for the null value, use {in: {platform: [null]}} instead.""" platform:String """Selects rows whose runtimeVersion dimension equals the given value if not null. To query for the null value, use {in: {runtimeVersion: [null]}} instead.""" runtimeVersion:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serverId dimension equals the given value if not null. To query for the null value, use {in: {serverId: [null]}} instead.""" serverId:ID """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID """Selects rows whose userVersion dimension equals the given value if not null. To query for the null value, use {in: {userVersion: [null]}} instead.""" userVersion:String}"""Filter for data in AccountEdgeServerInfos. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input AccountEdgeServerInfosFilterIn{"""Selects rows whose bootId dimension is in the given list. A null value in the list means a row with null for that dimension.""" bootId:[ID]"""Selects rows whose executableSchemaId dimension is in the given list. A null value in the list means a row with null for that dimension.""" executableSchemaId:[ID]"""Selects rows whose libraryVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" libraryVersion:[String]"""Selects rows whose platform dimension is in the given list. A null value in the list means a row with null for that dimension.""" platform:[String]"""Selects rows whose runtimeVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" runtimeVersion:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serverId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serverId:[ID]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]"""Selects rows whose userVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" userVersion:[String]}input AccountEdgeServerInfosOrderBySpec{column:AccountEdgeServerInfosColumn!direction:Ordering!}type AccountEdgeServerInfosRecord{"""Dimensions of AccountEdgeServerInfos that can be grouped by.""" groupBy:AccountEdgeServerInfosDimensions!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Columns of AccountErrorStats.""" enum AccountErrorStatsColumn{CLIENT_NAME CLIENT_VERSION ERRORS_COUNT PATH QUERY_ID QUERY_NAME REQUESTS_WITH_ERRORS_COUNT SCHEMA_HASH SCHEMA_TAG SERVICE_ID TIMESTAMP}type AccountErrorStatsDimensions{clientName:String clientVersion:String path:String queryId:ID queryName:String schemaHash:String schemaTag:String serviceId:ID}"""Filter for data in AccountErrorStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input AccountErrorStatsFilter{and:[AccountErrorStatsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String in:AccountErrorStatsFilterIn not:AccountErrorStatsFilter or:[AccountErrorStatsFilter!]"""Selects rows whose path dimension equals the given value if not null. To query for the null value, use {in: {path: [null]}} instead.""" path:String """Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID}"""Filter for data in AccountErrorStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input AccountErrorStatsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose path dimension is in the given list. A null value in the list means a row with null for that dimension.""" path:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]}type AccountErrorStatsMetrics{errorsCount:Long!requestsWithErrorsCount:Long!}input AccountErrorStatsOrderBySpec{column:AccountErrorStatsColumn!direction:Ordering!}type AccountErrorStatsRecord{"""Dimensions of AccountErrorStats that can be grouped by.""" groupBy:AccountErrorStatsDimensions!"""Metrics of AccountErrorStats that can be aggregated over.""" metrics:AccountErrorStatsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}type AccountExperimentalFeatures{auditLogs:Boolean!championDashboard:Boolean!derivedLaunches:Boolean!federation2Preview:Boolean!preRequestPreview:Boolean!publicVariants:Boolean!variantHomepage:Boolean!webhooksPreview:Boolean!}"""Columns of AccountFieldLatencies.""" enum AccountFieldLatenciesColumn{FIELD_HISTOGRAM FIELD_NAME PARENT_TYPE SCHEMA_HASH SCHEMA_TAG SERVICE_ID TIMESTAMP}type AccountFieldLatenciesDimensions{field:String fieldName:String parentType:String schemaHash:String schemaTag:String serviceId:ID}"""Filter for data in AccountFieldLatencies. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input AccountFieldLatenciesFilter{and:[AccountFieldLatenciesFilter!]"""Selects rows whose fieldName dimension equals the given value if not null. To query for the null value, use {in: {fieldName: [null]}} instead.""" fieldName:String in:AccountFieldLatenciesFilterIn not:AccountFieldLatenciesFilter or:[AccountFieldLatenciesFilter!]"""Selects rows whose parentType dimension equals the given value if not null. To query for the null value, use {in: {parentType: [null]}} instead.""" parentType:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID}"""Filter for data in AccountFieldLatencies. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input AccountFieldLatenciesFilterIn{"""Selects rows whose fieldName dimension is in the given list. A null value in the list means a row with null for that dimension.""" fieldName:[String]"""Selects rows whose parentType dimension is in the given list. A null value in the list means a row with null for that dimension.""" parentType:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]}type AccountFieldLatenciesMetrics{fieldHistogram:DurationHistogram!}input AccountFieldLatenciesOrderBySpec{column:AccountFieldLatenciesColumn!direction:Ordering!}type AccountFieldLatenciesRecord{"""Dimensions of AccountFieldLatencies that can be grouped by.""" groupBy:AccountFieldLatenciesDimensions!"""Metrics of AccountFieldLatencies that can be aggregated over.""" metrics:AccountFieldLatenciesMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Columns of AccountFieldUsage.""" enum AccountFieldUsageColumn{CLIENT_NAME CLIENT_VERSION ESTIMATED_EXECUTION_COUNT EXECUTION_COUNT FIELD_NAME PARENT_TYPE QUERY_ID QUERY_NAME REFERENCING_OPERATION_COUNT SCHEMA_HASH SCHEMA_TAG SERVICE_ID TIMESTAMP}type AccountFieldUsageDimensions{clientName:String clientVersion:String fieldName:String parentType:String queryId:ID queryName:String schemaHash:String schemaTag:String serviceId:ID}"""Filter for data in AccountFieldUsage. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input AccountFieldUsageFilter{and:[AccountFieldUsageFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String """Selects rows whose fieldName dimension equals the given value if not null. To query for the null value, use {in: {fieldName: [null]}} instead.""" fieldName:String in:AccountFieldUsageFilterIn not:AccountFieldUsageFilter or:[AccountFieldUsageFilter!]"""Selects rows whose parentType dimension equals the given value if not null. To query for the null value, use {in: {parentType: [null]}} instead.""" parentType:String """Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID}"""Filter for data in AccountFieldUsage. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input AccountFieldUsageFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose fieldName dimension is in the given list. A null value in the list means a row with null for that dimension.""" fieldName:[String]"""Selects rows whose parentType dimension is in the given list. A null value in the list means a row with null for that dimension.""" parentType:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]}type AccountFieldUsageMetrics{estimatedExecutionCount:Long!executionCount:Long!referencingOperationCount:Long!}input AccountFieldUsageOrderBySpec{column:AccountFieldUsageColumn!direction:Ordering!}type AccountFieldUsageRecord{"""Dimensions of AccountFieldUsage that can be grouped by.""" groupBy:AccountFieldUsageDimensions!"""Metrics of AccountFieldUsage that can be aggregated over.""" metrics:AccountFieldUsageMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}type AccountInvitation{"""An accepted invitation cannot be used anymore""" acceptedAt:Timestamp """Who accepted the invitation""" acceptedBy:User """Time the invitation was created""" createdAt:Timestamp!"""Who created the invitation""" createdBy:User email:String!id:ID!"""Last time we sent an email for the invitation""" lastSentAt:Timestamp """Access role for the invitee""" role:UserPermission!}type AccountMembership{account:Account!createdAt:Timestamp!"""If this membership is a free seat (based on role)""" free:Boolean permission:UserPermission!user:User!}type AccountMutation{auditExport(id:String!):AuditLogExportMutation """Cancel a pending change from an annual team subscription to a monthly team subscription when the current period expires.""" cancelConvertAnnualTeamSubscriptionToMonthlyAtNextPeriod:Account """Cancel account subscriptions, subscriptions will remain active until the end of the paid period""" cancelSubscriptions:Account """Changes an annual team subscription to a monthly team subscription when the current period expires.""" convertAnnualTeamSubscriptionToMonthlyAtNextPeriod:Account """Changes a monthly team subscription to an annual team subscription.""" convertMonthlyTeamSubscriptionToAnnual:Account createStaticInvitation(role:UserPermission!):OrganizationInviteLink """Delete the account's avatar. Requires Account.canUpdateAvatar to be true.""" deleteAvatar:AvatarDeleteError """Acknowledge that a trial has expired and return to community""" dismissExpiredTrial:Account """Apollo admins only: extend an ongoing trial""" extendTrial(to:Timestamp!):Account """Hard delete an account and all associated services""" hardDelete:Void """Send an invitation to join the account by E-mail""" invite(email:String!role:UserPermission):AccountInvitation """Reactivate a canceled current subscription""" reactivateCurrentSubscription:Account """Refresh billing information from third-party billing service""" refreshBilling:Void """Delete an invitation""" removeInvitation(id:ID):Void """Remove a member of the account""" removeMember(id:ID!):Account requestAuditExport(actors:[ActorInput!]from:Timestamp!graphIds:[String!]to:Timestamp!):Account """Send a new E-mail for an existing invitation""" resendInvitation(id:ID):AccountInvitation revokeStaticInvitation(token:String!):OrganizationInviteLink """Apollo admins only: set the billing plan to an arbitrary plan""" setPlan(id:ID!):Void """Start a new team subscription with the given billing period""" startTeamSubscription(billingPeriod:BillingPeriod!):Account """Start a team trial""" startTrial:Account """This is called by the form shown to users after they cancel their team subscription.""" submitTeamCancellationFeedback(feedback:String!):Void """Apollo admins only: terminate any ongoing subscriptions in the account, without refunds""" terminateSubscriptions:Account """Update the billing address for a Recurly token""" updateBillingAddress(billingAddress:BillingAddressInput!):Account """Update the billing information from a Recurly token""" updateBillingInfo(token:String!):Void updateCompanyUrl(companyUrl:String):Account """Set the E-mail address of the account, used notably for billing""" updateEmail(email:String!):Void """Update the account ID""" updateID(id:ID!):Account """Update the company name""" updateName(name:String!):Void """Apollo admins only: enable or disable an account for PingOne SSO login""" updatePingOneSSOIDPID(idpid:String):Account """Updates the role assigned to new SSO users.""" updateSSODefaultRole(role:UserPermission!):OrganizationSSO """A (currently) internal to Apollo mutation to update a user's role within an organization""" updateUserPermission(permission:UserPermission!userID:ID!):User}"""Columns of AccountOperationCheckStats.""" enum AccountOperationCheckStatsColumn{CACHED_REQUESTS_COUNT CLIENT_NAME CLIENT_VERSION QUERY_ID QUERY_NAME SCHEMA_TAG SERVICE_ID TIMESTAMP UNCACHED_REQUESTS_COUNT}type AccountOperationCheckStatsDimensions{clientName:String clientVersion:String queryId:ID queryName:String schemaTag:String serviceId:ID}"""Filter for data in AccountOperationCheckStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input AccountOperationCheckStatsFilter{and:[AccountOperationCheckStatsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String in:AccountOperationCheckStatsFilterIn not:AccountOperationCheckStatsFilter or:[AccountOperationCheckStatsFilter!]"""Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID}"""Filter for data in AccountOperationCheckStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input AccountOperationCheckStatsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]}type AccountOperationCheckStatsMetrics{cachedRequestsCount:Long!uncachedRequestsCount:Long!}input AccountOperationCheckStatsOrderBySpec{column:AccountOperationCheckStatsColumn!direction:Ordering!}type AccountOperationCheckStatsRecord{"""Dimensions of AccountOperationCheckStats that can be grouped by.""" groupBy:AccountOperationCheckStatsDimensions!"""Metrics of AccountOperationCheckStats that can be aggregated over.""" metrics:AccountOperationCheckStatsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}type AccountPublishesStatsMetrics{totalPublishes:Long!}type AccountPublishesStatsRecord{id:ID!metrics:AccountPublishesStatsMetrics!timestamp:Timestamp!}"""Columns of AccountQueryStats.""" enum AccountQueryStatsColumn{CACHED_HISTOGRAM CACHED_REQUESTS_COUNT CACHE_TTL_HISTOGRAM CLIENT_NAME CLIENT_VERSION FORBIDDEN_OPERATION_COUNT FROM_ENGINEPROXY QUERY_ID QUERY_NAME REGISTERED_OPERATION_COUNT REQUESTS_WITH_ERRORS_COUNT SCHEMA_HASH SCHEMA_TAG SERVICE_ID TIMESTAMP UNCACHED_HISTOGRAM UNCACHED_REQUESTS_COUNT}type AccountQueryStatsDimensions{clientName:String clientVersion:String fromEngineproxy:String queryId:ID queryName:String querySignature:String schemaHash:String schemaTag:String serviceId:ID}"""Filter for data in AccountQueryStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input AccountQueryStatsFilter{and:[AccountQueryStatsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String """Selects rows whose fromEngineproxy dimension equals the given value if not null. To query for the null value, use {in: {fromEngineproxy: [null]}} instead.""" fromEngineproxy:String in:AccountQueryStatsFilterIn not:AccountQueryStatsFilter or:[AccountQueryStatsFilter!]"""Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID}"""Filter for data in AccountQueryStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input AccountQueryStatsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose fromEngineproxy dimension is in the given list. A null value in the list means a row with null for that dimension.""" fromEngineproxy:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]}type AccountQueryStatsMetrics{cacheTtlHistogram:DurationHistogram!cachedHistogram:DurationHistogram!cachedRequestsCount:Long!forbiddenOperationCount:Long!registeredOperationCount:Long!requestsWithErrorsCount:Long!totalLatencyHistogram:DurationHistogram!totalRequestCount:Long!uncachedHistogram:DurationHistogram!uncachedRequestsCount:Long!}input AccountQueryStatsOrderBySpec{column:AccountQueryStatsColumn!direction:Ordering!}type AccountQueryStatsRecord{"""Dimensions of AccountQueryStats that can be grouped by.""" groupBy:AccountQueryStatsDimensions!"""Metrics of AccountQueryStats that can be aggregated over.""" metrics:AccountQueryStatsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}type AccountRoles{canAudit:Boolean!canCreateDevGraph:Boolean!canCreateService:Boolean!canDelete:Boolean!canDownloadInvoice:Boolean!@deprecated(reason:"Use canQueryBillingInfo instead")canManageMembers:Boolean!canQuery:Boolean!canQueryAudit:Boolean!canQueryBillingInfo:Boolean!canQueryInvoices:Boolean!@deprecated(reason:"Use canQueryBillingInfo instead")canQueryMembers:Boolean!canQueryStats:Boolean!canReadTickets:Boolean!canRemoveMembers:Boolean!canSetConstrainedPlan:Boolean!canUpdateBillingInfo:Boolean!canUpdateMetadata:Boolean!}enum AccountState{ACTIVE CLOSED UNKNOWN UNPROVISIONED}"""A time window with a specified granularity over a given account.""" type AccountStatsWindow{billingUsageStats("""Filter to select what rows to return.""" filter:AccountBillingUsageStatsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order AccountBillingUsageStats by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[AccountBillingUsageStatsOrderBySpec!]):[AccountBillingUsageStatsRecord!]!edgeServerInfos("""Filter to select what rows to return.""" filter:AccountEdgeServerInfosFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order AccountEdgeServerInfos by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[AccountEdgeServerInfosOrderBySpec!]):[AccountEdgeServerInfosRecord!]!errorStats("""Filter to select what rows to return.""" filter:AccountErrorStatsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order AccountErrorStats by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[AccountErrorStatsOrderBySpec!]):[AccountErrorStatsRecord!]!fieldLatencies("""Filter to select what rows to return.""" filter:AccountFieldLatenciesFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order AccountFieldLatencies by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[AccountFieldLatenciesOrderBySpec!]):[AccountFieldLatenciesRecord!]!fieldUsage("""Filter to select what rows to return.""" filter:AccountFieldUsageFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order AccountFieldUsage by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[AccountFieldUsageOrderBySpec!]):[AccountFieldUsageRecord!]!operationCheckStats("""Filter to select what rows to return.""" filter:AccountOperationCheckStatsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order AccountOperationCheckStats by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[AccountOperationCheckStatsOrderBySpec!]):[AccountOperationCheckStatsRecord!]!queryStats("""Filter to select what rows to return.""" filter:AccountQueryStatsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order AccountQueryStats by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[AccountQueryStatsOrderBySpec!]):[AccountQueryStatsRecord!]!"""From field rounded down to the nearest resolution.""" roundedDownFrom:Timestamp!"""To field rounded up to the nearest resolution.""" roundedUpTo:Timestamp!tracePathErrorsRefs("""Filter to select what rows to return.""" filter:AccountTracePathErrorsRefsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order AccountTracePathErrorsRefs by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[AccountTracePathErrorsRefsOrderBySpec!]):[AccountTracePathErrorsRefsRecord!]!traceRefs("""Filter to select what rows to return.""" filter:AccountTraceRefsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order AccountTraceRefs by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[AccountTraceRefsOrderBySpec!]):[AccountTraceRefsRecord!]!}"""Columns of AccountTracePathErrorsRefs.""" enum AccountTracePathErrorsRefsColumn{CLIENT_NAME CLIENT_VERSION DURATION_BUCKET ERRORS_COUNT_IN_PATH ERRORS_COUNT_IN_TRACE ERROR_MESSAGE PATH QUERY_ID QUERY_NAME SCHEMA_HASH SCHEMA_TAG SERVICE_ID TIMESTAMP TRACE_HTTP_STATUS_CODE TRACE_ID TRACE_SIZE_BYTES TRACE_STARTS_AT}type AccountTracePathErrorsRefsDimensions{clientName:String clientVersion:String durationBucket:Int errorMessage:String path:String queryId:ID queryName:String schemaHash:String schemaTag:String serviceId:ID traceHttpStatusCode:Int traceId:ID traceStartsAt:Timestamp}"""Filter for data in AccountTracePathErrorsRefs. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input AccountTracePathErrorsRefsFilter{and:[AccountTracePathErrorsRefsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String """Selects rows whose durationBucket dimension equals the given value if not null. To query for the null value, use {in: {durationBucket: [null]}} instead.""" durationBucket:Int """Selects rows whose errorMessage dimension equals the given value if not null. To query for the null value, use {in: {errorMessage: [null]}} instead.""" errorMessage:String in:AccountTracePathErrorsRefsFilterIn not:AccountTracePathErrorsRefsFilter or:[AccountTracePathErrorsRefsFilter!]"""Selects rows whose path dimension equals the given value if not null. To query for the null value, use {in: {path: [null]}} instead.""" path:String """Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID """Selects rows whose traceHttpStatusCode dimension equals the given value if not null. To query for the null value, use {in: {traceHttpStatusCode: [null]}} instead.""" traceHttpStatusCode:Int """Selects rows whose traceId dimension equals the given value if not null. To query for the null value, use {in: {traceId: [null]}} instead.""" traceId:ID}"""Filter for data in AccountTracePathErrorsRefs. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input AccountTracePathErrorsRefsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose durationBucket dimension is in the given list. A null value in the list means a row with null for that dimension.""" durationBucket:[Int]"""Selects rows whose errorMessage dimension is in the given list. A null value in the list means a row with null for that dimension.""" errorMessage:[String]"""Selects rows whose path dimension is in the given list. A null value in the list means a row with null for that dimension.""" path:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]"""Selects rows whose traceHttpStatusCode dimension is in the given list. A null value in the list means a row with null for that dimension.""" traceHttpStatusCode:[Int]"""Selects rows whose traceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" traceId:[ID]}type AccountTracePathErrorsRefsMetrics{errorsCountInPath:Long!errorsCountInTrace:Long!traceSizeBytes:Long!}input AccountTracePathErrorsRefsOrderBySpec{column:AccountTracePathErrorsRefsColumn!direction:Ordering!}type AccountTracePathErrorsRefsRecord{"""Dimensions of AccountTracePathErrorsRefs that can be grouped by.""" groupBy:AccountTracePathErrorsRefsDimensions!"""Metrics of AccountTracePathErrorsRefs that can be aggregated over.""" metrics:AccountTracePathErrorsRefsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Columns of AccountTraceRefs.""" enum AccountTraceRefsColumn{CLIENT_NAME CLIENT_VERSION DURATION_BUCKET DURATION_NS QUERY_ID QUERY_NAME SCHEMA_HASH SCHEMA_TAG SERVICE_ID TIMESTAMP TRACE_ID TRACE_SIZE_BYTES}type AccountTraceRefsDimensions{clientName:String clientVersion:String durationBucket:Int queryId:ID queryName:String querySignature:String schemaHash:String schemaTag:String serviceId:ID traceId:ID}"""Filter for data in AccountTraceRefs. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input AccountTraceRefsFilter{and:[AccountTraceRefsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String """Selects rows whose durationBucket dimension equals the given value if not null. To query for the null value, use {in: {durationBucket: [null]}} instead.""" durationBucket:Int in:AccountTraceRefsFilterIn not:AccountTraceRefsFilter or:[AccountTraceRefsFilter!]"""Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID """Selects rows whose traceId dimension equals the given value if not null. To query for the null value, use {in: {traceId: [null]}} instead.""" traceId:ID}"""Filter for data in AccountTraceRefs. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input AccountTraceRefsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose durationBucket dimension is in the given list. A null value in the list means a row with null for that dimension.""" durationBucket:[Int]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]"""Selects rows whose traceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" traceId:[ID]}type AccountTraceRefsMetrics{durationNs:Long!traceSizeBytes:Long!}input AccountTraceRefsOrderBySpec{column:AccountTraceRefsColumn!direction:Ordering!}type AccountTraceRefsRecord{"""Dimensions of AccountTraceRefs that can be grouped by.""" groupBy:AccountTraceRefsDimensions!"""Metrics of AccountTraceRefs that can be aggregated over.""" metrics:AccountTraceRefsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""An actor (view of Identity) that performed an action within Studio.""" type Actor{actorId:ID!type:ActorType!}input ActorInput{actorId:ID!type:ActorType!}enum ActorType{ANONYMOUS_USER BACKFILL CRON GRAPH INTERNAL_IDENTITY SYNCHRONIZATION SYSTEM USER}union AddOperationCollectionEntryResult=OperationCollectionEntry|PermissionError|ValidationError union AddOperationCollectionToVariantResult=GraphVariant|InvalidTarget|PermissionError|ValidationError type AffectedClient{"""ID, often the name, of the client set by the user and reported alongside metrics""" clientReferenceId:ID@deprecated(reason:"Unsupported.")"""version of the client set by the user and reported alongside metrics""" clientVersion:String@deprecated(reason:"Unsupported.")}type AffectedQuery{"""If the operation would be approved if the check ran again. Returns null if queried from SchemaDiff.changes.affectedQueries.alreadyApproved""" alreadyApproved:Boolean """If the operation would be ignored if the check ran again""" alreadyIgnored:Boolean """List of changes affecting this query. Returns null if queried from SchemaDiff.changes.affectedQueries.changes""" changes:[ChangeOnOperation!]"""Name to display to the user for the operation""" displayName:String id:ID!"""Determines if this query validates against the proposed schema""" isValid:Boolean """Whether this operation was ignored and its severity was downgraded for that reason""" markedAsIgnored:Boolean """Whether the changes were marked as safe and its severity was downgraded for that reason""" markedAsSafe:Boolean """Name provided for the operation, which can be empty string if it is an anonymous operation""" name:String """First 128 characters of query signature for display""" signature:String}interface ApiKey{id:ID!keyName:String token:String!}type ApiKeyProvision{apiKey:ApiKey!created:Boolean!}type AuditLogExport{actors:[Identity!]bigqueryTriggeredAt:Timestamp completedAt:Timestamp createdAt:Timestamp!exportedFiles:[String!]from:Timestamp!graphs:[Service!]id:ID!requester:User status:AuditStatus!to:Timestamp!}type AuditLogExportMutation{cancel:Account delete:Account}enum AuditStatus{CANCELLED COMPLETED EXPIRED FAILED IN_PROGRESS QUEUED}type AvatarDeleteError{clientMessage:String!code:AvatarDeleteErrorCode!serverMessage:String!}enum AvatarDeleteErrorCode{SSO_USERS_CANNOT_DELETE_SELF_AVATAR}type AvatarUploadError{clientMessage:String!code:AvatarUploadErrorCode!serverMessage:String!}enum AvatarUploadErrorCode{SSO_USERS_CANNOT_UPLOAD_SELF_AVATAR}union AvatarUploadResult=AvatarUploadError|MediaUploadInfo type BillingAddress{address1:String address2:String city:String country:String state:String zip:String}"""Billing address inpnut""" input BillingAddressInput{address1:String!address2:String city:String!country:String!state:String!zip:String!}type BillingInfo{address:BillingAddress!cardType:String firstName:String lastFour:Int lastName:String month:Int vatNumber:String year:Int}enum BillingModel{REQUEST_BASED SEAT_BASED}type BillingMonth{end:Timestamp!requests:Long!start:Timestamp!}enum BillingPeriod{MONTHLY QUARTERLY SEMI_ANNUALLY YEARLY}type BillingPlan{addons:[BillingPlanAddon!]!billingModel:BillingModel!billingPeriod:BillingPeriod capabilities:BillingPlanCapabilities!description:String id:ID!isTrial:Boolean!kind:BillingPlanKind!name:String!"""The price of every seat""" pricePerSeatInUsdCents:Int """The price of subscribing to this plan with a quantity of 1 (currently always the case)""" pricePerUnitInUsdCents:Int!"""Whether the plan is accessible by all users in QueryRoot.allPlans, QueryRoot.plan, or AccountMutation.setPlan""" public:Boolean!tier:BillingPlanTier!}type BillingPlanAddon{id:ID!pricePerUnitInUsdCents:Int!}type BillingPlanAddonV2{id:ID!pricePerUnitInUsdCents:Int!}type BillingPlanCapabilities{clients:Boolean!contracts:Boolean!datadog:Boolean!errors:Boolean!federation:Boolean!launches:Boolean!maxAuditInDays:Int!maxRangeInDays:Int maxRequestsPerMonth:Long metrics:Boolean!notifications:Boolean!operationRegistry:Boolean!ranges:[String!]!schemaValidation:Boolean!traces:Boolean!userRoles:Boolean!webhooks:Boolean!}enum BillingPlanKind{COMMUNITY ENTERPRISE_INTERNAL ENTERPRISE_PAID ENTERPRISE_PILOT TEAM_PAID TEAM_TRIAL}enum BillingPlanKindV2{COMMUNITY ENTERPRISE_INTERNAL ENTERPRISE_PAID ENTERPRISE_PILOT TEAM_PAID TEAM_TRIAL UNKNOWN}enum BillingPlanTier{COMMUNITY ENTERPRISE TEAM}enum BillingPlanTierV2{COMMUNITY ENTERPRISE TEAM UNKNOWN}type BillingPlanV2{addons:[BillingPlanAddonV2!]!billingModel:BillingModel!billingPeriod:BillingPeriod clients:Boolean!contracts:Boolean!datadog:Boolean!description:String errors:Boolean!federation:Boolean!id:ID!isTrial:Boolean!kind:BillingPlanKindV2!launches:Boolean!maxAuditInDays:Int!maxRangeInDays:Int maxRequestsPerMonth:Long metrics:Boolean!name:String!notifications:Boolean!operationRegistry:Boolean!"""The price of every seat""" pricePerSeatInUsdCents:Int """The price of subscribing to this plan with a quantity of 1 (currently always the case)""" pricePerUnitInUsdCents:Int!"""Whether the plan is accessible by all users in QueryRoot.allPlans, QueryRoot.plan, or AccountMutation.setPlan""" public:Boolean!ranges:[String!]!schemaValidation:Boolean!tier:BillingPlanTierV2!traces:Boolean!userRoles:Boolean!webhooks:Boolean!}type BillingSubscription{activatedAt:Timestamp!addons:[BillingSubscriptionAddon!]!autoRenew:Boolean!"""The price of the subscription when ignoring add-ons (such as seats), ie quantity * pricePerUnitInUsdCents""" basePriceInUsdCents:Long!canceledAt:Timestamp currentPeriodEndsAt:Timestamp!currentPeriodStartedAt:Timestamp!expiresAt:Timestamp plan:BillingPlan!"""The price of every seat""" pricePerSeatInUsdCents:Int """The price of every unit in the subscription (hence multiplied by quantity to get to the basePriceInUsdCents)""" pricePerUnitInUsdCents:Int!quantity:Int!"""Total price of the subscription when it next renews, including add-ons (such as seats)""" renewalTotalPriceInUsdCents:Long!state:SubscriptionState!"""Total price of the subscription, including add-ons (such as seats)""" totalPriceInUsdCents:Long!"""When this subscription's trial period expires (if it is a trial). Not the same as the
+subscription's Recurly expiration).""" trialExpiresAt:Timestamp uuid:ID!}type BillingSubscriptionAddon{id:ID!pricePerUnitInUsdCents:Int!quantity:Int!}type BillingSubscriptionAddonV2{id:ID!pricePerUnitInUsdCents:Int!quantity:Int!}type BillingSubscriptionV2{"""The price of every unit in the subscription (hence multiplied by quantity to get to the basePriceInUsdCents)""" activatedAt:Timestamp!addons:[BillingSubscriptionAddonV2!]!autoRenew:Boolean!canceledAt:Timestamp currentPeriodEndsAt:Timestamp!currentPeriodStartedAt:Timestamp!expiresAt:Timestamp plan:BillingPlanV2!"""The price of every seat""" pricePerSeatInUsdCents:Int quantity:Int!state:SubscriptionStateV2!"""When this subscription's trial period expires (if it is a trial). Not the same as the
+subscription's Recurly expiration).""" trialExpiresAt:Timestamp uuid:ID!}"""Columns of BillingUsageStats.""" enum BillingUsageStatsColumn{ACCOUNT_ID OPERATION_COUNT OPERATION_COUNT_PROVIDED_EXPLICITLY SCHEMA_TAG SERVICE_ID TIMESTAMP}type BillingUsageStatsDimensions{accountId:ID operationCountProvidedExplicitly:String schemaTag:String serviceId:ID}"""Filter for data in BillingUsageStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input BillingUsageStatsFilter{"""Selects rows whose accountId dimension equals the given value if not null. To query for the null value, use {in: {accountId: [null]}} instead.""" accountId:ID and:[BillingUsageStatsFilter!]in:BillingUsageStatsFilterIn not:BillingUsageStatsFilter """Selects rows whose operationCountProvidedExplicitly dimension equals the given value if not null. To query for the null value, use {in: {operationCountProvidedExplicitly: [null]}} instead.""" operationCountProvidedExplicitly:String or:[BillingUsageStatsFilter!]"""Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID}"""Filter for data in BillingUsageStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input BillingUsageStatsFilterIn{"""Selects rows whose accountId dimension is in the given list. A null value in the list means a row with null for that dimension.""" accountId:[ID]"""Selects rows whose operationCountProvidedExplicitly dimension is in the given list. A null value in the list means a row with null for that dimension.""" operationCountProvidedExplicitly:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]}type BillingUsageStatsMetrics{operationCount:Long!}input BillingUsageStatsOrderBySpec{column:BillingUsageStatsColumn!direction:Ordering!}type BillingUsageStatsRecord{"""Dimensions of BillingUsageStats that can be grouped by.""" groupBy:BillingUsageStatsDimensions!"""Metrics of BillingUsageStats that can be aggregated over.""" metrics:BillingUsageStatsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""A blob (base64'ed in JSON & GraphQL)""" scalar Blob type Build{input:BuildInput!result:BuildResult}type BuildError{code:String locations:[SourceLocation!]!message:String!}type BuildFailure{errorMessages:[BuildError!]!}union BuildInput=CompositionBuildInput|FilterBuildInput union BuildResult=BuildFailure|BuildSuccess type BuildSuccess{coreSchema:CoreSchema!}enum CacheScope{PRIVATE PUBLIC UNKNOWN UNRECOGNIZED}"""A specific change to a definition in your schema.""" type Change{affectedQueries:[AffectedQuery!]"""Target arg of change made.""" argNode:NamedIntrospectionArg """Indication of the category of the change (e.g. addition, removal, edit).""" category:ChangeCategory!"""Node related to the top level node that was changed, such as a field in an object,
+a value in an enum or the object of an interface.""" childNode:NamedIntrospectionValue """Indication of the kind of target and action of the change, e.g. 'TYPE_REMOVED'.""" code:String!"""Human-readable description of the change.""" description:String!"""Top level node affected by the change.""" parentNode:NamedIntrospectionType """Severity of the change, either failure or warning.""" severity:ChangeSeverity!"""Indication of the success of the overall change, either failure, warning, or notice.""" type:ChangeType!@deprecated(reason:"use severity instead")}"""Defines a set of categories that a schema change
+can be grouped by.""" enum ChangeCategory{ADDITION DEPRECATION EDIT REMOVAL}"""These schema change codes represent all of the possible changes that can
+occur during the schema diff algorithm.""" enum ChangeCode{"""Type of the argument was changed.""" ARG_CHANGED_TYPE """Argument was changed from nullable to non-nullable.""" ARG_CHANGED_TYPE_OPTIONAL_TO_REQUIRED """Default value added or changed for the argument.""" ARG_DEFAULT_VALUE_CHANGE """Description was added, removed, or updated for argument.""" ARG_DESCRIPTION_CHANGE """Argument to a field was removed.""" ARG_REMOVED """Argument to the directive was removed.""" DIRECTIVE_ARG_REMOVED """Location of the directive was removed.""" DIRECTIVE_LOCATION_REMOVED """Directive was removed.""" DIRECTIVE_REMOVED """Repeatable flag was removed for directive.""" DIRECTIVE_REPEATABLE_REMOVED """Enum was deprecated.""" ENUM_DEPRECATED """Reason for enum deprecation changed.""" ENUM_DEPRECATED_REASON_CHANGE """Enum deprecation was removed.""" ENUM_DEPRECATION_REMOVED """Description was added, removed, or updated for enum value.""" ENUM_VALUE_DESCRIPTION_CHANGE """Field was added to the type.""" FIELD_ADDED """Return type for the field was changed.""" FIELD_CHANGED_TYPE """Field was deprecated.""" FIELD_DEPRECATED """Reason for field deprecation changed.""" FIELD_DEPRECATED_REASON_CHANGE """Field deprecation removed.""" FIELD_DEPRECATION_REMOVED """Description was added, removed, or updated for field.""" FIELD_DESCRIPTION_CHANGE """Type of the field in the input object was changed.""" FIELD_ON_INPUT_OBJECT_CHANGED_TYPE """Field was removed from the type.""" FIELD_REMOVED """Field was removed from the input object.""" FIELD_REMOVED_FROM_INPUT_OBJECT """Non-nullable field was added to the input object. (Deprecated.)""" NON_NULLABLE_FIELD_ADDED_TO_INPUT_OBJECT """Nullable field was added to the input type. (Deprecated.)""" NULLABLE_FIELD_ADDED_TO_INPUT_OBJECT """Nullable argument was added to the field.""" OPTIONAL_ARG_ADDED """Optional field was added to the input type.""" OPTIONAL_FIELD_ADDED_TO_INPUT_OBJECT """Non-nullable argument was added to the field.""" REQUIRED_ARG_ADDED """Non-nullable argument added to directive.""" REQUIRED_DIRECTIVE_ARG_ADDED """Required field was added to the input object.""" REQUIRED_FIELD_ADDED_TO_INPUT_OBJECT """Type was added to the schema.""" TYPE_ADDED """Type now implements the interface.""" TYPE_ADDED_TO_INTERFACE """A new value was added to the enum.""" TYPE_ADDED_TO_UNION """Type was changed from one kind to another.
+Ex: scalar to object or enum to union.""" TYPE_CHANGED_KIND """Description was added, removed, or updated for type.""" TYPE_DESCRIPTION_CHANGE """Type (object or scalar) was removed from the schema.""" TYPE_REMOVED """Type no longer implements the interface.""" TYPE_REMOVED_FROM_INTERFACE """Type is no longer included in the union.""" TYPE_REMOVED_FROM_UNION """A new value was added to the enum.""" VALUE_ADDED_TO_ENUM """Value was removed from the enum.""" VALUE_REMOVED_FROM_ENUM}"""Represents the tuple of static information
+about a particular kind of schema change.""" type ChangeDefinition{category:ChangeCategory!code:ChangeCode!defaultSeverity:ChangeSeverity!}"""Info about a change in the context of an operation it affects""" type ChangeOnOperation{"""Human-readable explanation of the impact of this change on the operation""" impact:String """The semantic info about this change, i.e. info about the change that doesn't depend on the operation""" semanticChange:SemanticChange!}enum ChangeSeverity{FAILURE NOTICE}"""Summary of the changes for a schema diff, computed by placing the changes into categories and then
+counting the size of each category. This categorization can be done in different ways, and
+accordingly there are multiple fields here for each type of categorization.
+
+Note that if an object or interface field is added/removed, there won't be any addition/removal
+changes generated for its arguments or @deprecated usages. If an enum type is added/removed, there
+will be addition/removal changes generated for its values, but not for those values' @deprecated
+usages. Description changes won't be generated for a schema element if that element (or an
+ancestor) was added/removed.""" type ChangeSummary{"""Counts for changes to fields of objects, input objects, and interfaces.""" field:FieldChangeSummaryCounts!"""Counts for all changes.""" total:TotalChangeSummaryCounts!"""Counts for changes to non-field aspects of objects, input objects, and interfaces,
+and all aspects of enums, unions, and scalars.""" type:TypeChangeSummaryCounts!}enum ChangeType{FAILURE NOTICE}type ChangelogLaunchResult{createdAt:Timestamp!schemaTagID:ID!}"""Destination for notifications""" interface Channel{id:ID!name:String!subscriptions:[ChannelSubscription!]!}interface ChannelSubscription{channels:[Channel!]!enabled:Boolean!id:ID!variant:String}type CheckConfiguration{"""Time when check configuration was created""" createdAt:Timestamp!"""Clients to ignore during validation""" excludedClients:[ClientFilter!]!"""Operation names to ignore during validation""" excludedOperationNames:[OperationNameFilter]"""Operations to ignore during validation""" excludedOperations:[ExcludedOperation!]!"""Graph that this check configuration belongs to""" graphID:ID!"""ID of the check configuration""" id:ID!"""Default configuration to include operations on the base variant.""" includeBaseVariant:Boolean!"""Variant overrides for validation""" includedVariants:[String!]!"""Minimum number of requests within the window for an operation to be considered.""" operationCountThreshold:Int!"""Number of requests within the window for an operation to be considered, relative to
+total request count. Expected values are between 0 and 0.05 (minimum 5% of
+total request volume)""" operationCountThresholdPercentage:Float!"""Only check operations from the last <timeRangeSeconds> seconds.
+The default is 7 days (604,800 seconds).""" timeRangeSeconds:Long!"""Time when check configuration was last updated""" updatedAt:Timestamp!"""Identity of the last user to update the check configuration""" updatedBy:Identity}"""Filter options available when listing checks.""" input CheckFilterInput{authors:[String!]branches:[String!]status:CheckFilterInputStatusOption subgraphs:[String!]}"""Options for filtering CheckWorkflows by status""" enum CheckFilterInputStatusOption{FAILED PASSED PENDING}"""The result of performing a subgraph check, including all steps.""" type CheckPartialSchemaResult{"""Overall result of the check. This will be null if composition validation was unsuccessful.""" checkSchemaResult:CheckSchemaResult """Result of compostion run as part of the overall subgraph check.""" compositionValidationResult:CompositionValidationResult!"""If any modifications were detected in the composed core schema""" coreSchemaModified:Boolean!"""Check workflow associated with the overall subgraph check.""" workflow:CheckWorkflow}type CheckSchemaResult{"""Schema diff and affected operations generated by the schema check""" diffToPrevious:SchemaDiff!"""ID of the operations check that was created""" operationsCheckID:ID!"""Generated url to view schema diff in Engine""" targetUrl:String """Workflow associated with this check result""" workflow:CheckWorkflow}type CheckWorkflow{"""The variant provided as a base to check against.  Only the differences from the
+base schema will be tested in operations checks.""" baseVariant:GraphVariant completedAt:Timestamp createdAt:Timestamp!"""Contextual parameters supplied by the runtime environment where the check was run.""" gitContext:GitContext id:ID!"""The name of the implementing service that was responsible for triggering the validation.""" implementingServiceName:String """If this check is triggered for an sdl fetched using introspection, this is the endpoint where that schema was being served.""" introspectionEndpoint:String """Only true if the check was triggered from Sandbox Checks page.""" isSandboxCheck:Boolean!"""If this check was created by rerunning, the original check that was rerun.""" rerunOf:CheckWorkflow """Checks created by re-running this check, most recent first.""" reruns(limit:Int!=20):[CheckWorkflow!]startedAt:Timestamp """Overall status of the workflow, based on the underlying task statuses.""" status:CheckWorkflowStatus!"""The set of check tasks associated with this workflow, e.g. OperationsCheck, GraphComposition, etc.""" tasks:[CheckWorkflowTask!]!"""Identity of the user who ran this check""" triggeredBy:Identity """Configuration of validation at the time the check was run.""" validationConfig:SchemaDiffValidationConfig}type CheckWorkflowMutation{"""Re-run a check workflow using the current configuration. A new workflow is created and returned.""" rerun:CheckWorkflowRerunResult}type CheckWorkflowRerunResult{"""Check workflow created by re-running.""" result:CheckWorkflow """Check workflow that was rerun.""" source:CheckWorkflow}enum CheckWorkflowStatus{FAILED PASSED PENDING}interface CheckWorkflowTask{completedAt:Timestamp createdAt:Timestamp!id:ID!status:CheckWorkflowTaskStatus!"""The workflow that this task belongs to.""" workflow:CheckWorkflow!}enum CheckWorkflowTaskStatus{BLOCKED FAILED PASSED PENDING}"""Client filter configuration for a graph.""" type ClientFilter{"""name of the client set by the user and reported alongside metrics""" name:String """version of the client set by the user and reported alongside metrics""" version:String}"""Options to filter by client reference ID, client name, and client version.
+If passing client version, make sure to either provide a client reference ID or client name.""" input ClientFilterInput{"""name of the client set by the user and reported alongside metrics""" name:String """version of the client set by the user and reported alongside metrics""" version:String}"""Filter options to exclude by client reference ID, client name, and client version.""" input ClientInfoFilter{name:String """Ignored""" referenceID:ID version:String}"""Filter options to exclude clients. Used as an output type for SchemaDiffValidationConfig.""" type ClientInfoFilterOutput{name:String version:String}enum ComparisonOperator{EQUALS GREATER_THAN GREATER_THAN_OR_EQUAL_TO LESS_THAN LESS_THAN_OR_EQUAL_TO NOT_EQUALS UNRECOGNIZED}"""The result of composition run in the cloud, upon an attempted subgraph deletion.""" type CompositionAndRemoveResult{"""The produced composition config. Will be null if there are any errors""" compositionConfig:CompositionConfig """Whether the removed implementing service existed.""" didExist:Boolean!"""  List of errors during composition. Errors mean that Apollo was unable to compose the
+  graph variant's subgraphs into a GraphQL schema. If present, gateways / routers
+are not updated.""" errors:[SchemaCompositionError]!"""ID that points to the results of composition.""" graphCompositionID:String!"""List of subgraphs that are included in this composition.""" subgraphConfigs:[SubgraphConfig!]!"""Whether the gateway/router was updated via Uplink, or would have been for dry runs.""" updatedGateway:Boolean!}"""The result of composition run in the cloud, upon attempted publish of a subgraph.""" type CompositionAndUpsertResult{"""The produced composition config, or null if there are any errors.""" compositionConfig:CompositionConfig """List of errors during composition. Errors mean that Apollo was unable to compose the
+graph variant's subgraphs into a supergraph schema. If present, gateways / routers
+are not updated.""" errors:[SchemaCompositionError]!"""ID that points to the results of composition.""" graphCompositionID:String!"""Copy text for the launch result of a publish.""" launchCliCopy:String """Link to corresponding launches page on Studio if avaliable.""" launchUrl:String """List of subgraphs that are included in this composition.""" subgraphConfigs:[SubgraphConfig!]!"""Whether the gateway/router was updated via Uplink, or would have been for dry runs.""" updatedGateway:Boolean!"""Whether a subgraph was created as part of this mutation.""" wasCreated:Boolean!"""Whether an implementingService was updated as part of this mutation""" wasUpdated:Boolean!}type CompositionBuildInput{subgraphs:[Subgraph!]!version:String}type CompositionCheckTask implements CheckWorkflowTask{completedAt:Timestamp createdAt:Timestamp!id:ID!"""The result of the composition.""" result:CompositionResult status:CheckWorkflowTaskStatus!workflow:CheckWorkflow!}"""Composition configuration exposed to the gateway.""" type CompositionConfig{"""List of GCS links for implementing services that comprise a composed graph. Is empty if tag/inaccessible is enabled.""" implementingServiceLocations:[ImplementingServiceLocation!]!@deprecated(reason:"Soon we will stop writing to GCS locations")"""Hash of the API schema.""" schemaHash:String!}"""The result of composition run in the cloud.""" type CompositionPublishResult implements CompositionResult{"""The produced composition config. Will be null if there are any errors""" compositionConfig:CompositionConfig """Supergraph SDL generated by composition (this is not the CSDL, that is a deprecated format).""" csdl:GraphQLDocument@deprecated(reason:"Use supergraphSdl instead")"""List of errors during composition. Errors mean that Apollo was unable to compose the
+graph variant's subgraphs into a supergraph schema. If present, gateways / routers
+are not updated.""" errors:[SchemaCompositionError!]!"""ID for a particular composition.""" graphCompositionID:ID!"""List of subgraphs that are included in this composition.""" subgraphConfigs:[SubgraphConfig!]!"""Supergraph SDL generated by composition.""" supergraphSdl:GraphQLDocument """Whether the gateway/router was updated via Uplink, or would have been for dry runs.""" updatedGateway:Boolean!webhookNotificationBody:String}"""Result of a composition, often as the result of a subgraph check or subgraph publish.
+See implementations for more details.""" interface CompositionResult{"""Supergraph SDL generated by composition (this is not the cSDL, a deprecated format).""" csdl:GraphQLDocument@deprecated(reason:"Use supergraphSdl instead")"""List of errors during composition. Errors mean that Apollo was unable to compose the
+graph variant's subgraphs into a supergraph schema. If present, gateways / routers
+are not updated.""" errors:[SchemaCompositionError!]!"""Globally unique identifier for the composition.""" graphCompositionID:ID!"""List of subgraphs included in this composition.""" subgraphConfigs:[SubgraphConfig!]!"""Supergraph SDL generated by composition.""" supergraphSdl:GraphQLDocument}type CompositionStatusSubscription implements ChannelSubscription{channels:[Channel!]!createdAt:Timestamp!enabled:Boolean!id:ID!lastUpdatedAt:Timestamp!variant:String}"""The composition config exposed to the gateway""" type CompositionValidationDetails{"""List of implementing service partial schemas that comprised the graph composed during validation""" implementingServices:[FederatedImplementingServicePartialSchema!]!"""Hash of the composed schema""" schemaHash:String}"""Metadata about the result of compositions validation run in the cloud, during a subgraph check.""" type CompositionValidationResult implements CompositionResult{"""Describes whether composition succeeded.""" compositionSuccess:Boolean!"""Akin to a composition config, represents the subgraph schemas and corresponding subgraphs that were used
+in running composition. Will be null if any errors are encountered. Also may contain a schema hash if
+one could be computed, which can be used for schema validation.""" compositionValidationDetails:CompositionValidationDetails """Supergraph SDL generated by composition (this is not the CSDL, that is a deprecated format).""" csdl:GraphQLDocument@deprecated(reason:"Use supergraphSdl instead")"""List of errors during composition. Errors mean that Apollo was unable to compose the
+graph variant's subgraphs into a supergraph schema. If present, gateways / routers
+are not updated.""" errors:[SchemaCompositionError!]!"""ID that points to the results of this composition.""" graphCompositionID:ID!"""The implementing service that was responsible for triggering the validation""" proposedImplementingService:FederatedImplementingServicePartialSchema!"""List of subgraphs that are included in this composition.""" subgraphConfigs:[SubgraphConfig!]!"""Supergraph schema document generated by composition.""" supergraphSdl:GraphQLDocument """If created as part of a check workflow, the associated workflow task.""" workflowTask:CompositionCheckTask}type ContractPreview{result:ContractPreviewResult!upstreamLaunch:Launch!}type ContractPreviewErrors{errors:[String!]!failedAt:ContractVariantFailedStep!}union ContractPreviewResult=ContractPreviewErrors|ContractPreviewSuccess type ContractPreviewSuccess{apiDocument:String!coreDocument:String!fieldCount:Int!typeCount:Int!}enum ContractVariantFailedStep{ADD_DIRECTIVE_DEFINITIONS_IF_NOT_PRESENT DIRECTIVE_DEFINITION_LOCATION_AUGMENTING EMPTY_OBJECT_AND_INTERFACE_MASKING EMPTY_UNION_MASKING INPUT_VALIDATION PARSING PARSING_TAG_DIRECTIVES PARTIAL_INTERFACE_MASKING SCHEMA_RETRIEVAL TAG_INHERITING TAG_MATCHING TO_API_SCHEMA TO_FILTER_SCHEMA UNKNOWN VERSION_CHECK}type ContractVariantPreviewErrors{errorMessages:[String!]!failedStep:ContractVariantFailedStep!}union ContractVariantPreviewResult=ContractVariantPreviewErrors|ContractVariantPreviewSuccess type ContractVariantPreviewSuccess{baseApiSchema:String!baseCoreSchema:String!contractApiSchema:String!contractCoreSchema:String!}type ContractVariantUpsertErrors{errorMessages:[String!]!}union ContractVariantUpsertResult=ContractVariantUpsertErrors|ContractVariantUpsertSuccess type ContractVariantUpsertSuccess{contractVariant:GraphVariant!}type CoreSchema{apiDocument:GraphQLDocument!coreDocument:GraphQLDocument!coreHash:String!fieldCount:Int!typeCount:Int!}union CreateOperationCollectionResult=OperationCollection|PermissionError|ValidationError type CronExecution{completedAt:Timestamp failure:String id:ID!job:CronJob!resolvedAt:Timestamp resolvedBy:Actor schedule:String!startedAt:Timestamp!}type CronJob{group:String!name:String!recentExecutions(n:Int):[CronExecution!]!}enum DatadogApiRegion{EU EU1 US US1 US1FED US3 US5}type DatadogMetricsConfig{apiKey:String!apiRegion:DatadogApiRegion!enabled:Boolean!legacyMetricNames:Boolean!}union DeleteOperationCollectionResult=DeleteOperationCollectionSuccess|PermissionError type DeleteOperationCollectionSuccess{sandboxOwner:User variants:[GraphVariant!]!}"""The result of attempting to delete a graph variant.""" type DeleteSchemaTagResult{"""WHether a variant was deleted or not.""" deleted:Boolean!}enum DeletionTargetType{ACCOUNT USER}"""Support for a single directive on a graph variant""" type DirectiveSupportStatus{"""whether the directive is supported on the current graph variant""" enabled:Boolean!"""name of the directive""" name:String!}union DuplicateOperationCollectionResult=OperationCollection|PermissionError|ValidationError type DurationHistogram{averageDurationMs:Float buckets:[DurationHistogramBucket!]!durationMs("""Percentile (between 0 and 1)""" percentile:Float!):Float """Counts per durationBucket, where sequences of zeroes are replaced with the negative of their size""" sparseBuckets:[Long!]!totalCount:Long!totalDurationMs:Float!}type DurationHistogramBucket{count:Long!index:Int!rangeBeginMs:Float!rangeEndMs:Float!}input EdgeServerInfo{"""A randomly generated UUID, immutable for the lifetime of the edge server runtime.""" bootId:String!"""A unique identifier for the executable GraphQL served by the edge server. length must be <= 64 characters.""" executableSchemaId:String!"""The graph variant, defaults to 'current'""" graphVariant:String!="current" """The version of the edge server reporting agent, e.g. apollo-server-2.8, graphql-java-3.1, etc. length must be <= 256 characters.""" libraryVersion:String """The infra environment in which this edge server is running, e.g. localhost, Kubernetes, AWS Lambda, Google CloudRun, AWS ECS, etc. length must be <= 256 characters.""" platform:String """The runtime in which the edge server is running, e.g. node 12.03, zulu8.46.0.19-ca-jdk8.0.252-macosx_x64, etc. length must be <= 256 characters.""" runtimeVersion:String """If available, an identifier for the edge server instance, such that when restarting this instance it will have the same serverId, with a different bootId. For example, in Kubernetes this might be the pod name. Length must be <= 256 characters.""" serverId:String """An identifier used to distinguish the version (from the user's perspective) of the edge server's code itself. For instance, the git sha of the server's repository or the docker sha of the associated image this server runs with. Length must be <= 256 characters.""" userVersion:String}"""Columns of EdgeServerInfos.""" enum EdgeServerInfosColumn{BOOT_ID EXECUTABLE_SCHEMA_ID LIBRARY_VERSION PLATFORM RUNTIME_VERSION SCHEMA_TAG SERVER_ID SERVICE_ID TIMESTAMP USER_VERSION}type EdgeServerInfosDimensions{bootId:ID executableSchemaId:ID libraryVersion:String platform:String runtimeVersion:String schemaTag:String serverId:ID serviceId:ID userVersion:String}"""Filter for data in EdgeServerInfos. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input EdgeServerInfosFilter{and:[EdgeServerInfosFilter!]"""Selects rows whose bootId dimension equals the given value if not null. To query for the null value, use {in: {bootId: [null]}} instead.""" bootId:ID """Selects rows whose executableSchemaId dimension equals the given value if not null. To query for the null value, use {in: {executableSchemaId: [null]}} instead.""" executableSchemaId:ID in:EdgeServerInfosFilterIn """Selects rows whose libraryVersion dimension equals the given value if not null. To query for the null value, use {in: {libraryVersion: [null]}} instead.""" libraryVersion:String not:EdgeServerInfosFilter or:[EdgeServerInfosFilter!]"""Selects rows whose platform dimension equals the given value if not null. To query for the null value, use {in: {platform: [null]}} instead.""" platform:String """Selects rows whose runtimeVersion dimension equals the given value if not null. To query for the null value, use {in: {runtimeVersion: [null]}} instead.""" runtimeVersion:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serverId dimension equals the given value if not null. To query for the null value, use {in: {serverId: [null]}} instead.""" serverId:ID """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID """Selects rows whose userVersion dimension equals the given value if not null. To query for the null value, use {in: {userVersion: [null]}} instead.""" userVersion:String}"""Filter for data in EdgeServerInfos. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input EdgeServerInfosFilterIn{"""Selects rows whose bootId dimension is in the given list. A null value in the list means a row with null for that dimension.""" bootId:[ID]"""Selects rows whose executableSchemaId dimension is in the given list. A null value in the list means a row with null for that dimension.""" executableSchemaId:[ID]"""Selects rows whose libraryVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" libraryVersion:[String]"""Selects rows whose platform dimension is in the given list. A null value in the list means a row with null for that dimension.""" platform:[String]"""Selects rows whose runtimeVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" runtimeVersion:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serverId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serverId:[ID]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]"""Selects rows whose userVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" userVersion:[String]}input EdgeServerInfosOrderBySpec{column:EdgeServerInfosColumn!direction:Ordering!}type EdgeServerInfosRecord{"""Dimensions of EdgeServerInfos that can be grouped by.""" groupBy:EdgeServerInfosDimensions!"""Starting segment timestamp.""" timestamp:Timestamp!}enum EmailCategory{EDUCATIONAL}type EmailPreferences{email:String!subscriptions:[EmailCategory!]!unsubscribedFromAll:Boolean!}interface Error{message:String!}"""Columns of ErrorStats.""" enum ErrorStatsColumn{ACCOUNT_ID CLIENT_NAME CLIENT_VERSION ERRORS_COUNT PATH QUERY_ID QUERY_NAME REQUESTS_WITH_ERRORS_COUNT SCHEMA_HASH SCHEMA_TAG SERVICE_ID TIMESTAMP}type ErrorStatsDimensions{accountId:ID clientName:String clientVersion:String path:String queryId:ID queryName:String schemaHash:String schemaTag:String serviceId:ID}"""Filter for data in ErrorStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input ErrorStatsFilter{"""Selects rows whose accountId dimension equals the given value if not null. To query for the null value, use {in: {accountId: [null]}} instead.""" accountId:ID and:[ErrorStatsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String in:ErrorStatsFilterIn not:ErrorStatsFilter or:[ErrorStatsFilter!]"""Selects rows whose path dimension equals the given value if not null. To query for the null value, use {in: {path: [null]}} instead.""" path:String """Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID}"""Filter for data in ErrorStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input ErrorStatsFilterIn{"""Selects rows whose accountId dimension is in the given list. A null value in the list means a row with null for that dimension.""" accountId:[ID]"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose path dimension is in the given list. A null value in the list means a row with null for that dimension.""" path:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]}type ErrorStatsMetrics{errorsCount:Long!requestsWithErrorsCount:Long!}input ErrorStatsOrderBySpec{column:ErrorStatsColumn!direction:Ordering!}type ErrorStatsRecord{"""Dimensions of ErrorStats that can be grouped by.""" groupBy:ErrorStatsDimensions!"""Metrics of ErrorStats that can be aggregated over.""" metrics:ErrorStatsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}""" Input parameters for run explorer operation event.""" enum EventEnum{CLICK_CHECK_LIST CLICK_GO_TO_GRAPH_SETTINGS RUN_EXPLORER_OPERATION}"""Excluded operation for a graph.""" type ExcludedOperation{"""Operation ID to exclude from schema check.""" ID:ID!}"""Option to filter by operation ID.""" input ExcludedOperationInput{"""Operation ID to exclude from schema check.""" ID:ID!}type FeatureIntros{devGraph:Boolean!federatedGraph:Boolean!freeConsumerSeats:Boolean!}"""Feature Intros Input Type""" input FeatureIntrosInput{devGraph:Boolean federatedGraph:Boolean freeConsumerSeats:Boolean}"""Subgraph. Federated graph variants that are managed by Apollo Studio are composed of subgraphs.
+See https://www.apollographql.com/docs/federation/managed-federation/overview/ for more information.""" type FederatedImplementingService{"""The subgraph schema actively published, used for composition for the graph variant this subgraph belongs to.""" activePartialSchema:PartialSchema!"""Timestamp of when this subgraph was created.""" createdAt:Timestamp!"""The ID of the graph this subgraph belongs to.""" graphID:String!"""Which variant of a graph this subgraph belongs to.""" graphVariant:String!"""Name of the subgraph.""" name:String!"""The particular version/edition of a subgraph, entered by users. Typically a Git SHA or docker image ID.""" revision:String!"""Timestamp for when this subgraph was updated.""" updatedAt:Timestamp!"""URL of the subgraph's GraphQL endpoint.""" url:String}"""A minimal representation of a federated implementing service, using only a name and partial schema SDL""" type FederatedImplementingServicePartialSchema{"""The name of the implementing service""" name:String!"""The partial schema of the implementing service""" sdl:String!}"""Container for a list of subgraphs composing a graph.""" type FederatedImplementingServices{"""The list of underlying subgraphs.""" services:[FederatedImplementingService!]!}"""Counts of changes at the field level, including objects, interfaces, and input fields.""" type FieldChangeSummaryCounts{"""Number of changes that are additions of fields to object, interface, and input types.""" additions:Int!"""Number of changes that are field edits. This includes fields changing type and any field
+deprecation and description changes, but also includes any argument changes and any input object
+field changes.""" edits:Int!"""Number of changes that are removals of fields from object, interface, and input types.""" removals:Int!}"""Columns of FieldLatencies.""" enum FieldLatenciesColumn{FIELD_HISTOGRAM FIELD_NAME PARENT_TYPE SCHEMA_HASH SCHEMA_TAG SERVICE_ID TIMESTAMP}type FieldLatenciesDimensions{field:String fieldName:String parentType:String schemaHash:String schemaTag:String serviceId:ID}"""Filter for data in FieldLatencies. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input FieldLatenciesFilter{and:[FieldLatenciesFilter!]"""Selects rows whose fieldName dimension equals the given value if not null. To query for the null value, use {in: {fieldName: [null]}} instead.""" fieldName:String in:FieldLatenciesFilterIn not:FieldLatenciesFilter or:[FieldLatenciesFilter!]"""Selects rows whose parentType dimension equals the given value if not null. To query for the null value, use {in: {parentType: [null]}} instead.""" parentType:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID}"""Filter for data in FieldLatencies. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input FieldLatenciesFilterIn{"""Selects rows whose fieldName dimension is in the given list. A null value in the list means a row with null for that dimension.""" fieldName:[String]"""Selects rows whose parentType dimension is in the given list. A null value in the list means a row with null for that dimension.""" parentType:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]}type FieldLatenciesMetrics{fieldHistogram:DurationHistogram!}input FieldLatenciesOrderBySpec{column:FieldLatenciesColumn!direction:Ordering!}type FieldLatenciesRecord{"""Dimensions of FieldLatencies that can be grouped by.""" groupBy:FieldLatenciesDimensions!"""Metrics of FieldLatencies that can be aggregated over.""" metrics:FieldLatenciesMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Columns of FieldUsage.""" enum FieldUsageColumn{CLIENT_NAME CLIENT_VERSION ESTIMATED_EXECUTION_COUNT EXECUTION_COUNT FIELD_NAME PARENT_TYPE QUERY_ID QUERY_NAME REFERENCING_OPERATION_COUNT SCHEMA_HASH SCHEMA_TAG SERVICE_ID TIMESTAMP}type FieldUsageDimensions{clientName:String clientVersion:String fieldName:String parentType:String queryId:ID queryName:String schemaHash:String schemaTag:String serviceId:ID}"""Filter for data in FieldUsage. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input FieldUsageFilter{and:[FieldUsageFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String """Selects rows whose fieldName dimension equals the given value if not null. To query for the null value, use {in: {fieldName: [null]}} instead.""" fieldName:String in:FieldUsageFilterIn not:FieldUsageFilter or:[FieldUsageFilter!]"""Selects rows whose parentType dimension equals the given value if not null. To query for the null value, use {in: {parentType: [null]}} instead.""" parentType:String """Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID}"""Filter for data in FieldUsage. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input FieldUsageFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose fieldName dimension is in the given list. A null value in the list means a row with null for that dimension.""" fieldName:[String]"""Selects rows whose parentType dimension is in the given list. A null value in the list means a row with null for that dimension.""" parentType:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]}type FieldUsageMetrics{estimatedExecutionCount:Long!executionCount:Long!referencingOperationCount:Long!}input FieldUsageOrderBySpec{column:FieldUsageColumn!direction:Ordering!}type FieldUsageRecord{"""Dimensions of FieldUsage that can be grouped by.""" groupBy:FieldUsageDimensions!"""Metrics of FieldUsage that can be aggregated over.""" metrics:FieldUsageMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}type FilterBuildInput{filterConfig:FilterConfig!schemaHash:String!}type FilterConfig{exclude:[String!]!include:[String!]!}input FilterConfigInput{exclude:[String!]!include:[String!]!}type GitContext{branch:String commit:ID commitUrl:String committer:String message:String remoteHost:GitRemoteHost remoteUrl:String}"""This is stored with a schema when it is uploaded""" input GitContextInput{branch:String commit:ID committer:String message:String remoteUrl:String}enum GitRemoteHost{BITBUCKET GITHUB GITLAB}type GlobalExperimentalFeatures{operationsCollections:Boolean!sandboxesFullRelease:Boolean!sandboxesPreview:Boolean!sandboxesSchemaChecksPage:Boolean!sandboxesSchemaDiffPage:Boolean!subgraphsInSandbox:Boolean!}type GraphApiKey implements ApiKey{createdAt:Timestamp!createdBy:Identity id:ID!keyName:String role:UserPermission!token:String!}"""A union of all combinations that can comprise the implementingServices for a Service""" union GraphImplementors=FederatedImplementingServices|NonFederatedImplementingService scalar GraphQLDocument """A variant of a graph, often corresponding to an environment where a graph runs (e.g. staging).
+See https://www.apollographql.com/docs/studio/org/graphs/ for more details.""" type GraphVariant{"""As new schema tags keep getting published, activeSchemaPublish refers to the latest.""" activeSchemaPublish:SchemaTag """The version of composition currently in use, if applicable""" compositionVersion:String """Filter configuration used to create the contract schema""" contractFilterConfig:FilterConfig """Preview a Contract schema built from this source variant.""" contractPreview(filters:FilterConfigInput!):ContractPreview!"""Explorer setting for default headers for a graph""" defaultHeaders:String derivedVariantCount:Int!"""Graph the variant belongs to.""" graph:Service!"""Graph ID of the variant. Prefer using graph { id } when feasible.""" graphId:String!"""If the variant has managed subgraphs.""" hasManagedSubgraphs:Boolean """Global identifier for the graph variant, in the form `graph@variant`.""" id:ID!"""Represents whether this variant is a Contract.""" isContract:Boolean!"""Is this variant one of the current user's favorite variants?""" isFavoriteOfCurrentUser:Boolean!"""If the variant has managed subgraphs.""" isFederated:Boolean@deprecated(reason:"Replaced by hasManagedSubgraphs")"""If the variant is protected""" isProtected:Boolean!isPublic:Boolean!"""Represents whether this variant should be listed in the public variants directory. This can only be true if the variant is also public.""" isPubliclyListed:Boolean!"""Represents whether Apollo has verified the authenticity of this public variant. This can only be true if the variant is also public.""" isVerified:Boolean!"""Latest approved launch for the variant, and what is served through Uplink.""" latestApprovedLaunch:Launch """Latest launch for the variant, whether successful or not.""" latestLaunch:Launch """Latest publication for the variant.""" latestPublication:SchemaTag launch(id:ID!):Launch launchHistory(limit:Int!=100):[Launch!]!links:[LinkInfo!]"""Name of the variant, like `variant`.""" name:String!operationCollections:[OperationCollection!]!"""Which permissions the current user has for interacting with this variant""" permissions:GraphVariantPermissions!"""Generate a federated operation plan for a given operation""" plan(document:GraphQLDocument!operationName:String):QueryPlan """Explorer setting for preflight script to run before the actual GraphQL operations is run.""" preflightScript:String readme:Readme """Registry stats for this particular graph variant""" registryStatsWindow(from:Timestamp!resolution:Resolution to:Timestamp):RegistryStatsWindow """The total number of requests for this variant in the last 24 hours""" requestsInLastDay:Long """If the graphql endpoint is set up to accept cookies.""" sendCookies:Boolean sourceVariant:GraphVariant """List of subgraphs that comprise a variant, null if not federated.
+Set includeDeleted to see deleted subgraphs.""" subgraphs(includeDeleted:Boolean!=false):[FederatedImplementingService!]"""URL where subscription operations can be executed.""" subscriptionUrl:String """A list of supported directives""" supportedDirectives:[DirectiveSupportStatus!]"""URL where non-subscription operations can be executed.""" url:String """The last instant that usage information (e.g. operation stat, client stats) was reported for this variant""" usageLastReportedAt:Timestamp}"""Result of looking up a variant by ref""" union GraphVariantLookup=GraphVariant|InvalidRefFormat """Modifies a variant of a graph, also called a schema tag in parts of our product.""" type GraphVariantMutation{addLinkToVariant(title:String type:LinkInfoType!url:String!):GraphVariant!configureComposition(enableTagAndInaccessible:Boolean version:String):GraphVariant enableTagAndInaccessible(enabled:Boolean!):GraphVariant@deprecated(reason:"Use configureComposition instead")"""Graph ID of the variant""" graphId:String!"""Global identifier for the graph variant, in the form `graph@variant`.""" id:ID!"""Name of the variant, like `variant`.""" name:String!relaunch:RelaunchResult!removeLinkFromVariant(linkInfoId:ID!):GraphVariant!setIsFavoriteOfCurrentUser(favorite:Boolean!):GraphVariant!updateDefaultHeaders(defaultHeaders:String):GraphVariant updateIsProtected(isProtected:Boolean!):GraphVariant updatePreflightScript(preflightScript:String):GraphVariant updateSendCookies(sendCookies:Boolean!):GraphVariant updateSubscriptionURL(subscriptionUrl:String):GraphVariant updateURL(url:String):GraphVariant updateVariantIsPublic(isPublic:Boolean!):GraphVariant updateVariantIsPubliclyListed(isPubliclyListed:Boolean!):GraphVariant updateVariantIsVerified(isVerified:Boolean!):GraphVariant updateVariantReadme(readme:String!):GraphVariant}"""A map from permission String to boolean that the currently authenticated user is allowed for a particular graph variant.""" type GraphVariantPermissions{canCreateCollectionInVariant:Boolean!"""Whether the currently authenticated user is permitted to manage/update the build configuration (e.g. build pipeline version) for this variant.""" canManageBuildConfig:Boolean!"""Whether the currently authenticated user is permitted to update variant-level settings for the Schema Explorer.""" canManageExplorerSettings:Boolean!"""Whether the currently authenticated user is permitted to publish schemas to this variant.""" canPushSchemas:Boolean!"""Whether the currently authenticated user is permitted to view details regarding the build configuration (e.g. build pipeline version) for this variant.""" canQueryBuildConfig:Boolean!"""Whether the currently authenticated user is permitted to download schemas associated to this variant.""" canQuerySchemas:Boolean!canShareCollectionInVariant:Boolean!canUpdateVariantLinkInfo:Boolean!"""Whether the currently authenticated user is permitted to update the README for this variant.""" canUpdateVariantReadme:Boolean!variantId:ID!}enum HTTPMethod{CONNECT DELETE GET HEAD OPTIONS PATCH POST PUT TRACE UNKNOWN UNRECOGNIZED}input HistoricQueryParameters{"""A list of clients to filter out during validation.""" excludedClients:[ClientInfoFilter!]=null """A list of operation names to filter out during validation.""" excludedOperationNames:[OperationNameFilterInput!]=null from:Timestamp="-86400" """A list of operation IDs to filter out during validation.""" ignoredOperations:[ID!]=null """A list of variants to include in the validation. If no variants are provided
+then this defaults to the "current" variant along with the base variant. The
+base variant indicates the schema that generates diff and marks the metrics that
+are checked for broken queries. We union this base variant with the untagged values('',
+same as null inside of `in`, and 'current') in this metrics fetch. This strategy
+supports users who have not tagged their metrics or schema.""" includedVariants:[String!]=null """Minimum number of requests within the window for a query to be considered.""" queryCountThreshold:Int=1 """Number of requests within the window for a query to be considered, relative to
+total request count. Expected values are between 0 and 0.05 (minimum 5% of total
+request volume)""" queryCountThresholdPercentage:Float=0 to:Timestamp="-0"}"""An identity (e.g. Anonymous, a specific User) within Apollo Studio. See implementations.""" interface Identity{"""A view of the identity as an Actor type.""" asActor:Actor!"""An identifier for a given identity, unique within the context of the identity type.""" id:ID!"""A human-readable name for the identity in question.""" name:String!}"""An actor's identity and info about the client they used to perform the action""" type IdentityAndClientInfo{"""Client name provided when the actor performed the action""" clientName:String """Client version provided when the actor performed the action""" clientVersion:String """Identity info about the actor""" identity:Identity}union IdentityMutation=ServiceMutation|UserMutation type IgnoreOperationsInChecksResult{graph:Service!}"""The location of the implementing service config file in storage""" type ImplementingServiceLocation{"""The name of the implementing service""" name:String!"""The path in storage to access the implementing service config file""" path:String!}type InternalAdminUser{role:InternalMdgAdminRole!userID:String!}type InternalIdentity implements Identity{accounts:[Account!]!asActor:Actor!email:String id:ID!name:String!}enum InternalMdgAdminRole{INTERNAL_MDG_READ_ONLY INTERNAL_MDG_SALES INTERNAL_MDG_SUPER_ADMIN INTERNAL_MDG_SUPPORT}type IntrospectionDirective{args:[IntrospectionInputValue!]!description:String locations:[IntrospectionDirectiveLocation!]!name:String!}input IntrospectionDirectiveInput{args:[IntrospectionInputValueInput!]!description:String isRepeatable:Boolean locations:[IntrospectionDirectiveLocation!]!name:String!}"""__DirectiveLocation introspection type""" enum IntrospectionDirectiveLocation{"""Location adjacent to an argument definition.""" ARGUMENT_DEFINITION """Location adjacent to an enum definition.""" ENUM """Location adjacent to an enum value definition.""" ENUM_VALUE """Location adjacent to a field.""" FIELD """Location adjacent to a field definition.""" FIELD_DEFINITION """Location adjacent to a fragment definition.""" FRAGMENT_DEFINITION """Location adjacent to a fragment spread.""" FRAGMENT_SPREAD """Location adjacent to an inline fragment.""" INLINE_FRAGMENT """Location adjacent to an input object field definition.""" INPUT_FIELD_DEFINITION """Location adjacent to an input object type definition.""" INPUT_OBJECT """Location adjacent to an interface definition.""" INTERFACE """Location adjacent to a mutation operation.""" MUTATION """Location adjacent to an object type definition.""" OBJECT """Location adjacent to a query operation.""" QUERY """Location adjacent to a scalar definition.""" SCALAR """Location adjacent to a schema definition.""" SCHEMA """Location adjacent to a subscription operation.""" SUBSCRIPTION """Location adjacent to a union definition.""" UNION """Location adjacent to a variable definition.""" VARIABLE_DEFINITION}"""Values associated with introspection result for an enum value""" type IntrospectionEnumValue{depreactionReason:String@deprecated(reason:"Use deprecationReason instead")deprecationReason:String description:String isDeprecated:Boolean!name:String!}"""__EnumValue introspection type""" input IntrospectionEnumValueInput{deprecationReason:String description:String isDeprecated:Boolean!name:String!}"""Values associated with introspection result for field""" type IntrospectionField{args:[IntrospectionInputValue!]!deprecationReason:String description:String isDeprecated:Boolean!name:String!type:IntrospectionType!}"""__Field introspection type""" input IntrospectionFieldInput{args:[IntrospectionInputValueInput!]!deprecationReason:String description:String isDeprecated:Boolean!name:String!type:IntrospectionTypeInput!}"""Values associated with introspection result for an input field""" type IntrospectionInputValue{defaultValue:String description:String name:String!type:IntrospectionType!}"""__Value introspection type""" input IntrospectionInputValueInput{defaultValue:String deprecationReason:String description:String isDeprecated:Boolean name:String!type:IntrospectionTypeInput!}type IntrospectionSchema{directives:[IntrospectionDirective!]!mutationType:IntrospectionType queryType:IntrospectionType!subscriptionType:IntrospectionType types(filter:TypeFilterConfig={includeAbstractTypes:true includeBuiltInTypes:true includeIntrospectionTypes:true}):[IntrospectionType!]!}"""__Schema introspection type""" input IntrospectionSchemaInput{description:String directives:[IntrospectionDirectiveInput!]!mutationType:IntrospectionTypeRefInput queryType:IntrospectionTypeRefInput!subscriptionType:IntrospectionTypeRefInput types:[IntrospectionTypeInput!]}"""Object containing all possible values for an introspectionType""" type IntrospectionType{"""the base kind of the type this references, ignoring lists and nullability""" baseKind:IntrospectionTypeKind description:String enumValues(includeDeprecated:Boolean=false):[IntrospectionEnumValue!]fields:[IntrospectionField!]inputFields:[IntrospectionInputValue!]interfaces:[IntrospectionType!]kind:IntrospectionTypeKind name:String ofType:IntrospectionType possibleTypes:[IntrospectionType!]"""printed representation of type, including nested nullability and list ofTypes""" printed:String!}"""__Type introspection type""" input IntrospectionTypeInput{description:String enumValues:[IntrospectionEnumValueInput!]fields:[IntrospectionFieldInput!]inputFields:[IntrospectionInputValueInput!]interfaces:[IntrospectionTypeInput!]kind:IntrospectionTypeKind!name:String ofType:IntrospectionTypeInput possibleTypes:[IntrospectionTypeInput!]specifiedByUrl:String}enum IntrospectionTypeKind{"""Indicates this type is an enum. 'enumValues' is a valid field.""" ENUM """Indicates this type is an input object. 'inputFields' is a valid field.""" INPUT_OBJECT """Indicates this type is an interface. 'fields' and 'possibleTypes' are valid
+fields""" INTERFACE """Indicates this type is a list. 'ofType' is a valid field.""" LIST """Indicates this type is a non-null. 'ofType' is a valid field.""" NON_NULL """Indicates this type is an object. 'fields' and 'interfaces' are valid fields.""" OBJECT """Indicates this type is a scalar.""" SCALAR """Indicates this type is a union. 'possibleTypes' is a valid field.""" UNION}"""Shallow __Type introspection type""" input IntrospectionTypeRefInput{kind:String name:String!}type InvalidOperation{errors:[OperationValidationError!]signature:ID!}"""Type returned by reference lookup when the reference was invalid""" type InvalidRefFormat implements Error{message:String!}type InvalidTarget implements Error{message:String!}type Invoice{closedAt:Timestamp collectionMethod:String createdAt:Timestamp!invoiceNumber:Int!state:InvoiceState!totalInCents:Int!updatedAt:Timestamp!uuid:ID!}enum InvoiceState{COLLECTED FAILED OPEN PAST_DUE UNKNOWN}enum InvoiceStateV2{COLLECTED FAILED OPEN PAST_DUE UNKNOWN}type InvoiceV2{closedAt:Timestamp collectionMethod:String createdAt:Timestamp!invoiceNumber:Int!state:InvoiceStateV2!totalInCents:Int!updatedAt:Timestamp!uuid:ID!}type Launch{approvedAt:Timestamp build:Build buildInput:BuildInput!completedAt:Timestamp createdAt:Timestamp!downstreamLaunches:[Launch!]!graphId:String!graphVariant:String!id:ID!isAvailable:Boolean isCompleted:Boolean isPublished:Boolean isTarget:Boolean latestSequenceStep:LaunchSequenceStep publication:SchemaTag results:[LaunchResult!]!schemaTag:SchemaTag sequence:[LaunchSequenceStep!]!shortenedID:String!status:LaunchStatus!subgraphChanges:[SubgraphChange!]supersededAt:Timestamp supersededBy:Launch upstreamLaunch:Launch}"""more result types will be supported in the future""" union LaunchResult=ChangelogLaunchResult type LaunchSequenceBuildStep{completedAt:Timestamp startedAt:Timestamp}type LaunchSequenceCheckStep{completedAt:Timestamp startedAt:Timestamp}type LaunchSequenceCompletedStep{completedAt:Timestamp}type LaunchSequenceInitiatedStep{startedAt:Timestamp}type LaunchSequencePublishStep{completedAt:Timestamp startedAt:Timestamp}union LaunchSequenceStep=LaunchSequenceBuildStep|LaunchSequenceCheckStep|LaunchSequenceCompletedStep|LaunchSequenceInitiatedStep|LaunchSequencePublishStep|LaunchSequenceSupersededStep type LaunchSequenceSupersededStep{completedAt:Timestamp}enum LaunchStatus{LAUNCH_COMPLETED LAUNCH_FAILED LAUNCH_INITIATED}type LinkInfo{createdAt:Timestamp!id:ID!title:String type:LinkInfoType!url:String!}enum LinkInfoType{DEVELOPER_PORTAL OTHER REPOSITORY}"""Long type""" scalar Long type MarkChangesForOperationAsSafeResult{"""Nice to have for the frontend since the Apollo cache is already watching for AffectedQuery to update.
+This might return null if no behavior changes were found for the affected operation ID.
+This is a weird situation that should never happen.""" affectedOperation:AffectedQuery message:String!success:Boolean!}type MediaUploadInfo{csrfToken:String!maxContentLength:Int!url:String!}union MoveOperationCollectionEntryResult=InvalidTarget|MoveOperationCollectionEntrySuccess|PermissionError type MoveOperationCollectionEntrySuccess{operation:OperationCollectionEntry!originCollection:OperationCollection!targetCollection:OperationCollection!}type Mutation{account(id:ID!):AccountMutation """Creates an operation collection for the given variantRefs, or make a sandbox collection without variantRefs.""" createOperationCollection(description:String editRoles:[UserPermission!]isSandbox:Boolean!isShared:Boolean!name:String!variantRefs:[ID!]):CreateOperationCollectionResult!"""Finalize a password reset with a token included in the E-mail link,
+returns the corresponding login email when successful""" finalizePasswordReset(newPassword:String!resetToken:String!):String """Mutation a graph.""" graph(id:ID!):ServiceMutation """Join an account with a token""" joinAccount(accountId:ID!joinToken:String!):Account me:IdentityMutation newAccount(companyUrl:String id:ID!):Account newService(accountId:ID!description:String hiddenFromUninvitedNonAdminAccountMembers:Boolean!=false id:ID!isDev:Boolean!=false name:String title:String):Service operationCollection(id:ID!):OperationCollectionMutation """Refresh all plans from third-party billing service""" plansRefreshBilling:Void """Report a running GraphQL server's schema.""" reportSchema("""Only sent if previously requested i.e. received ReportSchemaResult with withCoreSchema = true. This is a GraphQL schema document as a string. Note that for a GraphQL server with a core schema, this should be the core schema, not the API schema.""" coreSchema:String """Information about server and its schema.""" report:SchemaReport!):ReportSchemaResult """Ask for a user's password to be reset by E-mail""" resetPassword(email:String!):Void resolveAllInternalCronExecutions(group:String name:String):Void resolveInternalCronExecution(id:ID!):CronExecution service(id:ID!):ServiceMutation """Set the subscriptions for a given email""" setSubscriptions(email:String!subscriptions:[EmailCategory!]!token:String!):EmailPreferences """Set the studio settings for the current user""" setUserSettings(newSettings:UserSettingsInput):UserSettings signUp(email:String!fullName:String!password:String!referrer:String trackingGoogleClientId:String trackingMarketoClientId:String userSegment:UserSegment utmCampaign:String utmMedium:String utmSource:String):User """This is called by the form shown to users after they delete their user or organization account.""" submitPostDeletionFeedback(feedback:String!targetIdentifier:ID!targetType:DeletionTargetType!):Void """Mutation for basic engagement tracking in studio""" track(event:EventEnum!graphID:String!graphVariant:String!="current"):Void """Rover session tracking. Reserved to https://rover.apollo.dev/telemetry (https://github.com/apollographql/orbiter).""" trackRoverSession(anonymousId:ID!arguments:[RoverArgumentInput!]!ci:String command:String!cwdHash:SHA256!os:String!remoteUrlHash:SHA256!sessionId:ID!version:String!):Void """Unsubscribe a given email from all emails""" unsubscribeFromAll(email:String!token:String!):EmailPreferences user(id:ID!):UserMutation}type NamedIntrospectionArg{description:String name:String}type NamedIntrospectionArgNoDescription{name:String}"""The shared fields for a named introspection type. Currently this is returned for the
+top level value affected by a change. In the future, we may update this
+type to be an interface, which is extended by the more specific types:
+scalar, object, input object, union, interface, and enum
+
+For an in-depth look at where these types come from, see:
+https://github.com/DefinitelyTyped/DefinitelyTyped/blob/659eb50d3/types/graphql/utilities/introspectionQuery.d.ts#L31-L37""" type NamedIntrospectionType{description:String kind:IntrospectionTypeKind name:String}type NamedIntrospectionTypeNoDescription{name:String}"""Introspection values that can be children of other types for changes, such
+as input fields, objects in interfaces, enum values. In the future, this
+value could become an interface to allow fields specific to the types
+returned.""" type NamedIntrospectionValue{description:String name:String printedType:String}type NamedIntrospectionValueNoDescription{name:String printedType:String}"""A non-federated service for a monolithic graph.""" type NonFederatedImplementingService{"""Timestamp of when this implementing service was created.""" createdAt:Timestamp!"""Identifies which graph this non-implementing service belongs to.
+Formerly known as "service_id".""" graphID:String!"""Specifies which variant of a graph this implementing service belongs to".
+Formerly known as "tag".""" graphVariant:String!}type NotFoundError implements Error{message:String!}"""Arbitrary JSON object""" scalar Object type OdysseyCertification{certificationId:String!earnedAt:Timestamp!id:ID!owner:OdysseyCertificationOwner}type OdysseyCertificationOwner{fullName:String!id:ID!}type OdysseyCourse{completedAt:Timestamp enrolledAt:Timestamp id:ID!}input OdysseyCourseInput{completedAt:Timestamp courseId:String!}type OdysseyTask{completedAt:Timestamp id:ID!value:String}input OdysseyTaskInput{completedAt:Timestamp taskId:String!value:String}type Operation{id:ID!name:String signature:String truncated:Boolean!}type OperationAcceptedChange{acceptedAt:Timestamp!acceptedBy:Identity!change:StoredApprovedChange!checkID:ID!graphID:ID!id:ID!operationID:String!}"""Columns of OperationCheckStats.""" enum OperationCheckStatsColumn{CACHED_REQUESTS_COUNT CLIENT_NAME CLIENT_VERSION QUERY_ID QUERY_NAME SCHEMA_TAG SERVICE_ID TIMESTAMP UNCACHED_REQUESTS_COUNT}type OperationCheckStatsDimensions{clientName:String clientVersion:String queryId:ID queryName:String schemaTag:String serviceId:ID}"""Filter for data in OperationCheckStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input OperationCheckStatsFilter{and:[OperationCheckStatsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String in:OperationCheckStatsFilterIn not:OperationCheckStatsFilter or:[OperationCheckStatsFilter!]"""Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID}"""Filter for data in OperationCheckStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input OperationCheckStatsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]}type OperationCheckStatsMetrics{cachedRequestsCount:Long!uncachedRequestsCount:Long!}input OperationCheckStatsOrderBySpec{column:OperationCheckStatsColumn!direction:Ordering!}type OperationCheckStatsRecord{"""Dimensions of OperationCheckStats that can be grouped by.""" groupBy:OperationCheckStatsDimensions!"""Metrics of OperationCheckStats that can be aggregated over.""" metrics:OperationCheckStatsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}type OperationCollection{createdAt:Timestamp!createdBy:Identity description:String """If a user has any of these roles, they will be able to edit this
+collection. This will be null if and only if \`isShared\` is false""" editRoles:[UserPermission!]id:ID!isFavorite:Boolean!isSandbox:Boolean!isShared:Boolean!lastUpdatedAt:Timestamp!lastUpdatedBy:Identity name:String!operation(id:ID!):OperationCollectionEntryResult operations:[OperationCollectionEntry!]!""" Permissions the current user has for this collection""" permissions:OperationCollectionPermissions!variants:[GraphVariant!]!}type OperationCollectionEntry{collection:OperationCollection!createdAt:Timestamp!createdBy:Identity currentOperationRevision:OperationCollectionEntryState!id:ID!lastUpdatedAt:Timestamp!lastUpdatedBy:Identity name:String!orderingIndex:String!}type OperationCollectionEntryMutation{moveToCollection(collectionId:ID!lowerOrderingBound:String upperOrderingBound:String):MoveOperationCollectionEntryResult!reorderEntry(lowerOrderingBound:String upperOrderingBound:String):UpdateOperationCollectionResult updateName(name:String!):UpdateOperationCollectionEntryResult updateValues(operationInput:OperationCollectionEntryStateInput!):UpdateOperationCollectionEntryResult}union OperationCollectionEntryMutationResult=NotFoundError|OperationCollectionEntryMutation|PermissionError union OperationCollectionEntryResult=NotFoundError|OperationCollectionEntry type OperationCollectionEntryState{body:String!createdAt:Timestamp!createdBy:Identity headers:[OperationHeader!]variables:String}input OperationCollectionEntryStateInput{body:String!headers:[OperationHeaderInput!]""" I'm assuming this is non null""" variables:String}type OperationCollectionMutation{addOperation(name:String!operationInput:OperationCollectionEntryStateInput!):AddOperationCollectionEntryResult addToVariant(variantRef:ID!):AddOperationCollectionToVariantResult!@deprecated(reason:"Will throw NotImplemented")delete:DeleteOperationCollectionResult deleteOperation(id:ID!):RemoveOperationCollectionEntryResult duplicateCollection(description:String isSandbox:Boolean!isShared:Boolean!name:String!variantRef:ID):DuplicateOperationCollectionResult!operation(id:ID!):OperationCollectionEntryMutationResult removeFromVariant(variantRef:ID!):RemoveOperationCollectionFromVariantResult!@deprecated(reason:"Will throw NotImplemented")updateDescription(description:String):UpdateOperationCollectionResult updateEditRoles(editRoles:[UserPermission!]!):UpdateOperationCollectionResult updateIsFavorite(isFavorite:Boolean!):UpdateOperationCollectionResult updateIsShared(isShared:Boolean!):UpdateOperationCollectionResult updateName(name:String!):UpdateOperationCollectionResult}type OperationCollectionPermissions{canEditOperations:Boolean!canManage:Boolean!canReadOperations:Boolean!}union OperationCollectionResult=NotFoundError|OperationCollection|PermissionError type OperationDocument{"""Operation document body""" body:String!"""Operation name""" name:String}input OperationDocumentInput{"""Operation document body""" body:String!"""Operation name""" name:String}type OperationHeader{name:String!value:String!}input OperationHeaderInput{name:String!value:String!}"""Operation name filter configuration for a graph.""" type OperationNameFilter{"""name of the operation by the user and reported alongside metrics""" name:String!}"""Options to filter by operation name.""" input OperationNameFilterInput{"""name of the operation set by the user and reported alongside metrics""" name:String!}type OperationValidationError{message:String!}type OperationsCheckResult{"""Operations affected by all changes in diff""" affectedQueries:[AffectedQuery!]"""Summary/counts for all changes in diff""" changeSummary:ChangeSummary!"""List of schema changes with associated affected clients and operations""" changes:[Change!]!"""Indication of the success of the change, either failure, warning, or notice.""" checkSeverity:ChangeSeverity!"""The variant that was used as a base to check against""" checkedVariant:GraphVariant!createdAt:Timestamp!id:ID!"""Number of affected query operations that are neither marked as SAFE or IGNORED""" numberOfAffectedOperations:Int!"""Number of operations that were validated during schema diff""" numberOfCheckedOperations:Int!workflowTask:OperationsCheckTask!}type OperationsCheckTask implements CheckWorkflowTask{completedAt:Timestamp createdAt:Timestamp!id:ID!"""The result of the check.""" result:OperationsCheckResult status:CheckWorkflowTaskStatus!workflow:CheckWorkflow!}enum Ordering{ASCENDING DESCENDING}"""A reusable invite link for an organization.""" type OrganizationInviteLink{createdAt:Timestamp!"""A joinToken that can be passed to Mutation.joinAccount to join the organization.""" joinToken:String!"""The role that the user will receive if they join the organization with this link.""" role:UserPermission!}type OrganizationSSO{defaultRole:UserPermission!idpid:ID!provider:OrganizationSSOProvider!}enum OrganizationSSOProvider{PINGONE}"""PagerDuty notification channel""" type PagerDutyChannel implements Channel{id:ID!name:String!routingKey:String!subscriptions:[ChannelSubscription!]!}"""PagerDuty notification channel parameters""" input PagerDutyChannelInput{name:String routingKey:String!}"""Schema for a subgraph with associated metadata""" type PartialSchema{"""Timestamp for when the partial schema was created""" createdAt:Timestamp!"""If this sdl is currently actively composed in the gateway, this is true""" isLive:Boolean!"""The GraphQL document for a subgraph schema.""" sdl:String!"""The path of deep storage to find the raw enriched partial schema file""" sdlPath:String!}"""Input for registering a partial schema to an implementing service.
+One of the fields must be specified (validated server-side).
+
+If a new partialSchemaSDL is passed in, this operation will store it before
+creating the association.
+
+If both the sdl and hash are specified, an error will be thrown if the provided
+hash doesn't match our hash of the sdl contents. If the sdl field is specified,
+the hash does not need to be and will be computed server-side.""" input PartialSchemaInput{"""Hash of the partial schema to associate; error is thrown if only the hash is
+specified and the hash has not been seen before""" hash:String """Contents of the partial schema in SDL syntax, but may reference types
+that aren't defined in this document""" sdl:String}type PermissionError implements Error{message:String!}type PromoteSchemaError{code:PromoteSchemaErrorCode!message:String!}enum PromoteSchemaErrorCode{CANNOT_PROMOTE_SCHEMA_FOR_FEDERATED_GRAPH}type PromoteSchemaResponse{code:PromoteSchemaResponseCode!tag:SchemaTag!}enum PromoteSchemaResponseCode{NO_CHANGES_DETECTED PROMOTION_SUCCESS}union PromoteSchemaResponseOrError=PromoteSchemaError|PromoteSchemaResponse type Protobuf{json:String!object:Object!raw:Blob!text:String!}type Query{"""Account by ID""" account(id:ID!):Account """Retrieve account by billing provider identifier""" accountByBillingCode(id:ID!):Account """Whether an account ID is available for mutation{newAccount(id:)}""" accountIDAvailable(id:ID!):Boolean!"""All accounts""" allAccounts(search:String tier:BillingPlanTier):[Account!]"""All available plans""" allPlans:[BillingPlan!]!allPublicVariants:[GraphVariant!]"""All services""" allServices(search:String):[Service!]"""All timezones with their offsets from UTC""" allTimezoneOffsets:[TimezoneOffset!]!"""All users""" allUsers(search:String):[User!]"""Look up a plan by ID""" billingPlan(id:ID):BillingPlanV2 """All available plans""" billingPlans:[BillingPlanV2!]!"""If this is true, the user is an Apollo administrator who can ignore restrictions based purely on billing plan.""" canBypassPlanRestrictions:Boolean!diffSchemas(baseSchema:String!nextSchema:String!):[Change!]!"""Get the unsubscribe settings for a given email.""" emailPreferences(email:String!token:String!):EmailPreferences experimentalFeatures:GlobalExperimentalFeatures!"""Address of the Studio frontend.""" frontendUrlRoot:String!"""Access a graph by ID.""" graph(id:ID!):Service internalActiveCronJobs:[CronJob!]!internalAdminUsers:[InternalAdminUser!]internalUnresolvedCronExecutionFailures:[CronExecution!]!"""User or graph querying the API, null if not authenticated.""" me:Identity odysseyCertification(id:ID!):OdysseyCertification operationCollection(id:ID!):OperationCollectionResult!operationCollectionEntries(collectionEntryIds:[ID!]!):[OperationCollectionEntry!]!"""Access an organization by ID.""" organization(id:ID!):Account """Look up a plan by ID""" plan(id:ID):BillingPlan """A list of public variants that have been selected to be shown on our Graph Directory.""" publiclyListedVariants:[GraphVariant!]"""Service by ID""" service(id:ID!):Service """Query statistics across all services. For admins only; normal users must go through AccountsStatsWindow or ServiceStatsWindow.""" stats(from:Timestamp!"""Granularity of buckets. Defaults to the entire range (aggregate all data into a single durationBucket) when null.""" resolution:Resolution """Defaults to the current time when null.""" to:Timestamp):StatsWindow!"""Get the studio settings for the current user""" studioSettings:UserSettings """The plan started by AccountMutation.startTeamSubscription""" teamBillingPlan(billingPeriod:BillingPeriod!):BillingPlanV2!"""The plan started by AccountMutation.startTeamSubscription""" teamPlan(billingPeriod:BillingPeriod!):BillingPlan!"""Schema transformation for the Apollo platform API. Renames types. Internal to Apollo.""" transformSchemaForPlatformApi(baseSchema:GraphQLDocument!):GraphQLDocument """The plan started by AccountMutation.startTrial""" trialBillingPlan:BillingPlanV2!"""The plan started by AccountMutation.startTrial""" trialPlan:BillingPlan!"""User by ID""" user(id:ID!):User """Access a variant by reference of the form `graphID@variantName`, or `graphID` for the default `current` variant.
+Returns null when the graph or variant do not exist, or when the graph cannot be accessed.
+Note that we can return more types implementing Error in the future.""" variant(ref:ID!):GraphVariantLookup}"""query documents to validate against""" input QueryDocumentInput{document:String}type QueryPlan{json:String!object:Object!text:String!}"""Columns of QueryStats.""" enum QueryStatsColumn{ACCOUNT_ID CACHED_HISTOGRAM CACHED_REQUESTS_COUNT CACHE_TTL_HISTOGRAM CLIENT_NAME CLIENT_VERSION FORBIDDEN_OPERATION_COUNT FROM_ENGINEPROXY QUERY_ID QUERY_NAME REGISTERED_OPERATION_COUNT REQUESTS_WITH_ERRORS_COUNT SCHEMA_HASH SCHEMA_TAG SERVICE_ID TIMESTAMP UNCACHED_HISTOGRAM UNCACHED_REQUESTS_COUNT}type QueryStatsDimensions{accountId:ID clientName:String clientVersion:String fromEngineproxy:String queryId:ID queryName:String querySignature:String schemaHash:String schemaTag:String serviceId:ID}"""Filter for data in QueryStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input QueryStatsFilter{"""Selects rows whose accountId dimension equals the given value if not null. To query for the null value, use {in: {accountId: [null]}} instead.""" accountId:ID and:[QueryStatsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String """Selects rows whose fromEngineproxy dimension equals the given value if not null. To query for the null value, use {in: {fromEngineproxy: [null]}} instead.""" fromEngineproxy:String in:QueryStatsFilterIn not:QueryStatsFilter or:[QueryStatsFilter!]"""Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID}"""Filter for data in QueryStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input QueryStatsFilterIn{"""Selects rows whose accountId dimension is in the given list. A null value in the list means a row with null for that dimension.""" accountId:[ID]"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose fromEngineproxy dimension is in the given list. A null value in the list means a row with null for that dimension.""" fromEngineproxy:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]}type QueryStatsMetrics{cacheTtlHistogram:DurationHistogram!cachedHistogram:DurationHistogram!cachedRequestsCount:Long!forbiddenOperationCount:Long!registeredOperationCount:Long!requestsWithErrorsCount:Long!totalLatencyHistogram:DurationHistogram!totalRequestCount:Long!uncachedHistogram:DurationHistogram!uncachedRequestsCount:Long!}input QueryStatsOrderBySpec{column:QueryStatsColumn!direction:Ordering!}type QueryStatsRecord{"""Dimensions of QueryStats that can be grouped by.""" groupBy:QueryStatsDimensions!"""Metrics of QueryStats that can be aggregated over.""" metrics:QueryStatsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Query Trigger""" type QueryTrigger implements ChannelSubscription{channels:[Channel!]!comparisonOperator:ComparisonOperator!enabled:Boolean!excludedOperationNames:[String!]!id:ID!metric:QueryTriggerMetric!operationNames:[String!]!percentile:Float scope:QueryTriggerScope!serviceId:String!state:QueryTriggerState!threshold:Float!variant:String window:QueryTriggerWindow!}"""Query trigger""" input QueryTriggerInput{channelIds:[String!]comparisonOperator:ComparisonOperator!enabled:Boolean excludedOperationNames:[String!]metric:QueryTriggerMetric!operationNames:[String!]percentile:Float scope:QueryTriggerScope threshold:Float!variant:String window:QueryTriggerWindow!}enum QueryTriggerMetric{"""Number of requests within the window that resulted in an error. Ignores `percentile`.""" ERROR_COUNT """Number of error requests divided by total number of requests. Ignores `percentile`.""" ERROR_PERCENTAGE """Number of requests within the window. Ignores `percentile`.""" REQUEST_COUNT """Request latency in ms. Requires `percentile`.""" REQUEST_SERVICE_TIME}enum QueryTriggerScope{ALL ANY UNRECOGNIZED}"""Query trigger state""" type QueryTriggerState{evaluatedAt:Timestamp!lastTriggeredAt:Timestamp operations:[QueryTriggerStateOperation!]!triggered:Boolean!}type QueryTriggerStateOperation{count:Long!operation:String!triggered:Boolean!value:Float!}enum QueryTriggerWindow{FIFTEEN_MINUTES FIVE_MINUTES ONE_MINUTE UNRECOGNIZED}"""The documentation for a graph variant, as display in Studio.""" type Readme{"""Content of the document.""" content:String!id:ID!"""Last time the document was updated.""" lastUpdatedAt:Timestamp!"""Identity of who updated the document last.""" lastUpdatedBy:Identity}type RegisterOperationsMutationResponse{invalidOperations:[InvalidOperation!]newOperations:[RegisteredOperation!]registrationSuccess:Boolean!}input RegisteredClientIdentityInput{identifier:String!name:String!version:String}type RegisteredOperation{signature:ID!}input RegisteredOperationInput{document:String metadata:RegisteredOperationMetadataInput signature:ID!}input RegisteredOperationMetadataInput{"""This will be used to link existing records in Engine to a new ID.""" engineSignature:String}type RegistryApiKey{keyName:String token:String!}type RegistryStatsWindow{schemaCheckStats:[AccountChecksStatsRecord!]!schemaPublishStats:[AccountPublishesStatsRecord!]!}type RegistrySubscription implements ChannelSubscription{channel:Channel channels:[Channel!]!@deprecated(reason:"Use channels list instead")createdAt:Timestamp!enabled:Boolean!id:ID!lastUpdatedAt:Timestamp!options:SubscriptionOptions!variant:String}type RelaunchComplete{latestLaunch:Launch!updated:Boolean!}type RelaunchError{message:String!}union RelaunchResult=RelaunchComplete|RelaunchError union RemoveOperationCollectionEntryResult=OperationCollection|PermissionError union RemoveOperationCollectionFromVariantResult=GraphVariant|NotFoundError|PermissionError|ValidationError union ReorderOperationCollectionResult=OperationCollection|PermissionError type ReportSchemaError implements ReportSchemaResult{code:ReportSchemaErrorCode!inSeconds:Int!message:String!withCoreSchema:Boolean!}enum ReportSchemaErrorCode{BOOT_ID_IS_NOT_VALID_UUID BOOT_ID_IS_REQUIRED CORE_SCHEMA_HASH_IS_NOT_SCHEMA_SHA256 CORE_SCHEMA_HASH_IS_REQUIRED CORE_SCHEMA_HASH_IS_TOO_LONG EXECUTABLE_SCHEMA_ID_IS_NOT_SCHEMA_SHA256 EXECUTABLE_SCHEMA_ID_IS_REQUIRED EXECUTABLE_SCHEMA_ID_IS_TOO_LONG GRAPH_REF_INVALID_FORMAT GRAPH_REF_IS_REQUIRED GRAPH_VARIANT_DOES_NOT_MATCH_REGEX GRAPH_VARIANT_IS_REQUIRED LIBRARY_VERSION_IS_TOO_LONG PLATFORM_IS_TOO_LONG RUNTIME_VERSION_IS_TOO_LONG SCHEMA_IS_NOT_PARSABLE SCHEMA_IS_NOT_VALID SERVER_ID_IS_TOO_LONG USER_VERSION_IS_TOO_LONG}type ReportSchemaResponse implements ReportSchemaResult{inSeconds:Int!withCoreSchema:Boolean!}interface ReportSchemaResult{inSeconds:Int!withCoreSchema:Boolean!}type ReportServerInfoError implements ReportServerInfoResult{code:ReportSchemaErrorCode!inSeconds:Int!message:String!withExecutableSchema:Boolean!}type ReportServerInfoResponse implements ReportServerInfoResult{inSeconds:Int!withExecutableSchema:Boolean!}interface ReportServerInfoResult{inSeconds:Int!withExecutableSchema:Boolean!}enum Resolution{R1D R1H R1M R5M R6H R15M}enum ResponseHints{NONE SAMPLE_RESPONSES SUBGRAPHS TIMINGS TRACE_TIMINGS}type RoleOverride{graph:Service!lastUpdatedAt:Timestamp!role:UserPermission!user:User!}input RoverArgumentInput{key:String!value:Object}"""SHA-256 hash, represented in lowercase hexadecimal""" scalar SHA256 type ScheduledSummary implements ChannelSubscription{channel:Channel@deprecated(reason:"Use channels list instead")channels:[Channel!]!enabled:Boolean!id:ID!timezone:String!variant:String!}"""A GraphQL schema document, which may optionally map back to context with which the schema was ingested.""" type Schema{createTemporaryURL(expiresInSeconds:Int!=86400):TemporaryURL """The timestamp of initial ingestion of a schema to a graph.""" createdAt:Timestamp!"""The raw GraphQL document for the schema in question""" document:GraphQLDocument!"""The number of fields; this includes user defined fields only, excluding built-in types and fields""" fieldCount:Int!gitContext:GitContext """The hex representation of the SHA256 of the GraphQL document.""" hash:ID!introspection:IntrospectionSchema!"""The number of types; this includes user defined types only, excluding built-in types""" typeCount:Int!}"""Represents an error from running schema composition on a list of subgraph definitions.""" type SchemaCompositionError{"""A machine-readable error code.""" code:String """Affected locations.""" locations:[SourceLocation]!"""A human-readable locations.""" message:String!}"""The difference between two schemas, as usually computed during a schema check.""" type SchemaDiff{"""Clients affected by all changes in the diff.""" affectedClients:[AffectedClient!]@deprecated(reason:"Unsupported.")"""Operations affected by all changes in the diff.""" affectedQueries:[AffectedQuery!]"""Numeric summary of all changes in the diff.""" changeSummary:ChangeSummary!"""List of schema changes with associated affected clients and operations.""" changes:[Change!]!"""Number of affected query operations that are neither marked as safe or ignored.""" numberOfAffectedOperations:Int!"""Number of operations that were validated during the check.""" numberOfCheckedOperations:Int """Indication of the success of the change; either failure, warning, or notice.""" severity:ChangeSeverity!"""The tag against which this diff was created""" tag:String type:ChangeType!@deprecated(reason:"use severity instead")"""Configuration of validation""" validationConfig:SchemaDiffValidationConfig}type SchemaDiffValidationConfig{"""Clients to ignore during validation.""" excludedClients:[ClientInfoFilterOutput!]"""Operation names to ignore during validation.""" excludedOperationNames:[OperationNameFilter]"""delta in seconds from current time that determines the start of the window
+for reported metrics included in a schema diff. A day window from the present
+day would have a `from` value of -86400. In rare cases, this could be an ISO
+timestamp if the user passed one in on diff creation""" from:Timestamp """Operation IDs to ignore during validation.""" ignoredOperations:[ID!]"""Variants to include during validation.""" includedVariants:[String!]"""Minimum number of requests within the window for a query to be considered.""" queryCountThreshold:Int """Number of requests within the window for a query to be considered, relative to
+total request count. Expected values are between 0 and 0.05 (minimum 5% of
+total request volume)""" queryCountThresholdPercentage:Float """delta in seconds from current time that determines the end of the
+window for reported metrics included in a schema diff. A day window
+from the present day would have a `to` value of -0. In rare
+cases, this could be an ISO timestamp if the user passed one in on diff
+creation""" to:Timestamp}type SchemaPublishSubscription implements ChannelSubscription{channels:[Channel!]!createdAt:Timestamp!enabled:Boolean!id:ID!lastUpdatedAt:Timestamp!variant:String}input SchemaReport{"""A randomly generated UUID, immutable for the lifetime of the edge server runtime.""" bootId:String!"""The hex SHA256 hash of the schema being reported. Note that for a GraphQL server with a core schema, this should be the core schema, not the API schema.""" coreSchemaHash:String!"""The graph ref (eg, 'id@variant')""" graphRef:String!"""The version of the edge server reporting agent, e.g. apollo-server-2.8, graphql-java-3.1, etc. length must be <= 256 characters.""" libraryVersion:String """The infra environment in which this edge server is running, e.g. localhost, Kubernetes, AWS Lambda, Google CloudRun, AWS ECS, etc. length must be <= 256 characters.""" platform:String """The runtime in which the edge server is running, e.g. node 12.03, zulu8.46.0.19-ca-jdk8.0.252-macosx_x64, etc. length must be <= 256 characters.""" runtimeVersion:String """If available, an identifier for the edge server instance, such that when restarting this instance it will have the same serverId, with a different bootId. For example, in Kubernetes this might be the pod name. Length must be <= 256 characters.""" serverId:String """An identifier used to distinguish the version (from the user's perspective) of the edge server's code itself. For instance, the git sha of the server's repository or the docker sha of the associated image this server runs with. Length must be <= 256 characters.""" userVersion:String}"""A specific publication of a graph variant.""" type SchemaTag{"""The result of composition, including either a supergraph schema or errors,
+executed during this publication. Only available with managed federation.""" compositionResult:CompositionResult createdAt:Timestamp!"""Differences with the schema from the previous successful publication.""" diffToPrevious:SchemaDiff gitContext:GitContext """List of previously uploaded SchemaTags under the same tag name, starting with
+the selected published schema record. Sorted in reverse chronological order
+by creation date (newest publish first).
+
+Note: This does not include the history of checked schemas""" history(includeUnchanged:Boolean!=true limit:Int!=3 offset:Int=0):[SchemaTag!]!"""Number of tagged schemas created under the same tag name.
+Also represents the maximum size of the history's limit argument.""" historyLength:Int!"""Number of schemas tagged prior to this one under the same tag name, its position
+in the tag history.""" historyOrder:Int!"""The identifier for this specific publication.""" id:ID!"""Time of publication.""" publishedAt:Timestamp!"""The Identity that published this schema and their client info, or null if this isn't
+a publish. Sub-fields may be null if they weren't recorded.""" publishedBy:IdentityAndClientInfo """Indicates the schemaTag of the schema's original upload, null if this is the
+first upload of the schema.""" reversionFrom:SchemaTag """The published schema.""" schema:Schema!slackNotificationBody(graphDisplayName:String!):String tag:String!@deprecated(reason:"Please use variant { name } instead")"""The graph variant this belongs to.""" variant:GraphVariant!webhookNotificationBody:String!}"""How many seats of the given types does an organization have (regardless of plan type)?""" type Seats{"""How many members that are free in this organization.""" free:Int!"""How many members that are not free in this organization.""" fullPrice:Int!}type SemanticChange{"""Target arg of change made.""" argNode:NamedIntrospectionArg """Node related to the top level node that was changed, such as a field in an object,
+a value in an enum or the object of an interface""" childNode:NamedIntrospectionValue """Semantic metadata about the type of change""" definition:ChangeDefinition!"""Top level node affected by the change""" parentNode:NamedIntrospectionType}"""A graph in Apollo Studio represents a graph in your organization.
+Each graph has one or more variants, which correspond to the different environments where that graph runs (such as staging and production).
+Each variant has its own GraphQL schema, which means schemas can differ between environments.""" type Service implements Identity{"""Organization that this graph belongs to.""" account:Account accountId:ID apiKeys:[GraphApiKey!]"""A view of the identity as an Actor type.""" asActor:Actor!"""Get an URL to which an avatar image can be uploaded. Client uploads by sending a PUT request
+with the image data to MediaUploadInfo.url. Client SHOULD set the "Content-Type" header to the
+browser-inferred MIME type, and SHOULD set the "x-apollo-content-filename" header to the
+filename, if such information is available. Client MUST set the "x-apollo-csrf-token" header to
+MediaUploadInfo.csrfToken.""" avatarUpload:AvatarUploadResult """Get an image URL for the service's avatar. Note that CORS is not enabled for these URLs. The size
+argument is used for bandwidth reduction, and should be the size of the image as displayed in the
+application. Apollo's media server will downscale larger images to at least the requested size,
+but this will not happen for third-party media servers.""" avatarUrl(size:Int!=40):String """Get available notification endpoints""" channels(channelIds:[ID!]):[Channel!]"""Get check configuration for this graph.""" checkConfiguration:CheckConfiguration """Get a check workflow for this graph by its ID""" checkWorkflow(id:ID!):CheckWorkflow """Get check workflows for this graph ordered by creation time, most recent first.""" checkWorkflows(filter:CheckFilterInput limit:Int!=100):[CheckWorkflow!]!"""List of options available for filtering checks for this graph by author.
+If a filter is passed, constrains results to match the filter.""" checksAuthorOptions(filter:CheckFilterInput):[String!]!"""List of options available for filtering checks for this graph by branch.
+If a filter is passed, constrains results to match the filter.""" checksBranchOptions(filter:CheckFilterInput):[String!]!"""List of options available for filtering checks for this graph by subgraph name.
+If a filter is passed, constrains results to match the filter.""" checksSubgraphOptions(filter:CheckFilterInput):[String!]!"""Given a graphCompositionID, return the results of composition. This can represent either a validation or a publish.""" compositionResultById(id:ID!):CompositionResult createdAt:Timestamp!createdBy:Identity datadogMetricsConfig:DatadogMetricsConfig deletedAt:Timestamp description:String devGraphOwner:User """Get a GraphQL document by hash""" document(hash:SHA256):GraphQLDocument """When this is true, this graph will be hidden from non-admin members of the org who haven't been explicitly assigned a
+role on this graph.""" hiddenFromUninvitedNonAdminAccountMembers:Boolean!"""Globally unique identifier for this graph.""" id:ID!"""List of subgraphs that comprise a graph. A non-federated graph should have a single implementing service.
+Set includeDeleted to see deleted subgraphs.""" implementingServices(graphVariant:String!includeDeleted:Boolean):GraphImplementors lastReportedAt(graphVariant:String):Timestamp """Current identity, null if not authenticated.""" me:Identity """The composition result that was most recently published to a graph variant.""" mostRecentCompositionPublish(graphVariant:String!):CompositionPublishResult """Permissions of the current user in this graph.""" myRole:UserPermission """Name of this graph. Note that this field is deprecated.""" name:String!@deprecated(reason:"Use Service.title")operation(id:ID!):Operation """Gets the operations and their approved changes for this graph, checkID, and operationID.""" operationsAcceptedChanges(checkID:ID!operationID:String!):[OperationAcceptedChange!]!"""Get an operations check result for a specific check ID""" operationsCheck(checkID:ID!):OperationsCheckResult """Get query triggers for a given variant. If variant is null all the triggers for this service will be gotten.""" queryTriggers(graphVariant:String operationNames:[String!]):[QueryTrigger!]readme:Readme """Registry specific stats for this graph.""" registryStatsWindow(from:Timestamp!resolution:Resolution to:Timestamp):RegistryStatsWindow """Whether registry subscriptions (with any options) are enabled. If variant is not passed, returns true if configuration is present for any variant""" registrySubscriptionsEnabled(graphVariant:String):Boolean!@deprecated(reason:"This field will be removed")reportingEnabled:Boolean!"""The list of members that can access this graph, accounting for graph role overrides""" roleOverrides:[RoleOverride!]"""Which permissions the current user has for interacting with this graph""" roles:ServiceRoles scheduledSummaries:[ScheduledSummary!]!"""Get a schema by hash or current tag""" schema(hash:ID tag:String):Schema """The current publish associated to a given variant (with 'tag' as the variant name).""" schemaTag(tag:String!):SchemaTag schemaTagById(id:ID!):SchemaTag """Get schema tags, with optional filtering to a set of tags. Always sorted by creation
+date in reverse chronological order.""" schemaTags(tags:[String!]):[SchemaTag!]stats(from:Timestamp!"""Granularity of buckets. Defaults to the entire range (aggregate all data into a single durationBucket) when null.""" resolution:Resolution """Defaults to the current time when null.""" to:Timestamp):ServiceStatsWindow!@deprecated(reason:"use Service.statsWindow instead")statsWindow(from:Timestamp!"""Granularity of buckets. Defaults to the entire range (aggregate all data into a single durationBucket) when null.""" resolution:Resolution """Defaults to the current time when null.""" to:Timestamp):ServiceStatsWindow """Generate a test schema publish notification body""" testSchemaPublishBody(variant:String!):String!"""Name of this graph.""" title:String!trace(id:ID!):Trace traceStorageEnabled:Boolean!"""A particular variant often representing a live traffic environment (such as "dev", "staging", or "prod").
+Each variant can represent a specific URL or destination to query at, analytics, and its own schema history.
+Pass in a name to get a specific variant. Use `Graph.variants` to get a list of variants.""" variant(name:String!):GraphVariant """The list of variants that exist for this graph""" variants:[GraphVariant!]!}"""Columns of ServiceBillingUsageStats.""" enum ServiceBillingUsageStatsColumn{OPERATION_COUNT OPERATION_COUNT_PROVIDED_EXPLICITLY SCHEMA_TAG TIMESTAMP}type ServiceBillingUsageStatsDimensions{operationCountProvidedExplicitly:String schemaTag:String}"""Filter for data in ServiceBillingUsageStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input ServiceBillingUsageStatsFilter{and:[ServiceBillingUsageStatsFilter!]in:ServiceBillingUsageStatsFilterIn not:ServiceBillingUsageStatsFilter """Selects rows whose operationCountProvidedExplicitly dimension equals the given value if not null. To query for the null value, use {in: {operationCountProvidedExplicitly: [null]}} instead.""" operationCountProvidedExplicitly:String or:[ServiceBillingUsageStatsFilter!]"""Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String}"""Filter for data in ServiceBillingUsageStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input ServiceBillingUsageStatsFilterIn{"""Selects rows whose operationCountProvidedExplicitly dimension is in the given list. A null value in the list means a row with null for that dimension.""" operationCountProvidedExplicitly:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]}type ServiceBillingUsageStatsMetrics{operationCount:Long!}input ServiceBillingUsageStatsOrderBySpec{column:ServiceBillingUsageStatsColumn!direction:Ordering!}type ServiceBillingUsageStatsRecord{"""Dimensions of ServiceBillingUsageStats that can be grouped by.""" groupBy:ServiceBillingUsageStatsDimensions!"""Metrics of ServiceBillingUsageStats that can be aggregated over.""" metrics:ServiceBillingUsageStatsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Columns of ServiceEdgeServerInfos.""" enum ServiceEdgeServerInfosColumn{BOOT_ID EXECUTABLE_SCHEMA_ID LIBRARY_VERSION PLATFORM RUNTIME_VERSION SCHEMA_TAG SERVER_ID TIMESTAMP USER_VERSION}type ServiceEdgeServerInfosDimensions{bootId:ID executableSchemaId:ID libraryVersion:String platform:String runtimeVersion:String schemaTag:String serverId:ID userVersion:String}"""Filter for data in ServiceEdgeServerInfos. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input ServiceEdgeServerInfosFilter{and:[ServiceEdgeServerInfosFilter!]"""Selects rows whose bootId dimension equals the given value if not null. To query for the null value, use {in: {bootId: [null]}} instead.""" bootId:ID """Selects rows whose executableSchemaId dimension equals the given value if not null. To query for the null value, use {in: {executableSchemaId: [null]}} instead.""" executableSchemaId:ID in:ServiceEdgeServerInfosFilterIn """Selects rows whose libraryVersion dimension equals the given value if not null. To query for the null value, use {in: {libraryVersion: [null]}} instead.""" libraryVersion:String not:ServiceEdgeServerInfosFilter or:[ServiceEdgeServerInfosFilter!]"""Selects rows whose platform dimension equals the given value if not null. To query for the null value, use {in: {platform: [null]}} instead.""" platform:String """Selects rows whose runtimeVersion dimension equals the given value if not null. To query for the null value, use {in: {runtimeVersion: [null]}} instead.""" runtimeVersion:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serverId dimension equals the given value if not null. To query for the null value, use {in: {serverId: [null]}} instead.""" serverId:ID """Selects rows whose userVersion dimension equals the given value if not null. To query for the null value, use {in: {userVersion: [null]}} instead.""" userVersion:String}"""Filter for data in ServiceEdgeServerInfos. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input ServiceEdgeServerInfosFilterIn{"""Selects rows whose bootId dimension is in the given list. A null value in the list means a row with null for that dimension.""" bootId:[ID]"""Selects rows whose executableSchemaId dimension is in the given list. A null value in the list means a row with null for that dimension.""" executableSchemaId:[ID]"""Selects rows whose libraryVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" libraryVersion:[String]"""Selects rows whose platform dimension is in the given list. A null value in the list means a row with null for that dimension.""" platform:[String]"""Selects rows whose runtimeVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" runtimeVersion:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serverId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serverId:[ID]"""Selects rows whose userVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" userVersion:[String]}input ServiceEdgeServerInfosOrderBySpec{column:ServiceEdgeServerInfosColumn!direction:Ordering!}type ServiceEdgeServerInfosRecord{"""Dimensions of ServiceEdgeServerInfos that can be grouped by.""" groupBy:ServiceEdgeServerInfosDimensions!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Columns of ServiceErrorStats.""" enum ServiceErrorStatsColumn{CLIENT_NAME CLIENT_VERSION ERRORS_COUNT PATH QUERY_ID QUERY_NAME REQUESTS_WITH_ERRORS_COUNT SCHEMA_HASH SCHEMA_TAG TIMESTAMP}type ServiceErrorStatsDimensions{clientName:String clientVersion:String path:String queryId:ID queryName:String schemaHash:String schemaTag:String}"""Filter for data in ServiceErrorStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input ServiceErrorStatsFilter{and:[ServiceErrorStatsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String in:ServiceErrorStatsFilterIn not:ServiceErrorStatsFilter or:[ServiceErrorStatsFilter!]"""Selects rows whose path dimension equals the given value if not null. To query for the null value, use {in: {path: [null]}} instead.""" path:String """Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String}"""Filter for data in ServiceErrorStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input ServiceErrorStatsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose path dimension is in the given list. A null value in the list means a row with null for that dimension.""" path:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]}type ServiceErrorStatsMetrics{errorsCount:Long!requestsWithErrorsCount:Long!}input ServiceErrorStatsOrderBySpec{column:ServiceErrorStatsColumn!direction:Ordering!}type ServiceErrorStatsRecord{"""Dimensions of ServiceErrorStats that can be grouped by.""" groupBy:ServiceErrorStatsDimensions!"""Metrics of ServiceErrorStats that can be aggregated over.""" metrics:ServiceErrorStatsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Columns of ServiceFieldLatencies.""" enum ServiceFieldLatenciesColumn{FIELD_HISTOGRAM FIELD_NAME PARENT_TYPE SCHEMA_HASH SCHEMA_TAG TIMESTAMP}type ServiceFieldLatenciesDimensions{field:String fieldName:String parentType:String schemaHash:String schemaTag:String}"""Filter for data in ServiceFieldLatencies. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input ServiceFieldLatenciesFilter{and:[ServiceFieldLatenciesFilter!]"""Selects rows whose fieldName dimension equals the given value if not null. To query for the null value, use {in: {fieldName: [null]}} instead.""" fieldName:String in:ServiceFieldLatenciesFilterIn not:ServiceFieldLatenciesFilter or:[ServiceFieldLatenciesFilter!]"""Selects rows whose parentType dimension equals the given value if not null. To query for the null value, use {in: {parentType: [null]}} instead.""" parentType:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String}"""Filter for data in ServiceFieldLatencies. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input ServiceFieldLatenciesFilterIn{"""Selects rows whose fieldName dimension is in the given list. A null value in the list means a row with null for that dimension.""" fieldName:[String]"""Selects rows whose parentType dimension is in the given list. A null value in the list means a row with null for that dimension.""" parentType:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]}type ServiceFieldLatenciesMetrics{fieldHistogram:DurationHistogram!}input ServiceFieldLatenciesOrderBySpec{column:ServiceFieldLatenciesColumn!direction:Ordering!}type ServiceFieldLatenciesRecord{"""Dimensions of ServiceFieldLatencies that can be grouped by.""" groupBy:ServiceFieldLatenciesDimensions!"""Metrics of ServiceFieldLatencies that can be aggregated over.""" metrics:ServiceFieldLatenciesMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Columns of ServiceFieldUsage.""" enum ServiceFieldUsageColumn{CLIENT_NAME CLIENT_VERSION ESTIMATED_EXECUTION_COUNT EXECUTION_COUNT FIELD_NAME PARENT_TYPE QUERY_ID QUERY_NAME REFERENCING_OPERATION_COUNT SCHEMA_HASH SCHEMA_TAG TIMESTAMP}type ServiceFieldUsageDimensions{clientName:String clientVersion:String fieldName:String parentType:String queryId:ID queryName:String schemaHash:String schemaTag:String}"""Filter for data in ServiceFieldUsage. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input ServiceFieldUsageFilter{and:[ServiceFieldUsageFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String """Selects rows whose fieldName dimension equals the given value if not null. To query for the null value, use {in: {fieldName: [null]}} instead.""" fieldName:String in:ServiceFieldUsageFilterIn not:ServiceFieldUsageFilter or:[ServiceFieldUsageFilter!]"""Selects rows whose parentType dimension equals the given value if not null. To query for the null value, use {in: {parentType: [null]}} instead.""" parentType:String """Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String}"""Filter for data in ServiceFieldUsage. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input ServiceFieldUsageFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose fieldName dimension is in the given list. A null value in the list means a row with null for that dimension.""" fieldName:[String]"""Selects rows whose parentType dimension is in the given list. A null value in the list means a row with null for that dimension.""" parentType:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]}type ServiceFieldUsageMetrics{estimatedExecutionCount:Long!executionCount:Long!referencingOperationCount:Long!}input ServiceFieldUsageOrderBySpec{column:ServiceFieldUsageColumn!direction:Ordering!}type ServiceFieldUsageRecord{"""Dimensions of ServiceFieldUsage that can be grouped by.""" groupBy:ServiceFieldUsageDimensions!"""Metrics of ServiceFieldUsage that can be aggregated over.""" metrics:ServiceFieldUsageMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Mutations to a graph.""" type ServiceMutation{"""Check a proposed subgraph schema change.
+If the proposal composes successfully, perform a usage check for the resulting schema.""" checkPartialSchema("""Deprecated and ignored.""" frontend:String gitContext:GitContextInput """Specifies which variant of a graph this mutation operates on.""" graphVariant:String!historicParameters:HistoricQueryParameters """Name of the implementing service to validate the partial schema against""" implementingServiceName:String!"""If this check is triggered for an sdl fetched using introspection, this is the endpoint where that schema was being served.""" introspectionEndpoint:String isSandboxCheck:Boolean!=false """The partial schema to validate against an implementing service""" partialSchema:PartialSchemaInput!"""Whether to use the maximum retention for historical validation. This only takes
+effect if historicParameters is null.""" useMaximumRetention:Boolean):CheckPartialSchemaResult!"""Checks a proposed schema against the schema that has been published to
+a particular variant, using metrics corresponding to `historicParameters`.
+Callers can set `historicParameters` directly or rely on defaults set in the
+graph's check configuration (7 days by default).
+If they do not set `historicParameters` but set `useMaximumRetention`,
+validation will use the maximum retention the graph has access to.""" checkSchema(baseSchemaTag:String="current" """Deprecated and ignored.""" frontend:String gitContext:GitContextInput historicParameters:HistoricQueryParameters """If this check is triggered for an sdl fetched using introspection, this is the endpoint where that schema was being served.""" introspectionEndpoint:String isSandboxCheck:Boolean!=false """Only one of proposedSchema, proposedSchemaDocument, and proposedSchemaHash
+may be specified""" proposedSchema:IntrospectionSchemaInput proposedSchemaDocument:String proposedSchemaHash:String useMaximumRetention:Boolean):CheckSchemaResult!"""Make changes to a check workflow.""" checkWorkflow(id:ID!):CheckWorkflowMutation createCompositionStatusSubscription("""ID of Slack channel for registry notification.""" channelID:ID!"""Variant to notify on.""" variant:String!):SchemaPublishSubscription!createSchemaPublishSubscription("""ID of Slack channel for registry notification.""" channelID:ID!"""Variant to notify on.""" variant:String!):SchemaPublishSubscription!"""Soft delete a graph. Data associated with the graph is not permanently deleted; Apollo support can undo.""" delete:Void """Delete the service's avatar. Requires Service.roles.canUpdateAvatar to be true.""" deleteAvatar:AvatarDeleteError """Delete an existing channel""" deleteChannel(id:ID!):Boolean!"""Delete an existing query trigger""" deleteQueryTrigger(id:ID!):Boolean!"""Deletes this service's current subscriptions specific to the ID, returns true if it existed""" deleteRegistrySubscription(id:ID!):Boolean!"""Deletes this service's current registry subscription(s) specific to its graph variant,
+returns a list of subscription IDs that were deleted.""" deleteRegistrySubscriptions(variant:String!):[ID!]!deleteScheduledSummary(id:ID!):Boolean!"""Delete a variant by name.""" deleteSchemaTag(tag:String!):DeleteSchemaTagResult!"""Given a UTC timestamp, delete all traces associated with this Service, on that corresponding day. If a timestamp to is provided, deletes all days inclusive.""" deleteTraces(from:Timestamp!to:Timestamp):Void disableDatadogForwardingLegacyMetricNames:Service """Hard delete a graph and all data associated with it. Its ID cannot be reused.""" hardDelete:Void id:ID!@deprecated(reason:"Use service.id")"""Ignore an operation in future checks;
+changes affecting it will be tracked,
+but won't affect the outcome of the check.
+Returns true if the operation is newly ignored,
+false if it already was.""" ignoreOperationsInChecks(ids:[ID!]!):IgnoreOperationsInChecksResult """Mark the changeset that affects an operation in a given check instance as safe.
+Note that only operations marked as behavior changes are allowed to be marked as safe.""" markChangesForOperationAsSafe("""ID of the schema check.""" checkID:ID!"""ID of the operation to accept changes for.""" operationID:ID!):MarkChangesForOperationAsSafeResult!newKey(keyName:String role:UserPermission!=GRAPH_ADMIN):GraphApiKey!"""Adds an override to the given users permission for this graph""" overrideUserPermission(permission:UserPermission userID:ID!):Service """Returns a preview of the Core and API schema contracts derived from a source variant and a set of filter configurations""" previewContractVariant(filterConfig:FilterConfigInput!sourceVariant:String!):ContractVariantPreviewResult!@deprecated(reason:"use GraphVariant.contractPreview instead")"""Promote the schema with the given SHA-256 hash to active for the given variant/tag.""" promoteSchema(graphVariant:String!historicParameters:HistoricQueryParameters overrideComposedSchema:Boolean!=false sha256:SHA256!):PromoteSchemaResponseOrError!"""Publish to a subgraph. If composition is successful, this will update running routers.""" publishSubgraph(activePartialSchema:PartialSchemaInput!gitContext:GitContextInput graphVariant:String!name:String!revision:String!url:String):CompositionAndUpsertResult registerOperationsWithResponse(clientIdentity:RegisteredClientIdentityInput gitContext:GitContextInput """Specifies which variant of a graph these operations belong to.
+Formerly known as "tag"
+Defaults to "current"
+""" graphVariant:String!="current" manifestVersion:Int operations:[RegisteredOperationInput!]!):RegisterOperationsMutationResponse """Removes a subgraph. If composition is successful, this will update running routers.""" removeImplementingServiceAndTriggerComposition("""Do not remove the service, but recompose without it and report any errors.""" dryRun:Boolean!=false graphVariant:String!name:String!):CompositionAndRemoveResult!removeKey("""API key ID""" id:ID):Void renameKey(id:ID!newKeyName:String):GraphApiKey reportServerInfo("""Only sent if previously requested i.e. received ReportServerInfoResult with withExecutableSchema = true. An executable schema is a schema document that describes the full GraphQL schema that an external client could execute queries against. This must be a valid GraphQL schema document, as per the GraphQL specification: https://spec.graphql.org/""" executableSchema:String """Information about the edge server, see descriptions for individual fields.""" info:EdgeServerInfo!):ReportServerInfoResult@deprecated(reason:"use Mutation.reportSchema instead")service:Service!"""Store a given schema document. This schema will be attached to the graph but
+not be associated with any variant. On success, returns the schema hash.""" storeSchemaDocument(schemaDocument:String!):StoreSchemaResponseOrError!"""Test Slack notification channel""" testSlackChannel(id:ID!notification:SlackNotificationInput!):Void testSubscriptionForChannel(channelID:ID!subscriptionID:ID!):String!transfer(to:String!):Service triggerRepublish(graphVariant:String!):Void undelete:Service """Revert the effects of ignoreOperation.
+Returns true if the operation is no longer ignored,
+false if it wasn't.""" unignoreOperationsInChecks(ids:[ID!]!):UnignoreOperationsInChecksResult """Unmark changes for an operation as safe.""" unmarkChangesForOperationAsSafe("""ID of the schema check.""" checkID:ID!"""ID of the operation to unmark changes for.""" operationID:ID!):MarkChangesForOperationAsSafeResult!"""Update schema check configuration for a graph.""" updateCheckConfiguration("""Clients to ignore during validation.""" excludedClients:[ClientFilterInput!]"""Operation names to ignore during validation.""" excludedOperationNames:[OperationNameFilterInput!]"""Operations to ignore during validation.""" excludedOperations:[ExcludedOperationInput!]"""Default configuration to include operations on the base variant.""" includeBaseVariant:Boolean """Variant overrides for validation.""" includedVariants:[String!]"""Minimum number of requests within the window for a query to be considered.""" operationCountThreshold:Int """Number of requests within the window for a query to be considered, relative to
+total request count. Expected values are between 0 and 0.05 (minimum 5% of
+total request volume)""" operationCountThresholdPercentage:Float """Only check operations from the last <timeRangeSeconds> seconds. The default is 7 days (604,800 seconds).""" timeRangeSeconds:Long):CheckConfiguration!updateDatadogMetricsConfig(apiKey:String apiRegion:DatadogApiRegion enabled:Boolean):DatadogMetricsConfig updateDescription(description:String!):Service """Update hiddenFromUninvitedNonAdminAccountMembers""" updateHiddenFromUninvitedNonAdminAccountMembers(hiddenFromUninvitedNonAdminAccountMembers:Boolean!):Service updateReadme(readme:String!):Service updateTitle(title:String!):Service """Publish a schema to this variant, either via a document or an introspection query result.""" uploadSchema(errorOnBadRequest:Boolean!=true gitContext:GitContextInput historicParameters:HistoricQueryParameters overrideComposedSchema:Boolean!=false schema:IntrospectionSchemaInput schemaDocument:String tag:String!):UploadSchemaMutationResponse upsertChannel(id:ID pagerDutyChannel:PagerDutyChannelInput slackChannel:SlackChannelInput webhookChannel:WebhookChannelInput):Channel """Creates a contract schema from a source variant and a set of filter configurations""" upsertContractVariant(contractVariantName:String!filterConfig:FilterConfigInput!initiateLaunch:Boolean!=true sourceVariant:String!):ContractVariantUpsertResult!"""Publish to a subgraph. If composition is successful, this will update running routers.""" upsertImplementingServiceAndTriggerComposition(activePartialSchema:PartialSchemaInput!gitContext:GitContextInput graphVariant:String!name:String!revision:String!url:String):CompositionAndUpsertResult """Create/update PagerDuty notification channel""" upsertPagerDutyChannel(channel:PagerDutyChannelInput!id:ID):PagerDutyChannel upsertQueryTrigger(id:ID trigger:QueryTriggerInput!):QueryTrigger """Create or update a subscription for a service.""" upsertRegistrySubscription("""ID of Slack channel for registry notification.""" channelID:ID """ID of registry subscription""" id:ID """Set of options/customization for notification.""" options:SubscriptionOptionsInput """Variant to notify on.""" variant:String):RegistrySubscription!upsertScheduledSummary(channelID:ID enabled:Boolean id:ID """Deprecated, use the 'variant' argument instead""" tag:String timezone:String variant:String):ScheduledSummary """Create/update Slack notification channel""" upsertSlackChannel(channel:SlackChannelInput!id:ID):SlackChannel upsertWebhookChannel(id:ID name:String secretToken:String url:String!):WebhookChannel validateOperations(gitContext:GitContextInput operations:[OperationDocumentInput!]!tag:String="current"):ValidateOperationsResult!"""This mutation will not result in any changes to the implementing service
+Run composition with the Implementing Service's partial schema replaced with the one provided
+in the mutation's input. Store the composed schema, return the hash of the composed schema,
+and any warnings and errors pertaining to composition.
+This mutation will not run validation against operations.""" validatePartialSchemaOfImplementingServiceAgainstGraph(graphVariant:String!implementingServiceName:String!partialSchema:PartialSchemaInput!):CompositionValidationResult!"""Make changes to a graph variant.""" variant(name:String!):GraphVariantMutation}"""Columns of ServiceOperationCheckStats.""" enum ServiceOperationCheckStatsColumn{CACHED_REQUESTS_COUNT CLIENT_NAME CLIENT_VERSION QUERY_ID QUERY_NAME SCHEMA_TAG TIMESTAMP UNCACHED_REQUESTS_COUNT}type ServiceOperationCheckStatsDimensions{clientName:String clientVersion:String queryId:ID queryName:String schemaTag:String}"""Filter for data in ServiceOperationCheckStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input ServiceOperationCheckStatsFilter{and:[ServiceOperationCheckStatsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String in:ServiceOperationCheckStatsFilterIn not:ServiceOperationCheckStatsFilter or:[ServiceOperationCheckStatsFilter!]"""Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String}"""Filter for data in ServiceOperationCheckStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input ServiceOperationCheckStatsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]}type ServiceOperationCheckStatsMetrics{cachedRequestsCount:Long!uncachedRequestsCount:Long!}input ServiceOperationCheckStatsOrderBySpec{column:ServiceOperationCheckStatsColumn!direction:Ordering!}type ServiceOperationCheckStatsRecord{"""Dimensions of ServiceOperationCheckStats that can be grouped by.""" groupBy:ServiceOperationCheckStatsDimensions!"""Metrics of ServiceOperationCheckStats that can be aggregated over.""" metrics:ServiceOperationCheckStatsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Columns of ServiceQueryStats.""" enum ServiceQueryStatsColumn{CACHED_HISTOGRAM CACHED_REQUESTS_COUNT CACHE_TTL_HISTOGRAM CLIENT_NAME CLIENT_VERSION FORBIDDEN_OPERATION_COUNT FROM_ENGINEPROXY QUERY_ID QUERY_NAME REGISTERED_OPERATION_COUNT REQUESTS_WITH_ERRORS_COUNT SCHEMA_HASH SCHEMA_TAG TIMESTAMP UNCACHED_HISTOGRAM UNCACHED_REQUESTS_COUNT}type ServiceQueryStatsDimensions{clientName:String clientVersion:String fromEngineproxy:String queryId:ID queryName:String querySignature:String schemaHash:String schemaTag:String}"""Filter for data in ServiceQueryStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input ServiceQueryStatsFilter{and:[ServiceQueryStatsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String """Selects rows whose fromEngineproxy dimension equals the given value if not null. To query for the null value, use {in: {fromEngineproxy: [null]}} instead.""" fromEngineproxy:String in:ServiceQueryStatsFilterIn not:ServiceQueryStatsFilter or:[ServiceQueryStatsFilter!]"""Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String}"""Filter for data in ServiceQueryStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input ServiceQueryStatsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose fromEngineproxy dimension is in the given list. A null value in the list means a row with null for that dimension.""" fromEngineproxy:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]}type ServiceQueryStatsMetrics{cacheTtlHistogram:DurationHistogram!cachedHistogram:DurationHistogram!cachedRequestsCount:Long!forbiddenOperationCount:Long!registeredOperationCount:Long!requestsWithErrorsCount:Long!totalLatencyHistogram:DurationHistogram!totalRequestCount:Long!uncachedHistogram:DurationHistogram!uncachedRequestsCount:Long!}input ServiceQueryStatsOrderBySpec{column:ServiceQueryStatsColumn!direction:Ordering!}type ServiceQueryStatsRecord{"""Dimensions of ServiceQueryStats that can be grouped by.""" groupBy:ServiceQueryStatsDimensions!"""Metrics of ServiceQueryStats that can be aggregated over.""" metrics:ServiceQueryStatsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""A map from role (permission) String to boolean that the current user is allowed for a particular graph.""" type ServiceRoles{"""Whether the currently authenticated user is permitted to perform schema checks (i.e. run `rover (sub)graph check`).""" canCheckSchemas:Boolean!"""Whether the currently authenticated user is permitted to create new graph variants.""" canCreateVariants:Boolean!"""Whether the currently authenticated user is permitted to delete the graph in question""" canDelete:Boolean!"""Whether the currently authenticated user is permitted to manage user access to the graph in question.""" canManageAccess:Boolean!"""Whether the currently authenticated user is permitted to manage the build configuration (e.g. build pipeline version).""" canManageBuildConfig:Boolean!"""Whether the currently authenticated user is permitted to manage 3rd party integrations (e.g. Datadog forwarding).""" canManageIntegrations:Boolean!"""Whether the currently authenticated user is permitted to manage graph-level API keys.""" canManageKeys:Boolean!"""Whether the currently authenticated user is permitted to perform basic administration (e.g. set to public) over variants.""" canManageVariants:Boolean!"""Whether the currently authenticated user is permitted to view details about the build configuration (e.g. build pipeline version).""" canQueryBuildConfig:Boolean!"""Whether the currently authenticated user is permitted to view details of the check configuration for this graph.""" canQueryCheckConfiguration:Boolean!canQueryDeletedImplementingServices:Boolean!"""Whether the currently authenticated user is permitted to view which subgraphs the graph is composed of.""" canQueryImplementingServices:Boolean!canQueryIntegrations:Boolean!canQueryPrivateInfo:Boolean!canQueryPublicInfo:Boolean!canQueryReadmeAuthor:Boolean!canQueryRoleOverrides:Boolean!"""Whether the currently authenticated user is permitted to download schemas owned by this graph.""" canQuerySchemas:Boolean!canQueryStats:Boolean!canQueryTokens:Boolean!canQueryTraces:Boolean!"""Whether the currently authenticated user is permitted to register operations (i.e. `apollo client:push`) for this graph.""" canRegisterOperations:Boolean!canStoreSchemasWithoutVariant:Boolean!canUndelete:Boolean!canUpdateAvatar:Boolean!canUpdateDescription:Boolean!canUpdateTitle:Boolean!canVisualizeStats:Boolean!@deprecated(reason:"Replaced with canQueryTraces and canQueryStats")"""Whether the currently authenticated user is permitted to make updates to the check configuration for this graph.""" canWriteCheckConfiguration:Boolean!canWriteTraces:Boolean!@deprecated(reason:"Never worked, not replaced")}"""A time window with a specified granularity over a given service.""" type ServiceStatsWindow{billingUsageStats("""Filter to select what rows to return.""" filter:ServiceBillingUsageStatsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order ServiceBillingUsageStats by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[ServiceBillingUsageStatsOrderBySpec!]):[ServiceBillingUsageStatsRecord!]!edgeServerInfos("""Filter to select what rows to return.""" filter:ServiceEdgeServerInfosFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order ServiceEdgeServerInfos by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[ServiceEdgeServerInfosOrderBySpec!]):[ServiceEdgeServerInfosRecord!]!errorStats("""Filter to select what rows to return.""" filter:ServiceErrorStatsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order ServiceErrorStats by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[ServiceErrorStatsOrderBySpec!]):[ServiceErrorStatsRecord!]!fieldLatencies("""Filter to select what rows to return.""" filter:ServiceFieldLatenciesFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order ServiceFieldLatencies by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[ServiceFieldLatenciesOrderBySpec!]):[ServiceFieldLatenciesRecord!]!fieldStats("""Filter to select what rows to return.""" filter:ServiceFieldLatenciesFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order ServiceFieldLatencies by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[ServiceFieldLatenciesOrderBySpec!]):[ServiceFieldLatenciesRecord!]!fieldUsage("""Filter to select what rows to return.""" filter:ServiceFieldUsageFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order ServiceFieldUsage by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[ServiceFieldUsageOrderBySpec!]):[ServiceFieldUsageRecord!]!operationCheckStats("""Filter to select what rows to return.""" filter:ServiceOperationCheckStatsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order ServiceOperationCheckStats by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[ServiceOperationCheckStatsOrderBySpec!]):[ServiceOperationCheckStatsRecord!]!queryStats("""Filter to select what rows to return.""" filter:ServiceQueryStatsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order ServiceQueryStats by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[ServiceQueryStatsOrderBySpec!]):[ServiceQueryStatsRecord!]!"""From field rounded down to the nearest resolution.""" roundedDownFrom:Timestamp!"""To field rounded up to the nearest resolution.""" roundedUpTo:Timestamp!tracePathErrorsRefs("""Filter to select what rows to return.""" filter:ServiceTracePathErrorsRefsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order ServiceTracePathErrorsRefs by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[ServiceTracePathErrorsRefsOrderBySpec!]):[ServiceTracePathErrorsRefsRecord!]!traceRefs("""Filter to select what rows to return.""" filter:ServiceTraceRefsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order ServiceTraceRefs by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[ServiceTraceRefsOrderBySpec!]):[ServiceTraceRefsRecord!]!}"""Columns of ServiceTracePathErrorsRefs.""" enum ServiceTracePathErrorsRefsColumn{CLIENT_NAME CLIENT_VERSION DURATION_BUCKET ERRORS_COUNT_IN_PATH ERRORS_COUNT_IN_TRACE ERROR_MESSAGE PATH QUERY_ID QUERY_NAME SCHEMA_HASH SCHEMA_TAG TIMESTAMP TRACE_HTTP_STATUS_CODE TRACE_ID TRACE_SIZE_BYTES TRACE_STARTS_AT}type ServiceTracePathErrorsRefsDimensions{clientName:String clientVersion:String durationBucket:Int errorMessage:String path:String queryId:ID queryName:String schemaHash:String schemaTag:String traceHttpStatusCode:Int traceId:ID traceStartsAt:Timestamp}"""Filter for data in ServiceTracePathErrorsRefs. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input ServiceTracePathErrorsRefsFilter{and:[ServiceTracePathErrorsRefsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String """Selects rows whose durationBucket dimension equals the given value if not null. To query for the null value, use {in: {durationBucket: [null]}} instead.""" durationBucket:Int """Selects rows whose errorMessage dimension equals the given value if not null. To query for the null value, use {in: {errorMessage: [null]}} instead.""" errorMessage:String in:ServiceTracePathErrorsRefsFilterIn not:ServiceTracePathErrorsRefsFilter or:[ServiceTracePathErrorsRefsFilter!]"""Selects rows whose path dimension equals the given value if not null. To query for the null value, use {in: {path: [null]}} instead.""" path:String """Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose traceHttpStatusCode dimension equals the given value if not null. To query for the null value, use {in: {traceHttpStatusCode: [null]}} instead.""" traceHttpStatusCode:Int """Selects rows whose traceId dimension equals the given value if not null. To query for the null value, use {in: {traceId: [null]}} instead.""" traceId:ID}"""Filter for data in ServiceTracePathErrorsRefs. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input ServiceTracePathErrorsRefsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose durationBucket dimension is in the given list. A null value in the list means a row with null for that dimension.""" durationBucket:[Int]"""Selects rows whose errorMessage dimension is in the given list. A null value in the list means a row with null for that dimension.""" errorMessage:[String]"""Selects rows whose path dimension is in the given list. A null value in the list means a row with null for that dimension.""" path:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose traceHttpStatusCode dimension is in the given list. A null value in the list means a row with null for that dimension.""" traceHttpStatusCode:[Int]"""Selects rows whose traceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" traceId:[ID]}type ServiceTracePathErrorsRefsMetrics{errorsCountInPath:Long!errorsCountInTrace:Long!traceSizeBytes:Long!}input ServiceTracePathErrorsRefsOrderBySpec{column:ServiceTracePathErrorsRefsColumn!direction:Ordering!}type ServiceTracePathErrorsRefsRecord{"""Dimensions of ServiceTracePathErrorsRefs that can be grouped by.""" groupBy:ServiceTracePathErrorsRefsDimensions!"""Metrics of ServiceTracePathErrorsRefs that can be aggregated over.""" metrics:ServiceTracePathErrorsRefsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Columns of ServiceTraceRefs.""" enum ServiceTraceRefsColumn{CLIENT_NAME CLIENT_VERSION DURATION_BUCKET DURATION_NS QUERY_ID QUERY_NAME SCHEMA_HASH SCHEMA_TAG TIMESTAMP TRACE_ID TRACE_SIZE_BYTES}type ServiceTraceRefsDimensions{clientName:String clientVersion:String durationBucket:Int queryId:ID queryName:String querySignature:String schemaHash:String schemaTag:String traceId:ID}"""Filter for data in ServiceTraceRefs. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input ServiceTraceRefsFilter{and:[ServiceTraceRefsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String """Selects rows whose durationBucket dimension equals the given value if not null. To query for the null value, use {in: {durationBucket: [null]}} instead.""" durationBucket:Int in:ServiceTraceRefsFilterIn not:ServiceTraceRefsFilter or:[ServiceTraceRefsFilter!]"""Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose traceId dimension equals the given value if not null. To query for the null value, use {in: {traceId: [null]}} instead.""" traceId:ID}"""Filter for data in ServiceTraceRefs. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input ServiceTraceRefsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose durationBucket dimension is in the given list. A null value in the list means a row with null for that dimension.""" durationBucket:[Int]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose traceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" traceId:[ID]}type ServiceTraceRefsMetrics{durationNs:Long!traceSizeBytes:Long!}input ServiceTraceRefsOrderBySpec{column:ServiceTraceRefsColumn!direction:Ordering!}type ServiceTraceRefsRecord{"""Dimensions of ServiceTraceRefs that can be grouped by.""" groupBy:ServiceTraceRefsDimensions!"""Metrics of ServiceTraceRefs that can be aggregated over.""" metrics:ServiceTraceRefsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Slack notification channel""" type SlackChannel implements Channel{id:ID!name:String!subscriptions:[ChannelSubscription!]!url:String!}"""Slack notification channel parameters""" input SlackChannelInput{name:String url:String!}input SlackNotificationField{key:String!value:String!}"""Slack notification message""" input SlackNotificationInput{color:String fallback:String!fields:[SlackNotificationField!]iconUrl:String text:String timestamp:Timestamp title:String titleLink:String username:String}type SourceLocation{column:Int!line:Int!}"""A time window with a specified granularity.""" type StatsWindow{billingUsageStats("""Filter to select what rows to return.""" filter:BillingUsageStatsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order BillingUsageStats by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[BillingUsageStatsOrderBySpec!]):[BillingUsageStatsRecord!]!edgeServerInfos("""Filter to select what rows to return.""" filter:EdgeServerInfosFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order EdgeServerInfos by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[EdgeServerInfosOrderBySpec!]):[EdgeServerInfosRecord!]!errorStats("""Filter to select what rows to return.""" filter:ErrorStatsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order ErrorStats by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[ErrorStatsOrderBySpec!]):[ErrorStatsRecord!]!fieldLatencies("""Filter to select what rows to return.""" filter:FieldLatenciesFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order FieldLatencies by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[FieldLatenciesOrderBySpec!]):[FieldLatenciesRecord!]!fieldUsage("""Filter to select what rows to return.""" filter:FieldUsageFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order FieldUsage by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[FieldUsageOrderBySpec!]):[FieldUsageRecord!]!operationCheckStats("""Filter to select what rows to return.""" filter:OperationCheckStatsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order OperationCheckStats by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[OperationCheckStatsOrderBySpec!]):[OperationCheckStatsRecord!]!queryStats("""Filter to select what rows to return.""" filter:QueryStatsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order QueryStats by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[QueryStatsOrderBySpec!]):[QueryStatsRecord!]!"""From field rounded down to the nearest resolution.""" roundedDownFrom:Timestamp!"""To field rounded up to the nearest resolution.""" roundedUpTo:Timestamp!tracePathErrorsRefs("""Filter to select what rows to return.""" filter:TracePathErrorsRefsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order TracePathErrorsRefs by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[TracePathErrorsRefsOrderBySpec!]):[TracePathErrorsRefsRecord!]!traceRefs("""Filter to select what rows to return.""" filter:TraceRefsFilter """The maximum number of entries to return, cannot be more than 15000.""" limit:Int=10000 """A list of OrderBySpecs to order TraceRefs by. The earlier an OrderBySpec appears in the list, the higher priority it has in the final ordering. When empty or null, defaults to sorting by ascending timestamp.""" orderBy:[TraceRefsOrderBySpec!]):[TraceRefsRecord!]!}type StoreSchemaError{code:StoreSchemaErrorCode!message:String!}enum StoreSchemaErrorCode{SCHEMA_IS_NOT_PARSABLE SCHEMA_IS_NOT_VALID}type StoreSchemaResponse{sha256:SHA256!}union StoreSchemaResponseOrError=StoreSchemaError|StoreSchemaResponse type StoredApprovedChange{argNode:NamedIntrospectionArgNoDescription childNode:NamedIntrospectionValueNoDescription code:ChangeCode!parentNode:NamedIntrospectionTypeNoDescription}scalar StringOrInt type StringToString{key:String!value:String!}input StringToStringInput{key:String!value:String!}type Subgraph{hash:String!name:String!routingURL:String!}type SubgraphChange{name:ID!type:SubgraphChangeType!}enum SubgraphChangeType{ADDITION DELETION MODIFICATION}type SubgraphConfig{id:ID!name:String!schemaHash:String!sdl:String!url:String!}type SubscriptionOptions{"""Enables notifications for schema updates""" schemaUpdates:Boolean!}input SubscriptionOptionsInput{"""Enables notifications for schema updates""" schemaUpdates:Boolean!}enum SubscriptionState{ACTIVE CANCELED EXPIRED FUTURE PAST_DUE PAUSED PENDING UNKNOWN}enum SubscriptionStateV2{ACTIVE CANCELED EXPIRED FUTURE PAST_DUE PAUSED PENDING UNKNOWN}type TemporaryURL{url:String!}enum ThemeName{DARK LIGHT}enum TicketPriority{P0 P1 P2 P3}enum TicketStatus{CLOSED HOLD NEW OPEN PENDING SOLVED}"""ISO 8601, extended format with nanoseconds, Zulu (or '[+-]seconds' for times relative to now)""" scalar Timestamp type TimezoneOffset{minutesOffsetFromUTC:Int!zoneID:String!}"""Counts of changes.""" type TotalChangeSummaryCounts{"""Number of changes that are additions. This includes adding types, adding fields to object, input
+object, and interface types, adding values to enums, adding members to interfaces and unions, and
+adding arguments.""" additions:Int!"""Number of changes that are new usages of the @deprecated directive.""" deprecations:Int!"""Number of changes that are edits. This includes types changing kind, fields and arguments
+changing type, arguments changing default value, and any description changes. This also includes
+edits to @deprecated reason strings.""" edits:Int!"""Number of changes that are removals. This includes removing types, removing fields from object,
+input object, and interface types, removing values from enums, removing members from interfaces
+and unions, and removing arguments. This also includes removing @deprecated usages.""" removals:Int!}type Trace{cacheMaxAgeMs:Float cacheScope:CacheScope clientName:String clientVersion:String durationMs:Float!endTime:Timestamp!http:TraceHTTP id:ID!operationName:String protobuf:Protobuf!root:TraceNode!signature:String!startTime:Timestamp!variablesJSON:[StringToString!]!}type TraceError{json:String!locations:[TraceSourceLocation!]!message:String!timestamp:Timestamp}type TraceHTTP{host:String method:HTTPMethod!path:String protocol:String requestHeaders:[StringToString!]!responseHeaders:[StringToString!]!secure:Boolean!statusCode:Int!}type TraceNode{cacheMaxAgeMs:Float cacheScope:CacheScope children:[TraceNode!]!childrenIds:[ID!]!descendants:[TraceNode!]!descendantsIds:[ID!]!endTime:Timestamp!errors:[TraceError!]!id:ID!key:StringOrInt originalFieldName:String parent:ID!parentId:ID path:[String!]!startTime:Timestamp!type:String}"""Columns of TracePathErrorsRefs.""" enum TracePathErrorsRefsColumn{CLIENT_NAME CLIENT_VERSION DURATION_BUCKET ERRORS_COUNT_IN_PATH ERRORS_COUNT_IN_TRACE ERROR_MESSAGE PATH QUERY_ID QUERY_NAME SCHEMA_HASH SCHEMA_TAG SERVICE_ID TIMESTAMP TRACE_HTTP_STATUS_CODE TRACE_ID TRACE_SIZE_BYTES TRACE_STARTS_AT}type TracePathErrorsRefsDimensions{clientName:String clientVersion:String durationBucket:Int errorMessage:String """If metrics were collected from a federated service, this field will be prefixed with `service:<SERVICE_NAME>.`""" path:String queryId:ID queryName:String schemaHash:String schemaTag:String serviceId:ID traceHttpStatusCode:Int traceId:ID traceStartsAt:Timestamp}"""Filter for data in TracePathErrorsRefs. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input TracePathErrorsRefsFilter{and:[TracePathErrorsRefsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String """Selects rows whose durationBucket dimension equals the given value if not null. To query for the null value, use {in: {durationBucket: [null]}} instead.""" durationBucket:Int """Selects rows whose errorMessage dimension equals the given value if not null. To query for the null value, use {in: {errorMessage: [null]}} instead.""" errorMessage:String in:TracePathErrorsRefsFilterIn not:TracePathErrorsRefsFilter or:[TracePathErrorsRefsFilter!]"""Selects rows whose path dimension equals the given value if not null. To query for the null value, use {in: {path: [null]}} instead.""" path:String """Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID """Selects rows whose traceHttpStatusCode dimension equals the given value if not null. To query for the null value, use {in: {traceHttpStatusCode: [null]}} instead.""" traceHttpStatusCode:Int """Selects rows whose traceId dimension equals the given value if not null. To query for the null value, use {in: {traceId: [null]}} instead.""" traceId:ID}"""Filter for data in TracePathErrorsRefs. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input TracePathErrorsRefsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose durationBucket dimension is in the given list. A null value in the list means a row with null for that dimension.""" durationBucket:[Int]"""Selects rows whose errorMessage dimension is in the given list. A null value in the list means a row with null for that dimension.""" errorMessage:[String]"""Selects rows whose path dimension is in the given list. A null value in the list means a row with null for that dimension.""" path:[String]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]"""Selects rows whose traceHttpStatusCode dimension is in the given list. A null value in the list means a row with null for that dimension.""" traceHttpStatusCode:[Int]"""Selects rows whose traceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" traceId:[ID]}type TracePathErrorsRefsMetrics{errorsCountInPath:Long!errorsCountInTrace:Long!traceSizeBytes:Long!}input TracePathErrorsRefsOrderBySpec{column:TracePathErrorsRefsColumn!direction:Ordering!}type TracePathErrorsRefsRecord{"""Dimensions of TracePathErrorsRefs that can be grouped by.""" groupBy:TracePathErrorsRefsDimensions!"""Metrics of TracePathErrorsRefs that can be aggregated over.""" metrics:TracePathErrorsRefsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}"""Columns of TraceRefs.""" enum TraceRefsColumn{CLIENT_NAME CLIENT_VERSION DURATION_BUCKET DURATION_NS QUERY_ID QUERY_NAME SCHEMA_HASH SCHEMA_TAG SERVICE_ID TIMESTAMP TRACE_ID TRACE_SIZE_BYTES}type TraceRefsDimensions{clientName:String clientVersion:String durationBucket:Int queryId:ID queryName:String querySignature:String schemaHash:String schemaTag:String serviceId:ID traceId:ID}"""Filter for data in TraceRefs. Fields with dimension names represent equality checks. All fields are implicitly ANDed together.""" input TraceRefsFilter{and:[TraceRefsFilter!]"""Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead.""" clientName:String """Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead.""" clientVersion:String """Selects rows whose durationBucket dimension equals the given value if not null. To query for the null value, use {in: {durationBucket: [null]}} instead.""" durationBucket:Int in:TraceRefsFilterIn not:TraceRefsFilter or:[TraceRefsFilter!]"""Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead.""" queryId:ID """Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead.""" queryName:String """Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead.""" schemaHash:String """Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead.""" schemaTag:String """Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead.""" serviceId:ID """Selects rows whose traceId dimension equals the given value if not null. To query for the null value, use {in: {traceId: [null]}} instead.""" traceId:ID}"""Filter for data in TraceRefs. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together.""" input TraceRefsFilterIn{"""Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientName:[String]"""Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension.""" clientVersion:[String]"""Selects rows whose durationBucket dimension is in the given list. A null value in the list means a row with null for that dimension.""" durationBucket:[Int]"""Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryId:[ID]"""Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension.""" queryName:[String]"""Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaHash:[String]"""Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension.""" schemaTag:[String]"""Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" serviceId:[ID]"""Selects rows whose traceId dimension is in the given list. A null value in the list means a row with null for that dimension.""" traceId:[ID]}type TraceRefsMetrics{durationNs:Long!traceSizeBytes:Long!}input TraceRefsOrderBySpec{column:TraceRefsColumn!direction:Ordering!}type TraceRefsRecord{"""Dimensions of TraceRefs that can be grouped by.""" groupBy:TraceRefsDimensions!"""Metrics of TraceRefs that can be aggregated over.""" metrics:TraceRefsMetrics!"""Starting segment timestamp.""" timestamp:Timestamp!}type TraceSourceLocation{column:Int!line:Int!}"""Counts of changes at the type level, including interfaces, unions, enums, scalars, input objects, etc.""" type TypeChangeSummaryCounts{"""Number of changes that are additions of types.""" additions:Int!"""Number of changes that are edits. This includes types changing kind and any type description
+changes, but also includes adding/removing values from enums, adding/removing members from
+interfaces and unions, and any enum value deprecation and description changes.""" edits:Int!"""Number of changes that are removals of types.""" removals:Int!}"""the TypeFilterConfig is used to isolate
+types, and subsequent fields, through
+various configuration settings.
+
+It defaults to filter towards user defined
+types only""" input TypeFilterConfig{"""include abstract types (interfaces and unions)""" includeAbstractTypes:Boolean=true """include built in scalars (i.e. Boolean, Int, etc)""" includeBuiltInTypes:Boolean=false """include reserved introspection types (i.e. __Type)""" includeIntrospectionTypes:Boolean=false}type URI{"""A GCS URI""" gcs:String!}type UnignoreOperationsInChecksResult{graph:Service!}union UpdateOperationCollectionEntryResult=OperationCollectionEntry|PermissionError|ValidationError union UpdateOperationCollectionResult=OperationCollection|PermissionError|ValidationError """The result of a schema publish to a graph variant.""" type UploadSchemaMutationResponse{"""A response code for processing via machines (e.g. UPLOAD_SUCCESS or NO_CHANGES)""" code:String!"""Human readable result of a schema publish.""" message:String!"""If successful, the corresponding publication.""" publication:SchemaTag """Whether the schema publish successfully completed or encountered errors.""" success:Boolean!"""If successful, the corresponding publication.""" tag:SchemaTag}"""A registered user.""" type User implements Identity{acceptedPrivacyPolicyAt:Timestamp accounts:[Account!]!@deprecated(reason:"Replaced with User.memberships.account")apiKeys(includeCookies:Boolean=false):[UserApiKey!]!"""Translation of this user identity to an 'Actor' type.""" asActor:Actor!"""Get an URL to which an avatar image can be uploaded. Client uploads by sending a PUT request
+with the image data to MediaUploadInfo.url. Client SHOULD set the "Content-Type" header to the
+browser-inferred MIME type, and SHOULD set the "x-apollo-content-filename" header to the
+filename, if such information is available. Client MUST set the "x-apollo-csrf-token" header to
+MediaUploadInfo.csrfToken.""" avatarUpload:AvatarUploadResult """Get an image URL for the user's avatar. Note that CORS is not enabled for these URLs. The size
+argument is used for bandwidth reduction, and should be the size of the image as displayed in the
+application. Apollo's media server will downscale larger images to at least the requested size,
+but this will not happen for third-party media servers.""" avatarUrl(size:Int!=40):String betaFeaturesOn:Boolean!canUpdateAvatar:Boolean!canUpdateEmail:Boolean!canUpdateFullName:Boolean!createdAt:Timestamp!email:String emailModifiedAt:Timestamp emailVerified:Boolean!experimentalFeatures:UserExperimentalFeatures!featureIntros:FeatureIntros fullName:String!"""The user's GitHub username, if they log in via GitHub. May be null even for GitHub users in some edge cases.""" githubUsername:String """The unique identifier for a user.""" id:ID!"""This role is reserved exclusively for internal MDG employees, and it controls what access they may have to other
+organizations. Only admins are allowed to see this field.""" internalAdminRole:InternalMdgAdminRole """Last time any API token from this user was used against AGM services""" lastAuthenticatedAt:Timestamp logoutAfterIdleMs:Int """Which organizations a user belongs to.""" memberships:[UserMembership!]!"""The name (first and last) of a user.""" name:String!odysseyCertifications:[OdysseyCertification!]odysseyCourses:[OdysseyCourse!]odysseyHasEarlyAccess:Boolean!odysseyHasRequestedEarlyAccess:Boolean!odysseyTasks:[OdysseyTask!]sandboxOperationCollections:[OperationCollection!]!synchronized:Boolean!"""List of Zendesk tickets this user has submitted""" tickets:[ZendeskTicket!]type:UserType!}type UserApiKey implements ApiKey{id:ID!keyName:String token:String!}type UserExperimentalFeatures{exampleFeature:Boolean!}"""An organization a given user belongs to.""" type UserMembership{"""The organization a user is a member of.""" account:Account!"""When the user joined the organization.""" createdAt:Timestamp!"""What level of access a use has to an organization.""" permission:UserPermission!"""The user that is a member of an organization.""" user:User!}type UserMutation{acceptPrivacyPolicy:Void """Change the user's password""" changePassword(newPassword:String!previousPassword:String!):Void createOdysseyCertification(certificationId:String!):OdysseyCertification createOdysseyCourses(courses:[OdysseyCourseInput!]!):[OdysseyCourse!]createOdysseyTasks(tasks:[OdysseyTaskInput!]!):[OdysseyTask!]"""Delete the user's avatar. Requires User.canUpdateAvatar to be true.""" deleteAvatar:AvatarDeleteError """Hard deletes the associated user. Throws an error otherwise with reason included.""" hardDelete:Void """Create a new API key for this user. Must take in a name for this key.""" newKey(keyName:String!):UserApiKey!"""Create a new API key for this user if there are no current API keys.
+If an API key already exists, this will return one at random and not create a new one.""" provisionKey(keyName:String!="add-a-name"):ApiKeyProvision """Refresh information about the user from its upstream service (eg list of organizations from GitHub)""" refresh:User """Removes the given key from this user. Can be used to remove either a web cookie or a user API key.""" removeKey(id:ID!):Void """Renames the given key to the new key name.""" renameKey(id:ID!newKeyName:String):UserApiKey resendVerificationEmail:Void setOdysseyCourse(course:OdysseyCourseInput!):OdysseyCourse setOdysseyTask(task:OdysseyTaskInput!):OdysseyTask """Submit a zendesk ticket for this user""" submitZendeskTicket(collaborators:[String!]email:String!ticket:ZendeskTicketInput!):ZendeskTicket """Update information about a user; all arguments are optional""" update(email:String fullName:String referrer:String trackingGoogleClientId:String trackingMarketoClientId:String userSegment:UserSegment utmCampaign:String utmMedium:String utmSource:String):User """Updates this users' preference concerning opting into beta features.""" updateBetaFeaturesOn(betaFeaturesOn:Boolean!):User """Update the status of a feature for this. For example, if you want to hide an introductory popup.""" updateFeatureIntros(newFeatureIntros:FeatureIntrosInput):User """Update user to have the given internal mdg admin role.
+It is necessary to be an MDG_INTERNAL_SUPER_ADMIN to perform update.
+Additionally, upserting a null value explicitly revokes this user's
+admin status.""" updateRole(newRole:InternalMdgAdminRole):User user:User!verifyEmail(token:String!):User}enum UserPermission{BILLING_MANAGER CONSUMER CONTRIBUTOR GRAPH_ADMIN LEGACY_GRAPH_KEY OBSERVER ORG_ADMIN}enum UserSegment{JOIN_MY_TEAM LOCAL_DEVELOPMENT NOT_SPECIFIED PRODUCTION_GRAPHS SANDBOX SANDBOX_OPERATION_COLLECTIONS TRY_TEAM}type UserSettings{appNavCollapsed:Boolean!autoManageVariables:Boolean!id:String!mockingResponses:Boolean!preflightScriptEnabled:Boolean!responseHints:ResponseHints!tableMode:Boolean!themeName:ThemeName!}"""Explorer user settings input""" input UserSettingsInput{appNavCollapsed:Boolean autoManageVariables:Boolean mockingResponses:Boolean preflightScriptEnabled:Boolean responseHints:ResponseHints tableMode:Boolean themeName:ThemeName}enum UserType{APOLLO GITHUB SSO}type ValidateOperationsResult{validationResults:[ValidationResult!]!}type ValidationError implements Error{message:String!}enum ValidationErrorCode{DEPRECATED_FIELD INVALID_OPERATION NON_PARSEABLE_DOCUMENT}enum ValidationErrorType{FAILURE INVALID WARNING}"""Represents a single validation error, with information relating to the error
+and its respective operation""" type ValidationResult{"""The validation result's error code""" code:ValidationErrorCode!"""Description of the validation error""" description:String!"""The operation related to this validation result""" operation:OperationDocument!"""The type of validation error thrown - warning, failure, or invalid.""" type:ValidationErrorType!}"""Always null""" scalar Void """Webhook notification channel""" type WebhookChannel implements Channel{id:ID!name:String!secretToken:String subscriptions:[ChannelSubscription!]!url:String!}"""PagerDuty notification channel parameters""" input WebhookChannelInput{name:String secretToken:String url:String!}type ZendeskTicket{createdAt:Timestamp!description:String!graph:Service id:Int!organization:Account priority:TicketPriority!status:TicketStatus subject:String!user:User}"""Zendesk ticket input""" input ZendeskTicketInput{description:String!graphId:String organizationId:String priority:TicketPriority!subject:String!}
diff --git a/nixpkgs/pkgs/development/tools/rover/update.sh b/nixpkgs/pkgs/development/tools/rover/update.sh
new file mode 100755
index 000000000000..50a9945884b7
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rover/update.sh
@@ -0,0 +1,96 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl gnugrep gnused jq nix-prefetch
+
+set -eu -o pipefail
+
+dirname=$(realpath "$(dirname "$0")")
+nixpkgs=$(realpath "${dirname}/../../../..")
+
+old_rover_version=$(nix eval --raw -f "$nixpkgs" rover.version)
+rover_url=https://api.github.com/repos/apollographql/rover/releases/latest
+rover_tag=$(curl "$rover_url" | jq --raw-output ".tag_name")
+rover_version="$(expr "$rover_tag" : 'v\(.*\)')"
+
+if [[ "$old_rover_version" == "$rover_version" ]]; then
+    echo "rover is up-to-date: ${old_rover_version}"
+    exit 0
+fi
+
+echo "Fetching rover"
+rover_tar_url="https://github.com/apollographql/rover/archive/refs/tags/${rover_tag}.tar.gz"
+{
+    read rover_hash
+    read repo
+} < <(nix-prefetch-url "$rover_tar_url" --unpack --type sha256 --print-path)
+
+# Convert hash to SRI representation
+rover_sri_hash=$(nix hash to-sri --type sha256 "$rover_hash")
+
+# Identify librusty version and hash
+librusty_version=$(
+    sed --quiet '/^name = "v8"$/{n;p}' "${repo}/Cargo.lock" \
+        | grep --only-matching --perl-regexp '^version = "\K[^"]+'
+)
+librusty_arch=x86_64-unknown-linux-gnu
+librusty_url="https://github.com/denoland/rusty_v8/releases/download/v${librusty_version}/librusty_v8_release_${librusty_arch}.a"
+echo "Fetching librusty"
+librusty_hash=$(nix-prefetch-url "$librusty_url" --type sha256)
+librusty_sri_hash=$(nix hash to-sri --type sha256 "$librusty_hash")
+
+# Update rover version.
+sed --in-place \
+    "s|version = \"[0-9.]*\"|version = \"$rover_version\"|" \
+    "$dirname/default.nix"
+
+# Update rover hash.
+sed --in-place \
+    "s|sha256 = \"[a-zA-Z0-9\/+-=]*\"|sha256 = \"$rover_sri_hash\"|" \
+    "$dirname/default.nix"
+
+# Clear cargoSha256.
+sed --in-place \
+    "s|cargoSha256 = \".*\"|cargoSha256 = \"sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=\"|" \
+    "$dirname/default.nix"
+
+# Update cargoSha256
+echo "Computing cargoSha256"
+cargoSha256=$(
+    nix-prefetch "{ sha256 }: (import $nixpkgs {}).rover.cargoDeps.overrideAttrs (_: { outputHash = sha256; })"
+)
+sed --in-place \
+    "s|cargoSha256 = \".*\"|cargoSha256 = \"$cargoSha256\"|" \
+    "$dirname/default.nix"
+
+# Update librusty version
+sed --in-place \
+    "s|version = \"[0-9.]*\"|version = \"$librusty_version\"|" \
+    "$dirname/librusty_v8.nix"
+
+# Update librusty hash
+sed --in-place \
+    "s|x86_64-linux = \"[^\"]*\"|x86_64-linux = \"$librusty_sri_hash\"|" \
+    "$dirname/librusty_v8.nix"
+
+# Update apollo api schema info
+response="$(mktemp)"
+schemaUrl=https://graphql.api.apollographql.com/api/schema
+
+mkdir -p "$dirname"/schema
+
+# Fetch schema info
+echo "Fetching Apollo GraphQL schema"
+# include response headers, and append terminating newline to response body
+curl --include --write-out "\n" "$schemaUrl" > "$response"
+
+# Parse response headers and write the etag to schema/etag.id
+grep \
+    --max-count=1 \
+    --only-matching \
+    --perl-regexp \
+    '^etag: \K\S*' \
+    "$response" \
+    > "$dirname"/schema/etag.id
+
+# Discard headers and blank line (terminated by carriage return), and write the
+# response body to schema/schema.graphql
+sed '1,/^\r/d' "$response" > "$dirname"/schema/schema.graphql
diff --git a/nixpkgs/pkgs/development/tools/rslint/default.nix b/nixpkgs/pkgs/development/tools/rslint/default.nix
index cff68cc07c4e..1dd66050d2d7 100644
--- a/nixpkgs/pkgs/development/tools/rslint/default.nix
+++ b/nixpkgs/pkgs/development/tools/rslint/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rslint";
-  version = "0.3.1";
+  version = "0.3.2";
 
   src = fetchFromGitHub {
     owner = "rslint";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-AkSQpGbhRVmDuDAbMzx00BELpI2szJ+rjKo8Qjcug1E=";
+    sha256 = "sha256-3DEwi+bhqwP8aMpZYl07GZbe7IecraB3m54lZ5LViVc=";
   };
 
-  cargoSha256 = "sha256-U8Uf7LG6+dOi+XxRpJrpy0kAqyr8fAlVchE9ZJ+ex/s=";
+  cargoSha256 = "sha256-bqF5v52uxbvmVmphXAmcWlCI6nbQzZemCxlTcqhRDTY=";
 
   cargoBuildFlags = [
     "-p" "rslint_cli"
diff --git a/nixpkgs/pkgs/development/tools/rtags/default.nix b/nixpkgs/pkgs/development/tools/rtags/default.nix
index 6ecbe058328f..6693e80e1161 100644
--- a/nixpkgs/pkgs/development/tools/rtags/default.nix
+++ b/nixpkgs/pkgs/development/tools/rtags/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchgit, cmake, llvmPackages, openssl, apple_sdk, emacs, pkg-config }:
+{ stdenv, lib, fetchFromGitHub, cmake, llvmPackages, openssl, apple_sdk, emacs, pkg-config }:
 
 stdenv.mkDerivation rec {
   pname = "rtags";
@@ -8,11 +8,12 @@ stdenv.mkDerivation rec {
     ++ lib.optionals stdenv.cc.isGNU [ llvmPackages.clang-unwrapped ]
     ++ lib.optionals stdenv.isDarwin [ apple_sdk.libs.xpc apple_sdk.frameworks.CoreServices ];
 
-  src = fetchgit {
-    rev = "refs/tags/v${version}";
+  src = fetchFromGitHub {
+    owner = "andersbakken";
+    repo = "rtags";
+    rev = "v${version}";
+    sha256 = "sha256-EJ5pC53S36Uu7lM6KuLvLN6MAyrQW/Yk5kPqZNS5m8c=";
     fetchSubmodules = true;
-    url = "https://github.com/andersbakken/rtags.git";
-    sha256 = "1iwvp7a69sj3wqjgcnyh581qrpicxzi2lfjkxqpabpyjkl5nk7hh";
     # unicode file names lead to different checksums on HFS+ vs. other
     # filesystems because of unicode normalisation
     postFetch = ''
diff --git a/nixpkgs/pkgs/development/tools/rust/bootimage/default.nix b/nixpkgs/pkgs/development/tools/rust/bootimage/default.nix
new file mode 100644
index 000000000000..9da7aeaa8cc3
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/rust/bootimage/default.nix
@@ -0,0 +1,26 @@
+{ lib
+, stdenv
+, rustPlatform
+, fetchFromGitHub
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "bootimage";
+  version = "0.10.3";
+
+  src = fetchFromGitHub {
+    owner = "rust-osdev";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "12p18mk3l473is3ydv3zmn6s7ck8wgjwavllimcpja3yjilxm3zg";
+  };
+
+  cargoSha256 = "03jximwqgjq7359c5mxbyfja2d04y57h34f87aby8jy0lz99jy2x";
+
+  meta = with lib; {
+    description = "Creates a bootable disk image from a Rust OS kernel.";
+    homepage = "https://github.com/rust-osdev/bootimage";
+    license = with licenses; [ asl20 mit ];
+    maintainers = with maintainers; [ dbeckwith ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-crev/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-crev/default.nix
index 9fc89ece06d6..90ea16582713 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-crev/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-crev/default.nix
@@ -13,16 +13,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-crev";
-  version = "0.23.0";
+  version = "0.23.1";
 
   src = fetchFromGitHub {
     owner = "crev-dev";
     repo = "cargo-crev";
     rev = "v${version}";
-    sha256 = "sha256-iqFE3sz7cIFcd9zCFjU1PjMWVmxCRcdiiGAbirWUWMA=";
+    sha256 = "sha256-XzjZEVyPVn+7VrjG4QsqVBFmuGC1TWTWLEoqFcwQhaI=";
   };
 
-  cargoSha256 = "sha256-qlqW5phw7QI5KT2uUamQFEYHZd4uzYaUuvZTG3KhrOU=";
+  cargoSha256 = "sha256-p87ZnOxaF9ytSUxp0P3QE3K1/jo7hz/N7BH1f2Lc0I0=";
 
   preCheck = ''
     export HOME=$(mktemp -d)
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-nextest/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-nextest/default.nix
index 54d568726ddc..ed0c8c870096 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-nextest/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-nextest/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-nextest";
-  version = "0.9.10";
+  version = "0.9.12";
 
   src = fetchFromGitHub {
     owner = "nextest-rs";
     repo = "nextest";
     rev = "cargo-nextest-${version}";
-    sha256 = "0gbh990dd4514bfqh4x2nymh5w608ljp3s7akq100m4v723b6339";
+    sha256 = "sha256-E3/AgzLvjlMfbmvAOYx4V1/1wSLKlFo61tGv79ow7XY=";
   };
 
-  cargoSha256 = "0c0i274dkz3jx9dzcxl9hyf3imiga8vb6m6jc5z1f1wdq3vknh9r";
+  cargoSha256 = "sha256-zrYmZG3VAneanHaNoG3txv7LbKCYvqIf60g1W7CmPG8=";
 
   cargoTestFlags = [ # TODO: investigate some more why these tests fail in nix
     "--"
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-spellcheck/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-spellcheck/default.nix
index 3b579d3ef9f0..39d01fd1d311 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-spellcheck/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-spellcheck/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-spellcheck";
-  version = "0.10.1";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = "drahnr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-AKk25/j9Ao7ss8+2x+A5ohZ4P1wQ8uW5DVIBCHqFSPU=";
+    sha256 = "sha256-g8HsxY6moTLGdD1yBpzNNV+9uNdgbc0KG46ZxqwKH9A=";
   };
 
-  cargoSha256 = "sha256-6zTZXSW8poePNZy48F6u5tF1LEDQt4f9qv7W/pdIBbI=";
+  cargoSha256 = "sha256-ehOeussyO/0lhIN8xfbEDMvgfooC0SzJ9id/skw1sdA=";
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
diff --git a/nixpkgs/pkgs/development/tools/rust/cargo-supply-chain/default.nix b/nixpkgs/pkgs/development/tools/rust/cargo-supply-chain/default.nix
index d5876f240a93..d938b93c2456 100644
--- a/nixpkgs/pkgs/development/tools/rust/cargo-supply-chain/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cargo-supply-chain/default.nix
@@ -2,14 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-supply-chain";
-  version = "0.2.0";
+  version = "0.3.1";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-zjDZJOUjnEQ03rmo5CdSY1emE6YohOPlf7SKuvNLuV0=";
+    sha256 = "sha256-2iOAa0f0C3tS4oLrSJYjGnuoziPFxcQzXZLqENQq5PY=";
   };
 
-  cargoSha256 = "sha256-xSJ5rx8k+my0NeGYHZyvDzbM7uMdbViT7Ou9a9JACfs=";
+  cargoSha256 = "sha256-7wjaakyh27U7jjQQ6wNKR4lKQ7Y/+EEfLCfjVojk3TU=";
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
diff --git a/nixpkgs/pkgs/development/tools/rust/cbindgen/default.nix b/nixpkgs/pkgs/development/tools/rust/cbindgen/default.nix
index 69963ea7d1fa..6e8f67bd0a54 100644
--- a/nixpkgs/pkgs/development/tools/rust/cbindgen/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/cbindgen/default.nix
@@ -33,6 +33,6 @@ rustPlatform.buildRustPackage rec {
     description = "A project for generating C bindings from Rust code";
     homepage = "https://github.com/eqrion/cbindgen";
     license = licenses.mpl20;
-    maintainers = with maintainers; [ jtojnar ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix b/nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix
index 2221ae0a14b3..f155fdbaf788 100644
--- a/nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix
+++ b/nixpkgs/pkgs/development/tools/rust/rust-analyzer/default.nix
@@ -11,14 +11,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rust-analyzer-unwrapped";
-  version = "2022-02-28";
-  cargoSha256 = "sha256-dTw6xp99uGtGp6YuqAX3r3GDD6Wto3KHTaO2DUUE2FA=";
+  version = "2022-03-07";
+  cargoSha256 = "sha256-geMzdo5frW5VkuTwBHKHXCTJZrHDUIRSTs2kkCfA5Vc=";
 
   src = fetchFromGitHub {
     owner = "rust-analyzer";
     repo = "rust-analyzer";
     rev = version;
-    sha256 = "sha256-GQ1cPO4povnozLl0MTFs0ZXpmBn+AZeFWQVnxHHWf9g=";
+    sha256 = "sha256-/qKh4utesAjlyG8A3hEmSx+HBgh48Uje6ZRtUGz5f0g=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/tools/rust/rust-analyzer/update.sh b/nixpkgs/pkgs/development/tools/rust/rust-analyzer/update.sh
index 920b36a5131e..000a728a2b25 100755
--- a/nixpkgs/pkgs/development/tools/rust/rust-analyzer/update.sh
+++ b/nixpkgs/pkgs/development/tools/rust/rust-analyzer/update.sh
@@ -1,5 +1,6 @@
 #!/usr/bin/env nix-shell
 #!nix-shell -i bash -p curl jq nix-prefetch libarchive
+# shellcheck shell=bash
 set -euo pipefail
 cd "$(dirname "$0")"
 owner=rust-analyzer
diff --git a/nixpkgs/pkgs/development/tools/sentry-cli/default.nix b/nixpkgs/pkgs/development/tools/sentry-cli/default.nix
index 2d20beb2eb9a..2fb0f1ebbeba 100644
--- a/nixpkgs/pkgs/development/tools/sentry-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/sentry-cli/default.nix
@@ -9,13 +9,13 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "sentry-cli";
-  version = "1.73.0";
+  version = "1.74.2";
 
   src = fetchFromGitHub {
     owner = "getsentry";
     repo = "sentry-cli";
     rev = version;
-    sha256 = "sha256-wnpC/LVhGOXWaa198bcahjdXRVuh1Xv0tFe2BCfOnNE=";
+    sha256 = "sha256-1A/c5HiXtT6xUTxVInv9DbbCsqpu8iCJ7I0A9wFeaQ0=";
   };
   doCheck = false;
 
@@ -25,7 +25,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration ];
   nativeBuildInputs = [ pkg-config ];
 
-  cargoSha256 = "sha256-7mjAKuiFcNzjt8Ti5/50TmPy3LY6dwXuQCHtbcoVZm8=";
+  cargoSha256 = "sha256-z++t+Zt40az11z/xhobvvbbSNUBpnMzqlRzoOuYgY2U=";
 
   meta = with lib; {
     homepage = "https://docs.sentry.io/cli/";
diff --git a/nixpkgs/pkgs/development/tools/skaffold/default.nix b/nixpkgs/pkgs/development/tools/skaffold/default.nix
index 2d2237e7b638..4f286cb22d77 100644
--- a/nixpkgs/pkgs/development/tools/skaffold/default.nix
+++ b/nixpkgs/pkgs/development/tools/skaffold/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "skaffold";
-  version = "1.36.0";
+  version = "1.37.0";
 
   src = fetchFromGitHub {
     owner = "GoogleContainerTools";
     repo = "skaffold";
     rev = "v${version}";
-    sha256 = "sha256-N5m13wxCtdZ1UBBVmq77XvePJTphMhLoHl4VcTcl3dE=";
+    sha256 = "sha256-mS+q+WOdEMMHjoqoIlDOqkoaRRLlou7FbMjC436k96A=";
   };
 
-  vendorSha256 = "sha256-49UuGVdOlIf50QZ+qlA4kxlrSKouN8zZlby4wMxabe0=";
+  vendorSha256 = "sha256-LiNnTAI7iJkWL657eBw5OsCdvgWE2ZFZ3e+8vJtMhoE=";
 
   subPackages = ["cmd/skaffold"];
 
diff --git a/nixpkgs/pkgs/development/tools/skopeo/default.nix b/nixpkgs/pkgs/development/tools/skopeo/default.nix
index 213a8da8ce02..6618c0248514 100644
--- a/nixpkgs/pkgs/development/tools/skopeo/default.nix
+++ b/nixpkgs/pkgs/development/tools/skopeo/default.nix
@@ -14,13 +14,13 @@
 
 buildGoModule rec {
   pname = "skopeo";
-  version = "1.6.1";
+  version = "1.7.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "containers";
     repo = "skopeo";
-    sha256 = "sha256-L3dHkF7yKnwXpXxCEswwA0TxVfjTzc89l0rpT7EYpIU=";
+    sha256 = "sha256-sbe16IcHkhsiBznsMKtG/xYJYJfJS6aZ34++QhkGTTc=";
   };
 
   outputs = [ "out" "man" ];
diff --git a/nixpkgs/pkgs/development/tools/sslmate-agent/default.nix b/nixpkgs/pkgs/development/tools/sslmate-agent/default.nix
new file mode 100644
index 000000000000..ecbaeb816f00
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/sslmate-agent/default.nix
@@ -0,0 +1,40 @@
+{ lib, stdenv, fetchurl, dpkg, autoPatchelfHook }:
+
+stdenv.mkDerivation rec {
+  pname = "sslmate-agent";
+  version = "1.99.11";
+
+  src = fetchurl {
+    url = "https://packages.sslmate.com/debian/pool/sslmate2/s/sslmate-client/${pname}_${version}-1_amd64.deb";
+    sha256 = "sha256-LBiZI0pGAFWnvTigEhtkhHq4FGdbYiMzjLheMuP0YTU=";
+  };
+
+  nativeBuildInputs = [
+    dpkg
+    autoPatchelfHook
+  ];
+
+  unpackCmd = ''
+    dpkg-deb -x ${src} ./sslmate-agent-${pname}
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    # Not moving etc because it only contains init.rd setttings
+    mv usr $out
+    mv lib $out
+
+    substituteInPlace $out/lib/systemd/system/sslmate-agent.service \
+      --replace "/usr/s" "$out/"
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Daemon for managing SSL/TLS certificates on a server";
+    homepage = "https://sslmate.com/";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ wolfangaukang ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/stylua/default.nix b/nixpkgs/pkgs/development/tools/stylua/default.nix
index 1b25634502a9..e21f058b8a06 100644
--- a/nixpkgs/pkgs/development/tools/stylua/default.nix
+++ b/nixpkgs/pkgs/development/tools/stylua/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "stylua";
-  version = "0.12.4";
+  version = "0.12.5";
 
   src = fetchFromGitHub {
     owner = "johnnymorganz";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-BPLN7/LaVDtCOJBgIJVbnENUyFtacRsK3JxDupytzOA=";
+    sha256 = "sha256-4tQQTTAdIAhlkBJevwwwGXOKd6bJJOyG4nlbCv7909Y=";
   };
 
-  cargoSha256 = "sha256-MZsFbFQp5Rw20pXzvTFNhMiVx/TJZ63/2rU7vj7IcqQ=";
+  cargoSha256 = "sha256-DGe2lB8xZgY9ikTsIHDOdHzTyHfDaSlmy8FU/S9FDCI=";
 
   buildFeatures = lib.optional lua52Support "lua52"
     ++ lib.optional luauSupport "luau";
diff --git a/nixpkgs/pkgs/development/tools/symfony-cli/default.nix b/nixpkgs/pkgs/development/tools/symfony-cli/default.nix
index d87ecddbf894..ebb07ec2b49c 100644
--- a/nixpkgs/pkgs/development/tools/symfony-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/symfony-cli/default.nix
@@ -2,14 +2,14 @@
 
 buildGoModule rec {
   pname = "symfony-cli";
-  version = "5.4.1";
+  version = "5.4.2";
   vendorSha256 = "sha256-MlsgII1QybyW+B7DGbSyn7VQ36n29yOC0pZnaemEHO8=";
 
   src = fetchFromGitHub {
     owner = "symfony-cli";
     repo = "symfony-cli";
     rev = "v${version}";
-    sha256 = "sha256-92Pth+IrILWkcP4mm3IcSN4+zs7TNg4CPGT2liop7/I=";
+    sha256 = "sha256-Ci523YoocpCexbXMg3PjQ/x8z/STWt+nro64l+ckKzM=";
   };
 
   # Tests requires network access
diff --git a/nixpkgs/pkgs/development/tools/toml2json/default.nix b/nixpkgs/pkgs/development/tools/toml2json/default.nix
new file mode 100644
index 000000000000..0287b75b362f
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/toml2json/default.nix
@@ -0,0 +1,20 @@
+{ lib, rustPlatform, fetchCrate }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "toml2json";
+  version = "1.3.0";
+
+  src = fetchCrate {
+    inherit pname version;
+    sha256 = "sha256-TxTxKHf5g+mBXDq147T5tuwCqyfyoz6Mj55g1tlgRDY=";
+  };
+
+  cargoHash = "sha256-EYp30TMIpzSCkPIqqdc7sGpfaWs9OLi9ey7DoPE4jzI=";
+
+  meta = with lib; {
+    description = "A very small CLI for converting TOML to JSON";
+    homepage = "https://github.com/woodruffw/toml2json";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ rvarago ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/tools/udis86/default.nix b/nixpkgs/pkgs/development/tools/udis86/default.nix
index dd4ad058c8da..aec41c7c97a6 100644
--- a/nixpkgs/pkgs/development/tools/udis86/default.nix
+++ b/nixpkgs/pkgs/development/tools/udis86/default.nix
@@ -1,17 +1,31 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, python2 }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, fetchpatch
+, autoreconfHook
+, python3
+}:
 
 stdenv.mkDerivation rec {
   pname = "udis86";
-  version = "1.7.2";
+  version = "unstable-2014-12-25";
 
   src = fetchFromGitHub {
     owner = "vmt";
     repo = "udis86";
-    rev = "v${version}";
-    sha256 = "0c60zwimim6jrm4saw36s38w5sg5v8n9mr58pkqmjrlf7q9g6am1";
+    rev = "56ff6c87c11de0ffa725b14339004820556e343d";
+    hash = "sha256-bmm1rgzZeStQJXEmcT8vnplsnmgN3LJlYs7COmqsDU8=";
   };
 
-  nativeBuildInputs = [ autoreconfHook python2 ];
+  patches = [
+    (fetchpatch {
+      name = "support-python3-for-building";
+      url = "https://github.com/vmt/udis86/commit/3c05ce60372cb2eba39d6eb87ac05af8a664e1b1.patch";
+      hash = "sha256-uF4Cwt7UMkyd0RX6cCMQt9xvkkUNQvTDH/Z/6nHtVT8=";
+    })
+  ];
+
+  nativeBuildInputs = [ autoreconfHook python3 ];
 
   configureFlags = [
     "--enable-shared"
diff --git a/nixpkgs/pkgs/development/tools/vagrant/gemset_libvirt.nix b/nixpkgs/pkgs/development/tools/vagrant/gemset_libvirt.nix
index 2d59b4c2cf8c..0cec878d3047 100644
--- a/nixpkgs/pkgs/development/tools/vagrant/gemset_libvirt.nix
+++ b/nixpkgs/pkgs/development/tools/vagrant/gemset_libvirt.nix
@@ -14,10 +14,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1759s0rz6qgsw86dds1z4jzb3fvizqsk11j5q6z7lc5n404w6i23";
+      sha256 = "1yff4s5b8wcrk9ldils2k84l46m9nxr0my0wxchzdmgjbjdfsvww";
       type = "gem";
     };
-    version = "0.79.0";
+    version = "0.92.0";
   };
   fog-core = {
     dependencies = ["builder" "excon" "formatador" "mime-types"];
@@ -25,10 +25,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0bwqm9n69y5y0a5iickr358z7w4hml3flqwfz8b7cnj1ldabhnjn";
+      sha256 = "06m6hxq8vspx9h9bgc2s19m56jzasvl45vblrfv1q5h1qg1k6amw";
       type = "gem";
     };
-    version = "2.2.3";
+    version = "2.3.0";
   };
   fog-json = {
     dependencies = ["fog-core" "multi_json"];
@@ -47,10 +47,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1s62ihwxlwgp84xw32wg6hwcx4422v20c7g7azd0xslb91y1ln1r";
+      sha256 = "1s8b3bsajwjyrjs53h0nrfrpzzgi8igsrslprhr6fgl80ig3plld";
       type = "gem";
     };
-    version = "0.8.0";
+    version = "0.9.0";
   };
   fog-xml = {
     dependencies = ["fog-core" "nokogiri"];
@@ -58,30 +58,30 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "043lwdw2wsi6d55ifk0w3izi5l1d1h0alwyr3fixic7b94kc812n";
+      sha256 = "1vyyb2429xqzys39xyk2r3fal80qqn397aj2kqsjrgg2y6m59i41";
       type = "gem";
     };
-    version = "0.1.3";
+    version = "0.1.4";
   };
   formatador = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1gc26phrwlmlqrmz4bagq1wd5b7g64avpx0ghxr9xdxcvmlii0l0";
+      sha256 = "1l06bv4avphbdmr1y4g0rqlczr38k6r65b3zghrbj2ynyhm3xqjl";
       type = "gem";
     };
-    version = "0.2.5";
+    version = "1.1.0";
   };
   json = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0lrirj0gw420kw71bjjlqkqhqbrplla61gbv1jzgsz6bv90qr3ci";
+      sha256 = "1z9grvjyfz16ag55hg522d3q4dh07hf391sf9s96npc0vfi85xkz";
       type = "gem";
     };
-    version = "2.5.1";
+    version = "2.6.1";
   };
   mime-types = {
     dependencies = ["mime-types-data"];
@@ -89,30 +89,30 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1zj12l9qk62anvk9bjvandpa6vy4xslil15wl6wlivyf51z773vh";
+      sha256 = "0ipw892jbksbxxcrlx9g5ljq60qx47pm24ywgfbyjskbcl78pkvb";
       type = "gem";
     };
-    version = "3.3.1";
+    version = "3.4.1";
   };
   mime-types-data = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1phcq7z0zpipwd7y4fbqmlaqghv07fjjgrx99mwq3z3n0yvy7fmi";
+      sha256 = "003gd7mcay800k2q4pb2zn8lwwgci4bhi42v2jvlidm8ksx03i6q";
       type = "gem";
     };
-    version = "3.2021.0225";
+    version = "3.2022.0105";
   };
   mini_portile2 = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1hdbpmamx8js53yk3h8cqy12kgv6ca06k0c9n3pxh6b6cjfs19x7";
+      sha256 = "0rapl1sfmfi3bfr68da4ca16yhc0pp93vjwkj7y3rdqrzy3b41hy";
       type = "gem";
     };
-    version = "2.5.0";
+    version = "2.8.0";
   };
   multi_json = {
     groups = ["default"];
@@ -130,40 +130,50 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0b51df8fwadak075cvi17w0nch6qz1r66564qp29qwfj67j9qp0p";
+      sha256 = "1p6b3q411h2mw4dsvhjrp1hh66hha5cm69fqg85vn2lizz71n6xz";
       type = "gem";
     };
-    version = "1.11.2";
+    version = "1.13.3";
   };
   racc = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "178k7r0xn689spviqzhvazzvxfq6fyjldxb3ywjbgipbfi4s8j1g";
+      sha256 = "0la56m0z26j3mfn1a9lf2l03qx1xifanndf9p3vx1azf6sqy7v9d";
       type = "gem";
     };
-    version = "1.5.2";
+    version = "1.6.0";
+  };
+  rexml = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53";
+      type = "gem";
+    };
+    version = "3.2.5";
   };
   ruby-libvirt = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0d754d6pgdqyq52pl9hp0x38q1vn3vf9nz4nm5gqdj5i4fw7pba6";
+      sha256 = "0rnmbfhdz270fky0cm8w1i73gkrnlf3s1hdkm5yxjkdbvapwvjsd";
       type = "gem";
     };
-    version = "0.7.1";
+    version = "0.8.0";
   };
   vagrant-libvirt = {
-    dependencies = ["fog-core" "fog-libvirt" "nokogiri"];
+    dependencies = ["fog-core" "fog-libvirt" "nokogiri" "rexml"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07j30w23syvzrhznad9dkh1ks4lzxzi7ak2966b7i7wr4kz8x1hp";
+      sha256 = "07fhsgqx9iyni41z1lhfmm4wq6cbiyydkmvmib28jbgyznlxjmzv";
       type = "gem";
     };
-    version = "0.4.0";
+    version = "0.7.0";
   };
 }
diff --git a/nixpkgs/pkgs/development/tools/wails/default.nix b/nixpkgs/pkgs/development/tools/wails/default.nix
index 2d0576592ec6..875ed794647d 100644
--- a/nixpkgs/pkgs/development/tools/wails/default.nix
+++ b/nixpkgs/pkgs/development/tools/wails/default.nix
@@ -15,16 +15,16 @@
 
 buildGoModule rec {
   pname = "wails";
-  version = "2.0.0-beta.33";
+  version = "2.0.0-beta.34";
 
   src = fetchFromGitHub {
     owner = "wailsapp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-efxOL/FllToum0P4JyAJt0fbrznTFYh7czTWpZu3uk0=";
+    sha256 = "sha256-dsDruZSmr8qSNpX8L27tLpNxvdSkc2mfNQLRxN9AnCg=";
   } + "/v2";
 
-  vendorSha256 = "sha256-qPMVsvud2L7hpXUOfYYMiO32JXff8ZZC34EsxFoSJ0g=";
+  vendorSha256 = "sha256-OaSPpCb2VxMGlkUIg3fyEJhjz256amEfXBX+5WMY3a0=";
 
   proxyVendor = true;
 
diff --git a/nixpkgs/pkgs/development/tools/wp-cli/default.nix b/nixpkgs/pkgs/development/tools/wp-cli/default.nix
index 9ee452b26f9c..0d828eb8b9ed 100644
--- a/nixpkgs/pkgs/development/tools/wp-cli/default.nix
+++ b/nixpkgs/pkgs/development/tools/wp-cli/default.nix
@@ -41,7 +41,8 @@ stdenv.mkDerivation rec {
     mkdir -p $out/bin
     makeWrapper ${lib.getBin php}/bin/php $out/bin/wp \
       --add-flags "-c $dir/php.ini" \
-      --add-flags "-f $dir/wp-cli"
+      --add-flags "-f $dir/wp-cli" \
+      --add-flags "--"
 
     # this is a very basic run test
     $out/bin/wp --info >/dev/null
diff --git a/nixpkgs/pkgs/development/tools/wrangler/default.nix b/nixpkgs/pkgs/development/tools/wrangler/default.nix
index fba7d96c1da2..dca054db3fea 100644
--- a/nixpkgs/pkgs/development/tools/wrangler/default.nix
+++ b/nixpkgs/pkgs/development/tools/wrangler/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wrangler";
-  version = "1.19.8";
+  version = "1.19.10";
 
   src = fetchFromGitHub {
     owner = "cloudflare";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-vJjAN7RmB1J4k7p2emfbjJxkpfph6piinmqVTR67HW0=";
+    sha256 = "sha256-RKOAs7MRHcGx6BNBml7WQ81bNvdB9ipd0R1ErLTwjTQ=";
   };
 
-  cargoSha256 = "sha256-dDQvcYnceBPDc+yeePjZ1k4a2ujCSh1hJMYFjPGw/bE=";
+  cargoSha256 = "sha256-9GvKDLuDIW5q1R5g20rtSScv2c0sLSo+hI9LSA4W3M8=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/development/tools/ws/default.nix b/nixpkgs/pkgs/development/tools/ws/default.nix
index bef8eb906cf1..95013006010d 100644
--- a/nixpkgs/pkgs/development/tools/ws/default.nix
+++ b/nixpkgs/pkgs/development/tools/ws/default.nix
@@ -1,17 +1,16 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "ws";
   version = "0.2.1";
-  rev = "e9404cb37e339333088b36f6a7909ff3be76931d";
 
   goPackagePath = "github.com/hashrocket/ws";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/hashrocket/ws";
-    sha256 = "192slrz1cj1chzmfrl0d9ai8bq6s4w0iwpvxkhxb9krga7mkp9xb";
+  src = fetchFromGitHub {
+    owner = "hashrocket";
+    repo = "ws";
+    rev = "e9404cb37e339333088b36f6a7909ff3be76931d";
+    sha256 = "sha256-q6c761Evz7Q6nH1fHgEn2uCFokoN0OzqhyxIFn6mWqQ=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/tools/yarn/default.nix b/nixpkgs/pkgs/development/tools/yarn/default.nix
index 50d29cb4a1d4..0e39a714ccda 100644
--- a/nixpkgs/pkgs/development/tools/yarn/default.nix
+++ b/nixpkgs/pkgs/development/tools/yarn/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "yarn";
-  version = "1.22.17";
+  version = "1.22.18";
 
   src = fetchzip {
     url = "https://github.com/yarnpkg/yarn/releases/download/v${version}/yarn-v${version}.tar.gz";
-    sha256 = "1skzlyv2976bl1063f94422jbjy4ns1nxl622biizq31z4821yvj";
+    sha256 = "sha256-gI4v/WPWrNa2i2oct8Ns7bpDzmDCy+c86pGKpNznhh0=";
   };
 
   buildInputs = [ nodejs ];
diff --git a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix b/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix
index 81d4a36a869c..3b30e2a8af03 100644
--- a/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix
+++ b/nixpkgs/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix
@@ -74,6 +74,7 @@ in rec {
     preBuild ? "",
     postBuild ? "",
     workspaceDependencies ? [], # List of yarn packages
+    packageResolutions ? {},
   }:
     let
       extraNativeBuildInputs =
@@ -98,7 +99,7 @@ in rec {
 
       workspaceJSON = pkgs.writeText
         "${name}-workspace-package.json"
-        (builtins.toJSON { private = true; workspaces = ["deps/**"]; }); # scoped packages need second splat
+        (builtins.toJSON { private = true; workspaces = ["deps/**"]; resolutions = packageResolutions; }); # scoped packages need second splat
 
       workspaceDependencyLinks = lib.concatMapStringsSep "\n"
         (dep: ''
@@ -176,6 +177,8 @@ in rec {
 
     packageGlobs = if lib.isList package.workspaces then package.workspaces else package.workspaces.packages;
 
+    packageResolutions = package.resolutions or {};
+
     globElemToRegex = lib.replaceStrings ["*"] [".*"];
 
     # PathGlob -> [PathGlobElem]
@@ -223,7 +226,7 @@ in rec {
         inherit name;
         value = mkYarnPackage (
           builtins.removeAttrs attrs ["packageOverrides"]
-          // { inherit src packageJSON yarnLock workspaceDependencies; }
+          // { inherit src packageJSON yarnLock packageResolutions workspaceDependencies; }
           // lib.attrByPath [name] {} packageOverrides
         );
       })
@@ -245,6 +248,7 @@ in rec {
     extraBuildInputs ? [],
     publishBinsFor ? null,
     workspaceDependencies ? [], # List of yarnPackages
+    packageResolutions ? {},
     ...
   }@attrs:
     let
@@ -264,7 +268,7 @@ in rec {
         preBuild = yarnPreBuild;
         postBuild = yarnPostBuild;
         workspaceDependencies = workspaceDependenciesTransitive;
-        inherit packageJSON pname version yarnLock offlineCache yarnFlags pkgConfig;
+        inherit packageJSON pname version yarnLock offlineCache yarnFlags pkgConfig packageResolutions;
       };
 
       publishBinsFor_ = unlessNull publishBinsFor [pname];
@@ -298,7 +302,7 @@ in rec {
         '')
         workspaceDependenciesTransitive;
 
-    in stdenv.mkDerivation (builtins.removeAttrs attrs ["yarnNix" "pkgConfig" "workspaceDependencies"] // {
+    in stdenv.mkDerivation (builtins.removeAttrs attrs ["yarnNix" "pkgConfig" "workspaceDependencies" "packageResolutions"] // {
       inherit src pname;
 
       name = baseName;
diff --git a/nixpkgs/pkgs/development/tools/yq-go/default.nix b/nixpkgs/pkgs/development/tools/yq-go/default.nix
index e8cd2a134fd4..9f31ce6f9434 100644
--- a/nixpkgs/pkgs/development/tools/yq-go/default.nix
+++ b/nixpkgs/pkgs/development/tools/yq-go/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "yq-go";
-  version = "4.22.1";
+  version = "4.24.2";
 
   src = fetchFromGitHub {
     owner = "mikefarah";
     repo = "yq";
     rev = "v${version}";
-    sha256 = "sha256-+yVf9pSK2cH/d5fdaGSBrjce8vVqE9XMpZSI8s4xoJI=";
+    sha256 = "sha256-KuaIGIDXdL0d+Wxy2O78XTSBo+2oIrcizfd2jyXghXc=";
   };
 
-  vendorSha256 = "sha256-F11FnDYJ59aKrdRXDPpKlhX52yQXdaN1sblSkVI2j9w=";
+  vendorSha256 = "sha256-R40zU0jOc/eIFVDsWG3+4o51iro7Sd7jwtyH/fpWVZs=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/tools/zld/default.nix b/nixpkgs/pkgs/development/tools/zld/default.nix
new file mode 100644
index 000000000000..408e3308b658
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/zld/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, lib, fetchzip }:
+
+stdenv.mkDerivation rec {
+  pname = "zld";
+  version = "1.3.3";
+  src = fetchzip {
+    url = "https://github.com/michaeleisel/zld/releases/download/${version}/zld.zip";
+    sha256 = "0qb4l7a4vhpnzkgzhw0jivz40jr5gdhqfyynhbkhn7ryh5s52d1p";
+  };
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp zld $out/bin/
+  '';
+
+  meta = with lib; {
+    description = "A faster version of Apple's linker";
+    homepage = "https://github.com/michaeleisel/zld";
+    license = licenses.mit;
+    maintainers = [ maintainers.rgnns ];
+    platforms = platforms.darwin;
+    hydraPlatforms = [];
+  };
+}
diff --git a/nixpkgs/pkgs/development/web/cypress/default.nix b/nixpkgs/pkgs/development/web/cypress/default.nix
index 9343a2eab480..18bd7c5749fe 100644
--- a/nixpkgs/pkgs/development/web/cypress/default.nix
+++ b/nixpkgs/pkgs/development/web/cypress/default.nix
@@ -16,11 +16,11 @@
 
 stdenv.mkDerivation rec {
   pname = "cypress";
-  version = "9.4.1";
+  version = "9.5.2";
 
   src = fetchzip {
     url = "https://cdn.cypress.io/desktop/${version}/linux-x64/cypress.zip";
-    sha256 = "JoHfXhN5mXJoPwnUf7cKK5FduxqP9bSaGUU8yNfg29Y=";
+    sha256 = "UMsN4T0hlV0R/sY0PSZ6A8euueoCcaRTSH9I3gkYayU=";
   };
 
   # don't remove runtime deps
diff --git a/nixpkgs/pkgs/development/web/flyctl/default.nix b/nixpkgs/pkgs/development/web/flyctl/default.nix
index 7de71132d6a1..9fe93bac4420 100644
--- a/nixpkgs/pkgs/development/web/flyctl/default.nix
+++ b/nixpkgs/pkgs/development/web/flyctl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "flyctl";
-  version = "0.0.301";
+  version = "0.0.308";
 
   src = fetchFromGitHub {
     owner = "superfly";
     repo = "flyctl";
     rev = "v${version}";
-    sha256 = "sha256-UwouKnUfEcYpwtLXxwe93mHzVvj/+72FSQ0OW55oztE=";
+    sha256 = "sha256-Di0egdreY3c6kulcvAl4dFfYpIuMocQzHiFW48kJ6u4=";
   };
 
   preBuild = ''
@@ -17,7 +17,7 @@ buildGoModule rec {
 
   subPackages = [ "." ];
 
-  vendorSha256 = "sha256-VKX/Wt7CQy3w4Zv51M/IF1RIPpn7nTCL1T6jJ+oxti4=";
+  vendorSha256 = "sha256-2goglOmcUud9KT5accn/AMe4xEgRN2Ep1qMfQHtlI+Q=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/web/grails/default.nix b/nixpkgs/pkgs/development/web/grails/default.nix
index 0efa2b41a983..5caacbd0d507 100644
--- a/nixpkgs/pkgs/development/web/grails/default.nix
+++ b/nixpkgs/pkgs/development/web/grails/default.nix
@@ -11,11 +11,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "grails";
-  version = "5.1.3";
+  version = "5.1.4";
 
   src = fetchurl {
     url = "https://github.com/grails/grails-core/releases/download/v${version}/grails-${version}.zip";
-    sha256 = "sha256-BacAVAnS3qdmzHGVUdZI2hn4Arp9Qep6cAXRabpB10M=";
+    sha256 = "sha256-EoMSnT1MmYGeF82XC7Ed9woe8t+xzYJaylLBVpdFvoI=";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/nixpkgs/pkgs/development/web/insomnia/default.nix b/nixpkgs/pkgs/development/web/insomnia/default.nix
index 2abdabc23311..ae6200df5ef0 100644
--- a/nixpkgs/pkgs/development/web/insomnia/default.nix
+++ b/nixpkgs/pkgs/development/web/insomnia/default.nix
@@ -2,7 +2,7 @@
 , fontconfig, freetype, gdk-pixbuf, glib, pango, mesa, nspr, nss, gtk3
 , at-spi2-atk, gsettings-desktop-schemas, gobject-introspection, wrapGAppsHook
 , libX11, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext
-, libXfixes, libXi, libXrandr, libXrender, libXtst, libxcb, nghttp2
+, libXfixes, libXi, libXrandr, libXrender, libXtst, libxcb, libxshmfence, nghttp2
 , libudev0-shim, glibc, curl, openssl, autoPatchelfHook }:
 
 let
@@ -15,12 +15,12 @@ let
   ];
 in stdenv.mkDerivation rec {
   pname = "insomnia";
-  version = "2021.7.2";
+  version = "2022.1.1";
 
   src = fetchurl {
     url =
       "https://github.com/Kong/insomnia/releases/download/core%40${version}/Insomnia.Core-${version}.deb";
-    sha256 = "sha256-HkQWW4h2+XT5Xi4oiIiMPnrRKw+GIyjGMQ5B1NrBARU=";
+    sha256 = "sha256-AaRiXGdKCzcsY4GEgLr5PO+f7STsR+p7ybGISdJlCVk=";
   };
 
   nativeBuildInputs =
@@ -53,6 +53,7 @@ in stdenv.mkDerivation rec {
     libXrender
     libXtst
     libxcb
+    libxshmfence
     mesa # for libgbm
     nspr
     nss
diff --git a/nixpkgs/pkgs/development/web/kore/default.nix b/nixpkgs/pkgs/development/web/kore/default.nix
index a1bd3ecd451b..7a3ec5fe4ae3 100644
--- a/nixpkgs/pkgs/development/web/kore/default.nix
+++ b/nixpkgs/pkgs/development/web/kore/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "kore";
-  version = "4.1.0";
+  version = "4.2.1";
 
   src = fetchFromGitHub {
     owner = "jorisvink";
     repo = pname;
     rev = version;
-    sha256 = "sha256-w5H1USQ2aladwSFdfYsX925pjCt3QWoXK4HqyEL7rH0=";
+    sha256 = "sha256-MC4PCjRuAqWuGvNDsZXKohb4HdSWMV0Oc0pZ0rnhG7Y=";
   };
 
   buildInputs = [ openssl curl postgresql yajl ];
diff --git a/nixpkgs/pkgs/development/web/nodejs/setup-hook.sh b/nixpkgs/pkgs/development/web/nodejs/setup-hook.sh
index 18368588c2af..878e0693a1e6 100644
--- a/nixpkgs/pkgs/development/web/nodejs/setup-hook.sh
+++ b/nixpkgs/pkgs/development/web/nodejs/setup-hook.sh
@@ -1,5 +1,5 @@
 addNodePath () {
-    addToSearchPath NODE_PATH $1/lib/node_modules
+    addToSearchPath NODE_PATH "$1/lib/node_modules"
 }
 
 addEnvHooks "$hostOffset" addNodePath
diff --git a/nixpkgs/pkgs/development/web/nodejs/v12.nix b/nixpkgs/pkgs/development/web/nodejs/v12.nix
index f353fa9bbc6f..e2db169bad37 100644
--- a/nixpkgs/pkgs/development/web/nodejs/v12.nix
+++ b/nixpkgs/pkgs/development/web/nodejs/v12.nix
@@ -8,7 +8,7 @@ let
 in
   buildNodejs {
     inherit enableNpm;
-    version = "12.22.10";
-    sha256 = "sha256-rUyIkdVKLJu2r0NpVt7q1ZhrlpiwbmxtYW3kKc+1OTo=";
+    version = "12.22.11";
+    sha256 = "sha256-XoHaJv1bH4lxRIOrqmjj2jBFI+QzTHjEm/p6A+541vE=";
     patches = lib.optional stdenv.isDarwin ./bypass-xcodebuild.diff;
   }
diff --git a/nixpkgs/pkgs/development/web/nodejs/v14.nix b/nixpkgs/pkgs/development/web/nodejs/v14.nix
index 270592d6dc32..e2a65ace3811 100644
--- a/nixpkgs/pkgs/development/web/nodejs/v14.nix
+++ b/nixpkgs/pkgs/development/web/nodejs/v14.nix
@@ -7,7 +7,7 @@ let
 in
   buildNodejs {
     inherit enableNpm;
-    version = "14.19.0";
-    sha256 = "sha256-6S6EYwDmEXVH036o1b0yJEwZsvzvyznhQgpHY39FAww=";
+    version = "14.19.1";
+    sha256 = "sha256-4a4J3YYas5rwRIO7XA+lTd2CtrFVQ76aJ+pnBKi6ndk=";
     patches = lib.optional stdenv.isDarwin ./bypass-xcodebuild.diff;
   }
diff --git a/nixpkgs/pkgs/development/web/nodejs/v16.nix b/nixpkgs/pkgs/development/web/nodejs/v16.nix
index 864672b12def..7f3dce2d70cf 100644
--- a/nixpkgs/pkgs/development/web/nodejs/v16.nix
+++ b/nixpkgs/pkgs/development/web/nodejs/v16.nix
@@ -8,8 +8,8 @@ let
 in
   buildNodejs {
     inherit enableNpm;
-    version = "16.14.0";
-    sha256 = "sha256-BetkGT45H6iiwVnA9gwXGCRxUWX4DGf8q528lE4wxiM=";
+    version = "16.14.2";
+    sha256 = "sha256-6SLiFcxo61+U0z6KC2HiyGO3cxzIYAq5VdOCLakP+NE=";
     patches = [
       ./disable-darwin-v8-system-instrumentation.patch
       # Fixes node incorrectly building vendored OpenSSL when we want system OpenSSL.
diff --git a/nixpkgs/pkgs/development/web/nodejs/v17.nix b/nixpkgs/pkgs/development/web/nodejs/v17.nix
index 9540919b017f..1c4dcc02a971 100644
--- a/nixpkgs/pkgs/development/web/nodejs/v17.nix
+++ b/nixpkgs/pkgs/development/web/nodejs/v17.nix
@@ -1,4 +1,4 @@
-{ callPackage, fetchpatch, python3, enableNpm ? true }:
+{ callPackage, python3, enableNpm ? true }:
 
 let
   buildNodejs = callPackage ./nodejs.nix {
@@ -7,15 +7,9 @@ let
 in
 buildNodejs {
   inherit enableNpm;
-  version = "17.5.0";
-  sha256 = "sha256-myTmgwV2xX7ja6SDM974vldSMph7Tak5Vot7ifdzzcM=";
+  version = "17.8.0";
+  sha256 = "0jsf6sv42rzpizvil7g1gf9bskh8lx0gcxg0yzpr4hk7mx7i90br";
   patches = [
     ./disable-darwin-v8-system-instrumentation.patch
-    # Fixes node incorrectly building vendored OpenSSL when we want system OpenSSL.
-    # https://github.com/nodejs/node/pull/40965
-    (fetchpatch {
-      url = "https://github.com/nodejs/node/commit/65119a89586b94b0dd46b45f6d315c9d9f4c9261.patch";
-      sha256 = "sha256-dihKYEdK68sQIsnfTRambJ2oZr0htROVbNZlFzSAL+I=";
-    })
   ];
 }
diff --git a/nixpkgs/pkgs/development/web/shopify-cli/Gemfile b/nixpkgs/pkgs/development/web/shopify-cli/Gemfile
new file mode 100644
index 000000000000..ec10d4a03468
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/shopify-cli/Gemfile
@@ -0,0 +1,2 @@
+source 'https://rubygems.org'
+gem 'shopify-cli'
diff --git a/nixpkgs/pkgs/development/web/shopify-cli/Gemfile.lock b/nixpkgs/pkgs/development/web/shopify-cli/Gemfile.lock
new file mode 100644
index 000000000000..a137dbdfaa8e
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/shopify-cli/Gemfile.lock
@@ -0,0 +1,39 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    ast (2.4.2)
+    bugsnag (6.24.2)
+      concurrent-ruby (~> 1.0)
+    concurrent-ruby (1.1.9)
+    ffi (1.15.5)
+    liquid (5.2.0)
+    listen (3.7.1)
+      rb-fsevent (~> 0.10, >= 0.10.3)
+      rb-inotify (~> 0.9, >= 0.9.10)
+    mini_portile2 (2.8.0)
+    nokogiri (1.13.3)
+      mini_portile2 (~> 2.8.0)
+      racc (~> 1.4)
+    parser (3.1.1.0)
+      ast (~> 2.4.1)
+    racc (1.6.0)
+    rb-fsevent (0.11.1)
+    rb-inotify (0.10.1)
+      ffi (~> 1.0)
+    shopify-cli (2.14.0)
+      bugsnag (~> 6.22)
+      listen (~> 3.7.0)
+      theme-check (~> 1.10.1)
+    theme-check (1.10.2)
+      liquid (>= 5.1.0)
+      nokogiri (>= 1.12)
+      parser (~> 3)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  shopify-cli
+
+BUNDLED WITH
+   2.2.33
diff --git a/nixpkgs/pkgs/development/web/shopify-cli/default.nix b/nixpkgs/pkgs/development/web/shopify-cli/default.nix
new file mode 100644
index 000000000000..a3ec7ff3f318
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/shopify-cli/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, lib, bundlerEnv, bundlerUpdateScript, makeWrapper, ruby }:
+
+let
+  rubyEnv = bundlerEnv {
+    name = "shopify-cli";
+    gemdir = ./.;
+  };
+in
+stdenv.mkDerivation rec {
+  pname = "shopify-cli";
+  version = (import ./gemset.nix).shopify-cli.version;
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  dontUnpack = true;
+
+  installPhase = ''
+    mkdir -p $out/bin
+    makeWrapper ${rubyEnv}/bin/shopify $out/bin/shopify
+    wrapProgram $out/bin/shopify \
+      --prefix PATH : ${lib.makeBinPath [ ruby ]}
+  '';
+
+  passthru.updateScript = bundlerUpdateScript "shopify-cli";
+
+  meta = with lib; {
+    description = "CLI which helps you build against the Shopify platform faster";
+    homepage    = "https://github.com/Shopify/shopify-cli";
+    license     = licenses.mit;
+    platforms = ruby.meta.platforms;
+    maintainers = with maintainers; [ onny ];
+  };
+}
+
diff --git a/nixpkgs/pkgs/development/web/shopify-cli/gemset.nix b/nixpkgs/pkgs/development/web/shopify-cli/gemset.nix
new file mode 100644
index 000000000000..1c6d7e891980
--- /dev/null
+++ b/nixpkgs/pkgs/development/web/shopify-cli/gemset.nix
@@ -0,0 +1,149 @@
+{
+  ast = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04nc8x27hlzlrr5c2gn7mar4vdr0apw5xg22wp6m8dx3wqr04a0y";
+      type = "gem";
+    };
+    version = "2.4.2";
+  };
+  bugsnag = {
+    dependencies = ["concurrent-ruby"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vlsqawqy8jn6cy03zcqw944p323zmr2lgadbw00m5r4lqc3bll4";
+      type = "gem";
+    };
+    version = "6.24.2";
+  };
+  concurrent-ruby = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nwad3211p7yv9sda31jmbyw6sdafzmdi2i2niaz6f0wk5nq9h0f";
+      type = "gem";
+    };
+    version = "1.1.9";
+  };
+  ffi = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1862ydmclzy1a0cjbvm8dz7847d9rch495ib0zb64y84d3xd4bkg";
+      type = "gem";
+    };
+    version = "1.15.5";
+  };
+  liquid = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "16aqzbvhvm254hbl274l4883h38j8wlwkcarmg09c7wzgpi0jnl1";
+      type = "gem";
+    };
+    version = "5.2.0";
+  };
+  listen = {
+    dependencies = ["rb-fsevent" "rb-inotify"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0agybr37wpjv3xy4ipcmsvsibgdgphzrwbvcj4vfiykpmakwm01v";
+      type = "gem";
+    };
+    version = "3.7.1";
+  };
+  mini_portile2 = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rapl1sfmfi3bfr68da4ca16yhc0pp93vjwkj7y3rdqrzy3b41hy";
+      type = "gem";
+    };
+    version = "2.8.0";
+  };
+  nokogiri = {
+    dependencies = ["mini_portile2" "racc"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1p6b3q411h2mw4dsvhjrp1hh66hha5cm69fqg85vn2lizz71n6xz";
+      type = "gem";
+    };
+    version = "1.13.3";
+  };
+  parser = {
+    dependencies = ["ast"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0zaghgvva2q4jqbachg8jvpwgbg3w1jqr0d00m8rqciqznjgsw3c";
+      type = "gem";
+    };
+    version = "3.1.1.0";
+  };
+  racc = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0la56m0z26j3mfn1a9lf2l03qx1xifanndf9p3vx1azf6sqy7v9d";
+      type = "gem";
+    };
+    version = "1.6.0";
+  };
+  rb-fsevent = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06c50pvxib7wqnv6q0f3n7gzfcrp5chi3sa48hxpkfxc3hhy11fm";
+      type = "gem";
+    };
+    version = "0.11.1";
+  };
+  rb-inotify = {
+    dependencies = ["ffi"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jm76h8f8hji38z3ggf4bzi8vps6p7sagxn3ab57qc0xyga64005";
+      type = "gem";
+    };
+    version = "0.10.1";
+  };
+  shopify-cli = {
+    dependencies = ["bugsnag" "listen" "theme-check"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0fjqahhvmvqvmpfwa337ran9hhn9wk0ylm502qvcy5i4xy5hvd2r";
+      type = "gem";
+    };
+    version = "2.14.0";
+  };
+  theme-check = {
+    dependencies = ["liquid" "nokogiri" "parser"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0314f49fg354wgqavvipfaf6a03090kqrgv48qvkb0ikhvqawpdr";
+      type = "gem";
+    };
+    version = "1.10.2";
+  };
+}
diff --git a/nixpkgs/pkgs/games/airshipper/default.nix b/nixpkgs/pkgs/games/airshipper/default.nix
index bc6f2a8dc71e..4fc37b0ca25c 100644
--- a/nixpkgs/pkgs/games/airshipper/default.nix
+++ b/nixpkgs/pkgs/games/airshipper/default.nix
@@ -1,7 +1,9 @@
 { lib
 , rustPlatform
 , fetchFromGitLab
+, fetchpatch
 , openssl
+, libGL
 , vulkan-loader
 , wayland
 , wayland-protocols
@@ -25,6 +27,14 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-nOE9ZNHxLEAnMkuBSpxmeq3DxkRIlcoase6AxU+eFug=";
   };
 
+  patches = [
+    # this *should* be merged in time for the release following 0.7.0
+    (fetchpatch {
+      url = "https://github.com/veloren/Airshipper/commit/97fc986ab4cbf59f2c764f647710f19db86031b4.patch";
+      hash = "sha256-Sg5et+yP6Z44wV/t9zqKLpg1C0cq6rV+3WrzAH4Za3U=";
+    })
+  ];
+
   cargoSha256 = "sha256-s3seKVEhXyOVlt3a8cubzRWoB4SVQpdCmq12y0FpDUw=";
 
   buildInputs = [
@@ -40,14 +50,14 @@ rustPlatform.buildRustPackage rec {
   nativeBuildInputs = [ pkg-config makeWrapper ];
 
   postInstall = ''
-    mkdir -p "$out/share/applications" && mkdir -p "$out/share/icons"
-    cp "client/assets/net.veloren.airshipper.desktop" "$out/share/applications"
-    cp "client/assets/logo.ico" "$out/share/icons/net.veloren.airshipper.ico"
+    install -Dm444 -t "$out/share/applications" "client/assets/net.veloren.airshipper.desktop"
+    install -Dm444    "client/assets/logo.ico"  "$out/share/icons/net.veloren.airshipper.ico"
   '';
 
   postFixup =
     let
       libPath = lib.makeLibraryPath [
+        libGL
         vulkan-loader
         wayland
         wayland-protocols
@@ -57,7 +67,8 @@ rustPlatform.buildRustPackage rec {
         libXi
         libXcursor
       ];
-    in ''
+    in
+    ''
       patchelf --set-rpath "${libPath}" "$out/bin/airshipper"
     '';
 
diff --git a/nixpkgs/pkgs/games/dwarf-fortress/themes/default.nix b/nixpkgs/pkgs/games/dwarf-fortress/themes/default.nix
index c6987a1d16bd..d2e2ec5fd19b 100644
--- a/nixpkgs/pkgs/games/dwarf-fortress/themes/default.nix
+++ b/nixpkgs/pkgs/games/dwarf-fortress/themes/default.nix
@@ -6,7 +6,7 @@ listToAttrs (map
   (v: {
     inherit (v) name;
     value = fetchFromGitHub {
-      name = "${v.name}-${v.version}";
+      name = "${v.name}-theme-${v.version}";
       owner = "DFgraphics";
       repo = v.name;
       rev = v.version;
diff --git a/nixpkgs/pkgs/games/flightgear/default.nix b/nixpkgs/pkgs/games/flightgear/default.nix
index af79a6d4b2b4..d46ee685607b 100644
--- a/nixpkgs/pkgs/games/flightgear/default.nix
+++ b/nixpkgs/pkgs/games/flightgear/default.nix
@@ -6,7 +6,7 @@
 }:
 
 let
-  version = "2020.3.11";
+  version = "2020.3.12";
   shortVersion = builtins.substring 0 6 version;
   data = stdenv.mkDerivation rec {
     pname = "flightgear-data";
@@ -14,7 +14,7 @@ let
 
     src = fetchurl {
       url = "mirror://sourceforge/flightgear/release-${shortVersion}/FlightGear-${version}-data.txz";
-      sha256 = "sha256-Ej8VGywPQiDw3VXodcpXpOw4qU9x+MBMWMrqwHfitVg=";
+      sha256 = "sha256-gCsW9e8IuXwmJfAfxJ/nORF5W/PwCka+O8Chwm26OnY=";
     };
 
     dontUnpack = true;
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://sourceforge/flightgear/release-${shortVersion}/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-/icGx3B+pzq8URR3PeRfKYYasPj1NWVq8EKO0EnKSpc=";
+    sha256 = "sha256-wPeZIAiGU0zPBkzeBCO1xEgm+iZd/hWvBEr2ZcsX0Qc=";
   };
 
   # Of all the files in the source and data archives, there doesn't seem to be
diff --git a/nixpkgs/pkgs/games/gcompris/default.nix b/nixpkgs/pkgs/games/gcompris/default.nix
index c4c737d228cc..5343bae4a6cb 100644
--- a/nixpkgs/pkgs/games/gcompris/default.nix
+++ b/nixpkgs/pkgs/games/gcompris/default.nix
@@ -18,11 +18,11 @@
 
 mkDerivation rec {
   pname = "gcompris";
-  version = "2.1";
+  version = "2.3";
 
   src = fetchurl {
-    url = "http://gcompris.net/download/qt/src/gcompris-qt-${version}.tar.xz";
-    sha256 = "sha256-ljOY/uybXzfwOFmhBXB4sC4Vn/C8BP1BeUUPpdHuQwo=";
+    url = "https://download.kde.org/stable/gcompris/qt/src/gcompris-qt-${version}.tar.xz";
+    sha256 = "sha256-UgWLp5IVqbeFFCO/PRFJ/X1sPm7nSkagVcgEp5SdzGI=";
   };
 
   cmakeFlags = [
@@ -32,15 +32,24 @@ mkDerivation rec {
   nativeBuildInputs = [ cmake gettext ninja qttools ];
 
   buildInputs = [
-    qmlbox2d qtbase qtdeclarative qtgraphicaleffects qtmultimedia qtquickcontrols qtsensors qtxmlpatterns
+    qmlbox2d
+    qtdeclarative
+    qtgraphicaleffects
+    qtmultimedia
+    qtquickcontrols
+    qtsensors
+    qtxmlpatterns
   ] ++ (with gst_all_1; [
-    gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad
+    gstreamer
+    gst-plugins-base
+    gst-plugins-good
+    gst-plugins-bad
   ]);
 
   postInstall = ''
-    install -Dm444 ../org.kde.gcompris.desktop        $out/share/applications/gcompris.desktop
-    install -Dm444 ../images/256-apps-gcompris-qt.png $out/share/icons/hicolor/256x256/apps/gcompris-qt.png
+    install -Dm444 ../org.kde.gcompris.desktop     -t $out/share/applications
     install -Dm444 ../org.kde.gcompris.appdata.xml -t $out/share/metainfo
+    install -Dm444 ../images/256-apps-gcompris-qt.png $out/share/icons/hicolor/256x256/apps/gcompris-qt.png
 
     qtWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0")
   '';
@@ -49,6 +58,7 @@ mkDerivation rec {
     description = "A high quality educational software suite, including a large number of activities for children aged 2 to 10";
     homepage = "https://gcompris.net/";
     license = licenses.gpl3Plus;
+    mainProgram = "gcompris-qt";
     maintainers = with maintainers; [ guibou ];
     platforms = platforms.linux;
   };
diff --git a/nixpkgs/pkgs/games/gnonograms/default.nix b/nixpkgs/pkgs/games/gnonograms/default.nix
index cfe1085ca27b..21f522d3418f 100644
--- a/nixpkgs/pkgs/games/gnonograms/default.nix
+++ b/nixpkgs/pkgs/games/gnonograms/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, fetchpatch
 , vala
 , meson
 , ninja
@@ -27,6 +28,15 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-2uXaybpCAm9cr0o7bqfhgD7mMNPwtv1X/PgnFnSDOl0=";
   };
 
+  patches = [
+    # Fix build with meson 0.61, can be removed on next release
+    # https://github.com/jeremypw/gnonograms/pull/45
+    (fetchpatch {
+      url = "https://github.com/jeremypw/gnonograms/commit/0e90d8ff42d64a94002ec8500889bc4d7e06c1b6.patch";
+      sha256 = "sha256-G/yqsZFmOA69A3E2CROMYAS5vmok/K5l1S/M2m8DMh4=";
+    })
+  ];
+
   postPatch = ''
     patchShebangs meson/post_install.py
   '';
diff --git a/nixpkgs/pkgs/games/katago/default.nix b/nixpkgs/pkgs/games/katago/default.nix
index abfeca69e82d..3265f3d63382 100644
--- a/nixpkgs/pkgs/games/katago/default.nix
+++ b/nixpkgs/pkgs/games/katago/default.nix
@@ -29,14 +29,14 @@ assert !enableGPU -> (
 # of gcc.  If you need to use cuda10, please override stdenv with gcc8Stdenv
 stdenv.mkDerivation rec {
   pname = "katago";
-  version = "1.10.0";
-  githash = "ff49d04ad6bcfa056c63492439a41e2f3bce0847";
+  version = "1.11.0";
+  githash = "d8d0cd76cf73df08af3d7061a639488ae9494419";
 
   src = fetchFromGitHub {
     owner = "lightvector";
     repo = "katago";
     rev = "v${version}";
-    sha256 = "sha256-ZLJNNjZ5RdOktWDp88d/ItpokANl2EJ0Gbt9oMGm1Og=";
+    sha256 = "sha256-TZKkkYe2PPzgPhItBZBSJDwU3anhsujuCGIYru55OtU=";
   };
 
   fakegit = writeShellScriptBin "git" "echo ${githash}";
diff --git a/nixpkgs/pkgs/games/lunar-client/default.nix b/nixpkgs/pkgs/games/lunar-client/default.nix
index fbebe85cf007..17df2565b866 100644
--- a/nixpkgs/pkgs/games/lunar-client/default.nix
+++ b/nixpkgs/pkgs/games/lunar-client/default.nix
@@ -2,13 +2,13 @@
 
 let
   name = "lunar-client";
-  version = "2.9.3";
+  version = "2.10.0";
 
   desktopItem = makeDesktopItem {
     name = "lunar-client";
     exec = "lunar-client";
     icon = "lunarclient";
-    comment = "Minecraft 1.7, 1.8, 1.12, 1.15, and 1.16 Client";
+    comment = "Minecraft 1.7, 1.8, 1.12, 1.15, 1.16, 1.17, and 1.18 Client";
     desktopName = "Lunar Client";
     genericName = "Minecraft Client";
     categories = [ "Game" ];
@@ -21,7 +21,7 @@ let
   src = fetchurl {
     url = "https://launcherupdates.lunarclientcdn.com/Lunar%20Client-${version}.AppImage";
     name = "lunar-client.AppImage";
-    sha256 = "sha256-2wlC+OAG2lvUB3yPxppNhhvNDZv4gxrNKpww9vAfStI=";
+    sha256 = "1kfi3rgy401ll3gn9k30j0a1zds1ghl5g2ibfwlsnr826nckfmzw";
   };
 in
 appimageTools.wrapType1 rec {
@@ -36,7 +36,7 @@ appimageTools.wrapType1 rec {
   extraPkgs = pkgs: [ pkgs.libpulseaudio ];
 
   meta = with lib; {
-    description = "Minecraft 1.7, 1.8, 1.12, 1.15, and 1.16 Client";
+    description = "Minecraft 1.7, 1.8, 1.12, 1.15, 1.16, 1.17, and 1.18 Client";
     homepage = "https://www.lunarclient.com/";
     license = with licenses; [ unfree ];
     maintainers = with maintainers; [ zyansheep Technical27 ];
diff --git a/nixpkgs/pkgs/games/openxcom/default.nix b/nixpkgs/pkgs/games/openxcom/default.nix
index 8c115e9b3120..b877c3aac2fd 100644
--- a/nixpkgs/pkgs/games/openxcom/default.nix
+++ b/nixpkgs/pkgs/games/openxcom/default.nix
@@ -18,7 +18,6 @@ stdenv.mkDerivation {
   meta = {
     description = "Open source clone of UFO: Enemy Unknown";
     homepage = "https://openxcom.org";
-    repositories.git = "https://github.com/SupSuper/OpenXcom.git";
     maintainers = [ lib.maintainers.cpages ];
     platforms = lib.platforms.linux;
     license = lib.licenses.gpl3;
diff --git a/nixpkgs/pkgs/games/polymc/default.nix b/nixpkgs/pkgs/games/polymc/default.nix
index 0d63a8ad5f91..0ec60d617f02 100644
--- a/nixpkgs/pkgs/games/polymc/default.nix
+++ b/nixpkgs/pkgs/games/polymc/default.nix
@@ -11,18 +11,20 @@
 , libpulseaudio
 , qtbase
 , libGL
+, glfw
+, openal
 , msaClientID ? ""
 }:
 
 mkDerivation rec {
   pname = "polymc";
-  version = "1.0.6";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "PolyMC";
     repo = "PolyMC";
     rev = version;
-    sha256 = "sha256-KgLWbZxtxTpuFdMOJNyADYw9rMWoLgczrbSrH4qv6NI=";
+    sha256 = "sha256-p5vbpNZI/JiQJclEo/Pu/46qVul+3DAzaoow8jabHrI=";
     fetchSubmodules = true;
   };
 
@@ -36,7 +38,7 @@ mkDerivation rec {
       --replace 'scanJavaDir("/usr/lib32/jvm")' 'javas.append("${jdk8}/lib/openjdk/bin/java")'
   '';
 
-  cmakeFlags = [ "-DLauncher_LAYOUT=lin-system" ] ++
+  cmakeFlags = [ "-DLauncher_PORTABLE=0" ] ++
                lib.optionals (msaClientID != "") [ "-DLauncher_MSA_CLIENT_ID=${msaClientID}" ];
 
   dontWrapQtApps = true;
@@ -50,6 +52,8 @@ mkDerivation rec {
       libXxf86vm
       libpulseaudio
       libGL
+      glfw
+      openal
     ];
   in ''
     # xorg.xrandr needed for LWJGL [2.9.2, 3) https://github.com/LWJGL/lwjgl/issues/128
@@ -68,6 +72,7 @@ mkDerivation rec {
       their associated options with a simple interface.
     '';
     platforms = platforms.linux;
+    changelog = "https://github.com/PolyMC/PolyMC/releases/tag/${version}";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ cleverca22 starcraft66 ];
   };
diff --git a/nixpkgs/pkgs/games/rare/default.nix b/nixpkgs/pkgs/games/rare/default.nix
new file mode 100644
index 000000000000..9bf3aca75422
--- /dev/null
+++ b/nixpkgs/pkgs/games/rare/default.nix
@@ -0,0 +1,64 @@
+{ lib, fetchPypi, buildPythonApplication, makeDesktopItem, copyDesktopItems, qt5
+, pillow, psutil, pypresence, pyqt5, python, qtawesome, requests }:
+
+buildPythonApplication rec {
+  pname = "rare";
+  version = "1.8.8";
+
+  src = fetchPypi {
+    inherit version;
+    pname = "Rare";
+    sha256 = "sha256-00CtvBqSrT9yJUHZ5529VrIQtCOYkHRc8+rJHmrTSpg=";
+  };
+
+  nativeBuildInputs = [
+    copyDesktopItems
+    qt5.wrapQtAppsHook
+  ];
+
+  propagatedBuildInputs = [
+    pillow
+    psutil
+    pypresence
+    pyqt5
+    qtawesome
+    requests
+  ];
+
+  desktopItems = [
+    (makeDesktopItem {
+      name = pname;
+      exec = "rare";
+      icon = "Rare";
+      comment = meta.description;
+      desktopName = "Rare";
+      genericName = "Rare (Epic Games Launcher Open Source Alternative)";
+    })
+  ];
+
+  dontWrapQtApps = true;
+
+  preBuild = ''
+    # Solves "PermissionError: [Errno 13] Permission denied: '/homeless-shelter'"
+    export HOME=$(mktemp -d)
+  '';
+
+  postInstall = ''
+    install -Dm644 $out/${python.sitePackages}/rare/resources/images/Rare.png -t $out/share/pixmaps/
+  '';
+
+  preFixup = ''
+    makeWrapperArgs+=("''${qtWrapperArgs[@]}")
+  '';
+
+  # Project has no tests
+  doCheck = false;
+
+  meta = with lib; {
+    description = "GUI for Legendary, an Epic Games Launcher open source alternative";
+    homepage = "https://github.com/Dummerle/Rare";
+    maintainers = with maintainers; [ wolfangaukang ];
+    license = licenses.gpl3Only;
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/games/spring/springlobby.nix b/nixpkgs/pkgs/games/spring/springlobby.nix
index bf603e2f5308..55c61c4cbd82 100644
--- a/nixpkgs/pkgs/games/spring/springlobby.nix
+++ b/nixpkgs/pkgs/games/spring/springlobby.nix
@@ -34,7 +34,6 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://springlobby.info/";
-    repositories.git = "git://github.com/springlobby/springlobby.git";
     description = "Cross-platform lobby client for the Spring RTS project";
     license = licenses.gpl2;
     maintainers = with maintainers; [ qknight domenkozar ];
diff --git a/nixpkgs/pkgs/games/steam/fhsenv.nix b/nixpkgs/pkgs/games/steam/fhsenv.nix
index 37ec8ef8c7e2..c5fba68b22a1 100644
--- a/nixpkgs/pkgs/games/steam/fhsenv.nix
+++ b/nixpkgs/pkgs/games/steam/fhsenv.nix
@@ -131,7 +131,6 @@ in buildFHSUserEnv rec {
     rtmpdump
 
     # dependencies for mesa drivers, needed inside pressure-vessel
-    mesa.drivers
     mesa.llvmPackages.llvm.lib
     vulkan-loader
     expat
@@ -229,9 +228,6 @@ in buildFHSUserEnv rec {
         export TZ="$new_TZ"
       fi
     fi
-
-    # XDG_DATA_DIRS is used by pressure-vessel and vulkan loaders to find the corresponding icd
-    export XDG_DATA_DIRS=$XDG_DATA_DIRS''${XDG_DATA_DIRS:+:}/run/opengl-driver/share:/run/opengl-driver-32/share
   '' + extraProfile;
 
   runScript = writeScript "steam-wrapper.sh" ''
diff --git a/nixpkgs/pkgs/games/warzone2100/default.nix b/nixpkgs/pkgs/games/warzone2100/default.nix
index e4a2ff4c31b3..a44f965b0e55 100644
--- a/nixpkgs/pkgs/games/warzone2100/default.nix
+++ b/nixpkgs/pkgs/games/warzone2100/default.nix
@@ -42,11 +42,11 @@ in
 
 stdenv.mkDerivation rec {
   inherit pname;
-  version  = "4.2.6";
+  version  = "4.2.7";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/releases/${version}/${pname}_src.tar.xz";
-    sha256 = "sha256-sdHc/i1ffbTAY7ehO6LsIa+ll+LHkuXIwcwTIEOY28g=";
+    sha256 = "sha256-f1J84A7aRAmbGn48MD7eJ2+DX21q2UWwYAoXXdq7ALA=";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/games/xtris/default.nix b/nixpkgs/pkgs/games/xtris/default.nix
index e6da0c6f17cc..2263a46187e9 100644
--- a/nixpkgs/pkgs/games/xtris/default.nix
+++ b/nixpkgs/pkgs/games/xtris/default.nix
@@ -18,10 +18,12 @@ stdenv.mkDerivation rec {
   '';
   buildInputs = [ xorg.libX11 ];
 
+  makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
+
   meta = with lib; {
     description = "A multi-player version of the classical game of Tetris, for the X Window system";
     homepage = "https://web.archive.org/web/20120315061213/http://www.iagora.com/~espel/xtris/xtris.html";
     license = licenses.gpl2;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/misc/autoadb/default.nix b/nixpkgs/pkgs/misc/autoadb/default.nix
new file mode 100644
index 000000000000..25043e9d45d6
--- /dev/null
+++ b/nixpkgs/pkgs/misc/autoadb/default.nix
@@ -0,0 +1,22 @@
+{ lib, rustPlatform, fetchFromGitHub }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "autoadb";
+  version = "unstable-2020-06-01";
+
+  src = fetchFromGitHub {
+    owner = "rom1v";
+    repo = pname;
+    rev = "7f8402983603a9854bf618a384f679a17cd85e2d";
+    sha256 = "sha256-9Sv38dCtvbqvxSnRpq+HsIwF/rfLUVZbi0J+mltLres=";
+  };
+
+  cargoSha256 = "1gzg1lhq8gp790mrc8fw8dg146k8lg20pnk45m2ssnmdka0826f7";
+
+  meta = with lib; {
+    description = "Execute a command whenever a device is adb-connected";
+    homepage = "https://github.com/rom1v/autoadb";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ shawn8901 ];
+  };
+}
diff --git a/nixpkgs/pkgs/misc/cups/drivers/mfcl2750dw/default.nix b/nixpkgs/pkgs/misc/cups/drivers/mfcl2750dw/default.nix
new file mode 100644
index 000000000000..f51a5e74666c
--- /dev/null
+++ b/nixpkgs/pkgs/misc/cups/drivers/mfcl2750dw/default.nix
@@ -0,0 +1,93 @@
+{ lib
+, stdenv
+, fetchurl
+, dpkg
+, autoPatchelfHook
+, makeWrapper
+, perl
+, gnused
+, ghostscript
+, file
+, coreutils
+, gnugrep
+, which
+}:
+
+let
+  arches = [ "x86_64" "i686" "armv7l" ];
+
+  runtimeDeps = [
+    ghostscript
+    file
+    gnused
+    gnugrep
+    coreutils
+    which
+  ];
+in
+
+stdenv.mkDerivation rec {
+  pname = "cups-brother-mfcl2750dw";
+  version = "4.0.0-1";
+
+  nativeBuildInputs = [ dpkg makeWrapper autoPatchelfHook ];
+  buildInputs = [ perl ];
+
+  dontUnpack = true;
+
+  src = fetchurl {
+    url = "https://download.brother.com/welcome/dlf103530/mfcl2750dwpdrv-${version}.i386.deb";
+    hash = "sha256-3uDwzLQTF8r1tsGZ7ChGhk4ryQmVsZYdUaj9eFaC0jc=";
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out
+    dpkg-deb -x $src $out
+
+    # delete unnecessary files for the current architecture
+  '' + lib.concatMapStrings (arch: ''
+    echo Deleting files for ${arch}
+    rm -r "$out/opt/brother/Printers/MFCL2750DW/lpd/${arch}"
+  '') (builtins.filter (arch: arch != stdenv.hostPlatform.linuxArch) arches) + ''
+
+      # bundled scripts don't understand the arch subdirectories for some reason
+      ln -s \
+        "$out/opt/brother/Printers/MFCL2750DW/lpd/${stdenv.hostPlatform.linuxArch}/"* \
+        "$out/opt/brother/Printers/MFCL2750DW/lpd/"
+
+      # Fix global references and replace auto discovery mechanism with hardcoded values
+      substituteInPlace $out/opt/brother/Printers/MFCL2750DW/lpd/lpdfilter \
+        --replace /opt "$out/opt" \
+        --replace "my \$BR_PRT_PATH =" "my \$BR_PRT_PATH = \"$out/opt/brother/Printers/MFCL2750DW\"; #" \
+        --replace "PRINTER =~" "PRINTER = \"MFCL2750DW\"; #"
+
+      # Make sure all executables have the necessary runtime dependencies available
+      find "$out" -executable -and -type f | while read file; do
+        wrapProgram "$file" --prefix PATH : "${lib.makeBinPath runtimeDeps}"
+      done
+
+      # Symlink filter and ppd into a location where CUPS will discover it
+      mkdir -p $out/lib/cups/filter
+      mkdir -p $out/share/cups/model
+
+      ln -s \
+        $out/opt/brother/Printers/MFCL2750DW/lpd/lpdfilter \
+        $out/lib/cups/filter/brother_lpdwrapper_MFCL2750DW
+
+      ln -s \
+        $out/opt/brother/Printers/MFCL2750DW/cupswrapper/brother-MFCL2750DW-cups-en.ppd \
+        $out/share/cups/model/
+
+      runHook postInstall
+    '';
+
+  meta = with lib; {
+    homepage = "http://www.brother.com/";
+    description = "Brother MFC-L2750DW printer driver";
+    license = licenses.unfree;
+    platforms = builtins.map (arch: "${arch}-linux") arches;
+    maintainers = [ maintainers.lovesegfault ];
+  };
+}
diff --git a/nixpkgs/pkgs/misc/drivers/logiops/default.nix b/nixpkgs/pkgs/misc/drivers/logiops/default.nix
new file mode 100644
index 000000000000..71283a406214
--- /dev/null
+++ b/nixpkgs/pkgs/misc/drivers/logiops/default.nix
@@ -0,0 +1,26 @@
+{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, udev, libevdev, libconfig }:
+
+stdenv.mkDerivation rec {
+  pname = "logiops";
+  version = "0.2.3";
+
+  src = fetchFromGitHub {
+    owner = "pixlone";
+    repo = "logiops";
+    rev = "v${version}";
+    sha256 = "sha256-1v728hbIM2ODtB+r6SYzItczRJCsbuTvhYD2OUM1+/E=";
+  };
+
+  PKG_CONFIG_SYSTEMD_SYSTEMDSYSTEMUNITDIR = "${placeholder "out"}/lib/systemd/system";
+
+  nativeBuildInputs = [ cmake pkg-config ];
+  buildInputs = [ udev libevdev libconfig ];
+
+  meta = with lib; {
+    description = "Unofficial userspace driver for HID++ Logitech devices";
+    homepage = "https://github.com/PixlOne/logiops";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ ckie ];
+    platforms = with platforms; linux;
+  };
+}
diff --git a/nixpkgs/pkgs/misc/dxvk/darwin-thread-primitives.patch b/nixpkgs/pkgs/misc/dxvk/darwin-thread-primitives.patch
new file mode 100644
index 000000000000..c008099407c5
--- /dev/null
+++ b/nixpkgs/pkgs/misc/dxvk/darwin-thread-primitives.patch
@@ -0,0 +1,186 @@
+diff --git a/src/util/thread.h b/src/util/thread.h
+index 28aeca8a..db5c9913 100644
+--- a/src/util/thread.h
++++ b/src/util/thread.h
+@@ -149,178 +149,8 @@ namespace dxvk {
+     }
+   }
+ 
+-
+-  /**
+-   * \brief SRW-based mutex implementation
+-   *
+-   * Drop-in replacement for \c std::mutex that uses Win32
+-   * SRW locks, which are implemented with \c futex in wine.
+-   */
+-  class mutex {
+-
+-  public:
+-
+-    using native_handle_type = PSRWLOCK;
+-
+-    mutex() { }
+-
+-    mutex(const mutex&) = delete;
+-    mutex& operator = (const mutex&) = delete;
+-
+-    void lock() {
+-      AcquireSRWLockExclusive(&m_lock);
+-    }
+-
+-    void unlock() {
+-      ReleaseSRWLockExclusive(&m_lock);
+-    }
+-
+-    bool try_lock() {
+-      return TryAcquireSRWLockExclusive(&m_lock);
+-    }
+-
+-    native_handle_type native_handle() {
+-      return &m_lock;
+-    }
+-
+-  private:
+-
+-    SRWLOCK m_lock = SRWLOCK_INIT;
+-
+-  };
+-
+-
+-  /**
+-   * \brief Recursive mutex implementation
+-   *
+-   * Drop-in replacement for \c std::recursive_mutex that
+-   * uses Win32 critical sections.
+-   */
+-  class recursive_mutex {
+-
+-  public:
+-
+-    using native_handle_type = PCRITICAL_SECTION;
+-
+-    recursive_mutex() {
+-      InitializeCriticalSection(&m_lock);
+-    }
+-
+-    ~recursive_mutex() {
+-      DeleteCriticalSection(&m_lock);
+-    }
+-
+-    recursive_mutex(const recursive_mutex&) = delete;
+-    recursive_mutex& operator = (const recursive_mutex&) = delete;
+-
+-    void lock() {
+-      EnterCriticalSection(&m_lock);
+-    }
+-
+-    void unlock() {
+-      LeaveCriticalSection(&m_lock);
+-    }
+-
+-    bool try_lock() {
+-      return TryEnterCriticalSection(&m_lock);
+-    }
+-
+-    native_handle_type native_handle() {
+-      return &m_lock;
+-    }
+-
+-  private:
+-
+-    CRITICAL_SECTION m_lock;
+-
+-  };
+-
+-
+-  /**
+-   * \brief SRW-based condition variable implementation
+-   *
+-   * Drop-in replacement for \c std::condition_variable that
+-   * uses Win32 condition variables on SRW locks.
+-   */
+-  class condition_variable {
+-
+-  public:
+-
+-    using native_handle_type = PCONDITION_VARIABLE;
+-
+-    condition_variable() {
+-      InitializeConditionVariable(&m_cond);
+-    }
+-
+-    condition_variable(condition_variable&) = delete;
+-
+-    condition_variable& operator = (condition_variable&) = delete;
+-
+-    void notify_one() {
+-      WakeConditionVariable(&m_cond);
+-    }
+-
+-    void notify_all() {
+-      WakeAllConditionVariable(&m_cond);
+-    }
+-
+-    void wait(std::unique_lock<dxvk::mutex>& lock) {
+-      auto srw = lock.mutex()->native_handle();
+-      SleepConditionVariableSRW(&m_cond, srw, INFINITE, 0);
+-    }
+-
+-    template<typename Predicate>
+-    void wait(std::unique_lock<dxvk::mutex>& lock, Predicate pred) {
+-      while (!pred())
+-        wait(lock);
+-    }
+-
+-    template<typename Clock, typename Duration>
+-    std::cv_status wait_until(std::unique_lock<dxvk::mutex>& lock, const std::chrono::time_point<Clock, Duration>& time) {
+-      auto now = Clock::now();
+-
+-      return (now < time)
+-        ? wait_for(lock, now - time)
+-        : std::cv_status::timeout;
+-    }
+-
+-    template<typename Clock, typename Duration, typename Predicate>
+-    bool wait_until(std::unique_lock<dxvk::mutex>& lock, const std::chrono::time_point<Clock, Duration>& time, Predicate pred) {
+-      if (pred())
+-        return true;
+-
+-      auto now = Clock::now();
+-      return now < time && wait_for(lock, now - time, pred);
+-    }
+-
+-    template<typename Rep, typename Period>
+-    std::cv_status wait_for(std::unique_lock<dxvk::mutex>& lock, const std::chrono::duration<Rep, Period>& timeout) {
+-      auto ms = std::chrono::duration_cast<std::chrono::milliseconds>(timeout);
+-      auto srw = lock.mutex()->native_handle();
+-
+-      return SleepConditionVariableSRW(&m_cond, srw, ms.count(), 0)
+-        ? std::cv_status::no_timeout
+-        : std::cv_status::timeout;
+-    }
+-
+-    template<typename Rep, typename Period, typename Predicate>
+-    bool wait_for(std::unique_lock<dxvk::mutex>& lock, const std::chrono::duration<Rep, Period>& timeout, Predicate pred) {
+-      bool result = pred();
+-
+-      if (!result && wait_for(lock, timeout) == std::cv_status::no_timeout)
+-        result = pred();
+-
+-      return result;
+-    }
+-
+-    native_handle_type native_handle() {
+-      return &m_cond;
+-    }
+-
+-  private:
+-
+-    CONDITION_VARIABLE m_cond;
+-
+-  };
++  using mutex = std::mutex;
++  using recursive_mutex = std::recursive_mutex;
++  using condition_variable = std::condition_variable;
+ 
+ }
diff --git a/nixpkgs/pkgs/misc/dxvk/default.nix b/nixpkgs/pkgs/misc/dxvk/default.nix
index 61e2d78b45c0..7c466b44ae6b 100644
--- a/nixpkgs/pkgs/misc/dxvk/default.nix
+++ b/nixpkgs/pkgs/misc/dxvk/default.nix
@@ -1,33 +1,52 @@
 { lib
 , pkgs
-, stdenv
+, hostPlatform
+, stdenvNoCC
 , fetchFromGitHub
 , pkgsCross
 }:
 
 let
+  inherit (hostPlatform.uname) system;
+
   # DXVK needs to be a separate derivation because it’s actually a set of DLLs for Windows that
   # needs to be built with a cross-compiler.
   dxvk32 = pkgsCross.mingw32.callPackage ./dxvk.nix { inherit (self) src version dxvkPatches; };
   dxvk64 = pkgsCross.mingwW64.callPackage ./dxvk.nix { inherit (self) src version dxvkPatches; };
 
+  # Split out by platform to make maintenance easy in case supported versions on Darwin and other
+  # platforms diverge (due to the need for Darwin-specific patches that would fail to apply).
+  # Should that happen, set `darwin` to the last working `rev` and `hash`.
+  srcs = rec {
+    darwin = { inherit (default) rev hash version; };
+    default = {
+      rev = "v${self.version}";
+      hash = "sha256-+6PkrkamSvhCaGj2tq+RXri/yQ7vs0cAqgdRAFtU8UA=";
+      version = "1.10.1";
+    };
+  };
+
   # Use the self pattern to support overriding `src` and `version` via `overrideAttrs`. A recursive
   # attrset wouldn’t work.
-  self = stdenv.mkDerivation {
+  self = stdenvNoCC.mkDerivation {
     name = "dxvk";
-    version = "1.10";
+    inherit (srcs."${system}" or srcs.default) version;
 
     src = fetchFromGitHub {
       owner = "doitsujin";
       repo = "dxvk";
-      rev = "v${self.version}";
-      hash = "sha256-/zH6vER/6s/d+Tt181UJOa97sqdkJyKGw6E36+1owzQ=";
+      inherit (srcs."${system}" or srcs.default) rev hash;
     };
 
-    # Patch DXVK to work with MoltenVK even though it doesn’t support some required features.
-    # Some games will work poorly (particularly Unreal Engine 4 games), but others work pretty well.
     # Override this to patch DXVK itself (rather than the setup script).
-    dxvkPatches = lib.optional stdenv.isDarwin ./darwin-dxvk-compat.patch;
+    dxvkPatches = lib.optionals stdenvNoCC.isDarwin [
+      # Patch DXVK to work with MoltenVK even though it doesn’t support some required features.
+      # Some games work poorly (particularly Unreal Engine 4 games), but others work pretty well.
+      ./darwin-dxvk-compat.patch
+      # Use synchronization primitives from the C++ standard library to avoid deadlocks on Darwin.
+      # See: https://www.reddit.com/r/macgaming/comments/t8liua/comment/hzsuce9/
+      ./darwin-thread-primitives.patch
+    ];
 
     outputs = [ "out" "bin" "lib" ];
 
@@ -53,6 +72,7 @@ let
 
     # DXVK with MoltenVK requires a patched MoltenVK in addition to its own patches. Provide a
     # convenience function to handle the necessary patching.
+    #
     # Usage:
     # let
     #   patchedMoltenVK = dxvk.patchMoltenVK darwin.moltenvk;
@@ -61,9 +81,10 @@ let
     passthru.patchMoltenVK = moltenvk:
       moltenvk.overrideAttrs (old: {
         patches = old.patches or [ ] ++ [
-          # Lie to DXVK about certain features that DXVK expects to be available and set defaults
-          # for better performance/compatability on certain hardware.
-          ./darwin-moltenvk-compat.patch
+          # Apply MoltenVK’s DXVK compatability patch. This is needed to fake support for certain
+          # extensions. There is no package for a patched MoltenVK to avoid any confusion by users
+          # whether they should use it. Except with DXVK, the answer is always no.
+          old.passthru.dxvkPatch
         ];
       });
 
diff --git a/nixpkgs/pkgs/misc/dxvk/dxvk.nix b/nixpkgs/pkgs/misc/dxvk/dxvk.nix
index 40b674df9225..2eb4f30df2bc 100644
--- a/nixpkgs/pkgs/misc/dxvk/dxvk.nix
+++ b/nixpkgs/pkgs/misc/dxvk/dxvk.nix
@@ -19,18 +19,6 @@ stdenv.mkDerivation {
 
   patches = dxvkPatches;
 
-  # Replace use of DXVK’s threading classes with the ones from the C++ standard library, which uses
-  # mcfgthreads in nixpkgs.
-  postPatch = ''
-    for class in mutex recursive_mutex condition_variable; do
-      for file in $(grep -rl dxvk::$class *); do
-        if [ "$(basename "$file")" != "thread.h" ]; then
-          substituteInPlace "$file" --replace dxvk::$class std::$class
-        fi
-      done
-    done
-  '';
-
   mesonFlags =
     let
       arch = if stdenv.is32bit then "32" else "64";
diff --git a/nixpkgs/pkgs/misc/logging/pacemaker/default.nix b/nixpkgs/pkgs/misc/logging/pacemaker/default.nix
new file mode 100644
index 000000000000..07194380d4a7
--- /dev/null
+++ b/nixpkgs/pkgs/misc/logging/pacemaker/default.nix
@@ -0,0 +1,102 @@
+{ lib
+, stdenv
+, autoconf
+, automake
+, bash
+, bzip2
+, corosync
+, dbus
+, fetchFromGitHub
+, glib
+, gnutls
+, libqb
+, libtool
+, libuuid
+, libxml2
+, libxslt
+, pam
+, pkg-config
+, python3
+, nixosTests
+
+# Pacemaker is compiled twice, once with forOCF = true to extract its
+# OCF definitions for use in the ocf-resource-agents derivation, then
+# again with forOCF = false, where the ocf-resource-agents is provided
+# as the OCF_ROOT.
+, forOCF ? false
+, ocf-resource-agents
+} :
+
+stdenv.mkDerivation rec {
+  pname = "pacemaker";
+  version = "2.1.2";
+
+  src = fetchFromGitHub {
+    owner = "ClusterLabs";
+    repo = pname;
+    rev = "Pacemaker-${version}";
+    sha256 = "1w7vq3lmgcz38pfww9vccm142vjsjqz3qc9nnk09ynkx4agqhxdg";
+  };
+
+  nativeBuildInputs = [
+    autoconf
+    automake
+    libtool
+    pkg-config
+  ];
+
+  buildInputs = [
+    bash
+    bzip2
+    corosync
+    dbus.dev
+    glib
+    gnutls
+    libqb
+    libuuid
+    libxml2.dev
+    libxslt.dev
+    pam
+    python3
+  ];
+
+  preConfigure = ''
+    ./autogen.sh --prefix="$out"
+  '';
+  configureFlags = [
+    "--exec-prefix=${placeholder "out"}"
+    "--sysconfdir=/etc"
+    "--localstatedir=/var"
+    "--with-initdir=/etc/systemd/system"
+    "--with-systemdsystemunitdir=/etc/systemd/system"
+    "--with-corosync"
+    # allows Type=notify in the systemd service
+    "--enable-systemd"
+  ] ++ lib.optional (!forOCF) "--with-ocfdir=${ocf-resource-agents}/usr/lib/ocf";
+
+  installFlags = [ "DESTDIR=${placeholder "out"}" ];
+
+  NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isGNU [
+    "-Wno-error=strict-prototypes"
+  ];
+
+  enableParallelBuilding = true;
+
+  postInstall = ''
+    # pacemaker's install linking requires a weirdly nested hierarchy
+    mv $out$out/* $out
+    rm -r $out/nix
+  '';
+
+  passthru.tests = {
+    inherit (nixosTests) pacemaker;
+  };
+
+  meta = with lib; {
+    homepage = "https://clusterlabs.org/pacemaker/";
+    description = "Pacemaker is an open source, high availability resource manager suitable for both small and large clusters.";
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ ryantm astro ];
+  };
+}
diff --git a/nixpkgs/pkgs/misc/screensavers/alock/default.nix b/nixpkgs/pkgs/misc/screensavers/alock/default.nix
index 5f0c5ad9e29e..87c81531122a 100644
--- a/nixpkgs/pkgs/misc/screensavers/alock/default.nix
+++ b/nixpkgs/pkgs/misc/screensavers/alock/default.nix
@@ -1,14 +1,15 @@
-{ lib, stdenv, fetchgit, pkg-config, autoreconfHook
+{ lib, stdenv, fetchFromGitHub, pkg-config, autoreconfHook
 , libX11, pam, libgcrypt, libXrender, imlib2 }:
 
 stdenv.mkDerivation rec {
   pname = "alock";
   version = "unstable-2017-07-20";
 
-  src = fetchgit {
-    url = "https://github.com/Arkq/alock";
+  src = fetchFromGitHub {
+    owner = "Arkq";
+    repo = "alock";
     rev = "2035e1d4a2293432f5503e82d10f899232eb0f38";
-    sha256 = "1by954fjn0ryqda89zlmq3gclakg3gz7zy1wjrbgw4lzsk538va6";
+    sha256 = "sha256-Rm00ytSfEv5Wljz4f/4bbyrK3sCV/oRUwz4DKx0pya8=";
   };
 
   PAM_DEFAULT_SERVICE = "login";
diff --git a/nixpkgs/pkgs/misc/screensavers/xtrlock-pam/default.nix b/nixpkgs/pkgs/misc/screensavers/xtrlock-pam/default.nix
index ffb9d0da8570..ac4c8197e554 100644
--- a/nixpkgs/pkgs/misc/screensavers/xtrlock-pam/default.nix
+++ b/nixpkgs/pkgs/misc/screensavers/xtrlock-pam/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, fetchgit, python2, pkg-config, xlibsWrapper, pam }:
+{ lib, stdenv, fetchFromGitHub, python2, pkg-config, xlibsWrapper, pam }:
 
 stdenv.mkDerivation {
   pname = "xtrlock-pam";
   version = "3.4-post-20150909";
 
-  src = fetchgit {
-    url = "https://github.com/aanatoly/xtrlock-pam";
+  src = fetchFromGitHub {
+    owner = "aanatoly";
+    repo = "xtrlock-pam";
     rev = "6f4920fcfff54791c0779057e9efacbbbbc05df6";
-    sha256 = "1z2wlhi5d05b18pvwz146kp0lkcc6z2mnilk01mk19hzbziyqmsc";
+    sha256 = "sha256-TFfs418fpjBrAJNGW8U3jE0K7jQkfL4vCquAViKkXPw=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/misc/sndio/default.nix b/nixpkgs/pkgs/misc/sndio/default.nix
index 474e59c590a5..786c3c3a40a4 100644
--- a/nixpkgs/pkgs/misc/sndio/default.nix
+++ b/nixpkgs/pkgs/misc/sndio/default.nix
@@ -12,6 +12,10 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
   buildInputs = lib.optional stdenv.hostPlatform.isLinux alsa-lib;
 
+  postInstall = ''
+    install -Dm644 contrib/sndiod.service $out/lib/systemd/system/sndiod.service
+  '';
+
   enableParallelBuilding = true;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/misc/t-rec/default.nix b/nixpkgs/pkgs/misc/t-rec/default.nix
index b9663cee5c33..922ae4c61bf2 100644
--- a/nixpkgs/pkgs/misc/t-rec/default.nix
+++ b/nixpkgs/pkgs/misc/t-rec/default.nix
@@ -9,13 +9,13 @@ let
 in
 rustPlatform.buildRustPackage rec {
   pname = "t-rec";
-  version = "0.6.0";
+  version = "0.7.3";
 
   src = fetchFromGitHub {
     owner = "sassman";
     repo = "t-rec-rs";
     rev = "v${version}";
-    sha256 = "InArrBqfhDrsonjmCIPTBVOA/s2vYml9Ay6cdrKLd7c=";
+    sha256 = "sha256-rVlNyvSeiQbauf8CREJDmb02wv6b/4IeOerRCRWVQVA=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -26,7 +26,7 @@ rustPlatform.buildRustPackage rec {
     wrapProgram "$out/bin/t-rec" --prefix PATH : "${binPath}"
   '';
 
-  cargoSha256 = "4gwfrC65YlXV6Wu2ninK1TvMNUkY1GstVYPr0FK+xLU=";
+  cargoSha256 = "sha256-pcdvEHxqU6ZJwcsbnQEd9M0waK7y4aluYEpLIlZoK/s=";
 
   meta = with lib; {
     description = "Blazingly fast terminal recorder that generates animated gif images for the web written in rust";
diff --git a/nixpkgs/pkgs/os-specific/darwin/m-cli/default.nix b/nixpkgs/pkgs/os-specific/darwin/m-cli/default.nix
index f19f5a0275bc..939ff36ef0ce 100644
--- a/nixpkgs/pkgs/os-specific/darwin/m-cli/default.nix
+++ b/nixpkgs/pkgs/os-specific/darwin/m-cli/default.nix
@@ -35,7 +35,6 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Swiss Army Knife for macOS";
     inherit (src.meta) homepage;
-    repositories.git = "git://github.com/rgcr/m-cli.git";
 
     license = licenses.mit;
 
diff --git a/nixpkgs/pkgs/os-specific/darwin/moltenvk/default.nix b/nixpkgs/pkgs/os-specific/darwin/moltenvk/default.nix
index ba8bc605e8b4..dc7f3f58fd3a 100644
--- a/nixpkgs/pkgs/os-specific/darwin/moltenvk/default.nix
+++ b/nixpkgs/pkgs/os-specific/darwin/moltenvk/default.nix
@@ -43,6 +43,10 @@ stdenvNoCC.mkDerivation rec {
   # MoltenVK requires specific versions of its dependencies.
   # Pin them here except for cereal, which is four years old and has several CVEs.
   passthru = {
+    # The patch required to support DXVK may different from version to version. This should never
+    # be used except with DXVK, so there’s no package for it. To emphasize that this patch should
+    # never be used except with DXVK, `dxvk` provides a function for applying this patch.
+    dxvkPatch = ./dxvk-moltenvk-compat.patch;
     glslang = (glslang.overrideAttrs (old: {
       src = fetchFromGitHub {
         owner = "KhronosGroup";
diff --git a/nixpkgs/pkgs/misc/dxvk/darwin-moltenvk-compat.patch b/nixpkgs/pkgs/os-specific/darwin/moltenvk/dxvk-moltenvk-compat.patch
index 7d16fdf70331..7d16fdf70331 100644
--- a/nixpkgs/pkgs/misc/dxvk/darwin-moltenvk-compat.patch
+++ b/nixpkgs/pkgs/os-specific/darwin/moltenvk/dxvk-moltenvk-compat.patch
diff --git a/nixpkgs/pkgs/os-specific/linux/audit/default.nix b/nixpkgs/pkgs/os-specific/linux/audit/default.nix
index de71b7d8c3e0..e9762f44dcdc 100644
--- a/nixpkgs/pkgs/os-specific/linux/audit/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/audit/default.nix
@@ -3,7 +3,10 @@
   runCommand,
   autoreconfHook,
   autoconf, automake, libtool,
-  enablePython ? true, python3, swig,
+  # Enabling python support while cross compiling would be possible, but
+  # the configure script tries executing python to gather info instead of
+  # relying on python3-config exclusively
+  enablePython ? stdenv.hostPlatform == stdenv.buildPlatform, python3, swig,
   linuxHeaders ? stdenv.cc.libc.linuxHeaders
 }:
 
diff --git a/nixpkgs/pkgs/os-specific/linux/bluez/default.nix b/nixpkgs/pkgs/os-specific/linux/bluez/default.nix
index fb75b99f03d9..ab9b7055fdda 100644
--- a/nixpkgs/pkgs/os-specific/linux/bluez/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/bluez/default.nix
@@ -135,6 +135,5 @@ in stdenv.mkDerivation rec {
     homepage = "http://www.bluez.org/";
     license = with licenses; [ gpl2 lgpl21 ];
     platforms = platforms.linux;
-    repositories.git = "https://git.kernel.org/pub/scm/bluetooth/bluez.git";
   };
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/disk-indicator/default.nix b/nixpkgs/pkgs/os-specific/linux/disk-indicator/default.nix
index 8a083b8b894d..44dd19b27dfb 100644
--- a/nixpkgs/pkgs/os-specific/linux/disk-indicator/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/disk-indicator/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, fetchgit, libX11 }:
+{ lib, stdenv, fetchFromGitHub, libX11 }:
 
 stdenv.mkDerivation {
   pname = "disk-indicator";
   version = "unstable-2014-05-19";
 
-  src = fetchgit {
-    url = "git://github.com/MeanEYE/Disk-Indicator.git";
+  src = fetchFromGitHub {
+    owner = "MeanEYE";
+    repo = "Disk-Indicator";
     rev = "51ef4afd8141b8d0659cbc7dc62189c56ae9c2da";
-    sha256 = "10jx6mx9qarn21p2l2jayxkn1gmqhvck1wymgsr4jmbwxl8ra5kd";
+    sha256 = "sha256-bRaVEe18VUmyftXzMNmGuL5gZ/dKCipuEDYrnHo1XYI=";
   };
 
   buildInputs = [ libX11 ];
diff --git a/nixpkgs/pkgs/os-specific/linux/displaylink/default.nix b/nixpkgs/pkgs/os-specific/linux/displaylink/default.nix
index f1e942a43993..e7e572ce18e1 100644
--- a/nixpkgs/pkgs/os-specific/linux/displaylink/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/displaylink/default.nix
@@ -20,22 +20,22 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "displaylink";
-  version = "5.5.0-beta-59.118";
+  version = "5.5.0-59.151";
 
   src = requireFile rec {
     name = "displaylink-55.zip";
-    sha256 = "0mid6p1mnkhbl96cr763ngdwrlgnpgs6c137rwc2sjf4v33g59ma";
+    sha256 = "0pswmczzrqqq0s0ksp6rfnkm693ligq4nblki1v53jdh0y7d1gff";
     message = ''
       In order to install the DisplayLink drivers, you must first
       comply with DisplayLink's EULA and download the binaries and
       sources from here:
 
-      https://www.synaptics.com/products/displaylink-graphics/downloads/ubuntu-5.5-Beta
+      https://www.synaptics.com/products/displaylink-graphics/downloads/ubuntu-5.5
 
       Once you have downloaded the file, please use the following
       commands and re-run the installation:
 
-      mv \$PWD/"DisplayLink USB Graphics Software for Ubuntu (Beta)5.5 Beta-EXE.zip" \$PWD/${name}
+      mv \$PWD/"DisplayLink USB Graphics Software for Ubuntu5.5-EXE.zip" \$PWD/${name}
       nix-prefetch-url file://\$PWD/${name}
     '';
   };
diff --git a/nixpkgs/pkgs/os-specific/linux/dmtcp/default.nix b/nixpkgs/pkgs/os-specific/linux/dmtcp/default.nix
index 50124a2bf452..6315d361ed68 100644
--- a/nixpkgs/pkgs/os-specific/linux/dmtcp/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/dmtcp/default.nix
@@ -1,16 +1,14 @@
-{ lib, stdenv, fetchFromGitHub, bash, perl, python2 }:
-
-# There are fixes for python3 compatibility on master
+{ lib, stdenv, fetchFromGitHub, bash, perl, python3 }:
 
 stdenv.mkDerivation rec {
   pname = "dmtcp";
-  version = "unstable-2021-03-01";
+  version = "unstable-2022-02-28";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
-    rev = "f999adbb8e88fe452a0e57ceb43b6eed7b4409f9";
-    sha256 = "sha256-codCHQui3fGfUZSNq8GuH4ad/GjD6I/S9rX83o8oFPc=";
+    rev = "133687764c6742906006a1d247e3b83cd860fa1d";
+    hash = "sha256-9Vr8IhoeATCfyt7Lp7kYe/7e87mFX9KMNGTqxJgIztE=";
   };
 
   dontDisableStatic = true;
@@ -30,7 +28,7 @@ stdenv.mkDerivation rec {
     substituteInPlace test/autotest.py \
       --replace /bin/bash ${bash}/bin/bash \
       --replace /usr/bin/perl ${perl}/bin/perl \
-      --replace /usr/bin/python ${python2}/bin/python \
+      --replace /usr/bin/python ${python3.interpreter} \
       --replace "os.environ['USER']" "\"nixbld1\"" \
       --replace "os.getenv('USER')" "\"nixbld1\""
   '';
diff --git a/nixpkgs/pkgs/os-specific/linux/earlyoom/default.nix b/nixpkgs/pkgs/os-specific/linux/earlyoom/default.nix
index 46e83609722a..ad7468bac0f5 100644
--- a/nixpkgs/pkgs/os-specific/linux/earlyoom/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/earlyoom/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, pandoc, installShellFiles, withManpage ? false }:
+{ lib, stdenv, fetchFromGitHub, pandoc, installShellFiles, withManpage ? false, nixosTests }:
 
 stdenv.mkDerivation rec {
   pname = "earlyoom";
@@ -23,6 +23,10 @@ stdenv.mkDerivation rec {
     installManPage earlyoom.1
   '';
 
+  passthru.tests = {
+    inherit (nixosTests) earlyoom;
+  };
+
   meta = with lib; {
     description = "Early OOM Daemon for Linux";
     homepage = "https://github.com/rfjakob/earlyoom";
diff --git a/nixpkgs/pkgs/os-specific/linux/firmware/rt5677/default.nix b/nixpkgs/pkgs/os-specific/linux/firmware/rt5677/default.nix
index f5d84179fd29..f21d34bbe533 100644
--- a/nixpkgs/pkgs/os-specific/linux/firmware/rt5677/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/firmware/rt5677/default.nix
@@ -1,15 +1,15 @@
-{ lib, stdenv, fetchgit }:
+{ lib, stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation {
   name = "rt5677-firmware";
 
-  src = fetchgit {
-    url = "https://github.com/raphael/linux-samus";
+  src = fetchFromGitHub {
+    owner = "raphael";
+    repo = "linux-samus";
     rev = "995de6c2093797905fbcd79f1a3625dd3f50be37";
-    sha256 = "0a6lz9wadm47cmva136q6wd0lw03bmymf9ispnzb091a7skwacry";
+    sha256 = "sha256-PjPFpz4qJLC+vTomV31dA3AKGjfYjKB2ZYfUpnj61Cg=";
   };
 
-
   installPhase = ''
     mkdir -p $out/lib/firmware
     cp ./firmware/rt5677_elf_vad $out/lib/firmware
diff --git a/nixpkgs/pkgs/os-specific/linux/hostapd/default.nix b/nixpkgs/pkgs/os-specific/linux/hostapd/default.nix
index 8124da489aee..3fdbaa9149a6 100644
--- a/nixpkgs/pkgs/os-specific/linux/hostapd/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/hostapd/default.nix
@@ -73,7 +73,6 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://hostap.epitest.fi";
-    repositories.git = "git://w1.fi/hostap.git";
     description = "A user space daemon for access point and authentication servers";
     license = licenses.gpl2;
     maintainers = with maintainers; [ ninjatrappeur hexa ];
diff --git a/nixpkgs/pkgs/os-specific/linux/i7z/default.nix b/nixpkgs/pkgs/os-specific/linux/i7z/default.nix
index 7de8046483d4..9af2aba3d806 100644
--- a/nixpkgs/pkgs/os-specific/linux/i7z/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/i7z/default.nix
@@ -49,7 +49,6 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A better i7 (and now i3, i5) reporting tool for Linux";
     homepage = "https://github.com/DimitryAndric/i7z";
-    repositories.git = "https://github.com/DimitryAndric/i7z.git";
     license = licenses.gpl2;
     maintainers = with maintainers; [ bluescreen303 ];
     # broken on ARM
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/common-config.nix b/nixpkgs/pkgs/os-specific/linux/kernel/common-config.nix
index 068aedf31213..153b41194b85 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/common-config.nix
@@ -60,16 +60,16 @@ let
     };
 
     power-management = {
-      PM_ADVANCED_DEBUG                = yes;
-      X86_INTEL_LPSS                   = yes;
-      X86_INTEL_PSTATE                 = yes;
-      INTEL_IDLE                       = yes;
       CPU_FREQ_DEFAULT_GOV_PERFORMANCE = yes;
       CPU_FREQ_GOV_SCHEDUTIL           = yes;
+      PM_ADVANCED_DEBUG                = yes;
       PM_WAKELOCKS                     = yes;
-      # Power-capping framework and support for INTEL RAPL
       POWERCAP                         = yes;
+    } // optionalAttrs (stdenv.hostPlatform.isx86) {
+      INTEL_IDLE                       = yes;
       INTEL_RAPL                       = whenAtLeast "5.3" module;
+      X86_INTEL_LPSS                   = yes;
+      X86_INTEL_PSTATE                 = yes;
     };
 
     external-firmware = {
@@ -269,8 +269,6 @@ let
       DRM_GMA600             = whenOlder "5.13" yes;
       DRM_GMA3600            = whenOlder "5.12" yes;
       DRM_VMWGFX_FBCON       = yes;
-      # necessary for amdgpu polaris support
-      DRM_AMD_POWERPLAY = whenBetween "4.5" "4.9" yes;
       # (experimental) amdgpu support for verde and newer chipsets
       DRM_AMDGPU_SI = yes;
       # (stable) amdgpu support for bonaire and newer chipsets
@@ -383,7 +381,7 @@ let
 
       EXT4_FS_POSIX_ACL = yes;
       EXT4_FS_SECURITY  = yes;
-      EXT4_ENCRYPTION   = { optional = true; tristate = if (versionOlder version "4.8") then "m" else "y"; };
+      EXT4_ENCRYPTION   = option yes;
 
       REISERFS_FS_XATTR     = option yes;
       REISERFS_FS_POSIX_ACL = option yes;
@@ -461,7 +459,7 @@ let
       # https://googleprojectzero.blogspot.com/2019/11/bad-binder-android-in-wild-exploit.html
       DEBUG_LIST                       = yes;
       # Detect writes to read-only module pages
-      DEBUG_SET_MODULE_RONX            = { optional = true; tristate = whenOlder "4.11" "y"; };
+      DEBUG_SET_MODULE_RONX            = whenOlder "4.11" (option yes);
       RANDOMIZE_BASE                   = option yes;
       STRICT_DEVMEM                    = mkDefault yes; # Filter access to /dev/mem
       IO_STRICT_DEVMEM                 = mkDefault yes;
@@ -479,6 +477,7 @@ let
       DEFAULT_SECURITY_APPARMOR        = yes;
 
       RANDOM_TRUST_CPU                 = whenAtLeast "4.19" yes; # allow RDRAND to seed the RNG
+      RANDOM_TRUST_BOOTLOADER          = whenAtLeast "5.4" yes; # allow the bootloader to seed the RNG
 
       MODULE_SIG            = no; # r13y, generates a random key during build and bakes it in
       # Depends on MODULE_SIG and only really helps when you sign your modules
@@ -547,7 +546,7 @@ let
       UPROBE_EVENT          = { optional = true; tristate = whenOlder "4.11" "y";};
       UPROBE_EVENTS         = { optional = true; tristate = whenAtLeast "4.11" "y";};
       BPF_SYSCALL           = yes;
-      BPF_UNPRIV_DEFAULT_OFF = whenBetween "5.10" "5.15" yes;
+      BPF_UNPRIV_DEFAULT_OFF = whenBetween "5.10" "5.16" yes;
       BPF_EVENTS            = yes;
       FUNCTION_PROFILER     = yes;
       RING_BUFFER_BENCHMARK = no;
@@ -560,8 +559,8 @@ let
       PARAVIRT_SPINLOCKS  = option yes;
 
       KVM_ASYNC_PF                      = yes;
-      KVM_COMPAT = { optional = true; tristate = whenBetween "4.0" "4.12" "y"; };
-      KVM_DEVICE_ASSIGNMENT  = { optional = true; tristate = whenBetween "3.10" "4.12" "y"; };
+      KVM_COMPAT                        = whenOlder "4.12" (option yes);
+      KVM_DEVICE_ASSIGNMENT             = whenOlder "4.12" (option yes);
       KVM_GENERIC_DIRTYLOG_READ_PROTECT = yes;
       KVM_GUEST                         = yes;
       KVM_MMIO                          = yes;
@@ -769,7 +768,6 @@ let
       AIC79XX_DEBUG_ENABLE = no;
       AIC7XXX_DEBUG_ENABLE = no;
       AIC94XX_DEBUG = no;
-      B43_PCMCIA = { optional=true; tristate = whenOlder "4.4" "y";};
 
       BLK_DEV_INTEGRITY       = yes;
 
@@ -790,7 +788,9 @@ let
       BT_RFCOMM_TTY   = option yes; # RFCOMM TTY support
       BT_QCA = module; # enables QCA6390 bluetooth
 
-      CLEANCACHE = option yes;
+      # Removed on 5.17 as it was unused
+      # upstream: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0a4ee518185e902758191d968600399f3bc2be31
+      CLEANCACHE = whenOlder "5.17" (option yes);
       CRASH_DUMP = option no;
 
       DVB_DYNAMIC_MINORS = option yes; # we use udev
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.14.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.14.nix
index e31d1035857c..0683e7d6ad4d 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.14.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.14.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "4.14.271";
+  version = "4.14.274";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1mzxcjzw6y7b3fffz0hbgsl6328w3m5yv5xb21z57kr9vm828y80";
+    sha256 = "1bbz1w5l7im7dspq6g6iy5vahsxcaa1b2ykrw49m3pw8rf7m6hib";
   };
 } // (args.argsOverride or {}))
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.19.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.19.nix
index 1ea6bedc0032..6121fccf15fa 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.19.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.19.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "4.19.234";
+  version = "4.19.237";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "12rd468wvmmdmgzy9vs2ny155yp9wxrf15lrslpc8xm4wimrd0h0";
+    sha256 = "1n0c4bmmbj145zsp662a5rxh294fpq4dkillpz16wj6c098z7zxs";
   };
 } // (args.argsOverride or {}))
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.9.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.9.nix
index df73833dc8e6..ad58c3ef6413 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,12 +1,12 @@
 { buildPackages, fetchurl, perl, buildLinux, nixosTests, stdenv, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.9.306";
+  version = "4.9.309";
   extraMeta.branch = "4.9";
   extraMeta.broken = stdenv.isAarch64;
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1cvsz3sf24g2623m7fxc6ilzsdmzi8s8lnks3sg68sax0qdx0ny7";
+    sha256 = "05468rk4hlz9ag1zb7shngn5rl42npw7haqbi5mpaa0yksl5asp8";
   };
 } // (args.argsOverride or {}))
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.10.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.10.nix
index 3b59a11e3c15..7b5c9cba1444 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.10.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.10.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.10.105";
+  version = "5.10.109";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "11fb9y6sqrf0hvak83ym7sbbacjl3q51w523vxjdpjmrn850xp1x";
+    sha256 = "1p0k46isy2wzzms801lrnb59f1nb9mhywjj7fnkrwrj9nbn25yqq";
   };
 } // (args.argsOverride or {}))
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.15.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.15.nix
index 76e624f89694..dab27c119aa5 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.15.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.15.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.15.28";
+  version = "5.15.32";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -15,6 +15,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "1rhhn2a7799nnvx8dj83glb0p0qakxanhxvvl7crznvip7rvp8nq";
+    sha256 = "11nz2w6hgwy6va6sxf4ic1s4kv24zbpssgjxsq6n321h4bxcsqql";
   };
 } // (args.argsOverride or { }))
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.16.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.16.nix
index 94b61a1ba934..4dcb71c4f5cd 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.16.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.16.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.16.14";
+  version = "5.16.18";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "1xkl0mfjby7w6r3fqyjds94h2lmc77nzp970w7wz1rfmb63ab2vs";
+    sha256 = "096f80m2czj8khvil7s037pqdf1s6pklqn5d9419jqkz7v70piry";
   };
 } // (args.argsOverride or { }))
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.17.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.17.nix
new file mode 100644
index 000000000000..edd5339e103d
--- /dev/null
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.17.nix
@@ -0,0 +1,18 @@
+{ lib, buildPackages, fetchurl, perl, buildLinux, nixosTests, modDirVersionArg ? null, ... } @ args:
+
+with lib;
+
+buildLinux (args // rec {
+  version = "5.17.1";
+
+  # modDirVersion needs to be x.y.z, will automatically add .0 if needed
+  modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
+
+  # branchVersion needs to be x.y
+  extraMeta.branch = versions.majorMinor version;
+
+  src = fetchurl {
+    url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
+    sha256 = "092cx18va108lb27kxx2b00ma3l9g22nmkk81034apx26bacbmbw";
+  };
+} // (args.argsOverride or { }))
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.4.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.4.nix
index ae2fecf96132..65c9f6c4b26d 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.4.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-5.4.nix
@@ -3,7 +3,7 @@
 with lib;
 
 buildLinux (args // rec {
-  version = "5.4.184";
+  version = "5.4.188";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "128laiqkr6z3pya8ws7r2ddrpbc3xyn80zwclz2wlrf6wqwwm546";
+    sha256 = "1g7xf2jx1hx580f42yirfgv9v0f9f88wzxxx0wiwx7wcqbyqpg4z";
   };
 } // (args.argsOverride or {}))
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-libre.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-libre.nix
index 288ba1b7214a..16bbbf614aa9 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-libre.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-libre.nix
@@ -1,8 +1,8 @@
 { stdenv, lib, fetchsvn, linux
 , scripts ? fetchsvn {
     url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/";
-    rev = "18627";
-    sha256 = "0qlalxpw2a24625ck5mxchpxl6i6cgmzkzfgyp9apmhdy8590fv5";
+    rev = "18664";
+    sha256 = "0yvgnqf355wr7wmfd0r8zydbr7icic06cp5hjp060vv0m9bf87xi";
   }
 , ...
 }:
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
index 50b3f18e9e21..cf0744bce681 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
@@ -6,7 +6,7 @@
 , ... } @ args:
 
 let
-  version = "5.10.104-rt63"; # updated by ./update-rt.sh
+  version = "5.10.106-rt64"; # updated by ./update-rt.sh
   branch = lib.versions.majorMinor version;
   kversion = builtins.elemAt (lib.splitString "-" version) 0;
 in buildLinux (args // {
@@ -18,14 +18,14 @@ in buildLinux (args // {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz";
-    sha256 = "1wb2ql58md45wi49bp3rck7ppgisyjdl7lxarzqd094fx9kr4jir";
+    sha256 = "0yjrlghcxw3lhd6nc2m4zy4gk536w3a3w6mxdsml690fqz4531n6";
   };
 
   kernelPatches = let rt-patch = {
     name = "rt";
     patch = fetchurl {
       url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
-      sha256 = "17ivd6dm49axc9k6cqf39wjjqrjqbj5xd3n7lqk7vv95rg9fg0g7";
+      sha256 = "0z5gyi1vyjyd05vyccmk9yfgvm5v1lc8vbfywahx495xzpp9i8xb";
     };
   }; in [ rt-patch ] ++ kernelPatches;
 
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
index 63d47dd8a384..e86f6fced569 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
@@ -1,9 +1,9 @@
 { lib
 , fetchpatch
 , kernel
-, date ? "2022-03-09"
-, commit ? "2280551cebc1735f74eef75d650dd5e175461657"
-, diffHash ? "1mrrydidbapdq0fs0vpqhs88k6ghdrvmjpk2zi7xlwj7j32h0nwp"
+, date ? "2022-03-21"
+, commit ? "c38b7167aa5f3b1b91dcc93ade57f30e95064590"
+, diffHash ? "04lgwnng7p2rlz9sxn74n22750kh524xwfws3agqs12pcrvfsm0j"
 , kernelPatches # must always be defined in bcachefs' all-packages.nix entry because it's also a top-level attribute supplied by callPackage
 , argsOverride ? {}
 , ...
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-zen.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-zen.nix
index d990d6d4ed1e..0e6cc394a549 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/linux-zen.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-zen.nix
@@ -2,13 +2,14 @@
 
 let
   # having the full version string here makes it easier to update
-  modDirVersion = "5.16.11-zen1";
+  modDirVersion = "5.17.0-zen1";
   parts = lib.splitString "-" modDirVersion;
   version = lib.elemAt parts 0;
   suffix = lib.elemAt parts 1;
 
   numbers = lib.splitString "." version;
   branch = "${lib.elemAt numbers 0}.${lib.elemAt numbers 1}";
+  rev = if ((lib.elemAt numbers 2) == "0") then "v${branch}-${suffix}" else "v${modDirVersion}";
 in
 
 buildLinux (args // {
@@ -18,8 +19,8 @@ buildLinux (args // {
   src = fetchFromGitHub {
     owner = "zen-kernel";
     repo = "zen-kernel";
-    rev = "v${modDirVersion}";
-    sha256 = "sha256-aCmHtWTOlFo9r6g0pcOXMzksAH3spcOqElE9hynFbFo=";
+    inherit rev;
+    sha256 = "sha256-8DCcO2oPnwXjjm3PW7vNZKbB3S7XsEB/svAMhbPRJIo=";
   };
 
   structuredExtraConfig = with lib.kernel; {
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/manual-config.nix b/nixpkgs/pkgs/os-specific/linux/kernel/manual-config.nix
index 1ac9cbe00ead..220f09ed8b50 100644
--- a/nixpkgs/pkgs/os-specific/linux/kernel/manual-config.nix
+++ b/nixpkgs/pkgs/os-specific/linux/kernel/manual-config.nix
@@ -301,7 +301,6 @@ let
             + ")");
         license = lib.licenses.gpl2Only;
         homepage = "https://www.kernel.org/";
-        repositories.git = "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git";
         maintainers = lib.teams.linux-kernel.members ++ [
           maintainers.thoughtpolice
         ];
diff --git a/nixpkgs/pkgs/os-specific/linux/ldm/default.nix b/nixpkgs/pkgs/os-specific/linux/ldm/default.nix
index 072b53b02ec2..f8a519de847e 100644
--- a/nixpkgs/pkgs/os-specific/linux/ldm/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/ldm/default.nix
@@ -4,7 +4,6 @@ assert mountPath != "";
 
 let
   version = "0.5";
-  git = "https://github.com/LemonBoy/ldm.git";
 in
 stdenv.mkDerivation rec {
   pname = "ldm";
@@ -13,7 +12,7 @@ stdenv.mkDerivation rec {
   # There is a stable release, but we'll use the lvm branch, which
   # contains important fixes for LVM setups.
   src = fetchgit {
-    url = meta.repositories.git;
+    url = "https://github.com/LemonBoy/ldm";
     rev = "refs/tags/v${version}";
     sha256 = "0lxfypnbamfx6p9ar5k9wra20gvwn665l4pp2j4vsx4yi5q7rw2n";
   };
@@ -36,8 +35,6 @@ stdenv.mkDerivation rec {
   meta = {
     description = "A lightweight device mounter, with libudev as only dependency";
     license = lib.licenses.mit;
-
     platforms = lib.platforms.linux;
-    repositories.git = git;
   };
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/lightum/default.nix b/nixpkgs/pkgs/os-specific/linux/lightum/default.nix
index 8da12d78bc93..95b766aec05b 100644
--- a/nixpkgs/pkgs/os-specific/linux/lightum/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/lightum/default.nix
@@ -1,12 +1,14 @@
-{ lib, stdenv, fetchgit, libX11, libXScrnSaver, libXext, glib, dbus, pkg-config, systemd }:
+{ lib, stdenv, fetchFromGitHub, libX11, libXScrnSaver, libXext, glib, dbus, pkg-config, systemd }:
 
 stdenv.mkDerivation {
   pname = "lightum";
   version = "unstable-2014-06-07";
-  src = fetchgit {
-    url = "https://github.com/poliva/lightum";
+
+  src = fetchFromGitHub {
+    owner = "poliva";
+    repo = "lightum";
     rev = "123e6babe0669b23d4c1dfa5511088608ff2baa8";
-    sha256 = "01x24rcrkgksyvqpgkr9zafg3jgs8nqng8yf0hx0kbmcimar8dbp";
+    sha256 = "sha256-dzWUVY2srgk6BM6jZ7FF+snxnPopz3fx9nq+mVkmogc=";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/os-specific/linux/lttng-modules/default.nix b/nixpkgs/pkgs/os-specific/linux/lttng-modules/default.nix
index 99ffb7756da0..706ee95fb70a 100644
--- a/nixpkgs/pkgs/os-specific/linux/lttng-modules/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/lttng-modules/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "lttng-modules-${kernel.version}";
-  version = "2.13.1";
+  version = "2.13.2";
 
   src = fetchurl {
     url = "https://lttng.org/files/lttng-modules/lttng-modules-${version}.tar.bz2";
-    sha256 = "0hzksx2fw008jdsgfzpws9g7imy6ryw09ai5y0knvrmvr68nvj57";
+    sha256 = "sha256-39VH2QQcjFRa5be/7z8O8tnyUg1qtEGIyeqN5W1dKYo=";
   };
 
   nativeBuildInputs = kernel.moduleBuildDependencies;
diff --git a/nixpkgs/pkgs/os-specific/linux/lvm2/common.nix b/nixpkgs/pkgs/os-specific/linux/lvm2/common.nix
index 0f2e6efe3a26..07e8c9cb02da 100644
--- a/nixpkgs/pkgs/os-specific/linux/lvm2/common.nix
+++ b/nixpkgs/pkgs/os-specific/linux/lvm2/common.nix
@@ -9,8 +9,8 @@
 , libaio
 , enableCmdlib ? false
 , enableDmeventd ? false
-, udevSupport ? !stdenv.targetPlatform.isStatic, udev ? null
-, onlyLib ? stdenv.targetPlatform.isStatic
+, udevSupport ? !stdenv.hostPlatform.isStatic, udev ? null
+, onlyLib ? stdenv.hostPlatform.isStatic
 , nixosTests
 }:
 
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
   ] ++ lib.optionals udevSupport [
     "--enable-udev_rules"
     "--enable-udev_sync"
-  ] ++ lib.optionals stdenv.targetPlatform.isStatic [
+  ] ++ lib.optionals stdenv.hostPlatform.isStatic [
     "--enable-static_link"
   ];
 
@@ -91,7 +91,7 @@ stdenv.mkDerivation rec {
       url = "https://git.alpinelinux.org/aports/plain/main/lvm2/mallinfo.patch?h=3.7-stable&id=31bd4a8c2dc00ae79a821f6fe0ad2f23e1534f50";
       sha256 = "0g6wlqi215i5s30bnbkn8w7axrs27y3bnygbpbnf64wwx7rxxlj0";
     })
-  ] ++ lib.optionals stdenv.targetPlatform.isStatic [
+  ] ++ lib.optionals stdenv.hostPlatform.isStatic [
     ./no-shared.diff
   ];
 
@@ -114,7 +114,7 @@ stdenv.mkDerivation rec {
   ];
 
   installPhase = lib.optionalString onlyLib ''
-    install -D -t $out/lib libdm/ioctl/libdevmapper.${if stdenv.targetPlatform.isStatic then "a" else "so"}
+    install -D -t $out/lib libdm/ioctl/libdevmapper.${if stdenv.hostPlatform.isStatic then "a" else "so"}
     make -C libdm install_include
     make -C libdm install_pkgconfig
   '';
diff --git a/nixpkgs/pkgs/os-specific/linux/nix-ld/default.nix b/nixpkgs/pkgs/os-specific/linux/nix-ld/default.nix
new file mode 100644
index 000000000000..dcab99cabfe4
--- /dev/null
+++ b/nixpkgs/pkgs/os-specific/linux/nix-ld/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, meson, ninja, lib, nixosTests, fetchFromGitHub }:
+let
+  self = stdenv.mkDerivation {
+    name = "nix-ld";
+    src = fetchFromGitHub {
+      owner = "Mic92";
+      repo = "nix-ld";
+      rev = "1.0.0";
+      sha256 = "sha256-QYPg8wPpq7q5Xd1jW17Lh36iKFSsVkN/gWYoQRv2XoU=";
+    };
+
+    doCheck = true;
+
+    nativeBuildInputs = [ meson ninja ];
+
+    mesonFlags = [
+      "-Dnix-system=${stdenv.system}"
+    ];
+
+    hardeningDisable = [
+      "stackprotector"
+    ];
+
+    postInstall = ''
+      mkdir -p $out/nix-support
+      basename $(< ${stdenv.cc}/nix-support/dynamic-linker) > $out/nix-support/ld-name
+    '';
+
+    passthru.tests.nix-ld = nixosTests.nix-ld;
+    passthru.ldPath = let
+      libDir = if stdenv.system == "x86_64-linux" ||
+                  stdenv.system == "mips64-linux" ||
+                  stdenv.system == "powerpc64le-linux"
+               then
+                 "/lib64"
+               else
+                 "/lib";
+      ldName = lib.fileContents "${self}/nix-support/ld-name";
+    in "${libDir}/${ldName}";
+
+    meta = with lib; {
+      description = "Run unpatched dynamic binaries on NixOS";
+      homepage = "https://github.com/Mic92/nix-ld";
+      license = licenses.mit;
+      maintainers = with maintainers; [ mic92 ];
+      platforms = platforms.linux;
+    };
+  };
+in self
diff --git a/nixpkgs/pkgs/os-specific/linux/nixos-rebuild/default.nix b/nixpkgs/pkgs/os-specific/linux/nixos-rebuild/default.nix
index 08bba5a428d1..34611d3f4009 100644
--- a/nixpkgs/pkgs/os-specific/linux/nixos-rebuild/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/nixos-rebuild/default.nix
@@ -5,6 +5,7 @@
 , gnugrep
 , nix
 , lib
+, nixosTests
 }:
 let
   fallback = import ./../../../../nixos/modules/installer/tools/nix-fallback-paths.nix;
@@ -19,4 +20,17 @@ substituteAll {
   nix_i686_linux = fallback.i686-linux;
   nix_aarch64_linux = fallback.aarch64-linux;
   path = lib.makeBinPath [ coreutils gnused gnugrep ];
+
+  # run some a simple installer tests to make sure nixos-rebuild still works for them
+  passthru.tests = {
+    simple-installer-test = nixosTests.installer.simple;
+  };
+
+  meta = {
+    description = "Rebuild your NixOS configuration and switch to it, on local hosts and remote.";
+    homepage = "https://github.com/NixOS/nixpkgs/tree/master/pkgs/os-specific/linux/nixos-rebuild";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.Profpatsch ];
+    mainProgram = "nixos-rebuild";
+  };
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh b/nixpkgs/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
index 5f950eb8b76b..795bedb99d4d 100755
--- a/nixpkgs/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
+++ b/nixpkgs/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
@@ -31,9 +31,16 @@ profile=/nix/var/nix/profiles/system
 buildHost=localhost
 targetHost=
 remoteSudo=
+verboseScript=
+noFlake=
 # comma separated list of vars to preserve when using sudo
 preservedSudoVars=NIXOS_INSTALL_BOOTLOADER
 
+# log the given argument to stderr
+log() {
+    echo "$@" >&2
+}
+
 while [ "$#" -gt 0 ]; do
     i="$1"; shift 1
     case "$i" in
@@ -45,7 +52,7 @@ while [ "$#" -gt 0 ]; do
         action="$i"
         ;;
       --install-grub)
-        echo "$0: --install-grub deprecated, use --install-bootloader instead" >&2
+        log "$0: --install-grub deprecated, use --install-bootloader instead"
         export NIXOS_INSTALL_BOOTLOADER=1
         ;;
       --install-bootloader)
@@ -64,14 +71,18 @@ while [ "$#" -gt 0 ]; do
         upgrade=1
         upgrade_all=1
         ;;
-      -s|--use-substitutes)
+      --use-substitutes|-s)
         copyClosureFlags+=("$i")
         ;;
-      --max-jobs|-j|--cores|-I|--builders)
+      -I|--max-jobs|-j|--cores|--builders)
         j="$1"; shift 1
         extraBuildFlags+=("$i" "$j")
         ;;
-      --show-trace|--keep-failed|-K|--keep-going|-k|--verbose|-v|-vv|-vvv|-vvvv|-vvvvv|--fallback|--repair|--no-build-output|-Q|-j*|-L|--print-build-logs|--refresh|--no-net|--offline|--impure)
+      -j*|--quiet|--print-build-logs|-L|--no-build-output|-Q| --show-trace|--keep-going|-k|--keep-failed|-K|--fallback|--refresh|--repair|--impure|--offline|--no-net)
+        extraBuildFlags+=("$i")
+        ;;
+      --verbose|-v|-vv|-vvv|-vvvv|-vvvvv)
+        verboseScript="true"
         extraBuildFlags+=("$i")
         ;;
       --option)
@@ -85,7 +96,7 @@ while [ "$#" -gt 0 ]; do
         ;;
       --profile-name|-p)
         if [ -z "$1" ]; then
-            echo "$0: ‘--profile-name’ requires an argument"
+            log "$0: ‘--profile-name’ requires an argument"
             exit 1
         fi
         if [ "$1" != system ]; then
@@ -110,6 +121,9 @@ while [ "$#" -gt 0 ]; do
         flakeFlags=(--extra-experimental-features 'nix-command flakes')
         shift 1
         ;;
+      --no-flake)
+        noFlake=1
+        ;;
       --recreate-lock-file|--no-update-lock-file|--no-write-lock-file|--no-registries|--commit-lock-file)
         lockFlags+=("$i")
         ;;
@@ -123,7 +137,7 @@ while [ "$#" -gt 0 ]; do
         lockFlags+=("$i" "$j" "$k")
         ;;
       *)
-        echo "$0: unknown option \`$i'"
+        log "$0: unknown option \`$i'"
         exit 1
         ;;
     esac
@@ -143,30 +157,45 @@ if [ "$buildHost" = localhost ]; then
     buildHost=
 fi
 
+# log the given argument to stderr if verbose mode is on
+logVerbose() {
+    if [ -n "$verboseScript" ]; then
+      echo "$@" >&2
+    fi
+}
+
+# Run a command, logging it first if verbose mode is on
+runCmd() {
+    logVerbose "$" "$@"
+    "$@"
+}
+
 buildHostCmd() {
     if [ -z "$buildHost" ]; then
-        "$@"
+        runCmd "$@"
     elif [ -n "$remoteNix" ]; then
-        ssh $SSHOPTS "$buildHost" "${maybeSudo[@]}" env PATH="$remoteNix":'$PATH' "$@"
+        runCmd ssh $SSHOPTS "$buildHost" "${maybeSudo[@]}" env PATH="$remoteNix":'$PATH' "$@"
     else
-        ssh $SSHOPTS "$buildHost" "${maybeSudo[@]}" "$@"
+        runCmd ssh $SSHOPTS "$buildHost" "${maybeSudo[@]}" "$@"
     fi
 }
 
 targetHostCmd() {
     if [ -z "$targetHost" ]; then
-        "${maybeSudo[@]}" "$@"
+        runCmd "${maybeSudo[@]}" "$@"
     else
-        ssh $SSHOPTS "$targetHost" "${maybeSudo[@]}" "$@"
+        runCmd ssh $SSHOPTS "$targetHost" "${maybeSudo[@]}" "$@"
     fi
 }
 
 copyToTarget() {
     if ! [ "$targetHost" = "$buildHost" ]; then
         if [ -z "$targetHost" ]; then
-            NIX_SSHOPTS=$SSHOPTS nix-copy-closure "${copyClosureFlags[@]}" --from "$buildHost" "$1"
+            logVerbose "Running nix-copy-closure with these NIX_SSHOPTS: $SSHOPTS"
+            NIX_SSHOPTS=$SSHOPTS runCmd nix-copy-closure "${copyClosureFlags[@]}" --from "$buildHost" "$1"
         elif [ -z "$buildHost" ]; then
-            NIX_SSHOPTS=$SSHOPTS nix-copy-closure "${copyClosureFlags[@]}" --to "$targetHost" "$1"
+            logVerbose "Running nix-copy-closure with these NIX_SSHOPTS: $SSHOPTS"
+            NIX_SSHOPTS=$SSHOPTS runCmd nix-copy-closure "${copyClosureFlags[@]}" --to "$targetHost" "$1"
         else
             buildHostCmd nix-copy-closure "${copyClosureFlags[@]}" --to "$targetHost" "$1"
         fi
@@ -174,9 +203,12 @@ copyToTarget() {
 }
 
 nixBuild() {
+    logVerbose "Building in legacy (non-flake) mode."
     if [ -z "$buildHost" ]; then
-        nix-build "$@"
+        logVerbose "No --build-host given, running nix-build locally"
+        runCmd nix-build "$@"
     else
+        logVerbose "buildHost set to \"$buildHost\", running nix-build remotely"
         local instArgs=()
         local buildArgs=()
         local drv=
@@ -206,24 +238,26 @@ nixBuild() {
             esac
         done
 
-        drv="$(nix-instantiate "${instArgs[@]}" "${extraBuildFlags[@]}")"
+        drv="$(runCmd nix-instantiate "${instArgs[@]}" "${extraBuildFlags[@]}")"
         if [ -a "$drv" ]; then
-            NIX_SSHOPTS=$SSHOPTS nix-copy-closure --to "$buildHost" "$drv"
+            logVerbose "Running nix-copy-closure with these NIX_SSHOPTS: $SSHOPTS"
+            NIX_SSHOPTS=$SSHOPTS runCmd nix-copy-closure --to "$buildHost" "$drv"
             buildHostCmd nix-store -r "$drv" "${buildArgs[@]}"
         else
-            echo "nix-instantiate failed"
+            log "nix-instantiate failed"
             exit 1
         fi
   fi
 }
 
 nixFlakeBuild() {
+    logVerbose "Building in flake mode."
     if [[ -z "$buildHost" && -z "$targetHost" && "$action" != switch && "$action" != boot ]]
     then
-        nix "${flakeFlags[@]}" build "$@"
+        runCmd nix "${flakeFlags[@]}" build "$@"
         readlink -f ./result
     elif [ -z "$buildHost" ]; then
-        nix "${flakeFlags[@]}" build "$@" --out-link "${tmpDir}/result"
+        runCmd nix "${flakeFlags[@]}" build "$@" --out-link "${tmpDir}/result"
         readlink -f "${tmpDir}/result"
     else
         local attr="$1"
@@ -255,12 +289,13 @@ nixFlakeBuild() {
             esac
         done
 
-        drv="$(nix "${flakeFlags[@]}" eval --raw "${attr}.drvPath" "${evalArgs[@]}" "${extraBuildFlags[@]}")"
+        drv="$(runCmd nix "${flakeFlags[@]}" eval --raw "${attr}.drvPath" "${evalArgs[@]}" "${extraBuildFlags[@]}")"
         if [ -a "$drv" ]; then
-            NIX_SSHOPTS=$SSHOPTS nix "${flakeFlags[@]}" copy --derivation --to "ssh://$buildHost" "$drv"
+            logVerbose "Running nix with these NIX_SSHOPTS: $SSHOPTS"
+            NIX_SSHOPTS=$SSHOPTS runCmd nix "${flakeFlags[@]}" copy --derivation --to "ssh://$buildHost" "$drv"
             buildHostCmd nix-store -r "$drv" "${buildArgs[@]}"
         else
-            echo "nix eval failed"
+            log "nix eval failed"
             exit 1
         fi
     fi
@@ -291,11 +326,11 @@ if [[ -n $upgrade && -z $_NIXOS_REBUILD_REEXEC && -z $flake ]]; then
         channel_name=$(basename "$channelpath")
 
         if [[ "$channel_name" == "nixos" ]]; then
-            nix-channel --update "$channel_name"
+            runCmd nix-channel --update "$channel_name"
         elif [ -e "$channelpath/.update-on-nixos-rebuild" ]; then
-            nix-channel --update "$channel_name"
+            runCmd nix-channel --update "$channel_name"
         elif [[ -n $upgrade_all ]] ; then
-            nix-channel --update "$channel_name"
+            runCmd nix-channel --update "$channel_name"
         fi
     done
 fi
@@ -313,20 +348,10 @@ fi
 
 # Use /etc/nixos/flake.nix if it exists. It can be a symlink to the
 # actual flake.
-if [[ -z $flake && -e /etc/nixos/flake.nix ]]; then
+if [[ -z $flake && -e /etc/nixos/flake.nix && -z $noFlake ]]; then
     flake="$(dirname "$(readlink -f /etc/nixos/flake.nix)")"
 fi
 
-# Re-execute nixos-rebuild from the Nixpkgs tree.
-# FIXME: get nixos-rebuild from $flake.
-if [[ -z $_NIXOS_REBUILD_REEXEC && -n $canRun && -z $fast && -z $flake ]]; then
-    if p=$(nix-build --no-out-link --expr 'with import <nixpkgs/nixos> {}; config.system.build.nixos-rebuild' "${extraBuildFlags[@]}"); then
-        export _NIXOS_REBUILD_REEXEC=1
-        exec "$p/bin/nixos-rebuild" "${origArgs[@]}"
-        exit 1
-    fi
-fi
-
 # For convenience, use the hostname as the default configuration to
 # build from the flake.
 if [[ -n $flake ]]; then
@@ -345,33 +370,56 @@ if [[ -n $flake ]]; then
     fi
 fi
 
+
+tmpDir=$(mktemp -t -d nixos-rebuild.XXXXXX)
+
+cleanup() {
+    for ctrl in "$tmpDir"/ssh-*; do
+        ssh -o ControlPath="$ctrl" -O exit dummyhost 2>/dev/null || true
+    done
+    rm -rf "$tmpDir"
+}
+trap cleanup EXIT
+
+
+# Re-execute nixos-rebuild from the Nixpkgs tree.
+if [[ -z $_NIXOS_REBUILD_REEXEC && -n $canRun && -z $fast ]]; then
+    if [[ -z $flake ]]; then
+        if p=$(runCmd nix-build --no-out-link --expr 'with import <nixpkgs/nixos> {}; config.system.build.nixos-rebuild' "${extraBuildFlags[@]}"); then
+            SHOULD_REEXEC=1
+        fi
+    else
+        runCmd nix "${flakeFlags[@]}" build --out-link "${tmpDir}/nixos-rebuild" "$flake#$flakeAttr.config.system.build.nixos-rebuild" "${extraBuildFlags[@]}" "${lockFlags[@]}"
+        if p=$(readlink -e "${tmpDir}/nixos-rebuild"); then
+            SHOULD_REEXEC=1
+        fi
+    fi
+
+    if [[ -n $SHOULD_REEXEC ]]; then
+        export _NIXOS_REBUILD_REEXEC=1
+        # Manually call cleanup as the EXIT trap is not triggered when using exec
+        cleanup
+        runCmd exec "$p/bin/nixos-rebuild" "${origArgs[@]}"
+        exit 1
+    fi
+fi
+
 # Find configuration.nix and open editor instead of building.
 if [ "$action" = edit ]; then
     if [[ -z $flake ]]; then
-        NIXOS_CONFIG=${NIXOS_CONFIG:-$(nix-instantiate --find-file nixos-config)}
+        NIXOS_CONFIG=${NIXOS_CONFIG:-$(runCmd nix-instantiate --find-file nixos-config)}
         if [[ -d $NIXOS_CONFIG ]]; then
             NIXOS_CONFIG=$NIXOS_CONFIG/default.nix
         fi
-        exec ${EDITOR:-nano} "$NIXOS_CONFIG"
+        runCmd exec ${EDITOR:-nano} "$NIXOS_CONFIG"
     else
-        exec nix "${flakeFlags[@]}" edit "${lockFlags[@]}" -- "$flake#$flakeAttr"
+        runCmd exec nix "${flakeFlags[@]}" edit "${lockFlags[@]}" -- "$flake#$flakeAttr"
     fi
     exit 1
 fi
 
-
-tmpDir=$(mktemp -t -d nixos-rebuild.XXXXXX)
 SSHOPTS="$NIX_SSHOPTS -o ControlMaster=auto -o ControlPath=$tmpDir/ssh-%n -o ControlPersist=60"
 
-cleanup() {
-    for ctrl in "$tmpDir"/ssh-*; do
-        ssh -o ControlPath="$ctrl" -O exit dummyhost 2>/dev/null || true
-    done
-    rm -rf "$tmpDir"
-}
-trap cleanup EXIT
-
-
 # First build Nix, since NixOS may require a newer version than the
 # current one.
 if [[ -n "$rollback" || "$action" = dry-build ]]; then
@@ -395,32 +443,32 @@ prebuiltNix() {
     elif [[ "$machine" = aarch64 ]]; then
         echo @nix_aarch64_linux@
     else
-        echo "$0: unsupported platform"
+        log "$0: unsupported platform"
         exit 1
     fi
 }
 
 if [[ -n $buildNix && -z $flake ]]; then
-    echo "building Nix..." >&2
+    log "building Nix..."
     nixDrv=
-    if ! nixDrv="$(nix-instantiate '<nixpkgs/nixos>' --add-root "$tmpDir/nix.drv" --indirect -A config.nix.package.out "${extraBuildFlags[@]}")"; then
-        if ! nixDrv="$(nix-instantiate '<nixpkgs>' --add-root "$tmpDir/nix.drv" --indirect -A nix "${extraBuildFlags[@]}")"; then
-            if ! nixStorePath="$(nix-instantiate --eval '<nixpkgs/nixos/modules/installer/tools/nix-fallback-paths.nix>' -A "$(nixSystem)" | sed -e 's/^"//' -e 's/"$//')"; then
+    if ! nixDrv="$(runCmd nix-instantiate '<nixpkgs/nixos>' --add-root "$tmpDir/nix.drv" --indirect -A config.nix.package.out "${extraBuildFlags[@]}")"; then
+        if ! nixDrv="$(runCmd nix-instantiate '<nixpkgs>' --add-root "$tmpDir/nix.drv" --indirect -A nix "${extraBuildFlags[@]}")"; then
+            if ! nixStorePath="$(runCmd nix-instantiate --eval '<nixpkgs/nixos/modules/installer/tools/nix-fallback-paths.nix>' -A "$(nixSystem)" | sed -e 's/^"//' -e 's/"$//')"; then
                 nixStorePath="$(prebuiltNix "$(uname -m)")"
             fi
-            if ! nix-store -r "$nixStorePath" --add-root "${tmpDir}/nix" --indirect \
+            if ! runCmd nix-store -r "$nixStorePath" --add-root "${tmpDir}/nix" --indirect \
                 --option extra-binary-caches https://cache.nixos.org/; then
-                echo "warning: don't know how to get latest Nix" >&2
+                log "warning: don't know how to get latest Nix"
             fi
             # Older version of nix-store -r don't support --add-root.
             [ -e "$tmpDir/nix" ] || ln -sf "$nixStorePath" "$tmpDir/nix"
             if [ -n "$buildHost" ]; then
-                remoteNixStorePath="$(prebuiltNix "$(buildHostCmd uname -m)")"
+                remoteNixStorePath="$(runCmd prebuiltNix "$(buildHostCmd uname -m)")"
                 remoteNix="$remoteNixStorePath/bin"
                 if ! buildHostCmd nix-store -r "$remoteNixStorePath" \
                   --option extra-binary-caches https://cache.nixos.org/ >/dev/null; then
                     remoteNix=
-                    echo "warning: don't know how to get latest Nix" >&2
+                    log "warning: don't know how to get latest Nix"
                 fi
             fi
         fi
@@ -442,8 +490,8 @@ fi
 # Update the version suffix if we're building from Git (so that
 # nixos-version shows something useful).
 if [[ -n $canRun && -z $flake ]]; then
-    if nixpkgs=$(nix-instantiate --find-file nixpkgs "${extraBuildFlags[@]}"); then
-        suffix=$($SHELL "$nixpkgs/nixos/modules/installer/tools/get-version-suffix" "${extraBuildFlags[@]}" || true)
+    if nixpkgs=$(runCmd nix-instantiate --find-file nixpkgs "${extraBuildFlags[@]}"); then
+        suffix=$(runCmd $SHELL "$nixpkgs/nixos/modules/installer/tools/get-version-suffix" "${extraBuildFlags[@]}" || true)
         if [ -n "$suffix" ]; then
             echo -n "$suffix" > "$nixpkgs/.version-suffix" || true
         fi
@@ -460,7 +508,7 @@ fi
 # or "boot"), or just build it and create a symlink "result" in the
 # current directory (for "build" and "test").
 if [ -z "$rollback" ]; then
-    echo "building the system configuration..." >&2
+    log "building the system configuration..."
     if [[ "$action" = switch || "$action" = boot ]]; then
         if [[ -z $flake ]]; then
             pathToConfig="$(nixBuild '<nixpkgs/nixos>' --no-out-link -A system "${extraBuildFlags[@]}")"
@@ -517,7 +565,7 @@ fi
 # default and/or activate it now.
 if [[ "$action" = switch || "$action" = boot || "$action" = test || "$action" = dry-activate ]]; then
     if ! targetHostCmd "$pathToConfig/bin/switch-to-configuration" "$action"; then
-        echo "warning: error(s) occurred while switching to the new configuration" >&2
+        log "warning: error(s) occurred while switching to the new configuration"
         exit 1
     fi
 fi
diff --git a/nixpkgs/pkgs/os-specific/linux/nvidia-x11/default.nix b/nixpkgs/pkgs/os-specific/linux/nvidia-x11/default.nix
index 145265017855..246295eb7340 100644
--- a/nixpkgs/pkgs/os-specific/linux/nvidia-x11/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/nvidia-x11/default.nix
@@ -19,10 +19,10 @@ rec {
   # Policy: use the highest stable version as the default (on our master).
   stable = if stdenv.hostPlatform.system == "x86_64-linux"
     then generic {
-      version = "510.54";
-      sha256_64bit = "TCDezK4/40et/Q5piaMG+QJP2t+DGtwejmCFVnUzUWE=";
-      settingsSha256 = "ZWz5UN6Pa69NlmerKu30G+X8WfGlAwnVerDrO7TRO6w=";
-      persistencedSha256 = "MgWrBjKXJeRqF+ouT72tTiLPtn+lsS/Cp3oS61AWV8Q=";
+      version = "510.60.02";
+      sha256_64bit = "sha256-qADfwFSQeP2Mbo5ngO+47uh4cuYFXH9fOGpHaM4H4AM=";
+      settingsSha256 = "sha256-Voa1JZ2qqJ1t+bfwKh/mssEi/hjzLTPwef2XG/gAC+0=";
+      persistencedSha256 = "sha256-THgK2GpRcttqSN2WxcuJu5My++Q+Y34jG8hm7daxhAQ=";
     }
     else legacy_390;
 
diff --git a/nixpkgs/pkgs/os-specific/linux/ocf-resource-agents/default.nix b/nixpkgs/pkgs/os-specific/linux/ocf-resource-agents/default.nix
index 9c9557c7be85..8d7f2b527144 100644
--- a/nixpkgs/pkgs/os-specific/linux/ocf-resource-agents/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/ocf-resource-agents/default.nix
@@ -1,3 +1,5 @@
+# This combines together OCF definitions from other derivations.
+# https://github.com/ClusterLabs/resource-agents/blob/master/doc/dev-guides/ra-dev-guide.asc
 { stdenv
 , lib
 , runCommand
@@ -8,12 +10,16 @@
 , python3
 , glib
 , drbd
+, pacemaker
 }:
 
 let
   drbdForOCF = drbd.override {
     forOCF = true;
   };
+  pacemakerForOCF = pacemaker.override {
+    forOCF = true;
+  };
 
   resource-agentsForOCF = stdenv.mkDerivation rec {
     pname = "resource-agents";
@@ -53,4 +59,5 @@ runCommand "ocf-resource-agents" {} ''
   mkdir -p $out/usr/lib/ocf
   ${lndir}/bin/lndir -silent "${resource-agentsForOCF}/lib/ocf/" $out/usr/lib/ocf
   ${lndir}/bin/lndir -silent "${drbdForOCF}/usr/lib/ocf/" $out/usr/lib/ocf
+  ${lndir}/bin/lndir -silent "${pacemakerForOCF}/usr/lib/ocf/" $out/usr/lib/ocf
 ''
diff --git a/nixpkgs/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix b/nixpkgs/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix
index 511dd162785f..1952d31b0247 100644
--- a/nixpkgs/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/oci-seccomp-bpf-hook/default.nix
@@ -10,12 +10,12 @@
 
 buildGoModule rec {
   pname = "oci-seccomp-bpf-hook";
-  version = "1.2.3";
+  version = "1.2.5";
   src = fetchFromGitHub {
     owner = "containers";
     repo = "oci-seccomp-bpf-hook";
     rev = "v${version}";
-    sha256 = "sha256-EKD6tkdQCPlVlb9ScvRwDxYAtbbv9PIqBHH6SvtPDsE=";
+    sha256 = "sha256-PU7WX5RAV6wWVRsqq6MdEjr00AtlTT4cSacRaxrEF2s=";
   };
   vendorSha256 = null;
 
diff --git a/nixpkgs/pkgs/os-specific/linux/pflask/default.nix b/nixpkgs/pkgs/os-specific/linux/pflask/default.nix
index ba525c1a387a..deb3e06ca49d 100644
--- a/nixpkgs/pkgs/os-specific/linux/pflask/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/pflask/default.nix
@@ -1,18 +1,22 @@
-{ lib, stdenv, fetchFromGitHub, python2, wafHook }:
+{ lib, stdenv, fetchFromGitHub, python3, wafHook }:
 
 stdenv.mkDerivation rec {
   pname = "pflask";
-  version = "unstable-2015-12-17";
+  version = "unstable-2018-01-23";
 
   src = fetchFromGitHub {
     owner = "ghedo";
-    repo = "pflask";
-    rev = "599418bb6453eaa0ccab493f9411f13726c1a636";
-    hash = "sha256-0RjitZd2JUK7WUEJuw4qhUx3joY5OI0Hh74mTzp7GmY=";
+    repo = pname;
+    rev = "9ac31ffe2ed29453218aac89ae992abbd6e7cc69";
+    hash = "sha256-bAKPUj/EipZ98kHbZiFZZI3hLVMoQpCrYKMmznpSDhg=";
   };
 
-  nativeBuildInputs = [ wafHook ];
-  buildInputs = [ python2 ];
+  nativeBuildInputs = [ python3 wafHook ];
+
+  postInstall = ''
+    mkdir -p $out/bin
+    cp build/pflask $out/bin
+  '';
 
   meta = {
     description = "Lightweight process containers for Linux";
diff --git a/nixpkgs/pkgs/os-specific/linux/projecteur/default.nix b/nixpkgs/pkgs/os-specific/linux/projecteur/default.nix
new file mode 100644
index 000000000000..63de7453935c
--- /dev/null
+++ b/nixpkgs/pkgs/os-specific/linux/projecteur/default.nix
@@ -0,0 +1,32 @@
+{ lib, mkDerivation, fetchFromGitHub,
+  cmake, pkg-config,
+  qtbase, qtgraphicaleffects, wrapQtAppsHook }:
+mkDerivation rec {
+  pname = "projecteur";
+  version = "0.9.2";
+
+  src = fetchFromGitHub {
+    owner = "jahnf";
+    repo = "Projecteur";
+    rev = "v${version}";
+    fetchSubmodules = false;
+    sha256 = "sha256-kg6oYtJ4H5A6RNATBg+XvMfCb9FlhEBFjfxamGosMQg=";
+  };
+
+  buildInputs = [ qtbase qtgraphicaleffects ];
+  nativeBuildInputs = [ wrapQtAppsHook cmake pkg-config ];
+
+  cmakeFlags = [
+    "-DCMAKE_INSTALL_PREFIX:PATH=${placeholder "out"}"
+    "-DPACKAGE_TARGETS=OFF"
+    "-DCMAKE_INSTALL_UDEVRULESDIR=${placeholder "out"}/lib/udev/rules.d"
+  ];
+
+  meta = with lib; {
+    description = "Linux/X11 application for the Logitech Spotlight device (and similar devices).";
+    homepage = "https://github.com/jahnf/Projecteur";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ benneti ];
+  };
+}
diff --git a/nixpkgs/pkgs/os-specific/linux/r8168/default.nix b/nixpkgs/pkgs/os-specific/linux/r8168/default.nix
index 680cc531af42..bcf5fb8956ab 100644
--- a/nixpkgs/pkgs/os-specific/linux/r8168/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/r8168/default.nix
@@ -10,7 +10,7 @@ in stdenv.mkDerivation rec {
 
   # This is a mirror. The original website[1] doesn't allow non-interactive
   # downloads, instead emailing you a download link.
-  # [1] http://www.realtek.com.tw/downloads/downloadsView.aspx?PFid=5&Level=5&Conn=4&DownTypeID=3
+  # [1] https://www.realtek.com/en/component/zoo/category/network-interface-controllers-10-100-1000m-gigabit-ethernet-pci-express-software
   # I've verified manually (`diff -r`) that the source code for version 8.046.00
   # is the same as the one available on the realtek website.
   src = fetchFromGitHub {
@@ -54,5 +54,6 @@ in stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ timokau ];
+    broken = kernel.kernelAtLeast "5.17";
   };
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/rtl8189es/default.nix b/nixpkgs/pkgs/os-specific/linux/rtl8189es/default.nix
index d6b5785210b0..c1032473db10 100644
--- a/nixpkgs/pkgs/os-specific/linux/rtl8189es/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/rtl8189es/default.nix
@@ -42,5 +42,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ danielfullmer lheckemann ];
+    broken = kernel.kernelAtLeast "5.17";
   };
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/rtl8192eu/default.nix b/nixpkgs/pkgs/os-specific/linux/rtl8192eu/default.nix
index 6fa15358582c..de4dd52e511c 100644
--- a/nixpkgs/pkgs/os-specific/linux/rtl8192eu/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/rtl8192eu/default.nix
@@ -6,13 +6,13 @@ let modDestDir = "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/net/wi
 
 in stdenv.mkDerivation rec {
   pname = "rtl8192eu";
-  version = "${kernel.version}-4.4.1.20211023";
+  version = "${kernel.version}-4.4.1.20220313";
 
   src = fetchFromGitHub {
     owner = "Mange";
     repo = "rtl8192eu-linux-driver";
-    rev = "744bbe52976e51895fce2c1d4075f97a98dca2b2";
-    sha256 = "1ayb3fljvpljwcgi47h8vj2d2w5imqyjxc7mvmfrvmilzg5d5cj7";
+    rev = "e0f967cea1d0037c730246c572f7fef000865ff7";
+    sha256 = "sha256-Wgp1MZ/z8AxbZPYsmR6t7Q4nsL0TFEqTEsrkkWPI6gI=";
   };
 
   hardeningDisable = [ "pic" ];
diff --git a/nixpkgs/pkgs/os-specific/linux/rtl8814au/default.nix b/nixpkgs/pkgs/os-specific/linux/rtl8814au/default.nix
index f12adf73d5f3..dce8733c0cca 100644
--- a/nixpkgs/pkgs/os-specific/linux/rtl8814au/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/rtl8814au/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "rtl8814au";
-  version = "${kernel.version}-unstable-2021-10-25";
+  version = "${kernel.version}-unstable-2022-02-21";
 
   src = fetchFromGitHub {
     owner = "morrownr";
     repo = "8814au";
-    rev = "d36c0874716b0776ac6c7dcd6110598ef0f6dd53";
-    sha256 = "0lk3ldff489ggbqmlfi4zvnp1cvxj1b06m0fhpzai82070klzzmj";
+    rev = "a538e3878c4b7b0b012f2d2fe7804390caaebd90";
+    sha256 = "sha256-xBGbcy/WonFrNflMlFCD/JQOFKhPrv0J3j2XcXWc6hk=";
   };
 
   nativeBuildInputs = kernel.moduleBuildDependencies;
diff --git a/nixpkgs/pkgs/os-specific/linux/rtl8821au/default.nix b/nixpkgs/pkgs/os-specific/linux/rtl8821au/default.nix
index 5800405f2839..dc693f01f572 100644
--- a/nixpkgs/pkgs/os-specific/linux/rtl8821au/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/rtl8821au/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rtl8821au";
-  version = "${kernel.version}-unstable-2021-11-05";
+  version = "${kernel.version}-unstable-2022-03-08";
 
   src = fetchFromGitHub {
     owner = "morrownr";
     repo = "8821au-20210708";
-    rev = "dd9f442d86535fb749ab06f38f97160484d9f04b";
-    sha256 = "0d90zd45b8934wxy51q1x39lx4n3i28zjm6jcq98wkm4lypgphxv";
+    rev = "2c0c6fef81c0c7dcf8fa06fc4ab72168abc4f7bb";
+    sha256 = "sha256-Hdzi3pGqH71O0Jenjd/myG4+rZDLC/CcWHkjDoXBxS0=";
   };
 
   nativeBuildInputs = [ bc nukeReferences ];
diff --git a/nixpkgs/pkgs/os-specific/linux/rtl8821ce/default.nix b/nixpkgs/pkgs/os-specific/linux/rtl8821ce/default.nix
index 27303c029802..039d4b3fb7bb 100644
--- a/nixpkgs/pkgs/os-specific/linux/rtl8821ce/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/rtl8821ce/default.nix
@@ -1,4 +1,10 @@
-{ lib, stdenv, fetchFromGitHub, kernel, bc }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, fetchpatch
+, kernel
+, bc
+}:
 
 stdenv.mkDerivation rec {
   pname = "rtl8821ce";
@@ -11,6 +17,12 @@ stdenv.mkDerivation rec {
     sha256 = "18ma8a8h1l90dss0k6al7q6plwr57jc9g67p22g9917k1jfbhm97";
   };
 
+  # Fixes the build on kernel >= 5.17. Can be removed once https://github.com/tomaspinho/rtl8821ce/pull/267 is merged
+  patches = [(fetchpatch {
+    url = "https://github.com/tomaspinho/rtl8821ce/commit/7b9e55df64b10fed785f22df9f36ed4a30b59d0e.patch";
+    sha256 = "sha256-mpAWOG1aXsklGuDbrRB9Vd36mgeCdctKQaWuuoqEEp0=";
+  })];
+
   hardeningDisable = [ "pic" ];
 
   nativeBuildInputs = [ bc ] ++ kernel.moduleBuildDependencies;
diff --git a/nixpkgs/pkgs/os-specific/linux/rtl8821cu/default.nix b/nixpkgs/pkgs/os-specific/linux/rtl8821cu/default.nix
index 0ea0682214bf..a3d767d2ee67 100644
--- a/nixpkgs/pkgs/os-specific/linux/rtl8821cu/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/rtl8821cu/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rtl8821cu";
-  version = "${kernel.version}-unstable-2021-10-21";
+  version = "${kernel.version}-unstable-2022-03-08";
 
   src = fetchFromGitHub {
     owner = "morrownr";
-    repo = "8821cu";
-    rev = "4e2d84c5e70245f850877f355e8bf293f252f61c";
-    sha256 = "1j32psvfgzfs5b1pdff6xk76iz7j8scakji6zm3vgqb2ssbxx1k1";
+    repo = "8821cu-20210118";
+    rev = "4bdd7c8668562e43564cd5d786055633e591ad4d";
+    sha256 = "sha256-dfvDpjsra/nHwIGywOkZICTEP/Ex7ooH4zzkXqAaDkI=";
   };
 
   hardeningDisable = [ "pic" ];
diff --git a/nixpkgs/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix b/nixpkgs/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix
index 1f27c262e673..f975cc2b420b 100644
--- a/nixpkgs/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub, kernel }:
 
 let
-  rev = "307d694076b056588c652c2bdaa543a89eb255d9";
+  rev = "37e27f9165300c89607144b646545fac576ec510";
 in
 stdenv.mkDerivation rec {
   pname = "rtl88xxau-aircrack";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     owner = "aircrack-ng";
     repo = "rtl8812au";
     inherit rev;
-    sha256 = "sha256-iSJnKWc+LxGHUhb/wbFSMh7w6Oi9v4v5V+R+LI96X7w=";
+    sha256 = "sha256-TpmpueKAaCe7Nlmv8pMvgMXGVmXVa/1mBwtEoy4JyCY=";
   };
 
   buildInputs = kernel.moduleBuildDependencies;
diff --git a/nixpkgs/pkgs/os-specific/linux/smem/default.nix b/nixpkgs/pkgs/os-specific/linux/smem/default.nix
index b2636382aec6..6308b83b600a 100644
--- a/nixpkgs/pkgs/os-specific/linux/smem/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/smem/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, python2 }:
+{ lib, stdenv, fetchurl, python3 }:
 
 stdenv.mkDerivation rec {
   pname = "smem";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "19ibv1byxf2b68186ysrgrhy5shkc5mc69abark1h18yigp3j34m";
   };
 
-  buildInputs = [ python2 ];
+  buildInputs = [ python3 ];
 
   makeFlags = [ "smemcap" ];
 
diff --git a/nixpkgs/pkgs/os-specific/linux/tuigreet/default.nix b/nixpkgs/pkgs/os-specific/linux/tuigreet/default.nix
index 581b89fb1c64..95de5b8c8d9c 100644
--- a/nixpkgs/pkgs/os-specific/linux/tuigreet/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/tuigreet/default.nix
@@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec {
   cargoSha256 = "sha256-H5xqk7Yd3M8sFGHlmhAS0fhh3eM4dkvkNQGVxRSXUJs=";
 
   meta = with lib; {
-    description = "Graphical console greter for greetd";
+    description = "Graphical console greeter for greetd";
     homepage = "https://github.com/apognu/tuigreet";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ luc65r ivar ];
diff --git a/nixpkgs/pkgs/os-specific/linux/udisks/2-default.nix b/nixpkgs/pkgs/os-specific/linux/udisks/2-default.nix
index fd321d90cb2a..427e19ac9215 100644
--- a/nixpkgs/pkgs/os-specific/linux/udisks/2-default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/udisks/2-default.nix
@@ -25,9 +25,11 @@ stdenv.mkDerivation rec {
       blkid = "${util-linux}/bin/blkid";
       false = "${coreutils}/bin/false";
       mdadm = "${mdadm}/bin/mdadm";
+      mkswap = "${util-linux}/bin/mkswap";
       sed = "${gnused}/bin/sed";
       sh = "${bash}/bin/sh";
       sleep = "${coreutils}/bin/sleep";
+      swapon = "${util-linux}/bin/swapon";
       true = "${coreutils}/bin/true";
     })
     (substituteAll {
@@ -77,7 +79,7 @@ stdenv.mkDerivation rec {
     description = "A daemon, tools and libraries to access and manipulate disks, storage devices and technologies";
     homepage = "https://www.freedesktop.org/wiki/Software/udisks/";
     license = with licenses; [ lgpl2Plus gpl2Plus ]; # lgpl2Plus for the library, gpl2Plus for the tools & daemon
-    maintainers = with maintainers; [ johnazoidberg ];
+    maintainers = teams.freedesktop.members ++ (with maintainers; [ johnazoidberg ]);
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/udisks/fix-paths.patch b/nixpkgs/pkgs/os-specific/linux/udisks/fix-paths.patch
index 215df565eccd..30bc08da8cfa 100644
--- a/nixpkgs/pkgs/os-specific/linux/udisks/fix-paths.patch
+++ b/nixpkgs/pkgs/os-specific/linux/udisks/fix-paths.patch
@@ -1,17 +1,5 @@
-diff --git a/Makefile.am b/Makefile.am
-index 56922b79..697f8c6e 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,6 +1,6 @@
- ## Process this file with automake to produce Makefile.in
- 
--SHELL = @BASH@
-+SHELL = @bash@
- .SHELLFLAGS = -o pipefail -c
- 
- PYTHON ?= python3
 diff --git a/data/80-udisks2.rules b/data/80-udisks2.rules
-index 39bfa28b..ee1ca90a 100644
+index ca802cce..bfd1c29e 100644
 --- a/data/80-udisks2.rules
 +++ b/data/80-udisks2.rules
 @@ -17,9 +17,9 @@ ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="?*", GOTO="udisks_probe_end"
@@ -66,9 +54,27 @@ index e7df4ed2..ab4356d9 100644
  # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  #
 diff --git a/src/tests/integration-test b/src/tests/integration-test
-index 4499a6a9..8b711f95 100755
+index 07e4e029..3bd8ec51 100755
 --- a/src/tests/integration-test
 +++ b/src/tests/integration-test
+@@ -299,7 +299,7 @@ class UDisksTestCase(unittest.TestCase):
+         if not device:
+             device = cls.devname(partition)
+         result = {}
+-        cmd = subprocess.Popen(['blkid', '-p', '-o', 'udev', device], stdout=subprocess.PIPE)
++        cmd = subprocess.Popen(['@blkid@', '-p', '-o', 'udev', device], stdout=subprocess.PIPE)
+         for l in cmd.stdout:
+             (key, value) = l.decode('UTF-8').split('=', 1)
+             result[key] = value.strip()
+@@ -437,7 +437,7 @@ class UDisksTestCase(unittest.TestCase):
+                 f.write('KERNEL=="sr*", ENV{DISK_EJECT_REQUEST}!="?*", '
+                         'ATTRS{model}=="scsi_debug*", '
+                         'ENV{ID_CDROM_MEDIA}=="?*", '
+-                        'IMPORT{program}="/sbin/blkid -o udev -p -u noraid $tempnode"\n')
++                        'IMPORT{program}="@blkid@ -o udev -p -u noraid $tempnode"\n')
+             # reload udev
+             subprocess.call('sync; pkill --signal HUP udevd || '
+                             'pkill --signal HUP systemd-udevd',
 @@ -1142,7 +1142,7 @@ class FS(UDisksTestCase):
          self.assertFalse(os.access(f, os.X_OK))
  
@@ -150,6 +156,3 @@ index 3ddbdf2c..a87f960a 100644
    udisks_spawned_job_start (job);
    g_object_unref (job);
  }
--- 
-2.33.1
-
diff --git a/nixpkgs/pkgs/os-specific/linux/upower/default.nix b/nixpkgs/pkgs/os-specific/linux/upower/default.nix
index 51ae7b002f9a..aff9125c236d 100644
--- a/nixpkgs/pkgs/os-specific/linux/upower/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/upower/default.nix
@@ -8,7 +8,7 @@
 , ninja
 , python3
 , gtk-doc
-, docbook_xsl
+, docbook-xsl-nons
 , udev
 , libgudev
 , libusb1
@@ -22,7 +22,7 @@
 
 stdenv.mkDerivation rec {
   pname = "upower";
-  version = "0.99.15";
+  version = "0.99.17";
 
   outputs = [ "out" "dev" "devdoc" ];
 
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     owner = "upower";
     repo = "upower";
     rev = "v${version}";
-    sha256 = "sha256-GlLy2MPip21KOabdW8Vw6NVe3xhzsd9htxQ2xO/hZ/4=";
+    sha256 = "xvvqzGxgkuGcvnO12jnLURNJUoSlnMw2g/mnII+i6Bs=";
   };
 
   nativeBuildInputs = [
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     ninja
     python3
     gtk-doc
-    docbook_xsl
+    docbook-xsl-nons
     gettext
     gobject-introspection
     libxslt
@@ -99,7 +99,9 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://upower.freedesktop.org/";
+    changelog = "https://gitlab.freedesktop.org/upower/upower/-/blob/v${version}/NEWS";
     description = "A D-Bus service for power management";
+    maintainers = teams.freedesktop.members;
     platforms = platforms.linux;
     license = licenses.gpl2Plus;
   };
diff --git a/nixpkgs/pkgs/os-specific/linux/usbguard/default.nix b/nixpkgs/pkgs/os-specific/linux/usbguard/default.nix
index de4517872fc4..35505af5a1ed 100644
--- a/nixpkgs/pkgs/os-specific/linux/usbguard/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/usbguard/default.nix
@@ -24,14 +24,14 @@
 assert libgcrypt != null -> libsodium == null;
 
 stdenv.mkDerivation rec {
-  version = "1.1.0";
+  version = "1.1.1";
   pname = "usbguard";
 
   src = fetchFromGitHub {
     owner = "USBGuard";
     repo = pname;
     rev = "usbguard-${version}";
-    sha256 = "sha256-lnHeU/X/2N81WPLakRYLs8TjpBhxBPhiXDJ+wNW0sU0=";
+    sha256 = "sha256-lAh+l9GF+FHQqv2kEYU5JienZKGwR5e45BYAwjieYgw=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/os-specific/linux/usermount/default.nix b/nixpkgs/pkgs/os-specific/linux/usermount/default.nix
index 87b38b9af6e4..934367dcd11b 100644
--- a/nixpkgs/pkgs/os-specific/linux/usermount/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/usermount/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, fetchgit, pkg-config, dbus, libnotify, udisks2, gdk-pixbuf }:
+{ lib, stdenv, fetchFromGitHub, pkg-config, dbus, libnotify, udisks2, gdk-pixbuf }:
 
 stdenv.mkDerivation {
   pname = "usermount";
   version = "0.1";
 
-  src = fetchgit {
-    url = "https://github.com/tom5760/usermount.git";
+  src = fetchFromGitHub {
+    owner = "tom5760";
+    repo = "usermount";
     rev = "0d6aba3c1f8fec80de502f5b92fd8b28041cc8e4";
-    sha256 = "0gpp0vwiwr7kgbhh26jspv3255662mnvnav6g8i2h0qxar8hf8w2";
+    sha256 = "sha256-giMHUVYdAygiemYru20VxpQixr5aGgHhevNkHvkG9z4=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/os-specific/linux/x86info/default.nix b/nixpkgs/pkgs/os-specific/linux/x86info/default.nix
index e842b59651e7..db5b040da3a2 100644
--- a/nixpkgs/pkgs/os-specific/linux/x86info/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/x86info/default.nix
@@ -1,32 +1,45 @@
-{lib, stdenv, fetchurl, pciutils, python2}:
+{ lib
+, stdenv
+, fetchFromGitHub
+, pciutils
+, pkg-config
+, python3
+}:
 
 stdenv.mkDerivation rec {
-  version = "1.30";
   pname = "x86info";
+  version = "unstable-2021-08-07";
 
-  src = fetchurl {
-    url = "http://codemonkey.org.uk/projects/x86info/${pname}-${version}.tgz";
-    sha256 = "0a4lzka46nabpsrg3n7akwr46q38f96zfszd73xcback1s2hjc7y";
+  src = fetchFromGitHub {
+    owner = "kernelslacker";
+    repo = pname;
+    rev = "061ea35ecb0697761b6260998fa2045b8bb0be68";
+    hash = "sha256-/qWioC4dV1bQkU4SiTR8duYqoGIMIH7s8vuAXi75juo=";
   };
 
-  preConfigure = ''
-    patchShebangs .
+  nativeBuildInputs = [
+    pkg-config
+    python3
+  ];
 
-    # ignore warnings
-    sed -i 's/-Werror -Wall//' Makefile
-  '';
+  buildInputs = [
+    pciutils
+  ];
 
-  buildInputs = [ pciutils python2 ];
+  postBuild = ''
+    patchShebangs lsmsr/createheader.py
+    make -C lsmsr
+  '';
 
   installPhase = ''
     mkdir -p $out/bin
-    cp x86info lsmsr $out/bin
+    cp x86info $out/bin
+    cp lsmsr/lsmsr $out/bin
   '';
 
   meta = {
     description = "Identification utility for the x86 series of processors";
-    longDescription =
-    ''
+    longDescription = ''
       x86info will identify all Intel/AMD/Centaur/Cyrix/VIA CPUs. It leverages
       the cpuid kernel module where possible.  it supports parsing model specific
       registers (MSRs) via the msr kernel module.  it will approximate processor
@@ -34,7 +47,7 @@ stdenv.mkDerivation rec {
     '';
     platforms = [ "i686-linux" "x86_64-linux" ];
     license = lib.licenses.gpl2;
-    homepage = "http://codemonkey.org.uk/projects/x86info/";
-    maintainers = with lib.maintainers; [jcumming];
+    homepage = "https://github.com/kernelslacker/x86info";
+    maintainers = with lib.maintainers; [ jcumming ];
   };
 }
diff --git a/nixpkgs/pkgs/os-specific/linux/zfs/default.nix b/nixpkgs/pkgs/os-specific/linux/zfs/default.nix
index b5260d47caa4..6747d511694b 100644
--- a/nixpkgs/pkgs/os-specific/linux/zfs/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/zfs/default.nix
@@ -16,7 +16,7 @@
 , enablePython ? true
 
 # for determining the latest compatible linuxPackages
-, linuxPackages_5_16 ? pkgs.linuxKernel.packages.linux_5_16
+, linuxPackages_5_17 ? pkgs.linuxKernel.packages.linux_5_17
 }:
 
 let
@@ -216,28 +216,28 @@ in {
   # to be adapted
   zfsStable = common {
     # check the release notes for compatible kernels
-    kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.17";
-    latestCompatibleLinuxPackages = linuxPackages_5_16;
+    kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.18";
+    latestCompatibleLinuxPackages = linuxPackages_5_17;
 
     # this package should point to the latest release.
-    version = "2.1.3";
+    version = "2.1.4";
 
-    sha256 = "10p9s835wj5msspqwnqbfbnh8jmcazzd2v0gj4hn7vvni4p48gfl";
+    sha256 = "sha256-pHz1N2j+d9p1xleEBwwrmK9mN5gEyM69Suy0dsrkZT4=";
   };
 
   zfsUnstable = common {
     # check the release notes for compatible kernels
-    kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.17";
-    latestCompatibleLinuxPackages = linuxPackages_5_16;
+    kernelCompatible = kernel.kernelAtLeast "3.10" && kernel.kernelOlder "5.18";
+    latestCompatibleLinuxPackages = linuxPackages_5_17;
 
     # this package should point to a version / git revision compatible with the latest kernel release
     # IMPORTANT: Always use a tagged release candidate or commits from the
     # zfs-<version>-staging branch, because this is tested by the OpenZFS
     # maintainers.
-    version = "2.1.3";
+    version = "2.1.4";
     # rev = "0000000000000000000000000000000000000000";
 
-    sha256 = "10p9s835wj5msspqwnqbfbnh8jmcazzd2v0gj4hn7vvni4p48gfl";
+    sha256 = "sha256-pHz1N2j+d9p1xleEBwwrmK9mN5gEyM69Suy0dsrkZT4=";
 
     isUnstable = true;
   };
diff --git a/nixpkgs/pkgs/servers/amqp/qpid-cpp/default.nix b/nixpkgs/pkgs/servers/amqp/qpid-cpp/default.nix
index 434aeeb3a198..c6d66427ab20 100644
--- a/nixpkgs/pkgs/servers/amqp/qpid-cpp/default.nix
+++ b/nixpkgs/pkgs/servers/amqp/qpid-cpp/default.nix
@@ -12,8 +12,6 @@ let
 
   meta = with lib; {
     homepage = "https://qpid.apache.org";
-    repositories.git = "git://git.apache.org/qpid.git";
-    repositories.svn = "http://svn.apache.org/repos/asf/qpid";
     description = "An AMQP message broker and a C++ messaging API";
     license = licenses.asl20;
     platforms = platforms.linux;
diff --git a/nixpkgs/pkgs/servers/amqp/rabbitmq-server/default.nix b/nixpkgs/pkgs/servers/amqp/rabbitmq-server/default.nix
index 7203ac704c70..37e6f1fd2430 100644
--- a/nixpkgs/pkgs/servers/amqp/rabbitmq-server/default.nix
+++ b/nixpkgs/pkgs/servers/amqp/rabbitmq-server/default.nix
@@ -27,12 +27,12 @@
 
 stdenv.mkDerivation rec {
   pname = "rabbitmq-server";
-  version = "3.9.13";
+  version = "3.9.14";
 
   # when updating, consider bumping elixir version in all-packages.nix
   src = fetchurl {
     url = "https://github.com/rabbitmq/rabbitmq-server/releases/download/v${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-DndZ74m+CFyrukxKyOpfoRCb86RID2XL7x0eUZifcno=";
+    sha256 = "sha256-c6GpB6CSCHiU9hTC9FkxyTc1UpNWxx5iP3y2dbTUfS0=";
   };
 
   nativeBuildInputs = [ unzip xmlto docbook_xml_dtd_45 docbook_xsl zip rsync ];
diff --git a/nixpkgs/pkgs/servers/atlassian/bamboo.nix b/nixpkgs/pkgs/servers/atlassian/bamboo.nix
new file mode 100644
index 000000000000..a60d41d41c1f
--- /dev/null
+++ b/nixpkgs/pkgs/servers/atlassian/bamboo.nix
@@ -0,0 +1,37 @@
+{ stdenvNoCC, lib, fetchurl, mysql_jdbc
+, withMysql ? true
+}:
+
+
+stdenvNoCC.mkDerivation rec {
+  pname = "atlassian-bamboo";
+  version = "8.1.3";
+
+  src = fetchurl {
+    url = "https://product-downloads.atlassian.com/software/bamboo/downloads/atlassian-bamboo-${version}.tar.gz";
+    sha256 = "sha256-M406audmwCS4SRPj8oYxZ+tBpt9bGoOsA3+9WwdZ1fw=";
+  };
+
+  buildPhase = ''
+    echo "bamboo.home=/run/bamboo/home" > atlassian-bamboo/WEB-INF/classes/bamboo-init.properties
+    mv conf/server.xml conf/server.xml.dist
+    ln -sf /run/atlassian-bamboo/server.xml conf/server.xml
+    rm -r logs; ln -sf /run/atlassian-bamboo/logs/ .
+    rm -r temp; ln -sf /run/atlassian-bamboo/temp/ .
+    rm -r work; ln -sf /run/atlassian-bamboo/work/ .
+  '' + lib.optionalString withMysql ''
+    cp -v ${mysql_jdbc}/share/java/*jar atlassian-bamboo/lib/
+  '';
+
+  installPhase = ''
+    cp -rva . $out
+    patchShebangs $out/bin
+  '';
+
+  meta = with lib; {
+    description = "Bamboo Data Center is a continuous delivery server.";
+    homepage = "https://www.atlassian.com/software/bamboo";
+    license = with licenses; [ unfree ];
+    maintainers = with maintainers; [ techknowlogick ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/atlassian/jira.nix b/nixpkgs/pkgs/servers/atlassian/jira.nix
index 014fbedf6434..7880c529c733 100644
--- a/nixpkgs/pkgs/servers/atlassian/jira.nix
+++ b/nixpkgs/pkgs/servers/atlassian/jira.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "atlassian-jira";
-  version = "8.21.0";
+  version = "8.22.0";
 
   src = fetchurl {
     url = "https://product-downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-${version}.tar.gz";
-    sha256 = "sha256-AJWEm6JBHINca9l0R6dILLMkPGzFVuVjOqD/4AaO5nI=";
+    sha256 = "sha256-swEq8g/A1Ok1P7JtceUDId7kG0GRtBPGblY09xt81Ys=";
   };
 
   buildPhase = ''
diff --git a/nixpkgs/pkgs/servers/brickd/default.nix b/nixpkgs/pkgs/servers/brickd/default.nix
index b29f9ca9e8e0..3977521a6f52 100644
--- a/nixpkgs/pkgs/servers/brickd/default.nix
+++ b/nixpkgs/pkgs/servers/brickd/default.nix
@@ -1,24 +1,24 @@
-{ lib, stdenv, fetchgit, libusb1, pkg-config, pmutils, udev} :
+{ lib, stdenv, fetchFromGitHub, libusb1, pkg-config, pmutils, udev} :
 
 let
-
-version = "2.1.1";
-daemonlib = fetchgit {
-    url = "https://github.com/Tinkerforge/daemonlib.git";
-    rev = "refs/tags/brickd-${version}";
-    sha256 = "097kaz7d0rzg0ijvcna3y620k3m5fgxpqsac5gbhah8pd7vlj1a4";
+  version = "2.1.1";
+  daemonlib = fetchFromGitHub {
+    owner = "Tinkerforge";
+    repo = "daemonlib";
+    rev = "brickd-${version}";
+    sha256 = "sha256-0HhuC4r1S4NJa2FSJa7+fNCfcoRTBckikYbGSE+2FbE=";
   };
-
 in
 
 stdenv.mkDerivation {
   pname = "brickd";
   inherit version;
 
-  src = fetchgit {
-    url = "git://github.com/Tinkerforge/brickd.git";
-    rev = "refs/tags/v${version}";
-    sha256 = "0m2q01sbgf8z4559jpr6k3jivb8x98vxv1fhgx8nfcjbwz1q83gb";
+  src = fetchFromGitHub {
+    owner = "Tinkerforge";
+    repo = "brickd";
+    rev = "v${version}";
+    sha256 = "sha256-6w2Ew+dLMmdRf9CF3TdKHa0d5ZgmX5lKIR+5t3QAWFQ=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/servers/clickhouse/default.nix b/nixpkgs/pkgs/servers/clickhouse/default.nix
index be067e477a83..793ee917966c 100644
--- a/nixpkgs/pkgs/servers/clickhouse/default.nix
+++ b/nixpkgs/pkgs/servers/clickhouse/default.nix
@@ -8,7 +8,7 @@
 
 stdenv.mkDerivation rec {
   pname = "clickhouse";
-  version = "21.8.12.29";
+  version = "22.3.2.2";
 
   broken = stdenv.buildPlatform.is32bit; # not supposed to work on 32-bit https://github.com/ClickHouse/ClickHouse/pull/23959#issuecomment-835343685
 
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     repo   = "ClickHouse";
     rev    = "v${version}-lts";
     fetchSubmodules = true;
-    sha256 = "1qqacb7v7mhr9k162yll8mcbh0cxa347f5hypz0a8l54v1dz5fyl";
+    sha256 = "0rhzgm0gvwpx4h5xyr7y393y7s9slcr4a7grw9316f5m70frxg2v";
   };
 
   nativeBuildInputs = [ cmake libtool llvm-bintools ninja ];
@@ -37,8 +37,6 @@ stdenv.mkDerivation rec {
       --replace 'git rev-parse --show-toplevel' '$src'
     substituteInPlace utils/check-style/check-ungrouped-includes.sh \
       --replace 'git rev-parse --show-toplevel' '$src'
-    substituteInPlace utils/generate-ya-make/generate-ya-make.sh \
-      --replace 'git rev-parse --show-toplevel' '$src'
     substituteInPlace utils/list-licenses/list-licenses.sh \
       --replace 'git rev-parse --show-toplevel' '$src'
     substituteInPlace utils/check-style/check-style \
diff --git a/nixpkgs/pkgs/servers/confluent-platform/default.nix b/nixpkgs/pkgs/servers/confluent-platform/default.nix
index 4a5846d01160..fe60516b3e58 100644
--- a/nixpkgs/pkgs/servers/confluent-platform/default.nix
+++ b/nixpkgs/pkgs/servers/confluent-platform/default.nix
@@ -3,34 +3,17 @@
 
 stdenv.mkDerivation rec {
   pname = "confluent-platform";
-  version = "5.3.0";
-  scalaVersion = "2.12";
+  version = "7.0.1";
 
   src = fetchurl {
-    url = "http://packages.confluent.io/archive/${lib.versions.majorMinor version}/confluent-${version}-${scalaVersion}.tar.gz";
-    sha256 = "14cilq63fib5yvj40504aj6wssi7xw4f7c2jadlzdmdxzh4ixqmp";
-  };
-
-  confluentCli = fetchFromGitHub {
-    owner = "confluentinc";
-    repo = "confluent-cli";
-    rev = "v${version}";
-    sha256 = "18yvp56b8l074qfkgr4afirgd43g8b023n9ija6dnk6p6dib1f4j";
+    url = "https://packages.confluent.io/archive/${lib.versions.majorMinor version}/confluent-${version}.tar.gz";
+    sha256 = "Q0/A/3M2tn530/+o1RpcgNsPKFQq6YJQnhgysRlpVfU=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ jre bash ];
 
   installPhase = ''
-    cp -R $confluentCli confluent-cli
-    chmod -R +w confluent-cli
-
-    (
-      export CONFLUENT_HOME=$PWD
-      cd confluent-cli
-      make install
-    )
-
     mkdir -p $out
     cp -R bin etc share src $out
     rm -rf $out/bin/windows
@@ -56,7 +39,7 @@ stdenv.mkDerivation rec {
     homepage = "https://www.confluent.io/";
     description = "Confluent event streaming platform based on Apache Kafka";
     license = licenses.asl20;
-    maintainers = [ maintainers.offline ];
+    maintainers = with maintainers; [ zoedsoupe ];
     platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/servers/corosync/default.nix b/nixpkgs/pkgs/servers/corosync/default.nix
index df73fb9f48e9..4df8a547dff5 100644
--- a/nixpkgs/pkgs/servers/corosync/default.nix
+++ b/nixpkgs/pkgs/servers/corosync/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, makeWrapper, pkg-config, kronosnet, nss, nspr, libqb
-, dbus, rdma-core, libstatgrab, net-snmp
+, systemd, dbus, rdma-core, libstatgrab, net-snmp
 , enableDbus ? false
 , enableInfiniBandRdma ? false
 , enableMonitoring ? false
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ makeWrapper pkg-config ];
 
   buildInputs = [
-    kronosnet nss nspr libqb
+    kronosnet nss nspr libqb systemd.dev
   ] ++ optional enableDbus dbus
     ++ optional enableInfiniBandRdma rdma-core
     ++ optional enableMonitoring libstatgrab
@@ -32,6 +32,8 @@ stdenv.mkDerivation rec {
     "--with-logdir=/var/log/corosync"
     "--enable-watchdog"
     "--enable-qdevices"
+    # allows Type=notify in the systemd service
+    "--enable-systemd"
   ] ++ optional enableDbus "--enable-dbus"
     ++ optional enableInfiniBandRdma "--enable-rdma"
     ++ optional enableMonitoring "--enable-monitoring"
@@ -63,6 +65,10 @@ stdenv.mkDerivation rec {
       --prefix PATH ":" "$out/sbin:${libqb}/sbin"
   '';
 
+  passthru.tests = {
+    inherit (nixosTests) pacemaker;
+  };
+
   meta = {
     homepage = "http://corosync.org/";
     description = "A Group Communication System with features for implementing high availability within applications";
diff --git a/nixpkgs/pkgs/servers/dendrite/default.nix b/nixpkgs/pkgs/servers/dendrite/default.nix
index b1c0f1424d9f..c17c301421fd 100644
--- a/nixpkgs/pkgs/servers/dendrite/default.nix
+++ b/nixpkgs/pkgs/servers/dendrite/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "matrix-dendrite";
-  version = "0.6.5";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "dendrite";
     rev = "v${version}";
-    sha256 = "jSn2awZsfsniSOTNkaEdQw/sZm7nUfiMntsxigy/51Y=";
+    sha256 = "sha256-R0xGsngNk8osBh3vRUeYxmEgbbNa+wKOihRjOU40D48=";
   };
 
-  vendorSha256 = "sha256-B4d3FGXy8TrED3oikTjETQso/AtEfIWWcdY6FykD/8A=";
+  vendorSha256 = "sha256-0Y/RVRWZ0osU/kEcf+Y8TH8K2rmxFmQSqMMNHoRIugo=";
 
   passthru.tests = {
     inherit (nixosTests) dendrite;
diff --git a/nixpkgs/pkgs/servers/dict/wiktionary/default.nix b/nixpkgs/pkgs/servers/dict/wiktionary/default.nix
index 98e223010480..9ebbfb767391 100644
--- a/nixpkgs/pkgs/servers/dict/wiktionary/default.nix
+++ b/nixpkgs/pkgs/servers/dict/wiktionary/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dict-db-wiktionary";
-  version = "20210920";
+  version = "20220301";
 
   src = fetchurl {
     url = "https://dumps.wikimedia.org/enwiktionary/${version}/enwiktionary-${version}-pages-articles.xml.bz2";
-    sha256 = "UeufbpSpRL+JrU3SkhxzWJncEsrM1es88grRmFwGABk=";
+    sha256 = "Gobilm9Rlb7qtZU+hlsYOl1/BAjj/MtNp5z2GQx8NN8=";
   };
 
   # script in nixpkgs does not support python2
diff --git a/nixpkgs/pkgs/servers/dns/bind/default.nix b/nixpkgs/pkgs/servers/dns/bind/default.nix
index 2601266f4d74..9dbaa744b30f 100644
--- a/nixpkgs/pkgs/servers/dns/bind/default.nix
+++ b/nixpkgs/pkgs/servers/dns/bind/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bind";
-  version = "9.18.0";
+  version = "9.18.1";
 
   src = fetchurl {
     url = "https://downloads.isc.org/isc/bind9/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-VlJb9crwH9j9nZCRCIDMD4qQonqX0WkYfWUdTs8MQRw=";
+    sha256 = "sha256-V8ev2HFpTWFctN77HBvW7QIzUJQ9dFhBTbjUk+9WBCc=";
   };
 
   outputs = [ "out" "lib" "dev" "man" "dnsutils" "host" ];
@@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
     homepage = "https://www.isc.org/bind/";
     description = "Domain name server";
     license = licenses.mpl20;
-
+    changelog = "https://downloads.isc.org/isc/bind9/cur/${lib.versions.majorMinor version}/CHANGES";
     maintainers = with maintainers; [ globin ];
     platforms = platforms.unix;
 
diff --git a/nixpkgs/pkgs/servers/dns/coredns/default.nix b/nixpkgs/pkgs/servers/dns/coredns/default.nix
index 7e6347e9ba36..66298866dbcf 100644
--- a/nixpkgs/pkgs/servers/dns/coredns/default.nix
+++ b/nixpkgs/pkgs/servers/dns/coredns/default.nix
@@ -2,23 +2,30 @@
 
 buildGoModule rec {
   pname = "coredns";
-  version = "1.9.0";
+  version = "1.9.1";
 
   src = fetchFromGitHub {
     owner = "coredns";
     repo = "coredns";
     rev = "v${version}";
-    sha256 = "sha256-8IYJxb+HssS2xTboBRo3lz9czklt/Sn098ATlDaO7Gs=";
+    sha256 = "sha256-1lJrbazEgsRHI10qIgA9KgglsxpnMIdxEWpu6RiJ0pQ=";
   };
 
-  vendorSha256 = "sha256-Vxs+k4WF55xwjgdlW/1NM4NWnYqj2EOLOONflj+BoY4=";
+  vendorSha256 = "sha256-ueEuduZ76FUs2wE8oiHGON9+s91jaHhS6gOKr7MNh8g=";
 
-  doCheck = false;
+  postPatch = ''
+    substituteInPlace test/file_cname_proxy_test.go \
+      --replace "TestZoneExternalCNAMELookupWithProxy" \
+                "SkipZoneExternalCNAMELookupWithProxy"
+
+    substituteInPlace test/readme_test.go \
+      --replace "TestReadme" "SkipReadme"
+  '';
 
   meta = with lib; {
     homepage = "https://coredns.io";
     description = "A DNS server that runs middleware";
     license = licenses.asl20;
-    maintainers = with maintainers; [ rushmorem rtreffer deltaevo ];
+    maintainers = with maintainers; [ rushmorem rtreffer deltaevo superherointj ];
   };
 }
diff --git a/nixpkgs/pkgs/servers/dns/https-dns-proxy/default.nix b/nixpkgs/pkgs/servers/dns/https-dns-proxy/default.nix
index c32d3eca2263..5e2efae8a287 100644
--- a/nixpkgs/pkgs/servers/dns/https-dns-proxy/default.nix
+++ b/nixpkgs/pkgs/servers/dns/https-dns-proxy/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   pname = "https-dns-proxy";
   # there are no stable releases (yet?)
-  version = "unstable-20200419";
+  version = "unstable-2021-03-29";
 
   src = fetchFromGitHub {
     owner = "aarond10";
     repo = "https_dns_proxy";
-    rev = "79fc7b085e3b1ad64c8332f7115dfe2bf5f1f3e4";
-    sha256 = "1cdfswfjby4alp6gy7yyjm76kfyclh5ax0zadnqs2pyigg9plh0b";
+    rev = "bbd9ef272dcda3ead515871f594768af13192af7";
+    sha256 = "sha256-r+IpDklI3vITK8ZlZvIFm3JdDe2r8DK2ND3n1a/ThrM=";
   };
 
   nativeBuildInputs = [ cmake gtest ];
diff --git a/nixpkgs/pkgs/servers/dns/knot-resolver/default.nix b/nixpkgs/pkgs/servers/dns/knot-resolver/default.nix
index 4d12a6d7172a..d47b5a3e6a3c 100644
--- a/nixpkgs/pkgs/servers/dns/knot-resolver/default.nix
+++ b/nixpkgs/pkgs/servers/dns/knot-resolver/default.nix
@@ -17,11 +17,11 @@ lua = luajitPackages;
 
 unwrapped = stdenv.mkDerivation rec {
   pname = "knot-resolver";
-  version = "5.4.4";
+  version = "5.5.0";
 
   src = fetchurl {
     url = "https://secure.nic.cz/files/knot-resolver/${pname}-${version}.tar.xz";
-    sha256 = "588964319e943679d391cc9c886d40ef858ecd9b33ae160023b4e2b5182b2cea";
+    sha256 = "4e6f48c74d955f143d603f6072670cb41ab9acdd95d4455d6e74b6908562c55a";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/servers/dns/pdns-recursor/default.nix b/nixpkgs/pkgs/servers/dns/pdns-recursor/default.nix
index d106e154277a..7b3b81ace277 100644
--- a/nixpkgs/pkgs/servers/dns/pdns-recursor/default.nix
+++ b/nixpkgs/pkgs/servers/dns/pdns-recursor/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "pdns-recursor";
-  version = "4.6.0";
+  version = "4.6.1";
 
   src = fetchurl {
     url = "https://downloads.powerdns.com/releases/pdns-recursor-${version}.tar.bz2";
-    sha256 = "1wmwkw8x39rall3673cngz0vpgc1z5vx29qy5r6mkg5fk29ma1nz";
+    sha256 = "1sqwasqxz4svn5rckrwr05gzk7qzdhzzzjr1l2l7xa44if8011bv";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/servers/dns/pdns/default.nix b/nixpkgs/pkgs/servers/dns/pdns/default.nix
new file mode 100644
index 000000000000..ff057b48bd54
--- /dev/null
+++ b/nixpkgs/pkgs/servers/dns/pdns/default.nix
@@ -0,0 +1,59 @@
+{ lib, stdenv, fetchurl, pkg-config, nixosTests
+, boost, libyamlcpp, libsodium, sqlite, protobuf, openssl, systemd
+, mariadb-connector-c, postgresql, lua, openldap, geoip, curl, unixODBC, lmdb, tinycdb
+}:
+
+stdenv.mkDerivation rec {
+  pname = "powerdns";
+  version = "4.6.1";
+
+  src = fetchurl {
+    url = "https://downloads.powerdns.com/releases/pdns-${version}.tar.bz2";
+    sha256 = "sha256-eRKxSIfWKEUYX3zktH21gOqnuLiX3LHJVV3+D6xe+uM=";
+  };
+  # redact configure flags from version output to reduce closure size
+  patches = [ ./version.patch ];
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [
+    boost mariadb-connector-c postgresql lua openldap sqlite protobuf geoip
+    libyamlcpp libsodium curl unixODBC openssl systemd lmdb tinycdb
+  ];
+
+  configureFlags = [
+    "--disable-silent-rules"
+    "--enable-dns-over-tls"
+    "--enable-unit-tests"
+    "--enable-reproducible"
+    "--enable-tools"
+    "--enable-ixfrdist"
+    "--enable-systemd"
+    "--with-libsodium"
+    "--with-sqlite3"
+    "--with-libcrypto=${openssl.dev}"
+  ];
+
+  # nix destroy with-modules arguments, when using configureFlags
+  preConfigure = ''
+    configureFlagsArray+=(
+      "--with-modules="
+      "--with-dynmodules=bind geoip gmysql godbc gpgsql gsqlite3 ldap lmdb lua2 pipe remote tinydns"
+    )
+  '';
+
+  enableParallelBuilding = true;
+  doCheck = true;
+
+  passthru.tests = {
+    nixos = nixosTests.powerdns;
+  };
+
+  meta = with lib; {
+    description = "Authoritative DNS server";
+    homepage = "https://www.powerdns.com";
+    platforms = platforms.unix;
+    broken = stdenv.isDarwin;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ mic92 disassembler nickcao ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/dns/pdns/version.patch b/nixpkgs/pkgs/servers/dns/pdns/version.patch
new file mode 100644
index 000000000000..185d07028833
--- /dev/null
+++ b/nixpkgs/pkgs/servers/dns/pdns/version.patch
@@ -0,0 +1,13 @@
+diff --git a/pdns/version.cc b/pdns/version.cc
+index d8f5d40..1368481 100644
+--- a/pdns/version.cc
++++ b/pdns/version.cc
+@@ -155,7 +155,7 @@ void showBuildConfiguration()
+ #ifdef PDNS_CONFIG_ARGS
+ #define double_escape(s) #s
+ #define escape_quotes(s) double_escape(s)
+-  g_log<<Logger::Warning<<"Configured with: "<<escape_quotes(PDNS_CONFIG_ARGS)<<endl;
++  g_log<<Logger::Warning<<"Configured with: "<<"redacted"<<endl;
+ #undef escape_quotes
+ #undef double_escape
+ #endif
diff --git a/nixpkgs/pkgs/servers/dns/powerdns/default.nix b/nixpkgs/pkgs/servers/dns/powerdns/default.nix
deleted file mode 100644
index cc7bb3317fd4..000000000000
--- a/nixpkgs/pkgs/servers/dns/powerdns/default.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-{ lib, stdenv, fetchurl, fetchpatch, pkg-config, nixosTests
-, boost, libyamlcpp, libsodium, sqlite, protobuf, openssl, systemd
-, mysql57, postgresql, lua, openldap, geoip, curl, unixODBC
-}:
-
-stdenv.mkDerivation rec {
-  pname = "powerdns";
-  version = "4.3.1";
-
-  src = fetchurl {
-    url = "https://downloads.powerdns.com/releases/pdns-${version}.tar.bz2";
-    sha256 = "0if27znz528sir52y9i4gcfhdsym7yxiwjgffy9lpscf1426q56m";
-  };
-
-  patches = [
-    (fetchpatch { # remove for >= 4.4.0
-      name = "gcc-10_undefined-reference.diff";
-      url = "https://github.com/PowerDNS/pdns/commit/05c9dd77b28.diff";
-      sha256 = "1m9szbi02h9kcabgw3kb8k9qrb54d34z0qzizrlfiw3hxs6c2zql";
-    })
-  ];
-
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [
-    boost mysql57.connector-c postgresql lua openldap sqlite protobuf geoip
-    libyamlcpp libsodium curl unixODBC openssl systemd
-  ];
-
-  # nix destroy with-modules arguments, when using configureFlags
-  preConfigure = ''
-    configureFlagsArray=(
-      "--with-modules=bind gmysql geoip godbc gpgsql gsqlite3 ldap lua2 pipe random remote"
-      --with-sqlite3
-      --with-libcrypto=${openssl.dev}
-      --with-libsodium
-      --enable-tools
-      --disable-dependency-tracking
-      --disable-silent-rules
-      --enable-reproducible
-      --enable-unit-tests
-      --enable-systemd
-    )
-  '';
-
-  enableParallelBuilding = true;
-  doCheck = true;
-
-  passthru.tests = {
-    nixos = nixosTests.powerdns;
-  };
-
-  meta = with lib; {
-    description = "Authoritative DNS server";
-    homepage = "https://www.powerdns.com";
-    platforms = platforms.unix;
-    broken = stdenv.isDarwin;
-    license = licenses.gpl2;
-    maintainers = with maintainers; [ mic92 disassembler ];
-  };
-}
diff --git a/nixpkgs/pkgs/servers/headscale/default.nix b/nixpkgs/pkgs/servers/headscale/default.nix
index 82b443c01159..8249eb6d9876 100644
--- a/nixpkgs/pkgs/servers/headscale/default.nix
+++ b/nixpkgs/pkgs/servers/headscale/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "headscale";
-  version = "0.14.0";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     owner = "juanfont";
     repo = "headscale";
     rev = "v${version}";
-    sha256 = "sha256-9nBFBvYAhybg97oU4mi899ss4/nzBCY95KfdkSs2f8s=";
+    sha256 = "sha256-ZgChln6jcxyEHbCy89kNnwd9qWcB0yDq05xFkM69WLs=";
   };
 
-  vendorSha256 = "sha256-qFoSK27D6bznksdm7Fl4SsVt13g2LSwuGe0As/MUo5o=";
+  vendorSha256 = "sha256-0jZ37tmBG8E0HS/wbQyQvAKo1UKQdaZDa+OTGfGDAi4=";
 
   ldflags = [ "-s" "-w" "-X github.com/juanfont/headscale/cmd/headscale/cli.Version=v${version}" ];
 
diff --git a/nixpkgs/pkgs/servers/home-assistant/component-packages.nix b/nixpkgs/pkgs/servers/home-assistant/component-packages.nix
index 7f765eb9fd8d..822bfcbe5936 100644
--- a/nixpkgs/pkgs/servers/home-assistant/component-packages.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/component-packages.nix
@@ -2,7 +2,7 @@
 # Do not edit!
 
 {
-  version = "2022.3.5";
+  version = "2022.3.8";
   components = {
     "abode" = ps: with ps; [ abodepy ];
     "accuweather" = ps: with ps; [ accuweather ];
@@ -693,7 +693,7 @@
     "qbittorrent" = ps: with ps; [ ]; # missing inputs: python-qbittorrent
     "qld_bushfire" = ps: with ps; [ georss-qld-bushfire-alert-client ];
     "qnap" = ps: with ps; [ ]; # missing inputs: qnapstats
-    "qrcode" = ps: with ps; [ pillow ]; # missing inputs: pyzbar
+    "qrcode" = ps: with ps; [ pillow pyzbar ];
     "quantum_gateway" = ps: with ps; [ quantum-gateway ];
     "qvr_pro" = ps: with ps; [ pyqvrpro ];
     "qwikswitch" = ps: with ps; [ ]; # missing inputs: pyqwikswitch
diff --git a/nixpkgs/pkgs/servers/home-assistant/default.nix b/nixpkgs/pkgs/servers/home-assistant/default.nix
index 9e7fc76e4e3f..0d9664a700e0 100644
--- a/nixpkgs/pkgs/servers/home-assistant/default.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/default.nix
@@ -164,7 +164,7 @@ let
   extraPackagesFile = writeText "home-assistant-packages" (lib.concatMapStringsSep "\n" (pkg: pkg.pname) extraBuildInputs);
 
   # Don't forget to run parse-requirements.py after updating
-  hassVersion = "2022.3.5";
+  hassVersion = "2022.3.8";
 
 in python.pkgs.buildPythonApplication rec {
   pname = "homeassistant";
@@ -182,7 +182,7 @@ in python.pkgs.buildPythonApplication rec {
     owner = "home-assistant";
     repo = "core";
     rev = version;
-    hash = "sha256-VXE2zQH/HHhogo5qjneC0zlo9892wgGN1qd3ZFKfyqw=";
+    hash = "sha256-FGsMFt/EEokaast81iiwKHqSsB1E4Si5ejTw+MV1MnQ=";
   };
 
   # leave this in, so users don't have to constantly update their downstream patch handling
diff --git a/nixpkgs/pkgs/servers/http/apache-httpd/2.4.nix b/nixpkgs/pkgs/servers/http/apache-httpd/2.4.nix
index 56d66a2e99cf..d72dcb9170b5 100644
--- a/nixpkgs/pkgs/servers/http/apache-httpd/2.4.nix
+++ b/nixpkgs/pkgs/servers/http/apache-httpd/2.4.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, perl, zlib, apr, aprutil, pcre, libiconv, lynx
+{ lib, stdenv, fetchurl, perl, zlib, apr, aprutil, pcre2, libiconv, lynx, which
 , nixosTests
 , proxySupport ? true
 , sslSupport ? true, openssl
@@ -11,17 +11,19 @@
 
 stdenv.mkDerivation rec {
   pname = "apache-httpd";
-  version = "2.4.52";
+  version = "2.4.53";
 
   src = fetchurl {
     url = "mirror://apache/httpd/httpd-${version}.tar.bz2";
-    sha256 = "sha256-ASf33El+mYPpxRR0vtdeRWB/L4cKdnWobckK9tVy9ck=";
+    sha256 = "sha256-0LvREhpXtfKm/5LXuW+AUMWkXT8U2xGPZJedUlhY22M=";
   };
 
   # FIXME: -dev depends on -doc
   outputs = [ "out" "dev" "man" "doc" ];
   setOutputFlags = false; # it would move $out/modules, etc.
 
+  nativeBuildInputs = [ which ];
+
   buildInputs = [ perl ] ++
     lib.optional brotliSupport brotli ++
     lib.optional sslSupport openssl ++
@@ -42,7 +44,7 @@ stdenv.mkDerivation rec {
     "--with-apr=${apr.dev}"
     "--with-apr-util=${aprutil.dev}"
     "--with-z=${zlib.dev}"
-    "--with-pcre=${pcre.dev}"
+    "--with-pcre=${pcre2.dev}/bin/pcre2-config"
     "--disable-maintainer-mode"
     "--disable-debugger-mode"
     "--enable-mods-shared=all"
diff --git a/nixpkgs/pkgs/servers/http/lwan/default.nix b/nixpkgs/pkgs/servers/http/lwan/default.nix
index 3e90857d8db8..5aff026aa9ce 100644
--- a/nixpkgs/pkgs/servers/http/lwan/default.nix
+++ b/nixpkgs/pkgs/servers/http/lwan/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, zlib, cmake, jemalloc }:
+{ lib, stdenv, fetchFromGitHub, pkg-config, zlib, cmake, enableJemalloc ? !stdenv.hostPlatform.isMusl, jemalloc }:
 
 stdenv.mkDerivation rec {
   pname = "lwan";
@@ -13,7 +13,12 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake pkg-config ];
 
-  buildInputs = [ jemalloc zlib ];
+  buildInputs = [ zlib ] ++ lib.optional enableJemalloc jemalloc;
+
+  # Note: tcmalloc and mimalloc are also supported (and normal malloc)
+  cmakeFlags = lib.optional enableJemalloc "-DUSE_ALTERNATIVE_MALLOC=jemalloc";
+
+  hardeningDisable = lib.optional stdenv.hostPlatform.isMusl "pie";
 
   meta = with lib; {
     description = "Lightweight high-performance multi-threaded web server";
diff --git a/nixpkgs/pkgs/servers/icingaweb2/default.nix b/nixpkgs/pkgs/servers/icingaweb2/default.nix
index 4a6adb2b024a..75282ad15c4f 100644
--- a/nixpkgs/pkgs/servers/icingaweb2/default.nix
+++ b/nixpkgs/pkgs/servers/icingaweb2/default.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "icingaweb2";
-  version = "2.9.6";
+  version = "2.10.0";
 
   src = fetchFromGitHub {
     owner = "Icinga";
     repo = "icingaweb2";
     rev = "v${version}";
-    sha256 = "sha256:1kcn1kkhm8fkwhjqmpysd2hvnrvh6bka8r67yq8d58m117l9wnpq";
+    sha256 = "sha256:0fhhq6mzpwj3dh6w583n4sngshf15dm8zgbli5cacy7jkzmsz0wn";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/servers/icingaweb2/ipl.nix b/nixpkgs/pkgs/servers/icingaweb2/ipl.nix
index 7e67e645be91..e9075d7d043a 100644
--- a/nixpkgs/pkgs/servers/icingaweb2/ipl.nix
+++ b/nixpkgs/pkgs/servers/icingaweb2/ipl.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "icingaweb2-ipl";
-  version = "0.7.0";
+  version = "0.8.0";
 
   src = fetchFromGitHub {
     owner = "Icinga";
     repo = "icinga-php-library";
     rev = "v${version}";
-    sha256 = "sha256:118bg9mxjxajm2ydbycgqdmdx8przwxblsaxc373r0g1dp1lv0fz";
+    sha256 = "sha256:05k0qcd5c5xb124dpp6lvfdh4dzf6bkd34v4sy7aj776p4hrlqx2";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/servers/imgproxy/default.nix b/nixpkgs/pkgs/servers/imgproxy/default.nix
index 2b7ed9e1c9cc..d35c53de9afe 100644
--- a/nixpkgs/pkgs/servers/imgproxy/default.nix
+++ b/nixpkgs/pkgs/servers/imgproxy/default.nix
@@ -3,16 +3,16 @@
 
 buildGoModule rec {
   pname = "imgproxy";
-  version = "3.3.1";
+  version = "3.3.3";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
-    sha256 = "sha256-GZYaFK6g26gbVa3sHwTZ4fNGMFWBWevqcfJc/3SC890=";
+    sha256 = "sha256-VS2EZUMUvzuSP/Rs0pY0qo5VcB9VU3+IzZG6AdTrhmk=";
     rev = "v${version}";
   };
 
-  vendorSha256 = "sha256-uV5pnnvVYviw2LnceQUiTJXva3WI51pgW6IeZzVhULc=";
+  vendorSha256 = "sha256-Rp0vTtpdKpYg/7UjX73Qwxu6dOqDr24nqp41fKN1IYw=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/servers/invidious/default.nix b/nixpkgs/pkgs/servers/invidious/default.nix
index 7e939f51bc95..adcd694bad94 100644
--- a/nixpkgs/pkgs/servers/invidious/default.nix
+++ b/nixpkgs/pkgs/servers/invidious/default.nix
@@ -1,24 +1,27 @@
-{ lib, crystal, fetchFromGitHub, librsvg, pkg-config, libxml2, openssl, sqlite, lsquic, nixosTests }:
+{ lib, stdenv, crystal, fetchFromGitHub, librsvg, pkg-config, libxml2, openssl, shards, sqlite, lsquic, videojs, nixosTests }:
 let
-  # When updating, always update the following:
-  #  * the git revision
-  #  * the version attribute
-  #  * the source hash (sha256)
-  # If the shards.lock file changed, also the following:
-  #  * shards.nix (by running `crystal2nix` in invidious’ source tree)
-  #  * If the lsquic.cr dependency changed: lsquic in lsquic.nix (version, sha256)
-  #  * If the lsquic version changed: boringssl' in lsquic.nix (version, sha256)
-  rev = "21879da80d2dfa97e789a13b90e82e466c4854e3";
+  # All versions, revisions, and checksums are stored in ./versions.json.
+  # The update process is the following:
+  #   * pick the latest commit
+  #   * update .invidious.rev, .invidious.version, and .invidious.sha256
+  #   * prefetch the videojs dependencies with scripts/fetch-player-dependencies.cr
+  #     and update .videojs.sha256 (they are normally fetched during build
+  #     but nix's sandboxing does not allow that)
+  #   * if shard.lock changed
+  #     * recreate shards.nix by running crystal2nix
+  #     * update lsquic and boringssl if necessarry, lsquic.cr depends on
+  #       the same version of lsquic and lsquic requires the boringssl
+  #       commit mentioned in its README
+  versions = builtins.fromJSON (builtins.readFile ./versions.json);
 in
 crystal.buildCrystalPackage rec {
   pname = "invidious";
-  version = "unstable-2021-11-08";
+  inherit (versions.invidious) version;
 
   src = fetchFromGitHub {
     owner = "iv-org";
     repo = pname;
-    inherit rev;
-    sha256 = "0jvnwjdh2l0hxfvzim00r3zbs528bb93y1nk0bjrbbrcfv5cn5ss";
+    inherit (versions.invidious) rev sha256;
   };
 
   postPatch =
@@ -33,13 +36,15 @@ crystal.buildCrystalPackage rec {
       assetCommitTemplate = ''{{ "#{`git rev-list HEAD --max-count=1 --abbrev-commit -- assets`.strip}" }}'';
     in
     ''
+      for d in ${videojs}/*; do ln -s "$d" assets/videojs; done
+
       # Use the version metadata from the derivation instead of using git at
       # build-time
       substituteInPlace src/invidious.cr \
           --replace ${lib.escapeShellArg branchTemplate} '"master"' \
-          --replace ${lib.escapeShellArg commitTemplate} '"${lib.substring 0 7 rev}"' \
+          --replace ${lib.escapeShellArg commitTemplate} '"${lib.substring 0 7 versions.invidious.rev}"' \
           --replace ${lib.escapeShellArg versionTemplate} '"${lib.replaceChars ["-"] ["."] (lib.substring 9 10 version)}"' \
-          --replace ${lib.escapeShellArg assetCommitTemplate} '"${lib.substring 0 7 rev}"'
+          --replace ${lib.escapeShellArg assetCommitTemplate} '"${lib.substring 0 7 versions.invidious.rev}"'
 
       # Patch the assets and locales paths to be absolute
       substituteInPlace src/invidious.cr \
@@ -48,19 +53,22 @@ crystal.buildCrystalPackage rec {
           --replace 'File.read("locales/' 'File.read("${placeholder "out"}/share/invidious/locales/'
 
       # Reference sql initialisation/migration scripts by absolute path
-      substituteInPlace src/invidious/helpers/helpers.cr \
+      substituteInPlace src/invidious/database/base.cr \
             --replace 'config/sql' '${placeholder "out"}/share/invidious/config/sql'
 
-      substituteInPlace src/invidious/users.cr \
+      substituteInPlace src/invidious/user/captcha.cr \
           --replace 'Process.run(%(rsvg-convert' 'Process.run(%(${lib.getBin librsvg}/bin/rsvg-convert'
     '';
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ pkg-config shards ];
   buildInputs = [ libxml2 openssl sqlite ];
 
   format = "crystal";
   shardsFile = ./shards.nix;
-  crystalBinaries.invidious.src = "src/invidious.cr";
+  crystalBinaries.invidious = {
+    src = "src/invidious.cr";
+    options = [ "--release" "--progress" "--verbose" "--no-debug" "-Dskip_videojs_download" ];
+  };
 
   postConfigure = ''
     # lib includes nix store paths which can’t be patched, so the links have to
@@ -88,12 +96,17 @@ crystal.buildCrystalPackage rec {
     INVIDIOUS_CONFIG="database_url: sqlite3:///dev/null" $out/bin/invidious --help
   '';
 
-  passthru.tests = { inherit (nixosTests) invidious; };
+  passthru = {
+    inherit lsquic;
+    tests = { inherit (nixosTests) invidious; };
+    updateScript = ./update.sh;
+  };
 
   meta = with lib; {
     description = "An open source alternative front-end to YouTube";
     homepage = "https://invidious.io/";
     license = licenses.agpl3;
     maintainers = with maintainers; [ infinisil sbruder ];
+    broken = stdenv.isDarwin && stdenv.isAarch64;
   };
 }
diff --git a/nixpkgs/pkgs/servers/invidious/lsquic.nix b/nixpkgs/pkgs/servers/invidious/lsquic.nix
index acc9b97ae5df..292d37ce6cd5 100644
--- a/nixpkgs/pkgs/servers/invidious/lsquic.nix
+++ b/nixpkgs/pkgs/servers/invidious/lsquic.nix
@@ -1,24 +1,30 @@
 { lib, boringssl, stdenv, fetchgit, fetchFromGitHub, cmake, zlib, perl, libevent }:
 let
+  versions = builtins.fromJSON (builtins.readFile ./versions.json);
+
   # lsquic requires a specific boringssl version (noted in its README)
-  boringssl' = boringssl.overrideAttrs (old: rec {
-    version = "251b5169fd44345f455438312ec4e18ae07fd58c";
+  boringssl' = boringssl.overrideAttrs (old: {
+    version = versions.boringssl.rev;
     src = fetchgit {
       url = "https://boringssl.googlesource.com/boringssl";
-      rev = version;
-      sha256 = "sha256-EU6T9yQCdOLx98Io8o01rEsgxDFF/Xoy42LgPopD2/A=";
+      inherit (versions.boringssl) rev sha256;
     };
+
+    patches = [
+      # Use /etc/ssl/certs/ca-certificates.crt instead of /etc/ssl/cert.pem
+      ./use-etc-ssl-certs.patch
+    ];
   });
 in
 stdenv.mkDerivation rec {
   pname = "lsquic";
-  version = "2.18.1";
+  version = versions.lsquic.version;
 
   src = fetchFromGitHub {
     owner = "litespeedtech";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-hG8cUvhbCNeMOsKkaJlgGpzUrIx47E/WhmPIdI5F3qM=";
+    inherit (versions.lsquic) sha256;
     fetchSubmodules = true;
   };
 
@@ -49,6 +55,8 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
+  passthru.boringssl = boringssl';
+
   meta = with lib; {
     description = "A library for QUIC and HTTP/3 (version for Invidious)";
     homepage = "https://github.com/litespeedtech/lsquic";
diff --git a/nixpkgs/pkgs/servers/invidious/shards.nix b/nixpkgs/pkgs/servers/invidious/shards.nix
index 778b34496a62..582a4083e7db 100644
--- a/nixpkgs/pkgs/servers/invidious/shards.nix
+++ b/nixpkgs/pkgs/servers/invidious/shards.nix
@@ -59,10 +59,22 @@
     rev = "v0.4.1";
     sha256 = "1l08cydkdidq9yyil1wl240hvk41iycv04jrg6nx5mkvzw4z1bzg";
   };
+  spectator = {
+    owner = "icy-arctic-fox";
+    repo = "spectator";
+    rev = "v0.10.4";
+    sha256 = "0rcxq2nbslvwrd8m9ajw6dzaw3hagxmkdy9s8p34cgnr4c9dijdq";
+  };
   sqlite3 = {
     owner = "crystal-lang";
     repo = "crystal-sqlite3";
     rev = "v0.18.0";
     sha256 = "03nnvpchhq9f9ywsm3pk2rrj4a3figw7xs96zdziwgr5znkz6x93";
   };
+  ameba = {
+    owner = "crystal-ameba";
+    repo = "ameba";
+    rev = "v0.14.3";
+    sha256 = "1cfr95xi6hsyxw1wlrh571hc775xhwmssk3k14i8b7dgbwfmm5x1";
+  };
 }
diff --git a/nixpkgs/pkgs/servers/invidious/update.sh b/nixpkgs/pkgs/servers/invidious/update.sh
new file mode 100755
index 000000000000..580d6136388a
--- /dev/null
+++ b/nixpkgs/pkgs/servers/invidious/update.sh
@@ -0,0 +1,96 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl crystal crystal2nix jq git moreutils nix nix-prefetch pkg-config
+git_url='https://github.com/iv-org/invidious.git'
+git_branch='master'
+git_dir='/var/tmp/invidious.git'
+pkg='invidious'
+
+set -euo pipefail
+
+cd "$(dirname "${BASH_SOURCE[0]}")"
+
+info() {
+    if [ -t 2 ]; then
+        set -- '\033[32m%s\033[39m\n' "$@"
+    else
+        set -- '%s\n' "$@"
+    fi
+    printf "$@" >&2
+}
+
+json_get() {
+    jq -r "$1" < 'versions.json'
+}
+
+json_set() {
+    jq --arg x "$2" "$1 = \$x" < 'versions.json' | sponge 'versions.json'
+}
+
+old_rev=$(json_get '.invidious.rev')
+old_version=$(json_get '.invidious.version')
+today=$(LANG=C date -u +'%Y-%m-%d')
+
+info "fetching $git_url..."
+if [ ! -d "$git_dir" ]; then
+    git init --initial-branch="$git_branch" "$git_dir"
+    git -C "$git_dir" remote add origin "$git_url"
+fi
+git -C "$git_dir" fetch origin "$git_branch"
+
+# use latest commit before today, we should not call the version *today*
+# because there might still be commits coming
+# use the day of the latest commit we picked as version
+new_rev=$(git -C "$git_dir" log -n 1 --format='format:%H' --before="${today}T00:00:00Z" "origin/$git_branch")
+new_version="unstable-$(git -C "$git_dir" log -n 1 --format='format:%cs' "$new_rev")"
+info "latest commit before $today: $new_rev"
+
+if [ "$new_rev" = "$old_rev" ]; then
+    info "$pkg is up-to-date."
+    exit
+fi
+
+json_set '.invidious.version' "$new_version"
+json_set '.invidious.rev' "$new_rev"
+new_sha256=$(nix-prefetch -I 'nixpkgs=../../..' "$pkg")
+json_set '.invidious.sha256' "$new_sha256"
+commit_msg="$pkg: $old_version -> $new_version"
+
+# fetch video.js dependencies
+info "Running scripts/fetch-player-dependencies.cr..."
+git -C "$git_dir" reset --hard "$new_rev"
+(cd "$git_dir" && crystal run scripts/fetch-player-dependencies.cr -- --minified)
+rm -f "$git_dir/assets/videojs/.gitignore"
+videojs_new_sha256=$(nix hash-path --type sha256 --base32 "$git_dir/assets/videojs")
+json_set '.videojs.sha256' "$videojs_new_sha256"
+
+if git -C "$git_dir" diff-tree --quiet "${old_rev}..${new_rev}" -- 'shard.lock'; then
+    info "shard.lock did not change since $old_rev."
+else
+    info "Updating shards.nix..."
+    crystal2nix -- "$git_dir/shard.lock"  # argv's index seems broken
+
+    lsquic_old_version=$(json_get '.lsquic.version')
+    # lsquic.cr's version tracks lsquic's, so lsquic must be updated to the
+    # version in the shards file
+    lsquic_new_version=$(nix eval --raw -f 'shards.nix' lsquic.rev \
+        | sed -e 's/^v//' -e 's/-[0-9]*$//')
+    if [ "$lsquic_old_version" != "$lsquic_new_version" ]; then
+        info "Updating lsquic to $lsquic_new_version..."
+        json_set '.lsquic.version' "$lsquic_new_version"
+        lsquic_new_sha256=$(nix-prefetch -I 'nixpkgs=../../..' "${pkg}.lsquic")
+        json_set '.lsquic.sha256' "$lsquic_new_sha256"
+
+        info "Updating boringssl..."
+        # lsquic specifies the boringssl commit it requires in its README
+        boringssl_new_rev=$(curl -LSsf "https://github.com/litespeedtech/lsquic/raw/v${lsquic_new_version}/README.md" \
+            | grep -Pom1 '(?<=^git checkout ).*')
+        json_set '.boringssl.rev' "$boringssl_new_rev"
+        boringssl_new_sha256=$(nix-prefetch -I 'nixpkgs=../../..' "${pkg}.lsquic.boringssl")
+        json_set '.boringssl.sha256' "$boringssl_new_sha256"
+        commit_msg="$commit_msg
+
+lsquic: $lsquic_old_version -> $lsquic_new_version"
+    fi
+fi
+
+git commit --verbose --message "$commit_msg" -- versions.json shards.nix
diff --git a/nixpkgs/pkgs/servers/invidious/use-etc-ssl-certs.patch b/nixpkgs/pkgs/servers/invidious/use-etc-ssl-certs.patch
new file mode 100644
index 000000000000..b60b0b1f1a12
--- /dev/null
+++ b/nixpkgs/pkgs/servers/invidious/use-etc-ssl-certs.patch
@@ -0,0 +1,13 @@
+diff --git a/crypto/x509/x509_def.c b/crypto/x509/x509_def.c
+index d2bc3e5c1..329580075 100644
+--- a/crypto/x509/x509_def.c
++++ b/crypto/x509/x509_def.c
+@@ -67,7 +67,7 @@
+ 
+ #define X509_CERT_AREA          OPENSSLDIR
+ #define X509_CERT_DIR           OPENSSLDIR "/certs"
+-#define X509_CERT_FILE          OPENSSLDIR "/cert.pem"
++#define X509_CERT_FILE          "/etc/ssl/certs/ca-certificates.crt"
+ #define X509_PRIVATE_DIR        OPENSSLDIR "/private"
+ #define X509_CERT_DIR_EVP        "SSL_CERT_DIR"
+ #define X509_CERT_FILE_EVP       "SSL_CERT_FILE"
diff --git a/nixpkgs/pkgs/servers/invidious/versions.json b/nixpkgs/pkgs/servers/invidious/versions.json
new file mode 100644
index 000000000000..cec068a09bf1
--- /dev/null
+++ b/nixpkgs/pkgs/servers/invidious/versions.json
@@ -0,0 +1,18 @@
+{
+  "boringssl": {
+    "rev": "251b5169fd44345f455438312ec4e18ae07fd58c",
+    "sha256": "sha256-EU6T9yQCdOLx98Io8o01rEsgxDFF/Xoy42LgPopD2/A="
+  },
+  "invidious": {
+    "rev": "ed265cfdcd131b9df5398d899cc5d7036a5b7846",
+    "sha256": "0hhnq4s0slwbgxra7gxapl7dcz60a7k71cndi4crqcikmazzac3b",
+    "version": "unstable-2022-03-16"
+  },
+  "lsquic": {
+    "sha256": "sha256-hG8cUvhbCNeMOsKkaJlgGpzUrIx47E/WhmPIdI5F3qM=",
+    "version": "2.18.1"
+  },
+  "videojs": {
+    "sha256": "0b4vxd29kpvy60yhqm376r1872gds17s6wljqw0zlr16j762k50r"
+  }
+}
diff --git a/nixpkgs/pkgs/servers/invidious/videojs.nix b/nixpkgs/pkgs/servers/invidious/videojs.nix
new file mode 100644
index 000000000000..e4470793e51e
--- /dev/null
+++ b/nixpkgs/pkgs/servers/invidious/videojs.nix
@@ -0,0 +1,18 @@
+{ stdenvNoCC, cacert, crystal, openssl, pkg-config, invidious }:
+
+let
+  versions = builtins.fromJSON (builtins.readFile ./versions.json);
+in
+stdenvNoCC.mkDerivation {
+  name = "videojs";
+
+  inherit (invidious) src;
+
+  builder = ./videojs.sh;
+
+  nativeBuildInputs = [ cacert crystal openssl pkg-config ];
+
+  outputHashAlgo = "sha256";
+  outputHashMode = "recursive";
+  outputHash = versions.videojs.sha256;
+}
diff --git a/nixpkgs/pkgs/servers/invidious/videojs.sh b/nixpkgs/pkgs/servers/invidious/videojs.sh
new file mode 100644
index 000000000000..31609db14eb3
--- /dev/null
+++ b/nixpkgs/pkgs/servers/invidious/videojs.sh
@@ -0,0 +1,9 @@
+source $stdenv/setup
+
+unpackPhase
+cd source
+# this helper downloads the videojs files and checks their checksums
+# against videojs-dependencies.yml so it should be pure
+crystal run scripts/fetch-player-dependencies.cr -- --minified
+rm -f assets/videojs/.gitignore
+mv assets/videojs "$out"
diff --git a/nixpkgs/pkgs/servers/isso/default.nix b/nixpkgs/pkgs/servers/isso/default.nix
index f02fc8df3b1b..a7f48861487a 100644
--- a/nixpkgs/pkgs/servers/isso/default.nix
+++ b/nixpkgs/pkgs/servers/isso/default.nix
@@ -16,13 +16,13 @@ in
 with python3Packages; buildPythonApplication rec {
 
   pname = "isso";
-  version = "0.12.5";
+  version = "0.12.6.1";
 
   src = fetchFromGitHub {
     owner = "posativ";
     repo = pname;
     rev = version;
-    sha256 = "12ccfba2kwbfm9h4zhlxrcigi98akbdm4qi89iglr4z53ygzpay5";
+    sha256 = "sha256-b2iJmOOsaI4lqJ5//jmHflXRx4yFDaAoKZixXoWIyZg=";
   };
 
   propagatedBuildInputs = [
@@ -47,10 +47,13 @@ with python3Packages; buildPythonApplication rec {
     make js
   '';
 
-  checkInputs = [ nose ];
+  checkInputs = [
+    pytest
+    pytest-cov
+  ];
 
   checkPhase = ''
-    ${python.interpreter} setup.py nosetests
+    pytest
   '';
 
   passthru.tests = { inherit (nixosTests) isso; };
diff --git a/nixpkgs/pkgs/servers/jackett/default.nix b/nixpkgs/pkgs/servers/jackett/default.nix
index 865c4490a04c..69e891fe595e 100644
--- a/nixpkgs/pkgs/servers/jackett/default.nix
+++ b/nixpkgs/pkgs/servers/jackett/default.nix
@@ -9,13 +9,13 @@
 
 buildDotnetModule rec {
   pname = "jackett";
-  version = "0.20.671";
+  version = "0.20.709";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "AoOaBryZHkqp5SabfKeW5E1YoJCwGhg2luK8SQvabow=";
+    sha256 = "Gx1VHjs37XBcvw20pQNrA/meLuVmogdGIzroRXvTv5Q=";
   };
 
   projectFile = "src/Jackett.Server/Jackett.Server.csproj";
diff --git a/nixpkgs/pkgs/servers/jackett/deps.nix b/nixpkgs/pkgs/servers/jackett/deps.nix
index 3b0fb8cb78bd..022c604d0a91 100644
--- a/nixpkgs/pkgs/servers/jackett/deps.nix
+++ b/nixpkgs/pkgs/servers/jackett/deps.nix
@@ -152,6 +152,9 @@
   (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "5.0.0"; sha256 = "0swqcknyh87ns82w539z1mvy804pfwhgzs97cr3nwqk6g5s42gd6"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "6.0.0"; sha256 = "1kjiw6s4yfz9gm7mx3wkhp06ghnbs95icj9hi505shz9rjrg42q2"; })
   (fetchNuGet { pname = "Microsoft.Extensions.WebEncoders"; version = "2.2.0"; sha256 = "1mhnichccw6mjf37d38q2i1kr7qp485m7apa1b872ji0q16yy1y3"; })
+  (fetchNuGet { pname = "Microsoft.Net.Http.Headers"; version = "2.1.0"; sha256 = "1a02bll0flsin9grd3jxbi76ycl42qamynalbp7qbqcsprabw3ai"; })
+  (fetchNuGet { pname = "Microsoft.Net.Http.Headers"; version = "2.2.0"; sha256 = "0w6lrk9z67bcirq2cj2ldfhnizc6id77ba6i30hjzgqjlyhh1gx5"; })
+  (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.0.0"; sha256 = "0bknyf5kig5icwjxls7pcn51x2b2qf91dz9qv67fl70v6cczaz2r"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
@@ -159,9 +162,6 @@
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
   (fetchNuGet { pname = "Microsoft.NETFramework.ReferenceAssemblies"; version = "1.0.0"; sha256 = "0na724xhvqm63vq9y18fl9jw9q2v99bdwr353378s5fsi11qzxp9"; })
   (fetchNuGet { pname = "Microsoft.NETFramework.ReferenceAssemblies.net461"; version = "1.0.0"; sha256 = "00vkn4c6i0rn1l9pv912y0wgb9h6ks76qah8hvk441nari8fqbm1"; })
-  (fetchNuGet { pname = "Microsoft.Net.Http.Headers"; version = "2.1.0"; sha256 = "1a02bll0flsin9grd3jxbi76ycl42qamynalbp7qbqcsprabw3ai"; })
-  (fetchNuGet { pname = "Microsoft.Net.Http.Headers"; version = "2.2.0"; sha256 = "0w6lrk9z67bcirq2cj2ldfhnizc6id77ba6i30hjzgqjlyhh1gx5"; })
-  (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.0.0"; sha256 = "0bknyf5kig5icwjxls7pcn51x2b2qf91dz9qv67fl70v6cczaz2r"; })
   (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.0.0"; sha256 = "1bh5scbvl6ndldqv20sl34h4y257irm9ziv2wyfc3hka6912fhn7"; })
   (fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.0.0"; sha256 = "06mn31cgpp7d8lwdyjanh89prc66j37dchn74vrd9s588rq0y70r"; })
   (fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; })
@@ -185,8 +185,8 @@
   (fetchNuGet { pname = "NLog.Web.AspNetCore"; version = "4.14.0"; sha256 = "1q2v44inp4xjynncxpv432k2qjkfara1bpipmv3p3in0yv14l3wg"; })
   (fetchNuGet { pname = "NuGet.Frameworks"; version = "5.0.0"; sha256 = "18ijvmj13cwjdrrm52c8fpq021531zaz4mj4b4zapxaqzzxf2qjr"; })
   (fetchNuGet { pname = "NUnit"; version = "3.13.2"; sha256 = "00bkjgarkwbj497da9d7lajala1ns67h1kx53w4bapwkf32jlcvn"; })
-  (fetchNuGet { pname = "NUnit3TestAdapter"; version = "4.1.0"; sha256 = "1z5g15npmsjszhfmkrdmp4ds7jpxzhxblss2rjl5mfn5sihy4cww"; })
   (fetchNuGet { pname = "NUnit.ConsoleRunner"; version = "3.12.0"; sha256 = "00ihk6i3wzqndrn6yyh1csh4b3h226x5kwdp3716p75p4nljs1ik"; })
+  (fetchNuGet { pname = "NUnit3TestAdapter"; version = "4.1.0"; sha256 = "1z5g15npmsjszhfmkrdmp4ds7jpxzhxblss2rjl5mfn5sihy4cww"; })
   (fetchNuGet { pname = "Polly"; version = "7.2.2"; sha256 = "0s15n5zwj44i6sw3v40ca8l6j0ijydxcakvad49j52rp49iwrmkn"; })
   (fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; })
   (fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; })
diff --git a/nixpkgs/pkgs/servers/keycloak/all-plugins.nix b/nixpkgs/pkgs/servers/keycloak/all-plugins.nix
new file mode 100644
index 000000000000..4dbd24872631
--- /dev/null
+++ b/nixpkgs/pkgs/servers/keycloak/all-plugins.nix
@@ -0,0 +1,7 @@
+{ callPackage }:
+
+{
+  scim-for-keycloak = callPackage ./scim-for-keycloak {};
+  keycloak-discord = callPackage ./keycloak-discord {};
+  keycloak-metrics-spi = callPackage ./keycloak-metrics-spi {};
+}
diff --git a/nixpkgs/pkgs/servers/keycloak/default.nix b/nixpkgs/pkgs/servers/keycloak/default.nix
index 9d8a2b31bf12..d9797de6d174 100644
--- a/nixpkgs/pkgs/servers/keycloak/default.nix
+++ b/nixpkgs/pkgs/servers/keycloak/default.nix
@@ -1,5 +1,6 @@
 { stdenv, lib, fetchzip, makeWrapper, jre, writeText, nixosTests
 , postgresql_jdbc ? null, mysql_jdbc ? null
+, callPackage
 }:
 
 let
@@ -50,12 +51,17 @@ stdenv.mkDerivation rec {
       ln -s ${mkModuleXml "com.mysql" "mysql-connector-java.jar"} $module_path/com/mysql/main/module.xml
     ''}
 
-    wrapProgram $out/bin/standalone.sh --set JAVA_HOME ${jre}
-    wrapProgram $out/bin/add-user-keycloak.sh --set JAVA_HOME ${jre}
-    wrapProgram $out/bin/jboss-cli.sh --set JAVA_HOME ${jre}
+    for script in add-user-keycloak.sh add-user.sh domain.sh elytron-tool.sh jboss-cli.sh jconsole.sh jdr.sh standalone.sh wsconsume.sh wsprovide.sh; do
+      wrapProgram $out/bin/$script --set JAVA_HOME ${jre}
+    done
+    wrapProgram $out/bin/kcadm.sh --prefix PATH : ${jre}/bin
+    wrapProgram $out/bin/kcreg.sh --prefix PATH : ${jre}/bin
   '';
 
-  passthru.tests = nixosTests.keycloak;
+  passthru = {
+    tests = nixosTests.keycloak;
+    plugins = callPackage ./all-plugins.nix {};
+  };
 
   meta = with lib; {
     homepage    = "https://www.keycloak.org/";
diff --git a/nixpkgs/pkgs/servers/keycloak/keycloak-discord/default.nix b/nixpkgs/pkgs/servers/keycloak/keycloak-discord/default.nix
new file mode 100644
index 000000000000..047bc67fbc56
--- /dev/null
+++ b/nixpkgs/pkgs/servers/keycloak/keycloak-discord/default.nix
@@ -0,0 +1,29 @@
+{ stdenv
+, lib
+, fetchurl
+}:
+
+stdenv.mkDerivation rec {
+  pname = "keycloak-discord";
+  version = "0.3.1";
+
+  src = fetchurl {
+    url = "https://github.com/wadahiro/keycloak-discord/releases/download/v${version}/keycloak-discord-ear-${version}.ear";
+    sha256 = "0fswhbnxc80dpfqf5y6j29dxk3vcnm4kki6qdk22qliasvpw5n9c";
+  };
+
+  dontUnpack = true;
+  dontBuild = true;
+
+  installPhase = ''
+    mkdir -p "$out"
+    install "$src" "$out/${pname}-ear-${version}.ear"
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/wadahiro/keycloak-discord";
+    description = "Keycloak Social Login extension for Discord";
+    license = licenses.apsl20;
+    maintainers = with maintainers; [ mkg20001 ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/keycloak/keycloak-metrics-spi/default.nix b/nixpkgs/pkgs/servers/keycloak/keycloak-metrics-spi/default.nix
new file mode 100644
index 000000000000..b5e23d0fe22d
--- /dev/null
+++ b/nixpkgs/pkgs/servers/keycloak/keycloak-metrics-spi/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, lib, fetchurl }:
+
+stdenv.mkDerivation rec {
+  pname = "keycloak-metrics-spi";
+  version = "2.5.3";
+
+  src = fetchurl {
+    url = "https://github.com/aerogear/keycloak-metrics-spi/releases/download/${version}/keycloak-metrics-spi-${version}.jar";
+    sha256 = "15lsy8wjw6nlfdfhllc45z9l5474p0lsghrwzzsssvd68bw54gwv";
+  };
+
+  dontUnpack = true;
+  dontBuild = true;
+
+  installPhase = ''
+    mkdir -p $out
+    install "$src" "$out"
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/aerogear/keycloak-metrics-spi";
+    description = "Keycloak Service Provider that adds a metrics endpoint";
+    license = licenses.apsl20;
+    maintainers = with maintainers; [ benley ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/keycloak/scim-for-keycloak/default.nix b/nixpkgs/pkgs/servers/keycloak/scim-for-keycloak/default.nix
new file mode 100644
index 000000000000..1ef06061326e
--- /dev/null
+++ b/nixpkgs/pkgs/servers/keycloak/scim-for-keycloak/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, maven
+, javaPackages
+}:
+
+javaPackages.mavenfod rec {
+  pname = "scim-for-keycloak";
+  version = "kc-15-b2"; # When updating also update mvnHash
+
+  src = fetchFromGitHub {
+    owner = "Captain-P-Goldfish";
+    repo = "scim-for-keycloak";
+    rev = version;
+    sha256 = "K34c7xISjEETI3jFkRLdZ0C8pZHTWtPtrrIzwC76Tv0=";
+  };
+
+  mvnHash = "sha256-kDYhXTEOAWH/dcRJalKtbwBpoxcD1aX9eqcRKs6ewbE=";
+
+  nativeBuildInputs = [
+    maven
+  ];
+
+  installPhase = ''
+    EAR=$(find -iname "*.ear")
+    install -D "$EAR" "$out/$(basename $EAR)"
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/Captain-P-Goldfish/scim-for-keycloak";
+    description = "A third party module that extends Keycloak with SCIM functionality";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ mkg20001 ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/klipper/default.nix b/nixpkgs/pkgs/servers/klipper/default.nix
index e2932c16a109..490bb9c9e094 100644
--- a/nixpkgs/pkgs/servers/klipper/default.nix
+++ b/nixpkgs/pkgs/servers/klipper/default.nix
@@ -36,6 +36,11 @@ stdenv.mkDerivation rec {
     mkdir -p $out/lib/klipper
     cp -r ./* $out/lib/klipper
 
+    # Moonraker expects `config_examples` and `docs` to be available
+    # under `klipper_path`
+    cp -r $src/docs $out/lib/docs
+    cp -r $src/config $out/lib/config
+
     chmod 755 $out/lib/klipper/klippy.py
     runHook postInstall
   '';
diff --git a/nixpkgs/pkgs/servers/libreddit/default.nix b/nixpkgs/pkgs/servers/libreddit/default.nix
index 121eeb991f93..1661104dcef2 100644
--- a/nixpkgs/pkgs/servers/libreddit/default.nix
+++ b/nixpkgs/pkgs/servers/libreddit/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "libreddit";
-  version = "0.21.7";
+  version = "0.22.5";
 
   src = fetchFromGitHub {
     owner = "spikecodes";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-pALPhSoamsU5xEbSoXFe+Cikl16gxTXccUATMkYB97M=";
+    sha256 = "sha256-yzYmlewM9NcNHPUmfGiUP0Px2s+sagZOU82wK4973rY=";
   };
 
-  cargoSha256 = "sha256-/P8wyFPCcCoGINtJ0qom3xLlkunH6xZPd7/7ynXmTy4=";
+  cargoSha256 = "sha256-XZkTfpi9stW13l7yo0LFZryAPITVZa9MALrSWSei5LU=";
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
diff --git a/nixpkgs/pkgs/servers/mapcache/default.nix b/nixpkgs/pkgs/servers/mapcache/default.nix
index 744a529496da..3eae9c2b33cb 100644
--- a/nixpkgs/pkgs/servers/mapcache/default.nix
+++ b/nixpkgs/pkgs/servers/mapcache/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mapcache";
-  version = "1.12.0";
+  version = "1.12.1";
 
   src = fetchFromGitHub {
     owner = "MapServer";
     repo = pname;
     rev = "rel-${lib.replaceStrings [ "." ] [ "-" ] version}";
-    sha256 = "sha256-13lOQC4PJtByhvceuF00uoipLFHrFiyJrsy2iWcEANc=";
+    sha256 = "sha256-NuiZMWcmsN5wDCd37Hvj3cazwT3Ea+OknV/YR3urZB0=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/servers/mastodon/default.nix b/nixpkgs/pkgs/servers/mastodon/default.nix
index a173c594c6b0..dfe1a6d26ec9 100644
--- a/nixpkgs/pkgs/servers/mastodon/default.nix
+++ b/nixpkgs/pkgs/servers/mastodon/default.nix
@@ -1,5 +1,6 @@
-{ lib, stdenv, nodejs-slim, mkYarnPackage, fetchFromGitHub, fetchpatch, bundlerEnv
+{ lib, stdenv, nodejs-slim, mkYarnPackage, fetchFromGitHub, fetchpatch, bundlerEnv, nixosTests
 , yarn, callPackage, imagemagick, ffmpeg, file, ruby_3_0, writeShellScript
+, fetchYarnDeps, fixup_yarn_lock
 
   # Allow building a fork or custom version of Mastodon:
 , pname ? "mastodon"
@@ -23,6 +24,11 @@ stdenv.mkDerivation rec {
     })
   ];
 
+  yarnOfflineCache = fetchYarnDeps {
+    yarnLock = "${src}/yarn.lock";
+    sha256 = "sha256-Z+nFMJcC2f+nDUxa2vPYnNezMLBGXfLdh+xMXPHqYyw=";
+  };
+
   mastodon-gems = bundlerEnv {
     name = "${pname}-gems-${version}";
     inherit version;
@@ -43,55 +49,43 @@ stdenv.mkDerivation rec {
     '';
   };
 
-  mastodon-js-modules = mkYarnPackage {
+  mastodon-modules = stdenv.mkDerivation {
     pname = "${pname}-modules";
-    yarnNix = dependenciesDir + "/yarn.nix";
-    packageJSON = dependenciesDir + "/package.json";
-    inherit src version;
-  };
-
-  mastodon-assets = stdenv.mkDerivation {
-    pname = "${pname}-assets";
     inherit src version;
 
-    buildInputs = [
-      mastodon-gems nodejs-slim yarn
-    ];
+    nativeBuildInputs = [ fixup_yarn_lock mastodon-gems nodejs-slim yarn ];
 
-    # FIXME: "production" would require OTP_SECRET to be set, so we use
-    # development here.
-    RAILS_ENV = "development";
+    RAILS_ENV = "production";
+    NODE_ENV = "production";
 
     buildPhase = ''
-      # Support Mastodon forks which don't call themselves 'mastodon' or which
-      # omit the organization name from package.json.
-      if [ "$(ls ${mastodon-js-modules}/libexec/* | grep node_modules)" ]; then
-          cp -r ${mastodon-js-modules}/libexec/*/node_modules node_modules
-      else
-          cp -r ${mastodon-js-modules}/libexec/*/*/node_modules node_modules
-      fi
-      chmod -R u+w node_modules
-      rake webpacker:compile
-      rails assets:precompile
+      export HOME=$PWD
+      fixup_yarn_lock ~/yarn.lock
+      yarn config --offline set yarn-offline-mirror ${yarnOfflineCache}
+      yarn install --offline --frozen-lockfile --ignore-engines --ignore-scripts --no-progress
+      patchShebangs ~/node_modules
+
+      OTP_SECRET=precompile_placeholder SECRET_KEY_BASE=precompile_placeholder \
+        rails assets:precompile
+      yarn cache clean --offline
+      rm -rf ~/node_modules/.cache
     '';
 
     installPhase = ''
       mkdir -p $out/public
+      cp -r node_modules $out/node_modules
       cp -r public/assets $out/public
       cp -r public/packs $out/public
     '';
   };
 
-  passthru.updateScript = callPackage ./update.nix {};
+  propagatedBuildInputs = [ imagemagick ffmpeg file mastodon-gems.wrappedRuby ];
+  buildInputs = [ mastodon-gems nodejs-slim ];
 
   buildPhase = ''
-    if [ "$(ls ${mastodon-js-modules}/libexec/* | grep node_modules)" ]; then
-        ln -s ${mastodon-js-modules}/libexec/*/node_modules node_modules
-    else
-        ln -s ${mastodon-js-modules}/libexec/*/*/node_modules node_modules
-    fi
-    ln -s ${mastodon-assets}/public/assets public/assets
-    ln -s ${mastodon-assets}/public/packs public/packs
+    ln -s ${mastodon-modules}/node_modules node_modules
+    ln -s ${mastodon-modules}/public/assets public/assets
+    ln -s ${mastodon-modules}/public/packs public/packs
 
     patchShebangs bin/
     for b in $(ls ${mastodon-gems}/bin/)
@@ -106,8 +100,6 @@ stdenv.mkDerivation rec {
     ln -s /tmp tmp
   '';
 
-  propagatedBuildInputs = [ imagemagick ffmpeg file mastodon-gems.wrappedRuby ];
-
   installPhase = let
     run-streaming = writeShellScript "run-streaming.sh" ''
       # NixOS helper script to consistently use the same NodeJS version the package was built with.
@@ -119,11 +111,16 @@ stdenv.mkDerivation rec {
     ln -s ${run-streaming} $out/run-streaming.sh
   '';
 
+  passthru = {
+    tests.mastodon = nixosTests.mastodon;
+    updateScript = callPackage ./update.nix {};
+  };
+
   meta = with lib; {
     description = "Self-hosted, globally interconnected microblogging software based on ActivityPub";
     homepage = "https://joinmastodon.org";
     license = licenses.agpl3Plus;
     platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" ];
-    maintainers = with maintainers; [ petabyteboy happy-river erictapen ];
+    maintainers = with maintainers; [ petabyteboy happy-river erictapen izorkin ];
   };
 }
diff --git a/nixpkgs/pkgs/servers/mastodon/package.json b/nixpkgs/pkgs/servers/mastodon/package.json
deleted file mode 100644
index 4c3e64141fd3..000000000000
--- a/nixpkgs/pkgs/servers/mastodon/package.json
+++ /dev/null
@@ -1,197 +0,0 @@
-{
-  "version": "3.4.6",
-  "name": "@mastodon/mastodon",
-  "license": "AGPL-3.0-or-later",
-  "engines": {
-    "node": ">=12"
-  },
-  "scripts": {
-    "postversion": "git push --tags",
-    "build:development": "cross-env RAILS_ENV=development NODE_ENV=development ./bin/webpack",
-    "build:production": "cross-env RAILS_ENV=production NODE_ENV=production ./bin/webpack",
-    "manage:translations": "node ./config/webpack/translationRunner.js",
-    "start": "node ./streaming/index.js",
-    "test": "${npm_execpath} run test:lint:js && ${npm_execpath} run test:jest",
-    "test:lint": "${npm_execpath} run test:lint:js && ${npm_execpath} run test:lint:sass",
-    "test:lint:js": "eslint --ext=js . --cache",
-    "test:lint:sass": "sass-lint -v",
-    "test:jest": "cross-env NODE_ENV=test jest --coverage"
-  },
-  "repository": {
-    "type": "git",
-    "url": "https://github.com/mastodon/mastodon.git"
-  },
-  "browserslist": [
-    "last 2 versions",
-    "not IE 11",
-    "iOS >= 9",
-    "not dead"
-  ],
-  "jest": {
-    "projects": [
-      "<rootDir>/app/javascript/mastodon"
-    ],
-    "testPathIgnorePatterns": [
-      "<rootDir>/node_modules/",
-      "<rootDir>/vendor/",
-      "<rootDir>/config/",
-      "<rootDir>/log/",
-      "<rootDir>/public/",
-      "<rootDir>/tmp/"
-    ],
-    "setupFiles": [
-      "raf/polyfill"
-    ],
-    "setupFilesAfterEnv": [
-      "<rootDir>/app/javascript/mastodon/test_setup.js"
-    ],
-    "collectCoverageFrom": [
-      "app/javascript/mastodon/**/*.js",
-      "!app/javascript/mastodon/features/emoji/emoji_compressed.js",
-      "!app/javascript/mastodon/locales/locale-data/*.js",
-      "!app/javascript/mastodon/service_worker/entry.js",
-      "!app/javascript/mastodon/test_setup.js"
-    ],
-    "coverageDirectory": "<rootDir>/coverage",
-    "moduleDirectories": [
-      "<rootDir>/node_modules",
-      "<rootDir>/app/javascript"
-    ]
-  },
-  "private": true,
-  "dependencies": {
-    "@babel/core": "^7.14.3",
-    "@babel/plugin-proposal-decorators": "^7.14.2",
-    "@babel/plugin-transform-react-inline-elements": "^7.12.13",
-    "@babel/plugin-transform-runtime": "^7.14.3",
-    "@babel/preset-env": "^7.14.4",
-    "@babel/preset-react": "^7.13.13",
-    "@babel/runtime": "^7.14.0",
-    "@gamestdio/websocket": "^0.3.2",
-    "@github/webauthn-json": "^0.5.7",
-    "@rails/ujs": "^6.1.3",
-    "array-includes": "^3.1.3",
-    "arrow-key-navigation": "^1.2.0",
-    "autoprefixer": "^9.8.6",
-    "axios": "^0.21.1",
-    "babel-loader": "^8.2.2",
-    "babel-plugin-lodash": "^3.3.4",
-    "babel-plugin-preval": "^5.0.0",
-    "babel-plugin-react-intl": "^6.2.0",
-    "babel-plugin-transform-react-remove-prop-types": "^0.4.24",
-    "babel-runtime": "^6.26.0",
-    "blurhash": "^1.1.3",
-    "classnames": "^2.3.1",
-    "color-blend": "^3.0.1",
-    "compression-webpack-plugin": "^6.1.1",
-    "cross-env": "^7.0.3",
-    "css-loader": "^5.2.6",
-    "cssnano": "^4.1.11",
-    "detect-passive-events": "^2.0.3",
-    "dotenv": "^9.0.2",
-    "emoji-mart": "^3.0.1",
-    "es6-symbol": "^3.1.3",
-    "escape-html": "^1.0.3",
-    "exif-js": "^2.3.0",
-    "express": "^4.17.1",
-    "file-loader": "^6.2.0",
-    "font-awesome": "^4.7.0",
-    "glob": "^7.1.7",
-    "history": "^4.10.1",
-    "http-link-header": "^1.0.3",
-    "immutable": "^3.8.2",
-    "imports-loader": "^1.2.0",
-    "intersection-observer": "^0.12.0",
-    "intl": "^1.2.5",
-    "intl-messageformat": "^2.2.0",
-    "intl-relativeformat": "^6.4.3",
-    "is-nan": "^1.3.2",
-    "js-yaml": "^4.1.0",
-    "lodash": "^4.17.21",
-    "mark-loader": "^0.1.6",
-    "marky": "^1.2.2",
-    "mini-css-extract-plugin": "^1.6.0",
-    "mkdirp": "^1.0.4",
-    "npmlog": "^4.1.2",
-    "object-assign": "^4.1.1",
-    "object-fit-images": "^3.2.3",
-    "object.values": "^1.1.3",
-    "offline-plugin": "^5.0.7",
-    "path-complete-extname": "^1.0.0",
-    "pg": "^8.5.0",
-    "postcss-loader": "^3.0.0",
-    "postcss-object-fit-images": "^1.1.2",
-    "promise.prototype.finally": "^3.1.2",
-    "prop-types": "^15.5.10",
-    "punycode": "^2.1.0",
-    "react": "^16.14.0",
-    "react-dom": "^16.14.0",
-    "react-hotkeys": "^1.1.4",
-    "react-immutable-proptypes": "^2.2.0",
-    "react-immutable-pure-component": "^2.2.2",
-    "react-intl": "^2.9.0",
-    "react-masonry-infinite": "^1.2.2",
-    "react-motion": "^0.5.2",
-    "react-notification": "^6.8.5",
-    "react-overlays": "^0.9.3",
-    "react-redux": "^7.2.4",
-    "react-redux-loading-bar": "^4.0.8",
-    "react-router-dom": "^4.1.1",
-    "react-router-scroll-4": "^1.0.0-beta.1",
-    "react-select": "^4.3.1",
-    "react-sparklines": "^1.7.0",
-    "react-swipeable-views": "^0.14.0",
-    "react-textarea-autosize": "^8.3.2",
-    "react-toggle": "^4.1.2",
-    "redis": "^3.1.2",
-    "redux": "^4.1.0",
-    "redux-immutable": "^4.0.0",
-    "redux-thunk": "^2.2.0",
-    "regenerator-runtime": "^0.13.7",
-    "rellax": "^1.12.1",
-    "requestidlecallback": "^0.3.0",
-    "reselect": "^4.0.0",
-    "rimraf": "^3.0.2",
-    "sass": "^1.34.0",
-    "sass-loader": "^10.2.0",
-    "stacktrace-js": "^2.0.2",
-    "stringz": "^2.1.0",
-    "substring-trie": "^1.0.2",
-    "terser-webpack-plugin": "^4.2.3",
-    "tesseract.js": "^2.1.1",
-    "throng": "^4.0.0",
-    "tiny-queue": "^0.2.1",
-    "twitter-text": "3.1.0",
-    "uuid": "^8.3.1",
-    "webpack": "^4.46.0",
-    "webpack-assets-manifest": "^4.0.6",
-    "webpack-bundle-analyzer": "^4.4.2",
-    "webpack-cli": "^3.3.12",
-    "webpack-merge": "^5.7.3",
-    "wicg-inert": "^3.1.1",
-    "ws": "^7.4.6",
-    "kind-of": "^6.0.3"
-  },
-  "devDependencies": {
-    "@testing-library/jest-dom": "^5.12.0",
-    "@testing-library/react": "^11.2.7",
-    "babel-eslint": "^10.1.0",
-    "babel-jest": "^27.0.2",
-    "eslint": "^7.27.0",
-    "eslint-plugin-import": "~2.23.4",
-    "eslint-plugin-jsx-a11y": "~6.4.1",
-    "eslint-plugin-promise": "~5.1.0",
-    "eslint-plugin-react": "~7.24.0",
-    "jest": "^26.6.3",
-    "raf": "^3.4.1",
-    "react-intl-translations-manager": "^5.0.3",
-    "react-test-renderer": "^16.14.0",
-    "sass-lint": "^1.13.1",
-    "webpack-dev-server": "^3.11.2",
-    "yargs": "^17.0.1"
-  },
-  "optionalDependencies": {
-    "bufferutil": "^4.0.3",
-    "utf-8-validate": "^5.0.5"
-  }
-}
diff --git a/nixpkgs/pkgs/servers/mastodon/resolutions.patch b/nixpkgs/pkgs/servers/mastodon/resolutions.patch
deleted file mode 100644
index f1f30725f1d4..000000000000
--- a/nixpkgs/pkgs/servers/mastodon/resolutions.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-diff --git a/package.json b/package.json
-index f485b1370..ce8e42699 100644
---- a/package.json
-+++ b/package.json
-@@ -168,7 +168,8 @@
-     "webpack-cli": "^3.3.12",
-     "webpack-merge": "^5.7.3",
-     "wicg-inert": "^3.1.1",
--    "ws": "^7.4.6"
-+    "ws": "^7.4.6",
-+    "kind-of": "^6.0.3"
-   },
-   "devDependencies": {
-     "@testing-library/jest-dom": "^5.12.0",
-@@ -188,9 +189,6 @@
-     "webpack-dev-server": "^3.11.2",
-     "yargs": "^17.0.1"
-   },
--  "resolutions": {
--    "kind-of": "^6.0.3"
--  },
-   "optionalDependencies": {
-     "bufferutil": "^4.0.3",
-     "utf-8-validate": "^5.0.5"
-diff --git a/yarn.lock b/yarn.lock
-index b8ea0f369..32e929c0d 100644
---- a/yarn.lock
-+++ b/yarn.lock
-@@ -5939,6 +5939,11 @@ is-boolean-object@^1.1.0:
-   dependencies:
-     call-bind "^1.0.2"
- 
-+is-buffer@^1.1.5:
-+  version "1.1.6"
-+  resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
-+  integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
-+
- is-callable@^1.1.4, is-callable@^1.2.2:
-   version "1.2.2"
-   resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.2.tgz#c7c6715cd22d4ddb48d3e19970223aceabb080d9"
-@@ -6971,7 +6976,26 @@ killable@^1.0.1:
-   resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892"
-   integrity sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==
- 
--kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0, kind-of@^4.0.0, kind-of@^5.0.0, kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3:
-+kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0:
-+  version "3.2.2"
-+  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
-+  integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=
-+  dependencies:
-+    is-buffer "^1.1.5"
-+
-+kind-of@^4.0.0:
-+  version "4.0.0"
-+  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57"
-+  integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc=
-+  dependencies:
-+    is-buffer "^1.1.5"
-+
-+kind-of@^5.0.0:
-+  version "5.1.0"
-+  resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d"
-+  integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==
-+
-+kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3:
-   version "6.0.3"
-   resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
-   integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
diff --git a/nixpkgs/pkgs/servers/mastodon/source.nix b/nixpkgs/pkgs/servers/mastodon/source.nix
index 921066e5df60..3493962e6bd9 100644
--- a/nixpkgs/pkgs/servers/mastodon/source.nix
+++ b/nixpkgs/pkgs/servers/mastodon/source.nix
@@ -7,5 +7,5 @@
   };
 in applyPatches {
   inherit src;
-  patches = [./resolutions.patch ./version.patch ];
+  patches = [ ];
 }
diff --git a/nixpkgs/pkgs/servers/mastodon/update.sh b/nixpkgs/pkgs/servers/mastodon/update.sh
index be06f52207d0..7d53845a8cba 100755
--- a/nixpkgs/pkgs/servers/mastodon/update.sh
+++ b/nixpkgs/pkgs/servers/mastodon/update.sh
@@ -50,7 +50,7 @@ if [[ -z "$REVISION" ]]; then
     REVISION="$VERSION"
 fi
 
-rm -f gemset.nix yarn.nix version.nix version.patch source.nix package.json
+rm -f gemset.nix version.nix source.nix
 TARGET_DIR="$PWD"
 
 
@@ -78,21 +78,6 @@ FETCHED_SOURCE_DIR=$(grep '^path is' $WORK_DIR/nix-prefetch-git.out | sed 's/^pa
 echo "Creating version.nix"
 echo \"$VERSION\" | sed 's/^"v/"/' > version.nix
 
-echo "Creating source.nix"
-# yarn2nix and mkYarnPackage want the version to be present in
-# package.json. Mastodon itself does not include the version in
-# package.json but at least one fork (Soapbox) does.
-if [ $(jq .version $FETCHED_SOURCE_DIR/package.json) == "null" ]; then
-    mkdir $WORK_DIR/a $WORK_DIR/b
-    cp $FETCHED_SOURCE_DIR/package.json $WORK_DIR/a
-    cd $WORK_DIR
-    jq "{version:$(cat $TARGET_DIR/version.nix)} + ." a/package.json > b/package.json
-    diff -Naur --label a/package.json --label b/package.json a b > $TARGET_DIR/version.patch || true
-    rm -rf a b tmp
-    cd $TARGET_DIR
-    PATCHES="$PATCHES ./version.patch "
-fi
-
 cat > source.nix << EOF
 # This file was generated by pkgs.mastodon.updateScript.
 { fetchgit, applyPatches }: let
@@ -111,11 +96,3 @@ SOURCE_DIR="$(nix-build --no-out-link -E '(import <nixpkgs> {}).callPackage ./so
 echo "Creating gemset.nix"
 bundix --lockfile="$SOURCE_DIR/Gemfile.lock" --gemfile="$SOURCE_DIR/Gemfile"
 echo "" >> $TARGET_DIR/gemset.nix  # Create trailing newline to please EditorConfig checks
-
-echo "Creating yarn.nix"
-cp -r $SOURCE_DIR/* $WORK_DIR
-chmod -R u+w $WORK_DIR
-cd $WORK_DIR
-yarn2nix > $TARGET_DIR/yarn.nix
-sed "s/https___.*_//g" -i $TARGET_DIR/yarn.nix
-cp $WORK_DIR/package.json $TARGET_DIR
diff --git a/nixpkgs/pkgs/servers/mastodon/version.patch b/nixpkgs/pkgs/servers/mastodon/version.patch
deleted file mode 100644
index 2182de89b827..000000000000
--- a/nixpkgs/pkgs/servers/mastodon/version.patch
+++ /dev/null
@@ -1,9 +0,0 @@
-diff -Naur --label a/package.json --label b/package.json a/package.json b/package.json
---- a/package.json
-+++ b/package.json
-@@ -1,4 +1,5 @@
- {
-+  "version": "3.4.6",
-   "name": "@mastodon/mastodon",
-   "license": "AGPL-3.0-or-later",
-   "engines": {
diff --git a/nixpkgs/pkgs/servers/mastodon/yarn.nix b/nixpkgs/pkgs/servers/mastodon/yarn.nix
deleted file mode 100644
index 3ceff9187d9c..000000000000
--- a/nixpkgs/pkgs/servers/mastodon/yarn.nix
+++ /dev/null
@@ -1,12637 +0,0 @@
-{ fetchurl, fetchgit, linkFarm, runCommand, gnutar }: rec {
-  offline_cache = linkFarm "offline" packages;
-  packages = [
-    {
-      name = "_babel_code_frame___code_frame_7.12.11.tgz";
-      path = fetchurl {
-        name = "_babel_code_frame___code_frame_7.12.11.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz";
-        sha512 = "Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==";
-      };
-    }
-    {
-      name = "_babel_code_frame___code_frame_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_code_frame___code_frame_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.13.tgz";
-        sha512 = "HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==";
-      };
-    }
-    {
-      name = "_babel_compat_data___compat_data_7.14.4.tgz";
-      path = fetchurl {
-        name = "_babel_compat_data___compat_data_7.14.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.4.tgz";
-        sha512 = "i2wXrWQNkH6JplJQGn3Rd2I4Pij8GdHkXwHMxm+zV5YG/Jci+bCNrWZEWC4o+umiDkRrRs4dVzH3X4GP7vyjQQ==";
-      };
-    }
-    {
-      name = "_babel_core___core_7.14.3.tgz";
-      path = fetchurl {
-        name = "_babel_core___core_7.14.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/core/-/core-7.14.3.tgz";
-        sha512 = "jB5AmTKOCSJIZ72sd78ECEhuPiDMKlQdDI/4QRI6lzYATx5SSogS1oQA2AoPecRCknm30gHi2l+QVvNUu3wZAg==";
-      };
-    }
-    {
-      name = "_babel_generator___generator_7.14.3.tgz";
-      path = fetchurl {
-        name = "_babel_generator___generator_7.14.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.14.3.tgz";
-        sha512 = "bn0S6flG/j0xtQdz3hsjJ624h3W0r3llttBMfyHX3YrZ/KtLYr15bjA0FXkgW7FpvrDuTuElXeVjiKlYRpnOFA==";
-      };
-    }
-    {
-      name = "_babel_helper_annotate_as_pure___helper_annotate_as_pure_7.10.4.tgz";
-      path = fetchurl {
-        name = "_babel_helper_annotate_as_pure___helper_annotate_as_pure_7.10.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz";
-        sha512 = "XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA==";
-      };
-    }
-    {
-      name = "_babel_helper_annotate_as_pure___helper_annotate_as_pure_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_helper_annotate_as_pure___helper_annotate_as_pure_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.13.tgz";
-        sha512 = "7YXfX5wQ5aYM/BOlbSccHDbuXXFPxeoUmfWtz8le2yTkTZc+BxsiEnENFoi2SlmA8ewDkG2LgIMIVzzn2h8kfw==";
-      };
-    }
-    {
-      name = "_babel_helper_builder_binary_assignment_operator_visitor___helper_builder_binary_assignment_operator_visitor_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_helper_builder_binary_assignment_operator_visitor___helper_builder_binary_assignment_operator_visitor_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.12.13.tgz";
-        sha512 = "CZOv9tGphhDRlVjVkAgm8Nhklm9RzSmWpX2my+t7Ua/KT616pEzXsQCjinzvkRvHWJ9itO4f296efroX23XCMA==";
-      };
-    }
-    {
-      name = "_babel_helper_builder_react_jsx___helper_builder_react_jsx_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_helper_builder_react_jsx___helper_builder_react_jsx_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.12.13.tgz";
-        sha512 = "QN7Z5FByIOFESQXxoNYVPU7xONzrDW2fv7oKKVkj+62N3Dx1IZaVu/RF9QhV9XyCZE/xiYNfuQ1JsiL1jduT1A==";
-      };
-    }
-    {
-      name = "_babel_helper_compilation_targets___helper_compilation_targets_7.14.4.tgz";
-      path = fetchurl {
-        name = "_babel_helper_compilation_targets___helper_compilation_targets_7.14.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.4.tgz";
-        sha512 = "JgdzOYZ/qGaKTVkn5qEDV/SXAh8KcyUVkCoSWGN8T3bwrgd6m+/dJa2kVGi6RJYJgEYPBdZ84BZp9dUjNWkBaA==";
-      };
-    }
-    {
-      name = "_babel_helper_create_class_features_plugin___helper_create_class_features_plugin_7.14.3.tgz";
-      path = fetchurl {
-        name = "_babel_helper_create_class_features_plugin___helper_create_class_features_plugin_7.14.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.3.tgz";
-        sha512 = "BnEfi5+6J2Lte9LeiL6TxLWdIlEv9Woacc1qXzXBgbikcOzMRM2Oya5XGg/f/ngotv1ej2A/b+3iJH8wbS1+lQ==";
-      };
-    }
-    {
-      name = "_babel_helper_create_class_features_plugin___helper_create_class_features_plugin_7.14.4.tgz";
-      path = fetchurl {
-        name = "_babel_helper_create_class_features_plugin___helper_create_class_features_plugin_7.14.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.4.tgz";
-        sha512 = "idr3pthFlDCpV+p/rMgGLGYIVtazeatrSOQk8YzO2pAepIjQhCN3myeihVg58ax2bbbGK9PUE1reFi7axOYIOw==";
-      };
-    }
-    {
-      name = "_babel_helper_create_regexp_features_plugin___helper_create_regexp_features_plugin_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_helper_create_regexp_features_plugin___helper_create_regexp_features_plugin_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.13.tgz";
-        sha512 = "XC+kiA0J3at6E85dL5UnCYfVOcIZ834QcAY0TIpgUVnz0zDzg+0TtvZTnJ4g9L1dPRGe30Qi03XCIS4tYCLtqw==";
-      };
-    }
-    {
-      name = "_babel_helper_define_polyfill_provider___helper_define_polyfill_provider_0.2.0.tgz";
-      path = fetchurl {
-        name = "_babel_helper_define_polyfill_provider___helper_define_polyfill_provider_0.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.0.tgz";
-        sha512 = "JT8tHuFjKBo8NnaUbblz7mIu1nnvUDiHVjXXkulZULyidvo/7P6TY7+YqpV37IfF+KUFxmlK04elKtGKXaiVgw==";
-      };
-    }
-    {
-      name = "_babel_helper_explode_assignable_expression___helper_explode_assignable_expression_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_helper_explode_assignable_expression___helper_explode_assignable_expression_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.12.13.tgz";
-        sha512 = "5loeRNvMo9mx1dA/d6yNi+YiKziJZFylZnCo1nmFF4qPU4yJ14abhWESuSMQSlQxWdxdOFzxXjk/PpfudTtYyw==";
-      };
-    }
-    {
-      name = "_babel_helper_function_name___helper_function_name_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_helper_function_name___helper_function_name_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz";
-        sha512 = "TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==";
-      };
-    }
-    {
-      name = "_babel_helper_function_name___helper_function_name_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_helper_function_name___helper_function_name_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.14.2.tgz";
-        sha512 = "NYZlkZRydxw+YT56IlhIcS8PAhb+FEUiOzuhFTfqDyPmzAhRge6ua0dQYT/Uh0t/EDHq05/i+e5M2d4XvjgarQ==";
-      };
-    }
-    {
-      name = "_babel_helper_get_function_arity___helper_get_function_arity_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_helper_get_function_arity___helper_get_function_arity_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz";
-        sha512 = "DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==";
-      };
-    }
-    {
-      name = "_babel_helper_hoist_variables___helper_hoist_variables_7.13.0.tgz";
-      path = fetchurl {
-        name = "_babel_helper_hoist_variables___helper_hoist_variables_7.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.13.0.tgz";
-        sha512 = "0kBzvXiIKfsCA0y6cFEIJf4OdzfpRuNk4+YTeHZpGGc666SATFKTz6sRncwFnQk7/ugJ4dSrCj6iJuvW4Qwr2g==";
-      };
-    }
-    {
-      name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.13.tgz";
-        sha512 = "B+7nN0gIL8FZ8SvMcF+EPyB21KnCcZHQZFczCxbiNGV/O0rsrSBlWGLzmtBJ3GMjSVMIm4lpFhR+VdVBuIsUcQ==";
-      };
-    }
-    {
-      name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.13.12.tgz";
-      path = fetchurl {
-        name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.13.12.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz";
-        sha512 = "48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==";
-      };
-    }
-    {
-      name = "_babel_helper_module_imports___helper_module_imports_7.13.12.tgz";
-      path = fetchurl {
-        name = "_babel_helper_module_imports___helper_module_imports_7.13.12.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz";
-        sha512 = "4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==";
-      };
-    }
-    {
-      name = "_babel_helper_module_transforms___helper_module_transforms_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_helper_module_transforms___helper_module_transforms_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.14.2.tgz";
-        sha512 = "OznJUda/soKXv0XhpvzGWDnml4Qnwp16GN+D/kZIdLsWoHj05kyu8Rm5kXmMef+rVJZ0+4pSGLkeixdqNUATDA==";
-      };
-    }
-    {
-      name = "_babel_helper_optimise_call_expression___helper_optimise_call_expression_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_helper_optimise_call_expression___helper_optimise_call_expression_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz";
-        sha512 = "BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==";
-      };
-    }
-    {
-      name = "_babel_helper_plugin_utils___helper_plugin_utils_7.13.0.tgz";
-      path = fetchurl {
-        name = "_babel_helper_plugin_utils___helper_plugin_utils_7.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz";
-        sha512 = "ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ==";
-      };
-    }
-    {
-      name = "_babel_helper_remap_async_to_generator___helper_remap_async_to_generator_7.13.0.tgz";
-      path = fetchurl {
-        name = "_babel_helper_remap_async_to_generator___helper_remap_async_to_generator_7.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.13.0.tgz";
-        sha512 = "pUQpFBE9JvC9lrQbpX0TmeNIy5s7GnZjna2lhhcHC7DzgBs6fWn722Y5cfwgrtrqc7NAJwMvOa0mKhq6XaE4jg==";
-      };
-    }
-    {
-      name = "_babel_helper_replace_supers___helper_replace_supers_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_helper_replace_supers___helper_replace_supers_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.12.13.tgz";
-        sha512 = "pctAOIAMVStI2TMLhozPKbf5yTEXc0OJa0eENheb4w09SrgOWEs+P4nTOZYJQCqs8JlErGLDPDJTiGIp3ygbLg==";
-      };
-    }
-    {
-      name = "_babel_helper_replace_supers___helper_replace_supers_7.13.12.tgz";
-      path = fetchurl {
-        name = "_babel_helper_replace_supers___helper_replace_supers_7.13.12.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz";
-        sha512 = "Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw==";
-      };
-    }
-    {
-      name = "_babel_helper_replace_supers___helper_replace_supers_7.14.3.tgz";
-      path = fetchurl {
-        name = "_babel_helper_replace_supers___helper_replace_supers_7.14.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.14.3.tgz";
-        sha512 = "Rlh8qEWZSTfdz+tgNV/N4gz1a0TMNwCUcENhMjHTHKp3LseYH5Jha0NSlyTQWMnjbYcwFt+bqAMqSLHVXkQ6UA==";
-      };
-    }
-    {
-      name = "_babel_helper_replace_supers___helper_replace_supers_7.14.4.tgz";
-      path = fetchurl {
-        name = "_babel_helper_replace_supers___helper_replace_supers_7.14.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.14.4.tgz";
-        sha512 = "zZ7uHCWlxfEAAOVDYQpEf/uyi1dmeC7fX4nCf2iz9drnCwi1zvwXL3HwWWNXUQEJ1k23yVn3VbddiI9iJEXaTQ==";
-      };
-    }
-    {
-      name = "_babel_helper_simple_access___helper_simple_access_7.13.12.tgz";
-      path = fetchurl {
-        name = "_babel_helper_simple_access___helper_simple_access_7.13.12.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz";
-        sha512 = "7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA==";
-      };
-    }
-    {
-      name = "_babel_helper_skip_transparent_expression_wrappers___helper_skip_transparent_expression_wrappers_7.12.1.tgz";
-      path = fetchurl {
-        name = "_babel_helper_skip_transparent_expression_wrappers___helper_skip_transparent_expression_wrappers_7.12.1.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz";
-        sha512 = "Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA==";
-      };
-    }
-    {
-      name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz";
-        sha512 = "tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==";
-      };
-    }
-    {
-      name = "_babel_helper_validator_identifier___helper_validator_identifier_7.12.11.tgz";
-      path = fetchurl {
-        name = "_babel_helper_validator_identifier___helper_validator_identifier_7.12.11.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz";
-        sha512 = "np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==";
-      };
-    }
-    {
-      name = "_babel_helper_validator_identifier___helper_validator_identifier_7.14.0.tgz";
-      path = fetchurl {
-        name = "_babel_helper_validator_identifier___helper_validator_identifier_7.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz";
-        sha512 = "V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==";
-      };
-    }
-    {
-      name = "_babel_helper_validator_option___helper_validator_option_7.12.17.tgz";
-      path = fetchurl {
-        name = "_babel_helper_validator_option___helper_validator_option_7.12.17.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz";
-        sha512 = "TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw==";
-      };
-    }
-    {
-      name = "_babel_helper_wrap_function___helper_wrap_function_7.13.0.tgz";
-      path = fetchurl {
-        name = "_babel_helper_wrap_function___helper_wrap_function_7.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.13.0.tgz";
-        sha512 = "1UX9F7K3BS42fI6qd2A4BjKzgGjToscyZTdp1DjknHLCIvpgne6918io+aL5LXFcER/8QWiwpoY902pVEqgTXA==";
-      };
-    }
-    {
-      name = "_babel_helpers___helpers_7.14.0.tgz";
-      path = fetchurl {
-        name = "_babel_helpers___helpers_7.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.14.0.tgz";
-        sha512 = "+ufuXprtQ1D1iZTO/K9+EBRn+qPWMJjZSw/S0KlFrxCw4tkrzv9grgpDHkY9MeQTjTY8i2sp7Jep8DfU6tN9Mg==";
-      };
-    }
-    {
-      name = "_babel_highlight___highlight_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_highlight___highlight_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.12.13.tgz";
-        sha512 = "kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==";
-      };
-    }
-    {
-      name = "_babel_parser___parser_7.14.3.tgz";
-      path = fetchurl {
-        name = "_babel_parser___parser_7.14.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.3.tgz";
-        sha512 = "7MpZDIfI7sUC5zWo2+foJ50CSI5lcqDehZ0lVgIhSi4bFEk94fLAKlF3Q0nzSQQ+ca0lm+O6G9ztKVBeu8PMRQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_bugfix_v8_spread_parameters_in_optional_chaining___plugin_bugfix_v8_spread_parameters_in_optional_chaining_7.13.12.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_bugfix_v8_spread_parameters_in_optional_chaining___plugin_bugfix_v8_spread_parameters_in_optional_chaining_7.13.12.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12.tgz";
-        sha512 = "d0u3zWKcoZf379fOeJdr1a5WPDny4aOFZ6hlfKivgK0LY7ZxNfoaHL2fWwdGtHyVvra38FC+HVYkO+byfSA8AQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_async_generator_functions___plugin_proposal_async_generator_functions_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_async_generator_functions___plugin_proposal_async_generator_functions_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.2.tgz";
-        sha512 = "b1AM4F6fwck4N8ItZ/AtC4FP/cqZqmKRQ4FaTDutwSYyjuhtvsGEMLK4N/ztV/ImP40BjIDyMgBQAeAMsQYVFQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_class_properties___plugin_proposal_class_properties_7.13.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_class_properties___plugin_proposal_class_properties_7.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.13.0.tgz";
-        sha512 = "KnTDjFNC1g+45ka0myZNvSBFLhNCLN+GeGYLDEA8Oq7MZ6yMgfLoIRh86GRT0FjtJhZw8JyUskP9uvj5pHM9Zg==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_class_static_block___plugin_proposal_class_static_block_7.14.3.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_class_static_block___plugin_proposal_class_static_block_7.14.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.14.3.tgz";
-        sha512 = "HEjzp5q+lWSjAgJtSluFDrGGosmwTgKwCXdDQZvhKsRlwv3YdkUEqxNrrjesJd+B9E9zvr1PVPVBvhYZ9msjvQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_decorators___plugin_proposal_decorators_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_decorators___plugin_proposal_decorators_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.14.2.tgz";
-        sha512 = "LauAqDd/VjQDtae58QgBcEOE42NNP+jB2OE+XeC3KBI/E+BhhRjtr5viCIrj1hmu1YvrguLipIPRJZmS5yUcFw==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_dynamic_import___plugin_proposal_dynamic_import_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_dynamic_import___plugin_proposal_dynamic_import_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.14.2.tgz";
-        sha512 = "oxVQZIWFh91vuNEMKltqNsKLFWkOIyJc95k2Gv9lWVyDfPUQGSSlbDEgWuJUU1afGE9WwlzpucMZ3yDRHIItkA==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_export_namespace_from___plugin_proposal_export_namespace_from_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_export_namespace_from___plugin_proposal_export_namespace_from_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.14.2.tgz";
-        sha512 = "sRxW3z3Zp3pFfLAgVEvzTFutTXax837oOatUIvSG9o5gRj9mKwm3br1Se5f4QalTQs9x4AzlA/HrCWbQIHASUQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_json_strings___plugin_proposal_json_strings_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_json_strings___plugin_proposal_json_strings_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.14.2.tgz";
-        sha512 = "w2DtsfXBBJddJacXMBhElGEYqCZQqN99Se1qeYn8DVLB33owlrlLftIbMzn5nz1OITfDVknXF433tBrLEAOEjA==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_logical_assignment_operators___plugin_proposal_logical_assignment_operators_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_logical_assignment_operators___plugin_proposal_logical_assignment_operators_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.2.tgz";
-        sha512 = "1JAZtUrqYyGsS7IDmFeaem+/LJqujfLZ2weLR9ugB0ufUPjzf8cguyVT1g5im7f7RXxuLq1xUxEzvm68uYRtGg==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_nullish_coalescing_operator___plugin_proposal_nullish_coalescing_operator_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_nullish_coalescing_operator___plugin_proposal_nullish_coalescing_operator_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.2.tgz";
-        sha512 = "ebR0zU9OvI2N4qiAC38KIAK75KItpIPTpAtd2r4OZmMFeKbKJpUFLYP2EuDut82+BmYi8sz42B+TfTptJ9iG5Q==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_numeric_separator___plugin_proposal_numeric_separator_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_numeric_separator___plugin_proposal_numeric_separator_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.14.2.tgz";
-        sha512 = "DcTQY9syxu9BpU3Uo94fjCB3LN9/hgPS8oUL7KrSW3bA2ePrKZZPJcc5y0hoJAM9dft3pGfErtEUvxXQcfLxUg==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_object_rest_spread___plugin_proposal_object_rest_spread_7.14.4.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_object_rest_spread___plugin_proposal_object_rest_spread_7.14.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.4.tgz";
-        sha512 = "AYosOWBlyyXEagrPRfLJ1enStufsr7D1+ddpj8OLi9k7B6+NdZ0t/9V7Fh+wJ4g2Jol8z2JkgczYqtWrZd4vbA==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_optional_catch_binding___plugin_proposal_optional_catch_binding_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_optional_catch_binding___plugin_proposal_optional_catch_binding_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.2.tgz";
-        sha512 = "XtkJsmJtBaUbOxZsNk0Fvrv8eiqgneug0A6aqLFZ4TSkar2L5dSXWcnUKHgmjJt49pyB/6ZHvkr3dPgl9MOWRQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_optional_chaining___plugin_proposal_optional_chaining_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_optional_chaining___plugin_proposal_optional_chaining_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.2.tgz";
-        sha512 = "qQByMRPwMZJainfig10BoaDldx/+VDtNcrA7qdNaEOAj6VXud+gfrkA8j4CRAU5HjnWREXqIpSpH30qZX1xivA==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_private_methods___plugin_proposal_private_methods_7.13.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_private_methods___plugin_proposal_private_methods_7.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.13.0.tgz";
-        sha512 = "MXyyKQd9inhx1kDYPkFRVOBXQ20ES8Pto3T7UZ92xj2mY0EVD8oAVzeyYuVfy/mxAdTSIayOvg+aVzcHV2bn6Q==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_private_property_in_object___plugin_proposal_private_property_in_object_7.14.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_private_property_in_object___plugin_proposal_private_property_in_object_7.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.14.0.tgz";
-        sha512 = "59ANdmEwwRUkLjB7CRtwJxxwtjESw+X2IePItA+RGQh+oy5RmpCh/EvVVvh5XQc3yxsm5gtv0+i9oBZhaDNVTg==";
-      };
-    }
-    {
-      name = "_babel_plugin_proposal_unicode_property_regex___plugin_proposal_unicode_property_regex_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_proposal_unicode_property_regex___plugin_proposal_unicode_property_regex_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.12.13.tgz";
-        sha512 = "XyJmZidNfofEkqFV5VC/bLabGmO5QzenPO/YOfGuEbgU+2sSwMmio3YLb4WtBgcmmdwZHyVyv8on77IUjQ5Gvg==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_async_generators___plugin_syntax_async_generators_7.8.4.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_async_generators___plugin_syntax_async_generators_7.8.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz";
-        sha512 = "tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_bigint___plugin_syntax_bigint_7.8.3.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_bigint___plugin_syntax_bigint_7.8.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz";
-        sha512 = "wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_class_properties___plugin_syntax_class_properties_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_class_properties___plugin_syntax_class_properties_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz";
-        sha512 = "fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_class_static_block___plugin_syntax_class_static_block_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_class_static_block___plugin_syntax_class_static_block_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.12.13.tgz";
-        sha512 = "ZmKQ0ZXR0nYpHZIIuj9zE7oIqCx2hw9TKi+lIo73NNrMPAZGHfS92/VRV0ZmPj6H2ffBgyFHXvJ5NYsNeEaP2A==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_decorators___plugin_syntax_decorators_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_decorators___plugin_syntax_decorators_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.12.13.tgz";
-        sha512 = "Rw6aIXGuqDLr6/LoBBYE57nKOzQpz/aDkKlMqEwH+Vp0MXbG6H/TfRjaY343LKxzAKAMXIHsQ8JzaZKuDZ9MwA==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_dynamic_import___plugin_syntax_dynamic_import_7.8.3.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_dynamic_import___plugin_syntax_dynamic_import_7.8.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz";
-        sha512 = "5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_export_namespace_from___plugin_syntax_export_namespace_from_7.8.3.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_export_namespace_from___plugin_syntax_export_namespace_from_7.8.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz";
-        sha512 = "MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_import_meta___plugin_syntax_import_meta_7.10.4.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_import_meta___plugin_syntax_import_meta_7.10.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz";
-        sha512 = "Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_json_strings___plugin_syntax_json_strings_7.8.3.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_json_strings___plugin_syntax_json_strings_7.8.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz";
-        sha512 = "lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_jsx___plugin_syntax_jsx_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_jsx___plugin_syntax_jsx_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.13.tgz";
-        sha512 = "d4HM23Q1K7oq/SLNmG6mRt85l2csmQ0cHRaxRXjKW0YFdEXqlZ5kzFQKH5Uc3rDJECgu+yCRgPkG04Mm98R/1g==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_logical_assignment_operators___plugin_syntax_logical_assignment_operators_7.10.4.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_logical_assignment_operators___plugin_syntax_logical_assignment_operators_7.10.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz";
-        sha512 = "d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_nullish_coalescing_operator___plugin_syntax_nullish_coalescing_operator_7.8.3.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_nullish_coalescing_operator___plugin_syntax_nullish_coalescing_operator_7.8.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz";
-        sha512 = "aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_numeric_separator___plugin_syntax_numeric_separator_7.10.4.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_numeric_separator___plugin_syntax_numeric_separator_7.10.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz";
-        sha512 = "9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_object_rest_spread___plugin_syntax_object_rest_spread_7.8.3.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_object_rest_spread___plugin_syntax_object_rest_spread_7.8.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz";
-        sha512 = "XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_optional_catch_binding___plugin_syntax_optional_catch_binding_7.8.3.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_optional_catch_binding___plugin_syntax_optional_catch_binding_7.8.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz";
-        sha512 = "6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_optional_chaining___plugin_syntax_optional_chaining_7.8.3.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_optional_chaining___plugin_syntax_optional_chaining_7.8.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz";
-        sha512 = "KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_private_property_in_object___plugin_syntax_private_property_in_object_7.14.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_private_property_in_object___plugin_syntax_private_property_in_object_7.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.0.tgz";
-        sha512 = "bda3xF8wGl5/5btF794utNOL0Jw+9jE5C1sLZcoK7c4uonE/y3iQiyG+KbkF3WBV/paX58VCpjhxLPkdj5Fe4w==";
-      };
-    }
-    {
-      name = "_babel_plugin_syntax_top_level_await___plugin_syntax_top_level_await_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_syntax_top_level_await___plugin_syntax_top_level_await_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.13.tgz";
-        sha512 = "A81F9pDwyS7yM//KwbCSDqy3Uj4NMIurtplxphWxoYtNPov7cJsDkAFNNyVlIZ3jwGycVsurZ+LtOA8gZ376iQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_arrow_functions___plugin_transform_arrow_functions_7.13.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_arrow_functions___plugin_transform_arrow_functions_7.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.13.0.tgz";
-        sha512 = "96lgJagobeVmazXFaDrbmCLQxBysKu7U6Do3mLsx27gf5Dk85ezysrs2BZUpXD703U/Su1xTBDxxar2oa4jAGg==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_async_to_generator___plugin_transform_async_to_generator_7.13.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_async_to_generator___plugin_transform_async_to_generator_7.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.13.0.tgz";
-        sha512 = "3j6E004Dx0K3eGmhxVJxwwI89CTJrce7lg3UrtFuDAVQ/2+SJ/h/aSFOeE6/n0WB1GsOffsJp6MnPQNQ8nmwhg==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_block_scoped_functions___plugin_transform_block_scoped_functions_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_block_scoped_functions___plugin_transform_block_scoped_functions_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.13.tgz";
-        sha512 = "zNyFqbc3kI/fVpqwfqkg6RvBgFpC4J18aKKMmv7KdQ/1GgREapSJAykLMVNwfRGO3BtHj3YQZl8kxCXPcVMVeg==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_block_scoping___plugin_transform_block_scoping_7.14.4.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_block_scoping___plugin_transform_block_scoping_7.14.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.4.tgz";
-        sha512 = "5KdpkGxsZlTk+fPleDtGKsA+pon28+ptYmMO8GBSa5fHERCJWAzj50uAfCKBqq42HO+Zot6JF1x37CRprwmN4g==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_classes___plugin_transform_classes_7.14.4.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_classes___plugin_transform_classes_7.14.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.4.tgz";
-        sha512 = "p73t31SIj6y94RDVX57rafVjttNr8MvKEgs5YFatNB/xC68zM3pyosuOEcQmYsYlyQaGY9R7rAULVRcat5FKJQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_computed_properties___plugin_transform_computed_properties_7.13.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_computed_properties___plugin_transform_computed_properties_7.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.13.0.tgz";
-        sha512 = "RRqTYTeZkZAz8WbieLTvKUEUxZlUTdmL5KGMyZj7FnMfLNKV4+r5549aORG/mgojRmFlQMJDUupwAMiF2Q7OUg==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_destructuring___plugin_transform_destructuring_7.14.4.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_destructuring___plugin_transform_destructuring_7.14.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.4.tgz";
-        sha512 = "JyywKreTCGTUsL1OKu1A3ms/R1sTP0WxbpXlALeGzF53eB3bxtNkYdMj9SDgK7g6ImPy76J5oYYKoTtQImlhQA==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_dotall_regex___plugin_transform_dotall_regex_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_dotall_regex___plugin_transform_dotall_regex_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.12.13.tgz";
-        sha512 = "foDrozE65ZFdUC2OfgeOCrEPTxdB3yjqxpXh8CH+ipd9CHd4s/iq81kcUpyH8ACGNEPdFqbtzfgzbT/ZGlbDeQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_duplicate_keys___plugin_transform_duplicate_keys_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_duplicate_keys___plugin_transform_duplicate_keys_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.12.13.tgz";
-        sha512 = "NfADJiiHdhLBW3pulJlJI2NB0t4cci4WTZ8FtdIuNc2+8pslXdPtRRAEWqUY+m9kNOk2eRYbTAOipAxlrOcwwQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_exponentiation_operator___plugin_transform_exponentiation_operator_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_exponentiation_operator___plugin_transform_exponentiation_operator_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.13.tgz";
-        sha512 = "fbUelkM1apvqez/yYx1/oICVnGo2KM5s63mhGylrmXUxK/IAXSIf87QIxVfZldWf4QsOafY6vV3bX8aMHSvNrA==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_for_of___plugin_transform_for_of_7.13.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_for_of___plugin_transform_for_of_7.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.13.0.tgz";
-        sha512 = "IHKT00mwUVYE0zzbkDgNRP6SRzvfGCYsOxIRz8KsiaaHCcT9BWIkO+H9QRJseHBLOGBZkHUdHiqj6r0POsdytg==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_function_name___plugin_transform_function_name_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_function_name___plugin_transform_function_name_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.13.tgz";
-        sha512 = "6K7gZycG0cmIwwF7uMK/ZqeCikCGVBdyP2J5SKNCXO5EOHcqi+z7Jwf8AmyDNcBgxET8DrEtCt/mPKPyAzXyqQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_literals___plugin_transform_literals_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_literals___plugin_transform_literals_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.13.tgz";
-        sha512 = "FW+WPjSR7hiUxMcKqyNjP05tQ2kmBCdpEpZHY1ARm96tGQCCBvXKnpjILtDplUnJ/eHZ0lALLM+d2lMFSpYJrQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_member_expression_literals___plugin_transform_member_expression_literals_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_member_expression_literals___plugin_transform_member_expression_literals_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.13.tgz";
-        sha512 = "kxLkOsg8yir4YeEPHLuO2tXP9R/gTjpuTOjshqSpELUN3ZAg2jfDnKUvzzJxObun38sw3wm4Uu69sX/zA7iRvg==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_modules_amd___plugin_transform_modules_amd_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_modules_amd___plugin_transform_modules_amd_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.2.tgz";
-        sha512 = "hPC6XBswt8P3G2D1tSV2HzdKvkqOpmbyoy+g73JG0qlF/qx2y3KaMmXb1fLrpmWGLZYA0ojCvaHdzFWjlmV+Pw==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_modules_commonjs___plugin_transform_modules_commonjs_7.14.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_modules_commonjs___plugin_transform_modules_commonjs_7.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.0.tgz";
-        sha512 = "EX4QePlsTaRZQmw9BsoPeyh5OCtRGIhwfLquhxGp5e32w+dyL8htOcDwamlitmNFK6xBZYlygjdye9dbd9rUlQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_modules_systemjs___plugin_transform_modules_systemjs_7.13.8.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_modules_systemjs___plugin_transform_modules_systemjs_7.13.8.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.13.8.tgz";
-        sha512 = "hwqctPYjhM6cWvVIlOIe27jCIBgHCsdH2xCJVAYQm7V5yTMoilbVMi9f6wKg0rpQAOn6ZG4AOyvCqFF/hUh6+A==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_modules_umd___plugin_transform_modules_umd_7.14.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_modules_umd___plugin_transform_modules_umd_7.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.14.0.tgz";
-        sha512 = "nPZdnWtXXeY7I87UZr9VlsWme3Y0cfFFE41Wbxz4bbaexAjNMInXPFUpRRUJ8NoMm0Cw+zxbqjdPmLhcjfazMw==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_named_capturing_groups_regex___plugin_transform_named_capturing_groups_regex_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_named_capturing_groups_regex___plugin_transform_named_capturing_groups_regex_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.12.13.tgz";
-        sha512 = "Xsm8P2hr5hAxyYblrfACXpQKdQbx4m2df9/ZZSQ8MAhsadw06+jW7s9zsSw6he+mJZXRlVMyEnVktJo4zjk1WA==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_new_target___plugin_transform_new_target_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_new_target___plugin_transform_new_target_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.12.13.tgz";
-        sha512 = "/KY2hbLxrG5GTQ9zzZSc3xWiOy379pIETEhbtzwZcw9rvuaVV4Fqy7BYGYOWZnaoXIQYbbJ0ziXLa/sKcGCYEQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_object_super___plugin_transform_object_super_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_object_super___plugin_transform_object_super_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.13.tgz";
-        sha512 = "JzYIcj3XtYspZDV8j9ulnoMPZZnF/Cj0LUxPOjR89BdBVx+zYJI9MdMIlUZjbXDX+6YVeS6I3e8op+qQ3BYBoQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_parameters___plugin_transform_parameters_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_parameters___plugin_transform_parameters_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.2.tgz";
-        sha512 = "NxoVmA3APNCC1JdMXkdYXuQS+EMdqy0vIwyDHeKHiJKRxmp1qGSdb0JLEIoPRhkx6H/8Qi3RJ3uqOCYw8giy9A==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_property_literals___plugin_transform_property_literals_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_property_literals___plugin_transform_property_literals_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.13.tgz";
-        sha512 = "nqVigwVan+lR+g8Fj8Exl0UQX2kymtjcWfMOYM1vTYEKujeyv2SkMgazf2qNcK7l4SDiKyTA/nHCPqL4e2zo1A==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_react_display_name___plugin_transform_react_display_name_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_react_display_name___plugin_transform_react_display_name_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.12.13.tgz";
-        sha512 = "MprESJzI9O5VnJZrL7gg1MpdqmiFcUv41Jc7SahxYsNP2kDkFqClxxTZq+1Qv4AFCamm+GXMRDQINNn+qrxmiA==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_react_inline_elements___plugin_transform_react_inline_elements_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_react_inline_elements___plugin_transform_react_inline_elements_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-inline-elements/-/plugin-transform-react-inline-elements-7.12.13.tgz";
-        sha512 = "FkqNco564LsuwJFEtTzDihxNGqNAstTfP9hORNYaNtYqdlOEIF5jsD4K5R3BfmVaIsGRPBGvsgmCwm0KCkkSFw==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_react_jsx_development___plugin_transform_react_jsx_development_7.12.17.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_react_jsx_development___plugin_transform_react_jsx_development_7.12.17.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.12.17.tgz";
-        sha512 = "BPjYV86SVuOaudFhsJR1zjgxxOhJDt6JHNoD48DxWEIxUCAMjV1ys6DYw4SDYZh0b1QsS2vfIA9t/ZsQGsDOUQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_react_jsx___plugin_transform_react_jsx_7.13.12.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_react_jsx___plugin_transform_react_jsx_7.13.12.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.13.12.tgz";
-        sha512 = "jcEI2UqIcpCqB5U5DRxIl0tQEProI2gcu+g8VTIqxLO5Iidojb4d77q+fwGseCvd8af/lJ9masp4QWzBXFE2xA==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_react_pure_annotations___plugin_transform_react_pure_annotations_7.12.1.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_react_pure_annotations___plugin_transform_react_pure_annotations_7.12.1.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.12.1.tgz";
-        sha512 = "RqeaHiwZtphSIUZ5I85PEH19LOSzxfuEazoY7/pWASCAIBuATQzpSVD+eT6MebeeZT2F4eSL0u4vw6n4Nm0Mjg==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_regenerator___plugin_transform_regenerator_7.13.15.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_regenerator___plugin_transform_regenerator_7.13.15.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.13.15.tgz";
-        sha512 = "Bk9cOLSz8DiurcMETZ8E2YtIVJbFCPGW28DJWUakmyVWtQSm6Wsf0p4B4BfEr/eL2Nkhe/CICiUiMOCi1TPhuQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_reserved_words___plugin_transform_reserved_words_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_reserved_words___plugin_transform_reserved_words_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.12.13.tgz";
-        sha512 = "xhUPzDXxZN1QfiOy/I5tyye+TRz6lA7z6xaT4CLOjPRMVg1ldRf0LHw0TDBpYL4vG78556WuHdyO9oi5UmzZBg==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_runtime___plugin_transform_runtime_7.14.3.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_runtime___plugin_transform_runtime_7.14.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.14.3.tgz";
-        sha512 = "t960xbi8wpTFE623ef7sd+UpEC5T6EEguQlTBJDEO05+XwnIWVfuqLw/vdLWY6IdFmtZE+65CZAfByT39zRpkg==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_shorthand_properties___plugin_transform_shorthand_properties_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_shorthand_properties___plugin_transform_shorthand_properties_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.13.tgz";
-        sha512 = "xpL49pqPnLtf0tVluuqvzWIgLEhuPpZzvs2yabUHSKRNlN7ScYU7aMlmavOeyXJZKgZKQRBlh8rHbKiJDraTSw==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_spread___plugin_transform_spread_7.13.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_spread___plugin_transform_spread_7.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.13.0.tgz";
-        sha512 = "V6vkiXijjzYeFmQTr3dBxPtZYLPcUfY34DebOU27jIl2M/Y8Egm52Hw82CSjjPqd54GTlJs5x+CR7HeNr24ckg==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_sticky_regex___plugin_transform_sticky_regex_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_sticky_regex___plugin_transform_sticky_regex_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.13.tgz";
-        sha512 = "Jc3JSaaWT8+fr7GRvQP02fKDsYk4K/lYwWq38r/UGfaxo89ajud321NH28KRQ7xy1Ybc0VUE5Pz8psjNNDUglg==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_template_literals___plugin_transform_template_literals_7.13.0.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_template_literals___plugin_transform_template_literals_7.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.13.0.tgz";
-        sha512 = "d67umW6nlfmr1iehCcBv69eSUSySk1EsIS8aTDX4Xo9qajAh6mYtcl4kJrBkGXuxZPEgVr7RVfAvNW6YQkd4Mw==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_typeof_symbol___plugin_transform_typeof_symbol_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_typeof_symbol___plugin_transform_typeof_symbol_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.13.tgz";
-        sha512 = "eKv/LmUJpMnu4npgfvs3LiHhJua5fo/CysENxa45YCQXZwKnGCQKAg87bvoqSW1fFT+HA32l03Qxsm8ouTY3ZQ==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_unicode_escapes___plugin_transform_unicode_escapes_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_unicode_escapes___plugin_transform_unicode_escapes_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.12.13.tgz";
-        sha512 = "0bHEkdwJ/sN/ikBHfSmOXPypN/beiGqjo+o4/5K+vxEFNPRPdImhviPakMKG4x96l85emoa0Z6cDflsdBusZbw==";
-      };
-    }
-    {
-      name = "_babel_plugin_transform_unicode_regex___plugin_transform_unicode_regex_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_plugin_transform_unicode_regex___plugin_transform_unicode_regex_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.13.tgz";
-        sha512 = "mDRzSNY7/zopwisPZ5kM9XKCfhchqIYwAKRERtEnhYscZB79VRekuRSoYbN0+KVe3y8+q1h6A4svXtP7N+UoCA==";
-      };
-    }
-    {
-      name = "_babel_preset_env___preset_env_7.14.4.tgz";
-      path = fetchurl {
-        name = "_babel_preset_env___preset_env_7.14.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.14.4.tgz";
-        sha512 = "GwMMsuAnDtULyOtuxHhzzuSRxFeP0aR/LNzrHRzP8y6AgDNgqnrfCCBm/1cRdTU75tRs28Eh76poHLcg9VF0LA==";
-      };
-    }
-    {
-      name = "_babel_preset_modules___preset_modules_0.1.4.tgz";
-      path = fetchurl {
-        name = "_babel_preset_modules___preset_modules_0.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.4.tgz";
-        sha512 = "J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg==";
-      };
-    }
-    {
-      name = "_babel_preset_react___preset_react_7.13.13.tgz";
-      path = fetchurl {
-        name = "_babel_preset_react___preset_react_7.13.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.13.13.tgz";
-        sha512 = "gx+tDLIE06sRjKJkVtpZ/t3mzCDOnPG+ggHZG9lffUbX8+wC739x20YQc9V35Do6ZAxaUc/HhVHIiOzz5MvDmA==";
-      };
-    }
-    {
-      name = "_babel_runtime_corejs3___runtime_corejs3_7.10.3.tgz";
-      path = fetchurl {
-        name = "_babel_runtime_corejs3___runtime_corejs3_7.10.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.10.3.tgz";
-        sha512 = "HA7RPj5xvJxQl429r5Cxr2trJwOfPjKiqhCXcdQPSqO2G0RHPZpXu4fkYmBaTKCp2c/jRaMK9GB/lN+7zvvFPw==";
-      };
-    }
-    {
-      name = "_babel_runtime___runtime_7.0.0.tgz";
-      path = fetchurl {
-        name = "_babel_runtime___runtime_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.0.0.tgz";
-        sha512 = "7hGhzlcmg01CvH1EHdSPVXYX1aJ8KCEyz6I9xYIi/asDtzBPMyMhVibhM/K6g/5qnKBwjZtp10bNZIEFTRW1MA==";
-      };
-    }
-    {
-      name = "_babel_runtime___runtime_7.14.0.tgz";
-      path = fetchurl {
-        name = "_babel_runtime___runtime_7.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.14.0.tgz";
-        sha512 = "JELkvo/DlpNdJ7dlyw/eY7E0suy5i5GQH+Vlxaq1nsNJ+H7f4Vtv3jMeCEgRhZZQFXTjldYfQgv2qmM6M1v5wA==";
-      };
-    }
-    {
-      name = "_babel_template___template_7.12.13.tgz";
-      path = fetchurl {
-        name = "_babel_template___template_7.12.13.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.12.13.tgz";
-        sha512 = "/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==";
-      };
-    }
-    {
-      name = "_babel_traverse___traverse_7.14.2.tgz";
-      path = fetchurl {
-        name = "_babel_traverse___traverse_7.14.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.14.2.tgz";
-        sha512 = "TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA==";
-      };
-    }
-    {
-      name = "_babel_types___types_7.14.4.tgz";
-      path = fetchurl {
-        name = "_babel_types___types_7.14.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.14.4.tgz";
-        sha512 = "lCj4aIs0xUefJFQnwwQv2Bxg7Omd6bgquZ6LGC+gGMh6/s5qDVfjuCMlDmYQ15SLsWHd9n+X3E75lKIhl5Lkiw==";
-      };
-    }
-    {
-      name = "_bcoe_v8_coverage___v8_coverage_0.2.3.tgz";
-      path = fetchurl {
-        name = "_bcoe_v8_coverage___v8_coverage_0.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz";
-        sha512 = "0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==";
-      };
-    }
-    {
-      name = "_cnakazawa_watch___watch_1.0.4.tgz";
-      path = fetchurl {
-        name = "_cnakazawa_watch___watch_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz";
-        sha512 = "v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==";
-      };
-    }
-    {
-      name = "_emotion_cache___cache_11.4.0.tgz";
-      path = fetchurl {
-        name = "_emotion_cache___cache_11.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.4.0.tgz";
-        sha512 = "Zx70bjE7LErRO9OaZrhf22Qye1y4F7iDl+ITjet0J+i+B88PrAOBkKvaAWhxsZf72tDLajwCgfCjJ2dvH77C3g==";
-      };
-    }
-    {
-      name = "_emotion_hash___hash_0.8.0.tgz";
-      path = fetchurl {
-        name = "_emotion_hash___hash_0.8.0.tgz";
-        url  = "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.8.0.tgz";
-        sha512 = "kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==";
-      };
-    }
-    {
-      name = "_emotion_memoize___memoize_0.7.5.tgz";
-      path = fetchurl {
-        name = "_emotion_memoize___memoize_0.7.5.tgz";
-        url  = "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.5.tgz";
-        sha512 = "igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ==";
-      };
-    }
-    {
-      name = "_emotion_react___react_11.1.4.tgz";
-      path = fetchurl {
-        name = "_emotion_react___react_11.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/@emotion/react/-/react-11.1.4.tgz";
-        sha512 = "9gkhrW8UjV4IGRnEe4/aGPkUxoGS23aD9Vu6JCGfEDyBYL+nGkkRBoMFGAzCT9qFdyUvQp4UUtErbKWxq/JS4A==";
-      };
-    }
-    {
-      name = "_emotion_serialize___serialize_1.0.0.tgz";
-      path = fetchurl {
-        name = "_emotion_serialize___serialize_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.0.0.tgz";
-        sha512 = "zt1gm4rhdo5Sry8QpCOpopIUIKU+mUSpV9WNmFILUraatm5dttNEaYzUWWSboSMUE6PtN2j1cAsuvcugfdI3mw==";
-      };
-    }
-    {
-      name = "_emotion_sheet___sheet_1.0.1.tgz";
-      path = fetchurl {
-        name = "_emotion_sheet___sheet_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.0.1.tgz";
-        sha512 = "GbIvVMe4U+Zc+929N1V7nW6YYJtidj31lidSmdYcWozwoBIObXBnaJkKNDjZrLm9Nc0BR+ZyHNaRZxqNZbof5g==";
-      };
-    }
-    {
-      name = "_emotion_unitless___unitless_0.7.5.tgz";
-      path = fetchurl {
-        name = "_emotion_unitless___unitless_0.7.5.tgz";
-        url  = "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz";
-        sha512 = "OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==";
-      };
-    }
-    {
-      name = "_emotion_utils___utils_1.0.0.tgz";
-      path = fetchurl {
-        name = "_emotion_utils___utils_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.0.0.tgz";
-        sha512 = "mQC2b3XLDs6QCW+pDQDiyO/EdGZYOygE8s5N5rrzjSI4M3IejPE/JPndCBwRT9z982aqQNi6beWs1UeayrQxxA==";
-      };
-    }
-    {
-      name = "_emotion_weak_memoize___weak_memoize_0.2.5.tgz";
-      path = fetchurl {
-        name = "_emotion_weak_memoize___weak_memoize_0.2.5.tgz";
-        url  = "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz";
-        sha512 = "6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==";
-      };
-    }
-    {
-      name = "_eslint_eslintrc___eslintrc_0.4.1.tgz";
-      path = fetchurl {
-        name = "_eslint_eslintrc___eslintrc_0.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.1.tgz";
-        sha512 = "5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ==";
-      };
-    }
-    {
-      name = "_formatjs_intl_unified_numberformat___intl_unified_numberformat_3.3.6.tgz";
-      path = fetchurl {
-        name = "_formatjs_intl_unified_numberformat___intl_unified_numberformat_3.3.6.tgz";
-        url  = "https://registry.yarnpkg.com/@formatjs/intl-unified-numberformat/-/intl-unified-numberformat-3.3.6.tgz";
-        sha512 = "VQYswh9Pxf4kN6FQvKprAQwSJrF93eJstCDPM1HIt3c3O6NqPFWNWhZ91PLTppOV11rLYsFK11ZxiGbnLNiPTg==";
-      };
-    }
-    {
-      name = "_formatjs_intl_utils___intl_utils_2.2.5.tgz";
-      path = fetchurl {
-        name = "_formatjs_intl_utils___intl_utils_2.2.5.tgz";
-        url  = "https://registry.yarnpkg.com/@formatjs/intl-utils/-/intl-utils-2.2.5.tgz";
-        sha512 = "p7gcmazKROteL4IECCp03Qrs790fZ8tbemUAjQu0+K0AaAlK49rI1SIFFq3LzDUAqXIshV95JJhRe/yXxkal5g==";
-      };
-    }
-    {
-      name = "_gamestdio_websocket___websocket_0.3.2.tgz";
-      path = fetchurl {
-        name = "_gamestdio_websocket___websocket_0.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/@gamestdio/websocket/-/websocket-0.3.2.tgz";
-        sha512 = "J3n5SKim+ZoLbe44hRGI/VYAwSMCeIJuBy+FfP6EZaujEpNchPRFcIsVQLWAwpU1bP2Ji63rC+rEUOd1vjUB6Q==";
-      };
-    }
-    {
-      name = "_github_webauthn_json___webauthn_json_0.5.7.tgz";
-      path = fetchurl {
-        name = "_github_webauthn_json___webauthn_json_0.5.7.tgz";
-        url  = "https://registry.yarnpkg.com/@github/webauthn-json/-/webauthn-json-0.5.7.tgz";
-        sha512 = "SUYsttDxFSvWvvJssJpwzjmRCqYfdfqC9VCmAHQYfdKCVelyJteCHo9/lK1CB72mx/jrl6cFNY08aua4J2jIyg==";
-      };
-    }
-    {
-      name = "_istanbuljs_load_nyc_config___load_nyc_config_1.1.0.tgz";
-      path = fetchurl {
-        name = "_istanbuljs_load_nyc_config___load_nyc_config_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz";
-        sha512 = "VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==";
-      };
-    }
-    {
-      name = "_istanbuljs_schema___schema_0.1.2.tgz";
-      path = fetchurl {
-        name = "_istanbuljs_schema___schema_0.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz";
-        sha512 = "tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==";
-      };
-    }
-    {
-      name = "_jest_console___console_26.6.2.tgz";
-      path = fetchurl {
-        name = "_jest_console___console_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/console/-/console-26.6.2.tgz";
-        sha512 = "IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g==";
-      };
-    }
-    {
-      name = "_jest_core___core_26.6.3.tgz";
-      path = fetchurl {
-        name = "_jest_core___core_26.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/core/-/core-26.6.3.tgz";
-        sha512 = "xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw==";
-      };
-    }
-    {
-      name = "_jest_environment___environment_26.6.2.tgz";
-      path = fetchurl {
-        name = "_jest_environment___environment_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/environment/-/environment-26.6.2.tgz";
-        sha512 = "nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA==";
-      };
-    }
-    {
-      name = "_jest_fake_timers___fake_timers_26.6.2.tgz";
-      path = fetchurl {
-        name = "_jest_fake_timers___fake_timers_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.6.2.tgz";
-        sha512 = "14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA==";
-      };
-    }
-    {
-      name = "_jest_globals___globals_26.6.2.tgz";
-      path = fetchurl {
-        name = "_jest_globals___globals_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/globals/-/globals-26.6.2.tgz";
-        sha512 = "85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA==";
-      };
-    }
-    {
-      name = "_jest_reporters___reporters_26.6.2.tgz";
-      path = fetchurl {
-        name = "_jest_reporters___reporters_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.6.2.tgz";
-        sha512 = "h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw==";
-      };
-    }
-    {
-      name = "_jest_source_map___source_map_26.6.2.tgz";
-      path = fetchurl {
-        name = "_jest_source_map___source_map_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.6.2.tgz";
-        sha512 = "YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA==";
-      };
-    }
-    {
-      name = "_jest_test_result___test_result_26.6.2.tgz";
-      path = fetchurl {
-        name = "_jest_test_result___test_result_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.6.2.tgz";
-        sha512 = "5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ==";
-      };
-    }
-    {
-      name = "_jest_test_sequencer___test_sequencer_26.6.3.tgz";
-      path = fetchurl {
-        name = "_jest_test_sequencer___test_sequencer_26.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz";
-        sha512 = "YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw==";
-      };
-    }
-    {
-      name = "_jest_transform___transform_26.6.2.tgz";
-      path = fetchurl {
-        name = "_jest_transform___transform_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/transform/-/transform-26.6.2.tgz";
-        sha512 = "E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA==";
-      };
-    }
-    {
-      name = "_jest_transform___transform_27.0.2.tgz";
-      path = fetchurl {
-        name = "_jest_transform___transform_27.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/transform/-/transform-27.0.2.tgz";
-        sha512 = "H8sqKlgtDfVog/s9I4GG2XMbi4Ar7RBxjsKQDUhn2XHAi3NG+GoQwWMER+YfantzExbjNqQvqBHzo/G2pfTiPw==";
-      };
-    }
-    {
-      name = "_jest_types___types_25.5.0.tgz";
-      path = fetchurl {
-        name = "_jest_types___types_25.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/types/-/types-25.5.0.tgz";
-        sha512 = "OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==";
-      };
-    }
-    {
-      name = "_jest_types___types_26.6.2.tgz";
-      path = fetchurl {
-        name = "_jest_types___types_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz";
-        sha512 = "fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==";
-      };
-    }
-    {
-      name = "_jest_types___types_27.0.2.tgz";
-      path = fetchurl {
-        name = "_jest_types___types_27.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/@jest/types/-/types-27.0.2.tgz";
-        sha512 = "XpjCtJ/99HB4PmyJ2vgmN7vT+JLP7RW1FBT9RgnMFS4Dt7cvIyBee8O3/j98aUZ34ZpenPZFqmaaObWSeL65dg==";
-      };
-    }
-    {
-      name = "_npmcli_move_file___move_file_1.0.1.tgz";
-      path = fetchurl {
-        name = "_npmcli_move_file___move_file_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.0.1.tgz";
-        sha512 = "Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw==";
-      };
-    }
-    {
-      name = "_polka_url___url_1.0.0_next.11.tgz";
-      path = fetchurl {
-        name = "_polka_url___url_1.0.0_next.11.tgz";
-        url  = "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.11.tgz";
-        sha512 = "3NsZsJIA/22P3QUyrEDNA2D133H4j224twJrdipXN38dpnIOzAbUDtOwkcJ5pXmn75w7LSQDjA4tO9dm1XlqlA==";
-      };
-    }
-    {
-      name = "_rails_ujs___ujs_6.1.3.tgz";
-      path = fetchurl {
-        name = "_rails_ujs___ujs_6.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/@rails/ujs/-/ujs-6.1.3.tgz";
-        sha512 = "9mip5o+LVouWAqLMNJWhxda+D5uP+4RziNECgOGJlL6k3rc5SC/ljCHpV9Cym4i3oeGZkpZJ2tu4frCwt84kzQ==";
-      };
-    }
-    {
-      name = "_sinonjs_commons___commons_1.8.1.tgz";
-      path = fetchurl {
-        name = "_sinonjs_commons___commons_1.8.1.tgz";
-        url  = "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.1.tgz";
-        sha512 = "892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==";
-      };
-    }
-    {
-      name = "_sinonjs_fake_timers___fake_timers_6.0.1.tgz";
-      path = fetchurl {
-        name = "_sinonjs_fake_timers___fake_timers_6.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz";
-        sha512 = "MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==";
-      };
-    }
-    {
-      name = "_testing_library_dom___dom_7.28.1.tgz";
-      path = fetchurl {
-        name = "_testing_library_dom___dom_7.28.1.tgz";
-        url  = "https://registry.yarnpkg.com/@testing-library/dom/-/dom-7.28.1.tgz";
-        sha512 = "acv3l6kDwZkQif/YqJjstT3ks5aaI33uxGNVIQmdKzbZ2eMKgg3EV2tB84GDdc72k3Kjhl6mO8yUt6StVIdRDg==";
-      };
-    }
-    {
-      name = "_testing_library_jest_dom___jest_dom_5.12.0.tgz";
-      path = fetchurl {
-        name = "_testing_library_jest_dom___jest_dom_5.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-5.12.0.tgz";
-        sha512 = "N9Y82b2Z3j6wzIoAqajlKVF1Zt7sOH0pPee0sUHXHc5cv2Fdn23r+vpWm0MBBoGJtPOly5+Bdx1lnc3CD+A+ow==";
-      };
-    }
-    {
-      name = "_testing_library_react___react_11.2.7.tgz";
-      path = fetchurl {
-        name = "_testing_library_react___react_11.2.7.tgz";
-        url  = "https://registry.yarnpkg.com/@testing-library/react/-/react-11.2.7.tgz";
-        sha512 = "tzRNp7pzd5QmbtXNG/mhdcl7Awfu/Iz1RaVHY75zTdOkmHCuzMhRL83gWHSgOAcjS3CCbyfwUHMZgRJb4kAfpA==";
-      };
-    }
-    {
-      name = "_types_aria_query___aria_query_4.2.0.tgz";
-      path = fetchurl {
-        name = "_types_aria_query___aria_query_4.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-4.2.0.tgz";
-        sha512 = "iIgQNzCm0v7QMhhe4Jjn9uRh+I6GoPmt03CbEtwx3ao8/EfoQcmgtqH4vQ5Db/lxiIGaWDv6nwvunuh0RyX0+A==";
-      };
-    }
-    {
-      name = "_types_babel__core___babel__core_7.1.14.tgz";
-      path = fetchurl {
-        name = "_types_babel__core___babel__core_7.1.14.tgz";
-        url  = "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.14.tgz";
-        sha512 = "zGZJzzBUVDo/eV6KgbE0f0ZI7dInEYvo12Rb70uNQDshC3SkRMb67ja0GgRHZgAX3Za6rhaWlvbDO8rrGyAb1g==";
-      };
-    }
-    {
-      name = "_types_babel__generator___babel__generator_7.6.1.tgz";
-      path = fetchurl {
-        name = "_types_babel__generator___babel__generator_7.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.1.tgz";
-        sha512 = "bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==";
-      };
-    }
-    {
-      name = "_types_babel__template___babel__template_7.0.2.tgz";
-      path = fetchurl {
-        name = "_types_babel__template___babel__template_7.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz";
-        sha512 = "/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==";
-      };
-    }
-    {
-      name = "_types_babel__traverse___babel__traverse_7.0.13.tgz";
-      path = fetchurl {
-        name = "_types_babel__traverse___babel__traverse_7.0.13.tgz";
-        url  = "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.13.tgz";
-        sha512 = "i+zS7t6/s9cdQvbqKDARrcbrPvtJGlbYsMkazo03nTAK3RX9FNrLllXys22uiTGJapPOTZTQ35nHh4ISph4SLQ==";
-      };
-    }
-    {
-      name = "_types_babel__traverse___babel__traverse_7.0.15.tgz";
-      path = fetchurl {
-        name = "_types_babel__traverse___babel__traverse_7.0.15.tgz";
-        url  = "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.15.tgz";
-        sha512 = "Pzh9O3sTK8V6I1olsXpCfj2k/ygO2q1X0vhhnDrEQyYLHZesWz+zMZMVcwXLCYf0U36EtmyYaFGPfXlTtDHe3A==";
-      };
-    }
-    {
-      name = "_types_color_name___color_name_1.1.1.tgz";
-      path = fetchurl {
-        name = "_types_color_name___color_name_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz";
-        sha512 = "rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==";
-      };
-    }
-    {
-      name = "_types_events___events_3.0.0.tgz";
-      path = fetchurl {
-        name = "_types_events___events_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz";
-        sha512 = "EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==";
-      };
-    }
-    {
-      name = "_types_glob___glob_7.1.1.tgz";
-      path = fetchurl {
-        name = "_types_glob___glob_7.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.1.tgz";
-        sha512 = "1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==";
-      };
-    }
-    {
-      name = "_types_graceful_fs___graceful_fs_4.1.3.tgz";
-      path = fetchurl {
-        name = "_types_graceful_fs___graceful_fs_4.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.3.tgz";
-        sha512 = "AiHRaEB50LQg0pZmm659vNBb9f4SJ0qrAnteuzhSeAUcJKxoYgEnprg/83kppCnc2zvtCKbdZry1a5pVY3lOTQ==";
-      };
-    }
-    {
-      name = "_types_hoist_non_react_statics___hoist_non_react_statics_3.3.1.tgz";
-      path = fetchurl {
-        name = "_types_hoist_non_react_statics___hoist_non_react_statics_3.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz";
-        sha512 = "iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==";
-      };
-    }
-    {
-      name = "_types_istanbul_lib_coverage___istanbul_lib_coverage_2.0.3.tgz";
-      path = fetchurl {
-        name = "_types_istanbul_lib_coverage___istanbul_lib_coverage_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz";
-        sha512 = "sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==";
-      };
-    }
-    {
-      name = "_types_istanbul_lib_report___istanbul_lib_report_3.0.0.tgz";
-      path = fetchurl {
-        name = "_types_istanbul_lib_report___istanbul_lib_report_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz";
-        sha512 = "plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==";
-      };
-    }
-    {
-      name = "_types_istanbul_reports___istanbul_reports_1.1.2.tgz";
-      path = fetchurl {
-        name = "_types_istanbul_reports___istanbul_reports_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz";
-        sha512 = "P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==";
-      };
-    }
-    {
-      name = "_types_istanbul_reports___istanbul_reports_3.0.0.tgz";
-      path = fetchurl {
-        name = "_types_istanbul_reports___istanbul_reports_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz";
-        sha512 = "nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA==";
-      };
-    }
-    {
-      name = "_types_jest___jest_26.0.3.tgz";
-      path = fetchurl {
-        name = "_types_jest___jest_26.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.3.tgz";
-        sha512 = "v89ga1clpVL/Y1+YI0eIu1VMW+KU7Xl8PhylVtDKVWaSUHBHYPLXMQGBdrpHewaKoTvlXkksbYqPgz8b4cmRZg==";
-      };
-    }
-    {
-      name = "_types_json_schema___json_schema_7.0.6.tgz";
-      path = fetchurl {
-        name = "_types_json_schema___json_schema_7.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz";
-        sha512 = "3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==";
-      };
-    }
-    {
-      name = "_types_json5___json5_0.0.29.tgz";
-      path = fetchurl {
-        name = "_types_json5___json5_0.0.29.tgz";
-        url  = "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz";
-        sha1 = "7ihweulOEdK4J7y+UnC86n8+ce4=";
-      };
-    }
-    {
-      name = "_types_minimatch___minimatch_3.0.3.tgz";
-      path = fetchurl {
-        name = "_types_minimatch___minimatch_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz";
-        sha512 = "tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==";
-      };
-    }
-    {
-      name = "_types_node___node_14.11.1.tgz";
-      path = fetchurl {
-        name = "_types_node___node_14.11.1.tgz";
-        url  = "https://registry.yarnpkg.com/@types/node/-/node-14.11.1.tgz";
-        sha512 = "oTQgnd0hblfLsJ6BvJzzSL+Inogp3lq9fGgqRkMB/ziKMgEUaFl801OncOzUmalfzt14N0oPHMK47ipl+wbTIw==";
-      };
-    }
-    {
-      name = "_types_normalize_package_data___normalize_package_data_2.4.0.tgz";
-      path = fetchurl {
-        name = "_types_normalize_package_data___normalize_package_data_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz";
-        sha512 = "f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==";
-      };
-    }
-    {
-      name = "_types_parse_json___parse_json_4.0.0.tgz";
-      path = fetchurl {
-        name = "_types_parse_json___parse_json_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz";
-        sha512 = "//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==";
-      };
-    }
-    {
-      name = "_types_prettier___prettier_2.0.2.tgz";
-      path = fetchurl {
-        name = "_types_prettier___prettier_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.0.2.tgz";
-        sha512 = "IkVfat549ggtkZUthUzEX49562eGikhSYeVGX97SkMFn+sTZrgRewXjQ4tPKFPCykZHkX1Zfd9OoELGqKU2jJA==";
-      };
-    }
-    {
-      name = "_types_prop_types___prop_types_15.7.3.tgz";
-      path = fetchurl {
-        name = "_types_prop_types___prop_types_15.7.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz";
-        sha512 = "KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==";
-      };
-    }
-    {
-      name = "_types_q___q_1.5.2.tgz";
-      path = fetchurl {
-        name = "_types_q___q_1.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/@types/q/-/q-1.5.2.tgz";
-        sha512 = "ce5d3q03Ex0sy4R14722Rmt6MT07Ua+k4FwDfdcToYJcMKNtRVQvJ6JCAPdAmAnbRb6CsX6aYb9m96NGod9uTw==";
-      };
-    }
-    {
-      name = "_types_react_redux___react_redux_7.1.16.tgz";
-      path = fetchurl {
-        name = "_types_react_redux___react_redux_7.1.16.tgz";
-        url  = "https://registry.yarnpkg.com/@types/react-redux/-/react-redux-7.1.16.tgz";
-        sha512 = "f/FKzIrZwZk7YEO9E1yoxIuDNRiDducxkFlkw/GNMGEnK9n4K8wJzlJBghpSuOVDgEUHoDkDF7Gi9lHNQR4siw==";
-      };
-    }
-    {
-      name = "_types_react___react_17.0.3.tgz";
-      path = fetchurl {
-        name = "_types_react___react_17.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/react/-/react-17.0.3.tgz";
-        sha512 = "wYOUxIgs2HZZ0ACNiIayItyluADNbONl7kt8lkLjVK8IitMH5QMyAh75Fwhmo37r1m7L2JaFj03sIfxBVDvRAg==";
-      };
-    }
-    {
-      name = "_types_scheduler___scheduler_0.16.1.tgz";
-      path = fetchurl {
-        name = "_types_scheduler___scheduler_0.16.1.tgz";
-        url  = "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.1.tgz";
-        sha512 = "EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==";
-      };
-    }
-    {
-      name = "_types_schema_utils___schema_utils_1.0.0.tgz";
-      path = fetchurl {
-        name = "_types_schema_utils___schema_utils_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/schema-utils/-/schema-utils-1.0.0.tgz";
-        sha512 = "YesPanU1+WCigC/Aj1Mga8UCOjHIfMNHZ3zzDsUY7lI8GlKnh/Kv2QwJOQ+jNQ36Ru7IfzSedlG14hppYaN13A==";
-      };
-    }
-    {
-      name = "_types_stack_utils___stack_utils_2.0.0.tgz";
-      path = fetchurl {
-        name = "_types_stack_utils___stack_utils_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.0.tgz";
-        sha512 = "RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw==";
-      };
-    }
-    {
-      name = "_types_testing_library__jest_dom___testing_library__jest_dom_5.9.1.tgz";
-      path = fetchurl {
-        name = "_types_testing_library__jest_dom___testing_library__jest_dom_5.9.1.tgz";
-        url  = "https://registry.yarnpkg.com/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.9.1.tgz";
-        sha512 = "yYn5EKHO3MPEMSOrcAb1dLWY+68CG29LiXKsWmmpVHqoP5+ZRiAVLyUHvPNrO2dABDdUGZvavMsaGpWNjM6N2g==";
-      };
-    }
-    {
-      name = "_types_yargs_parser___yargs_parser_15.0.0.tgz";
-      path = fetchurl {
-        name = "_types_yargs_parser___yargs_parser_15.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz";
-        sha512 = "FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==";
-      };
-    }
-    {
-      name = "_types_yargs___yargs_15.0.5.tgz";
-      path = fetchurl {
-        name = "_types_yargs___yargs_15.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.5.tgz";
-        sha512 = "Dk/IDOPtOgubt/IaevIUbTgV7doaKkoorvOyYM2CMwuDyP89bekI7H4xLIwunNYiK9jhCkmc6pUrJk3cj2AB9w==";
-      };
-    }
-    {
-      name = "_types_yargs___yargs_16.0.3.tgz";
-      path = fetchurl {
-        name = "_types_yargs___yargs_16.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.3.tgz";
-        sha512 = "YlFfTGS+zqCgXuXNV26rOIeETOkXnGQXP/pjjL9P0gO/EP9jTmc7pUBhx+jVEIxpq41RX33GQ7N3DzOSfZoglQ==";
-      };
-    }
-    {
-      name = "_webassemblyjs_ast___ast_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_ast___ast_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz";
-        sha512 = "C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==";
-      };
-    }
-    {
-      name = "_webassemblyjs_floating_point_hex_parser___floating_point_hex_parser_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_floating_point_hex_parser___floating_point_hex_parser_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz";
-        sha512 = "TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==";
-      };
-    }
-    {
-      name = "_webassemblyjs_helper_api_error___helper_api_error_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_helper_api_error___helper_api_error_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz";
-        sha512 = "NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==";
-      };
-    }
-    {
-      name = "_webassemblyjs_helper_buffer___helper_buffer_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_helper_buffer___helper_buffer_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz";
-        sha512 = "qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==";
-      };
-    }
-    {
-      name = "_webassemblyjs_helper_code_frame___helper_code_frame_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_helper_code_frame___helper_code_frame_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz";
-        sha512 = "ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==";
-      };
-    }
-    {
-      name = "_webassemblyjs_helper_fsm___helper_fsm_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_helper_fsm___helper_fsm_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz";
-        sha512 = "OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==";
-      };
-    }
-    {
-      name = "_webassemblyjs_helper_module_context___helper_module_context_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_helper_module_context___helper_module_context_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz";
-        sha512 = "MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==";
-      };
-    }
-    {
-      name = "_webassemblyjs_helper_wasm_bytecode___helper_wasm_bytecode_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_helper_wasm_bytecode___helper_wasm_bytecode_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz";
-        sha512 = "R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==";
-      };
-    }
-    {
-      name = "_webassemblyjs_helper_wasm_section___helper_wasm_section_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_helper_wasm_section___helper_wasm_section_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz";
-        sha512 = "XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==";
-      };
-    }
-    {
-      name = "_webassemblyjs_ieee754___ieee754_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_ieee754___ieee754_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz";
-        sha512 = "dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==";
-      };
-    }
-    {
-      name = "_webassemblyjs_leb128___leb128_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_leb128___leb128_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.9.0.tgz";
-        sha512 = "ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==";
-      };
-    }
-    {
-      name = "_webassemblyjs_utf8___utf8_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_utf8___utf8_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz";
-        sha512 = "GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==";
-      };
-    }
-    {
-      name = "_webassemblyjs_wasm_edit___wasm_edit_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_wasm_edit___wasm_edit_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz";
-        sha512 = "FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==";
-      };
-    }
-    {
-      name = "_webassemblyjs_wasm_gen___wasm_gen_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_wasm_gen___wasm_gen_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz";
-        sha512 = "cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==";
-      };
-    }
-    {
-      name = "_webassemblyjs_wasm_opt___wasm_opt_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_wasm_opt___wasm_opt_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz";
-        sha512 = "Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==";
-      };
-    }
-    {
-      name = "_webassemblyjs_wasm_parser___wasm_parser_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_wasm_parser___wasm_parser_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz";
-        sha512 = "9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==";
-      };
-    }
-    {
-      name = "_webassemblyjs_wast_parser___wast_parser_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_wast_parser___wast_parser_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz";
-        sha512 = "qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==";
-      };
-    }
-    {
-      name = "_webassemblyjs_wast_printer___wast_printer_1.9.0.tgz";
-      path = fetchurl {
-        name = "_webassemblyjs_wast_printer___wast_printer_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz";
-        sha512 = "2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==";
-      };
-    }
-    {
-      name = "_xtuc_ieee754___ieee754_1.2.0.tgz";
-      path = fetchurl {
-        name = "_xtuc_ieee754___ieee754_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz";
-        sha512 = "DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==";
-      };
-    }
-    {
-      name = "_xtuc_long___long_4.2.2.tgz";
-      path = fetchurl {
-        name = "_xtuc_long___long_4.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz";
-        sha512 = "NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==";
-      };
-    }
-    {
-      name = "abab___abab_2.0.5.tgz";
-      path = fetchurl {
-        name = "abab___abab_2.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz";
-        sha512 = "9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==";
-      };
-    }
-    {
-      name = "accepts___accepts_1.3.7.tgz";
-      path = fetchurl {
-        name = "accepts___accepts_1.3.7.tgz";
-        url  = "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz";
-        sha512 = "Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==";
-      };
-    }
-    {
-      name = "acorn_globals___acorn_globals_6.0.0.tgz";
-      path = fetchurl {
-        name = "acorn_globals___acorn_globals_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz";
-        sha512 = "ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==";
-      };
-    }
-    {
-      name = "acorn_jsx___acorn_jsx_3.0.1.tgz";
-      path = fetchurl {
-        name = "acorn_jsx___acorn_jsx_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz";
-        sha1 = "r9+UiPsezvyDSPb7IvRk4ypYs2s=";
-      };
-    }
-    {
-      name = "acorn_jsx___acorn_jsx_5.3.1.tgz";
-      path = fetchurl {
-        name = "acorn_jsx___acorn_jsx_5.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz";
-        sha512 = "K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==";
-      };
-    }
-    {
-      name = "acorn_walk___acorn_walk_7.2.0.tgz";
-      path = fetchurl {
-        name = "acorn_walk___acorn_walk_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz";
-        sha512 = "OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==";
-      };
-    }
-    {
-      name = "acorn_walk___acorn_walk_8.0.0.tgz";
-      path = fetchurl {
-        name = "acorn_walk___acorn_walk_8.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.0.0.tgz";
-        sha512 = "oZRad/3SMOI/pxbbmqyurIx7jHw1wZDcR9G44L8pUVFEomX/0dH89SrM1KaDXuv1NpzAXz6Op/Xu/Qd5XXzdEA==";
-      };
-    }
-    {
-      name = "acorn___acorn_3.3.0.tgz";
-      path = fetchurl {
-        name = "acorn___acorn_3.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz";
-        sha1 = "ReN/s56No/JbruP/U2niu18iAXo=";
-      };
-    }
-    {
-      name = "acorn___acorn_5.7.3.tgz";
-      path = fetchurl {
-        name = "acorn___acorn_5.7.3.tgz";
-        url  = "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz";
-        sha512 = "T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==";
-      };
-    }
-    {
-      name = "acorn___acorn_6.4.1.tgz";
-      path = fetchurl {
-        name = "acorn___acorn_6.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz";
-        sha512 = "ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==";
-      };
-    }
-    {
-      name = "acorn___acorn_7.4.1.tgz";
-      path = fetchurl {
-        name = "acorn___acorn_7.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz";
-        sha512 = "nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==";
-      };
-    }
-    {
-      name = "acorn___acorn_8.0.4.tgz";
-      path = fetchurl {
-        name = "acorn___acorn_8.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/acorn/-/acorn-8.0.4.tgz";
-        sha512 = "XNP0PqF1XD19ZlLKvB7cMmnZswW4C/03pRHgirB30uSJTaS3A3V1/P4sS3HPvFmjoriPCJQs+JDSbm4bL1TxGQ==";
-      };
-    }
-    {
-      name = "aggregate_error___aggregate_error_3.1.0.tgz";
-      path = fetchurl {
-        name = "aggregate_error___aggregate_error_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz";
-        sha512 = "4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==";
-      };
-    }
-    {
-      name = "ajv_errors___ajv_errors_1.0.1.tgz";
-      path = fetchurl {
-        name = "ajv_errors___ajv_errors_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz";
-        sha512 = "DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==";
-      };
-    }
-    {
-      name = "ajv_keywords___ajv_keywords_1.5.1.tgz";
-      path = fetchurl {
-        name = "ajv_keywords___ajv_keywords_1.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz";
-        sha1 = "MU3QpLM2j609/NxU7eYXG4htrzw=";
-      };
-    }
-    {
-      name = "ajv_keywords___ajv_keywords_3.5.2.tgz";
-      path = fetchurl {
-        name = "ajv_keywords___ajv_keywords_3.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz";
-        sha512 = "5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==";
-      };
-    }
-    {
-      name = "ajv___ajv_4.11.8.tgz";
-      path = fetchurl {
-        name = "ajv___ajv_4.11.8.tgz";
-        url  = "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz";
-        sha1 = "gv+wKynmYq5TvcIK8VlHcGc5xTY=";
-      };
-    }
-    {
-      name = "ajv___ajv_6.12.6.tgz";
-      path = fetchurl {
-        name = "ajv___ajv_6.12.6.tgz";
-        url  = "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz";
-        sha512 = "j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==";
-      };
-    }
-    {
-      name = "ajv___ajv_8.5.0.tgz";
-      path = fetchurl {
-        name = "ajv___ajv_8.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/ajv/-/ajv-8.5.0.tgz";
-        sha512 = "Y2l399Tt1AguU3BPRP9Fn4eN+Or+StUGWCUpbnFyXSo8NZ9S4uj+AG2pjs5apK+ZMOwYOz1+a+VKvKH7CudXgQ==";
-      };
-    }
-    {
-      name = "alphanum_sort___alphanum_sort_1.0.2.tgz";
-      path = fetchurl {
-        name = "alphanum_sort___alphanum_sort_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz";
-        sha1 = "l6ERlkmyEa0zaR2fn0hqjsn74KM=";
-      };
-    }
-    {
-      name = "ansi_colors___ansi_colors_3.2.4.tgz";
-      path = fetchurl {
-        name = "ansi_colors___ansi_colors_3.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz";
-        sha512 = "hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==";
-      };
-    }
-    {
-      name = "ansi_colors___ansi_colors_4.1.1.tgz";
-      path = fetchurl {
-        name = "ansi_colors___ansi_colors_4.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz";
-        sha512 = "JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==";
-      };
-    }
-    {
-      name = "ansi_escapes___ansi_escapes_1.4.0.tgz";
-      path = fetchurl {
-        name = "ansi_escapes___ansi_escapes_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz";
-        sha1 = "06ioOzGapneTZisT52HHkRQiMG4=";
-      };
-    }
-    {
-      name = "ansi_escapes___ansi_escapes_4.3.1.tgz";
-      path = fetchurl {
-        name = "ansi_escapes___ansi_escapes_4.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.1.tgz";
-        sha512 = "JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==";
-      };
-    }
-    {
-      name = "ansi_html___ansi_html_0.0.7.tgz";
-      path = fetchurl {
-        name = "ansi_html___ansi_html_0.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz";
-        sha1 = "gTWEAhliqenm/QOflA0S9WynhZ4=";
-      };
-    }
-    {
-      name = "ansi_regex___ansi_regex_2.1.1.tgz";
-      path = fetchurl {
-        name = "ansi_regex___ansi_regex_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz";
-        sha1 = "w7M6te42DYbg5ijwRorn7yfWVN8=";
-      };
-    }
-    {
-      name = "ansi_regex___ansi_regex_3.0.0.tgz";
-      path = fetchurl {
-        name = "ansi_regex___ansi_regex_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz";
-        sha1 = "7QMXwyIGT3lGbAKWa922Bas32Zg=";
-      };
-    }
-    {
-      name = "ansi_regex___ansi_regex_4.1.0.tgz";
-      path = fetchurl {
-        name = "ansi_regex___ansi_regex_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz";
-        sha512 = "1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==";
-      };
-    }
-    {
-      name = "ansi_regex___ansi_regex_5.0.0.tgz";
-      path = fetchurl {
-        name = "ansi_regex___ansi_regex_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz";
-        sha512 = "bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==";
-      };
-    }
-    {
-      name = "ansi_styles___ansi_styles_2.2.1.tgz";
-      path = fetchurl {
-        name = "ansi_styles___ansi_styles_2.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz";
-        sha1 = "tDLdM1i2NM914eRmQ2gkBTPB3b4=";
-      };
-    }
-    {
-      name = "ansi_styles___ansi_styles_3.2.1.tgz";
-      path = fetchurl {
-        name = "ansi_styles___ansi_styles_3.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz";
-        sha512 = "VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==";
-      };
-    }
-    {
-      name = "ansi_styles___ansi_styles_4.2.1.tgz";
-      path = fetchurl {
-        name = "ansi_styles___ansi_styles_4.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz";
-        sha512 = "9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==";
-      };
-    }
-    {
-      name = "anymatch___anymatch_2.0.0.tgz";
-      path = fetchurl {
-        name = "anymatch___anymatch_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz";
-        sha512 = "5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==";
-      };
-    }
-    {
-      name = "anymatch___anymatch_3.1.1.tgz";
-      path = fetchurl {
-        name = "anymatch___anymatch_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz";
-        sha512 = "mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==";
-      };
-    }
-    {
-      name = "aproba___aproba_1.2.0.tgz";
-      path = fetchurl {
-        name = "aproba___aproba_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz";
-        sha512 = "Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==";
-      };
-    }
-    {
-      name = "are_we_there_yet___are_we_there_yet_1.1.5.tgz";
-      path = fetchurl {
-        name = "are_we_there_yet___are_we_there_yet_1.1.5.tgz";
-        url  = "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz";
-        sha512 = "5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==";
-      };
-    }
-    {
-      name = "argparse___argparse_1.0.10.tgz";
-      path = fetchurl {
-        name = "argparse___argparse_1.0.10.tgz";
-        url  = "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz";
-        sha512 = "o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==";
-      };
-    }
-    {
-      name = "argparse___argparse_2.0.1.tgz";
-      path = fetchurl {
-        name = "argparse___argparse_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz";
-        sha512 = "8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==";
-      };
-    }
-    {
-      name = "aria_query___aria_query_4.2.2.tgz";
-      path = fetchurl {
-        name = "aria_query___aria_query_4.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/aria-query/-/aria-query-4.2.2.tgz";
-        sha512 = "o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==";
-      };
-    }
-    {
-      name = "arr_diff___arr_diff_4.0.0.tgz";
-      path = fetchurl {
-        name = "arr_diff___arr_diff_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz";
-        sha1 = "1kYQdP6/7HHn4VI1dhoyml3HxSA=";
-      };
-    }
-    {
-      name = "arr_flatten___arr_flatten_1.1.0.tgz";
-      path = fetchurl {
-        name = "arr_flatten___arr_flatten_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz";
-        sha512 = "L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==";
-      };
-    }
-    {
-      name = "arr_union___arr_union_3.1.0.tgz";
-      path = fetchurl {
-        name = "arr_union___arr_union_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz";
-        sha1 = "45sJrqne+Gao8gbiiK9jkZuuOcQ=";
-      };
-    }
-    {
-      name = "array_flatten___array_flatten_1.1.1.tgz";
-      path = fetchurl {
-        name = "array_flatten___array_flatten_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz";
-        sha1 = "ml9pkFGx5wczKPKgCJaLZOopVdI=";
-      };
-    }
-    {
-      name = "array_flatten___array_flatten_2.1.2.tgz";
-      path = fetchurl {
-        name = "array_flatten___array_flatten_2.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz";
-        sha512 = "hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==";
-      };
-    }
-    {
-      name = "array_includes___array_includes_3.1.3.tgz";
-      path = fetchurl {
-        name = "array_includes___array_includes_3.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.3.tgz";
-        sha512 = "gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==";
-      };
-    }
-    {
-      name = "array_union___array_union_1.0.2.tgz";
-      path = fetchurl {
-        name = "array_union___array_union_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz";
-        sha1 = "mjRBDk9OPaI96jdb5b5w8kd47Dk=";
-      };
-    }
-    {
-      name = "array_uniq___array_uniq_1.0.3.tgz";
-      path = fetchurl {
-        name = "array_uniq___array_uniq_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz";
-        sha1 = "r2rId6Jcx/dOBYiUdThY39sk/bY=";
-      };
-    }
-    {
-      name = "array_unique___array_unique_0.3.2.tgz";
-      path = fetchurl {
-        name = "array_unique___array_unique_0.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz";
-        sha1 = "qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=";
-      };
-    }
-    {
-      name = "array.prototype.flat___array.prototype.flat_1.2.4.tgz";
-      path = fetchurl {
-        name = "array.prototype.flat___array.prototype.flat_1.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz";
-        sha512 = "4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==";
-      };
-    }
-    {
-      name = "array.prototype.flatmap___array.prototype.flatmap_1.2.4.tgz";
-      path = fetchurl {
-        name = "array.prototype.flatmap___array.prototype.flatmap_1.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz";
-        sha512 = "r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==";
-      };
-    }
-    {
-      name = "arrow_key_navigation___arrow_key_navigation_1.2.0.tgz";
-      path = fetchurl {
-        name = "arrow_key_navigation___arrow_key_navigation_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/arrow-key-navigation/-/arrow-key-navigation-1.2.0.tgz";
-        sha512 = "ch4WOwtjXHFisaa7ey2duW1Qf2VJxoa+8llbsbWDP6wsCzm0DGAi8upv6GDhf5xGvbxhKW3Co9SDEhXq34xCtg==";
-      };
-    }
-    {
-      name = "asn1.js___asn1.js_5.4.1.tgz";
-      path = fetchurl {
-        name = "asn1.js___asn1.js_5.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz";
-        sha512 = "+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==";
-      };
-    }
-    {
-      name = "asn1___asn1_0.2.4.tgz";
-      path = fetchurl {
-        name = "asn1___asn1_0.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz";
-        sha512 = "jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==";
-      };
-    }
-    {
-      name = "assert_plus___assert_plus_1.0.0.tgz";
-      path = fetchurl {
-        name = "assert_plus___assert_plus_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz";
-        sha1 = "8S4PPF13sLHN2RRpQuTpbB5N1SU=";
-      };
-    }
-    {
-      name = "assert___assert_1.5.0.tgz";
-      path = fetchurl {
-        name = "assert___assert_1.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz";
-        sha512 = "EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==";
-      };
-    }
-    {
-      name = "assign_symbols___assign_symbols_1.0.0.tgz";
-      path = fetchurl {
-        name = "assign_symbols___assign_symbols_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz";
-        sha1 = "WWZ/QfrdTyDMvCu5a41Pf3jsA2c=";
-      };
-    }
-    {
-      name = "ast_types_flow___ast_types_flow_0.0.7.tgz";
-      path = fetchurl {
-        name = "ast_types_flow___ast_types_flow_0.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz";
-        sha1 = "9wtzXGvKGlycItmCw+Oef+ujva0=";
-      };
-    }
-    {
-      name = "astral_regex___astral_regex_2.0.0.tgz";
-      path = fetchurl {
-        name = "astral_regex___astral_regex_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz";
-        sha512 = "Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==";
-      };
-    }
-    {
-      name = "async_each___async_each_1.0.3.tgz";
-      path = fetchurl {
-        name = "async_each___async_each_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz";
-        sha512 = "z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==";
-      };
-    }
-    {
-      name = "async_limiter___async_limiter_1.0.1.tgz";
-      path = fetchurl {
-        name = "async_limiter___async_limiter_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz";
-        sha512 = "csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==";
-      };
-    }
-    {
-      name = "async___async_2.6.3.tgz";
-      path = fetchurl {
-        name = "async___async_2.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz";
-        sha512 = "zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==";
-      };
-    }
-    {
-      name = "asynckit___asynckit_0.4.0.tgz";
-      path = fetchurl {
-        name = "asynckit___asynckit_0.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz";
-        sha1 = "x57Zf380y48robyXkLzDZkdLS3k=";
-      };
-    }
-    {
-      name = "atob___atob_2.1.2.tgz";
-      path = fetchurl {
-        name = "atob___atob_2.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz";
-        sha512 = "Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==";
-      };
-    }
-    {
-      name = "autoprefixer___autoprefixer_9.8.6.tgz";
-      path = fetchurl {
-        name = "autoprefixer___autoprefixer_9.8.6.tgz";
-        url  = "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.6.tgz";
-        sha512 = "XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==";
-      };
-    }
-    {
-      name = "aws_sign2___aws_sign2_0.7.0.tgz";
-      path = fetchurl {
-        name = "aws_sign2___aws_sign2_0.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz";
-        sha1 = "tG6JCTSpWR8tL2+G1+ap8bP+dqg=";
-      };
-    }
-    {
-      name = "aws4___aws4_1.10.1.tgz";
-      path = fetchurl {
-        name = "aws4___aws4_1.10.1.tgz";
-        url  = "https://registry.yarnpkg.com/aws4/-/aws4-1.10.1.tgz";
-        sha512 = "zg7Hz2k5lI8kb7U32998pRRFin7zJlkfezGJjUc2heaD4Pw2wObakCDVzkKztTm/Ln7eiVvYsjqak0Ed4LkMDA==";
-      };
-    }
-    {
-      name = "axe_core___axe_core_4.0.2.tgz";
-      path = fetchurl {
-        name = "axe_core___axe_core_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/axe-core/-/axe-core-4.0.2.tgz";
-        sha512 = "arU1h31OGFu+LPrOLGZ7nB45v940NMDMEJeNmbutu57P+UFDVnkZg3e+J1I2HJRZ9hT7gO8J91dn/PMrAiKakA==";
-      };
-    }
-    {
-      name = "axios___axios_0.21.1.tgz";
-      path = fetchurl {
-        name = "axios___axios_0.21.1.tgz";
-        url  = "https://registry.yarnpkg.com/axios/-/axios-0.21.1.tgz";
-        sha512 = "dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==";
-      };
-    }
-    {
-      name = "axobject_query___axobject_query_2.2.0.tgz";
-      path = fetchurl {
-        name = "axobject_query___axobject_query_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.2.0.tgz";
-        sha512 = "Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==";
-      };
-    }
-    {
-      name = "babel_eslint___babel_eslint_10.1.0.tgz";
-      path = fetchurl {
-        name = "babel_eslint___babel_eslint_10.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz";
-        sha512 = "ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==";
-      };
-    }
-    {
-      name = "babel_jest___babel_jest_26.6.3.tgz";
-      path = fetchurl {
-        name = "babel_jest___babel_jest_26.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.6.3.tgz";
-        sha512 = "pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA==";
-      };
-    }
-    {
-      name = "babel_jest___babel_jest_27.0.2.tgz";
-      path = fetchurl {
-        name = "babel_jest___babel_jest_27.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.0.2.tgz";
-        sha512 = "9OThPl3/IQbo4Yul2vMz4FYwILPQak8XelX4YGowygfHaOl5R5gfjm4iVx4d8aUugkW683t8aq0A74E7b5DU1Q==";
-      };
-    }
-    {
-      name = "babel_loader___babel_loader_8.2.2.tgz";
-      path = fetchurl {
-        name = "babel_loader___babel_loader_8.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.2.tgz";
-        sha512 = "JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g==";
-      };
-    }
-    {
-      name = "babel_plugin_dynamic_import_node___babel_plugin_dynamic_import_node_2.3.3.tgz";
-      path = fetchurl {
-        name = "babel_plugin_dynamic_import_node___babel_plugin_dynamic_import_node_2.3.3.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz";
-        sha512 = "jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==";
-      };
-    }
-    {
-      name = "babel_plugin_istanbul___babel_plugin_istanbul_6.0.0.tgz";
-      path = fetchurl {
-        name = "babel_plugin_istanbul___babel_plugin_istanbul_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz";
-        sha512 = "AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==";
-      };
-    }
-    {
-      name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_26.6.2.tgz";
-      path = fetchurl {
-        name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz";
-        sha512 = "PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw==";
-      };
-    }
-    {
-      name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_27.0.1.tgz";
-      path = fetchurl {
-        name = "babel_plugin_jest_hoist___babel_plugin_jest_hoist_27.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.0.1.tgz";
-        sha512 = "sqBF0owAcCDBVEDtxqfYr2F36eSHdx7lAVGyYuOBRnKdD6gzcy0I0XrAYCZgOA3CRrLhmR+Uae9nogPzmAtOfQ==";
-      };
-    }
-    {
-      name = "babel_plugin_lodash___babel_plugin_lodash_3.3.4.tgz";
-      path = fetchurl {
-        name = "babel_plugin_lodash___babel_plugin_lodash_3.3.4.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-lodash/-/babel-plugin-lodash-3.3.4.tgz";
-        sha512 = "yDZLjK7TCkWl1gpBeBGmuaDIFhZKmkoL+Cu2MUUjv5VxUZx/z7tBGBCBcQs5RI1Bkz5LLmNdjx7paOyQtMovyg==";
-      };
-    }
-    {
-      name = "babel_plugin_macros___babel_plugin_macros_2.8.0.tgz";
-      path = fetchurl {
-        name = "babel_plugin_macros___babel_plugin_macros_2.8.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz";
-        sha512 = "SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==";
-      };
-    }
-    {
-      name = "babel_plugin_polyfill_corejs2___babel_plugin_polyfill_corejs2_0.2.0.tgz";
-      path = fetchurl {
-        name = "babel_plugin_polyfill_corejs2___babel_plugin_polyfill_corejs2_0.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.0.tgz";
-        sha512 = "9bNwiR0dS881c5SHnzCmmGlMkJLl0OUZvxrxHo9w/iNoRuqaPjqlvBf4HrovXtQs/au5yKkpcdgfT1cC5PAZwg==";
-      };
-    }
-    {
-      name = "babel_plugin_polyfill_corejs3___babel_plugin_polyfill_corejs3_0.2.0.tgz";
-      path = fetchurl {
-        name = "babel_plugin_polyfill_corejs3___babel_plugin_polyfill_corejs3_0.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.0.tgz";
-        sha512 = "zZyi7p3BCUyzNxLx8KV61zTINkkV65zVkDAFNZmrTCRVhjo1jAS+YLvDJ9Jgd/w2tsAviCwFHReYfxO3Iql8Yg==";
-      };
-    }
-    {
-      name = "babel_plugin_polyfill_regenerator___babel_plugin_polyfill_regenerator_0.2.0.tgz";
-      path = fetchurl {
-        name = "babel_plugin_polyfill_regenerator___babel_plugin_polyfill_regenerator_0.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.0.tgz";
-        sha512 = "J7vKbCuD2Xi/eEHxquHN14bXAW9CXtecwuLrOIDJtcZzTaPzV1VdEfoUf9AzcRBMolKUQKM9/GVojeh0hFiqMg==";
-      };
-    }
-    {
-      name = "babel_plugin_preval___babel_plugin_preval_5.0.0.tgz";
-      path = fetchurl {
-        name = "babel_plugin_preval___babel_plugin_preval_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-preval/-/babel-plugin-preval-5.0.0.tgz";
-        sha512 = "8DqJq6/LPUjSZ0Qq6bVIFpsj2flCEE0Cbnbut9TvGU6jP9g3dOWEXtQ/sdvsA9d6souza8eNGh04WRXpuH9ThA==";
-      };
-    }
-    {
-      name = "babel_plugin_react_intl___babel_plugin_react_intl_6.2.0.tgz";
-      path = fetchurl {
-        name = "babel_plugin_react_intl___babel_plugin_react_intl_6.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-react-intl/-/babel-plugin-react-intl-6.2.0.tgz";
-        sha512 = "ajGpa14mLzyDgdOS75DRlQ0aEL+q7iSCB77613YUPOZbxnAvfB0wg+gLngbd/43eKRw7a4y+IzO3P8kDHl40nA==";
-      };
-    }
-    {
-      name = "babel_plugin_transform_react_remove_prop_types___babel_plugin_transform_react_remove_prop_types_0.4.24.tgz";
-      path = fetchurl {
-        name = "babel_plugin_transform_react_remove_prop_types___babel_plugin_transform_react_remove_prop_types_0.4.24.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz";
-        sha512 = "eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA==";
-      };
-    }
-    {
-      name = "babel_preset_current_node_syntax___babel_preset_current_node_syntax_1.0.0.tgz";
-      path = fetchurl {
-        name = "babel_preset_current_node_syntax___babel_preset_current_node_syntax_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.0.tgz";
-        sha512 = "mGkvkpocWJes1CmMKtgGUwCeeq0pOhALyymozzDWYomHTbDLwueDYG6p4TK1YOeYHCzBzYPsWkgTto10JubI1Q==";
-      };
-    }
-    {
-      name = "babel_preset_jest___babel_preset_jest_26.6.2.tgz";
-      path = fetchurl {
-        name = "babel_preset_jest___babel_preset_jest_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz";
-        sha512 = "YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ==";
-      };
-    }
-    {
-      name = "babel_preset_jest___babel_preset_jest_27.0.1.tgz";
-      path = fetchurl {
-        name = "babel_preset_jest___babel_preset_jest_27.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.0.1.tgz";
-        sha512 = "nIBIqCEpuiyhvjQs2mVNwTxQQa2xk70p9Dd/0obQGBf8FBzbnI8QhQKzLsWMN2i6q+5B0OcWDtrboBX5gmOLyA==";
-      };
-    }
-    {
-      name = "babel_runtime___babel_runtime_6.26.0.tgz";
-      path = fetchurl {
-        name = "babel_runtime___babel_runtime_6.26.0.tgz";
-        url  = "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz";
-        sha1 = "llxwWGaOgrVde/4E/yM3vItWR/4=";
-      };
-    }
-    {
-      name = "balanced_match___balanced_match_1.0.0.tgz";
-      path = fetchurl {
-        name = "balanced_match___balanced_match_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz";
-        sha1 = "ibTRmasr7kneFk6gK4nORi1xt2c=";
-      };
-    }
-    {
-      name = "base64_js___base64_js_1.3.1.tgz";
-      path = fetchurl {
-        name = "base64_js___base64_js_1.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz";
-        sha512 = "mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==";
-      };
-    }
-    {
-      name = "base___base_0.11.2.tgz";
-      path = fetchurl {
-        name = "base___base_0.11.2.tgz";
-        url  = "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz";
-        sha512 = "5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==";
-      };
-    }
-    {
-      name = "batch___batch_0.6.1.tgz";
-      path = fetchurl {
-        name = "batch___batch_0.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz";
-        sha1 = "3DQxT05nkxgJP8dgJyUl+UvyXBY=";
-      };
-    }
-    {
-      name = "bcrypt_pbkdf___bcrypt_pbkdf_1.0.2.tgz";
-      path = fetchurl {
-        name = "bcrypt_pbkdf___bcrypt_pbkdf_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz";
-        sha1 = "pDAdOJtqQ/m2f/PKEaP2Y342Dp4=";
-      };
-    }
-    {
-      name = "big.js___big.js_3.2.0.tgz";
-      path = fetchurl {
-        name = "big.js___big.js_3.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz";
-        sha512 = "+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==";
-      };
-    }
-    {
-      name = "big.js___big.js_5.2.2.tgz";
-      path = fetchurl {
-        name = "big.js___big.js_5.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz";
-        sha512 = "vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==";
-      };
-    }
-    {
-      name = "binary_extensions___binary_extensions_1.13.1.tgz";
-      path = fetchurl {
-        name = "binary_extensions___binary_extensions_1.13.1.tgz";
-        url  = "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz";
-        sha512 = "Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==";
-      };
-    }
-    {
-      name = "binary_extensions___binary_extensions_2.1.0.tgz";
-      path = fetchurl {
-        name = "binary_extensions___binary_extensions_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.1.0.tgz";
-        sha512 = "1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==";
-      };
-    }
-    {
-      name = "bindings___bindings_1.5.0.tgz";
-      path = fetchurl {
-        name = "bindings___bindings_1.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz";
-        sha512 = "p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==";
-      };
-    }
-    {
-      name = "bluebird___bluebird_3.7.2.tgz";
-      path = fetchurl {
-        name = "bluebird___bluebird_3.7.2.tgz";
-        url  = "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz";
-        sha512 = "XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==";
-      };
-    }
-    {
-      name = "blurhash___blurhash_1.1.3.tgz";
-      path = fetchurl {
-        name = "blurhash___blurhash_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/blurhash/-/blurhash-1.1.3.tgz";
-        sha512 = "yUhPJvXexbqbyijCIE/T2NCXcj9iNPhWmOKbPTuR/cm7Q5snXYIfnVnz6m7MWOXxODMz/Cr3UcVkRdHiuDVRDw==";
-      };
-    }
-    {
-      name = "bmp_js___bmp_js_0.1.0.tgz";
-      path = fetchurl {
-        name = "bmp_js___bmp_js_0.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/bmp-js/-/bmp-js-0.1.0.tgz";
-        sha1 = "4Fpj95amwf8l9Hcex62twUjAcjM=";
-      };
-    }
-    {
-      name = "bn.js___bn.js_4.12.0.tgz";
-      path = fetchurl {
-        name = "bn.js___bn.js_4.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz";
-        sha512 = "c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==";
-      };
-    }
-    {
-      name = "bn.js___bn.js_5.1.3.tgz";
-      path = fetchurl {
-        name = "bn.js___bn.js_5.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/bn.js/-/bn.js-5.1.3.tgz";
-        sha512 = "GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ==";
-      };
-    }
-    {
-      name = "body_parser___body_parser_1.19.0.tgz";
-      path = fetchurl {
-        name = "body_parser___body_parser_1.19.0.tgz";
-        url  = "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz";
-        sha512 = "dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==";
-      };
-    }
-    {
-      name = "bonjour___bonjour_3.5.0.tgz";
-      path = fetchurl {
-        name = "bonjour___bonjour_3.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz";
-        sha1 = "jokKGD2O6aI5OzhExpGkK897yfU=";
-      };
-    }
-    {
-      name = "boolbase___boolbase_1.0.0.tgz";
-      path = fetchurl {
-        name = "boolbase___boolbase_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz";
-        sha1 = "aN/1++YMUes3cl6p4+0xDcwed24=";
-      };
-    }
-    {
-      name = "brace_expansion___brace_expansion_1.1.11.tgz";
-      path = fetchurl {
-        name = "brace_expansion___brace_expansion_1.1.11.tgz";
-        url  = "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz";
-        sha512 = "iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==";
-      };
-    }
-    {
-      name = "braces___braces_2.3.2.tgz";
-      path = fetchurl {
-        name = "braces___braces_2.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz";
-        sha512 = "aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==";
-      };
-    }
-    {
-      name = "braces___braces_3.0.2.tgz";
-      path = fetchurl {
-        name = "braces___braces_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz";
-        sha512 = "b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==";
-      };
-    }
-    {
-      name = "bricks.js___bricks.js_1.8.0.tgz";
-      path = fetchurl {
-        name = "bricks.js___bricks.js_1.8.0.tgz";
-        url  = "https://registry.yarnpkg.com/bricks.js/-/bricks.js-1.8.0.tgz";
-        sha1 = "j96zwCJq8lH01XJ6fff5rACStLI=";
-      };
-    }
-    {
-      name = "brorand___brorand_1.1.0.tgz";
-      path = fetchurl {
-        name = "brorand___brorand_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz";
-        sha1 = "EsJe/kCkXjwyPrhnWgoM5XsiNx8=";
-      };
-    }
-    {
-      name = "browser_process_hrtime___browser_process_hrtime_1.0.0.tgz";
-      path = fetchurl {
-        name = "browser_process_hrtime___browser_process_hrtime_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz";
-        sha512 = "9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==";
-      };
-    }
-    {
-      name = "browserify_aes___browserify_aes_1.2.0.tgz";
-      path = fetchurl {
-        name = "browserify_aes___browserify_aes_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz";
-        sha512 = "+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==";
-      };
-    }
-    {
-      name = "browserify_cipher___browserify_cipher_1.0.1.tgz";
-      path = fetchurl {
-        name = "browserify_cipher___browserify_cipher_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz";
-        sha512 = "sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==";
-      };
-    }
-    {
-      name = "browserify_des___browserify_des_1.0.2.tgz";
-      path = fetchurl {
-        name = "browserify_des___browserify_des_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz";
-        sha512 = "BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==";
-      };
-    }
-    {
-      name = "browserify_rsa___browserify_rsa_4.0.1.tgz";
-      path = fetchurl {
-        name = "browserify_rsa___browserify_rsa_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz";
-        sha1 = "IeCr+vbyApzy+vsTNWenAdQTVSQ=";
-      };
-    }
-    {
-      name = "browserify_sign___browserify_sign_4.2.1.tgz";
-      path = fetchurl {
-        name = "browserify_sign___browserify_sign_4.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.1.tgz";
-        sha512 = "/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==";
-      };
-    }
-    {
-      name = "browserify_zlib___browserify_zlib_0.2.0.tgz";
-      path = fetchurl {
-        name = "browserify_zlib___browserify_zlib_0.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz";
-        sha512 = "Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==";
-      };
-    }
-    {
-      name = "browserslist___browserslist_4.16.6.tgz";
-      path = fetchurl {
-        name = "browserslist___browserslist_4.16.6.tgz";
-        url  = "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz";
-        sha512 = "Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==";
-      };
-    }
-    {
-      name = "bser___bser_2.1.1.tgz";
-      path = fetchurl {
-        name = "bser___bser_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz";
-        sha512 = "gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==";
-      };
-    }
-    {
-      name = "buffer_from___buffer_from_1.1.1.tgz";
-      path = fetchurl {
-        name = "buffer_from___buffer_from_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz";
-        sha512 = "MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==";
-      };
-    }
-    {
-      name = "buffer_indexof___buffer_indexof_1.1.1.tgz";
-      path = fetchurl {
-        name = "buffer_indexof___buffer_indexof_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz";
-        sha512 = "4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==";
-      };
-    }
-    {
-      name = "buffer_writer___buffer_writer_2.0.0.tgz";
-      path = fetchurl {
-        name = "buffer_writer___buffer_writer_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/buffer-writer/-/buffer-writer-2.0.0.tgz";
-        sha512 = "a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==";
-      };
-    }
-    {
-      name = "buffer_xor___buffer_xor_1.0.3.tgz";
-      path = fetchurl {
-        name = "buffer_xor___buffer_xor_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz";
-        sha1 = "JuYe0UIvtw3ULm42cp7VHYVf6Nk=";
-      };
-    }
-    {
-      name = "buffer___buffer_4.9.2.tgz";
-      path = fetchurl {
-        name = "buffer___buffer_4.9.2.tgz";
-        url  = "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz";
-        sha512 = "xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==";
-      };
-    }
-    {
-      name = "bufferutil___bufferutil_4.0.3.tgz";
-      path = fetchurl {
-        name = "bufferutil___bufferutil_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/bufferutil/-/bufferutil-4.0.3.tgz";
-        sha512 = "yEYTwGndELGvfXsImMBLop58eaGW+YdONi1fNjTINSY98tmMmFijBG6WXgdkfuLNt4imzQNtIE+eBp1PVpMCSw==";
-      };
-    }
-    {
-      name = "builtin_status_codes___builtin_status_codes_3.0.0.tgz";
-      path = fetchurl {
-        name = "builtin_status_codes___builtin_status_codes_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz";
-        sha1 = "hZgoeOIbmOHGZCXgPQF0eI9Wnug=";
-      };
-    }
-    {
-      name = "bytes___bytes_3.0.0.tgz";
-      path = fetchurl {
-        name = "bytes___bytes_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz";
-        sha1 = "0ygVQE1olpn4Wk6k+odV3ROpYEg=";
-      };
-    }
-    {
-      name = "bytes___bytes_3.1.0.tgz";
-      path = fetchurl {
-        name = "bytes___bytes_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz";
-        sha512 = "zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==";
-      };
-    }
-    {
-      name = "cacache___cacache_12.0.4.tgz";
-      path = fetchurl {
-        name = "cacache___cacache_12.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz";
-        sha512 = "a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==";
-      };
-    }
-    {
-      name = "cacache___cacache_15.0.5.tgz";
-      path = fetchurl {
-        name = "cacache___cacache_15.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/cacache/-/cacache-15.0.5.tgz";
-        sha512 = "lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A==";
-      };
-    }
-    {
-      name = "cache_base___cache_base_1.0.1.tgz";
-      path = fetchurl {
-        name = "cache_base___cache_base_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz";
-        sha512 = "AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==";
-      };
-    }
-    {
-      name = "call_bind___call_bind_1.0.2.tgz";
-      path = fetchurl {
-        name = "call_bind___call_bind_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz";
-        sha512 = "7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==";
-      };
-    }
-    {
-      name = "caller_callsite___caller_callsite_2.0.0.tgz";
-      path = fetchurl {
-        name = "caller_callsite___caller_callsite_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz";
-        sha1 = "hH4PzgoiN1CpoCfFSzNzGtMVQTQ=";
-      };
-    }
-    {
-      name = "caller_path___caller_path_0.1.0.tgz";
-      path = fetchurl {
-        name = "caller_path___caller_path_0.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz";
-        sha1 = "lAhe9jWB7NPaqSREqP6U6CV3dR8=";
-      };
-    }
-    {
-      name = "caller_path___caller_path_2.0.0.tgz";
-      path = fetchurl {
-        name = "caller_path___caller_path_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz";
-        sha1 = "Ro+DBE42mrIBD6xfBs7uFbsssfQ=";
-      };
-    }
-    {
-      name = "callsites___callsites_0.2.0.tgz";
-      path = fetchurl {
-        name = "callsites___callsites_0.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz";
-        sha1 = "r6uWJikQp/M8GaV3WCXGnzTjUMo=";
-      };
-    }
-    {
-      name = "callsites___callsites_2.0.0.tgz";
-      path = fetchurl {
-        name = "callsites___callsites_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz";
-        sha1 = "BuuE8A7qQT2oav/vrL/7Ngk7PFA=";
-      };
-    }
-    {
-      name = "callsites___callsites_3.1.0.tgz";
-      path = fetchurl {
-        name = "callsites___callsites_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz";
-        sha512 = "P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==";
-      };
-    }
-    {
-      name = "camelcase___camelcase_5.3.1.tgz";
-      path = fetchurl {
-        name = "camelcase___camelcase_5.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz";
-        sha512 = "L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==";
-      };
-    }
-    {
-      name = "camelcase___camelcase_6.2.0.tgz";
-      path = fetchurl {
-        name = "camelcase___camelcase_6.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz";
-        sha512 = "c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==";
-      };
-    }
-    {
-      name = "caniuse_api___caniuse_api_3.0.0.tgz";
-      path = fetchurl {
-        name = "caniuse_api___caniuse_api_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz";
-        sha512 = "bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==";
-      };
-    }
-    {
-      name = "caniuse_lite___caniuse_lite_1.0.30001228.tgz";
-      path = fetchurl {
-        name = "caniuse_lite___caniuse_lite_1.0.30001228.tgz";
-        url  = "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001228.tgz";
-        sha512 = "QQmLOGJ3DEgokHbMSA8cj2a+geXqmnpyOFT0lhQV6P3/YOJvGDEwoedcwxEQ30gJIwIIunHIicunJ2rzK5gB2A==";
-      };
-    }
-    {
-      name = "capture_exit___capture_exit_2.0.0.tgz";
-      path = fetchurl {
-        name = "capture_exit___capture_exit_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz";
-        sha512 = "PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==";
-      };
-    }
-    {
-      name = "caseless___caseless_0.12.0.tgz";
-      path = fetchurl {
-        name = "caseless___caseless_0.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz";
-        sha1 = "G2gcIf+EAzyCZUMJBolCDRhxUdw=";
-      };
-    }
-    {
-      name = "chalk___chalk_1.1.3.tgz";
-      path = fetchurl {
-        name = "chalk___chalk_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz";
-        sha1 = "qBFcVeSnAv5NFQq9OHKCKn4J/Jg=";
-      };
-    }
-    {
-      name = "chalk___chalk_2.4.2.tgz";
-      path = fetchurl {
-        name = "chalk___chalk_2.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz";
-        sha512 = "Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==";
-      };
-    }
-    {
-      name = "chalk___chalk_3.0.0.tgz";
-      path = fetchurl {
-        name = "chalk___chalk_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz";
-        sha512 = "4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==";
-      };
-    }
-    {
-      name = "chalk___chalk_4.1.0.tgz";
-      path = fetchurl {
-        name = "chalk___chalk_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz";
-        sha512 = "qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==";
-      };
-    }
-    {
-      name = "char_regex___char_regex_1.0.2.tgz";
-      path = fetchurl {
-        name = "char_regex___char_regex_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz";
-        sha512 = "kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==";
-      };
-    }
-    {
-      name = "chokidar___chokidar_3.5.1.tgz";
-      path = fetchurl {
-        name = "chokidar___chokidar_3.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz";
-        sha512 = "9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==";
-      };
-    }
-    {
-      name = "chokidar___chokidar_2.1.8.tgz";
-      path = fetchurl {
-        name = "chokidar___chokidar_2.1.8.tgz";
-        url  = "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz";
-        sha512 = "ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==";
-      };
-    }
-    {
-      name = "chownr___chownr_1.1.4.tgz";
-      path = fetchurl {
-        name = "chownr___chownr_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz";
-        sha512 = "jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==";
-      };
-    }
-    {
-      name = "chownr___chownr_2.0.0.tgz";
-      path = fetchurl {
-        name = "chownr___chownr_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz";
-        sha512 = "bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==";
-      };
-    }
-    {
-      name = "chrome_trace_event___chrome_trace_event_1.0.2.tgz";
-      path = fetchurl {
-        name = "chrome_trace_event___chrome_trace_event_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz";
-        sha512 = "9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==";
-      };
-    }
-    {
-      name = "ci_info___ci_info_2.0.0.tgz";
-      path = fetchurl {
-        name = "ci_info___ci_info_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz";
-        sha512 = "5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==";
-      };
-    }
-    {
-      name = "ci_info___ci_info_3.2.0.tgz";
-      path = fetchurl {
-        name = "ci_info___ci_info_3.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/ci-info/-/ci-info-3.2.0.tgz";
-        sha512 = "dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==";
-      };
-    }
-    {
-      name = "cipher_base___cipher_base_1.0.4.tgz";
-      path = fetchurl {
-        name = "cipher_base___cipher_base_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz";
-        sha512 = "Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==";
-      };
-    }
-    {
-      name = "circular_json___circular_json_0.3.3.tgz";
-      path = fetchurl {
-        name = "circular_json___circular_json_0.3.3.tgz";
-        url  = "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz";
-        sha512 = "UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==";
-      };
-    }
-    {
-      name = "cjs_module_lexer___cjs_module_lexer_0.6.0.tgz";
-      path = fetchurl {
-        name = "cjs_module_lexer___cjs_module_lexer_0.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz";
-        sha512 = "uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw==";
-      };
-    }
-    {
-      name = "class_utils___class_utils_0.3.6.tgz";
-      path = fetchurl {
-        name = "class_utils___class_utils_0.3.6.tgz";
-        url  = "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz";
-        sha512 = "qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==";
-      };
-    }
-    {
-      name = "classnames___classnames_2.3.1.tgz";
-      path = fetchurl {
-        name = "classnames___classnames_2.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/classnames/-/classnames-2.3.1.tgz";
-        sha512 = "OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==";
-      };
-    }
-    {
-      name = "clean_stack___clean_stack_2.2.0.tgz";
-      path = fetchurl {
-        name = "clean_stack___clean_stack_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz";
-        sha512 = "4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==";
-      };
-    }
-    {
-      name = "cli_cursor___cli_cursor_1.0.2.tgz";
-      path = fetchurl {
-        name = "cli_cursor___cli_cursor_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz";
-        sha1 = "ZNo/fValRBLll5S9Ytw1KV6PKYc=";
-      };
-    }
-    {
-      name = "cli_width___cli_width_2.2.1.tgz";
-      path = fetchurl {
-        name = "cli_width___cli_width_2.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz";
-        sha512 = "GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==";
-      };
-    }
-    {
-      name = "cliui___cliui_5.0.0.tgz";
-      path = fetchurl {
-        name = "cliui___cliui_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz";
-        sha512 = "PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==";
-      };
-    }
-    {
-      name = "cliui___cliui_6.0.0.tgz";
-      path = fetchurl {
-        name = "cliui___cliui_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz";
-        sha512 = "t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==";
-      };
-    }
-    {
-      name = "cliui___cliui_7.0.3.tgz";
-      path = fetchurl {
-        name = "cliui___cliui_7.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/cliui/-/cliui-7.0.3.tgz";
-        sha512 = "Gj3QHTkVMPKqwP3f7B4KPkBZRMR9r4rfi5bXFpg1a+Svvj8l7q5CnkBkVQzfxT5DFSsGk2+PascOgL0JYkL2kw==";
-      };
-    }
-    {
-      name = "clone_deep___clone_deep_4.0.1.tgz";
-      path = fetchurl {
-        name = "clone_deep___clone_deep_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz";
-        sha512 = "neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==";
-      };
-    }
-    {
-      name = "co___co_4.6.0.tgz";
-      path = fetchurl {
-        name = "co___co_4.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz";
-        sha1 = "bqa989hTrlTMuOR7+gvz+QMfsYQ=";
-      };
-    }
-    {
-      name = "coa___coa_2.0.2.tgz";
-      path = fetchurl {
-        name = "coa___coa_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz";
-        sha512 = "q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==";
-      };
-    }
-    {
-      name = "code_point_at___code_point_at_1.1.0.tgz";
-      path = fetchurl {
-        name = "code_point_at___code_point_at_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz";
-        sha1 = "DQcLTQQ6W+ozovGkDi7bPZpMz3c=";
-      };
-    }
-    {
-      name = "collect_v8_coverage___collect_v8_coverage_1.0.1.tgz";
-      path = fetchurl {
-        name = "collect_v8_coverage___collect_v8_coverage_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz";
-        sha512 = "iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==";
-      };
-    }
-    {
-      name = "collection_visit___collection_visit_1.0.0.tgz";
-      path = fetchurl {
-        name = "collection_visit___collection_visit_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz";
-        sha1 = "S8A3PBZLwykbTTaMgpzxqApZ3KA=";
-      };
-    }
-    {
-      name = "color_blend___color_blend_3.0.1.tgz";
-      path = fetchurl {
-        name = "color_blend___color_blend_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/color-blend/-/color-blend-3.0.1.tgz";
-        sha512 = "KueDvNiKHAvVeApic0SxHZLyy4x3NELfTLzMHRpRRLi+9e2kWhpeWvtuH3Sjb92mOJYEUhRjb8z7lr4OqDv17Q==";
-      };
-    }
-    {
-      name = "color_convert___color_convert_1.9.3.tgz";
-      path = fetchurl {
-        name = "color_convert___color_convert_1.9.3.tgz";
-        url  = "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz";
-        sha512 = "QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==";
-      };
-    }
-    {
-      name = "color_convert___color_convert_2.0.1.tgz";
-      path = fetchurl {
-        name = "color_convert___color_convert_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz";
-        sha512 = "RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==";
-      };
-    }
-    {
-      name = "color_name___color_name_1.1.3.tgz";
-      path = fetchurl {
-        name = "color_name___color_name_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz";
-        sha1 = "p9BVi9icQveV3UIyj3QIMcpTvCU=";
-      };
-    }
-    {
-      name = "color_name___color_name_1.1.4.tgz";
-      path = fetchurl {
-        name = "color_name___color_name_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz";
-        sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==";
-      };
-    }
-    {
-      name = "color_string___color_string_1.5.3.tgz";
-      path = fetchurl {
-        name = "color_string___color_string_1.5.3.tgz";
-        url  = "https://registry.yarnpkg.com/color-string/-/color-string-1.5.3.tgz";
-        sha512 = "dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw==";
-      };
-    }
-    {
-      name = "color___color_3.1.2.tgz";
-      path = fetchurl {
-        name = "color___color_3.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/color/-/color-3.1.2.tgz";
-        sha512 = "vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg==";
-      };
-    }
-    {
-      name = "colorette___colorette_1.2.2.tgz";
-      path = fetchurl {
-        name = "colorette___colorette_1.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz";
-        sha512 = "MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==";
-      };
-    }
-    {
-      name = "combined_stream___combined_stream_1.0.8.tgz";
-      path = fetchurl {
-        name = "combined_stream___combined_stream_1.0.8.tgz";
-        url  = "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz";
-        sha512 = "FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==";
-      };
-    }
-    {
-      name = "commander___commander_2.20.3.tgz";
-      path = fetchurl {
-        name = "commander___commander_2.20.3.tgz";
-        url  = "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz";
-        sha512 = "GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==";
-      };
-    }
-    {
-      name = "commander___commander_6.2.0.tgz";
-      path = fetchurl {
-        name = "commander___commander_6.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/commander/-/commander-6.2.0.tgz";
-        sha512 = "zP4jEKbe8SHzKJYQmq8Y9gYjtO/POJLgIdKgV7B9qNmABVFVc+ctqSX6iXh4mCpJfRBOabiZ2YKPg8ciDw6C+Q==";
-      };
-    }
-    {
-      name = "commondir___commondir_1.0.1.tgz";
-      path = fetchurl {
-        name = "commondir___commondir_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz";
-        sha1 = "3dgA2gxmEnOTzKWVDqloo6rxJTs=";
-      };
-    }
-    {
-      name = "component_emitter___component_emitter_1.3.0.tgz";
-      path = fetchurl {
-        name = "component_emitter___component_emitter_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz";
-        sha512 = "Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==";
-      };
-    }
-    {
-      name = "compressible___compressible_2.0.18.tgz";
-      path = fetchurl {
-        name = "compressible___compressible_2.0.18.tgz";
-        url  = "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz";
-        sha512 = "AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==";
-      };
-    }
-    {
-      name = "compression_webpack_plugin___compression_webpack_plugin_6.1.1.tgz";
-      path = fetchurl {
-        name = "compression_webpack_plugin___compression_webpack_plugin_6.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/compression-webpack-plugin/-/compression-webpack-plugin-6.1.1.tgz";
-        sha512 = "BEHft9M6lwOqVIQFMS/YJGmeCYXVOakC5KzQk05TFpMBlODByh1qNsZCWjUBxCQhUP9x0WfGidxTbGkjbWO/TQ==";
-      };
-    }
-    {
-      name = "compression___compression_1.7.4.tgz";
-      path = fetchurl {
-        name = "compression___compression_1.7.4.tgz";
-        url  = "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz";
-        sha512 = "jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==";
-      };
-    }
-    {
-      name = "concat_map___concat_map_0.0.1.tgz";
-      path = fetchurl {
-        name = "concat_map___concat_map_0.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz";
-        sha1 = "2Klr13/Wjfd5OnMDajug1UBdR3s=";
-      };
-    }
-    {
-      name = "concat_stream___concat_stream_1.6.2.tgz";
-      path = fetchurl {
-        name = "concat_stream___concat_stream_1.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz";
-        sha512 = "27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==";
-      };
-    }
-    {
-      name = "connect_history_api_fallback___connect_history_api_fallback_1.6.0.tgz";
-      path = fetchurl {
-        name = "connect_history_api_fallback___connect_history_api_fallback_1.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz";
-        sha512 = "e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==";
-      };
-    }
-    {
-      name = "console_browserify___console_browserify_1.2.0.tgz";
-      path = fetchurl {
-        name = "console_browserify___console_browserify_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz";
-        sha512 = "ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==";
-      };
-    }
-    {
-      name = "console_control_strings___console_control_strings_1.1.0.tgz";
-      path = fetchurl {
-        name = "console_control_strings___console_control_strings_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz";
-        sha1 = "PXz0Rk22RG6mRL9LOVB/mFEAjo4=";
-      };
-    }
-    {
-      name = "constants_browserify___constants_browserify_1.0.0.tgz";
-      path = fetchurl {
-        name = "constants_browserify___constants_browserify_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz";
-        sha1 = "wguW2MYXdIqvHBYCF2DNJ/y4y3U=";
-      };
-    }
-    {
-      name = "content_disposition___content_disposition_0.5.3.tgz";
-      path = fetchurl {
-        name = "content_disposition___content_disposition_0.5.3.tgz";
-        url  = "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz";
-        sha512 = "ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==";
-      };
-    }
-    {
-      name = "content_type___content_type_1.0.4.tgz";
-      path = fetchurl {
-        name = "content_type___content_type_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz";
-        sha512 = "hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==";
-      };
-    }
-    {
-      name = "convert_source_map___convert_source_map_1.7.0.tgz";
-      path = fetchurl {
-        name = "convert_source_map___convert_source_map_1.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz";
-        sha512 = "4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==";
-      };
-    }
-    {
-      name = "cookie_signature___cookie_signature_1.0.6.tgz";
-      path = fetchurl {
-        name = "cookie_signature___cookie_signature_1.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz";
-        sha1 = "4wOogrNCzD7oylE6eZmXNNqzriw=";
-      };
-    }
-    {
-      name = "cookie___cookie_0.4.0.tgz";
-      path = fetchurl {
-        name = "cookie___cookie_0.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz";
-        sha512 = "+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==";
-      };
-    }
-    {
-      name = "copy_concurrently___copy_concurrently_1.0.5.tgz";
-      path = fetchurl {
-        name = "copy_concurrently___copy_concurrently_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz";
-        sha512 = "f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==";
-      };
-    }
-    {
-      name = "copy_descriptor___copy_descriptor_0.1.1.tgz";
-      path = fetchurl {
-        name = "copy_descriptor___copy_descriptor_0.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz";
-        sha1 = "Z29us8OZl8LuGsOpJP1hJHSPV40=";
-      };
-    }
-    {
-      name = "core_js_compat___core_js_compat_3.10.1.tgz";
-      path = fetchurl {
-        name = "core_js_compat___core_js_compat_3.10.1.tgz";
-        url  = "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.10.1.tgz";
-        sha512 = "ZHQTdTPkqvw2CeHiZC970NNJcnwzT6YIueDMASKt+p3WbZsLXOcoD392SkcWhkC0wBBHhlfhqGKKsNCQUozYtg==";
-      };
-    }
-    {
-      name = "core_js_pure___core_js_pure_3.6.5.tgz";
-      path = fetchurl {
-        name = "core_js_pure___core_js_pure_3.6.5.tgz";
-        url  = "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.6.5.tgz";
-        sha512 = "lacdXOimsiD0QyNf9BC/mxivNJ/ybBGJXQFKzRekp1WTHoVUWsUHEn+2T8GJAzzIhyOuXA+gOxCVN3l+5PLPUA==";
-      };
-    }
-    {
-      name = "core_js___core_js_2.6.11.tgz";
-      path = fetchurl {
-        name = "core_js___core_js_2.6.11.tgz";
-        url  = "https://registry.yarnpkg.com/core-js/-/core-js-2.6.11.tgz";
-        sha512 = "5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==";
-      };
-    }
-    {
-      name = "core_js___core_js_2.6.12.tgz";
-      path = fetchurl {
-        name = "core_js___core_js_2.6.12.tgz";
-        url  = "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz";
-        sha512 = "Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==";
-      };
-    }
-    {
-      name = "core_util_is___core_util_is_1.0.2.tgz";
-      path = fetchurl {
-        name = "core_util_is___core_util_is_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz";
-        sha1 = "tf1UIgqivFq1eqtxQMlAdUUDwac=";
-      };
-    }
-    {
-      name = "cosmiconfig___cosmiconfig_5.2.1.tgz";
-      path = fetchurl {
-        name = "cosmiconfig___cosmiconfig_5.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz";
-        sha512 = "H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==";
-      };
-    }
-    {
-      name = "cosmiconfig___cosmiconfig_6.0.0.tgz";
-      path = fetchurl {
-        name = "cosmiconfig___cosmiconfig_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz";
-        sha512 = "xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==";
-      };
-    }
-    {
-      name = "create_ecdh___create_ecdh_4.0.4.tgz";
-      path = fetchurl {
-        name = "create_ecdh___create_ecdh_4.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz";
-        sha512 = "mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==";
-      };
-    }
-    {
-      name = "create_hash___create_hash_1.2.0.tgz";
-      path = fetchurl {
-        name = "create_hash___create_hash_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz";
-        sha512 = "z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==";
-      };
-    }
-    {
-      name = "create_hmac___create_hmac_1.1.7.tgz";
-      path = fetchurl {
-        name = "create_hmac___create_hmac_1.1.7.tgz";
-        url  = "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz";
-        sha512 = "MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==";
-      };
-    }
-    {
-      name = "cross_env___cross_env_7.0.3.tgz";
-      path = fetchurl {
-        name = "cross_env___cross_env_7.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/cross-env/-/cross-env-7.0.3.tgz";
-        sha512 = "+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==";
-      };
-    }
-    {
-      name = "cross_spawn___cross_spawn_6.0.5.tgz";
-      path = fetchurl {
-        name = "cross_spawn___cross_spawn_6.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz";
-        sha512 = "eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==";
-      };
-    }
-    {
-      name = "cross_spawn___cross_spawn_7.0.3.tgz";
-      path = fetchurl {
-        name = "cross_spawn___cross_spawn_7.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz";
-        sha512 = "iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==";
-      };
-    }
-    {
-      name = "crypto_browserify___crypto_browserify_3.12.0.tgz";
-      path = fetchurl {
-        name = "crypto_browserify___crypto_browserify_3.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz";
-        sha512 = "fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==";
-      };
-    }
-    {
-      name = "css_color_names___css_color_names_0.0.4.tgz";
-      path = fetchurl {
-        name = "css_color_names___css_color_names_0.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz";
-        sha1 = "gIrcLnnPhHOAabZGyyDsJ762KeA=";
-      };
-    }
-    {
-      name = "css_declaration_sorter___css_declaration_sorter_4.0.1.tgz";
-      path = fetchurl {
-        name = "css_declaration_sorter___css_declaration_sorter_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz";
-        sha512 = "BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==";
-      };
-    }
-    {
-      name = "css_font_size_keywords___css_font_size_keywords_1.0.0.tgz";
-      path = fetchurl {
-        name = "css_font_size_keywords___css_font_size_keywords_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/css-font-size-keywords/-/css-font-size-keywords-1.0.0.tgz";
-        sha1 = "hUh1rOmspqjS7g00WkSq6btttss=";
-      };
-    }
-    {
-      name = "css_font_stretch_keywords___css_font_stretch_keywords_1.0.1.tgz";
-      path = fetchurl {
-        name = "css_font_stretch_keywords___css_font_stretch_keywords_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/css-font-stretch-keywords/-/css-font-stretch-keywords-1.0.1.tgz";
-        sha1 = "UM7puboDH7XJUtRyMTnx4Qe1SxA=";
-      };
-    }
-    {
-      name = "css_font_style_keywords___css_font_style_keywords_1.0.1.tgz";
-      path = fetchurl {
-        name = "css_font_style_keywords___css_font_style_keywords_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/css-font-style-keywords/-/css-font-style-keywords-1.0.1.tgz";
-        sha1 = "XDUygT9jtKHelU0TzqhqtDM0CeQ=";
-      };
-    }
-    {
-      name = "css_font_weight_keywords___css_font_weight_keywords_1.0.0.tgz";
-      path = fetchurl {
-        name = "css_font_weight_keywords___css_font_weight_keywords_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/css-font-weight-keywords/-/css-font-weight-keywords-1.0.0.tgz";
-        sha1 = "m8BGcayFvHJLV07106yWsNYE/Zc=";
-      };
-    }
-    {
-      name = "css_global_keywords___css_global_keywords_1.0.1.tgz";
-      path = fetchurl {
-        name = "css_global_keywords___css_global_keywords_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/css-global-keywords/-/css-global-keywords-1.0.1.tgz";
-        sha1 = "cqmupyeW0Bmx0qMlLeTlqqN+Smk=";
-      };
-    }
-    {
-      name = "css_list_helpers___css_list_helpers_1.0.1.tgz";
-      path = fetchurl {
-        name = "css_list_helpers___css_list_helpers_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/css-list-helpers/-/css-list-helpers-1.0.1.tgz";
-        sha1 = "//VxkiAtuDJAxBaG+RnkSacCT30=";
-      };
-    }
-    {
-      name = "css_loader___css_loader_5.2.6.tgz";
-      path = fetchurl {
-        name = "css_loader___css_loader_5.2.6.tgz";
-        url  = "https://registry.yarnpkg.com/css-loader/-/css-loader-5.2.6.tgz";
-        sha512 = "0wyN5vXMQZu6BvjbrPdUJvkCzGEO24HC7IS7nW4llc6BBFC+zwR9CKtYGv63Puzsg10L/o12inMY5/2ByzfD6w==";
-      };
-    }
-    {
-      name = "css_select_base_adapter___css_select_base_adapter_0.1.1.tgz";
-      path = fetchurl {
-        name = "css_select_base_adapter___css_select_base_adapter_0.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz";
-        sha512 = "jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==";
-      };
-    }
-    {
-      name = "css_select___css_select_2.1.0.tgz";
-      path = fetchurl {
-        name = "css_select___css_select_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/css-select/-/css-select-2.1.0.tgz";
-        sha512 = "Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==";
-      };
-    }
-    {
-      name = "css_system_font_keywords___css_system_font_keywords_1.0.0.tgz";
-      path = fetchurl {
-        name = "css_system_font_keywords___css_system_font_keywords_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/css-system-font-keywords/-/css-system-font-keywords-1.0.0.tgz";
-        sha1 = "hcbwhquk6zLFcaMIav/ENLhII+0=";
-      };
-    }
-    {
-      name = "css_tree___css_tree_1.0.0_alpha.37.tgz";
-      path = fetchurl {
-        name = "css_tree___css_tree_1.0.0_alpha.37.tgz";
-        url  = "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.37.tgz";
-        sha512 = "DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==";
-      };
-    }
-    {
-      name = "css_tree___css_tree_1.0.0_alpha.39.tgz";
-      path = fetchurl {
-        name = "css_tree___css_tree_1.0.0_alpha.39.tgz";
-        url  = "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.39.tgz";
-        sha512 = "7UvkEYgBAHRG9Nt980lYxjsTrCyHFN53ky3wVsDkiMdVqylqRt+Zc+jm5qw7/qyOvN2dHSYtX0e4MbCCExSvnA==";
-      };
-    }
-    {
-      name = "css_what___css_what_3.3.0.tgz";
-      path = fetchurl {
-        name = "css_what___css_what_3.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/css-what/-/css-what-3.3.0.tgz";
-        sha512 = "pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg==";
-      };
-    }
-    {
-      name = "css.escape___css.escape_1.5.1.tgz";
-      path = fetchurl {
-        name = "css.escape___css.escape_1.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz";
-        sha1 = "QuJ9T6BK4y+TGktNQZH6nN3ul8s=";
-      };
-    }
-    {
-      name = "css___css_3.0.0.tgz";
-      path = fetchurl {
-        name = "css___css_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/css/-/css-3.0.0.tgz";
-        sha512 = "DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==";
-      };
-    }
-    {
-      name = "cssesc___cssesc_3.0.0.tgz";
-      path = fetchurl {
-        name = "cssesc___cssesc_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz";
-        sha512 = "/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==";
-      };
-    }
-    {
-      name = "cssnano_preset_default___cssnano_preset_default_4.0.8.tgz";
-      path = fetchurl {
-        name = "cssnano_preset_default___cssnano_preset_default_4.0.8.tgz";
-        url  = "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz";
-        sha512 = "LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==";
-      };
-    }
-    {
-      name = "cssnano_util_get_arguments___cssnano_util_get_arguments_4.0.0.tgz";
-      path = fetchurl {
-        name = "cssnano_util_get_arguments___cssnano_util_get_arguments_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz";
-        sha1 = "7ToIKZ8h11dBsg87gfGU7UnMFQ8=";
-      };
-    }
-    {
-      name = "cssnano_util_get_match___cssnano_util_get_match_4.0.0.tgz";
-      path = fetchurl {
-        name = "cssnano_util_get_match___cssnano_util_get_match_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz";
-        sha1 = "wOTKB/U4a7F+xeUiULT1lhNlFW0=";
-      };
-    }
-    {
-      name = "cssnano_util_raw_cache___cssnano_util_raw_cache_4.0.1.tgz";
-      path = fetchurl {
-        name = "cssnano_util_raw_cache___cssnano_util_raw_cache_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz";
-        sha512 = "qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==";
-      };
-    }
-    {
-      name = "cssnano_util_same_parent___cssnano_util_same_parent_4.0.1.tgz";
-      path = fetchurl {
-        name = "cssnano_util_same_parent___cssnano_util_same_parent_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz";
-        sha512 = "WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==";
-      };
-    }
-    {
-      name = "cssnano___cssnano_4.1.11.tgz";
-      path = fetchurl {
-        name = "cssnano___cssnano_4.1.11.tgz";
-        url  = "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.11.tgz";
-        sha512 = "6gZm2htn7xIPJOHY824ERgj8cNPgPxyCSnkXc4v7YvNW+TdVfzgngHcEhy/8D11kUWRUMbke+tC+AUcUsnMz2g==";
-      };
-    }
-    {
-      name = "csso___csso_4.0.3.tgz";
-      path = fetchurl {
-        name = "csso___csso_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/csso/-/csso-4.0.3.tgz";
-        sha512 = "NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ==";
-      };
-    }
-    {
-      name = "cssom___cssom_0.4.4.tgz";
-      path = fetchurl {
-        name = "cssom___cssom_0.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz";
-        sha512 = "p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==";
-      };
-    }
-    {
-      name = "cssom___cssom_0.3.8.tgz";
-      path = fetchurl {
-        name = "cssom___cssom_0.3.8.tgz";
-        url  = "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz";
-        sha512 = "b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==";
-      };
-    }
-    {
-      name = "cssstyle___cssstyle_2.3.0.tgz";
-      path = fetchurl {
-        name = "cssstyle___cssstyle_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz";
-        sha512 = "AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==";
-      };
-    }
-    {
-      name = "csstype___csstype_2.6.13.tgz";
-      path = fetchurl {
-        name = "csstype___csstype_2.6.13.tgz";
-        url  = "https://registry.yarnpkg.com/csstype/-/csstype-2.6.13.tgz";
-        sha512 = "ul26pfSQTZW8dcOnD2iiJssfXw0gdNVX9IJDH/X3K5DGPfj+fUYe3kB+swUY6BF3oZDxaID3AJt+9/ojSAE05A==";
-      };
-    }
-    {
-      name = "csstype___csstype_3.0.6.tgz";
-      path = fetchurl {
-        name = "csstype___csstype_3.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/csstype/-/csstype-3.0.6.tgz";
-        sha512 = "+ZAmfyWMT7TiIlzdqJgjMb7S4f1beorDbWbsocyK4RaiqA5RTX3K14bnBWmmA9QEM0gRdsjyyrEmcyga8Zsxmw==";
-      };
-    }
-    {
-      name = "cyclist___cyclist_1.0.1.tgz";
-      path = fetchurl {
-        name = "cyclist___cyclist_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz";
-        sha1 = "WW6WmP0MgOEgOMK4LW6xs1tiJNk=";
-      };
-    }
-    {
-      name = "d___d_1.0.1.tgz";
-      path = fetchurl {
-        name = "d___d_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz";
-        sha512 = "m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==";
-      };
-    }
-    {
-      name = "damerau_levenshtein___damerau_levenshtein_1.0.6.tgz";
-      path = fetchurl {
-        name = "damerau_levenshtein___damerau_levenshtein_1.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz";
-        sha512 = "JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug==";
-      };
-    }
-    {
-      name = "dashdash___dashdash_1.14.1.tgz";
-      path = fetchurl {
-        name = "dashdash___dashdash_1.14.1.tgz";
-        url  = "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz";
-        sha1 = "hTz6D3y+L+1d4gMmuN1YEDX24vA=";
-      };
-    }
-    {
-      name = "data_urls___data_urls_2.0.0.tgz";
-      path = fetchurl {
-        name = "data_urls___data_urls_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz";
-        sha512 = "X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==";
-      };
-    }
-    {
-      name = "debug___debug_2.6.9.tgz";
-      path = fetchurl {
-        name = "debug___debug_2.6.9.tgz";
-        url  = "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz";
-        sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==";
-      };
-    }
-    {
-      name = "debug___debug_3.2.7.tgz";
-      path = fetchurl {
-        name = "debug___debug_3.2.7.tgz";
-        url  = "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz";
-        sha512 = "CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==";
-      };
-    }
-    {
-      name = "debug___debug_4.1.1.tgz";
-      path = fetchurl {
-        name = "debug___debug_4.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz";
-        sha512 = "pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==";
-      };
-    }
-    {
-      name = "decamelize___decamelize_1.2.0.tgz";
-      path = fetchurl {
-        name = "decamelize___decamelize_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz";
-        sha1 = "9lNNFRSCabIDUue+4m9QH5oZEpA=";
-      };
-    }
-    {
-      name = "decimal.js___decimal.js_10.2.1.tgz";
-      path = fetchurl {
-        name = "decimal.js___decimal.js_10.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.2.1.tgz";
-        sha512 = "KaL7+6Fw6i5A2XSnsbhm/6B+NuEA7TZ4vqxnd5tXz9sbKtrN9Srj8ab4vKVdK8YAqZO9P1kg45Y6YLoduPf+kw==";
-      };
-    }
-    {
-      name = "decode_uri_component___decode_uri_component_0.2.0.tgz";
-      path = fetchurl {
-        name = "decode_uri_component___decode_uri_component_0.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz";
-        sha1 = "6zkTMzRYd1y4TNGh+uBiEGu4dUU=";
-      };
-    }
-    {
-      name = "deep_equal___deep_equal_1.1.1.tgz";
-      path = fetchurl {
-        name = "deep_equal___deep_equal_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz";
-        sha512 = "yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==";
-      };
-    }
-    {
-      name = "deep_extend___deep_extend_0.5.1.tgz";
-      path = fetchurl {
-        name = "deep_extend___deep_extend_0.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.5.1.tgz";
-        sha512 = "N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==";
-      };
-    }
-    {
-      name = "deep_is___deep_is_0.1.3.tgz";
-      path = fetchurl {
-        name = "deep_is___deep_is_0.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz";
-        sha1 = "s2nW+128E+7PUk+RsHD+7cNXzzQ=";
-      };
-    }
-    {
-      name = "deepmerge___deepmerge_4.2.2.tgz";
-      path = fetchurl {
-        name = "deepmerge___deepmerge_4.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz";
-        sha512 = "FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==";
-      };
-    }
-    {
-      name = "default_gateway___default_gateway_4.2.0.tgz";
-      path = fetchurl {
-        name = "default_gateway___default_gateway_4.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/default-gateway/-/default-gateway-4.2.0.tgz";
-        sha512 = "h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==";
-      };
-    }
-    {
-      name = "define_properties___define_properties_1.1.3.tgz";
-      path = fetchurl {
-        name = "define_properties___define_properties_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz";
-        sha512 = "3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==";
-      };
-    }
-    {
-      name = "define_property___define_property_0.2.5.tgz";
-      path = fetchurl {
-        name = "define_property___define_property_0.2.5.tgz";
-        url  = "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz";
-        sha1 = "w1se+RjsPJkPmlvFe+BKrOxcgRY=";
-      };
-    }
-    {
-      name = "define_property___define_property_1.0.0.tgz";
-      path = fetchurl {
-        name = "define_property___define_property_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz";
-        sha1 = "dp66rz9KY6rTr56NMEybvnm/sOY=";
-      };
-    }
-    {
-      name = "define_property___define_property_2.0.2.tgz";
-      path = fetchurl {
-        name = "define_property___define_property_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz";
-        sha512 = "jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==";
-      };
-    }
-    {
-      name = "del___del_4.1.1.tgz";
-      path = fetchurl {
-        name = "del___del_4.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz";
-        sha512 = "QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==";
-      };
-    }
-    {
-      name = "delayed_stream___delayed_stream_1.0.0.tgz";
-      path = fetchurl {
-        name = "delayed_stream___delayed_stream_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz";
-        sha1 = "3zrhmayt+31ECqrgsp4icrJOxhk=";
-      };
-    }
-    {
-      name = "delegates___delegates_1.0.0.tgz";
-      path = fetchurl {
-        name = "delegates___delegates_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz";
-        sha1 = "hMbhWbgZBP3KWaDvRM2HDTElD5o=";
-      };
-    }
-    {
-      name = "denque___denque_1.5.0.tgz";
-      path = fetchurl {
-        name = "denque___denque_1.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/denque/-/denque-1.5.0.tgz";
-        sha512 = "CYiCSgIF1p6EUByQPlGkKnP1M9g0ZV3qMIrqMqZqdwazygIA/YP2vrbcyl1h/WppKJTdl1F85cXIle+394iDAQ==";
-      };
-    }
-    {
-      name = "depd___depd_1.1.2.tgz";
-      path = fetchurl {
-        name = "depd___depd_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz";
-        sha1 = "m81S4UwJd2PnSbJ0xDRu0uVgtak=";
-      };
-    }
-    {
-      name = "des.js___des.js_1.0.1.tgz";
-      path = fetchurl {
-        name = "des.js___des.js_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz";
-        sha512 = "Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==";
-      };
-    }
-    {
-      name = "destroy___destroy_1.0.4.tgz";
-      path = fetchurl {
-        name = "destroy___destroy_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz";
-        sha1 = "l4hXRCxEdJ5CBmE+N5RiBYJqvYA=";
-      };
-    }
-    {
-      name = "detect_file___detect_file_1.0.0.tgz";
-      path = fetchurl {
-        name = "detect_file___detect_file_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz";
-        sha1 = "8NZtA2cqglyxtzvbP+YjEMjlUrc=";
-      };
-    }
-    {
-      name = "detect_it___detect_it_4.0.1.tgz";
-      path = fetchurl {
-        name = "detect_it___detect_it_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/detect-it/-/detect-it-4.0.1.tgz";
-        sha512 = "dg5YBTJYvogK1+dA2mBUDKzOWfYZtHVba89SyZUhc4+e3i2tzgjANFg5lDRCd3UOtRcw00vUTMK8LELcMdicug==";
-      };
-    }
-    {
-      name = "detect_newline___detect_newline_3.1.0.tgz";
-      path = fetchurl {
-        name = "detect_newline___detect_newline_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz";
-        sha512 = "TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==";
-      };
-    }
-    {
-      name = "detect_node___detect_node_2.0.4.tgz";
-      path = fetchurl {
-        name = "detect_node___detect_node_2.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz";
-        sha512 = "ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==";
-      };
-    }
-    {
-      name = "detect_passive_events___detect_passive_events_2.0.3.tgz";
-      path = fetchurl {
-        name = "detect_passive_events___detect_passive_events_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/detect-passive-events/-/detect-passive-events-2.0.3.tgz";
-        sha512 = "QN/1X65Axis6a9D8qg8Py9cwY/fkWAmAH/edTbmLMcv4m5dboLJ7LcAi8CfaCON2tjk904KwKX/HTdsHC6yeRg==";
-      };
-    }
-    {
-      name = "diff_sequences___diff_sequences_25.2.6.tgz";
-      path = fetchurl {
-        name = "diff_sequences___diff_sequences_25.2.6.tgz";
-        url  = "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-25.2.6.tgz";
-        sha512 = "Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==";
-      };
-    }
-    {
-      name = "diff_sequences___diff_sequences_26.6.2.tgz";
-      path = fetchurl {
-        name = "diff_sequences___diff_sequences_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz";
-        sha512 = "Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==";
-      };
-    }
-    {
-      name = "diffie_hellman___diffie_hellman_5.0.3.tgz";
-      path = fetchurl {
-        name = "diffie_hellman___diffie_hellman_5.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz";
-        sha512 = "kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==";
-      };
-    }
-    {
-      name = "dns_equal___dns_equal_1.0.0.tgz";
-      path = fetchurl {
-        name = "dns_equal___dns_equal_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz";
-        sha1 = "s55/HabrCnW6nBcySzR1PEfgZU0=";
-      };
-    }
-    {
-      name = "dns_packet___dns_packet_1.3.4.tgz";
-      path = fetchurl {
-        name = "dns_packet___dns_packet_1.3.4.tgz";
-        url  = "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.4.tgz";
-        sha512 = "BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==";
-      };
-    }
-    {
-      name = "dns_txt___dns_txt_2.0.2.tgz";
-      path = fetchurl {
-        name = "dns_txt___dns_txt_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz";
-        sha1 = "uR2Ab10nGI5Ks+fRB9iBocxGQrY=";
-      };
-    }
-    {
-      name = "doctrine___doctrine_1.5.0.tgz";
-      path = fetchurl {
-        name = "doctrine___doctrine_1.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz";
-        sha1 = "N53Ocw9hZvds76TmcHoVmwLFpvo=";
-      };
-    }
-    {
-      name = "doctrine___doctrine_2.1.0.tgz";
-      path = fetchurl {
-        name = "doctrine___doctrine_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz";
-        sha512 = "35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==";
-      };
-    }
-    {
-      name = "doctrine___doctrine_3.0.0.tgz";
-      path = fetchurl {
-        name = "doctrine___doctrine_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz";
-        sha512 = "yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==";
-      };
-    }
-    {
-      name = "dom_accessibility_api___dom_accessibility_api_0.5.4.tgz";
-      path = fetchurl {
-        name = "dom_accessibility_api___dom_accessibility_api_0.5.4.tgz";
-        url  = "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.4.tgz";
-        sha512 = "TvrjBckDy2c6v6RLxPv5QXOnU+SmF9nBII5621Ve5fu6Z/BDrENurBEvlC1f44lKEUVqOpK4w9E5Idc5/EgkLQ==";
-      };
-    }
-    {
-      name = "dom_helpers___dom_helpers_3.4.0.tgz";
-      path = fetchurl {
-        name = "dom_helpers___dom_helpers_3.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-3.4.0.tgz";
-        sha512 = "LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==";
-      };
-    }
-    {
-      name = "dom_helpers___dom_helpers_5.1.3.tgz";
-      path = fetchurl {
-        name = "dom_helpers___dom_helpers_5.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.1.3.tgz";
-        sha512 = "nZD1OtwfWGRBWlpANxacBEZrEuLa16o1nh7YopFWeoF68Zt8GGEmzHu6Xv4F3XaFIC+YXtTLrzgqKxFgLEe4jw==";
-      };
-    }
-    {
-      name = "dom_serializer___dom_serializer_0.2.2.tgz";
-      path = fetchurl {
-        name = "dom_serializer___dom_serializer_0.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz";
-        sha512 = "2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==";
-      };
-    }
-    {
-      name = "domain_browser___domain_browser_1.2.0.tgz";
-      path = fetchurl {
-        name = "domain_browser___domain_browser_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz";
-        sha512 = "jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==";
-      };
-    }
-    {
-      name = "domelementtype___domelementtype_1.3.1.tgz";
-      path = fetchurl {
-        name = "domelementtype___domelementtype_1.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz";
-        sha512 = "BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==";
-      };
-    }
-    {
-      name = "domelementtype___domelementtype_2.0.1.tgz";
-      path = fetchurl {
-        name = "domelementtype___domelementtype_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz";
-        sha512 = "5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==";
-      };
-    }
-    {
-      name = "domexception___domexception_2.0.1.tgz";
-      path = fetchurl {
-        name = "domexception___domexception_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz";
-        sha512 = "yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==";
-      };
-    }
-    {
-      name = "domutils___domutils_1.7.0.tgz";
-      path = fetchurl {
-        name = "domutils___domutils_1.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz";
-        sha512 = "Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==";
-      };
-    }
-    {
-      name = "dot_prop___dot_prop_5.3.0.tgz";
-      path = fetchurl {
-        name = "dot_prop___dot_prop_5.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz";
-        sha512 = "QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==";
-      };
-    }
-    {
-      name = "dotenv___dotenv_9.0.2.tgz";
-      path = fetchurl {
-        name = "dotenv___dotenv_9.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/dotenv/-/dotenv-9.0.2.tgz";
-        sha512 = "I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg==";
-      };
-    }
-    {
-      name = "duplexer___duplexer_0.1.2.tgz";
-      path = fetchurl {
-        name = "duplexer___duplexer_0.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz";
-        sha512 = "jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==";
-      };
-    }
-    {
-      name = "duplexify___duplexify_3.7.1.tgz";
-      path = fetchurl {
-        name = "duplexify___duplexify_3.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz";
-        sha512 = "07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==";
-      };
-    }
-    {
-      name = "ecc_jsbn___ecc_jsbn_0.1.2.tgz";
-      path = fetchurl {
-        name = "ecc_jsbn___ecc_jsbn_0.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz";
-        sha1 = "OoOpBOVDUyh4dMVkt1SThoSamMk=";
-      };
-    }
-    {
-      name = "ee_first___ee_first_1.1.1.tgz";
-      path = fetchurl {
-        name = "ee_first___ee_first_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz";
-        sha1 = "WQxhFWsK4vTwJVcyoViyZrxWsh0=";
-      };
-    }
-    {
-      name = "ejs___ejs_2.7.4.tgz";
-      path = fetchurl {
-        name = "ejs___ejs_2.7.4.tgz";
-        url  = "https://registry.yarnpkg.com/ejs/-/ejs-2.7.4.tgz";
-        sha512 = "7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==";
-      };
-    }
-    {
-      name = "electron_to_chromium___electron_to_chromium_1.3.736.tgz";
-      path = fetchurl {
-        name = "electron_to_chromium___electron_to_chromium_1.3.736.tgz";
-        url  = "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.736.tgz";
-        sha512 = "DY8dA7gR51MSo66DqitEQoUMQ0Z+A2DSXFi7tK304bdTVqczCAfUuyQw6Wdg8hIoo5zIxkU1L24RQtUce1Ioig==";
-      };
-    }
-    {
-      name = "elliptic___elliptic_6.5.4.tgz";
-      path = fetchurl {
-        name = "elliptic___elliptic_6.5.4.tgz";
-        url  = "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz";
-        sha512 = "iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==";
-      };
-    }
-    {
-      name = "emittery___emittery_0.7.1.tgz";
-      path = fetchurl {
-        name = "emittery___emittery_0.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/emittery/-/emittery-0.7.1.tgz";
-        sha512 = "d34LN4L6h18Bzz9xpoku2nPwKxCPlPMr3EEKTkoEBi+1/+b0lcRkRJ1UVyyZaKNeqGR3swcGl6s390DNO4YVgQ==";
-      };
-    }
-    {
-      name = "emoji_mart___emoji_mart_3.0.1.tgz";
-      path = fetchurl {
-        name = "emoji_mart___emoji_mart_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/emoji-mart/-/emoji-mart-3.0.1.tgz";
-        sha512 = "sxpmMKxqLvcscu6mFn9ITHeZNkGzIvD0BSNFE/LJESPbCA8s1jM6bCDPjWbV31xHq7JXaxgpHxLB54RCbBZSlg==";
-      };
-    }
-    {
-      name = "emoji_regex___emoji_regex_7.0.3.tgz";
-      path = fetchurl {
-        name = "emoji_regex___emoji_regex_7.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz";
-        sha512 = "CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==";
-      };
-    }
-    {
-      name = "emoji_regex___emoji_regex_8.0.0.tgz";
-      path = fetchurl {
-        name = "emoji_regex___emoji_regex_8.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz";
-        sha512 = "MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==";
-      };
-    }
-    {
-      name = "emoji_regex___emoji_regex_9.0.0.tgz";
-      path = fetchurl {
-        name = "emoji_regex___emoji_regex_9.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.0.0.tgz";
-        sha512 = "6p1NII1Vm62wni/VR/cUMauVQoxmLVb9csqQlvLz+hO2gk8U2UYDfXHQSUYIBKmZwAKz867IDqG7B+u0mj+M6w==";
-      };
-    }
-    {
-      name = "emojis_list___emojis_list_2.1.0.tgz";
-      path = fetchurl {
-        name = "emojis_list___emojis_list_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz";
-        sha1 = "TapNnbAPmBmIDHn6RXrlsJof04k=";
-      };
-    }
-    {
-      name = "emojis_list___emojis_list_3.0.0.tgz";
-      path = fetchurl {
-        name = "emojis_list___emojis_list_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz";
-        sha512 = "/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==";
-      };
-    }
-    {
-      name = "encodeurl___encodeurl_1.0.2.tgz";
-      path = fetchurl {
-        name = "encodeurl___encodeurl_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz";
-        sha1 = "rT/0yG7C0CkyL1oCw6mmBslbP1k=";
-      };
-    }
-    {
-      name = "end_of_stream___end_of_stream_1.4.4.tgz";
-      path = fetchurl {
-        name = "end_of_stream___end_of_stream_1.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz";
-        sha512 = "+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==";
-      };
-    }
-    {
-      name = "enhanced_resolve___enhanced_resolve_4.5.0.tgz";
-      path = fetchurl {
-        name = "enhanced_resolve___enhanced_resolve_4.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz";
-        sha512 = "Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==";
-      };
-    }
-    {
-      name = "enquirer___enquirer_2.3.6.tgz";
-      path = fetchurl {
-        name = "enquirer___enquirer_2.3.6.tgz";
-        url  = "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz";
-        sha512 = "yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==";
-      };
-    }
-    {
-      name = "entities___entities_2.0.3.tgz";
-      path = fetchurl {
-        name = "entities___entities_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/entities/-/entities-2.0.3.tgz";
-        sha512 = "MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==";
-      };
-    }
-    {
-      name = "errno___errno_0.1.7.tgz";
-      path = fetchurl {
-        name = "errno___errno_0.1.7.tgz";
-        url  = "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz";
-        sha512 = "MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==";
-      };
-    }
-    {
-      name = "error_ex___error_ex_1.3.2.tgz";
-      path = fetchurl {
-        name = "error_ex___error_ex_1.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz";
-        sha512 = "7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==";
-      };
-    }
-    {
-      name = "error_stack_parser___error_stack_parser_2.0.6.tgz";
-      path = fetchurl {
-        name = "error_stack_parser___error_stack_parser_2.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.0.6.tgz";
-        sha512 = "d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ==";
-      };
-    }
-    {
-      name = "es_abstract___es_abstract_1.17.7.tgz";
-      path = fetchurl {
-        name = "es_abstract___es_abstract_1.17.7.tgz";
-        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.7.tgz";
-        sha512 = "VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==";
-      };
-    }
-    {
-      name = "es_abstract___es_abstract_1.18.0_next.2.tgz";
-      path = fetchurl {
-        name = "es_abstract___es_abstract_1.18.0_next.2.tgz";
-        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.2.tgz";
-        sha512 = "Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw==";
-      };
-    }
-    {
-      name = "es_abstract___es_abstract_1.18.3.tgz";
-      path = fetchurl {
-        name = "es_abstract___es_abstract_1.18.3.tgz";
-        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.3.tgz";
-        sha512 = "nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==";
-      };
-    }
-    {
-      name = "es_to_primitive___es_to_primitive_1.2.1.tgz";
-      path = fetchurl {
-        name = "es_to_primitive___es_to_primitive_1.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz";
-        sha512 = "QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==";
-      };
-    }
-    {
-      name = "es5_ext___es5_ext_0.10.53.tgz";
-      path = fetchurl {
-        name = "es5_ext___es5_ext_0.10.53.tgz";
-        url  = "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.53.tgz";
-        sha512 = "Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==";
-      };
-    }
-    {
-      name = "es6_iterator___es6_iterator_2.0.3.tgz";
-      path = fetchurl {
-        name = "es6_iterator___es6_iterator_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz";
-        sha1 = "p96IkUGgWpSwhUQDstCg+/qY87c=";
-      };
-    }
-    {
-      name = "es6_map___es6_map_0.1.5.tgz";
-      path = fetchurl {
-        name = "es6_map___es6_map_0.1.5.tgz";
-        url  = "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz";
-        sha1 = "kTbgUD3MBqMBaQ8LsU/042TpSfA=";
-      };
-    }
-    {
-      name = "es6_set___es6_set_0.1.5.tgz";
-      path = fetchurl {
-        name = "es6_set___es6_set_0.1.5.tgz";
-        url  = "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz";
-        sha1 = "0rPsXU2ADO2BjbU40ol02wpzzLE=";
-      };
-    }
-    {
-      name = "es6_symbol___es6_symbol_3.1.1.tgz";
-      path = fetchurl {
-        name = "es6_symbol___es6_symbol_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz";
-        sha1 = "vwDvT9q2uhtG7Le2KbTH7VcVzHc=";
-      };
-    }
-    {
-      name = "es6_symbol___es6_symbol_3.1.3.tgz";
-      path = fetchurl {
-        name = "es6_symbol___es6_symbol_3.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz";
-        sha512 = "NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==";
-      };
-    }
-    {
-      name = "es6_weak_map___es6_weak_map_2.0.3.tgz";
-      path = fetchurl {
-        name = "es6_weak_map___es6_weak_map_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.3.tgz";
-        sha512 = "p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==";
-      };
-    }
-    {
-      name = "escalade___escalade_3.1.1.tgz";
-      path = fetchurl {
-        name = "escalade___escalade_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz";
-        sha512 = "k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==";
-      };
-    }
-    {
-      name = "escape_html___escape_html_1.0.3.tgz";
-      path = fetchurl {
-        name = "escape_html___escape_html_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz";
-        sha1 = "Aljq5NPQwJdN4cFpGI7wBR0dGYg=";
-      };
-    }
-    {
-      name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
-      path = fetchurl {
-        name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
-        sha1 = "G2HAViGQqN/2rjuyzwIAyhMLhtQ=";
-      };
-    }
-    {
-      name = "escape_string_regexp___escape_string_regexp_2.0.0.tgz";
-      path = fetchurl {
-        name = "escape_string_regexp___escape_string_regexp_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz";
-        sha512 = "UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==";
-      };
-    }
-    {
-      name = "escape_string_regexp___escape_string_regexp_4.0.0.tgz";
-      path = fetchurl {
-        name = "escape_string_regexp___escape_string_regexp_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz";
-        sha512 = "TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==";
-      };
-    }
-    {
-      name = "escodegen___escodegen_1.14.3.tgz";
-      path = fetchurl {
-        name = "escodegen___escodegen_1.14.3.tgz";
-        url  = "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.3.tgz";
-        sha512 = "qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==";
-      };
-    }
-    {
-      name = "escope___escope_3.6.0.tgz";
-      path = fetchurl {
-        name = "escope___escope_3.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz";
-        sha1 = "4Bl16BJ4GhY6ba392AOY3GTIicM=";
-      };
-    }
-    {
-      name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.4.tgz";
-      path = fetchurl {
-        name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.4.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz";
-        sha512 = "ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==";
-      };
-    }
-    {
-      name = "eslint_module_utils___eslint_module_utils_2.6.1.tgz";
-      path = fetchurl {
-        name = "eslint_module_utils___eslint_module_utils_2.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz";
-        sha512 = "ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==";
-      };
-    }
-    {
-      name = "eslint_plugin_import___eslint_plugin_import_2.23.4.tgz";
-      path = fetchurl {
-        name = "eslint_plugin_import___eslint_plugin_import_2.23.4.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.23.4.tgz";
-        sha512 = "6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==";
-      };
-    }
-    {
-      name = "eslint_plugin_jsx_a11y___eslint_plugin_jsx_a11y_6.4.1.tgz";
-      path = fetchurl {
-        name = "eslint_plugin_jsx_a11y___eslint_plugin_jsx_a11y_6.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.4.1.tgz";
-        sha512 = "0rGPJBbwHoGNPU73/QCLP/vveMlM1b1Z9PponxO87jfr6tuH5ligXbDT6nHSSzBC8ovX2Z+BQu7Bk5D/Xgq9zg==";
-      };
-    }
-    {
-      name = "eslint_plugin_promise___eslint_plugin_promise_5.1.0.tgz";
-      path = fetchurl {
-        name = "eslint_plugin_promise___eslint_plugin_promise_5.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-5.1.0.tgz";
-        sha512 = "NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==";
-      };
-    }
-    {
-      name = "eslint_plugin_react___eslint_plugin_react_7.24.0.tgz";
-      path = fetchurl {
-        name = "eslint_plugin_react___eslint_plugin_react_7.24.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.24.0.tgz";
-        sha512 = "KJJIx2SYx7PBx3ONe/mEeMz4YE0Lcr7feJTCMyyKb/341NcjuAgim3Acgan89GfPv7nxXK2+0slu0CWXYM4x+Q==";
-      };
-    }
-    {
-      name = "eslint_scope___eslint_scope_4.0.3.tgz";
-      path = fetchurl {
-        name = "eslint_scope___eslint_scope_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz";
-        sha512 = "p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==";
-      };
-    }
-    {
-      name = "eslint_scope___eslint_scope_5.1.1.tgz";
-      path = fetchurl {
-        name = "eslint_scope___eslint_scope_5.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz";
-        sha512 = "2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==";
-      };
-    }
-    {
-      name = "eslint_utils___eslint_utils_2.1.0.tgz";
-      path = fetchurl {
-        name = "eslint_utils___eslint_utils_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz";
-        sha512 = "w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==";
-      };
-    }
-    {
-      name = "eslint_visitor_keys___eslint_visitor_keys_1.3.0.tgz";
-      path = fetchurl {
-        name = "eslint_visitor_keys___eslint_visitor_keys_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz";
-        sha512 = "6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==";
-      };
-    }
-    {
-      name = "eslint_visitor_keys___eslint_visitor_keys_2.0.0.tgz";
-      path = fetchurl {
-        name = "eslint_visitor_keys___eslint_visitor_keys_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz";
-        sha512 = "QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==";
-      };
-    }
-    {
-      name = "eslint___eslint_2.13.1.tgz";
-      path = fetchurl {
-        name = "eslint___eslint_2.13.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint/-/eslint-2.13.1.tgz";
-        sha1 = "5MyPoPAJ+4KaquI4VaKTYL4fbBE=";
-      };
-    }
-    {
-      name = "eslint___eslint_7.27.0.tgz";
-      path = fetchurl {
-        name = "eslint___eslint_7.27.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint/-/eslint-7.27.0.tgz";
-        sha512 = "JZuR6La2ZF0UD384lcbnd0Cgg6QJjiCwhMD6eU4h/VGPcVGwawNNzKU41tgokGXnfjOOyI6QIffthhJTPzzuRA==";
-      };
-    }
-    {
-      name = "espree___espree_3.5.4.tgz";
-      path = fetchurl {
-        name = "espree___espree_3.5.4.tgz";
-        url  = "https://registry.yarnpkg.com/espree/-/espree-3.5.4.tgz";
-        sha512 = "yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==";
-      };
-    }
-    {
-      name = "espree___espree_7.3.1.tgz";
-      path = fetchurl {
-        name = "espree___espree_7.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz";
-        sha512 = "v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==";
-      };
-    }
-    {
-      name = "esprima___esprima_4.0.1.tgz";
-      path = fetchurl {
-        name = "esprima___esprima_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz";
-        sha512 = "eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==";
-      };
-    }
-    {
-      name = "esquery___esquery_1.4.0.tgz";
-      path = fetchurl {
-        name = "esquery___esquery_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz";
-        sha512 = "cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==";
-      };
-    }
-    {
-      name = "esrecurse___esrecurse_4.3.0.tgz";
-      path = fetchurl {
-        name = "esrecurse___esrecurse_4.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz";
-        sha512 = "KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==";
-      };
-    }
-    {
-      name = "estraverse___estraverse_4.3.0.tgz";
-      path = fetchurl {
-        name = "estraverse___estraverse_4.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz";
-        sha512 = "39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==";
-      };
-    }
-    {
-      name = "estraverse___estraverse_5.2.0.tgz";
-      path = fetchurl {
-        name = "estraverse___estraverse_5.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz";
-        sha512 = "BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==";
-      };
-    }
-    {
-      name = "esutils___esutils_2.0.3.tgz";
-      path = fetchurl {
-        name = "esutils___esutils_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz";
-        sha512 = "kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==";
-      };
-    }
-    {
-      name = "etag___etag_1.8.1.tgz";
-      path = fetchurl {
-        name = "etag___etag_1.8.1.tgz";
-        url  = "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz";
-        sha1 = "Qa4u62XvpiJorr/qg6x9eSmbCIc=";
-      };
-    }
-    {
-      name = "event_emitter___event_emitter_0.3.5.tgz";
-      path = fetchurl {
-        name = "event_emitter___event_emitter_0.3.5.tgz";
-        url  = "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz";
-        sha1 = "34xp7vFkeSPHFXuc6DhAYQsCzDk=";
-      };
-    }
-    {
-      name = "eventemitter3___eventemitter3_4.0.7.tgz";
-      path = fetchurl {
-        name = "eventemitter3___eventemitter3_4.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz";
-        sha512 = "8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==";
-      };
-    }
-    {
-      name = "events___events_3.2.0.tgz";
-      path = fetchurl {
-        name = "events___events_3.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/events/-/events-3.2.0.tgz";
-        sha512 = "/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==";
-      };
-    }
-    {
-      name = "eventsource___eventsource_1.0.7.tgz";
-      path = fetchurl {
-        name = "eventsource___eventsource_1.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/eventsource/-/eventsource-1.0.7.tgz";
-        sha512 = "4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==";
-      };
-    }
-    {
-      name = "evp_bytestokey___evp_bytestokey_1.0.3.tgz";
-      path = fetchurl {
-        name = "evp_bytestokey___evp_bytestokey_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz";
-        sha512 = "/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==";
-      };
-    }
-    {
-      name = "exec_sh___exec_sh_0.3.4.tgz";
-      path = fetchurl {
-        name = "exec_sh___exec_sh_0.3.4.tgz";
-        url  = "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.4.tgz";
-        sha512 = "sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==";
-      };
-    }
-    {
-      name = "execa___execa_1.0.0.tgz";
-      path = fetchurl {
-        name = "execa___execa_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz";
-        sha512 = "adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==";
-      };
-    }
-    {
-      name = "execa___execa_4.1.0.tgz";
-      path = fetchurl {
-        name = "execa___execa_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz";
-        sha512 = "j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==";
-      };
-    }
-    {
-      name = "exif_js___exif_js_2.3.0.tgz";
-      path = fetchurl {
-        name = "exif_js___exif_js_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/exif-js/-/exif-js-2.3.0.tgz";
-        sha1 = "nRCBm/Vx+HOBPnZAJBJVq5zhqBQ=";
-      };
-    }
-    {
-      name = "exit_hook___exit_hook_1.1.1.tgz";
-      path = fetchurl {
-        name = "exit_hook___exit_hook_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz";
-        sha1 = "8FyiM7SMBdVP/wd2XfhQfpXAL/g=";
-      };
-    }
-    {
-      name = "exit___exit_0.1.2.tgz";
-      path = fetchurl {
-        name = "exit___exit_0.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz";
-        sha1 = "BjJjj42HfMghB9MKD/8aF8uhzQw=";
-      };
-    }
-    {
-      name = "expand_brackets___expand_brackets_2.1.4.tgz";
-      path = fetchurl {
-        name = "expand_brackets___expand_brackets_2.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz";
-        sha1 = "t3c14xXOMPa27/D4OwQVGiJEliI=";
-      };
-    }
-    {
-      name = "expand_tilde___expand_tilde_2.0.2.tgz";
-      path = fetchurl {
-        name = "expand_tilde___expand_tilde_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz";
-        sha1 = "l+gBqgUt8CRU3kawK/YhZCzchQI=";
-      };
-    }
-    {
-      name = "expect___expect_26.6.2.tgz";
-      path = fetchurl {
-        name = "expect___expect_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/expect/-/expect-26.6.2.tgz";
-        sha512 = "9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==";
-      };
-    }
-    {
-      name = "express___express_4.17.1.tgz";
-      path = fetchurl {
-        name = "express___express_4.17.1.tgz";
-        url  = "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz";
-        sha512 = "mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==";
-      };
-    }
-    {
-      name = "ext___ext_1.4.0.tgz";
-      path = fetchurl {
-        name = "ext___ext_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/ext/-/ext-1.4.0.tgz";
-        sha512 = "Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==";
-      };
-    }
-    {
-      name = "extend_shallow___extend_shallow_2.0.1.tgz";
-      path = fetchurl {
-        name = "extend_shallow___extend_shallow_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz";
-        sha1 = "Ua99YUrZqfYQ6huvu5idaxxWiQ8=";
-      };
-    }
-    {
-      name = "extend_shallow___extend_shallow_3.0.2.tgz";
-      path = fetchurl {
-        name = "extend_shallow___extend_shallow_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz";
-        sha1 = "Jqcarwc7OfshJxcnRhMcJwQCjbg=";
-      };
-    }
-    {
-      name = "extend___extend_3.0.2.tgz";
-      path = fetchurl {
-        name = "extend___extend_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz";
-        sha512 = "fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==";
-      };
-    }
-    {
-      name = "extglob___extglob_2.0.4.tgz";
-      path = fetchurl {
-        name = "extglob___extglob_2.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz";
-        sha512 = "Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==";
-      };
-    }
-    {
-      name = "extsprintf___extsprintf_1.3.0.tgz";
-      path = fetchurl {
-        name = "extsprintf___extsprintf_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz";
-        sha1 = "lpGEQOMEGnpBT4xS48V06zw+HgU=";
-      };
-    }
-    {
-      name = "extsprintf___extsprintf_1.4.0.tgz";
-      path = fetchurl {
-        name = "extsprintf___extsprintf_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz";
-        sha1 = "4mifjzVvrWLMplo6kcXfX5VRaS8=";
-      };
-    }
-    {
-      name = "fast_deep_equal___fast_deep_equal_3.1.3.tgz";
-      path = fetchurl {
-        name = "fast_deep_equal___fast_deep_equal_3.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz";
-        sha512 = "f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==";
-      };
-    }
-    {
-      name = "fast_json_stable_stringify___fast_json_stable_stringify_2.1.0.tgz";
-      path = fetchurl {
-        name = "fast_json_stable_stringify___fast_json_stable_stringify_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz";
-        sha512 = "lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==";
-      };
-    }
-    {
-      name = "fast_levenshtein___fast_levenshtein_2.0.6.tgz";
-      path = fetchurl {
-        name = "fast_levenshtein___fast_levenshtein_2.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz";
-        sha1 = "PYpcZog6FqMMqGQ+hR8Zuqd5eRc=";
-      };
-    }
-    {
-      name = "faye_websocket___faye_websocket_0.11.3.tgz";
-      path = fetchurl {
-        name = "faye_websocket___faye_websocket_0.11.3.tgz";
-        url  = "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.3.tgz";
-        sha512 = "D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA==";
-      };
-    }
-    {
-      name = "fb_watchman___fb_watchman_2.0.1.tgz";
-      path = fetchurl {
-        name = "fb_watchman___fb_watchman_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz";
-        sha512 = "DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==";
-      };
-    }
-    {
-      name = "figgy_pudding___figgy_pudding_3.5.2.tgz";
-      path = fetchurl {
-        name = "figgy_pudding___figgy_pudding_3.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz";
-        sha512 = "0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==";
-      };
-    }
-    {
-      name = "figures___figures_1.7.0.tgz";
-      path = fetchurl {
-        name = "figures___figures_1.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz";
-        sha1 = "y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=";
-      };
-    }
-    {
-      name = "file_entry_cache___file_entry_cache_1.3.1.tgz";
-      path = fetchurl {
-        name = "file_entry_cache___file_entry_cache_1.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-1.3.1.tgz";
-        sha1 = "RMYepgeuS+nBQC9B9EJwy/4zT/g=";
-      };
-    }
-    {
-      name = "file_entry_cache___file_entry_cache_6.0.1.tgz";
-      path = fetchurl {
-        name = "file_entry_cache___file_entry_cache_6.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz";
-        sha512 = "7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==";
-      };
-    }
-    {
-      name = "file_loader___file_loader_6.2.0.tgz";
-      path = fetchurl {
-        name = "file_loader___file_loader_6.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz";
-        sha512 = "qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==";
-      };
-    }
-    {
-      name = "file_type___file_type_12.4.2.tgz";
-      path = fetchurl {
-        name = "file_type___file_type_12.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/file-type/-/file-type-12.4.2.tgz";
-        sha512 = "UssQP5ZgIOKelfsaB5CuGAL+Y+q7EmONuiwF3N5HAH0t27rvrttgi6Ra9k/+DVaY9UF6+ybxu5pOXLUdA8N7Vg==";
-      };
-    }
-    {
-      name = "file_uri_to_path___file_uri_to_path_1.0.0.tgz";
-      path = fetchurl {
-        name = "file_uri_to_path___file_uri_to_path_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz";
-        sha512 = "0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==";
-      };
-    }
-    {
-      name = "fill_range___fill_range_4.0.0.tgz";
-      path = fetchurl {
-        name = "fill_range___fill_range_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz";
-        sha1 = "1USBHUKPmOsGpj3EAtJAPDKMOPc=";
-      };
-    }
-    {
-      name = "fill_range___fill_range_7.0.1.tgz";
-      path = fetchurl {
-        name = "fill_range___fill_range_7.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz";
-        sha512 = "qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==";
-      };
-    }
-    {
-      name = "finalhandler___finalhandler_1.1.2.tgz";
-      path = fetchurl {
-        name = "finalhandler___finalhandler_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz";
-        sha512 = "aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==";
-      };
-    }
-    {
-      name = "find_cache_dir___find_cache_dir_2.1.0.tgz";
-      path = fetchurl {
-        name = "find_cache_dir___find_cache_dir_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz";
-        sha512 = "Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==";
-      };
-    }
-    {
-      name = "find_cache_dir___find_cache_dir_3.3.1.tgz";
-      path = fetchurl {
-        name = "find_cache_dir___find_cache_dir_3.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz";
-        sha512 = "t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==";
-      };
-    }
-    {
-      name = "find_up___find_up_2.1.0.tgz";
-      path = fetchurl {
-        name = "find_up___find_up_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz";
-        sha1 = "RdG35QbHF93UgndaK3eSCjwMV6c=";
-      };
-    }
-    {
-      name = "find_up___find_up_3.0.0.tgz";
-      path = fetchurl {
-        name = "find_up___find_up_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz";
-        sha512 = "1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==";
-      };
-    }
-    {
-      name = "find_up___find_up_4.1.0.tgz";
-      path = fetchurl {
-        name = "find_up___find_up_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz";
-        sha512 = "PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==";
-      };
-    }
-    {
-      name = "findup_sync___findup_sync_3.0.0.tgz";
-      path = fetchurl {
-        name = "findup_sync___findup_sync_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz";
-        sha512 = "YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==";
-      };
-    }
-    {
-      name = "flat_cache___flat_cache_1.3.4.tgz";
-      path = fetchurl {
-        name = "flat_cache___flat_cache_1.3.4.tgz";
-        url  = "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.4.tgz";
-        sha512 = "VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==";
-      };
-    }
-    {
-      name = "flat_cache___flat_cache_3.0.4.tgz";
-      path = fetchurl {
-        name = "flat_cache___flat_cache_3.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz";
-        sha512 = "dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==";
-      };
-    }
-    {
-      name = "flatted___flatted_3.1.0.tgz";
-      path = fetchurl {
-        name = "flatted___flatted_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/flatted/-/flatted-3.1.0.tgz";
-        sha512 = "tW+UkmtNg/jv9CSofAKvgVcO7c2URjhTdW1ZTkcAritblu8tajiYy7YisnIflEwtKssCtOxpnBRoCB7iap0/TA==";
-      };
-    }
-    {
-      name = "flush_write_stream___flush_write_stream_1.1.1.tgz";
-      path = fetchurl {
-        name = "flush_write_stream___flush_write_stream_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz";
-        sha512 = "3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==";
-      };
-    }
-    {
-      name = "follow_redirects___follow_redirects_1.13.0.tgz";
-      path = fetchurl {
-        name = "follow_redirects___follow_redirects_1.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.13.0.tgz";
-        sha512 = "aq6gF1BEKje4a9i9+5jimNFIpq4Q1WiwBToeRK5NvZBd/TRsmW8BsJfOEGkr76TbOyPVD3OVDN910EcUNtRYEA==";
-      };
-    }
-    {
-      name = "font_awesome___font_awesome_4.7.0.tgz";
-      path = fetchurl {
-        name = "font_awesome___font_awesome_4.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/font-awesome/-/font-awesome-4.7.0.tgz";
-        sha1 = "j6jPBBGhoxr9B7BtKQK7n8gVoTM=";
-      };
-    }
-    {
-      name = "for_in___for_in_1.0.2.tgz";
-      path = fetchurl {
-        name = "for_in___for_in_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz";
-        sha1 = "gQaNKVqBQuwKxybG4iAMMPttXoA=";
-      };
-    }
-    {
-      name = "forever_agent___forever_agent_0.6.1.tgz";
-      path = fetchurl {
-        name = "forever_agent___forever_agent_0.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz";
-        sha1 = "+8cfDEGt6zf5bFd60e1C2P2sypE=";
-      };
-    }
-    {
-      name = "form_data___form_data_2.3.3.tgz";
-      path = fetchurl {
-        name = "form_data___form_data_2.3.3.tgz";
-        url  = "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz";
-        sha512 = "1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==";
-      };
-    }
-    {
-      name = "forwarded___forwarded_0.1.2.tgz";
-      path = fetchurl {
-        name = "forwarded___forwarded_0.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz";
-        sha1 = "mMI9qxF1ZXuMBXPozszZGw/xjIQ=";
-      };
-    }
-    {
-      name = "fragment_cache___fragment_cache_0.2.1.tgz";
-      path = fetchurl {
-        name = "fragment_cache___fragment_cache_0.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz";
-        sha1 = "QpD60n8T6Jvn8zeZxrxaCr//DRk=";
-      };
-    }
-    {
-      name = "fresh___fresh_0.5.2.tgz";
-      path = fetchurl {
-        name = "fresh___fresh_0.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz";
-        sha1 = "PYyt2Q2XZWn6g1qx+OSyOhBWBac=";
-      };
-    }
-    {
-      name = "from2___from2_2.3.0.tgz";
-      path = fetchurl {
-        name = "from2___from2_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz";
-        sha1 = "i/tVAr3kpNNs/e6gB/zKIdfjgq8=";
-      };
-    }
-    {
-      name = "front_matter___front_matter_2.1.2.tgz";
-      path = fetchurl {
-        name = "front_matter___front_matter_2.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/front-matter/-/front-matter-2.1.2.tgz";
-        sha1 = "91mDufL0E75ljJPf172M5AePXNs=";
-      };
-    }
-    {
-      name = "fs_extra___fs_extra_3.0.1.tgz";
-      path = fetchurl {
-        name = "fs_extra___fs_extra_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-3.0.1.tgz";
-        sha1 = "N5TzeMWLNC6n27sjCVEJxLO2IpE=";
-      };
-    }
-    {
-      name = "fs_extra___fs_extra_8.1.0.tgz";
-      path = fetchurl {
-        name = "fs_extra___fs_extra_8.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz";
-        sha512 = "yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==";
-      };
-    }
-    {
-      name = "fs_minipass___fs_minipass_2.1.0.tgz";
-      path = fetchurl {
-        name = "fs_minipass___fs_minipass_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz";
-        sha512 = "V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==";
-      };
-    }
-    {
-      name = "fs_write_stream_atomic___fs_write_stream_atomic_1.0.10.tgz";
-      path = fetchurl {
-        name = "fs_write_stream_atomic___fs_write_stream_atomic_1.0.10.tgz";
-        url  = "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz";
-        sha1 = "tH31NJPvkR33VzHnCp3tAYnbQMk=";
-      };
-    }
-    {
-      name = "fs.realpath___fs.realpath_1.0.0.tgz";
-      path = fetchurl {
-        name = "fs.realpath___fs.realpath_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz";
-        sha1 = "FQStJSMVjKpA20onh8sBQRmU6k8=";
-      };
-    }
-    {
-      name = "fsevents___fsevents_1.2.13.tgz";
-      path = fetchurl {
-        name = "fsevents___fsevents_1.2.13.tgz";
-        url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz";
-        sha512 = "oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==";
-      };
-    }
-    {
-      name = "fsevents___fsevents_2.1.3.tgz";
-      path = fetchurl {
-        name = "fsevents___fsevents_2.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz";
-        sha512 = "Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==";
-      };
-    }
-    {
-      name = "fsevents___fsevents_2.3.2.tgz";
-      path = fetchurl {
-        name = "fsevents___fsevents_2.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz";
-        sha512 = "xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==";
-      };
-    }
-    {
-      name = "function_bind___function_bind_1.1.1.tgz";
-      path = fetchurl {
-        name = "function_bind___function_bind_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz";
-        sha512 = "yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==";
-      };
-    }
-    {
-      name = "functional_red_black_tree___functional_red_black_tree_1.0.1.tgz";
-      path = fetchurl {
-        name = "functional_red_black_tree___functional_red_black_tree_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz";
-        sha1 = "GwqzvVU7Kg1jmdKcDj6gslIHgyc=";
-      };
-    }
-    {
-      name = "gauge___gauge_2.7.4.tgz";
-      path = fetchurl {
-        name = "gauge___gauge_2.7.4.tgz";
-        url  = "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz";
-        sha1 = "LANAXHU4w51+s3sxcCLjJfsBi/c=";
-      };
-    }
-    {
-      name = "generate_function___generate_function_2.3.1.tgz";
-      path = fetchurl {
-        name = "generate_function___generate_function_2.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/generate-function/-/generate-function-2.3.1.tgz";
-        sha512 = "eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==";
-      };
-    }
-    {
-      name = "generate_object_property___generate_object_property_1.2.0.tgz";
-      path = fetchurl {
-        name = "generate_object_property___generate_object_property_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz";
-        sha1 = "nA4cQDCM6AT0eDYYuTf6iPmdUNA=";
-      };
-    }
-    {
-      name = "gensync___gensync_1.0.0_beta.2.tgz";
-      path = fetchurl {
-        name = "gensync___gensync_1.0.0_beta.2.tgz";
-        url  = "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz";
-        sha512 = "3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==";
-      };
-    }
-    {
-      name = "get_caller_file___get_caller_file_2.0.5.tgz";
-      path = fetchurl {
-        name = "get_caller_file___get_caller_file_2.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz";
-        sha512 = "DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==";
-      };
-    }
-    {
-      name = "get_intrinsic___get_intrinsic_1.1.1.tgz";
-      path = fetchurl {
-        name = "get_intrinsic___get_intrinsic_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz";
-        sha512 = "kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==";
-      };
-    }
-    {
-      name = "get_package_type___get_package_type_0.1.0.tgz";
-      path = fetchurl {
-        name = "get_package_type___get_package_type_0.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz";
-        sha512 = "pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==";
-      };
-    }
-    {
-      name = "get_stream___get_stream_4.1.0.tgz";
-      path = fetchurl {
-        name = "get_stream___get_stream_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz";
-        sha512 = "GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==";
-      };
-    }
-    {
-      name = "get_stream___get_stream_5.2.0.tgz";
-      path = fetchurl {
-        name = "get_stream___get_stream_5.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz";
-        sha512 = "nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==";
-      };
-    }
-    {
-      name = "get_value___get_value_2.0.6.tgz";
-      path = fetchurl {
-        name = "get_value___get_value_2.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz";
-        sha1 = "3BXKHGcjh8p2vTesCjlbogQqLCg=";
-      };
-    }
-    {
-      name = "getpass___getpass_0.1.7.tgz";
-      path = fetchurl {
-        name = "getpass___getpass_0.1.7.tgz";
-        url  = "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz";
-        sha1 = "Xv+OPmhNVprkyysSgmBOi6YhSfo=";
-      };
-    }
-    {
-      name = "glob_parent___glob_parent_3.1.0.tgz";
-      path = fetchurl {
-        name = "glob_parent___glob_parent_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz";
-        sha1 = "nmr2KZ2NO9K9QEMIMr0RPfkGxa4=";
-      };
-    }
-    {
-      name = "glob_parent___glob_parent_5.1.1.tgz";
-      path = fetchurl {
-        name = "glob_parent___glob_parent_5.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz";
-        sha512 = "FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==";
-      };
-    }
-    {
-      name = "glob___glob_7.1.7.tgz";
-      path = fetchurl {
-        name = "glob___glob_7.1.7.tgz";
-        url  = "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz";
-        sha512 = "OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==";
-      };
-    }
-    {
-      name = "global_modules___global_modules_1.0.0.tgz";
-      path = fetchurl {
-        name = "global_modules___global_modules_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz";
-        sha512 = "sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==";
-      };
-    }
-    {
-      name = "global_modules___global_modules_2.0.0.tgz";
-      path = fetchurl {
-        name = "global_modules___global_modules_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz";
-        sha512 = "NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==";
-      };
-    }
-    {
-      name = "global_prefix___global_prefix_1.0.2.tgz";
-      path = fetchurl {
-        name = "global_prefix___global_prefix_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz";
-        sha1 = "2/dDxsFJklk8ZVVoy2btMsASLr4=";
-      };
-    }
-    {
-      name = "global_prefix___global_prefix_3.0.0.tgz";
-      path = fetchurl {
-        name = "global_prefix___global_prefix_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz";
-        sha512 = "awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==";
-      };
-    }
-    {
-      name = "globals___globals_11.12.0.tgz";
-      path = fetchurl {
-        name = "globals___globals_11.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz";
-        sha512 = "WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==";
-      };
-    }
-    {
-      name = "globals___globals_12.3.0.tgz";
-      path = fetchurl {
-        name = "globals___globals_12.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/globals/-/globals-12.3.0.tgz";
-        sha512 = "wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw==";
-      };
-    }
-    {
-      name = "globals___globals_13.6.0.tgz";
-      path = fetchurl {
-        name = "globals___globals_13.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/globals/-/globals-13.6.0.tgz";
-        sha512 = "YFKCX0SiPg7l5oKYCJ2zZGxcXprVXHcSnVuvzrT3oSENQonVLqM5pf9fN5dLGZGyCjhw8TN8Btwe/jKnZ0pjvQ==";
-      };
-    }
-    {
-      name = "globals___globals_9.18.0.tgz";
-      path = fetchurl {
-        name = "globals___globals_9.18.0.tgz";
-        url  = "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz";
-        sha512 = "S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==";
-      };
-    }
-    {
-      name = "globby___globby_6.1.0.tgz";
-      path = fetchurl {
-        name = "globby___globby_6.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz";
-        sha1 = "9abXDoOV4hyFj7BInWTfAkJNUGw=";
-      };
-    }
-    {
-      name = "globule___globule_1.3.2.tgz";
-      path = fetchurl {
-        name = "globule___globule_1.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/globule/-/globule-1.3.2.tgz";
-        sha512 = "7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==";
-      };
-    }
-    {
-      name = "gonzales_pe_sl___gonzales_pe_sl_4.2.3.tgz";
-      path = fetchurl {
-        name = "gonzales_pe_sl___gonzales_pe_sl_4.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/gonzales-pe-sl/-/gonzales-pe-sl-4.2.3.tgz";
-        sha1 = "aoaLw4BkXxQf7rBCxvl/zHG1n+Y=";
-      };
-    }
-    {
-      name = "graceful_fs___graceful_fs_4.2.4.tgz";
-      path = fetchurl {
-        name = "graceful_fs___graceful_fs_4.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz";
-        sha512 = "WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==";
-      };
-    }
-    {
-      name = "growly___growly_1.3.0.tgz";
-      path = fetchurl {
-        name = "growly___growly_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz";
-        sha1 = "8QdIy+dq+WS3yWyTxrzCivEgwIE=";
-      };
-    }
-    {
-      name = "gzip_size___gzip_size_6.0.0.tgz";
-      path = fetchurl {
-        name = "gzip_size___gzip_size_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz";
-        sha512 = "ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==";
-      };
-    }
-    {
-      name = "handle_thing___handle_thing_2.0.1.tgz";
-      path = fetchurl {
-        name = "handle_thing___handle_thing_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz";
-        sha512 = "9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==";
-      };
-    }
-    {
-      name = "har_schema___har_schema_2.0.0.tgz";
-      path = fetchurl {
-        name = "har_schema___har_schema_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz";
-        sha1 = "qUwiJOvKwEeCoNkDVSHyRzW37JI=";
-      };
-    }
-    {
-      name = "har_validator___har_validator_5.1.5.tgz";
-      path = fetchurl {
-        name = "har_validator___har_validator_5.1.5.tgz";
-        url  = "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz";
-        sha512 = "nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==";
-      };
-    }
-    {
-      name = "has_ansi___has_ansi_2.0.0.tgz";
-      path = fetchurl {
-        name = "has_ansi___has_ansi_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz";
-        sha1 = "NPUEnOHs3ysGSa8+8k5F7TVBbZE=";
-      };
-    }
-    {
-      name = "has_bigints___has_bigints_1.0.1.tgz";
-      path = fetchurl {
-        name = "has_bigints___has_bigints_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz";
-        sha512 = "LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==";
-      };
-    }
-    {
-      name = "has_flag___has_flag_1.0.0.tgz";
-      path = fetchurl {
-        name = "has_flag___has_flag_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz";
-        sha1 = "nZ55MWXOAXoA8AQYxD+UKnsdEfo=";
-      };
-    }
-    {
-      name = "has_flag___has_flag_3.0.0.tgz";
-      path = fetchurl {
-        name = "has_flag___has_flag_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz";
-        sha1 = "tdRU3CGZriJWmfNGfloH87lVuv0=";
-      };
-    }
-    {
-      name = "has_flag___has_flag_4.0.0.tgz";
-      path = fetchurl {
-        name = "has_flag___has_flag_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz";
-        sha512 = "EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==";
-      };
-    }
-    {
-      name = "has_symbols___has_symbols_1.0.1.tgz";
-      path = fetchurl {
-        name = "has_symbols___has_symbols_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz";
-        sha512 = "PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==";
-      };
-    }
-    {
-      name = "has_symbols___has_symbols_1.0.2.tgz";
-      path = fetchurl {
-        name = "has_symbols___has_symbols_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz";
-        sha512 = "chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==";
-      };
-    }
-    {
-      name = "has_unicode___has_unicode_2.0.1.tgz";
-      path = fetchurl {
-        name = "has_unicode___has_unicode_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz";
-        sha1 = "4Ob+aijPUROIVeCG0Wkedx3iqLk=";
-      };
-    }
-    {
-      name = "has_value___has_value_0.3.1.tgz";
-      path = fetchurl {
-        name = "has_value___has_value_0.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz";
-        sha1 = "ex9YutpiyoJ+wKIHgCVlSEWZXh8=";
-      };
-    }
-    {
-      name = "has_value___has_value_1.0.0.tgz";
-      path = fetchurl {
-        name = "has_value___has_value_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz";
-        sha1 = "GLKB2lhbHFxR3vJMkw7SmgvmsXc=";
-      };
-    }
-    {
-      name = "has_values___has_values_0.1.4.tgz";
-      path = fetchurl {
-        name = "has_values___has_values_0.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz";
-        sha1 = "bWHeldkd/Km5oCCJrThL/49it3E=";
-      };
-    }
-    {
-      name = "has_values___has_values_1.0.0.tgz";
-      path = fetchurl {
-        name = "has_values___has_values_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz";
-        sha1 = "lbC2P+whRmGab+V/51Yo1aOe/k8=";
-      };
-    }
-    {
-      name = "has___has_1.0.3.tgz";
-      path = fetchurl {
-        name = "has___has_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz";
-        sha512 = "f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==";
-      };
-    }
-    {
-      name = "hash_base___hash_base_3.1.0.tgz";
-      path = fetchurl {
-        name = "hash_base___hash_base_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz";
-        sha512 = "1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==";
-      };
-    }
-    {
-      name = "hash.js___hash.js_1.1.7.tgz";
-      path = fetchurl {
-        name = "hash.js___hash.js_1.1.7.tgz";
-        url  = "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz";
-        sha512 = "taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==";
-      };
-    }
-    {
-      name = "hex_color_regex___hex_color_regex_1.1.0.tgz";
-      path = fetchurl {
-        name = "hex_color_regex___hex_color_regex_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz";
-        sha512 = "l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==";
-      };
-    }
-    {
-      name = "history___history_4.10.1.tgz";
-      path = fetchurl {
-        name = "history___history_4.10.1.tgz";
-        url  = "https://registry.yarnpkg.com/history/-/history-4.10.1.tgz";
-        sha512 = "36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==";
-      };
-    }
-    {
-      name = "history___history_4.7.2.tgz";
-      path = fetchurl {
-        name = "history___history_4.7.2.tgz";
-        url  = "https://registry.yarnpkg.com/history/-/history-4.7.2.tgz";
-        sha512 = "1zkBRWW6XweO0NBcjiphtVJVsIQ+SXF29z9DVkceeaSLVMFXHool+fdCZD4spDCfZJCILPILc3bm7Bc+HRi0nA==";
-      };
-    }
-    {
-      name = "hmac_drbg___hmac_drbg_1.0.1.tgz";
-      path = fetchurl {
-        name = "hmac_drbg___hmac_drbg_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz";
-        sha1 = "0nRXAQJabHdabFRXk+1QL8DGSaE=";
-      };
-    }
-    {
-      name = "hoist_non_react_statics___hoist_non_react_statics_2.5.5.tgz";
-      path = fetchurl {
-        name = "hoist_non_react_statics___hoist_non_react_statics_2.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz";
-        sha512 = "rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==";
-      };
-    }
-    {
-      name = "hoist_non_react_statics___hoist_non_react_statics_3.3.2.tgz";
-      path = fetchurl {
-        name = "hoist_non_react_statics___hoist_non_react_statics_3.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz";
-        sha512 = "/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==";
-      };
-    }
-    {
-      name = "homedir_polyfill___homedir_polyfill_1.0.3.tgz";
-      path = fetchurl {
-        name = "homedir_polyfill___homedir_polyfill_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz";
-        sha512 = "eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==";
-      };
-    }
-    {
-      name = "hosted_git_info___hosted_git_info_2.8.9.tgz";
-      path = fetchurl {
-        name = "hosted_git_info___hosted_git_info_2.8.9.tgz";
-        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz";
-        sha512 = "mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==";
-      };
-    }
-    {
-      name = "hpack.js___hpack.js_2.1.6.tgz";
-      path = fetchurl {
-        name = "hpack.js___hpack.js_2.1.6.tgz";
-        url  = "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz";
-        sha1 = "h3dMCUnlE/QuhFdbPEVoH63ioLI=";
-      };
-    }
-    {
-      name = "hsl_regex___hsl_regex_1.0.0.tgz";
-      path = fetchurl {
-        name = "hsl_regex___hsl_regex_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz";
-        sha1 = "1JMwx4ntgZ4nakwNJy3/owsY/m4=";
-      };
-    }
-    {
-      name = "hsla_regex___hsla_regex_1.0.0.tgz";
-      path = fetchurl {
-        name = "hsla_regex___hsla_regex_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz";
-        sha1 = "wc56MWjIxmFAM6S194d/OyJfnDg=";
-      };
-    }
-    {
-      name = "html_encoding_sniffer___html_encoding_sniffer_2.0.1.tgz";
-      path = fetchurl {
-        name = "html_encoding_sniffer___html_encoding_sniffer_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz";
-        sha512 = "D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==";
-      };
-    }
-    {
-      name = "html_entities___html_entities_1.3.1.tgz";
-      path = fetchurl {
-        name = "html_entities___html_entities_1.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/html-entities/-/html-entities-1.3.1.tgz";
-        sha512 = "rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA==";
-      };
-    }
-    {
-      name = "html_escaper___html_escaper_2.0.2.tgz";
-      path = fetchurl {
-        name = "html_escaper___html_escaper_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz";
-        sha512 = "H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==";
-      };
-    }
-    {
-      name = "http_deceiver___http_deceiver_1.2.7.tgz";
-      path = fetchurl {
-        name = "http_deceiver___http_deceiver_1.2.7.tgz";
-        url  = "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz";
-        sha1 = "+nFolEq5pRnTN8sL7HKE3D5yPYc=";
-      };
-    }
-    {
-      name = "http_errors___http_errors_1.7.2.tgz";
-      path = fetchurl {
-        name = "http_errors___http_errors_1.7.2.tgz";
-        url  = "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz";
-        sha512 = "uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==";
-      };
-    }
-    {
-      name = "http_errors___http_errors_1.6.3.tgz";
-      path = fetchurl {
-        name = "http_errors___http_errors_1.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz";
-        sha1 = "i1VoC7S+KDoLW/TqLjhYC+HZMg0=";
-      };
-    }
-    {
-      name = "http_errors___http_errors_1.7.3.tgz";
-      path = fetchurl {
-        name = "http_errors___http_errors_1.7.3.tgz";
-        url  = "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz";
-        sha512 = "ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==";
-      };
-    }
-    {
-      name = "http_link_header___http_link_header_1.0.3.tgz";
-      path = fetchurl {
-        name = "http_link_header___http_link_header_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/http-link-header/-/http-link-header-1.0.3.tgz";
-        sha512 = "nARK1wSKoBBrtcoESlHBx36c1Ln/gnbNQi1eB6MeTUefJIT3NvUOsV15bClga0k38f0q/kN5xxrGSDS3EFnm9w==";
-      };
-    }
-    {
-      name = "http_parser_js___http_parser_js_0.4.10.tgz";
-      path = fetchurl {
-        name = "http_parser_js___http_parser_js_0.4.10.tgz";
-        url  = "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.10.tgz";
-        sha1 = "ksnBN0w1CF912zWexWzCV8u5P6Q=";
-      };
-    }
-    {
-      name = "http_parser_js___http_parser_js_0.5.3.tgz";
-      path = fetchurl {
-        name = "http_parser_js___http_parser_js_0.5.3.tgz";
-        url  = "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.3.tgz";
-        sha512 = "t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg==";
-      };
-    }
-    {
-      name = "http_proxy_middleware___http_proxy_middleware_0.19.1.tgz";
-      path = fetchurl {
-        name = "http_proxy_middleware___http_proxy_middleware_0.19.1.tgz";
-        url  = "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz";
-        sha512 = "yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==";
-      };
-    }
-    {
-      name = "http_proxy___http_proxy_1.18.1.tgz";
-      path = fetchurl {
-        name = "http_proxy___http_proxy_1.18.1.tgz";
-        url  = "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz";
-        sha512 = "7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==";
-      };
-    }
-    {
-      name = "http_signature___http_signature_1.2.0.tgz";
-      path = fetchurl {
-        name = "http_signature___http_signature_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz";
-        sha1 = "muzZJRFHcvPZW2WmCruPfBj7rOE=";
-      };
-    }
-    {
-      name = "https_browserify___https_browserify_1.0.0.tgz";
-      path = fetchurl {
-        name = "https_browserify___https_browserify_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz";
-        sha1 = "7AbBDgo0wPL68Zn3/X/Hj//QPHM=";
-      };
-    }
-    {
-      name = "human_signals___human_signals_1.1.1.tgz";
-      path = fetchurl {
-        name = "human_signals___human_signals_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz";
-        sha512 = "SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==";
-      };
-    }
-    {
-      name = "iconv_lite___iconv_lite_0.4.24.tgz";
-      path = fetchurl {
-        name = "iconv_lite___iconv_lite_0.4.24.tgz";
-        url  = "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz";
-        sha512 = "v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==";
-      };
-    }
-    {
-      name = "icss_utils___icss_utils_5.1.0.tgz";
-      path = fetchurl {
-        name = "icss_utils___icss_utils_5.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz";
-        sha512 = "soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==";
-      };
-    }
-    {
-      name = "idb_keyval___idb_keyval_3.2.0.tgz";
-      path = fetchurl {
-        name = "idb_keyval___idb_keyval_3.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/idb-keyval/-/idb-keyval-3.2.0.tgz";
-        sha512 = "slx8Q6oywCCSfKgPgL0sEsXtPVnSbTLWpyiDcu6msHOyKOLari1TD1qocXVCft80umnkk3/Qqh3lwoFt8T/BPQ==";
-      };
-    }
-    {
-      name = "ieee754___ieee754_1.1.13.tgz";
-      path = fetchurl {
-        name = "ieee754___ieee754_1.1.13.tgz";
-        url  = "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz";
-        sha512 = "4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==";
-      };
-    }
-    {
-      name = "iferr___iferr_0.1.5.tgz";
-      path = fetchurl {
-        name = "iferr___iferr_0.1.5.tgz";
-        url  = "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz";
-        sha1 = "xg7taebY/bazEEofy8ocGS3FtQE=";
-      };
-    }
-    {
-      name = "ignore___ignore_3.3.10.tgz";
-      path = fetchurl {
-        name = "ignore___ignore_3.3.10.tgz";
-        url  = "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz";
-        sha512 = "Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==";
-      };
-    }
-    {
-      name = "ignore___ignore_4.0.6.tgz";
-      path = fetchurl {
-        name = "ignore___ignore_4.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz";
-        sha512 = "cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==";
-      };
-    }
-    {
-      name = "immutable___immutable_3.8.2.tgz";
-      path = fetchurl {
-        name = "immutable___immutable_3.8.2.tgz";
-        url  = "https://registry.yarnpkg.com/immutable/-/immutable-3.8.2.tgz";
-        sha1 = "wkOZUUVbs5kT2vKBN28VMOEErfM=";
-      };
-    }
-    {
-      name = "import_cwd___import_cwd_2.1.0.tgz";
-      path = fetchurl {
-        name = "import_cwd___import_cwd_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz";
-        sha1 = "qmzzbnInYShcs3HsZRn1PiQ1sKk=";
-      };
-    }
-    {
-      name = "import_fresh___import_fresh_2.0.0.tgz";
-      path = fetchurl {
-        name = "import_fresh___import_fresh_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz";
-        sha1 = "2BNVwVYS04bGH53dOSLUMEgipUY=";
-      };
-    }
-    {
-      name = "import_fresh___import_fresh_3.2.1.tgz";
-      path = fetchurl {
-        name = "import_fresh___import_fresh_3.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz";
-        sha512 = "6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==";
-      };
-    }
-    {
-      name = "import_from___import_from_2.1.0.tgz";
-      path = fetchurl {
-        name = "import_from___import_from_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz";
-        sha1 = "M1238qev/VOqpHHUuAId7ja387E=";
-      };
-    }
-    {
-      name = "import_local___import_local_2.0.0.tgz";
-      path = fetchurl {
-        name = "import_local___import_local_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz";
-        sha512 = "b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==";
-      };
-    }
-    {
-      name = "import_local___import_local_3.0.2.tgz";
-      path = fetchurl {
-        name = "import_local___import_local_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/import-local/-/import-local-3.0.2.tgz";
-        sha512 = "vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==";
-      };
-    }
-    {
-      name = "imports_loader___imports_loader_1.2.0.tgz";
-      path = fetchurl {
-        name = "imports_loader___imports_loader_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/imports-loader/-/imports-loader-1.2.0.tgz";
-        sha512 = "zPvangKEgrrPeqeUqH0Uhc59YqK07JqZBi9a9cQ3v/EKUIqrbJHY4CvUrDus2lgQa5AmPyXuGrWP8JJTqzE5RQ==";
-      };
-    }
-    {
-      name = "imurmurhash___imurmurhash_0.1.4.tgz";
-      path = fetchurl {
-        name = "imurmurhash___imurmurhash_0.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz";
-        sha1 = "khi5srkoojixPcT7a21XbyMUU+o=";
-      };
-    }
-    {
-      name = "indent_string___indent_string_4.0.0.tgz";
-      path = fetchurl {
-        name = "indent_string___indent_string_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz";
-        sha512 = "EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==";
-      };
-    }
-    {
-      name = "indexes_of___indexes_of_1.0.1.tgz";
-      path = fetchurl {
-        name = "indexes_of___indexes_of_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz";
-        sha1 = "8w9xbI4r00bHtn0985FVZqfAVgc=";
-      };
-    }
-    {
-      name = "infer_owner___infer_owner_1.0.4.tgz";
-      path = fetchurl {
-        name = "infer_owner___infer_owner_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz";
-        sha512 = "IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==";
-      };
-    }
-    {
-      name = "inflight___inflight_1.0.6.tgz";
-      path = fetchurl {
-        name = "inflight___inflight_1.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz";
-        sha1 = "Sb1jMdfQLQwJvJEKEHW6gWW1bfk=";
-      };
-    }
-    {
-      name = "inherits___inherits_2.0.4.tgz";
-      path = fetchurl {
-        name = "inherits___inherits_2.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz";
-        sha512 = "k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==";
-      };
-    }
-    {
-      name = "inherits___inherits_2.0.1.tgz";
-      path = fetchurl {
-        name = "inherits___inherits_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz";
-        sha1 = "sX0I0ya0Qj5Wjv9xn5GwscvfafE=";
-      };
-    }
-    {
-      name = "inherits___inherits_2.0.3.tgz";
-      path = fetchurl {
-        name = "inherits___inherits_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz";
-        sha1 = "Yzwsg+PaQqUC9SRmAiSA9CCCYd4=";
-      };
-    }
-    {
-      name = "ini___ini_1.3.7.tgz";
-      path = fetchurl {
-        name = "ini___ini_1.3.7.tgz";
-        url  = "https://registry.yarnpkg.com/ini/-/ini-1.3.7.tgz";
-        sha512 = "iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==";
-      };
-    }
-    {
-      name = "inquirer___inquirer_0.12.0.tgz";
-      path = fetchurl {
-        name = "inquirer___inquirer_0.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/inquirer/-/inquirer-0.12.0.tgz";
-        sha1 = "HvK/1jUE3wvHV4X/+MLEHfEvB34=";
-      };
-    }
-    {
-      name = "internal_ip___internal_ip_4.3.0.tgz";
-      path = fetchurl {
-        name = "internal_ip___internal_ip_4.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz";
-        sha512 = "S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==";
-      };
-    }
-    {
-      name = "internal_slot___internal_slot_1.0.3.tgz";
-      path = fetchurl {
-        name = "internal_slot___internal_slot_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz";
-        sha512 = "O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==";
-      };
-    }
-    {
-      name = "interpret___interpret_1.4.0.tgz";
-      path = fetchurl {
-        name = "interpret___interpret_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz";
-        sha512 = "agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==";
-      };
-    }
-    {
-      name = "intersection_observer___intersection_observer_0.12.0.tgz";
-      path = fetchurl {
-        name = "intersection_observer___intersection_observer_0.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/intersection-observer/-/intersection-observer-0.12.0.tgz";
-        sha512 = "2Vkz8z46Dv401zTWudDGwO7KiGHNDkMv417T5ItcNYfmvHR/1qCTVBO9vwH8zZmQ0WkA/1ARwpysR9bsnop4NQ==";
-      };
-    }
-    {
-      name = "intl_format_cache___intl_format_cache_2.2.9.tgz";
-      path = fetchurl {
-        name = "intl_format_cache___intl_format_cache_2.2.9.tgz";
-        url  = "https://registry.yarnpkg.com/intl-format-cache/-/intl-format-cache-2.2.9.tgz";
-        sha512 = "Zv/u8wRpekckv0cLkwpVdABYST4hZNTDaX7reFetrYTJwxExR2VyTqQm+l0WmL0Qo8Mjb9Tf33qnfj0T7pjxdQ==";
-      };
-    }
-    {
-      name = "intl_messageformat_parser___intl_messageformat_parser_1.4.0.tgz";
-      path = fetchurl {
-        name = "intl_messageformat_parser___intl_messageformat_parser_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/intl-messageformat-parser/-/intl-messageformat-parser-1.4.0.tgz";
-        sha1 = "tD1FqXRoytvkQzHXS7Ho3qRPwHU=";
-      };
-    }
-    {
-      name = "intl_messageformat_parser___intl_messageformat_parser_4.1.4.tgz";
-      path = fetchurl {
-        name = "intl_messageformat_parser___intl_messageformat_parser_4.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/intl-messageformat-parser/-/intl-messageformat-parser-4.1.4.tgz";
-        sha512 = "zV4kBUD1yhxSyaXm6bGhmP4HFH9Gh4pRQwNn+xq5P+B1dT8mpaAfU75nfUn4HgddIB6pyFnzM5MQjO55UpJwkQ==";
-      };
-    }
-    {
-      name = "intl_messageformat___intl_messageformat_2.2.0.tgz";
-      path = fetchurl {
-        name = "intl_messageformat___intl_messageformat_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-2.2.0.tgz";
-        sha1 = "NFvNRt5jC3aDMwwuUhd/9eq0hPw=";
-      };
-    }
-    {
-      name = "intl_relativeformat___intl_relativeformat_2.2.0.tgz";
-      path = fetchurl {
-        name = "intl_relativeformat___intl_relativeformat_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/intl-relativeformat/-/intl-relativeformat-2.2.0.tgz";
-        sha512 = "4bV/7kSKaPEmu6ArxXf9xjv1ny74Zkwuey8Pm01NH4zggPP7JHwg2STk8Y3JdspCKRDriwIyLRfEXnj2ZLr4Bw==";
-      };
-    }
-    {
-      name = "intl_relativeformat___intl_relativeformat_6.4.3.tgz";
-      path = fetchurl {
-        name = "intl_relativeformat___intl_relativeformat_6.4.3.tgz";
-        url  = "https://registry.yarnpkg.com/intl-relativeformat/-/intl-relativeformat-6.4.3.tgz";
-        sha512 = "VxZXZfhuX/zBVfxzE/J6kPUpsyWKYjqtZ3jVGZwr6wzK5BOLVpe1vSlwCQX56w5UjlpL63fS8Nxq0kgTyf1gJA==";
-      };
-    }
-    {
-      name = "intl___intl_1.2.5.tgz";
-      path = fetchurl {
-        name = "intl___intl_1.2.5.tgz";
-        url  = "https://registry.yarnpkg.com/intl/-/intl-1.2.5.tgz";
-        sha1 = "giRKIZDE5Bn4Nx9ao02qNCDiq94=";
-      };
-    }
-    {
-      name = "invariant___invariant_2.2.4.tgz";
-      path = fetchurl {
-        name = "invariant___invariant_2.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz";
-        sha512 = "phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==";
-      };
-    }
-    {
-      name = "ip_regex___ip_regex_2.1.0.tgz";
-      path = fetchurl {
-        name = "ip_regex___ip_regex_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz";
-        sha1 = "+ni/XS5pE8kRzp+BnuUUa7bYROk=";
-      };
-    }
-    {
-      name = "ip___ip_1.1.5.tgz";
-      path = fetchurl {
-        name = "ip___ip_1.1.5.tgz";
-        url  = "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz";
-        sha1 = "vd7XARQpCCjAoDnnLvJfWq7ENUo=";
-      };
-    }
-    {
-      name = "ipaddr.js___ipaddr.js_1.9.1.tgz";
-      path = fetchurl {
-        name = "ipaddr.js___ipaddr.js_1.9.1.tgz";
-        url  = "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz";
-        sha512 = "0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==";
-      };
-    }
-    {
-      name = "is_absolute_url___is_absolute_url_2.1.0.tgz";
-      path = fetchurl {
-        name = "is_absolute_url___is_absolute_url_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz";
-        sha1 = "UFMN+4T8yap9vnhS6Do3uTufKqY=";
-      };
-    }
-    {
-      name = "is_absolute_url___is_absolute_url_3.0.3.tgz";
-      path = fetchurl {
-        name = "is_absolute_url___is_absolute_url_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz";
-        sha512 = "opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==";
-      };
-    }
-    {
-      name = "is_accessor_descriptor___is_accessor_descriptor_0.1.6.tgz";
-      path = fetchurl {
-        name = "is_accessor_descriptor___is_accessor_descriptor_0.1.6.tgz";
-        url  = "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz";
-        sha1 = "qeEss66Nh2cn7u84Q/igiXtcmNY=";
-      };
-    }
-    {
-      name = "is_accessor_descriptor___is_accessor_descriptor_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_accessor_descriptor___is_accessor_descriptor_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz";
-        sha512 = "m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==";
-      };
-    }
-    {
-      name = "is_arguments___is_arguments_1.0.4.tgz";
-      path = fetchurl {
-        name = "is_arguments___is_arguments_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.0.4.tgz";
-        sha512 = "xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==";
-      };
-    }
-    {
-      name = "is_arrayish___is_arrayish_0.2.1.tgz";
-      path = fetchurl {
-        name = "is_arrayish___is_arrayish_0.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz";
-        sha1 = "d8mYQFJ6qOyxqLppe4BkWnqSap0=";
-      };
-    }
-    {
-      name = "is_arrayish___is_arrayish_0.3.2.tgz";
-      path = fetchurl {
-        name = "is_arrayish___is_arrayish_0.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz";
-        sha512 = "eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==";
-      };
-    }
-    {
-      name = "is_bigint___is_bigint_1.0.2.tgz";
-      path = fetchurl {
-        name = "is_bigint___is_bigint_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.2.tgz";
-        sha512 = "0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==";
-      };
-    }
-    {
-      name = "is_binary_path___is_binary_path_1.0.1.tgz";
-      path = fetchurl {
-        name = "is_binary_path___is_binary_path_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz";
-        sha1 = "dfFmQrSA8YenEcgUFh/TpKdlWJg=";
-      };
-    }
-    {
-      name = "is_binary_path___is_binary_path_2.1.0.tgz";
-      path = fetchurl {
-        name = "is_binary_path___is_binary_path_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz";
-        sha512 = "ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==";
-      };
-    }
-    {
-      name = "is_boolean_object___is_boolean_object_1.1.1.tgz";
-      path = fetchurl {
-        name = "is_boolean_object___is_boolean_object_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.1.tgz";
-        sha512 = "bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==";
-      };
-    }
-    {
-      name = "is_buffer___is_buffer_1.1.6.tgz";
-      path = fetchurl {
-        name = "is_buffer___is_buffer_1.1.6.tgz";
-        url  = "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz";
-        sha512 = "NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==";
-      };
-    }
-    {
-      name = "is_callable___is_callable_1.2.2.tgz";
-      path = fetchurl {
-        name = "is_callable___is_callable_1.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.2.tgz";
-        sha512 = "dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==";
-      };
-    }
-    {
-      name = "is_callable___is_callable_1.2.3.tgz";
-      path = fetchurl {
-        name = "is_callable___is_callable_1.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.3.tgz";
-        sha512 = "J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==";
-      };
-    }
-    {
-      name = "is_ci___is_ci_2.0.0.tgz";
-      path = fetchurl {
-        name = "is_ci___is_ci_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz";
-        sha512 = "YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==";
-      };
-    }
-    {
-      name = "is_ci___is_ci_3.0.0.tgz";
-      path = fetchurl {
-        name = "is_ci___is_ci_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.0.tgz";
-        sha512 = "kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ==";
-      };
-    }
-    {
-      name = "is_color_stop___is_color_stop_1.1.0.tgz";
-      path = fetchurl {
-        name = "is_color_stop___is_color_stop_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz";
-        sha1 = "z/9HGu5N1cnhWFmPvhKWe1za00U=";
-      };
-    }
-    {
-      name = "is_core_module___is_core_module_2.4.0.tgz";
-      path = fetchurl {
-        name = "is_core_module___is_core_module_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.4.0.tgz";
-        sha512 = "6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==";
-      };
-    }
-    {
-      name = "is_data_descriptor___is_data_descriptor_0.1.4.tgz";
-      path = fetchurl {
-        name = "is_data_descriptor___is_data_descriptor_0.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz";
-        sha1 = "C17mSDiOLIYCgueT8YVv7D8wG1Y=";
-      };
-    }
-    {
-      name = "is_data_descriptor___is_data_descriptor_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_data_descriptor___is_data_descriptor_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz";
-        sha512 = "jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==";
-      };
-    }
-    {
-      name = "is_date_object___is_date_object_1.0.2.tgz";
-      path = fetchurl {
-        name = "is_date_object___is_date_object_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz";
-        sha512 = "USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==";
-      };
-    }
-    {
-      name = "is_descriptor___is_descriptor_0.1.6.tgz";
-      path = fetchurl {
-        name = "is_descriptor___is_descriptor_0.1.6.tgz";
-        url  = "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz";
-        sha512 = "avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==";
-      };
-    }
-    {
-      name = "is_descriptor___is_descriptor_1.0.2.tgz";
-      path = fetchurl {
-        name = "is_descriptor___is_descriptor_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz";
-        sha512 = "2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==";
-      };
-    }
-    {
-      name = "is_directory___is_directory_0.3.1.tgz";
-      path = fetchurl {
-        name = "is_directory___is_directory_0.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz";
-        sha1 = "YTObbyR1/Hcv2cnYP1yFddwVSuE=";
-      };
-    }
-    {
-      name = "is_docker___is_docker_2.1.1.tgz";
-      path = fetchurl {
-        name = "is_docker___is_docker_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-docker/-/is-docker-2.1.1.tgz";
-        sha512 = "ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==";
-      };
-    }
-    {
-      name = "is_electron___is_electron_2.2.0.tgz";
-      path = fetchurl {
-        name = "is_electron___is_electron_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-electron/-/is-electron-2.2.0.tgz";
-        sha512 = "SpMppC2XR3YdxSzczXReBjqs2zGscWQpBIKqwXYBFic0ERaxNVgwLCHwOLZeESfdJQjX0RDvrJ1lBXX2ij+G1Q==";
-      };
-    }
-    {
-      name = "is_extendable___is_extendable_0.1.1.tgz";
-      path = fetchurl {
-        name = "is_extendable___is_extendable_0.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz";
-        sha1 = "YrEQ4omkcUGOPsNqYX1HLjAd/Ik=";
-      };
-    }
-    {
-      name = "is_extendable___is_extendable_1.0.1.tgz";
-      path = fetchurl {
-        name = "is_extendable___is_extendable_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz";
-        sha512 = "arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==";
-      };
-    }
-    {
-      name = "is_extglob___is_extglob_2.1.1.tgz";
-      path = fetchurl {
-        name = "is_extglob___is_extglob_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz";
-        sha1 = "qIwCU1eR8C7TfHahueqXc8gz+MI=";
-      };
-    }
-    {
-      name = "is_fullwidth_code_point___is_fullwidth_code_point_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_fullwidth_code_point___is_fullwidth_code_point_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz";
-        sha1 = "754xOG8DGn8NZDr4L95QxFfvAMs=";
-      };
-    }
-    {
-      name = "is_fullwidth_code_point___is_fullwidth_code_point_2.0.0.tgz";
-      path = fetchurl {
-        name = "is_fullwidth_code_point___is_fullwidth_code_point_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz";
-        sha1 = "o7MKXE8ZkYMWeqq5O+764937ZU8=";
-      };
-    }
-    {
-      name = "is_fullwidth_code_point___is_fullwidth_code_point_3.0.0.tgz";
-      path = fetchurl {
-        name = "is_fullwidth_code_point___is_fullwidth_code_point_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz";
-        sha512 = "zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==";
-      };
-    }
-    {
-      name = "is_generator_fn___is_generator_fn_2.1.0.tgz";
-      path = fetchurl {
-        name = "is_generator_fn___is_generator_fn_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz";
-        sha512 = "cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==";
-      };
-    }
-    {
-      name = "is_glob___is_glob_3.1.0.tgz";
-      path = fetchurl {
-        name = "is_glob___is_glob_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz";
-        sha1 = "e6WuJCF4BKxwcHuWkiVnSGzD6Eo=";
-      };
-    }
-    {
-      name = "is_glob___is_glob_4.0.1.tgz";
-      path = fetchurl {
-        name = "is_glob___is_glob_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz";
-        sha512 = "5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==";
-      };
-    }
-    {
-      name = "is_my_ip_valid___is_my_ip_valid_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_my_ip_valid___is_my_ip_valid_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz";
-        sha512 = "gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==";
-      };
-    }
-    {
-      name = "is_my_json_valid___is_my_json_valid_2.20.5.tgz";
-      path = fetchurl {
-        name = "is_my_json_valid___is_my_json_valid_2.20.5.tgz";
-        url  = "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.20.5.tgz";
-        sha512 = "VTPuvvGQtxvCeghwspQu1rBgjYUT6FGxPlvFKbYuFtgc4ADsX3U5ihZOYN0qyU6u+d4X9xXb0IT5O6QpXKt87A==";
-      };
-    }
-    {
-      name = "is_nan___is_nan_1.3.2.tgz";
-      path = fetchurl {
-        name = "is_nan___is_nan_1.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/is-nan/-/is-nan-1.3.2.tgz";
-        sha512 = "E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==";
-      };
-    }
-    {
-      name = "is_negative_zero___is_negative_zero_2.0.1.tgz";
-      path = fetchurl {
-        name = "is_negative_zero___is_negative_zero_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz";
-        sha512 = "2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==";
-      };
-    }
-    {
-      name = "is_number_object___is_number_object_1.0.5.tgz";
-      path = fetchurl {
-        name = "is_number_object___is_number_object_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.5.tgz";
-        sha512 = "RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==";
-      };
-    }
-    {
-      name = "is_number___is_number_3.0.0.tgz";
-      path = fetchurl {
-        name = "is_number___is_number_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz";
-        sha1 = "JP1iAaR4LPUFYcgQJ2r8fRLXEZU=";
-      };
-    }
-    {
-      name = "is_number___is_number_7.0.0.tgz";
-      path = fetchurl {
-        name = "is_number___is_number_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz";
-        sha512 = "41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==";
-      };
-    }
-    {
-      name = "is_obj___is_obj_2.0.0.tgz";
-      path = fetchurl {
-        name = "is_obj___is_obj_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz";
-        sha512 = "drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==";
-      };
-    }
-    {
-      name = "is_path_cwd___is_path_cwd_2.2.0.tgz";
-      path = fetchurl {
-        name = "is_path_cwd___is_path_cwd_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz";
-        sha512 = "w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==";
-      };
-    }
-    {
-      name = "is_path_in_cwd___is_path_in_cwd_2.1.0.tgz";
-      path = fetchurl {
-        name = "is_path_in_cwd___is_path_in_cwd_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz";
-        sha512 = "rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==";
-      };
-    }
-    {
-      name = "is_path_inside___is_path_inside_2.1.0.tgz";
-      path = fetchurl {
-        name = "is_path_inside___is_path_inside_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz";
-        sha512 = "wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==";
-      };
-    }
-    {
-      name = "is_plain_object___is_plain_object_2.0.4.tgz";
-      path = fetchurl {
-        name = "is_plain_object___is_plain_object_2.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz";
-        sha512 = "h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==";
-      };
-    }
-    {
-      name = "is_potential_custom_element_name___is_potential_custom_element_name_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_potential_custom_element_name___is_potential_custom_element_name_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz";
-        sha1 = "DFLlS8yjkbssSUsh6GJtczbG45c=";
-      };
-    }
-    {
-      name = "is_property___is_property_1.0.2.tgz";
-      path = fetchurl {
-        name = "is_property___is_property_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz";
-        sha1 = "V/4cTkhHTt1lsJkR8msc1Ald2oQ=";
-      };
-    }
-    {
-      name = "is_regex___is_regex_1.1.0.tgz";
-      path = fetchurl {
-        name = "is_regex___is_regex_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.0.tgz";
-        sha512 = "iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==";
-      };
-    }
-    {
-      name = "is_regex___is_regex_1.1.1.tgz";
-      path = fetchurl {
-        name = "is_regex___is_regex_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.1.tgz";
-        sha512 = "1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==";
-      };
-    }
-    {
-      name = "is_regex___is_regex_1.1.3.tgz";
-      path = fetchurl {
-        name = "is_regex___is_regex_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.3.tgz";
-        sha512 = "qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==";
-      };
-    }
-    {
-      name = "is_resolvable___is_resolvable_1.1.0.tgz";
-      path = fetchurl {
-        name = "is_resolvable___is_resolvable_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz";
-        sha512 = "qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==";
-      };
-    }
-    {
-      name = "is_stream___is_stream_1.1.0.tgz";
-      path = fetchurl {
-        name = "is_stream___is_stream_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz";
-        sha1 = "EtSj3U5o4Lec6428hBc66A2RykQ=";
-      };
-    }
-    {
-      name = "is_stream___is_stream_2.0.0.tgz";
-      path = fetchurl {
-        name = "is_stream___is_stream_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz";
-        sha512 = "XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==";
-      };
-    }
-    {
-      name = "is_string___is_string_1.0.5.tgz";
-      path = fetchurl {
-        name = "is_string___is_string_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz";
-        sha512 = "buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==";
-      };
-    }
-    {
-      name = "is_string___is_string_1.0.6.tgz";
-      path = fetchurl {
-        name = "is_string___is_string_1.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/is-string/-/is-string-1.0.6.tgz";
-        sha512 = "2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==";
-      };
-    }
-    {
-      name = "is_symbol___is_symbol_1.0.3.tgz";
-      path = fetchurl {
-        name = "is_symbol___is_symbol_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz";
-        sha512 = "OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==";
-      };
-    }
-    {
-      name = "is_symbol___is_symbol_1.0.4.tgz";
-      path = fetchurl {
-        name = "is_symbol___is_symbol_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz";
-        sha512 = "C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==";
-      };
-    }
-    {
-      name = "is_typedarray___is_typedarray_1.0.0.tgz";
-      path = fetchurl {
-        name = "is_typedarray___is_typedarray_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz";
-        sha1 = "5HnICFjfDBsR3dppQPlgEfzaSpo=";
-      };
-    }
-    {
-      name = "is_url___is_url_1.2.4.tgz";
-      path = fetchurl {
-        name = "is_url___is_url_1.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/is-url/-/is-url-1.2.4.tgz";
-        sha512 = "ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==";
-      };
-    }
-    {
-      name = "is_windows___is_windows_1.0.2.tgz";
-      path = fetchurl {
-        name = "is_windows___is_windows_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz";
-        sha512 = "eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==";
-      };
-    }
-    {
-      name = "is_wsl___is_wsl_1.1.0.tgz";
-      path = fetchurl {
-        name = "is_wsl___is_wsl_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz";
-        sha1 = "HxbkqiKwTRM2tmGIpmrzxgDDpm0=";
-      };
-    }
-    {
-      name = "is_wsl___is_wsl_2.2.0.tgz";
-      path = fetchurl {
-        name = "is_wsl___is_wsl_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz";
-        sha512 = "fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==";
-      };
-    }
-    {
-      name = "isarray___isarray_0.0.1.tgz";
-      path = fetchurl {
-        name = "isarray___isarray_0.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz";
-        sha1 = "ihis/Kmo9Bd+Cav8YDiTmwXR7t8=";
-      };
-    }
-    {
-      name = "isarray___isarray_1.0.0.tgz";
-      path = fetchurl {
-        name = "isarray___isarray_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz";
-        sha1 = "u5NdSFgsuhaMBoNJV6VKPgcSTxE=";
-      };
-    }
-    {
-      name = "isexe___isexe_2.0.0.tgz";
-      path = fetchurl {
-        name = "isexe___isexe_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz";
-        sha1 = "6PvzdNxVb/iUehDcsFctYz8s+hA=";
-      };
-    }
-    {
-      name = "isobject___isobject_2.1.0.tgz";
-      path = fetchurl {
-        name = "isobject___isobject_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz";
-        sha1 = "8GVWEJaj8dou9GJy+BXIQNh+DIk=";
-      };
-    }
-    {
-      name = "isobject___isobject_3.0.1.tgz";
-      path = fetchurl {
-        name = "isobject___isobject_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz";
-        sha1 = "TkMekrEalzFjaqH5yNHMvP2reN8=";
-      };
-    }
-    {
-      name = "isstream___isstream_0.1.2.tgz";
-      path = fetchurl {
-        name = "isstream___isstream_0.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz";
-        sha1 = "R+Y/evVa+m+S4VAOaQ64uFKcCZo=";
-      };
-    }
-    {
-      name = "istanbul_lib_coverage___istanbul_lib_coverage_3.0.0.tgz";
-      path = fetchurl {
-        name = "istanbul_lib_coverage___istanbul_lib_coverage_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz";
-        sha512 = "UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==";
-      };
-    }
-    {
-      name = "istanbul_lib_instrument___istanbul_lib_instrument_4.0.3.tgz";
-      path = fetchurl {
-        name = "istanbul_lib_instrument___istanbul_lib_instrument_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz";
-        sha512 = "BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==";
-      };
-    }
-    {
-      name = "istanbul_lib_report___istanbul_lib_report_3.0.0.tgz";
-      path = fetchurl {
-        name = "istanbul_lib_report___istanbul_lib_report_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz";
-        sha512 = "wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==";
-      };
-    }
-    {
-      name = "istanbul_lib_source_maps___istanbul_lib_source_maps_4.0.0.tgz";
-      path = fetchurl {
-        name = "istanbul_lib_source_maps___istanbul_lib_source_maps_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz";
-        sha512 = "c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==";
-      };
-    }
-    {
-      name = "istanbul_reports___istanbul_reports_3.0.2.tgz";
-      path = fetchurl {
-        name = "istanbul_reports___istanbul_reports_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz";
-        sha512 = "9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==";
-      };
-    }
-    {
-      name = "jest_changed_files___jest_changed_files_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_changed_files___jest_changed_files_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.6.2.tgz";
-        sha512 = "fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ==";
-      };
-    }
-    {
-      name = "jest_cli___jest_cli_26.6.3.tgz";
-      path = fetchurl {
-        name = "jest_cli___jest_cli_26.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.6.3.tgz";
-        sha512 = "GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg==";
-      };
-    }
-    {
-      name = "jest_config___jest_config_26.6.3.tgz";
-      path = fetchurl {
-        name = "jest_config___jest_config_26.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/jest-config/-/jest-config-26.6.3.tgz";
-        sha512 = "t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg==";
-      };
-    }
-    {
-      name = "jest_diff___jest_diff_25.5.0.tgz";
-      path = fetchurl {
-        name = "jest_diff___jest_diff_25.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/jest-diff/-/jest-diff-25.5.0.tgz";
-        sha512 = "z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A==";
-      };
-    }
-    {
-      name = "jest_diff___jest_diff_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_diff___jest_diff_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.6.2.tgz";
-        sha512 = "6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==";
-      };
-    }
-    {
-      name = "jest_docblock___jest_docblock_26.0.0.tgz";
-      path = fetchurl {
-        name = "jest_docblock___jest_docblock_26.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz";
-        sha512 = "RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w==";
-      };
-    }
-    {
-      name = "jest_each___jest_each_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_each___jest_each_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-each/-/jest-each-26.6.2.tgz";
-        sha512 = "Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A==";
-      };
-    }
-    {
-      name = "jest_environment_jsdom___jest_environment_jsdom_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_environment_jsdom___jest_environment_jsdom_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz";
-        sha512 = "jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q==";
-      };
-    }
-    {
-      name = "jest_environment_node___jest_environment_node_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_environment_node___jest_environment_node_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.6.2.tgz";
-        sha512 = "zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag==";
-      };
-    }
-    {
-      name = "jest_get_type___jest_get_type_25.2.6.tgz";
-      path = fetchurl {
-        name = "jest_get_type___jest_get_type_25.2.6.tgz";
-        url  = "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-25.2.6.tgz";
-        sha512 = "DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==";
-      };
-    }
-    {
-      name = "jest_get_type___jest_get_type_26.3.0.tgz";
-      path = fetchurl {
-        name = "jest_get_type___jest_get_type_26.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz";
-        sha512 = "TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==";
-      };
-    }
-    {
-      name = "jest_haste_map___jest_haste_map_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_haste_map___jest_haste_map_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz";
-        sha512 = "easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w==";
-      };
-    }
-    {
-      name = "jest_haste_map___jest_haste_map_27.0.2.tgz";
-      path = fetchurl {
-        name = "jest_haste_map___jest_haste_map_27.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.0.2.tgz";
-        sha512 = "37gYfrYjjhEfk37C4bCMWAC0oPBxDpG0qpl8lYg8BT//wf353YT/fzgA7+Dq0EtM7rPFS3JEcMsxdtDwNMi2cA==";
-      };
-    }
-    {
-      name = "jest_jasmine2___jest_jasmine2_26.6.3.tgz";
-      path = fetchurl {
-        name = "jest_jasmine2___jest_jasmine2_26.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz";
-        sha512 = "kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg==";
-      };
-    }
-    {
-      name = "jest_leak_detector___jest_leak_detector_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_leak_detector___jest_leak_detector_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz";
-        sha512 = "i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg==";
-      };
-    }
-    {
-      name = "jest_matcher_utils___jest_matcher_utils_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_matcher_utils___jest_matcher_utils_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz";
-        sha512 = "llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==";
-      };
-    }
-    {
-      name = "jest_message_util___jest_message_util_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_message_util___jest_message_util_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.6.2.tgz";
-        sha512 = "rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==";
-      };
-    }
-    {
-      name = "jest_mock___jest_mock_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_mock___jest_mock_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.6.2.tgz";
-        sha512 = "YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew==";
-      };
-    }
-    {
-      name = "jest_pnp_resolver___jest_pnp_resolver_1.2.2.tgz";
-      path = fetchurl {
-        name = "jest_pnp_resolver___jest_pnp_resolver_1.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz";
-        sha512 = "olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==";
-      };
-    }
-    {
-      name = "jest_regex_util___jest_regex_util_26.0.0.tgz";
-      path = fetchurl {
-        name = "jest_regex_util___jest_regex_util_26.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz";
-        sha512 = "Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==";
-      };
-    }
-    {
-      name = "jest_regex_util___jest_regex_util_27.0.1.tgz";
-      path = fetchurl {
-        name = "jest_regex_util___jest_regex_util_27.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.0.1.tgz";
-        sha512 = "6nY6QVcpTgEKQy1L41P4pr3aOddneK17kn3HJw6SdwGiKfgCGTvH02hVXL0GU8GEKtPH83eD2DIDgxHXOxVohQ==";
-      };
-    }
-    {
-      name = "jest_resolve_dependencies___jest_resolve_dependencies_26.6.3.tgz";
-      path = fetchurl {
-        name = "jest_resolve_dependencies___jest_resolve_dependencies_26.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz";
-        sha512 = "pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg==";
-      };
-    }
-    {
-      name = "jest_resolve___jest_resolve_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_resolve___jest_resolve_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.6.2.tgz";
-        sha512 = "sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==";
-      };
-    }
-    {
-      name = "jest_runner___jest_runner_26.6.3.tgz";
-      path = fetchurl {
-        name = "jest_runner___jest_runner_26.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.6.3.tgz";
-        sha512 = "atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ==";
-      };
-    }
-    {
-      name = "jest_runtime___jest_runtime_26.6.3.tgz";
-      path = fetchurl {
-        name = "jest_runtime___jest_runtime_26.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.6.3.tgz";
-        sha512 = "lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw==";
-      };
-    }
-    {
-      name = "jest_serializer___jest_serializer_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_serializer___jest_serializer_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.6.2.tgz";
-        sha512 = "S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g==";
-      };
-    }
-    {
-      name = "jest_serializer___jest_serializer_27.0.1.tgz";
-      path = fetchurl {
-        name = "jest_serializer___jest_serializer_27.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.0.1.tgz";
-        sha512 = "svy//5IH6bfQvAbkAEg1s7xhhgHTtXu0li0I2fdKHDsLP2P2MOiscPQIENQep8oU2g2B3jqLyxKKzotZOz4CwQ==";
-      };
-    }
-    {
-      name = "jest_snapshot___jest_snapshot_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_snapshot___jest_snapshot_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.6.2.tgz";
-        sha512 = "OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og==";
-      };
-    }
-    {
-      name = "jest_util___jest_util_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_util___jest_util_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz";
-        sha512 = "MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==";
-      };
-    }
-    {
-      name = "jest_util___jest_util_27.0.2.tgz";
-      path = fetchurl {
-        name = "jest_util___jest_util_27.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-util/-/jest-util-27.0.2.tgz";
-        sha512 = "1d9uH3a00OFGGWSibpNYr+jojZ6AckOMCXV2Z4K3YXDnzpkAaXQyIpY14FOJPiUmil7CD+A6Qs+lnnh6ctRbIA==";
-      };
-    }
-    {
-      name = "jest_validate___jest_validate_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_validate___jest_validate_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.6.2.tgz";
-        sha512 = "NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ==";
-      };
-    }
-    {
-      name = "jest_watcher___jest_watcher_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_watcher___jest_watcher_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.6.2.tgz";
-        sha512 = "WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ==";
-      };
-    }
-    {
-      name = "jest_worker___jest_worker_26.5.0.tgz";
-      path = fetchurl {
-        name = "jest_worker___jest_worker_26.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.5.0.tgz";
-        sha512 = "kTw66Dn4ZX7WpjZ7T/SUDgRhapFRKWmisVAF0Rv4Fu8SLFD7eLbqpLvbxVqYhSgaWa7I+bW7pHnbyfNsH6stug==";
-      };
-    }
-    {
-      name = "jest_worker___jest_worker_26.6.2.tgz";
-      path = fetchurl {
-        name = "jest_worker___jest_worker_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz";
-        sha512 = "KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==";
-      };
-    }
-    {
-      name = "jest_worker___jest_worker_27.0.2.tgz";
-      path = fetchurl {
-        name = "jest_worker___jest_worker_27.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.0.2.tgz";
-        sha512 = "EoBdilOTTyOgmHXtw/cPc+ZrCA0KJMrkXzkrPGNwLmnvvlN1nj7MPrxpT7m+otSv2e1TLaVffzDnE/LB14zJMg==";
-      };
-    }
-    {
-      name = "jest___jest_26.6.3.tgz";
-      path = fetchurl {
-        name = "jest___jest_26.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/jest/-/jest-26.6.3.tgz";
-        sha512 = "lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q==";
-      };
-    }
-    {
-      name = "js_base64___js_base64_2.6.4.tgz";
-      path = fetchurl {
-        name = "js_base64___js_base64_2.6.4.tgz";
-        url  = "https://registry.yarnpkg.com/js-base64/-/js-base64-2.6.4.tgz";
-        sha512 = "pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==";
-      };
-    }
-    {
-      name = "js_tokens___js_tokens_4.0.0.tgz";
-      path = fetchurl {
-        name = "js_tokens___js_tokens_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz";
-        sha512 = "RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==";
-      };
-    }
-    {
-      name = "js_yaml___js_yaml_3.14.1.tgz";
-      path = fetchurl {
-        name = "js_yaml___js_yaml_3.14.1.tgz";
-        url  = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz";
-        sha512 = "okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==";
-      };
-    }
-    {
-      name = "js_yaml___js_yaml_4.1.0.tgz";
-      path = fetchurl {
-        name = "js_yaml___js_yaml_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz";
-        sha512 = "wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==";
-      };
-    }
-    {
-      name = "jsbn___jsbn_0.1.1.tgz";
-      path = fetchurl {
-        name = "jsbn___jsbn_0.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz";
-        sha1 = "peZUwuWi3rXyAdls77yoDA7y9RM=";
-      };
-    }
-    {
-      name = "jsdom___jsdom_16.4.0.tgz";
-      path = fetchurl {
-        name = "jsdom___jsdom_16.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/jsdom/-/jsdom-16.4.0.tgz";
-        sha512 = "lYMm3wYdgPhrl7pDcRmvzPhhrGVBeVhPIqeHjzeiHN3DFmD1RBpbExbi8vU7BJdH8VAZYovR8DMt0PNNDM7k8w==";
-      };
-    }
-    {
-      name = "jsesc___jsesc_2.5.2.tgz";
-      path = fetchurl {
-        name = "jsesc___jsesc_2.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz";
-        sha512 = "OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==";
-      };
-    }
-    {
-      name = "jsesc___jsesc_0.5.0.tgz";
-      path = fetchurl {
-        name = "jsesc___jsesc_0.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz";
-        sha1 = "597mbjXW/Bb3EP6R1c9p9w8IkR0=";
-      };
-    }
-    {
-      name = "json_parse_better_errors___json_parse_better_errors_1.0.2.tgz";
-      path = fetchurl {
-        name = "json_parse_better_errors___json_parse_better_errors_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz";
-        sha512 = "mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==";
-      };
-    }
-    {
-      name = "json_schema_traverse___json_schema_traverse_0.4.1.tgz";
-      path = fetchurl {
-        name = "json_schema_traverse___json_schema_traverse_0.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz";
-        sha512 = "xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==";
-      };
-    }
-    {
-      name = "json_schema_traverse___json_schema_traverse_1.0.0.tgz";
-      path = fetchurl {
-        name = "json_schema_traverse___json_schema_traverse_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz";
-        sha512 = "NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==";
-      };
-    }
-    {
-      name = "json_schema___json_schema_0.2.3.tgz";
-      path = fetchurl {
-        name = "json_schema___json_schema_0.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz";
-        sha1 = "tIDIkuWaLwWVTOcnvT8qTogvnhM=";
-      };
-    }
-    {
-      name = "json_stable_stringify_without_jsonify___json_stable_stringify_without_jsonify_1.0.1.tgz";
-      path = fetchurl {
-        name = "json_stable_stringify_without_jsonify___json_stable_stringify_without_jsonify_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz";
-        sha1 = "nbe1lJatPzz+8wp1FC0tkwrXJlE=";
-      };
-    }
-    {
-      name = "json_stable_stringify___json_stable_stringify_1.0.1.tgz";
-      path = fetchurl {
-        name = "json_stable_stringify___json_stable_stringify_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz";
-        sha1 = "mnWdOcXy/1A/1TAGRu1EX4jE+a8=";
-      };
-    }
-    {
-      name = "json_stringify_safe___json_stringify_safe_5.0.1.tgz";
-      path = fetchurl {
-        name = "json_stringify_safe___json_stringify_safe_5.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
-        sha1 = "Epai1Y/UXxmg9s4B1lcB4sc1tus=";
-      };
-    }
-    {
-      name = "json3___json3_3.3.3.tgz";
-      path = fetchurl {
-        name = "json3___json3_3.3.3.tgz";
-        url  = "https://registry.yarnpkg.com/json3/-/json3-3.3.3.tgz";
-        sha512 = "c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==";
-      };
-    }
-    {
-      name = "json5___json5_0.5.1.tgz";
-      path = fetchurl {
-        name = "json5___json5_0.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz";
-        sha1 = "Hq3nrMASA0rYTiOWdn6tn6VJWCE=";
-      };
-    }
-    {
-      name = "json5___json5_1.0.1.tgz";
-      path = fetchurl {
-        name = "json5___json5_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz";
-        sha512 = "aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==";
-      };
-    }
-    {
-      name = "json5___json5_2.1.3.tgz";
-      path = fetchurl {
-        name = "json5___json5_2.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/json5/-/json5-2.1.3.tgz";
-        sha512 = "KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==";
-      };
-    }
-    {
-      name = "jsonfile___jsonfile_3.0.1.tgz";
-      path = fetchurl {
-        name = "jsonfile___jsonfile_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/jsonfile/-/jsonfile-3.0.1.tgz";
-        sha1 = "pezG9l9T9mLEQVx2daAzHQmS7GY=";
-      };
-    }
-    {
-      name = "jsonfile___jsonfile_4.0.0.tgz";
-      path = fetchurl {
-        name = "jsonfile___jsonfile_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz";
-        sha1 = "h3Gq4HmbZAdrdmQPygWPnBDjPss=";
-      };
-    }
-    {
-      name = "jsonify___jsonify_0.0.0.tgz";
-      path = fetchurl {
-        name = "jsonify___jsonify_0.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz";
-        sha1 = "LHS27kHZPKUbe1qu6PUDYx0lKnM=";
-      };
-    }
-    {
-      name = "jsonpointer___jsonpointer_4.1.0.tgz";
-      path = fetchurl {
-        name = "jsonpointer___jsonpointer_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.1.0.tgz";
-        sha512 = "CXcRvMyTlnR53xMcKnuMzfCA5i/nfblTnnr74CZb6C4vG39eu6w51t7nKmU5MfLfbTgGItliNyjO/ciNPDqClg==";
-      };
-    }
-    {
-      name = "jsprim___jsprim_1.4.1.tgz";
-      path = fetchurl {
-        name = "jsprim___jsprim_1.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz";
-        sha1 = "MT5mvB5cwG5Di8G3SZwuXFastqI=";
-      };
-    }
-    {
-      name = "jsx_ast_utils___jsx_ast_utils_3.1.0.tgz";
-      path = fetchurl {
-        name = "jsx_ast_utils___jsx_ast_utils_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.1.0.tgz";
-        sha512 = "d4/UOjg+mxAWxCiF0c5UTSwyqbchkbqCvK87aBovhnh8GtysTjWmgC63tY0cJx/HzGgm9qnA147jVBdpOiQ2RA==";
-      };
-    }
-    {
-      name = "keycode___keycode_2.2.0.tgz";
-      path = fetchurl {
-        name = "keycode___keycode_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/keycode/-/keycode-2.2.0.tgz";
-        sha1 = "PQr1bce4uOXLqNCpfxByBO7CKwQ=";
-      };
-    }
-    {
-      name = "killable___killable_1.0.1.tgz";
-      path = fetchurl {
-        name = "killable___killable_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz";
-        sha512 = "LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==";
-      };
-    }
-    {
-      name = "kind_of___kind_of_3.2.2.tgz";
-      path = fetchurl {
-        name = "kind_of___kind_of_3.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz";
-        sha1 = "MeohpzS6ubuw8yRm2JOupR5KPGQ=";
-      };
-    }
-    {
-      name = "kind_of___kind_of_4.0.0.tgz";
-      path = fetchurl {
-        name = "kind_of___kind_of_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz";
-        sha1 = "IIE989cSkosgc3hpGkUGb65y3Vc=";
-      };
-    }
-    {
-      name = "kind_of___kind_of_5.1.0.tgz";
-      path = fetchurl {
-        name = "kind_of___kind_of_5.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz";
-        sha512 = "NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==";
-      };
-    }
-    {
-      name = "kind_of___kind_of_6.0.3.tgz";
-      path = fetchurl {
-        name = "kind_of___kind_of_6.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz";
-        sha512 = "dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==";
-      };
-    }
-    {
-      name = "kleur___kleur_3.0.3.tgz";
-      path = fetchurl {
-        name = "kleur___kleur_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz";
-        sha512 = "eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==";
-      };
-    }
-    {
-      name = "klona___klona_2.0.4.tgz";
-      path = fetchurl {
-        name = "klona___klona_2.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/klona/-/klona-2.0.4.tgz";
-        sha512 = "ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA==";
-      };
-    }
-    {
-      name = "knot.js___knot.js_1.1.5.tgz";
-      path = fetchurl {
-        name = "knot.js___knot.js_1.1.5.tgz";
-        url  = "https://registry.yarnpkg.com/knot.js/-/knot.js-1.1.5.tgz";
-        sha1 = "KOclIvcD9Q/piBL94iTdcnKP710=";
-      };
-    }
-    {
-      name = "known_css_properties___known_css_properties_0.3.0.tgz";
-      path = fetchurl {
-        name = "known_css_properties___known_css_properties_0.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.3.0.tgz";
-        sha512 = "QMQcnKAiQccfQTqtBh/qwquGZ2XK/DXND1jrcN9M8gMMy99Gwla7GQjndVUsEqIaRyP6bsFRuhwRj5poafBGJQ==";
-      };
-    }
-    {
-      name = "language_subtag_registry___language_subtag_registry_0.3.20.tgz";
-      path = fetchurl {
-        name = "language_subtag_registry___language_subtag_registry_0.3.20.tgz";
-        url  = "https://registry.yarnpkg.com/language-subtag-registry/-/language-subtag-registry-0.3.20.tgz";
-        sha512 = "KPMwROklF4tEx283Xw0pNKtfTj1gZ4UByp4EsIFWLgBavJltF4TiYPc39k06zSTsLzxTVXXDSpbwaQXaFB4Qeg==";
-      };
-    }
-    {
-      name = "language_tags___language_tags_1.0.5.tgz";
-      path = fetchurl {
-        name = "language_tags___language_tags_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/language-tags/-/language-tags-1.0.5.tgz";
-        sha1 = "0yHbxNowuovzAk4ED6XBRmH5GTo=";
-      };
-    }
-    {
-      name = "leven___leven_3.1.0.tgz";
-      path = fetchurl {
-        name = "leven___leven_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz";
-        sha512 = "qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==";
-      };
-    }
-    {
-      name = "levn___levn_0.3.0.tgz";
-      path = fetchurl {
-        name = "levn___levn_0.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz";
-        sha1 = "OwmSTt+fCDwEkP3UwLxEIeBHZO4=";
-      };
-    }
-    {
-      name = "levn___levn_0.4.1.tgz";
-      path = fetchurl {
-        name = "levn___levn_0.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz";
-        sha512 = "+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==";
-      };
-    }
-    {
-      name = "lines_and_columns___lines_and_columns_1.1.6.tgz";
-      path = fetchurl {
-        name = "lines_and_columns___lines_and_columns_1.1.6.tgz";
-        url  = "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz";
-        sha1 = "HADHQ7QzzQpOgHWPe2SldEDZ/wA=";
-      };
-    }
-    {
-      name = "load_json_file___load_json_file_4.0.0.tgz";
-      path = fetchurl {
-        name = "load_json_file___load_json_file_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz";
-        sha1 = "L19Fq5HjMhYjT9U62rZo607AmTs=";
-      };
-    }
-    {
-      name = "loader_runner___loader_runner_2.4.0.tgz";
-      path = fetchurl {
-        name = "loader_runner___loader_runner_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz";
-        sha512 = "Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==";
-      };
-    }
-    {
-      name = "loader_utils___loader_utils_0.2.17.tgz";
-      path = fetchurl {
-        name = "loader_utils___loader_utils_0.2.17.tgz";
-        url  = "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz";
-        sha1 = "+G5jdNQyBabmxg6RlvF8Apm/s0g=";
-      };
-    }
-    {
-      name = "loader_utils___loader_utils_1.4.0.tgz";
-      path = fetchurl {
-        name = "loader_utils___loader_utils_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz";
-        sha512 = "qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==";
-      };
-    }
-    {
-      name = "loader_utils___loader_utils_2.0.0.tgz";
-      path = fetchurl {
-        name = "loader_utils___loader_utils_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.0.tgz";
-        sha512 = "rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==";
-      };
-    }
-    {
-      name = "locate_path___locate_path_2.0.0.tgz";
-      path = fetchurl {
-        name = "locate_path___locate_path_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz";
-        sha1 = "K1aLJl7slExtnA3pw9u7ygNUzY4=";
-      };
-    }
-    {
-      name = "locate_path___locate_path_3.0.0.tgz";
-      path = fetchurl {
-        name = "locate_path___locate_path_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz";
-        sha512 = "7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==";
-      };
-    }
-    {
-      name = "locate_path___locate_path_5.0.0.tgz";
-      path = fetchurl {
-        name = "locate_path___locate_path_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz";
-        sha512 = "t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==";
-      };
-    }
-    {
-      name = "lockfile___lockfile_1.0.4.tgz";
-      path = fetchurl {
-        name = "lockfile___lockfile_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/lockfile/-/lockfile-1.0.4.tgz";
-        sha512 = "cvbTwETRfsFh4nHsL1eGWapU1XFi5Ot9E85sWAwia7Y7EgB7vfqcZhTKZ+l7hCGxSPoushMv5GKhT5PdLv03WA==";
-      };
-    }
-    {
-      name = "lodash.capitalize___lodash.capitalize_4.2.1.tgz";
-      path = fetchurl {
-        name = "lodash.capitalize___lodash.capitalize_4.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.capitalize/-/lodash.capitalize-4.2.1.tgz";
-        sha1 = "+CbJtOKoUR2E46yinbBeGk87cqk=";
-      };
-    }
-    {
-      name = "lodash.clonedeep___lodash.clonedeep_4.5.0.tgz";
-      path = fetchurl {
-        name = "lodash.clonedeep___lodash.clonedeep_4.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz";
-        sha1 = "4j8/nE+Pvd6HJSnBBxhXoIblzO8=";
-      };
-    }
-    {
-      name = "lodash.debounce___lodash.debounce_4.0.8.tgz";
-      path = fetchurl {
-        name = "lodash.debounce___lodash.debounce_4.0.8.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz";
-        sha1 = "gteb/zCmfEAF/9XiUVMArZyk168=";
-      };
-    }
-    {
-      name = "lodash.defaults___lodash.defaults_4.2.0.tgz";
-      path = fetchurl {
-        name = "lodash.defaults___lodash.defaults_4.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz";
-        sha1 = "0JF4cW/+pN3p5ft7N/bwgCJ0WAw=";
-      };
-    }
-    {
-      name = "lodash.get___lodash.get_4.4.2.tgz";
-      path = fetchurl {
-        name = "lodash.get___lodash.get_4.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz";
-        sha1 = "LRd/ZS+jHpObRDjVNBSZ36OCXpk=";
-      };
-    }
-    {
-      name = "lodash.has___lodash.has_4.5.2.tgz";
-      path = fetchurl {
-        name = "lodash.has___lodash.has_4.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.has/-/lodash.has-4.5.2.tgz";
-        sha1 = "0Z9NwQlQWMzL4rDN9O4P5Ko3yGI=";
-      };
-    }
-    {
-      name = "lodash.isboolean___lodash.isboolean_3.0.3.tgz";
-      path = fetchurl {
-        name = "lodash.isboolean___lodash.isboolean_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz";
-        sha1 = "bC4XHbKiV82WgC/UOwGyDV9YcPY=";
-      };
-    }
-    {
-      name = "lodash.isequal___lodash.isequal_4.5.0.tgz";
-      path = fetchurl {
-        name = "lodash.isequal___lodash.isequal_4.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz";
-        sha1 = "QVxEePK8wwEgwizhDtMib30+GOA=";
-      };
-    }
-    {
-      name = "lodash.isobject___lodash.isobject_3.0.2.tgz";
-      path = fetchurl {
-        name = "lodash.isobject___lodash.isobject_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.isobject/-/lodash.isobject-3.0.2.tgz";
-        sha1 = "PI+41bW/S/kK4G4U8qUwpO2TXh0=";
-      };
-    }
-    {
-      name = "lodash.kebabcase___lodash.kebabcase_4.1.1.tgz";
-      path = fetchurl {
-        name = "lodash.kebabcase___lodash.kebabcase_4.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz";
-        sha1 = "hImxyw0p/4gZXM7KRI/21swpXDY=";
-      };
-    }
-    {
-      name = "lodash.memoize___lodash.memoize_4.1.2.tgz";
-      path = fetchurl {
-        name = "lodash.memoize___lodash.memoize_4.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz";
-        sha1 = "vMbEmkKihA7Zl/Mj6tpezRguC/4=";
-      };
-    }
-    {
-      name = "lodash.merge___lodash.merge_4.6.2.tgz";
-      path = fetchurl {
-        name = "lodash.merge___lodash.merge_4.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz";
-        sha512 = "0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==";
-      };
-    }
-    {
-      name = "lodash.sortby___lodash.sortby_4.7.0.tgz";
-      path = fetchurl {
-        name = "lodash.sortby___lodash.sortby_4.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz";
-        sha1 = "7dFMgk4sycHgsKG0K7UhBRakJDg=";
-      };
-    }
-    {
-      name = "lodash.truncate___lodash.truncate_4.4.2.tgz";
-      path = fetchurl {
-        name = "lodash.truncate___lodash.truncate_4.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz";
-        sha1 = "WjUNoLERO4N+z//VgSy+WNbq4ZM=";
-      };
-    }
-    {
-      name = "lodash.uniq___lodash.uniq_4.5.0.tgz";
-      path = fetchurl {
-        name = "lodash.uniq___lodash.uniq_4.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz";
-        sha1 = "0CJTc662Uq3BvILklFM5qEJ1R3M=";
-      };
-    }
-    {
-      name = "lodash___lodash_4.17.21.tgz";
-      path = fetchurl {
-        name = "lodash___lodash_4.17.21.tgz";
-        url  = "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz";
-        sha512 = "v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==";
-      };
-    }
-    {
-      name = "loglevel___loglevel_1.7.0.tgz";
-      path = fetchurl {
-        name = "loglevel___loglevel_1.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/loglevel/-/loglevel-1.7.0.tgz";
-        sha512 = "i2sY04nal5jDcagM3FMfG++T69GEEM8CYuOfeOIvmXzOIcwE9a/CJPR0MFM97pYMj/u10lzz7/zd7+qwhrBTqQ==";
-      };
-    }
-    {
-      name = "loose_envify___loose_envify_1.4.0.tgz";
-      path = fetchurl {
-        name = "loose_envify___loose_envify_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz";
-        sha512 = "lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==";
-      };
-    }
-    {
-      name = "lru_cache___lru_cache_5.1.1.tgz";
-      path = fetchurl {
-        name = "lru_cache___lru_cache_5.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz";
-        sha512 = "KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==";
-      };
-    }
-    {
-      name = "lru_cache___lru_cache_6.0.0.tgz";
-      path = fetchurl {
-        name = "lru_cache___lru_cache_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz";
-        sha512 = "Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==";
-      };
-    }
-    {
-      name = "lz_string___lz_string_1.4.4.tgz";
-      path = fetchurl {
-        name = "lz_string___lz_string_1.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/lz-string/-/lz-string-1.4.4.tgz";
-        sha1 = "wNjq82BZ9wV5bh40SBHPTEmNOiY=";
-      };
-    }
-    {
-      name = "make_dir___make_dir_2.1.0.tgz";
-      path = fetchurl {
-        name = "make_dir___make_dir_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz";
-        sha512 = "LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==";
-      };
-    }
-    {
-      name = "make_dir___make_dir_3.1.0.tgz";
-      path = fetchurl {
-        name = "make_dir___make_dir_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz";
-        sha512 = "g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==";
-      };
-    }
-    {
-      name = "makeerror___makeerror_1.0.11.tgz";
-      path = fetchurl {
-        name = "makeerror___makeerror_1.0.11.tgz";
-        url  = "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz";
-        sha1 = "4BpckQnyr3lmDk6LlYd5AYT1qWw=";
-      };
-    }
-    {
-      name = "map_cache___map_cache_0.2.2.tgz";
-      path = fetchurl {
-        name = "map_cache___map_cache_0.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz";
-        sha1 = "wyq9C9ZSXZsFFkW7TyasXcmKDb8=";
-      };
-    }
-    {
-      name = "map_visit___map_visit_1.0.0.tgz";
-      path = fetchurl {
-        name = "map_visit___map_visit_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz";
-        sha1 = "7Nyo8TFE5mDxtb1B8S80edmN+48=";
-      };
-    }
-    {
-      name = "mark_loader___mark_loader_0.1.6.tgz";
-      path = fetchurl {
-        name = "mark_loader___mark_loader_0.1.6.tgz";
-        url  = "https://registry.yarnpkg.com/mark-loader/-/mark-loader-0.1.6.tgz";
-        sha1 = "CrtHfcp0IdcOIBKP9kifXK6GdtU=";
-      };
-    }
-    {
-      name = "marky___marky_1.2.2.tgz";
-      path = fetchurl {
-        name = "marky___marky_1.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/marky/-/marky-1.2.2.tgz";
-        sha512 = "k1dB2HNeaNyORco8ulVEhctyEGkKHb2YWAhDsxeFlW2nROIirsctBYzKwwS3Vza+sKTS1zO4Z+n9/+9WbGLIxQ==";
-      };
-    }
-    {
-      name = "md5.js___md5.js_1.3.5.tgz";
-      path = fetchurl {
-        name = "md5.js___md5.js_1.3.5.tgz";
-        url  = "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz";
-        sha512 = "xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==";
-      };
-    }
-    {
-      name = "mdn_data___mdn_data_2.0.4.tgz";
-      path = fetchurl {
-        name = "mdn_data___mdn_data_2.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.4.tgz";
-        sha512 = "iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==";
-      };
-    }
-    {
-      name = "mdn_data___mdn_data_2.0.6.tgz";
-      path = fetchurl {
-        name = "mdn_data___mdn_data_2.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.6.tgz";
-        sha512 = "rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==";
-      };
-    }
-    {
-      name = "media_typer___media_typer_0.3.0.tgz";
-      path = fetchurl {
-        name = "media_typer___media_typer_0.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz";
-        sha1 = "hxDXrwqmJvj/+hzgAWhUUmMlV0g=";
-      };
-    }
-    {
-      name = "memoize_one___memoize_one_5.1.1.tgz";
-      path = fetchurl {
-        name = "memoize_one___memoize_one_5.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.1.1.tgz";
-        sha512 = "HKeeBpWvqiVJD57ZUAsJNm71eHTykffzcLZVYWiVfQeI1rJtuEaS7hQiEpWfVVk18donPwJEcFKIkCmPJNOhHA==";
-      };
-    }
-    {
-      name = "memory_fs___memory_fs_0.4.1.tgz";
-      path = fetchurl {
-        name = "memory_fs___memory_fs_0.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz";
-        sha1 = "OpoguEYlI+RHz7x+i7gO1me/xVI=";
-      };
-    }
-    {
-      name = "memory_fs___memory_fs_0.5.0.tgz";
-      path = fetchurl {
-        name = "memory_fs___memory_fs_0.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz";
-        sha512 = "jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==";
-      };
-    }
-    {
-      name = "merge_descriptors___merge_descriptors_1.0.1.tgz";
-      path = fetchurl {
-        name = "merge_descriptors___merge_descriptors_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz";
-        sha1 = "sAqqVW3YtEVoFQ7J0blT8/kMu2E=";
-      };
-    }
-    {
-      name = "merge_stream___merge_stream_2.0.0.tgz";
-      path = fetchurl {
-        name = "merge_stream___merge_stream_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz";
-        sha512 = "abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==";
-      };
-    }
-    {
-      name = "merge___merge_1.2.1.tgz";
-      path = fetchurl {
-        name = "merge___merge_1.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/merge/-/merge-1.2.1.tgz";
-        sha512 = "VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ==";
-      };
-    }
-    {
-      name = "methods___methods_1.1.2.tgz";
-      path = fetchurl {
-        name = "methods___methods_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz";
-        sha1 = "VSmk1nZUE07cxSZmVoNbD4Ua/O4=";
-      };
-    }
-    {
-      name = "micromatch___micromatch_3.1.10.tgz";
-      path = fetchurl {
-        name = "micromatch___micromatch_3.1.10.tgz";
-        url  = "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz";
-        sha512 = "MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==";
-      };
-    }
-    {
-      name = "micromatch___micromatch_4.0.2.tgz";
-      path = fetchurl {
-        name = "micromatch___micromatch_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz";
-        sha512 = "y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==";
-      };
-    }
-    {
-      name = "micromatch___micromatch_4.0.4.tgz";
-      path = fetchurl {
-        name = "micromatch___micromatch_4.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz";
-        sha512 = "pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==";
-      };
-    }
-    {
-      name = "miller_rabin___miller_rabin_4.0.1.tgz";
-      path = fetchurl {
-        name = "miller_rabin___miller_rabin_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz";
-        sha512 = "115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==";
-      };
-    }
-    {
-      name = "mime_db___mime_db_1.44.0.tgz";
-      path = fetchurl {
-        name = "mime_db___mime_db_1.44.0.tgz";
-        url  = "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz";
-        sha512 = "/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==";
-      };
-    }
-    {
-      name = "mime_types___mime_types_2.1.27.tgz";
-      path = fetchurl {
-        name = "mime_types___mime_types_2.1.27.tgz";
-        url  = "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz";
-        sha512 = "JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==";
-      };
-    }
-    {
-      name = "mime___mime_1.6.0.tgz";
-      path = fetchurl {
-        name = "mime___mime_1.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz";
-        sha512 = "x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==";
-      };
-    }
-    {
-      name = "mime___mime_2.4.7.tgz";
-      path = fetchurl {
-        name = "mime___mime_2.4.7.tgz";
-        url  = "https://registry.yarnpkg.com/mime/-/mime-2.4.7.tgz";
-        sha512 = "dhNd1uA2u397uQk3Nv5LM4lm93WYDUXFn3Fu291FJerns4jyTudqhIWe4W04YLy7Uk1tm1Ore04NpjRvQp/NPA==";
-      };
-    }
-    {
-      name = "mime___mime_2.4.4.tgz";
-      path = fetchurl {
-        name = "mime___mime_2.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/mime/-/mime-2.4.4.tgz";
-        sha512 = "LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==";
-      };
-    }
-    {
-      name = "mimic_fn___mimic_fn_2.1.0.tgz";
-      path = fetchurl {
-        name = "mimic_fn___mimic_fn_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz";
-        sha512 = "OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==";
-      };
-    }
-    {
-      name = "min_indent___min_indent_1.0.1.tgz";
-      path = fetchurl {
-        name = "min_indent___min_indent_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz";
-        sha512 = "I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==";
-      };
-    }
-    {
-      name = "mini_css_extract_plugin___mini_css_extract_plugin_1.6.0.tgz";
-      path = fetchurl {
-        name = "mini_css_extract_plugin___mini_css_extract_plugin_1.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-1.6.0.tgz";
-        sha512 = "nPFKI7NSy6uONUo9yn2hIfb9vyYvkFu95qki0e21DQ9uaqNKDP15DGpK0KnV6wDroWxPHtExrdEwx/yDQ8nVRw==";
-      };
-    }
-    {
-      name = "minimalistic_assert___minimalistic_assert_1.0.1.tgz";
-      path = fetchurl {
-        name = "minimalistic_assert___minimalistic_assert_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz";
-        sha512 = "UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==";
-      };
-    }
-    {
-      name = "minimalistic_crypto_utils___minimalistic_crypto_utils_1.0.1.tgz";
-      path = fetchurl {
-        name = "minimalistic_crypto_utils___minimalistic_crypto_utils_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz";
-        sha1 = "9sAMHAsIIkblxNmd+4x8CDsrWCo=";
-      };
-    }
-    {
-      name = "minimatch___minimatch_3.0.4.tgz";
-      path = fetchurl {
-        name = "minimatch___minimatch_3.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz";
-        sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
-      };
-    }
-    {
-      name = "minimist___minimist_1.1.3.tgz";
-      path = fetchurl {
-        name = "minimist___minimist_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.1.3.tgz";
-        sha1 = "O+39kaktOQFvz6ocaB6Pqhoe/ag=";
-      };
-    }
-    {
-      name = "minimist___minimist_1.2.5.tgz";
-      path = fetchurl {
-        name = "minimist___minimist_1.2.5.tgz";
-        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz";
-        sha512 = "FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==";
-      };
-    }
-    {
-      name = "minipass_collect___minipass_collect_1.0.2.tgz";
-      path = fetchurl {
-        name = "minipass_collect___minipass_collect_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz";
-        sha512 = "6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==";
-      };
-    }
-    {
-      name = "minipass_flush___minipass_flush_1.0.5.tgz";
-      path = fetchurl {
-        name = "minipass_flush___minipass_flush_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz";
-        sha512 = "JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==";
-      };
-    }
-    {
-      name = "minipass_pipeline___minipass_pipeline_1.2.4.tgz";
-      path = fetchurl {
-        name = "minipass_pipeline___minipass_pipeline_1.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz";
-        sha512 = "xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==";
-      };
-    }
-    {
-      name = "minipass___minipass_3.1.3.tgz";
-      path = fetchurl {
-        name = "minipass___minipass_3.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz";
-        sha512 = "Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==";
-      };
-    }
-    {
-      name = "minizlib___minizlib_2.1.2.tgz";
-      path = fetchurl {
-        name = "minizlib___minizlib_2.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz";
-        sha512 = "bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==";
-      };
-    }
-    {
-      name = "mississippi___mississippi_3.0.0.tgz";
-      path = fetchurl {
-        name = "mississippi___mississippi_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz";
-        sha512 = "x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==";
-      };
-    }
-    {
-      name = "mixin_deep___mixin_deep_1.3.2.tgz";
-      path = fetchurl {
-        name = "mixin_deep___mixin_deep_1.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz";
-        sha512 = "WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==";
-      };
-    }
-    {
-      name = "mkdirp___mkdirp_0.5.5.tgz";
-      path = fetchurl {
-        name = "mkdirp___mkdirp_0.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz";
-        sha512 = "NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==";
-      };
-    }
-    {
-      name = "mkdirp___mkdirp_1.0.4.tgz";
-      path = fetchurl {
-        name = "mkdirp___mkdirp_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz";
-        sha512 = "vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==";
-      };
-    }
-    {
-      name = "mousetrap___mousetrap_1.6.5.tgz";
-      path = fetchurl {
-        name = "mousetrap___mousetrap_1.6.5.tgz";
-        url  = "https://registry.yarnpkg.com/mousetrap/-/mousetrap-1.6.5.tgz";
-        sha512 = "QNo4kEepaIBwiT8CDhP98umTetp+JNfQYBWvC1pc6/OAibuXtRcxZ58Qz8skvEHYvURne/7R8T5VoOI7rDsEUA==";
-      };
-    }
-    {
-      name = "move_concurrently___move_concurrently_1.0.1.tgz";
-      path = fetchurl {
-        name = "move_concurrently___move_concurrently_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz";
-        sha1 = "viwAX9oy4LKa8fBdfEszIUxwH5I=";
-      };
-    }
-    {
-      name = "ms___ms_2.0.0.tgz";
-      path = fetchurl {
-        name = "ms___ms_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz";
-        sha1 = "VgiurfwAvmwpAd9fmGF4jeDVl8g=";
-      };
-    }
-    {
-      name = "ms___ms_2.1.1.tgz";
-      path = fetchurl {
-        name = "ms___ms_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz";
-        sha512 = "tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==";
-      };
-    }
-    {
-      name = "ms___ms_2.1.2.tgz";
-      path = fetchurl {
-        name = "ms___ms_2.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz";
-        sha512 = "sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==";
-      };
-    }
-    {
-      name = "multicast_dns_service_types___multicast_dns_service_types_1.1.0.tgz";
-      path = fetchurl {
-        name = "multicast_dns_service_types___multicast_dns_service_types_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz";
-        sha1 = "iZ8R2WhuXgXLkbNdXw5jt3PPyQE=";
-      };
-    }
-    {
-      name = "multicast_dns___multicast_dns_6.2.3.tgz";
-      path = fetchurl {
-        name = "multicast_dns___multicast_dns_6.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz";
-        sha512 = "ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==";
-      };
-    }
-    {
-      name = "mute_stream___mute_stream_0.0.5.tgz";
-      path = fetchurl {
-        name = "mute_stream___mute_stream_0.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz";
-        sha1 = "j7+rsKmKJT0xhDMfno3rc3L6xsA=";
-      };
-    }
-    {
-      name = "nan___nan_2.14.1.tgz";
-      path = fetchurl {
-        name = "nan___nan_2.14.1.tgz";
-        url  = "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz";
-        sha512 = "isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==";
-      };
-    }
-    {
-      name = "nanoid___nanoid_3.1.23.tgz";
-      path = fetchurl {
-        name = "nanoid___nanoid_3.1.23.tgz";
-        url  = "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.23.tgz";
-        sha512 = "FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==";
-      };
-    }
-    {
-      name = "nanomatch___nanomatch_1.2.13.tgz";
-      path = fetchurl {
-        name = "nanomatch___nanomatch_1.2.13.tgz";
-        url  = "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz";
-        sha512 = "fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==";
-      };
-    }
-    {
-      name = "natural_compare___natural_compare_1.4.0.tgz";
-      path = fetchurl {
-        name = "natural_compare___natural_compare_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz";
-        sha1 = "Sr6/7tdUHywnrPspvbvRXI1bpPc=";
-      };
-    }
-    {
-      name = "negotiator___negotiator_0.6.2.tgz";
-      path = fetchurl {
-        name = "negotiator___negotiator_0.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz";
-        sha512 = "hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==";
-      };
-    }
-    {
-      name = "neo_async___neo_async_2.6.2.tgz";
-      path = fetchurl {
-        name = "neo_async___neo_async_2.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz";
-        sha512 = "Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==";
-      };
-    }
-    {
-      name = "next_tick___next_tick_1.0.0.tgz";
-      path = fetchurl {
-        name = "next_tick___next_tick_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz";
-        sha1 = "yobR/ogoFpsBICCOPchCS524NCw=";
-      };
-    }
-    {
-      name = "nice_try___nice_try_1.0.5.tgz";
-      path = fetchurl {
-        name = "nice_try___nice_try_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz";
-        sha512 = "1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==";
-      };
-    }
-    {
-      name = "node_fetch___node_fetch_2.6.1.tgz";
-      path = fetchurl {
-        name = "node_fetch___node_fetch_2.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz";
-        sha512 = "V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==";
-      };
-    }
-    {
-      name = "node_forge___node_forge_0.10.0.tgz";
-      path = fetchurl {
-        name = "node_forge___node_forge_0.10.0.tgz";
-        url  = "https://registry.yarnpkg.com/node-forge/-/node-forge-0.10.0.tgz";
-        sha512 = "PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==";
-      };
-    }
-    {
-      name = "node_gyp_build___node_gyp_build_4.2.3.tgz";
-      path = fetchurl {
-        name = "node_gyp_build___node_gyp_build_4.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.2.3.tgz";
-        sha512 = "MN6ZpzmfNCRM+3t57PTJHgHyw/h4OWnZ6mR8P5j/uZtqQr46RRuDE/P+g3n0YR/AiYXeWixZZzaip77gdICfRg==";
-      };
-    }
-    {
-      name = "node_int64___node_int64_0.4.0.tgz";
-      path = fetchurl {
-        name = "node_int64___node_int64_0.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz";
-        sha1 = "h6kGXNs1XTGC2PlM4RGIuCXGijs=";
-      };
-    }
-    {
-      name = "node_libs_browser___node_libs_browser_2.2.1.tgz";
-      path = fetchurl {
-        name = "node_libs_browser___node_libs_browser_2.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz";
-        sha512 = "h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==";
-      };
-    }
-    {
-      name = "node_modules_regexp___node_modules_regexp_1.0.0.tgz";
-      path = fetchurl {
-        name = "node_modules_regexp___node_modules_regexp_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz";
-        sha1 = "jZ2+KJZKSsVxLpExZCEHxx6Q7EA=";
-      };
-    }
-    {
-      name = "node_notifier___node_notifier_8.0.1.tgz";
-      path = fetchurl {
-        name = "node_notifier___node_notifier_8.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/node-notifier/-/node-notifier-8.0.1.tgz";
-        sha512 = "BvEXF+UmsnAfYfoapKM9nGxnP+Wn7P91YfXmrKnfcYCx6VBeoN5Ez5Ogck6I8Bi5k4RlpqRYaw75pAwzX9OphA==";
-      };
-    }
-    {
-      name = "node_releases___node_releases_1.1.72.tgz";
-      path = fetchurl {
-        name = "node_releases___node_releases_1.1.72.tgz";
-        url  = "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.72.tgz";
-        sha512 = "LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw==";
-      };
-    }
-    {
-      name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
-      path = fetchurl {
-        name = "normalize_package_data___normalize_package_data_2.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz";
-        sha512 = "/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==";
-      };
-    }
-    {
-      name = "normalize_path___normalize_path_2.1.1.tgz";
-      path = fetchurl {
-        name = "normalize_path___normalize_path_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz";
-        sha1 = "GrKLVW4Zg2Oowab35vogE3/mrtk=";
-      };
-    }
-    {
-      name = "normalize_path___normalize_path_3.0.0.tgz";
-      path = fetchurl {
-        name = "normalize_path___normalize_path_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz";
-        sha512 = "6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==";
-      };
-    }
-    {
-      name = "normalize_range___normalize_range_0.1.2.tgz";
-      path = fetchurl {
-        name = "normalize_range___normalize_range_0.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz";
-        sha1 = "LRDAa9/TEuqXd2laTShDlFa3WUI=";
-      };
-    }
-    {
-      name = "normalize_url___normalize_url_3.3.0.tgz";
-      path = fetchurl {
-        name = "normalize_url___normalize_url_3.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz";
-        sha512 = "U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==";
-      };
-    }
-    {
-      name = "npm_run_path___npm_run_path_2.0.2.tgz";
-      path = fetchurl {
-        name = "npm_run_path___npm_run_path_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz";
-        sha1 = "NakjLfo11wZ7TLLd8jV7GHFTbF8=";
-      };
-    }
-    {
-      name = "npm_run_path___npm_run_path_4.0.1.tgz";
-      path = fetchurl {
-        name = "npm_run_path___npm_run_path_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz";
-        sha512 = "S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==";
-      };
-    }
-    {
-      name = "npmlog___npmlog_4.1.2.tgz";
-      path = fetchurl {
-        name = "npmlog___npmlog_4.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz";
-        sha512 = "2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==";
-      };
-    }
-    {
-      name = "nth_check___nth_check_1.0.2.tgz";
-      path = fetchurl {
-        name = "nth_check___nth_check_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz";
-        sha512 = "WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==";
-      };
-    }
-    {
-      name = "num2fraction___num2fraction_1.2.2.tgz";
-      path = fetchurl {
-        name = "num2fraction___num2fraction_1.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz";
-        sha1 = "b2gragJ6Tp3fpFZM0lidHU5mnt4=";
-      };
-    }
-    {
-      name = "number_is_nan___number_is_nan_1.0.1.tgz";
-      path = fetchurl {
-        name = "number_is_nan___number_is_nan_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz";
-        sha1 = "CXtgK1NCKlIsGvuHkDGDNpQaAR0=";
-      };
-    }
-    {
-      name = "nwsapi___nwsapi_2.2.0.tgz";
-      path = fetchurl {
-        name = "nwsapi___nwsapi_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz";
-        sha512 = "h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==";
-      };
-    }
-    {
-      name = "oauth_sign___oauth_sign_0.9.0.tgz";
-      path = fetchurl {
-        name = "oauth_sign___oauth_sign_0.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz";
-        sha512 = "fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==";
-      };
-    }
-    {
-      name = "object_assign___object_assign_4.1.1.tgz";
-      path = fetchurl {
-        name = "object_assign___object_assign_4.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz";
-        sha1 = "IQmtx5ZYh8/AXLvUQsrIv7s2CGM=";
-      };
-    }
-    {
-      name = "object_copy___object_copy_0.1.0.tgz";
-      path = fetchurl {
-        name = "object_copy___object_copy_0.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz";
-        sha1 = "fn2Fi3gb18mRpBupde04EnVOmYw=";
-      };
-    }
-    {
-      name = "object_fit_images___object_fit_images_3.2.4.tgz";
-      path = fetchurl {
-        name = "object_fit_images___object_fit_images_3.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/object-fit-images/-/object-fit-images-3.2.4.tgz";
-        sha512 = "G+7LzpYfTfqUyrZlfrou/PLLLAPNC52FTy5y1CBywX+1/FkxIloOyQXBmZ3Zxa2AWO+lMF0JTuvqbr7G5e5CWg==";
-      };
-    }
-    {
-      name = "object_inspect___object_inspect_1.10.3.tgz";
-      path = fetchurl {
-        name = "object_inspect___object_inspect_1.10.3.tgz";
-        url  = "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.10.3.tgz";
-        sha512 = "e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==";
-      };
-    }
-    {
-      name = "object_inspect___object_inspect_1.8.0.tgz";
-      path = fetchurl {
-        name = "object_inspect___object_inspect_1.8.0.tgz";
-        url  = "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.8.0.tgz";
-        sha512 = "jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==";
-      };
-    }
-    {
-      name = "object_inspect___object_inspect_1.9.0.tgz";
-      path = fetchurl {
-        name = "object_inspect___object_inspect_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.9.0.tgz";
-        sha512 = "i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==";
-      };
-    }
-    {
-      name = "object_is___object_is_1.1.3.tgz";
-      path = fetchurl {
-        name = "object_is___object_is_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/object-is/-/object-is-1.1.3.tgz";
-        sha512 = "teyqLvFWzLkq5B9ki8FVWA902UER2qkxmdA4nLf+wjOLAWgxzCWZNCxpDq9MvE8MmhWNr+I8w3BN49Vx36Y6Xg==";
-      };
-    }
-    {
-      name = "object_keys___object_keys_1.1.1.tgz";
-      path = fetchurl {
-        name = "object_keys___object_keys_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz";
-        sha512 = "NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==";
-      };
-    }
-    {
-      name = "object_visit___object_visit_1.0.1.tgz";
-      path = fetchurl {
-        name = "object_visit___object_visit_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz";
-        sha1 = "95xEk68MU3e1n+OdOV5BBC3QRbs=";
-      };
-    }
-    {
-      name = "object.assign___object.assign_4.1.1.tgz";
-      path = fetchurl {
-        name = "object.assign___object.assign_4.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.1.tgz";
-        sha512 = "VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==";
-      };
-    }
-    {
-      name = "object.assign___object.assign_4.1.2.tgz";
-      path = fetchurl {
-        name = "object.assign___object.assign_4.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz";
-        sha512 = "ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==";
-      };
-    }
-    {
-      name = "object.entries___object.entries_1.1.4.tgz";
-      path = fetchurl {
-        name = "object.entries___object.entries_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.4.tgz";
-        sha512 = "h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==";
-      };
-    }
-    {
-      name = "object.fromentries___object.fromentries_2.0.4.tgz";
-      path = fetchurl {
-        name = "object.fromentries___object.fromentries_2.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.4.tgz";
-        sha512 = "EsFBshs5RUUpQEY1D4q/m59kMfz4YJvxuNCJcv/jWwOJr34EaVnG11ZrZa0UHB3wnzV1wx8m58T4hQL8IuNXlQ==";
-      };
-    }
-    {
-      name = "object.getownpropertydescriptors___object.getownpropertydescriptors_2.1.0.tgz";
-      path = fetchurl {
-        name = "object.getownpropertydescriptors___object.getownpropertydescriptors_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz";
-        sha512 = "Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==";
-      };
-    }
-    {
-      name = "object.pick___object.pick_1.3.0.tgz";
-      path = fetchurl {
-        name = "object.pick___object.pick_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz";
-        sha1 = "h6EKxMFpS9Lhy/U1kaZhQftd10c=";
-      };
-    }
-    {
-      name = "object.values___object.values_1.1.4.tgz";
-      path = fetchurl {
-        name = "object.values___object.values_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/object.values/-/object.values-1.1.4.tgz";
-        sha512 = "TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==";
-      };
-    }
-    {
-      name = "obuf___obuf_1.1.2.tgz";
-      path = fetchurl {
-        name = "obuf___obuf_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz";
-        sha512 = "PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==";
-      };
-    }
-    {
-      name = "offline_plugin___offline_plugin_5.0.7.tgz";
-      path = fetchurl {
-        name = "offline_plugin___offline_plugin_5.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/offline-plugin/-/offline-plugin-5.0.7.tgz";
-        sha512 = "ArMFt4QFjK0wg8B5+R/6tt65u6Dk+Pkx4PAcW5O7mgIF3ywMepaQqFOQgfZD4ybanuGwuJihxUwMRgkzd+YGYw==";
-      };
-    }
-    {
-      name = "on_finished___on_finished_2.3.0.tgz";
-      path = fetchurl {
-        name = "on_finished___on_finished_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz";
-        sha1 = "IPEzZIGwg811M3mSoWlxqi2QaUc=";
-      };
-    }
-    {
-      name = "on_headers___on_headers_1.0.2.tgz";
-      path = fetchurl {
-        name = "on_headers___on_headers_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz";
-        sha512 = "pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==";
-      };
-    }
-    {
-      name = "once___once_1.4.0.tgz";
-      path = fetchurl {
-        name = "once___once_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz";
-        sha1 = "WDsap3WWHUsROsF9nFC6753Xa9E=";
-      };
-    }
-    {
-      name = "onetime___onetime_1.1.0.tgz";
-      path = fetchurl {
-        name = "onetime___onetime_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz";
-        sha1 = "ofeDj4MUxRbwXs78vEzP4EtO14k=";
-      };
-    }
-    {
-      name = "onetime___onetime_5.1.2.tgz";
-      path = fetchurl {
-        name = "onetime___onetime_5.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz";
-        sha512 = "kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==";
-      };
-    }
-    {
-      name = "opencollective_postinstall___opencollective_postinstall_2.0.3.tgz";
-      path = fetchurl {
-        name = "opencollective_postinstall___opencollective_postinstall_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz";
-        sha512 = "8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==";
-      };
-    }
-    {
-      name = "opener___opener_1.5.2.tgz";
-      path = fetchurl {
-        name = "opener___opener_1.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz";
-        sha512 = "ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==";
-      };
-    }
-    {
-      name = "opn___opn_5.5.0.tgz";
-      path = fetchurl {
-        name = "opn___opn_5.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/opn/-/opn-5.5.0.tgz";
-        sha512 = "PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==";
-      };
-    }
-    {
-      name = "optionator___optionator_0.8.3.tgz";
-      path = fetchurl {
-        name = "optionator___optionator_0.8.3.tgz";
-        url  = "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz";
-        sha512 = "+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==";
-      };
-    }
-    {
-      name = "optionator___optionator_0.9.1.tgz";
-      path = fetchurl {
-        name = "optionator___optionator_0.9.1.tgz";
-        url  = "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz";
-        sha512 = "74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==";
-      };
-    }
-    {
-      name = "original___original_1.0.2.tgz";
-      path = fetchurl {
-        name = "original___original_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz";
-        sha512 = "hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==";
-      };
-    }
-    {
-      name = "os_browserify___os_browserify_0.3.0.tgz";
-      path = fetchurl {
-        name = "os_browserify___os_browserify_0.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz";
-        sha1 = "hUNzx/XCMVkU/Jv8a9gjj92h7Cc=";
-      };
-    }
-    {
-      name = "os_homedir___os_homedir_1.0.2.tgz";
-      path = fetchurl {
-        name = "os_homedir___os_homedir_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz";
-        sha1 = "/7xJiDNuDoM94MFox+8VISGqf7M=";
-      };
-    }
-    {
-      name = "p_each_series___p_each_series_2.1.0.tgz";
-      path = fetchurl {
-        name = "p_each_series___p_each_series_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.1.0.tgz";
-        sha512 = "ZuRs1miPT4HrjFa+9fRfOFXxGJfORgelKV9f9nNOWw2gl6gVsRaVDOQP0+MI0G0wGKns1Yacsu0GjOFbTK0JFQ==";
-      };
-    }
-    {
-      name = "p_finally___p_finally_1.0.0.tgz";
-      path = fetchurl {
-        name = "p_finally___p_finally_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz";
-        sha1 = "P7z7FbiZpEEjs0ttzBi3JDNqLK4=";
-      };
-    }
-    {
-      name = "p_limit___p_limit_1.3.0.tgz";
-      path = fetchurl {
-        name = "p_limit___p_limit_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz";
-        sha512 = "vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==";
-      };
-    }
-    {
-      name = "p_limit___p_limit_2.3.0.tgz";
-      path = fetchurl {
-        name = "p_limit___p_limit_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz";
-        sha512 = "//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==";
-      };
-    }
-    {
-      name = "p_limit___p_limit_3.0.2.tgz";
-      path = fetchurl {
-        name = "p_limit___p_limit_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-3.0.2.tgz";
-        sha512 = "iwqZSOoWIW+Ew4kAGUlN16J4M7OB3ysMLSZtnhmqx7njIHFPlxWBX8xo3lVTyFVq6mI/lL9qt2IsN1sHwaxJkg==";
-      };
-    }
-    {
-      name = "p_locate___p_locate_2.0.0.tgz";
-      path = fetchurl {
-        name = "p_locate___p_locate_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz";
-        sha1 = "IKAQOyIqcMj9OcwuWAaA893l7EM=";
-      };
-    }
-    {
-      name = "p_locate___p_locate_3.0.0.tgz";
-      path = fetchurl {
-        name = "p_locate___p_locate_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz";
-        sha512 = "x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==";
-      };
-    }
-    {
-      name = "p_locate___p_locate_4.1.0.tgz";
-      path = fetchurl {
-        name = "p_locate___p_locate_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz";
-        sha512 = "R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==";
-      };
-    }
-    {
-      name = "p_map___p_map_2.1.0.tgz";
-      path = fetchurl {
-        name = "p_map___p_map_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz";
-        sha512 = "y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==";
-      };
-    }
-    {
-      name = "p_map___p_map_4.0.0.tgz";
-      path = fetchurl {
-        name = "p_map___p_map_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz";
-        sha512 = "/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==";
-      };
-    }
-    {
-      name = "p_retry___p_retry_3.0.1.tgz";
-      path = fetchurl {
-        name = "p_retry___p_retry_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/p-retry/-/p-retry-3.0.1.tgz";
-        sha512 = "XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==";
-      };
-    }
-    {
-      name = "p_try___p_try_1.0.0.tgz";
-      path = fetchurl {
-        name = "p_try___p_try_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz";
-        sha1 = "y8ec26+P1CKOE/Yh8rGiN8GyB7M=";
-      };
-    }
-    {
-      name = "p_try___p_try_2.2.0.tgz";
-      path = fetchurl {
-        name = "p_try___p_try_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz";
-        sha512 = "R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==";
-      };
-    }
-    {
-      name = "packet_reader___packet_reader_1.0.0.tgz";
-      path = fetchurl {
-        name = "packet_reader___packet_reader_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/packet-reader/-/packet-reader-1.0.0.tgz";
-        sha512 = "HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==";
-      };
-    }
-    {
-      name = "pako___pako_1.0.11.tgz";
-      path = fetchurl {
-        name = "pako___pako_1.0.11.tgz";
-        url  = "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz";
-        sha512 = "4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==";
-      };
-    }
-    {
-      name = "parallel_transform___parallel_transform_1.2.0.tgz";
-      path = fetchurl {
-        name = "parallel_transform___parallel_transform_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz";
-        sha512 = "P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==";
-      };
-    }
-    {
-      name = "parent_module___parent_module_1.0.1.tgz";
-      path = fetchurl {
-        name = "parent_module___parent_module_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz";
-        sha512 = "GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==";
-      };
-    }
-    {
-      name = "parse_asn1___parse_asn1_5.1.6.tgz";
-      path = fetchurl {
-        name = "parse_asn1___parse_asn1_5.1.6.tgz";
-        url  = "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz";
-        sha512 = "RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==";
-      };
-    }
-    {
-      name = "parse_css_font___parse_css_font_2.0.2.tgz";
-      path = fetchurl {
-        name = "parse_css_font___parse_css_font_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/parse-css-font/-/parse-css-font-2.0.2.tgz";
-        sha1 = "e2CwYHBaJam5C38O1JPlgjJIplI=";
-      };
-    }
-    {
-      name = "parse_json___parse_json_4.0.0.tgz";
-      path = fetchurl {
-        name = "parse_json___parse_json_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz";
-        sha1 = "vjX1Qlvh9/bHRxhPmKeIy5lHfuA=";
-      };
-    }
-    {
-      name = "parse_json___parse_json_5.0.1.tgz";
-      path = fetchurl {
-        name = "parse_json___parse_json_5.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/parse-json/-/parse-json-5.0.1.tgz";
-        sha512 = "ztoZ4/DYeXQq4E21v169sC8qWINGpcosGv9XhTDvg9/hWvx/zrFkc9BiWxR58OJLHGk28j5BL0SDLeV2WmFZlQ==";
-      };
-    }
-    {
-      name = "parse_passwd___parse_passwd_1.0.0.tgz";
-      path = fetchurl {
-        name = "parse_passwd___parse_passwd_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz";
-        sha1 = "bVuTSkVpk7I9N/QKOC1vFmao5cY=";
-      };
-    }
-    {
-      name = "parse5___parse5_5.1.1.tgz";
-      path = fetchurl {
-        name = "parse5___parse5_5.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz";
-        sha512 = "ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==";
-      };
-    }
-    {
-      name = "parseurl___parseurl_1.3.3.tgz";
-      path = fetchurl {
-        name = "parseurl___parseurl_1.3.3.tgz";
-        url  = "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz";
-        sha512 = "CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==";
-      };
-    }
-    {
-      name = "pascalcase___pascalcase_0.1.1.tgz";
-      path = fetchurl {
-        name = "pascalcase___pascalcase_0.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz";
-        sha1 = "s2PlXoAGym/iF4TS2yK9FdeRfxQ=";
-      };
-    }
-    {
-      name = "path_browserify___path_browserify_0.0.1.tgz";
-      path = fetchurl {
-        name = "path_browserify___path_browserify_0.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz";
-        sha512 = "BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==";
-      };
-    }
-    {
-      name = "path_complete_extname___path_complete_extname_1.0.0.tgz";
-      path = fetchurl {
-        name = "path_complete_extname___path_complete_extname_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/path-complete-extname/-/path-complete-extname-1.0.0.tgz";
-        sha512 = "CVjiWcMRdGU8ubs08YQVzhutOR5DEfO97ipRIlOGMK5Bek5nQySknBpuxVAVJ36hseTNs+vdIcv57ZrWxH7zvg==";
-      };
-    }
-    {
-      name = "path_dirname___path_dirname_1.0.2.tgz";
-      path = fetchurl {
-        name = "path_dirname___path_dirname_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz";
-        sha1 = "zDPSTVJeCZpTiMAzbG4yuRYGCeA=";
-      };
-    }
-    {
-      name = "path_exists___path_exists_3.0.0.tgz";
-      path = fetchurl {
-        name = "path_exists___path_exists_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz";
-        sha1 = "zg6+ql94yxiSXqfYENe1mwEP1RU=";
-      };
-    }
-    {
-      name = "path_exists___path_exists_4.0.0.tgz";
-      path = fetchurl {
-        name = "path_exists___path_exists_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz";
-        sha512 = "ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==";
-      };
-    }
-    {
-      name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
-      path = fetchurl {
-        name = "path_is_absolute___path_is_absolute_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
-        sha1 = "F0uSaHNVNP+8es5r9TpanhtcX18=";
-      };
-    }
-    {
-      name = "path_is_inside___path_is_inside_1.0.2.tgz";
-      path = fetchurl {
-        name = "path_is_inside___path_is_inside_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz";
-        sha1 = "NlQX3t5EQw0cEa9hAn+s8HS9/FM=";
-      };
-    }
-    {
-      name = "path_key___path_key_2.0.1.tgz";
-      path = fetchurl {
-        name = "path_key___path_key_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz";
-        sha1 = "QRyttXTFoUDTpLGRDUDYDMn0C0A=";
-      };
-    }
-    {
-      name = "path_key___path_key_3.1.1.tgz";
-      path = fetchurl {
-        name = "path_key___path_key_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz";
-        sha512 = "ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==";
-      };
-    }
-    {
-      name = "path_parse___path_parse_1.0.6.tgz";
-      path = fetchurl {
-        name = "path_parse___path_parse_1.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz";
-        sha512 = "GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==";
-      };
-    }
-    {
-      name = "path_to_regexp___path_to_regexp_0.1.7.tgz";
-      path = fetchurl {
-        name = "path_to_regexp___path_to_regexp_0.1.7.tgz";
-        url  = "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz";
-        sha1 = "32BBeABfUi8V60SQ5yR6G/qmf4w=";
-      };
-    }
-    {
-      name = "path_to_regexp___path_to_regexp_1.7.0.tgz";
-      path = fetchurl {
-        name = "path_to_regexp___path_to_regexp_1.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz";
-        sha1 = "Wf3g9DW62suhA6hOnTvGTpa5k30=";
-      };
-    }
-    {
-      name = "path_type___path_type_3.0.0.tgz";
-      path = fetchurl {
-        name = "path_type___path_type_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz";
-        sha512 = "T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==";
-      };
-    }
-    {
-      name = "path_type___path_type_4.0.0.tgz";
-      path = fetchurl {
-        name = "path_type___path_type_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz";
-        sha512 = "gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==";
-      };
-    }
-    {
-      name = "pbkdf2___pbkdf2_3.1.1.tgz";
-      path = fetchurl {
-        name = "pbkdf2___pbkdf2_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.1.tgz";
-        sha512 = "4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==";
-      };
-    }
-    {
-      name = "performance_now___performance_now_0.2.0.tgz";
-      path = fetchurl {
-        name = "performance_now___performance_now_0.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz";
-        sha1 = "M+8wxcd9TqIcWlOGnZG1bY8lVeU=";
-      };
-    }
-    {
-      name = "performance_now___performance_now_2.1.0.tgz";
-      path = fetchurl {
-        name = "performance_now___performance_now_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz";
-        sha1 = "Ywn04OX6kT7BxpMHrjZLSzd8nns=";
-      };
-    }
-    {
-      name = "pg_connection_string___pg_connection_string_2.4.0.tgz";
-      path = fetchurl {
-        name = "pg_connection_string___pg_connection_string_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.4.0.tgz";
-        sha512 = "3iBXuv7XKvxeMrIgym7njT+HlZkwZqqGX4Bu9cci8xHZNT+Um1gWKqCsAzcC0d95rcKMU5WBg6YRUcHyV0HZKQ==";
-      };
-    }
-    {
-      name = "pg_int8___pg_int8_1.0.1.tgz";
-      path = fetchurl {
-        name = "pg_int8___pg_int8_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz";
-        sha512 = "WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==";
-      };
-    }
-    {
-      name = "pg_pool___pg_pool_3.2.2.tgz";
-      path = fetchurl {
-        name = "pg_pool___pg_pool_3.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.2.2.tgz";
-        sha512 = "ORJoFxAlmmros8igi608iVEbQNNZlp89diFVx6yV5v+ehmpMY9sK6QgpmgoXbmkNaBAx8cOOZh9g80kJv1ooyA==";
-      };
-    }
-    {
-      name = "pg_protocol___pg_protocol_1.4.0.tgz";
-      path = fetchurl {
-        name = "pg_protocol___pg_protocol_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.4.0.tgz";
-        sha512 = "El+aXWcwG/8wuFICMQjM5ZSAm6OWiJicFdNYo+VY3QP+8vI4SvLIWVe51PppTzMhikUJR+PsyIFKqfdXPz/yxA==";
-      };
-    }
-    {
-      name = "pg_types___pg_types_2.2.0.tgz";
-      path = fetchurl {
-        name = "pg_types___pg_types_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/pg-types/-/pg-types-2.2.0.tgz";
-        sha512 = "qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==";
-      };
-    }
-    {
-      name = "pg___pg_8.5.1.tgz";
-      path = fetchurl {
-        name = "pg___pg_8.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/pg/-/pg-8.5.1.tgz";
-        sha512 = "9wm3yX9lCfjvA98ybCyw2pADUivyNWT/yIP4ZcDVpMN0og70BUWYEGXPCTAQdGTAqnytfRADb7NERrY1qxhIqw==";
-      };
-    }
-    {
-      name = "pgpass___pgpass_1.0.4.tgz";
-      path = fetchurl {
-        name = "pgpass___pgpass_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/pgpass/-/pgpass-1.0.4.tgz";
-        sha512 = "YmuA56alyBq7M59vxVBfPJrGSozru8QAdoNlWuW3cz8l+UX3cWge0vTvjKhsSHSJpo3Bom8/Mm6hf0TR5GY0+w==";
-      };
-    }
-    {
-      name = "picomatch___picomatch_2.2.2.tgz";
-      path = fetchurl {
-        name = "picomatch___picomatch_2.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz";
-        sha512 = "q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==";
-      };
-    }
-    {
-      name = "picomatch___picomatch_2.3.0.tgz";
-      path = fetchurl {
-        name = "picomatch___picomatch_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz";
-        sha512 = "lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==";
-      };
-    }
-    {
-      name = "pify___pify_2.3.0.tgz";
-      path = fetchurl {
-        name = "pify___pify_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz";
-        sha1 = "7RQaasBDqEnqWISY59yosVMw6Qw=";
-      };
-    }
-    {
-      name = "pify___pify_3.0.0.tgz";
-      path = fetchurl {
-        name = "pify___pify_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz";
-        sha1 = "5aSs0sEB/fPZpNB/DbxNtJ3SgXY=";
-      };
-    }
-    {
-      name = "pify___pify_4.0.1.tgz";
-      path = fetchurl {
-        name = "pify___pify_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz";
-        sha512 = "uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==";
-      };
-    }
-    {
-      name = "pinkie_promise___pinkie_promise_2.0.1.tgz";
-      path = fetchurl {
-        name = "pinkie_promise___pinkie_promise_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz";
-        sha1 = "ITXW36ejWMBprJsXh3YogihFD/o=";
-      };
-    }
-    {
-      name = "pinkie___pinkie_2.0.4.tgz";
-      path = fetchurl {
-        name = "pinkie___pinkie_2.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz";
-        sha1 = "clVrgM+g1IqXToDnckjoDtT3+HA=";
-      };
-    }
-    {
-      name = "pirates___pirates_4.0.1.tgz";
-      path = fetchurl {
-        name = "pirates___pirates_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz";
-        sha512 = "WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==";
-      };
-    }
-    {
-      name = "pkg_dir___pkg_dir_2.0.0.tgz";
-      path = fetchurl {
-        name = "pkg_dir___pkg_dir_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz";
-        sha1 = "9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=";
-      };
-    }
-    {
-      name = "pkg_dir___pkg_dir_3.0.0.tgz";
-      path = fetchurl {
-        name = "pkg_dir___pkg_dir_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz";
-        sha512 = "/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==";
-      };
-    }
-    {
-      name = "pkg_dir___pkg_dir_4.2.0.tgz";
-      path = fetchurl {
-        name = "pkg_dir___pkg_dir_4.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz";
-        sha512 = "HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==";
-      };
-    }
-    {
-      name = "pkg_up___pkg_up_2.0.0.tgz";
-      path = fetchurl {
-        name = "pkg_up___pkg_up_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz";
-        sha1 = "yBmscoBZpGHKscOImivjxJoATX8=";
-      };
-    }
-    {
-      name = "pluralize___pluralize_1.2.1.tgz";
-      path = fetchurl {
-        name = "pluralize___pluralize_1.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz";
-        sha1 = "0aIUg/0iu0HlihL6NCGCMUCJfEU=";
-      };
-    }
-    {
-      name = "portfinder___portfinder_1.0.28.tgz";
-      path = fetchurl {
-        name = "portfinder___portfinder_1.0.28.tgz";
-        url  = "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.28.tgz";
-        sha512 = "Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==";
-      };
-    }
-    {
-      name = "posix_character_classes___posix_character_classes_0.1.1.tgz";
-      path = fetchurl {
-        name = "posix_character_classes___posix_character_classes_0.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz";
-        sha1 = "AerA/jta9xoqbAL+q7jB/vfgDqs=";
-      };
-    }
-    {
-      name = "postcss_calc___postcss_calc_7.0.4.tgz";
-      path = fetchurl {
-        name = "postcss_calc___postcss_calc_7.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.4.tgz";
-        sha512 = "0I79VRAd1UTkaHzY9w83P39YGO/M3bG7/tNLrHGEunBolfoGM0hSjrGvjoeaj0JE/zIw5GsI2KZ0UwDJqv5hjw==";
-      };
-    }
-    {
-      name = "postcss_colormin___postcss_colormin_4.0.3.tgz";
-      path = fetchurl {
-        name = "postcss_colormin___postcss_colormin_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.3.tgz";
-        sha512 = "WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==";
-      };
-    }
-    {
-      name = "postcss_convert_values___postcss_convert_values_4.0.1.tgz";
-      path = fetchurl {
-        name = "postcss_convert_values___postcss_convert_values_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz";
-        sha512 = "Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==";
-      };
-    }
-    {
-      name = "postcss_discard_comments___postcss_discard_comments_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_discard_comments___postcss_discard_comments_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz";
-        sha512 = "RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==";
-      };
-    }
-    {
-      name = "postcss_discard_duplicates___postcss_discard_duplicates_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_discard_duplicates___postcss_discard_duplicates_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz";
-        sha512 = "ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==";
-      };
-    }
-    {
-      name = "postcss_discard_empty___postcss_discard_empty_4.0.1.tgz";
-      path = fetchurl {
-        name = "postcss_discard_empty___postcss_discard_empty_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz";
-        sha512 = "B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==";
-      };
-    }
-    {
-      name = "postcss_discard_overridden___postcss_discard_overridden_4.0.1.tgz";
-      path = fetchurl {
-        name = "postcss_discard_overridden___postcss_discard_overridden_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz";
-        sha512 = "IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==";
-      };
-    }
-    {
-      name = "postcss_load_config___postcss_load_config_2.1.2.tgz";
-      path = fetchurl {
-        name = "postcss_load_config___postcss_load_config_2.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.2.tgz";
-        sha512 = "/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==";
-      };
-    }
-    {
-      name = "postcss_loader___postcss_loader_3.0.0.tgz";
-      path = fetchurl {
-        name = "postcss_loader___postcss_loader_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz";
-        sha512 = "cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==";
-      };
-    }
-    {
-      name = "postcss_merge_longhand___postcss_merge_longhand_4.0.11.tgz";
-      path = fetchurl {
-        name = "postcss_merge_longhand___postcss_merge_longhand_4.0.11.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz";
-        sha512 = "alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==";
-      };
-    }
-    {
-      name = "postcss_merge_rules___postcss_merge_rules_4.0.3.tgz";
-      path = fetchurl {
-        name = "postcss_merge_rules___postcss_merge_rules_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz";
-        sha512 = "U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==";
-      };
-    }
-    {
-      name = "postcss_minify_font_values___postcss_minify_font_values_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_minify_font_values___postcss_minify_font_values_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz";
-        sha512 = "j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==";
-      };
-    }
-    {
-      name = "postcss_minify_gradients___postcss_minify_gradients_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_minify_gradients___postcss_minify_gradients_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz";
-        sha512 = "qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==";
-      };
-    }
-    {
-      name = "postcss_minify_params___postcss_minify_params_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_minify_params___postcss_minify_params_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz";
-        sha512 = "G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==";
-      };
-    }
-    {
-      name = "postcss_minify_selectors___postcss_minify_selectors_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_minify_selectors___postcss_minify_selectors_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz";
-        sha512 = "D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==";
-      };
-    }
-    {
-      name = "postcss_modules_extract_imports___postcss_modules_extract_imports_3.0.0.tgz";
-      path = fetchurl {
-        name = "postcss_modules_extract_imports___postcss_modules_extract_imports_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz";
-        sha512 = "bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==";
-      };
-    }
-    {
-      name = "postcss_modules_local_by_default___postcss_modules_local_by_default_4.0.0.tgz";
-      path = fetchurl {
-        name = "postcss_modules_local_by_default___postcss_modules_local_by_default_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz";
-        sha512 = "sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==";
-      };
-    }
-    {
-      name = "postcss_modules_scope___postcss_modules_scope_3.0.0.tgz";
-      path = fetchurl {
-        name = "postcss_modules_scope___postcss_modules_scope_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz";
-        sha512 = "hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==";
-      };
-    }
-    {
-      name = "postcss_modules_values___postcss_modules_values_4.0.0.tgz";
-      path = fetchurl {
-        name = "postcss_modules_values___postcss_modules_values_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz";
-        sha512 = "RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==";
-      };
-    }
-    {
-      name = "postcss_normalize_charset___postcss_normalize_charset_4.0.1.tgz";
-      path = fetchurl {
-        name = "postcss_normalize_charset___postcss_normalize_charset_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz";
-        sha512 = "gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==";
-      };
-    }
-    {
-      name = "postcss_normalize_display_values___postcss_normalize_display_values_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_normalize_display_values___postcss_normalize_display_values_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz";
-        sha512 = "3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==";
-      };
-    }
-    {
-      name = "postcss_normalize_positions___postcss_normalize_positions_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_normalize_positions___postcss_normalize_positions_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz";
-        sha512 = "Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==";
-      };
-    }
-    {
-      name = "postcss_normalize_repeat_style___postcss_normalize_repeat_style_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_normalize_repeat_style___postcss_normalize_repeat_style_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz";
-        sha512 = "qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==";
-      };
-    }
-    {
-      name = "postcss_normalize_string___postcss_normalize_string_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_normalize_string___postcss_normalize_string_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz";
-        sha512 = "RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==";
-      };
-    }
-    {
-      name = "postcss_normalize_timing_functions___postcss_normalize_timing_functions_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_normalize_timing_functions___postcss_normalize_timing_functions_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz";
-        sha512 = "acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==";
-      };
-    }
-    {
-      name = "postcss_normalize_unicode___postcss_normalize_unicode_4.0.1.tgz";
-      path = fetchurl {
-        name = "postcss_normalize_unicode___postcss_normalize_unicode_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz";
-        sha512 = "od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==";
-      };
-    }
-    {
-      name = "postcss_normalize_url___postcss_normalize_url_4.0.1.tgz";
-      path = fetchurl {
-        name = "postcss_normalize_url___postcss_normalize_url_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz";
-        sha512 = "p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==";
-      };
-    }
-    {
-      name = "postcss_normalize_whitespace___postcss_normalize_whitespace_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_normalize_whitespace___postcss_normalize_whitespace_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz";
-        sha512 = "tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==";
-      };
-    }
-    {
-      name = "postcss_object_fit_images___postcss_object_fit_images_1.1.2.tgz";
-      path = fetchurl {
-        name = "postcss_object_fit_images___postcss_object_fit_images_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-object-fit-images/-/postcss-object-fit-images-1.1.2.tgz";
-        sha1 = "i3cwQ9sUZy72zW8ssfDYsmqfVzs=";
-      };
-    }
-    {
-      name = "postcss_ordered_values___postcss_ordered_values_4.1.2.tgz";
-      path = fetchurl {
-        name = "postcss_ordered_values___postcss_ordered_values_4.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz";
-        sha512 = "2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==";
-      };
-    }
-    {
-      name = "postcss_reduce_initial___postcss_reduce_initial_4.0.3.tgz";
-      path = fetchurl {
-        name = "postcss_reduce_initial___postcss_reduce_initial_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz";
-        sha512 = "gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==";
-      };
-    }
-    {
-      name = "postcss_reduce_transforms___postcss_reduce_transforms_4.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_reduce_transforms___postcss_reduce_transforms_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz";
-        sha512 = "EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==";
-      };
-    }
-    {
-      name = "postcss_selector_parser___postcss_selector_parser_3.1.2.tgz";
-      path = fetchurl {
-        name = "postcss_selector_parser___postcss_selector_parser_3.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz";
-        sha512 = "h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==";
-      };
-    }
-    {
-      name = "postcss_selector_parser___postcss_selector_parser_6.0.2.tgz";
-      path = fetchurl {
-        name = "postcss_selector_parser___postcss_selector_parser_6.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz";
-        sha512 = "36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==";
-      };
-    }
-    {
-      name = "postcss_selector_parser___postcss_selector_parser_6.0.4.tgz";
-      path = fetchurl {
-        name = "postcss_selector_parser___postcss_selector_parser_6.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz";
-        sha512 = "gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==";
-      };
-    }
-    {
-      name = "postcss_svgo___postcss_svgo_4.0.3.tgz";
-      path = fetchurl {
-        name = "postcss_svgo___postcss_svgo_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.3.tgz";
-        sha512 = "NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw==";
-      };
-    }
-    {
-      name = "postcss_unique_selectors___postcss_unique_selectors_4.0.1.tgz";
-      path = fetchurl {
-        name = "postcss_unique_selectors___postcss_unique_selectors_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz";
-        sha512 = "+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==";
-      };
-    }
-    {
-      name = "postcss_value_parser___postcss_value_parser_3.3.1.tgz";
-      path = fetchurl {
-        name = "postcss_value_parser___postcss_value_parser_3.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz";
-        sha512 = "pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==";
-      };
-    }
-    {
-      name = "postcss_value_parser___postcss_value_parser_4.1.0.tgz";
-      path = fetchurl {
-        name = "postcss_value_parser___postcss_value_parser_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz";
-        sha512 = "97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==";
-      };
-    }
-    {
-      name = "postcss___postcss_5.2.18.tgz";
-      path = fetchurl {
-        name = "postcss___postcss_5.2.18.tgz";
-        url  = "https://registry.yarnpkg.com/postcss/-/postcss-5.2.18.tgz";
-        sha512 = "zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==";
-      };
-    }
-    {
-      name = "postcss___postcss_7.0.32.tgz";
-      path = fetchurl {
-        name = "postcss___postcss_7.0.32.tgz";
-        url  = "https://registry.yarnpkg.com/postcss/-/postcss-7.0.32.tgz";
-        sha512 = "03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw==";
-      };
-    }
-    {
-      name = "postcss___postcss_8.3.0.tgz";
-      path = fetchurl {
-        name = "postcss___postcss_8.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/postcss/-/postcss-8.3.0.tgz";
-        sha512 = "+ogXpdAjWGa+fdYY5BQ96V/6tAo+TdSSIMP5huJBIygdWwKtVoB5JWZ7yUd4xZ8r+8Kvvx4nyg/PQ071H4UtcQ==";
-      };
-    }
-    {
-      name = "postgres_array___postgres_array_2.0.0.tgz";
-      path = fetchurl {
-        name = "postgres_array___postgres_array_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz";
-        sha512 = "VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==";
-      };
-    }
-    {
-      name = "postgres_bytea___postgres_bytea_1.0.0.tgz";
-      path = fetchurl {
-        name = "postgres_bytea___postgres_bytea_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/postgres-bytea/-/postgres-bytea-1.0.0.tgz";
-        sha1 = "AntTPAqokOJtFy1Hz5zOzFIazTU=";
-      };
-    }
-    {
-      name = "postgres_date___postgres_date_1.0.7.tgz";
-      path = fetchurl {
-        name = "postgres_date___postgres_date_1.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/postgres-date/-/postgres-date-1.0.7.tgz";
-        sha512 = "suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==";
-      };
-    }
-    {
-      name = "postgres_interval___postgres_interval_1.2.0.tgz";
-      path = fetchurl {
-        name = "postgres_interval___postgres_interval_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/postgres-interval/-/postgres-interval-1.2.0.tgz";
-        sha512 = "9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==";
-      };
-    }
-    {
-      name = "prelude_ls___prelude_ls_1.2.1.tgz";
-      path = fetchurl {
-        name = "prelude_ls___prelude_ls_1.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz";
-        sha512 = "vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==";
-      };
-    }
-    {
-      name = "prelude_ls___prelude_ls_1.1.2.tgz";
-      path = fetchurl {
-        name = "prelude_ls___prelude_ls_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz";
-        sha1 = "IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=";
-      };
-    }
-    {
-      name = "pretty_format___pretty_format_25.5.0.tgz";
-      path = fetchurl {
-        name = "pretty_format___pretty_format_25.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.5.0.tgz";
-        sha512 = "kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==";
-      };
-    }
-    {
-      name = "pretty_format___pretty_format_26.6.2.tgz";
-      path = fetchurl {
-        name = "pretty_format___pretty_format_26.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz";
-        sha512 = "7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==";
-      };
-    }
-    {
-      name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
-      path = fetchurl {
-        name = "process_nextick_args___process_nextick_args_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz";
-        sha512 = "3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==";
-      };
-    }
-    {
-      name = "process___process_0.11.10.tgz";
-      path = fetchurl {
-        name = "process___process_0.11.10.tgz";
-        url  = "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz";
-        sha1 = "czIwDoQBYb2j5podHZGn1LwW8YI=";
-      };
-    }
-    {
-      name = "progress___progress_1.1.8.tgz";
-      path = fetchurl {
-        name = "progress___progress_1.1.8.tgz";
-        url  = "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz";
-        sha1 = "4mDHj2Fhzdmw5WzD4Khd4Xx6V74=";
-      };
-    }
-    {
-      name = "progress___progress_2.0.3.tgz";
-      path = fetchurl {
-        name = "progress___progress_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz";
-        sha512 = "7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==";
-      };
-    }
-    {
-      name = "promise_inflight___promise_inflight_1.0.1.tgz";
-      path = fetchurl {
-        name = "promise_inflight___promise_inflight_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz";
-        sha1 = "mEcocL8igTL8vdhoEputEsPAKeM=";
-      };
-    }
-    {
-      name = "promise.prototype.finally___promise.prototype.finally_3.1.2.tgz";
-      path = fetchurl {
-        name = "promise.prototype.finally___promise.prototype.finally_3.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.2.tgz";
-        sha512 = "A2HuJWl2opDH0EafgdjwEw7HysI8ff/n4lW4QEVBCUXFk9QeGecBWv0Deph0UmLe3tTNYegz8MOjsVuE6SMoJA==";
-      };
-    }
-    {
-      name = "prompts___prompts_2.3.2.tgz";
-      path = fetchurl {
-        name = "prompts___prompts_2.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/prompts/-/prompts-2.3.2.tgz";
-        sha512 = "Q06uKs2CkNYVID0VqwfAl9mipo99zkBv/n2JtWY89Yxa3ZabWSrs0e2KTudKVa3peLUvYXMefDqIleLPVUBZMA==";
-      };
-    }
-    {
-      name = "prop_types_extra___prop_types_extra_1.1.1.tgz";
-      path = fetchurl {
-        name = "prop_types_extra___prop_types_extra_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/prop-types-extra/-/prop-types-extra-1.1.1.tgz";
-        sha512 = "59+AHNnHYCdiC+vMwY52WmvP5dM3QLeoumYuEyceQDi9aEhtwN9zIQ2ZNo25sMyXnbh32h+P1ezDsUpUH3JAew==";
-      };
-    }
-    {
-      name = "prop_types___prop_types_15.7.2.tgz";
-      path = fetchurl {
-        name = "prop_types___prop_types_15.7.2.tgz";
-        url  = "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz";
-        sha512 = "8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==";
-      };
-    }
-    {
-      name = "proxy_addr___proxy_addr_2.0.6.tgz";
-      path = fetchurl {
-        name = "proxy_addr___proxy_addr_2.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.6.tgz";
-        sha512 = "dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==";
-      };
-    }
-    {
-      name = "prr___prr_1.0.1.tgz";
-      path = fetchurl {
-        name = "prr___prr_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz";
-        sha1 = "0/wRS6BplaRexok/SEzrHXj19HY=";
-      };
-    }
-    {
-      name = "psl___psl_1.8.0.tgz";
-      path = fetchurl {
-        name = "psl___psl_1.8.0.tgz";
-        url  = "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz";
-        sha512 = "RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==";
-      };
-    }
-    {
-      name = "public_encrypt___public_encrypt_4.0.3.tgz";
-      path = fetchurl {
-        name = "public_encrypt___public_encrypt_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz";
-        sha512 = "zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==";
-      };
-    }
-    {
-      name = "pump___pump_2.0.1.tgz";
-      path = fetchurl {
-        name = "pump___pump_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz";
-        sha512 = "ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==";
-      };
-    }
-    {
-      name = "pump___pump_3.0.0.tgz";
-      path = fetchurl {
-        name = "pump___pump_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz";
-        sha512 = "LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==";
-      };
-    }
-    {
-      name = "pumpify___pumpify_1.5.1.tgz";
-      path = fetchurl {
-        name = "pumpify___pumpify_1.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz";
-        sha512 = "oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==";
-      };
-    }
-    {
-      name = "punycode___punycode_1.3.2.tgz";
-      path = fetchurl {
-        name = "punycode___punycode_1.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz";
-        sha1 = "llOgNvt8HuQjQvIyXM7v6jkmxI0=";
-      };
-    }
-    {
-      name = "punycode___punycode_1.4.1.tgz";
-      path = fetchurl {
-        name = "punycode___punycode_1.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz";
-        sha1 = "wNWmOycYgArY4esPpSachN1BhF4=";
-      };
-    }
-    {
-      name = "punycode___punycode_2.1.1.tgz";
-      path = fetchurl {
-        name = "punycode___punycode_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz";
-        sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
-      };
-    }
-    {
-      name = "q___q_1.5.1.tgz";
-      path = fetchurl {
-        name = "q___q_1.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz";
-        sha1 = "fjL3W0E4EpHQRhHxvxQQmsAGUdc=";
-      };
-    }
-    {
-      name = "qs___qs_6.7.0.tgz";
-      path = fetchurl {
-        name = "qs___qs_6.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz";
-        sha512 = "VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==";
-      };
-    }
-    {
-      name = "qs___qs_6.5.2.tgz";
-      path = fetchurl {
-        name = "qs___qs_6.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz";
-        sha512 = "N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==";
-      };
-    }
-    {
-      name = "querystring_es3___querystring_es3_0.2.1.tgz";
-      path = fetchurl {
-        name = "querystring_es3___querystring_es3_0.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz";
-        sha1 = "nsYfeQSYdXB9aUFFlv2Qek1xHnM=";
-      };
-    }
-    {
-      name = "querystring___querystring_0.2.0.tgz";
-      path = fetchurl {
-        name = "querystring___querystring_0.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz";
-        sha1 = "sgmEkgO7Jd+CDadW50cAWHhSFiA=";
-      };
-    }
-    {
-      name = "querystringify___querystringify_2.2.0.tgz";
-      path = fetchurl {
-        name = "querystringify___querystringify_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz";
-        sha512 = "FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==";
-      };
-    }
-    {
-      name = "quote___quote_0.4.0.tgz";
-      path = fetchurl {
-        name = "quote___quote_0.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/quote/-/quote-0.4.0.tgz";
-        sha1 = "EIOSF/bBNiuJGUBE0psjP9fzLwE=";
-      };
-    }
-    {
-      name = "raf___raf_3.4.1.tgz";
-      path = fetchurl {
-        name = "raf___raf_3.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/raf/-/raf-3.4.1.tgz";
-        sha512 = "Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==";
-      };
-    }
-    {
-      name = "randombytes___randombytes_2.1.0.tgz";
-      path = fetchurl {
-        name = "randombytes___randombytes_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz";
-        sha512 = "vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==";
-      };
-    }
-    {
-      name = "randomfill___randomfill_1.0.4.tgz";
-      path = fetchurl {
-        name = "randomfill___randomfill_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz";
-        sha512 = "87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==";
-      };
-    }
-    {
-      name = "range_parser___range_parser_1.2.1.tgz";
-      path = fetchurl {
-        name = "range_parser___range_parser_1.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz";
-        sha512 = "Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==";
-      };
-    }
-    {
-      name = "raw_body___raw_body_2.4.0.tgz";
-      path = fetchurl {
-        name = "raw_body___raw_body_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz";
-        sha512 = "4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==";
-      };
-    }
-    {
-      name = "react_dom___react_dom_16.14.0.tgz";
-      path = fetchurl {
-        name = "react_dom___react_dom_16.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-dom/-/react-dom-16.14.0.tgz";
-        sha512 = "1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==";
-      };
-    }
-    {
-      name = "react_event_listener___react_event_listener_0.6.6.tgz";
-      path = fetchurl {
-        name = "react_event_listener___react_event_listener_0.6.6.tgz";
-        url  = "https://registry.yarnpkg.com/react-event-listener/-/react-event-listener-0.6.6.tgz";
-        sha512 = "+hCNqfy7o9wvO6UgjqFmBzARJS7qrNoda0VqzvOuioEpoEXKutiKuv92dSz6kP7rYLmyHPyYNLesi5t/aH1gfw==";
-      };
-    }
-    {
-      name = "react_hotkeys___react_hotkeys_1.1.4.tgz";
-      path = fetchurl {
-        name = "react_hotkeys___react_hotkeys_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/react-hotkeys/-/react-hotkeys-1.1.4.tgz";
-        sha1 = "oHEqouDAOnWf14hYCFmEl6TaznI=";
-      };
-    }
-    {
-      name = "react_immutable_proptypes___react_immutable_proptypes_2.2.0.tgz";
-      path = fetchurl {
-        name = "react_immutable_proptypes___react_immutable_proptypes_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-immutable-proptypes/-/react-immutable-proptypes-2.2.0.tgz";
-        sha512 = "Vf4gBsePlwdGvSZoLSBfd4HAP93HDauMY4fDjXhreg/vg6F3Fj/MXDNyTbltPC/xZKmZc+cjLu3598DdYK6sgQ==";
-      };
-    }
-    {
-      name = "react_immutable_pure_component___react_immutable_pure_component_2.2.2.tgz";
-      path = fetchurl {
-        name = "react_immutable_pure_component___react_immutable_pure_component_2.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/react-immutable-pure-component/-/react-immutable-pure-component-2.2.2.tgz";
-        sha512 = "vkgoMJUDqHZfXXnjVlG3keCxSO/U6WeDQ5/Sl0GK2cH8TOxEzQ5jXqDXHEL/jqk6fsNxV05oH5kD7VNMUE2k+A==";
-      };
-    }
-    {
-      name = "react_infinite_scroller___react_infinite_scroller_1.2.4.tgz";
-      path = fetchurl {
-        name = "react_infinite_scroller___react_infinite_scroller_1.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/react-infinite-scroller/-/react-infinite-scroller-1.2.4.tgz";
-        sha512 = "/oOa0QhZjXPqaD6sictN2edFMsd3kkMiE19Vcz5JDgHpzEJVqYcmq+V3mkwO88087kvKGe1URNksHEOt839Ubw==";
-      };
-    }
-    {
-      name = "react_input_autosize___react_input_autosize_3.0.0.tgz";
-      path = fetchurl {
-        name = "react_input_autosize___react_input_autosize_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-input-autosize/-/react-input-autosize-3.0.0.tgz";
-        sha512 = "nL9uS7jEs/zu8sqwFE5MAPx6pPkNAriACQ2rGLlqmKr2sPGtN7TXTyDdQt4lbNXVx7Uzadb40x8qotIuru6Rhg==";
-      };
-    }
-    {
-      name = "react_intl_translations_manager___react_intl_translations_manager_5.0.3.tgz";
-      path = fetchurl {
-        name = "react_intl_translations_manager___react_intl_translations_manager_5.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/react-intl-translations-manager/-/react-intl-translations-manager-5.0.3.tgz";
-        sha512 = "EfBeugnOGFcdUbQyY9TqBMbuauQ8wm73ZqFr0UqCljhbXl7YDHQcVzclWFRkVmlUffzxitLQFhAZEVVeRNQSwA==";
-      };
-    }
-    {
-      name = "react_intl___react_intl_2.9.0.tgz";
-      path = fetchurl {
-        name = "react_intl___react_intl_2.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-intl/-/react-intl-2.9.0.tgz";
-        sha512 = "27jnDlb/d2A7mSJwrbOBnUgD+rPep+abmoJE511Tf8BnoONIAUehy/U1zZCHGO17mnOwMWxqN4qC0nW11cD6rA==";
-      };
-    }
-    {
-      name = "react_is___react_is_16.13.1.tgz";
-      path = fetchurl {
-        name = "react_is___react_is_16.13.1.tgz";
-        url  = "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz";
-        sha512 = "24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==";
-      };
-    }
-    {
-      name = "react_is___react_is_17.0.1.tgz";
-      path = fetchurl {
-        name = "react_is___react_is_17.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/react-is/-/react-is-17.0.1.tgz";
-        sha512 = "NAnt2iGDXohE5LI7uBnLnqvLQMtzhkiAOLXTmv+qnF9Ky7xAPcX8Up/xWIhxvLVGJvuLiNc4xQLtuqDRzb4fSA==";
-      };
-    }
-    {
-      name = "react_lifecycles_compat___react_lifecycles_compat_3.0.4.tgz";
-      path = fetchurl {
-        name = "react_lifecycles_compat___react_lifecycles_compat_3.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz";
-        sha512 = "fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==";
-      };
-    }
-    {
-      name = "react_masonry_infinite___react_masonry_infinite_1.2.2.tgz";
-      path = fetchurl {
-        name = "react_masonry_infinite___react_masonry_infinite_1.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/react-masonry-infinite/-/react-masonry-infinite-1.2.2.tgz";
-        sha1 = "IME4b5zN2pdHUnyPQrwsAt0ueVE=";
-      };
-    }
-    {
-      name = "react_motion___react_motion_0.5.2.tgz";
-      path = fetchurl {
-        name = "react_motion___react_motion_0.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/react-motion/-/react-motion-0.5.2.tgz";
-        sha512 = "9q3YAvHoUiWlP3cK0v+w1N5Z23HXMj4IF4YuvjvWegWqNPfLXsOBE/V7UvQGpXxHFKRQQcNcVQE31g9SB/6qgQ==";
-      };
-    }
-    {
-      name = "react_notification___react_notification_6.8.5.tgz";
-      path = fetchurl {
-        name = "react_notification___react_notification_6.8.5.tgz";
-        url  = "https://registry.yarnpkg.com/react-notification/-/react-notification-6.8.5.tgz";
-        sha512 = "3pJPhSsWNYizpyeMeWuC+jVthqE9WKqQ6rHq2naiiP4fLGN4irwL2Xp2Q8Qn7agW/e4BIDxarab6fJOUp1cKUw==";
-      };
-    }
-    {
-      name = "react_overlays___react_overlays_0.9.3.tgz";
-      path = fetchurl {
-        name = "react_overlays___react_overlays_0.9.3.tgz";
-        url  = "https://registry.yarnpkg.com/react-overlays/-/react-overlays-0.9.3.tgz";
-        sha512 = "u2T7nOLnK+Hrntho4p0Nxh+BsJl0bl4Xuwj/Y0a56xywLMetgAfyjnDVrudLXsNcKGaspoC+t3C1V80W9QQTdQ==";
-      };
-    }
-    {
-      name = "react_redux_loading_bar___react_redux_loading_bar_4.0.8.tgz";
-      path = fetchurl {
-        name = "react_redux_loading_bar___react_redux_loading_bar_4.0.8.tgz";
-        url  = "https://registry.yarnpkg.com/react-redux-loading-bar/-/react-redux-loading-bar-4.0.8.tgz";
-        sha512 = "BpR1tlYrYKFtGhxa7nAKc0dpcV33ZgXJ/jKNLpDDaxu2/cCxbkWQt9YlWT+VLw1x/7qyNYY4DH48bZdtmciSpg==";
-      };
-    }
-    {
-      name = "react_redux___react_redux_7.2.4.tgz";
-      path = fetchurl {
-        name = "react_redux___react_redux_7.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/react-redux/-/react-redux-7.2.4.tgz";
-        sha512 = "hOQ5eOSkEJEXdpIKbnRyl04LhaWabkDPV+Ix97wqQX3T3d2NQ8DUblNXXtNMavc7DpswyQM6xfaN4HQDKNY2JA==";
-      };
-    }
-    {
-      name = "react_router_dom___react_router_dom_4.3.1.tgz";
-      path = fetchurl {
-        name = "react_router_dom___react_router_dom_4.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-4.3.1.tgz";
-        sha512 = "c/MlywfxDdCp7EnB7YfPMOfMD3tOtIjrQlj/CKfNMBxdmpJP8xcz5P/UAFn3JbnQCNUxsHyVVqllF9LhgVyFCA==";
-      };
-    }
-    {
-      name = "react_router_scroll_4___react_router_scroll_4_1.0.0_beta.2.tgz";
-      path = fetchurl {
-        name = "react_router_scroll_4___react_router_scroll_4_1.0.0_beta.2.tgz";
-        url  = "https://registry.yarnpkg.com/react-router-scroll-4/-/react-router-scroll-4-1.0.0-beta.2.tgz";
-        sha512 = "K67Dnm75naSBs/WYc2CDNxqU+eE8iA3I0wSCArgGSHb0xR/7AUcgUEXtCxrQYVTogXvjVK60gmwYvOyRQ6fuBA==";
-      };
-    }
-    {
-      name = "react_router___react_router_4.3.1.tgz";
-      path = fetchurl {
-        name = "react_router___react_router_4.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/react-router/-/react-router-4.3.1.tgz";
-        sha512 = "yrvL8AogDh2X42Dt9iknk4wF4V8bWREPirFfS9gLU1huk6qK41sg7Z/1S81jjTrGHxa3B8R3J6xIkDAA6CVarg==";
-      };
-    }
-    {
-      name = "react_select___react_select_4.3.1.tgz";
-      path = fetchurl {
-        name = "react_select___react_select_4.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/react-select/-/react-select-4.3.1.tgz";
-        sha512 = "HBBd0dYwkF5aZk1zP81Wx5UsLIIT2lSvAY2JiJo199LjoLHoivjn9//KsmvQMEFGNhe58xyuOITjfxKCcGc62Q==";
-      };
-    }
-    {
-      name = "react_sparklines___react_sparklines_1.7.0.tgz";
-      path = fetchurl {
-        name = "react_sparklines___react_sparklines_1.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-sparklines/-/react-sparklines-1.7.0.tgz";
-        sha512 = "bJFt9K4c5Z0k44G8KtxIhbG+iyxrKjBZhdW6afP+R7EnIq+iKjbWbEFISrf3WKNFsda+C46XAfnX0StS5fbDcg==";
-      };
-    }
-    {
-      name = "react_swipeable_views_core___react_swipeable_views_core_0.14.0.tgz";
-      path = fetchurl {
-        name = "react_swipeable_views_core___react_swipeable_views_core_0.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-swipeable-views-core/-/react-swipeable-views-core-0.14.0.tgz";
-        sha512 = "0W/e9uPweNEOSPjmYtuKSC/SvKKg1sfo+WtPdnxeLF3t2L82h7jjszuOHz9C23fzkvLfdgkaOmcbAxE9w2GEjA==";
-      };
-    }
-    {
-      name = "react_swipeable_views_utils___react_swipeable_views_utils_0.14.0.tgz";
-      path = fetchurl {
-        name = "react_swipeable_views_utils___react_swipeable_views_utils_0.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-swipeable-views-utils/-/react-swipeable-views-utils-0.14.0.tgz";
-        sha512 = "W+fXBOsDqgFK1/g7MzRMVcDurp3LqO3ksC8UgInh2P/tKgb5DusuuB1geKHFc6o1wKl+4oyER4Zh3Lxmr8xbXA==";
-      };
-    }
-    {
-      name = "react_swipeable_views___react_swipeable_views_0.14.0.tgz";
-      path = fetchurl {
-        name = "react_swipeable_views___react_swipeable_views_0.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-swipeable-views/-/react-swipeable-views-0.14.0.tgz";
-        sha512 = "wrTT6bi2nC3JbmyNAsPXffUXLn0DVT9SbbcFr36gKpbaCgEp7rX/OFxsu5hPc/NBsUhHyoSRGvwqJNNrWTwCww==";
-      };
-    }
-    {
-      name = "react_test_renderer___react_test_renderer_16.14.0.tgz";
-      path = fetchurl {
-        name = "react_test_renderer___react_test_renderer_16.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.14.0.tgz";
-        sha512 = "L8yPjqPE5CZO6rKsKXRO/rVPiaCOy0tQQJbC+UjPNlobl5mad59lvPjwFsQHTvL03caVDIVr9x9/OSgDe6I5Eg==";
-      };
-    }
-    {
-      name = "react_textarea_autosize___react_textarea_autosize_8.3.2.tgz";
-      path = fetchurl {
-        name = "react_textarea_autosize___react_textarea_autosize_8.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/react-textarea-autosize/-/react-textarea-autosize-8.3.2.tgz";
-        sha512 = "JrMWVgQSaExQByP3ggI1eA8zF4mF0+ddVuX7acUeK2V7bmrpjVOY72vmLz2IXFJSAXoY3D80nEzrn0GWajWK3Q==";
-      };
-    }
-    {
-      name = "react_toggle___react_toggle_4.1.2.tgz";
-      path = fetchurl {
-        name = "react_toggle___react_toggle_4.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/react-toggle/-/react-toggle-4.1.2.tgz";
-        sha512 = "4Ohw31TuYQdhWfA6qlKafeXx3IOH7t4ZHhmRdwsm1fQREwOBGxJT+I22sgHqR/w8JRdk+AeMCJXPImEFSrNXow==";
-      };
-    }
-    {
-      name = "react_transition_group___react_transition_group_2.9.0.tgz";
-      path = fetchurl {
-        name = "react_transition_group___react_transition_group_2.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-2.9.0.tgz";
-        sha512 = "+HzNTCHpeQyl4MJ/bdE0u6XRMe9+XG/+aL4mCxVN4DnPBQ0/5bfHWPDuOZUzYdMj94daZaZdCCc1Dzt9R/xSSg==";
-      };
-    }
-    {
-      name = "react_transition_group___react_transition_group_4.3.0.tgz";
-      path = fetchurl {
-        name = "react_transition_group___react_transition_group_4.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.3.0.tgz";
-        sha512 = "1qRV1ZuVSdxPlPf4O8t7inxUGpdyO5zG9IoNfJxSO0ImU2A1YWkEQvFPuIPZmMLkg5hYs7vv5mMOyfgSkvAwvw==";
-      };
-    }
-    {
-      name = "react___react_16.14.0.tgz";
-      path = fetchurl {
-        name = "react___react_16.14.0.tgz";
-        url  = "https://registry.yarnpkg.com/react/-/react-16.14.0.tgz";
-        sha512 = "0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==";
-      };
-    }
-    {
-      name = "read_pkg_up___read_pkg_up_3.0.0.tgz";
-      path = fetchurl {
-        name = "read_pkg_up___read_pkg_up_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz";
-        sha1 = "PtSWaF26D4/hGNBpHcUfSh/5bwc=";
-      };
-    }
-    {
-      name = "read_pkg_up___read_pkg_up_7.0.1.tgz";
-      path = fetchurl {
-        name = "read_pkg_up___read_pkg_up_7.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz";
-        sha512 = "zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==";
-      };
-    }
-    {
-      name = "read_pkg___read_pkg_3.0.0.tgz";
-      path = fetchurl {
-        name = "read_pkg___read_pkg_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz";
-        sha1 = "nLxoaXj+5l0WwA4rGcI3/Pbjg4k=";
-      };
-    }
-    {
-      name = "read_pkg___read_pkg_5.2.0.tgz";
-      path = fetchurl {
-        name = "read_pkg___read_pkg_5.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz";
-        sha512 = "Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==";
-      };
-    }
-    {
-      name = "readable_stream___readable_stream_2.3.7.tgz";
-      path = fetchurl {
-        name = "readable_stream___readable_stream_2.3.7.tgz";
-        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz";
-        sha512 = "Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==";
-      };
-    }
-    {
-      name = "readable_stream___readable_stream_3.6.0.tgz";
-      path = fetchurl {
-        name = "readable_stream___readable_stream_3.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz";
-        sha512 = "BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==";
-      };
-    }
-    {
-      name = "readdirp___readdirp_2.2.1.tgz";
-      path = fetchurl {
-        name = "readdirp___readdirp_2.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz";
-        sha512 = "1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==";
-      };
-    }
-    {
-      name = "readdirp___readdirp_3.5.0.tgz";
-      path = fetchurl {
-        name = "readdirp___readdirp_3.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz";
-        sha512 = "cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==";
-      };
-    }
-    {
-      name = "readline2___readline2_1.0.1.tgz";
-      path = fetchurl {
-        name = "readline2___readline2_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/readline2/-/readline2-1.0.1.tgz";
-        sha1 = "QQWWCP/BVHV7cV2ZidGZ/783LjU=";
-      };
-    }
-    {
-      name = "redent___redent_3.0.0.tgz";
-      path = fetchurl {
-        name = "redent___redent_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz";
-        sha512 = "6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==";
-      };
-    }
-    {
-      name = "redis_commands___redis_commands_1.7.0.tgz";
-      path = fetchurl {
-        name = "redis_commands___redis_commands_1.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/redis-commands/-/redis-commands-1.7.0.tgz";
-        sha512 = "nJWqw3bTFy21hX/CPKHth6sfhZbdiHP6bTawSgQBlKOVRG7EZkfHbbHwQJnrE4vsQf0CMNE+3gJ4Fmm16vdVlQ==";
-      };
-    }
-    {
-      name = "redis_errors___redis_errors_1.2.0.tgz";
-      path = fetchurl {
-        name = "redis_errors___redis_errors_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/redis-errors/-/redis-errors-1.2.0.tgz";
-        sha1 = "62LSrbFeTq9GEMBK/hUpOEJQq60=";
-      };
-    }
-    {
-      name = "redis_parser___redis_parser_3.0.0.tgz";
-      path = fetchurl {
-        name = "redis_parser___redis_parser_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/redis-parser/-/redis-parser-3.0.0.tgz";
-        sha1 = "tm2CjNyv5rS4pCin3vTGvKwxyLQ=";
-      };
-    }
-    {
-      name = "redis___redis_3.1.2.tgz";
-      path = fetchurl {
-        name = "redis___redis_3.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/redis/-/redis-3.1.2.tgz";
-        sha512 = "grn5KoZLr/qrRQVwoSkmzdbw6pwF+/rwODtrOr6vuBRiR/f3rjSTGupbF90Zpqm2oenix8Do6RV7pYEkGwlKkw==";
-      };
-    }
-    {
-      name = "redux_immutable___redux_immutable_4.0.0.tgz";
-      path = fetchurl {
-        name = "redux_immutable___redux_immutable_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/redux-immutable/-/redux-immutable-4.0.0.tgz";
-        sha1 = "Ohoy32Y2ZGK2NpHw4dw15HK7yfM=";
-      };
-    }
-    {
-      name = "redux_thunk___redux_thunk_2.3.0.tgz";
-      path = fetchurl {
-        name = "redux_thunk___redux_thunk_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/redux-thunk/-/redux-thunk-2.3.0.tgz";
-        sha512 = "km6dclyFnmcvxhAcrQV2AkZmPQjzPDjgVlQtR0EQjxZPyJ0BnMf3in1ryuR8A2qU0HldVRfxYXbFSKlI3N7Slw==";
-      };
-    }
-    {
-      name = "redux___redux_4.1.0.tgz";
-      path = fetchurl {
-        name = "redux___redux_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/redux/-/redux-4.1.0.tgz";
-        sha512 = "uI2dQN43zqLWCt6B/BMGRMY6db7TTY4qeHHfGeKb3EOhmOKjU3KdWvNLJyqaHRksv/ErdNH7cFZWg9jXtewy4g==";
-      };
-    }
-    {
-      name = "regenerate_unicode_properties___regenerate_unicode_properties_8.2.0.tgz";
-      path = fetchurl {
-        name = "regenerate_unicode_properties___regenerate_unicode_properties_8.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz";
-        sha512 = "F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==";
-      };
-    }
-    {
-      name = "regenerate___regenerate_1.4.1.tgz";
-      path = fetchurl {
-        name = "regenerate___regenerate_1.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.1.tgz";
-        sha512 = "j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A==";
-      };
-    }
-    {
-      name = "regenerator_runtime___regenerator_runtime_0.11.1.tgz";
-      path = fetchurl {
-        name = "regenerator_runtime___regenerator_runtime_0.11.1.tgz";
-        url  = "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz";
-        sha512 = "MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==";
-      };
-    }
-    {
-      name = "regenerator_runtime___regenerator_runtime_0.12.1.tgz";
-      path = fetchurl {
-        name = "regenerator_runtime___regenerator_runtime_0.12.1.tgz";
-        url  = "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz";
-        sha512 = "odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg==";
-      };
-    }
-    {
-      name = "regenerator_runtime___regenerator_runtime_0.13.7.tgz";
-      path = fetchurl {
-        name = "regenerator_runtime___regenerator_runtime_0.13.7.tgz";
-        url  = "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz";
-        sha512 = "a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==";
-      };
-    }
-    {
-      name = "regenerator_transform___regenerator_transform_0.14.5.tgz";
-      path = fetchurl {
-        name = "regenerator_transform___regenerator_transform_0.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.5.tgz";
-        sha512 = "eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==";
-      };
-    }
-    {
-      name = "regex_not___regex_not_1.0.2.tgz";
-      path = fetchurl {
-        name = "regex_not___regex_not_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz";
-        sha512 = "J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==";
-      };
-    }
-    {
-      name = "regexp.prototype.flags___regexp.prototype.flags_1.3.0.tgz";
-      path = fetchurl {
-        name = "regexp.prototype.flags___regexp.prototype.flags_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz";
-        sha512 = "2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==";
-      };
-    }
-    {
-      name = "regexp.prototype.flags___regexp.prototype.flags_1.3.1.tgz";
-      path = fetchurl {
-        name = "regexp.prototype.flags___regexp.prototype.flags_1.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz";
-        sha512 = "JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==";
-      };
-    }
-    {
-      name = "regexpp___regexpp_3.1.0.tgz";
-      path = fetchurl {
-        name = "regexpp___regexpp_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz";
-        sha512 = "ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==";
-      };
-    }
-    {
-      name = "regexpu_core___regexpu_core_4.7.1.tgz";
-      path = fetchurl {
-        name = "regexpu_core___regexpu_core_4.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.1.tgz";
-        sha512 = "ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==";
-      };
-    }
-    {
-      name = "regjsgen___regjsgen_0.5.2.tgz";
-      path = fetchurl {
-        name = "regjsgen___regjsgen_0.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.2.tgz";
-        sha512 = "OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==";
-      };
-    }
-    {
-      name = "regjsparser___regjsparser_0.6.4.tgz";
-      path = fetchurl {
-        name = "regjsparser___regjsparser_0.6.4.tgz";
-        url  = "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.4.tgz";
-        sha512 = "64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==";
-      };
-    }
-    {
-      name = "rellax___rellax_1.12.1.tgz";
-      path = fetchurl {
-        name = "rellax___rellax_1.12.1.tgz";
-        url  = "https://registry.yarnpkg.com/rellax/-/rellax-1.12.1.tgz";
-        sha512 = "XBIi0CDpW5FLTujYjYBn1CIbK2CJL6TsAg/w409KghP2LucjjzBjsujXDAjyBLWgsfupfUcL5WzdnIPcGfK7XA==";
-      };
-    }
-    {
-      name = "remove_trailing_separator___remove_trailing_separator_1.1.0.tgz";
-      path = fetchurl {
-        name = "remove_trailing_separator___remove_trailing_separator_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz";
-        sha1 = "wkvOKig62tW8P1jg1IJJuSN52O8=";
-      };
-    }
-    {
-      name = "repeat_element___repeat_element_1.1.3.tgz";
-      path = fetchurl {
-        name = "repeat_element___repeat_element_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz";
-        sha512 = "ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==";
-      };
-    }
-    {
-      name = "repeat_string___repeat_string_1.6.1.tgz";
-      path = fetchurl {
-        name = "repeat_string___repeat_string_1.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz";
-        sha1 = "jcrkcOHIirwtYA//Sndihtp15jc=";
-      };
-    }
-    {
-      name = "request_promise_core___request_promise_core_1.1.4.tgz";
-      path = fetchurl {
-        name = "request_promise_core___request_promise_core_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.4.tgz";
-        sha512 = "TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==";
-      };
-    }
-    {
-      name = "request_promise_native___request_promise_native_1.0.9.tgz";
-      path = fetchurl {
-        name = "request_promise_native___request_promise_native_1.0.9.tgz";
-        url  = "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.9.tgz";
-        sha512 = "wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==";
-      };
-    }
-    {
-      name = "request___request_2.88.2.tgz";
-      path = fetchurl {
-        name = "request___request_2.88.2.tgz";
-        url  = "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz";
-        sha512 = "MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==";
-      };
-    }
-    {
-      name = "requestidlecallback___requestidlecallback_0.3.0.tgz";
-      path = fetchurl {
-        name = "requestidlecallback___requestidlecallback_0.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/requestidlecallback/-/requestidlecallback-0.3.0.tgz";
-        sha1 = "b7dOBzP5DfP6pIOPn2oqX5t0KsU=";
-      };
-    }
-    {
-      name = "require_directory___require_directory_2.1.1.tgz";
-      path = fetchurl {
-        name = "require_directory___require_directory_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz";
-        sha1 = "jGStX9MNqxyXbiNE/+f3kqam30I=";
-      };
-    }
-    {
-      name = "require_from_string___require_from_string_2.0.2.tgz";
-      path = fetchurl {
-        name = "require_from_string___require_from_string_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz";
-        sha512 = "Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==";
-      };
-    }
-    {
-      name = "require_main_filename___require_main_filename_2.0.0.tgz";
-      path = fetchurl {
-        name = "require_main_filename___require_main_filename_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz";
-        sha512 = "NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==";
-      };
-    }
-    {
-      name = "require_package_name___require_package_name_2.0.1.tgz";
-      path = fetchurl {
-        name = "require_package_name___require_package_name_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/require-package-name/-/require-package-name-2.0.1.tgz";
-        sha1 = "wR6XJ2tluOKSP3Xav1+y7ww4Qbk=";
-      };
-    }
-    {
-      name = "require_uncached___require_uncached_1.0.3.tgz";
-      path = fetchurl {
-        name = "require_uncached___require_uncached_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz";
-        sha1 = "Tg1W1slmL9MeQwEcS5WqSZVUIdM=";
-      };
-    }
-    {
-      name = "requires_port___requires_port_1.0.0.tgz";
-      path = fetchurl {
-        name = "requires_port___requires_port_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz";
-        sha1 = "kl0mAdOaxIXgkc8NpcbmlNw9yv8=";
-      };
-    }
-    {
-      name = "reselect___reselect_4.0.0.tgz";
-      path = fetchurl {
-        name = "reselect___reselect_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/reselect/-/reselect-4.0.0.tgz";
-        sha512 = "qUgANli03jjAyGlnbYVAV5vvnOmJnODyABz51RdBN7M4WaVu8mecZWgyQNkG8Yqe3KRGRt0l4K4B3XVEULC4CA==";
-      };
-    }
-    {
-      name = "resolve_cwd___resolve_cwd_2.0.0.tgz";
-      path = fetchurl {
-        name = "resolve_cwd___resolve_cwd_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz";
-        sha1 = "AKn3OHVW4nA46uIyyqNypqWbZlo=";
-      };
-    }
-    {
-      name = "resolve_cwd___resolve_cwd_3.0.0.tgz";
-      path = fetchurl {
-        name = "resolve_cwd___resolve_cwd_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz";
-        sha512 = "OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==";
-      };
-    }
-    {
-      name = "resolve_dir___resolve_dir_1.0.1.tgz";
-      path = fetchurl {
-        name = "resolve_dir___resolve_dir_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz";
-        sha1 = "eaQGRMNivoLybv/nOcm7U4IEb0M=";
-      };
-    }
-    {
-      name = "resolve_from___resolve_from_1.0.1.tgz";
-      path = fetchurl {
-        name = "resolve_from___resolve_from_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz";
-        sha1 = "Jsv+k10a7uq7Kbw/5a6wHpPUQiY=";
-      };
-    }
-    {
-      name = "resolve_from___resolve_from_3.0.0.tgz";
-      path = fetchurl {
-        name = "resolve_from___resolve_from_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz";
-        sha1 = "six699nWiBvItuZTM17rywoYh0g=";
-      };
-    }
-    {
-      name = "resolve_from___resolve_from_4.0.0.tgz";
-      path = fetchurl {
-        name = "resolve_from___resolve_from_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz";
-        sha512 = "pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==";
-      };
-    }
-    {
-      name = "resolve_from___resolve_from_5.0.0.tgz";
-      path = fetchurl {
-        name = "resolve_from___resolve_from_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz";
-        sha512 = "qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==";
-      };
-    }
-    {
-      name = "resolve_pathname___resolve_pathname_2.2.0.tgz";
-      path = fetchurl {
-        name = "resolve_pathname___resolve_pathname_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-2.2.0.tgz";
-        sha512 = "bAFz9ld18RzJfddgrO2e/0S2O81710++chRMUxHjXOYKF6jTAMrUNZrEZ1PvV0zlhfjidm08iRPdTLPno1FuRg==";
-      };
-    }
-    {
-      name = "resolve_pathname___resolve_pathname_3.0.0.tgz";
-      path = fetchurl {
-        name = "resolve_pathname___resolve_pathname_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-3.0.0.tgz";
-        sha512 = "C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==";
-      };
-    }
-    {
-      name = "resolve_url___resolve_url_0.2.1.tgz";
-      path = fetchurl {
-        name = "resolve_url___resolve_url_0.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz";
-        sha1 = "LGN/53yJOv0qZj/iGqkIAGjiBSo=";
-      };
-    }
-    {
-      name = "resolve___resolve_1.20.0.tgz";
-      path = fetchurl {
-        name = "resolve___resolve_1.20.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz";
-        sha512 = "wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==";
-      };
-    }
-    {
-      name = "resolve___resolve_2.0.0_next.3.tgz";
-      path = fetchurl {
-        name = "resolve___resolve_2.0.0_next.3.tgz";
-        url  = "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.3.tgz";
-        sha512 = "W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==";
-      };
-    }
-    {
-      name = "restore_cursor___restore_cursor_1.0.1.tgz";
-      path = fetchurl {
-        name = "restore_cursor___restore_cursor_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz";
-        sha1 = "NGYfRohjJ/7SmRR5FSJS35LapUE=";
-      };
-    }
-    {
-      name = "ret___ret_0.1.15.tgz";
-      path = fetchurl {
-        name = "ret___ret_0.1.15.tgz";
-        url  = "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz";
-        sha512 = "TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==";
-      };
-    }
-    {
-      name = "retry___retry_0.12.0.tgz";
-      path = fetchurl {
-        name = "retry___retry_0.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz";
-        sha1 = "G0KmJmoh8HQh0bC1S33BZ7AcATs=";
-      };
-    }
-    {
-      name = "rgb_regex___rgb_regex_1.0.1.tgz";
-      path = fetchurl {
-        name = "rgb_regex___rgb_regex_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz";
-        sha1 = "wODWiC3w4jviVKR16O3UGRX+rrE=";
-      };
-    }
-    {
-      name = "rgba_regex___rgba_regex_1.0.0.tgz";
-      path = fetchurl {
-        name = "rgba_regex___rgba_regex_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz";
-        sha1 = "QzdOLiyglosO8VI0YLfXMP8i7rM=";
-      };
-    }
-    {
-      name = "rimraf___rimraf_2.7.1.tgz";
-      path = fetchurl {
-        name = "rimraf___rimraf_2.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz";
-        sha512 = "uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==";
-      };
-    }
-    {
-      name = "rimraf___rimraf_3.0.2.tgz";
-      path = fetchurl {
-        name = "rimraf___rimraf_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz";
-        sha512 = "JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==";
-      };
-    }
-    {
-      name = "rimraf___rimraf_2.6.3.tgz";
-      path = fetchurl {
-        name = "rimraf___rimraf_2.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz";
-        sha512 = "mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==";
-      };
-    }
-    {
-      name = "ripemd160___ripemd160_2.0.2.tgz";
-      path = fetchurl {
-        name = "ripemd160___ripemd160_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz";
-        sha512 = "ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==";
-      };
-    }
-    {
-      name = "rsvp___rsvp_4.8.5.tgz";
-      path = fetchurl {
-        name = "rsvp___rsvp_4.8.5.tgz";
-        url  = "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz";
-        sha512 = "nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==";
-      };
-    }
-    {
-      name = "run_async___run_async_0.1.0.tgz";
-      path = fetchurl {
-        name = "run_async___run_async_0.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/run-async/-/run-async-0.1.0.tgz";
-        sha1 = "yK1KXhEGYeQCp9IbUw4AnyX444k=";
-      };
-    }
-    {
-      name = "run_queue___run_queue_1.0.3.tgz";
-      path = fetchurl {
-        name = "run_queue___run_queue_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz";
-        sha1 = "6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=";
-      };
-    }
-    {
-      name = "rx_lite___rx_lite_3.1.2.tgz";
-      path = fetchurl {
-        name = "rx_lite___rx_lite_3.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz";
-        sha1 = "Gc5QLKVyZl87ZHsQk5+X/RYV8QI=";
-      };
-    }
-    {
-      name = "safe_buffer___safe_buffer_5.1.2.tgz";
-      path = fetchurl {
-        name = "safe_buffer___safe_buffer_5.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz";
-        sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==";
-      };
-    }
-    {
-      name = "safe_buffer___safe_buffer_5.2.1.tgz";
-      path = fetchurl {
-        name = "safe_buffer___safe_buffer_5.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz";
-        sha512 = "rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==";
-      };
-    }
-    {
-      name = "safe_regex___safe_regex_1.1.0.tgz";
-      path = fetchurl {
-        name = "safe_regex___safe_regex_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz";
-        sha1 = "QKNmnzsHfR6UPURinhV91IAjvy4=";
-      };
-    }
-    {
-      name = "safer_buffer___safer_buffer_2.1.2.tgz";
-      path = fetchurl {
-        name = "safer_buffer___safer_buffer_2.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz";
-        sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
-      };
-    }
-    {
-      name = "sane___sane_4.1.0.tgz";
-      path = fetchurl {
-        name = "sane___sane_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz";
-        sha512 = "hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==";
-      };
-    }
-    {
-      name = "sass_lint___sass_lint_1.13.1.tgz";
-      path = fetchurl {
-        name = "sass_lint___sass_lint_1.13.1.tgz";
-        url  = "https://registry.yarnpkg.com/sass-lint/-/sass-lint-1.13.1.tgz";
-        sha512 = "DSyah8/MyjzW2BWYmQWekYEKir44BpLqrCFsgs9iaWiVTcwZfwXHF586hh3D1n+/9ihUNMfd8iHAyb9KkGgs7Q==";
-      };
-    }
-    {
-      name = "sass_loader___sass_loader_10.2.0.tgz";
-      path = fetchurl {
-        name = "sass_loader___sass_loader_10.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/sass-loader/-/sass-loader-10.2.0.tgz";
-        sha512 = "kUceLzC1gIHz0zNJPpqRsJyisWatGYNFRmv2CKZK2/ngMJgLqxTbXwe/hJ85luyvZkgqU3VlJ33UVF2T/0g6mw==";
-      };
-    }
-    {
-      name = "sass___sass_1.34.0.tgz";
-      path = fetchurl {
-        name = "sass___sass_1.34.0.tgz";
-        url  = "https://registry.yarnpkg.com/sass/-/sass-1.34.0.tgz";
-        sha512 = "rHEN0BscqjUYuomUEaqq3BMgsXqQfkcMVR7UhscsAVub0/spUrZGBMxQXFS2kfiDsPLZw5yuU9iJEFNC2x38Qw==";
-      };
-    }
-    {
-      name = "sax___sax_1.2.4.tgz";
-      path = fetchurl {
-        name = "sax___sax_1.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz";
-        sha512 = "NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==";
-      };
-    }
-    {
-      name = "saxes___saxes_5.0.1.tgz";
-      path = fetchurl {
-        name = "saxes___saxes_5.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz";
-        sha512 = "5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==";
-      };
-    }
-    {
-      name = "scheduler___scheduler_0.19.1.tgz";
-      path = fetchurl {
-        name = "scheduler___scheduler_0.19.1.tgz";
-        url  = "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz";
-        sha512 = "n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==";
-      };
-    }
-    {
-      name = "schema_utils___schema_utils_1.0.0.tgz";
-      path = fetchurl {
-        name = "schema_utils___schema_utils_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz";
-        sha512 = "i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==";
-      };
-    }
-    {
-      name = "schema_utils___schema_utils_2.7.1.tgz";
-      path = fetchurl {
-        name = "schema_utils___schema_utils_2.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz";
-        sha512 = "SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==";
-      };
-    }
-    {
-      name = "schema_utils___schema_utils_3.0.0.tgz";
-      path = fetchurl {
-        name = "schema_utils___schema_utils_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz";
-        sha512 = "6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==";
-      };
-    }
-    {
-      name = "scroll_behavior___scroll_behavior_0.9.12.tgz";
-      path = fetchurl {
-        name = "scroll_behavior___scroll_behavior_0.9.12.tgz";
-        url  = "https://registry.yarnpkg.com/scroll-behavior/-/scroll-behavior-0.9.12.tgz";
-        sha512 = "18sirtyq1P/VsBX6O/vgw20Np+ngduFXEMO4/NDFXabdOKBL2kjPVUpz1y0+jm99EWwFJafxf5/tCyMeXt9Xyg==";
-      };
-    }
-    {
-      name = "select_hose___select_hose_2.0.0.tgz";
-      path = fetchurl {
-        name = "select_hose___select_hose_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz";
-        sha1 = "Yl2GWPhlr0Psliv8N2o3NZpJlMo=";
-      };
-    }
-    {
-      name = "selfsigned___selfsigned_1.10.8.tgz";
-      path = fetchurl {
-        name = "selfsigned___selfsigned_1.10.8.tgz";
-        url  = "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.8.tgz";
-        sha512 = "2P4PtieJeEwVgTU9QEcwIRDQ/mXJLX8/+I3ur+Pg16nS8oNbrGxEso9NyYWy8NAmXiNl4dlAp5MwoNeCWzON4w==";
-      };
-    }
-    {
-      name = "semver___semver_5.7.1.tgz";
-      path = fetchurl {
-        name = "semver___semver_5.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz";
-        sha512 = "sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==";
-      };
-    }
-    {
-      name = "semver___semver_7.0.0.tgz";
-      path = fetchurl {
-        name = "semver___semver_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz";
-        sha512 = "+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==";
-      };
-    }
-    {
-      name = "semver___semver_6.3.0.tgz";
-      path = fetchurl {
-        name = "semver___semver_6.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz";
-        sha512 = "b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==";
-      };
-    }
-    {
-      name = "semver___semver_7.3.5.tgz";
-      path = fetchurl {
-        name = "semver___semver_7.3.5.tgz";
-        url  = "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz";
-        sha512 = "PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==";
-      };
-    }
-    {
-      name = "send___send_0.17.1.tgz";
-      path = fetchurl {
-        name = "send___send_0.17.1.tgz";
-        url  = "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz";
-        sha512 = "BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==";
-      };
-    }
-    {
-      name = "serialize_javascript___serialize_javascript_2.1.2.tgz";
-      path = fetchurl {
-        name = "serialize_javascript___serialize_javascript_2.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz";
-        sha512 = "rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==";
-      };
-    }
-    {
-      name = "serialize_javascript___serialize_javascript_5.0.1.tgz";
-      path = fetchurl {
-        name = "serialize_javascript___serialize_javascript_5.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz";
-        sha512 = "SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==";
-      };
-    }
-    {
-      name = "serve_index___serve_index_1.9.1.tgz";
-      path = fetchurl {
-        name = "serve_index___serve_index_1.9.1.tgz";
-        url  = "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz";
-        sha1 = "03aNabHn2C5c4FD/9bRTvqEqkjk=";
-      };
-    }
-    {
-      name = "serve_static___serve_static_1.14.1.tgz";
-      path = fetchurl {
-        name = "serve_static___serve_static_1.14.1.tgz";
-        url  = "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz";
-        sha512 = "JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==";
-      };
-    }
-    {
-      name = "set_blocking___set_blocking_2.0.0.tgz";
-      path = fetchurl {
-        name = "set_blocking___set_blocking_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz";
-        sha1 = "BF+XgtARrppoA93TgrJDkrPYkPc=";
-      };
-    }
-    {
-      name = "set_value___set_value_2.0.1.tgz";
-      path = fetchurl {
-        name = "set_value___set_value_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz";
-        sha512 = "JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==";
-      };
-    }
-    {
-      name = "setimmediate___setimmediate_1.0.5.tgz";
-      path = fetchurl {
-        name = "setimmediate___setimmediate_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz";
-        sha1 = "KQy7Iy4waULX1+qbg3Mqt4VvgoU=";
-      };
-    }
-    {
-      name = "setprototypeof___setprototypeof_1.1.0.tgz";
-      path = fetchurl {
-        name = "setprototypeof___setprototypeof_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz";
-        sha512 = "BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==";
-      };
-    }
-    {
-      name = "setprototypeof___setprototypeof_1.1.1.tgz";
-      path = fetchurl {
-        name = "setprototypeof___setprototypeof_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz";
-        sha512 = "JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==";
-      };
-    }
-    {
-      name = "sha.js___sha.js_2.4.11.tgz";
-      path = fetchurl {
-        name = "sha.js___sha.js_2.4.11.tgz";
-        url  = "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz";
-        sha512 = "QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==";
-      };
-    }
-    {
-      name = "shallow_clone___shallow_clone_3.0.1.tgz";
-      path = fetchurl {
-        name = "shallow_clone___shallow_clone_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz";
-        sha512 = "/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==";
-      };
-    }
-    {
-      name = "shallow_equal___shallow_equal_1.2.1.tgz";
-      path = fetchurl {
-        name = "shallow_equal___shallow_equal_1.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/shallow-equal/-/shallow-equal-1.2.1.tgz";
-        sha512 = "S4vJDjHHMBaiZuT9NPb616CSmLf618jawtv3sufLl6ivK8WocjAo58cXwbRV1cgqxH0Qbv+iUt6m05eqEa2IRA==";
-      };
-    }
-    {
-      name = "shebang_command___shebang_command_1.2.0.tgz";
-      path = fetchurl {
-        name = "shebang_command___shebang_command_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz";
-        sha1 = "RKrGW2lbAzmJaMOfNj/uXer98eo=";
-      };
-    }
-    {
-      name = "shebang_command___shebang_command_2.0.0.tgz";
-      path = fetchurl {
-        name = "shebang_command___shebang_command_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz";
-        sha512 = "kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==";
-      };
-    }
-    {
-      name = "shebang_regex___shebang_regex_1.0.0.tgz";
-      path = fetchurl {
-        name = "shebang_regex___shebang_regex_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz";
-        sha1 = "2kL0l0DAtC2yypcoVxyxkMmO/qM=";
-      };
-    }
-    {
-      name = "shebang_regex___shebang_regex_3.0.0.tgz";
-      path = fetchurl {
-        name = "shebang_regex___shebang_regex_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz";
-        sha512 = "7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==";
-      };
-    }
-    {
-      name = "shelljs___shelljs_0.6.1.tgz";
-      path = fetchurl {
-        name = "shelljs___shelljs_0.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/shelljs/-/shelljs-0.6.1.tgz";
-        sha1 = "7GIRvtGSBEIIj+D3Cyg3Iy7SyKg=";
-      };
-    }
-    {
-      name = "shellwords___shellwords_0.1.1.tgz";
-      path = fetchurl {
-        name = "shellwords___shellwords_0.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz";
-        sha512 = "vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==";
-      };
-    }
-    {
-      name = "side_channel___side_channel_1.0.4.tgz";
-      path = fetchurl {
-        name = "side_channel___side_channel_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz";
-        sha512 = "q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==";
-      };
-    }
-    {
-      name = "signal_exit___signal_exit_3.0.3.tgz";
-      path = fetchurl {
-        name = "signal_exit___signal_exit_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz";
-        sha512 = "VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==";
-      };
-    }
-    {
-      name = "simple_swizzle___simple_swizzle_0.2.2.tgz";
-      path = fetchurl {
-        name = "simple_swizzle___simple_swizzle_0.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz";
-        sha1 = "pNprY1/8zMoz9w0Xy5JZLeleVXo=";
-      };
-    }
-    {
-      name = "sirv___sirv_1.0.10.tgz";
-      path = fetchurl {
-        name = "sirv___sirv_1.0.10.tgz";
-        url  = "https://registry.yarnpkg.com/sirv/-/sirv-1.0.10.tgz";
-        sha512 = "H5EZCoZaggEUQy8ocKsF7WAToGuZhjJlLvM3XOef46CbdIgbNeQ1p32N1PCuCjkVYwrAVOSMacN6CXXgIzuspg==";
-      };
-    }
-    {
-      name = "sisteransi___sisteransi_1.0.5.tgz";
-      path = fetchurl {
-        name = "sisteransi___sisteransi_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz";
-        sha512 = "bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==";
-      };
-    }
-    {
-      name = "slash___slash_1.0.0.tgz";
-      path = fetchurl {
-        name = "slash___slash_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz";
-        sha1 = "xB8vbDn8FtHNF61LXYlhFK5HDVU=";
-      };
-    }
-    {
-      name = "slash___slash_3.0.0.tgz";
-      path = fetchurl {
-        name = "slash___slash_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz";
-        sha512 = "g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==";
-      };
-    }
-    {
-      name = "slice_ansi___slice_ansi_0.0.4.tgz";
-      path = fetchurl {
-        name = "slice_ansi___slice_ansi_0.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz";
-        sha1 = "7b+JA/ZvfOL46v1s7tZeJkyDGzU=";
-      };
-    }
-    {
-      name = "slice_ansi___slice_ansi_4.0.0.tgz";
-      path = fetchurl {
-        name = "slice_ansi___slice_ansi_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz";
-        sha512 = "qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==";
-      };
-    }
-    {
-      name = "snapdragon_node___snapdragon_node_2.1.1.tgz";
-      path = fetchurl {
-        name = "snapdragon_node___snapdragon_node_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz";
-        sha512 = "O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==";
-      };
-    }
-    {
-      name = "snapdragon_util___snapdragon_util_3.0.1.tgz";
-      path = fetchurl {
-        name = "snapdragon_util___snapdragon_util_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz";
-        sha512 = "mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==";
-      };
-    }
-    {
-      name = "snapdragon___snapdragon_0.8.2.tgz";
-      path = fetchurl {
-        name = "snapdragon___snapdragon_0.8.2.tgz";
-        url  = "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz";
-        sha512 = "FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==";
-      };
-    }
-    {
-      name = "sockjs_client___sockjs_client_1.5.0.tgz";
-      path = fetchurl {
-        name = "sockjs_client___sockjs_client_1.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.5.0.tgz";
-        sha512 = "8Dt3BDi4FYNrCFGTL/HtwVzkARrENdwOUf1ZoW/9p3M8lZdFT35jVdrHza+qgxuG9H3/shR4cuX/X9umUrjP8Q==";
-      };
-    }
-    {
-      name = "sockjs___sockjs_0.3.21.tgz";
-      path = fetchurl {
-        name = "sockjs___sockjs_0.3.21.tgz";
-        url  = "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.21.tgz";
-        sha512 = "DhbPFGpxjc6Z3I+uX07Id5ZO2XwYsWOrYjaSeieES78cq+JaJvVe5q/m1uvjIQhXinhIeCFRH6JgXe+mvVMyXw==";
-      };
-    }
-    {
-      name = "source_list_map___source_list_map_2.0.1.tgz";
-      path = fetchurl {
-        name = "source_list_map___source_list_map_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz";
-        sha512 = "qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==";
-      };
-    }
-    {
-      name = "source_map_js___source_map_js_0.6.2.tgz";
-      path = fetchurl {
-        name = "source_map_js___source_map_js_0.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/source-map-js/-/source-map-js-0.6.2.tgz";
-        sha512 = "/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==";
-      };
-    }
-    {
-      name = "source_map_resolve___source_map_resolve_0.5.3.tgz";
-      path = fetchurl {
-        name = "source_map_resolve___source_map_resolve_0.5.3.tgz";
-        url  = "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz";
-        sha512 = "Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==";
-      };
-    }
-    {
-      name = "source_map_resolve___source_map_resolve_0.6.0.tgz";
-      path = fetchurl {
-        name = "source_map_resolve___source_map_resolve_0.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.6.0.tgz";
-        sha512 = "KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==";
-      };
-    }
-    {
-      name = "source_map_support___source_map_support_0.5.19.tgz";
-      path = fetchurl {
-        name = "source_map_support___source_map_support_0.5.19.tgz";
-        url  = "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz";
-        sha512 = "Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==";
-      };
-    }
-    {
-      name = "source_map_url___source_map_url_0.4.0.tgz";
-      path = fetchurl {
-        name = "source_map_url___source_map_url_0.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz";
-        sha1 = "PpNdfd1zYxuXZZlW1VEo6HtQhKM=";
-      };
-    }
-    {
-      name = "source_map___source_map_0.5.6.tgz";
-      path = fetchurl {
-        name = "source_map___source_map_0.5.6.tgz";
-        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz";
-        sha1 = "dc449SvwczxafwwRjYEzSiu19BI=";
-      };
-    }
-    {
-      name = "source_map___source_map_0.5.7.tgz";
-      path = fetchurl {
-        name = "source_map___source_map_0.5.7.tgz";
-        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz";
-        sha1 = "igOdLRAh0i0eoUyA2OpGi6LvP8w=";
-      };
-    }
-    {
-      name = "source_map___source_map_0.6.1.tgz";
-      path = fetchurl {
-        name = "source_map___source_map_0.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz";
-        sha512 = "UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==";
-      };
-    }
-    {
-      name = "source_map___source_map_0.7.3.tgz";
-      path = fetchurl {
-        name = "source_map___source_map_0.7.3.tgz";
-        url  = "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz";
-        sha512 = "CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==";
-      };
-    }
-    {
-      name = "spdx_correct___spdx_correct_3.1.1.tgz";
-      path = fetchurl {
-        name = "spdx_correct___spdx_correct_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz";
-        sha512 = "cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==";
-      };
-    }
-    {
-      name = "spdx_exceptions___spdx_exceptions_2.3.0.tgz";
-      path = fetchurl {
-        name = "spdx_exceptions___spdx_exceptions_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz";
-        sha512 = "/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==";
-      };
-    }
-    {
-      name = "spdx_expression_parse___spdx_expression_parse_3.0.1.tgz";
-      path = fetchurl {
-        name = "spdx_expression_parse___spdx_expression_parse_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz";
-        sha512 = "cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==";
-      };
-    }
-    {
-      name = "spdx_license_ids___spdx_license_ids_3.0.6.tgz";
-      path = fetchurl {
-        name = "spdx_license_ids___spdx_license_ids_3.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.6.tgz";
-        sha512 = "+orQK83kyMva3WyPf59k1+Y525csj5JejicWut55zeTWANuN17qSiSLUXWtzHeNWORSvT7GLDJ/E/XiIWoXBTw==";
-      };
-    }
-    {
-      name = "spdy_transport___spdy_transport_3.0.0.tgz";
-      path = fetchurl {
-        name = "spdy_transport___spdy_transport_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz";
-        sha512 = "hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==";
-      };
-    }
-    {
-      name = "spdy___spdy_4.0.2.tgz";
-      path = fetchurl {
-        name = "spdy___spdy_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/spdy/-/spdy-4.0.2.tgz";
-        sha512 = "r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==";
-      };
-    }
-    {
-      name = "split_string___split_string_3.1.0.tgz";
-      path = fetchurl {
-        name = "split_string___split_string_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz";
-        sha512 = "NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==";
-      };
-    }
-    {
-      name = "split2___split2_3.2.2.tgz";
-      path = fetchurl {
-        name = "split2___split2_3.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz";
-        sha512 = "9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==";
-      };
-    }
-    {
-      name = "sprintf_js___sprintf_js_1.0.3.tgz";
-      path = fetchurl {
-        name = "sprintf_js___sprintf_js_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz";
-        sha1 = "BOaSb2YolTVPPdAVIDYzuFcpfiw=";
-      };
-    }
-    {
-      name = "sshpk___sshpk_1.16.1.tgz";
-      path = fetchurl {
-        name = "sshpk___sshpk_1.16.1.tgz";
-        url  = "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz";
-        sha512 = "HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==";
-      };
-    }
-    {
-      name = "ssri___ssri_6.0.2.tgz";
-      path = fetchurl {
-        name = "ssri___ssri_6.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/ssri/-/ssri-6.0.2.tgz";
-        sha512 = "cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==";
-      };
-    }
-    {
-      name = "ssri___ssri_8.0.0.tgz";
-      path = fetchurl {
-        name = "ssri___ssri_8.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/ssri/-/ssri-8.0.0.tgz";
-        sha512 = "aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA==";
-      };
-    }
-    {
-      name = "stable___stable_0.1.8.tgz";
-      path = fetchurl {
-        name = "stable___stable_0.1.8.tgz";
-        url  = "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz";
-        sha512 = "ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==";
-      };
-    }
-    {
-      name = "stack_generator___stack_generator_2.0.5.tgz";
-      path = fetchurl {
-        name = "stack_generator___stack_generator_2.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/stack-generator/-/stack-generator-2.0.5.tgz";
-        sha512 = "/t1ebrbHkrLrDuNMdeAcsvynWgoH/i4o8EGGfX7dEYDoTXOYVAkEpFdtshlvabzc6JlJ8Kf9YdFEoz7JkzGN9Q==";
-      };
-    }
-    {
-      name = "stack_utils___stack_utils_2.0.2.tgz";
-      path = fetchurl {
-        name = "stack_utils___stack_utils_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.2.tgz";
-        sha512 = "0H7QK2ECz3fyZMzQ8rH0j2ykpfbnd20BFtfg/SqVC2+sCTtcw0aDTGB7dk+de4U4uUeuz6nOtJcrkFFLG1B0Rg==";
-      };
-    }
-    {
-      name = "stackframe___stackframe_1.2.0.tgz";
-      path = fetchurl {
-        name = "stackframe___stackframe_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/stackframe/-/stackframe-1.2.0.tgz";
-        sha512 = "GrdeshiRmS1YLMYgzF16olf2jJ/IzxXY9lhKOskuVziubpTYcYqyOwYeJKzQkwy7uN0fYSsbsC4RQaXf9LCrYA==";
-      };
-    }
-    {
-      name = "stacktrace_gps___stacktrace_gps_3.0.4.tgz";
-      path = fetchurl {
-        name = "stacktrace_gps___stacktrace_gps_3.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/stacktrace-gps/-/stacktrace-gps-3.0.4.tgz";
-        sha512 = "qIr8x41yZVSldqdqe6jciXEaSCKw1U8XTXpjDuy0ki/apyTn/r3w9hDAAQOhZdxvsC93H+WwwEu5cq5VemzYeg==";
-      };
-    }
-    {
-      name = "stacktrace_js___stacktrace_js_2.0.2.tgz";
-      path = fetchurl {
-        name = "stacktrace_js___stacktrace_js_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/stacktrace-js/-/stacktrace-js-2.0.2.tgz";
-        sha512 = "Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==";
-      };
-    }
-    {
-      name = "static_extend___static_extend_0.1.2.tgz";
-      path = fetchurl {
-        name = "static_extend___static_extend_0.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz";
-        sha1 = "YICcOcv/VTNyJv1eC1IPNB8ftcY=";
-      };
-    }
-    {
-      name = "statuses___statuses_1.5.0.tgz";
-      path = fetchurl {
-        name = "statuses___statuses_1.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz";
-        sha1 = "Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=";
-      };
-    }
-    {
-      name = "stealthy_require___stealthy_require_1.1.1.tgz";
-      path = fetchurl {
-        name = "stealthy_require___stealthy_require_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz";
-        sha1 = "NbCYdbT/SfJqd35QmzCQoyJr8ks=";
-      };
-    }
-    {
-      name = "stream_browserify___stream_browserify_2.0.2.tgz";
-      path = fetchurl {
-        name = "stream_browserify___stream_browserify_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz";
-        sha512 = "nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==";
-      };
-    }
-    {
-      name = "stream_each___stream_each_1.2.3.tgz";
-      path = fetchurl {
-        name = "stream_each___stream_each_1.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz";
-        sha512 = "vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==";
-      };
-    }
-    {
-      name = "stream_http___stream_http_2.8.3.tgz";
-      path = fetchurl {
-        name = "stream_http___stream_http_2.8.3.tgz";
-        url  = "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz";
-        sha512 = "+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==";
-      };
-    }
-    {
-      name = "stream_shift___stream_shift_1.0.1.tgz";
-      path = fetchurl {
-        name = "stream_shift___stream_shift_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz";
-        sha512 = "AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==";
-      };
-    }
-    {
-      name = "string_length___string_length_4.0.1.tgz";
-      path = fetchurl {
-        name = "string_length___string_length_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/string-length/-/string-length-4.0.1.tgz";
-        sha512 = "PKyXUd0LK0ePjSOnWn34V2uD6acUWev9uy0Ft05k0E8xRW+SKcA0F7eMr7h5xlzfn+4O3N+55rduYyet3Jk+jw==";
-      };
-    }
-    {
-      name = "string_width___string_width_1.0.2.tgz";
-      path = fetchurl {
-        name = "string_width___string_width_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz";
-        sha1 = "EYvfW4zcUaKn5w0hHgfisLmxB9M=";
-      };
-    }
-    {
-      name = "string_width___string_width_2.1.1.tgz";
-      path = fetchurl {
-        name = "string_width___string_width_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz";
-        sha512 = "nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==";
-      };
-    }
-    {
-      name = "string_width___string_width_3.1.0.tgz";
-      path = fetchurl {
-        name = "string_width___string_width_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz";
-        sha512 = "vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==";
-      };
-    }
-    {
-      name = "string_width___string_width_4.2.0.tgz";
-      path = fetchurl {
-        name = "string_width___string_width_4.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz";
-        sha512 = "zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==";
-      };
-    }
-    {
-      name = "string.prototype.matchall___string.prototype.matchall_4.0.5.tgz";
-      path = fetchurl {
-        name = "string.prototype.matchall___string.prototype.matchall_4.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz";
-        sha512 = "Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==";
-      };
-    }
-    {
-      name = "string.prototype.trimend___string.prototype.trimend_1.0.1.tgz";
-      path = fetchurl {
-        name = "string.prototype.trimend___string.prototype.trimend_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz";
-        sha512 = "LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==";
-      };
-    }
-    {
-      name = "string.prototype.trimend___string.prototype.trimend_1.0.4.tgz";
-      path = fetchurl {
-        name = "string.prototype.trimend___string.prototype.trimend_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz";
-        sha512 = "y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==";
-      };
-    }
-    {
-      name = "string.prototype.trimstart___string.prototype.trimstart_1.0.1.tgz";
-      path = fetchurl {
-        name = "string.prototype.trimstart___string.prototype.trimstart_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz";
-        sha512 = "XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==";
-      };
-    }
-    {
-      name = "string.prototype.trimstart___string.prototype.trimstart_1.0.4.tgz";
-      path = fetchurl {
-        name = "string.prototype.trimstart___string.prototype.trimstart_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz";
-        sha512 = "jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==";
-      };
-    }
-    {
-      name = "string_decoder___string_decoder_1.3.0.tgz";
-      path = fetchurl {
-        name = "string_decoder___string_decoder_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz";
-        sha512 = "hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==";
-      };
-    }
-    {
-      name = "string_decoder___string_decoder_1.1.1.tgz";
-      path = fetchurl {
-        name = "string_decoder___string_decoder_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz";
-        sha512 = "n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==";
-      };
-    }
-    {
-      name = "stringz___stringz_2.1.0.tgz";
-      path = fetchurl {
-        name = "stringz___stringz_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/stringz/-/stringz-2.1.0.tgz";
-        sha512 = "KlywLT+MZ+v0IRepfMxRtnSvDCMc3nR1qqCs3m/qIbSOWkNZYT8XHQA31rS3TnKp0c5xjZu3M4GY/2aRKSi/6A==";
-      };
-    }
-    {
-      name = "strip_ansi___strip_ansi_3.0.1.tgz";
-      path = fetchurl {
-        name = "strip_ansi___strip_ansi_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz";
-        sha1 = "ajhfuIU9lS1f8F0Oiq+UJ43GPc8=";
-      };
-    }
-    {
-      name = "strip_ansi___strip_ansi_4.0.0.tgz";
-      path = fetchurl {
-        name = "strip_ansi___strip_ansi_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz";
-        sha1 = "qEeQIusaw2iocTibY1JixQXuNo8=";
-      };
-    }
-    {
-      name = "strip_ansi___strip_ansi_5.2.0.tgz";
-      path = fetchurl {
-        name = "strip_ansi___strip_ansi_5.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz";
-        sha512 = "DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==";
-      };
-    }
-    {
-      name = "strip_ansi___strip_ansi_6.0.0.tgz";
-      path = fetchurl {
-        name = "strip_ansi___strip_ansi_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz";
-        sha512 = "AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==";
-      };
-    }
-    {
-      name = "strip_bom___strip_bom_3.0.0.tgz";
-      path = fetchurl {
-        name = "strip_bom___strip_bom_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz";
-        sha1 = "IzTBjpx1n3vdVv3vfprj1YjmjtM=";
-      };
-    }
-    {
-      name = "strip_bom___strip_bom_4.0.0.tgz";
-      path = fetchurl {
-        name = "strip_bom___strip_bom_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz";
-        sha512 = "3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==";
-      };
-    }
-    {
-      name = "strip_comments___strip_comments_2.0.1.tgz";
-      path = fetchurl {
-        name = "strip_comments___strip_comments_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/strip-comments/-/strip-comments-2.0.1.tgz";
-        sha512 = "ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==";
-      };
-    }
-    {
-      name = "strip_eof___strip_eof_1.0.0.tgz";
-      path = fetchurl {
-        name = "strip_eof___strip_eof_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz";
-        sha1 = "u0P/VZim6wXYm1n80SnJgzE2Br8=";
-      };
-    }
-    {
-      name = "strip_final_newline___strip_final_newline_2.0.0.tgz";
-      path = fetchurl {
-        name = "strip_final_newline___strip_final_newline_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz";
-        sha512 = "BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==";
-      };
-    }
-    {
-      name = "strip_indent___strip_indent_3.0.0.tgz";
-      path = fetchurl {
-        name = "strip_indent___strip_indent_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz";
-        sha512 = "laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==";
-      };
-    }
-    {
-      name = "strip_json_comments___strip_json_comments_3.1.1.tgz";
-      path = fetchurl {
-        name = "strip_json_comments___strip_json_comments_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz";
-        sha512 = "6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==";
-      };
-    }
-    {
-      name = "strip_json_comments___strip_json_comments_1.0.4.tgz";
-      path = fetchurl {
-        name = "strip_json_comments___strip_json_comments_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz";
-        sha1 = "HhX7ysl9Pumb8tc7TGVrCCu6+5E=";
-      };
-    }
-    {
-      name = "stylehacks___stylehacks_4.0.3.tgz";
-      path = fetchurl {
-        name = "stylehacks___stylehacks_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.3.tgz";
-        sha512 = "7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==";
-      };
-    }
-    {
-      name = "stylis___stylis_4.0.6.tgz";
-      path = fetchurl {
-        name = "stylis___stylis_4.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/stylis/-/stylis-4.0.6.tgz";
-        sha512 = "1igcUEmYFBEO14uQHAJhCUelTR5jPztfdVKrYxRnDa5D5Dn3w0NxXupJNPr/VV/yRfZYEAco8sTIRZzH3sRYKg==";
-      };
-    }
-    {
-      name = "substring_trie___substring_trie_1.0.2.tgz";
-      path = fetchurl {
-        name = "substring_trie___substring_trie_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/substring-trie/-/substring-trie-1.0.2.tgz";
-        sha1 = "e0JZI5Fii08ssXNlxszkJXx7evU=";
-      };
-    }
-    {
-      name = "supports_color___supports_color_2.0.0.tgz";
-      path = fetchurl {
-        name = "supports_color___supports_color_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz";
-        sha1 = "U10EXOa2Nj+kARcIRimZXp3zJMc=";
-      };
-    }
-    {
-      name = "supports_color___supports_color_3.2.3.tgz";
-      path = fetchurl {
-        name = "supports_color___supports_color_3.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz";
-        sha1 = "ZawFBLOVQXHYpklGsq48u4pfVPY=";
-      };
-    }
-    {
-      name = "supports_color___supports_color_5.5.0.tgz";
-      path = fetchurl {
-        name = "supports_color___supports_color_5.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz";
-        sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==";
-      };
-    }
-    {
-      name = "supports_color___supports_color_6.1.0.tgz";
-      path = fetchurl {
-        name = "supports_color___supports_color_6.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz";
-        sha512 = "qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==";
-      };
-    }
-    {
-      name = "supports_color___supports_color_7.2.0.tgz";
-      path = fetchurl {
-        name = "supports_color___supports_color_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz";
-        sha512 = "qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==";
-      };
-    }
-    {
-      name = "supports_color___supports_color_8.1.1.tgz";
-      path = fetchurl {
-        name = "supports_color___supports_color_8.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz";
-        sha512 = "MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==";
-      };
-    }
-    {
-      name = "supports_hyperlinks___supports_hyperlinks_2.1.0.tgz";
-      path = fetchurl {
-        name = "supports_hyperlinks___supports_hyperlinks_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz";
-        sha512 = "zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==";
-      };
-    }
-    {
-      name = "svgo___svgo_1.3.2.tgz";
-      path = fetchurl {
-        name = "svgo___svgo_1.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz";
-        sha512 = "yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==";
-      };
-    }
-    {
-      name = "symbol_tree___symbol_tree_3.2.4.tgz";
-      path = fetchurl {
-        name = "symbol_tree___symbol_tree_3.2.4.tgz";
-        url  = "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz";
-        sha512 = "9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==";
-      };
-    }
-    {
-      name = "table___table_3.8.3.tgz";
-      path = fetchurl {
-        name = "table___table_3.8.3.tgz";
-        url  = "https://registry.yarnpkg.com/table/-/table-3.8.3.tgz";
-        sha1 = "K7xULw/amGGnVdOUf+/Ys/UThV8=";
-      };
-    }
-    {
-      name = "table___table_6.7.1.tgz";
-      path = fetchurl {
-        name = "table___table_6.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/table/-/table-6.7.1.tgz";
-        sha512 = "ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==";
-      };
-    }
-    {
-      name = "tapable___tapable_1.1.3.tgz";
-      path = fetchurl {
-        name = "tapable___tapable_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz";
-        sha512 = "4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==";
-      };
-    }
-    {
-      name = "tar___tar_6.0.5.tgz";
-      path = fetchurl {
-        name = "tar___tar_6.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/tar/-/tar-6.0.5.tgz";
-        sha512 = "0b4HOimQHj9nXNEAA7zWwMM91Zhhba3pspja6sQbgTpynOJf+bkjBnfybNYzbpLbnwXnbyB4LOREvlyXLkCHSg==";
-      };
-    }
-    {
-      name = "tcomb___tcomb_2.7.0.tgz";
-      path = fetchurl {
-        name = "tcomb___tcomb_2.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/tcomb/-/tcomb-2.7.0.tgz";
-        sha1 = "ENYpWAQWaaXVNWe5pO6M3iKxwrA=";
-      };
-    }
-    {
-      name = "terminal_link___terminal_link_2.1.1.tgz";
-      path = fetchurl {
-        name = "terminal_link___terminal_link_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz";
-        sha512 = "un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==";
-      };
-    }
-    {
-      name = "terser_webpack_plugin___terser_webpack_plugin_1.4.3.tgz";
-      path = fetchurl {
-        name = "terser_webpack_plugin___terser_webpack_plugin_1.4.3.tgz";
-        url  = "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz";
-        sha512 = "QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA==";
-      };
-    }
-    {
-      name = "terser_webpack_plugin___terser_webpack_plugin_4.2.3.tgz";
-      path = fetchurl {
-        name = "terser_webpack_plugin___terser_webpack_plugin_4.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz";
-        sha512 = "jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ==";
-      };
-    }
-    {
-      name = "terser___terser_4.8.0.tgz";
-      path = fetchurl {
-        name = "terser___terser_4.8.0.tgz";
-        url  = "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz";
-        sha512 = "EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==";
-      };
-    }
-    {
-      name = "terser___terser_5.3.4.tgz";
-      path = fetchurl {
-        name = "terser___terser_5.3.4.tgz";
-        url  = "https://registry.yarnpkg.com/terser/-/terser-5.3.4.tgz";
-        sha512 = "dxuB8KQo8Gt6OVOeLg/rxfcxdNZI/V1G6ze1czFUzPeCFWZRtvZMgSzlZZ5OYBZ4HoG607F6pFPNLekJyV+yVw==";
-      };
-    }
-    {
-      name = "tesseract.js_core___tesseract.js_core_2.2.0.tgz";
-      path = fetchurl {
-        name = "tesseract.js_core___tesseract.js_core_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/tesseract.js-core/-/tesseract.js-core-2.2.0.tgz";
-        sha512 = "a8L+OJTbUipBsEDsJhDPlnLB0TY1MkTZqw5dqUwmiDSjUzwvU7HWLg/2+WDRulKUi4LE+7PnHlaBlW0k+V0U0w==";
-      };
-    }
-    {
-      name = "tesseract.js___tesseract.js_2.1.1.tgz";
-      path = fetchurl {
-        name = "tesseract.js___tesseract.js_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/tesseract.js/-/tesseract.js-2.1.1.tgz";
-        sha512 = "utg0A8UzT1KwBvZf+UMGmM8LU6izeol6yIem0Z44+7Qqd/YWgRVQ99XOG18ApTOXX48lGE++PDwlcZYkv0ygRQ==";
-      };
-    }
-    {
-      name = "test_exclude___test_exclude_6.0.0.tgz";
-      path = fetchurl {
-        name = "test_exclude___test_exclude_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz";
-        sha512 = "cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==";
-      };
-    }
-    {
-      name = "text_table___text_table_0.2.0.tgz";
-      path = fetchurl {
-        name = "text_table___text_table_0.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz";
-        sha1 = "f17oI66AUgfACvLfSoTsP8+lcLQ=";
-      };
-    }
-    {
-      name = "throat___throat_5.0.0.tgz";
-      path = fetchurl {
-        name = "throat___throat_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz";
-        sha512 = "fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==";
-      };
-    }
-    {
-      name = "throng___throng_4.0.0.tgz";
-      path = fetchurl {
-        name = "throng___throng_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/throng/-/throng-4.0.0.tgz";
-        sha1 = "mDxroZk7WOroWZmKpof/6I34TBc=";
-      };
-    }
-    {
-      name = "through2___through2_2.0.5.tgz";
-      path = fetchurl {
-        name = "through2___through2_2.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz";
-        sha512 = "/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==";
-      };
-    }
-    {
-      name = "through___through_2.3.8.tgz";
-      path = fetchurl {
-        name = "through___through_2.3.8.tgz";
-        url  = "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz";
-        sha1 = "DdTJ/6q8NXlgsbckEV1+Doai4fU=";
-      };
-    }
-    {
-      name = "thunky___thunky_1.1.0.tgz";
-      path = fetchurl {
-        name = "thunky___thunky_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz";
-        sha512 = "eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==";
-      };
-    }
-    {
-      name = "timers_browserify___timers_browserify_2.0.11.tgz";
-      path = fetchurl {
-        name = "timers_browserify___timers_browserify_2.0.11.tgz";
-        url  = "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.11.tgz";
-        sha512 = "60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==";
-      };
-    }
-    {
-      name = "timsort___timsort_0.3.0.tgz";
-      path = fetchurl {
-        name = "timsort___timsort_0.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz";
-        sha1 = "QFQRqOfmM5/mTbmiNN4R3DHgK9Q=";
-      };
-    }
-    {
-      name = "tiny_invariant___tiny_invariant_1.1.0.tgz";
-      path = fetchurl {
-        name = "tiny_invariant___tiny_invariant_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.1.0.tgz";
-        sha512 = "ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw==";
-      };
-    }
-    {
-      name = "tiny_queue___tiny_queue_0.2.1.tgz";
-      path = fetchurl {
-        name = "tiny_queue___tiny_queue_0.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/tiny-queue/-/tiny-queue-0.2.1.tgz";
-        sha1 = "JaZ/LG4lOyypQZd7XvdELvl6YEY=";
-      };
-    }
-    {
-      name = "tiny_warning___tiny_warning_1.0.3.tgz";
-      path = fetchurl {
-        name = "tiny_warning___tiny_warning_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz";
-        sha512 = "lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==";
-      };
-    }
-    {
-      name = "tmpl___tmpl_1.0.4.tgz";
-      path = fetchurl {
-        name = "tmpl___tmpl_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz";
-        sha1 = "I2QN17QtAEM5ERQIIOXPRA5SHdE=";
-      };
-    }
-    {
-      name = "to_arraybuffer___to_arraybuffer_1.0.1.tgz";
-      path = fetchurl {
-        name = "to_arraybuffer___to_arraybuffer_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz";
-        sha1 = "fSKbH8xjfkZsoIEYCDanqr/4P0M=";
-      };
-    }
-    {
-      name = "to_fast_properties___to_fast_properties_2.0.0.tgz";
-      path = fetchurl {
-        name = "to_fast_properties___to_fast_properties_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz";
-        sha1 = "3F5pjL0HkmW8c+A3doGk5Og/YW4=";
-      };
-    }
-    {
-      name = "to_object_path___to_object_path_0.3.0.tgz";
-      path = fetchurl {
-        name = "to_object_path___to_object_path_0.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz";
-        sha1 = "KXWIt7Dn4KwI4E5nL4XB9JmeF68=";
-      };
-    }
-    {
-      name = "to_regex_range___to_regex_range_2.1.1.tgz";
-      path = fetchurl {
-        name = "to_regex_range___to_regex_range_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz";
-        sha1 = "fIDBe53+vlmeJzZ+DU3VWQFB2zg=";
-      };
-    }
-    {
-      name = "to_regex_range___to_regex_range_5.0.1.tgz";
-      path = fetchurl {
-        name = "to_regex_range___to_regex_range_5.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz";
-        sha512 = "65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==";
-      };
-    }
-    {
-      name = "to_regex___to_regex_3.0.2.tgz";
-      path = fetchurl {
-        name = "to_regex___to_regex_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz";
-        sha512 = "FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==";
-      };
-    }
-    {
-      name = "toidentifier___toidentifier_1.0.0.tgz";
-      path = fetchurl {
-        name = "toidentifier___toidentifier_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz";
-        sha512 = "yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==";
-      };
-    }
-    {
-      name = "totalist___totalist_1.1.0.tgz";
-      path = fetchurl {
-        name = "totalist___totalist_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/totalist/-/totalist-1.1.0.tgz";
-        sha512 = "gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==";
-      };
-    }
-    {
-      name = "tough_cookie___tough_cookie_2.5.0.tgz";
-      path = fetchurl {
-        name = "tough_cookie___tough_cookie_2.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz";
-        sha512 = "nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==";
-      };
-    }
-    {
-      name = "tough_cookie___tough_cookie_3.0.1.tgz";
-      path = fetchurl {
-        name = "tough_cookie___tough_cookie_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-3.0.1.tgz";
-        sha512 = "yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==";
-      };
-    }
-    {
-      name = "tr46___tr46_2.0.2.tgz";
-      path = fetchurl {
-        name = "tr46___tr46_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/tr46/-/tr46-2.0.2.tgz";
-        sha512 = "3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg==";
-      };
-    }
-    {
-      name = "ts_essentials___ts_essentials_2.0.12.tgz";
-      path = fetchurl {
-        name = "ts_essentials___ts_essentials_2.0.12.tgz";
-        url  = "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-2.0.12.tgz";
-        sha512 = "3IVX4nI6B5cc31/GFFE+i8ey/N2eA0CZDbo6n0yrz0zDX8ZJ8djmU1p+XRz7G3is0F3bB3pu2pAroFdAWQKU3w==";
-      };
-    }
-    {
-      name = "tsconfig_paths___tsconfig_paths_3.9.0.tgz";
-      path = fetchurl {
-        name = "tsconfig_paths___tsconfig_paths_3.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz";
-        sha512 = "dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==";
-      };
-    }
-    {
-      name = "tslib___tslib_1.13.0.tgz";
-      path = fetchurl {
-        name = "tslib___tslib_1.13.0.tgz";
-        url  = "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz";
-        sha512 = "i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==";
-      };
-    }
-    {
-      name = "tty_browserify___tty_browserify_0.0.0.tgz";
-      path = fetchurl {
-        name = "tty_browserify___tty_browserify_0.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz";
-        sha1 = "oVe6QC2iTpv5V/mqadUk7tQpAaY=";
-      };
-    }
-    {
-      name = "tunnel_agent___tunnel_agent_0.6.0.tgz";
-      path = fetchurl {
-        name = "tunnel_agent___tunnel_agent_0.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz";
-        sha1 = "J6XeoGs2sEoKmWZ3SykIaPD8QP0=";
-      };
-    }
-    {
-      name = "tweetnacl___tweetnacl_0.14.5.tgz";
-      path = fetchurl {
-        name = "tweetnacl___tweetnacl_0.14.5.tgz";
-        url  = "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz";
-        sha1 = "WuaBd/GS1EViadEIr6k/+HQ/T2Q=";
-      };
-    }
-    {
-      name = "twemoji_parser___twemoji_parser_11.0.2.tgz";
-      path = fetchurl {
-        name = "twemoji_parser___twemoji_parser_11.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/twemoji-parser/-/twemoji-parser-11.0.2.tgz";
-        sha512 = "5kO2XCcpAql6zjdLwRwJjYvAZyDy3+Uj7v1ipBzLthQmDL7Ce19bEqHr3ImSNeoSW2OA8u02XmARbXHaNO8GhA==";
-      };
-    }
-    {
-      name = "twitter_text___twitter_text_3.1.0.tgz";
-      path = fetchurl {
-        name = "twitter_text___twitter_text_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/twitter-text/-/twitter-text-3.1.0.tgz";
-        sha512 = "nulfUi3FN6z0LUjYipJid+eiwXvOLb8Ass7Jy/6zsXmZK3URte043m8fL3FyDzrK+WLpyqhHuR/TcARTN/iuGQ==";
-      };
-    }
-    {
-      name = "type_check___type_check_0.4.0.tgz";
-      path = fetchurl {
-        name = "type_check___type_check_0.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz";
-        sha512 = "XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==";
-      };
-    }
-    {
-      name = "type_check___type_check_0.3.2.tgz";
-      path = fetchurl {
-        name = "type_check___type_check_0.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz";
-        sha1 = "WITKtRLPHTVeP7eE8wgEsrUg23I=";
-      };
-    }
-    {
-      name = "type_detect___type_detect_4.0.8.tgz";
-      path = fetchurl {
-        name = "type_detect___type_detect_4.0.8.tgz";
-        url  = "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz";
-        sha512 = "0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==";
-      };
-    }
-    {
-      name = "type_fest___type_fest_0.11.0.tgz";
-      path = fetchurl {
-        name = "type_fest___type_fest_0.11.0.tgz";
-        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz";
-        sha512 = "OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==";
-      };
-    }
-    {
-      name = "type_fest___type_fest_0.20.2.tgz";
-      path = fetchurl {
-        name = "type_fest___type_fest_0.20.2.tgz";
-        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz";
-        sha512 = "Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==";
-      };
-    }
-    {
-      name = "type_fest___type_fest_0.6.0.tgz";
-      path = fetchurl {
-        name = "type_fest___type_fest_0.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz";
-        sha512 = "q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==";
-      };
-    }
-    {
-      name = "type_fest___type_fest_0.8.1.tgz";
-      path = fetchurl {
-        name = "type_fest___type_fest_0.8.1.tgz";
-        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz";
-        sha512 = "4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==";
-      };
-    }
-    {
-      name = "type_is___type_is_1.6.18.tgz";
-      path = fetchurl {
-        name = "type_is___type_is_1.6.18.tgz";
-        url  = "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz";
-        sha512 = "TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==";
-      };
-    }
-    {
-      name = "type___type_1.2.0.tgz";
-      path = fetchurl {
-        name = "type___type_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz";
-        sha512 = "+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==";
-      };
-    }
-    {
-      name = "type___type_2.0.0.tgz";
-      path = fetchurl {
-        name = "type___type_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/type/-/type-2.0.0.tgz";
-        sha512 = "KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==";
-      };
-    }
-    {
-      name = "typedarray_to_buffer___typedarray_to_buffer_3.1.5.tgz";
-      path = fetchurl {
-        name = "typedarray_to_buffer___typedarray_to_buffer_3.1.5.tgz";
-        url  = "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz";
-        sha512 = "zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==";
-      };
-    }
-    {
-      name = "typedarray___typedarray_0.0.6.tgz";
-      path = fetchurl {
-        name = "typedarray___typedarray_0.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz";
-        sha1 = "hnrHTjhkGHsdPUfZlqeOxciDB3c=";
-      };
-    }
-    {
-      name = "unbox_primitive___unbox_primitive_1.0.1.tgz";
-      path = fetchurl {
-        name = "unbox_primitive___unbox_primitive_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz";
-        sha512 = "tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==";
-      };
-    }
-    {
-      name = "unicode_canonical_property_names_ecmascript___unicode_canonical_property_names_ecmascript_1.0.4.tgz";
-      path = fetchurl {
-        name = "unicode_canonical_property_names_ecmascript___unicode_canonical_property_names_ecmascript_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz";
-        sha512 = "jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==";
-      };
-    }
-    {
-      name = "unicode_match_property_ecmascript___unicode_match_property_ecmascript_1.0.4.tgz";
-      path = fetchurl {
-        name = "unicode_match_property_ecmascript___unicode_match_property_ecmascript_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz";
-        sha512 = "L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==";
-      };
-    }
-    {
-      name = "unicode_match_property_value_ecmascript___unicode_match_property_value_ecmascript_1.2.0.tgz";
-      path = fetchurl {
-        name = "unicode_match_property_value_ecmascript___unicode_match_property_value_ecmascript_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz";
-        sha512 = "wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==";
-      };
-    }
-    {
-      name = "unicode_property_aliases_ecmascript___unicode_property_aliases_ecmascript_1.1.0.tgz";
-      path = fetchurl {
-        name = "unicode_property_aliases_ecmascript___unicode_property_aliases_ecmascript_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz";
-        sha512 = "PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==";
-      };
-    }
-    {
-      name = "union_value___union_value_1.0.1.tgz";
-      path = fetchurl {
-        name = "union_value___union_value_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz";
-        sha512 = "tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==";
-      };
-    }
-    {
-      name = "uniq___uniq_1.0.1.tgz";
-      path = fetchurl {
-        name = "uniq___uniq_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz";
-        sha1 = "sxxa6CVIRKOoKBVBzisEuGWnNP8=";
-      };
-    }
-    {
-      name = "uniqs___uniqs_2.0.0.tgz";
-      path = fetchurl {
-        name = "uniqs___uniqs_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz";
-        sha1 = "/+3ks2slKQaW5uFl1KWe25mOawI=";
-      };
-    }
-    {
-      name = "unique_filename___unique_filename_1.1.1.tgz";
-      path = fetchurl {
-        name = "unique_filename___unique_filename_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz";
-        sha512 = "Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==";
-      };
-    }
-    {
-      name = "unique_slug___unique_slug_2.0.2.tgz";
-      path = fetchurl {
-        name = "unique_slug___unique_slug_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz";
-        sha512 = "zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==";
-      };
-    }
-    {
-      name = "universalify___universalify_0.1.2.tgz";
-      path = fetchurl {
-        name = "universalify___universalify_0.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz";
-        sha512 = "rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==";
-      };
-    }
-    {
-      name = "unpipe___unpipe_1.0.0.tgz";
-      path = fetchurl {
-        name = "unpipe___unpipe_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz";
-        sha1 = "sr9O6FFKrmFltIF4KdIbLvSZBOw=";
-      };
-    }
-    {
-      name = "unquote___unquote_1.1.1.tgz";
-      path = fetchurl {
-        name = "unquote___unquote_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz";
-        sha1 = "j97XMk7G6IoP+LkF58CYzcCG1UQ=";
-      };
-    }
-    {
-      name = "unset_value___unset_value_1.0.0.tgz";
-      path = fetchurl {
-        name = "unset_value___unset_value_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz";
-        sha1 = "g3aHP30jNRef+x5vw6jtDfyKtVk=";
-      };
-    }
-    {
-      name = "upath___upath_1.2.0.tgz";
-      path = fetchurl {
-        name = "upath___upath_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz";
-        sha512 = "aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==";
-      };
-    }
-    {
-      name = "uri_js___uri_js_4.4.0.tgz";
-      path = fetchurl {
-        name = "uri_js___uri_js_4.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.0.tgz";
-        sha512 = "B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==";
-      };
-    }
-    {
-      name = "urix___urix_0.1.0.tgz";
-      path = fetchurl {
-        name = "urix___urix_0.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz";
-        sha1 = "2pN/emLiH+wf0Y1Js1wpNQZ6bHI=";
-      };
-    }
-    {
-      name = "url_parse___url_parse_1.5.1.tgz";
-      path = fetchurl {
-        name = "url_parse___url_parse_1.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.1.tgz";
-        sha512 = "HOfCOUJt7iSYzEx/UqgtwKRMC6EU91NFhsCHMv9oM03VJcVo2Qrp8T8kI9D7amFf1cu+/3CEhgb3rF9zL7k85Q==";
-      };
-    }
-    {
-      name = "url___url_0.11.0.tgz";
-      path = fetchurl {
-        name = "url___url_0.11.0.tgz";
-        url  = "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz";
-        sha1 = "ODjpfPxgUh63PFJajlW/3Z4uKPE=";
-      };
-    }
-    {
-      name = "use_composed_ref___use_composed_ref_1.0.0.tgz";
-      path = fetchurl {
-        name = "use_composed_ref___use_composed_ref_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/use-composed-ref/-/use-composed-ref-1.0.0.tgz";
-        sha512 = "RVqY3NFNjZa0xrmK3bIMWNmQ01QjKPDc7DeWR3xa/N8aliVppuutOE5bZzPkQfvL+5NRWMMp0DJ99Trd974FIw==";
-      };
-    }
-    {
-      name = "use_isomorphic_layout_effect___use_isomorphic_layout_effect_1.0.0.tgz";
-      path = fetchurl {
-        name = "use_isomorphic_layout_effect___use_isomorphic_layout_effect_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.0.0.tgz";
-        sha512 = "JMwJ7Vd86NwAt1jH7q+OIozZSIxA4ND0fx6AsOe2q1H8ooBUp5aN6DvVCqZiIaYU6JaMRJGyR0FO7EBCIsb/Rg==";
-      };
-    }
-    {
-      name = "use_latest___use_latest_1.1.0.tgz";
-      path = fetchurl {
-        name = "use_latest___use_latest_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/use-latest/-/use-latest-1.1.0.tgz";
-        sha512 = "gF04d0ZMV3AMB8Q7HtfkAWe+oq1tFXP6dZKwBHQF5nVXtGsh2oAYeeqma5ZzxtlpOcW8Ro/tLcfmEodjDeqtuw==";
-      };
-    }
-    {
-      name = "use___use_3.1.1.tgz";
-      path = fetchurl {
-        name = "use___use_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz";
-        sha512 = "cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==";
-      };
-    }
-    {
-      name = "user_home___user_home_2.0.0.tgz";
-      path = fetchurl {
-        name = "user_home___user_home_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/user-home/-/user-home-2.0.0.tgz";
-        sha1 = "nHC/2Babwdy/SGBODwS4tJzenp8=";
-      };
-    }
-    {
-      name = "utf_8_validate___utf_8_validate_5.0.5.tgz";
-      path = fetchurl {
-        name = "utf_8_validate___utf_8_validate_5.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.5.tgz";
-        sha512 = "+pnxRYsS/axEpkrrEpzYfNZGXp0IjC/9RIxwM5gntY4Koi8SHmUGSfxfWqxZdRxrtaoVstuOzUp/rbs3JSPELQ==";
-      };
-    }
-    {
-      name = "util_deprecate___util_deprecate_1.0.2.tgz";
-      path = fetchurl {
-        name = "util_deprecate___util_deprecate_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz";
-        sha1 = "RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=";
-      };
-    }
-    {
-      name = "util.promisify___util.promisify_1.0.1.tgz";
-      path = fetchurl {
-        name = "util.promisify___util.promisify_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz";
-        sha512 = "g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==";
-      };
-    }
-    {
-      name = "util___util_0.10.3.tgz";
-      path = fetchurl {
-        name = "util___util_0.10.3.tgz";
-        url  = "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz";
-        sha1 = "evsa/lCAUkZInj23/g7TeTNqwPk=";
-      };
-    }
-    {
-      name = "util___util_0.10.4.tgz";
-      path = fetchurl {
-        name = "util___util_0.10.4.tgz";
-        url  = "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz";
-        sha512 = "0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==";
-      };
-    }
-    {
-      name = "util___util_0.11.1.tgz";
-      path = fetchurl {
-        name = "util___util_0.11.1.tgz";
-        url  = "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz";
-        sha512 = "HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==";
-      };
-    }
-    {
-      name = "utils_merge___utils_merge_1.0.1.tgz";
-      path = fetchurl {
-        name = "utils_merge___utils_merge_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz";
-        sha1 = "n5VxD1CiZ5R7LMwSR0HBAoQn5xM=";
-      };
-    }
-    {
-      name = "uuid___uuid_3.4.0.tgz";
-      path = fetchurl {
-        name = "uuid___uuid_3.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz";
-        sha512 = "HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==";
-      };
-    }
-    {
-      name = "uuid___uuid_8.3.2.tgz";
-      path = fetchurl {
-        name = "uuid___uuid_8.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz";
-        sha512 = "+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==";
-      };
-    }
-    {
-      name = "v8_compile_cache___v8_compile_cache_2.2.0.tgz";
-      path = fetchurl {
-        name = "v8_compile_cache___v8_compile_cache_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz";
-        sha512 = "gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==";
-      };
-    }
-    {
-      name = "v8_to_istanbul___v8_to_istanbul_7.0.0.tgz";
-      path = fetchurl {
-        name = "v8_to_istanbul___v8_to_istanbul_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-7.0.0.tgz";
-        sha512 = "fLL2rFuQpMtm9r8hrAV2apXX/WqHJ6+IC4/eQVdMDGBUgH/YMV4Gv3duk3kjmyg6uiQWBAA9nJwue4iJUOkHeA==";
-      };
-    }
-    {
-      name = "validate_npm_package_license___validate_npm_package_license_3.0.4.tgz";
-      path = fetchurl {
-        name = "validate_npm_package_license___validate_npm_package_license_3.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz";
-        sha512 = "DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==";
-      };
-    }
-    {
-      name = "value_equal___value_equal_0.4.0.tgz";
-      path = fetchurl {
-        name = "value_equal___value_equal_0.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/value-equal/-/value-equal-0.4.0.tgz";
-        sha512 = "x+cYdNnaA3CxvMaTX0INdTCN8m8aF2uY9BvEqmxuYp8bL09cs/kWVQPVGcA35fMktdOsP69IgU7wFj/61dJHEw==";
-      };
-    }
-    {
-      name = "value_equal___value_equal_1.0.1.tgz";
-      path = fetchurl {
-        name = "value_equal___value_equal_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/value-equal/-/value-equal-1.0.1.tgz";
-        sha512 = "NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==";
-      };
-    }
-    {
-      name = "vary___vary_1.1.2.tgz";
-      path = fetchurl {
-        name = "vary___vary_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz";
-        sha1 = "IpnwLG3tMNSllhsLn3RSShj2NPw=";
-      };
-    }
-    {
-      name = "vendors___vendors_1.0.4.tgz";
-      path = fetchurl {
-        name = "vendors___vendors_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/vendors/-/vendors-1.0.4.tgz";
-        sha512 = "/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==";
-      };
-    }
-    {
-      name = "verror___verror_1.10.0.tgz";
-      path = fetchurl {
-        name = "verror___verror_1.10.0.tgz";
-        url  = "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz";
-        sha1 = "OhBcoXBTr1XW4nDB+CiGguGNpAA=";
-      };
-    }
-    {
-      name = "vm_browserify___vm_browserify_1.1.2.tgz";
-      path = fetchurl {
-        name = "vm_browserify___vm_browserify_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz";
-        sha512 = "2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==";
-      };
-    }
-    {
-      name = "w3c_hr_time___w3c_hr_time_1.0.2.tgz";
-      path = fetchurl {
-        name = "w3c_hr_time___w3c_hr_time_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz";
-        sha512 = "z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==";
-      };
-    }
-    {
-      name = "w3c_xmlserializer___w3c_xmlserializer_2.0.0.tgz";
-      path = fetchurl {
-        name = "w3c_xmlserializer___w3c_xmlserializer_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz";
-        sha512 = "4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==";
-      };
-    }
-    {
-      name = "walker___walker_1.0.7.tgz";
-      path = fetchurl {
-        name = "walker___walker_1.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz";
-        sha1 = "L3+bj9ENZ3JisYqITijRlhjgKPs=";
-      };
-    }
-    {
-      name = "warning___warning_3.0.0.tgz";
-      path = fetchurl {
-        name = "warning___warning_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz";
-        sha1 = "MuU3fLVy3kqwR1O9+IIcAe1gW3w=";
-      };
-    }
-    {
-      name = "warning___warning_4.0.3.tgz";
-      path = fetchurl {
-        name = "warning___warning_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz";
-        sha512 = "rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==";
-      };
-    }
-    {
-      name = "watchpack_chokidar2___watchpack_chokidar2_2.0.0.tgz";
-      path = fetchurl {
-        name = "watchpack_chokidar2___watchpack_chokidar2_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz";
-        sha512 = "9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==";
-      };
-    }
-    {
-      name = "watchpack___watchpack_1.7.4.tgz";
-      path = fetchurl {
-        name = "watchpack___watchpack_1.7.4.tgz";
-        url  = "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.4.tgz";
-        sha512 = "aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==";
-      };
-    }
-    {
-      name = "wbuf___wbuf_1.7.3.tgz";
-      path = fetchurl {
-        name = "wbuf___wbuf_1.7.3.tgz";
-        url  = "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz";
-        sha512 = "O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==";
-      };
-    }
-    {
-      name = "webidl_conversions___webidl_conversions_5.0.0.tgz";
-      path = fetchurl {
-        name = "webidl_conversions___webidl_conversions_5.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz";
-        sha512 = "VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==";
-      };
-    }
-    {
-      name = "webidl_conversions___webidl_conversions_6.1.0.tgz";
-      path = fetchurl {
-        name = "webidl_conversions___webidl_conversions_6.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz";
-        sha512 = "qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==";
-      };
-    }
-    {
-      name = "webpack_assets_manifest___webpack_assets_manifest_4.0.6.tgz";
-      path = fetchurl {
-        name = "webpack_assets_manifest___webpack_assets_manifest_4.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/webpack-assets-manifest/-/webpack-assets-manifest-4.0.6.tgz";
-        sha512 = "9MsBOINUoGcj3D7XHQOOuQri7VEDArkhn5gqnpCqPungLj8Vy3utlVZ6vddAVU5feYroj+DEncktbaZhnBxdeQ==";
-      };
-    }
-    {
-      name = "webpack_bundle_analyzer___webpack_bundle_analyzer_4.4.2.tgz";
-      path = fetchurl {
-        name = "webpack_bundle_analyzer___webpack_bundle_analyzer_4.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.4.2.tgz";
-        sha512 = "PIagMYhlEzFfhMYOzs5gFT55DkUdkyrJi/SxJp8EF3YMWhS+T9vvs2EoTetpk5qb6VsCq02eXTlRDOydRhDFAQ==";
-      };
-    }
-    {
-      name = "webpack_cli___webpack_cli_3.3.12.tgz";
-      path = fetchurl {
-        name = "webpack_cli___webpack_cli_3.3.12.tgz";
-        url  = "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.12.tgz";
-        sha512 = "NVWBaz9k839ZH/sinurM+HcDvJOTXwSjYp1ku+5XKeOC03z8v5QitnK/x+lAxGXFyhdayoIf/GOpv85z3/xPag==";
-      };
-    }
-    {
-      name = "webpack_dev_middleware___webpack_dev_middleware_3.7.2.tgz";
-      path = fetchurl {
-        name = "webpack_dev_middleware___webpack_dev_middleware_3.7.2.tgz";
-        url  = "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz";
-        sha512 = "1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==";
-      };
-    }
-    {
-      name = "webpack_dev_server___webpack_dev_server_3.11.2.tgz";
-      path = fetchurl {
-        name = "webpack_dev_server___webpack_dev_server_3.11.2.tgz";
-        url  = "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.11.2.tgz";
-        sha512 = "A80BkuHRQfCiNtGBS1EMf2ChTUs0x+B3wGDFmOeT4rmJOHhHTCH2naNxIHhmkr0/UillP4U3yeIyv1pNp+QDLQ==";
-      };
-    }
-    {
-      name = "webpack_log___webpack_log_2.0.0.tgz";
-      path = fetchurl {
-        name = "webpack_log___webpack_log_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz";
-        sha512 = "cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==";
-      };
-    }
-    {
-      name = "webpack_merge___webpack_merge_5.7.3.tgz";
-      path = fetchurl {
-        name = "webpack_merge___webpack_merge_5.7.3.tgz";
-        url  = "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.7.3.tgz";
-        sha512 = "6/JUQv0ELQ1igjGDzHkXbVDRxkfA57Zw7PfiupdLFJYrgFqY5ZP8xxbpp2lU3EPwYx89ht5Z/aDkD40hFCm5AA==";
-      };
-    }
-    {
-      name = "webpack_sources___webpack_sources_1.4.3.tgz";
-      path = fetchurl {
-        name = "webpack_sources___webpack_sources_1.4.3.tgz";
-        url  = "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz";
-        sha512 = "lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==";
-      };
-    }
-    {
-      name = "webpack___webpack_4.46.0.tgz";
-      path = fetchurl {
-        name = "webpack___webpack_4.46.0.tgz";
-        url  = "https://registry.yarnpkg.com/webpack/-/webpack-4.46.0.tgz";
-        sha512 = "6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==";
-      };
-    }
-    {
-      name = "websocket_driver___websocket_driver_0.7.3.tgz";
-      path = fetchurl {
-        name = "websocket_driver___websocket_driver_0.7.3.tgz";
-        url  = "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.3.tgz";
-        sha512 = "bpxWlvbbB459Mlipc5GBzzZwhoZgGEZLuqPaR0INBGnPAY1vdBX6hPnoFXiw+3yWxDuHyQjO2oXTMyS8A5haFg==";
-      };
-    }
-    {
-      name = "websocket_driver___websocket_driver_0.7.4.tgz";
-      path = fetchurl {
-        name = "websocket_driver___websocket_driver_0.7.4.tgz";
-        url  = "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz";
-        sha512 = "b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==";
-      };
-    }
-    {
-      name = "websocket_extensions___websocket_extensions_0.1.4.tgz";
-      path = fetchurl {
-        name = "websocket_extensions___websocket_extensions_0.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz";
-        sha512 = "OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==";
-      };
-    }
-    {
-      name = "whatwg_encoding___whatwg_encoding_1.0.5.tgz";
-      path = fetchurl {
-        name = "whatwg_encoding___whatwg_encoding_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz";
-        sha512 = "b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==";
-      };
-    }
-    {
-      name = "whatwg_mimetype___whatwg_mimetype_2.3.0.tgz";
-      path = fetchurl {
-        name = "whatwg_mimetype___whatwg_mimetype_2.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz";
-        sha512 = "M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==";
-      };
-    }
-    {
-      name = "whatwg_url___whatwg_url_8.2.2.tgz";
-      path = fetchurl {
-        name = "whatwg_url___whatwg_url_8.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.2.2.tgz";
-        sha512 = "PcVnO6NiewhkmzV0qn7A+UZ9Xx4maNTI+O+TShmfE4pqjoCMwUMjkvoNhNHPTvgR7QH9Xt3R13iHuWy2sToFxQ==";
-      };
-    }
-    {
-      name = "which_boxed_primitive___which_boxed_primitive_1.0.2.tgz";
-      path = fetchurl {
-        name = "which_boxed_primitive___which_boxed_primitive_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz";
-        sha512 = "bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==";
-      };
-    }
-    {
-      name = "which_module___which_module_2.0.0.tgz";
-      path = fetchurl {
-        name = "which_module___which_module_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz";
-        sha1 = "2e8H3Od7mQK4o6j6SzHD4/fm6Ho=";
-      };
-    }
-    {
-      name = "which___which_1.3.1.tgz";
-      path = fetchurl {
-        name = "which___which_1.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz";
-        sha512 = "HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==";
-      };
-    }
-    {
-      name = "which___which_2.0.2.tgz";
-      path = fetchurl {
-        name = "which___which_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz";
-        sha512 = "BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==";
-      };
-    }
-    {
-      name = "wicg_inert___wicg_inert_3.1.1.tgz";
-      path = fetchurl {
-        name = "wicg_inert___wicg_inert_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/wicg-inert/-/wicg-inert-3.1.1.tgz";
-        sha512 = "PhBaNh8ur9Xm4Ggy4umelwNIP6pPP1bv3EaWaKqfb/QNme2rdLjm7wIInvV4WhxVHhzA4Spgw9qNSqWtB/ca2A==";
-      };
-    }
-    {
-      name = "wide_align___wide_align_1.1.3.tgz";
-      path = fetchurl {
-        name = "wide_align___wide_align_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz";
-        sha512 = "QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==";
-      };
-    }
-    {
-      name = "wildcard___wildcard_2.0.0.tgz";
-      path = fetchurl {
-        name = "wildcard___wildcard_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz";
-        sha512 = "JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==";
-      };
-    }
-    {
-      name = "word_wrap___word_wrap_1.2.3.tgz";
-      path = fetchurl {
-        name = "word_wrap___word_wrap_1.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz";
-        sha512 = "Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==";
-      };
-    }
-    {
-      name = "worker_farm___worker_farm_1.7.0.tgz";
-      path = fetchurl {
-        name = "worker_farm___worker_farm_1.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz";
-        sha512 = "rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==";
-      };
-    }
-    {
-      name = "wrap_ansi___wrap_ansi_5.1.0.tgz";
-      path = fetchurl {
-        name = "wrap_ansi___wrap_ansi_5.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz";
-        sha512 = "QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==";
-      };
-    }
-    {
-      name = "wrap_ansi___wrap_ansi_6.2.0.tgz";
-      path = fetchurl {
-        name = "wrap_ansi___wrap_ansi_6.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz";
-        sha512 = "r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==";
-      };
-    }
-    {
-      name = "wrap_ansi___wrap_ansi_7.0.0.tgz";
-      path = fetchurl {
-        name = "wrap_ansi___wrap_ansi_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz";
-        sha512 = "YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==";
-      };
-    }
-    {
-      name = "wrappy___wrappy_1.0.2.tgz";
-      path = fetchurl {
-        name = "wrappy___wrappy_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz";
-        sha1 = "tSQ9jz7BqjXxNkYFvA0QNuMKtp8=";
-      };
-    }
-    {
-      name = "write_file_atomic___write_file_atomic_3.0.3.tgz";
-      path = fetchurl {
-        name = "write_file_atomic___write_file_atomic_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz";
-        sha512 = "AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==";
-      };
-    }
-    {
-      name = "write___write_0.2.1.tgz";
-      path = fetchurl {
-        name = "write___write_0.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz";
-        sha1 = "X8A4KOJkzqP+kUVUdvejxWbLB1c=";
-      };
-    }
-    {
-      name = "ws___ws_6.2.1.tgz";
-      path = fetchurl {
-        name = "ws___ws_6.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/ws/-/ws-6.2.1.tgz";
-        sha512 = "GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==";
-      };
-    }
-    {
-      name = "ws___ws_7.4.6.tgz";
-      path = fetchurl {
-        name = "ws___ws_7.4.6.tgz";
-        url  = "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz";
-        sha512 = "YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==";
-      };
-    }
-    {
-      name = "xml_name_validator___xml_name_validator_3.0.0.tgz";
-      path = fetchurl {
-        name = "xml_name_validator___xml_name_validator_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz";
-        sha512 = "A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==";
-      };
-    }
-    {
-      name = "xmlchars___xmlchars_2.2.0.tgz";
-      path = fetchurl {
-        name = "xmlchars___xmlchars_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz";
-        sha512 = "JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==";
-      };
-    }
-    {
-      name = "xtend___xtend_4.0.2.tgz";
-      path = fetchurl {
-        name = "xtend___xtend_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz";
-        sha512 = "LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==";
-      };
-    }
-    {
-      name = "y18n___y18n_4.0.0.tgz";
-      path = fetchurl {
-        name = "y18n___y18n_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz";
-        sha512 = "r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==";
-      };
-    }
-    {
-      name = "y18n___y18n_5.0.5.tgz";
-      path = fetchurl {
-        name = "y18n___y18n_5.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz";
-        sha512 = "hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg==";
-      };
-    }
-    {
-      name = "yallist___yallist_3.1.1.tgz";
-      path = fetchurl {
-        name = "yallist___yallist_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz";
-        sha512 = "a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==";
-      };
-    }
-    {
-      name = "yallist___yallist_4.0.0.tgz";
-      path = fetchurl {
-        name = "yallist___yallist_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz";
-        sha512 = "3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==";
-      };
-    }
-    {
-      name = "yaml___yaml_1.10.0.tgz";
-      path = fetchurl {
-        name = "yaml___yaml_1.10.0.tgz";
-        url  = "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz";
-        sha512 = "yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==";
-      };
-    }
-    {
-      name = "yargs_parser___yargs_parser_13.1.2.tgz";
-      path = fetchurl {
-        name = "yargs_parser___yargs_parser_13.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz";
-        sha512 = "3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==";
-      };
-    }
-    {
-      name = "yargs_parser___yargs_parser_18.1.3.tgz";
-      path = fetchurl {
-        name = "yargs_parser___yargs_parser_18.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz";
-        sha512 = "o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==";
-      };
-    }
-    {
-      name = "yargs_parser___yargs_parser_20.2.3.tgz";
-      path = fetchurl {
-        name = "yargs_parser___yargs_parser_20.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.3.tgz";
-        sha512 = "emOFRT9WVHw03QSvN5qor9QQT9+sw5vwxfYweivSMHTcAXPefwVae2FjO7JJjj8hCE4CzPOPeFM83VwT29HCww==";
-      };
-    }
-    {
-      name = "yargs___yargs_13.3.2.tgz";
-      path = fetchurl {
-        name = "yargs___yargs_13.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz";
-        sha512 = "AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==";
-      };
-    }
-    {
-      name = "yargs___yargs_15.4.1.tgz";
-      path = fetchurl {
-        name = "yargs___yargs_15.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz";
-        sha512 = "aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==";
-      };
-    }
-    {
-      name = "yargs___yargs_17.0.1.tgz";
-      path = fetchurl {
-        name = "yargs___yargs_17.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/yargs/-/yargs-17.0.1.tgz";
-        sha512 = "xBBulfCc8Y6gLFcrPvtqKz9hz8SO0l1Ni8GgDekvBX2ro0HRQImDGnikfc33cgzcYUSncapnNcZDjVFIH3f6KQ==";
-      };
-    }
-    {
-      name = "zlibjs___zlibjs_0.3.1.tgz";
-      path = fetchurl {
-        name = "zlibjs___zlibjs_0.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/zlibjs/-/zlibjs-0.3.1.tgz";
-        sha1 = "UBl+2yihxCymWcyLTmqd3W1ERVQ=";
-      };
-    }
-  ];
-}
diff --git a/nixpkgs/pkgs/servers/matrix-synapse/default.nix b/nixpkgs/pkgs/servers/matrix-synapse/default.nix
index f23275d1df2d..cd762c7dc8be 100644
--- a/nixpkgs/pkgs/servers/matrix-synapse/default.nix
+++ b/nixpkgs/pkgs/servers/matrix-synapse/default.nix
@@ -11,11 +11,11 @@ in
 with python3.pkgs;
 buildPythonApplication rec {
   pname = "matrix-synapse";
-  version = "1.54.0";
+  version = "1.55.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-TmUu6KpL111mjd4Dgm/kYnKpDZjw9rWrpMQ5isXmWRo=";
+    sha256 = "sha256-IfLyp6IexNTMrq795qUMAPQ62mrMPwFyLE1yL8cu0T0=";
   };
 
   buildInputs = [ openssl ];
diff --git a/nixpkgs/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix b/nixpkgs/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix
index 014460ab2301..505e9e4ebae9 100644
--- a/nixpkgs/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix
+++ b/nixpkgs/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "matrix-synapse-mjolnir-antispam";
-  version = "1.3.2";
+  version = "1.4.1";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "mjolnir";
     rev = "v${version}";
-    sha256 = "HDfLndiFm9ayCmixuv4MYBbQ76mzCtTS+4UuBRdpP0E=";
+    sha256 = "sha256-zVb0lD5tYhX2a2MzNVQ8u7rMuQ8yGC/JlodbY4nsqNU=";
   };
 
   sourceRoot = "./source/synapse_antispam";
diff --git a/nixpkgs/pkgs/servers/matterbridge/default.nix b/nixpkgs/pkgs/servers/matterbridge/default.nix
index d0fde791291c..e5fbe803854b 100644
--- a/nixpkgs/pkgs/servers/matterbridge/default.nix
+++ b/nixpkgs/pkgs/servers/matterbridge/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "matterbridge";
-  version = "1.23.2";
+  version = "1.24.1";
 
   src = fetchFromGitHub {
     owner = "42wim";
     repo = pname;
     rev = "v${version}";
-    sha256 = "03fxq8dxkd5qiiw4zfsacdk2skg3apb4aw7k3wq0fv4n65hk25y3";
+    sha256 = "sha256-oT7CFJ266guNM6CEWn1BoNcERvLv89cVSlsrN6S/0h0=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/servers/mautrix-telegram/0002-Don-t-depend-on-pytest-runner.patch b/nixpkgs/pkgs/servers/mautrix-telegram/0002-Don-t-depend-on-pytest-runner.patch
deleted file mode 100644
index f1ec3e622cf8..000000000000
--- a/nixpkgs/pkgs/servers/mautrix-telegram/0002-Don-t-depend-on-pytest-runner.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From eb39954acf73096d65ba1e9575cbeb3d4307d5df Mon Sep 17 00:00:00 2001
-From: Maximilian Bosch <maximilian@mbosch.me>
-Date: Sun, 29 Nov 2020 20:55:17 +0100
-Subject: [PATCH 2/2] Don't depend on pytest-runner
-
----
- setup.py | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/setup.py b/setup.py
-index 95dbf89..89ea2a7 100644
---- a/setup.py
-+++ b/setup.py
-@@ -57,7 +57,6 @@ setuptools.setup(
-         ]
-     },
- 
--    setup_requires=["pytest-runner"],
-     tests_require=["pytest", "pytest-asyncio", "pytest-mock"],
- 
-     classifiers=[
--- 
-2.28.0
-
diff --git a/nixpkgs/pkgs/servers/mautrix-telegram/default.nix b/nixpkgs/pkgs/servers/mautrix-telegram/default.nix
index 267f89182fb2..e96427f30f3a 100644
--- a/nixpkgs/pkgs/servers/mautrix-telegram/default.nix
+++ b/nixpkgs/pkgs/servers/mautrix-telegram/default.nix
@@ -6,11 +6,11 @@ let
   python = python3.override {
     packageOverrides = self: super: {
       tulir-telethon = self.telethon.overridePythonAttrs (oldAttrs: rec {
-        version = "1.25.0a3";
+        version = "1.25.0a5";
         pname = "tulir-telethon";
         src = oldAttrs.src.override {
           inherit pname version;
-          sha256 = "sha256-/kau9Q2+7giVx52tmjvYIbcDcY1/om31X9BlRvZipuk=";
+          sha256 = "sha256-WFiWczuw6eVVid2Z1LsnGE6BCEhqeCuiQ/p0d2Ahbi8=";
         };
       });
     };
@@ -25,22 +25,17 @@ let
 
 in python.pkgs.buildPythonPackage rec {
   pname = "mautrix-telegram";
-  version = "0.11.1";
+  version = "0.11.2";
   disabled = python.pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "mautrix";
     repo = "telegram";
     rev = "v${version}";
-    sha256 = "sha256-Df+v1Q+5Iaa9GKcwIabMKjJwmVd5Qub8M54jEEiAPFc=";
+    sha256 = "sha256-ZECTHAP5l9tAk9Ies8XuPpH9jqYDJSRSHVKz1lA6Sjg=";
   };
 
   patches = [ ./0001-Re-add-entrypoint.patch ];
-  postPatch = ''
-    substituteInPlace requirements.txt \
-      --replace "telethon>=1.22,<1.23" "telethon"
-  '';
-
 
   propagatedBuildInputs = with python.pkgs; ([
     Mako
diff --git a/nixpkgs/pkgs/servers/mautrix-whatsapp/default.nix b/nixpkgs/pkgs/servers/mautrix-whatsapp/default.nix
index 92f6d1f15ac7..e26743b9edf8 100644
--- a/nixpkgs/pkgs/servers/mautrix-whatsapp/default.nix
+++ b/nixpkgs/pkgs/servers/mautrix-whatsapp/default.nix
@@ -2,18 +2,18 @@
 
 buildGoModule rec {
   pname = "mautrix-whatsapp";
-  version = "0.2.4";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "mautrix";
     repo = "whatsapp";
     rev = "v${version}";
-    sha256 = "lBAnMrU292URrZIxPvPIAO50GAFvvZHfUjKMYxZwGb8=";
+    sha256 = "M44APMnpQU+9TTJu4NF528o0JvGvWja4H7XUcAHtxrA=";
   };
 
   buildInputs = [ olm ];
 
-  vendorSha256 = "KiNABUZ92gYprTdNAKKMjygr0BzQGVYVPRPMxvYi1VQ=";
+  vendorSha256 = "o3KTcnMd6Tqt9QIfW29wvN8POIFThNg8AdeGDF5wbVc=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/servers/memcached/default.nix b/nixpkgs/pkgs/servers/memcached/default.nix
index 824e90b4869f..4461930b13cc 100644
--- a/nixpkgs/pkgs/servers/memcached/default.nix
+++ b/nixpkgs/pkgs/servers/memcached/default.nix
@@ -22,7 +22,6 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A distributed memory object caching system";
-    repositories.git = "https://github.com/memcached/memcached.git";
     homepage = "http://memcached.org/";
     license = licenses.bsd3;
     maintainers = [ maintainers.coconnor ];
diff --git a/nixpkgs/pkgs/servers/minio/default.nix b/nixpkgs/pkgs/servers/minio/default.nix
index e05d77d8a137..afa537bddd46 100644
--- a/nixpkgs/pkgs/servers/minio/default.nix
+++ b/nixpkgs/pkgs/servers/minio/default.nix
@@ -15,16 +15,16 @@ let
 in
 buildGoModule rec {
   pname = "minio";
-  version = "2022-02-24T22-12-01Z";
+  version = "2022-03-22T02-05-10Z";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "minio";
     rev = "RELEASE.${version}";
-    sha256 = "sha256-7bnT+rxQw2h1wCkXjsYm8ystU9F4EUL0KASkJmqLgXQ=";
+    sha256 = "sha256-N0ua+XHkLr33PElSdOzVQF3POPU+lx4/M6LJzxtkisI=";
   };
 
-  vendorSha256 = "sha256-fYpnYMt6VrC2eem8XvK8oAR1B0rQ4DV6ZWo0cLNCjCs=";
+  vendorSha256 = "sha256-Ql3J2r489Hzhy6E9uZwQXJIw/njb5oafCYjOyWGzbXs=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/servers/misc/virtiofsd/default.nix b/nixpkgs/pkgs/servers/misc/virtiofsd/default.nix
index 6d5ebbb76c0c..d8ae7ca61d93 100644
--- a/nixpkgs/pkgs/servers/misc/virtiofsd/default.nix
+++ b/nixpkgs/pkgs/servers/misc/virtiofsd/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "virtiofsd";
-  version = "1.0.0";
+  version = "1.1.0";
 
   src = fetchFromGitLab {
     owner = "virtio-fs";
     repo = "virtiofsd";
     rev = "v${version}";
-    sha256 = "010xf482qip91mv91wy9zjdsq0gfg1fd6iclrcry0nfnwlbigbwd";
+    sha256 = "sha256-WB0zu2M/5enBOoOUUSXnNAkbsA+JzDgtoLncE1YcDLs=";
   };
 
-  cargoSha256 = "0bfvqbmvkf17slra5k0nnva6j6w07769k226qnbzb3947zf4x2ga";
+  cargoSha256 = "sha256-uRPmZE/xc0yeurBZ4rnrZua5d4lbPwStMUacFgbquuk=";
 
   buildInputs = [ libcap_ng libseccomp ];
 
diff --git a/nixpkgs/pkgs/servers/mjolnir/default.nix b/nixpkgs/pkgs/servers/mjolnir/default.nix
index 539ac38f4f47..318ee14eb9d3 100644
--- a/nixpkgs/pkgs/servers/mjolnir/default.nix
+++ b/nixpkgs/pkgs/servers/mjolnir/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mjolnir";
-  version = "1.3.2";
+  version = "1.4.1";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "mjolnir";
     rev = "v${version}";
-    sha256 = "HDfLndiFm9ayCmixuv4MYBbQ76mzCtTS+4UuBRdpP0E=";
+    sha256 = "zVb0lD5tYhX2a2MzNVQ8u7rMuQ8yGC/JlodbY4nsqNU=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/servers/mjolnir/node-deps.nix b/nixpkgs/pkgs/servers/mjolnir/node-deps.nix
index 1454b69fc1f3..abdea7148824 100644
--- a/nixpkgs/pkgs/servers/mjolnir/node-deps.nix
+++ b/nixpkgs/pkgs/servers/mjolnir/node-deps.nix
@@ -148,13 +148,22 @@ let
         sha512 = "P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==";
       };
     };
-    "@types/html-to-text-8.0.1" = {
+    "@types/html-to-text-8.1.0" = {
       name = "_at_types_slash_html-to-text";
       packageName = "@types/html-to-text";
-      version = "8.0.1";
+      version = "8.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/html-to-text/-/html-to-text-8.1.0.tgz";
+        sha512 = "54YF2fGmN4g62/w+T85uQ8n0FyBhMY5cjKZ1imsbIh4Pgbeno1mAaQktC/pv/+C2ToUYkTZis9ADgn9GRRz9nQ==";
+      };
+    };
+    "@types/humanize-duration-3.27.1" = {
+      name = "_at_types_slash_humanize-duration";
+      packageName = "@types/humanize-duration";
+      version = "3.27.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/html-to-text/-/html-to-text-8.0.1.tgz";
-        sha512 = "0B/OifmJYmk5r9z9+KJtGWOF0LEjbTN4D2QeCh+mAw81JkJwC83NvNWUZFEqRT5PpnjX7vX0ab1SMGcwCs3Lag==";
+        url = "https://registry.npmjs.org/@types/humanize-duration/-/humanize-duration-3.27.1.tgz";
+        sha512 = "K3e+NZlpCKd6Bd/EIdqjFJRFHbrq5TzPPLwREk5Iv/YoIjQrs6ljdAUCo+Lb2xFlGNOjGSE0dqsVD19cZL137w==";
       };
     };
     "@types/istanbul-lib-coverage-2.0.4" = {
@@ -220,13 +229,13 @@ let
         sha512 = "QCWHkbMv4Y5U9oW10Uxbr45qMMSzl4OzijsozynUAgx3kEHUdXB00udx2dWDQ7f2TU2a2uuiFaRZjCe3unPpeg==";
       };
     };
-    "@types/node-16.11.25" = {
+    "@types/node-16.11.26" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "16.11.25";
+      version = "16.11.26";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-16.11.25.tgz";
-        sha512 = "NrTwfD7L1RTc2qrHQD4RTTy4p0CO2LatKBEKEds3CaVuhoM/+DJzmWZl5f+ikR8cm8F5mfJxK+9rQq07gRiSjQ==";
+        url = "https://registry.npmjs.org/@types/node/-/node-16.11.26.tgz";
+        sha512 = "GZ7bu5A6+4DtG7q9GsoHXy3ALcgeIHP4NnL0Vv2wu0uUB/yQex26v0tf6/na1mm0+bS9Uw+0DFex7aaKr2qawQ==";
       };
     };
     "@types/parse5-6.0.3" = {
@@ -265,6 +274,15 @@ let
         sha512 = "nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==";
       };
     };
+    "@types/shell-quote-1.7.1" = {
+      name = "_at_types_slash_shell-quote";
+      packageName = "@types/shell-quote";
+      version = "1.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/shell-quote/-/shell-quote-1.7.1.tgz";
+        sha512 = "SWZ2Nom1pkyXCDohRSrkSKvDh8QOG9RfAsrt5/NsPQC4UQJ55eG0qClA40I+Gkez4KTQ0uDUT8ELRXThf3J5jw==";
+      };
+    };
     "@types/stack-utils-2.0.1" = {
       name = "_at_types_slash_stack-utils";
       packageName = "@types/stack-utils";
@@ -292,13 +310,13 @@ let
         sha512 = "T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==";
       };
     };
-    "@types/yargs-parser-20.2.1" = {
+    "@types/yargs-parser-21.0.0" = {
       name = "_at_types_slash_yargs-parser";
       packageName = "@types/yargs-parser";
-      version = "20.2.1";
+      version = "21.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz";
-        sha512 = "7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==";
+        url = "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz";
+        sha512 = "iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==";
       };
     };
     "@ungap/promise-all-settled-1.1.2" = {
@@ -931,6 +949,15 @@ let
         sha512 = "/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==";
       };
     };
+    "debug-4.3.4" = {
+      name = "debug";
+      packageName = "debug";
+      version = "4.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz";
+        sha512 = "PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==";
+      };
+    };
     "decamelize-4.0.0" = {
       name = "decamelize";
       packageName = "decamelize";
@@ -1093,13 +1120,13 @@ let
         sha512 = "J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==";
       };
     };
-    "domhandler-4.3.0" = {
+    "domhandler-4.3.1" = {
       name = "domhandler";
       packageName = "domhandler";
-      version = "4.3.0";
+      version = "4.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz";
-        sha512 = "fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==";
+        url = "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz";
+        sha512 = "GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==";
       };
     };
     "domutils-2.8.0" = {
@@ -1597,13 +1624,13 @@ let
         sha512 = "lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==";
       };
     };
-    "globals-13.12.1" = {
+    "globals-13.13.0" = {
       name = "globals";
       packageName = "globals";
-      version = "13.12.1";
+      version = "13.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz";
-        sha512 = "317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==";
+        url = "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz";
+        sha512 = "EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==";
       };
     };
     "graceful-fs-4.2.9" = {
@@ -1777,6 +1804,24 @@ let
         sha512 = "EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==";
       };
     };
+    "humanize-duration-3.27.1" = {
+      name = "humanize-duration";
+      packageName = "humanize-duration";
+      version = "3.27.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.27.1.tgz";
+        sha512 = "jCVkMl+EaM80rrMrAPl96SGG4NRac53UyI1o/yAzebDntEY6K6/Fj2HOjdPg8omTqIe5Y0wPBai2q5xXrIbarA==";
+      };
+    };
+    "humanize-duration-ts-2.1.1" = {
+      name = "humanize-duration-ts";
+      packageName = "humanize-duration-ts";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/humanize-duration-ts/-/humanize-duration-ts-2.1.1.tgz";
+        sha512 = "TibNF2/fkypjAfHdGpWL/dmWUS0G6Qi+3mKyiB6LDCowbMy+PtzbgPTnFMNTOVAJXDau01jYrJ3tFoz5AJSqhA==";
+      };
+    };
     "iconv-lite-0.4.24" = {
       name = "iconv-lite";
       packageName = "iconv-lite";
@@ -2101,13 +2146,13 @@ let
         sha512 = "aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==";
       };
     };
-    "json5-2.2.0" = {
+    "json5-2.2.1" = {
       name = "json5";
       packageName = "json5";
-      version = "2.2.0";
+      version = "2.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz";
-        sha512 = "f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==";
+        url = "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz";
+        sha512 = "1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==";
       };
     };
     "jsprim-1.4.2" = {
@@ -2272,22 +2317,22 @@ let
         sha512 = "x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==";
       };
     };
-    "mime-db-1.51.0" = {
+    "mime-db-1.52.0" = {
       name = "mime-db";
       packageName = "mime-db";
-      version = "1.51.0";
+      version = "1.52.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz";
-        sha512 = "5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==";
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz";
+        sha512 = "sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==";
       };
     };
-    "mime-types-2.1.34" = {
+    "mime-types-2.1.35" = {
       name = "mime-types";
       packageName = "mime-types";
-      version = "2.1.34";
+      version = "2.1.35";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz";
-        sha512 = "6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==";
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz";
+        sha512 = "ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==";
       };
     };
     "minimalistic-assert-1.0.1" = {
@@ -2299,31 +2344,31 @@ let
         sha512 = "UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==";
       };
     };
-    "minimatch-3.0.4" = {
+    "minimatch-3.1.2" = {
       name = "minimatch";
       packageName = "minimatch";
-      version = "3.0.4";
+      version = "3.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";
-        sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
+        url = "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz";
+        sha512 = "J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==";
       };
     };
-    "minimatch-3.1.2" = {
+    "minimatch-4.2.1" = {
       name = "minimatch";
       packageName = "minimatch";
-      version = "3.1.2";
+      version = "4.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz";
-        sha512 = "J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==";
+        url = "https://registry.npmjs.org/minimatch/-/minimatch-4.2.1.tgz";
+        sha512 = "9Uq1ChtSZO+Mxa/CL1eGizn2vRn3MlLgzhT0Iz8zaY8NdvxvB0d5QdPFmCKf7JKA9Lerx5vRrnwO03jsSfGG9g==";
       };
     };
-    "minimist-1.2.5" = {
+    "minimist-1.2.6" = {
       name = "minimist";
       packageName = "minimist";
-      version = "1.2.5";
+      version = "1.2.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz";
-        sha512 = "FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==";
+        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz";
+        sha512 = "Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==";
       };
     };
     "mkdirp-0.5.5" = {
@@ -2344,13 +2389,13 @@ let
         sha512 = "vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==";
       };
     };
-    "mocha-9.2.1" = {
+    "mocha-9.2.2" = {
       name = "mocha";
       packageName = "mocha";
-      version = "9.2.1";
+      version = "9.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mocha/-/mocha-9.2.1.tgz";
-        sha512 = "T7uscqjJVS46Pq1XDXyo9Uvey9gd3huT/DD9cYBb4K2Xc/vbKRPUWK067bxDQRK0yIz6Jxk73IrnimvASzBNAQ==";
+        url = "https://registry.npmjs.org/mocha/-/mocha-9.2.2.tgz";
+        sha512 = "L6XC3EdwT6YrIk0yXpavvLkn8h+EU+Y5UcCHKECyMbdUIxyMuZj4bX4U9e1nvnvUUvQVsV2VHQr5zLdcUkhW/g==";
       };
     };
     "moo-0.5.1" = {
@@ -2398,15 +2443,6 @@ let
         sha512 = "6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==";
       };
     };
-    "nanoid-3.2.0" = {
-      name = "nanoid";
-      packageName = "nanoid";
-      version = "3.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/nanoid/-/nanoid-3.2.0.tgz";
-        sha512 = "fmsZYa9lpn69Ad5eDn7FMcnnSR+8R34W9qJEijxYhTbfOWzr22n1QxCMzXLK+ODyW2973V3Fux959iQoUxzUIA==";
-      };
-    };
     "nanoid-3.3.1" = {
       name = "nanoid";
       packageName = "nanoid";
@@ -2542,6 +2578,15 @@ let
         sha512 = "GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==";
       };
     };
+    "parse-duration-1.0.2" = {
+      name = "parse-duration";
+      packageName = "parse-duration";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-duration/-/parse-duration-1.0.2.tgz";
+        sha512 = "Dg27N6mfok+ow1a2rj/nRjtCfaKrHUZV2SJpEn/s8GaVUSlf4GGRCRP1c13Hj+wfPKVMrFDqLMLITkYKgKxyyg==";
+      };
+    };
     "parse-srcset-1.0.2" = {
       name = "parse-srcset";
       packageName = "parse-srcset";
@@ -2659,13 +2704,13 @@ let
         sha1 = "e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176";
       };
     };
-    "postcss-8.4.6" = {
+    "postcss-8.4.12" = {
       name = "postcss";
       packageName = "postcss";
-      version = "8.4.6";
+      version = "8.4.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz";
-        sha512 = "OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==";
+        url = "https://registry.npmjs.org/postcss/-/postcss-8.4.12.tgz";
+        sha512 = "lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==";
       };
     };
     "prelude-ls-1.1.2" = {
@@ -3037,6 +3082,15 @@ let
         sha512 = "7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==";
       };
     };
+    "shell-quote-1.7.3" = {
+      name = "shell-quote";
+      packageName = "shell-quote";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.3.tgz";
+        sha512 = "Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==";
+      };
+    };
     "sigmund-1.0.1" = {
       name = "sigmund";
       packageName = "sigmund";
@@ -3307,13 +3361,13 @@ let
         sha512 = "BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==";
       };
     };
-    "tsconfig-paths-3.12.0" = {
+    "tsconfig-paths-3.14.0" = {
       name = "tsconfig-paths";
       packageName = "tsconfig-paths";
-      version = "3.12.0";
+      version = "3.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.12.0.tgz";
-        sha512 = "e5adrnOYT6zqVnWqZu7i/BQ3BnhzvGbjEjejFXO20lKIKpwTaupkCPgEfv4GZK1IBciJUEhYs3J3p75FdaTFVg==";
+        url = "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.0.tgz";
+        sha512 = "cg/1jAZoL57R39+wiw4u/SCC6Ic9Q5NqjBOb+9xISedOYurfog9ZNmKJSxAnb2m/5Bq4lE9lhUcau33Ml8DM0g==";
       };
     };
     "tslib-1.14.1" = {
@@ -3397,13 +3451,13 @@ let
         sha512 = "TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==";
       };
     };
-    "typescript-4.5.5" = {
+    "typescript-4.6.2" = {
       name = "typescript";
       packageName = "typescript";
-      version = "4.5.5";
+      version = "4.6.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/typescript/-/typescript-4.5.5.tgz";
-        sha512 = "TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==";
+        url = "https://registry.npmjs.org/typescript/-/typescript-4.6.2.tgz";
+        sha512 = "HM/hFigTBHZhLXshn9sN37H085+hQGeJHJ/X7LpBWLID/fbc2acUMfU+lGD98X81sKP+pFa9f0DZmCwB9GnbAg==";
       };
     };
     "typescript-formatter-7.2.2" = {
@@ -3698,8 +3752,8 @@ let
   args = {
     name = "mjolnir";
     packageName = "mjolnir";
-    version = "1.3.2";
-    src = ../../../../../../../nix/store/yikp7bs3z15vp8rpaghdqc9kpngsfvyj-source;
+    version = "1.4.1";
+    src = ../../../../../../../nix/store/lb7jkhbcx6z00m9j6ck8pa237c26bhi0-source;
     dependencies = [
       sources."@babel/code-frame-7.12.11"
       sources."@babel/helper-validator-identifier-7.16.7"
@@ -3717,14 +3771,14 @@ let
       (sources."@eslint/eslintrc-0.4.3" // {
         dependencies = [
           sources."argparse-1.0.10"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."js-yaml-3.14.1"
           sources."ms-2.1.2"
         ];
       })
       (sources."@humanwhocodes/config-array-0.5.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -3738,7 +3792,8 @@ let
       sources."@types/crypto-js-4.1.1"
       sources."@types/express-4.17.13"
       sources."@types/express-serve-static-core-4.17.28"
-      sources."@types/html-to-text-8.0.1"
+      sources."@types/html-to-text-8.1.0"
+      sources."@types/humanize-duration-3.27.1"
       sources."@types/istanbul-lib-coverage-2.0.4"
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-3.0.1"
@@ -3746,15 +3801,16 @@ let
       sources."@types/json5-0.0.29"
       sources."@types/mime-1.3.2"
       sources."@types/mocha-9.1.0"
-      sources."@types/node-16.11.25"
+      sources."@types/node-16.11.26"
       sources."@types/parse5-6.0.3"
       sources."@types/qs-6.9.7"
       sources."@types/range-parser-1.2.4"
       sources."@types/serve-static-1.13.10"
+      sources."@types/shell-quote-1.7.1"
       sources."@types/stack-utils-2.0.1"
       sources."@types/tough-cookie-4.0.1"
       sources."@types/yargs-16.0.4"
-      sources."@types/yargs-parser-20.2.1"
+      sources."@types/yargs-parser-21.0.0"
       sources."@ungap/promise-all-settled-1.1.2"
       sources."abab-2.0.5"
       sources."accepts-1.3.8"
@@ -3768,7 +3824,7 @@ let
       sources."acorn-walk-7.2.0"
       (sources."agent-base-6.0.2" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
@@ -3850,7 +3906,7 @@ let
           sources."webidl-conversions-5.0.0"
         ];
       })
-      sources."domhandler-4.3.0"
+      sources."domhandler-4.3.1"
       sources."domutils-2.8.0"
       sources."ecc-jsbn-0.1.2"
       (sources."editorconfig-0.15.3" // {
@@ -3872,7 +3928,7 @@ let
       (sources."eslint-7.32.0" // {
         dependencies = [
           sources."argparse-1.0.10"
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."js-yaml-3.14.1"
           sources."levn-0.4.1"
           sources."ms-2.1.2"
@@ -3931,7 +3987,7 @@ let
       sources."glob-7.2.0"
       sources."glob-parent-5.1.2"
       sources."glob-to-regexp-0.4.1"
-      sources."globals-13.12.1"
+      sources."globals-13.13.0"
       sources."graceful-fs-4.2.9"
       sources."growl-1.10.5"
       sources."har-schema-2.0.0"
@@ -3947,17 +4003,19 @@ let
       sources."http-errors-1.8.1"
       (sources."http-proxy-agent-4.0.1" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
       sources."http-signature-1.2.0"
       (sources."https-proxy-agent-5.0.0" // {
         dependencies = [
-          sources."debug-4.3.3"
+          sources."debug-4.3.4"
           sources."ms-2.1.2"
         ];
       })
+      sources."humanize-duration-3.27.1"
+      sources."humanize-duration-ts-2.1.1"
       sources."iconv-lite-0.4.24"
       sources."ignore-4.0.6"
       sources."import-fresh-3.3.0"
@@ -3995,7 +4053,7 @@ let
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-without-jsonify-1.0.1"
       sources."json-stringify-safe-5.0.1"
-      sources."json5-2.2.0"
+      sources."json5-2.2.1"
       sources."jsprim-1.4.2"
       sources."levn-0.3.0"
       sources."locate-path-6.0.0"
@@ -4018,22 +4076,21 @@ let
       sources."methods-1.1.2"
       sources."micromatch-4.0.4"
       sources."mime-1.6.0"
-      sources."mime-db-1.51.0"
-      sources."mime-types-2.1.34"
+      sources."mime-db-1.52.0"
+      sources."mime-types-2.1.35"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.1.2"
-      sources."minimist-1.2.5"
+      sources."minimist-1.2.6"
       sources."mkdirp-1.0.4"
-      (sources."mocha-9.2.1" // {
+      (sources."mocha-9.2.2" // {
         dependencies = [
           (sources."debug-4.3.3" // {
             dependencies = [
               sources."ms-2.1.2"
             ];
           })
-          sources."minimatch-3.0.4"
+          sources."minimatch-4.2.1"
           sources."ms-2.1.3"
-          sources."nanoid-3.2.0"
           sources."supports-color-8.1.1"
         ];
       })
@@ -4058,6 +4115,7 @@ let
       sources."p-limit-3.1.0"
       sources."p-locate-5.0.0"
       sources."parent-module-1.0.1"
+      sources."parse-duration-1.0.2"
       sources."parse-srcset-1.0.2"
       sources."parse5-6.0.1"
       sources."parseley-0.7.0"
@@ -4071,7 +4129,7 @@ let
       sources."picocolors-1.0.0"
       sources."picomatch-2.3.1"
       sources."pify-3.0.0"
-      sources."postcss-8.4.6"
+      sources."postcss-8.4.12"
       sources."prelude-ls-1.1.2"
       (sources."pretty-format-27.5.1" // {
         dependencies = [
@@ -4127,6 +4185,7 @@ let
       sources."setprototypeof-1.2.0"
       sources."shebang-command-2.0.0"
       sources."shebang-regex-3.0.0"
+      sources."shell-quote-1.7.3"
       sources."sigmund-1.0.1"
       sources."slash-3.0.0"
       sources."slice-ansi-4.0.0"
@@ -4168,7 +4227,7 @@ let
           sources."mkdirp-0.5.5"
         ];
       })
-      (sources."tsconfig-paths-3.12.0" // {
+      (sources."tsconfig-paths-3.14.0" // {
         dependencies = [
           sources."json5-1.0.1"
         ];
@@ -4196,7 +4255,7 @@ let
       sources."type-check-0.3.2"
       sources."type-fest-0.20.2"
       sources."type-is-1.6.18"
-      sources."typescript-4.5.5"
+      sources."typescript-4.6.2"
       sources."typescript-formatter-7.2.2"
       sources."universalify-0.1.2"
       sources."unpipe-1.0.0"
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/default.nix
index bc669bbf5024..2b3ae9f64de8 100644
--- a/nixpkgs/pkgs/servers/monitoring/grafana/default.nix
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "grafana";
-  version = "8.4.3";
+  version = "8.4.4";
 
   excludedPackages = "\\(alert_webhook_listener\\|clean-swagger\\|release_publisher\\|slow_proxy\\|slow_proxy_mac\\|macaron\\)";
 
@@ -10,12 +10,12 @@ buildGoModule rec {
     rev = "v${version}";
     owner = "grafana";
     repo = "grafana";
-    sha256 = "sha256-+d4pcuNLbM2PY1rFpnIjoakpr63kMqI/SjpTRZecRXw=";
+    sha256 = "sha256-WLmmf2GlP7axuYj0TLJlDwe1k/9xNQbLvAggG+AshKg=";
   };
 
   srcStatic = fetchurl {
     url = "https://dl.grafana.com/oss/release/grafana-${version}.linux-amd64.tar.gz";
-    sha256 = "sha256-l3GPSUci812KbHKMXHtS4OlvYyuKlBOeQCLtLvvkhzI=";
+    sha256 = "sha256-eH6L7X1WvvL+9+R9FrpvVMxVJYcrHicaLkH2LUJs3AQ=";
   };
 
   vendorSha256 = "sha256-RugV5cHlpR739CA1C/7FkXasvkv18m7pPsK6mxfSkC0=";
diff --git a/nixpkgs/pkgs/servers/monitoring/munin/default.nix b/nixpkgs/pkgs/servers/monitoring/munin/default.nix
index d284c94e20af..258247c34f47 100644
--- a/nixpkgs/pkgs/servers/monitoring/munin/default.nix
+++ b/nixpkgs/pkgs/servers/monitoring/munin/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, makeWrapper, which, coreutils, rrdtool, perlPackages
-, python2, ruby, jre, nettools, bc
+, python3, ruby, jre, nettools, bc
 }:
 
 stdenv.mkDerivation rec {
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     perlPackages.ListMoreUtils
     perlPackages.LWP
     perlPackages.DBDPg
-    python2
+    python3
     ruby
     jre
     # tests
@@ -101,7 +101,7 @@ stdenv.mkDerivation rec {
     "DESTDIR=$(out)"
     "PERLLIB=$(out)/${perlPackages.perl.libPrefix}"
     "PERL=${perlPackages.perl.outPath}/bin/perl"
-    "PYTHON=${python2.outPath}/bin/python"
+    "PYTHON=${python3.interpreter}"
     "RUBY=${ruby.outPath}/bin/ruby"
     "JAVARUN=${jre.outPath}/bin/java"
     "PLUGINUSER=munin"
diff --git a/nixpkgs/pkgs/servers/monitoring/nagios/plugins/check_ssl_cert.nix b/nixpkgs/pkgs/servers/monitoring/nagios/plugins/check_ssl_cert.nix
index 966040428382..b55b47cd7afd 100644
--- a/nixpkgs/pkgs/servers/monitoring/nagios/plugins/check_ssl_cert.nix
+++ b/nixpkgs/pkgs/servers/monitoring/nagios/plugins/check_ssl_cert.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "check_ssl_cert";
-  version = "2.22.0";
+  version = "2.23.0";
 
   src = fetchFromGitHub {
     owner = "matteocorti";
     repo = "check_ssl_cert";
     rev = "v${version}";
-    sha256 = "sha256-ytnaygAVKppyyUnxfMlwf9GvHzt8SN5I+b2FTcyaM/4=";
+    sha256 = "sha256-RGl6Fgm9FVaZQMWHl93RwHvrScz69VgbIyDBqMh3PVo=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/servers/monitoring/prometheus/alertmanager.nix b/nixpkgs/pkgs/servers/monitoring/prometheus/alertmanager.nix
index db9443fc04a9..e42469f04785 100644
--- a/nixpkgs/pkgs/servers/monitoring/prometheus/alertmanager.nix
+++ b/nixpkgs/pkgs/servers/monitoring/prometheus/alertmanager.nix
@@ -2,17 +2,17 @@
 
 buildGoModule rec {
   pname = "alertmanager";
-  version = "0.23.0";
+  version = "0.24.0";
   rev = "v${version}";
 
   src = fetchFromGitHub {
     inherit rev;
     owner = "prometheus";
     repo = "alertmanager";
-    sha256 = "sha256-06mKgWUyw5jsjKiRXQ9/oqHvFdkY2nS9Z3eW60lTNbU=";
+    sha256 = "sha256-hoCE0wD9/Sh/oBce7kCg/wG44FmMs6dAKnEYP+2sH0w=";
   };
 
-  vendorSha256 = "sha256-zJvzCC7Vn5repWssyDuGtoUSZC2ojQhMqDX5Orr0ST0=";
+  vendorSha256 = "sha256-ePb9qdCTEHHIV6JlbrBlaZjD5APwQuoGloO88W5S7Oc=";
 
   subPackages = [ "cmd/alertmanager" "cmd/amtool" ];
 
diff --git a/nixpkgs/pkgs/servers/monitoring/prometheus/apcupsd-exporter.nix b/nixpkgs/pkgs/servers/monitoring/prometheus/apcupsd-exporter.nix
index 64105c9c58f2..c2f903228503 100644
--- a/nixpkgs/pkgs/servers/monitoring/prometheus/apcupsd-exporter.nix
+++ b/nixpkgs/pkgs/servers/monitoring/prometheus/apcupsd-exporter.nix
@@ -2,18 +2,16 @@
 
 buildGoModule rec {
   pname = "apcupsd-exporter";
-  version = "0.2.0";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "mdlayher";
     repo = "apcupsd_exporter";
     rev = "v${version}";
-    sha256 = "0gjj23qdjs7rqimq95rbfw43m4l6g73j840svxjlmpd1vzzz2v2q";
+    sha256 = "sha256-c0LsUqpJbmWQmbmSGdEy7Bbk20my6iWNLeqtU5BjYlw=";
   };
 
-  vendorSha256 = "09x8y8pmgfn897hvnk122ry460y12b8a7y5fafri5wn9vxab9r82";
-
-  doCheck = false;
+  vendorSha256 = "sha256-bvLwHLviIAGmxYY1O0wFDWAMginEUklicrbjIbbPuUw=";
 
   passthru.tests = { inherit (nixosTests.prometheus-exporters) apcupsd; };
 
diff --git a/nixpkgs/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix b/nixpkgs/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix
index da235ff96fb2..2349bac177c9 100644
--- a/nixpkgs/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix
+++ b/nixpkgs/pkgs/servers/monitoring/prometheus/blackbox-exporter.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "blackbox_exporter";
-  version = "0.19.0";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "prometheus";
     repo = "blackbox_exporter";
-    sha256 = "1lrabbp6nsd9h3hs3y5a37yl4g8zzkv0m3vhz2vrir3wmfn07n4g";
+    sha256 = "sha256-Y3HdFIChkQVooxy2I2Gbqw3WLHsI4Zm+osHTzFluRZA=";
   };
 
-  vendorSha256 = "1wi9dmbxb6i1qglnp1v0lkqpp7l29lrbsg4lvx052nkcwkgq8g1y";
+  vendorSha256 = "sha256-KFLR0In4txQQp5dt8P0yAFtf82b4SBq2xMnlz+vMuuU=";
 
   # dns-lookup is performed for the tests
   doCheck = false;
diff --git a/nixpkgs/pkgs/servers/monitoring/prometheus/node-exporter.nix b/nixpkgs/pkgs/servers/monitoring/prometheus/node-exporter.nix
index 7d40e919773d..0da2bb604a0b 100644
--- a/nixpkgs/pkgs/servers/monitoring/prometheus/node-exporter.nix
+++ b/nixpkgs/pkgs/servers/monitoring/prometheus/node-exporter.nix
@@ -1,4 +1,7 @@
-{ lib, buildGoModule, fetchFromGitHub, nixosTests }:
+{ lib, stdenv, buildGoModule, fetchFromGitHub, nixosTests
+  # darwin
+  , CoreFoundation, IOKit
+}:
 
 buildGoModule rec {
   pname = "node_exporter";
@@ -17,6 +20,13 @@ buildGoModule rec {
   # FIXME: tests fail due to read-only nix store
   doCheck = false;
 
+  buildInputs = lib.optionals stdenv.isDarwin [ CoreFoundation IOKit ];
+  # upstream currently doesn't work with the version of the macOS SDK
+  # we're building against in nix-darwin without a patch.
+  # this patch has been submitted upstream at https://github.com/prometheus/node_exporter/pull/2327
+  # and only needs to be carried until it lands in a new release.
+  patches = lib.optionals stdenv.isDarwin [ ./node-exporter/node-exporter-darwin.patch ];
+
   excludedPackages = [ "docs/node-mixin" ];
 
   ldflags = [
diff --git a/nixpkgs/pkgs/servers/monitoring/prometheus/node-exporter/node-exporter-darwin.patch b/nixpkgs/pkgs/servers/monitoring/prometheus/node-exporter/node-exporter-darwin.patch
new file mode 100644
index 000000000000..8077bbc47511
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/prometheus/node-exporter/node-exporter-darwin.patch
@@ -0,0 +1,17 @@
+diff --git a/collector/powersupplyclass_darwin.go b/collector/powersupplyclass_darwin.go
+index a070f64..01d7f18 100644
+--- a/collector/powersupplyclass_darwin.go
++++ b/collector/powersupplyclass_darwin.go
+@@ -18,9 +18,11 @@ package collector
+ 
+ /*
+ #cgo LDFLAGS: -framework IOKit -framework CoreFoundation
++#include <CoreFoundation/CFNumber.h>
++#include <CoreFoundation/CFRunLoop.h>
++#include <CoreFoundation/CFString.h>
+ #include <IOKit/ps/IOPowerSources.h>
+ #include <IOKit/ps/IOPSKeys.h>
+-#include <CoreFoundation/CFArray.h>
+ 
+ // values collected from IOKit Power Source APIs
+ // Functions documentation available at
diff --git a/nixpkgs/pkgs/servers/monitoring/prometheus/redis-exporter.nix b/nixpkgs/pkgs/servers/monitoring/prometheus/redis-exporter.nix
index 4b60c5a28d0e..fa654c3a4656 100644
--- a/nixpkgs/pkgs/servers/monitoring/prometheus/redis-exporter.nix
+++ b/nixpkgs/pkgs/servers/monitoring/prometheus/redis-exporter.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "redis_exporter";
-  version = "1.36.0";
+  version = "1.37.0";
 
   src = fetchFromGitHub {
     owner = "oliver006";
     repo = "redis_exporter";
     rev = "v${version}";
-    sha256 = "sha256-n+LvWl0KMAay90GQg42ODcvxX9QbvQ1Ixo4PfJYEAWA=";
+    sha256 = "sha256-S60/SwbMp6INf98MGc26zMZH8q7gBynyaT/ivN7o0rA=";
   };
 
   vendorSha256 = "sha256-u9FfKOD6kiCFTjwQ7LHE9WC4j2vPm0ZCluL8pC4aQIc=";
diff --git a/nixpkgs/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix b/nixpkgs/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix
index 1dbb31796275..61cf36f882df 100644
--- a/nixpkgs/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix
+++ b/nixpkgs/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wireguard-exporter";
-  version = "3.5.0";
+  version = "3.6.2";
 
   src = fetchFromGitHub {
     owner = "MindFlavor";
     repo = "prometheus_wireguard_exporter";
     rev = version;
-    sha256 = "sha256-LHhqQ0p2qt6ZAdkpY1SEAcGXH47TPhHvlDv+eL8GC58=";
+    sha256 = "sha256-eVGyBynKZLGlsaLwUOx7cJWdRHl65S0Wk1K5c9T8ysQ=";
   };
 
-  cargoSha256 = "sha256-lNFsO7FSmH1+DLM7ID0vn6234qTdtUoaLSnqKcbHoXE=";
+  cargoSha256 = "sha256-JbFoaMTs6TPYq2qgBkT7WX1itMXohgcWbC1UvaXOi8o=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ];
 
diff --git a/nixpkgs/pkgs/servers/monitoring/telegraf/default.nix b/nixpkgs/pkgs/servers/monitoring/telegraf/default.nix
index 89653f1066e1..3250d2339941 100644
--- a/nixpkgs/pkgs/servers/monitoring/telegraf/default.nix
+++ b/nixpkgs/pkgs/servers/monitoring/telegraf/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "telegraf";
-  version = "1.21.4";
+  version = "1.22.0";
 
   excludedPackages = "test";
 
@@ -12,10 +12,10 @@ buildGoModule rec {
     owner = "influxdata";
     repo = "telegraf";
     rev = "v${version}";
-    sha256 = "sha256-0z6pMZY6/d+oC0TlJrymCeYWf+IjLWnR1M4eo/lnpw0=";
+    sha256 = "sha256-Y7vR6kmh1rObDyyHA2NFvBkilBz+Bx8BHqlAoVY/gGo=";
   };
 
-  vendorSha256 = "sha256-igeRWLaYbHjZdbYBrynyjZPj1bwCXtnnU4UJM/CdaO0=";
+  vendorSha256 = "sha256-oSN6nHOtXA2cSZEmToRvALkSxAyel9BU7bh1groEnsw=";
   proxyVendor = true;
 
   ldflags = [
diff --git a/nixpkgs/pkgs/servers/moonraker/default.nix b/nixpkgs/pkgs/servers/moonraker/default.nix
index 31525464c0cc..2350cd18042a 100644
--- a/nixpkgs/pkgs/servers/moonraker/default.nix
+++ b/nixpkgs/pkgs/servers/moonraker/default.nix
@@ -1,9 +1,9 @@
-{ lib, stdenvNoCC, fetchFromGitHub, python3, makeWrapper, unstableGitUpdater }:
+{ lib, stdenvNoCC, fetchFromGitHub, python3, makeWrapper, unstableGitUpdater, nixosTests }:
 
 let
   pythonEnv = python3.withPackages (packages: with packages; [
     tornado
-    pyserial
+    pyserial-asyncio
     pillow
     lmdb
     streaming-form-data
@@ -12,16 +12,21 @@ let
     libnacl
     paho-mqtt
     pycurl
+    zeroconf
+    preprocess-cancellation
+    jinja2
+    dbus-next
+    apprise
   ]);
 in stdenvNoCC.mkDerivation rec {
   pname = "moonraker";
-  version = "unstable-2021-12-05";
+  version = "unstable-2022-03-10";
 
   src = fetchFromGitHub {
     owner = "Arksine";
     repo = "moonraker";
-    rev = "ac73036857cc1ca83df072dd94bf28eb9d0ed8b0";
-    sha256 = "Oqjt0z4grt+hdQ4t7KQSwkkCeRGoFFedJsTpMHwMm34=";
+    rev = "ee312ee9c6597c8d077d7c3208ccea4e696c97ca";
+    sha256 = "l0VOQIfKgZ/Je4z+SKhWMgYzxye8WKs9W1GkNs7kABo=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -34,7 +39,10 @@ in stdenvNoCC.mkDerivation rec {
       --add-flags "$out/lib/moonraker/moonraker.py"
   '';
 
-  passthru.updateScript = unstableGitUpdater { url = meta.homepage; };
+  passthru = {
+    updateScript = unstableGitUpdater { url = meta.homepage; };
+    tests.moonraker = nixosTests.moonraker;
+  };
 
   meta = with lib; {
     description = "API web server for Klipper";
diff --git a/nixpkgs/pkgs/servers/mpd/default.nix b/nixpkgs/pkgs/servers/mpd/default.nix
index 8eb782703776..c83d6e3e1fbc 100644
--- a/nixpkgs/pkgs/servers/mpd/default.nix
+++ b/nixpkgs/pkgs/servers/mpd/default.nix
@@ -116,13 +116,13 @@ let
 
     in stdenv.mkDerivation rec {
       pname = "mpd";
-      version = "0.23.5";
+      version = "0.23.6";
 
       src = fetchFromGitHub {
         owner  = "MusicPlayerDaemon";
         repo   = "MPD";
         rev    = "v${version}";
-        sha256 = "sha256-zsxh/rUJtcuke0zYBrh225Qd6RKo1SiFDbMmROdkyjI=";
+        sha256 = "sha256-pVIbaCg3qDw7bjhLQHz6Rr3m498LeKNQVhRk4m5tpVQ=";
       };
 
       buildInputs = [
diff --git a/nixpkgs/pkgs/servers/nats-server/default.nix b/nixpkgs/pkgs/servers/nats-server/default.nix
index 695480a05c96..7b6b1238d4d0 100644
--- a/nixpkgs/pkgs/servers/nats-server/default.nix
+++ b/nixpkgs/pkgs/servers/nats-server/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname   = "nats-server";
-  version = "2.7.2";
+  version = "2.7.4";
 
   src = fetchFromGitHub {
     rev    = "v${version}";
     owner  = "nats-io";
     repo   = pname;
-    sha256 = "0w4hjz1x6zwcxhnd1y3874agyn8nsdra4fky6kc2rrfikjcw003y";
+    sha256 = "sha256-lMwFh+njzQr1hOJFbO3LnPdBK7U4XmX4F/6MlIRILlU=";
   };
 
-  vendorSha256 = "1gvvjwx1g8mhcqi3ssb3k5ylkz0afpmnf6h2zfny9rc4dk2cp2dy";
+  vendorSha256 = "sha256-EEOvDOqMbqfB0S3Nf7RQMKGSZX802eqa3eGaNjUHxQ4=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/servers/nats-streaming-server/default.nix b/nixpkgs/pkgs/servers/nats-streaming-server/default.nix
index 4d6fdbda636d..247f9d840070 100644
--- a/nixpkgs/pkgs/servers/nats-streaming-server/default.nix
+++ b/nixpkgs/pkgs/servers/nats-streaming-server/default.nix
@@ -1,19 +1,23 @@
-{  buildGoPackage, fetchFromGitHub, lib  }:
+{ buildGoModule, fetchFromGitHub, lib  }:
 
 with lib;
 
-buildGoPackage rec {
+buildGoModule rec {
   pname   = "nats-streaming-server";
-  version = "0.23.0";
-  goPackagePath = "github.com/nats-io/${pname}";
+  version = "0.24.3";
 
   src = fetchFromGitHub {
     rev    = "v${version}";
     owner  = "nats-io";
     repo   = pname;
-    sha256 = "sha256-Uol1A4+0V4dUQ7Qw0qRUWHzFBugVDYSulDGTJZ4a+ts=";
+    sha256 = "sha256-vpDOiFuxLpqor+9SztdZrJvwC8QGwt5+df4R2OTcxlA=";
   };
 
+  vendorSha256 = "sha256:1m783cq20xlv5aglf252g5127r5ilfq4fqj00vim38v271511hmy";
+
+  # tests fail and ask to `go install`
+  doCheck = false;
+
   meta = {
     description = "NATS Streaming System Server";
     license = licenses.asl20;
diff --git a/nixpkgs/pkgs/servers/nextcloud/default.nix b/nixpkgs/pkgs/servers/nextcloud/default.nix
index 735bfdeafb18..92e8d6ff5d21 100644
--- a/nixpkgs/pkgs/servers/nextcloud/default.nix
+++ b/nixpkgs/pkgs/servers/nextcloud/default.nix
@@ -33,31 +33,26 @@ let
     };
   };
 in {
-  nextcloud20 = throw ''
-    Nextcloud v20 has been removed from `nixpkgs` as the support for it was dropped
-    by upstream in 2021-10. Please upgrade to at least Nextcloud v21 by declaring
+  nextcloud21 = throw ''
+    Nextcloud v21 has been removed from `nixpkgs` as the support for it was dropped
+    by upstream in 2022-02. Please upgrade to at least Nextcloud v22 by declaring
 
-        services.nextcloud.package = pkgs.nextcloud21;
+        services.nextcloud.package = pkgs.nextcloud22;
 
     in your NixOS config.
 
-    WARNING: if you were on Nextcloud 19 on NixOS 21.05 you have to upgrade to Nextcloud 20
-    first on 21.05 because Nextcloud doesn't support upgrades accross multiple major versions!
+    WARNING: if you were on Nextcloud 20 on NixOS 21.11 you have to upgrade to Nextcloud 21
+    first on 21.11 because Nextcloud doesn't support upgrades accross multiple major versions!
   '';
 
-  nextcloud21 = generic {
-    version = "21.0.9";
-    sha256 = "sha256-p6bvgTXmmjGN3TRQpG88f3YPksh0QzWG9j9KnEjcrqE=";
-  };
-
   nextcloud22 = generic {
-    version = "22.2.5";
-    sha256 = "sha256-gb5N0u5tu4/nI2xIpjXwm2hiSDCrBhIDyN6gKGOsdS8=";
+    version = "22.2.6";
+    sha256 = "0f1d0f0cb000c51b11886be25a8adce478846c3233572fcf28b44c5d4036e235";
   };
 
   nextcloud23 = generic {
-    version = "23.0.2";
-    sha256 = "sha256-ngJGLTjqq2RX/KgHe9Rv54w6qtRC6RpuEuMvp9UbxO4=";
+    version = "23.0.3";
+    sha256 = "39401d400fab02a84a175ea6e995b8ed4110fbaea48c876230b4f09755a62986";
   };
   # tip: get she sha with:
   # curl 'https://download.nextcloud.com/server/releases/nextcloud-${version}.tar.bz2.sha256'
diff --git a/nixpkgs/pkgs/servers/nominatim/default.nix b/nixpkgs/pkgs/servers/nominatim/default.nix
new file mode 100644
index 000000000000..4b7f9e3e2577
--- /dev/null
+++ b/nixpkgs/pkgs/servers/nominatim/default.nix
@@ -0,0 +1,68 @@
+{ stdenv, lib, fetchFromGitHub, fetchurl
+, clang-tools, cmake, bzip2, zlib, expat, boost, git, pandoc, gzip
+, postgresql_12
+, python3, python3Packages, php
+}:
+
+let
+  countryGrid = fetchurl {
+    # Nominatim docs mention https://www.nominatim.org/data/country_grid.sql.gz but it's not a very good URL for pinning
+    url = "https://web.archive.org/web/20220323041006/https://nominatim.org/data/country_grid.sql.gz";
+    sha256 = "sha256-/mY5Oq9WF0klXOv0xh0TqEJeMmuM5QQJ2IxANRZd4Ek=";
+  };
+in
+stdenv.mkDerivation rec {
+  pname = "nominatim";
+  version = "4.0.1";
+
+  src = fetchFromGitHub {
+    owner = "osm-search";
+    repo = "Nominatim";
+    rev = "v${version}";
+    fetchSubmodules = true;
+    sha256 = "sha256-sKI/KBKveb5kAWJ7y1xw+ZF1thynr402rJhVjkIdFMo=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    clang-tools
+    git
+    pandoc
+    php
+  ];
+
+  buildInputs = [
+    bzip2
+    zlib
+    expat
+    boost
+    python3
+    # python3Packages.pylint  # We don't want to run pylint because the package could break on pylint bumps which is really annoying.
+    # python3Packages.pytest  # disabled since I can't get it to run tests anyway
+    # python3Packages.behave  # disabled since I can't get it to run tests anyway
+    postgresql_12
+  ];
+
+  propagatedBuildInputs = with python3Packages; [
+    pyyaml
+    python-dotenv
+    psycopg2
+    psutil
+    jinja2
+    PyICU
+    datrie
+  ];
+
+  postPatch = ''
+    mkdir -p ./data
+    ln -s ${countryGrid} ./data/country_osm_grid.sql.gz
+  '';
+
+  meta = with lib; {
+    description = "Search engine for OpenStreetMap data";
+    homepage = "https://nominatim.org/";
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.mausch ];
+  };
+}
diff --git a/nixpkgs/pkgs/servers/openafs/1.8/module.nix b/nixpkgs/pkgs/servers/openafs/1.8/module.nix
index 02966d2ac70d..53834e5ccc1f 100644
--- a/nixpkgs/pkgs/servers/openafs/1.8/module.nix
+++ b/nixpkgs/pkgs/servers/openafs/1.8/module.nix
@@ -70,6 +70,6 @@ stdenv.mkDerivation {
     license = licenses.ipl10;
     platforms = platforms.linux;
     maintainers = with maintainers; [ maggesi spacefrogg ];
-    broken = versionOlder kernel.version "3.18" || kernel.isHardened;
+    broken = kernel.kernelOlder "3.18" || kernel.kernelAtLeast "5.17" || kernel.isHardened;
   };
 }
diff --git a/nixpkgs/pkgs/servers/owncast/default.nix b/nixpkgs/pkgs/servers/owncast/default.nix
index 68591f458230..774f51bc0f63 100644
--- a/nixpkgs/pkgs/servers/owncast/default.nix
+++ b/nixpkgs/pkgs/servers/owncast/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "owncast";
-  version = "0.0.10";
+  version = "0.0.11";
 
   src = fetchFromGitHub {
     owner = "owncast";
     repo = "owncast";
     rev = "v${version}";
-    sha256 = "sha256-OcolQ4KnZbSgS1dpphbCML40jlheKAxbac7rjRul6Oc=";
+    sha256 = "sha256-SVe7CH+qx3hFZ/cay6Hh5+vx0ncHACiNSM6k7fCDH18=";
   };
 
-  vendorSha256 = "sha256-NARHYeOVT7sxfL1BdJc/CPCgHNZzjWE7kACJvrEC71Y=";
+  vendorSha256 = "sha256-19FTfUCG1omk5y1HC2yb7/0CM2x6k5BGSM+sZwlKrxY=";
 
   propagatedBuildInputs = [ ffmpeg ];
 
diff --git a/nixpkgs/pkgs/servers/peertube/default.nix b/nixpkgs/pkgs/servers/peertube/default.nix
index 9961e9d581aa..558c21c6cd15 100644
--- a/nixpkgs/pkgs/servers/peertube/default.nix
+++ b/nixpkgs/pkgs/servers/peertube/default.nix
@@ -6,13 +6,13 @@ let
     if stdenv.hostPlatform.system == "x86_64-linux" then "linux-x64"
     else throw "Unsupported architecture: ${stdenv.hostPlatform.system}";
 
-  version = "4.1.0";
+  version = "4.1.1";
 
   source = fetchFromGitHub {
     owner = "Chocobozzz";
     repo = "PeerTube";
     rev = "v${version}";
-    sha256 = "sha256-gW/dzWns6wK3zzNjbW19HrV2jqzjdXR5uMMNXL4Xfdw=";
+    sha256 = "sha256-yBRontvkcVU3BNUIB6WfH2a5blU9u3CNyHrou16h42s=";
   };
 
   yarnOfflineCacheServer = fetchYarnDeps {
@@ -27,7 +27,7 @@ let
 
   yarnOfflineCacheClient = fetchYarnDeps {
     yarnLock = "${source}/client/yarn.lock";
-    sha256 = "sha256-wniMvtz7i3I4pn9xyzfNi1k7gQuzDl1GmEO8LqPBMKg=";
+    sha256 = "sha256-cBa0lNq9JsYi34EJzl0pPbDXSYL9a8g6MmiL6Ge65ms=";
   };
 
   bcrypt_version = "5.0.1";
@@ -75,10 +75,15 @@ in stdenv.mkDerivation rec {
     cd ~
 
     # Build PeerTube server
-    npm run build:server
+    npm run tsc -- --build ./tsconfig.json
+    npm run resolve-tspaths:server
+    cp -r "./server/static" "./server/assets" "./dist/server"
+    cp -r "./server/lib/emails" "./dist/server/lib"
 
     # Build PeerTube tools
+    cp -r "./server/tools/node_modules" "./dist/server/tools"
     npm run tsc -- --build ./server/tools/tsconfig.json
+    npm run resolve-tspaths:cli
 
     # Build PeerTube client
     npm run build:client
diff --git a/nixpkgs/pkgs/servers/piping-server-rust/default.nix b/nixpkgs/pkgs/servers/piping-server-rust/default.nix
index 7cf9442f13bf..8885179de4db 100644
--- a/nixpkgs/pkgs/servers/piping-server-rust/default.nix
+++ b/nixpkgs/pkgs/servers/piping-server-rust/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "piping-server-rust";
-  version = "0.12.0";
+  version = "0.12.1";
 
   src = fetchFromGitHub {
     owner = "nwtgck";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-eDO2y/4660IAcD9vf1Vt6t3nv3Rc+zCRRFBbW/FeKIw=";
+    sha256 = "sha256-L15ofIM5a/qoJHGXmkuTsmQLLmERG/PxAJ4+z1nn7w4=";
   };
 
-  cargoSha256 = "sha256-U68R543l28osPe0DjuERqB/G6ur/BZDpWMZIO9RObaM=";
+  cargoSha256 = "sha256-CcIM7T7P4LbPxPK1ZqoJRP0IsLMEwMZg9DcuRu0aJHM=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices Security ];
 
diff --git a/nixpkgs/pkgs/servers/pleroma/default.nix b/nixpkgs/pkgs/servers/pleroma/default.nix
index ec7de2ac57cd..dd4025a76c09 100644
--- a/nixpkgs/pkgs/servers/pleroma/default.nix
+++ b/nixpkgs/pkgs/servers/pleroma/default.nix
@@ -1,7 +1,8 @@
 { lib, beamPackages
 , fetchFromGitHub, fetchFromGitLab
-, file, cmake
+, file, cmake, bash
 , nixosTests, writeText
+, cookieFile ? null
 , ...
 }:
 
@@ -17,6 +18,34 @@ beamPackages.mixRelease rec {
     sha256 = "sha256-RcqqNNNCR4cxETUCyjChkpq+cQ1QzNOHHzdqBLtOc6g=";
   };
 
+  preFixup = if (cookieFile != null) then ''
+    # There's no way to use a subprocess to cat the content of the
+    # file cookie using wrapProgram: it gets escaped (by design) with
+    # a pair of backticks :(
+    # We have to come up with our own custom wrapper to do this.
+    function wrapWithCookie () {
+        local hidden
+        hidden="$(dirname "$1")/.$(basename "$1")"-wrapped
+        while [ -e "$hidden" ]; do
+            hidden="''${hidden}_"
+        done
+        mv "$1" "''${hidden}"
+
+        cat > "$1" << EOF
+    #!${bash}/bin/bash
+    export RELEASE_COOKIE="\$(cat "${cookieFile}")"
+    exec -a "\$0" "''${hidden}" "\$@"
+    EOF
+        chmod +x "$1"
+    }
+
+    for f in "$out"/bin/*; do
+        if [[ -x "$f" ]]; then
+            wrapWithCookie "$f"
+        fi
+    done
+  '' else "";
+
   mixNixDeps = import ./mix.nix {
     inherit beamPackages lib;
     overrides = (final: prev: {
diff --git a/nixpkgs/pkgs/servers/plex/raw.nix b/nixpkgs/pkgs/servers/plex/raw.nix
index f46e1c9269ee..861d66b3d04f 100644
--- a/nixpkgs/pkgs/servers/plex/raw.nix
+++ b/nixpkgs/pkgs/servers/plex/raw.nix
@@ -12,16 +12,16 @@
 # server, and the FHS userenv and corresponding NixOS module should
 # automatically pick up the changes.
 stdenv.mkDerivation rec {
-  version = "1.25.6.5577-c8bd13540";
+  version = "1.25.8.5663-e071c3d62";
   pname = "plexmediaserver";
 
   # Fetch the source
   src = if stdenv.hostPlatform.system == "aarch64-linux" then fetchurl {
     url = "https://downloads.plex.tv/plex-media-server-new/${version}/debian/plexmediaserver_${version}_arm64.deb";
-    hash = "sha256-5z9Yl2pHrIrf9LQ3kzYJc372NeVsrP4dHTJglrh1Nw8=";
+    hash = "sha256-w9k8phyiA/sK+zRlK8PAciebt5UJvmVFA+cfx4r78Gs=";
   } else fetchurl {
     url = "https://downloads.plex.tv/plex-media-server-new/${version}/debian/plexmediaserver_${version}_amd64.deb";
-    hash = "sha256-nPjxknyhJNosXmhtvQVvYlNMBdSug8hhwrsVIEiBCG0=";
+    hash = "sha256-baOofe+7PZfLhwIXrB1ibKkkEJRVivgGHDN4phlg57Q=";
   };
 
   outputs = [ "out" "basedb" ];
diff --git a/nixpkgs/pkgs/servers/pr-tracker/default.nix b/nixpkgs/pkgs/servers/pr-tracker/default.nix
index d7bb27b4f29b..33ce80cdaaf5 100644
--- a/nixpkgs/pkgs/servers/pr-tracker/default.nix
+++ b/nixpkgs/pkgs/servers/pr-tracker/default.nix
@@ -8,14 +8,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "pr-tracker";
-  version = "1.1.0";
+  version = "1.2.0";
 
   src = fetchurl {
     url = "https://git.qyliss.net/pr-tracker/snapshot/pr-tracker-${version}.tar.xz";
-    sha256 = "0881ckb4y762isisf9d6xk6fh9207xi1i04kays298zx2dq6gh6h";
+    sha256 = "sha256-Tru9DsitRQLiO4Ln70J9LvkEqcj2i4A+eArBvIhd/ls=";
   };
 
-  cargoSha256 = "0r8pxg65s5jv95a0g8pzr693za7jfb4rv0wc739lkbpf0dssw8sr";
+  cargoSha256 = "0q3ibxnzw8gngvrgfkv4m64dr411c511xkvb6j9k63vhy9vwarz7";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ openssl systemd ];
diff --git a/nixpkgs/pkgs/servers/ps3netsrv/default.nix b/nixpkgs/pkgs/servers/ps3netsrv/default.nix
index 6ee0e3ea366b..12c4e2545a5a 100644
--- a/nixpkgs/pkgs/servers/ps3netsrv/default.nix
+++ b/nixpkgs/pkgs/servers/ps3netsrv/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchgit }:
+{ lib, stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation {
   pname = "ps3netsrv";
@@ -6,11 +6,12 @@ stdenv.mkDerivation {
 
   enableParallelBuilding = true;
 
-  src = fetchgit {
-    url = "https://github.com/dirkvdb/ps3netsrv--";
-    fetchSubmodules = true;
+  src = fetchFromGitHub {
+    owner = "dirkvdb";
+    repo = "ps3netsrv--";
     rev = "e54a66cbf142b86e2cffc1701984b95adb921e81";
-    sha256 = "09hvmfzqy2jckpsml0z1gkcnar8sigmgs1q66k718fph2d3g54sa";
+    sha256 = "sha256-SpPyRhPwOhTONAYH/eqLGmVl2XzhA1r1nUwKj7+rGyY=";
+    fetchSubmodules = true;
   };
 
   buildPhase = "make CXX=$CXX";
diff --git a/nixpkgs/pkgs/servers/rippled/data-api.nix b/nixpkgs/pkgs/servers/rippled/data-api.nix
index a2de1d8fad3a..b0d63905ff96 100644
--- a/nixpkgs/pkgs/servers/rippled/data-api.nix
+++ b/nixpkgs/pkgs/servers/rippled/data-api.nix
@@ -1,4 +1,4 @@
-{ lib, fetchgit, nodePackages }:
+{ lib, fetchFromGitHub, nodePackages }:
 
 with lib;
 
@@ -6,13 +6,13 @@ let
   np = nodePackages.override { generated = ./package.nix; self = np; };
 in nodePackages.buildNodePackage rec {
   pname = "ripple-data-api";
-  version = lib.strings.substring 0 7 rev;
-  rev = "c56b860105f36c1c44ae011189d495272648c589";
+  version = "unstable-2015-03-26";
 
-  src = fetchgit {
-    url = "https://github.com/ripple/ripple-data-api.git";
-    inherit rev;
-    sha256 = "1iygp26ilradxj268g1l2y93cgrpchqwn71qdag67lv273dbq48m";
+  src = fetchFromGitHub {
+    owner = "ripple";
+    repo = "ripple-data-api";
+    rev = "c56b860105f36c1c44ae011189d495272648c589";
+    sha256 = "sha256-QEBdYdW55sAz6jshIAr2dSfXuqE/vqA2/kBeoxf75a8=";
   };
 
   deps = (filter (v: nixType v == "derivation") (attrValues np));
diff --git a/nixpkgs/pkgs/servers/roon-bridge/default.nix b/nixpkgs/pkgs/servers/roon-bridge/default.nix
index 9b896cd2a116..2607ade99310 100644
--- a/nixpkgs/pkgs/servers/roon-bridge/default.nix
+++ b/nixpkgs/pkgs/servers/roon-bridge/default.nix
@@ -11,24 +11,23 @@
 }:
 stdenv.mkDerivation rec {
   pname = "roon-bridge";
-  version = "1.8-880";
+  version = "1.8-918";
 
   src =
     let
       urlVersion = builtins.replaceStrings [ "." "-" ] [ "00" "00" ] version;
       inherit (stdenv.targetPlatform) system;
-      noSuchSystem = throw "Unsupposed system: ${system}";
     in
       {
         x86_64-linux = fetchurl {
           url = "http://download.roonlabs.com/builds/RoonBridge_linuxx64_${urlVersion}.tar.bz2";
-          sha256 = "sha256-YTLy3D1CQR1hlsGw2MmZtxHT82T0PCYZxD4adt2m1+o=";
+          hash = "sha256-Tx8KmGKh6BNoo2RKJm0HfPHRXiFsz+FtX5gQZ1FCEEg=";
         };
         aarch64-linux = fetchurl {
           url = "http://download.roonlabs.com/builds/RoonBridge_linuxarmv8_${urlVersion}.tar.bz2";
-          sha256 = "sha256-aCQtYMUIzwhmYJW4a8cFzIRuxyMVIkeaJH4w1Lasp3M=";
+          hash = "sha256-UkdAs+/l9c4j8PNlAZfNNCJogjxZItcDikS+tOjYjA0=";
         };
-      }.${system} or noSuchSystem;
+      }.${system} or (throw "Unsupposed system: ${system}");
 
   dontConfigure = true;
   dontBuild = true;
diff --git a/nixpkgs/pkgs/servers/roon-server/default.nix b/nixpkgs/pkgs/servers/roon-server/default.nix
index b92d871852de..8decbf1341b6 100644
--- a/nixpkgs/pkgs/servers/roon-server/default.nix
+++ b/nixpkgs/pkgs/servers/roon-server/default.nix
@@ -9,13 +9,14 @@
 , krb5
 , lib
 , libtasn1
+, lttng-ust_2_12
 , makeWrapper
-, stdenv
 , openssl
+, stdenv
 }:
 stdenv.mkDerivation rec {
   pname = "roon-server";
-  version = "1.8-903";
+  version = "1.8-923";
 
   src =
     let
@@ -23,7 +24,7 @@ stdenv.mkDerivation rec {
     in
     fetchurl {
       url = "http://download.roonlabs.com/builds/RoonServer_linuxx64_${urlVersion}.tar.bz2";
-      sha256 = "sha256-FkB3sh1uwOctBOAW7eO8HFNr9a9RG3Yq4hKKscYYER4=";
+      hash = "sha256-txf8W7SoPb20S7KcQDfExPEn5dubu9JVEX89dWngYFU=";
     };
 
   dontConfigure = true;
@@ -34,6 +35,7 @@ stdenv.mkDerivation rec {
     freetype
     krb5
     libtasn1
+    lttng-ust_2_12
     stdenv.cc.cc.lib
   ];
 
@@ -82,10 +84,6 @@ stdenv.mkDerivation rec {
       mkdir -p $out/bin
       makeWrapper "$out/Server/RoonServer" "$out/bin/RoonServer" --run "cd $out"
 
-      # This is unused and depends on an ancient version of lttng-ust, so we
-      # just patch it out
-      patchelf --remove-needed liblttng-ust.so.0 $out/RoonDotnet/shared/Microsoft.NETCore.App/5.0.0/libcoreclrtraceptprovider.so
-
       runHook postInstall
     '';
 
diff --git a/nixpkgs/pkgs/servers/sabnzbd/default.nix b/nixpkgs/pkgs/servers/sabnzbd/default.nix
index 2dc2d76c891d..5f12ae0ee95b 100644
--- a/nixpkgs/pkgs/servers/sabnzbd/default.nix
+++ b/nixpkgs/pkgs/servers/sabnzbd/default.nix
@@ -24,14 +24,14 @@ let
   ]);
   path = lib.makeBinPath [ par2cmdline unrar unzip p7zip ];
 in stdenv.mkDerivation rec {
-  version = "3.5.1";
+  version = "3.5.3";
   pname = "sabnzbd";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "sha256-/HakjY0/oGq3lt0kM5p9n3sZ4g/UDtUNyXNpl9zTFl8=";
+    sha256 = "sha256-pdYTTahdn9YVFreU5KhMGlUzQxHviN5G4TxWKKRBxOc=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/servers/scylladb/default.nix b/nixpkgs/pkgs/servers/scylladb/default.nix
index 2ae3d9f486fb..d44885360f9a 100644
--- a/nixpkgs/pkgs/servers/scylladb/default.nix
+++ b/nixpkgs/pkgs/servers/scylladb/default.nix
@@ -1,6 +1,6 @@
 {
   lib,
-  fetchgit,
+  fetchFromGitHub,
   python3Packages,
   pkg-config,
   gcc8Stdenv,
@@ -34,10 +34,11 @@ gcc8Stdenv.mkDerivation {
   pname = "scylladb";
   version = "3.0.5";
 
-  src = fetchgit {
-    url = "https://github.com/scylladb/scylla.git";
+  src = fetchFromGitHub {
+    owner = "scylladb";
+    repo = "scylla";
     rev = "403f66ecad6bc773712c69c4a80ebd172eb48b13";
-    sha256 = "14mg0kzpkrxvwqyiy19ndy4rsc7s5gnv2gwd3xdwm1lx1ln8ywsi";
+    sha256 = "sha256-UXOPLA2dhspbH40/se0r+jCdiW82BR895rvnef8Er5I=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/servers/sql/materialize/default.nix b/nixpkgs/pkgs/servers/sql/materialize/default.nix
index ce91c322af1d..9dcfb8fe3e5c 100644
--- a/nixpkgs/pkgs/servers/sql/materialize/default.nix
+++ b/nixpkgs/pkgs/servers/sql/materialize/default.nix
@@ -40,17 +40,17 @@ let
 in
 rustPlatform.buildRustPackage rec {
   pname = "materialize";
-  version = "0.15.0";
-  MZ_DEV_BUILD_SHA = "f79f63205649d6011822893c5b55396b2bef7b0b";
+  version = "0.17.0";
+  MZ_DEV_BUILD_SHA = "9f8cf75b461d288335cb6a7a73aaa670bab4a466";
 
   src = fetchFromGitHub {
     owner = "MaterializeInc";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-/A6+0fehBa8XEB8P8QUV5Lsl9Lwfz4FhQLgotvBG1Gw=";
+    hash = "sha256-wKYU5S77VoOX7UA9/d21Puz9NYs/om08eNM69/m3Orc=";
   };
 
-  cargoHash = "sha256-NJvAIy9b39HWJaG860Mlf3WasanUnz+Nq39k4WpddB0=";
+  cargoHash = "sha256-GTkn/fUprkpsDeQxtzdmS7Fub9QODO5/4nh9ERswOY0=";
 
   nativeBuildInputs = [ cmake perl pkg-config ]
     # Provides the mig command used by the krb5-src build script
@@ -71,9 +71,6 @@ rustPlatform.buildRustPackage rec {
     "--skip test_client_subject_and_references"
     "--skip test_no_block"
     "--skip test_safe_mode"
-    # this test is broken on 0.15.0
-    # TODO: re-add it in a subsequent release
-    "--skip test_threads"
     "--skip test_tls"
   ];
 
diff --git a/nixpkgs/pkgs/servers/sql/patroni/default.nix b/nixpkgs/pkgs/servers/sql/patroni/default.nix
index 846e61a5b464..abf84d4bc668 100644
--- a/nixpkgs/pkgs/servers/sql/patroni/default.nix
+++ b/nixpkgs/pkgs/servers/sql/patroni/default.nix
@@ -5,13 +5,13 @@
 
 pythonPackages.buildPythonApplication rec {
   pname = "patroni";
-  version = "2.0.2";
+  version = "2.1.3";
 
   src = fetchFromGitHub {
     owner = "zalando";
     repo = pname;
     rev = "v${version}";
-    sha256 = "048g211njwmgl2v7nx6x5x82b4bbp35n234z7ah10aybm3yrxnc7";
+    sha256 = "sha256-cBkiBrty/6A3rIv9A1oh8GvPjwxhHwYEKuDIsNzHw1g=";
   };
 
   # cdiff renamed to ydiff; remove when patroni source reflects this.
diff --git a/nixpkgs/pkgs/servers/sql/postgresql/ext/pgroonga.nix b/nixpkgs/pkgs/servers/sql/postgresql/ext/pgroonga.nix
index c0d05fc1769f..d4085b00ec51 100644
--- a/nixpkgs/pkgs/servers/sql/postgresql/ext/pgroonga.nix
+++ b/nixpkgs/pkgs/servers/sql/postgresql/ext/pgroonga.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "pgroonga";
-  version = "2.3.4";
+  version = "2.3.5";
 
   src = fetchurl {
     url = "https://packages.groonga.org/source/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-XE669KfHEyY5TghMUC0GcIqdPTsdAs04pA/t84k+i2E=";
+    sha256 = "sha256-Auw9dBS2JVvnsJM00PCfLeDl1M+HOYJRCbD0Bro6dlg=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/servers/squid/default.nix b/nixpkgs/pkgs/servers/squid/default.nix
index dae9d21c7f50..70b9c869f116 100644
--- a/nixpkgs/pkgs/servers/squid/default.nix
+++ b/nixpkgs/pkgs/servers/squid/default.nix
@@ -1,20 +1,20 @@
 { lib, stdenv, fetchurl, perl, openldap, pam, db, cyrus_sasl, libcap
-, expat, libxml2, openssl, pkg-config
+, expat, libxml2, openssl, pkg-config, systemd
 }:
 
 stdenv.mkDerivation rec {
   pname = "squid";
-  version = "4.17";
+  version = "5.4.1";
 
   src = fetchurl {
-    url = "http://www.squid-cache.org/Versions/v4/${pname}-${version}.tar.xz";
-    sha256 = "sha256-y5KKwIx8hrFRscj4J6vhqE2DGBoqhuDVEihhY+HjFBg=";
+    url = "http://www.squid-cache.org/Versions/v5/${pname}-${version}.tar.xz";
+    sha256 = "sha256-300xCpFmOuWcKbD4GD8iYjxeb3MYaa95OAWYerlMpBw=";
   };
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [
     perl openldap db cyrus_sasl expat libxml2 openssl
-  ] ++ lib.optionals stdenv.isLinux [ libcap pam ];
+  ] ++ lib.optionals stdenv.isLinux [ libcap pam systemd ];
 
   configureFlags = [
     "--enable-ipv6"
@@ -26,7 +26,9 @@ stdenv.mkDerivation rec {
     "--enable-removal-policies=lru,heap"
     "--enable-delay-pools"
     "--enable-x-accelerator-vary"
-  ] ++ lib.optional (stdenv.isLinux && !stdenv.hostPlatform.isMusl) "--enable-linux-netfilter";
+    "--enable-htcp"
+  ] ++ lib.optional (stdenv.isLinux && !stdenv.hostPlatform.isMusl)
+    "--enable-linux-netfilter";
 
   meta = with lib; {
     description = "A caching proxy for the Web supporting HTTP, HTTPS, FTP, and more";
diff --git a/nixpkgs/pkgs/servers/tailscale/default.nix b/nixpkgs/pkgs/servers/tailscale/default.nix
index 8decb2f4d296..7c7bb84e15b7 100644
--- a/nixpkgs/pkgs/servers/tailscale/default.nix
+++ b/nixpkgs/pkgs/servers/tailscale/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "tailscale";
-  version = "1.22.1";
+  version = "1.22.2";
 
   src = fetchFromGitHub {
     owner = "tailscale";
     repo = "tailscale";
     rev = "v${version}";
-    sha256 = "sha256-VUML5GwHrRYPd9lnOZuMA3T1SfdC0rVLP5m1yf+SA0A=";
+    sha256 = "sha256-W4BcUDMxUZKFXueSI/Xlml17Jabi/hnnOyXgitao76A=";
   };
 
   nativeBuildInputs = lib.optionals stdenv.isLinux [ makeWrapper ];
diff --git a/nixpkgs/pkgs/servers/teleport/0001-fix-add-nix-path-to-exec-env.patch b/nixpkgs/pkgs/servers/teleport/0001-fix-add-nix-path-to-exec-env.patch
new file mode 100644
index 000000000000..27242b218328
--- /dev/null
+++ b/nixpkgs/pkgs/servers/teleport/0001-fix-add-nix-path-to-exec-env.patch
@@ -0,0 +1,28 @@
+From e3651ca79c0edb66c04e0d3381f3b0b6f76d37d2 Mon Sep 17 00:00:00 2001
+From: 5aaee9 <jiduye@gmail.com>
+Date: Thu, 24 Mar 2022 17:34:38 +0800
+Subject: [PATCH] fix: add nix path to exec env
+
+---
+ lib/srv/exec.go | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/lib/srv/exec.go b/lib/srv/exec.go
+index 253fbafef..815a2e1e0 100644
+--- a/lib/srv/exec.go
++++ b/lib/srv/exec.go
+@@ -41,9 +41,9 @@ import (
+ )
+ 
+ const (
+-	defaultPath          = "/bin:/usr/bin:/usr/local/bin:/sbin"
++	defaultPath          = "/bin:/usr/bin:/usr/local/bin:/sbin:/nix/var/nix/profiles/default/bin:/run/current-system/sw/bin:/run/wrappers/bin"
+ 	defaultEnvPath       = "PATH=" + defaultPath
+-	defaultRootPath      = "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
++	defaultRootPath      = "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/etc/profiles/per-user/root/bin:/nix/var/nix/profiles/default/bin:/run/current-system/sw/bin:/run/wrappers/bin"
+ 	defaultEnvRootPath   = "PATH=" + defaultRootPath
+ 	defaultTerm          = "xterm"
+ 	defaultLoginDefsPath = "/etc/login.defs"
+-- 
+2.32.0 (Apple Git-132)
+
diff --git a/nixpkgs/pkgs/servers/teleport/default.nix b/nixpkgs/pkgs/servers/teleport/default.nix
index ac57cc51339f..9f1348fff19f 100644
--- a/nixpkgs/pkgs/servers/teleport/default.nix
+++ b/nixpkgs/pkgs/servers/teleport/default.nix
@@ -60,6 +60,7 @@ buildGoModule rec {
     ./tsh.patch
     # https://github.com/NixOS/nixpkgs/issues/132652
     ./test.patch
+    ./0001-fix-add-nix-path-to-exec-env.patch
   ];
 
   # Reduce closure size for client machines
diff --git a/nixpkgs/pkgs/servers/traefik/default.nix b/nixpkgs/pkgs/servers/traefik/default.nix
index 2b764f39bf38..2dbed400650a 100644
--- a/nixpkgs/pkgs/servers/traefik/default.nix
+++ b/nixpkgs/pkgs/servers/traefik/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "traefik";
-  version = "2.6.1";
+  version = "2.6.2";
 
   src = fetchzip {
     url = "https://github.com/traefik/traefik/releases/download/v${version}/traefik-v${version}.src.tar.gz";
-    sha256 = "sha256-uaROz7DQcy5FlR9/U/QmanqA1qJPJj/ix725Gnei2U0=";
+    sha256 = "sha256-DVmszzDre0pWXARUqXuqGfY3pX1Ijh33G0Gsdmp8f98=";
     stripRoot = false;
   };
 
-  vendorSha256 = "sha256-H67oCOCkS/xpkCZ4C3BuIzpUKuLvItDqC4tNSNKjv0E=";
+  vendorSha256 = "sha256-tqrfCpZ/fRYZBZ/SBAvvJebLBeD2M/AVJEPiseehJHY=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/servers/u9fs/default.nix b/nixpkgs/pkgs/servers/u9fs/default.nix
index 60dde01e9c63..0f50b1e18dd7 100644
--- a/nixpkgs/pkgs/servers/u9fs/default.nix
+++ b/nixpkgs/pkgs/servers/u9fs/default.nix
@@ -1,24 +1,24 @@
-{ lib, stdenv, fetchhg }:
+{ lib, stdenv, fetchFromBitbucket }:
 
 stdenv.mkDerivation {
   pname = "u9fs";
-  version = "unstable-2020-11-21";
+  version = "unstable-2021-01-25";
 
-  src = fetchhg {
-    url = "https://code.9front.org/hg/plan9front";
-    rev = "6eef4d6a9bce";
-    sha256 = "0irwyk8vnvx0fmz8lmbdb2jrlvas8imr61jr76a1pkwi9wpf2wv6";
+  src = fetchFromBitbucket {
+    owner = "plan9-from-bell-labs";
+    repo = "u9fs";
+    rev = "d65923fd17e8b158350d3ccd6a4e32b89b15014a";
+    sha256 = "0h06l7ciikp3gzrr550z0fyrfp3y2067dfd3rxxw0q95z4l6vhy1";
   };
 
   installPhase = ''
-      mkdir -p $out/bin $out/share/man4
-      cp u9fs.man $out/share/man4
-      cp u9fs $out/bin
+      install -Dm644 u9fs.man "$out/share/man/man4/u9fs.4"
+      install -Dm755 u9fs -t "$out/bin"
     '';
 
   meta = with lib; {
     description = "Serve 9P from Unix";
-    homepage = "http://plan9.bell-labs.com/magic/man2html/4/u9fs";
+    homepage = "http://p9f.org/magic/man2html?man=u9fs&sect=4";
     license = licenses.free;
     maintainers = [ maintainers.ehmry ];
     platforms = platforms.unix;
diff --git a/nixpkgs/pkgs/servers/unifi/default.nix b/nixpkgs/pkgs/servers/unifi/default.nix
index 4902123181da..db4ec8b891d6 100644
--- a/nixpkgs/pkgs/servers/unifi/default.nix
+++ b/nixpkgs/pkgs/servers/unifi/default.nix
@@ -65,7 +65,7 @@ in rec {
   };
 
   unifi7 = generic {
-    version = "7.0.20-894288bd9b";
-    sha256 = "sha256-lDSU4D159svqkv+e61v/RWIyw0KOrF8X0nNpo9eQe50=";
+    version = "7.0.25";
+    sha256 = "sha256-DZi2xy6mS3hfqxX1ikiHKPlJ12eaoZVgyl9jKYt91hg=";
   };
 }
diff --git a/nixpkgs/pkgs/servers/varnish/default.nix b/nixpkgs/pkgs/servers/varnish/default.nix
index 7d52b3a0a266..31884fd80223 100644
--- a/nixpkgs/pkgs/servers/varnish/default.nix
+++ b/nixpkgs/pkgs/servers/varnish/default.nix
@@ -51,15 +51,8 @@ in
     version = "6.0.10";
     sha256 = "1sr60wg5mzjb14y75cga836f19sbmmpgh13mwc4alyg3irsbz1bb";
   };
-  varnish70 = (common {
-    version = "7.0.2";
-    sha256 = "0q9z1iilqwbh5flfy9pl18kxv0yjs5z91c4j81z5pgyjd9d4jjjj";
-  }).overrideAttrs (oA: {
-    patches = [
-      (fetchpatch {
-        url = "https://github.com/varnishcache/varnish-cache/commit/20e007a5b17c1f68f70ab42080de384f9e192900.patch";
-        sha256 = "0vvihbjknb0skdv2ksn2lz89pwmn4f2rjmb6q65cvgnnjfj46s82";
-      })
-    ];
-  });
+  varnish71 = common {
+    version = "7.1.0";
+    sha256 = "1flyqr212jamqpwafdil170vc966r1mbb7n3ngjn8xk6hn3bhjpm";
+  };
 }
diff --git a/nixpkgs/pkgs/servers/varnish/packages.nix b/nixpkgs/pkgs/servers/varnish/packages.nix
index 257b421112ed..60141b138296 100644
--- a/nixpkgs/pkgs/servers/varnish/packages.nix
+++ b/nixpkgs/pkgs/servers/varnish/packages.nix
@@ -1,4 +1,4 @@
-{ callPackages, callPackage, varnish60, varnish70, fetchFromGitHub }: {
+{ callPackages, callPackage, varnish60, varnish71, fetchFromGitHub }: {
   varnish60Packages = rec {
     varnish = varnish60;
     modules = (callPackages ./modules.nix { inherit varnish; }).modules15;
@@ -13,8 +13,8 @@
       sha256 = "1n94slrm6vn3hpymfkla03gw9603jajclg84bjhwb8kxsk3rxpmk";
     };
   };
-  varnish70Packages = rec {
-    varnish = varnish70;
+  varnish71Packages = rec {
+    varnish = varnish71;
     modules = (callPackages ./modules.nix { inherit varnish; }).modules19;
     digest  = callPackage ./digest.nix {
       inherit varnish;
diff --git a/nixpkgs/pkgs/servers/web-apps/morty/default.nix b/nixpkgs/pkgs/servers/web-apps/morty/default.nix
index 04f1e14d5ccf..85731d14d63f 100644
--- a/nixpkgs/pkgs/servers/web-apps/morty/default.nix
+++ b/nixpkgs/pkgs/servers/web-apps/morty/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "morty";
@@ -6,10 +6,11 @@ buildGoPackage rec {
 
   goPackagePath = "github.com/asciimoo/morty";
 
-  src = fetchgit {
+  src = fetchFromGitHub {
+    owner = "asciimoo";
+    repo = "morty";
     rev = "v${version}";
-    url = "https://github.com/asciimoo/morty";
-    sha256 = "1wvrdlwbpzizfg7wrcfyf1x6qllp3aw425n88z516wc9jalfqrrm";
+    sha256 = "sha256-NWfsqJKJcRPKR8gWQbgal1JsenDesczPcz/+uzhtefM=";
   };
 
   goDeps = ./deps.nix;
@@ -37,6 +38,6 @@ buildGoPackage rec {
       * No Caching/Etag
       * Supports GET/POST forms and IFrames
       * Optional HMAC URL verifier key to prevent service abuse
-'';
-   };
+    '';
+  };
 }
diff --git a/nixpkgs/pkgs/servers/web-apps/wordpress/default.nix b/nixpkgs/pkgs/servers/web-apps/wordpress/default.nix
index 343a1c345c62..1e6b40865ee3 100644
--- a/nixpkgs/pkgs/servers/web-apps/wordpress/default.nix
+++ b/nixpkgs/pkgs/servers/web-apps/wordpress/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "wordpress";
-  version = "5.9";
+  version = "5.9.2";
 
   src = fetchurl {
     url = "https://wordpress.org/${pname}-${version}.tar.gz";
-    sha256 = "sha256-RVg45GvS0wqEka6b0lv3Acgu1p28fImAbioTCGjG/7c=";
+    sha256 = "sha256-d2Xy3SpWzpIHmXh8x5BKWF9jNlvKK6D3uwbqIGDGn4s=";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/shells/elvish/default.nix b/nixpkgs/pkgs/shells/elvish/default.nix
index ba03ffb4f455..fc61efc3006c 100644
--- a/nixpkgs/pkgs/shells/elvish/default.nix
+++ b/nixpkgs/pkgs/shells/elvish/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "elvish";
-  version = "0.17.0";
+  version = "0.18.0";
 
   subPackages = [ "cmd/elvish" ];
 
@@ -12,10 +12,10 @@ buildGoModule rec {
     owner = "elves";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-F6yjfsEEBrD6kXUgbMrz+1mxrz0z+sdfeoyztpy7rEk=";
+    sha256 = "sha256-AyTkJiNebpq17vdPluwJBztivezd+c1KAdWFTYYDIFE=";
   };
 
-  vendorSha256 = "sha256-810YVxO1rjeDV1XWvE4RmJjGOMdTlicnv7YbvKtoDbM=";
+  vendorSha256 = "sha256-iuklI7XEQUgZ2ObYRROxyiccZ1JkajK5OJA7hIcpRZQ=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/shells/fish/default.nix b/nixpkgs/pkgs/shells/fish/default.nix
index 622521781c1b..4c45fd3a75f4 100644
--- a/nixpkgs/pkgs/shells/fish/default.nix
+++ b/nixpkgs/pkgs/shells/fish/default.nix
@@ -134,7 +134,7 @@ let
 
   fish = stdenv.mkDerivation rec {
     pname = "fish";
-    version = "3.3.1";
+    version = "3.4.1";
 
     src = fetchurl {
       # There are differences between the release tarball and the tarball GitHub
@@ -144,11 +144,9 @@ let
       # --version`), as well as the local documentation for all builtins (and
       # maybe other things).
       url = "https://github.com/fish-shell/fish-shell/releases/download/${version}/${pname}-${version}.tar.xz";
-      sha256 = "sha256-tbTuGlJpdiy76ZOkvWUH5nXkEAzpu+hCFKXusrGfrok=";
+      sha256 = "sha256-tvI7OEOwTbawqQ/qH28NDkDMAntKcyCYIAhj8oZKlOo=";
     };
 
-    patches = [ ./tests-pcre2-update.patch ]; # should be included in >= 3.4
-
     # Fix FHS paths in tests
     postPatch = ''
       # src/fish_tests.cpp
@@ -182,6 +180,10 @@ let
       rm tests/pexpects/exit.py
       rm tests/pexpects/job_summary.py
       rm tests/pexpects/signals.py
+    '' + lib.optionalString (stdenv.isLinux && stdenv.isAarch64) ''
+      # pexpect tests are flaky on aarch64-linux
+      # See https://github.com/fish-shell/fish-shell/issues/8789
+      rm tests/pexpects/exit_handlers.py
     '';
 
     nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/shells/fish/plugins/forgit.nix b/nixpkgs/pkgs/shells/fish/plugins/forgit.nix
index 5fc647c73ee3..108489071b22 100644
--- a/nixpkgs/pkgs/shells/fish/plugins/forgit.nix
+++ b/nixpkgs/pkgs/shells/fish/plugins/forgit.nix
@@ -2,7 +2,7 @@
 
 buildFishPlugin rec {
   pname = "forgit";
-  version = "unstable-2021-04-09";
+  version = "unstable-2021-12-05";
 
   preFixup = ''
     substituteInPlace $out/share/fish/vendor_conf.d/forgit.plugin.fish \
@@ -13,8 +13,8 @@ buildFishPlugin rec {
   src = fetchFromGitHub {
     owner = "wfxr";
     repo = "forgit";
-    rev = "7806fc3ab37ac479c315eb54b164f67ba9ed17ea";
-    sha256 = "sha256-a7wjuqXe3+y5zlgSLk5J31WoORbieFimvtr0FQHRY5M=";
+    rev = "7b26cd46ac768af51b8dd4b84b6567c4e1c19642";
+    sha256 = "sha256-S/alL3CiyedJ8aGhC2Vg9fmLJYcLxDe4EjQns5dZkKM=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/shells/fish/plugins/hydro.nix b/nixpkgs/pkgs/shells/fish/plugins/hydro.nix
index efc85cfcd0b9..eddb88a225d2 100644
--- a/nixpkgs/pkgs/shells/fish/plugins/hydro.nix
+++ b/nixpkgs/pkgs/shells/fish/plugins/hydro.nix
@@ -2,18 +2,18 @@
 
 buildFishPlugin rec {
   pname = "hydro";
-  version = "d4875065ceea226f58ead97dd9b2417937344d6e";
+  version = "unstable-2022-02-21";
 
   src = fetchFromGitHub {
     owner = "jorgebucaran";
     repo = "hydro";
-    rev = version;
+    rev = "d4875065ceea226f58ead97dd9b2417937344d6e";
     sha256 = "sha256-nXeDnqqOuZyrqGTPEQtYlFvrFvy1bZVMF4CA37b0lsE=";
   };
 
   meta = with lib; {
-    description = "Ultra-pure, lag-free prompt with async Git status.";
-    homepage = "https://github.com/jorgebucaran/hydro`";
+    description = "Ultra-pure, lag-free prompt with async Git status";
+    homepage = "https://github.com/jorgebucaran/hydro";
     license = licenses.mit;
     maintainers = with maintainers; [ mrhedgehog ];
   };
diff --git a/nixpkgs/pkgs/shells/fish/tests-pcre2-update.patch b/nixpkgs/pkgs/shells/fish/tests-pcre2-update.patch
deleted file mode 100644
index 5e0c327c540a..000000000000
--- a/nixpkgs/pkgs/shells/fish/tests-pcre2-update.patch
+++ /dev/null
@@ -1,7 +0,0 @@
-Adapted formating to 3.3.1 from
-https://github.com/fish-shell/fish-shell/commit/ec8844d834cc9fe626e9fc326c6f5410341d532a
---- a/src/fish_tests.cpp
-+++ b/src/fish_tests.cpp
-@@ -5726,2 +5725,0 @@
--        {{L"string", L"match", L"-r", L"(?=ab\\K)", L"ab", 0}, STATUS_CMD_OK, L"\n"},
--        {{L"string", L"match", L"-r", L"(?=ab\\K)..(?=cd\\K)", L"abcd", 0}, STATUS_CMD_OK, L"\n"},
diff --git a/nixpkgs/pkgs/shells/hilbish/default.nix b/nixpkgs/pkgs/shells/hilbish/default.nix
index 08ee5d664fab..c3f5d3516cb8 100644
--- a/nixpkgs/pkgs/shells/hilbish/default.nix
+++ b/nixpkgs/pkgs/shells/hilbish/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "hilbish";
-  version = "1.0.2";
+  version = "1.0.4";
 
   src = fetchFromGitHub {
     owner = "Rosettea";
     repo = "Hilbish";
     rev = "v${version}";
-    sha256 = "sha256-BsN2v6OEWOtk8ENKr5G+lSmNIUA89VfpO+QQoBizx9g=";
+    sha256 = "sha256-JVAyE6iSfRres2YalQF3CWK5Jtn5HoW6p6RHVbwzoVQ=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/shells/zsh/oh-my-zsh/default.nix b/nixpkgs/pkgs/shells/zsh/oh-my-zsh/default.nix
index 1907745fe8d1..82f231405a90 100644
--- a/nixpkgs/pkgs/shells/zsh/oh-my-zsh/default.nix
+++ b/nixpkgs/pkgs/shells/zsh/oh-my-zsh/default.nix
@@ -5,15 +5,15 @@
 , git, nix, nixfmt, jq, coreutils, gnused, curl, cacert }:
 
 stdenv.mkDerivation rec {
-  version = "2022-03-14";
+  version = "2022-03-28";
   pname = "oh-my-zsh";
-  rev = "345976874550efa09fa7e9cdbe1215ce27d1541b";
+  rev = "3f214329d631b3ae39d6b283262c77819a0078de";
 
   src = fetchFromGitHub {
     inherit rev;
     owner = "ohmyzsh";
     repo = "ohmyzsh";
-    sha256 = "AxKt84XDqmkwBlUeWsE6Tm0aRxvv0HXRdBf/OXjIyHo=";
+    sha256 = "rmSS8RnTbraA8yoU70/Mwx7wZ+uGuxkw4MO4BeuLulM=";
   };
 
   installPhase = ''
diff --git a/nixpkgs/pkgs/stdenv/default.nix b/nixpkgs/pkgs/stdenv/default.nix
index 0d328d98ba11..25a593c67437 100644
--- a/nixpkgs/pkgs/stdenv/default.nix
+++ b/nixpkgs/pkgs/stdenv/default.nix
@@ -53,6 +53,7 @@ in
     armv8m-linux = stagesLinux;
     aarch64-linux = stagesLinux;
     mipsel-linux = stagesLinux;
+    mips64el-linux = stagesLinux;
     powerpc-linux = /* stagesLinux */ stagesNative;
     powerpc64-linux = stagesLinux;
     powerpc64le-linux = stagesLinux;
diff --git a/nixpkgs/pkgs/stdenv/generic/check-meta.nix b/nixpkgs/pkgs/stdenv/generic/check-meta.nix
index 40cedd713ab0..8ad5fa6b89bd 100644
--- a/nixpkgs/pkgs/stdenv/generic/check-meta.nix
+++ b/nixpkgs/pkgs/stdenv/generic/check-meta.nix
@@ -240,7 +240,6 @@ let
     outputsToInstall = listOf str;
     position = str;
     available = bool;
-    repositories = attrsOf str;
     isBuildPythonPackage = platforms;
     schedulingPriority = int;
     isFcitxEngine = bool;
diff --git a/nixpkgs/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix b/nixpkgs/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix
index d8ab96952b7f..9fc2300b6efa 100644
--- a/nixpkgs/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix
+++ b/nixpkgs/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix
@@ -17,6 +17,8 @@ in lib.mapAttrs (n: make) (with lib.systems.examples; {
   armv6l-musl  = muslpi;
   aarch64-musl = aarch64-multiplatform-musl;
   riscv64 = riscv64;
+  mips64el-linux-gnuabin32 = mips64el-linux-gnuabin32;
+  mips64el-linux-gnuabi64  = mips64el-linux-gnuabi64;
   powerpc64 = ppc64;
   powerpc64-musl = ppc64-musl;
   powerpc64le = powernv;
diff --git a/nixpkgs/pkgs/test/haskell/shellFor/default.nix b/nixpkgs/pkgs/test/haskell/shellFor/default.nix
index 04f5e0453619..aa06ff6e52f8 100644
--- a/nixpkgs/pkgs/test/haskell/shellFor/default.nix
+++ b/nixpkgs/pkgs/test/haskell/shellFor/default.nix
@@ -2,6 +2,7 @@
 
 (haskellPackages.shellFor {
   packages = p: [ p.constraints p.linear ];
+  extraDependencies = p: { libraryHaskellDepends = [ p.releaser ]; };
   nativeBuildInputs = [ cabal-install ];
   phases = [ "unpackPhase" "buildPhase" "installPhase" ];
   unpackPhase = ''
@@ -16,6 +17,16 @@
     export HOME=$(mktemp -d)
     mkdir -p $HOME/.cabal
     touch $HOME/.cabal/config
+
+    # Check extraDependencies.libraryHaskellDepends arg
+    ghci <<EOF
+    :m + Releaser.Primitives
+    :m + System.IO
+    writeFile "done" "done"
+    EOF
+    [[ done == $(cat done) ]]
+
+    # Check packages arg
     cabal v2-build --offline --verbose constraints linear --ghc-options="-O0 -j$NIX_BUILD_CORES"
   '';
   installPhase = ''
diff --git a/nixpkgs/pkgs/test/mkOption/declare.nix b/nixpkgs/pkgs/test/mkOption/declare.nix
deleted file mode 100644
index 9e89a1c096da..000000000000
--- a/nixpkgs/pkgs/test/mkOption/declare.nix
+++ /dev/null
@@ -1,53 +0,0 @@
-# sets of small configurations:
-# Each configuration
-rec {
-  # has 2 arguments pkgs and this.
-  configA = pkgs: this: {
-    # Can depends on other configuration
-    require = configB;
-
-    # Defines new options
-    optionA = pkgs.lib.mkOption {
-      # With default values
-      default = false;
-      # And merging functions.
-      merge = pkgs.lib.mergeEnableOption;
-    };
-
-    # Add a new definition to other options.
-    optionB = this.optionA;
-  };
-
-  # Can be used for option header.
-  configB = pkgs: this: {
-    # Can depends on more than one configuration.
-    require = [ configC configD ];
-
-    optionB = pkgs.lib.mkOption {
-      default = false;
-    };
-
-    # Is not obliged to define other options.
-  };
-
-  configC = pkgs: this: {
-    require = [ configA ];
-
-    optionC = pkgs.lib.mkOption {
-      default = false;
-    };
-
-    # Use the default value if it is not overwritten.
-    optionA = this.optionC;
-  };
-
-  # Can also be used as option configuration only.
-  # without any arguments (backward compatibility)
-  configD = {
-    # Is not forced to specify the require attribute.
-
-    # Is not force to make new options.
-    optionA = true;
-    optionD = false;
-  };
-}
diff --git a/nixpkgs/pkgs/test/mkOption/keep.nix b/nixpkgs/pkgs/test/mkOption/keep.nix
deleted file mode 100644
index 26fb8c28dd59..000000000000
--- a/nixpkgs/pkgs/test/mkOption/keep.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-let
-  pkgs = import ../../.. {};
-  config = import ./declare.nix;
-in
-  with (pkgs.lib);
-
-  finalReferenceOptionSets
-    filterOptionSets
-    pkgs
-    # List of main configurations.
-    [ config.configB config.configC ]
diff --git a/nixpkgs/pkgs/test/mkOption/keep.ref b/nixpkgs/pkgs/test/mkOption/keep.ref
deleted file mode 100644
index a3a051eb48c4..000000000000
--- a/nixpkgs/pkgs/test/mkOption/keep.ref
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version='1.0' encoding='utf-8'?>
-<expr>
-  <attrs>
-    <attr name="optionA">
-      <list>
-        <attrs>
-          <attr name="_type">
-            <string value="option" />
-          </attr>
-          <attr name="default">
-            <bool value="false" />
-          </attr>
-          <attr name="merge">
-            <unevaluated />
-          </attr>
-          <attr name="name">
-            <string value="optionA" />
-          </attr>
-        </attrs>
-      </list>
-    </attr>
-    <attr name="optionB">
-      <list>
-        <attrs>
-          <attr name="_type">
-            <string value="option" />
-          </attr>
-          <attr name="default">
-            <bool value="false" />
-          </attr>
-          <attr name="name">
-            <string value="optionB" />
-          </attr>
-        </attrs>
-      </list>
-    </attr>
-    <attr name="optionC">
-      <list>
-        <attrs>
-          <attr name="_type">
-            <string value="option" />
-          </attr>
-          <attr name="default">
-            <bool value="false" />
-          </attr>
-          <attr name="name">
-            <string value="optionC" />
-          </attr>
-        </attrs>
-      </list>
-    </attr>
-    <attr name="optionD">
-      <attrs>
-      </attrs>
-    </attr>
-  </attrs>
-</expr>
diff --git a/nixpkgs/pkgs/test/mkOption/merge.nix b/nixpkgs/pkgs/test/mkOption/merge.nix
deleted file mode 100644
index bbf68218aa09..000000000000
--- a/nixpkgs/pkgs/test/mkOption/merge.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-let
-  pkgs = import ../../.. {};
-  config = import ./declare.nix;
-
-  # Define the handler of unbound options.
-  noOption = name: values:
-    builtins.trace "Attribute named '${name}' does not match any option declaration." values;
-in
-  with (pkgs.lib);
-
-  finalReferenceOptionSets
-    (mergeOptionSets noOption)
-    pkgs
-    # List of main configurations.
-    [ config.configB config.configC ]
diff --git a/nixpkgs/pkgs/test/mkOption/merge.ref b/nixpkgs/pkgs/test/mkOption/merge.ref
deleted file mode 100644
index 6956f65dbbcc..000000000000
--- a/nixpkgs/pkgs/test/mkOption/merge.ref
+++ /dev/null
@@ -1,20 +0,0 @@
-trace: Str("Attribute named 'optionD' does not match any option declaration.",[])
-<?xml version='1.0' encoding='utf-8'?>
-<expr>
-  <attrs>
-    <attr name="optionA">
-      <bool value="true" />
-    </attr>
-    <attr name="optionB">
-      <bool value="true" />
-    </attr>
-    <attr name="optionC">
-      <bool value="false" />
-    </attr>
-    <attr name="optionD">
-      <list>
-        <bool value="false" />
-      </list>
-    </attr>
-  </attrs>
-</expr>
diff --git a/nixpkgs/pkgs/test/mkOption/test.sh b/nixpkgs/pkgs/test/mkOption/test.sh
deleted file mode 100755
index 5478846d563f..000000000000
--- a/nixpkgs/pkgs/test/mkOption/test.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#! /bin/sh -e
-
-echo 1>&2 "Test: Merge of option bindings."
-nix-instantiate merge.nix --eval-only --strict --xml >& merge.out
-diff merge.ref merge.out
-
-echo 1>&2 "Test: Filter of option declarations."
-nix-instantiate keep.nix --eval-only --strict --xml >& keep.out
-diff keep.ref keep.out
diff --git a/nixpkgs/pkgs/test/nixos-functions/default.nix b/nixpkgs/pkgs/test/nixos-functions/default.nix
index 6a4f3164f929..a59160511b91 100644
--- a/nixpkgs/pkgs/test/nixos-functions/default.nix
+++ b/nixpkgs/pkgs/test/nixos-functions/default.nix
@@ -26,14 +26,14 @@ in lib.optionalAttrs stdenv.hostPlatform.isLinux (
       fileSystems."/".device = "/dev/null";
     }).toplevel;
 
-    nixosTest-test = pkgs.nixosTest ({ lib, pkgs, ... }: {
+    nixosTest-test = pkgs.nixosTest ({ lib, pkgs, figlet, ... }: {
       name = "nixosTest-test";
       machine = { pkgs, ... }: {
         system.nixos = dummyVersioning;
-        environment.systemPackages = [ pkgs.hello ];
+        environment.systemPackages = [ pkgs.hello figlet ];
       };
       testScript = ''
-        machine.succeed("hello")
+        machine.succeed("hello | figlet >/dev/console")
       '';
     });
 
diff --git a/nixpkgs/pkgs/tools/X11/jumpapp/default.nix b/nixpkgs/pkgs/tools/X11/jumpapp/default.nix
index c152a72a23d8..cce6ced7573d 100644
--- a/nixpkgs/pkgs/tools/X11/jumpapp/default.nix
+++ b/nixpkgs/pkgs/tools/X11/jumpapp/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "jumpapp";
-  version = "1.1";
+  version = "1.2";
 
   src = fetchFromGitHub {
     owner = "mkropat";
     repo = "jumpapp";
     rev = "v${version}";
-    sha256 = "1jrk4mm42sz6ca2gkb6w3dad53d4im4shpgsq8s4vr6xpl3b43ry";
+    sha256 = "sha256-9sh0+zpDxwqRGC1jUgGTDdSDRdAFsL12mQ/Opwh/UBc=";
   };
 
   makeFlags = [ "PREFIX=$(out)" ];
diff --git a/nixpkgs/pkgs/tools/X11/xkeysnail/browser-emacs-bindings.py b/nixpkgs/pkgs/tools/X11/xkeysnail/browser-emacs-bindings.py
index 697ad87a1b77..899a176fb0e3 100644
--- a/nixpkgs/pkgs/tools/X11/xkeysnail/browser-emacs-bindings.py
+++ b/nixpkgs/pkgs/tools/X11/xkeysnail/browser-emacs-bindings.py
@@ -3,26 +3,24 @@ import re
 from xkeysnail.transform import *
 
 aa = False
-def a_setvar(v):
-    def _setvar():
+def aa_setvar(v):
+    def _aa_setvar():
         transform._mark_set = False
         global aa; aa = v
-    return _setvar
-def a_ifvar():
-    def _ifvar():
+    return _aa_setvar
+def aa_ifvar():
+    def _aa_ifvar():
         transform._mark_set = False
         global aa
-        if aa:
-            aa = False
-            return K("esc")
+        if aa: aa = False; return K("esc")
         return K("enter")
-    return _ifvar
-def a_flipmark():
-    def _flipmark():
+    return _aa_ifvar
+def aa_flipmark():
+    def _aa_flipmark():
         transform._mark_set = not transform._mark_set;
-    return _flipmark
+    return _aa_flipmark
 
-define_keymap(re.compile("Google-chrome|Chromium-browser|Firefox"), {
+define_keymap(re.compile("Google-chrome|Chromium-browser|firefox-default"), {
     K("C-b"): with_mark(K("left")),
     K("C-f"): with_mark(K("right")),
     K("C-p"): with_mark(K("up")),
@@ -41,15 +39,15 @@ define_keymap(re.compile("Google-chrome|Chromium-browser|Firefox"), {
     K("M-backspace"): [K("C-backspace"), set_mark(False)],
 
     K("C-slash"): [K("C-z"), set_mark(False)],
-    K("C-space"): a_flipmark(),
+    K("C-space"): aa_flipmark(),
     K("C-M-space"): with_or_set_mark(K("C-right")),
 
     # K("C-s"): K("F3"),
     # K("C-r"): K("Shift-F3"),
     # K("C-g"): [K("esc"), set_mark(False)]
 
-    K("C-s"): [K("F3"), a_setvar(True)],
-    K("C-r"): [K("Shift-F3"), a_setvar(True)],
-    K("C-g"): [K("esc"), a_setvar(False)],
-    K("enter"): a_ifvar()
+    K("C-s"): [K("F3"), aa_setvar(True)],
+    K("C-r"): [K("Shift-F3"), aa_setvar(True)],
+    K("C-g"): [K("esc"), aa_setvar(False)],
+    K("enter"): aa_ifvar()
 })
diff --git a/nixpkgs/pkgs/tools/admin/aliyun-cli/default.nix b/nixpkgs/pkgs/tools/admin/aliyun-cli/default.nix
index 94f793f47fd6..58fb1bd27cd4 100644
--- a/nixpkgs/pkgs/tools/admin/aliyun-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/aliyun-cli/default.nix
@@ -2,14 +2,14 @@
 
 buildGoModule rec {
   pname = "aliyun-cli";
-  version = "3.0.112";
+  version = "3.0.113";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "aliyun";
     repo = pname;
     fetchSubmodules = true;
-    sha256 = "sha256-gzZFxZMLq0TS8bxnQTTEno6OdAu/5tqr0Tl1cF8Rm3c=";
+    sha256 = "sha256-+ZbfWFAf7G5mwtSgfGe/oslqIbOqqiwdtP9mWx/3u4w=";
   };
 
   vendorSha256 = "sha256-FQvBq8+80h7m271gjraV445ayWcpkemOtVswfmHzUM0=";
diff --git a/nixpkgs/pkgs/tools/admin/aws-vault/default.nix b/nixpkgs/pkgs/tools/admin/aws-vault/default.nix
index 7462f3506fd5..f861a22d8123 100644
--- a/nixpkgs/pkgs/tools/admin/aws-vault/default.nix
+++ b/nixpkgs/pkgs/tools/admin/aws-vault/default.nix
@@ -7,16 +7,16 @@
 }:
 buildGoModule rec {
   pname = "aws-vault";
-  version = "6.5.0";
+  version = "6.6.0";
 
   src = fetchFromGitHub {
     owner = "99designs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-PYaCbefIglzvBTeFnyz+uQnFxE61cBMWvC3RdV8rq90=";
+    sha256 = "sha256-wJVbB1MPSKX8/gTX29ThPDxJJRW79+PDwhGDGODtRko=";
   };
 
-  vendorSha256 = "sha256-GTP6KqAfESrdrtLkerRLmre2tBkG4CXMcfxL/flgya0=";
+  vendorSha256 = "sha256-h9qGrb2UxtdKewBsWNcir4YfjUNczYP+WiNoWx45w30=";
 
   nativeBuildInputs = [ installShellFiles makeWrapper ];
 
diff --git a/nixpkgs/pkgs/tools/admin/bash-my-aws/default.nix b/nixpkgs/pkgs/tools/admin/bash-my-aws/default.nix
index 7d2f878f742d..9ca14bbe3376 100644
--- a/nixpkgs/pkgs/tools/admin/bash-my-aws/default.nix
+++ b/nixpkgs/pkgs/tools/admin/bash-my-aws/default.nix
@@ -3,19 +3,20 @@
 , awscli
 , jq
 , unixtools
-, fetchgit
+, fetchFromGitHub
 , installShellFiles
 , bashInteractive
 }:
 
 stdenv.mkDerivation rec {
   pname = "bash-my-aws";
-  version = "20200111";
+  version = "unstable-2020-01-11";
 
-  src = fetchgit {
-    url = "https://github.com/bash-my-aws/bash-my-aws";
+  src = fetchFromGitHub {
+    owner = "bash-my-aws";
+    repo = "bash-my-aws";
     rev = "5a97ce2c22affca1299022a5afa109d7b62242ba";
-    sha256 = "459bda8b244af059d96c7c8b916cf956b01cb2732d1c2888a3ae06a4d660bea6";
+    sha256 = "sha256-RZvaiyRK8FnZbHyLkWz5VrAcsnMtHCiIo64GpNZgvqY=";
   };
 
   dontConfigure = true;
diff --git a/nixpkgs/pkgs/tools/admin/berglas/default.nix b/nixpkgs/pkgs/tools/admin/berglas/default.nix
index 8a6bb559041b..bf86a5c02ecf 100644
--- a/nixpkgs/pkgs/tools/admin/berglas/default.nix
+++ b/nixpkgs/pkgs/tools/admin/berglas/default.nix
@@ -1,19 +1,44 @@
 { lib, buildGoModule, fetchFromGitHub }:
 
+let
+  skipTests = {
+    access = "Access";
+    create = "Create";
+    delete = "Delete";
+    list = "List";
+    read = "Read";
+    replace = "Replace";
+    resolver = "Resolve";
+    revoke = "Revoke";
+    update = "Update";
+  };
+
+  skipTestsCommand =
+    builtins.foldl' (acc: goFileName:
+      let testName = builtins.getAttr goFileName skipTests; in
+      ''
+        ${acc}
+        substituteInPlace pkg/berglas/${goFileName}_test.go \
+          --replace "TestClient_${testName}_storage" "SkipClient_${testName}_storage" \
+          --replace "TestClient_${testName}_secretManager" "SkipClient_${testName}_secretManager"
+      ''
+    ) "" (builtins.attrNames skipTests);
+in
+
 buildGoModule rec {
   pname = "berglas";
-  version = "0.5.1";
+  version = "0.6.2";
 
   src = fetchFromGitHub {
     owner = "GoogleCloudPlatform";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0y393g36h35zzqyf5b10j6qq2jhvz83j17cmasnv6wbyrb3vnn0n";
+    sha256 = "sha256-aLsrrK+z080qn7L2zggA8yD+QqLaSRJLTjWQnFKFogQ=";
   };
 
-  vendorSha256 = null;
+  vendorSha256 = "sha256-HjZT0jezJzoEvXuzrjoTv/zSex+xDuGoP1h82CIlX14=";
 
-  doCheck = false;
+  postPatch = skipTestsCommand;
 
   meta = with lib; {
     description = "A tool for managing secrets on Google Cloud";
diff --git a/nixpkgs/pkgs/tools/admin/eksctl/default.nix b/nixpkgs/pkgs/tools/admin/eksctl/default.nix
index 035dfe183e60..eaf7ac1da6d4 100644
--- a/nixpkgs/pkgs/tools/admin/eksctl/default.nix
+++ b/nixpkgs/pkgs/tools/admin/eksctl/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "eksctl";
-  version = "0.87.0";
+  version = "0.89.0";
 
   src = fetchFromGitHub {
     owner = "weaveworks";
     repo = pname;
     rev = version;
-    sha256 = "sha256-909cInKo6X8yzpXlumDYIi8yCYLqr1CVcsGgYSd2pnQ=";
+    sha256 = "sha256-8Cdvt+WB/Tl5jFNRlE2t62Y7O0QIxtZWF8F/dLDSqkw=";
   };
 
-  vendorSha256 = "sha256-3pEKG5YW83YMSkAjiJQDW1eQbMl6SkokHTXn+kJ/3l4=";
+  vendorSha256 = "sha256-SJowSDvthxwfAyMSRtNkQbyOy8L5HjkVRkxG/L4/dLc=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/admin/exoscale-cli/default.nix b/nixpkgs/pkgs/tools/admin/exoscale-cli/default.nix
index 529871683f69..f1a420b0c100 100644
--- a/nixpkgs/pkgs/tools/admin/exoscale-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/exoscale-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   pname = "exoscale-cli";
-  version = "1.51.1";
+  version = "1.52.0";
 
   src = fetchFromGitHub {
     owner  = "exoscale";
     repo   = "cli";
     rev    = "v${version}";
-    sha256 = "sha256-NU4xJTW0KCi8PZAY4cRJijGHCZEn5Z41xNF7+iH01oo=";
+    sha256 = "sha256-uaJt1QS4nDVliIFo11OhQYvOxJMeda0QGuaGZCPRoWk=";
   };
 
   goPackagePath = "github.com/exoscale/cli";
diff --git a/nixpkgs/pkgs/tools/admin/fits-cloudctl/default.nix b/nixpkgs/pkgs/tools/admin/fits-cloudctl/default.nix
index b506d1d678fd..f53315613e7c 100644
--- a/nixpkgs/pkgs/tools/admin/fits-cloudctl/default.nix
+++ b/nixpkgs/pkgs/tools/admin/fits-cloudctl/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "fits-cloudctl";
-  version = "0.10.11";
+  version = "0.10.12";
 
   src = fetchFromGitHub {
     owner = "fi-ts";
     repo = "cloudctl";
     rev = "v${version}";
-    sha256 = "sha256-hGKnQk2OPpHsjbRh/xx3MidbUMio6tYn+oJB0t1a/yM=";
+    sha256 = "sha256-nFxudeJJ5BkfZxSnRquyATHyHwI+7xwfQxiY8cedtis=";
   };
 
   vendorSha256 = "sha256-f35Asf9l6ZfixpjMGzesTsxmANreilMxH2CULMH3b2o=";
diff --git a/nixpkgs/pkgs/tools/admin/lxd/default.nix b/nixpkgs/pkgs/tools/admin/lxd/default.nix
index f726e5669e3d..55267651c9fb 100644
--- a/nixpkgs/pkgs/tools/admin/lxd/default.nix
+++ b/nixpkgs/pkgs/tools/admin/lxd/default.nix
@@ -11,13 +11,13 @@
 
 buildGoPackage rec {
   pname = "lxd";
-  version = "4.23";
+  version = "4.24";
 
   goPackagePath = "github.com/lxc/lxd";
 
   src = fetchurl {
     url = "https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz";
-    sha256 = "sha256-bPzH9MRirgl3b/wkkYIRhEvryvy/5M2Y9LLPqD4IL8U=";
+    sha256 = "sha256-l/rhWhgmvHOkXL+Omt93X9lwIkiGO4pZl95UlOquslI=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/admin/pulumi/data.nix b/nixpkgs/pkgs/tools/admin/pulumi/data.nix
index 7491cff2ab6b..ee0ec6d66287 100644
--- a/nixpkgs/pkgs/tools/admin/pulumi/data.nix
+++ b/nixpkgs/pkgs/tools/admin/pulumi/data.nix
@@ -1,36 +1,36 @@
 # DO NOT EDIT! This file is generated automatically by update.sh
 { }:
 {
-  version = "3.25.1";
+  version = "3.26.1";
   pulumiPkgs = {
     x86_64-linux = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.25.1-linux-x64.tar.gz";
-        sha256 = "0p2cz6hg2xf28pj2w0avi6hz855llm9kg7v422cf0m1b94s4dsbi";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.26.1-linux-x64.tar.gz";
+        sha256 = "0iqm9mk65258f7r7i6gxahqbdcynwg4ayrbhrln6zjfw0ppv1r60";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v4.4.0-linux-amd64.tar.gz";
-        sha256 = "0qywihi3k8505qgpr1j5gmqzyalqrrmxxz1k48ipdank48dkxs8g";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v4.5.0-linux-amd64.tar.gz";
+        sha256 = "16wfnjk9y6zd2pqcn3sk2yhmwbq2zmbdg5yv3a89kdhkal9p785h";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v2.7.0-linux-amd64.tar.gz";
-        sha256 = "12vwwmvjsb9fwjkazvcblizdk5xx0l4499r0rg5lr97h5c1j28al";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v2.8.0-linux-amd64.tar.gz";
+        sha256 = "1mma4wjid806h4jk7mqqjfvs8ysv1l48sq8h9c2rvirqgjf42adk";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.17.0-linux-amd64.tar.gz";
-        sha256 = "0nkz7mcsgv1lbq0gdfs6nix4bmsn4zspn9jgji10jlawrk5l1ps4";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.19.0-linux-amd64.tar.gz";
+        sha256 = "16vg56vyxqid566nzdvcnx0fm70nif31wr71mrx1n6ibk767l00i";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v0.6.0-linux-amd64.tar.gz";
-        sha256 = "0bcmj8z86dqchc9rgnvjy7q0k2pmmd1c155nm4ik1j87ccclia0p";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v0.8.1-linux-amd64.tar.gz";
+        sha256 = "1phy4499vm87hf6bzwfcmn13nkzbwl9l7fj0ih8vd5gsng2bsjqd";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.6.0-linux-amd64.tar.gz";
-        sha256 = "08dvkkf153zkpjr2fz6wdrk4rqzmpfhj8nsmly7crr7d3xjhwqsc";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.7.0-linux-amd64.tar.gz";
+        sha256 = "07zwhy1jfgwqcybyalrlwrqfkddk1xkqgb9g8dmgs2krx8fp9bsv";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.38.0-linux-amd64.tar.gz";
-        sha256 = "1fm0qhbs0ih1rgr2r46fz9fc6vrl1iwk9fd9q5plra93fxjdjdc4";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.0.0-linux-amd64.tar.gz";
+        sha256 = "1h9pypyl6k1qhvwd6vkzahwmva6zbjribfh04rydhw4gn3rhlzrd";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.18.0-linux-amd64.tar.gz";
@@ -41,12 +41,12 @@
         sha256 = "0m89na1gqrb41h1dg5j876g5hp0mfk4g7ij7i4md1szk9fp4820k";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.41.0-linux-amd64.tar.gz";
-        sha256 = "1s9s6a5w18zj0y78ar49mbicz8hjmqmzmw2agnwqwk9zhj35jvz8";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.42.0-linux-amd64.tar.gz";
+        sha256 = "1qyw93a3n3fnr6972iw55nak1wp4kykpzr9fly3fcbiafvra9i1g";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.4.0-linux-amd64.tar.gz";
-        sha256 = "1l97awwfd5hyw1q8wjcdz81blybzqklv9wk9pv1319j0251ddzz3";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.5.0-linux-amd64.tar.gz";
+        sha256 = "0d7m1jq9xanl6126iwill24jysz914ykmr59k0zlyjpafpn1l5vw";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.5.0-linux-amd64.tar.gz";
@@ -69,32 +69,32 @@
         sha256 = "0hnardid0kbzy65dmn7vz8ddy5hq78nf2871zz6srf2hfyiv7qa4";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v3.13.0-linux-amd64.tar.gz";
-        sha256 = "08r3zks93jcpih6zxjmnpvqjsxvfkj3av5a2iwxb87snmsz0jixz";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v4.0.1-linux-amd64.tar.gz";
+        sha256 = "0n1xqsfsqi773lwg9xbvglrd4pfb060fq8llxf06qj8h2imlxx34";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.14.0-linux-amd64.tar.gz";
-        sha256 = "0lhfxqd600rjbdw16jpj5fysdm324kangi85qpwrd6273aylyv09";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.17.0-linux-amd64.tar.gz";
+        sha256 = "1dbkkrb66iz2z66bj6qhhwhaz3s0md1xgm4mgw0bcdlirkrv1kpd";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.10.0-linux-amd64.tar.gz";
-        sha256 = "1lni4wzmdhjbchjjx9z5iqawv4x1bixl3s541h39cr4x3y36m66m";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.10.1-linux-amd64.tar.gz";
+        sha256 = "0bs0haa863a2qwwx140911mh2xprgyv316y98jcm8qbl03lmyzvs";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.5.0-linux-amd64.tar.gz";
-        sha256 = "1zzrzsa07af7x4vwv7zgwkdrfmlhw30dcc7hqj92q4mn6valbn5q";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.6.0-linux-amd64.tar.gz";
+        sha256 = "0s1qyxdkdgy2br2kmpc0ypc6s95cryc0lbpdb9gslsl0q66gn7mk";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.15.0-linux-amd64.tar.gz";
-        sha256 = "0cnwgr358lbrw6ssz8s7m87yniy7q2zhd6pmjhl8x41j1cljwyfa";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.17.1-linux-amd64.tar.gz";
+        sha256 = "10gvqkqyaxna1077rkvlzqq0mhx7zhz5k8x93bgcylv8slqcjx0k";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.7.1-linux-amd64.tar.gz";
-        sha256 = "0qv3a4d6hnpga7lli7xnbwiig56h080hxrxjr8jbqsy9ymsqb39a";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.8.0-linux-amd64.tar.gz";
+        sha256 = "1gfiiwgb51ylwns3mqgnbgm2knrdzvy9r9v23yx0z03ba189d3m9";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.16.0-linux-amd64.tar.gz";
-        sha256 = "1ngpaw5fdlv7hxjnns6ajzj8dqrj3gzkabr5h5hq5dws23x2c999";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.17.0-linux-amd64.tar.gz";
+        sha256 = "0xqvjqykwjgsvp379g1hjzzk64zc34xqm5da8fjhykz0l4q0cv76";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.7.1-linux-amd64.tar.gz";
@@ -117,32 +117,32 @@
         sha256 = "05nfdwgfzi5f3hgj2g6dccaidqf9a9xzlv5vp3cd1rsxd159yk9j";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.4.0-linux-amd64.tar.gz";
-        sha256 = "18f30j0lmf2mrzynrrm068irlm972hc43vkp0205vkb1gvzf872m";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.4.2-linux-amd64.tar.gz";
+        sha256 = "0agf96ji7mzkf4k4axm1v3psm5wkml41714dz88rn0csq0b31ca9";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.4.2-linux-amd64.tar.gz";
-        sha256 = "1l4njlk616ksw29vg5jg6cmn9n31iw8f0h65iwv8f5pbvw64m3n0";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.5.2-linux-amd64.tar.gz";
+        sha256 = "0b3sj2waa3l6x4xrrsf1dq4ax3n7v5r8n0wzmk9cbgmdx97297df";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.14.0-linux-amd64.tar.gz";
-        sha256 = "1b558l11r8a8xj5h2rk1lf761a83jzcbip7zvdg17f7rbyfilw56";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.15.0-linux-amd64.tar.gz";
+        sha256 = "0k230wq144bs51d9w635jc572gix5jr6dhb5ai59pmzsqjiis607";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.4.1-linux-amd64.tar.gz";
-        sha256 = "0k1l6qf85ffbi62r7xs9clgf1g8mch5afrrjagqqb7dwi8sh34xa";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.5.0-linux-amd64.tar.gz";
+        sha256 = "0hr6vb7zbxll20xq31ddqn287w4rykhswfsm56h1r3ffj9kka57y";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.5.0-linux-amd64.tar.gz";
-        sha256 = "1y67dlrkhrp7x2n0bbx7d8in9h4kwjqjdj4jkdbk1i3mfd46wh0k";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.6.0-linux-amd64.tar.gz";
+        sha256 = "12xby9dvgqli00jdwl5f8cxsk1qm1x2khhsj4bjhi5pm756p6j0c";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v4.1.0-linux-amd64.tar.gz";
         sha256 = "0ayb1r9snjqgmczkvz4kjbswr0a98lmpapll4nws9q0rjj2w48y7";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v5.2.0-linux-amd64.tar.gz";
-        sha256 = "08vfycws8gw92q43611dixnww4d80pqqjf6a3xh6zfpfn990vy97";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v5.3.0-linux-amd64.tar.gz";
+        sha256 = "0b340xsxb05c2mrckilmrh8s3bxq7z02rgrdgr02xyfrvv0r8whz";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.2.0-linux-amd64.tar.gz";
@@ -163,32 +163,32 @@
     ];
     x86_64-darwin = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.25.1-darwin-x64.tar.gz";
-        sha256 = "0xfirm2pf765q1sx3h2by6s6d9gra95zq8cahljsj46dxm5gc7n9";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.26.1-darwin-x64.tar.gz";
+        sha256 = "0i4hs7r2gq2dwswnr1cls57lgy3m1b5n3an8mkidixyfgvv3lxmp";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v4.4.0-darwin-amd64.tar.gz";
-        sha256 = "0cpzgbzascmgnzjigmsjs618lv4xnyv1vl1hwab6laryp5832c4h";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v4.5.0-darwin-amd64.tar.gz";
+        sha256 = "0bq8hjcspb8wmyjfn73rzjfqq1clxjx3cwx9yd8v7wjbr2ijrlkz";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v2.7.0-darwin-amd64.tar.gz";
-        sha256 = "0wm7vvbm747iqzhd8lnpq5zirlkcwcka6c3j9x59c7iwq8a3cba5";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v2.8.0-darwin-amd64.tar.gz";
+        sha256 = "04qk7kq7d9g8i00f8fn3rsni284xqh0hcxkf4pp2mw660hm209h6";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.17.0-darwin-amd64.tar.gz";
-        sha256 = "0xp45n9mhg2x9bsxr5i9nx94vwfzvamnc427hi3p2738h2h3vika";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.19.0-darwin-amd64.tar.gz";
+        sha256 = "14skymvy5mf0509v3b8wrmi7n390la9nr859l7afbhxk4cwvq3av";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v0.6.0-darwin-amd64.tar.gz";
-        sha256 = "0vsjiy7sf5brdf1d83n9pb6kpfrphllfndq1f6pfsh7nq7s0xpil";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v0.8.1-darwin-amd64.tar.gz";
+        sha256 = "149wbmpc51qcfsxsffif2ar9pzmg91h33jd3fy23hyfjbqp6yvdz";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.6.0-darwin-amd64.tar.gz";
-        sha256 = "0kmy5hf869pp40x7jlzxx6ghl0k4bn6yhh94x82ndz9syin5q21z";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.7.0-darwin-amd64.tar.gz";
+        sha256 = "0bz177xi0ifhx14jq01i94gdqgjsivikmhrf24y27k96jq7n15ld";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.38.0-darwin-amd64.tar.gz";
-        sha256 = "1fggvxi0salfhi81z9pgchm6pqcw5wh0m5hwgws22clk75x3h4pg";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.0.0-darwin-amd64.tar.gz";
+        sha256 = "1kw005yvima4bjkg5sa8ynixgrcapdbcnxd6s4qpgjli6q4imx8h";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.18.0-darwin-amd64.tar.gz";
@@ -199,12 +199,12 @@
         sha256 = "0fjynq1ilfv6njjyyadhpc9ks8izwif3nf8mnb7wfxchxn7gqbsi";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.41.0-darwin-amd64.tar.gz";
-        sha256 = "1k6pndyk6kh4db3cp92hj1vbglicx81yqxw1bis94d3cr95xr2pv";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.42.0-darwin-amd64.tar.gz";
+        sha256 = "1y874pnf7mw3r37inrdiiz1qjxx4p9dam9ivdv7z7sddfw0305qn";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.4.0-darwin-amd64.tar.gz";
-        sha256 = "0is1dfv0c65sgk2hy5zng9f2jfxkvlp1pjy4ljyic039pvi80137";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.5.0-darwin-amd64.tar.gz";
+        sha256 = "0hyirx7yg53n3v0ywlq2848r64jnclv3wn8kd8mk8sznxh9qmg9n";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.5.0-darwin-amd64.tar.gz";
@@ -227,32 +227,32 @@
         sha256 = "1m5lh59h7nck1flzxs9m4n0ag0klk3jmnpf7hc509vffxs89xnjq";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v3.13.0-darwin-amd64.tar.gz";
-        sha256 = "1d9q2q9br44kkpr7swn2qfg4xvbfb2wixbigixg3vjwz9n0bm4p8";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v4.0.1-darwin-amd64.tar.gz";
+        sha256 = "0i3aysdy7i13fx2a2kpnvd3qpn7vmc2mbln718kks3mikiz26aii";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.14.0-darwin-amd64.tar.gz";
-        sha256 = "1200pb1ix308r5m6514s1b97q567f902c1zc1sfprr1r9psz3x16";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.17.0-darwin-amd64.tar.gz";
+        sha256 = "1cwdy4yr3c7wcj3p0sg1k0q6b6sn0mhlpqkbdi4xfk990d88c78c";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.10.0-darwin-amd64.tar.gz";
-        sha256 = "0i49x5s7sw69y19qmsrbrwhmjv7g07qrs5a3l1l8bsqawif5r65z";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.10.1-darwin-amd64.tar.gz";
+        sha256 = "0a8lycsgk2xawhg9yd6lkbfg7j6v6l3m0llvdzs0drb2k954wbym";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.5.0-darwin-amd64.tar.gz";
-        sha256 = "0mqciml9rzzfpjy7wdqqak1yym2yzilnsjyrpm255q38z77f5nkr";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.6.0-darwin-amd64.tar.gz";
+        sha256 = "026sh6x8jl8krq2vv0vwbrfi4yl4pbwbfliqqhidvv71xqv7igah";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.15.0-darwin-amd64.tar.gz";
-        sha256 = "1616fbs348r539kcmvwxlhzzgdszgb0j2wy7lamqvnm8xw4l53ii";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.17.1-darwin-amd64.tar.gz";
+        sha256 = "1v5dxqc9rl7m3yqxlbklg0bv20l4qvhs86g5lavc1bj46jysr8nk";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.7.1-darwin-amd64.tar.gz";
-        sha256 = "1xminhpv7b4nnvfdy5ahlcfrkan1fsmn0sp6gzkp5y4kkjd4a6vy";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.8.0-darwin-amd64.tar.gz";
+        sha256 = "11r73jfqkc0wgdf66zp6pmgq5packlm4dkjp12a00z6l2s4f0w4h";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.16.0-darwin-amd64.tar.gz";
-        sha256 = "14ab1qsq22c8wyl7k7slxag9g44v3c63qjr8ip5qylbdsxsh7pp7";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.17.0-darwin-amd64.tar.gz";
+        sha256 = "1x13w1j8vm3qvpn99npnsvx7kr5vac8vkrb31jii9difrgwis2wc";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.7.1-darwin-amd64.tar.gz";
@@ -275,32 +275,32 @@
         sha256 = "0q19sh7l1mjl40i5vdsrjfldncxnicalmlgv3yjkw5xpxkgr98z0";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.4.0-darwin-amd64.tar.gz";
-        sha256 = "11k6vbsr2lszipjvpnpspqvj8b0j330cfpmkr5ipws9b02aqpw1c";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.4.2-darwin-amd64.tar.gz";
+        sha256 = "1wmvmhxnjp32kp43fhjp8w9nrb0biki63w23l4zjxsdk7njply7c";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.4.2-darwin-amd64.tar.gz";
-        sha256 = "1cr31yz4nmabncnim6vk8wfqihqrmsjpqgm4gmk8rsn0a21r9iry";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.5.2-darwin-amd64.tar.gz";
+        sha256 = "0digqqr920g2ahmbiyird7kidnk0j04bbzb9nr2p6lgmdd659ayq";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.14.0-darwin-amd64.tar.gz";
-        sha256 = "0dp4jvi3bbbggg7s9lmx8qqdh9nd7iff8r827s2f6js98yakhw9g";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.15.0-darwin-amd64.tar.gz";
+        sha256 = "0b0ynqd7drkycaf7xxx6s9xbm3xp8k18xsrys68hr8gh2nq8s0y9";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.4.1-darwin-amd64.tar.gz";
-        sha256 = "0nzcf84dbiw3chmnwb7d2nl82kkn1scrrjiid1ni75cgwk200m04";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.5.0-darwin-amd64.tar.gz";
+        sha256 = "01pc0qqqcmqc8al0bcnwig3741ln4dril5mv82py6wcy8brhwvyl";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.5.0-darwin-amd64.tar.gz";
-        sha256 = "1xprdbxf8fza4zc2myf9mv3hl79hda0h34fz4yqfawg4spa0q128";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.6.0-darwin-amd64.tar.gz";
+        sha256 = "0sjpvz709ij86r2qn20sagxnv5q78jwq8x7sayr0xs1na433nv16";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v4.1.0-darwin-amd64.tar.gz";
         sha256 = "1jzirnaxy6y862khqf29i25r8qyrpac2kmacs9ny118l77xp33il";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v5.2.0-darwin-amd64.tar.gz";
-        sha256 = "0rfl4hxl72n6d15klykhwzxiyscci9jyy20vprqqs5z5d825xal4";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v5.3.0-darwin-amd64.tar.gz";
+        sha256 = "1dwv4aa5albn8yfyb430klc3w3fsy4pz07lmrppcbzg5mwf22mq1";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.2.0-darwin-amd64.tar.gz";
@@ -321,32 +321,32 @@
     ];
     aarch64-linux = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.25.1-linux-arm64.tar.gz";
-        sha256 = "16vm2kdc53kf6ljb62fx74sl2asj2hg9xnksz582w88xp0mhipw2";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.26.1-linux-arm64.tar.gz";
+        sha256 = "1xnzi2lay5m01krahc42is3vxla3y7si4mwqbnva6xjjla1p9d1v";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v4.4.0-linux-arm64.tar.gz";
-        sha256 = "19byg31lcnh7gk2xqf5601d0xj93p0b9svz6zxvv713d9ny36839";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v4.5.0-linux-arm64.tar.gz";
+        sha256 = "14g4kz6czw886znasl5pw7l2ar84h1dljkalgs9vaxszyhdr7mnw";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v2.7.0-linux-arm64.tar.gz";
-        sha256 = "00f38gmdk6yjbqlmfnjqlk7x9sn8c27svabivq93hr0dc8bv2hzy";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v2.8.0-linux-arm64.tar.gz";
+        sha256 = "1j8akg227w4dxhv5hnxybabxi25i33q6cacgxrkdrd3mvw9hxmba";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.17.0-linux-arm64.tar.gz";
-        sha256 = "13gwhfl11grpv0kqdk3hd1z4mdqxj9czl9cvzkfc7idipim2wi19";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.19.0-linux-arm64.tar.gz";
+        sha256 = "1g6ymjsmxp149cv93sn5843pxlih1dbw16nvv4sn3prl360c4lxa";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v0.6.0-linux-arm64.tar.gz";
-        sha256 = "09475k0qqiwxzgb3xm70wx6w3gr8figrsb7iqbyficfar71mvbf7";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v0.8.1-linux-arm64.tar.gz";
+        sha256 = "0ghgm1p79smlcx5cby34pxl8apwm33n1aqs2lxkgjz9m6895djkx";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.6.0-linux-arm64.tar.gz";
-        sha256 = "1w9mdg3jr5skdljxvm16qnssq94cnwpk24r76rbmh16wxb1l0z6x";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.7.0-linux-arm64.tar.gz";
+        sha256 = "0y519wmpq6iin20kqidw7b2zkqr6zky09lfsi10klbn0gzfpwbl5";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.38.0-linux-arm64.tar.gz";
-        sha256 = "0pxfijmbgwl1srfqhny1wps3qhmjnmi3p5ixffza1a5phffnjzwd";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.0.0-linux-arm64.tar.gz";
+        sha256 = "10ch53avymp9j7f41mapl4ffi005vddy8x39ya1kn682i6a0y1ks";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.18.0-linux-arm64.tar.gz";
@@ -357,12 +357,12 @@
         sha256 = "0a6bmiz6ys1h6n59mw3w7b2g8rhbnr0rb40rwidazvkni0s03yha";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.41.0-linux-arm64.tar.gz";
-        sha256 = "1q4hzzsxraw6f7z2dlqbrlrkambqixyj9bq3fk4napgv6hl77qnh";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.42.0-linux-arm64.tar.gz";
+        sha256 = "1hwbmqjliw9aknp54g72mn0qlikk64l2sbvbydc06q0advsj0wic";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.4.0-linux-arm64.tar.gz";
-        sha256 = "15acmblgl5xdwrm6ikq420h8g88rvqlj34jdrngc47rlimmdh3l6";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.5.0-linux-arm64.tar.gz";
+        sha256 = "03k9xkaji82vbjhm051rd85nmbqv9frjc71cbxm50c70gmam4y6c";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.5.0-linux-arm64.tar.gz";
@@ -385,32 +385,32 @@
         sha256 = "111pia2f5xwkwaqs6p90ri29l5b3ivmahsa1bji4fwyyjyp22h4r";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v3.13.0-linux-arm64.tar.gz";
-        sha256 = "1dy76gsig4gyjg7xzkgb200dlhfvbq2i0zc0002c5vsykc4mji1d";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v4.0.1-linux-arm64.tar.gz";
+        sha256 = "0qpan6zvny2h2ckigwnf4dhsgmnywam1m4d2jp0nj9pm3628pldv";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.14.0-linux-arm64.tar.gz";
-        sha256 = "02gzj3zww0hmdq42d8b65wc12md9r7mygwymcix0f9lwza9gf4l2";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.17.0-linux-arm64.tar.gz";
+        sha256 = "01pgzyy70f77cidh228gs72hybwchp65qvs748482wakjcmf44mn";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.10.0-linux-arm64.tar.gz";
-        sha256 = "0p8lr9iw1h9ax90aivya513bw1dipm7yycqm5094wgx08r2yfvlm";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.10.1-linux-arm64.tar.gz";
+        sha256 = "1lrbl7x7hf1i7xx10cpxz17hihl8b6654wphz8s8g9lp0jryn6am";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.5.0-linux-arm64.tar.gz";
-        sha256 = "0z0ch08xqbyjmizwvgx9jysnp6g3kjjbwh11gbc6vgxacqcajgz3";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.6.0-linux-arm64.tar.gz";
+        sha256 = "1d04bxq8vrxmsiix130lhqys5q1jbgwbdhyhn6rsskk0636hbf71";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.15.0-linux-arm64.tar.gz";
-        sha256 = "1v3pdsdpqzgbsg181g9w0rn3sw1xirljvgvkw0081i9hxvhwq9zq";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.17.1-linux-arm64.tar.gz";
+        sha256 = "0paypln2948dyj6cic3riybl2zpps6ia0pjsv3wjpklp57gfc9h4";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.7.1-linux-arm64.tar.gz";
-        sha256 = "14xqlgy0wy223hg9wp1rc4hbj1pvxrqnzxzv901dqjf5434n6aa0";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.8.0-linux-arm64.tar.gz";
+        sha256 = "1vrz3pm14i5zdmk3yibny2sghxk8kzwb2qi77mjbiyfhbvciy97q";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.16.0-linux-arm64.tar.gz";
-        sha256 = "1y3nzdnh6fil12r0040h6kyyf01dgxjghpp55z49hin3k6yclnq3";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.17.0-linux-arm64.tar.gz";
+        sha256 = "0jvm3g1d3yhghcd14rz1ca7zps8cajw0cy38s1p6lh2c5f1yaqcj";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.7.1-linux-arm64.tar.gz";
@@ -433,32 +433,32 @@
         sha256 = "0j2c23ii4dn9yhpw6nymij65gv82y1xp4gi8lgxxf41b1i9bpb2i";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.4.0-linux-arm64.tar.gz";
-        sha256 = "11k721ri7q36ss3kjvw07ki3snv35li167az6f8zp8h7fdhsrcn7";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.4.2-linux-arm64.tar.gz";
+        sha256 = "1x8v39icapr8iakp9yd50md9dyvj63z7yj93cl3b07qlwr9lcvmv";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.4.2-linux-arm64.tar.gz";
-        sha256 = "1hdf0zwlrc5i3k0vkqc2x8zz0zvwc1idnnai58d4k7f5qr89hg6z";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.5.2-linux-arm64.tar.gz";
+        sha256 = "0dbqyizvx8gxlidiqc390wjfix1hyikpan32q3hq8d4f8342vjks";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.14.0-linux-arm64.tar.gz";
-        sha256 = "0rr2cngqnibbz6d99xswjg7wybgd5xwm8fi6dkqwj51yyrz0izrz";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.15.0-linux-arm64.tar.gz";
+        sha256 = "0x1mjdaaaa40ks8glqq906dbq2x13z760agnfmd5hc3m9swvnczs";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.4.1-linux-arm64.tar.gz";
-        sha256 = "06gdrjnk5jdnzc3jvzxl7iwf6gyyp9bqk1jrljxpkzr0ck8yz01l";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.5.0-linux-arm64.tar.gz";
+        sha256 = "0zqmzfv3pc6j3878c31jfa488kdahcdnra4mqan3lz97jifc3dla";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.5.0-linux-arm64.tar.gz";
-        sha256 = "1hih41dvdpxwh145kghp5xwpv5fn8r0wni8jh12qv5nl6apaa75p";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.6.0-linux-arm64.tar.gz";
+        sha256 = "18cqw5rf4iqfswbdjmj1a7zc4p16dc7m4d4vl2a5wcjybpcvhn6m";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v4.1.0-linux-arm64.tar.gz";
         sha256 = "1275cikf75lnf3d4k4ld0by1r8hr6gq6mih09fsfg98b8f7n16kq";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v5.2.0-linux-arm64.tar.gz";
-        sha256 = "19iv4jp74j87p1hnqc205i9gl45c4jqc025lwgylgplfmmz9iagy";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v5.3.0-linux-arm64.tar.gz";
+        sha256 = "0sqgdxkqrh0d1y53qigzs4wywmvjws0j6av2z19lyc2qwz3gn0hn";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.2.0-linux-arm64.tar.gz";
@@ -479,32 +479,32 @@
     ];
     aarch64-darwin = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.25.1-darwin-arm64.tar.gz";
-        sha256 = "1hg6i58vb4hlrp3s08m26wivhr7dg902nd8g19rmyfvkhvdjkax5";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.26.1-darwin-arm64.tar.gz";
+        sha256 = "1mvinn9106pw2ny27l72fsxswj61c8la12mfxhqnb1q7xha8vqmz";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v4.4.0-darwin-arm64.tar.gz";
-        sha256 = "0z0v4i2k451fi1xz2k4w9cli8g3mc4d7a9b1gkgcs2wpgrfnifly";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v4.5.0-darwin-arm64.tar.gz";
+        sha256 = "0kdljrsb5kk9i1xf1fk461fsb3vbjmcvzvgkjd3yp0xij3fac6al";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v2.7.0-darwin-arm64.tar.gz";
-        sha256 = "0l4mqwap83rk82fnx7djc66mwnllmb49vzhr3kdavdmd5rbw5pd4";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v2.8.0-darwin-arm64.tar.gz";
+        sha256 = "0vimh8zvds4h4r9gg72vjkqqp76kmadcq9iza0winkw3r41z5ja4";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.17.0-darwin-arm64.tar.gz";
-        sha256 = "1q9d00dp61dv4i31c7z3nk9lqpxgyb0w180xfhg4s02vsk9yc8yf";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.19.0-darwin-arm64.tar.gz";
+        sha256 = "1n061d8phk6cjvr24138vqzxs5midfadqgrpmaaknbpykcd3vym3";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v0.6.0-darwin-arm64.tar.gz";
-        sha256 = "1wpsjm191drz8687gv2d4snv8fdrivw3lqklj5cr67jngwiqhirq";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v0.8.1-darwin-arm64.tar.gz";
+        sha256 = "0i8k2z1is7iw6hfgsqfwirby469f8nkczhzvxda48fhwlix6x55d";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.6.0-darwin-arm64.tar.gz";
-        sha256 = "1ni5nlfiqpxid3s416avzgx30wjayi51j0v87hkvpmy38m4p1w18";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.7.0-darwin-arm64.tar.gz";
+        sha256 = "174dk82cx35i9x1f1kavydg3qyqax0lhl7637d2n17ca97xa7y8p";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v4.38.0-darwin-arm64.tar.gz";
-        sha256 = "1b46cksimynk4f7idp37xn95j0is15zfrxwbs4hv9b3rxayg8s30";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.0.0-darwin-arm64.tar.gz";
+        sha256 = "0jqbj8fmdmsvr86vy7w6i89jm6pnhs7nchxarsqrlx1lb3qpg2xq";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.18.0-darwin-arm64.tar.gz";
@@ -515,12 +515,12 @@
         sha256 = "0hlcfyxmjcq3axg35fx1dj081il60rqs7na0wx573gf028g6jj9v";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.41.0-darwin-arm64.tar.gz";
-        sha256 = "13xbscyg7s5cbrrsy5xcl63z31y6aa30r2d8gwchdgla3kqafjmm";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v4.42.0-darwin-arm64.tar.gz";
+        sha256 = "0brsr5hlndds98yap32ccl07y2wb2r00blf3n8k9kd941gls72vk";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.4.0-darwin-arm64.tar.gz";
-        sha256 = "0848db2hv0r5brjdfq1k45bkx7iz0xpwbkmmhg47ymr3g0bhr8db";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v4.5.0-darwin-arm64.tar.gz";
+        sha256 = "18nb6phh9y369c8bj5q0cmari1zy7vq82qdcr2dxxm5vbcg5rvx4";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.5.0-darwin-arm64.tar.gz";
@@ -543,32 +543,32 @@
         sha256 = "12bzicm43l7yvh02v5fx3z8v46l9i7a9f677735xi5rjbmd2an4c";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v3.13.0-darwin-arm64.tar.gz";
-        sha256 = "0jbgcw62hmhm5k8q4k948595nm2qslz7wic66iy0jr6ylhpm7hcz";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v4.0.1-darwin-arm64.tar.gz";
+        sha256 = "0jj35mj57sivi5qsbwv8qm2jginppi192qlx6ashvgm352gia9r1";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.14.0-darwin-arm64.tar.gz";
-        sha256 = "0rh9b19aqw15wzmijyyk7dv38cgf4abp6pk5abx4bp0277vl2a76";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.17.0-darwin-arm64.tar.gz";
+        sha256 = "06lgq9p5mgqaifl4lrr5csbprx0j3khq93x29j4jvq5kw1qa3gc5";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.10.0-darwin-arm64.tar.gz";
-        sha256 = "167f7c7mpyjym0sw71adz5ffd7g8zmn87923xmjlrsz3wm6ybsq7";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v4.10.1-darwin-arm64.tar.gz";
+        sha256 = "1hx8rsf9yysvjg6df8dxzz8kqci000jxzg8wwxjfhcfb9adzjmy8";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.5.0-darwin-arm64.tar.gz";
-        sha256 = "0dc7cpgvb20s6qyyfm2i4hc4rbg8zdv0j92wc397pacd6i6jhvgn";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.6.0-darwin-arm64.tar.gz";
+        sha256 = "0r8bvrnyspmczn38lav7hfhjgkflsiciw8slbs5k3s6z8690dxc2";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.15.0-darwin-arm64.tar.gz";
-        sha256 = "0avmwnxj1m8j3jj5w1ims64lxqgig4z8yxpi76000xrv74w625b2";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.17.1-darwin-arm64.tar.gz";
+        sha256 = "0qva7r2pdbpxjd50ijjckwsbagj46h94s12z05czgj8sfslx8jpz";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.7.1-darwin-arm64.tar.gz";
-        sha256 = "0n0303423gkwi3b6dwzaqmzsbn2rh4vki6n54mmgd44a3cxbhkak";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.8.0-darwin-arm64.tar.gz";
+        sha256 = "058f1j40ar4xh860c3qrm0qaagm69fdmbw14avvrhsmw245cyyzc";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.16.0-darwin-arm64.tar.gz";
-        sha256 = "1n2dh350pwhcvk8vs9mh3g6dijxrg2vh03h9x9fq7qhpgzgxq6km";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.17.0-darwin-arm64.tar.gz";
+        sha256 = "1fz906l37kykbn725p81xpyvpg7ywvqav9r7rxrnc05d338c391d";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.7.1-darwin-arm64.tar.gz";
@@ -591,32 +591,32 @@
         sha256 = "1i5ipmidg0yspayxyglbjaihajhj1bsk46saxkncfrkvqnh4iq50";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.4.0-darwin-arm64.tar.gz";
-        sha256 = "1dx39lm57sc9j715z62v74fw1gpnr8sn71d6a38gib83iiyagl3s";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.4.2-darwin-arm64.tar.gz";
+        sha256 = "1rbig2n5x2lzxpscnja0ya9a68z3jk0qz2zwdnzi66xy7i3zd39l";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.4.2-darwin-arm64.tar.gz";
-        sha256 = "02x584440hw25nbkj880dd113ywdm280frfadyz2psy1sqfi949h";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.5.2-darwin-arm64.tar.gz";
+        sha256 = "1r1ln833jfi7hpyfb0cbg8vgam1wghdgr03m75w4hbds5nllw3zm";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.14.0-darwin-arm64.tar.gz";
-        sha256 = "1nl18z6i2p7dmc4f2i7wfw7ss76kmhb3jc4gfyirzp0qr2v8bs8p";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.15.0-darwin-arm64.tar.gz";
+        sha256 = "14ag3gq6w4yzbrwpy0vqqbr091fs26xvhmwd0v1adjl3sxa0lcqc";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.4.1-darwin-arm64.tar.gz";
-        sha256 = "0i6hzqfvsjiyb1bzv70pwr1716scy60w7f8jkv3ayrxddaw7iwwg";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.5.0-darwin-arm64.tar.gz";
+        sha256 = "0imqi4n21c4xxldkdkxc8239vb4r3l5x0fw8wps6nvpxhdnsflgc";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.5.0-darwin-arm64.tar.gz";
-        sha256 = "0bn8i1271mm3hqqqlidipsfdalxgc2fx8l4apdjin6k1zrnm44p1";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.6.0-darwin-arm64.tar.gz";
+        sha256 = "09sk3z0xlsdj1lvyzfm55p07hxsvnqvc27al0q2mvkj9nmsqqid4";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v4.1.0-darwin-arm64.tar.gz";
         sha256 = "08dhxd39w7wjpqjfy59vxfipjl45psd6yh53h2g025y8hh80gcrs";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v5.2.0-darwin-arm64.tar.gz";
-        sha256 = "0aqicfci56i3i9vkpm0ikg3amkzf7is6r9p2477dqm7gjphl9wmy";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v5.3.0-darwin-arm64.tar.gz";
+        sha256 = "13q9r819wln46hiy2anri44wvxvjigcvfj7dpr3ya69kj17kyr4n";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.2.0-darwin-arm64.tar.gz";
diff --git a/nixpkgs/pkgs/tools/admin/pulumi/update.sh b/nixpkgs/pkgs/tools/admin/pulumi/update.sh
index 91634301c27f..3352f4259662 100755
--- a/nixpkgs/pkgs/tools/admin/pulumi/update.sh
+++ b/nixpkgs/pkgs/tools/admin/pulumi/update.sh
@@ -10,7 +10,7 @@ fi
 
 # Version of Pulumi from
 # https://www.pulumi.com/docs/get-started/install/versions/
-VERSION="3.25.1"
+VERSION="3.26.1"
 
 # An array of plugin names. The respective repository inside Pulumi's
 # Github organization is called pulumi-$name by convention.
diff --git a/nixpkgs/pkgs/tools/admin/salt/default.nix b/nixpkgs/pkgs/tools/admin/salt/default.nix
index 6f7b86f04489..d258337e40e7 100644
--- a/nixpkgs/pkgs/tools/admin/salt/default.nix
+++ b/nixpkgs/pkgs/tools/admin/salt/default.nix
@@ -22,11 +22,11 @@ let
 in
 py.pkgs.buildPythonApplication rec {
   pname = "salt";
-  version = "3004";
+  version = "3004.1";
 
   src = py.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "PVNWG8huAU3KLsPcmBB5vgTVXqBHiQyr3iXlsQv6WxM=";
+    hash = "sha256-fzRKJDJkik8HjapazMaNzf/hCVzqE+wh5QQTVg8Ewpg=";
   };
 
   propagatedBuildInputs = with py.pkgs; [
diff --git a/nixpkgs/pkgs/tools/admin/stripe-cli/default.nix b/nixpkgs/pkgs/tools/admin/stripe-cli/default.nix
index 347f6d6f7cf7..053446554c79 100644
--- a/nixpkgs/pkgs/tools/admin/stripe-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/stripe-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "stripe-cli";
-  version = "1.8.0";
+  version = "1.8.1";
 
   src = fetchFromGitHub {
     owner = "stripe";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-5Dvmlzhu7xqJAcAdyjPJ/iMooK7N+Qv8J93uEySYb/s=";
+    sha256 = "sha256-R1w+dVBIPbmBOhtVWKfB4tS+Jp1/tahRk6rifPM53HA=";
   };
 
   vendorSha256 = "sha256-KgoSJcVUtE4ryJLtQXNCdl51sgO94vyb682OdL5CYw8=";
diff --git a/nixpkgs/pkgs/tools/admin/syft/default.nix b/nixpkgs/pkgs/tools/admin/syft/default.nix
index d4d5ee7348b7..01664c3c1c7f 100644
--- a/nixpkgs/pkgs/tools/admin/syft/default.nix
+++ b/nixpkgs/pkgs/tools/admin/syft/default.nix
@@ -2,27 +2,25 @@
 
 buildGoModule rec {
   pname = "syft";
-  version = "0.41.1";
+  version = "0.42.4";
 
   src = fetchFromGitHub {
     owner = "anchore";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-6ltEC9LCuE4Rj4TlBwsDI45L92XMuCbEuMDkOk8OkZo=";
+    sha256 = "sha256-cHjtANCHEuEthfmPmV5MDw4LYY6XI+aux9Gijld7KGc=";
     # populate values that require us to use git. By doing this in postFetch we
     # can delete .git afterwards and maintain better reproducibility of the src.
     leaveDotGit = true;
     postFetch = ''
       cd "$out"
-      commit="$(git rev-parse HEAD)"
-      source_date_epoch="$(git log --date=format:'%Y-%m-%dT%H:%M:%SZ' -1 --pretty=%ad)"
-      substituteInPlace "$out/internal/version/build.go" \
-        --replace 'gitCommit = valueNotProvided' "gitCommit = \"$commit\"" \
-        --replace 'buildDate = valueNotProvided' "buildDate = \"$source_date_epoch\""
+      git rev-parse HEAD > $out/COMMIT
+      # 0000-00-00T00:00:00Z
+      date -u -d "@$(git log -1 --pretty=%ct)" "+%Y-%m-%dT%H:%M:%SZ" > $out/SOURCE_DATE_EPOCH
       find "$out" -name .git -print0 | xargs -0 rm -rf
     '';
   };
-  vendorSha256 = "sha256-13PcAQlHPaQ1n7OiRSEW5H3rDXgUAmKAQGqQM31iyR8=";
+  vendorSha256 = "sha256-+dul6aMsuObmWU8mu+ZnEcWhHo5ClenEDIhKbg3zjB0=";
 
   nativeBuildInputs = [ installShellFiles ];
 
@@ -32,10 +30,15 @@ buildGoModule rec {
     "-s"
     "-w"
     "-X github.com/anchore/syft/internal/version.version=${version}"
-    "-X github.com/anchore/syft/internal/version.gitTreeState=clean"
     "-X github.com/anchore/syft/internal/version.gitDescription=v${version}"
+    "-X github.com/anchore/syft/internal/version.gitTreeState=clean"
   ];
 
+  preBuild = ''
+    ldflags+=" -X github.com/anchore/syft/internal/version.gitCommit=$(cat COMMIT)"
+    ldflags+=" -X github.com/anchore/syft/internal/version.buildDate=$(cat SOURCE_DATE_EPOCH)"
+  '';
+
   # tests require a running docker instance
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/admin/trinsic-cli/default.nix b/nixpkgs/pkgs/tools/admin/trinsic-cli/default.nix
index d8e084218d43..d280fac0733b 100644
--- a/nixpkgs/pkgs/tools/admin/trinsic-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/trinsic-cli/default.nix
@@ -2,11 +2,11 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "trinsic-cli";
-  version = "1.3.0";
+  version = "1.4.0";
 
   src = fetchurl {
     url = "https://github.com/trinsic-id/sdk/releases/download/v${version}/trinsic-cli-vendor-${version}.tar.gz";
-    sha256 = "4ec8a02cf7cd31822668e97befe96f0a7a32b1103abfe27c1bff643d3bf16588";
+    sha256 = "sha256-Dxmjbd1Q2JNeET22Fte7bygd+oH3ZfovRTJh5xforuw=";
   };
 
   cargoVendorDir = "vendor";
diff --git a/nixpkgs/pkgs/tools/admin/trivy/default.nix b/nixpkgs/pkgs/tools/admin/trivy/default.nix
index 00fa4cc6d65e..b37bdef882a0 100644
--- a/nixpkgs/pkgs/tools/admin/trivy/default.nix
+++ b/nixpkgs/pkgs/tools/admin/trivy/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "trivy";
-  version = "0.24.2";
+  version = "0.24.4";
 
   src = fetchFromGitHub {
     owner = "aquasecurity";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-xMLSou+8kIQVEJlkA7ygv623hvETcEAdyFPR3HJr5ZQ=";
+    sha256 = "sha256-IroWxLfDVkS6mFweQioOxjSBA1yXrcdtqFG0W+Sb8Sc=";
   };
 
-  vendorSha256 = "sha256-qRkxDvrqMVOsz5r3m3I+E0HAVoUwFykkfGzTz9Qc/S4=";
+  vendorSha256 = "sha256-OGwqRrhj/+oCCaXnb2s4N6a+vhTZHwe2HidAn0UaFXM=";
 
   excludedPackages = "misc";
 
diff --git a/nixpkgs/pkgs/tools/archivers/7zz/default.nix b/nixpkgs/pkgs/tools/archivers/7zz/default.nix
index c93a750e48f0..c4ccae0272eb 100644
--- a/nixpkgs/pkgs/tools/archivers/7zz/default.nix
+++ b/nixpkgs/pkgs/tools/archivers/7zz/default.nix
@@ -1,4 +1,14 @@
-{ stdenv, lib, fetchurl, p7zip, uasm, useUasm ? stdenv.isx86_64 }:
+{ stdenv
+, lib
+, fetchurl
+
+, uasm
+, useUasm ? stdenv.isx86_64
+
+  # RAR code is under non-free unRAR license
+  # see the meta.license section below for more details
+, enableUnfree ? false
+}:
 
 let
   inherit (stdenv.hostPlatform) system;
@@ -14,17 +24,38 @@ stdenv.mkDerivation rec {
   version = "21.07";
 
   src = fetchurl {
-    url = "https://7-zip.org/a/7z${lib.replaceStrings [ "." ] [ "" ] version}-src.7z";
-    sha256 = "sha256-0QdNVvQVqrmdmeWXp7ZtxFXbpjSa6KTInfdkdbahKEw=";
+    url = "https://7-zip.org/a/7z${lib.replaceStrings [ "." ] [ "" ] version}-src.tar.xz";
+    sha256 = {
+      free = "sha256-SMM6kQ6AZ05s4miJjMoE4NnsXQ0tlkdWx0q2HKjhaM8=";
+      unfree = "sha256-IT1ZRAfLjvy6NmELFSykkh7aFBYzELQ5A9E+aDE+Hjk=";
+    }.${if enableUnfree then "unfree" else "free"};
+    downloadToTemp = (!enableUnfree);
+    # remove the unRAR related code from the src drv
+    # > the license requires that you agree to these use restrictions,
+    # > or you must remove the software (source and binary) from your hard disks
+    # https://fedoraproject.org/wiki/Licensing:Unrar
+    postFetch = lib.optionalString (!enableUnfree) ''
+      mkdir tmp
+      tar xf $downloadedFile -C ./tmp
+      rm -r ./tmp/CPP/7zip/Compress/Rar*
+      tar cfJ $out -C ./tmp . \
+        --sort=name \
+        --mtime="@$SOURCE_DATE_EPOCH" \
+        --owner=0 --group=0 --numeric-owner \
+        --pax-option=exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime
+    '';
   };
 
   sourceRoot = "CPP/7zip/Bundles/Alone2";
 
-  makeFlags = lib.optionals useUasm [ "MY_ASM=uasm" ];
+  makeFlags =
+    lib.optionals useUasm [ "MY_ASM=uasm" ] ++
+    # it's the compression code with the restriction, see DOC/License.txt
+    lib.optionals (!enableUnfree) [ "DISABLE_RAR_COMPRESS=true" ];
 
   makefile = "../../cmpl_gcc${platformSuffix}.mak";
 
-  nativeBuildInputs = [ p7zip ] ++ lib.optionals useUasm [ uasm ];
+  nativeBuildInputs = lib.optionals useUasm [ uasm ];
 
   enableParallelBuilding = true;
 
@@ -40,14 +71,27 @@ stdenv.mkDerivation rec {
   doInstallCheck = true;
 
   installCheckPhase = ''
+    runHook preInstallCheck
+
     $out/bin/7zz --help | grep ${version}
+
+    runHook postInstallCheck
   '';
 
+  passthru.updateScript = ./update.sh;
+
   meta = with lib; {
     description = "Command line archiver utility";
     homepage = "https://7-zip.org";
-    license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ anna328p peterhoeg ];
+    license = with licenses;
+      # 7zip code is largely lgpl2Plus
+      # CPP/7zip/Compress/LzfseDecoder.cpp is bsd3
+      [ lgpl2Plus /* and */ bsd3 ] ++
+      # and CPP/7zip/Compress/Rar* are unfree with the unRAR license restriction
+      # the unRAR compression code is disabled by default
+      lib.optionals enableUnfree [ unfree ];
+    maintainers = with maintainers; [ anna328p peterhoeg jk ];
     platforms = platforms.linux;
+    mainProgram = "7zz";
   };
 }
diff --git a/nixpkgs/pkgs/tools/archivers/7zz/update.sh b/nixpkgs/pkgs/tools/archivers/7zz/update.sh
new file mode 100755
index 000000000000..bbc9804799ab
--- /dev/null
+++ b/nixpkgs/pkgs/tools/archivers/7zz/update.sh
@@ -0,0 +1,50 @@
+#! /usr/bin/env nix-shell
+#! nix-shell -i bash -p coreutils gnused curl jq
+set -euo pipefail
+cd "$(dirname "${BASH_SOURCE[0]}")"
+
+DRV_DIR="$PWD"
+
+OLD_VERSION="$(sed -nE 's/\s*version = "(.*)".*/\1/p' ./default.nix)"
+
+NEW_VERSION="$(curl "https://sourceforge.net/projects/sevenzip/best_release.json" | jq '.platform_releases.linux.filename' -r | cut -d/ -f3)"
+
+echo "comparing versions $OLD_VERSION => $NEW_VERSION"
+if [[ "$OLD_VERSION" == "$NEW_VERSION" ]]; then
+    echo "Already up to date! Doing nothing"
+    exit 0
+fi
+
+NIXPKGS_ROOT="$(realpath "$DRV_DIR/../../../..")"
+
+echo "getting free source hash"
+OLD_FREE_HASH="$(nix-instantiate --eval --strict -E "with import $NIXPKGS_ROOT {}; _7zz.src.drvAttrs.outputHash" | tr -d '"')"
+echo "getting unfree source hash"
+OLD_UNFREE_HASH="$(nix-instantiate --eval --strict -E "with import $NIXPKGS_ROOT {}; (_7zz.override { enableUnfree = true; }).src.drvAttrs.outputHash" | tr -d '"')"
+
+NEW_VERSION_FORMATTED="$(echo "$NEW_VERSION" | tr -d '.')"
+URL="https://7-zip.org/a/7z${NEW_VERSION_FORMATTED}-src.tar.xz"
+
+
+NEW_FREE_HASH=$(nix-prefetch -f "$NIXPKGS_ROOT" -E "_7zz.src" --url "$URL")
+
+NEW_UNFREE_OUT=$(nix-prefetch -f "$NIXPKGS_ROOT" -E "(_7zz.override { enableUnfree = true; }).src" --url "$URL" --output raw --print-path)
+# first line of raw output is the hash
+NEW_UNFREE_HASH="$(echo "$NEW_UNFREE_OUT" | sed -n 1p)"
+# second line of raw output is the src path
+NEW_UNFREE_SRC="$(echo "$NEW_UNFREE_OUT" | sed -n 2p)"
+# make sure to nuke the unfree src from the updater's machine
+# > the license requires that you agree to these use restrictions, or you must remove the software (source and binary) from your hard disks
+# https://fedoraproject.org/wiki/Licensing:Unrar
+nix-store --delete "$NEW_UNFREE_SRC"
+
+
+echo "updating version"
+sed -i "s/version = \"$OLD_VERSION\";/version = \"$NEW_VERSION\";/" "$DRV_DIR/default.nix"
+
+echo "updating free hash"
+sed -i "s@free = \"$OLD_FREE_HASH\";@free = \"$NEW_FREE_HASH\";@" "$DRV_DIR/default.nix"
+echo "updating unfree hash"
+sed -i "s@unfree = \"$OLD_UNFREE_HASH\";@unfree = \"$NEW_UNFREE_HASH\";@" "$DRV_DIR/default.nix"
+
+echo "done"
diff --git a/nixpkgs/pkgs/tools/archivers/p7zip/default.nix b/nixpkgs/pkgs/tools/archivers/p7zip/default.nix
index 7f892a44da5d..5e92553b636c 100644
--- a/nixpkgs/pkgs/tools/archivers/p7zip/default.nix
+++ b/nixpkgs/pkgs/tools/archivers/p7zip/default.nix
@@ -8,7 +8,18 @@ stdenv.mkDerivation rec {
     owner  = "jinfeihan57";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "sha256-19F4hPV0nKVuFZNbOcXrcA1uW6Y3HQolaHVIYXGmh18=";
+    sha256 = {
+      free = "sha256-DrBuf2VPdcprHI6pMSmL7psm2ofOrUf0Oj0qwMjXzkk=";
+      unfree = "sha256-19F4hPV0nKVuFZNbOcXrcA1uW6Y3HQolaHVIYXGmh18=";
+    }.${if enableUnfree then "unfree" else "free"};
+    # remove the unRAR related code from the src drv
+    # > the license requires that you agree to these use restrictions,
+    # > or you must remove the software (source and binary) from your hard disks
+    # https://fedoraproject.org/wiki/Licensing:Unrar
+    extraPostFetch = lib.optionalString (!enableUnfree) ''
+      rm -r $out/CPP/7zip/Compress/Rar*
+      find $out -name makefile'*' -exec sed -i '/Rar/d' {} +
+    '';
   };
 
   # Default makefile is full of impurities on Darwin. The patch doesn't hurt Linux so I'm leaving it unconditional
@@ -25,11 +36,6 @@ stdenv.mkDerivation rec {
     substituteInPlace makefile.machine \
       --replace 'CC=gcc'  'CC=${stdenv.cc.targetPrefix}gcc' \
       --replace 'CXX=g++' 'CXX=${stdenv.cc.targetPrefix}g++'
-  '' + lib.optionalString (!enableUnfree) ''
-    # Remove non-free RAR source code
-    # (see DOC/License.txt, https://fedoraproject.org/wiki/Licensing:Unrar)
-    rm -r CPP/7zip/Compress/Rar*
-    find . -name makefile'*' -exec sed -i '/Rar/d' {} +
   '';
 
   makeFlags = [ "DEST_HOME=${placeholder "out"}" ];
@@ -46,13 +52,20 @@ stdenv.mkDerivation rec {
 
   NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=c++11-narrowing";
 
-  meta = {
+  passthru.updateScript = ./update.sh;
+
+  meta = with lib; {
     homepage = "https://github.com/jinfeihan57/p7zip";
     description = "A new p7zip fork with additional codecs and improvements (forked from https://sourceforge.net/projects/p7zip/)";
-    platforms = lib.platforms.unix;
-    maintainers = [ lib.maintainers.raskin ];
+    license = with licenses;
+      # p7zip code is largely lgpl2Plus
+      # CPP/7zip/Compress/LzfseDecoder.cpp is bsd3
+      [ lgpl2Plus /* and */ bsd3 ] ++
+      # and CPP/7zip/Compress/Rar* are unfree with the unRAR license restriction
+      # the unRAR compression code is disabled by default
+      lib.optionals enableUnfree [ unfree ];
+    maintainers = with maintainers; [ raskin jk ];
+    platforms = platforms.unix;
     mainProgram = "7z";
-    # RAR code is under non-free UnRAR license, but we remove it
-    license = if enableUnfree then lib.licenses.unfree else lib.licenses.lgpl2Plus;
   };
 }
diff --git a/nixpkgs/pkgs/tools/archivers/p7zip/update.sh b/nixpkgs/pkgs/tools/archivers/p7zip/update.sh
new file mode 100755
index 000000000000..0d4b91e56e80
--- /dev/null
+++ b/nixpkgs/pkgs/tools/archivers/p7zip/update.sh
@@ -0,0 +1,47 @@
+#! /usr/bin/env nix-shell
+#! nix-shell -i bash -p coreutils gnused curl jq
+set -euo pipefail
+cd "$(dirname "${BASH_SOURCE[0]}")"
+
+DRV_DIR="$PWD"
+
+OLD_VERSION="$(sed -nE 's/\s*version = "(.*)".*/\1/p' ./default.nix)"
+
+NEW_VERSION="$(curl https://api.github.com/repos/jinfeihan57/p7zip/releases/latest | jq .tag_name -r | tr -d 'v')"
+
+echo "comparing versions $OLD_VERSION => $NEW_VERSION"
+if [[ "$OLD_VERSION" == "$NEW_VERSION" ]]; then
+    echo "Already up to date! Doing nothing"
+    exit 0
+fi
+
+NIXPKGS_ROOT="$(realpath "$DRV_DIR/../../../..")"
+
+echo "getting free source hash"
+OLD_FREE_HASH="$(nix-instantiate --eval --strict -E "with import $NIXPKGS_ROOT {}; p7zip.src.drvAttrs.outputHash" | tr -d '"')"
+echo "getting unfree source hash"
+OLD_UNFREE_HASH="$(nix-instantiate --eval --strict -E "with import $NIXPKGS_ROOT {}; (p7zip.override { enableUnfree = true; }).src.drvAttrs.outputHash" | tr -d '"')"
+
+
+NEW_FREE_HASH=$(nix-prefetch -f "$NIXPKGS_ROOT" -E "p7zip.src" --rev "v$NEW_VERSION")
+
+NEW_UNFREE_OUT=$(nix-prefetch -f "$NIXPKGS_ROOT" -E "(p7zip.override { enableUnfree = true; }).src" --rev "v$NEW_VERSION" --output raw --print-path)
+# first line of raw output is the hash
+NEW_UNFREE_HASH="$(echo "$NEW_UNFREE_OUT" | sed -n 1p)"
+# second line of raw output is the src path
+NEW_UNFREE_SRC="$(echo "$NEW_UNFREE_OUT" | sed -n 2p)"
+# make sure to nuke the unfree src from the updater's machine
+# > the license requires that you agree to these use restrictions, or you must remove the software (source and binary) from your hard disks
+# https://fedoraproject.org/wiki/Licensing:Unrar
+nix-store --delete "$NEW_UNFREE_SRC"
+
+
+echo "updating version"
+sed -i "s/version = \"$OLD_VERSION\";/version = \"$NEW_VERSION\";/" "$DRV_DIR/default.nix"
+
+echo "updating free hash"
+sed -i "s@free = \"$OLD_FREE_HASH\";@free = \"$NEW_FREE_HASH\";@" "$DRV_DIR/default.nix"
+echo "updating unfree hash"
+sed -i "s@unfree = \"$OLD_UNFREE_HASH\";@unfree = \"$NEW_UNFREE_HASH\";@" "$DRV_DIR/default.nix"
+
+echo "done"
diff --git a/nixpkgs/pkgs/tools/archivers/rar/default.nix b/nixpkgs/pkgs/tools/archivers/rar/default.nix
index a359beb21adf..6f47992b512c 100644
--- a/nixpkgs/pkgs/tools/archivers/rar/default.nix
+++ b/nixpkgs/pkgs/tools/archivers/rar/default.nix
@@ -1,19 +1,24 @@
 { lib, stdenv, fetchurl, autoPatchelfHook, installShellFiles }:
 
 let
-  version = "6.0.2";
+  version = "6.11";
+  downloadVersion = lib.replaceStrings [ "." ] [ "" ] version;
   srcUrl = {
     i686-linux = {
-      url = "https://www.rarlab.com/rar/rarlinux-${version}.tar.gz";
-      sha256 = "sha256-5iqk7eoo+hgltgscquob+wofzhuqz0m/8jf7bxdf9qa=";
+      url = "https://www.rarlab.com/rar/rarlinux-x32-${downloadVersion}.tar.gz";
+      sha256 = "sha256-7mpKkOEspGskt9yfSDrdK7CieJ0AectJKTi8TxLnbtk=";
     };
     x86_64-linux = {
-      url = "https://www.rarlab.com/rar/rarlinux-x64-${version}.tar.gz";
-      sha256 = "sha256-WAvrUGCgfwI51Mo/RYSSF0OLPPrTegUCuDEsnBeR9uQ=";
+      url = "https://www.rarlab.com/rar/rarlinux-x64-${downloadVersion}.tar.gz";
+      sha256 = "sha256-pb3QdLqdxIf3ybLfPao3MdilTHYjCB1BujYsTQuEMtE=";
+    };
+    aarch64-darwin = {
+      url = "https://www.rarlab.com/rar/rarmacos-arm-${downloadVersion}.tar.gz";
+      sha256 = "sha256-q2fC4w2/tJ+GaD3ETPP+V3SAApdlLDgr3eE2YcERQXA=";
     };
     x86_64-darwin = {
-      url = "https://www.rarlab.com/rar/rarosx-${version}.tar.gz";
-      sha256 = "sha256-baZ71vYXIGs25f7PJ0ujoGUrsWZRmFLhvDI0KoVktsg=";
+      url = "https://www.rarlab.com/rar/rarmacos-x64-${downloadVersion}.tar.gz";
+      sha256 = "sha256-yHWxAscqnLKrG9Clsaiy6wSbyVz4gpvN6AjyirCmIKQ=";
     };
   }.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
   manSrc = fetchurl {
@@ -30,9 +35,10 @@ stdenv.mkDerivation rec {
 
   dontBuild = true;
 
-  buildInputs = [ stdenv.cc.cc.lib ];
+  buildInputs = lib.optionals stdenv.isLinux [ stdenv.cc.cc.lib ];
 
-  nativeBuildInputs = [ autoPatchelfHook installShellFiles ];
+  nativeBuildInputs = [ installShellFiles ]
+    ++ lib.optionals stdenv.isLinux [ autoPatchelfHook ];
 
   installPhase = ''
     runHook preInstall
diff --git a/nixpkgs/pkgs/tools/audio/essentia-extractor/default.nix b/nixpkgs/pkgs/tools/audio/essentia-extractor/default.nix
index 63ebbb0ffc0b..4fbdd02e4404 100644
--- a/nixpkgs/pkgs/tools/audio/essentia-extractor/default.nix
+++ b/nixpkgs/pkgs/tools/audio/essentia-extractor/default.nix
@@ -6,22 +6,20 @@ let
   };
 
   sha_table = {
-    "x86_64-linux" =
-      "d9902aadac4f442992877945da2a6fe8d6ea6b0de314ca8ac0c28dc5f253f7d8";
-    "i686-linux" =
-      "46deb0a053b4910c4e68737a7b6556ff5360260c8f86652f91a0130445f5c949";
+    "x86_64-linux" = "d9902aadac4f442992877945da2a6fe8d6ea6b0de314ca8ac0c28dc5f253f7d8";
+    "i686-linux" = "46deb0a053b4910c4e68737a7b6556ff5360260c8f86652f91a0130445f5c949";
   };
 
-  arch = arch_table.${stdenv.system};
-  sha = sha_table.${stdenv.system};
+  throwSystem = throw "Unsupported system: ${stdenv.system}";
+  arch = arch_table.${stdenv.system} or throwSystem;
 in
 stdenv.mkDerivation rec {
   pname = "essentia-extractor";
   version = "2.1_beta2";
 
   src = fetchurl {
-    url = "ftp://ftp.acousticbrainz.org/pub/acousticbrainz/essentia-extractor-v${version}-${arch}.tar.gz";
-    sha256 = sha;
+    url = "https://ftp.acousticbrainz.org/pub/acousticbrainz/essentia-extractor-v${version}-${arch}.tar.gz";
+    sha256 = sha_table.${stdenv.system} or throwSystem;
   };
 
   unpackPhase = "unpackFile $src ; export sourceRoot=.";
diff --git a/nixpkgs/pkgs/tools/audio/gvolicon/default.nix b/nixpkgs/pkgs/tools/audio/gvolicon/default.nix
index 852f538d6e31..7df594d88ece 100644
--- a/nixpkgs/pkgs/tools/audio/gvolicon/default.nix
+++ b/nixpkgs/pkgs/tools/audio/gvolicon/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, makeWrapper, alsa-lib, pkg-config, fetchgit, gtk3, gnome, gdk-pixbuf, librsvg, wrapGAppsHook }:
+{ lib, stdenv, makeWrapper, alsa-lib, pkg-config, fetchFromGitHub, gtk3, gnome, gdk-pixbuf, librsvg, wrapGAppsHook }:
 
 stdenv.mkDerivation {
   pname = "gvolicon";
   version = "unstable-2014-04-28";
 
-  src = fetchgit {
-    url = "https://github.com/Unia/gvolicon";
+  src = fetchFromGitHub {
+    owner = "Unia";
+    repo = "gvolicon";
     rev = "0d65a396ba11f519d5785c37fec3e9a816217a07";
-    sha256 = "1sr9wyy7w898vq63yd003yp3k66hd4vm8b0qsm9zvmwmpiz4wvln";
+    sha256 = "sha256-lm5OfryV1/1T1RgsVDdp0Jg5rh8AND8M3ighfrznKes=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/tools/audio/opl3bankeditor/common.nix b/nixpkgs/pkgs/tools/audio/opl3bankeditor/common.nix
index 04f4d3aae5ab..982b8f8349f3 100644
--- a/nixpkgs/pkgs/tools/audio/opl3bankeditor/common.nix
+++ b/nixpkgs/pkgs/tools/audio/opl3bankeditor/common.nix
@@ -9,7 +9,7 @@
 , pkg-config
 , qttools
 , qtbase
-, qwt
+, qwt6_1
 , rtaudio
 , rtmidi
 }:
@@ -43,7 +43,7 @@ mkDerivation rec {
 
   buildInputs = [
     qtbase
-    qwt
+    qwt6_1
     rtaudio
     rtmidi
   ];
@@ -52,7 +52,7 @@ mkDerivation rec {
     mkdir $out/{bin,Applications}
     mv "${binname}.app" $out/Applications/
 
-    install_name_tool -change {,${qwt}/lib/}libqwt.6.dylib "$out/Applications/${binname}.app/Contents/MacOS/${binname}"
+    install_name_tool -change {,${qwt6_1}/lib/}libqwt.6.dylib "$out/Applications/${binname}.app/Contents/MacOS/${binname}"
 
     ln -s "$out/Applications/${binname}.app/Contents/MacOS/${binname}" $out/bin/${mainProgram}
   '';
diff --git a/nixpkgs/pkgs/tools/audio/pa-applet/default.nix b/nixpkgs/pkgs/tools/audio/pa-applet/default.nix
index 6adc24e5300d..4f67c86864d8 100644
--- a/nixpkgs/pkgs/tools/audio/pa-applet/default.nix
+++ b/nixpkgs/pkgs/tools/audio/pa-applet/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, fetchgit, libpulseaudio, pkg-config, gtk3, glibc, autoconf, automake, libnotify, libX11, xf86inputevdev }:
+{ lib, stdenv, fetchFromGitHub, libpulseaudio, pkg-config, gtk3, glibc, autoconf, automake, libnotify, libX11, xf86inputevdev }:
 
 stdenv.mkDerivation {
   pname = "pa-applet";
   version = "unstable-2012-04-11";
 
-  src = fetchgit {
-    url = "git://github.com/fernandotcl/pa-applet.git";
+  src = fetchFromGitHub {
+    owner = "fernandotcl";
+    repo = "pa-applet";
     rev = "005f192df9ba6d2e6491f9aac650be42906b135a";
-    sha256 = "1242sdri67wnm1cd0hr40mxarkh7qs7mb9n2m0g9dbz0f4axj6wa";
+    sha256 = "sha256-ihvZFXHgr5YeqMKmVY/GB86segUkQ9BYqJYfE3PTgog=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/tools/audio/tts/default.nix b/nixpkgs/pkgs/tools/audio/tts/default.nix
index a7b0212a7b00..a15a29f9d574 100644
--- a/nixpkgs/pkgs/tools/audio/tts/default.nix
+++ b/nixpkgs/pkgs/tools/audio/tts/default.nix
@@ -57,6 +57,7 @@ python.pkgs.buildPythonApplication rec {
         ''-e 's/${package}.*[<>=]+.*/${package}/g' \''
       ) relaxedConstraints)}
     requirements.txt
+    sed -i '/tensorboardX/d' requirements.txt
   '';
 
   nativeBuildInputs = with python.pkgs; [
@@ -84,7 +85,6 @@ python.pkgs.buildPythonApplication rec {
     pyworld
     scipy
     soundfile
-    tensorboardx
     tensorflow
     torchaudio-bin
     tqdm
diff --git a/nixpkgs/pkgs/tools/backup/autorestic/default.nix b/nixpkgs/pkgs/tools/backup/autorestic/default.nix
index 3837c55655e9..d7b6af031644 100644
--- a/nixpkgs/pkgs/tools/backup/autorestic/default.nix
+++ b/nixpkgs/pkgs/tools/backup/autorestic/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "autorestic";
-  version = "1.5.6";
+  version = "1.5.8";
 
   src = fetchFromGitHub {
     owner = "cupcakearmy";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-NhKAxybPLBR1Kaw2d4xI8WKS4cG0yAMHbUBDWgr5T0A=";
+    sha256 = "sha256-0eq2u3DCNgfxsiE4lycf+xGIoEC3sZgEMha9+40j+9s=";
   };
 
-  vendorSha256 = "sha256-WzmgV0wUsGfMVeho6M8wXJKD9adaAKRYmaJYaAcXwFc=";
+  vendorSha256 = "sha256-qYXdRpQT7x+Y5h8PuKGjsANXLqjNlsPKO76GQhnufTU=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/tools/backup/bacula/default.nix b/nixpkgs/pkgs/tools/backup/bacula/default.nix
index c37e78933849..35c5a36a8c9f 100644
--- a/nixpkgs/pkgs/tools/backup/bacula/default.nix
+++ b/nixpkgs/pkgs/tools/backup/bacula/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bacula";
-  version = "11.0.5";
+  version = "11.0.6";
 
   src = fetchurl {
     url    = "mirror://sourceforge/bacula/${pname}-${version}.tar.gz";
-    sha256 = "sha256-71s7Z4EEQiAbgNwdR8zvd7XtN4/hKFQG86c0AbboERo=";
+    sha256 = "sha256-AZWgi81PV4rkqc4Nkff4ZzHGNNVrgQU0ci1yGyqe7Lc=";
   };
 
   buildInputs = [ postgresql sqlite zlib ncurses openssl readline ]
diff --git a/nixpkgs/pkgs/tools/backup/btrbk/default.nix b/nixpkgs/pkgs/tools/backup/btrbk/default.nix
index b04263a7168a..d9f336c86d48 100644
--- a/nixpkgs/pkgs/tools/backup/btrbk/default.nix
+++ b/nixpkgs/pkgs/tools/backup/btrbk/default.nix
@@ -18,11 +18,11 @@
 
 stdenv.mkDerivation rec {
   pname = "btrbk";
-  version = "0.32.0";
+  version = "0.32.1";
 
   src = fetchurl {
     url = "https://digint.ch/download/btrbk/releases/${pname}-${version}.tar.xz";
-    sha256 = "HmvNtIgFfeaiFuSRobWlcJqusPSYtqAqx+79+CeNVDQ=";
+    sha256 = "flQf1KTybPImDoD+iNe+P+u1rOiYxXjQoltuGPWuX3g=";
   };
 
   nativeBuildInputs = [ asciidoctor makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/backup/bupstash/default.nix b/nixpkgs/pkgs/tools/backup/bupstash/default.nix
index 91876f68d4a6..0d3550c05bca 100644
--- a/nixpkgs/pkgs/tools/backup/bupstash/default.nix
+++ b/nixpkgs/pkgs/tools/backup/bupstash/default.nix
@@ -1,16 +1,16 @@
 { lib, fetchFromGitHub, installShellFiles, rustPlatform, ronn, pkg-config, libsodium }:
 rustPlatform.buildRustPackage rec {
   pname = "bupstash";
-  version = "0.10.3";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = "andrewchambers";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-YN5pIXJRTQXqFGuXvyoSlYJEjAZ4wIYEKjEeF8qIJCI=";
+    sha256 = "sha256-9yWQQ8uzDkN3Pi2OiEn+oEazc3nH53dF2GswBCu8d3c=";
   };
 
-  cargoSha256 = "sha256-Erpg+Sktx+L2X9k6g1ngOyM8MNoucGcScOSPMB7vld8=";
+  cargoSha256 = "sha256-JAclSUFuQk768cgDEvG1rxux2xBGHl1d/NAoxw161YU=";
 
   nativeBuildInputs = [ ronn pkg-config installShellFiles ];
   buildInputs = [ libsodium ];
diff --git a/nixpkgs/pkgs/tools/backup/dar/default.nix b/nixpkgs/pkgs/tools/backup/dar/default.nix
index 8b2428ebcc70..870c25462cf6 100644
--- a/nixpkgs/pkgs/tools/backup/dar/default.nix
+++ b/nixpkgs/pkgs/tools/backup/dar/default.nix
@@ -9,12 +9,12 @@
 with lib;
 
 stdenv.mkDerivation rec {
-  version = "2.7.3";
+  version = "2.7.4";
   pname = "dar";
 
   src = fetchurl {
     url = "mirror://sourceforge/dar/${pname}-${version}.tar.gz";
-    sha256 = "sha256-w7005RdZKjP7XrO/h43yM0Lsho4MOKWLynJimD2oHwY=";
+    sha256 = "sha256-esti2QXoq+5bic639eG96vZOSJboMVHmD+oRNAI6ic4=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/nixpkgs/pkgs/tools/bluetooth/blueberry/default.nix b/nixpkgs/pkgs/tools/bluetooth/blueberry/default.nix
index 5616560108cf..bbc3babbd132 100644
--- a/nixpkgs/pkgs/tools/bluetooth/blueberry/default.nix
+++ b/nixpkgs/pkgs/tools/bluetooth/blueberry/default.nix
@@ -3,15 +3,18 @@
 , fetchFromGitHub
 , bluez-tools
 , cinnamon
-, gnome
 , gobject-introspection
 , intltool
 , pavucontrol
 , python3Packages
 , util-linux
 , wrapGAppsHook
+, callPackage
 }:
 
+let
+  gnome-bluetooth = callPackage ./gnome-bluetooth.nix {};
+in
 stdenv.mkDerivation rec {
   pname = "blueberry";
   version = "1.4.7";
@@ -32,7 +35,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     bluez-tools
     cinnamon.xapps
-    gnome.gnome-bluetooth
+    gnome-bluetooth
     python3Packages.python
     util-linux
   ];
diff --git a/nixpkgs/pkgs/tools/bluetooth/blueberry/gnome-bluetooth.nix b/nixpkgs/pkgs/tools/bluetooth/blueberry/gnome-bluetooth.nix
new file mode 100644
index 000000000000..cf0028cf833d
--- /dev/null
+++ b/nixpkgs/pkgs/tools/bluetooth/blueberry/gnome-bluetooth.nix
@@ -0,0 +1,96 @@
+{ lib
+, stdenv
+, fetchurl
+, fetchpatch
+, gnome
+, meson
+, ninja
+, pkg-config
+, gtk3
+, gettext
+, glib
+, udev
+, itstool
+, libxml2
+, wrapGAppsHook
+, libnotify
+, libcanberra-gtk3
+, gobject-introspection
+, gtk-doc
+, docbook-xsl-nons
+, docbook_xml_dtd_43
+, python3
+, gsettings-desktop-schemas
+}:
+
+stdenv.mkDerivation rec {
+  pname = "gnome-bluetooth";
+  version = "3.34.5";
+
+  # TODO: split out "lib"
+  outputs = [ "out" "dev" "devdoc" "man" ];
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "1a9ynlwwkb3wpg293ym517vmrkk63y809mmcv9a21k5yr199x53c";
+  };
+
+  patches = [
+    # Fix build with meson 0.61.
+    # sendto/meson.build:24:5: ERROR: Function does not take positional arguments.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-bluetooth/-/commit/755fd758f866d3a3f7ca482942beee749f13a91e.patch";
+      sha256 = "sha256-N0MJ0pYO411o2CTNZHWmEoG2m5TGUjR6YW6HSXHTR/A=";
+    })
+  ];
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    gettext
+    itstool
+    pkg-config
+    libxml2
+    wrapGAppsHook
+    gobject-introspection
+    gtk-doc
+    docbook-xsl-nons
+    docbook_xml_dtd_43
+    python3
+  ];
+
+  buildInputs = [
+    glib
+    gtk3
+    udev
+    libnotify
+    libcanberra-gtk3
+    gnome.adwaita-icon-theme
+    gsettings-desktop-schemas
+  ];
+
+  mesonFlags = [
+    "-Dicon_update=false"
+    "-Dgtk_doc=true"
+  ];
+
+  postPatch = ''
+    chmod +x meson_post_install.py # patchShebangs requires executable file
+    patchShebangs meson_post_install.py
+  '';
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      packageName = pname;
+      attrPath = "gnome.${pname}";
+    };
+  };
+
+  meta = with lib; {
+    homepage = "https://help.gnome.org/users/gnome-bluetooth/stable/index.html.en";
+    description = "Application that let you manage Bluetooth in the GNOME destkop";
+    maintainers = teams.gnome.members;
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/cd-dvd/vobsub2srt/default.nix b/nixpkgs/pkgs/tools/cd-dvd/vobsub2srt/default.nix
index 624bcc08b41f..2d764d2f7da0 100644
--- a/nixpkgs/pkgs/tools/cd-dvd/vobsub2srt/default.nix
+++ b/nixpkgs/pkgs/tools/cd-dvd/vobsub2srt/default.nix
@@ -1,14 +1,14 @@
-{ lib, stdenv, fetchgit, cmake, libtiff, pkg-config, tesseract }:
+{ lib, stdenv, fetchFromGitHub, cmake, libtiff, pkg-config, tesseract }:
 
 stdenv.mkDerivation rec {
   pname = "vobsub2srt";
   version = "unstable-2014-08-17";
-  rev = "a6abbd61127a6392d420bbbebdf7612608c943c2";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/ruediger/VobSub2SRT.git";
-    sha256 = "1rpanrv8bgdh95v2320qbd44xskncvq6y84cbbfc86gw0qxpd9cb";
+  src = fetchFromGitHub {
+    owner = "ruediger";
+    repo = "VobSub2SRT";
+    rev = "a6abbd61127a6392d420bbbebdf7612608c943c2";
+    sha256 = "sha256-i6V2Owb8GcTcWowgb/BmdupOSFsYiCF2SbC9hXa26uY=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/nixpkgs/pkgs/tools/compression/pxz/default.nix b/nixpkgs/pkgs/tools/compression/pxz/default.nix
index 4ea95a3f78ac..0f509a3bd170 100644
--- a/nixpkgs/pkgs/tools/compression/pxz/default.nix
+++ b/nixpkgs/pkgs/tools/compression/pxz/default.nix
@@ -1,32 +1,43 @@
-{ lib, stdenv, fetchFromGitHub, xz }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, testVersion
+, pxz
+, xz
+}:
 
 stdenv.mkDerivation rec {
   pname = "pxz";
-  version = "4.999.9beta+git";
+  version = "4.999.9beta";
 
   src = fetchFromGitHub {
     owner = "jnovy";
     repo = "pxz";
     rev = "124382a6d0832b13b7c091f72264f8f3f463070a";
-    sha256 = "15mmv832iqsqwigidvwnf0nyivxf0y8m22j2szy4h0xr76x4z21m";
+    hash = "sha256-NYhPujm5A0j810IKUZEHru/oLXCW7xZf5FjjKAbatZY=";
   };
 
-  buildInputs = [ xz ];
+  patches = [ ./flush-stdout-help-version.patch ];
 
-  buildPhase = ''
-    gcc -o pxz pxz.c -llzma \
-        -fopenmp -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -O2 \
-        -DPXZ_BUILD_DATE=\"nixpkgs\" \
-        -DXZ_BINARY=\"${xz.bin}/bin/xz\" \
-        -DPXZ_VERSION=\"${version}\"
-  '';
+  postPatch = ''
+    substituteInPlace Makefile \
+      --replace '`date +%Y%m%d`' '19700101'
 
-  installPhase = ''
-    mkdir -p $out/bin $out/share/man/man1
-    cp pxz $out/bin
-    cp pxz.1 $out/share/man/man1
+    substituteInPlace pxz.c \
+      --replace 'XZ_BINARY "xz"' 'XZ_BINARY "${lib.getBin xz}/bin/xz"'
   '';
 
+  buildInputs = [ xz ];
+
+  makeFlags = [
+    "BINDIR=${placeholder "out"}/bin"
+    "MANDIR=${placeholder "out"}/share/man"
+  ];
+
+  passthru.tests.version = testVersion {
+    package = pxz;
+  };
+
   meta = with lib; {
     homepage = "https://jnovy.fedorapeople.org/pxz/";
     license = licenses.gpl2Plus;
@@ -39,6 +50,7 @@ stdenv.mkDerivation rec {
       resources to speed up compression time with minimal possible influence
       on compression ratio
     '';
+    mainProgram = "pxz";
     platforms = with platforms; linux;
   };
 }
diff --git a/nixpkgs/pkgs/tools/compression/pxz/flush-stdout-help-version.patch b/nixpkgs/pkgs/tools/compression/pxz/flush-stdout-help-version.patch
new file mode 100644
index 000000000000..797cdbeb1f8f
--- /dev/null
+++ b/nixpkgs/pkgs/tools/compression/pxz/flush-stdout-help-version.patch
@@ -0,0 +1,32 @@
+From bba741ccd0f0a65cd9bfdd81504ebe5840fd37ad Mon Sep 17 00:00:00 2001
+From: Will Dietz <w@wdtz.org>
+Date: Tue, 22 Mar 2022 08:01:10 -0500
+Subject: [PATCH] pxz: flush stdout before exec'ing xz, ensure our messages are
+ printed
+
+Without this, they're presently dropped on my system when pxz
+is piped to something, as in `pxz --help|less` or `pxz --version|cat`.
+---
+ pxz.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/pxz.c b/pxz.c
+index 4240b6e..3b53cfa 100644
+--- a/pxz.c
++++ b/pxz.c
+@@ -184,10 +184,12 @@ void parse_args( int argc, char **argv, char **envp ) {
+ 					"  -D, --context-size  per-thread compression context size as a multiple\n"
+ 					"                      of dictionary size. Default is 3.\n\n"
+ 					"Usage and other options are same as in XZ:\n\n");
++				fflush(stdout);
+ 				run_xz(argv, envp);
+ 				break;
+ 			case 'V':
+ 				printf("Parallel PXZ "PXZ_VERSION" (build "PXZ_BUILD_DATE")\n");
++				fflush(stdout);
+ 				run_xz(argv, envp);
+ 				break;
+ 			case 'g':
+-- 
+2.35.1
+
diff --git a/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix b/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix
index aa049682b834..e5325b1f9887 100644
--- a/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix
@@ -22,13 +22,13 @@
 
 stdenv.mkDerivation {
   pname = "bcachefs-tools";
-  version = "unstable-2022-03-09";
+  version = "unstable-2022-03-22";
 
   src = fetchFromGitHub {
     owner = "koverstreet";
     repo = "bcachefs-tools";
-    rev = "3e2e3d468eed1d5ebbb4c6309d2eaebd081912c5";
-    sha256 = "1sb0dj2whlp3dxgf642z7yx7s8va5ah82zi6r4qni7l64qy1n554";
+    rev = "f3cdace86c8b60a4efaced23b2d31c16dc610da9";
+    sha256 = "1hg4cjrs4yr0mx3mmm1jls93w1skpq5wzp2dzx9rq4w5il2xmx19";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/filesystems/dosfstools/default.nix b/nixpkgs/pkgs/tools/filesystems/dosfstools/default.nix
index 14d054364fd9..75a39fdfe92e 100644
--- a/nixpkgs/pkgs/tools/filesystems/dosfstools/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/dosfstools/default.nix
@@ -1,21 +1,30 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, libiconv }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, libiconv, gettext, xxd }:
 
 stdenv.mkDerivation rec {
   pname = "dosfstools";
-  version = "4.1";
+  version = "4.2";
 
   src = fetchFromGitHub {
     owner = "dosfstools";
     repo = "dosfstools";
     rev = "v${version}";
-    sha256 = "1a2zn1655d5f1m6jp9vpn3bp8yfxhcmxx3mx23ai9hmxiydiykr1";
+    sha256 = "sha256-2gxB0lQixiHOHw8uTetHekaM57fvUd9zOzSxWnvUz/c=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ]
     ++ lib.optional stdenv.isDarwin libiconv;
 
+  # configure.ac:75: error: required file './config.rpath' not found
+  # https://github.com/dosfstools/dosfstools/blob/master/autogen.sh
+  postPatch = ''
+    cp ${gettext}/share/gettext/config.rpath config.rpath
+  '';
+
   configureFlags = [ "--enable-compat-symlinks" ];
 
+  checkInputs = [ xxd ];
+  doCheck = true;
+
   meta = {
     description = "Utilities for creating and checking FAT and VFAT file systems";
     homepage = "https://github.com/dosfstools/dosfstools";
diff --git a/nixpkgs/pkgs/tools/filesystems/eiciel/default.nix b/nixpkgs/pkgs/tools/filesystems/eiciel/default.nix
new file mode 100644
index 000000000000..1e676dea77c7
--- /dev/null
+++ b/nixpkgs/pkgs/tools/filesystems/eiciel/default.nix
@@ -0,0 +1,56 @@
+{ lib
+, fetchFromGitHub
+, stdenv
+, acl
+, gnome
+, gtkmm3
+, meson
+, ninja
+, pkg-config
+, wrapGAppsHook
+}:
+
+stdenv.mkDerivation rec {
+  pname = "eiciel";
+  version = "0.9.13.1";
+
+  outputs = [ "out" "nautilusExtension" ];
+
+  src = fetchFromGitHub {
+    owner = "rofirrim";
+    repo = "eiciel";
+    rev = version;
+    sha256 = "0rhhw0h1hyg5kvxhjxkdz03vylgax6912mg8j4lvcz6wlsa4wkvj";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    acl
+    gtkmm3
+    gnome.nautilus
+  ];
+
+  mesonFlags = [
+    "-Dnautilus-extension-dir=${placeholder "nautilusExtension"}/lib/nautilus/extensions-3.0"
+  ];
+
+  postPatch = ''
+    substituteInPlace meson.build --replace "compiler.find_library('libacl')" "compiler.find_library('acl')"
+    chmod +x img/install_icons.sh
+    patchShebangs img/install_icons.sh
+  '';
+
+  meta = with lib; {
+    description = "Graphical editor for ACLs and extended attributes";
+    homepage = "https://rofi.roger-ferrer.org/eiciel/";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ sersorrel ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/filesystems/go-mtpfs/default.nix b/nixpkgs/pkgs/tools/filesystems/go-mtpfs/default.nix
index bd6e0fe67fc2..6a05d71d0218 100644
--- a/nixpkgs/pkgs/tools/filesystems/go-mtpfs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/go-mtpfs/default.nix
@@ -1,20 +1,20 @@
-{ pkg-config, libusb1, buildGoPackage, fetchgit }:
+{ pkg-config, libusb1, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "go-mtpfs";
-  version = "2018-02-09";
-  rev = "d6f8f3c05ce0ed31435057ec342268a0735863bb";
+  version = "unstable-2018-02-09";
 
   goPackagePath = "github.com/hanwen/go-mtpfs";
 
+  src = fetchFromGitHub {
+    owner = "hanwen";
+    repo = "go-mtpfs";
+    rev = "d6f8f3c05ce0ed31435057ec342268a0735863bb";
+    sha256 = "sha256-sz+ikhZGwSIAI2YBSQKURF3WXB8dHgQ/C/dbkXwrDSg=";
+  };
+
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ libusb1 ];
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/hanwen/go-mtpfs";
-    sha256 = "0a0d5dy92nzp1czh87hx3xfdcpa4jh14j0b64c025ha62s9a4gxk";
-  };
-
   goDeps = ./deps.nix;
 }
diff --git a/nixpkgs/pkgs/tools/filesystems/littlefs-fuse/default.nix b/nixpkgs/pkgs/tools/filesystems/littlefs-fuse/default.nix
new file mode 100644
index 000000000000..daec12b50411
--- /dev/null
+++ b/nixpkgs/pkgs/tools/filesystems/littlefs-fuse/default.nix
@@ -0,0 +1,26 @@
+{ lib, stdenv, fetchFromGitHub, fuse }:
+
+stdenv.mkDerivation rec {
+  pname = "littlefs-fuse";
+  version = "2.4.1";
+  src = fetchFromGitHub {
+    owner = "littlefs-project";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-+EUZluBtgZiziTEIfXIhkRIBu/Pe78qmL18TQHkfHO4=";
+  };
+  buildInputs = [ fuse ];
+  installPhase = ''
+    runHook preInstall
+    install -D lfs $out/bin/${pname}
+    ln -s $out/bin/${pname} $out/bin/mount.littlefs
+    ln -s $out/bin $out/sbin
+    runHook postInstall
+  '';
+  meta = src.meta // {
+    description = "A FUSE wrapper that puts the littlefs in user-space";
+    license = lib.licenses.bsd3;
+    maintainers = with lib.maintainers; [ ehmry ];
+    inherit (fuse.meta) platforms;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/filesystems/squashfs/darwin.patch b/nixpkgs/pkgs/tools/filesystems/squashfs/darwin.patch
index 5f2e0b072998..657971c5b0ab 100644
--- a/nixpkgs/pkgs/tools/filesystems/squashfs/darwin.patch
+++ b/nixpkgs/pkgs/tools/filesystems/squashfs/darwin.patch
@@ -5,7 +5,7 @@ with BSD-specific changes omitted.
 See also https://github.com/plougher/squashfs-tools/pull/69.
 
 diff --git a/squashfs-tools/action.c b/squashfs-tools/action.c
-index 4b06ccb..3cad2ab 100644
+index ea2f604..9c979f8 100644
 --- a/squashfs-tools/action.c
 +++ b/squashfs-tools/action.c
 @@ -39,6 +39,10 @@
@@ -19,7 +19,7 @@ index 4b06ccb..3cad2ab 100644
  #include "squashfs_fs.h"
  #include "mksquashfs.h"
  #include "action.h"
-@@ -2414,9 +2418,12 @@ static char *get_start(char *s, int n)
+@@ -2415,9 +2419,12 @@ static char *get_start(char *s, int n)
  
  static int subpathname_fn(struct atom *atom, struct action_data *action_data)
  {
@@ -34,7 +34,7 @@ index 4b06ccb..3cad2ab 100644
  
  /*
 diff --git a/squashfs-tools/info.c b/squashfs-tools/info.c
-index fe23d78..5c2f835 100644
+index 216b979..eea2ec9 100644
 --- a/squashfs-tools/info.c
 +++ b/squashfs-tools/info.c
 @@ -144,31 +144,22 @@ void dump_state()
@@ -89,7 +89,7 @@ index fe23d78..5c2f835 100644
  }
  
 diff --git a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c
-index a45b77f..3607448 100644
+index 843f9f4..ed2c3a6 100644
 --- a/squashfs-tools/mksquashfs.c
 +++ b/squashfs-tools/mksquashfs.c
 @@ -35,7 +35,12 @@
@@ -117,7 +117,7 @@ index a45b77f..3607448 100644
  
  #ifndef linux
  #include <sys/sysctl.h>
-@@ -5022,6 +5030,7 @@ static void initialise_threads(int readq, int fragq, int bwriteq, int fwriteq,
+@@ -5064,6 +5072,7 @@ static void initialise_threads(int readq, int fragq, int bwriteq, int fwriteq,
  	sigemptyset(&sigmask);
  	sigaddset(&sigmask, SIGQUIT);
  	sigaddset(&sigmask, SIGHUP);
@@ -125,7 +125,7 @@ index a45b77f..3607448 100644
  	if(pthread_sigmask(SIG_BLOCK, &sigmask, NULL) != 0)
  		BAD_ERROR("Failed to set signal mask in intialise_threads\n");
  
-@@ -5760,6 +5769,35 @@ static int get_physical_memory()
+@@ -5802,6 +5811,35 @@ static int get_physical_memory()
  	long long page_size = sysconf(_SC_PAGESIZE);
  	int phys_mem;
  
@@ -161,7 +161,7 @@ index a45b77f..3607448 100644
  	if(num_pages == -1 || page_size == -1) {
  		struct sysinfo sys;
  		int res = sysinfo(&sys);
-@@ -5772,6 +5810,7 @@ static int get_physical_memory()
+@@ -5814,6 +5852,7 @@ static int get_physical_memory()
  	}
  
  	phys_mem = num_pages * page_size >> 20;
@@ -170,7 +170,7 @@ index a45b77f..3607448 100644
  	if(phys_mem < SQUASHFS_LOWMEM)
  		BAD_ERROR("Mksquashfs requires more physical memory than is "
 diff --git a/squashfs-tools/read_xattrs.c b/squashfs-tools/read_xattrs.c
-index 4debedf..3257c30 100644
+index 2067f80..ca8b7f4 100644
 --- a/squashfs-tools/read_xattrs.c
 +++ b/squashfs-tools/read_xattrs.c
 @@ -31,13 +31,13 @@
@@ -186,11 +186,11 @@ index 4debedf..3257c30 100644
  
 -#include <stdlib.h>
 -
- extern int read_fs_bytes(int, long long, int, void *);
+ extern int read_fs_bytes(int, long long, long long, void *);
  extern int read_block(int, long long, long long *, int, void *);
  
 diff --git a/squashfs-tools/unsquashfs.c b/squashfs-tools/unsquashfs.c
-index 727f1d5..c1a6183 100644
+index d434b42..1208e45 100644
 --- a/squashfs-tools/unsquashfs.c
 +++ b/squashfs-tools/unsquashfs.c
 @@ -32,8 +32,12 @@
@@ -206,7 +206,7 @@ index 727f1d5..c1a6183 100644
  #include <sys/types.h>
  #include <sys/time.h>
  #include <sys/resource.h>
-@@ -1175,7 +1179,7 @@ int create_inode(char *pathname, struct inode *i)
+@@ -1182,7 +1186,7 @@ int create_inode(char *pathname, struct inode *i)
  			break;
  		case SQUASHFS_SYMLINK_TYPE:
  		case SQUASHFS_LSYMLINK_TYPE: {
@@ -215,7 +215,7 @@ index 727f1d5..c1a6183 100644
  				{ i->time, 0 },
  				{ i->time, 0 }
  			};
-@@ -1194,8 +1198,7 @@ int create_inode(char *pathname, struct inode *i)
+@@ -1201,8 +1205,7 @@ int create_inode(char *pathname, struct inode *i)
  				goto failed;
  			}
  
@@ -225,7 +225,7 @@ index 727f1d5..c1a6183 100644
  			if(res == -1) {
  				EXIT_UNSQUASH_STRICT("create_inode: failed to"
  					" set time on %s, because %s\n",
-@@ -2683,6 +2686,7 @@ void initialise_threads(int fragment_buffer_size, int data_buffer_size, int cat_
+@@ -2687,6 +2690,7 @@ void initialise_threads(int fragment_buffer_size, int data_buffer_size, int cat_
  		sigemptyset(&sigmask);
  		sigaddset(&sigmask, SIGQUIT);
  		sigaddset(&sigmask, SIGHUP);
@@ -234,7 +234,7 @@ index 727f1d5..c1a6183 100644
  			EXIT_UNSQUASH("Failed to set signal mask in initialise_threads\n");
  
 diff --git a/squashfs-tools/unsquashfs.h b/squashfs-tools/unsquashfs.h
-index 934618b..0e680ab 100644
+index 1099678..5b6a038 100644
 --- a/squashfs-tools/unsquashfs.h
 +++ b/squashfs-tools/unsquashfs.h
 @@ -46,6 +46,10 @@
@@ -249,7 +249,7 @@ index 934618b..0e680ab 100644
  #include "squashfs_fs.h"
  #include "unsquashfs_error.h"
 diff --git a/squashfs-tools/unsquashfs_info.c b/squashfs-tools/unsquashfs_info.c
-index c8e2b9b..7d4f7af 100644
+index e906eaf..f1e68c2 100644
 --- a/squashfs-tools/unsquashfs_info.c
 +++ b/squashfs-tools/unsquashfs_info.c
 @@ -96,31 +96,22 @@ void dump_state()
@@ -304,7 +304,7 @@ index c8e2b9b..7d4f7af 100644
  }
  
 diff --git a/squashfs-tools/unsquashfs_xattr.c b/squashfs-tools/unsquashfs_xattr.c
-index 7742dfe..f8cd3b6 100644
+index 61910e1..73e0090 100644
 --- a/squashfs-tools/unsquashfs_xattr.c
 +++ b/squashfs-tools/unsquashfs_xattr.c
 @@ -27,6 +27,11 @@
@@ -320,7 +320,7 @@ index 7742dfe..f8cd3b6 100644
  
  extern int root_process;
 diff --git a/squashfs-tools/xattr.c b/squashfs-tools/xattr.c
-index 64dfd82..d82d186 100644
+index b1c0089..6d7ed98 100644
 --- a/squashfs-tools/xattr.c
 +++ b/squashfs-tools/xattr.c
 @@ -22,6 +22,14 @@
@@ -353,5 +353,5 @@ index 64dfd82..d82d186 100644
  #include "squashfs_swap.h"
  #include "mksquashfs.h"
 -- 
-2.23.0
+2.35.1
 
diff --git a/nixpkgs/pkgs/tools/filesystems/squashfs/default.nix b/nixpkgs/pkgs/tools/filesystems/squashfs/default.nix
index ee6a9d9a4c39..340c5add295e 100644
--- a/nixpkgs/pkgs/tools/filesystems/squashfs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/squashfs/default.nix
@@ -2,44 +2,43 @@
 , stdenv
 , fetchFromGitHub
 , fetchpatch
-, zlib
-, xz
+, help2man
 , lz4
 , lzo
-, zstd
 , nixosTests
+, which
+, xz
+, zlib
+, zstd
 }:
 
 stdenv.mkDerivation rec {
   pname = "squashfs";
-  version = "4.5";
+  version = "4.5.1";
 
   src = fetchFromGitHub {
     owner = "plougher";
     repo = "squashfs-tools";
     rev = version;
-    sha256 = "1nanwz5qvsakxfm37md5i7xqagv69nfik9hpj8qlp6ymw266vgxr";
+    sha256 = "sha256-Y3ZPjeE9HN1F+NtGe6EchYziWrTPVQ4SuKaCvNbXMKI=";
   };
 
   patches = [
     # This patch adds an option to pad filesystems (increasing size) in
     # exchange for better chunking / binary diff calculation.
     ./4k-align.patch
-    # Otherwise sizes of some files may break in our ISO; see
-    # https://github.com/NixOS/nixpkgs/issues/132286
-    (fetchpatch {
-      url = "https://github.com/plougher/squashfs-tools/commit/19b161c1cd3e31f7a396ea92dea4390ad43f27b9.diff";
-      sha256 = "15ng8m2my3a6a9hnfx474bip2vwdh08hzs2k0l5gwd36jv2z1h3f";
-    })
   ] ++ lib.optional stdenv.isDarwin ./darwin.patch;
 
-  buildInputs = [ zlib xz zstd lz4 lzo ];
+  buildInputs = [ zlib xz zstd lz4 lzo which help2man ];
 
   preBuild = ''
     cd squashfs-tools
   '' ;
 
-  installFlags = [ "INSTALL_DIR=${placeholder "out"}/bin" ];
+  installFlags = [
+    "INSTALL_DIR=${placeholder "out"}/bin"
+    "INSTALL_MANPAGES_DIR=${placeholder "out"}/share/man/man1"
+  ];
 
   makeFlags = [
     "XZ_SUPPORT=1"
diff --git a/nixpkgs/pkgs/tools/filesystems/xfsprogs/default.nix b/nixpkgs/pkgs/tools/filesystems/xfsprogs/default.nix
index 730932141b54..91225e6b97c6 100644
--- a/nixpkgs/pkgs/tools/filesystems/xfsprogs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/xfsprogs/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, buildPackages, fetchurl, autoconf, automake, gettext, libtool, pkg-config
-, icu, libuuid, readline, inih
+, icu, libuuid, readline, inih, liburcu
 }:
 
 stdenv.mkDerivation rec {
   pname = "xfsprogs";
-  version = "5.13.0";
+  version = "5.14.2";
 
   src = fetchurl {
     url = "mirror://kernel/linux/utils/fs/xfs/xfsprogs/${pname}-${version}.tar.xz";
-    sha256 = "sha256-ThQtS6vghq35AW2MYGyAWCnaCORjiaRDP0A0YgT5DNs=";
+    sha256 = "sha256-AczT753yg3dTpdh2uNqE6pV9E9ekYbjEbor6TrCaq8g=";
   };
 
   outputs = [ "bin" "dev" "out" "doc" ];
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     autoconf automake libtool gettext pkg-config
     libuuid # codegen tool uses libuuid
   ];
-  buildInputs = [ readline icu inih ];
+  buildInputs = [ readline icu inih liburcu ];
   propagatedBuildInputs = [ libuuid ]; # Dev headers include <uuid/uuid.h>
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/tools/graphics/astc-encoder/default.nix b/nixpkgs/pkgs/tools/graphics/astc-encoder/default.nix
index cecc52b9df2d..2b55113b4f95 100644
--- a/nixpkgs/pkgs/tools/graphics/astc-encoder/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/astc-encoder/default.nix
@@ -31,13 +31,13 @@ with rec {
 
 gccStdenv.mkDerivation rec {
   pname = "astc-encoder";
-  version = "3.4";
+  version = "3.5";
 
   src = fetchFromGitHub {
     owner = "ARM-software";
     repo = "astc-encoder";
     rev = version;
-    sha256 = "sha256-blOfc/H64UErjPjkdZQNp2H/Hw57RbQRFBcUo/C2b0Q=";
+    sha256 = "sha256-vsnU592UDQfBuh9XWzw12wANkQBoUxznpOD9efCUKA0=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/nixpkgs/pkgs/tools/graphics/sic-image-cli/default.nix b/nixpkgs/pkgs/tools/graphics/sic-image-cli/default.nix
index 1c3eb7c18cde..168816b886af 100644
--- a/nixpkgs/pkgs/tools/graphics/sic-image-cli/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/sic-image-cli/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "sic-image-cli";
-  version = "0.19.0";
+  version = "0.19.1";
 
   src = fetchFromGitHub {
     owner = "foresterre";
     repo = "sic";
     rev = "v${version}";
-    sha256 = "11km8ngndmzp6sxyfnbll80nigi790s353v7j31jvqcgyn9gjdq9";
+    sha256 = "sha256-lFb1roQd6CK/9fKWO4SC0CbOLZglB+pS9ZqTdGRHk0Y=";
   };
 
-  cargoSha256 = "sha256-mHfQ36Xo37VRRq0y0xvUYy0MAlrfnOfMy1t3IZFdrE8=";
+  cargoSha256 = "sha256-9m8gdbrVv+6tGMg1GTUPy4eRqRQa9zy9BZwfZqNqSS0=";
 
   nativeBuildInputs = [ installShellFiles nasm ];
 
diff --git a/nixpkgs/pkgs/tools/graphics/wkhtmltopdf-bin/default.nix b/nixpkgs/pkgs/tools/graphics/wkhtmltopdf-bin/default.nix
new file mode 100644
index 000000000000..3c2b446a8e1c
--- /dev/null
+++ b/nixpkgs/pkgs/tools/graphics/wkhtmltopdf-bin/default.nix
@@ -0,0 +1,51 @@
+{ stdenv, lib, fetchurl, wkhtmltopdf, xar, cpio }:
+
+stdenv.mkDerivation rec {
+
+  pname = "wkhtmltopdf-bin";
+  version = "0.12.6-1";
+  sha256 = "1db59kdprzpmvdj1bg47lmfgi3zlvzvqif11sbym9hw61xy6gp3d";
+  src = fetchurl {
+    url =
+      "https://github.com/wkhtmltopdf/packaging/releases/download/${version}/wkhtmltox-${version}.macos-cocoa.pkg";
+    inherit sha256;
+  };
+
+  buildInputs = [ xar cpio ];
+
+  unpackPhase = ''
+    xar -xf $src
+    zcat Payload | cpio -i
+    tar -xf usr/local/share/wkhtmltox-installer/wkhtmltox.tar.gz
+  '';
+
+  installPhase = ''
+    mkdir -p $out
+    cp -r bin include lib share $out/
+  '';
+
+  dontStrip = true;
+
+  doInstallCheck = true;
+
+  installCheckPhase = ''
+    $out/bin/wkhtmltopdf --version
+  '';
+
+  meta = with lib; {
+    homepage = "https://wkhtmltopdf.org/";
+    description =
+      "Tools for rendering web pages to PDF or images (binary package)";
+    longDescription = ''
+      wkhtmltopdf and wkhtmltoimage are open source (LGPL) command line tools
+      to render HTML into PDF and various image formats using the QT Webkit
+      rendering engine. These run entirely "headless" and do not require a
+      display or display service.
+
+      There is also a C library, if you're into that kind of thing.
+    '';
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ nbr ];
+    platforms = [ "x86_64-darwin" ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/apkeep/default.nix b/nixpkgs/pkgs/tools/misc/apkeep/default.nix
index d405302282f5..ef7699ccf284 100644
--- a/nixpkgs/pkgs/tools/misc/apkeep/default.nix
+++ b/nixpkgs/pkgs/tools/misc/apkeep/default.nix
@@ -2,14 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "apkeep";
-  version = "0.9.0";
+  version = "0.10.0";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-ST1ifON25mizKZQX3fKeqBloXWW9LXDq5JkZIeiguRY=";
+    sha256 = "14vm3b2gbmn9pil0aagwchn4kyvi9311id6qv4a376qfb6r1aybf";
   };
 
-  cargoSha256 = "sha256-/Xh1s4PO336B1ioKe0IKVGDACpMuXOpxA82U6zn2lj0=";
+  cargoSha256 = "0i8wzc58ji317kjdw3ls1908z4bqlh1cgjph0fxsvs5i552qjkzp";
 
   prePatch = ''
     rm .cargo/config.toml
diff --git a/nixpkgs/pkgs/tools/misc/azure-vhd-utils/default.nix b/nixpkgs/pkgs/tools/misc/azure-vhd-utils/default.nix
index ad48eae7a87f..79dd9d6b538b 100644
--- a/nixpkgs/pkgs/tools/misc/azure-vhd-utils/default.nix
+++ b/nixpkgs/pkgs/tools/misc/azure-vhd-utils/default.nix
@@ -1,17 +1,16 @@
-# This file was generated by go2nix.
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "azure-vhd-utils";
-  version = "20160614-${lib.strings.substring 0 7 rev}";
-  rev = "070db2d701a462ca2edcf89d677ed3cac309d8e8";
+  version = "unstable-2016-06-14";
 
   goPackagePath = "github.com/Microsoft/azure-vhd-utils";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/Microsoft/azure-vhd-utils";
-    sha256 = "0b9kbavlb92rhnb1swwq8bdn4l9a994rmf1ywyfq4yc0kd3gnhgh";
+  src = fetchFromGitHub {
+    owner = "Microsoft";
+    repo = "azure-vhd-utils";
+    rev = "070db2d701a462ca2edcf89d677ed3cac309d8e8";
+    sha256 = "sha256-8EH7RpuAeYKd5z64mklKKlFi20KYcx2WhVmkRbdaMy0=";
   };
 
   goDeps = ./deps.nix;
diff --git a/nixpkgs/pkgs/tools/misc/bitbucket-cli/default.nix b/nixpkgs/pkgs/tools/misc/bitbucket-cli/default.nix
deleted file mode 100644
index 4a770b187fe7..000000000000
--- a/nixpkgs/pkgs/tools/misc/bitbucket-cli/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, python2
-}:
-
-python2.pkgs.buildPythonApplication rec {
-  pname = "bitbucket-cli";
-  version = "0.5.1";
-
-  src = python2.pkgs.fetchPypi {
-    inherit pname version;
-    sha256 = "1xmn73x6jirnwfwcdy380ncmkai9f9dhmld6zin01ypbqwgf50fq";
-  };
-
-  propagatedBuildInputs = with python2.pkgs; [
-    requests
-  ];
-
-  # No tests
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Bitbucket command line interface";
-    homepage = "https://bitbucket.org/zhemao/bitbucket-cli";
-    maintainers = with maintainers; [ refnil ];
-    license = licenses.bsd2;
-  };
-}
diff --git a/nixpkgs/pkgs/tools/misc/broadlink-cli/default.nix b/nixpkgs/pkgs/tools/misc/broadlink-cli/default.nix
index b71b5b444e31..ee99e643b1f7 100644
--- a/nixpkgs/pkgs/tools/misc/broadlink-cli/default.nix
+++ b/nixpkgs/pkgs/tools/misc/broadlink-cli/default.nix
@@ -2,7 +2,7 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "broadlink-cli";
-  version = "0.18.0";
+  version = "0.18.1";
 
   # the tools are available as part of the source distribution from GH but
   # not pypi, so we have to fetch them here.
@@ -10,7 +10,7 @@ python3Packages.buildPythonApplication rec {
     owner  = "mjg59";
     repo   = "python-broadlink";
     rev    = version;
-    sha256 = "0nh9rn1zpc44qsc50360ycg02gwbgq59784mnkp01nhavnwwwx10";
+    sha256 = "sha256-x7RVCu5xOwhUOxXIHP7ZAe1/9F9ecf9RgL9I53e9Mcw=";
   };
 
   format = "other";
diff --git a/nixpkgs/pkgs/tools/misc/calamares/default.nix b/nixpkgs/pkgs/tools/misc/calamares/default.nix
index ad4158c10d50..08c7ab17e52d 100644
--- a/nixpkgs/pkgs/tools/misc/calamares/default.nix
+++ b/nixpkgs/pkgs/tools/misc/calamares/default.nix
@@ -6,12 +6,12 @@
 
 mkDerivation rec {
   pname = "calamares";
-  version = "3.2.53";
+  version = "3.2.54";
 
   # release including submodule
   src = fetchurl {
     url = "https://github.com/${pname}/${pname}/releases/download/v${version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-LWkgQsvP7XmupBDSAnbwewWRT+ZaALyDFw3w7iz66X0=";
+    sha256 = "sha256-TfdLbDsjjPC/8BoEVm4mXePxQ8KX+9jgwKqUR1lcyOk=";
   };
 
   nativeBuildInputs = [ cmake extra-cmake-modules ];
diff --git a/nixpkgs/pkgs/tools/misc/chezmoi/default.nix b/nixpkgs/pkgs/tools/misc/chezmoi/default.nix
index 787e4248d465..4ffffa636095 100644
--- a/nixpkgs/pkgs/tools/misc/chezmoi/default.nix
+++ b/nixpkgs/pkgs/tools/misc/chezmoi/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "chezmoi";
-  version = "2.13.1";
+  version = "2.14.0";
 
   src = fetchFromGitHub {
     owner = "twpayne";
     repo = "chezmoi";
     rev = "v${version}";
-    sha256 = "sha256-Ui9zj/PI8vYkbT8M13dZ1N4sxhM8fo8ZVeOP9Oa35xg=";
+    sha256 = "sha256-WxOpmowRP8KSxxjW4JNQlQL6jZ2EhvpNb87NgeSO890=";
   };
 
-  vendorSha256 = "sha256-6+T0UQDrCnoRZkMajyw50eH/AFIUzCgxCkWVmTfycD0=";
+  vendorSha256 = "sha256-ord4jHjgiW+Z2OD/x2ZAFOJYLyoB7Tja6SOd+JqxWDM=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/misc/diffoscope/default.nix b/nixpkgs/pkgs/tools/misc/diffoscope/default.nix
index 7f1655b98437..17f57d31ab88 100644
--- a/nixpkgs/pkgs/tools/misc/diffoscope/default.nix
+++ b/nixpkgs/pkgs/tools/misc/diffoscope/default.nix
@@ -50,7 +50,7 @@ python3Packages.buildPythonApplication rec {
       xz zip zstd
     ]
     ++ (with python3Packages; [
-      argcomplete black debian defusedxml jsondiff jsbeautifier libarchive-c
+      argcomplete debian defusedxml jsondiff jsbeautifier libarchive-c
       python_magic progressbar33 pypdf2 rpm tlsh
     ])
     ++ lib.optionals stdenv.isLinux [ python3Packages.pyxattr acl cdrkit dtc ]
@@ -66,20 +66,19 @@ python3Packages.buildPythonApplication rec {
     installManPage doc/diffoscope.1
   '';
 
-  # Disable flaky test and a failing one
   disabledTests = [
+    # Disable flaky test and a failing one
     "test_android_manifest"
     "test_sbin_added_to_path"
     "test_diff_meta"
     "test_diff_meta2"
     "test_obj_no_differences"
 
-    # Failing because of file-v5.40 has a slightly different output.
-    # Upstream issue: https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/271
-    "test_text_proper_indentation"
-
     # fails because it fails to determine llvm version
     "test_item3_deflate_llvm_bitcode"
+
+    # disable formatting tests because they can break on black updates
+    "test_code_is_black_clean"
   ] ++ lib.optionals stdenv.isDarwin [
     # Disable flaky tests on Darwin
     "test_non_unicode_filename"
diff --git a/nixpkgs/pkgs/tools/misc/direnv/default.nix b/nixpkgs/pkgs/tools/misc/direnv/default.nix
index 1920dac54343..624236462c2f 100644
--- a/nixpkgs/pkgs/tools/misc/direnv/default.nix
+++ b/nixpkgs/pkgs/tools/misc/direnv/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "direnv";
-  version = "2.30.3";
+  version = "2.31.0";
 
   src = fetchFromGitHub {
     owner = "direnv";
     repo = "direnv";
     rev = "v${version}";
-    sha256 = "sha256-cLDafCZH0WKexO6jCdzUhRWaxmQYb1ay9w9lje3cQ+U=";
+    sha256 = "sha256-s3IzckePNjr8Bo4kDXj3/WJgybirvtBd9hW2+eWPorA=";
   };
 
   vendorSha256 = "sha256-YhgQUl9fdictEtz6J88vEzznGd8Ipeb9AYo/p1ZLz5k=";
@@ -29,9 +29,6 @@ buildGoModule rec {
 
   checkInputs = [ fish zsh ];
 
-  # temporarily disable tests, check if they can be reenabled with the next release
-  doCheck = false;
-
   checkPhase = ''
     export HOME=$(mktemp -d)
     make test-go test-bash test-fish test-zsh
diff --git a/nixpkgs/pkgs/tools/misc/dsq/default.nix b/nixpkgs/pkgs/tools/misc/dsq/default.nix
new file mode 100644
index 000000000000..2451800b41f9
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/dsq/default.nix
@@ -0,0 +1,60 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, buildGoModule
+, runCommand
+, nix-update-script
+, dsq
+, diffutils
+}:
+
+buildGoModule rec {
+  pname = "dsq";
+  version = "0.9.0";
+
+  src = fetchFromGitHub {
+    owner = "multiprocessio";
+    repo = "dsq";
+    rev = version;
+    hash = "sha256-JzS94kfvgZDz4tIXa4veY3XSFeMDBN61sU8/+5V5y9Y=";
+  };
+
+  vendorSha256 = "sha256-9Exy2VLxOd4lgwbIOZ6NJ45NABO9a0rLjmZ+Cd7jjLM=";
+
+  nativeBuildInputs = [ diffutils ];
+
+  passthru = {
+    updateScript = nix-update-script { attrPath = pname; };
+
+    tests = {
+      pretty-csv = runCommand "${pname}-test" { } ''
+        mkdir "$out"
+        cat <<EOF > "$out/input.csv"
+        first,second
+        1,a
+        2,b
+        EOF
+        cat <<EOF > "$out/expected.txt"
+        +-------+--------+
+        | first | second |
+        +-------+--------+
+        |     1 | a      |
+        |     2 | b      |
+        +-------+--------+
+        EOF
+        ${dsq}/bin/dsq --pretty "$out/input.csv" 'select first, second from {}' > "$out/actual.txt"
+        diff "$out/expected.txt" "$out/actual.txt"
+      '';
+    };
+  };
+
+  meta = with lib; {
+    description = "Commandline tool for running SQL queries against JSON, CSV, Excel, Parquet, and more";
+    homepage = "https://github.com/multiprocessio/dsq";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ liff ];
+    # TODO: Remove once nixpkgs uses macOS SDK 10.14+ for x86_64-darwin
+    # Undefined symbols for architecture x86_64: "_SecTrustEvaluateWithError"
+    broken = stdenv.isDarwin && stdenv.isx86_64;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/dua/default.nix b/nixpkgs/pkgs/tools/misc/dua/default.nix
index f0984696fe3f..d7f3eafe3eca 100644
--- a/nixpkgs/pkgs/tools/misc/dua/default.nix
+++ b/nixpkgs/pkgs/tools/misc/dua/default.nix
@@ -2,7 +2,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "dua";
-  version = "2.17.0";
+  version = "2.17.1";
 
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv Foundation ];
 
@@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec {
     owner = "Byron";
     repo = "dua-cli";
     rev = "v${version}";
-    sha256 = "sha256-yac/WUVL10JU1V5f9LYh57yYzZ2JMf24jMd8Mun7OMU=";
+    sha256 = "sha256-58l0E5wwRKbF/ja3fmMMBIONjuwVOxlwdKRT5BeO9MQ=";
     # Remove unicode file names which leads to different checksums on HFS+
     # vs. other filesystems because of unicode normalisation.
     extraPostFetch = ''
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
     '';
   };
 
-  cargoSha256 = "sha256-Q0ZLMbnQeG/64QvAIPpa3k+lI6dbSSQcdYb5e2rX8U0=";
+  cargoSha256 = "sha256-nft0wrgTMrI8Tav6NcqPwSF8Q367twIOr1voBsW2488=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/misc/esphome/default.nix b/nixpkgs/pkgs/tools/misc/esphome/default.nix
index 72a624714307..23df784a78ef 100644
--- a/nixpkgs/pkgs/tools/misc/esphome/default.nix
+++ b/nixpkgs/pkgs/tools/misc/esphome/default.nix
@@ -15,14 +15,14 @@ let
 in
 with python.pkgs; buildPythonApplication rec {
   pname = "esphome";
-  version = "2022.2.6";
+  version = "2022.3.1";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "sha256-AoSFtEg7GpUBdIrFCYlOMBRc2nBBtiFEkxoZnKC/xyQ=";
+    sha256 = "sha256-x2gdRUBpyhk6iKvuW6ZKSpokaHfYz1ugclBjP15rJsk=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/misc/esptool/default.nix b/nixpkgs/pkgs/tools/misc/esptool/default.nix
index 5a543c6e2ad5..e1ec37063dea 100644
--- a/nixpkgs/pkgs/tools/misc/esptool/default.nix
+++ b/nixpkgs/pkgs/tools/misc/esptool/default.nix
@@ -2,13 +2,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "esptool";
-  version = "3.2";
+  version = "3.3";
 
   src = fetchFromGitHub {
     owner = "espressif";
     repo = "esptool";
     rev = "v${version}";
-    sha256 = "1jic5kynfan5zirv9pm3pfjps12zf68cpnhl7i1vls2m79zdkfa3";
+    sha256 = "sha256-CmGie+M3AboOk8X+LkRhIxTRQZgDlklouzmz8kiIZuI=";
   };
 
   checkInputs = with python3.pkgs;
diff --git a/nixpkgs/pkgs/tools/misc/fend/default.nix b/nixpkgs/pkgs/tools/misc/fend/default.nix
index 94429323e091..07880c4fbdc5 100644
--- a/nixpkgs/pkgs/tools/misc/fend/default.nix
+++ b/nixpkgs/pkgs/tools/misc/fend/default.nix
@@ -1,17 +1,24 @@
-{ lib, fetchFromGitHub, rustPlatform }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, rustPlatform
+, darwin
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "fend";
-  version = "0.1.29";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "printfn";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-g3TycwDtB8+5innRlJukuqD2pSRz71slxOKjgzHve7w=";
+    sha256 = "sha256-EV3uxoN6RuQ7grXLcFev1ZCfjVnVIDumQmHdpUm1Jbc=";
   };
 
-  cargoSha256 = "sha256-LYUQeDoq5C9p5pMvFtLQegl7Cl6K+21DPzjSrnCqJo8=";
+  cargoSha256 = "sha256-lNpFdrriAglLaiWjxVP4JoiBuU+zdLlerAIApIvHHZw=";
+
+  buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
 
   doInstallCheck = true;
 
diff --git a/nixpkgs/pkgs/tools/misc/fwup/default.nix b/nixpkgs/pkgs/tools/misc/fwup/default.nix
index f58b73a47233..3a49a9309e61 100644
--- a/nixpkgs/pkgs/tools/misc/fwup/default.nix
+++ b/nixpkgs/pkgs/tools/misc/fwup/default.nix
@@ -48,10 +48,11 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [
     coreutils
-    dosfstools
-    mtools
     unzip
     zip
+  ] ++ lib.optionals doCheck [
+    mtools
+    dosfstools
   ];
 
   checkInputs = [
diff --git a/nixpkgs/pkgs/tools/misc/gawp/default.nix b/nixpkgs/pkgs/tools/misc/gawp/default.nix
index 5c7953a766ee..bd102e868aeb 100644
--- a/nixpkgs/pkgs/tools/misc/gawp/default.nix
+++ b/nixpkgs/pkgs/tools/misc/gawp/default.nix
@@ -1,18 +1,16 @@
-{ lib, buildGoPackage, fetchgit }:
-
-with builtins;
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "gawp";
-  version = "20160121-${lib.strings.substring 0 7 rev}";
-  rev = "5db2d8faa220e8d6eaf8677354bd197bf621ff7f";
+  version = "unstable-2016-01-21";
 
   goPackagePath = "github.com/martingallagher/gawp";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/martingallagher/gawp";
-    sha256 = "0bbmbb1xxdgvqvg1ssn9d4j213li7bbbx3y42iz4fs10xv7x4r0c";
+  src = fetchFromGitHub {
+    owner = "martingallagher";
+    repo = "gawp";
+    rev = "5db2d8faa220e8d6eaf8677354bd197bf621ff7f";
+    sha256 = "sha256-DGTSz+4gaEd+FMSPvtY6kY4gJGnJah3exvu13sNadS0=";
   };
 
   goDeps = ./deps.nix;
diff --git a/nixpkgs/pkgs/tools/misc/goreleaser/default.nix b/nixpkgs/pkgs/tools/misc/goreleaser/default.nix
index 492e8a83a2fd..d0f44b933e94 100644
--- a/nixpkgs/pkgs/tools/misc/goreleaser/default.nix
+++ b/nixpkgs/pkgs/tools/misc/goreleaser/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "goreleaser";
-  version = "1.6.3";
+  version = "1.7.0";
 
   src = fetchFromGitHub {
     owner = "goreleaser";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ZNE+DfQdIlxA6sXMI8DAIQ3x+kcgXoGApUuoPncRfpc=";
+    sha256 = "sha256-vTik6KFOkKOik78/H0hvAv6xI+QSALOHD4N6befPaT4=";
   };
 
-  vendorSha256 = "sha256-Kwa2hzsuw3BNLubcqd7Vmpg49P78Yjt3LboLotoGWYM=";
+  vendorSha256 = "sha256-ujtgcH5EF+PZAD/1Y0+yI4m7y2hNJ3w4KB2pvKbdgsU=";
 
   ldflags = [
     "-s"
diff --git a/nixpkgs/pkgs/tools/misc/gosu/default.nix b/nixpkgs/pkgs/tools/misc/gosu/default.nix
index 033883ab1c8c..d4c233007d26 100644
--- a/nixpkgs/pkgs/tools/misc/gosu/default.nix
+++ b/nixpkgs/pkgs/tools/misc/gosu/default.nix
@@ -1,16 +1,16 @@
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "gosu";
-  version = "2017-05-09";
-  rev = "e87cf95808a7b16208515c49012aa3410bc5bba8";
+  version = "unstable-2017-05-09";
 
   goPackagePath = "github.com/tianon/gosu";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/tianon/gosu";
-    sha256 = "1qp1cfx0hrr4qlnh7rhjb4xlxv9697flmgzzl6jcdkrpk1f0bz8m";
+  src = fetchFromGitHub {
+    owner = "tianon";
+    repo = "gosu";
+    rev = "e87cf95808a7b16208515c49012aa3410bc5bba8";
+    sha256 = "sha256-Ff0FXJg3z8akof+/St1JJu1OO1kS5gMtxSRnCLpj4eI=";
   };
 
   goDeps = ./deps.nix;
diff --git a/nixpkgs/pkgs/tools/misc/gotify-desktop/default.nix b/nixpkgs/pkgs/tools/misc/gotify-desktop/default.nix
index 1da729c706d4..e34afda94241 100644
--- a/nixpkgs/pkgs/tools/misc/gotify-desktop/default.nix
+++ b/nixpkgs/pkgs/tools/misc/gotify-desktop/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "gotify-desktop";
-  version = "1.2.0";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "desbma";
     repo = pname;
     rev = version;
-    sha256 = "sha256-QQpZeXFv8BqFOQ+7ANWmtsgNlMakAL2ML4rlG2cFZJE=";
+    sha256 = "sha256-EDLOSxmODC7OzVSZJxwKNnFA2yh+QKE8aXmYJ+Dnv40=";
   };
 
-  cargoSha256 = "sha256-zcSAsI/yGGJer7SPKDKZ6NQ3UgTdBcDighS6VTNITMo=";
+  cargoSha256 = "sha256-opSXndOjdmYG5DJ3CDUHWhN6O7AQp4Cleldzq1Hfr1o=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/tools/misc/grub/trusted.nix b/nixpkgs/pkgs/tools/misc/grub/trusted.nix
index 13f3c42faa46..4947949ac5bb 100644
--- a/nixpkgs/pkgs/tools/misc/grub/trusted.nix
+++ b/nixpkgs/pkgs/tools/misc/grub/trusted.nix
@@ -1,5 +1,20 @@
-{ lib, stdenv, fetchurl, fetchgit, fetchpatch, autogen, flex, bison, python2, autoconf, automake
-, gettext, ncurses, libusb-compat-0_1, freetype, qemu, lvm2
+{ lib
+, stdenv
+, fetchurl
+, fetchFromGitHub
+, fetchpatch
+, autogen
+, flex
+, bison
+, python2
+, autoconf
+, automake
+, gettext
+, ncurses
+, libusb-compat-0_1
+, freetype
+, qemu
+, lvm2
 , for_HP_laptop ? false
 }:
 
@@ -32,17 +47,15 @@ stdenv.mkDerivation rec {
   pname = "trustedGRUB2";
   inherit version;
 
-  src = if for_HP_laptop
-        then fetchgit {
-          url = "https://github.com/Sirrix-AG/TrustedGRUB2";
-          rev = "ab483d389bda3115ca0ae4202fd71f2e4a31ad41";
-          sha256 = "1760d9hsnqkdvlag9nn8f613mqhnsxmidgvdkpmb37b0yi7p6lhz";
-        }
-        else fetchgit {
-          url = "https://github.com/Sirrix-AG/TrustedGRUB2";
-          rev = "1ff54a5fbe02ea01df5a7de59b1e0201e08d4f76";
-          sha256 = "0yrfwx67gpg9gij5raq0cfbx3jj769lkg3diqgb7i9n86hgcdh4k";
-        };
+  src = fetchFromGitHub {
+    owner = "Sirrix-AG";
+    repo = "TrustedGRUB2";
+    rev = version;
+    sha256 =
+      if for_HP_laptop
+      then "sha256-H1JzT/RgnbHqnW2/FmvXFuI6gnHI2vQU3W1iq2FqwJw="
+      else "sha256-k8DGHjTIpnjWw7GNN2kyR8rRl2MAq1xkfOndd0znLns=";
+  };
 
   nativeBuildInputs = [ autogen flex bison python2 autoconf automake ];
   buildInputs = [ ncurses libusb-compat-0_1 freetype gettext lvm2 ]
@@ -91,9 +104,10 @@ stdenv.mkDerivation rec {
   ];
 
   # save target that grub is compiled for
-  grubTarget = if inPCSystems
-               then "${pcSystems.${stdenv.hostPlatform.system}.target}-pc"
-               else "";
+  grubTarget =
+    if inPCSystems
+    then "${pcSystems.${stdenv.hostPlatform.system}.target}-pc"
+    else "";
 
   doCheck = false;
   # On -j16 races with early header creation:
diff --git a/nixpkgs/pkgs/tools/misc/gummy/default.nix b/nixpkgs/pkgs/tools/misc/gummy/default.nix
new file mode 100644
index 000000000000..f7950650f7fc
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/gummy/default.nix
@@ -0,0 +1,66 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, testVersion
+, gummy
+, cmake
+, libX11
+, libXext
+, sdbus-cpp
+, udev
+, coreutils
+}:
+
+stdenv.mkDerivation rec {
+  pname = "gummy";
+  version = "0.1";
+
+  src = fetchFromGitHub {
+    owner = "fushko";
+    repo = "gummy";
+    rev = version;
+    sha256 = "sha256-CbZFuvFMmbFVX8k3duhhsg0fd9kVmhsj0VeFYil9YiE=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+  ];
+
+  buildInputs = [
+    libX11
+    libXext
+    sdbus-cpp
+    udev
+  ];
+
+  cmakeFlags = [
+    "-DUDEV_DIR=${placeholder "out"}/lib/udev"
+  ];
+
+  # Fixes the "gummy start" command, without this it cannot find the binary.
+  # Setting this through cmake does not seem to work.
+  postPatch = ''
+    substituteInPlace src/gummy/gummy.cpp \
+      --replace "CMAKE_INSTALL_DAEMON_PATH" "\"${placeholder "out"}/libexec/gummyd\""
+  '';
+
+  preFixup = ''
+    substituteInPlace $out/lib/udev/99-gummy.rules \
+      --replace "/bin/chmod" "${coreutils}/bin/chmod"
+
+    ln -s $out/libexec/gummyd $out/bin/gummyd
+  '';
+
+  passthru.tests.version = testVersion { package = gummy; };
+
+  meta = with lib; {
+    homepage = "https://github.com/Fushko/gummy";
+    description = "Brightness and temperature manager for X11";
+    longDescription = ''
+      CLI screen manager for X11 that allows automatic and manual brightness/temperature adjustments,
+      via backlight (currently only for embedded displays) and gamma. Multiple monitors are supported.
+    '';
+    license = licenses.gpl3Only;
+    maintainers = [ maintainers.ivar ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/hashit/default.nix b/nixpkgs/pkgs/tools/misc/hashit/default.nix
index b9bf5f0ae5f8..5971939da174 100644
--- a/nixpkgs/pkgs/tools/misc/hashit/default.nix
+++ b/nixpkgs/pkgs/tools/misc/hashit/default.nix
@@ -24,7 +24,6 @@ stdenv.mkDerivation rec {
   buildInputs = [
     gtk3
     libgee
-    pantheon.elementary-icon-theme
     pantheon.granite
   ];
 
diff --git a/nixpkgs/pkgs/tools/misc/i3cat/default.nix b/nixpkgs/pkgs/tools/misc/i3cat/default.nix
index e91b17856ed7..79e93847932f 100644
--- a/nixpkgs/pkgs/tools/misc/i3cat/default.nix
+++ b/nixpkgs/pkgs/tools/misc/i3cat/default.nix
@@ -1,17 +1,24 @@
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "i3cat";
-  version = "20150321-${lib.strings.substring 0 7 rev}";
-  rev = "b9ba886a7c769994ccd8d4627978ef4b51fcf576";
+  version = "1.0";
 
   goPackagePath = "github.com/vincent-petithory/i3cat";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/vincent-petithory/i3cat";
-    sha256 = "1xlm5c9ajdb71985nq7hcsaraq2z06przbl6r4ykvzi8w2lwgv72";
+  src = fetchFromGitHub {
+    owner = "vincent-petithory";
+    repo = "i3cat";
+    rev = "v${version}";
+    sha256 = "sha256-BxiiYzSjvXAMUQSUTKviLvrmGjkCLW6QPrgBBHvvF+Q=";
   };
 
   goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "combine multiple i3bar JSON inputs into one to forward to i3bar";
+    homepage = "https://vincent-petithory.github.io/i3cat/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ];
+  };
 }
diff --git a/nixpkgs/pkgs/tools/misc/infracost/default.nix b/nixpkgs/pkgs/tools/misc/infracost/default.nix
index 293ee08a2752..920d4a19e793 100644
--- a/nixpkgs/pkgs/tools/misc/infracost/default.nix
+++ b/nixpkgs/pkgs/tools/misc/infracost/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "infracost";
-  version = "0.9.18";
+  version = "0.9.20";
 
   src = fetchFromGitHub {
     owner = "infracost";
     rev = "v${version}";
     repo = "infracost";
-    sha256 = "sha256-ukFY6Iy7RaUjECbMCMdOkulMdzUlsoBnyRiuzldXVc8=";
+    sha256 = "sha256-ujoKnf6f9rrPIxvWlzVnC6q+2BxzhpXgb66clgAuC+8=";
   };
-  vendorSha256 = "sha256-D4tXBXtD3FlWvp4GPIuo/2p3MKg81DVPT5pKVOGe/5c=";
+  vendorSha256 = "sha256-TfO3+pGxR9dPzigkx89a/Ak+tKiBa6Z0a6U4kIdRsSQ=";
 
   ldflags = [ "-s" "-w" "-X github.com/infracost/infracost/internal/version.Version=v${version}" ];
 
@@ -23,9 +23,9 @@ buildGoModule rec {
   checkPhase = ''
     runHook preCheck
 
-    # Remove tests that require networking
-    rm cmd/infracost/{breakdown_test,diff_test,run_test}.go
-
+    # remove tests that require networking
+    rm cmd/infracost/{breakdown,diff,hcl,run}_test.go
+    # checkFlags aren't correctly passed through via buildGoModule
     go test $checkFlags ''${ldflags:+-ldflags="$ldflags"} -v -p $NIX_BUILD_CORES ./...
 
     runHook postCheck
diff --git a/nixpkgs/pkgs/tools/misc/license-generator/default.nix b/nixpkgs/pkgs/tools/misc/license-generator/default.nix
new file mode 100644
index 000000000000..b880c66f971c
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/license-generator/default.nix
@@ -0,0 +1,20 @@
+{ lib, fetchCrate, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+    pname = "license-generator";
+    version = "0.8.1";
+
+    src = fetchCrate {
+      inherit pname version;
+      sha256 = "sha256-ZVhsbaJJ9WBcQPx2yikIAQJeBXwC6ZAJkfCRmokNV3I=";
+    };
+
+    cargoSha256 = "sha256-Yh9q/aYHXUF2eIFpJ7ccgeyIO5mQMgRDCNr+ZyS166Y=";
+
+    meta = with lib; {
+      description = "Command-line tool for generating license files";
+      homepage = "https://github.com/azu/license-generator";
+      license = licenses.mit;
+      maintainers = with maintainers; [ loicreynier ];
+    };
+}
diff --git a/nixpkgs/pkgs/tools/misc/mc/default.nix b/nixpkgs/pkgs/tools/misc/mc/default.nix
index c2425cf94cab..6f80c2c5e928 100644
--- a/nixpkgs/pkgs/tools/misc/mc/default.nix
+++ b/nixpkgs/pkgs/tools/misc/mc/default.nix
@@ -24,11 +24,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mc";
-  version = "4.8.27";
+  version = "4.8.28";
 
   src = fetchurl {
     url = "https://www.midnight-commander.org/downloads/${pname}-${version}.tar.xz";
-    sha256 = "sha256-Mb5ZIl/6mSCBbpqLO+CrIloW0Z5Pr0aJDyW9/6AqT/Q=";
+    sha256 = "sha256-6ZTZvppxcumsSkrWIQeSH2qjEuZosFbf5bi867r1OAM=";
   };
 
   nativeBuildInputs = [ pkg-config autoreconfHook unzip ]
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  configureFlags = [ "--enable-vfs-smb" "PERL=${perl}/bin/perl" ];
+  configureFlags = [ "PERL=${perl}/bin/perl" ];
 
   postPatch = ''
     substituteInPlace src/filemanager/ext.c \
@@ -92,6 +92,5 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ sander ];
     platforms = with platforms; linux ++ darwin;
-    repositories.git = "https://github.com/MidnightCommander/mc.git";
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/mcfly/default.nix b/nixpkgs/pkgs/tools/misc/mcfly/default.nix
index 583e415f093c..bb7ccb375ba1 100644
--- a/nixpkgs/pkgs/tools/misc/mcfly/default.nix
+++ b/nixpkgs/pkgs/tools/misc/mcfly/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mcfly";
-  version = "0.5.13";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "cantino";
     repo = "mcfly";
     rev = "v${version}";
-    sha256 = "sha256-6PGh+CUQH5LEV7/qctn+ihdZgqjt888wknXTfGPS3SI=";
+    sha256 = "sha256-k8Z/CS1vbnQvoddos7Y0KcM1zB8QDAbXaROjNCyPEN0=";
   };
 
   postPatch = ''
@@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec {
     substituteInPlace mcfly.fish --replace '(command which mcfly)'  '${placeholder "out"}/bin/mcfly'
   '';
 
-  cargoSha256 = "sha256-dpDuM+kGuCC2xm5EdV2OoxLNbKgi8wmTGrr8K16AnpM=";
+  cargoSha256 = "sha256-2SKgzVJdtzH9poHx/NJba6+lj/C0PBcEgI/2ITO18Bk=";
 
   meta = with lib; {
     homepage = "https://github.com/cantino/mcfly";
diff --git a/nixpkgs/pkgs/tools/misc/miniserve/default.nix b/nixpkgs/pkgs/tools/misc/miniserve/default.nix
index 89607f13ac97..d24fae2a1fa9 100644
--- a/nixpkgs/pkgs/tools/misc/miniserve/default.nix
+++ b/nixpkgs/pkgs/tools/misc/miniserve/default.nix
@@ -11,19 +11,27 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "miniserve";
-  version = "0.19.2";
+  version = "0.19.3";
 
   src = fetchFromGitHub {
     owner = "svenstaro";
     repo = "miniserve";
     rev = "v${version}";
-    sha256 = "sha256-/LmLz4hTmOjpR4Bqf+hABh3PSeaO/sSz/EgHp+nM20o=";
+    hash = "sha256-JlpjDUX8v7sGADhdKNQXoklbl/fw8DT0A6hEaUG61TQ=";
   };
 
-  cargoSha256 = "sha256-/KL5c5OeflNDKWuE5Gzqgcew9zf8HFjvmBid+mQSqZE=";
+  cargoSha256 = "sha256-5V8+Mcuu3fxG399QjW++/uWpPMvVWBfhI/L/6pmbkVY=";
 
-  nativeBuildInputs = [ installShellFiles pkg-config zlib ];
-  buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ];
+  nativeBuildInputs = [
+    installShellFiles
+    pkg-config
+    zlib
+  ];
+
+  buildInputs = lib.optionals stdenv.isDarwin [
+    libiconv
+    Security
+  ];
 
   checkFlags = [
     "--skip=bind_ipv4_ipv6::case_2"
@@ -38,7 +46,7 @@ rustPlatform.buildRustPackage rec {
   '';
 
   meta = with lib; {
-    description = "For when you really just want to serve some files over HTTP right now!";
+    description = "CLI tool to serve files and directories over HTTP";
     homepage = "https://github.com/svenstaro/miniserve";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ ];
diff --git a/nixpkgs/pkgs/tools/misc/mmctl/default.nix b/nixpkgs/pkgs/tools/misc/mmctl/default.nix
index 71e4de7479c0..c9de0bf14ca8 100644
--- a/nixpkgs/pkgs/tools/misc/mmctl/default.nix
+++ b/nixpkgs/pkgs/tools/misc/mmctl/default.nix
@@ -1,13 +1,13 @@
 { lib, fetchFromGitHub, buildGoModule }:
 buildGoModule rec {
   pname = "mmctl";
-  version = "6.3.3";
+  version = "6.4.2";
 
   src = fetchFromGitHub {
     owner = "mattermost";
     repo = "mmctl";
     rev = "v${version}";
-    sha256 = "sha256-V2p6diXymu37aJdHs0ZQJ7ak4LWe55KYCq15JRzMF48=";
+    sha256 = "sha256-FlqkY4LvAW9Cibs+3UkMDWA+uc62wMh13BllWuxjVZU=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/tools/misc/mmv/default.nix b/nixpkgs/pkgs/tools/misc/mmv/default.nix
index 2c58381100a4..1f2d61c6c819 100644
--- a/nixpkgs/pkgs/tools/misc/mmv/default.nix
+++ b/nixpkgs/pkgs/tools/misc/mmv/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mmv";
-  version = "2.1";
+  version = "2.3";
 
   src = fetchFromGitHub {
     owner = "rrthomas";
     repo = "mmv";
     rev = "v${version}";
-    sha256 = "sha256-3XWXOp30P/bOd+c7PC8duidewX8h0hk9VsEUw05dAE4=";
+    sha256 = "sha256-lujar6QGlhNawGOIfM5RAUa4Sbs0BFgG8rEsCDLqDDE=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/tools/misc/mpdscribble/default.nix b/nixpkgs/pkgs/tools/misc/mpdscribble/default.nix
index fce376bb32ed..deb610950e2d 100644
--- a/nixpkgs/pkgs/tools/misc/mpdscribble/default.nix
+++ b/nixpkgs/pkgs/tools/misc/mpdscribble/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mpdscribble";
-  version = "0.23";
+  version = "0.24";
 
   src = fetchurl {
     url = "https://www.musicpd.org/download/mpdscribble/${version}/mpdscribble-${version}.tar.xz";
-    sha256 = "0s66zqscb44p88cl3kcv5jkjcqsskcnrv7xgrjhzrchf2kcpwf53";
+    sha256 = "sha256-9rTLp0izuH5wUnC0kjyOI+lMLgD+3VC+sUaNvi+yqOc=";
   };
 
   nativeBuildInputs = [ pkg-config meson ninja ];
diff --git a/nixpkgs/pkgs/tools/misc/nbench/default.nix b/nixpkgs/pkgs/tools/misc/nbench/default.nix
index dc9dcb1e5bec..16e67b848d65 100644
--- a/nixpkgs/pkgs/tools/misc/nbench/default.nix
+++ b/nixpkgs/pkgs/tools/misc/nbench/default.nix
@@ -9,13 +9,15 @@ stdenv.mkDerivation rec {
     sha256 = "1b01j7nmm3wd92ngvsmn2sbw43sl9fpx4xxmkrink68fz1rx0gbj";
   };
 
-  buildInputs = [ stdenv.cc.libc.static ];
   prePatch = ''
     substituteInPlace nbench1.h --replace '"NNET.DAT"' "\"$out/NNET.DAT\""
+    substituteInPlace sysspec.h --replace "malloc.h" "stdlib.h"
+  '' + lib.optionalString stdenv.isDarwin ''
+    substituteInPlace Makefile --replace "-static" ""
   '';
-  preBuild = ''
-    makeFlagsArray=(CC=$CC)
-  '';
+
+  makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
+
   installPhase = ''
     mkdir -p $out/bin
     cp nbench $out/bin
@@ -25,7 +27,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://www.math.utah.edu/~mayer/linux/bmark.html";
     description = "A synthetic computing benchmark program";
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = with lib.maintainers; [ bennofs ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/nix-direnv/default.nix b/nixpkgs/pkgs/tools/misc/nix-direnv/default.nix
index f0fa2529f06f..731278cafe0e 100644
--- a/nixpkgs/pkgs/tools/misc/nix-direnv/default.nix
+++ b/nixpkgs/pkgs/tools/misc/nix-direnv/default.nix
@@ -7,13 +7,13 @@
 }:
 stdenv.mkDerivation rec {
   pname = "nix-direnv";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchFromGitHub {
     owner = "nix-community";
     repo = "nix-direnv";
     rev = version;
-    sha256 = "sha256-vMs4CyMhEy96gWMWXD74rTR1uNjU+y21i0dh6AdaMGE=";
+    sha256 = "sha256-WgNfo9GRqIrXsIgNRhoNPU2/uwyPd8xG8xEEImEy4KY=";
   };
 
   # Substitute instead of wrapping because the resulting file is
diff --git a/nixpkgs/pkgs/tools/misc/onefetch/default.nix b/nixpkgs/pkgs/tools/misc/onefetch/default.nix
index 860a9758d4f4..d5e77d4461d7 100644
--- a/nixpkgs/pkgs/tools/misc/onefetch/default.nix
+++ b/nixpkgs/pkgs/tools/misc/onefetch/default.nix
@@ -22,8 +22,15 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-16oiZAyj6haBk6mgUT25pPDUrCMd7pGo2kAQ0gTe2kM=";
   };
 
-  # enable pkg-config feature of zstd
-  cargoPatches = [ ./zstd-pkg-config.patch ];
+  cargoPatches = [
+    # enable pkg-config feature of zstd
+    ./zstd-pkg-config.patch
+    # fix flaky test
+    (fetchpatch {
+      url = "https://github.com/o2sh/onefetch/commit/2c1f2f0b2c666f6ce94af0299f88048dd1d83484.patch";
+      sha256 = "sha256-pI3yCFYkqOmLgKnCwexv1LcCrCkhi44zhEAx0szaMkg=";
+    })
+  ];
 
   cargoSha256 = "sha256-6wnfn33mfye5o/vY1JQX1Lc4+jzHiKKgGsSLxeJWyFc=";
 
diff --git a/nixpkgs/pkgs/tools/misc/opentelemetry-collector/contrib.nix b/nixpkgs/pkgs/tools/misc/opentelemetry-collector/contrib.nix
index 57a21a2822db..384c448e1d93 100644
--- a/nixpkgs/pkgs/tools/misc/opentelemetry-collector/contrib.nix
+++ b/nixpkgs/pkgs/tools/misc/opentelemetry-collector/contrib.nix
@@ -6,17 +6,17 @@
 
 buildGoModule rec {
   pname = "opentelemetry-collector-contrib";
-  version = "0.46.0";
+  version = "0.47.0";
 
   src = fetchFromGitHub {
     owner = "open-telemetry";
     repo = "opentelemetry-collector-contrib";
     rev = "v${version}";
-    sha256 = "sha256-VD/gN9lUwzhRTfr8rAQld+4sN+deYhUlNvCphtZncDU=";
+    sha256 = "sha256-IbpQd01uU6/Ihli+gVDjTB8T8cj//XHoZYcDjXD635Q=";
   };
   # proxy vendor to avoid hash missmatches between linux and macOS
   proxyVendor = true;
-  vendorSha256 = "sha256-ojNDDPCo6TGp8BYio/pYykXSLjC5Qplw0WFD9UIiYM4=";
+  vendorSha256 = "sha256-1svBCXfutjXfXfVqVHUTAt9T1ON/qbiS+VCt5kP/YIc=";
 
   subPackages = [ "cmd/otelcontribcol" ];
 
diff --git a/nixpkgs/pkgs/tools/misc/opentelemetry-collector/default.nix b/nixpkgs/pkgs/tools/misc/opentelemetry-collector/default.nix
index 851d4f2dc182..1feb290bb137 100644
--- a/nixpkgs/pkgs/tools/misc/opentelemetry-collector/default.nix
+++ b/nixpkgs/pkgs/tools/misc/opentelemetry-collector/default.nix
@@ -12,17 +12,17 @@ let
 in
 buildGoModule rec {
   pname = "opentelemetry-collector";
-  version = "0.46.0";
+  version = "0.47.0";
 
   src = fetchFromGitHub {
     owner = "open-telemetry";
     repo = "opentelemetry-collector";
     rev = "v${version}";
-    sha256 = "sha256-ibaA9oCSsId9A4ul5sfM+L8ExBl+Wv7rhGnb6TZ4WJw=";
+    sha256 = "sha256-1dMdQWV+gxbMc/2iVsB1LCsYxR0bt5AJEvoFq2/KHCg=";
   };
   # there is a nested go.mod
   sourceRoot = "source/cmd/otelcorecol";
-  vendorSha256 = "sha256-Okmsd/skfBmkyLv9oPFH0QvewFZFPpUH2ahWxHt7cy8=";
+  vendorSha256 = "sha256-ps6fUVg7vhGgy47WTJv/U1qHQ2MGXIWXNZ5Rddo1yQY=";
 
   preBuild = ''
     # set the build version, can't be done via ldflags
diff --git a/nixpkgs/pkgs/tools/misc/ostree/default.nix b/nixpkgs/pkgs/tools/misc/ostree/default.nix
index a4ecb4c527aa..6da0de81cd56 100644
--- a/nixpkgs/pkgs/tools/misc/ostree/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ostree/default.nix
@@ -41,13 +41,13 @@ let
   ]));
 in stdenv.mkDerivation rec {
   pname = "ostree";
-  version = "2022.1";
+  version = "2022.2";
 
   outputs = [ "out" "dev" "man" "installedTests" ];
 
   src = fetchurl {
     url = "https://github.com/ostreedev/ostree/releases/download/v${version}/libostree-${version}.tar.xz";
-    sha256 = "sha256-Q6AOeFaEK4o09mFvws4c4jjvQyEMykH3DmtLDSqfytU=";
+    sha256 = "sha256-duL1tXhNjLaG6QvjL87LtWxsaoJOA3ShpoILV3EDZ2s=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/tools/misc/pandoc-include/default.nix b/nixpkgs/pkgs/tools/misc/pandoc-include/default.nix
new file mode 100644
index 000000000000..a0ce0f96b437
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/pandoc-include/default.nix
@@ -0,0 +1,30 @@
+{ buildPythonApplication
+, fetchFromGitHub
+, lib
+, natsort
+, panflute
+}:
+
+buildPythonApplication rec {
+  pname = "pandoc-include";
+  version = "1.2.0";
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "DCsunset";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-kuxud7m+sWcNqE8A+Fwb8ATgiUwxQvHeYBTyw1UzX4U=";
+  };
+
+  propagatedBuildInputs = [ natsort panflute ];
+
+  pythonImportsCheck = [ "pandoc_include.main" ];
+
+  meta = with lib; {
+    description = "Pandoc filter to allow file and header includes";
+    homepage = "https://github.com/DCsunset/pandoc-include";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ppenguin ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/parallel/default.nix b/nixpkgs/pkgs/tools/misc/parallel/default.nix
index 2eca9f6891a5..b39cfda17d6f 100644
--- a/nixpkgs/pkgs/tools/misc/parallel/default.nix
+++ b/nixpkgs/pkgs/tools/misc/parallel/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "parallel";
-  version = "20220222";
+  version = "20220322";
 
   src = fetchurl {
     url = "mirror://gnu/parallel/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-+BaCuGPq1/uaEUdUAB6ShvlUVQpXo882yQA6gEempEU=";
+    sha256 = "sha256-35PM9qn1Ka0hJrcEKu8EhmA+k4x3tAWTnEFwLTik5tg=";
   };
 
   outputs = [ "out" "man" "doc" ];
diff --git a/nixpkgs/pkgs/tools/misc/pg_flame/default.nix b/nixpkgs/pkgs/tools/misc/pg_flame/default.nix
index 7625e67e0010..ca58e2a65700 100644
--- a/nixpkgs/pkgs/tools/misc/pg_flame/default.nix
+++ b/nixpkgs/pkgs/tools/misc/pg_flame/default.nix
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   vendorSha256 = "1rkx20winh66y2m7i7q13jpr83044i2d1pfd5p5l5kkpsix5mra5";
 
-  doCheck = false;
-
   meta = with lib; {
     description = "Flamegraph generator for Postgres EXPLAIN ANALYZE output";
     homepage = "https://github.com/mgartner/pg_flame";
diff --git a/nixpkgs/pkgs/tools/misc/plantuml-server/default.nix b/nixpkgs/pkgs/tools/misc/plantuml-server/default.nix
index 8b6c52446aa8..8be9c0eecee4 100644
--- a/nixpkgs/pkgs/tools/misc/plantuml-server/default.nix
+++ b/nixpkgs/pkgs/tools/misc/plantuml-server/default.nix
@@ -1,69 +1,20 @@
-{ lib, stdenv, fetchFromGitHub, maven, jdk17_headless }:
+{ lib, stdenv, fetchurl }:
 
 let
   version = "1.2022.2";
-
-  src = fetchFromGitHub {
-    owner = "plantuml";
-    repo = "plantuml-server";
-    rev = "v${version}";
-    sha256 = "sha256-55IBhulFo42jscBFrHM39qA0GRgKBoYNye4q9QkmjsM=";
-  };
-
-  # perform fake build to make a fixed-output derivation out of the files downloaded from maven central
-  deps = stdenv.mkDerivation {
-    name = "plantuml-server-${version}-deps";
-    inherit src;
-    nativeBuildInputs = [ jdk17_headless maven ];
-    buildPhase = ''
-      runHook preBuild
-
-      while mvn package -Dmaven.repo.local=$out/.m2; [ $? = 1 ]; do
-        echo "timeout, restart maven to continue downloading"
-      done
-
-      runHook postBuild
-    '';
-    # keep only *.{pom,jar,sha1,nbm} and delete all ephemeral files with lastModified timestamps inside
-    installPhase = ''
-      find $out/.m2 -type f -regex '.+\(\.lastUpdated\|resolver-status\.properties\|_remote\.repositories\)' -delete
-    '';
-    outputHashAlgo = "sha256";
-    outputHashMode = "recursive";
-    outputHash = "sha256-AheCBX5jFzDHqTI2pCWBIiDESEKMClXlvWIcFvu0goA=";
-  };
 in
-
 stdenv.mkDerivation rec {
   pname = "plantuml-server";
   inherit version;
-  inherit src;
-
-  nativeBuildInputs = [ jdk17_headless maven ];
-
-  buildPhase = ''
-    runHook preBuild
-
-    # maven can output reproducible files after setting project.build.outputTimestamp property
-    # see https://maven.apache.org/guides/mini/guide-reproducible-builds.html#how-do-i-configure-my-maven-build
-    # 'maven.repo.local' must be writable so copy it out of nix store
-    cp -R $src repo
-    chmod +w -R repo
-    cd repo
-    mvn package --offline \
-      -Dproject.build.outputTimestamp=0 \
-      -Dmaven.repo.local=$(cp -dpR ${deps}/.m2 ./ && chmod +w -R .m2 && pwd)/.m2
-
-    runHook postBuild
-  '';
+  src = fetchurl {
+    url = "https://github.com/plantuml/plantuml-server/releases/download/v${version}/plantuml-v${version}.war";
+    sha256 = "sha256-h4ulXzZ5L+VPhk2CnZQNxfnEJzWT3B9TNvDEWt4o9Hk=";
+  };
 
+  dontUnpack = true;
   installPhase = ''
-    runHook preInstall
-
     mkdir -p "$out/webapps"
-    cp "target/plantuml.war" "$out/webapps/plantuml.war"
-
-    runHook postInstall
+    cp "$src" "$out/webapps/plantuml.war"
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/misc/remind/default.nix b/nixpkgs/pkgs/tools/misc/remind/default.nix
index 91251abde131..6d5e0e37703b 100644
--- a/nixpkgs/pkgs/tools/misc/remind/default.nix
+++ b/nixpkgs/pkgs/tools/misc/remind/default.nix
@@ -16,11 +16,11 @@ let
 in
 tcl.mkTclDerivation rec {
   pname = "remind";
-  version = "03.04.01";
+  version = "03.04.02";
 
   src = fetchurl {
     url = "https://dianne.skoll.ca/projects/remind/download/remind-${version}.tar.gz";
-    sha256 = "sha256-8INtFmftMb1JSotUdDtMXdSm+UE/8zQW/wIOExr8nkI=";
+    sha256 = "sha256-kjDcO0l39l2KJXo0elZesKZWDZoSoUXIu1Ua7IxWY4w=";
   };
 
   propagatedBuildInputs = tclLibraries;
diff --git a/nixpkgs/pkgs/tools/misc/rockbox-utility/default.nix b/nixpkgs/pkgs/tools/misc/rockbox-utility/default.nix
index a75b90d6f542..bf191beca3fe 100644
--- a/nixpkgs/pkgs/tools/misc/rockbox-utility/default.nix
+++ b/nixpkgs/pkgs/tools/misc/rockbox-utility/default.nix
@@ -1,9 +1,13 @@
-{ lib, stdenv, fetchurl, pkg-config, cryptopp
-, libusb1, qtbase, qttools, makeWrapper
-, qmake, withEspeak ? false, espeak ? null
-, qt5 }:
-
-let inherit (lib) getDev; in
+{ lib
+, stdenv
+, fetchurl
+, cryptopp
+, libusb1
+, makeWrapper
+, pkg-config
+, qt5
+, withEspeak ? false, espeak ? null
+}:
 
 stdenv.mkDerivation  rec {
   pname = "rockbox-utility";
@@ -11,16 +15,27 @@ stdenv.mkDerivation  rec {
 
   src = fetchurl {
     url = "https://download.rockbox.org/rbutil/source/RockboxUtility-v${version}-src.tar.bz2";
-    sha256 = "0zm9f01a810y7aq0nravbsl0vs9vargwvxnfl4iz9qsqygwlj69y";
+    hash = "sha256-PhlJ+fNY4/Qjoc72zV9WO+kNqF5bZQuwOh4EpAJwqX4=";
   };
 
-  buildInputs = [ cryptopp libusb1 qtbase qttools ]
-    ++ lib.optional withEspeak espeak;
-  nativeBuildInputs = [ makeWrapper pkg-config qmake qt5.wrapQtAppsHook ];
+  nativeBuildInputs = [
+    makeWrapper
+    pkg-config
+    qt5.qmake
+    qt5.wrapQtAppsHook
+  ];
+
+  buildInputs = [
+    cryptopp
+    libusb1
+    qt5.qtbase
+    qt5.qttools
+  ]
+  ++ lib.optional withEspeak espeak;
 
   postPatch = ''
     sed -i rbutil/rbutilqt/rbutilqt.pro \
-        -e '/^lrelease.commands =/ s|$$\[QT_INSTALL_BINS\]/lrelease -silent|${getDev qttools}/bin/lrelease|'
+        -e '/^lrelease.commands =/ s|$$\[QT_INSTALL_BINS\]/lrelease -silent|${lib.getDev qt5.qttools}/bin/lrelease|'
   '';
 
   preConfigure = ''
@@ -48,10 +63,10 @@ stdenv.mkDerivation  rec {
   enableParallelBuilding = false;
 
   meta = with lib; {
-    description = "Open source firmware for mp3 players";
     homepage = "https://www.rockbox.org";
-    license = licenses.gpl2;
+    description = "Open source firmware for digital music players";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ AndersonTorres goibhniu ];
     platforms = platforms.linux;
-    maintainers = with maintainers; [ goibhniu ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/rpm-ostree/default.nix b/nixpkgs/pkgs/tools/misc/rpm-ostree/default.nix
index 09422cd2d4bc..2b7032929500 100644
--- a/nixpkgs/pkgs/tools/misc/rpm-ostree/default.nix
+++ b/nixpkgs/pkgs/tools/misc/rpm-ostree/default.nix
@@ -40,13 +40,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rpm-ostree";
-  version = "2022.2";
+  version = "2022.3";
 
   outputs = [ "out" "dev" "man" "devdoc" ];
 
   src = fetchurl {
     url = "https://github.com/coreos/${pname}/releases/download/v${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-wy6zmVy7+31+wadLldWdf/IyT0dyLArYLmGw/Kgd+sU=";
+    sha256 = "sha256-ERDaCLj/qvyzAxmpUfFsCx9fsDjlhQ19PRyUTVZ2Z2w=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/misc/sam-ba/default.nix b/nixpkgs/pkgs/tools/misc/sam-ba/default.nix
index 60853d2cf7ef..291063f43cb1 100644
--- a/nixpkgs/pkgs/tools/misc/sam-ba/default.nix
+++ b/nixpkgs/pkgs/tools/misc/sam-ba/default.nix
@@ -1,40 +1,35 @@
-{ lib, stdenv, fetchzip, libX11, libXScrnSaver, libXext, libXft, libXrender
-, freetype, zlib, fontconfig
-}:
-
-let
-  maybe64 = if stdenv.isx86_64 then "_64" else "";
-  libPath = lib.makeLibraryPath
-    [ stdenv.cc.cc.lib libX11 libXScrnSaver libXext libXft libXrender freetype
-      zlib fontconfig
-    ];
-in
+{ lib, stdenv, fetchzip, glib, zlib, libglvnd, python3, autoPatchelfHook }:
+
 stdenv.mkDerivation rec {
-  version = "2.16";
+  version = "3.5";
   pname = "sam-ba";
 
   src = fetchzip {
-    url = "http://www.atmel.com/dyn/resources/prod_documents/sam-ba_${version}_linux.zip";
-    sha256 = "18lsi4747900cazq3bf0a87n3pc7751j5papj9sxarjymcz9vks4";
+    url = "https://ww1.microchip.com/downloads/en/DeviceDoc/sam-ba_${version}-linux_x86_64.tar.gz";
+    sha256 = "1k0nbgyc98z94nphm2q7s82b274clfnayf4a2kv93l5594rzdbp1";
   };
 
-  # Pre-built binary package. Install everything to /opt/sam-ba to not mess up
-  # the internal directory structure. Then create wrapper in /bin. Attemts to
-  # use "patchelf --set-rpath" instead of setting LD_PRELOAD_PATH failed.
+  buildInputs = [
+    glib
+    libglvnd
+    zlib
+
+    (python3.withPackages (ps: [ps.pyserial]))
+  ];
+
+  nativeBuildInputs = [ autoPatchelfHook ];
+
   installPhase = ''
+    runHook preInstall
+
     mkdir -p "$out/bin/" \
              "$out/opt/sam-ba/"
     cp -a . "$out/opt/sam-ba/"
-    patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$out/opt/sam-ba/sam-ba${maybe64}"
-    cat > "$out/bin/sam-ba" << EOF
-    export LD_LIBRARY_PATH="${libPath}"
-    exec "$out/opt/sam-ba/sam-ba${maybe64}"
-    EOF
-    chmod +x "$out/bin/sam-ba"
-  '';
+    ln -sr "$out/opt/sam-ba/sam-ba" "$out/bin/"
+    ln -sr "$out/opt/sam-ba/multi_sam-ba.py" "$out/bin/"
 
-  # Do our own thing
-  dontPatchELF = true;
+    runHook postInstall
+  '';
 
   meta = with lib; {
     description = "Programming tools for Atmel SAM3/7/9 ARM-based microcontrollers";
@@ -42,10 +37,10 @@ stdenv.mkDerivation rec {
       Atmel SAM-BA software provides an open set of tools for programming the
       Atmel SAM3, SAM7 and SAM9 ARM-based microcontrollers.
     '';
+    # Alternatively: https://www.microchip.com/en-us/development-tool/SAM-BA-In-system-Programmer
     homepage = "http://www.at91.com/linux4sam/bin/view/Linux4SAM/SoftwareTools";
-    # License in <source>/doc/readme.txt
-    license = "BSD-like (partly binary-only)";  # according to Buildroot
-    platforms = [ "x86_64-linux" ];  # patchelf fails on i686-linux
+    license = lib.licenses.gpl2Only;
+    platforms = [ "x86_64-linux" ];
     maintainers = [ maintainers.bjornfor ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/sdl-jstest/default.nix b/nixpkgs/pkgs/tools/misc/sdl-jstest/default.nix
index c299a140b079..d6c336990cf0 100644
--- a/nixpkgs/pkgs/tools/misc/sdl-jstest/default.nix
+++ b/nixpkgs/pkgs/tools/misc/sdl-jstest/default.nix
@@ -1,14 +1,15 @@
-{ lib, stdenv, fetchgit, cmake, pkg-config, SDL, SDL2, ncurses, docbook_xsl, git }:
+{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, SDL, SDL2, ncurses, docbook_xsl, git }:
 
 stdenv.mkDerivation {
   pname = "sdl-jstest";
   version = "2018-06-15";
 
-  # Submodules
-  src = fetchgit {
-    url = "https://github.com/Grumbel/sdl-jstest";
+  src = fetchFromGitHub {
+    owner = "Grumbel";
+    repo = "sdl-jstest";
     rev = "aafbdb1ed3e687583037ba55ae88b1210d6ce98b";
-    sha256 = "0p4cjzcq0bbkzad19jwdklylqhq2q390q7dpg8bfzl2rwls883rk";
+    sha256 = "sha256-Mw+ENOVZ0O8WercdDNLAAkNMPZ2NyxSa+nMtgNmXjFw=";
+    fetchSubmodules = true;
   };
 
   buildInputs = [ SDL SDL2 ncurses ];
diff --git a/nixpkgs/pkgs/tools/misc/smug/default.nix b/nixpkgs/pkgs/tools/misc/smug/default.nix
index afa21afa6666..cf78662620ce 100644
--- a/nixpkgs/pkgs/tools/misc/smug/default.nix
+++ b/nixpkgs/pkgs/tools/misc/smug/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
 
 buildGoModule rec {
   pname = "smug";
@@ -9,12 +9,20 @@ buildGoModule rec {
   src = fetchFromGitHub {
     owner = "ivaaaan";
     repo = "smug";
-    rev = "3399f02a6e01324f5bb881f6b049c9e8d94733ee";
+    rev = "v${version}";
     sha256 = "178125835dhnaq9k42yv4pfxpyhgb5179wrxkimb59fy0nk8jzx8";
   };
 
   vendorSha256 = "1rba5rpvlr8dyhj145b5i57pm4skfpj3vm7vydkn79k6ak6x985x";
 
+  nativeBuildInputs = [ installShellFiles ];
+
+  ldflags = [ "-s" "-w" "-X=main.version=${version}" ];
+
+  postInstall = ''
+    installManPage ./man/man1/smug.1
+  '';
+
   meta = with lib; {
     homepage = "https://github.com/ivaaaan/smug";
     description = "Smug - tmux session manager";
diff --git a/nixpkgs/pkgs/tools/misc/starship/default.nix b/nixpkgs/pkgs/tools/misc/starship/default.nix
index d61fd9ddda98..a27674290d67 100644
--- a/nixpkgs/pkgs/tools/misc/starship/default.nix
+++ b/nixpkgs/pkgs/tools/misc/starship/default.nix
@@ -2,10 +2,10 @@
 , stdenv
 , fetchFromGitHub
 , rustPlatform
-, pkg-config
-, openssl
 , installShellFiles
 , libiconv
+, libgit2
+, pkg-config
 , nixosTests
 , Security
 , Foundation
@@ -22,10 +22,9 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-mqUE4JzNBhvtDpT2LM23eHX8q93wtPqA+/zr/PxEDiE=";
   };
 
-  nativeBuildInputs = [ installShellFiles ] ++ lib.optionals stdenv.isLinux [ pkg-config ];
+  nativeBuildInputs = [ installShellFiles pkg-config ];
 
-  buildInputs = lib.optionals stdenv.isLinux [ openssl ]
-    ++ lib.optionals stdenv.isDarwin [ libiconv Security Foundation ];
+  buildInputs = [ libgit2 ] ++ lib.optionals stdenv.isDarwin [ libiconv Security Foundation ];
 
   postInstall = ''
     for shell in bash fish zsh; do
diff --git a/nixpkgs/pkgs/tools/misc/steampipe/default.nix b/nixpkgs/pkgs/tools/misc/steampipe/default.nix
index cfdb2b79c6df..ee97166deb11 100644
--- a/nixpkgs/pkgs/tools/misc/steampipe/default.nix
+++ b/nixpkgs/pkgs/tools/misc/steampipe/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "steampipe";
-  version = "0.13.0";
+  version = "0.13.3";
 
   src = fetchFromGitHub {
     owner = "turbot";
     repo = "steampipe";
     rev = "v${version}";
-    sha256 = "sha256-+QtZmrPE3R98UVSwrC8xoehNKwd0Exg+AZ2BJxBIrfY=";
+    sha256 = "sha256-zU/FWrlE4TQhzRNOVED7hFub+lehPFD+fEJ3v0PFGdM=";
   };
 
-  vendorSha256 = "sha256-rRp8pR2cpW88o0KPwuvgSkE263S5oGK/4df4CQSOlRo=";
+  vendorSha256 = "sha256-0jixQcgSXQJAd899EWOUKde5OXZcSZwQfH7LRdQlm7c=";
   proxyVendor = true;
 
   # tests are failing for no obvious reasons
diff --git a/nixpkgs/pkgs/tools/misc/topgrade/default.nix b/nixpkgs/pkgs/tools/misc/topgrade/default.nix
index e1b96d971779..dfa9b18afd22 100644
--- a/nixpkgs/pkgs/tools/misc/topgrade/default.nix
+++ b/nixpkgs/pkgs/tools/misc/topgrade/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "topgrade";
-  version = "8.2.0";
+  version = "8.3.0";
 
   src = fetchFromGitHub {
     owner = "r-darwish";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-WyiEKC5WUwIGCaxXqiqNyOcGVZgfd2lVFMxQxhgJhMc=";
+    sha256 = "sha256-iFS8Bf2IF0GoW168DwfBbkiPd7IGJhGShofFnBESpUc=";
   };
 
-  cargoSha256 = "sha256-ZcOSHEZHGa1XhGQlW4pR5hBJ2SpSbkKuRS6OSHGg9Lo=";
+  cargoSha256 = "sha256-8Ag4rDXnDZgxdwFpiWnYNjDeau9vr9EIfbJzeQlqSDM=";
 
   buildInputs = lib.optional stdenv.isDarwin Foundation;
 
diff --git a/nixpkgs/pkgs/tools/misc/ttchat/default.nix b/nixpkgs/pkgs/tools/misc/ttchat/default.nix
new file mode 100644
index 000000000000..c88f4098b768
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/ttchat/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "ttchat";
+  version = "0.1.6";
+
+  src = fetchFromGitHub {
+    owner = "atye";
+    repo = "ttchat";
+    rev = "v${version}";
+    sha256 = "sha256-Km8aBThs2h8vVpQQaN/OuDeQcrewhP0hMMRuU8/1Ilk=";
+  };
+
+  vendorSha256 = "sha256-pJAwx7RmD2sSHsz1DxtsU7bjC/b0JujlrFeGL6zmTiI=";
+
+  meta = with lib; {
+    description = "Connect to a Twitch channel's chat from your terminal";
+    homepage = "https://github.com/atye/ttchat";
+    license = licenses.asl20;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ wolfangaukang ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/up/default.nix b/nixpkgs/pkgs/tools/misc/up/default.nix
index 47c504cd1a71..7737c67faa23 100644
--- a/nixpkgs/pkgs/tools/misc/up/default.nix
+++ b/nixpkgs/pkgs/tools/misc/up/default.nix
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   vendorSha256 = "1q8wfsfl3rz698ck5q5s5z6iw9k134fxxvwipcp2b052n998rcrx";
 
-  doCheck = false;
-
   meta = with lib; {
     description = "Ultimate Plumber is a tool for writing Linux pipes with instant live preview";
     homepage = "https://github.com/akavel/up";
diff --git a/nixpkgs/pkgs/tools/misc/upower-notify/default.nix b/nixpkgs/pkgs/tools/misc/upower-notify/default.nix
index 79460f3a5b79..c46ad10a40af 100644
--- a/nixpkgs/pkgs/tools/misc/upower-notify/default.nix
+++ b/nixpkgs/pkgs/tools/misc/upower-notify/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 # To use upower-notify, the maintainer suggests adding something like this to your configuration.nix:
 #
@@ -8,16 +8,22 @@
 # '';
 buildGoPackage rec {
   pname = "upower-notify";
-  version = "20160310-${lib.strings.substring 0 7 rev}";
-  rev = "14c581e683a7e90ec9fa6d409413c16599a5323c";
+  version = "unstable-2016-03-10";
 
   goPackagePath = "github.com/omeid/upower-notify";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/omeid/upower-notify";
+  src = fetchFromGitHub {
+    owner = "omeid";
+    repo = "upower-notify";
+    rev = "14c581e683a7e90ec9fa6d409413c16599a5323c";
     sha256 = "16zlvn53p9m10ph8n9gps51fkkvl6sf4afdzni6azk05j0ng49jw";
   };
 
   goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "simple tool to give you Desktop Notifications about your battery";
+    homepage = "https://github.com/omeid/upower-notify";
+    maintainers = with maintainers; [ kamilchm ];
+  };
 }
diff --git a/nixpkgs/pkgs/tools/misc/youtube-dl/default.nix b/nixpkgs/pkgs/tools/misc/youtube-dl/default.nix
index 4673ab41654e..79d3ab7b6388 100644
--- a/nixpkgs/pkgs/tools/misc/youtube-dl/default.nix
+++ b/nixpkgs/pkgs/tools/misc/youtube-dl/default.nix
@@ -31,11 +31,12 @@ buildPythonPackage rec {
     #
     #   https://github.com/ytdl-org/youtube-dl/issues/29326
     #
-    # The patch comes from PR https://github.com/ytdl-org/youtube-dl/pull/30188
+    # The patch comes from PR https://github.com/ytdl-org/youtube-dl/pull/30184#issuecomment-1025261055
+    # plus follow-up (1e677567) from https://github.com/ytdl-org/youtube-dl/pull/30582
     (fetchpatch {
       name = "fix-youtube-dl-speed.patch";
-      url = "https://github.com/ytdl-org/youtube-dl/pull/30188.patch";
-      sha256 = "15liban37ina2y4bnykfdywdy4rbkfff2r6vd0kqn2k7rfkcczyz";
+      url = "https://github.com/ytdl-org/youtube-dl/compare/57044eacebc6f2f3cd83c345e1b6e659a22e4773...1e677567cd083d43f55daef0cc74e5fa24575ae3.diff";
+      sha256 = "11s0j3w60r75xx20p0x2j3yc4d3yvz99r0572si8b5qd93lqs4pr";
     })
   ];
 
@@ -70,13 +71,13 @@ buildPythonPackage rec {
     homepage = "https://ytdl-org.github.io/youtube-dl/";
     description = "Command-line tool to download videos from YouTube.com and other sites";
     longDescription = ''
-      youtube-dl is a small, Python-based command-line program
-      to download videos from YouTube.com and a few more sites.
-      youtube-dl is released to the public domain, which means
-      you can modify it, redistribute it or use it however you like.
+      youtube-dl is a small, Python-based command-line program to download
+      videos from YouTube.com and a few more sites.  youtube-dl is released to
+      the public domain, which means you can modify it, redistribute it or use
+      it however you like.
     '';
     license = licenses.publicDomain;
+    maintainers = with maintainers; [ bluescreen303 fpletz ma27 ];
     platforms = with platforms; linux ++ darwin;
-    maintainers = with maintainers; [ bluescreen303 AndersonTorres fpletz ma27 ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/ytmdl/default.nix b/nixpkgs/pkgs/tools/misc/ytmdl/default.nix
index 90a0590b8d95..c2a2a2adf2df 100644
--- a/nixpkgs/pkgs/tools/misc/ytmdl/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ytmdl/default.nix
@@ -1,16 +1,17 @@
 { lib
 , python3Packages
+, yt-dlp
 , ffmpeg
 }:
 
 python3Packages.buildPythonApplication rec {
   pname = "ytmdl";
-  version = "2021.08.01";
+  version = "2022.03.16";
 
   src = python3Packages.fetchPypi {
     inherit pname;
     version = builtins.replaceStrings [ ".0" ] [ "." ] version;
-    sha256 = "f5ef23dcba89aaf2307baf4ffc2326dc5c02324f646e5e5748219ed328202af4";
+    sha256 = "sha256-2lEOgwSi4fAVK+gJXvjWQDBWIb1cODFmUiq0FUfpyXA=";
   };
 
   postPatch = ''
@@ -34,7 +35,7 @@ python3Packages.buildPythonApplication rec {
     itunespy
     mutagen
     pysocks
-    youtube-dl
+    yt-dlp
     ytmusicapi
     spotipy
   ];
diff --git a/nixpkgs/pkgs/tools/misc/zellij/default.nix b/nixpkgs/pkgs/tools/misc/zellij/default.nix
index 7fc1c6e335a5..4855e979ed65 100644
--- a/nixpkgs/pkgs/tools/misc/zellij/default.nix
+++ b/nixpkgs/pkgs/tools/misc/zellij/default.nix
@@ -15,16 +15,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "zellij";
-  version = "0.26.0";
+  version = "0.26.1";
 
   src = fetchFromGitHub {
     owner = "zellij-org";
     repo = "zellij";
     rev = "v${version}";
-    sha256 = "sha256-8PgEsRh2nBOIvKeX9SJ853NN8Szb4geKwv2qvTtkMxk=";
+    sha256 = "sha256-ngCE1DhbbuOu07R69gSlFvDKl5EFtTGOkfr5e4u4Dkw=";
   };
 
-  cargoSha256 = "sha256-YaqaXn1Ol5RfwAzWi7767vt1je+wqWFtfgxMOSIy9UI=";
+  cargoSha256 = "sha256-lRnxZiJiq601oOXkxZqVNPXc0miK3TsAyGeVTjTxdhw=";
 
   nativeBuildInputs = [
     mandown
diff --git a/nixpkgs/pkgs/tools/networking/aardvark-dns/default.nix b/nixpkgs/pkgs/tools/networking/aardvark-dns/default.nix
index 5d49842237f2..412b3e0349c0 100644
--- a/nixpkgs/pkgs/tools/networking/aardvark-dns/default.nix
+++ b/nixpkgs/pkgs/tools/networking/aardvark-dns/default.nix
@@ -5,26 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "aardvark-dns";
-  version = "1.0.1";
+  version = "1.0.2";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-6O/7GoGH0xNbTfIFeD5VLrifNFpHcxxG0bdq/YQb3Ew=";
+    sha256 = "sha256-d4YSCVZkNung4frgAeP46E9Ptpnu9y0HwmPRADo4t0U=";
   };
 
-  cargoHash = "sha256-YdHIyCJ00MKH8PL0osOqQIMwaws3+cOUwvhvA8mOp84=";
-
-  preBuild = ''
-    rm build.rs
-
-    export \
-      VERGEN_BUILD_SEMVER="${version}" \
-      VERGEN_BUILD_TIMESTAMP="$SOURCE_DATE_EPOCH" \
-      VERGEN_GIT_SHA="${src.rev}" \
-      VERGEN_RUSTC_HOST_TRIPLE=""
-  '';
+  cargoHash = "sha256-fu7ZopS55IzzeO7uzLx1wVHQ8A1Ff+9f7FagoZPerxk=";
 
   meta = with lib; {
     description = "Authoritative dns server for A/AAAA container records";
diff --git a/nixpkgs/pkgs/tools/networking/amass/default.nix b/nixpkgs/pkgs/tools/networking/amass/default.nix
index 867943783ba2..409072f50bac 100644
--- a/nixpkgs/pkgs/tools/networking/amass/default.nix
+++ b/nixpkgs/pkgs/tools/networking/amass/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "amass";
-  version = "3.17.1";
+  version = "3.18.3";
 
   src = fetchFromGitHub {
     owner = "OWASP";
     repo = "Amass";
     rev = "v${version}";
-    sha256 = "sha256-AFy0Ob6caU3yGC9s5Til5sYZ3A4qiEeU96OfeMlR/Q4=";
+    sha256 = "sha256-DsIqG+r2PrMKEypLuLky60U3nXNt0Ms9YrZetIQGnpE=";
   };
 
-  vendorSha256 = "sha256-6qfHoP7TOmRZLIiijRfQxyct+486TXQ18cdH8pdhwmQ=";
+  vendorSha256 = "sha256-hYrv5z+9JY7gXkC4xQvko7qhwBtzywUy0TMqrlgqXb0=";
 
   outputs = [ "out" "wordlists" ];
 
diff --git a/nixpkgs/pkgs/tools/networking/boundary/default.nix b/nixpkgs/pkgs/tools/networking/boundary/default.nix
index 3745856a8c0b..c86c9c5fd681 100644
--- a/nixpkgs/pkgs/tools/networking/boundary/default.nix
+++ b/nixpkgs/pkgs/tools/networking/boundary/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "boundary";
-  version = "0.7.5";
+  version = "0.7.6";
 
   src =
     let
@@ -15,10 +15,10 @@ stdenv.mkDerivation rec {
         aarch64-darwin = "darwin_arm64";
       };
       sha256 = selectSystem {
-        x86_64-linux = "sha256-wqNeeEQhR8cj7Gpbzp7UQV0j+w0peo41uKqgK9BoLH4=";
-        aarch64-linux = "sha256-HK/6eMBWUW1IbYE5RpInhcQuIw16X9vQEZmOBje9Yzk=";
-        x86_64-darwin = "sha256-ghgkPlEN9DHFviQzcGS/+oG+9Qqy2AfJ2IEyiSMJwwY=";
-        aarch64-darwin = "sha256-F4iOCxAm8s34KktuS5PRPkIg9A0179H6zlOM3OuTyUw=";
+        x86_64-linux = "sha256-nsc8S63OUEo9db/hs9oA53Lk+amIsxB/O4TJCs4zdNw=";
+        aarch64-linux = "sha256-KttqYuF7xC88L49f7JKKr77FbKBihptoBIoemgFInm0=";
+        x86_64-darwin = "sha256-ov4CtiWsOU/AWfAo7x99RshW6+eU9lFD5ypo6MKyPM0=";
+        aarch64-darwin = "sha256-3E9fv8BSu7XXIwRmTrDECLNQKdoeUqitKbsTrXs+tTE=";
       };
     in
     fetchzip {
diff --git a/nixpkgs/pkgs/tools/networking/brook/default.nix b/nixpkgs/pkgs/tools/networking/brook/default.nix
index f18dad8c0c13..df383409f4d2 100644
--- a/nixpkgs/pkgs/tools/networking/brook/default.nix
+++ b/nixpkgs/pkgs/tools/networking/brook/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "brook";
-  version = "20220404";
+  version = "20220406";
 
   src = fetchFromGitHub {
     owner = "txthinking";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-yQuGaj5HukO+OENCpVMkoXv2AztygjrDPXgHaVBFyZ8=";
+    sha256 = "sha256-KCDXi86Wi01wEIJXPYYX5HkQMq7nKK2VhsN1x5yOvlk=";
   };
 
   vendorSha256 = "sha256-ic5QYRVElEuH4D29PXgTzMHU0KjrxDqcdfg7Kd37/YU=";
diff --git a/nixpkgs/pkgs/tools/networking/bud/default.nix b/nixpkgs/pkgs/tools/networking/bud/default.nix
deleted file mode 100644
index 7a4bd5adcba0..000000000000
--- a/nixpkgs/pkgs/tools/networking/bud/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ stdenv, lib, fetchgit, python2, util-linux }:
-
-stdenv.mkDerivation {
-  pname = "bud";
-
-  version = "0.34.1";
-
-  src = fetchgit {
-    url = "https://github.com/indutny/bud.git";
-    rev = "b112852c9667632f692d2ce3dcd9a8312b61155a";
-    sha256 = "08yr6l4lc2m6rng06253fcaznf6sq0v053wfr8bbym42c32z0xdh";
-  };
-
-  nativeBuildInputs = [
-    python2 python2.pkgs.gyp
-  ] ++ lib.optional stdenv.isLinux util-linux;
-
-  strictDeps = true;
-
-  buildPhase = ''
-    python ./gyp_bud -f make
-    make -C out
-  '';
-
-  installPhase = ''
-    mkdir -p $out/bin
-    cp out/Release/bud $out/bin
-  '';
-
-  meta = with lib; {
-    description = "A TLS terminating proxy";
-    license     = licenses.mit;
-    platforms   = platforms.linux;
-    # Does not build on aarch64-linux.
-    badPlatforms = [ "aarch64-linux" ];
-    maintainers = with maintainers; [ cstrahan ];
-  };
-}
diff --git a/nixpkgs/pkgs/tools/networking/carddav-util/default.nix b/nixpkgs/pkgs/tools/networking/carddav-util/default.nix
index ed3f78d4da4a..e788de13df81 100644
--- a/nixpkgs/pkgs/tools/networking/carddav-util/default.nix
+++ b/nixpkgs/pkgs/tools/networking/carddav-util/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, fetchgit, python3Packages, makeWrapper }:
+{ lib, stdenv, fetchFromGitHub, python3Packages, makeWrapper }:
 
 stdenv.mkDerivation {
   pname = "carddav";
   version = "0.1-2014-02-26";
 
-  src = fetchgit {
-    url = "git://github.com/ljanyst/carddav-util";
+  src = fetchFromGitHub {
+    owner = "ljanyst";
+    repo = "carddav-util";
     rev = "53b181faff5f154bcd180467dd04c0ce69405564";
-    sha256 = "0f0raffdy032wlnxfck6ky60r163nhqfbr311y4ry55l60s4497n";
+    sha256 = "sha256-9iRCNDC0FJ+JD2Hk5TC0w4QMjJ9mMtct5WIA35xTGTg=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/networking/chrony/default.nix b/nixpkgs/pkgs/tools/networking/chrony/default.nix
index cff2d4df8e86..8c8972d0cb5d 100644
--- a/nixpkgs/pkgs/tools/networking/chrony/default.nix
+++ b/nixpkgs/pkgs/tools/networking/chrony/default.nix
@@ -28,7 +28,6 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Sets your computer's clock from time servers on the Net";
     homepage = "https://chrony.tuxfamily.org/";
-    repositories.git = "git://git.tuxfamily.org/gitroot/chrony/chrony.git";
     license = licenses.gpl2;
     platforms = with platforms; linux ++ freebsd ++ openbsd;
     maintainers = with maintainers; [ fpletz thoughtpolice ];
diff --git a/nixpkgs/pkgs/tools/networking/clash/default.nix b/nixpkgs/pkgs/tools/networking/clash/default.nix
index 221a6c280b26..844335df223c 100644
--- a/nixpkgs/pkgs/tools/networking/clash/default.nix
+++ b/nixpkgs/pkgs/tools/networking/clash/default.nix
@@ -1,24 +1,36 @@
-{ lib, fetchFromGitHub, buildGoModule }:
+{ lib, fetchFromGitHub, buildGoModule, testVersion, clash }:
 
 buildGoModule rec {
   pname = "clash";
-  version = "1.6.0";
+  version = "1.10.0";
 
   src = fetchFromGitHub {
     owner = "Dreamacro";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-XG/nci8Sj0vfa/SFPpJwl1Zmt/23LfKxocejplZtS0E=";
+    sha256 = "sha256-cAJjW+NzG48HcDRx12LLdj8VYyIroL+GWqrUrpHOOIk=";
   };
 
-  vendorSha256 = "sha256-WR1CpjEMHRkpd0/iqrOm0oVXvyQO+r6GyeP0L0zx8aA=";
+  vendorSha256 = "sha256-hE2MgjaVme+4vG7+rmJXfjycd3N2R6cA5iSUUTFcQXE=";
 
-  doCheck = false;
+  postPatch = ''
+    # Do not build testing suit
+    rm -rf ./test
+  '';
+
+  CGO_ENABLED = 0;
 
   ldflags = [
+    "-s"
+    "-w"
     "-X github.com/Dreamacro/clash/constant.Version=${version}"
   ];
 
+  passthru.tests.version = testVersion {
+    package = clash;
+    command = "clash -v";
+  };
+
   meta = with lib; {
     description = "A rule-based tunnel in Go";
     homepage = "https://github.com/Dreamacro/clash";
diff --git a/nixpkgs/pkgs/tools/networking/cloudflare-warp/default.nix b/nixpkgs/pkgs/tools/networking/cloudflare-warp/default.nix
new file mode 100644
index 000000000000..a96b8e005e3b
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/cloudflare-warp/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, lib, fetchurl, dpkg, autoPatchelfHook, dbus }:
+
+stdenv.mkDerivation rec {
+  pname = "cloudflare-warp";
+  version = "2022.02.24";
+
+  src = fetchurl {
+    url = "https://pkg.cloudflareclient.com/uploads/cloudflare_warp_2022_2_288_1_amd64_a0be7b47b3.deb";
+    sha256 = "sha256-gBXF0EfFMT6BC6ts/6PQYJH3AAQSDsFoZGK3RZIqmOA=";
+  };
+
+  nativeBuildInputs = [
+    dpkg
+    autoPatchelfHook
+  ];
+
+  buildInputs = [ dbus ];
+
+  dontBuild = true;
+  dontConfigure = true;
+
+  unpackPhase = ''
+    dpkg-deb -x ${src} ./
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mv usr $out
+    mv lib $out
+    mv bin $out
+
+    runHook postInstall
+  '';
+
+  postInstall = ''
+    substituteInPlace $out/lib/systemd/system/warp-svc.service \
+      --replace "ExecStart=" "ExecStart=$out"
+  '';
+
+  meta = with lib; {
+    description = "Replaces the connection between your device and the Internet with a modern, optimized, protocol";
+    homepage = "https://pkg.cloudflareclient.com/packages/cloudflare-warp";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ wolfangaukang ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/networking/corerad/default.nix b/nixpkgs/pkgs/tools/networking/corerad/default.nix
index 03962f1e9e24..df6a63159371 100644
--- a/nixpkgs/pkgs/tools/networking/corerad/default.nix
+++ b/nixpkgs/pkgs/tools/networking/corerad/default.nix
@@ -1,17 +1,17 @@
-{ lib, buildGoModule, fetchFromGitHub, nixosTests }:
+{ lib, buildGo118Module, fetchFromGitHub, nixosTests }:
 
-buildGoModule rec {
+buildGo118Module rec {
   pname = "corerad";
-  version = "1.0.0";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "mdlayher";
     repo = "corerad";
     rev = "v${version}";
-    sha256 = "sha256-23f+WJcTf+x9GW+hGUU3/j4Qi9MfcsfQuS7aEU4uGU4=";
+    sha256 = "sha256-2XPWexpr3xGwnvjT08BVq6uf1haPuZGwKswiy/1Z8vE=";
   };
 
-  vendorSha256 = "sha256-SSa+yBZjZ+5vRfzfCtNhF+kRyJ/VMgd9uWqKPwIi8+Y=";
+  vendorSha256 = "sha256-+9KjgbKuAJexdGEKu9hIsHfHsVbKeB5ZtSgFzM2/bOI=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/networking/dnsproxy/default.nix b/nixpkgs/pkgs/tools/networking/dnsproxy/default.nix
index d6ec3c3f75d5..2800496aae9a 100644
--- a/nixpkgs/pkgs/tools/networking/dnsproxy/default.nix
+++ b/nixpkgs/pkgs/tools/networking/dnsproxy/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "dnsproxy";
-  version = "0.41.4";
+  version = "0.42.0";
 
   src = fetchFromGitHub {
     owner = "AdguardTeam";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-aVYjYEAEANAMGv7frZWfYWLzX7rcI8phpjvrENK8cc4=";
+    sha256 = "sha256-UXFDFS2TFzo7DcExazt4h0TTnGeMf6d3FAiPXZWB7Ys=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/tools/networking/drill/default.nix b/nixpkgs/pkgs/tools/networking/drill/default.nix
index fce409dc2dc4..7e5d1ac1e00e 100644
--- a/nixpkgs/pkgs/tools/networking/drill/default.nix
+++ b/nixpkgs/pkgs/tools/networking/drill/default.nix
@@ -24,6 +24,9 @@ rustPlatform.buildRustPackage rec {
     pkg-config
   ];
 
+  OPENSSL_LIB_DIR = "${openssl.out}/lib";
+  OPENSSL_DIR="${lib.getDev openssl}";
+
   buildInputs = lib.optionals stdenv.isLinux [
     openssl
   ] ++ lib.optionals stdenv.isDarwin [
diff --git a/nixpkgs/pkgs/tools/networking/frp/default.nix b/nixpkgs/pkgs/tools/networking/frp/default.nix
index 1ef3c13172b3..1423230ad470 100644
--- a/nixpkgs/pkgs/tools/networking/frp/default.nix
+++ b/nixpkgs/pkgs/tools/networking/frp/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "frp";
-  version = "0.39.1";
+  version = "0.41.0";
 
   src = fetchFromGitHub {
     owner = "fatedier";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-tqdrYrIWbmRn+5iAZKd9GlcmFNQnh3yNxZ95As7+v5Q=";
+    sha256 = "sha256-JutR1yrxbwhfcw6qTh493yVeo7KzLl83himPTX8FJlA=";
   };
 
-  vendorSha256 = "sha256-NPnchl+N6DeqMhsOIw2MYD/i2IZzHS9ZqbUOeulgb90=";
+  vendorSha256 = "sha256-HOfcVPrJ6TBrhToqYN2CJ0i3re95awrIxQk2Mm8x3DU=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/networking/godns/default.nix b/nixpkgs/pkgs/tools/networking/godns/default.nix
index b2744b8ed979..0e026e5d571c 100644
--- a/nixpkgs/pkgs/tools/networking/godns/default.nix
+++ b/nixpkgs/pkgs/tools/networking/godns/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "godns";
-  version = "2.7";
+  version = "2.7.1";
 
   src = fetchFromGitHub {
     owner = "TimothyYe";
     repo = "godns";
     rev = "v${version}";
-    sha256 = "sha256-PD/3WIxNPtC7s4+2ogWG5DEm717rYQLMx9XA06Q6ebo=";
+    sha256 = "sha256-4PkG8u0wYHHFWR9s4s08tkeBbXdxTUv48HRZsSraNak=";
   };
 
   vendorSha256 = "sha256-vhByl9oJjFIvOskAgLubZ5RCcitKd2jjxi8D9nU6850=";
diff --git a/nixpkgs/pkgs/tools/networking/hey/default.nix b/nixpkgs/pkgs/tools/networking/hey/default.nix
index edf91dd311d9..d59e58981e77 100644
--- a/nixpkgs/pkgs/tools/networking/hey/default.nix
+++ b/nixpkgs/pkgs/tools/networking/hey/default.nix
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   vendorSha256 = null;
 
-  doCheck = false;
-
   meta = with lib; {
     description = "HTTP load generator, ApacheBench (ab) replacement";
     homepage = "https://github.com/rakyll/hey";
diff --git a/nixpkgs/pkgs/tools/networking/httpie/default.nix b/nixpkgs/pkgs/tools/networking/httpie/default.nix
index f3488ae402be..a6c6ddfe5bba 100644
--- a/nixpkgs/pkgs/tools/networking/httpie/default.nix
+++ b/nixpkgs/pkgs/tools/networking/httpie/default.nix
@@ -1,19 +1,20 @@
 { lib
 , fetchFromGitHub
 , installShellFiles
-, python3Packages
+, python3
 , pandoc
 }:
 
-python3Packages.buildPythonApplication rec {
+python3.pkgs.buildPythonApplication rec {
   pname = "httpie";
-  version = "3.0.2";
+  version = "3.1.0";
+  format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "httpie";
     repo = "httpie";
     rev = version;
-    sha256 = "sha256-s3IFzEUQmPBocgspVGx1nINkUamsi7tzwW37IqdBMxo=";
+    hash = "sha256-x7Zucb2i8D4Xbn77eBzSxOAcc2fGg5MFKFiyJhytQ0s=";
   };
 
   nativeBuildInputs = [
@@ -21,7 +22,7 @@ python3Packages.buildPythonApplication rec {
     pandoc
   ];
 
-  propagatedBuildInputs = with python3Packages; [
+  propagatedBuildInputs = with python3.pkgs; [
     charset-normalizer
     defusedxml
     multidict
@@ -31,10 +32,11 @@ python3Packages.buildPythonApplication rec {
     setuptools
   ];
 
-  checkInputs = with python3Packages; [
+  checkInputs = with python3.pkgs; [
     mock
     pytest
     pytest-httpbin
+    pytest-lazy-fixture
     pytestCheckHook
     responses
   ];
@@ -65,7 +67,9 @@ python3Packages.buildPythonApplication rec {
     "httpie.encoding.detect_encoding"
   ];
 
-  pythonImportsCheck = [ "httpie" ];
+  pythonImportsCheck = [
+    "httpie"
+  ];
 
   meta = with lib; {
     description = "A command line HTTP client whose goal is to make CLI human-friendly";
diff --git a/nixpkgs/pkgs/tools/networking/hurl/default.nix b/nixpkgs/pkgs/tools/networking/hurl/default.nix
index ee9aa9c49017..3e1ef2be501c 100644
--- a/nixpkgs/pkgs/tools/networking/hurl/default.nix
+++ b/nixpkgs/pkgs/tools/networking/hurl/default.nix
@@ -12,13 +12,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "hurl";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchFromGitHub {
     owner = "Orange-OpenSource";
     repo = pname;
     rev = version;
-    sha256 = "sha256-87bzZxS1RAe2rY39/LF3kE7uOsEdlKDAnmuNc81YEYM=";
+    sha256 = "sha256-ud4ARpiyMcYwPKsLbeK4MMBLzkD/tecF1L1vWyYpKmY=";
   };
 
   nativeBuildInputs = [
@@ -37,7 +37,7 @@ rustPlatform.buildRustPackage rec {
   # Tests require network access to a test server
   doCheck = false;
 
-  cargoSha256 = "sha256-GnpK4lC7aBMUM+E/dC+SEvG+s5ZlW4y1oI4crSDkblk=";
+  cargoSha256 = "sha256-tmHP7xwVce/hh8nX1LO/zwPIlDZkICPMlBjZjuv37xU=";
 
   postInstall = ''
     python ci/gen_manpage.py docs/hurl.md > hurl.1
diff --git a/nixpkgs/pkgs/tools/networking/innernet/default.nix b/nixpkgs/pkgs/tools/networking/innernet/default.nix
index 67f9a9d793bf..68ccdfc3870d 100644
--- a/nixpkgs/pkgs/tools/networking/innernet/default.nix
+++ b/nixpkgs/pkgs/tools/networking/innernet/default.nix
@@ -13,15 +13,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "innernet";
-  version = "1.5.3";
+  version = "1.5.4";
 
   src = fetchFromGitHub {
     owner = "tonarino";
     repo = "innernet";
     rev = "v${version}";
-    sha256 = "sha256-dpoSjGtjGJTF/sQ8vbeAUCjnkYqz4zGnfO8br8gJbsQ=";
+    sha256 = "sha256-CcZ4241EU+ktPbFsuR/sF4yP6xAOFg+oW8thtAQZr/4=";
   };
-  cargoSha256 = "sha256-EmAlm3W9r6pP1VIxeM2UP1ZG9TjopTarckMfLDonr1k=";
+  cargoSha256 = "sha256-7APUSDxw6X4KJnFvm6xhiHL1D4NTNS2pC/4UVGyjJYY=";
 
   nativeBuildInputs = with llvmPackages; [
     llvm
diff --git a/nixpkgs/pkgs/tools/networking/lychee/default.nix b/nixpkgs/pkgs/tools/networking/lychee/default.nix
index d8376016bbfd..5e788638e6e9 100644
--- a/nixpkgs/pkgs/tools/networking/lychee/default.nix
+++ b/nixpkgs/pkgs/tools/networking/lychee/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "lychee";
-  version = "0.8.2";
+  version = "0.9.0";
 
   src = fetchFromGitHub {
     owner = "lycheeverse";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-zgIFJLdYHSDsO34KFK51g4nVlSkc9/TFdXx2yPJ7kRQ=";
+    sha256 = "sha256-XjG4u0z3u89Wg2lrcD3T0OqNMgLxmKO1e1zYlGd3dqQ=";
   };
 
-  cargoSha256 = "sha256-r4a+JkaXVYsynBiWUHaleATXvfxyhRHfR/qcooD0FmI=";
+  cargoSha256 = "sha256-aXxhKH0dB6VpXfoWJwXBjsxGFcK071MZfCoi4z9uHdc=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/tools/networking/magic-wormhole-rs/Cargo.toml.patch b/nixpkgs/pkgs/tools/networking/magic-wormhole-rs/Cargo.toml.patch
new file mode 100644
index 000000000000..debb1e264390
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/magic-wormhole-rs/Cargo.toml.patch
@@ -0,0 +1,67 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index d33b5d6..ddde8ed 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -150,33 +150,6 @@ dependencies = [
+  "winapi 0.3.9",
+ ]
+ 
+-[[package]]
+-name = "async-std"
+-version = "1.10.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f8056f1455169ab86dd47b47391e4ab0cbd25410a70e9fe675544f49bafaf952"
+-dependencies = [
+- "async-channel",
+- "async-global-executor",
+- "async-io",
+- "async-lock",
+- "crossbeam-utils",
+- "futures-channel",
+- "futures-core",
+- "futures-io",
+- "futures-lite",
+- "gloo-timers",
+- "kv-log-macro",
+- "log",
+- "memchr",
+- "num_cpus",
+- "once_cell",
+- "pin-project-lite",
+- "pin-utils",
+- "slab",
+- "wasm-bindgen-futures",
+-]
+-
+ [[package]]
+ name = "async-std"
+ version = "1.10.0"
+@@ -230,7 +203,7 @@ version = "0.16.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "5682ea0913e5c20780fe5785abacb85a411e7437bf52a1bedb93ddb3972cb8dd"
+ dependencies = [
+- "async-std 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
++ "async-std",
+  "async-tls",
+  "futures-io",
+  "futures-util",
+@@ -1154,7 +1127,7 @@ name = "magic-wormhole"
+ version = "0.3.0"
+ dependencies = [
+  "async-io",
+- "async-std 1.10.0 (git+https://github.com/async-rs/async-std)",
++ "async-std",
+  "async-tungstenite",
+  "base64",
+  "bytecodec",
+diff --git a/Cargo.toml b/Cargo.toml
+index b4ff2c0..d4094af 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -82,3 +82,6 @@ required-features = ["bin"]
+ 
+ [profile.release]
+ overflow-checks = true
++
++[patch.crates-io]
++async-std = { version = "1.9.0", features = ["attributes", "unstable"], git = "https://github.com/async-rs/async-std" }
diff --git a/nixpkgs/pkgs/tools/networking/magic-wormhole-rs/default.nix b/nixpkgs/pkgs/tools/networking/magic-wormhole-rs/default.nix
new file mode 100644
index 000000000000..951a06643764
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/magic-wormhole-rs/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, rustPlatform
+}:
+rustPlatform.buildRustPackage rec {
+  name = "magic-wormhole-rs";
+  version = "0.3.0";
+
+  src = fetchFromGitHub {
+    owner = "magic-wormhole";
+    repo = "magic-wormhole.rs";
+    rev = version;
+    sha256 = "sha256-i4vJ6HmtM42m1x1UtOq9xlmhYIa5ZKXUm1rGFNRprmY=";
+  };
+
+  # this patch serves as a workaround for the problems of cargo-vendor described in
+  # https://github.com/NixOS/nixpkgs/issues/30742
+  # and can probably be removed once the issue is resolved
+  cargoPatches = [ ./Cargo.toml.patch ];
+  cargoSha256 = "sha256-DG1kyukgzDbolX9Mg9hK1TRyzIWbAX6f54jSM8clj/c=";
+
+  # all tests involve networking and are bound fail
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Rust implementation of Magic Wormhole, with new features and enhancements";
+    homepage = "https://github.com/magic-wormhole/magic-wormhole.rs";
+    license = licenses.eupl12;
+    maintainers = with maintainers; [ zeri piegames ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/networking/minio-client/default.nix b/nixpkgs/pkgs/tools/networking/minio-client/default.nix
index c90ba9cfc640..c4a0baf3160d 100644
--- a/nixpkgs/pkgs/tools/networking/minio-client/default.nix
+++ b/nixpkgs/pkgs/tools/networking/minio-client/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "minio-client";
-  version = "2022-03-13T22-34-00Z";
+  version = "2022-03-17T20-25-06Z";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "mc";
     rev = "RELEASE.${version}";
-    sha256 = "sha256-NIhowfkG2bFIcCNXUQ3cETHsR5/NLvIHQ9LeftgSyd0=";
+    sha256 = "sha256-+MfRosEyIaQ5RndpAeK5AXm8EHX2ND7VJcr1NVFs5TI=";
   };
 
   vendorSha256 = "sha256-Wdw9mZ3UupoJ4yDwS4f3mOmCn+7TvHmx4aRu+96pHM4=";
diff --git a/nixpkgs/pkgs/tools/networking/mqttui/default.nix b/nixpkgs/pkgs/tools/networking/mqttui/default.nix
index 4b14caf9b67a..4243c7ddbd88 100644
--- a/nixpkgs/pkgs/tools/networking/mqttui/default.nix
+++ b/nixpkgs/pkgs/tools/networking/mqttui/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mqttui";
-  version = "0.16.0";
+  version = "0.16.1";
 
   src = fetchFromGitHub {
     owner = "EdJoPaTo";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-kGOQIoE+0lCBm9zQwPMFfYnLJgR79hSKECerWyOFsjI=";
+    sha256 = "sha256-nLUDuLolv52WJAwBG5gSADWM2LmquJt5jZJioZWX8VA=";
   };
 
-  cargoSha256 = "sha256-vm4IR/yQlQDn9LN9Ifr4vJvM6cCqgjRU2vdAHVEsWnI=";
+  cargoSha256 = "sha256-Z6V7k69fjtiG01s1Xf0UA8lhRsq3T+ImDsCHPSVIDfQ=";
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
diff --git a/nixpkgs/pkgs/tools/networking/netavark/default.nix b/nixpkgs/pkgs/tools/networking/netavark/default.nix
index 34e60b25e32b..3116644eb68b 100644
--- a/nixpkgs/pkgs/tools/networking/netavark/default.nix
+++ b/nixpkgs/pkgs/tools/networking/netavark/default.nix
@@ -7,29 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "netavark";
-  version = "1.0.1";
+  version = "1.0.2";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-r9NoPDFCqmzESxlovs91j0OyunGDmfWJXN+U1f0w2QQ=";
+    sha256 = "sha256-2ElEhKit/XysRsUw+dg7SnhDl+Zf+FJb5pIYpq1ALNs=";
   };
 
-  cargoHash = "sha256-/N9oKzcAwaxI2BbeoYZ2quN+Z3UO67ecpogK2SRG9Dw=";
-
-  preBuild = ''
-    substituteInPlace Cargo.toml \
-      --replace 'build = "build.rs"' ""
-
-    rm build.rs
-
-    export \
-      VERGEN_BUILD_SEMVER="${version}" \
-      VERGEN_BUILD_TIMESTAMP="$SOURCE_DATE_EPOCH" \
-      VERGEN_GIT_SHA="${src.rev}" \
-      VERGEN_RUSTC_HOST_TRIPLE=""
-  '';
+  cargoHash = "sha256-w3qz4ygjIvn+Rxd1JEVO6Ax08leuuJvC4Bk7VygbBh4=";
 
   nativeBuildInputs = [ installShellFiles mandown ];
 
diff --git a/nixpkgs/pkgs/tools/networking/netproc/default.nix b/nixpkgs/pkgs/tools/networking/netproc/default.nix
new file mode 100644
index 000000000000..851f71fcaab9
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/netproc/default.nix
@@ -0,0 +1,25 @@
+{ lib, stdenv, fetchFromGitHub, ncurses }:
+
+stdenv.mkDerivation rec {
+  pname = "netproc";
+  version = "unstable-2022-02-11";
+
+  src = fetchFromGitHub {
+    owner = "berghetti";
+    repo = "netproc";
+    rev = "87a10ce31ae150847674ad87ef84ef2fd374b420";
+    sha256 = "sha256-YSKDOvqWLCrnP1qjmzMuRgjXiXZ9D4AuxXm/3xzS4gc=";
+  };
+
+  buildInputs = [ ncurses ];
+
+  installFlags = [ "prefix=$(out)" ];
+
+  meta = with lib; {
+    description = "Tool to monitor network traffic based on processes";
+    license = licenses.gpl3;
+    homepage = "https://github.com/berghetti/netproc";
+    platforms = platforms.linux;
+    maintainers = [ maintainers.azuwis ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/networking/networkmanager/applet/default.nix b/nixpkgs/pkgs/tools/networking/networkmanager/applet/default.nix
index fbb56f4c5c90..cca96577ad4c 100644
--- a/nixpkgs/pkgs/tools/networking/networkmanager/applet/default.nix
+++ b/nixpkgs/pkgs/tools/networking/networkmanager/applet/default.nix
@@ -25,11 +25,11 @@
 
 stdenv.mkDerivation rec {
   pname = "network-manager-applet";
-  version = "1.24.0";
+  version = "1.26.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-ufS8pdA1Jxjge3OF+xlam7yP1oa3lZt0E3hU1SqrnFg=";
+    sha256 = "sha256-aWEbKQZK29Vzlf4+Uanr3h6nlGFfd2kARTorvj2M3f0=";
   };
 
   mesonFlags = [
diff --git a/nixpkgs/pkgs/tools/networking/networkmanager/default.nix b/nixpkgs/pkgs/tools/networking/networkmanager/default.nix
index f3ea9f677c05..2c984da87377 100644
--- a/nixpkgs/pkgs/tools/networking/networkmanager/default.nix
+++ b/nixpkgs/pkgs/tools/networking/networkmanager/default.nix
@@ -54,11 +54,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "networkmanager";
-  version = "1.36.2";
+  version = "1.36.4";
 
   src = fetchurl {
     url = "mirror://gnome/sources/NetworkManager/${lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz";
-    sha256 = "1aqc8z8zv1sds439ilihwqczwg9iqzki0f007fd2x0s17fz5r1db";
+    sha256 = "YTBOk33ZJkcdVnFb3t57q3zKyCc1bmfycA00MxfNPFk=";
   };
 
   outputs = [ "out" "dev" "devdoc" "man" "doc" ];
diff --git a/nixpkgs/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix b/nixpkgs/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix
index f97bac13cf7f..e9608741816f 100644
--- a/nixpkgs/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix
+++ b/nixpkgs/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
 , substituteAll
 , openfortivpn
@@ -7,23 +8,24 @@
 , file
 , glib
 , gtk3
+, gtk4
 , networkmanager
 , ppp
 , libsecret
 , withGnome ? true
 , gnome
-, fetchpatch
 , libnma
+, libnma-gtk4
 }:
 
 stdenv.mkDerivation rec {
   pname = "NetworkManager-fortisslvpn";
-  version = "1.2.10";
+  version = "1.4.0";
   name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1sw66cxgs4in4cjp1cm95c5ijsk8xbbmq4ykg2jwqwgz6cf2lr3s";
+    sha256 = "sFXiY0m1FrI1hXmKs+9XtDawFIAOkqiscyz8jnbF2vo=";
   };
 
   patches = [
@@ -31,12 +33,6 @@ stdenv.mkDerivation rec {
       src = ./fix-paths.patch;
       inherit openfortivpn;
     })
-
-    # Don't use etc/dbus-1/system.d
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/NetworkManager-fortisslvpn/merge_requests/11.patch";
-      sha256 = "0l7l2r1njh62lh2pf497ibf99sgkvjsj58xr76qx3jxgq9zfw6n9";
-    })
   ];
 
   nativeBuildInputs = [
@@ -52,12 +48,15 @@ stdenv.mkDerivation rec {
     glib
   ] ++ lib.optionals withGnome [
     gtk3
+    gtk4
     libsecret
     libnma
+    libnma-gtk4
   ];
 
   configureFlags = [
     "--with-gnome=${if withGnome then "yes" else "no"}"
+    "--with-gtk4=${if withGnome then "yes" else "no"}"
     "--localstatedir=/var"
     "--enable-absolute-paths"
   ];
diff --git a/nixpkgs/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch b/nixpkgs/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch
index a1241b6738c2..9176a3bf042b 100644
--- a/nixpkgs/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch
+++ b/nixpkgs/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch
@@ -1,11 +1,12 @@
+diff --git a/src/nm-fortisslvpn-service.c b/src/nm-fortisslvpn-service.c
+index 6c340d0..995c981 100644
 --- a/src/nm-fortisslvpn-service.c
 +++ b/src/nm-fortisslvpn-service.c
-@@ -387,7 +387,7 @@
+@@ -182,6 +182,7 @@ nm_find_openfortivpn (void)
  {
  	static const char *openfortivpn_binary_paths[] =
  		{
--			"/bin/openfortivpn",
 +			"@openfortivpn@/bin/openfortivpn",
- 			"/usr/bin/openfortivpn",
  			"/usr/local/bin/openfortivpn",
+ 			"/usr/bin/openfortivpn",
  			NULL
diff --git a/nixpkgs/pkgs/tools/networking/networkmanager/libnma/default.nix b/nixpkgs/pkgs/tools/networking/networkmanager/libnma/default.nix
index c039b47d169c..63642cf60e75 100644
--- a/nixpkgs/pkgs/tools/networking/networkmanager/libnma/default.nix
+++ b/nixpkgs/pkgs/tools/networking/networkmanager/libnma/default.nix
@@ -26,13 +26,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libnma";
-  version = "1.8.34";
+  version = "1.8.36";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "9eLnOOD8p/KlSQeSkLLYAXUR1IWoMiDDbfOAo7R1MwQ=";
+    sha256 = "2ZQV9M3/ZCIwAZ7FzdKx+/HsVQqK6GUhn3VIKmQre3o=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/tools/networking/networkmanager/openconnect/default.nix b/nixpkgs/pkgs/tools/networking/networkmanager/openconnect/default.nix
index c03a698514a8..e0199784b2bc 100644
--- a/nixpkgs/pkgs/tools/networking/networkmanager/openconnect/default.nix
+++ b/nixpkgs/pkgs/tools/networking/networkmanager/openconnect/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
 , substituteAll
 , glib
@@ -12,21 +13,21 @@
 , libsecret
 , file
 , gtk3
+, libnma
+, libnma-gtk4
+, gtk4
 , withGnome ? true
 , gnome
 , kmod
-, fetchpatch
 }:
 
-let
+stdenv.mkDerivation rec {
   pname = "NetworkManager-openconnect";
-  version = "1.2.6";
-in stdenv.mkDerivation {
-  name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
+  version = "1.2.8";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0nlp290nkawc4wqm978n4vhzg3xdqi8kpjjx19l855vab41rh44m";
+    url = "mirror://gnome/sources/NetworkManager-openconnect/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "Xe2qeF2C2OI53dCCv6xSUMaR6WRGS+GAe2gnJjYzzcw=";
   };
 
   patches = [
@@ -34,12 +35,6 @@ in stdenv.mkDerivation {
       src = ./fix-paths.patch;
       inherit kmod openconnect;
     })
-
-    # Don't use etc/dbus-1/system.d
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/NetworkManager-openconnect/merge_requests/9.patch";
-      sha256 = "0yd2dmq6gq6y4czr7dqdgaiqvw2vyv2gikznpfdxyfn2v1pcrk9m";
-    })
   ];
 
   buildInputs = [
@@ -49,6 +44,9 @@ in stdenv.mkDerivation {
     networkmanager
   ] ++ lib.optionals withGnome [
     gtk3
+    libnma
+    libnma-gtk4
+    gtk4
     gcr
     libsecret
   ];
@@ -61,8 +59,8 @@ in stdenv.mkDerivation {
 
   configureFlags = [
     "--with-gnome=${if withGnome then "yes" else "no"}"
+    "--with-gtk4=${if withGnome then "yes" else "no"}"
     "--enable-absolute-paths"
-    "--without-libnm-glib"
   ];
 
   passthru = {
diff --git a/nixpkgs/pkgs/tools/networking/networkmanager/openvpn/default.nix b/nixpkgs/pkgs/tools/networking/networkmanager/openvpn/default.nix
index 20a90fffed25..92391e0374b4 100644
--- a/nixpkgs/pkgs/tools/networking/networkmanager/openvpn/default.nix
+++ b/nixpkgs/pkgs/tools/networking/networkmanager/openvpn/default.nix
@@ -1,15 +1,31 @@
-{ lib, stdenv, fetchurl, substituteAll, openvpn, intltool, libxml2, pkg-config, file, networkmanager, libsecret
-, glib, gtk3, withGnome ? true, gnome, kmod, libnma }:
+{ stdenv
+, lib
+, fetchurl
+, substituteAll
+, openvpn
+, intltool
+, libxml2
+, pkg-config
+, file
+, networkmanager
+, libsecret
+, glib
+, gtk3
+, gtk4
+, withGnome ? true
+, gnome
+, kmod
+, libnma
+, libnma-gtk4
+}:
 
-let
+stdenv.mkDerivation rec {
   pname = "NetworkManager-openvpn";
-  version = "1.8.16";
-in stdenv.mkDerivation {
-  name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
+  version = "1.8.18";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "iSDeCceuXx9SDIP4REVduPrsMUJzUCaP4t2VuGD5H7U=";
+    url = "mirror://gnome/sources/NetworkManager-openvpn/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "U9+wrPZEeK3HKAdPFi9i5gv/YqYFvYl+uIsmfnBXkno=";
   };
 
   patches = [
@@ -19,13 +35,28 @@ in stdenv.mkDerivation {
     })
   ];
 
-  buildInputs = [ openvpn networkmanager glib ]
-    ++ lib.optionals withGnome [ gtk3 libsecret libnma ];
+  nativeBuildInputs = [
+    intltool
+    pkg-config
+    file
+    libxml2
+  ];
 
-  nativeBuildInputs = [ intltool pkg-config file libxml2 ];
+  buildInputs = [
+    openvpn
+    networkmanager
+    glib
+  ] ++ lib.optionals withGnome [
+    gtk3
+    gtk4
+    libsecret
+    libnma
+    libnma-gtk4
+  ];
 
   configureFlags = [
     "--with-gnome=${if withGnome then "yes" else "no"}"
+    "--with-gtk4=${if withGnome then "yes" else "no"}"
     "--localstatedir=/" # needed for the management socket under /run/NetworkManager
     "--enable-absolute-paths"
   ];
diff --git a/nixpkgs/pkgs/tools/networking/networkmanager/vpnc/default.nix b/nixpkgs/pkgs/tools/networking/networkmanager/vpnc/default.nix
index 70e7104696ee..d81dbf088165 100644
--- a/nixpkgs/pkgs/tools/networking/networkmanager/vpnc/default.nix
+++ b/nixpkgs/pkgs/tools/networking/networkmanager/vpnc/default.nix
@@ -1,14 +1,30 @@
-{ lib, stdenv, fetchurl, substituteAll, vpnc, intltool, pkg-config, networkmanager, libsecret
-, gtk3, withGnome ? true, gnome, glib, kmod, file, fetchpatch, libnma }:
-let
+{ stdenv
+, lib
+, fetchurl
+, substituteAll
+, vpnc
+, intltool
+, pkg-config
+, networkmanager
+, libsecret
+, gtk3
+, gtk4
+, withGnome ? true
+, gnome
+, glib
+, kmod
+, file
+, libnma
+, libnma-gtk4
+}:
+
+stdenv.mkDerivation rec {
   pname = "NetworkManager-vpnc";
-  version = "1.2.6";
-in stdenv.mkDerivation {
-  name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
+  version = "1.2.8";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1js5lwcsqws4klgypfxl4ikmakv7v7xgddij1fj6b0y0qicx0kyy";
+    url = "mirror://gnome/sources/NetworkManager-vpnc/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "1l4xqlPI/cP95++EpNqpeaYFwj/THO/2R79+qqma+8w=";
   };
 
   patches = [
@@ -16,21 +32,29 @@ in stdenv.mkDerivation {
       src = ./fix-paths.patch;
       inherit vpnc kmod;
     })
-    # Don't use etc/dbus-1/system.d
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/NetworkManager-vpnc/merge_requests/5.patch";
-      sha256 = "0z0x5vqmrsap3ynamhya7gh6c6k5grhj2vqpy76alnv9xns8dzi6";
-    })
   ];
 
-  buildInputs = [ vpnc networkmanager glib ]
-    ++ lib.optionals withGnome [ gtk3 libsecret libnma ];
+  nativeBuildInputs = [
+    intltool
+    pkg-config
+    file
+  ];
 
-  nativeBuildInputs = [ intltool pkg-config file ];
+  buildInputs = [
+    vpnc
+    networkmanager
+    glib
+  ] ++ lib.optionals withGnome [
+    gtk3
+    gtk4
+    libsecret
+    libnma
+    libnma-gtk4
+  ];
 
   configureFlags = [
-    "--without-libnm-glib"
     "--with-gnome=${if withGnome then "yes" else "no"}"
+    "--with-gtk4=${if withGnome then "yes" else "no"}"
     "--enable-absolute-paths"
   ];
 
diff --git a/nixpkgs/pkgs/tools/networking/obfs4/default.nix b/nixpkgs/pkgs/tools/networking/obfs4/default.nix
index ab13d3f4ef98..a988a14cd455 100644
--- a/nixpkgs/pkgs/tools/networking/obfs4/default.nix
+++ b/nixpkgs/pkgs/tools/networking/obfs4/default.nix
@@ -5,7 +5,7 @@ buildGoModule rec {
   version = "0.0.11";
 
   src = fetchgit {
-    url = meta.repositories.git;
+    url = "https://git.torproject.org/pluggable-transports/obfs4.git";
     rev = "refs/tags/${pname}proxy-${version}";
     sha256 = "sha256-VjJ/Pc1YjNB2iLnN/5CxuaxolcaR1IMWgoESMzOXU/g=";
   };
@@ -17,7 +17,6 @@ buildGoModule rec {
   meta = with lib; {
     description = "A pluggable transport proxy";
     homepage = "https://www.torproject.org/projects/obfsproxy";
-    repositories.git = "https://git.torproject.org/pluggable-transports/obfs4.git";
     maintainers = with maintainers; [ thoughtpolice ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/openapi-generator-cli/unstable.nix b/nixpkgs/pkgs/tools/networking/openapi-generator-cli/unstable.nix
index 33eb33e10b06..9af28b3e09ea 100644
--- a/nixpkgs/pkgs/tools/networking/openapi-generator-cli/unstable.nix
+++ b/nixpkgs/pkgs/tools/networking/openapi-generator-cli/unstable.nix
@@ -1,7 +1,7 @@
 { callPackage, lib, stdenv, fetchurl, jre, makeWrapper }:
 
 let this = stdenv.mkDerivation rec {
-  version = "6.0.0-2021-01-18";  # Also update the fetchurl link
+  version = "6.0.0-2022-03-18";  # Also update the fetchurl link
   pname = "openapi-generator-cli";
 
   jarfilename = "${pname}-${version}.jar";
@@ -11,8 +11,8 @@ let this = stdenv.mkDerivation rec {
   ];
 
   src = fetchurl {
-    url = "https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/6.0.0-SNAPSHOT/openapi-generator-cli-6.0.0-20210118.082537-4.jar";
-    sha256 = "1ji3yw9dp4srlgqxvb21vrcp2bzj4himxsmp8l8zid9nxsc1m71x";
+    url = "https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/6.0.0-SNAPSHOT/openapi-generator-cli-6.0.0-20220318.042704-93.jar";
+    sha256 = "1h126kpbnpbrsnjrxb09hzb796dwl4g58d6wrh1hhv8svwy5p0bl";
   };
 
   dontUnpack = true;
diff --git a/nixpkgs/pkgs/tools/networking/openvpn/default.nix b/nixpkgs/pkgs/tools/networking/openvpn/default.nix
index e2805f0ccf05..9200bc3f30e8 100644
--- a/nixpkgs/pkgs/tools/networking/openvpn/default.nix
+++ b/nixpkgs/pkgs/tools/networking/openvpn/default.nix
@@ -32,7 +32,7 @@ let
         inherit version;
 
         src = fetchurl {
-          url = "https://swupdate.openvpn.net/community/releases/${pname}-${version}.tar.xz";
+          url = "https://swupdate.openvpn.net/community/releases/${pname}-${version}.tar.gz";
           inherit sha256;
         };
 
@@ -78,12 +78,12 @@ let
 in
 {
   openvpn_24 = generic {
-    version = "2.4.11";
-    sha256 = "06s4m0xvixjhd3azrzbsf4j86kah4xwr2jp6cmcpc7db33rfyyg5";
+    version = "2.4.12";
+    sha256 = "1vjx82nlkxrgzfiwvmmlnz8ids5m2fiqz7scy1smh3j9jnf2v5b6";
   };
 
   openvpn = generic {
-    version = "2.5.5";
-    sha256 = "sha256-EZvWn6AhCDj2zaonNpbcc476IA9FTb4R6237dd+2ADs=";
+    version = "2.5.6";
+    sha256 = "0gdd88rcan9vfiwkzsqn6fxxdim7kb1bsxrcra59c5xksprpwfik";
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/pirate-get/default.nix b/nixpkgs/pkgs/tools/networking/pirate-get/default.nix
index 112b78dcae8b..9b5846d6f76f 100644
--- a/nixpkgs/pkgs/tools/networking/pirate-get/default.nix
+++ b/nixpkgs/pkgs/tools/networking/pirate-get/default.nix
@@ -4,11 +4,11 @@ with python3Packages;
 
 buildPythonApplication rec {
   pname = "pirate-get";
-  version = "0.4.1";
+  version = "0.4.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0pr703fwinr2f4rba86zp57mpf5j2jgvp5n50rc5vy5g7yfwsddm";
+    sha256 = "sha256-VtnVyJqrdGXTqcyzpHCOMUI9G7/BkXzihDrBrsxl7Eg=";
   };
 
   propagatedBuildInputs = [ colorama veryprettytable pyperclip ];
diff --git a/nixpkgs/pkgs/tools/networking/s3gof3r/default.nix b/nixpkgs/pkgs/tools/networking/s3gof3r/default.nix
index 4623b68ad4cf..19422c3ec8e2 100644
--- a/nixpkgs/pkgs/tools/networking/s3gof3r/default.nix
+++ b/nixpkgs/pkgs/tools/networking/s3gof3r/default.nix
@@ -1,17 +1,24 @@
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "s3gof3r";
-  version = "20151109-${lib.strings.substring 0 7 rev}";
-  rev = "31603a0dc94aefb822bfe2ceea75a6be6013b445";
+  version = "0.5.0";
 
   goPackagePath = "github.com/rlmcpherson/s3gof3r";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/rlmcpherson/s3gof3r";
-    sha256 = "10banc8hnhxpsdmlkf9nc5fjkh1349bgpd9k7lggw3yih1rvmh7k";
+  src = fetchFromGitHub {
+    owner = "rlmcpherson";
+    repo = "s3gof3r";
+    rev = "v${version}";
+    sha256 = "sha256-88C6c4DRD/4ePTO1+1YiI8ApXWE2uUlr07dDCxGzaoE=";
   };
 
   goDeps = ./deps.nix;
+
+  meta = with lib; {
+    description = "Fast, concurrent, streaming access to Amazon S3, including gof3r, a CLI";
+    homepage = "https://pkg.go.dev/github.com/rlmcpherson/s3gof3r";
+    maintainers = with maintainers; [ ];
+    license = licenses.mit;
+  };
 }
diff --git a/nixpkgs/pkgs/tools/networking/siege/default.nix b/nixpkgs/pkgs/tools/networking/siege/default.nix
index 175595edafb8..446acbe32782 100644
--- a/nixpkgs/pkgs/tools/networking/siege/default.nix
+++ b/nixpkgs/pkgs/tools/networking/siege/default.nix
@@ -7,14 +7,16 @@
 
 stdenv.mkDerivation rec {
   pname = "siege";
-  version = "4.1.1";
+  version = "4.1.2";
 
   src = fetchurl {
     url = "http://download.joedog.org/siege/${pname}-${version}.tar.gz";
-    sha256 = "1a74py0ib1gr3znv9ah5acw67ngl08b14dbc90ww9clvgdr2ag0l";
+    hash = "sha256-5HKr4Zxak/a+W/1k3/JvZo2ixtIQr4ITtgycDbF+ynk=";
   };
 
-  NIX_LDFLAGS = lib.optionalString stdenv.isLinux "-lgcc_s";
+  NIX_LDFLAGS = lib.optionalString stdenv.isLinux [
+    "-lgcc_s"
+  ];
 
   buildInputs = [
     openssl
diff --git a/nixpkgs/pkgs/tools/networking/socat/default.nix b/nixpkgs/pkgs/tools/networking/socat/default.nix
index 255455811a65..06b3cbdbe80a 100644
--- a/nixpkgs/pkgs/tools/networking/socat/default.nix
+++ b/nixpkgs/pkgs/tools/networking/socat/default.nix
@@ -38,7 +38,6 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Utility for bidirectional data transfer between two independent data channels";
     homepage = "http://www.dest-unreach.org/socat/";
-    repositories.git = "git://repo.or.cz/socat.git";
     platforms = platforms.unix;
     license = with licenses; [ gpl2Only ];
     maintainers = with maintainers; [ eelco ];
diff --git a/nixpkgs/pkgs/tools/networking/stunnel/default.nix b/nixpkgs/pkgs/tools/networking/stunnel/default.nix
index c42e78c933d9..4895c95bba19 100644
--- a/nixpkgs/pkgs/tools/networking/stunnel/default.nix
+++ b/nixpkgs/pkgs/tools/networking/stunnel/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "stunnel";
-  version = "5.62";
+  version = "5.63";
 
   src = fetchurl {
     url    = "https://www.stunnel.org/downloads/${pname}-${version}.tar.gz";
-    sha256 = "sha256-nPW7lJAiqmbHNsEyZVTMon0GQWBaY3AnTtxJUetb0zk=";
+    sha256 = "sha256-x0xOFRRKOuNLi4kLsxyQkgcwFJC9HlG/qqX/6wqZRhc=";
     # please use the contents of "https://www.stunnel.org/downloads/${name}.tar.gz.sha256",
     # not the output of `nix-prefetch-url`
   };
diff --git a/nixpkgs/pkgs/tools/networking/tcpdump/default.nix b/nixpkgs/pkgs/tools/networking/tcpdump/default.nix
index cdb33ab1f1ab..6726e5b751ab 100644
--- a/nixpkgs/pkgs/tools/networking/tcpdump/default.nix
+++ b/nixpkgs/pkgs/tools/networking/tcpdump/default.nix
@@ -27,6 +27,5 @@ stdenv.mkDerivation rec {
     license = licenses.bsd3;
     maintainers = with maintainers; [ globin ];
     platforms = platforms.unix;
-    badPlatforms = platforms.darwin;
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/tinyssh/default.nix b/nixpkgs/pkgs/tools/networking/tinyssh/default.nix
index ddd2d460f73b..36518357e600 100644
--- a/nixpkgs/pkgs/tools/networking/tinyssh/default.nix
+++ b/nixpkgs/pkgs/tools/networking/tinyssh/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tinyssh";
-  version = "20220305";
+  version = "20220311";
 
   src = fetchFromGitHub {
     owner = "janmojzis";
     repo = "tinyssh";
     rev = version;
-    sha256 = "sha256-d49saN0I22DZixx5AdvQmx3WM7yzQH5lOKnKbzhlls0=";
+    sha256 = "sha256-+lmPPc2UsNtOfuheWEZHAzmKBilNQ3kNh8ixzDnRjRc=";
   };
 
   preConfigure = ''
diff --git a/nixpkgs/pkgs/tools/networking/tuntox/default.nix b/nixpkgs/pkgs/tools/networking/tuntox/default.nix
index 8870f0e32ce7..6df9f724500d 100644
--- a/nixpkgs/pkgs/tools/networking/tuntox/default.nix
+++ b/nixpkgs/pkgs/tools/networking/tuntox/default.nix
@@ -9,6 +9,7 @@
 , libsodium
 , libtoxcore
 , libvpx
+, msgpack
 , pkg-config
 , python3
 , python3Packages
@@ -27,7 +28,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cscope git pkg-config ];
 
-  buildInputs = [ libopus libtoxcore libsodium libevent libvpx python3 ];
+  buildInputs = [ libopus libtoxcore libsodium libevent libvpx msgpack python3 ];
 
   pythonBuildInputs = with python3Packages; [
     jinja2
diff --git a/nixpkgs/pkgs/tools/networking/ua/default.nix b/nixpkgs/pkgs/tools/networking/ua/default.nix
index feb17b283de5..4190e8102147 100644
--- a/nixpkgs/pkgs/tools/networking/ua/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ua/default.nix
@@ -1,19 +1,19 @@
-{ lib, buildGoPackage, fetchgit
+{ lib, buildGoPackage, fetchFromGitHub
 , pkg-config
 , glib, libxml2
 }:
 
 buildGoPackage rec {
-  pname = "ua-unstable";
-  version = "2017-02-24";
-  rev = "325dab92c60e0f028e55060f0c288aa70905fb17";
+  pname = "ua";
+  version = "unstable-2017-02-24";
 
   goPackagePath = "github.com/sloonz/ua";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/sloonz/ua.git";
-    sha256 = "0452qknc8km9495324g6b5ja3shvk8jl7aa9nrjhdylf09dp2nif";
+  src = fetchFromGitHub {
+    owner = "sloonz";
+    repo = "ua";
+    rev = "325dab92c60e0f028e55060f0c288aa70905fb17";
+    sha256 = "sha256-LlpxWwKO+gZltkmpQyWaG+qhZFnmETFKIqlOxOzEohA=";
   };
 
   goDeps = ./deps.nix;
@@ -21,11 +21,10 @@ buildGoPackage rec {
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ glib libxml2 ];
 
-  meta = {
+  meta = with lib; {
     homepage = "https://github.com/sloonz/ua";
-    license = lib.licenses.isc;
+    license = licenses.isc;
     description = "Universal Aggregator";
-    platforms = lib.platforms.unix;
-    maintainers = with lib.maintainers; [ ttuegel ];
+    maintainers = with maintainers; [ ttuegel ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/waitron/default.nix b/nixpkgs/pkgs/tools/networking/waitron/default.nix
index c37d82024fe6..4f2f634d4942 100644
--- a/nixpkgs/pkgs/tools/networking/waitron/default.nix
+++ b/nixpkgs/pkgs/tools/networking/waitron/default.nix
@@ -1,17 +1,16 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
-{ lib, buildGoPackage, fetchgit, fetchhg, fetchbzr, fetchsvn }:
+{ lib, buildGoPackage, fetchFromGitHub, fetchhg, fetchbzr, fetchsvn }:
 
 buildGoPackage rec {
   pname = "waitron";
   version = "unstable-2020-01-24";
-  rev = "c96833619cbb0cf2bc71b1d7b534101e139cc6e6";
 
   goPackagePath = "github.com/ns1/waitron";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/ns1/waitron";
-    sha256 = "0lgw37iq1cvg3mqc94nzf0027mvv721ay8x6dw3fc814ww8a2hb6";
+  src = fetchFromGitHub {
+    owner = "ns1";
+    repo = "waitron";
+    rev = "c96833619cbb0cf2bc71b1d7b534101e139cc6e6";
+    sha256 = "sha256-ZkGhEOckIOYGb6Yjr4I4e9cjAHDfksRwHW+zgOMZ/FE=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/tools/networking/xh/default.nix b/nixpkgs/pkgs/tools/networking/xh/default.nix
index 2a5708c8d052..13f470c327a0 100644
--- a/nixpkgs/pkgs/tools/networking/xh/default.nix
+++ b/nixpkgs/pkgs/tools/networking/xh/default.nix
@@ -38,6 +38,11 @@ rustPlatform.buildRustPackage rec {
       --fish completions/xh.fish \
       --zsh completions/_xh
 
+    installManPage doc/xh.1
+    ln -s $out/share/man/man1/xh.1 $out/share/man/man1/xhs.1
+
+    install -m444 -Dt $out/share/doc/xh README.md CHANGELOG.md
+
     # https://github.com/ducaale/xh#xh-and-xhs
     ln -s $out/bin/xh $out/bin/xhs
   '';
diff --git a/nixpkgs/pkgs/tools/networking/xrootd/default.nix b/nixpkgs/pkgs/tools/networking/xrootd/default.nix
index ffc348370983..a4c90f95e90d 100644
--- a/nixpkgs/pkgs/tools/networking/xrootd/default.nix
+++ b/nixpkgs/pkgs/tools/networking/xrootd/default.nix
@@ -19,14 +19,14 @@
 
 stdenv.mkDerivation rec {
   pname = "xrootd";
-  version = "5.4.1";
+  version = "5.4.2";
 
   src = fetchFromGitHub {
     owner = "xrootd";
     repo = "xrootd";
     rev = "v${version}";
     fetchSubmodules = true;
-    sha256 = "sha256-rr6cZ6tyrpCQyKcPBWwGsRAsLbjTXAoTtxf+u1UmvZo=";
+    sha256 = "sha256-k6uAJbUhpwnRrSeGn4JQiHDBrGJNQDf5vG2a+je5ByU=";
   };
 
   outputs = [ "bin" "out" "dev" "man" ];
diff --git a/nixpkgs/pkgs/tools/nix/info/info.sh b/nixpkgs/pkgs/tools/nix/info/info.sh
index 6708a541f3d9..c309e8be1649 100755
--- a/nixpkgs/pkgs/tools/nix/info/info.sh
+++ b/nixpkgs/pkgs/tools/nix/info/info.sh
@@ -84,7 +84,7 @@ desc_host_os() {
         (
             # shellcheck disable=SC1091
             . /etc/os-release
-            printf ", %s, %s" "${NAME:-$(uname -v)}" "${VERSION:-noversion}"
+            printf ", %s, %s, %s" "${NAME:-$(uname -v)}" "${VERSION:-noversion}" "${BUILD_ID:-nobuild}"
         )
     fi
 }
diff --git a/nixpkgs/pkgs/tools/nix/nix-output-monitor/default.nix b/nixpkgs/pkgs/tools/nix/nix-output-monitor/default.nix
index 0f78600a0506..a79b41a4a5dd 100644
--- a/nixpkgs/pkgs/tools/nix/nix-output-monitor/default.nix
+++ b/nixpkgs/pkgs/tools/nix/nix-output-monitor/default.nix
@@ -1,164 +1,23 @@
-# This file has been autogenerate with cabal2nix.
-# Update via ./update.sh"
 {
-  mkDerivation,
-  ansi-terminal,
-  async,
-  attoparsec,
-  base,
-  bytestring,
-  cassava,
-  containers,
-  data-default,
-  directory,
+  haskell,
   expect,
-  extra,
-  fetchzip,
-  filepath,
-  generic-optics,
-  HUnit,
+  haskellPackages,
   installShellFiles,
-  lib,
-  lock-file,
-  MemoTrie,
-  mtl,
-  nix-derivation,
-  optics,
-  process,
-  random,
-  relude,
-  runtimeShell,
-  safe,
-  stm,
-  streamly,
-  terminal-size,
-  text,
-  time,
-  unix,
-  vector,
-  wcwidth,
-  word8,
-}:
-mkDerivation {
-  pname = "nix-output-monitor";
-  version = "1.1.2.0";
-  src = fetchzip {
-    url = "https://github.com/maralorn/nix-output-monitor/archive/refs/tags/v1.1.2.0.tar.gz";
-    sha256 = "03qhy4xzika41pxlmvpz3psgy54va72ipn9v1lv33l6369ikrhl1";
+}: let
+  inherit (haskell.lib.compose) justStaticExecutables overrideCabal;
+  overrides = {
+    passthru.updateScript = ./update.sh;
+    testTarget = "unit-tests";
+    buildTools = [installShellFiles];
+    postInstall = ''
+      substitute "exe-sh/nom-build" "$out/bin/nom-build" \
+        --replace 'unbuffer' '${expect}/bin/unbuffer' \
+        --replace 'nom' "$out/bin/nom"
+      chmod a+x $out/bin/nom-build
+      installShellCompletion --zsh --name _nom-build completions/completion.zsh
+    '';
   };
-  isLibrary = true;
-  isExecutable = true;
-  libraryHaskellDepends = [
-    ansi-terminal
-    async
-    attoparsec
-    base
-    bytestring
-    cassava
-    containers
-    data-default
-    directory
-    extra
-    filepath
-    generic-optics
-    lock-file
-    MemoTrie
-    mtl
-    nix-derivation
-    optics
-    random
-    relude
-    safe
-    stm
-    streamly
-    terminal-size
-    text
-    time
-    unix
-    vector
-    wcwidth
-    word8
-  ];
-  executableHaskellDepends = [
-    ansi-terminal
-    async
-    attoparsec
-    base
-    bytestring
-    cassava
-    containers
-    data-default
-    directory
-    extra
-    filepath
-    generic-optics
-    lock-file
-    MemoTrie
-    mtl
-    nix-derivation
-    optics
-    random
-    relude
-    safe
-    stm
-    streamly
-    terminal-size
-    text
-    time
-    unix
-    vector
-    wcwidth
-    word8
-  ];
-  testHaskellDepends = [
-    ansi-terminal
-    async
-    attoparsec
-    base
-    bytestring
-    cassava
-    containers
-    data-default
-    directory
-    extra
-    filepath
-    generic-optics
-    HUnit
-    lock-file
-    MemoTrie
-    mtl
-    nix-derivation
-    optics
-    process
-    random
-    relude
-    safe
-    stm
-    streamly
-    terminal-size
-    text
-    time
-    unix
-    vector
-    wcwidth
-    word8
-  ];
-  homepage = "https://github.com/maralorn/nix-output-monitor";
-  description = "Parses output of nix-build to show additional information";
-  license = lib.licenses.agpl3Plus;
-  maintainers = with lib.maintainers; [maralorn];
-  passthru.updateScript = ./update.sh;
-  testTarget = "unit-tests";
-  buildTools = [installShellFiles];
-  postInstall = ''
-    cat > $out/bin/nom-build << EOF
-    #!${runtimeShell}
-    ${expect}/bin/unbuffer nix-build "\$@" 2>&1 | exec $out/bin/nom
-    EOF
-    chmod a+x $out/bin/nom-build
-    installShellCompletion --zsh --name _nom-build ${builtins.toFile "completion.zsh" ''
-      #compdef nom-build
-      compdef nom-build=nix-build
-    ''}
-  '';
-}
+in
+  justStaticExecutables
+  (overrideCabal overrides
+    (haskellPackages.callPackage ./generated-package.nix {}))
diff --git a/nixpkgs/pkgs/tools/nix/nix-output-monitor/generated-package.nix b/nixpkgs/pkgs/tools/nix/nix-output-monitor/generated-package.nix
new file mode 100644
index 000000000000..c95b839b4f63
--- /dev/null
+++ b/nixpkgs/pkgs/tools/nix/nix-output-monitor/generated-package.nix
@@ -0,0 +1,147 @@
+# This file has been autogenerate with cabal2nix.
+# Update via ./update.sh"
+{
+  mkDerivation,
+  ansi-terminal,
+  async,
+  attoparsec,
+  base,
+  bytestring,
+  cassava,
+  containers,
+  data-default,
+  directory,
+  extra,
+  fetchzip,
+  filepath,
+  generic-optics,
+  HUnit,
+  lib,
+  lock-file,
+  MemoTrie,
+  mtl,
+  nix-derivation,
+  optics,
+  process,
+  random,
+  relude,
+  safe,
+  stm,
+  streamly,
+  terminal-size,
+  text,
+  time,
+  unix,
+  vector,
+  wcwidth,
+  word8,
+}:
+mkDerivation {
+  pname = "nix-output-monitor";
+  version = "1.1.3.0";
+  src = fetchzip {
+    url = "https://github.com/maralorn/nix-output-monitor/archive/refs/tags/v1.1.3.0.tar.gz";
+    sha256 = "085phr84m0b056mj3c09gzcwv7b1wax7nhsg2qscahfz0q8f4ym7";
+  };
+  isLibrary = true;
+  isExecutable = true;
+  libraryHaskellDepends = [
+    ansi-terminal
+    async
+    attoparsec
+    base
+    bytestring
+    cassava
+    containers
+    data-default
+    directory
+    extra
+    filepath
+    generic-optics
+    lock-file
+    MemoTrie
+    mtl
+    nix-derivation
+    optics
+    random
+    relude
+    safe
+    stm
+    streamly
+    terminal-size
+    text
+    time
+    unix
+    vector
+    wcwidth
+    word8
+  ];
+  executableHaskellDepends = [
+    ansi-terminal
+    async
+    attoparsec
+    base
+    bytestring
+    cassava
+    containers
+    data-default
+    directory
+    extra
+    filepath
+    generic-optics
+    lock-file
+    MemoTrie
+    mtl
+    nix-derivation
+    optics
+    random
+    relude
+    safe
+    stm
+    streamly
+    terminal-size
+    text
+    time
+    unix
+    vector
+    wcwidth
+    word8
+  ];
+  testHaskellDepends = [
+    ansi-terminal
+    async
+    attoparsec
+    base
+    bytestring
+    cassava
+    containers
+    data-default
+    directory
+    extra
+    filepath
+    generic-optics
+    HUnit
+    lock-file
+    MemoTrie
+    mtl
+    nix-derivation
+    optics
+    process
+    random
+    relude
+    safe
+    stm
+    streamly
+    terminal-size
+    text
+    time
+    unix
+    vector
+    wcwidth
+    word8
+  ];
+  homepage = "https://github.com/maralorn/nix-output-monitor";
+  description = "Parses output of nix-build to show additional information";
+  license = lib.licenses.agpl3Plus;
+  maintainers = with lib.maintainers; [maralorn];
+}
diff --git a/nixpkgs/pkgs/tools/nix/nix-output-monitor/update.sh b/nixpkgs/pkgs/tools/nix/nix-output-monitor/update.sh
index ad5da0000300..b25a65fca2d7 100755
--- a/nixpkgs/pkgs/tools/nix/nix-output-monitor/update.sh
+++ b/nixpkgs/pkgs/tools/nix/nix-output-monitor/update.sh
@@ -9,7 +9,7 @@ set -eo pipefail
 # This is the directory of this update.sh script.
 script_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
 
-derivation_file="${script_dir}/default.nix"
+derivation_file="${script_dir}/generated-package.nix"
 
 # This is the latest released version of nix-output-monitor on GitHub.
 new_version=$(curl --silent "https://api.github.com/repos/maralorn/nix-output-monitor/releases" | jq '.[0].tag_name' --raw-output)
@@ -23,30 +23,9 @@ cat > "$derivation_file" << EOF
 EOF
 
 cabal2nix \
-  --extra-arguments expect \
-  --extra-arguments runtimeShell\
-  --extra-arguments installShellFiles\
   --maintainer maralorn \
   "https://github.com/maralorn/nix-output-monitor/archive/refs/tags/${new_version}.tar.gz" \
-  | head -n-1 >> "$derivation_file"
-
-cat >> "$derivation_file" << EOF
-    passthru.updateScript = ./update.sh;
-    testTarget = "unit-tests";
-    buildTools = [ installShellFiles ];
-    postInstall = ''
-        cat > \$out/bin/nom-build << EOF
-        #!\${runtimeShell}
-        \${expect}/bin/unbuffer nix-build "\\\$@" 2>&1 | exec \$out/bin/nom
-        EOF
-        chmod a+x \$out/bin/nom-build
-        installShellCompletion --zsh --name _nom-build \${builtins.toFile "completion.zsh" ''
-            #compdef nom-build
-            compdef nom-build=nix-build
-        ''}
-    '';
-}
-EOF
+  >> "$derivation_file"
 
 alejandra "${derivation_file}" | cat
 
diff --git a/nixpkgs/pkgs/tools/package-management/cargo-about/default.nix b/nixpkgs/pkgs/tools/package-management/cargo-about/default.nix
index a61aff2107de..0ed6f978ba96 100644
--- a/nixpkgs/pkgs/tools/package-management/cargo-about/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/cargo-about/default.nix
@@ -2,19 +2,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-about";
-  version = "0.4.8";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "EmbarkStudios";
     repo = "cargo-about";
     rev = version;
-    sha256 = "sha256-cKzGg3fAXKqnBZES3YUMbv1ZAcLqo6AdrXKXSFSAnis=";
+    sha256 = "sha256-M09X7UwrTtrOhOphhpGHSAqxneY50jNrFKJCeBQhRfc=";
   };
 
   # enable pkg-config feature of zstd
   cargoPatches = [ ./zstd-pkg-config.patch ];
 
-  cargoSha256 = "sha256-OLrxqbTIhHMNPEnSAUbTqoYnaZi/BxbWUCxaTo9Zyww=";
+  cargoSha256 = "sha256-E1+OfVAzrezXoUz9Nlyhdq1xxEWm4UJhVyp+nG7UmYY=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/tools/package-management/micromamba/default.nix b/nixpkgs/pkgs/tools/package-management/micromamba/default.nix
index 4bdf7c4c7a3c..8f6cdd574a1e 100644
--- a/nixpkgs/pkgs/tools/package-management/micromamba/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/micromamba/default.nix
@@ -11,11 +11,6 @@ let
     patches = [
       # Patch added by the mamba team
       (fetchpatch {
-        url = "https://raw.githubusercontent.com/mamba-org/boa-forge/20530f80e2e15012078d058803b6e2c75ed54224/libsolv/add_strict_repo_prio_rule.patch";
-        sha256 = "19c47i5cpyy88nxskf7k6q6r43i55w61jvnz7fc2r84hpjkcrv7r";
-      })
-      # Patch added by the mamba team
-      (fetchpatch {
         url = "https://raw.githubusercontent.com/mamba-org/boa-forge/20530f80e2e15012078d058803b6e2c75ed54224/libsolv/conda_variant_priorization.patch";
         sha256 = "1iic0yx7h8s662hi2jqx68w5kpyrab4fr017vxd4wyxb6wyk35dd";
       })
diff --git a/nixpkgs/pkgs/tools/package-management/nfpm/default.nix b/nixpkgs/pkgs/tools/package-management/nfpm/default.nix
index dc877ee2d812..8b03779ae7d2 100644
--- a/nixpkgs/pkgs/tools/package-management/nfpm/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nfpm/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "nfpm";
-  version = "2.14.0";
+  version = "2.15.0";
 
   src = fetchFromGitHub {
     owner = "goreleaser";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-KZeamXMhTX8CbPR66f4ij29GsIvzSbDUZtla+EXPRG4=";
+    sha256 = "sha256-z9jGivdO7LduJuHbyKr4sl8xg+FGVvKwCm+RgVQPxJQ=";
   };
 
-  vendorSha256 = "sha256-j4ebzVOzlmQwSkP8epDGClT7fhSUtC6uWdcoo+tFbnc=";
+  vendorSha256 = "sha256-guJgLjmB29sOLIzs2+gKNp0WTWC3zS9Sb5DD5IistKY=";
 
   doCheck = false;
 
@@ -20,7 +20,7 @@ buildGoModule rec {
   meta = with lib; {
     description = "A simple deb and rpm packager written in Go";
     homepage = "https://github.com/goreleaser/nfpm";
-    maintainers = [ maintainers.marsam ];
-    license = licenses.mit;
+    maintainers = with maintainers; [ marsam techknowlogick ];
+    license = with licenses; [ mit ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/package-management/nix/common.nix b/nixpkgs/pkgs/tools/package-management/nix/common.nix
index 2161ea3c309f..2f9a6be8f66b 100644
--- a/nixpkgs/pkgs/tools/package-management/nix/common.nix
+++ b/nixpkgs/pkgs/tools/package-management/nix/common.nix
@@ -53,8 +53,8 @@ in
 , confDir
 , stateDir
 , storeDir
-}:
-stdenv.mkDerivation {
+}: let
+self = stdenv.mkDerivation {
   pname = "nix";
 
   version = "${version}${suffix}";
@@ -209,6 +209,7 @@ stdenv.mkDerivation {
   passthru = {
     inherit aws-sdk-cpp boehmgc;
 
-    perl-bindings = perl.pkgs.toPerlModule (callPackage ./nix-perl.nix { inherit src version;  });
+    perl-bindings = perl.pkgs.toPerlModule (callPackage ./nix-perl.nix { nix = self; });
   };
-}
+};
+in self
diff --git a/nixpkgs/pkgs/tools/package-management/nix/default.nix b/nixpkgs/pkgs/tools/package-management/nix/default.nix
index 8eb8fef82983..4510948b436b 100644
--- a/nixpkgs/pkgs/tools/package-management/nix/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nix/default.nix
@@ -74,12 +74,12 @@ in lib.makeExtensible (self: {
 
   unstable = lib.lowPrio (common rec {
     version = "2.8";
-    suffix = "pre20220311_${lib.substring 0 7 src.rev}";
+    suffix = "pre20220322_${lib.substring 0 7 src.rev}";
     src = fetchFromGitHub {
       owner = "NixOS";
       repo = "nix";
-      rev = "d5322698a2abbc6d141e1d244e17b0d226a2f18b";
-      sha256 = "sha256-7rQSktGC8+DmeyGOnzFMy1QwAYnw4JJphv+lEwFCwfU=";
+      rev = "d5d4d980427aca3849b90bfe1694b6d1d14532fb";
+      sha256 = "sha256-fV7nUcRhVmgIvDUraAzHV2TDVHDn1jETfv2zdDMQ59Y=";
     };
   });
 })
diff --git a/nixpkgs/pkgs/tools/package-management/nix/nix-perl.nix b/nixpkgs/pkgs/tools/package-management/nix/nix-perl.nix
index 069a22d3a853..302d123a87d3 100644
--- a/nixpkgs/pkgs/tools/package-management/nix/nix-perl.nix
+++ b/nixpkgs/pkgs/tools/package-management/nix/nix-perl.nix
@@ -8,14 +8,11 @@
 , autoreconfHook
 , autoconf-archive
 , nlohmann_json
-
-, version
-, src
 }:
 
 stdenv.mkDerivation {
   pname = "nix-perl";
-  inherit version src;
+  inherit (nix) version src;
 
   postUnpack = "sourceRoot=$sourceRoot/perl";
 
diff --git a/nixpkgs/pkgs/tools/package-management/nixui/default.nix b/nixpkgs/pkgs/tools/package-management/nixui/default.nix
index 0e6ff9ec7055..c5aef5c1754d 100644
--- a/nixpkgs/pkgs/tools/package-management/nixui/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nixui/default.nix
@@ -1,16 +1,10 @@
-{ lib, stdenv, pkgs, fetchgit, nix, node_webkit, makeDesktopItem
+{ lib, stdenv, pkgs, fetchFromGitHub, nix, node_webkit, makeDesktopItem
 , writeScript }:
 let
-  version = "0.2.1";
-  src = fetchgit {
-    url = "git://github.com/matejc/nixui.git";
-    rev = "845a5f4a33f1d0c509c727c130d0792a5b450a38";
-    sha256 = "1ay3i4lgzs3axbby06l4vvspxi0aa9pwiil84qj0dqq1jb6isara";
-  };
   nixui = (import ./nixui.nix {
     inherit pkgs;
     inherit (stdenv.hostPlatform) system;
-  })."nixui-git://github.com/matejc/nixui.git#0.2.1";
+  })."nixui-git+https://github.com/matejc/nixui.git#0.2.1";
   script = writeScript "nixui" ''
     #! ${stdenv.shell}
     export PATH="${nix}/bin:\$PATH"
@@ -24,9 +18,15 @@ let
     genericName = "NixUI";
   };
 in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "nixui";
-  inherit version src;
+  version = "0.2.1";
+  src = fetchFromGitHub {
+    owner = "matejc";
+    repo = "nixui";
+    rev = version;
+    sha256 = "sha256-KisdzZIB4wYkJojGyG9SCsR+9d6EGuDX6mro/yiJw6s=";
+  };
   installPhase = ''
     mkdir -p $out/bin
     ln -s ${script} $out/bin/nixui
diff --git a/nixpkgs/pkgs/tools/package-management/nixui/node-packages.nix b/nixpkgs/pkgs/tools/package-management/nixui/node-packages.nix
index 0b6857cf716a..89362dbec092 100644
--- a/nixpkgs/pkgs/tools/package-management/nixui/node-packages.nix
+++ b/nixpkgs/pkgs/tools/package-management/nixui/node-packages.nix
@@ -70,12 +70,12 @@ let
   };
 in
 {
-  "nixui-git://github.com/matejc/nixui.git#0.2.1" = nodeEnv.buildNodePackage {
+  "nixui-git+https://github.com/matejc/nixui.git#0.2.1" = nodeEnv.buildNodePackage {
     name = "nixui";
     packageName = "nixui";
     version = "0.2.1";
     src = fetchgit {
-      url = "git://github.com/matejc/nixui.git";
+      url = "https://github.com/matejc/nixui.git";
       rev = "845a5f4a33f1d0c509c727c130d0792a5b450a38";
       sha256 = "2a2b1dcd9201e306242688c6c86f520ac47ef5de841ae0d7ea6ae8ff2889c3ab";
     };
diff --git a/nixpkgs/pkgs/tools/package-management/nixui/pkg.json b/nixpkgs/pkgs/tools/package-management/nixui/pkg.json
index 551df4f1b1c9..39aceb5b0e1f 100644
--- a/nixpkgs/pkgs/tools/package-management/nixui/pkg.json
+++ b/nixpkgs/pkgs/tools/package-management/nixui/pkg.json
@@ -1,3 +1,3 @@
 [
-  { "nixui": "git://github.com/matejc/nixui.git#0.2.1" }
+  { "nixui": "git+https://github.com/matejc/nixui.git#0.2.1" }
 ]
diff --git a/nixpkgs/pkgs/tools/security/amber/default.nix b/nixpkgs/pkgs/tools/security/amber/default.nix
index 5fb88ca9921b..c2196cea686a 100644
--- a/nixpkgs/pkgs/tools/security/amber/default.nix
+++ b/nixpkgs/pkgs/tools/security/amber/default.nix
@@ -3,16 +3,16 @@
 rustPlatform.buildRustPackage rec {
   # Renaming it to amber-secret because another package named amber exists
   pname = "amber-secret";
-  version = "0.1.2";
+  version = "0.1.3";
 
   src = fetchFromGitHub {
     owner = "fpco";
     repo = "amber";
     rev = "v${version}";
-    sha256 = "sha256-+vipQl/HWoYnOPkQLjeIedpnnqPVYaUWhks9eCgMOxQ=";
+    sha256 = "sha256-kPDNTwsfI+8nOgsLv2aONrLGSRZhw5YzNntJ2tbE0oI=";
   };
 
-  cargoSha256 = "sha256-xWEQvCyd8auE0q9rBt9iDgU8Dscf4pq/gsAINH2eQY4=";
+  cargoSha256 = "sha256-fTdTgbeOQXEpLHq9tHiPLkttvaxS/WJ86h3jRdrfbJM=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ Security ];
 
diff --git a/nixpkgs/pkgs/tools/security/authoscope/default.nix b/nixpkgs/pkgs/tools/security/authoscope/default.nix
index eafd5ebb7d2f..f21df67035e4 100644
--- a/nixpkgs/pkgs/tools/security/authoscope/default.nix
+++ b/nixpkgs/pkgs/tools/security/authoscope/default.nix
@@ -12,16 +12,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "authoscope";
-  version = "0.8.0";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     owner = "kpcyrd";
     repo = pname;
     rev = "v${version}";
-    sha256 = "11ci38m6d3lj4f0g7cl3dqf10kfk258k2k92phd2nav1my4i90pf";
+    sha256 = "sha256-SKgb/N249s0+Rb59moBT/MeFb4zAAElCMQJto0diyUk=";
   };
 
-  cargoSha256 = "13x7i52i3k88vkfvk2smy2aqfg3na4317scvw7ali1rv545nbxds";
+  cargoSha256 = "sha256-rSHuKy86iJNLAKSVcb7fn7A/cc75EOc97jGI14EaC6k=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/nixpkgs/pkgs/tools/security/cameradar/default.nix b/nixpkgs/pkgs/tools/security/cameradar/default.nix
index 569be38ee28a..950132ea0b8b 100644
--- a/nixpkgs/pkgs/tools/security/cameradar/default.nix
+++ b/nixpkgs/pkgs/tools/security/cameradar/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "cameradar";
-  version = "5.0.1";
+  version = "5.0.2";
 
   src = fetchFromGitHub {
     owner = "Ullaakut";
     repo = pname;
     rev = "v${version}";
-    sha256 = "03nm03cqhq04ixw4rssfkgrin918pa0v7ai26v4h99gz7j8hs7ll";
+    sha256 = "sha256-GOqmz/aiOLGMfs9rQBIEQSgBycPzhu8BohcAc2U+gBw=";
   };
 
-  vendorSha256 = "099np130dn51nb4lcyrrm46fihfipxrw0vpqs2jh5g4c6pnbk200";
+  vendorSha256 = "sha256-AIi57DWMvAKl0PhuwHO/0cHoDKk5e0bJsqHYBka4NiU=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/nixpkgs/pkgs/tools/security/cariddi/default.nix b/nixpkgs/pkgs/tools/security/cariddi/default.nix
index 9f29826808db..74e9b05b2370 100644
--- a/nixpkgs/pkgs/tools/security/cariddi/default.nix
+++ b/nixpkgs/pkgs/tools/security/cariddi/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "cariddi";
-  version = "1.1.5";
+  version = "1.1.6";
 
   src = fetchFromGitHub {
     owner = "edoardottt";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-PXQljC9rwlxXQ96fII3EjD4NXu61EMkYvMWqkcJZ4vU=";
+    sha256 = "sha256-/ez2biYU8NnVny8v5Mu9pLq0oqzcIenpyEb3qkPd9v8=";
   };
 
-  vendorSha256 = "sha256-zNUdglsfy6lEV54afCAoigxa3rR0qf/e3+B4PvVRIa4=";
+  vendorSha256 = "sha256-zJ39tAq+ooROMHG1vC2m2rbq+wttxqYxAd2hLg5GtJM=";
 
   meta = with lib; {
     description = "Crawler for URLs and endpoints";
diff --git a/nixpkgs/pkgs/tools/security/cfripper/default.nix b/nixpkgs/pkgs/tools/security/cfripper/default.nix
index 39b0187c4a6e..96848acd7c04 100644
--- a/nixpkgs/pkgs/tools/security/cfripper/default.nix
+++ b/nixpkgs/pkgs/tools/security/cfripper/default.nix
@@ -5,13 +5,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "cfripper";
-  version = "1.5.1";
+  version = "1.7.0";
 
   src = fetchFromGitHub {
     owner = "Skyscanner";
     repo = pname;
     rev = version;
-    hash = "sha256-/qcpLCk1ZZMKxhqK6q6sSbRDjiF5GQmDJzvCaV2kAqQ=";
+    hash = "sha256-bYKusyEItnhj1mU6Tucsdi5pdMoWrUK4Y91SK8dNGE4=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/nixpkgs/pkgs/tools/security/cryptomator/default.nix b/nixpkgs/pkgs/tools/security/cryptomator/default.nix
index ec18a5ed10ce..05e9f1ef384a 100644
--- a/nixpkgs/pkgs/tools/security/cryptomator/default.nix
+++ b/nixpkgs/pkgs/tools/security/cryptomator/default.nix
@@ -1,25 +1,18 @@
 { lib, stdenv, fetchFromGitHub
 , autoPatchelfHook
-, fuse, packer
+, fuse, jffi
 , maven, jdk, jre, makeWrapper, glib, wrapGAppsHook
 }:
 
 let
   pname = "cryptomator";
-  version = "1.5.15";
+  version = "1.6.7";
 
   src = fetchFromGitHub {
     owner = "cryptomator";
     repo = "cryptomator";
     rev = version;
-    sha256 = "06n7wda7gfalvsg1rlcm51ss73nlbhh95z6zq18yvn040clkzkij";
-  };
-
-  icons = fetchFromGitHub {
-    owner = "cryptomator";
-    repo = "cryptomator-linux";
-    rev = version;
-    sha256 = "1sqbx858zglv0xkpjya0cpbkxf2hkj1xvxhnir3176y2xyjv6aib";
+    sha256 = "sha256-hOILOdVYBnS9XuEXaIJcf2bPF72Lcr7IBX4CFCIsC8k=";
   };
 
   # perform fake build to make a fixed-output derivation out of the files downloaded from maven central (120MB)
@@ -28,10 +21,10 @@ let
     inherit src;
 
     nativeBuildInputs = [ jdk maven ];
+    buildInputs = [ jre ];
 
     buildPhase = ''
-      cd main
-      while mvn -Prelease package -Dmaven.repo.local=$out/.m2 -Dmaven.wagon.rto=5000; [ $? = 1 ]; do
+      while mvn -Plinux package -Dmaven.test.skip=true -Dmaven.repo.local=$out/.m2 -Dmaven.wagon.rto=5000; [ $? = 1 ]; do
         echo "timeout, restart maven to continue downloading"
       done
     '';
@@ -44,42 +37,52 @@ let
 
     outputHashAlgo = "sha256";
     outputHashMode = "recursive";
-    outputHash = "195ysv9l861y9d1lvmvi7wmk172ynlba9n233blpaigq88cjn208";
+    outputHash = "sha256-XFqXjNjPN2vwA3jay7TS79S4FHksjjrODdD/p4oTvpg=";
+
+    doCheck = false;
   };
 
 in stdenv.mkDerivation rec {
   inherit pname version src;
 
   buildPhase = ''
-    cd main
-    mvn -Prelease package --offline -Dmaven.repo.local=$(cp -dpR ${deps}/.m2 ./ && chmod +w -R .m2 && pwd)/.m2
+    mvn -Plinux package --offline -Dmaven.test.skip=true -Dmaven.repo.local=$(cp -dpR ${deps}/.m2 ./ && chmod +w -R .m2 && pwd)/.m2
   '';
 
   installPhase = ''
-    mkdir -p $out/bin/ $out/usr/share/cryptomator/libs/
+    mkdir -p $out/bin/ $out/share/cryptomator/libs/ $out/share/cryptomator/mods/
+
+    cp target/libs/* $out/share/cryptomator/libs/
+    cp target/mods/* target/cryptomator-*.jar $out/share/cryptomator/mods/
 
-    cp buildkit/target/libs/* buildkit/target/linux-libs/* $out/usr/share/cryptomator/libs/
+    # The bundeled jffi.so dosn't work on nixos and causes a segmentation fault
+    # we thus replace it with a version build by nixos
+    rm $out/share/cryptomator/libs/jff*.jar
+    cp -f ${jffi}/share/java/jffi-complete.jar $out/share/cryptomator/libs/
 
     makeWrapper ${jre}/bin/java $out/bin/cryptomator \
-      --add-flags "-classpath '$out/usr/share/cryptomator/libs/*'" \
+      --add-flags "--class-path '$out/share/cryptomator/libs/*'" \
+      --add-flags "--module-path '$out/share/cryptomator/mods'" \
       --add-flags "-Dcryptomator.settingsPath='~/.config/Cryptomator/settings.json'" \
-      --add-flags "-Dcryptomator.ipcPortPath='~/.config/Cryptomator/ipcPort.bin'" \
+      --add-flags "-Dcryptomator.ipcSocketPath='~/.config/Cryptomator/ipc.socket'" \
       --add-flags "-Dcryptomator.logDir='~/.local/share/Cryptomator/logs'" \
       --add-flags "-Dcryptomator.mountPointsDir='~/.local/share/Cryptomator/mnt'" \
       --add-flags "-Djdk.gtk.version=3" \
       --add-flags "-Xss20m" \
       --add-flags "-Xmx512m" \
-      --add-flags "org.cryptomator.launcher.Cryptomator" \
-      --prefix PATH : "$out/usr/share/cryptomator/libs/:${lib.makeBinPath [ jre glib ]}" \
+      --add-flags "-Djavafx.embed.singleThread=true " \
+      --add-flags "-Dawt.useSystemAAFontSettings=on" \
+      --add-flags "--module org.cryptomator.desktop/org.cryptomator.launcher.Cryptomator" \
+      --prefix PATH : "$out/share/cryptomator/libs/:${lib.makeBinPath [ jre glib ]}" \
       --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ fuse ]}" \
       --set JAVA_HOME "${jre.home}"
 
     # install desktop entry and icons
-    cp -r ${icons}/resources/appimage/AppDir/usr/* $out/
+    cp -r ${src}/dist/linux/appimage/resources/AppDir/usr/* $out/
   '';
 
   nativeBuildInputs = [ autoPatchelfHook maven makeWrapper wrapGAppsHook jdk ];
-  buildInputs = [ fuse packer jre glib ];
+  buildInputs = [ fuse jre glib jffi ];
 
   meta = with lib; {
     description = "Free client-side encryption for your cloud files";
diff --git a/nixpkgs/pkgs/tools/security/exploitdb/default.nix b/nixpkgs/pkgs/tools/security/exploitdb/default.nix
index a50588fc1f81..e589ca529c61 100644
--- a/nixpkgs/pkgs/tools/security/exploitdb/default.nix
+++ b/nixpkgs/pkgs/tools/security/exploitdb/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "exploitdb";
-  version = "2022-03-11";
+  version = "2022-03-24";
 
   src = fetchFromGitHub {
     owner = "offensive-security";
     repo = pname;
     rev = version;
-    sha256 = "sha256-dW4cLm//4wROsizRQ59sqEGPRZ26yIU5I7mdPEYC3YU=";
+    sha256 = "sha256-G2KFDNNM4NJ7DgQu1+uNjgixzyLFnF0G0YQ29PgYZ/0=";
 
   };
 
diff --git a/nixpkgs/pkgs/tools/security/feroxbuster/default.nix b/nixpkgs/pkgs/tools/security/feroxbuster/default.nix
new file mode 100644
index 000000000000..ecfc496ce8e7
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/feroxbuster/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, openssl
+, pkg-config
+, rustPlatform
+, Security
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "feroxbuster";
+  version = "2.6.1";
+
+  src = fetchFromGitHub {
+    owner = "epi052";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-RY9bFuALRaVXDrC0eIx0inPjRqNpRKNZf3mCrKIdGL8=";
+  };
+
+  cargoSha256 = "sha256-0Zawlx/lhF7K8nOsHYKO84pnctVMpm3RfnAFCOltOqE=";
+
+  OPENSSL_NO_VENDOR = true;
+
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
+  buildInputs = [
+    openssl
+  ] ++ lib.optionals stdenv.isDarwin [
+    Security
+  ];
+
+  # Tests require network access
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Fast, simple, recursive content discovery tool";
+    homepage = "https://github.com/epi052/feroxbuster";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
+
diff --git a/nixpkgs/pkgs/tools/security/ffuf/default.nix b/nixpkgs/pkgs/tools/security/ffuf/default.nix
index 076fd78d7136..a24b4a8452a7 100644
--- a/nixpkgs/pkgs/tools/security/ffuf/default.nix
+++ b/nixpkgs/pkgs/tools/security/ffuf/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "ffuf";
-  version = "1.3.1";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-NkRf36wFmzqFv13P0DxpzEOGyBGbSXMLjWE7URzRXGY=";
+    sha256 = "sha256-M+wzS/u40zjUNc+63qzkoM9eJ4ruradeJKhhQTP2jxQ=";
   };
 
   vendorSha256 = "sha256-szT08rIozAuliOmge5RFX4NeVrJ2pCVyfotrHuvc0UU=";
diff --git a/nixpkgs/pkgs/tools/security/fulcio/default.nix b/nixpkgs/pkgs/tools/security/fulcio/default.nix
index 96ef86d18d1c..300b996524df 100644
--- a/nixpkgs/pkgs/tools/security/fulcio/default.nix
+++ b/nixpkgs/pkgs/tools/security/fulcio/default.nix
@@ -2,33 +2,61 @@
 
 buildGoModule rec {
   pname = "fulcio";
-  version = "0.1.1";
+  version = "0.2.0";
 
   src = fetchFromGitHub {
     owner = "sigstore";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-MvLQMGPyJYqYUljLqsr+qJeeYnxdH9aNGkWpDRvOeh8=";
+    sha256 = "sha256-tCjFx9Ug8rO8cSxQb2vBG/MHSUJCx17lDeGnSGjZLcI=";
+    # populate values that require us to use git. By doing this in postFetch we
+    # can delete .git afterwards and maintain better reproducibility of the src.
+    leaveDotGit = true;
+    postFetch = ''
+      cd "$out"
+      git rev-parse HEAD > $out/COMMIT
+      # '0000-00-00T00:00:00Z'
+      date -u -d "@$(git log -1 --pretty=%ct)" "+'%Y-%m-%dT%H:%M:%SZ'" > $out/SOURCE_DATE_EPOCH
+      find "$out" -name .git -print0 | xargs -0 rm -rf
+    '';
   };
-  vendorSha256 = "sha256-pRL0et+UOi/tzuQz/Q7UmSA+pVhLJYR8lG8NAbPN9PU=";
+  vendorSha256 = "sha256-CmtsReP0JacgNyRqCrYZRONwR5eluymrQgsj/ukhYNQ=";
 
-  ldflags = [ "-s" "-w" ];
-
-  # Install completions post-install
+  # install completions post-install
   nativeBuildInputs = [ installShellFiles ];
 
+  ldflags = [
+    "-s"
+    "-w"
+    "-X github.com/sigstore/fulcio/cmd/app.gitVersion=v${version}"
+    "-X github.com/sigstore/fulcio/cmd/app.gitTreeState=clean"
+  ];
+
+  # ldflags based on metadata from git and source
+  preBuild = ''
+    ldflags+=" -X github.com/sigstore/fulcio/cmd/app.gitCommit=$(cat COMMIT)"
+    ldflags+=" -X github.com/sigstore/fulcio/cmd/app.buildDate=$(cat SOURCE_DATE_EPOCH)"
+  '';
+
+  preCheck = ''
+    # remove test that requires networking
+    rm pkg/config/config_test.go
+  '';
+
   postInstall = ''
-    mv $out/bin/fulcio $out/bin/fulcio-server
-    installShellCompletion --cmd fulcio-server \
-      --bash <($out/bin/fulcio-server completion bash) \
-      --fish <($out/bin/fulcio-server completion fish) \
-      --zsh <($out/bin/fulcio-server completion zsh)
+    installShellCompletion --cmd fulcio \
+      --bash <($out/bin/fulcio completion bash) \
+      --fish <($out/bin/fulcio completion fish) \
+      --zsh <($out/bin/fulcio completion zsh)
   '';
 
   doInstallCheck = true;
   installCheckPhase = ''
     runHook preInstallCheck
-    $out/bin/fulcio-server --help
+
+    $out/bin/fulcio --help
+    $out/bin/fulcio version | grep "v${version}"
+
     runHook postInstallCheck
   '';
 
diff --git a/nixpkgs/pkgs/tools/security/gitleaks/default.nix b/nixpkgs/pkgs/tools/security/gitleaks/default.nix
index a574c3476290..bbeca94a993e 100644
--- a/nixpkgs/pkgs/tools/security/gitleaks/default.nix
+++ b/nixpkgs/pkgs/tools/security/gitleaks/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "gitleaks";
-  version = "8.4.0";
+  version = "8.5.1";
 
   src = fetchFromGitHub {
     owner = "zricethezav";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-z3YGRDgBGpr2hixIayih4wxGWPtYL0EPAuTYVPByzQc=";
+    sha256 = "sha256-lx7xjOajFyeetnGcJwX66pIcZw2A7+QGWb5crCoA83g=";
   };
 
-  vendorSha256 = "sha256-J1xX+r+Mph1QkqjK87tqGDkYvPZp0lHgdRhd88WZi1c=";
+  vendorSha256 = "sha256-gelUrZOYiThO0+COIv9cOgho/tjv7ZqSKOktWIbdADw=";
 
   ldflags = [
     "-s"
diff --git a/nixpkgs/pkgs/tools/security/gopass/default.nix b/nixpkgs/pkgs/tools/security/gopass/default.nix
index 50dfe3b8ce63..ee70413591d4 100644
--- a/nixpkgs/pkgs/tools/security/gopass/default.nix
+++ b/nixpkgs/pkgs/tools/security/gopass/default.nix
@@ -13,7 +13,7 @@
 
 buildGoModule rec {
   pname = "gopass";
-  version = "1.13.1";
+  version = "1.14.0";
 
   nativeBuildInputs = [ installShellFiles makeWrapper ];
 
@@ -21,10 +21,10 @@ buildGoModule rec {
     owner = "gopasspw";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-g/ICT489uW3a5EnsxJPYOnV+yeOFfaFPMowdIK0M1Fc=";
+    sha256 = "sha256-swvZrsRuevBe8lVg67J0R9u3GB/Wc2ZR54Y6j1Bsa3E=";
   };
 
-  vendorSha256 = "sha256-HGc6jUp4WO5P5dwfa0r7+X78a8us9fWrf+/IOotZHqk=";
+  vendorSha256 = "sha256-Fq9jEJm65efBL5ShcB/XCM70UVDO/8STbbTOOHXrpSk=";
 
   subPackages = [ "." ];
 
diff --git a/nixpkgs/pkgs/tools/security/grype/default.nix b/nixpkgs/pkgs/tools/security/grype/default.nix
index cc35a24151a6..3e3dc6ff098a 100644
--- a/nixpkgs/pkgs/tools/security/grype/default.nix
+++ b/nixpkgs/pkgs/tools/security/grype/default.nix
@@ -6,28 +6,26 @@
 
 buildGoModule rec {
   pname = "grype";
-  version = "0.33.1";
+  version = "0.34.7";
 
   src = fetchFromGitHub {
     owner = "anchore";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-5QjyGIpxnrwTnEmi0D16vPKodg3+SKiINFONwU2OzC0=";
+    sha256 = "sha256-t95efLTqPnmYiXTBxuxEoDdafoZC/bXXTfKdA8gy3fk=";
     # populate values that require us to use git. By doing this in postFetch we
     # can delete .git afterwards and maintain better reproducibility of the src.
     leaveDotGit = true;
     postFetch = ''
       cd "$out"
-      commit="$(git rev-parse HEAD)"
-      source_date_epoch=$(git log --date=format:'%Y-%m-%dT%H:%M:%SZ' -1 --pretty=%ad)
-      substituteInPlace "$out/internal/version/build.go" \
-        --replace 'gitCommit = valueNotProvided' "gitCommit = \"$commit\"" \
-        --replace 'buildDate = valueNotProvided' "buildDate = \"$source_date_epoch\""
+      git rev-parse HEAD > $out/COMMIT
+      # 0000-00-00T00:00:00Z
+      date -u -d "@$(git log -1 --pretty=%ct)" "+%Y-%m-%dT%H:%M:%SZ" > $out/SOURCE_DATE_EPOCH
       find "$out" -name .git -print0 | xargs -0 rm -rf
     '';
   };
 
-  vendorSha256 = "sha256-CPMfQv9oiLbIMkZe/t482LzssoNTcNVJdr2o2wJecSA=";
+  vendorSha256 = "sha256-FZMgS0aNZVq4nvwog4l62dOzC6wW7pQCNbOW1/jssWo=";
 
   nativeBuildInputs = [
     installShellFiles
@@ -37,14 +35,17 @@ buildGoModule rec {
     "-s"
     "-w"
     "-X github.com/anchore/grype/internal/version.version=${version}"
+    "-X github.com/anchore/grype/internal/version.gitDescription=v${version}"
     "-X github.com/anchore/grype/internal/version.gitTreeState=clean"
   ];
 
   preBuild = ''
     # grype version also displays the version of the syft library used
     # we need to grab it from the go.sum and add an ldflag for it
-    SYFTVERSION="$(grep "github.com/anchore/syft" go.sum -m 1 | awk '{print $2}')"
-    ldflags+=" -X github.com/anchore/grype/internal/version.syftVersion=$SYFTVERSION"
+    SYFT_VERSION="$(grep "github.com/anchore/syft" go.sum -m 1 | awk '{print $2}')"
+    ldflags+=" -X github.com/anchore/grype/internal/version.syftVersion=$SYFT_VERSION"
+    ldflags+=" -X github.com/anchore/grype/internal/version.gitCommit=$(cat COMMIT)"
+    ldflags+=" -X github.com/anchore/grype/internal/version.buildDate=$(cat SOURCE_DATE_EPOCH)"
   '';
 
   # Tests require a running Docker instance
diff --git a/nixpkgs/pkgs/tools/security/jadx/default.nix b/nixpkgs/pkgs/tools/security/jadx/default.nix
index e5b805b89cc5..2aadf1fb7b27 100644
--- a/nixpkgs/pkgs/tools/security/jadx/default.nix
+++ b/nixpkgs/pkgs/tools/security/jadx/default.nix
@@ -2,13 +2,13 @@
 
 let
   pname = "jadx";
-  version = "1.3.3";
+  version = "1.3.4";
 
   src = fetchFromGitHub {
     owner = "skylot";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-z8u6j6YLBHmgZKSGh/rFDDSnWZrBgWsqfKP3vhaukbY=";
+    hash = "sha256-G2BgGhWk0Prbjni6HPZ/0+bWiC9uI2O13Q1SDCE5mBE=";
   };
 
   deps = stdenv.mkDerivation {
@@ -40,7 +40,7 @@ let
     '';
 
     outputHashMode = "recursive";
-    outputHash = "sha256-kiNtA63sINX7VRsq4JKAiZYzymHe1TrNetZsE6S9KVM=";
+    outputHash = "sha256-QZClHuj7oCUYX3I8B3A90m4zK7+FP24C19RIzYyPC1w=";
   };
 in stdenv.mkDerivation {
   inherit pname version src;
diff --git a/nixpkgs/pkgs/tools/security/keybase/gui.nix b/nixpkgs/pkgs/tools/security/keybase/gui.nix
index d5f04099f756..f5147e17ac5e 100644
--- a/nixpkgs/pkgs/tools/security/keybase/gui.nix
+++ b/nixpkgs/pkgs/tools/security/keybase/gui.nix
@@ -4,16 +4,16 @@
 , runtimeShell, gsettings-desktop-schemas }:
 
 let
-  versionSuffix = "20220120174718.95a3939b3a";
+  versionSuffix = "20220216215910.c82d65a685";
 in
 
 stdenv.mkDerivation rec {
   pname = "keybase-gui";
-  version = "5.9.0"; # Find latest version from https://prerelease.keybase.io/deb/dists/stable/main/binary-amd64/Packages
+  version = "5.9.3"; # Find latest version from https://prerelease.keybase.io/deb/dists/stable/main/binary-amd64/Packages
 
   src = fetchurl {
     url = "https://s3.amazonaws.com/prerelease.keybase.io/linux_binaries/deb/keybase_${version + "-" + versionSuffix}_amd64.deb";
-    sha256 = "sha256-Wdl5pZFIz+mDkkE0EDpLGH/eGWYoBbLV05LYJgkwpI4=";
+    hash = "sha256-JY2DaqApv6K02y3B+JIXpV4SvvMQpBhw9eqr/5Sn0cg=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/security/keyscope/default.nix b/nixpkgs/pkgs/tools/security/keyscope/default.nix
index dad09970b911..d73b1b499eca 100644
--- a/nixpkgs/pkgs/tools/security/keyscope/default.nix
+++ b/nixpkgs/pkgs/tools/security/keyscope/default.nix
@@ -12,16 +12,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "keyscope";
-  version = "1.1.0";
+  version = "1.2.2";
 
   src = fetchFromGitHub {
     owner = "spectralops";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-4ZKIukxeadzGpq2lwxbyyIKqWgbZpdHPRAT+LsyWjzk=";
+    sha256 = "sha256-SLVNzxwZhdK2Fk2Vu5P/j0d8IoUPzlb9e5hnJrZ8Qsk=";
   };
 
-  cargoSha256 = "sha256-aq7xUma8QDRnu74R7JSuZjrXCco7L9JrNmAZiGtTyts=";
+  cargoSha256 = "sha256-PBSQeLQ7UkWhGlRID+bv2HwzgvoiJ120t/TNKJFUY+M=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/nixpkgs/pkgs/tools/security/libtpms/default.nix b/nixpkgs/pkgs/tools/security/libtpms/default.nix
index d93f0135c20a..2042ec30fff6 100644
--- a/nixpkgs/pkgs/tools/security/libtpms/default.nix
+++ b/nixpkgs/pkgs/tools/security/libtpms/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libtpms";
-  version = "0.9.2";
+  version = "0.9.3";
 
   src = fetchFromGitHub {
     owner = "stefanberger";
     repo = "libtpms";
     rev = "v${version}";
-    sha256 = "sha256-sfAmyx9MgzCVA1Da7hl6/sKxhS9ptaNLeSB8wmJIKDs=";
+    sha256 = "sha256-ih154MtLWBUdo7+ugu6tg5O/XSjlgFC00wgWC71VeaE=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/security/melt/default.nix b/nixpkgs/pkgs/tools/security/melt/default.nix
new file mode 100644
index 000000000000..846b70b87538
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/melt/default.nix
@@ -0,0 +1,25 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "melt";
+  version = "0.2.0";
+
+  src = fetchFromGitHub {
+    owner = "charmbracelet";
+    repo = "melt";
+    rev = "v${version}";
+    sha256 = "sha256-HambmUodAwgi1/r/Nj7P7gXNK5pyBO3omMZ9ZvSK7cc=4";
+  };
+
+  vendorSha256 = "sha256-1f3QBbWaTiplEp/4ihds1PwrEnoq/81TzlT46TufGFs=";
+
+  ldflags = [ "-s" "-w" "-X=main.Version=${version}" ];
+
+  meta = with lib; {
+    description = "Backup and restore Ed25519 SSH keys with seed words";
+    homepage = "https://github.com/charmbracelet/melt";
+    changelog = "https://github.com/charmbracelet/melt/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ penguwin ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/security/metasploit/Gemfile b/nixpkgs/pkgs/tools/security/metasploit/Gemfile
index bdecd4e0a945..992e5c84fdfe 100644
--- a/nixpkgs/pkgs/tools/security/metasploit/Gemfile
+++ b/nixpkgs/pkgs/tools/security/metasploit/Gemfile
@@ -1,4 +1,4 @@
 # frozen_string_literal: true
 source "https://rubygems.org"
 
-gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.1.32"
+gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.1.35"
diff --git a/nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock b/nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock
index 6855f10bb48e..c3fd51f14b7f 100644
--- a/nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock
+++ b/nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock
@@ -1,9 +1,9 @@
 GIT
   remote: https://github.com/rapid7/metasploit-framework
-  revision: f7cd9896b753377c4c663188b6c26500b7850f41
-  ref: refs/tags/6.1.32
+  revision: c1efca37c6e967103978915618efa41515134ea1
+  ref: refs/tags/6.1.35
   specs:
-    metasploit-framework (6.1.32)
+    metasploit-framework (6.1.35)
       actionpack (~> 6.0)
       activerecord (~> 6.0)
       activesupport (~> 6.0)
@@ -98,25 +98,25 @@ GEM
   remote: https://rubygems.org/
   specs:
     Ascii85 (1.1.0)
-    actionpack (6.1.4.6)
-      actionview (= 6.1.4.6)
-      activesupport (= 6.1.4.6)
+    actionpack (6.1.5)
+      actionview (= 6.1.5)
+      activesupport (= 6.1.5)
       rack (~> 2.0, >= 2.0.9)
       rack-test (>= 0.6.3)
       rails-dom-testing (~> 2.0)
       rails-html-sanitizer (~> 1.0, >= 1.2.0)
-    actionview (6.1.4.6)
-      activesupport (= 6.1.4.6)
+    actionview (6.1.5)
+      activesupport (= 6.1.5)
       builder (~> 3.1)
       erubi (~> 1.4)
       rails-dom-testing (~> 2.0)
       rails-html-sanitizer (~> 1.1, >= 1.2.0)
-    activemodel (6.1.4.6)
-      activesupport (= 6.1.4.6)
-    activerecord (6.1.4.6)
-      activemodel (= 6.1.4.6)
-      activesupport (= 6.1.4.6)
-    activesupport (6.1.4.6)
+    activemodel (6.1.5)
+      activesupport (= 6.1.5)
+    activerecord (6.1.5)
+      activemodel (= 6.1.5)
+      activesupport (= 6.1.5)
+    activesupport (6.1.5)
       concurrent-ruby (~> 1.0, >= 1.0.2)
       i18n (>= 1.6, < 2)
       minitest (>= 5.1)
@@ -128,13 +128,13 @@ GEM
     arel-helpers (2.14.0)
       activerecord (>= 3.1.0, < 8)
     aws-eventstream (1.2.0)
-    aws-partitions (1.563.0)
-    aws-sdk-core (3.128.0)
+    aws-partitions (1.570.0)
+    aws-sdk-core (3.130.0)
       aws-eventstream (~> 1, >= 1.0.2)
       aws-partitions (~> 1, >= 1.525.0)
       aws-sigv4 (~> 1.1)
       jmespath (~> 1.0)
-    aws-sdk-ec2 (1.302.0)
+    aws-sdk-ec2 (1.304.0)
       aws-sdk-core (~> 3, >= 3.127.0)
       aws-sigv4 (~> 1.1)
     aws-sdk-iam (1.68.0)
@@ -149,7 +149,7 @@ GEM
       aws-sigv4 (~> 1.4)
     aws-sigv4 (1.4.0)
       aws-eventstream (~> 1, >= 1.0.2)
-    bcrypt (3.1.16)
+    bcrypt (3.1.17)
     bcrypt_pbkdf (1.1.0)
     bindata (2.4.10)
     bson (4.14.1)
@@ -221,7 +221,7 @@ GEM
     io-console (0.5.11)
     irb (1.3.6)
       reline (>= 0.2.5)
-    jmespath (1.6.0)
+    jmespath (1.6.1)
     jsobfu (0.4.2)
       rkelly-remix
     json (2.6.1)
@@ -229,7 +229,7 @@ GEM
     logging (2.3.0)
       little-plugger (~> 1.1)
       multi_json (~> 1.14)
-    loofah (2.14.0)
+    loofah (2.15.0)
       crass (~> 1.0.2)
       nokogiri (>= 1.5.9)
     metasm (1.0.5)
@@ -298,7 +298,7 @@ GEM
       hashery (~> 2.0)
       ruby-rc4
       ttfunk
-    pg (1.3.3)
+    pg (1.3.4)
     public_suffix (4.0.6)
     puma (5.6.2)
       nio4r (~> 2.0)
@@ -313,11 +313,11 @@ GEM
       nokogiri (>= 1.6)
     rails-html-sanitizer (1.4.2)
       loofah (~> 2.3)
-    railties (6.1.4.6)
-      actionpack (= 6.1.4.6)
-      activesupport (= 6.1.4.6)
+    railties (6.1.5)
+      actionpack (= 6.1.5)
+      activesupport (= 6.1.5)
       method_source
-      rake (>= 0.13)
+      rake (>= 12.2)
       thor (~> 1.0)
     rake (13.0.6)
     rb-readline (0.5.5)
@@ -334,12 +334,12 @@ GEM
       rex-core
       rex-struct2
       rex-text
-    rex-core (0.1.26)
+    rex-core (0.1.27)
     rex-encoder (0.1.6)
       metasm
       rex-arch
       rex-text
-    rex-exploitation (0.1.28)
+    rex-exploitation (0.1.29)
       jsobfu
       metasm
       rex-arch
@@ -347,7 +347,7 @@ GEM
       rex-text
       rexml
     rex-java (0.1.6)
-    rex-mime (0.1.6)
+    rex-mime (0.1.7)
       rex-text
     rex-nop (0.1.2)
       rex-arch
@@ -409,11 +409,11 @@ GEM
     ttfunk (1.7.0)
     tzinfo (2.0.4)
       concurrent-ruby (~> 1.0)
-    tzinfo-data (1.2021.5)
+    tzinfo-data (1.2022.1)
       tzinfo (>= 1.0.0)
     unf (0.1.4)
       unf_ext
-    unf_ext (0.0.8)
+    unf_ext (0.0.8.1)
     unix-crypt (1.3.0)
     warden (1.2.9)
       rack (>= 2.0.9)
diff --git a/nixpkgs/pkgs/tools/security/metasploit/default.nix b/nixpkgs/pkgs/tools/security/metasploit/default.nix
index 11215cd3dde9..8d807d85844a 100644
--- a/nixpkgs/pkgs/tools/security/metasploit/default.nix
+++ b/nixpkgs/pkgs/tools/security/metasploit/default.nix
@@ -15,13 +15,13 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "metasploit-framework";
-  version = "6.1.32";
+  version = "6.1.35";
 
   src = fetchFromGitHub {
     owner = "rapid7";
     repo = "metasploit-framework";
     rev = version;
-    sha256 = "sha256-UoH+tp3I9YTXXNXDaYne1E9Zpoj9fbr7mnIQws6TXJs=";
+    sha256 = "sha256-1xEc+I2Pvs6GQuEGAHWWAum7ASESX5R5D1qN+wPtFgY=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/security/metasploit/gemset.nix b/nixpkgs/pkgs/tools/security/metasploit/gemset.nix
index 0104412d350e..45270cea4cfb 100644
--- a/nixpkgs/pkgs/tools/security/metasploit/gemset.nix
+++ b/nixpkgs/pkgs/tools/security/metasploit/gemset.nix
@@ -4,50 +4,50 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1d4nxv0p3wv4w0pf89nmxzg10balny5rwbchwsscgiminzh3mg7y";
+      sha256 = "0kk8c6n94lg5gyarsy33wakw04zbmdwgfr7zxv4zzmbnp1yach0w";
       type = "gem";
     };
-    version = "6.1.4.6";
+    version = "6.1.5";
   };
   actionview = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0cmxc80gg7pm6d9y7ah5qr4ymzks8rp51jv0a2qdq2m9p6llzlkk";
+      sha256 = "16w7pl8ir253g1dzlzx4mwrjsx3v7fl7zn941xz53zb4ld286mhi";
       type = "gem";
     };
-    version = "6.1.4.6";
+    version = "6.1.5";
   };
   activemodel = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0izra8g3g1agv3mz72b0474adkj4ldszj3nwk3l0szgrln7df0lv";
+      sha256 = "16anyz7wqwmphzb6w1sgmvdvj50g3zp70s94s5v8hwxj680f6195";
       type = "gem";
     };
-    version = "6.1.4.6";
+    version = "6.1.5";
   };
   activerecord = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "15v0dwp2122yzwlw8ca0lgx5qbw8fsasbn8zzcks1mvmc9afisss";
+      sha256 = "0jl6jc9g9jxsljfnnmbkxrgwrz86icw6g745cv6iavryizrmw939";
       type = "gem";
     };
-    version = "6.1.4.6";
+    version = "6.1.5";
   };
   activesupport = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0vrz4vgqz4grr2ykwkd8zhhd0rg12z89n89zl6aff17zrdhhad35";
+      sha256 = "0jmqndx3a46hpwz33ximqch27018n3mk9z19azgpylm33w7xpkx4";
       type = "gem";
     };
-    version = "6.1.4.6";
+    version = "6.1.5";
   };
   addressable = {
     groups = ["default"];
@@ -104,30 +104,30 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0l4f97kmsz1niicj52bm88ggbq3lvn41w0cckfwksh4yikjh20wv";
+      sha256 = "0w3y40l5xg0p5sha6w4wppwb6kil129nk760yblswqw7vz0s0mm0";
       type = "gem";
     };
-    version = "1.563.0";
+    version = "1.570.0";
   };
   aws-sdk-core = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xpqx000gq1j0n211c9bch5b2rc48a54kxk87m6y8z844c0wlqk7";
+      sha256 = "14ymvp06k46gvkpvz5zaqvbvr6wd8vdka5iq25q0wd0fzdx7aivm";
       type = "gem";
     };
-    version = "3.128.0";
+    version = "3.130.0";
   };
   aws-sdk-ec2 = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "13x9rwkykyw873prd2k9pqwrjkf9jsqih9aksbf9fn8hfnsv6db8";
+      sha256 = "0vvplr6ml7acl047lynmsdl2bs2i992vx68dhzqmllppf8ggcjvs";
       type = "gem";
     };
-    version = "1.302.0";
+    version = "1.304.0";
   };
   aws-sdk-iam = {
     groups = ["default"];
@@ -174,10 +174,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "02r1c3isfchs5fxivbq99gc3aq4vfyn8snhcy707dal1p8qz12qb";
+      sha256 = "1rakdhrnlclrpy7sihi9ipwdh7fjkkvzga171464lq6rzp07cf65";
       type = "gem";
     };
-    version = "3.1.16";
+    version = "3.1.17";
   };
   bcrypt_pbkdf = {
     groups = ["default"];
@@ -594,10 +594,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1gjrr5pdcl3l3skhp9d0jzs4yhmknpv3ldcz59b339b9lqbqasnr";
+      sha256 = "1mnvb80cdg7fzdcs3xscv21p28w4igk5sj5m7m81xp8v2ks87jj0";
       type = "gem";
     };
-    version = "1.6.0";
+    version = "1.6.1";
   };
   jsobfu = {
     groups = ["default"];
@@ -644,10 +644,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0z8bdcmw66j3dy6ivcc02yq32lx3n9bavx497llln8qy014xjm4w";
+      sha256 = "1yp1h1j7pdkqvnx8jl6bkzlajav3h5mhqzihgs9p6y3c8927mw23";
       type = "gem";
     };
-    version = "2.14.0";
+    version = "2.15.0";
   };
   metasm = {
     groups = ["default"];
@@ -684,12 +684,12 @@
     platforms = [];
     source = {
       fetchSubmodules = false;
-      rev = "f7cd9896b753377c4c663188b6c26500b7850f41";
-      sha256 = "16swjg7c443jkbxvlzgxi2k5jkylvs4nkhymbkbq9xf8knvgx0aj";
+      rev = "c1efca37c6e967103978915618efa41515134ea1";
+      sha256 = "01hnxl1zp3as1xwr8pqj440vps82jrsh01p18a3cxglgipw1q4fp";
       type = "git";
       url = "https://github.com/rapid7/metasploit-framework";
     };
-    version = "6.1.32";
+    version = "6.1.35";
   };
   metasploit-model = {
     groups = ["default"];
@@ -977,10 +977,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0qqky1q9xhji017q1apx9w81qdlwpm6ix3amhikjy416hxxmhcj1";
+      sha256 = "090c3kazlmiizp25las7dgi8wlc11s29nrs2gy3qrp1z8qikgcmb";
       type = "gem";
     };
-    version = "1.3.3";
+    version = "1.3.4";
   };
   public_suffix = {
     groups = ["default"];
@@ -1067,10 +1067,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1snhwpbnmsyhr297qmin8i5i631aimjca1hiazi128i1355255hb";
+      sha256 = "1fdqhv8qhk2dspkrr9f5dj3806g52cb0l1chh2hx8v81y218cl93";
       type = "gem";
     };
-    version = "6.1.4.6";
+    version = "6.1.5";
   };
   rake = {
     groups = ["default"];
@@ -1147,10 +1147,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1hjc70q6wb580k0jk4g4s9aqwd25l48kr0pcyjjs2ffax0zcm4d0";
+      sha256 = "0a5fb8g6ksak1g1syhvh5rh87shnx617l7nl6afl80in0h4fd4xd";
       type = "gem";
     };
-    version = "0.1.26";
+    version = "0.1.27";
   };
   rex-encoder = {
     groups = ["default"];
@@ -1167,10 +1167,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08v5nam0xp6f8qi3nyqzh97sz07hy59w82y213jz919mrgpb70vc";
+      sha256 = "0asx13g0xqb8wnslrmsld2l1w2qpl6kjrcbfl945kw1nm7k5bwxb";
       type = "gem";
     };
-    version = "0.1.28";
+    version = "0.1.29";
   };
   rex-java = {
     groups = ["default"];
@@ -1187,10 +1187,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0wzw1qcdgbn3iyskppy5038mcdrzplyai45pilm5qjj4fwvjdl6m";
+      sha256 = "00qpd5i8naw601q6aij652gw8x6my5d5drf63lq9fridjrqj0nja";
       type = "gem";
     };
-    version = "0.1.6";
+    version = "0.1.7";
   };
   rex-nop = {
     groups = ["default"];
@@ -1497,10 +1497,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0w1iyvw0m2xvdr4654jnn1g27jwj84y94dvaj1k2p3lcrvndm698";
+      sha256 = "0yvfyxz70r45j65763fzy0p5j8cxlhnpn1n5lcxj4is7hp8v5i23";
       type = "gem";
     };
-    version = "1.2021.5";
+    version = "1.2022.1";
   };
   unf = {
     groups = ["default"];
@@ -1517,10 +1517,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0jmbimpnpjdzz8hlrppgl9spm99qh3qzbx0b81k3gkgwba8nk3yd";
+      sha256 = "0bf120xbq23zjyf8zi8h1576d71g58srr8rndig0whn10w72vrxz";
       type = "gem";
     };
-    version = "0.0.8";
+    version = "0.0.8.1";
   };
   unix-crypt = {
     groups = ["default"];
diff --git a/nixpkgs/pkgs/tools/security/minio-certgen/default.nix b/nixpkgs/pkgs/tools/security/minio-certgen/default.nix
index ee4413c90411..16dbfdf63add 100644
--- a/nixpkgs/pkgs/tools/security/minio-certgen/default.nix
+++ b/nixpkgs/pkgs/tools/security/minio-certgen/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "minio-certgen";
-  version = "1.1.0";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "certgen";
     rev = "v${version}";
-    sha256 = "sha256-Qs+wpx9pRdWdY9FrBaKM8gdB0+POy80I6DB4UaBsJEE=";
+    sha256 = "sha256-FBx4v29ZuhXwubWivIXReO5Ge/rPt1J3LbXlprC7E9c=";
   };
 
   vendorSha256 = null;
diff --git a/nixpkgs/pkgs/tools/security/nitrokey-app/default.nix b/nixpkgs/pkgs/tools/security/nitrokey-app/default.nix
index d6f2e20611d2..f06877b99fe1 100644
--- a/nixpkgs/pkgs/tools/security/nitrokey-app/default.nix
+++ b/nixpkgs/pkgs/tools/security/nitrokey-app/default.nix
@@ -36,7 +36,6 @@ stdenv.mkDerivation rec {
        See https://www.nitrokey.com/ for more information.
     '';
     homepage         = "https://github.com/Nitrokey/nitrokey-app";
-    repositories.git = "https://github.com/Nitrokey/nitrokey-app.git";
     license          = licenses.gpl3;
     maintainers      = with maintainers; [ kaiha fpletz ];
   };
diff --git a/nixpkgs/pkgs/tools/security/nuclei/default.nix b/nixpkgs/pkgs/tools/security/nuclei/default.nix
index 0b3e21b73d19..14539bf21574 100644
--- a/nixpkgs/pkgs/tools/security/nuclei/default.nix
+++ b/nixpkgs/pkgs/tools/security/nuclei/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "nuclei";
-  version = "2.6.3";
+  version = "2.6.5";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-4jByNyO0EvJ2ppdg21+7YfeB9arjBZALrOm5MJlkZsg=";
+    sha256 = "sha256-g78sZDhV2+MgoFkJIrE2RbVLa/aPjbKFFRyKj594Hb0=";
   };
 
-  vendorSha256 = "sha256-717+jJiyqmctR9Yb/XnnKd1N+31K2+xO1XClGMKlL+k=";
+  vendorSha256 = "sha256-/umoSOQ0ehQplxU8OTGJVmTgO+8xPZxVwRBfM67zMh8=";
 
   modRoot = "./v2";
   subPackages = [
diff --git a/nixpkgs/pkgs/tools/security/nwipe/default.nix b/nixpkgs/pkgs/tools/security/nwipe/default.nix
index 8cfa47b5d44a..50a8cf83db22 100644
--- a/nixpkgs/pkgs/tools/security/nwipe/default.nix
+++ b/nixpkgs/pkgs/tools/security/nwipe/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nwipe";
-  version = "0.32";
+  version = "0.33";
 
   src = fetchFromGitHub {
     owner = "martijnvanbrummelen";
     repo = "nwipe";
     rev = "v${version}";
-    sha256 = "sha256-O3kYiai+5KMHWd2om4+HrTIw9lB2wLJF3Mrr6iY2+I8=";
+    sha256 = "sha256-i+cK2XTdWc3ByG9i+rfwL3Ds8Sl15/wZwEc5nrcWdeY=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/security/onlykey/default.nix b/nixpkgs/pkgs/tools/security/onlykey/default.nix
index 312f580c0239..d924e7ccc3a4 100644
--- a/nixpkgs/pkgs/tools/security/onlykey/default.nix
+++ b/nixpkgs/pkgs/tools/security/onlykey/default.nix
@@ -20,7 +20,7 @@ let
     elem;
 
   # this must be updated anytime this package is updated.
-  onlykeyPkg = "onlykey-git://github.com/trustcrypto/OnlyKey-App.git#v${version}";
+  onlykeyPkg = "onlykey-git+https://github.com/trustcrypto/OnlyKey-App.git#v${version}";
 
   # define a shortcut to get to onlykey.
   onlykey = self."${onlykeyPkg}";
diff --git a/nixpkgs/pkgs/tools/security/onlykey/node-packages.nix b/nixpkgs/pkgs/tools/security/onlykey/node-packages.nix
index d6713a0f42a8..d5e3cd84fed6 100644
--- a/nixpkgs/pkgs/tools/security/onlykey/node-packages.nix
+++ b/nixpkgs/pkgs/tools/security/onlykey/node-packages.nix
@@ -6316,12 +6316,12 @@ let
   };
 in
 {
-  "onlykey-git://github.com/trustcrypto/OnlyKey-App.git#v5.3.3" = nodeEnv.buildNodePackage {
+  "onlykey-git+https://github.com/trustcrypto/OnlyKey-App.git#v5.3.3" = nodeEnv.buildNodePackage {
     name = "OnlyKey";
     packageName = "OnlyKey";
     version = "5.3.3";
     src = fetchgit {
-      url = "git://github.com/trustcrypto/OnlyKey-App.git";
+      url = "https://github.com/trustcrypto/OnlyKey-App.git";
       rev = "0bd08ef5828d9493cd4c5f4909e9a4fc4c59a494";
       sha256 = "d2386369fd9d9b7d5ea5d389434848c33fa34e26d713d439e8e2f2e447237bb0";
     };
diff --git a/nixpkgs/pkgs/tools/security/onlykey/package.json b/nixpkgs/pkgs/tools/security/onlykey/package.json
index d9a1a72c4297..06fa903f6a55 100644
--- a/nixpkgs/pkgs/tools/security/onlykey/package.json
+++ b/nixpkgs/pkgs/tools/security/onlykey/package.json
@@ -1,3 +1,3 @@
 [
-  {"onlykey": "git://github.com/trustcrypto/OnlyKey-App.git#v5.3.3"}
+  {"onlykey": "git+https://github.com/trustcrypto/OnlyKey-App.git#v5.3.3"}
 ]
diff --git a/nixpkgs/pkgs/tools/security/sequoia/default.nix b/nixpkgs/pkgs/tools/security/sequoia/default.nix
index 324af6aa4c99..4803430018ed 100644
--- a/nixpkgs/pkgs/tools/security/sequoia/default.nix
+++ b/nixpkgs/pkgs/tools/security/sequoia/default.nix
@@ -5,7 +5,7 @@
 , git
 , nettle
 # Use the same llvmPackages version as Rust
-, llvmPackages_10
+, llvmPackages_12
 , cargo
 , rustc
 , rustPlatform
@@ -41,8 +41,8 @@ rustPlatform.buildRustPackage rec {
     cargo
     rustc
     git
-    llvmPackages_10.libclang.lib
-    llvmPackages_10.clang
+    llvmPackages_12.libclang.lib
+    llvmPackages_12.clang
     ensureNewerSourcesForZipFilesHook
     capnproto
   ] ++
@@ -72,7 +72,7 @@ rustPlatform.buildRustPackage rec {
     "build-release"
   ];
 
-  LIBCLANG_PATH = "${llvmPackages_10.libclang.lib}/lib";
+  LIBCLANG_PATH = "${llvmPackages_12.libclang.lib}/lib";
 
   # Sometimes, tests fail on CI (ofborg) & hydra without this
   CARGO_TEST_ARGS = "--workspace --exclude sequoia-store";
diff --git a/nixpkgs/pkgs/tools/security/shisho/default.nix b/nixpkgs/pkgs/tools/security/shisho/default.nix
new file mode 100644
index 000000000000..5a5995f5da3b
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/shisho/default.nix
@@ -0,0 +1,59 @@
+{ lib
+, fetchFromGitHub
+, rustPlatform
+, installShellFiles
+, rustfmt
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "shisho";
+  version = "0.5.2";
+
+  src = fetchFromGitHub {
+    owner = "flatt-security";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "sha256-G7sHaDq+F5lXNaF1sSLUecdjZbCejJE79P4AQifKdFY=";
+    fetchSubmodules = true;
+  };
+  cargoSha256 = "sha256-xd4andytmDMOIT+3DkmUC9fkxxGJ6yRY2WSdnGB6ZwY=";
+
+  nativeBuildInputs = [
+    installShellFiles
+    # required to build serde-sarif dependency
+    rustfmt
+  ];
+
+  postInstall = ''
+    installShellCompletion --cmd shisho \
+      --bash <($out/bin/shisho completion bash) \
+      --fish <($out/bin/shisho completion fish) \
+      --zsh <($out/bin/shisho completion zsh)
+  '';
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    runHook preInstallCheck
+
+    $out/bin/shisho --help
+    $out/bin/shisho --version | grep "${version}"
+
+    runHook postInstallCheck
+  '';
+
+  meta = with lib; {
+    homepage = "https://docs.shisho.dev/shisho/";
+    changelog = "https://docs.shisho.dev/changelog/";
+    description = "Lightweight static analyzer for several programming languages";
+    longDescription = ''
+      Shisho is a lightweight static code analyzer designed for developers and
+      is the core engine for Shisho products. It is, so to speak, like a
+      pluggable and configurable linter; it gives developers a way to codify
+      your domain knowledge over your code as rules. With powerful automation
+      and integration capabilities, the rules will help you find and fix issues
+      semiautomatically.
+    '';
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ jk ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/security/sigma-cli/default.nix b/nixpkgs/pkgs/tools/security/sigma-cli/default.nix
index 3bf4e7889124..a2417e7b8fe2 100644
--- a/nixpkgs/pkgs/tools/security/sigma-cli/default.nix
+++ b/nixpkgs/pkgs/tools/security/sigma-cli/default.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "sigma-cli";
-  version = "0.3.0";
+  version = "0.3.4";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "SigmaHQ";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-Nfd78Y35naDTzwodcdvJr/02CptcHxS717VGsR/QOuI=";
+    hash = "sha256-FWcPHtEYqS+81dU4lB+4BLFOXtFumcyhucwvmu2TAt8=";
   };
 
   nativeBuildInputs = with python3.pkgs; [
diff --git a/nixpkgs/pkgs/tools/security/spire/default.nix b/nixpkgs/pkgs/tools/security/spire/default.nix
index 5f06abeda1b0..9b9e9e93488f 100644
--- a/nixpkgs/pkgs/tools/security/spire/default.nix
+++ b/nixpkgs/pkgs/tools/security/spire/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "spire";
-  version = "1.2.0";
+  version = "1.2.1";
 
   outputs = [ "out" "agent" "server" ];
 
@@ -10,10 +10,10 @@ buildGoModule rec {
     owner = "spiffe";
     repo = pname;
     rev = "v${version}";
-    sha256 = "01ph9jzh18bnidrsbnnxm3gxh0cgfllnjvf7a5haqz51lm6a9pny";
+    sha256 = "sha256-LK73RGSTwGhCXOglsqK8RAAldovRzliE78vi2ilTSrw=";
   };
 
-  vendorSha256 = "1fd1k5by4wcjmzfgi3gnrwnb38b0wa3w67kzjlx8s0nwapyfgx0b";
+  vendorSha256 = "sha256-am8ZTUX8Vph1Eg013NObMiSVeupS2hlHdpZ/1mO27dY=";
 
   subPackages = [ "cmd/spire-agent" "cmd/spire-server" ];
 
@@ -30,6 +30,7 @@ buildGoModule rec {
   meta = with lib; {
     description = "The SPIFFE Runtime Environment";
     homepage = "https://github.com/spiffe/spire";
+    changelog = "https://github.com/spiffe/spire/releases/tag/v${version}";
     license = licenses.asl20;
     maintainers = with maintainers; [ jonringer fkautz ];
   };
diff --git a/nixpkgs/pkgs/tools/security/sshuttle/default.nix b/nixpkgs/pkgs/tools/security/sshuttle/default.nix
index 959712488a20..4b4bbd3788b3 100644
--- a/nixpkgs/pkgs/tools/security/sshuttle/default.nix
+++ b/nixpkgs/pkgs/tools/security/sshuttle/default.nix
@@ -11,11 +11,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "sshuttle";
-  version = "1.0.5";
+  version = "1.1.0";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "fd8c691aac2cb80933aae7f94d9d9e271a820efc5c48e73408f1a90da426a1bd";
+    sha256 = "sha256-IfuRvfOStQ5422uNdelbc6ydr9Nh4mV+eE5nRWEhkxU=";
   };
 
   patches = [ ./sudo.patch ];
@@ -27,9 +27,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [ makeWrapper python3Packages.setuptools-scm ];
 
-  propagatedBuildInputs = [ python3Packages.psutil ];
-
-  checkInputs = with python3Packages; [ mock pytestCheckHook flake8 ];
+  checkInputs = with python3Packages; [ pytestCheckHook ];
 
   postInstall = ''
     wrapProgram $out/bin/sshuttle \
@@ -45,6 +43,6 @@ python3Packages.buildPythonApplication rec {
       Works with Linux and Mac OS and supports DNS tunneling.
     '';
     license = licenses.lgpl21;
-    maintainers = with maintainers; [ domenkozar carlosdagos ];
+    maintainers = with maintainers; [ domenkozar carlosdagos SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/sshuttle/sudo.patch b/nixpkgs/pkgs/tools/security/sshuttle/sudo.patch
index 6e8634bd4a1f..d00aab087948 100644
--- a/nixpkgs/pkgs/tools/security/sshuttle/sudo.patch
+++ b/nixpkgs/pkgs/tools/security/sshuttle/sudo.patch
@@ -5,7 +5,7 @@ index cab5b1c..e89f8a6 100644
 @@ -192,7 +192,7 @@ class FirewallClient:
  
          self.auto_nets = []
-         python_path = os.path.dirname(os.path.dirname(__file__))
+
 -        argvbase = ([sys.executable, sys.argv[0]] +
 +        argvbase = ([sys.argv[0]] +
                      ['-v'] * (helpers.verbose or 0) +
diff --git a/nixpkgs/pkgs/tools/security/step-ca/default.nix b/nixpkgs/pkgs/tools/security/step-ca/default.nix
index 97a42646312e..b650b93f411b 100644
--- a/nixpkgs/pkgs/tools/security/step-ca/default.nix
+++ b/nixpkgs/pkgs/tools/security/step-ca/default.nix
@@ -12,16 +12,16 @@
 
 buildGoModule rec {
   pname = "step-ca";
-  version = "0.18.1";
+  version = "0.18.2";
 
   src = fetchFromGitHub {
     owner = "smallstep";
     repo = "certificates";
     rev = "v${version}";
-    sha256 = "sha256-oebmJ+xrJTV5gXH3U1lWCSQMHiVnUTa0ZTp39sVB7KM=";
+    sha256 = "sha256-BhPup3q2muYGWzAa/9b4vnIjBces4GhUHZ/mg4CWMRc=";
   };
 
-  vendorSha256 = "sha256-IJXJS+Z93Hw1I1CAeRv4mq8as9DKebqNFa0IMgZ+Kic=";
+  vendorSha256 = "sha256-oVaziWZGslZCVqkEXL32XvOVU54VOf41Qg+VoVWo7x0=";
 
   ldflags = [ "-buildid=" ];
 
diff --git a/nixpkgs/pkgs/tools/security/tboot/default.nix b/nixpkgs/pkgs/tools/security/tboot/default.nix
index a33c26419e16..0b7ecca4f240 100644
--- a/nixpkgs/pkgs/tools/security/tboot/default.nix
+++ b/nixpkgs/pkgs/tools/security/tboot/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tboot";
-  version = "1.10.4";
+  version = "1.10.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/tboot/${pname}-${version}.tar.gz";
-    sha256 = "sha256-iEn6mZ0tuDBA1a2POpJEBaIM0TMVDohbVvp/6OO4nAY=";
+    sha256 = "sha256-O0vhbAPLwlBx7x1L2gtP1VDu2G2sbH9+/fAkI8VRs5M=";
   };
 
   buildInputs = [ openssl trousers zlib ];
diff --git a/nixpkgs/pkgs/tools/security/tor/default.nix b/nixpkgs/pkgs/tools/security/tor/default.nix
index 571b4e7f4da7..14e0be73f01e 100644
--- a/nixpkgs/pkgs/tools/security/tor/default.nix
+++ b/nixpkgs/pkgs/tools/security/tor/default.nix
@@ -97,7 +97,6 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://www.torproject.org/";
-    repositories.git = "https://git.torproject.org/git/tor";
     description = "Anonymizing overlay network";
 
     longDescription = ''
diff --git a/nixpkgs/pkgs/tools/security/tor/torsocks.nix b/nixpkgs/pkgs/tools/security/tor/torsocks.nix
index 399afe7f75cb..16eeca0ffad7 100644
--- a/nixpkgs/pkgs/tools/security/tor/torsocks.nix
+++ b/nixpkgs/pkgs/tools/security/tor/torsocks.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "2.3.0";
 
   src = fetchgit {
-    url    = meta.repositories.git;
+    url    = "https://git.torproject.org/torsocks.git";
     rev    = "refs/tags/v${version}";
     sha256 = "0x0wpcigf22sjxg7bm0xzqihmsrz51hl4v8xf91qi4qnmr4ny1hb";
   };
@@ -35,7 +35,6 @@ stdenv.mkDerivation rec {
   meta = {
     description      = "Wrapper to safely torify applications";
     homepage         = "https://github.com/dgoulet/torsocks";
-    repositories.git = "https://git.torproject.org/torsocks.git";
     license          = lib.licenses.gpl2;
     platforms        = lib.platforms.unix;
     maintainers      = with lib.maintainers; [ thoughtpolice ];
diff --git a/nixpkgs/pkgs/tools/security/tpm-luks/default.nix b/nixpkgs/pkgs/tools/security/tpm-luks/default.nix
index 4aab72cb5dfc..6063cdecc67a 100644
--- a/nixpkgs/pkgs/tools/security/tpm-luks/default.nix
+++ b/nixpkgs/pkgs/tools/security/tpm-luks/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, fetchgit, autoreconfHook, gawk, trousers, cryptsetup, openssl }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, gawk, trousers, cryptsetup, openssl }:
 
 stdenv.mkDerivation {
   pname = "tpm-luks";
   version = "unstable-2015-07-11";
 
-  src = fetchgit {
-    url = "https://github.com/momiji/tpm-luks";
+  src = fetchFromGitHub {
+    owner = "momiji";
+    repo = "tpm-luks";
     rev = "c9c5b7fdddbcdac1cd4d2ea6baddd0617cc88ffa";
-    sha256 = "1ms2v57f13r9km6mvf9rha5ndmlmjvrz3mcikai6nzhpj0nrjz0w";
+    sha256 = "sha256-HHyZLZAXfmuimpHV8fOWldZmi4I5uV1NnSmP4E7ZQtc=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/tools/security/vault/default.nix b/nixpkgs/pkgs/tools/security/vault/default.nix
index 458e2a533896..d349c205ad4f 100644
--- a/nixpkgs/pkgs/tools/security/vault/default.nix
+++ b/nixpkgs/pkgs/tools/security/vault/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "vault";
-  version = "1.9.4";
+  version = "1.10.0";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "vault";
     rev = "v${version}";
-    sha256 = "sha256-zqtRM2p+RrLrXzDCMtHJZNx/dKWyFqM+3V5eICwWvWs=";
+    sha256 = "sha256-XgrEtAVfMcXbmAjwgIWME/v85QHJ11fUXapAZtS/lSw=";
   };
 
-  vendorSha256 = "sha256-EiQ6XmGrw1O2Zd8TM7HSr3sQUd1naQYKbYLKB/vWdXU=";
+  vendorSha256 = "sha256-Bo0+HSG7NqaweMKPdl+kzB6RdbQsy2FAzmr7ZZVgcsg=";
 
   subPackages = [ "." ];
 
@@ -46,6 +46,6 @@ buildGoModule rec {
     changelog = "https://github.com/hashicorp/vault/blob/v${version}/CHANGELOG.md";
     platforms = platforms.linux ++ platforms.darwin;
     license = licenses.mpl20;
-    maintainers = with maintainers; [ rushmorem lnl7 offline pradeepchhetri Chili-Man ];
+    maintainers = with maintainers; [ rushmorem lnl7 offline pradeepchhetri Chili-Man techknowlogick ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/vault/update-bin.sh b/nixpkgs/pkgs/tools/security/vault/update-bin.sh
new file mode 100644
index 000000000000..25f41e2aad12
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/vault/update-bin.sh
@@ -0,0 +1,43 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl gnused gawk nix-prefetch
+
+set -euo pipefail
+
+ROOT="$(dirname "$(readlink -f "$0")")"
+NIX_DRV="$ROOT/vault-bin.nix"
+if [ ! -f "$NIX_DRV" ]; then
+  echo "ERROR: cannot find vault-bin in $ROOT"
+  exit 1
+fi
+
+fetch_arch() {
+  VER="$1"; ARCH="$2"
+  URL="https://releases.hashicorp.com/vault/${VER}/vault_${VER}_${ARCH}.zip"
+  nix-prefetch "{ stdenv, fetchzip }:
+stdenv.mkDerivation rec {
+  pname = \"vault-bin\"; version = \"${VER}\";
+  src = fetchzip { url = \"$URL\"; };
+}
+"
+}
+
+replace_sha() {
+  sed -i "s#$1 = \"sha256-.\{44\}\"#$1 = \"$2\"#" "$NIX_DRV"
+}
+
+# https://releases.hashicorp.com/vault/1.9.4/vault_1.9.4_linux_arm64.zip
+VAULT_VER=$(curl -Ls -w "%{url_effective}" -o /dev/null https://github.com/hashicorp/vault/releases/latest | awk -F'/' '{print $NF}' | sed 's/v//')
+
+VAULT_LINUX_X86_SHA256=$(fetch_arch "$VAULT_VER" "linux_386")
+VAULT_LINUX_X64_SHA256=$(fetch_arch "$VAULT_VER" "linux_amd64")
+VAULT_DARWIN_X64_SHA256=$(fetch_arch "$VAULT_VER" "darwin_amd64")
+VAULT_LINUX_AARCH64_SHA256=$(fetch_arch "$VAULT_VER" "linux_arm64")
+VAULT_DARWIN_AARCH64_SHA256=$(fetch_arch "$VAULT_VER" "darwin_arm64")
+
+sed -i "s/version = \".*\"/version = \"$VAULT_VER\"/" "$NIX_DRV"
+
+replace_sha "i686-linux" "$VAULT_LINUX_X86_SHA256"
+replace_sha "x86_64-linux" "$VAULT_LINUX_X64_SHA256"
+replace_sha "x86_64-darwin" "$VAULT_DARWIN_X64_SHA256"
+replace_sha "aarch64-linux" "$VAULT_LINUX_AARCH64_SHA256"
+replace_sha "aarch64-darwin" "$VAULT_DARWIN_AARCH64_SHA256"
diff --git a/nixpkgs/pkgs/tools/security/vault/vault-bin.nix b/nixpkgs/pkgs/tools/security/vault/vault-bin.nix
index 1ffd793be8b2..ebb70a1f6292 100644
--- a/nixpkgs/pkgs/tools/security/vault/vault-bin.nix
+++ b/nixpkgs/pkgs/tools/security/vault/vault-bin.nix
@@ -1,63 +1,61 @@
-{ lib, stdenv, fetchurl, unzip, makeWrapper, gawk, glibc }:
+{ lib, stdenv, fetchurl, unzip, makeWrapper, gawk, glibc, fetchzip }:
 
-let
-  version = "1.9.1";
-
-  sources = let
-    base = "https://releases.hashicorp.com/vault/${version}";
-  in {
-    x86_64-linux = fetchurl {
-      url = "${base}/vault_${version}_linux_amd64.zip";
-      sha256 = "sha256-kP1wLbkktVCTZopVaT0h/WKqAG3Pd9g7qeruk4MIWJM=";
-    };
-    i686-linux = fetchurl {
-      url = "${base}/vault_${version}_linux_386.zip";
-      sha256 = "sha256-cTZ/hek8wQo9FxIRQ/cc23h7Nqjfonvprf492/lSzLw=";
-    };
-    x86_64-darwin = fetchurl {
-      url = "${base}/vault_${version}_darwin_amd64.zip";
-      sha256 = "sha256-uKW9Yl4PjxWJ886OVAHl1sbPhgYWoL6IJK44vczLQsY=";
-    };
-    aarch64-darwin = fetchurl {
-      url = "${base}/vault_${version}_darwin_arm64.zip";
-      sha256 = "sha256-J0qwUBcnZRZU5TTQB3K8wNE6rdQC1Boy/gKNQRvUYEI=";
-    };
-    aarch64-linux = fetchurl {
-      url = "${base}/vault_${version}_linux_arm64.zip";
-      sha256 = "sha256-eU5s15tBuZFThJGNtnjOV07tiBoVjSSHMS9sY2WqO1o=";
-    };
-  };
-
-in stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "vault-bin";
-  inherit version;
-
-  src = sources.${stdenv.hostPlatform.system} or (throw "unsupported system: ${stdenv.hostPlatform.system}");
-
-  nativeBuildInputs = [ makeWrapper unzip ];
+  version = "1.10.0";
+
+  src =
+    let
+      inherit (stdenv.hostPlatform) system;
+      selectSystem = attrs: attrs.${system} or (throw "Unsupported system: ${system}");
+      suffix = selectSystem {
+        x86_64-linux = "linux_amd64";
+        aarch64-linux = "linux_arm64";
+        i686-linux = "linux_386";
+        x86_64-darwin = "darwin_amd64";
+        aarch64-darwin = "darwin_arm64";
+      };
+      sha256 = selectSystem {
+        x86_64-linux = "sha256-enD/JcOmeavvUd/njbu7IksAqp9dKepVdYPkLJHA8OQ=";
+        aarch64-linux = "sha256-FDkgUqFEVJoSED/FWqOXa4BTO6AYwkLS2iZh+BkzlqA=";
+        i686-linux = "sha256-XUTWB5Ynu92SMP9Nt/0jAki6til4upKv1sdFzPbWxiw=";
+        x86_64-darwin = "sha256-QNCsbIza56NqSU7R6+Cx//WBXiEOz6CEMCjrx4AR1x8=";
+        aarch64-darwin = "sha256-LBgd8gqeU92336kypSIwMtKo7I1qB/RP2dNoIGJgq7k=";
+      };
+    in
+    fetchzip {
+      url = "https://releases.hashicorp.com/vault/${version}/vault_${version}_${suffix}.zip";
+      inherit sha256;
+    };
 
-  sourceRoot = ".";
+  dontConfigure = true;
+  dontBuild = true;
+  dontStrip = stdenv.isDarwin;
 
   installPhase = ''
     runHook preInstall
-
-    mkdir -p $out/bin $out/share/bash-completion/completions
-    mv vault $out/bin
-    echo "complete -C $out/bin/vault vault" > $out/share/bash-completion/completions/vault
-  '' + lib.optionalString stdenv.isLinux ''
-    wrapProgram $out/bin/vault \
-      --prefix PATH : ${lib.makeBinPath [ gawk glibc ]}
-
+    install -D vault $out/bin/vault
     runHook postInstall
   '';
 
-  dontStrip = stdenv.isDarwin;
+  doInstallCheck = true;
+  installCheckPhase = ''
+    runHook preInstallCheck
+    $out/bin/vault --help
+    $out/bin/vault version
+    runHook postInstallCheck
+  '';
+
+  dontPatchELF = true;
+  dontPatchShebangs = true;
+
+  passthru.updateScript = ./update-bin.sh;
 
   meta = with lib; {
     homepage = "https://www.vaultproject.io";
     description = "A tool for managing secrets, this binary includes the UI";
     platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" "aarch64-darwin" "aarch64-linux" ];
     license = licenses.mpl20;
-    maintainers = with maintainers; teams.serokell.members ++ [ offline psyanticy Chili-Man ];
+    maintainers = with maintainers; teams.serokell.members ++ [ offline psyanticy Chili-Man techknowlogick ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/volatility3/default.nix b/nixpkgs/pkgs/tools/security/volatility3/default.nix
index 393ac90d3164..e019d96129f5 100644
--- a/nixpkgs/pkgs/tools/security/volatility3/default.nix
+++ b/nixpkgs/pkgs/tools/security/volatility3/default.nix
@@ -5,15 +5,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "volatility3";
-  version = "2.0.0";
-
-  disabled = python3.pythonOlder "3.6";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "volatilityfoundation";
     repo = pname;
     rev = "v${version}";
-    sha256 = "141n09cdc17pfdhs01aw8l4cvsqpcz8ji5l4gi7r88cyf4ix2lnz";
+    hash = "sha256-rEqp+V5r4Sk4D+r2ukR1uy4IDj9XQGhYwoYSPeMyKpA=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
@@ -31,7 +29,9 @@ python3.pkgs.buildPythonApplication rec {
   # Project has no tests
   doCheck = false;
 
-  pythonImportsCheck = [ "volatility3" ];
+  pythonImportsCheck = [
+    "volatility3"
+  ];
 
   meta = with lib; {
     description = "Volatile memory extraction frameworks";
diff --git a/nixpkgs/pkgs/tools/security/zdns/default.nix b/nixpkgs/pkgs/tools/security/zdns/default.nix
index 913735d4cb9f..354dd5b64475 100644
--- a/nixpkgs/pkgs/tools/security/zdns/default.nix
+++ b/nixpkgs/pkgs/tools/security/zdns/default.nix
@@ -5,19 +5,16 @@
 
 buildGoModule rec {
   pname = "zdns";
-  version = "20210327-${lib.strings.substring 0 7 rev}";
-  rev = "8c53210f0b9a4fe16c70a5d854e9413c3d0c1ba2";
+  version = "2022-03-14-unstable";
 
   src = fetchFromGitHub {
     owner = "zmap";
     repo = pname;
-    inherit rev;
-    sha256 = "0pdfz1489ynpw72flalnlkwybp683v826icjx7ljys45xvagdvck";
+    rev = "d659a361f6d5165462c10e1c1243f420175e066b";
+    hash = "sha256-856O6H03me3IM39/+6n56KJIetL+v4on6+lJx5D2Pcw=";
   };
 
-  vendorSha256 = "0b8h5n01xmhar1a09svb35ah48k9zdy1mn5balq0h2l0jxr05z78";
-
-  subPackages = [ "zdns" ];
+  vendorSha256 = "sha256-5kZ0voyicnqK/0yrMYW+gR1vVDyptW6I1HgyG4zleX8=";
 
   meta = with lib; {
     description = "CLI DNS lookup tool";
diff --git a/nixpkgs/pkgs/tools/system/ctop/default.nix b/nixpkgs/pkgs/tools/system/ctop/default.nix
index 36dfd02c33f6..6091eff255d8 100644
--- a/nixpkgs/pkgs/tools/system/ctop/default.nix
+++ b/nixpkgs/pkgs/tools/system/ctop/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "ctop";
-  version = "0.7.6";
+  version = "0.7.7";
 
   src = fetchFromGitHub {
     owner = "bcicen";
     repo = pname;
-    rev = version;
-    sha256 = "sha256-ceRyYrqmgdTnV8m9LkLlR6iTrC5F81X/V3fWI2CiKBw=";
+    rev = "v${version}";
+    sha256 = "sha256-tojSzgpoGQg6MwV/MVpQpCA5w6bZO+9IOvfkw0Ydr6c=";
   };
 
-  vendorSha256 = "sha256-UCeMy4iT0c2sTcCDPg0TIYCLYfrIUvHluUuGIpzluSg=";
+  vendorSha256 = "sha256-UAja7XuoLqJFNcK1PgHGcuf/HbvSrWyRvW2D3T7Hg0g=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/system/das_watchdog/default.nix b/nixpkgs/pkgs/tools/system/das_watchdog/default.nix
index 65be63bffe12..ec7eb2b173d0 100644
--- a/nixpkgs/pkgs/tools/system/das_watchdog/default.nix
+++ b/nixpkgs/pkgs/tools/system/das_watchdog/default.nix
@@ -1,13 +1,14 @@
-{ lib, stdenv, fetchgit, libgtop, xmessage, which, pkg-config }:
+{ lib, stdenv, fetchFromGitHub, libgtop, xmessage, which, pkg-config }:
 
 stdenv.mkDerivation {
   pname = "das_watchdog";
   version = "unstable-2015-09-12";
 
-  src = fetchgit {
-    url = "https://github.com/kmatheussen/das_watchdog.git";
+  src = fetchFromGitHub {
+    owner = "kmatheussen";
+    repo = "das_watchdog";
     rev = "5ac0db0b98e5b4e690aca0aa7fb6ec60ceddcb06";
-    sha256 = "02y1vfb3wh4908xjj1kpyf8kgxk29x8dw7yl3pnl220qz2gi99vr";
+    sha256 = "sha256-eacUn/gYCEHtHdQf3lBPYvY3kfN3Bik7AolAPpbbwQs=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/tools/system/evemu/default.nix b/nixpkgs/pkgs/tools/system/evemu/default.nix
index 61ef270df794..6cb349c546b9 100644
--- a/nixpkgs/pkgs/tools/system/evemu/default.nix
+++ b/nixpkgs/pkgs/tools/system/evemu/default.nix
@@ -23,7 +23,6 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Records and replays device descriptions and events to emulate input devices through the kernel's input system";
     homepage = "https://www.freedesktop.org/wiki/Evemu/";
-    repositories.git = "git://git.freedesktop.org/git/evemu";
     license = with licenses; [ lgpl3Only gpl3Only ];
     maintainers = [ maintainers.amorsillo ];
     platforms = platforms.linux;
diff --git a/nixpkgs/pkgs/tools/system/gohai/default.nix b/nixpkgs/pkgs/tools/system/gohai/default.nix
index 48c68f8d2f2c..a4b07f112ae3 100644
--- a/nixpkgs/pkgs/tools/system/gohai/default.nix
+++ b/nixpkgs/pkgs/tools/system/gohai/default.nix
@@ -21,7 +21,6 @@ buildGoPackage rec {
     license          = licenses.mit;
     maintainers      = [ maintainers.tazjin ];
     platforms        = platforms.unix;
-    repositories.git = "git://github.com/DataDog/gohai.git";
 
     longDescription = ''
       Gohai is a tool which collects an inventory of system
diff --git a/nixpkgs/pkgs/tools/system/goreman/default.nix b/nixpkgs/pkgs/tools/system/goreman/default.nix
index 9613ab8d6504..8257e930779d 100644
--- a/nixpkgs/pkgs/tools/system/goreman/default.nix
+++ b/nixpkgs/pkgs/tools/system/goreman/default.nix
@@ -2,14 +2,14 @@
 
 buildGoModule rec {
   pname = "goreman";
-  version = "0.3.9";
-  rev = "df1209e7cdbad10aecc0aa75d332bc32822925f5";
+  version = "0.3.11";
+  rev = "6006c6e410ec5a5ba22b50e96227754a42f2834d";
 
   src = fetchFromGitHub {
     owner = "mattn";
     repo = "goreman";
     rev = "v${version}";
-    sha256 = "1irjf5i5ybdchyn42bamfq8pj3w00p633h1gg202n0vsr39h0bxw";
+    sha256 = "sha256-TbJfeU94wakI2028kDqU+7dRRmqXuqpPeL4XBaA/HPo=";
   };
 
   ldflags = [
@@ -18,7 +18,7 @@ buildGoModule rec {
     "-X main.revision=${builtins.substring 0 7 rev}"
   ];
 
-  vendorSha256 = "sha256-+RFh6Ppxxs7P7DWqOBeEJTvPsBgOfopMjx22hPEI1/U=";
+  vendorSha256 = "sha256-87aHBRWm5Odv6LeshZty5N31sC+vdSwGlTYhk3BZkPo=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/system/hardlink/default.nix b/nixpkgs/pkgs/tools/system/hardlink/default.nix
index a790c600a9d3..a82318648495 100644
--- a/nixpkgs/pkgs/tools/system/hardlink/default.nix
+++ b/nixpkgs/pkgs/tools/system/hardlink/default.nix
@@ -26,7 +26,6 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "Consolidate duplicate files via hardlinks";
     homepage = "https://pagure.io/hardlink";
-    repositories.git = "https://src.fedoraproject.org/cgit/rpms/hardlink.git";
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
   };
diff --git a/nixpkgs/pkgs/tools/system/hostctl/default.nix b/nixpkgs/pkgs/tools/system/hostctl/default.nix
index fb3a293a80fd..bf3a25118581 100644
--- a/nixpkgs/pkgs/tools/system/hostctl/default.nix
+++ b/nixpkgs/pkgs/tools/system/hostctl/default.nix
@@ -1,21 +1,32 @@
-{ buildGoModule, fetchFromGitHub, lib, installShellFiles }:
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, installShellFiles
+}:
 
 buildGoModule rec {
   pname = "hostctl";
-  version = "1.1.1";
+  version = "1.1.2";
 
   src = fetchFromGitHub {
     owner = "guumaster";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-VjFjGvIoymGVVRiZUk/qoq/PTYoklp+Jz89zndX0e5A=";
+    hash = "sha256-rvUm31WRSLusM9VGsIHKGTH6Vs8LWPtzPDs3azA710w=";
   };
 
   vendorSha256 = "sha256-rGDWrivIdl5FTu/kNR8nAfE2+1hE4cm3uDg7oBobE9M=";
 
-  ldflags = [ "-s" "-w" "-X github.com/guumaster/hostctl/cmd/hostctl/actions.version=${version}" ];
+  nativeBuildInputs = [
+    installShellFiles
+  ];
+
+  ldflags = [
+    "-s"
+    "-w"
+    "-X github.com/guumaster/hostctl/cmd/hostctl/actions.version=${version}"
+  ];
 
-  nativeBuildInputs = [ installShellFiles ];
   postInstall = ''
     installShellCompletion --cmd hostctl \
       --bash <($out/bin/hostctl completion bash) \
@@ -23,7 +34,7 @@ buildGoModule rec {
   '';
 
   meta = with lib; {
-    description = "Your dev tool to manage /etc/hosts like a pro!";
+    description = "CLI tool to manage the /etc/hosts file";
     longDescription = ''
       This tool gives you more control over the use of your hosts file.
       You can have multiple profiles and switch them on/off as you need.
diff --git a/nixpkgs/pkgs/tools/system/monit/default.nix b/nixpkgs/pkgs/tools/system/monit/default.nix
index 0f116c046184..93fc74f0554d 100644
--- a/nixpkgs/pkgs/tools/system/monit/default.nix
+++ b/nixpkgs/pkgs/tools/system/monit/default.nix
@@ -12,11 +12,11 @@
 
 stdenv.mkDerivation rec {
   pname = "monit";
-  version = "5.31.0";
+  version = "5.32.0";
 
   src = fetchurl {
-    url = "${meta.homepage}dist/monit-${version}.tar.gz";
-    sha256 = "sha256-6ucfKJQftmPux0waWbaVRsZZUpeWVQvZwMVE6bUqwFU=";
+    url = "https://mmonit.com/monit/dist/monit-${version}.tar.gz";
+    sha256 = "sha256-EHcFLUxOhIrEfRT5s3dU1GQZrsvoyaB+H4ackU+vMhY=";
   };
 
   nativeBuildInputs = [ bison flex ];
diff --git a/nixpkgs/pkgs/tools/system/mq-cli/default.nix b/nixpkgs/pkgs/tools/system/mq-cli/default.nix
index 2c1baa24f6fa..cdbff1921a79 100644
--- a/nixpkgs/pkgs/tools/system/mq-cli/default.nix
+++ b/nixpkgs/pkgs/tools/system/mq-cli/default.nix
@@ -19,6 +19,5 @@ rustPlatform.buildRustPackage rec {
     license          = licenses.mit;
     maintainers      = with maintainers; [ tazjin ];
     platforms        = platforms.linux;
-    repositories.git = "git://github.com/aprilabank/mq-cli.git";
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/nats-top/default.nix b/nixpkgs/pkgs/tools/system/nats-top/default.nix
index f2be03d4301c..651a9635fb45 100644
--- a/nixpkgs/pkgs/tools/system/nats-top/default.nix
+++ b/nixpkgs/pkgs/tools/system/nats-top/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "nats-top";
-  version = "0.4.0";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "nats-io";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0b1hpnq8m1xfrn58ammmnx6lmhk319m8z4xjxgckz7wvy2fbzw0n";
+    sha256 = "sha256-IZQDwopFAXPT0V+TTiJk6+j/KhLTA3g4kN1j1PVlNt0=";
   };
 
-  vendorSha256 = "1a48p9gx5zdc340ma6cqakhi6f3lw9b0kz2597j1jcsk2qb7s581";
+  vendorSha256 = "sha256-cBCR/OXUOa+Lh8UvL/VraDAW0hGGwV7teyvdswZQ5Lo=";
 
   meta = with lib; {
     description = "top-like tool for monitoring NATS servers";
diff --git a/nixpkgs/pkgs/tools/system/syslog-ng/default.nix b/nixpkgs/pkgs/tools/system/syslog-ng/default.nix
index 5d7fd2b1b6df..6948728f16b9 100644
--- a/nixpkgs/pkgs/tools/system/syslog-ng/default.nix
+++ b/nixpkgs/pkgs/tools/system/syslog-ng/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "syslog-ng";
-  version = "3.35.1";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "https://github.com/${pname}/${pname}/releases/download/${pname}-${version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-HQI4sGs+WYfIWeW1Kezuc491us/wSxSTmLH+jLsSHlM=";
+    sha256 = "sha256-kKJcl2f+dJ21DxGN38kuxxOZdj0uzVrU8R/17qBJ5gs=";
   };
 
   nativeBuildInputs = [ pkg-config which ];
diff --git a/nixpkgs/pkgs/tools/system/thermald/default.nix b/nixpkgs/pkgs/tools/system/thermald/default.nix
index f2fae161daa8..96fa0c19df3e 100644
--- a/nixpkgs/pkgs/tools/system/thermald/default.nix
+++ b/nixpkgs/pkgs/tools/system/thermald/default.nix
@@ -18,7 +18,7 @@
 
 stdenv.mkDerivation rec {
   pname = "thermald";
-  version = "2.4.8";
+  version = "2.4.9";
 
   outputs = [ "out" "devdoc" ];
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     owner = "intel";
     repo = "thermal_daemon";
     rev = "v${version}";
-    sha256 = "sha256-Mup88vNS0iApwsZTdPnpXmkA0LNpSOzxBmbejcWIC+0=";
+    sha256 = "sha256-82O4vrUo3lMNzGOI5WyV1eponF0za0WM6mtd54xqUh8=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/text/codesearch/default.nix b/nixpkgs/pkgs/tools/text/codesearch/default.nix
index 9c3e9fbd8409..40ee8c58fbcc 100644
--- a/nixpkgs/pkgs/tools/text/codesearch/default.nix
+++ b/nixpkgs/pkgs/tools/text/codesearch/default.nix
@@ -1,24 +1,22 @@
-# This file was generated by go2nix.
-{ lib, buildGoPackage, fetchgit }:
+{ lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "codesearch";
-  version = "20150717-${lib.strings.substring 0 7 rev}";
-  rev = "a45d81b686e85d01f2838439deaf72126ccd5a96";
+  version = "1.0.0";
 
   goPackagePath = "github.com/google/codesearch";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/google/codesearch";
-    sha256 = "12bv3yz0l3bmsxbasfgv7scm9j719ch6pmlspv4bd4ix7wjpyhny";
+  src = fetchFromGitHub {
+    owner = "google";
+    repo = "codesearch";
+    rev = "v${version}";
+    sha256 = "sha256-3kJ/JT89krbIvprWayBL4chUmT77Oa1W13UNCr4fe4k=";
   };
 
-  meta = {
+  meta = with lib; {
     description = "Fast, indexed regexp search over large file trees";
     homepage = "https://github.com/google/codesearch";
-    license = [ lib.licenses.bsd3 ];
-    maintainers = [ lib.maintainers.bennofs ];
-    platforms = lib.platforms.unix;
+    license = [ licenses.bsd3 ];
+    maintainers = with maintainers; [ bennofs ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/text/difftastic/default.nix b/nixpkgs/pkgs/tools/text/difftastic/default.nix
index 729a0900f851..981c5f0e9312 100644
--- a/nixpkgs/pkgs/tools/text/difftastic/default.nix
+++ b/nixpkgs/pkgs/tools/text/difftastic/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "difftastic";
-  version = "0.19.0";
+  version = "0.23.0";
 
   src = fetchFromGitHub {
     owner = "wilfred";
     repo = pname;
     rev = version;
-    sha256 = "sha256-pZyQnPIdyS8XkzP9KwGKRjF21YWGgCVNeQSie9g5NcE=";
+    sha256 = "sha256-y1rwuZlkrxO1iOSN2o8pIewbNENs0xsntzLEZgfUgZ4=";
   };
 
-  cargoSha256 = "sha256-VXbCrhoGF6bCzQ02Y1LQkbEVrmIfDIKFWF9vx43tt94=";
+  cargoSha256 = "sha256-mH6pkfWc8xXLXV/07LQ1jgk9hgt8WcIGdaNPpk7deLQ=";
 
   meta = with lib; {
     description = "A syntax-aware diff";
diff --git a/nixpkgs/pkgs/tools/text/gnused/422.nix b/nixpkgs/pkgs/tools/text/gnused/422.nix
deleted file mode 100644
index 15e57e319019..000000000000
--- a/nixpkgs/pkgs/tools/text/gnused/422.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib, stdenv, fetchurl }:
-
-stdenv.mkDerivation rec {
-  pname = "gnused";
-  version = "4.2.2";
-
-  src = fetchurl {
-    url = "mirror://gnu/sed/sed-${version}.tar.bz2";
-    sha256 = "f048d1838da284c8bc9753e4506b85a1e0cc1ea8999d36f6995bcb9460cddbd7";
-  };
-
-  configureFlags = lib.optional stdenv.hostPlatform.isMinGW "ac_cv_func__set_invalid_parameter_handler=no";
-
-  outputs = [ "out" "info" ];
-
-  meta = {
-    homepage = "https://www.gnu.org/software/sed/";
-    description = "GNU sed, a batch stream editor";
-
-    longDescription = ''
-      Sed (stream editor) isn't really a true text editor or text
-      processor.  Instead, it is used to filter text, i.e., it takes
-      text input and performs some operation (or set of operations) on
-      it and outputs the modified text.  Sed is typically used for
-      extracting part of a file using pattern matching or substituting
-      multiple occurrences of a string within a file.
-    '';
-
-    license = lib.licenses.gpl3Plus;
-
-    platforms = lib.platforms.all;
-    maintainers = [ ];
-    mainProgram = "sed";
-  };
-}
diff --git a/nixpkgs/pkgs/tools/text/gtranslator/default.nix b/nixpkgs/pkgs/tools/text/gtranslator/default.nix
index 5bc99724e3fa..d5e7922831ea 100644
--- a/nixpkgs/pkgs/tools/text/gtranslator/default.nix
+++ b/nixpkgs/pkgs/tools/text/gtranslator/default.nix
@@ -1,5 +1,7 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
+, fetchpatch
 , meson
 , ninja
 , pkg-config
@@ -8,7 +10,7 @@
 , python3
 , wrapGAppsHook
 , libxml2
-, libgda
+, libgda6
 , libhandy
 , libsoup
 , json-glib
@@ -23,13 +25,22 @@
 
 stdenv.mkDerivation rec {
   pname = "gtranslator";
-  version = "40.0";
+  version = "41.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "0d48nc11z0m91scy21ah56ysxns82zvswx8lglvlkig1vqvblgpc";
+    sha256 = "E28R/gOhlJkMQ6/jOL0eoK0U5+H26Gjlv3xbUsTF5eE=";
   };
 
+  patches = [
+    # Fix build with meson 0.61
+    # data/meson.build:15:5: ERROR: Function does not take positional arguments.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gtranslator/-/commit/7ac572cc8c8c37ca3826ecf0d395edd3c38e8e22.patch";
+      sha256 = "aRg6dYweftV8F7FXykO7m0G+p4SLTFnhTcZx72UCMDE=";
+    })
+  ];
+
   nativeBuildInputs = [
     meson
     ninja
@@ -46,7 +57,7 @@ stdenv.mkDerivation rec {
     gtk3
     libdazzle
     gtksourceview4
-    libgda
+    libgda6
     libhandy
     libsoup
     json-glib
diff --git a/nixpkgs/pkgs/tools/text/justify/default.nix b/nixpkgs/pkgs/tools/text/justify/default.nix
new file mode 100644
index 000000000000..1e18e22db8e2
--- /dev/null
+++ b/nixpkgs/pkgs/tools/text/justify/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, stdenv
+, fetchFromGitea
+, cmake
+}:
+
+stdenv.mkDerivation rec {
+  pname = "justify";
+  version = "unstable-2022-03-19";
+
+  src = fetchFromGitea {
+    domain = "tildegit.org";
+    owner = "jns";
+    repo = "justify";
+    rev = "0d397c20ed921c8e091bf18e548d174e15810e62";
+    sha256 = "sha256-406OhJt2Ila/LIhfqJXhbFqFxJJiRyMVI4/VK8Y43kc=";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  installPhase = ''
+    install -D justify $out/bin/justify
+  '';
+
+  meta = with lib; {
+    homepage = "https://tildegit.org/jns/justify";
+    description = "Simple text alignment tool that supports left/right/center/fill justify alignment";
+    license = licenses.gpl3Only;
+    platforms = platforms.unix;
+    mainProgram = "justify";
+    maintainers = with maintainers; [ xfnw ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/text/mdbook-pdf/default.nix b/nixpkgs/pkgs/tools/text/mdbook-pdf/default.nix
new file mode 100644
index 000000000000..8c21f50b1d7e
--- /dev/null
+++ b/nixpkgs/pkgs/tools/text/mdbook-pdf/default.nix
@@ -0,0 +1,28 @@
+{ lib, stdenv, fetchCrate, rustPlatform, pkg-config, openssl, CoreServices }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "mdbook-pdf";
+  version = "0.1.2";
+
+  src = fetchCrate {
+    inherit pname version;
+    sha256 = "1ibmn8x9kyfd058hsyah2ggyzpahzf2w2qjn6rs9qv8mr3bvc0pv";
+  };
+
+  cargoSha256 = "0k47a5yqnjjc599vgk39ijy6fm62rr8xarvz37g0c7fx9cljhihz";
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ openssl ]
+    ++ lib.optionals stdenv.isDarwin [ CoreServices ];
+
+  # No test.
+  doCheck = false;
+
+  meta = with lib; {
+    description = "A backend for mdBook written in Rust for generating PDF";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ hollowman6 ];
+    homepage = "https://github.com/HollowMan6/mdbook-pdf";
+  };
+}
diff --git a/nixpkgs/pkgs/tools/text/miller/default.nix b/nixpkgs/pkgs/tools/text/miller/default.nix
index f64f195db951..932b670c7494 100644
--- a/nixpkgs/pkgs/tools/text/miller/default.nix
+++ b/nixpkgs/pkgs/tools/text/miller/default.nix
@@ -1,22 +1,29 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, flex, libtool }:
+{ lib, fetchFromGitHub, buildGoModule }:
 
-stdenv.mkDerivation rec {
+buildGoModule rec {
   pname = "miller";
-
-  version = "5.10.3";
+  version = "6.2.0";
 
   src = fetchFromGitHub {
     owner = "johnkerl";
     repo = "miller";
-    rev = "v${version}";
-    sha256 = "sha256-Mag7bIfZNdp+sM54yKp8HdH3kWjwWRfyPBGthej2jd8=";
+    # NOTE: The tag v6.2.0 has still old version number, as reported by
+    #       `mlr --version`. This is the current head of the 6.2.0 branch, with
+    #       the correct version number.
+    #
+    #       For future releases please check if we can use
+    #       `rev = "v${version}"` again.
+    rev = "a6dc231eefc209eb66b50b0773542c2e63501bba";
+    sha256 = "sha256-hMWcf43o1wiVjHsgH+ZDBny5vlZQkKyoJN5np4gUy4w=";
   };
 
-  nativeBuildInputs = [ autoreconfHook flex libtool ];
+  vendorSha256 = "sha256-2tl/twzkvWB1lnvi3fIptM77zi0lmAn7Pzoe0/lW6o4=";
+
+  subPackages = [ "cmd/mlr" ];
 
   meta = with lib; {
-    description = "Like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON";
-    homepage    = "http://johnkerl.org/miller/";
+    description = "Like awk, sed, cut, join, and sort for data formats such as CSV, TSV, JSON, JSON Lines, and positionally-indexed";
+    homepage    = "https://github.com/johnkerl/miller";
     license     = licenses.bsd2;
     maintainers = with maintainers; [ mstarzyk ];
     platforms   = platforms.all;
diff --git a/nixpkgs/pkgs/tools/text/mmdoc/default.nix b/nixpkgs/pkgs/tools/text/mmdoc/default.nix
new file mode 100644
index 000000000000..e30020d15d9b
--- /dev/null
+++ b/nixpkgs/pkgs/tools/text/mmdoc/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmark-gfm
+, xxd
+, fastJson
+, libzip
+, ninja
+, meson
+, pkg-config
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mmdoc";
+  version = "0.9.1";
+
+  src = fetchFromGitHub {
+    owner = "ryantm";
+    repo = "mmdoc";
+    rev = version;
+    hash = "sha256-Lz2+vsXjz9BVOCI1vIrNTvZgh19OuvXEhnMw2QBZr1w=";
+  };
+
+  nativeBuildInputs = [ ninja meson pkg-config xxd ];
+
+  buildInputs = [ cmark-gfm fastJson libzip ];
+
+  doCheck = stdenv.isx86_64;
+
+  meta = with lib; {
+    description = "Minimal Markdown Documentation";
+    homepage = "https://github.com/ryantm/mmdoc";
+    license = licenses.cc0;
+    maintainers = with maintainers; [ ryantm ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/text/snippetpixie/default.nix b/nixpkgs/pkgs/tools/text/snippetpixie/default.nix
index 7102977e8eee..a83135b5024d 100644
--- a/nixpkgs/pkgs/tools/text/snippetpixie/default.nix
+++ b/nixpkgs/pkgs/tools/text/snippetpixie/default.nix
@@ -56,8 +56,6 @@ stdenv.mkDerivation rec {
     json-glib
     xorg.libXtst
     pantheon.granite
-    pantheon.elementary-gtk-theme
-    pantheon.elementary-icon-theme
   ];
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/tools/text/tab/default.nix b/nixpkgs/pkgs/tools/text/tab/default.nix
index 096e0b04c695..18d3e3d004ad 100644
--- a/nixpkgs/pkgs/tools/text/tab/default.nix
+++ b/nixpkgs/pkgs/tools/text/tab/default.nix
@@ -1,14 +1,14 @@
-{ lib, stdenv, fetchFromBitbucket, python3 }:
+{ lib, stdenv, fetchFromGitHub, python3 }:
 
 stdenv.mkDerivation rec {
-  version = "8.0";
+  version = "9.0";
   pname = "tab";
 
-  src = fetchFromBitbucket {
-    owner = "tkatchev";
+  src = fetchFromGitHub {
+    owner = "ivan-tkatchev";
     repo = pname;
     rev = version;
-    sha256 = "sha256-RcDvghTiqIdH79khwDIo8PhvmcObmix8WBrHToLwcw4=";
+    sha256 = "sha256-2keVGPRYV2KCeJ+LgAcl74cjW5wvp6Rmy7VNMtdliBE=";
   };
 
   checkInputs = [ python3 ];
diff --git a/nixpkgs/pkgs/tools/text/ugrep/default.nix b/nixpkgs/pkgs/tools/text/ugrep/default.nix
index 8fc299fa6c00..7a921bdd11f5 100644
--- a/nixpkgs/pkgs/tools/text/ugrep/default.nix
+++ b/nixpkgs/pkgs/tools/text/ugrep/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ugrep";
-  version = "3.7.1";
+  version = "3.7.6";
 
   src = fetchFromGitHub {
     owner = "Genivia";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-5ZlZ/nCUOiyOWagF1Vla945d7zKbMsHp56ZE4HwdEP4=";
+    sha256 = "sha256-fOp+nf/xZKOw8CDI1RSl/DQH52ay/M/aeSMf6MdfKmQ=";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/tools/text/vale/default.nix b/nixpkgs/pkgs/tools/text/vale/default.nix
index 91ac9ae2e121..9ecd7f44cfa8 100644
--- a/nixpkgs/pkgs/tools/text/vale/default.nix
+++ b/nixpkgs/pkgs/tools/text/vale/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "vale";
-  version = "2.15.2";
+  version = "2.15.3";
 
   subPackages = [ "cmd/vale" ];
   outputs = [ "out" "data" ];
@@ -11,10 +11,10 @@ buildGoModule rec {
     owner = "errata-ai";
     repo = "vale";
     rev = "v${version}";
-    sha256 = "sha256-4KP4/mfuHTYxOwWqHOa2RNHgElOg6YNAEFmiuF/sHa8=";
+    sha256 = "sha256-vhsn72xCe1wC4YRdo2m49iUj/3nVl0cyfeSmWRfESaY=";
   };
 
-  vendorSha256 = "sha256-2vYe943HHybOLcP8nDJe7RimMRIJdND2UPwtwB2mttE=";
+  vendorSha256 = "sha256-/0H35PGFFPch4jDnQ/ggctyHZJ5W/C1PNlkT5zzvI3M=";
 
   postInstall = ''
     mkdir -p $data/share/vale
diff --git a/nixpkgs/pkgs/tools/typesetting/biblatex-check/default.nix b/nixpkgs/pkgs/tools/typesetting/biblatex-check/default.nix
index 63bf7cf1d71a..c929d5901502 100644
--- a/nixpkgs/pkgs/tools/typesetting/biblatex-check/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/biblatex-check/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub, python3 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "biblatex-check";
-  version = "2019-11-09";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "Pezmc";
     repo = "BibLatex-Check";
-    rev = "2db50bf94d1480f37edf1b3619e73baf4ef85938";
-    sha256 = "1bq0yqckhssazwkivipdjmn1jpsf301i4ppyl88qhc5igx39wg25";
+    rev = "v${version}";
+    sha256 = "sha256-Pe6Ume7vH8WJG2EqOw31g3VYilfFsDBmNHtHcUXxqf0=";
   };
 
   buildInputs = [ python3 ];
diff --git a/nixpkgs/pkgs/tools/typesetting/lowdown/default.nix b/nixpkgs/pkgs/tools/typesetting/lowdown/default.nix
index 1cb9c8d40177..88e3a9720d04 100644
--- a/nixpkgs/pkgs/tools/typesetting/lowdown/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/lowdown/default.nix
@@ -1,16 +1,26 @@
-{ lib, stdenv, fetchurl, fixDarwinDylibNames, which }:
+{ lib, stdenv, fetchurl, fixDarwinDylibNames, which
+, enableShared ? !(stdenv.hostPlatform.isStatic)
+, enableStatic ? stdenv.hostPlatform.isStatic
+}:
 
 stdenv.mkDerivation rec {
   pname = "lowdown";
-  version = "0.10.0";
+  version = "0.11.1";
 
   outputs = [ "out" "lib" "dev" "man" ];
 
   src = fetchurl {
     url = "https://kristaps.bsd.lv/lowdown/snapshots/lowdown-${version}.tar.gz";
-    sha512 = "3gq6awxvkz2hb8xzcwqhdhdqgspvqjfzm50bq9i29qy2iisq9vzb91bdp3f4q2sqcmk3gms44xyxyn3ih2hwlzsnk0f5prjzyg97fjj";
+    sha512 = "1l0055g8v0dygyxvk5rchp4sn1g2lakbf6hhq0wkj6nxkfpl43mkyc4vpb02r7v6iqfdwq4461dmdi78blsb3nj8b1gcjx75v7x9pa1";
   };
 
+  # Upstream always passes GNU-style "soname", but cctools expects "install_name".
+  # Whatever name is inserted will be replaced by fixDarwinDylibNames.
+  # https://github.com/kristapsdz/lowdown/issues/87
+  postPatch = lib.optionalString stdenv.isDarwin ''
+    substituteInPlace Makefile --replace soname install_name
+  '';
+
   nativeBuildInputs = [ which ]
     ++ lib.optionals stdenv.isDarwin [ fixDarwinDylibNames ];
 
@@ -27,12 +37,30 @@ stdenv.mkDerivation rec {
     runHook postConfigure
   '';
 
+  makeFlags = [
+    "bins" # prevents shared object from being built unnecessarily
+  ];
+
+  installTargets = [
+    "install"
+  ] ++ lib.optionals enableShared [
+    "install_shared"
+  ] ++ lib.optionals enableStatic [
+    "install_static"
+  ];
+
   # Fix lib extension so that fixDarwinDylibNames detects it
-  postInstall = lib.optionalString stdenv.isDarwin ''
-    mv $lib/lib/liblowdown.{so,dylib}
-  '';
+  # Symlink liblowdown.so to liblowdown.so.1 (or equivalent)
+  postInstall =
+    let
+      inherit (stdenv.hostPlatform.extensions) sharedLibrary;
+    in
 
-  patches = lib.optional (!stdenv.hostPlatform.isStatic) ./shared.patch;
+    lib.optionalString (enableShared && stdenv.isDarwin) ''
+      mv $lib/lib/liblowdown.{so.1,1.dylib}
+    '' + lib.optionalString enableShared ''
+      ln -s $lib/lib/liblowdown*${sharedLibrary}* $lib/lib/liblowdown${sharedLibrary}
+    '';
 
   doInstallCheck = stdenv.hostPlatform == stdenv.buildPlatform;
   installCheckPhase = ''
diff --git a/nixpkgs/pkgs/tools/typesetting/lowdown/shared.patch b/nixpkgs/pkgs/tools/typesetting/lowdown/shared.patch
deleted file mode 100644
index 75ee03da9700..000000000000
--- a/nixpkgs/pkgs/tools/typesetting/lowdown/shared.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-diff --git a/Makefile b/Makefile
-index 955f737..2c9532c 100644
---- a/Makefile
-+++ b/Makefile
-@@ -80,7 +80,7 @@ REGRESS_ARGS	+= "--parse-no-autolink"
- REGRESS_ARGS	+= "--parse-no-cmark"
- REGRESS_ARGS	+= "--parse-no-deflists"
- 
--all: lowdown lowdown-diff lowdown.pc
-+all: lowdown lowdown-diff liblowdown.so lowdown.pc
- 
- www: $(HTMLS) $(PDFS) $(THUMBS) lowdown.tar.gz lowdown.tar.gz.sha512
- 
-@@ -101,6 +101,10 @@ lowdown-diff: lowdown
- liblowdown.a: $(OBJS) $(COMPAT_OBJS)
- 	$(AR) rs $@ $(OBJS) $(COMPAT_OBJS)
- 
-+%.o: CFLAGS += -fPIC
-+liblowdown.so: $(OBJS) $(COMPAT_OBJS)
-+	$(CC) -shared -o $@ $(OBJS) $(COMPAT_OBJS) $(LDFLAGS)
-+
- install: all
- 	mkdir -p $(DESTDIR)$(BINDIR)
- 	mkdir -p $(DESTDIR)$(LIBDIR)/pkgconfig
-@@ -111,7 +114,7 @@ install: all
- 	$(INSTALL_DATA) lowdown.pc $(DESTDIR)$(LIBDIR)/pkgconfig
- 	$(INSTALL_PROGRAM) lowdown $(DESTDIR)$(BINDIR)
- 	$(INSTALL_PROGRAM) lowdown-diff $(DESTDIR)$(BINDIR)
--	$(INSTALL_LIB) liblowdown.a $(DESTDIR)$(LIBDIR)
-+	$(INSTALL_LIB) liblowdown.so $(DESTDIR)$(LIBDIR)
- 	$(INSTALL_DATA) lowdown.h $(DESTDIR)$(INCLUDEDIR)
- 	for f in $(MANS) ; do \
- 		name=`basename $$f .html` ; \
-@@ -199,7 +202,7 @@ main.o: lowdown.h
- 
- clean:
- 	rm -f $(OBJS) $(COMPAT_OBJS) main.o
--	rm -f lowdown lowdown-diff liblowdown.a lowdown.pc
-+	rm -f lowdown lowdown-diff liblowdown.so lowdown.pc
- 	rm -f index.xml diff.xml diff.diff.xml README.xml lowdown.tar.gz.sha512 lowdown.tar.gz
- 	rm -f $(PDFS) $(HTMLS) $(THUMBS)
- 
diff --git a/nixpkgs/pkgs/tools/typesetting/odpdown/default.nix b/nixpkgs/pkgs/tools/typesetting/odpdown/default.nix
index 252167fcea97..27053e36ffa1 100644
--- a/nixpkgs/pkgs/tools/typesetting/odpdown/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/odpdown/default.nix
@@ -20,7 +20,6 @@ python2Packages.buildPythonApplication rec {
 
   meta = with lib; {
     homepage = "https://github.com/thorstenb/odpdown";
-    repositories.git = "https://github.com/thorstenb/odpdown.git";
     description = "Create nice-looking slides from your favourite text editor";
     longDescription = ''
       Have a tool like pandoc, latex beamer etc, that you can write (or
diff --git a/nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix b/nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix
index 33f8481bc1a0..6921c64d85fa 100644
--- a/nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/pdf2djvu/default.nix
@@ -16,22 +16,37 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.9.17.1";
+  version = "0.9.18.2";
   pname = "pdf2djvu";
 
   src = fetchFromGitHub {
     owner = "jwilk";
     repo = "pdf2djvu";
     rev = version;
-    sha256 = "1igabfy3fd7qndihmkfk9incc15pjxpxh2cn5pfw5fxfwrpjrarn";
+    sha256 = "s6n7nDO15DZSJ1EOPoNvjdFv/QtOoGiUa2b/k3kzWe8=";
   };
 
   patches = [
-    # Not included in 0.9.17.1, but will be in the next version.
+    # Fix build with Poppler 22.03.
     (fetchpatch {
-      name = "no-poppler-splash.patch";
-      url = "https://github.com/jwilk/pdf2djvu/commit/2ec7eee57a47bbfd296badaa03dc20bf71b50201.patch";
-      sha256 = "03kap7k2j29r16qgl781cxpswzg3r2yn513cqycgl0vax2xj3gly";
+      url = "https://github.com/jwilk/pdf2djvu/commit/e170ad557d5f13daeeac047dfaa79347bbe5062f.patch";
+      sha256 = "OPK2UWVs+E2uOEaxPtLWmVL28yCxaeJKscY9ziAbS7E=";
+    })
+    (fetchpatch {
+      url = "https://github.com/jwilk/pdf2djvu/commit/956fedc7e0831126b9006efedad5519c14201c52.patch";
+      sha256 = "JF1xvvL2WyMu6GjdrPLlRC6eC6vGLbVurQcNy3AOOXA=";
+    })
+    (fetchpatch {
+      url = "https://github.com/jwilk/pdf2djvu/commit/dca43e8182174bc04e107eaefcafcfdfdf9bcd61.patch";
+      sha256 = "0JcfDaVZpuv6VfUJ2HuxRqgntZ/t8AzU0RG/E83BWGY=";
+    })
+    (fetchpatch {
+      url = "https://github.com/jwilk/pdf2djvu/commit/81b635e014ebd0240a8719cc39b6a1b759cc6a98.patch";
+      sha256 = "LBmT4eflLd23X7gg7IbqGe3PfTGldEGFLEKImV4nbB0=";
+      postFetch = ''
+        # The file was renamed after the release.
+        sed -i "s/main.cc/pdf2djvu.cc/g" "$out"
+      '';
     })
   ];
 
@@ -62,6 +77,10 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  # Required by Poppler
+  # https://github.com/jwilk/pdf2djvu/commit/373e065faf2f0d868a3700788d20a96e9528bb12
+  CXXFLAGS = "-std=c++17";
+
   meta = with lib; {
     description = "Creates djvu files from PDF files";
     homepage = "https://jwilk.net/software/pdf2djvu";
diff --git a/nixpkgs/pkgs/tools/video/vnc2flv/default.nix b/nixpkgs/pkgs/tools/video/vnc2flv/default.nix
deleted file mode 100644
index f32078f0b8a0..000000000000
--- a/nixpkgs/pkgs/tools/video/vnc2flv/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ lib, fetchurl, python2Packages }:
-
-python2Packages.buildPythonApplication rec {
-  pname = "vnc2flv";
-  version = "20100207";
-
-  src = fetchurl {
-    url = "mirror://pypi/v/vnc2flv/${pname}-${version}.tar.gz";
-    sha256 = "14d4nm8yim0bm0nd3wyj7z4zdsg5zk3d9bhhvwdc36x03r8d0sbq";
-  };
-
-  # error: invalid command 'test'
-  doCheck = false;
-
-  meta = {
-    description = "Tool to record VNC sessions to Flash Video";
-    homepage = "https://www.unixuser.org/~euske/python/vnc2flv/";
-    license = lib.licenses.mit;
-  };
-}
diff --git a/nixpkgs/pkgs/tools/virtualization/awsebcli/default.nix b/nixpkgs/pkgs/tools/virtualization/awsebcli/default.nix
index 734ba58e693c..8230768e997a 100644
--- a/nixpkgs/pkgs/tools/virtualization/awsebcli/default.nix
+++ b/nixpkgs/pkgs/tools/virtualization/awsebcli/default.nix
@@ -29,6 +29,7 @@ let
         requests = changeVersionHash super.requests.overridePythonAttrs "2.26.0" "sha256-uKpY+M95P/2HgtPYyxnmbvNverpDU+7IWedGeLAbB6c=";
         six = changeVersion super.six.overridePythonAttrs "1.14.0" "02lw67hprv57hyg3cfy02y3ixjk3nzwc0dx3c4ynlvkfwkfdnsr3";
         wcwidth = changeVersion super.wcwidth.overridePythonAttrs "0.1.9" "1wf5ycjx8s066rdvr0fgz4xds9a8zhs91c4jzxvvymm1c8l8cwzf";
+        semantic-version = changeVersion super.semantic-version.overridePythonAttrs "2.8.5" "d2cb2de0558762934679b9a104e82eca7af448c9f4974d1f3eeccff651df8a54";
         pyyaml = super.pyyaml.overridePythonAttrs (oldAttrs: rec {
           version = "5.4.1";
           checkPhase = ''
diff --git a/nixpkgs/pkgs/tools/virtualization/linode-cli/default.nix b/nixpkgs/pkgs/tools/virtualization/linode-cli/default.nix
index 9ae525bb7f2c..6ba947fb2f5b 100644
--- a/nixpkgs/pkgs/tools/virtualization/linode-cli/default.nix
+++ b/nixpkgs/pkgs/tools/virtualization/linode-cli/default.nix
@@ -13,8 +13,8 @@
 let
   sha256 = "1f0nrdg8hf650qxz79i3a1d2zyf24niyrcnbnhc9i7hzbnqbp5qg";
   # specVersion taken from: https://www.linode.com/docs/api/openapi.yaml at `info.version`.
-  specVersion = "4.118.3";
-  specSha256 = "0jf4fnadcdfm4ja0d0m5rxcpg48cqsi9plaqz6kwyx3mp2snx9yc";
+  specVersion = "4.119.0";
+  specSha256 = "0q5cqx9w44a85r8h9an4iz4m3s7x3b0nyk188i3hsh3r1wf1nryv";
   spec = fetchurl {
     url = "https://raw.githubusercontent.com/linode/linode-api-docs/v${specVersion}/openapi.yaml";
     sha256 = specSha256;
diff --git a/nixpkgs/pkgs/tools/virtualization/shipyard/default.nix b/nixpkgs/pkgs/tools/virtualization/shipyard/default.nix
index dfdde2ead961..ee329828dc30 100644
--- a/nixpkgs/pkgs/tools/virtualization/shipyard/default.nix
+++ b/nixpkgs/pkgs/tools/virtualization/shipyard/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "shipyard";
-  version = "0.3.47";
+  version = "0.3.48";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "shipyard-run";
     repo = pname;
-    sha256 = "sha256-hzycO6yAwOoanoxxaGW0EwFiclu0WMkepzUAa6Zf8fg=";
+    sha256 = "sha256-Hbvp8MV5usg0R+QXM7Laq9I6XeZnvuVCjj/aHmnskiE=";
   };
   vendorSha256 = "sha256-mXYnmDppVqhjlkGVkvp1YaEwBEkHBUddxLof389huMQ=";
 
diff --git a/nixpkgs/pkgs/tools/wayland/cliphist/default.nix b/nixpkgs/pkgs/tools/wayland/cliphist/default.nix
index 9ccad4397dd9..473c6fabc5a6 100644
--- a/nixpkgs/pkgs/tools/wayland/cliphist/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/cliphist/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "cliphist";
-  version = "0.3.0";
+  version = "0.3.1";
 
   src = fetchFromGitHub {
     owner = "sentriz";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-fx33m7DCp5N9VGI/H/IO66ECdFLobRRAAuRGNu4gzSk=";
+    sha256 = "sha256-kmXR8xzjAphgaC2Yd55VwZIJ4ehxP1LEA24hgyAbM7A=";
   };
 
-  vendorSha256 = "sha256-UrKSDvskGwHjwkb/fjvaJZ8xXFD98BFeSJxwJpc8A+M=";
+  vendorSha256 = "sha256-LZnefa0FjYG39YJrSN9ef6OnXHXgSrlSL4LvRqLxFx4=";
 
   meta = with lib; {
     description = "Wayland clipboard manager";
diff --git a/nixpkgs/pkgs/tools/wayland/swaykbdd/default.nix b/nixpkgs/pkgs/tools/wayland/swaykbdd/default.nix
index 4584018596df..e4f480dba8ef 100644
--- a/nixpkgs/pkgs/tools/wayland/swaykbdd/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/swaykbdd/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "swaykbdd";
-  version = "1.0";
+  version = "1.1";
 
   src = fetchFromGitHub {
     owner = "artemsen";
     repo = "swaykbdd";
     rev = "v${version}";
-    sha256 = "101mbf7pvm4ykmkh29g5xswrzdhdwq0rslzxqqfd5ksf1fphzgxd";
+    sha256 = "sha256-umYPVkkYeu6TyVkjDsVBsRZLYh8WyseCPdih85kTz6A=";
   };
 
   nativeBuildInputs = [ meson ninja pkg-config ];
diff --git a/nixpkgs/pkgs/tools/wayland/swayr/default.nix b/nixpkgs/pkgs/tools/wayland/swayr/default.nix
index c1bcf3b4e9f0..6237d1a88eeb 100644
--- a/nixpkgs/pkgs/tools/wayland/swayr/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/swayr/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "swayr";
-  version = "0.13.0";
+  version = "0.15.0";
 
   src = fetchFromSourcehut {
     owner = "~tsdh";
     repo = "swayr";
     rev = "v${version}";
-    sha256 = "sha256-V4ETsraJo9X10fPMGSuiokPiSlZGYHncOdfheGom1go=";
+    sha256 = "sha256-GLOJjGr29v4oVNCWgjPWluIiSeLoIYeOw2HwmSfxA8Y=";
   };
 
-  cargoSha256 = "sha256-3ErzkS8u+4Ve26jpDbsYr4BVDm/XEgydYdZ2ErtVuVA=";
+  cargoSha256 = "sha256-gg/IHrgfDZT+3FNM/se5X1YMcHX127jMNI/WDEpMzy4=";
 
   patches = [
     ./icon-paths.patch
diff --git a/nixpkgs/pkgs/tools/wayland/wl-color-picker/default.nix b/nixpkgs/pkgs/tools/wayland/wl-color-picker/default.nix
new file mode 100644
index 000000000000..784920712c94
--- /dev/null
+++ b/nixpkgs/pkgs/tools/wayland/wl-color-picker/default.nix
@@ -0,0 +1,59 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, slurp
+, grim
+, gnome
+, wl-clipboard
+, imagemagick
+, makeWrapper
+}:
+
+stdenv.mkDerivation rec {
+  pname = "wl-color-picker";
+  version = "1.3";
+
+  src = fetchFromGitHub {
+    owner = "jgmdev";
+    repo = "wl-color-picker";
+    rev = "v${version}";
+    sha256 = "sha256-lvhpXy4Sd1boYNGhbPoZTJlBhlW5obltDOrEzB1Gq0A=";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  patchPhase = ''
+    substituteInPlace Makefile \
+      --replace 'which' 'ls' \
+      --replace 'grim' "${grim}/bin/grim" \
+      --replace 'slurp' "${slurp}/bin/slurp" \
+      --replace 'convert' "${imagemagick}/bin/convert" \
+      --replace 'zenity' "${gnome.zenity}/bin/zenity" \
+      --replace 'wl-copy' "${wl-clipboard}/bin/wl-copy"
+  '';
+
+  installFlags = [
+    "DESTDIR=${placeholder "out"}"
+  ];
+
+  postInstall = ''
+    wrapProgram $out/usr/bin/wl-color-picker \
+      --prefix PATH : ${lib.makeBinPath [
+         grim
+         slurp
+         imagemagick
+         gnome.zenity
+         wl-clipboard
+       ]}
+    mkdir -p $out/bin
+    ln -s $out/usr/bin/wl-color-picker $out/bin/wl-color-picker
+  '';
+
+  meta = with lib; {
+    description = "Wayland color picker that also works on wlroots";
+    homepage = "https://github.com/jgmdev/wl-color-picker";
+    license = licenses.mit;
+    maintainers = with maintainers; [ onny ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/wayland/ydotool/default.nix b/nixpkgs/pkgs/tools/wayland/ydotool/default.nix
index 4a75eac8c574..15bc49987331 100644
--- a/nixpkgs/pkgs/tools/wayland/ydotool/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/ydotool/default.nix
@@ -1,41 +1,28 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, boost, libevdevplus, libuinputplus, iodash, cxxopts}:
+{ lib, stdenv, fetchFromGitHub, cmake, scdoc, util-linux }:
 
 stdenv.mkDerivation rec {
   pname = "ydotool";
-  version = "unstable-2021-01-20";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "ReimuNotMoe";
     repo = "ydotool";
-    rev = "b1d041f52f7bac364d6539b1251d29c3b77c0f37";
-    sha256 = "1gzdbx6fv0dbcyia3yyzhv93az2gf90aszb9kcj5cnxywfpv9w9g";
+    rev = "v${version}";
+    sha256 = "sha256-maXXGCqB8dkGO8956hsKSwM4HQdYn6z1jBFENQ9sKcA=";
   };
 
-  # upstream decided to use a cpp package manager called cpm.
-  # we need to disable that because it wants networking, furthermore,
-  # it does some system folder creating which also needs to be disabled.
-  # Both changes are to respect the sandbox.
-  patches = [ ./fixup-cmakelists.patch ];
+  nativeBuildInputs = [ cmake scdoc ];
 
-
-  # cxxopts is a header only library.
-  # See pull request: https://github.com/ReimuNotMoe/ydotool/pull/105
-  postPatch = ''
-    substituteInPlace CMakeLists.txt --replace \
-      "PUBLIC cxxopts" \
-      "PUBLIC"
+  postInstall = ''
+    substituteInPlace ${placeholder "out"}/lib/systemd/user/ydotool.service \
+      --replace /usr/bin/kill "${util-linux}/bin/kill"
   '';
 
-  nativeBuildInputs = [ cmake pkg-config ];
-  buildInputs = [
-    boost libevdevplus libuinputplus iodash cxxopts
-  ];
-
   meta = with lib; {
-    inherit (src.meta) homepage;
+    homepage = "https://github.com/ReimuNotMoe/ydotool";
     description = "Generic Linux command-line automation tool";
-    license = licenses.mit;
-    maintainers = with maintainers; [ willibutz ];
+    license = licenses.agpl3Plus;
+    maintainers = with maintainers; [ willibutz kraem ];
     platforms = with platforms; linux;
   };
 }
diff --git a/nixpkgs/pkgs/tools/wayland/ydotool/fixup-cmakelists.patch b/nixpkgs/pkgs/tools/wayland/ydotool/fixup-cmakelists.patch
deleted file mode 100644
index 965d5c38d83f..000000000000
--- a/nixpkgs/pkgs/tools/wayland/ydotool/fixup-cmakelists.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From bb8bc44d22060cd1215712117cf30eae09f4f6ba Mon Sep 17 00:00:00 2001
-From: Jappie Klooster <jappieklooster@hotmail.com>
-Date: Fri, 2 Apr 2021 14:04:14 -0400
-Subject: [PATCH] Fixup cmaklists
-
-We remove cpm, which is a package manager for c++,
-which requires networking, so it's better just deleted.
-
-Furthermore we delete the adddirectory statements.
-These want to modify directories outside of the sandbox.
----
- CMakeLists.txt | 26 --------------------------
- 1 file changed, 26 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index b5e8789..b797538 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -13,30 +13,6 @@ endif()
- 
- include(${CPM_DOWNLOAD_LOCATION})
- 
--CPMAddPackage(
--        NAME IODash
--        GITHUB_REPOSITORY YukiWorkshop/IODash
--        VERSION 0.1.0
--)
--
--CPMAddPackage(
--        NAME libevdevPlus
--        GITHUB_REPOSITORY YukiWorkshop/libevdevPlus
--        VERSION 0.2.1
--)
--
--CPMAddPackage(
--        NAME libuInputPlus
--        GITHUB_REPOSITORY YukiWorkshop/libuInputPlus
--        VERSION 0.2.1
--)
--
--CPMAddPackage(
--        NAME cxxopts
--        GITHUB_REPOSITORY jarro2783/cxxopts
--        VERSION 3.0.0
--        GIT_TAG 2d8e17c4f88efce80e274cb03eeb902e055a91d3
--)
- 
- set(SOURCE_FILES_LIBRARY
-         CommonIncludes.hpp
-@@ -74,5 +50,3 @@ add_executable(ydotool ${SOURCE_FILES_CLIENT})
- target_link_libraries(ydotool ydotool_library dl pthread uInputPlus evdevPlus)
- install(TARGETS ydotool DESTINATION ${CMAKE_INSTALL_BINDIR})
- 
--add_subdirectory(Daemon)
--add_subdirectory(manpage)
--- 
-2.29.2
-
diff --git a/nixpkgs/pkgs/top-level/aliases.nix b/nixpkgs/pkgs/top-level/aliases.nix
index f4bb9c1ebc6c..65a742ad5f8f 100644
--- a/nixpkgs/pkgs/top-level/aliases.nix
+++ b/nixpkgs/pkgs/top-level/aliases.nix
@@ -38,9 +38,14 @@ in
 # A script to convert old aliases to throws and remove old
 # throws can be found in './maintainers/scripts/remove-old-aliases.py'.
 
+# Add 'preserve, reason: reason why' after the date if the alias should not be removed.
+# Try to keep them to a minimum.
+# valid examples of what to preserve:
+#   distro aliases such as:
+#     debian-package-name -> nixos-package-name
+
 mapAliases ({
-  # forceSystem should not be used directly in Nixpkgs.
-  # Added 2018-07-16
+  # Added 2018-07-16 preserve, reason: forceSystem should not be used directly in Nixpkgs.
   forceSystem = system: _:
     (import self.path { localSystem = { inherit system; }; });
 
@@ -51,36 +56,35 @@ mapAliases ({
   accounts-qt = throw "'accounts-qt' has been renamed to/replaced by 'libsForQt5.accounts-qt'"; # Converted to throw 2022-02-22
   adobeReader = throw "'adobeReader' has been renamed to/replaced by 'adobe-reader'"; # Converted to throw 2022-02-22
   adobe_flex_sdk = throw "'adobe_flex_sdk' has been renamed to/replaced by 'apache-flex-sdk'"; # Converted to throw 2022-02-22
-  aesop = throw "aesop has been removed from nixpkgs, as it was unmaintained."; # Added 2021-08-05
+  aesop = throw "aesop has been removed from nixpkgs, as it was unmaintained"; # Added 2021-08-05
   ag = throw "'ag' has been renamed to/replaced by 'silver-searcher'"; # Converted to throw 2022-02-22
   aircrackng = throw "'aircrackng' has been renamed to/replaced by 'aircrack-ng'"; # Converted to throw 2022-02-22
-  airtame = throw "airtame has been removed due to being unmaintained."; # Added 2022-01-19
-  aleth = throw "aleth (previously packaged as cpp_ethereum) has been removed; abandoned upstream."; # Added 2020-11-30
-  alienfx = throw "alienfx has been removed."; # Added 2019-12-08
+  airtame = throw "airtame has been removed due to being unmaintained"; # Added 2022-01-19
+  aleth = throw "aleth (previously packaged as cpp_ethereum) has been removed; abandoned upstream"; # Added 2020-11-30
   alsaLib = alsa-lib; # Added 2021-06-09
   alsaOss = alsa-oss; # Added 2021-06-10
   alsaPluginWrapper = alsa-plugins-wrapper; # Added 2021-06-10
   alsaPlugins = alsa-plugins; # Added 2021-06-10
   alsaTools = alsa-tools; # Added 2021-06-10
   alsaUtils = alsa-utils; # Added 2021-06-10
-  amazon-glacier-cmd-interface = throw "amazon-glacier-cmd-interface has been removed due to it being unmaintained."; # Added 2020-10-30
-  aminal = throw "aminal was renamed to darktile."; # Added 2021-09-28
+  amazon-glacier-cmd-interface = throw "amazon-glacier-cmd-interface has been removed due to it being unmaintained"; # Added 2020-10-30
+  aminal = throw "aminal was renamed to darktile"; # Added 2021-09-28
   ammonite-repl = throw "'ammonite-repl' has been renamed to/replaced by 'ammonite'"; # Converted to throw 2022-02-22
-  amuleDaemon = throw "amuleDaemon was renamed to amule-daemon."; # Added 2022-02-11
-  amuleGui = throw "amuleGui was renamed to amule-gui."; # Added 2022-02-11
-  amsn = throw "amsn has been removed due to being unmaintained."; # Added 2020-12-09
+  amuleDaemon = throw "amuleDaemon was renamed to amule-daemon"; # Added 2022-02-11
+  amuleGui = throw "amuleGui was renamed to amule-gui"; # Added 2022-02-11
+  amsn = throw "amsn has been removed due to being unmaintained"; # Added 2020-12-09
   angelfish = libsForQt5.plasmaMobileGear.angelfish; # Added 2021-10-06
-  antimicro = throw "antimicro has been removed as it was broken, see antimicrox instead."; # Added 2020-08-06
+  antimicro = throw "antimicro has been removed as it was broken, see antimicrox instead"; # Added 2020-08-06
   antimicroX = antimicrox; # Added 2021-10-31
   ardour_5 = throw "ardour_5 has been removed. see https://github.com/NixOS/nixpkgs/issues/139549"; # Added 2021-09-28
   arduino_core = throw "'arduino_core' has been renamed to/replaced by 'arduino-core'"; # Converted to throw 2022-02-22
-  arora = throw "arora has been removed."; # Added 2020-09-09
+  arora = throw "arora has been removed"; # Added 2020-09-09
   asciidocFull = throw "'asciidocFull' has been renamed to/replaced by 'asciidoc-full'"; # Converted to throw 2022-02-22
   asn1c = throw "asn1c has been removed: deleted by upstream"; # Added 2022-01-07
-  asterisk_15 = throw "asterisk_15: Asterisk 15 is end of life and has been removed."; # Added 2020-10-07
+  asterisk_15 = throw "asterisk_15: Asterisk 15 is end of life and has been removed"; # Added 2020-10-07
   at_spi2_atk = throw "'at_spi2_atk' has been renamed to/replaced by 'at-spi2-atk'"; # Converted to throw 2022-02-22
   at_spi2_core = throw "'at_spi2_core' has been renamed to/replaced by 'at-spi2-core'"; # Converted to throw 2022-02-22
-  aucdtect = throw "aucdtect: Upstream no longer provides download urls."; # Added 2020-12-26
+  aucdtect = throw "aucdtect: Upstream no longer provides download urls"; # Added 2020-12-26
   avldrums-lv2 = x42-avldrums; # Added 2020-03-29
   avxsynth = throw "avxsynth was removed because it was broken"; # Added 2021-05-18
   azureus = throw "azureus is now known as vuze and the version in nixpkgs was really outdated"; # Added 2021-08-02
@@ -93,18 +97,16 @@ mapAliases ({
   bashInteractive_5 = bashInteractive; # Added 2021-08-20
   bash_5 = bash; # Added 2021-08-20
   bashburn = throw "bashburn has been removed: deleted by upstream"; # Added 2022-01-07
-  batti = throw "batti has been removed from nixpkgs, as it was unmaintained"; # Added 2019-12-10
-  bazaar = throw "bazaar has been deprecated by breezy."; # Added 2020-04-19
-  bazaarTools = throw "bazaar has been deprecated by breezy."; # Added 2020-04-19
+  bazaar = throw "bazaar has been deprecated by breezy"; # Added 2020-04-19
+  bazaarTools = throw "bazaar has been deprecated by breezy"; # Added 2020-04-19
   bcat = throw "bcat has been removed because upstream is dead"; # Added 2021-08-22
-  beegfs = throw "beegfs has been removed."; # Added 2019-11-24
   beret = throw "beret has been removed"; # Added 2021-11-16
   bin_replace_string = throw "bin_replace_string has been removed: deleted by upstream"; # Added 2022-01-07
+  bitbucket-cli = throw "bitbucket-cli has been removed: abandoned by upstream"; # Added 2022-03-21
   bitsnbots = throw "bitsnbots has been removed because it was broken and upstream missing"; # Added 2021-08-22
-  blastem = throw "blastem has been removed from nixpkgs as it would still require python2."; # Added 2022-01-01
+  blastem = throw "blastem has been removed from nixpkgs as it would still require python2"; # Added 2022-01-01
   bluezFull = bluez; # Added 2019-12-03
   bomi = throw "bomi has been removed from nixpkgs since it was broken and abandoned upstream"; # Added 2020-12-10
-  bootchart = throw "bootchart has been removed from nixpkgs, as it is without a maintainer"; # Added 2019-12-10
   bpftool = bpftools; # Added 2021-05-03
   brackets = throw "brackets has been removed, it was unmaintained and had open vulnerabilities"; # Added 2021-01-24
   bridge_utils = throw "'bridge_utils' has been renamed to/replaced by 'bridge-utils'"; # Converted to throw 2022-02-22
@@ -112,6 +114,7 @@ mapAliases ({
   bird2 = bird; # Added 2022-02-21
   bird6 = throw "bird6 was dropped. Use bird instead, which has support for both ipv4/ipv6"; # Added 2022-02-21
   btrfsProgs = throw "'btrfsProgs' has been renamed to/replaced by 'btrfs-progs'"; # Converted to throw 2022-02-22
+  bud = throw "bud has been removed: abandoned by upstream"; # Added 2022-03-14
 
   # bitwarden_rs renamed to vaultwarden with release 1.21.0 (2021-04-30)
   bitwarden_rs = vaultwarden;
@@ -121,8 +124,8 @@ mapAliases ({
   bitwarden_rs-vault = vaultwarden-vault;
 
 
-  blink = throw "blink has been removed from nixpkgs, it was unmaintained and required python2 at the time of removal."; # Added 2022-01-12
-  bs1770gain = throw "bs1770gain has been removed from nixpkgs, as it had no maintainer or reverse dependencies."; # Added 2021-01-02
+  blink = throw "blink has been removed from nixpkgs, it was unmaintained and required python2 at the time of removal"; # Added 2022-01-12
+  bs1770gain = throw "bs1770gain has been removed from nixpkgs, as it had no maintainer or reverse dependencies"; # Added 2021-01-02
   bsod = throw "bsod has been removed: deleted by upstream"; # Added 2022-01-07
   btc1 = throw "btc1 has been removed, it was abandoned by upstream"; # Added 2020-11-03
   buildPerlPackage = throw "'buildPerlPackage' has been renamed to/replaced by 'perlPackages.buildPerlPackage'"; # Converted to throw 2022-02-22
@@ -134,24 +137,22 @@ mapAliases ({
   ### C ###
 
   caddy1 = throw "caddy 1.x has been removed from nixpkgs, as it's unmaintained: https://github.com/caddyserver/caddy/blob/master/.github/SECURITY.md#supported-versions"; # Added 2020-10-02
-  calibre-py2 = throw "calibre-py2 has been removed from nixpkgs, as calibre has upgraded to python 3. Please use calibre as replacement."; # Added 2021-01-13
-  calibre-py3 = throw "calibre-py3 has been removed from nixpkgs, as calibre's default python version is now 3. Please use calibre as replacement."; # Added 2021-01-13
+  calibre-py2 = throw "calibre-py2 has been removed from nixpkgs, as calibre has upgraded to python 3. Please use calibre as replacement"; # Added 2021-01-13
+  calibre-py3 = throw "calibre-py3 has been removed from nixpkgs, as calibre's default python version is now 3. Please use calibre as replacement"; # Added 2021-01-13
   cantarell_fonts = throw "'cantarell_fonts' has been renamed to/replaced by 'cantarell-fonts'"; # Converted to throw 2022-02-22
-  cargo-tree = throw "cargo-tree has been removed, use the builtin `cargo tree` command instead."; # Added 2020-08-20
-  casperjs = throw "casperjs has been removed, it was abandoned by upstream and broken.";
+  cargo-tree = throw "cargo-tree has been removed, use the builtin `cargo tree` command instead"; # Added 2020-08-20
+  casperjs = throw "casperjs has been removed, it was abandoned by upstream and broken";
   catfish = xfce.catfish; # Added 2019-12-22
   ccnet = throw "ccnet has been removed because seafile does not depend on it anymore"; # Added 2021-03-25
-  cde-gtk-theme = throw "cde-gtk-theme has been removed from nixpkgs as it shipped with python2 scripts that didn't work anymore."; # Added 2022-01-12
-  cgmanager = throw "cgmanager was deprecated by lxc and therefore removed from nixpkgs."; # Added 2020-06-05
+  cde-gtk-theme = throw "cde-gtk-theme has been removed from nixpkgs as it shipped with python2 scripts that didn't work anymore"; # Added 2022-01-12
+  cgmanager = throw "cgmanager was deprecated by lxc and therefore removed from nixpkgs"; # Added 2020-06-05
   checkbashism = throw "'checkbashism' has been renamed to/replaced by 'checkbashisms'"; # Converted to throw 2022-02-22
   chronos = throw "chronos has been removed from nixpkgs, as it was unmaintained"; # Added 2020-08-15
   chunkwm = throw "chunkwm has been removed: abandoned by upstream"; # Added 2022-01-07
-  cide = throw "cide was deprecated on 2019-09-11: abandoned by upstream";
   cifs_utils = throw "'cifs_utils' has been renamed to/replaced by 'cifs-utils'"; # Converted to throw 2022-02-22
-  cinepaint = throw "cinepaint has been removed from nixpkgs, as it was unmaintained"; # Added 2019-12-10
   ckb = throw "'ckb' has been renamed to/replaced by 'ckb-next'"; # Converted to throw 2022-02-22
   callPackage_i686 = pkgsi686Linux.callPackage;
-  creddump = throw "creddump has been removed from nixpkgs as the upstream has abandoned the project."; # Added 2022-01-01
+  creddump = throw "creddump has been removed from nixpkgs as the upstream has abandoned the project"; # Added 2022-01-01
 
   # these are for convenience, not for backward compat and shouldn't expire
   clang5Stdenv = lowPrio llvmPackages_5.stdenv;
@@ -168,6 +169,7 @@ mapAliases ({
   claws-mail-gtk2 = throw "claws-mail-gtk2 was removed to get rid of Python 2, please use claws-mail"; # Added 2021-12-05
   claws-mail-gtk3 = claws-mail; # Added 2021-07-10
   clawsMail = throw "'clawsMail' has been renamed to/replaced by 'claws-mail'"; # Converted to throw 2022-02-22
+  clearsilver = throw "clearsilver has been removed: abandoned by upstream"; # Added 2022-03-15
   clutter_gtk = throw "'clutter_gtk' has been renamed to/replaced by 'clutter-gtk'"; # Converted to throw 2022-02-22
   cmakeWithQt4Gui = throw "cmakeWithQt4Gui has been removed in favor of cmakeWithGui (Qt 5)"; # Added 2021-05
   codimd = hedgedoc; # Added 2020-11-29
@@ -176,13 +178,11 @@ mapAliases ({
   concurrencykit = libck; # Added 2021-03
   conntrack_tools = throw "'conntrack_tools' has been renamed to/replaced by 'conntrack-tools'"; # Converted to throw 2022-02-22
   cool-old-term = throw "'cool-old-term' has been renamed to/replaced by 'cool-retro-term'"; # Converted to throw 2022-02-22
-  coprthr = throw "coprthr has been removed."; # Added 2019-12-08
-  coredumper = throw "coredumper has been removed: abandoned by upstream."; # Added 2019-11-16
   corsmisc = throw "corsmisc has been removed (upstream is gone)"; # Added 2022-01-24
   couchdb = throw "couchdb was removed from nixpkgs, use couchdb3 instead"; # Added 2021-03-03
   couchdb2 = throw "couchdb2 was removed from nixpkgs, use couchdb3 instead"; # Added 2021-03-03
   cpp-gsl = throw "'cpp-gsl' has been renamed to/replaced by 'microsoft_gsl'"; # Converted to throw 2022-02-22
-  cpp_ethereum = throw "cpp_ethereum has been removed; abandoned upstream."; # Added 2020-11-30
+  cpp_ethereum = throw "cpp_ethereum has been removed; abandoned upstream"; # Added 2020-11-30
   cpuminer-multi = throw "cpuminer-multi has been removed: deleted by upstream"; # Added 2022-01-07
   crafty = throw "crafty has been removed: deleted by upstream"; # Added 2022-01-07
   cryptol = throw "cryptol was removed due to prolonged broken build"; # Added 2020-08-21
@@ -208,11 +208,11 @@ mapAliases ({
   cudnn_cudatoolkit_9_2 = throw "cudnn_cudatoolkit_9_2 has been removed in favor of newer versions"; # Added 2021-04-18
 
   cloud-print-connector = throw "Google Cloudprint is officially discontinued since Jan 2021, more info https://support.google.com/chrome/a/answer/9633006";
-  cquery = throw "cquery has been removed because it is abandoned by upstream. Consider switching to clangd or ccls instead."; # Added 2020-06-15
+  cquery = throw "cquery has been removed because it is abandoned by upstream. Consider switching to clangd or ccls instead"; # Added 2020-06-15
   cups-googlecloudprint = throw "Google Cloudprint is officially discontinued since Jan 2021, more info https://support.google.com/chrome/a/answer/9633006";
   cupsBjnp = throw "'cupsBjnp' has been renamed to/replaced by 'cups-bjnp'"; # Converted to throw 2022-02-22
   cups_filters = throw "'cups_filters' has been renamed to/replaced by 'cups-filters'"; # Converted to throw 2022-02-22
-  curaByDagoma = throw "curaByDagoma has been removed from nixpkgs, because it was unmaintained and dependent on python2 packages."; # Added 2022-01-12
+  curaByDagoma = throw "curaByDagoma has been removed from nixpkgs, because it was unmaintained and dependent on python2 packages"; # Added 2022-01-12
   curaLulzbot = throw "curaLulzbot has been removed due to insufficient upstream support for a modern dependency chain"; # Added 2021-10-23
   cv = throw "'cv' has been renamed to/replaced by 'progress'"; # Converted to throw 2022-02-22
   cvs_fast_export = cvs-fast-export; # Added 2021-06-10
@@ -221,8 +221,8 @@ mapAliases ({
 
   d1x_rebirth = throw "'d1x_rebirth' has been renamed to/replaced by 'dxx-rebirth'"; # Converted to throw 2022-02-22
   d2x_rebirth = throw "'d2x_rebirth' has been renamed to/replaced by 'dxx-rebirth'"; # Converted to throw 2022-02-22
-  dart_dev = throw "Non-stable versions of Dart have been removed."; # Added 2020-01-15
-  dart_old = throw "Non-stable versions of Dart have been removed."; # Added 2020-01-15
+  dart_dev = throw "Non-stable versions of Dart have been removed"; # Added 2020-01-15
+  dart_old = throw "Non-stable versions of Dart have been removed"; # Added 2020-01-15
   dart_stable = dart; # Added 2020-01-15
   dat = nodePackages.dat;
   dbus_daemon = throw "'dbus_daemon' has been renamed to/replaced by 'dbus.daemon'"; # Converted to throw 2022-02-22
@@ -240,7 +240,6 @@ mapAliases ({
   deisctl = throw "deisctl was removed ; the service does not exist anymore"; # added 2022-02-06
   deis = throw "deis was removed ; the service does not exist anymore"; # added 2022-02-06
   deltachat-electron = deltachat-desktop; # added 2021-07-18
-  diffuse = throw "diffuse has been removed from nixpkgs, as it's unmaintained"; # Added 2019-12-10
 
   deluge-1_x = throw ''
     Deluge 1.x (deluge-1_x) is no longer supported.
@@ -255,7 +254,7 @@ mapAliases ({
   desktop_file_utils = throw "'desktop_file_utils' has been renamed to/replaced by 'desktop-file-utils'"; # Converted to throw 2022-02-22
   devicemapper = throw "'devicemapper' has been renamed to/replaced by 'lvm2'"; # Converted to throw 2022-02-22
   digikam5 = throw "'digikam5' has been renamed to/replaced by 'digikam'"; # Converted to throw 2022-02-22
-  displaycal = throw "displaycal has been removed from nixpkgs, as it hasn't migrated to python3."; # Added 2022-01-12
+  displaycal = throw "displaycal has been removed from nixpkgs, as it hasn't migrated to python3"; # Added 2022-01-12
   dmtx = throw "'dmtx' has been renamed to/replaced by 'dmtx-utils'"; # Converted to throw 2022-02-22
   dnnl = oneDNN; # Added 2020-04-22
   docbook5_xsl = throw "'docbook5_xsl' has been renamed to/replaced by 'docbook_xsl_ns'"; # Converted to throw 2022-02-22
@@ -267,9 +266,9 @@ mapAliases ({
   dotnet-netcore = dotnet-runtime; # Added 2021-10-07
   double_conversion = throw "'double_conversion' has been renamed to/replaced by 'double-conversion'"; # Converted to throw 2022-02-22
   draftsight = throw "draftsight has been removed, no longer available as freeware"; # Added 2020-08-14
-  dvb_apps = throw "dvb_apps has been removed."; # Added 2020-11-03
+  dvb_apps = throw "dvb_apps has been removed"; # Added 2020-11-03
   dwarf_fortress = throw "'dwarf_fortress' has been renamed to/replaced by 'dwarf-fortress'"; # Converted to throw 2022-02-22
-  dwm-git = throw "dwm-git has been removed from nixpkgs, as it had no updates for 2 years not serving it's purpose."; # Added 2021-02-07
+  dwm-git = throw "dwm-git has been removed from nixpkgs, as it had no updates for 2 years not serving it's purpose"; # Added 2021-02-07
   dylibbundler = macdylibbundler; # Added 2021-04-24
 
   ### E ###
@@ -289,7 +288,7 @@ mapAliases ({
   electron_7 = throw "electron_7 has been removed in favor of newer versions"; # added 2022-02-08
   electron_8 = throw "electron_8 has been removed in favor of newer versions"; # added 2022-02-08
 
-  electrum-dash = throw "electrum-dash has been removed from nixpkgs as the project is abandoned."; # Added 2022-01-01
+  electrum-dash = throw "electrum-dash has been removed from nixpkgs as the project is abandoned"; # Added 2022-01-01
 
   # Emacs
   emacs27Packages = emacs27.pkgs; # Added 2020-12-18
@@ -303,50 +302,47 @@ mapAliases ({
 
   enblendenfuse = throw "'enblendenfuse' has been renamed to/replaced by 'enblend-enfuse'"; # Converted to throw 2022-02-22
   encryptr = throw "encryptr was removed because it reached end of life"; # Added 2022-02-06
-  envelope = throw "envelope has been removed from nixpkgs, as it was unmaintained."; # Added 2021-08-05
+  envelope = throw "envelope has been removed from nixpkgs, as it was unmaintained"; # Added 2021-08-05
   epoxy = libepoxy; # Added 2021-11-11
   esniper = throw "esniper has been removed because upstream no longer maintains it (and it no longer works)"; # Added 2021-04-12
   etcdctl = throw "'etcdctl' has been renamed to/replaced by 'etcd'"; # Converted to throw 2022-02-22
-  euca2tools = throw "euca2ools has been removed because it is unmaintained upstream and still uses python2."; # Added 2022-01-01
-  evilvte = throw "evilvte has been removed from nixpkgs for being unmaintained with security issues and dependant on an old version of vte which was removed."; # Added 2022-01-14
+  eteroj.lv2 = throw "'eteroj.lv2' has been renamed to/replaced by 'open-music-kontrollers.eteroj'"; # Added 2022-03-09
+  euca2tools = throw "euca2ools has been removed because it is unmaintained upstream and still uses python2"; # Added 2022-01-01
+  evilvte = throw "evilvte has been removed from nixpkgs for being unmaintained with security issues and dependant on an old version of vte which was removed"; # Added 2022-01-14
   evolution_data_server = throw "'evolution_data_server' has been renamed to/replaced by 'evolution-data-server'"; # Converted to throw 2022-02-22
   exfat-utils = throw "'exfat-utils' has been renamed to/replaced by 'exfat'"; # Converted to throw 2022-02-22
 
   ### F ###
 
-  facette = throw "facette has been removed."; # Added 2020-01-06
+  facette = throw "facette has been removed"; # Added 2020-01-06
   fast-neural-doodle = throw "fast-neural-doodle has been removed, as the upstream project has been abandoned"; # Added 2020-03-28
   fastnlo = fastnlo_toolkit; # Added 2021-04-24
-  fedora-coreos-config-transpiler = throw "fedora-coreos-config-transpiler has been renamed to 'butane'."; # Added 2021-04-13
-  fetchFromGithub = throw "You meant fetchFromGitHub, with a capital H.";
+  fedora-coreos-config-transpiler = throw "fedora-coreos-config-transpiler has been renamed to 'butane'"; # Added 2021-04-13
+  fetchFromGithub = throw "You meant fetchFromGitHub, with a capital H";
   ffadoFull = throw "'ffadoFull' has been renamed to/replaced by 'ffado'"; # Converted to throw 2022-02-22
+  ffmpeg-sixel = throw "ffmpeg-sixel has been removed, because it was an outdated/unmaintained fork of ffmpeg"; # Added 2022-03-23";
+  ffmpeg_3 = throw "ffmpeg_3 was removed from nixpkgs, because it was an outdated and insecure release"; # added 2022-01-17
   finger_bsd = bsd-finger;
   fingerd_bsd = bsd-fingerd;
-  firefox-esr-68 = throw "Firefox 68 ESR was removed because it reached end of life with its final release 68.12esr on 2020-08-25.";
+  firefox-esr-68 = throw "Firefox 68 ESR was removed because it reached end of life with its final release 68.12esr on 2020-08-25";
   firefox-esr-wrapper = throw "'firefox-esr-wrapper' has been renamed to/replaced by 'firefox-esr'"; # Converted to throw 2022-02-22
   firefoxWrapper = throw "'firefoxWrapper' has been renamed to/replaced by 'firefox'"; # Converted to throw 2022-02-22
   firefox-wrapper = throw "'firefox-wrapper' has been renamed to/replaced by 'firefox'"; # Converted to throw 2022-02-22
-  firestr = throw "firestr has been removed."; # Added 2019-12-08
   firmwareLinuxNonfree = linux-firmware; # Added 2022-01-09
   fish-foreign-env = throw "fish-foreign-env has been replaced with fishPlugins.foreign-env"; # Added 2020-12-29, modified 2021-01-10
   flameGraph = throw "'flameGraph' has been renamed to/replaced by 'flamegraph'"; # Converted to throw 2022-02-22
-  flashplayer-standalone-debugger = throw "flashplayer-standalone-debugger has been removed as Adobe Flash Player is now deprecated."; # Added 2021-02-07
-  flashplayer-standalone = throw "flashplayer-standalone has been removed as Adobe Flash Player is now deprecated."; # Added 2021-02-07
-  flashplayer = throw "flashplayer has been removed as Adobe Flash Player is now deprecated."; # Added 2021-02-07
+  flashplayer-standalone-debugger = throw "flashplayer-standalone-debugger has been removed as Adobe Flash Player is now deprecated"; # Added 2021-02-07
+  flashplayer-standalone = throw "flashplayer-standalone has been removed as Adobe Flash Player is now deprecated"; # Added 2021-02-07
+  flashplayer = throw "flashplayer has been removed as Adobe Flash Player is now deprecated"; # Added 2021-02-07
   flashtool = throw "flashtool was removed from nixpkgs, because the download is down for copyright reasons and the site looks very fishy"; # Added 2021-06-31
   flink_1_5 = throw "flink_1_5 was removed, use flink instead"; # Added 2021-01-25
-  flutter-beta = throw "Non-stable versions of Flutter have been removed. You can use flutterPackages.mkFlutter to generate a package for other Flutter versions."; # Added 2020-01-15
-  flutter-dev = throw "Non-stable versions of Flutter have been removed. You can use flutterPackages.mkFlutter to generate a package for other Flutter versions."; # Added 2020-01-15
-  flvtool2 = throw "flvtool2 has been removed."; # Added 2020-11-03
-  fme = throw "fme was removed, because it is old and uses Glade, a discontinued library."; # Added 2022-01-26
+  flutter-beta = throw "Non-stable versions of Flutter have been removed. You can use flutterPackages.mkFlutter to generate a package for other Flutter versions"; # Added 2020-01-15
+  flutter-dev = throw "Non-stable versions of Flutter have been removed. You can use flutterPackages.mkFlutter to generate a package for other Flutter versions"; # Added 2020-01-15
+  flvtool2 = throw "flvtool2 has been removed"; # Added 2020-11-03
+  fme = throw "fme was removed, because it is old and uses Glade, a discontinued library"; # Added 2022-01-26
   foldingathome = fahclient; # Added 2020-09-03
   font-awesome-ttf = throw "'font-awesome-ttf' has been renamed to/replaced by 'font-awesome'"; # Converted to throw 2022-02-22
 
-  fontconfig-ultimate = throw ''
-    fontconfig-ultimate has been removed. The repository has been archived upstream and activity has ceased for several years.
-    https://github.com/bohoomil/fontconfig-ultimate/issues/171.
-  ''; # Added 2019-10-31
-
   fontconfig-penultimate = throw ''
     fontconfig-penultimate has been removed.
     It was a fork of the abandoned fontconfig-ultimate.
@@ -358,7 +354,7 @@ mapAliases ({
   '';
 
   foomatic_filters = throw "'foomatic_filters' has been renamed to/replaced by 'foomatic-filters'"; # Converted to throw 2022-02-22
-  fscryptctl-experimental = throw "The package fscryptctl-experimental has been removed. Please switch to fscryptctl."; # Added 2021-11-07
+  fscryptctl-experimental = throw "The package fscryptctl-experimental has been removed. Please switch to fscryptctl"; # Added 2021-11-07
   fsharp41 = throw "fsharp41 has been removed, please use dotnet-sdk_5 or later";
   fslint = throw "fslint has been removed: end of life. Upstream recommends using czkawka (https://qarmin.github.io/czkawka/) instead"; # Added 2022-01-15
   fuse_exfat = throw "'fuse_exfat' has been renamed to/replaced by 'exfat'"; # Converted to throw 2022-02-22
@@ -369,15 +365,15 @@ mapAliases ({
 
   g4py = python3Packages.geant4; # Added 2020-06-06
   gaia = throw "gaia has been removed because it seems abandoned upstream and uses no longer supported dependencies"; # Added 2020-06-06
-  gdal_1_11 = throw "gdal_1_11 was removed. Use gdal instead."; # Added 2021-04-03
+  gdal_1_11 = throw "gdal_1_11 was removed. Use gdal instead"; # Added 2021-04-03
   gdb-multitarget = throw "'gdb-multitarget' has been renamed to/replaced by 'gdb'"; # Converted to throw 2022-02-22
   gdk_pixbuf = throw "'gdk_pixbuf' has been renamed to/replaced by 'gdk-pixbuf'"; # Converted to throw 2022-02-22
-  getmail = throw "getmail has been removed from nixpkgs, migrate to getmail6."; # Added 2022-01-12
+  getmail = throw "getmail has been removed from nixpkgs, migrate to getmail6"; # Added 2022-01-12
   gettextWithExpat = throw "'gettextWithExpat' has been renamed to/replaced by 'gettext'"; # Converted to throw 2022-02-22
   gfm = throw "gfm has been removed"; # Added 2021-01-15
-  giblib = throw " giblib has been removed from nixpkgs because upstream is gone."; # Added 2022-01-23
+  giblib = throw " giblib has been removed from nixpkgs because upstream is gone"; # Added 2022-01-23
   giflib_4_1 = throw "giflib_4_1 has been removed; use giflib instead"; # Added 2020-02-12
-  git-bz = throw "giz-bz has been removed from nixpkgs as it is stuck on python2."; # Added 2022-01-01
+  git-bz = throw "giz-bz has been removed from nixpkgs as it is stuck on python2"; # Added 2022-01-01
 
   gitAndTools = self // {
     darcsToGit = darcs-to-git;
@@ -390,19 +386,18 @@ mapAliases ({
   }; # Added 2021-01-14
 
   gitin = throw "gitin has been remove because it was unmaintained and depended on an insecure version of libgit2"; # Added 2021-12-07
-  gitinspector = throw "gitinspector has been removed because it doesn't work with python3."; # Added 2022-01-12
+  gitinspector = throw "gitinspector has been removed because it doesn't work with python3"; # Added 2022-01-12
   gksu = throw "gksu has been removed"; # Added 2022-01-16
   glib_networking = throw "'glib_networking' has been renamed to/replaced by 'glib-networking'"; # Converted to throw 2022-02-22
   gmailieer = lieer; # Added 2020-04-19
   gmic_krita_qt = gmic-qt-krita; # Added 2019-09-07
   gmvault = throw "gmvault has been removed because it is unmaintained, mostly broken, and insecure"; # Added 2021-03-08
-  gnash = throw "gnash has been removed; broken and abandoned upstream."; # added 2022-02-06
+  gnash = throw "gnash has been removed; broken and abandoned upstream"; # added 2022-02-06
   gnome-passwordsafe = gnome-secrets; # added 2022-01-30
   gnome-mpv = celluloid; # Added 2019-08-22
   gnome-sharp = throw "gnome-sharp has been removed from nixpkgs"; # Added 2022-01-15
   gnome-themes-standard = throw "'gnome-themes-standard' has been renamed to/replaced by 'gnome-themes-extra'"; # Converted to throw 2022-02-22
   gnome_user_docs = gnome-user-docs; # Added 2019-11-20
-  gnome15 = throw "gnome15 has been removed from nixpkgs, as it's unmaintained and depends on deprecated libraries."; # Added 2019-12-10
   gnome_doc_utils = throw "'gnome_doc_utils' has been renamed to/replaced by 'gnome-doc-utils'"; # Converted to throw 2022-02-22
   gnome_themes_standard = throw "'gnome_themes_standard' has been renamed to/replaced by 'gnome-themes-standard'"; # Converted to throw 2022-02-22
 
@@ -428,6 +423,7 @@ mapAliases ({
   gobby5 = gobby; # Added 2021-02-01
   gobjectIntrospection = throw "'gobjectIntrospection' has been renamed to/replaced by 'gobject-introspection'"; # Converted to throw 2022-02-22
   gogoclient = throw "gogoclient has been removed, because it was unmaintained"; # Added 2021-12-15
+  golly-beta = throw "golly-beta has been removed: use golly instead"; # Added 2022-03-21
   goimports = throw "'goimports' has been renamed to/replaced by 'gotools'"; # Converted to throw 2022-02-22
   gometalinter = throw "gometalinter was abandoned by upstream. Consider switching to golangci-lint instead"; # Added 2020-04-23
   googleAuthenticator = throw "'googleAuthenticator' has been renamed to/replaced by 'google-authenticator'"; # Converted to throw 2022-02-22
@@ -439,8 +435,8 @@ mapAliases ({
   gpgstats = throw "gpgstats has been removed: upstream is gone"; # Added 2022-02-06
 
   graalvm11 = graalvm11-ce;
-  graalvm8-ce = throw "graalvm8-ce has been removed by upstream."; # Added 2021-10-19
-  graalvm8 = throw "graalvm8-ce has been removed by upstream."; # Added 2021-10-19
+  graalvm8-ce = throw "graalvm8-ce has been removed by upstream"; # Added 2021-10-19
+  graalvm8 = throw "graalvm8-ce has been removed by upstream"; # Added 2021-10-19
   gr-ais = gnuradio3_7.pkgs.ais; # Added 2019-05-27, changed 2020-10-16
   grantlee5 = throw "'grantlee5' has been renamed to/replaced by 'libsForQt5.grantlee'"; # Converted to throw 2022-02-22
   gr-gsm = gnuradio3_7.pkgs.gsm; # Added 2019-05-27, changed 2020-10-16
@@ -452,7 +448,6 @@ mapAliases ({
   gsettings_desktop_schemas = throw "'gsettings_desktop_schemas' has been renamed to/replaced by 'gsettings-desktop-schemas'"; # Converted to throw 2022-02-22
   gtk_doc = throw "'gtk_doc' has been renamed to/replaced by 'gtk-doc'"; # Converted to throw 2022-02-22
   gtklick = throw "gtklick has been removed from nixpkgs as the project is stuck on python2"; # Added 2022-01-01
-  gtk-recordmydesktop = throw "gtk-recordmydesktop has been removed from nixpkgs, as it's unmaintained and uses deprecated libraries"; # Added 2019-12-10
   guileCairo = throw "'guileCairo' has been renamed to/replaced by 'guile-cairo'"; # Converted to throw 2022-02-22
   guile-gnome = throw "guile-gnome has been removed"; # Added 2022-01-16
   guileGnome = throw "guile-gnome has been removed"; # Added 2022-01-16
@@ -469,23 +464,22 @@ mapAliases ({
 
   ### H ###
 
-  hal-flash = throw "hal-flash has been removed as Adobe Flash Player is now deprecated."; # Added 2021-02-07
+  hal-flash = throw "hal-flash has been removed as Adobe Flash Player is now deprecated"; # Added 2021-02-07
   hawkthorne = throw "hawkthorne has been removed because it depended on a broken version of love"; # Added 2022-01-15
   heimdalFull = throw "'heimdalFull' has been renamed to/replaced by 'heimdal'"; # Converted to throw 2022-02-22
   heme = throw "heme has been removed: upstream is gone"; # added 2022-02-06
   hepmc = hepmc2; # Added 2019-08-05
-  hexen = throw "hexen (SDL port) has been removed: abandoned by upstream."; # Added 2019-12-11
   hicolor_icon_theme = throw "'hicolor_icon_theme' has been renamed to/replaced by 'hicolor-icon-theme'"; # Converted to throw 2022-02-22
   holochain-go = throw "holochain-go was abandoned by upstream"; # Added 2022-01-01
   htmlTidy = throw "'htmlTidy' has been renamed to/replaced by 'html-tidy'"; # Converted to throw 2022-02-22
   ht-rust = xh; # Added 2021-02-13
-  hydra-flakes = throw "hydra-flakes: Flakes support has been merged into Hydra's master. Please use `hydra-unstable` now."; # Added 2020-04-06
+  hydra-flakes = throw "hydra-flakes: Flakes support has been merged into Hydra's master. Please use `hydra-unstable` now"; # Added 2020-04-06
 
   ### I ###
 
   iana_etc = throw "'iana_etc' has been renamed to/replaced by 'iana-etc'"; # Converted to throw 2022-02-22
   iasl = throw "iasl has been removed, use acpica-tools instead"; # Added 2021-08-08
-  icecat-bin = throw "icecat-bin has been removed, the binary builds are not maintained upstream."; # Added 2022-02-15
+  icecat-bin = throw "icecat-bin has been removed, the binary builds are not maintained upstream"; # Added 2022-02-15
   icedtea8_web = adoptopenjdk-icedtea-web; # Added 2019-08-21
   icedtea_web = adoptopenjdk-icedtea-web; # Added 2019-08-21
   idea = throw "'idea' has been renamed to/replaced by 'jetbrains'"; # Converted to throw 2022-02-22
@@ -494,10 +488,10 @@ mapAliases ({
   imagemagick7 = imagemagick; # Added 2021-02-22
   imagemagick7_light = imagemagick_light; # Added 2021-02-22
   impressive = throw "impressive has been removed due to lack of released python 2 support and maintainership in nixpkgs"; # Added 2022-01-27
-  i-score = throw "i-score has been removed: abandoned upstream."; # Added 2020-11-21
-  inboxer = throw "inboxer has been removed as it is no longer maintained and no longer works as Google shut down the inbox service this package wrapped.";
+  i-score = throw "i-score has been removed: abandoned upstream"; # Added 2020-11-21
+  inboxer = throw "inboxer has been removed as it is no longer maintained and no longer works as Google shut down the inbox service this package wrapped";
   infiniband-diags = rdma-core; # Added 2019-08-09
-  ino = throw "ino has been removed from nixpkgs, the project is stuck on python2 and upstream has archived the project."; # Added 2022-01-12
+  ino = throw "ino has been removed from nixpkgs, the project is stuck on python2 and upstream has archived the project"; # Added 2022-01-12
   inotifyTools = inotify-tools;
   inter-ui = inter; # Added 2021-03-27
   iops = throw "iops was removed: upstream is gone"; # Added 2022-02-06
@@ -508,13 +502,12 @@ mapAliases ({
 
 
   jack2Full = jack2; # moved from top-level 2021-03-14
-  jamomacore = throw "jamomacore has been removed: abandoned upstream."; # Added 2020-11-21
+  jamomacore = throw "jamomacore has been removed: abandoned upstream"; # Added 2020-11-21
   jbidwatcher = throw "jbidwatcher was discontinued in march 2021"; # Added 2021-03-15
   jbuilder = throw "'jbuilder' has been renamed to/replaced by 'dune_1'"; # Converted to throw 2022-02-22
-  jellyfin_10_5 = throw "Jellyfin 10.5 is no longer supported and contains a security vulnerability. Please upgrade to a newer version."; # Added 2021-04-26
-  jikes = throw "jikes was deprecated on 2019-10-07: abandoned by upstream";
+  jellyfin_10_5 = throw "Jellyfin 10.5 is no longer supported and contains a security vulnerability. Please upgrade to a newer version"; # Added 2021-04-26
   joseki = throw "'joseki' has been renamed to/replaced by 'apache-jena-fuseki'"; # Converted to throw 2022-02-22
-  journalbeat7 = throw "journalbeat has been removed upstream. Use filebeat with the journald input instead.";
+  journalbeat7 = throw "journalbeat has been removed upstream. Use filebeat with the journald input instead";
 
   # Julia
   julia_07 = throw "julia_07 has been deprecated in favor of the latest LTS version"; # Added 2020-09-15
@@ -539,18 +532,18 @@ mapAliases ({
   keepassx-community = throw "'keepassx-community' has been renamed to/replaced by 'keepassxc'"; # Converted to throw 2022-02-22
   keepassx-reboot = throw "'keepassx-reboot' has been renamed to/replaced by 'keepassx-community'"; # Converted to throw 2022-02-22
   keepassx2-http = throw "'keepassx2-http' has been renamed to/replaced by 'keepassx-reboot'"; # Converted to throw 2022-02-22
-  keepnote = throw "keepnote has been removed from nixpkgs, as it is stuck on python2."; # Added 2022-01-01
+  keepnote = throw "keepnote has been removed from nixpkgs, as it is stuck on python2"; # Added 2022-01-01
   kerberos = libkrb5; # moved from top-level 2021-03-14
   kexectools = kexec-tools; # Added 2021-09-03
   keybase-go = throw "'keybase-go' has been renamed to/replaced by 'keybase'"; # Converted to throw 2022-02-22
-  keymon = throw "keymon has been removed from nixpkgs, as it's abandoned and archived."; # Added 2019-12-10
   keysmith = libsForQt5.plasmaMobileGear.keysmith; # Added 2021-07-14
+  kgx = gnome-console; # Added 2022-02-19
   kibana7-oss = throw "kibana7-oss has been removed, as the distribution is no longer provided by upstream. https://github.com/NixOS/nixpkgs/pull/114456"; # Added 2021-06-09
   kicad-with-packages3d = kicad; # Added 2019-11-25
-  kindlegen = throw "kindlegen has been removed from nixpkgs, as it's abandoned and no longer available for download."; # Added 2021-03-09
-  kinetic-cpp-client = throw "kinetic-cpp-client has been removed from nixpkgs, as it's abandoned."; # Added 2020-04-28
+  kindlegen = throw "kindlegen has been removed from nixpkgs, as it's abandoned and no longer available for download"; # Added 2021-03-09
+  kinetic-cpp-client = throw "kinetic-cpp-client has been removed from nixpkgs, as it's abandoned"; # Added 2020-04-28
   kino = throw "kino has been removed because it was broken and abandoned"; # Added 2021-04-25
-  knockknock = throw "knockknock has been removed from nixpkgs because the upstream project is abandoned."; # Added 2022-01-01
+  knockknock = throw "knockknock has been removed from nixpkgs because the upstream project is abandoned"; # Added 2022-01-01
   kodiGBM = kodi-gbm;
   kodiPlain = kodi;
   kodiPlainWayland = kodi-wayland;
@@ -572,8 +565,8 @@ mapAliases ({
   libcap_manpages = throw "'libcap_manpages' has been renamed to/replaced by 'libcap.doc'"; # Converted to throw 2022-02-22
   libcap_pam = if stdenv.isLinux then libcap.pam else null; # Added 2016-04-29
   libcap_progs = throw "'libcap_progs' has been renamed to/replaced by 'libcap.out'"; # Converted to throw 2022-02-22
-  libco-canonical = throw "libco-canonical: Canonical deleted the repo, libco-canonical is not used anymore."; # Added 2021-05-16
-  libcroco = throw "libcroco has been removed as it's no longer used in any derivations."; # Added 2020-03-04
+  libco-canonical = throw "libco-canonical: Canonical deleted the repo, libco-canonical is not used anymore"; # Added 2021-05-16
+  libcroco = throw "libcroco has been removed as it's no longer used in any derivations"; # Added 2020-03-04
   libdbusmenu-glib = throw "'libdbusmenu-glib' has been renamed to/replaced by 'libdbusmenu'"; # Converted to throw 2022-02-22
   libdbusmenu_qt5 = throw "'libdbusmenu_qt5' has been renamed to/replaced by 'libsForQt5.libdbusmenu'"; # Converted to throw 2022-02-22
   liberation_ttf_v1_from_source = throw "'liberation_ttf_v1_from_source' has been renamed to/replaced by 'liberation_ttf_v1'"; # Converted to throw 2022-02-22
@@ -585,26 +578,24 @@ mapAliases ({
   libgpgerror = libgpg-error; # Added 2021-09-04
   libgroove = throw "libgroove has been removed, because it depends on an outdated and insecure version of ffmpeg"; # Added 2022-01-21
   libgumbo = throw "'libgumbo' has been renamed to/replaced by 'gumbo'"; # Converted to throw 2022-02-22
-  libindicate = throw "libindacate has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # Added 2019-12-10
-  libindicate-gtk2 = throw "libindacate-gtk3 has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # Added 2019-12-10
-  libindicate-gtk3 = throw "libindacate-gtk2 has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # Added 2019-12-10
   libintlOrEmpty = lib.optional (!stdenv.isLinux || stdenv.hostPlatform.libc != "glibc") gettext; # Added 2018-03-14
   libjpeg_drop = libjpeg_original; # Added 2020-06-05
   libjson_rpc_cpp = throw "'libjson_rpc_cpp' has been renamed to/replaced by 'libjson-rpc-cpp'"; # Converted to throw 2022-02-22
-  libkml = throw "libkml has been removed from nixpkgs, as it's abandoned and no package needed it."; # Added 2021-11-09
+  libkml = throw "libkml has been removed from nixpkgs, as it's abandoned and no package needed it"; # Added 2021-11-09
   liblapackWithoutAtlas = throw "'liblapackWithoutAtlas' has been renamed to/replaced by 'lapack-reference'"; # Converted to throw 2022-02-22
   liblastfm = libsForQt5.liblastfm; # Added 2020-06-14
   liblrdf = throw "'liblrdf' has been renamed to/replaced by 'lrdf'"; # Converted to throw 2022-02-22
   libmsgpack = throw "'libmsgpack' has been renamed to/replaced by 'msgpack'"; # Converted to throw 2022-02-22
   libosmpbf = throw "libosmpbf was removed because it is no longer required by osrm-backend";
+  libpng_apng = throw "libpng_apng has been removed, because it is equivalent to libpng"; # Added 2021-03-21
   libqmatrixclient = throw "libqmatrixclient was renamed to libquotient"; # Added 2020-04-09
   libqrencode = throw "'libqrencode' has been renamed to/replaced by 'qrencode'"; # Converted to throw 2022-02-22
   librdf = lrdf; # Added 2020-03-22
   librecad2 = throw "'librecad2' has been renamed to/replaced by 'librecad'"; # Converted to throw 2022-02-22
+  libressl_3_2 = throw "'libressl_3_2' has reached end-of-life "; # Added 2022-03-19
   librsync_0_9 = throw "librsync_0_9 has been removed"; # Added 2021-07-24
   libseat = seatd; # Added 2021-06-24
-  libsexy = throw "libsexy has been removed from nixpkgs, as it's abandoned and no package needed it."; # Added 2019-12-10
-  libstdcxxHook = throw "libstdcxx hook has been removed because cc-wrapper is now directly aware of the c++ standard library intended to be used."; # Added 2020-06-22
+  libstdcxxHook = throw "libstdcxx hook has been removed because cc-wrapper is now directly aware of the c++ standard library intended to be used"; # Added 2020-06-22
   libsysfs = throw "'libsysfs' has been renamed to/replaced by 'sysfsutils'"; # Converted to throw 2022-02-22
   libtidy = throw "'libtidy' has been renamed to/replaced by 'html-tidy'"; # Converted to throw 2022-02-22
   libtorrentRasterbar = libtorrent-rasterbar; # Added 2020-12-20
@@ -620,10 +611,10 @@ mapAliases ({
   libva1-full = throw "'libva1-full' has been renamed to/replaced by 'libva1'"; # Converted to throw 2022-02-22
   libwnck3 = libwnck;
   lilypond-unstable = lilypond; # Added 2021-03-11
-  lilyterm = throw "lilyterm has been removed from nixpkgs, because it was relying on a vte version that depended on python2."; # Added 2022-01-14
-  lilyterm-git = throw "lilyterm-git has been removed from nixpkgs, because it was relying on a vte version that depended on python2."; # Added 2022-01-14
+  lilyterm = throw "lilyterm has been removed from nixpkgs, because it was relying on a vte version that depended on python2"; # Added 2022-01-14
+  lilyterm-git = throw "lilyterm-git has been removed from nixpkgs, because it was relying on a vte version that depended on python2"; # Added 2022-01-14
   links = throw "'links' has been renamed to/replaced by 'links2'"; # Converted to throw 2022-02-22
-  linuxband = throw "linuxband has been removed from nixpkgs, as it's abandoned upstream."; # Added 2021-12-09
+  linuxband = throw "linuxband has been removed from nixpkgs, as it's abandoned upstream"; # Added 2021-12-09
 
   # Linux kernels
   linux-rt_5_10 = linuxKernel.kernels.linux_rt_5_10;
@@ -635,6 +626,7 @@ mapAliases ({
   linuxPackages_5_10 = linuxKernel.packages.linux_5_10;
   linuxPackages_5_15 = linuxKernel.packages.linux_5_15;
   linuxPackages_5_16 = linuxKernel.packages.linux_5_16;
+  linuxPackages_5_17 = linuxKernel.packages.linux_5_17;
   linuxPackages_5_4 = linuxKernel.packages.linux_5_4;
   linuxPackages_hardkernel_4_14 = linuxKernel.packages.hardkernel_4_14;
   linuxPackages_rpi0 = linuxKernel.packages.linux_rpi1;
@@ -652,6 +644,7 @@ mapAliases ({
   linux_5_10 = linuxKernel.kernels.linux_5_10;
   linux_5_15 = linuxKernel.kernels.linux_5_15;
   linux_5_16 = linuxKernel.kernels.linux_5_16;
+  linux_5_17 = linuxKernel.kernels.linux_5_17;
   linux_5_4 = linuxKernel.kernels.linux_5_4;
   linux_mptcp_95 = linuxKernel.kernels.linux_mptcp_95;
   linux_rpi0 = linuxKernel.kernels.linux_rpi1;
@@ -698,7 +691,7 @@ mapAliases ({
   lua5_1_sockets = throw "'lua5_1_sockets' has been renamed to/replaced by 'lua51Packages.luasocket'"; # Converted to throw 2022-02-22
   lua5_expat = throw "'lua5_expat' has been renamed to/replaced by 'luaPackages.luaexpat'"; # Converted to throw 2022-02-22
   lua5_sec = throw "'lua5_sec' has been renamed to/replaced by 'luaPackages.luasec'"; # Converted to throw 2022-02-22
-  lumpy = throw "lumpy has been removed from nixpkgs, as it is stuck on python2."; # Added 2022-01-12
+  lumpy = throw "lumpy has been removed from nixpkgs, as it is stuck on python2"; # Added 2022-01-12
   lxappearance-gtk3 = throw "lxappearance-gtk3 has been removed. Use lxappearance instead, which now defaults to Gtk3"; # Added 2020-06-03
   lzma = xz; # moved from top-level 2021-03-14
 
@@ -706,7 +699,7 @@ mapAliases ({
 
   m3d-linux = throw "'m3d-linux' has been renamed to/replaced by 'm33-linux'"; # Converted to throw 2022-02-22
   mail-notification = throw "mail-notification has been removed from nixpkgs, as it's unmaintained and has dependencies on old gnome libraries we want to remove"; # Added 2021-08-21
-  mailpile = throw "mailpile was removed from nixpkgs, as it is stuck on python2."; # Added 2022-01-12
+  mailpile = throw "mailpile was removed from nixpkgs, as it is stuck on python2"; # Added 2022-01-12
   man_db = throw "'man_db' has been renamed to/replaced by 'man-db'"; # Converted to throw 2022-02-22
   manpages = throw "'manpages' has been renamed to/replaced by 'man-pages'"; # Converted to throw 2022-02-22
   marathon = throw "marathon has been removed from nixpkgs, as it's unmaintained"; # Added 2020-08-15
@@ -714,34 +707,31 @@ mapAliases ({
   matcha = throw "matcha was renamed to matcha-gtk-theme"; # added 2020-05-09
   mathics = throw "mathics has been removed from nixpkgs, as it's unmaintained"; # Added 2020-08-15
   matrique = spectral; # Added 2020-01-27
-  mbedtls_1_3 = throw "mbedtls_1_3 is end of life, see https://tls.mbed.org/kb/how-to/upgrade-2.0"; # Added 2019-12-08
   mcgrid = throw "mcgrid has been removed from nixpkgs, as it's not compatible with rivet 3"; # Added 2020-05-23
-  mcomix = throw "mcomix has been removed from nixpkgs, as it's unmaintained; try mcomix3 a Python 3 fork"; # Added 2019-12-10, modified 2020-11-25
   mediatomb = throw "mediatomb is no longer maintained upstream, use gerbera instead"; # added 2022-01-04
   meme = meme-image-generator; # Added 2021-04-21
   memtest86 = throw "'memtest86' has been renamed to/replaced by 'memtest86plus'"; # Converted to throw 2022-02-22
   mercurial_4 = throw "mercurial_4 has been removed as it's unmaintained"; # Added 2021-10-18
   mesos = throw "mesos has been removed from nixpkgs, as it's unmaintained"; # Added 2020-08-15
   mess = mame; # Added 2019-10-30
-  metamorphose2 = throw "metamorphose2 has been removed from nixpkgs, as it was stuck on python2."; # Added 2022-01-12
-  mididings = throw "mididings has been removed from nixpkgs as it doesn't support recent python3 versions and its upstream stopped maintaining it."; # Added 2022-01-12
+  metamorphose2 = throw "metamorphose2 has been removed from nixpkgs, as it was stuck on python2"; # Added 2022-01-12
+  mididings = throw "mididings has been removed from nixpkgs as it doesn't support recent python3 versions and its upstream stopped maintaining it"; # Added 2022-01-12
   midoriWrapper = throw "'midoriWrapper' has been renamed to/replaced by 'midori'"; # Converted to throw 2022-02-22
   mime-types = mailcap; # Added 2022-01-21
-  mimms = throw "mimms has been removed from nixpkgs as the upstream project is stuck on python2."; # Added 2022-01-01
+  mimms = throw "mimms has been removed from nixpkgs as the upstream project is stuck on python2"; # Added 2022-01-01
   minergate-cli = throw "minergatecli has been removed from nixpkgs, because the package is unmaintained and the site has a bad reputation"; # Added 2021-08-13
   minergate = throw "minergate has been removed from nixpkgs, because the package is unmaintained and the site has a bad reputation"; # Added 2021-08-13
   minetime = throw "minetime has been removed from nixpkgs, because it was discontinued 2021-06-22"; # Added 2021-10-14
-  mirage = throw "mirage has been removed from nixpkgs, as it's unmaintained"; # Added 2019-12-10
   mist = throw "mist has been removed as the upstream project has been abandoned, see https://github.com/ethereum/mist#mist-browser-deprecated"; # Added 2020-08-15
   mlt-qt5 = throw "'mlt-qt5' has been renamed to/replaced by 'libsForQt5.mlt'"; # Converted to throw 2022-02-22
   mobile_broadband_provider_info = throw "'mobile_broadband_provider_info' has been renamed to/replaced by 'mobile-broadband-provider-info'"; # Converted to throw 2022-02-22
-  moby = throw "moby has been removed, merged into linuxkit in 2018.  Use linuxkit instead.";
+  moby = throw "moby has been removed, merged into linuxkit in 2018.  Use linuxkit instead";
   module_init_tools = throw "'module_init_tools' has been renamed to/replaced by 'kmod'"; # Converted to throw 2022-02-22
   monero = monero-cli; # Added 2021-11-28
   monodevelop = throw "monodevelop has been removed from nixpgks"; # Added 2022-01-15
   mopidy-gmusic = throw "mopidy-gmusic has been removed because Google Play Music was discontinued"; # Added 2021-03-07
-  mopidy-local-images = throw "mopidy-local-images has been removed as it's unmaintained. Its functionality has been merged into the mopidy-local extension."; # Added 2020-10-18
-  mopidy-local-sqlite = throw "mopidy-local-sqlite has been removed as it's unmaintained. Its functionality has been merged into the mopidy-local extension."; # Added 2020-10-18
+  mopidy-local-images = throw "mopidy-local-images has been removed as it's unmaintained. Its functionality has been merged into the mopidy-local extension"; # Added 2020-10-18
+  mopidy-local-sqlite = throw "mopidy-local-sqlite has been removed as it's unmaintained. Its functionality has been merged into the mopidy-local extension"; # Added 2020-10-18
 
   morituri = throw "'morituri' has been renamed to/replaced by 'whipper'"; # Converted to throw 2022-02-22
   mozart-binary = mozart2-binary; # Added 2019-09-23
@@ -756,9 +746,6 @@ mapAliases ({
   mysql-client = hiPrio mariadb.client;
   mysql = mariadb; # moved from top-level 2021-03-14
 
-  # NOTE: 2018-07-12: legacy alias:
-  # grsecurity business is done: https://www.theregister.co.uk/2018/02/08/bruce_perens_grsecurity_anti_slapp/
-
   # floating point textures patents are expired,
   # so package reduced to alias
   mesa_drivers = mesa.drivers;
@@ -770,7 +757,7 @@ mapAliases ({
   mumsi = throw "mumsi has been removed from nixpkgs, as it's unmaintained and does not build anymore"; # Added 2021-11-18
   mupen64plus1_5 = throw "'mupen64plus1_5' has been renamed to/replaced by 'mupen64plus'"; # Converted to throw 2022-02-22
   mx = throw "graalvm8 and its tools were deprecated in favor of graalvm8-ce"; # Added 2021-10-15
-  mxisd = throw "mxisd has been removed from nixpkgs as it has reached end of life, see https://github.com/kamax-matrix/mxisd/blob/535e0a5b96ab63cb0ddef90f6f42c5866407df95/EOL.md#end-of-life-notice . ma1sd may be a suitable alternative."; # Added 2021-04-15
+  mxisd = throw "mxisd has been removed from nixpkgs as it has reached end of life, see https://github.com/kamax-matrix/mxisd/blob/535e0a5b96ab63cb0ddef90f6f42c5866407df95/EOL.md#end-of-life-notice . ma1sd may be a suitable alternative"; # Added 2021-04-15
   mysqlWorkbench = throw "'mysqlWorkbench' has been renamed to/replaced by 'mysql-workbench'"; # Converted to throw 2022-02-22
 
   ### N ###
@@ -810,19 +797,17 @@ mapAliases ({
   nottetris2 = throw "nottetris2 was removed because it is unmaintained by upstream and broken"; # Added 2022-01-15
   now-cli = throw "now-cli has been replaced with nodePackages.vercel"; # Added 2021-08-05
   nxproxy = throw "'nxproxy' has been renamed to/replaced by 'nx-libs'"; # Converted to throw 2022-02-22
-  nylas-mail-bin = throw "nylas-mail-bin was deprecated on 2019-09-11: abandoned by upstream";
 
   ### O ###
 
-  oracleXE = throw "oracleXE has been removed, as it's heavily outdated and unmaintained."; # Added 2020-10-09
+  oracleXE = throw "oracleXE has been removed, as it's heavily outdated and unmaintained"; # Added 2020-10-09
   OVMF-CSM = throw "OVMF-CSM has been removed in favor of OVMFFull"; # Added 2021-10-16
   OVMF-secureBoot = throw "OVMF-secureBoot has been removed in favor of OVMFFull"; # Added 2021-10-16
   oauth2_proxy = oauth2-proxy; # Added 2021-04-18
-  oblogout = throw "oblogout has been removed from nixpkgs, as it's archived upstream."; # Added 2019-12-10
-  octoprint-plugins = throw "octoprint-plugins are now part of the octoprint.python.pkgs package set."; # Added 2021-01-24
+  octoprint-plugins = throw "octoprint-plugins are now part of the octoprint.python.pkgs package set"; # Added 2021-01-24
   ocz-ssd-guru = throw "ocz-ssd-guru has been removed due to there being no source available"; # Added 2021-07-12
   ofp = throw "ofp is not compatible with odp-dpdk";
-  olifant = throw "olifant has been removed from nixpkgs, as it was unmaintained."; # Added 2021-08-05
+  olifant = throw "olifant has been removed from nixpkgs, as it was unmaintained"; # Added 2021-08-05
   onnxruntime = throw "onnxruntime has been removed due to poor maintainability"; # Added 2020-12-04
   openbazaar = throw "openbazzar has been removed from nixpkgs as upstream has abandoned the project"; # Added 2022-01-06
   openbazaar-client = throw "openbazzar-client has been removed from nixpkgs as upstream has abandoned the project"; # Added 2022-01-06
@@ -838,7 +823,6 @@ mapAliases ({
   opensans-ttf = throw "'opensans-ttf' has been renamed to/replaced by 'open-sans'"; # Converted to throw 2022-02-22
   openssh_with_kerberos = throw "'openssh_with_kerberos' has been renamed to/replaced by 'openssh'"; # Converted to throw 2022-02-22
   orchis = orchis-theme; # Added 2021-06-09
-  osquery = throw "osquery has been removed."; # Added 2019-11-24
   osxfuse = macfuse-stubs; # Added 2021-03-20
   otter-browser = throw "otter-browser has been removed from nixpkgs, as it was unmaintained"; # Added 2020-02-02
   owncloudclient = throw "'owncloudclient' has been renamed to/replaced by 'owncloud-client'"; # Converted to throw 2022-02-22
@@ -853,10 +837,11 @@ mapAliases ({
   parity = openethereum; # Added 2020-08-01
   parity-ui = throw "parity-ui was removed because it was broken and unmaintained by upstream"; # Added 2022-01-10
   parquet-cpp = throw "'parquet-cpp' has been renamed to/replaced by 'arrow-cpp'"; # Converted to throw 2022-02-22
+  patchmatrix = throw "'patchmatrix' has been renamed to/replaced by 'open-music-kontrollers.patchmatrix'"; # Added 2022-03-09
   pass-otp = throw "'pass-otp' has been renamed to/replaced by 'pass.withExtensions'"; # Converted to throw 2022-02-22
   pdfmod = throw "pdfmod has been removed"; # Added 2022-01-15
   pdfread = throw "pdfread has been remove because it is unmaintained for years and the sources are no longer available"; # Added 2021-07-22
-  pdf-redact-tools = throw "pdf-redact-tools has been removed from nixpkgs because the upstream has abandoned the project."; # Added 2022-01-01
+  pdf-redact-tools = throw "pdf-redact-tools has been removed from nixpkgs because the upstream has abandoned the project"; # Added 2022-01-01
   pdf2htmlEx = throw "pdf2htmlEx has been removed from nixpkgs, as it was unmaintained"; # Added 2020-11-03
   perlXMLParser = throw "'perlXMLParser' has been renamed to/replaced by 'perlPackages.XMLParser'"; # Converted to throw 2022-02-22
   perlArchiveCpio = throw "'perlArchiveCpio' has been renamed to/replaced by 'perlPackages.ArchiveCpio'"; # Converted to throw 2022-02-22
@@ -867,7 +852,7 @@ mapAliases ({
   phantomjs = throw "phantomjs 1.9.8 has been dropped due to lack of maintenance and security issues"; # Added 2022-02-20
 
   # Obsolete PHP version aliases
-  php73 = throw "php73 has been dropped due to the lack of maintanence from upstream for future releases."; # Added 2021-06-03
+  php73 = throw "php73 has been dropped due to the lack of maintanence from upstream for future releases"; # Added 2021-06-03
   php73Packages = php73; # Added 2021-06-03
   php73Extensions = php73; # Added 2021-06-03
 
@@ -925,18 +910,19 @@ mapAliases ({
   pidginotr = throw "'pidginotr' has been renamed to/replaced by 'pidgin-otr'"; # Converted to throw 2022-02-22
   pidginsipe = throw "'pidginsipe' has been renamed to/replaced by 'pidgin-sipe'"; # Converted to throw 2022-02-22
   pidginwindowmerge = throw "'pidginwindowmerge' has been renamed to/replaced by 'pidgin-window-merge'"; # Converted to throw 2022-02-22
-  pifi = throw "pifi has been removed from nixpkgs, as it is no longer developed."; # Added 2022-01-19
+  pifi = throw "pifi has been removed from nixpkgs, as it is no longer developed"; # Added 2022-01-19
   piwik = throw "'piwik' has been renamed to/replaced by 'matomo'"; # Converted to throw 2022-02-22
   pkgconfig = pkg-config; # Added 2018-02-02, moved to aliases.nix 2021-01-18
   pkgconfigUpstream = throw "'pkgconfigUpstream' has been renamed to/replaced by 'pkg-configUpstream'"; # Converted to throw 2022-02-22
-  planner = throw "planner has been removed from nixpkgs, as it is no longer developed and still uses python2/PyGTK."; # Added 2021-02-02
+  planner = throw "planner has been removed from nixpkgs, as it is no longer developed and still uses python2/PyGTK"; # Added 2021-02-02
   pleroma-otp = pleroma; # Added 2021-07-10
   plexpy = throw "'plexpy' has been renamed to/replaced by 'tautulli'"; # Converted to throw 2022-02-22
   pltScheme = racket; # just to be sure
   pmtools = throw "'pmtools' has been renamed to/replaced by 'acpica-tools'"; # Converted to throw 2022-02-22
   polarssl = throw "'polarssl' has been renamed to/replaced by 'mbedtls'"; # Converted to throw 2022-02-22
-  polysh = throw "polysh has been removed from nixpkgs as the upstream has abandoned the project."; # Added 2022-01-01
+  polysh = throw "polysh has been removed from nixpkgs as the upstream has abandoned the project"; # Added 2022-01-01
   poppler_qt5 = throw "'poppler_qt5' has been renamed to/replaced by 'libsForQt5.poppler'"; # Converted to throw 2022-02-22
+  powerdns = pdns; # Added 2022-03-28
 
   # postgresql
   postgresql96 = postgresql_9_6;
@@ -960,40 +946,36 @@ mapAliases ({
   tlauncher = throw "tlauncher has been removed because there questionable practices and legality concerns";
   tsearch_extras = postgresqlPackages.tsearch_extras;
 
-  phonon = throw "phonon: Please use libsForQt5.phonon, as Qt4 support in this package has been removed."; # Added 2019-11-22
-  phonon-backend-gstreamer = throw "phonon-backend-gstreamer: Please use libsForQt5.phonon-backend-gstreamer, as Qt4 support in this package has been removed."; # Added 2019-11-22
-  phonon-backend-vlc = throw "phonon-backend-vlc: Please use libsForQt5.phonon-backend-vlc, as Qt4 support in this package has been removed."; # Added 2019-11-22
   pinentry_curses = pinentry-curses; # Added 2019-10-14
   pinentry_emacs = pinentry-emacs; # Added 2019-10-14
   pinentry_gnome = pinentry-gnome; # Added 2019-10-14
   pinentry_gtk2 = pinentry-gtk2; # Added 2019-10-14
   pinentry_qt = pinentry-qt; # Added 2019-10-14
   pinentry_qt5 = pinentry-qt; # Added 2020-02-11
-  pmenu = throw "pmenu has been removed from nixpkgs, as its maintainer is no longer interested in the package."; # Added 2019-12-10
   privateer = throw "privateer was removed because it was broken"; # Added 2021-05-18
   processing3 = processing; # Added 2019-08-16
   procps-ng = throw "'procps-ng' has been renamed to/replaced by 'procps'"; # Converted to throw 2022-02-22
   proglodyte-wasm = throw "proglodyte-wasm has been removed from nixpkgs, because it is unmaintained since 5 years with zero github stars"; # Added 2021-06-30
-  proj_5 = throw "Proj-5 has been removed from nixpkgs, use proj instead."; # Added 2021-04-12
-  prometheus-cups-exporter = throw "outdated and broken by design; removed by developer."; # Added 2021-03-16
+  proj_5 = throw "Proj-5 has been removed from nixpkgs, use proj instead"; # Added 2021-04-12
+  prometheus-cups-exporter = throw "outdated and broken by design; removed by developer"; # Added 2021-03-16
   pulseaudioLight = throw "'pulseaudioLight' has been renamed to/replaced by 'pulseaudio'"; # Converted to throw 2022-02-22
-  pulseeffects = throw "Use pulseeffects-legacy if you use PulseAudio and easyeffects if you use PipeWire."; # Added 2021-02-13
+  pulseeffects = throw "Use pulseeffects-legacy if you use PulseAudio and easyeffects if you use PipeWire"; # Added 2021-02-13
   pulseeffects-pw = easyeffects; # Added 2021-07-07
   pyIRCt = throw "pyIRCt has been removed from nixpkgs as it is unmaintained and python2-only";
   pyMAILt = throw "pyMAILt has been removed from nixpkgs as it is unmaintained and python2-only";
   pybind11 = throw "pybind11 was removed because pythonPackages.pybind11 for the appropriate version of Python should be used"; # Added 2021-05-14
-  pybitmessage = throw "pybitmessage was removed from nixpkgs as it is stuck on python2."; # Added 2022-01-01
+  pybitmessage = throw "pybitmessage was removed from nixpkgs as it is stuck on python2"; # Added 2022-01-01
   pygmentex = texlive.bin.pygmentex; # Added 2019-12-15
-  pyload = throw "pyload has been removed from nixpkgs, as it was unmaintained."; # Added 2021-03-21
-  pynagsystemd = throw "pynagsystemd was removed as it was unmaintained and incompatible with recent systemd versions. Instead use its fork check_systemd."; # Added 2020-10-24
+  pyload = throw "pyload has been removed from nixpkgs, as it was unmaintained"; # Added 2021-03-21
+  pynagsystemd = throw "pynagsystemd was removed as it was unmaintained and incompatible with recent systemd versions. Instead use its fork check_systemd"; # Added 2020-10-24
   pyo3-pack = maturin;
-  pyrex = throw "pyrex has been removed from nixpkgs as the project is still stuck on python2."; # Added 2022-01-12
-  pyrex095 = throw "pyrex has been removed from nixpkgs as the project is still stuck on python2."; # Added 2022-01-12
-  pyrex096 = throw "pyrex has been removed from nixpkgs as the project is still stuck on python2."; # Added 2022-01-12
-  pyrit = throw "pyrit has been removed from nixpkgs as the project is still stuck on python2."; # Added 2022-01-01
+  pyrex = throw "pyrex has been removed from nixpkgs as the project is still stuck on python2"; # Added 2022-01-12
+  pyrex095 = throw "pyrex has been removed from nixpkgs as the project is still stuck on python2"; # Added 2022-01-12
+  pyrex096 = throw "pyrex has been removed from nixpkgs as the project is still stuck on python2"; # Added 2022-01-12
+  pyrit = throw "pyrit has been removed from nixpkgs as the project is still stuck on python2"; # Added 2022-01-01
   python = python2; # Added 2022-01-11
   python-swiftclient = swiftclient; # Added 2021-09-09
-  python2nix = throw "python2nix has been removed as it is outdated. Use e.g. nixpkgs-pytools instead."; # Added 2021-03-08
+  python2nix = throw "python2nix has been removed as it is outdated. Use e.g. nixpkgs-pytools instead"; # Added 2021-03-08
   pythonFull = python2Full; # Added 2022-01-11
   pythonPackages = python.pkgs; # Added 2022-01-11
 
@@ -1006,15 +988,14 @@ mapAliases ({
   qmk_firmware = throw "qmk_firmware has been removed because it was broken"; # Added 2021-04-02
   qr-filetransfer = throw ''"qr-filetransfer" has been renamed to "qrcp"''; # Added 2020-12-02
   qt-3 = throw "qt-3 has been removed from nixpkgs, as it's unmaintained and insecure"; # Added 2021-02-15
-  qt-recordmydesktop = throw "qt-recordmydesktop has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # Added 2019-12-10
   qt5ct = libsForQt5.qt5ct; # Added 2021-12-27
   qtcurve = libsForQt5.qtcurve; # Added 2020-11-07
   qtkeychain = throw "the qtkeychain attribute (qt4 version) has been removes, use the qt5 version: libsForQt5.qtkeychain"; # Added 2021-08-04
   quagga = throw "quagga is no longer maintained upstream"; # Added 2021-04-22
   quake3game = throw "'quake3game' has been renamed to/replaced by 'ioquake3'"; # Converted to throw 2022-02-22
   quaternion-git = throw "quaternion-git has been removed in favor of the stable version 'quaternion'"; # Added 2020-04-09
-  quilter = throw "quilter has been removed from nixpkgs, as it was unmaintained."; # Added 2021-08-03
-  qvim = throw "qvim has been removed."; # Added 2020-08-31
+  quilter = throw "quilter has been removed from nixpkgs, as it was unmaintained"; # Added 2021-08-03
+  qvim = throw "qvim has been removed"; # Added 2020-08-31
   qweechat = throw "qweechat has been removed because it was broken"; # Added 2021-03-08
   qwt6 = throw "'qwt6' has been renamed to/replaced by 'libsForQt5.qwt'"; # Converted to throw 2022-02-22
 
@@ -1022,17 +1003,16 @@ mapAliases ({
 
   radare2-cutter = cutter; # Added 2021-03-30
   raspberrypi-tools = throw "raspberrypi-tools has been removed in favor of identical 'libraspberrypi'"; # Added 2020-12-24
-  rawdog = throw "rawdog has been removed from nixpkgs as it still requires python2."; # Added 2022-01-01
-  rdf4store = throw "rdf4store has been removed from nixpkgs."; # Added 2019-12-21
+  rawdog = throw "rawdog has been removed from nixpkgs as it still requires python2"; # Added 2022-01-01
   rdiff_backup = throw "'rdiff_backup' has been renamed to/replaced by 'rdiff-backup'"; # Converted to throw 2022-02-22
   rdmd = throw "'rdmd' has been renamed to/replaced by 'dtools'"; # Converted to throw 2022-02-22
   readline5 = throw "readline-5 is no longer supported in nixpkgs, please use 'readline' for main supported version"; # Added 2022-02-20
   readline62 = throw "readline-6.2 is no longer supported in nixpkgs, please use 'readline' for main supported version"; # Added 2022-02-20
   readline80 = throw "readline-8.0 is no longer supported in nixpkgs, please use 'readline' for main supported version or 'readline81' for most recent version"; # Added 2021-04-22
-  recordmydesktop = throw "recordmydesktop has been removed from nixpkgs, as it's unmaintained and uses deprecated libraries"; # Added 2019-12-10
   redkite = throw "redkite was archived by upstream"; # Added 2021-04-12
   redshift-wlr = throw "redshift-wlr has been replaced by gammastep"; # Added 2021-12-25
-  renpy = throw "renpy has been removed from nixpkgs, it was unmaintained and the latest packaged version required python2."; # Added 2022-01-12
+  reicast = throw "reicast has been removed from nixpkgs as it is unmaintained, please use flycast instead"; # Added 2022-03-07
+  renpy = throw "renpy has been removed from nixpkgs, it was unmaintained and the latest packaged version required python2"; # Added 2022-01-12
   residualvm = throw "residualvm was merged to scummvm code in 2018-06-15; consider using scummvm"; # Added 2021-11-27
   retroArchCores = throw "retroArchCores has been removed. Please use overrides instead, e.g.: `retroarch.override { cores = with libretro; [ ... ]; }`"; # Added 2021-11-19
   retroshare06 = retroshare;
@@ -1043,6 +1023,7 @@ mapAliases ({
   rkt = throw "rkt was archived by upstream"; # Added 2020-05-16
   rng_tools = throw "'rng_tools' has been renamed to/replaced by 'rng-tools'"; # Converted to throw 2022-02-22
   robomongo = throw "'robomongo' has been renamed to/replaced by 'robo3t'"; # Converted to throw 2022-02-22
+  rockbox_utility = rockbox-utility; # Added 2022-03-17
   rocm-runtime-ext = throw "rocm-runtime-ext has been removed, since its functionality was added to rocm-runtime"; #added 2020-08-21
   rpiboot-unstable = rpiboot; # Added 2021-07-30
   rssglx = throw "'rssglx' has been renamed to/replaced by 'rss-glx'"; # Converted to throw 2022-02-22
@@ -1081,27 +1062,24 @@ mapAliases ({
   scyther = throw "scyther has been removed since it currently only supports Python 2, see https://github.com/cascremers/scyther/issues/20"; # Added 2021-10-07
   sdlmame = mame; # Added 2019-10-30
   seeks = throw "seeks has been removed from nixpkgs, as it was unmaintained"; # Added 2020-06-21
-  seg3d = throw "seg3d has been removed from nixpkgs (2019-11-10)";
   sepolgen = throw "sepolgen was merged into selinux-python"; # Added 2021-11-11
   shared_mime_info = throw "'shared_mime_info' has been renamed to/replaced by 'shared-mime-info'"; # Converted to throw 2022-02-22
   shellinabox = throw "shellinabox has been removed from nixpkgs, as it was unmaintained upstream"; # Added 2021-12-15
-  sickbeard = throw "sickbeard has been removed from nixpkgs, as it was unmaintained."; # Added 2022-01-01
-  sickrage = throw "sickbeard has been removed from nixpkgs, as it was unmaintained."; # Added 2022-01-01
+  sickbeard = throw "sickbeard has been removed from nixpkgs, as it was unmaintained"; # Added 2022-01-01
+  sickrage = throw "sickbeard has been removed from nixpkgs, as it was unmaintained"; # Added 2022-01-01
   sigurlx = throw "sigurlx has been removed (upstream is gone)"; # Added 2022-01-24
   skrooge2 = throw "'skrooge2' has been renamed to/replaced by 'skrooge'"; # Converted to throw 2022-02-22
   sky = throw "sky has been removed from nixpkgs (2020-09-16)";
   skype = throw "'skype' has been renamed to/replaced by 'skypeforlinux'"; # Converted to throw 2022-02-22
-  skype4pidgin = throw "skype4pidgin has been remove from nixpkgs, because it stopped working when classic Skype was retired."; # Added 2021-07-14
-  skype_call_recorder = throw "skype_call_recorder has been removed from nixpkgs, because it stopped working when classic Skype was retired."; # Added 2020-10-31
+  skype4pidgin = throw "skype4pidgin has been remove from nixpkgs, because it stopped working when classic Skype was retired"; # Added 2021-07-14
+  skype_call_recorder = throw "skype_call_recorder has been removed from nixpkgs, because it stopped working when classic Skype was retired"; # Added 2020-10-31
   slack-dark = slack; # Added 2020-03-27
   slic3r-prusa3d = throw "'slic3r-prusa3d' has been renamed to/replaced by 'prusa-slicer'"; # Converted to throw 2022-02-22
-  slim = throw "slim has been removed. Please use a different display-manager"; # Added 2019-11-11
-  slimThemes = throw "slimThemes has been removed because slim has been also"; # Added 2019-11-11
   slurm-full = throw "'slurm-full' has been renamed to/replaced by 'slurm'"; # Converted to throw 2022-02-22
   slurm-llnl = slurm; # renamed July 2017
   slurm-llnl-full = slurm-full; # renamed July 2017
   smbclient = throw "'smbclient' has been renamed to/replaced by 'samba'"; # Converted to throw 2022-02-22
-  smugline = throw "smugline has been removed from nixpkgs, as it's unmaintained and depends on deprecated libraries."; # Added 2020-11-04
+  smugline = throw "smugline has been removed from nixpkgs, as it's unmaintained and depends on deprecated libraries"; # Added 2020-11-04
   solr_8 = solr; # Added 2021-01-30
 
   # Added 2020-02-10
@@ -1132,11 +1110,10 @@ mapAliases ({
   speedtest_cli = throw "'speedtest_cli' has been renamed to/replaced by 'speedtest-cli'"; # Converted to throw 2022-02-22
   spice_gtk = throw "'spice_gtk' has been renamed to/replaced by 'spice-gtk'"; # Converted to throw 2022-02-22
   spice_protocol = throw "'spice_protocol' has been renamed to/replaced by 'spice-protocol'"; # Converted to throw 2022-02-22
-  spidermonkey_1_8_5 = throw "spidermonkey_1_8_5 has been removed, because it is based on Firefox 4.0 from 2011."; # added 2021-05-03
-  spidermonkey_38 = throw "spidermonkey_38 has been removed. Please use spidermonkey_78 instead."; # Added 2021-03-21
-  spidermonkey_52 = throw "spidermonkey_52 has been removed. Please use spidermonkey_78 instead."; # Added 2019-10-16
-  spidermonkey_60 = throw "spidermonkey_60 has been removed. Please use spidermonkey_78 instead."; # Added 2021-03-21
-  spidermonkey_68 = throw "spidermonkey_68 has been removed. Please use spidermonkey_91 instead."; # added 2022-01-04
+  spidermonkey_1_8_5 = throw "spidermonkey_1_8_5 has been removed, because it is based on Firefox 4.0 from 2011"; # added 2021-05-03
+  spidermonkey_38 = throw "spidermonkey_38 has been removed. Please use spidermonkey_78 instead"; # Added 2021-03-21
+  spidermonkey_60 = throw "spidermonkey_60 has been removed. Please use spidermonkey_78 instead"; # Added 2021-03-21
+  spidermonkey_68 = throw "spidermonkey_68 has been removed. Please use spidermonkey_91 instead"; # added 2022-01-04
   # spidermonkey is not ABI upwards-compatible, so only allow this for nix-shell
   spidermonkey = spidermonkey_78; # Added 2020-10-09
   spring-boot = spring-boot-cli; # added 2020-04-24
@@ -1150,9 +1127,9 @@ mapAliases ({
   subversion19 = throw "subversion19 has been removed as it has reached its end of life"; # Added 2021-03-31
   sundials_3 = throw "sundials_3 was removed in 2020-02. outdated and no longer needed";
   surf-webkit2 = throw "'surf-webkit2' has been renamed to/replaced by 'surf'"; # Converted to throw 2022-02-22
-  svgcleaner = throw "svgcleaner has been removed."; # Added 2021-11-17
-  swec = throw "swec has been removed; broken and abandoned upstream."; # Added 2021-10-14
-  swfdec = throw "swfdec has been removed as broken and unmaintained."; # Added 2020-08-23
+  svgcleaner = throw "svgcleaner has been removed"; # Added 2021-11-17
+  swec = throw "swec has been removed; broken and abandoned upstream"; # Added 2021-10-14
+  swfdec = throw "swfdec has been removed as broken and unmaintained"; # Added 2020-08-23
   swtpm-tpm2 = swtpm; # Added 2021-02-26
   syncthing-cli = syncthing; # Added 2021-04-06
   synology-drive = throw "synology-drive has been superseded by synology-drive-client"; # Added 2021-11-26
@@ -1165,8 +1142,8 @@ mapAliases ({
 
   tahoelafs = throw "'tahoelafs' has been renamed to/replaced by 'tahoe-lafs'"; # Converted to throw 2022-02-22
   tangogps = foxtrotgps; # Added 2020-01-26
-  tdm = throw "tdm has been removed because nobody can figure out how to fix OpenAL integration. Use precompiled binary and `steam-run` instead.";
-  telepathy-qt = throw "telepathy-qt no longer supports Qt 4. Please use libsForQt5.telepathy instead."; # Added 2020-07-02
+  tdm = throw "tdm has been removed because nobody can figure out how to fix OpenAL integration. Use precompiled binary and `steam-run` instead";
+  telepathy-qt = throw "telepathy-qt no longer supports Qt 4. Please use libsForQt5.telepathy instead"; # Added 2020-07-02
   telepathy_farstream = throw "'telepathy_farstream' has been renamed to/replaced by 'telepathy-farstream'"; # Converted to throw 2022-02-22
   telepathy_gabble = throw "'telepathy_gabble' has been renamed to/replaced by 'telepathy-gabble'"; # Converted to throw 2022-02-22
   telepathy_glib = throw "'telepathy_glib' has been renamed to/replaced by 'telepathy-glib'"; # Converted to throw 2022-02-22
@@ -1191,17 +1168,17 @@ mapAliases ({
   tex-gyre-schola-math = throw "'tex-gyre-schola-math' has been renamed to/replaced by 'tex-gyre-math.schola'"; # Converted to throw 2022-02-22
   tex-gyre-termes-math = throw "'tex-gyre-termes-math' has been renamed to/replaced by 'tex-gyre-math.termes'"; # Converted to throw 2022-02-22
   tftp_hpa = throw "'tftp_hpa' has been renamed to/replaced by 'tftp-hpa'"; # Converted to throw 2022-02-22
-  thunderbird-68 = throw "Thunderbird 68 reached end of life with its final release 68.12.0 on 2020-08-25.";
+  thunderbird-68 = throw "Thunderbird 68 reached end of life with its final release 68.12.0 on 2020-08-25";
   thunderbird-bin-68 = thunderbird-68;
   timescale-prometheus = promscale; # Added 2020-09-29
   timetable = throw "timetable has been removed, as the upstream project has been abandoned"; # Added 2021-09-05
   tkcvs = tkrev; # Added 2022-03-07
   togglesg-download = throw "togglesg-download was removed 2021-04-30 as it's unmaintained"; # Added 2021-04-30
-  tomboy = throw "tomboy is not actively developed anymore and was removed."; # Added 2022-01-27
-  tomcat7 = throw "tomcat7 has been removed from nixpkgs as it has reached end of life."; # Added 2021-06-16
-  tomcat8 = throw "tomcat8 has been removed from nixpkgs as it has reached end of life."; # Added 2021-06-16
-  tomcat85 = throw "tomcat85 has been removed from nixpkgs as it has reached end of life."; # Added 2020-03-11
-  tor-arm = throw "tor-arm has been removed from nixpkgs as the upstream project has been abandoned."; # Added 2022-01-01
+  tomboy = throw "tomboy is not actively developed anymore and was removed"; # Added 2022-01-27
+  tomcat7 = throw "tomcat7 has been removed from nixpkgs as it has reached end of life"; # Added 2021-06-16
+  tomcat8 = throw "tomcat8 has been removed from nixpkgs as it has reached end of life"; # Added 2021-06-16
+  tomcat85 = throw "tomcat85 has been removed from nixpkgs as it has reached end of life"; # Added 2020-03-11
+  tor-arm = throw "tor-arm has been removed from nixpkgs as the upstream project has been abandoned"; # Added 2022-01-01
   torbrowser = throw "'torbrowser' has been renamed to/replaced by 'tor-browser-bundle-bin'"; # Converted to throw 2022-02-22
   torch = throw "torch has been removed, as the upstream project has been abandoned"; # Added 2020-03-28
   torch-hdf5 = throw "torch-hdf5 has been removed, as the upstream project has been abandoned"; # Added 2020-03-28
@@ -1212,21 +1189,21 @@ mapAliases ({
   transmission-remote-cli = "transmission-remote-cli has been removed, as the upstream project has been abandoned. Please use tremc instead"; # Added 2020-10-14
   transmission_gtk = throw "'transmission_gtk' has been renamed to/replaced by 'transmission-gtk'"; # Converted to throw 2022-02-22
   transmission_remote_gtk = throw "'transmission_remote_gtk' has been renamed to/replaced by 'transmission-remote-gtk'"; # Converted to throw 2022-02-22
-  transporter = throw "transporter has been removed. It was archived upstream, so it's considered abandoned.";
-  trebleshot = throw "trebleshot has been removed. It was archived upstream, so it's considered abandoned.";
-  trilium = throw "trilium has been removed. Please use trilium-desktop instead."; # Added 2020-04-29
+  transporter = throw "transporter has been removed. It was archived upstream, so it's considered abandoned";
+  trebleshot = throw "trebleshot has been removed. It was archived upstream, so it's considered abandoned";
+  trilium = throw "trilium has been removed. Please use trilium-desktop instead"; # Added 2020-04-29
   truecrypt = throw "'truecrypt' has been renamed to/replaced by 'veracrypt'"; # Converted to throw 2022-02-22
   tshark = throw "'tshark' has been renamed to/replaced by 'wireshark-cli'"; # Converted to throw 2022-02-22
   tuijam = throw "tuijam has been removed because Google Play Music was discontinued"; # Added 2021-03-07
   turbo-geth = throw "turbo-geth has been renamed to erigon"; # Added 2021-08-08
-  typora = throw "Newer versions of typora use anti-user encryption and refuse to start. As such it has been removed."; # Added 2021-09-11
+  typora = throw "Newer versions of typora use anti-user encryption and refuse to start. As such it has been removed"; # Added 2021-09-11
 
   ### U ###
 
   uberwriter = apostrophe; # Added 2020-04-23
   ubootBeagleboneBlack = ubootAmx335xEVM; # Added 2020-01-21
   ucsFonts = throw "'ucsFonts' has been renamed to/replaced by 'ucs-fonts'"; # Converted to throw 2022-02-22
-  ufraw = throw "ufraw is unmaintained and has been removed from nixpkgs. Its successor, nufraw, doesn't seem to be stable enough. Consider using Darktable for now."; # Added 2020-01-11
+  ufraw = throw "ufraw is unmaintained and has been removed from nixpkgs. Its successor, nufraw, doesn't seem to be stable enough. Consider using Darktable for now"; # Added 2020-01-11
   ultrastardx-beta = throw "'ultrastardx-beta' has been renamed to/replaced by 'ultrastardx'"; # Converted to throw 2022-02-22
   unicorn-emu = unicorn; # Added 2020-10-29
   unifiStable = unifi6; # Added 2020-12-28
@@ -1242,50 +1219,45 @@ mapAliases ({
   usb_modeswitch = throw "'usb_modeswitch' has been renamed to/replaced by 'usb-modeswitch'"; # Converted to throw 2022-02-22
   usbguard-nox = usbguard; # Added 2019-09-04
   utillinux = util-linux; # Added 2020-11-24
-  uzbl = throw "uzbl has been removed from nixpkgs, as it's unmaintained and uses insecure libraries";
 
   ### V ###
 
   v4l_utils = v4l-utils; # Added 2019-08-07
-  v8_3_16_14 = throw "v8_3_16_14 was removed in 2019-11-01: no longer referenced by other packages";
   vamp = { vampSDK = vamp-plugin-sdk; }; # Added 2020-03-26
   vapor = throw "vapor was removed because it was unmaintained and upstream service no longer exists";
-  varnish62 = throw "varnish62 was removed from nixpkgs, because it is unmaintained upstream. Please switch to a different release."; # Added 2021-07-26
-  varnish63 = throw "varnish63 was removed from nixpkgs, because it is unmaintained upstream. Please switch to a different release."; # Added 2021-07-26
-  varnish65 = throw "varnish65 was removed from nixpkgs, because it is unmaintained upstream. Please switch to a different release."; # Added 2021-09-15
+  varnish62 = throw "varnish62 was removed from nixpkgs, because it is unmaintained upstream. Please switch to a different release"; # Added 2021-07-26
+  varnish63 = throw "varnish63 was removed from nixpkgs, because it is unmaintained upstream. Please switch to a different release"; # Added 2021-07-26
+  varnish65 = throw "varnish65 was removed from nixpkgs, because it is unmaintained upstream. Please switch to a different release"; # Added 2021-09-15
+  varnish70 = throw "varnish70 was removed from nixpkgs, because it was superseded upstream. Please switch to a different release"; # Added 2022-03-17
   vdirsyncerStable  = vdirsyncer; # Added 2020-11-08, see https://github.com/NixOS/nixpkgs/issues/103026#issuecomment-723428168
   venus = throw "venus has been removed from nixpkgs, as it's unmaintained"; # Added 2021-02-05
   vimbWrapper = throw "'vimbWrapper' has been renamed to/replaced by 'vimb'"; # Converted to throw 2022-02-22
-  vimprobable2 = throw "vimprobable2 has been removed from nixpkgs. It relied on webkitgtk24x that has been removed."; # Added 2019-12-05
-  vimprobable2-unwrapped = vimprobable2; # Added 2019-12-05
   virtinst = throw "virtinst has been removed, as it's included in virt-manager"; # Added 2021-07-21
   virtuoso = throw "virtuoso has been removed, because it was unmaintained in nixpkgs"; # added 2021-12-15
   virtmanager = virt-manager; # Added 2019-10-29
   virtmanager-qt = virt-manager-qt; # Added 2019-10-29
   virtviewer = throw "'virtviewer' has been renamed to/replaced by 'virt-viewer'"; # Converted to throw 2022-02-22
+  vnc2flv = throw "vnc2flv has been removed: abandoned by upstream"; # Added 2022-03-21
   vorbisTools = throw "'vorbisTools' has been renamed to/replaced by 'vorbis-tools'"; # Converted to throw 2022-02-22
-  vtun = throw "vtune has been removed as it's unmaintained upstream."; # Added 2021-10-29
+  vtun = throw "vtune has been removed as it's unmaintained upstream"; # Added 2021-10-29
 
   ### W ###
 
   way-cooler = throw "way-cooler is abandoned by its author: https://way-cooler.org/blog/2020/01/09/way-cooler-post-mortem.html"; # Added 2020-01-13
+  webbrowser = throw "webbrowser was removed because it's unmaintained upstream and was marked as broken in nixpkgs for over a year"; # Added 2022-03-21
   webkit = throw "'webkit' has been renamed to/replaced by 'webkitgtk'"; # Converted to throw 2022-02-22
-  webkitgtk24x-gtk2 = throw "webkitgtk24x-gtk2 has been removed because it's insecure. Please use webkitgtk."; # Added 2019-12-05
-  webkitgtk24x-gtk3 = throw "webkitgtk24x-gtk3 has been removed because it's insecure. Please use webkitgtk."; # Added 2019-12-05
   weechat-matrix-bridge = throw "'weechat-matrix-bridge' has been renamed to/replaced by 'weechatScripts.weechat-matrix-bridge'"; # Converted to throw 2022-02-22
-  whirlpool-gui = throw "whirlpool-gui has been removed as it depended on an insecure version of Electron."; # added 2022-02-08
-  wicd = throw "wicd has been removed as it is abandoned."; # Added 2021-09-11
+  whirlpool-gui = throw "whirlpool-gui has been removed as it depended on an insecure version of Electron"; # added 2022-02-08
+  wicd = throw "wicd has been removed as it is abandoned"; # Added 2021-09-11
   wineFull = throw "'wineFull' has been renamed to/replaced by 'winePackages.full'"; # Converted to throw 2022-02-22
   wineMinimal = throw "'wineMinimal' has been renamed to/replaced by 'winePackages.minimal'"; # Converted to throw 2022-02-22
   wineStable = throw "'wineStable' has been renamed to/replaced by 'winePackages.stable'"; # Converted to throw 2022-02-22
   wineStaging = throw "'wineStaging' has been renamed to/replaced by 'wine-staging'"; # Converted to throw 2022-02-22
   wineUnstable = throw "'wineUnstable' has been renamed to/replaced by 'winePackages.unstable'"; # Converted to throw 2022-02-22
   wineWayland = wine-wayland;
-  winswitch = throw "winswitch has been removed from nixpkgs."; # Added 2019-12-10
   winusb = throw "'winusb' has been renamed to/replaced by 'woeusb'"; # Converted to throw 2022-02-22
   wireguard = throw "'wireguard' has been renamed to/replaced by 'wireguard-tools'"; # Converted to throw 2022-02-22
-  wireshark-gtk = throw "wireshark-gtk is not supported anymore. Use wireshark-qt or wireshark-cli instead."; # Added 2019-11-18
-  wxmupen64plus = throw "wxmupen64plus was removed because the upstream disappeared."; # Added 2022-01-31
+  wxmupen64plus = throw "wxmupen64plus was removed because the upstream disappeared"; # Added 2022-01-31
 
   ### X ###
 
@@ -1309,7 +1281,7 @@ mapAliases ({
     xf86_input_mtrack has been removed from nixpkgs as it is broken and
     unmaintained. Working alternatives are libinput and synaptics.
   '';
-  xf86_input_multitouch = throw "xf86_input_multitouch has been removed from nixpkgs."; # Added 2020-01-20
+  xf86_input_multitouch = throw "xf86_input_multitouch has been removed from nixpkgs"; # Added 2020-01-20
   xlibs = throw "'xlibs' has been renamed to/replaced by 'xorg'"; # Converted to throw 2022-02-22
   xpraGtk3 = throw "'xpraGtk3' has been renamed to/replaced by 'xpra'"; # Converted to throw 2022-02-22
   xv = xxv; # Added 2020-02-22
@@ -1321,14 +1293,14 @@ mapAliases ({
   yarssr = throw "yarssr has been removed as part of the python2 deprecation"; # Added 2022-01-15
   youtubeDL = throw "'youtubeDL' has been renamed to/replaced by 'youtube-dl'"; # Converted to throw 2022-02-22
   ytop = throw "ytop has been abandoned by upstream. Consider switching to bottom instead";
-  yubikey-neo-manager = throw "yubikey-neo-manager has been removed because it was broken. Use yubikey-manager-qt instead."; # Added 2021-03-08
+  yubikey-neo-manager = throw "yubikey-neo-manager has been removed because it was broken. Use yubikey-manager-qt instead"; # Added 2021-03-08
   yuzu = yuzu-mainline; # Added 2021-01-25
 
   ### Z ###
 
   zabbix30 = throw "Zabbix 3.0.x is end of life, see https://www.zabbix.com/documentation/5.0/manual/installation/upgrade/sources for a direct upgrade path to 5.0.x"; # Added 2021-04-07
   zdfmediathk = throw "'zdfmediathk' has been renamed to/replaced by 'mediathekview'"; # Converted to throw 2022-02-22
-  zimreader = throw "zimreader has been removed from nixpkgs as it has been replaced by kiwix-serve and stopped working with modern zimlib versions."; # Added 2021-03-28
+  zimreader = throw "zimreader has been removed from nixpkgs as it has been replaced by kiwix-serve and stopped working with modern zimlib versions"; # Added 2021-03-28
 
   # TODO(ekleog): add ‘wasm’ alias to ‘ocamlPackages.wasm’ after 19.03
   # branch-off
@@ -1353,17 +1325,17 @@ mapAliases ({
   zeroc_ice = pkgs.zeroc-ice;
 
   # Added 2020-06-22
-  zeromq3 = throw "zeromq3 has been deprecated by zeromq4.";
+  zeromq3 = throw "zeromq3 has been deprecated by zeromq4";
   jzmq = throw "jzmq has been removed from nixpkgs, as it was unmaintained";
 
   avian = throw ''
     The package doesn't compile anymore on NixOS and both development &
     maintenance is abandoned by upstream.
   ''; # Cleanup before 21.11, Added 2021-05-07
-  ant-dracula-theme = throw "ant-dracula-theme is now dracula-theme, and theme name is Dracula instead of Ant-Dracula.";
+  ant-dracula-theme = throw "ant-dracula-theme is now dracula-theme, and theme name is Dracula instead of Ant-Dracula";
   dina-font-pcf = dina-font; # Added 2020-02-09
-  dnscrypt-proxy = throw "dnscrypt-proxy has been removed. Please use dnscrypt-proxy2."; # Added 2020-02-02
-  gcc-snapshot = throw "gcc-snapshot: Marked as broken for >2 years, additionally this 'snapshot' pointed to a fairly old one from gcc7.";
+  dnscrypt-proxy = throw "dnscrypt-proxy has been removed. Please use dnscrypt-proxy2"; # Added 2020-02-02
+  gcc-snapshot = throw "gcc-snapshot: Marked as broken for >2 years, additionally this 'snapshot' pointed to a fairly old one from gcc7";
   gnatsd = nats-server; # Added 2019-10-28
 
   obs-gstreamer = throw ''
@@ -1393,16 +1365,16 @@ mapAliases ({
     Its new location is obs-studio-plugins.wlrobs.
   ''; # Added 2021-06-01
 
-  oraclejdk8psu = throw "The *psu versions of oraclejdk are no longer provided by upstream."; # Cleanup before 20.09
+  oraclejdk8psu = throw "The *psu versions of oraclejdk are no longer provided by upstream"; # Cleanup before 20.09
   oraclejre8psu = oraclejdk8psu; # Cleanup before 20.09
   oraclejdk8psu_distro = oraclejdk8psu; # Cleanup before 20.09
   posix_man_pages = man-pages-posix; # Added 2021-04-15
   riot-desktop = throw "riot-desktop is now element-desktop!"; # Cleanup before 21.05
   riot-web = throw "riot-web is now element-web"; # Cleanup before 21.05
   sqldeveloper_18 = throw "sqldeveloper_18 is not maintained anymore!"; # Added 2020-02-04
-  todolist = throw "todolist is now ultralist."; # Added 2020-12-27
-  tor-browser-bundle = throw "tor-browser-bundle was removed because it was out of date and inadequately maintained. Please use tor-browser-bundle-bin instead."; # Added 2020-01-10
-  tor-browser-unwrapped = throw "tor-browser-unwrapped was removed because it was out of date and inadequately maintained. Please use tor-browser-bundle-bin instead."; # Added 2020-01-10
+  todolist = throw "todolist is now ultralist"; # Added 2020-12-27
+  tor-browser-bundle = throw "tor-browser-bundle was removed because it was out of date and inadequately maintained. Please use tor-browser-bundle-bin instead"; # Added 2020-01-10
+  tor-browser-unwrapped = throw "tor-browser-unwrapped was removed because it was out of date and inadequately maintained. Please use tor-browser-bundle-bin instead"; # Added 2020-01-10
   ttyrec = ovh-ttyrec; # Added 2021-01-02
   zplugin = zinit; # Added 2021-01-30
 
@@ -1433,7 +1405,7 @@ mapAliases ({
     ksshaskpass ksystemlog kteatime ktimer ktorrent ktouch kturtle kwallet-pam
     kwalletmanager kwave kwayland-integration kwin kwrited marble milou minuet
     okular oxygen oxygen-icons5 picmi plasma-browser-integration plasma-desktop
-    plasma-integration plasma-nano plasma-nm plasma-pa plasma-phone-components
+    plasma-integration plasma-nano plasma-nm plasma-pa plasma-mobile
     plasma-systemmonitor plasma-thunderbolt plasma-vault plasma-workspace
     plasma-workspace-wallpapers polkit-kde-agent powerdevil qqc2-breeze-style
     sddm-kcm skanlite spectacle systemsettings xdg-desktop-portal-kde yakuake
diff --git a/nixpkgs/pkgs/top-level/all-packages.nix b/nixpkgs/pkgs/top-level/all-packages.nix
index f1e9590c4ec2..464ede2dd6d2 100644
--- a/nixpkgs/pkgs/top-level/all-packages.nix
+++ b/nixpkgs/pkgs/top-level/all-packages.nix
@@ -195,6 +195,8 @@ with pkgs;
 
   ankisyncd = callPackage ../servers/ankisyncd { };
 
+  ani-cli = callPackage ../applications/video/ani-cli { };
+
   aocd = with python3Packages; toPythonApplication aocd;
 
   astrolog = callPackage ../applications/science/astronomy/astrolog { };
@@ -234,6 +236,8 @@ with pkgs;
 
   buf = callPackage ../development/tools/buf { };
 
+  cfn-nag = callPackage ../development/tools/cfn-nag { };
+
   elfcat = callPackage ../tools/misc/elfcat { };
 
   # Zip file format only allows times after year 1980, which makes e.g. Python wheel building fail with:
@@ -339,6 +343,8 @@ with pkgs;
 
   deadnix = callPackage ../development/tools/deadnix { };
 
+  dsq = callPackage ../tools/misc/dsq { buildGoModule = buildGo118Module; };
+
   each = callPackage ../tools/text/each { };
 
   eclipse-mat = callPackage ../development/tools/eclipse-mat { };
@@ -914,6 +920,8 @@ with pkgs;
 
   abduco = callPackage ../tools/misc/abduco { };
 
+  ablog = callPackage ../applications/misc/ablog { };
+
   acct = callPackage ../tools/system/acct { };
 
   accuraterip-checksum = callPackage ../tools/audio/accuraterip-checksum { };
@@ -1041,6 +1049,8 @@ with pkgs;
 
   albert = libsForQt5.callPackage ../applications/misc/albert {};
 
+  allure = callPackage ../development/tools/allure {};
+
   aquosctl = callPackage ../tools/misc/aquosctl { };
 
   arch-install-scripts = callPackage ../tools/misc/arch-install-scripts {};
@@ -1089,6 +1099,8 @@ with pkgs;
 
   ksnip = libsForQt5.callPackage ../tools/misc/ksnip { };
 
+  license-generator = callPackage ../tools/misc/license-generator { };
+
   linux-router = callPackage ../tools/networking/linux-router { };
 
   linux-router-without-wifi = linux-router.override { useWifiDependencies = false; };
@@ -1097,6 +1109,8 @@ with pkgs;
 
   midimonster = callPackage ../tools/audio/midimonster { };
 
+  nominatim = callPackage ../servers/nominatim { };
+
   pferd = callPackage ../tools/misc/pferd {};
 
   qFlipper = libsForQt515.callPackage ../tools/misc/qflipper { };
@@ -1105,6 +1119,8 @@ with pkgs;
 
   redfang = callPackage ../tools/networking/redfang { };
 
+  sdbus-cpp = callPackage ../development/libraries/sdbus-cpp { };
+
   sdlookup = callPackage ../tools/security/sdlookup { };
 
   sx-go = callPackage ../tools/security/sx-go { };
@@ -1119,6 +1135,8 @@ with pkgs;
 
   topicctl = callPackage ../tools/misc/topicctl { };
 
+  ttchat = callPackage ../tools/misc/ttchat { };
+
   veikk-linux-driver-gui = libsForQt5.callPackage ../tools/misc/veikk-linux-driver-gui { };
 
   ventoy-bin = callPackage ../tools/cd-dvd/ventoy-bin { };
@@ -1919,6 +1937,8 @@ with pkgs;
 
   gopacked = callPackage ../applications/misc/gopacked { };
 
+  gotktrix = callPackage ../applications/networking/instant-messengers/gotktrix { };
+
   gucci = callPackage ../tools/text/gucci { };
 
   guglielmo = libsForQt5.callPackage ../applications/radio/guglielmo { };
@@ -2035,7 +2055,9 @@ with pkgs;
 
   go-audit = callPackage ../tools/system/go-audit { };
 
-  gopass = callPackage ../tools/security/gopass { };
+  gopass = callPackage ../tools/security/gopass {
+    buildGoModule = buildGo118Module;
+  };
 
   gopass-jsonapi = callPackage ../tools/security/gopass/jsonapi.nix { };
 
@@ -2295,8 +2317,6 @@ with pkgs;
 
   birdtray = libsForQt5.callPackage ../applications/misc/birdtray { };
 
-  bitbucket-cli = callPackage ../tools/misc/bitbucket-cli { };
-
   bitbucket-server-cli = callPackage ../applications/version-management/git-and-tools/bitbucket-server-cli { };
 
   blitz = callPackage ../development/libraries/blitz { };
@@ -2386,6 +2406,8 @@ with pkgs;
 
   borgmatic = callPackage ../tools/backup/borgmatic { };
 
+  borg-sans-mono = callPackage ../data/fonts/borg-sans-mono { };
+
   boringtun = callPackage ../tools/networking/boringtun { };
 
   bookstack = callPackage ../servers/web-apps/bookstack { };
@@ -2605,7 +2627,9 @@ with pkgs;
 
   clac = callPackage ../tools/misc/clac {};
 
-  clash = callPackage ../tools/networking/clash { };
+  clash = callPackage ../tools/networking/clash {
+    buildGoModule = buildGo118Module;
+  };
 
   clasp = callPackage ../tools/misc/clasp { };
 
@@ -2723,6 +2747,8 @@ with pkgs;
 
   wl-clipboard-x11 = callPackage ../tools/wayland/wl-clipboard-x11 { };
 
+  wl-color-picker = callPackage ../tools/wayland/wl-color-picker { };
+
   wl-mirror = callPackage ../tools/wayland/wl-mirror { };
 
   wlogout = callPackage ../tools/wayland/wlogout { };
@@ -2745,6 +2771,8 @@ with pkgs;
 
   ydotool = callPackage ../tools/wayland/ydotool { };
 
+  cambalache = callPackage ../development/tools/cambalache { };
+
   clipster = callPackage ../tools/misc/clipster { };
 
   clockify = callPackage ../applications/office/clockify {
@@ -2822,6 +2850,8 @@ with pkgs;
 
   damon = callPackage ../tools/admin/damon { };
 
+  dancing-script = callPackage ../data/fonts/dancing-script { };
+
   dante = callPackage ../servers/dante { };
 
   dapr-cli = callPackage ../development/tools/dapr/cli {};
@@ -3034,7 +3064,7 @@ with pkgs;
 
   element-desktop = callPackage ../applications/networking/instant-messengers/element/element-desktop.nix {
     inherit (darwin.apple_sdk.frameworks) Security AppKit CoreServices;
-    electron = electron_15;
+    electron = electron_17;
   };
   element-desktop-wayland = writeScriptBin "element-desktop" ''
     #!/bin/sh
@@ -3422,10 +3452,14 @@ with pkgs;
 
   krapslog = callPackage ../tools/misc/krapslog { };
 
+  krelay = callPackage ../applications/networking/cluster/krelay { };
+
   krill = callPackage ../servers/krill {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
+  lapce = callPackage ../applications/editors/lapce { };
+
   lcdproc = callPackage ../servers/monitoring/lcdproc { };
 
   languagetool = callPackage ../tools/text/languagetool {  };
@@ -3526,6 +3560,10 @@ with pkgs;
 
   metabase = callPackage ../servers/metabase { };
 
+  micropad = callPackage ../applications/office/micropad {
+    electron = electron_17;
+  };
+
   midicsv = callPackage ../tools/audio/midicsv { };
 
   miniscript = callPackage ../applications/blockchains/miniscript { };
@@ -3586,6 +3624,8 @@ with pkgs;
 
   mrkd = with python3Packages; toPythonApplication mrkd;
 
+  naproche = callPackage ../applications/science/logic/naproche { };
+
   nautilus-open-any-terminal = callPackage ../tools/misc/nautilus-open-any-terminal { };
 
   n2n = callPackage ../tools/networking/n2n { };
@@ -3600,7 +3640,7 @@ with pkgs;
 
   nix-direnv = callPackage ../tools/misc/nix-direnv { };
 
-  nix-output-monitor = haskell.lib.compose.justStaticExecutables (haskellPackages.nix-output-monitor);
+  nix-output-monitor = callPackage ../tools/nix/nix-output-monitor { };
 
   nix-template = callPackage ../tools/package-management/nix-template {
     inherit (darwin.apple_sdk.frameworks) Security;
@@ -3735,6 +3775,8 @@ with pkgs;
 
   psrecord = python3Packages.callPackage ../tools/misc/psrecord {};
 
+  rare = python3Packages.callPackage ../games/rare { };
+
   reg = callPackage ../tools/virtualization/reg { };
 
   river = callPackage ../applications/window-managers/river { };
@@ -3773,6 +3815,8 @@ with pkgs;
 
   shipyard = callPackage ../tools/virtualization/shipyard { };
 
+  shisho = callPackage ../tools/security/shisho { };
+
   simg2img = callPackage ../tools/filesystems/simg2img { };
 
   simplenes = callPackage ../applications/emulators/simplenes { };
@@ -4070,8 +4114,6 @@ with pkgs;
 
   btar = callPackage ../tools/backup/btar { };
 
-  bud = callPackage ../tools/networking/bud { };
-
   bump2version = python3Packages.callPackage ../applications/version-management/git-and-tools/bump2version { };
 
   bumpver = callPackage ../applications/version-management/bumpver { };
@@ -4152,6 +4194,8 @@ with pkgs;
     stdenv = gcc9Stdenv;
   };
 
+  cider = callPackage ../applications/audio/cider { };
+
   isolyzer = callPackage ../tools/cd-dvd/isolyzer { };
 
   isomd5sum = callPackage ../tools/cd-dvd/isomd5sum { };
@@ -4516,9 +4560,9 @@ with pkgs;
     gst-plugins-good = gst_all_1.gst-plugins-good.override { gtkSupport = true; };
   };
 
-  cocoapods = callPackage ../development/mobile/cocoapods { };
+  cocoapods = callPackage ../development/tools/cocoapods { };
 
-  cocoapods-beta = lowPrio (callPackage ../development/mobile/cocoapods { beta = true; });
+  cocoapods-beta = lowPrio (callPackage ../development/tools/cocoapods { beta = true; });
 
   cocom = callPackage ../tools/networking/cocom {
     inherit (darwin.apple_sdk.frameworks) Security;
@@ -4594,21 +4638,26 @@ with pkgs;
   cudnnPackages = callPackages ../development/libraries/science/math/cudnn { };
   inherit (cudnnPackages)
     cudnn_7_4_cudatoolkit_10_0
-    cudnn_7_6_cudatoolkit_10_2
-    cudnn_7_6_cudatoolkit_10
+    cudnn_7_6_cudatoolkit_10_0
+    cudnn_7_6_cudatoolkit_10_1
+    cudnn_8_1_cudatoolkit_10_2
     cudnn_8_1_cudatoolkit_11_0
     cudnn_8_1_cudatoolkit_11_1
     cudnn_8_1_cudatoolkit_11_2
+    cudnn_8_1_cudatoolkit_10
     cudnn_8_1_cudatoolkit_11
+    cudnn_8_3_cudatoolkit_10_2
     cudnn_8_3_cudatoolkit_11_0
     cudnn_8_3_cudatoolkit_11_1
     cudnn_8_3_cudatoolkit_11_2
     cudnn_8_3_cudatoolkit_11_3
     cudnn_8_3_cudatoolkit_11_4
     cudnn_8_3_cudatoolkit_11_5
+    cudnn_8_3_cudatoolkit_10
     cudnn_8_3_cudatoolkit_11;
 
-  cudnn = cudnn_7_6_cudatoolkit_10;
+  # TODO(samuela): This is old and should be upgraded to 8.3 at some point.
+  cudnn = cudnn_7_6_cudatoolkit_10_1;
 
   cutensorPackages = callPackages ../development/libraries/science/math/cutensor { };
   inherit (cutensorPackages)
@@ -5435,6 +5484,10 @@ with pkgs;
 
   ferm = callPackage ../tools/networking/ferm { };
 
+  feroxbuster = callPackage ../tools/security/feroxbuster {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
+
   ffsend = callPackage ../tools/misc/ffsend {
     inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Security AppKit;
   };
@@ -5752,6 +5805,8 @@ with pkgs;
 
   gdmap = callPackage ../tools/system/gdmap { };
 
+  gef = callPackage ../development/tools/misc/gef { };
+
   gelasio = callPackage ../data/fonts/gelasio { };
 
   gemget = callPackage ../tools/networking/gemget {};
@@ -6067,12 +6122,16 @@ with pkgs;
 
   gnome-builder = callPackage ../applications/editors/gnome-builder { };
 
+  gnome-desktop = callPackage ../development/libraries/gnome-desktop { };
+
   gnome-feeds = callPackage ../applications/networking/feedreaders/gnome-feeds {};
 
   gnome-keysign = callPackage ../tools/security/gnome-keysign { };
 
   gnome-secrets = callPackage ../applications/misc/gnome-secrets { };
 
+  gnome-solanum = callPackage ../applications/misc/gnome-solanum { };
+
   gnome-podcasts = callPackage ../applications/audio/gnome-podcasts { };
 
   gnome-photos = callPackage ../applications/graphics/gnome-photos { };
@@ -6131,11 +6190,7 @@ with pkgs;
 
   gnu-pw-mgr = callPackage ../tools/security/gnu-pw-mgr { };
 
-  gnused = if !stdenv.hostPlatform.isWindows
-    then callPackage ../tools/text/gnused { } # broken on Windows
-    else gnused_422;
-  # This is an easy work-around for [:space:] problems.
-  gnused_422 = callPackage ../tools/text/gnused/422.nix { };
+  gnused = callPackage ../tools/text/gnused { };
 
   gnutar = callPackage ../tools/archivers/gnutar { };
 
@@ -6202,7 +6257,7 @@ with pkgs;
 
   gopro = callPackage ../tools/video/gopro { };
 
-  goreleaser = callPackage ../tools/misc/goreleaser { };
+  goreleaser = callPackage ../tools/misc/goreleaser { buildGoModule = buildGo118Module; };
 
   goreplay = callPackage ../tools/networking/goreplay { };
 
@@ -6233,6 +6288,8 @@ with pkgs;
 
   gpp = callPackage ../development/tools/gpp { };
 
+  gnuastro = callPackage ../applications/science/astronomy/gnuastro { };
+
   gpredict = callPackage ../applications/science/astronomy/gpredict {
     hamlib = hamlib_4;
   };
@@ -6364,7 +6421,9 @@ with pkgs;
 
   gssdp-tools = callPackage ../development/libraries/gssdp/tools.nix { };
 
-  grype = callPackage ../tools/security/grype { };
+  grype = callPackage ../tools/security/grype {
+    buildGoModule = buildGo118Module;
+  };
 
   gt5 = callPackage ../tools/system/gt5 { };
 
@@ -6538,7 +6597,9 @@ with pkgs;
 
   heimdall-gui = heimdall.override { enableGUI = true; };
 
-  headscale = callPackage ../servers/headscale { };
+  headscale = callPackage ../servers/headscale {
+    buildGoModule = buildGo118Module;
+  };
 
   heisenbridge = callPackage ../servers/heisenbridge { };
 
@@ -6627,6 +6688,8 @@ with pkgs;
 
   humanfriendly = with python3Packages; toPythonApplication humanfriendly;
 
+  hut = callPackage ../applications/version-management/git-and-tools/hut { };
+
   hwinfo = callPackage ../tools/system/hwinfo { };
 
   hybridreverb2 = callPackage ../applications/audio/hybridreverb2 {
@@ -6764,6 +6827,8 @@ with pkgs;
   invidious = callPackage ../servers/invidious {
     # needs a specific version of lsquic
     lsquic = callPackage ../servers/invidious/lsquic.nix { };
+    # normally video.js is downloaded at build time
+    videojs = callPackage ../servers/invidious/videojs.nix { };
   };
 
   invoice2data  = callPackage ../tools/text/invoice2data  { };
@@ -6991,6 +7056,8 @@ with pkgs;
 
   jupyter-kernel = callPackage ../applications/editors/jupyter/kernel.nix { };
 
+  justify = callPackage ../tools/text/justify { };
+
   jwhois = callPackage ../tools/networking/jwhois { };
 
   k2pdfopt = callPackage ../applications/misc/k2pdfopt { };
@@ -7194,6 +7261,8 @@ with pkgs;
 
   lfs = callPackage ../tools/filesystems/lfs { };
 
+  littlefs-fuse = callPackage ../tools/filesystems/littlefs-fuse { };
+
   lksctp-tools = callPackage ../os-specific/linux/lksctp-tools { };
 
   lldpd = callPackage ../tools/networking/lldpd { };
@@ -7332,6 +7401,10 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) CoreServices;
   };
 
+  mdbook-pdf = callPackage ../tools/text/mdbook-pdf {
+    inherit (darwin.apple_sdk.frameworks) CoreServices;
+  };
+
   mdbook-plantuml = callPackage ../tools/text/mdbook-plantuml {
     inherit (darwin.apple_sdk.frameworks) CoreServices;
   };
@@ -7474,6 +7547,8 @@ with pkgs;
     nodejs = nodejs-14_x;
   };
 
+  node2nix = nodePackages.node2nix;
+
   np2kai = callPackage ../applications/emulators/np2kai { };
 
   openipmi = callPackage ../tools/system/openipmi { };
@@ -7685,6 +7760,8 @@ with pkgs;
 
   librest = callPackage ../development/libraries/librest { };
 
+  librest_1_0 = callPackage ../development/libraries/librest/1.0.nix { };
+
   inherit (callPackages ../development/libraries/libwebsockets { })
     libwebsockets_3_1
     libwebsockets_3_2
@@ -8046,6 +8123,8 @@ with pkgs;
 
   mscgen = callPackage ../tools/graphics/mscgen { };
 
+  melt = callPackage ../tools/security/melt { };
+
   metabigor = callPackage ../tools/security/metabigor { };
 
   metasploit = callPackage ../tools/security/metasploit { };
@@ -8199,6 +8278,8 @@ with pkgs;
 
   netpbm = callPackage ../tools/graphics/netpbm { };
 
+  netproc = callPackage ../tools/networking/netproc { };
+
   netrw = callPackage ../tools/networking/netrw { };
 
   netselect = callPackage ../tools/networking/netselect { };
@@ -8242,7 +8323,7 @@ with pkgs;
   grocy = callPackage ../servers/grocy { };
 
   inherit (callPackage ../servers/nextcloud {})
-    nextcloud20 nextcloud21 nextcloud22 nextcloud23;
+    nextcloud21 nextcloud22 nextcloud23;
 
   nextcloud-client = libsForQt5.callPackage ../applications/networking/nextcloud-client { };
 
@@ -8322,6 +8403,8 @@ with pkgs;
 
   pandoc-imagine = python3Packages.callPackage ../tools/misc/pandoc-imagine { };
 
+  pandoc-include = python3Packages.callPackage ../tools/misc/pandoc-include { };
+
   pandoc-drawio-filter = python3Packages.callPackage ../tools/misc/pandoc-drawio-filter { };
 
   pandoc-plantuml-filter = python3Packages.callPackage ../tools/misc/pandoc-plantuml-filter { };
@@ -8845,6 +8928,8 @@ with pkgs;
 
   patchage = callPackage ../applications/audio/patchage { };
 
+  patatt = callPackage ../development/tools/patatt { };
+
   pcapfix = callPackage ../tools/networking/pcapfix { };
 
   pbzip2 = callPackage ../tools/compression/pbzip2 { };
@@ -9198,6 +9283,8 @@ with pkgs;
 
   pydf = callPackage ../applications/misc/pydf { };
 
+  pyinfra = with python3Packages; toPythonApplication pyinfra;
+
   pympress = callPackage ../applications/office/pympress { };
 
   pyspread = libsForQt5.callPackage ../applications/office/pyspread { };
@@ -9395,8 +9482,6 @@ with pkgs;
 
   repseek = callPackage ../applications/science/biology/repseek { };
 
-  reicast = callPackage ../applications/emulators/reicast { };
-
   reredirect = callPackage ../tools/misc/reredirect { };
 
   retext = libsForQt5.callPackage ../applications/editors/retext { };
@@ -9538,7 +9623,7 @@ with pkgs;
 
   roc-toolkit = callPackage ../development/libraries/audio/roc-toolkit { };
 
-  rockbox_utility = libsForQt5.callPackage ../tools/misc/rockbox-utility { };
+  rockbox-utility = libsForQt5.callPackage ../tools/misc/rockbox-utility { };
 
   rosegarden = libsForQt514.callPackage ../applications/audio/rosegarden { };
 
@@ -9637,6 +9722,8 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
+  s3-credentials = with python3Packages; toPythonApplication s3-credentials;
+
   s4cmd = callPackage ../tools/networking/s4cmd { };
 
   s5cmd = callPackage ../tools/networking/s5cmd { };
@@ -9819,6 +9906,8 @@ with pkgs;
 
   shocco = callPackage ../tools/text/shocco { };
 
+  shopify-cli = callPackage ../development/web/shopify-cli { };
+
   shopify-themekit = callPackage ../development/web/shopify-themekit { };
 
   shorewall = callPackage ../tools/networking/shorewall { };
@@ -10109,6 +10198,8 @@ with pkgs;
 
   srtrelay = callPackage ../applications/video/srtrelay { };
 
+  srsran = callPackage ../applications/radio/srsran {  };
+
   sourcehut = callPackage ../applications/version-management/sourcehut { };
 
   sshfs-fuse = callPackage ../tools/filesystems/sshfs-fuse { };
@@ -10170,6 +10261,8 @@ with pkgs;
 
   sslmate = callPackage ../development/tools/sslmate { };
 
+  sslmate-agent = callPackage ../development/tools/sslmate-agent { };
+
   sshoogr = callPackage ../tools/networking/sshoogr { };
 
   ssmtp = callPackage ../tools/networking/ssmtp { };
@@ -10249,6 +10342,8 @@ with pkgs;
 
   symengine = callPackage ../development/libraries/symengine { };
 
+  synaesthesia = callPackage ../applications/audio/synaesthesia { };
+
   sysbench = callPackage ../development/tools/misc/sysbench {};
 
   system-config-printer = callPackage ../tools/misc/system-config-printer {
@@ -10266,7 +10361,9 @@ with pkgs;
 
   systrayhelper = callPackage ../tools/misc/systrayhelper {};
 
-  syft = callPackage ../tools/admin/syft { };
+  syft = callPackage ../tools/admin/syft {
+    buildGoModule = buildGo118Module;
+  };
 
   Sylk = callPackage ../applications/networking/Sylk {};
 
@@ -10487,6 +10584,8 @@ with pkgs;
 
   tinyfecvpn = callPackage ../tools/networking/tinyfecvpn { };
 
+  tinygltf = callPackage ../development/libraries/tinygltf { };
+
   tinyobjloader = callPackage ../development/libraries/tinyobjloader { };
 
   tinyprog = callPackage ../development/embedded/fpga/tinyprog { };
@@ -10537,6 +10636,8 @@ with pkgs;
 
   tokio-console = callPackage ../development/tools/tokio-console { };
 
+  toml2json = callPackage ../development/tools/toml2json { };
+
   toml2nix = (callPackage ../tools/toml2nix { }).toml2nix { };
 
   topgrade = callPackage ../tools/misc/topgrade {
@@ -10892,8 +10993,6 @@ with pkgs;
     vkBasalt32 = pkgsi686Linux.vkBasalt;
   };
 
-  vnc2flv = callPackage ../tools/video/vnc2flv {};
-
   vncrec = callPackage ../tools/video/vncrec { };
 
   vo-amrwbenc = callPackage ../development/libraries/vo-amrwbenc { };
@@ -11243,11 +11342,11 @@ with pkgs;
   valum = callPackage ../development/web/valum { };
 
   inherit (callPackages ../servers/varnish { })
-    varnish60 varnish70;
+    varnish60 varnish71;
   inherit (callPackages ../servers/varnish/packages.nix { })
-    varnish60Packages varnish70Packages;
+    varnish60Packages varnish71Packages;
 
-  varnishPackages = varnish70Packages;
+  varnishPackages = varnish71Packages;
   varnish = varnishPackages.varnish;
 
   hitch = callPackage ../servers/hitch { };
@@ -11332,6 +11431,8 @@ with pkgs;
 
   wkhtmltopdf = libsForQt514.callPackage ../tools/graphics/wkhtmltopdf { };
 
+  wkhtmltopdf-bin = callPackage ../tools/graphics/wkhtmltopdf-bin { };
+
   wml = callPackage ../development/web/wml { };
 
   wmc-mpris = callPackage ../applications/misc/web-media-controller { };
@@ -11552,6 +11653,8 @@ with pkgs;
 
   zimwriterfs = callPackage ../tools/text/zimwriterfs { };
 
+  zld = callPackage ../development/tools/zld { };
+
   par = callPackage ../tools/text/par { };
 
   zip = callPackage ../tools/archivers/zip { };
@@ -12056,6 +12159,8 @@ with pkgs;
 
   flasm = callPackage ../development/compilers/flasm { };
 
+  flycast = callPackage ../applications/emulators/flycast { };
+
   flyctl = callPackage ../development/web/flyctl { };
 
   fluidd = callPackage ../applications/misc/fluidd { };
@@ -13364,6 +13469,7 @@ with pkgs;
   cargo-generate = callPackage ../development/tools/rust/cargo-generate {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
+  cargo-bootimage = callPackage ../development/tools/rust/bootimage { };
 
   cargo-whatfeatures = callPackage ../development/tools/rust/cargo-whatfeatures {
     inherit (darwin.apple_sdk.frameworks) Security;
@@ -13469,9 +13575,7 @@ with pkgs;
     boost = boost172;
   };
 
-  souffle = callPackage ../development/compilers/souffle {
-    autoreconfHook = buildPackages.autoreconfHook269;
-  };
+  souffle = callPackage ../development/compilers/souffle { };
 
   spasm-ng = callPackage ../development/compilers/spasm-ng { };
 
@@ -13555,6 +13659,7 @@ with pkgs;
   inherit (callPackage ../development/compilers/vala { })
     vala_0_48
     vala_0_54
+    vala_0_56
     vala;
 
   vyper = with python3Packages; toPythonApplication vyper;
@@ -13969,6 +14074,11 @@ with pkgs;
   # When switching these sets, please update docs at ../../doc/languages-frameworks/python.md
   python2 = python27;
   python3 = python39;
+
+  # pythonPackages further below, but assigned here because they need to be in sync
+  python2Packages = dontRecurseIntoAttrs python27Packages;
+  python3Packages = dontRecurseIntoAttrs python39Packages;
+
   pypy = pypy2;
   pypy2 = pypy27;
   pypy3 = pypy38;
@@ -14010,10 +14120,6 @@ with pkgs;
     x11Support = true;
   };
 
-  # pythonPackages further below, but assigned here because they need to be in sync
-  python2Packages = python2.pkgs;
-  python3Packages = python3.pkgs;
-
   pythonInterpreters = callPackage ./../development/interpreters/python { };
   inherit (pythonInterpreters) python27 python37 python38 python39 python310 python311 python3Minimal pypy27 pypy38 pypy37 rustpython;
 
@@ -14059,9 +14165,10 @@ with pkgs;
 
   pew = callPackage ../development/tools/pew {};
 
-  poetry = callPackage ../development/tools/poetry2nix/poetry2nix/pkgs/poetry {
-    python = python3;
-  };
+  poetry = with python3Packages; toPythonApplication (callPackage ../development/tools/poetry2nix/poetry2nix/pkgs/poetry {
+    inherit python;
+  });
+
   poetry2nix = callPackage ../development/tools/poetry2nix/poetry2nix {
     inherit pkgs lib;
   };
@@ -14190,8 +14297,11 @@ with pkgs;
   self = pkgsi686Linux.callPackage ../development/interpreters/self { };
 
   inherit (callPackages ../applications/networking/cluster/spark { })
-    spark3
-    spark2;
+    spark_3_2
+    spark_3_1
+    spark_2_4;
+  spark3 = spark_3_2;
+  spark2 = spark_2_4;
   spark = spark3;
 
   sparkleshare = callPackage ../applications/version-management/sparkleshare { };
@@ -14370,6 +14480,8 @@ with pkgs;
 
   augeas = callPackage ../tools/system/augeas { };
 
+  autoadb = callPackage ../misc/autoadb { };
+
   inherit (callPackage ../tools/admin/ansible { })
     ansible
     ansible_2_8
@@ -14754,6 +14866,8 @@ with pkgs;
 
   cloudcompare = libsForQt5.callPackage ../applications/graphics/cloudcompare {};
 
+  cloudflare-warp = callPackage ../tools/networking/cloudflare-warp { };
+
   cloudfoundry-cli = callPackage ../applications/networking/cluster/cloudfoundry-cli { };
 
   clpm = callPackage ../development/tools/clpm {};
@@ -15020,6 +15134,8 @@ with pkgs;
 
   funnelweb = callPackage ../development/tools/literate-programming/funnelweb { };
 
+  license_finder = callPackage ../development/tools/license_finder { };
+
   Literate = callPackage ../development/tools/literate-programming/Literate { };
 
   md-tangle = callPackage ../development/tools/literate-programming/md-tangle { };
@@ -15913,7 +16029,7 @@ with pkgs;
 
   travis = callPackage ../development/tools/misc/travis { };
 
-  tree-sitter = callPackage ../development/tools/parsing/tree-sitter {
+  tree-sitter = makeOverridable (callPackage ../development/tools/parsing/tree-sitter) {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
@@ -16398,8 +16514,6 @@ with pkgs;
 
   classads = callPackage ../development/libraries/classads { };
 
-  clearsilver = callPackage ../development/libraries/clearsilver { };
-
   clfft = callPackage ../development/libraries/clfft { };
 
   clipp  = callPackage ../development/libraries/clipp { };
@@ -16699,9 +16813,6 @@ with pkgs;
 
   linbox = callPackage ../development/libraries/linbox { };
 
-  ffmpeg_3_4 = callPackage ../development/libraries/ffmpeg/3.4.nix {
-    inherit (darwin.apple_sdk.frameworks) Cocoa CoreMedia;
-  };
   ffmpeg_4 = callPackage ../development/libraries/ffmpeg/4.nix {
     inherit (darwin.apple_sdk.frameworks) Cocoa CoreMedia VideoToolbox;
   };
@@ -16710,7 +16821,6 @@ with pkgs;
   };
 
   # Aliases
-  ffmpeg_3 = ffmpeg_3_4;
   # Please make sure this is updated to the latest version on the next major
   # update to ffmpeg
   # Packages which use ffmpeg as a library, should pin to the relevant major
@@ -16735,8 +16845,6 @@ with pkgs;
 
   ffmpegthumbnailer = callPackage ../development/libraries/ffmpegthumbnailer { };
 
-  ffmpeg-sixel = callPackage ../development/libraries/ffmpeg-sixel { };
-
   ffmpeg-normalize = python3Packages.callPackage ../applications/video/ffmpeg-normalize { };
 
   ffms = callPackage ../development/libraries/ffms { };
@@ -17932,6 +18040,8 @@ with pkgs;
 
   libctemplate = callPackage ../development/libraries/libctemplate { };
 
+  libctl = callPackage ../development/libraries/libctl { };
+
   libcotp = callPackage ../development/libraries/libcotp { };
 
   libcouchbase = callPackage ../development/libraries/libcouchbase { };
@@ -18109,6 +18219,7 @@ with pkgs;
   libgnome-keyring3 = gnome.libgnome-keyring;
 
   libgnome-games-support = callPackage ../development/libraries/libgnome-games-support { };
+  libgnome-games-support_2_0 = callPackage ../development/libraries/libgnome-games-support/2.0.nix { };
 
   libgnomekbd = callPackage ../development/libraries/libgnomekbd { };
 
@@ -18671,7 +18782,6 @@ with pkgs;
   libplacebo = callPackage ../development/libraries/libplacebo { };
 
   libpng = callPackage ../development/libraries/libpng { };
-  libpng_apng = libpng.override { apngSupport = true; };
   libpng12 = callPackage ../development/libraries/libpng/12.nix { };
 
   libpostal = callPackage ../development/libraries/libpostal { };
@@ -18701,7 +18811,9 @@ with pkgs;
 
   libpulsar = callPackage ../development/libraries/libpulsar { };
 
-  libpwquality = callPackage ../development/libraries/libpwquality { };
+  libpwquality = callPackage ../development/libraries/libpwquality {
+    python = python3;
+  };
 
   libqalculate = callPackage ../development/libraries/libqalculate {
     readline = readline81;
@@ -19547,11 +19659,8 @@ with pkgs;
   openvdb = callPackage ../development/libraries/openvdb {};
 
   inherit (callPackages ../development/libraries/libressl { })
-    libressl_3_2
     libressl_3_4;
 
-  # Please keep this pointed to the latest version. See also
-  # https://discourse.nixos.org/t/nixpkgs-policy-regarding-libraries-available-in-multiple-versions/7026/2
   libressl = libressl_3_4;
 
   boringssl = callPackage ../development/libraries/boringssl { };
@@ -19586,6 +19695,8 @@ with pkgs;
 
   optparse-bash = callPackage ../development/libraries/optparse-bash { };
 
+  oras = callPackage ../development/tools/oras { };
+
   orcania = callPackage ../development/libraries/orcania { };
 
   osm-gps-map = callPackage ../development/libraries/osm-gps-map { };
@@ -19595,6 +19706,8 @@ with pkgs;
   osinfo-db = callPackage ../data/misc/osinfo-db { };
   osinfo-db-tools = callPackage ../tools/misc/osinfo-db-tools { };
 
+  pacemaker = callPackage ../misc/logging/pacemaker { };
+
   p11-kit = callPackage ../development/libraries/p11-kit { };
 
   paperkey = callPackage ../tools/security/paperkey { };
@@ -19871,8 +19984,6 @@ with pkgs;
 
   qv2ray = libsForQt5.callPackage ../applications/networking/qv2ray {};
 
-  qwt = callPackage ../development/libraries/qwt {};
-
   qwt6_qt4 = callPackage ../development/libraries/qwt/6_qt4.nix {
     inherit (darwin.apple_sdk.frameworks) AGL;
   };
@@ -19990,6 +20101,8 @@ with pkgs;
 
   ronn = callPackage ../development/tools/ronn { };
 
+  rover = callPackage ../development/tools/rover { };
+
   rshell = python3.pkgs.callPackage ../development/embedded/rshell { };
 
   rttr = callPackage ../development/libraries/rttr { };
@@ -20061,6 +20174,10 @@ with pkgs;
 
   SDL2_gfx = callPackage ../development/libraries/SDL2_gfx { };
 
+  SDL2_sound = callPackage ../development/libraries/SDL2_sound {
+    inherit (darwin.apple_sdk.frameworks) AudioToolbox CoreAudio;
+  };
+
   SDL2_ttf = callPackage ../development/libraries/SDL2_ttf { };
 
   SDL2_ttf_2_0_15 = callPackage ../development/libraries/SDL2_ttf/2.0.15.nix { };
@@ -20581,7 +20698,10 @@ with pkgs;
 
   vsqlite = callPackage ../development/libraries/vsqlite { };
 
-  vte = callPackage ../development/libraries/vte { };
+  vte = callPackage ../development/libraries/vte {
+    # Needs GCC ≥10 but aarch64 defaults to GCC 9.
+    stdenv = clangStdenv;
+  };
 
   vte_290 = callPackage ../development/libraries/vte/2.90.nix { };
 
@@ -20696,7 +20816,10 @@ with pkgs;
 
   wxmac = callPackage ../development/libraries/wxwidgets/wxmac30.nix { };
 
-  wxGTK31 = callPackage ../development/libraries/wxwidgets/wxGTK31.nix { };
+  wxGTK31 = callPackage ../development/libraries/wxwidgets/wxGTK31.nix {
+    inherit (darwin.stubs) setfile;
+    inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit AVFoundation AVKit WebKit;
+  };
   wxGTK31-gtk2 = wxGTK31.override { withGtk2 = true; };
   wxGTK31-gtk3 = wxGTK31.override { withGtk2 = false; };
 
@@ -20903,6 +21026,8 @@ with pkgs;
 
   jdom = callPackage ../development/libraries/java/jdom { };
 
+  jffi = callPackage ../development/libraries/java/jffi { };
+
   jflex = callPackage ../development/libraries/java/jflex { };
 
   lombok = callPackage ../development/libraries/java/lombok { };
@@ -21134,6 +21259,7 @@ with pkgs;
 
   archiveopteryx = callPackage ../servers/mail/archiveopteryx { };
 
+  atlassian-bamboo = callPackage ../servers/atlassian/bamboo.nix { };
   atlassian-confluence = callPackage ../servers/atlassian/confluence.nix { };
   atlassian-crowd = callPackage ../servers/atlassian/crowd.nix { };
   atlassian-jira = callPackage ../servers/atlassian/jira.nix { };
@@ -21191,9 +21317,10 @@ with pkgs;
   clamsmtp = callPackage ../servers/mail/clamsmtp { };
 
   clickhouse = callPackage ../servers/clickhouse {
-    # upstream requires llvm10 as of v20.11.4.13
-    inherit (llvmPackages_10) clang-unwrapped lld llvm;
-    llvm-bintools = llvmPackages_10.bintools;
+    # upstream requires llvm12 as of v22.3.2.2
+    inherit (llvmPackages_12) clang-unwrapped lld llvm;
+    llvm-bintools = llvmPackages_12.bintools;
+    stdenv = llvmPackages_12.stdenv;
   };
 
   clickhouse-cli = with python3Packages; toPythonApplication clickhouse-cli;
@@ -21982,7 +22109,9 @@ with pkgs;
   prometheus-nextcloud-exporter = callPackage ../servers/monitoring/prometheus/nextcloud-exporter.nix { };
   prometheus-nginx-exporter = callPackage ../servers/monitoring/prometheus/nginx-exporter.nix { };
   prometheus-nginxlog-exporter = callPackage ../servers/monitoring/prometheus/nginxlog-exporter.nix { };
-  prometheus-node-exporter = callPackage ../servers/monitoring/prometheus/node-exporter.nix { };
+  prometheus-node-exporter = callPackage ../servers/monitoring/prometheus/node-exporter.nix {
+    inherit (darwin.apple_sdk.frameworks) CoreFoundation IOKit;
+  };
   prometheus-openldap-exporter = callPackage ../servers/monitoring/prometheus/openldap-exporter.nix { };
   prometheus-openvpn-exporter = callPackage ../servers/monitoring/prometheus/openvpn-exporter.nix { };
   prometheus-pihole-exporter = callPackage ../servers/monitoring/prometheus/pihole-exporter.nix {  };
@@ -22213,7 +22342,7 @@ with pkgs;
     unifi6
     unifi7;
 
-  unifi = unifi6;
+  unifi = unifi7;
 
   unifi-video = callPackage ../servers/unifi-video { };
 
@@ -22730,6 +22859,8 @@ with pkgs;
 
   powerstat = callPackage ../os-specific/linux/powerstat { };
 
+  projecteur = libsForQt5.callPackage ../os-specific/linux/projecteur { };
+
   smemstat = callPackage ../os-specific/linux/smemstat { };
 
   tgt = callPackage ../tools/networking/tgt { };
@@ -22899,7 +23030,7 @@ with pkgs;
   lvm2-2_02 = callPackage ../os-specific/linux/lvm2/2_02.nix {
     udev = systemdMinimal;
   };
-  lvm2 = if stdenv.targetPlatform.isMusl then lvm2-2_02 else lvm2-2_03;
+  lvm2 = if stdenv.hostPlatform.isMusl then lvm2-2_02 else lvm2-2_03;
 
   lvm2_dmeventd = lvm2.override {
     enableDmeventd = true;
@@ -23037,7 +23168,9 @@ with pkgs;
 
   gotest = callPackage ../development/tools/gotest { };
 
-  gotools = callPackage ../development/tools/gotools { };
+  gotools = callPackage ../development/tools/gotools {
+    buildGoModule = buildGo118Module;
+  };
 
   gotop = callPackage ../tools/system/gotop { };
 
@@ -23143,9 +23276,7 @@ with pkgs;
 
   semodule-utils = callPackage ../os-specific/linux/semodule-utils { };
 
-  powerdns = callPackage ../servers/dns/powerdns {
-    boost = boost172;
-  };
+  pdns = callPackage ../servers/dns/pdns { };
 
   powerdns-admin = callPackage ../applications/networking/powerdns-admin { };
 
@@ -23695,6 +23826,8 @@ with pkgs;
 
   documentation-highlighter = callPackage ../misc/documentation-highlighter { };
 
+  mmdoc = callPackage ../tools/text/mmdoc { };
+
   documize-community = callPackage ../servers/documize-community { };
 
   doge = callPackage ../misc/doge { };
@@ -23976,7 +24109,9 @@ with pkgs;
 
   lmodern = callPackage ../data/fonts/lmodern { };
 
-  logitech-udev-rules = callPackage ../os-specific/linux/logitech-udev-rules {};
+  logiops = callPackage ../misc/drivers/logiops { };
+
+  logitech-udev-rules = callPackage ../os-specific/linux/logitech-udev-rules { };
 
   # lohit-fonts.assamese lohit-fonts.bengali lohit-fonts.devanagari lohit-fonts.gujarati lohit-fonts.gurmukhi
   # lohit-fonts.kannada lohit-fonts.malayalam lohit-fonts.marathi lohit-fonts.nepali lohit-fonts.odia
@@ -24060,7 +24195,7 @@ with pkgs;
 
   mph_2b_damase = callPackage ../data/fonts/mph-2b-damase { };
 
-  mplus-outline-fonts = callPackage ../data/fonts/mplus-outline-fonts { };
+  mplus-outline-fonts = recurseIntoAttrs (callPackage ../data/fonts/mplus-outline-fonts { });
 
   mro-unicode = callPackage ../data/fonts/mro-unicode { };
 
@@ -24279,6 +24414,8 @@ with pkgs;
 
   soundfont-fluid = callPackage ../data/soundfonts/fluid { };
 
+  soundfont-generaluser = callPackage ../data/soundfonts/generaluser { };
+
   soundfont-ydp-grand = callPackage ../data/soundfonts/ydp-grand { };
 
   spdx-license-list-data = callPackage ../data/misc/spdx-license-list-data { };
@@ -24677,6 +24814,8 @@ with pkgs;
 
   argocd = callPackage ../applications/networking/cluster/argocd { };
 
+  argocd-autopilot = callPackage ../applications/networking/cluster/argocd-autopilot { };
+
   argo-rollouts = callPackage ../applications/networking/cluster/argo-rollouts { };
 
   ario = callPackage ../applications/audio/ario { };
@@ -24709,7 +24848,7 @@ with pkgs;
   assign-lb-ip = callPackage ../applications/networking/cluster/assign-lb-ip { };
 
   astroid = callPackage ../applications/networking/mailreaders/astroid {
-    vim = vim_configurable.override { features = "normal"; gui = "auto"; };
+    vim = vim_configurable.override { features = "normal"; };
   };
 
   aucatctl = callPackage ../applications/audio/aucatctl { };
@@ -25157,7 +25296,6 @@ with pkgs;
   comical = callPackage ../applications/graphics/comical { };
 
   containerd = callPackage ../applications/virtualization/containerd { };
-  containerd_1_4 = callPackage ../applications/virtualization/containerd/1.4.nix { };
 
   convchain = callPackage ../tools/graphics/convchain {};
 
@@ -25516,8 +25654,6 @@ with pkgs;
 
   espeakedit = callPackage ../applications/audio/espeak/edit.nix { };
 
-  eteroj.lv2 = libsForQt5.callPackage ../applications/audio/eteroj.lv2 { };
-
   etebase-server = with python3Packages; toPythonApplication etebase-server;
 
   etesync-dav = callPackage ../applications/misc/etesync-dav {};
@@ -25605,6 +25741,8 @@ with pkgs;
 
   f1viewer = callPackage ../applications/video/f1viewer {};
 
+  faircamp = callPackage ../applications/misc/faircamp { };
+
   fasttext = callPackage ../applications/science/machine-learning/fasttext { };
 
   fbmenugen = callPackage ../applications/misc/fbmenugen { };
@@ -25665,6 +25803,8 @@ with pkgs;
 
   fmsynth = callPackage ../applications/audio/fmsynth { };
 
+  fnc = callPackage ../applications/version-management/fnc { };
+
   focuswriter = libsForQt5.callPackage ../applications/editors/focuswriter { };
 
   foliate = callPackage ../applications/office/foliate { };
@@ -25833,6 +25973,8 @@ with pkgs;
     tuigreet = callPackage ../os-specific/linux/tuigreet { };
   };
 
+  goldberg-emu = callPackage ../applications/emulators/goldberg-emu { };
+
   goldendict = libsForQt5.callPackage ../applications/misc/goldendict {
     inherit (darwin) libiconv;
   };
@@ -25943,14 +26085,7 @@ with pkgs;
 
   filezilla = callPackage ../applications/networking/ftp/filezilla { };
 
-  firefoxCommon = args: callPackage (import ../applications/networking/browsers/firefox/common.nix args) {
-    libpng = libpng_apng;
-    gnused = gnused_422;
-    inherit (darwin.apple_sdk.frameworks) CoreMedia ExceptionHandling
-                                          Kerberos AVFoundation MediaToolbox
-                                          CoreLocation Foundation AddressBook;
-    inherit (darwin) libobjc;
-  };
+  firefoxCommon = args: callPackage (import ../applications/networking/browsers/firefox/common.nix args) { };
 
   firefoxPackages = recurseIntoAttrs (callPackage ../applications/networking/browsers/firefox/packages.nix { });
 
@@ -26182,6 +26317,8 @@ with pkgs;
 
   git-review = python3Packages.callPackage ../applications/version-management/git-review { };
 
+  git-team = callPackage ../applications/version-management/git-and-tools/git-team { };
+
   github-cli = gh;
 
   gitolite = callPackage ../applications/version-management/gitolite { };
@@ -26374,6 +26511,10 @@ with pkgs;
 
   gpsprune = callPackage ../applications/misc/gpsprune { };
 
+  gpu-screen-recorder = callPackage ../applications/video/gpu-screen-recorder { };
+
+  gpu-screen-recorder-gtk = callPackage ../applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix { };
+
   gpxlab = libsForQt5.callPackage ../applications/misc/gpxlab { };
 
   gpxsee = libsForQt5.callPackage ../applications/misc/gpxsee { };
@@ -27034,7 +27175,28 @@ with pkgs;
 
   kooha = callPackage ../applications/video/kooha { };
 
-  kotatogram-desktop = libsForQt5.callPackage ../applications/networking/instant-messengers/telegram/kotatogram-desktop { };
+  # Qt 5.15 is not default on mac, tdesktop requires 5.15 (and kotatogram subsequently)
+  kotatogram-desktop = libsForQt515.callPackage ../applications/networking/instant-messengers/telegram/kotatogram-desktop {
+    inherit (darwin.apple_sdk.frameworks) Cocoa CoreFoundation CoreServices CoreText CoreGraphics
+      CoreMedia OpenGL AudioUnit ApplicationServices Foundation AGL Security SystemConfiguration
+      Carbon AudioToolbox VideoToolbox VideoDecodeAcceleration AVFoundation CoreAudio CoreVideo
+      CoreMediaIO QuartzCore AppKit CoreWLAN WebKit IOKit GSS MediaPlayer IOSurface Metal MetalKit;
+
+    # C++20 is required, darwin has Clang 7 by default, aarch64 has gcc 9 by default
+    stdenv = if stdenv.isDarwin
+      then llvmPackages_12.libcxxStdenv
+      else if stdenv.isAarch64 then gcc10Stdenv else stdenv;
+
+    # tdesktop has random crashes when jemalloc is built with gcc.
+    # Apparently, it triggers some bug due to usage of gcc's builtin
+    # functions like __builtin_ffsl by jemalloc when it's built with gcc.
+    jemalloc = (jemalloc.override { stdenv = llvmPackages.stdenv; }).overrideAttrs(_: {
+      # no idea how to fix the tests :(
+      doCheck = false;
+    });
+
+    abseil-cpp = abseil-cpp_202111;
+  };
 
   kpt = callPackage ../applications/networking/cluster/kpt { };
 
@@ -27065,6 +27227,8 @@ with pkgs;
 
   kubemqctl = callPackage ../applications/networking/cluster/kubemqctl { };
 
+  kubent = callPackage ../applications/networking/cluster/kubent { };
+
   kubeseal = callPackage ../applications/networking/cluster/kubeseal { };
 
   kubernix = callPackage ../applications/networking/cluster/kubernix { };
@@ -27359,7 +27523,6 @@ with pkgs;
   luppp = callPackage ../applications/audio/luppp { };
 
   lutris-unwrapped = python3.pkgs.callPackage ../applications/misc/lutris {
-    inherit (gnome) gnome-desktop;
     wine = wineWowPackages.staging;
   };
   lutris = callPackage ../applications/misc/lutris/fhsenv.nix {
@@ -27371,6 +27534,8 @@ with pkgs;
 
   lv2bm = callPackage ../applications/audio/lv2bm { };
 
+  lv2lint = callPackage ../applications/audio/lv2lint/default.nix { };
+
   lv2-cpp-tools = callPackage ../applications/audio/lv2-cpp-tools { };
 
   lxi-tools = callPackage ../tools/networking/lxi-tools { };
@@ -27389,6 +27554,8 @@ with pkgs;
 
   magic-wormhole = with python3Packages; toPythonApplication magic-wormhole;
 
+  magic-wormhole-rs = callPackage ../tools/networking/magic-wormhole-rs/default.nix { };
+
   magnetophonDSP = lib.recurseIntoAttrs {
     CharacterCompressor = callPackage ../applications/audio/magnetophonDSP/CharacterCompressor { };
     CompBus = callPackage ../applications/audio/magnetophonDSP/CompBus { };
@@ -27746,6 +27913,7 @@ with pkgs;
     simple-mpv-webui = callPackage ../applications/video/mpv/scripts/simple-mpv-webui.nix {};
     sponsorblock = callPackage ../applications/video/mpv/scripts/sponsorblock.nix {};
     thumbnail = callPackage ../applications/video/mpv/scripts/thumbnail.nix { };
+    vr-reversal = callPackage ../applications/video/mpv/scripts/vr-reversal.nix {};
     youtube-quality = callPackage ../applications/video/mpv/scripts/youtube-quality.nix { };
     cutter = callPackage ../applications/video/mpv/scripts/cutter.nix { };
   };
@@ -27823,6 +27991,8 @@ with pkgs;
 
   nixos-shell = callPackage ../tools/virtualization/nixos-shell {};
 
+  nix-ld = callPackage ../os-specific/linux/nix-ld {};
+
   noaa-apt = callPackage ../applications/radio/noaa-apt { };
 
   node-problem-detector = callPackage ../applications/networking/cluster/node-problem-detector { };
@@ -27850,6 +28020,8 @@ with pkgs;
 
   ocenaudio = callPackage ../applications/audio/ocenaudio { };
 
+  ocm = callPackage ../applications/networking/cluster/ocm { };
+
   odo = callPackage ../applications/networking/cluster/odo { };
 
   onlyoffice-bin = callPackage ../applications/office/onlyoffice-bin { };
@@ -27907,6 +28079,8 @@ with pkgs;
 
   pleroma-bot = python3Packages.callPackage ../development/python-modules/pleroma-bot { };
 
+  pluto = callPackage ../applications/networking/cluster/pluto { };
+
   polybar = callPackage ../applications/misc/polybar { };
 
   polybarFull = callPackage ../applications/misc/polybar {
@@ -28178,6 +28352,20 @@ with pkgs;
 
   openjump = callPackage ../applications/misc/openjump { };
 
+  open-music-kontrollers = lib.recurseIntoAttrs {
+    eteroj = callPackage ../applications/audio/open-music-kontrollers/eteroj.nix { };
+    jit = callPackage ../applications/audio/open-music-kontrollers/jit.nix { };
+    mephisto = callPackage ../applications/audio/open-music-kontrollers/mephisto.nix { };
+    midi_matrix = callPackage ../applications/audio/open-music-kontrollers/midi_matrix.nix { };
+    moony = callPackage ../applications/audio/open-music-kontrollers/moony.nix { };
+    orbit = callPackage ../applications/audio/open-music-kontrollers/orbit.nix { };
+    patchmatrix = callPackage ../applications/audio/open-music-kontrollers/patchmatrix.nix { };
+    router = callPackage ../applications/audio/open-music-kontrollers/router.nix { };
+    sherlock = callPackage ../applications/audio/open-music-kontrollers/sherlock.nix { };
+    synthpod = callPackage ../applications/audio/open-music-kontrollers/synthpod.nix { };
+    vm = callPackage ../applications/audio/open-music-kontrollers/vm.nix { };
+  };
+
   openorienteering-mapper = libsForQt5.callPackage ../applications/gis/openorienteering-mapper { };
 
   openscad = libsForQt5.callPackage ../applications/graphics/openscad {};
@@ -28203,6 +28391,8 @@ with pkgs;
 
   orca-c = callPackage ../applications/audio/orca-c {};
 
+  organicmaps = libsForQt5.callPackage ../applications/misc/organicmaps { };
+
   osm2xmap = callPackage ../applications/misc/osm2xmap {
     libyamlcpp = libyamlcpp_0_3;
   };
@@ -28241,8 +28431,6 @@ with pkgs;
 
   palemoon = callPackage ../applications/networking/browsers/palemoon { };
 
-  webbrowser = callPackage ../applications/networking/browsers/webbrowser {};
-
   pamix = callPackage ../applications/audio/pamix { };
 
   pamixer = callPackage ../applications/audio/pamixer { };
@@ -28279,8 +28467,6 @@ with pkgs;
 
   capture = callPackage ../tools/misc/capture {};
 
-  patchmatrix = callPackage ../applications/audio/patchmatrix { };
-
   pbrt = callPackage ../applications/graphics/pbrt { };
 
   pcloud = callPackage ../applications/networking/pcloud { };
@@ -28518,7 +28704,7 @@ with pkgs;
 
   protonvpn-cli = callPackage ../applications/networking/protonvpn-cli { };
 
-  protonvpn-gui = callPackage ../applications/networking/protonvpn-gui { };
+  protonvpn-gui = python3Packages.callPackage ../applications/networking/protonvpn-gui { };
 
   ps2client = callPackage ../applications/networking/ps2client { };
 
@@ -28922,6 +29108,10 @@ with pkgs;
 
   sish = callPackage ../tools/networking/sish { };
 
+  sky = libsForQt5.callPackage ../applications/networking/instant-messengers/sky {
+    libjpeg_turbo = libjpeg_turbo.override { enableJpeg8 = true; };
+  };
+
   skypeforlinux = callPackage ../applications/networking/instant-messengers/skypeforlinux { };
 
   SkypeExport = callPackage ../applications/networking/instant-messengers/SkypeExport { };
@@ -29019,6 +29209,8 @@ with pkgs;
 
   maestral-gui = libsForQt5.callPackage ../applications/networking/maestral-qt { };
 
+  myfitnesspal = with python3Packages; toPythonApplication myfitnesspal;
+
   insync = callPackage ../applications/networking/insync { };
 
   insync-v3 = libsForQt515.callPackage ../applications/networking/insync/v3.nix { };
@@ -29390,12 +29582,6 @@ with pkgs;
   thunderbirdPackages = recurseIntoAttrs (callPackage ../applications/networking/mailreaders/thunderbird/packages.nix {
     callPackage = newScope {
       inherit (rustPackages) cargo rustc;
-      libpng = libpng_apng;
-      gnused = gnused_422;
-      inherit (darwin.apple_sdk.frameworks) CoreMedia ExceptionHandling
-                                            Kerberos AVFoundation MediaToolbox
-                                            CoreLocation Foundation AddressBook;
-      inherit (darwin) libobjc;
     };
   });
 
@@ -29493,6 +29679,8 @@ with pkgs;
 
   tonelib-zoom = callPackage ../applications/audio/tonelib-zoom { };
 
+  tonelib-metal = callPackage ../applications/audio/tonelib-metal { };
+
   tony = libsForQt514.callPackage ../applications/audio/tony { };
 
   toot = callPackage ../applications/misc/toot { };
@@ -29606,6 +29794,10 @@ with pkgs;
 
   unigine-valley = callPackage ../applications/graphics/unigine-valley { };
 
+  unigine-heaven = callPackage ../applications/graphics/unigine-heaven { };
+
+  unigine-superposition = libsForQt5.callPackage ../applications/graphics/unigine-superposition { };
+
   unipicker = callPackage ../applications/misc/unipicker { };
 
   unison = callPackage ../applications/networking/sync/unison {
@@ -29656,9 +29848,9 @@ with pkgs;
 
   veusz = libsForQt5.callPackage ../applications/graphics/veusz { };
 
-  vim = callPackage ../applications/editors/vim {
+  vim = vimUtils.makeCustomizable (callPackage ../applications/editors/vim {
     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
-  };
+  });
 
   vimiv = callPackage ../applications/graphics/vimiv { };
 
@@ -29671,8 +29863,6 @@ with pkgs;
   vim_configurable = vimUtils.makeCustomizable (callPackage ../applications/editors/vim/configurable.nix {
     inherit (darwin.apple_sdk.frameworks) CoreServices Cocoa Foundation CoreData;
     inherit (darwin) libobjc;
-    gtk2 = if stdenv.isDarwin then gtk2-x11 else gtk2;
-    gtk3 = if stdenv.isDarwin then gtk3-x11 else gtk3;
   });
 
   vim-darwin = (vim_configurable.override {
@@ -30369,6 +30559,8 @@ with pkgs;
 
   ytmdl = callPackage ../tools/misc/ytmdl { };
 
+  yuview = libsForQt5.yuview;
+
   zam-plugins = callPackage ../applications/audio/zam-plugins { };
 
   zammad = callPackage ../applications/networking/misc/zammad { };
@@ -30697,7 +30889,9 @@ with pkgs;
 
   openethereum = callPackage ../applications/blockchains/openethereum { };
 
-  polkadot = callPackage ../applications/blockchains/polkadot { };
+  polkadot = callPackage ../applications/blockchains/polkadot {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
 
   particl-core = callPackage ../applications/blockchains/particl-core { miniupnpc = miniupnpc_2; };
 
@@ -31926,6 +32120,7 @@ with pkgs;
     gnome38Extensions
     gnome40Extensions
     gnome41Extensions
+    gnome42Extensions
   ;
 
   gnome-connections = callPackage ../desktops/gnome/apps/gnome-connections { };
@@ -32137,6 +32332,8 @@ with pkgs;
 
   febio-studio = libsForQt5.callPackage ../applications/science/biology/febio-studio { };
 
+  flywheel-cli = callPackage ../applications/science/biology/flywheel-cli { };
+
   hisat2 = callPackage ../applications/science/biology/hisat2 { };
 
   htslib = callPackage ../development/libraries/science/biology/htslib { };
@@ -32634,6 +32831,7 @@ with pkgs;
     java = openjdk17;
     z3 = z3_4_4_0;
   };
+  isabelle-components = recurseIntoAttrs (callPackage ../applications/science/logic/isabelle/components { });
 
   iprover = callPackage ../applications/science/logic/iprover { };
 
@@ -32968,7 +33166,6 @@ with pkgs;
   gravit = callPackage ../applications/science/astronomy/gravit { };
 
   golly = callPackage ../applications/science/misc/golly { wxGTK = wxGTK30; };
-  golly-beta = callPackage ../applications/science/misc/golly/beta.nix { wxGTK = wxGTK30; };
 
   megam = callPackage ../applications/science/misc/megam {
     inherit (ocaml-ng.ocamlPackages_4_07) ocaml;
@@ -33143,6 +33340,8 @@ with pkgs;
 
   clpeak = callPackage ../tools/misc/clpeak { };
 
+  collapseos-cvm = callPackage ../applications/emulators/collapseos-cvm { };
+
   cups = callPackage ../misc/cups { };
 
   cups-filters = callPackage ../misc/cups/filters.nix { };
@@ -33202,6 +33401,8 @@ with pkgs;
 
   cups-brother-hll2350dw = callPackage  ../misc/cups/drivers/hll2350dw { };
 
+  cups-brother-mfcl2750dw = callPackage  ../misc/cups/drivers/mfcl2750dw { };
+
   cups-drv-rastertosag-gdi = callPackage ../misc/cups/drivers/cups-drv-rastertosag-gdi { };
 
   # this driver ships with pre-compiled 32-bit binary libraries
@@ -33235,6 +33436,8 @@ with pkgs;
 
   dosbox-staging = callPackage ../applications/emulators/dosbox-staging { };
 
+  eiciel = callPackage ../tools/filesystems/eiciel { };
+
   emu2 = callPackage ../applications/emulators/emu2 { };
 
   apt = callPackage ../tools/package-management/apt { };
@@ -33344,6 +33547,8 @@ with pkgs;
 
   gummi = callPackage ../applications/misc/gummi { };
 
+  gummy = callPackage ../tools/misc/gummy { };
+
   gxemul = callPackage ../applications/emulators/gxemul { };
 
   hatari = callPackage ../applications/emulators/hatari { };
@@ -33429,7 +33634,7 @@ with pkgs;
 
   keynav = callPackage ../tools/X11/keynav { };
 
-  kgx = callPackage ../applications/terminal-emulators/kgx { };
+  gnome-console = callPackage ../applications/terminal-emulators/gnome-console { };
 
   kmon = callPackage ../tools/system/kmon { };
 
@@ -33443,11 +33648,11 @@ with pkgs;
   # Exceptions are versions that we need to keep to allow upgrades from older NixOS releases
   inherit (callPackage ../applications/networking/cluster/kops {})
     mkKops
-    kops_1_20
     kops_1_21
     kops_1_22
+    kops_1_23
     ;
-  kops = kops_1_22;
+  kops = kops_1_23;
 
   lguf-brightness = callPackage ../misc/lguf-brightness { };
 
@@ -33652,9 +33857,7 @@ with pkgs;
           loadedTest = if builtins.typeOf test == "path"
             then import test
             else test;
-          calledTest = if lib.isFunction loadedTest
-            then callPackage loadedTest {}
-            else loadedTest;
+          calledTest = lib.toFunction loadedTest pkgs;
         in
           nixosTesting.makeTest calledTest;
 
@@ -33729,7 +33932,6 @@ with pkgs;
 
   nix-repl = throw (
     "nix-repl has been removed because it's not maintained anymore, " +
-    (lib.optionalString (!lib.versionAtLeast "2" (lib.versions.major builtins.nixVersion)) "ugrade your Nix installation to a newer version and ") +
     "use `nix repl` instead. Also see https://github.com/NixOS/nixpkgs/pull/44903"
   );
 
@@ -34293,7 +34495,6 @@ with pkgs;
 
   wasm-pack = callPackage ../development/tools/wasm-pack {
     inherit (darwin.apple_sdk.frameworks) Security;
-    libressl = libressl_3_2;
   };
 
   wavegain = callPackage ../applications/audio/wavegain { };
@@ -34800,6 +35001,8 @@ with pkgs;
 
   sentencepiece = callPackage ../development/libraries/sentencepiece {};
 
+  kaf = callPackage ../development/tools/kaf { };
+
   kcli = callPackage ../development/tools/kcli { };
 
   pxlib = callPackage ../development/libraries/pxlib {};
@@ -34851,7 +35054,9 @@ with pkgs;
 
   unifi-poller = callPackage ../servers/monitoring/unifi-poller {};
 
-  fac-build = callPackage ../development/tools/build-managers/fac {};
+  fac-build = callPackage ../development/tools/build-managers/fac {
+    inherit (darwin.apple_sdk.frameworks) CoreServices;
+  };
 
   treefmt = callPackage ../development/tools/treefmt { };
 
diff --git a/nixpkgs/pkgs/top-level/java-packages.nix b/nixpkgs/pkgs/top-level/java-packages.nix
index c8d9e85fbd77..160f51cf43c5 100644
--- a/nixpkgs/pkgs/top-level/java-packages.nix
+++ b/nixpkgs/pkgs/top-level/java-packages.nix
@@ -10,8 +10,10 @@ let
   openjfx15 = callPackage ../development/compilers/openjdk/openjfx/15.nix { };
   openjfx17 = callPackage ../development/compilers/openjdk/openjfx/17.nix { };
 
+  mavenfod = callPackage ../development/java-modules/maven-fod.nix { };
+
 in {
-  inherit mavenbuild fetchMaven openjfx11 openjfx15 openjfx17;
+  inherit mavenbuild mavenfod fetchMaven openjfx11 openjfx15 openjfx17;
 
   compiler = let
 
diff --git a/nixpkgs/pkgs/top-level/linux-kernels.nix b/nixpkgs/pkgs/top-level/linux-kernels.nix
index dedb8f015fc4..bd7bacf30004 100644
--- a/nixpkgs/pkgs/top-level/linux-kernels.nix
+++ b/nixpkgs/pkgs/top-level/linux-kernels.nix
@@ -166,6 +166,13 @@ in {
       ];
     };
 
+    linux_5_17 = callPackage ../os-specific/linux/kernel/linux-5.17.nix {
+      kernelPatches = [
+        kernelPatches.bridge_stp_helper
+        kernelPatches.request_key_helper
+      ];
+    };
+
     linux_testing = let
       testing = callPackage ../os-specific/linux/kernel/linux-testing.nix {
         kernelPatches = [
@@ -179,7 +186,7 @@ in {
        else testing;
 
     linux_testing_bcachefs = callPackage ../os-specific/linux/kernel/linux-testing-bcachefs.nix rec {
-      kernel = linux_5_15;
+      kernel = linux_5_16;
       kernelPatches = kernel.kernelPatches;
    };
 
@@ -485,6 +492,7 @@ in {
     linux_5_10 = recurseIntoAttrs (packagesFor kernels.linux_5_10);
     linux_5_15 = recurseIntoAttrs (packagesFor kernels.linux_5_15);
     linux_5_16 = recurseIntoAttrs (packagesFor kernels.linux_5_16);
+    linux_5_17 = recurseIntoAttrs (packagesFor kernels.linux_5_17);
   };
 
   rtPackages = {
@@ -529,7 +537,7 @@ in {
   packageAliases = {
     linux_default = if stdenv.hostPlatform.isi686 then packages.linux_5_10 else packages.linux_5_15;
     # Update this when adding the newest kernel major version!
-    linux_latest = packages.linux_5_16;
+    linux_latest = packages.linux_5_17;
     linux_mptcp = packages.linux_mptcp_95;
     linux_rt_default = packages.linux_rt_5_4;
     linux_rt_latest = packages.linux_rt_5_10;
diff --git a/nixpkgs/pkgs/top-level/ocaml-packages.nix b/nixpkgs/pkgs/top-level/ocaml-packages.nix
index cc126dc320de..5a4a03fda066 100644
--- a/nixpkgs/pkgs/top-level/ocaml-packages.nix
+++ b/nixpkgs/pkgs/top-level/ocaml-packages.nix
@@ -83,8 +83,6 @@ let
     bls12-381-unix = callPackage ../development/ocaml-modules/bls12-381/unix.nix { };
     bls12-381-legacy = callPackage ../development/ocaml-modules/bls12-381/legacy.nix { };
 
-    bolt = callPackage ../development/ocaml-modules/bolt { };
-
     bos = callPackage ../development/ocaml-modules/bos { };
 
     bz2 = callPackage ../development/ocaml-modules/bz2 { };
@@ -330,6 +328,8 @@ let
 
     duration =  callPackage ../development/ocaml-modules/duration { };
 
+    dyn =  callPackage ../development/ocaml-modules/dyn { };
+
     earley = callPackage ../development/ocaml-modules/earley { };
 
     earlybird = callPackage ../development/ocaml-modules/earlybird { };
@@ -358,8 +358,6 @@ let
 
     emile = callPackage ../development/ocaml-modules/emile { };
 
-    enumerate = callPackage ../development/ocaml-modules/enumerate { };
-
     eqaf = callPackage ../development/ocaml-modules/eqaf { };
 
     erm_xml = callPackage ../development/ocaml-modules/erm_xml { };
@@ -413,8 +411,6 @@ let
       inherit (pkgs) ffmpeg;
     };
 
-    fiat-p256 = callPackage ../development/ocaml-modules/fiat-p256 { };
-
     fileutils = callPackage ../development/ocaml-modules/fileutils { };
 
     findlib = callPackage ../development/tools/ocaml/findlib { };
@@ -709,8 +705,6 @@ let
 
     magic-mime = callPackage ../development/ocaml-modules/magic-mime { };
 
-    magick = callPackage ../development/ocaml-modules/magick { };
-
     mariadb = callPackage ../development/ocaml-modules/mariadb {
       inherit (pkgs) mariadb;
     };
@@ -878,8 +872,6 @@ let
 
     parmap = callPackage ../development/ocaml-modules/parmap { };
 
-    comparelib = callPackage ../development/ocaml-modules/comparelib { };
-
     ocamlbuild =
     if lib.versionOlder "4.03" ocaml.version then
     callPackage ../development/tools/ocaml/ocamlbuild { }
@@ -888,8 +880,6 @@ let
 
     ocaml_cryptgps = callPackage ../development/ocaml-modules/cryptgps { };
 
-    ocaml_data_notation = callPackage ../development/ocaml-modules/odn { };
-
     ocaml_expat =
     if lib.versionAtLeast ocaml.version "4.02"
     then callPackage ../development/ocaml-modules/expat { }
@@ -1030,6 +1020,8 @@ let
 
     opus = callPackage ../development/ocaml-modules/opus { };
 
+    ordering = callPackage ../development/ocaml-modules/ordering { };
+
     otfm = callPackage ../development/ocaml-modules/otfm { };
 
     otoml = callPackage ../development/ocaml-modules/otoml { };
@@ -1317,6 +1309,8 @@ let
 
     stdlib-shims = callPackage ../development/ocaml-modules/stdlib-shims { };
 
+    stdune = callPackage ../development/ocaml-modules/stdune { };
+
     stog = callPackage ../applications/misc/stog { };
 
     stringext = callPackage ../development/ocaml-modules/stringext { };
diff --git a/nixpkgs/pkgs/top-level/perl-packages.nix b/nixpkgs/pkgs/top-level/perl-packages.nix
index 2a5d49070183..940d65ea56aa 100644
--- a/nixpkgs/pkgs/top-level/perl-packages.nix
+++ b/nixpkgs/pkgs/top-level/perl-packages.nix
@@ -1042,6 +1042,19 @@ let
     };
   };
 
+  AudioFLACHeader = buildPerlPackage {
+    pname = "Audio-FLAC-Header";
+    version = "2.4";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/D/DA/DANIEL/Audio-FLAC-Header-2.4.tar.gz";
+      sha256 = "fba5911d6c22d81506565cd9a1438e8605420ff7986cf03d1a12d006a4070543";
+    };
+    meta = {
+      description = "Interface to FLAC header metadata";
+      license = with lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   AudioScan = buildPerlPackage {
     pname = "Audio-Scan";
     version = "1.01";
@@ -5995,10 +6008,10 @@ let
 
   DevelPatchPerl = buildPerlPackage {
     pname = "Devel-PatchPerl";
-    version = "2.04";
+    version = "2.08";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/B/BI/BINGOS/Devel-PatchPerl-2.04.tar.gz";
-      sha256 = "1q8xhz2sdlz2266pjl8j9vcixbhcaxsprmvsx56ra998miayc42p";
+      url = "mirror://cpan/authors/id/B/BI/BINGOS/Devel-PatchPerl-2.08.tar.gz";
+      sha256 = "06bl2qqf5mv53l7k81xgynfx99in5fa8yi3ykn7403r62rqfkik9";
     };
     propagatedBuildInputs = [ Filepushd ModulePluggable ];
     meta = {
@@ -18187,6 +18200,10 @@ let
       sha256 = "0278anidj7bgassj32g20cbki2kkqakkr3axyq4k90nj4snw7p6x";
     };
     propagatedBuildInputs = [ Future IOAsync PPI PPR PathTiny PerlCritic PerlTidy PodMarkdown URI ];
+    nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang;
+    postInstall = lib.optionalString stdenv.isDarwin ''
+      shortenPerlShebang $out/bin/pls
+    '';
     meta = {
       homepage = "https://github.com/FractalBoy/perl-language-server";
       description = "Perl Language Server";
diff --git a/nixpkgs/pkgs/top-level/python-aliases.nix b/nixpkgs/pkgs/top-level/python-aliases.nix
index 4718d942d8ee..0abf2b589864 100644
--- a/nixpkgs/pkgs/top-level/python-aliases.nix
+++ b/nixpkgs/pkgs/top-level/python-aliases.nix
@@ -37,7 +37,6 @@ mapAliases ({
   asyncio-nats-client = nats-py; # added 2022-02-08
   blockdiagcontrib-cisco = throw "blockdiagcontrib-cisco is not compatible with blockdiag 2.0.0 and has been removed."; # added 2020-11-29
   bt_proximity = bt-proximity; # added 2021-07-02
-  bugseverywhere = throw "bugseverywhere has been removed: Abandoned by upstream."; # added 2019-11-27
   carrot = throw "carrot has been removed, as its development was discontinued in 2012"; # added 2022-01-18
   class-registry = phx-class-registry; # added 2021-10-05
   ConfigArgParse = configargparse; # added 2021-03-18
@@ -120,7 +119,6 @@ mapAliases ({
   tensorflow-build_2 = tensorflow-build; # added 2021-11-25
   tensorflow-estimator_2 = tensorflow-estimator; # added 2021-11-25
   tensorflow-tensorboard_2 = tensorflow-tensorboard; # added 2021-11-25
-  topydo = throw "topydo was moved to pkgs.topydo"; # added 2017-09-22
   tvnamer = throw "tvnamer was moved to pkgs.tvnamer"; # added 2021-07-05
   WazeRouteCalculator = wazeroutecalculator; # added 2021-09-29
   websocket_client = websocket-client; # added 2021-06-15
diff --git a/nixpkgs/pkgs/top-level/python-packages.nix b/nixpkgs/pkgs/top-level/python-packages.nix
index cc1f72bcadd7..a061f9f852bb 100644
--- a/nixpkgs/pkgs/top-level/python-packages.nix
+++ b/nixpkgs/pkgs/top-level/python-packages.nix
@@ -200,6 +200,8 @@ in {
     inherit (pkgs.darwin.apple_sdk.frameworks) CoreFoundation Security;
   };
 
+  add-trailing-comma = callPackage ../development/python-modules/add-trailing-comma { };
+
   addict = callPackage ../development/python-modules/addict { };
 
   addic7ed-cli = callPackage ../development/python-modules/addic7ed-cli { };
@@ -246,6 +248,8 @@ in {
 
   aio-georss-gdacs = callPackage ../development/python-modules/aio-georss-gdacs { };
 
+  aioairzone = callPackage ../development/python-modules/aioairzone { };
+
   aioambient = callPackage ../development/python-modules/aioambient { };
 
   aioapns = callPackage ../development/python-modules/aioapns { };
@@ -520,8 +524,12 @@ in {
 
   ansible-core = callPackage ../development/python-modules/ansible/core.nix { };
 
+  ansible-doctor = callPackage ../development/python-modules/ansible-doctor { };
+
   ansible-kernel = callPackage ../development/python-modules/ansible-kernel { };
 
+  ansible-later = callPackage ../development/python-modules/ansible-later { };
+
   ansible-lint = callPackage ../development/python-modules/ansible-lint { };
 
   ansible-runner = callPackage ../development/python-modules/ansible-runner { };
@@ -546,6 +554,8 @@ in {
 
   anybadge = callPackage ../development/python-modules/anybadge { };
 
+  anyconfig = callPackage ../development/python-modules/anyconfig { };
+
   anyio = callPackage ../development/python-modules/anyio { };
 
   anytree = callPackage ../development/python-modules/anytree {
@@ -658,6 +668,8 @@ in {
 
   aspell-python = callPackage ../development/python-modules/aspell-python { };
 
+  aspy-refactor-imports = callPackage ../development/python-modules/aspy-refactor-imports { };
+
   aspy-yaml = callPackage ../development/python-modules/aspy.yaml { };
 
   assertpy = callPackage ../development/python-modules/assertpy { };
@@ -844,6 +856,8 @@ in {
 
   azure-common = callPackage ../development/python-modules/azure-common { };
 
+  azure-containerregistry = callPackage ../development/python-modules/azure-containerregistry { };
+
   azure-core = callPackage ../development/python-modules/azure-core { };
 
   azure-cosmos = callPackage ../development/python-modules/azure-cosmos { };
@@ -2430,6 +2444,8 @@ in {
 
   docx2python = callPackage ../development/python-modules/docx2python { };
 
+  docx2txt = callPackage ../development/python-modules/docx2txt { };
+
   dodgy = callPackage ../development/python-modules/dodgy { };
 
   dogpile-cache = callPackage ../development/python-modules/dogpile-cache { };
@@ -2498,6 +2514,8 @@ in {
 
   dulwich = callPackage ../development/python-modules/dulwich { };
 
+  dunamai = callPackage ../development/python-modules/dunamai { };
+
   dungeon-eos = callPackage ../development/python-modules/dungeon-eos { };
 
   dwdwfsapi = callPackage ../development/python-modules/dwdwfsapi { };
@@ -3025,6 +3043,8 @@ in {
     inherit (pkgs) flatbuffers;
   };
 
+  flatdict = callPackage ../development/python-modules/flatdict { };
+
   flatten-dict = callPackage ../development/python-modules/flatten-dict { };
 
   flax = callPackage ../development/python-modules/flax { };
@@ -3595,7 +3615,9 @@ in {
 
   gruut = callPackage ../development/python-modules/gruut { };
 
-  gruut-ipa = callPackage ../development/python-modules/gruut-ipa { };
+  gruut-ipa = callPackage ../development/python-modules/gruut-ipa {
+    inherit (pkgs) espeak;
+  };
 
   gsd = callPackage ../development/python-modules/gsd { };
 
@@ -4072,6 +4094,8 @@ in {
 
   intreehooks = callPackage ../development/python-modules/intreehooks { };
 
+  invocations = callPackage ../development/python-modules/invocations { };
+
   invoke = callPackage ../development/python-modules/invoke { };
 
   iodata = callPackage ../development/python-modules/iodata { };
@@ -4460,6 +4484,8 @@ in {
 
   keyrings-cryptfile = callPackage ../development/python-modules/keyrings-cryptfile { };
 
+  keyrings-google-artifactregistry-auth = callPackage ../development/python-modules/keyrings-google-artifactregistry-auth { };
+
   keyrings-alt = callPackage ../development/python-modules/keyrings-alt { };
 
   keystone-engine = callPackage ../development/python-modules/keystone-engine { };
@@ -4655,6 +4681,13 @@ in {
 
   libpyvivotek = callPackage ../development/python-modules/libpyvivotek { };
 
+  libpwquality = pipe pkgs.libpwquality [
+    toPythonModule
+    (p: p.overrideAttrs (super: { meta = super.meta // { outputsToInstall = [ "py" ]; }; }))
+    (p: p.override { enablePython = true; inherit python; })
+    (p: p.py)
+  ];
+
   libredwg = toPythonModule (pkgs.libredwg.override {
     enablePython = true;
     inherit (self) python libxml2;
@@ -5045,6 +5078,8 @@ in {
 
   mediafile = callPackage ../development/python-modules/mediafile { };
 
+  meilisearch = callPackage ../development/python-modules/meilisearch { };
+
   meinheld = callPackage ../development/python-modules/meinheld { };
 
   meld3 = callPackage ../development/python-modules/meld3 { };
@@ -5147,6 +5182,8 @@ in {
   mizani = callPackage ../development/python-modules/mizani { };
 
   mkdocs = callPackage ../development/python-modules/mkdocs { };
+  mkdocs-material = callPackage ../development/python-modules/mkdocs-material { };
+  mkdocs-material-extensions = callPackage ../development/python-modules/mkdocs-material/mkdocs-material-extensions.nix { };
 
   mkl-service = callPackage ../development/python-modules/mkl-service { };
 
@@ -5444,6 +5481,8 @@ in {
 
   nest-asyncio = callPackage ../development/python-modules/nest-asyncio { };
 
+  nested-lookup = callPackage ../development/python-modules/nested-lookup { };
+
   nestedtext = callPackage ../development/python-modules/nestedtext { };
 
   net2grid = callPackage ../development/python-modules/net2grid { };
@@ -5590,10 +5629,16 @@ in {
 
   notify2 = callPackage ../development/python-modules/notify2 { };
 
+  notifymuch = callPackage ../development/python-modules/notifymuch {};
+
   notmuch = callPackage ../development/python-modules/notmuch {
     inherit (pkgs) notmuch;
   };
 
+  notmuch2 = callPackage ../development/python-modules/notmuch2 {
+    inherit (pkgs) notmuch;
+  };
+
   nototools = callPackage ../data/fonts/noto-fonts/tools.nix { };
 
   notus-scanner = callPackage ../development/python-modules/notus-scanner { };
@@ -5960,6 +6005,8 @@ in {
 
   path-and-address = callPackage ../development/python-modules/path-and-address { };
 
+  pathable = callPackage ../development/python-modules/pathable { };
+
   pathlib2 = callPackage ../development/python-modules/pathlib2 { };
 
   pathlib = callPackage ../development/python-modules/pathlib { };
@@ -6148,6 +6195,8 @@ in {
 
   pint = callPackage ../development/python-modules/pint { };
 
+  pint-pandas = callPackage ../development/python-modules/pint-pandas { };
+
   pip = callPackage ../development/python-modules/pip { };
 
   pipdate = callPackage ../development/python-modules/pipdate { };
@@ -6293,6 +6342,8 @@ in {
 
   pyutil = callPackage ../development/python-modules/pyutil { };
 
+  pyzbar = callPackage ../development/python-modules/pyzbar { };
+
   pkutils = callPackage ../development/python-modules/pkutils { };
 
   plac = callPackage ../development/python-modules/plac { };
@@ -6446,6 +6497,8 @@ in {
 
   premailer = callPackage ../development/python-modules/premailer { };
 
+  preprocess-cancellation = callPackage ../development/python-modules/preprocess-cancellation { };
+
   preshed = callPackage ../development/python-modules/preshed { };
 
   pretend = callPackage ../development/python-modules/pretend { };
@@ -8281,6 +8334,8 @@ in {
 
   pyeverlights = callPackage ../development/python-modules/pyeverlights { };
 
+  pyinfra = callPackage ../development/python-modules/pyinfra { };
+
   pytibber = callPackage ../development/python-modules/pytibber { };
 
   pytile = callPackage ../development/python-modules/pytile { };
@@ -8359,7 +8414,7 @@ in {
     };
 
   pyudev = callPackage ../development/python-modules/pyudev {
-    inherit (pkgs) systemd;
+    inherit (pkgs) udev;
   };
 
   pyunbound = callPackage ../tools/networking/unbound/python.nix { };
@@ -8659,12 +8714,16 @@ in {
 
   relatorio = callPackage ../development/python-modules/relatorio { };
 
+  releases = callPackage ../development/python-modules/releases { };
+
   remarshal = callPackage ../development/python-modules/remarshal { };
 
   renault-api = callPackage ../development/python-modules/renault-api { };
 
   rencode = callPackage ../development/python-modules/rencode { };
 
+  reorder-python-imports = callPackage ../development/python-modules/reorder-python-imports { };
+
   reolink = callPackage ../development/python-modules/reolink { };
 
   reparser = callPackage ../development/python-modules/reparser { };
@@ -8905,6 +8964,8 @@ in {
 
   s3transfer = callPackage ../development/python-modules/s3transfer { };
 
+  s3-credentials = callPackage ../development/python-modules/s3-credentials { };
+
   sabyenc3 = callPackage ../development/python-modules/sabyenc3 { };
 
   sabyenc = callPackage ../development/python-modules/sabyenc { };
@@ -10301,6 +10362,8 @@ in {
     unicorn-emu = pkgs.unicorn;
   };
 
+  unicrypto = callPackage ../development/python-modules/unicrypto { };
+
   unidecode = callPackage ../development/python-modules/unidecode { };
 
   unidic-lite = callPackage ../development/python-modules/unidic-lite { };
@@ -10969,6 +11032,8 @@ in {
 
   zipstream-new = callPackage ../development/python-modules/zipstream-new { };
 
+  zipstream-ng = callPackage ../development/python-modules/zipstream-ng { };
+
   zm-py = callPackage ../development/python-modules/zm-py { };
 
   zodb = callPackage ../development/python-modules/zodb { };
diff --git a/nixpkgs/pkgs/top-level/qt5-packages.nix b/nixpkgs/pkgs/top-level/qt5-packages.nix
index 751236fdcb4b..4b00b704d5fb 100644
--- a/nixpkgs/pkgs/top-level/qt5-packages.nix
+++ b/nixpkgs/pkgs/top-level/qt5-packages.nix
@@ -210,7 +210,9 @@ in (kdeFrameworks // plasmaMobileGear // plasma5 // plasma5.thirdParty // kdeGea
 
   quazip = callPackage ../development/libraries/quazip { };
 
-  qwt = callPackage ../development/libraries/qwt/6.nix { };
+  qwt = callPackage ../development/libraries/qwt/default.nix { };
+
+  qwt6_1 = callPackage ../development/libraries/qwt/6_1.nix { };
 
   soqt = callPackage ../development/libraries/soqt { };
 
@@ -226,4 +228,5 @@ in (kdeFrameworks // plasmaMobileGear // plasma5 // plasma5.thirdParty // kdeGea
 
   soundkonverter = callPackage ../applications/audio/soundkonverter {};
 
+  yuview = callPackage ../applications/video/yuview { };
 })))
diff --git a/nixpkgs/pkgs/top-level/stage.nix b/nixpkgs/pkgs/top-level/stage.nix
index 9d34ddb3685f..1945762c50df 100644
--- a/nixpkgs/pkgs/top-level/stage.nix
+++ b/nixpkgs/pkgs/top-level/stage.nix
@@ -64,6 +64,30 @@
 } @args:
 
 let
+  # This is a function from parsed platforms (like
+  # stdenv.hostPlatform.parsed) to parsed platforms.
+  makeMuslParsedPlatform = parsed:
+    # The following line guarantees that the output of this function
+    # is a well-formed platform with no missing fields.  It will be
+    # uncommented in a separate PR, in case it breaks the build.
+    #(x: lib.trivial.pipe x [ (x: builtins.removeAttrs x [ "_type" ]) lib.systems.parse.mkSystem ])
+      (parsed // {
+        abi = {
+          gnu = lib.systems.parse.abis.musl;
+          gnueabi = lib.systems.parse.abis.musleabi;
+          gnueabihf = lib.systems.parse.abis.musleabihf;
+          gnuabin32 = lib.systems.parse.abis.muslabin32;
+          gnuabi64 = lib.systems.parse.abis.muslabi64;
+          # The following two entries ensure that this function is idempotent.
+          musleabi = lib.systems.parse.abis.musleabi;
+          musleabihf = lib.systems.parse.abis.musleabihf;
+          muslabin32 = lib.systems.parse.abis.muslabin32;
+          muslabi64 = lib.systems.parse.abis.muslabi64;
+        }.${parsed.abi.name}
+          or lib.systems.parse.abis.musl;
+      });
+
+
   stdenvAdapters = self: super:
     let
       res = import ../stdenv/adapters.nix {
@@ -188,14 +212,7 @@ let
       })] ++ overlays;
       ${if stdenv.hostPlatform == stdenv.buildPlatform
         then "localSystem" else "crossSystem"} = {
-        parsed = stdenv.hostPlatform.parsed // {
-          abi = {
-            gnu = lib.systems.parse.abis.musl;
-            gnueabi = lib.systems.parse.abis.musleabi;
-            gnueabihf = lib.systems.parse.abis.musleabihf;
-          }.${stdenv.hostPlatform.parsed.abi.name}
-            or lib.systems.parse.abis.musl;
-        };
+        parsed = makeMuslParsedPlatform stdenv.hostPlatform.parsed;
       };
     } else throw "Musl libc only supports Linux systems.";
 
@@ -239,16 +256,7 @@ let
     } // lib.optionalAttrs stdenv.hostPlatform.isLinux {
       crossSystem = {
         isStatic = true;
-        parsed = stdenv.hostPlatform.parsed // {
-          abi = {
-            gnu = lib.systems.parse.abis.musl;
-            gnueabi = lib.systems.parse.abis.musleabi;
-            gnueabihf = lib.systems.parse.abis.musleabihf;
-            musleabi = lib.systems.parse.abis.musleabi;
-            musleabihf = lib.systems.parse.abis.musleabihf;
-          }.${stdenv.hostPlatform.parsed.abi.name}
-            or lib.systems.parse.abis.musl;
-        };
+        parsed = makeMuslParsedPlatform stdenv.hostPlatform.parsed;
       } // lib.optionalAttrs (stdenv.hostPlatform.system == "powerpc64-linux") {
         gcc.abi = "elfv2";
       };
diff --git a/nixpkgs/pkgs/top-level/unixtools.nix b/nixpkgs/pkgs/top-level/unixtools.nix
index b7fea20b76bc..0097852c535c 100644
--- a/nixpkgs/pkgs/top-level/unixtools.nix
+++ b/nixpkgs/pkgs/top-level/unixtools.nix
@@ -21,6 +21,7 @@ let
       manpage = "${getOutput "man" provider}/share/man/man1/${cmd}.1.gz";
     in runCommand "${cmd}-${provider.name}" {
       meta = {
+        mainProgram = cmd;
         priority = 10;
         platforms = lib.platforms.${stdenv.hostPlatform.parsed.kernel.name} or lib.platforms.all;
       };
diff --git a/overlays/patches/default.nix b/overlays/patches/default.nix
index cad19a157cae..4f648dad6c42 100644
--- a/overlays/patches/default.nix
+++ b/overlays/patches/default.nix
@@ -16,8 +16,6 @@ self: super: {
 
   gnupg = self.callPackage ./gnupg { inherit (super) gnupg; };
 
-  kernelPatches = self.callPackage ./linux/patches.nix { inherit (super) kernelPatches; };
-
   public-inbox = self.callPackage ./public-inbox {
     inherit (super) public-inbox;
   };
diff --git a/overlays/patches/linux/patches.nix b/overlays/patches/linux/patches.nix
deleted file mode 100644
index 5b39073228a5..000000000000
--- a/overlays/patches/linux/patches.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kernelPatches, fetchpatch, ... } @ args:
-
-(kernelPatches.override (builtins.removeAttrs args [ "kernelPatches" ])) // {
-  eve-backlight = {
-    name = "eve-backlight";
-    patch = fetchpatch {
-      url = "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/patch/?id=f58a435311672305d8747f40e35235f7ed64ae69";
-      sha256 = "sha256-MKvQgvxC2CwOFzJSfC4SlAvaLkndZX8+LnF4jneJ4AI=";
-    };
-  };
-}
diff --git a/sys/eve.nix b/sys/eve.nix
index 10a116df1006..366dd1ccd90f 100644
--- a/sys/eve.nix
+++ b/sys/eve.nix
@@ -9,7 +9,6 @@
   hardware.enableRedistributableFirmware = true;
 
   boot.kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages;
-  boot.kernelPatches = lib.attrVals [ "eve-backlight" ] pkgs.kernelPatches;
   boot.zfs.enableUnstable = true;
 
   boot.initrd.availableKernelModules = [ "nvme" "usb_storage" "sdhci_pci" ];